분류 전체보기18 DRAM은 어떻게 발전했을까? - Intel 1103, Asynchronous DRAM DRAM의 역사에 대해 살펴보도록 하겠습니다. 첫 번째 DRAM은 잘 알려져 있다시피, 1966년 IBM의 Robert Dennard에 의해 발명되었습니다. 이후 1970년에 Intel에서 1103으로 이름 지어진 첫 번째 사용 DRAM을 출시하게 됩니다. 이후에는 다양한 목적과 종류의 DRAM이 꾸준히 개발되어 왔습니다. 하지만 1990년대 중반까지는 대부분 더 높은 집적도와 낮은 가격을 목표로 아키텍처가 개발되어왔습니다. 그 이후부터, 상용 DRAM은 좀 더 다양한 요구를 직면하게 됩니다. 이는 이 시기에 출시되는 개인용 컴퓨터나 전자기기의 발전을 생각해보면 당연한 일입니다. 그리하여 DRAM은 낮은 가격, 높은 대역폭, 낮은 지연시간(latency), 낮은 파워 소모 등 여러 목적에 부합하는 설계 .. 2022. 6. 12. 복잡한 DRAM 명령의 상호작용 - (3) Bank Interleave 지난 포스팅에서는 동일한 bank 주소에서 서로 다른 행 주소에 접근하여 연속적인 읽기 명령을 수행할 때 어떠한 지연이 발생할 수 있는지에 대해 살펴보았습니다. 그렇다면 bank의 주소가 다를 때, 서로 다른 행 주소에 연속적인 읽기 명령을 수행하는 경우엔 어떤 파라미터를 고려해야 할까요? 이것과 관련하여 이번 글에서는 서로 다른 뱅크를 연속적으로 접근할 때 어떤 일이 발생할 수 있는지 살펴보겠습니다. 특히, 타이밍이 불충분한 조건을 갖춘 경우에 연속적인 읽기 명령이 요청되었을 때 해당 bank에서는 어떻게 명령을 처리할 수 있는지에 집중하여 살펴보겠습니다. Bank Interleave가 없을 때 우선 동일한 rank의 주소에서, 서로 다른 bank에 대한 두 개의 연속적인 읽기 명령을 요청하는 경우를 .. 2022. 6. 9. 복잡한 DRAM 명령의 상호작용 - (2) 대부분의 DRAM의 경우 단일 읽기 명령이나 쓰기 명령을 수행하는 경우보단, 연속적인 읽기 또는 쓰기 명령을 하는 경우가 많습니다. 특히 동일한 bank 주소 내에서의 동일한 행 주소에 접근하여 연속적인 읽기 또는 쓰기를 하는 경우, 이후의 명령들을 파이프라인 하여 수행할 수 있습니다. 하지만 bank 주소나 행 주소가 다른 주소에 연속적인 읽기 또는 쓰기를 수행하는 경우, 현재 열 명령을 수행하고 있는 행에 대하여 precharge를 수행하여 해당 행을 닫아주고, 이후에 타깃 행을 열어야 하기 때문에, 이에 걸리는 추가 지연 시간이 필요해지고, 이는 전체적인 tRC의 증가를 발생하게 됩니다. 이번 포스팅에서는 이와 같이 DRAM 내부에서 연속적인 명령을 수행 시, 해당 주소에 따라 발생할 수 있는 명령.. 2022. 6. 8. 복잡한 DRAM 명령의 상호작용 - (1) 앞 포스팅에서는 DRAM의 기본적인 명령과 해당 명령을 수행하는데 필요한 타이밍 파라미터에 대하여 살펴보았었습니다. 이번엔 이러한 기본적인 DRAM 명령들이 상호작용하게 될 때에 발생할 수 있는 타이밍 파라미터에 대하여 살펴보겠습니다. 이러한 복합적이고 상호작용적인 명령은 오픈 페이지와 클로즈 페이지의 행 주소 버퍼를 제어하는 메모리 시스템에서, 읽기와 쓰기 명령을 수행할 때 사전 검사하도록 설계됩니다. 특히 오픈 페이지 행 주소 버퍼를 제어하는 설계 시스템에서는 해당 행 접근 주소가 개방된 이후에, 동일한 행 주소에 대한 읽기와 쓰기 명령에 대비하여 sense amplifier array가 계속하여 데이터를 유지하게끔 설계됩니다. 이 데이터 값을 유지하는 것은 동일한 bank의 다른 행 주소에 대한 접.. 2022. 6. 6. 이전 1 2 3 4 5 다음