본문 바로가기
조회 수 105 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
Extra Form
링크 https://pc.watch.impress.co.jp/docs/colu...23210.html

글이 쓸데없이 길고 복잡한데, 요약하면 이렇습니다. 

 

3세대 젠의 칩렛 구조에서 CCD와 IOD가 분리, 기존과 같은 메모리 대역폭을 유지하기 위해 인터커넥트의 읽기/쓰기 비율을 조정. 데스크탑 라이젠은 읽기/쓰기가 1:1이지만 스레드리퍼/에픽은 읽기가 더 많은 구조.

 

 

젠의 3가지 패브릭

 

1.png

 

3세대 스레드리퍼

 

AMD는 32 코어의 7nm 공정 라이젠 스레드리퍼를 출시하고, 64코어 버전의 등장을 예고했습니다. 7nm 공정에서는 CPU 코어 컴플렉스를 탑재한 CCD(Core Complex Die) 칩 렛 다이와, I/O와 메모리 인터페이스를 탑재한 IOD(I/O Die)로 분리된 멀티 다이 구조를 채택합니다.

 

7nm 스레드리퍼도 32코어는 4개의 CCD와 1개의 IOD로 구성됩니다. AMD 젠의 가장 큰 특징은 확장성을 갖춘 멀티 다이 아키텍처라는 점이며, 그 구조의 핵심은 다이 사이의 패브릭입니다. AMD는 7nm의 에픽/스레드리퍼에서 비대칭 패브릭 구성과 함께 새로운 방식을 도입했습니다.

 

젠 아키텍처는 다이 사이를 GMI(Global Memory Interconnect) 또는 IFOP(Infinity Fabric On-Package)라는 인터커넥트로 연결합니다. AMD가 개발 단계 때 내부에서 쓰던 이름이 GMI, 학회 발표 때 붙인 이름이 IFOP입니다. 이름은 두 가지지만 결국은 똑같은 물건입니다.

 

패키지를 서로 연결하는 인터커넥트도 IFIS(Infinity Fabric Inter-Socket)와 xGMI(Inter-Chip Global Memory Interconnect)라는 두 가지 이름이 붙습니다. 여기서도 IFIS와 xGMI는 기본적으로 같습니다.

 

AMD는 지금의 인터커넥트에 인피니티 패브릭(Infinity Fabric)이라는 이름을 씁니다. 인피니티 패브릭은 데이터를 전송하는 Infinity Scalable Data Fabric(SDF)과 제어 신호를 전달하는 Infinity Scalable Control Fabric(SCF)의 전혀 다른 2가지를 합친 이름입니다.

 

데이터 전송 인터커넥트는 AMD의 기존 인터커넥트인 Coherent HyperTransport 프로토콜을 확장한 것입니다. Coherent 프로토콜은 7스테이트로 구성된 MDOEFSI입니다. 이 D와 O가 무엇인지는 모르나, MESI(Modified / Exclusive / Shared / Invalid)보다 복잡한 프로토콜임에는 확실합니다. 젠 2 세대에서도 프로토콜 부분의 기본은 변하지 않은 듯 합니다. 

 

같은 인피니티 패브릭 프로토콜이어도 사용하는 위치에 따라 각각 인터커넥트의 구현은 크게 다릅니다. AMD 아키텍처의 데이터 전송 패브릭을 분류하면 온칩(On-Die)의 Infinity Scalable Data Fabric(ISDF)과 다이 사이의 IFOP(GMI), 소켓 사이의 IFIS (xGMI)까지 3종류입니다. 프로토콜은 같지만 실제로는 전혀 다른 패브릭 인터커넥트입니다.

 

온 다이 ISDF에서 배선 폭은 거의 문제가 되지 않기에 인퍼페이스는 128/256비트입니다. 이에 비해 다이 사이를 연결하는 IFOP(GMI)는 싱글 엔디드(single-ended) 신호로 1링크의 데이터 레인이 단방향 32비트 버스 폭으로 구성됩니다. 패키지 사이를 연결하는 IFIS(xGMI)는 차동(Differential) 신호로 1링크는 단방향 16비트입니다.

 

젠2 세대에서도 이 구성은 그대로입니다. 14nm SoC인 제플린의 IFI (xGMI)는 PCIe와 SATA, PHY를 공유합니다. 7nm의 젠 2 계열 서버 I/O 전용 다이인 sIOD (Server I / O Die)는 PCIe 4.0과 CCIX 공유 PHY가 더해진 것으로 보입니다.

 

2.png

 

AMD의 IFOP(GMI) 패브릭

 


내부 패브릭의 클럭과 동기화 IFOP (GMI)


