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.

相关文章
相关标签/搜索