💾 Archived View for dioskouroi.xyz › thread › 29428962 captured on 2021-12-05 at 23:47:19. Gemini links have been rewritten to link to archived content

View Raw

More Information

⬅️ Previous capture (2021-12-04)

🚧 View Differences

-=-=-=-=-=-=-

HiFive Unmatched: Exploring a RISC-V Computing Experience

Author: rbanffy

Score: 45

Comments: 18

Date: 2021-12-03 11:51:46

Web Link

________________________________________________________________________________

rwmj wrote at 2021-12-04 18:30:13:

I have two[1]. They definitely aren't performance monsters (:-]) but they are solid workhorses for developing RISC-V software in our case especially for building RPMs. What's nice about them is the mini-ITX size, ATX power, 16GB of RAM, and reasonably well-documented and properly supported hardware.

I like to think of them as like the original Mustang machines that we used for aarch64 development in the very early days of 64 bit ARM. Solid but unspectacular.

[1]

https://rwmj.wordpress.com/2021/05/27/hifive-unmatched/

mhh__ wrote at 2021-12-04 21:57:25:

I think they are supposed to be exactly that - solid but unspectacular, beyond being OOO-speculative.

rwmj wrote at 2021-12-05 13:34:12:

Yes. Compared to the HiFive Unleashed (I also have two of those) which are "spectacular" in their finickiness and general unreliability.

synergy20 wrote at 2021-12-04 15:25:07:

I have one of those, it uses ATX-power so it is basically like a PC motherboard, I had to find one ATX power supply from an old PC in my garage, the power supply is a bit chunky and looks ugly by the side.

The worst part is that its small fan is screaming after power is on, which really hurts my ears. You either have to buy a solid(sound-proof) case, or put it far away from your desk(better in a different room that no one lives there), it's hard for me to do either, so this little board is collecting dust for the last few months.

At least I wish they use a larger but quieter fan, there is no way I can use it unless it's at least 30 feet away.

neilv wrote at 2021-12-04 16:42:00:

I'd bet you could rig up virtually silent cooling for it. Personally, I'd do something with a Noctua fan. But any larger fans are often quieter than smaller, and slower speeds are often quieter than faster. And I'm not certain the fan has to be mounted on the CPU cooler itself, if you've got strong airflow across the heatsink from a case fan, so you could try that and test it with whatever CPU temperature sensor is on the board.

(But if it's really unusable, don't throw it away; I happen to operate an environmentally-friendly HiFive Unmatched recycling service, and will even pay shipping and a few bucks for your trouble. :)

ch_123 wrote at 2021-12-04 17:28:16:

FWIW, I've seen people modify their boards with Noctua 40mm fans, and 3D-printed adapters. They should have used a larger heatsink with the ability to mount a standard (and quieter) fan

rjsw wrote at 2021-12-04 16:24:08:

It looks a really small heatsink too, a bigger one could allow a quieter fan to be used.

marcodiego wrote at 2021-12-04 16:55:39:

Does it need any proprietary blob? Not needing it means freedom from obsolescence, which is important if you want to use for a few years anything that is not in the list of the most popular architectures.

jacoblambda wrote at 2021-12-04 17:13:27:

~~I would imagine so. To my knowledge it's an FPGA with their core IP running on it. You could probably get away without any kernel blobs but the firmware at the very least is going to need a binary blob to load their IP.~~

Edit: I stand corrected and should have read more into the product spec for this release before speaking. They have a proper ASIC now so I can't quite say without reading more into their docs.

Note: ~~ is strikethrough text but apparently that doesn't work on HN

ch_123 wrote at 2021-12-04 17:27:00:

It's not an FPGA, it has a dedicated SoC and some I/O controller chips.

https://sifive.cdn.prismic.io/sifive/4f0048e8-1d35-4a1c-94ec...

jacoblambda wrote at 2021-12-04 17:33:03:

Interesting. Apologies then. This was a bad assumption on my part. Is this the first time they've made their own custom SOC? To my knowledge their business is FPGA IP and previous boards used FPGAs with the IP flashed onto them.

ch_123 wrote at 2021-12-04 17:39:03:

No, they have released a number of designs before - including the "Unleashed" [1] and "Hi Five" [2] which are both SoC designs as well. The Unleashed had an optional FPGA add-on, but it was not part of the main CPU.

My reading is that they are aiming for real hardware implementations and not just FPGA. They have also licensed their designs to various third parties. I'm not sure how many have been turned into "real" hardware though.

[1]

https://www.sifive.com/boards/hifive-unleashed

[2]

https://www.sifive.com/boards/hifive1-rev-b

foxfluff wrote at 2021-12-04 17:27:50:

How did you come to the conclusion that it is an FPGA? I'm not finding any reference to an fpga in datasheet, schematics, documentation, or product brief.

jacoblambda wrote at 2021-12-04 17:31:29:

Ahh. SiFive's primary business is selling their cores as FPGA IP. Previous boards used FPGAs with IP flashed on them so I naively assumed this board was the same.

ansible wrote at 2021-12-04 18:11:44:

> _SiFive's primary business is selling their cores as FPGA IP._

Their primary business is selling IP to be incorporated into SoCs and other chip designs. The FPGA market is very limited by comparison.

marcodiego wrote at 2021-12-04 17:16:40:

Is it at least stored in ROM? I mean does it need proprietary blobs on software?

jacoblambda wrote at 2021-12-04 17:34:37:

Scratch what I've said. Some other comments have enlightened me that this is actually a proper SOC so I can't answer this properly. In the past they've used FPGAs (IP cores are their primary business) for dev boards but it looks like they have reached sufficient momentum to justify a dedicated ASIC run.

vlmutolo wrote at 2021-12-04 15:41:35:

In this case, the “GC” part of the name [RISCV-GC] means that extensions for integer multiplication and division, atomic instructions (memory usage synchronization), as well as single- and double-precision floating-point operations are included.

This only describes what the G stands for. Critically, the C stands for "compressed" instructions, which make a huge difference in code density.