Lattice Semiconductor Corporation has announced the immediate, no charge availability of its ispVM programming software that supports its Transparent Field Reconfiguration (TransFR or TFR) capability. Lattice’s TransFR technology allows designers to reconfigure LatticeXP non-volatile FPGAs in the field without interrupting system operation.
Lattice’s ispVM software is a Windows-based tool set that facilitates the programming of Lattice devices. The ispVM Embedded tool generates C code that, when compiled for and executed on a wide range of embedded processors, enables the programming of Lattice devices. Field logic reconfiguration can be achieved in two stages using the ispVM software. First, a "Background" programming command loads new data into the Flash memory of the LatticeXP device transparently without halting FPGA operation. Second, at an appropriate time, device operation can be briefly suspended while an "XFlash TransFR" command updates the SRAM from the Flash block in approximately 1 millisecond. This update can occur while holding the I/Os in user-defined states to avoid disturbing the surrounding system’s operation. The ispVM software can either issue the commands directly via a programming cable (serial or USB) during prototyping, or generate an industry-standard Serial Vector Format (SVF) file for reconfiguration in the field.
The TransFR Flow
The TFR sequence requires four steps:
<typolist type="1">
The on-chip Flash memory of the LatticeXP device is programmed while the device operates out of SRAM.
The I/O states are locked at their current or a fixed value (high, low, or high-Z) by issuing commands through the JTAG interface and device operation is effectively suspended.
A command is issued through the JTAG interface to update the SRAM configuration from Flash. This typically takes less than 1mS.
The on-chip logic resumes operation and is functional and responding to inputs, allowing it to be placed into a known state. A command is then issued through the JTAG interface to release the I/O.
</typolist>
Steps 2 through 4 are implemented with a single ispVM command.