AMD는 젠2 아키텍처의 에픽/스레드리퍼도 IFOP(GMI)의 전송 방식 그 자체는 젠/젠+ 세대와 거의 비슷하다고 합니다. 그러나 젠2의 에픽/스레드리퍼는 전송 속도가 약간 오르고 C인터커넥트 대역폭도 비대칭으로 바뀌었습니다. CCD 읽기 52.6GB/s, 쓰기 26.3GB/s라고 합니다. 

 

이 IFOP(GMI) 인터커넥트 대역폭은 패브릭 클럭(FCLK)에 따라 조정되며 따로 스케줄되진 않습니다. 에픽을 발표했을 때의 설명에 의하면 7nm 에픽의 IFOP(GMI) 대역은 읽기 32바이트(256비트), FCLK 쓰기 16바이트(128비트)/FCLK입니다.

 

7nm 버전의 스레드리퍼도 구성은 똑같아 보입니다. 읽기 52.6GB/s, 패브릭 클럭 당 32바이트라면 1.66GHz가 됩니다. AMD의 설명에 의하면 3세대 스레드리퍼의 IFOP(GMI) 대역 값은 FCLK가 1.66GHz입니다.

 

AMD의 현재 CPU는 여러 클럭 도메인으로 분할됩니다. GPU 코어마다 CCLK라는 클럭, L3 캐시 클럭 L3CLK, 데이터 패브릭 클럭 FCLK, 통합 메모리 컨트롤러 클럭 UCLK, 메모리 인터페이스 클럭 MEMCLK, I/O 클럭 ICLK까지 도메인이 분리됩니다.

 

메모리 MEMCLK와 UCLK는 DDR4의 전송 속도에 맞춰서 작동하며(전송 속도가 2,667Mbps면 1.33GHz) 패브릭 FCLK도 기본적으로 DRAM 전송 속도에 맞춥니다. L3의 L3CLK는 CCX마다 맞추며 CPU 코어의 CCLK는 코어마다 분리됩니다. I/O의 ICLK는 FCLK의 절반입니다. 원래 AMD 아키텍처에서 내부 패브릭은 MEMCLK에 맞춰 작동했으나 이제 분리됐습니다. 그러나 이 두가지 클럭은 기본적으로 동기화 작동합니다.

 

3.png

 

14nm 젠+의 내부 클럭과 대역폭

 

IFOP(GMI)는 클럭 내부에서 FCLK와 동기화됩니다. 따라서 IFOP(GMI)는 전송 대역 그 자체보다 FCLK의 전송 속도 대비로 표시하는 게 맞겠습니다. 14nm 프로세스에서 IFOP(GMI) 링크는 내부 패브릭인 SDF 사이에서 1클럭에 16바이트(128비트)의 데이터를 주고 받습니다. 그리고 IFOP(GMI)의 전송은 FCLK 1클럭 당 4개를 전송합니다. 즉, IFOP(GMI)의 레인 당 전송 속도는 FCLK의 4배가 됩니다.

 

DDR4 인터페이스의 전송 속도가 3,200Mbps, 내부 구조가 1.6GHz FCLK로 작동한다면 IFOP(GMI)는 6.4Gbps의 전송 속도로 작동합니다. IFOP(GMI)는 클럭이 포함되지 않기에 6.4Gbps의 전송 속도의 1채널 DRAM 대역과 일치합니다. 2채널 DRAM과 맞추려면 IFOP(GMI)는 2링크가 필요합니다.

 

 

CPU마다 다른 IFOP (GMI)의 구성


AMD의 멀티 다이 젠은 IFOP(GMI)의 구성이 저마다 다릅니다. 크게 3가지가 있는데 읽기/쓰기가 모두 단방향 32바이트(256비트), FCLK 읽기/쓰기가 16바이트(128비트)인 구성, 7nm 에픽/스레드리퍼에서 읽기 32바이트(256비트)/FCLK고 쓰기가 16바이트(128비트)/FCLK인 비대칭 조합이 있습니다. 14nm 세대에선 읽기/쓰기 링크가 일치했으나 7nm 에픽/스레드리퍼는 비대칭이 됐습니다.

 

AMD는 젠2에서 구현된 IFOP(GMI)가 읽기/쓰기로 분할됐다고 설명합니다. 일반적으로 읽기 수신기(RX : Receiver)와 쓰기 송신기(TX : Transmitter)가 1대 1의 세트로 구성됩니다. 그러나 젠2는 읽기 RX와 쓰기 TX를 분리하고, 그 구성은 바꿀 수 있다고 설명합니다.

 

