速度接力赛——从接口规范看硬盘的发展

硬件时空

随着接口技术的不断变革,硬盘已进入全新的SATA时代。回首往事,硬盘作为现有电脑配件中半导体和机械的集合体,它的发展虽然不像CPU或GPU那样迅猛,但也一直在不断前进,尤其是接口技术的发展,它为硬盘的发展指明了方向……

萌动——硬盘早期接口

硬盘接口是硬盘与主机系统(主板)间传输数据的连接部件,是硬盘连接主机的桥梁。从台式机的IDE接口、SATA接口到高端工作站服务器的SCSI接口和SAS接口,不同的硬盘接口的传输速度也不同,所以,接口的优劣直接影响着程序运行速度和系统性能。

最早的硬盘是没有专用接口的。1956年IBM公司制造出一台由50片直径为24英寸的磁盘组成的“庞然大物”——IBM 350 Disk File,这便是世界上第一块硬盘。它采用铝合金盘片,盘片表面涂有一层磁性物质,叠起来固定在一起,绕着同一个轴旋转。主轴转速为1200转/分,重约1吨,体积比一台洗衣机还要大,但容量仅为5MB。

1973年,第一块“温彻斯特”硬盘——IBM 3340问世了,该硬盘的特点是使用密封、固定、高速旋转的镀磁盘片,磁头沿盘片径向移动,磁头悬浮在高速转动的盘片上方,不与盘片直接接触。虽然贵为现代硬盘的始祖,但IBM 3340也没有专用接口。

1.ST-506接口

在硬盘的发展史上,IBM、希捷、迈拓、西部数据等硬盘大厂都功不可没。在20世纪70年代末,大家已认识到,没有标准接口,硬盘就难以普及。

1979年,IBM的两位员工Alan F.Shugart和Finis Conner离开IBM后,组建了希捷公司(原名为Shugart Technology公司),开发了大小如5.25英寸软驱的硬盘驱动器ST-506及ST-412。它们使用了一种名为ST-506的接口,这便是硬盘接口的鼻祖。这种接口的特点是磁盘的编解码器位于PC插槽上的磁盘控制卡上,用一个34芯的控制线缆接头和一根20芯的数据线把硬盘连接起来。

ST-506接口最大的变化是实现了即插即用,使用起来相当简便,不需要任何特殊的线缆及接头,深受硬盘厂商的欢迎。采用ST-506接口的硬盘容量多数低于200MB,代表产品有希捷的ST-412 10MB、ST-225 20MB和ST-251 40MB驱动器等。另外,这种接口支持的数据传输速度很低,1989年后基本被淘汰。

在此时期,值得关注的还有1979年IBM发明的薄膜磁头(Thin Film Head),它的出现为进一步减小硬盘体积(5.25英寸向3.5英寸进军)、增大容量、提高读写速度提供了可能。

25-d9d10-2.jpg
25-d9d10-3.jpg
ST-506硬盘及相应的接口卡

2.ESDI接口

ST-506接口只具备“软驱级”速度,于是迈拓在1983年推出了ESDI(Enhanced Small Drive Interface,增强小型设备接口)接口。这种接口把编/解码器集成到硬盘驱动器中,而不是控制卡/器上,可靠性更高。

ESDI仍然使用两根线缆来连接硬盘,不过线缆的定义做了改变。它的理论传输速度是ST-506的2~4倍,传输速度也提高到10Mbps,在当时的文件服务器等高端系统中被广泛使用。同时,该接口保持了与ST-506接口的可兼容性。

在此时期,IBM已发明了MR(Magneto Resistive,磁阻)磁头,这是IBM对硬盘发展的又一重大贡献,这种磁头在读取数据时对信号变化更敏感,使得盘片的存储密度相比以往的20MB/英寸提高数十倍,其光芒盖过了成本较高的ESDI接口。事实上,ESDI接口在PC发展史上风光的时间并不长,随着IDE和SCSI接口的降临,它很快被淘汰了。

25-d9d10-4.jpg
采用ESDI接口的硬盘

统一——IDE称霸十五载

在硬盘接口发展史上,对个人用户来说最重要的变革就是IDE,它足足影响了台式机硬盘十几年。IDE的英文全称为“Integrated Drive Electronics”,即“电子集成驱动器”,其本意是指把“硬盘控制器”和“盘体”集成在一起的硬盘驱动器。

