手把手教你學(xué)DSP:基于TMS320C55x(第2版)
定 價:69 元
- 作者:陳泰紅,劉亞俠,潘鐵文 著
- 出版時間:2016/2/1
- ISBN:9787512419759
- 出 版 社:北京航空航天大學(xué)出版社
- 中圖法分類:TN911.72
- 頁碼:1460頁
- 紙張:膠版紙
- 版次:1
- 開本:16K
本書以TMS320C55x系列高性能低功耗DSP為主,主要介紹了以數(shù)字信號處理器(DSP)為核心的實時數(shù)字信號處理器的硬件結(jié)構(gòu)和片內(nèi)外設(shè),論述了eXpress算法標(biāo)準(zhǔn)軟件,尤其是CCS的使用;詳細(xì)說明了DSP與外圍接口電路的設(shè)計以及*小系統(tǒng)的設(shè)計,給出了DSP相關(guān)軟件編程和開發(fā)調(diào)試;還介紹了MATLAB在數(shù)字信號處理中的應(yīng)用和DSP/BIOS的基礎(chǔ)知識。在介紹功能模塊的基礎(chǔ)上,列出了相應(yīng)的實戰(zhàn)項目開發(fā)實例,并講述了DSP+FPGA 復(fù)雜系統(tǒng)的設(shè)計。相比第1版,本書增加了3D16光立方的設(shè)計與制作、OMAP簡介和醫(yī)療電子醫(yī)用等內(nèi)容。本書提供的所有電路全部可實現(xiàn),所有程序在設(shè)計的實驗板上均已調(diào)試通過。
本書配套資料包括:書中程序源代碼、開發(fā)板電路圖源文件以及常用網(wǎng)站地址,讀者可以到北航出版社網(wǎng)站的“下載專區(qū)”免費(fèi)下載。
本書可以作為本科生和研究生學(xué)習(xí)DSP的教材,也可以作為職業(yè)學(xué)校學(xué)生、DSP開發(fā)人員、廣大電子制作愛好者的參考書。
第1章 緒 論………………………………………………………………………… 1
1.1 數(shù)字信號處理器簡介………………………………………………………… 1
1.2 數(shù)字信號處理器的發(fā)展……………………………………………………… 2
1.3 DSP處理器的性能指標(biāo)及選擇……………………………………………… 3
1.4 DSP系統(tǒng)的開發(fā)……………………………………………………………… 5
1.4.1 DSP系統(tǒng)設(shè)計開發(fā)流程……………………………………………………… 5
1.4.2 DSP系統(tǒng)軟硬件開發(fā)工具…………………………………………………… 5
第2章 TMS320C55x的硬件結(jié)構(gòu)…………………………………………………… 7
2.1 C55xDSP簡介……………………………………………………………… 7
2.2 C55x的總體結(jié)構(gòu)……………………………………………………………… 7
2.2.1 CPU 內(nèi)核…………………………………………………………………… 7
2.2.2 C55x存儲空間……………………………………………………………… 9
2.2.3 C55x片內(nèi)外設(shè)……………………………………………………………… 9
2.2.4 C55x低功耗特性…………………………………………………………… 11
2.3 C55x的封裝和引腳功能…………………………………………………… 12
2.3.1 引腳信號定義與描述……………………………………………………… 14
2.3.2 存儲空間與引腳設(shè)置……………………………………………………… 17
2.4 中斷和復(fù)位操作……………………………………………………………… 18
2.4.1 中 斷…………………………………………………………………… 18
2.4.2 中斷向量與優(yōu)先級………………………………………………………… 19
2.4.3 不可屏蔽中斷……………………………………………………………… 21
2.4.4 外部中斷使用舉例………………………………………………………… 21
第3章 eXpressDSP算法標(biāo)準(zhǔn)軟件………………………………………………… 23
3.1 CCS集成開發(fā)環(huán)境………………………………………………………… 23
3.2 實時操作系統(tǒng)內(nèi)核DSP/BIOS …………………………………………… 24
3.3 CSL概述…………………………………………………………………… 28
3.3.1 CSL體系結(jié)構(gòu)……………………………………………………………… 29
3.3.2 CSL命名規(guī)則……………………………………………………………… 30
3.3.3 通用CSL函數(shù)……………………………………………………………… 31
3.3.4 CSL宏…………………………………………………………………… 32
3.3.5 CSL調(diào)用…………………………………………………………………… 34
3.4 XDAIS算法標(biāo)準(zhǔn)…………………………………………………………… 34
3.5 eXpressDSP參考框架……………………………………………………… 35
3.5.1 RF3簡述…………………………………………………………………… 36
3.5.2 RF5簡述…………………………………………………………………… 37
3.6 TI官方文檔資源介紹……………………………………………………… 41
第4章 CCS集成開發(fā)環(huán)境………………………………………………………… 43
4.1 開發(fā)工具與開發(fā)步驟………………………………………………………… 43
4.1.1 代碼的開發(fā)方法…………………………………………………………… 43
4.1.2 開發(fā)工具…………………………………………………………………… 44
4.1.3 開發(fā)步驟…………………………………………………………………… 44
4.2 CCS簡介…………………………………………………………………… 45
4.2.1 CCS版本支持……………………………………………………………… 45
4.2.2 CCS基本功能……………………………………………………………… 45
4.3 CCS3.3軟件的安裝與USB仿真驅(qū)動設(shè)置……………………………… 46
4.3.1 CCS文件的安裝…………………………………………………………… 46
4.3.2 CCS文件的簡單說明……………………………………………………… 46
4.3.3 目標(biāo)板與驅(qū)動的安裝設(shè)置…………………………………………………… 47
4.4 CCS集成開發(fā)環(huán)境………………………………………………………… 50
4.4.1 CCS集成開發(fā)環(huán)境概述…………………………………………………… 50
4.4.2 DSP程序的仿真模式……………………………………………………… 50
4.4.3 CCS菜單詳解……………………………………………………………… 51
4.5 建立DSP工程文件………………………………………………………… 53
4.5.1 創(chuàng)建、打開和關(guān)閉工程……………………………………………………… 53
4.5.2 編輯、編譯和執(zhí)行程序……………………………………………………… 55
4.5.3 調(diào)試工具…………………………………………………………………… 59
4.6 CCS開發(fā)中的一些問題…………………………………………………… 63
4.6.1 DSP型號和CCS版本之間的關(guān)系…………………………………………… 63
4.6.2 run和animate的區(qū)別……………………………………………………… 64
4.6.3 ProbePoint和BreakPoints的區(qū)別和聯(lián)系………………………………… 64
4.6.4 CCS文件數(shù)據(jù)的格式……………………………………………………… 65
4.6.5 CCS調(diào)試中的一些小技巧………………………………………………… 66
4.7 第一個實驗:驅(qū)動一個LED ……………………………………………… 68
第5章 TMS320C55x的片內(nèi)外設(shè)、接口及應(yīng)用…………………………………… 74
5.1 時鐘發(fā)生器…………………………………………………………………… 74
5.1.1 時鐘發(fā)生器概況…………………………………………………………… 74
5.1.2 時鐘工作模式……………………………………………………………… 75
5.1.3 CLKOUT輸出…………………………………………………………… 76
5.1.4 使用方法與舉例…………………………………………………………… 76
5.2 通用定時器…………………………………………………………………… 77
5.2.1 定時器概述………………………………………………………………… 77
5.2.2 工作原理…………………………………………………………………… 79
5.2.3 定時器應(yīng)用實例…………………………………………………………… 80
5.2.4 通用定時器的調(diào)試………………………………………………………… 81
5.3 通用I/O口………………………………………………………………… 81
5.3.1 GPIO概述………………………………………………………………… 81
5.3.2 GPIO使用舉例…………………………………………………………… 82
5.4 外部存儲器接口……………………………………………………………… 82
5.4.1 EMIF存儲器概述………………………………………………………… 82
5.4.2 對存儲器的考慮…………………………………………………………… 84
5.4.3 存儲器接口設(shè)計…………………………………………………………… 85
5.4.4 EMIF中的控制寄存器……………………………………………………… 89
5.4.5 使用舉例…………………………………………………………………… 90
5.5 多通道緩沖串口……………………………………………………………… 92
5.5.1 McBSP概述……………………………………………………………… 92
5.5.2 McBSP組成框圖…………………………………………………………… 93
5.5.3 采樣率發(fā)生器……………………………………………………………… 94
5.5.4 多通道模式選擇…………………………………………………………… 95
5.5.5 異常處理…………………………………………………………………… 96
5.5.6 McBSP寄存器……………………………………………………………… 98
5.5.7 McBSP使用舉例………………………………………………………… 102
5.6 模/數(shù)轉(zhuǎn)換器………………………………………………………………… 104
5.6.1 ADC的結(jié)構(gòu)和時序……………………………………………………… 104
5.6.2 ADC的寄存器…………………………………………………………… 105
5.6.3 ADC實例………………………………………………………………… 107
5.7 看門狗定時器……………………………………………………………… 108
5.7.1 看門狗定時器概述………………………………………………………… 108
5.7.2 看門狗定時器的配置……………………………………………………… 109
5.7.3 看門狗定時器的寄存器…………………………………………………… 110
5.7.4 看門狗應(yīng)用舉例………………………………………………………… 111
5.8 I2C模塊…………………………………………………………………… 112
5.8.1 I2C模塊工作原理………………………………………………………… 113
5.8.2 I2C寄存器………………………………………………………………… 116
5.8.3 I2C程序使用舉例………………………………………………………… 117
5.9 USB模塊…………………………………………………………………… 119
5.9.1 USB協(xié)議簡介…………………………………………………………… 119
5.9.2 VC5509A USB的硬件資源………………………………………………… 119
5.9.3 USB時鐘發(fā)生器………………………………………………………… 122
5.9.4 VC5509A USB的總線連接與中斷………………………………………… 122
5.9.5 USBCSL模塊簡介……………………………………………………… 124
5.9.6 USB模塊的編程實現(xiàn)……………………………………………………… 125
第6章 DSP系統(tǒng)的硬件設(shè)計…………………………………………………… 128
6.1 DSP電源的選擇與設(shè)計…………………………………………………… 129
6.1.1 電源加電順序…………………………………………………………… 131
6.1.2 電源檢測與復(fù)位………………………………………………………… 132
6.1.3 復(fù)位電路設(shè)計…………………………………………………………… 132
6.2 JTAG接口設(shè)計…………………………………………………………… 133
6.3 時鐘電路的設(shè)計…………………………………………………………… 135
6.3.1 時鐘電路的分類………………………………………………………… 136
6.3.2 時鐘電路選擇原則………………………………………………………… 137
6.3.3 C55x時鐘電路的調(diào)試…………………………………………………… 137
6.4 總線隔離與驅(qū)動的器件選擇……………………………………………… 137
6.5 Flash自舉引導(dǎo)設(shè)計……………………………………………………… 138
6.5.1 自舉引導(dǎo)模式的配置……………………………………………………… 138
6.5.2 引導(dǎo)表…………………………………………………………………… 139
6.5.3 EMIF模式引導(dǎo)…………………………………………………………… 140
6.5.4 I2C模式引導(dǎo)……………………………………………………………… 140
6.6 DSP多機(jī)通信接口選擇與設(shè)計…………………………………………… 141
6.6.1 通過雙口RAM(或雙向FIFO)橋接………………………………………… 141
6.6.2 通過主機(jī)接口實現(xiàn)通信…………………………………………………… 142
6.6.3 通過GPIO實現(xiàn)通信……………………………………………………… 142
6.6.4 通過I2C實現(xiàn)通信………………………………………………………… 143
6.6.5 通信方式的優(yōu)缺點(diǎn)………………………………………………………… 143
6.7 應(yīng)用系統(tǒng)的低功耗設(shè)計…………………………………………………… 144
6.7.1 合理選擇DSP器件……………………………………………………… 144
6.7.2 讓DSP以適當(dāng)?shù)乃俣冗\(yùn)行………………………………………………… 144
6.7.3 在軟件設(shè)計中降低功耗…………………………………………………… 144
6.7.4 存儲器類型對功耗的影響………………………………………………… 145
6.7.5 正確處理外圍電路………………………………………………………… 145
第7章 DSP軟件程序設(shè)計……………………………………………………… 146
7.1 DSP軟件開發(fā)流程………………………………………………………… 146
7.1.1 軟件開發(fā)流程…………………………………………………………… 146
7.1.2 DSP程序的基本組成……………………………………………………… 148
7.1.3 VC5509A的工作流程…………………………………………………… 149
7.1.4 DSPC語言簡介………………………………………………………… 149
7.1.5 DSPC語言關(guān)鍵字………………………………………………………… 151
7.1.6 動態(tài)分配內(nèi)存…………………………………………………………… 152
7.2 匯編偽指令………………………………………………………………… 152
7.2.1 匯編偽指令概述………………………………………………………… 153
7.2.2 C程序在DSP中的定位…………………………………………………… 156
7.3 CMD文件的編寫………………………………………………………… 157
7.4 混合編程…………………………………………………………………… 162
7.5 GEL文件…………………………………………………………………… 165
7.5.1 GEL語法概述…………………………………………………………… 166
7.5.2 存儲器映射……………………………………………………………… 167
7.5.3 詳解C5509.gel文件……………………………………………………… 168
7.6 歸檔器的使用……………………………………………………………… 170
7.7 反匯編的實現(xiàn)……………………………………………………………… 171
第8章 軟件開發(fā)進(jìn)階……………………………………………………………… 175
8.1 BigEndian和LittleEndian ……………………………………………… 175
8.2 程序的優(yōu)化………………………………………………………………… 176
8.2.1 獲得最佳性能的代碼開發(fā)流程…………………………………………… 177
8.2.2 工程層的優(yōu)化…………………………………………………………… 179
8.2.3 算法的改變……………………………………………………………… 180
8.2.4 數(shù)據(jù)內(nèi)存的優(yōu)化………………………………………………………… 181
8.2.5 提高流水線的效率………………………………………………………… 181
8.3 程序的編程素養(yǎng)…………………………………………………………… 182
8.3.1 程序注釋………………………………………………………………… 183
8.3.2 函 數(shù)…………………………………………………………………… 186
8.3.3 變 量…………………………………………………………………… 187
8.3.4 其他編程規(guī)范…………………………………………………………… 188
8.4 數(shù)字信號處理庫…………………………………………………………… 188
8.4.1 DSPLIB的調(diào)用…………………………………………………………… 189
8.4.2 DSPLIB函數(shù)……………………………………………………………… 190
8.5 圖像/視頻算法庫…………………………………………………………… 191
8.5.1 圖像/視頻算法庫概述…………………………………………………… 191
8.5.2 圖像/視頻處理庫的安裝與使用…………………………………………… 191
8.5.3 圖像處理API接口……………………………………………………… 192
第9章 DSP最小系統(tǒng)電路詳解………………………………………………… 195
9.1 供電電路…………………………………………………………………… 195
9.2 時鐘振蕩電路……………………………………………………………… 196
9.3 蜂鳴器控制電路…………………………………………………………… 197
9.4 外擴(kuò)存儲SDRAM 電路…………………………………………………… 197
9.5 DSPbootloader模式電路………………………………………………… 198
9.6 SD卡接口電路……………………………………………………………… 200
9.7 音頻控制電路……………………………………………………………… 200
9.8 USB控制電路……………………………………………………………… 202
第10章 硬件電路的設(shè)計與調(diào)試………………………………………………… 203
第11章 軟件實驗詳解…………………………………………………………… 214
第12章 數(shù)字信號處理算法與實踐……………………………………………… 242
第13章 DSP/BIOS實踐與應(yīng)用………………………………………………… 271
第14章 工程項目實踐與應(yīng)用…………………………………………………… 321
第15章 DSP+FPGA 復(fù)雜系統(tǒng)的設(shè)計………………………………………… 360
第16章 OMAP雙核處理器……………………………………………………… 394
第17章 TMS320C55x在醫(yī)療電子中的應(yīng)用…………………………………… 407
附錄A 下載DSP資料的一些常用網(wǎng)站………………………………………… 415
附錄B C54x與C5510寄存器…………………………………………………… 416
附錄C VC5510中斷……………………………………………………………… 427
附錄D TMS320C55x的狀態(tài)寄存器……………………………………………… 429
附錄E TMS320C55x的匯編指令集……………………………………………… 432
附錄F TMS320C55xDSP庫函數(shù)………………………………………………… 449
后 記………………………………………………………………………………… 458
參考文獻(xiàn)……………………………………………………………………………… 460