CN101788946A - Cpld上连接有e2prom设备的固件烧结方法及装置 - Google Patents

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

Info

Publication number
CN101788946A
CN101788946A CN201010001264A CN201010001264A CN101788946A CN 101788946 A CN101788946 A CN 101788946A CN 201010001264 A CN201010001264 A CN 201010001264A CN 201010001264 A CN201010001264 A CN 201010001264A CN 101788946 A CN101788946 A CN 101788946A
Authority
CN
China
Prior art keywords
e2prom
sintering
file
cpld
svf
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.)
Granted
Application number
CN201010001264A
Other languages
English (en)
Other versions
CN101788946B (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.)
Shenzhen Fu Hai Sunshine Technology Co., Ltd.
Original Assignee
ZTE Corp
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 ZTE Corp filed Critical ZTE Corp
Priority to CN 201010001264 priority Critical patent/CN101788946B/zh
Publication of CN101788946A publication Critical patent/CN101788946A/zh
Application granted granted Critical
Publication of CN101788946B publication Critical patent/CN101788946B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种CPLD上连接有E2PROM设备的固件烧结方法,设置E2PROM的烧结文件转换为VME文件时所用的关键字标识;所述方法还包括:将E2PROM的烧结文件转换为SVF文件,并在所述SVF文件中插入相应的关键字标识;根据所述SVF文件及其关键字标识将所述SVF文件转换为VME文件;将VME文件依次发送给烧结单元,由烧结单元根据VME文件对JTAG链上的设备(包括CPLD和/或E2PROM)进行烧结。本发明同时公开了一种CPLD上连接有E2PROM设备的固件烧结装置。本发明在CPLD及E2PROM一起烧结及维护的前提下,节约了对E2PROM烧结及维护的成本,同时也可以将JTAG链上对E2PROM设备烧结维护的方法和思想推广到其它固件设备中去。

Description

