一种分布式系统的可编程逻辑器件的软件升级方法和设备技术方案

技术编号:4005104 阅读:199 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种分布式系统的可编程逻辑器件的软件升级方法和设备,在分布式通信系统中,实现主控板和各业务板的PLD自动检测和匹配,保证了PLD在被主CPU控制使用后软件版本和逻辑电路是正确的,提升了复杂的分布式通信系统的可靠性,并且,通过自匹配方式保证了所有PLD软件与系统软件之间的匹配关系,简化了系统维护操作过程,给维护管理带来便利。

【技术实现步骤摘要】

本专利技术涉及通信
,特别涉及一种分布式系统的可编程逻辑器件的软件升 级方法和设备。
技术介绍
在现在电子产品设计中,电子产品功能和设计越来越复杂,可编程逻辑器件 (Programmable Logic Device, PLD)被广泛应用。目前,在数据通信等产品的单板设计中,PLD帮助CPU(Central ProcessingUnit, 中央处理单元)控制外围芯片和设备,以及收集外围芯片、电路中断和其它状态等信息, CPU可以轻而易举的通过对可编程逻辑器件内部控制/状态寄存器的读写操作,完成对外 设的控制和状态访问。可编程逻辑器件可以通过编程来实现其功能,当通信系统需要增加或者修改某些 功能时,需要对可编程逻辑器件的程序进行更新,即对可编程逻辑器件中的软件进行版本 升级。由于可编程逻辑器件是CPU外围非常重要的控制芯片,其功能是否正常将直接影响 到整块单板的使用。可编程逻辑器件功能错误主要有两大原因一是芯片逻辑电路有问题;二是PLD的写入的程序错误,与CPU运行的系统软件不匹配。一旦可编程逻辑器件功能错误,将导致系统软件无法正常工作,整个通信系统瘫 痪。所以,在存在PLD的通信系统中,需要一种检测手段,检测以上两大错误。目前,对PLD进行检测主要是通过JTAG(Joint Test Action Group,联合测试行为 组织)边界扫描(Boundary Scan)技术,JTAG边界扫描是在芯片级层次上嵌入测试电路,以 形成全面的电路板级测试协议。利用边界扫描工业标准可以对复杂的单板装配进行测试、 调试和在系统设备编程,并诊断出硬件问题。除了可以进行电路板测试外,还能对可编程逻 辑PLD进行编程和扫描。JTAG接口是一个四线串行接口,用于访问复杂的集成电路,例如微处理器、可编 程逻辑器件等。边界扫描技术通过JTAG接口对支持边界扫描的器件的引脚进行完全的控制、设 置和读取其状态,其中,可编程逻辑器件的每个引脚对应一个边界扫描单元,这些单元内部 连接成链状。当使用测试时钟、测试模式选择控制可编程逻辑器件内部专用的测试访问接口控 制器打开边界扫描功能后,则通过内部边界扫描链可以任意读取或设置每一个引脚的状 态。这样,配合专用软件就能够完成对可编程逻辑器件内部或外部电路的测试,并且能够通 过该方式检测PLD的软件版本。另外,随着网络技术的发展,对于较为大型的网络设备,已经发展为分布式处理系 统。分布式架构的网络设备一般由主控板和多个业务板构成,其结构示意图如图1所示。其中,主控板用于整个网络设备的管理和网络协议的处理,业务板用于完成各种业务的数据 转发处理。在由主控板和业务板组成的分布式架构系统中,可编程逻辑器件分布在主控板和 业务板上;不同的业务板上可编程逻辑器件软件各不相同,需要保证所有单板上PLD软件 版本与系统软件版本的配套关系。为了保证整个分布式系统通信设备正常工作,需要进行 所有PLD的I/O (Input/Output,输入/输出)接口功能测试和软件版本匹配检测。在现有通信设备里,对于PLD的检测主要是通过CPU来实现部分检测或者设备管 理员参与使用专用软件进行一些手动检测。方案一、单板上电,单板上各芯片均正常启动后(包括PLD正常工作),通过CPU来 完成对PLD的检测,CPU通过I/O管脚或者JTAG总线对PLD进行边界扫描电路检测。然后 通过CPU去读取可编程逻辑器件里标明软件版本的寄存器来获取PLD的版本号,与软件里 标注的PLD软件版本号进行比较,如果不一致,则通过CPU的I/O管脚或者JTAG总线利用 JTAG边界扫描协议对可编程逻辑器件进行编程升级PLD版本。方案二、通过JTAG总线将单板上PLD都连接起来,并在单板上留出JTAG线的外接 头。利用外接头与计算机相连,设备管理员参与使用专用软件进行JTAG链路检测和PLD版 本升级。方案三、如图2所示,在单板上增加一个JTAG控制器装置,与单板上所有PLD通 过JTAG总线连接起来。当单板上电后,单板上各芯片均正常启动后(包括PLD正常工作和 JTAG控制器正常工作),系统CPU给JTAG控制器下发电路检测指令,利用JTAG边界扫描技 术对单板上PLD进行电路检测,JTAG控制器给系统返回检测结果;同样,系统CPU通过JTAG 控制器利用JTAG总线的采样功能对系统各可编程逻辑专用I/O接口进行采样获取PLD软 件版本,由CPU来进行PLD软件版本的比较;如果不配套,则通过JTAG控制器的JTAG总线 对可编程逻辑器件进行版本升级。方案四、在单板上启动J T A G控制器对P L D中软件版本进行采样;判断各P L D中软件版本是否与系统软件或其他模块的用以实现通信功能的软件版本具有正确的配套 关系;如果P L D的软件版本校验正确,则启动系统其他部分;否则,通过J T A G控制器 将P L D中软件版本升级到正确的版本。如申请号为200510034322.9的中国专利申请中 提供了这样的一种方案。在实现本专利技术的过程中,专利技术人发现现有技术至少存在以下问题方案一和方案三的缺点必须要CPU主机系统能够正常启动,而往往当可编程器 件的版本不配套或者可编程器件里内容不正确时,主机系统启动不成功,无法达到自检和 版本检测升级的目的。方案二的缺点单板上电后,需要人工参与版本识别;需要通过JTAG线外接计算 机进行人工干预,一块单板的PLD升级需要送交到专用设备处理升级操作。方案一、二、三的共同缺点只能较为方便的处理本板上的PLD的检测和版本升 级。而对于如图1所示的分布式系统,对于各业务单板无法做到PLD的自动检测和版本自 匹配。方案四的缺点虽然可以在单块单板上通过JTAG控制器进行PLD检测,但是,这 样的技术只能是由单板自身的JTAG控制器对自身的PLD进行检测,而且,这样的技术方案的前提是需要在每块单板上都存储全部的PLD更新数据或者让每块单板都可以与一个管 理PLD信息的服务器建立连接,一方面用于匹配PLD版本,另一方面还需要在不匹配时进行 PLD更新的数据传输,这样的处理需要占用大量的系统资源,而且,对于在每块单板上都存 储全部的PLD更新数据的情况,一旦发生PLD版本的更新,还需要对每块单板进行逐一的数 据更新,耗费大量的维护成本。
技术实现思路
本专利技术提供一种分布式系统的可编程逻辑器件的软件升级方法和设备,能够主控 板和业务板通过各JTAG控制器协同完成PLD自检和版本匹配。为达到上述目的,本专利技术一方面提供了一种分布式系统的可编程逻辑器件的软件 升级方法,该分布式系统的主控板和业务板均具有可编程逻辑器件PLD,所述主控板与所述 业务板分别设有主JTAG控制器和从JTAG控制器,所述方法包括以下步骤所述主JTAG控制器存储打包安装文件,其中,打包安装文件至少包括所述单板类 型以及单板类型对应的最新PLD软件版本号和最新PLD软件;所述主JTAG控制器接收所述从JTAG控制器通过数据总线传送的所述业务板的单 板类型和PLD软件版本号,并判断所述业务板的单板类型对应的最新PLD软件版本号与接 收的PLD软件版本号是否匹配,如果不匹配,则将所述业务板的单板类型对应的最新PLD软 件通过所述数据总线传送给所述从JTAG控本文档来自技高网
...

【技术保护点】
一种分布式系统的可编程逻辑器件的软件升级方法,该分布式系统的主控板和业务板均具有可编程逻辑器件PLD,其特征在于,所述主控板与所述业务板分别设有主JTAG控制器和从JTAG控制器,所述方法包括以下步骤:所述主JTAG控制器存储打包安装文件,其中,打包安装文件至少包括所述单板类型以及单板类型对应的最新PLD软件版本号和最新PLD软件;所述主JTAG控制器接收所述从JTAG控制器通过数据总线传送的所述业务板的单板类型和PLD软件版本号,并判断所述业务板的单板类型对应的最新PLD软件版本号与接收的PLD软件版本号是否匹配,如果不匹配,则将所述业务板的单板类型对应的最新PLD软件通过所述数据总线传送给所述从JTAG控制器;所述从JTAG控制器接收的最新PLD软件,对所述业务板的PLD进行升级,并在升级完成时通知所述业务板的其他控制器运行系统软件。

【技术特征摘要】

【专利技术属性】
技术研发人员:杨秋林
申请(专利权)人:杭州华三通信技术有限公司
类型:发明
国别省市:86[中国|杭州]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术
  • 暂无相关专利