728x90

오늘 교육에서는 DRAM의 구조와 동작원리에 대해서 다루어보도록 하겠습니다.

DDR5 D램 모듈 사진출처 : 삼성전자(좌), SK하이닉스 (우)


[질문 1]. DRAM에 대해서 설명해보세요.

DRAM은 Dynamic Acess Memory의 약자로, 정보를 읽을 때 순차적으로 읽는 것이 아닌, 랜덤하게 읽을 수 있기 때문에 데이터의 읽기/쓰기 속도가 매우 빠른 특성을 가지는 메모리입니다. IT 기기 내에서 정보 내에서 각종 데이터를 기억하고 저장하는 역할을 수행합니다. 다양한 RAM 중에서 현재 가장 주력적으로 사용되는 DRAM은 1 Transistor + 1 Capacitor의 단순한 구조를 가지며, 용량이 크고 속도가 매우 빨라 컴퓨터나 모바일 기기에서 중앙처리장치인 CPU의 연산을 돕는 고속 메모리로 사용됩니다.

[꼬리 1-1]. DRAM의 구성에 대해서 설명해보세요.

DRAM은 크게 3가지 영역으로 구성됩니다. 정보를 저장하는 셀 영역과 셀 영역을 도와주는 주변회로, 그리고 셀과 주변회로, 셀들 간의 연결을 돕는 interconnect 영역이 존재합니다. DRAM의 핵심은 바로 셀 영역입니다. 셀 영역은 DRAM의 50-60%을 차지하며, 0 또는 1의 디지털 신호를 저장하는 공간입니다. 최근 512GB DDR5가 소개되면서 512GB는 5,120억개의 셀이 존재하고 이는 5,120억개의 0고 1을 저장할 수 있다는 의미입니다. 그만큼 메모리 기술이 발전하면서 고용량의 메모리 성능 향상을 달성할 수 있게 됐습니다.

출처 : 삼성전자


[꼬리 1-2]. DRAM의 셀 구조에 대해서 설명해보세요.

DRAM의 셀은 0과 1의 디지털 신호를 저장하는 영역입니다. 하나의 셀은 1Transistor+1Capacitor로 구성되어 있어 단순한 구조를 가지는 것이 특징입니다. DRAM은 데이터를 저장하는 Capacitor와 0 또는 1의 피트에 관여하는 비트 라인으로 셀에 정보를 쓰거나 저장된 정보를 읽을 때 필요한 비트라인(Bit line, BL)과 Transistor의 on/off를 위해 게이트와 연결된 워드라인(Word line, WL) 그리고 셀의 동작을 제어하는 Transistor가 존재합니다. 

DRAM의 구조를 Transistor, TR의 관점에서 보면 transistor의 on/off 스위치를 위해 Word line이 TR의 gate와 연결되어 있습니다. 그리고 Source에는 Bit line이 Drain에는 데이터 저장소인 Capacitor와 연결되어 있습니다.

출처 : 삼성전자, Applied Materials 


[꼬리 1-3]. DRAM에서 data를 읽고 쓰는 원리에 대해서 설명해보세요.

DRAM에서 Write와 Read 과정 모두 word line에 바이어스를 인가하여 transistor를 'ON' 상태로 만들어줍니다. Write 과정은 Bit line에 Vdd를 인가하면 전자가 TR 채널에 주입되어 capacitor에 축적되면서 '1'에 정보를 저장합니다. 반대로 0V를 인가하게 되면 Capacitor의 전하는 discharge 되면서 '0'의 정보가 저장됩니다. DRAM의 Read 과정은 Bit line에 1/2 Vdd를 인가하여 bit line의 전위차의 변화를 sense amplifier로 비교 및 값을 증폭하여 data가 '0'인지 '1'인지 판단합니다. Bit line에 1/2Vdd를 인가했을 때, Bit line에 전위가차 증가하면 '1'을, 감소하면 '0'의 data를 read합니다.

[세부설명] DRAM의 동작원리

① Transistor, TR

