You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+35Lines changed: 35 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -5,6 +5,41 @@
5
5
6
6
The aim of this project is to make MicroPython run on FPGAs using the [LiteX](https://github.com/enjoy-digital/litex) & [Migen+MiSoC](http://m-labs.hk/gateware.html) technologies. This allows you to do full stack development (FPGA gateware & soft CPU firmware) in Python!
7
7
8
+
## Gateware
9
+
10
+
`Gateware` is the name we use for the hardware code that is loaded onto the FPGA that MicroPython runs on.
11
+
12
+
For MicroPython development we use a slightly modified version of the [`HDMI2USB-litex-firmware`](https://github.com/timvideos/HDMI2USB-litex-firmware) from the [HDMI2USB project](https://hdmi2usb.tv).
(x) Download prebuilt gateware + headers using `get-gateware.sh`
22
+
(x) Compile micropython
23
+
(x) Build flash image
24
+
25
+
26
+
### Developing in HDMI2USB LiteX environment
27
+
28
+
(1) Follow [getting started instructions](https://github.com/upy-fpga/upy-fpga-litex-gateware/blob/master/getting-started.md) to setup gateware environment.
29
+
30
+
(2) Enter the gateware environment with ./scripts/enter-env.sh
31
+
32
+
(3) Set PLATFORM and TARGET correctly - IE "export PLATFORM=mimasv2" if using the MimasV2
33
+
34
+
(4) Run ./scripts/build-micropython.sh
35
+
36
+
This will give you an image for your target at `./build/$PLATFORM_$TARGET_lm32/micropython.bin` which you can then flash to your board.
37
+
38
+
#### Running MicroPython inside QEmu environment
39
+
40
+
The HDMI2USB LiteX environment provides some limited QEmu emulation of the FPGA gateware. This means you can test your code without needing hardware.
0 commit comments