DSP 芯片的原理與開發應用(第6版)

張雄偉,楊吉斌,曹鐵勇 等

  • 出版商: 電子工業
  • 出版日期: 2022-02-01
  • 定價: $354
  • 售價: 8.5$301
  • 語言: 簡體中文
  • 頁數: 368
  • ISBN: 7121418703
  • ISBN-13: 9787121418709
  • 相關分類: 數位訊號處理 Dsp半導體
  • 下單後立即進貨 (約4週~6週)

商品描述

本書按照“基礎知識—開發環境—軟件開發—硬件開發—綜合開發”的順序,由淺入深、全面系統地介紹了DSP芯片的基本原理、開發過程和應用方法。首先,介紹了DSP系統的設計、DSP芯片的特點、DSP芯片的軟硬件開發環境及定點數據處理的運算基礎;其次,在介紹DSP芯片存儲資源管理的基礎上,重點介紹了基於C語言和匯編語言的軟件開發方法;接著,介紹了DSP系統的硬件設計和開發方法;最後,介紹了DSP多任務系統的開發方法,並通過實例介紹了DSP綜合系統的開發過程和開發方法。

目錄大綱

第1章 概述 1
1.1 引言 1
1.2 DSP系統 2
1.2.1 DSP系統的基本構成 2
1.2.2 DSP系統的特點 3
1.2.3 DSP系統的設計與開發 3
1.2.4 DSP系統的開發工具 4
1.2.5 實時DSP系統 5
1.3 DSP芯片概述 6
1.3.1 DSP芯片的定義 6
1.3.2 DSP芯片的特點 7
1.3.3 DSP芯片的發展 8
1.3.4 DSP芯片的分類 9
1.3.5 DSP芯片的選擇 10
1.3.6 DSP系統的運算量 13
1.3.7 DSP芯片的應用 14
1.4 常用的DSP芯片 14
1.4.1 TI公司DSP芯片 14
1.4.2 ADI公司DSP芯片 20
1.5 內容組織與常用術語 21
1.5.1 內容組織結構 21
1.5.2 常用術語 21
本章小結 22
習題與思考題 22
第2章 DSP芯片的基本結構和特徵 23
2.1 引言 23
2.2 DSP芯片的基本結構 23
2.2.1 概述 23
2.2.2 總線結構 23
2.2.3 流水線 25
2.3 中央處理單元(CPU) 25
2.3.1 算術邏輯單元(ALU) 26
2.3.2 累加器 27
2.3.3 桶形移位寄存器 28
2.3.4 乘累加單元 29
2.3.5 尋址單元 30
2.4 存儲單元 31
2.4.1 片內存儲器 31
2.4.2 存儲器映射寄存器 32
2.4.3 Cache 32
2.4.4 外部擴展存儲器 33
2.5 集成外設與接口 33
2.5.1 通用類外設 34
2.5.2 通信類外設 35
2.5.3 存儲類接口 36
2.5.4 DMA控制器 36
2.5.5 專用外設與接口 37
2.6 中斷 37
2.6.1 中斷源 38
2.6.2 中斷優先級 38
2.6.3 中斷處理過程 40
2.6.4 中斷矢量表 40
本章小結 42
習題與思考題 42
第3章 DSP芯片的開發環境 43
3.1 引言 43
3.2 軟件開發流程 43
3.3 軟件開發環境 45
3.3.1 基本概念 47
3.3.2 CCS開發環境 48
3.3.3 軟件開發功能 54
3.4 硬件開發流程 65
3.5 硬件開發環境 65
3.5.1 DSP模擬器 66
3.5.2 模擬器接口 67
3.5.3 TI公司模擬器 68
本章小結 69
習題與思考題 69
第4章 DSP的數值運算基礎 70
4.1 引言 70
4.2 定點的基本概念 70
4.2.1 數的定標 70
4.2.2 數的轉換 72
4.2.3 溢出保護 73
4.2.4 符號擴展 74
4.2.5 舍入與截尾 74
4.3 定點運算實現的基本原理 75
4.3.1 加法/減法運算的C語言定點模擬 75
4.3.2 乘法運算的C語言定點模擬 77
4.3.3 除法運算的C語言定點模擬 78
4.3.4 程序變量的Q值確定 78
4.3.5 浮點至定點變換的C程序舉例 79
4.4 DSP定點算術運算實現的基本原理 81
4.4.1 定點乘法 81
4.4.2 定點加法 82
4.4.3 定點除法 83
4.5 非線性運算定點實現方法 85
4.5.1 級數展開法 85
4.5.2 查表法 85
4.5.3 混合法 87
4.6 基於數據規格化的定點運算精度提高 88
4.6.1 數據規格化處理方法 88
4.6.2 運算實例分析 90
本章小結 91
習題與思考題 92
第5章 DSP芯片的存儲資源管理 93
5.1 引言 93
5.2 TMS320C54x的存儲區組織 93
5.2.1 TMS320VC5416的存儲資源 93
5.2.2 程序空間 95
5.2.3 數據空間 95
5.2.4 I/O空間 96
5.2.5 存儲器映射寄存器 96
5.3 TMS320C55x的存儲區組織 97
5.3.1 TMS320VC5509A的存儲資源 97
5.3.2 程序空間 98
5.3.3 數據空間 99
5.3.4 I/O空間 100
5.4 TI KeyStone片上系統的存儲區組織 100
5.4.1 存儲空間組織 100
5.4.2 高速緩存器(Cache) 102
5.4.3 存儲器保護單元 103
5.5 程序結構與COFF目標文件格式 103
5.5.1 塊(section) 104
5.5.2 匯編器對塊的處理 105
5.5.3 COFF文件格式編程示例 106
5.5.4 COFF文件中的符號 107
5.5.5 鏈接器對塊的處理 108
5.6 存儲區分配與CMD文件 109
5.6.1 文件鏈接方法 109
5.6.2 鏈接命令文件 109
5.6.3 TMS320VC5509A的CMD文件 110
本章小結 113
習題與思考題 113
第6章 基於C語言的DSP芯片軟件開發 114
6.1 引言 114
6.2 TMS320C55x的C語言 114
6.2.1 變量和常數 116
6.2.2 函數 119
6.2.3 預處理 121
6.2.4 asm語句 122
6.3 C語言程序代碼的優化 123
6.3.1 C語言程序代碼編譯分析 123
6.3.2 C語言程序的優化方法 128
本章小結 139
習題與思考題 139
第7章 基於C55x匯編語言的DSP芯片軟件開發 140
7.1 匯編語言源程序格式 140
7.2 匯編源程序中常見符號和偽指令 142
7.3 匯編指令系統 145
7.4 尋址方式 148
7.4.1 絕對尋址方式 148
7.4.2 直接尋址方式 149
7.4.3 間接尋址方式 151
7.5 匯編代碼的優化 160
7.6 匯編語言和C的混合編程方法 160
7.6.1 獨立的C和匯編模塊接口 161
7.6.2 從C程序中訪問匯編程序變量 162
7.6.3 在匯編程序中訪問C程序變量 163
7.6.4 在C程序中直接嵌入匯編語句 164
7.6.5 TMS320C55x混合編程舉例 164
本章小結 165
習題與思考題 165
第8章 DSP算法軟件開發實例 166
8.1 引言 166
8.2 基於FFT的單音檢測算法原理 166
8.2.1 單音檢測算法概述 166
8.2.2 DFT的基本原理 167
8.2.3 FFT算法的導出 167
8.3 基於MATLAB的DSP算法模擬 172
8.3.1 MATLAB簡介 172
8.3.2 單音檢測算法的MATLAB模擬 173
8.4 單音檢測算法的浮點C語言實現 175
8.5 單音檢測算法的定點C語言實現 180
8.5.1 FFT運算溢出及避免方法 180
8.5.2 單音檢測算法的定點C語言實現 181
8.6 單音檢測算法的定點DSP芯片實現 187
8.7 多路單音檢測算法的實現 190
本章小結 193
習題與思考題 194
第9章 DSP系統的硬件設計 195
9.1 引言 195
9.2 DSP系統硬件設計的基本步驟 195
9.3 最小DSP系統的硬件設計 196
9.3.1 電源電路 196
9.3.2 復位電路 199
9.3.3 時鐘電路 200
9.3.4 JTAG電路 201
9.3.5 引腳的電平轉換與處理 202
9.3.6 硬件系統的可靠性設計 205
9.4 外部存儲器接口設計 207
9.4.1 TMS320C54x存儲器接口設計 208
9.4.2 TMS320C55x存儲器接口設計 211
9.4.3 KeyStone系列DSP存儲器接口設計 212
9.5 模數接口電路的設計 213
9.5.1 與TLV320AIC23B接口的設計 213
9.5.2 與MC145483接口的設計 214
9.5.3 與多種音頻器件接口的設計 214
9.6 通信接口的設計 215
9.6.1 通用串行接口 215
9.6.2 同步串行通信接口電路設計 216
9.6.3 異步串行通信接口電路設計 216
9.7 主從式系統的設計 217
9.7.1 共享存儲器實現雙機通信 218
9.7.2 利用HPI實現雙機通信 219
9.7.3 OMAP5910芯片的雙核通信 220
本章小結 221
習題與思考題 221
第10章 DSP芯片外設驅動程序的開發 222
10.1 引言 222
10.2 基於CSL的外設程序設計 223
10.2.1 CSL簡介 223
10.2.2 CSL的特點 225
10.2.3 CSL程序開發基本步驟 227
10.3 中斷控製程序的開發 236
10.3.1 中斷初始化 237
10.3.2 中斷服務程序的開發 240
10.3.3 中斷控製程序實例 241
10.4 典型接口功能的控製程序開發 244
10.4.1 外部存儲的控製程序 244
10.4.2 串行A/D和D/A功能的控製程序 247
10.4.3 外部主機通信功能的控製程序 252
10.5 DMA的控製程序開發 253
10.5.1 DSP芯片的DMA數據傳輸模式 254
10.5.2 DSP芯片的DMA傳輸地址 255
10.5.3 DSP芯片的DMA事件和中斷 255
10.5.4 DMA控製程序舉例 257
本章小結 260
習題與思考題 260
第11章 DSP離線系統的開發 261
11.1 聯機系統和離線系統 261
11.2 DSP芯片的BOOT 263
11.2.1 BOOT簡介 263
11.2.2 BOOT過程 264
11.2.3 BOOT表 269
11.2.4 二次BOOT 270
11.3 DSP離線系統實現 271
11.3.1 硬件設計 271
11.3.2 軟件代碼準備與燒錄 272
11.4 DSP離線系統軟件開發實例 275
11.4.1 並口Flash離線系統的軟件開發 275
11.4.2 串口Flash離線系統的軟件開發 277
本章小結 281
習題與思考題 281
第12章 DSP多任務系統的開發 282
12.1 引言 282
12.2 多任務管理 282
12.2.1 前後台系統 282
12.2.2 操作系統 283
12.2.3 實時操作系統 285
12.3 TI RTOS 286
12.3.1 TI RTOS的實時多任務內核 286
12.3.2 SYS/BIOS的核心功能 289
12.3.3 TI RTOS中的其他軟件 293
12.4 基於TI RTOS的軟件開發 294
12.4.1 單核DSP片上系統的RTOS軟件開發 294
12.4.2 多核DSP片上系統的RTOS軟件開發 303
12.4.3 基於OpenMP模型的並行代碼設計 306
12.5 DSP片上系統的RTOS工程示例 309
本章小結 311
習題與思考題 311
第13章 DSP系統的開發實例 312
13.1 引言 312
13.2 基於TMS320VC5509A的DSP應用系統實例 312
13.2.1 系統簡介 312
13.2.2 系統架構 313
13.3 實例系統的硬件開發 314
13.3.1 器件選型 314
13.3.2 接口設計 316
13.3.3 電路設計 317
13.3.4 電路調試 319
13.4 實例系統的軟件開發 320
13.4.1 算法模擬程序編寫和測試 321
13.4.2 接口控製程序編寫和調試 323
13.5 實例系統的軟硬件集成 330
本章小結 340
習題與思考題 341

附錄A 縮略詞的中英文對照 342
附錄B TMS320VC5509A PGE LQFP引腳圖及定義 346
附錄C TMS320C55x 指令集 348
附錄D CSL庫函數 349
附錄E 代碼實例 350
附錄F CCS V5.5的安裝 351
附錄G 8位μ律PCM/16位線性轉換的C語言程序 352
附錄H μ律PCM到線性變換表 354
參考文獻 355