本发明专利技术公开了一种FPGA多重远程配置系统及方法,包括远程配置模块,用于接收上位机发来的bit流文件,并发送给FPGA主控模块;FPGA主控模块,用于将bit流文件写入存储器模块;存储器模块,用于存储多个bit流文件并将其写入不同地址,在重配置时FPGA主控模块从指定地址读出相应的bit流文件以实现配置;电源模块,用于为系统供电;时钟模块,用于为FPGA主控模块以及存储器模块提供相应的工作时钟;接口模块,用于在线配置FPGA主控模块,实现对存储器模块读写的控制。方法基于上述系统实现FPGA多重远程配置。本发明专利技术解决了传统SPI接口FLASH配置速度慢的问题,并通过多重配置方式实现了不同工作模式的需求,且大大减少了系统配置的时间,具有很强的实用性、通用性和可移植性。
A FPGA multi remote configuration system and method
【技术实现步骤摘要】
一种FPGA多重远程配置系统及方法
本专利技术属于通信领域,具体涉及FPGA远程配置领域,特别涉及一种FPGA多重远程配置系统及方法。
技术介绍
现代硬件程序设计规模越来越大,功能越来越复杂,当多个应用程序同时在一个硬件平台上实现时,各个程序的资源使用和数据通路可能会冲突,这增加了控制电路设计的复杂程度,给开发人员增加了工作量和开发难度。近些年来FPGA技术得到了飞速发展,其作为可编程资源广泛应用在大型复杂系统设计中。尽管FPGA在资源集成度方面取得了可观的成果,但是在多模式的大型系统设计中,单片FPGA资源远远不能够满足设计需求,有时可能需要多个芯片。然而FPGA价格相对较高,这大大提高了设计成本,而且不易于产品维护和升级,由此出现了FPGA加载技术,但是传统的加载配置采用SPI接口以及FLASH等,配置速度比较慢,不能满足多种工作模式的需求。
技术实现思路
本专利技术的目的在于提供一种具有成本低、配置速度快以及可靠性高等特点的FPGA多重远程配置系统及方法。实现本专利技术目的的技术解决方案为:一种FPGA多重远程配置系统,包括远程配置模块、FPGA主控模块、存储器模块、电源模块、时钟模块以及接口模块;所述远程配置模块,用于接收上位机发来的bit流文件,并将其发送给FPGA主控模块;所述FPGA主控模块,用于接收bit流文件并将其写入存储器模块,并在接收到FPGA重配置指令后指定接收来自存储器模块的某一bit流文件实现重配置;所述存储器模块,用于存储来自FPGA主控模块的多个bit流文件并将其写入不同地址,在重配置时FPGA主控模块从指定地址读出相应的bit流文件以配置FPGA主控模块;所述电源模块,用于为整个系统供电;所述时钟模块,用于为FPGA主控模块以及存储器模块提供相应的工作时钟;所述接口模块,用于在线配置FPGA主控模块,实现对存储器模块读写的控制。基于上述FPGA多重远程配置系统的配置方法,包括以下步骤:步骤1,接口模块在线配置FPGA主控模块,实现对存储器模块读写的控制;步骤2,远程配置模块接收上位机发来的bit流文件,并将其发送给FPGA主控模块;步骤3,FPGA主控模块接收bit流文件并将其写入存储器模块,存储器模块将bit流文件写入不同地址;步骤4,FPGA主控模块在接收到FPGA重配置指令时,根据指定的bit流文件从存储器模块中的对应地址读取bit流文件以配置FPGA主控模块。本专利技术与现有技术相比,其显著优点为:1)通过多重配置,可以将多个程序根据需要分时加载到FPGA中,可以解决可编程资源不足的问题,从而大大降低开发费用,也提高了编程资源的利用率,同时降低了系统设计的复杂性,增加了系统设计的灵活性,便于系统维护和升级;2)通过多重加载技术,用户可以根据需求选择加载不同的bit流文件,从而实现多模式功能;3)相比于常用的以SPIFLASH作为bit流文件的存储器,QSPIFLASH有着更大的存储空间和更快的读写速度,一片QSPIFLASH中可以存放多个Virtex-7系列FPGA的bit流文件,且读写速度成倍增加,大大节约了FPGA系统配置的时间;4)调用ICAPE2核实现多重配置可以使FPGA在不掉电的情况下实现重配置,且当重加载的bit流文件出现问题时,FPGA会选择加载原有的bit流文件,这能保证系统永远处于工作状态,不会因为更新程序的问题导致死机。下面结合附图对本专利技术作进一步详细描述。附图说明图1为本专利技术FPGA多重远程配置系统的结构框图。图2为本专利技术一个实施例中QSPIFLASH实现多重配置硬件电路示意图。图3为本专利技术一个实施例中QSPIFLASH实现多重配置流程图。图4为本专利技术一个实施例中QSPIFLASH状态机指令流程图。图5为本专利技术一个实施例中ICAP核状态机指令流程图。具体实施方式结合图1,本专利技术提出了一种FPGA多重远程配置系统,包括远程配置模块、FPGA主控模块、存储器模块、电源模块、时钟模块以及接口模块;远程配置模块,用于接收上位机发来的bit流文件,并将其发送给FPGA主控模块;FPGA主控模块,用于接收bit流文件并将其写入存储器模块,并在接收到FPGA重配置指令后指定接收来自存储器模块的某一bit流文件实现重配置;存储器模块,用于存储来自FPGA主控模块的多个bit流文件并将其写入不同地址,在重配置时FPGA主控模块从指定地址读出相应的bit流文件以配置FPGA主控模块;电源模块,用于为整个系统供电;时钟模块,用于为FPGA主控模块以及存储器模块提供相应的工作时钟;接口模块,用于在线配置FPGA主控模块,实现对存储器模块读写的控制。进一步地,在其中一个实施例中,结合图3,远程配置模块与上位机之间通过千兆以太网进行通信。进一步地,在其中一个实施例中,结合图3,远程配置模块采用DSP。进一步地,在其中一个实施例中,结合图3,远程配置模块具体通过DSP的EMIF接口将bit流文件发送给FPGA主控模块。进一步地,在其中一个实施例中,存储器模块采用FLASH存储器。进一步地,在其中一个实施例中,结合图3,FLASH存储器采用QSPI接口。进一步地,在其中一个实施例中,FLASH存储器采用QSPIFLASH芯片。进一步地,在其中一个实施例中,接口模块采用JTAG接口。作为一种具体示例,本专利技术的技术方案如下:硬件设计:多重配置的硬件主要包括FPGA板卡和储存配置bit流文件的FLASH芯片。FPGA芯片选择XILINX公司的Virtex-7系列中的XC7VX485T-2FFG1761,这款芯片有专用的内部加载逻辑来实现多重配置。由于这款FPGA芯片的bit文件大小为100Mb左右,所以FLASH芯片选择MICRON公司的QSPIFLASH芯片N25Q256A,它的存储空间为256Mb,足够存放2个bit流文件。具体的FPGA和QSPIFLASH的硬件连接如图2所示。软件设计:软件设计分为两部分,第一部分是编写QSPIFLASH的读、写、擦除状态机程序,将FPGA收到的bit流文件存储到QSPIFLASH中。第二部分是编写FPGA重载配置模块。与SPIFLASH不同的是,QSPIFLASH四线模式共有四根信号线,它们全部可以用做输入输出来传输数据,所以传输同样大小的数据模块时,QSPI四线模式的速度大约是SPI模式的四倍(见下表1),但QSPI四线模式使用也更复杂。除了SPI的读、写、擦除等指令,QSPI在进入四线模式前需要写一条进入4字节地址模式的指令,在结束所有指令后,需要写一条退出4字节地址模式的指令。这样的话,读、写指令所访问的地址必须是4字节。QSPIFLASH的状态机指令流程如图4所示。表1QSPIFLASH和SPIFLASH读、写、擦本文档来自技高网...
【技术保护点】
1.一种FPGA多重远程配置系统,其特征在于,包括远程配置模块、FPGA主控模块、存储器模块、电源模块、时钟模块以及接口模块;/n所述远程配置模块,用于接收上位机发来的bit流文件,并将其发送给FPGA主控模块;/n所述FPGA主控模块,用于接收bit流文件并将其写入存储器模块,并在接收到FPGA重配置指令后指定接收来自存储器模块的某一bit流文件实现重配置;/n所述存储器模块,用于存储来自FPGA主控模块的多个bit流文件并将其写入不同地址,在重配置时FPGA主控模块从指定地址读出相应的bit流文件以配置FPGA主控模块;/n所述电源模块,用于为整个系统供电;/n所述时钟模块,用于为FPGA主控模块以及存储器模块提供相应的工作时钟;/n所述接口模块,用于在线配置FPGA主控模块,实现对存储器模块读写的控制。/n
【技术特征摘要】
1.一种FPGA多重远程配置系统,其特征在于,包括远程配置模块、FPGA主控模块、存储器模块、电源模块、时钟模块以及接口模块;
所述远程配置模块,用于接收上位机发来的bit流文件,并将其发送给FPGA主控模块;
所述FPGA主控模块,用于接收bit流文件并将其写入存储器模块,并在接收到FPGA重配置指令后指定接收来自存储器模块的某一bit流文件实现重配置;
所述存储器模块,用于存储来自FPGA主控模块的多个bit流文件并将其写入不同地址,在重配置时FPGA主控模块从指定地址读出相应的bit流文件以配置FPGA主控模块;
所述电源模块,用于为整个系统供电;
所述时钟模块,用于为FPGA主控模块以及存储器模块提供相应的工作时钟;
所述接口模块,用于在线配置FPGA主控模块,实现对存储器模块读写的控制。
2.根据权利要求1所述的FPGA多重远程配置系统,其特征在于,所述远程配置模块与上位机之间通过千兆以太网进行通信。
3.根据权利要求1所述的FPGA多重远程配置系统,其特征在于,所述远程配置模块采用DSP。
4.根据权利要求1或2所述的FPGA多重远程配置系统,其特征在于,所述远程配置模块具...
【专利技术属性】
技术研发人员:徐杰,雍文韬,杨建超,戴峥,陆星宇,顾红,苏卫民,
申请(专利权)人:南京理工大学,
类型:发明
国别省市:江苏;32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。