一种基于CPU通过JTAG方式远程更新FPGA的装置和方法制造方法及图纸

技术编号:19176632 阅读:54 留言:0更新日期:2018-10-17 00:14
本发明专利技术涉及一种基于CPU通过JTAG方式远程更新FPGA的装置,包括FPGA设备、控制主板及远程终端机,FPGA设备包括相互连接的FPGA和FLASH,控制主板包括CPU、PCIE桥、硬盘和South Bridge,PCIE桥分别与CPU、硬盘和South Bridge连接,远程终端机包括相互连接的上位主机和输入显示器,上位主机通过以太网与CPU通信连接以将更新文件传输至CPU,South Bridge引出GPIO接口,FPGA引出JTAG接口,GPIO接口与JTAG接口相连,使得FPGA与CPU通信连接以接收CPU的更新文件并进行更新。本发明专利技术通过CPU的PCIe接口扩展引出外围PCIe和PCI桥设备,并利用该桥设备的GPIO接口模拟实现FPGA的JTAG时序,如此就可以借助网络接口将更新文件传给申威处理器平台,然后通过JTAG接口将更新文件烧写进FPGA中,进而实现FPGA代码的远程更新。

A device and method for remote updating FPGA based on CPU through JTAG mode

The invention relates to a device for remotely updating FPGA based on CPU through JTAG, including FPGA device, control motherboard and remote terminal. The FPGA device includes interconnected FPGA and FLASH, and the control motherboard includes CPU, PCIE bridge, hard disk and SouthBridge. The PCIE bridge is connected with CPU, hard disk and SouthBridge respectively, and the remote terminal. Including interconnected host and input display, the host communicates with CPU via Ethernet to transfer updated files to CPU, South Bridge to GPIO interface, FPGA to JTAG interface, GPIO interface to JTAG interface, so that the FPGA and CPU communicate to receive and update updated files. The invention extends the peripheral PCIe and PCI bridge devices through the PCIe interface of the CPU, and realizes the JTAG timing of the FPGA by using the GPIO interface of the bridge device, so that the updated files can be transmitted to the Shenwei processor platform by means of the network interface, and then the updated files can be burned and written into the FPGA through the JTAG interface, thereby realizing the far distance of the FPGA code. Process update.

