[go: up one dir, main page]

CN101420328B - 远程升级现场可编程门阵列的系统、接口卡及方法 - Google Patents

远程升级现场可编程门阵列的系统、接口卡及方法 Download PDF

Info

Publication number
CN101420328B
CN101420328B CN2008102279748A CN200810227974A CN101420328B CN 101420328 B CN101420328 B CN 101420328B CN 2008102279748 A CN2008102279748 A CN 2008102279748A CN 200810227974 A CN200810227974 A CN 200810227974A CN 101420328 B CN101420328 B CN 101420328B
Authority
CN
China
Prior art keywords
configuration
fpga
cpld
upgrade
flash memory
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 - Fee Related
Application number
CN2008102279748A
Other languages
English (en)
Other versions
CN101420328A (zh
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.)
New H3C Technologies Co Ltd
Original Assignee
Hangzhou H3C Technologies Co Ltd
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 Hangzhou H3C Technologies Co Ltd filed Critical Hangzhou H3C Technologies Co Ltd
Priority to CN2008102279748A priority Critical patent/CN101420328B/zh
Publication of CN101420328A publication Critical patent/CN101420328A/zh
Application granted granted Critical
Publication of CN101420328B publication Critical patent/CN101420328B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

本发明公开了远程升级现场可编程门阵列的系统、接口卡及方法。系统包括:主板和接口卡,且,接口卡包括:FPGA、闪存和CPLD,其中:主板,将远程网管发来的升级数据发送给FPGA,并在接收到远程网管发来的升级指令后,向FPGA发送升级启动指令;FPGA,将主板发来的升级数据写入闪存,接收主板发来的升级启动指令,向CPLD输出启动信号;根据CPLD输入的控制信号时序,从闪存读取升级数据完成配置;CPLD,接收FPGA发来的启动信号,向FPGA输出一组控制信号时序。本发明降低了接口卡的设计成本。

Description

