CN106843983A - 远程升级现场可编程门阵列的系统及方法 - Google Patents
远程升级现场可编程门阵列的系统及方法 Download PDFInfo
- Publication number
- CN106843983A CN106843983A CN201710071858.0A CN201710071858A CN106843983A CN 106843983 A CN106843983 A CN 106843983A CN 201710071858 A CN201710071858 A CN 201710071858A CN 106843983 A CN106843983 A CN 106843983A
- Authority
- CN
- China
- Prior art keywords
- cpld
- data
- fpga
- flash memory
- image file
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Logic Circuits (AREA)
Abstract
本发明提出了远程升级现场可编程门阵列的系统及方法,系统包括:现场可编程门阵列器件FPGA、中央处理器CPU、复杂可编程逻辑器件CPLD及闪存;CPLD分别与CPU、FPGA和闪存通过对应的接口电性连接;CPLD模拟闪存的数据写操作时序,将待升级镜像文件写入所述闪存;模拟闪存的数据读操作时序,读取所述闪存中存储的镜像文件至CPLD中;模拟FPGA的被动加载配置接口时序,将CPLD中的镜像文件发送至FPGA。本发明提高了FPGA芯片配置的成功率,缩短了配置的时间,减少了对CPU资源的占用。
Description
技术领域
本发明属于通信技术领域,具体涉及远程升级现场可编程门阵列的系统及方法。
背景技术
很多通信设备都会使用FPGA芯片进行高速接口的设计,用于实现相关接口协议和数据转发等功能。那么如何对FPGA进行镜像文件的远程更新,对于整个设备就显得尤为重要。
目前,FPGA镜像文件的远程更新主要采用CPU模拟FPGA芯片的被动式加载方式。采用这种远程更新方式不仅会占用过多的CPU相关进程,而且还会因为CPU的GPIO管脚模拟被动加载时序出现误差,导致FPGA镜像文件被动加载不成功的情况。采用CPU模拟被动加载接口时序时,时钟频率都比较低,如果FPGA芯片的镜像文件较大,就会使得加载过程非常缓慢。如果采用CPU直接模拟FPGA芯片的被动加载接口时序,每次上电后,CPU都需要消耗相应的进程对FPGA芯片进行镜像更新。
发明内容
针对现有技术中的缺陷,本发明提出了远程升级现场可编程门阵列的系统及方法,利用CPLD模拟FPGA芯片的被动加载接口时序,稳定性高,大大提高了对FPGA芯片配置的成功率;输出的时钟频率较高,减少了对FPGA芯片进行配置的时间,减少了对CPU资源的占用。
具体的,本发明提出了一种远程升级现场可编程门阵列的系统,包括:
一种远程升级现场可编程门阵列的系统,其特征在于,该系统包括:现场可编程门阵列器件FPGA、中央处理器CPU、复杂可编程逻辑器件CPLD及闪存;
所述CPLD分别与所述CPU、所述FPGA和所述闪存通过对应的接口电性连接;
所述闪存,用于存储所述FPGA的镜像文件;
所述CPU,用于接收远端发送过来的所述FPGA的待升级镜像文件,并将所述待升级镜像文件发送至所述CPLD;
所述CPLD,用于模拟所述闪存的数据写操作时序,将所述待升级镜像文件写入所述闪存;还用于模拟所述闪存的数据读操作时序,读取所述闪存中存储的镜像文件至所述CPLD中;还用于模拟所述FPGA的被动加载配置接口时序,将所述CPLD中的镜像文件发送至所述FPGA,还用于各种不同数据类型转换。
进一步地,所述CPLD与所述CPU之间的电性连接包括通过SPI、I2C、UART和PCI总线来进行的连接。
进一步地,所述数据类型转换包括串行并行转换、数据位宽转换。
本发明还提出了一种现场可编程门阵列升级的方法,该方法包括:
CPLD接收CPU发送过来的FPGA的镜像文件;
所述CPLD将接收到所述FPGA的镜像文件数据转化为闪存接口所需的相关数据;
所述CPLD模拟所述闪存的数据写操作时序,将所述相关数据写入所述闪存。
进一步地,“CPLD接收CPU发送过来的FPGA的镜像文件”具体包括:
所述CPLD在时钟信号的上升沿处,对数据信号进行采样,实现对镜像文件的接收。
进一步地,“将所述相关数据写入所述闪存”具体包括:
所述CPLD每收到一次数据,就启动一次数据写入操作,从闪存的0地址开始写入;
在写入镜像数据前,依次拉低所述闪存的使能信号与写使能信号,以将所述数据赋值给数据信号;
待保持100ns的时长后,拉高使能信号与写使能信号,以完成一段镜像数据的写入。
进一步地,在“所述CPLD模拟所述闪存的数据写操作时序,将所述相关数据写入所述闪存”之后,还包括:
镜像数据效验;
镜像数据效验具体包括:
所述CPU将通过CPLD回读闪存得到的镜像文件与远端发送的镜像文进行比对效验;
当效验不一致时,CPU会发起重写闪存的请求。
本发明还提出了一种现场可编程门阵列加载的方法,该方法包括:
一种现场可编程门阵列加载的方法,其特征在于,该方法包括:
CPLD接收加载请求指令;
所述CPLD模拟闪存的数据读操作时序,读取所述闪存中的镜像文件数据;
所述CPLD将读取到的镜像文件数据转化为FPGA接口所需的相关数据;
所述CPLD模拟所述FPGA的被动加载配置接口时序,将所述相关数据发送至所述FPGA。
进一步地,所述CPLD模拟所述FPGA的被动加载配置接口时序的流程具体包括:
所述CPLD拉低配置信号至少2us,对所述FPGA进行被动加载;
当所述配置信号被拉高后,等待状态信号拉高,当所述状态信号被拉高时进行数据的加载;
所述CPLD控制时钟信号的频率,发送时钟信号和数据,将所述数据通过数据信号端口传送至所述FPGA;
所述CPLD检测配置完成信号,当检测到所述配置完成信号被拉高后,停止数据的发送;
当检测到所述配置完成信号被拉高后,继续发送超过100个周期的时钟信号,使得FPGA芯片完成初始化。
进一步地,所述加载请求指令包括:CPU通过GPIO接口发送给CPLD的加载请求指令,以及CPLD上电时,电源模块发送给所述CPLD的加载请求指令。
采用本发明的技术方案,与已有的公知技术相比,具有如下有益效果:
(1)利用CPLD模拟FPGA芯片的被动加载接口时序,稳定性高,大大提高了对FPGA芯片配置的成功率。
(2)输出的时钟频率较高,减少了对FPGA芯片进行配置的时间。
(3)减少了对CPU资源的占用。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本发明实施例提出的远程升级现场可编程门阵列的系统示意图;
图2为本发明实施例提出的现场可编程门阵列升级的方法流程示意图;
图3为本发明实施例提出的现场可编程门阵列加载的方法流程示意图;
图4为本发明具体实施例中CPLD模拟FPGA的被动加载配置接口时序的连接关系图。
主要元件符号说明:
100、FPGA;200、CPU;300、CPLD;400、闪存;501、nCONFIG配置信号;502、nSTAUS状态信号;503、DCLK时钟信号;504、DATA数据信号;505、CONF_DONE配置完成信号。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和出示的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,远程升级现场可编程门阵列的系统包括:FPGA(Field-ProgrammableGate Array,现场可编程门阵列)100、CPU 200、CPLD(Complex Programmable LogicDevice,复杂可编程逻辑器件)300和闪存400。
CPLD 300分别与CPU 200、FPGA 100和闪存400通过对应的接口实现电性连接;
CPLD 300与CPU 200之间可以通过SPI、I2C、UART或PCI接口连接,优选SPI接口连接。
闪存400,用于FPGA 100所需的镜像文件。
闪存400可以是常见Flash芯片,例如可以包括Nand Flash以及Nor Flash,在一个优选的实施例中,可以选择Nor Flash。
CPU 200,用于接收远端发送过来的FPGA 100的待升级镜像文件,并在将所述待升级镜像文件发送至CPLD 300;
CPLD 300,用于模拟闪存400的数据写操作时序,将所述待升级镜像文件写入闪存400;还用于模拟闪存400的数据读操作时序,读取闪存400中存储的镜像文件至CPLD 300中;还用于模拟FPGA 100的被动加载配置接口时序,将CPLD 300中的镜像文件发送至FPGA100,还用于各种不同数据类型转换。
现场可编程门阵列升级的方法用于升级更新内存400中的镜像文件。如图2所示,该方法包括如下步骤:
S101:CPLD接收CPU发送的FPGA的镜像文件;
CPU 200可以通过SPI、I2C、UART、PCI等接口,实现CPU 200与CPLD300间的通信。在本实施例中优选SPI接口通信。
CPU 200启动响应后,将FPGA 100镜像的数据,按照SPI接口时序,发送给CPLD300。CPLD 300作为Slave模块,进行串行数据的接收。具体操作流程,如下所示:
CPU 200依次使能片选信号,使能SPI接口,触发时钟信号,开始进行进行数据传送。
CPLD 300在时钟信号的上升沿处,对MOSI(master output slave input)信号进行采样,实现对镜像数据的接收。
S102:所述CPLD将接收到所述FPGA的镜像文件数据转化为闪存接口所需的相关数据;
在本实施例中,以一个具体的例子来进行说明,例如闪存400采用数据位宽为16bits的Nor Flash芯片。SPI接口的数据位宽为1bit,那么需要将SPI接口收到的串行数据,转换成16bits的并行数据。具体需要转换的数据位宽,根据Flash芯片而定。详细流程如下所示:
通过SPI接口接收到1bits数据后,将该数据放入移位寄存器中。
完成16次移位后,即接收到了16bits的数据,每接收完成16bits数据,便传送给Flash接口,准备进行数据写入。
S103:所述CPLD模拟所述闪存的数据写操作时序,将所述相关数据写入所述闪存。
CPLD 300每收到一次突发数据(16bits)后,就需要将数据写入Flash,用于数据的存储。
CPLD 300进行Flash芯片写操作时序的模拟,将收到的数据写入Nor Flash中。利用CPLD 300模拟Flash芯片的写操作时序,更为稳定,而且可以支持多种Flash芯片。
CPLD 300每收到16bits数据,就启动一次数据写入操作,从闪存400的0地址开始写入;以后的每次写入都是在上次写入的结束位置开始。
写入镜像数据前,依次拉低所述闪存的使能信号与写使能信号;将所述相关数据赋值给数据信号;保持100ns的时长后,拉高所述闪存的使能信号与写使能信号,即完成16bits镜像数据的写入Nor Flash芯片。由于Flash芯片是非易失性的存储器,因此,如果需要更新FPGA芯片的镜像文件,只需要进行一次Flash数据的升级更新即可。
现场可编程门阵列升级的方法还包括镜像数据校验。
为了确保镜像数据的正确,CPU可以通过SPI接口,回读Flash里的数据内容,以用于校验数据的正确性。具体的流程如下:
CPU 200使能片选信号,使能SPI接口,同时,触发时钟信号。
CPLD 300模拟Flash接口的读数据时序,一次读回16bits的数据内容。
CPLD 300对16bits的数据进行并串转换,在时钟信号的下降沿处,将1bit的数据信息,通过MISO信号回送给CPU 200,连续16个时钟下降沿,即完成一次16bits的数据传送。
CPU 200将读回的数据信息进行校验,根据校验码,与原本的镜像数据校验码进行对比,从而检验Flash里的FPGA镜像内容是否正确。数据效验可以采用CRC32、MD5、SHA1等校验算法。
如果当效验不一致时,CPU 200会发起重写闪存的请求。
现场可编程门阵列加载的方法用于对FPGA 100进行配置。如图3所示,该方法包括如下步骤:
S201:CPLD接收加载请求指令;
CPU 200与CPLD 300之间,可以使用一根GPIO来模拟加载使能控制信号,CPU 200可通过该信号发送加载请求,让CPLD 300完成FPGA 100镜像的加载。
也可以在CPLD 300上电过程后,自动对FPGA 100进行一次镜像文件加载。
S202:所述CPLD模拟闪存的数据读操作时序,读取所述闪存中的镜像文件数据。
利用CPLD 300模拟Flash芯片的数据读操作时序。采用CPLD 300模拟Flash芯片的读操作时序,使得数据读取更为稳定。同时,利用CPLD 300连接Flash芯片,能够支持多种不同类型的芯片。
S203:所述CPLD将读取到的镜像文件数据转化为FPGA接口所需的相关数据。
从Flash中获取到数据信息后,由于Flash接口和FPGA 100的被动加载接口数据位宽不一致,为此,在CPLD 300内部需要做数据的转换,同时,完成本次数据发送后,才能够去读取Flash中的下一个数据。
在本实施例中,Flash接口的数据位宽为16bits,FPGA 100的被动加载接口的数据位宽为1bit。一次从Flash中,能够获取16bits的数据,但FPGA的被动加载接口一次只能传送1bit的数据。
在CPLD 300内部,需要进行16bits到1bit的并串转换,同时,完成16bits数据的并转转换后,才能够发起下一次Flash数据的读取。
S204:所述CPLD模拟所述FPGA的被动加载配置接口时序,将所述相关数据发送至所述FPGA。
利用CPLD 300模拟FPGA 100的被动加载配置接口时序,时钟频率可达到50MHz,从而使得加载速率更快,而且加载成功更为稳定。同时,由于不同的FPGA芯片被动加载配置的接口时序不同,使用CPLD 300模拟时序,灵活性更高。
在本实施例中FPGA 100的被动加载配置接口数据位宽为1bit,则CPLD 300每次向FPGA 100传送1bit的Flash镜像数据,确定FPGA 100反馈回来配置完成信号,便可终止配置数据的传送。
如图4所示CPLD模拟FPGA的被动加载配置接口时序时需要使用到以下端口:nCONFIG配置信号501、nSTAUS状态信号502、DCLK时钟信号503、DATA数据信号504和CONF_DONE配置完成信号505。
具体的流程如下:
CPLD 300拉低nCONFIG配置信号501至少2us,表明开始对所述FPGA进行被动加载;
当nCONFIG配置信号501被拉高后,等待nSTAUS状态信号502拉高,当nSTAUS状态信号502被拉高表明FPGA 100完成响应,可以进行数据的加载;
CPLD 300控制DCLK时钟信号503的频率,开始发送DCLK时钟信号503和DATA数据信号504,将相关数据通过DATA数据信号504传送至所FPGA 100;DCLK时钟信号503的频率最大为50MHz,这样可以极大提高加载的速度。
CPLD 300检测CONF_DONE配置完成信号505,当检测到CONF_DONE配置完成信号505被拉高后,表明FPGA 100数据接收完成,可停止数据的发送;
CONF_DONE配置完成信号505拉高后,仍需进行DCLK时钟信号503的发送,至少发送100个周期的DCLK时钟信号503,以使得FPGA 100完成初始化。
设备每次上电后,CPLD 300都会自动对FPGA 100进行被动配置的加载。如果需要进行设备的FPGA 100镜像更新,只需要更新一次Flash芯片中的数据便可完成FPGA 100镜像文件的更新。
本领域技术人员可以理解附图只是一个优选实施场景的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
本领域技术人员可以理解实施场景中的装置中的模块可以按照实施场景描述进行分布于实施场景的装置中,也可以进行相应变化位于不同于本实施场景的一个或多个装置中。上述实施场景的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本发明序号仅仅为了描述,不代表实施场景的优劣。以上公开的仅为本发明的几个具体实施场景,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。
Claims (10)
1.一种远程升级现场可编程门阵列的系统,其特征在于,该系统包括:现场可编程门阵列器件FPGA、中央处理器CPU、复杂可编程逻辑器件CPLD及闪存;
所述CPLD分别与所述CPU、所述FPGA和所述闪存通过对应的接口电性连接;
所述闪存,用于存储所述FPGA的镜像文件;
所述CPU,用于接收远端发送过来的所述FPGA的待升级镜像文件,并将所述待升级镜像文件发送至所述CPLD;
所述CPLD,用于模拟所述闪存的数据写操作时序,将所述待升级镜像文件写入所述闪存;还用于模拟所述闪存的数据读操作时序,读取所述闪存中存储的镜像文件至所述CPLD中;还用于模拟所述FPGA的被动加载配置接口时序,将所述CPLD中的镜像文件发送至所述FPGA,还用于各种不同数据类型转换。
2.根据权利要求1所述的系统,其特征在于,所述CPLD与所述CPU之间的电性连接包括通过SPI、I2C、UART和PCI总线来进行的连接。
3.根据权利要求1所述的系统,其特征在于,所述数据类型转换包括串行并行转换、数据位宽转换。
4.一种现场可编程门阵列升级的方法,其特征在于,该方法包括:
CPLD接收CPU发送过来的FPGA的镜像文件;
所述CPLD将接收到所述FPGA的镜像文件数据转化为闪存接口所需的相关数据;
所述CPLD模拟所述闪存的数据写操作时序,将所述相关数据写入所述闪存。
5.如权利要求4所述的方法,其特征在于,“CPLD接收CPU发送过来的FPGA的镜像文件”具体包括:
所述CPLD在时钟信号的上升沿处,对数据信号进行采样,实现对镜像文件的接收。
6.如权利要求4所述的方法,其特征在于,“将所述相关数据写入所述闪存”具体包括:
所述CPLD每收到一次数据,就启动一次数据写入操作,从闪存的0地址开始写入;
在写入镜像数据前,依次拉低所述闪存的使能信号与写使能信号,以将所述数据赋值给数据信号;
待保持100ns的时长后,拉高使能信号与写使能信号,以完成一段镜像数据的写入。
7.如权利要求4所述的方法,其特征在于,在“所述CPLD模拟所述闪存的数据写操作时序,将所述相关数据写入所述闪存”之后,还包括:
镜像数据效验;
镜像数据效验具体包括:
所述CPU将通过CPLD回读闪存得到的镜像文件与远端发送的镜像文进行比对效验;
当效验不一致时,CPU会发起重写闪存的请求。
8.一种现场可编程门阵列加载的方法,其特征在于,该方法包括:
CPLD接收加载请求指令;
所述CPLD模拟闪存的数据读操作时序,读取所述闪存中的镜像文件数据;
所述CPLD将读取到的镜像文件数据转化为FPGA接口所需的相关数据;
所述CPLD模拟所述FPGA的被动加载配置接口时序,将所述相关数据发送至所述FPGA。
9.如权利要求8所述的方法,其特征在于,所述CPLD模拟所述FPGA的被动加载配置接口时序的流程具体包括:
所述CPLD拉低配置信号至少2us,对所述FPGA进行被动加载;
当所述配置信号被拉高后,等待状态信号拉高,当所述状态信号被拉高时进行数据的加载;
所述CPLD控制时钟信号的频率,发送时钟信号和数据,将所述数据通过数据信号端口传送至所述FPGA;
所述CPLD检测配置完成信号,当检测到所述配置完成信号被拉高后,停止数据的发送;
当检测到所述配置完成信号被拉高后,继续发送超过100个周期的时钟信号,使得FPGA芯片完成初始化。
10.如权利要求8所述的方法,其特征在于,所述加载请求指令包括:CPU通过GPIO接口发送给CPLD的加载请求指令,以及CPLD上电时,电源模块发送给所述CPLD的加载请求指令。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710071858.0A CN106843983A (zh) | 2017-02-09 | 2017-02-09 | 远程升级现场可编程门阵列的系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710071858.0A CN106843983A (zh) | 2017-02-09 | 2017-02-09 | 远程升级现场可编程门阵列的系统及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106843983A true CN106843983A (zh) | 2017-06-13 |
Family
ID=59122963
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710071858.0A Pending CN106843983A (zh) | 2017-02-09 | 2017-02-09 | 远程升级现场可编程门阵列的系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106843983A (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109343888A (zh) * | 2018-10-24 | 2019-02-15 | 中国兵器装备集团自动化研究所 | 一种基于dsp的fpga程序远程在线更新系统及方法 |
CN109669729A (zh) * | 2018-12-26 | 2019-04-23 | 杭州迪普科技股份有限公司 | 一种处理器的启动引导方法 |
CN110704090A (zh) * | 2018-07-09 | 2020-01-17 | 阿里巴巴集团控股有限公司 | 现场可编程门阵列fpga及其升级方法和升级系统 |
CN111026427A (zh) * | 2019-11-14 | 2020-04-17 | 中国航空工业集团公司洛阳电光设备研究所 | 一种含cpu和fpga的嵌入式系统远程在线升级方法 |
CN111090539A (zh) * | 2019-10-30 | 2020-05-01 | 苏州浪潮智能科技有限公司 | 一种基于cpld的双闪存自我修复方法和装置 |
CN111414182A (zh) * | 2020-03-30 | 2020-07-14 | 郑州精益达汽车零部件有限公司 | 一种基于spi的fpga远程升级方法 |
CN112486585A (zh) * | 2017-11-03 | 2021-03-12 | 华为技术有限公司 | 恢复fpga芯片中的逻辑的方法、系统和fpga设备 |
CN112994902A (zh) * | 2021-03-10 | 2021-06-18 | 英业达科技有限公司 | 智能网卡及智能网卡的fpga固件更新管理方法 |
CN113138779A (zh) * | 2021-04-21 | 2021-07-20 | 中科亿海微电子科技(苏州)有限公司 | 基于多功能接口的fpga在线程序更新装置及方法 |
CN113703683A (zh) * | 2021-08-28 | 2021-11-26 | 江苏华存电子科技有限公司 | 一种单一的优化冗余存储系统的装置 |
CN115033263A (zh) * | 2022-06-30 | 2022-09-09 | 西安易朴通讯技术有限公司 | 电子设备及时钟芯片的固件更新方法 |
CN117171097A (zh) * | 2023-08-31 | 2023-12-05 | 中科驭数(北京)科技有限公司 | 一种现场可编程门阵列远程加载方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1677346A (zh) * | 2004-04-01 | 2005-10-05 | 迈普(四川)通信技术有限公司 | 可编程器件程序更新方法及可更新程序的板卡 |
GB2425627A (en) * | 2005-04-29 | 2006-11-01 | O2Micro Inc | Upgrading bit files for a Field Programmable Gate Array |
CN101207382A (zh) * | 2007-12-03 | 2008-06-25 | 福建星网锐捷网络有限公司 | 数据配置系统、方法及相关装置 |
CN103927210A (zh) * | 2014-04-22 | 2014-07-16 | 唐山轨道客车有限责任公司 | 基于cpld的fpga加载系统 |
-
2017
- 2017-02-09 CN CN201710071858.0A patent/CN106843983A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1677346A (zh) * | 2004-04-01 | 2005-10-05 | 迈普(四川)通信技术有限公司 | 可编程器件程序更新方法及可更新程序的板卡 |
GB2425627A (en) * | 2005-04-29 | 2006-11-01 | O2Micro Inc | Upgrading bit files for a Field Programmable Gate Array |
CN101207382A (zh) * | 2007-12-03 | 2008-06-25 | 福建星网锐捷网络有限公司 | 数据配置系统、方法及相关装置 |
CN103927210A (zh) * | 2014-04-22 | 2014-07-16 | 唐山轨道客车有限责任公司 | 基于cpld的fpga加载系统 |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112486585A (zh) * | 2017-11-03 | 2021-03-12 | 华为技术有限公司 | 恢复fpga芯片中的逻辑的方法、系统和fpga设备 |
CN112486585B (zh) * | 2017-11-03 | 2024-01-02 | 超聚变数字技术有限公司 | 恢复fpga芯片中的逻辑的方法、系统和fpga设备 |
CN110704090A (zh) * | 2018-07-09 | 2020-01-17 | 阿里巴巴集团控股有限公司 | 现场可编程门阵列fpga及其升级方法和升级系统 |
CN109343888A (zh) * | 2018-10-24 | 2019-02-15 | 中国兵器装备集团自动化研究所 | 一种基于dsp的fpga程序远程在线更新系统及方法 |
CN109669729A (zh) * | 2018-12-26 | 2019-04-23 | 杭州迪普科技股份有限公司 | 一种处理器的启动引导方法 |
CN111090539A (zh) * | 2019-10-30 | 2020-05-01 | 苏州浪潮智能科技有限公司 | 一种基于cpld的双闪存自我修复方法和装置 |
CN111026427B (zh) * | 2019-11-14 | 2022-09-02 | 中国航空工业集团公司洛阳电光设备研究所 | 一种含cpu和fpga的嵌入式系统远程在线升级方法 |
CN111026427A (zh) * | 2019-11-14 | 2020-04-17 | 中国航空工业集团公司洛阳电光设备研究所 | 一种含cpu和fpga的嵌入式系统远程在线升级方法 |
CN111414182A (zh) * | 2020-03-30 | 2020-07-14 | 郑州精益达汽车零部件有限公司 | 一种基于spi的fpga远程升级方法 |
CN111414182B (zh) * | 2020-03-30 | 2023-09-19 | 郑州智驱科技有限公司 | 一种基于spi的fpga远程升级方法 |
CN112994902A (zh) * | 2021-03-10 | 2021-06-18 | 英业达科技有限公司 | 智能网卡及智能网卡的fpga固件更新管理方法 |
CN113138779A (zh) * | 2021-04-21 | 2021-07-20 | 中科亿海微电子科技(苏州)有限公司 | 基于多功能接口的fpga在线程序更新装置及方法 |
CN113138779B (zh) * | 2021-04-21 | 2024-03-15 | 中科亿海微电子科技(苏州)有限公司 | 基于多功能接口的fpga在线程序更新装置及方法 |
CN113703683B (zh) * | 2021-08-28 | 2022-05-13 | 江苏华存电子科技有限公司 | 一种单一的优化冗余存储系统的装置 |
CN113703683A (zh) * | 2021-08-28 | 2021-11-26 | 江苏华存电子科技有限公司 | 一种单一的优化冗余存储系统的装置 |
CN115033263A (zh) * | 2022-06-30 | 2022-09-09 | 西安易朴通讯技术有限公司 | 电子设备及时钟芯片的固件更新方法 |
CN117171097A (zh) * | 2023-08-31 | 2023-12-05 | 中科驭数(北京)科技有限公司 | 一种现场可编程门阵列远程加载方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106843983A (zh) | 远程升级现场可编程门阵列的系统及方法 | |
CN101828174B (zh) | 用于同步串行接口nand的数据读取的系统及方法 | |
CN107832078B (zh) | 基于dsp的fpga程序在线更新电路 | |
CN107704285B (zh) | 现场可编程门阵列多版本配置芯片、系统和方法 | |
US20120198292A1 (en) | Test apparatus and test method | |
CN114661655B (zh) | 一种星载测控数传一体机fpga程序在轨重构系统及方法 | |
CN103713993B (zh) | 芯片验证平台及其实现芯片测试的方法 | |
CN108664264A (zh) | 一种基于cpu通过jtag方式远程更新fpga的装置和方法 | |
CN107145465B (zh) | 串行外设接口spi的传输控制方法、装置及系统 | |
CN113867836A (zh) | 用于fpga的装置、程序动态加载方法及数据传输方法 | |
CN108920197A (zh) | 一种提高fpga串行被动加载速率的加载电路及加载方法 | |
CN109684152B (zh) | 一种risc-v处理器指令下载方法及其装置 | |
US9348774B2 (en) | Controller-opaque communication with non-volatile memory devices | |
CN101408847B (zh) | 一种固件加载方法、系统和桥接器 | |
CN102280141B (zh) | 一种闪速存储器芯片编程方法及装置 | |
CN116560688B (zh) | 用于域控制器的软件更新方法 | |
CN112506728A (zh) | 一种用于原型验证系统的测试方法及装置 | |
CN106897097A (zh) | 一种用epld加载多片fpga的方法及系统 | |
CN103870404B (zh) | 一种iic批命令处理控制方法 | |
CN110502282A (zh) | 多路ntb卡的加载方法、装置、设备及可读存储介质 | |
CN112885403B (zh) | 一种Flash控制器的功能测试方法、装置及设备 | |
CN109283853A (zh) | 一种空间载荷遥控数据传输系统及方法 | |
CN102110047B (zh) | 一种在开发系统中读写ram的方法 | |
US8495537B1 (en) | Timing analysis of an array circuit cross section | |
CN113553084A (zh) | 基于多fpga的在线配置系统及在线配置方法 |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170613 |