hex-five / multizone-linux

MultiZone® Security Enclave for Linux
https://hex-five.com/multizone-enclave-linux/
Other
18 stars 12 forks source link

Multizone-linux for Arty A7 #4

Closed guardina closed 6 months ago

guardina commented 9 months ago

Hello, I was checking out the repository to see how to use Linux and Multizone on the same board, and I noticed that it only supports the HiFive Unleashed board, which is now discontinued. I am currently working with the Arty A7 100T board from Digilent, which also supports MultiZone. What modification should I make, such that the code provided could work on my board?

Hex-Five-Labs commented 9 months ago

What Linux capable RISC-V soft core do you intend to use with the Digilent ARTY A7 100T?

guardina commented 9 months ago

So far I have only uploaded the X300 bitstream to the FPGA following the instruction in the multizone-fpga repository (https://github.com/hex-five/multizone-fpga), in order to have Multizone running on the board. I don't have much experience with FPGA, so I am not sure whether this counts as soft core for the board or if it refers to something else

Hex-Five-Labs commented 9 months ago

@guardina:

more info about the Digilent ARTY7 fpga board https://digilent.com/reference/programmable-logic/arty-a7/start

guardina commented 6 months ago

Hello again, Thanks a lot for the material provided! Nonetheless, even after reading it, I still don't see clearly the solution to my problem.

So far, I uploaded the X300 RISC-V SoC on the board using Vivado, following the steps explained in the multizone-linux repository. The Arty A7 fpga board also states that "the X300 is a soft-core RISC-V processor" compatible with the board. How can I know it is Linux compatible in the first place?

I then proceeded to load the MultiZone-security sdk on the board, following the instructions from this repository: https://github.com/hex-five/multizone-sdk.

Now, from my understanding it is possible to run MultiZone-security and Linux alongside, following the instructions specified in this repository, on a SiFive's Unleashed board with the U540 SoC. What I thought was that it was enough to add X300 folder in the bsp folder and adapt the files inside to make it work on the Arty A7 board specifically for the X300 SoC.

First question: The Arty A7 board does not have a slot for a micro SD card, would it still be possible to perform the same instructions in some other way or would it be impossible on the Arty A7? Second question: checking out online for RISCV soft-cores, I found some results like Rocket chip, PicoRV32, etc. Do I need one of them to run Linux on the board? I didn't see any reference to any of them in the repository.

Thank you so much for you patience

Hex-Five-Labs commented 6 months ago

The Multizone SDK for Arty A7 does not support Linux.