from Hacker News

Instruction Sets Should Be Free: The Case for RISC-V [pdf] (2014)

by mtmk on 6/7/24, 1:06 PM with 93 comments

  • by CalChris on 6/7/24, 2:16 PM

    There is also a response from ARM, The Case for Licensed Instruction Sets.

    https://web.archive.org/web/20140926222155/http://www.linley...

  • by leucineleprec0n on 6/7/24, 4:19 PM

    Instruction set baselines should ideally be well-regulated open standards. They should also be good, and not moronic academic projects running of 32B opcode space because of religious dedication to silly extensions and the uniformity of an ISA for saving pennies on microcontrollers to high performance CPUs.

    RISC-V in principle is a great idea. Hopefully we’ll get something that’s at the caliber of a well-oiled machine backed by real experience and practical high performance use like Arm V8 and V9 someday that’s a bit more open, but as of right now RISC-V not only isn’t that on a technical level but is fighting some serious fragmentation.

    https://www.theregister.com/2024/05/29/riscv_messsaging_stru...

    And here’s David Chisnall on ISAs, which do matter:

    https://queue.acm.org/detail.cfm?id=3639445

  • by fidotron on 6/7/24, 2:59 PM

    There was a reimplementation of SuperH as https://j-core.org some years ago and AFAIK it didn't really go anywhere, sadly.

    One of the things you get when dealing with OEMs, and IP licensors like Arm, is a huge amount of paperwork about patents, and I used to believe this was annoying, but have come to believe it is vital. The alternative "open" "free" approach leads to something like the cloud world, where in practice it's AWS/GCS/Azure and some others in lower tiers, because of the complexities around the open/free stacks and IP tarpits that result. Just look at how AWS behave. We must be able to pay to develop and license these pieces, or you will end up with all IP being trade secrets and the vertical monopolies will get utterly entrenched.

    There are definitely patent trolls around but the free case would be much stronger if financially viable open source software development were a thing.

  • by bdowling on 6/7/24, 5:14 PM

    Would copying an instruction set and ABI to make an interoperable processor and system be fair use in light of Google v. Oracle (2021) [0][1]?

    [0] https://www.supremecourt.gov/opinions/20pdf/18-956_d18f.pdf

    [1] https://en.wikipedia.org/wiki/Google_LLC_v._Oracle_America,_....

    Edit: Changed phrasing of question. Also, to be clear I think the answer is probably yes.

  • by ribit on 6/8/24, 7:32 AM

    I fully support the idea of open instruction sets. I am not as much sold on the idea of cookie-cutter one-size-fits-all instruction sets. RISC-V is very nice for teaching CPU basics, and it is a great fit for tiny cores or specialized microcontrollers. Unfortunately, since it has been designed for simplicity it appears that it makes it harder building high-performance cores. RISC-V philosophy for high-performance OoO cores relies on instruction fusion, and thus would require the compiler to emit fusion-friendly sequences for best performance - and these sequences might differ from CPU to CPU. To me this seems to go against the very idea of common open ISA. We already see quite a lot of fragmentation and I fear it will only get worse as time goes on. More complex instructions that combine multiple processing steps would help, it seems that the core RISC-V community is opposed to that idea out of purely ideological reasons.
  • by Koshkin on 6/7/24, 3:26 PM

    The title of the piece is somewhat misleading - the actual point was, "there is no good technical reason for the lack of free, open ISAs."
  • by brcmthrowaway on 6/8/24, 7:50 PM

    Whatever happened to RISCV, wasnt it the big new thing like AI and web3?
  • by jqpabc123 on 6/7/24, 6:38 PM

    Software should be free --- except the stuff I earn a good living from.
  • by ysofunny on 6/7/24, 4:07 PM

    free instruction sets: this "langauge" should be spoken by all! a public ISA

    private instruction sets: this is a private matter, restricted to a need-to-know basis. private ISA

    the main difference is the private one can sneak in magic backdoor instructions, lost in the vastness of a 2^bit_depth space

    which is better for a languge? to be spoken used and known by many? or to be unkown and obscure? the funky business is that ISAs pictured as "languages" are spoken by microcontrollers; which scrambles the private/public issue

  • by demondemidi on 6/7/24, 2:09 PM

    No one said they shouldn't be. I mean, its not like there are laws saying they cannot be free. Patternson has always used too much hyperbole and marketing himself as a crusader. RISC-V is great, let the technology speak for itself.