DM6446數字視頻開發板

SEED-DAVINCI_EVM DM6446數字視頻開發板 阿軍教程php

第1、開發板概況html

2006年TI公司推出了第一款基於DSP和ARM雙核結構的DaVinci芯片。達芬奇技術的定義不只僅侷限爲高度集成的片上系統(SoC),而是被賦予了更爲廣闊的含義,包括優化的應用軟件、開發工具、達芬奇處理器和達芬奇技術支持系統。此後,TI又陸續推出了多款達芬奇芯片,目標集中於數字視頻相關設備,好比便攜式視頻播放器、IP機頂盒、數碼相機、視頻監控等產品。【引自:基於達芬奇平臺的H.264視頻編碼器設計(中國科學院光電技術研究院)韓文俊等】linux

實驗室的板子是合衆達的DM6446數字視頻評估板:算法

SEED-DAVINCI_EVM V1.3 (TMS320DM6446)windows

SEED-DAVINCI_EVM V1.3 (TMS320DM6446ZWT)服務器

該數字視頻評估板的硬件組成以下所示:網絡

DM6446硬件結構圖架構

1、性能指標ide

TMS320DM6446ZWT雙核(ARM9 + C64X+) 函數

ARM926EJ-S  ARM9內核-300MHZ

TMS320C64X+ DSP內核-600MHZ

存儲資源:

SRAM(8M)、FLASH(256M)、ATA硬盤(40G)、DDR2內存(2G)

視頻I/O接口:

1路VIDEO IN視頻輸入(RCA複合視頻輸入)

1路VIDEO OUT視頻輸出(RCA複合視頻輸出)

S-VIDEO IN輸入端子

S-VIDEO OUT輸出端子

RGB份量輸出接口

NTSC/PAL攝像頭接口

音頻I/O接口:

CD質量音頻輸入輸出(立體聲輸入輸出、MICPHONE輸入、耳機輸出)

擴展接口:

SD/MMC/MS卡接口

10M/100M以太網接口

USB2.0(支持主從)接口

UART串口

LCD顯示屏接口

14針JTAG接口

軟件及程序:

H.263/H.264/MPEG-2/MPEG-4/WMV9/JPEG視頻編解碼

MP3/G.711音頻編解碼

各類API接口函數

DDK驅動程序(USB接口驅動、ATA IDE硬盤驅動、音頻/視頻驅動)

測試程序、各類CODEC DEMO演示程序

基於LINUX/WINCE操做系統

2、應用領域

數碼相機/攝像機

視頻監控系統

安防監控系統

高級醫療影像

便攜式視頻播放器

IP機頂盒/IP可視電話

其餘多數視頻應用場合

(1) 德州儀器公司推出達芬奇數字視頻處理平臺

(2) 2008 TI DSP大賽 復旦大學:圖像跟蹤算法在DAVINCI SoC上的實現與優化

   

(3)2008 TI DSP大賽 上海交通大學:基於DAVINCI平臺的智能視頻檢測跟蹤與編碼實現

(4)嵌入式開發平臺應用於安防(視頻監控)系統

第2、 開發流程

達芬奇芯片的雙核結構使得其開發和單獨的DSP和單獨的ARM都有很大的不一樣。首先ARM端要在MontaVista Linux操做系統下完成系統初始化,配置外設接口,以及其餘一些計算量相對較少的任務。其次在CCS下或者LINUX系統下完成DSP端程序的開發,主要是計算量較大的算法。最後,完成兩者的集成。

一般達芬奇平臺程序的執行都是由ARM端開始,而後由ARM端經過某種方式觸發DSP端的程序執行。實現這個過程要經過編解碼引擎(Codec Engine)和編解碼服務器(Codec Server)結構來完成。

從應用的角度來講,編解碼引擎是介於應用程序和具體算法之間的軟件模塊,是用來調用XDAIS算法的一組API集合。XDAIS是TI的一種算法標準,而XDM是在XDAIS基礎上又增長了雙核通訊後的算法封裝標準。

         Codec Engine:VISA API經過stub和skeleton訪問Codec Engine API,最終調用具體的算法。VISA API分爲四大部分: VISA create/control/process/delete 分別用來控制接口的建立、控制、處理和刪除。

         Codec Server: 編解碼服務器一般運行在DSP上,使用DSP/BIOS做爲其內核,能夠控制實際的DSP硬件,編譯後生成DSP端可執行的鏡像程序。

ARM端的應用程序經過VISA接口或者自定義接口向DSP端發出請求,並傳遞相關的參數,而後發送到DSP端的skeleton部分,由skeleton送出相應的算法,反過來skeleton會將DSP處理後的結果交由stubs送到ARM進行處理。

DM6446軟件模塊

用戶在ARM端進行LINUX應用程序的開發,包括I/O操做,調用LINUX API函數等。用戶程序使用由Codec Engine提供的VISA(Video/Image/Speech/Audio) API接口,實現對視頻、圖像、語言、音頻信號的處理。Codec Engine進一步使用DSP/BIOS LINK及XDM接口協議,與DSP端的Remote Server之間進行通訊。DSP端運行在DSP/BIOS之上,負責完成信號處理的算法,並將結果置於共享存儲空間中供ARM使用。

通常的開發步驟爲:

