Cpld上连接有e2prom设备的固件烧结方法及装置的制作方法

文档序号:6596800阅读:582来源:国知局
专利名称:Cpld上连接有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文 件时所用的关键字标识; 第一转换单元,用于将E2PR0M的烧结文件转换为SVF文件,在转换的过程中插入 针对该设备的关键字标识。其中,SVF文件转换是现有技术; 第二转换单元,根据所述SVF文件及其关键字标识将所述SVF文件转换为VME文 件; 发送单元,用于将VME文件发送给烧结单元; 烧结单元,用于根据VME文件对JTAG链上的CPLD或\和E2PR0M进行烧结。
优选地,所述第一转换单元包括生成子单元、第一转换子单元和第二转换子单元, 其中 生成子单元,用于根据联合测试行动小组JTAG链的物理拓扑结构,生成进行串行 时钟线SCL、串行数据线SDA操作的指令向量模板及数据向量模板; 第一转换子单元,用于根据I2C时序关系、所述指令向量模板及所述数据向量模 板,将E2PR0M的烧结文件转换为指令向量序列及数据向量序列; 第二转换子单元,用于将所述指令向量序列及所述数据向量序列以SVF文件格式 表示。 优选地,所述SDR数据向量序列包括以下序列中的至少一种 开始时序、写设备的12C地址时序、写设备存储器地址时序、写数据字节时序、停 止时序。 优选地,所述关键字标识应该包含下面的几类 TYPE关键字标识,用于表明所述SVF文件用于哪种设备版本的烧结;
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向量中即可。
本发明技术方案的优点如下 (1)针对一条JTAG链只需要维护一个虚拟的JTAG烧结版本,降低了版本维护的复 杂度; (2)单板上挂接E2PR0M的CPU不需要维护一套烧结软件,可以像裸板烧结CPLD那 样,完成对E2PR0M的烧结工作; (3)烧结执行单元的CPLD烧结程序不用升级,就可以直接使用来支持E2PR0M版本 的升级维护;特别是如果CPLD烧结程序驻留在设备系统中,就可以避免设备系统中单板烧 结软件的升级; (4)将E2PR0M烧结文件嵌入到统一的烧结版本中,可以增加E2PR0M烧结文件的保 密性,E2PR0M文件一般都含有设备的一些资产管理信息,对设备的正常工作起着重要的作 用; (5)针对于一条LSP上存在多个E2PR0M设备的情况,可以将多个E2PR0M版本的烧 结集成在一起,实现多个E2PR0M版本的同时烧结; (6)针对于正在使用的设备,可以根据升级需要,只升级JTAG链上的特定设备,但 是对外界呈现的还是一个虚拟的JTAG烧结版本。例如,可以将只升级的E2PR0M版本做成 一个JTAG链上的.VME文件进行升级。


