UJTAG Applications in Actel’s Low-Power Flash Devices
v1.1
19- 7
Similar reconfiguration capability exists in the Actel ProASICPLUS family. The only difference is the
number of shift register bits controlling the CCC (27 in ProASICPLUS and 81 in IGLOO, ProASIC3, and
Fusion).
Fine Tuning
In some applications, design constants or parameters need to be modified after programming the
original design. The tuning process can be done using the UJTAG tile without reprogramming the
device with new values. If the parameters or constants of a design are stored in distributed
registers or embedded SRAM blocks, the new values can be shifted onto the JTAG TAP Controller
pins, replacing the old values. The UJTAG tile is used as the “bridge” for data transfer between the
JTAG pins and the FPGA VersaTiles or SRAM logic.
Figure 19-5 shows a flow chart example for fine-
tuning application steps using the UJTAG tile.
In
Figure 19-5, the TMS signal sets the TAP Controller state machine to the appropriate states. The
flow mainly consists of two steps: a) shifting the defined instruction and b) shifting the new data. If
the target parameter is constantly used in the design, the new data can be shifted into a temporary
shift register from UTDI. The UDRSH output of UJTAG can be used as a shift-enable signal, and
UDRCK is the shift clock to the shift register. Once the shift process is completed and the TAP
Controller state is moved to the Update_DR state, the UDRUPD output of the UJTAG can latch the
new parameter value from the temporary register into a permanent location. This avoids any
interruption or malfunctioning during the serial shift of the new value.
Figure 19-5 Flow Chart Example of Fine-Tuning an Application Using UJTAG
Yes
No
TAP Controller in
Test_Logic_Reset
State
Set TAP state to
SHIFT_IR
Shift the user-defined
instruction of tuning
application
Set TAP state to
Update_IR
Latch the recorded data
onto the location of stored
parameter
UIREG Equal to
the user-defined
instruction
Set TAP state to
SHIFT_DR
Shift data into TDI and
record UTDI in a shift
register
Set TAP state in
Update_DR