電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>工控技術(shù)>兩種總線數(shù)據(jù)兩種傳遞形式:PIO、DMA介紹資料下載

兩種總線數(shù)據(jù)兩種傳遞形式:PIO、DMA介紹資料下載

2021-04-19 | pdf | 67.26KB | 次下載 | 2積分

資料介紹

總線上的數(shù)據(jù)的傳遞有兩種形式。一種為程控輸入/輸出(PIO)另一種為直接存儲(chǔ)器訪問(wèn)(DMA)。 1、PIO 使用PIO時(shí),CPU是主模塊,總線上數(shù)據(jù)的讀取由CPU上運(yùn)行的軟件程序直接發(fā)起,傳遞的數(shù)據(jù)一定進(jìn)過(guò)CPU(如下面的一、二所述)。 一、軟件指令或者將已經(jīng)存放在CPU數(shù)據(jù)寄存器中的數(shù)據(jù)發(fā)送到目標(biāo)被控模塊; 二、或者將目標(biāo)被控模塊里的一個(gè)數(shù)據(jù)讀入,放到CPU的數(shù)據(jù)寄存器中。 例如:需要將數(shù)據(jù)從模塊A---轉(zhuǎn)移到----模塊B,軟件將這個(gè)任務(wù)分解為兩個(gè)PIO操作: 第一步:從模塊A讀取數(shù)據(jù),并存放到CPU的數(shù)據(jù)寄存器中; 第二步:將存放在CPU數(shù)據(jù)寄存器中的數(shù)據(jù)寫(xiě)入到模塊B。 由于鏈接芯片與芯片之間的系統(tǒng)總線的時(shí)鐘頻率比CPU內(nèi)部的時(shí)鐘頻率要低許多,用PIO讀寫(xiě)大量的數(shù)據(jù)是一種非常低效的方式占用CPU的處理能力。所以需要利用專(zhuān)門(mén)的硬件來(lái)協(xié)助執(zhí)行,在芯片與芯片之間或者模塊與模塊之間數(shù)據(jù)傳輸。這就是DMA。 2、DMA 此時(shí)軟件只需要將傳輸數(shù)據(jù)要求使用PIO通知DMA硬件,DMA硬件按照要求執(zhí)行數(shù)據(jù)的傳輸。這期間CPU繼續(xù)進(jìn)行其他工作。當(dāng)DMA硬件執(zhí)行完畢數(shù)據(jù)的傳輸任務(wù)之后,通過(guò)中斷信號(hào)或這通過(guò)向主存儲(chǔ)的某個(gè)特定地址寫(xiě)入特定的數(shù)值,通知軟件。 一個(gè)DMA硬件通常包括多個(gè)DMA通道。每個(gè)通道一般用于一對(duì)模塊之間的數(shù)據(jù)傳輸,通道之間相互獨(dú)立。 DMA描述符用于指定如何傳輸數(shù)據(jù)塊。一個(gè)DMA描述符至少包括數(shù)據(jù)傳輸?shù)脑吹刂罚⊿A)、目的地址(DA)、需要傳輸?shù)臄?shù)據(jù)量(data size)、和每次總線傳輸?shù)臄?shù)據(jù)量(transfer size)。有些DMA模塊要求軟件將DMA描述符的數(shù)據(jù)結(jié)構(gòu)存放在主存儲(chǔ)器中,使用這個(gè)方法的好處時(shí)軟件可以十分有效的建立DMA描述符。在DMA執(zhí)行一個(gè)DMA數(shù)據(jù)傳輸任務(wù)之前,DMA先要用DMA的方法,將存放在CPU主存儲(chǔ)的DMA描述符讀到DMA模塊中。 DMA將一個(gè)數(shù)據(jù)塊的傳輸分為兩個(gè)步驟。 第一步:從源地址的被控模塊讀取數(shù)據(jù); 第二步:將讀取的數(shù)據(jù)寫(xiě)入目的地址的被控模塊。 根據(jù)DMA描述符的規(guī)定,DMA可以在傳輸了一個(gè)數(shù)據(jù)塊之后,自動(dòng)的將源地址和目的地址更新到下一個(gè)數(shù)據(jù)塊地址,然后DMA開(kāi)始傳輸下一個(gè)數(shù)據(jù)塊,一直傳輸完實(shí)際要求傳輸?shù)臄?shù)量級(jí)。假設(shè)一個(gè)DMA開(kāi)始傳輸?shù)臄?shù)據(jù)量是128Byte,每次傳輸?shù)臄?shù)據(jù)塊是16Byte,為了完成這個(gè)DMA描述符指定的數(shù)據(jù)傳輸,DMA自動(dòng)進(jìn)行8次總線讀取和8次總線寫(xiě)入。這些傳輸路徑不經(jīng)過(guò)CPU 轉(zhuǎn)自: (mbbeetchina)
下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評(píng)論

查看更多

下載排行

本周

  1. 1TC358743XBG評(píng)估板參考手冊(cè)
  2. 1.36 MB  |  330次下載  |  免費(fèi)
  3. 2開(kāi)關(guān)電源基礎(chǔ)知識(shí)
  4. 5.73 MB  |  11次下載  |  免費(fèi)
  5. 3100W短波放大電路圖
  6. 0.05 MB  |  4次下載  |  3 積分
  7. 4嵌入式linux-聊天程序設(shè)計(jì)
  8. 0.60 MB  |  3次下載  |  免費(fèi)
  9. 5DIY動(dòng)手組裝LED電子顯示屏
  10. 0.98 MB  |  3次下載  |  免費(fèi)
  11. 6基于FPGA的C8051F單片機(jī)開(kāi)發(fā)板設(shè)計(jì)
  12. 0.70 MB  |  2次下載  |  免費(fèi)
  13. 751單片機(jī)PM2.5檢測(cè)系統(tǒng)程序
  14. 0.83 MB  |  2次下載  |  免費(fèi)
  15. 8基于51單片機(jī)的RGB調(diào)色燈程序仿真
  16. 0.86 MB  |  2次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費(fèi)
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費(fèi)
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費(fèi)
  7. 4開(kāi)關(guān)電源設(shè)計(jì)實(shí)例指南
  8. 未知  |  21549次下載  |  免費(fèi)
  9. 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書(shū))
  10. 0.00 MB  |  15349次下載  |  免費(fèi)
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費(fèi)
  13. 7電子制作實(shí)例集錦 下載
  14. 未知  |  8113次下載  |  免費(fèi)
  15. 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德?tīng)栔?/a>
  16. 0.00 MB  |  6656次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537797次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191186次下載  |  免費(fèi)
  13. 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
  14. 158M  |  183279次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138040次下載  |  免費(fèi)