System designers today must deal with complex buses and equally complex bus-signaling protocols. This often requires using separate instruments, each optimized for either logic analysis or protocol analysis. But advances in bus operating speeds and changes in protocols frequently cut the instrument's life short. The ideal solution would combine the ability to handle both logic and protocols, while also allowing easy upgrades to support higher speeds and multiple protocols.
Designers at Data Transit have crafted exactly this combination. Known as the Bus Doctor, it performs both logic and protocol analysis. To do this, the instrument leverages programmable logic and software-based control to allow instant reconfiguration and feature upgrades. Moreover, it accomplishes this in a compact, transportable LCD-based package measuring just 13 by 12 by 2.4 in. Plus, such flexibility comes without a performance penaltythe Bus Doctor delivers top-of-the-line capabilities when performing logic analysis, and it handles just about any protocol.
Software developers can take advantage of the easy setup and bus-specific menus for triggering and filtering, as well as a statistical analysis capability. This combination of features simplifies protocol analysis. It also enables hardware developers to make the most of the logic-analysis features, evaluate the timing resolution, set up almost infinite triggering combinations, and adapt to both today's and tomorrow's buses.
The first software release for the Bus Doctor will include configuration files that let the analyzer handle USB 2.0, ATA-100, ATAPI, PCI-X, 1394, Cardbus, Fibre Channel, Gigabit Ethernet, and InifiniBand interfaces. By the end of the summer, the company expects to have Serial ATA, Bluetooth, SCSI 320, and Compact Flash configuration setups. Additional bus interfaces are planned. Custom interfaces can be created, too. Similarly, the Smart Pod created for each bus can be configured by the analyzer to handle variations to the bus. The Bus Doctor also can be updated to support new buses by simply downloading a new configuration file from the host instrument.
Hardware for the Bus Doctor consists of three basic sections: a 633-MHz Intel Celeron-based embedded host computer that runs the Windows 2000 operating system, a PCI card that performs the main analyzer functions, and the configurable Smart Pod (Fig. 1). The heart of the analyzer is a PCI card containing a large SRAM-based FPGA and a high-performance DMA controller. Also included is an SDRAM controller, which keeps tabs on a 144/288-bit wide by 256-Mword deep buffer memory. That combination allows on-the-fly reconfiguration while providing control for the high-bandwidth data transfers needed to view and store large amounts of captured data.
There also are general-purpose logic pods available to turn the Bus Doctor into an ultra-deep logic analyzer. Logic pods support 18 signals each for a total of 108 channels when using all six input cables for logic analysis.
Captured data can stream across the internal PCI bus at over 40 Mbytes/s. This lets users view data without any pauses or delays while providing access to a 4.5-Gbyte (maximum) data buffer. Large traces that must be stored on the system's internal hard drive are only limited by the bandwidth of the ATA bus (40 Mbytes/s sustained) and the size of the drive.
The FPGA-based analyzer card can operate at a 250-MHz sample rate. This translates into trace captures that can be done in as little as 4 ns per 144-bit event. The ability to configure the functionality on-the-fly allows for streamlining and minimizing of the hardware, thereby permitting the circuitry on the FPGA to op-erate at top speed. Because the logic functions can be directly implemented in the FPGA, processor-readable/writable registers aren't needed. This saves space because such registers take up valuable space and complicate the floorplanning with-in the FPGA.
The direct implementation of the logic takes advantage of the fast interconnects between the configurable logic blocks within the FPGA. Additionally, by eliminating all registers, the instrument's designers had room to implement features that otherwise wouldn't fit into the most cost-effective FPGAs available today. So, the Bus Doctor includes very powerful triggering capabilities, plus the ability to collect and display real-time statistics and filter the data during capture.
The trigger sequence is by far the most complex part of the analyzer and possibly the most complex trigger sequencer in any commercial system. It consists of a 12-level trigger sequencer that can be in any level or all levels simultaneously. Two levels are counters, and two are timers. This provides the extra benefit of adding a time element, or a count, to any sequence of events that the user may wish to trigger on.