DSP原理及應(yīng)用

-
【作 者】李利 等編著
【I S B N 】978-7-5084-2445-3
【責(zé)任編輯】吳萍
【適用讀者群】本科
【出版時間】2007-09-01
【開 本】16開本
【裝幀信息】平裝(光膜)
【版 次】第1版
【頁 數(shù)】236
【千字?jǐn)?shù)】
【印 張】
【定 價】¥22
【叢 書】21世紀(jì)高等院校計算機(jī)系列教材
【備注信息】
簡介
本書特色
前言
章節(jié)列表
精彩閱讀
下載資源
相關(guān)圖書
本書以TMS320C54x/54xx系列DSP為例,重點介紹了TMS320C54x/54xx系列DSP的硬件結(jié)構(gòu)、指令系統(tǒng)以及DSP應(yīng)用程序的設(shè)計與開發(fā)。書中精選了大量實例,實例中給出了工作原理、完整的源程序及上機(jī)匯編、鏈接、調(diào)試過程,初學(xué)者可以按照書中給出的步驟動手操作,在實戰(zhàn)中掌握DSP應(yīng)用技術(shù)。本書最后介紹了TMS320C54x/54xx片內(nèi)外設(shè)及其應(yīng)用,重點討論了定時器、多通道緩沖串口的工作原理,并給出了具體的實用實例。
本書既可作為高效電子類專業(yè)本科生和研究生學(xué)習(xí)DSP的教材和參考書,也可供從事DSP芯片開發(fā)與應(yīng)用的廣大工程技術(shù)人員參考。
數(shù)字信號處理器(Digital Signal Processor,DSP)以高速數(shù)字信號處理為目標(biāo)進(jìn)行芯片設(shè)計,采用改進(jìn)的哈佛結(jié)構(gòu)、內(nèi)部具有硬件乘法器、應(yīng)用流水線技術(shù)、具有良好的并行性和專門用于數(shù)字信號處理的指令等特點。DSP芯片以其強(qiáng)大的運算能力在通信、電子、圖像處理等各個領(lǐng)域得到了廣泛的應(yīng)用。
通用DSP芯片代表性的產(chǎn)品主要有TI公司的TMS320系列、AD公司ADSP21xx系列、Motorola公司的DSP56xx系列和DSP96xx系列等單片器件,其中占市場份額最大的是美國德州儀器(TI)公司。TI的定點16位TMS320C54x/54xx系列DSP芯片以其優(yōu)良的性能價格比得到了廣泛使用。本書對TMS320C54x/54xx DSP的原理及應(yīng)用進(jìn)行了介紹。
全書共8章,可以分為3個部分。
第一部分包括第1章~第4章,介紹TMS320C54x/54xx系列DSP的硬件結(jié)構(gòu)、工作原理、數(shù)據(jù)尋址方式以及指令系統(tǒng)。使讀者初步了解芯片的硬件組成、結(jié)構(gòu)特點及其指令系統(tǒng)。
第二部分包括第5章~第7章,介紹DSP應(yīng)用程序的設(shè)計與開發(fā)。第5章詳細(xì)介紹了基于匯編語言和C/C++高級語言程序設(shè)計的方法,包括匯編器和鏈接器對段的處理、常用匯編偽指令、鏈接器命令文件的編寫與使用、匯編語言程序編寫方法、TMS320C54x C語言編程以及用C語言和匯編語言混合編程。第6章介紹了美國德州儀器公司推出的CCS(Code Composer Studio)集成開發(fā)環(huán)境,主要內(nèi)容包括CCS系統(tǒng)安裝與設(shè)置、CCS菜單和工具欄、CCS中的編譯器和鏈接器有關(guān)選項設(shè)置,最后通過具體實例介紹了CCS的基本操作與使用方法。在第5章介紹匯編語言程序設(shè)計和第6章CCS集成開發(fā)環(huán)境的基礎(chǔ)上,第7章首先介紹了與程序流程控制有關(guān)的內(nèi)容,然后用具體實例介紹了匯編語言程序設(shè)計的方法,以及在CCS環(huán)境下使用Simulator(軟件模擬器)進(jìn)行程序調(diào)試的基本方法,最后介紹了數(shù)字信號處理中廣泛使用的FIR濾波器、IIR濾波器及FFT算法在定點C54x上的實現(xiàn)方法和實例程序。只要使用者安裝了CCS5000系統(tǒng)軟件,在沒有DSP目標(biāo)板的情況下,可以使用Simulator模擬DSP程序的運行。第7章以實例的方式循序漸進(jìn)地幫助讀者進(jìn)一步熟悉DSP的指令系統(tǒng)、CCS環(huán)境下匯編語言應(yīng)用程序的設(shè)計和調(diào)試方法。實例中給出了工作原理、完整的源程序及上機(jī)匯編、鏈接、調(diào)試過程,初學(xué)者可以按照書中給出的步驟動手操作,進(jìn)行實戰(zhàn)練習(xí)。
第三部分包括第8章,介紹了TMS320C54x/54xx系列DSP片內(nèi)外設(shè)及其應(yīng)用,內(nèi)容包括定時器、時鐘發(fā)生器、多通道緩沖串口(McBSP)、主機(jī)并口(HPI)工作原理以及外部總線操作,重點討論了定時器、多通道緩沖串口(McBSP)工作原理,并給出了具體應(yīng)用實例。
目前,高校開設(shè)這門課程一般安排40學(xué)時左右,僅僅靠課堂教學(xué),學(xué)生是難以掌握的。不少初學(xué)者感到學(xué)習(xí)困難,自己看書看不懂或看了書仍不知如何去做題。本書是一本學(xué)習(xí)DSP的入門教材,針對初學(xué)者的學(xué)習(xí)規(guī)律,將問題分散,循序漸進(jìn)。同時,書中精選了大量實例,使讀者在實戰(zhàn)中掌握DSP的應(yīng)用技術(shù)。在學(xué)習(xí)過程中,開始時不必死記每條指令,只需大概了解有哪幾類指令即可,通過后面章節(jié)的學(xué)習(xí)逐步了解、掌握指令的使用。DSP軟件開發(fā)離不開開發(fā)工具,熟悉CCS集成開發(fā)環(huán)境是進(jìn)行DSP軟件開發(fā)的基礎(chǔ),在學(xué)習(xí)CCS中編譯器、鏈接器的選項設(shè)置時,開始不必追究每一個選項,首先掌握常用選項設(shè)置,然后再逐步了解、掌握其他選項。深入理解掌握CCS開發(fā)環(huán)境,開發(fā)出高效的DSP軟件需要經(jīng)過一定時間的學(xué)習(xí)和實踐。
作者在編寫本書的過程中得到了南京解放軍理工大學(xué)陸輝教授的大力支持和幫助,此外,劉乾、李少宇、王彬、曹珊珊、曹艷利、楊金娜、張燁、李艷麗、吳愛國、陳斌、陳譜等為本書繪制了部分插圖并完成了部分文字錄入工作,武漢凌特公司和南京恒締公司提供了部分實驗素材,在此一并表示衷心感謝。
本書中的源代碼可以從中國水利水電出版社網(wǎng)站下載,網(wǎng)址為:http://www.waterpub.com.cn/ 。
由于作者水平有限,書中不妥和疏漏之處在所難免,懇請廣大讀者批評指正。
作者E-mail:Lili@nciae.edu.cn
作者
2004年9月
前言
第1章 緒論 1
1.1 數(shù)字信號處理概述 1
1.1.1 數(shù)字信號處理系統(tǒng)的構(gòu)成 1
1.1.2 數(shù)字信號處理的實現(xiàn) 1
1.1.3 數(shù)字信號處理的特點 2
1.2 數(shù)字信號處理器概述 3
1.2.1 DSP芯片的種類 3
1.2.2 TMS320 DSP系列 3
1.2.3 DSP芯片的主要特點 4
1.2.4 DSP芯片的應(yīng)用 5
思考題 6
第2章 TMS320C54x數(shù)字信號處理器硬件結(jié)構(gòu) 7
2.1 TMS320C54x的特點和硬件組成框圖 7
2.2 TMS320C54x的總線結(jié)構(gòu) 9
2.3 TMS320C54x的存儲器分配 9
2.3.1 存儲器空間 9
2.3.2 程序存儲器 11
2.3.3 數(shù)據(jù)存儲器 12
2.3.4 I/O存儲器 13
2.4 中央處理單元(CPU) 14
2.5 TMS320C54x片內(nèi)外設(shè)簡介 20
2.6 硬件復(fù)位操作 21
2.7 TMS320VC5402引腳及說明 22
思考題 25
第3章 TMS320C54x的數(shù)據(jù)尋址方式 26
3.1 立即尋址 26
3.2 絕對尋址 27
3.2.1 數(shù)據(jù)存儲器(dmad)尋址 27
3.2.2 程序存儲器(pmad)尋址 27
3.2.3 端口地址(PA)尋址 27
3.2.4 長立即數(shù)*(lk)尋址 28
3.3 累加器尋址 28
3.4 直接尋址 28
3.5 間接尋址 29
3.5.1 單操作數(shù)尋址 29
3.5.2 雙操作數(shù)尋址 32
3.6 存儲器映象寄存器尋址 33
3.7 堆棧尋址 33
思考題 34
第4章 TMS320C54x匯編指令系統(tǒng) 35
4.1 指令系統(tǒng)中的符號和縮寫 35
4.2 指令系統(tǒng) 37
4.2.1 算術(shù)運算指令 38
4.2.2 邏輯運算指令 42
4.2.3 程序控制指令 44
4.2.4 加載和存儲指令 47
第5章 TMS320C54x軟件開發(fā) 51
5.1 軟件開發(fā)過程及開發(fā)工具 51
5.2 公共目標(biāo)文件格式 53
5.2.1 COFF文件的基本單元——段 53
5.2.2 匯編器對段的處理 54
5.2.3 鏈接器對段的處理 58
5.2.4 重新定位 59
5.2.5 程序裝入 60
5.2.6 COFF文件中的符號 61
5.3 常用匯編偽指令 61
5.4 鏈接器命令文件的編寫與使用 64
5.4.1 MEMORY偽指令及其使用 65
5.4.2 SECTIONS偽指令及其使用 65
5.5 匯編語言程序編寫方法 68
5.5.1 匯編語言源程序格式 68
5.5.2 匯編語言中的常數(shù)和字符串 69
5.5.3 匯編源程序中的符號 70
5.5.4 匯編源程序中的表達(dá)式 72
5.6 TMS320C54x C語言編程 74
5.6.1 存儲器模式 74
5.6.2 寄存器規(guī)則 76
5.6.3 函數(shù)調(diào)用規(guī)則 76
5.6.4 中斷處理 76
5.6.5 表達(dá)式分析 77
5.7 用C語言和匯編語言混合編程 78
5.7.1 獨立的C模塊和匯編模塊接口 78
5.7.2 從C程序中訪問匯編程序變量 80
5.7.3 在C程序中直接嵌入?yún)R編語句 81
思考題 82
第6章 CCS集成開發(fā)環(huán)境 83
6.1 CCS系統(tǒng)安裝與設(shè)置 83
6.1.1 CCS系統(tǒng)安裝 83
6.1.2 為CCS安裝設(shè)備驅(qū)動程序 84
6.2 CCS菜單和工具欄 85
6.2.1 菜單 86
6.2.2 工具欄 92
6.3 CCS中的編譯器、匯編器和鏈接器選項設(shè)置 94
6.3.1 編譯器、匯編器選項 94
6.3.2 鏈接器選項 99
6.4 用CCS開發(fā)簡單的程序 101
6.5 在CCS中讀取數(shù)據(jù)和數(shù)據(jù)的圖形顯示 103
6.5.1 探點的設(shè)置及從PC機(jī)文件中讀取數(shù)據(jù) 104
6.5.2 靜態(tài)圖形顯示 105
6.5.3 動態(tài)圖形顯示 106
6.6 代碼執(zhí)行時間分析(Profiler的使用) 107
6.6.1 函數(shù)執(zhí)行時間分析 107
6.6.2 某段程序執(zhí)行時間分析 108
第7章 匯編語言程序設(shè)計 109
7.1 程序流程控制 109
7.1.1 程序存儲器地址生成 109
7.1.2 條件操作 110
7.1.3 分支轉(zhuǎn)移 111
7.1.4 調(diào)用與返回 113
7.1.5 重復(fù)操作 114
7.1.6 TMS320C54x中斷系統(tǒng) 116
7.1.7 堆棧的使用 120
7.2 數(shù)據(jù)塊傳送 121
7.3 定點數(shù)的基本算術(shù)運算 125
7.3.1 加法、減法和乘法運算 125
7.3.2 定點除法運算 132
7.4 長字運算和并行運算 134
7.4.1 長字運算 134
7.4.2 并行運算 137
7.5 FIR濾波器的DSP實現(xiàn) 138
7.5.1 線性緩沖區(qū)法 139
7.5.2 循環(huán)緩沖區(qū)法 140
7.5.3 系數(shù)對稱FIR濾波器的DSP實現(xiàn) 146
7.6 IIR數(shù)字濾波器的DSP實現(xiàn) 149
7.7 FFT運算的DSP實現(xiàn) 154
7.7.1 基二實數(shù)FFT運算的算法 154
7.7.2 FFT運算模擬信號的產(chǎn)生及輸入 157
7.7.3 實序列FFT匯編源程序及鏈接命令文件 157
7.7.4 觀察信號時域波形及其頻譜 163
思考題 164
第8章 TMS320C54x片內(nèi)外設(shè)及應(yīng)用實例 165
8.1 定時器 165
8.2 時鐘發(fā)生器 167
8.2.1 硬件配置PLL 167
8.2.2 軟件可編程PLL 168
8.3 定時器/計數(shù)器編程舉例 170
8.4 多通道緩沖串口(McBSP) 174
8.4.1 McBSP原理框圖及信號接口 174
8.4.2 McBSP控制寄存器 176
8.4.3 時鐘和幀同步 185
8.4.4 McBSP數(shù)據(jù)的接收和發(fā)送 187
8.4.5 有關(guān)的幾個概念 187
8.5 多通道緩沖串口應(yīng)用實例 191
8.5.1 TLV1572高速串行ADC與TMS320C5402接口設(shè)計 191
8.5.2 TLC5617串行DAC與TMS320C5402接口設(shè)計 195
8.5.3 語音接口芯片TLC320AD50C與TMS320C5402接口設(shè)計 200
8.6 主機(jī)接口(HPI) 210
8.6.1 HPI-8接口的結(jié)構(gòu) 210
8.6.2 HPI-8控制寄存器和接口信號 211
8.6.3 HPI-8接口與主機(jī)的連接框圖 214
8.6.4 HPI的8條數(shù)據(jù)線作通用的I/O引腳 215
8.7 外部總線操作 216
8.7.1 軟件等待狀態(tài)發(fā)生器 216
8.7.2 可編程分區(qū)切換邏輯 217
8.7.3 外部總線接口定時 219
思考題 223
參考文獻(xiàn) 224
- 計算機(jī)繪圖應(yīng)用教程—CAXA電子圖板XP
- 計算機(jī)導(dǎo)論(第四版)
- 常用工具軟件實用教程(第二版)
- C#語言程序設(shè)計教程
- 單片微型計算機(jī)原理及接口技術(shù)實驗指導(dǎo)
- 數(shù)據(jù)庫Access案例教程
- 計算機(jī)應(yīng)用基礎(chǔ)上機(jī)實驗指導(dǎo)(第三版)
- 計算機(jī)應(yīng)用基礎(chǔ)教程(第三版)
- 微型計算機(jī)通信與接口技術(shù)
- 大學(xué)計算機(jī)基礎(chǔ)教程及實驗指導(dǎo)
- Access基礎(chǔ)教程(第二版)
- 計算機(jī)網(wǎng)絡(luò)實驗教程
- 模擬電子技術(shù)
- Visual FoxPro 6.0程序設(shè)計實驗指導(dǎo)與
- 微型計算機(jī)原理及應(yīng)用
- PowerBuilder 10.0應(yīng)用基礎(chǔ)與實例教程