이중포트메모리의실제적인고장을고려한 Programmable Memory BIST 2010. 06. 29. 연세대학교전기전자공학과박영규, 박재석, 한태우, 강성호 hipyk@soc.yonsei.ac.kr
Contents Introduction Proposed Programmable Memory BIST(PMBIST) Algorithm Instruction PMBIST Architecture PMBIST Implementation Performance Comparison Conclusion 2
Introduction Introduction 최근대용량내장메모리탑재증가 반도체기술의발달 SoC(System on Chip) 내부에내장메모리가 90% 이상을차지함 차세대기술의초기수율저조 메모리불량에기인한전체기기의비정상적동작초래 내장된자체메모리테스트 (Built-In Self-Test) 생산성극대화와수율향상 적시제품출하를통한시장선점효과를뒷받침 시스템반도체산업에미치는리스크를최소화 3
Introduction Introduction Memory BIST 고정된 test pattern 과 test sequence 를이용 Fault coverage 가제한적임 Flexibility 가좋지않음 사용하는 test algorithm 이제한적임 Programming capability 가낮음 Programmable Memory BIST Test pattern 과 test sequence 변경가능 Flexibility가좋음 Fault coverage 가높음 다양한 test algorithm을지원 Programming capability가높음 Area overhead 가크다는단점 4
PMBIST Programmable Memory BIST 이중포트메모리를위한 Programmable Memory BIST(PMBIST) Micro code 방식의 PMBIST 다양한테스트알고리즘지원 March 테스트알고리즘 이중포트메모리테스트알고리즘 User defined 테스트알고리즘 다수의테스트알고리즘을내장하여높은고장검출률확보 하드웨어오버헤드최소화 최소의 instruction 으로알고리즘구현 효과적으로주소를생성하는주소생성기 5
PMBIST Algorithm Instruction ti Algorithm Instruction 모든 test algorithm을최소의 bits으로구현하기위한최적의구조 (9bits) 각 March 요소당하나의 instruction으로구현 ex) March C- (10N) : 10개의 instruction으로구현 PMBIST Algorithm Instruction Set Instruction Set Inst[8:7] Inst[6] Inst[5] Inst[4] Inst[3] Inst[2] Inst[1:0] Function Opcode Hold/ A port A Port B port B Port Address Increment/ Background Memory Background Memory Up/Down Branch True/Inv Operation True/Inv Operation Control 00 Hold 0 Up 0 True 0 Read 0 True 0 Read 00 NOP 01 Increment 1 Down 1 Inversion 1 Write 1 Inversion 1 Write 01 row+1 10 Branch 10 column+1 11 Terminate 6
PMBIST Algorithm Instruction Algorithm Instruction 구조 Hold/Increment(Inst[8:7]) : 알고리즘을구현하기위한알고리즘명령어의동작상태를지정 Hold 는현재의알고리즘명령어를계속실행 Increment는다음알고리즘명령어를실행 Branch는지정된알고리즘명령어로점프 Address Up/Down(Inst[6]) : 알고리즘 sequence 의주소증가 / 감소방향지정 A port Background True/Inv.(Inst[5]) : A port의 background data를반전유무를결정 A port Memory operation(inst[4]) : 테스트알고리즘에서 Aport 와관련된 sequence의읽기 / 쓰기동작명령을지정 B port Background True/Inv.(Inst[3]) : B port의 background data를반전유무를결정 B port Memory operation(inst[2]) : 테스트알고리즘에서 B port와관련된 sequence의읽기 / 쓰기동작명령을지정 Control(Inst[1:0]) : 알고리즘명령어의옵션을지정 ex) Inst[1:0]=01 : 주소생성기옵션 row+1 의주소를생성 7
PMBIST PMBIST Architecture t PMBIST Architecture 8
PMBIST PMBIST Architecture PMBIST 구조의구성요소 명령어메모리 : 제안한 algorithm instruction 형태로구현된테스트알고리즘의 instruction 을저장 PMBIST 컨트롤러 : PMBIST를제어 명령어카운터 : 명령어메모리를제어하여실행할 instruction을선택 디코더 : instruction 을 decode 주소생성기 : 메모리에인가되는주소를생성 데이터생성기 : 메모리에인가되는데이터패턴을생성 제어신호생성기 : 메모리에인가되는제어신호를생성 비교기 : 메모리로부터읽은값과기대값을비교하여고장의유무를판별 9
PMBIST Implementation Implementation PMBIST 구조시뮬레이션검증 March C-, March A, March s2pf 알고리즘을내장 Instruction size = algorithm instruction(9bits) * 41 line 대상메모리 size : data size(8bits), address size(10bits) March C- Algorithm 시뮬레이션결과 10
PMBIST Implementation Implementation PMBIST 구조합성검증 1 개알고리즘 : March C+(14N) 3 개알고리즘 : March C-, March A, March s2pf 공정라이브러리 : TSMC 0.13μm 메모리사이즈 : 16K*16 합성결과 명령어비트하드웨어오버헤드최대동작속도 1 개알고리즘 126 bits 5,237 gates 3 개알고리즘 369 bits 9,835 gates 400MHz 2-input NAND gate 기준 11
Performance Comparison Performance Comparison PMBIST 구조합성검증 March C+ 알고리즘을기준으로비교 메모리사이즈 : 16K*16 성능비교 ITC 2003 ITC 2005 ATS 2006 PMBIST 단일포트메모리테스트 Y Y Y Y 이중포트메모리테스트 N N N Y 단일포트메모리를위한 March 알고리즘 Y Y Y Y 이중포트메모리를위한 March 알고리즘 N N N Y 이중포트메모리테스트알고리즘 N N N Y 명령어사이즈 (bits) 4 9 8 9 March C+ 를위한명령어 bit (bits) 160 144 216 126 하드웨어오버헤드 (gates) 7.9K 8.9K 12.4K 5.2K 12
Conclusion Conclusion 이중포트메모리의신뢰성확보 March 및이중포트메모리테스트알고리즘을지원 높은 flexibility 높은고장검출률 March 기반의 user-defined 알고리즘지원 다양한테스트알고리즘지원이가능하여다양한고장에효과적대응가능 최적의 algorithm instruction 을사용하여최소의 bits 으로알고리즘을구현 최소의하드웨어오버헤드 13
감사합니다 E-mail : hipyk@soc.yonsei.ac.kr