附录 A. 常用总线类型 (SCSI 和其他)

在本附录中提及的各种总线类型(包括 SCSI 和其他)的极佳概述,可以在 www.pctechguide.com/04disk2.htm 找到。

SCSI。 最初的 SCSI 1 标准(ANSI 规范 X3.131-1986)引入了一个 8 位并行总线,能够以 1.5 MB/秒 的异步传输速率和高达 5 MB/秒 的同步传输速率进行数据传输。SCSI 命令以异步速率发送。SCSI 数据以异步速率(最坏情况)或协商的同步速率(最好情况为 5 MB/秒)传输。

FAST SCSI(快速 SCSI)。 SCSI 2 标准将最大同步速度提高到 10 MB/秒。SCSI 2 定义了几种并行总线:单端(SCSI 1 使用的)和一种新的差分总线。差分总线具有更好的抗噪声能力,其最大总线长度为 25 米(相比之下,单端总线为 6 米)。SCSI 2 还增加了命令标记队列。

WIDE SCSI(宽 SCSI)。 SCSI 2 标准还增加了总线宽度,允许 16 位和 32 位“宽”变体。32 位宽度使用得很少,因此“宽”通常指的是 16 位宽数据通路。可以连接到并行 SCSI 总线的最大 SCSI 设备数量与总线宽度直接相关,因此“宽”总线允许最多连接 16 个 SCSI 设备。[这些设备中至少有一个必须是 SCSI “发起者”,通常是主机适配器。]

ULTRA SCSI(超高速 SCSI)。 传统上,同步总线在时钟的上升沿或下降沿(通常是方波)进行时钟控制。最近的趋势是在两个边沿都进行时钟控制,从而使可用带宽翻倍。这就是 ULTRA SCSI 将 SCSI 2 “快速”速度翻倍至 20 MB/秒 的方式。

ULTRA WIDE SCSI(超宽 SCSI)。 将相同的“超高速”技术应用于(16 位)宽 SCSI 并行总线,可产生 40 MB/秒 的带宽。

ULTRA 2 WIDE SCSI(超高速 2 宽 SCSI)。 此变体引入了一种新的“低电压”差分信号 (LVD) 技术,可使同步时钟速度翻倍,在使用(16 位)宽总线时产生 80 MB/秒 的速度。在这种情况下,最大 SCSI 总线长度为 12 米。为了向后兼容 ULTRA WIDE,此变体可以回退到“单端”操作。这导致适配器制造商使用缩写 LVD/SE。这种方法的一个缺点是,在 U2W 总线上存在一个 UW 设备将导致所有其他 U2W 设备以较慢的速率(即 UW)进行通信。一些适配器通过在同一逻辑 SCSI 总线上具有单独的 LVD 和 SE 物理总线来克服这个问题。

ULTRA 160 SCSI(超高速 160 SCSI)。 ULTRA 160 再次使并行 SCSI 总线带宽翻倍。它使用 16 位宽数据通路、LVD 信号(参见前述条目)和双跃迁时钟,将最大同步带宽提高到 160 MB/秒。其他功能包括循环冗余校验码 (CRC) 以提高数据完整性(与奇偶校验位相比)和域验证,如果错误率过高,则调整传输速率。

ULTRA 320 SCSI(超高速 320 SCSI)。 很快 ULTRA 320 适配器将上市(具有该接口的磁盘已经在市场上)。这也是一个 16 位宽 LVD 总线,可以回退到较慢的速度,以兼容较旧的设备。它扩展了 Ultra 160 的功能,使时钟速度翻倍。包含数据包化 SCSI,它以全总线速度(而不是 5 MB/秒)发送命令和状态。其他改进包括“快速仲裁和选择”、“读取和写入数据流”以及命令块和数据(Ultra 160 仅对数据进行 CRC 保护)的 CRC 保护。请注意,需要使用 64 位 PCI(或更好:PCI-X)的适配器卡,以防止 PCI 总线在这些速度下成为瓶颈。更多信息可以在 www.scsita.org 找到。最近,一家 Ultra 320 HBA 供应商声称每秒高达 105,000 次 IO 操作,这意味着每个命令的 SCSI 总线开销小于 10 微秒。有一个 ULTRA 640 标准草案,但可能被串行连接 SCSI 取代。

Serial Attached SCSI (SAS)(串行连接 SCSI (SAS))。 串行连接 SCSI (SAS) 使用与串行 ATA (sATA) 相同的传输技术并对其进行了扩展。[sATA 在下面描述。] SAS 可以使用外部扩展器从单个 HBA 控制多达 16000 个设备。数据传输是全双工的,并且可以聚合 1.5 Gbps 或 3.0 Gbps 的“物理层”以增加带宽。电缆长度可达 6 米。SAS 磁盘是双端口的。sATA 磁盘可以连接到 SAS 扩展器(但 SAS 磁盘不能连接到 sATA HBA)。SAS 最近在 CeBit 上进行了演示,但要到 2004 年才会上市。

FC-AL。 这代表光纤通道 - 仲裁环路 (Fibre Channel - Arbitrated Loop),可能涉及双 2 千兆位/秒 单模光纤链路,跨度 10 公里,吞吐量高达 400 MB/秒。通常与存储区域网络 (SAN) 相关联。一个环路最多可以连接 126 个设备,而环路又可以在公共环路模式下扩展到 1600 万个设备。传输介质不一定是光纤电缆:铜缆(同轴电缆形式)也可以在较低速度和较短距离下使用。

