DM6446开发详解:双核通信与外设资源

需积分: 11 9 下载量 9 浏览量 更新于2024-08-16 收藏 1.31MB PPT 举报
"DAVINCI_DM6446_开发详解" DM6446是一款针对视频处理设计的高性能数字媒体处理器,由TI公司制造。它包含一个ARM926EJ-S 300MHz CPU和一个C64x+ 600MHz DSP核心,构建了一个双核架构,专门用于视频和音频处理任务。该处理器拥有丰富的外设接口,如视频处理子系统(VPSS)、图像缩放工具、Histogram/3A、预览、屏幕菜单式调节(OSD)、10bDAC、EDMA、ATA/Compact Flash、AsyncEMIF/NAND/SmartMedia、MMC/SD、Watchdog Timer、PWM、General-Purpose Timer、DDR2 Controller、USB 2.0 PHY、VLYNQ、EMAC以及多种串行接口等。 在DM6446中,ARM和DSP之间通过特定的外设分配进行通信和资源共享。ARM独占的外设包括UART0/1/2、I2C、看门狗定时器、PWM0/1/2、ARM中断控制器、USB 2.0、ATA/CF、SPI、VPSS、GPIO、EMAC/MDIO、EMIFA、VLYNQ和MMC/SD。而DSP独占的外设有DSP中断控制器和视频-影像协处理器(VICP)。两者共享的外设有EDMA、TIMER0/1、PowerSleepController、ASP、EMIFData。此外,ARM能够访问DSP的片内存储器(L2RAM和L1D、L1P),反之亦然,且两者共享DDR2和AEMIF。ARM可以通过4个通用中断和1个不可屏蔽中断中断DSP,而DSP可以向ARM发送2个通用中断。ARM还负责控制DSP的电源、时钟、复位和引导。 在开发过程中,应用工程师需要利用Codec Engine的API来创建和控制编解码器实例。Codec Engine不参与I/O操作,仅处理视频编解码算法,因此应用工程师需要自行管理I/O操作,包括文件和外设的控制。他们将从算法开发工程师那里获得编解码器软件包,从服务集成工程师处获取Codec Server的.x64P文件,以及从引擎集成工程师处获取引擎配置文件.cfg。应用工程师需要编写应用代码,整合这些资源,然后链接和编译生成最终的可执行代码。 在DM6446的初始化顺序中,首先会进行芯片的复位。复位后,接着是硬件资源的初始化,如设置电源域、时钟树、外设配置等。然后,ARM和DSP的启动和配置,包括中断控制器的设置、内存映射、外设初始化以及必要的固件加载。最后,应用代码开始运行,实现具体的视频处理和编解码任务。 DM6446的开发涉及到多方面的技术,包括双核间的通信协调、Codec Engine的使用、外设的管理以及系统级的初始化流程。开发者需要对ARM和DSP架构有深入理解,同时熟悉视频处理和编解码算法,才能有效地利用这款处理器进行高效的应用开发。