CN1514377A - 对多个可编程逻辑器件进行在线加载的方法和装置 - Google Patents

对多个可编程逻辑器件进行在线加载的方法和装置 Download PDF

Info

Publication number
CN1514377A
CN1514377A CNA031425917A CN03142591A CN1514377A CN 1514377 A CN1514377 A CN 1514377A CN A031425917 A CNA031425917 A CN A031425917A CN 03142591 A CN03142591 A CN 03142591A CN 1514377 A CN1514377 A CN 1514377A
Authority
CN
China
Prior art keywords
pld
programmable logic
logic device
register
controller
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
CNA031425917A
Other languages
English (en)
Other versions
CN100442254C (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.)
UTStarcom Telecom Co Ltd
Original Assignee
UT SIDAKANG (CHINA) CO Ltd
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 UT SIDAKANG (CHINA) CO Ltd filed Critical UT SIDAKANG (CHINA) CO Ltd
Priority to CNB031425917A priority Critical patent/CN100442254C/zh
Publication of CN1514377A publication Critical patent/CN1514377A/zh
Application granted granted Critical
Publication of CN100442254C publication Critical patent/CN100442254C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Logic Circuits (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种通过扩展IO的方法来对多个PLD进行在线加载的方法和装置,对一个PLD也适用。该在线加载的装置包括一个控制器,多个可被加载的可编程逻辑器件,以及一个扩展寄存器组,所述寄存器组连接在控制器和多个可编程逻辑器件之间。这种装置可以避免对CPU管脚的额外需求,同时由于寄存器可以保持数据因此可以避免管脚复用带来的软件互斥问题。该方法简单灵活,可以降低系统复杂度提供稳定性。

Description

对多个可编程逻辑器件进行在线加载的方法和装置
技术领域
本发明涉及电子设备领域,尤其涉及一种对多个可编程逻辑器件(PLD,Programmable Logic Device)进行在线加载装置和方法。
背景技术
PLD广泛应用于电子设备中。可以通过JTAG(联合测试行动小组,Joint Test Action Group)对其进行在线加载,或者其他途径进行在线加载。一般采用CPU(Central Processing Unit)或者控制芯片的IO脚产生波形的方法实现在线加载,每个PLD至少需要4个脚。如果有n个PLD需要同一个CPU加载,那么CPU至少需要提供4×n个IO管脚或者通过管脚的复用来给多个PLD进行加载。
如果PLD数量很多,则该方法几乎不可行。
本发明的方法,不需要使用CPU的额外IO管脚,且可以避免通过管脚复用带来的互斥问题。
发明内容
针对现有技术中的缺陷,本发明的目的在于提供一种不需要消耗CPU额外IO管脚可以对多个PLD进行在线加载的方法。
根据本发明的一个方面,提供了一种对多个可编程逻辑器件进行在线加载的装置,该加载装置包括一个控制器,多个可被加载的可编程逻辑器件,以及一个扩展寄存器组,所述寄存器组连接在控制器和多个可编程逻辑器件之间。
根据本发明的另一个方面,提供了一种可编程逻辑器件在线加载装置中的在线加载方法,所述的在线加载装置包括一个控制器,多个可被加载的可编程逻辑器件,以及一个扩展寄存器组,所述寄存器组连接在控制器和多个可编程逻辑器件之间,所述的方法包括步骤:
(1)控制器根据加载文件,向相应扩展寄存器组中的寄存器写入相应数据;
(2)寄存器输出信号控制可编程逻辑器件的相应管脚变高变低产生所需波形,完成加载。
本发明的基本构思在于,通过CPU对外部寄存器的操作,使PLD的相应管脚产生相应波形完成加载。
在本发明中,没有额外占用CPU的IO管脚,且不受PLD数量的限制,同时由于软件控制产生波形,因而灵活性大大提高。
附图说明
图1是根据本发明一种实施方式的加载装置的原理图;以及
图2是根据本发明的一种实施方式的加载过程的波形图。
具体实施方式
图1是根据本发明一种实施方式的加载装置的原理图。如图1所示,在一个电子设备中包括一个控制器CPU,一个扩展寄存器组CPLD(复杂可编程逻辑器件,Complex Programmable Logic Device),以及8个PLD(图中以XILINX公司的FPGA举例)。显然该电子设备还包括其它器件或装置,但由于它们与本发明无关,所以略去。如图1所示,CPU通过地址、数据、控制总线与扩展寄存器组连接,寄存器的输入输出与对应FPGA的相应管脚连接。其中CPU通过地址总线、数据总线、片选、读写等常规接口完成对扩展寄存器组CPLD的寄存器的访问;扩展寄存器组CPLD将CPU写入的内容通过本发明的方法送到扩展寄存器组CPLD的IO管脚上,这些输出管脚连到FPGA的加载管脚。在本优选实施方式中,用复杂可编程器件CPLD来实现可扩展寄存器组,并且FPGA使用PS(Passive Serial)模式加载,复杂可编程器件的输出IO连到FPGA的时钟管脚CCLK、数据输入管脚DIN、编程设定管脚/PROG;FPGA的DONE管脚接到扩展寄存器组的输入IO上。如果以包括4个寄存器的扩展寄存器组为例,可以将寄存器分配如下:
寄存器地址 类型 名称 描述
0x00 只读  0  DONE_FPGA1 第一片FPGA加载完成
 1  DONE_FPGA2 第二片FPGA加载完成
 2  DONE_FPGA3 第三片FPGA加载完成
 3  DONE_FPGA4 第四片FPGA加载完成
 4  DONE_FPGA5 第五片FPGA加载完成
 5  DONE_FPGA6 第六片FPGA加载完成
 6  DONE_FPGA7 第七片FPGA加载完成
 7  DONE_FPGA8 第八片FPGA加载完成
0x01 读写  0  CCLK_FPGA1 第一片FPGA的CCLK
 1  CCLK_FPGA2 第二片FPGA的CCLK
 2  CCLK_FPGA3 第三片FPGA的CCLK
 3  CCLK_FPGA4 第四片FPGA的CCLK
 4  CCLK_FPGA5 第五片FPGA的CCLK
 5  CCLK_FPGA6 第六片FPGA的CCLK
 6  CCLK_FPGA7 第七片FPGA的CCLK
 7  CCLK_FPGA8 第八片FPGA的CCLK
 0x02 读写  0  DIN_FPGA1 第一片FPGA的DIN
 1  DIN_FPGA2 第二片FPGA的DIN
 2  DIN_FPGA3 第三片FPGA的DIN
 3  DIN_FPGA4 第四片FPGA的DIN
 4  DIN_FPGA5 第五片FPGA的DIN
 5  DIN_FPGA6 第六片FPGA的DIN
 6  DIN_FPGA7 第七片FPGA的DIN
 7  DIN_FPGA8 第八片FPGA的DIN
 0x03 读写  0  /PROG_FPGA1 第一片FPGA的/PROG
 1  /PROG_FPGA2 第二片FPGA的/PROG
 2  /PROG_FPGA3 第三片FPGA的/PROG
 3  /PROG_FPGA4 第四片FPGA的/PROG
 4  /PROG_FPGA5 第五片FPGA的/PROG
 5  /PROG_FPGA6 第六片FPGA的/PROG
 6  /PROG_FPGA7 第七片FPGA的/PROG
 7  /PROG_FPGA8 第八片FPGA的/PROG
其中地址表示寄存器的地址,类型表示对寄存器读写类型的设定,位表示每个寄存器的各个位,名称体现了与相应FPGA的管脚的连接方式,描述部分对管脚的功能进行了说明。
图2是根据本发明的一种实施方式的加载过程的波形图。下面举例描述用图1所示的装置对FPGA进行加载的过程。
假设对第x片(x取值1到8)FPGA进行加载。
1通过CPU一个存储装置(未示出)中读入第x片FPGA的bit文件;
2通过CPU向0x03寄存器的第(x-1)位写入0并且随后写入1,形成/program时序,表示要清除FPGA;
3通过判断0x00寄存器的第(x-1)位变成0来判断出清除已经完成;
(1)从bit文件的串行数据流中读入一个bit;
(2)通过CPU向0x01寄存器的第(x-1)位写入0,形成时钟信号CCLK的下降沿;
(3)通过CPU向0x02寄存器的第(x-1)位写入所读入的bit,时序波形如DIN所示;
(4)再向0x01寄存器的第(x-1)位写入1产生CCLK时钟上沿;
(5)重复(1)-(4),直到文件全部读完;
4读取0x00寄存器的第(x-1)位,看是否变成1;若为1则加载成功。
以上针对附图1和2描述了本发明的一种优选实施方式。在本发明的另一个优选实施方式中,还可以对多个PLD并行写入,从而大大提高写入效率。并行写入的方法包括如下步骤(以同时写入两片举例说明):假设要对第x,y片FPGA进行加载。
1通过CPU一个存储装置(未示出)中分别读入第x,y片FPGA的xbit和ybit文件;
2通过CPU向0x03寄存器的第(x-1),(y-1)位写入0并且随后写入1,形成/program时序,表示要清除FPGA;
3通过判断0x00寄存器的第(x-1),(y-1)位都已经变成0来判断出清除已经完成;
(1)分别从xbit文件和ybit文件的串行数据流中读入一个xbit和一个ybit;
(2)判断xbit文件和ybit文件中的任一个是否已经结束,如果结束,则设相应标志位ENDX或ENDY为1。
(3)通过CPU分别向0x01寄存器的第(x-1)位和第(y-1)位写入0+ENDX和0+ENDY,形成时钟信号CCLK的下降沿;
(4)通过CPU向0x02寄存器的第(x-1)位和第(y-1)位写入所读入的xbit和ybit,时序波形分别如DIN所示;
(5)再向0x01寄存器的第(x-1)位和第(y-1)位分别写入1+ENDX和1+ENDY产生CCLK时钟上沿;
(6)重复(1)-(5),直到两个文件全部读完;4读取0x00寄存器的第(x-1)位和第(y-1)位,看是否变成1;若为1则表示相应PLD加载成功。
本领域的普通技术人员显然可以对具体的实施细节进行改变来进行并行加载。
根据本发明的进一步教导,还可以通过将同一个寄存器的不同位与相同PLD的不同写入相关管脚连接来降低对CPU的地址占用。例如,如果只需要对两个PLD进行写入,那么用图1的装置将会占用4个CPU的地址,而且对寄存器的浪费也大。根据一个优选实施方式的教导,可以只采用两个寄存器,其连接方式可以如下:
寄存器地址 类型    位     名称     描述
 0x00 只读     0     DONE_FPGA1     第一片FPGA加载完成
    1     DONE_FPGA2     第二片FPGA加载完成
    2     ?     ?
    3     ?     ?
    4     ?     ?
    5     ?     ?
    6     ?     ?
    7     ?     ?
 0x01 读写     0     CCLK_FPGA1     第一片FPGA的CCLK
    1     DIN_FPGA1     第一片FPGA的DIN
    2     /PROG_FPGA1     第一片FPGA的/PROG
    3     CCLK_FPGA2     第二片FPGA的CCLK
    4     DIN_FPGA2     第二片FPGA的DIN
    5     /PROG_FPGA2     第二片FPGA的/PROG
    6     ?     ?
    7     ?     ?
用以上连接方式,也完全可以完成对两片的写入。至于如何在这种连接方式下产生适当的写入时序,对本领域的普通技术人员应该是显而易见的,这里不再详细描述。并且对于各管脚的分配,本领域的普通技术人员也可以很容易进行改变。

Claims (7)

1.对多个可编程逻辑器件进行在线加载的装置,包括一个控制器,多个可被加载的可编程逻辑器件,其特征在于还包括一个扩展寄存器组,所述寄存器组连接在控制器和多个可编程逻辑器件之间。
2.如权利要求1所述的装置,其特征在于所述的寄存器组中的寄存器被分成两类,一类是只读,另一类可读写,并且将只读寄存器中的位与可编程逻辑器件的表示加载完成的信号输出端相连,其可读写寄存器中的位与可编程逻辑器件中的其它与加载有关的信号端相连。
3.如权利要求1所述的装置,其特征在于所述的寄存器组包括4个寄存器,第一个寄存器的各位分别与可编程逻辑器件的时钟端相连,第二寄存器的各位分别与可编程逻辑器件的表示加载完成的信号端相连,第三个寄存器的各位分别与可编程逻辑器件的数据输入端相连,第四个寄存器的各位分别与可编程逻辑器件的加载控制端相连。
4.如权利要求1或2所述的装置,其特征在于所述的寄存器组包括2个寄存器,所述可编程逻辑器件的个数是两个,其中第一个寄存器中有两位分别与可编程逻辑器件的时钟端相连,有两位分别与可编程逻辑器件的数据输入端相连,有两位分别与可编程逻辑器件的加载控制端相连,第二寄存器中有两位分别与可编程逻辑器件的表示加载完成的信号端相连。
5.一种可编程逻辑器件在线加载装置中的在线加载方法,所述的在线加载装置包括一个控制器,多个可被加载的可编程逻辑器件,以及一个扩展寄存器组,所述寄存器组连接在控制器和多个可编程逻辑器件之间,所述的方法包括步骤:控制器根据加载文件,向相应扩展寄存器组中的寄存器写入相应数据;寄存器输出信号控制可编程逻辑器件的相应管脚变高变低产生所需波形,完成加载。
6.如权利要求5所述的方法,其特征在于所述的方法进一步包括步骤:
1)用控制器读入某个可编程逻辑器件的bit文件;
2)通过控制器向寄存器组中与该可编程器件的清除信号对应的位进行预定形式的写入,形成可编程逻辑器件的清除信号;
3)读取寄存器组中与该可编程器件的清除完成信号对应的位的值并根据该值判断出清除已经完成;
i.从所述bit文件的串行数据流中读入一个bit;
ii.控制器向寄存器组中与可编程逻辑器件的时钟信号对应的位写入第一值,形成时钟信号CCLK的第一沿;
iii.控制器向寄存器组中与该可编程逻辑器件的数据输入端对应的位写入所读入的bit;
iv.控制器向寄存器组中与该可编程寄存器的时钟信号对应的位写入第二值产生时钟信号的第二沿;
v.重复(i)-(iv),直到文件全部读完;
4)读取寄存器组中与该可编程寄存器的表示加载完成的位的值,看是否变成表示加载完成的值;若是,则加载成功。
7.如权利要求5所述的方法,其特征在于所述的方法进一步包括步骤:
1)用控制器读入多个可编程逻辑器件的bit文件;
2)通过控制器向寄存器组中分别与所述多个可编程器件的清除信号对应的位进行预定形式的写入,分别形成所述多个可编程逻辑器件的清除信号;
3)读取寄存器组中分别与所述多个可编程逻辑器件的清除完成信号对应的位的值并根据这些值判断出所述多个可编程逻辑清除已经完成;
i.从所述多个bit文件的串行数据流中各读入一个bit;
ii.控制器向寄存器组中与所述多个可编程逻辑器件的时钟信号对应的位写入第一值,形成时钟信号CCLK的第一沿;
iii.控制器向寄存器组中与所述多个可编程逻辑器件的数据输入端对应的位分别写入所读入的bit;
iv.控制器分别向寄存器组中与所述多个可编程寄存器的时钟信号对应的位写入第二值产生时钟信号的第二沿;
v.重复(i)-(iv),直到文件全部读完,在这期间先读完的文件则先退出写入;
读取寄存器组中与所述多个可编程寄存器的表示加载完成的位的值,看是否变成表示加载完成的值;若是,则表示相应的可编程逻辑器件加载成功。
CNB031425917A 2003-06-13 2003-06-13 对多个可编程逻辑器件进行在线加载的方法和装置 Expired - Fee Related CN100442254C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB031425917A CN100442254C (zh) 2003-06-13 2003-06-13 对多个可编程逻辑器件进行在线加载的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB031425917A CN100442254C (zh) 2003-06-13 2003-06-13 对多个可编程逻辑器件进行在线加载的方法和装置

