CN1591346A - 一种flash加载的方法 - Google Patents
一种flash加载的方法 Download PDFInfo
- Publication number
- CN1591346A CN1591346A CN 03156457 CN03156457A CN1591346A CN 1591346 A CN1591346 A CN 1591346A CN 03156457 CN03156457 CN 03156457 CN 03156457 A CN03156457 A CN 03156457A CN 1591346 A CN1591346 A CN 1591346A
- Authority
- CN
- China
- Prior art keywords
- flash
- loading
- circuit board
- bus
- data
- 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
Links
Images
Landscapes
- Test And Diagnosis Of Digital Computers (AREA)
- Tests Of Electronic Circuits (AREA)
Abstract
本发明说明一种FLASH加载的方法,包括:使用一具有CPU的主控板,在该主控板上设置边界扫描测试总线,将需要实现FLASH加载的电路板内的边界扫描器件的测试端口信号线对应连接到测试总线上,主控板通过该测试总线发送加载命令和数据来设置各边界扫描器引脚的状态,从而在FLASH的引脚上模拟产生读写时序,实现FLASH加载。本发明方法不需要专门的加载设备,无论电路板上的CPU是否工作正常,无论电路板上的FLASH是贴片封装还是插装方式,都可实现对FLASH的加载。
Description
技术领域
本发明涉及电子领域的测试技术,尤指一种FLASH加载的方法。
背景技术
随着集成电路的密度越来越大,利用传统方法对电路板进行测试的难度也越来越大。1985年,由IBM、AT&T、Texas Instruments、PhilipsElectronics NV、Siemens、Alcatel和Ericsson等公司成立的JETAG(JointEuropean Test Action Group)提出了边界扫描技术,该技术通过器件输入输出管脚与内核电路之间的BSC(Boundary-Scan Cell,边界扫描单元)对器件及其***电路进行测试。1986年,由于其它地区的一些公司的加入,JETAG改名为JTAG(Joint Test Action Group)。1990年,IEEE正式承认了JTAG标准,经过补充和修订以后,命名为IEEE1149.1-90。
每一个边界扫描器件的测试端口都有四个必须具备的信号线:测试时钟(Test Clock)、测试模式选择(Test Mode Select)、测试数据输入(Test DataInput)、测试数据输出(Test Data Output)以及一个可选的测试复位信号(Test RESET)。在电路板内将各个边界扫描器件的测试数据输出信号与测试数据输入信号相级联后组成菊花链就可以实现对电路板的测试。
在进行边界扫描测试的过程中,测试工具可以读写边界扫描器件的输入/输出引脚。以CPU(Centre Process Unit,中央处理器)为例,它们一般都具有边界扫描测试端口。在进行边界扫描测试的过程中,测试工具可以通过CPU的边界扫描测试端口在其输入/输出引脚上读取/设置逻辑状态。由于CPU一般都有存储器与其相连,因此,可以在存储器的引脚上模拟产生读、写时序波形。一个包含CPU的菊花链的示例如图1所示。图中,FLASH的所有引脚均与器件2(CPU)相连,通过边界扫描菊花链可以读、写CPU的输入、输出引脚,控制FLASH的地址线、数据线以及控制信号线,实现读、写操作,完成对FLASH的编程。
通常在一个***内具有多个电路板,如果每个电路板内部都有如图1所示的边界扫描链,将这些不同电路板内部的菊花链信号连接成测试总线并进行统一的控制,就可以实现对各个电路板内部边界扫描器件的控制,从而实现对图中所示的FLASH的编程操作。
现有技术的技术方案:
FLASH的编程方式分为两大类:在板编程(OBP,On-Board Programming)和离板(Off-Board)编程。
在板编程是指在FLASH器件被焊接到电路板上以后对其进行编程。在板编程的常见方法有利用专用设备进行的在线编程、利用CPU进行的在***编程。
ICP(In-Circuit Programming)或ILDP(In-Line Device Programming)是常用的在线编程方法,它利用夹具把加载设备的测试信号连接到电路板上FLASH的各个管脚,并将所有和FLASH有连接关系的其它器件进行电气隔离,直接对FLASH器件进行编程。
在线编程还有另外一种方式,即通过单板内部的边界扫描测试口实现FLASH的编程,其原理如图2所示。
利用边界扫描测试端口实现FLASH编程,实际上是通过测试存取端口(TAP)控制边界扫描器件的I/O引脚,在FLASH器件的引脚上产生读写时序,实现FLASH的编程。
通过边界扫描测试端口对FLASH进行编程属于在板编程的一种方式,它只要求FLASH的所有地址线、数据线和控制线都要与边界扫描器件相连。
在***编程ISP(In-System Programming)是指通过CPU执行FLASH器件的读写操作实现编程。这种方法需要CPU能够正常工作。
目前常用的FLASH编程方法中,离板编程一般是指专用的编程器对插装的FLASH进行编程,FLASH在编程后再装配到电路板上。
现有技术的缺点:
1、离板编程一般只适用于插装的、小容量的FLASH,不适用于贴片封装的、大容量的FLASH;
2、在线编程需要在专用的设备,无法在运行现场对电路板进行加载;
3、在***编程需要在CPU正常工作的情况下才能加载,因此,当发生硬件故障(如,代码丢失)或软件故障从而导致CPU无法正常工作时,电路板将无法加载FLASH。
发明内容
本发明提供一种FLASH加载的方法,不需要专门的加载设备,无论电路板上的CPU是否工作正常,无论电路板上的FLASH是贴片封装还是插装方式,都可实现对FLASH的加载。
本发明的方法包括:使用一具有CPU的主控板,在该主控板上设置边界扫描测试总线,将需要实现FLASH加载的电路板内的边界扫描器件的测试端口信号线对应连接到测试总线上,主控板通过该测试总线发送加载命令和数据来设置各边界扫描器引脚的状态,从而在FLASH的引脚上模拟产生读写时序,实现FLASH加载。
所述主控板上设置有嵌入式测试总线控制器,该控制器接收加载命令和数据并转换成测试总线的信号输出,同时接收从各电路板返回的加载结果并保存下来供CPU读取。
所述控制器接收的加载数据预先存储在主控板上的存储器内。
所述控制器接收的加载数据是主控板从外部的加载终端接收的。
所述测试总线上可连接复数个需要实现FLASH加载的电路板,每个电路板上都设置有一个可寻址扫描端口,通过给该可寻址扫描端口设置不同的硬件地址来区分不同的电路板。
当连接的复数个电路板中的一部分为相同的电路板时,所述控制器可以通过发出一个特殊的地址选通命令,同时选通该些相同的电路板,以实现组播加载。
当连接的复数个电路板全部相同时,所述控制器可以通过发出一个特殊的地址选通命令,同时选通全部电路板,以实现广播加载。
所述可寻址扫描端***有地址选通逻辑,所述控制器通过一组特定的数据选通某一地址的可寻址扫描端口。
所述测试总线包括复位总线、时钟总线、模式输入总线、数据输出总线和数据输入总线。
所述需要实现FLASH加载的各电路板内部的边界扫描器件组成一个菊花链。
本发明的优点:
1、不需要专门的加载工具就可以进行加载,即使是在电路板的运行现场也可以加载;
2、加载操作不依赖电路板上的CPU,当FLASH中数据丢失引起电路板故障或者发生软件故障时均可以对电路板进行加载;
3、不论是插装的FLASH,还是贴片封装的FLASH,只要其引脚与边界扫描器件相连,就可以进行加载;
4、当***内具有多个相同的电路板时,可以实现对这些电路板进行组播或广播加载。
附图说明
图1为现有技术中包含CPU的边界扫描菊花链示意图。
图2为现有技术中通过电路板内部的边界扫描测试端口实现FLASH编程的原理方框图。
图3为本发明的利用边界扫描测试总线实现FLASH加载的接线示意图。
图4为本发明方法中的主控板结构示意图之一。
图5为本发明方法中的主控板结构示意图之二。
图6为本发明方法中具有可寻址扫描端口的电路板硬件结构示意图。
具体实施方式
本发明方法通过在***内部布置边界扫描测试总线,并将所有电路板均连接到测试总线之上,实现对各个电路板内的FLASH的加载。硬件实现的示意图如图3所示。
图3中,PTRST(Primary Test Reset,初级测试复位)、PTCK(Primary TestClock input,初级测试时钟输入)、PTMS(Primary Test Mode Select input,初级测试模式输入)、PTDO(Primary Test Data Output,初级测试数据输出)和PTDI(Primary Test Data Input,初级测试数据输入)是边界扫描测试总线的五个信号线。各电路板内部的边界扫描器件组成一个菊花链。
在主控板上设计有一个嵌入式测试总线控制器(eTBC,Embedded Test BusController),该控制器根据主控板上的CPU的命令向其它电路板发送数据。在每个从电路板上都设计有一个可寻址扫描端口(ASP,Addressable ScanPort),它通过设置不同的硬件地址来区别不同的电路板。主控板通过eTBC向从电路板发送加载数据,引起从电路板上的边界扫描器件的测试存取端口(TAP,Test Access Port)的状态发生改变,进而读取或者设置这些边界扫描器件引脚的状态,在FLASH的引脚上模拟产生读写时序,实现FLASH的编程。
eTBC在主控板的CPU控制下实现对测试总线的控制。当不启动加载操作时,eTBC和ASP不影响***的工作。在加载过程中,主控板既可以在本板上产生数据并通过eTBC发送到测试总线上,也可以从外部的终端接收命令与数据再通过eTBC发送到测试总线上。
包含eTBC并从外部终端接收加载数据的主控板的结构示意图如图4所示:主控板的CPU根据加载终端发出的命令和数据,向eTBC发出数据,这些数据被eTBC转换成测试总线的信号输出(PTRST、PTCK、PTMS和PTDO)。eTBC在输出信号的同时也接收测试总线上的信号输入(PTDI),并将该信号的值保存起来供CPU读取,终端根据主控板返回的数据获取FLASH的加载结果。
主控板也可以不从加载终端接收加载数据,而是将保存于本板的待加载数据转换为发送到eTBC的命令与数据,eTBC再将这些命令与数据转换为测试总线的信号输出。
加载数据不从终端获取而保存于板内时,主控板的结构示意图如图5所示。
从eTBC发出的数据会被所有从电路板接收到,在ASP的控制下,eTBC可以实现只对其中一个从电路板进行加载。在加载开始时,eTBC通过一组特定的数据选通某一个地址的ASP,该ASP相当于一个开关,当它被选通后,从电路板的扫描链就可以被eTBC直接控制,从而实现加载操作。
如果在一个***内具有多个相同的从电路板,那么,在加载这部分电路板上的FLASH时,eTBC向测试总线发出的信号流是相同的。因此,eTBC可以发出一个特殊的地址选通命令,同时选通这部分从电路板,同时对这些电路板上的FLASH进行加载,即实现组播加载功能。如果***内的所有从电路板都相同,则可以通过eTBC同时加载所有的从电路板,即实现广播加载功能。
一个通过测试总线加载FLASH并具有ASP的从电路板的硬件结构示意图如图6所示:测试总线一侧的数据通道被称为初级扫描通道(PSP,Primary ScanPaths),该通道上的信号被称为初级测试信号。本板ASP的初级扫描通道与主控板的eTBC相连,次级扫描通道的五个信号(STRST、STCK、STMS、STDO和STDI)与本板内的边界扫描菊花链相连。在ASP内部包含有一个地址选通逻辑,当主控板通过eTBC访问本板时先在测试总线上传送特定的数据来选通本板的ASP,使eTBC能够直接操作从电路板内部的边界扫描菊花链,达到对与边界扫描器相连的FLASH进行加载的目的。
Claims (10)
1、一种FLASH加载的方法,包括:使用一具有CPU的主控板,在该主控板上设置边界扫描测试总线,将需要实现FLASH加载的电路板内的边界扫描器件的测试端口信号线对应连接到测试总线上,主控板通过该测试总线发送加载命令和数据来设置各边界扫描器引脚的状态,从而在FLASH的引脚上模拟产生读写时序,实现FLASH加载。
2、如权利要求1所述的FLASH加载的方法,其特征在于:所述主控板上设置有嵌入式测试总线控制器,该控制器接收加载命令和数据并转换成测试总线的信号输出,同时接收各从电路板返回的加载结果并保存下来供CPU读取。
3、如权利要求2所述的FLASH加载的方法,其特征在于:所述控制器接收的加载数据预先存储在主控板上的存储器内。
4、如权利要求2所述的FLASH加载的方法,其特征在于:所述控制器接收的加载数据是主控板从外部的加载终端接收的。
5、如权利要求2、3或4所述的FLASH加载的方法,其特征在于:所述测试总线上可连接复数个需要实现FLASH加载的电路板,每个电路板上都设置有一个可寻址扫描端口,通过给该可寻址扫描端口设置不同的硬件地址来区分不同的电路板。
6、如权利要求5所述的FLASH加载的方法,其特征在于:当连接的复数个电路板中的一部分为相同的电路板时,所述控制器可以通过发出一个特殊的地址选通命令,同时选通该些相同的电路板,以实现组播加载。
7、如权利要求5所述的FLASH加载的方法,其特征在于:当连接的复数个电路板全部相同时,所述控制器可以通过发出一个特殊的地址选通命令,同时选通全部电路板,以实现广播加载。
8、如权利要求5所述的FLASH加载的方法,其特征在于:所述可寻址扫描端***有地址选通逻辑,所述控制器通过一组特定的数据选通某一地址的可寻址扫描端口。
9、如权利要求8所述的FLASH加载的方法,其特征在于:所述测试总线包括复位总线、时钟总线、模式输入总线、数据输出总线和数据输入总线。
10、如权利要求9所述的FLASH加载的方法,其特征在于:所述需要实现FLASH加载的各电路板内部的边界扫描器件组成一个菊花链。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB031564577A CN100340990C (zh) | 2003-08-28 | 2003-08-28 | 一种flash加载的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB031564577A CN100340990C (zh) | 2003-08-28 | 2003-08-28 | 一种flash加载的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1591346A true CN1591346A (zh) | 2005-03-09 |
CN100340990C CN100340990C (zh) | 2007-10-03 |
Family
ID=34598419
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB031564577A Expired - Fee Related CN100340990C (zh) | 2003-08-28 | 2003-08-28 | 一种flash加载的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100340990C (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101738976B (zh) * | 2008-11-14 | 2013-03-20 | 北京谊安医疗***股份有限公司 | 对pic控制器进行编程的***和编程时所使用的装置 |
CN105512064A (zh) * | 2014-09-26 | 2016-04-20 | 中国航空工业第六一八研究所 | 一种通讯控制器配置信息的在线加载***及其方法 |
CN108287732A (zh) * | 2017-12-07 | 2018-07-17 | 深圳比特微电子科技有限公司 | 专用集成电路升频方法 |
CN110968022A (zh) * | 2018-09-29 | 2020-04-07 | 欧姆龙(上海)有限公司 | 可编程逻辑控制器、可编程逻辑控制器***以及控制方法 |
CN112463243A (zh) * | 2019-09-09 | 2021-03-09 | 英业达科技有限公司 | 基于边界扫描的在线级联加载固件***及其方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6137738A (en) * | 1999-11-30 | 2000-10-24 | Lucent Technologies, Inc. | Method for in-system programming of serially configured EEPROMS using a JTAG interface of a field programmable gate array |
US7058856B2 (en) * | 2000-07-18 | 2006-06-06 | Oki Electric Industry Co., Ltd. | Semiconductor circuit with flash ROM and improved security for the contents thereof |
CN1435695A (zh) * | 2002-02-01 | 2003-08-13 | 华为技术有限公司 | 基于边界扫描器件的电路板互连线的测试方法 |
CN2554721Y (zh) * | 2002-04-28 | 2003-06-04 | 神达电脑股份有限公司 | 具有快速存储器的转接测试装置 |
-
2003
- 2003-08-28 CN CNB031564577A patent/CN100340990C/zh not_active Expired - Fee Related
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101738976B (zh) * | 2008-11-14 | 2013-03-20 | 北京谊安医疗***股份有限公司 | 对pic控制器进行编程的***和编程时所使用的装置 |
CN105512064A (zh) * | 2014-09-26 | 2016-04-20 | 中国航空工业第六一八研究所 | 一种通讯控制器配置信息的在线加载***及其方法 |
CN108287732A (zh) * | 2017-12-07 | 2018-07-17 | 深圳比特微电子科技有限公司 | 专用集成电路升频方法 |
CN110968022A (zh) * | 2018-09-29 | 2020-04-07 | 欧姆龙(上海)有限公司 | 可编程逻辑控制器、可编程逻辑控制器***以及控制方法 |
CN110968022B (zh) * | 2018-09-29 | 2021-09-17 | 欧姆龙(上海)有限公司 | 可编程逻辑控制器、可编程逻辑控制器***以及控制方法 |
CN112463243A (zh) * | 2019-09-09 | 2021-03-09 | 英业达科技有限公司 | 基于边界扫描的在线级联加载固件***及其方法 |
CN112463243B (zh) * | 2019-09-09 | 2022-11-18 | 英业达科技有限公司 | 基于边界扫描的在线级联加载固件***及其方法 |
Also Published As
Publication number | Publication date |
---|---|
CN100340990C (zh) | 2007-10-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1089440C (zh) | 利用在卡上装有联合测试执行组逻辑的***卡对总线进行联合测试执行组测试 | |
US6480978B1 (en) | Parallel testing of integrated circuit devices using cross-DUT and within-DUT comparisons | |
US6678850B2 (en) | Distributed interface for parallel testing of multiple devices using a single tester channel | |
US7661048B2 (en) | Apparatus and method for embedded boundary scan testing | |
CN109596974B (zh) | 一种多层堆叠的3d-sip芯片测试方法 | |
US6122761A (en) | IC chip tester using compressed digital test data and a method for testing IC chip using the tester | |
CN111308329B (zh) | 用于众核计算芯片可测性设计的电路、装置及方法 | |
CN1339128A (zh) | 芯片内调试*** | |
CN1818700A (zh) | 用于jtag测试的器件和方法 | |
CN1908690A (zh) | 边界扫描***及方法 | |
CN1519573A (zh) | 包括扫描测试电路的集成电路器件及其测试方法 | |
CN101079328A (zh) | 在线测试期间闪存的并行编程 | |
CN1580801A (zh) | 一种电路板的边界扫描测试方法 | |
US7447962B2 (en) | JTAG interface using existing I/O bus | |
CN100340990C (zh) | 一种flash加载的方法 | |
CN1235278C (zh) | 通用数字电路仿真测试***及测试方法 | |
CN117131834A (zh) | 芯片设计重组方法、电子设备和介质 | |
CN1486431A (zh) | 输入/输出连续性测试模式电路 | |
CN1462979A (zh) | 一种flash芯片的加载方法和jtag控制器 | |
CN210166464U (zh) | 一种用于3d-sip芯片测试的装置及*** | |
CN1276533A (zh) | 含有宏的半导体器件及其测试方法 | |
CN1619325A (zh) | 一种边界扫描测试控制器及边界扫描测试方法 | |
CN1300695C (zh) | 一种利用边界扫描器件进行flash加载的方法 | |
US6603303B1 (en) | Method and apparatus for testing integrated circuit | |
US20240103066A1 (en) | Circuit and method for testing a circuit |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20071003 Termination date: 20180828 |
|
CF01 | Termination of patent right due to non-payment of annual fee |