BasicBlocker: ISA Redesign to Make Spectre-Immune CPUs Faster
- 6 October 2021
- conference paper
- conference paper
- Published by Association for Computing Machinery (ACM) in 24th International Symposium on Research in Attacks, Intrusions and Defenses
Abstract
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 benchmarks.Keywords
Funding Information
- U.S. National Science Foundation (1913167)
- Deutsche Forschungsgemeinschaft (390781972 and 440059533)
This publication has 29 references indexed in Scilit:
- HAFIXPublished by Association for Computing Machinery (ACM) ,2015
- DüppelPublished by Association for Computing Machinery (ACM) ,2013
- Branchless Search ProgramsLecture Notes in Computer Science, 2013
- Control-flow integrity principles, implementations, and applicationsACM Transactions on Information and System Security, 2009
- Distributed Loop Controller for Multithreading in Unithreaded ILP ArchitecturesInternational Conference on Acoustics, Speech, and Signal Processing (ICASSP), 2008
- The impact of If-conversion and branch prediction on program execution on the Intel/sup R/ Itanium/sup TM/ processorPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2005
- LLVM: A compilation framework for lifelong program analysis & transformationPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2004
- Dynamic history-length fittingACM SIGARCH Computer Architecture News, 1998
- Measurement and analysis of instruction use in the VAX-11/780ACM SIGARCH Computer Architecture News, 1982
- The engineering design of the stretch computerPublished by Association for Computing Machinery (ACM) ,1959