首页> 中国专利> 一种单板及单板在线升级的方法

一种单板及单板在线升级的方法

摘要

本发明提供了一种单板,所述单板包括主控单元、FPGA单元、第一存储单元和第二存储单元,其中,所述主控单元,用于从所述FPGA单元加载最小控制逻辑,加载成功后从第二存储单元读取FPGA的正式版本并存储,对FPGA单元进行重新加载;所述FPGA单元,用于自动从第一存储单元加载最小控制逻辑;所述第一存储单元,用于存储最小控制逻辑;所述第二存储单元,用于存储FPGA的正式版本;本发明还提供了一种单板在线升级的方法;应用本发明的单板及单板在线升级的方法,不仅节省了单板成本,而且还实现了单板FPGA单元的在线升级。

著录项

  • 公开/公告号CN102033767A

    专利类型发明专利

  • 公开/公告日2011-04-27

    原文格式PDF

  • 申请/专利权人 中兴通讯股份有限公司;

    申请/专利号CN201010578746.2

  • 发明设计人 崔跃;陈志兵;

    申请日2010-12-08

  • 分类号G06F9/445;

  • 代理机构深圳市爱派知识产权事务所;

  • 代理人王桂香

  • 地址 518057 广东省深圳市南山区高新技术产业园科技南路中兴通讯大厦法务部

  • 入库时间 2023-12-18 02:26:11

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2015-08-12

    授权

    授权

  • 2012-07-11

    实质审查的生效 IPC(主分类):G06F9/445 申请日:20101208

    实质审查的生效

  • 2011-04-27

    公开

    公开

说明书

技术领域

本发明涉及数据通信领域,具体的说,涉及一种单板及单板在线升级的方法。

背景技术

在通信技术领域,FPGA(Field Programmable Gate Array,现场可编程门阵列)具有密度越来越高,速度越来越快,容量越来越大,可重新分配等诸多优点,但是其掉电易失性决定了其应用范围有一些局限。

FPGA的下载方式主要有两种,一种是FPGA主动加载,即FPGA主动从非易失存储器(一般是ROM)中读取逻辑;另一种是被动加载,即FPGA等待主控器件给其下载逻辑。

与FPGA相对应的另一种逻辑器件是CPLD(Complex Programmable Logic Device,复杂可编程逻辑器件),虽然CPLD的速度慢,容量小,但是却具有掉电不易失的特点。

因此大多数硬件系统单板的架构通常由CPU+CPLD+FPGA+非易失存储器,如图1所示为现有单板的架构示意图,现有单板由CPU、CPLD、FPGA和Flash组成,其中CPU为主控单元,CPLD用于基本控制功能,FPGA用于实现业务功能,Flash用于存储FPGA版本,其利用CPLD的掉电不易失的特点和FPGA的高速,大容量特点来实现具体功能。

其工作流程大体如下:

首先,单板上电,CPLD内的控制逻辑由于具有掉电不易失的特点,所以最先工作,利用IO接口控制整个单板的初始状态,并完成CPU启动时所需的控制及逻辑工作;

然后,CPU开始加载,加载成功后,读出Flash中的FPGA版本,利用和FPGA的加载总线对FPGA进行加载。

存储在非易失存储器中的FPGA版本可以通过对外接口进行升级。

上述方法虽然灵活,但是由于FPGA具有掉电易失的特点,因此必须要增加一个CPLD来实现最初始的逻辑控制功能。因此这种方案成本较高,设计复杂,且CPLD一般由JTAG(Joint Test Action Group,联合测试行为组织)接口下载,因此不能实现在线升级,不利于远程维护和升级逻辑。

发明内容

本发明解决的技术问题是提供了一种单板及单板在线升级的方法,实现了单板的自动在线升级。

为了解决上述问题,本发明提供了一种单板,所述单板包括主控单元、FPGA单元、第一存储单元和第二存储单元,其中,

所述主控单元,用于从所述FPGA单元加载最小控制逻辑,加载成功后从第二存储单元读取FPGA的正式版本并存储,对FPGA单元进行重新加载;

所述FPGA单元,用于自动从第一存储单元加载最小控制逻辑;

所述第一存储单元,用于存储最小控制逻辑;

所述第二存储单元,用于存储FPGA的正式版本。

进一步地,所述单板还包括加载模块选择单元,所述加载模块选择单元默认为自加载模式;

所述FPGA单元用于通过所述加载模块选择单元自动从第一存储单元加载最小控制逻辑;

