6T SRAM Analysis
6T SRAM 구조 및 동작 원리 상세 분석
Six-Transistor SRAM Cell · Cross-Coupled Inverters · Read/Write · Stability Trade-off · Cache
SRAM(Static Random Access Memory)은 6개의 트랜지스터로 이루어진 셀에 데이터를 정적으로 저장합니다. DRAM과 달리 Refresh가 필요 없고 매우 빠르기 때문에 CPU 캐시에 사용됩니다. 본 문서는 6T 셀의 구조, 읽기/쓰기 동작, 읽기 안정성과 쓰기 용이성의 트레이드오프, 그리고 메모리 계층에서의 위치를 분석합니다.
6T 셀은 단일 비트 셀 자체뿐 아니라 비트라인, 프리차지 회로, 센스 앰프, 워드라인 드라이버와 함께 동작합니다. 따라서 셀 구조만 보는 것보다 배열 전체에서 읽기 안정성, 쓰기 용이성, 지연 시간, 면적이 어떻게 맞물리는지 함께 보는 것이 중요합니다.
1. 6T SRAM 셀 구조
6T SRAM 셀은 2개의 인버터를 교차결합(cross-coupled)한 래치(latch)와, 이 래치를 비트라인에 연결하는 2개의 액세스 트랜지스터로 구성됩니다. 교차결합 인버터는 서로의 출력을 입력으로 받아 Q와 /Q가 항상 반대값을 유지하는 양안정(bistable) 상태를 형성하며, 전원이 공급되는 한 데이터를 능동적으로 유지합니다.
그림 1. 6T SRAM 셀 구조 — 교차결합 인버터(4T) + 액세스 트랜지스터(2T)
6개 트랜지스터의 역할
M1+M2가 인버터1, M3+M4가 인버터2를 이루고, 두 인버터의 입출력을 교차 연결하면 안정적인 래치가 됩니다. M5·M6는 Word Line(WL)이 활성화될 때만 셀 내부 노드(Q, /Q)를 Bit Line(BL, /BL)에 연결합니다.
핵심 특성
-
정적(Static) — 전원이 공급되는 한 데이터를 유지하며 Refresh가 불필요합니다.
-
비파괴적 읽기 — 읽어도 셀 상태가 변하지 않아 restore가 필요 없습니다(DRAM과 결정적 차이).
-
고속 — 래치가 능동적으로 값을 유지하므로 접근 속도가 매우 빠릅니다(수 ns 이하).
-
저밀도·고비용 — 6개 트랜지스터가 필요해 셀 면적이 크고 비트당 비용이 높습니다.
2. 읽기 / 쓰기 동작
읽기는 비트라인을 프리차지한 뒤 셀의 미세한 방전을 센스 앰프로 감지하며, 쓰기는 비트라인을 강하게 구동해 셀 래치를 강제로 뒤집습니다.
그림 2. 6T SRAM 읽기/쓰기 동작과 읽기 안정성-쓰기 용이성 트레이드오프
읽기 (READ)
-
① BL과 /BL을 모두 VDD로 프리차지한다.
-
② WL을 활성화해 액세스 트랜지스터를 켠다.
-
③ 셀 내부값에 따라 한쪽 비트라인이 미세하게 하강한다(Q=0이면 BL이, /Q=0이면 /BL이 하강).
-
④ 센스 앰프가 BL과 /BL의 전압차를 증폭해 데이터를 출력한다. 셀 상태는 변하지 않는다(비파괴적).
쓰기 (WRITE)
-
① 쓸 값을 BL에, 그 반대값을 /BL에 강하게 구동한다(예: ‘0’ 쓰기 → BL=0, /BL=1).
-
② WL을 활성화해 액세스 트랜지스터를 켠다.
-
③ 강한 비트라인 드라이버가 셀 내부 래치를 강제로 뒤집는다.
-
④ WL을 비활성화하면 새 값이 래치에 안정적으로 유지된다.
3. 읽기 안정성 vs 쓰기 용이성 트레이드오프
6T 셀 설계의 핵심 난제는 읽기 안정성과 쓰기 용이성이 서로 상충한다는 점입니다. 두 요구는 액세스 트랜지스터와 셀 내부 트랜지스터의 상대적 구동력을 반대 방향으로 요구합니다.
균형 지표 — 읽기 안정성은 SNM(Static Noise Margin), 쓰기 용이성은 Write Margin으로 정량화합니다. 트랜지스터 크기 비율(셀 비율 β, 풀업 비율)을 세심히 조정해 두 마진을 동시에 확보하는 것이 SRAM 셀 설계의 핵심이며, 미세 공정으로 갈수록 변동성(variation) 때문에 더 어려워집니다. 그래서 8T·10T 등 트랜지스터를 추가해 읽기/쓰기 경로를 분리하는 변형 셀도 사용됩니다.
| 지표 | 의미 | 설계 포인트 |
|---|---|---|
| SNM | 읽기 중 셀 상태를 지키는 여유 | 액세스 트랜지스터를 너무 강하게 만들지 않고, 셀 래치의 복원력을 확보 |
| Write Margin | 원하는 값을 강제로 뒤집는 여유 | 액세스 경로와 풀업 강도의 균형 조정 |
4. 메모리 계층에서의 SRAM
SRAM은 빠른 속도와 Refresh 불필요라는 장점 덕분에 CPU에 가장 가까운 레지스터와 L1~L3 캐시에 사용됩니다. 반면 면적과 비용이 커서 대용량이 필요한 메인 메모리에는 DRAM이 쓰입니다.
그림 3. 메모리 계층에서 SRAM(캐시)과 DRAM(메인 메모리)의 위치
6T SRAM vs 1T1C DRAM 비교
6T SRAM은 접근 지연과 비파괴적 읽기에 강하고, 1T1C DRAM은 셀 면적과 비용에 강점이 있습니다.
왜 캐시에는 SRAM을 쓰는가?
-
CPU 속도에 맞춰야 하는 캐시는 무엇보다 속도가 중요하며, SRAM의 빠른 접근이 필수입니다.
-
Refresh가 없어 항상 즉시 접근 가능하고 레이턴시 예측이 용이합니다.
-
면적·비용이 크지만 캐시는 용량이 작아(KB~수십 MB) 감당할 수 있습니다. 반면 GB급 메인 메모리는 DRAM이 비용 면에서 유리합니다.
| 트랜지스터 | 명칭 | 유형 | 역할 |
|---|---|---|---|
| M1, M3 | Pull-Up (PU) | PMOS | 노드를 VDD(‘1’)로 끌어올림 |
| M2, M4 | Pull-Down (PD) | NMOS | 노드를 GND(‘0’)로 끌어내림 |
| M5, M6 | Access (AX) | NMOS | WL 제어로 셀과 BL을 연결하는 스위치 |
| 요구사항 | 설명 | 설계 방향 |
|---|---|---|
| 읽기 안정성 (Read Stability) | 읽기 중 비트라인 전하가 셀로 역류해 값이 뒤집히는 Read Disturb를 방지해야 함 | 액세스 TR을 약하게, 셀을 강하게 |
| 쓰기 용이성 (Writability) | 비트라인 드라이버가 셀 래치를 쉽게 뒤집을 수 있어야 함 | 액세스 TR을 강하게, 셀을 약하게 |
| 항목 | 6T SRAM | 1T1C DRAM |
|---|---|---|
| 셀 구성 | 트랜지스터 6개 | 트랜지스터 1 + 커패시터 1 |
| 저장 방식 | 교차결합 인버터 래치 (능동) | 커패시터 전하 (수동) |
| Refresh | 불필요 (정적) | 필요 (전하 누설) |
| 읽기 | 비파괴적 | 파괴적 (restore 필요) |
| 속도 | 매우 빠름 (수 ns 이하) | 느림 (수십 ns) |
| 셀 면적/비용 | 큼 / 높음 | 작음 / 낮음 |
| 밀도 | 낮음 | 높음 |
| 주 용도 | CPU 캐시 (L1~L3), 레지스터 | 메인 메모리 |
5. 장단점
장점
-
Refresh가 필요 없어 제어가 단순하고, 전원이 유지되는 한 바로 접근할 수 있습니다.
-
비파괴적 읽기가 가능해 읽은 뒤 복구 동작이 필요 없습니다.
-
캐시처럼 작은 용량에서는 매우 낮은 지연과 높은 예측성을 제공합니다.
단점
-
셀당 트랜지스터 수가 많아 면적과 비용이 큽니다.
-
공정 변동성과 누설 전류가 커질수록 SNM과 쓰기 여유를 동시에 확보하기 어렵습니다.
-
대용량화에 불리해 메인 메모리 역할에는 적합하지 않습니다.
6. 관련 기술
-
../circuit/circuit_0005_mosfet_operation_principles.html- PMOS/NMOS 동작과 인버터 구성 -
../circuit/circuit_pmos_nmos_cmos_analysis.html- CMOS 인버터와 피드백 구조 -
../circuit/circuit_0015_memory_hierarchy.html- 캐시 계층과 메모리 계층 위치 -
../dram/dram_0005_1t1c_dram_analysis.html- DRAM 셀과 6T SRAM의 차이 -
Static random-access memory - 6T 셀 구조, 읽기/쓰기, 변형 셀 개요
-
Memory refresh - DRAM과의 대비 개념
-
CPU cache - SRAM의 대표적 사용처
7. 핵심 정리
-
6T SRAM은 교차결합 인버터 2개와 액세스 트랜지스터 2개로 구성된 양안정 셀입니다.
-
읽기는 프리차지된 비트라인과 차동 센스 앰프로 처리되며, 셀 상태를 바꾸지 않는 것이 핵심입니다.
-
읽기 안정성과 쓰기 용이성은 서로 충돌하므로 트랜지스터 비율과 배열 주변 회로를 함께 맞춰야 합니다.
-
면적과 비용은 크지만, 빠른 접근과 예측 가능한 지연이 필요할 때 SRAM이 가장 적합합니다.