位置:51电子网 » 技术资料 » D S P

达芬奇数字媒体片上系统的架构和Linux启动过程

发布时间:2008/5/27 0:00:00 访问次数:531

  达芬奇(davinci)数字媒体技术平台tms320dm6446/3采用了arm+dsp双核的架构,本文从芯片的硬件结构入手介绍达芬奇dmsoc硬件部分及linux os的启动过程。

达芬奇dmsoc硬件概述

  如图1所示,达芬奇数字媒体片上系统(dmsoc)提供:两个内核(arm+dsp);视频处理子系统(vpss);多种boot模式(nor flash/nand flash/uart0 boot mode);两个电源域;多个时钟树;多个引脚独立或复用的外设。



图1 dm6446功能结构框图。

> arm-dsp集成

  对于双核的达芬奇架构,大家最关心的就是两个核之间的资源分配、通信方式及如何高效地实现资源共享各尽其能。arm独享(dsp不可用)的外设有: uart0/1/2,i2c,看门狗定时器,pwm0/1/2,arm中断控制器,usb2.0,ata/cf,spi,gpio,vpss, emac/mdio,emifa control,vlynq,mmc/sd。dsp独享(arm不可用)的外设有:dsp中断控制器,vicp。arm和dsp共享的外设有:edma, timer0/1,power & sleep controller,asp和emifa data。

图2 arm-dsp集成结构。

  如图2所示,可以很清楚地看到arm可以访问dsp片内存储器(l2ram和l1p/d);dsp可以访问arm片内存储器;arm和dsp共享ddr2和 aemif。因此,通常情况下arm只需传递需要处理的数据地址指针给dsp,而无须大块的数据搬移。arm和dsp之间的通信可以通过相互中断实现。 arm可以中断dsp(通过4个通用中断和1个不可屏蔽中断);dsp可以通过2个通用中断来中断arm。arm控制dsp的电源、时钟、复位和引导。

> dmsoc存储器映射

  达芬奇dmsoc多个片上存储器和两个处理器及不同的子系统相关。为了简化软件开发,dmsoc中所有的存储器统一编址,如表1所示。

表1 dmsoc存储器的映射地址。

dmsoc交换中心资源

  以上大家看到dmsoc有非常丰富的外设和视频处理硬件资源,而且arm和 dsp又共享ddr2等存储器资源,那么dmsoc又是如何确保arm、dsp和vpss同时访问外设或存储器资源时不会引起冲突呢?dmsoc中的交换中心资源(scr:switched central resource)会做出管理。如图3所示,把任何一个发起数据传输的源称为master(每一个master有一个专用的id),这个master要访问的目的地称为slave,这样在master和slave之间就构成一条数据传输的通路。从图3中可以看到,在scr中可以有很多并行的master到 slave的数据通路。如果是不同的master、相同的slave,那么可以通过设置每一个master的优先级来得到特殊应用系统的最佳性能。对于大多数的master,可以通过寄存器mstpri0和mstpri1来设置它们的优先级。如果master是c64x+、vpss和edma,可以通过它们自己的相关寄存器控制它们自己的优先级,这样可以更加灵活、快速的实现高的视频数据吞吐带宽。详细信息可以参考dm6446的数据手册。

图3 dmsoc交换中心资源的结构框图。

电源域及复位

  达芬奇dmsoc有两个电源域,分别是always on域和dsp域。always on域由cvdd arm核电源供电,给arm、总线、scr和除vicp之外的所有外设提供电源;dsp电源域由cvdddsp dsp核电源供电,给dsp和vicp提供电源。

  双核架构的达芬奇dmsoc的功耗也非常有竞争力,这一方面取决于芯片本身的工艺,另一方面也取决于芯片内部时钟和电源的结构。如图4所示,达芬奇 dmsoc有电源休眠控制器(power & sleep controller)管理芯片电源的开关及复位。可以用软件控制dsp电源域,控制dsp及其模块时钟的开关和复位。psc不支持arm及其模块的断电控制、arm的本地复位和arm的时钟关断控制。同时psc可以中断arm和dsp,支持icepick仿真(emulation)特性。

