CN106569481B - 一种fpga重构装置和方法 - Google Patents
一种fpga重构装置和方法 Download PDFInfo
- Publication number
- CN106569481B CN106569481B CN201610953605.1A CN201610953605A CN106569481B CN 106569481 B CN106569481 B CN 106569481B CN 201610953605 A CN201610953605 A CN 201610953605A CN 106569481 B CN106569481 B CN 106569481B
- Authority
- CN
- China
- Prior art keywords
- fpga
- control unit
- main control
- pin
- tested
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B23/00—Testing or monitoring of control systems or parts thereof
- G05B23/02—Electric testing or monitoring
- G05B23/0205—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
- G05B23/0208—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the configuration of the monitoring system
- G05B23/0213—Modular or universal configuration of the monitoring system, e.g. monitoring system having modules that may be combined to build monitoring program; monitoring system that can be applied to legacy systems; adaptable monitoring system; using different communication protocols
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/24—Pc safety
- G05B2219/24065—Real time diagnostics
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
本发明公开了一种FPGA重构装置和方法,FPGA重构装置包括上位机,主控单元FPGA,被测FPGA,SD卡,上位机、被测FPGA和SD卡分别与主控单元FPGA相连;上位机通过主控单元FPGA将被测FPGA需要的配置文件写入SD卡内;上位机还通过主控单元FPGA将控制程序写入被测FPGA内,被测FPGA根据控制程序向主控单元FPGA发送控制信号,逐一获取配置文件,FPGA重构方法采用了上述FPGA重构装置。本发明提供的FPGA重构装置和方法,解决了FPGA测试过程中重复工作量大问题的同时,减少了电路中器件重新上电启动的次数。
Description
技术领域
本发明涉及电路与系统领域,特别是指一种FPGA重构装置和方法。
背景技术
FPGA(Field-Programmable Gate Array,现场可编程门阵列),它是作为专用集成电路领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。FPGA器件由于具有集成度高,内部逻辑资源丰富,体积小,功耗低,性价比高等特性,被广泛应用于各种电子产品设计,并多承担着各电子系统、模块的主控制器的任务。
目前,为了实现FPGA功能性能测试的覆盖率,通常采用“分治法”对FPGA器件进行测试,即分别针对FPGA的不同逻辑资源编写测试程序,多次独立测试,在测试过程用到了多次重构。通过CPLD(Complex Programmable LogicDevice,复杂可编程逻辑器件)与PROM(Programmable Read-Only Memory,可编程只读存储器)搭建测试电路,将待测FPGA的配置文件存储在PROM中,依据待测FPGA的测试代码个数灵活的控制PROM的数量,由测试控制软件实现对器件的上电和下电,同时更换PROM配置待测FPGA,从而可以在ATE(AutomaticTest Equipment,自动试验设备)上进行FPGA器件的测试。
然而,发明人在研究中发现,在使用这种形式开发和测试新FPGA时,需要多个PROM来存储测试代码,同时需要重新设计电路板更换PROM,重复性的工作量较大;重配置过程,需要重新上电启动,多次上电的过程将导致测试时间较长,且容易使器件损坏。
发明内容
有鉴于此,本发明的目的在于提出一种FPGA重构装置和方法,在解决FPGA测试过程重复工作量大的问题的同时,减少电路中器件重新上电启动的次数。
基于上述目的,本发明提供的FPGA重构装置,包括上位机,主控单元FPGA,被测FPGA,SD卡;所述上位机、所述被测FPGA和所述SD卡分别与所述主控单元FPGA相连;
所述上位机通过所述主控单元FPGA将所述被测FPGA需要的配置文件写入所述SD卡内;
所述上位机还通过所述主控单元FPGA将控制程序写入所述被测FPGA内,所述被测FPGA根据所述控制程序,向所述主控单元FPGA发送控制信号,通过所述主控单元FPGA逐一获取所述SD卡内的配置文件。
在一些可选实施方式中,所述上位机内置重构软件,所述重构软件用于有效的提取和组合压缩所述配置文件。
在一些可选实施方式中,所述SD卡内储存一个链表和所有所述配置文件;所述链表中每一个文件标题对应一个所述配置文件,所述配置文件的标题对应的起始扇区位置为对应的所述配置文件在所述SD卡内的存储起始位置,所述链表中的长度为对应的所述配置文件的数据长度。
在一些可选的实施方式中,所述主控单元FPGA的12个I/O管脚分别与所述被测FPGA的D0-D7管脚、SYC CLK管脚、Start管脚、Done管脚和Error管脚连接;
所述主控单元FPGA通过I/O管脚和所述被测FPGA的D0-D7管脚的连接,向所述被测FPGA传输配置文件;
所述主控单元FPGA与所述被测FPGA通过I/O管脚和SYC CLK管脚的连接,能够相互传递时钟信号;
所述主控单元FPGA与所述被测FPGA通过I/O管脚和Start管脚的连接,能够相互传递开始信号;
所述被测FPGA通过Done管脚和所述主控单元FPGA的I/O管脚的连接,向所述主控单元FPGA传递配置完成信号;
所述被测FPGA通过Error管脚和所述主控单元FPGA的I/O管脚的连接,向所述主控单元FPGA传递错误信号。
在一些可选的实施方式中,还包括监控单元,所述监控单元与所述主控单元FPGA连接,所述监控单元用于监控所述主控单元FPGA的工作状态。
在一些可选的实施方式中,所述监控单元还包括MCU;
所述主控单元FPGA的10个I/O管脚分别与所述MCU的D0-D7管脚、R/W管脚和INT管脚连接;
所述主控单元FPGA通过I/O管脚和所述MCU的D0-D7管脚连接,向所述MCU传输工作状态;
所述MCU通过R/W管脚与所述主控单元FPGA的I/O管脚连接,向所述主控单元FPGA发送读或写的信号;
所述主控单元FPGA通过I/O管脚与所述MCU的INT管脚连接,向所述MCU发送初始化信号。
在一些可选的实施方式中,所述SD卡包括一个链表,所述链表的内容通过所述主控单元FPGA放置在所述MCU的Memory中。
在一些可选的实施方式中,所述上位机还包括第一上位机和第二上位机;所述第一上位机和所述第二上位机分别与所述主控单元FPGA相连;
所述第一上位机内置重构软件,用于有效的提取和组合压缩所述配置文件;
所述第二上位机通过所述主控单元FPGA将控制程序写入所述被测FPGA内,所述被测FPGA根据所述控制程序向所述主控单元FPGA发送控制信号,通过所述主控单元FPGA逐一获取所述SD卡内的配置文件。
在一些可选的实施方式中,所述SD卡还包括第一SD卡和第二SD卡;
所述第一SD卡和所述第二SD卡内存储的内容相同,均储存一个链表和所有所述配置文件;
所述链表中每一个文件标题对应一个所述配置文件,所述文件标题的起始扇区位置为对应的所述配置文件在所述第一SD卡内和所述第二SD卡内的存储起始位置,所述链表中的长度为对应的所述配置文件的数据长度。
基于上述目的,本发明提供的FPGA重构方法,采用上述任一一项所述的FPGA重构装置,包括步骤:
步骤S1:上位机通过主控单元FPGA将配置文件写入SD卡;
步骤S2:上位机将控制程序写入被测FPGA;
步骤S3:被测FPGA向主控单元FPGA发送控制信号;
步骤S4:主控单元FPGA将SD卡内的配置文件逐一写入被测FPGA。
从上面所述可以看出,本发明提供的FPGA重构装置和方法,由主控单元PPGA作为控制芯片,可通过主控单元PPGA多次重复对被测FPGA进行配置;由SD卡存储配置文件,存储容量可达Gbit,被测FPGA的配置文件一般在几百KB到几MB之间,每个被测FPGA的配置文件数量大约有20个,则本发明提出的FPGA重构装置可存储上百个不同的FPGA的配置文件,即使是对不同的FPGA进行测试,本发明的FPGA重构装置也可以在不重复搭建电路的情况下,满足需求,通过主控单元FPGA作为媒介,存储或读写FPGA配置文件,均不需重启系统,进而也就不存在因多次上电重启导致器件损坏的情况。
附图说明
图1为本发明实施例FPGA重构装置示意图;
图2为本发明实施例FPGA重构方法示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。
需要说明的是,本发明实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本发明实施例的限定,后续实施例对此不再一一说明。
图1为本发明实施例FPGA重构装置示意图。
如图1所示,本发明实施例FPGA重构装置包括上位机1,主控单元FPGA2,被测FPGA3,SD卡4;上位机1、被测FPGA 3和SD卡4分别与主控单元FPGA 2相连。
具体地,上位机1与主控单元FPGA 2可采用USB3.0接口连接;主控单元FPGA 2与被测FPGA 3可采用统一的接口连接。USB3.0的最大传输带宽高达5.0Gbps,保证了上位机1与主控单元FPGA 2之间的数据传输速度。
其中,主控单元FPGA 1共有主动串行和主动并行2种工作模式,并预留被动串行和被动并行2中工作模式;预留两个工作模式,为整个装置提供后续开发的条件。
上位机1通过主控单元FPGA 2将被测FPGA 3需要的配置文件写入SD卡4内;通过SD卡4存储配置文件,存储容量可达Gbit,被测FPGA 3的配置文件一般在几百KB到几MB之间,每个被测FPGA 3的配置文件数量大约有20个,则本实施例提出的FPGA重构装置可存储上百个不同的FPGA的配置文件,即使是对不同的FPGA进行测试,本实施例的FPGA重构装置也可以在不重复搭建电路的情况下,满足需求。
另外,SD卡4具有可插拔特性,使本实施例的FPGA重构系统更为灵活,如果数据存储错误,还可以直接擦除SD卡4中的数据内容,重新写入数据,便于本实施例的FPGA重构系统的配置数据的管理。
上位机1还通过主控单元FPGA 2将控制程序写入被测FPGA 3内,该控制程序设置了被测FPGA 3加载配置文件的信息。
其中,被测FPGA3根据控制程序向主控单元FPGA2发送控制信号,向主控单元FPGA2发送Start(开始)信号,并向主控单元FPGA2发送控制信号,主控单元FPGA2根据控制信号,读取并缓存第一个配置文件;并向被测FPGA3发送Clock(时钟)信号,同时发送配置文件数据,且发送的配置文件数据信号在Clock上升沿有效;第一个文件配置完成后,被测FPGA3向主控单元FPGA3发送Completed(完成)信号,完成第一个文件的配置过程。
实际应用时,第一个文件配置完成后,被测FPGA3再向主控单元FPGA2发送控制信号,开始逐一配置其他配置文件;逐一配置文件,使整个配置过程有序可循,不会发生混乱。
每个被测FPGA 3需要多个配置文件对其进行测试,写入被测FPGA 3的控制程序,由被测FPGA 3发送控制信号决定写入配置程序的顺序,保证了整个重构过程有序可循,不会发生混乱。
优选地,上位机1内置重构软件,用于有效提取和组合压缩被测FPGA 3所需的配置文件。
具体地,SD卡4内储存一个如表1所示的链表和所有被测FPGA 3所需的配置文件;链表中每一个文件标题对应一个配置文件,配置文件的标题对应的起始扇区位置为对应的配置文件在SD卡4内的存储起始位置,链表中的长度为对应的配置文件的数据长度。
表1.SD卡内部的链表
进一步地,主控单元FPGA 2的12个I/O管脚分别与被测FPGA 3的D0-D7管脚、SYCCLK管脚、Start管脚、Done管脚和Error管脚连接;
其中,主控单元FPGA 2通过I/O管脚和被测FPGA 3的D0-D7管脚的连接,向被测FPGA 3传输配置文件;
主控单元FPGA 2与被测FPGA 3通过I/O和SYC CLK管脚的连接,能够相互传递时钟信号;
主控单元FPGA 2与被测FPGA 3通过I/O管脚和Start管脚的连接,能够相互传递开始信号;
被测FPGA 3通过Done管脚和所述主控单元FPGA 2的I/O管脚的连接,向主控单元FPGA 2传递配置完成信号;
被测FPGA 3通过Error管脚和主控单元FPGA 2的I/O管脚的连接,向主控单元FPGA2传递错误信号。
上位机1向主控单元FPGA 2内写入代码口令,控制每个I/O管脚的功能,将不同的I/O管脚与被测FPGA 3的管脚连接,实现主控单元FPGA 2与被测FPGA 3之间的功能连接。
实际应用时,本发明实施例提供的FPGA重构装置,还包括监控单元5,监控单元5与主控单元FPGA 2连接,监控单元5用于监控主控单元FPGA2的工作状态。
其中,监控单元5还包括MCU;主控单元FPGA2的10个I/O管脚分别与MCU的D0-D7管脚、R/W管脚和INT管脚连接;
主控单元FPGA 2通过I/O管脚和MCU的D0-D7管脚连接,向MCU传输工作状态;
MCU通过R/W管脚与主控单元FPGA2的I/O管脚连接,向主控单元FPGA 2发送读或写的信号;
主控单元FPGA 2通过I/O管脚与MCU的INT管脚连接,向MCU发送初始化信号。
上位机1向主控单元FPGA 2内写入代码口令,控制每个I/O管脚的功能,将不同的I/O管脚与MCU的管脚连接,实现主控单元FPGA 2与MCU之间的功能连接。
进一步地,监控单元5还包括显示屏,用于直接观察主控单元FPGA 2的工作状态。
实际应用时,MCU初始化后,SD卡内的链表内容通过主控单元FPGA 2放置在MCU的Memory(内存)中,并显示到显示屏上;可以根据需要,快速读取指定位置的文件数据。
其中,上位机1还可以包括第一上位机和第二上位机;第一上位机和第二上位机分别通过USB3.0接口与主控单元FPGA2相连。
具体地,第一上位机内置有重构软件,用于有效的提取和组合压缩配置文件;第一上位机将该配置文件发送到主控单元FPGA2,再控制主控单元FPGA2将该配置文件写入SD卡4;第一上位机的系统为适宜运行重构软件的系统。
优选地,第二上位机通过主控单元FPGA2将控制程序写入被测FPGA3内,被测FPGA3根据控制程序向主控单元FPGA2发送控制信号,向主控单元FPGA2发送Start(开始)信号,并向主控单元FPGA2发送控制信号,主控单元FPGA2根据控制信号,读取并缓存第一个配置文件;并向被测FPGA3发送Clock(时钟)信号,同时发送配置文件数据,且发送的配置文件数据信号在Clock上升沿有效;第一个文件配置完成后,被测FPGA3向主控单元FPGA3发送Completed(完成)信号,完成第一个文件的配置过程。
实际应用时,第一个文件配置完成后,被测FPGA3再向主控单元FPGA2发送控制信号,开始逐一配置其他配置文件;逐一配置文件,使整个配置过程有序可循,不会发生混乱。
进一步地,SD卡4可以包括第一SD卡和第二SD卡;第一SD卡和第二SD卡内存储的内容相同,均储存有上述的链表和所有被测FPGA 3所需的配置文件;第二SD卡作为存储备份,当一个SD卡丢失或损毁时,由另一个SD卡顶替;设置两个SD卡,使FPGA重构装置使用起来更有安全保障。
实际应用时,本实施例提供的FPGA重构装置还包括指示灯6,指示灯6与主控单元FPGA 2相连,用于显示主控单元FPGA2的工作状态。
其中,指示灯6为led灯。
实施例1
在本发明的一个实施例中,所述FPGA重构装置可以包括上位机1,主控单元FPGA2,被测FPGA 3,SD卡4,具体为:
上位机1、被测FPGA 3和SD卡4分别与主控单元FPGA 2相连;
上位机1通过主控单元FPGA 2将被测FPGA 3需要的配置文件写入SD卡4内;
上位机1还通过主控单元FPGA 2将控制程序写入被测FPGA 3内,被测FPGA 3根据控制程序向主控单元FPGA 2发送控制信号,通过主控单元FPGA2逐一获取SD卡14内的配置文件。
由SD卡4存储配置文件,存储容量可达Gbit,被测FPGA 3的配置文件一般在几百KB到几MB之间,每个被测FPGA 3的配置文件数量大约有20个,则本实施例提出的FPGA重构装置可存储上百个不同的FPGA的配置文件,即使是对不同的FPGA进行测试,本实施例的FPGA重构装置也可以在不重复搭建电路的情况下,满足需求。
另外,SD卡4具有可插拔特性,使本实施例的FPGA重构系统更为灵活,如果数据存数错误,还可以直接擦除SD卡4中的数据内容,重新写入数据,便于本实施例的FPGA重构系统的配置数据的管理。
实施例2
在本发明的一个可选的实施例中,所述FPGA重构装置可以包括上位机1,主控单元FPGA 2,被测FPGA 3,SD卡4,监控单元5和指示灯6,具体为:
上位机1、被测FPGA 3和SD卡4分别与主控单元FPGA 2相连;
上位机1通过主控单元FPGA 2将被测FPGA 3需要的配置文件写入SD卡4内;
上位机1还通过主控单元FPGA 2将控制程序写入被测FPGA 3内,被测FPGA 3根据控制程序向主控单元FPGA 2发送控制信号,通过主控单元FPGA2逐一获取SD卡14内的配置文件。
其中,上位机1内置重构软件,重构软件用于有效的提取和组合压缩配置文件。
具体地,SD卡4内储存一个链表和所有配置文件;链表中每一个文件标题对应一个配置文件,配置文件标题的起始扇区位置为对应的配置文件在SD卡4内的存储起始位置,链表中的长度为对应的配置文件的数据长度。
优选地,主控单元FPGA 2的12个I/O管脚分别与被测FPGA 3的D0-D7管脚、SYC CLK管脚、Start管脚、Done管脚和Error管脚连接;
其中,主控单元FPGA 2通过I/O管脚和被测FPGA 3的D0-D7管脚的连接,向被测FPGA 3传输配置文件;
主控单元FPGA 2与被测FPGA 3通过I/O和SYC CLK管脚的连接,能够相互传递时钟信号;
主控单元FPGA 2与被测FPGA 3通过I/O管脚和Start管脚的连接,能够相互传递开始信号;
被测FPGA 3通过Done管脚和所述主控单元FPGA 2的I/O管脚的连接,向主控单元FPGA 2传递配置完成信号;
被测FPGA 3通过Error管脚和主控单元FPGA 2的I/O管脚的连接,向主控单元FPGA2传递错误信号。
进一步地,监控单元5与主控单元FPGA 2连接,监控单元5用于监控主控单元FPGA2的工作状态。
优选地,监控单元5还包括MCU;主控单元FPGA 2的10个I/O管脚分别与MCU的D0-D7管脚、R/W管脚和INT管脚连接;
主控单元FPGA 2通过I/O管脚和MCU的D0-D7管脚连接,向MCU传输工作状态;
MCU通过R/W管脚与主控单元FPGA 2的I/O管脚连接,向主控单元FPGA 2发送读或写的信号;
主控单元FPGA 2通过I/O管脚与MCU的INT管脚连接,向MCU发送初始化信号。
SD卡4包括一个链表,链表的内容通过主控单元FPGA2放置在MCU的Memory中。
实际应用时,上位机1还包括第一上位机和第二上位机;第一上位机和第二上位机分别与主控单元FPGA 2相连;
其中,第一上位机内置有重构软件,用于有效的提取和组合压缩配置文件;
第二上位机通过主控单元FPGA 2将控制程序写入被测FPGA 3内,被测FPGA 3根据控制程序向主控单元FPGA 2发送控制信号,通过主控单元FPGA2逐一获取SD卡4内的配置文件。
优选地,SD卡4还包括第一SD卡和第二SD卡;
具体地,第一SD卡和第二SD卡内存储的内容相同,均储存有一个链表和所有配置文件;
链表中每一个文件标题对应一个配置文件,文件标题的起始扇区位置为对应的配置文件在第一SD卡内和第二SD卡内的存储起始位置,链表中的长度为对应的配置文件的数据长度。
由SD卡4存储配置文件,存储容量可达Gbit,被测FPGA 3的配置文件一般在几百KB到几MB之间,每个被测FPGA 3的配置文件数量大约有20个,则本实施例提出的FPGA重构装置可存储上百个不同的FPGA的配置文件,即使是对不同的FPGA进行测试,本实施例的FPGA重构装置也可以在不重复搭建电路的情况下,满足需求。
另外,SD卡4具有可插拔特性,使本实施例的FPGA重构系统更为灵活,如果数据存数错误,还可以直接擦除SD卡4中的数据内容,重新写入数据,便于本实施例的FPGA重构系统的配置数据的管理。
并且,整个配置过程中,由被测FPGA 3发送控制信号决定写入配置程序的顺序,保证了整个重构过程有序可循,不会发生混乱。
同时,分别设置有存储内容相同的第一SD卡和第二SD卡,第二SD卡作为存储备份,当一个SD卡丢失或损毁时,由另一个SD卡顶替;设置两个SD卡,使FPGA重构装置使用起来更有安全保障。
图2为本发明实施例的FPGA重构方法示意图。
如图2所示,本发明实施例的FPGA重构方法,包括:
步骤S1,上位机通过主控单元FPGA将配置文件写入SD卡;
具体地,步骤S1中的上位机为第一上位机;
进一步地,上位机通过主控单元FPGA将配置文件分别写入2个SD卡中,其中一个作为存储备份。
步骤S2,上位机将控制程序写入被测FPGA;
具体地,步骤S2中的上位机为第二上位机;
进一步地,控制程序设置了被测FPGA加载配置文件的信息。
步骤S3:被测FPGA向主控单元FPGA发送控制信号;
具体地,被测FPGA向主控单元FPGA 23发送Start(开始)信号,并向主控单元FPGA23发送控制信号。
步骤S4:主控单元FPGA将SD卡内的配置文件逐一写入被测FPGA;
具体地,主控单元FPGA根据控制信号,读取并缓存第一个配置文件;并向被测FPGA发送Clock(时钟)信号,同时发送配置文件数据,且发送的配置文件数据信号在Clock上升沿有效;第一个文件配置完成后,被测FPGA向主控单元FPGA发送Completed(完成)信号,完成第一个文件的配置过程。
实施例3
在本发明的一个较佳的实施例中,所述FPGA重构方法可以包括:
上位机通过主控单元FPGA将配置文件写入SD卡;
其中,该步骤的上位机为第一上位机;
具体地,上位机通过主控单元FPGA将配置文件分别写入2个SD卡中。
上位机将控制程序写入被测FPGA;
其中,该步骤中的上位机为第二上位机;
具体地,所述控制程序设置了被测FPGA加载配置文件的信息;
被测FPGA向主控单元FPGA发送控制信号;
主控单元FPGA将SD卡内的配置文件逐一写入被测FPGA。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本发明的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本发明的不同方面的许多其它变化,为了简明它们没有在细节中提供。
另外,为简化说明和讨论,并且为了不会使本发明难以理解,在所提供的附图中可以示出或可以不示出与集成电路(IC)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本发明难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本发明的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本发明的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本发明。因此,这些描述应被认为是说明性的而不是限制性的。
尽管已经结合了本发明的具体实施例对本发明进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态RAM(DRAM))可以使用所讨论的实施例。
本发明的实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本发明的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种FPGA重构装置,其特征在于,包括上位机,主控单元FPGA,被测FPGA,SD卡;所述上位机、所述被测FPGA和所述SD卡分别与所述主控单元FPGA相连;
所述上位机通过所述主控单元FPGA将所述被测FPGA需要的配置文件写入所述SD卡内;
所述上位机还通过所述主控单元FPGA将控制程序写入所述被测FPGA内,所述控制程序设置了所述被测FPGA加载所述配置文件的信息;
所述被测FPGA根据所述控制程序向所述主控单元FPGA发送控制信号,向所述主控单元FPGA发送开始信号,并向所述主控单元FPGA发送所述控制信号,所述主控单元FPGA根据所述控制信号,读取并缓存第一个配置文件;并向所述被测FPGA发送Clock信号,同时发送配置文件数据,且发送的配置文件数据信号在Clock上升沿有效;所述第一个文件配置完成后,所述被测FPGA向所述主控单元FPGA发送完成信号,完成第一个文件的配置过程;
按照上述过程,所述被测FPGA通过所述主控单元FPGA按序逐一获取所述SD卡内的配置文件。
2.根据权利要求1所述的FPGA重构装置,其特征在于,所述上位机内置重构软件,所述重构软件用于有效的提取和组合压缩所述配置文件。
3.根据权利要求2所述的FPGA重构装置,其特征在于,所述SD卡内储存一个链表和所有所述配置文件;所述链表中每一个文件标题对应一个所述配置文件,所述配置文件的标题对应的起始扇区位置为对应的所述配置文件在所述SD卡内的存储起始位置,所述链表中的长度为对应的所述配置文件的数据长度。
4.根据权利要求1所述的FPGA重构装置,其特征在于,
所述主控单元FPGA的12个I/O管脚分别与所述被测FPGA的D0-D7管脚、SYC CLK管脚、Start管脚、Done管脚和Error管脚连接;
所述主控单元FPGA通过I/O管脚和所述被测FPGA的D0-D7管脚的连接,向所述被测FPGA传输配置文件;
所述主控单元FPGA与所述被测FPGA通过I/O管脚和SYC CLK管脚的连接,能够相互传递时钟信号;
所述主控单元FPGA与所述被测FPGA通过I/O管脚和Start管脚的连接,能够相互传递开始信号;
所述被测FPGA通过Done管脚和所述主控单元FPGA的I/O管脚的连接,向所述主控单元FPGA传递配置完成信号;
所述被测FPGA通过Error管脚和所述主控单元FPGA的I/O管脚的连接,向所述主控单元FPGA传递错误信号。
5.根据权利要求4所述的FPGA重构装置,其特征在于,其特征在于,还包括监控单元,所述监控单元与所述主控单元FPGA连接,所述监控单元用于监控所述主控单元FPGA的工作状态。
6.根据权利要求5所述的FPGA重构装置,其特征在于,所述监控单元还包括MCU;所述主控单元FPGA的10个I/O管脚分别与所述MCU的D0-D7管脚、R/W管脚和INT管脚连接;
所述主控单元FPGA通过I/O管脚和所述MCU的D0-D7管脚连接,向所述MCU传输工作状态;
所述MCU通过R/W管脚与所述主控单元FPGA的I/O管脚连接,向所述主控单元FPGA发送读或写的信号;
所述主控单元FPGA通过I/O管脚与所述MCU的INT管脚连接,向所述MCU发送初始化信号。
7.根据权利要求6所述的FPGA重构装置,所述SD卡包括一个链表,所述链表的内容通过所述主控单元FPGA放置在所述MCU的Memory中。
8.根据权利要求1或6所述的FPGA重构装置,其特征在于,所述上位机还包括第一上位机和第二上位机;所述第一上位机和所述第二上位机分别与所述主控单元FPGA相连;
所述第一上位机内置有重构软件,用于有效的提取和组合压缩所述配置文件;
所述第二上位机通过所述主控单元FPGA将控制程序写入所述被测FPGA内,所述被测FPGA根据所述控制程序向所述主控单元FPGA发送控制信号,通过所述主控单元FPGA逐一获取所述SD卡内的配置文件。
9.根据权利要求1或6所述的FPGA重构装置,其特征在于,所述SD卡还包括第一SD卡和第二SD卡;
所述第一SD卡和所述第二SD卡内存储的内容相同,均储存有一个链表和所有所述配置文件;
所述链表中每一个文件标题对应一个所述配置文件,所述文件标题的起始扇区位置为对应的所述配置文件在所述第一SD卡内和所述第二SD卡内的存储起始位置,所述链表中的长度为对应的所述配置文件的数据长度。
10.一种FPGA重构方法,其特征在于,采用权利要求1至9中任意一项所述的FPGA重构装置,包括步骤:
上位机通过主控单元FPGA将配置文件写入SD卡;
上位机将控制程序写入被测FPGA;
被测FPGA向主控单元FPGA发送控制信号;
主控单元FPGA将SD卡内的配置文件逐一写入被测FPGA。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610953605.1A CN106569481B (zh) | 2016-11-03 | 2016-11-03 | 一种fpga重构装置和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610953605.1A CN106569481B (zh) | 2016-11-03 | 2016-11-03 | 一种fpga重构装置和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106569481A CN106569481A (zh) | 2017-04-19 |
CN106569481B true CN106569481B (zh) | 2019-03-26 |
Family
ID=58535147
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610953605.1A Active CN106569481B (zh) | 2016-11-03 | 2016-11-03 | 一种fpga重构装置和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106569481B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114816880A (zh) * | 2018-05-24 | 2022-07-29 | 上海微小卫星工程中心 | 可重构fpga软件的验证测试方法 |
US10976361B2 (en) * | 2018-12-20 | 2021-04-13 | Advantest Corporation | Automated test equipment (ATE) support framework for solid state device (SSD) odd sector sizes and protection modes |
US11137910B2 (en) | 2019-03-04 | 2021-10-05 | Advantest Corporation | Fast address to sector number/offset translation to support odd sector size testing |
US11237202B2 (en) | 2019-03-12 | 2022-02-01 | Advantest Corporation | Non-standard sector size system support for SSD testing |
US10884847B1 (en) | 2019-08-20 | 2021-01-05 | Advantest Corporation | Fast parallel CRC determination to support SSD testing |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101673101A (zh) * | 2009-09-27 | 2010-03-17 | 电子科技大学 | 一种在线编程的fpga可重构装置 |
CN102636744A (zh) * | 2012-04-24 | 2012-08-15 | 中国科学院空间科学与应用研究中心 | 一种检测fpga单粒子效应与其时序特性关系的装置及方法 |
CN102708075A (zh) * | 2012-05-15 | 2012-10-03 | 山东大学 | 一种sd卡硬件控制装置及控制方法 |
CN103064006A (zh) * | 2012-12-26 | 2013-04-24 | 中国科学院微电子研究所 | 集成电路的测试装置 |
CN104504975A (zh) * | 2014-12-29 | 2015-04-08 | 清华大学 | 基于现场可编程门阵列的便携式综合电子实验平台 |
CN104570846A (zh) * | 2014-12-04 | 2015-04-29 | 中国航空工业集团公司第六三一研究所 | Fpga重配置控制器及其控制方法 |
CN204989875U (zh) * | 2015-07-24 | 2016-01-20 | 山东女子学院 | 一种基于fpga的可重构测试仪器 |
CN106055350A (zh) * | 2016-05-19 | 2016-10-26 | 北京金山安全软件有限公司 | 配置文件的升级处理方法以及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10261813B2 (en) * | 2013-09-25 | 2019-04-16 | Arm Limited | Data processing system for dispatching tasks from a plurality of applications to a shared resource provided by an accelerator |
-
2016
- 2016-11-03 CN CN201610953605.1A patent/CN106569481B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101673101A (zh) * | 2009-09-27 | 2010-03-17 | 电子科技大学 | 一种在线编程的fpga可重构装置 |
CN102636744A (zh) * | 2012-04-24 | 2012-08-15 | 中国科学院空间科学与应用研究中心 | 一种检测fpga单粒子效应与其时序特性关系的装置及方法 |
CN102708075A (zh) * | 2012-05-15 | 2012-10-03 | 山东大学 | 一种sd卡硬件控制装置及控制方法 |
CN103064006A (zh) * | 2012-12-26 | 2013-04-24 | 中国科学院微电子研究所 | 集成电路的测试装置 |
CN104570846A (zh) * | 2014-12-04 | 2015-04-29 | 中国航空工业集团公司第六三一研究所 | Fpga重配置控制器及其控制方法 |
CN104504975A (zh) * | 2014-12-29 | 2015-04-08 | 清华大学 | 基于现场可编程门阵列的便携式综合电子实验平台 |
CN204989875U (zh) * | 2015-07-24 | 2016-01-20 | 山东女子学院 | 一种基于fpga的可重构测试仪器 |
CN106055350A (zh) * | 2016-05-19 | 2016-10-26 | 北京金山安全软件有限公司 | 配置文件的升级处理方法以及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN106569481A (zh) | 2017-04-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106569481B (zh) | 一种fpga重构装置和方法 | |
US10976361B2 (en) | Automated test equipment (ATE) support framework for solid state device (SSD) odd sector sizes and protection modes | |
US7873885B1 (en) | SSD test systems and methods | |
CN105573800B (zh) | 一种基于zynq的单板或多板系统及在线更新方法 | |
CN101438253A (zh) | 写入和配置闪速存储器 | |
US9442834B2 (en) | Data management method, memory controller and memory storage device | |
CN207115097U (zh) | 一种fpga异构加速卡 | |
CN102306127B (zh) | 一种ddriii内存识别和初始化方法 | |
CN103513994A (zh) | 一种通过pcie 进行fpga 在线升级的方法和系统 | |
CN117012258B (zh) | 一种存储芯片状态数据的分析装置、方法及介质 | |
CN109690504A (zh) | 混合式存储器驱动器、计算机系统及用于操作多重模式混合式驱动器的相关方法 | |
CN203260029U (zh) | 基于fpga的系统芯片原型验证调试装置 | |
CN103645731A (zh) | 一种车辆数据实时采集和存储系统 | |
US20150026530A1 (en) | Controller based memory evaluation | |
CN109656756B (zh) | 多核cpu板卡调试方法及装置、移动存储介质 | |
CN104199756A (zh) | 一种fpga多重自动配置装置及其方法 | |
CN110058809B (zh) | 存储装置及其调试系统 | |
US7814377B2 (en) | Non-volatile memory system with self test capability | |
CN108877868A (zh) | 并行芯片测试装置及测试方法 | |
CN101957419A (zh) | 贴装内存卡连接器测试装置 | |
CN208907999U (zh) | 一种新型Raid扣卡 | |
CN104102456A (zh) | 存储器装置机器操作方法 | |
CN103593255A (zh) | 数据管理方法、记忆存储存储器与记忆存储控制器 | |
CN103778968A (zh) | 结合多张快闪记忆卡的固态硬盘的检测装置及其方法 | |
CN113204456A (zh) | 一种服务器vpp接口的测试方法、治具、装置及设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |