ATA/SATA/SCSI/SAS/FC 都是应用于存储领域的总线,在当今的存储系统中,普遍应用的硬盘接口主要有 SATA 、 SCSI 、 SAS 和 FC , ATA 比较古老,在一些老的低端存储系统中被广泛应用,目前基本上被 SATA 所替代。
♦ ATA 总线
ATA 技术是一个关于 IDE ( Integrated Device Electronics )的技术规范族。最初, IDE 只是一项企图把控制器与盘体集成在一起为主要意图的硬盘接口技术。 随着 IDE/EIDE 得到的日益广泛的应用,全球标准化协议将该接口自诞生以来使用的技术规范归纳成为全球硬盘标准,这样就产生了 ATA ( Advanced Technology Attachment )。
ATA 发展至今经过多次修改和升级,每新一代的接口都建立在前一代标准之上,并保持着向后兼容性。到目前为止,一共推出 7 个版本: ATA-1 、 ATA-2 、 ATA-3 、 ATA-4 、 ATA-5 、 ATA-6 、 ATA-7 。
1). ATA-1 是建立在 ISA96-pin 标准连接器上的附属设备,使用 40 或 44pin 的连接器和电缆。在 44pin 方案里 ,额外多出的 4 个引脚用来向那些没有单独电源接口的设备提供电力支持。它在主板上有一个插口,支持一个主设备和一个从设备,每个设备的最大容量为 504MB ,支持的 PIO-0 模式传输速率只 3.3MB/s 。 ATA-1 接口的硬盘大小为 5 英寸,而不是现在主流的 3.5 英寸。
2). ATA-2 常被称为 EIDE (Enhanced IDE) 、 Fast ATA 或 Fast ATA-2 。它在 ATA 的基础上增加了 2 种 PIO 和 2 种 DMA 模式( PIO-3 ),不仅将硬盘的最高传输率提高到 16.6MB/S ,还同时引进 LBA 地址转换方式,突破了固有的 504MB 的限制,可以支持最高达 8.1GB 的硬盘。
3). ATA-3 没有引入更高速度的传输模式,在传输速度上并没有任何的提升,最高速度仍旧为 16.6MB/s 。只在电源管理方案方面进行了修改,引入了了简单的密码保护的安全方案。但引入了一个划时代的技术,那就是 S.M.A.R.T ( Self-Monitoring Analysis and Reporting Technology , 自监测、分析和报告技术)。这项技术会对包括磁头、盘片、电机、电路等硬盘部件进行监测,通过检测电路和主机上的监测软件对被监测对象进行检测,把其运行 状况和历史记录同预设的安全值进行分析、比较,当超出了安全值的范围,会自动向用户发出警告,进而对硬盘潜在故障做出有效预测,提高了数据存储的安全性。
4). ATA-4 也习惯被称为 Ultra DMA 33 或 ATA33 。因为从 ATA-4 开始正式支持 Ultra DMA 数据传输模式,首次在 ATA 接口中采用了 Double Data Rate (双倍数据传输)技术,让接口在一个时钟周期内传输数据两次,时钟上升和下降期各有一次数据传输,这样数据传输率一下从 16MB/s 提升至 33MB/s 。 Ultra DMA 33 还引入了一个新技术-冗余校验计术( CRC ),该技术的设计方针是系统与硬盘在进行传输的过程中,随数据发送循环的冗余校验码,对方在收取的时候也对该校难码进行检验,只有在完全核对正确的情况下才接收并处理得到的数据,这对于高速传输数据的安全性有着极有力的保障。
5). ATA-5 也就是“ Ultra DMA 66 ” ,也叫 ATA66 ,是建立在 Ultra DMA 33 硬盘接口的基础上,同样采用了 UDMA 技术。 Ultra DMA 66 让主机接收 / 发送数据速率达到 66.6 MB/s ,是 U-DMA/33 的两倍。保留了上代 Ultra DMA 33 的核心技术冗余校验计术( CRC )。在工作频率提成的同时,电磁干扰问题开始在 ATA 接口中,为保障数据传输的准确性,防止电磁干扰, Ultra DMA 66 接口开始使用 40 针脚 80 芯的电缆, 40 针脚是为了兼容以往的 ATA 插槽,减小成本的增加。 80 芯中新增的都是地线,与原有的数据线一一对应,这种设计可以降低相邻信号线之间的电磁干扰。
6). ATA-6 也是使用 40 针 80 芯的数据传输电缆,并且完全向下兼容,支持 ATA-4 、 ATA-5 接口的设备完全可以继续在 ATA-6 接口中使用。 ATA-6 的数据传输速率最高可达 100MB/s 。
7). ATA-7 是 ATA 接口的最后一个版本,也叫 ATA133 。只有迈拓公司推出一系列采用 ATA133 标准的硬盘,这是第一种在接口速度上超过 100MB/s 的 IDE 硬盘。迈拓是目前惟一一家推出这种接口标准硬盘的制造商,而其他 IDE 硬盘厂商则停止了对 IDE 接口的开发,转而生产 Serial ATA 接口标准的硬盘。 ATA133 接口支持 133 MB/s 数据传输速度,在 ATA 接口发展到 ATA100 的时候,这种并行接口的电缆属性、连接器和信号协议都表现出了很大的技术瓶颈,而在技术上突破这些瓶颈存在相当大的难度。
♦ SATA 总线
上面介绍的 ATA 总线在传输数据时采用的是并行方式,总线位宽为 16bits ,所以 ATA 也叫做 PATA(Parallel ATA) 。随着 CPU 技 术的高速发展,对外部总线带宽的要求也越来越高,想要提高总线的带宽,有两种方法:增加数据线的根数或增加时钟频率。增加数据线的根数,势必会增加系统硬 件的复杂度,使系统的可靠性下降,此方法不可行。那么,就提高总线的时钟频率,但是,随着时钟频率的提高,并行总线的串扰和同步问题表现的越来越突出,使 总线不能正常工作。所以 PATA 总线的终极速率最终止步在 133MB/s 。各厂商不得不放弃 PATA ,去开发新的技术。
在此背景下产生, Intel 、 IBM 、 DELL 、 ADT 、 Maxtor 和 Seagate 等几家公司共同推出新的硬盘接口总线 SATA 。 SATA 即 Serial ATA ,串行 ATA 的意思。它将 PATA 总线的并行传输方式改为串行传输方式,规避了并行总线在高速下的串扰和同步问题。
SATA 只有 4 根线,分别为:发送数据线,接收数据线,电源线,地线。
SATA 有两个标准,分别为 SATA 和 SATA II 。 SATA 的有效带宽为 150MB/s ,数据速率为 1.5Gbps( 传输的数据经过了 8B/10B 变换, 150MB/s*10=1.5Gbps) , SATA II 的有效带宽为 300MB/s ,数据速率为 3Gbps 。
无论是 SATA 总线还是 SATA II 总线,其实对硬盘性能的影响都不大。因为目前硬盘性能的瓶颈集中在由硬盘内部机械机构和硬盘存储技术、磁盘转速所决定的硬盘内部数据传输率上面,就算是目前最顶级的 15000 转 SCSI 硬盘其内部数据传输率也不过才 80MB/s 左右,更何况普通的 7200 转桌面级硬盘了。
目前很多厂商都宣称自己的 SATA 硬盘支持热插拔,但实际上, SATA 在硬盘损坏的时候,不能像 SCSI/SAS 和 FC 硬盘一样,显示具体损坏的硬盘,这样热插拔功能实际上形同虚设。同时,尽管 SATA 在诸多性能上远远优越于 PATA ,甚至在某些单线程任务的测试中,表现出了不输于 SCSI 的性能,然而它的机械底盘仍然为低端应用设计的,在面对大数据吞吐量或者多线程的传输任务时,相 比 SCSI 硬盘,仍然显得力不从心。除了速度之外,在多线程数据读取时,硬盘磁头频繁地来回摆动,使硬盘过热是 SATA 需要克服的缺陷。正是因为这些技术上致命的缺陷,导致目前为止, SATA 还只能在低端的存储应用中徘徊。
ATA/SATA/SCSI/SAS/FC 都是应用于存储领域的总线,
♦ SCSI 总线
SCSI 是英文Small Computer System Interfae 的缩写,可以直译为小型计算机系统专用接口。它是一种连接主机和外围设备的接口,支持包括硬盘、光驱及扫描仪在内的多种设备。SCSI 总线是一种并行总线,其优点是适应面广,性能高;缺点是价格昂贵,安装复杂。
内置型SCSI 总线接口有三种:分别为50PIN 、68PIN 和80PIN 。
68PIN :DB0-DB15 、DB(P1) 、P_CRCA 为数据和校验信号;ATN 、BSY 、ACK 、RST 、MSG 、SEL 、C/D 、REQ 、I/O 为控制信号;还有电源和地以及DIFFSESN 用于探测SCSI 总线的传输模式。
80PIN :与68PIN 接口相比,80PIN 接口增加了12V 、5V 、3.3V 电源、MATED 信号、ID 选择信号、LED 指示灯、RMT-SMART 、DLYD-START 、SPINDLE-SYNC 等电源、状态和功能信号。
外置型SCSI 总线接口有七种:分别为Apple SCSI 、Centronics 、SCSI-2 、Sun Microsystem 、SCSI-3 、Wide SCSI-2 、SCA 。
1). Apple SCSI ,共有25 针,分为两排,8 位,常用于Mac 机和旧式Sun 工作站;
2). Centronics ,共有50 针,分为两排,8 位,有点像并行口,它可以连接的设备数目最多;
3). SCSI-2 ,共有50 针,分为两排,8 位;
4). Sun Microsystem 的DD-50SA ,共有50 针,分为三排;
5). SCSI-3 和Wide SCSI-2 ,共有68 针,分为两排,16 位。旧式DEC 单终结SCSI 使用68 针高密接口;
6). SCA ,共有80 针,分为两排。
其中Centronics 、SCSI-2 、Sun Microsystem 、SCSI-3 、Wide SCSI-2 型连接器的针脚数目相同,但是物理形状不一样。
SCSI 总线有很多规格,分别如下:
1). SCSI-1 :最早的SCSI ,支持同步和异步SCSI 外围设备,支持7 台8 位的外围设备,使用8 位的通道宽度,传输速率为5MB/s ;
2). SCSI-2 :类似SCSI-1 ,但是可以支持同时连接7 个装置,传输速率为 10-20MB/s ,目前有CD-R 、CD-ROM 在使用;
3). Fast SCSI :8 位的通道宽度,使用双倍的频率,传输速率为 10MB/s ;
4). Wide SCSI :16 位的通道宽度,传输速率为20MB/s ;
5). ULTRA SCSI :8 位的通道宽度,传输速率为20MB/s ,其允许接口电缆的最大长度为1.5 米;
6). Ultra Wide SCSI :16 位的通道宽度,传输速率为40MB/s ,其允许接口电缆的最大长度为1.5 米;
7). ULTRA 2 SCSI :8 位的通道宽度,其采用了LVDS (Low Voltage Differential Signal )传输模式, 传输速率为40MB/s ,允许接口电缆的最长为12 米,大大增加了设备的灵活性,支持同时挂接16 个装置( 实际只能有15 个外设,因为要算上主驱动器自己) ;
8). WIDE ULTRA 2 SCSI :它跟Ultra 2 SCSI 差不多,也是采用LVD 传输模式,允许最长接口电缆为12 米,可同时挂接16 个装置,不同于Ultra 2 SCSI ,它有16 位的通道宽度,因此传输速度为80MB/s ;
9). Ultra 160 SCSI :支持最高数据传输率为160MB/s ;
10). Ultra 320 SCSI :支持最高数据传输达到了320MB/s ,是目前最新的SCSI 接口类型。SCSI总线各标准参数列表如下所示:
SCSI 总线的拓扑结构如下图所示:
在SCSI 总线拓扑的末端需要连接一个终结器,用来抑制信号的反射,减小信号的相互影响,维持线路线路上电压的稳定。
SCSI 总线的通信只能在SCSI 控制器和外设之间进行,外设之间是不能直接通信的。窄带SCSI 总线上最多可以挂8 设备( 除掉SCSI 控制器自己,实际上只能挂7 个外设) ,宽带SCSI 总线上最多可挂16 个设备( 除掉SCSI 控制器自己,实际上只能挂15 个外设) 。各个设备之间是通过SCSI ID 来区分的,设备的优先权也是通过SCSI ID 来区分的,SCSI ID 优先级从高到低的排列顺序为:7-6-5 -4-3-2-1-0-15-14-13-12-11-10-9-8 ,ID7 的优先级最高,被SCSI 总线控制器占用。
♦ SAS 总线
SAS 是英文Serial Attached SCSI 的缩写,即串行连接SCSI 的意思。跟SATA 总线有点类似,都是采用串行技术以获得更高的传输速度。
SAS 的接口技术可以向下兼容SATA 。具体来说,二者的兼容性主要体现在物理层和协议层的兼容。在物理层,SAS 接口和SATA 接口完全兼容,SATA 硬盘可以直接使用在SAS 的环境中,从接口标准上而言,SATA 是SAS 的一个子标准,因此SAS 控制器可以直接操控SATA 硬盘,但是SAS 却不能直接 使用在SATA 的环境中,因为SATA 控制器并不能对SAS 硬盘进行控制;
SAS 系统的背板(Backplane) 既可以连接具有双端口、高性能的SAS 驱动器,也可以连接高容量、低成本的SATA 驱动器。所以SAS 驱动器和 SATA 驱动器可以同时存在于一个存储系统之中。
在系统中,每一个SAS 端口可以最多可以连接16256 个外部设备,并且SAS 采取直接的点到点的串行传输方式,传输的速率高达3Gbps ,估计以后会有 6Gbps 乃至12Gbps 的高速接口出现。SAS 的接口也做了较大的改进,它同时提供了3.5 英寸和2.5 英寸的接口,因此能够适合不同服务器环境的需求。SAS 依靠SAS 扩展器来连接更多的设备,目前的扩展器以12 端口居多,不过根据板卡厂商产品研发计划显示,未来会有28 、36 端口的扩展器引入,来 连接SAS 设备、主机设备或者其他的SAS 扩展器。
和传统并行SCSI 接口比较起来,SAS 不仅在接口速度上得到显著提升( 现在主流Ultra 320 SCSI 速度为320MB/sec ,而SAS 才刚起步速度就达到300MB/sec ,未来会达到600MB/sec 甚至更多) ,而且由于采用了串行线缆, 不仅可以实现更长的连接距离,还能够提高抗干扰能力,并且这种细细的线缆还可以显著改善机箱内部的散热情况。
♦ FC 总线
FC 是Fiber Channel 的意思,它奠定了存储领域高端应用的基石。它以点对点的配置方式在系统之间采用了光缆连接。后来光纤通道的发展囊括了电子( 非光学) 实现,并且可以用成本相对较低的方法将包括硬盘在内的许多设备连接到主机端口。对这个较大的光纤通道标准集有一个补充称为光纤通道仲裁环(FC- AL) 。FC-AL 使光纤通道能够直接作为硬盘连接接口,为高吞吐量性能密集型系统的设计者开辟了一条提高I/O 性能水平的途径。目前高端存储产品使用的都是FC 接口的硬盘。
FC 硬盘名称由于通过光学物理通道进行工作,因此起名为光纤硬盘,现在也支持铜线物理通道。就像是IEEE-1394, Fibre Channel 实际上定义为SCSI-3 标准一类,属于SCSI 的同胞兄弟。作为串行接口FC-AL 峰值可以达到2Gbits/s 甚至是4Gbits/s 。而且通过光学连接设备最大传输距离可以达到10KM 。通过FC-loop 可以连接127 个设备, 也就是为什么基于FC 硬盘的存储设备通常可以连接几百颗甚至千颗硬盘提供大容量存储空间。