Introduce
DRAM 디바이스 상에서 저장 캐패시터에 저장된 작은 전하를 디지털 값으로 바꾸기 위한 기능은 차동 sense amp에 의해 수행됩니다. 차동 sense amp는 bitline 쌍의 전압 값을 입력으로 받아들인 후 그 차이를 감지하고, 이를 한쪽으로 증폭시키는 역할을 합니다. 최근 DRAM 디바이스에서 sense amplifer는 3가지 일반적인 기능을 가집니다.
DRAM디바이스 상에서 sense amplifier의 기능
전압의 변화 감지
액세스 트랜지스터가 켜지고 저장 커패시터의 전하가 비트라인 상에 놓였을 때 발생하는 작은 전압의 변화를 감지하는 것입니다. sense amp는 분리된 bitline에 공급되는 기준 전압과 비트라인상의 전압을 비교하여 이 차이를 최대로 증폭시켜 저장된 값이 디지털 1혹은 0으로 인식할 수 있게 합니다.
셀의 값 저장
두번째 기능은 비트라인상의 전압을 감지하고 증폭시킨 후 셀의 값을 다시 저장하는 것입니다. 액세스 트랜지스터가 켜지는 것은 저장 캐패시터가 비트라인과 저장된 전하를 공유하도록 하는 것입니다. 하지만 저장 cell로부터 전하를 공유하는 과정은 저장 셀의 전하를 방전하게 합니다. 전하 공유 과정이 일어난 후 저장 셀의 전압과 비트라인의 전압은 거의 같고, 이 전압 값은 다른 리드 동작에서 사용할 수 없습니다. 결과적으로 감지와 증폭 동작이 수행된 후, sense amp는 증폭된 전압 값을 저장 셀에 복원시켜야만 합니다.
임시 데이터 저장
세번째 기능은 임시 데이터 저장요소로 쓰이는 것입니다. 즉, 저장 셀에 저장된 데이터 값이 감지되고 증폭된 후 sense amp는 DRAM 어레이가 다른 과정을 위해 충전되고 준비될 때까지 감지한 데이터 값을 가지고 있습니다. 이러한 방법으로 셀의 같은 row에 있는 데이터는 셀 그 자체의 반복된 row access없이 바로 sense amp로부터 읽어 들일 수 있습니다. 이러한 역할에서 sense amp는 데이터의 전체 로우를 임시 저장하는 row buffer역할을 효과적으로 수행합니다. 또한 무한한 시간까지 가지고 있을지 일정 시간이 지나면 버릴지 정하는 것도 성능과 파워소모 사이의 최적의 trade-off를 찾는 것은 시스템상에서 중요한 일입니다.
기본적인 sense amplifier의 회로도
EQ(equalization)시그널 라인은 전압 equalization회로를 컨트롤합니다. 이 회로의 기능은 비트라인 쌍의 전압 값이 가능한 거의 같게 되게 하기 위함입니다. 차동 sense amp는 비트라인 쌍의 전압차이를 증폭시키도록 설계되었기 때문에 액세스 트랜지스터가 동작하기 이전에 비트라인 쌍에 전압 값이 차이를 보이면 sense amp의 효율성이 저하될 수 있습니다.
sense amp의 핵심은 sensing circuit(감지회로)라고 되어 있는 4개의 서로 연결되어있는 트랜지스터들 입니다. 감지회로는 SAN(Sense-Amplifer N-Fet Control)과 SAP(Sense-Amplifier P-Fet Control) 감지 시그널이 활성화 되었을때의 비트라인의 각각의 전압 값에 따라 비트라인 쌍을 서로 극단적인 전압 값으로 구동하기 위해 필수적을 bi-stable회로여야 합니다. SAN시그널은 감지회로의 NFet의 활성화를 컨트롤하고, SAP는 PFet의 활성화를 컨트롤합니다. SAN과 SAP시그널이 인가된 후, 비트라인은 전체 전압 레벨로 구동됩니다. 그 다음에 CSL(column-select line)은 출력 트랜지스터를 켜고, 완전히 구동된 전압을 출력에 도달하도록 하고, DRAM디바이스 바깥으로 읽히게 합니다. 동시에 액세스된 셀의 트랜지스터는 열려 있는 상태로 유지하고, 이제 비트라인상의 완전히 구동된 전압은 저장 캐패시터에 다시 충전됩니다. 마지막으로 쓰기동작의 경우 CSL과 WE(Write Enable)시그널은 입력 쓰기 드라이버가 비트라인 전압과 sense amp를 오버드라이브하는 큰 전류를 공급하게 합니다. sense amp가 새로운 데이터 값을 구동되면 그 값을 가지고 있게 되고 계속 열려 있는 액세스 트랜지스터를 통해 DRAM셀 내로 보냅니다.
기본적인 sense amplifier 동작
액세스 트랜지스터 간에 놓일 수 있는 가장 큰 전압은 V(gs) - V(t)입니다. (V(t)는 액새스 트랜지스터의 문턱전압) 워드라인전압을 V(cc)+V(t)를 오버드라이브 함으로써 저장 캐패시터는 감지 동작의 복원 구간에서 전체 전압(최대Vcc)로 충전될 수 있습니다. 다음 그림은 차동 sense amp의 감지 동작 4가지 구간을 나타낸 것입니다. pre-charge, access, sense, restore동작이 있습니다.
precharge라고 하는 위 그림은 DRAM 어레이로부터 데이터를 읽어 들이는 과정이 시작되기 전에 DRAM어레이의 비트라인을 기준 전압인 V(ref)로 미리 충전시켜 놓습니다. V(ref)=1/2(V(cc)) equalization회로는 기준 전압을 비트라인에 전달하기 위해 활성됩니다.
cell access라고 하는 위 그림은 워드라인에 전압이 적용되면 V(cc)보다 최소 V(t)만큼 높은 전압을 워드라인에 오버드라이브합니다. 워드라인의 전압은 액세스 트랜지스터를 활성화시키고, 선택된 저장 셀들을 각각의 비트라인에 가지고 있던 전하를 방전합니다. 위 경우 저장 셀의 전압은 디지털 값인 1을 나타내기 때문에 전하 공유과정은 비트라인상의 전압을 V(ref)에서 V(ref)+a로 조금 올라가게 합니다. 그 다음 비트라인상의 전압이 변하게 되면 이 전압은 서로 연결되어 있는 감지 회로의 동작에 영향을 줍니다. 그림에 묘사된것 처럼 비트라인의 약간 더 높은 전압이 아래쪽의 NFet을 위 쪽의 NFet보다 더 전도가 잘 되게 구동시킵니다. 반대로 작은 양의 전압차이는 아래쪽의 PFet를 위쪽의 PFet보다 전도가 덜 되게 구동시킵니다. 그래서 비트라인 전압은 센싱 구간에서 센싱 회로를 바이어스 합니다.(???)
sense라고 하는 구간은 작은 전압 차이가 서로 연결된 감지회로에 바이어스로 구동되면, DRAM 디바이스의 NFet sense amplifier 컨트롤 시그널인 SAN이 켜지고 아래쪽 비트라인의 전압을 낮추게 됩니다. 그림은 SAN이 켜지면 더 전도가 잘되는 아래쪽의 NFet은 SAN 시그널이 아래쪽의 비트라인의 전압을 V(ref)에서 그라운드로 낮추도록 하는 것을 보여줍니다. 유사하게 PFet sense amplifier 컨트롤 시그널인 SAP는 비트라인을 디지털 값 1에 해당하는 완전히 복원된 전압 값으로 구동시킵니다. 그러므로 SAN과 SAP시그널은 sense amplifier회로를 각각 최대 전압과 최소 전압 값으로 구동되게 합니다.
마지막으로 리스토어라고 하는 위 그림은 비트라인이 각각 최대 혹은 최소 전압 값으로 구동된후 오버드라이브된 워드라인이 활성화된 채로 유지되고, 완전히 구동된 비트라인 전압은 액세스 트랜지스터를 통해서 저장 캐패시터에 전하를 복원시킵니다. 동시에 비트라인의 전압값은 요청된 데이터를 공급하기위해 sense amplifier 바깥으로 구동되어 나옵니다. 이러한 방법으로 DRAM row의 저장 값들은 row복원과정과 동시에 access될 수 있습니다.
기본적인 sense amplifier 동작의 전압 파형
위 그림은 컨트롤 시그널과 비트라인의 전압 파형을 보여주고 있습니다. 그림에 표시되어 있는 4개의 구간들은 위쪽에 설명한 4개의 구간에 대응됩니다. 1/2V(cc)로 사전충전되는것을 확인할 수 있고, 구간1에서 워드라인 전압은 Vcc보다 큰 전압으로 오버드라이브되며, DRAM 셀은 저장된 저장된 전하를 비트라인에 방전하면서 비트라인의 전압을 약간 올리는것을 확인할 수 있습니다. 구간 2에서 감지 컨트롤 시그널인 SAN과 SAP가 연속적으로 활성화되며, 비트라인의 전압을 전체 전압으로 구동시킵니다. 그 다음 구간3에서 비트라인의 전압은 DRAM셀의 전하를 복원시킵니다.
또한 그림에서 t(RCD)와 t(RAS)라는 2개의 중요한 타이밍 변수들 사이의 관계를 나타냅니다. t(RCD) 후[센싱동작이 완료된 후]에 데이터는 DRAM 디바이스의 데이터 I/O를 통해 읽을 수 있습니다. 그러나 활성화 과정의 시작부터 t(RCD)의 시간이 지난 후 데이터는 아직 DRAM셀에 복원되지 않았습니다. 활성화 과정의 시작부터 t(RAS)의 시간이 지난후 데이터 복원 동작이 완료되고, t(RP)의 시간이 지난 후 전체 row cycle을 끝내는 프리차지 명령어를 받아들일 준비가 됨을 보여줍니다.
DRAM 어레이 내에 쓰기
위 그림은 write 명령어가 입력될 경우 간략화된 타이밍 특성을 보여줍니다. row active 명령어의 일부로서 데이터는 자동적으로 sense amp로부터 DRAM셀에 복원됩니다. 그러나 DRAM 디바이스의 write 명령어의 경우 메모리 컨트롤러부터 써진 데이터가 I/O버퍼를 통해 버퍼되고 sense amp와 DRAM 셀에 덮어 씌어집니다. 결과적으로 write 명령어의 경우는 write recovery구간에 의해 restore구간이 늘어난 경우라고 생각할 수 있습니다. 쓰기 데이터가 sense amp에 오버라이드되고 DRAM셀 안에 써지는 데 필요한 시간 주기는 write recovery라 하고 t(WR)이라 표현합니다.
'Computer Architecture > 메모리 시스템' 카테고리의 다른 글
[DRAM] DRAM 디바이스 종류 (0) | 2022.06.08 |
---|---|
[DRAM] DRAM디바이스 컨트롤 로직 (0) | 2022.06.08 |
[DRAM] 디코더와 리던던시 (0) | 2022.06.08 |
[DRAM] RAM 어레이 구조 (0) | 2022.06.08 |
[DRAM] DRAM 디바이스 조직과 저장 셀 (0) | 2022.06.08 |
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!