IFOP (GMI)의 기반 기술을 감안하면 단방향 32바이트(256비트)/FCLK도 물리적으로 x64 레인 구성이라 보여지진 않습니다. 32바이트(256비트)/FCLK의 경우 x32 RX가 2개 연결된 걸로 보입니다. 사실 14nm 세대에서는 32바이트(256비트)/FCLK가 2개의 x32 IFOP(GMI)로 연결됐었습니다.

 

구체적인 구성을 보면 14nm 프로세스에서는 IFOP (GMI)는 x32의 수신기와 x32의 송신기로 구성됐습니다. 4개의 다이를 서로 연결하는 14nm의 에픽/스레드리퍼의 32코어 다이는 x32의 TX와 RX 구성으로 연결됩니다. 데이터 전송은 단방향이 최대 16바이트(128비트)/FCLK입니다. 읽기/쓰기 구성은 같으며 대역폭도 마찬가지입니다.

 

2다이로 구성된 16코어 이하의 스레드리퍼는 다이 사이 연결에 IFOP(GMI) 2링크를 사용합니다. x32 링크가 2개로 단방향  x64, 인터커넥트는 32바이트(256비트)/FCLK의 전송 속도가 나옵니다. 이는 2채널 DRAM의 읽기 대역과 일치합니다. 14nm 라이젠은 싱글 다이니까 CPU 코어와 DRAM 사이에 IFOP(GMI)에 의한 연결이 없습니다. CPU 코어와 DRAM은 온칩의 32바이트(256비트)/FCLK로 연결됩니다.

 

4.png


14nm 세대의 IFOP (GMI)의 구성

 


CPU에서 DRAM에 액세스 IFOP(GMI)를 꼭 경유하는 7nm 젠 CPU


7nm는 CPU의 라이젠은 모든 CPU 다이가 I/O와 다른 다이 칩렛으로 분리됩니다. 즉, CPU와 DRAM 사이에 다이 인터커넥트를 반드시 거쳐야 합니다. IFOP (GMI2)을 그 인터커넥트로 사용합니다. 클라이언트 CPU는 1개나 2개의 CCD를 클아이언트용 I/O 다이인 cIOD(Client I/O Die)에 IFOP (GMI2)로 연결합니다. 젠 2세대의 클라이언트 버전 라이젠은 GMI2를 통한 전송이 1클럭 당 32바이트(256비트)입니다. 작동 클럭은 32바이트(256비트)/FCLK입니다. 

 

젠 2의 GMI2 전송 기술은 젠/젠+의 GMI 연장선상에 있기에 라이젠에서는 GMI2가 2링크의 TX/RX 구성을 사용하게 됩니다. 단방향 32비트 송/수신을 통해 2세트가 x64로 전송됩니다. 그래서 CCD는 2링크의 IFOP(GMI)를 구현합니다.

 

5.png


7nm 세대 IFOP (GMI2) 구성
 

7nm 에픽과 스레드리퍼는 CPU 다이인 CCD와 서버 I/O 다이인 sIOD의 읽기/쓰기가 비대칭으로 이루어집니다. CPU 읽기는 32바이트(256비트)/FCLK지만 CPU에서 메모리와 I/O에 데이터를 기록할 때는 16바이트(128비트)/FCLK입니다. 이건 일종의 타협입니다. 7nm 공정의 젠2 아키텍처는 CPU 코어와 DRAM 사이의 읽기 대역을 32바이트로 확보하면서도 패키징 복잡도와 전력 사용량을 억제해야 합니다. 그래서 쓰기 대역을 낮췄다고 보입니다.

 

 

32바이트/사이클을 유지하는 라이젠의 CPU-DRAM 대역


왜 7nm 젠2 아키텍처는 IOD에서 CCD의 읽기를 32바이트/FCLK로 유지해야 할까요? 그건 14nm 공정의 젠과 똑같은 DRAM 액세스 대역을 유지하기 위해서입니다.

 

14nm 젠 다이인 제플린은 2채널 DDR4 메모리 인터페이스가 Unified Memory Controller(UMC)를 통해 내부 버스 Scalable Data Fabric(SDF)에 32바이트(256비트)/FCLK로 연결됐습니다. SDF에서 CPU 클러스터 CCX(Core Complex)까지도 32바이트(256비트)/FCLK로 연결됩니다. 2채널 DRAM은 CPU 코어까지 온다이 32바이트(256비트)/FCLK, 대역으로 연결됩니다.

 

6.png

 

