The Jam Standard Test and Programming Language (STAPL) was created by Altera engineers and is supported by a consortium of programmable logic device (PLD) manufacturers, programming equipment makers, and test equipment manufacturers. Jam STAPL was adopted as JEDEC standard JESD-71 in August, 1999.
Jam STAPL addresses the issues that designers face when programming PLDs in-system. These issues include proprietary file formats, vendor-specific programming algorithms, large file sizes, and long programming times. Jam STAPL is a major step forward in providing a software-level standard for in-system programming (ISP).
How Jam STAPL Works
The Jam STAPL programming solution consists of two components: the Jam Composer and the Jam Player.
The Jam Composer is a software program, generally written by a programmable logic vendor that writes a Jam File (.jam) that contains the user data and programming algorithm required to program a design into a device.
The Jam Player is software that reads the Jam File and applies vectors for programming and testing devices in a JTAG chain. Embedded system developers can also use a Jam Player to program devices in their system. Most of the source code required for the Jam Player is contained in the Jam STAPL Developer's Kit available from the Jam STAPL web site. The only software routines required to complete the Jam Player are those needed to access the JTAG chain. Figure 1 shows a basic Jam STAPL flow.
Figure 1. Basic Jam STAPL Flow
- Using Jam STAPL for ISP via an Embedded Processor (PDF) chapter of the MAX II Handbook
- JTAG & In-System Programmability (PDF) chapter of the MAX II Handbook
- AN 95: In-System Programmability in MAX Devices (PDF)
Frequently Asked Questions
- Can I use the Jam STAPL Player or Jam STAPL Byte-Code Player with older versions of .jam and .jbc?
- How can I determine the contents of the Jam STAPL Byte-Code File (.jbc)?
- Does the Jam STAPL Player and the Jam STAPL Byte-Code Player support the MasterBlasterTM download cable?
- Does the Jam STAPL player version 2.3 support the USB-BlasterTM download cable?
- Solutions/Find Answers…