HyperTransport

HyperTransport总线技术，简称“HT总线”，以前曾被称作“闪电数据传输”（Lightning Data Transport，LDT），是一种电脑处理器的互联技术。它是一种高速、双向、低延时、点对点（P2P）、串行或者并行的高带宽连接总线技术，最早在1999年由超微半导体提出并发起，并联合NVIDIA、ALi、ATI、Apple、全美达、IBM、CISCO等多个硬件厂商组成HyperTransport开放联盟，于2001年4月2日开始将此总线技术投入使用，并由HyperTransport联合会（The HyperTransport Consortium）负责改进和发展此技术。

## 名称

卖场中常有“HT总线”与日后英特尔“HT技术”的混淆，然而这两个是截然不同的技术。HT一般指HyperTransport，或简称HT总线，一般情况下HyperTransport联合会都是使用全称“HyperTransport”以免造成歧义。而应用于奔腾4处理器、英特尔Nehalem微架构及其后续微架构之处理器的“HT技术”，英特尔的官方简称是HTT，Hyper-Threading Technology 或简称HT Technology（HT技术）。

## 概览

HyperTransport旨在提高个人计算机、服务器、嵌入式系统，以及网络和电信设备内集成电路之间的通信速度。该技术有助于减少系统之中的布线数量，从而能够减少系统瓶颈，让当前速度更快的微处理器能够更加有效地在高端多处理器系统中使用系统内存。英特尔在使用QPI以前常用的前端总线，与同时代的HyperTransport总线规格相比，后者拥有更高的带宽以及内存存取速率，而英特尔的技术，要求不同的RAM存取速率范围要有各自的连接界面，这种设计导致了若要减少总线带宽瓶颈，势必会增加主板的布线设计复杂度。HT总线的扩展HTX3.1在最高带宽时，可以作为一个统一总线容纳四根DDR4模组的所需带宽，若需要容纳更多的DDR4内存，则可能需要两个或更多的HTX3.1总线控制器，然而这样做会使每个控制器的传输值降低。

主要特性：

- 提供比现有技术高得多的带宽
- 使用低延时响应和较少的引脚数
- 在保持与传统电脑总线的兼容性的同时，可以扩展到新的SNA（系统网络架构）总线
- 对操作系统保持透明，对周边设备驱动程序的影响极小

现时HT总线的一个扩展规格HTX3.1，相对于在2014年面世的高速DDR4内存以及较慢的TeraByte级（约1GB/s，与高阶PCIe SSD类似）ULLtraDIMM快闪型随机存取内存（RAM）技术，仍然在竞争中占上风。

### 连接、传输率

HyperTransport迄今推出了4个版本——1.x、2.0、3.0、3.1，它们之中运作频率最低200MHz，最高3.2GHz（而PCI总线频率为33MHz或66MHz）。它也是一种双倍数据速率（DDR）连接技术，意味着它可以在一个时钟信号的上行沿和下行沿各传输一次数据。HT3.1当运行在3.2GHz时可以最高以6400MT/s传递数据。而且它具有自适应性，允许根据当前的运算需求，在芯片组（北桥）或处理器中确定自己的频率。此外，HyperTransport的资料传输模式是双向传输、各向独占、同时进行的。

HyperTransport支援自适应位元宽度，范围从每链路2位元到32位元；每个HyperTransport控制器还有两路单向链路。在HT3.1版本中，当运作于32位元每链路、以及HT3.1的最高规格的时脉时，理论传输值可达每个传输方向25.6GB/s（3.2GHz×每时钟周期传输两次×每链路32位元之位宽），或双向共51.2GB/s的带宽，几乎比现有的个人电脑、工作站以及服务器的总线标准都要高，同样也是高效能运算及网络中最快的总线标准（注：QPI在英特尔的技术说明上不属于总线，尽管它的带宽最大可以超过HT总线之最高带宽）。

在单个系统中，它允许不同宽度的链路混合连接，比如一个系统中CPU使用16位元链路，8位元连接至内存而另外8位元连接外围装置；除此以外还支援链路拆分，不同位宽标准的总线可以变为同一位宽标准的总线（比如说，其中单个16位的链路可以拆分为两个8位的链路），这就令Hypertransport既能满足CPU和内存之间的互联，也能满足周边设备之间的互联。而且HyperTransport拥有比其他的总线解决方案标准更低的延迟。此外，为满足多个装置的连接，HyperTransport还支援菊花链的手段实作之。连接对象除了SMP系统中处理器与处理器、普通个人电脑的处理器与芯片组以外，还有路由控制芯片、芯片组的南北桥芯片、其它总线的控制器等等，只要连接对象拥有HyperTransport控制器，即可进行连接，无需中介界面。

电信号制式上，HyperTransport使用类似于低电压差分信号（LVDS）的1.2V运作电压。HT2.0加入post-cursor发射器去加重。HT3.0加入混杂和接收相位校准以及可选发射器前置去加重。

### 资料封包

HyperTransport的资料传输基于资料封包/包裹（Packet）。在HT总线中，不管连接的物理位宽是多少，每个包裹总是由32位元的数据集合组成。命令消息总是放在包裹的最前面。如果一个包裹里面包含有地址，那么命令消息的最后8位元数据和下面的32位元数据就会串成一个40位元的地址。如果有64位寻址的需求，那么就会预先计划一个附加的32位元控制数据包。另外的32位元数据是有效数据（payload）。传输的数据不管实际长度是多少，总会被填充到某个32位元的倍数。

HyperTransport的包裹以位次（bit times）的方式实现互联。所需要的位次的数量由互联设备之间的位宽决定。HyperTransport还能用于转换系统管理信息、发送中断、发送探针给邻近的设备或者处理器，以及充当一般I/O和数据的交换的桥梁。HyperTransport有两种不同类型的写命令，称作Posted和Non-Posted。Posted这种写方式不需要目标的回应，一般用于高带宽设备之间的互联。None-Posted的写方式，相反地，就需要目标以一种“target done”的方式回应。读取数据同样也会使目标发送读回应。HT总线支援多重处理，和PCI相同的consumer/producer次序规则模型。

### 电源管理

HyperTransport提供了比ACPI更加先进的电源管理系统。它可以根据处理器睡眠状态（C State）的变化发送改变设备状态（D state）的信号。比如说，当CPU进入睡眠状态时候，关闭硬盘。另外HyperTransport提供的是2.5V的低电压。HT3.0中新增新的电源功能，允许一个集中式电源管理控制器实现电源管理策略。

## 版本规格

HyperTransport版本｜发布年份｜最大HT总线时脉｜每链路最大位宽｜最大带宽（双向）｜单向16位元位宽之最大带宽（GB/s）｜单向32位元位宽之最大带宽、（GB/s）

1.0｜2001｜800 MHz｜32-bit｜12.8 GB/s｜3.2｜6.4

1.1｜2002｜800 MHz｜32-bit｜12.8 GB/s｜3.2｜6.4

2.0｜2004｜1.4 GHz｜32-bit｜22.4 GB/s｜5.6｜11.2

3.0｜2006｜2.6 GHz｜32-bit｜41.6 GB/s｜10.4｜20.8

3.1｜2008｜3.2 GHz｜32-bit｜51.2 GB/s｜12.8｜25.6

- 注：超微速龙64、速龙64 FX、速龙64 X2、速龙X2、速龙II、羿龙、羿龙II、闪龙、炫龙/锐龙系列以及以后的系列型号使用单16位元HyperTransport链路。而速龙64 FX（Socket F版本）、皓龙则是使用多达三条16位元宽度的HyperTransport链路。这些处理器中较老型号的HT总线时脉在800MHz至1GHz（多见于Socket 754/939/940插座的单/多处理器平台），较新型号的则可达1.6GHz、2.0GHz等时脉规格（使用Socket AM2+/AM3插座的单处理器平台，一般使用2.0GHz的时脉规格）。而HyperTransport自身最大的每链路32位元位宽的规格，任何AMD处理器都未完全利用。一些芯片组也没有用到处理器提供的全部16位元链路，这些芯片组包括辉达nForce3 150、nForce3 Pro 150、ALi的M1689——它们的下行链路可以用到16位元，而上行链路则限制在8位元。

## 应用

### 取代前端总线

HyperTransport最知名的应用，乃作为AMD的x86中央处理器产品以及配套的芯片组的系统总线架构。而HyperTransport的一个主要用处，就是用作取代英特尔定义的前端总线，使用HT总线的x86处理器不同于英特尔的处理器。比如，奔腾及其相容处理器产品不能直接控制使用PCIe总线。为了扩展系统，专有、专用的前端总线必须连接至各种标准总线控制器的适配器上，这些标准总线有AGP、PCIe等。而这些标准总线控制器，按速率、带宽、功能分别整合至北桥芯片及南桥芯片上。

而相反，HyperTransport则是由多个公司组成的协会公布并开放规格。一个包含一个HyperTransport适配器的芯片可与一颗开启HyperTransport的微处理器运作于更高的带宽上。

#### 超微半导体

AMD在K7微架构开始，就随AMD64技术一并使用了HyperTransport取代前端总线。K7及以后的微架构的Opteron、Athlon 64、Athlon II、Sempron 64、Turion 64、Phenom、Phenom II及AMD FX处理器上，都用上了HT总线与北桥连接。不过现时AMD APU、AMD Ryzen、AMD EPYC内建了北桥芯片，CPU与FCH的连接则是使用基于PCIe总线技术的UMI总线。

AMD这样做的是有鉴于CPU与内存沟通时，北桥的延迟问题做出解决方案，当将位于北桥内的内存控制器移动到CPU内部时，CPU便可直接与内存进行沟通，避开了北桥而让整体带宽大幅提升，减轻北桥的负担，将整体效能拉升。这也就是为何当年AMD的CPU能够与Intel抗衡的其中一个原因。而这样做，潜在的问题便是当内存规格有变动时，AMD将会非常头痛。由于内存控制器内建在CPU里面，当内存规格变动时，AMD便要重新设计内建新型内存控制器的CPU，重新量产新型CPU。考量到销售问题，还必须要等到把前一代主流产品库存销售完，而这样的问题在Socket 939过渡到Socket AM2时期非常明显。所以当厂商开发新一代CPU时，除了需要把内存控制器内建在CPU里面外，还必须要同时开发内建于CPU之中的“容许CPU使用北桥芯片内建的内存控制器的转接器”，此方法不但有利于产品过渡，而且能够吸引第三方设计厂商针对CPU平台共同设计系统芯片。同时，当使用独立显卡时，当显卡频繁调用系统主存中的纹理与顶点数据时，必须先通过北桥，再绕行CPU，才能访问系统主存。相对比于Intel CPU则因为外置内存控制器，可直接通过北桥链接内存，而获得更快的速度。这些因素也是英特尔的处理器在Nehalem微架构以前一直坚持使用前端总线的原因之一。

AMD Ryzen和AMD EPYC使用Infinity Fabric取代HyperTransport。

#### 其它公司之使用

除AMD以外，全美达公司也把HyperTransport技术应用在自家的x86处理器上，如TM8000处理器。除NVIDIA以外，并购ATI后的AMD、VIA和SiS也把它用于PC主板的芯片组。

国际商业机器（IBM）以及苹果公司也将HyperTransport技术用于Power Mac G5上，将处理器、PCI-X控制器、SATA控制器、以太网路卡、USB控制器、FireWire控制器、光纤数位音讯等与两组双向的HyperTransport连结架构连接起来。甚至采用英特尔处理器的微软XBox首代，其处理器也要透过NVIDIA的MCP以HyperTransport将GPU等连结。PMC-Sierra、Broadcom（博通）和Raza Microelectronics则把它应用在MIPS微架构（一种RISC微处理器架构）微处理器上。

而英特尔却从来没有在它的产品中使用过HyperTransport，当年它继续选择使用一种共享的总线架构，继续使用自有的总线/互联界面标准，以照顾特殊的RAM级别。在Intel在新的Nehalem架构（如Core i7）中不仅采用全新的、效能更强的处理器互联技术QPI与AMD主导的HT总线形成有力竞争，而且也内置了内存控制器，相较于以往的Intel平台效能有显著的提升。此外英特尔也在2001年的英特尔开发者论坛上公布与HT总线竞争、基于PCI技术的3GIO，由AWG制定标准并于2002年移交PCI-SIG进行稽核和管理，成为现今的PCI-E总线。

### 多处理器互联

HyperTransport的另一主要应用是非均匀存取模型（NUMA）电脑系统中多处理器的互联。

AMD使用HyperTransport配合快取一致性扩展组件（包含于AMD自家的直接连接架构（Direct Connect Architecture）中）来实作，拥有该特性的处理器有Opteron以及Quad FX平台上的Athlon 64 FX产品线。