第一步:DSP算法開發(生成算法包)(*.a64p)

第二步:Codec Server集成(生成DSP端可執行程序)(*.x64p)

第三步:Codec Engine集成(建立Codec Engine配置文件)(*.cfg)

第四步:ARM端程序的生成(使用上面生成的算法包*.a64p、DSP可執行文件*.x64p和*.cfg配置文件來編寫相關的ARM端應用程序)

         達芬奇板子開發須要如下幾類工程師:DSP算法工程師、DSP系統工程師、ARM應用程序工程師。

DSP算法工程師:一般DSP算法工程師會把本身的符合XDM標準的算法編成一個LIB文件(或者*.a64p文件)提供給DSP系統工程師調用這個算法。

DSP系統工程師:根據算法文件最終build出一個DSP Server(也就是DSP的可執行程序)*.x64p文件。(相似於CCS下編譯生成的*.out文件)

ARM應用程序工程師:調用Codec Engine的VISA API,最終編譯出ARM側的可執行應用程序。

第3、開發環境的搭建狀況

安裝所需的軟件:

Windows XP 操做系統

VMware7.0 虛擬機

CCS3.3 DSP IDE集成開發環境

Emulator硬件仿真器JTAG驅動軟件

Windows XP下安裝CCH軟件(至關於FTP軟件,實現windows xp和linux之間傳遞文件)

Windows XP下安裝HyperTerminal超級終端(用來經過串口COM1發送命令給板子的UBOOT)

1安裝好WINDOWS XP操做系統,而且安裝好HYPERTERMINAL超級終端。

2在WINDOWS XP下安裝CCS3.3軟件,這個是TI推出的IDE開發環境。

3在WINDOWS XP下安裝SEED-XDS560PLUS-JTAG驅動程序(for CCS3.3)用來下載(*.OUT)可執行文件的

4在WINDOWS XP下安裝虛擬機VMWARE7.0

5在虛擬機上安裝紅帽REDHAT9.0 LINUX操做系統

6 虛擬機網絡鏈接問題:橋接方式,而且虛擬機的IP地址和XP的IP地址在同一個局域網地址內,而且虛擬機的路由IP地址寫XP機子的IP地址。

好比:本機XP的IP地址爲:192.168.0.136

那麼能夠設置虛擬機的IP地址爲:192.168.0.112

注意虛擬機的路由器地址必定要爲XP的IP地址:192.168.0.136

在這種狀況下,虛擬機能夠ping通WINDOWS XP主機。

注意:板子不支持ping協議,因此不要試圖去ping板子的網絡狀態

板子的IP地址爲:192.168.0.145

板子的啓動步驟:

1打開CCS3.3,而且鏈接好JTAG硬件仿真器,若是鏈接成功,能夠識別出ARM9和DSP-C644X+

2打開CD1裏面的UBoot程序,將uboot.out文件經過CCS和JTAD燒到板子上

3若是燒UBOOT成功,則打開串口,啓動板子電源就能夠顯示UBOOT啓動信息。

注意:S3的撥碼開關第0位必須是OFF狀態才能使用JTAD下載程序。

第0位是ON狀態就是LINUX下開發模式。

4若是UBOOT成功啓動,下面就安裝LINUX環境下的軟件了。

須要安裝的軟件不少,按照使用手冊一步一步執行就能夠了。

5環境搭建的難點是:NFS和TFTP的安裝和使用。

NFS是用來共享板子和虛擬機上的文件系統

TFTP是用來將內核文件傳輸到板子內存中的

6若是NFS和TFTP順利經過,則能夠經過串口發命令將LINUX內核文件uImage傳輸到板子的內存中。

7板子的內存中如今有了LINUX的內核文件uImage,要將內核文件燒到FLASH中才能正常使用

8在超級終端中發送命令:protect off , erase, cp.b,  protect on 等

9內核燒好之後,在超級終端中輸入:boot就啓動板子內核了。

10裝置DEMO程序,經過JTAD下載*.OUT文件到板子上就能夠了

第4、參考資料

DVEVM Getting Started Guide.pdf

DVSDK Getting Started Guide.pdf

SEED-DM6446開發手冊.pdf

基於達芬奇平臺的H.264視頻編碼器設計

基於DM6446平臺的智能視頻監控關鍵算法研究與實現(交大)

視頻跟蹤算法在DAVINCI SOC上的實現與優化(復旦)

相關網絡資源及論文

http://v.ku6.com/show/mCOa04GEo0zFXDyg.html
Davinci prototype on Xbox Kinect

http://www.tudou.com/programs/view/X_4i5dSNUhk/
TI技術支持–崔晶 DM6446

http://focus.ti.com.cn/cn/general/docs/gencontent.tsp?contentId=50657
達芬奇數字媒體片上系統的架構和Linux啓動過程
德州儀器半導體技術(上海)有限公司 技術支持 崔晶

http://processors.wiki.ti.com/index.php?title=Quickly_Getting_Started_on_TI_Codec_Engine
TI Codec Engine快速入門

http://www.ti.com/ww/cn/uprogram/dsps/20090531_01aa.html
TI DSP大賽介紹

http://wenku.baidu.com/view/176b16f8aef8941ea76e056a.html
快速入門TI CODEC ENGINE

No related posts.

相關文章
相關標籤/搜索