DSP 芯片的原理與開發(fā)應(yīng)用(第6版)
定 價(jià):59 元
- 作者:張雄偉著
- 出版時(shí)間:2022/2/1
- ISBN:9787121418709
- 出 版 社:電子工業(yè)出版社
- 中圖法分類:TN911.72
- 頁碼:368
- 紙張:
- 版次:01
- 開本:16開
本書按照“基礎(chǔ)知識(shí)―開發(fā)環(huán)境―軟件開發(fā)―硬件開發(fā)―綜合開發(fā)”的順序,由淺入深、全面系統(tǒng)地介紹了DSP芯片的基本原理、開發(fā)過程和應(yīng)用方法。首先,介紹了DSP系統(tǒng)的設(shè)計(jì)、DSP芯片的特點(diǎn)、DSP芯片的軟硬件開發(fā)環(huán)境及定點(diǎn)數(shù)據(jù)處理的運(yùn)算基礎(chǔ);其次,在介紹DSP芯片存儲(chǔ)資源管理的基礎(chǔ)上,重點(diǎn)介紹了基于C語言和匯編語言的軟件開發(fā)方法;接著,介紹了DSP系統(tǒng)的硬件設(shè)計(jì)和開發(fā)方法;最后,介紹了DSP多任務(wù)系統(tǒng)的開發(fā)方法,并通過實(shí)例介紹了DSP綜合系統(tǒng)的開發(fā)過程和開發(fā)方法。
張雄偉,教授,博士生導(dǎo)師,全國優(yōu)秀教師,國務(wù)院特殊津貼獲得者。長期從事語音與圖像處理、智能信息處理等領(lǐng)域的教學(xué)研究工作,主持國家自然科學(xué)基金、863計(jì)劃項(xiàng)目多項(xiàng),發(fā)表論文100余篇,培養(yǎng)研究生80余人,出版教材、譯著10部。
第1章 概述\t1
1.1 引言\t1
1.2 DSP系統(tǒng)\t2
1.2.1 DSP系統(tǒng)的基本構(gòu)成\t2
1.2.2 DSP系統(tǒng)的特點(diǎn)\t3
1.2.3 DSP系統(tǒng)的設(shè)計(jì)與開發(fā)\t3
1.2.4 DSP系統(tǒng)的開發(fā)工具\(yùn)t4
1.2.5 實(shí)時(shí)DSP系統(tǒng)\t5
1.3 DSP芯片概述\t6
1.3.1 DSP芯片的定義\t6
1.3.2 DSP芯片的特點(diǎn)\t7
1.3.3 DSP芯片的發(fā)展\t8
1.3.4 DSP芯片的分類\t9
1.3.5 DSP芯片的選擇\t10
1.3.6 DSP系統(tǒng)的運(yùn)算量\t13
1.3.7 DSP芯片的應(yīng)用\t14
1.4 常用的DSP芯片\t14
1.4.1 TI公司DSP芯片\t14
1.4.2 ADI公司DSP芯片\t20
1.5 內(nèi)容組織與常用術(shù)語\t21
1.5.1 內(nèi)容組織結(jié)構(gòu)\t21
1.5.2 常用術(shù)語\t21
本章小結(jié)\t22
習(xí)題與思考題\t22
第2章 DSP芯片的基本結(jié)構(gòu)和特征\t23
2.1 引言\t23
2.2 DSP芯片的基本結(jié)構(gòu)\t23
2.2.1 概述\t23
2.2.2 總線結(jié)構(gòu)\t23
2.2.3 流水線\t25
2.3 中央處理單元(CPU)\t25
2.3.1 算術(shù)邏輯單元(ALU)\t26
2.3.2 累加器\t27
2.3.3 桶形移位寄存器\t28
2.3.4 乘累加單元\t29
2.3.5 尋址單元\t30
2.4 存儲(chǔ)單元\t31
2.4.1 片內(nèi)存儲(chǔ)器\t31
2.4.2 存儲(chǔ)器映射寄存器\t32
2.4.3 Cache\t32
2.4.4 外部擴(kuò)展存儲(chǔ)器\t33
2.5 集成外設(shè)與接口\t33
2.5.1 通用類外設(shè)\t34
2.5.2 通信類外設(shè)\t35
2.5.3 存儲(chǔ)類接口\t36
2.5.4 DMA控制器\t36
2.5.5 專用外設(shè)與接口\t37
2.6 中斷\t37
2.6.1 中斷源\t38
2.6.2 中斷優(yōu)先級\t38
2.6.3 中斷處理過程\t40
2.6.4 中斷矢量表\t40
本章小結(jié)\t42
習(xí)題與思考題\t42
第3章 DSP芯片的開發(fā)環(huán)境\t43
3.1 引言\t43
3.2 軟件開發(fā)流程\t43
3.3 軟件開發(fā)環(huán)境\t45
3.3.1 基本概念\t47
3.3.2 CCS開發(fā)環(huán)境\t48
3.3.3 軟件開發(fā)功能\t54
3.4 硬件開發(fā)流程\t65
3.5 硬件開發(fā)環(huán)境\t65
3.5.1 DSP仿真器\t66
3.5.2 仿真器接口\t67
3.5.3 TI公司仿真器\t68
本章小結(jié)\t69
習(xí)題與思考題\t69
第4章 DSP的數(shù)值運(yùn)算基礎(chǔ)\t70
4.1 引言\t70
4.2 定點(diǎn)的基本概念\t70
4.2.1 數(shù)的定標(biāo)\t70
4.2.2 數(shù)的轉(zhuǎn)換\t72
4.2.3 溢出保護(hù)\t73
4.2.4 符號擴(kuò)展\t74
4.2.5 舍入與截尾\t74
4.3 定點(diǎn)運(yùn)算實(shí)現(xiàn)的基本原理\t75
4.3.1 加法/減法運(yùn)算的C語言定點(diǎn)模擬\t75
4.3.2 乘法運(yùn)算的C語言定點(diǎn)模擬\t77
4.3.3 除法運(yùn)算的C語言定點(diǎn)模擬\t78
4.3.4 程序變量的Q值確定\t78
4.3.5 浮點(diǎn)至定點(diǎn)變換的C程序舉例\t79
4.4 DSP定點(diǎn)算術(shù)運(yùn)算實(shí)現(xiàn)的基本原理\t81
4.4.1 定點(diǎn)乘法\t81
4.4.2 定點(diǎn)加法\t82
4.4.3 定點(diǎn)除法\t83
4.5 非線性運(yùn)算定點(diǎn)實(shí)現(xiàn)方法\t85
4.5.1 級數(shù)展開法\t85
4.5.2 查表法\t85
4.5.3 混合法\t87
4.6 基于數(shù)據(jù)規(guī)格化的定點(diǎn)運(yùn)算精度提高\(yùn)t88
4.6.1 數(shù)據(jù)規(guī)格化處理方法\t88
4.6.2 運(yùn)算實(shí)例分析\t90
本章小結(jié)\t91
習(xí)題與思考題\t92
第5章 DSP芯片的存儲(chǔ)資源管理\t93
5.1 引言\t93
5.2 TMS320C54x的存儲(chǔ)區(qū)組織\t93
5.2.1 TMS320VC5416的存儲(chǔ)資源\t93
5.2.2 程序空間\t95
5.2.3 數(shù)據(jù)空間\t95
5.2.4 I/O空間\t96
5.2.5 存儲(chǔ)器映射寄存器\t96
5.3 TMS320C55x的存儲(chǔ)區(qū)組織\t97
5.3.1 TMS320VC5509A的存儲(chǔ)資源\t97
5.3.2 程序空間\t98
5.3.3 數(shù)據(jù)空間\t99
5.3.4 I/O空間\t100
5.4 TI KeyStone片上系統(tǒng)的存儲(chǔ)區(qū)組織\t100
5.4.1 存儲(chǔ)空間組織\t100
5.4.2 高速緩存器(Cache)\t102
5.4.3 存儲(chǔ)器保護(hù)單元\t103
5.5 程序結(jié)構(gòu)與COFF目標(biāo)文件格式\t103
5.5.1 塊(section)\t104
5.5.2 匯編器對塊的處理\t105
5.5.3 COFF文件格式編程示例\t106
5.5.4 COFF文件中的符號\t107
5.5.5 鏈接器對塊的處理\t108
5.6 存儲(chǔ)區(qū)分配與CMD文件\t109
5.6.1 文件鏈接方法\t109
5.6.2 鏈接命令文件\t109
5.6.3 TMS320VC5509A的CMD文件\t110
本章小結(jié)\t113
習(xí)題與思考題\t113
第6章 基于C語言的DSP芯片軟件開發(fā)\t114
6.1 引言\t114
6.2 TMS320C55x的C語言\t114
6.2.1 變量和常數(shù)\t116
6.2.2 函數(shù)\t119
6.2.3 預(yù)處理\t121
6.2.4 asm語句\t122
6.3 C語言程序代碼的優(yōu)化\t123
6.3.1 C語言程序代碼編譯分析\t123
6.3.2 C語言程序的優(yōu)化方法\t128
本章小結(jié)\t139
習(xí)題與思考題\t139
第7章 基于C55x匯編語言的DSP芯片軟件開發(fā)\t140
7.1 匯編語言源程序格式\t140
7.2 匯編源程序中常見符號和偽指令\t142
7.3 匯編指令系統(tǒng)\t145
7.4 尋址方式\t148
7.4.1 絕對尋址方式\t148
7.4.2 直接尋址方式\t149
7.4.3 間接尋址方式\t151
7.5 匯編代碼的優(yōu)化\t160
7.6 匯編語言和C的混合編程方法\t160
7.6.1 獨(dú)立的C和匯編模塊接口\t161
7.6.2 從C程序中訪問匯編程序變量\t162
7.6.3 在匯編程序中訪問C程序變量\t163
7.6.4 在C程序中直接嵌入?yún)R編語句\t164
7.6.5 TMS320C55x混合編程舉例\t164
本章小結(jié)\t165
習(xí)題與思考題\t165
第8章 DSP算法軟件開發(fā)實(shí)例\t166
8.1 引言\t166
8.2 基于FFT的單音檢測算法原理\t166
8.2.1 單音檢測算法概述\t166
8.2.2 DFT的基本原理\t167
8.2.3 FFT算法的導(dǎo)出\t167
8.3 基于MATLAB的DSP算法仿真\t172
8.3.1 MATLAB簡介\t172
8.3.2 單音檢測算法的MATLAB仿真\t173
8.4 單音檢測算法的浮點(diǎn)C語言實(shí)現(xiàn)\t175
8.5 單音檢測算法的定點(diǎn)C語言實(shí)現(xiàn)\t180
8.5.1 FFT運(yùn)算溢出及避免方法\t180
8.5.2 單音檢測算法的定點(diǎn)C語言實(shí)現(xiàn)\t181
8.6 單音檢測算法的定點(diǎn)DSP芯片實(shí)現(xiàn)\t187
8.7 多路單音檢測算法的實(shí)現(xiàn)\t190
本章小結(jié)\t193
習(xí)題與思考題\t194
第9章 DSP系統(tǒng)的硬件設(shè)計(jì)\t195
9.1 引言\t195
9.2 DSP系統(tǒng)硬件設(shè)計(jì)的基本步驟\t195
9.3 最小DSP系統(tǒng)的硬件設(shè)計(jì)\t196
9.3.1 電源電路\t196
9.3.2 復(fù)位電路\t199
9.3.3 時(shí)鐘電路\t200
9.3.4 JTAG電路\t201
9.3.5 引腳的電平轉(zhuǎn)換與處理\t202
9.3.6 硬件系統(tǒng)的可靠性設(shè)計(jì)\t205
9.4 外部存儲(chǔ)器接口設(shè)計(jì)\t207
9.4.1 TMS320C54x存儲(chǔ)器接口設(shè)計(jì)\t208
9.4.2 TMS320C55x存儲(chǔ)器接口設(shè)計(jì)\t211
9.4.3 KeyStone系列DSP存儲(chǔ)器接口設(shè)計(jì)\t212
9.5 模數(shù)接口電路的設(shè)計(jì)\t213
9.5.1 與TLV320AIC23B接口的設(shè)計(jì)\t213
9.5.2 與MC145483接口的設(shè)計(jì)\t214
9.5.3 與多種音頻器件接口的設(shè)計(jì)\t214
9.6 通信接口的設(shè)計(jì)\t215
9.6.1 通用串行接口\t215
9.6.2 同步串行通信接口電路設(shè)計(jì)\t216
9.6.3 異步串行通信接口電路設(shè)計(jì)\t216
9.7 主從式系統(tǒng)的設(shè)計(jì)\t217
9.7.1 共享存儲(chǔ)器實(shí)現(xiàn)雙機(jī)通信\t218
9.7.2 利用HPI實(shí)現(xiàn)雙機(jī)通信\t219
9.7.3 OMAP5910芯片的雙核通信\t220
本章小結(jié)\t221
習(xí)題與思考題\t221
第10章 DSP芯片外設(shè)驅(qū)動(dòng)程序的開發(fā)\t222
10.1 引言\t222
10.2 基于CSL的外設(shè)程序設(shè)計(jì)\t223
10.2.1 CSL簡介\t223
10.2.2 CSL的特點(diǎn)\t225
10.2.3 CSL程序開發(fā)基本步驟\t227
10.3 中斷控制程序的開發(fā)\t236
10.3.1 中斷初始化\t237
10.3.2 中斷服務(wù)程序的開發(fā)\t240
10.3.3 中斷控制程序?qū)嵗齖t241
10.4 典型接口功能的控制程序開發(fā)\t244
10.4.1 外部存儲(chǔ)的控制程序\t244
10.4.2 串行A/D和D/A功能的控制程序\t247
10.4.3 外部主機(jī)通信功能的控制程序\t252
10.5 DMA的控制程序開發(fā)\t253
10.5.1 DSP芯片的DMA數(shù)據(jù)傳輸模式\t254
10.5.2 DSP芯片的DMA傳輸?shù)刂穃t255
10.5.3 DSP芯片的DMA事件和中斷\t255
10.5.4 DMA控制程序舉例\t257
本章小結(jié)\t260
習(xí)題與思考題\t260
第11章 DSP脫機(jī)系統(tǒng)的開發(fā)\t261
11.1 聯(lián)機(jī)系統(tǒng)和脫機(jī)系統(tǒng)\t261
11.2 DSP芯片的BOOT\t263
11.2.1 BOOT簡介\t263
11.2.2 BOOT過程\t264
11.2.3 BOOT表\t269
11.2.4 二次BOOT\t270
11.3 DSP脫機(jī)系統(tǒng)實(shí)現(xiàn)\t271
11.3.1 硬件設(shè)計(jì)\t271
11.3.2 軟件代碼準(zhǔn)備與燒錄\t272
11.4 DSP脫機(jī)系統(tǒng)軟件開發(fā)實(shí)例\t275
11.4.1 并口Flash脫機(jī)系統(tǒng)的軟件開發(fā)\t275
11.4.2 串口Flash脫機(jī)系統(tǒng)的軟件開發(fā)\t277
本章小結(jié)\t281
習(xí)題與思考題\t281
第12章 DSP多任務(wù)系統(tǒng)的開發(fā)\t282
12.1 引言\t282
12.2 多任務(wù)管理\t282
12.2.1 前后臺(tái)系統(tǒng)\t282
12.2.2 操作系統(tǒng)\t283
12.2.3 實(shí)時(shí)操作系統(tǒng)\t285
12.3 TI RTOS\t286
12.3.1 TI RTOS的實(shí)時(shí)多任務(wù)內(nèi)核\t286
12.3.2 SYS/BIOS的核心功能\t289
12.3.3 TI RTOS中的其他軟件\t293
12.4 基于TI RTOS的軟件開發(fā)\t294
12.4.1 單核DSP片上系統(tǒng)的RTOS軟件開發(fā)\t294
12.4.2 多核DSP片上系統(tǒng)的RTOS軟件開發(fā)\t303
12.4.3 基于OpenMP模型的并行代碼設(shè)計(jì)\t306
12.5 DSP片上系統(tǒng)的RTOS工程示例\t309
本章小結(jié)\t311
習(xí)題與思考題\t311
第13章 DSP系統(tǒng)的開發(fā)實(shí)例\t312
13.1 引言\t312
13.2 基于TMS320VC5509A的DSP應(yīng)用系統(tǒng)實(shí)例\t312
13.2.1 系統(tǒng)簡介\t312
13.2.2 系統(tǒng)架構(gòu)\t313
13.3 實(shí)例系統(tǒng)的硬件開發(fā)\t314
13.3.1 器件選型\t314
13.3.2 接口設(shè)計(jì)\t316
13.3.3 電路設(shè)計(jì)\t317
13.3.4 電路調(diào)試\t319
13.4 實(shí)例系統(tǒng)的軟件開發(fā)\t320
13.4.1 算法仿真程序編寫和測試\t321
13.4.2 接口控制程序編寫和調(diào)試\t323
13.5 實(shí)例系統(tǒng)的軟硬件集成\t330
本章小結(jié)\t340
習(xí)題與思考題\t341
附錄A 縮略詞的中英文對照\t342
附錄B TMS320VC5509A PGE LQFP引腳圖及定義\t346
附錄C TMS320C55x 指令集\t348
附錄D CSL庫函數(shù)\t349
附錄E 代碼實(shí)例\t350
附錄F CCS V5.5的安裝\t351
附錄G 8位μ律PCM/16位線性轉(zhuǎn)換的C語言程序\t352
附錄H μ律PCM到線性變換表\t354
參考文獻(xiàn)\t355