11–6
Chapter 11: In-System Programmability Guidelines for MAX II Devices
Sequential versus Concurrent Programming
f
For more information about disabling the IEEE 1149.1 circuitry, refer to the Disabling
IEEE Std. 1149.1 BST Circuitry section of the IEEE 1149.1 (JTAG) Boundary-Scan Testing
chapter in the MAX II Device Handbook.
Working with Different Voltage Levels
When devices in a JTAG chain operate at different voltage levels, a device’s output
voltage specification must meet the subsequent device’s input voltage specification. If
the devices do not meet this criteria, you must add additional circuitry, such as a level-
shifter, to adjust the voltage levels. For example, when a 5.0-V device drives a 2.5-V
device, you must adjust the 5.0-V device’s output voltage to meet the 2.5-V device’s
input voltage specification.
Because all devices in a JTAG chain are tied together, you must also ensure that the
first device’s TDOoutput meets the subsequent device’s TDIinput voltage
specification to program a chain of devices successfully.
All MAX II devices include a MultiVolt I/O feature, which allows these devices to
interface with systems that have different supply voltages. All MAX II devices can be
set for 3.3-V, 2.5-V, 1.8-V, or 1.5-V I/O operation. The JTAG pins of MAX II devices
support these voltage levels. Refer to the MAX II Architecture chapter in the MAX II
Device Handbook for I/O standard compatibility for each VCCIO voltage. For example,
V
CCIO1 at 3.3 V does not allow JTAG input pins to accept 1.8- or 1.5-V signals.
Sequential versus Concurrent Programming
This section describes how to program multiple devices using sequential and
concurrent programming. The JTAG chain setup for sequential and concurrent
programming is similar, only the programming algorithms are different.
Sequential Programming
Sequential programming is the process of programming multiple devices in a chain,
one device at a time. After the first device in the chain is finished being programmed,
the next device is programmed. This sequence continues until all specified devices in
the JTAG chain are programmed. After a device is programmed, it will be in bypass
mode to allow data to be passed to the subsequent devices in the chain. The devices in
the chain do not go into user mode until all the devices are programmed.
Concurrent Programming
Concurrent programming is used to program devices from the same family (for
example, the MAX II family) in parallel. The programming time is slightly longer than
the time needed to program the largest device in the chain, resulting in considerably
faster programming times than sequential programming (where programming time is
equal to the sum of individual programming times for all devices). Higher clock rates
for shifting data result in even greater time savings.
Concurrent programming of devices can be done using Serial Vector Format files
(.svf), Jam files, or JBC files created from the Quartus II software. See Figure 11–2.
1. On the Tools menu, click Programmer.
2. Click Add File and select programming files for the respective devices.
MAX II Device Handbook
© October 2008 Altera Corporation