CPLD上连接有E2PROM设备的固件烧结方法及装置
技术领域
本发明涉及固件烧结技术,尤其涉及一种复杂可编程逻辑器件(CPLD,Complex Programmable Logic Device)上连接有电可擦除可编程只读存储器(E2PROM,Electrically Erasable Programmable Read Only Memory)设备的固件烧结方法及装置。
背景技术
随着国内第三代(3G)移动通信系统运营牌照的发放,通信系统领域的市场前景将变得非常广阔。与此同时,国内外通信设备厂商的出货量也会越来越大,通信设备的技术含量也越来越高。在单板上使用的固件设备种类也会越来越多,使用量也会越来越大。毫无疑问,这些固件设备的使用给通信设备厂商提供了比较完善的解决方案,同时固件设备本身的烧结和升级维护问题将变得重要,如何方便、正确地烧结升级维护这些设备就成为了各个通信设备厂商要重点考虑的问题。
CPLD设备的烧结是直接通过设备的联合测试行动小组(JTAG,Joint TestAction Group)接口进行的,主要的操作过程是通过该JTAG接口发送符合JTAG协议的烧结向量,从而达到烧结CPLD设备的目的;E2PROM设备的烧结主要是通过I2C(Inter-Integrated Circuit)总线按照I2C协议将E2PROM烧结文件内容写入到E2PROM设备中。从硬件角度来看,E2PROM设备可以连接到CPU的通用输入/输出(GPIO,General Purpose Input Output)或者I2C外设接口上,也可以直接连接到CPLD的外部管脚上。
以下结合图1,对现有E2PROM的烧结方法进行阐述。图1为现有E2PROM设备常用的烧结结构示意图,如图1所示,目前常用的E2PROM烧结方法是在CPU上首先运行一个烧结程序,通过通信外设接收E2PROM的烧结文件,CPU通过控制I2C外设完成对E2PROM的烧结。图1所示的烧结方式必须在CPU上维护一个烧结E2PROM的程序,这种烧结方式也将E2PROM和CPLD的烧结分离开来,即CPLD采用JTAG烧结,而E2PROM采用CPU烧结程序进行,这无疑增加了对这些固件设备升级维护的成本。
在实际应用中,E2PROM与CPLD经常一起使用。如果E2PROM挂接在CPLD的外部管脚上,要想实现E2PROM及CPLD一起烧结,一种方法是可以先在CPLD上烧结一个逻辑版本来支持外挂E2PROM的烧结,这样才能通过CPLD实现外挂E2PROM的烧结。
目前几乎所有的大规模复杂数字电路芯片如CPU等,都兼容IEEE 1149.1标准,这些数字电路集成了业界广泛使用的JTAG接口和边界扫描链(BSC,Boundary Scan Chain),通过芯片的JTAG接口就可以很方便地对器件进行测试和烧结,所以目前业界使用的烧结方案是当E2PROM直接挂接在含有BSC设备的外部管脚上时,可以通过芯片的JTAG接口控制芯片中的BSC单元模拟I2C时序,达到烧结E2PROM设备的目的。
这种烧结方法存在这样的问题,即必须要维护CPLD烧结版本和E2PROM烧结版本两种不同格式的烧结版本文件;在烧结CPLD的时候是通过解析烧结文件如串行向量格式(SVF,Serial Vector Format)或者嵌入式虚拟机(VME,Virtual Machine Embedded)文件,达到烧结CPLD设备的目的;在烧结E2PROM时,烧结执行单元就必须将烧结的文件嵌入到模拟的I2C时序向量中,从而实现对E2PROM的烧结。这样,要实现CPLD和E2PROM的同时烧结,就必须在烧结执行单元中增加CPLD BSC管脚的I2C时序生成软件模块。如果单板上一条JTAG菊花链上连接有多个E2PROM,那么就必须要单独维护这些E2PROM设备的烧结版本,这无疑增加了对E2PROM烧结及维护的复杂度。
发明内容
有鉴于此,本发明的主要目的在于提供一种CPLD上连接有E2PROM设备的固件烧结方法及装置,能将一条JTAG链上CPLD、E2PROM设备的烧结版本文件转换成以一条JTAG链为单位的烧结版本,从而利用JTAG接口可以完成该JTAG链上设备版本的维护。对外界呈现的只是一条JTAG链上抽象出来的一个虚拟JTAG设备版本,用户可以不用关心该JTAG链上设备的物理拓扑结构、设备的种类等等。
为达到上述目的,本发明的技术方案是这样实现的:
一种CPLD上连接有E2PROM设备的固件烧结方法,设置电可擦除可编程只读存储器E2PROM的烧结文件转换为嵌入式虚拟机VME文件时所用的关键字标识;所述方法还包括:
在E2PROM的烧结文件转换为串行向量格式SVF文件的过程中,插入相应的关键字标识;
根据所述SVF文件及其关键字标识将所述SVF文件转换为VME文件;
烧结执行单元解析上述生成的统一VME文件,完成JTAG链上设备的烧结。
将E2PROM的烧结文件转换为SVF文件,一般包括以下步骤:
根据联合测试行动小组JTAG链上CPLD和连接到此设备的E2PROM设备之间的物理拓扑结构(主要是指E2PROM的SCL、SDA管脚在CPLD的BSC中位置以及对该CPLD进行BSC操作的指令),生成进行串行时钟线SCL、串行数据线SDA操作的指令向量模板及数据向量模板;
根据I2C时序关系、所述指令向量模板及所述数据向量模板,将E2PROM的烧结文件转换为指令向量序列及数据向量序列;
将所述指令向量序列及所述数据向量序列以SVF文件格式表示。
所述SDR数据向量序列包括以下序列中的至少一种:
开始时序、写设备的I2C地址时序、写设备存储器地址时序、写数据字节时序、停止时序。
优选地,所述关键字标识应该包含下面的几类:
TYPE关键字标识,用于表明所述SVF文件用于哪种设备版本的烧结,例如可以分别用来表示FLASH、E2PROM设备等等;
SIZE关键字标识,用于表明烧结设备容量的大小;
用于记录E2PROM的SCL管脚及SDA管脚在边界扫描链BSC中位置的关键字标识;
前后缀关键字标识,用于确定E2PROM烧结时的指令和数据前后缀数值。
优选地,所述JTAG链的物理拓扑结构包括:CPLD与E2PROM之间、或/及CPLD与CPLD之间的物理拓扑结构。
优选地,所述方法还包括:
确定两个以上的E2PROM以不同的I2C总线连接于同一个CPLD上时,将所述两个以上的E2PROM SVF文件中的相同时序的SDR数据向量序列进行合并,而生成一个SVF文件;SDR数据向量序列合成的原则是:所述两个以上的E2PROM的容量相同时,将每个SDR数据向量序列中的有效比特位按各自SDR数据向量序列中的位置进行合并;所述两个以上的E2PROM容量不相同时,将SIZE属性值小的SVF文件中的SDR数据向量合并到SIZE属性值大的SVF向量中即可。
一种CPLD上连接有E2PROM设备的固件烧结装置,包括设置单元、第一转换单元、第二转换单元、发送单元和烧结单元,其中:
设置单元,用于设置电可擦除可编程只读存储器E2PROM的烧结文件转换为VME文件时所用的关键字标识;
第一转换单元,用于将E2PROM的烧结文件转换为SVF文件,在转换的过程中插入针对该设备的关键字标识。其中,SVF文件转换是现有技术;
第二转换单元,根据所述SVF文件及其关键字标识将所述SVF文件转换为VME文件;
发送单元,用于将VME文件发送给烧结单元;
烧结单元,用于根据VME文件对JTAG链上的CPLD或\和E2PROM进行烧结。
优选地,所述第一转换单元包括生成子单元、第一转换子单元和第二转换子单元,其中:
生成子单元,用于根据联合测试行动小组JTAG链的物理拓扑结构,生成进行串行时钟线SCL、串行数据线SDA操作的指令向量模板及数据向量模板;
第一转换子单元,用于根据I2C时序关系、所述指令向量模板及所述数据向量模板,将E2PROM的烧结文件转换为指令向量序列及数据向量序列;
第二转换子单元,用于将所述指令向量序列及所述数据向量序列以SVF文件格式表示。
优选地,所述SDR数据向量序列包括以下序列中的至少一种:
开始时序、写设备的I2C地址时序、写设备存储器地址时序、写数据字节时序、停止时序。
优选地,所述关键字标识应该包含下面的几类:
TYPE关键字标识,用于表明所述SVF文件用于哪种设备版本的烧结;
SIZE关键字标识,用于表明烧结设备容量的大小;
用于记录E2PROM的SCL管脚及SDA管脚在边界扫描链BSC中位置的关键字标识;
前后缀关键字标识,用于确定E2PROM烧结时的指令和数据前后缀数值。
优选地,所述JTAG链的物理拓扑结构包括:CPLD与E2PROM之间、或/及CPLD与CPLD之间的物理拓扑结构。
优选地,所述装置还包括确定单元和合并单元,其中:
确定单元,用于确定两个以上的E2PROM以不同的I2C总线连接于同一个CPLD上时,触发合并单元;
合并单元,用于将所述两个以上的E2PROM的SVF文件中的相同的SDR数据向量序列进行合并,而生成一个SVF文件;SDR数据向量序列合成的原则是:所述两个以上的E2PROM的容量相同时,将每个SDR数据向量序列中的有效比特位按各自SDR数据向量序列中的位置进行合并;所述两个以上的E2PROM容量不相同时,将SIZE属性值小的SVF文件中的SDR数据向量合并到SIZE属性值大的SVF向量中即可。
本发明技术方案的优点如下:
(1)针对一条JTAG链只需要维护一个虚拟的JTAG烧结版本,降低了版本维护的复杂度;
(2)单板上挂接E2PROM的CPU不需要维护一套烧结软件,可以像裸板烧结CPLD那样,完成对E2PROM的烧结工作;
(3)烧结执行单元的CPLD烧结程序不用升级,就可以直接使用来支持E2PROM版本的升级维护;特别是如果CPLD烧结程序驻留在设备系统中,就可以避免设备系统中单板烧结软件的升级;
(4)将E2PROM烧结文件嵌入到统一的烧结版本中,可以增加E2PROM烧结文件的保密性,E2PROM文件一般都含有设备的一些资产管理信息,对设备的正常工作起着重要的作用;
(5)针对于一条LSP上存在多个E2PROM设备的情况,可以将多个E2PROM版本的烧结集成在一起,实现多个E2PROM版本的同时烧结;
(6)针对于正在使用的设备,可以根据升级需要,只升级JTAG链上的特定设备,但是对外界呈现的还是一个虚拟的JTAG烧结版本。例如,可以将只升级的E2PROM版本做成一个JTAG链上的.VME文件进行升级。
附图说明
图1为现有E2PROM烧结结构的示意图;
图2为本发明第一种CPLD及E2PROM烧结结构的示意图;
图3为本发明第二种CPLD及E2PROM烧结结构的示意图;
图4为本发明第三种CPLD及E2PROM烧结结构的示意图;
图5为本发明CPLD上连接有E2PROM设备的固件烧结装置的一种组成结构示意图;
图6为本发明CPLD上连接有E2PROM设备的固件烧结装置的另一种组成结构示意图。
具体实施方式
本发明的基本思想是:在对连接于CPLD上的E2PROM进行烧结及维护时,首先将E2PROM的烧结文件转换为带自定义关键字标识的SVF文件,然后再将一条JTAG链上所有设备的SVF文件转换生成一个统一的JTAG VME文件,并将转换后的VME文件发送给烧结执行单元,由烧结执行单元直接根据该VME文件实现对E2PROM或/及CPLD的烧结。
为使本发明的目的、技术方案和优点更加清楚明白,以下举实例并参照附图,对本发明作进一步详细说明。
在对CPLD上连接的E2PROM进行烧结及维护时,首先将E2PROM的烧结文件“.BIN”文件转换为“.SVF文件”,此方法属于现有技术,为便于理解本发明的相关技术,下面简单描述一下此方法的过程:
根据联合测试行动小组JTAG链上CPLD和连接到此设备的E2PROM设备之间的物理拓扑结构,生成对待烧结E2PROM设备进行串行时钟线(SCL)、串行数据线(SDA)操作的指令向量模板和数据向量模板。具体的,根据CPLD与E2PROM之间的物理拓扑结构(主要是指E2PROM的SCL,SDA管脚在CPLD的BSC中位置以及对该CPLD进行BSC操作的指令)生成对E2PROM烧结及维护的指令向量模板和数据向量模板。其中,指令向量是指操作挂接待烧结E2PROM的设备BSC的EXTEST指令向量;数据向量是指操作挂接待烧结E2PROM的设备BSC的数据bit向量。在烧结执行单元对JTAG链统一的VME文件进行解析烧结的过程中,对于JTAG链上其它的设备(不是挂接待烧结E2PROM的设备)采用BYPASS指令向量;在对该JTAG链进行数据向量操作时,上述这些设备的内部只有1Bit的BYPASS寄存器连接到JTAG链中。
根据I2C时序关系和待烧结E2PROM的烧结文件的内容,在指令向量模板和数据向量模板的基础上修改相应的SCL、SDA的bit位值,而生成特定的指令序列和数据向量序列。例如,对于E2PROM进行字节写操作,就包括Start时序、写设备的I2C地址时序、写设备存储器地址时序、写数据字节时序、Stop时序等。
将这些基本的时序用SVF文件格式进行表示,就可以完成E2PROM的“.BIN”烧结文件转换成SVF文件的操作,这样就为生成统一的VME文件奠定了基础。
本发明中,在将E2PROM待烧结的.Bin文件转换生成SVF文件的过程中,需新增一些SVF关键字标识,具体包括:
TYPE关键字标识:表明SVF文件实现的是哪种设备版本的烧结功能,例如:属性值是E2PROM时,表明该SVF文件实现的是E2PROM设备烧结;后面可以根据设备类型扩展该字段属性,例如可以表示连接到CPLD上的FLASH等设备类型,以方便今后对CPLD上的其他固件进行烧结。
SIZE关键字标识:表示E2PROM容量大小关键字标识,表明烧结设备容量的字节大小,属性值表示字节大小。当待烧结的设备为FLASH时,表示FLASH容量大小。
用于记录E2PROM的SCL管脚及SDA管脚在边界扫描链BSC中位置的关键字标识:如果TYPE标识的是E2PROM,还要记录E2PROM设备的SCL和SDA管脚在挂接设备BSC中的位置。一般SCL和SDA管脚挂接在三态引脚上,需要记录SCL和SDA管脚对应BSC中的控制位、输出位和输入位的位置。本发明针对E2PROM的连接情况,增加SCLOUTPUT、SCLINPUT、SCLCONTROL关键字段标识,属性值表示它们在该设备BSC中的具体bit位置;同样地,也可以增加SDAOUTPUT、SDAINPUT、SDACONTROL用来表示SDA管脚的连接情况。
指令前缀(HIR)、数据前缀(HDR)、指令后缀(TIR)和数据后缀(TDR)的关键字标识:这些前后缀关键字标识属性值需要根据待烧结E2PROM设备挂接在BSC中的具体物理位置而确定针对该E2PROM设备烧结时的指令和数据前后缀数值;例如:一条JTAG链上如果有三个CPLD设备,而E2PROM是挂接在第二个CPLD设备上的,则HIR是第一个CPLD设备的指令寄存器长度;HDR等于1,实际上就是第一个CPLD设备的BYPASS寄存器长度;TIR是第三个CPLD设备的指令寄存器长度;TDR等于1,实际上就是第三个CPLD设备的BYPASS寄存器长度。
将上述记录E2PROM烧结时的相关属性的关键字标识和对应的属性值放在SVF文件头部,在E2PROM的SVF文件合成生成VME文件时使用。上述的这些SVF关键字标识信息,在E2PROM的.BIN文件转换生成.SVF文件的过程中,需要根据单板上JTAG链的物理信息,事先输入到进行格式转换处理的相应计算机中。
以下结合具体示例,进一步阐明本发明如何将多个SVF文件转换生成一个VME文件。下面分别就三种典型的实际应用场景说明文件转换的具体方法:
图2为本发明第一种CPLD及E2PROM烧结结构的示意图,如图2所示,一条JTAG链上只包含1个CPLD设备,而E2PROM设备就挂接在该CPLD设备上。在这种情况下,有三种烧结及维护方式,分别是对CPLD和E2PROM一起进行烧结及维护、只烧结维护CPLD和只烧结维护E2PROM,以下分别介绍之。
对CPLD和E2PROM一起进行烧结及维护:需要在PC机软件的文件转换界面中分别选择CPLD和E2PROM的SVF文件,在转换的过程中,先扫描所选择的每个SVF文件头部,本例中只有一个CPLD的SVF文件,如果没有TYPE字段,说明是CPLD的SVF文件,而有TYPE字段则是E2PROM的SVF文件。对于CPLD的SVF文件,按照原始CPLD的SVF文件转换生成VME的流程进行转换,该转换方式是现有技术,本发明不再赘述其实现细节。如果发现SVF文件的头部存在TYPE字段,而且是E2PROM的属性值,表明该SVF文件是烧结E2PROM版本的文件,保留其中的HIR、HDR、TIR和TDR的值,删除TYPE、SIZE和SCL及SDA标识字段以及对应的属性值,再转换生成VME文件,最后生成的VME文件就包含了两个部分,第一部分是CPLD的VME文件,第二部分就是E2PROM的烧结VME文件;
对于只烧结及维护CPLD时,在PC机软件的文件转换界面中只选择CPLD的SVF文件进行转换即可。
对于只烧结及维护E2PROM时,在PC机软件的文件转换界面中只选择E2PROM的SVF文件进行转换即可。
图3为本发明第二种CPLD及E2PROM烧结结构的示意图,如图3所示,一条JTAG链上包含两个CPLD设备,两个CPLD设备上分别挂接了一个E2PROM设备。在图3所示的情形下,对CPLD及E2PROM的烧结及维护的情况相对比较复杂,下面针对JTAG链上所有设备升级这种最复杂的情况进行说明。在PC机软件的文件转换界面中按照JTAG链上设备的排列顺序,分别选择CPLD的SVF文件以及两个E2PROM的SVF文件(E2PROM的SVF文件选择没有严格的先后顺序)。在将SVF文件转换为VME文件的过程中,同样先扫描所选择的每个SVF文件的头部信息,本例中扫描得到两个CPLD的SVF文件,按照CPLD的SVF文件转换生成VME文件的方式进行转换即可;由于CPLD的SVF文件转换为VME文件的方式为现有技术,本发明不再赘述其实现细节。同样扫描得到两个E2PROM的SVF文件,比较这两个E2PROM的SVF文件中的HDR和TDR是否相同,如果相同,则说明这两个E2PROM均是挂接在同一个CPLD设备上的,而如果HDR和TDR不相同时,则确定这两个E2PROM均是挂接在这条JTAG链上不同的CPLD设备上的,最后按照上面图2所示的烧结及维护情况来分别处理这两个E2PROM的SVF文件,从而转换生成相应的VME文件。
图4为本发明第三种CPLD及E2PROM烧结结构的示意图,如图4所示,一条JTAG链上包含两个CPLD设备,第一个CPLD设备上挂接有两个I2C总线,每个I2C总线上分别挂接了一个E2PROM设备。本发明中的两个I2C总线上的E2PROM设备,可以按照图3所示的烧结及维护方式中的转换方法生成一个VME文件,但是这样生成的VME文件中,两个E2PROM的烧结在VME文件中是分开顺序执行的。在这种情况下,为了提高E2PROM的烧结速度,可以对挂接于同一个CPLD设备的不同I2C总线上的两个E2PROM烧结的SVF向量进行合成,实现两个E2PROM设备的同时烧结。具体的处理流程如下:
在PC机软件的文件转换界面中分别选择两个E2PROM的SVF文件,首先比较两个E2PROM的SVF文件中的HDR和TDR,比较结果是两E2PROM的HDR和TDR相同,确定两个E2PROM是挂接在一条JTAG链上同一个CPLD设备上的;再比较SCL和SDA管脚的BSC属性值,如果完全相同,说明这两个E2PROM设备是挂接在同一条I2C总线上的,这时是不能同时对这两个E2PROM设备进行烧结处理的,E2PROM文件的转换和图2及图3所示的转换方式一样,在烧结时只能依次顺序烧结这两个E2PROM设备;如果这两个E2PROM设备不是挂接在同一条I2C总线上的,则可以将该两个E2PROM的SVF文件中对E2PROM的操作向量合成为一个向量,因而实现对该两个E2PROM的同时烧结。对于能同时对E2PROM进行烧结处理的情形,具体按以下方式进行文件转换:
由于SDR命令是用来设置SCL、SDA管脚的电平值的,实现烧结E2PROM的时序,所以在将两个E2PROM的SVF文件进行合成时,主要依据SDR命令进行。删除E2PROM的SVF文件中TYPE、SIZE和SCL、SDA标识字段以及对应的属性值;保留其他的SVF命令;
假设E2PROM 1和E2PROM 2的SVF文件中的某SDR向量分别如下:
    SDR 100 TDI(XX……101101……XX)
    SDR 100 TDI(101101……XX)