图4 dm6446的电源休眠控制器。

  达芬奇(davinci)数字媒体技术平台tms320dm6446/3采用了arm+dsp双核的架构,本文从芯片的硬件结构入手介绍达芬奇dmsoc硬件部分及linux os的启动过程。

达芬奇dmsoc硬件概述

  如图1所示,达芬奇数字媒体片上系统(dmsoc)提供:两个内核(arm+dsp);视频处理子系统(vpss);多种boot模式(nor flash/nand flash/uart0 boot mode);两个电源域;多个时钟树;多个引脚独立或复用的外设。



图1 dm6446功能结构框图。

> arm-dsp集成

  对于双核的达芬奇架构,大家最关心的就是两个核之间的资源分配、通信方式及如何高效地实现资源共享各尽其能。arm独享(dsp不可用)的外设有: uart0/1/2,i2c,看门狗定时器,pwm0/1/2,arm中断控制器,usb2.0,ata/cf,spi,gpio,vpss, emac/mdio,emifa control,vlynq,mmc/sd。dsp独享(arm不可用)的外设有:dsp中断控制器,vicp。arm和dsp共享的外设有:edma, timer0/1,power & sleep controller,asp和emifa data。

图2 arm-dsp集成结构。

  如图2所示,可以很清楚地看到arm可以访问dsp片内存储器(l2ram和l1p/d);dsp可以访问arm片内存储器;arm和dsp共享ddr2和 aemif。因此,通常情况下arm只需传递需要处理的数据地址指针给dsp,而无须大块的数据搬移。arm和dsp之间的通信可以通过相互中断实现。 arm可以中断dsp(通过4个通用中断和1个不可屏蔽中断);dsp可以通过2个通用中断来中断arm。arm控制dsp的电源、时钟、复位和引导。

> dmsoc存储器映射

  达芬奇dmsoc多个片上存储器和两个处理器及不同的子系统相关。为了简化软件开发,dmsoc中所有的存储器统一编址,如表1所示。

表1 dmsoc存储器的映射地址。

dmsoc交换中心资源

  以上大家看到dmsoc有非常丰富的外设和视频处理硬件资源,而且arm和 dsp又共享ddr2等存储器资源,那么dmsoc又是如何确保arm、dsp和vpss同时访问外设或存储器资源时不会引起冲突呢?dmsoc中的交换中心资源(scr:switched central resource)会做出管理。如图3所示,把任何一个发起数据传输的源称为master(每一个master有一个专用的id),这个master要访问的目的地称为slave,这样在master和slave之间就构成一条数据传输的通路。从图3中可以看到,在scr中可以有很多并行的master到 slave的数据通路。如果是不同的master、相同的slave,那么可以通过设置每一个master的优先级来得到特殊应用系统的最佳性能。对于大多数的master,可以通过寄存器mstpri0和mstpri1来设置它们的优先级。如果master是c64x+、vpss和edma,可以通过它们自己的相关寄存器控制它们自己的优先级,这样可以更加灵活、快速的实现高的视频数据吞吐带宽。详细信息可以参考dm6446的数据手册。

图3 dmsoc交换中心资源的结构框图。

电源域及复位

  达芬奇dmsoc有两个电源域,分别是always on域和dsp域。always on域由cvdd arm核电源供电,给arm、总线、scr和除vicp之外的所有外设提供电源;dsp电源域由cvdddsp dsp核电源供电,给dsp和vicp提供电源。

  双核架构的达芬奇dmsoc的功耗也非常有竞争力,这一方面取决于芯片本身的工艺,另一方面也取决于芯片内部时钟和电源的结构。如图4所示,达芬奇 dmsoc有电源休眠控制器(power & sleep controller)管理芯片电源的开关及复位。可以用软件控制dsp电源域,控制dsp及其模块时钟的开关和复位。psc不支持arm及其模块的断电控制、arm的本地复位和arm的时钟关断控制。同时psc可以中断arm和dsp,支持icepick仿真(emulation)特性。

图4 dm6446的电源休眠控制器。

相关IC型号

热门点击

 

推荐技术资料

业余条件下PCM2702
    PGM2702采用SSOP28封装,引脚小而密,EP3... [详细]
版权所有:51dzw.COM
深圳服务热线:13692101218  13751165337
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!