Quantcast
Channel: Cadence Blogs
Viewing all articles
Browse latest Browse all 6662

RISC-V: the Case For and Against

$
0
0
At the Linley Processor conference recently, there was a presentation about RISC-V from Krste Asanović, who is the leader of the team that defined the RISC-V ISA at UC Berkeley, and is currently on leave of absence working full-time at SiFive, a company set up to create commercial silicon implementations. For more details, see: RISC-V: Instruction Sets Want to be Free RISC-V: Gathering Momentum SiFive: a RISC-V Fabless Semiconductor Company At the processor conference, Krste gave a version of the talk he gave at DAC, but with more of an emphasis on open software since hardware people "don't get it", assuming that all open software is low quality and is basically written by students and hobbyists. In fact, the critical infrastructure of modern computing is largely open source, with many professionals at big companies like IBM or Intel contributing. The operating system that runs most datacenters is Linux. The webserver that runs a majority of websites is Apache. MySQL, PostgreSQL, Python, Ruby, gcc, Apple's Swift—all open source. The Modest RISV-V Project Goal I won't repeat Krste's presentation, the links above, especially the first two, give you a summary of what he presented at Linley. He did, however, finish with a bold prediction, what he calls "The Modest RISV-V Project Goal." People were not convinced. When the audience was asked who thought RISC-V was gaining traction, only a few people (I was one) put up their hands. Of course, lots of people there work for companies committed to other architectures, so maybe there is some of the Upton Sinclair effect going on: "It is difficult to get a man to understand something, when his salary depends on his not understanding it." The Devil's Advocate: Marcus Levy But the Linley Group brought in their own devil's advocate in the person of Marcus Levy, who is president of EEMBC (pronounced "embassy"), the Embedded Microprocessor Benchmark Consortium. He started off by emphasizing that he had no bones to pick with RISC-V and that what he was presenting included the opinions of lots of people that he had talked to in non-RISC-V companies. His presentation was titled Free Instruction Sets: It Costs You Somewhere . He grouped his comments under five headings: Cost reduction Validation and verification Simplicity Extensibility Ownership The first point was cost reduction. He started off by making the claim that you can take “free stuff” and hire people to make it production worthy and support/maintain it, or you can buy a complete package from a professional team. The next claim is that the processor just isn't that important on an SoC. On the Apple A9X, for example, it is just 9% of the die area. The cost of the processor design is a trivially small part of the cost of developing an SoC including multiple caches, GPU, and more. This is all true, the processor is a small part of a chip. But you can ask Intel how it's going in the mobile industry when you have a wonderful 91% of the chip but the wrong 9% in the corner (probably more like 2% actually, the instruction decoder). Or how about it all being about what Marcus calls the eco theory, that a good ecos ystem makes a good eco nomy. He pointed out that all the tier 2 vendors like Andes and MIPS have to pay the ecosystem guys to support their CPU. But I can remember when I was at VLSI Technology having exactly that problem with ARM. ARM had to create an "RTOS Club" (of which VLSI was a member) to pay companies like Wind River and Green Hills to support them. These days they could charge for the privilege. The second point was validation and verification. This forms a large and growing fraction of SoC development resources. Further, software development is also a large and growing fraction of SoC-based system development time. As an aside, what is all the software developed and debugged using? That would be open source compilers, debuggers, IDEs, profilers and so on. This is not because software developers are cheap, it is because the open source tools are the best tools available. Even with well-proven cores, verification is about performance, interoperability and system behavior. RISC-V is behind the curve here, since they still require core verification. That is true, but it is also true for companies like Qualcomm and Apple who build their own implementations of ARM processors, and so also have to do all the core verification. The ARM ISA is well-proven, but those implementations have never been seen before. By any objective standard, they are some of the best implementations in existence. Third point: Simplicity. It is true, as Marcus said, that the ISA has little to do with efficiency and is all about software compatibility. Plus it remains to be seen how simple things remain since the industry always asks for more. Four: Extensibility. The real work in extensibility is not creating new instructions. It is creating tool chains to support the new instructions. Marcus pointed out that Tensilica's TIE is a 20-year investment with a 100+ person team. Plus, software portability is the really big thing, which is why Intel and ARM don't allow third-party extensions. FInally, the fifth topic, ownership. A free ISA opens new opportunities because nothing is free. People will pay to make problems go away. In Markus's opinion, the reason the semiconductor vendors have joined RISC-V Consortium is that they can replace proprietary cores and don't need to support yet another tool chain. For the small vendors, it is an opportunity for new business, Markus finished up pointing out that like it was with ARM, and even Intel, it took years to build up an ecosystem with huge industry-wide support. My Opinion There are only two ISAs that are exposed to the users that matter: x86 and ARM. Everywhere else, application-binary-compatibility is irrelevant. Who cares what the ISA is in your disk controller? In your Bluetooth interface? PCs running things like Excel will be x86 for a long time or forever. Smartphones running things like Clash of Clans will be running ARM for a long time or forever. But I wouldn't be surprised to see almost everything else gradually transitioning to RISC-V. Furthermore, I wouldn't be surprised if some company like Google, Baidu, or Facebook, who have large datacenters but mostly control the applications that run in them, design their own RISC-V chips and built out datacenters with them. After all, what is the advantage of ARM over RISC-V if you decide you don't want to pay the Intel tax? The Chinese in particular hate the Intel tax since they want everything to be built in China (they import more semiconductors than oil). With ARM, they can build their own chips, but there is still an ARM tax, and now that ARM is Japanese, they may dislike that tax even more. Marcus's final comment was about generating an ecosystem: This will be volunteer work and a new generation of commercial products and tools. Likely to take years. "Volunteer work" makes it sound like it will all be unpaid people working in their spare time. But NVIDIA is commtted to RISC-V. HP has ported UEFI. Google is doing something. I think that these are professional engineers with Silicon Valley salaries whose job it is to work on RISC-V. To give you some idea of how much "volunteers" can do, Linux is 20M lines of code. It is supported by "volunteers", too, but only in the sense that there is no "Linux Megacorp" that employs all the engineers. Over the course of the last year, the project accepted about eight changes per hour—every hour—from over 4,000 developers sponsored by over 400 companies. Of course, RISC-V is not at that level (yet?), and that it will take years is probably true. But maybe fewer years than you expect. Most of the arguments about RISC-V would sound very similar to arguments a few decades ago about operating systems. VMS will dominate in scientific computers, Sun-OS is dominating in workstations, servers will all run Windows-NT except for the IBM mainframes that will run whatever name IBM has for its operating system that year. But actually almost all datacenters run Linux. Almost all smartphones run a flavor of Unix, whether it is Android (Linux-based) or iOS (Mac-based). PCs run Windows (but not Windows-NT, although there is some of that under the hood). Other operating systems are largely irrelevant. I am convinced RISC-V is going to be big. When Google won't commit updates without it...when India makes in the national standard...when NVIDIA decides to use it on all future GPUs...then that is momentum. Watch this space. Previous: DVCon Europe Preview

Viewing all articles
Browse latest Browse all 6662

Trending Articles