Coo1Runner-Ⅱ器件实现IDE总线接口和协议
发布时间:2008/9/19 0:00:00 访问次数:1128
ide接口有两个工作模式,即pio模式和dma模式。当ide设备的状态寄存器bsy位被清零并且drq位被置“1”时,进行pio数据传输,pio模式数据位通常为16位。片选信号cs0和csi选择设各命令或控制块寄存器。设备地址da[2∶0]用来指定是访问设备寄存器,或数据端口。dior或diow确定数据传输方向,读/写时序如图所示。
如图 pio模式读/写时序
dma传输为16位,主机控制dmack信号有效,则会启动一次dma突发数据传输,一个dma突发为两位或更多位。dmarq和dmack信号用来指定什么时候会执行多字dma传输,也被用来控制多字div队数据传输时的数据流。当一个设备准备好进行多字dma数据传输时,就会驱动dmarq信号有效。主机将会通过使cs0和cs1无效和使dmack有效的方式进行数据传输。数据传输过程中先使diow/dior有效,再使其无效。当dmack有效时,cs0和cs1保持无效。当设备使dmarq有效之后,主机才会使dmack有效。仅仅在dmarq和dmack都有效时,主机将初始化一个读/写周期。一旦dmarq和dmack都有效,则这两个信号将保持到至少一个字的数据传输完毕。
设备可能会在有些时候通过使dmarq失效来暂停数据传输,如需要流控制时,主机响应dmarq,也控制dmack失效。之后,当设备准备好传输更多数据并且dmack被主机控制失效时,设备会重新使dmarq有效,以继续进行数据传输。
主机也可能会暂停数据传输,或者控制diow/dior失效,或者控制dmack失效。当dmack失效时,设备会使dmarq保持有效状态不变;当dmarq有效时,主机使dmack重新有效,以开始数据传输,在此过程中diow/dior也会被使能。
当多字传输完成时,设备将使dmarq失效。主机为响应dmarq,也会使dmack失效。dmarq将会从dma传输一开始就被驱动有效,直到最后一个字传输完成,此信号在其他时候都会被释放。dma读/写时序如图所示。
如图 dma读/写时序
欢迎转载,信息来自维库电子市场网(www.dzsc.com)
ide接口有两个工作模式,即pio模式和dma模式。当ide设备的状态寄存器bsy位被清零并且drq位被置“1”时,进行pio数据传输,pio模式数据位通常为16位。片选信号cs0和csi选择设各命令或控制块寄存器。设备地址da[2∶0]用来指定是访问设备寄存器,或数据端口。dior或diow确定数据传输方向,读/写时序如图所示。
如图 pio模式读/写时序
dma传输为16位,主机控制dmack信号有效,则会启动一次dma突发数据传输,一个dma突发为两位或更多位。dmarq和dmack信号用来指定什么时候会执行多字dma传输,也被用来控制多字div队数据传输时的数据流。当一个设备准备好进行多字dma数据传输时,就会驱动dmarq信号有效。主机将会通过使cs0和cs1无效和使dmack有效的方式进行数据传输。数据传输过程中先使diow/dior有效,再使其无效。当dmack有效时,cs0和cs1保持无效。当设备使dmarq有效之后,主机才会使dmack有效。仅仅在dmarq和dmack都有效时,主机将初始化一个读/写周期。一旦dmarq和dmack都有效,则这两个信号将保持到至少一个字的数据传输完毕。
设备可能会在有些时候通过使dmarq失效来暂停数据传输,如需要流控制时,主机响应dmarq,也控制dmack失效。之后,当设备准备好传输更多数据并且dmack被主机控制失效时,设备会重新使dmarq有效,以继续进行数据传输。
主机也可能会暂停数据传输,或者控制diow/dior失效,或者控制dmack失效。当dmack失效时,设备会使dmarq保持有效状态不变;当dmarq有效时,主机使dmack重新有效,以开始数据传输,在此过程中diow/dior也会被使能。
当多字传输完成时,设备将使dmarq失效。主机为响应dmarq,也会使dmack失效。dmarq将会从dma传输一开始就被驱动有效,直到最后一个字传输完成,此信号在其他时候都会被释放。dma读/写时序如图所示。
如图 dma读/写时序
欢迎转载,信息来自维库电子市场网(www.dzsc.com)