这种把盘体与控制器集成在一起的做法减少了硬盘接口的线缆数目与长度,数据传输的可靠性也得到增强,硬盘制造变得更容易,硬盘生产厂商不必再担心自己的硬盘是否与其他厂商生产的控制器兼容。而对用户而言,硬盘安装也更方便了。

需要说明的是,IDE接口也叫ATA(Advanced Technology Attachment,高级技术附加装置)接口或PATA(并行ATA)接口,ATA是最早的IDE标准的正式名称,IDE实际上是指连接在硬盘和主板间的硬盘接口,而ATA接口标准则是IDE硬盘的特定接口标准。

25-d9d10-5.jpg
主板上集成的IDE接口

1.ATA-1

1989年,Imprimus、Western Digital(西部数据)、Compaq三家公司确立了ATA(ATA-1)接口标准。它将盘体与控制器及接口集成在一起,只用一根40针40芯的线缆加插头就可将主板或接口卡与硬盘连接起来,减小了硬盘接口的线缆数目与长度,数据传输的可靠性也得到增强,硬盘的制造和安装也变得更容易。

ATA-1标准一共规定了3种PIO和4种DMA模式,其PIO 0(Programmed I/O,可编程I/O)模式传输速度只有3.3MB/s。最早的这类IDE硬盘大小为5英寸,容量为40MB。康柏早期的386系统就使用了西部数据的相关产品。

ATA接口的一大特点是成本低廉,非常符合PC的发展特点,因此很快得到用户的认同,1990年后生产的硬盘已经普遍开始采用ATA接口。

1991年,IBM推出了3.5英寸的硬盘0663-E12(使用MR磁头),PC硬盘的容量首次达到了1GB,引起了业界的极大反响,3.5英寸也由此成为现代硬盘的标准规格。1992年,希捷公司首次向外界展示了其2.5英寸硬盘,并推出了容量为2.1GB的Barracuda(酷鱼),后者也是首款转速达到7200转/分的产品。

2.ATA-2

1996年,ATA的增强型接口ATA-2(EIDE,Enhanced IDE)正式确立,它是对ATA的扩展,增加了PIO-3/4模式和Multiword-DMA-1/2模式,把最高传输速度提高到了16.7MB/s,是ATA-1接口类型的3~4倍。同时它引进了LBA(Logical Block Addressing,逻辑块寻址)的寻址方式,突破了老BIOS固有的504MB的限制,最高可支持8.1GB硬盘。

在ATA-2成为标准之前,西部数据和希捷两大硬盘厂家曾掀起了一场第二代的ATA接口名称之争。西部数据提出了EIDE(Enhanced IDE,增强型IDE)的概念,EIDE包含了ATA-2和ATAPI(ATA Packet Interface,高级技术附加装置的包接口)两种标准,其中ATAPI是针对CD-ROM、磁带机等设备使用ATA接口而制订的标准。

而希捷为了不让西部数据一枝独秀,也提出了一个Fast ATA的概念,并得到了昆腾的支持。这个版本支持PIO-4及多点DMA Mode 1,最大工作速度仍为16.7MB/s,引入了简单的密码保护的安全方案,对电源管理方案进行了修改,并尝试引入S.M.A.R.T(自监测、分析和报告技术),使硬盘数据传输的可靠性更高。

争论的结果是谁也战胜不了谁,由于它们都保持了与ATT-1标准的兼容性,且最大数据传输速度一样,所以最后都被划归为ATA-2标准。在此时期,IBM已推出了首款采用巨磁阻磁头(GMR,Giant Magneto Resistive)的硬盘,新技术可以实现更高的存储密度,在三个直径为3.5英寸的盘片上可获得16.8GB的存储容量。

3.ATA-3

ATA-3(Fast ATA-2)接口是一种过渡接口,其数据传输速度仍为16.7MB/s,支持PIO-4,引入了简单的密码保护的安全方案,对电源管理方案进行了修改,确立了S.M.A.R.T技术在硬盘中的地位。

4.ATA-4

ATA-4就是昆腾、Intel联合一些其他厂商推出的Ultra ATA 33标准(即ATA33),它的突发数据传输速度达到了33.3MB/s,同样使用40针的接口线缆,并且向下兼容。

