34267《TMS320系列DSP原理、結(jié)構(gòu)及應用》黨瑞榮.ppt_第1頁
34267《TMS320系列DSP原理、結(jié)構(gòu)及應用》黨瑞榮.ppt_第2頁
34267《TMS320系列DSP原理、結(jié)構(gòu)及應用》黨瑞榮.ppt_第3頁
34267《TMS320系列DSP原理、結(jié)構(gòu)及應用》黨瑞榮.ppt_第4頁
34267《TMS320系列DSP原理、結(jié)構(gòu)及應用》黨瑞榮.ppt_第5頁
已閱讀5頁,還剩573頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、,TMS320系列DSP原理、結(jié)構(gòu)及應用,第一章 緒論,1.1信號處理技術(shù)基礎(chǔ)重要概念,(1)信號和信息 信號是信息的載體。 所謂信息是指人類對外界事物的感知,如溫度、聲音、圖像等都是信息的表現(xiàn)形式。 隨著技術(shù)的進步,對信息的表達、獲取、傳遞的能力也在不斷地發(fā)生著變換,例如從遠古時代的手勢、擊鼓、烽火、旗語變化到今天的電報、電話、廣播、電視、多媒體、互聯(lián)網(wǎng)等。,信號分類,時間連續(xù)性:連續(xù)信號(模擬信號)、時域離散信號和數(shù)字信號。,信號的函數(shù)表示:確定信號和隨機信號,信號的周期性:周期信號和非周期信號,信號 的能量:功率信號和能量信號。,第一章 緒論,(2)系統(tǒng) 系統(tǒng)是指信號處理過程中硬件設(shè)備的

2、總稱,它把感知的信息處理成人們可以直接觀察的形式。若信號的處理是通過模擬部件實現(xiàn)的,則稱為模擬系統(tǒng);若信號的處理是通過數(shù)字部件完成的,則稱為數(shù)字系統(tǒng)。,(3)信號處理 信號處理是指將信號從一種形式變成另一種形式的算法或結(jié)構(gòu),比如將信號從時域轉(zhuǎn)化為頻域,從模擬信號轉(zhuǎn)換為數(shù)字信號等。信號處理的內(nèi)容涉及廣泛,尤其信號的數(shù)字處理為信號處理帶來了廣闊的前景。,由信號、系統(tǒng)和信號處理的定義,可以清晰地看到它們之間的關(guān)系,即信號分析是基礎(chǔ),系統(tǒng)分析是橋梁,信號處理是手段,系統(tǒng)綜合是目的。信號處理作為手段,貫穿信號分析、系統(tǒng)分析、系統(tǒng)綜合的始終。,1.1信號處理技術(shù)基礎(chǔ)重要概念,第一章 緒論,1.1信號處理技

3、術(shù)基礎(chǔ)數(shù)字信號處理,數(shù)字信號處理是利用計算機或?qū)S锰幚碓O(shè)備,以數(shù)字的形式對信號進行分析、采集、合成、變換、濾波、估算、壓縮、識別等加工處理,以便提取有用的信息并進行有效的傳輸與應用。與模擬信號處理相比,數(shù)字信號處理具有精確、靈活、抗干擾能力強、可靠性高、體積小、易于大規(guī)模集成等優(yōu)點。,DSP可以代表數(shù)字信號處理技術(shù)(Digital Signal Processing)也可以代表數(shù)字信號處理器(Digital Signal Processor),其實兩者是密切相關(guān)的,前者是理論和計算方法上的技術(shù),后者是指實現(xiàn)這些技術(shù)的通用或?qū)S每删幊涛⑻幚砥餍酒?。本書中,DSP這一英文縮寫是指數(shù)字信號處理器。,

4、數(shù)字信號處理是以眾多學科為理論基礎(chǔ)的,所涉及的范圍極其廣泛。如在數(shù)學領(lǐng)域中,微積分、概率統(tǒng)計、隨機過程、數(shù)字分析等都是數(shù)字信號處理的基礎(chǔ)工具。它與網(wǎng)絡理論、信號與系統(tǒng)、控制理論、通信理論、故障診斷等密切相關(guān)。近年來,一些新興學科,如人工智能、模式識別、神經(jīng)網(wǎng)絡等都與數(shù)字信號處理密不可分??梢哉f,數(shù)字信號處理是將許多經(jīng)典的理論體系作為自己的理論基礎(chǔ),同時又使自己成為一系列新興學科的理論基礎(chǔ)。,第一章 緒論,1.1信號處理技術(shù)基礎(chǔ)數(shù)字信號處理,數(shù)字信號處理包括算法研究和實現(xiàn)方法兩個方面的內(nèi)容: 1算法研究。算法研究是指如何以最小的運算量和存儲器的使用量來完成指定的任務。20世紀60年代出現(xiàn)的快速傅

5、里葉變換(FFT),使數(shù)字信號處理技術(shù)發(fā)生了革命性的變化。近幾年來,數(shù)字信號處理的理論和方法得到了迅速的發(fā)展,諸如:語音與圖像的壓縮編碼、識別與鑒別,信號的調(diào)制與解調(diào)、加密和解密,信道的辨識與均衡,智能天線,頻譜分析等各種快速算法都成為研究的熱點,并取得了長足的進步,為各種實時處理的應用提供了算法基礎(chǔ)。 2數(shù)字信號處理的實現(xiàn)。數(shù)字信號處理的實現(xiàn)是用硬件、軟件或軟硬件相結(jié)合的方法來實現(xiàn)各種算法。,數(shù)字信號處理的實現(xiàn)一般有以下幾種方法: (1)在通用計算機上用軟件(如Fortran、C語言)實現(xiàn),但速度慢,主要用于算法的模擬; (2)在通用計算機系統(tǒng)中加入專用的加速處理器,以增強運算能力和提高運算

6、速度。不適合于嵌入式應用,專用性強,應用受到限制; (3)用單片機實現(xiàn),用于不太復雜的數(shù)字信號處理。不適合于以乘法-累加運算為主的密集型運算; (4)用通用的可編程 DSP 芯片實現(xiàn),具有可編程性和強大的處理能力,可完成復雜的數(shù)字信號處理的算法,在實時 DSP 領(lǐng)域中處于主導地位; (5)用專用的 DSP 芯片實現(xiàn),可用在要求信號處理速度極快的特殊場合,如專用于 FFT、數(shù)字濾波、卷積、相關(guān)算法的 DSP 芯片,相應的信號處理算法由內(nèi)部硬件電路實現(xiàn)。用戶無需編程,但專用性強,應用受到限制; (6)用基于通用 DSP核的ASIC芯片實現(xiàn)。,1.1信號處理技術(shù)基礎(chǔ)數(shù)字信號處理,第一章 緒論,第一章

