關(guān)于我們
書單推薦
新書推薦
|
實時數(shù)字信號處理(從MATLAB到C)——基于TMS320C6x DSP(第3版) 這是一本在實時數(shù)字信號處理(DSP)方面非常實用的書。它從基礎(chǔ)的核心理論講起,再結(jié)合理論探討具體的工程實踐,用winDSK、MATLAB與C語言實現(xiàn)進行實踐對比,循序漸進地引導(dǎo)讀者將理論與實踐進行有機結(jié)合。特別地,第Ⅰ部分“理論基礎(chǔ)”中各章的最后一節(jié)“問題”,指引讀者進行深入思考與回顧;第Ⅱ部分“項目實踐”中各章的最后一節(jié)“后繼挑戰(zhàn)”,拓展讀者的實踐思維,增強實踐能力。 第3版(即本書)為新的、功能強大的廉價DSP開發(fā)電路板提供支持,該電路板目前可從德州儀器公司(TI)獲得,即OMAPL138OMAPL138同時包含C6748和ARM處理器內(nèi)核,此書二者都用。 LCDK這個復(fù)雜但功能極其豐富的電路板是一個很好的例子,說明了為什么此書被如此多的工程師、教育工作者和學(xué)生使用:我們讓開始使用這個電路板進行實時DSP變得容易,并使讀者少走了許多彎路。本書所支持的DSP板的更詳細描述見第1章。第3版還包括兩個應(yīng)早期版本的讀者所要求的新的實時DSP項目(探索二階節(jié)的使用和自適應(yīng)濾波器的設(shè)計)。 譯著序 這是一本在實時數(shù)字信號處理(DSP)方面非常實用的書。它從基礎(chǔ)的核心理論講起,再結(jié)合理論探討具體的工程實踐,用winDSK、MATLAB與C語言實現(xiàn)進行實踐對比,循序漸進地引導(dǎo)讀者將理論與實踐進行有機結(jié)合。特別地,第Ⅰ部分“理論基礎(chǔ)”中各章的最后一節(jié)“問題”,指引讀者進行深入思考與回顧;第Ⅱ部分“項目實踐”中各章的最后一節(jié)“后繼挑戰(zhàn)”,拓展讀者的實踐思維,增強實踐能力。 本人在計算機軟件行業(yè)從業(yè)多年,其間閱讀了不少英文在線文檔及書籍,由于深感閱讀與理解英文技術(shù)資料的速度大幅落后于直接學(xué)習對應(yīng)的中文資料的速度,因此拜讀了很多前輩翻譯的中文技術(shù)資料,受益匪淺! 一直以來希望自己也能翻譯一些英文技術(shù)資料,方便其他中文讀者輕松地學(xué)習和理解英文技術(shù)資料,為促進知識傳播盡一份微薄之力。 當自己認真翻譯時,才發(fā)現(xiàn)比自行閱讀艱難許多。自己閱讀時意會即可,而真正翻譯時需要能夠言傳,期望更準確地表達出原作者的意圖,需要不斷揣摩與斟酌相關(guān)字眼,同時需要結(jié)合專業(yè)術(shù)語與前人的翻譯習慣來選取對應(yīng)的詞匯及表達方式。由于本書翻譯是在工作之余進行的,時間比較倉促,加之本人水平有限,翻譯過程中難免對原著有理解偏差甚至錯誤之處,歡迎廣大讀者批評指正。 在本書翻譯工作啟動時,劉陽麗、陳榮生、李宗衡提供了協(xié)助,翻譯過程中家人給予極大的理解與支持,出版過程中劇艷婕、宋淑娟提供工作協(xié)助與稿件審校,在此一并感謝! 2020年4月于廣州···· 序言 數(shù)字信號處理是今天使用的大多數(shù)技術(shù)的“核心”。手機使用數(shù)字信號處理來生成用于與無線網(wǎng)絡(luò)通信的DTMF(雙音多頻)音調(diào);降噪耳機使用自適應(yīng)數(shù)字信號處理來消除周圍環(huán)境的噪聲;數(shù)碼相機使用數(shù)字信號處理將圖像壓縮成JPEG格式以便有效存儲,比如在一張存儲卡中存儲數(shù)千張圖像;數(shù)字信號處理允許播放存儲在手機和iPod中的壓縮音樂;數(shù)字信號處理甚至可以控制汽車中的防抱死制動器。這些只是我們周圍世界中數(shù)字信號處理的幾個例子。 今天有許多好的教科書可以教授數(shù)字信號處理——但是大多數(shù)都是教授理論的,也許還有一些MATLAB的仿真。而本書則邁出了大膽的一步,它不僅提供了理論,還通過仿真強化了理論,并向我們展示了如何在實時應(yīng)用中實際使用結(jié)果。這最后一步不是一個微不足道的步驟,這就是為什么這么多的書和課程只提供理論和仿真。憑借本書三位作者——Thad Welch、Cameron Wright和Michael Morrow的綜合專業(yè)知識,讀者可以通過所提供的可訪問路徑走進應(yīng)用程序的實時世界。第3版繼續(xù)支持德州儀器(Texas Instruments)的C6713 DSK和多核OMAPL138電路板。多核OMAP138芯片同時包括一個C6784 DSP內(nèi)核和一個ARM9 GPP內(nèi)核,使其功能非常強大,對各種用戶都具有吸引力。新增功能還支持TI LCDK(低成本開發(fā)套件)。包含自適應(yīng)濾波和二階節(jié)(SOS)的新項目的章節(jié)已添加到包括QPSK和QAM發(fā)射器和接收器的現(xiàn)有項目章節(jié)中。所有代碼都已更新為在CCS6.1版上運行,并且所有M文件已更新為在MATLAB 2016a上運行。 我有幸曾與本書的作者合作撰寫過幾篇論文,因此能從他們對工程教育貢獻的直接經(jīng)驗方面來闡述。他們更加努力地持續(xù)擴展自己的理解和能力,以合乎邏輯、直截了當?shù)姆绞匠尸F(xiàn)復(fù)雜的材料。他們參加工程教育會議,主持工程教育會議,寫工程教育的論文,為工程教育而活。ㄆ渲幸晃缓现逿had Welch,最近被選為第一位信號處理工程網(wǎng)絡(luò)研究員(Signal Processing Engineering Network Fellow),以表彰他的領(lǐng)導(dǎo)才能和貢獻。)我很高興能有機會以作者自己的話來告訴本書的讀者:你們開始了“一趟旅程……” Delores M. Etter,電氣工程卡魯思主席,德克薩斯州達拉斯市南衛(wèi)理公會大學(xué)萊爾工程學(xué)院達爾文迪森網(wǎng)絡(luò)安全研究所杰出研究員。 (Etter博士,美國國家工程學(xué)院院士、IEEE會員、美國工程教育學(xué)會會員。2005—2007年,她擔任海軍助理秘書長,負責研究、開發(fā)和收購;1998—2001年,她擔任美國國防科技部副部長。她還是許多工程教科書的作者,其中包括幾本MATLAB的教科書。) 前言 本書供需要在實時數(shù)字信號處理(DSP)方面具有簡單實踐經(jīng)驗的學(xué)生、教育工作者和工程師使用。過去,在實時DSP方面,理論與實踐之間存在著巨大的“差距”,本書使用作者已證明的方法彌補了這一差距。本書分為三個部分:理論基礎(chǔ)(共9章)、項目實踐(共12章)和附錄(共10章)。本書附帶的軟件包括所有必要的源代碼,以及附加信息和教程材料,以幫助讀者掌握實時DSP(有關(guān)訪問軟件的操作指南,請參閱第1章)。還有一個網(wǎng)站支持這本書(見http://www.rtdsp.com/),讀者可以在那里找到最新的新聞、提示、教程、勘誤表、額外的材料和軟件。 我們設(shè)想,如果讀者是第一次接觸DSP,則他們應(yīng)結(jié)合更傳統(tǒng)的、理論性更強的信號處理教材一起使用本書。您正在閱讀的這本書并不是為了教授基本的DSP理論,而是假設(shè)您已經(jīng)了解或正在學(xué)習DSP理論。本書不是講授理論,而是使用一個非常實用的、逐步引導(dǎo)的框架,提供實時DSP的實踐經(jīng)驗,并在此過程中強化這種基本的DSP理論(作者稱之為理論基礎(chǔ))在一本篇幅合理的書中以有效的方式既講授理論又講授實踐是極不實際的。。該框架在每章中使用了一系列演示、練習和實踐項目,首先對適用理論進行快速概述,然后使用MATLAB來應(yīng)用這些概念,最后在一些最新的高性能DSP硬件上實時運行適用程序。這些項目指導(dǎo)讀者來為自己創(chuàng)建各種有趣的實時DSP程序。請務(wù)必查看本書的附錄——有些讀者評論說,這些附錄讓這本書很值!每個理論基礎(chǔ)章節(jié)在該章的最后都提出一些問題,作為家庭作業(yè)或自學(xué),檢驗讀者對特定章節(jié)里的關(guān)鍵DSP概念的理解。如前所述,這些關(guān)鍵概念通常僅在書中進行簡要介紹,更深入的內(nèi)容期望來自讀者已經(jīng)閱讀的或現(xiàn)在正與本書結(jié)合使用的、更傳統(tǒng)的、理論性更強的教材。這是有意安排的,如果讀者難以找到章節(jié)最后所提問題的解決方案,那么就基本確定了讀者需要對該理論進行回顧以便充分利用本教材。 理想情況下,讀者應(yīng)該參加或已經(jīng)參加過介紹性的DSP(或離散時間信號和系統(tǒng))的課程。然而,我們已經(jīng)成功將本書的各個部分用于還沒有參與過DSP課程的學(xué)生作為補充理論的“及時”方法。這本書的主題覆蓋范圍足夠廣泛,同時包含本科和研究生水平的課程。期望讀者對MATLAB和C編程語言有基本的了解,但也不必是這方面的專家。為了充分利用這本書,讀者應(yīng)該能夠使用相對適中的硬件和軟件工具集合。特別是,一些推薦的項目包括一臺運行版本比較新的Microsoft Windows(例如Windows 7 SP1/8.1/10)的標準PC、一份MATLAB及其信號處理工具箱的拷貝,以及下面介紹的一塊廉價的德州儀器DSP電路板(帶軟件)。其他一些雜項項目,如信號源(任何能夠播放數(shù)字音樂的設(shè)備都可以正常工作,如iPod、智能手機,甚至CD播放器)、揚聲器(通常連接到PC電源的類型即可)、耳機或耳塞,以及3.5毫米立體聲接插線(有時稱為1/8英寸立體聲唱機插頭電纜)都會有用。為了以最大的靈活性處理輸入和輸出信號,支持DSP電路板的幾種不同編解碼器(見第1章)使用一些常見的測試設(shè)備,如示波器、頻譜分析儀和信號發(fā)生器,可以獲得更大的靈活性,但我們展示了如何在需要時使用第二塊便宜的DSP電路板甚至PC的聲卡作為此類測試設(shè)備的廉價替代品。 實時數(shù)字信號處理(從MATLAB到C)——基于TMS320C6x DSP(第3版)本書中介紹并隨書提供的實時軟件支持德州儀器公司(TI)提供的幾種相對便宜的DSP電路板。這些電路板包括TI低成本開發(fā)套件(Low Cost Development Kit,LCDK)的OMAPL138版本、LogicPD Zoom OMAPL138實驗者套件(Experimenter Kit)和仍然可用的TMS320C6713 DSK首字母縮略詞“DSK”代表“DSP Starter Kit”。而本書中討論的LCDK和實驗者套件(Experimenter Kit)電路板未被TI正式稱為“DSK”,我們選擇簡化討論,并經(jīng)常稱所有的電路板為DSK。這些電路板可以從授權(quán)的TI分銷商處購買,也可以直接從TI購買(參見第1.3.1小節(jié))。請注意,TI提供了大量學(xué)術(shù)折扣和捐贈(也在第1.3.1小節(jié)中討論)。。這些具有與TMS320C6711 DSK有限的向后兼容性,但在本書中未明確涵蓋這種已終止的電路板。目前可用的電路板都是標配(或可以免費下載)一套強大的軟件開發(fā)工具(Code Composer StudioTM),我們在后面的章節(jié)中會大量使用這些工具。 第1版是為響應(yīng)各種大學(xué)的學(xué)生和教師的許多要求而寫的。當作者在各種會議上介紹本書中出現(xiàn)的一些概念和代碼時,我們被一群試圖靠他們各自的努力去“彌合理論與實踐(使用實時硬件)之間的差距”的聽眾包圍。第1版將我們統(tǒng)一的、逐步過渡的、以跨越這個“差距”的方法匯集在一個單一的來源中,被證明是相當流行的。 第2版做了更新,其中包括對更強大的DSP開發(fā)電路板的支持。該開發(fā)電路板當時可從德州儀器公司(TI)獲得,即LogicPD Zoom OMAPL138實驗者套件(Experimenter Kit)。該電路板現(xiàn)在已不再生產(chǎn),但仍在許多大學(xué)中使用。第2版還添加了一些其他主題(例如PN序列)和一些更高級的實時DSP項目(例如像QPSK和QAM這樣的用于發(fā)射器和接收器的高階數(shù)字通信項目),這些是第1版的讀者所要求的。 第3版(即本書)為最新的、功能強大的廉價DSP開發(fā)電路板提供支持,該電路板目前可從德州儀器公司(TI)獲得,即OMAPL138OMAPL138同時包含C6748和ARM處理器內(nèi)核,我們二者都用。 LCDK。這個復(fù)雜但功能極其豐富的電路板是一個很好的例子,說明了為什么我們的書被如此多的工程師、教育工作者和學(xué)生使用:我們讓開始使用這個電路板進行實時DSP變得容易,并使讀者少走了許多彎路。本書所支持的DSP板的更詳細描述見第1章。第3版還包括兩個應(yīng)早期版本的讀者所要求的新的實時DSP項目(探索二階節(jié)的使用和自適應(yīng)濾波器的設(shè)計)。我們還添加了3個新的附錄:MATLAB提供的代碼生成(Code Generation)工具介紹,如何將LCDK轉(zhuǎn)換為便攜式電池驅(qū)動設(shè)備的指南,以及本版本直接支持的3個DSP電路板的比較。在這個版本中,出版商增加了彩色印制,我們重新生成了書中的大部分圖,以充分利用這一點。我們還檢查并運行了(在3種電路板的每一種上)本書附帶的所有軟件。與之前的版本一樣,我們吸納了來自早期版本的許多用戶的寶貴的得到高度贊賞的反饋和建議,從而使本書成為一本我們所希望的更好的書。 請注意,任何勘誤、更新、其他軟件和其他相關(guān)材料都將發(fā)布在由作者維護的本書網(wǎng)站上,網(wǎng)址為http://www.rtdsp.com。由于DSP硬件的更新速度比我們可以出版本書新增補版的速度更快,因此該網(wǎng)站將為作者提供一種方法來支持這種更新,甚至包括那些在本書當前版本出版后才推出的所選擇的新DSP電路板。為了您的方便,本前言末尾的二維碼也將帶您進入該網(wǎng)站。出版商CRC Press(Taylor &Francis Group的一部分)也提供了一個安全的網(wǎng)頁,用于訪問本書的解決方案手冊(Solutions Manual)等材料,允許采用本書作為其中一門或多門課程的教學(xué)資料的教授們訪問,有需要請聯(lián)系出版商了解詳情。 從DSP理論到實時實現(xiàn)之路充滿了潛在的坑洼和其他障礙,這些障礙在歷史上造成了理論與實踐之間眾所周知的“差距”。本書提供了一種經(jīng)過驗證的方法,可以平滑路徑、清除障礙并避免通常會遇到的挫折,幫您縮小差距。我們希望您喜歡這趟旅程…… 致謝 如果沒有德州儀器公司(TI)的支持和幫助,這本書不可能完成。特別地,我們想對凱西·威克斯(Cathy Wicks)表達衷心的感謝,他在指導(dǎo)德州儀器公司的全球大學(xué)項目方面不遺余力,使無數(shù)的學(xué)生和教授都能負擔得起DSP。凱西的前任克里斯蒂娜·彼得森(Christina Peterson)、瑪麗亞·霍(Maria Ho)和托倫斯·羅賓遜(Torrence Robinson)也為我們的努力做出了貢獻,最終促成了這本書的出版。德州儀器公司對DSP教育的支持在業(yè)界是無與倫比的,我們非常感激這種前瞻性的企業(yè)愿景。 我們還要感謝CRC Press(Taylor &Francis Group的一部分)的Nora Konopka和Kyra Lindholm,在他們的幫助和指導(dǎo)下完成了本書。他們的實時幫助、快速響應(yīng)和永不言敗的幽默感應(yīng)成為其他出版商的榜樣。請注意,我們以完全格式化為“可直接拍照制版”的形式向出版商提供了原稿,因此任何文稿錯誤都是我們的錯,而不是出版商的。 我們要感謝羅伯特·W·科南特(Robert W. Conant)對QPSK數(shù)字接收機一章的寶貴貢獻,以及布萊恩·L·埃文斯(Brian L. Evans)關(guān)于書中PN序列覆蓋范圍的有益建議。懷俄明大學(xué)(University of Wyoming)的羅伯特·F·庫比切克(Robert F. Kubichek)也提供了許多出色的建議和反饋。 匿名評審員的投入和許多第1版、第2版用戶的經(jīng)驗使得本書得到了明顯的改進,他們給予我們寶貴的反饋和許多優(yōu)秀的建議。 如果我們在這份簡短的致謝中遺漏了一個與文本編寫相關(guān)的“插件”,將是我們的失職。本書是用LaTeX排版的,這是Leslie Lamport開發(fā)的一個功能強大的文檔準備系統(tǒng),是Donald Knuth的TeX程序的一個特殊宏集合(具體來說,我們使用了pdfLaTeX以直接生成PDF文件輸出,它是Han The Thanh創(chuàng)建的pdfTeX的變體)。LaTeX是技術(shù)寫作的理想工具,得到了TeX用戶組(TUG)全球成員的大力支持,詳情請訪問http://www.tug.org/。TeX、LaTeX和pdfLaTeX在公共領(lǐng)域免費提供(TeX是美國數(shù)學(xué)協(xié)會的商標)。我們使用優(yōu)秀的TeXStudio免費軟件編輯器(見http://texstudio.sourceforge.net/)作為TeX用戶組(TUG)免費提供的LaTeX的全面的TeX Live分發(fā)版的前端。為了以標準BibTeX語法維護書目參考數(shù)據(jù)庫,我們使用了免費提供且功能強大的JabRef程序(請參閱http://jabref.sourceforge.net/)。所有這些程序不僅是免費的,而且可以用于多種操作系統(tǒng)。本書中的插圖主要是用兩個程序之一創(chuàng)建的:Canvas和MATLAB。Canvas是美國ACD系統(tǒng)有限公司(ACD Systems of America, Inc.)的高端技術(shù)繪圖軟件包,它可以在同一個圖形中創(chuàng)建、操作向量和位圖圖像,且提供了類似于將Adobe Illustrator和Adobe Photoshop組合在一個軟件包中的功能。 MATLAB是由邁斯沃克軟件有限公司(The MathWorks, Inc.)開發(fā)的,它是一個功能極其強大的數(shù)值計算環(huán)境和第四代編程語言,且有許多可用于各種專業(yè)領(lǐng)域的工具箱擴展。 Thad B. Welch,哲學(xué)博士,專業(yè)工程師博伊西州立大學(xué)(Boise State University)電子和計算機工程系(Department of Electrical and Computer Engineering)教授和前主席。他曾在美國海軍學(xué)院(U.S. Naval Academy,USNA)和美國空軍學(xué)院(U.S. Air Force Academy,USAFA)的電子和計算機工程系任教。他是美國海軍退休指揮官,2011年首屆斯賓斯(SPEN)研究員。他曾獲2001年ECE杰出教育家獎(Outstanding Educator Award),2002年Raouf工程教學(xué)卓越獎,1998年、2005年和2010年美國工程教育學(xué)會(American Society for Engineering Education,ASEE)教育分部計算機John A. Curtis講座獎(Lecture Award),2003年USNA的ECE杰出研究員獎(Outstanding Researcher Award),以及1997年USAFA的Clements杰出教育家獎(Outstanding Educator Award)。Welch博士是電氣和電子工程師協(xié)會(Institute of Electrical and Electronic Engineers,IEEE)信號處理學(xué)會(Signal Processing Society)信號處理教育技術(shù)委員會(Technical Committee on Signal Processing Education)的前主席和創(chuàng)始成員、IEEE的高級成員,以及ASEE、工程榮譽學(xué)會(Tau Beta Pi)和電氣工程榮譽學(xué)會(Eta Kappa Nu)的成員。 Cameron H.G. Wright,博士,專業(yè)工程師懷俄明大學(xué)(University of Wyoming)電子與計算機工程系(Department of Electrical and Computer Engineering)教授。他曾在美國空軍學(xué)院(U.S. Air Force Academy,USAFA)的電氣工程系(Department of Electrical Engineering)任教,擔任教授和系副主任。他是美國空軍的一名退役中校,1992年和1993年因在軍校教育方面的杰出貢獻而獲得陸軍準將R. E. Thomas獎(Brigadier General R. E. Thomas Award)。他在2005年和2008年獲得IEEE學(xué)生選擇獎(Student Choice Award),成為年度杰出教授。他曾獲得2005年、2007年和2015年懷俄明大學(xué)Mortar Board “最佳教授”獎(“Top Prof.” Award),2007年ASEE洛磯山區(qū)杰出教學(xué)獎(Outstanding Teaching Award),1998年、2005年和2010年ASEE教育分部計算機John A. Curtis講座獎(Lecture Award),2011年Tau Beta Pi WYA的本科教學(xué)獎(Undergraduate Teaching Award),以及2012年懷俄明大學(xué)Ellbogen優(yōu)秀課堂教學(xué)獎(Meritorious Classroom Teaching Award)。Wright博士是IEEE信號處理學(xué)會(Signal Processing Society)信號處理教育技術(shù)委員會(Technical Committee on Signal Processing Education)的創(chuàng)始成員、IEEE的高級成員,以及ASEE、國家專業(yè)工程師學(xué)會(National Society of Professional Engineers)、生物醫(yī)學(xué)工程學(xué)會(Biomedical Engineering Society)、SPIE國際光學(xué)工程學(xué)會(SPIEThe International Society of Optical Engineering)、Tau Beta Pi和Eta Kappa Nu的成員。 Michael G. Morrow,電子工程碩士,專業(yè)工程師威斯康星大學(xué)麥迪遜分校(University of WisconsinMadison)電子與計算機工程系(Department of Electrical and Computer Engineering)教師。他曾是美國海軍退役中尉指揮官,曾在美國海軍學(xué)院(U.S. Naval Academy)電子和計算機工程系(Department of Electrical and Computer Engineering)及博伊西州立大學(xué)(Boise State University)電子與計算機工程系(Department of Electrical and Computer Engineering)任教。Morrow先生在威斯康星大學(xué)麥迪遜分校獲得2002年電氣與計算機工程系杰出教育家獎(Outstanding Educator Award)和2003年Gerald Holdridge教學(xué)卓越獎(Teaching Excellence Award)。他是教育DSP(eDSP)有限責任公司的創(chuàng)始人和總裁,該公司致力于為全球教育工作者和學(xué)生提供經(jīng)濟實惠的DSP解決方案。他是電氣和電子工程師協(xié)會(Institute of Electrical and Electronic Engineers,IEEE)信號處理學(xué)會(Signal Processing Society)信號處理教育技術(shù)委員會(Technical Committee on Signal Processing Education)的成員、IEEE的高級成員以及ASEE的成員。 圖清單ⅰ 表格清單ⅸ 程序清單 第Ⅰ部分: 理論基礎(chǔ) 第1章本書介紹與組織3 1.1為什么您需要這本書?3 1.1.1其他DSP書籍3 1.1.2演示與DSP硬件4 1.1.3本書的哲學(xué)4 1.2實時DSP5 1.3如何使用本書5 1.3.1支持的電路板6 1.3.2主機到DSP電路板通信9 1.3.3過渡到實時11 1.3.4章節(jié)涵蓋內(nèi)容12 1.3.5硬件與軟件安裝13 1.3.6閱讀程序清單14 1.4準備開始14 1.5問題15 第2章采樣和重構(gòu)16 2.1理論16 2.1.1選擇采樣頻率16 2.1.2輸入/輸出問題: 樣本或者幀?16 2.1.3TalkThrough概念17 2.2winDSK演示17 2.2.1啟動winDSK17 2.2.2TalkThru應(yīng)用18 2.3使用Windows實現(xiàn)TalkThrough20 2.4使用MATLAB和Windows實現(xiàn)TalkThrough23 2.4.1只使用MATLAB實現(xiàn)TalkThrough26 2.4.2使用MATLAB和DSK實現(xiàn)TalkThrough29 2.5使用C語言實現(xiàn)DSK30 2.6后繼挑戰(zhàn)31 2.7問題32 第3章FIR數(shù)字濾波器33 3.1理論33 3.1.1傳統(tǒng)標記法33 3.1.2FIR濾波器與IIR濾波器的比較34 3.1.3計算濾波器輸出34 3.2winDSK演示36 3.2.1圖形均衡器應(yīng)用36 3.2.2陷波濾波器應(yīng)用37 3.2.3音頻效果應(yīng)用39 3.3MATLAB實現(xiàn)40 3.3.1內(nèi)置方法40 3.3.2創(chuàng)建您自己的濾波器算法44 3.4使用C語言的DSK實現(xiàn)46 3.4.1采用C語言的暴力FIR濾波: 第一部分46 3.4.2采用C語言的暴力FIR濾波: 第二部分49 3.4.3環(huán)形緩沖FIR濾波52 3.5后繼挑戰(zhàn)53 3.6問題54 目錄 實時數(shù)字信號處理(從MATLAB到C)——基于TMS320C6x DSP(第3版)第4章IIR數(shù)字濾波器55 4.1理論55 4.2winDSK演示: 陷波濾波器應(yīng)用58 4.3MATLAB實現(xiàn)60 4.3.1濾波器設(shè)計與分析60 4.3.2IIR濾波器標記法69 4.3.3框圖70 4.3.4內(nèi)置方法77 4.3.5創(chuàng)建您自己的濾波器算法77 4.4使用C語言的DSK實現(xiàn)79 4.4.1暴力FIR濾波79 4.4.2更高效的IIR濾波80 4.5后繼挑戰(zhàn)80 4.6問題81 第5章周期信號的生成82 5.1理論82 5.1.1DSP中的周期信號82 5.1.2信號生成84 5.2winDSK演示90 5.2.1任意波形90 5.2.2雙音多頻(DTMF)91 5.3MATLAB實現(xiàn)93 5.3.1直接數(shù)字合成器技術(shù)93 5.3.2表查找技術(shù)94 5.4使用C語言的DSK實現(xiàn)95 5.4.1直接數(shù)字合成器技術(shù)95 5.4.2表查找技術(shù)97 5.4.3帶表創(chuàng)建的表查找技術(shù)98 5.4.4數(shù)字諧振器技術(shù)100 5.5偽噪聲序列101 5.5.1理論102 5.5.2winDSK演示107 5.5.3MATLAB實現(xiàn)107 5.5.4使用C語言的DSK實現(xiàn)113 5.6后繼挑戰(zhàn)119 5.7問題119 第6章基于幀的DSP120 6.1理論120 6.1.1基于樣本的DSP的缺點120 6.1.2什么是幀?121 6.2winDSK演示123 6.3MATLAB實現(xiàn)124 6.4使用C語言的DSK實現(xiàn)125 6.4.1三重緩沖125 6.4.2一個基于幀的DSP例子126 6.4.3使用直接存儲器存。―MA)131 6.5基于幀處理的總結(jié)140 6.6后繼挑戰(zhàn)141 6.7問題141 第7章使用幀的數(shù)字濾波器142 7.1理論142 7.2winDSK演示142 7.3MATLAB實現(xiàn)142 7.4使用C語言的DSK實現(xiàn)142 7.4.1理解針對幀的FIR過程143 7.4.2如何避免“邊緣”問題144 7.4.3C語言代碼解釋144 7.5后繼挑戰(zhàn)146 7.6問題147 第8章快速傅里葉變換148 8.1理論148 8.1.1定義FFT148 8.1.2旋轉(zhuǎn)因子149 8.1.3FFT處理149 8.1.4位反轉(zhuǎn)尋址152 8.1.5使用FFT進行濾波152 8.1.6避免循環(huán)卷積153 8.1.7實時快速卷積155 8.2winDSK演示158 8.3MATLAB實現(xiàn)158 8.4使用C語言實現(xiàn)158 8.5后繼挑戰(zhàn)162 8.6問題162 第9章頻譜分析與窗口化164 9.1理論164 9.1.1信號的功率譜164 9.1.2窗口化需要166 9.1.3窗口特征168 9.2winDSK演示171 9.3MATLAB實現(xiàn)173 9.4使用C語言的DSK實現(xiàn)175 9.5結(jié)論175 9.6后繼挑戰(zhàn)176 9.7問題176 第Ⅱ部分: 項目實踐 第10章項目1: 吉他特效181 10.1項目介紹181 10.2理論181 10.2.1背景181 10.2.2效果如何工作182 10.3winDSK演示193 10.4MATLAB實現(xiàn)194 10.4.1FIR梳狀濾波器194 10.4.2IIR梳狀濾波器195 10.4.3陷波濾波器198 10.4.4鑲邊器199 10.4.5顫音200 10.5使用C語言的DSK實現(xiàn)201 10.5.1實時的梳狀濾波器201 10.5.2其他實時特效204 10.6后繼挑戰(zhàn)204 第11章項目2: 圖形均衡器206 11.1理論206 11.2winDSK演示207 11.2.1圖形均衡器應(yīng)用207 11.2.2圖形均衡器效果208 11.3MATLAB實現(xiàn)209 11.4使用C語言的DSK實現(xiàn)211 11.4.1將增益應(yīng)用于濾波器頻帶211 11.4.2GEL文件滑塊控件213 11.5后繼挑戰(zhàn)214 第12章項目3: 二階節(jié)215 12.1理論215 12.2winDSK演示: 陷波濾波器應(yīng)用219 12.3MATLAB實現(xiàn)219 12.4使用C語言的DSK實現(xiàn)222 12.4.1示例SOS代碼222 12.5思考要點223 12.6后繼挑戰(zhàn)223 第13章項目4: 峰值音量表224 13.1理論224 13.2winDSK演示: commDSK224 13.3MATLAB實現(xiàn)225 13.4使用C語言的DSK實現(xiàn)226 13.4.1示例PPM代碼226 13.4.2DSK的LED控制228 13.4.3另一個PPM代碼版本228 13.5后繼挑戰(zhàn)230 第14章項目5: 自適應(yīng)濾波器231 14.1理論231 14.1.1自適應(yīng)濾波器解決的問題232 14.1.2LMS自適應(yīng)濾波器233 14.2winDSK8演示234 14.3MATLAB實現(xiàn)234 14.4使用C語言的DSK實現(xiàn)237 14.5后繼挑戰(zhàn)239 第15章項目6: AM發(fā)射器240 15.1理論240 15.2winDSK演示242 15.3MATLAB實現(xiàn)242 15.4使用C語言的DSK實現(xiàn)245 15.5后繼挑戰(zhàn)247 第16章項目7: AM接收器248 16.1理論248 16.1.1包絡(luò)檢波器249 16.1.2基于希爾伯特(Hilbert)的AM接收器255 16.2winDSK演示258 16.3MATLAB實現(xiàn)258 16.4使用C語言的DSK實現(xiàn)260 16.5后繼挑戰(zhàn)262 第17章項目8: 鎖相環(huán)263 17.1理論263 17.2winDSK演示264 17.3MATLAB實現(xiàn)264 17.3.1PLL仿真264 17.3.2對MATLAB實現(xiàn)的一些更新270 17.4使用C語言的DSK實現(xiàn)272 17.4.1PLL的組件272 17.4.2系統(tǒng)測試275 17.5后繼挑戰(zhàn)277 第18章項目9: BPSK數(shù)字發(fā)射器278 18.1理論278 18.1.1隨機數(shù)據(jù)和符號生成278 18.1.2使用對拓矩形位的BPSK279 18.1.3使用脈沖調(diào)制(IM)升余弦形位的BPSK280 18.2winDSK演示281 18.2.1commDSK: 未濾波的BPSK282 18.2.2commDSK: 升余弦濾波的BPSK283 18.3MATLAB實現(xiàn)286 18.3.1矩形BPSK信號發(fā)生器286 18.3.2脈沖調(diào)制的升余弦BPSK信號發(fā)生器288 18.4使用C語言的DSK實現(xiàn)291 18.4.1一個矩形脈沖形BPSK發(fā)射器292 18.4.2一個升余弦脈沖形BPSK發(fā)射器293 18.4.3實時代碼總結(jié)295 18.5后繼挑戰(zhàn)295 第19章項目10: BPSK數(shù)字接收器296 19.1理論296 19.1.1匹配濾波器的輸出298 19.1.2眼圖299 19.1.3最大似然定時恢復(fù)300 19.2winDSK演示302 19.3MATLAB實現(xiàn)302 19.4使用C語言的DSK實現(xiàn)307 19.4.1數(shù)字接收器的組件307 19.4.2系統(tǒng)測試312 19.5后繼挑戰(zhàn)314 第20章項目11: MPSK與QAM數(shù)字發(fā)射器315 20.1理論315 20.1.1基于I和Q的發(fā)射器315 20.1.2一些星座圖317 20.2winDSK演示320 20.2.1commDSK: 根升余弦濾波的QPSK320 20.3MATLAB實現(xiàn)323 20.3.1脈沖調(diào)制根升余弦QPSK信號發(fā)生器323 20.4使用C語言的DSK實現(xiàn)327 20.4.1一個根升余弦脈沖形QPSK發(fā)射器327 20.4.2一個更高效的RRC脈沖形QPSK發(fā)射器330 20.4.3實時代碼總結(jié)332 20.5高階調(diào)制方案333 20.6后繼挑戰(zhàn)333 第21章項目12: QPSK數(shù)字接收器334 21.1理論334 21.2winDSK8演示337 21.3MATLAB實現(xiàn)337 21.3.1通過AGC仿真337 21.3.2一個完整的QPSK接收器341 21.4使用C語言的DSK實現(xiàn)346 21.4.1通過AGC實現(xiàn) 346 21.4.2一個完整的QPSK接收器350 21.4.3系統(tǒng)測試357 21.5后繼挑戰(zhàn)359 第Ⅲ部分: 附錄 附錄ACode Composer Studio: 概述363 A.1介紹363 A.2啟動Code Composer Studio363 A.3結(jié)論364 附錄BDSP/BIOS366 B.1介紹366 B.1.1DSP/BIOS的主要特性366 B.1.2DSP/BIOS線程366 B.2DSP/BIOS示例項目367 附錄C數(shù)值表示368 C.1字節(jié)序368 C.2整數(shù)表示369 C.3整數(shù)除法和舍入370 C.4浮點表示371 C.5定點表示374 C.6數(shù)值表示總結(jié)375 附錄DTMS320C6x架構(gòu)377 D.1計算機體系結(jié)構(gòu)基礎(chǔ)377 D.1.1指令集架構(gòu)378 D.1.2寄存器架構(gòu)378 D.1.3存儲器架構(gòu)379 D.1.4獲取執(zhí)行模型380 D.1.5流水線380 D.1.6單發(fā)射與多發(fā)射383 D.1.7調(diào)度383 D.2TMS320C671x架構(gòu)384 D.2.1存儲器系統(tǒng)385 D.2.2流水線與調(diào)度386 D.2.3外圍設(shè)備387 D.2.4主機端口接口387 D.3TMS320C674x架構(gòu)388 附錄EDSK相關(guān)工具389 E.1介紹389 E.2Windows控件應(yīng)用程序389 E.2.1示例Windows控件應(yīng)用程序390 E.3MATLAB導(dǎo)出390 E.3.1導(dǎo)出直接Ⅱ型實現(xiàn)390 E.3.2導(dǎo)出二階節(jié)實現(xiàn)391 E.4MATLAB實時接口392 附錄F與MATLAB一起使用代碼生成器393 F.1介紹393 F.2一個FIR濾波器例子393 F.2.1使用MATLAB Coder之前393 F.2.2使用MATLAB Coder395 F.2.3轉(zhuǎn)移到CCS項目401 F.2.4觀察401 F.3結(jié)論401 附錄GDSP電路板的電池電源402 G.1介紹402 G.2方法402 G.3測試403 G.3.1初始測試403 G.3.2最終測試403 G.4結(jié)論404 附錄H編程難點與陷阱405 H.1調(diào)試構(gòu)建與發(fā)布構(gòu)建405 H.2易變性(volatile)關(guān)鍵字405 H.3函數(shù)原型和返回類型406 H.4算術(shù)問題407 H.5控制內(nèi)存中的變量位置409 H.6實時計劃失敗409 H.7變量初始化410 H.8整型數(shù)據(jù)大小411 附錄IDSP電路板比較413 I.1介紹413 I.2三種電路板413 I.3結(jié)論416 附錄J縮寫、首字母縮略詞和符號417 參考文獻424
你還可能感興趣
我要評論
|