CN112912958A - 使用内置自测控制器测试只读存储器 - Google Patents

使用内置自测控制器测试只读存储器 Download PDF

Info

Publication number
CN112912958A
CN112912958A CN201980070484.8A CN201980070484A CN112912958A CN 112912958 A CN112912958 A CN 112912958A CN 201980070484 A CN201980070484 A CN 201980070484A CN 112912958 A CN112912958 A CN 112912958A
Authority
CN
China
Prior art keywords
rom
instructions
cpu
test
storage device
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.)
Pending
Application number
CN201980070484.8A
Other languages
English (en)
Inventor
P·纳拉亚南
N·纳雷什
P·T·印乌甘狄
R·C·屋良维阿西娜哈利
A·阿查里雅
J·辛格
N·A·纳拉亚南
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.)
Texas Instruments Inc
Original Assignee
Texas Instruments Inc
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 Texas Instruments Inc filed Critical Texas Instruments Inc
Publication of CN112912958A publication Critical patent/CN112912958A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/14Implementation of control logic, e.g. test mode decoders
    • G11C29/16Implementation of control logic, e.g. test mode decoders using microprogrammed units, e.g. state machines
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/38Response verification devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0638Combination of memories, e.g. ROM and RAM such as to permit replacement or supplementing of words in one module by words in another module
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4403Processor initialisation
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/005Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor comprising combined but independently operative RAM-ROM, RAM-PROM, RAM-EPROM cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C14/00Digital stores characterised by arrangements of cells having volatile and non-volatile storage properties for back-up when the power is down
    • G11C14/0054Digital stores characterised by arrangements of cells having volatile and non-volatile storage properties for back-up when the power is down in which the volatile element is a SRAM cell
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C17/00Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/10Test algorithms, e.g. memory scan [MScan] algorithms; Test patterns, e.g. checkerboard patterns 
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/78Masking faults in memories by using spares or by reconfiguring using programmable devices
    • G11C29/80Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout
    • G11C29/816Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout for an application-specific layout
    • G11C29/822Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout for an application-specific layout for read only memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C2029/0407Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals on power on

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Microcomputers (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Debugging And Monitoring (AREA)

Abstract

一种系统包含易失性存储装置(106)、只读存储器ROM(104)、存储器内置自测BIST控制器(110)及中央处理单元CPU(102)。所述CPU(102)在发生复位事件后即刻执行来自所述ROM(104)的第一指令,以致使所述CPU(102)将指令从所述ROM(104)中的一系列地址拷贝到所述易失性存储装置(106)。所述CPU(102)还执行来自所述ROM(104)的第二指令以改变程序计数器。所述CPU(102)进一步使用所述程序计数器执行来自所述易失性存储装置(106)的所述指令。所述CPU(102)在执行来自所述易失性存储装置(106)的所述指令时,致使所述ROM(104)进入测试模式且致使所述存储器BIST控制器(110)经配置以测试所述ROM(104)。

Description

使用内置自测控制器测试只读存储器
背景技术
许多电子系统包含执行来自存储器的代码的微处理器。此类系统通常包含只读存储器(ROM)及随机存取存储器(RAM)。“启动”ROM可包含于系统中以存储在系统的启动过程期间执行的代码。许多系统在启动过程期间及/或在已完成启动过程之后的闲置时间期间测试RAM及ROM以确认此类存储器是否结构上完整无缺及所存储的数据是否可靠。
发明内容
在一个实例中,一种系统包含易失性存储装置、只读存储器(ROM)、存储器内置自测(BIST)控制器及中央处理单元(CPU)。所述CPU在发生复位事件后即刻执行来自所述ROM的第一指令以致使所述CPU将多个指令从所述ROM中的一系列地址拷贝到所述易失性存储装置。所述CPU还执行来自所述ROM的第二指令以改变程序计数器。所述CPU进一步使用所述程序计数器执行来自所述易失性存储装置的所述多个指令。所述CPU在执行来自所述易失性存储装置的所述多个指令时致使所述ROM进入测试模式且致使所述存储器BIST控制器经配置以测试所述ROM。
在另一实例中,一种方法包含:将多个指令从只读存储器(ROM)内的一系列地址拷贝到易失性存储装置;及将程序计数器的值改变为对应于所述易失性存储装置内的在所述多个指令的开始处的地址。所述方法进一步包含执行来自所述易失性存储装置的所述多个指令。所述指令包含用以将所述程序计数器的所述值改变为对应于继所述ROM内的所述多个指令的末尾之后的在所述ROM内的地址的指令。所述方法还包含执行在所述ROM内的指令以确定所述ROM是否通过了测试。
附图说明
图1图解说明用于测试ROM的实例性系统。
图2图解说明将代码从ROM拷贝到RAM以从RAM执行代码从而由存储器内置自测(MBIST)控制器起始ROM的测试。
图3图解说明用于使用MBIST控制器测试ROM的时间线。
图4展示用于测试ROM的系统的另一实例。
图5是用于测试ROM的方法的流程图。
具体实施方式
如上文所描述,在启动过程期间验证ROM的内容。循环冗余检验(CRC)技术通常用于验证ROM的内容。CRC技术是耗时的,且一些应用可具有严格定时要求。在(举例来说)其中可包含含有ROM的电路的汽车应用的情形中,需要在相对最小时间窗内验证ROM的内容,特别是在ROM是安全关键电路的一部分时。举例来说,每当司机打开汽车时,在所述汽车内的一或多个ROM可需要验证其内容。然而,司机期望在启动汽车之后能够很快驾驶汽车并使汽车安全地操作。
本文中所描述的实例提供用于迅速地验证ROM的内容的电路架构。所述架构包含测试系统的RAM及ROM两者的存储器内置自测(MBIST)控制器。在启动过程期间早些时候,中央处理单元(CPU)执行来自ROM的指令,所述指令致使CPU将某些指令从ROM拷贝到RAM(或其它类型的易失性存储装置)。CPU接着继续执行来自RAM的那些特定指令。从RAM执行的所拷贝指令致使CPU将ROM转变到测试模式且致使CPU指示MBIST控制器测试ROM。通过将ROM测试责任转移给MBIST控制器,CPU可用于执行其它有用启动与初始化功能,借此加快启动过程。此外,在一些系统中,由ROM的CPU进行紧接读取存取是不可能的,此使测试ROM比紧接读取可能的情况要慢。更进一步地,如果CRC过程用于测试ROM,那么使用CPU的算术逻辑单元(ALU)及寄存器的计算循环可包含每一经测试的ROM位置10到15个循环。本文中所描述的架构以更高效且更快方式测试ROM。本文中所描述的实例涉及使用RAM来辅助测试ROM,但可替代RAM(例如,寄存器)而使用其它类型的易失性存储装置。
图1展示含有CPU 102、ROM 104、RAM 106及MBIST控制器110的系统100的实例。在一个实施方案中,系统100包括系统单芯片(SoC),其中图1中所展示的组件制作于共同半导体裸片上。ROM 104是非暂时性存储装置。虽然在此实例中展示一个CPU 102,但可在其它实例中包含多个CPU。在此实例中,CPU 102可经由地址与数据总线(BUS1)存取ROM 104,且CPU102可经由不同地址与数据总线(BUS2)存取RAM 106。CPU 102执行位于与程序计数器(PC)103对应的存储器位置处的代码。PC 103的值是从中提取指令的RAM 106或ROM 104中的地址,或所述值用于导出存储器地址(例如,添加到偏移以产生存储器地址的值)。类似地,MBIST控制器110经由地址与数据总线BUS3及BUS4分别以通信方式耦合到ROM 104及RAM106。
可执行指令(还称为“代码”)存储于ROM 104中且可从其检索以由CPU 102执行。所述代码可包括在使系统100复位(例如,硬或软复位)后即刻执行的启动代码。所述启动代码可致使CPU 102执行各种初始化功能,例如配置各种寄存器、存在于系统中的测试接口等。RAM 106可用作用于暂时存储在运行时期间使用的数据或代码的便笺存储装置。来自ROM104的代码可传送到RAM 106以从RAM 106执行。
RAM 106可包括一或多个存储器装置且是双端口存储器装置。经由一个端口106a,CPU 102可存取RAM 106。经由另一端口106b,MBIST控制器110可存取RAM 106。RAM TESTMODE信号115可经断言到第一逻辑状态以致使RAM 106处于其中CPU 102能够使用RAM 106的第一执行模式(称为“运行时执行模式”)中,或经断言在第二逻辑状态中以致使RAM 106处于其中MBIST控制器110能够存取RAM的第二模式(称为“测试模式”)中。在运行时执行模式中,端口106a是活动的(且端口106b是不活动的)以允许CPU 102经由BUS2存取RAM 106。在测试模式中,端口106b是活动的(且端口106a是不活动的)以允许MBIST控制器110经由BUS4存取RAM。当处于其测试模式中时,MBIST控制器110可测试RAM 106。举例来说,经由BUS4,MBIST控制器110可将预定义位型样写入到RAM106,且接着读取RAM以确认读取数据匹配写入到RAM的内容。在一个实例中,CPU 102对MBIST控制器110中的一或多个控制寄存器进行写入以触发MBIST控制器110开始测试RAM 106。
ROM 104也是双端口存储器装置且包含端口104a及104b。端口104a耦合到CPU 102且端口104b耦合到存储器BIST控制器110。类似于RAM 106,ROM TEST MODE 111可由存储器BIST控制器110断言到第一逻辑状态以致使ROM 104处于其中CPU 102能够存取ROM 104(例如,以提取代码)的“运行时”执行模式中,或经断言在第二逻辑状态中以致使ROM 104处于其中MBIST控制器110能够存取ROM的“测试模式”中。在运行时执行模式中,端口104a是活动的(且端口104b是不活动的)以允许CPU 102经由BUS1存取ROM 104。在测试模式中,端口104b是活动的(且端口104a是不活动的)以允许MBIST控制器110经由BUS3存取ROM 104。
为了测试ROM 104,可执行图2中所描述的实例性程序。转向图2,展示ROM 104及RAM 106的至少若干部分的内容。ROM 104包含可执行代码202、204、206、208、210及212。代码202及212包括功能性ROM代码以辅助启动系统而且辅助在运行时期间操作系统(例如,代表较高阶应用提供对低阶硬件组件的存取)。在启动过程期间,CPU 102开始执行(举例来说)以ROM_ADDR_0开始的功能性ROM代码202。也就是说,程序计数器103加载有对应于ROM_ADDR_0的值且CPU 102开始在ROM内的所述地址处执行指令。针对从ROM 104提取的每一代码指令(或指令群组)使PC 103递增。
PC 103最终将是与ROM 104内的代码204的位置对应的值。代码204包括致使CPU102将ROM代码208从范围介于ROM_ADDR_b与ROM_ADDR_c之间的地址拷贝到范围介于RAM_ADDR_x与RAM_ADDR_y之间的RAM地址的指令,如由虚线展示。用于接收ROM代码208的RAM 106的部分是RAM的其它未使用部分220。接收到RAM 106中的ROM代码208在图2中经展示为RAM代码222。
一旦将ROM代码208拷贝到RAM 106,便再次使PC递增到ROM_ADDR_a。所述位置处的代码致使CPU 102将PC 103改变到与RAM地址RAM_ADDR_x(含有来自ROM104的代码208的RAM代码222的开始地址)对应的值。CPU 102接着执行ROM代码208的指令,但执行来自RAM的那些指令的副本(代码222)。所述指令包括指令208a到208d。指令208a致使CPU 102针对测试模式配置ROM 104。在一个实例中,针对测试模式配置ROM104包括存储器BIST控制器110将ROM TEST MODE信号111(图1)断言到致使ROM 104进入其中启用其端口104b(并停用端口104a)的其测试模式的逻辑状态。接着执行指令208b以致使CPU 102配置MBIST控制器110以测试ROM 104。在一个实例中,CPU 102对MBIST控制器110中的一或多个控制寄存器进行写入以触发MBIST控制器110开始测试ROM 104。任何适合非易失性存储器测试过程可用于测试ROM 104。
CPU 102接着执行指令208c以致使CPU 102进入暂停状态以等待MBIST控制器110完成其对ROM 104的测试。一旦MBIST控制器110完成其ROM测试过程,MBIST控制器110便可断言对CPU 102的中断以将已完成ROM测试发信号通知给CPU。CPU 102退出暂停状态且接着执行指令208d,指令208d致使CPU 102将ROM 104带出其测试模式并放到运行时执行模式中以借此准许CPU 102再次经由端口104a检索来自ROM的指令。MBIST控制器可实施此动作,所述MBIST控制器将ROM TEST MODE信号111的逻辑状态改变到与其中启用端口104a并停用端口104b的运行时执行模式对应的逻辑状态。接着执行来自RAM 106的指令208e,指令208e致使CPU将PC 103改变到对应于ROM_ADDR_d的值,ROM_ADDR_d是继先前拷贝到RAM 106的代码208之后的ROM地址。
MBIST控制器110包含ROM状态寄存器117,ROM状态寄存器117含有指示ROM测试的结果的值。在一个实例中,ROM状态寄存器包含通过/未通过指示。在新改变的PC 103返回到对应于ROM_ADDR_d的值的情况下,CPU 102接着从ROM 104而非RAM 106提取指令。指令210因此经提取并致使CPU 102检查MBIST状态寄存器117的ROM测试的结果。如果ROM 104通过了其测试,那么指令210进一步可致使代码执行在功能性ROM代码212中继续。如果ROM 104确实未通过其测试,那么指令210可起始错误响应。错误响应的实例包含产生对CPU 102的中断、由错误状态机断言输出信号等。
图3提供图解说明如何测试ROM 104的时间线的实例。在RAM 106由MBIST控制器110测试(且因此在图3的实例中,RAM TEST MODE信号115处于例如逻辑“0”的逻辑状态中)之前或之后,ROM TEST MODE信号111处于与ROM的运行时执行模式对应的逻辑状态(图3中的“0”,如在302处所展示)中以准许CPU 102从ROM 104提取代码以用于执行。在306处,CPU102将代码208从ROM 104拷贝到RAM 106。ROM TEST MODE信号111的逻辑状态接着改变到用以将ROM 104置于测试模式中的状态(在此实例中为逻辑“1”)以准许MBIST控制器110存取端口104b以用于测试目的。从RAM执行所拷贝ROM代码208(现在在RAM 106中)。所拷贝ROM代码208致使CPU 102执行上文所阐释的操作,例如配置MBIST控制器110以测试ROM 104。在313处,ROM TEST MODE信号111接着经断言返回到其前一状态,其中使ROM 104回到其运行时执行模式中,使得代码提取可从ROM 104继续且在312处由CPU 102执行。
图4是实施上文所阐释的ROM测试范式的系统400的实例性架构。实例性系统400包含CPU 402(其可包括ARM核心)、启动ROM 404、RAM 406及MBIST控制器410。在图4的实例中,系统400还包含额外组件,例如直接存储器存取(DMA)控制器412、额外ROM428及硬件CRC420。CPU 402、DMA 412、MBIST控制器410、硬件CRC 420、ROM 428及RAM 406经由总线405耦合在一起。在一个实例中,总线405包括高级可扩展接口(AXI),但在其它实施方案中可与其它标准一致。启动ROM 404(其含有图2中所展示的ROM代码)经由紧密耦合存储器(TCM)接口(ITCM及DTCM)耦合到CPU 402。MBIST控制器410分别经由接口413、425及427耦合到启动ROM404、ROM 428及RAM 406,如所展示。由CPU 102及MBIST控制器110相对于图1的ROM 104及RAM 106执行的操作是由CPU 402及MBIST控制器410相对于图4的ROM 404及RAM 406执行的。
图5展示根据实例的方法的流程图。可以所展示的次序执行或以不同次序执行操作。此外,可循序地执行操作,或者可同时执行操作中的两者或多于两者。
在502处,发生复位事件。可启用系统100、400的电源或者可发生软或硬复位事件。在504处,CPU开始从ROM(例如,ROM 104、ROM 404)执行代码。ROM指令中的一者在506处致使CPU将ROM的代码的一部分拷贝到RAM。在508处将PC改变为对应于RAM中的与所拷贝ROM代码的开始对应的地址。CPU接着开始从RAM执行所拷贝代码,且在这样做时在510处将ROM配置成测试模式。在512处,MBIST控制器(例如,MBIST控制器110、410)由CPU配置以测试ROM,且MBIST控制器接着开始测试ROM(514)。
CPU在516处等待MBIST控制器完成ROM测试。一旦完成ROM测试,在518处,便将ROM往回配置成其运行时执行模式以准许CPU继续从ROM提取指令。PC被改变到ROM中的继先前所拷贝ROM代码之后的地址(520)。在522处,方法包含确定ROM是否通过了测试。此操作可包括CPU读取寄存器中的值(例如,通过/未通过标志)。如果ROM通过了其测试,那么方法在526处继续,其中完成启动过程且系统进入其运行时环境(例如,执行一或多个运行时应用程序)。然而,如果确定ROM未通过其测试,那么在524处,以适合方式(例如上文所描述的方式)处理ROM错误。
在此说明中,术语“耦合(couple或couples)”意味间接或直接有线或无线连接。因此,如果第一装置耦合到第二装置,那么所述连接可通过直接连接或通过经由其它装置及连接的间接连接。叙述“基于”意指“至少部分地基于”。因此,如果X基于Y,那么X可随Y及任何数目个额外因素而变。
修改在所描述实施例中是可能的,且其它实施例在权利要求书的范围内是可能的。

Claims (20)

1.一种系统,其包括:
易失性存储装置;
只读存储器ROM;
存储器内置自测BIST控制器;及
中央处理单元CPU,其用以在发生初始化事件后即刻:
执行来自所述ROM的第一指令以致使所述CPU将多个指令从所述ROM中的一系列地址拷贝到所述易失性存储装置;
执行来自所述ROM的第二指令以改变程序计数器;及
使用所述程序计数器执行来自所述易失性存储装置的所述多个指令,所述CPU在执行所述多个指令时,致使所述ROM进入测试模式且致使所述存储器BIST控制器经配置以测试所述ROM。
2.根据权利要求1所述的系统,其中:
所述ROM具有耦合到所述CPU的第一端口且所述ROM具有耦合到所述存储器BIST控制器的第二端口;且
当所述CPU致使所述ROM进入所述测试模式时,所述ROM停用所述第一端口并启用所述第二端口。
3.根据权利要求1所述的系统,其中所述CPU在执行所述多个指令时,还致使所述ROM退出所述测试模式。
4.根据权利要求3所述的系统,其中所述CPU在执行所述多个指令时,致使所述ROM在所述存储器BIST控制器完成所述ROM的所述测试后即刻退出所述测试模式。
5.根据权利要求3所述的系统,其中在致使所述ROM退出所述测试模式后,即刻启用所述ROM的第一端口并停用其第二端口。
6.根据权利要求1所述的系统,其中所述CPU在执行所述多个指令时,还致使所述CPU再次将所述程序计数器改变为与所述ROM中的地址对应的新值。
7.根据权利要求6所述的系统,其中所述程序计数器的所述新值对应于在所述第一多个指令的所述一系列地址之后的ROM地址。
8.根据权利要求7所述的系统,其中所述CPU执行来自所述ROM的第二指令以致使所述CPU确定所述ROM是否通过了由所述存储器BIST控制器对其进行的测试。
9.一种非暂时性存储装置,其存储在由中央处理单元CPU执行时致使所述CPU进行以下操作的指令:
将多个指令从在所述非暂时性存储装置内的一系列地址拷贝到易失性存储装置;
执行来自所述非暂时性存储装置的第一指令以将程序计数器改变为对应于所述易失性存储装置中的地址;及
执行来自所述非暂时性存储装置的第二指令以检查所述非暂时性存储装置是否通过了由第二装置执行的测试。
10.根据权利要求9所述的非暂时性存储装置,其中所述第二装置包括内置自测控制器。
11.根据权利要求9所述的非暂时性存储装置,其中待拷贝到所述易失性存储装置的所述多个指令包括用以致使所述非暂时性存储装置停用待耦合到所述CPU的端口,且用以致使所述非暂时性存储装置启用待耦合到所述第二装置的端口的指令。
12.根据权利要求9所述的非暂时性存储装置,其中待拷贝到所述易失性存储装置的所述多个指令包括用以致使所述第二装置经配置以测试所述非暂时性存储装置的指令。
13.根据权利要求9所述的非暂时性存储装置,其中待拷贝到所述易失性存储装置的所述多个指令包括用以致使所述CPU等待所述第二装置完成对所述非暂时性存储装置的所述测试的指令。
14.根据权利要求9所述的非暂时性存储装置,其中待拷贝到所述易失性存储装置的所述多个指令包括用以致使所述非暂时性存储装置启用待耦合到所述CPU的所述端口并停用待耦合到所述第二装置的所述端口的指令。
15.根据权利要求9所述的非暂时性存储装置,其中待拷贝到所述易失性存储装置的所述多个指令包括用以将所述程序计数器改变为与所述ROM中的在所述多个指令之后的地址对应的指令。
16.一种方法,其包括:
将多个指令从只读存储器ROM内的一系列地址拷贝到易失性存储装置;
将程序计数器的值改变为对应于所述易失性存储装置内的在所述多个指令的开始处的地址;
执行来自所述易失性存储装置的所述多个指令,所述指令包含用以将所述程序计数器的所述值改变为与在所述ROM内的所述多个指令的末尾之后的在所述ROM内的地址对应的指令;及
执行在所述ROM内的指令以确定所述ROM是否通过了测试。
17.根据权利要求16所述的方法,其进一步包括由存储器内置自测控制器执行对所述ROM的所述测试。
18.根据权利要求16所述的方法,执行来自所述易失性存储装置的所述多个指令包括停用所述ROM的耦合到中央处理单元的第一端口并启用所述ROM的耦合到存储器内置自测控制器的第二端口。
19.根据权利要求18所述的方法,其进一步包括在完成对所述ROM的所述测试后,即刻启用所述ROM的所述第一端口并停用所述第二端口。
20.根据权利要求16所述的方法,其中执行来自所述易失性存储装置的所述多个指令包含等待存储器内置自测控制器测试所述ROM。
CN201980070484.8A 2018-10-29 2019-10-29 使用内置自测控制器测试只读存储器 Pending CN112912958A (zh)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US201862751873P 2018-10-29 2018-10-29
US62/751,873 2018-10-29
US201862785953P 2018-12-28 2018-12-28
US62/785,953 2018-12-28
US16/271,660 2019-02-08
US16/271,660 US10818374B2 (en) 2018-10-29 2019-02-08 Testing read-only memory using memory built-in self-test controller
PCT/US2019/058619 WO2020092406A1 (en) 2018-10-29 2019-10-29 Testing read-only memory using built-in self-test controller

Publications (1)

Publication Number Publication Date
CN112912958A true CN112912958A (zh) 2021-06-04

Family

ID=70328788

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980070484.8A Pending CN112912958A (zh) 2018-10-29 2019-10-29 使用内置自测控制器测试只读存储器

Country Status (6)

Country Link
US (2) US10818374B2 (zh)
EP (1) EP3874506A4 (zh)
JP (1) JP7394849B2 (zh)
KR (1) KR20210080398A (zh)
CN (1) CN112912958A (zh)
WO (1) WO2020092406A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10818374B2 (en) * 2018-10-29 2020-10-27 Texas Instruments Incorporated Testing read-only memory using memory built-in self-test controller

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5511202A (en) * 1993-07-26 1996-04-23 International Business Machines Corporation Desktop computer system having zero-volt system suspend and control unit for ascertaining interrupt controller base address
US6081752A (en) * 1995-06-07 2000-06-27 International Business Machines Corporation Computer system having power supply primary sense to facilitate performance of tasks at power off
US5793943A (en) * 1996-07-29 1998-08-11 Micron Electronics, Inc. System for a primary BIOS ROM recovery in a dual BIOS ROM computer system
US6216224B1 (en) * 1998-06-05 2001-04-10 Micron Technology Inc. Method for read only memory shadowing
JP2001148199A (ja) * 1999-11-19 2001-05-29 Mitsubishi Electric Corp 自己テスト回路内蔵半導体記憶装置
US20070233955A1 (en) * 2000-01-06 2007-10-04 Super Talent Electronics Inc. Mixed-Mode ROM/RAM Booting Using an Integrated Flash Controller with NAND-Flash, RAM, and SD Interfaces
JP2002259356A (ja) * 2001-02-28 2002-09-13 Naltec Inc データ処理装置およびその制御方法
US7325178B2 (en) 2003-12-05 2008-01-29 Texas Instruments Incorporated Programmable built in self test of memory
EP1825479A4 (en) * 2004-11-18 2008-04-16 Mentor Graphics Corp METHOD AND DEVICE FOR AN INTEGRATED PROGRAMMABLE MEMORY SELF TEST (MBIST)
JP2007035119A (ja) * 2005-07-25 2007-02-08 Seiko Epson Corp 半導体装置
US10481202B2 (en) 2017-02-13 2019-11-19 Qualcomm Incorporated In-field self-test controller for safety critical automotive use cases
US10818374B2 (en) * 2018-10-29 2020-10-27 Texas Instruments Incorporated Testing read-only memory using memory built-in self-test controller
JP2021012598A (ja) * 2019-07-08 2021-02-04 キヤノン株式会社 情報処理装置及び制御方法

Also Published As

Publication number Publication date
KR20210080398A (ko) 2021-06-30
US20200388346A1 (en) 2020-12-10
JP2022520914A (ja) 2022-04-04
US20200135290A1 (en) 2020-04-30
JP7394849B2 (ja) 2023-12-08
EP3874506A1 (en) 2021-09-08
WO2020092406A1 (en) 2020-05-07
US11521698B2 (en) 2022-12-06
EP3874506A4 (en) 2021-12-15
US10818374B2 (en) 2020-10-27
WO2020092406A8 (en) 2020-12-03

Similar Documents

Publication Publication Date Title
EP2966650B1 (en) Memory built-in self test for a data processing apparatus
US6016554A (en) Method for event-related functional testing of a microprocessor
US9836373B2 (en) On-chip field testing methods and apparatus
US5813043A (en) Method and system including memory patching utilizing a transmission control signal and circuit
US10026499B2 (en) Memory testing system
CN111033630A (zh) 具有mbist的多处理器内核设备
US20090006809A1 (en) Non-disruptive code update of a single processor in a multi-processor computing system
US11755803B2 (en) Programmable macro test design for an integrated circuit
US20150046759A1 (en) Semiconductor integrated circuit device
TWI287706B (en) A method of creating a prototype data processing system, a hardware development chip, and a system for debugging prototype data processing hardware
JP2001184226A (ja) メモリブロックを有するデジタルシステムおよびメモリのブロックのエミュレーティング方法
JP7394849B2 (ja) メモリ組込み自己テストコントローラを用いる読み出し専用メモリのテスト
US5751641A (en) Microprocessor memory test circuit and method
US7340561B2 (en) Computer memory initialization
US5712822A (en) Microprocessor memory test circuit and method
US7047444B2 (en) Address selection for testing of a microprocessor
JP2001356971A (ja) マルチプロセッサメモリをテストするシステム及び方法
JPH0877035A (ja) 中央処理装置及びマイクロコンピュータ
KR101244684B1 (ko) 에러검출이 가능한 마이크로 컴퓨팅 장치 및 그의 에러검출방법
EP4198736A1 (en) Distributed mechanism for fine-grained test power control
US7716533B2 (en) System and method for trapping bus cycles
US10120737B2 (en) Apparatus for detecting bugs in logic-based processing devices
CN118093248A (zh) Str调试的故障确定方法、装置、电子设备及存储介质
JP2004302727A (ja) Fpgaの動作チェック方式
JPH096641A (ja) 情報処理装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination