- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一种基于多处理器环境总线接口部件优化方案
一种基于多处理器环境总线接口部件的优化方案
摘要:探讨通过优化总线接口部件的设计来提高处理器整体性能,优化的措施着重于降低处理器访存的次数和减小总线负载。仿真和验证结果证明这些方法是可行有效的。
关键词:多处理机; 存储一致性; 总线接口; 总线负载
中图分类号:TP302文献标志码:A
文章编号:1001-3695(2007)12-0282-03
“龙腾R2”是西北工业大学航空微电子中心自行设计的一种基于PowerPC体系结构的32位RISC处理器,采用自顶向下的正向设计方法,使用Verilog编码,与PowerPC750在指令集上完全兼容。笔者负责微处理器总线接口单元的设计。
多处理器的情况下,处理器与存储器之间的访问频度大大增加,存储系统的存储一致性问题成为设计的主要难点。根据Amdahl定律[1],对处理器性能瓶颈进行优化可以更好地提高处理器的整体性能。所以在本文中,笔者在总线接口单元的设计中提出了两种优化策略,优化方案的目标就是尽可能地减少处理器与存储器的通信次数,从而减小总线的负载来实现处理器存储系统整体性能的优化。
1减小总线负载的方案
对于给定的一段程序,降低其运行过程中处理器访存次数的方法很多。可以对这段程序进行编译优化,让它具有更好的空间局部性。这样在cache一定的情况下,可以提高cache的命中率,减少程序运行过程中的访存次数。也可以通过增加cache的容量或者相关联度来提高cache的命中率。
本文主要介绍两种方法:一是在“龙腾R2”的存储系统中增加牺牲者缓冲区;二是对“龙腾R2”的写缓冲区采用合并写缓冲区的策略。两种方法在减小总线负载的同时,对单处理器的性能也有很大的提高。
2“龙腾R2”存储系统的结构
为了便于阐述笔者的研究内容,下面给出“龙腾R2”存储系统的结构,如图1所示。其中处理器内核(MPU)、FPU、存储管理单元(如TLB)以及一级cache是微处理器芯片内的快速电路。而主存储器则是片外的慢速电路。系统接口是连接这两种不同速度设备的电路。
片上cache的大小随实现技术的不同而不同,采用越高速的技术,cache的大小就会越小。因此为了实现整个处理器的高频率,一级cache的大小不可能做得太大。“龙腾R2”的一级指令cache和数据cache的容量均为32 KB。
“龙腾R2”的数据cache设计有两种工作模式:
a)Cache打开模式。Cache工作的正常模式。在该模式下,数据cache又可以采用“写直达”和“写回”两种写策略。
b)Cache关闭模式。数据cache直接把LSU的load/store操作转发给BIU,访存操作都是单拍的。
3牺牲者缓冲区
3.1缺失cache和牺牲者cache
Cache缺失是导致处理器访存的直接原因,cache缺失可以分为四类[2]:
a)冲突缺失。如果块替换策略是组相联或者直接映射并且有太多的块被映射到同一组中,则某一cache块可能会在被替换掉后重新再调入,这时就发生了冲突缺失。如果cache是全相联并且采用LRU替换算法,冲突缺失将被避免。
b)强制缺失。对一个块的第一次访问一定不在cache中,所以该块必须被调入到cache中。这也被称为冷启动缺失或者首次访问缺失。
c)容量缺失。如果cache容纳不了一个程序执行所需的所有的块,将会发生容量缺失,某些cache块会在被替换掉后重新调入。
d)层次缺失(coherence miss)。层次缺失是由维护高速缓存一致性导致的缺失。
为降低cache的冲突缺失,Jouppi在1990年就提出了缺失cache和牺牲者cache的概念[3]。
Jouppi在一级cache与存储器之间增加了一个小的全相联cache来增加一级cache的相联度。根据小cache中存储的内容,小cache可以分别被当做缺失cache(missing cache)和牺牲者cache(victim cache)。
若小cache中存放的是一级cache缺失发生时从存储器返回的数据,小cache被当做缺失cache。一级cache缺失发生时从存储器返回的数据不仅要返回到一级cache中,还要返回到缺失cache中,替换掉缺失cache中最少被使用的项。当一级cache被访问时,缺失cache同时也被访问。如果访问在一级cache中缺失,但在缺失cache中命中,处理器在下一周期就会得到所需数据。缺失cache存在一个问题:当一级cache缺失发生时,数据读回被同时写到缺失cache和一级cache中,这种重复浪费了缺失cache
您可能关注的文档
最近下载
- 房产税城镇土地使用税政策讲解.pdf VIP
- 《弟子规正版全文-带拼音-完善打印版》.docx VIP
- 新大学日语阅读与写作1东娜练习答案及译文.pptx
- 第19课 法国大革命和拿破仑帝国 课件(共33张PPT).pptx VIP
- 施工现场节假日前安全检查表.doc VIP
- 500kV龙昌Ⅰ、Ⅱ号线直线塔绝缘子单串改双串施工方案.pdf VIP
- 结构优化的群体智能优化算法研究.pdf VIP
- 新视野大学英语(第四版)读写教程1(思政智慧版)课件 B1U1 Section A Fresh start.pptx VIP
- 北京-407EV-标准版-BJ5030XXYVRRC-BEV-407EV纯电动汽车产品使用说明书.pdf VIP
- GB50666混凝土结构工程施工规范.pdf VIP
文档评论(0)