7、 緒論,1.2 DSP芯片概述,1. DSP 芯片的發(fā)展概況,DSP 芯片誕生于 20 世紀 70 年代末,至今已經(jīng)得到了突飛猛進的發(fā)展,并經(jīng)歷了以下三個階段: 第一階段,DSP 的雛形階段(1980 年前后)。 1978 年 AMI公司生產(chǎn)出第一片 DSP 芯片 S2811。 1979 年美國 Intel 公司發(fā)布了商用可編程 DSP器件 Intel2920。 代表性器件主要有:Intel2920(Intel)、PD7720(NEC)、TMS320C10(TI)、DSP16(ATR/XFSM=0(標準方式) 特點: 1)每一次傳輸只包含一個字。 2)對于使用內(nèi)部的FSX:通過加載DXR啟動發(fā)

8、送,從DXR被加載到FSX出現(xiàn),大約有2.5個CLKX周期的延遲; 3)對于使用外部FSX:數(shù)據(jù)傳輸由FSX啟動,也需要2.5個CLK周期的延遲才能保證FSX作用DXR。 4)在發(fā)送操作中,一旦DXR向XSR傳輸數(shù)據(jù),XINT發(fā)生; 5)在接收操作中,只要傳輸開始,F(xiàn)SR必須保持低電平至最后一位的傳輸,整個字被接收并且傳輸?shù)紻RR后,產(chǎn)生一個RINT。,5.串行口的數(shù)據(jù)傳輸方式,第三章 TMS320C3x系列DSP處理器結(jié)構(gòu),3.7 外圍設(shè)備,3.7.2串行口,5.串行口的數(shù)據(jù)傳輸方式,第三章 TMS320C3x系列DSP處理器結(jié)構(gòu),3.7 外圍設(shè)備,3.7.2串行口,固定爆發(fā)傳輸方式時序圖,

9、固定標準方式: 條件:R/XVAREN=0(固定數(shù)據(jù)速率);R/XFSM=0(標準方式) 特點: 1)字節(jié)間首尾相接,每個字開始前都需要一個幀同步信號; 2)使用內(nèi)部產(chǎn)生的FSX,通過加載DXR啟動發(fā)送,從DXR被加載到FSX出現(xiàn),大約有2.5個CLKX周期的延遲,因此DSR加載要提前3個CLK周期; 3)對于使用外部FSX:數(shù)據(jù)傳輸由FSX啟動,也需要2.5個CLK周期的延遲才能保證FSX作用DXR,因此DSR加載要提前3個CLK周期; 4)傳輸每一次都會產(chǎn)生一個XINT和一個RINT,XINT表明XSR已經(jīng)從DXR中加載了,可重新加載DXR。RINT表明整個字已經(jīng)被接收并且傳輸?shù)紻RR中,

10、意味著可以讀DRR了。 5)傳輸終止:間斷幀同步脈沖,在內(nèi)部FSX情況下,不加載DXR,5.串行口的數(shù)據(jù)傳輸方式,第三章 TMS320C3x系列DSP處理器結(jié)構(gòu),3.7 外圍設(shè)備,3.7.2串行口,5.串行口的數(shù)據(jù)傳輸方式,第三章 TMS320C3x系列DSP處理器結(jié)構(gòu),3.7 外圍設(shè)備,3.7.2串行口,固定標準傳輸方式時序圖,固定連續(xù)方式: 條件:R/XVAREN=0(固定數(shù)據(jù)速率);R/XFSM=1(連續(xù)方式) 特點: 1)不使用幀同步脈沖的情況下完成串行口的連續(xù)傳輸。幀同步脈沖僅包含在第一個字的傳輸中,以后就不再需要幀同步脈沖 。 2)對于使用內(nèi)部的FSX:通過加載DXR啟動發(fā)送,從D

11、XR被加載到FSX出現(xiàn),大約有2.5個CLKX周期的延遲,因此DSR加載要提前3個CLK周期; 3)對于使用外部FSX:數(shù)據(jù)傳輸由FSX啟動,也需要2.5個CLK周期的延遲才能保證FSX作用DXR,因此DSR加載要提前3個CLK周期; 4)中斷發(fā)生:一旦DXR向XSR傳輸數(shù)據(jù),XINT發(fā)生; 當整個字被接收并且傳輸?shù)紻RR后,RINT產(chǎn)生;,5.串行口的數(shù)據(jù)傳輸方式,第三章 TMS320C3x系列DSP處理器結(jié)構(gòu),3.7 外圍設(shè)備,3.7.2串行口,5.串行口的數(shù)據(jù)傳輸方式,第三章 TMS320C3x系列DSP處理器結(jié)構(gòu),3.7 外圍設(shè)備,3.7.2串行口,固定連續(xù)傳輸方式時序圖,可變爆發(fā)方式

12、:幀同步持續(xù)整個數(shù)據(jù)傳輸期間。 條件:R/XVAREN=1(可變數(shù)據(jù)速率);R/XFSM=0(標準方式) 特點: 1)每一次傳輸只包含一個字。 2)對于使用內(nèi)部的FSX:通過加載DXR啟動發(fā)送,從DXR被加載到FSX出現(xiàn),大約有3.5個CLKX周期的延遲; 3)對于使用外部FSX:數(shù)據(jù)傳輸由FSX啟動,也需要3.5個CLK周期的延遲才能保證FSX作用DXR。 4)中斷發(fā)生:一旦DXR向XSR傳輸數(shù)據(jù),XINT發(fā)生; 當整個字被接收并且傳輸?shù)紻RR后,RINT產(chǎn)生;,5.串行口的數(shù)據(jù)傳輸方式,第三章 TMS320C3x系列DSP處理器結(jié)構(gòu),3.7 外圍設(shè)備,3.7.2串行口,可變爆發(fā)傳輸方式時序

13、圖,5.串行口的數(shù)據(jù)傳輸方式,第三章 TMS320C3x系列DSP處理器結(jié)構(gòu),3.7 外圍設(shè)備,3.7.2串行口,可變標準方式: 條件:R/XVAREN=1(可變數(shù)據(jù)速率);R/XFSM=0(標準方式) 特點: 1)提供適當?shù)膸叫盘柋WCDXR在每個周期被重新加載,實現(xiàn)數(shù)據(jù)的連續(xù)傳輸。 2)對于使用內(nèi)部的FSX:通過加載DXR啟動發(fā)送,從DXR被加載到FSX出現(xiàn),大約有3.5個CLKX周期的延遲,因此DSR加載要提前4個CLK周期; 3)對于使用外部FSX:數(shù)據(jù)傳輸由FSX啟動,也需要3.5個CLK周期的延遲才能保證FSX作用DXR,因此DSR加載要提前4個CLK周期; 4)中斷發(fā)生:一旦D