ATA-4允许使用PC的DMA(直接内存访问)通道进行硬盘数据传输,减少了CPU的负担。同时为了保障数据在高速传输时的完整性及可靠性,它还引入了CRC(Cyclic Redundancy Check,循环冗余校正)技术。新技术的采用,让ATA-4很快成为PC硬盘的主流接口。同时期,单碟容量30GB、40GB的硬盘产品已开始在市场上普及。

5.ATA-5

ATA-5是在Ultra DMA 33接口基础上发展而来的标准,被称为Ultra DMA 66(ATA66),其突发数据传输速度达到了66.6 MB/s,保留了ATA-4的核心技术冗余校验技术(CRC),引入了40针80芯的线缆。

ATA-5不仅在速度得到了较大提升,而且线缆也发生了变革:由于原来为5MB/s数据传输速度设计的40针线缆已经不能满足ATA-5的需求,因此ATA-5及后续IDE标准的接口线缆都增加了40根地线,以减小数据传输时的电磁干扰。虽然保持了完全向下兼容,但在接口电路方面有所变化,ATA-5标准的40针脚的接口少一针,所以早期一些ATA66的专用80针数据线不能插到ATA33的接口中。

6.ATA-6

从当时IDE硬盘的实际传输速度上来看,ATA-5已能满足数据传输需求,但众厂商仍然推出了更新的ATA-6(ATA100或Ultra DMA 100)标准,它支持的最高数据传输速度为100MB/s,同样采用了40针80芯的线缆,保持了向下兼容。ATA-6时期的硬盘已进入100GB时代。

7.ATA-7

从ATA-1到ATA-6标准,IDE硬盘接口的技术核心一直都没怎么变化,它们只是对EIDE接口进行了增强。虽然ATA-6的传输速度已完全能满足IDE硬盘的需求,但迈拓公司为了市场需要,也推出了一系列采用ATA133标准(即ATA-7或Ultra DMA 133)的硬盘,突发数据传输速度达到了133MB/s,一些主板厂商也顺应了这种需求推出了相关的产品。

IDE接口技术从诞生至今就一直在不断发展,性能也不断提高,它具有价格低廉、兼容性强的特点,并称霸硬盘接口界十几年。不过,随着PATA的技术缺陷开始显现,并行接口的线缆属性、连接器和信号协议都显示出较大的技术瓶颈,而要突破这些瓶颈相当难。2005年后,众多厂商一致停止了对IDE接口的继续研发,转战SATA接口,IDE时代渐行渐远。

25-d9d10-6.jpg
硬盘上的IDE接口(右)

希捷的ST-506/412硬盘驱动器开创了硬盘的接口时代,而数代ATA(IDE)接口的推出,则让硬盘成为了电脑不可或缺的标配。而其速度也从PIO0和DMA Single Word 0模式的2.1MB/s~3.3MB/s发展到了DMA Multiword 5(ATA-6)的100MB/s及以上,让硬盘进入了高速时代。当然,在硬盘接口的发展史中,不容忽视的还有用于服务器领域的SCSI及新兴的SATA、SAS等接口,它们同样是硬盘发展历程中的重要力量。

专业享受——SCSI服务器专用

其实,伴随着IDE接口一同发展且在性能上领先一步的还有SCSI接口。SCSI是Small Computer System Interface(小型计算机系统接口)的简称,它最早研制于1979年,原是为小型机研制出的一种接口技术,但随着电脑技术的发展,它被完全移植到了台式电脑或服务器/工作站上。

与IDE接口相比,SCSI接口有以下固有的优点:1.带宽更高、传输速度更快。Ultra320 SCSI的传输速度可达320MB/s,是普通IDE产品的3倍。2.整合了与主机通信的指令,通过独立处理芯片的协助,可降低对主机CPU的占用率。3.支持的设备更多。标准的主板只能用上两个IRQ(中断)接4个IDE设备,而SCSI可以只占用一个IRQ使用超过15个的设备。4.支持多任务操作,可以同时使用数据总线进行数据传输,而IDE接口中连接在同一条数据线上的设备只能交替(占用数据线)进行传输。

SCSI硬盘接口目前主要有50针、68针和80针几种,在硬盘上以“N(Narrow,窄口,50针)”、“W(Wide,宽口,68针)”、“SCA(Single Connector Attachment,单接头,80针)”进行标记。从技术上来看,SCSI接口也经历了以下几个发展阶段。

