CN200976140Y - 一种用于现场可编程门阵列位文件升级的系统 - Google Patents

一种用于现场可编程门阵列位文件升级的系统 Download PDF

Info

Publication number
CN200976140Y
CN200976140Y CN 200620114834 CN200620114834U CN200976140Y CN 200976140 Y CN200976140 Y CN 200976140Y CN 200620114834 CN200620114834 CN 200620114834 CN 200620114834 U CN200620114834 U CN 200620114834U CN 200976140 Y CN200976140 Y CN 200976140Y
Authority
CN
China
Prior art keywords
fpga
cpld
cpu
flash memory
upgrading
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.)
Expired - Lifetime
Application number
CN 200620114834
Other languages
English (en)
Inventor
房立财
甘霖
丁顺光
陈之翔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
O2Micro Inc
Original Assignee
O2Micro Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by O2Micro Inc filed Critical O2Micro Inc
Application granted granted Critical
Publication of CN200976140Y publication Critical patent/CN200976140Y/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)
  • Logic Circuits (AREA)

Abstract

本实用新型提供一种用于现场可编程门阵列(FPGA)升级的系统,其包括:FPGA、闪存以及CPLD。闪存包括第一扇区和第二扇区,第一扇区被配置为存储供FPGA所用的位文件的可使用版本,第二扇区被配置为存储供FPGA所用的位文件的备份版本。CPLD与FPGA和闪存耦合在一起。CPLD被配置为从闪存中下载所述位文件到FPGA以向FPGA提供功能。因此,CPLD可以与CPU通信来升级闪存中的位文件,并指示CPU位文件的哪个版本已经被下载到所述FPGA。该系统稳定性高且经济。

Description