14、XR向XSR傳輸數(shù)據(jù),XINT發(fā)生; 當整個字被接收并且傳輸?shù)紻RR后,RINT產(chǎn)生; 5)傳輸終止:間斷幀同步脈沖,在內(nèi)部FSX情況下,不加載DXR,5.串行口的數(shù)據(jù)傳輸方式,第三章 TMS320C3x系列DSP處理器結(jié)構(gòu),3.7 外圍設(shè)備,3.7.2串行口,5.串行口的數(shù)據(jù)傳輸方式,第三章 TMS320C3x系列DSP處理器結(jié)構(gòu),3.7 外圍設(shè)備,3.7.2串行口,可變標準傳輸方式時序圖,可變連續(xù)方式: 條件:R/XVAREN=1(可變數(shù)據(jù)速率);R/XFSM=1(連續(xù)方式) 特點: 1)不使用幀同步脈沖的情況下完成串行口的連續(xù)傳輸。幀同步脈沖僅包含在第一個字的傳輸中,以后就不再需要幀同步

15、脈沖 。 2)對于使用內(nèi)部的FSX:通過加載DXR啟動發(fā)送,從DXR被加載到FSX出現(xiàn),大約有3.5個CLKX周期的延遲,因此DSR加載要提前4個CLK周期; 3)對于使用外部FSX:數(shù)據(jù)傳輸由FSX啟動,也需要3.5個CLK周期的延遲才能保證FSX作用DXR,因此DSR加載要提前4個CLK周期; 4)中斷發(fā)生:一旦DXR向XSR傳輸數(shù)據(jù),XINT發(fā)生; 當整個字被接收并且傳輸?shù)紻RR后,RINT產(chǎn)生;,5.串行口的數(shù)據(jù)傳輸方式,第三章 TMS320C3x系列DSP處理器結(jié)構(gòu),3.7 外圍設(shè)備,3.7.2串行口,可變連續(xù)傳輸方式時序圖,5.串行口的數(shù)據(jù)傳輸方式,第三章 TMS320C3x系列D

16、SP處理器結(jié)構(gòu),3.7 外圍設(shè)備,3.7.2串行口,串行口通過所指定的外圍總線上存儲器映射寄存器來控制的,對串行口的初始化和配置的步驟如下: (1)清除串行口全局控制寄存器的中的XRESET和RRESET位, (XRESET=RRESET=0)使串行口處于禁止狀態(tài),向該寄存器寫0即可完成。 (2)配置串行口FSX/DX/CLKX和FSR/DR/CLKR端口控制寄存器來。配置接收/發(fā)送控制寄存器、接收/發(fā)送定時器計數(shù)寄存器和接收/發(fā)送定時器周期寄存器。 (3)通過對串行口全局控制寄存器的XRESET位和RRESET位置位XRESET=1位和RRESET=1,來啟動串行口操作。,第三章 TMS32

17、0C3x系列DSP處理器結(jié)構(gòu),3.7 外圍設(shè)備,3.7.2串行口,6. 串行口的初始化,握手方式的實現(xiàn) 當使用握手方式時,發(fā)送信號(FSX、DX、CLKX)和接收信號(FSR、DR、CLKR)分別用來發(fā)送和接收數(shù)據(jù)。由于在握手方式下FSX被自動設(shè)置為輸出腳并且連續(xù)方式被禁止,所以數(shù)據(jù)傳輸寄存器的配置應注意以下幾點: 在全局控制寄存器中XFSM和RFSM位應置0而FSXOUT位應置1; 為了啟動握手通信,XRESET,RRESET和HS位應置1; 為了簡化設(shè)置,串行口所有引腳的極性被推薦為高電平有效; 推薦設(shè)置CLKX為輸出,CLKR為輸入,余下由用戶自行配置。,第三章 TMS320C3x系列D

18、SP處理器結(jié)構(gòu),3.7 外圍設(shè)備,3.7.2串行口,6. 串行口的初始化,例:采用握手方式通信,字長32位,傳輸方式為固定爆發(fā)方式,時鐘源采用內(nèi)部方式,時鐘方式,關(guān)定時器中斷,允許串行口中斷,時鐘頻率為fh1/8,按上述要求設(shè)置各寄存器的值。 全局控制寄存器設(shè)置值 = 發(fā)送端口控制寄存器設(shè)置值 = 接收端口控制寄存器設(shè)置值 = 串行口定時器控制器設(shè)置值 = 串行口定時器的計數(shù)器設(shè)置值= 串行口定時器的周期寄存器設(shè)置值=,0EBC0064h,0111h,0111h,0Fh,0H,2H,第三章 TMS320C3x系列DSP處理器結(jié)構(gòu),3.7 外圍設(shè)備,3.7.2串行口,6. 串行口的初始化,DMA

19、 是TMS320VC33的可編程外圍設(shè)備,能夠在存儲器之間傳輸大批量的數(shù)據(jù),但不影響CPU操作,使得DSP可以與低速外部存儲器以及外圍設(shè)備接口,而不降低CPU的運算能力,改進了系統(tǒng)性能,提高了數(shù)據(jù)處理能力。,主要內(nèi)容 DMA控制器的特性 DMA基本操作 DMA寄存器 DMA中斷及同步機制 DMA初始化和重構(gòu),第三章 TMS320C3x系列DSP處理器結(jié)構(gòu),3.7 外圍設(shè)備,3.7.3DMA,1.DMA 控制器特性,能夠?qū)μ幚砥鞯娜我獯鎯卧M行輸入/輸出操作(對片內(nèi)存儲器、片外存儲器和片內(nèi)串口輸入/輸出操作);,DMA操作的同時并不影響CPU的傳輸速度。DMA控制器具有專用的片內(nèi)地址和數(shù)據(jù)總線

20、,所有DMA通道的訪問都由DMA控制器決斷,并占用DMA的專用總線;,存儲器到存儲器的單通道DMA傳輸,DMA通道由4個寄存器控制;,源地址寄存器和目的地址寄存器自動增減;,由內(nèi)部(片內(nèi)定時器、串行口)中斷和外部中斷(中斷3-中斷0)來同步數(shù)據(jù)傳輸。,第三章 TMS320C3x系列DSP處理器結(jié)構(gòu),3.7 外圍設(shè)備,3.7.3DMA,2 DMA基本操作,一批數(shù)據(jù)需要從存儲器的一個區(qū)域傳傳輸?shù)搅硪粋€區(qū)域 主要解決以下問題:,(2) 數(shù)據(jù)到哪里去,(3) 數(shù)據(jù)量有多少,(4) 傳輸如何進行,(1) 數(shù)據(jù)從哪里來,源地址,目的地址,計數(shù)器,全局控制控制器,第三章 TMS320C3x系列DSP處理器結(jié)

