RISC-V: An Open Source Approach Accelerating EDA Implementations
By Shaun Giebel, OneSpin Solutions
The idea of free and open software has been around for decades and was grown out of a need to be able to easily enhance the software so it can do what you require of it. There was somewhat of an anti-establishment sentiment that advocated for open sharing over corporations controlling access of the software.
Out of this came Richard M. Stallman’s book “The GNU Manifesto,” which was very much a call for uprising. Stallman declared: “Software sellers want to divide the users and conquer them, making each user agree not to share with others. I refuse to break solidarity with other users in this way.” And with this the free software movement was born for the greater good. “Free” in this sense is about the users’ freedom to see, use and change the code, not necessarily that the price of the software is free. Over the years the freedom has more moved towards openness and has benefited from substantial contributions from millions of people worldwide.
For decades, corporations creating electronic design automation (EDA) tools have taken advantage of open source software for building and debugging commercial products. Most companies ship their products with open source packages that are required for their products to work, and many are leveraging innovations and resources from the open source community to produce valuable products that are sold for a profit… hopefully. So where would EDA be today without being able to leverage open source, and how many contribute back to the open source community?
Almost all EDA software today is commercial (proprietary) and because of that, end users are dependent on the suppliers and the suppliers’ resources to fix and enhance the software. How much delay will the customer put up with? What happens when the delays in the EDA software start to impact chip delivery schedules? I’m sure a lot of industry professionals in the EDA space have participated in internal phone calls that end with “all hands on deck” to get the customer a nightly build. Another aspect of proprietary software is the notion of trustworthiness. How can customers trust the EDA software is doing what it is supposed and nothing else? How long might it be before customers demand openness?
Open collaboration isn’t limited to software. There are many open hardware projects that are striving to gain the same benefits seen in the open software movement. One hardware project that has been gaining copious amounts of attention recently is RISC-V. RISC-V International has made the RISC-V instruction set architecture (ISA) available under a Creative Commons license, which allows software to be ported to the architecture and hardware to be developed. In a few short years since its inception, the organization has rapidly grown to over 570 members contributing to the wider ecosystem – and let me be clear, RISC-V is visibly disrupting global innovation. Today, there are wide variety of RISC-V implementations in the computing industry and academia, designed into applications including graphics engines, machine learning and AI, networking, storage, security, embedded and custom processors.
In turn, the “RISC-V Revolution” has spawned the OpenHW Group – an organization that provides high-quality RISC-V open-source implementations. Between these organizations it is reasonable to be able to have a working RISC-V product in a matter of weeks with very little monetary investment. Of course, the end product would only be as good as what the community has provided. How do you know the implementation is compliant with the RISC-V ISA? How do you know that the implementation is trustworthy and not hiding a malicious trojan?
OneSpin Solutions has expertise in this space and saw numerous benefits we could bring to the ecosystem. We joined RISC-V International in May 2019, and are a founding member of the OpenHW Group. To contribute to the RISC-V ecosystem, we created the OneSpin RISC-V Integrity Verification Solution to address the needs of both core providers and core integrators. It leverages OneSpin’s advanced formal verification expertise for automotive and other high-integrity processor applications to exhaustively verify the implementation with minimal set up and runtime. The OneSpin RISC-V solution verifies compliance to the RISC-V ISA and can also point out extraneous logic that impacts cores’ functionality and could potentially uncover hidden trojans. OneSpin has used this technology to contribute to the OpenHW Group by verifying one of the open cores. Several serious bugs were found and reported, including an undocumented instruction and the ability to access memory with illegal opcodes. If you’re interested in learning more about assuring the integrity of RISC-V cores and SoCs, linked here is OneSpin’s RISC-V Verification Integrity whitepaper.
Over the last few decades, the open source software movement allowed for huge advancements in the industry that not only improved software, but also enabled software companies to grow at significant rates. The writing is on the wall that open source (software and hardware) will bring changes to the EDA industry and we need to be willing to adapt. For those of you thinking that “we can’t make money if our code is out there for free,” just remember that open doesn’t always mean “free” and IBM paid $34 billion (yes with a “B”) for Red Hat and its open source expertise – open source is big business. The fundamentals around open collaboration have proven to show that when we share and collaborate, great things can be accomplished, even if they are difficult, if ideas and solutions are kept proprietary. Contributing to open projects could be the best investment EDA ever made.