一种用于现场可编程门阵列位文件升级的系统
本申请要求了美国临时专利申请的优先权,该申请的序列号为60/676,452,标题为“一种用于现场可编程门阵列位文件升级的稳固的和经济的方案”,提交日为2005年4月29日,并且被转让给本实用新型的受让人,其全部内容被包含在此作为参考。
技术领域
本实用新型涉及一种FPGA(现场可编程门阵列),尤其涉及一种用于FPGA升级的系统。
背景技术
防火墙产品Marrix9具有名为NSB的网络安全板。NSB用FPGA(现场可编程门阵列)芯片构造。当顾客要求新的特性或新的缺陷被发现时,系统功能需要被升级。
FPGA是一种当它被断开电源时将失去功能的芯片。因此一般在通电之后,FPGA必须通过EEPROM(电可编程可擦除只读存储器)来编程以使其具有一定的功能。EEPROM包含提供FPGA功能性的位文件。通过升级所述位文件,可以实现FPGA的升级。
大的FPGA,诸如XILINX的VirtexII6000,位文件也很大,故不适合使用单个芯片的EEPROM。因而,通常使用多个EEPROM用来存储这样巨大的位文件。然而,大量的EEPROM将占据重要的印刷电路板空间,将在一定程度上减少印刷电路板的可靠性。为解决这一问题,一种常规的做法是结合CPLD(复杂的可编程逻辑器件)和闪存以实现专用EEPROM的功能,并利用闪存存储位文件。CPLD和CPU通信以升级闪存中的位文件并且下载位文件给FPGA以提供具有所述功能的FPGA。通过这种方法,一般地,总是存在一个很高可靠性的用于软件的信道以
把位文件写入到闪存中。一个例子是中央处理器的GPI0(通用的输入输出)。
然而,一些系统不包括GPIO信道。例如一些系统使用PCI(外围元件互连)接口以与CPU通信,但是这个PCI接口通过FPGA实现。结果,如果通过PCI接口升级位文件失败,这些系统将失去全部的功能而没有被修复的能力。
因此,需要发展一个用于FPGA升级的稳固且经济的方案。
实用新型内容
根据本实用新型的目的之一在于提供一种用于FPGA升级的系统。该系统包括FPGA,存储FPGA位文件的可使用版本和备份版本的闪存,以及被配置以从闪存中下载位文件到FPGA的CPLD。所述CPLD被进一步配置为与CPU通信,以升级闪存中的位文件,且指示CPU在FPGA中的位文件的哪个版本是激活的。
使用本实用新型的系统,克服了现有产品中若缺乏高可靠性通道时升级失败无法挽救的缺点,即提供了一种更经济且稳固的方案。
附图说明
图1所示是根据本实用新型的一个实施例用于FPGA升级的系统的方框图。
图2所示是根据本实用新型的一个实施例的CPLD执行的流程图。
图3-1所示是根据本实用新型的一个实施例的CPU执行的流程图的一部分。
图3-2所示是根据本实用新型的一个实施例的CPU执行的流程图的另一部分。
图4所示是根据本实用新型的一个实施例的CPLD状态机的框图。
具体实施方式
现在将结合附图,详细描述本实用新型的用于FPGA升级的系统和方法的最佳实施例。尽管本实用新型将连同最佳实施例一起被描述,但应当理解本实用新型并不受限于这些实施例,相反地,本实用新型是用来覆盖备选方案、变形和等同物,其可能被包括在如权利要求所定义的本实用新型的精神和范围之内。
本实用新型的实施例用运行在计算机系统上的软件实现。例如,计算机系统是个人计算机、笔记本计算机、服务器计算机、主机,或诸如交换机、路由器、网络控制计算机、网络计算机等等之类的网络设备。该软件安装于电子设备上,用以获得电子设备的使用许可。在一个实施例中,计算机系统包括与总线耦合在一起的处理器和与总线耦合在一起的存储装置。所述存储装置可以是易失性的或非易失性的,并且可以包括可移动的存储介质。计算机还可以包括监视器、用于数据输入/输出的装置等。
以下的详细说明部分将结合程序、步骤、逻辑框图、流程,以及用以表示可在计算机存储介质上执行的数据位上的操作的一些符号,来共同说明。这些说明和陈述是数据处理领域中的普通技术人员所使用的方法,通过该些人员可以将实用新型的主旨有效地传达给本领域中的其它普通技术人员。程序、计算机执行步骤、逻辑框图、流程等,通常地,被设想为是导致期望结果的步骤或指令的自相一致的序列。所述步骤是那些达到质量标准所要求的物理操作。通常,这些量采取但不限于能够被存储、传送、合并、比较,及其他在计算机系统中操作的电信号或磁信号的形式。事实已经证明,为了符合习惯用法,有时候借助这些信号作为位、值、元件、符号、字符、术语、数字等会很方便。
然而,应当考虑到,所有这些和类似的术语都与其对应的物理量有关并且仅仅是应用于该些物理量的方便的标签。除非特别地说明否则如同从下列叙述中可见的,为理解本实用新型的需要,贯穿文中的诸如“存储”、“下载”、“升级”、“检验”,以及“比较”、“确定”等术语,均指的是计算机系统,或类似的包括嵌入式系统的电子计算装置的操作和处理过程。所述嵌入式系统操作和变换表示为计算机系统的寄存器和存储器内的物理的(电子)量数据成为其它的同样表示为计算机系统存储器或寄存器或其它这种信息存储,传输或显示设备内的物理量的数据。
因此,本实用新型借助多个实施例公开了一种用于FPGA升级的系统。本实用新型的实施例提供了一个用于CPLD与CPU交互的稳固的信道以升级FPGA。其它的实施例提供了一种在通信信道中仅使用四个插脚来减少插脚数,以实现FPGA升级的较为经济的方案。
图1举例说明一个用于FPGA(现场可编程门阵列)升级的系统100。根据这个实施例,所述系统100包括FPGA130。所述系统还包括被配置为存储FPGA位文件的闪存110。位文件用以表征为FPGA所设计的功能。所述系统100还包括CPLD(复杂的可编程逻辑器件)120,其从闪存110中下载位文件到FPGA130以使得FPGA具有设计的功能。CPLD120还负责与CPU进行通信,以升级位文件,并且指示CPU在FPGA中的哪个版本的位文件是激活的。
为了构造一个用于CPLD120与CPU通信的稳固的信道,闪存110被配置成为两个扇区的。一扇区被称作工作库111,另一扇区被称作备份库112。这两个库应该存储FPGA相同版本的位文件。存储在工作库111中的版本被当作可使用的位文件,存储在备份库112中的版本被当作备份位文件。位文件为FPGA提供设计好的功能。为了升级FPGA130功能,位文件将在闪存110中被升级。
根据一个实施例,工作库或备份库都可以被选作升级的对象。例如,升级工作库111可以改变或增加FPGA的功能,升级备份库112可以保持备份位文件的更新。备份库112只有在工作库111的升级被检验为有效之后才能被升级。
本实施例选定仅仅升级工作库111或仅仅升级备份库112。任何时候,只有一个库正在升级,因此即使这个升级失败仍然存在另一个有效的库以使FPGA130可使用。这就使得后期的现场修复或升级成为可能。这种双库模式确保了系统100不会完全丧失功能,因此,增加了该系统100的可靠性。
在这个实施例中,CPLD120作为一个中心控制元件。因为CPLD与FPGA130耦合,而所有的连接都在单个的减少了导线和连接器的印刷电路板上实现,故干扰被控制在一可接受的程度内。通过在CPLD插脚上使用带内传输机制,本实用新型的实施例仅仅使用四个插脚即可构造CPLD120和FPGA130之间的通信信道。
在这个实施例中,CPLD120实现了3个输入信号,其可以包括下列:CPLD_CCLK121,作为用于CPLD的时钟信号以锁存CPLD_DIN和CPLD_PROG;CPLD_DIN122,其用来传输位文件数据和CPU命令;和CPLD_PROG123,用作一系列并联电路的命令允许锁存信号。根据这个实施例,CPLD实现一个输出信号:CPLD_BUSY124。当CPU正在升级闪存时,输出信号指示闪存的忙碌状态,当CPU做其它操作或者空闲时,输出信号指示CPU在FPGA130中的哪个库是激活的。
根据一个实施例,通过执行带内的编码机构,CPLD_DIN122可以支持来自于CPU的多命令,这样减少了CPLD插脚。在这个实施例中,下列编码使得CPLD_DIN122支持来自于CPU的多命令:“4′b1010”使得CPLD_DIN支持来自于CPU的“从工作库214引导”命令;“4′b1011”使得CPLD_DIN支持来自于CPU的“从备份库216中引导”命令;“4′b0110”使得CPLD_DIN支持来自于CPU的“升级工作库218”命令;“4′b0111”使得CPLD_DIN支持来自于CPU的“升级备份库222”命令。
在本实施例中,CPLD实现了一个输出信号:CPLD_BUSY124。CPLD_BUSY124信号可以实现两个功能。CPLD_BUSY的第一个功能是将指示CPU当位文件正在闪存110中升级时闪存110的忙碌状态。换句话说,这个信号作为CPU和闪存之间的流控制。CPLD_BUSY124的第二个功能将指示CPU在CPLD结束下载位文件到FPGA130中之后,在FPGA中哪个库的位文件是激活的。当把位文件写入到闪存中时,CPU定义CPLD_BUSY124为闪存的忙碌状态。当CPU做其它的操作或空闲时,CPLD_BUSY124表示工作库,这样可以指示CPU在FPGA中哪个库的位文件是激活的。
刚一通电,或在电源重启之后,FPGA130逻辑在初始化阶段期间就将被自动清除。在这个实施例中,FPGA执行三个输入信号,其包括下列:FPGA_CLK131,是由内部配置逻辑使用的配置时钟输入信号;FPGA_DIN132;以及FPGA_PROG133,重置内部配置逻辑并且重新初始化内部配置存储器。
在这个实施例中,FPGA实现两个输出信号,其包括下列:FPGA_DONE134和FPGA_INIT135。FPGA_DONE134信号指示配置的完成且在擦除处理过程中设置为低。FPGA_INIT135信号指示正在擦除过程中或者编程错误。FPGA_INIT信号在擦除之后被维持为低以指示FPGA等待编程。CPU可以写入值以驱动输出信号,并且可以从输入信号中读回值。CPU能够经由专用寄存器入口访问这些信号。系统软件将发出命令以经由如上所述地专用寄存器入口和CPLD通信。
图2举例说明了CPLD执行的实施例的一个流程图。如果FPGA设备刚一通电,或在电源重启之后就被配置,配置逻辑在这个初始化时间期间将被自动清除。因此在步骤202.通电之后,执行步骤204.CPLD120将下载工作库位文件到FPGA。然后进行步骤206.CPLD将核对这个操作成功与否。如果这个下载成功,执行步骤212.CPLD120等待CPU命令。如果这个下载失败,执行步骤208.CPLD将转到下载备份库位文件到FPGA。如果从备份库中下载成功,执行步骤212.CPLD120将转到等待CPU命令。如果从备份库中下载失败,一定存在一些错误,则执行步骤211.CPLD发送错误报告到CPU。
根据这个实施例,在步骤214作出是否从工作库中引导的决定,如果用户输入”是”,执行步骤204.CPLD将下载工作库位文件到FPGA。另一方面,在步骤216作出是否从备份库从引导的决定。如果用户选定从备份库中引导,执行步骤208.CPLD将下载备份库位文件到FPGA。在步骤218,CPU将请求是否升级工作库。如果用户选定升级工作库,CPLD120将擦除工作库位文件且把新的位文件写入到工作库中,如图2中的步骤220.升级工作库。
如果用户选择不升级工作库,执行步骤222.CPU请求是否升级备份库。如果用户选定升级备份库,CPLD120将擦除备份库位文件且写入新的位文件,如图2中的步骤224.升级备份库。如果用户选择不升级备份库,则返回至步骤212,即CPLD将返回到等待CPU命令。
因此,如果用户在工作库升级结束之后在执行步骤214时再次选定从工作库中引导,工作库位文件将被重新加载到FPGA。如果FPGA功能改变了,升级就被证明是成功的。
图3-1及图3-2举例说明了从CPU侧FPGA升级执行的实施例的流程图。CPU和CPLD120通信以让用户升级位文件。CPU也和CPLD通信以让用户选择升级哪个库。且进一步地CPU和CPLD通信以检验所述升级。
在这个实施例中,在步骤301.FPGA升级开始之后,继续步骤302.CPU请求是否核对和打开文件。如果用户输入”否”,直接跳到步骤330.CPU将转到FPGA升级结束。如果用户输入”是”,执行步骤303.CPU将标记开始时间,然后执行步骤304.CPU将读取PCI数据且把它写入到闪存中。
在步骤305,CPU读取一个字节块。在步骤306,CPU把所述一个字节块写入到闪存中。然后,在步骤307,CPU核对指示闪存的忙碌状态的CPLD_BUSY 307以证实闪存110是否正在忙碌。CPU将继续核对CPLD_BUSY 307直到闪存准备接收新的数据。在步骤308,当CPLD不忙碌时CPU把一个字节写入到闪存中。在步骤309,CPU把一位写入到闪存中。然后在步骤310,CPU把时钟设置为低。所述时钟是CPLD_DIN122和CPLD_PROG123的取样时钟。如果经过步骤311的判断,第7位是“1”,则执行步骤312.CPU将把指示CPLD准备传递数据的CPLD_DIN设置为高。如果第7位不是”1”,则执行步骤313.CPU将把CPLD_DIN设置为低。然后执行步骤314.CPU把时钟设置为高。然后,进行步骤315,即CPU将核对是否存在更多位要写入。如果用户输入“是”,CPU将返回到步骤309写入一位。如果用户输入“否”,执行步骤316.CPU核对是否存在更多字节要写入。如果用户想要写入更多字节,CPU将返回到步骤307去核对CPLD_BUSY。
如果不存在更多字节要写入到闪存中,执行步骤317.CPU在闪存的块中标记字节计数,接着执行步骤318.如果需要的话该字节计数用来显示升级过程。然后执行步骤319.CPU将核对是否有一个字节块要读取。如果用户输入”是”,CPU将返回去执行步骤305,读取一个字节块。如果用户输入”否”,执行步骤320,CPU从更新的块中引导,以使块激活。在步骤321,CPU写回PCI数据。然后在步骤322中,CPU标记结束时间且计算总的处理时间。
进一步,根据一个实施例,在步骤323中,CPU从PCI总线140上读取自述文件中的版本号,在步骤324中,CPU从闪存中读取标记中的另一个版本号。然后执行步骤325.CPU比较两个版本号。如果两个版本号匹配证明升级是成功的,这意味着新的位文件已经成功地写入到闪存110中。另一方面,如果两个版本号不匹配,这意味着升级失败。在这种情况下,CPU将报告失败且返回到步骤302,判断是否需要核对并打开文件。
当CPU正在把块写入到闪存中,例如CPU正在写入块0时,这个执行发生在另一个块,例如块1中。块0将在数据已经被写入到其中之后被自动地激活。同样地,CPU需要在步骤327中核对是否从另一个块中引导,并在步骤328中从另一个库中引导。至此,FPGA升级结束,即步骤330。
图4举例说明CPLD状态机执行的实施例的一个框图。刚一通电,状态机就从空闲状态401开始。状态机转到自动地配置启动状态402以开始FPGA的启动。在启动阶段期间,FPGA逻辑将被自动清除。当计时器=25时,状态机转到等待配置状态403。当FPGA_INIT寄存器=1时,状态机转到配置空闲状态404,这意味着FPGA准备接收数据。在405状态机转到自动地读取数据,这意味着CPLD准备配置FPGA。当计时器=7且FPGA最后的位=1时,这意味着FPGA配置已经做完,且状态机转到等待FPGA_DONE的状态406。当计时器=25且FPGA_DONE寄存器=1时,这意味着FPGA已经被成功地配置,且状态机转到结束状态410。
当计时器=25时,如果配置计数输出=0,这意味着当前配置数据是来自于闪存110的工作库且FPGA_DONE寄存器!=1,这意味着来自于工作库的数据没有被成功地配置到FPGA中。因此,状态机报告一个配置错误407。当计时器=25,FPGA_DONE寄存器!=1且配置计数输出=1时,这意味着来自于备份库的当前配置数据没有被成功地写入到FPGA中。因此,来自于工作库111和备份库112的配置都失败了,然后状态机转到结束状态410其中严重错误被报告给FAE。
状态机从配置错误407自动转换到空闲状态401,这意味着CPLD准备从备份库中下载数据来配置FPGA130。根据这个实施例,当ersenreg=4′b0110且CPLD_PROG_N=1时,状态机将从结束状态410转换到空闲状态401且CPLD开始使用工作库来再次配置FPGA。当ersenreg=4′b0111且CPLD_PROG_N=1时,状态机将从结束状态410转换到空闲状态401且CPLD开始使用备份库来再次配置FPGA。
在这个实施例中,当ersenreg=4’b1010且CPLD_PROG_N=1时,这意味着CPLD准备升级工作库111。否则当ersenreg=4′b0011且CPLD_PROG_N=1时,这意味着CPLD准备升级备份库112,状态机从结束状态410转换到擦除空闲状态421。状态机自动地执行擦除命令422,这意味着CPLD准备擦除闪存110中的数据。状态机执行证实命令423,其中当最后的块擦除=0时,这意味着库没有被完全擦除。当计时器=5时,状态机转到擦除延迟424。同样地,CPLD启动擦除库中的一个块。当计时器=25时,状态机自动地转到擦除状态425。因此,状态机将执行擦除命令422,其中当fsts=1时,这意味着一个块已经被完全擦除。当最后的块擦除=1时,这意味着库已经被完全擦除。同样地,状态机将转到存储空闲状态426,这意味着CPLD升级FPGA的配置数据。
根据这个实施例,状态机自动地执行写入缓冲器命令427。在一个实施例中,当计时器=5时,状态机将转到读缓冲器状态428,这意味着数据正在写入到闪存110缓冲器中。当计时器=8且缓冲器准备=0时,这意味着闪存缓冲器没有被充分地写入。同样地,状态机转到执行写入缓冲器命令427。另一方面,当缓冲器准备=1时,这意味着闪存缓冲器已经被充分地写入。因此,状态机转到写计数429。当计时器=5时,状态机从写计数429自动地转换到等待数据状态430。
根据这个实施例,当reachbufup=0时,这意味着闪存缓冲器中的并行数据没有被完全传递到重要的数据中,且当shiftinrdy=1时,这意味着CPLD真正的启动并行转移,状态机将转到写数据状态431。当计时器=5时,状态机从写数据状态431转到等待数据状态430。当reachbufup=1时,这意味着闪存缓冲器中的并行数据已经被完全传递到重要的数据中,状态机将转到写入缓冲器证实432。
当计时器=5时,状态机将切换到写入缓冲器延迟状态433,这意味着数据已经写入到闪存110的一个块中。然后当计时器=25时,状态机自动地转到写入缓冲器状态434。当fsts=1时,这意味着闪存110中的一个块已经被成功地升级。另一方面,当FPGA最后的缓冲器!=1时,这意味着FPGA位文件没有被成功地升级。同样地,状态机将执行写入缓冲器命令427。否则,当FPGA最后的缓冲器=1时,这意味着闪存110的一个块已经被成功地升级且FPGA配置数据已经被成功地升级。因此,状态机将从写入缓冲器状态434转换到读取模式435,这意味着FPGA已经被设置到配置状态中。当计时器再次=5时,状态机将从读取模式435转到结束状态410。这指示FPGA升级结束。在这里已经使用的术语和表达仅用于描述本实用新型而并非限制本实用新型。在使用这种术语和表达时,没有意图排除任何所示和所描述特征的等同物(或它的一部分),且应当承认各种修改都可能落在要求保护的范围内。其它的修改、变化和可替换物也是一样。

