嵌入式DSP访问片外SDRAM的低功耗设计研究

发布者:genius6最新更新时间:2011-07-03 关键字:SDRAM  低功耗 手机看文章 扫描二维码
随时随地手机看文章
DSP有限的片内存储器容量往往使得设计人员感到捉襟见肘,特别是在数字图像处理、语音处理等应用场合,需要有高速大容量存储空间的强力支持。因此,需要外接存储器来扩展DSP的存储空间。

    在基于DSP的嵌入式应用中,存储器系统逐渐成为功耗的主要来源。例如Micron公司的MT48LC2Mx32B2-5芯片,在读写时功耗最大可以到达924 mW,而大部分DSP的内核功耗远远小于这个数值。如TI的TMS320C55x系列的内核功耗仅仅为0.05 mW/MIPS。所以说,优化存储系统的功耗是嵌入式DSP极其重要的设计目标。本文主要以访问外部SDRAM为例来说明降低外部存储系统功耗的设计方法。

1 SDRAM功耗来源
    SDRAM内部一般分为多个存储体,通过行、列地址分时复用,系统地址总线对不同存储体内不同页面的具体存储单元进行寻址。SDRAM每个存储体有2个状态,即激活状态和关闭状态。在一次读写访问完毕后,维持存储体激活状态称为开放的页策略(open-page policy),页面寄存器中保存已经打开的行地址,直到它不得不被关闭,比如要执行刷新命令等;访问完毕后关闭存储体称为封闭的页策略(close-page pol-icy)。
    为了更好地决定选择哪种策略,需要熟悉SDRAM功耗的特点。SDRAM的功耗主要有3个来源:激活关闭存储体、读写和刷新。在大部分程序中,激活关闭存储体引起的功耗占到访存操作的总功耗的一半以上。图1给出了对同一SDRAM行进行读写时,采用开放的页策略和封闭的页策略的功耗比较(假设激活关闭存储体一次消耗功耗为1),经计算可知,若连续的几个读写操作在同一行,采用开放的页策略可以节省功耗。

1.JPG


    根据上面对SDRAM功耗的特点的分析可知,尽量减少激活/关闭存储体引起的附加功耗开销,是优化SDRAM存储系统功耗的根本,另外不能忽视一直处于激活状态的存储体带来的功耗。

 

2 访问SDRAM的低功耗优化设计方案
    为更好的管理外部SDRAM,大部分嵌入式DSP片上集成和外部存储器的接口EMIF(External Memory Interface),DSP的片内设备通过EMIF访问和管理存储器。由EMIF将对同一行的读写尽量归并到一起进行,减少激活/关闭存储体引起的附加功耗开销。图2为基于总线监测的读写归并设计方案的框图。

2.JPG


    1)采用块读的方法取指令。加入简化的指令Cache(I-Cache),将对SDRAM的读程序读操作按块进行。只有在Cache错过时,由Cache通过EMIF对SDRAM进行块读,每次读16个字节。
    2)加入写后数据缓冲区(WPB,Write Post Buffer),将数据总线上的请求发往WPB,由WPB对SDRAM进行块写、读写归并。
    3)动态监测EMIF总线的利用率,块读和读写归并时采用开放的页策略,当总线利用率较低时,采用封闭的页策略,当总线利用率很低时,将SDRAM进入休眠模式。[page]

3 访问SDRAM的低功耗设计
3.1 采用块读的I-Cache
    对于程序总线的读操作,根据程序的局部性原理,下一次要取得指令和当前要取指的指令在空间上很可能相邻,因此对于读程序采用块读的方法,每次读一个块,而不是一个字,并采用开放的页策略,因此对同一行的读写操作不需要额外的激活/关闭操作,可以较快的完成。
    当指令放在片外存储器里时,可以将CPU最近使用的指令放在I-Cache中,鉴于改善整个系统的性能和低功耗设计的需求。DSP的I-Cache大小设计为8 KB,包括2块存储器,其结构相同,每一块结构如下:
    1)数据队列,每个队列包含256行,每行16个字节。当I-Cache错过时,会采用最近最少使用算法(LRU)替换掉最长时间没有使用的行。
    2)行有效位队列,每行有一个行有效位,一旦一行装满数据。就置位该行有效位。
    3)标签队列,每一行有一个标签域,表明该行的数据的起始地址。当一行填满,相应的标签将存到该行的标签域中。
    如果要取的指令字在I-Cache中(命中),I-Cache会直接将其送给DSP。如果要取的指令字不在I-Cache中(错过),I-Cache会通过EMIF从外部存储器接口读取4个32 b的代码块。一旦这个指令字被读到I-Cache中,就送给CPU。