【技术实现步骤摘要】
一种基于CPU通过JTAG方式远程更新FPGA的装置和方法
本专利技术涉及可编辑片上系统配置
,特别是涉及一种基于CPU通过JTAG方式远程更新FPGA的装置及实现方法。
技术介绍
目前,市面上随着FPGA的用量需求越来越大,应用范围越来越广,一般的更新及调试方式已经不能满足客户需求。传统的更新FPGA代码的方式是借助各FPGA厂家的JTAG烧写器连接FPGA的JTAG接口,再借助各FPGA厂家提供的专用烧写软件将所需更新的FPGA逻辑代码烧写进FPGA当中,这样的烧写过程繁琐且依赖于烧写器和专用烧写软件而无法远程更新FPGA程序。基于上述传统烧写FPGA方式,有些FPGA设备已安装在用户的整机内部或者在密闭环境中不便打开设备进行FPGA更新,此时一旦遇到为解决或调试某问题而需要更新FPGA程序时,如果采用传统烧写方式会遇到较大困难且费时费力。因此,用户对FPGA的远程更新需求也日益迫切。而且,相当一部分用户所用FPGA开发的设备结构和设计已定型,而最初设计只预留了FPGA的JTAG接口供外部烧写更新用,因此,FPGA的远程烧写更新只能采用JTAG接口的方式,迫切需要一种采用JTAG接口的方式实现的FPGA的更新方案,以兼容用户的原有方案设计。为此,研究人员提供了以下设计方案:将FPGA和CPU通过多路选择开关(或缓冲器模块)一起与FPGA外接的Flash存储器连接,可以通过CPU操作多路选择开关来控制存储器与FPGA还是与CPU相连;当需要远程更新FPGA程序时,CPU通过选择开关与存储器相连,进而更新存储器中的FPGA烧写文件;更新完成后,CPU通过操作多路选择开关断开CPU与存储器的连接,并将存储器与FPGA连接,CPU在通知FPGA从外接存储器中加载更新后的烧写文件,进而实现FPGA的远程升级更新。但是,这种解决方案需要在CPU和FPGA之间增加额外的多路选择开关和相应电路。这样才能实现在更新FPGA程序时,可借助多路选择开关将CPU与FPGA外接的存储器连接更新程序,在程序更新完成之后,需要控制多路选择开关断开CPU与存储器的连接,而将FPGA与存储器直接相连,最后控制FPGA加载存储器中更新的FPGA程序,因此实现逻辑比较繁琐,在频繁更新FPGA程序时,且多路选择开关的转换实现容易出错,增加了不稳定因素。目前很多用户已定型的FPGA外设卡等设备没有考虑多路选择开关等电路,只保留了更新FPGA所需的JTAG调试接口,因此如果用现有技术则必然导致用户FPGA外设卡的改版,需重新改版来额外增加相应开关电路,进而导致实现成本高且实现的时间周期较长,影响了用户将产品快速推向市场的时间进度。
技术实现思路
本专利技术的目的在于提供一种基于CPU通过JTAG方式远程更新FPGA的装置和方法,基于CPU通过JTAG接口远程更新FPGA逻辑代码,确保在不改动用户定型产品设计的前提下实现FPGA程序的无缝升级更新。为了实现上述目的,本专利技术提供了以下技术方案:本专利技术提供的一种基于CPU通过JTAG方式远程更新FPGA的装置,包括FPGA设备、控制主板及远程终端机,FPGA设备包括相互连接的FPGA和FLASH,控制主板包括CPU、PCIE桥、硬盘和SouthBridge,PCIE桥分别与CPU、硬盘和SouthBridge连接,远程终端机包括相互连接的上位主机和输入显示器,FPGA设备、控制主板及远程终端机分别配置有供电电源,上位主机通过以太网与CPU通信连接以将更新文件传输至CPU,SouthBridge引出GPIO接口,FPGA引出JTAG接口,GPIO接口与JTAG接口相连,使得FPGA与CPU通信连接以接收CPU的更新文件并进行更新。进一步地,CPU操作GPIO接口的控制时序以模拟标准JTAG接口,使得GPIO接口与JTAG接口相连通以传输数据。该装置中,CPU接收需要烧写的更新文件,将更新文件经PCIE桥传输至SouthBridge;CPU控制操作GPIO接口的控制时序形成模拟JTAG接口,SouthBridge将更新文件及控制指令经模拟JTAG接口传输至FPGA;FPGA接收更新文件及控制指令,按控制指令运行更新,并返回反馈数据。该装置中,CPU根据JTAG协议标准控制操作南桥的GPIO接口来模拟出标准JTAG的控制时序输出,然后,先软复位FPGA的TAP控制器接口,TAP复位之后模拟标准JTAG操作GPIO的控制时序,以发出更新文件及控制指令到FPGA及接收FPGA的反馈数据。还提供一种基于CPU通过JTAG方式远程更新FPGA的装置进行远程更新FPGA的方法,包括以下内容:该装置包括FPGA设备、控制主板及远程终端机,FPGA设备包括相互连接的FPGA和FLASH,控制主板包括CPU、PCIE桥、硬盘和SouthBridge,PCIE桥分别与CPU、硬盘和SouthBridge连接,远程终端机包括相互连接的上位主机和输入显示器,FPGA设备、控制主板及远程终端机分别配置有供电电源,上位主机通过以太网与CPU通信连接以将更新文件传输至CPU,SouthBridge引出GPIO接口,FPGA引出JTAG接口,GPIO接口与JTAG接口相连,使得FPGA与CPU通信连接以接收CPU的更新文件并进行更新;该进行远程更新FPGA的方法包括以下步骤:201、配置与FPGA通信接口:通过CPU操作GPIO接口的控制时序以模拟标准JTAG接口,使得CPU与FPGA通信连接;202、下载配置逻辑到FPGA;203、启动配置逻辑进行更新:先把升级程序通过JTAG传送到FPGA,再由配置逻辑把升级程序写入FLASH,完成更新。其中,步骤202的具体内容如下:202.1、获取FPGA的IDCODE:FPGA发出IDCODE指令,CPU接收到FPGA的ID号并验证,若验证通过则执行下一步骤,若验证未通过则终止程序并退出;202.2、载入配置流:首先发送JPROGRAM指令,表示对FPGA进行全配置,再发送CFG_IN指令,表示即将载入配置逻辑;202.3、载入配置逻辑;202.4、一次CRC校验:校验CRC,若校验通过,则表示载入成功,可执行下一步骤;若校验未通过,则表示载入失败,终止程序并退出。步骤203的具体内容如下:203.1、启动载入的配置逻辑:CPU发出JSTART指令给FPGA,在规定的时钟周期后,FPGA加载配置逻辑并运行;203.2、启动载入升级程序:根据FPGA的配置逻辑载入升级程序,具体是FPGA通过JTAG接收升级程序并把升级程序写入FLASH;203.3、二次CRC校验:对写入FLASH的升级程序进行CRC校验,若校验通过则执行下一步骤,若校验未通过则终止程序并退出;203.4、升级成功:上一步骤校验通过表示升级成功,断电后FPGA自动加载升级后的程序。与现有技术相比,本专利技术具有以下优点:本专利技术通过CPU的PCIe接口扩展引出外围PCIe和PCI桥设备,并利用该桥设备的GPIO接口模拟实现FPGA的JTAG时序,如此远程PC等调试设备就可以借助网络接口将所需更新的FPGA文件传给申威处理器平台,然后通过JTAG接口将FPGA文件烧写进FPGA中,进而实现FPGA代码的远程更新;解决了现有F本文档来自技高网
...

