A guide to accelerating applications with just-right RISC-V custom instructions
By Lee Moore and Duncan Graham, Imperas Software
June 6, 2020, embedded.com
The open instruction set architecture (ISA) of RISC-V permits broad flexibility in implementation and offers optional features that can enable fresh approaches to resolving hardware-software design tradeoffs. Based on a modular structure, a number of standard extensions and options can be used to configure the base processor as a starting point. Yet the true value actually lies in the opportunities that RISC-V offers developers to create new extensions, instructions and configurations that uniquely meet the needs of their innovative application ideas.
The software challenge for fixed ISAs
Traditionally, ISAs have been the intellectual property (IP) of commercial organizations who either wanted to sell microprocessors or microcontrollers, or who want to license their designs for others to use. Embedded developers are left to execute benchmarking software to determine which solution is best optimized for their application needs. Due to the cost of developing an independent ISA with all the necessary ecosystem, semiconductor vendors had been increasingly relying on the standard fixed ISAs offered by the mainstream IP providers, relying on Moore’s Law and integrated peripherals to deliver differentiation, such as ultra-low power, to their customers.
The challenge here is that the instructions used to execute code cannot be changed. Therefore, efficiencies that could potentially be gained by, for example, an optimized instruction for an encryption algorithm, cannot be realized. This may mean that the developer’s application is too slow, potentially uses too much power, or regularly misses a hard-real-time deadline in a control loop. Even with the best will in the world, these are factors that are challenging to resolve purely with semiconductor fabrication improvements or process shrinks.
The RISC-V ISA started as a project at the University of California, Berkeley and is now maintained by the RISC-V International Association, a non-profit group with over 300 members. These contribute to the ISA specifications, software tools, such as simulators and compilers, and the rest of the ecosystem that is needed to support such an undertaking. Whether or not it makes sense to use depends on whether one of two factors can be leveraged: it is free in terms of license, or the freedom it affords.
Related Semiconductor IP
- RISC-V Vector Extension
- RISC-V Real-time Processor
- RISC-V High Performance Processor
- 32b/64b RISC-V 5-stage, scalar, in-order, Application Processor. Linux and multi-core capable. Maps upto ARM A-35. Optimal PPA.
- 32 Bit - Embedded RISC-V Processor Core
Related White Papers
- Creating a custom processor with RISC-V
- Extending RISC-V ISA With a Custom Instruction Set Extension
- Creating Domain Specific Processors Using Custom RISC-V ISA Instructions
- ISA optimizations for hardware and software harmony: Custom instructions and RISC-V extensions
Latest White Papers
- New Realities Demand a New Approach to System Verification and Validation
- How silicon and circuit optimizations help FPGAs offer lower size, power and cost in video bridging applications
- Sustainable Hardware Specialization
- PCIe IP With Enhanced Security For The Automotive Market
- Top 5 Reasons why CPU is the Best Processor for AI Inference