1. 명령어(command) 발행

  • 명령어 발행: 메모리 컨트롤러가 DRAM에 특정 명령어를 발행합니다. 예를 들어, 데이터 읽기를 원할 경우 READ 명령어를 발행합니다. 이 명령어에는 특정 주소가 포함되어 있어야 합니다.

2. 배열/셀(array/cell) 선택

  • 행 활성화 (ACTIVATE): 발행된 명령어에 따라 특정 행(row)이 활성화됩니다. 이 과정에서 주소가 사용되며, 해당 행에 있는 데이터가 DRAM의 비트라인으로 로드됩니다.
  • 비트라인(bit line): 활성화된 행의 데이터가 비트라인으로 전송되며, 이 데이터는 이후 읽기 또는 쓰기 작업을 위해 준비됩니다.

3. 드라이버(driver) 활성화

  • 드라이버 활성화: 비트라인의 신호를 받아 데이터 전송을 위한 드라이버가 활성화됩니다. 이 드라이버는 선택된 비트라인의 데이터를 외부로 전송하거나 외부에서 들어오는 데이터를 비트라인에 기록합니다.

4. 읽기/쓰기(W/R) 수행

  • 쓰기(W): 드라이버가 외부에서 들어오는 데이터를 비트라인을 통해 활성화된 셀에 기록합니다. 이 과정에서 셀의 전하가 변경되어 새로운 데이터가 저장됩니다.
  • 읽기(R): 드라이버는 비트라인으로부터 활성화된 셀의 데이터를 읽어옵니다. 이 데이터는 메모리 컨트롤러로 전송되어 최종적으로 CPU나 다른 장치에 전달됩니다.

 

http://qdpma.com/ServerSystems/DRAM.html

'CPU ARCHITECTURE1 > DRAM' 카테고리의 다른 글

05. DRAM Signals  (0) 2024.10.02
04. DRAM Structure  (0) 2024.10.02
03. DRAM Array  (0) 2024.10.02
02. DRAM Write & Read  (0) 2024.10.02
01. DRAM Cell  (0) 2024.10.02

DRAM에서 CS (Chip Select), ACT (Activate), RAS (Row Address Strobe), CAS (Column Address Strobe), **WE (Write Enable)**는 메모리 액세스를 제어하는 중요한 신호들입니다. 이 신호들은 메모리 컨트롤러가 DRAM에 데이터를 읽거나 쓸 때 사용되며, 각 신호는 특정 동작을 수행하게 합니다. 아래에서 각 신호의 기능을 자세히 설명하겠습니다.

1. CS (Chip Select)

  • 설명: **Chip Select (CS)**는 메모리 컨트롤러가 특정 DRAM 모듈을 선택할 때 사용되는 신호입니다.
  • 동작:
    • CS가 활성화되면 해당 DRAM 모듈이 선택되어 명령어를 처리할 준비가 됩니다.
    • DRAM이 여러 개의 모듈로 구성된 경우, 특정 모듈을 선택하는 데 사용됩니다.
    • 활성화 신호는 일반적으로 Low(0) 상태로, CSLow일 때만 나머지 명령들이 유효하게 동작합니다.

주요 특징:

  • CS = 0: 해당 DRAM이 선택되어 명령이 유효함.
  • CS = 1: DRAM이 선택되지 않으며, 명령이 무시됨.

2. ACT (Activate)

  • 설명: **ACT (Activate)**는 특정 **행(Row)**을 활성화하는 명령으로, DRAM에서 데이터를 읽거나 쓸 준비를 하기 위한 첫 번째 단계입니다.
  • 동작:
    • ACT 명령을 통해 DRAM 컨트롤러는 특정 **행 주소(Row Address)**를 지정하고, 해당 행의 모든 셀을 **비트 라인(Bit Line)**에 연결하여 데이터를 **행 버퍼(Row Buffer)**에 로드합니다.
    • 이 과정은 **워드 라인(Word Line)**을 활성화하여 이루어지며, 이후 READWRITE 명령이 행 버퍼에 로드된 데이터에서 수행됩니다.