클라이언트용 라이젠의 DRAM 액세스를 비교한 이미지입니다. 7nm 젠 2는 I/O와 메모리에서 CPU 코어 클러스터 CCX까지 IFOP(GMI2)를 거쳐서 연결됩니다. 1링크 IFOP(GMI2)는 16바이트(128비트)/FCLK입니다. 온 칩에서 메모리 액세스가 끝났던 14nm 젠과 같은 대역폭을 내기 위해선 다이 연결을 32바이트(256비트)/FCLK로 해야 합니다.

 

싱글 스레드 성능이 중요한 클라이언트 CPU에선 메모리 대역폭이 매우 중요합니다. 따라서 젠 2 클라이언트는 CCD와 cIOD 사이를 양방향 2 링크 IFOP (GMI2)로 연결한 것 같습니다. 클라이언트용 I/O 다이인 cIOD는 4링크의 IFOP (GMI2)를 조합합니다. cIOD은 2개까지의 CCD를 연결할 수 있기에 4개의 TX와 4개의 RX를 갖췄다고 보여집니다.

 

 

각 세대마다 크게 달라진 스레드리퍼의 패브릭 구성

 

14nm의 16코어스레드리퍼는 2개의 제플린 다이로 구성됐습니다. 각각의 다이에 CPU 코어 컴플렉스 CCX와 DRAM 인터페이스가 있습니다. CCX와 같은 다이의 DRAM 인터페이스는 온다이의 SDF로 32바이트/FCLK로 연결됩니다. 그리고 다이 사이도 2링크 IFOP(GMI)를 사용하기에, 다이 사이의 읽기/쓰기는 32바이트/FCLK입니다. 따라서 다른 다이에 연결된 DRAM도 32바이트/FCLK의 완전한 대역으로 연결돼 DRAM 대역 그대로 읽기/쓰기가 가능합니다.

 

7.png

 

14nm 16코어 스레드리퍼

 

8.png

 

14nm 공정 스레드리퍼의 구성 차이

 

9.png

 

스레드리퍼의 DRAM 액세스  

 

같은 14nm 스레드리퍼여도 그 다음 세대의 32코어 버전에선 DRAM 액세스 대역이 바뀝니다. 32코어 버전은 4개의 다이를 연결하기 위해 다이 사이는 1링크 IFOP(GMI)가 16바이트(128비트)/FCLK 전송으로 바뀌었습니다. 또 DRAM 인터페이스를 활성화한 건 2개의 다이 뿐이며, 나머지 2개 다이는 DRAM 인터페이스를 끈 컴퓨팅 다이입니다. DRAM에 연결된 I/O 다이는 온칩 32바이트(256비트)/FCLK의 DRAM 액세스가 가능하지만, 컴퓨팅 다이는 16바이트는 16바이트(128비트)/FCLK의 DRAM 액세스입니다. 균형적인 구성은 아니나, 절반의 코어는 온칩 32바이트 DRAM 액세스가 가능합니다. 

 

10.png

 

16코어의 1세대 스레드리퍼

 

11.png

 

32코어의 2세대 스레드리퍼 

 

7nm 스레드리퍼는 1세대 16코어 스레드리퍼와 마찬가지로 모든 CPU 코어 컴프렉스에서 DRAM에 32바이트/FCLK 읽기가 가능합니다. CPU 코어가 2채널 DRAM 인터페이스에 맞먹는 대역으로 I/O 다이에 연결됩니다. 

 

CCD와 sIOD을 2 링크의 IFOP(GMI2)에 연결하면 읽기/쓰기 모두 32바이트/FCLK입니다. 그러나 AMD는 그렇게 하지 않고 읽기는 32바이트, 쓰기는 16비트로 했습니다. CPU가 데이터를 쓰기보다는 읽는 경우가 더 높아서입니다. AMD의 설명에 의하면 읽기/쓰기의 비율은 거의 4대 1입니다. 그래서 7nm 젠2에서 서버/크리에이티브 작업을 중시한 에픽/스레드리퍼는 읽기 대역폭이 더 넓은 비대칭 방식으로 연결됐습니다. 

 

 

 

읽기 대역이 오른 에픽의 IFOP (GMI) 구성

 

12.png


다이 사이의 연결 대역을 에픽과 비교한 그림입니다. 14nm에선 같은 다이의 DRAM 인터페이스에서 CCX가 32바이트로 액세스했습니다. 다른 다이에 연결된 DRAM은 1링크 IFOP니까 16바이트를 씁니다. 서버는 많은 수의 CPU 코어를 쓰기에 별 문제가 되지 않습니다. 그러나 7nm 에픽은 스레드리퍼와 마찬가지로 DRAM에서 CCX까지 메모리 읽기는 32바이트입니다. 2채널 DRAM 대역에 맞춘 더 나은 구성입니다. 물론 I/O 다이의 내부 구조가 스위치 성능을 완전히 끌어내야 한다는 조건이 붙습니다. 

 