远程升级现场可编程门阵列的系统、接口卡及方法
技术领域
本发明涉及远程升级技术领域,具体涉及远程升级现场可编程门阵列的系统、接口卡及方法。
背景技术
为了灵活应对各行业用户的各种需求,路由器等通信设备已经大量应用了模块化设计,同一款主板通过配置不同的接口卡,可以实现多种不同的接口接入,为很多行业用户提供了更为丰富、方便、灵活的组网的方式,节省了用户的投资并减少了用户网络维护的难度。目前应用的接口卡中,大量使用了后端为外围部件互联(PCI,Peripheral Component Interconnect)接口、局部总线(Local bus)接口的总线方式,后续可能还会使用高速PCI(PCIE)总线等。
由于接口卡的种类众多,并且各种接口类型丰富,在板卡设计中会经常使用到大规模现场可编程门阵列(FPGA,Field Programmable Gate Array)芯片来实现接口协议或者接口控制。目前的路由器产品已经在多款接口卡上应用了FPGA芯片。由于FPGA通常开发复杂度高,经常会涉及到版本的升级。即便已发放到市场上的FPGA版本也存在版本升级的风险,因此实现FPGA版本的远程升级功能很有必要。
FPGA的远程升级除了要有一定的数据通道将升级数据传递到FPGA芯片上之外,还需要若干控制信号的介入,才能控制FPGA实现自我配置。但对于接口卡这种特殊形式的模块,其同主板的连接往往就是纯粹的Local bus总线、PCI总线等,没有多余可用的通用输入输出(GPIO,General PurposeInput Output)管脚,如图1所示。因此,要实现FPGA的远程升级就显得格外复杂。
图2为现有的远程升级FPGA的示意图,如图2所示,通常在接口卡上增加一片复杂可编程逻辑器件(CPLD,Complex Programmable LogicDevice)。通过CPLD来实现一定的接口配置逻辑,对FPGA进行升级。远程升级的过程为:通过网络将升级数据传输到主板的CPU上,主板的CPU通过数据通道(PCI总线等)将升级数据传送到CPLD中;然后CPLD按照一定的配置逻辑来加载FPGA,并激活FPGA,从而实现远程升级。
现有方案的缺点如下:
1、为了能与主板的CPU通信,CPLD必须实现一个复杂的PCI核(PCIcore),并且还要完成PCI接口向FPGA配置接口的转换。
2、为提高升级数据加载效率和避免占用CPU资源,需要CPLD内部的PCI core工作在Master方式,经PCI桥片仲裁申请到PCI总线后,通过直接内存访问(DMA,Direct Memory Access)控制器来从主板内存获取升级数据(一般在8Mbits左右)。因为PCI总线以高速Burst方式操作数据,而配置接口数据率较低,这样就要求CPLD必须自带较多随机访问内存(RAM,Radom Access Memory)资源,设计成内部先入先出(FIFO,First In First Out)来缓存升级数据块。
3、接口卡上有CPLD和FPGA两个master设备,必须增加一级PCI桥片作为总线仲裁。
4、接口卡上的CPLD和FPGA的PCI core必须同频率设计。但因为CPLD工艺限制,在CPLD上实现66MHz的PCI core比较困难,因此当FPGA工作在66MHz时还需要在FPGA和CPLD之间增加一级PCI桥片作总线隔离。
总的来说,该方案需要的CPLD规模大、设计复杂,还需增加PCI桥片,造成整体设计成本偏高。另外,PCI桥片的插入,还会造成FPGA同主板的通信效率降低。
发明内容
本发明提供远程升级FPGA的系统、接口卡及方法,以降低接口卡的设计成本。
本发明的技术方案是这样实现的:
一种远程升级FPGA的系统,包括:主板和接口卡,且,接口卡包括:FPGA、闪存和CPLD,其中:
主板,将远程网管发来的升级数据发送给FPGA,并在接收到远程网管发来的升级指令后,向FPGA发送升级启动指令;
FPGA,将主板发来的升级数据写入闪存,接收主板发来的升级启动指令,向CPLD输出启动信号;根据CPLD输入的控制信号时序,从闪存读取升级数据完成配置;
CPLD,接收FPGA发来的启动信号,向FPGA输出一组控制信号时序。
所述FPGA进一步包括:用于在配置完成后,向主板发起配置完成中断的模块,
且,所述主板进一步包括:用于接收FPGA上报的配置完成中断,若发现FPGA版本未更改,则重新向FPGA发送升级启动指令的模块。
一种接口卡,包括:FPGA、闪存和CPLD,其中:
FPGA,将主板发来的升级数据写入闪存,接收主板发来的升级启动指令,向CPLD输出启动信号;根据CPLD输入的控制信号时序,从闪存读取升级数据完成配置;
CPLD,接收FPGA发来的启动信号,向FPGA输出一组控制信号时序。
所述FPGA包括:
升级数据加载模块,将主板发来的升级数据写入闪存;
升级启动触发模块,接收主板发来的升级启动指令,向CPLD发送启动信号;
配置模块,接收CPLD输入的配置启动信号,进入配置模式;接收CPLD输入的配置初始化启动信号,开始配置初始化过程;确定配置初始化完成,并接收到CPLD输入的配置开始信号,则从闪存读取升级数据进行配置,确定配置完成,向CPLD输出配置完成信号,检测到CPLD设置的配置完成标志,产生配置完成中断上报给主板。
所述配置模块进一步包括:用于发现从闪存读取升级数据失败,从闪存中读取备份版本的配置数据完成配置的模块。
所述CPLD包括:
启动模块,接收FPGA发来的启动信号,向时序控制模块发送时序启动指令;
时序控制模块,接收启动模块发来的时序启动指令,产生配置启动信号输出到FPGA,并开始对配置启动、配置初始化过程计时,根据预设配置启动时长检测到配置启动过程到时,产生配置初始化启动信号输出到FPGA;根据预设配置初始化时长检测到配置初始化过程到时,产生配置开始信号输出到FPGA;接收FPGA输入的配置完成信号,设置配置完成标志。
一种远程升级FPGA的方法,应用在包含主板和接口卡的系统中,其中,接口卡包括:FPGA、闪存和CPLD,该方法包括:
FPGA接收主板转发的来自远程网管的升级数据,将该升级数据写入闪存;
FPGA接收主板发来的升级启动指令,向CPLD发送启动信号,根据CPLD产生的一组控制信号时序从闪存读取升级数据完成配置。
所述FPGA向CPLD发送启动信号之后、FPGA根据CPLD产生的一组控制信号时序从闪存读取升级数据完成配置之前进一步包括:
CPLD接收启动信号,向FPGA发送配置启动信号,并开始对配置启动过程、配置初始化过程计时;
所述FPGA根据CPLD产生的一组控制信号时序从闪存读取升级数据完成配置包括:
FPGA接收配置启动信号,进入配置模式;CPLD根据预设配置启动时长检测到配置启动过程到时时,向FPGA发送配置初始化启动信号,FPGA接收配置初始化启动信号,开始配置初始化过程;CPLD根据预设配置初始化时长检测到配置初始化过程到时时,向FPGA发送配置开始信号,FPGA接收配置开始信号,从闪存读取升级数据进行配置。
所述FPGA根据CPLD产生的一组控制信号时序从闪存读取升级数据完成配置之后进一步包括:
FPGA确定配置完成,向CPLD输出配置完成信号,检测到CPLD设置的配置完成标志,向主板上报配置完成中断,主板接收该中断后,发现FPGA版本未更改,则重新向FPGA发送升级启动指令。
所述主板发现FPGA版本未更改之后、重新向FPGA发送升级启动指令之前进一步包括:
主板判断FPGA升级失败次数是否小于预设最大次数,若是,重新向FPGA发送升级启动指令;否则,向网管上报告警。
预先在闪存中保存备份版本的配置数据;
所述FPGA根据CPLD产生的一组控制信号时序从闪存读取升级数据进一步包括:
FPGA发现从闪存读取升级数据失败,则从闪存中读取备份版本的配置数据完成配置。
与现有技术相比,本发明中,通过FPGA实现升级数据加载,CPLD的设计只需要简单的控制信号时序,无需在CPLD内设计PCI core,也无需在CPLD内设计接口转换功能,接口卡内无需PCI桥片,降低了接口卡的设计成本。同时,接口卡内软硬件接口简单,加载升级速度快(只需几ms),可靠性高;使用通用的闪存,进一步降低成本。且,本发明中在FPGA升级时,无需断电重启,可实现在线升级。
本发明实施例中,在闪存中采用双镜像机制,保证了FPGA的可靠性。
附图说明
图1为现有的接口卡结构示意图;
图2为现有的远程升级FPGA的示意图;
图3为本发明实施例提供的远程升级FPGA的系统组成图;
图4为本发明实施例提供的主板的结构示意图;
图5为本发明实施例提供的FPGA的结构示意图;
图6为本发明实施例提供的CPLD的结构示意图;
图7为本发明提供的远程升级FPGA的流程图;
图8为本发明实施例提供的远程升级FPGA的流程图;
图9为本发明实施例提供的CPLD产生控制信号时序:PROGRAMn、INITn和DONE的示意图;
图10为本发明实施例提供的主板对配置完成中断的处理流程图。
具体实施方式
下面结合附图及具体实施例对本发明再作进一步详细的说明。
图3为本发明实施例提供的远程升级FPGA的系统组成图,如图3所示,该系统包括:主板31和接口卡32,其中,接口卡可包括:FPGA 321、闪存322和CPLD 323。
主板31与FPGA 321之间的接口可为PCI接口,FPGA 321与闪存322之间的接口可为串行外围设备接口(SPI,Serial Peripheral Interface)。
各部分的功能如下:
主板31:接收远程网管发来的升级数据,将升级数据发送到FPGA 321;在接收到远程网管发来的升级指令后,向FPGA 321发送一个升级启动指令。
FPGA 321:接收主板31发来的升级数据,将该升级数据写入闪存322;接收主板31发来的升级启动指令,向CPLD 323发送一个启动信号;根据CPLD 323输入的控制信号时序,从闪存322读取升级数据完成配置。
闪存322:保存升级数据。
CPLD 323:接收FPGA 321发来的启动信号,产生用于控制升级过程的控制信号时序输出到FPGA 321。
如图4所示,其中,主板31可包括:升级数据传输模块311、升级启动指示模块312和配置完成中断处理模块313,其中:
升级数据传输模块311:接收远程网管发来的升级数据,将升级数据发送到FPGA 321。
升级启动指示模块312:接收远程网管发来的升级指令或接收配置完成中断处理模块313发来的重启升级指令,向FPGA 321发送一个升级启动指令。
配置完成中断处理模块313:接收FPGA 321上报的配置完成中断,在中断服务程序中从FPGA版本寄存器中读取FPGA版本,若FPGA版本更改,则对FPGA进行业务配置,并根据业务需要决定是否对接口卡进行复位;若FPGA版本未更改,则判断FPGA升级次数是否小于最大升级次数,若小于,则向升级启动指示模块312发送重启升级指令;否则,向网管上报告警。
如图5所示,FPGA 321可包括:升级数据加载模块3211、升级启动触发模块3212和配置模块3213,其中:
升级数据加载模块3211:接收主板31发来的升级数据,将该升级数据写入闪存322。
升级启动触发模块3212:接收主板31发来的升级启动指令,向CPLD323发送一个启动信号。
配置模块3213:检测到CPLD 323输入的PROGRAMn信号的下降沿,从正常工作模式进入配置模式,并产生DONE信号的下降沿;检测到CPLD323输入的PROGRAMn信号的上升沿,开始配置初始化过程;确定配置初始化完成,并检测到CPLD 323输入的INITn高电平信号,则产生INITn信号的上升沿,从闪存读取升级数据,根据升级数据进行配置;确定配置完成,向CPLD 323输出DONE信号的上升沿,检测到CPLD323的配置完成标志,产生一个配置完成中断上报给主板。
配置模块3213进一步用于,在发现从内存322读取升级数据失败时,从内存322读取备份版本的配置数据完成配置。这里,闪存322中设置有两个完全对称的配置数据区域,一个区域用于存放新版本的配置数据(即升级数据),另一个区域用于存放备份版本的配置数据,该备份版本通常为升级前的版本。
如图6所示,CPLD 323可包括:启动模块3231、时序控制模块3232和配置完成检测模块3233,其中:
启动模块3231:接收FPGA 321发来的启动信号,向时序控制模块3232发送时序启动指令。
时序控制模块3232:预先设置配置启动时长、配置初始化时长;接收启动模块3231发来的时序启动指令,产生PROGRAMn信号的下降沿输出到FPGA 321,打开配置启动定时器,同时控制INITn信号输出低电平,打开配置初始化定时器;检测到配置启动定时器到时,产生PROGRAMn信号的上升沿输出到FPGA 321;检测到配置初始化定时器到时,产生INITn高电平信号沿输出到FPGA 321。
配置完成检测模块3233:检测到FPGA 321输入的DONE信号的上升沿,设置配置完成标志。
图7为本发明提供的远程升级FPGA的流程图,如图7所示,其具体步骤如下:
步骤701:远程网管通过网络将升级数据传输到主板上,主板通过数据通道如:PCI接口将升级数据传送到接口卡上的FPGA。
步骤702:FPGA通过逻辑接口如:SPI接口将升级数据写入接口卡上的闪存。
步骤703:远程网管向主板发送升级指令,主板接收升级指令,向FPGA发送升级启动指令,FPGA接收升级启动指令后向接口卡上的CPLD发起一个启动信号。
此时,FPGA处于User mode(正常工作模式)下。
为了提高启动信号的抗干扰性,FPGA可以将启动信号设计成一个序列。
步骤704:CPLD接收FPGA发来的启动信号,产生一组控制信号时序输出到FPGA,FPGA根据该控制信号时序从闪存读取升级数据完成配置。
图8为本发明实施例提供的远程升级FPGA的流程图,如图8所示,其具体步骤如下:
步骤801:在CPLD上设置配置启动时长、配置初始化时长,将FPGA的配置完成中断的使能位默认为打开。
由于FPGA在配置完成后需要向主板上报中断,因此,本步骤中需要将FPGA的配置完成中断的使能位默认为打开。
步骤802:主板通过PCI接口将远程网管发来的升级数据传送到FPGA,FPGA将升级数据写入闪存。
本步骤中,FPGA将升级数据写入闪存时,FPGA工作在user mode下。
FPGA与闪存间的连接管脚为多用途管脚。该管脚在FPGA工作在不同模式时,其用途是不同的。在配置模式下,FPGA内部硬件会自动将该连接管脚设置为配置专用的SPI接口,当FPGA工作在user mode下时,该连接管脚由代码设计编程为SPI接口,以用于FPGA向闪存写入数据。
步骤803:主板接收远程网管发来的升级指令,向FPGA发送一个升级启动指令,FPGA收到该指令通过SPI接口向CPLD发送一个启动信号。
步骤804:CPLD接收启动信号,产生PROGRAMn信号的下降沿输出到FPGA,打开配置启动定时器,同时控制INITn信号输出低电平,打开配置初始化定时器。
配置启动定时器的定时时长等于配置启动时长,配置初始化定时器的定时时长等于配置初始化时长。
图9给出了CPLD产生控制信号时序:PROGRAMn、INITn和DONE的示意图。
步骤805:FPGA检测到PROGRAMn信号的下降沿,从User mode切换到Configuration mode(配置模式),同时产生DONE信号的下降沿。
步骤806:CPLD检测到配置启动定时器到时,产生PROGRAMn信号的上升沿输出到FPGA。
步骤807:FPGA检测到PROGRAMn信号的上升沿,开始配置初始化过程。
步骤808:CPLD检测到配置初始化定时器到时,产生INITn高电平信号输出到FPGA。
步骤809:FPGA确定配置初始化完成,并检测到INITn高电平信号,则产生INITn信号的上升沿,从闪存读取升级数据,根据升级数据进行配置。
步骤810:FPGA确定配置完成,产生DONE信号的上升沿。
步骤811:CPLD检测到DONE信号的上升沿,设置配置完成标志。
步骤812:FPGA检测到配置完成标志,产生一个配置完成中断上报给主板。
例如:可利用CPLD上的一个管脚来输出配置完成信号,FPGA检测到该信号,则产生配置完成中断。
由于在线升级过程的异常断电等原因,FPGA升级会失败,从而导致FPGA无法正确配置。为了避免升级失败而造成的FPGA配置异常,本发明实施例中,可以在闪存中采用双镜像机制,即在闪存中设置两个完全对称的配置数据区域,一个区域用于存放新版本的配置数据(即升级数据),另一个区域用于存放备份版本的配置数据。当FPGA在升级过程中,发现升级数据无法读取时,则切换到另一个区域读取备份版本的配置数据完成配置,这样,FPGA就可正常启动,并可在启动后重新进行升级。
以下给出主板对配置完成中断的处理:
图10为本发明实施例提供的主板对配置完成中断的处理流程图,如图10所示,其具体步骤如下:
步骤1001:主板接收FPGA上报的配置完成中断,在中断服务程序中从FPGA版本寄存器中读取FPGA版本。
步骤1002:主板判断FPGA版本是否更改,若是,执行步骤1003;否则,执行步骤1004。
升级成功后,寄存器中的FPGA版本会自动更改为新版本;若升级失败,则FPGA版本不会发生更改。
步骤1003:主板对FPGA进行业务配置,根据业务需要决定是否对接口卡进行复位,本流程结束。
步骤1004:主板确定本次升级失败,记录升级失败次数n。
步骤1005:主板判断n<Nmax是否成立,若是,执行步骤1006;否则,执行步骤1007。
Nmax为预设最大升级次数。
步骤1006:主板重新向FPGA发送升级启动指令,并在接收到FPGA发来的配置完成中断后,返回步骤1001。
步骤1007:主板向网管上报告警。
本发明实施例中的FPGA可以采用Lattice ECP2系列FPGA。
以上所述仅为本发明的过程及方法实施例,并不用以限制本发明,凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (11)

