最新DSP技術(shù)——“達(dá)芬奇”系統(tǒng)、框架和組件
定 價:49 元
- 作者:張剛
- 出版時間:2009/8/12
- ISBN:9787118064018
- 出 版 社:國防工業(yè)出版社
- 中圖法分類:TN911.72
- 頁碼:
- 紙張:膠版紙
- 版次:1
- 開本:16K
《最新DSP技術(shù):“達(dá)芬奇”系統(tǒng)、框架和組件》從軟件工程層面分析了嵌入式SoC達(dá)芬奇技術(shù)的硬件、系統(tǒng)、框架和組件。由淺入深地介紹了SoC芯片及匯編指令,硬件評估板設(shè)計,移植操作系統(tǒng),達(dá)芬奇軟件資源和搭建流媒體應(yīng)用系統(tǒng),嵌入式中間件和達(dá)芬奇框架,以及怎樣裝配Codec引擎、創(chuàng)建Codec Server和編譯Codec算法;描述了如何利用達(dá)芬奇框架和H,264算法組件搭建一個高質(zhì)量、低成本的基于SIP的流媒體傳輸系統(tǒng),這是視頻監(jiān)控和視頻會議中普遍應(yīng)用的部件!蹲钚翫SP技術(shù):“達(dá)芬奇”系統(tǒng)、框架和組件》最后精心提供了11個實驗,讀者可以聯(lián)系作者(Email:CE S Lab@163.com)索取源代碼包。讀者通過這些實驗可以深入了解達(dá)芬奇技術(shù)本質(zhì),同時擁有了流媒體處理各方面的代碼資源,從修改這些代碼出發(fā)可以獲得各種復(fù)雜高效的流媒體應(yīng)用系統(tǒng)。今天的個人計算機(jī),就是明天的嵌入式SoC!采用這個理念,把面向服務(wù)的架構(gòu)SOA引入到異構(gòu)嵌入式多核處理器,就是Tl的達(dá)芬奇技術(shù)的關(guān)鍵特點(diǎn),它拓展了未來嵌入式SoC的一個發(fā)展方向!蹲钚翫SP技術(shù):“達(dá)芬奇”系統(tǒng)、框架和組件》介紹的嵌入式系統(tǒng)框架也為今后開發(fā)我國自主知識產(chǎn)權(quán)的多核嵌入式系統(tǒng)提供了一個研究方法!蹲钚翫SP技術(shù):“達(dá)芬奇”系統(tǒng)、框架和組件》可以作為高等學(xué)校電子信息專業(yè)本科畢業(yè)生就業(yè)培訓(xùn)的教材,同時可作為研究生進(jìn)行嵌入式系統(tǒng)體系架構(gòu)、流媒體算法等課題的研究平臺。
最全面地涉及嵌入式多處理器的達(dá)芬奇技術(shù)細(xì)節(jié),首次從軟件工程角度分析了達(dá)芬奇技術(shù)的硬件、系統(tǒng)、框架和組件,精心設(shè)計的1 1個實驗確保您擁有眾多C0dec資源,成為流媒體技術(shù)的高手!蹲钚翫SP技術(shù):“達(dá)芬奇”系統(tǒng)、框架和組件》幫助您:設(shè)計多核嵌入式處理器硬件系統(tǒng),在異構(gòu)平臺運(yùn)行不同操作系統(tǒng),理解達(dá)芬奇的框架,輕松實現(xiàn)視頻、圖像、語音和音頻(VISA)流媒體應(yīng)用,充分發(fā)揮視頻前后端、以太網(wǎng)、USB和ATA硬盤等豐富的片上外設(shè)的強(qiáng)大能力。閱讀《最新DSP技術(shù):“達(dá)芬奇”系統(tǒng)、框架和組件》您將明白如何:用定點(diǎn)DSP匯編指令實現(xiàn)浮點(diǎn)算法,用XDM規(guī)范實現(xiàn)達(dá)芬奇算法組件,用中間件構(gòu)建嵌入式系統(tǒng)框架。實現(xiàn)不同處理器間遠(yuǎn)端過程調(diào)用機(jī)制,用XDCT具裝配Codec引擎、創(chuàng)建Codec Server、編譯Codec算法。
第1章 達(dá)芬奇SoC硬件結(jié)構(gòu)
1.1 ARM子系統(tǒng)
1.1.1 概述
1.1.2 存儲器組織
1.2 DSP子系統(tǒng)
1.2.1 概述
1.2.2 存儲器組織
1.2.3 DSP數(shù)據(jù)通路與控制
1.2.4 DSP中斷控制器
1.2.5 DSP斷電控制器
1.2.6 DSP帶寬管理
1.2.7 DSP存儲器保護(hù)機(jī)制
1.3 視頻處理子系統(tǒng)(VPSS)
1.3.1 視頻前端
1.3.2 視頻后端
1.4 系統(tǒng)控制模塊
1.4.1 CPLD邏輯控制模塊
1.4.2 復(fù)位電路
1.5 電源管理
1.6 外部存儲接口
1.6.1 DDR2存儲器
1.6.2 NANDFlash
1.7 外圍控制模塊
1.7.1 12C擴(kuò)展GPl0模塊
1.7.2 網(wǎng)絡(luò)接口模塊
1.7.3 USB接口電路
1.8 音視頻模塊
1.8.1 音頻編解碼模塊
1.8.2 視頻編解碼模塊
1.9 DM6446總線共享
1.9.1 DMSoC交換中心資源
1.9.2 EDMA5控制器
1.9.3 EDMA3數(shù)據(jù)結(jié)構(gòu)
1.9.4 EDMA3參數(shù)RAM
1.9.5 連接(Linking)和鏈接(Chaining)
第2章 DM6446DSP指令集與程序設(shè)計
2.1 TMS320DM6446DSP指令集
2.1.1 Load/Store類指令
2.1.2 加減法指令
2.1.3 乘法指令
2.1.4 邏輯運(yùn)算指令
2.1.5 移位指令
2.1.6 位操作指令
2.1.7 比較及判別類指令
2.1.8 搬移指令
2.1.9 域乘法
2.1.10 軟件流水相關(guān)指令
2.1.11 程序轉(zhuǎn)移類指令
2.2 用定點(diǎn)DSP指令實現(xiàn)浮點(diǎn)除法
2.2.1 DM6446浮點(diǎn)數(shù)表示
2.2.2 確定小數(shù)點(diǎn)的位置
2.2.3 浮點(diǎn)數(shù)與定點(diǎn)數(shù)的轉(zhuǎn)換
2.2.4 實現(xiàn)定點(diǎn)DSP除法
2.2.5 牛頓迭代法
2.2.6 移位相減實現(xiàn)浮點(diǎn)除法
2.2.7 移位相減法的核心代碼
2.2.8 移位減法實現(xiàn)雙精度除法
2.2.9 兩種方法的比較
2.3 DSP線性匯編
2.3.1 線性匯編概述
2.3.2 優(yōu)化SATD函數(shù)
2.3.3 用線性匯編實現(xiàn)SATD
2.4 其他優(yōu)化方法
2.4.1 代碼編寫注意事項
2.4.2 內(nèi)聯(lián)函數(shù)
2.4.3 優(yōu)化編譯選項
2.4.4 存儲器的配置優(yōu)化
2.4.5 Cache的性能優(yōu)化
第3章 DVEVM使用指南
3.1 概述
3.2 硬件設(shè)置
3.3 運(yùn)行演示程序
3.3.1 默認(rèn)的自舉配置
3.3.2 開始演示程序
3.3.3 運(yùn)行stanclalonedemos
3.3.4 通過命令行運(yùn)行demos
3.3.5 運(yùn)行網(wǎng)絡(luò)demo
3.4 改變視頻輸入/輸出方式
·3.4.1 使用S-端子視頻輸入
3.4.2 使用S-端子視頻輸出
3.4.3 使用分量視頻輸出
3.5 將demo應(yīng)用放進(jìn)第三方菜單
3.6 DVEVM軟件設(shè)置
3.6.1 系統(tǒng)中的命令提示符
3.6.2 準(zhǔn)備并安裝DVEVM軟件
3.6.3 為目標(biāo)機(jī)訪問輸出一個共享文件系統(tǒng)
3.6.4 測試共享文件系統(tǒng)
3.6.5 使用PAL視頻制式的啟動配置
3.6.6 設(shè)置TFTP服務(wù)器
3.7 改變引導(dǎo)方法
3.7.1 使用EVM硬盤文件系統(tǒng)并從Flash啟動內(nèi)核
3.7.2 通過TFTP內(nèi)核引導(dǎo)并使用開發(fā)板硬盤文件系統(tǒng)
3.7.3 從Flash引導(dǎo)啟動Linux使用NFS文件系統(tǒng)
3.7.4 通過TFTP引導(dǎo)內(nèi)核使用NFS文件系統(tǒng)
3.8 設(shè)置build開發(fā)環(huán)境
3.8.1 寫一個簡單程序并在DVEVM上運(yùn)行
3.8.2 build一個新的Linux內(nèi)核
3.8.3 啟動新的Linux內(nèi)核
3.9 恢復(fù)和更新EVM硬盤驅(qū)動
3.9.1 系統(tǒng)設(shè)置
3.9.2 為DVEVM掛載根文件系統(tǒng)配置NFS
3.9.3 恢復(fù)DVEVM硬盤驅(qū)動器
第4章 DVEVM軟件設(shè)計
4.1 TMS320DM6446的初始化
4.2 外圍設(shè)備程序設(shè)計
4.2.1 視頻模塊程序設(shè)計
4.2.2 音頻模塊程序設(shè)計
4.2.3 Flash程序設(shè)計
4.2.4 USB程序設(shè)計
4.2.5 以太網(wǎng)口程序設(shè)計
4.3 應(yīng)用程序設(shè)計
4.3.1 DVEVM音視頻編/解碼算法示例
4.3.2 算法實現(xiàn)線程
第5章 嵌入式操作系統(tǒng)引導(dǎo)與配置
5.1 Bootloader概述
5.1.1 Bootloadler的概念
·5.1.2 DVEVM啟動機(jī)制
5.1.3 Bootloader固件程序設(shè)計
5.1.4 實現(xiàn)NORflash啟動
5.1.5 AIROM啟動模式
5.2 實現(xiàn)多種下載接口的Bootloader
5.2.1 實現(xiàn)下載接口
5.2.2 設(shè)置內(nèi)核啟動參數(shù)及調(diào)用內(nèi)核
5.3 MontaVistaLinux及驅(qū)動的配置和編譯
5.3.1 內(nèi)核體系結(jié)構(gòu)及DM6446驅(qū)動程序
5.3.2 構(gòu)建一個嵌入式Linux內(nèi)核示例
5.3.3 DSP/BIOSTM實時操作系統(tǒng)簡介
5.3.4 DM644x中DSP的啟動(Boot)模式
第6章 DVSDK軟件開發(fā)套件
6.1 DVSDK開發(fā)包
6.1.1 編碼器和解碼器
6.1.2 軟件體系結(jié)構(gòu)
6.2 DVSDK安裝與設(shè)置
6.2.1 命令提示符
6.2.2 安裝
6.2.3 設(shè)置build開發(fā)環(huán)境
6.2.4 為目標(biāo)機(jī)重新編譯DVSDK軟件
6.3 測試build環(huán)境
6.4 為DSP端開發(fā)使用DVsDK軟件
6.4.1 重新buildDSP/BIOSUNK
6.4.2 使用數(shù)字視頻測試工具(DVTB)
6.4.3 安裝和運(yùn)行SoC分析器
6.5 在WindOWS主機(jī)環(huán)境安裝組件
6.6 RTSC編解碼器和服務(wù)器包向?qū)?br />
6.6.1 介紹
6.6.2 下載
6.6.3 前提條件
……
第7章 達(dá)芬奇框架
第8章 裝配Codec
第9章 創(chuàng)建Codec SERVER
第10章 編譯Codec算法
第11章 基于DVEVM的SIP視頻監(jiān)控系統(tǒng)
第12章 Da Vinci實驗例程
附錄 本書中用到的術(shù)語及縮寫對照表
附圖
參考文獻(xiàn)
第1章 達(dá)芬奇SoC硬件結(jié)構(gòu)
1.6 外部存儲接口
在DM6446中有與幾種形式的外部存儲器接口:異步EMIFA(NOR Flash,SRAM),NARD Flash以及CF卡等。異步EMIFA包括l個8bit或16bit數(shù)據(jù)線,1個24bit地址總線,4個專用片選線,支持的存儲接口有NAND、ATA/CF、主機(jī)端接口。NAND接口包括的存儲類型有NAND卡、MMC卡和SD卡。DDR2存儲控制器用于與l6bit或32bit的DDR2 SDRAM連接。DDR2 SDRAM在達(dá)芬奇技術(shù)中有很重要的作用,它可以用來緩沖視頻輸入圖形數(shù)據(jù),作為OSD的緩沖器,存儲ARM和DSP代碼等。DM6446可支持256MB的32bit DDR2 SDRAM存儲空間,128MB的16bit Flash ROM存儲空問。
1.6.1 DDR2存儲器
DDR2存儲器是整個DM6446系統(tǒng)的緩沖中心。系統(tǒng)采用兩片數(shù)據(jù)寬度為16bit的DDR2存儲器組成寬度為32bit的數(shù)據(jù)總線。芯片采用Micr0公司生產(chǎn)的MT47H32M16BT芯片,該芯片與很多廠商生產(chǎn)的不同容量的DDR2芯片都能實現(xiàn)管腳間的完全兼容。DDR2存儲器在時鐘的上升沿和下降沿都會傳輸數(shù)據(jù),每個時鐘周期傳輸2個數(shù)據(jù)字。同時DDR2采用4nprefetch(4n預(yù)。┘夹g(shù),也就是當(dāng)DDR2在收到DDR2讀操作命令時,會在內(nèi)部一次取出4個32bit數(shù)。這4個32bit數(shù)分2個時鐘發(fā)送出去。寫操作過程正好相反。DDR2外部傳輸DQS和DQS#雙向差分?jǐn)?shù)據(jù)閘門信號。讀操作時這對信號由DDR2發(fā)出CPU接收,且CPU在信號的邊沿讀回數(shù)據(jù);寫操作時這對信號由CPU發(fā)出DDR2接收,且DDR2存儲器在信號的中間時刻接收數(shù)據(jù)。MT47H32M16BT數(shù)據(jù)寬度為16bit,所以對于高字節(jié)和底字節(jié)分別由UDQS、UDQS#和LDQS、LDQS#控制。MT47H32M16的時鐘信號CK和CK#也為一對差分信號,系統(tǒng)將CK信號上升沿與CK#信號的下降沿的交叉點(diǎn)作為系統(tǒng)時鐘的正沿(上升沿),在系統(tǒng)時鐘的正沿鎖存命令(包括數(shù)據(jù)和信號)!