TI_DSP总线bus - 2(总线结构与应用以及Bridge的瓶颈)

下图为TI C6xx DSP Nyquist总线拓扑图,总线连接了master与slave,提供了高速的数据传输。有很多种速率不同的总线,如图中的红色方框,最高速总线为CPU/2 TeraNet SCR(即VBUSM SCR),带宽为256bit,其他低速总线为CPU/3,CPU/6,带宽参考图中所示。总线之间用Bridge(桥)连接,作用包括转换总线的速率,使之与所流向总线的速率相同等。

在具体应用中,各种速率的总线完全可以满足复杂的数据传输,而数据传输的瓶颈往往在于连接总线之间的Bridge。下面将举例说明,首先讲解下master访问salve的路径。

AIF2(片上协处理器,在LTE系统中用于接收天线数据)访问MSM(MSM为片上共享内存,对于Nyquist,大小为4M,它独立于四个CPU,四个CPU均可访问,管理MSM的为MSMC,即共享内存控制器,在MSMC上提供给协处理访问MSM的接口为SMS)DDR(DSP外接的扩展内存,即外存,在MSMC上提供给协处理访问DDR的接口为SES,MSMC详细内容可参考MSMC data manual):

1,AIF2访问MSM路径:

AIF2-->CPU/3低速总线-->Bridge-->CPU/2高速总线-->MSMC接口M3_SL2(即SMS)-->MSM。(见图中的蓝色曲线)

2,AIF2访问DDR路径:

AIF2-->CPU/3低速总线-->Bridge-->CPU/2高速总线-->MSMC接口M3_DDR(即SES)-->EMIF(外部内存接口控制器)-->DDR。(见图中的蓝色曲线)

CPUx访问CPUy的L1或L2内存:

CPUx(通过corePac-x的XMC模块)-->MSMC S端口(S表示MSMC作为slave)-->MSMC M端口(M表示MSMC作为msater发起访问)-->CPU/2高速总线-->Bridge-->corePac-y的EMC模块-->corePac-y的L1或L2内存。(图中紫色曲线)

Bridge的瓶颈问题:

如图中示,若FFTC与AIF2或者还有其他模块同时访问了MSM或者DDR,这样连接CPU/3与CPU/2的Bidge(指向CPU/2总线方向的Bridge)将面临很大的压力,Bridge必将舍弃一些数据传输任务,导致数据传输失败,如AIF2无法写或读MSM或DDR内存,导致软件或硬件出现问题。

解决Bridge瓶颈问题的办法:

1,尽量避免多个Master(图中左下侧连接CPU/3总线的master)同时访问MSM或DDR.

2,如果无法避免多个Master同时访问MSM或DDR,可将某些Master的内存空间设置在corePac中的L1D或者L2资源,这样可以避免访问MSM或者DDR的次数,减小Bridge的数据传输压力。因为Mster(图中左下侧连接CPU/3总线的master)访问corePac中的L1D或者L2资源不再需要经过连接CPU/3与CPU/2的Bidge(指向CPU/2总线方向的Bridge)。如指定AIF2将接收到的天线数据存储在需要处理该天线数据的CPU对应的corePac中的L1D或者L2资源中。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值