분류 전체보기19 디지털 회로 검증 시리즈 - 1편 디지털 칩은 어떻게 신뢰성을 보장할까? 이 시리즈의 포스팅에서는 "디지털 회로 검증"에 관하여 살펴보겠습니다. 현대 반도체 칩은 수십억 개의 트랜지스터로 이루어져 있으며, 최신 프로세서의 경우 1000억 개 이상의 트랜지스터를 포함하기도 합니다. 이러한 초고집적 반도체는 스마트폰, 자율주행 자동차, 데이터센터 서버, 인공지능 가속기 등 다양한 곳에서 사용됩니다. 하지만 이런 복잡한 칩이 처음부터 완벽하게 동작할 확률은 거의 없습니다. 예를 들어, 한 스마트폰 제조사가 새로운 프로세서를 개발했다고 가정해 봅시다. 설계팀이 RTL(Register Transfer Level) 코드를 작성하고, 여러 과정을 거쳐 이를 칩으로 제작했습니다. 그런데 실제로 칩을 동작시켜 보니 멀티스레딩 환경에서 특정 메모리 주소에.. 2025. 3. 3. 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. 이전 1 2 3 4 5 다음