Jam STAPL 语言编程支持
Jam 设备编程和测试语言与提供 ISP 的 PLD 兼容。Jam STAPL 编程支持由数量不断增长的供应商提供。
利用 Jam STAPL 的嵌入式编程
Jam 标准测试和编程语言 (STAPL) 满足通过嵌入式处理器进行系统内编程的系统需求,因为它的文件较小、方便使用且独立于任何平台。通过嵌入式处理器将 Jam STAPL 用于系统内编程可让现场升级更加便捷、原型设计更加轻松且生产过程更加快速。这些优势延长了设备的使用寿命,增强了终端产品的质量和灵活性。同时不再需要存储和跟踪编程后的设备,因而减少了设备库存。
运行方式
通过嵌入式处理器将 Jam STAPL 用于系统内编程分为两个阶段(如图 1 所示)。首先,Quartus® II 开发工具生成 Jam STAPL 源代码或 Jam 文件 (.jam),然后将其存储在系统内存中。Jam 文件包含对支持在系统可编程 (ISP) 的设备进行编程所需的所有信息,其中包括升级一个或多个设备所需的编程算法和数据。
图 1.通过嵌入式处理器使用 Jam File & Jam Player 的系统内编程。
关于 Jam 文件 (.jam)
要使用 Jam STAPL 对英特尔 FPGA 设备进行编程,设计人员必须先使用 Quartus II 开发软件创建 Jam 文件。不必重新编译现有设计,因为 Quartus II 软件可以从编程器对象文件 (.pof) 创建 Jam 文件。要将 Jam 文件存储在可擦除可编程的只读存储器 (EPROM) 或闪存中,首先必须将其转换为十六进制(英特尔格式)文件 (.hex) 或类似编程文件。嵌入式处理器软件包或其他实用程序可以自动转换用于 EPROM 或闪存编程的 Jam 文件。同样,一些 EPROM 编程器支持“原始二进制”或“绝对二进制”格式,这样编程器无需转换即可直接读取 Jam 文件。
图 2 描述了如何生成用于系统内编程的 Jam 文件。
图 2.生成 Jam 文件。
关于 Jam Player
Jam Player 是一个 C 程序,用于解析 Jam 文件,解释每条 Jam STAPL 指令,并从 JTAG 链读写数据。Jam Player 处理的变量取决于执行时显示的初始化列表变量。由于每个应用程序都有自己独特的需求,因此 Jam Player 源代码可轻松进行修改。
图 3 显示了 Jam Player 源代码结构。
图 3.Jam Player 源代码结构。
注:
- TCK、TMS、TDI 和 TDO 是 JTAG I/O 引脚。
主程序无需修改即可执行 Jam Player 的所有基本函数。只有 I/O 函数必须要进行修改。如图 3 所示,此类函数包含在 jamstub.c 文件中,其中包括用于指定 I/O 引脚地址、延迟例程、操作系统特定函数和文件 I/O 引脚例程的函数。只需编辑 jamstub.c 文件即可定制这些函数,然后可编译源代码以在任何平台上使用。
Jam Player 永久存放在系统内存中,它将解释 Jam 文件中所提供的命令,并生成二进制数据流用于设备编程。此结构限用于 Jam 文件的所有升级,且 Jam Player 可利用此结构来适应任何系统架构。
ISP 和 Jam STAPL
Jam 标准测试和编程语言 (STAPL) 由英特尔® FPGA 工程师打造,并获得可编程逻辑设备 (PLD) 制造商、编程设备制造商和测试设备制造商的联合支持。Jam STAPL 于 1999 年 8 月作为 JEDEC 标准 JESD-71 采用。
Jam STAPL 可解决设计人员在对 PLD 进行系统内编程时面临的问题。此类问题包括专有文件格式、供应商特定的编程算法、文件较大及编程时间较长等。Jam STAPL 是为系统内编程 (ISP) 提供软件级标准的重要步骤。
Jam STAPL 运作方式
Jam STAPL 编程解决方案包含两个组件:Jam Composer 和 the Jam Player。
Jam Composer 是一个通常由可编程逻辑供应商编写的软件程序,该程序将编写一个 Jam 文件 (.jam),其中包含将设计编程至设备所需的用户数据和编程算法。
Jam Player 软件用于读取该 Jam 文件,并将向量应用于 JTAG 链中的编程和测试设备。嵌入式系统开发人员还可以使用 Jam Player 对其系统内的设备进行编程。Jam Player 所需的大部分源代码均包含在 Jam STAPL 网站所提供的 Jam STAPL 开发人员套件中。完成 Jam Player 所需的软件例程仅为访问 JTAG 链所需的例程。图 1 显示了基本的 Jam STAPL 流。
文档
- 《MAX® II 手册》中的通过嵌入式处理器使用 Jam STAPL 进行 ISP › 章节
- 《MAX II 手册》中的 JTAG 和在系统可编程性章节
- AN 95:MAX®设备中的在系统可编程性
Jam 编程支持:JTAG Technologies
JTAG Technologies* 提供了基于边界扫描 IEEE 标准 1149.1 和相关标准(包括 IEEE 1532)的全套系统内编程和 PCB 测试解决方案。这些解决方案涵盖了包括设计支持、原型调试、生产和维修在内的所有开发阶段。
PLD 编程开发
JTAG Technologies* 产品支持可编程逻辑设备 (PLD) 编程,包括 JAM 标准编程和测试语言 (STAPL) 和串行向量文件 (.svf) 格式。因此,编程功能可用于英特尔® FPGA MAX® II、MAX 7000 和 MAX 3000A。不论采用何种设备类型、品牌或格式,该系统都会向用户提供一个通用界面,以避免出现工具数量激增的情况。快速创建的文件可以执行所有板上设备操作,如擦除、空白检查、编程、验证、安全熔丝编程和用户代码回读。
JTAG ProVision* 开发系统可处理从简单的单链结构一直到多链、多级分层扫描架构的各种各样的扫描链配置。扫描链可以是任意长度,且在 PLD 编程期间自动对主板进行安全配置。该软件 GUI 将指导您验证边界扫描语言 (BSDL) 文件、测试电路板边界扫描链并执行编程功能。
生产支持
AG Technologies 的 PLD 编程应用程序运行于各种操作环境下的一系列完全兼容的硬件控制器上。接口可用于 PCI*、PXI、USB、以太网、FireWire、ISA 和 VXI。生产环境包括:
- 独立 PC 或工作站版本,且具备易用的图形界面以对操作进行排序
- 现有生产步骤(如功能测试)内通过基于动态链接库(基于 DLL)的应用程序实现完全集成
- 支持将 PLD 编程并入美国国家仪器公司的 LabWindows/CVI、LabVIEW 平台或 NI TestStand 中
PLD 编程可借助 JTAG Technologies 提供的工具与其他功能强大的边界扫描应用程序(如主机测试和系统内闪存编程)一起排序。为操作人员、技术人员和工程师提供了多个授权级别。生产人员可快速轻松地进行控制,通常可通过一键操作完成,并可获得总结性执行报告。
Jam STAPL 语言供应商支持
Jam 标准测试和编程语言 (STAPL) 与提供在系统可编程 (ISP) 的可编程逻辑设备 (PLD) 兼容。Jam STAPL 是为系统内编程提供软件级标准的重要步骤。Jam STAPL 编程支持由数量不断增长的供应商提供。
卖主 | 说明 |
---|---|
ASSET InterTech, Inc. |
|
科雷利斯公司 |
|
戈佩尔电子 |
|
JTAG 技术 |
|
System General |
|