주요 특징:

  • ACT 명령은 읽기 또는 쓰기 전에 필수적으로 수행되며, 새로운 행을 선택할 때마다 필요한 과정입니다.
  • ACT를 통해 DRAM은 특정 행의 데이터를 준비하고, 이후 CAS와 함께 데이터 접근을 할 수 있게 합니다.

3. RAS (Row Address Strobe)

  • 설명: **RAS (Row Address Strobe)**는 **행 주소(Row Address)**가 유효하다는 것을 DRAM에 알리는 신호입니다. RAS는 주로 **행(Row)**과 관련된 동작을 제어합니다.
  • 동작:
    • RAS = Low일 때, 메모리 컨트롤러는 특정 행 주소를 DRAM에 전달하며, 이로써 해당 행의 데이터를 처리할 준비를 합니다.
    • RASACTIVATE 명령과 밀접하게 연관되어 있으며, 주로 특정 행을 활성화하는 데 사용됩니다.

주요 특징:

  • RAS = Low: 행 주소가 유효하며, DRAM이 해당 행을 활성화함.
  • RAS = High: 행 주소 신호가 유효하지 않으며, 행 동작이 비활성화됨.

4. CAS (Column Address Strobe)

  • 설명: **CAS (Column Address Strobe)**는 **열 주소(Column Address)**가 유효하다는 것을 DRAM에 알리는 신호입니다. CAS는 주로 **열(Column)**과 관련된 동작을 제어합니다.
  • 동작:
    • CAS = Low일 때, 메모리 컨트롤러는 특정 열 주소를 DRAM에 전달하며, 행 버퍼에 로드된 데이터 중 해당 열의 데이터를 읽거나 쓸 준비를 합니다.
    • READWRITE 명령은 CAS와 함께 특정 열 데이터를 처리하게 됩니다.

주요 특징:

  • CAS = Low: 열 주소가 유효하며, DRAM이 해당 열의 데이터를 처리함.
  • CAS = High: 열 주소 신호가 유효하지 않으며, 열 동작이 비활성화됨.

5. WE (Write Enable)

  • 설명: **WE (Write Enable)**는 DRAM에서 데이터를 쓸 때 활성화되는 신호입니다. WE는 주로 쓰기 동작과 관련된 명령을 제어합니다.
  • 동작:
    • WE = Low일 때, WRITE 명령이 수행되며, 메모리 컨트롤러가 데이터 값을 DRAM에 쓰기 시작합니다.
    • WE = High일 때, 읽기 동작이 수행되며, 데이터가 DRAM에서 출력됩니다.

주요 특징:

  • WE = Low: 쓰기 동작이 활성화되어, DRAM에 데이터를 기록함.
  • WE = High: 읽기 동작이 활성화되어, DRAM에서 데이터를 읽음.

DRAM 주요 신호들의 상호작용:

  1. 데이터 읽기(Read):
    • CS가 활성화되고, ACTIVATE 명령으로 RAS = Low가 되어 특정 행이 활성화됩니다.
    • 이후 CAS = Low가 되어 열 주소가 전달되면, WE = High 상태에서 데이터를 읽어옵니다.
  2. 데이터 쓰기(Write):
    • CS가 활성화되고, ACTIVATE 명령으로 RAS = Low 상태에서 특정 행이 선택됩니다.
    • CAS = Low 상태에서 열 주소가 지정되며, WE = Low 상태에서 데이터를 쓰는 동작이 수행됩니다.

'CPU ARCHITECTURE1 > DRAM' 카테고리의 다른 글

07. DRAM CMD FLOW  (0) 2024.10.02
04. DRAM Structure  (0) 2024.10.02
03. DRAM Array  (0) 2024.10.02
02. DRAM Write & Read  (0) 2024.10.02
01. DRAM Cell  (0) 2024.10.02

DRAM(Dynamic Random Access Memory)의 구조는 셀 구조, 배열 구조, 인터페이스 등을 포함하여, 데이터를 저장하고 읽기/쓰기를 효율적으로 수행하기 위해 설계되었습니다. DRAM은 기본적으로 메모리 셀, 워드 라인 및 비트 라인, 감지 증폭기 등 여러 구성 요소로 이루어져 있습니다.

