본문 바로가기

Electronic

DRAM이란?DRAM동작

DRAM 동작


 

Write, read 동작 시 word line 에 bias 를 인가하여 transistor 를 on 상태로 만들어줌(Active command)

■ Write

Bit line 에 VDD를 인가하면 전자가 TR 에 주입되어 capacitor 에 charge 되면서 1의 정보를 저장함

반대로 0V 를 인가하면 capacitor 의 전하는 discharge 되면서 0의 정보가 저장됨

WL=high, BL=high : capacitor charge, data 1 write

WL=high, BL=low : capacitor discharge, data 0 write

 


 

■ Read

Bit line 에 ½*VDD 를 인가(pre-charge)하여 bit line 의 전위차의 변화를 sense amplifier 로 비교 및 증폭하여 data 가 0인지 1인지 판단함

전위차가 증가하면 1, 감소하면 0 의 data 를 read 함

WL=high, BL=1/2*VDD 일 때 BL 이 1/2*VDD 보다 증가 : data 1 read

WL=high, BL=1/2*VDD 일 때 BL 이 1/2*VDD 보다 감소 : data 0 read


■ Refresh

Capacitor 특성상 저장된 전하는 금방 방전되기 때문에 주기적으로 전하를 채워주는 refresh 과정을 반복하여 data 값을 유지시켜주는 것

Refresh 과정 :

1) 특정 주기에 따라 bank 내의 word line 중 하나가 선택됨

2) word line 에 달린 TR gate 에 VDD 전압이 걸리면서 capacitor 와 bit line 간 전자가 이동할 수 있게 됨

3) 방전된 capacitor 와 bit line 사이에 charge sharing 이 발생함

4) Sense amp 에서 ½*VDD 인 bit line 과 비교 후 1(VDD)로 증폭

5) 증폭된 전자는 capacitor 에 재 충전됨

* Refresh 동작에 의해 추가적인 전력이 소모되고 refresh 동안 같은 word line 에 연결된 cell 들이

다른 동작을 수행할 수 없는 공백기가 생기는 문제가 발생함

; refresh 주기는 길수록 좋음(자주 일어나지 않을 수록 좋음)


Sense amplifier

Reading 과정에서 bit line 의 전압 변화를 감지하는 역할을 하며 reading 으로 인해 손상된 data 를 refresh 하는 역할도 함

Bit line 은 ½*VDD 으로 고정된 전압을 가지기 때문에 이 전압 보다 크면(1/2*VDD+∆V) 1, 작으면(1/2*VDD-∆V) 0으로 만들어주는 역할을 함


Pre-charge

Data 를 read 하기 전 bit line 에 ½*VDD 를 인가하여 capacitor 의 전하 상태를 미리 파악하는 과정


Pre-fetch

Memory access 속도를 향상시키기 위해 Memory controller 가 data 를 요청하기 전에 미리 data 를 메모리로 가져오는 과정

다음 access 에 필요한 data 를 미리 load 하여 access delay 를 최소화할 수 있음

Memory 가 작동할 때 한 bit 씩 읽어 들이는 대신 4개, 8개의 cell 을 동시에 작동시켜 4bit(4n), 8bit(8n) 씩 한번에 읽어들이는 방식


ODT(On Die Termination)

DRAM 내부 termination 저항을 변경하여 여러개의 DRAM 간의 신호 반사를 예방함

Read 나 write 동작 동안 안쓰는 메모리 모듈은 low impedance, access 중인 모듈은 high impedance 로 유지해야 반송파를 만들지 않아 SI 측면에서 유리함


ZQ Calibration

SOC(controller) 와 DRAM 간의 impedance mismatch 를 감소시키기 위해 impedance 를 보정하는 것

신호 반사와 impedance 불연속을 줄여 시스템 안정에 기여함 외부에 reference 저항 240ohm 을 연결해주어야 함


DBI(Data Bus Inversion)

Data bus 의 전력소모를 줄이고 신호 noise 를 감소시키는데 사용됨

Low(0) or High(1) 의 개수에 따라 전력을 덜 쓸 수 있도록 data 를 전송하기 전에 bit 를 inversion 시켜서 보냄


DBI(Data Bus Inversion)

Data bus 의 전력소모를 줄이고 신호 noise 를 감소시키는데 사용됨

Low(0) or High(1) 의 개수에 따라 전력을 덜 쓸 수 있도록 data 를 전송하기 전에 bit 를 inversion 시켜서 보냄

DDR3 의 경우 termination 저항이 VDD 와 GND 양쪽에 연결되어 있기 때문에 driver 가 1을 전송할 때나(빨간선) 0을 전송할 때(초록색) 모두 VDD 와 GND 사이에 전류가 흐르게 되어 전력 소모가 발생함

반면 DDR4 의 경우 termination 저항이 VDD 에만 연결되어 있기 때문에 driver 가 0을 전송할 때는 전류가 흐르지만(초록색) 1을 전송할 때는 전류가 흐르지 않음(빨간점선)

DBI 는 1을 전송할 때 전력소모가 작은 성질을 이용하여 8bit data 마다 DBI 사용 여부를 나타내는 DBI_n pin 을 하나 더 두고 8bit data 상 0의 개수가 1의 개수보다 더 많을 경우 0과 1을 뒤집어 보내고 DBI_n=0 으로 표시함

이렇게 하면 data pin 에서 항상 0을 전송하는 경우보다 1을 전송하는 경우가 많아지므로 data 전송 시 전력 소모를 줄일 수 있음

DM(Data Mask)

Data 가 Read 되거나 write 될 때 각 data bit 와 함께 data mask bit 도 함께 전송됨

이 data mask 신호는 해당 data bit 가 유효한지 여부를 나타냄

Data mask 를 사용하면 data 전송 중에 발생할 수 있는 오류를 식별하고 처리하여 시스템의 안정성을 향상시킬 수 있음

'Electronic' 카테고리의 다른 글

DRAM이란?DRAM관련 용어  (1) 2024.03.25
DRAM이란?DRAM구성,cell 구조  (0) 2024.03.20