【技术保护点】
1.一种基于CPU通过JTAG方式远程更新FPGA的装置,其特征在于,包括FPGA设备、控制主板及远程终端机,所述FPGA设备包括相互连接的FPGA和FLASH,所述控制主板包括CPU、PCIE桥、硬盘和South Bridge,所述PCIE桥分别与CPU、硬盘和South Bridge连接,所述远程终端机包括相互连接的上位主机和输入显示器,所述FPGA设备、控制主板及远程终端机分别配置有供电电源,所述上位主机通过以太网与CPU通信连接以将更新文件传输至CPU,所述South Bridge引出GPIO接口,所述FPGA引出JTAG接口,所述GPIO接口与JTAG接口相连,使得FPGA与CPU通信连接以接收CPU的更新文件并进行更新。

【技术特征摘要】
1.一种基于CPU通过JTAG方式远程更新FPGA的装置,其特征在于,包括FPGA设备、控制主板及远程终端机,所述FPGA设备包括相互连接的FPGA和FLASH,所述控制主板包括CPU、PCIE桥、硬盘和SouthBridge,所述PCIE桥分别与CPU、硬盘和SouthBridge连接,所述远程终端机包括相互连接的上位主机和输入显示器,所述FPGA设备、控制主板及远程终端机分别配置有供电电源,所述上位主机通过以太网与CPU通信连接以将更新文件传输至CPU,所述SouthBridge引出GPIO接口,所述FPGA引出JTAG接口,所述GPIO接口与JTAG接口相连,使得FPGA与CPU通信连接以接收CPU的更新文件并进行更新。2.根据权利要求1所述一种基于CPU通过JTAG方式远程更新FPGA的装置,其特征在于,所述CPU操作GPIO接口的控制时序以模拟标准JTAG接口,使得GPIO接口与JTAG接口相连通以传输数据。3.根据权利要求2所述一种基于CPU通过JTAG方式远程更新FPGA的装置,其特征在于,该装置中,CPU接收需要烧写的更新文件,将更新文件经PCIE桥传输至SouthBridge;CPU控制操作GPIO接口的控制时序形成模拟JTAG接口,SouthBridge将更新文件及控制指令经模拟JTAG接口传输至FPGA;FPGA接收更新文件及控制指令,按控制指令运行更新,并返回反馈数据。4.根据权利要求3所述一种基于CPU通过JTAG方式远程更新FPGA的装置,其特征在于,该装置中,CPU为申威CPU,CPU根据JTAG协议标准控制操作南桥的GPIO接口来模拟出标准JTAG的控制时序输出,然后,先软复位FPGA的TAP控制器接口,TAP复位之后模拟标准JTAG操作GPIO的控制时序,以发出更新文件及控制指令到FPGA及接收FPGA的反馈数据。5.根据权利要求4所述一种基于CPU通过JTAG方式远程更新FPGA的装置,其特征在于,该装置的更新文件的更新流程如下:101、获取FPGA的IDCODE:FPGA发出IDCODE指令,CPU接收到FPGA的ID号并验证,若验证通过则执行下一步骤,若验证未通过则终止程序并退出;102、载入配置流:首先发送JPROGRAM指令,表示对FPGA进行全配置,再发送CFG_IN指令,表示即将载入配置逻辑;103、载入配置逻辑;104、一次CRC校验:校验CRC,若校验通过则执行下一步骤,若校验未通过则终止程序并退出;105、启动载入的配置逻辑:CPU发出JSTART指令给FPGA,在规定的时钟周期后,FPGA加载配置逻辑并运行;106...

【专利技术属性】
技术研发人员:邓林吴东海
申请(专利权)人:成都爱斯顿科技有限公司
类型:发明
国别省市:四川,51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1