所述最小控制逻辑包括主控单元启动所需的控制及逻辑。

上述的单板,其中,所述主控单元用于向所述加载模式选择单元发送控制命令以改变加载模块选择单元的状态;

所述加载模块选择单元用于接收所述控制命令后,将所述自加载模式转变为被动加载。

进一步地,所述单板还包括监控电路单元,

所述主控单元和所述FPGA单元在加载成功后,向监控电路发送加载成功消息;

所述监控电路单元,用于在预定时间收不到主控单元和FPGA单元的加载成功消息时,触发单板的复位功能,清除FPGA单元的内容并触发FPGA单元进行自动加载。

上述的单板,其中,所述主控单元还用于通过外部接口进行FPGA版本的升级,并将FPGA版本保存至第二存储单元,以进行FPGA单元的版本更新。

本发明还提供了一种单板在线升级的方法,该方法包括:

FPGA单元自动从第一存储单元加载最小控制逻辑;

主控单元从所述FPGA单元加载所述最小控制逻辑,加载成功后,从第二存储单元中读取FPGA的正式版本并存储;

所述主控单元对FPGA单元进行重新加载,在加载成功后,完成在线升级。

上述的方法,其中,所述FPGA单元自动从第一存储单元加载最小控制逻辑具体为:

所述FPGA单元通过加载模块选择单元自动从第一存储单元中加载最小控制逻辑,所述加载模块选择单元默认为自加载模式;

所述最小控制逻辑包括主控单元启动所需的控制及逻辑。

上述的方法,其中,在FPGA单元自动加载后,主控单元重新加载前,所述方法还包括:

所述主控单元向加载模块选择单元发送控制命令,改变所述加载模块选择单元的模式为被动加载,并清除所述FPGA单元的最小控制逻辑;

上述的方法,所述方法进一步包括,

所述主控单元和所述FPGA单元在加载成功后,向监控电路发送加载成功消息;

若所述监控电路单元在预定时间收不到主控单元和FPGA单元的加载成功消息时,触发单板的复位功能,清除FPGA单元的内容并触发FPGA单元进行自动加载。

上述的方法,所述方法进一步包括,

所述主控单元通过外部接口进行FPGA版本的升级,并将FPGA版本保存至第二存储单元,以进行FPGA单元的版本更新。

应用上述技术方案,引入了第一存储单元,实现了FPGA单元的自动加载功能,即实现了掉电后仍可保留逻辑的功能,从而省去了现有方案中的CPLD,节省了单板成本。利用主控单元加载后,读取第二存储单元的正式FPGA版本并存储,并通过改变FPGA单元的下载模式对FPGA单元重新下载,实现对FPGA单元的在线升级。另外,第二存储单元可以同时存储多个FPGA版本,通过对外接口下载其他版本到第二存储单元中,通过更换FPGA的版本实现在线升级。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是现有单板的架构示意图;

图2是本发明提供的一种单板结构图;

图3是本发明提供的一种单板具体实施例结构图;

图4是本发明提供的一种单板在线升级的方法流程图;

图5是本发明提供的一种单板在线升级的方法具体实施例流程图。

具体实施方式

为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚、明白,以下结合附图和实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

如图2所述,提供了一种单板,该单板包括主控单元、FPGA单元、第一存储单元和第二存储单元,其中,

所述主控单元,用于从所述FPGA单元加载最小控制逻辑,加载成功后从第二存储单元读取FPGA的正式版本并存储,对FPGA单元进行重新加载;

所述FPGA单元,用于自动从第一存储单元加载最小控制逻辑,该最小控制逻辑包括主控单元启动所需的控制及逻辑;

所述第一存储单元,用于存储最小控制逻辑;

所述第二存储单元,用于存储FPGA的正式版本。

在该单板中,主控单元为CPU或其他处理器,第一存储单元和第二存储单元为非易失存储单元,第一存储单元可以为ROM,第二存储单元可以是Flash。

如图3所示,提供了一种单板的具体实施例,该单板包括CPU单元101,FPGA单元102,监控电路单元103,加载模块选择单元104,以及非易失存储单元,分别是ROM105和Flash106,其中,

CPU单元101,具有通用IO接口和对外接口,用于通过加载模块选择单元104加载所述最小控制逻辑,加载成功后,通知监控电路单元103,从Flash106中读取FPGA的正式版本,读取后存在CPU单元101的内存中;发送控制命令改变加载模块选择单元104的状态为被动加载,并清除FPGA单元102的最小控制逻辑,然后对FPGA单元102进行重新加载,加载后,根据FPGA单元102内部某些功能的操作判断加载是否成功,如果成功,单板可以进行后续的业务,否则,重新读取Flash06的版本对FPGA单元进行加载。

