TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

RISC-V: An Open Standard for SoCs

52 pointsby apwalmost 11 years ago

7 comments

userbinatoralmost 11 years ago
The widening gap between memory and core speeds suggests to me that traditional RISC philosophy is not the way forward for performance and efficiency; fixed-length instructions, load-store restrictions, and delay slots may make implementation easier and faster at a time when memory could keep up with the CPU and instruction decoding was the bottleneck, but now that memory is often the bottleneck, it makes sense to have more complex, dense instruction encoding and the other features that are usually left out of RISCs, but improve code density.<p>Variable-length instructions are especially beneficial to code density, since often-used instructions can be encoded in fewer bytes, leaving rarer ones to longer sequences. It also allows for easy extension. Relaxing the restriction on only load&#x2F;store instructions being able to access memory can reduce code size by eliminating many instructions whose sole purpose is to move data between memory and registers; this also leads to requiring fewer explicitly named registers (since instructions reading memory will implicitly name an internal temporary register(s) the CPU can use), reducing the number of bits needed to specify registers.<p>Other considerations like number of operands and how many of them can be memory references also contribute to code density - 0- and 1-operand ISAs require far more instructions for data movement, while 3-operand ISAs may waste encoding space if much of the time, one source operand does not need to be preserved. 2 operands is a natural compromise, and this is what e.g. ARM Thumb does.<p>This is why I find the description of &quot;compressed RISC-V&quot; linked in the article ( <a href="http://www.eecs.berkeley.edu/~waterman/papers/ms-thesis.pdf" rel="nofollow">http:&#x2F;&#x2F;www.eecs.berkeley.edu&#x2F;~waterman&#x2F;papers&#x2F;ms-thesis.pdf</a> ) interesting - benchmark analysis shows that 8 registers are used 60% of the time, and 2-operand instructions are encountered 36&#x2F;31% statically&#x2F;dynamically. These characteristics are not so far from those of an ISA that has remained one of the most performant for over 2 decades: x86. It&#x27;s a denser ISA than regular RISCs, and requires more complex decoding, but not as complex as e.g. VAX. I think the decision to have 8 architectural registers and a 2-operand&#x2F;1-memory format put x86 in an interesting middle-ground where it wasn&#x27;t too CISC to implement efficiently, but also wasn&#x27;t RISC enough to suffer its drawbacks. I&#x27;d certainly like to see how an open-source x86 implementation could perform in comparison.
评论 #8153429 未加载
评论 #8151619 未加载
评论 #8152109 未加载
filereaperalmost 11 years ago
I can understand RISC-V&#x27;s use in academic settings or if you truly want open hardware.<p>But what&#x27;s the commercial benefit? Its an open core, its lacking patents because the performance critical aspects have been patented by others in their designs, so how does this stack up in terms of performance? Can you make a processor design as fast as proprietary ones like the Linux effort?<p>Second comes the issue of fabrication, is there somebody ready to fab this? Or are you just going to throw this on a large FPGA? If you&#x27;re throwing it on a FPGA, then why take jabs at the other ISA&#x27;s when you&#x27;ll be running this on non-open proprietary sillicon anyways.<p>Lastly, who cares? I&#x27;m guessing embedded is out as they care out the cost of each chip, the cheaper and more performant the better. Perhaps you&#x27;re running something mission critical or are totally tied to a architecture, but then you&#x27;re a dinosaur, the industry&#x27;s trending towards abstracting the hardware away anyways. Do you really care which piece of sillicon your app runs on?<p>All of the above&#x27;s probably really biased, misguided and wrong, but I&#x27;d like to hear what other HN&#x27;ers have to say.
评论 #8151531 未加载
评论 #8152202 未加载
wmfalmost 11 years ago
Related recent discussion about an in-progress implementation: <a href="https://news.ycombinator.com/item?id=8137521" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=8137521</a>
modelessalmost 11 years ago
Looks cool! Disappointed that there&#x27;s no option to trap on integer overflow. Languages don&#x27;t support it because processors don&#x27;t support it, and processors don&#x27;t support it because languages don&#x27;t require it; a vicious cycle that someone needs to break.
评论 #8153495 未加载
bsderalmost 11 years ago
The dirty secret is: nobody cares because the ISA doesn&#x27;t matter.<p>When programming a modern microcontroller, I regularly think: &quot;Gee, I wish I had more pins.&quot; &quot;Gee, I wish I had documentation on that peripheral.&quot; &quot;Gee, I wish I had better tool support.&quot; or &quot;Gee, I wish I had more RAM&#x2F;Flash&#x2F;MHz.&quot;<p>I <i>never</i> think &quot;Gee, I wish I had a better ISA&quot;.<p>I applaud the effort to make an open microprocessor especially in light of the increasing efforts to put trusted module crap in our computers. However, this has no commercial advantage in any way other than that.
评论 #8152227 未加载
评论 #8151623 未加载
评论 #8151668 未加载
microcolonelalmost 11 years ago
RISC-V is looking very hopeful, I hope I can get in on some chips soon.
jaekwonalmost 11 years ago
If there were a fully open hardware&#x2F;software machine, I would give it all of my money.*<p>*Of budget allocated for purchasing computing devices.