阅读:1151回复:1
高手们看过来(有5分)
当硬盘以PIO-IN方式进行读写操作时,计算机系统在启动时,主机发出“EC”命令给设备,进行硬盘的初始化过程,在这个过程中,硬盘要将256个字传给主机,主机通过读取数据端口1F0来获取硬盘信息。在这256个字的传输过程中,主机是每次读取一个字吗?如果是的话,那么设备是如何知道主机已读取了当前字?有没有通过一个信号或状态寄存器中的某一位来标识当前字节已被读取?
在下是第一次做这方面的设计,言词中若有不当之处请见谅! |
|
沙发#
发布于:2003-08-09 15:34
ide是一个异步的interface,他分为dma和pio mode,其中dma又分为
udma和multword dma mode,无论在什么模式下面,他都是以扇区来访问的(除了命令,状态 ,控制寄存器)。就那你说的pio mode来说,当你发出一个“EC”的命令,那么他的状态寄存器就会有(1f7h)50h变为58h。让后host会连续读出512byte,让后状态寄存器有58变成50,并发出一个中断给host,这样host就知道自己已经读完了。 |
|
|