0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

浅谈tms320c6748最小系统设计和cache配置

ss 作者:工程师谭军 2018-09-09 10:39 次阅读

本文主要是关于tms320c6748的相关介绍,并着重tms320c6748的结构进行了详尽的阐述。

tms320c6748

TMS320C6748是德州仪器 (TI) 推出浮点功能的全新高性能处理器 ,这款芯片也是业界功耗最低的浮点数字信号处理器 (DSP),可充分满足高能效、连通性设计对高集成度外设、更低热量耗散以及更长电池使用寿命的需求。不仅具备通用并行端口 (uPP),同时也是 TI 首批集成串行高级技术附件 (SATA)的器件。 广州创龙推出的TL6748-EVM评估套件为开发者使用TI TMS320C6748处理器提供了完善的软件开发环境,系统支持:裸机、SYS/BIOS、DSP/BIOS。提供参考底板原理图,DSP C6748入门教程、丰富的Demo程序、完整的软件开发包,以及详细的C6748系统开发文档,方便用户快速评估TMS320C6748处理器、设计系统驱动及其定制应用软件,也大大降低产品开发周期,让客户产品快速上市。主要面向电力、通信、工控、音视频处理等数据采集处理行业。 TL6748-EVM评估套件是一个功能丰富的开发板,为嵌入式设计人员提供快捷简单的实践方式来评估TMS320C674x系列处理器,是一个完整的实验评估平台。

德州仪器 (TI) 推出浮点功能的全新高性能处理器 —— TMS320C6748,这款芯片也是业界功耗最低的浮点数字信号处理器 (DSP),可充分满足高能效、连通性设计对高集成度外设、更低热量耗散以及更长电池使用寿命的需求。不仅具备通用并行端口 (uPP),同时也是 TI 首批集成串行高级技术附件 (SATA)的器件。

广州创龙推出的TL6748-EVM评估套件为开发者使用TI TMS320C6748处理器提供了完善的软件开发环境,系统支持:裸机、SYS/BIOS、DSP/BIOS。提供参考底板原理图,DSP C6748入门教程、丰富的Demo程序、完整的软件开发包,以及详细的C6748系统开发文档,方便用户快速评估TMS320C6748处理器、设计系统驱动及其定制应用软件,也大大降低产品开发周期,让客户产品快速上市。主要面向电力、通信、工控、音视频处理等数据采集处理行业。

TL6748-EVM评估套件是一个功能丰富的开发板,为嵌入式设计人员提供快捷简单的实践方式来评估TMS320C674x系列处理器,是一个完整的实验评估平台。

规格参数/TMS320C6748

处理器

TMS320C6748图册TMS320C6748,C6000系列浮点DSP处理器(Pin to Pin兼容OMAPL138,AM1808处理器)

主频:456MHz

存储器

128M/256MByte工业DDR2

128M/256M/512MByte 工业级NAND Flash

音频/视频接口

1个3.5mm Line in音频输入接口

1个3.5mm Mic in音频输入接口

1个3.5mm Line out音频输出接口

外设接口

串口、USB接口:

UART1,3线串口,RS232电平

UART2,3线串口,RS232电平

1个RS485接口(RS485和UART1复用)

1 x USB2.0 OTG(Mini USB-B母座接口)

4 x USB1.1 HOST(2 x 双层USB Type A座)

其他外设接口:

1个标准SD卡座(SD/MMC信号,支持1.8V及3.3V逻辑电压)

