KR20060094592A - 내장 에스램의 자체 복구 방법 및 장치 - Google Patents
내장 에스램의 자체 복구 방법 및 장치 Download PDFInfo
- Publication number
- KR20060094592A KR20060094592A KR1020050015718A KR20050015718A KR20060094592A KR 20060094592 A KR20060094592 A KR 20060094592A KR 1020050015718 A KR1020050015718 A KR 1020050015718A KR 20050015718 A KR20050015718 A KR 20050015718A KR 20060094592 A KR20060094592 A KR 20060094592A
- Authority
- KR
- South Korea
- Prior art keywords
- memory
- self
- block
- failure
- sram
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/70—Masking faults in memories by using spares or by reconfiguring
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/14—Implementation of control logic, e.g. test mode decoders
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/18—Address generation devices; Devices for accessing memories, e.g. details of addressing circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/36—Data generation devices, e.g. data inverters
Landscapes
- For Increasing The Reliability Of Semiconductor Memories (AREA)
Abstract
본 발명은 내장 에스램의 자체 복구 방법 및 장치에 관한 것으로, 보다 자세하게는 내장된 메모리의 자체 테스트를 통한 메모리 고장 유무 확인과 더불어 메모리의 고장난 부분을 여분의 메모리로 재배치하여 사용자로 하여금 고장난 메모리를 정상적인 메모리처럼 사용할 수 있도록 하는 메모리 자체 고장 복구에 관한 것이다.
본 발명의 내장 에스램의 자체 복구 장치는 블록단위로 나눠진 메인 메모리의 임의의 위치에서 발생된 고장 유무를 판단하는 자가 고장 테스트 회로; 상기 자가 고장 테스트 회로에서 발생된 고장의 신호를 받아 상기 메인 메모리의 고장 블록를 저장하고, 여분의 메모리의 임의의 위치에 복구 블록을 배치하고 그 배치된 주소를 저장하는 여분의 메모리 재배치 회로 및 상기 여분의 메모리 재배치 회로의 신호에 따라 상기 여분의 메모리의 복구 블록과 상기 메인 메모리의 고장 블록을 대체하는 자가 고장 복구 회로를 포함하여 구성되는 기술적 특징이 있다.
따라서, 본 발명의 내장 에스램의 자체 복구 방법 및 장치는 메모리 고장 시에 SOC를 정상 동작시켜 메모리의 물리적 구조에 독립적인 회로로 존재하고, 고가의 메모리를 여분의 메모리를 이용하여 재사용함으로써 메모리의 수율을 증가시키는 효과가 있다.
임베디드, 메모리, BIST, BISR, BIRA, 에스램
Description
도 1은 기존의 여분의 메모리를 사용해 고장난 메모리를 재배치하는 방법의 블록구조이다.
도 2는 기존의 BISR 구조이다.
도 3은 블록 재배치의 기본 개념도이다.
도 4는 본 발명에 따른 내장 에스램의 자체 복구 장치를 나타내는 도이다.
도 5는 본 발명에 의한 BIST 및 BISR 통합구조 처리과정이다.
도 6은 본 발명에 의한 BIST의 구성도이다.
도 7은 본 발명에 의한 BIRU 구조도이다.
도 8은 본 발명에 의한 여분의 메모리 할당을 위한 블록정보의 예이다.
도 9는 본 발명에 의한 BISR 구성도이다.
도 10은 본 발명에 의한 비교기와 여분의 행주소 선택기 구조도이다.
도 11은 본 발명에 의한 고장난 블록 선택기 구조도이다.
도 12는 본 발명에 의한 여분의 블록 선택와 읽기/쓰기 블록 선택기 구조도이다.
도 13은 본 발명에 의한 데이터출력 블록 선택기의 구조도이다.
<도면의 주요부분에 대한 부호의 설명>
100: BIST 120: BISR
130: 여분의 메모리 140: 메인 메모리
200: BIST 210: 제어모듈
220: 주소생성모듈 230: 데이터생성모듈
240: 데이터비교모듈
본 발명은 내장 에스램의 자체 복구 방법 및 장치에 관한 것으로, 보다 자세하게는 내장된 메모리의 자체 테스트를 통한 메모리 고장 유무 확인과 더불어 메모리의 고장난 부분을 여분의 메모리로 재배치하여 사용자로 하여금 고장난 메모리를 정상적인 메모리처럼 사용할 수 있도록 하는 메모리 자체 고장 복구에 관한 것이다.
반도체 공정기술이 발달하고 VLSI가 고성능화됨에 따라 점점 더 많은 수의 코어들이 SOC(System On Chip)화 되고 있다. 그 중 내장 메모리는 전체 SOC 트랜지스터 수의 80~90%를 차지하고 있으며 SOC 개발시 내장 메모리의 테스트가 새로운 문제로 대두되고 있다. 이로 인해 여느 때보다 SOC 내에서 메모리 테스트의 중요성이 높아지고, 메모리의 고장의 유무만을 판단하는 것을 떠나 고가의 메모리를 여분의 메모리로 재사용함으로써 메모리 수율을 증가 시킬 수 있는 기술이 필요하다.
SOC 내부에는 SOC 자체를 테스트하기 위한 BIST(Built-In Self Test)회로와 BIST에 의한 검사 결과를 가지고 복구가능 한지 여부를 판단하고 소프트웨어적으로 칩 내부에서의 자체적인 복구를 수행하기 위한 BISR(Built-In Self Repair)회로를 구비하여 고장난 메모리를 다시 사용할 수 있다.
BISR의 구성은 내장 메모리의 고장 유무를 판단하기 위해 가장 널리 사용되는 방법인 BIST기법과 여분의 메모리에 고장난 메인 메모리의 셀을 적절히 배치할 수 있도록 하는 BIRU(Built-In Remapping Unit)회로가 필요하다.
여분의 메모리를 구하는 방법은 하드 리던던시와 소프트 리던던시로 나누어진다. 하드 리던던시는 재배치할 메모리 원소의 정보의 저장을 퓨즈로써 구현하는 것으로 퓨즈에는 레이저 퓨즈, 전기적 퓨즈, EPROM 메모리 등이 있다. 레이저 퓨즈, 전기적 퓨즈, EPROM 등은 여분의 메모리가 메인 메모리의 값들을 저장할 수 있도록 하드웨어적으로 레이저나 전기적으로 절단해 칩으로 만드는 것이다. 이렇게 칩으로 만들어진 여분의 메모리는 하나의 메모리에 대해서 반영구적으로 여분의 메모리를 사용할 수 있지만, 외부의 다른 테스트 장비가 필요하며 다른 메모리에 대한 여분의 메모리 사용이 용이하지 못하다.
반면, 소프트 리던던시는 칩에 전원이 인가되면 여분의 메모리와 고장이 있는 메인 메모리 사이의 재배치 계산을 하기 위해 BIST 및 BIRU 모듈을 실행해야 하 는 번거로움이 존재한다. 그러나 외부의 테스트 장비를 사용하지 않아도 되고, 여분의 메모리를 융통적으로 모든 메인 메모리에 적용 시킬 수 있다는 장점을 가지고 있다.
도 1은 기존의 여분의 메모리를 사용해 고장난 메모리를 재배치하는 구조도이다. 메인 메모리와 여분의 메모리를 열을 기준으로 블록 단위로 나눈 뒤에 메인 메모리의 블록 안의 셀이 고장이 일어났을 경우 고장난 셀이 포함된 블록 전체를 여분의 메모리의 블록으로 교체 하는 방법을 사용한다. 여분의 메모리로 고장난 메모리를 대체 할 때 메인 메모리와 여분의 메모리는 같은 열의 블록으로 재배치한다. 기존의 방법의 단점은 블록으로 나눈 후 같은 열로만 고장난 메모리의 복구가 일어나기 때문에 만약 메인 메모리의 같은 열에 고장이 많이 발생하게 되면 여분의 메모리의 같은 열로 대체되서 같은 행의 다른 열에 복구할 메모리가 있음에도 불구하고 복구할 수 없기 때문에 불필요한 메모리 소비가 발생하여 비용적으로나 시간적으로 많은 단점과 문제점이 있었다.
도 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개의 행으로도 자가 복구가 가능하다. 이렇듯 블록 단위의 복구 방식은 행 단위의 복구 방식보다 더 효율적인 복구율을 가짐을 알 수 있다. 이 방법은 원천적인 메모리 설계 시에는 유용할지 모르나 메모리가 만들어진 후에는 제안한 방법으로는 테스트하기는 어렵다. 즉, 메모리의 입력, 출력 핀만 가지고 테스트하기가 곤란하다.
BISR은 기존의 테스트 장비와 달리, 물리적으로 복구를 수행하지 않고 칩자체에 복구 알고리즘을 탑재하여 복구 가능 여부를 스스로 판별한 후, 복구 가능한 경우 소프트웨어적으로 논리적 복구를 수행한다.
종래기술인 BIST 및 BISR을 구비한 회로들은 대한민국 공개특허 제2002-68768호의 "내장 메모리를 위한 빌트 인 셀프 리페어 회로를 구비하는 반도체 장치"는 여분의 메모리를 구현하는 방법에 있어서 하드 리런던시를 사용함으로써 하나의 메모리에 대해서 반영구적으로 사용할 수 있지만, 외부의 다른 테스트 장비가 필요하며 다른메모리 사용이 용이하지 못하는 문제점이 있고 다수개의 로우 리던던시와 칼럼 리던던시를 사용함으로써 블록 재배치 방법시 불필요한 메모리의 소비가 있었고, 대한민국 공개특허 제2001-76937호 또한, 다수개의 로우 디던던시와 칼럼 리던던시를 사용하여 불필요한 메모리의 소비가 있는 문제점이 있었다.
따라서, 본 발명은 상기와 같은 종래 기술의 제반 단점과 문제점을 해결하기 위한 것으로, 내장된 에스램의 메인 메모리를 블록으로 나눈 뒤 자가 고장 테스트 회로를 이용해 메인 메모리의 고장 유무를 판단하고, 고장이 발생한 셀이 포함한 블록을 여분의 메모리의 임의의 위치에 재배치하여 사용자에게 투명성을 제공하는 내장 에스램의 자체 복구 회로를 제공함에 본 발명의 목적이 있다.
본 발명의 상기 목적은 블록단위로 나눠진 메인 메모리의 임의의 위치에서 발생된 고장 유무를 판단하는 자가 고장 테스트 회로; 상기 자가 고장 테스트 회로에서 발생된 고장의 신호를 받아 상기 메인 메모리의 고장 블록를 저장하고, 여분의 메모리의 임의의 위치에 복구 블록을 배치하고 그 배치된 주소를 저장하는 여분의 메모리 재배치 회로; 및 상기 여분의 메모리 재배치 회로의 신호에 따라 상기 여분의 메모리의 복구 블록과 상기 메인 메모리의 고장 블록을 대체하는 자가 고장 복구 회로를 포함하여 구성되어진 내장 에스램의 자체 복구 장치에 의해 달성된다.
본 발명의 상기 다른 목적은 블록단위로 나눠진 메인 메모리의 임의의 위치에서 발생된 고장 유무를 판단하는 단계; 상기 자가 고장 테스트 회로에서 발생된 고장의 신호를 받아 상기 메인 메모리의 고장 블록를 저장하고, 여분의 메모리의 임의의 위치에 복구 블록을 배치하고 그 배치된 주소를 저장하는 단계; 및 상기 여분의 메모리 재배치 회로의 신호에 따라 상기 여분의 메모리의 복구 블록과 상기 메인 메모리의 고장 블록을 대체하는 단계를 포함하여 이루어진 내장 에스램의 자체 복구 방법에 의해 달성된다.
본 발명의 상기 목적과 기술적 구성 및 그에 따른 작용효과에 관한 자세한 사항은 본 발명의 바람직한 실시예를 도시하고 있는 도면을 참조한 이하 상세한 설명에 의해 보다 명확하게 이해될 것이다.
도 3은 본 발명에 따른 블록 재배치의 기본 개념도이다. 도 3를 참조하면, 메인 메모리의 하나의 임의의 셀 또는 여러 개의 임의의 셀이 고장 나면 그 셀에 포함하는 블록을 전부 임의의 여분의 메모리의 블록으로 재배치하여 도 1과 같이 같은 열로만 고장난 메모리를 복구하여 같은 열에 고장이 많이 발생하게 되어 같은 행의 다른 열에 복구할 메모리가 있음에도 불구하고 복구할 수 없게 되어 메모리 수율이 떨어지게 되는 것을 방지한다. 본 발명에서 BIST와 BIRU, BISR은 5bit 주소와 1워드(32bit)를 갖는 메인 메모리와 2bit 주소와 1워드(32bit)를 갖는 여분의 메모리를 1워드(32bit)에 4개의 블록(8bit)으로 나누어 설명한다.
도 4는 본 발명에 따른 내장 에스램의 자체 복구 장치를 나타내는 도이다. 도 4를 살펴보면, BIST(100) 회로에서 메인 메모리(140)에 테스트 주소(Test Address)가 가리키는 지점에 테스트 데이터(Test Data)를 인가한 후 테스트 데이타와 메인 메모리에서 읽어온 데이터(Reference Data)를 비교해 메인 메모리(140)의 고장 유무를 판단한다.
만약 고장이 나지 않으면 정상적인 동작을 수행하고, 고장이 나면 고장난 셀을 포함하고 있는 블록의 개수를 Faulty Group Count를 통해 BIRU(110)에 전달한 다. BIRU에서 여분의 메모리(130)의 상태를 파악한 후 재배치할 수 있으면, Spare Memory Enable 신호를 통해 액티브 하이 값을 BIST(100)에 전달한다. 이 신호를 받은 BIST(100) 회로는 메인 메모리(140)에 고장난 주소(FA)와 고장난 셀을 포함한(FB)의 정보를 BIRU(110)에 준다.
BIST(100) 동작을 모두 마치게 되면 BIRU(110)는 메인 메모리(140)의 고장에 대한 정보(FA, FB, SA, SB)를 BISR(120)에 넘겨주게 된다.
도 5는 본 발명에 의한 BIST 및 BISR 통합구조 처리과정이다. 도 5을 참조하면 회로에 전원이 들어오면 이러한 일련의 과정이 수행된다. 또는 start 신호에 의해 테스트 모드가 시작된다. 통합구조가 시작이 되면 BIST는 마치 알고리즘을 이용한 테스트 패턴을 생성한다.
먼저 여분의 메모리의 고장 유무를 살펴보고, 고장이 발견된 여분의 메모리는 BIRU를 통해 사용 불가능으로 설정해 준다. 여분의 메모리를 우선적으로 테스트해주는 이유는 메인 메모리의 고장으로 인해 메모리 재배치가 이루어질 때 여분의 메모리가 존재함에도 복구 실패가 일어나는 것을 피하기 위한 것이다.
여분의 메모리 테스트가 끝나면 메인 메모리 테스트가 시작되며 테스트 중에 고장이 검출될 경우 BIRU를 통해 고장난 셀을 포함하는 블록의 정보를 BISR로 전해준다. 전체 메모리 테스트가 종료되면 테스트 모드에서 BISR 모드로 전환되며 일반적인 메모리 동작이 이뤄진다.
도 6은 본 발명에 의한 BIST 구성도이다. 도 6을 살펴보면, BIST(200)는 외부로부터의 제어 신호나 테스트 데이터를 공급받지 않고 칩 자체에서 자발적으로 테스트 수행이 가능 하도록 해 준다.
본 발명에서 사용하는 메모리 BIST(200) 회로는 BIST(200) 회로의 동작을 제어하는 제어모듈(210), 테스트 패턴이 인가 될 메모리의 주소를 생성하는 테스트 주소생성모듈(220), 테스트 패턴을 생성하는 테스트 데이터생성모듈(230), 그리고 테스트 결과를 비교하는 데이터비교모듈(240)로 구성된다. 제어모듈(210)은 테스트 모드시에 필요한 제어 신호를 생성하는 모듈로 설정 파일에서 기술한 알고리즘을 위한 수행 상태 머신과 각각의 메모리에 대하여 정의한 배경 데이터를 위한 상태 머신을 가지고 있다.
수행 상태 머신은 주소생성모듈(220)로부터 EndOfAddress가 생성될 때 까지 하나의 March 단계를 반복한다. 배경데이터 상태 머신은 수행 상태 머신으로부터 EndOfMarch 신호가 생성되면 다음 상태로 이동하며, 현재 테스트가 수행 중인 메모리에 따라 배경데이터 상태 머신에서 EndOfTest라는 신호를 발생시킨다.
제어 모듈(210)은 수행데이터 상태 머신의 각 상태에서 메모리를 위한 제어 신호, 주소생성모듈(220)을 위한 AglEn 신호를 생성하고, 데이터생성모듈(230)은 DglEn 신호를 생성한다. 그리고 데이터비교모듈(240)을 위한 DclEn 신호를 생성한다. 생성된 AglEn, DglEn, DclEn 신호는 각각의 모듈의 동작을 활성화시키는 신호로 주소와 테스트 데이터가 생성된다.
주소생성모듈(220)은 테스트 모드시에 제어모듈(210)로부터 생성되는 AglEn이라는 신호에 의해 테스트 데이터를 적용할 메모리 주소를 생성하는 모듈이다. 메모리 테스트 알고리즘에서 사용되는 주소는 0번지부터 마지막 번지까지 주소가 증 가하는 방향 또는 감소하는 방향으로 변하게 된다.
따라서 주소가 0번지부터 마지막 번지까지 계속 반복되는 카운터를 만들고, 감소하는 방향의 주소가 필요한 경우 카운터 출력의 보수를 사용하였다. 또한 여러 개의 메모리가 사용될 경우 현재 테스트가 진행 중인 메모리의 주소의 크기에 맞도록 마지막 메모리 주소를 조정할 수 있게 하였다.
데이터생성모듈(230)은 제어모듈(210)에서 발생하는 DGLEnable 신호에 의해 테스트 패턴을 생성하는 모듈이다. Data라는 신호가 실제 메모리에 인가된 테스트 데이터로, 이 신호는 DglEn 신호의 값이 0인 경우는 데이터 레지스터 값이 그대로, 1인 경우는 데이터 레지스터 보수 값이 출력된다. 데이터 레지스터 값은 현재 테스트가 수행 중인 메모리를 위한 데이터를 의미하며, 배경데이터를 정의한 메모리인 경우에는 현재의 단계에서 필요한 배경데이터를 의미한다.
데이터비교모듈(240)은 테스트 결과 후 메모리에서 읽혀진 값과 데이터생성모듈(230)에서 생성된 reference 값을 xor 연산한 후, 비교 레지스터 값과 or 연산을 수행한 후, 결과를 저장한다. 비교결과는 클록의 edge에서 DclEn 신호가 활성화되었을 경우에 비교 레지스터에 저장된다.
그리고 클록의 edge에서 ShiftEnable 신호가 활성화되면 비교 레지스터가 쉬프트 연산을 수행함으로써 ShiftOut 포트로 테스트 결과가 IEEE 1149.1 또는 IEEE P1500을 통해 외부로 최종 테스트 결과 값을 출력한다. BISR과의 통합 모듈에서는 비교 후 데이터가 같지 않으면 고장이 발생한 것으로 보고 그때의 메인 메모리의 주소 값과 블록의 값을 BIRU 모듈에 전달한다.
도 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)도 같이 저장을 한다.
만약 고장난 블록의 개수가 더 크면 그 때의 여분의 메모리 주소가 마지막 여분의 메모리 주소인가를 확인하고 마지막 주소가 아니면, 여분의 메모리 주소를 다음 주소로 증가 시킨 후 다시 비교를 한다. 여분의 메모리 주소가 마지막이었다면, 여분의 메모리의 크기보다 메인 메모리에서 고장난 셀의 블록이 수가 더 많아 재배치 할 수 없는 상태를 의미하며 BISR를 실행할 필요가 없게 된다.
도 8은 본 발명에 의한 여분의 메모리 할당을 위한 블록정보의 예이다. 도 8을 살펴보면, 주소 2bit, 1 워드(32bit)를 갖는 여분의 메모리를 4개의 블록으로 나누어 놓은 것이다. 상기도 2에서의 메인 메모리에서 고장난 블록을 여분의 메모리로 재배치되는 것에 대한 여분의 메모리에 각각의 블록 재배치 설정 값들을 표기한 예이다. 위와 같은 예로써 BISR를 설명한다.
도 9는 본 발명에 의한 BISR 블록도이다. 도 9를 살펴보면, 메인 메모리의 제어신호가 RAMEN(RamEnable) = ‘0’, WE(WriteEnable = ‘0’, OE(Output Enable) = ‘1’을 가지면 메인 메모리에 데이터를 쓰고, RAMEN (RamEnable) = '0', WE(WriteEnable) = '1', OE(Output Enable) = '0'의 값들을 가지면 데이터를 메인 메모리로부터 읽는다. 메인 메모리의 셀 고장에 의해 여분의 메모리를 사용하려면 여분의 메모리도 메인 메모리가 읽기나 쓰기 동작 시에 같은 읽기, 쓰기 동작을 해야 한다.
본 발명에서는 /WE의 신호를 가지고 메인 메모리와 여분의 메모리가 동시에 읽기와 쓰기를 할 수 있도록 구분하였다(/OE를 가지고 구분해도 상관없음).
도 10은 본 발명에 의한 비교기와 여분의 행주소 선택기 구조도이다. 도 10을 살펴보면, 메인 메모리에 데이터를 쓸 때, 주소를 선택하고 그 선택한 주소에 데이터를 쓴다. 이 때 선택한 주소에 고장 유무가 있었는지를 회로를 통해 알 수 있다. 비교기 회로는 BIRU로부터 각각의 블록의 FA값들과 메인 메모리에 접근한 주소를 병렬로 비교한다. FA값과 주소의 값을 각각 XOR 한 후 OR 게이트로 묶는다.
만약 주소가 일치하면 ‘0’값을 출력하고, 같지 않으면‘1’을 출력한다. 메인 메모리에 ‘00010’ 주소를 가지고 데이터를 읽거나 쓰기를 하면 비교기 회로에서 ‘1111111111111000’ 값을 출력한다. 이 출력값은 행주소 선택기 회로와 여분의 블록 선택기 회로, 고장난 블록 선택기 회로에 입력값을 가지며, 만약 고장이 없는 메인 메모리의 워드에 접근 할 때에는 BISR의 회로를 동작하지 않고 출력할 수 있도록 MUX의 선택선의 입력 값으로 인가 된다.
행주소 선택기 회로는 BIRU에서의 R행 주소 값을 각각의 블록 단위로 입력 받아 비교기의 출력 값을 행주소 선택기 회로의 삼상 버퍼의 선택 선으로 인가되며 OR 게이트를 거처 ‘00' 값을 출력하게 된다. 이 값은 여분의 메모리에 주소값으로 인가된다.
도 11은 본 발명에 의한 고장난 블록 선택기 구조도이다. 도 11을 살펴보면, BIRU에서의 고장난 블록 값들을 각각의 블록 단위로 삼상 버퍼의 입력으로 넣는다. 이때의 삼상 버퍼의 선택선은 비교기 회로의 출력 값인 ‘1111111111111000’로 결정한다. 선택선에 의해 삼상 버퍼의 출력으로 나올 수 있는 값은 ‘1000’, ‘0010’, ‘0001’이다. 이 값을 OR 게이트로 통과 시킨 후 그 값 ‘1011’를 읽기/쓰기 블록 선택기와 데이터출력 블록 선택기의 입력으로 인가시킨다.
메인 메모리에 입력되는 데이터들을 블록의 개수로 분할해 메인 메모리로 입력되는 데이터 블록 하나가 여분의 메모리로 입력되는 경우의 수만큼 입력하며 읽기/쓰기 블록 선택기의 출력 값에 의해 여분의 메모리 입력 블록을 결정한다.
도 12는 본 발명에 의한 여분의 블록 선택기와 읽기/쓰기 블록 선택기 구조도이다. 도 12를 살펴보면, BIRU에서의 SB값을 각각의 블록 단위로 여분의 블록 선택기 회로의 삼상 버퍼의 입력으로 넣는다. 이때의 삼상 버퍼의 선택선은 비교기 회로의 출력 값인 ‘1111111111111000’로 한다. 선택선에 의해 삼상 버퍼의 출력으로 나올 수 있는 값은 '0100', '0010', '0001'이다.
이 값들을 OR 한 후의 값 ‘0111’을 읽기/쓰기 블록 선택기 회로의 입력 값으로 인가한다. 읽기/쓰기 블록 선택기 회로는 고장난 블록 선택기 회로와 여분의 블록 선택기 회로에서의 OR한 값을 MUX 회로에 입력으로 받는다. 이 MUX의 선택선은 메인 메모리의 제어 신호인 /WE 값으로 메인 메모리의 읽기 동작을 할 때는 ‘1’ 값을 가지며, 쓰기 동작 때는 반대의 값인 ‘0’을 갖는다. MUX의 선택선이 /WE값에 의해 결정되면 각각의 MUX 출력 값이 분배기 회로의 입력으로 들어간다. 분배기 회로를 통해 출력된 값들은 Branch 회로를 통과해 여분의 블록 선택기 회로로 입력된다. 입력된 값들은 삼상 버퍼의 선택선으로 인가되며 메인 메모리에서 고장난 블록을 여분의 메모리에 쓰기 동작을 하게된다.
도 13은 본 발명에 의한 데이터출력 블록 선택기 구조도이다. 도 13을 참조하면, 메인 메모리의 고장난 위치를 읽을 경우에는 여분의 메모리에 쓰기를 했던 블록의 값과 메인 메모리의 값을 치환한다. 여분의 메모리의 워드 값을 블록 단위로 데이터출력 블록 선택기 입력으로 출력한다.
데이터출력 블록 선택기 회로에 입력된 여분의 메모리 워드 값들이 메인 메모리에서 출력된 워드 값과 치환될 위치 블록을 선택하기 위해 읽기/쓰기 블록 선택기의 출력 값과 고장난 블록 선택기 회로 출력 값을 가지고 데이터출력 블록 선택기 회로의 삼상 버퍼와 MUX의 선택선으로 인가된다.
읽기/쓰기 블록 선택기에서 나온 값(‘0000’, ‘0100’, ‘0100’, ‘0010’, ‘0001’)이 각각의 삼상 버퍼의 선택선으로 입력되면 여분의 메모리로부터 출력되는 데이터 값들을 선택선에의해 위치가 구분된다. 고장난 블록을 가지고 있는 메인 메모리로부터 출력되는 데이터 값들은 여분의 메모리로부터 나와 삼상 버퍼와 OR 게이트를 지나온 데이터 값들로 치환되기 위해서는 고장난 블록 선택기에서 나 온 ‘1011’의 값을 선택선으로 가져 MUX를 통과해 치환된 데이터 값은 아무런 고장 없이 메인 메모리의 출력 값으로 나가게 된다. 고장이 없는 주소를 읽었을 경우 비교기에서 ‘1111111111111111‘ 값이 나오고 그 값은 DataOut에 걸려 있는 MUX의 선택선을 가져 BISR의 회로를 거치지 않고 Bypass 된다.
따라서, 본 발명의 내장 에스램의 자체 복구 방법 및 장치는 임의의 메모리 고장시에 SOC를 정상동작시키며, 메모리의 물리적 구조에서 독립적인 회로로 존재하여 고가의 메모리를 여분의 메모리로 재사용함으로써 메모리의 수율을 증가시키는 장점이 있고, 고장난 메모리를 다시 사용하는 효과가 있다.
Claims (14)
- 내장 에스램 기반의 자체 복구 장치에 있어서,블록단위로 나눠진 메인 메모리의 임의의 위치에서 발생된 고장 유무를 판단하는 자가 고장 테스트 회로;상기 자가 고장 테스트 회로에서 발생된 고장의 신호를 받아 상기 메인 메모리의 고장 블록를 저장하고, 여분의 메모리의 임의의 위치에 복구 블록을 배치하고 그 배치된 주소를 저장하는 여분의 메모리 재배치 회로; 및상기 여분의 메모리 재배치 회로의 신호에 따라 상기 여분의 메모리의 복구 블록과 상기 메인 메모리의 고장 블록을 대체하는 자가 고장 복구 회로를 포함하여 구성됨을 특징으로 하는 내장 에스램의 자체 복구 장치.
- 제 1항에 있어서,상기 자가 고장 테스트 회로는 제어모듈, 주소생성모듈, 데이터생성모듈 및 데이터비교모듈을 포함하여 구성됨을 특징으로 하는 내장 에스램의 자체 복구 장치.
- 제 2항에 있어서,상기 제어모듈은 메모리의 고장을 자체 테스트 하기 위해 필요한 알고리즘과 배경 데이터에 대한 상태머신이 존재하며, 상태머신은 알고리즘과 배경 데이터를 분석해 메모리 주소가 적용된 알고리즘을 통해 적절한 배경 데이터를 인가하여 전체적인 테스트가 원활히 동작할 수 있도록 하는 것을 특징으로 하는 내장 에스램 의 자체 복구 장치.
- 제 2항에 있어서,상기 주소생성모듈은 상기 제어모듈로부터 신호를 받아 테스트 데이터 값을 정확한 주소 위치에 읽고, 쓰기를 할 수 있는 것을 특징으로 하는 내장 에스램의 자체 복구 장치.
- 제 2항에 있어서,상기 데이터생성모듈은 제어모듈로부터 신호를 받아 테스트 패턴을 만들어 테스트가 진행 중인 메모리를 위한 데이터나 배경 데이터를 생성해 메모리에 전달하는 것을 특징으로 하는 내장 에스램의 자체 복구 장치.
- 제 2항에 있어서,상기 데이터비교모듈은 테스트 결과후 메모리에서 읽혀진 값과 데이터생성 모듈에서 생성된 데이터 값을 XOR 연산 후, 비교 레지스터 값과 OR 연산을 수행 한 후 자가 고장 복구 회로와 비교 후 고장난 블록의 값을 상기 여분의 메모리 재배치 회로에 보내주는 것을 특징으로 하는 내장 에스램의 자체 복구 장치.
- 제 1항에 있어서,상기 여분의 메모리 재배치 회로는 프로세스와 ARU로 구성됨을 특징으로 하는 내장 에스램의 자체 복구 장치.
- 제 7항에 있어서,상기 프로세스는 여분의 메모리에 첫 번째 주소의 사용 가능한 블록의 개수를 ARU에서 받아 데이터생성모듈에서의 고장난 블록의 개수와 여분의 메모리에 사용할 수 있는 블록의 개수를 비교하는 것을 특징으로 하는 특징으로 하는 내장 에스램의 자체 복구 장치.
- 제 1항에 있어서,상기 자체 고장 복구 회로에서는 비교기와 여분의 블록 선택기, 고장난 블록 선택기, 여분의 블록 선택기와 읽기/쓰기 블록 선택기, 데이터출력 블록 선택기, 메인 메모리 및 여분의 메모리를 포함하여 구성됨을 특징으로 하는 내장 에스램의 자체 복구 장치.
- 내장 에스램 기반의 자체 복구 방법에 있어서,(a) 블록단위로 나눠진 메인 메모리의 임의의 위치에서 발생된 고장 유무를 판단하는 단계;(b) 상기 자가 고장 테스트 회로에서 발생된 고장의 신호를 받아 상기 메인 메모리의 고장 블록을 저장하고, 여분의 메모리의 임의의 위치에 복구 블록을 배치하고 그 배치된 주소를 저장하는 재배치 단계; 및(c) 상기 재배치 단계의 신호에 따라 상기 여분의 메모리의 복구 블록과 상기 메인 메모리의 고장 블록을 대체하는 단계를 포함하여 이루어짐을 특징으로 하는 내장 에스램의 자체 복구 방법.
- 제 10항에 있어서,상기 (b)단계는 상기 자가 고장 테스트 단계에서의 상기 데이터비교모듈에서 보낸 값을 바탕으로 메인 메모리의 고장난 블록을 여분의 메모리에 재배치 하기 위한 프로세스 단계와 ARU 단계를 거쳐 여분의 메모리를 재배치 하는 것을 특징으로 하는 내장 에스램의 자체 복구 방법.
- 제 11항에 있어서,상기 프로세스 단계에서는 여분의 메모리에 첫 번째 주소의 사용 가능한 블록의 개수를 ARU에서 받아 데이터생성모듈에서의 고장난 블록의 갯수와 여분의 메모리에 사용할 수 있는 블록의 갯수를 비교하는 것을 특징으로 하는 특징으로 하는 내장 에스램의 자체 복구 방법.
- 제 11항에 있어서,상기 ARU 단계는 상기 프로세스 단계에서의 여분의 메모리 주소 값이 인가되면 그 주소에 있는 블록이 이전에 사용했는지와 여분의 메모리 블록 자체에 고장이 있는 셀이 존재하는지를 판단 후 최종적으로 사용 할 수 있는 여분의 메모리 주소의 갯수를 프로세스 단계로 보내는 것을 특징으로 하는 내장 에스램의 자체 복구 방법.
- 제 10항에 있어서,상기 (c)단계는 상기 (b)단계에서의 ARU 단계의 설정값을 가지고 고장난 메 인 메모리의 데이터 값을 여분의 메모리로 대신 사용하기 위하여 여분의 메모리도 메인 메모리가 읽거나 쓰기 동작시에 같은 읽기, 쓰기 동작을 하는 것을 특징으로 하는 내장 에스램의 자체 복구 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020050015718A KR100684471B1 (ko) | 2005-02-25 | 2005-02-25 | 내장 에스램의 자체 복구 방법 및 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020050015718A KR100684471B1 (ko) | 2005-02-25 | 2005-02-25 | 내장 에스램의 자체 복구 방법 및 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20060094592A true KR20060094592A (ko) | 2006-08-30 |
KR100684471B1 KR100684471B1 (ko) | 2007-02-22 |
Family
ID=37602345
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020050015718A KR100684471B1 (ko) | 2005-02-25 | 2005-02-25 | 내장 에스램의 자체 복구 방법 및 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100684471B1 (ko) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100959055B1 (ko) * | 2007-02-16 | 2010-05-20 | 한국전자통신연구원 | 프로그램 가능한 자체 테스트가 통합된 내장 메모리 장치및 시스템과 그의 자가 복구 방법 |
CN112908401A (zh) * | 2019-12-04 | 2021-06-04 | 芯测科技股份有限公司 | 内存修复电路、内存模块及内存修复方法 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20200081045A (ko) | 2018-12-27 | 2020-07-07 | 삼성전자주식회사 | 3차원 적층 메모리 장치 및 그 동작 방법 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100354437B1 (ko) * | 2000-01-28 | 2002-09-28 | 삼성전자 주식회사 | 내장 메모리를 위한 자기 복구 회로를 구비하는 집적회로반도체 장치 및 메모리 복구 방법 |
US7178072B2 (en) * | 2001-06-08 | 2007-02-13 | Renesas Technology America, Inc. | Methods and apparatus for storing memory test information |
-
2005
- 2005-02-25 KR KR1020050015718A patent/KR100684471B1/ko not_active IP Right Cessation
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100959055B1 (ko) * | 2007-02-16 | 2010-05-20 | 한국전자통신연구원 | 프로그램 가능한 자체 테스트가 통합된 내장 메모리 장치및 시스템과 그의 자가 복구 방법 |
CN112908401A (zh) * | 2019-12-04 | 2021-06-04 | 芯测科技股份有限公司 | 内存修复电路、内存模块及内存修复方法 |
Also Published As
Publication number | Publication date |
---|---|
KR100684471B1 (ko) | 2007-02-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6667918B2 (en) | Self-repair of embedded memory arrays | |
US6373758B1 (en) | System and method of operating a programmable column fail counter for redundancy allocation | |
KR102117633B1 (ko) | 셀프 리페어 장치 | |
JP3274332B2 (ja) | コントローラ・大容量メモリ混載型半導体集積回路装置およびそのテスト方法およびその使用方法、並びに半導体集積回路装置およびそのテスト方法 | |
US5764577A (en) | Fusleless memory repair system and method of operation | |
US11314590B2 (en) | Memory device for detecting a defective memory chip | |
KR100745403B1 (ko) | 반도체 메모리 장치 및 그 셀프 테스트 방법 | |
US7366946B2 (en) | ROM redundancy in ROM embedded DRAM | |
KR20160148347A (ko) | 셀프 리페어 장치 및 방법 | |
KR102556939B1 (ko) | 오티피 메모리 회로 및 이를 포함하는 반도체 장치 | |
US20060242492A1 (en) | Method and apparatus for masking known fails during memory tests readouts | |
KR101936354B1 (ko) | 메모리 장치 및 이의 테스트 방법 | |
US20020031022A1 (en) | Semiconductor memory having multiple redundant columns with offset segmentation boundaries | |
EP0689695B1 (en) | Fault tolerant memory system | |
KR20040011440A (ko) | 메모리 저장 어레이들의 내장형 자체-복구를 위한 방법 및장치 | |
US20070019483A1 (en) | Redundancy selector circuit for use in non-volatile memory device | |
EP1647031A1 (en) | Memory device and method of storing fail addresses of a memory cell | |
US6634003B1 (en) | Decoding circuit for memories with redundancy | |
US20100313081A1 (en) | Cache memory, processor, and production methods for cache memory and processor | |
KR100684471B1 (ko) | 내장 에스램의 자체 복구 방법 및 장치 | |
WO2008076553A2 (en) | Column redundancy for a flash memory with a high write parallelism | |
US11341011B2 (en) | Repair circuit and memory device including the same | |
US7352638B2 (en) | Method and apparatus for testing a memory device | |
EP1750282A1 (en) | A shared redundant memory architecture and memory system incorporating the same | |
JPH1116390A (ja) | 半導体メモリ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
N231 | Notification of change of applicant | ||
E902 | Notification of reason for refusal | ||
N231 | Notification of change of applicant | ||
E90F | Notification of reason for final refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20111209 Year of fee payment: 6 |
|
LAPS | Lapse due to unpaid annual fee |