Intro to RISC-V in Hackspace Mag

My column in the latest Hackspace Magazine is an introduction to RISC-V and how it is enabling open source chip design:

Open-source chips:
Breaking free of chip design monopolies with RISC-V

When we think about what open source hardware means, we usually think about the board design being freely available. But what about the processor? Is there a way to make hardware that is truly open source? This month’s column is dedicated to an exciting — and surprisingly political — development in chip design.

When you write a program in the Arduino IDE, it is compiled into instructions for the microcontroller to execute. How does the compiler know what instructions the chip understands? This is defined by the Instruction Set Architecture. The ISA is a standard, a set of rules that define the tasks the processor can perform.

Chances are that both your laptop and the datacenter streaming your favorite movie are using an ISA owned by Intel or AMD. The processor in your smartphone is almost certainly using a proprietary ISA licensed from ARM. This is dangerous: proprietary standards can be over-priced, prevent innovation or even disappear altogether when companies change strategy.

Enter RISC-V, a free and open ISA created by researchers at UC Berkeley led by Krste Asanović and David Patterson. “We were always jealous that you could get industrial-strength software that was open,” Patterson explained to VentureBeat at the RISC-V Summit back in December. “But when it came to hardware, it was proprietary. Now, with RISC-V, we get the same kind of benefit. It helps education, and it helps competition.”

To read the rest of the column, download the free PDF or order to the print edition.

To learn more, watch this excellent keynote by Megan Wachs at Hackaday Supercon:
Intro to RISC-V in Hackspace Mag

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s