SCSI-1

1979~1981年,Shugart Associates(希捷公司的前身)联手NCR共同研发出一个智能磁盘接口,命名为Shugart Associates Systems Interface(SASI),该接口便是SCSI的鼻祖,后来被称为SCSI-1。SCSI-1定义了8位并行数据总线,使用50针数据线(或25对双绞线电缆),具备支持同步和异步SCSI外围设备。支持7台8位的外围设备,最大数据传输速度为5MB/s。

SCSI-2

1990年,SCSI-2标准出台了,它包含Fast SCSI(数据传输速度为10MB/s)及后来的Wide SCSI(数据传输速度为20MB/s)。Wide SCSI的数据总线拓宽至16位,并开始采用68针连接器和线缆。

26-d9-1-2.jpg
Wide SCSI硬盘

SCSI-3

1995年SCSI-3(Ultra SCSI)被推出,其同步数据传输速度为20MB/s,如果用16位传输的Wide模式,数据传输速度可以提高至40MB/s。SPI支持的设备数量达到了16个(含适配器),允许接口电缆的最大长度为1.5m。

SCSI-3规范是一个多层结构,其协议层除了原有的并行协议外新增加了3个协议:光纤信道协议,串行协议和块传输协议。因此可支持4种接口:SCSI-3并行接口、SCSI-3光纤信道接口、IEEE 1394和SCSI-3串行接口。

Ultra2 SCSI

1997年,Ultra 2 SCSI(Fast-40)被推出,它采用了LVD(Low Voltage Differential,低电平微分)传输模式,16位的Ultra2 SCSI接口的最高传输速度可达80MB/s。允许的接口电缆的最大长度为12m,大大增加了设备的灵活性。

Ultra160 SCSI

1998年7月,SCSI商业协会批准了Ultra3 SCSI标准,与Ultra2 SCSI相比,Ultra3 SCSI新增了双沿传输(类似于DDR,让Ultra3 SCSI能够以Ultra2 SCSI的时钟频率获得两倍的传输速度)、域验证、QAS(Quick Arbitration and Selection,快速仲裁及选中)、封包传送(Packetized Transfer)、信息单元(Information Units)传送等5个主要特性。

但随后,Adaptec和Fujitsu(富士通)、HP(惠普)、LSI Logic、Mylex、QLogic、Quantum(昆腾)等厂商又在1998年9月共同推出了基于Ultra3 SCSI的Ultra 160 SCSI规范——舍去了实现难度较大的QAS和封包传送规范,传输速度保持在160MB/s,用于单个设备的电缆长度可达25m,用于两个或多个设备的电缆长度可达12m。通过提高纠错能力增强了产品的可靠性,并具有监控接口性能和较高传输速度的能力,成为2000年后的SCSI主流产品之一。

Ultra320 SCSI

2000年后出现的Ultra320 SCSI(Ultra4 SCSI LVD)是并行SCSI协议发展进程中的重要一步,它可以满足对存储接入带宽日益扩大的需求。双倍数据传输速度,让它比Ultra160 SCSI的带宽高出一倍,从160MB/s扩展到了320MB/s,这也让硬盘的传输速度达到了一个顶峰。

Ultra320 SCSI将时钟频率从40MHz提高到80MHz,并利用时钟信号的上下沿,在16位总线上完成数据传输。除了保留Ultra160 SCSI的技术特点外,Ultra320 SCSI还融合了“SCSI打包”协议,提高了信息流的效率。使用封包传送之后Ultra320 SCSI的实际传输速度可以提高至300MB/s,使它成为高端服务器/工作站领域的磁盘标配。

对于电脑设备来说,SCSI总线有着独特的优势。早在2000年2月,希捷就发布了采用Ultra160 SCSI接口转速高达15000转的Cheetah X15“捷豹”系列硬盘,其平均寻道时间只有3.9ms,代表了当时硬盘的高端规格,所以SCSI接口的硬盘至今依然在电脑高端领域发挥着重要作用。

26-d9-1-3.jpg
26-d9-1-4.jpg
Ultra320 SCSI的硬盘和控制卡

殊途同归——SATA和SAS当家

