가. SDRAM과 DDR-SDRAM
SDRAM은 Synchronus Dynamic Random Access Memory의 약자입니다. 이 이전에는 DRAM, Fast Page DRAM, EDO-DRAM 등이 있었지만 데스크탑, 노트북 PC 분야에서는 거의 사용을 하지 않는 것이기 때문에 이와의 구분은 여기서 생략하겠습니다. 개략적으로 얘기하자면 시스템 클럭과 동기로 동작하느냐 아니냐의 차이를 가지고 있습니다.
DDR-SDRAM은 SDRAM에서 한단계 발전한 램입니다. 이 둘을 구분하기 위해서 일반 SDRAM을 SDR-SDRAM이라고도 부릅니다. DDR은 Double Data Rate의 약자이고 SDR은 Single Data Rate의 약자입니다. DDR은 한 클럭당 2개의 데이타를 전송한다는 의미 입니다.
컴퓨터에서의 데이타 통신은 기본적으로 0,1을 기준으로 하는 비트신호로 이루어집니다. 실제의 데이타도 이 0,1을 사용해서 보내고 받습니다. 이 때 해당 데이타를 보내기 위해서는 언제 보낼 것이냐 하는 기준이 필요하게 됩니다. 이러한 약속이 없으면 통신이 이루어 지는 두 개의 장치 사이에 아무런 약속도 없는 상황이 되니까 데이타를 보내도 그게 뭔지, 무엇 때문에 이런 걸 보낸 건지 전혀 알 수가 없는 상태가 됩니다. 어떤 방식으로 2개의 장치간에 통신이 이루어지는 가에 따라 이 약속이 틀려집니다만, SDRAM과 CPU, 더 정확히 말해 SDRAM과 노스브릿지 또는 MCH와의 통신은 클럭과 몇가지 다른 신호로 이런 통신이 이루어 집니다.
이 때 2 장치간의 전송속도에 가장 민감하게 영향을 미치는 것이 클럭입니다. 이 클럭은 일정한 주기로 0,1이 반복되는 디지털 신호를 말합니다. 일반적으로 데이터는 1클럭에 1개가 전송됩니다. PC100 SDRAM의 경우 100은 100MHz의 주파수를 가지고 있으며, 이는 초당 100,000,000회의 클럭수가 왔다갔다 한다는 의미이며 한 번 더 풀이하면 0,1이 이 횟수만큼 반복된다는 의미입니다. 실제로는 조금 다릅니다만, 위의 클럭과 데이타 전송과의 관계를 보면 이 의미는 곧 1초에 100,000,000개의 데이타가 전송된다는 의미와 같아짐을 알 수 있으실 겁니다.
그러면 DDR-SDRAM은 어떻게 동작하는 것일까요? SDR-SDRAM은 0,1이 한 번 반복되는 중에 1이 되면 그 때마다 1개씩 데이타를 전송합니다. DDR-SDRAM은 이와 달리 0->1, 1->0으로 바뀌는 순간에 1개씩 데이타를 보냅니다. 그래서 1클럭에 2개의 데이타를 전송할 수 있게 됩니다. 이 때 0->1로 바뀌는 순간을 rising edge, 그 반대를 falling edge라고 합니다. DDR200이라는 규격명에서 뒤의 숫자는 기준클럭 100MHz에서 DDR로 동작한다는 의미입니다. 즉 PC100이나 DDR200이나 동작속도는 동일한 100MHz이지만 전송은 DDR200은 100MHz에서 클럭당 2개의 데이타를 전송한다는 것이 됩니다.
DDR-SDRAM의 규격은 DDR200, DDR266, DDR333 등으로 표기하기도 하고, PC1600, PC2100, PC2700 으로 표기하기도 합니다. PCxxxx의 뒤 4자리 숫자는 대역폭을 의미합니다. 디지털 통신에서의 대역폭은 해당 통신규격에서 낼 수 있는 최대의 전송속도을 말합니다. PC1600의 1600은 100MHz DDR로 동작하는 x86 호환 PC에 장착할 수 있는 SDRAM의 최대 전송속도입니다. 이 때의 대역폭에 클럭과 같이 고려할 것이 위에서 말한 전송되는 1개 데이터의 크기가 얼마냐 하는 것인데, SDR-SDRAM이나 DDR-SDRAM의 경우 이 크기는 64bit 입니다. 이렇게 해서 최대 전송속도를 구해보면 아래와 같습니다.
100MHz * 2(DDR) * 64bits / 8(1byte=8bits) = 1,600 MB/s (1M = 1,000,000) 위 MB의 M은 2의 20제곱이 아니라 1,000,000 입니다. PC2100, PC2600 도 같은 방법으로 계산할 수 있습니다. 즉 DDR200, DDR266, DDR333 은 PC1600, PC2100, PC2700과 PC에서는 완전히 같은 의미입니다. 이러한 규격은 JEDEC이라는 연합에서 제정하고 있으며, 여기에는 Intel, Samsung 등의 회사가 참여하고 있고 2002년 10월 6일 현재 DDR333의 규격까지 완성되어 있습니다.
나. RDRAM
RDRAM은 Rambus DRAM의 약자입니다. 램버스디램은 DDR-SDRAM 처럼 DDR로 동작하지만 내부뱅크의 크기를 줄이고 갯수를 증가시킨 다음 이를 직렬로 연결해서 동작속도를 올린 겁니다. 직렬인터페이스라는 특성상 데이타폭을 넓히는 데는 한계가 있어서 16비트 또는 32비트의 데이터폭을 가집니다. 실제 PC800 RDRAM의 동작속도는 100MHz입니다만, 상당한 복잡한 과정(죄송합니다, 100MHz의 속도가 어떻게 800MHz라는 속도로 둔갑하는 지는 정말 굉장히 복잡한 문제라서 제 능력으로는 어떻게 간단히 설명을 해야될 지 몰라 이렇게 은근슬쩍 넘기겠습니다. 궁금하신 분이 계시다면 http://www.aceshardware.com 이라는 사이트에 가셔서 관련 문서를 읽어보시라는 말씀밖에는 ㅡ.ㅡ;;)을 거쳐 800MHz의 속도와 같은 전송속도를 가지게 됩니다.
RDRAM의 공식적인 규격은 PC600, PC800, PC1066이 있고 RIMM3200, RIMM4200 등이 있습니다. PC600, PC800, PC1066 은 16비트, RIMM4200 은 32비트로 동작합니다. 물리적으로 이 2개의 규격은 비슷하게 생겼지만 틀립니다. 즉 한 쪽 규격의 램버스디램은 다른 쪽 규격의 램버스디램과 인터페이스 차원에서 호환이 전혀 안되어서 슬롯에 꽂을 수가 없습니다. RIMM을 지원하는 최초의 칩셋은 i850E 입니다. 그 이전의 RDRAM칩셋은 모두 공식적으로 PC800까지만 지원하고 있습니다. 이 문제 때문에 시간이 좀 흐른다면 "RDRAM이 슬롯에 꽂히지가 않습니다"라는 질문이 상당히 많이 나올 듯합니다
대표적으로 ASUS에서 i850E 칩셋을 채용한 마더보드에는 P4T533과 P4T533-C라는 모델이 있습니다. P4T533은 32비트 RDRAM인 RIMM규격을 P4T533-C는 16비트 RDRAM규격인 PCxxxx 규격을 지원합니다. 따라서 램을 구입하실 때 신중한 구분을 상당히 요하는 부분이라고 할 수 있습니다. 잘못 사면 "RDRAM이 슬롯에 꽂히지가 않습니다"라는 문제가 발생할 수 있으니까요. 상가에서 현재 어느 정도로 구분해 주는 지는 모르겠습니다만 정확하게 구분하실려면 해당 램을 제조하는 제조사의 홈페이지에서 파트넘버를 확인하는 방법이 가장 정확할 것이라는 RIMM은 DIMM과 비슷하다는 이유로 메모리 모듈을 구분하는 용어로 많이 사용될 듯 합니다. 어쩌면 PC1066이나 RIMM4200으로 구성된 메모리 모듈을 전부 RIMM 으로 부를지도 모르겠다는 우려도 생깁니다.
RIMM4200의 4200은 PC2700의 2700과 비슷한 의미입니다. 1066 * 32 / 8 = 4264MB/s = 4200 그리고 PC1066과 RIMM4200은 동작주파수는 동일합니다. 지금까지 각 램의 차이점과 규격에 관해 개략적으로 구분을 해 봤습니다.
다. 3종 램의 지원 칩셋 등
종합해 볼때 속도는 SDR-SDRAM < DDR-SDRAM < RDRAM 순으로 빠르고, 가격은 같은 순으로 높습니다. 가격대 성능비는 SDR-SDRAM과 DDR-SDRAM이 왔다갔다 하고 있지만, 요즘의 상황으로 볼 때 역시 선택 1순위는 DDR-SDRAM입니다. 현재는 DDR-SDRAM이 펜티엄 4에서 거의 주류를 이루고 있는 상황입니다. 인텔이 RDRAM에 힘을 실어 주려고 CPU에 끼워팔기 등의 많은 노력을 기울였습니다만, 아무래도 맨 땅에 헤딩을 하고 만 것 같이 보입니다. 실 사용자들이 비싼 RDRAM을 만족할 만한 성능향상도 없는 상태에서 사용하려고 하지는 않았고, 거기다 i820이라는 인텔 역사상 불후의 졸작이 나오는 바람에 그나마 했던 노력마저도 무참히 짓밟혔습니다. i850이 나오면서 뭔가가 달라지긴 했습니다만 역시 RDRAM은 비쌉니다. 그 실례로 네트워크 시장에서의 RDRAM에 관한 추가지원이 아주 미약한 상태입니다.
(제가 여기 질답게시판에 2003년 인텔의 로드맵에 RDRAM의 지원이 없다고 적은 적이 있는데 그건 사실과 다릅니다. 혹시 그 글 읽으신 분께는 대단히 죄송하다는 말씀을 드리고 2004년 이후에는 새로운 RDRAM 규격에 대한 언급이 없다는 말로 입을 샥 바꿔야 될 것 같습니다. 대장부(?)로서 한 입으로 두 말한 점 깊이 반성하고 뉘우치고 있으니 부디 용서를... 헛. 맞습니다. 한입으로 두말하면 대장부가 아닙니다. 고로 전 대장부가 아닙니다. 죄 지은 놈이 무슨 말을 하겠습니까? 부디 용서를..)
SDR-SDRAM을 지원하는 인텔 펜티엄 4용 칩셋은 i845가 대표적입니다. 스펙상으로 보면 i845D 역시 SDR-SDRAM을 지원합니다만(i845와 i845D는 스테핑만 다르다 뿐 완전히 동일합니다), 실제 i845D를 사용해서 SDR-SDRAM을 지원하는 마더보드는 찾아보기가 굉장히 힘든 것으로 봐서(저는 본적이 없습니다 ㅡ.ㅡ), SDR-SDRAM의 마지막 칩셋은 역시 i845가 되지 않을까 합니다. 현재 DDR-SDRAM을 지원하는 인텔의 펜티엄 4용 칩셋은 i845D(B-Stepping), i845E, i845PE 가 있고 각각 DDR266, DDR266, DDR333 까지 지원하고 있습니다. 그 외의 차이점은 대표적으로 i845D는 USB 1.1을 i845E와 i845PE는 USB 2.0을 지원한다는 차이점이 있습니다.
RDRAM은 i820, i840, i850, i850E 가 있으며 i820은 절대 구입해서는 안 될 품목 1순위에 올라 있으므로 뭘 지원하는 지 아실 필요가 전혀 없고 다만 사서는 안된다는 거만 아시면 됩니다. i840은 i850에 완전히 묻혀버린 칩셋이고, i850은 PC800까지 i850E는 공식적으로 RIMM규격만 지원한다고 하려다가 PCxxxx쪽의 지원도 인정한다는 쪽으로 방향을 선회하였으며 RIMM4200 또는 PC1066까지 지원합니다. 이상의 내용은 어디까지나 공식적으로 그렇다는 얘기지 어느 정도의 속도로 사용하느냐는 전적으로 사용자의 선택에 달려 있습니다. 오버클럭이 바로 그 방법입니다.
다음은 양면램과 단면램의 차이점 그리고 칩셋에 따른 사용가능여부를 개략적으로 구분해 보겠습니다.