3.2 写后缓冲区的设计
    数据在存储器中的存放位置可能不像程序空间那么连续,而且数据空间有读写,对数据空间读写SDRAM进行优化的基本思想是,归并对SDRAM同一行的读写操作。具体来说,包括归并对同一行的多个读操作、归并对同一行的多个写操作,归并对同一行的多个读写操作3种情况,文献提出了这种设计方法,其基本思想是:系统从预取缓冲区(FB,Fetch Buffer)中取数据;写数据时,先写到写归并缓冲区(WCB,Write Combine Buffer);对在FB或WCB中的同一行的读写请求进行归并。但此设计方法是针对有一级Cache的通用微处理器系统,过于复杂,实现代价过高,不适合于本文研究的没有一级数据Cache的DSP,因此这里采用写后缓冲区(Write Post Buffer)的方法,具体设计方法如下:
    1)在EMIF中设立一个写后缓冲区,所有对SDRAM的读写请求均送到写后缓冲区,写后缓冲区立即给CPU响应,CPU可以不用等待写操作的结束而继续执行程序。
    2)每当写后缓冲区接受到一个新的写请求后,首先判断写后寄存器中是否存在和该写操作在SDRAM同一行的写操作,若有,将这两个写操作归并后同时向SDRAM进行写。
    3)当CPU读数据时,首先检查写后缓冲区,若存在要读的数据,直接从写后缓冲区读数据;若不存在,则从写后缓冲区中挑选和当前读操作在同一行的写操作归并后,对SDRAM进行读、写操作。
    设计写后缓冲区不仅可以提高程序的执行效率,还可以节省功耗。综合考虑系统的性能与功耗要求,这里DSP写后缓冲区设计为8 KB,采用和I-Cache类似的结构。
3.3 动态监测总线利用率
    SDRAM在所有的行都打开,等待读写操作时的功耗是所有行都关闭时的2倍多,因此SDRAM为了低功耗的需要,设计时都加入了休眠模式。当对同一行有大量的读写时,又需要采用开放的页策略,维持这些行打开。考虑到SDRAM的这些特点,单独采用开放的页策略或封闭的页策略是不合适的,需要结合运用。动态监测EMIF总线的利用率,块读、块写和读写归并时采用开放的页策略,当总线利用率较低时,采用封闭的页策略,当总线利用率很低时,将SDRAM进入休眠模式,需要时再澈活。
    以MT48LC2M32P2为例进行功耗估算,假设前后两次访问命中同一行的概率是90%,当总线利用率(每个周期内总线被平均利用的次数)高于25%时。采用开放的页策略比采用封闭的页策略节省功耗,当总线利用率在25%~20%之间时,采用两种策略差别不大,维持当前采用的策略,当总线利用率低于20%时,采用封闭的页策略比采用开放的页策略节省功耗,当总线利用率低于10%时,在采用封闭的页策略的同时,每次访问结束后都将SDRAM进入休眠模式,比单纯采用封闭的页策略更节约功耗。
    文献统计了通用处理器中不同程序的总线的利用率,如表1所示。可见,对于不同的程序,总线利用率差别较大。根据当前总线的利用率来决定采用何种策略访问SDRAM是比较合适的。

4.JPG

4 优化后的EMIF的性能分析
    对采用的总线监测的读写归并方案进行计算,假设前后命中同一行的概率是90%,根据Micron数据手册计算,归并两个写操作功耗减少24%,对不同的总线利用率的计算结果如图3所示。

3.jpg

 

5 结束语
    在基于DSP的嵌入式应用系统中,存储系统的功耗占据系统功耗的大部分。当外部存储器采用SDRAM时,降低SDRAM的换行访问可以节约大量的功耗。本文设计的基于总线监测的读写归并方案,不仅降低了外部存储系统的功耗,而且可以在一定程度上提高存储系统的性能。加入的I-Cache可以使程序总线更快地读指令,加入的写后缓冲区(WPB)可以使CPU不用等待缓慢的外部写操作的结束而直接继续执行指令。

关键字:SDRAM  低功耗 引用地址:嵌入式DSP访问片外SDRAM的低功耗设计研究

上一篇:飞思卡尔DSP系列为下一代无线基站部署提供更高的性能支持
下一篇:飞思卡尔DSP系列为下一代无线基站部署提供更高的性能支持

推荐阅读最新更新时间:2024-05-02 21:28

【ARM裸板】内存控制器、SDRAM基础与代码重定位
1.CPU如何控制外设? CPU控制相应外设的寄存器,有外设控制器发出特定的波形 2.CPU如何选择寄存器? CPU通过内存控制器选择 发出地址addr 根据地址选择不同的模块 CPU 内存控制器 读写数据 3.外设共用地址、数据总线,如何互不干扰? 通过片选CS引脚,选择不同的外设 4.谁控制片选引脚 发出地址addr 根据地址发出片选信号 CPU 内存控制器 使能相应的外设 由芯片手册得知:当CPU发出地址是0x00000000时 nGCS0为低电平选择(有效) 5.CPU如何读写数据的方向? 通过外设芯片的读写引脚控制 6.CPU不同位宽设备如何连接并读取数据【内存控制器】 6.1 连接方式 8bit ROM
[单片机]
【ARM裸板】内存控制器、<font color='red'>SDRAM</font>基础与代码重定位
低功耗无Y电容原边调整充电器的设计
  摘要     本文介绍了一款使用TI 控制芯片UCC28720 设计的5W 无Y 电容充电器方案,并且介绍了一种变压器结构设计,在去除了Y 电容的情况下依然能够通过EMI 测试;同时,整机待机功耗在全电压范围内低于10mW。由于UCC2820 是专为驱动三极管设计的原边调整控制器,使得整机的成本更有优势。 1 电源方案介绍     随着智能手机以及平板电脑的普及。手机充电器的要求也越来越高。其挑战主要来源于两个方面。第一,低待机功耗。由于充电器通常都插在插座上,而且大多数时间都不在执行充电工作。但是,它们仍然会消耗电能,因而浪费了能源和用户的金钱。如何降低这些装置的待机功耗,从而节省电能、满足政府法规要求,以及为用户节
[电源管理]
<font color='red'>低功耗</font>无Y电容原边调整充电器的设计
新型传感器提升电动机性能并降低功耗
现如今的电动机位置传感方式多种多样,光学编码器因其高精确度和易受微控制器控制的标准化“ABI”输出而倍受电机控制系统设计者的青睐。 但由于多种原因,非接触式磁性位置传感器现在成为了更好的选择。由于磁性位置传感器的尺寸更小,能够抵御灰尘、油脂、水汽等污染物,因而能够作用于对尺寸和/或可靠性有更高要求的应用。 在过去,有一个对磁性位置传感器不利的趋势:新型无刷直流(BLDC)电动机在总体上有高效率目标,以减少功耗。与此同时,设计者被赋予了增加新电机力矩的任务,实现电机的低转速运行,以支持直接驱动系统。最终,变速器将不再是必需品,这就大大降低了物料成本。 要使得力矩和效率达到最大化,无刷直流电动机在高转速下就必须有一个极其精确的发动
[嵌入式]
基于单片机的低功耗甲烷检测系统设计方案
   1引言   气体检测系统表是工矿企业、社会公用事业、环境保护等领域必备的安全装备。经过几十年的发展,在可测气体种类、测量范围、精度、稳定性、寿命等主要技术指标方面均有明显提高,随着大规模集成电路技术的发展,仪表向微型化、多参数组合与智能化方向发展。新型甲烷气体检测系统应具有智能化的特点,能在一定其他气体干扰的情况下工作,可以采用电子鼻。系统的结构,通过模式识别方法辨识甲烷气体。以小型化的电子鼻系统为基础的甲烷气体检测系统,在设计上应考虑减小系统的体积、简化气体的进样装置和改进电路以满足低功耗要求等问题;另外便携式检测系统的操作者通常情况下是现场人员,属于非专业人员,系统的操作不能复杂,因此对于系统的人机交互功能在设计上也