1. DRAM의 기본 구조

DRAM의 기본적인 구조는 데이터를 저장하는 개별 셀들이 2차원 그리드 형식으로 배열되어 있는 형태입니다. 여기서 각 셀은 하나의 트랜지스터와 하나의 캐패시터로 구성됩니다.

(1) 메모리 셀

  • 트랜지스터: DRAM 셀의 액세스 스위치로 작동하며, 데이터를 읽거나 쓸 때 워드 라인 신호에 의해 셀을 열고 닫는 역할을 합니다.
  • 캐패시터: 데이터를 저장하는 소자로, 전하를 저장해 0 또는 1의 상태를 유지합니다. 시간이 지나면 캐패시터의 전하가 누설되기 때문에 주기적으로 데이터를 복원하는 리프레시 동작이 필요합니다.

(2) 워드 라인(Word Line)과 비트 라인(Bit Line)

  • 워드 라인: 행(row)에 해당하며, 특정 셀의 트랜지스터를 제어합니다. 워드 라인이 활성화되면, 해당 행의 모든 셀이 비트 라인에 연결되어 데이터의 읽기/쓰기가 가능해집니다.
  • 비트 라인: 열(column)에 해당하며, 데이터를 읽거나 쓸 때 데이터가 전달되는 경로입니다. 비트 라인은 감지 증폭기와 연결되어 셀의 상태를 판별합니다.

(3) 감지 증폭기(Sense Amplifier)

비트 라인의 전압 변화를 감지하고, 이를 증폭하여 데이터의 '0' 또는 '1' 상태를 결정하는 중요한 회로입니다. DRAM 셀의 전압 변화는 매우 미미하기 때문에, 감지 증폭기가 이를 명확하게 판별하여 데이터를 처리할 수 있도록 도와줍니다.

(4) 리프레시 회로(Refresh Circuit)

DRAM의 캐패시터는 시간이 지나면 전하가 자연스럽게 누설됩니다. 이 때문에 리프레시 회로는 일정한 주기로 모든 메모리 셀의 데이터를 다시 읽고, 원래 상태로 충전해 줍니다. 이 과정은 자동으로 이루어지며, DRAM의 휘발성 메모리 특성을 보완합니다.

2. DRAM의 계층적 구조

(1) 셀 배열(Cell Array)

DRAM 셀은 2차원 배열로 구성되며, 각 셀이 비트와 워드 라인의 교차점에 위치해 있습니다. DRAM의 배열 구조는 저장 공간을 효율적으로 활용할 수 있게 하며, 특정 셀에 빠르게 접근할 수 있는 메커니즘을 제공합니다.

(2) 뱅크(Bank)

DRAM은 여러 개의 셀 배열을 **뱅크(bank)**로 분리하여 관리합니다. 뱅크는 독립적인 메모리 블록으로, 하나의 뱅크가 액세스되는 동안 다른 뱅크는 비활성 상태로 남아 대기 시간을 줄이면서 병렬 처리를 가능하게 합니다. 하나의 DRAM 칩은 여러 뱅크로 구성되며, 이를 통해 대역폭을 향상시킬 수 있습니다.

(3) 서브 어레이(Sub-Array)

뱅크는 더 작은 단위인 **서브 어레이(sub-array)**로 나뉩니다. 각 서브 어레이는 독립적인 셀 배열로 구성되며, 데이터 접근을 더욱 효율적으로 관리합니다. 서브 어레이 구조는 메모리 접근의 병목 현상을 줄이고, 병렬 처리 성능을 향상시킵니다.

(4) 행 버퍼(Row Buffer)

DRAM의 성능을 높이기 위해, 데이터는 먼저 **행 버퍼(row buffer)**로 로드된 후 처리됩니다. 한 번에 여러 셀의 데이터를 읽어들인 후, 이를 행 버퍼에 저장한 다음 순차적으로 접근할 수 있습니다. 이를 통해 읽기 및 쓰기 속도를 높이는 데 기여합니다.

 

 

 

