
PulseBlaster
voltage will drop below the TTL limit of 3.3 V. If more current is required for lower loads, users can
boost power using the SpinCore TTL Line Driver.
Timing Characteristics
The PulseBlaster’s timing controller accepts an internal (on-board) crystal oscillator up to 100
MHz. The innovative architecture of the timing controller allows the processing of either simple timed
instructions (with delays of up to 2
32
or 4,294,967,296 clock cycles), or double-length timed
instructions (up to 2
52
clock cycles long – nearly 2 years with a 100 MHz clock!). Regardless of the
type of instruction, the timing resolution remains constant for any delay – just one clock period (e.g.,
10 ns at 100 MHz).
The core-timing controller has a minimum delay cycle of five clock periods for the PB12-100-4k
and PB24-100-4k and a minimum delay cycle of nine clock periods for PB24-100-32k and PB24-100-
64k. For a 100 MHz clock, this translates to a 50.0 ns pulse/delay/update for the PB12-100-4k and
PB24-100-4k models, and a 90.0 ns pulse/delay/update for the PB24-100-32k and PB24-100-64k
models.
Instruction Set
The PulseBlaster’s design features a set of commands for highly flexible program flow control.
The micro-programmed controller allows for programs to include branches, subroutines, and loops at
up to 8 nested levels – all this to assist the user in creating dense pulse programs that cycle through
repetitious events, especially useful in numerous multidimensional spectroscopy and imaging
applications.
External Triggering
The PulseBlaster can be triggered and/or reset externally via dedicated hardware lines. These
lines combine the convenience of triggering (e.g., in cardiac gating) with the safety of the "stop/reset"
line.
Status Readback
The status of the pulse program can be read in hardware or software. The hardware status
output signals consist of five IDC connector pins labeled “Status”. The same output can be read
through software using C. See Section IV (Connecting to the PulseBlaster Board, page 18) for more
detail about the hardware lines and Appendix I (Controlling the PulseBlaster with SpinAPI, page 25)
for more detail about the C function pb_read_status().
2021/03/22
7