21、構(gòu),3.7 外圍設(shè)備,3.7.3DMA,操作過程: (1) DMA的寄存器初始化 -進行DMA傳輸前的準備(源地址寄存器、目的地址寄存器、傳輸計數(shù)器、模式加載) (2) DMA的操作開始 -啟動DMA工作 (3) DMA的數(shù)據(jù)傳輸 -完成數(shù)據(jù)傳輸,2 DMA基本操作,第三章 TMS320C3x系列DSP處理器結(jié)構(gòu),3.7 外圍設(shè)備,3.7.3DMA,(1) DMA的寄存器初始化 將需要讀出的存儲器單元地址賦給DMA的源地址寄存器。 將需要寫入的存儲器單元地址賦給DMA的目的地址寄存器。 將需要傳輸?shù)淖珠L賦給傳輸計數(shù)器。 將DMA通道控制寄存器以適當?shù)哪J郊虞d,通過中斷的方式同步DMA控制寄存器

22、的讀寫。,(2) DMA的開始 設(shè)置DMA全局控制寄存器的START位,啟動DMA控制器開始工作。,2 DMA基本操作,第三章 TMS320C3x系列DSP處理器結(jié)構(gòu),3.7 外圍設(shè)備,3.7.3DMA,(3) DMA的字傳輸 讀操作,DMA通道從源地址寄存器中讀取一個字,把它寫入DMA通道的臨時寄存器中。讀操作后,源地址寄存器是否增加、減少或保持不變?nèi)Q于DMA全局控制寄存器的INCSRC或DECSRC位的設(shè)置。 寫操作,DMA將臨時寄存器中的值寫入到目的地址寄存器指向的目的地址。寫操作后,目的地址寄存器增加減少或保持不變?nèi)Q于DMA全局控制寄存器的INCDRC或DECDRC位的設(shè)置。,2

23、DMA基本操作,第三章 TMS320C3x系列DSP處理器結(jié)構(gòu),3.7 外圍設(shè)備,3.7.3DMA,每次數(shù)據(jù)寫入時,傳輸計數(shù)器的值減少。當傳輸計數(shù)器減至0時塊傳輸停止,最后一次傳輸?shù)膶懖僮魍瓿珊?,DMA通道設(shè)置DMA控制寄存器的傳輸計數(shù)器中斷(TCINT)標志。,數(shù)據(jù)塊傳輸完后,DMA控制器可以通過編程實現(xiàn)以下事件: 停止傳輸,直到重新編程(TC=1),設(shè)置傳輸計數(shù)器 繼續(xù)傳輸數(shù)據(jù)(TC=0) 產(chǎn)生一個中斷信號告知CPU塊傳輸已經(jīng)完成(TCINT=1),2 DMA基本操作,第三章 TMS320C3x系列DSP處理器結(jié)構(gòu),3.7 外圍設(shè)備,3.7.3DMA,3. DMA寄存器,DMA具有4個寄存

24、器。 全局控制寄存器:包含DMA通道的狀態(tài)和模式信息。 源地址寄存器:包含將要被讀出數(shù)據(jù)的存儲器地址。 目的地址寄存器:包含將要被寫入數(shù)據(jù)的存儲器地址。 傳輸計數(shù)寄存器:包含將要被移動的塊的大小。,第三章 TMS320C3x系列DSP處理器結(jié)構(gòu),3.7 外圍設(shè)備,3.7.3DMA,(1).全局控制寄存器,DMA通道控制寄存器 全局控制寄存器控制DMA的操作并反映DMA在每一個周期內(nèi)的變化狀態(tài)。通過對全局控制器的特殊位的操作能夠使得源地址和目的地址增加、減少或者同步。系統(tǒng)復位時,DMA控制寄存器的所有位都置0。,3. DMA寄存器,第三章 TMS320C3x系列DSP處理器結(jié)構(gòu),3.7 外圍設(shè)備

25、,3.7.3DMA,(1).全局控制寄存器,3. DMA寄存器,第三章 TMS320C3x系列DSP處理器結(jié)構(gòu),3.7 外圍設(shè)備,3.7.3DMA,START :,功能:DMA開始控制位,保證安全退出DMA操作,不至于丟失數(shù)據(jù)。,00 DMA完成當前正在進行的操作,禁止任何數(shù)據(jù)再次被讀入,取消所有懸掛的讀寫操作,進入復位,以便開始新的執(zhí)行任務,01 DMA保持,完成當前讀、寫后,不再進行任何操作,11 DMA從復位狀態(tài)或先前狀態(tài)開始啟動,如果DMA的傳輸已經(jīng)開始,則完成當前操作(讀或?qū)懀?如果傳輸還沒有進行,則停止當前操作,Bit 0 1,(1).全局控制寄存器,3. DMA寄存器,第三章

26、TMS320C3x系列DSP處理器結(jié)構(gòu),3.7 外圍設(shè)備,3.7.3DMA,STAT :,功能:DMA狀態(tài)位,顯示DMA在每一個機器周期內(nèi)的變化狀態(tài),00 復位狀態(tài)值,DMA在多次傳輸過程中處于保持。DMA is being held between DMA transfer (between a write and a read),01 DMA在當前執(zhí)行過程中(讀、寫)保持, DMA is being held in the middle of a DMA transfer (between a read and a write),11 DMA處于工作忙碌中(讀、寫數(shù)據(jù),等待源中斷,目的中斷

27、,同步操作),保留,Bit 2 3,(1).全局控制寄存器,3. DMA寄存器,第三章 TMS320C3x系列DSP處理器結(jié)構(gòu),3.7 外圍設(shè)備,3.7.3DMA,(5)DMA 同步控制方式:Bit 9 Bit 8,SYNC = 00 同步禁止,DMA不響應任何同步操作; = 01 源同步,中斷允許執(zhí)行讀操作; = 01 目的同步,中斷允許執(zhí)行寫操作; =11 源和目的同步,中斷允許執(zhí)行讀、寫操作。,(1).全局控制寄存器,3. DMA寄存器,第三章 TMS320C3x系列DSP處理器結(jié)構(gòu),3.7 外圍設(shè)備,3.7.3DMA,1) 24位寄存器 2)通過全局控制寄存器中的DECSRC,INCS

28、RC實現(xiàn)地址修改以選通相應固定地址的通信信道 3)只能對該寄存器進行讀操作,(2).源地址寄存器,3. DMA寄存器,第三章 TMS320C3x系列DSP處理器結(jié)構(gòu),3.7 外圍設(shè)備,3.7.3DMA,1) 24位寄存器,反映傳輸字數(shù) 2)系統(tǒng)復位時,傳輸計數(shù)寄存器置0 3)完成一次傳輸,計數(shù)器減1,計數(shù)值為0時,若TCINT=1,觸發(fā)DMA中斷 4)當計數(shù)寄存器值為0時,DMA通道沒有被掛起,計數(shù)寄存器將繼續(xù)減少到負值;通道的傳輸最大字數(shù)1000000h(167.77216萬次),CPU和DMA控制器的訪問操作并行進行。 當CPU和DMA控制器請求同一資源時,CPU具有更高優(yōu)先級,即DMA的

29、操作必須等到CPU釋放資源后執(zhí)行。,(3).傳輸計數(shù)寄存器,3. DMA寄存器,第三章 TMS320C3x系列DSP處理器結(jié)構(gòu),3.7 外圍設(shè)備,3.7.3DMA,4 DMA中斷及同步機制中斷,(1)中斷原則:DMA通道傳輸完畢后通過DMA的全局控制寄存器的TCINT位發(fā)送一個中斷給CPU,CPU中斷使能寄存器的EDINT位必須置位,從而允許CPU被DMA中斷。 (2)可接收中斷:外部中斷、定時器、串行口的中斷。 (3)DMA通過同步來實現(xiàn)對中斷的接收。CPU中斷控制寄存器可以檢測到所有的DMA中斷,并對中斷標志寄存器進行設(shè)置。,第三章 TMS320C3x系列DSP處理器結(jié)構(gòu),3.7 外圍設(shè)備

30、,3.7.3DMA,(1)同步禁止,當SYNC=00時,不產(chǎn)生同步,只要沒有沖突,DMA就可隨時執(zhí)行讀、寫操作,所有的中斷被忽略,但DMA中的中斷使能位不會發(fā)生改變。,4 DMA中斷及同步機制同步,第三章 TMS320C3x系列DSP處理器結(jié)構(gòu),3.7 外圍設(shè)備,3.7.3DMA,(2)源同步,當SYNC=01時,DMA 將與源同步。DMA接收一次中斷執(zhí)行一次讀操作。之后從總體上禁止所有的DMA中斷。,4 DMA中斷及同步機制同步,第三章 TMS320C3x系列DSP處理器結(jié)構(gòu),3.7 外圍設(shè)備,3.7.3DMA,(3)目的同步,當SYNC=10時,DMA與目的同步。開始所有的中斷都不考慮直到

31、讀操作完成。直到DMA接收到一次中斷才執(zhí)行一次寫操作,但讀操作無須等待中斷。,4 DMA中斷及同步機制同步,第三章 TMS320C3x系列DSP處理器結(jié)構(gòu),3.7 外圍設(shè)備,3.7.3DMA,(4)源和目的同步,當SYNC=11時,DMA將與源和目的同步,接收到中斷時執(zhí)行讀操作,下一次中斷再執(zhí)行寫操作。,4 DMA中斷及同步機制同步,第三章 TMS320C3x系列DSP處理器結(jié)構(gòu),3.7 外圍設(shè)備,3.7.3DMA, 清除DMA的全局控制寄存器START位,使DMA處于保持狀態(tài)。 配置DMA全局控制寄存器(START=00)以及DMA源、目的寄存器和傳輸計數(shù)器; 啟動DMA。,注意: 啟動DM

32、A之前應重新配置寄存器; DMA和CPU優(yōu)先級關(guān)系,合理分配存儲器; 當應用中斷同步時,必須確保每一個中斷被接收,否則DMA將無法完成一個數(shù)據(jù)塊的傳輸; 當執(zhí)行串行口寫/讀數(shù)據(jù)時,需要讀、寫同步,以保證數(shù)據(jù)的有效性; DMA完成一組數(shù)據(jù)的傳輸后,設(shè)置DMA控制寄存器的TCINT位,IF寄存器的EDINT位必須置為1。,5. DMA初始化和重構(gòu),第三章 TMS320C3x系列DSP處理器結(jié)構(gòu),3.7 外圍設(shè)備,3.7.3DMA,例3.5 DMA傳輸完128個數(shù)據(jù)后會向CPU發(fā)送一個中斷(假定了CPU中斷向量已初始化過了,在程序中為了處理中斷,只對ST和IE進行了初始化)。,5. DMA初始化和重

33、構(gòu),第三章 TMS320C3x系列DSP處理器結(jié)構(gòu),3.7 外圍設(shè)備,3.7.3DMA,.global START .data DMA.word 808000h; DMA全局控制寄存器地址 RESET .word 0C40h; DMA全局控制寄存器復位初始化值 CONTROL.word 0C43h; DMA全局控制寄存器初始化 SOURCE.word ZERO ; 數(shù)據(jù)源地址DATA SOURCE ADDRESS DESTIN . word ARRAY ; 數(shù)據(jù)的目的地址 COUNT .word 128 ; 傳輸字的數(shù)目 ZERO .float 0.0 ; 數(shù)組初始化 0.0= 0 x8000

34、0000 .bss _ARRAY,128 ;數(shù)組在.bss塊中的位置 .text,START: LDP DMA ;裝載數(shù)據(jù)頁指針 LDI DMA ,AR0 ;指向DMA全局控制寄存器 LDI RESET,R0 ;復位DMA STI R0,*AR0 LDI SOURCE,R0 ;初始化DMA源地址寄存器 STI R0,*+AR0(4) LDI DESTIN,R0 ;初始化DMA目的地址寄存器 STI R0, *+AR0(6) LDI COUNT,R0 ;初始化DMA傳輸計數(shù)器寄存器 STI R0,*+AR0(8) OR 400h,IE ;使能從DMA到CPU的中斷 R 2000h ,ST ;使能

35、CPU全局中斷 LDI CONTROL,R0 ;初始化DMA全局控制寄存器 STI R0,*AR0 ;啟動DMA傳輸 BU $ .END,5. DMA初始化和重構(gòu),第三章 TMS320C3x系列DSP處理器結(jié)構(gòu),3.7 外圍設(shè)備,3.7.3DMA,TMS320系列DSP原理、結(jié)構(gòu)及應用,181,第四章 TMS320C3X浮點DSP軟件設(shè)計,4.1 TMS320C3X尋址類型 4.2 匯編語言程序格式 4.3 匯編語言指令及說明 4.4 命令文件 4.5 公共目標文件及進制轉(zhuǎn)換,4.1 TMS320C3X尋址類型,立即尋址 直接尋址 寄存器尋址 間接尋址 PC相對尋址 循環(huán)尋址 位翻轉(zhuǎn)尋址,立即

36、數(shù)尋址,1 特征:操作數(shù)直接出現(xiàn)在指令中,2 分類: 短立即數(shù)尋址 立即數(shù)的有效長度16位,常見指令有:ADDI、CMPI、SUBI、MPYI。 長立即數(shù)尋址 立即數(shù)的有效長度24位。數(shù)據(jù)形式主要是無符號整數(shù),常見指令有BR、BRD。,直接尋址,1 特征:操作數(shù)保存在內(nèi)部存儲器中,存儲器的單元地址由計算機指令直接給出。,2 構(gòu)成:數(shù)據(jù)地址=數(shù)據(jù)頁指針寄存器(DP)的低8位+指令字的低16位,expr表示地址的數(shù)值或符號,(1)ADDI 0BCDEh , R7 指令執(zhí)行前 指令執(zhí)行后 DP8Ah DP8Ah R70h R7123h 8ABCDEh中數(shù)據(jù)123h 8ABCDEh中數(shù)據(jù)123h,直接

37、尋址例子,(2)SIZE .word 123456h .text LDI SIZE , R0 指令執(zhí)行前 指令執(zhí)行后 SIZE指向.word數(shù)據(jù) SIZE指向.word數(shù)據(jù)表 表中第一個數(shù)據(jù) 中第一個數(shù)據(jù) R00h R0123456h,寄存器尋址,1 特征:通過對寄存器的操作實現(xiàn)對數(shù)據(jù)的存取處理,3 應用,PUSH R1; 指令執(zhí)行前 指令執(zhí)行后 R1123h R1123h SP809800h SP809801h 809801h中數(shù)據(jù)456h 809801h數(shù)據(jù)123h,優(yōu)點:尋址速度非??臁?間接尋址,特征:將操作數(shù)存儲單元的地址放入CPU寄存器 單元地址由輔助寄存器、偏移量和索引寄存器確定

38、,2 句法、操作及其功能 :, 帶有偏移量disp的間接尋址指令 通過索引寄存器IRm(m=0或1)調(diào)整偏移量的間接尋址指令 特殊的間接尋址指令,帶有偏移量的間接尋址,所取操作數(shù)的地址是由輔助寄存器ARn的內(nèi)容與偏移量disp確定的,其中偏移量可以是默認值1,也可以是包含在指令字中的8位無符號整數(shù),能夠表示的數(shù)值范圍為0255,應該注意的是在三操作數(shù)的指令中偏移量disp只能取0,1。,帶有偏移量disp的間接尋址指令,在帶有偏移量的間接尋址中,對于輔助寄存器的調(diào)整往往受到偏移量取值范圍的限制,為了擴大的基址的調(diào)整幅度,引入索引寄存器。所取操作數(shù)的地址是由輔助寄存器ARn的內(nèi)容與索引寄存器IR

39、m(IR0或IR1)確定,通過索引寄存器IRm調(diào)整偏移量的間接尋址,通過索引寄存器IRm(m=0或1)調(diào)整偏移量的間接尋址指令,間接尋址的特殊情況,符號說明: addr 存儲器地址 circ() 循環(huán)尋址地址 ARn 輔助寄存器AR0-AR7 + 增加并修正 disp 偏移量 - 減小并修正 IRm 索引寄存器IR0或IR1 執(zhí)行循環(huán)尋址 B 執(zhí)行位反轉(zhuǎn)尋址,PC相對尋址,PC相對尋址主要用于控制程序跳轉(zhuǎn)。一般情況下,指令的地址由程序計數(shù)器PC決定,而在程序執(zhí)行跳轉(zhuǎn)指令,下一條指令的地址由指令直接給出。, 16位的PC相對尋址主要用于條件跳轉(zhuǎn)指令編碼 Bcond、BcondD、CALLcond

40、 24位的PC相對尋址涉及到的控制指令主要有: BR、BRD、CALL、RPTB和RPTBD,,循環(huán)尋址,構(gòu)建一個滑動窗,窗內(nèi)包含要處理的最新數(shù)據(jù),每處理完當前的數(shù)據(jù)緩沖寄存器中的數(shù)據(jù),指針會按一定步長移動,使新的數(shù)據(jù)進來覆蓋舊的數(shù)據(jù),然后對緩沖器中的數(shù)據(jù)再進行處理,如此往復,當指針到達緩沖區(qū)的末端時,重新設(shè)置指針指向緩沖器首地址。,循環(huán)緩沖器的邏輯和物理表示,寫入6個值后的循環(huán)緩沖器的邏輯及物理表示,循環(huán)尋址的基本語法: *ARn+(step)% *ARn-(step)%, 輔助寄存器ARn:存放數(shù)據(jù)基址,通過在ARn上加減步長step實現(xiàn)數(shù)據(jù)地址的改變,循環(huán)隊列尋址開始時,ARn必須指向此

41、循環(huán)隊列的某一個確定的單元。 步長step:輔助寄存器改變的值,步長一般為無符號整型,且不大于塊的長度; 緩沖區(qū)間:由塊寄存器BK中存儲的循環(huán)緩沖器長度R來確定, 緩沖空間不大于64K(16 bits); 緩沖器的起始地址:滿足公式:2kR, K為循環(huán)緩沖器起始地址最低有效位二進制值中“0”的個數(shù), R為循環(huán)緩沖器長度。,循環(huán)尋址算法:,位反轉(zhuǎn)尋址,位反轉(zhuǎn)尋址用于實現(xiàn)快速傅里葉變換(FFT)。 位反轉(zhuǎn)尋址基地址必須遵循以下標準: (1)緩沖器的大小必須小于等于64KB; (2)基地址需滿足以下公式: 2kR,其中K為緩沖器起始地址的最低有效位二進制值中“0”的個數(shù),R為緩沖器的長度。,4.2

42、匯編語言程序格式,標號: 指令助記符 操作數(shù) ;注釋,1標號:標號定義一行機器指令的目標代碼,代表了該代碼的首字節(jié)的存放地址,后面緊跟冒號“:”。標號應滿足下列條件: 首字符必須是字母或下劃線與字母的組合; 首字符必須在文件的第一列,頂格放置; 最多包含32個字符;,匯編語言程序格式:,2指令助記符:表明語句的操作意圖。 指令助記符主要包括:偽指令和匯編指令。 偽指令通過提供程序數(shù)據(jù),指導匯編如何進行,對匯編過程進行控制。 偽指令以符號“.”開始。 匯編指令。TMS320C3X系列DSP指令系統(tǒng)按功能分為六大類,共115條指令。,3操作數(shù),表示指令助記符的操作對象。 操作數(shù)由立即數(shù)、寄存器、符

43、號組合而成, 操作數(shù)之間必須用逗號隔開。 匯編代碼中操作數(shù)分為源操作數(shù)、目的操作數(shù)。 4注釋:注釋對代碼指令進行說明,提高了程序的可讀性,注釋以“;”分號開始,它可占一行或多行,一般放在一條語句的后面。 當以“*”開始時,必須在第一列。,4.3 匯編語言指令及說明,TMS320C3X系列DSP指令系統(tǒng)共有115條,按指令所實現(xiàn)的功能,可將其分為六類指令級: 數(shù)據(jù)傳輸指令 二操作數(shù)指令 三操作數(shù)指令 流程控制指令 互鎖指令 并行指令,數(shù)據(jù)傳輸指令 TMS320C3x的數(shù)據(jù)傳輸指令有13條,可以實現(xiàn)寄存器之間、存儲器之間以及寄存器與存儲器之間的數(shù)據(jù)傳輸和存儲。 指令中的源操作數(shù)可通過寄存器尋址、直

44、接尋址、間接尋址(disp=0255,IR0,IR1)和立即尋址這四種通用的尋址方式給出。,4.3 匯編語言指令及說明,二操作數(shù)指令 二操作數(shù)指令共35條,指令中包括源操作數(shù)和目的操作數(shù)。源操作數(shù)可以通過寄存器尋址、直接尋址、間接尋址和立即尋址等尋址方式給出,而目的操作數(shù)總是在寄存器內(nèi)。這些指令可完成整數(shù)和浮點數(shù)高精度運算和處理,有些指令還可完成邏輯運算和處理。,4.3 匯編語言指令及說明,三操作數(shù)指令 三操作數(shù)指令共有17條,內(nèi)容涉及加法、減法、乘法、邏輯運算、移位以及比較指令。 三操作數(shù)指令有兩個源操作數(shù): 源操作數(shù)的尋址方式:寄存器尋址、間接尋址, 目的操作數(shù)的尋址方式:寄存器尋址 對于

45、整數(shù)運算來說,寄存器尋址可以利用任意CPU寄存器,而對浮點數(shù)來說,只能使用R0R7。若浮點數(shù)采用間接尋址的方式,立即數(shù)給出的偏移量只能用0或1,超出范圍的值可利用索引寄存器(IR0、IR1)給出。,4.3 匯編語言指令及說明,流程控制指令 流程控制指令共17條,用以改變程序運行的路徑,實現(xiàn)程序的跳轉(zhuǎn)、子程序調(diào)用、陷阱、塊重復以及中斷等操作。,4.3 匯編語言指令及說明,1跳轉(zhuǎn)指令: 標準跳轉(zhuǎn)指令、條件跳轉(zhuǎn)指令、延遲跳轉(zhuǎn)指令 2子程序調(diào)用指令 3. 重復操作指令:RPTS、RPTB。 RPTB允許一個程序塊被重復執(zhí)行規(guī)定的次數(shù);RPTS允許對單條指令重復執(zhí)行規(guī)定的次數(shù)。,互鎖指令 互鎖操作指令共

46、5條,支持多處理器之間的通信,可有效保證協(xié)同器件的同步,實現(xiàn)多個DSP之間的高速通信和高速信號處理。,4.3 匯編語言指令及說明,并行指令 并行操作指令共有27條,在一個指令周期內(nèi)可以同時完成兩條指令的處理,具有高度的并行操作能力。 應該注意: 并不是任何兩條指令都可以實現(xiàn)并行操作,可以并行處理的指令只有5種類型。 在并行尋址中,操作數(shù)的尋址方式只有間接尋址和寄存器尋址兩類,其中間接尋址的偏移量取值只限0或1,超出范圍用索引寄存器(IR0、IR1)表示,而寄存器的操作僅對R0-R7有效。 指令格式:第一條指令以獨立的源語句輸入,第二條指令前必須加上兩條垂直線“|”。,4.3 匯編語言指令及說明

47、,1 定義:通過建立相應的鏈接文件對存儲器資源的分配進行設(shè)置,這種鏈接器配置文件通常被稱為命令(command)文件,簡稱CMD文件。 2 組成:命令文件一般包括: 輸入/輸出定義、MEMORY命令、SECTION命令。,4.4 命令文件, 輸入/輸出定義 輸入/輸出的定義一般通過ccs的“Build Option”菜單設(shè)置。常見的文件形式如下: .obj 鏈接的目標文件.lib 鏈接的庫文件.map 生成的交叉索引文件.out 生成的可執(zhí)行代碼,4.4 命令文件, MEMORY命令 MEMORY命令用來描述系統(tǒng)實際的硬件資源,配置目標存儲,通過建立目標存儲器的模型定義目標系統(tǒng)的各種類型的存儲

48、器及容量。MEMORY指令必須大寫,MEMORY命令的相關(guān)參數(shù)說明如下: PAGEn:劃分存儲空間進行,每一個PAGE對應一個完全獨立的地址空間。 Name,標記存儲區(qū)間的名字,不超過8個字符,不同的PAGE上可以出現(xiàn)相同的Name,同一個PAGE內(nèi)不能重名。 origin: 規(guī)定了對對應存儲區(qū)的起始地址。 length: 規(guī)定了對應存儲區(qū)的長度。,4.4 命令文件, SECTION命令 說明如何將輸入段組合成輸出段;在可執(zhí)行程序中定義輸出段;指定輸出段在存儲器中的存放位置;允許重新命名輸出段。 SECTIONS指令也必須大寫,其后的大括號里是輸出段的說明性語句,每一個輸出段的說明都是從段名開

49、始,段名之后是如何對輸入段進行組織和給段分配存儲器的參數(shù)說明。SECTION命令的相關(guān)參數(shù)說明如下: Load,將輸出段加載到存儲器中的位置。 Run,定義輸出段在存儲器的運行位置。 段名后面的“ ” 中的內(nèi)容指明了連接器輸出段的段組成。如果“ ”中沒有內(nèi)容,表示將有的目標文件的相應段,按順序依次連接到指定存儲空間。,4.4 命令文件,注意: 在未給鏈接器提供命令文件的情況下,鏈接器將采用缺省的算法。缺省分配算法如下: (1)假定存儲器的起始地址為0; (2)假定全部的存儲器空間都用來分配目標代碼; (3)將.text分配到起始地址為0 的存儲器中; (4)將.data分配到緊接著.text的

50、存儲器中; (5)將.bss分配到緊接著.data的存儲器中; (6)將自定義的段分配到緊接著.bss的存儲器中。若自定義段多于一個,則按自定義段在文件中的先后順序存放。,4.5 公共目標文件及進制轉(zhuǎn)換,TI公司的匯編器和鏈接器創(chuàng)建的目標文件的格式稱為公共目標文件格式,簡稱COFF(Common Object File Format)。這種格式易于進行模塊化編程,增強程序的可讀性和可移植性,為代碼段和存儲器的管理提供了有力和靈活的方法,也為高級語言和匯編語言程序的編寫提供了極大的便利。在程序下載過程中,由于EPROM不接受COFF文件格式,因此必須通過相應的格式轉(zhuǎn)化,將COFF目標文件轉(zhuǎn)換為十