Publications (2)

Publication Number Publication Date
CN1514377A true CN1514377A (zh) 2004-07-21
CN100442254C CN100442254C (zh) 2008-12-10

Family

ID=34240365

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB031425917A Expired - Fee Related CN100442254C (zh) 2003-06-13 2003-06-13 对多个可编程逻辑器件进行在线加载的方法和装置

Country Status (1)

Country Link
CN (1) CN100442254C (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100340983C (zh) * 2005-07-18 2007-10-03 杭州华三通信技术有限公司 对非易失可编程逻辑器件在线升级的方法及装置
CN100373369C (zh) * 2005-07-19 2008-03-05 杭州华三通信技术有限公司 控制器及多个可编程逻辑器件的组合访问装置及方法
CN100386748C (zh) * 2006-04-04 2008-05-07 杭州华三通信技术有限公司 一种在单板中对外围器件进行片选的方法和系统
CN101458624B (zh) * 2007-12-14 2012-05-30 华为技术有限公司 可编程逻辑器件的加载方法、处理器和装置
CN104461620A (zh) * 2014-11-27 2015-03-25 北京时代民芯科技有限公司 一种SoPC芯片自主重构软配置方法
CN111857867A (zh) * 2020-06-30 2020-10-30 新华三技术有限公司 一种逻辑文件的加载方法、装置和网络设备

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN2548537Y (zh) * 2002-05-27 2003-05-07 刘阿根 坐式便器卫生垫圈

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100340983C (zh) * 2005-07-18 2007-10-03 杭州华三通信技术有限公司 对非易失可编程逻辑器件在线升级的方法及装置
CN100373369C (zh) * 2005-07-19 2008-03-05 杭州华三通信技术有限公司 控制器及多个可编程逻辑器件的组合访问装置及方法
CN100386748C (zh) * 2006-04-04 2008-05-07 杭州华三通信技术有限公司 一种在单板中对外围器件进行片选的方法和系统
CN101458624B (zh) * 2007-12-14 2012-05-30 华为技术有限公司 可编程逻辑器件的加载方法、处理器和装置
CN104461620A (zh) * 2014-11-27 2015-03-25 北京时代民芯科技有限公司 一种SoPC芯片自主重构软配置方法
CN111857867A (zh) * 2020-06-30 2020-10-30 新华三技术有限公司 一种逻辑文件的加载方法、装置和网络设备
CN111857867B (zh) * 2020-06-30 2024-03-08 新华三技术有限公司 一种逻辑文件的加载方法、装置和网络设备

Also Published As

Publication number Publication date
CN100442254C (zh) 2008-12-10

Similar Documents

Publication Publication Date Title
CN100504781C (zh) 一种用cpu同时加载多片fpga的方法
WO2000052703A1 (en) Parallel testing of integrated circuit devices using cross-dut and within-dut comparisons
CN101044461A (zh) 数据处理系统和用于监控处理单元的高速缓冲存储器一致性的方法
EP2002340B1 (de) Verfahren zum testen zumindest einer in einem steuergerät eingebauten recheneinheit
CN112955761B (zh) 用于在汽车应用部署中执行内建自测的测试系统
CN1514377A (zh) 对多个可编程逻辑器件进行在线加载的方法和装置
US20100318338A1 (en) System and Method For Implementing A Trace Interface
CN102929755A (zh) 一种cpu模块地址和数据总线的故障检测方法
CN113705140A (zh) 芯片验证方法、系统、设备及存储介质
CN1249604C (zh) 一种对现场可编程门阵列的在线加载方法
CN104331335A (zh) 门户网站的死链检查方法和装置
US20030221173A1 (en) Method and apparatus for detecting connectivity conditions in a netlist database
US7480611B2 (en) Method and apparatus to increase the usable memory capacity of a logic simulation hardware emulator/accelerator
CN1344416A (zh) 电子电路内装自测试的装置和方法
US7539957B1 (en) Automatic test pattern generation tool with feedback path capabilities for testing circuits with repeating blocks
CN101140315A (zh) 一种jtag下载方式下fpga逻辑代码的下载方法及下载系统
JP3737662B2 (ja) システムlsiのテストデータ最適化生成方式
CN1632759A (zh) 可灵活实现片内eeprom仿真功能的方法
CN1856712A (zh) 用于优化电子电路的测试和配置吞吐量的系统和方法
Lakshminarayana et al. A power management methodology for high-level synthesis
CN1518252A (zh) 对逻辑器件进行加载或升级的方法及系统
CN100340990C (zh) 一种flash加载的方法
CN1230743C (zh) 一种电路板设计方法
Kinseher et al. On the automated verification of user-defined MBIST algorithms
CN111858216B (zh) 提高ssd可测试性覆盖率的方法、装置、设备及介质

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
ASS Succession or assignment of patent right

Owner name: UT STARCOM COMMUNICATION CO., LTD.

Free format text: FORMER OWNER: UTSTARCOM (CHINA) INCORPORATED

Effective date: 20121218

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: 100027 CHAOYANG, BEIJING TO: 310053 HANGZHOU, ZHEJIANG PROVINCE

TR01 Transfer of patent right

Effective date of registration: 20121218

Address after: Hangzhou City, Zhejiang province Binjiang District 310053 Spring Road No. 1576 Leton Technology Park Building No. 3

Patentee after: UT Starcom Communication Co., Ltd.

Address before: 100027 Beijing city Dongsishitiao Beihai Manhattan building B block 11 layer

Patentee before: UT Sidakang (China) Co., Ltd.

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

Granted publication date: 20081210

Termination date: 20150613

EXPY Termination of patent right or utility model