Live data from Hacker News

The $8 Linux Computer

thelittleengineerthatcould.blogspot.com

1–10 of 166 posts

Re: The $8 Linux Computer

#2
Based on a brief bit of googling about this board's CPU (the Bouffalo Lab BL808), it seems to have one RV64 and two RV32 cores. The RV64 core may be capable of running RV32 machine code, if the OS sets various flags correctly, but the reverse isn't possible without emulation.

How does Linux handle this? Can you just run an executable and have it automatically scheduled onto whichever cores can execute it? Wouldn't the kernel itself have to be compiled for both architectures?

EDIT: Maybe I was overthinking this -- I found what looks like the devicetree file for the BL808, and it seems like only the single RV64 core is supported:

https://lore.kernel.org/lkml/20221127132448.4034-7-jszhang@k...

Re: The $8 Linux Computer

#3
post #2

Based on a brief bit of googling about this board's CPU (the Bouffalo Lab BL808), it seems to have one RV64 and two RV32 cores. The RV64 core may be capable of running RV32 machine code, if the OS sets various flags correctly, but the reverse isn't possible without emulation. How does Linux handle this? Can you just run an executable and have it automatically scheduled onto whichever cores can execute it? Wouldn't th…

One proposal I saw was to treat the RV32 core like a microcontroller or as a dedicated co-processor. https://www.robertlipe.com/bl808-not-symmetric/

Re: The $8 Linux Computer

#4
post #2

Based on a brief bit of googling about this board's CPU (the Bouffalo Lab BL808), it seems to have one RV64 and two RV32 cores. The RV64 core may be capable of running RV32 machine code, if the OS sets various flags correctly, but the reverse isn't possible without emulation. How does Linux handle this? Can you just run an executable and have it automatically scheduled onto whichever cores can execute it? Wouldn't th…

I think you need to think of the RV32 as what they were designed for as I/O processors, one in particular is for networking

Re: The $8 Linux Computer

#5
There's another post on HN several days back with similarly price Sipeed M1s that's based on the same Bouffalo Lab BL808 RISC-V SoC module including NPU providing support for WiFi/BL, 802.15.4 Zigbee connectivity and interfaces such as UART, I2C, SPI, etc:

$10.80 RISC-V AIoT module supports Linux:

https://news.ycombinator.com/item?id=33874032

EDIT: This is the official website for the Sipeed M1s showcasing the specs and application video for AIoT:

https://wiki.sipeed.com/hardware/zh/maix/m1s/m1s_dock.html

Re: The $8 Linux Computer

#6
post #2

Based on a brief bit of googling about this board's CPU (the Bouffalo Lab BL808), it seems to have one RV64 and two RV32 cores. The RV64 core may be capable of running RV32 machine code, if the OS sets various flags correctly, but the reverse isn't possible without emulation. How does Linux handle this? Can you just run an executable and have it automatically scheduled onto whichever cores can execute it? Wouldn't th…

> The RV64 core may be capable of running RV32 machine code

It's not, xlen is fixed on that core like most RISC-V cores.

> How does Linux handle this? Can you just run an executable and have it automatically scheduled onto whichever cores can execute it? Wouldn't the kernel itself have to be compiled for both architectures?

With asymmetric multiprocessing like you get with OpenAMP. The RV32 cores are more real time management cores. One core only has an MPU, no MMU. The other core doesn't even have that. So run something like freertos (or just a superloop) on those cores to babysit realtime tasks and either respond quicker and/or more deterministically than Linux can, or avoid waking up the Linux core.

Re: The $8 Linux Computer

#8

Can this chip output HDMI? I looked at the datasheet and it didn't look like it: https://github.com/bouffalolab/bl_docs/blob/main/BL808_DS/en...

It looks like it has MIPI DSI. If you were determined, you could use a DSI->HDMI bridge. AD makes one of those for some reason: https://www.analog.com/media/en/technical-documentation/data...

Re: The $8 Linux Computer

#9

Can this chip output HDMI? I looked at the datasheet and it didn't look like it: https://github.com/bouffalolab/bl_docs/blob/main/BL808_DS/en...

No. It has MIPI DSI, but I'd be surprised if you could clock it very fast across these board layouts.

The very similar Allwinner D1 can push HDMI though. It's got the same main core (T-Head c906) and is about the same price point. That SoC doesn't have the nice wireless interfaces builtin though.

Post reply on HN