Coo1Runner-Ⅱ器件實現IDE總線接口和協議
發布時間:2008/9/19 0:00:00 訪問次數:1120
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)