一种FPGA芯片在线更新配置电路及方法技术

技术编号:27275927 阅读:51 留言:0更新日期:2021-02-06 11:42
本发明专利技术提供了一种FPGA芯片在线更新配置电路及方法,该FPGA配置电路包括用于实现具体电路功能的FPGA模块、用于接收上位机的指令并且控制FPGA配置电路的各个模块的控制器模块、用于存储上述FPGA模块的配置程序以及配合上述控制器模块配置上述FPGA模块的FLASH模块、以及用于控制上述FPGA模块配置时钟通断的缓冲器模块。当开始更新时,控制器模块控制缓冲器模块停止向FPGA模块提供配置时钟,并向FLASH模块写入新的配置程序,然后控制器模块控制FPGA模块进行清零,并控制缓冲器模块恢复向FPGA模块提供配置时钟。向FPGA模块提供配置时钟。向FPGA模块提供配置时钟。

【技术实现步骤摘要】
一种FPGA芯片在线更新配置电路及方法


[0001]本专利技术涉及芯片
,尤其涉及一种FPGA芯片在线更新配置电路及方法。

技术介绍

[0002]现代电子产品整体向小型化、易维护、易操作及高可靠性等方向发展,因此对于电路设计者来说,在电路的可靠性、简捷性、易升级、易维护等方面提出了更高的要求。FPGA(现场可编程门阵列)以其卓越的功能和灵活性在现代电子电路中得到了越来越广泛的应用。
[0003]FPGA本身是一种空白的芯片,需要将程序配置写入才能够实现具体功能。传统PFGA配置方式已经有了非常成熟的方案,总结基本属于如下三种:
[0004](1)、通过传统的专用JTAG下载线缆来进行程序更新;
[0005](2)、FPGA采用主(串/并)配置模式,通过读取非易失性存储器来配置加载程序;
[0006](3)、FPGA采用从(串/并)配置模式,通过外部处理器来配置加载程序;
[0007]上述方法的优缺点如下所示:
[0008]方式(1)
[0009]优点:1、可直接对FPGA进行编程,而不需要烧录FLASH;
[0010]2、可通过仿真观察FPGA内部情况;
[0011]3、外围电路简单;
[0012]缺点:1、需要专用的JTAG下载电缆;
[0013]2、需要搭载FPGA的电路板外露,或者至少电路板上的JTAG接口外露;
[0014]3、需要专业的开发软件才能对FPGA进行编程;
[0015]4、断电后FPGA会清空,重新上电后需要再次编程;
[0016]5、不能实现在线升级;
[0017]方式(2)
[0018]优点:1、上电自动从非易失性存储区中读取配置程序;
[0019]2、当不需要在线升级时,外围电路相对简单;
[0020]3、可实现在线升级;
[0021]缺点:1、当不具备在线升级功能时,更新FPGA程序同样需要用到JTAG下载线;
[0022]2、当需要具备在线升级功能时,需外挂处理器,电路相对复杂;
[0023]3、当需要具备在线升级功能时,外挂处理器软件程序较复杂;
[0024]方式(3)
[0025]优点:1、上电后由处理器来完成对FPGA的配置;
[0026]2、方便重新配置FPGA;
[0027]3、可实现在线升级;
[0028]缺点:1、需要外挂处理器,电路相对复杂;
[0029]2、需要较高性能的处理器及较大的存储空间;
[0030]3、外挂处理器软件程序较复杂;
[0031]在实际应用中,难免需要更新FPGA程序来进行性能优化、添加功能、修复BUG等,通过拆解机身的方式来进行FPGA程序的更新是不可能也不现实的,所以需要一种能够提供在线升级的电路,然而传统的FPGA在线升级配置电路(如上所述)总是存在着一些不足之处,所以设计一种简捷、高效、可靠的配置电路以满足现代产品的小型化、易维护、易操作等特性就显得尤为重要。

技术实现思路