另外,CPU单元通过外部接口(如网口等)从维护中心或者后台,进行FPGA版本的升级,并把版本保存到Flash中,利用CPU单元进行FPGA单元的版本更新,即在线升级。

FPGA单元102,用于通过加载模块选择单元104自动从非易失存储器105中加载最小控制逻辑,该最小控制逻辑包括但不限于CPU启动所需的控制及逻辑,其作用只是实现CPU启动并保证能够正常访问FLASH,加载成功后通知监控电路单元103;

监控电路单元103,由FPGA与复位电路共同实现,FPGA单元和CPU单元正常工作后向复位电路固定输出时钟脉冲,如在预定时间内收不到CPU单元101和FPGA单元102的固定时钟脉冲时,触发单板的复位功能,清除FPGA单元的内容并触发FPGA单元进行重新自动加载;

加载模块选择单元104,用于控制FPGA单元102的加载模式选择引脚,并根据CPU单元的控制信号状态控制FPGA单元102的加载模式,决定是自加载模式或被动加载模式,默认为自加载模式。

非易失存储器单元,包括ROM105,其存储最小控制逻辑,保证CPU单元正常启动;以及Flash106,其存储FPGA单元的正式版本,可以存储多个版本,CPU单元通过读取不同版本自动切换即实现在线升级。

本发明还提供了一种单板在线升级的方法,如图4所示,应用在图2所示的单板中,包括如下步骤:

S401,FPGA单元自动从第一存储单元加载最小控制逻辑,该最小控制逻辑包括主控单元启动所需的控制及逻辑;

S402,主控单元从所述FPGA单元加载所述最小控制逻辑,加载成功后,从第二存储单元中读取FPGA的正式版本并存储;

S403,所述主控单元对FPGA单元进行重新加载,在加载成功后,完成在线升级。

如图5所示,提供了一种单板在线升级的方法的具体实施例,应用在图3所示的单板中,包括如下步骤:

S501,单板上电加载,此时整个系统均被复位,没有任何版本,同时FPGA单元102内也无逻辑,加载模块选择单元104的默认状态为自动加载;

S502,FPGA单元102通过加载模块选择单元104自动从ROM105中加载最小控制逻辑,该最小控制逻辑包括但不限于CPU启动所需的控制及逻辑,也称为系统控制版本,其作用只是实现CPU启动并保证能够正常访问Flash,加载成功后通知监控电路单元103,若监控电路单元103在预定时间没有收到加载成功通知,则会自动触发复位;

S503,FPGA单元102自动加载成功后,CPU单元101通过加载模块选择单元104加载所述最小控制逻辑,加载成功后,通知监控电路单元103,若监控电路单元103在预定时间没有收到加载成功通知,则会自动触发复位;

S504,CPU单元101加载成功后,从Flash106中读取FPGA的正式版本,读取后存在CPU单元101的内存中;

S505,CPU单元向加载模块选择单元104发送控制命令,改变加载模块选择单元104的状态为被动加载,并清除FPGA单元102的最小控制逻辑;

S506,CPU单元101对FPGA单元102进行重新加载,加载后,根据FPGA单元102内部某些功能的操作判断加载是否成功,如果成功,单板可以进行后续的业务,完成了在线升级,否则,重新读取Flash06的版本对FPGA单元进行加载。

另外,CPU可以通过外部接口(如网口等)从维护中心或者后台,进行FPGA版本的升级,并把版本保存到Flash中,利用CPU进行FPGA的版本更新.

应用上述技术方案,引入了第一存储单元(ROM),实现了FPGA单元的自动加载功能,即实现了掉电后仍可保留逻辑的功能,从而节省了现有方案中的CPLD。第一存储单元中存储的是通用逻辑,其作用是实现主控单元启动并保证能够正常访问Flash,因此其并无在线升级需求。利用主控单元加载后,读取第二存储单元的正式FPGA版本并存储,并通过改变FPGA单元的下载模式对FPGA单元重新下载,实现对FPGA单元的在线升级。另外,第二存储单元可以同时存储多个FPGA版本,通过对外接口下载其他版本到第二存储单元中,通过更换FPGA的版本实现在线升级。

上述说明示出并描述了本发明的一个优选实施例,但如前所述,应当理解本发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述发明构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权力要求的保护范围内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号