SRP/InfiniBand。 SRP(SCSI RDMA 协议)[ SRP_draft] 是 InfiniBand 的 SCSI 传输协议 [ Infiniband_trade_association],一种以 10 和 30 Gbps 运行的高性能互连技术。SRP 驱动程序源代码可在 infiniband.sourceforge.net/Storage/SRP 找到。

IEEE 1394。 此标准也称为 “火线 (Fire Wire)” [Apple 的商标] 和 “iLink” [Sony 的商标]。它是一种串行总线,可以高达 400 Mb/秒 的速度运行 (IEEE 1394a)。更新的标准 IEEE 1394b 将此速度提高到 800 Mb/秒(扩展到 1.6 和 3.2 Gb/秒),电缆长度可达 100 米。它具有与 USB 相似但更通用的架构。IEEE 1394 标准允许 SCSI 命令集通过 1394 总线传输。现在有一个用于 Linux IEEE 1394 堆栈的 “sbp2” 驱动程序。此 sbp2 驱动程序也是一个 SCSI 子系统底层驱动程序(因此它在功能上类似于 ide-scsi 驱动程序)。因此,使用 SBP-2 协议的 IEEE 1394 设备(例如磁盘、CD-RW/DVD 驱动器、MO 驱动器和扫描仪)可以通过 SCSI 子系统访问。有关更多信息,请参阅 Linux1394.sourceforge.net。sbp2 驱动程序现在在 lk 2.4.7 中。

iSCSI。 这是 IETF 的一项新标准,用于通过 TCP 连接(或多个连接)发送 SCSI 命令集。这允许 SCSI 设备(目标,如磁盘)成为网络设备,由主机在本地(或可能在很远距离)访问。

NON SCSI buses(非 SCSI 总线)。 以下总线不是由 SCSI 标准定义的,但由于它们可以承载 SCSI 命令集,或者在某种程度上与 Linux SCSI 子系统相关,或者提供与 SCSI 产品类似的功能,因此引起了人们的兴趣。

IDE/ATA (ATAPI)。 IDE 是当今 PC 系统中最常用的磁盘类型。该首字母缩略词代表集成驱动器电子设备 (Integrated Drive Electronics),顾名思义,它将大部分 IO “智能” 置于磁盘控制器卡上,而不是像 SCSI 那样将其分散在设备(最常见的是磁盘)和控制器 (HBA) 之间。IDE 在 1980 年代从 ST506 和 ESDI 标准发展而来。EIDE(扩展 IDE)是一个相关的首字母缩略词。引用此总线架构的现代标准称为 ATA,可以在 www.t13.org 找到。ATA 数据包接口 (ATAPI) 扩展了面向磁盘的命令集,以支持 CDROM 和磁带驱动器。ATAPI 命令集与 SCSI 命令集非常相似。最新的 ATA 技术在下一段中概述。

ATA 133。 IDE 设备使用的 ATA 标准也在不断发展(例如,快速和超高速)和数字(例如,2、33、66、100 和 133)。最新的添加是 ATA 133,它支持 133 MB/秒 的突发速率,每个总线最多支持 2 个设备。[PC 通常有 2 个,通常是 4 个 ATA 总线。] ATA 66、100 和 133 需要特殊的电缆。ATA 电缆相对较短,限制了 IDE 设备在计算机外部。电缆长度以前限制为 18 英寸,但现在已经出现了 1 米长的电缆。巧合的是,133 MB/秒 也是大多数 PC 中常见的普通 PCI 总线的最大吞吐量。有更高速度(和更宽)的 PCI 版本,但它们相对罕见。

Serial ATA (sATA)(串行 ATA (sATA))。 串行 ATA 使用 2 对差分对与 1 米以内的 sATA 磁盘交换数据,速度为 1.5 Gb/秒。一对将数据发送到磁盘,另一对从磁盘返回数据。高达 150 MB/秒 的数据速率是可能的(数据传输是半双工的)。sATA 是点对点连接,而不是总线,因此 ATA 的主从跳线消失了。sATA 布线不如并行 ATA(和 SCSI 并行接口)笨重,并且其插头和插座的外形尺寸更小。sATA 设备开始出现在市场上。sATA-2 是一个草案标准,它将串行数据速率翻倍至 3 Gb/秒。

USB。 通用串行总线 (Universal Serial Bus, USB) 的带宽在 1.5 到 12 Mb/秒 之间(后者是 USB 1.1 的速度)。最多可以连接 127 个设备,使用一系列集线器,每个集线器最多连接 7 个设备(限制为 5 米)。USB 提供 5 伏 0.5 安培的电流为小型设备供电。USB 是“即插即用”的,支持热插拔,并支持等时数据传输(音频和视频设备需要保证最小带宽)。

PC Parallel port(PC 并行端口)。 最初的 PC 并行端口是单向的(朝向打印机),速度约为 10 KB/秒。1994 年的 IEEE 1284 标准引入了 5 种数据传输模式

增强型并行端口 (Enhanced Parallel Port, EPP) 的传输速度在 500 KB/秒 到 2 MB/秒 之间,目标是 CD-ROM、磁带和硬盘驱动器。扩展能力端口 (Extended Capability Port, ECP) 包括行程长度编码和对 DMA 的支持。ECP 的目标是快速打印机和扫描仪。

I2O。 “I2O(智能输入/输出)规范定义了一种智能 I/O 的标准架构,该架构独立于被控制的特定设备和主机操作系统 (OS)” [来自 www.i2osig.org]。它定义了一个“分离驱动程序”模型,其中 OS 服务模块 (OSM) 位于主机 OS 设备接口和 I2O 通信层之间,而硬件设备模块 (HDM) 位于 I2O 通信层和硬件之间。HDM 很可能在专用处理器 (IOP) 上运行。