众所周知,现在的台式机硬盘接口已发展到了SATA接口阶段,服务器硬盘接口已发展到了SAS接口阶段。其中SAS接口提供与SATA硬盘的兼容性,可以向下兼容SATA,SATA硬盘可以直接用于SAS的环境中,反之则不行。

SAS接口

SAS是Serial Attached SCSI(串行连接SCSI)的缩写,属于并行SCSI的后继技术。和现在流行的SATA硬盘一样采用串行技术,不仅可以获得更高的传输速度、实现更长的连接距离,还能够提高抗干扰能力。与Parallel SCSI相比,利用Serial架构做资料传输的SAS,不论在扩充性、效能、可靠性和灵活性等方面,都比Parallel SCSI具有更优异的表现。同时SAS亦提供了SATA硬盘的兼容性,为有此需要的企业用户,提供了理想的解决方案。

在系统中,每一个SAS端口最多可以连接16256个外部设备,并且采取直接的点到点的串行传输方式。目前SAS的带宽达到3Gbps(300MB/s),其实际传输速度已相当于主流Ultra 320 SCSI。而随着技术的进一步完善,预计以后会有6Gbps乃至12Gbps(1.2GB/s)的高速接口出现。此外,SAS系统的背板既可以连接具有双端口、高性能的SAS驱动器,也可以连接高容量、低成本的SATA驱动器,并可同时提供3.5英寸和2.5英寸的接口,因此能够更好地适合不同服务器环境的需求。

希捷、日立、迈拓等厂家的相应产品早已上市,且都提供了不错的性能。毋庸置疑,SAS将替代SCSI成为下一代存储应用的主流标准,并可进一步扩大SCSI的应用范围。

26-d9-1-5.jpg
要实现SAS,主板的支持是关键

SATA接口

SATA即Serial ATA(串行ATA),2001年,由Intel、APT、Dell、IBM、希捷、迈拓等厂商组成的Serial ATA委员会正式确立了SATA 1.0规范。在1.0规范中,规定SATA数据传输速度为150MB/s,比ATA-7还要高出约13%;在SATA 2.0规范中,数据传输速度则达到了300MB/s,并将实现600MB/s的最高传输速度。

SATA在系统复杂程度及拓展性方面,是PATA无法比拟的。SATA采用了更低的信号电压、更少的引脚以及一条细而长的信号连接电缆。SATA总线使用嵌入式时钟信号,具备了更强的纠错能力,即它能对传输指令(不仅仅是数据)进行检查,如果发现错误会自动纠正,这在很大程度上提高了数据传输的可靠性。

此外,串行接口还具有结构简单、支持热插拔的优点。并且,由于SATA使用点对点传输协议,所以不存在主从问题,并且每个驱动器独享数据带宽,用户不必再为设置硬盘主从跳线而苦恼。

目前的SATA接口已发展到了SATA Ⅱ接口阶段,它在物理特性上保持了与SATA的全兼容,支持3Gbps的外部传输速度和NCQ技术。

26-d9-1-6.jpg
SATA接口的硬盘

由于很多设备提供商在市场宣传中滥用“SATA Ⅱ”的现象越来越严重,因此由希捷所主导的SATA-IO(Serial ATA International Organization,SATA国际组织)又宣布了SATA 2.5规范。其实就像SATA Ⅱ一样,SATA 2.5规范也不是一个独立的规范标准,它只是一个SATA标准规范的集合体。

SATA 2.5融合了原先SATAⅡ所含的大部分功能——从3Gb/s和NCQ到交错启动(Staggered Spin-up)、热插拔(Hot Plug)、端口多路器(Port Multiplier)以及eSATA接口(External SATA,外置式SATA接口)等七个子标准,提高了产品的可靠性和兼容性。

26-d9-1-7.jpg
eSATA让硬盘接口更灵活

目前,SATA取代PATA已成定局,不仅能实现软硬件的平滑升级(SATA和PATA保持了软件兼容性,这意味着厂商不必重写任何驱动程序和操作系统代码),而且能提供更快的数据传输速度。

当然,SATA接口的普及,除了各大硬盘厂商所起的作用外,Intel的主导作用不可忽视,正是Intel的主板芯片组率先提供了对SATA和SATA Ⅱ的强力支持,才让SATA接口在硬盘中得以更快速普及,同时SATA也成功“入侵”了光存储器等领域。