http://qdpma.com/ServerSystems/DRAM.html

'CPU ARCHITECTURE1 > DRAM' 카테고리의 다른 글

07. DRAM CMD FLOW  (0) 2024.10.02
05. DRAM Signals  (0) 2024.10.02
03. DRAM Array  (0) 2024.10.02
02. DRAM Write & Read  (0) 2024.10.02
01. DRAM Cell  (0) 2024.10.02

1. DRAM Array 구조

DRAM 셀은 **행(row)과 열(column)**의 2차원 그리드 형태로 배열됩니다. 각 셀은 하나의 비트(0 또는 1)를 저장하는 단위이며, 이러한 셀들이 수천 개에서 수백만 개까지 배열되어 하나의 DRAM 칩을 구성합니다.

  • 워드 라인(Word Line): **행(row)**에 해당하며, 특정 셀의 액세스 트랜지스터를 제어하는 역할을 합니다. 하나의 워드 라인이 활성화되면, 해당 행의 모든 셀들이 비트 라인에 연결되어 데이터 읽기/쓰기가 가능해집니다.
  • 비트 라인(Bit Line): **열(column)**에 해당하며, 데이터를 읽거나 쓸 때 데이터의 전달 경로가 됩니다. 비트 라인을 통해 셀의 데이터가 외부로 출력되거나, 외부로부터 셀로 입력됩니다.
  • 셀(Cell): 각 교차점에 있는 DRAM 셀은 하나의 트랜지스터와 하나의 캐패시터로 구성되며, 1비트를 저장합니다. 셀의 캐패시터에 전하가 있으면 '1', 없으면 '0'으로 표현됩니다.

2. Array 구조의 특징

(1) 고밀도 저장

DRAM의 셀은 매우 작은 공간을 차지합니다. 트랜지스터 하나와 캐패시터 하나로 구성된 단순한 셀 덕분에, 많은 셀을 좁은 공간에 배열할 수 있어 높은 저장 밀도를 실현할 수 있습니다. DRAM의 높은 용량이 이러한 고밀도 배열 덕분입니다.

(2) 2차원 배열로 대규모 데이터 저장

DRAM의 셀 배열은 2차원 배열 구조로, 데이터를 효율적으로 관리할 수 있습니다. 각 워드 라인과 비트 라인은 수백 또는 수천 개의 셀을 제어하며, 이를 통해 대규모 데이터를 한 번에 처리할 수 있습니다.

(3) 대역폭 효율성

비트 라인과 워드 라인을 통해 다수의 셀에 동시에 접근할 수 있기 때문에, DRAM은 병렬 처리가 용이합니다. 이러한 구조는 데이터 대역폭을 극대화하고, 시스템 성능을 높이는 데 기여합니다.

(4) 리프레시(Refresh) 필요

DRAM의 캐패시터는 시간이 지나면 전하가 누설되기 때문에, 주기적인 리프레시가 필요합니다. 리프레시를 통해 배열에 저장된 셀들의 전하를 재충전하며, 이를 통해 데이터가 유지됩니다. 리프레시가 주기적으로 이루어져야 하므로 전력 소모가 발생하고, 일정 시간 동안 다른 작업을 처리하지 못하는 경우가 있습니다.

(5) 접근 시간

DRAM의 셀은 매우 작은 공간에 밀집되어 있기 때문에, 특정 셀에 접근할 때 랜덤 접근 시간이 발생합니다. 또한 워드 라인을 활성화하고 비트 라인을 통해 데이터를 읽거나 쓰는 과정에서 지연이 발생할 수 있습니다. 이러한 이유로, DRAM의 성능은 캐시 메모리SRAM보다 낮지만, 저장 용량 면에서는 훨씬 유리합니다.

(6) 배열 크기의 확장

