13 ms·
HiFive Unmatched – A RISC-V Linux development platform
- johndoe0815 5y agoIt's also a nice Haiku platform - https://discuss.haiku-os.org/t/my-progress-on-real-risc-v-hardware/10963/31 https://discuss.haiku-os.org/t/my-progress-on-real-risc-v-ha... However, the "HiFive Unmatched HW Reference Manual" mentioned on the SiFive web page (https://www.sifive.com/boards/hifive-unmatched https://www.sifive.com/boards/hifive-unmatched) is still not available, so bare-metal programming (or porting other operating systems) requires lots of Linux code reading.
- mrlonglong 5y agoAt £500+ it's not a realistic prospect I'm afraid. Maybe if there more affordable ones that becomes available then I definitely would want to take a look in-depth.
- baobrien 5y agoAFAIK, SiFives business is about selling their RISC-V cores and ASIC consulting services. RISC-V is still kind of new as far as hard silicon Linux-capable cores go. My understanding is that this thing is meant to serve as a dev kit for their U74 core and U740 SoC platform, provide hardware for interested-enough Linux kernel devs and distro maintainers, and serve as a real, up-for-sale RISC-V board with a real SoC, 'all the fixins', and no FPGA. That's to say it's not a board for people who'd otherwise buy a RasPI or slightly more expensive SBC -- It's closer to a proof of concept.
- rbanffy 5y agoWe’ve been through this here on HN. The board is designed around a chip that really wants to be a router. This is a bit expensive for a desktop workstation and will cater to people really determined to make this the year of the RISC-V desktop rather than the average developer, such as myself, who, while considering x86s disgusting, still buys them because they are cost-effective.
- rjsw 5y agoWhy do you feel this is optimized as a router, are you mixing it up with the SolidRun HoneyComb ARM system ?
- rbanffy 5y agoOops... I think I did. Sorry.
- threshold 5y agoWhy is X86 disgusting?
- mhh__ 5y agoUgly ugly ugly ISA. We throw away a little bit of performance and a lot of power because of how weird and old it is.
- infamouscow 5y agoIt's a matter of taste, but x86 has a lot of historical cruft because it's been around long enough to see 16-bit, 32-bit, and 64-bit industry transitions. Off the top of my head, x86 memory segmentation and fragmentation between BIOS vs. UEFI and ACPI vs. the absence of device trees (AFAIK).
- mrlonglong 5y agoBut it is kinda cool to run software that originally was built for the 8088 on an AMD Threadripper. But yes, I do agree the x86 architecture is fast losing its lustre.
- lsllc 5y agoCheck out the Nezha D1 RISC-V SBC: https://hackerboards.com/boards/nezha/ https://hackerboards.com/boards/nezha/ Not sure how easy they are to get ... but $99 is a great price.
- rwmj 5y agoOne seller on AliExpress: https://www.aliexpress.com/wholesale?SearchText=sipeed+nezha https://www.aliexpress.com/wholesale?SearchText=sipeed+nezha These are very slow with limited RAM. It's possible to run Linux but it won't be much fun.
- pantalaimon 5y agoIs 1GiB considered 'little RAM' these days for an embedded board?
- cestith 5y agoPerhaps not for embedded, but it's being compared to a development board with 16 GB.
- rwmj 5y agoI actually thought the board above had only 512 MB, hence my comment, but even 1 GB is quite limiting. The HiFive Unleashed (previous SiFive board) has 8 GB and that is quite tight for some of the larger builds we do, or for doing parallel builds. The bigger problem with the board above is the single core.
- pantalaimon 5y agoWhy not cross-compile?
- ibotty 5y agoDistributions tend not to like cross-compiling, because it's not as flexible (how do you run test-programs?) and sometimes has bugs you don't have when native compiling.
- IshKebab 5y agoThat doesn't seem like an unreasonable price to me. Do you know of a cheaper alternative with the same performance?
- pjmlp 5y agoSo does it already have Swift support by now?
- rwmj 5y agoI know almost nothing about Swift except that it's some Apple-sponsored programming language, so I guess their main development thrust would be Arm. However as its implemented using LLVM, and LLVM has supported RISC-V for a very long time (at least since 2015/2016), there is hope that a volunteer port would not be too complicated.
- pjmlp 5y agoYou missed the joke. https://www.sifive.com/blog/with-sifive-we-can-change-the-world https://www.sifive.com/blog/with-sifive-we-can-change-the-wo... Given, https://www.tensorflow.org/swift/guide/overview https://www.tensorflow.org/swift/guide/overview
- ncmncm 5y agoThis seems to be calling attention to Chris Lattner, creator of Swift, abandoning Apple for Google, and then abandoning Google for SiFive. Swift might survive at Apple, but by the link appears already dead at Google.
- pjmlp 5y agoIndeed, a project started at Google due to his arrival there, hence the jab at Swift being available in RISC-V due to the new position. He went to Tesla first, by the way.
- ncmncm 5y agoGuessing Swift didn't stick at Tesla either.
- ncmncm 5y agoBTW, last I heard, Dave Abrahams, leader of the Swift std lib project had moved on to Google.
- rwmj 5y agoI have two (https://rwmj.wordpress.com/2021/05/27/hifive-unmatched/ https://rwmj.wordpress.com/2021/05/27/hifive-unmatched/) so I guess ask me anything ...
- mofosyne 5y agoWill RISCV have the same mess that ARM ecosystem has of not standardising or having a single BIOS or similar system... such that you have to compile a custom image for every board? One thing PC has going for it, is that you can install one Linux distro into any PC board. This is not the same for ARM boards.
- rwmj 5y agoWell that's a very good question. At the moment the reality is something of a mess, because someone looked at Arm and though that must be a good idea. Plus the RISC-V Foundation has even less control over implementers than Arm does (which doesn't have a lot). The good news is that the foundation is defining various platform specs. For servers it'll include a standard firmware spec plus open source firmware implementation and a few other bits. Maybe working UEFI one day. (https://lists.riscv.org/g/tech-unixplatformspec https://lists.riscv.org/g/tech-unixplatformspec https://github.com/riscv/riscv-platform-specs https://github.com/riscv/riscv-platform-specs https://github.com/riscv-non-isa/riscv-sbi-doc https://github.com/riscv-non-isa/riscv-sbi-doc)
- dlojudice 5y agoI'm sure this mess could be avoided if instead of a doc only there would have a test suit exercising the implementation. This should be true for many foundations and their specs.
- xvilka 5y agoPC BIOS and UEFI are a mess as well. They are proprietary blobs guarded by Intel and alike. At least ARM had most bootloading open with uBoot, for example. Also PC firmware code on modern platforms is often bigger than Linux kernel. Hardly a good example. I sincerely hope RISC-V will avoid relying on UEFI and opt out for something more sensible.
- sydthrowaway 5y agoAre there any good <$100 RISC-V dev boards out?
- rwmj 5y agoGood & $100, no. The volumes being produced make that impossible right now. But there are cheaper boards around. A summary can be found in the RISC-V Foundation board giveaway (https://www.cnx-software.com/2021/05/03/the-risc-v-foundation-to-give-away-1000-risc-v-development-boards/ https://www.cnx-software.com/2021/05/03/the-risc-v-foundatio...), but there exist more than that. Unfortunately the one we were hoping would come out about now - the BeagleV - just got cancelled.
- nix23 5y agoIt would be really cool if the Raspberry Pi Foundation could jump in.
- rwmj 5y agoWhat could they do though? Raspberry Pi only exists because there are hundreds of millions of Arm CPUs being built for phones and tablets, and a tiny fraction of these end up in SBCs. The sheer volume means each chip can be had for a few dollars. There is no such ecosystem for RISC-V yet. The largest known order was AllWinner/T-Head (reportedly 5 million through TSMC).
- sydthrowaway 5y agoAh damn. Would you say synthesising a RISC-V CPU on a FPGA dev board would qualify as an alternative?
- gigatexal 5y agowhat GPUs are compatible with this?
- guerrilla 5y agoMy question is how would one determine which GPUs are compatible with this? I guess any GPU that works on x8 PCIe gen 3 and can power itself from that or supply its own external power? (Datasheet says the fully loaded board is 150W btw.) You'd probably have to limit yourself to whatever has open source drivers for Linux.
- davidlt 5y agoI am running RX 570 with PCIe + 6-pin connector for the power. These works out-of-the-box due to open source drivers. Older Nvidia cards work too, but you would need to go with older cards as you need Nouveau driver. I believe someone recently used AMD RX 6700XT, which is a bit insane. The bottleneck here is SoC, not the GPU. With HW decoding on the GPU I can play 4K 60fps trailers on Unmatched just fine.
- rwmj 5y agoAMD Radeon GPUs are known to work, provided you get one which has good Linux support. They need to have all open source bits because of course you cannot run x86 blobs on RISC-V, so for example Nvidia with the normal drivers would be impossible. The getting started guide has a few specific model suggestions: https://starfivetech.com/uploads/hifive-unmatched-getting-started-guide-v1p2.pdf https://starfivetech.com/uploads/hifive-unmatched-getting-st...
- edwintorok 5y agoI have the Hifive Unmatched board with an AMD GPU and anything graphics related is extremely slow, to the point that launching and using a browser is unusably slow (I mostly use it via SSH). Might be related to the low amount of PCIe bandwidth available (AFAICT everything PCIe so both graphics and NVMe share a single x8 PCIe bus). Also there is a recent patch for the kernel that removes some unaligned memory accesses in copy_to/from_user which should speed things up, but I haven't tried the new kernel yet [1] Nevertheless it is a useful board for testing software on RISC-V, e.g. I mostly use it to test the OCaml compiler and related programs on it. [1] https://lore.kernel.org/lkml/mhng-423e8bdb-977e-4b99-a1bb-b8c530664a51@palmerdabbelt-glaptop/ https://lore.kernel.org/lkml/mhng-423e8bdb-977e-4b99-a1bb-b8...
- ncmncm 5y agoI find my enthusiasm for RISC-V materially reduced by its appalling lack of a base POPCOUNT instruction. Its lack makes my favorite optimizations annoyingly pessimal. I understand that, someday, higher-end realizations will begin to ship with various "B" subsets implemented, but "portable" builds will tend to avoid relying on those for an appallingly long time after. (E.g. MSVC and Gcc still do not generate POPCNT instructions, on amd64, unless you specifically identify a post-2004 target.) I will nonetheless be excited to learn of the first chip that does ship with the full raft of B instructions.
- rwmj 5y agohttps://github.com/riscv/riscv-bitmanip/blob/main/bitmanip/_popcount.adoc https://github.com/riscv/riscv-bitmanip/blob/main/bitmanip/_...
- ncmncm 5y agoI cannot tell what this means.
- rwmj 5y agoIt's a link to the proposal for popcount in the bitmanip extension.
- ncmncm 5y agoI get that. But I said myself that the (optional!) B extension defines a popcount instruction. Does the linked page indicate anything further? Does it say RV64 chips are in fact required to implement the instruction? Or, what do the checkmarks indicate?
- cbm-vic-20 5y agoFWIW, RISC-V does have a invalid instruction trap mechanism that can be used to provide a software implementation of missing instructions. So at least if the platform provides a software implementation of the B instructions, user code can still use them (much more slowly, of course).
- bserge 5y agoWhy not solder the SSDs and a GPU while at it?
- cestith 5y agoFor a limited-run dev board with the CPU, board, and that much RAM I'd say it's priced fairly appropriately.