New technology bypasses PC storage.
Dr. Gerhard Holst, PCO AG
In scientific and imaging applications, there is a trend toward CCD and CMOS camera systems with higher spatial resolution and frame rates. Designers have responded to the demand for greater detail and less magnification with more sophisticated cameras — but these come at the cost of data overload.
For example, to capture an image of 4008 × 2672 pixels using a camera with 14-bit dynamics, two bytes per pixel are needed for the gray value (if stored as a 16-bit standard tiff image). So the image requires 2 × 4008 × 2672 bytes, or the equivalent of 21 MB of memory. If the image is recorded at full speed of 4.8 fps, memory must handle 102.8 MB/s.
With midrange high-speed cameras, it’s only 10-bit dynamics at 1280 × 1024 pixels, but at an incredibly fast 636 fps. Also, assuming the use of two bytes for transmission of one-pixel gray value, 1667 GB/s have to be handled. Obviously, the amount of data that must be transferred to a PC and stored is continuously increasing.
IEEE-1394a (FireWire) and Camera Link are two established interfaces designed for imaging applications. FireWire, which originated in video consumer applications, is the more popular. It produces a maximum of 32 MB/s, whereas the fast Camera Link interface produces 200 MB/s with a single cable or, theoretically, 1 GB/s with three cables. Comparing these values, the Camera Link interface would suffice for large cameras, but each would require its own dedicated computer.
Also the data of the high-speed camera could be properly transferred to the PC if a fully equipped Camera Link interface (three cables) were used, because Camera Link uses bits, not byte. But the question is: What does one do with a data stream of 1667 GB/s inside the computer? The internal PC data transfer to PC memory over the PCI bus as well as the timing behavior of operating systems like Windows would be the bottleneck, because they are organized according to bytes rather than bits.
Most scientific imaging applications do not require rapid access. What is important is precise data recording and storage. One solution is to shift the memory storage from the PC to the camera itself. This camera memory, or “camRAM” (Figure 1), is sometimes called primary image memory. It enables the fastest possible data transfer from the image sensor into memory without loss of information caused by cable conditions or operating system interference. From there, the data can be transferred for appropriate processing into any computer via standard interfaces, including FireWire and Camera Link.
Figure 1. Providing the primary image memory in the camera, so that the highest and most appropriate data rate transfers the images from the sensor into memory, is an important improvement for the new generation of digital cameras with extreme spatial resolution and/or high image recording rates.
Added benefits of this change in concept include new recording and trigger opportunities, which were limited by the slow performance of computer operating systems. For example, the use of a posttrigger can be helpful in many applications in life sciences and physics in case the precise moment of interest is not known in advance.
If the camRAM is operated in ring buffer mode, an event can be observed and recorded, and when it is over, the recording is stopped and the history is available in the camRAM. In a ring buffer, data continuously records to memory. If the memory is filled, it starts overwriting the oldest data. Therefore, it is used in a cyclical way.
The camRAM also solves the problem of handling large amounts of data and enables the use of a huge selection of standard data interfaces, from simple slow ones, such as RS-232, to sophisticated fast ones, such as Camera Link. Multiple cameras also can be connected by a bus system, such as FireWire, or a network, such as Gigabit Ethernet GigE, without dedicating one computer per camera.
Meet the author
Gerhard Holst is head of the research department at PCO AG in Kelheim, Germany; e-mail, [email protected].