其中,X表示BSC上其他bit位的数值(该X值为无效数据位),101101用来表示SCL和SDA管脚的电平值。由于这两个E2PROM是挂接在同一个CPLD设备上的,所以SDR向量的长度是一样的,同时它们的I2C时序也相同,SVF文件的格式和命令都是一样的,所以只需要将上面两个向量不同位置的SCLSDA值合成到一个向量中就可以实现一个向量对这两个E2PROM进行操作,合成的向量如下所示:
    SDR 100TDI(101101…101101…XX)
E2PROM的SVF文件中的SIZE字段表明E2PROM容量字节大小,如果两个E2PROM的SVF文件头部中的SIZE属性值一样,说明这两个E2PROM设备的容量大小一样,则烧结过程是同时结束的,体现为两个E2PROM的SVF文件中的SDR向量的序列是完全一致的;否则,会出现两个E2PROM设备容量大小不一致的情况,即一个E2PROM设备烧结已经结束,而另一个E2PROM设备还在进行烧结操作,此时只要将SIZE属性值小的SVF文件中的SDR向量合并到SIZE属性值大的SVF向量中即可。
将合成后的SVF文件按前述方式转换为VME文件,发送给相应的烧结执行单元(一般是一个外置或者内置的嵌入式测试控制主设备)执行即可。
图5为本发明CPLD上连接有E2PROM设备的固件烧结装置的一种组成结构示意图,如图5所示,本发明CPLD上连接有E2PROM设备的固件烧结装置包括设置单元50、第一转换单元51、第二转换单元52、发送单元53和烧结单元54,其中,
设置单元50,用于设置电可擦除可编程只读存储器E2PROM的烧结文件转换为嵌入式虚拟机VME文件时所用的关键字标识;
第一转换单元51,用于将E2PROM的烧结文件转换为SVF文件(SVF文件转换是现有技术,不是本发明实现的重点),并在所述SVF文件中插入相应的关键字标识;
第二转换单元52,用于根据所述SVF文件及其关键字标识将所述SVF文件转换为VME文件;
发送单元53,用于将VME文件发送给烧结单元;
烧结单元54,用于根据VME文件对E2PROM进行烧结。
第一转换单元51包括生成子单元、第一转换子单元和第二转换子单元,其中:
生成子单元,用于根据联合测试行动小组JTAG链的物理拓扑结构,生成进行串行时钟线SCL、串行数据线SDA操作的指令向量模板及数据向量模板;
第一转换子单元,用于根据I2C时序关系、所述指令向量模板及所述数据向量模板,将E2PROM的烧结文件转换为指令向量序列及数据向量序列;
第二转换子单元,用于将所述指令向量序列及所述数据向量序列以SVF文件格式表示。
所述SDR数据向量序列包括以下序列中的至少一种:
开始时序、写设备的I2C地址时序、写设备存储器地址时序、写数据字节时序、停止时序。
上述关键字标识包含以下几类:
TYPE关键字标识,用于表明所述SVF文件用于哪种设备版本的烧结;
SIZE关键字标识,用于表明烧结设备容量的大小;
用于记录E2PROM的SCL管脚及SDA管脚在边界扫描链BSC中位置的关键字标识;
前后缀关键字标识,用于确定E2PROM烧结时的指令和数据前后缀数值。
上述JTAG链的物理拓扑结构包括:CPLD与E2PROM之间、或/及CPLD与CPLD之间的物理拓扑结构。
图6为本发明CPLD上连接有E2PROM设备的固件烧结装置的另一种组成结构示意图,如图6所示,在图5所示装置的基础上,本发明CPLD上连接有E2PROM设备的固件烧结装置还包括确定单元55和合并单元56,其中:
确定单元55,用于确定两个以上的E2PROM以不同的I2C总线连接于同一个CPLD上时,触发合并单元;
合并单元56,用于将所述两个以上的E2PROM的SVF文件中的相同的SDR数据向量序列进行合并,而生成一个SVF文件;相同的SDR数据向量序列合成的原则是:所述两个以上的E2PROM的容量相同时,将每个SDR数据向量序列中的有效比特位按各自指令向量序列中的位置进行合并;所述两个以上的E2PROM容量不相同时,将SIZE属性值小的SVF文件中的SDR数据向量合并到SIZE属性值大的SVF向量中即可。
本领域技术人员应当理解,本发明图5及图6所示的CPLD上连接有E2PROM设备的固件烧结装置中的各处理单元的实现功能可参照前述图2至图4中的相关描述而理解,各单元的功能可通过运行于处理器上的程序而实现,也可通过相应的逻辑电路而实现。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。

