Zesto论文笔记:Zesto: A Cycle-Level Simulator for Highly Detailed Microarchitecture Exploration

Zesto官网
http://zesto.cc.gatech.edu/


Related Work
SimpleScalar Family:
     很流行,是一个模拟器工具集而不是模拟器。
     Sim-outorder是一个样例,告诉别人如何使用这个工具集建立一个简单的时钟周期的模拟器。但是Sim-outorder太简单的,会使学生认为真正的处理器就是这样工作的,并且使用的逻辑架构是二十年前的。
     MASE是SimpleScalar2001年发布的,是一个比较详细的low level模拟,但是不支持x86指令集。

PTLsim:
     用了很多代码优化,性能很高,但是导致代码很难修改,并且有些地方还是不如Zesto详细。

PinTools:
     也是一个工具集,而不是一个模拟器。提供了强大的多样的计算机架构工具。但是没有提供一个对错误路径指令(如分支预测失败)的真实模拟。

其他的模拟器如SESC,GEMS,M5等,目前为止还不支持x86指令集。这些都是很好的模拟器,但是他们的硬件模型和对流水线的设定都不符合我们对高度细节的x86微架构模型的需求。

Overall  Organization

     由两部分组成,一部分是oracle "execute at fetch"功能模拟器,另一部分是详细的时序模拟器。
     
     
     因为对微架构的模拟很详细,所以速度很慢,大概为10's KIPS。也正是因为速度很慢,所以没有真实的"execute at execute"模拟。但是代码的的结构能很容易得扩展为execute at execute。

     Oracle功能模拟是以取指模块为基础的,如果取指模块对路径错误预测了,oracle也会顺着这个错误的路径执行下去,但是oracle保存了所有"in flight"的指令,所以当时序模拟发现了错误预测的时候,oracle能轻松的回滚。

     内存操作指令不会真的去修改模拟的内存,而是有一个辅助的内存数据结构用来保存所有"in flight"的store指令,
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值