數字濾波器的MATLAB與FPGA實現(第3版)

杜勇

  • 出版商: 電子工業
  • 出版日期: 2024-09-01
  • 定價: $528
  • 售價: 8.5$449
  • 語言: 簡體中文
  • 頁數: 360
  • ISBN: 7121485389
  • ISBN-13: 9787121485381
  • 相關分類: FPGAMatlab
  • 下單後立即進貨 (約4週~6週)

商品描述

本書以Xilinx公司的Artix-7系列FPGA器件為開發平臺,以MATLAB及Verilog HDL語言為開發工具,詳細闡述數字濾波器的FPGA實現原理、結構、方法及模擬測試過程,並通過大量工程實例分析使用FPGA實現濾波器的具體技術細節,主要包括FIR濾波器、IIR濾波器、多速率濾波器、自適應濾波器、變換域濾波器、DPSK調制解調等內容。本書思路清晰、語言流暢、分析透徹,在簡明闡述設計原理的基礎上,主要追求對工程實踐的指導性,力求使讀者在較短的時間內掌握數字濾波器的FPGA設計知識和技能。編著者精心設計了與本書配套的FPGA數字信號處理開發板,詳細講解了工程實例的板載測試步驟及方法,形成了從理論到實踐的完整學習過程,可以有效加深讀者對數字濾波器技術的理解,提高學習效率。本書的配套資源包含完整的MATLAB及Verilog HDL實例工程代碼。讀者可以關註編著者的微信公眾號“杜勇FPGA”下載程序資料及開發環境,關註B站UP主“杜勇FPGA”觀看教學視頻。

目錄大綱

目 錄
第1章 數字濾波器及FPGA概述 1
1.1 濾波器概述 1
1.1.1 濾波器簡介 1
1.1.2 數字濾波器的分類 3
1.1.3 濾波器的特徵參數 4
1.2 FPGA基本知識 5
1.2.1 FPGA的基本概念及發展歷程 5
1.2.2 FPGA的結構和工作原理 7
1.2.3 IP核的概念 12
1.3 FPGA在數字信號處理中的應用 13
1.4 AMD系列器件簡介 14
1.4.1 AMD系列器件概覽 14
1.4.2 7系列FPGA芯片簡介 16
1.5 FPGA信號處理板CXD720 17
1.6 小結 19
第2章 設計語言及環境介紹 20
2.1 Verilog HDL語言簡介 20
2.1.1 HDL語言 20
2.1.2 Verilog HDL語言 21
2.1.3 本書中的Verilog HDL代碼設計原則 24
2.2 FPGA設計流程 24
2.3 Vivado軟件開發步驟 27
2.3.1 流水燈電路功能 27
2.3.2 流水燈電路設計輸入與實現 28
2.3.3 程序下載 32
2.4 MATLAB軟件簡介 33
2.5 MATLAB的常用信號處理函數 36
2.5.1 常用的信號產生函數 36
2.5.2 常用的信號分析函數 38
2.5.3 濾波器設計分析工具FDATOOL 43
2.6 MATLAB與Vivado的聯合應用 44
2.7 小結 45
第3章 FPGA實現數字信號處理基礎 46
3.1 數的表示 46
3.1.1 萊布尼茨與二進制 46
3.1.2 定點數表示法 47
3.1.3 浮點數表示法 49
3.2 FPGA中數的運算 52
3.2.1 加/減法運算 52
3.2.2 乘法運算 55
3.2.3 除法運算 56
3.2.4 有效數據位的計算 56
3.3 有限字長效應 59
3.3.1 字長效應的產生因素 59
3.3.2 A/D轉換的字長效應 60
3.3.3 數字濾波器系數的字長效應 61
3.3.4 濾波器運算中的字長效應 62
3.4 小結 63
第4章 FIR濾波器原理及Verilog HDL設計 64
4.1 FIR濾波器的理論基礎 64
4.1.1 線性時不變系統 64
4.1.2 FIR濾波器的原理 66
4.1.3 FIR濾波器的特性 67
4.1.4 FIR濾波器的結構形式 71
4.2 FIR濾波器的設計方法 74
4.2.1 窗函數法 74
4.2.2 頻率取樣法 76
4.2.3 等紋波切比雪夫逼近法 77
4.3 FIR濾波器的MATLAB設計 78
4.3.1 採用fir1函數設計 78
4.3.2 採用kaiserord函數設計 83
4.3.3 採用fir2函數設計 84
4.3.4 採用firpm函數設計 85
4.4 FIR濾波器的系數量化方法 88
4.4.1 常規的FIR濾波器系數量化原理 88
4.4.2 濾波器系數量化前後的性能對比 89
4.4.3 採用FDATOOL設計濾波器 90
4.5 並行結構FIR濾波器的Verilog HDL設計 92
4.5.1 並行結構FIR濾波器原理 92
4.5.2 並行結構FIR濾波器的Verilog HDL設計 93
4.5.3 乘法器IP核的應用 96
4.5.4 測試數據模塊設計及DDS核的應用 97
4.5.5 並行結構FIR濾波器的模擬測試 99
4.6 串行結構FIR濾波器的Verilog HDL設計 102
4.6.1 串行結構FIR濾波器原理 102
4.6.2 串行結構FIR濾波器的Verilog HDL設計 102
4.6.3 串行結構FIR濾波器的模擬測試 106
4.6.4 串行結構FIR濾波器的運算時序 107
4.7 FIR濾波器的板載測試 108
4.7.1 硬件接口電路 108
4.7.2 板載測試程序 109
4.7.3 板載測試驗證 113
4.8 小結 114
第5章 FIR濾波器IP核設計 115
5.1 FIR核設計並行結構濾波器 115
5.1.1 新建FIR核並完成參數設置 115
5.1.2 並行結構FIR核濾波器模擬 118
5.2 FIR核設計串行結構濾波器 119
5.2.1 改進的濾波器系數量化方法 119
5.2.2 MATLAB設計濾波器系數文件 120
5.2.3 串行結構FIR核濾波器設計 121
5.3 FIR核設計濾波器的板載測試 124
5.3.1 硬件接口電路及板載測試程序 124
5.3.2 板載測試驗證 125
5.4 FIR核的系數重載設計 126
5.4.1 FIR核的系數重載方法 126
5.4.2 系數可重載的FIR濾波器設計 129
5.5 系數可重載FIR濾波器的板載測試 132
5.5.1 硬件接口電路及板載測試程序 132
5.5.2 板載測試驗證 133
5.6 小結 134
第6章 IIR濾波器設計 135
6.1 IIR濾波器的理論基礎 135
6.1.1 IIR濾波器的原理及特性 135
6.1.2 IIR濾波器的結構形式 136
6.1.3 IIR濾波器與FIR濾波器的比較 138
6.2 IIR濾波器的設計方法 139
6.2.1 幾種典型的模擬濾波器 139
6.2.2 原型轉換設計方法 142
6.2.3 直接設計方法 143
6.3 IIR濾波器的MATLAB設計 144
6.3.1 採用butter函數設計 144
6.3.2 採用cheby1函數設計 144
6.3.3 採用cheby2函數設計 145
6.3.4 採用ellip函數設計 145
6.3.5 採用yulewalk函數設計 146
6.3.6 幾種設計函數的比較 147
6.3.7 採用FDATOOL設計 149
6.4 IIR濾波器的系數量化方法 150
6.4.1 量化直接型IIR濾波器系數 150
6.4.2 IIR濾波器系數的字長效應 151
6.5 直接型IIR濾波器設計 154
6.5.1 直接型IIR濾波器的實現方法 154
6.5.2 零點系數的Verilog HDL設計 156
6.5.3 極點系數的Verilog HDL設計 157
6.5.4 頂層文件的設計 159
6.5.5 直接型IIR濾波器模擬測試 161
6.5.6 直接型IIR濾波器的改進設計 163
6.6 直接型IIR濾波器板載測試 163
6.6.1 硬件接口電路及板載測試程序 163
6.6.2 板載測試驗證 164
6.7 級聯型IIR濾波器系數量化設計 166
6.7.1 將IIR濾波器轉換成級聯型結構 166
6.7.2 對級聯型IIR濾波器系數進行量化 167
6.8 級聯型IIR濾波器設計及模擬 168
6.8.1 級聯型IIR濾波器設計 168
6.8.2 級聯型IIR濾波器模擬測試 172
6.9 小結 173
第7章 多速率信號處理原理及CIC濾波器設計 174
7.1 多速率信號處理基礎知識 174
7.1.1 多速率信號處理的概念及作用 174
7.1.2 多速率信號處理的一般步驟 175
7.1.3 軟件無線電中的多速率信號處理 176
7.2 抽取與內插處理 177
7.2.1 整數倍抽取 177
7.2.2 整數倍內插 179
7.2.3 比值為有理數的抽樣頻率轉換 181
7.3 CIC濾波器原理及應用條件 181
7.3.1 多級CIC濾波器原理及模擬 181
7.3.2 單級CIC濾波器原理及模擬 182
7.3.3 CIC濾波器的應用條件分析 184
7.4 單級CIC濾波器的Verilog HDL設計及測試 185
7.4.1 單級CIC濾波器的Verilog HDL設計 185
7.4.2 單級CIC濾波器的模擬測試 186
7.5 多級CIC濾波器的Verilog HDL設計及測試 188
7.5.1 多級CIC濾波器結構分析 188
7.5.2 多級CIC濾波器設計中數據位寬的討論 189
7.5.3 多級CIC濾波器的Verilog HDL設計 190
7.5.4 多級CIC濾波器的模擬測試 193
7.6 CIC濾波器IP核的使用 195
7.6.1 CIC濾波器IP核簡介 195
7.6.2 IP核設計多級CIC抽取濾波器及模擬測試 197
7.7 CIC濾波器的板載測試 198
7.7.1 硬件接口電路及板載測試程序 198
7.7.2 板載測試驗證 199
7.8 小結 200
第8章 半帶濾波器設計 202
8.1 FIR半帶濾波器原理及MATLAB設計 202
8.1.1 半帶濾波器的原理 202
8.1.2 半帶濾波器的MATLAB設計 203
8.2 單級半帶濾波器的Verilog HDL設計及模擬 205
8.2.1 單級半帶濾波器系數的設計 205
8.2.2 半帶濾波器IP核的創建 206
8.2.3 半帶濾波器的模擬測試 208
8.3 多級半帶濾波器MATLAB設計 210
8.3.1 各級半帶濾波器的總體技術要求 210
8.3.2 允許過渡帶有混疊的設計 210
8.3.3 不允許過渡帶有混疊的設計 211
8.4 多級半帶濾波器的FPGA設計 212
8.4.1 多級半帶濾波器的性能指標設計 212
8.4.2 多級抽取系統的Verilog HDL設計 215
8.4.3 多級抽取系統的測試模擬 217
8.5 多級半帶濾波器的板載測試 219
8.5.1 硬件接口電路及板載測試程序 219
8.5.2 板載測試驗證 220
8.6 小結 221
第9章 自適應濾波器原理及Verilog HDL設計 222
9.1 自適應濾波器簡介 222
9.1.1 自適應濾波器的概念 222
9.1.2 自適應濾波器的應用 223
9.2 自適應算法的一般原理 225
9.2.1 常用誤差準則 226
9.2.2 維納-霍夫方程 227
9.3 LMS算法原理及實現結構 227
9.3.1 LMS算法的原理 227
9.3.2 LMS算法的實現結構 228
9.3.3 LMS算法的字長效應 229
9.3.4 符號LMS算法原理 230
9.4 LMS算法的MATLAB模擬 231
9.4.1 蒙特-卡羅模擬方法 231
9.4.2 LMS算法模擬模型 232
9.4.3 LMS算法模擬 232
9.5 自適應線性濾波器原理及模擬 235
9.5.1 自適應線性濾波器原理 235
9.5.2 利用線性濾波器實現通道失配校正 236
9.5.3 校正算法的MATLAB模擬 237
9.6 通道失配校正算法的Verilog HDL設計 239
9.6.1 確定運算字長及數據截位方法 239
9.6.2 計算時鐘頻率並分配各步驟所需時鐘周期 241
9.6.3 算法的Verilog HDL實現 241
9.6.4 FPGA實現後的模擬測試 245
9.6.5 關於通道失配校正算法數據範圍的討論 247
9.7 通道失配校正算法的板載測試 247
9.7.1 硬件接口電路 247
9.7.2 板載測試程序 248
9.7.3 板載測試驗證 250
9.8 小結 252
第10章 自適應天線陣及陷波器Verilog HDL設計 253
10.1 自適應天線陣的原理 253
10.2 自適應天線陣的MATLAB模擬 255
10.3 自適應天線陣的FPGA實現 260
10.3.1 自適應天線陣的Verilog HDL設計 260
10.3.2 FPGA實現後的模擬測試 264
10.4 自適應陷波器原理 267
10.5 自適應陷波器的MATLAB模擬 268
10.6 自適應陷波器的FPGA實現 270
10.6.1 自適應陷波器的Verilog HDL設計 270
10.6.2 FPGA實現後的模擬測試 273
10.7 自適應陷波器的板載測試 274
10.7.1 硬件接口電路 274
10.7.2 板載測試程序 275
10.7.3 板載測試驗證 277
10.8 小結 278
第11章 變換域濾波器Verilog HDL設計 279
11.1 變換域濾波器簡介 279
11.2 離散傅里葉變換簡介 280
11.2.1 離散傅里葉變換原理 280
11.2.2 柵欄效應與頻率分辨率選擇方法 281
11.3 快速傅里葉變換原理及模擬 283
11.3.1 FFT算法的基本思想 283
11.3.2 FFT算法的MATLAB模擬 284
11.4 頻域濾波器的原理及MATLAB模擬 285
11.4.1 抗窄帶乾擾濾波器的原理 285
11.4.2 檢測門限的選取 286
11.4.3 頻域濾波器的MATLAB模擬 287
11.5 頻域濾波器FPGA實現 290
11.5.1 頻域濾波器的高效結構設計 290
11.5.2 簡易頻域濾波器原理及模擬 292
11.5.3 FFT核設置方法 295
11.5.4 頻域濾波器的頂層文件Verilog HDL設計 297
11.5.5 FFT基本接口時序模擬分析 298
11.5.6 IFFT基本接口時序模擬分析 299
11.5.7 頻域濾波模塊Verilog HDL設計 301
11.5.8 FPGA實現後的模擬測試 303
11.6 頻域濾波器的板載測試 304
11.6.1 硬件接口電路 304
11.6.2 板載測試程序 305
11.6.3 板載測試驗證 307
11.7 小結 308
第12章 DPSK解調系統Verilog HDL設計 309
12.1 數字接收機的一般原理 309
12.1.1 通用數字接收機處理平臺 309
12.1.2 基本調制/解調技術 310
12.1.3 改進的數字調制解調技術 312
12.2 DPSK調制/解調原理 313
12.2.1 DPSK調制原理及信號特徵 313
12.2.2 DPSK的MATLAB模擬 315
12.2.3 DPSK解調原理 318
12.3 DPSK解調參數設計 320
12.3.1 數字下變頻器的設計 320
12.3.2 低通濾波器參數的設計 321
12.3.3 數字鑒相器的設計 323
12.3.4 環路濾波器的設計 323
12.3.5 載波同步環設計的一般步驟 325
12.4 DPSK解調電路的Verilog HDL設計 327
12.4.1 頂層模塊的Verilog HDL設計 327
12.4.2 鑒相器及環路濾波器的Verilog HDL設計 329
12.4.3 DPSK解調電路的模擬測試 331
12.5 DPSK解調電路的板載測試 333
12.5.1 硬件接口電路 333
12.5.2 板載測試程序 334
12.5.3 板載測試驗證 336
12.6 小結 337
參考文獻 338