这里主要来分析ATAPI驱动程序,那么就要先了解ATAPI的相关知识了。
1. AT ATTACHMENT (ATA):ATA接口是个人电脑上最具有实力的存储接口,ATA接口早先被广泛应用于IBM及其兼容机,它被定义为标准的硬盘接口。
2. ATA-1:ATA硬盘接口的第一代标准ANSI X3.279-1994,也就是早期的IDE接口。
3. ATA-2:ATA硬盘接口的第二代标准ANSI X3.279-1995,就是大家所知道的Fast ATA或者称之为Enhanced IDE(EIDE)接口。
4. Apple-ATA:Apple上使用的ATA接口,当然也是由标准的ATA接口演化而来的,在ANSI的国际标准提案申请为X3T9.2/90-143.Revision 3.1,这一个由标准ATA接口规格演化而来Apple-ATA支持IDE接口的硬盘LBA驱动模式,但是没有支持ATATP。
5. ATA-3:ATA硬盘接口的第三代标准ANSI X3T13/2008D Revision 7(draft),同样包含在Fast ATA或Enhanced IDE的接口之中,一般使用者大多都知道Fast ATA或是Enhanced IDE接口,而对原来Fast ATA或Enhanced IDE接口居然还包括了ATA-2以及ATA-3两组国际标准。
6. ATAPI:AT Attachment Packet Interface,这是ATA Protocol的延伸,被定义用来支持CD-ROM光驱以及Tape磁带机,这一个ATAPI Protocol容许硬盘以外的设备使用ATA数据线。
7. ATA/ATAPI-4:ATA硬盘接口的第四代标准ANSI X3T13/D96153(draft),也就是大家所知道的Ultra ATA或是Ultra DMA,这一个版本支持33MB/sec的数据传输率(in burst mode),相信各位读者对ATA-4/Ultra DMA都是比较熟悉的了。
8. ATA/ATAPI-5:这是目前ATA硬盘接口的比较新的一代标准,这一规格里规定的数据流传输速率(in burst mode)为66MB/sec,并且加强了内部资料的检查与错误修正的算法,强化了资料的完整性和可靠性。
9. ATA/ATAPI-6:还有更新的一个标准,是ATA/ATAPI-5的改进,这一规格里规定的数据流传输速率(in burst mode)为100MB/sec。
PIO驱动模式的资料传输速率
PIO Mode Cycle time Transfer Rate
PIO Mode 0 600ns 3.3Mbytes/sec
PIO Mode 1 383ns 5.2Mbytes/sec
PIO Mode 2 240ns 8.3Mbytes/sec
PIO Mode 3 180ns 11.1Mbytes/sec
PIO Mode 4 120ns 16.6Mbytes/sec
Enhanced IDE接口发展至今,ULTRA DIRECT MEMORY ACCESS(ULTRA-DMA)的是目前最新的目前大家最为熟悉的就是Ultra-DMA的资料传输率最高可以达到ATA-3标准的四倍,也就是66.6Mbytes/sec。
实际上硬盘接口的鼻祖,除了SCSI界面以外,就是MFM/ST-506 Bus接口了,后来经过不断的演变才演进成为今天的Enhanced IDE接口,而在Enhanced IDE之前的IDE/AT-BUS接口,则仅仅提供了PIO驱动模式,而没有DMA驱动模式,这两种驱动模式简单来讲区别主要是在数据传输时是否需要cpu来控制。在PIO模式下,任何一个硬盘的读取动作,都必须经过cpu来控制管理,所以只要硬盘读写动作频繁的时候,cpu的资源就被大量的消耗,因而降低了电脑整体的效率。而在DMA模式下,硬盘和内存之间的数据可以直接交换,这样就不会占用cpu的资源,提高了电脑的整体效率。读者千万不要忽略掉从PIO到DMA的进步,事实上个人电脑内的任何一个动作都必须运用系统的内存,毕竟cpu内部的缓存器容量太小了,所以凡是程序的读取、运算都必须在内存上操作,这样从硬盘到内存的数据交换就会非常频繁,所以简化这么一步对于电脑整体性能的提高还是非常突出的。
以前硬盘采用PIO模式的时候,只要一开始大量的硬盘读写操作,就会使得电脑的性能急剧下降,让人感觉电脑总在等待什么似的,实际上SCSI接口一开始也是采用PIO模式,后来也演变成了DMA模式,IDE/AT-BUS接口也不例外,到了PIO Mode 4驱动模式之后,IDE/AT-BUS接口已经成功的演化成为Enhanced IDE接口,驱动模式也由PIO Mode 4升级为Multi-word DMA Mode2,原本预计还有一个PIO Mode 5会问世的,但是DMA Mode已经出现,PIO Mode已经没有市场了。
所以读者可以认为Enhanced IDE接口的特点主要在于:驱动模式的改变,增加了对非硬盘存储设备的支持等,而且原本是一组的IDE界面现在也增加到了两组。
DMA的全名为Direct Memory Access直接内存存取,采用DMA驱动模式以后,cpu不再象往常那样需要花费相当多的时间在硬盘的O/I操作上,DMA的意义就是在于让硬盘和内存直接沟通,所有的硬盘操作都不需要占用太多的cpu时间。
接着让我们来看看DMA Mode的相关资料,DMA驱动模式资料传输速率:
DMA Mode I/O Cycle time Transfer Rate
Single-word DMA Mode 0 900ns 2.1 Mbytes/sec
Single-word DMA Mode 1 480ns 4.2 Mbytes/sec
Single-word DMA Mode 2 240ns 8.4 Mbytes/sec
Multi-word DMA Mode 0 480ns 4.2 Mbytes/sec
原文链接:https://www.f2er.com/react/308426.html