一、问题场景说明
客户对产品有远程升级的需求,工程师使用的是AG10K/AG16K型号的AGM FPGA,额外增加模拟开关以实现JTAG烧录模式与ARM AS配置模式的切换。
通过JTAG烧录,Supra软件提示烧录成功,但是FPGA未能正常启动。经检查模拟开关硬件电路设计无误、通信链路正常,进行AS配置时,SPI FLASH的时钟与数据持续有信号,FPGA始终无法完成配置,也不能正常启动工作。

二、标准化解决流程
- 前置基础校验
首先完整排查硬件电路,确认硬件设计不存在错误,全链路通信状态正常。
- 调整配置时钟频率
配置时钟速率过快是该场景下***常见的故障诱因,可通过修改ASF文件参数调整时钟速度:
♦在.asf文件中添加全局配置语句:set_global_assignment -name OSC_FREQUENCY 1 -extension
♦该参数的取值范围为0-7,其中0对应***慢配置时钟,7对应***快配置时钟
♦修改保存.asf文件后,在supra软件中打开对应项目Project,重新执行编译Compile操作生成全新的烧录文件。
- 验证生效 将新生成的烧录文件,无论是通过JATG烧录,还是通过ARM配置给SPI FLASH完成FPGA加载,都可以让FPGA正常工作,故障即可完全排除!Successful!

三、配套核心背景知识
(一) 不同系列AGM FPGA烧写文件说明

1. AG256 / AG576系列
- .prg:通过JTAG烧写的标准烧写文件
- _download.prg:AGM Downloader专用编程器对应的烧写文件,适用于批量快速烧写场景
- _SRAM.prg:用于片内SRAM写入,通过JTAG烧写后掉电即失效,可用于设计调试环节
2. AG10K/16K系列
- _SRAM.prg:用于片内SRAM写入,通过JTAG烧写后掉电即失效,可用于设计调试环节
- _master.prg:适用于Master(AS)配置模式,是通过JTAG烧写外部配置FLASH的专用文件
- _master.bin:适用于Master(AS)配置模式,是配置Flash的标准烧写文件
- _master_as.prg:该文件会调用上述的_master.bin文件,可通过AS口直接完成FLASH烧写
- .bin:基础配置文件,既可以用来衍生生成其他类型的烧写文件,也可直接用于Slave(PS)配置方式
- rbf文件:是将上述bin文件的字节高低位反向转换后得到的文件
(二) 附加烧写功能说明
- 烧写_master.prg前需要预先擦除FLASH,操作时可勾选'Full chip erase before program'选项
- 通过JTAG擦除配置FLASH,可选择'Erase configuration flash'功能,支持全片擦除或者指定地址内容擦除
- 通过JTAG读取配置FLASH内容,可选择'Read configuration flash to file'功能,设置输出bin文件的存储路径与读取起止地址即可完成操作。
(三) JTAG配置电路注意事项
AGM FPGA/CPLD通过JTAG完成配置与烧写时,可直接使用AGM USB-Blaster下载线或者AGM DAP LINK,硬件电路设计与Altera器件完全兼容。

请注意:如果采用非标准10针插座,Pin-2和Pin-10均需接地。

海振远科技常备充足现货库存,助力客户缩短交付周期、加速产品上市。
我们可提供FPGA解决方案,也支持深度联合定制开发,***助推客户产品快速落地推向市场。