DRAM 셀 내부의 transistor는 capacitor의 전하를 저장하고 빼내는 스위치 역할을 합니다. transistor가 ON이 되면 전위차에 의해 전자가 Transistor 채널로 주입되면서 capacitor에 전자를 축적시킵니다. transistor가 OFF가 되면 반전채널층이 사라지면서 전기적으로 단절됩니다. 
② Word Line, WL & Bit Line, BL
Transistor의 on/off 를 제어하는 기능으로 TR의 gate에 연결되어 있습니다. WL에 바이어스가 인가되면 TR이 ON되면서 채널층이 형성되어 TR source와 연결되어 있는 BL과의 전위차에 의해 capacitor의 축적되는 전하량을 제어하게 됩니다.
③ Capacitor
Capacitor는 전하를 모으는 공간입니다. capacitor에 모인 전하량을 계산하여 0과 1의 비트 정보를 판단하게 됩니다. 

■ Data Write
WL=high, B=high 일 때, Capacitor=charge, → data '1'을 write
WL=high, BL=low 일 떄, Capacitor=discharge, → data '0'을 write 

DRAM에 data를 write 하는 방법은 간단합니다. Word line에 high 신호를 인가할 경우, Transistor는 'ON' 상태가 되면서 반전층 채널이 형성됩니다. 이때, Bit line에 인가되는 전위에 따라 Capacitor의 전하를 제어하여 '1' or '0'을 writing 할 수 있습니다. capacitor는 Ground에 물려있기 때문에 Bit line이 Vdd를 인가해주면 전자가 채널에 주입되어 Capacitor에 축적되므로 '1'의 정보를 저장합니다. 반대로 Bit line에 0V를 인가하게 되면 capacitor 표면에 축적된 전자가 채널을 타고 discharge 되므로 '0'의 정보가 저장됩니다. 

■ Data Read
WL=high, B=1/2Vdd 일 때, BL이 1/2 VDD 보다 증가하면 → data '1'을 read
WL=high, BL=1/2Vdd일 떄, BL이 1/2 VDD 보다 감소하면 data '0'을 read 

DRAM의 read 동작은 조금 복잡할 수 있으니 순차적으로 동작에 대해서 알아보도록 하겠습니다. 우선 중요한 점은 capacitor의 축적된 전하가 '0'인지 '1'인지 구분하는 과정이 요구된다는 것입니다. 우선 Data write와 마찬가지로 Word line에 high 신호를 인가해줌으로써 Transistor를 'ON'상태로 만들어줍니다. 그리고 write 과정에서 '1'은 Vdd, '0'은 0V를 인가했던 것과 달리 Bit line에 1/2 Vdd를 인가해줍니다. 1/2 Vdd를 인가해주는 이유는 capacitor의 '0' 또는 '1' 전하 정보가 저장되어 있고, transistor가 'ON'된 상태에서 1/2 Vdd를 인가해주면 capacitor의 전하 이동에 따라 1/2 Vdd가 미세하게 변하기 때문입니다. DRAM의 read는 이러한 bit line에 미세한 전위차의 변화를 sense amplifier로 증폭시켜 값을 비교함으로써 셀 내에 저장된 data가 '0' 인지 '1'인지 판단합니다.

Bit line에 1/2 Vdd가 인가된 상태에서, capacitor에 '1'의 정보가 저장되어 있다면, 낮은 전자가 채널을 통해 bit line으로 빠져나오면서 bit line의 전위차가 1/2 Vdd보다 증가하게 될 것입니다. 반대로 capacitor에 '0'의 정보가 저장되어 있담뎐, bit line에 전자가 capacitor로 이동하게 되면서 bit line의 전위차는 1/2 Vdd보다 감소하게 될 것입니다. 

이렇게 Bit line의 전위차의 증가/감소 변화를 측정함으로써 메모리 내에 전하 정보를 Read 할 수 있게 됩니다.

[꼬리 1-4]. DRAM의 특징과 이슈에 대해서 설명해보세요.