1.一种远程升级现场可编程门阵列FPGA的系统,其特征在于,该系统包括:主板和接口卡,且,接口卡包括:FPGA、闪存和复杂可编程逻辑器件CPLD,其中:
主板,将远程网管发来的升级数据发送给FPGA,并在接收到远程网管发来的升级指令后,向FPGA发送升级启动指令;
FPGA,将主板发来的升级数据写入闪存,接收主板发来的升级启动指令,向CPLD输出启动信号;根据CPLD输入的控制信号时序,从闪存读取升级数据完成配置;
CPLD,接收FPGA发来的启动信号,产生配置启动信号输出到FPGA,并开始对配置启动、配置初始化过程计时,根据预设配置启动时长检测到配置启动过程到时,产生配置初始化启动信号输出到FPGA;根据预设配置初始化时长检测到配置初始化过程到时,产生配置开始信号输出到FPGA。
2.如权利要求1所述的系统,其特征在于,所述FPGA进一步包括:用于在配置完成后,向主板发起配置完成中断的模块,
且,所述主板进一步包括:用于接收FPGA上报的配置完成中断,若发现FPGA版本未更改,则重新向FPGA发送升级启动指令的模块。
3.一种接口卡,其特征在于,该接口卡包括:FPGA、闪存和CPLD,其中:
FPGA,将主板发来的升级数据写入闪存,接收主板发来的升级启动指令,向CPLD输出启动信号;根据CPLD输入的控制信号时序,从闪存读取升级数据完成配置;
CPLD,接收FPGA发来的启动信号,产生配置启动信号输出到FPGA,并开始对配置启动、配置初始化过程计时,根据预设配置启动时长检测到配置启动过程到时,产生配置初始化启动信号输出到FPGA;根据预设配置初始化时长检测到配置初始化过程到时,产生配置开始信号输出到FPGA。 
4.如权利要求3所述的接口卡,其特征在于,所述FPGA包括:
升级数据加载模块,将主板发来的升级数据写入闪存;
升级启动触发模块,接收主板发来的升级启动指令,向CPLD发送启动信号;
配置模块,接收CPLD输入的配置启动信号,进入配置模式;接收CPLD输入的配置初始化启动信号,开始配置初始化过程;确定配置初始化完成,并接收到CPLD输入的配置开始信号,则从闪存读取升级数据进行配置,确定配置完成,向CPLD输出配置完成信号,检测到CPLD设置的配置完成标志,产生配置完成中断上报给主板。
5.如权利要求4所述的接口卡,其特征在于,所述配置模块进一步包括:用于发现从闪存读取升级数据失败,从闪存中读取备份版本的配置数据完成配置的模块。
6.如权利要求3至5任一所述的接口卡,其特征在于,所述CPLD包括:
启动模块,接收FPGA发来的启动信号,向时序控制模块发送时序启动指令;
时序控制模块,接收启动模块发来的时序启动指令,产生配置启动信号输出到FPGA,并开始对配置启动、配置初始化过程计时,根据预设配置启动时长检测到配置启动过程到时,产生配置初始化启动信号输出到FPGA;根据预设配置初始化时长检测到配置初始化过程到时,产生配置开始信号输出到FPGA;接收FPGA输入的配置完成信号,设置配置完成标志。
7.一种远程升级FPGA的方法,应用在包含主板和接口卡的系统中,其中,接口卡包括:FPGA、闪存和CPLD,其特征在于,该方法包括:
FPGA接收主板转发的来自远程网管的升级数据,将该升级数据写入闪存;
FPGA接收主板发来的升级启动指令,向CPLD发送启动信号,CPLD接收启动信号,产生配置启动信号输出到FPGA,并开始对配置启动、配置初始化过程计时,根据预设配置启动时长检测到配置启动过程到时,产生配置初始 化启动信号输出到FPGA;根据预设配置初始化时长检测到配置初始化过程到时,产生配置开始信号输出到FPGA;
FPGA根据CPLD产生的一组控制信号时序从闪存读取升级数据完成配置。
8.如权利要求7所述的方法,其特征在于,
所述FPGA根据CPLD产生的一组控制信号时序从闪存读取升级数据完成配置包括:
FPGA接收配置启动信号,进入配置模式;CPLD根据预设配置启动时长检测到配置启动过程到时时,向FPGA发送配置初始化启动信号,FPGA接收配置初始化启动信号,开始配置初始化过程;CPLD根据预设配置初始化时长检测到配置初始化过程到时时,向FPGA发送配置开始信号,FPGA接收配置开始信号,从闪存读取升级数据进行配置。
9.如权利要求7或8所述的方法,其特征在于,所述FPGA根据CPLD产生的一组控制信号时序从闪存读取升级数据完成配置之后进一步包括:
FPGA确定配置完成,向CPLD输出配置完成信号,检测到CPLD设置的配置完成标志,向主板上报配置完成中断,主板接收该中断后,发现FPGA版本未更改,则重新向FPGA发送升级启动指令。
10.如权利要求9所述的方法,其特征在于,所述主板发现FPGA版本未更改之后、重新向FPGA发送升级启动指令之前进一步包括:
主板判断FPGA升级失败次数是否小于预设最大次数,若是,重新向FPGA发送升级启动指令;否则,向网管上报告警。
11.如权利要求7或8所述的方法,其特征在于,预先在闪存中保存备份版本的配置数据;
所述FPGA根据CPLD产生的一组控制信号时序从闪存读取升级数据进一步包括:
FPGA发现从闪存读取升级数据失败,则从闪存中读取备份版本的配置数据完成配置。 
CN2008102279748A 2008-12-03 2008-12-03 远程升级现场可编程门阵列的系统、接口卡及方法 Expired - Fee Related CN101420328B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2008102279748A CN101420328B (zh) 2008-12-03 2008-12-03 远程升级现场可编程门阵列的系统、接口卡及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2008102279748A CN101420328B (zh) 2008-12-03 2008-12-03 远程升级现场可编程门阵列的系统、接口卡及方法

