KR102703568B1 - 파이선을 활용한 메모리 셀 검증 자동화 방법 및 시스템 - Google Patents
파이선을 활용한 메모리 셀 검증 자동화 방법 및 시스템 Download PDFInfo
- Publication number
- KR102703568B1 KR102703568B1 KR1020230162779A KR20230162779A KR102703568B1 KR 102703568 B1 KR102703568 B1 KR 102703568B1 KR 1020230162779 A KR1020230162779 A KR 1020230162779A KR 20230162779 A KR20230162779 A KR 20230162779A KR 102703568 B1 KR102703568 B1 KR 102703568B1
- Authority
- KR
- South Korea
- Prior art keywords
- memory
- spice
- memory cell
- cell verification
- cells according
- Prior art date
Links
- 238000012795 verification Methods 0.000 title claims abstract description 72
- 238000000034 method Methods 0.000 title claims abstract description 36
- 238000004088 simulation Methods 0.000 claims abstract description 40
- 238000004458 analytical method Methods 0.000 claims abstract description 22
- 238000012360 testing method Methods 0.000 claims abstract description 15
- 238000013461 design Methods 0.000 claims description 11
- 208000025174 PANDAS Diseases 0.000 claims description 6
- 208000021155 Paediatric autoimmune neuropsychiatric disorders associated with streptococcal infection Diseases 0.000 claims description 6
- 240000004718 Panda Species 0.000 claims description 6
- 235000016496 Panda oleosa Nutrition 0.000 claims description 6
- 238000003491 array Methods 0.000 claims description 5
- 239000000284 extract Substances 0.000 claims description 2
- 230000008569 process Effects 0.000 description 14
- 238000012545 processing Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000004904 shortening Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 238000012938 design process Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/33—Design verification, e.g. functional simulation or model checking
- G06F30/3308—Design verification, e.g. functional simulation or model checking using simulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/31—Design entry, e.g. editors specifically adapted for circuit design
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/323—Translation or migration, e.g. logic to logic, hardware description language [HDL] translation or netlist translation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/327—Logic synthesis; Behaviour synthesis, e.g. mapping logic, HDL to netlist, high-level language to RTL or netlist
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/33—Design verification, e.g. functional simulation or model checking
- G06F30/3315—Design verification, e.g. functional simulation or model checking using static timing analysis [STA]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2119/00—Details relating to the type or aim of the analysis or the optimisation
- G06F2119/02—Reliability analysis or reliability optimisation; Failure analysis, e.g. worst case scenario performance, failure mode and effects analysis [FMEA]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Tests Of Electronic Circuits (AREA)
Abstract
Description
도 2는 본 발명의 일 실시예에 따른 파이선을 활용한 메모리 셀 검증 자동화 시스템의 구성을 나타내는 도면이다.
도 3은 본 발명의 일 실시예에 따른 3T_DRAM을 나타내는 회로도 이다.
도 4는 본 발명의 일 실시예에 따른 프로그램 동작 과정을 설명하기 위한 예시도이다.
도 5는 본 발명의 일 실시예에 따른 메모리 셀 검증 결과를 나타내는 예시도이다.
Claims (8)
- 메모리 셀 검증 자동화 프로그램을 실행하여, 입력부를 통해 메모리 셀 검증을 위한 메모리의 형태, 어레이 개수, 주기, 테스트 종류를 포함하는 입력 정보를 선택하는 단계;
SPICE 실행부를 통해 SPICE(Simulation Program with Integrated Circuit Emphasis)를 실행하여 메모리 셀 검증 자동화를 위해 입력 받은 상기 메모리의 형태에 따른 메모리 넷리스트(Memory Netlist)를 추출하고, SPICE 시뮬레이션을 실행하는 단계; 및
분석부를 통해 상기 SPICE 시뮬레이션 결과에 따라 특정 타이밍에 상기 메모리의 형태에 따른 셀들에 데이터가 저장되었는지 확인하는 배열과 페일 카운트(fail count)를 출력하는 단계
를 포함하고,
상기 SPICE 실행부를 통해 SPICE를 실행하여 메모리 셀 검증 자동화를 위해 입력 받은 상기 메모리의 형태에 따른 메모리 넷리스트를 추출하고, SPICE 시뮬레이션을 실행하는 단계는,
상기 메모리의 형태에 따른 셀들의 읽기/쓰기 동작을 위한 입력 신호를 생성하고, 출력 파형의 특정 타이밍에서 상기 메모리의 형태에 따른 셀들에 저장된 데이터를 각각 추출하기 위한 문법을 추가하고,
상기 분석부를 통해 상기 SPICE 시뮬레이션 결과에 따라 특정 타이밍에 상기 메모리의 형태에 따른 셀들에 데이터가 저장되었는지 확인하는 배열과 페일 카운트를 출력하는 단계는,
상기 SPICE 시뮬레이션이 종료되면, 생성되는 CSV(Comma-Separated Values) 파일에 기초하여, 상기 메모리의 형태에 따른 셀들의 읽기 동작을 검증하기 위한 배열의 형태로 상기 SPICE 시뮬레이션 결과를 출력하고,
상기 메모리의 형태에 따른 셀들에 저장된 데이터를 각각 추출하기 위한 문법을 사용하여 읽기 동작을 검증하고, 읽기 타이밍에 비트라인이 정상적으로 동작하는지 검증하기 위해 .MEASURE 문법을 사용하고, 검증 결과에 따라 생성되는 파일인 .mt0 파일을 파이선(Python)을 사용하여 분석하기 위한 CSV 파일로 변환하고, 상기 변환된 CSV 파일을 이용하여 파이선의 판다(Pandas) 모듈을 통해 데이터를 분석하며,
메모리의 형태에 따른 셀들의 읽기 동작을 검증하기 위한 배열의 형태는 셀들에 저장된 데이터에 대한 읽기 동작이 정상적으로 동작하는지 검증하기 위한 것으로서, 페일인 경우 읽기 동작이 가능하도록 하기 위한 충분한 데이터가 셀에 존재하지 않는다는 의미를 나타내고, 페일 카운트에 기초하여 센스 앰플리파이어(Sence amplifier) 설계 방식 또는 리키지(Leakage) 보상과 관련된 아이디어 제시 단계로 이동함으로써, 메모리 셀 검증 자동화를 통해 메모리 회로 설계에서부터 시뮬레이션까지의 시간을 단축시키는
메모리 셀 검증 자동화 방법. - 삭제
- 삭제
- 삭제
- 메모리 셀 검증 자동화 프로그램을 실행하여, 메모리 셀 검증을 위한 메모리의 형태, 어레이 개수, 주기, 테스트 종류를 포함하는 입력 정보를 선택하는 입력부;
SPICE(Simulation Program with Integrated Circuit Emphasis)를 실행하여 메모리 셀 검증 자동화를 위해 입력 받은 상기 메모리의 형태에 따른 메모리 넷리스트(Memory Netlist)를 추출하고, SPICE 시뮬레이션을 실행하는 SPICE 실행부; 및
상기 SPICE 시뮬레이션 결과에 따라 특정 타이밍에 상기 메모리의 형태에 따른 셀들에 데이터가 저장되었는지 확인하는 배열과 페일 카운트(fail count)를 출력하는 분석부
를 포함하고,
상기 SPICE 실행부는,
상기 메모리의 형태에 따른 셀들의 읽기/쓰기 동작을 위한 입력 신호를 생성하고, 출력 파형의 특정 타이밍에서 상기 메모리의 형태에 따른 셀들에 저장된 데이터를 각각 추출하기 위한 문법을 추가하고,
상기 분석부는,
상기 SPICE 시뮬레이션이 종료되면, 생성되는 CSV(Comma-Separated Values) 파일에 기초하여, 상기 메모리의 형태에 따른 셀들의 읽기 동작을 검증하기 위한 배열의 형태로 상기 SPICE 시뮬레이션 결과를 출력하고,
상기 메모리의 형태에 따른 셀들에 저장된 데이터를 각각 추출하기 위한 문법을 사용하여 읽기 동작을 검증하고, 읽기 타이밍에 비트라인이 정상적으로 동작하는지 검증하기 위해 .MEASURE 문법을 사용하고, 검증 결과에 따라 생성되는 파일인 .mt0 파일을 파이선(Python)을 사용하여 분석하기 위한 CSV 파일로 변환하고, 상기 변환된 CSV 파일을 이용하여 파이선의 판다(Pandas) 모듈을 통해 데이터를 분석하며,
메모리의 형태에 따른 셀들의 읽기 동작을 검증하기 위한 배열의 형태는 셀들에 저장된 데이터에 대한 읽기 동작이 정상적으로 동작하는지 검증하기 위한 것으로서, 페일인 경우 읽기 동작이 가능하도록 하기 위한 충분한 데이터가 셀에 존재하지 않는다는 의미를 나타내고, 페일 카운트에 기초하여 센스 앰플리파이어(Sence amplifier) 설계 방식 또는 리키지(Leakage) 보상과 관련된 아이디어 제시 단계로 이동함으로써, 메모리 셀 검증 자동화를 통해 메모리 회로 설계에서부터 시뮬레이션까지의 시간을 단축시키는
메모리 셀 검증 자동화 시스템. - 삭제
- 삭제
- 삭제
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020230162779A KR102703568B1 (ko) | 2023-11-21 | 2023-11-21 | 파이선을 활용한 메모리 셀 검증 자동화 방법 및 시스템 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020230162779A KR102703568B1 (ko) | 2023-11-21 | 2023-11-21 | 파이선을 활용한 메모리 셀 검증 자동화 방법 및 시스템 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR102703568B1 true KR102703568B1 (ko) | 2024-09-05 |
Family
ID=92760667
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020230162779A KR102703568B1 (ko) | 2023-11-21 | 2023-11-21 | 파이선을 활용한 메모리 셀 검증 자동화 방법 및 시스템 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102703568B1 (ko) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20210103383A (ko) * | 2020-02-13 | 2021-08-23 | 인텔 코포레이션 | 멀티 레벨 셀 메모리의 데이터 프로그래밍을 검증하는 디바이스, 시스템 및 방법 |
KR102545302B1 (ko) * | 2022-10-07 | 2023-06-20 | 인하대학교 산학협력단 | Cmos 기반 디지털 회로의 설계 및 검증 과정 자동화 프레임워크 |
KR102558036B1 (ko) * | 2022-11-25 | 2023-07-20 | 인하대학교 산학협력단 | Python을 활용한 RTL 설계 검증 자동화 방법 및 시스템 |
KR102592752B1 (ko) * | 2022-11-30 | 2023-10-23 | 인하대학교 산학협력단 | 풀-커스텀 cmos 회로 측정 및 성능 최적화 자동화 방법 및 시스템 |
-
2023
- 2023-11-21 KR KR1020230162779A patent/KR102703568B1/ko active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20210103383A (ko) * | 2020-02-13 | 2021-08-23 | 인텔 코포레이션 | 멀티 레벨 셀 메모리의 데이터 프로그래밍을 검증하는 디바이스, 시스템 및 방법 |
KR102545302B1 (ko) * | 2022-10-07 | 2023-06-20 | 인하대학교 산학협력단 | Cmos 기반 디지털 회로의 설계 및 검증 과정 자동화 프레임워크 |
KR102558036B1 (ko) * | 2022-11-25 | 2023-07-20 | 인하대학교 산학협력단 | Python을 활용한 RTL 설계 검증 자동화 방법 및 시스템 |
KR102592752B1 (ko) * | 2022-11-30 | 2023-10-23 | 인하대학교 산학협력단 | 풀-커스텀 cmos 회로 측정 및 성능 최적화 자동화 방법 및 시스템 |
Non-Patent Citations (1)
Title |
---|
[1] D. Batas and H. Fiedler, "A Python interface for SPICE-based simulations," ICSES 2010 International Conference on Signals and Electronic Circuits, Gliwice, Poland, 2010, pp. 161-164. |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4989629B2 (ja) | 複製ロジック及びトリガロジックを用いたデバッグのための方法及びシステム | |
US10007492B2 (en) | System and method for automatically generating device drivers for run time environments | |
US6327556B1 (en) | AT-speed computer model testing methods | |
US9141501B2 (en) | Firmware generated register file for use in hardware validation | |
CN116302721A (zh) | 芯片设计验证系统与方法及计算机可读取记录介质 | |
US6574759B1 (en) | Method for verifying and improving run-time of a memory test | |
US12039240B2 (en) | Integrated circuit simulation and design method and system thereof | |
US20140100841A1 (en) | Testing a Hardware Emulation Model of a Circuit with Software Checker Routines Designed for an RTL Model of the Circuit | |
US7546560B2 (en) | Optimization of flip flop initialization structures with respect to design size and design closure effort from RTL to netlist | |
US20130024178A1 (en) | Playback methodology for verification components | |
CN113868046A (zh) | 一种pad控制单元的功能验证方法、系统及相关组件 | |
KR102703568B1 (ko) | 파이선을 활용한 메모리 셀 검증 자동화 방법 및 시스템 | |
KR102592752B1 (ko) | 풀-커스텀 cmos 회로 측정 및 성능 최적화 자동화 방법 및 시스템 | |
CN113204939A (zh) | 一种全芯片仿真验证方法 | |
US9672094B1 (en) | Interconnect circuitry fault detection | |
KR102558036B1 (ko) | Python을 활용한 RTL 설계 검증 자동화 방법 및 시스템 | |
CN115563930A (zh) | 基于存储模型的自动验证方法、装置、终端及存储介质 | |
US10007489B1 (en) | Automated method identifying physical memories within a core or macro integrated circuit design | |
US10643012B1 (en) | Concurrent formal verification of logic synthesis | |
US10319459B1 (en) | Customizable built-in self-test testplans for memory units | |
US7505887B1 (en) | Building a simulation of design block using a bus functional model and an HDL testbench | |
US8042075B2 (en) | Method, system and application for sequential cofactor-based analysis of netlists | |
US20060031789A1 (en) | Built-in self-test emulator | |
KR20200126888A (ko) | 시뮬레이터를 구현하는 방법, 장치, 기기 및 매체 | |
CN116861829B (zh) | 用于定位逻辑系统设计中错误的方法、电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20231121 |
|
PA0201 | Request for examination |
Patent event code: PA02011R01I Patent event date: 20231121 Comment text: Patent Application |
|
PA0302 | Request for accelerated examination |
Patent event date: 20240111 Patent event code: PA03022R01D Comment text: Request for Accelerated Examination |
|
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20240221 Patent event code: PE09021S01D |
|
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: 20240829 |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20240902 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20240903 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration |