IDE控制器技术内幕:并行ATA篇
为何会有信号干扰?
尽管ATA接口拥有价格低廉、兼容性好的优点,但它的缺点同样很明显:ATA的速度较慢、对接口电缆的长度限制严格,也无法外接使用。最严重的问题来自于信号干扰——由于ATA为并行传输标准,只要其中一比特位信号出错整字节都必须重新传输。在ATA-3之前,这个问题并不突出,因为当时ATA总线的工作频率较低、数据传输速度不快,干扰也就不明显。在ATA-4之后,硬盘接口的数据传输急剧升高、总线频率也成倍提高,加上并行的排线缆紧紧相连、外部电磁干扰和内部线缆间的串扰现象愈来愈严重,数据传输出错概率也随之成倍提高,而频频重传必然令传输速率难以加快。为此,在ATA-5之后引入增加40根地线的80针排线,一定程度缓解了该问题。但是当接口速率提升到100MB/s之后,信号干扰问题又开始变得严重,这也是133MB/s的UltraDMA/133得不到支持的主要原因——到这个阶段,并行模式的ATA可以说已没有任何发展前途,我们进入串行ATA时代大势所趋。
ATA规范的传输模式剖析
在ATA发展的各个阶段,我们会发现它们的传输模式都各不相同,从PIO 0到PIO 4,DMA的Single Word 0/1/2与Multi Word 0/1/2,以及UltraDMA 0~UltraDMA 6,总和起来共有18中之多,这18种模式都互不相同,或者传输原理迥异、或者存在速度差异,下面我们对此作一一分析比较。
如果根据工作原理来分,IDE硬盘的传输模式可以分为PIO与DMA两种——PIO即英文Programmable I/O的缩写,意为可编程的输入输出。这种模式必须由CPU来控制整个数据的传输过程,所以CPU资源占用率相当高、对整体性能有很大的负面影响。另一种则是DMA模式,它原意是指“直接内存访问”,这种模式不需要CPU来控制数据传输,而是由主板芯片组中的DMA控制器来管理,这样硬盘与内存可以直接进行数据交换无需动用CPU的计算能力,因此DMA模式可以节省大量的资源、使CPU能够专注于程序执行与各类数据计算,当然系统性能也就得以有效提高。
PIO共有0~4五种模式,数据传输速率从3.3MB/s到16.6MB/s,在ATA-1、ATA-2规格中得到大量采用;DMA则有Single Word 0/1/2与Multi Word 0/1/2共六种模式,传输速率从2.1MB/s到16.6MB/s不等,而UltraDMA 0~UltraDMA 6的传输速率从16.6MB/s到133MB/s,其中16.6MB/s 的UltraDMA 0和25MB/s的UltraDMA 1两种模式只是在ANSI规范中进行定义,实际上没有一个硬盘厂商选择这两种模式,UltraDMA应用是从模式2开始、模式6终结。为了让大家更好区分对照,我们专门制作了一个完整的表格。
ATA硬盘、IDE控制器与IDE扩展卡
在ATA标准的进化中,硬盘驱动器、控制器与控制卡都必须同时作升级,这三种概念应该很好区分,不过控制器有两种概念需要加以明确:一种是集成于硬盘电路板中的硬盘控制器,它负责掌管硬盘的正常运转;另一种则是集成在主板或IDE控制卡上的IDE控制器,它负责掌控系统与硬盘的通信、也就是维护ATA总线的正常工作,如无特别之处,我们下文所说的控制器均是指后者。IDE控制器可以是一枚芯片,或者干脆就是南桥芯片的一个逻辑模块,它必须通过控制卡、或者集成于主板上方可发挥效用,而所谓的硬盘控制卡便是拥有IDE控制器芯片的ISA或PCI扩展卡,下面,我们选取几个有代表性的产品进行介绍。
注:为符合人们的习惯,我们决定在下文使用通俗名称。
硬盘驱动器:从UltraDMA/33至UltraDMA/133的演进
UltraDMA/33硬盘在1998年可谓风行一时,在当时它所提供的33MB/s的速率和DMA模式代表着硬盘的最高性能,加上7200转刚刚兴起,那是可谓是IDE硬盘发展史上黄金时代。昆腾火球系列(Quantum Fireball)无疑是那个时代的经典之作,尽管它是一款5400转和256 KB缓存的产品,可在当时性能却相当优异,加上主流价格为大家所称道,口碑相当良好。而籍由该系列产品,昆腾奠定了UltraDMA/33之王的历史性地位,何况当时它还是UltraDMA/33标准的实际制定者。 |