數(shù)字濾波器的MATLAB與FPGA實現(xiàn)(第3版)
定 價:88 元
- 作者:杜勇
- 出版時間:2024/9/1
- ISBN:9787121485381
- 出 版 社:電子工業(yè)出版社
- 中圖法分類:TN713
- 頁碼:
- 紙張:
- 版次:
- 開本:16開
本書以Xilinx公司的Artix-7系列FPGA器件為開發(fā)平臺,以MATLAB及Verilog HDL語言為開發(fā)工具,詳細闡述數(shù)字濾波器的FPGA實現(xiàn)原理、結構、方法及仿真測試過程,并通過大量工程實例分析使用FPGA實現(xiàn)濾波器的具體技術細節(jié),主要包括FIR濾波器、IIR濾波器、多速率濾波器、自適應濾波器、變換域濾波器、DPSK調(diào)制解調(diào)等內(nèi)容。本書思路清晰、語言流暢、分析透徹,在簡明闡述設計原理的基礎上,主要追求對工程實踐的指導性,力求使讀者在較短的時間內(nèi)掌握數(shù)字濾波器的FPGA設計知識和技能。編著者精心設計了與本書配套的FPGA數(shù)字信號處理開發(fā)板,詳細講解了工程實例的板載測試步驟及方法,形成了從理論到實踐的完整學習過程,可以有效加深讀者對數(shù)字濾波器技術的理解,提高學習效率。本書的配套資源包含完整的MATLAB及Verilog HDL實例工程代碼。讀者可以關注編著者的微信公眾號“杜勇FPGA”下載程序資料及開發(fā)環(huán)境,關注B站UP主“杜勇FPGA”觀看教學視頻。
杜勇,四川省廣安市人,高級工程師。1999年于湖南大學獲電子工程專業(yè)學士學位,2005年于國防科技大學獲信息與通信工程專業(yè)碩士學位。主要從事數(shù)字信號處理、無線通信以及FPGA應用技術研究。發(fā)表學術論文十余篇,出版《數(shù)字濾波器的MATLAB與FPGA實現(xiàn)(第2版)》、《數(shù)字通信同步技術的MATLAB與FPGA實現(xiàn)》、《數(shù)字調(diào)制解調(diào)技術的MATLAB與FPGA實現(xiàn)》等多部著作。
目 錄
第1章 數(shù)字濾波器及FPGA概述1
1.1 濾波器概述1
1.1.1 濾波器簡介1
1.1.2 數(shù)字濾波器的分類3
1.1.3 濾波器的特征參數(shù)4
1.2 FPGA基本知識5
1.2.1 FPGA的基本概念及發(fā)展歷程5
1.2.2 FPGA的結構和工作原理7
1.2.3 IP核的概念12
1.3 FPGA在數(shù)字信號處理中的應用13
1.4 AMD系列器件簡介14
1.4.1 AMD系列器件概覽14
1.4.2 7系列FPGA芯片簡介16
1.5 FPGA信號處理板CXD72017
1.6 小結19
第2章 設計語言及環(huán)境介紹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軟件開發(fā)步驟27
2.3.1 流水燈電路功能27
2.3.2 流水燈電路設計輸入與實現(xiàn)28
2.3.3 程序下載32
2.4 MATLAB軟件簡介33
2.5 MATLAB的常用信號處理函數(shù)36
2.5.1 常用的信號產(chǎn)生函數(shù)36
2.5.2 常用的信號分析函數(shù)38
2.5.3 濾波器設計分析工具FDATOOL43
2.6 MATLAB與Vivado的聯(lián)合應用44
2.7 小結45
第3章 FPGA實現(xiàn)數(shù)字信號處理基礎46
3.1 數(shù)的表示46
3.1.1 萊布尼茨與二進制46
3.1.2 定點數(shù)表示法47
3.1.3 浮點數(shù)表示法49
3.2 FPGA中數(shù)的運算52
3.2.1 加/減法運算52
3.2.2 乘法運算55
3.2.3 除法運算56
3.2.4 有效數(shù)據(jù)位的計算56
3.3 有限字長效應59
3.3.1 字長效應的產(chǎn)生因素59
3.3.2 A/D轉換的字長效應60
3.3.3 數(shù)字濾波器系數(shù)的字長效應61
3.3.4 濾波器運算中的字長效應62
3.4 小結63
第4章 FIR濾波器原理及Verilog HDL設計64
4.1 FIR濾波器的理論基礎64
4.1.1 線性時不變系統(tǒng)64
4.1.2 FIR濾波器的原理66
4.1.3 FIR濾波器的特性67
4.1.4 FIR濾波器的結構形式71
4.2 FIR濾波器的設計方法74
4.2.1 窗函數(shù)法74
4.2.2 頻率取樣法76
4.2.3 等紋波切比雪夫逼近法77
4.3 FIR濾波器的MATLAB設計78
4.3.1 采用fir1函數(shù)設計78
4.3.2 采用kaiserord函數(shù)設計83
4.3.3 采用fir2函數(shù)設計84
4.3.4 采用firpm函數(shù)設計85
4.4 FIR濾波器的系數(shù)量化方法88
4.4.1 常規(guī)的FIR濾波器系數(shù)量化原理88
4.4.2 濾波器系數(shù)量化前后的性能對比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 測試數(shù)據(jù)模塊設計及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核并完成參數(shù)設置115
5.1.2 并行結構FIR核濾波器仿真118
5.2 FIR核設計串行結構濾波器119
5.2.1 改進的濾波器系數(shù)量化方法119
5.2.2 MATLAB設計濾波器系數(shù)文件120
5.2.3 串行結構FIR核濾波器設計121
5.3 FIR核設計濾波器的板載測試124
5.3.1 硬件接口電路及板載測試程序124
5.3.2 板載測試驗證125
5.4 FIR核的系數(shù)重載設計126
5.4.1 FIR核的系數(shù)重載方法126
5.4.2 系數(shù)可重載的FIR濾波器設計129
5.5 系數(shù)可重載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函數(shù)設計144
6.3.2 采用cheby1函數(shù)設計144
6.3.3 采用cheby2函數(shù)設計145
6.3.4 采用ellip函數(shù)設計145
6.3.5 采用yulewalk函數(shù)設計146
6.3.6 幾種設計函數(shù)的比較147
6.3.7 采用FDATOOL設計149
6.4 IIR濾波器的系數(shù)量化方法150
6.4.1 量化直接型IIR濾波器系數(shù)150
6.4.2 IIR濾波器系數(shù)的字長效應151
6.5 直接型IIR濾波器設計154
6.5.1 直接型IIR濾波器的實現(xiàn)方法154
6.5.2 零點系數(shù)的Verilog HDL設計156
6.5.3 極點系數(shù)的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 級聯(lián)型IIR濾波器系數(shù)量化設計166
6.7.1 將IIR濾波器轉換成級聯(lián)型結構166
6.7.2 對級聯(lián)型IIR濾波器系數(shù)進行量化167
6.8 級聯(lián)型IIR濾波器設計及仿真168
6.8.1 級聯(lián)型IIR濾波器設計168
6.8.2 級聯(lián)型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 抽取與內(nèi)插處理177
7.2.1 整數(shù)倍抽取177
7.2.2 整數(shù)倍內(nèi)插179
7.2.3 比值為有理數(shù)的抽樣頻率轉換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濾波器設計中數(shù)據(jù)位寬的討論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 單級半帶濾波器系數(shù)的設計205
8.2.2 半帶濾波器IP核的創(chuàng)建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 多級抽取系統(tǒng)的Verilog HDL設計215
8.4.3 多級抽取系統(tǒng)的測試仿真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算法原理及實現(xiàn)結構227
9.3.1 LMS算法的原理227
9.3.2 LMS算法的實現(xiàn)結構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 利用線性濾波器實現(xiàn)通道失配校正236
9.5.3 校正算法的MATLAB仿真237
9.6 通道失配校正算法的Verilog HDL設計239
9.6.1 確定運算字長及數(shù)據(jù)截位方法239
9.6.2 計算時鐘頻率并分配各步驟所需時鐘周期241
9.6.3 算法的Verilog HDL實現(xiàn)241
9.6.4 FPGA實現(xiàn)后的仿真測試245
9.6.5 關于通道失配校正算法數(shù)據(jù)范圍的討論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實現(xiàn)260
10.3.1 自適應天線陣的Verilog HDL設計260
10.3.2 FPGA實現(xiàn)后的仿真測試264
10.4 自適應陷波器原理267
10.5 自適應陷波器的MATLAB仿真268
10.6 自適應陷波器的FPGA實現(xiàn)270
10.6.1 自適應陷波器的Verilog HDL設計270
10.6.2 FPGA實1