디지털 회로 및 컴퓨터 하드웨어 분야에서 다중 채널 메모리 구조(multi-channel memory architecture)는 DRAM 메모리와 메모리 컨트롤러 간의 통신 채널을 추가하여 데이터 전송률을 높이는 기술이다. 이론적으로 이 기술은 데이터 전송률을 채널 수만큼 정확히 늘린다. 듀얼 채널 메모리는 두 개의 채널을 사용한다. 이 기술은 1960년대 IBM System/360 Model 91과 CDC 6600에서 사용된 것까지 거슬러 올라간다.[1]
AMDRyzen Threadripper 시리즈 및 인텔코어 i9 익스트림 에디션 라인업과 같은 최신 고급 데스크톱 및 워크스테이션 프로세서는 쿼드 채널 메모리를 지원한다. AMD Epyc 시리즈 및 인텔 제온 플랫폼의 서버 프로세서는 쿼드 채널 모듈 레이아웃부터 최대 12채널 레이아웃까지 메모리 대역폭을 지원한다.[2] 2010년 3월, AMD는 쿼드 채널 메모리를 지원하는 소켓 G34 및 마니-쿠르스 옵테론 6100 시리즈[3] 프로세서를 출시했다. 2006년 인텔은 LGA771 플랫폼[4]에 쿼드 채널 메모리를 지원하는 칩셋을 출시했으며, 이후 2011년에는 LGA2011 플랫폼에도 지원했다.[5] 더 많은 채널을 가진 마이크로컴퓨터 칩셋도 설계되었다. 예를 들어, 알파스테이션 600(1995)의 칩셋은 8채널 메모리를 지원하지만, 장비의 백플레인이 4채널로 동작을 제한했다.[6]
듀얼 채널 구조
이 특정 마더보드의 듀얼 채널 메모리 슬롯, 주황색과 노란색으로 색상 코딩되어 있다.
PC 시스템 아키텍처의 듀얼 채널 지원 메모리 컨트롤러는 두 개의 64비트 데이터 채널을 사용한다. 듀얼 채널은 더블 데이터 레이트(DDR)와 혼동해서는 안 되는데, DDR에서는 DRAM 클럭당 두 번 데이터 교환이 발생한다. 이 두 기술은 서로 독립적이며, 많은 마더보드가 듀얼 채널 구성에서 DDR 메모리를 사용하여 둘 다 사용한다.
작동
듀얼 채널 아키텍처는 듀얼 채널 지원 마더보드와 두 개 이상의 DDR 메모리 모듈을 필요로 한다. 메모리 모듈은 각기 다른 채널에 속하는 일치하는 뱅크에 설치된다. 마더보드 설명서는 해당 장치에 메모리를 설치하는 방법을 설명한다. 일치하는 메모리 모듈 한 쌍은 보통 각 채널의 첫 번째 뱅크에 배치할 수 있으며, 용량이 다른 모듈 한 쌍은 두 번째 뱅크에 배치할 수 있다.[7] 속도가 다른 모듈도 듀얼 채널 모드로 작동할 수 있지만, 마더보드는 모든 메모리 모듈을 가장 느린 모듈의 속도로 실행한다. 그러나 일부 마더보드는 듀얼 채널 모드에서 특정 브랜드나 모델의 메모리를 사용할 때 호환성 문제가 발생하기도 한다. 이러한 이유로 동일한 메모리 모듈 쌍을 사용하는 것이 일반적으로 권장되며, 대부분의 메모리 제조업체는 현재 일치하는 DIMM "키트"를 판매한다. 일부 마더보드 제조업체는 "일치하는 쌍"의 모듈이 사용되는 구성만 지원한다. 일치하는 쌍은 다음 사항에서 일치해야 한다.
용량 (예: 1024 MB). 특정 인텔 칩셋은 Flex Mode라고 불리는 기능에서 다른 용량의 칩을 지원한다. 이 경우 일치하는 용량은 듀얼 채널로 작동하고, 나머지는 단일 채널로 작동한다.
속도 (예: PC5300). 속도가 같지 않으면 두 모듈 중 더 낮은 속도가 사용된다. 마찬가지로 두 모듈 중 더 높은 지연 시간이 사용된다.
CAS (Column Address Strobe) 지연 시간, 또는 CL.
칩 수 및 면 수 (예: 각 면에 4개의 칩이 있는 양면).
행 및 열의 크기.
이론적으로 모든 일치하는 메모리 모듈 쌍은 마더보드가 이 아키텍처를 지원하는 한 단일 또는 듀얼 채널 작동에 사용될 수 있다.
이론적으로 듀얼 채널 구성은 단일 채널 구성에 비해 메모리 대역폭을 두 배로 늘린다. 이는 더블 데이터 레이트(DDR) 메모리와 혼동해서는 안 되는데, DDR 메모리는 메모리 버스 클록 신호의 상승 및 하강 에지에서 모두 데이터를 전송하여 DRAM 버스의 사용을 두 배로 늘린다.
갱드 대 언갱드
듀얼 채널은 원래 두 개의 64비트 버스를 하나의 128비트 버스로 결합하여 메모리 처리량을 최대화하는 방법으로 고안되었다. 이는 소급하여 "갱드(ganged)" 모드라고 불린다. 그러나 소비자 애플리케이션에서 기대만큼의 성능 향상이 미미하여[8] 더 현대적인 듀얼 채널 구현은 기본적으로 "언갱드(unganged)" 모드를 사용한다. 이 모드는 두 개의 64비트 메모리 버스를 유지하면서도 각 채널에 독립적인 액세스를 허용하여 멀티 코어 프로세서를 사용한 멀티스레딩을 지원한다.[9][10]
"갱드(Ganged)"와 "언갱드(unganged)"의 차이는 RAID 0이 JBOD와 비교되는 방식에 비유될 수 있다.[11] RAID 0("갱드" 모드에 해당)의 경우, 추가 논리 계층이 모든 사용 가능한 하드웨어 장치(저장 장치 또는 메모리 모듈)를 더 잘(이상적으로는 균등하게) 사용하고 전체 성능을 향상시키는 역할을 한다. 반면에 JBOD("언갱드" 모드에 해당)의 경우, 통계적 사용 패턴에 의존하여 모든 사용 가능한 하드웨어 장치를 균등하게 사용하여 전체 성능을 향상시킨다.[9][10]
트리플 채널 구조
작동
DDR3 트리플 채널 아키텍처는 인텔코어 i7-900 시리즈(인텔 코어 i7-800 시리즈는 듀얼 채널까지만 지원)에서 사용된다. LGA 1366 플랫폼(예: 인텔 X58)은 DDR3 트리플 채널을 지원하며, 일반적으로 1333MHz 및 1600MHz이지만 특정 마더보드에서는 더 높은 클럭 속도로 작동할 수 있다. AMD 소켓 AM3 프로세서는 DDR3 트리플 채널 아키텍처를 사용하지 않고 듀얼 채널 DDR3 메모리를 사용한다. 이는 LGA 1156 플랫폼(예: 인텔 P55)에 사용되는 인텔 코어 i3, 코어 i5 및 코어 i7-800 시리즈에도 동일하게 적용된다. 인텔에 따르면, 1066 MHz에서 작동하는 DDR3를 장착한 코어 i7은 트리플 채널 인터리빙 모드에서 작동할 때 최대 25.6 GB/s의 데이터 전송 속도를 제공한다. 인텔은 이것이 더 빠른 시스템 성능과 더 높은 전성비로 이어진다고 주장한다.[12]
트리플 채널 모드에서 작동할 때 메모리 지연 시간은 인터리빙으로 인해 감소한다. 이는 다음 모듈에 액세스하기 전에 하나의 모듈을 완전히 채우기보다는 더 작은 데이터 비트에 대해 각 모듈에 순차적으로 액세스한다는 의미이다. 데이터는 교대로 모듈 전체에 분산되어, 동일한 양의 데이터에 대해 사용 가능한 메모리 대역폭을 잠재적으로 3배로 늘릴 수 있다. 이는 모든 데이터를 하나의 모듈에 저장하는 것과 대조된다.
이 아키텍처는 세 개의 메모리 모듈(또는 세 개의 배수)이 용량과 속도가 동일하고 세 개의 채널 슬롯에 장착된 경우에만 사용할 수 있다. 두 개의 메모리 모듈이 설치되면 아키텍처는 듀얼 채널 아키텍처 모드로 작동한다.[13]
쿼드 채널 메모리는 2010년 인텔의 네할렘-EX LGA 1567 제온 CPU(베크턴이라고도 함) 플랫폼에서 처음 선보였고, 2011년 말 샌디 브리지-E가 탑재된 인텔 X79LGA 2011 플랫폼에서 하이엔드 제품군에 도입되었다. DDR4는 인텔 X99LGA 2011 플랫폼(하스웰-E라고도 함)에서 DDR3를 대체했으며, AMD의 스레드리퍼 플랫폼에서도 사용된다.[16]DDR3 쿼드 채널 아키텍처는 AMDG34 플랫폼과 앞서 언급된 하스웰 이전의 인텔 CPU에서 사용된다. C32 플랫폼용 AMD 프로세서와 LGA 1155 플랫폼용 인텔 프로세서(예: 인텔 Z68)는 대신 듀얼 채널 DDR3 메모리를 사용한다.
이 아키텍처는 네 개의 메모리 모듈(또는 네 개의 배수)이 용량과 속도가 동일하고 쿼드 채널 슬롯에 장착된 경우에만 사용할 수 있다. 두 개의 메모리 모듈이 설치되면 아키텍처는 듀얼 채널 모드로 작동한다. 세 개의 메모리 모듈이 설치되면 아키텍처는 트리플 채널 모드로 작동한다.[13]
성능
TweakTown이 SiSoftware Sandra를 사용하여 수행한 벤치마크는 쿼드 채널 구성이 듀얼 채널 구성에 비해 약 70%의 성능 향상을 보였다.[17]:p. 5 TweakTown이 동일한 주제로 수행한 다른 테스트에서는 성능에 큰 차이가 없었으며, 이는 모든 벤치마크 소프트웨어가 다중 채널 메모 구성이 제공하는 향상된 병렬 처리를 활용하는 데 적합하지 않다는 결론으로 이어졌다.[17]:p. 6
↑ 가나“BIOS and Kernel Developer's Guide (BKDG) For AMD Family 10h Processors”(PDF). 《amd.com》. 2013년 1월 11일. 107–108쪽. 2014년 1월 9일에 확인함. When the DCTs are in ganged mode, as specified by [The DRAM Controller Select Low Register] F2x110 [DctGangEn], then each logical DIMM is two channels wide. Each physical DIMM of a 2-channel logical DIMM is required to be the same size and use the same timing parameters. Both DCTs must be programmed with the same information (see 2.8.1 [DCT Configuration Registers]). When the DCTs are in unganged mode, a logical DIMM is equivalent to a 64-bit physical DIMM and each channel is controlled by a different DCT. Typical systems are recommended to run in unganged mode to benefit from the additional parallelism generated by using the DCTs independently. See 2.12.2 [DRAM Considerations for ECC] for DRAM ECC implications of ganged and unganged mode. Ganged mode is not supported for S1g3, S1g4, ASB2, and G34 processors.