本发明专利技术公开了一种CPLD上连接有E2PROM设备的固件烧结方法,设置E2PROM的烧结文件转换为VME文件时所用的关键字标识;所述方法还包括:将E2PROM的烧结文件转换为SVF文件,并在所述SVF文件中插入相应的关键字标识;根据所述SVF文件及其关键字标识将所述SVF文件转换为VME文件;将VME文件依次发送给烧结单元,由烧结单元根据VME文件对JTAG链上的设备(包括CPLD和/或E2PROM)进行烧结。本发明专利技术同时公开了一种CPLD上连接有E2PROM设备的固件烧结装置。本发明专利技术在CPLD及E2PROM一起烧结及维护的前提下,节约了对E2PROM烧结及维护的成本,同时也可以将JTAG链上对E2PROM设备烧结维护的方法和思想推广到其它固件设备中去。
【技术实现步骤摘要】
本专利技术涉及固件烧结技术,尤其涉及一种复杂可编程逻辑器件(CPLD, Complex Programmable Logic Device)上连接有电可擦除可编程只读存储器(E2PR0M, Electrically Erasable Programmable Read Only Memory)设备的固件烧结方法及装置。
技术介绍
随着国内第三代(3G)移动通信系统运营牌照的发放,通信系统领域的市场前景 将变得非常广阔。与此同时,国内外通信设备厂商的出货量也会越来越大,通信设备的技术 含量也越来越高。在单板上使用的固件设备种类也会越来越多,使用量也会越来越大。毫 无疑问,这些固件设备的使用给通信设备厂商提供了比较完善的解决方案,同时固件设备 本身的烧结和升级维护问题将变得重要,如何方便、正确地烧结升级维护这些设备就成为 了各个通信设备厂商要重点考虑的问题。 CPLD设备的烧结是直接通过设备的联合测试行动小组(JTAG, Joint TestAction Group)接口进行的,主要的操作过程是通过该JTAG接口发送符合JTAG协议的烧结向量, 从而达到烧结CPLD设备的目的;E2PR0M设备的烧结主要是通过I2C(Inter-Integrated Circuit)总线按照12C协议将E2PR0M烧结文件内容写入到E2PR0M设备中。从硬件角度来 看,E2PR0M设备可以连接到CPU的通用输入/输出(GPIO,General Purpose Input Output) 或者I2C外设接口上,也可以直接连接到CPLD的外部管脚上。 以下结合图1,对现有E2PR0M的烧结方法进行阐述。图1为现有E2PR0M设备常 用的烧结结构示意图,如图l所示,目前常用的E2PR0M烧结方法是在CPU上首先运行一个 烧结程序,通过通信外设接收E2PR0M的烧结文件,CPU通过控制I2C外设完成对E2PR0M的 烧结。图1所示的烧结方式必须在CPU上维护一个烧结E2PR0M的程序,这种烧结方式也将 E2PR0M和CPLD的烧结分离开来,即CPLD采用JTAG烧结,而E2PR0M采用CPU烧结程序进 行,这无疑增加了对这些固件设备升级维护的成本。 在实际应用中,E2PR0M与CPLD经常一起使用。如果E2PR0M挂接在CPLD的外部 管脚上,要想实现E2PR0M及CPLD —起烧结, 一种方法是可以先在CPLD上烧结一个逻辑版 本来支持外挂E2PR0M的烧结,这样才能通过CPLD实现外挂E2PR0M的烧结。 目前几乎所有的大规模复杂数字电路芯片如CPU等,都兼容IEEE 1149. l标准,这 些数字电路集成了业界广泛使用的JTAG接口和边界扫描链(BSC,Boundary Scan Chain), 通过芯片的JTAG接口就可以很方便地对器件进行测试和烧结,所以目前业界使用的烧结 方案是当E2PR0M直接挂接在含有BSC设备的外部管脚上时,可以通过芯片的JTAG接口控 制芯片中的BSC单元模拟I2C时序,达到烧结E2PR0M设备的目的。 这种烧结方法存在这样的问题,即必须要维护CPLD烧结版本和E2PR0M烧结版本 两种不同格式的烧结版本文件;在烧结CPLD的时候是通过解析烧结文件如串行向量格式 (SVF, Serial Vector Format)或者嵌入式虚拟机(VME, Virtual Machine Embedded)文 件,达到烧结CPLD设备的目的;在烧结E2PR0M时,烧结执行单元就必须将烧结的文件嵌入到模拟的I2C时序向量中,从而实现对E2PR0M的烧结。这样,要实现CPLD和E2PR0M的同 时烧结,就必须在烧结执行单元中增加CPLD BSC管脚的I2C时序生成软件模块。如果单板 上一条JTAG菊花链上连接有多个E2PR0M,那么就必须要单独维护这些E2PR0M设备的烧结 版本,这无疑增加了对E2PR0M烧结及维护的复杂度。
技术实现思路
有鉴于此,本专利技术的主要目的在于提供一种CPLD上连接有E2PR0M设备的固件烧结方法及装置,能将一条JTAG链上CPLD、 E2PR0M设备的烧结版本文件转换成以一条JTAG链为单位的烧结版本,从而利用JTAG接口可以完成该JTAG链上设备版本的维护。对外界呈现的只是一条JTAG链上抽象出来的一个虚拟JTAG设备版本,用户可以不用关心该JTAG链上设备的物理拓扑结构、设备的种类等等。 为达到上述目的,本专利技术的技术方案是这样实现的 —种CPLD上连接有E2PR0M设备的固件烧结方法,设置电可擦除可编程只读存储 器E2PR0M的烧结文件转换为嵌入式虚拟机VME文件时所用的关键字标识;所述方法还包 括 在E2PR0M的烧结文件转换为串行向量格式SVF文件的过程中,插入相应的关键字 标识; 根据所述SVF文件及其关键字标识将所述SVF文件转换为VME文件; 烧结执行单元解析上述生成的统一 VME文件,完成JTAG链上设备的烧结。 将E2PR0M的烧结文件转换为SVF文件, 一般包括以下步骤根据联合测试行动小组JTAG链上CPLD和连接到此设备的E2PR0M设备之间的物理拓扑结构(主要是指E2PR0M的SCL、 SDA管脚在CPLD的BSC中位置以及对该CPLD进行BSC操作的指令),生成进行串行时钟线SCL、串行数据线SDA操作的指令向量模板及数据向量模板; 根据I2C时序关系、所述指令向量模板及所述数据向量模板,将E2PR0M的烧结文 件转换为指令向量序列及数据向量序列; 将所述指令向量序列及所述数据向量序列以SVF文件格式表示。 所述SDR数据向量序列包括以下序列中的至少一种 开始时序、写设备的12C地址时序、写设备存储器地址时序、写数据字节时序、停 止时序。 优选地,所述关键字标识应该包含下面的几类 TYPE关键字标识,用于表明所述SVF文件用于哪种设备版本的烧结,例如可以分 别用来表示FLASH、 E2PR0M设备等等; SIZE关键字标识,用于表明烧结设备容量的大小; 用于记录E2PR0M的SCL管脚及SDA管脚在边界扫描链BSC中位置的关键字标识; 前后缀关键字标识,用于确定E2PR0M烧结时的指令和数据前后缀数值。 优选地,所述JTAG链的物理拓扑结构包括CPLD与E2PR0M之间、或/及CPLD与CPLD之间的物理拓扑结构。 优选地,所述方法还包括 确定两个以上的E2PR0M以不同的I2C总线连接于同一个CPLD上时,将所述两个 以上的E2PR0M SVF文件中的相同时序的SDR数据向量序列进行合并,而生成一个SVF文 件;SDR数据向量序列合成的原则是所述两个以上的E2PR0M的容量相同时,将每个SDR数 据向量序列中的有效比特位按各自SDR数据向量序列中的位置进行合并;所述两个以上的 E2PR0M容量不相同时,将SIZE属性值小的SVF文件中的SDR数据向量合并到SIZE属性值 大的SVF向量中即可。 —种CPLD上连接有E2PR0M设备的固件烧结装置,包括设置单元、第一转换单元、 第二转换单元、发送单元和烧结单元,其中 设置单元,用于设置电可擦除可编程只读存储器E2PR0M的烧结文件转换为VME文 件时所用的关键字标识; 第一转换单元,用于将E2P本文档来自技高网...
【技术保护点】
一种CPLD上连接有E2PROM设备的固件烧结方法,其特征在于,设置电可擦除可编程只读存储器E2PROM的烧结文件转换为嵌入式虚拟机VME文件时所用的关键字标识;所述方法还包括:将E2PROM的烧结文件转换为串行向量格式SVF文件的过程中,插入所述关键字标识;根据所述SVF文件及所述关键字标识将所述SVF文件转换为联合测试行动小组JTAG链上统一的VME文件;将所述VME文件发送给烧结执行单元,由烧结执行单元根据所述VME文件对所述JTAG链上的设备进行烧结。
【技术特征摘要】
【专利技术属性】
技术研发人员:张栗榕,蒋诚,刘晓博,
申请(专利权)人:中兴通讯股份有限公司,
类型:发明
国别省市:94[中国|深圳]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。