51、六進制ASCII格式,以實現(xiàn)EPROM的程序移植。,4.5 公共目標文件及進制轉(zhuǎn)換,軟件設(shè)計過程,4.5 公共目標文件及進制轉(zhuǎn)換,公共目標文件格式(COFF)目標文件包括以下6種段形式: (1).text:用以定義可執(zhí)行代碼段。 (2).data:用以定義初始化數(shù)據(jù)段。 (3).bss:為未初始化的數(shù)據(jù)保留空間,未初始化的數(shù)據(jù)指運行過程中的變量,在定義時無具體內(nèi)容,僅僅是為其預留一定的空間。 (4).sect:用以定義已初始化且有名稱的段,該段中可以含有代碼或數(shù)據(jù),用于創(chuàng)建自定義段。 (5).usect:用以定義未初始化且有名稱的段保留空間,與.bss類同,但被保留的空間可以是不連續(xù)的。 (6

52、).asect:用于建立具有絕對地址的有名稱的初始化段。,4.5 公共目標文件及進制轉(zhuǎn)換,匯編器對段的處理主要是確定匯編語言程序各部分屬于哪個特定的段。 1未初始化段命令 (1) .bss 命令的用途是為變量保留空間,格式是: .bss 符號,字數(shù) 上述命令格式中的“符號”和“字數(shù)”都是不可省略的參數(shù)。符號由程序員自己定義,指向被保留空間中的第一個字,字數(shù)則以數(shù)字的形式指定需要保留幾個字。 例: .bss array,100 ;該命令為變量array分配了100個字。 (2) .usect命令的格式如下: 符號 .usect“段名”,字數(shù) “符號”、“段名”和“字數(shù)”都是不可省略的參數(shù),其中“

53、段名”要用雙引號括起來,“字數(shù)”則用數(shù)字表示需要保留的字的數(shù)目?!胺枴焙汀岸蚊倍际浅绦騿T自己定義的,但“段名”的長度不能超過8個英文字符。,2已初始化段命令 (1) .text命令。此命令沒有任何參數(shù),在匯編語言編制的源程序中單獨占一行。“text”本身就是段名,該段中含有可執(zhí)行代碼,它告訴匯編器將.text下面的源代碼匯編到text段。匯編器可以把所有段名相同但分布在程序多處的數(shù)據(jù)或程序匯編到一個段中,匯編器總是假定.text是缺省的段 (2).data命令。該命令沒有任何參數(shù),在程序中單獨占一行,“data”本身就是段名。該命令告知匯編器將.data下面的源代碼匯編到data段,直到遇

54、到其它已初始化的段時才停止當前段的匯編。data段一般含有.word、.byte、.float、等對常數(shù)進行初始化的命令。 (3).sect、.asect為用戶自定義的段命令,當匯編器遇到.text或.data或.sect命令時,它將停止對當前段的匯編,然后將緊接著的程序代碼或數(shù)據(jù)匯編到指定的段中,直到在遇到另一條.text、.data、asect或sect命令為止。,3自定義的段命令 程序員自己建立的段。有三條命令用來建立自定義的段: .usec .sect .asect (1).asect命令與.sect命令類似,但在段名后需要用數(shù)值給出該段在存儲器中的絕對地址。由于這種作法不利于程序的可

55、移植性,所以很少使用.asect命令。其格式為: .asect “段名” ,地址,(2).sect命令的常用格式是: . sect “段名” 該命令中的段名是程序員自己定義的名稱,用雙引號括起來,字符長度不能超過8個字符。匯編器遇到該命令時,開始將其后的源代碼匯編到所定義的段名中。該段中或者含有可執(zhí)行的程序,類似于text段,或者含有數(shù)據(jù),類似于data段。除了有一個專門的名稱外,該命令的用法也與.text和.data相類似,利用這個專門定義的名稱,程序員可以將一部分程序或數(shù)據(jù)放在不同于.text和.data的段中,即可以利用該命令建立自己定義的段。,TMS320系列DSP原理、結(jié)構(gòu)及應用,2

56、20,第五章 TMS320C3X浮點DSP接口,5.1 程序引導實現(xiàn) 5.2 外圍接口電路,5.1 程序引導,程序引導: 系統(tǒng)上電時,DSP通過Boot loader(引導裝載)將存儲在外部非易失性存儲器中的代碼移植到內(nèi)部高速存儲器單元(片內(nèi)RAM)中,然后從指定的地址開始運行程序空間中的指令。 程序引導的優(yōu)點: 程序代碼可以存儲在片外相對慢速、非易失性器件中,而裝載運行于高速器件; 提供多種裝載方式,使得DSP可以靈活應用到不同系統(tǒng); 省去對DSP片內(nèi)ROM進行掩膜編程操作,節(jié)省成本。,由于COFF目標文件格式生成的文件不能直接應用于硬件仿真調(diào)試和外部存儲器的程序裝載,因此必須將COFF目標

57、文件轉(zhuǎn)換為十六進制ASCII格式才能將其寫入EPROM中。 COFF文件經(jīng)十六進制轉(zhuǎn)后,可以生成以下輸出文件格式: (1)十六進制格式; (2)擴展十六進制Tektronix格式; (3)奔騰十六進制MCS-86格式; (4)Motorola-S格式; (5)TI格式。,引導方式選擇,TMS320VC33支持兩類引導:存儲器引導和串行口引導,程序引導文件的生成過程,十六進制轉(zhuǎn)換命令的格式: hex30 選項 文件名 hex30:十六進制轉(zhuǎn)換命令。 選項:控制十六進制轉(zhuǎn)換過程的附加信息,選項的使用應注意以下幾點: (1)所有的選項都以“-”開始,且不區(qū)分大小寫; (2)多個參數(shù)的選項之間至少一個

58、空格分開; (3)選項必須嚴格拼寫,不允許縮寫; (4)選項不受書寫次序的影響。但如果使用選項“-q”,它必須寫在其它選項之前。,程序引導文件的生成過程, 文件名:命令文件名或者鏈接器生成的可執(zhí)行目標文件名 輸入可執(zhí)行目標文件,必須在命令行中輸入可選項,否則將對所有選項取缺省值。,程序引導文件的生成過程,十六進制的轉(zhuǎn)換流程,程序引導文件的生成過程,命令文件的建立 進行十六進制轉(zhuǎn)換可以通過采用單條命令再加各種選項的方法實現(xiàn),也可以將命令和有關(guān)的選項匯總到一個文件(稱為命令文件)中,然后再利用該文件完成十六進制轉(zhuǎn)換。命令文件是ASCII格式的文件,由以下四項內(nèi)容中的一項或幾項構(gòu)成: (1)選項和文件名。 必須符合十六進制轉(zhuǎn)換命令所要求的格式。 (2)ROMS命令。定義了存儲器的結(jié)構(gòu)、起始地址和長度。 (3)SECTION命令,指定COFF目標文件中段的分配方法。

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論