为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

SEED-DVS6446-Training

2011-06-29 50页 ppt 15MB 29阅读

用户头像

is_013246

暂无简介

举报
SEED-DVS6446-TrainingnullSEED-DVS6446SEED-DVS6446一、DaVinci 发展历程 二、TMS320DM644x芯片介绍 三、SEED-DVS6446开发板 四、SEED SDK的演示 五、SEED-DVS6446软硬件测试 六、 SEED-DVS6446系统恢复及外接设备使用 七、SEED提供支持一、DaVinci 发展历程 二、TMS320DM644x芯片介绍 三、SEED-DVS6446开发板 四、SEED SDK的演示 五、SEED-DVS6446软硬件测试 六、 SEED-DVS6446系统恢...
SEED-DVS6446-Training
nullSEED-DVS6446SEED-DVS6446一、DaVinci 发展历程 二、TMS320DM644x芯片介绍 三、SEED-DVS6446开发板 四、SEED SDK的演示 五、SEED-DVS6446软硬件测试 六、 SEED-DVS6446系统恢复及外接设备使用 七、SEED提供支持一、DaVinci 发展历程 二、TMS320DM644x芯片介绍 三、SEED-DVS6446开发板 四、SEED SDK的演示 五、SEED-DVS6446软硬件测试 六、 SEED-DVS6446系统恢复及外接设备使用 七、SEED提供支持第一部分 第一部分 DaVinci 发展历程DaVinci™ 技术发布DaVinci™ 技术发布DaVinci™ 技术 品牌发布200620052007第一批产品数字视频 软件开发套件DM6441数字视频 评估模块达芬奇平台针所催生众多的新产品VIDEO SECURITYSET-TOP BOX / HOME MEDIA SERVERVIDEO PHONE / VIDEO CONFERENCINGPERSONAL MEDIA PLAYERSMEDICAL IMAGING达芬奇平台针所催生众多的新产品达芬奇五大类平台及目标应用 达芬奇五大类平台及目标应用 第二部分 TMS320DM644x芯片介绍 第二部分 TMS320DM644x芯片介绍 达芬奇简化数字视频创新工作达芬奇简化数字视频创新工作Symbian™Palm® Linux®框架操作系统、设备驱动器及 APIImagingMessagingPush to talkGamesMobile documentsVideo用户体验使 OEM 增值产品实现差异化多媒体编解码器APIs设备驱动器nullVideo Processing Subsystem视频处理子系统TMS320DM6446/3™ 处理器构架 针对视频进行优化的 TMS320C64x+™ DSP @ 600MHz H.264 MP@L3,30fps SD 解码 VC1/WMV9 Full D1 SD 解码 MPEG-2 MP@ML SD 解码 MPEG-4 ASP Full D1 SD 解码外设 后端ARM 子系统DSP 子系统视频-影像 协处理器 (VICP)屏幕菜单式 调节 (OSD)EDMAATA/ Compact FlashAsync EMIF/ NAND/ SmartMediaMMC/ SDWatchdog TimerPWMPWMPWMGeneral- Purpose TimerDDR2 Controller (16b/32b)USB 2.0 PHYVLYNQEMAC With MDIO连接性编程/数据存储SPIUARTUARTUARTI2CAudio Serial Port串行接口系统DM6443ARM926EJ-S 300 MHz CPUC64x+TM DSP 600 MHz Core资源交换中心 (SCR)专用视频处理子系统 后端——集成 OSD,四个视频 DAC,24 位数字 RGB 输出视频 编码器 (VENC)/6EDMA 3.0USB 2.0 PHYVLYNQDDR2 Controller (16b/32b)ATA/ Compact FlashMMC/ SDC64x+TM DSP 600 MHz Corenull针对视频进行优化的 TMS320C64x+™ DSP@ 405MHz核心 H.264 BP, D1 解码 MPEG-2 MP @ ML解码 MPEG-4 ASP D1解码 VC1/WMV9 D1解码 H.264 BP D1 编码 H.264 MP D1解码 同时 H.264 BP CIF 编码 专用视频处理子系统 后端——集成 OSD,四个视频 DAC, 24 位数字 RGB 输出 前端——图像缩放工具、影像处理引擎、 16 位数字输入优化功耗 双电压 & 时钟可伸缩 (1.05V / 405MHz1.20V / 513MHz) 分区域供电 (DSP子系统可独立断电) RAM可挂起模式 TMS320DM6441™ 处理器构架 DM6441 能够降低功耗达35% DM6441 能够降低功耗达35% 完全可以运行同样应用: MontaVista Linux DaVinci™ 编解码引擎 MPEG-2 D1 解码 @ 30fps MP3 解码nullDaVinci技术平台:硬件DM6446功能框图Switched Central Resource (SCR)PeripheralsVideo Processing SubsystemFront EndBack EndARM SubsystemARM926EJ-S CPU16 KB I-Cache8 KB D-Cache16 KB RAM8 KB ROMDSP SubsystemC64x+TM DSP CPU32 KB L1 Pgm80 KB L1 Data16 KB ROM64 KB L2 RAMVideo-Imaging Coprocessor (VICP)JTAG InterfaceSystem ControlPLLs / Clock GeneratorsPower/Sleep ControllerPin MultiplexingCCD Controller Video InterfaceResizerHistogram/ 3APreviewOn-Screen Display (OSD)Video Encoder (VENC)10b DACInput Clock(s)NTSC/ PAL, S-Video, RGB, YPbPrBT.656, Y/C, RAW (Bayer)10b DAC10b DAC10b DACEDMAUSB 2.0 PHYEMAC With MDIOATA/ Compact FlashAsync EMIF/ NAND/ SmartMediaMMC/ SDSPIUARTUARTUARTI2CAudio Serial PortGeneral- Purpose TimerWatchdog TimerPWMPWMPWMGeneral- Purpose TimerDDR2 Controller (16b/32b)ConnectivityProgram/Data StorageSerial InterfacesSystem8b BT.656, Y/C, 24b RGB片上外设组: 存储类外设:本地存储 互联类外设:网络连接 通用类外设:接口片外外设VPSS视频处理子系统 方便与各种视频格式接口 进一步减轻DSP处理的负担C64x+ DSP子处理器 可编程:视频编解码算法更灵活VICP视频/图像协处理器 硬件实现运算密集处理:减轻DSP处理的负担ARM926主处理器 标准的操作系统:WinCE、Linux,应用更加灵活为各种网络化的数字视频编解码应用提供片上系统(Soc)硬件平台nullDaVinci技术平台:硬件VPSS前端 CCD控制器CCDC 预览器Previewer 图像缩放Resizer 硬件自动白平衡、自动对焦、自动曝光H3A VPSS后端 支持图形、字符叠加OSD 视频编码器 4路54MHz DAC,提供各种模拟视频输出组合 多种格式数字视频输出视频处理子系统VPSS:概述nullDaVinci技术平台:硬件电荷耦合器件控制器CCDC 通过A/D和时序发生器接口16-位CCD/CMOS图像传感器 可支持最高75MHz的传感器时钟 提供8-/16-位BT.656标准接口视频处理子系统VPSS前端:CCD控制器nullDaVinci技术平台:硬件预览器Previwer:硬件实现图像格式的转换 预览器的输入为传统的RGB格式 预览器的输出为YCbCr 4:2:2格式 输入到预览器的数字视频数据既可来自CCDC,也可来自外部存储器视频处理子系统VPSS前端:预览器PreviewernullDaVinci技术平台:硬件缩放器Resizer:硬件实现图像大小的缩放 从预览器或外部存储器接收数据 缩放范围从1/4x~4x 水平和垂直方向的缩放比例相互独立视频处理子系统VPSS前端:缩放器ResizernullDaVinci技术平台:硬件H3A:硬件实现自动对焦、自动白平衡、自动曝光 只接受RBG图像数据格式 将图像细分为像素块 2维像素块 像素块的大小、位置可编程 对像素块进行累加和峰值统计以实现3A视频处理子系统VPSS前端:H3AnullDaVinci技术平台:硬件OSD:硬件实现图形、字符叠加 同时支持2个视频窗和2个图形、字符(OSD)窗口 支持8种视频窗数据与OSD窗数据混合的方法视频处理子系统VPSS后端:OSDnullDaVinci技术平台:硬件支持480P/576P NTSC/PAL标准模拟视频输出 4-通道10-位D/A输出,可产生各种组合的模拟视频输出 复合视频 超级视频(S-Video独立的亮度和色度):用2-通道D/A 分量视频(YPbPr或RGB):用3-通道D/A 复合视频 + 分量视频:用4-通道D/A 内部产生彩色条(100/75%)视频处理子系统VPSS后端:模拟视频输出nullDaVinci技术平台:硬件视频处理子系统VPSS后端:数字视频输出时钟可编程,最高可达75MHz 支持多种数字视频输出格式 16-位YCbCr 8-位YCbCr BT.656 24-位RGB 用于数字RGB输出的低通滤波器 可编程时序发生器 支持主/从操作方式 内部产生彩色条(100/75%)nullDaVinci技术平台:ARM-DSP集成共享外设 ARM和DSP都可以访问EDMA ARM和DSP都可以访问ASP 共享存储器 ARM可以访问DSP内部存储器(L1P,L1D,L2) DSP可以访问ARM内部存储器 ARM和DSP都可以访问DDR2存储器控制器和AEMIF ARM-DSP中断 ARM可以中断DSP(通过4个通用中断和1个不可屏蔽中断) DSP可以中断ARM(通过2个通用中断) ARM可以控制DSP的电源、时钟、复位和引导 nullDaVinci技术平台:ARM-DSP通信 由于ARM可以访问DSP内部存储器(L1P,L1D,L2),DSP也可以访问ARM内部存储 器,ARM和DSP共享着DDR和AEMIF,因此,当ARM端需要DSP端进行数据处理时,通 常只需传递需要处理的数据地址指针给DSP,而无需大块的数据搬移。它们之间的通信可 以通过互相中断实现。例如,当ARM想要让DSP处理放在共享存储器中的数据时,ARM 可以通过发送中断实现。其过程如下: ARM往共享存储器中写入命令 ARM中断DSP DSP响应中断并读取共享存储器中的命令 DSP根据命令执行处理任务 DSP完成处理后中断通知ARM nullDaVinci技术平台:软件软件架构ARM为主处理器:用户应用程序在ARM实现 移植操作系统OS:LINUX、WinCE…… 用户用下列3个APIs来构建自己的应用程序: EPSI:Easy Peripheral Software Interface设备驱动程序 VISA:Video, Imaging, Speech and Audio应用层音/视频编解码引擎接口 xDM:xDAIS for Digital Media具体的音/视频编解码算法接口,由VISA调用 DSP为从处理器:主要用来实现视频/图像处理 ARM与DSP之间用DSP/BIOS LINK来通信 DSP主要用来实现视频/图像编解码算法xDMnullDaVinci技术平台:软件OS:已移植了基于MontaVista内核的LINUX 2.6.10 EPSI:基于LINUX的设备驱动程序 串口:UART、IIC、SPI 存储:ATA、NAND、MMC 网络:10/100M以太网 USB:海量存储,主机端和设备端驱动程序 音频:OSS音频驱动程序 视频: V4L2视频采集, FBDev/DirectFB视频显示 用户可根据市场需要,移植EPSI到基于其他的操作系统上操作系统和驱动程序nullDaVinci技术平台:软件VISA API是音/视频编解码的用户接口 VISA用来处理视频Video、图像Imaging、语音Speech、音频Audio 编码与解码的API组相互独立,所以总有8组API: VIDENC、IMGENC、SPHENC、AUDENC VIDDEC、IMGDEC、SPHDEC、AUDDEC 每个VISA组中关键的API有: xxx_create xxx_process xxx_control xxx_deleteVISAnullDaVinci技术平台:软件可从TI的第三方购买各种音/视频编解码算法 Video H.264、H.263、MPEG4、MPEG2、WMV9、AVS、SVC Image JPEG Audio MP3、WMA、AAC、Dolby AC-3 Speech G.711、G.723.1、G.728、G.729xDMnullDaVinci技术平台:软件xDM是TI公布eXpressDSP数字媒体软件标准,这套DSP软件低阶应用程序接口(API)提供一套让应用能够整合与互换使用多种编码译码器的架构。 xDM(xDAIS for Digital Media)是TI广泛采用的eXpressDSP算法互通性标准xDAIS(eXpress DSP Algorithm Interface Standard)的延伸和发展,增加了两个视频处理的函数。 固定架构应用若能更换算法而不必重写程序,就能协助开发商将同一硬件平台应用于更多产品。xDMnullDaVinci技术平台:软件在Davinci软件中,符合xDAIS的音视频编解码算法(即xDM算法)的调用是通过Codec Engine的VISA API完成的。Codec Engine通过这套API为算法的执行提供了一个标准的软件架构和接口,体现在以下几个方面: 1. 通过Codec Engine API调用的算法可以运行在本地(ARM侧)或者远端(DSP侧); 2. Codec Engine可以基于ARM+DSP、DSP或ARM上运行;   3. 无论Codec Engine运行在ARM还是DSP上,对应的Codec Engine API都是完全一致的; 4. Codec Engine的API与操作系统无关。比如Linux、VxWorks和WinCE环境下的Codec Engine API都是完全一致的。 Codec EnginenullDaVinci技术平台:软件1. 开发并完成Codec,就是要开发音视频编解码的核心算法。Codec主要完成音视频的核心算法,应用程序运行时被调用,并不参与其他功能。 2.生成一个在DSP上运行的可执行程序*.x64P(即.out文件)(使用 xDC(Express DSP Component)工具)。xDC按照build指令,对算法的源文件进行build(类似于make)生成DSP Server .x64P文件。这个过程可以分为三部分:创建编解码算法的源文件;设置xDC的配置文件;执行“make”生成可执行文件。 应用程序开发流程nullDaVinci技术平台:软件3.根据可执行文件*.x64P的名字及其中包含的具体的音视频编解码算法创建Codec Engine的配置文件*.cfg。这个文件定义Engine的不同配置,包括Engine的名字、每个Engine里包括的所有算法及每个算法运行在ARM还是DSP侧等等 4.应用工程师收到不同的配置文件*.cfg,把自己的应用程序通过编译、链接,最终生成ARM侧可执行文件。应用程序开发流程第三部分 SEED-DVS6446开发板 第三部分 SEED-DVS6446开发板 SEED-DVS6446:达芬奇视频应用DSP开发板SEED-DVS6446:达芬奇视频应用DSP开发板SEED-DVS6446达芬奇视频应用DSP开发板基于最新达芬奇视频处理芯片TMS320DM6446研制,充分发挥达芬奇高集成度硬件、音视频软件算法优势,使视频数字化、监控网络化、系统集成化、管理智能化,并且具有体积小、布线简单、成本低、不占用主机资源等特点。 原始设备制造商(OEM)既可利用它丰富的硬件、软件特点作为标准参考设计平台,也可以将SEED-DVS6446应用到系统集成中,从而更加快捷地开发出一系列创新且经济高效的数字视频产品,是TI达芬奇指定平台。SEED-DVS6446SEED-DVS6446购买开发板的好处 -缩短开发周期 开发板上提供的资源 -软件:MontaVista Linux,驱动,DVSDK -硬件:原理图,芯片资料 下一步市场推广方式 -SEED-DVS6446 含开发包 提供Total Solution 包括:1,SEED-DVS6446;2,SEED-XDS560PLUS 3,H.264编解码算法;4,SEED-DVS6446 PCB图 目的:加快最终用户开发进度,减少用户开发难度,更快实现达芬奇平台推向市场 SEED-DVS6446原理框图SEED-DVS6446原理框图--ARM9主频高达297MHz DSP主频高达594MHz --256MDDR2内存 64M NAND Flash --1路RS232标准串口 1路RS485标准串口 USB2.0可达480Mb/s 10/100M以太网接口 --1路标准模拟视频输入 --支持1路CVBS视频输出 和1路VGA输出 --支持1路立体声音频输入,1路立体声音频输出 --可外扩硬盘存储 --可外扩SD卡存储 SEED-DVS6446技术指标SEED-DVS6446技术指标主处理器: TMS320DM6446,ARM926EJ-S核工作主频高达297MHz,C64x+DSP核工 作频率高达594MHz DDR DRAM:256MB,工作时钟169MHz 视频输入: 支持一路PAL/NTSC标准模拟视频信号CVBS视频输入 视频输出: 支持一路CVBS视频输出和一路VGA视频输出 音频输入输出:一路立体声音频输出,一路立体声音频输入 串口: 一路RS232C和一路RS485标准的异步串口,可直接连接采用工业标准的异步通信的主机和外设。 以太网接口: 10M/100M标准以太网接口,便准的带绿、黄2个LED指示灯的RJ48连接器 ATA接口: 40-芯的IDC针式插座,实现ATA的PIO、DMA、Ultra DMA传输模式 USB接口: 支持USB2.0主从模式操作, 480M-位/秒USB 2.0设备端接口,可直接连接主机,实现高速、大量的数据传输。 工作温度: 0-70 ℃ SEED-DVS6446应用方向SEED-DVS6446应用方向SEED-DVS6446可以应用于: 电力视频监控 楼宇监控、可视对讲、远程教学、智能交通 视频电话、数字视频录像机(DVR) 视频服务器、IP机顶盒 安防监控 各种数码产品等 SEED-DVS6446系统的相应的测试程序SEED-DVS6446系统的相应的测试程序 Video 的操作示例程序。 VGA的操作示例程序。 Audio 的操作示例程序。 USB 的操作示例程序。 ATA 的操作示例程序 DDR 的操作示例程序 UART-RS232的操作示例程序 UART-RS485的操作示例程序 Ethernet的操作示例程序 SD卡的操作示例程序 NAND Flash的操作示例程序 视频输入-TVP5150视频输入-TVP5150SEED-DVS6446视频输入接口选用了解码芯片TVP5150PBS。它是一款高性能的视频解码器,可将NTSC、PAL视频信号转换成数字色差信号(YUV422),支持两个复合视频或一个S端子输入。输出格式为ITU-R BT.656,并支持MacrovisionTM复制保护以及高级的VBI功能。TVP5150PBS还具备了封装小(32脚的TQFP)、功耗小(<150mV)的特点,因此,非常适用于便携、批量大、高质量和高性能的视频产品。 SEED-DVS6446中,TMS320DM6446与TVP5150的连接。板卡上可以接两路的复合视频输入。 TVP5150PBS的配置是通过标准的IIC总线来完成的。 TMS320DM6446与TVP5150连接框图TMS320DM6446与TVP5150连接框图视频输出视频输出SEED-DVS6446视频输出采用DM6446片内的四路10位的DAC输出,实现CVBS与VGA输出。其中CVBS输出接口使用了1路DAC,VGA输出接口使用了3路的DAC。当配置为VGA输出接口时,还使用了行场同步信号HSYNC和VSYNC。 SEED-DVS6446的VGA视频输出接口由VPBE模块提供。VPBE输出接口分为数字接口和模拟接口两部分,模拟接口包括4路视频DAC信号,一路DAC电压参考线和R偏差信号。其中,DAC1被用来作为模拟R信号输出,DAC2被用来作为模拟G信号输出,DAC3被用来作为模拟信号B输出,模拟RGB信号与HD、VD一起,组成了VGA接口的基本输出信号。 SEED-DVS6446视频输出连接框图SEED-DVS6446视频输出连接框图UARTUARTSEED-DVS6446系统利用TMS320DM6446集成的UART外设控制器,扩展配置了两个UART通用异步串口,一个配置为RS232用于系统启动时的控制台使用,一个配置为RS485用于工业应用如云台控制或与其他设备通信等 TMS320DM6446集成了UART控制器,支持3个UART外设连接。UART支持基于工业标准的TL16C550异步通信模块,支持FIFO模式数据传输,最大支持16字节数据的缓存,从而减轻接收和发送数据时CPU程序的时钟消耗 SEED-DVS6446配置UART0为RS232模式,UART1为RS485模式。 RS232异步串口接口电平RS232异步串口接口电平SEED-DVS6446采用MAX3221单通道RS232协议收发器,使得异步串口电平符合RS232电平标准。RS232采用RXD、TXD两线制。RS485异步串口接口电平RS485异步串口接口电平SEED-DVS6446系统扩展了一个RS485接口,用于云台控制等设备。UART RS485接口通过SN65HVD485ED半双工RS485收发器连接。 SN65HVD485ED是一款为RS485数据总线网络设计的半双工收发器,采用5V供电,符合TIA/EIA-485A标准,适合于长距离双绞线传输,数据传输速率最科大10Mbps。因此被广泛应用于工业领域。 SEED-DVS6446系统中RS485 UART接口与RS485控制芯片连接,并采用GPIO控制数据的输入输出操作实现半双工功能。音频输入与输出音频输入与输出SEED-DVS6446采用TLV320AIC23B实现单路立体声音频的输入/输出。TLV320AIC23B(以下简称AIC23B)是TI 推出的一款高性能的立体声音频Codec 芯片,内置耳机输出放大器,支持MIC 和LINE IN 两种输入方式(二选一),并且输入和输出都具有可编程增益调节。AIC23B 的模数转换(ADC)和数模转换(DAC)部件高度集成在芯片内部,采用了先进的Sigma-delta 过采样技术,可以在8K 到96K 采样率范围内提供16-位、20-位、24-位和32-位采样,ADC 和DAC 的信噪比分别可以达到90dB 和100dB。同时,AIC23B 还具有很低的能耗,回放模式下功率仅为23mW,省电模式下更是小于15uW。 TLV320AIC23B与微处理器的接口有二个,一个是控制口,用于设置TLV320AIC23B的工作参数,另一个是数据口,用于传输TLV320AIC23B 的A/D、D/A 数据。SEED-DVS6446系统上将TMS320DM6446的ASP与TLV320AIC23B接口;使用IIC总线与TLV320AIC23B 的控制口接口。 音频输入与输出音频输入与输出DM6446的ASP接口无缝连接,可以方便的实现主模式与从模式两种工作方式。当ASP为从模式时,ASP的接收时钟与帧同频信号都由AIC23B 来提供;当ASP 为主模式时,ASP 产生所有的信号。 BCLK:数据口位-时钟信号,当AIC23B 为从模式时(通常情况),该时钟由DSP产生;AIC23B 为主模式时,该时钟由AIC23B 产生;LRCIN:数据口DAC 输出的帧同步信号(IIS 模式下左/右声道时钟);LRCOUT:数据口ADC 输入的帧同步信号; DIN:数据口DAC 输出的串行数据输入; DOUT:数据口ADC 输入的串行数据输出 第四部分 SEED SDK演示 第四部分 SEED SDK演示 SEED-DVS6446_SDKSEED-DVS6446_SDKSEED-DVS6446_SDK是SEED DVS6446平台随机开发软件套件,该套件基于TI的DVEVM和DVSDK V1.2系列套件进行了整合,将繁琐的安装、设置、各个目录下程序编译器路径复杂等进行简化,减少了用户的操作,降低了开发难度 SEED-DVS6446开发软件套件完全等同于TI的套件,用户可以直接使用该套件进行ARM端驱动、应用程序和DSP端算法的开发工作。 SEED SDK套件提供了Linux内核、ARM v5t交叉编译器、DSP端开发工具,ARM编解码程序源码,DSPLINK、CMEM源码、CODEC ENGINE例程源码等资源。SEED SDK安装SEED SDK安装将目录下SEED-DVS6446_SDK.tar.gz复制到Linux服务器的/opt目录下后进行解压安装 tar zxvf SEED-DVS6446_SDK.tar.gz 默认的安装路径是/opt,安装完成后创建了3个文件夹:dvevm_1_20 mv_pro_4.0 nfs SEED SDK配置(1)SEED SDK配置(1)配置ARM v5t交叉编译器PATH 进入root根路径,执行命令:Host #cd /opt 修改root目录下.bash_profile文件,打开.bash_profile文件: Host #gedit .bash_profile 在PATH=$PATH:$HOME/bin下面添加如下内容 SEED SDK配置(2)SEED SDK配置(2)测试arm_v5t编译器是否可以使用,在Linux服务器控制台输入: arm_v5t_le-gcc 显示如下信息时,表示安装正常:SEED SDK配置(3)SEED SDK配置(3)配置nfs文件系统服务文件 修改/etc/exports,添加如下内容 /opt/nfs *(rw,sync,no_root_squash,no_all_squash) 启动服务器:/usr/sbin/exportfs –a /sbin/service nfs restartLinux下TFTP SERVER的搭建Linux下TFTP SERVER的搭建先在光盘中下载xinetd-#.#.##-#.rpm和tftp-server-#.##-#.rpm两个安装文件,分别执行 rpm –ivh xinetd-#.#.##-#.rpm rpm –ivh tftp-server-#.##-#.rpmSEED-DVS6446 MontaVista Linux内核编译使用SEED-DVS6446 MontaVista Linux内核编译使用SEED-DVS6446平台的Linux内核基于MontaVista Linux的版本,针对SEED-DVS6446的硬件调整对驱动进行的修改调整,实现对平台的支持,内核实现了对音频AIC23、视频采集TVP5150、视频VGA显示、NAND Flash等各个外设驱动的支持。 当用户对DVS6446下的内核驱动源码进行调整或者添加新的设备驱动后,需要对内核进行重新编译配置,编译生成内核镜像后,可以通过tftp下载到DVS6446平台上启动,进行测试。 SEED-DVS6446 Linux内核配置SEED-DVS6446 Linux内核配置SEED-DVS6446 Linux内核源码安装在Linux服务器(开发机主端)的/opt/mv_pro_4.0/montavista/pro/devkit/lsp/ti-davinci 目录下,用户需要修改内核源码时可在此目录下进行操作,修改完成后在该目录下进行编译就可以生成uImage内核二进制镜像文件。 例如:由NAND FLASH更改为硬盘方式,则需重新编译,生成新的uImage文件才可以实现。 SEED-DVS6446 Linux内核配置步骤如下: cd /opt/mv_pro_4.0/montavista/pro/devkit/lsp/ti-davinci make ARCH=arm CROSS_COMPILE=arm_v5t_le- menuconfig 进入配置界面进入配置界面用户通过键盘上下左右键选择配置,添加和删减不要的内核模块,配置完成保存退出即可。SEED-DVS6446 Linux内核编译SEED-DVS6446 Linux内核编译 SEED-DVS6446的内核配置保存后,运行下面指令进行内核编译: make ARCH=arm CROSS_COMPILE=arm_v5t_le- uImage 编译完成生成uImage文件,该文件在当前目录下的arch/arm/boot/目录下。CMEM模块CMEM模块 程序运行在MontaVista Linux之上,在应用程序里进行的地址空间都是虚拟地址,实际上的物理地址空间不一定是连续的,当将这个指针传递给DSP端的算法时,DSP不能够处理,因为DSP端的算法运行在DSPBIOS之上,而DSP端只能访问实的物理地址,为了解决这个问题,TI提供了一个CMEM模块,用于解决这个问题。 CMEM是一个连续物理存储空间分配模块,使得ARM端Linux进程和DSP端算法之间能够共享缓冲区。当应用程序需要在共享缓存区动态申请一个连续的物理空间时,通过调用CMEM的API可以实现,申请得到空间可以提供DSP端访问,进行算法处理时数据的传递与处理。SEED-DVS6446 CMEM编译和例程SEED-DVS6446 CMEM编译和例程SEED SDK中集成了CMEM模块,安装在Linux服务器下的路径为 /opt/dvevm_1_20/cmem_1_02; 在Linux服务器控制台下,进行如下操作进行编译 Host # cd /opt/dvevm_1_20/cmem_1_02/packages/ti/sdo/linuxutils/cmem Host #make all Host #make install 运行后,即对cmem模块进行了编译,编译生成cmem.ko,cmem.ko在目录下的src/module下,并将cmem.ko和测试文件安装到opt/nfs/opt/dvsdemos目录下。SEED-DVS6446 DSPLINK模块SEED-DVS6446 DSPLINK模块DSPLINK即 DSP/BIOS LINK,是基于Davinci架构处理器的ARM与DSP端进行通信的一种机制。DSPLINK提供了一套通用的API,从应用层抽象出来ARM与DSP的物理连接特性,从而降低用户开发程序的复杂度。 实际应用中,用户可能只需要一种信息传递机制,因此TI的DSPLINK提供了可配置功能,用户可以根据自己的需要进行裁剪,以满足应用需求。DSPLINK简介DSPLINK简介ARM SubsystemDSP SubsystemOS Adaptation LayerLINK driverdriversDSP/BIOSDSP ApplicationWinCE OS Adaptation Layer LINK driverDSP/BIOS Link APIOperating SystemLinuxWinCEHost Application在ARM端,一般运行一个操作系统, DSPLINK通过一组通用的API与OS连接,而其他组件不能直接访问。此特性使DSPLINK可以方便的移植到不同的操作系统中。 LINK Drive包含了基于GPP与DSP的物理连接的底层控制操作,负责GPP与DSP之间的数据传输和DSP的运行等操作。 在DSP端,LINK DRIVER是DSP/BIOS中驱动的一部分,该部分驱动只负责基于物理连接之上与GPP之间的交互。DSP端没有DSPLINK的API,通信是基于DSP/BIOS模块来实现的。 DSPLINK关键组件DSPLINK关键组件1. PROC组件表述应用空间的DSP处理器,PROC是处理器的缩写。该组件提供以下服务: 初始化DSP,使之能从GPP端进行访问; 加载DSP的代码至DSP处理器; 从DSP代码制定的地址运行DSP程序; 读写DSP端的地址空间; 停止DSP端程序的运行; 其他一些平台专用的控制操作 目前版本只支持一个处理器,而API设计支持多个DSP处理器,因此提供了一个processorld参数以支持以后的多处理器功能。DSPLINK关键组件DSPLINK关键组件2. CHNL组件表述应用空间的一个逻辑数据传输通道,负责GPP与DSP的数据传输。通道channel的概念如下述: 一种GPP与DSP端传输数据方式 一种基于GPP与DSP的物理连接上的逻辑实体映射 唯一的数字标识一个专用连接到DSP的一组channel中的某个channel 无方向性,通道方向可以在运行时进行配置; 被传输的数据中部不包含目的和源地址的任何信息,数据发送与接受端的数据通道需要应用前进行显示的建立。该组件采用issues-reclaim模式进行数据传输,基于DSP/BIOS的SIO模块模仿issues-reclaim行为模式。DSPLINK关键组件DSPLINK关键组件3. MSGQ是message queue的缩写,表述基于message的队列,负责GPP与DSP端的可变长度的短信息交互,基于DSP/BIOS的MSGQ模块实现。 Message的发送和接受都通过消息队列实现,消息接收者从消息队列接受信息,而消息发送者将数据写入到消息队列中,一个消息队列只可以有一个接送者,但可以有多个发送者。一个任务可以读写多个信息队列。nullDSPLINK配置与编译DSPLINK源码 SEED SDK安装后,DSPLINK的源码位于如下目录里: /opt/dvevm_1_20/dsplink_1_30_08_02/packages/dsplink 文件夹gpp 中存放的是ARM端的源码。其中,inc目录下为相关的源文件,src目录下为源码和一些sample例程,用户可以编译测试 同样,文件夹dsp中存放的是DSP端的源码。 nullDSPLINK配置与编译DSPLINK配置 DSPLINK在编译前需进行如下操作: 1.DSPLINK存储空间的分配,如果只用128MB的DDR,需要修改配置,使之支持128MBDDR的平台; 2.DSPLINK编译环境的搭建; 3.DSPLINK各个模块的搭配。 说明:DSPLINK存储空间的配置只针对DDR存储空间小于256MB的DAVINCI系统进行,如果DDR空间为256MB,可以不用对这部分进行配置。nullDSPLINK配置与编译DSPLINK进行编译前,需要配置以下两个必须的环境变量: 进入LINUX服务器的dsplink所在目录,运行如下命令: Host #cd /opt/dvevm_1_20/dsplink_1_30_08_02/packages/dsplink 建立必须的环境变量,运行如下命令: Host #source etc/host/scripts/Linux/dsplinkenv 这样就完成了对DSPLINK编译环境的搭建。 nullDSPLINK配置与编译DSPLINK配置 DSPLINK的配置提供了一个交互的脚本,用户可以通过交互进行配置DSPLINK的各个参数: Host # source etc/host/scripts/Linux/dsplinkcfg 确认DSPLINK环境变量设置正确,在YOUR CHOICE:处输入1,然后回车; nullDSPLINK配置与编译继续进行配置配置DSPLINK的目标平台,在YOUR CHOICE:处输入3,然后回车nullDSPLINK配置与编译配置完成,出现下列清单nullDSPLINK配置与编译1.GPP端DSPLINK源码编译: 切换到源码所在目录,命令如下: Host # cd /opt/dvevm_1_20/dsplink_1_30_08_02/packages/dsplink/gpp/src 进行编译 Host #make 编译完成文件位于 /opt/dvevm_1_20/dislink_1_30_08_02/packages/dsplink/gpp/export/BIN/Linux/Davinci/RELEASE/dsplinkk.konullDSPLINK配置与编译2.DSP端DSPLINK源码编译: 切换到源码所在目录,命令如下: Host # cd /opt/dvevm_1_20/dsplink_1_30_08_02/packages/dsplink/dsp/src 进行编译 Host #make 编译完成生成lib库文件位于以下目录,以. Lib为后缀 /opt/dvevm_1_20/dislink_1_30_08_02/packages/dsplink/dsp/export/BIN/DspBios/Davinci/RELEASESEED-DVS6446 Hardware TestSEED-DVS6446 Hardware Test一、CCStudio IDE v3.3测试环境搭建 SEED DVS6446平台下的所有测试程序均在DVS6446平台的DaVinci处理器的ARM核运行 只需要打开ARM端CCS界面即可 载入DaVinciEVM_arm.gel,注意:必须在连接ARM端以前加载 正确进入CCS顺序: 调试ARM程序,DVS6446 J2、J23、J24不插,打开CCS3.3,先按板卡reset按钮,再connect ICEPICK,然后open进入ARM开发环境,加载gel,最后connect 调试DSP程序,J2、J23、J24跳线插上,打开CCS3.3,先按板卡reset按钮,再connect ICEPICK,然后open进入C64xx开发环境,加载gel,最后connect 后续测试均在ARM端进行,只需进入ARM端CCS即可 SEED-DVS6446 Hardware Test二、SEED-DVS6446硬件平台解析 SEED-DVS6446 Hardware Testnull三、SEED-DVS6446平台测试硬件连接 SEED DVS6446 平台硬件测试时,硬件统一连接如下: 1. 将仿真器的JTAG连接器同DVS6446平台的J1 JTAG仿真插头连接 2. 将DVS6446平台的J2、J17、J23、J24跳线短接 3. 将DVS6446平台的S1连接5V-5A的电源,给系统上电 连接示意图如下: SEED-DVS6446 Hardware Testnull四、硬件测试流程 4-1 DDR SDRAM测试 在CCS中用Project->Open…,打开ddr.pjt工程文件 在CCS中用File->Load Program…,加载ddr\debug目录下的ddr.out文件 在CCS中用Debug->Go Main命令执行程序到C的main()函数处 执行程序,如果程序执行结束时,在输出窗口Stdout中输出信息“Testing DDR2 MEMORY PASS”,则说明测试成功,如下图所示;否则,测试失败 SEED-DVS6446 Hardware Testnull四、硬件测试流程 4-2 NAND Flash测试:主要测试Flash大小及读写操作等功能 在CCS中用Project->Open…,打开nandflash.pjt工程文件 在CCS中用File->Load Program…,加载nandflash.out文件 在CCS中用Debug->Go Main命令执行程序到C的main()函数处 执行程序,如果在该窗口中显示“ALL Tests Passed”则说明测试成功;否则,测试失败 SEED-DVS6446 Hardware Testnull四、硬件测试流程 4-3 音频测试:主要测试音频采集和播放,实现音频采集与播放LOOP测试 J18口为音频采集口,测试时将音频连接线,一端连接WINDOWS PC机音频输出口,另一端连接J18口 J16为音频输出口,测试时将耳机线接口,连接至J16,连接示意图图如下: SEED-DVS6446 Hardware Testnull四、硬件测试流程 4-3 音频测试:主要测试音频采集和播放,实现音频采集与播放LOOP测试 在CCS中用Project->Open…命令,打开Hardware Test Programs and CSL Libs Based on CCS\dvs6446_examples目录下的aic23目录下的aic23.pjt工程文件 在CCS中用File->Load Program…命令,加载aic23\debug目录下的aic23.out文件 在WINDOWS PC机端播放音乐 CCS中用Debug->Go Main命令执行程序到C的main()函数处 执行程序,耳机发出同WINDOWS PC机播放的相同的音乐SEED-DVS6446 Hardware Testnull四、硬件测试流程 4-4复合视频采集输出测试:主要测试TVP5150复合视频采集和DM6446后端复合视频显示功能:(默认测试PAL制) 将摄像头输出接口通过视频线接BNC转接头连接至J27视频采集口,显示设备如GADEMEI显示屏通过视频线接BNC转接头与J13连接,连接示意图如下 SEED-DVS6446 Hardware Testnull四、硬件测试流程 4-4复合视频采集输出测试:主要测试TVP5150复合视频采集和DM6446后端复合视频显示功能:(默认测试PAL制) 在CCS中用Project->Open…命令,打开Hardware Test Programs and CSL Libs Based on CCS\dvs6446_examples目录下的composite_loop目录下的composite_loop.pjt工程文件 在CCS中用File->Load Program…命令,加载composite_loop\debug目录下的compoiste_loop.out文件 在CCS中用Debug->Go Main命令执行程序到C的main()函数处 执行程序,就可以在显示器上观看到摄像头采集输入的图像 SEED-DVS6446 Hardware Testnull四、硬件测试流程 4-5 RS232测试:,主要测试RS232串口收发功能是否正常 将DB9串口线一端连接WINDOWS PC机串口,另一端连接RS232串口J3,连接示意图如下 SEED-DVS6446 Hardware Testnull四、硬件测试流程 4-5 RS232测试:主要测试RS232串口收发功能是否正常 在CCS中用Project->Open…命令,打开Hardware Test Programs and CSL Libs Based on CCS\dvs6446_examples目录下的rs232目录下的rs232.pjt工程文件 在CCS中用File->Load Program…命令,加载rs232\debug目录下的rs232.out文件 在CCS中用Debug->Go Main命令执行程序到C的main()函数处 在WINDOWS PC机上运行“串口调试助手”的软件,设置串口的参数,重新连接串口,输入任意内容,点击“自动发送” CCS下运行程序,观察串口调试助手接收窗口中的数据,如果同发送数据一致则表示测试通过,否则,测试失败 SEED-DVS6446 Hardware Testnullnull四、硬件测试流程 4-6 RS485测试:主要测试RS485串口的收发功能,测试过程需要RS232/RS485转接器 将RS485串口J5口的7(B)、8(A)脚引出,连接到RS232/RS485转接头的收发引脚A,B上,RS232/RS485转接头的另一端连接至DB9 串口线的一端,DB9串口线另一端连接至WINDOWS PC机串口,连接示意图如下 SEED-DVS6446 Hardware Testnull四、硬件测试流程 4-6 RS485测试:主要测试RS485串口的收发功能,测试过程需要RS232/RS485转接器 在WINDOWS PC机上运行“串口调试助手”的软件,设置串口的参数如下,并点击“自动发送” 在CCS中用Project->Open…命令,打开Hardware Test Programs and CSL Libs Based on CCS\dvs6446_examples目录下的rs485目录下的rs485.pjt工程文件 在CCS中用File->Load Program…命令,加载rs485\debug目录下的rs485.out文件 在CCS中用Debug->Go Main命令执行程序到C的main()函数处 CCS下运行程序,观察串口调试助手接收窗口中的数据,如果同发送数据一致则表示测试通过,否则,测试失败 SEED-DVS6446 Hardware TestnullSEED-DVS6446 Hardware TestSEED-DVS6446 Hardware Test四、硬件测试流程 4-7 以太网测试:主要测试以太网环路功能,测试需要直连的网线 将回环网线与DVS6446的网口T1连接,连接示意图如下 null四、硬件测试流程 4-7 以太网测试:主要测试以太网环路功能,测试需要直连的网线 在CCS中用Project->Open…命令,打开Hardware Test Programs and CSL Libs Based on CCS\dvs6446_examples目录下的emac目录下的emac.pjt工程文件 在CCS中用File->Load Program…命令,加载emac\debug目录下的emac.out文件 在CCS中用Debug->Go Main命令执行程序到C的main()函数处 执行程序,当测试通过,在输出窗口S
/
本文档为【SEED-DVS6446-Training】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索