DRAM의 용량을 확장하기 위해, 배열의 크기를 키우거나 다중 배열(뱅크) 구조를 사용합니다. 여러 개의 뱅크(bank)를 만들어 병렬로 데이터에 접근할 수 있도록 하여, 성능과 용량을 동시에 향상시킬 수 있습니다.

 

 

http://qdpma.com/ServerSystems/DRAM.html

'CPU ARCHITECTURE1 > DRAM' 카테고리의 다른 글

07. DRAM CMD FLOW  (0) 2024.10.02
05. DRAM Signals  (0) 2024.10.02
04. DRAM Structure  (0) 2024.10.02
02. DRAM Write & Read  (0) 2024.10.02
01. DRAM Cell  (0) 2024.10.02

DRAM의 write(쓰기)read(읽기) 동작은 액세스 트랜지스터를 통해 캐패시터에 데이터를 저장하거나, 그 데이터를 다시 읽어오는 과정으로 이루어집니다. 이 과정은 비트 라인, 워드 라인, 트랜지스터, 캐패시터가 상호작용하여 동작합니다.

1. Write(쓰기) 동작 과정

DRAM에 데이터를 기록하는 과정은 다음과 같습니다:

  1. 워드 라인 활성화: DRAM 제어기가 원하는 메모리 주소에 대응하는 워드 라인을 활성화합니다. 이는 해당 셀의 액세스 트랜지스터를 열어 주는 신호입니다. 워드 라인이 'HIGH' 상태가 되면, 해당 셀의 트랜지스터가 열리게 됩니다.
  2. 비트 라인으로 데이터 전달: 기록하고자 하는 데이터(0 또는 1)가 비트 라인을 통해 해당 DRAM 셀로 전달됩니다. 비트 라인은 한쪽이 'HIGH'이고 다른 쪽이 'LOW'가 되는 차등 신호를 통해 0과 1을 구분합니다.
  3. 캐패시터에 데이터 저장: 트랜지스터가 열린 상태에서, 비트 라인을 통해 들어온 데이터는 캐패시터에 전하로 저장됩니다. 만약 '1'을 쓰려면 캐패시터에 전하가 충전되고, '0'을 쓰려면 캐패시터가 방전됩니다.
  4. 워드 라인 비활성화: 데이터가 캐패시터에 저장된 후, 제어기는 워드 라인을 비활성화합니다. 이로 인해 트랜지스터가 닫히고, 셀에 저장된 데이터는 유지됩니다. 이때 캐패시터의 전하는 시간이 지남에 따라 누설되므로, 리프레시(refresh) 과정이 필요합니다.

2. Read(읽기) 동작 과정

DRAM에서 데이터를 읽어오는 과정은 다음과 같습니다:

  1. 워드 라인 활성화: 읽고자 하는 메모리 주소에 대응하는 워드 라인을 활성화하여 해당 DRAM 셀의 액세스 트랜지스터를 엽니다. 트랜지스터가 열리면 셀의 캐패시터에 저장된 전하가 비트 라인으로 전달됩니다.
  2. 비트 라인의 전압 변화 감지: 캐패시터에 저장된 전하가 비트 라인으로 전달되면서, 비트 라인의 전압이 약간 변화하게 됩니다. 이 변화는 매우 미미하므로, 이를 증폭하기 위해 **감지 증폭기(sense amplifier)**가 필요합니다. 감지 증폭기는 비트 라인의 전압 변화를 감지하여 '0' 또는 '1'로 데이터를 판별합니다.
  3. 데이터 복구 및 리프레시: DRAM에서 데이터를 읽는 과정은 캐패시터의 전하를 방전시키는 동작과 같습니다. 따라서 읽기 동작 후에는 데이터를 다시 원래 상태로 복구하기 위해 해당 셀에 리프레시가 이루어집니다. 즉, 캐패시터의 상태를 다시 기록하여 원래의 데이터를 유지합니다.
  4. 워드 라인 비활성화: 데이터가 비트 라인을 통해 읽혀진 후, 워드 라인이 비활성화되어 트랜지스터가 닫히고, 셀은 다시 안정된 상태가 됩니다.

