하이퍼트랜스포트

섬네일|하이퍼트랜스포트 컨소시엄 로고

**하이퍼트랜스포트**(HyperTransport, **HT**, 이전 명칭: Lightning Data Transport)로 알려졌으며, 컴퓨터 프로세서 간의 연결을 위한 기술이다. 2001년 4월 2일에 도입된 양방향 직렬/병렬 고대역폭, 저레이턴시 점대점 링크이다. 하이퍼트랜스포트 컨소시엄이 하이퍼트랜스포트 기술의 홍보와 개발을 담당하고 있다.

하이퍼트랜스포트는 애슬론 64부터 AMD FX에 이르는 AMD 중앙 처리 장치(CPU)와 관련 메인보드 칩셋의 시스템 버스 아키텍처로 가장 잘 알려져 있다. 하이퍼트랜스포트는 IBM과 애플의 파워 맥 G5 머신뿐만 아니라 다수의 현대적인 MIPS 시스템에서도 사용되었다.

현재 사양인 HTX 3.1은 2014년형 고속(2666 및 3200&nbsp;MT/s 또는 약 10.4&nbsp;GB/s 및 12.8&nbsp;GB/s) DDR4 RAM 및 더 느린(고성능 PCIe SSD인 ULLtraDIMM 플래시 RAM과 유사한 약 1&nbsp;GB/s http://www.extremetech.com/computing/175283-sandisk-announces-ulltra-dimms-terabytes-of-low-latency-flash-storage-directly-off-the-ram-channel) 기술에 대해 경쟁력을 유지했다. 이는 인텔의 그 어떤 프론트 사이드 버스보다 공통 CPU 버스에서 더 넓은 범위의 RAM 속도를 지원한다. 인텔 기술은 각 RAM 속도 범위마다 고유한 인터페이스를 요구하므로 메인보드 레이아웃이 더 복잡해지지만 병목 현상은 적다. 26&nbsp;GB/s의 HTX 3.1은 제안된 가장 빠른 속도로 실행되는 최대 4개의 DDR4 스틱을 위한 통합 버스 역할을 할 수 있다. 그 이상의 DDR4 RAM은 두 개 이상의 HTX 3.1 버스를 필요로 할 수 있어 통합 전송으로서의 가치가 떨어진다.

## 개요
### 링크 및 속도
하이퍼트랜스포트는 네 가지 버전(1.x, 2.0, 3.0, 3.1)이 있으며 200MHz에서 3.2&nbsp;GHz까지 작동한다. 또한 DDR 또는 "더블 데이터 레이트" 연결 방식으로, 이는 클럭 신호의 상승 및 하강 에지 모두에서 데이터를 전송함을 의미한다. 이를 통해 3.2&nbsp;GHz로 작동할 때 최대 6400 MT/s의 데이터 속도를 낼 수 있다. 작동 주파수는 현재 컴퓨팅에서 메인보드 칩셋(노스브리지)과 자동으로 협상된다.

하이퍼트랜스포트는 링크당 2비트에서 32비트까지 자동 협상된 비트 폭을 지원한다. 하이퍼트랜스포트 버스당 두 개의 단방향 링크가 있다. 버전 3.1의 출현과 함께 완전한 32비트 링크를 사용하고 하이퍼트랜스포트 3.1 사양의 전체 작동 주파수를 활용하면, 이론적 전송 속도는 방향당 25.6&nbsp;GB/s (3.2&nbsp;GHz × 클럭 사이클당 2회 전송 × 링크당 32비트), 또는 총합 51.2&nbsp;GB/s의 처리량에 달한다. 이는 PC 워크스테이션 및 서버를 위한 대부분의 기존 버스 표준보다 빠르며, 고성능 컴퓨팅 및 네트워킹을 위한 대부분의 버스 표준보다도 빠르다.

다양한 폭의 링크를 단일 시스템 구성에서 혼합하여 사용할 수 있다. 예를 들어 다른 CPU에는 하나의 16비트 링크를, 주변기기 장치에는 하나의 8비트 링크를 연결하는 식이다. 이를 통해 CPU 간에는 더 넓은 상호 연결을, 주변기기에는 적절하게 낮은 대역폭의 상호 연결을 허용한다. 또한 단일 16비트 링크를 두 개의 8비트 링크로 나눌 수 있는 링크 분할을 지원한다. 이 기술은 또한 오버헤드가 적어 다른 솔루션보다 일반적으로 레이턴시가 낮다.

전기적으로 하이퍼트랜스포트는 1.2&nbsp;V에서 작동하는 낮은 전압 차분 신호(LVDS)와 유사하다. 하이퍼트랜스포트 2.0은 포스트 커서 트랜스미터 디엠퍼시스(deemphasis)를 추가했다. 하이퍼트랜스포트 3.0은 스크램블링 및 수신기 위상 정렬과 선택적 트랜스미터 프리커서 디엠퍼시스를 추가했다.

### 패킷 지향
하이퍼트랜스포트는 패킷 기반으로, 링크의 물리적 폭에 관계없이 각 패킷은 일련의 32비트 워드로 구성된다. 패킷의 첫 번째 워드에는 항상 명령 필드가 포함된다. 많은 패킷이 40비트 주소를 포함한다. 64비트 주소 지정이 필요할 때는 추가적인 32비트 제어 패킷이 앞에 붙는다. 데이터 페이로드는 제어 패킷 뒤에 전송된다. 전송은 실제 길이에 관계없이 항상 32비트의 배수로 채워진다.

하이퍼트랜스포트 패킷은 비트 타임(bit times)이라고 알려진 세그먼트로 상호 연결망에 진입한다. 필요한 비트 타임의 수는 링크 폭에 따라 달라진다. 하이퍼트랜스포트는 또한 시스템 관리 메시징, 신호 인터럽트, 인접 장치나 프로세서에 대한 프로브(probe) 발행, I/O 트랜잭션 및 일반 데이터 트랜잭션을 지원한다. 두 가지 종류의 쓰기 명령이 지원되는데, 포스티드(posted)와 논포스티드(non-posted)이다. 포스티드 쓰기는 대상으로부터의 응답을 요구하지 않는다. 이는 일반적으로 일반 메모리 액세스 트래픽이나 직접 메모리 접근 전송과 같은 고대역폭 장치에 사용된다. 논포스티드 쓰기는 수신기로부터 "대상 완료" 응답 형태의 응답을 요구한다. 읽기 또한 읽은 데이터를 포함하는 응답을 요구한다. 하이퍼트랜스포트는 PCI 소비자/생산자 순서 모델을 지원한다.

### 전원 관리
하이퍼트랜스포트는 고급 구성 및 전원 인터페이스(ACPI) 사양을 준수하므로 전원 관리를 용이하게 한다. 이는 프로세서 수면 상태(C 상태)의 변화가 장치 상태(D 상태)의 변화를 신호할 수 있음을 의미한다. 예를 들어 CPU가 수면에 들어가면 디스크 전원을 끄는 식이다. 하이퍼트랜스포트 3.0은 중앙 집중식 전원 관리 컨트롤러가 전원 관리 정책을 구현할 수 있도록 하는 추가 기능을 추가했다.

## 응용
### 프론트 사이드 버스 대체
하이퍼트랜스포트의 주요 용도는 인텔 프로세서의 종류마다 다른 인텔 정의 프론트 사이드 버스를 대체하는 것이다. 예를 들어, 펜티엄은 PCI 익스프레스 버스에 직접 연결할 수 없으며 시스템을 확장하기 위해 먼저 어댑터를 거쳐야 한다. 독점적인 프론트 사이드 버스는 AGP나 PCI 익스프레스와 같은 다양한 표준 버스를 위한 어댑터를 통해 연결되어야 한다. 이들은 일반적으로 각각 노스브리지와 사우스브리지라고 불리는 해당 컨트롤러 기능에 포함되어 있다.

반면, 하이퍼트랜스포트는 여러 회사의 컨소시엄에서 발표한 개방형 사양이다. 단일 하이퍼트랜스포트 어댑터 칩은 광범위한 하이퍼트랜스포트 지원 마이크로프로세서와 작동한다.

AMD는 옵테론, 애슬론 64, 애슬론 II, 셈프론 64, 튜리온 64, 페넘, 페넘 II 및 FX 마이크로프로세서 제품군에서 프론트 사이드 버스를 대체하기 위해 하이퍼트랜스포트를 사용했다.

### 멀티프로세서 상호 연결
하이퍼트랜스포트의 또 다른 용도는 NUMA 멀티프로세서 컴퓨터를 위한 상호 연결망으로 사용하는 것이다. AMD는 옵테론 및 애슬론 64 FX(듀얼 소켓 직접 연결(DSDC) 아키텍처) 프로세서 라인에서 다이렉트 커넥트 아키텍처의 일부로 독점적인 캐시 일관성 확장과 함께 하이퍼트랜스포트를 사용했다. EPYC 서버 CPU에 사용되는 인피니티 패브릭은 하이퍼트랜스포트의 슈퍼셋이다. Newisys의 HORUS 인터커넥트는 이 개념을 더 큰 클러스터로 확장한다. 3Leaf Systems의 Aqua 장치는 CPU, 메모리 및 I/O를 가상화하고 상호 연결한다.

### 라우터 또는 스위치 버스 대체
하이퍼트랜스포트는 라우터 및 네트워크 스위치의 버스로도 사용될 수 있다. 라우터와 스위치는 여러 네트워크 인터페이스를 가지고 있으며, 이 포트들 사이에서 데이터를 가능한 한 빨리 전달해야 한다. 예를 들어, 4포트 1000&nbsp;Mbit/s 이더넷 라우터는 최대 8000&nbsp;Mbit/s의 내부 대역폭(1000&nbsp;Mbit/s × 4 포트 × 2 방향)이 필요하며, 하이퍼트랜스포트는 이 애플리케이션이 요구하는 대역폭을 크게 상회한다. 그러나 4 + 1 포트 10&nbsp;Gb 라우터는 100&nbsp;Gbit/s의 내부 대역폭이 필요하다. 여기에 802.11ac 8개 안테나와 WiGig 60&nbsp;GHz 표준(802.11ad)을 더하면 하이퍼트랜스포트가 더 적합해진다(필요한 대역폭을 위해 20개에서 24개의 레인을 사용).

### 보조 프로세서 상호 연결
CPU와 보조 프로세서 사이의 레이턴시와 대역폭 문제는 일반적으로 실질적인 구현에 있어 주요 장애물이었다. FPGA와 같은 보조 프로세서가 하이퍼트랜스포트 버스에 액세스하여 메인보드에 통합될 수 있도록 등장했다. 주요 제조업체인 알테라와 자일링스의 현재 세대 FPGA는 하이퍼트랜스포트 인터페이스를 직접 지원하며, 사용 가능한 반도체 IP 코어를 보유하고 있다. XtremeData, Inc. 및 DRC와 같은 회사는 이러한 FPGA(DRC의 경우 자일링스)를 가져와 FPGA가 옵테론 소켓에 직접 꽂힐 수 있게 하는 모듈을 만든다.

AMD는 2006년 9월 21일 플러그인 카드 및 보조 프로세서를 위한 하이퍼트랜스포트 사용을 더욱 촉진하기 위해 Torrenza라는 이니셔티브를 시작했다. 이 이니셔티브는 그들의 "소켓 F"를 XtremeData 및 DRC와 같은 회사의 플러그인 보드에 개방했다.

### 추가 카드 커넥터 (HTX 및 HTX3)
섬네일|위에서 아래로 커넥터: HTX, 라이저 카드용 PCI 익스프레스, PCI 익스프레스
슬롯 기반 주변기기가 하이퍼트랜스포트 인터페이스를 사용하여 마이크로프로세서에 직접 연결될 수 있도록 하는 커넥터 사양이 하이퍼트랜스포트 컨소시엄에 의해 발표되었다. 이는 **HTX**(**H**yper**T**ransport e**X**pansion)로 알려져 있다. 16레인 PCI 익스프레스 슬롯과 동일한 기계적 커넥터의 반대 형상(전원 핀용 x1 커넥터 추가)을 사용하여, HTX는 CPU에 대한 직접 액세스와 시스템 RAM에 대한 DMA를 지원하는 플러그인 카드 개발을 가능하게 한다. 이 슬롯용 최초의 카드는 QLogic InfiniPath 인피니밴드 HCA였다. IBM과 HP 등은 HTX 준수 시스템을 출시했다.

원래의 HTX 표준은 16비트 및 800MHz로 제한된다.

2008년 8월, 하이퍼트랜스포트 컨소시엄은 HTX의 클럭 속도를 2.6&nbsp;GHz(5.2&nbsp;GT/s, 10.7&nbsp;GTi, 5.2 실제 GHz 데이터 속도, 3&nbsp;MT/s 편집 속도)로 확장하고 하위 호환성을 유지하는 HTX3를 발표했다.

### 테스트
표준화된 기능 테스트 시스템 상호 연결을 가능하게 하기 위해 "DUT" 테스트 커넥터가 정의되어 있다.

## 구현
* AMD AMD64 및 다이렉트 커넥트 아키텍처 기반 CPU
* AMD 칩셋
** AMD-8000 시리즈
** AMD 480 시리즈
** AMD 580 시리즈
** AMD 690 시리즈
** AMD 700 시리즈
** AMD 800 시리즈
** AMD 900 시리즈
* ATI 칩셋
** AMD 프로세서용 ATI Radeon Xpress 200
** AMD 프로세서용 ATI Radeon Xpress 3200
* 브로드컴 (당시 ServerWorks) 하이퍼트랜스포트 SystemI/O 컨트롤러
** HT-2000
** HT-2100
* 시스코 QuantumFlow 프로세서
* OpenCores 프로젝트의 ht_tunnel (MPL 라이선스)
* IBM CPC925 및 CPC945 (PowerPC 970 노스브리지) 칩셋
* 룽손-3 MIPS 프로세서
* 엔비디아 엔포스 칩셋
** 엔포스 및 엔포스2 시리즈 (노스브리지와 사우스브리지 간의 링크)
** 엔포스 프로페셔널 MCPs (Media and Communication Processor)
** 엔포스3 시리즈
** 엔포스 4 시리즈
** 엔포스 500 시리즈
** 엔포스 600 시리즈
** 엔포스 700 시리즈
** 엔포스 900 시리즈
* PMC-Sierra RM9000X2 MIPS CPU
* 파워 맥 G5
* Raza 스레드 프로세서
* 브로드컴의 SiByte MIPS CPU
* 트랜스메타 TM8000 Efficeon CPU
* 비아 칩셋 K8 시리즈

## 주파수 사양

 AMD 애슬론 64, 애슬론 64 FX, 애슬론 64 X2, 애슬론 X2, 애슬론 II, 페넘, 페넘 II, 셈프론, 튜리온 시리즈 및 그 이후 모델은 하나의 16비트 하이퍼트랜스포트 링크를 사용한다. AMD 애슬론 64 FX(1207), 옵테론은 최대 세 개의 16비트 하이퍼트랜스포트 링크를 사용한다. 이러한 프로세서 링크의 일반적인 클럭 속도는 800&nbsp;MHz에서 1&nbsp;GHz(754/939/940 링크를 사용하는 구형 싱글 및 멀티 소켓 시스템) 및 1.6&nbsp;GHz에서 2.0&nbsp;GHz(AM2+/AM3 링크를 사용하는 최신 싱글 소켓 시스템—대부분의 최신 CPU는 2.0GHz 사용)이다. 하이퍼트랜스포트 자체는 32비트 폭의 링크가 가능하지만, 그 폭은 현재 AMD 프로세서에서 활용되지 않고 있다. 일부 칩셋은 프로세서에서 사용하는 16비트 폭조차 활용하지 않기도 한다. 여기에는 엔비디아 엔포스3 150, 엔포스3 프로 150 및 ULi M1689가 포함되는데, 이들은 16비트 하이퍼트랜스포트 다운스트림 링크를 사용하지만 하이퍼트랜스포트 업스트림 링크를 8비트로 제한한다.

## 이름
하이퍼트랜스포트를 가리키는 **HT**의 사용과, 일부 펜티엄 4 기반 및 최신 네할렘 및 웨스트미어 기반 인텔 코어 마이크로프로세서의 인텔 하이퍼스레딩 기능을 가리키는 **HT**의 나중 사용 사이에 마케팅적 혼선이 있었다. 하이퍼스레딩은 공식적으로 **H**yper-**T**hreading **T**echnology (**HTT**) 또는 **HT Technology**로 알려져 있다. 이러한 혼동 가능성 때문에 하이퍼트랜스포트 컨소시엄은 항상 전체 명칭인 "HyperTransport"를 사용한다.

## 인피니티 패브릭
**인피니티 패브릭**(**Infinity Fabric**, **IF**)은 AMD가 2016년에 GPU와 CPU를 위한 상호 연결망으로 발표한 하이퍼트랜스포트의 슈퍼셋이다. 내부적으로 사용될 때는 **글로벌 메모리 인터커넥트**(Global Memory Interconnect, GMI)라고 불린다. 또한 CPU와 CPU, GPU와 GPU, 또는 CPU와 GPU(이기종 시스템 아키텍처를 위한) 간의 통신을 위한 칩 간 상호 연결망으로도 사용 가능하며, 이 구성을 **인피니티 아키텍처**(Infinity Architecture)라고 하고, 그 링크는 **외부 글로벌 메모리 인터커넥트**(External Global Memory Interconnect, xGMI)로 알려져 있다. 회사는 인피니티 패브릭이 30GB/s에서 512GB/s까지 확장될 것이며, 이후 2017년에 출시된 젠 기반 CPU와 베가 GPU에 사용될 것이라고 밝혔다.

젠 및 젠+ CPU에서 "SDF" 데이터 상호 연결은 DRAM 메모리 클럭(MEMCLK)과 동일한 주파수에서 실행되는데, 이는 서로 다른 클럭 속도로 인해 발생하는 레이턴시를 제거하기 위한 결정이었다. 결과적으로 더 빠른 RAM 모듈을 사용하면 버스 전체가 더 빨라진다. 링크는 HT와 마찬가지로 32비트 폭이지만, 원래의 2회 전송에 비해 사이클당 8회 전송(128비트 패킷)이 수행된다. 더 높은 전력 효율을 위해 전기적 변경이 이루어졌다. 젠 2 및 젠 3 CPU에서 IF 버스는 별도의 클럭(FCLK)에서 실행되며 통합 메모리 컨트롤러(UCLK)도 마찬가지다. UCLK는 DRAM 클럭(MCLK)에 대해 1:1 또는 2:1 비율을 갖는다. 이는 데스크톱 플랫폼에서 최대 DRAM 속도가 실제로는 IF 속도에 의해 제한되던 한계를 피하게 해준다. 버스 폭 또한 두 배로 늘어났다. FCLK가 UCLK와 동기화되지 않을 때 레이턴시 페널티가 발생한다. 젠 4 및 그 이후의 CPU에서 IF 버스는 DDR5가 가능한 더 높은 클럭 속도를 허용하기 위해 DRAM과 비동기 클럭으로 실행될 수 있다.

### 인피니티 패브릭 링크
AMD GPU의 전문가용/워크스테이션 모델에는 호스트 PCIe 버스를 거치지 않고 GPU의 인피니티 패브릭 버스들을 서로 연결하기 위한 인피니티 패브릭 링크 에지 커넥터가 포함되어 있다. 링크 "브리지" 장치 자체는 2개 또는 4개의 일치하는 슬롯이 있는 인쇄 회로 기판이다. 각 GPU 제품군은 서로 다른 커넥터를 사용하며 브리지/링크는 일반적으로 동일한 모델의 GPU 간에만 작동한다. 따라서 이는 NVLink의 플러그인 보드 버전과 유사하다.

### 인피니티 아키텍처 예시
젠 5 기반의 Epyc CPU는 코어당 36&nbsp;GB/s의 내부 인피니티 패브릭 연결을 갖는다. 각 IO 다이는 다기능 PCIe 5.0/인피니티 패브릭 직렬 변환기/병렬 변환기(SerDes)에서 외부 인피니티 패브릭 연결성을 가지며, PCIe 물리 계층을 재사용한다. 이는 2소켓 시스템에서 프로세서 간 통신에 사용되어 각각 64&nbsp;GB/s의 링크 3개 또는 4개를 제공한다.

각 Instinct MI250은 xGMI 프로토콜을 실행하는 메시 상호 연결을 위해 각각 50&nbsp;GB/s의 인피니티 패브릭 링크 4개 레인을 갖는다. 이는 PCIe Gen 4 x16 또는 PCIe PHY 위의 인피니티 패브릭을 통해 호스트에 연결된다. 서로 다른 중간 GPU를 통과하는 여러 링크의 대역폭을 합산할 수 있다. 실제 달성 가능한 성능 수치는 Schieffer 등의 연구(2024)를 참조하라.

### 제3자 지원
UALink는 공유 메모리 프로토콜 중 하나로 인피니티 패브릭/xGMI를 활용한다.

브로드컴은 xGMI 지원이 포함된 PCIe 스위치 및 네트워크 인터페이스 카드를 생산한다.

## 각주

## 같이 보기
* 퀵패스 인터커넥트
* 프론트 사이드 버스
* PCI 익스프레스

## 외부 링크
* 하이퍼트랜스포트 협회 
* 기술 페이지
* 기술 규격 

분류:컴퓨터 버스
분류:직렬 버스