|
In-System Programming
The increasing use and decreasing cost of programmable devices
has caused their popularity to explode during recent years. The
wide variety of available devices and programming methods
requires acquiring and maintaining different types
of in-system programmers.
ScanExpress Programmer was designed to replace the various types
of in-system programmers with a single universal programmer with
a scalable architecture for future expandability.
ScanExpress Programmer is a universal in-circuit programming
tool that can program and verify Flash memories, serial EEPROMs,
CPLDs, FPGAs and other programmable logic devices. ScanExpress
Programmer provides common programming functions including read,
erase, blank check, program, verify, device ID check, and
others. All of these functions can be performed while the target
device is installed in-circuit.
Programming memories in-circuit is performed in development,
production, and in the field. For development, software
engineers can change code stored in memory devices during the
software development. For production, in-circuit programming
allows memory devices to remain on the shelf in an unprogrammed
or blank state. These blank devices can then be installed at
assembly and programmed in-circuit, thus reducing programming
and tracking costs. In the field, support engineers and
technicians can upgrade the product with new released firmware.
ScanExpress Programmer
ScanExpress Programmer offers several programming methods.
Utilizing a high-performance Corelis controller with built-in
support for JTAG, I2C, and SPI, and user friendly Windows-based
software, ScanExpress Programmer can program components
utilizing any of four individually licensed modules:

ScanExpress Programmer Modules
The Serial Peripheral Interface (SPI)
Programmer module provides fast programming of any SPI memory
device by controlling the SPI bus signals directly through a
dedicated high-speed SPI interface available on select Corelis
boundary-scan controllers.
The Inter-Integrated Circuit (I2C)
Programmer module provides fast programming of I2C memory
devices by controlling the I2C bus signals directly through the
dedicated I2C interface available on supported Corelis
boundary-scan controllers.
The Target Assisted Flash
Programmer (TAFP) module utilizes the CPU on the target board to
achieve the fastest programming performance of flash memory
devices.
The JTAG Programmer module is the
most flexible programmer and can program flash memory and serial
EEPROM devices which are connected to boundary-scan components.
The JTAG programmer can also program CPLDs and other devices
that are JTAG in-system programmable, including those that are
compliant with IEEE-1532.

ScanExpress Programmer GUI
SPI and I2C Programming
ScanExpress Programmer provides
easy-to-use high-speed programming of SPI and I2C compatible
serial EEPROMs and Flash memories. Users can program the devices
in-system and at maximum programming speed - typically in
several seconds (depending on the memory size).
The SPI and I2C GUIs allow Erasing,
Programming, Verifying, and Reading the content of the EEPROM
and Flash memory and saving it to a file on the computer.
Standard Motorola S-Record file, Intel Hex file or a hex-text
file formats are supported. The Read button allows immediate
display of data from any user specified address block of the
serial memory device.
JTAG Programming
The JTAG Programmer module allows
in-system programming of flash memory and serial EEPROM devices
that are connected to boundary-scan compatible devices. Figure
16 depicts a block diagram of this concept. The JTAG Programmer
module uses a special target flash description board file and a
standard hex or binary data file to program the flash device.
The Flash Programming Information file (.fpi), commonly called a
"board file", provides the JTAG scan chain information and flash
device parameters while the data file provides the flash
content.
Board files can be generated by
either of two Corelis companion products: ScanExpressTPG™ or
ScanPlus Flash™ Generator which are sold separately. These
companion tools use the netlist of the target board, BSDL files
for all boundary-scan components and a special built-in flash
library. Compiling these files with a flash model creates the
board file which is then used by the JTAG Programmer module to
program the flash device.
In addition to its extensive flash
related features, the JTAG Programmer module can also program
serial EEPROM and DiskOnChip® devices and execute various ISP
programming files for CPLDs and FPGAs. The module contains a
built-in SVF (Serial Vector Format) file parser which is capable
of executing SVF files created by manufacturers’ tools to
program their devices. The JTAG Programmer module also contains
a JAM and STAPL language interpreter for executing ISP files of
the vector-independent JAM and Bytecode formats. Devices
from all popular manufacturers are supported including Alliance
Semiconductor, Altera, AMD, Atmel, Fairchild, Fujitsu, Hyundai,
Intel, Microchip, Micron, Macronix, M-Systems, Philips, Samsung,
Sharp, SGS-Thompson, Spansion, SST, Texas Instruments, Toshiba,
and Xicor.

ScanExpress Programmer JTAG In-System Programming
Target Assisted Flash Programming (TAFP)
The Target Assisted Flash
Programmer takes advantage of the embedded CPU on the target
board to shorten the Flash memory programming time and simplify
the operation of Flash programming. With the Target Assisted
Flash Programmer,
the user can perform many Flash programming functions such as
erase, blank check, program, verify, obtain device ID, etc. All
of these functions can be performed while the device is
installed in-circuit.
The Target Assisted Flash
Programmer has the ability to test the JTAG connection, test the
RAM, check the Flash device ID, erase the Flash device, verify
the erasure, download Flash data to RAM, program the Flash
device, and verify the Flash data in one step.
The Target Assisted Flash
Programmer relies on using a supported JTAG compatible CPU
device on the target in order to accomplish the Flash
programming operation. Please contact Corelis for CPU devices
currently supported.
In-System JTAG Programming of CPLDs
ScanExpress
allows users to program or reprogram Complex Programmable
Devices (CPLDs) devices in-circuit after the devices have been
soldered onto the printed circuit board.
Overview
As densities of CPLDs increase and package
sizes decrease, it becomes difficult to program these devices
out-of-circuit. For designs that include a JTAG IEEE Std 1149.1
interface, it is possible to program CPLDs in-circuit, while
soldered in place.
Programming in-circuit is desirable in both
development, production, and service environments. For
development, engineers can change configuration information
stored in the CPLDs during the development process. For
production, in-circuit programming allows CPLDs to remain on the
shelf in an unprogrammed or blank state. These blank devices can
then be installed at assembly and programmed in-circuit, thus
reducing programming and tracking costs. Following delivery of a
product to a customer, a field-service technician, or even the
customer, can download new configuration information without
taking the system apart. That reduces the cost of "servicing"
the equipment.
Key Features
-
Programs multiple devices from various vendors in a single-chain
-
Supports JAM, STAPL, J-Drive, SVF languages
-
32-bit Windows 95/98/NT/2000/XP/Vista application
-
Intuitive GUI makes it simple to use – even
for those that have little or no experience with boundary-scan
technology
-
Powerful JTAG chain fault detection and
diagnostics help isolate hardware problems quickly
-
Based on Corelis’ line of high-performance
boundary-scan controllers
Compatible with Corelis ScanExpress
boundary-scan test systems. Supports the following devices and
many more:
|
|
Altera |
All |
Cypress |
All |
Lattice |
All |
Vantis |
All |
Xilinx |
All |
By using ScanExpress for In-System Programming
with its simple, but powerful GUI, a person with little or no
experience with boundary-scan technology can quickly program
CPLDs in-circuit. Based on Corelis’ line of high-performance
boundary-scan controllers, CPLDs programming times are reduced.
Because ScanExpress In-System Programmer is
based on Corelis’ line of high-performance boundary-scan
controllers, it is compatible with the Corelis family of
ScanExpress test systems. If the user wishes to add board
interconnect test capabilities, he can purchase additional
software for boundary-scan interconnect test pattern generation
and test execution and then use the same boundary-scan
controller both for In-System-Programming and manufacturing
defects testing and diagnosis. |