읽기/쓰기 동작에서의 중요 요소

  • 감지 증폭기: 읽기 동작 시 비트 라인의 작은 전압 변화를 감지하고 증폭하여 데이터의 '0' 또는 '1' 상태를 확실하게 판별합니다.
  • 리프레시(refresh): DRAM의 캐패시터는 시간이 지남에 따라 전하가 누설되기 때문에 주기적인 리프레시 동작이 필요합니다. 이는 데이터가 유지될 수 있도록 셀을 재충전하는 과정입니다.

DRAM의 읽기/쓰기 동작은 이처럼 간단한 구조로 빠르게 데이터를 처리할 수 있지만, 리프레시 과정이 필요하다는 단점이 있습니다.

 

 

https://vir-us.tistory.com/entry/Memory-DRAM%EC%9D%B4%EB%9E%80-%EA%B8%B0%EB%B3%B8%EB%8F%99%EC%9E%91-Read-Write-Refresh

'CPU ARCHITECTURE1 > DRAM' 카테고리의 다른 글

07. DRAM CMD FLOW  (0) 2024.10.02
05. DRAM Signals  (0) 2024.10.02
04. DRAM Structure  (0) 2024.10.02
03. DRAM Array  (0) 2024.10.02
01. DRAM Cell  (0) 2024.10.02

DRAM(Dynamic Random Access Memory) 셀은 매우 간단한 구조로, 하나의 캐패시터와 하나의 트랜지스터로 구성됩니다. DRAM은 데이터를 저장하는 메모리 중 하나로, 휘발성 메모리라는 특징을 가지고 있습니다. 즉, 전원이 차단되면 데이터가 소멸되기 때문에, 데이터를 유지하기 위해서는 주기적인 **리프레시(refresh)**가 필요합니다.

DRAM 셀의 동작 원리는 다음과 같습니다:

  1. 캐패시터: DRAM 셀의 기본적인 저장 장치로, 전하를 저장합니다. 캐패시터에 전하가 있으면 '1', 없으면 '0'으로 간주됩니다. 하지만, 캐패시터의 전하는 시간이 지나면서 자연스럽게 누설되기 때문에, 이를 주기적으로 리프레시해야 데이터가 유지됩니다.
  2. 액세스 트랜지스터: DRAM 셀에 접근하기 위한 스위치 역할을 합니다. 이 트랜지스터는 워드 라인을 통해 제어되며, 워드 라인이 활성화되면 트랜지스터가 열려 셀의 데이터를 읽거나 쓸 수 있습니다. 트랜지스터가 열리면 비트 라인을 통해 데이터가 읽혀지거나 기록됩니다.
  3. 리프레시(refresh): 캐패시터의 전하가 시간이 지남에 따라 누설되므로, 일정한 주기마다 모든 셀의 데이터를 다시 읽고 쓰는 리프레시 동작이 필요합니다. 리프레시가 이루어지지 않으면 데이터가 소실될 수 있습니다.

DRAM의 주요 특징:

  • 저장 밀도가 높습니다. 캐패시터와 트랜지스터 한 쌍으로 구성된 구조는 매우 작아서 대용량 메모리를 구현하는 데 적합합니다.
  • 비교적 저렴한 비용으로 대량의 데이터를 저장할 수 있습니다.
  • 휘발성 메모리로 전원이 꺼지면 데이터가 사라집니다.
  • 리프레시를 통해 데이터를 유지해야 하므로 추가적인 회로가 필요합니다.

DRAM은 컴퓨터 시스템에서 주 메모리로 많이 사용되며, 고속으로 대량의 데이터를 처리하는 데 적합합니다.

 

* https://www.researchgate.net/figure/General-DRAM-cell-structure_fig1_3137124

'CPU ARCHITECTURE1 > DRAM' 카테고리의 다른 글

07. DRAM CMD FLOW  (0) 2024.10.02
05. DRAM Signals  (0) 2024.10.02
04. DRAM Structure  (0) 2024.10.02
03. DRAM Array  (0) 2024.10.02
02. DRAM Write & Read  (0) 2024.10.02

+ Recent posts