Overview

The GX5960 can operate at frequencies up to 50 MHz with programmable timing sets applied on a per Step and Channel basis. Each board contains 32 (GX5964) or 16 (GX5961) I/O pins and each pin can be configured as an input or output on a per cycle basis. Each board has up to 4K Steps and 256K vectors. A vector represents the drive, expect, mask, and Tri-State data for one state (one vector clock cycle). The vector states are represented as ASCII characters.

A Step is a higher level sequence descriptor that includes clock, timing, and control settings as well as a pointer into the Vector Memory. Different Steps can have overlapping Vector ranges (Vector Count and Offset). Each Step contains timing set information that will be applied to the relevant Vectors.

The Timing Set consists of a Drive Phase Assert, and Return edge as well as a Capture Window Open and Close edge. The Phase edges determine when a Vector state will be loaded within a clock cycle. The Window edges determine when the input will be sampled within a clock cycle. Consequently, each channel has an associated capture mode that allows the sequencer to capture input on the Window open edge, close edge, throughout the entire Window or not at all.

The GX5960 includes one unified (Vector) memory, for storing drive, expect, mask, and Tri-State data for each of the 256K Vectors. A separate Record memory is used to store up to 256K response states (raw logic HI and LO) or real time error states (depending on a Step’s record mode) recorded during a sequencer run.

One of the GX5960’s functional modules is the sequencer. The GX5960 sequencer functions as a state machine with five main states: RUN, SOFT PAUSE, HARD PAUSE, IDLE, and RESET. The sequencer runs each Step sequentially, applying timing (phase and window) settings to the Vectors associated with the Step. The sequencer will also perform a conditional jump, unconditional jump, subroutine jump, or loop if so instructed by a Step.

The sequencer has the ability to Handshake with various signals in order to synchronize with a UUT. Handshaking settings can be selected on a per Step basis where various Handshake Pause and Resume resources can be used. Handhsake resources are configured for use by a Step. Configuring a Handshake resource entails selecting a source signal and test condition (high level, low level, rising edge, falling edge) to evaluate the source signal as a valid Pause or Resume condition.

Each digital pin can be individually programmed for a drive high, drive low, input threshold high, input threshold low, and a load value (with commutation voltage level) Slew rate is also adjustable, providing further flexibility when creating and verifying test programs and fixtures. Each channel output can be formatted programmatically to one of the following formats: No Return, Return to Off (HiZ), Return to Zero, Return to One, Return to Complement, Surround Complement, Force Zero, Force One, Force Off (HiZ), Force inverse Phase Output, Force Phase Output. Output formatting provides flexibility to create a variety of bus cycles and waveforms to test board and box level products. Each output channel can sense an over current sink or source condition, protecting each I/O channel from an overload condition. These conditions are recorded and the channel’s output will go to a HI-Z state until the over current flag is cleared.

Each channel has its own Parametric Measurement Unit (PMU). The PMU offers the ability to perform analog measurements on each digital pin. Measurement configurations include force voltage, measure current and force current, measure voltage.

Additionally, under software control, each channel’s operating temperature, Vcc / Vee voltage rails, drive high / drive low voltages, sense hi / sense lo voltages, and output current values can all be monitored and measured.

Each input channel’s source and sink load currents can be set programmatically. The input channel current source forces the specified constant current to be active when the input voltage is above the high voltage clamp value. Each input channel’s constant current voltage clamp can be set programmatically. With independent high and low clamping (commutating) voltages, the source and sink currents each have their own threshold voltage. Each input channel‘s load may be configured as a selectable resistor with pull-up and pull-down values or the value can be an open circuit. Each input channel’s high and low voltage threshold comparator delays can be set programmatically. Each output channel has independent adjustments for the rising and falling edge slew rates. Additionally, each I/O channel can be programmed to have a skew delay. Each output channel’s drive low and drive high voltages can be set programmatically. The total output driver voltage swing (output driver high voltage less output driver low voltage) is limited to 24V per channel.