基于对指令数据区分访问混合cache低功耗策略.docVIP

基于对指令数据区分访问混合cache低功耗策略.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于对指令数据区分访问混合cache低功耗策略

基于对指令数据区分访问混合cache低功耗策略   摘要:在分析现有体系结构级低功耗cache设计方案的基础上,提出了一种混合cache低功耗设计策略,通过在常规混合cache结构上增加一标志域来区分cache某组中的指令和数据,限制了处理器每次访问的路数,从而达到低功耗的效果。详细阐明了该方法的原理和硬件实现,并将其应用到自主研发的龙腾C2微处理器上。实验结果表明,该方法不损耗cache性能,面积牺牲仅1.45%,总功耗降低了23.1%。   关键词:混合高缓; 低功耗; 体系结构   中图分类号:TN47   文献标志码:A   文章编号:1001-3695(2008)06-1894-03      当前,低功耗设计对处理器系统具有重大意义,功耗的增加不仅制约了微处理器集成度的增长,而且由于需要复杂的冷却技术而使成本提高。片上cache消耗了整个处理器功耗的30%~60%[1],降低其功耗对提高处理器的竞争性无疑有重要意义。CMOS电路中功耗包括动态功耗和静态功耗两部分。前者是由漏电流引起的;后者是由短路电流和状态改变时充放电引起的。对于按地址关联cache,动态功耗占主体地位。组相连cache因为每次访问要从cache的SRAM中并行地读出一组中的所有路,但最后只有一路数据被使用,造成功耗损失,所以减少每次访问的路数可以有效降低功耗。现有的基于此方法的策略有很多,如数据符号压缩[2]、两段访问[1]以及增加线性缓冲区等,但是它们大多是针对哈佛结构的指令或者数据cache,且实现的复杂度和硬件代价较高,较大地牺牲了cache的性能或者面积。   ?ケ疚难芯炕旌?cache的低功耗策略,通过分析若干现有基于上述策略的cache低功耗方法,结合混合cache自身的特点,提出了一种对混合cache中指令数据区分访问的cache低功耗思想。通过对比实现该策略前后的龙腾C2处理器功耗,证明了该策略的有效性。      ??1龙腾C2的基本结构      1.1龙腾C2微处理器整体结构   ?チ?腾C2微处理器是由西北工业大学航空微电子中心自主设计研究的一款面向嵌入式应用领域的低功耗??32 bit CISC微处理器,与Intel 486DX2完全兼容,工作频率??133 MHz。它包括一个??32 bit的整数处理单元、一个浮点单元、一个??16 KB的指令数据混合cache、存储器管理单元、总线接口单元、指令译码器和微程序控制器。其结构如图1所示。   其中,cache采用指令数据混合的结构。混合cache的优点是能够动态平衡指令负载和数据负载。当程序需要更大的指令cache 和更小的数据cache(或者相反)时,分立型cache不能改变分配,而混合cache 则会自动执行这种动态平衡。   1.2龙腾C2中cache的基本结构   ?サゴ拥凸?耗角度考虑,直接映射的方式每次只访问cache中的一路,能够最大程度地减少了每次访问的数据宽度,而且它不需要比较电路,从而最有利于低功耗的实现,但众所周知,它因缺失率高而使其性能远远低于组相连cache。龙腾C2中的cache经过cache模拟工具以及综合库的预算,从速度、性能和面积的折中角度已经设计好了其大小、组数和相连度等参数,分别是16k、256组和4路。其最初的基本结构如图2?┧?示。   与常规组相连混合cache一样,它包括一个数据存储器和一个标志存储器,当给出物理地址和请求信号时,根据索引并行地读出标志存储器和数据存储器,并进行标志比较,根据命中的路数信息从读出四路数据中选择一路供处理器使用。由于是混合cache,数据存储器中读出的四路可能是数据,也可能是指令,还可能是两者的混合。      ??2Cache低功耗策略分析      ?ゴ由厦嫠穆纷橄嗔?cache的工作过程可以看出,每次访问cache需要并行地读出四路的tag和data,而根据命中信息最终只选择数据中某一路。对cache功耗研究表明,对直接相连、两路组相连和四路组相连,数据线和数据传感放大分别消耗了55%、65% 和75% 的cache总能量[3]。可见路数越多,因为读的数据位宽的增大而增加的cache功耗越明显,如果每次只访问其中一路,则可大大降低功耗。基于此思想,文献[4]给出了一种两段式cache,即先访问tag域,再根据命中信息从数据域中选择一路访问。此方法避免了对其他无效组的访问,有效地降低了cache功耗,但是需要一个额外的时钟周期,降低了cache性能。文献[5]提出通过预测技术使得这个延迟被消去,但是其原理是基于指令的顺序执行规律,所以该方法只适用于指令cache的功耗优化。同样,增加一个cache行缓冲的方法也不太符合数据的访问规律,读写数据有很大

文档评论(0)

erterye + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档