图1为现有E2PR0M烧结结构的示意图;
图2为本发明第一种CPLD及E2PR0M烧结结构的示意图;
图3为本发明第二种CPLD及E2PR0M烧结结构的示意图;
图4为本发明第三种CPLD及E2PR0M烧结结构的示意图;
图5为本发明CPLD上连接有E2PR0M设备的固件烧结装置的-图; 图6为本发明CPLD上连接有E2PR0M设备的固件烧结装置的另 图。
具体实施例方式
本发明的基本思想是在对连接于CPLD上的E2PR0M进行烧结及维护时,首先将
E2PR0M的烧结文件转换为带自定义关键字标识的SVF文件,然后再将一条JTAG链上所有设
备的SVF文件转换生成一个统一的JTAG VME文件,并将转换后的VME文件发送给烧结执行
单元,由烧结执行单元直接根据该VME文件实现对E2PR0M或/及CPLD的烧结。 为使本发明的目的、技术方案和优点更加清楚明白,以下举实例并参照附图,对本
发明作进一步详细说明。 在对CPLD上连接的E2PR0M进行烧结及维护时,首先将E2PR0M的烧结文件".BIN" 文件转换为".SVF文件",此方法属于现有技术,为便于理解本发明的相关技术,下面简单描
种组成结构示意 4中组成结构示意述一下此方法的过程 根据联合测试行动小组JTAG链上CPLD和连接到此设备的E2PR0M设备之间的物理拓扑结构,生成对待烧结E2PR0M设备进行串行时钟线(SCL)、串行数据线(SDA)操作的指令向量模板和数据向量模板。具体的,根据CPLD与E2PR0M之间的物理拓扑结构(主要是指E2PR0M的SCL, SDA管脚在CPLD的BSC中位置以及对该CPLD进行BSC操作的指令)生成对E2PR0M烧结及维护的指令向量模板和数据向量模板。其中,指令向量是指操作挂接待烧结E2PR0M的设备BSC的EXTEST指令向量;数据向量是指操作挂接待烧结E2PR0M的设备BSC的数据bit向量。在烧结执行单元对JTAG链统一的VME文件进行解析烧结的过程中,对于JTAG链上其它的设备(不是挂接待烧结E2PR0M的设备)采用BYPASS指令向量;在对该JTAG链进行数据向量操作时,上述这些设备的内部只有IBit的BYPASS寄存器连接到JTAG链中。 根据I2C时序关系和待烧结E2PR0M的烧结文件的内容,在指令向量模板和数据向量模板的基础上修改相应的SCL、SDA的bit位值,而生成特定的指令序列和数据向量序列。例如,对于E2PR0M进行字节写操作,就包括Start时序、写设备的12C地址时序、写设备存储器地址时序、写数据字节时序、Stop时序等。 将这些基本的时序用SVF文件格式进行表示,就可以完成E2PR0M的".BIN"烧结文件转换成SVF文件的操作,这样就为生成统一的VME文件奠定了基础。
本发明中,在将E2PR0M待烧结的.Bin文件转换生成SVF文件的过程中,需新增一些SVF关键字标识,具体包括 TYPE关键字标识表明SVF文件实现的是哪种设备版本的烧结功能,例如属性值是E2PR0M时,表明该SVF文件实现的是E2PR0M设备烧结;后面可以根据设备类型扩展该字段属性,例如可以表示连接到CPLD上的FLASH等设备类型,以方便今后对CPLD上的其他固件进行烧结。 SIZE关键字标识表示E2PR0M容量大小关键字标识,表明烧结设备容量的字节大小,属性值表示字节大小。当待烧结的设备为FLASH时,表示FLASH容量大小。
用于记录E2PR0M的SCL管脚及SDA管脚在边界扫描链BSC中位置的关键字标识如果TYPE标识的是E2PR0M,还要记录E2PR0M设备的SCL和SDA管脚在挂接设备BSC中的位置。 一般SCL和SDA管脚挂接在三态引脚上,需要记录SCL和SDA管脚对应BSC中的控制位、输出位和输入位的位置。本发明针对E2PR0M的连接情况,增加SCLOUTPUT、SCLINPUT、SCLCONTROL关键字段标识,属性值表示它们在该设备BSC中的具体bit位置;同样地,也可以增力B SDAOUTPUT、 SDAINPUT、 SDACONTROL用来表示SDA管脚的连接情况。
指令前缀(HIR)、数据前缀(HDR)、指令后缀(TIR)和数据后缀(TDR)的关键字标识这些前后缀关键字标识属性值需要根据待烧结E2PR0M设备挂接在BSC中的具体物理位置而确定针对该E2PR0M设备烧结时的指令和数据前后缀数值;例如一条JTAG链上如果有三个CPLD设备,而E2PR0M是挂接在第二个CPLD设备上的,则HIR是第一个CPLD设备的指令寄存器长度;HDR等于1 ,实际上就是第一个CPLD设备的BYPASS寄存器长度;TIR是第三个CPLD设备的指令寄存器长度;TDR等于1,实际上就是第三个CPLD设备的BYPASS寄存器长度。 将上述记录E2PR0M烧结时的相关属性的关键字标识和对应的属性值放在SVF文
8件头部,在E2PR0M的SVF文件合成生成VME文件时使用。上述的这些SVF关键字标识信息,在E2PR0M的.BIN文件转换生成.SVF文件的过程中,需要根据单板上JTAG链的物理信息,事先输入到进行格式转换处理的相应计算机中。 以下结合具体示例,进一步阐明本发明如何将多个SVF文件转换生成一个VME文件。下面分别就三种典型的实际应用场景说明文件转换的具体方法 图2为本发明第一种CPLD及E2PR0M烧结结构的示意图,如图2所示,一条JTAG链上只包含1个CPLD设备,而E2PR0M设备就挂接在该CPLD设备上。在这种情况下,有三种烧结及维护方式,分别是对CPLD和E2PR0M —起进行烧结及维护、只烧结维护CPLD和只烧结维护E2PR0M,以下分别介绍之。 对CPLD和E2PR0M —起进行烧结及维护需要在PC机软件的文件转换界面中分别选择CPLD和E2PR0M的SVF文件,在转换的过程中,先扫描所选择的每个SVF文件头部,本例中只有一个CPLD的SVF文件,如果没有TYPE字段,说明是CPLD的SVF文件,而有TYPE字段则是E2PR0M的SVF文件。对于CPLD的SVF文件,按照原始CPLD的SVF文件转换生成VME的流程进行转换,该转换方式是现有技术,本发明不再赘述其实现细节。如果发现SVF文件的头部存在TYPE字段,而且是E2PR0M的属性值,表明该SVF文件是烧结E2PR0M版本的文件,保留其中的HIR、 HDR、 TIR和TDR的值,删除TYPE、 SIZE和SCL及SDA标识字段以及对应的属性值,再转换生成VME文件,最后生成的VME文件就包含了两个部分,第一部分是CPLD的VME文件,第二部分就是E2PR0M的烧结VME文件; 对于只烧结及维护CPLD时,在PC机软件的文件转换界面中只选择CPLD的SVF文件进行转换即可。 对于只烧结及维护E2PR0M时,在PC机软件的文件转换界面中只选择E2PR0M的SVF文件进行转换即可。 图3为本发明第二种CPLD及E2PR0M烧结结构的示意图,如图3所示,一条JTAG链上包含两个CPLD设备,两个CPLD设备上分别挂接了一个E2PR0M设备。在图3所示的情形下,对CPLD及E2PR0M的烧结及维护的情况相对比较复杂,下面针对JTAG链上所有设备升级这种最复杂的情况进行说明。在PC机软件的文件转换界面中按照JTAG链上设备的排列顺序,分别选择CPLD的SVF文件以及两个E2PR0M的SVF文件(E2PR0M的SVF文件选择没有严格的先后顺序)。在将SVF文件转换为VME文件的过程中,同样先扫描所选择的每个SVF文件的头部信息,本例中扫描得到两个CPLD的SVF文件,按照CPLD的SVF文件转换生成VME文件的方式进行转换即可;由于CPLD的SVF文件转换为VME文件的方式为现有技术,本发明不再赘述其实现细节。同样扫描得到两个E2PR0M的SVF文件,比较这两个E2PR0M的SVF文件中的HDR和TDR是否相同,如果相同,则说明这两个E2PR0M均是挂接在同一个CPLD设备上的,而如果HDR和TDR不相同时,则确定这两个E2PR0M均是挂接在这条JTAG链上不同的CPLD设备上的,最后按照上面图2所示的烧结及维护情况来分别处理这两个E2PR0M的SVF文件,从而转换生成相应的VME文件。 图4为本发明第三种CPLD及E2PR0M烧结结构的示意图,如图4所示, 一条JTAG链上包含两个CPLD设备,第一个CPLD设备上挂接有两个I2C总线,每个I2C总线上分别挂接了一个E2PR0M设备。本发明中的两个I2C总线上的E2PR0M设备,可以按照图3所示的烧结及维护方式中的转换方法生成一个VME文件,但是这样生成的VME文件中,两个E2PR0M
9的烧结在VME文件中是分开顺序执行的。在这种情况下,为了提高E2PR0M的烧结速度,可以对挂接于同一个CPLD设备的不同I2C总线上的两个E2PR0M烧结的SVF向量进行合成,实现两个E2PR0M设备的同时烧结。具体的处理流程如下 在PC机软件的文件转换界面中分别选择两个E2PR0M的SVF文件,首先比较两个E2PR0M的SVF文件中的HDR和TDR,比较结果是两E2PR0M的HDR和TDR相同,确定两个E2PR0M是挂接在一条JTAG链上同一个CPLD设备上的;再比较SCL和SDA管脚的BSC属性值,如果完全相同,说明这两个E2PR0M设备是挂接在同一条I2C总线上的,这时是不能同时对这两个E2PR0M设备进行烧结处理的,E2PR0M文件的转换和图2及图3所示的转换方式一样,在烧结时只能依次顺序烧结这两个E2PR0M设备;如果这两个E2PR0M设备不是挂接在同一条I2C总线上的,则可以将该两个E2PR0M的SVF文件中对E2PR0M的操作向量合成为一个向量,因而实现对该两个E2PR0M的同时烧结。对于能同时对E2PR0M进行烧结处理的情形,具体按以下方式进行文件转换 由于SDR命令是用来设置SCL、 SDA管脚的电平值的,实现烧结E2PR0M的时序,所以在将两个E2PR0M的SVF文件进行合成时,主要依据SDR命令进行。删除E2PR0M的SVF文件中TYPE、 SIZE和SCL、 SDA标识字段以及对应的属性值;保留其他的SVF命令;
假设E2PR0M 1和E2PR0M 2的SVF文件中的某SDR向量分别如下 SDR 100 TDI(XX......101101......XX) SDR 100 TDI (101101......XX) 其中,X表示BSC上其他bit位的数值(该X值为无效数据位),101101用来表示SCL和SDA管脚的电平值。由于这两个E2PR0M是挂接在同一个CPLD设备上的,所以SDR向量的长度是一样的,同时它们的I2C时序也相同,SVF文件的格式和命令都是一样的,所以只需要将上面两个向量不同位置的SCLSDA值合成到一个向量中就可以实现一个向量对这两个E2PR0M进行操作,合成的向量如下所示
SDR 100TDI (101101... 101101... XX) E2PR0M的SVF文件中的SIZE字段表明E2PR0M容量字节大小,如果两个E2PR0M的SVF文件头部中的SIZE属性值一样,说明这两个E2PR0M设备的容量大小一样,则烧结过程是同时结束的,体现为两个E2PR0M的SVF文件中的SDR向量的序列是完全一致的;否则,会出现两个E2PR0M设备容量大小不一致的情况,即一个E2PR0M设备烧结已经结束,而另一个E2PR0M设备还在进行烧结操作,此时只要将SIZE属性值小的SVF文件中的SDR向量合并到SIZE属性值大的SVF向量中即可。 将合成后的SVF文件按前述方式转换为VME文件,发送给相应的烧结执行单元(一般是一个外置或者内置的嵌入式测试控制主设备)执行即可。 图5为本发明CPLD上连接有E2PR0M设备的固件烧结装置的一种组成结构示意图,如图5所示,本发明CPLD上连接有E2PR0M设备的固件烧结装置包括设置单元50、第一转换单元51、第二转换单元52、发送单元53和烧结单元54,其中, 设置单元50,用于设置电可擦除可编程只读存储器E2PR0M的烧结文件转换为嵌入式虚拟机VME文件时所用的关键字标识; 第一转换单元51,用于将E2PR0M的烧结文件转换为SVF文件(SVF文件转换是现有技术,不是本发明实现的重点),并在所述SVF文件中插入相应的关键字标识;
第二转换单元52,用于根据所述SVF文件及其关键字标识将所述SVF文件转换为VME文件; 发送单元53,用于将VME文件发送给烧结单元;
烧结单元54,用于根据VME文件对E2PR0M进行烧结。 第一转换单元51包括生成子单元、第一转换子单元和第二转换子单元,其中
生成子单元,用于根据联合测试行动小组JTAG链的物理拓扑结构,生成进行串行时钟线SCL、串行数据线SDA操作的指令向量模板及数据向量模板; 第一转换子单元,用于根据I2C时序关系、所述指令向量模板及所述数据向量模板,将E2PR0M的烧结文件转换为指令向量序列及数据向量序列; 第二转换子单元,用于将所述指令向量序列及所述数据向量序列以SVF文件格式表示。 所述SDR数据向量序列包括以下序列中的至少一种 开始时序、写设备的12C地址时序、写设备存储器地址时序、写数据字节时序、停止时序。 上述关键字标识包含以下几类 TYPE关键字标识,用于表明所述SVF文件用于哪种设备版本的烧结;
SIZE关键字标识,用于表明烧结设备容量的大小;用于记录E2PR0M的SCL管脚及SDA管脚在边界扫描链BSC中位置的关键字标识; 前后缀关键字标识,用于确定E2PR0M烧结时的指令和数据前后缀数值。 上述JTAG链的物理拓扑结构包括CPLD与E2PR0M之间、或/及CPLD与CPLD之
间的物理拓扑结构。 图6为本发明CPLD上连接有E2PR0M设备的固件烧结装置的另一种组成结构示意图,如图6所示,在图5所示装置的基础上,本发明CPLD上连接有E2PR0M设备的固件烧结装置还包括确定单元55和合并单元56,其中 确定单元55,用于确定两个以上的E2PR0M以不同的I2C总线连接于同一个CPLD上时,触发合并单元; 合并单元56,用于将所述两个以上的E2PR0M的SVF文件中的相同的SDR数据向量序列进行合并,而生成一个SVF文件;相同的SDR数据向量序列合成的原则是所述两个以上的E2PR0M的容量相同时,将每个SDR数据向量序列中的有效比特位按各自指令向量序列中的位置进行合并;所述两个以上的E2PR0M容量不相同时,将SIZE属性值小的SVF文件中的SDR数据向量合并到SIZE属性值大的SVF向量中即可。本领域技术人员应当理解,本发明图5及图6所示的CPLD上连接有E2PR0M设备的固件烧结装置中的各处理单元的实现功能可参照前述图2至图4中的相关描述而理解,各单元的功能可通过运行于处理器上的程序而实现,也可通过相应的逻辑电路而实现。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
权利要求
一种CPLD上连接有E2PROM设备的固件烧结方法,其特征在于,设置电可擦除可编程只读存储器E2PROM的烧结文件转换为嵌入式虚拟机VME文件时所用的关键字标识;所述方法还包括将E2PROM的烧结文件转换为串行向量格式SVF文件的过程中,插入所述关键字标识;根据所述SVF文件及所述关键字标识将所述SVF文件转换为联合测试行动小组JTAG链上统一的VME文件;将所述VME文件发送给烧结执行单元,由烧结执行单元根据所述VME文件对所述JTAG链上的设备进行烧结。
2. 根据权利要求1所述的方法,其特征在于,所述关键字标识包含 TYPE关键字标识,用于表明所述SVF文件用于哪种设备版本的烧结; SIZE关键字标识,用于表明烧结设备容量的大小;用于记录E2PR0M的SCL管脚及SDA管脚在边界扫描链BSC中位置的关键字标识; 前后缀关键字标识,用于确定E2PR0M烧结时的指令和数据前后缀数值。
3. 根据权利要求2所述的方法,其特征在于,所述JTAG链的物理拓扑结构包括CPLD 与E2PR0M之间、或/及CPLD与CPLD之间的物理拓扑结构。
4. 根据权利要求1所述的方法,其特征在于,所述方法还包括确定两个以上的E2PR0M以不同的I2C总线连接于同一个CPLD上时,将所述两个以上 的E2PR0M的SVF文件中的相同的SDR数据向量序列进行合并,而生成一个SVF文件;其 中,相同的SDR数据向量序列合成的原则是所述两个以上的E2PR0M的容量相同时,将每个 SDR数据向量序列中的有效比特位按各自指令向量序列中的位置进行合并;所述两个以上 的E2PR0M容量不相同时,将容量小的E2PR0M对应的SVF文件中的SDR数据向量合并到容 量大的E2PR0M对应的SVF文件中的SDR数据向量中。
5. —种CPLD上连接有E2PR0M设备的固件烧结装置,其特征在于,包括设置单元、第一 转换单元、第二转换单元、发送单元和烧结单元,其中设置单元,用于设置电可擦除可编程只读存储器E2PR0M的烧结文件转换为嵌入式虚 拟机VME文件时所用的关键字标识;第一转换单元,用于将E2PR0M的烧结文件转换为SVF文件,并在所述SVF文件中插入 相应的关键字标识;第二转换单元,用于根据所述SVF文件及所述关键字标识将所述SVF文件转换为VME 文件;发送单元,用于将VME文件发送给烧结单元;烧结单元,用于根据VME文件对JTAG链上的设备进行烧结。
6. 根据权利要求5所述的装置,其特征在于,所述关键字标识包含 TYPE关键字标识,用于表明所述SVF文件用于哪种设备版本的烧结; SIZE关键字标识,用于表明烧结设备容量的大小;用于记录E2PR0M的SCL管脚及SDA管脚在边界扫描链BSC中位置的关键字标识; 前后缀关键字标识,用于确定E2PR0M烧结时的指令和数据前后缀数值。
7. 根据权利要求6所述的装置,其特征在于,所述JTAG链的物理拓扑结构包括CPLD 与E2PR0M之间、或/及CPLD与CPLD之间的物理拓扑结构。
8.根据权利要求6所述的装置,其特征在于,所述装置还包括确定单元和合并单元,其中确定单元,用于确定两个以上的E2PR0M以不同的I2C总线连接于同一个CPLD上时,触 发合并单元;合并单元,用于将所述两个以上的E2PR0M的SVF文件中的相同的SDR数据向量序列进 行合并,而生成一个SVF文件;其中,相同的SDR数据向量序列合成的原则是所述两个以 上的E2PR0M的容量相同时,将每个SDR数据向量序列中的有效比特位按各自向量序列中的 位置进行合并;所述两个以上的E2PR0M容量不相同时,将容量小的E2PR0M对应的SVF文件 中的SDR数据向量合并到容量大的E2PR0M对应的SVF文件中的SDR数据向量中。
全文摘要
本发明公开了一种CPLD上连接有E2PROM设备的固件烧结方法,设置E2PROM的烧结文件转换为VME文件时所用的关键字标识;所述方法还包括将E2PROM的烧结文件转换为SVF文件,并在所述SVF文件中插入相应的关键字标识;根据所述SVF文件及其关键字标识将所述SVF文件转换为VME文件;将VME文件依次发送给烧结单元,由烧结单元根据VME文件对JTAG链上的设备(包括CPLD和/或E2PROM)进行烧结。本发明同时公开了一种CPLD上连接有E2PROM设备的固件烧结装置。本发明在CPLD及E2PROM一起烧结及维护的前提下,节约了对E2PROM烧结及维护的成本,同时也可以将JTAG链上对E2PROM设备烧结维护的方法和思想推广到其它固件设备中去。
文档编号G06F11/267GK101788946SQ20101000126
公开日2010年7月28日 申请日期2010年1月19日 优先权日2010年1月19日
发明者刘晓博, 张栗榕, 蒋诚 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1