SSR:一种减少 RISC-V 流水线中装载-使用冒险气泡的停顿方案
硬件体系结构
2019-12-24 v1
摘要
现代处理器通常采用流水线结构,并经常从内存装载数据。此时,装载-使用冒险将不可避免地发生,通常会导致流水线停顿并降低性能。本文介绍并比较了两种解决装载-使用冒险的方案。一种是传统方案,在 ID 级与 EXE 级之间检测冒险,使流水线停顿并在两条指令间插入气泡。在我们提出的方案中,我们在 EXE 与 MEM 级之间添加了一个简单的旁路单元,禁用了传统方案引起的装载-使用冒险停顿,从而减少了两条指令间的气泡。在消除气泡方面,尤其是在长流水线或含有大量装载指令的程序中,这带来了相当可观的收益。该方案在开源 RISC-V SoC 生成器 Rocket-chip 中实现,并采用 SMIC 130-nm 工艺进行综合。结果表明,在 Dhrystone 基准测试中,后一种方案的性能提升了 6.9%,且面积和功耗开销合理。
引用
@article{arxiv.1912.10663,
title = {SSR: A Stall Scheme Reducing Bubbles in Load-Use Hazard of RISC-V Pipeline},
author = {Dongchu Su and Yong Li and Bo Yuan},
journal= {arXiv preprint arXiv:1912.10663},
year = {2019}
}
备注
The International Conference on Advanced Information Networking and Applications (AINA-2020)