Krste Asanović, Chairman, RISC-V Foundation
Memory consistency models (MCMs) are known to flummox even experienced computer architects, so it is perhaps not surprising that recent news articles had some difficulty portraying the nuances behind recent findings by a team of Princeton researchers led by Professor Margaret Martonosi. The RISC-V Foundation is publishing this article to help the RISC-V community understand the deeper implications of the Princeton study.Executive Summary
- The Princeton team found holes in the original RISC-V MCM specification that might lead designers of future complex RISC-V processors to implement behavior that would violate memory-ordering rules required for the C11 programming language standard.
- Current simpler RISC-V cores, such as the Rocket core, are not affected.
- The RISC-V Instruction Set Architecture (ISA) specification does not have “over a 100 errors”, rather some possible implementations of the ISA could fail over a 100 litmus tests, but a single change to the RISC-V ISA specification could eliminate all these errors.
- The RISC-V Foundation has been working with the Princeton team since December 2015, as well as with other MCM experts, to help tighten up the RISC-V ISA specification to avoid these problems. This work is part of converting the original Berkeley-authored RISC-V specifications into ratified RISC-V Foundation ISA standards, and is expected to complete in 2017.
- It is intended that the MCM changes would be backwards compatible, such that existing simpler cores would run code written to the new specs correctly.