网站大量收购闲置独家精品文档,联系QQ:2885784924

DMA中断暂存器.PPT

  1. 1、本文档共51页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
DMA中断暂存器

DMA 控制器 大綱 DMA簡介 概論 DMAC 資料傳送 DMAC暫存器 DMA簡介 早期電腦系統的週邊設備,以中斷CPU目前的工作來獲得CPU的服務。 CPU經常處於被中斷的狀況下,而導致系統效能降低 。 DMA運作模式是週邊設備不必經過CPU處理,大量資料區塊能與記憶體建立直接傳輸的通道。 概論 DMAC可以將內部與外部週邊裝置的資料傳送至主記憶體,從主記憶體傳送資料至週邊裝置,或將資料從主記憶體傳送到主記憶體 DMAC具有16個優先權式的通道(channel0~channel15) DMAC服務提出傳送要求的對象 任何內部的周邊裝置 最多兩個外部的輔助晶片(companion chip) DMAC(DMA控制器) XScale晶片的DMAC特性 DMAC區塊圖 DMAC通道 訊號說明 DMA_IRQ DMA通道優先權排程 DMA敘述元 DMA通道狀態 讀取與寫入順序 位元組傳送順序 XScale晶片的DMAC特性 支援Flow-through傳送方式 資料會先通過DMAC後,才會被目的裝置的緩衝區或記憶體拴鎖住(latched) 支援以敘述元為基礎(descriptor-based)的傳輸方式,因此可允許許多命令形成串列或迴圈結構 DMAC通道 DMAC具有16個通道,每一個通道由4個32位元的暫存器所控制 每個通道可以經由設定其組態,以Flow-through傳輸方式服務任何內部的週邊設備或外部的週邊設備的其中一個 訊號說明 DREQ[1:0]: 當需要DMA傳輸請求時,外部輔助晶片會產生DREQ[1:0]訊號 PREQ[37:0]: 為晶片內部週邊的主動高位內部訊息 DREQ[1:0]訊號 DREQ[1:0]訊號必須維持觸發狀態4個MEMCLK之久,以允許DMA辨別0至1的轉換。 DREQ[1:0]訊號反觸發時,它們必須維持反觸發狀態至少4個MEMCLK之久。 DMAC紀錄從0至1的轉換來辨別是否是一個新的要求。 除非前面的DMA資料開始傳送,否則外部輔助晶片不可觸發另一個DREQ。 DMA_IRQ 應用處理器具有16個IRQ訊號,每一個DMA通道都對應一個 每個DMA_IRQ都可在DMA中斷暫存器DINT內被讀取 使用者可遮蔽通道的DMA命令暫存器DCMD的一些位元來引發通道的中斷,例如:結束中斷致能位元ENDIRQEN、啟動中斷致能位元STARTIRQEN與停止中斷致能位元STOPIRQEN DMA通道優先權排程 允許需要大頻寬的週邊比需要較小頻寬的週邊有較多機會得到服務 DMA通道內部分為4個組,每個組包含4個通道,在一個組中,每個通道會循環(round-robin)取得優先權 將DMA通道的4個組設定為0、1、2、3來排列優先順序,在一次循環中的服務順序為:0→1→0→2→0→1→0→3 所有通道同時執行時的通道優先權 非所有通道同時執行時的通道優先權 狀態器之狀態在重置時為0 每當有一個通道被服務時,狀態器之狀態增加1 當狀態器的狀態為7時,下一個狀態回到0 通道優先權方法的範例 DMA敘述元 DMAC有兩種不同的操作模式: 敘述元抓取模式(Descriptor Fetch Mode) 非敘述元抓取模式 (No-Descriptor Fetch Mode) 設定DMA通道控制/狀態暫存器DCSRx[NODESCFETCH]位元來決定使用哪種模式 此兩種模式可同時在不同通道上使用,即當有些DMA通道在一個模式執行時,其他通道可在另一個模式執行 通道必須先停止執行,才可從一種模式換成另一種模式 DMA敘述元(cont.) 非敘述元抓取模式: 在非敘述元抓取模式,敘述元位址暫存器DDADRx是保留的 軟體不可對DMA敘述元位址暫存器DDADRx做寫入,而且必須載入DMA來源位址暫存器DSADRx、DMA目的位址暫存器DTADRx與DMA命令暫存器DCMDx 當設定執行位元時,DMAC立刻開始傳輸資料,並且執行非敘述元抓取 敘述元抓取模式: 在此模式中,DMAC暫存器由主記憶體裡的DMA敘述元來載入 允許DMA通道傳輸資料至一些不連續的位置 DMA通道狀態 未初始化:重置之後通道為未初始化狀態 有效敘述元,非執行: 在敘述元抓取模式裡,軟體載入敘述元到通道的DDADR中 在非敘述元抓取模式裡,程式化DSADR、DTADR與DCMD數值 敘述元抓取,執行:從記憶體抓取敘述元 等待請求:在通道開始傳送資料之前,它會先等待請求 傳送資料:通道正在傳送資料 通道錯誤:通道發生錯誤,它會維持停止狀態直到軟體清除錯誤條件與重新初始化通道 停止:通道已停止 讀取與寫入順序 DMAC確保資料不會保留在敘述元之間的通道緩衝區內 當一個敘述元被處理完成,通道內緩衝的讀取資料會被丟棄,而寫入資料會送

文档评论(0)

youbika + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档