[测试测量]
基于单片机的<font color='red'>低功耗</font>甲烷检测系统设计方案
零翻转编码地址总线SoC的低功耗设计
引言 面向便携式设备的SoC设计,不仅仅要求性能高、体积小,更要求功耗低。一般而言,SoC的静态功耗很小,而对负载电容充放电的动态功耗很大。 SoC内部,总线上挂着很多功能设备,导致总线的电容负载很大。如果总线与片外设备联系,那么,它还要驱动很长的片外连线以及片外设备,负载高达50pF,比SoC内部各个节点的电容负载0.05pF高出三个量级。一般而言,总线的功耗占SoC总功耗的10%~80%;一个已经对内部电路优化过的SoC,总线功耗约占50% 。随着宽度的增加,总线消耗的功率占 SoC总功率的比重越来越大,因此,总线的低功耗设计很重要。 很多通过减少总线动态翻转来降低总线功耗的算法已经被提出来。数据总线的数据随机性较大,地址
[单片机]
零翻转编码地址总线SoC的<font color='red'>低功耗</font>设计
28 nm FD-SOI工艺,莱迪思全新低功耗FPGA技术平台问市
莱迪思Nexus技术平台采用三星代工厂28 nm FD-SOI工艺,提供解决方案、架构和电路层面的创新,实现低功耗网络边缘应用 莱迪思半导体公司,低功耗可编程器件的领先供应商,今日宣布推出全新低功耗FPGA技术平台——Lattice Nexus™。该技术平台旨在为各类应用的开发人员带来低功耗、高性能的开发优势,如物联网的AI应用、视频、硬件安全、嵌入式视觉、5G基础设施和工业/汽车自动化等。无论是在解决方案、架构还是电路设计层面,莱迪思Nexus均展现出卓越的创新,能够大幅降低功耗且提供更高的系统性能。 莱迪思半导体研发副总裁Steve Douglass表示:“莱迪思Nexus技术平台增强了FPGA的并行处理和可重新编程能
[嵌入式]
数字信号处理应用系统中的低功耗设计
  随着电池供电系统应用的日趋广泛,许多系统特别是便携式产品都面临低功耗设计的问题,以DSP为核心的应用系统当然也不例外。本文就TMS320系列定点DSP器件为例,介绍一些行之有效的降低功耗的设计方法。   一、合理选择DSP器件   应根据系统要求来选择合适的DSP器件。在典型的DSP应用系统中,通常其核心是由一片或多片DSP构成数据处理模块,由于系统运算量大且速度要求高,因此DSP内部的部件开关状态转换十分频繁,这使得DSP器件的功耗在应用系统的功耗中占有相当的比例,所以设计人员在进行电路低功耗设计时要熟悉DSP及其相关产品的情况。DSP器件的功耗与该系统的电源电压有关,同一系列的产品,其供电电压也可能不同,如TMS320C
[嵌入式]
天惠微2.4G多对一2对1低功耗无线模块IN310/IN618定制无线收发模块模组
该模块方案采用底功耗芯片IN310/IN618,该芯片具有用户自定义的专有协议栈,集成了2.4GHz频段的射频收发无线电系统和MCU系统。IN310集成了功能强大的32位ARMCortex-M4FCPU,具有浮点单元处理能力。它可以在各种时钟频率下工作,可达64MHz。本芯片内置256KB的ROM、高达1MB的Flash存储器和高达96KB的高密度SRAM。该芯片具有出色的射频性能,并考虑到超低功耗的设计理念,因此非常适合电池供电的产品等功耗有限的应用。IN130拥有精心设计的硬件安全引擎,支持ECC加密解密算法。IN618是IN310升级版,继承IN318低功耗性能的前提下提供2拖1、4拖1等组收发模式。 IN310/IN61
[嵌入式]
天惠微2.4G多对一2对1<font color='red'>低功耗</font>无线模块IN310/IN618定制无线收发模块模组
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved