Altera与Xilinx FPGA同在一个JTAG链中的配置方法

AlteraXilinx FPGA同在一个JTAG链中的配置方法

作者:北京中芯优电信息技术有限公司    高级工程师   冯影秋

因为AlteraXilinx两家FPGA绝大部分FPGA都符合JTAG标准,所以可以在同一个JTAG链中进行配置。(这里需确认具体的器件型号序列支持JTAG标准)这里仅仅说明在QuartusII中对AlteraFPGA进行配置步骤。(本地下载与远程下载两种方式)配置XilinxFPGA必须在JTAG Programmer环境下进行。

 1.           本地下载方式介绍及步骤

本地下载方式指在单板上对两家的FPGA进行配置,可以使用一个公用的下载端口(10针插座),这里需要注意的是AlteraXilinx对下载插座(图一中JP1)的定义不相同。

 

下载步骤:

一,首先确认PCB连线及电源良好,确保能够进行正常的电路调试。

二,QuartusII中执行以下步骤,打开Programmer窗口,把需要下载的sof文件加到Progremmer窗口,点击Add Device…(如图二所示)菜单按钮后弹出如图三所示窗口。这里执行的步骤是把XilinxFPGAJTAG信息加到JTAG链中,保证JTAG的完整,在下载AlteraFPGA时,把XilinxFPGA Bypass掉。同理,在XilinxJTAG Programmer下载XilinxFPGA.执行类似的操作把相应的AlteraFPGA JTAG信息加到XilinxJTAG链中。

三,在图三所示的Select Devices窗口中选择New…菜单按钮后弹出图四所示界面。

这里需要说明的是几个参数,Devices Name指器件名称,比如用户可以输入Xilinx等。Instruction register length为命令寄存器长度,这个参数在相应器件的Handbook中可以查到(如Altera CycloneIIInstruction register length10)。JTAG ID32bit宽的16进制码,表明器件的版本,Part Number以及Manufacturer Identify等信息。

一,参照图四点击Add JTAG ID…菜单按钮,弹出图五所示的Add JTAG ID界面。在Configuration device JTAG ID栏中输入相应的JTAG ID号(在相应的Handbook中可以找到),Configuration device JTAG ID mask默认即可。输入设置完毕后点击OK结束。这时候我们在Device family栏目可以看到我们新增加的User Defined,右边栏目看到新加的XILINX器件名称。如图七所示。

说明:以上步骤实际上是把Xilinx FPGAJTAG的相关信息加到JTAG链中,在下载AlteraFPGA时把XilinxFPGA Bypass掉,保证JTAG是一个完整的链。在Xilinx的下载界面下的工程类似。另外,虽然说两个厂家的FPGA可以串在同一个JTAG链上下载,并不意味着可以同时下载两个厂家的FPGA,只是在下载一家的FPGA时把另外一家的FPGA或者符合JTAG标准的ASIC Bypass掉。

执行完以上增加器件的操作后就可以正常下载AlteraFPGA了。

 

1.           远程下载方式介绍及步骤

远程下载是指通过网管与单板处理器之间的通信对FPGA进行远程下载,减少系统维护成本,升级简便易行。如图九所示为远程下载示意图:

 

 

(图片上传功能关闭,回头补上,呵呵)

 

 

这里的远程下载以使用AlteraJAMplayer为例说明。

因为Altera这里采用Altera推荐的JAMplayer方式用来远程下载Altera FPGAFPGA的下载文件放在本板的FLASH存储区。JAMplayer作为本地CPU的一个子程序,上电稳定后即可下载Altera FPGAXilinx同样也使用EISP-PC,与JAMplayer类似,把下载FPGA作为一个子任务。这样在源程序中把下载Xilinx以及下载Altera的程序代码加到主程序中,调用的先后不分顺序即可。(也就是说下载XilinxAlteraFPGA是分别进行的,只是比原来多了增加别的厂家FPGA JTAG信息的步骤。)

Xilinx FPGA加到JTAG链中的步骤与上文本地下载的步骤一致。在Programmer窗口中增加XilinxFPGAJTAG信息到JTAG链,然后把下载文件转成XX.jbc文件即可。转换步骤如下:点击File/Creat /_ Update/Creat JAM,SVF, or ISC File…弹出图十一所示对话框。

生成xx.jbc文件后的操作步骤与普通的远程下载FPGA的步骤相同,把xx.jbc文件放在FLASH的一个存储区,其余的操作由软件进行控制,具体的操作步骤这里不再赘述。

 

你可能感兴趣的:(user,File,Flash,存储,电信,任务)