当前位置: 代码迷 >> 综合 >> timing speculation processor
  详细解决方案

timing speculation processor

热度:32   发布时间:2023-12-21 04:20:44.0

1. 处理器的scaling有两个方向:提高频率和降低电压


2. 关于处理器的频率

处理器有一个参考时钟频率系统(或电压系统)。这些参考频率在考虑到了process variation,设备老化,极端温度和电压调节情况下,仍然能保证处理器运行的正确性。只要处理器没有到达其环境限制,超频一般就不会导致额外的错误。这个临界频率,简单记作f0. 举例来说,如果一个逻辑门的总延时超过了1/f,那么采用f作为同步该逻辑门的时钟频率就会导致错误。如果一个处理器能够使用超过f0的频率,以及容忍由此带来的错误,就称为timing speculation processor.

timing speculation processor的目标是,通过提高时钟频率来提高系统性能,同时,利用检错和纠错机制来处理超频可能导致的错误。

理论上,timing speculation processor的提出,为优化性能(或功耗效率),提供了更多的机会。


3. timing speculation processor的检错纠错方法

1)Stage-level

流水粒度,在每个时钟末检测一次。比如,利用wave-pipelining技术,分别以超频和参考频率各锁存流水的输出一次(参考频率锁存的结果可以确保是正确的),然后在每个时钟末比较两种锁存的结果。如果不一致,就用参考锁存器中的结果来恢复超频锁存器中的结果。

如何保证参考锁存能够跟上超频锁存的频率??

2)leader-checker

在CMP中,可以利用两个cpu核组成一对,运行同样的代码,一个使用参考频率,一个使用超频。利用参考频率的结果来检查和恢复超频结果的正确性。

如何保证参考核能够跟上超频核?超频核预取数据到共享缓存,可以加速参考核。

是否浪费了一个核??

4. 实验方法

1)使用Synopsis Design compiler和Cadence Encounter实现处理器中各功能模块。使用openSPARC提供的时序信息。使用CACTI估计模块的尺寸。

2)使用Simics获得benchmark的检查点,然后将检查点导入CMU Transplant tool进行门级仿真,从而得到各模块的出错率(给予profiling)。

3)使用SESC仿真器,附加Wattch,HotLeakage,和HotSpot提供功耗和温度模型,得到微体系结构级别的性能和功耗估计。

参考文献:

[1] Greskamp, B.; Lu Wan; Karpuzcu, U.R.; Cook, J.J.; Torrellas, J.; Deming Chen; Zilles, C.; , "Blueshift: Designing processors for timing speculation from the ground up.," High Performance Computer Architecture, 2009. HPCA 2009. IEEE 15th International Symposium on , vol., no., pp.213-224, 14-18 Feb. 2009



  相关解决方案