디지털이라는 약속
전선 위의 전압은 0.75 V와 0 V 사이 어느 값이든 될 수 있다. 그런데 디지털 회로는 이 연속된 값을 딱 두 칸, "낮으면 0, 높으면 1"로만 읽기로 약속한다. 정보를 일부러 버리는 이상한 약속처럼 보이지만, 바로 이 약속 덕분에 잡음 섞인 신호가 게이트를 지날 때마다 깨끗하게 다시 태어나고, 수백억 개의 트랜지스터를 이어 붙여도 계산이 틀리지 않는다. 이 장에서는 그 약속이 어떻게 지켜지는지, 그리고 이 책 전체가 오르내릴 추상화의 사다리를 한 번 훑어본다.
- 아날로그 사슬에서는 잡음이 쌓이고 디지털 사슬에서는 지워지는 이유를 비선형 전달 곡선과 재생성으로 설명한다.
- 논리 레벨 \(V_{IL}, V_{IH}, V_{OL}, V_{OH}\)과 노이즈 마진을 정의하고, 비트 몇 개로 수와 신호를 표현하는 방식을 익힌다.
- 소자에서 칩까지 추상화의 사다리가 각 층에서 무엇을 숨기는지, 동기식 시스템이 시간을 어떻게 사이클로 바꾸는지 안다.
- 속도·전력·면적·견고함이라는 디지털 회로의 성능 지표와 그 사이의 트레이드오프를 실제 수치로 가늠한다.
연속을 두 칸으로 나누는 약속
마이크가 만든 전압, 온도 센서의 전압, 라디오 안테나의 전압은 모두 아날로그(Analog) 신호다. 값이 연속적이고, 값 자체가 정보다. 0.412 V와 0.413 V는 다른 뜻이다. 반대로 디지털(Digital) 신호는 값의 구간만 본다. 기준 공정 DG-7(공급 전압 \(V_{DD}\) = 0.75 V)에서라면 대략 "0.3 V보다 낮으면 0, 0.45 V보다 높으면 1"로 읽는다. 0.05 V든 0.12 V든 똑같이 0이다.
이 약속에는 대가가 있다. 전선 하나로 보낼 수 있는 정보가 연속값에서 단 1비트로 줄어든다. 그 대신 얻는 것이 있다. 받는 쪽은 신호가 "얼마나 정확한가"를 따질 필요 없이 "어느 칸에 있는가"만 판정하면 된다. 칸의 경계에서 멀리 떨어져 있는 한 잡음이 조금 섞여도 판정은 바뀌지 않는다. 아래 그림에서 직접 확인해 보자.
잡음이 σ = 50 mV 정도면 오류가 거의 없다. 문턱에서 레일(0 V 또는 0.75 V)까지 375 mV, 곧 σ의 7.5배나 떨어져 있기 때문이다. 정규 분포에서 7.5σ를 넘는 잡음이 나올 확률은 \(10^{-13}\) 남짓이다. 디지털 회로가 "거의 절대" 틀리지 않는 것은 이처럼 신호와 판정 경계 사이에 넉넉한 거리를 두기 때문이다.
디지털 회로 안의 전압도 물리적으로는 언제나 연속값이다. 트랜지스터는 0과 1을 모른다. 디지털이란 회로를 그렇게 해석하기로 하는 약속, 그리고 그 약속이 깨지지 않도록 회로를 설계하는 기술이다. 전환 도중의 전압, 잡음, 지연처럼 약속이 위태로워지는 순간을 다루는 것이 이 책의 대부분을 차지한다.
잡음이 쌓이는 사슬, 지워지는 사슬
한 번 판정하는 것만으로는 디지털의 진짜 힘이 드러나지 않는다. 칩 안의 신호는 게이트 수십 개를 연달아 지나고, 칩 전체로는 수백억 번의 전달이 매초 일어난다. 단을 지날 때마다 잡음이 조금씩 섞인다면 무슨 일이 생길까?
아날로그 사슬을 생각하자. 각 단이 이득 1인 이상적인 증폭기여서 신호를 그대로 전달한다고 해도, 각 단에서 섞인 잡음 역시 그대로 다음 단으로 넘어간다. 서로 독립인 잡음은 분산이 더해지므로 \(N\)단 뒤 잡음의 크기는 \(\sigma\sqrt{N}\)으로 자란다. 증폭기는 신호와 잡음을 구별하지 못한다.
디지털 사슬의 각 단은 버퍼(인버터 두 개)다. 버퍼는 입력이 0.3 V든 0.05 V든 출력을 거의 0 V로 내보낸다. 들어온 잡음을 다음 단에 넘기지 않고 버린다. 판정 경계를 넘을 만큼 큰 잡음만 비트를 뒤집을 수 있고, 그 확률은 단마다 독립적으로 아주 작다. 아래 시뮬레이터에서 두 사슬을 나란히 비교해 보자.
N단 사슬: 아날로그 증폭기 vs 디지털 버퍼
DG.invOut)을 두 번 거친 실제 전달 곡선을 쓴다. 아날로그 단은 출력이 레일을 넘어도 자르지 않는 이상 증폭기다.잡음 σ = 60 mV, 12단에서 아날로그 사슬은 수 %의 비트를 틀린다. 누적 잡음이 \(60\sqrt{12} \approx 208\) mV로 자라 문턱까지의 거리 375 mV의 절반을 넘기 때문이다. 같은 조건에서 디지털 사슬은 3000비트 중 하나도 틀리지 않는다. 잡음을 키우면 디지털도 결국 틀리기 시작하는데, 그 시점이 아주 갑작스럽다는 점도 눈여겨보자. 이것을 "절벽 효과"라 부른다. 디지털 방송이 잘 나오다가 어느 순간 화면이 통째로 멈추는 것과 같다.
σ = 100 mV, N = 10일 때 디지털 사슬의 오류율이 어떤 값 \(p\)였다. N을 40으로 늘리면 디지털 오류율은 대략 몇 배가 될까? 아날로그 사슬의 누적 잡음은 몇 배가 될까?
답 보기
디지털 오류율은 단 수에 비례하므로 약 4배(\(4p\))가 된다. 아날로그의 누적 잡음은 \(\sqrt{4} = 2\)배가 되는데, 이 "고작 2배"가 \(Q\) 함수 안에서는 인자를 절반으로 줄이는 것이어서 오류율은 몇 배가 아니라 몇 자릿수 커질 수 있다. 시뮬레이터에서 σ = 100 mV로 두고 N을 10과 40으로 바꿔 확인해 보자.
재생성: 잡음을 지우는 곡선
디지털 단이 잡음을 버리는 비결은 입력과 출력 사이의 관계, 곧 전압 전달 특성(VTC, Voltage Transfer Characteristic)에 있다. 인버터의 VTC는 양 끝이 납작하고 가운데가 가파르다. 납작한 끝에서는 입력이 크게 흔들려도 출력이 거의 움직이지 않는다(이득이 1보다 훨씬 작다). 가파른 가운데에서는 입력이 조금만 바뀌어도 출력이 크게 바뀐다(이득이 1보다 훨씬 크다). 이 두 성질이 함께 있어야 신호가 매 단 레일로 끌려가는 재생성(Regeneration)이 일어난다.
버퍼를 계속 이어 붙이는 것은 같은 함수 \(g\)를 반복 적용하는 것과 같다. \(x_{k+1} = g(x_k)\). 이런 반복은 거미줄 그림(Cobweb plot)으로 보면 한눈에 보인다. 곡선 위로 올라갔다가(다음 단의 출력) 대각선 \(y=x\)로 옆걸음질해(그 출력이 다음 단의 입력이 된다) 다시 곡선으로 가기를 되풀이한다.
그림에서 곡선이 대각선과 만나는 점을 고정점(Fixed point)이라 한다. 그 점에서 출발하면 영원히 그 자리에 머문다. CMOS 버퍼에는 고정점이 셋 있다. 0 V 근처, 0.75 V 근처, 그리고 가운데 \(V_M\). 그런데 세 점의 성격이 다르다.
여기서 디지털 회로의 두 가지 필요조건이 나온다. 첫째, 전달 곡선이 비선형이어야 한다. 직선은 고정점이 하나뿐이거나 전부다. 둘째, 가운데에서 이득이 1보다 커야 한다. 이득이 모자라면 모든 신호가 가운데로 녹아 버린다. 초창기 컴퓨터가 진공관과 릴레이로, 지금은 트랜지스터로 만들어지는 것은 이 소자들이 모두 이득을 가진 비선형 소자이기 때문이다. 저항과 커패시터만으로는 디지털 회로를 만들 수 없다.
논리 레벨과 노이즈 마진
"낮으면 0, 높으면 1"이라는 약속을 수치로 정확히 적어 두어야 서로 다른 게이트, 서로 다른 칩이 함께 일할 수 있다. 약속은 보내는 쪽과 받는 쪽에 각각 두 개씩, 네 개의 전압으로 이루어진다.
- 보내는 쪽(출력): 1을 낼 때는 적어도 \(V_{OH}\) 이상, 0을 낼 때는 많아야 \(V_{OL}\) 이하를 보장한다.
- 받는 쪽(입력): \(V_{IH}\) 이상이면 반드시 1로, \(V_{IL}\) 이하이면 반드시 0으로 읽는다. 그 사이는 어떻게 읽을지 보장하지 않는 정의되지 않은 구간이다.
보내는 쪽이 보장하는 값과 받는 쪽이 요구하는 값 사이의 여유가 전선 위에서 섞여도 되는 잡음의 최대치, 노이즈 마진(Noise margin)이다.
DG-7 인버터는 \(V_{OL} \approx 0.05\) V, \(V_{IL} \approx 0.33\) V, \(V_{IH} \approx 0.43\) V, \(V_{OH} \approx 0.70\) V로 두 마진이 모두 약 0.27 V, 공급 전압의 약 37 %다. 같은 공정의 게이트끼리 연결할 때는 이처럼 마진이 넉넉하다. 마진이 문제되는 곳은 서로 다른 전압을 쓰는 칩끼리 연결하는 경계, 전압을 극단적으로 낮춘 저전력 회로, 그리고 이웃 배선이 끼어드는 크로스토크(14장)다. 아래 표는 오래 쓰여 온 몇몇 인터페이스 규격의 대략값이다.
| 규격(공급 전압) | \(V_{OL}\) | \(V_{IL}\) | \(V_{IH}\) | \(V_{OH}\) | \(NM_L / NM_H\) |
|---|---|---|---|---|---|
| TTL (5 V) | 0.4 | 0.8 | 2.0 | 2.4 | 0.4 / 0.4 |
| 5 V CMOS (74HC, 4.5 V 공급) | ~0.33 | 1.35 | 3.15 | ~3.84 | ~1.0 / ~0.7 |
| LVCMOS 3.3 V | 0.4 | 0.8 | 2.0 | 2.4 | 0.4 / 0.4 |
| LVCMOS 1.8 V | 0.45 | 0.63 | 1.17 | 1.35 | 0.18 / 0.18 |
| DG-7 인버터 (0.75 V, 칩 내부) | 0.05 | 0.33 | 0.43 | 0.70 | 0.27 / 0.27 |
단위는 V이고, 규격 값은 부하 전류 조건에 따라 조금씩 다르므로 대략값이다. DG-7 행은 이 페이지가 DG.vtcMetrics로 직접 계산해 채운다. 칩 내부 게이트의 마진(공급 전압의 30~40 %)이 칩 사이 인터페이스 규격(공급 전압의 10 % 안팎)보다 비율로는 훨씬 넉넉하다는 점이 흥미롭다. 칩 사이 규격은 서로 다른 회사, 서로 다른 공정, 긴 배선의 손실까지 모두 감싸야 하기 때문이다.
비트로 무엇을 나타내나
전선 하나가 1비트를 나르면 전선 \(n\)개는 \(2^n\)가지 상태를 나른다. 비트 3개면 8가지, 8개(1바이트)면 256가지, 32개면 약 43억 가지다. 이 상태들에 어떤 뜻을 붙일지는 또 하나의 약속이다. 가장 자연스러운 약속은 각 비트에 2의 거듭제곱 무게를 주는 이진수(Binary number)다.
2의 보수가 사실상 모든 컴퓨터의 표준이 된 이유는 하드웨어가 싸지기 때문이다. 부호 없는 덧셈기를 그대로 쓰면 부호 있는 덧셈도 맞는 답이 나온다. 뺄셈 \(a-b\)는 \(a + \bar{b} + 1\)이므로 덧셈기에 인버터와 올림 입력 하나만 더하면 된다. 이 덧셈기를 트랜지스터로 어떻게 빠르게 만드는지가 11장의 주제다.
2의 보수 8비트에서 −1의 비트 패턴은? 그리고 그 패턴을 부호 없는 수로 읽으면 얼마인가?
답 보기
1111 1111이다. MSB 무게 −128에 나머지 127을 더하면 −1이 된다. 같은 패턴을 부호 없는 수로 읽으면 255다. 비트 자체에는 부호가 없다. 그것을 어떻게 읽을지는 그 비트를 쓰는 회로(명령어)가 정한다. 그림 1-4에서 "0으로"를 누른 뒤 "−x"를 눌러 −0이 다시 0임을, "+1"을 눌러 둘째 칸으로 넘어가는 모습을 확인해 보자.
한 전선에 2비트 이상을 싣는 방법도 있다. 전압 범위를 두 칸이 아니라 4칸, 8칸, 16칸으로 나누는 다중 레벨(Multi-level) 신호다. 낸드 플래시 메모리는 셀 하나의 문턱 전압을 4·8·16단계로 나눠 셀당 2·3·4비트(MLC·TLC·QLC)를 저장하고, 고속 직렬 링크와 최신 GDDR7 메모리는 전압 4단계로 1심볼에 2비트를 보내는 PAM4를 쓴다. 공짜는 아니다.
다중 레벨은 비트당 면적이나 대역폭이 귀한 곳에서 잡음 여유를 팔아 밀도를 사는 거래다. 플래시는 그렇게 잃은 신뢰성을 강력한 오류 정정 부호로 메우고, PAM4 링크는 수신기에 정교한 등화기를 둔다. 반면 칩 안의 논리 게이트는 거의 언제나 2레벨을 쓴다. 매 단 재생해야 하는 게이트를 4레벨로 만들려면 고정점이 넷인 전달 곡선이 필요하고, 그런 회로는 크고 느리며 마진이 작기 때문이다.
스위치 두 개로 만드는 인버터
그렇다면 비선형이고 이득이 큰 전달 곡선은 실제로 무엇으로 만드나? 오늘날의 답은 MOSFET이다. 지금 단계에서는 MOSFET을 게이트 전압으로 여닫는 스위치라고만 보자. nMOS는 게이트가 높을 때(1) 닫히고, pMOS는 게이트가 낮을 때(0) 닫힌다. 둘을 위아래로 쌓고 게이트를 묶으면 입력이 무엇이든 둘 중 정확히 하나만 닫힌다. 이것이 CMOS 인버터다.
이 단순한 회로에 디지털 회로가 원하는 성질이 다 들어 있다. 출력이 \(V_{DD}\)나 GND에 스위치로 직접 연결되므로 출력 레벨이 깨끗하다(\(V_{OH} \approx V_{DD}\), \(V_{OL} \approx 0\)). 가운데에서 두 트랜지스터가 서로 밀고 당기며 큰 이득을 만든다. 정지 상태에서는 전류가 거의 흐르지 않는다. 스위치의 진짜 모습(문턱 전압, 온저항, 꺼져도 새는 전류)은 3장에서, 인버터의 VTC와 크기 조절은 4장에서, 스위치를 직렬·병렬로 엮어 NAND·NOR를 만드는 법은 5장에서 다룬다.
추상화의 사다리
최신 칩에는 트랜지스터가 수백억 개 있다. 이것을 하나하나 생각하며 설계하는 것은 불가능하다. 그래서 디지털 설계는 층을 쌓는다. 아래층의 복잡한 사정을 몇 가지 규칙으로 요약해 숨기고, 위층은 그 규칙만 믿고 일한다. 이것이 추상화(Abstraction)다. 이 책의 각 장 머리말에 있는 사다리가 바로 이 층들이다.
- 소자(Device): 트랜지스터와 배선. 숨기는 것: 반도체 물리, 공정. (→ DeviceBook, ProcessBook)
- 게이트(Gate): 인버터, NAND, NOR. 숨기는 것: 연속 전압, 전류. 남기는 것: 0/1과 지연.
- 순차 회로(Sequential): 플립플롭과 클럭. 숨기는 것: 연속 시간. 남기는 것: 사이클.
- 데이터패스(Datapath): 덧셈기, 곱셈기, 시프터. 숨기는 것: 개별 게이트. 남기는 것: 수와 연산.
- 블록(Block): 메모리, ALU, 코어. 숨기는 것: 내부 구조. 남기는 것: 인터페이스와 성능 수치.
- 칩(System): SoC. 숨기는 것: 블록 내부 전부. 남기는 것: 기능, 전력, 비용. (→ SoCBook)
추상화는 생산성을 주지만 공짜는 아니다. 각 층의 규칙은 아래층이 특정 조건을 지킬 때만 참이다. "게이트 출력은 0 아니면 1"은 노이즈 마진이 양수일 때만, "값은 클럭 에지에서만 바뀐다"는 타이밍 조건이 지켜질 때만, "덧셈기는 합을 낸다"는 그 둘이 다 지켜질 때만 참이다. 좋은 회로 설계자는 사다리를 오르내리며 어느 층의 약속이 언제 깨지는지 아는 사람이다.
"물이 새는 추상화"(Leaky abstraction)라는 말이 있다. 아래층의 사정이 위층으로 스며드는 순간이다. 전원 전압이 순간적으로 떨어져 게이트가 느려지면 타이밍이 깨지고, 우주선 입자가 SRAM 셀 하나를 뒤집으면(16장) 프로그램이 엉뚱하게 동작한다. 공정 미세화가 진행될수록 이런 누수가 늘어, 위층 설계자도 아래층을 점점 더 알아야 한다.
동기식 시스템 한 바퀴
재생성이 전압을 두 칸으로 나누듯, 클럭은 시간을 칸으로 나눈다. 거의 모든 디지털 칩은 동기식(Synchronous) 설계를 따른다. 상태는 레지스터(플립플롭 묶음)에만 저장되고, 레지스터는 클럭의 상승 에지에서만 입력을 받아들인다. 레지스터 사이에는 기억이 없는 조합 논리(Combinational logic)가 놓인다.
한 사이클 동안 일어나는 일은 이렇다. 클럭 에지가 오면 레지스터가 새 값을 내보낸다(\(t_{cq}\) 뒤). 그 값이 조합 논리를 지나며 이리저리 흔들리다 결국 정답에 자리 잡는다(\(t_{logic}\) 뒤). 다음 에지보다 조금 앞서(\(t_{setup}\)) 자리 잡았다면 레지스터가 정답을 받아 간다. 중간의 흔들림은 아무도 보지 않으므로 상관없다. 이 약속 덕분에 설계자는 시간을 "사이클 0, 1, 2 …"라는 정수로만 생각할 수 있다.
4비트 누산기: 레지스터 → 덧셈기 → 레지스터
기본값(주기 120 ps, 깊이 10)에서는 덧셈이 매 사이클 맞는다. 필요한 시간은 \(15 + 75 + 10 = 100\) ps이고 20 ps가 남는다. 주기를 100 ps 아래로 줄이면 위쪽 비트가 미처 자리 잡지 못한 채 잡혀 누산기가 엉뚱한 수를 세기 시작한다. 클럭을 무작정 올릴 수 없는 이유, 그리고 칩의 최대 클럭이 가장 느린 경로 하나로 정해지는 이유다.
깊이 16(120 ps)인 조합 논리를 레지스터를 하나 더 넣어 깊이 8짜리 두 단으로 나누면, 최대 클럭은 몇 배가 될까? 정확히 2배일까?
답 보기
나누기 전 최소 주기는 15 + 120 + 10 = 145 ps(약 6.9 GHz), 나눈 뒤는 15 + 60 + 10 = 85 ps(약 11.8 GHz)로 약 1.7배다. 레지스터 오버헤드 \(t_{cq} + t_{setup}\) = 25 ps는 쪼갤 수 없기 때문에 2배에 못 미친다. 이것이 파이프라이닝의 이득과 한계다. 대신 결과가 나오기까지 사이클 수(지연 시간)는 1에서 2로 늘어난다.
디지털 회로의 성적표
같은 기능을 하는 회로라도 좋고 나쁨이 있다. 디지털 회로는 보통 네 가지 지표로 평가한다.
- 속도: 게이트 지연, 최대 클럭 주파수, 처리량. 공정에 덜 의존하는 잣대로 FO4 지연(같은 인버터 4개를 구동하는 인버터의 지연)을 쓴다. DG-7에서 약 7.5 ps다.
- 전력과 에너지: 커패시터를 \(V_{DD}\)까지 충전했다 방전할 때마다 \(CV_{DD}^2\)의 에너지가 열로 사라진다. 꺼진 트랜지스터로 새는 누설 전류도 있다.
- 면적: 트랜지스터 수와 배선량. 면적은 곧 비용이고, 커패시턴스(지연·전력)이기도 하다.
- 견고함: 노이즈 마진, 공정·전압·온도 변동에 대한 여유, 소프트 에러와 노화에 대한 내성.
이 지표들은 서로 줄다리기를 한다. 가장 대표적인 줄이 공급 전압이다. 아래 그림에서 \(V_{DD}\)와 문턱 전압을 바꿔 보자.
속도를 원하면 전압을 올리고 문턱을 낮추지만 에너지와 누설이 늘어난다. 에너지를 아끼려면 전압을 내리지만 느려지고 마진이 줄어 변동에 약해진다. 면적을 아끼려고 트랜지스터를 작게 만들면 느려지고 변동이 커진다. 모든 지표에서 이기는 설계는 없다. 응용에 따라 균형점이 다를 뿐이다. 서버 CPU는 속도를, 스마트폰은 에너지를, 센서 노드는 누설을, 자동차 칩은 견고함을 가장 앞에 둔다. 아래 표는 이 지표들의 대략적인 크기 감각이다.
| 항목 | 값(약) | 비고 |
|---|---|---|
| DG-7 공급 전압 / 문턱 전압 | 0.75 V / 0.30 V | 이 책의 기준 공정(7 nm급 교육용) |
| 단위 인버터 지연 τ / FO4 지연 | 1.5 ps / 7.5 ps | FO4 ≈ 5τ |
| 단위 nMOS 켜짐 전류 | ~50 µA | \(V_{GS} = V_{DS} = V_{DD}\) |
| 인버터 한 번 충방전 에너지 (FO4 부하 ~1 fF) | ~0.5 fJ | \(CV_{DD}^2\) = 1 fF × (0.75 V)² |
| 고성능 CPU 클럭 | ~5–6 GHz | 사이클 약 170–200 ps ≈ 25 FO4 안팎 (2024) |
| 32비트 정수 덧셈 에너지 | ~0.1 pJ | 45 nm 기준 (Horowitz, 2014) |
| DRAM에서 64비트 읽기 에너지 | ~1–2 nJ | 덧셈보다 만 배 이상: 계산보다 데이터 이동이 비싸다 (같은 출처) |
| 6T SRAM 셀 면적 (7 nm급) | ~0.027 µm² | 고밀도 셀, 2018년경 |
| 논리 트랜지스터 밀도 (7 nm급) | ~0.9억 개/mm² | 공정사 발표 기준, 실제 칩은 더 낮다 |
| 최신 칩 트랜지스터 수 | ~920억 / ~2080억 | 노트북 SoC(2023) / 다이 2개 데이터센터 GPU(2024) |
| 칩 전력 | ~5 W / ~1 kW | 스마트폰 SoC / 데이터센터 가속기 (2024) |
"게이트 하나 ~10 ps, 스위칭 한 번 ~1 fJ, 칩 하나 ~100억 개." 이 세 숫자만 기억해도 많은 것을 가늠할 수 있다. 예를 들어 100억 개 게이트 중 2 %가 3 GHz로 매 사이클 1 fJ씩 쓰면 \(10^{10} \times 0.02 \times 3\times10^9 \times 10^{-15} = 600\) W다. 실제 칩이 전부를 동시에 켜지 못하는 이유(다크 실리콘)가 이 한 줄에 들어 있다.
이 책의 지도
이 책은 추상화의 사다리를 아래에서 위로 오른다. 2장에서 0과 1을 다루는 대수를 익힌 뒤, 3~7장에서 트랜지스터로 게이트를 짓고 그 지연을 계산한다. 8~10장에서 기억과 시간(순차 회로)을, 11~12장에서 수를 다루는 데이터패스를, 13~16장에서 메모리·배선·전력·신뢰성이라는 칩 전체의 문제를 다룬다. 마지막으로 17~18장에서 HDL 코드가 게이트가 되는 과정을 보고, 실험실에서 직접 회로를 짜 본다.
시리즈의 다른 책과도 이어진다. 트랜지스터 아래의 물리는 DeviceBook과 ProcessBook, 이 책의 회로가 모여 만드는 코어·캐시·NoC는 SoCBook, RTL에서 마스크까지의 설계 흐름은 DesignBook, DRAM·플래시 같은 메모리 소자는 MemoryBook이 맡는다.
핵심 정리
- 디지털은 연속 전압을 두 구간(0과 1)으로만 읽기로 한 약속이다. 정보량을 줄이는 대신 판정 경계와 신호 사이에 큰 거리를 둬 잡음에 강해진다.
- 아날로그 사슬에서는 잡음이 \(\sigma\sqrt{N}\)으로 쌓이지만, 디지털 사슬은 매 단 신호를 레일로 복원(재생성)하므로 오류가 단 수에 선형으로만 늘고 그 크기도 지수적으로 작다.
- 재생성에는 비선형 전달 곡선과 가운데에서 1보다 큰 이득이 필요하다. 두 레일은 안정 고정점, 스위칭 문턱 \(V_M\)은 불안정 고정점이다.
- 논리 레벨은 \(V_{OL}, V_{OH}\)(보내는 쪽 보장)와 \(V_{IL}, V_{IH}\)(받는 쪽 요구)로 정하며, 노이즈 마진은 \(NM_H = V_{OH}-V_{IH}\), \(NM_L = V_{IL}-V_{OL}\)이다.
- \(n\)비트는 \(2^n\)가지 상태를 나타내고, 2의 보수는 부호 없는 덧셈기를 그대로 써서 부호 있는 연산을 한다. 다중 레벨 신호는 잡음 여유를 팔아 밀도를 산다.
- 소자→게이트→순차→데이터패스→블록→칩의 각 층은 아래층을 규칙으로 요약해 숨기며, 동기식 설계는 \(T \ge t_{cq}+t_{logic}+t_{setup}\)일 때 시간을 사이클로 추상화한다.
- 속도·에너지·면적·견고함은 서로 맞바꾸는 지표다. 공급 전압을 낮추면 에너지(\(CV^2\))는 줄고 지연은 늘며, 너무 낮추면 누설 때문에 최소 에너지점이 생긴다.
확인 퀴즈
Q1. 이득이 정확히 1인 이상적 아날로그 증폭기 16단에 각 단마다 σ = 20 mV의 독립 잡음이 더해진다. 마지막 단 출력의 잡음 크기(표준 편차)는?
Q2. 버퍼 체인이 잡음을 지울 수 있게 하는 전달 곡선의 성질로 가장 알맞은 것은?
Q3. 어떤 게이트의 \(V_{OH}\) = 0.68 V, \(V_{OL}\) = 0.06 V이고, 받는 게이트의 \(V_{IH}\) = 0.45 V, \(V_{IL}\) = 0.30 V이다. \(NM_H\)와 \(NM_L\)은?
Q4. 4비트 2의 보수에서 비트 패턴 1010이 나타내는 값은?
Q5. \(t_{cq}\) = 20 ps, 가장 느린 조합 경로 = 150 ps, \(t_{setup}\) = 15 ps인 동기식 회로의 최대 클럭 주파수는 대략?
Q6. 셀당 1비트(2레벨)이던 메모리를 같은 전압 창에서 셀당 3비트(8레벨)로 바꾸면, 같은 오류율을 지키기 위해 허용되는 잡음은 대략 몇 분의 1로 줄어드나?