Claims (8)

1.一种CPLD上连接有E2PROM设备的固件烧结方法,其特征在于,设置电可擦除可编程只读存储器E2PROM的烧结文件转换为嵌入式虚拟机VME文件时所用的关键字标识;所述方法还包括:
将E2PROM的烧结文件转换为串行向量格式SVF文件的过程中,插入所述关键字标识;
根据所述SVF文件及所述关键字标识将所述SVF文件转换为联合测试行动小组JTAG链上统一的VME文件;
将所述VME文件发送给烧结执行单元,由烧结执行单元根据所述VME文件对所述JTAG链上的设备进行烧结。
2.根据权利要求1所述的方法,其特征在于,所述关键字标识包含:
TYPE关键字标识,用于表明所述SVF文件用于哪种设备版本的烧结;
SIZE关键字标识,用于表明烧结设备容量的大小;
用于记录E2PROM的SCL管脚及SDA管脚在边界扫描链BSC中位置的关键字标识;
前后缀关键字标识,用于确定E2PROM烧结时的指令和数据前后缀数值。
3.根据权利要求2所述的方法,其特征在于,所述JTAG链的物理拓扑结构包括:CPLD与E2PROM之间、或/及CPLD与CPLD之间的物理拓扑结构。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
确定两个以上的E2PROM以不同的I2C总线连接于同一个CPLD上时,将所述两个以上的E2PROM的SVF文件中的相同的SDR数据向量序列进行合并,而生成一个SVF文件;其中,相同的SDR数据向量序列合成的原则是:所述两个以上的E2PROM的容量相同时,将每个SDR数据向量序列中的有效比特位按各自指令向量序列中的位置进行合并;所述两个以上的E2PROM容量不相同时,将容量小的E2PROM对应的SVF文件中的SDR数据向量合并到容量大的E2PROM对应的SVF文件中的SDR数据向量中。
5.一种CPLD上连接有E2PROM设备的固件烧结装置,其特征在于,包括设置单元、第一转换单元、第二转换单元、发送单元和烧结单元,其中:
设置单元,用于设置电可擦除可编程只读存储器E2PROM的烧结文件转换为嵌入式虚拟机VME文件时所用的关键字标识;
第一转换单元,用于将E2PROM的烧结文件转换为SVF文件,并在所述SVF文件中插入相应的关键字标识;
第二转换单元,用于根据所述SVF文件及所述关键字标识将所述SVF文件转换为VME文件;
发送单元,用于将VME文件发送给烧结单元;
烧结单元,用于根据VME文件对JTAG链上的设备进行烧结。
6.根据权利要求5所述的装置,其特征在于,所述关键字标识包含:
TYPE关键字标识,用于表明所述SVF文件用于哪种设备版本的烧结;
SIZE关键字标识,用于表明烧结设备容量的大小;
用于记录E2PROM的SCL管脚及SDA管脚在边界扫描链BSC中位置的关键字标识;
前后缀关键字标识,用于确定E2PROM烧结时的指令和数据前后缀数值。
7.根据权利要求6所述的装置,其特征在于,所述JTAG链的物理拓扑结构包括:CPLD与E2PROM之间、或/及CPLD与CPLD之间的物理拓扑结构。
8.根据权利要求6所述的装置,其特征在于,所述装置还包括确定单元和合并单元,其中:
确定单元,用于确定两个以上的E2PROM以不同的I2C总线连接于同一个CPLD上时,触发合并单元;
合并单元,用于将所述两个以上的E2PROM的SVF文件中的相同的SDR数据向量序列进行合并,而生成一个SVF文件;其中,相同的SDR数据向量序列合成的原则是:所述两个以上的E2PROM的容量相同时,将每个SDR数据向量序列中的有效比特位按各自向量序列中的位置进行合并;所述两个以上的E2PROM容量不相同时,将容量小的E2PROM对应的SVF文件中的SDR数据向量合并到容量大的E2PROM对应的SVF文件中的SDR数据向量中。
CN 201010001264 2010-01-19 2010-01-19 Cpld上连接有e2prom设备的固件烧结方法及装置 Expired - Fee Related CN101788946B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 201010001264 CN101788946B (zh) 2010-01-19 2010-01-19 Cpld上连接有e2prom设备的固件烧结方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 201010001264 CN101788946B (zh) 2010-01-19 2010-01-19 Cpld上连接有e2prom设备的固件烧结方法及装置

