v0.27.0 안내 · 설계 블록 실습
XNOR2 · 직접 만든 CMOS 기본 셀
A=B에서 Y=1인지 네 조합을 확인합니다. 단순 inversion 표기와 실제 MOS graph를 대조합니다.
학습 체크는 이 브라우저에만 저장합니다. 엔진의 PASS·실행·제조 판정과 관계없습니다.
시작 전에
- 실제 로컬 ngspice·공개 SKY130 모델
- 물리 core 생성/검증 시 Magic·Netgen 등 실제 추가 도구
따라 하기
설계 도구 → 통합 설계 → 회로 · 연결 탐색에서 카탈로그를 읽고 기본 CMOS 셀의 XNOR2 · 직접 만든 CMOS 기본 셀 (cell_xnor2)를 선택합니다. 새 프로젝트를 생성하거나 아래 예제 ZIP을 가져옵니다.
회로도에서 root ports와 하위 셀을 엽니다. 아래 기본값·외부 testbench 조건과 실제 연결을 확인합니다.
XOR의 보수 출력 연결을 확인합니다.
지원 해석을 선택하고 Simulate를 실행합니다. 결과의 축·단위·실제 run·revision을 읽습니다.
A=B에서 Y=1인지 네 조합을 확인합니다. 단순 inversion 표기와 실제 MOS graph를 대조합니다.
한 파라미터만 바꿔 새 해석과 비교합니다. 편집 프로젝트·조건·파형·로그를 같은 revision으로 저장합니다.
포트·기본값·필요한 블록
회로 ID: cell_xnor2 · 지원 해석: tran
| 포트 | 연결 기준 |
|---|---|
| A | 원본 subckt/graph의 핀 순서·역할 확인 |
| B | 원본 subckt/graph의 핀 순서·역할 확인 |
| Y | 원본 subckt/graph의 핀 순서·역할 확인 |
| VPWR | 원본 subckt/graph의 핀 순서·역할 확인 |
| VGND | 원본 subckt/graph의 핀 순서·역할 확인 |
| 기본 파라미터 (단위는 이름에 포함) | 카탈로그 값 |
|---|---|
| drive_scale | 1 |
| input_slew_ns | 0.1 |
직접 의존 셀
- XOR2
- INV
실제 회로의 모든 하위 셀
| 셀 이름 | 포트 | 직접 소자 수 | 내부 block 참조 |
|---|---|---|---|
| INV | A, Y, VPWR, VGND | 2 | |
| NAND2 | A0, A1, Y, VPWR, VGND | 4 | |
| XOR2 | A, B, Y, VPWR, VGND | 4 | NAND2 |
| AND2 | A, B, Y, VPWR, VGND | 2 | NAND2, INV |
| MUX2 | A, B, S, Y, VPWR, VGND | 5 | INV |
| FA | A, B, CIN, SUM, COUT, VPWR, VGND | 9 | NAND2 |
| ADD1 | A0, B0, CIN, S0, COUT, VPWR, VGND | 1 | FA |
| DFF | D, CLK, Q, VPWR, VGND | 13 | INV |
| NOR2 | A, B, Y, VPWR, VGND | 4 | |
| OR2 | A, B, Y, VPWR, VGND | 2 | NOR2, INV |
| XNOR2 | A, B, Y, VPWR, VGND | 2 | XOR2, INV |
실제 실행 기록 · source와 조건별로
이 표는 사용자의 엔진 상태를 대신하지 않습니다. default·변경 실험·예전 물리 세대를 함께 보존하며 fail/unknown을 pass로 바꾸지 않습니다. 새 실습의 최신 결과는 앱에서 확인하세요.
cell_xnor2/default · source 9eb7adb9a008 · 실제 과거 실행
원본 기록 JSON · 프로젝트 85276f509ee24787b419b79e7d72a43d
실행 파라미터
| 이름 | 값 |
|---|---|
| drive_scale | 1 |
| input_slew_ns | 0.1 |
| 단계 | 실행 상태 | 기준 판정 | run ID |
|---|---|---|---|
| pre | completed | pass | 86dfccc42e724c2bae9ef7244834a81a |
| drc | completed | pass | 21a57e41a4014b089afa19dae44cf628 |
| lvs | completed | pass | dd4243ef58a0425a813bcdd26e46e966 |
| pex | completed | pass | 4b750ac684b640479be495753728f0b5 |
| post | completed | pass | 348f0de20cc64c08a9edafca6654a8cc |
pre · 원본 결과 설명
Actual ngspice tran: 100122 samples.; reference criteria 5/5
결과 revision: 1 · 사용자 현재 프로젝트의 결과가 아닙니다.
| 측정 이름·단위 원문 | 값 |
|---|---|
| analysis | tran |
| x_unit | s |
| x_label | time |
| corner | tt |
| temperature_C | 27 |
| supply_V | 1.8 |
| post_layout | false |
| samples | 100122 |
| solver | KLU |
| A_min | 0 |
| A_max | 1.8 |
| B_min | 0 |
| B_max | 1.8 |
| Y_min | -0.07279872179330076 |
| Y_max | 1.8841472388529903 |
| supply_current_min | -0.00006696441527110315 |
| supply_current_max | 0.00018007357255507296 |
| current_flow_status | available |
| template_id | cell_xnor2 |
| layout_status | generated-public-core |
| metric_source | actual-ngspice-samples |
| truth_cases | 4 |
| truth_passed | 4 |
| 원본 기준 | 판정 | 관측 |
|---|---|---|
| input [0, 0] → 1 | pass | [1.7999999893618934,1.7999999893618972] |
| input [1, 0] → 0 | pass | [3.38213488937116e-9,6.963148108365066e-9] |
| input [0, 1] → 0 | pass | [-7.462957420749871e-10,6.824708890737793e-9] |
| input [1, 1] → 1 | pass | [1.7999999362866685,1.8000000031119998] |
| Every sensitized timing arc observed and settles | pass | 8 |
drc · 원본 결과 설명
Magic drc(full): 0 native violation rectangles. Selected deck; no signoff.
결과 revision: 1 · 사용자 현재 프로젝트의 결과가 아닙니다.
lvs · 원본 결과 설명
Actual Netgen comparison: circuits match uniquely.
결과 revision: 1 · 사용자 현재 프로젝트의 결과가 아닙니다.
pex · 원본 결과 설명
Actual Magic RC extraction: 1353 resistors, 199 capacitors. Zero counts reflect native thresholds, not inserted elements.
결과 revision: 1 · 사용자 현재 프로젝트의 결과가 아닙니다.
post · 원본 결과 설명
Actual ngspice tran: 100122 samples.; reference criteria 5/5
결과 revision: 1 · 사용자 현재 프로젝트의 결과가 아닙니다.
| 측정 이름·단위 원문 | 값 |
|---|---|
| analysis | tran |
| x_unit | s |
| x_label | time |
| corner | tt |
| temperature_C | 27 |
| supply_V | 1.8 |
| post_layout | true |
| samples | 100122 |
| solver | KLU |
| A_min | 0 |
| A_max | 1.8 |
| B_min | 0 |
| B_max | 1.8 |
| Y_min | -0.1117194209998339 |
| Y_max | 1.9212939601705443 |
| supply_current_min | -0.00008720736618111129 |
| supply_current_max | 0.00027700319644255206 |
| current_flow_status | available_partial |
| template_id | cell_xnor2 |
| layout_status | generated-public-core |
| metric_source | actual-ngspice-samples |
| truth_cases | 4 |
| truth_passed | 4 |
| 원본 기준 | 판정 | 관측 |
|---|---|---|
| input [0, 0] → 1 | pass | [1.7999999880512694,1.7999999880512763] |
| input [1, 0] → 0 | pass | [3.407663688695395e-9,3.426389917941548e-9] |
| input [0, 1] → 0 | pass | [7.206325925598695e-8,1.3453465189687815e-7] |
| input [1, 1] → 1 | pass | [1.8000001885001473,1.80000038642485] |
| Every sensitized timing arc observed and settles | pass | 8 |
cell_xnor2/ss · source 9eb7adb9a008 · 실제 과거 실행
원본 기록 JSON · 프로젝트 d8757c7ce82d4d44b3324542151103f0
실행 파라미터
| 이름 | 값 |
|---|---|
| drive_scale | 1 |
| input_slew_ns | 1 |
| 단계 | 실행 상태 | 기준 판정 | run ID |
|---|---|---|---|
| pre | completed | pass | 389a36baf18b4c0aa18c241ad006cc8f |
pre · 원본 결과 설명
Actual ngspice tran: 10122 samples.; reference criteria 5/5
결과 revision: 1 · 사용자 현재 프로젝트의 결과가 아닙니다.
| 측정 이름·단위 원문 | 값 |
|---|---|
| analysis | tran |
| x_unit | s |
| x_label | time |
| corner | ss |
| temperature_C | 125 |
| supply_V | 1.6 |
| post_layout | false |
| samples | 10122 |
| solver | SPARSE 1.3 |
| A_min | 0 |
| A_max | 1.6 |
| B_min | 0 |
| B_max | 1.6 |
| Y_min | -0.010109512170147208 |
| Y_max | 1.6103611721913575 |
| supply_current_min | -0.000006845566018889859 |
| supply_current_max | 0.00005645429682400033 |
| current_flow_status | available |
| template_id | cell_xnor2 |
| layout_status | not-generated |
| metric_source | actual-ngspice-samples |
| truth_cases | 4 |
| truth_passed | 4 |
| 원본 기준 | 판정 | 관측 |
|---|---|---|
| input [0, 0] → 1 | pass | [1.5999999682940678,1.599999968294069] |
| input [1, 0] → 0 | pass | [-3.779640047121835e-9,1.849487337064748e-8] |
| input [0, 1] → 0 | pass | [6.002298385751614e-9,6.173397480713216e-9] |
| input [1, 1] → 1 | pass | [1.599999967635541,1.59999996801325] |
| Every sensitized timing arc observed and settles | pass | 8 |
cell_xnor2/ff · source 9eb7adb9a008 · 실제 과거 실행
원본 기록 JSON · 프로젝트 7502e9b4fb044591b8a51557c81225f6
실행 파라미터
| 이름 | 값 |
|---|---|
| drive_scale | 1 |
| input_slew_ns | 1 |
| 단계 | 실행 상태 | 기준 판정 | run ID |
|---|---|---|---|
| pre | completed | pass | 07ad71c935d844b9aa068564f198b13c |
pre · 원본 결과 설명
Actual ngspice tran: 10194 samples.; reference criteria 5/5
결과 revision: 1 · 사용자 현재 프로젝트의 결과가 아닙니다.
| 측정 이름·단위 원문 | 값 |
|---|---|
| analysis | tran |
| x_unit | s |
| x_label | time |
| corner | ff |
| temperature_C | -40 |
| supply_V | 1.8 |
| post_layout | false |
| samples | 10194 |
| solver | SPARSE 1.3 |
| A_min | 0 |
| A_max | 1.8 |
| B_min | 0 |
| B_max | 1.8 |
| Y_min | -0.008348745449547241 |
| Y_max | 1.8036904498977633 |
| supply_current_min | -0.00003070526943777657 |
| supply_current_max | 0.0002129317405564768 |
| current_flow_status | available |
| template_id | cell_xnor2 |
| layout_status | not-generated |
| metric_source | actual-ngspice-samples |
| truth_cases | 4 |
| truth_passed | 4 |
| 원본 기준 | 판정 | 관측 |
|---|---|---|
| input [0, 0] → 1 | pass | [1.7999999923206977,1.7999999923206977] |
| input [1, 0] → 0 | pass | [1.1789367511741422e-9,2.2020270763062344e-9] |
| input [0, 1] → 0 | pass | [1.0268769541285638e-9,2.3395737994494348e-9] |
| input [1, 1] → 1 | pass | [1.7999999878008848,1.7999999942490696] |
| Every sensitized timing arc observed and settles | pass | 8 |
cell_xnor2 · source 28ec63f0bc2b · 실제 과거 실행
원본 기록 JSON · 프로젝트 f4da9a5f779541579529ffa93bf13049
| 단계 | 실행 상태 | 기준 판정 | run ID |
|---|---|---|---|
| drc | completed | pass | 1a89b24956924f0a9c6a286da96b24fa |
| lvs | completed | pass | 5ab7a2e6777448098d0295db64672786 |
| pex | completed | pass | a103ec4ab373431ca2d93bac09da9e53 |
| pre | completed | pass | edba9398c2b04016bd34a4638f314d4a |
| post | completed | pass | 660957950a494e619707fbbbd2d59f68 |
drc · 원본 결과 설명
Magic drc(full): 0 native violation rectangles. Selected deck; no signoff.
결과 revision: 1 · 사용자 현재 프로젝트의 결과가 아닙니다.
lvs · 원본 결과 설명
Actual Netgen comparison: circuits match uniquely.
결과 revision: 1 · 사용자 현재 프로젝트의 결과가 아닙니다.
pex · 원본 결과 설명
Actual Magic RC extraction: 1311 resistors, 140 capacitors. Zero counts reflect native thresholds, not inserted elements.
결과 revision: 1 · 사용자 현재 프로젝트의 결과가 아닙니다.
pre · 원본 결과 설명
Actual ngspice tran: 2034 samples.; reference criteria 4/4
결과 revision: 1 · 사용자 현재 프로젝트의 결과가 아닙니다.
| 측정 이름·단위 원문 | 값 |
|---|---|
| analysis | tran |
| x_unit | s |
| x_label | time |
| corner | tt |
| temperature_C | 27 |
| supply_V | 1.8 |
| post_layout | false |
| samples | 2034 |
| solver | SPARSE 1.3 |
| A_min | 0 |
| A_max | 1.8 |
| B_min | 0 |
| B_max | 1.8 |
| Y_min | -0.04491755904965768 |
| Y_max | 1.8473704844654033 |
| supply_current_min | -0.00003586268477111243 |
| supply_current_max | 0.0001199381275160602 |
| current_flow_status | available |
| template_id | cell_xnor2 |
| layout_status | generated-public-core |
| metric_source | actual-ngspice-samples |
| truth_cases | 4 |
| truth_passed | 4 |
| 원본 기준 | 판정 | 관측 |
|---|---|---|
| input [0, 0] → 1 | pass | [1.7999999893618948,1.7999999893618959] |
| input [1, 0] → 0 | pass | [-0.0000040882403607826745,0.000004092049860446312] |
| input [0, 1] → 0 | pass | [-1.4090770504918138e-7,1.4637287466118254e-7] |
| input [1, 1] → 1 | pass | [1.799997635841825,1.8000023513896957] |
post · 원본 결과 설명
Actual ngspice tran: 2028 samples.; reference criteria 4/4
결과 revision: 1 · 사용자 현재 프로젝트의 결과가 아닙니다.
| 측정 이름·단위 원문 | 값 |
|---|---|
| analysis | tran |
| x_unit | s |
| x_label | time |
| corner | tt |
| temperature_C | 27 |
| supply_V | 1.8 |
| post_layout | true |
| samples | 2028 |
| solver | SPARSE 1.3 |
| A_min | 0 |
| A_max | 1.8 |
| B_min | 0 |
| B_max | 1.8 |
| Y_min | -0.049125745321830436 |
| Y_max | 1.82925091148251 |
| supply_current_min | -0.00004617908217317054 |
| supply_current_max | 0.00012742005115218974 |
| current_flow_status | available_partial |
| template_id | cell_xnor2 |
| layout_status | generated-public-core |
| metric_source | actual-ngspice-samples |
| truth_cases | 4 |
| truth_passed | 4 |
| 원본 기준 | 판정 | 관측 |
|---|---|---|
| input [0, 0] → 1 | pass | [1.7999999880507895,1.7999999880508475] |
| input [1, 0] → 0 | pass | [-4.308813667039656e-7,8.040137021450715e-7] |
| input [0, 1] → 0 | pass | [7.492527529934234e-7,0.0000011941619861392805] |
| input [1, 1] → 1 | pass | [1.8000010198214689,1.8000014953343417] |
확인할 결과와 한계
- 기본 CMOS 참조 셀입니다. 선택 drive/slew/load의 실제 특성표는 완전한 HD standard-cell/Liberty/STA 라이브러리가 아닙니다.
- 아래 기록은 과거 실행입니다. 가져온 새 프로젝트는 기존 PASS를 상속하지 않으며 직접 해석·검증해야 합니다.
막혔을 때
- 미지원 분석·도구 누락·floating 포트는 다음 실행과 실제 로그에서 확인합니다.
- 레이아웃 없음은 DRC/LVS/PEX PASS가 아닙니다. 지원되는 physical core를 별도로 생성하고 각각 실행합니다.
- 디지털 회로 변경 후 이전 RTL를 조용히 재사용하지 않습니다. 지원 재합성 절차와 실제 graph 일치를 확인합니다.
원문과 재현 자료
지원 범위·자세한 절차 · 검증 당시 template 카탈로그 · 전체 하위 셀·연결 원본 JSON · 해당 generation 실제 실행 기록 · v0.17 실제 물리 프로젝트 · 14종 물리 레퍼런스·파형