PCI-bus lockout challenges vision-system integrators
PCI-bus lockout challenges vision-system integrators
When BitFlow (Woburn, MA) introduced its Road Runner PCI frame-grabber board in April 1996, the company demonstrated that the board could sustain average transfer rates faster than 100 Mbytes/s across the PCI bus. There was nothing special about the test platform, a personal computer (PC) based on Intel`s popular Pentium microprocessor.
Performance at least as positive was expected for succeeding Intel microprocessor generations, the Pentium Pro and Pentium II. After all, these chips boasted higher clock rates and correspondingly higher main-memory bandwidths, two key ingredients for host-based image acquisition and processing.
Surprisingly, both Pentium Pro and Pentium II showed contrary results. Although supported by PCI chipsets capable of sustaining 100-Mbyte/s transfers, motherboards based on both processors apparently lock out the PCI-bus access to main memory. This lockout is derived from the Pentium Pro/Pentium II PCI-arbitration protocol, a low-level hardware mechanism for sharing the bus.
To test PCI-bus performance, BitFlow vice president for software Reynold Dodson wrote a program called Frame Bench. The program uses the Road Runner frame grabber to simulate the generation and transfer of images of arbitrary size across the PCI bus. Housed in a 266-MHz Intel Pentium II computer using Intel`s 440FX three-chip PCI chipset, the frame grabber was used to deliver 1024 ¥ 1024 ¥ 8-bit images into system memory and then analyze how many images had been captured or lost. Using Frame Bench, Dodson demonstrated periodic PCI-bus lockout and occasional frame loss.
"At 40-MHz clock rates and 1 byte per clock, this motherboard can accept image data without loss," says Dodson. However, the new generation of cameras, such as the ES-1 from Eastman Kodak`s Motion Analysis Systems Division (San Diego, CA), generates 1024 ¥ 1024 images of 10 bits/pixel at 30 frames/s. "This requires uninterrupted data transfers at 80 Mbytes/s for the entire frame time," says Dodson, "and the bus lockout seems to happen roughly once per second."
According to Dodson, the lockout effect did not occur on Pentium mother-boards based on Intel`s 430FX/VX/HX PCI chipsets, but did in newer 440FX and LX designs. Intel Corp. (Santa Clara, CA) acknowledges this issue with some older PCI devices that were not designed for today`s highly concurrent environment. A white paper available to original equipment manufacturers and independent hardware vendors states that, unlike the original Intel Pentium processor, the Intel Pentium Pro/Pentium ll processor platforms handle bursting devices differently. PCI devices in this newer environment are limited to the time they can burst before the bus is given to another PCI agent. According to Intel, this arbitration scheme operates "fairly" to optimize system-wide performance. The white paper describing the problem and how to cope with it is available subject to protection under Intel`s nondisclosure agreement.
Is PCI-bus lockout a problem for vision-system integrators? For cameras producing data at rates to 60 Mbytes/s, PCI-bus performance differences between PCs based on the original Pentium versus the successor chips should not be noticed. (In comparison, standard-scan monochrome acquisition requires about 10 Mbytes/s.) But in the neighborhood of 80 Mbytes/s and higher, PCI-bus lockout can result in data loss. "This is no problem for typical machine-vision applications," says Dodson, "because the frame grabber must be commanded to set up for acquisition via the PCI bus and, of course, that command cannot reach the board until after bus lockout."
Sequence capture is more demanding, however. Once initiated, the capture sequence floods the PC with image data, pausing only during the horizontal and vertical blank intervals. The loss of any part of a frame corrupts that frame and can even make the entire sequence worthless in certain applications. Nevertheless, real-time video software such as Video Savant from Io Industries (London, Ontario, Canada) relies upon PCI-bus frame grabbers. Says Io Industries president Andrew Sharpe, "We recommend the PCI bus-mastering Road Runner for sequence capture from digital cameras."
According to Sharpe, the Video Savant software can acquire image data into host memory, time-stamp each frame, and write it out to disk indefinitely at 30 Mbytes/s. Because the pixels flow into main memory and back out via the PCI bus, the aggregate data rate becomes 60 Mbytes/s.
Solution options
System integrators have several options for dealing with the PCI-bus lockout problem. Perhaps the most sensible is to test the PC, frame grabber, and software thoroughly, and in the context of the particular application at hand, before purchasing new vision-system components. Another economical solution is to use original-Pentium PCs, provided they can run the required vision algorithms fast enough. Yet another option is to use non-Pentium PCs that do not exhibit the bus-lockout problem.
For example, BitFlow demonstrated no loss of frames at rates beyond 80 Mbytes/s using an AlphaPC 164LX computer from Microway (Kingston, MA). Running at 533 MHz, the 21164-based processor from Digital Equipment Corp. (DEC; Maynard, MA)--now incorporated into Compaq Computer (Houston, TX)--uses DEC-designed PCI bridge chips. According to BitFlow`s Dodson, the Alpha chipset never locks out the PCI bus.
"Our more demanding customers lead us to port the Road Runner to Windows NT on the Alpha architecture," states Jeff Wilson, BitFlow sales and marketing vice president. "After moving image data, they need plenty of computer left over to process it. Though important, the lockout problem is not their primary concern. Sales into Intel-based PCs remain our bread and butter, but the Alpha delivers far more performance for just a little more money," he adds.
High-end industrial cameras now available off the shelf demand input/output bandwidth at the limit of 32-bit PCI bus capability. For instance, the CT-E1-2048A line-scanner camera from Dalsa (Waterloo, Ontario, Canada) provides eight outputs clocked together at 15 MHz, for an aggregate 120-Mbyte/s requirement. As applications that call for such cameras grow in importance, so does flawless operation of the PC/frame-grabber acquisition system.