Publications (2)

Publication Number Publication Date
CN101788946A true CN101788946A (zh) 2010-07-28
CN101788946B CN101788946B (zh) 2013-11-06

Family

ID=42532167

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 201010001264 Expired - Fee Related CN101788946B (zh) 2010-01-19 2010-01-19 Cpld上连接有e2prom设备的固件烧结方法及装置

Country Status (1)

Country Link
CN (1) CN101788946B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102455972A (zh) * 2010-10-25 2012-05-16 英业达股份有限公司 编程装置
CN104035794A (zh) * 2014-06-03 2014-09-10 瑞斯康达科技发展股份有限公司 一种实现逻辑器件固件升级的方法及装置
WO2016127578A1 (zh) * 2015-02-12 2016-08-18 中兴通讯股份有限公司 处理器子卡、适配处理器子卡的电源板及系统板
CN108170622A (zh) * 2017-12-28 2018-06-15 深圳市亿威尔信息技术股份有限公司 一种多个cpld芯片地址自动配置系统及方法
CN117573625A (zh) * 2023-11-30 2024-02-20 沐曦科技(北京)有限公司 一种用于ate测试的处理方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6714041B1 (en) * 2002-08-30 2004-03-30 Xilinx, Inc. Programming on-the-fly (OTF)
CN1518252A (zh) * 2003-01-27 2004-08-04 华为技术有限公司 对逻辑器件进行加载或升级的方法及系统
CN2681220Y (zh) * 2004-01-19 2005-02-23 上海环达计算机科技有限公司 用于嵌入式系统的系统启动和测试板
CN1624665A (zh) * 2003-12-02 2005-06-08 深圳创维-Rgb电子有限公司 一种烧写e2prom的方法和装置
CN1991731A (zh) * 2005-12-26 2007-07-04 鸿富锦精密工业(深圳)有限公司 芯片烧录系统
CN101063940A (zh) * 2006-04-28 2007-10-31 佛山市顺德区顺达电脑厂有限公司 复杂式可程序逻辑器的程序代码的加载方法
CN101551769A (zh) * 2009-04-28 2009-10-07 中兴通讯股份有限公司 可配置固件的烧结方法及装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6714041B1 (en) * 2002-08-30 2004-03-30 Xilinx, Inc. Programming on-the-fly (OTF)
CN1518252A (zh) * 2003-01-27 2004-08-04 华为技术有限公司 对逻辑器件进行加载或升级的方法及系统
CN1624665A (zh) * 2003-12-02 2005-06-08 深圳创维-Rgb电子有限公司 一种烧写e2prom的方法和装置
CN2681220Y (zh) * 2004-01-19 2005-02-23 上海环达计算机科技有限公司 用于嵌入式系统的系统启动和测试板
CN1991731A (zh) * 2005-12-26 2007-07-04 鸿富锦精密工业(深圳)有限公司 芯片烧录系统
CN101063940A (zh) * 2006-04-28 2007-10-31 佛山市顺德区顺达电脑厂有限公司 复杂式可程序逻辑器的程序代码的加载方法
CN101551769A (zh) * 2009-04-28 2009-10-07 中兴通讯股份有限公司 可配置固件的烧结方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
邓启辉: "用JTAG 烧写Flash 的方法", 《兵工自动化》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102455972A (zh) * 2010-10-25 2012-05-16 英业达股份有限公司 编程装置
CN104035794A (zh) * 2014-06-03 2014-09-10 瑞斯康达科技发展股份有限公司 一种实现逻辑器件固件升级的方法及装置
CN104035794B (zh) * 2014-06-03 2017-09-08 瑞斯康达科技发展股份有限公司 一种实现逻辑器件固件升级的方法及装置
WO2016127578A1 (zh) * 2015-02-12 2016-08-18 中兴通讯股份有限公司 处理器子卡、适配处理器子卡的电源板及系统板
CN108170622A (zh) * 2017-12-28 2018-06-15 深圳市亿威尔信息技术股份有限公司 一种多个cpld芯片地址自动配置系统及方法
CN117573625A (zh) * 2023-11-30 2024-02-20 沐曦科技(北京)有限公司 一种用于ate测试的处理方法
CN117573625B (zh) * 2023-11-30 2024-03-22 沐曦科技(北京)有限公司 一种用于ate测试的处理方法

