Hacker News new | ask | show | jobs
by desdiv 3346 days ago
Some have already shipped[0], though the availability is very limited.

[0] https://www.crowdsupply.com/sifive/hifive1

1 comments

These have very limited RAM, and won't run Linux.
128MB Flash off-chip, and I know of several Linux distros that can run with under 50MB, so I would say it would be entirely possible to run it.
128 MB Flash, not RAM.

Linux will run in 8 megabytes of RAM if you want. The SiFive board has 16 kilobytes.

What's to stop you connecting up an old SIMM card? The memory won't be fast, but doable.

I saw Flash as the larger limitation, as expanding that is problematic.

> What's to stop you connecting up an old SIMM card? The memory won't be fast, but doable.

There aren't enough pins. Certainly not enough pins accesible in single-cycle reads/writes. Maybe you could multiplex them with external hardware to talk to a SIMM but you'd be talking to memory at single megahertz effectively.

An SDRAM controller in an FPGA on the other side of the QSPI link would be faster, but it'd still be slow. You could get it to work to say you've done it, but it'd run at literal-days-to-boot speeds.

The board (and chip) is meant and marketed for freetards who like Arduinos - so I bought one and so did several of my friends. LEDs were blinked and better futures dreamt of. It's cool. But it's not a workstation chip by any stretch of the imagination.

Hopefully the next version will have a real external memory bus.

I reckon it would be more in the range of minutes (depending on how complete of a linux system we are talking about here). The QSPI peripherial can run at 100MHz if I read the datasheet correctly (so you can read/write data at about 400MBit/s minus overhead). For reference booting linux on an ATmega@24MHz running an ARM emulator and external SDRAM with an memory bandwidth of about 300kbyte/s seems to take about 6 hours [1]. Assuming the SiFive is just as efficient as the ATmega it would take less than a minute (assuming the memory bandwidth is the only bottleneck and not the slow CPU - the SiFive also has 16kB of L1 cache and has a clock rate 10x faster).

[1] http://dmitry.gr/index.php?r=05.Projects&proj=07.%20Linux%20...

Just for the records, you can run ELKS, a Linux variant for small processors, on 8086 hardware. Ages ago I successfully booted it on a 8088 based ancient industrial system with less than one megabyte of RAM and two floppy drives (hard disk? what hard disk?!? :). But the Linux a "normal" user would run is a very different thing which would require some more power.

http://elks.sourceforge.net/

I guess it's rather due to the thing not having an MMU
Linux can run on systems that lack an MMU.

https://unix.stackexchange.com/questions/190350/mmu-less-ker...