本書首先概述了當(dāng)前的FPGA技術(shù)、器件, 以及用于設(shè)計(jì)先進(jìn)的DSP系統(tǒng)的工具。第1章的案例研究是40多個(gè)設(shè)計(jì)示例的基礎(chǔ)。隨后幾章闡述了計(jì)算機(jī)算法的概念、理論、fir和iir濾波器的實(shí)現(xiàn)、多抽樣率數(shù)字信號(hào)系統(tǒng)、dft和fft算法、未來很可能實(shí)現(xiàn)的高級(jí)算法, 以及高級(jí)濾波器等。
本版新增了總計(jì)150多頁內(nèi)容,包括11個(gè)全新的系統(tǒng)設(shè)計(jì)理念,其中一些有超過100個(gè)嵌入式乘法器的需求。
近年來,F(xiàn)PGA的復(fù)雜性不斷提高,現(xiàn)在我們可以用單個(gè)FPGA構(gòu)建大型的DSP系統(tǒng)。新型的元件現(xiàn)在包含數(shù)以百計(jì)的嵌入式乘法器和大容量片上存儲(chǔ)器。由于之前版本主要研究?jī)?yōu)化系統(tǒng)的規(guī)模,目前系統(tǒng)設(shè)計(jì)問題就變得尤為重要。關(guān)于此類問題的研究可以用更大規(guī)模的任務(wù)來實(shí)現(xiàn),例如PCA(主成分分析)或ICA(獨(dú)立分量分析)算法、圖像和視頻處理系統(tǒng)或者本版中討論的新的256點(diǎn)FFT設(shè)計(jì)。本版新增了總計(jì)150多頁內(nèi)容,包括11個(gè)全新的系統(tǒng)設(shè)計(jì)理念,其中一些有超過100個(gè)嵌入式乘法器的需求。第4版的創(chuàng)新主要包括以下幾方面:
●本書中的HDL仿真現(xiàn)在由Altera強(qiáng)大的ModelSim仿真器和Xilinx所設(shè)計(jì)的ISIM仿真器來實(shí)現(xiàn)。
●對(duì)于系統(tǒng)的設(shè)計(jì),很多試驗(yàn)臺(tái)數(shù)據(jù)現(xiàn)在由MATLAB或SIMULINK提供。
●介紹了新的使用VHDL-2008定點(diǎn)和浮點(diǎn)運(yùn)算IEEE庫的系統(tǒng)級(jí)設(shè)計(jì)。
●比較了直接全通IIR濾波器、雙四邊形濾波器、晶格濾波器和波數(shù)字濾波器。
●實(shí)現(xiàn)了ICA和PCA算法。
●討論并采用HDL實(shí)現(xiàn)了將A律、ADPCM轉(zhuǎn)換為MP3的語音和音頻壓縮方法。
●基于HDL和嵌入式微處理器討論了用于邊緣檢測(cè)和中值濾波的圖像處理算法。
●討論了使用具有自定義指令的微處理器的運(yùn)動(dòng)補(bǔ)償?shù)囊曨l處理。
●提供來自Altera和Xilinx的SIMULINK工具箱的設(shè)計(jì)實(shí)例以及支持XilinxISE和ISIM仿真。
●就在撰寫本書時(shí),更新和錯(cuò)誤修復(fù)報(bào)告將發(fā)布在作者的網(wǎng)頁上:www.eng.fsu.edu/~umb。
致謝
在一些相關(guān)討論中,很多同事和同學(xué)對(duì)第3版提出了反饋意見,并再次幫助我對(duì)本書進(jìn)行改進(jìn)。感謝:R.Adhami、M.Abd-EI-Hameed、C.Allen、S.Amalkar、A.Andrawis、G.Ascheid、P.Athanas、S.Badave、R.Badeau、S.Bald、A.Bardakcioglu、P.Bendixen、C.Betancourth、R.Bhakthavatchalu、G.Birkelbach、T.Borsodi、F.Casado、E.Castillo、O.Calvo、P.Cayuela、A.Celebi、C.-H.Chang、A.Chanerley、K.Chapman、I.Chiorescu、G.Connelly、S.Connors、J.Coutu、S.Cox、S.David、R.Deka、A.Dempster、J.Domingo、A.Elias、F.Engel、R.vanEngelen、H.Fan、S.Foo、T.Fox、M.Frank、J.Gallagher、A.Garcia、M.Gerhardt、A.Ghalame、G.Glandon、S.Grunwald、A.Guerrero、W.Guolin、O.Gustafsson、H.Hamel、S.Hashim、S.Hedayat、D.Hodali、S.Hong、K.Huang、F.Koushanfar、M.Kumm、M.Krishna、H.LeFevre、R.Leupers、S.Liljeqvist、A.Littek、A.Lloris、M.Luqman、V.Madan、M.Manikandan、J.Mark、B.McKenzie、H.Meyr、P.Mishra、A.Mitra、I.Miu、J.Moorhead、S.Moradi、F.Munsche、Z.Navabi、L.Oniciuc、B.Parhami、S.Park、L.Parrilla、V.Pedroni、R.Pereira、R.Perry、A.Pierce、F.Poderico、G.Prinz、D.Raic、N.Rafla、S.Rao、N.Relia、F.Rice、D.Romero、D.Sarma、P.Sephra、W.Sheng、T.Taguchi、N.Trong、C.Unterrieder、G.Wall、G.Vang、Y.Wang、R.Weihua、J.Wu、J.Xu、O.zavala-Romero、P.Zipf、D.Zhang、L.Zhang、M.Zhang。
特別感謝我的(使用FPGA的EEL5722DSP)春季班的同學(xué)。感謝NickStroupe在DWT去噪項(xiàng)目、YeYang在LPC項(xiàng)目、SoumakMookherjee在256點(diǎn)FFT項(xiàng)目、NarenNagaraj在全通濾波器項(xiàng)目、VenkataPothavajhala在雙二階浮點(diǎn)設(shè)計(jì)、HaojunYang在網(wǎng)格濾波器設(shè)計(jì),以及CrispinOdom在ICA項(xiàng)目和MS論文中所做的工作。
特別感謝馬德里大學(xué)的GuillermoBotella和DiegoGonzález在圖像和視頻處理章節(jié)中給予的幫助。
同樣還要特別感謝DavidBishop和HuibertLincklaen對(duì)本書學(xué)習(xí)資料中使用他們的庫的許可。
關(guān)于Altara,我要感謝BenEsposito、M.Phipps、RaleneMaroccia、BlairFort和StephenBrown,感謝他們提供的軟硬件支持。在Xilinx支持方面,A.Vera、M.Pattichis、CraigKief和ParimalPatel。
關(guān)于出版商(Springer-Verlag),我要感謝Baumann博士的耐心幫助,他提供了對(duì)本書進(jìn)行更新的寶貴機(jī)會(huì)。
如果讀者有任何關(guān)于本書的改進(jìn)意見,請(qǐng)發(fā)郵件到Uwe.Meyer-Baese@ieee.org,或者通過出版商直接聯(lián)系我,本人將不勝感激。
UweMeyer-Baese
塔拉哈西,2014年1月
Uwe Meyer-Baese在德國(guó)南部的達(dá)姆施塔特技術(shù)大學(xué)講授了多年的FPGA通信系統(tǒng)設(shè)計(jì)課程,過去10年中他在達(dá)姆施塔特技術(shù)大學(xué)和美國(guó)佛羅里達(dá)大學(xué)指導(dǎo)了60多篇碩士研究生畢業(yè)論文,基于豐富的教學(xué)經(jīng)驗(yàn),他曾經(jīng)撰寫過有關(guān)數(shù)字信號(hào)處理方面的多本教材。
第1章 緒論 1
1.1 數(shù)字信號(hào)處理技術(shù)概述 1
1.2 FPGA技術(shù) 2
1.2.1 按顆粒度分類 3
1.2.2 按技術(shù)分類 6
1.2.3 FPL的基準(zhǔn) 7
1.3 DSP的技術(shù)要求 11
1.4 設(shè)計(jì)實(shí)現(xiàn) 13
1.4.1 FPGA的結(jié)構(gòu) 17
1.4.2 Altera EP4CE115F29C7 21
1.4.3 案例研究:頻率合成器 27
1.4.4 用知識(shí)產(chǎn)權(quán)內(nèi)核進(jìn)行設(shè)計(jì) 34
1.5 練習(xí) 39
第2章 計(jì)算機(jī)算法 53
2.1 計(jì)算機(jī)算法概述 53
2.2 數(shù)字表示法 53
2.2.1 定點(diǎn)數(shù) 54
2.2.2 非傳統(tǒng)定點(diǎn)數(shù) 57
2.2.3 浮點(diǎn)數(shù) 68
2.3 二進(jìn)制加法器 71
2.3.1 流水線加法器 74
2.3.2 模加法器 77
2.4 二進(jìn)制乘法器 78
2.5 二進(jìn)制除法器 84
2.5.1 線性收斂的除法算法 85
2.5.2 快速除法器的設(shè)計(jì) 90
2.5.3 陣列除法器 95
2.6 定點(diǎn)算法的實(shí)現(xiàn) 96
2.7 浮點(diǎn)算法的實(shí)現(xiàn) 98
2.7.1 定點(diǎn)數(shù)到浮點(diǎn)數(shù)的格式
轉(zhuǎn)換 98
2.7.2 浮點(diǎn)數(shù)到定點(diǎn)數(shù)的格式
轉(zhuǎn)換 99
2.7.3 浮點(diǎn)數(shù)乘法 100
2.7.4 浮點(diǎn)數(shù)加法 101
2.7.5 浮點(diǎn)數(shù)除法 103
2.7.6 浮點(diǎn)數(shù)倒數(shù) 104
2.7.7 浮點(diǎn)操作集成 105
2.7.8 浮點(diǎn)數(shù)合成結(jié)果 109
2.8 MAC與SOP 111
2.8.1 分布式算法基礎(chǔ) 112
2.8.2 有符號(hào)的DA系統(tǒng) 114
2.8.3 改進(jìn)的DA解決方案 115
2.9 利用CORDIC計(jì)算特殊
函數(shù) 117
2.10 用MAC調(diào)用計(jì)算特殊
函數(shù) 125
2.10.1 切比雪夫逼近 125
2.10.2 三角函數(shù)的逼近 127
2.10.3 指數(shù)函數(shù)和對(duì)數(shù)函數(shù)的
逼近 135
2.10.4 平方根函數(shù)的逼近 141
2.11 快速幅度逼近 147
練習(xí) 150
第3章 FIR數(shù)字濾波器 163
3.1 數(shù)字濾波器概述 163
3.2 FIR理論 163
3.2.1 具有轉(zhuǎn)置結(jié)構(gòu)的FIR
濾波器 164
3.2.2 FIR濾波器的對(duì)稱性 167
3.2.3 線性相位FIR濾波器 168
3.3 設(shè)計(jì)FIR濾波器 169
3.3.1 直接窗函數(shù)設(shè)計(jì)方法 170
3.3.2 等波紋設(shè)計(jì)方法 172
3.4 常系數(shù)FIR設(shè)計(jì) 174
3.4.1 直接FIR設(shè)計(jì) 174
3.4.2 具有轉(zhuǎn)置結(jié)構(gòu)的FIR
濾波器 178
3.4.3 采用分布式算法的FIR
濾波器 183
3.4.4 IP內(nèi)核FIR濾波器設(shè)計(jì) 193
3.4.5 基于DA和基于RAG的
FIR濾波器的比較 196
3.5 練習(xí) 197
第4章 IIR數(shù)字濾波器 205
4.1 IIR數(shù)字濾波器概述 205
4.2 IIR理論 208
4.3 IIR系數(shù)的計(jì)算 210
4.4 IIR濾波器的實(shí)現(xiàn) 213
4.4.1 有限字長(zhǎng)效應(yīng) 216
4.4.2 濾波器增益系數(shù)的優(yōu)化 217
4.5 快速IIR濾波器 218
4.5.1 時(shí)域交叉 218
4.5.2 群集和分散預(yù)測(cè)的流水線
技術(shù) 220
4.5.3 IIR抽取器設(shè)計(jì) 222
4.5.4 并行處理 223
4.5.5 采用RNS的IIR設(shè)計(jì) 226
4.6 窄帶IIR濾波器 226
4.6.1 窄帶設(shè)計(jì)示例 227
4.6.2 級(jí)聯(lián)二階系統(tǒng)窄帶濾波器
設(shè)計(jì) 234
4.6.3 并聯(lián)二階系統(tǒng)窄帶濾波器
設(shè)計(jì) 237
4.6.4 窄帶IIR濾波器的網(wǎng)格
濾波器設(shè)計(jì) 244
4.6.5 窄帶IIR濾波器的波形
數(shù)字濾波器設(shè)計(jì) 251
4.7 窄帶IIR濾波器的全通濾波器
設(shè)計(jì) 257
4.7.1 窄帶IIR濾波器的全通波形
數(shù)字濾波器設(shè)計(jì) 259
4.7.2 窄帶IIR濾波器的全通網(wǎng)格
設(shè)計(jì) 263
4.7.3 窄帶濾波器的全通直接型
設(shè)計(jì) 263
4.7.4 窄帶濾波器的全通級(jí)聯(lián)雙
二階設(shè)計(jì) 263
4.7.5 窄帶濾波器的全通并行雙
二階設(shè)計(jì) 263
4.8 練習(xí) 267
第5章 多級(jí)信號(hào)處理 273
5.1 抽取和插值 273
5.1.1 Noble恒等式 275
5.1.2 用有理數(shù)因子進(jìn)行采樣速率
轉(zhuǎn)換 276
5.2 多相分解 276
5.2.1 遞歸IIR抽取器 281
5.2.2 快速FIR濾波器 281
5.3 Hogenauer CIC濾波器 284
5.3.1 單級(jí)CIC案例研究 284
5.3.2 多級(jí)CIC濾波器理論 287
5.3.3 幅值與混疊畸變 291
5.3.4 Hogenaur“剪除”理論 293
5.3.5 CIC RNS設(shè)計(jì) 298
5.3.6 CIC 補(bǔ)償濾波器設(shè)計(jì) 300
5.4 多級(jí)抽取器 302