Recent research has revealed an ever-growing class of microarchitectural attacks that exploit speculative execution, a standard feature in modern processors. Proposed and deployed countermeasures involve a variety of compiler updates, firmware updates, and hardware updates. None of the deployed countermeasures have convincing security arguments, and many of them have already been broken. The obvious way to simplify the analysis of speculative-execution attacks is to eliminate speculative execution. This is normally dismissed as being unacceptably expensive, but the underlying cost analyses consider only software written for current instruction-set architectures, so they do not rule out the possibility of a new instruction-set architecture providing acceptable performance without speculative execution. A new ISA requires compiler and hardware updates, but these are happening in any case. This paper introduces BasicBlocker, a generic ISA modification that works for all common ISAs and that allows non-speculative CPUs to obtain most of the performance benefit that would have been provided by speculative execution. To demonstrate the feasibility of BasicBlocker, this paper defines a variant of the RISC-V ISA called BBRISC-V and provides a thorough evaluation on both a 5-stage in-order soft core and a superscalar out-of-order processor using an associated compiler and a variety of benchmark programs.
翻译:最近的研究显示,利用投机性执行这一现代处理者的标准特征,微结构攻击的种类日益扩大,这种攻击利用了投机性执行这一现代处理者的标准特征。拟议和部署的反措施涉及各种编译者更新、公司软件更新和硬件更新。部署的反措施无一具有令人信服的安全论据,其中许多已经打破。简化投机性执行攻击分析的明显方式是消除投机性执行。这通常被认为是令人无法接受的昂贵,但基本成本分析只考虑为当前指令设置结构编写的软件,因此它们不排除新的指令设置架构提供可接受性能而不执行投机性执行的可能性。新的ISA需要编译员和硬件更新,但无论如何都正在发生这种情况。本文介绍了基本Blocker,一种通用的ISA修改,它对所有通用ISA系统都有效,允许非投机性执行的CPUs获得大部分的绩效效益。为了证明基本Blocker的可行性,本文定义了RAC-V称为BRISC-V的可接受性操作。新的ISA系统需要汇编和硬件更新,但无论如何都会发生。本文介绍了基础程序5级和软级程序的彻底评估。