DRAM은 Capacitor에 전하를 저장함으로써 data를 기록하는 메모리 장치입니다. 하지만 capacitor는 완전하게 전기적으로 단절된 것이 아니기 때문에 조금씩 누설이 발생하고 이는 data 손실로 이어지게 됩니다. 이를 방지하기 위해서 주기적으로 capacitor에 전하를 채워주는 refresh 동작이 요구됩니다. data를 읽기 전에 bit line에 1/2Vdd를 인가함으로써 capacitor의 전하정보를 미리 파악하고 유실된 전하를 re-fresh 하게 됩니다. 하지만 DRAM의 re-fresh 동안에 같은 word line에 연결된 셀들이 다른 동작을 수행할 수 없는 공백기가 생기는 이슈가 발생합니다. 이는 고집적도의 소자에서 DRAM 대역폭, 즉, CPU에 정보를 전달하는 데이터 속도에 안 좋은 영향을 미칩니다.

[세부 설명] '휘발성 메모리, DRAM'

여러분들은 이미 DRAM이 휘발성 메모리인 것을 알고 계실 것입니다. 휘발성 메모리는 전원이 off 됐을 때, 저장된 데이터도 모두 사라지는 것이 특징이고, 대표적인 휘발성 메모리가 DRAM입니다. 낸드플래시는 Floating gate라는 trap 층에 전하를 저장하는 원리로 절연막에 의해 전하가 갇혀 있기 때문에 전원을 끊어도 전하가 discharge되는 현상이 발생하지 않습니다. 그래서 대표적인 비휘발성 메모리에는 낸드플래시가 있죠.

하지만 DRAM은 전원이 OFF 되면 writing 된 정보가 빠져나갑니다. transistor가 off 되어 있음에도 불구하고, 줄줄 전하가 세어 나갑니다. 여러분들은 '반도체 소자' 카테고리에서 short channel effect에 대해서 이미 공부하셨을 것입니다.

소자 교육에서 channel 이 짧아지면서 기생 혹은 depletion capacitance의 증가로 gate 구동력이 떨어지면서 subthreshold current가 증가하는 이슈에 대해서 배웠습니다. subthreshold 영역은 threshold voltage, Vt 이하의 영역, 즉 Transistor가 off 된 상태에서의 Leakage current가 증가한다는 것입니다. 그래서 소자 dimension이 더욱 작아지면서 DRAM 셀 내의 capacitor의 저장된 전하는 줄줄 세어 나가는 정도가 심해집니다. 

그렇기 때문에 DRAM은 pre-charge와 refresh의 과정이 요구됩니다.

① Pre-charge는 비트라인에 1/2 Vdd를 인가하여 Data read 전에 capacitor의 전하상태를 파악하는 과정입니다. 
② Refresh는 누설에 의해 빠져나간 전자를 다시 채워주는 작업입니다.

pre-charge와 refresh 작업은 capacitor의 전하정보를 파악하는 bit line의 역할이 매우 중요합니다. pre-charge는 말 그대로 data를 읽기 전에 Bit line이 capacitor의 전하 상태를 파악하는 단계입니다. 정보를 읽기 '전'에 capacitor의 전하상태를 파악함으로써 안정적인 동작을 도모하는 과정입니다. bit line에 1/2 Vdd를 인가함으로써 진행됩니다. 또한 Bit line은 기존 저장된 정보가 손상되는 속도를 늦추는 정보보유시간, retention 특성을 향상시키기도 합니다. 1/2Vdd를 지속적으로 인가해줌으로써 전하의 손실을 줄이고 저장된 정보를 유지할 수 있는 최선의 방법입니다. 그리고, 손실된 기존 정보를 수시로 재충전해주는 re-fresh 작업을 합니다.

DRAM에서는 이렇게 전하의 저장/유실/복원의 과정을 매순간 빠르게 반복합니다. 하지만 re-fresh를 한다고 반드시 좋은 것은 아닙니다. capacitor에 상태를 파악하고 re-fresh하는 동안에는 동일한 word line에 연결되어 있는 셀들은 다른 동작을 수행할 수 없기 때문에, 셀 주변에서 원치 않는 공백이 생기게 됩니다. 

한 두개의 셀에서 공백이 발생하면 상관없지만, DRAM은 점점 더 고용량으로 수백, 수천 억개의 셀이 구성되면서 무시할 수준이 아닙니다. re-fresh로 발생한 손실은 D램의 '대역폭', 즉, CPU에 정보를 전달하는 데이터 속도와 처리량에 부정적인 영향을 미칩니다. 
반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기