本書(shū)以TMS320C55xDSP為重點(diǎn),全面介紹了TMS320C5000DSP系統(tǒng)設(shè)計(jì)與開(kāi)發(fā)。全書(shū)共8章,首先詳細(xì)介紹了數(shù)字信號(hào)處理器的硬件結(jié)構(gòu)、匯編指令、存儲(chǔ)空間結(jié)構(gòu)和尋址方式;其次介紹了C55x處理器中C語(yǔ)言與匯編語(yǔ)言的混合編程方法;然后從應(yīng)用的角度,結(jié)合片內(nèi)集成外設(shè)的結(jié)構(gòu)和功能,給出了片內(nèi)集成外設(shè)驅(qū)動(dòng)程序開(kāi)發(fā)方法及部分片內(nèi)外設(shè)的調(diào)試方法;最后結(jié)合DSP軟/硬件的設(shè)計(jì),給出了詳細(xì)的設(shè)計(jì)方法和豐富的應(yīng)用實(shí)例。同時(shí)還對(duì)DSP的集成開(kāi)發(fā)環(huán)境CCS的使用方法進(jìn)行了詳盡的描述。
本書(shū)旨在從應(yīng)用的角度使讀者了解TMS320C55xDSP的體系結(jié)構(gòu)和基本原理,熟悉DSP芯片的開(kāi)發(fā)工具和使用方法,掌握DSP系統(tǒng)設(shè)計(jì)和軟/硬件開(kāi)發(fā)。
本書(shū)內(nèi)容豐富、新穎、實(shí)用性強(qiáng),適合從事數(shù)字信號(hào)處理的科技人員和高校師生閱讀。
汪春梅,上海師范大學(xué)電子工程學(xué)院教授,2004年10月-2005年4月 美國(guó)DAYTON 大學(xué)訪問(wèn)學(xué)者,近幾年發(fā)表學(xué)術(shù)論文16篇,出版著作兩部.自1998攻讀碩士開(kāi)始,在信號(hào)處理與應(yīng)用方向一直從事DSP系統(tǒng)設(shè)計(jì)與開(kāi)發(fā)工作,所以著作的重點(diǎn)依然是關(guān)于DSP技術(shù),在本課題中詳細(xì)介紹C55X DSP的基本原理,系統(tǒng)設(shè)計(jì)和軟硬件方法。并附有大量的應(yīng)用實(shí)例,實(shí)用性強(qiáng),對(duì)DSP的學(xué)習(xí)者具有較強(qiáng)的實(shí)踐指導(dǎo)意義。
第1章 數(shù)字信號(hào)處理和DSP系統(tǒng)
1.1 實(shí)時(shí)數(shù)字信號(hào)處理技術(shù)的發(fā)展
1.2 數(shù)字信號(hào)處理器的特點(diǎn)
1.2.1 存儲(chǔ)器結(jié)構(gòu)
1.2.2 流水線
1.2.3 硬件乘法累加單元
1.2.4 零開(kāi)銷(xiāo)循環(huán)
1.2.5 特殊的尋址方式
1.2.6 高效的特殊指令
1.2.7 豐富的片內(nèi)外設(shè)
1.3 德州儀器公司的DSP產(chǎn)品
1.3.1 C24x系列和C28x系列
1.3.2 C62x系列和C64x系列
1.3.3 C67x系列和C33
1.3.4 C54x系列和C55x系列 第1章 數(shù)字信號(hào)處理和DSP系統(tǒng)
1.1 實(shí)時(shí)數(shù)字信號(hào)處理技術(shù)的發(fā)展
1.2 數(shù)字信號(hào)處理器的特點(diǎn)
1.2.1 存儲(chǔ)器結(jié)構(gòu)
1.2.2 流水線
1.2.3 硬件乘法累加單元
1.2.4 零開(kāi)銷(xiāo)循環(huán)
1.2.5 特殊的尋址方式
1.2.6 高效的特殊指令
1.2.7 豐富的片內(nèi)外設(shè)
1.3 德州儀器公司的DSP產(chǎn)品
1.3.1 C24x系列和C28x系列
1.3.2 C62x系列和C64x系列
1.3.3 C67x系列和C33
1.3.4 C54x系列和C55x系列
1.3.5 C66x多核系列
1.4 DSP芯片的選擇
1.4.1 運(yùn)算速度
1.4.2 算法格式和數(shù)據(jù)寬度
1.4.3 存儲(chǔ)器
1.4.4 功耗
1.4.5 開(kāi)發(fā)工具
1.5 DSP應(yīng)用系統(tǒng)設(shè)計(jì)流程
思考與練習(xí)題
第2章 TMS320C55x的硬件結(jié)構(gòu)
2.1 TMS320C55x DSP的基本結(jié)構(gòu)
2.1.1 C55x 的CPU體系結(jié)構(gòu)
2.1.2 指令緩沖單元
2.1.3 程序流程單元
2.1.4 地址流程單元
2.1.5 數(shù)據(jù)計(jì)算單元
2.1.6 指令流水線
2.2 TMS320VC5509A的主要特性
2.2.1 VC5509A的主要特性
2.2.2 VC5509A的引腳功能
2.3 TMS320C55x 存儲(chǔ)空間結(jié)構(gòu)
2.3.1 存儲(chǔ)器映射
2.3.2 程序空間
2.3.3 數(shù)據(jù)空間
2.3.4 I/O空間
思考與練習(xí)題
第3章 TMS320C55x的指令系統(tǒng)
3.1 尋址方式
3.1.1 絕對(duì)尋址模式
3.1.2 直接尋址模式
3.1.3 間接尋址模式
3.2 TMS320C55x的指令系統(tǒng)
3.2.1 C55x指令的并行執(zhí)行
3.2.2 TMS320C55x DSP的匯編指令
思考與練習(xí)題
第4章 C55x處理器的軟件設(shè)計(jì)
4.1 C55x處理器程序基本結(jié)構(gòu)
4.1.1 自我調(diào)度程序的基本結(jié)構(gòu)
4.1.2 應(yīng)用嵌入式操作系統(tǒng)
4.2 C語(yǔ)言程序開(kāi)發(fā)及優(yōu)化
4.2.1 C語(yǔ)言中的數(shù)據(jù)類(lèi)型
4.2.2 對(duì)I/O空間進(jìn)行尋址
4.2.3 interrupt關(guān)鍵字
4.2.4 onchip關(guān)鍵字
4.2.5 C語(yǔ)言的優(yōu)化
4.3 C語(yǔ)言與匯編語(yǔ)言的混合編程
4.3.1 在C語(yǔ)言中直接嵌套匯編語(yǔ)句
4.3.2 C語(yǔ)言調(diào)用匯編模塊的接口
4.4 通用目標(biāo)文件格式
4.4.1 C/C++和匯編語(yǔ)言中段的分配
4.4.2 寄存器模式設(shè)置
4.4.3 鏈接命令文件
4.5 C55x處理器的數(shù)字信號(hào)處理庫(kù)和 圖像、視頻處理庫(kù)
4.5.1 C55x的數(shù)字信號(hào)處理庫(kù)
4.5.2 C55x的圖像、視頻處理庫(kù)
思考與練習(xí)題
第5章 TMS320C55x的片內(nèi)集成外設(shè)開(kāi)發(fā)及測(cè)試
5.1 C55x片內(nèi)外設(shè)與芯片支持庫(kù)簡(jiǎn)介
5.2 時(shí)鐘發(fā)生器
5.2.1 時(shí)鐘模式寄存器
5.2.2 工作模式
5.2.3 CLKOUT輸出
5.2.4 使用方法
5.2.5 使用方法及實(shí)例
5.2.6 時(shí)鐘發(fā)生器的調(diào)試
5.3 通用定時(shí)器
5.3.1 結(jié)構(gòu)框圖
5.3.2 工作原理
5.3.3 使用方法
5.3.4 通用定時(shí)器的應(yīng)用
5.3.5 通用定時(shí)器的調(diào)試
5.4 外部存儲(chǔ)器接口
5.4.1 功能與作用
5.4.2 外部寄存器接口硬件連接與配置
5.4.3 外部寄存器接口的軟件設(shè)置
5.5 主機(jī)接口(EHPI)
5.5.1 EHPI接口的非復(fù)用連接方式
5.5.2 EHPI接口的復(fù)用連接方式
5.5.3 EHPI口的寄存器
5.6 多通道緩沖串口McBSP
5.6.1 概述
5.6.2 組成框圖
5.6.3 采樣率發(fā)生器
5.6.4 多通道選擇
5.6.5 異常處理
5.6.6 McBSP寄存器
5.6.7 多通道緩沖串口的應(yīng)用
5.6.8 McBSP串口的測(cè)試
5.7 通用輸入/輸出端口GPIO
5.7.1 GPIO口概述
5.7.2 上電模式設(shè)定
5.7.3 驅(qū)動(dòng)程序開(kāi)發(fā)
5.7.4 通用輸入/輸出GPIO的測(cè)試
5.8 DMA控制器
5.8.1 概述
5.8.2 通道和端口
5.8.3 HPI的配置
5.8.4 DMA傳輸配置
5.8.5 DMA控制器的寄存器
5.8.6 使用方法及實(shí)例
5.9 I2C總線
5.9.1 I2C總線簡(jiǎn)介
5.9.2 I2C寄存器
5.9.3 I2C模塊的使用
5.10 多媒體卡控制器
5.10.1 多媒體卡控制器簡(jiǎn)介
5.10.2 MMC/SD模式
5.10.3 SPI模式
5.10.4 MMC控制器的應(yīng)用
5.11 通用串行總線(USB)
5.11.1 通用串行總線(USB)簡(jiǎn)介
5.11.2 USB的DMA控制器
5.11.3 USB模塊的寄存器
5.11.4 USB模塊的應(yīng)用
5.12 模數(shù)轉(zhuǎn)換器(ADC)
5.12.1 模數(shù)轉(zhuǎn)換器結(jié)構(gòu)和時(shí)序
5.12.2 模數(shù)轉(zhuǎn)換器的寄存器
5.12.3 使用方法及實(shí)例
5.13 實(shí)時(shí)時(shí)鐘(RTC)
5.13.1 實(shí)時(shí)時(shí)鐘基本結(jié)構(gòu)
5.13.2 實(shí)時(shí)時(shí)鐘的內(nèi)部寄存器
5.13.3 實(shí)時(shí)時(shí)鐘的應(yīng)用
5.14 看門(mén)狗定時(shí)器(Watchdog)
5.14.1 工作方式
5.14.2 寄存器說(shuō)明
5.14.3 看門(mén)狗定時(shí)器的應(yīng)用
5.15 異步串口(UART)
5.15.1 異步串口基本結(jié)構(gòu)
5.15.2 異步串口寄存器
5.15.3 異步串口的應(yīng)用
思考與練習(xí)題
第6章 DSP集成開(kāi)發(fā)環(huán)境CCS
6.1 CCS功能簡(jiǎn)介
6.2 CCS安裝與設(shè)置
6.2.1 CCS軟件安裝
6.2.2 CCS設(shè)置
6.3 CCS的基本操作
6.3.1 CCS的窗口和工具條
6.3.2 文件的編輯
6.3.3 反匯編窗口的使用
6.3.4 存儲(chǔ)器窗口的使用
6.3.5 寄存器窗口的使用
6.3.6 觀察窗口的使用
6.4 創(chuàng)建工程項(xiàng)目
6.4.1 工程項(xiàng)目的建立、打開(kāi)和關(guān)閉
6.4.2 向工程項(xiàng)目添加各類(lèi)文件
6.4.3 工程項(xiàng)目的構(gòu)建
6.5 利用CCS調(diào)試程序
6.5.1 裝載并運(yùn)行程序
6.5.2 斷點(diǎn)的使用
6.5.3 探針點(diǎn)的使用
6.5.4 圖形工具的使用
6.6 程序分析工具的使用
6.7 GEL工具的使用
6.8 CCS開(kāi)發(fā)DSP軟件使用舉例
思考與練習(xí)題
第7章 TMS320C55x硬件設(shè)計(jì)實(shí)例
7.1 DSP最小系統(tǒng)設(shè)計(jì)
7.1.1 C55x的電源設(shè)計(jì)
7.1.2 復(fù)位電路設(shè)計(jì)
7.1.3 時(shí)鐘電路設(shè)計(jì)
7.1.4 JTAG接口電路設(shè)計(jì)
7.1.5 程序加載部分
7.2 A/D與D/A設(shè)計(jì)
7.2.1 串行多路A/D設(shè)計(jì)
7.2.2 高速并行A/D設(shè)計(jì)
7.2.3 并行D/A設(shè)計(jì)
7.3 C55x在語(yǔ)音系統(tǒng)中的應(yīng)用
7.4 手寫(xiě)系統(tǒng)的實(shí)現(xiàn)
7.5 C55x在軟件無(wú)線電中的應(yīng)用
思考與練習(xí)題
第8章 TMS320C55x軟件設(shè)計(jì)實(shí)例
8.1 卷積算法
8.1.1 卷積算法
8.1.2 卷積算法的MATLAB實(shí)現(xiàn)
8.1.3 卷積算法的DSP實(shí)現(xiàn)
8.2 有限沖激響應(yīng)濾波器(FIR)的 實(shí)現(xiàn)
8.2.1 有限沖激響應(yīng)濾波器的特點(diǎn)和結(jié)構(gòu)
8.2.2 有限沖激響應(yīng)濾波器的MATLAB設(shè)計(jì)
8.2.3 有限沖激響應(yīng)濾波器DSP實(shí)現(xiàn)
8.3 無(wú)限沖激響應(yīng)濾波器(IIR)的 實(shí)現(xiàn)
8.3.1 無(wú)限沖激響應(yīng)濾波器的結(jié)構(gòu)
8.3.2 無(wú)限沖激響應(yīng)濾波器的 MATLAB設(shè)計(jì)
8.3.3 無(wú)限沖激響應(yīng)濾波器的DSP實(shí)現(xiàn)
8.4 快速傅里葉變換(FFT)
8.4.1 快速傅里葉變換(FFT)算法
8.4.2 快速傅里葉變換(FFT)的DSP實(shí)現(xiàn)
8.5 語(yǔ)音信號(hào)編碼解碼(G.711)
8.5.1 語(yǔ)音信號(hào)編解碼原理
8.5.2 語(yǔ)音信號(hào)編解碼的DSP實(shí)現(xiàn)
8.6 數(shù)字圖像的銳化
8.7 Viterbi譯碼
思考與練習(xí)題
附錄A 寄存器
附錄B VC5510中斷
附錄C TMS320C55x的狀態(tài)寄存器
附錄D TMS320C55x的匯編指令集
附錄E TMS320C55xDSP庫(kù)函數(shù)
附錄F VC5509系統(tǒng)部分原理圖
習(xí)題答案
參考文獻(xiàn)
前言
歷經(jīng)三十年多的發(fā)展,數(shù)字信號(hào)處理器(DSP)的應(yīng)用范圍已經(jīng)遍及軍用電子、消費(fèi)電子、工業(yè)控制等重要領(lǐng)域,各種嶄新的應(yīng)用層出不窮,這些應(yīng)用對(duì)DSP的處理能力、功耗、體積以及開(kāi)發(fā)的方便程度都提出了較高要求。而第三代DSP則以其強(qiáng)大的數(shù)字信號(hào)處理能力、超低功耗和適合手持設(shè)備的超小型封裝等特點(diǎn),較好地滿足了新一代電子產(chǎn)品的要求,以CCS為代表的集成開(kāi)發(fā)環(huán)境為應(yīng)用者提供了方便、快捷的DSP開(kāi)發(fā)手段。
C55x系列處理器在兼容C54x系列處理器指令集的基礎(chǔ)上,將處理速度提高到200~300MHz,而對(duì)DSP內(nèi)核又進(jìn)行了重大改進(jìn),將強(qiáng)大的處理能力和超低功耗完美結(jié)合,成為新一代數(shù)字信號(hào)處理器的典型代表。正是因?yàn)镃55x系列處理器具有這些特點(diǎn),所以特別適合嵌入式數(shù)字信號(hào)處理方面的應(yīng)用。我們從2003年起將所使用的平臺(tái)由C54x系列處理器轉(zhuǎn)換為C55x系列處理器,先后在軟件無(wú)線電、超聲波探測(cè)等多個(gè)項(xiàng)目中應(yīng)用C55x處理器,取得了較好的效果。我們先后編寫(xiě)了《TMS320C5000系列DSP系統(tǒng)設(shè)計(jì)與開(kāi)發(fā)實(shí)例》、《TMS320C55xDSP原理及應(yīng)用》(第2版)和《TMS320C55xDSP原理及應(yīng)用》(第3版),在征求讀者反饋意見(jiàn)的基礎(chǔ)上,第4版又對(duì)書(shū)中內(nèi)容進(jìn)行了補(bǔ)充和修訂。
為了適應(yīng)初學(xué)者的需要,《TMS320C55xDSP原理及應(yīng)用》(第4版)在內(nèi)容上注意了由淺入深、圖文并茂,全面系統(tǒng)地展開(kāi)論述,在每章之后附有習(xí)題,方便讀者理解和復(fù)習(xí)本章的內(nèi)容;本書(shū)還對(duì)C55x芯片支持庫(kù)、數(shù)字信號(hào)處理庫(kù)和圖像、視頻處理庫(kù)進(jìn)行了介紹,并在附錄中對(duì)數(shù)字信號(hào)處理庫(kù)和圖像、視頻處理庫(kù)的函數(shù)進(jìn)行了詳細(xì)說(shuō)明;本書(shū)增加了大量的軟硬件應(yīng)用實(shí)例,在書(shū)中介紹了大量實(shí)用DSP系統(tǒng),能夠滿足DSP人員之所需,書(shū)中所列出的大量典型的應(yīng)用實(shí)例,可在實(shí)際開(kāi)發(fā)中直接引用,相信能夠給開(kāi)發(fā)者帶來(lái)一些有益的幫助。
本書(shū)第1章結(jié)合德州儀器公司的DSP產(chǎn)品對(duì)DSP技術(shù)的發(fā)展概況進(jìn)行了介紹,讀者可以根據(jù)本章內(nèi)容和需求選取適合的DSP芯片;第2章重點(diǎn)介紹了TMS320VC55x處理器的硬件結(jié)構(gòu),并以TMS320VC5509為例介紹了C55x處理器的主要特性和功能,最后介紹了DSP的存儲(chǔ)空間結(jié)構(gòu);第3章在介紹數(shù)字信號(hào)處理和DSP系統(tǒng)的基礎(chǔ)上,詳細(xì)介紹了C55x處理器的匯編指令和尋址方式;第4章介紹了C55x處理器的程序基本結(jié)構(gòu),C語(yǔ)言編程以及優(yōu)化,C語(yǔ)言與匯編語(yǔ)言的混合編程,通用目標(biāo)文件格式,最后對(duì)C55x處理器的數(shù)字信號(hào)處理庫(kù)和圖像、視頻處理庫(kù)進(jìn)行了介紹;第5章介紹了TMS320C55x系列片內(nèi)集成外設(shè)的結(jié)構(gòu)、功能,以及芯片支持庫(kù)的使用和驅(qū)動(dòng)程序的開(kāi)發(fā),并給出了部分片內(nèi)外設(shè)的測(cè)試過(guò)程;第6章介紹了DSP的集成開(kāi)發(fā)環(huán)境CCS的原理和使用;第7、8章詳細(xì)介紹了DSP硬件、軟件的設(shè)計(jì)方法和應(yīng)用實(shí)例,第8章的軟件實(shí)例都可以在SIMULATE環(huán)境下運(yùn)行,而不需要硬件的支持。本書(shū)配有教學(xué)課件、軟件實(shí)例及部分程序代碼,如有需要請(qǐng)與出版社聯(lián)系或登錄華信教育資源網(wǎng)http://hxedu.com.cn。
本書(shū)由汪春梅策劃,汪春梅編寫(xiě)了其中第2、3、6、8章,第1、4、5、7章由孫洪波編寫(xiě)。在編寫(xiě)過(guò)程中,鄒俊忠、馬治國(guó)、常寧、葉宏、茅紅偉、張崇明、倪繼鋒、朱品昌等給予了支持和幫助,北京瑞泰創(chuàng)新科技有限公司的李心陽(yáng)工程師提供了部分技術(shù)資料,電子工業(yè)出版社給予了極大的鼓勵(lì)和支持。作者在此一并致謝。
本書(shū)既可以作為大中專院校的實(shí)踐類(lèi)選修課教材,也可作為電子工程技術(shù)人員的參考書(shū)籍。
希望此書(shū)對(duì)讀者有所裨益,也希望有助于DSP技術(shù)的推廣。限于作者的水平,書(shū)中的錯(cuò)誤在所難免,懇請(qǐng)讀者不吝賜教!
汪春梅
2014年2月于上海