本文主要介绍TI C6000系列的DSP的内部总线架构、存储系统和各种外设(如EDMA3和PRU等),特别是片内的程序数据RAM和Cache系统,以及外设的EDMA控制器,Video port,McBSP,McASP以及SRIO接口等。
片内总线带宽
图1. C6000的片内总线宽度
C6000系列DSP的片内系统框图
图2. C6000系列DSP的片内系统框图
Switched Central Resource (SCR)/TeraNet for C66x设备
DM644x Davinci达芬奇处理器的内部总线框图
DM644x Davinci达芬奇处理器的内部总线框图
C64x的片内存储
图4. C64x的片内存储
C64x+中加入了IDMA单元来进行以上3个内部存储器的数据传输,还可以从片内存储到config配置寄存器。
C6000系列DSP的外设
图5. C6000系列DSP的外设
DMA来完成内存间或者内存到外设,外设到内存的数据传输,可以通过外部的设备事件来驱动同步,可以处理多达64个事件。DSP和ARM都能访问DMA通道资源,而对于从C64x+加入的IDMA而言,只有DSP才能访问其通道资源。
另外还有QDMA通道(Quick DMA),可以进行内存间的DMA传输,必须是异步处理,即必须由CPU来发起,一般的DSP上会有4-8个QDMA通道。
这些DMA通道间会共享一些资源,包括128-256个参数组( Parameter RAM sets (PARAMs)),以及64个传输完成标志位(TCCs)以及2-4个传输挂起队列。
图6. PRU框图
PRU包括2个独立的实时RISC核(大概只有40条指令,进行逻辑,算术和流程控制等),能软件编程来实现外设,访问GPIO针脚,PRU还有自己的中断控制器,还可以通过SCR来访问内存,同时还能完成功耗管理控制,如关闭ARM或者DSP,以及根据系统事件尽可能的关闭处理器或者唤起处理器。
管脚复用,即通过编程来定义管脚,实现你需要的外设。
Reference:
http://processors.wiki.ti.com/
http://www.blog.163.com/houh-1984
本文主要介绍TI C6000系列的DSP的内部总线架构、存储系统和各种外设(如EDMA3和PRU等),特别是片内的程序和数据RAM和Cache系统,以及外设的EDMA控制器,Video port,McBSP,McASP以及SRIO接口等