Newisys还基于AMD的技术，发展出HORUS连接器，用于高效能大型运算丛集。3Leaf Systems的Aqua装置利用HyperTransport进行虚拟化下CPU、内存以及输出/输入的连接。

除此以外惠普、Sun Microsystems、IBM、和IWill把它用于服务器领域；克雷公司和QLogic把它用于高性能计算上。

### 取代路由器/网络交换器的总线

HyperTransport也可用作路由器和网络交换器的内部总线。路由器和交换器有多重网络界面，并且需要在这些界面上尽可能快地快速转发资料。举个例子，4个1Gbps的以太网路连接埠若需要全速连接则需要8Gb/s的内部带宽（1Gb/s×4连接埠×两个传输方向），而HyperTransport总线可以轻松满足这个带宽要求。然而一个4+1连接埠的10Gb/s级路由器则要求100Gb/s的内部带宽。802.11ac 8天线、WiGig 60GHz（802.11ad）标准，配合HyperTransport等高带宽总线，会变得更具可行性（但任何地点需使用20至24通道以满足所需带宽）。最早是CISCO Systems（思科）把HyperTransport用于路由器领域。

### 协处理器的互联

中央处理器和协处理器之间的延时和带宽问题，在实作中一直是它们之间的通信效能的绊脚石。而目前像是现场可程式逻辑闸阵列（FPGA）的协处理器，可以支援HyperTransport总线。现时主要的FPGA制造商Altera和Xilinx，它们的产品都可直接支援HyperTransport界面，并且有知识产权核（IP核）可供出售。而一些公司，像是XtremeData、DRC等，则以上述FPGA厂商的产品，开发出一种可供FPGA直接使用Opteron处理器插座的转接模组。

AMD在2006年9月21日公布并启动的名为Torrenza专案，致力于提升HyperTransport在插卡式装置与协处理器中的使用。开始将Socket F用于开放给像是XtremeData以及DRC有需要的公司使用。

### 扩展卡连接器

<image>

HyperTransport联合会除了发布片上和板上使用的HyperTransport总线规格以外，还发布了基于插座式连接埠的规格，以供外围装置直接连接至相应的微处理器或控制器等。这个规格被称为HyperTransport eXpansion（缩写：HTX）。HTX使用和PCI-E 16x相同的物理连接器（外加一个与PCI-E x1规格相同的连接器作为电源连接），HTX可使这些扩展卡支援与CPU的直接连接以及以DMA方式存取系统内存。最早使用HTX连接埠的扩展卡是QLogic的InfiniPath InfiniBand HCA。后来IBM、惠普电脑以及更多的公司陆续发布支援HTX的系统产品。

最初，HTX标准被限定在16位元，运作时脉800MHz。

2008年8月，HyperTransport联合会发布HTX3，其运作时脉达到了2.6GHz（5.2GT/s，10.7GTi，资料传输等效时脉5.2GHz，3MT/s的编辑速率），可向下相容原来的HTX标准。

### 测试用途

定义“DUT”测试连接器来开启标准化功能测试系统互联。

## 衍生版本

Infinity Fabric，可见就是一种fabric 而fabric就是一种布料 infinity 就是无限 加再一起就是无限布料

## 使用HyperTransport总线的产品

- AMD基于AMD64和直接连结架构（Direct Connect Architecture）的中央处理器
- Broadcom开发的SiByte MIPS中央处理器
- PMC-Sierra开发的RM9000X2 MIPS中央处理器
- Raza Thread Processors
- 龙芯系列芯片
- 龙芯3号系列中央处理器
- 龙芯7系列桥片
- ht_tunnel from OpenCores project (MPL licence)
- ATI Radeon Xpress 200芯片组
- Nvidia nForce 芯片组
- nForce Professional MCP（Media and Communication Processor，媒体和通讯处理器）
- nForce 4系列
- nForce 500系列
- nForce 600系列
- nForce 700系列
- ServerWorks（现Broadcom所有）的HyperTransport系统I/O控制器
- HT-2000
- HT-2100
- The IBM CPC925 and CPC945 PowerPC 970 北桥，与苹果电脑共同开发并用于Power Mac G5
- 来自HyperTransport Center of Excellence的数个开放源代码专案核心
- Cisco QuantumFlow处理器

### 使用Infinity Fabric的产品

- Ryzen系列处理器
- AMD Radeon Vega 系列显示核心
- EPYC系列处理器