Publications (2)

Publication Number Publication Date
CN101420328A CN101420328A (zh) 2009-04-29
CN101420328B true CN101420328B (zh) 2010-12-08

Family

ID=40630949

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008102279748A Expired - Fee Related CN101420328B (zh) 2008-12-03 2008-12-03 远程升级现场可编程门阵列的系统、接口卡及方法

Country Status (1)

Country Link
CN (1) CN101420328B (zh)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101738977B (zh) * 2009-11-24 2012-05-23 福建星网锐捷网络有限公司 一种切换主控芯片工作模式的方法及其网络设备
CN101853172B (zh) * 2010-05-24 2014-07-02 中兴通讯股份有限公司 复杂可编程逻辑器件cpld动态升级装置及方法
CN103064695A (zh) * 2011-10-21 2013-04-24 上海湾流仪器技术有限公司 现场可编程门阵列的动态加载系统及其加载方法
CN103513994B (zh) * 2012-06-19 2017-10-20 记忆科技(深圳)有限公司 一种通过pcie 进行fpga 在线升级的方法和系统
CN103631674B (zh) * 2012-08-24 2016-05-04 京信通信系统(中国)有限公司 嵌入cpu的fpga及其启动方法
CN103559053B (zh) * 2013-10-30 2017-02-08 迈普通信技术股份有限公司 一种板卡系统及通信接口卡fpga在线升级方法
CN103617054A (zh) * 2013-11-15 2014-03-05 中国航空无线电电子研究所 一种远程加载fpga配置文件的装置及加载方法
CN107766065A (zh) * 2016-08-19 2018-03-06 西安中车永电捷通电气有限公司 Fpga芯片的软件升级方法及系统
CN106371877A (zh) * 2016-08-30 2017-02-01 浪潮(北京)电子信息产业有限公司 一种现场可编程门阵列板卡算法更新系统
CN106406936A (zh) * 2016-08-31 2017-02-15 中国船舶重工集团公司第七〇二研究所 一种fpga程序多版本管理装置及方法
CN106484475A (zh) * 2016-10-09 2017-03-08 珠海全志科技股份有限公司 固件启动方法、装置及嵌入式设备
CN106776432B (zh) * 2016-12-12 2019-06-25 中国航空救生研究所 一种机载弹射救生产品在线软件升级电路
CN107358928B (zh) * 2017-08-21 2022-12-23 武汉精测电子集团股份有限公司 一种超高分辨率图形信号发生器及其启动、升级方法
CN107577563A (zh) * 2017-09-26 2018-01-12 晶晨半导体(上海)股份有限公司 一种系统升级异常断电的保护方法及终端设备
CN107819883A (zh) * 2017-12-13 2018-03-20 天津光电通信技术有限公司 一种多信号处理设备及其对fpga程序的远程升级方法
CN108632281A (zh) * 2018-05-09 2018-10-09 西安电子科技大学工程技术研究院有限公司 一种建筑能耗数据采集方法
CN108664264A (zh) * 2018-08-16 2018-10-16 成都爱斯顿科技有限公司 一种基于cpu通过jtag方式远程更新fpga的装置和方法
CN109557857B (zh) * 2018-12-10 2021-03-16 浪潮(北京)电子信息产业有限公司 基于Intel平台时序启动信号控制方法、装置及系统
CN109947453A (zh) * 2019-03-29 2019-06-28 浪潮商用机器有限公司 一种cpld升级方法、装置、系统、控制器及存储介质
CN110442365A (zh) * 2019-07-26 2019-11-12 锐捷网络股份有限公司 可编程逻辑器件的升级方法及装置
CN112559017A (zh) * 2019-09-10 2021-03-26 北京嗨动视觉科技有限公司 插卡式设备的程序升级方法、装置及插卡式设备、系统
CN111208753A (zh) * 2019-12-24 2020-05-29 西安旭彤电子科技股份有限公司 一种基于arm的fpga启动及在线升级方法
CN112181526B (zh) * 2020-09-30 2022-11-11 锐捷网络股份有限公司 设备启动方法及装置
CN117171097A (zh) * 2023-08-31 2023-12-05 中科驭数(北京)科技有限公司 一种现场可编程门阵列远程加载方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1462954A (zh) * 2003-06-18 2003-12-24 上海北大方正科技电脑系统有限公司 一种打印机
CN1928824A (zh) * 2006-09-20 2007-03-14 华为技术有限公司 一种加载fpga目标程序的方法及系统
CN1983180A (zh) * 2005-04-29 2007-06-20 美国凹凸微系有限公司 一种用于现场可编程门阵列位文件升级的系统及方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1462954A (zh) * 2003-06-18 2003-12-24 上海北大方正科技电脑系统有限公司 一种打印机
CN1983180A (zh) * 2005-04-29 2007-06-20 美国凹凸微系有限公司 一种用于现场可编程门阵列位文件升级的系统及方法
CN1928824A (zh) * 2006-09-20 2007-03-14 华为技术有限公司 一种加载fpga目标程序的方法及系统

