DM6446数字视频开发板

SEED-DAVINCI_EVM DM6446数字视频开发板 阿军教程

第一、开发板概况

2006年TI公司推出了第一款基于DSP和ARM双核结构的DaVinci芯片。达芬奇技术的定义不仅仅局限为高度集成的片上系统(SoC),而是被赋予了更为广阔的含义,包括优化的应用软件、开发工具、达芬奇处理器和达芬奇技术支持系统。此后,TI又陆续推出了多款达芬奇芯片,目标集中于数字视频相关设备,比如便携式视频播放器、IP机顶盒、数码相机、视频监控等产品。【引自:基于达芬奇平台的H.264视频编码器设计(中国科学院光电技术研究院)韩文俊等】

实验室的板子是合众达的DM6446数字视频评估板:

SEED-DAVINCI_EVM V1.3 (TMS320DM6446)

SEED-DAVINCI_EVM V1.3 (TMS320DM6446ZWT)

该数字视频评估板的硬件组成如下所示:

DM6446硬件结构图

一、性能指标

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操作系统

二、应用领域

数码相机/摄像机

视频监控系统

安防监控系统

高级医疗影像

便携式视频播放器

IP机顶盒/IP可视电话

其他多数视频应用场合

(1) 德州仪器公司推出达芬奇数字视频处理平台

(2) 2008 TI DSP大赛 复旦大学:图像跟踪算法在DAVINCI SoC上的实现与优化

   

(3)2008 TI DSP大赛 上海交通大学:基于DAVINCI平台的智能视频检测跟踪与编码实现

(4)嵌入式开发平台应用于安防(视频监控)系统

第二、 开发流程

达芬奇芯片的双核结构使得其开发和单独的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侧的可执行应用程序。

第三、开发环境的搭建情况

安装所需的软件:

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文件到板子上就可以了

第四、参考资料

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.

转载于:https://www.cnblogs.com/goldencwcui/p/3392978.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值