[SRAM-PIM Core Circuit] Inverter/NAND/NOR Power & Delay Measurement

"Inverter/NAND/NOR Power & Delay Measurement"

Process

CIW → Library Manager → File → New → Library → Library 이름 입력 ("practice_tsmc") → 선택


Cell 생성

Schematic - Inverter


Schematic - NAND


Schematic - NOR


Schematic - 3 in 1


SP File

0 → 1로 변화하는데 소모되는 시간과 소모 전력 측정
∵ nMOS : 출력 0 / pMOS : 출력 1 → 전자의 이동도 > 정공의 이동도 ∴ 0 → 1 측정
    (0 → 0 / 1 → 1 : 값이 변하지 않아 전압의 중간 지점 통과 X → 측정 불가)

2 : "input.ckt" 파일의 전체 내용을 불러옴
3 : 공정 모델 코너 "toplevel.l"에서 "top_tt" 부분만 불러옴
5~6 : [전압원 이름] [(+) 노드] [(-) 노드] [전압 크기]
8~10 : 상수 값 설정
12~16 : 초기화
18 ~ 20 : [전압원 이름] [(+) 노드] [(-) 노드] [전압 크기]
22, 23, 25 : IN?b 신호를 pwl 방식으로 생성하고 0~500ps=0V, 501ps=1V로 급격히 상승
24 : IN3b 신호를 pwl 방식으로 생성하고 0V로 유지
26 : IN5b 신호를 pwl 방식으로 생성하고 1V로 유지
28~30 : 0ns~1.5ns 구간 관찰
31~33 : Energy = (전압) x (전류) x (시간) = (전압) x (전류의 적분값) **50% 지점
35~37 : 입력이 50% 지점을 통과한 시간
38~40 : 출력이 50% 지점을 통과한 시간
41~43 : Delay = (출력 시간) - (입력 시간)
45 : 1ps 간격으로 1.5ns까지 Simulation 진행
46 : 출력 데이터 형식 지정
47 : 그래프를 확인하기 위한 파일 생성
48 : 측정값 정밀도(= 유효 숫자 자리수)
49 : 계산 오차 허용 범위를 좁혀 정밀도 강화

3번째 줄을 주석 처리한 이유 : "input.ckt"파일에 동일한 코드가 있어서 중복으로 오류 발생

Waveform

Inverter

NAND

NOR

Result

3030~3032 : 음수 = 전류의 방향
3033 : Inverter 소모 에너지 = 1.80x10^(-16)J
3033 : NAND 소모 에너지 = 2.07x10^(-16)J
3033 : NOR 소모 에너지 = 3.88x10^(-16)J
3042 : Inverter Delay = 2.27ps
3043 : NAND Delay = 2.87ps
3044 : NOR Delay = 5.41ps(∵ 이동도가 낮은 pMOS가 직렬로 연결)

댓글

이 블로그의 인기 게시물

[Mini-NPU RTL] NN Reference Model

[Mini-NPU RTL] TPU (Study Paper)