數(shù)字濾波器的MATLAB與FPGA實現(xiàn)(第3版)
定 價:88 元
- 作者:杜勇
- 出版時間:2024/9/1
- ISBN:9787121485381
- 出 版 社:電子工業(yè)出版社
- 中圖法分類:TN713
- 頁碼:
- 紙張:
- 版次:
- 開本:16開
本書以Xilinx公司的Artix-7系列FPGA器件為開發(fā)平臺,以MATLAB及Verilog HDL語言為開發(fā)工具,詳細(xì)闡述數(shù)字濾波器的FPGA實現(xiàn)原理、結(jié)構(gòu)、方法及仿真測試過程,并通過大量工程實例分析使用FPGA實現(xiàn)濾波器的具體技術(shù)細(xì)節(jié),主要包括FIR濾波器、IIR濾波器、多速率濾波器、自適應(yīng)濾波器、變換域濾波器、DPSK調(diào)制解調(diào)等內(nèi)容。本書思路清晰、語言流暢、分析透徹,在簡明闡述設(shè)計原理的基礎(chǔ)上,主要追求對工程實踐的指導(dǎo)性,力求使讀者在較短的時間內(nèi)掌握數(shù)字濾波器的FPGA設(shè)計知識和技能。編著者精心設(shè)計了與本書配套的FPGA數(shù)字信號處理開發(fā)板,詳細(xì)講解了工程實例的板載測試步驟及方法,形成了從理論到實踐的完整學(xué)習(xí)過程,可以有效加深讀者對數(shù)字濾波器技術(shù)的理解,提高學(xué)習(xí)效率。本書的配套資源包含完整的MATLAB及Verilog HDL實例工程代碼。讀者可以關(guān)注編著者的微信公眾號“杜勇FPGA”下載程序資料及開發(fā)環(huán)境,關(guān)注B站UP主“杜勇FPGA”觀看教學(xué)視頻。
杜勇,四川省廣安市人,高級工程師。1999年于湖南大學(xué)獲電子工程專業(yè)學(xué)士學(xué)位,2005年于國防科技大學(xué)獲信息與通信工程專業(yè)碩士學(xué)位。主要從事數(shù)字信號處理、無線通信以及FPGA應(yīng)用技術(shù)研究。發(fā)表學(xué)術(shù)論文十余篇,出版《數(shù)字濾波器的MATLAB與FPGA實現(xiàn)(第2版)》、《數(shù)字通信同步技術(shù)的MATLAB與FPGA實現(xiàn)》、《數(shù)字調(diào)制解調(diào)技術(shù)的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的結(jié)構(gòu)和工作原理7
1.2.3 IP核的概念12
1.3 FPGA在數(shù)字信號處理中的應(yīng)用13
1.4 AMD系列器件簡介14
1.4.1 AMD系列器件概覽14
1.4.2 7系列FPGA芯片簡介16
1.5 FPGA信號處理板CXD72017
1.6 小結(jié)19
第2章 設(shè)計語言及環(huán)境介紹20
2.1 Verilog HDL語言簡介20
2.1.1 HDL語言20
2.1.2 Verilog HDL語言21
2.1.3 本書中的Verilog HDL代碼設(shè)計原則24
2.2 FPGA設(shè)計流程24
2.3 Vivado軟件開發(fā)步驟27
2.3.1 流水燈電路功能27
2.3.2 流水燈電路設(shè)計輸入與實現(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 濾波器設(shè)計分析工具FDATOOL43
2.6 MATLAB與Vivado的聯(lián)合應(yīng)用44
2.7 小結(jié)45
第3章 FPGA實現(xiàn)數(shù)字信號處理基礎(chǔ)46
3.1 數(shù)的表示46
3.1.1 萊布尼茨與二進(jìn)制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 有限字長效應(yīng)59
3.3.1 字長效應(yīng)的產(chǎn)生因素59
3.3.2 A/D轉(zhuǎn)換的字長效應(yīng)60
3.3.3 數(shù)字濾波器系數(shù)的字長效應(yīng)61
3.3.4 濾波器運算中的字長效應(yīng)62
3.4 小結(jié)63
第4章 FIR濾波器原理及Verilog HDL設(shè)計64
4.1 FIR濾波器的理論基礎(chǔ)64
4.1.1 線性時不變系統(tǒng)64
4.1.2 FIR濾波器的原理66
4.1.3 FIR濾波器的特性67
4.1.4 FIR濾波器的結(jié)構(gòu)形式71
4.2 FIR濾波器的設(shè)計方法74
4.2.1 窗函數(shù)法74
4.2.2 頻率取樣法76
4.2.3 等紋波切比雪夫逼近法77
4.3 FIR濾波器的MATLAB設(shè)計78
4.3.1 采用fir1函數(shù)設(shè)計78
4.3.2 采用kaiserord函數(shù)設(shè)計83
4.3.3 采用fir2函數(shù)設(shè)計84
4.3.4 采用firpm函數(shù)設(shè)計85
4.4 FIR濾波器的系數(shù)量化方法88
4.4.1 常規(guī)的FIR濾波器系數(shù)量化原理88
4.4.2 濾波器系數(shù)量化前后的性能對比89
4.4.3 采用FDATOOL設(shè)計濾波器90
4.5 并行結(jié)構(gòu)FIR濾波器的Verilog HDL設(shè)計92
4.5.1 并行結(jié)構(gòu)FIR濾波器原理92
4.5.2 并行結(jié)構(gòu)FIR濾波器的Verilog HDL設(shè)計93
4.5.3 乘法器IP核的應(yīng)用96
4.5.4 測試數(shù)據(jù)模塊設(shè)計及DDS核的應(yīng)用97
4.5.5 并行結(jié)構(gòu)FIR濾波器的仿真測試99
4.6 串行結(jié)構(gòu)FIR濾波器的Verilog HDL設(shè)計102
4.6.1 串行結(jié)構(gòu)FIR濾波器原理102
4.6.2 串行結(jié)構(gòu)FIR濾波器的Verilog HDL設(shè)計102
4.6.3 串行結(jié)構(gòu)FIR濾波器的仿真測試106
4.6.4 串行結(jié)構(gòu)FIR濾波器的運算時序107
4.7 FIR濾波器的板載測試108
4.7.1 硬件接口電路108
4.7.2 板載測試程序109
4.7.3 板載測試驗證113
4.8 小結(jié)114
第5章 FIR濾波器IP核設(shè)計115
5.1 FIR核設(shè)計并行結(jié)構(gòu)濾波器115
5.1.1 新建FIR核并完成參數(shù)設(shè)置115
5.1.2 并行結(jié)構(gòu)FIR核濾波器仿真118
5.2 FIR核設(shè)計串行結(jié)構(gòu)濾波器119
5.2.1 改進(jìn)的濾波器系數(shù)量化方法119
5.2.2 MATLAB設(shè)計濾波器系數(shù)文件120
5.2.3 串行結(jié)構(gòu)FIR核濾波器設(shè)計121
5.3 FIR核設(shè)計濾波器的板載測試124
5.3.1 硬件接口電路及板載測試程序124
5.3.2 板載測試驗證125
5.4 FIR核的系數(shù)重載設(shè)計126
5.4.1 FIR核的系數(shù)重載方法126
5.4.2 系數(shù)可重載的FIR濾波器設(shè)計129
5.5 系數(shù)可重載FIR濾波器的板載測試132
5.5.1 硬件接口電路及板載測試程序132
5.5.2 板載測試驗證133
5.6 小結(jié)134
第6章 IIR濾波器設(shè)計135
6.1 IIR濾波器的理論基礎(chǔ)135
6.1.1 IIR濾波器的原理及特性135
6.1.2 IIR濾波器的結(jié)構(gòu)形式136
6.1.3 IIR濾波器與FIR濾波器的比較138
6.2 IIR濾波器的設(shè)計方法139
6.2.1 幾種典型的模擬濾波器139
6.2.2 原型轉(zhuǎn)換設(shè)計方法142
6.2.3 直接設(shè)計方法143
6.3 IIR濾波器的MATLAB設(shè)計144
6.3.1 采用butter函數(shù)設(shè)計144
6.3.2 采用cheby1函數(shù)設(shè)計144
6.3.3 采用cheby2函數(shù)設(shè)計145
6.3.4 采用ellip函數(shù)設(shè)計145
6.3.5 采用yulewalk函數(shù)設(shè)計146
6.3.6 幾種設(shè)計函數(shù)的比較147
6.3.7 采用FDATOOL設(shè)計149
6.4 IIR濾波器的系數(shù)量化方法150
6.4.1 量化直接型IIR濾波器系數(shù)150
6.4.2 IIR濾波器系數(shù)的字長效應(yīng)151
6.5 直接型IIR濾波器設(shè)計154
6.5.1 直接型IIR濾波器的實現(xiàn)方法154
6.5.2 零點系數(shù)的Verilog HDL設(shè)計156
6.5.3 極點系數(shù)的Verilog HDL設(shè)計157
6.5.4 頂層文件的設(shè)計159
6.5.5 直接型IIR濾波器仿真測試161
6.5.6 直接型IIR濾波器的改進(jìn)設(shè)計163
6.6 直接型IIR濾波器板載測試163
6.6.1 硬件接口電路及板載測試程序163
6.6.2 板載測試驗證164
6.7 級聯(lián)型IIR濾波器系數(shù)量化設(shè)計166
6.7.1 將IIR濾波器轉(zhuǎn)換成級聯(lián)型結(jié)構(gòu)166
6.7.2 對級聯(lián)型IIR濾波器系數(shù)進(jìn)行量化167
6.8 級聯(lián)型IIR濾波器設(shè)計及仿真168
6.8.1 級聯(lián)型IIR濾波器設(shè)計168
6.8.2 級聯(lián)型IIR濾波器仿真測試172
6.9 小結(jié)173
第7章 多速率信號處理原理及CIC濾波器設(shè)計174
7.1 多速率信號處理基礎(chǔ)知識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ù)的抽樣頻率轉(zhuǎn)換181
7.3 CIC濾波器原理及應(yīng)用條件181
7.3.1 多級CIC濾波器原理及仿真181
7.3.2 單級CIC濾波器原理及仿真182
7.3.3 CIC濾波器的應(yīng)用條件分析184
7.4 單級CIC濾波器的Verilog HDL設(shè)計及測試185
7.4.1 單級CIC濾波器的Verilog HDL設(shè)計185
7.4.2 單級CIC濾波器的仿真測試186
7.5 多級CIC濾波器的Verilog HDL設(shè)計及測試188
7.5.1 多級CIC濾波器結(jié)構(gòu)分析188
7.5.2 多級CIC濾波器設(shè)計中數(shù)據(jù)位寬的討論189
7.5.3 多級CIC濾波器的Verilog HDL設(shè)計190
7.5.4 多級CIC濾波器的仿真測試193
7.6 CIC濾波器IP核的使用195
7.6.1 CIC濾波器IP核簡介195
7.6.2 IP核設(shè)計多級CIC抽取濾波器及仿真測試197
7.7 CIC濾波器的板載測試198
7.7.1 硬件接口電路及板載測試程序198
7.7.2 板載測試驗證199
7.8 小結(jié)200
第8章 半帶濾波器設(shè)計202
8.1 FIR半帶濾波器原理及MATLAB設(shè)計202
8.1.1 半帶濾波器的原理202
8.1.2 半帶濾波器的MATLAB設(shè)計203
8.2 單級半帶濾波器的Verilog HDL設(shè)計及仿真205
8.2.1 單級半帶濾波器系數(shù)的設(shè)計205
8.2.2 半帶濾波器IP核的創(chuàng)建206
8.2.3 半帶濾波器的仿真測試208
8.3 多級半帶濾波器MATLAB設(shè)計210
8.3.1 各級半帶濾波器的總體技術(shù)要求210
8.3.2 允許過渡帶有混疊的設(shè)計210
8.3.3 不允許過渡帶有混疊的設(shè)計211
8.4 多級半帶濾波器的FPGA設(shè)計212
8.4.1 多級半帶濾波器的性能指標(biāo)設(shè)計212
8.4.2 多級抽取系統(tǒng)的Verilog HDL設(shè)計215
8.4.3 多級抽取系統(tǒng)的測試仿真217
8.5 多級半帶濾波器的板載測試219
8.5.1 硬件接口電路及板載測試程序219
8.5.2 板載測試驗證220
8.6 小結(jié)221
第9章 自適應(yīng)濾波器原理及Verilog HDL設(shè)計222
9.1 自適應(yīng)濾波器簡介222
9.1.1 自適應(yīng)濾波器的概念222
9.1.2 自適應(yīng)濾波器的應(yīng)用223
9.2 自適應(yīng)算法的一般原理225
9.2.1 常用誤差準(zhǔn)則226
9.2.2 維納-霍夫方程227
9.3 LMS算法原理及實現(xiàn)結(jié)構(gòu)227
9.3.1 LMS算法的原理227
9.3.2 LMS算法的實現(xiàn)結(jié)構(gòu)228
9.3.3 LMS算法的字長效應(yīng)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 自適應(yīng)線性濾波器原理及仿真235
9.5.1 自適應(yīng)線性濾波器原理235
9.5.2 利用線性濾波器實現(xiàn)通道失配校正236
9.5.3 校正算法的MATLAB仿真237
9.6 通道失配校正算法的Verilog HDL設(shè)計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 關(guān)于通道失配校正算法數(shù)據(jù)范圍的討論247
9.7 通道失配校正算法的板載測試247
9.7.1 硬件接口電路247
9.7.2 板載測試程序248
9.7.3 板載測試驗證250
9.8 小結(jié)252
第10章 自適應(yīng)天線陣及陷波器Verilog HDL設(shè)計253
10.1 自適應(yīng)天線陣的原理253
10.2 自適應(yīng)天線陣的MATLAB仿真255
10.3 自適應(yīng)天線陣的FPGA實現(xiàn)260
10.3.1 自適應(yīng)天線陣的Verilog HDL設(shè)計260
10.3.2 FPGA實現(xiàn)后的仿真測試264
10.4 自適應(yīng)陷波器原理267
10.5 自適應(yīng)陷波器的MATLAB仿真268
10.6 自適應(yīng)陷波器的FPGA實現(xiàn)270
10.6.1 自適應(yīng)陷波器的Verilog HDL設(shè)計270
10.6.2 FPGA實1