Also Published As

Publication number Publication date
CN101420328A (zh) 2009-04-29

Similar Documents

Publication Publication Date Title
CN101420328B (zh) 远程升级现场可编程门阵列的系统、接口卡及方法
US10845868B2 (en) Methods and apparatus for running and booting an inter-processor communication link between independently operable processors
KR101782246B1 (ko) 독립적으로 동작가능한 프로세서들 간에 에러 정보의 제어된 복구를 위한 방법들 및 장치들
CN103559053B (zh) 一种板卡系统及通信接口卡fpga在线升级方法
CN101271332B (zh) 紧凑型一体化冗余控制器及其控制方法
CN101545933B (zh) 用于雷电探测的远程智能升级装置及其实现方法
CN101625568B (zh) 一种基于数据同步控制器的主控单元热备份系统和实现方法
WO2021098485A1 (zh) PCIe设备的上下电控制方法以及系统
CN103270497A (zh) 实时错误恢复的方法和系统
CN114116378B (zh) 获取PCIe设备温度的方法、系统、终端及存储介质
WO2011029385A1 (zh) 在线加载逻辑器件的方法、系统和处理器
CN114003445B (zh) Bmc的i2c监控功能测试方法、系统、终端及存储介质
CN103927279A (zh) Fpga配置方法及系统、处理器
CN112231005A (zh) 一种基于uboot管理fpga版本的方法
CN110968352A (zh) 一种pcie设备的复位系统及服务器系统
US7549009B2 (en) High-speed PCI interface system and a reset method thereof
CN118331907B (zh) 服务器、服务器的数据传输方法以及存储介质
US20240394160A1 (en) Hot storage backup system and method for server
US8380911B2 (en) Peripheral device, program and methods for responding to a warm reboot condition
CN113849355B (zh) I2c速率自适应调整方法、系统、终端及存储介质
CN116204214A (zh) Bmc升级方法、装置、系统、电子设备及存储介质
CN210380890U (zh) 一种Modbus设备的通讯系统及SIS系统
CN114356411A (zh) 一种应用于安培服务器的硬盘上下电控制系统
CN100375941C (zh) 计算机系统及系统重置方法
US8185678B1 (en) Method and apparatus for controlling a data bus

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP03 Change of name, title or address

Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No.

Patentee after: NEW H3C TECHNOLOGIES Co.,Ltd.

Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base

Patentee before: HANGZHOU H3C TECHNOLOGIES Co.,Ltd.

CP03 Change of name, title or address
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20101208

CF01 Termination of patent right due to non-payment of annual fee