首页
|
新闻
|
新品
|
文库
|
方案
|
视频
|
下载
|
商城
|
开发板
|
数据中心
|
座谈新版
|
培训
|
工具
|
博客
|
论坛
|
百科
|
GEC
|
活动
|
主题月
|
电子展
注册
登录
论坛
博客
搜索
帮助
导航
默认风格
uchome
discuz6
GreenM
»
DSP技术
» TMS320C6678 存储器访问性能 (上)
返回列表
回复
发帖
发新话题
发布投票
发布悬赏
发布辩论
发布活动
发布视频
发布商品
TMS320C6678 存储器访问性能 (上)
发短消息
加为好友
yuchengze
当前离线
UID
1062083
帖子
5837
精华
0
积分
2921
阅读权限
70
在线时间
222 小时
注册时间
2016-6-30
最后登录
2018-9-9
金牌会员
UID
1062083
性别
男
1
#
打印
字体大小:
t
T
yuchengze
发表于 2016-11-21 20:52
|
只看该作者
TMS320C6678 存储器访问性能 (上)
存储器
,
软件
摘要
TMS320C6678 有8 个C66x 核,典型速度是1GHz,每个核有 32KB L1D SRAM,32KB L1P SRAM 和 512KB LL2 SRAM;所有
DSP
核共享 4MB SL2 SRAM。一个 64-bit 1333MTS DDR3 SDRAM 接口可以支持8GB 外部扩展
存储器
。
存储器访问性能对 DSP 上运行的软件是非常关键的。在 C6678 DSP 上,所有的主模块,包括多个DSP 核和多个DMA 都可以访问所有的存储器。
每个DSP 核每个时钟周期都可以执行最多128 bits 的load 或store 操作。在1GHz 的时钟频率下,DSP 核访问L1D SRAM 的带宽可以达到16GB/S。
DSP 的内部
总线
交换网络,TeraNet,提供了 C66x 核(包括其本地存储器),外部存储器, EDMA 控制器,和片上外设之间的互连总共有 10 个 EDMA 传输控制器可以被配置起来同时执行任意存储器之间的数据传输。
本文为设计人员提供存储器访问性能评估的基本信息;提供各种操作条件下的性能测试数据;还探讨了影响存储器访问性能的一些因素。
1. 存储器系统简介
TMS320C6678 有8 个C66x 核,每个核有:
32KB L1D (Level 1 Data) SRAM,它和DSP 核运行在相同的速度上,可以被用作普通的数据存储器或数据cache。
32KB L1P (Level 1 Program) SRAM,它和DSP 核运行在相同的速度上,可以被用作普通的
程序存储器
或程序cache。
512KB LL2 (Local Level 2) SRAM,它的运行速度是DSP 核的一半,可以被用作普通存储器或cache,既可以存放数据也可以存放程序。
所有DSP 核共享4MB SL2 (Shared Level 2) SRAM,它的运行速度是DSP 核的一半,既可以存放数据也可以存放程序。
TMS320C6678 集成一个64-bit 1333MTS DDR3 SDRAM 接口,可以支持8GB 外部扩展存储器,既可以存放数据也可以存放程序。它的总线宽度也可以被配置成32 bits 或16 bits。
存储器访问性能对 DSP 上软件运行的效率是非常关键的。在 C6678 DSP 上,所有的主模块,包括多个DSP 核和多个DMA 都可以访问所有的存储器。
每个DSP 核每个时钟周期都可以执行最多128 bits 的load 或store 操作。在1GHz 的时钟频率下,DSP 核访问 L1D SRAM 的带宽可以达到 16GB/S。当访问二级(L2)存储器或外部存储器时,访问性能主要取决于访问的方式和cache。
每个 DSP 核有一个内部 DMA (IDMA),在 1GHz 的时钟频率下,它能支持高达 8GB/秒的传输。但IDMA 只能访问L1 和LL2 以及配置寄存器,它不能访问外部存储器。
DSP 的内部总线交换网络,TeraNet,提供了 C66x 核 (包括其本地存储器) ,外部存储器, EDMA 控制器,和片上外设之间的互联。总共有 10 个 EDMA 传输控制器可以被配置起来同时执行任意存储器之间的数据传输。芯片内部有两个主要的 TeraNet 模块,一个用 128 bit 总线连接每个端点,速度是DSP 核频率的1/3,理论上,在1GHz 的器件上每个端口支持 5.333GB/秒的带宽;另一个 TeraNet 内部总线交换网络用 256 bit 总线连接每个端点,速度是DSP 核频率的1/2,理论上,在1GHz 的器件上每个端口支持16GB/秒的带宽。
总共有10 个EDMA 传输控制器可以被配置起来同时执行任意存储器之间的数据传输。它们中的两个连接到256-bit, 1/2 DSP 核速度的 TeraNet 内部总线交换网络;另外8 个连接到128-bit, 1/3 DSP 核速度的 TeraNet 内部总线交换网络。
图1 展示了TMS320C6678 的存储器系统。总线上的数字代表它的宽度。大部分模块运行速度是DSP 核时钟的1/n,DDR 的典型速度是1333MTS(Million Transfer per Second)。
图1 TMS320C6678 存储器系统
本文为设计人员提供存储器访问性能评估的基本信息;提供各种操作条件下的性能测试数据;还探讨了影响存储器访问性能的一些因素。
本文对分析以下常见问题会有所帮助:
1.应该用DSP 核还是DMA 来拷贝数据?
2.一个频繁访问存储器的函数会消耗多少时钟周期?
3.当多个主模块共享存储器时,对某个模块的性能会有多大的影响?
本文中的大部分数据是在C6678 EVM (EValuation Module)板上测试得到的,它上面有64-bit 1333MTS 的DDR 存储器。
2. DSP 核,EDMA3,IDMA 拷贝数据的性能比较
数据拷贝的带宽由下面三个因素中最差的一个决定:
1.总线带宽
2.源端吞吐量
3.目的端吞吐量
表1 总结了C6678 上C66x 核,IDMA 和EDMA 的理论带宽。
表1 1GHz C6678 上C66x 核,IDMA 和EDMA 的理论带宽
表2 总结了C6678 EVM(64-bit 1333MTS DDR)上各种存储器端口的理论带宽。
表2 1GHz C6678 上各种存储器端口的理论带宽
表3 列出了在1GHz C6678 EVM( 64-bit 1333MTS DDR)上,在不同情况下用EDMA,IDMA 和DSP 核做大块连续数据拷贝测得的吞吐量。
在这些测试中,L1 上的测试数据块的大小是8KB;IDMA LL2->LL2 拷贝的数据块的大小是32KB;其它DSP 核拷贝测试的数据块的大小是64KB,其它EDMA 拷贝测试的数据块大小是128KB。
吞吐量由拷贝的数据量除以消耗的时间得到。
表3 DSP 核,EDMA 和IDMA 数据拷贝的吞吐量比较
总的来说,DSP 核可以高效地访问内部存储器,而用DSP 核访问外部存储器则不是有效利用资源的方式;IDMA 非常适用于DSP 核本地存储器 (L1D,L1P,LL2) 内连续数据块的传输,但它不能访问共享存储器 (SL2, DDR) ;而外部存储器的访问则应尽量使用EDMA。
Cache 配置显著地影响DSP 核的访问性能,Prefetch buffer 也能提高读访问的效率,但它们不影响EDMA 和IDMA。这里所有DSP 核的测试都是基于cold cache(cache 和Prefetch buffer 在测试前被清空)。
对DSP 核,SL2 可以通过从0x0C000000 开始的缺省地址空间被访问,通常这个地址空间被设置为cacheable 而且prefetchable。SL2 可以通过XMC (eXtended Memory Controller) 被重映射到其它存储器空间,通常重映射空间被用作non-cacheable, nonprefetchable 访问(当然它也可以被设置为cacheable 而且prefetchable)。通过缺省地址空间访问比通过重映射空间访问稍微快一点。
前面列出的EDMA 吞吐量数据是在EDMA CC0 (Channel Controller 0) TC0 (Transfer Controller 0)上测得的,EDMA CC1 和EDMA CC2 的吞吐量比EDMA CC0 低一些,后面有专门的章节来比较10 个EDMA 传输控制器的差别。
3. DSP 核访问存储器的时延
L1 和 DSP 核的速度相同,所以DSP 核每个时钟周期可以访问L1 存储器一次。对一些特殊应用,需要非常快的访问小块数据,可以把L1 的一部分配置成普通RAM(而不是cache)来存放数据。
通常,L1 被全部配置成cache,如果cache 访问命中(hit),DSP 核可在一个周期完成访问;如果cache 访问没有命中(miss),DSP 核需要等待数据从下一级存储器中被读到cache 中。
本节讨论DSP 核访问内部存储器和外部DDR 存储器的时延。下面是时延测试的伪代码:
3.1 DSP 核访问LL2 的时延
图2 是在1GHz C6678 EVM 上测得的DSP 核访问LL2 的时延。DSP 核执行512 个连续的LDDW (LoaD Double Word) 或STDW (STore Double Word) 指令所花的时间被测量,平均下来每个操作所花的时间被画在图中。这个测试使用了32KB L1D cache。
图2 DSP 核访问LL2
收藏
分享
评分
回复
引用
订阅
TOP
返回列表
电商论坛
Pine A64
资料下载
方案分享
FAQ
行业应用
消费电子
便携式设备
医疗电子
汽车电子
工业控制
热门技术
智能可穿戴
3D打印
智能家居
综合设计
示波器技术
存储器
电子制造
计算机和外设
软件开发
分立器件
传感器技术
无源元件
资料共享
PCB综合技术
综合技术交流
EDA
MCU 单片机技术
ST MCU
Freescale MCU
NXP MCU
新唐 MCU
MIPS
X86
ARM
PowerPC
DSP技术
嵌入式技术
FPGA/CPLD可编程逻辑
模拟电路
数字电路
富士通半导体FRAM 铁电存储器“免费样片”使用心得
电源与功率管理
LED技术
测试测量
通信技术
3G
无线技术
微波在线
综合交流区
职场驿站
活动专区
在线座谈交流区
紧缺人才培训课程交流区
意见和建议