by amelius on 5/18/24, 7:37 PM
> The chip foundry wouldn't know what the FPGA will be used for, and where the proverbial "privilege bit" will end up being laid out on the chip, which mitigates against Privilege Escalation hardware backdoors. Exposure is limited to DoS attacks being planted into the silicon during FPGA fabrication, which yields a significantly improved level of assurance (i.e., the computer may stop working altogether, but can't betray its owner to an adversary while pretending to operate correctly).
I suppose in theory the FPGA could contain a hidden CPU that has full read/write access to the FPGA program.
Further, if the system becomes popular and more FPGAs need to be produced for the same system or the next generation, then the foundry has additional information and they can make a good guess of where the privilege bit will be. Even simpler, they could program an FPGA with the code and figure it out manually.
by buildbot on 5/18/24, 6:23 PM
It’s really quite amazing to login a linux shell on an orangecrab FPGA running a RISV-V softcore, built using an open source toolchain. That was impossible not so long ago! At best you’d have something like Xilinx PetaLinux and all their proprietary junk.
by ruslan on 5/18/24, 8:19 PM
I'm kind of going the same direction, but different route. My design is based on VexRiscv and all hardware is written in SpinalHDL. It does not run Linux yet because of limited SRAM (512KB) on my Karnix board, but it has Ethernet and HDMI. I have coded a CGA-like video adapter with HDMI interface that supports graphics (320x240x4) and text (80x30x16) modes with hardware assisted smooth scrolling. :)
If someone is interested, here's a rather brief README:
https://github.com/Fabmicro-LLC/VexRiscvWithKarnix/blob/karn...
KiCAD project for the board: https://github.com/Fabmicro-LLC/Karnix_ASB-254
by dwheeler on 5/19/24, 12:53 AM
This is cool. I was happy see the prominent reference to my work on diverse double-compiling (DDC), which counters the trusting trust attack. If you're interested in DDC, check out
https://dwheeler.com/trusting-trustby musicale on 5/18/24, 8:50 PM
Rebuilding the system on itself and validating that the bitfile is the same is nice.
I'm amazed that it could be rebuilt in 512MB (and in "only" 4.5 hours on a ~65MHz CPU.) My experience with yosys (and vivado etc.) is that they seem to want many gigabytes.
> A 65MHz Linux-capable CPU inevitably invokes memories of mid- 1990s Intel 486 and first-generation Pentium processors.
50-65MHz* and 512MB seems comparable to an early 1990s Unix workstation. Arguably better on the RAM side.
*4.5 Mflops on double precision linpack for lowRISC/50MHz
by mntmn on 5/18/24, 10:33 PM
I did something similar in 2022, also with LiteX, but not self-hosting because it used a Kintex-7 FPGA which at least at the time required Vivado for the actual place-and-route. It did result in a open gateware laptop running Linux and Xorg, though (thanks to Linux-on-LiteX-VexRiscV):
https://mntre.com/media/reform_md/2022-09-29-rkx7-showcase.h...by rramadass on 5/19/24, 4:32 PM
by dmarinus on 5/18/24, 7:05 PM
by robinsonb5 on 5/18/24, 7:36 PM
This is very, very cool. I've been thinking for a while that a fully self-hosted RISC-V machine is sorely needed. The biggest limiting factor at the moment actually seems to be finding an FPGA board which has enough RAM on board. The target board here has 512 megabytes, I think - but FPGA toolchains are much happier with several gigabytes to play with.
by bitcompost on 5/18/24, 7:36 PM
While I love the idea of self-hosting HW and SW, I can't even imagine the pain of building stuff like GCC on 60Mhz CPU. Not to mention the Rocket CPU is written in Scala. I recently stopped using Gentoo on RockPro64, because the compile times were unbearable, and that's a system orders of magnitude faster than what they want to use.
by Guestmodinfo on 5/18/24, 6:46 PM
Wow, I am starting to read all your reading material that you have put up.
It's really what I have always wanted to do and it's more than that because you are using FPGAs. I am from India and I want to help you in any way I can because I also have wanted to go on this journey.
It's just amazing I wish you all the blessings.
by indigodaddy on 5/18/24, 11:26 PM
by rurban on 5/19/24, 5:17 AM
(2020)
by ranger_danger on 5/18/24, 10:24 PM
There's nothing free about FPGAs...