[0032]对于现有技术所存在的不足,本专利技术提供了一种FPGA配置电路,包括:
[0033]FPGA模块,用于被配置以实现具体电路功能,
[0034]控制器模块,用于接收上位机的指令,并控制FPGA配置电路的各模块,该控制器模块还包括内存模块,
[0035]FLASH模块,用于存储FPGA模块的配置程序以及配合控制器模块配置FPGA模块,
[0036]缓冲器模块,用于控制FPGA模块的配置时钟的通断,
[0037]其中,控制器模块连接到所述FLASH模块,并且FLASH模块连接到FPGA模块,FPGA模块使用从动模式,
[0038]控制器模块的第一信号端连接到FPGA模块的复位端,
[0039]控制器模块的第二信号端连接到缓冲器的使能端,控制器模块的时钟信号输出端连接到缓冲器的时钟输入端,并且缓冲器模块连接到FPGA模块并为FPGA模块提供所述配置时钟。
[0040]优选地,控制器模块与FLASH模块使用SPI总线进行通信。
[0041]优选地,缓冲器模块连接有上拉电阻,上拉电阻使得缓冲器模块在默认情况下处于关闭状态。
[0042]优选地,上位机包括PC、SoC系统、移动终端以及虚拟终端。
[0043]优选地,控制器模块具有无线通信模块,能够与上位机进行无线通信。
[0044]优选地,控制器模块具有有线通信模块,能够与上位机进行有线通信。
[0045]本专利技术还提供了一种用于上述FPGA配置电路的在线更新方法,包括以下步骤:
[0046]S1:上位机向控制器模块发送更新FPGA模块的配置命令以及配置程序,控制器模块接收到配置命令后,将接收到的全部或者部分的配置程序缓存在内存模块中;
[0047]S2:控制器模块向缓冲器模块发送控制信号,以关闭缓冲器模块的输出通道,来隔断FPGA模块的配置时钟;
[0048]S3:控制器模块将缓存在内存模块中的配置程序写入FLASH模块;
[0049]S4:控制器模块复位FPGA模块,清空FPGA模块的内容;
[0050]S5:控制器模块向缓冲器模块发送控制信号,以开启缓冲器模块的输出通道。
[0051]优选地,在上述步骤S3中,当所述内存模块不足以缓存全部所述配置程序时,所述配置程序分多次缓存在所述内存模块中,并分多次写入所述FLASH模块中。
[0052]优选地,在所述步骤S5之后还包括:
[0053]S6:控制器模块对FLASH模块进行读数据操作,以完成FPGA模块的配置更新。
[0054]优选地,上述在线更新方法还包括:写入到FLASH模块中的更新后的配置程序通过
FLASH模块输出到FPGA模块,并配合经过缓冲器模块的时钟输出信号作为FPGA模块的配置时钟信号而实现了对FPGA模块的配置更新。
[0055]本专利技术还提供了一种计算机可读存储介质,该计算机可读存储介质存储有可执行计算机程序,所述计算机程序运行时可实现上述在线更新方法。
[0056]本专利技术所提供的技术方案具有以下有益效果:
[0057](1)节省了系统成本,只需要一个普通性能的MCU,一片SPI FLASH和一个缓冲器;
[0058](2)降低了电路复杂度,电路简捷、连接关系清晰;
[0059](3)极大的压缩了电路板面积,便于设备的小型化;
[0060](4)降低了处理器软件的复杂度;
[0061](5)增加了稳定性及可靠性,省去了一些不必要的中间环节;
[0062](6)提高了系统的可操作性和可维护性,无需打开机身,可随时更新配置;
[0063]本专利技术通过使用SPI FLASH模块和一个缓冲器模块极大的简化了电路设计及软件开发难度,这两个模块的配合使用使得该配置方案不再需要高性能的处理器及大容量的存本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种FPGA配置电路,其特征在于,包括:FPGA模块,用于被配置以实现具体电路功能;控制器模块,用于接收上位机的指令,并控制所述FPGA配置电路的各模块,所述控制器模块还包括内存模块;FLASH模块,用于存储所述FPGA模块的配置程序以及配合所述控制器模块配置所述FPGA模块;缓冲器模块,用于控制所述FPGA模块的配置时钟的通断;其中,所述控制器模块连接到所述FLASH模块,并且所述FLASH模块连接到所述FPGA模块,所述FPGA模块使用从动模式;所述控制器模块的第一信号端连接到所述FPGA模块的复位端;所述控制器模块的第二信号端连接到所述缓冲器的使能端,所述控制器模块的时钟信号输出端连接到所述缓冲器的时钟输入端,并且所述缓冲器模块连接到所述FPGA模块并为FPGA模块提供所述配置时钟。2.根据权利要求1所述的FPGA配置电路,其特征在于,所述控制器模块与所述FLASH模块使用SPI总线进行通信。3.根据权利要求1所述的FPGA配置电路,其特征在于,所述缓冲器模块连接有上拉电阻,所述上拉电阻使得所述缓冲器模块在默认情况下处于关闭状态。4.根据权利要求1-3中任一项所述的FPGA配置电路,其特征在于,所述上位机包括PC、SoC系统、移动终端以及虚拟终端。5.根据权利要求4所述的FPGA配置电路,其特征在于,所述控制器模块具有无线通信模块,能够与所述上位机进行无线通信;或者所述控制器模块具有有线通信模块,能够与所述上位机进行有线通信。6.一种FPGA配置电路的在线更新方法,其特征在于,包括以下步骤:S1:上位机向控制器模块发送更新FPGA模块的配置...

【专利技术属性】
技术研发人员:郑吉华
申请(专利权)人:卓曜北京科技有限公司
类型:发明
国别省市:

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

1