왜 AMD는 에픽/스레드리퍼에서 비대칭 구성을 썼을까요? 예상 이유 중 하나는 패키징 복잡도를 낮추기 위해서입니다. 젠의 멀티 다이는 배선이 매우 복잡합니다. 32코어 스레드리퍼와 비교하면 14nm와 7nm는 IFOP (GMI)의 배선 수가 같습니다. 패브릭의 소비 전력도 문제입니다. 패키지 와이어는 젠보다 젠 2 쪽이 더 쉽고, 배선 길이가 짧으며 전력도 그만큼 줄였습니다.

 

IFOP (GMI)는 AMD 멀티 다이 아키텍처의 핵심 기술이며, AMD는 여기에 많은 공을 들였습니다. 14nm 공정과 비교하면 지연을 줄이고 구조를 개선해 전력 사용량을 낮췄습니다.   


하드웨어포럼

토론게시판

List of Articles
분류 제목 글쓴이 조회 수 최근 수정일
일반/잡담 DDR4 램클럭 3200 기본클럭으로 자리잡는듯 file 회원_88989712 105 19.12.30
일반/잡담 라이젠 3600 국민오버 성공 file 회원_22884000 2081 19.12.27
정보글 “코어 수보다 동작 클록이 중요해” 인텔의 위기감 2 file 회원_75325653 102 19.12.27
일반/잡담 Intel(R) PRO 1000 PL Network Connection 네트워크 드라이버 구합니다 4 회원_91430940 148 19.12.25
일반/잡담 HDD 제조사별 하드디스크 고장률 1029 통계 file 회원_22440523 152 19.12.22
하드웨어팁 CPU/GPU 열전도율 및 서멀구리스 가성비 비교 file 회원_40417683 281 19.12.17
정보글 인텔, 서버 CPU 연기를 부인. 10nm 아이스레이크 제온은 2020년 하반기에 출시 file 회원_53942812 37 19.12.14
정보글 AMD 젠 2 8코어 수율, 93.5% file 회원_96895276 61 19.12.14
정보글 3세대 라이젠 스레드리퍼를 뒷받침하는 다이 연결 기술 file 회원_29685326 105 19.12.14
정보글 TSMC 5nm 테스트 칩의 수율은 80%, 내년 상반기에 대규모 양산 file 회원_41927043 38 19.12.14
일반/잡담 2070 super 구입시 참고하세요 (v2제품들 까보기) file 회원_14332997 68 19.12.14
일반/잡담 인텔 코어 i5-10600, 6코어 12스레드 구성 1 file 회원_47866669 99 19.12.13
정보글 2029년 인텔 CPU 로드맵 방향 (14나노에서 1.4나노 발전방향) file 회원_99851074 54 19.12.13
정보글 인텔의 새 취약점, Plundervolt file 회원_00446647 57 19.12.13
정보글 AMD 라데온 프로 W5700X 발표 file 회원_67296000 83 19.12.13
정보글 인텔 레이크필드 3D 패키징 프로세서, 내년 말에 업그레이드 file 회원_24409546 21 19.12.13
일반/잡담 I5-3570 DDR3 메모리 레이턴시 값 2 file 회원_30096181 160 19.12.13
일반/잡담 중고나라에 풀린 라이젠 1600 가성비 킹왕인듯 1 회원_99757250 750 19.12.12
일반/잡담 AMD Ryzen 5 1600/1700 오버클럭별 전력소비 측정 1 file 회원_00064292 156 19.12.12
하드웨어팁 모니터 해상도에 따른 가독성 최적화 크기(인치)를 알아보자 Full HD (FHD) file 회원_33490221 1583 19.12.02
하드웨어팁 ASUS 모니터 고객센터 통화후기 회원_48350274 122 19.10.09
하드웨어팁 실리콘파워 AS 정책 1 회원_93015839 543 19.10.09
하드웨어팁 ​​​​​​​SSD 최적화 이것만 알아두자 이해하기 쉬운 SSD 최적화 file 회원_38707290 149 19.10.02
하드웨어팁 컴퓨터 조립 동영상 가장 자세한 포스트 원리를 배우자 file 회원_40673915 80 19.10.02
일반/잡담 AMD계열 CPU의 쿨러 분리시 꼭 해야할 필수 꿀팁 1 file 회원_97064732 377 19.10.01
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 69 Next
/ 69
서버에 요청 중입니다. 잠시만 기다려 주십시오...