Claims (4)

1.一种用于现场可编程门阵列FPGA升级的系统,其特征在于,包括:
现场可编程门阵列;
闪存,包括第一扇区,用于存储供FPGA所用的位文件的可使用版本,以及第二扇区,用于存储供FPGA所用的位文件的备份版本;以及
复杂的可编程逻辑器件CPLD,耦合所述FPGA和闪存,所述CPLD可以从所述闪存的第一或第二扇区下载位文件传递给FPGA。
2.如权利要求1所述的系统,其特征在于:所述CPLD通过线路与CPU相连通,以升级存储在闪存中的位文件的可使用版本。
3.如权利要求1所述的系统,其特征在于:所述CPLD通过线路与CPU相连通,以升级所述闪存中的所述位文件的备份版本。
4.如权利要求1所述的系统,其特征在于:所述CPLD通过线路与所述FPGA连通,它们之间的通信信号有4个。
CN 200620114834 2005-04-29 2006-04-28 一种用于现场可编程门阵列位文件升级的系统 Expired - Lifetime CN200976140Y (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US67645205P 2005-04-29 2005-04-29
US60/676,452 2005-04-29

Publications (1)

Publication Number Publication Date
CN200976140Y true CN200976140Y (zh) 2007-11-14

Family

ID=38165738

Family Applications (2)

Application Number Title Priority Date Filing Date
CN 200620114834 Expired - Lifetime CN200976140Y (zh) 2005-04-29 2006-04-28 一种用于现场可编程门阵列位文件升级的系统
CNB2006100778121A Expired - Fee Related CN100483348C (zh) 2005-04-29 2006-04-28 一种用于现场可编程门阵列位文件升级的系统及方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
CNB2006100778121A Expired - Fee Related CN100483348C (zh) 2005-04-29 2006-04-28 一种用于现场可编程门阵列位文件升级的系统及方法

Country Status (1)

Country Link
CN (2) CN200976140Y (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101853172A (zh) * 2010-05-24 2010-10-06 中兴通讯股份有限公司 复杂可编程逻辑器件cpld动态升级装置及方法
CN102103186A (zh) * 2009-12-18 2011-06-22 上海贝尔股份有限公司 一种fpga调试方法及其设备
CN104881286A (zh) * 2015-05-28 2015-09-02 烽火通信科技股份有限公司 可编程器件配置系统及方法
CN105094855A (zh) * 2014-05-06 2015-11-25 南京南瑞继保电气有限公司 一种模块化多电平换流器子模块的程序在线升级方法
CN109558176A (zh) * 2018-11-30 2019-04-02 郑州云海信息技术有限公司 一种基于CPLD内部Flash的双启方法
CN109558179A (zh) * 2018-11-20 2019-04-02 杭州迪普科技股份有限公司 程序代码在线加载方法、程序代码在线升级方法及系统
CN110096300A (zh) * 2019-04-08 2019-08-06 上海赛治信息技术有限公司 一种fpga程序文件备份管理系统、运行方法及升级方法
CN112307697A (zh) * 2020-11-05 2021-02-02 中国航空工业集团公司西安航空计算技术研究所 一种fpga逻辑重加载电路

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101587353B (zh) * 2008-05-23 2011-06-22 深圳市先阳软件技术有限公司 用于卷绕设备的恒张力控制器及控制方法
CN101604244B (zh) * 2008-06-13 2012-11-28 中兴通讯股份有限公司 一种实现fpga上电即用和远程升级的装置及方法
CN101420328B (zh) * 2008-12-03 2010-12-08 杭州华三通信技术有限公司 远程升级现场可编程门阵列的系统、接口卡及方法
CN101957784B (zh) * 2009-07-17 2012-10-10 鸿富锦精密工业(深圳)有限公司 存储器及其数据备份方法
CN102043636B (zh) * 2009-10-19 2015-05-20 中兴通讯股份有限公司 现场可编程门阵列位文件下载的方法及装置
CN102654839A (zh) * 2012-04-18 2012-09-05 华为技术有限公司 一种实现现场可编程门阵列可靠升级的方法及装置
CN102662718B (zh) * 2012-05-03 2015-07-01 天津市英贝特航天科技有限公司 一种单片flash启动多用户程序模块
CN103631674B (zh) * 2012-08-24 2016-05-04 京信通信系统(中国)有限公司 嵌入cpu的fpga及其启动方法
CN109542484B (zh) * 2018-11-20 2022-02-18 浪潮集团有限公司 一种在线更新fpga配置芯片的方法及系统
CN113946533B (zh) * 2021-09-18 2024-03-12 中国航发南方工业有限公司 一种数据存储设备及其串口通信优化方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002351685A (ja) * 2001-05-22 2002-12-06 Sankyo Seiki Mfg Co Ltd 不揮発性メモリのデータ更新方法及び制御装置
US6845276B2 (en) * 2001-06-29 2005-01-18 Electro Scientific Industries Multiple axis modular controller and method of operating same
CN1266621C (zh) * 2003-02-18 2006-07-26 明基电通股份有限公司 可重复下载数据至现场可编程门阵列的方法及装置
CN1195267C (zh) * 2003-06-27 2005-03-30 飞利浦(中国)投资有限公司 基于fpga和cpld实现的脉冲序列编程器

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102103186A (zh) * 2009-12-18 2011-06-22 上海贝尔股份有限公司 一种fpga调试方法及其设备
CN101853172A (zh) * 2010-05-24 2010-10-06 中兴通讯股份有限公司 复杂可编程逻辑器件cpld动态升级装置及方法
CN105094855A (zh) * 2014-05-06 2015-11-25 南京南瑞继保电气有限公司 一种模块化多电平换流器子模块的程序在线升级方法
CN104881286A (zh) * 2015-05-28 2015-09-02 烽火通信科技股份有限公司 可编程器件配置系统及方法
CN104881286B (zh) * 2015-05-28 2018-03-20 烽火通信科技股份有限公司 可编程器件配置系统及方法
CN109558179A (zh) * 2018-11-20 2019-04-02 杭州迪普科技股份有限公司 程序代码在线加载方法、程序代码在线升级方法及系统
CN109558176A (zh) * 2018-11-30 2019-04-02 郑州云海信息技术有限公司 一种基于CPLD内部Flash的双启方法
CN110096300A (zh) * 2019-04-08 2019-08-06 上海赛治信息技术有限公司 一种fpga程序文件备份管理系统、运行方法及升级方法
CN110096300B (zh) * 2019-04-08 2023-03-14 上海赛治信息技术有限公司 一种fpga程序文件备份管理系统、运行方法及升级方法
CN112307697A (zh) * 2020-11-05 2021-02-02 中国航空工业集团公司西安航空计算技术研究所 一种fpga逻辑重加载电路
CN112307697B (zh) * 2020-11-05 2024-05-24 中国航空工业集团公司西安航空计算技术研究所 一种fpga逻辑重加载电路

Also Published As

Publication number Publication date
CN1983180A (zh) 2007-06-20
CN100483348C (zh) 2009-04-29

Similar Documents

Publication Publication Date Title
CN200976140Y (zh) 一种用于现场可编程门阵列位文件升级的系统
CN102999350B (zh) 一种数字信号处理平台中fpga程序升级在线下载方法
CN102609286B (zh) 一种基于处理器控制的fpga配置程序远程更新系统及其方法
US7391237B2 (en) Robust and economic solution for FPGA bitfile upgrade
CN103559053B (zh) 一种板卡系统及通信接口卡fpga在线升级方法
CN100472442C (zh) 一种对固件程序进行在线升级的装置及其方法
CN100383737C (zh) 单片机在线加载升级方法及系统
CN113377408B (zh) 一种高可靠sram型fpga在线升级方法及系统
CN101645055B (zh) 逻辑器件在线加载的方法、系统和处理器
CN102855146A (zh) 固件更新系统及方法
CN101131648A (zh) Usb接口控制面板在线更新方法
CN104424044A (zh) 伺服器系统
CN102339242A (zh) 计算机系统数据修复装置
CN113434162B (zh) 远程在线更新fpga多版本程序的方法
CN103513994A (zh) 一种通过pcie 进行fpga 在线升级的方法和系统
CN104077166B (zh) 基于fpga中ip核的epcs与epcq存储器在线升级方法
CN103605542A (zh) Fpga配置文件的在线升级装置
CN102346677A (zh) Fpga程序的升级方法
CN102253845B (zh) 服务器系统
CN100530146C (zh) Bios在线烧录方法
CN102043636B (zh) 现场可编程门阵列位文件下载的方法及装置
CN1677346A (zh) 可编程器件程序更新方法及可更新程序的板卡
CN115374161A (zh) 一种提高事务型数据库事务提交速度的方法和系统
CN106293531B (zh) 一种基于flash写保护的防止SD使用过程中flash被意外篡改的方法
CN111399869A (zh) 控制直写式曝光机软件升级的方法、控制单元和曝光机

Legal Events

Date Code Title Description
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: O2 TECH. INTERNATIONAL LTD.

Free format text: FORMER OWNER: AMERICA CONCAVE-CONVEX MICROSYSTEM INC.

Effective date: 20091120

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20091120

Address after: Cayman Islands (Great Britain), Grand Cayman, California, usa:

Patentee after: O2 Tech. International Ltd.

Address before: St. Patrick, 3118 Henry Road, California, USA, zip code:

Patentee before: O2 Micro Inc

C56 Change in the name or address of the patentee

Owner name: O2 TECHNOLOGY INTERNATIONAL CO., LTD.

Free format text: NEW ADDRESS: UNITED KINGDOM CAYMAN ISLANDS (UNITED KINGDOM) GRAND CAYMAN ISLAND, ZIP CODE

CP02 Change in the address of a patent holder

Address after: Cayman Islands (Great Britain) Grand Cayman, postcode:

Patentee after: O2 Tech. International Ltd.

Address before: Cayman Islands (Great Britain), Grand Cayman, California, usa:

Patentee before: O2 Tech. International Ltd.

ASS Succession or assignment of patent right

Owner name: AIYOUKE SERVICE CO., LTD.

Free format text: FORMER OWNER: O2 TECH. INTERNATIONAL LTD.

Effective date: 20120820

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20120820

Address after: Delaware

Patentee after: O2Micro Inc.

Address before: Cayman Islands (Great Britain), Grand Cayman, England

Patentee before: O2 Tech. International Ltd.

CX01 Expiry of patent term

Granted publication date: 20071114

EXPY Termination of patent right or utility model