v0.27.0 안내 · 설계 블록 실습
XOR2 · 직접 만든 CMOS 기본 셀
A≠B에서만 Y=1인지 네 조합의 실제 출력 전압으로 검사합니다.
학습 체크는 이 브라우저에만 저장합니다. 엔진의 PASS·실행·제조 판정과 관계없습니다.
시작 전에
- 실제 로컬 ngspice·공개 SKY130 모델
- 물리 core 생성/검증 시 Magic·Netgen 등 실제 추가 도구
따라 하기
설계 도구 → 통합 설계 → 회로 · 연결 탐색에서 카탈로그를 읽고 기본 CMOS 셀의 XOR2 · 직접 만든 CMOS 기본 셀 (cell_xor2)를 선택합니다. 새 프로젝트를 생성하거나 아래 예제 ZIP을 가져옵니다.
회로도에서 root ports와 하위 셀을 엽니다. 아래 기본값·외부 testbench 조건과 실제 연결을 확인합니다.
NAND2 네 개의 N1/N2/N3/N4 계층과 출력 연결을 확인합니다.
지원 해석을 선택하고 Simulate를 실행합니다. 결과의 축·단위·실제 run·revision을 읽습니다.
A≠B에서만 Y=1인지 네 조합의 실제 출력 전압으로 검사합니다.
한 파라미터만 바꿔 새 해석과 비교합니다. 편집 프로젝트·조건·파형·로그를 같은 revision으로 저장합니다.
포트·기본값·필요한 블록
회로 ID: cell_xor2 · 지원 해석: tran
| 포트 | 연결 기준 |
|---|---|
| A | 원본 subckt/graph의 핀 순서·역할 확인 |
| B | 원본 subckt/graph의 핀 순서·역할 확인 |
| Y | 원본 subckt/graph의 핀 순서·역할 확인 |
| VPWR | 원본 subckt/graph의 핀 순서·역할 확인 |
| VGND | 원본 subckt/graph의 핀 순서·역할 확인 |
| 기본 파라미터 (단위는 이름에 포함) | 카탈로그 값 |
|---|---|
| drive_scale | 1 |
| input_slew_ns | 0.1 |
직접 의존 셀
- NAND2
실제 회로의 모든 하위 셀
| 셀 이름 | 포트 | 직접 소자 수 | 내부 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_xor2/default · source 9eb7adb9a008 · 실제 과거 실행
원본 기록 JSON · 프로젝트 f54f30826bcf478ebe795bca0351fd43
실행 파라미터
| 이름 | 값 |
|---|---|
| drive_scale | 1 |
| input_slew_ns | 0.1 |
| 단계 | 실행 상태 | 기준 판정 | run ID |
|---|---|---|---|
| pre | completed | pass | 95c8ed3e07d64df584a889c228983958 |
| drc | completed | pass | 1d5c65f7840640b5871e1782f7a54ced |
| lvs | completed | pass | 1f8dbdda6ede452ab8e3a55c2d82283a |
| pex | completed | pass | 9344e03210674c04921584ac34324b85 |
| post | completed | pass | 5b1705d18d62442e9fae0fc299b08055 |
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.14018138034636785 |
| Y_max | 1.9121102793752098 |
| supply_current_min | -0.0000671144639236439 |
| supply_current_max | 0.00023734749272410593 |
| current_flow_status | available |
| template_id | cell_xor2 |
| layout_status | generated-public-core |
| metric_source | actual-ngspice-samples |
| truth_cases | 4 |
| truth_passed | 4 |
| 원본 기준 | 판정 | 관측 |
|---|---|---|
| input [0, 0] → 0 | pass | [1.0893221545061938e-8,1.0893229337481076e-8] |
| input [1, 0] → 1 | pass | [1.7999999892345742,1.7999999894893348] |
| input [0, 1] → 1 | pass | [1.7999974224539494,1.799998131896602] |
| input [1, 1] → 0 | pass | [1.689605126719644e-8,7.076940753042477e-8] |
| 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: 1202 resistors, 178 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.19032485304681918 |
| Y_max | 1.9018026289054188 |
| supply_current_min | -0.00008759643007358614 |
| supply_current_max | 0.0002786928827594125 |
| current_flow_status | available_partial |
| template_id | cell_xor2 |
| layout_status | generated-public-core |
| metric_source | actual-ngspice-samples |
| truth_cases | 4 |
| truth_passed | 4 |
| 원본 기준 | 판정 | 관측 |
|---|---|---|
| input [0, 0] → 0 | pass | [1.3665031919983887e-8,1.3665034290408589e-8] |
| input [1, 0] → 1 | pass | [1.7999999885773459,1.7999999891641763] |
| input [0, 1] → 1 | pass | [1.7997762070124674,1.7998413691656325] |
| input [1, 1] → 0 | pass | [1.3284973716516208e-7,2.412656409020627e-7] |
| Every sensitized timing arc observed and settles | pass | 8 |
cell_xor2/ss · source 9eb7adb9a008 · 실제 과거 실행
원본 기록 JSON · 프로젝트 fca822b806814c45b5c926a0d3240ddb
실행 파라미터
| 이름 | 값 |
|---|---|
| drive_scale | 1 |
| input_slew_ns | 1 |
| 단계 | 실행 상태 | 기준 판정 | run ID |
|---|---|---|---|
| pre | completed | pass | 6120894ab64d4f66af2b102909b611af |
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.017054792875411198 |
| Y_max | 1.610867171848986 |
| supply_current_min | -0.000006872856281987805 |
| supply_current_max | 0.00007801028272554772 |
| current_flow_status | available |
| template_id | cell_xor2 |
| layout_status | not-generated |
| metric_source | actual-ngspice-samples |
| truth_cases | 4 |
| truth_passed | 4 |
| 원본 기준 | 판정 | 관측 |
|---|---|---|
| input [0, 0] → 0 | pass | [2.3476824489651604e-8,2.3476824616286418e-8] |
| input [1, 0] → 1 | pass | [1.5999999682241866,1.599999968363598] |
| input [0, 1] → 1 | pass | [1.5999935783755859,1.599995374367626] |
| input [1, 1] → 0 | pass | [2.90973963743002e-8,4.317363497784166e-8] |
| Every sensitized timing arc observed and settles | pass | 8 |
cell_xor2/ff · source 9eb7adb9a008 · 실제 과거 실행
원본 기록 JSON · 프로젝트 b81689dd97d546139282bacaa896bb86
실행 파라미터
| 이름 | 값 |
|---|---|
| drive_scale | 1 |
| input_slew_ns | 1 |
| 단계 | 실행 상태 | 기준 판정 | run ID |
|---|---|---|---|
| pre | completed | pass | e085a9cf0f3247f4bca487abdc74d06d |
pre · 원본 결과 설명
Actual ngspice tran: 10127 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 | 10127 |
| solver | SPARSE 1.3 |
| A_min | 0 |
| A_max | 1.8 |
| B_min | 0 |
| B_max | 1.8 |
| Y_min | -0.01116858528214365 |
| Y_max | 1.806822466286712 |
| supply_current_min | -0.000030384514947037755 |
| supply_current_max | 0.00024098073926834968 |
| current_flow_status | available |
| template_id | cell_xor2 |
| layout_status | not-generated |
| metric_source | actual-ngspice-samples |
| truth_cases | 4 |
| truth_passed | 4 |
| 원본 기준 | 판정 | 관측 |
|---|---|---|
| input [0, 0] → 0 | pass | [6.748838071723995e-9,6.748838140245572e-9] |
| input [1, 0] → 1 | pass | [1.799999987353125,1.7999999972331162] |
| input [0, 1] → 1 | pass | [1.7999998958016559,1.799999904544744] |
| input [1, 1] → 0 | pass | [1.745566024190237e-9,1.184723432464535e-8] |
| Every sensitized timing arc observed and settles | pass | 8 |
cell_xor2 · source 28ec63f0bc2b · 실제 과거 실행
원본 기록 JSON · 프로젝트 1048bc4ba3d144768f19b69c04fd2d1c
| 단계 | 실행 상태 | 기준 판정 | run ID |
|---|---|---|---|
| drc | completed | pass | a1ca2055efd64577936223bfe11034cc |
| lvs | completed | pass | c8b1d64f70484b228bcb4596dc71ce62 |
| pex | completed | pass | fa00181e51ce4fb0bd47ee16cca7f435 |
| pre | completed | pass | a31f6488ac504ca099ed1daae103f2f4 |
| post | completed | pass | 6192116d054c4dcfbcb430168819f08b |
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: 1165 resistors, 120 capacitors. Zero counts reflect native thresholds, not inserted elements.
결과 revision: 1 · 사용자 현재 프로젝트의 결과가 아닙니다.
pre · 원본 결과 설명
Actual ngspice tran: 2031 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 | 2031 |
| solver | SPARSE 1.3 |
| A_min | 0 |
| A_max | 1.8 |
| B_min | 0 |
| B_max | 1.8 |
| Y_min | -0.043556958204848784 |
| Y_max | 1.8419991250129637 |
| supply_current_min | -0.0000359993974250461 |
| supply_current_max | 0.00012705673680957208 |
| current_flow_status | available |
| template_id | cell_xor2 |
| layout_status | generated-public-core |
| metric_source | actual-ngspice-samples |
| truth_cases | 4 |
| truth_passed | 4 |
| 원본 기준 | 판정 | 관측 |
|---|---|---|
| input [0, 0] → 0 | pass | [1.089322537728421e-8,1.0893225505653747e-8] |
| input [1, 0] → 1 | pass | [1.7999987251101122,1.8000012543865354] |
| input [0, 1] → 1 | pass | [1.7999943009316504,1.8000011472570032] |
| input [1, 1] → 0 | pass | [-0.0000014475082343208545,0.0000014702986739362212] |
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.048537893176195196 |
| Y_max | 1.9676797207790189 |
| supply_current_min | -0.000045600651408447986 |
| supply_current_max | 0.00012427359667179871 |
| current_flow_status | available_partial |
| template_id | cell_xor2 |
| layout_status | generated-public-core |
| metric_source | actual-ngspice-samples |
| truth_cases | 4 |
| truth_passed | 4 |
| 원본 기준 | 판정 | 관측 |
|---|---|---|
| input [0, 0] → 0 | pass | [1.3662420092656956e-8,1.3662510546017903e-8] |
| input [1, 0] → 1 | pass | [1.800000268130681,1.8000014061807403] |
| input [0, 1] → 1 | pass | [1.7999754377082933,1.7999822618921666] |
| input [1, 1] → 0 | pass | [4.5014346749589455e-7,8.891203613010838e-7] |
확인할 결과와 한계
- 기본 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종 물리 레퍼런스·파형