promo.jpg
promo.jpg
promo.jpg
promo.jpg
promo.jpg

RISC-V (Five) Is Alive!

Nov. 16, 2016
RISC-V is a scalable open source, RISC instruction set that can be implemented on a range of platforms from custom SoCs to FPGAs.

This article is part of TechXchange: RISC V

Download this article in .PDF format

RISC-V (RISC five) is a compact, open-source, instruction-set architecture (ISA) that is ideal for embedded applications, including low-power platforms for the Internet of Things (IoT). It was originally developed at the Computer Science Division of the EECS Department at the University of California, Berkeley (see figure) and it has its own foundation to foster its use and adoption.

The RISC-V was developed at Computer Science Division of the EECS Department at the University of California, Berkeley. This die shot is of the original RICV-I chip.

RISC-V is a true reduced instruction-set computing (RISC) platform using an explicit load/store architecture. The ISA uses 32-bit instructions and it does not have condition codes, using register-based comparison branching instructions instead. It is based around a register file with 32 registers, although register 0 contains a value of zero. The system can be configured with 16-, 32-, 64-, and 128-bit registers. There is no hardware stack. The jump and link (JAL) instruction copies the program counter to a register. A software stack is generally implemented when needed. The advantage is that different stack implementations are possible.

The RISC-V implementation designations include a number of instruction extensions denoted by letters.

  • I–base integer configuration
  • E–embedded version with only 16 register file
  • A–atomic, real-time instructions
  • C–compact 16-bit instruction set for embedded applications
  • M–integer multiplication and division
  • F–single precision floating point
  • D–double precision floating point
  • Q–quad precision floating point
  • G–general, includes IAFDP

There are additional extensions for features like SIMD support. A typical embedded instantiation would be designated RV32EC (RISC-V, 32-bit, 16 register file, compact instruction set). High-end implementations of RISC-V can run operating systems such as Linux.

RISC-V is ideal for embedded applications. The base system has less than 50 instructions. This enables additional instructions to be added even when features like floating point are included. RISC-V is supported by compiler technologies like GCC and LLVM that can handle additional instructions. Low-power IoT applications can benefit from this approach by implementing some functions in hardware.

RISC-V started as an academic exercise, but has moved into the commercial space courtesy of companies like SiFive. SiFive’s Freedom series are actual RISC-V core implementations. The Freedom U500 platform is a RV64GC implementation, while the Freedom E500 is a RV32IMC/RV32EMC implementation. The U500 is available through TSMC using its 28-nm technology. It includes support for multicore implementations with cache coherency and support for high-speed peripherals, including PCIe 3.0, USB3.0, Gigatbit Ethernet, and DDR3/4 memory controllers. The E500 uses 180-nm technology support on-chip flash memory, OTP, and SRAM.

Those not wanting to dive into a custom chip can take advantage of Microsemi’s SmartFusion 2 FPGAs that support RISC-V. Microsemi supports a range of RISC-V implementations up to the 128-bit RV128I. Microsemi's FPGAs support ARM’s Cortex-M1 but this would need to be licensed if a design were to move from FPGA to a custom ASIC. That would not be the case with RISC-V. Microsemi includes a complete development platform with its Libero FGPA IDE and the Eclipse-based SoftConsole software IDE. The system includes graphical configuration tools.

RISC-V’s simplicity can also be advantageous in safety and security applications that require certification. Of course, ARM already does this for some of its platforms.

(By the way, this article title is a revamped version of a quote from the movie Short Circuit. Number 5 is the robotic central character. )

Download this article in .PDF format This file type includes high resolution graphics and schematics when applicable.

Sponsored Recommendations

Article: Meeting the challenges of power conversion in e-bikes

March 18, 2024
Managing electrical noise in a compact and lightweight vehicle is a perpetual obstacle

Power modules provide high-efficiency conversion between 400V and 800V systems for electric vehicles

March 18, 2024
Porsche, Hyundai and GMC all are converting 400 – 800V today in very different ways. Learn more about how power modules stack up to these discrete designs.

Bidirectional power for EVs: The practical and creative opportunities using power modules

March 18, 2024
Bidirectional power modules enable vehicle-to-grid energy flow and other imaginative power opportunities. Learn more about Vicor power modules for EVs

Article: Tesla commits to 48V automotive electrics

March 18, 2024
48V is soon to be the new 12V according to Tesla. Size and weight reduction and enhanced power efficiency are a few of the benefits.

Comments

To join the conversation, and become an exclusive member of Electronic Design, create an account today!