- 相關(guān)推薦
ADSP2116中DMA的應用
摘要:直接內存存取(DMA)是DSP芯片中用于快速數據交換的重要技術(shù),文中對AD公司的浮點(diǎn)系列芯片ADSP2116x中DMA的應用方法作了詳細介紹,同時(shí)重點(diǎn)介紹了鏈式DMA的操作方法,給出了一些實(shí)際應用中的例子。1。模停粮攀
直接內存存。ǎ模停粒┦怯嬎銠C系統提高運行效率的一項重要技術(shù)。它可以在CPU運行指令的同時(shí),使系統從外部存儲器或設備中存取數據?也可以在核心處理器不參與的情況下由專(zhuān)用的DMA設備存取數據。
對于DSP芯片來(lái)講,DMA的作用尤為重要。眾所周知,DSP芯片主要面向實(shí)時(shí)信號處理?其核心運算部件具有很高的運算速度,常以MFLOPS(每秒百萬(wàn)次浮點(diǎn)運算)來(lái)衡量。ADSP2116x的速度為600MFLOPS?此速度是以存儲在芯片內部存儲器中的程序和數據為前提的。在DSP內部,一般采用多總線(xiàn)的哈佛結構?數據總線(xiàn)和程序總線(xiàn)相互獨立,即指令的存取和數據的存取并行不悖,另外,在AD-SP2116x內部還有各種接口總線(xiàn),可用以提高數據的流通能力,而在芯片的外部,所有的總線(xiàn)都被合并在一起了。為了發(fā)揮DSP核心運算單元的高速運算能力,必須先把外部數據傳輸到片內存儲器中。使用DMA操作可以減少核心處理器的負擔,提高運算速度。另一方面,DSP系統總要與各種外部信號打交道?它從外部輸入數字信號,經(jīng)過(guò)各種算法處理后,還要輸出給其它外部設備。不僅如此,對于很多應用系統?數據的輸入和輸出常常是連續不斷的。試想?若用DSP的核心部件完成數據的輸入和輸出,將無(wú)法發(fā)揮DSP的高速運算能力。而AD公司的ADSP2116x系列則集成了DMA控制器,從而可用DMA來(lái)完成數據的輸入和輸出。
高效的DSP系統通常采用圖1所示的結構。該結構的內部帶有輸入、輸出緩沖區,而數據的獲得則依靠DMA控制器。這樣,核心運算單元就可以專(zhuān)門(mén)進(jìn)行信號處理,而將外界數據的獲取交給 DMA來(lái)完成。
2。粒模樱校玻保保叮械模模停
2.1 ADSP2116x中DMA的數據傳輸類(lèi)型
ADSP2116x中的DMA包含14條獨立通道,可完成下列類(lèi)型的數據傳輸操作:
●片內存儲器與片外存儲器或片外設備之間的傳輸操作;
●片內存儲器與其它ADSP2116x的片內存儲器之間的傳輸操作;
●片內存儲器與主處理器之間的傳輸操作;
●片內存儲器與串行口之間的傳輸操作;
●片內存儲器與Link口之間的傳輸操作;
●片內存儲器與SPI口之間的傳輸操作;
●片外存儲器與片外設備之間的傳輸操作。
2.2 ADSP2116x中與DMA有關(guān)的寄存器
DMA的編程實(shí)際上是通過(guò)內部核心處理單元或外部主機對片內有關(guān)的I/O寄存器設置來(lái)完成的,與DMA有關(guān)的I/O寄存器如表1所列?刂萍拇嫫髦饕脕(lái)設置數據傳輸的方向、數據格式、是否鏈式等操作;參數寄存器用來(lái)設置數據傳輸的地址、數目等信息;數據緩存器則主要用來(lái)緩存傳輸的數據,以提高數據的傳輸率。這些I/O寄存器都被映射到片內存儲器的前256個(gè)地址上。
表1 ADSP2116x中的DMA緩存器
2.3 ADSP2116x中DMA一般傳輸過(guò)程的設置
DMA一般傳輸過(guò)程的設置步驟如下:
(1)設置對應通道的參數寄存器?
(2)設置對應通道的DMA控制寄存器,并將其中的DMA使能位設為有效?
(3)開(kāi)始DMA數據傳輸?
(4)DMA傳輸結束后,產(chǎn)生對應的中斷,并通過(guò)程序對中斷進(jìn)行處理。
2.4 ADSP211
【ADSP2116中DMA的應用】相關(guān)文章:
紅外遙控在汽車(chē)中的應用03-19
淺析力學(xué)在機械中的應用05-19
竹子在設計中的應用價(jià)值12-02
RPMS在煉化企業(yè)中的應用12-09
NUFFT在ISAR成像中的應用03-07
淺談生活中的數學(xué)應用06-27
沉井施工在工程中的應用11-23
稀土在電鍍中的應用分析03-18