1个10/100Mbps以太网络接口(RJ45连接器

1个SATA接口(7pin SATA硬盘接口)

1个RTC座(RC1220 RTC座)

1 个JTAG接口(14Pin TI Rev B JTAG接口)

扩展接口:(2x IDC3简易牛角座(2x 25pin规格))

1路SPI总线

1路IIC总线

1路UART信号

1路VPIF总线

1路uPP总线

1路EMIF总线

可设置多个GPIO

输入接口

1个非屏蔽中断按键

1个可编程按键

1个复位按键

LED指示灯

2个电源指示灯

1个系统指示灯

4个可编程指示灯

显示单元

一个VGA接口

一个24bit真彩色LCD接口(50pinFPC排座;含4电阻式线触摸屏接口,分辨率可支持1366x768)

电气参数

工作电压:3.8V~5.5V(典型值:5V)

工作温度:-45~85℃

环境湿度:20% ~ 90% ,非冷凝

开发板:180mm*130mm

核心板:55mm*33mm

电气指标:+5V@150mA

核心板功耗

电压:5V

电流:98mA

功耗:0.49W

浅谈tms320c6748最小系统设计和cache配置

处理器的cache是一块存储靠近处理器数据的高速存储区。这帮助常用的指令和数据的快速访问从而提高计算性能。Cache可以视为平坦式记忆体,即认为cache是CPU靠近的可以很快访问的存储器

存储组织结构

图1的左边的模型是一个平坦式记忆体系统架构,假设CPU和片内存储空间都运行在300 MHz,存储访问的延时只有在CPU访问外存的时候才存在,而memory stall不会在访问片内存储区时发生。如果CPU的频率是600 MHz,那么在访问这部分片内存储区的时候还是存在等待周期的。不幸的是,想在片内实现足够大的存储区能运行在600 MHz会非常昂贵的,如果仍然让片内的存储区运行在300 MHz,那么访问这些存储区的适合会有一个周期的延时。

一个解决方法是使用分层的存储架构,有一个快速的靠近CPU的存储区,访问没有stall但是size很小,往外的内存空间很大,但是离CPU较远,访问需要比较大的stall,靠近CPU的存储区可以视为cache。

访问定位的规律

当然,这种解决方案只有在CPU在大部分的访问都是只针对最靠近它的存储区时才是有效的,幸运的是,根据访问定位的规律,这一条可以保证。访问的定位规律表明程序在一个相对小的时间窗口对仅需要一个相对较小size的数据和代码。数据定位的两条规律:

•空间关联性:当一个数据被访问时,它临近的数据又很大可能会被后续的存储访问;

•时间关联性:一个存储区被访问时,在下一个临近的时间点还会被访问。

空间关联性揭示了计算机程序的创建规律:通常情况下相关的数据被编译链接到临近的连续区域。例如首先处理一个数组的第一个元素,然后处理第二个,这就是空间关联性。类似的,时间关联性主要源于程序中存在占用时间非常多的循环,通常循环的代码被连续执行非常多次,一般循环内访问的数据也相当。

图2是空间关联性的说明,一个6-tap的FIR滤波器的数据访问模式。如计算输出y[0],从输入缓冲区x[]读取6个采样点,当第一个访问发生时,cache控制器读取x[0]以及后续地址的若干个数据(取决于cache line的长度),从速度慢的存储器加载一个cache line的数据需要一定的时钟周期的CPU stall。这种加载的一个动机是x[0]后续的数据后面就要被访问到。这个对于FIR滤波器是显然的,因为后面的5个采样点(x[1]-x[5])就要被用到。后面的这5次存储访问就只需要访问高速cache就可以了。

当计算下一个输出y[1]时,5个采样点(x[1]-x[5])就可以重用了,只有一个采样点(x[6])需要重新加载。所有的采样点都在cache内了,访问时不会有CPU stall了,这也就是刚才提到的时间关联性,即上一步利用的数据在下一次处理中还是可能会被用到的。

Cache就是利用数据访问的时间和空间关联性建立的,它让对速度较慢的外存的访问次数尽可能的降低,而让大部分的数据访问都由更高层次的cache存储区来完成。

存储区的速度

Cache系统通常包含以下3级:

•第一级(L1)在CPU片内,运行在CPU时钟频率;

•第二级(L2)也在片内,但是比L1稍慢,容量较L1大;

•第三级 (L3)是外存,最慢容量也最大。

每一层次的cache有不同的数据访问性能,相对的性能比较可以参考下面的表格。

当处理器从存储区请求数据访问时,首先在最高层次的cache内查找,然后再从次高级别的存储区查找。当请求在cache内时就是cache命中,否则是一次cache miss。因而Cache系统的性能将取决于cache命中的比率。对于任意级别的cache,命中率越高性能越好。比如一个内存访问的L1 cache命中率为70%,L2 20%, 其他来自L3,那么以图3所示的性能下,平均一次内存的访问时间为

(0.7 * 4) + (0.2 * 5) + (0.05 * 30) + (0.05 * 220) = 16.30 ns 考虑图4所示的TI TMS320C64x DSP的存储架构,两级的片内cache加上片外外存。一级Cache分成程序(L1P)和数据(L1D) cache,每个容量为16 Kbytes。L1缓存数据访问不会有存储stall。L2存储区分成L2 SRAM和L2 cache,无论是哪种配置,L2存储区都需要两个CPU周期完成一次数据访问。不同的DSP,L2的容量不同,如TMS320C6454 DSP,L2的大小为1Mbytes。最后是C64x DSP最大高达2GBytes的外存,外存的访问速度取决于使用的存储器类型,但一般外存的频率在100 MHz左右。图4中的所有的cache(红色)和数据通路都由cache控制器自动维护。

Cache的更新

Cache一直是主存的一个拷贝,因而需要cache能随时反映主存的内容。如果数据在cache内被更新,而主存里没有更新,这个cache内的数据就被称为污染(dirty)数据,而数据在主存被更新但是cache内没有更新,这时cache内的数据被称为过时的(stale)数据。

Cache控制器使用一系列的技术来维护cache的一致性。侦听“Snoop”和强制更新“snarf” 是两种常用的技术。侦听是让cache决定主存内的数据的处理影响到被cache的地址的数据。强制更新是把数据从主存拷贝到cache存储器。

Cache通常比主存容量小得多,因而cache最终总会被填满,这时新进入的数据总要代替那些已经在cache内的数据了。有很多种策略决定那些已经在cache内的数据被代替更新如随机代替,先进先出(FIFO)以及最迟不用的策略(LRU),大部分的处理器都采用LRU,即把least-recently-used数据替换为最新的数据。这种策略由于考虑到数据访问的是时间相关性而非常有效。

直接映射的cache

Caches要么是直接映射的“direct-mapped”,要不就是组相关的“set-associative”。图5是C64x的L1P cache,包含了512个32字节的cache lines。每个外存地址总是映射到同一个cache line,如:

•地址0000h 到 001Fh总是映射到cache line 0

•地址0020h 到 003Fh总是映射到cache line 1

•地址3FE0h 到 3FFFh总是映射到cache line 511.

当开始访问地址4000h,cache容量被完全占用,因而地址4000h 到 401fh又映射到cache line 0.

为了保存从外存拷贝的数据信息,每个L1P的cache行包含如下信息:

•有效位,表明当前cacheline是否包含有效数据;

标签区域,对应于外存地址的高18位,由于每个cache行的数据可以由外存若干地址拷贝而来,如line 0保存可以来自地址0000h 到 001fh的数据也可以来自地址4000h 到 401fh。

•组号,对应于地址的5到13 bit;对于直接映射的cache而言,组号对应于cache line号。这个组号对于组相关的cache是非常复杂的。

当CPU开始访问地址0020h时,假设cache已经被完全被设定无效了(invalidated),即没有cache line包含有效数据。此时cache控制器开始根据当前地址的组(即地址的第5到13比特)来看对应的哪个cache line。对于地址0020h来说是cache line 1.然后cache控制器检查line 1的标签位,确认其是否对应于地址0020h到0039h,最后检查有效位,发现其值为0,即该地址的数据并不在cache内,此时cache控制器标记一次cache miss。这次的miss让控制器从外存加载整个cacheline(0020h-0039h),同时更新标签tag位,并把有效位设置为1,同时加载的数据传递给CPU,此次数据访问结束。

当还需要继续访问地址0020h时,cache控制器会继续检查组号和标签域,并和存在标签RAM的值比较,同时有效位的值为1,意味着此次是一个cache hit。

结语

关于tms320c6748的相关介绍就到这了,如有不足之处欢迎指正。

相关阅读推荐:浅谈tms320c6748下的DSP系统

相关阅读推荐:TMS320C6678存储器访问性能

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Cache
    +关注

    关注

    0

    文章

    126

    浏览量

    27956
  • TMS320C6748
    +关注

    关注

    3

    文章

    37

    浏览量

    13004
收藏 人收藏

    评论

    相关推荐

    TMS320C6748开发例程使用手册

    TMS320C6748开发例程使用手册下载:attach://219928.pdf
    发表于 11-15 21:48

    TMS320C6748/C6748 DSP开发板——广州创龙

    `1开发板简介 TL6748-EVM是一款基于广州创TMS320C6748核心板SOM-TL6748设计的浮点DSP C6748开发板,它为用户提供了SOM-TL
    发表于 03-05 16:58

    【TL6748 DSP申请】基于TMS320C6748的视频监控系统

    申请理由:TMS320C6748可以接CMOS摄像头,有USB接口,通过USB接口将数据上传到PC机,实现实时监控。项目描述:想做一个基于TMS320C6748的视频监控系统,通过USB接口将数据上传到PC机,实现实时监控。
    发表于 09-10 11:08

    【TL6748 DSP申请】广州创龙TMS320C6748 DSP开发板免费申请试用

    申请理由:初步了解认识TMS320C6748 DSP开发板,为以后更深入学习做准备项目描述:熟悉了解TMS320C6748 DSP开发板,学习TMS320C6748 DSP开发板基础知识,为以后更好的使用
    发表于 09-10 11:12

    【TL6748 DSP申请】基于TMS320C6748高速DSP信号处理模块设计

    申请理由:使用TMS320C6748开发板对高速DSP信号处理,该模块可以再高速下避免干扰,充分发挥出该TMS320C6748高速DSP信号处理模块的性能。项目描述:使用TMS320C6748开发板
    发表于 09-10 11:13

    【创龙TMS320C6748开发板试用】试用进度大汇总(2016.02.20已更新)

    】+ 一张图系列之新建RTSC配置组件2015.10.12https://bbs.elecfans.com/jishu_518173_1_1.html12.【创龙TMS320C6748开发板试用
    发表于 09-18 15:25

    【TL6748 DSP申请】基于TMS320C6748 DSP和步进电机的数字钟控制及其语音播报系统设计

    :1、利用TMS320C6748 DSP单片机,通过串口连接上位机PC,由上位机PC对单片机内的参数进行修改,并实时监控系统的运行状态。单
    发表于 10-09 15:12

    请问TMS320C6748 pinmux tool在哪下载?

    TMS320C6748 pinmux tool在哪下载?在官网找到的没有C6748器件。
    发表于 07-31 09:02

    TMS320C6748相关资料

    最近公司启动一个项目,用到TMS320C6748这款U。我在官网找了许久,也找不到一些对软件开发(主要驱动)有帮助的资料。TMS320C6748有没有固件支持包,还有使用手册之类的资料。求提供下载连接!
    发表于 08-07 06:04

    请问TMS320C6748参考设计

    TMS320C6748有原理图参考设计吗? 非常感谢!
    发表于 05-22 08:54

    TMS320C6748 Fixed/Floating-Poi

    for the TMS320C6748Fixed/Floating-Point DSP . For more detailed information, see the TMS320C6748 Fixed/Floating-PointDSP data manual (l
    发表于 12-07 21:43 14次下载

    基于StarterWare的TMS320C6748裸机程序开发入门详解教程

    基于StarterWare的TMS320C6748裸机程序开发入门详解教程
    发表于 09-06 16:03 64次下载

    TMS320C6748 TMS320C6748 Fixed/Floating Point DSP

    电子发烧友网为你提供TI(ti)TMS320C6748相关产品参数、数据手册,更有TMS320C6748的引脚图、接线图、封装手册、中文资料、英文资料,TMS320C6748真值表,TMS32
    发表于 10-15 16:19
    <b class='flag-5'>TMS320C6748</b> <b class='flag-5'>TMS320C6748</b> Fixed/Floating Point DSP

    TMS320C6748TMS320C6747芯片对比

    本文主要是关于TMS320C6748TMS320C6747的相关介绍,并着重对TMS320C6748TMS320C6747进行了详尽的对比分析。
    的头像 发表于 09-07 15:17 1.6w次阅读
    <b class='flag-5'>TMS320C6748</b>和<b class='flag-5'>TMS320</b>C6747芯片对比

    德州仪器DSP的TMS320C6748技术手册

    TMS320C6748定点和浮点DSP是基于C674x的低功耗应用处理器DSP是核心。与TMS320C6000的其他部件相比,该DSP提供了显著更低的功耗™DSP平台。
    发表于 08-24 09:25 10次下载