Also Published As

Publication number Publication date
CN101788946B (zh) 2013-11-06

Similar Documents

Publication Publication Date Title
CN107656773B (zh) 一种多核dsp启动方法
CN100492334C (zh) 串行周边接口装置
US5729683A (en) Programming memory devices through the parallel port of a computer system
CN100383737C (zh) 单片机在线加载升级方法及系统
CN101788946B (zh) Cpld上连接有e2prom设备的固件烧结方法及装置
CN105930186B (zh) 多cpu的软件加载方法及基于多cpu的软件加载装置
CN101706725A (zh) 一种可重定位程序的加载及调试方法及系统
CN102495797A (zh) 智能卡测试装置和测试方法
CN101894039A (zh) 一种嵌入式设备驱动程序辅助生成方法及系统
CN101196819B (zh) 一种片上系统芯片自适应启动设备的方法
CN112416824B (zh) efuse读写控制器、芯片、电子设备及控制方法
CN101699415B (zh) 核心逻辑电路、计算机系统及外围设备初始化方法
WO2023221753A1 (zh) 串口通信方法及相关装置
CN107526614B (zh) Fpga开发板的通信方法
CN101894028A (zh) Linux内核镜像数据支持多种CPU的实现方法及装置
CN103678187A (zh) 一种微控制单元及其控制方法
CN106201605A (zh) 基于FPGA和PowerPC的FPGA启动加载FLASH升级系统及方法
CN103092648A (zh) 一种镜像升级方法、系统及用户设备和个人计算机
CN100498731C (zh) 基本输入输出系统支持直立卡的方法
CN105630530A (zh) 数字信号处理器多级启动方法及系统
CN102855145B (zh) 嵌入式电子设备启动方法及系统
CN109324838B (zh) 单片机程序的执行方法、执行装置及终端
CN110262349A (zh) 一种c8051f系列单片机的远程在线编程方法及系统
US8341334B2 (en) Flash memory apparatus and method for operating the same and data storage system
CN111338700B (zh) 加载fpga版本的方法及装置、存储介质

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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20180126

Address after: 518000, two 703A, COFCO business park, two Xian Xian Road, Xin'an, Shenzhen, Guangdong, Baoan District

Patentee after: Shenzhen Fu Hai Sunshine Technology Co., Ltd.

Address before: 518057 Nanshan District Guangdong high tech Industrial Park, South Road, science and technology, ZTE building, Ministry of Justice

Patentee before: ZTE Corporation

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

Granted publication date: 20131106

Termination date: 20190119