[go: up one dir, main page]

KR100684471B1 - Self-repair method and device of built-in SRAM - Google Patents

Self-repair method and device of built-in SRAM Download PDF

Info

Publication number
KR100684471B1
KR100684471B1 KR1020050015718A KR20050015718A KR100684471B1 KR 100684471 B1 KR100684471 B1 KR 100684471B1 KR 1020050015718 A KR1020050015718 A KR 1020050015718A KR 20050015718 A KR20050015718 A KR 20050015718A KR 100684471 B1 KR100684471 B1 KR 100684471B1
Authority
KR
South Korea
Prior art keywords
memory
self
failure
spare
block
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.)
Expired - Fee Related
Application number
KR1020050015718A
Other languages
Korean (ko)
Other versions
KR20060094592A (en
Inventor
장훈
심은성
이정민
이찬영
Original Assignee
장훈
한국전자통신연구원
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 장훈, 한국전자통신연구원 filed Critical 장훈
Priority to KR1020050015718A priority Critical patent/KR100684471B1/en
Publication of KR20060094592A publication Critical patent/KR20060094592A/en
Application granted granted Critical
Publication of KR100684471B1 publication Critical patent/KR100684471B1/en
Anticipated expiration legal-status Critical
Expired - Fee Related 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/70Masking faults in memories by using spares or by reconfiguring
    • 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
    • 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/18Address generation devices; Devices for accessing memories, e.g. details of addressing circuits
    • 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/36Data generation devices, e.g. data inverters

Landscapes

  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Abstract

본 발명은 내장 에스램의 자체 복구 방법 및 장치에 관한 것으로, 보다 자세하게는 내장된 메모리의 자체 테스트를 통한 메모리 고장 유무 확인과 더불어 메모리의 고장난 부분을 스패어 메모리로 재배치하여 사용자로 하여금 고장난 메모리를 정상적인 메모리처럼 사용할 수 있도록 하는 메모리 자체 고장 복구에 관한 것이다.The present invention relates to a self-recovery method and device of the internal SRAM, and more specifically, to determine whether the memory failure through the self-test of the built-in memory and to replace the failed portion of the memory to the spare memory to allow the user to It's about memory self-healing that allows us to use it like normal memory.

본 발명의 내장 에스램의 자체 복구 장치는 블록단위로 나눠진 메인 메모리의 임의의 위치에서 발생된 고장 유무를 판단하는 자가 고장 테스트 회로; 상기 자가 고장 테스트 회로에서 발생된 고장의 신호를 받아 상기 메인 메모리의 고장 블록을 저장하고, 스패어 메모리의 임의의 위치에 복구 블록을 배치하고 그 배치된 주소를 저장하는 스패어 메모리 재배치 회로 및 상기 스패어 메모리 재배치 회로의 신호에 따라 상기 스패어 메모리의 복구 블록과 상기 메인 메모리의 고장 블록을 대체하는 자가 고장 복구 회로를 포함하여 구성되는 기술적 특징이 있다.Self-recovery device of the built-in SRAM of the present invention includes a self-fault test circuit for determining whether the failure occurred at any location of the main memory divided into blocks; A spare memory relocation circuit configured to receive a signal of a failure generated in the self-failure test circuit, store a failure block of the main memory, arrange a recovery block at an arbitrary location of the spare memory, and store the allocated address; According to the signal of the spare memory rearrangement circuit there is a technical feature comprising a self-recovery recovery circuit to replace the recovery block of the spare memory and the failure block of the main memory.

따라서 본 발명의 내장 에스램의 자체 복구 방법 및 장치는 메모리 고장 시에 SOC를 정상 동작시켜 메모리의 물리적 구조에 독립적인 회로로 존재하고, 고가의 메모리를 스패어 메모리를 이용하여 재사용함으로써 메모리의 수율을 증가시키는 효과가 있다.Therefore, the self-recovery method and apparatus of the embedded SRAM according to the present invention operates as a circuit independent of the physical structure of the memory by normally operating the SOC in the event of a memory failure, and yields the memory by reusing expensive memory using a spare memory. Has the effect of increasing.

임베디드, 메모리, BIST, BISR, BIRA, 에스램Embedded, memory, BIST, BISR, BIRA, SRAM

Description

내장 에스램의 자체 복구 방법 및 장치{(Build-in self repair method and device for embedded SRAM)}Build-in self repair method and device for embedded SRAM

도 1은 기존의 스패어 메모리를 사용해 고장난 메모리를 재배치하는 방법의 블록구조이다.1 is a block diagram of a method of relocating a failed memory using an existing spare memory.

도 2는 기존의 BISR 구조이다.2 is an existing BISR structure.

도 3은 블록 재배치의 기본 개념도이다.3 is a basic conceptual diagram of block relocation.

도 4는 본 발명에 따른 내장 에스램의 자체 복구 장치를 나타내는 도이다.4 is a view showing a self-repairing device of the built-in SRAM according to the present invention.

도 5는 본 발명에 의한 BIST 및 BISR 통합구조 처리과정이다.5 is a BIST and BISR integrated structure process according to the present invention.

도 6은 본 발명에 의한 BIST의 구성도이다.6 is a block diagram of a BIST according to the present invention.

도 7은 본 발명에 의한 BIRU 구조도이다.7 is a structure diagram of a BIRU according to the present invention.

도 8은 본 발명에 의한 스패어 메모리 할당을 위한 블록정보의 예이다.8 is an example of block information for spare memory allocation according to the present invention.

도 9는 본 발명에 의한 BISR 구성도이다.9 is a block diagram of a BISR according to the present invention.

도 10은 본 발명에 의한 비교기와 스패어 행주소 선택기 구조도이다.10 is a structural diagram of a comparator and a spare row address selector according to the present invention.

도 11은 본 발명에 의한 고장난 블록 선택기 구조도이다.11 is a structural diagram of a failed block selector according to the present invention.

도 12는 본 발명에 의한 스패어 블록 선택기와 읽기/쓰기 블록 선택기 구조도이다.12 is a structural diagram of a spare block selector and a read / write block selector according to the present invention.

도 13은 본 발명에 의한 데이터출력 블록 선택기의 구조도이다.13 is a structural diagram of a data output block selector according to the present invention.

<도면의 주요부분에 대한 부호의 설명><Description of the symbols for the main parts of the drawings>

100: BIST 120: BISR100: BIST 120: BISR

130: 스패어 메모리 140: 메인 메모리130: spare memory 140: main memory

200: BIST 210: 제어모듈200: BIST 210: control module

220: 주소생성모듈 230: 데이터생성모듈220: address generation module 230: data generation module

240: 데이터비교모듈240: data comparison module

본 발명은 내장 에스램의 자체 복구 방법 및 장치에 관한 것으로, 보다 자세하게는 내장된 메모리의 자체 테스트를 통한 메모리 고장 유무 확인과 더불어 메모리의 고장난 부분을 스패어 메모리로 재배치하여 사용자로 하여금 고장난 메모리를 정상적인 메모리처럼 사용할 수 있도록 하는 메모리 자체 고장 복구에 관한 것이다.The present invention relates to a self-recovery method and device of the internal SRAM, and more specifically, to determine whether the memory failure through the self-test of the built-in memory and to replace the failed portion of the memory to the spare memory to allow the user to It's about memory self-healing that allows us to use it like normal memory.

반도체 공정기술이 발달하고 VLSI가 고성능화됨에 따라 점점 더 많은 수의 코어들이 SOC(System On Chip)화 되고 있다. 그 중 내장 메모리는 전체 SOC 트랜지스터 수의 80~90%를 차지하고 있으며 SOC 개발 시 내장 메모리의 테스트가 새로운 문제로 대두되고 있다. 이로 인해 어느 때보다 SOC 내에서 메모리 테스트의 중요성이 높아지고, 메모리의 고장의 유/무만을 판단하는 것을 떠나 고가의 메모리를 스패어 메모리로 재사용함으로써 메모리 수율을 증가시킬 수 있는 기술이 필요하다.As semiconductor process technology advances and VLSI improves in performance, more and more cores are becoming SOC (System On Chip). Among them, internal memory accounts for 80-90% of the total number of SOC transistors, and testing of internal memory is a new problem when developing SOC. As a result, memory test becomes more important in SOC than ever before, and there is a need for a technology that can increase memory yield by reusing expensive memory as spare memory, in addition to judging whether memory is broken or not.

SOC 내부에는 SOC 자체를 테스트하기 위한 BIST(Built-In Self Test)회로와 BIST에 의한 검사 결과를 가지고 복구가능한지 여부를 판단하고 소프트웨어적으로 칩 내부에서의 자체적인 복구를 수행하기 위한 BISR(Built-In Self Repair)회로를 구비하여 고장난 메모리를 다시 사용할 수 있다.Inside the SOC, the BIST (Built-In Self Test) circuit for testing the SOC itself and the test result by the BIST are used to determine whether it is recoverable, and the BISR (Built-In) to perform its own recovery in the chip by software. In Self Repair circuit can be used to reuse the failed memory.

BISR의 구성은 내장 메모리의 고장 유/무를 판단하기 위해 가장 널리 사용되는 방법인 BIST기법과 스패어 메모리에 고장난 메인 메모리의 셀을 적절히 배치할 수 있도록 하는 BIRU(Built-In Remapping Unit)회로가 필요하다.The BISR configuration requires the BIST technique, which is the most widely used method to determine whether the internal memory is broken, and the BIRU (Built-In Remapping Unit) circuit, which enables the proper placement of the failed main memory cell in the spare memory. Do.

스패어 메모리를 구하는 방법은 하드 리던던시와 소프트 리던던시로 나누어진다. 하드 리던던시는 재배치할 메모리 원소의 정보의 저장을 퓨즈로서 구현하는 것으로, 퓨즈에는 레이저 퓨즈, 전기적 퓨즈, EPROM 메모리 등이 있다. 레이저 퓨즈, 전기적 퓨즈, EPROM 등은 스패어 메모리가 메인 메모리의 값들을 저장할 수 있도록 하드웨어적으로 레이저나 전기적으로 절단해 칩으로 만드는 것이다. 이렇게 칩으로 만들어진 스패어 메모리는 하나의 메모리에 대해서 반영구적으로 스패어 메모리를 사용할 수 있지만, 외부의 다른 테스트 장비가 필요하며 다른 메모리에 대한 스패어 메모리 사용이 용이하지 못하다.The method of obtaining spare memory is divided into hard redundancy and soft redundancy. Hard redundancy implements the storage of information of memory elements to be relocated as a fuse, and the fuse includes a laser fuse, an electrical fuse, and an EPROM memory. Laser fuses, electrical fuses, and EPROMs are lasers or electronically cut into chips so that the spare memory can store the values in the main memory. Spare memory made of chips can use spare memory semi-permanently for one memory, but it requires other external test equipment and it is not easy to use spare memory for other memory.

반면, 소프트 리던던시는 칩에 전원이 인가되면 스패어 메모리와 고장이 있는 메인 메모리 사이의 재배치 계산을 하기 위해 BIST 및 BIRU 모듈을 실행해야 하는 번거로움이 존재한다. 그러나 외부의 테스트 장비를 사용하지 않아도 되고, 스패어 메모리를 융통적으로 모든 메인 메모리에 적용시킬 수 있다는 장점을 가지고 있다.Soft redundancy, on the other hand, is a hassle to run BIST and BIRU modules to relocate between spare memory and faulty main memory when the chip is powered up. However, there is no need to use external test equipment, and spare memory can be flexibly applied to all main memories.

도 1은 기존의 스패어 메모리를 사용해 고장난 메모리를 재배치하는 구조도이다. 메인 메모리와 스패어 메모리를 열을 기준으로 블록 단위로 나눈 뒤에 메인 메모리의 블록 안의 셀이 고장이 일어났을 경우 고장난 셀이 포함된 블록 전체를 스패어 메모리의 블록으로 교체 하는 방법을 사용한다. 스패어 메모리로 고장난 메모리를 대체할 때 메인 메모리와 스패어 메모리는 같은 열의 블록으로 재배치한다. 기존의 방법의 단점은 블록으로 나눈 후 같은 열로만 고장난 메모리의 복구가 일어나기 때문에 만약 메인 메모리의 같은 열에 고장이 많이 발생하게 되면 스패어 메모리의 같은 열로 대체되서 같은 행의 다른 열에 복구할 메모리가 있음에도 불구하고 복구할 수 없기 때문에 불필요한 메모리 소비가 발생하여 비용적으로나 시간적으로 많은 단점과 문제점이 있었다.1 is a structural diagram of relocating a failed memory using an existing spare memory. After dividing the main memory and spare memory into blocks based on columns, if a cell in the main memory block fails, the entire block containing the failed cell is replaced with a spare memory block. When replacing failed memory with spare memory, main memory and spare memory are relocated into blocks of the same row. The disadvantage of the conventional method is that the memory can be repaired only in the same column after dividing into blocks. Therefore, if the same column of main memory has a lot of failures, it will be replaced by the same column in the spare memory. Nevertheless, there is a lot of disadvantages and problems in terms of cost and time due to unnecessary memory consumption because it is not recoverable.

도 2는 기존의 BISR 구조이다. 행 주소 m, 열 주소 n 그리고 블록 주소 l인 메인 메모리와 스패어 메모리의 행주소 r을 단순화한 것임을 알 수 있다. 다시 말해서, 이 메모리는 m개의 워드라인(W0 - WM-1), n개의 비트라인, 그리고 l개의 버츄얼 로우 뱅크(virtual row bank(VRB0-VRBl-1)를 가지고 있다. 또한, 메모리 자가복구를 위하여 r개의 스패어 메모리 행이 추가되었다. 스패어 메모리 주소 접근 비트가 2이고 VRB가 4개라면 한 행이 4개의 블록을 가지므로 16개의 스패어 메모리 블록이 존재하게 된다. 기존의 자가 복구 기본 메커니즘은 고장난 블록은 같은 뱅크(bank)의 스패어 메모리 블록으로 대체하는 것이다. 고장이 발생하면 한 행 전체를 바꾸는 기존의 방식에서 상기 도 2와 같은 경우 4개의 행에 고장이 발생했음으로 4개의 스패어 메모리 행이 필요했다. 하지만 가상 블록을 사용함에 따라 2개의 행으로도 자가 복구가 가능하다. 이렇듯 블록 단위의 복구 방식은 행 단위의 복구 방식보다 더 효율적인 복구율을 가짐을 알 수 있다. 이 방법은 원천적인 메모리 설계 시에는 유용할지 모르나 메모리가 만들어진 후에는 제안한 방법으로 테스트하기는 어렵다. 즉, 메모리의 입력, 출력 핀만 가지고 테스트하기가 곤란하다.2 is an existing BISR structure. It can be seen that the row address r of the main memory and the spare memory of the row address m, the column address n, and the block address l is simplified. In other words, the memory has m word lines (W 0 -W M-1 ), n bit lines, and l virtual row banks (VRB 0 - VRB l-1 ). R spare memory rows have been added for memory self-recovery If the spare memory address access bit is 2 and the VRB is 4, then there are 16 spare memory blocks because a row has 4 blocks. The basic mechanism of self-healing is to replace a failed block with spare memory blocks in the same bank.If the failure occurs, four rows fail in the conventional method of replacing an entire row. This required four spare memory rows, but with virtual blocks, two rows can be self-recovered, so block-by-block recovery is more efficient than row-by-row recovery. It can be seen that having the rate. This method is difficult, that is, it is difficult to test with the input of the memory, output to the test pinman moreuna whether the proposed method is useful when the memory fundamentally designed after the memory was created.

BISR은 기존의 테스트 장비와 달리, 물리적으로 복구를 수행하지 않고 칩 자체에 복구 알고리즘을 탑재하여 복구 가능 여부를 스스로 판별한 후, 복구 가능한 경우 소프트웨어적으로 논리적 복구를 수행한다.Unlike the existing test equipment, BISR does not perform physical recovery, but instead, the recovery algorithm is installed on the chip itself to determine whether it can be recovered, and then, if recoverable, performs software logical recovery.

종래기술인 BIST 및 BISR을 구비한 회로들 중 대한민국 공개특허 제2002-68768호의 "내장 메모리를 위한 빌트 인 셀프 리페어 회로를 구비하는 반도체 장치"는 스패어 메모리를 구현하는 방법에 있어서 하드 리던던시를 사용함으로써 하나의 메모리에 대해서 반영구적으로 사용할 수 있지만, 외부의 다른 테스트 장비가 필요하며 다른메모리 사용이 용이하지 못하는 문제점이 있고 다수개의 로우 리던던시와 칼럼 리던던시를 사용함으로써 블록 재배치 방법시 불필요한 메모리의 소비가 있었고, 대한민국 공개특허 제2001-76937호 또한, 다수 개의 로우 리던던시와 칼럼 리던던시를 사용하여 불필요한 메모리의 소비가 있는 문제점이 있었다.Among the circuits having the prior art BIST and BISR, Korean Patent Application Publication No. 2002-68768, "Semi-conductor device having a built-in self repair circuit for built-in memory," uses hard redundancy in a method of implementing a spare memory. Although it can be used semi-permanently for one memory, there is a problem that other external test equipment is needed and other memory is not easy to use, and by using a plurality of low redundancy and column redundancy, there was unnecessary memory consumption in the block relocation method. Republic of Korea Patent Publication No. 2001-76937 In addition, there is a problem that unnecessary memory consumption by using a plurality of low redundancy and column redundancy.

따라서 본 발명은 상기와 같은 종래 기술의 제반 단점과 문제점을 해결하기 위한 것으로, 내장된 에스램의 메인 메모리를 블록으로 나눈 뒤 자가 고장 테스트 회로를 이용해 메인 메모리의 고장 유/무를 판단하고, 고장이 발생한 셀이 포함한 블록을 스패어 메모리의 임의의 위치에 재배치하여 사용자에게 투명성을 제공하는 내장 에스램의 자체 복구 방법 및 장치를 제공함에 본 발명의 목적이 있다.Accordingly, the present invention is to solve the above-mentioned disadvantages and problems of the prior art, by dividing the main memory of the built-in SRAM into blocks to determine whether or not the main memory failure using a self-fault test circuit, SUMMARY OF THE INVENTION An object of the present invention is to provide a self-healing method and apparatus for self-recovering an internal SRAM that provides transparency to a user by relocating a block included in a generated cell to an arbitrary location of a spare memory.

본 발명의 상기 목적은 블록단위로 나눠진 메인 메모리의 임의의 위치에서 발생된 고장 유/무를 판단하는 자가 고장 테스트 회로; 상기 자가 고장 테스트 회로에서 발생된 고장의 신호를 받아 상기 메인 메모리의 고장 블록을 저장하고, 스패어 메모리의 임의의 위치에 복구 블록을 배치하고 그 배치된 주소를 저장하는 스패어 메모리 재배치 회로; 및 상기 스패어 메모리 재배치 회로의 신호에 따라 상기 스패어 메모리의 복구 블록과 상기 메인 메모리의 고장 블록을 대체하는 자가 고장 복구 회로를 포함하여 구성되어진 내장 에스램의 자체 복구 장치에 의해 달성된다.The object of the present invention is a self-fault test circuit for determining whether or not the failure occurred at any position of the main memory divided into blocks; A spare memory relocation circuit configured to receive a signal of a failure generated in the self-failure test circuit, store a failure block of the main memory, arrange a recovery block at an arbitrary location of the spare memory, and store the disposed address; And a self failure recovery circuit configured to replace a recovery block of the spare memory and a failure block of the main memory according to a signal of the spare memory relocation circuit.

본 발명의 상기 목적은 블록단위로 나눠진 메인 메모리의 임의의 위치에서 발생된 고장 유/무를 판단하는 단계; 상기 자가 고장 테스트 회로에서 발생된 고장의 신호를 받아 상기 메인 메모리의 고장 블록을 저장하고, 스패어 메모리의 임의의 위치에 복구 블록을 배치하고 그 배치된 주소를 저장하는 단계; 및 상기 스패어 메모리 재배치 회로의 신호에 따라 상기 스패어 메모리의 복구 블록과 상기 메인 메모리의 고장 블록을 대체하는 단계를 포함하여 이루어진 내장 에스램의 자체 복구 방법에 의해 달성된다.The above object of the present invention is to determine whether or not the failure occurred at any position of the main memory divided into blocks; Receiving a failure signal generated by the self failure test circuit, storing a failure block of the main memory, placing a recovery block at an arbitrary location of the spare memory, and storing the disposed address; And replacing a recovery block of the spare memory and a failure block of the main memory according to a signal of the spare memory relocation circuit.

본 발명의 상기 목적과 기술적 구성 및 그에 따른 작용효과에 관한 자세한 사항은 본 발명의 바람직한 실시예를 도시하고 있는 도면을 참조한 이하 상세한 설명에 의해 보다 명확하게 이해될 것이다.Details of the above object and technical configuration of the present invention and the effects thereof according to the present invention will be more clearly understood by the following detailed description with reference to the drawings showing preferred embodiments of the present invention.

도 3은 본 발명에 따른 블록 재배치의 기본 개념도이다. 도 3를 참조하면, 메인 메모리의 하나의 임의의 셀 또는 여러 개의 임의의 셀이 고장나면 그 셀에 포함하는 블록을 전부 임의의 스패어 메모리의 블록으로 재배치하여 도 1과 같이 같은 열로만 고장난 메모리를 복구하여 같은 열에 고장이 많이 발생하게 되어 같은 행의 다른 열에 복구할 메모리가 있음에도 불구하고 복구할 수 없게 되어 메모리 수율이 떨어지게 되는 것을 방지한다. 본 발명에서 BIST와 BIRU, BISR은 5bit 주소와 1워드(32bit)를 갖는 메인 메모리와 2bit 주소와 1워드(32bit)를 갖는 스패어 메모리를 1워드(32bit)에 4개의 블록(8bit)으로 나누어 설명한다.3 is a basic conceptual diagram of block relocation according to the present invention. Referring to FIG. 3, when one cell or several cells of the main memory fail, all blocks included in the cell are rearranged to blocks of the spare memory, and the memory fails only in the same column as in FIG. 1. By recovering the error, many failures occur in the same column, and even though there is memory to recover in another column of the same row, it cannot be recovered, thereby preventing the memory yield from dropping. In the present invention, BIST, BIRU, and BISR divide a main memory having a 5-bit address and 1 word (32-bit) and a spare memory having a 2-bit address and 1 word (32-bit) into 4 blocks (8 bits) in 1 word (32 bits). Explain.

도 4는 본 발명에 따른 내장 에스램의 자체 복구 장치를 나타내는 도이다. 도 4를 살펴보면, BIST(100) 회로에서 메인 메모리(140)에 테스트 주소(Test Address)가 가리키는 지점에 테스트 데이터(Test Data)를 인가한 후 테스트 데이터와 메인 메모리에서 읽어온 데이터(Reference Data)를 비교해 메인 메모리(140)의 고장 유/무를 판단한다.4 is a view showing a self-repairing device of the built-in SRAM according to the present invention. Referring to FIG. 4, after test data is applied to a point indicated by a test address in the main memory 140 in the BIST 100 circuit, test data and data read from the main memory (Reference Data) Compared to determine whether the main memory 140 has a failure.

만약, 고장이 나지 않으면 정상적인 동작을 수행하고, 고장이 나면 고장난 셀을 포함하고 있는 블록의 개수를 폴티 그룹 카운트(Faulty Group Count)를 통해 BIRU(110)에 전달한다. BIRU에서 스패어 메모리(130)의 상태를 파악한 후 재배치할 수 있으면, 스패어 메모리 인에이블(Spare Memory Enable) 신호를 통해 액티브 하이 값을 BIST(100)에 전달한다. 이 신호를 받은 BIST(100) 회로는 메인 메모리(140)에 고장난 주소(FA)와 고장난 셀(FB)을 포함한 정보를 BIRU(110)에 준다.If a failure does not occur, normal operation is performed, and if a failure occurs, the number of blocks including the failed cell is transmitted to the BIRU 110 through a faulty group count. If the BIRU can determine the state of the spare memory 130 and then relocate it, the BIRU transmits an active high value to the BIST 100 through a spare memory enable signal. The BIST 100 circuit receiving the signal provides the BIRU 110 with information including the failed address FA and the failed cell FB in the main memory 140.

BIST(100) 동작을 모두 마치게 되면 BIRU(110)는 메인 메모리(140)의 고장에 대한 정보(FA, FB, SA, SB)를 BISR(120)에 넘겨주게 된다.Upon completion of the BIST 100 operation, the BIRU 110 passes the information FA, FB, SA, SB on the failure of the main memory 140 to the BISR 120.

도 5는 본 발명에 의한 BIST 및 BISR 통합구조 처리과정이다. 도 5을 참조하면 회로에 전원이 들어오면 이러한 일련의 과정이 수행된다. 또는, 시작(start) 신호에 의해 테스트 모드가 시작된다. 통합구조가 시작이 되면 BIST는 마치 알고리즘을 이용한 테스트 패턴을 생성한다.5 is a BIST and BISR integrated structure process according to the present invention. Referring to FIG. 5, a series of processes are performed when power is supplied to a circuit. Alternatively, the test mode is started by a start signal. When the integrated structure begins, BIST creates a test pattern using an algorithm.

먼저, 스패어 메모리의 고장 유/무를 살펴보고, 고장이 발견된 스패어 메모리는 BIRU를 통해 사용 불가능으로 설정해 준다. 스패어 메모리를 우선적으로 테스트해주는 이유는 메인 메모리의 고장으로 인해 메모리 재배치가 이루어질 때 스패어 메모리가 존재함에도 복구 실패가 일어나는 것을 피하기 위한 것이다.First of all, the failure of spare memory is examined and the spare memory that is found is disabled through BIRU. The primary reason for testing spare memory is to avoid recovery failures when spare memory is present when memory relocation occurs due to a failure of main memory.

스패어 메모리 테스트가 끝나면 메인 메모리 테스트가 시작되며 테스트 중에 고장이 검출될 경우 BIRU를 통해 고장난 셀을 포함하는 블록의 정보를 BISR로 전해준다. 전체 메모리 테스트가 종료되면 테스트 모드에서 BISR 모드로 전환되며 일반적인 메모리 동작이 이뤄진다.When the spare memory test is completed, the main memory test is started. If a failure is detected during the test, the BIRU sends the information of the block containing the failed cell to the BISR. At the end of the full memory test, the test mode transitions from BISR mode to normal memory operation.

도 6은 본 발명에 의한 BIST 구성도이다. 도 6을 살펴보면, BIST(200)는 외부로부터의 제어 신호나 테스트 데이터를 공급받지 않고 칩 자체에서 자발적으로 테스트 수행이 가능하도록 해 준다.6 is a BIST configuration diagram according to the present invention. Referring to FIG. 6, the BIST 200 enables a test to be spontaneously performed by the chip itself without receiving a control signal or test data from the outside.

본 발명에서 사용하는 메모리 BIST(200) 회로는 BIST(200) 회로의 동작을 제어하는 제어모듈(210), 테스트 패턴이 인가될 메모리의 주소를 생성하는 테스트 주소생성모듈(220), 테스트 패턴을 생성하는 테스트 데이터생성모듈(230), 그리고 테스트 결과를 비교하는 데이터비교모듈(240)로 구성된다. 제어모듈(210)은 테스트 모드 시에 필요한 제어 신호를 생성하는 모듈로 설정 파일에서 기술한 알고리즘을 위한 수행 상태 머신과 각각의 메모리에 대하여 정의한 배경 데이터를 위한 상태 머신을 가지고 있다.The memory BIST 200 circuit used in the present invention includes a control module 210 for controlling the operation of the BIST 200 circuit, a test address generation module 220 for generating an address of a memory to which a test pattern is applied, and a test pattern. Test data generation module 230 to generate, and a data comparison module 240 for comparing the test results. The control module 210 generates a control signal required in the test mode. The control module 210 has a state machine for background data defined for each memory and an execution state machine for the algorithm described in the configuration file.

수행 상태 머신은 주소생성모듈(220)로부터 "EndOfAddress"가 생성될 때까지 하나의 March 단계를 반복한다. 배경데이터 상태 머신은 수행 상태 머신으로부터 "EndOfMarch" 신호가 생성되면 다음 상태로 이동하며, 현재 테스트가 수행 중인 메모리에 따라 배경데이터 상태 머신에서 "EndOfTest"라는 신호를 발생시킨다.The performing state machine repeats one March step until "EndOfAddress" is generated from the address generation module 220. The background data state machine moves to the next state when the "EndOfMarch" signal is generated from the execution state machine, and generates a signal "EndOfTest" in the background data state machine according to the memory currently being tested.

제어 모듈(210)은 수행데이터 상태 머신의 각 상태에서 메모리를 위한 제어 신호, 주소생성모듈(220)을 위한 "AglEn" 신호를 생성하고, 데이터생성모듈(230)은 "DglEn" 신호를 생성한다. 그리고 데이터비교모듈(240)을 위한 "DclEn" 신호를 생성한다. 생성된 "AglEn", "DglEn", "DclEn" 신호는 각각의 모듈의 동작을 활성화시키는 신호로 주소와 테스트 데이터가 생성된다.The control module 210 generates a control signal for the memory and an "AglEn" signal for the address generation module 220 in each state of the performance data state machine, and the data generation module 230 generates a "DglEn" signal. . And generates a "DclEn" signal for the data comparison module 240. The generated "AglEn", "DglEn" and "DclEn" signals activate the operation of each module. Address and test data are generated.

주소생성모듈(220)은 테스트 모드시에 제어모듈(210)로부터 생성되는 "AglEn"이라는 신호에 의해 테스트 데이터를 적용할 메모리 주소를 생성하는 모듈이다. 메모리 테스트 알고리즘에서 사용되는 주소는 0번지부터 마지막 번지까지 주소가 증가하는 방향 또는 감소하는 방향으로 변하게 된다.The address generation module 220 generates a memory address to which test data is applied by a signal "AglEn" generated from the control module 210 in the test mode. The address used in the memory test algorithm changes in the direction of increasing or decreasing address from address 0 to the last address.

따라서 주소가 0번지부터 마지막 번지까지 계속 반복되는 카운터를 만들고, 감소하는 방향의 주소가 필요한 경우 카운터 출력의 보수를 사용하였다. 또한, 여러 개의 메모리가 사용될 경우 현재 테스트가 진행 중인 메모리의 주소의 크기에 맞도록 마지막 메모리 주소를 조정할 수 있게 하였다.Therefore, we made a counter that repeats the address from address 0 to the last address, and used the counter output's complement when the address in decreasing direction is needed. In addition, when multiple memories are used, the last memory address can be adjusted to match the size of the address of the memory currently being tested.

데이터생성모듈(230)은 제어모듈(210)에서 발생하는 "DGLEnable" 신호에 의해 테스트 패턴을 생성하는 모듈이다. "Data" 라는 신호가 실제 메모리에 인가된 테스트 데이터로, 이 신호는 "DglEn" 신호의 값이 0인 경우는 데이터 레지스터 값이 그대로, 1인 경우는 데이터 레지스터 보수 값이 출력된다. 데이터 레지스터 값은 현재 테스트가 수행 중인 메모리를 위한 데이터를 의미하며, 배경데이터를 정의한 메모리인 경우에는 현재의 단계에서 필요한 배경데이터를 의미한다.The data generation module 230 generates a test pattern by the "DGLEnable" signal generated from the control module 210. The "Data" signal is the test data applied to the actual memory. When the value of the "DglEn" signal is 0, the data register value is left as it is. If the value is 1, the data register complement value is output. The data register value refers to data for the memory currently being tested, and in the case of the memory defining the background data, it refers to the background data required in the current step.

데이터비교모듈(240)은 테스트 결과 후 메모리에서 읽혀진 값과 데이터생성모듈(230)에서 생성된 레퍼런스(reference) 값을 배타적논리합(xor) 연산한 후, 비교 레지스터 값과 논리합(or) 연산을 수행한 후, 결과를 저장한다. 비교결과는 클록의 에지(edge)에서 "DclEn" 신호가 활성화되었을 경우에 비교 레지스터에 저장된다.The data comparison module 240 performs an exclusive logical OR operation on the value read from the memory after the test result and the reference value generated by the data generation module 230, and then performs an OR operation on the comparison register value. After that, save the result. The comparison result is stored in the comparison register when the "DclEn" signal is activated at the edge of the clock.

그리고 클록의 에지(edge)에서 "ShiftEnable" 신호가 활성화되면 비교 레지스터가 쉬프트 연산을 수행함으로써 쉬프트출력(ShiftOut) 포트로 테스트 결과가 전달되어 IEEE 1149.1 또는 IEEE P1500을 통해 외부로 최종 테스트 결과 값을 출력한다. BISR과의 통합 모듈에서는 비교 후 데이터가 같지 않으면 고장이 발생한 것으로 보고 그때의 메인 메모리의 주소 값과 블록의 값을 BIRU 모듈에 전달한다.When the "ShiftEnable" signal is activated at the edge of the clock, the comparison register performs a shift operation, which transfers the test result to the ShiftOut port and outputs the final test result value externally through IEEE 1149.1 or IEEE P1500. do. In the integration module with BISR, if the data is not the same after comparison, it is regarded as a failure, and then the address value of the main memory and the block value are transmitted to the BIRU module.

도 7은 본 발명에 의한 BIRU 구조도이다. 도 7에 도시된 바와 같이, BIRU는 프로세스 부분과 ARU(Address Remapping Unit) 두 부분으로 나눌 수 있다. BIST의 데이터비교모듈에서 메인 메모리의 고장이 확인되면, 고장난 셀이 포함된 블록의 개수를 BIRU의 프로세스에 보낸다. 프로세스에서는 고장난 블록의 개수(Faulty Group Count)와 사용 가능한 스패어 메모리(Valid & Fail Count)를 비교한 후 고장난 블록 개수가 스패어 메모리 블록의 개수보다 더 작다면 메인 메모리의 고장난 블록의 값(FB : Faulty Block; 블록의 순서에 따라; ‘1000’, ‘0100’, ‘0010’, ‘0001’), 메인 메모리의 주소 값(FA : Faulty Address), 스패어 메모리 주소 값(SA : Spare Address)을 ARU 임시 레지스터에 저장을 하고, 그때 스패어 메모리 블록의 값(SB : Spare Block)도 같이 저장을 한다.7 is a structure diagram of a BIRU according to the present invention. As shown in FIG. 7, the BIRU may be divided into two parts, a process part and an address remapping unit (ARU). If the main memory of the BIST is identified in the BIST data comparison module, the number of blocks containing the failed cell is sent to the BIRU process. The process compares the number of failed blocks (Faulty Group Count) with the available spare memory (Valid & Fail Count), and if the number of failed blocks is less than the number of spare memory blocks, the value of the failed block in main memory (FB). : Faulty Block; in order of block; '1000', '0100', '0010', '0001'), main memory address value (FA: Faulty Address), spare memory address value (SA: Spare Address) Is stored in the ARU temporary register, and then the value of the spare memory block (SB: Spare Block) is also stored.

만약, 고장난 블록의 개수가 더 크면 그때의 스패어 메모리 주소가 마지막 스패어 메모리 주소인가를 확인하고 마지막 주소가 아니면, 스패어 메모리 주소를 다음 주소로 증가시킨 후 다시 비교를 한다. 스패어 메모리 주소가 마지막이었다면, 스패어 메모리의 크기보다 메인 메모리에서 고장난 셀의 블록이 수가 더 많아 재배치할 수 없는 상태를 의미하며 BISR을 실행할 필요가 없게 된다.If the number of failed blocks is larger, check whether the spare memory address at that time is the last spare memory address. If not, increase the spare memory address to the next address and compare again. If the spare memory address was last, it means that there are more blocks of failed cells in main memory than the size of the spare memory that cannot be relocated, and there is no need to run BISR.

도 8은 본 발명에 의한 스패어 메모리 할당을 위한 블록정보의 예이다. 도 8을 살펴보면, 주소 2bit, 1 워드(32bit)를 갖는 스패어 메모리를 4개의 블록으로 나누어 놓은 것이다. 상기도 2에서의 메인 메모리에서 고장난 블록을 스패어 메모리로 재배치되는 것에 대한 스패어 메모리에 각각의 블록 재배치 설정 값들을 표기한 예이다. 위와 같은 예로서 BISR을 설명한다.8 is an example of block information for spare memory allocation according to the present invention. Referring to FIG. 8, a spare memory having an address of 2 bits and one word (32 bits) is divided into four blocks. 2 is an example in which the respective block relocation setting values are marked in the spare memory for relocating the failed block in the main memory to the spare memory. BISR will be described as an example as above.

도 9는 본 발명에 의한 BISR 블록도이다. 도 9를 살펴보면, 메인 메모리의 제어신호가 RAMEN(RamEnable) = ‘0’, WE(WriteEnable = ‘0’, OE(Output Enable) = ‘1’을 가지면 메인 메모리에 데이터를 쓰고, RAMEN(RamEnable) = '0', WE(WriteEnable) = '1', OE(Output Enable) = '0'의 값들을 가지면 데이터를 메인 메모리로부터 읽는다. 메인 메모리의 셀 고장에 의해 스패어 메모리를 사용하려면 스패어 메모리도 메인 메모리가 읽기나 쓰기 동작 시에 같은 읽기, 쓰기 동작을 해야 한다.9 is a block diagram of a BISR according to the present invention. Referring to FIG. 9, when the control signal of the main memory has RAMEN (RamEnable) = '0', WE (WriteEnable = '0', OE (Output Enable) = '1', data is written to the main memory and RAMEN (RamEnable) = '0', WE (WriteEnable) = '1', OE (Output Enable) = '0' read data from main memory Spare memory to use spare memory due to cell failure in main memory The domain memory must perform the same read and write operations during read and write operations.

본 발명에서는 /WE의 신호를 가지고 메인 메모리와 스패어 메모리가 동시에 읽기와 쓰기를 할 수 있도록 구분하였다(/OE를 가지고 구분해도 상관없음).In the present invention, the main memory and the spare memory are divided so that the main memory and the spare memory can read and write at the same time with the / WE signal.

도 10은 본 발명에 의한 비교기와 스패어 행주소 선택기 구조도이다. 도 10을 살펴보면, 메인 메모리에 데이터를 쓸 때, 주소를 선택하고 그 선택한 주소에 데이터를 쓴다. 이때, 선택한 주소에 고장 유/무가 있었는지를 회로를 통해 알 수 있다. 비교기 회로는 BIRU로부터 각각의 블록의 FA값들과 메인 메모리에 접근한 주소를 병렬로 비교한다. FA값과 주소의 값을 각각 배타적논리합(XOR) 연산한 후 논리합(OR) 게이트로 묶는다. 10 is a structural diagram of a comparator and a spare row address selector according to the present invention. Referring to FIG. 10, when writing data to the main memory, an address is selected and data is written to the selected address. At this time, it is possible to know whether or not there is a failure in the selected address through the circuit. The comparator circuit compares the FA values of each block from the BIRU with the address that accessed the main memory in parallel. Exclusive logical sum (XOR) operation is performed on the FA value and the address value, respectively, and grouped by the OR gate.

만약, 주소가 일치하면 ‘0’값을 출력하고, 같지 않으면‘1’을 출력한다. 메인 메모리에 ‘00010’ 주소를 가지고 데이터를 읽거나 쓰기를 하면 비교기 회로에서 ‘1111111111111000’값을 출력한다. 이 출력값은 행주소 선택기 회로와 스패어 블록 선택기 회로, 고장난 블록 선택기 회로에 입력값을 가지며, 만약 고장이 없는 메인 메모리의 워드에 접근할 때에는 BISR의 회로를 동작하지 않고 출력할 수 있도록 MUX의 선택선의 입력 값으로 인가된다.If the address matches, it outputs a '0' value, and if it is not the same, it outputs a '1'. When reading or writing data with '00010' address in main memory, '1111111111111000' value is output from the comparator circuit. This output has inputs to the row address selector circuit, the spare block selector circuit, and the failed block selector circuit, and selects the MUX so that the BISR circuit can be output without operating when accessing a word in the main memory without a fault. It is applied as the input value of the line.

행주소 선택기 회로는 BIRU에서의 R행 주소 값을 각각의 블록 단위로 입력받아 비교기의 출력 값을 행주소 선택기 회로의 삼상 버퍼의 선택 선으로 인가되며 논리합(OR) 게이트를 거처 ‘00' 값을 출력하게 된다. 이 값은 스패어 메모리에 주소값으로 인가된다.The row address selector circuit receives the R row address value from the BIRU in units of blocks and applies the output value of the comparator to the selection line of the three-phase buffer of the row address selector circuit and sets the value '00' through the OR gate. Will print. This value is applied to the spare memory as an address value.

도 11은 본 발명에 의한 고장난 블록 선택기 구조도이다. 도 11을 살펴보면, BIRU에서의 고장난 블록 값들을 각각의 블록 단위로 삼상 버퍼의 입력으로 넣는다. 이때의 삼상 버퍼의 선택선은 비교기 회로의 출력 값인 ‘1111111111111000’로 결정한다. 선택선에 의해 삼상 버퍼의 출력으로 나올 수 있는 값은 ‘1000’, ‘0010’, ‘0001’이다. 이 값을 논리합(OR) 게이트로 통과시킨 후 그 값 ‘1011’를 읽기/쓰기 블록 선택기와 데이터출력 블록 선택기의 입력으로 인가시킨다.11 is a structural diagram of a failed block selector according to the present invention. Referring to FIG. 11, failed block values in a BIRU are input to the three-phase buffer in units of blocks. The selection line of the three-phase buffer at this time is determined as '1111111111111000' which is an output value of the comparator circuit. The values that can be output to the output of the three-phase buffer by the select line are '1000', '0010' and '0001'. Pass this value to the OR gate and apply the value '1011' to the input of the read / write block selector and the data output block selector.

메인 메모리에 입력되는 데이터들을 블록의 개수로 분할해 메인 메모리로 입력되는 데이터 블록 하나가 스패어 메모리로 입력되는 경우의 수만큼 입력하며 읽기/쓰기 블록 선택기의 출력 값에 의해 스패어 메모리 입력 블록을 결정한다.The data input to the main memory is divided into the number of blocks, and one data block input to the main memory is input as many as the input of the spare memory. The spare memory input block is selected by the output value of the read / write block selector. Decide

도 12는 본 발명에 의한 스패어 블록 선택기와 읽기/쓰기 블록 선택기 구조도이다. 도 12를 살펴보면, BIRU에서의 SB값을 각각의 블록 단위로 스패어 블록 선택기 회로의 삼상 버퍼의 입력으로 넣는다. 이때의 삼상 버퍼의 선택선은 비교기 회로의 출력 값인 ‘1111111111111000’로 한다. 선택선에 의해 삼상 버퍼의 출력으로 나올 수 있는 값은 '0100', '0010', '0001'이다.12 is a structural diagram of a spare block selector and a read / write block selector according to the present invention. 12, the SB value in the BIRU is input to the three-phase buffer input of the spare block selector circuit in units of blocks. The selection line of the three-phase buffer at this time is set to '1111111111111000', which is an output value of the comparator circuit. The values that can be output to the output of the three-phase buffer by the select line are '0100', '0010' and '0001'.

이 값들을 논리합(OR)한 후의 값 ‘0111’을 읽기/쓰기 블록 선택기 회로의 입력 값으로 인가한다. 읽기/쓰기 블록 선택기 회로는 고장난 블록 선택기 회로와 스패어 블록 선택기 회로에서의 논리합(OR)한 값을 다중화(MUX) 회로에 입력으로 받는다. 이 다중화기(MUX)의 선택선은 메인 메모리의 제어 신호인 /WE 값으로 메인 메모리의 읽기 동작을 할 때는 ‘1’ 값을 가지며, 쓰기 동작 때는 반대의 값인 ‘0’을 갖는다. 다중화기(MUX)의 선택선이 /WE값에 의해 결정되면 각각의 다중화(MUX) 출력 값이 분배기 회로의 입력으로 들어간다. 분배기 회로를 통해 출력된 값들은 브랜치(Branch) 회로를 통과해 스패어 블록 선택기 회로로 입력된다. 입력된 값들은 삼상 버퍼의 선택선으로 인가되며 메인 메모리에서 고장난 블록을 스패어 메모리에 쓰기 동작을 하게 된다.The value '0111' after the OR is applied as the input value of the read / write block selector circuit. The read / write block selector circuit receives the OR of the failed block selector circuit and the spare block selector circuit as inputs to the multiplexing (MUX) circuit. The select line of the multiplexer (MUX) has a value of / WE, which is a control signal of the main memory, and has a value of '1' for the read operation of the main memory and an opposite value of '0' for the write operation. When the select line of the multiplexer (MUX) is determined by the value of / WE, each multiplexed (MUX) output value enters the input of the divider circuit. The values output through the divider circuit pass through the branch circuit and enter the spare block selector circuit. The input values are applied to the selection line of the three-phase buffer and write the failed block in the main memory to the spare memory.

도 13은 본 발명에 의한 데이터출력 블록 선택기 구조도이다. 도 13을 참조하면, 메인 메모리의 고장난 위치를 읽을 경우에는 스패어 메모리에 쓰기를 했던 블록의 값과 메인 메모리의 값을 치환한다. 스패어 메모리의 워드 값을 블록 단위로 데이터출력 블록 선택기 입력으로 출력한다.13 is a structural diagram of a data output block selector according to the present invention. Referring to FIG. 13, when a faulty position of the main memory is read, the value of the block written to the spare memory and the value of the main memory are replaced. The word value of the spare memory is output to the data output block selector input in units of blocks.

데이터출력 블록 선택기 회로에 입력된 스패어 메모리 워드 값들이 메인 메모리에서 출력된 워드 값과 치환될 위치 블록을 선택하기 위해 읽기/쓰기 블록 선택기의 출력 값과 고장난 블록 선택기 회로 출력 값을 가지고 데이터출력 블록 선택기 회로의 삼상 버퍼와 다중화기(MUX)의 선택선으로 인가된다.Spare memory word values input to the data output block selector circuit have the output value of the read / write block selector and the failed block selector circuit output value to select the position block to be replaced with the word value output from the main memory. It is applied to the three-phase buffer of the selector circuit and the select line of the multiplexer (MUX).

읽기/쓰기 블록 선택기에서 나온 값(‘0000’, ‘0100’, ‘0100’, ‘0010’, ‘0001’)이 각각의 삼상 버퍼의 선택선으로 입력되면 스패어 메모리로부터 출력되는 데이터 값들을 선택선에 의해 위치가 구분된다. 고장난 블록을 가지고 있는 메인 메모리로부터 출력되는 데이터 값들은 스패어 메모리로부터 나와 삼상 버퍼와 논리합(OR) 게이트를 지나온 데이터 값들로 치환되기 위해서는 고장난 블록 선택기에서 나온 ‘1011’의 값을 선택선으로 가져 다중화기(MUX)를 통과해 치환된 데이터 값은 아무런 고장 없이 메인 메모리의 출력 값으로 나가게 된다. 고장이 없는 주소를 읽었을 경우 비교기에서 ‘1111111111111111‘ 값이 나오고 그 값은 "DataOut"에 걸려 있는 다중화기(MUX)의 선택선을 가져 BISR의 회로를 거치지 않고 바이패스(Bypass)된다.When the values ('0000', '0100', '0100', '0010', '0001') from the read / write block selector are input to the selection line of each three-phase buffer, the data values output from the spare memory are selected. The location is separated by a line. The data values output from the main memory with the failed block are multiplied by the value of '1011' from the failed block selector in order to be replaced by the data values from the spare memory and the three-phase buffer and the OR gate. The data value replaced by the MUX goes to the output value of the main memory without any trouble. In case of reading the address without fault, '1111111111111111' value comes out from the comparator and the value is bypassed without going through the circuit of BISR with the select line of the multiplexer (MUX) hanging at "DataOut".

따라서 본 발명의 내장 에스램의 자체 복구 방법 및 장치는 임의의 메모리 고장시에 SOC를 정상 동작시키며, 메모리의 물리적 구조에서 독립적인 회로로 존재하여 고가의 메모리를 스패어 메모리로 재사용함으로써 메모리의 수율을 증가시키는 장점이 있고, 고장난 메모리를 다시 사용하는 효과가 있다.Therefore, the self-recovery method and apparatus of the internal SRAM according to the present invention normally operate the SOC in case of any memory failure, and exist as an independent circuit in the physical structure of the memory to reuse the expensive memory as a spare memory, thereby yielding the memory. This has the advantage of increasing the cost, and has the effect of reusing broken memory.

Claims (14)

내장 에스램 기반의 자체 복구 장치에 있어서,In the internal SRAM-based self-healing device, 스패어 메모리의 고장 유/무와 블록 단위로 나눠진 메인 메모리의 임의의 위치에서 발생된 고장 유/무를 검출하는 자가 고장 테스트 회로;A self-failure test circuit for detecting the presence or absence of a failure of the spare memory and a failure occurring at an arbitrary position of the main memory divided into blocks; 상기 자가 고장 테스트 회로에서 발생된 고장 신호를 전달받은 후, 상기 고장 신호에 포함된 상기 메인 메모리의 고장 블록의 정보를 저장하고, 스패어 메모리의 임의의 위치에 복구 블록을 배치하고 그 배치된 주소를 저장하는 스패어 메모리 재배치 회로; 및After receiving the failure signal generated in the self failure test circuit, the information of the failure block of the main memory included in the failure signal is stored, and a recovery block is placed at an arbitrary position of the spare memory and the allocated address A spare memory relocation circuit for storing a; And 상기 스패어 메모리 재배치 회로에서 전송되는 신호에 따라 상기 메인 메모리의 고장 블록을 상기 스패어 메모리의 복구 블록으로 대체하는 자가 고장 복구 회로Self-failure recovery circuit for replacing the failure block of the main memory with the recovery block of the spare memory in accordance with the signal transmitted from the spare memory relocation circuit 를 포함하는 내장 에스램의 자체 복구 장치.Self-repairing device of the built-in SRAM. 제 1 항에 있어서, The method of claim 1, 상기 자가 고장 테스트 회로는 제어모듈, 주소생성모듈, 데이터생성모듈 및 데이터비교모듈을 포함하는 내장 에스램의 자체 복구 장치.The self-failure test circuit is a self-healing device of the built-in SRAM comprising a control module, an address generation module, a data generation module and a data comparison module. 제 2 항에 있어서, 상기 제어모듈은 The method of claim 2, wherein the control module 메모리 고장을 자체 테스트하기 위해 필요한 알고리즘의 수행을 위한 수행 상태 머신; 및A performance state machine for performing algorithms needed to self test a memory failure; And 상기 수행 상태 머신으로부터 전송되는 신호를 수신하여 배경 상태를 설정하기 위한 배경데이터 상태 머신Background data state machine for setting a background state by receiving a signal transmitted from said performing state machine 을 포함하는 내장 에스램의 자체 복구 장치.Self-repairing device of built-in SRAM. 제 2 항에 있어서,The method of claim 2, 상기 주소생성모듈은 상기 제어모듈로부터 신호를 전송받아 테스트 데이터 값을 해당되는 주소 위치에서 읽기 및 쓰기를 할 수 있는 내장 에스램의 자체 복구 장치.The address generation module is a self-recovery device of the internal SRAM capable of receiving a signal from the control module to read and write a test data value at the corresponding address location. 제 2 항에 있어서, The method of claim 2, 상기 데이터생성모듈은 상기 제어모듈로부터 신호를 전송받은 후, 테스트 패턴을 만들어 테스트가 진행 중인 상기 메모리를 위한 데이터 또는 배경 데이터를 생성해 메모리에 전달하는 내장 에스램의 자체 복구 장치.The data generation module is a self-recovery device of the built-in SRAM to generate a test pattern after receiving a signal from the control module, and to generate the data or background data for the memory under test to the memory. 제 2 항에 있어서, The method of claim 2, 상기 데이터비교모듈은 테스트 결과 후, 상기 메모리에 저장된 값과 상기 데이터생성모듈에서 생성된 데이터 값을 배타적논리합(XOR) 연산하고, 비교 레지스터 값과 논리합(OR) 연산을 수행한 후, 상기 자가 고장 복구 회로에서 측정된 값과 비교하여 고장 블록의 값을 상기 스패어 메모리 재배치 회로에 전송하는 내장 에스램의 자체 복구 장치.After the test result, the data comparison module performs an exclusive logical sum (XOR) operation on the value stored in the memory and the data value generated by the data generation module, and performs a logical OR operation on the comparison register value. Self-recovery device of the built-in SRAM for transmitting the value of the failure block to the spare memory relocation circuit in comparison with the value measured in the recovery circuit. 제 6 항에 있어서, The method of claim 6, 상기 스패어 메모리 재배치 회로는 프로세스와 ARU를 포함하는 내장 에스램의 자체 복구 장치.The spare memory relocation circuit includes a process and an ARU. 제 7 항에 있어서, The method of claim 7, wherein 상기 프로세스는 상기 스패어 메모리에 첫 번째 주소의 사용 가능한 블록의 개수를 상기 ARU로부터 전송받은 후, 상기 데이터생성모듈에서의 고장난 블록의 개수와 스패어 메모리에 사용할 수 있는 블록의 개수를 비교하는 내장 에스램의 자체 복구 장치.The process receives the number of available blocks of the first address in the spare memory from the ARU, and then compares the number of failed blocks in the data generation module with the number of blocks available for the spare memory. SRAM's self-healing device. 삭제delete 내장 에스램 기반의 자체 복구 방법에 있어서, In the self-recovery method based on the built-in SRAM, (a) 스패어 메모리의 고장 유/무와 블록단위로 나눠진 메인 메모리의 임의의 위치에서 발생된 고장 유/무를 자가 고장 테스트 회로에서 검출하는 단계;(a) detecting, by the self-failure test circuit, whether or not the spare memory is broken and a failure occurred at an arbitrary position of the main memory divided into blocks; (b) 상기 자가 고장 테스트 회로에서 전송하는 고장 신호를 스패어 메모리 재배치 회로에서 수신하여, 상기 고장 신호에 포함된 상기 메인 메모리의 고장 블록의 정보를 저장하고, 스패어 메모리의 임의의 위치에 복구 블록을 배치하고 그 배치된 주소를 저장하는 재배치 단계; 및 (b) receiving a failure signal transmitted from the self-failure test circuit in a spare memory rearrangement circuit, storing information of a failure block of the main memory included in the failure signal, and restoring to an arbitrary location of the spare memory; A relocation step of placing the block and storing the placed address; And (c) 상기 재배치 단계에서 발생된 신호에 따라 자가 고장 복구 회로에서 상기 메인 메모리의 고장 블록을 상기 스패어 메모리의 복구 블록으로 대체하는 단계(c) replacing a failure block of the main memory with a recovery block of the spare memory in a self-failure recovery circuit according to a signal generated in the relocation step; 를 포함하는 내장 에스램의 자체 복구 방법.Self-recovery method of built-in SRAM containing a. 제 10 항에 있어서, 상기 (b) 단계는 The method of claim 10, wherein step (b) 상기 스패어 메모리에 첫 번째 주소의 사용 가능한 블록의 개수를 ARU로부터 전송받아 고장난 블록의 개수와 상기 스패어 메모리에 사용할 수 있는 블록의 개수를 비교하는 프로세스 과정; 및 A process of receiving the number of available blocks of a first address in the spare memory from an ARU and comparing the number of failed blocks with the number of blocks available for the spare memory; And 상기 고장 블록 개수가 상기 스패어 메모리 개수보다 작은 경우, 상기 메인 메모리의 고장난 블록 값, 상기 메인 메모리의 주소 값 및 상기 스패어 메모리의 주소 값을 ARU 임시 레지스터에 저장하는 ARU 과정An ARU process of storing a failed block value of the main memory, an address value of the main memory, and an address value of the spare memory in an ARU temporary register when the number of failed blocks is smaller than the number of spare memories. 을 포함하는 내장 에스램의 자체 복구 방법.Self-recovery method of built-in SRAM containing a. 삭제delete 삭제delete 제 10 항 또는 제 11 항에 있어서,The method of claim 10 or 11, 상기 (c) 단계는 상기 (b) 단계에서의 상기 ARU 과정의 설정 값을 가지고 고장난 메인 메모리의 데이터 값을 상기 스패어 메모리로 대신 사용하기 위하여 상기 메인 메모리가 읽기 및 쓰기 동작을 하는 경우, 상기 스패어 메모리도 상기 메인 메모리와 같은 읽기 및 쓰기 동작을 하는 내장 에스램의 자체 복구 방법.In the step (c), when the main memory performs a read and write operation in order to use the data value of the failed main memory as the spare memory instead of the setting value of the ARU process in the step (b), Spare memory self-recovery method of the internal SRAM that performs the same read and write operations as the main memory.
KR1020050015718A 2005-02-25 2005-02-25 Self-repair method and device of built-in SRAM Expired - Fee Related KR100684471B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020050015718A KR100684471B1 (en) 2005-02-25 2005-02-25 Self-repair method and device of built-in SRAM

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050015718A KR100684471B1 (en) 2005-02-25 2005-02-25 Self-repair method and device of built-in SRAM

Publications (2)

Publication Number Publication Date
KR20060094592A KR20060094592A (en) 2006-08-30
KR100684471B1 true KR100684471B1 (en) 2007-02-22

Family

ID=37602345

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050015718A Expired - Fee Related KR100684471B1 (en) 2005-02-25 2005-02-25 Self-repair method and device of built-in SRAM

Country Status (1)

Country Link
KR (1) KR100684471B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11386975B2 (en) 2018-12-27 2022-07-12 Samsung Electronics Co., Ltd. Three-dimensional stacked memory device and method

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100959055B1 (en) * 2007-02-16 2010-05-20 한국전자통신연구원 Internal memory device and system with integrated programmable self-test and its self-healing method
CN112908401B (en) * 2019-12-04 2024-08-23 芯测科技股份有限公司 Memory repair circuit, memory module and memory repair method
CN113821364B (en) * 2020-06-20 2025-07-04 华为技术有限公司 Memory failure processing method, device, equipment and storage medium

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100354437B1 (en) * 2000-01-28 2002-09-28 삼성전자 주식회사 An integrated circuit semiconductor device having built-in self-repair circuit for embedded memory and a method for repairing the memory
KR20020093642A (en) * 2001-06-08 2002-12-16 미쯔비시 일렉트릭 코포레이션 Methods and apparatus for storing memory test information

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100354437B1 (en) * 2000-01-28 2002-09-28 삼성전자 주식회사 An integrated circuit semiconductor device having built-in self-repair circuit for embedded memory and a method for repairing the memory
KR20020093642A (en) * 2001-06-08 2002-12-16 미쯔비시 일렉트릭 코포레이션 Methods and apparatus for storing memory test information

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
1003544370000
1020020093642

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11386975B2 (en) 2018-12-27 2022-07-12 Samsung Electronics Co., Ltd. Three-dimensional stacked memory device and method
US11830562B2 (en) 2018-12-27 2023-11-28 Samsung Electronics Co., Ltd. Three-dimensional stacked memory device and method

Also Published As

Publication number Publication date
KR20060094592A (en) 2006-08-30

Similar Documents

Publication Publication Date Title
US6667918B2 (en) Self-repair of embedded memory arrays
JP3274332B2 (en) Controller / mass memory embedded semiconductor integrated circuit device, test method and use method thereof, and semiconductor integrated circuit device and test method therefor
US6373758B1 (en) System and method of operating a programmable column fail counter for redundancy allocation
KR102117633B1 (en) Self repair device
KR100314362B1 (en) Semiconductor memory
US7490274B2 (en) Method and apparatus for masking known fails during memory tests readouts
KR20160148347A (en) Self repair device and method
US7366946B2 (en) ROM redundancy in ROM embedded DRAM
US6826098B2 (en) Semiconductor memory having multiple redundant columns with offset segmentation boundaries
WO2008001543A1 (en) Semiconductor testing apparatus and semiconductor memory testing method
US7298658B2 (en) Semiconductor memory device using row redundancy and I/O redundancy scheme based on a preset order and a defect order
US20020108073A1 (en) System for and method of operating a programmable column fail counter for redundancy allocation
US11532375B2 (en) Latch circuit and memory device including the same
US6634003B1 (en) Decoding circuit for memories with redundancy
KR100745403B1 (en) Semiconductor memory device and self test method
US7549098B2 (en) Redundancy programming for a memory device
US20040015757A1 (en) Test circuit and method for testing an integrated memory circuit
US20060253723A1 (en) Semiconductor memory and method of correcting errors for the same
KR20170016640A (en) Semiconductor apparatus and repair method of the same
KR100684471B1 (en) Self-repair method and device of built-in SRAM
US7593274B2 (en) Semiconductor integrated circuit and relief method and test method of the same
US7464309B2 (en) Method and apparatus for testing semiconductor memory device and related testing methods
US7352638B2 (en) Method and apparatus for testing a memory device
US20080151659A1 (en) Semiconductor memory device
US8352781B2 (en) System and method for efficient detection and restoration of data storage array defects

Legal Events

Date Code Title Description
A201 Request for examination
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20050225

PA0201 Request for examination
N231 Notification of change of applicant
PN2301 Change of applicant

Patent event date: 20050602

Comment text: Notification of Change of Applicant

Patent event code: PN23011R01D

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20060331

Patent event code: PE09021S01D

N231 Notification of change of applicant
PN2301 Change of applicant

Patent event date: 20060502

Comment text: Notification of Change of Applicant

Patent event code: PN23011R01D

PG1501 Laying open of application
E90F Notification of reason for final refusal
PE0902 Notice of grounds for rejection

Comment text: Final Notice of Reason for Refusal

Patent event date: 20060915

Patent event code: PE09021S02D

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20070207

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20070213

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20070213

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
PR1001 Payment of annual fee

Payment date: 20100203

Start annual number: 4

End annual number: 4

PR1001 Payment of annual fee

Payment date: 20101129

Start annual number: 5

End annual number: 5

FPAY Annual fee payment

Payment date: 20111209

Year of fee payment: 6

PR1001 Payment of annual fee

Payment date: 20111209

Start annual number: 6

End annual number: 6

LAPS Lapse due to unpaid annual fee
PC1903 Unpaid annual fee

Termination category: Default of registration fee

Termination date: 20140109