Skip to content

Commit ace905b

Browse files
committed
Starting to add some instructions.
1 parent 44d92c8 commit ace905b

File tree

1 file changed

+35
-0
lines changed

1 file changed

+35
-0
lines changed

README.md

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,41 @@
55

66
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!
77

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).
13+
14+
## Getting Started
15+
16+
### Developing in MicroPython environment
17+
18+
(x) get lm32 toolchain
19+
(x) git clone https://github.com/upy-fpga/micropython.git
20+
(x) cd litex
21+
(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.
41+
42+
843
## More Information
944

1045
* [Wiki](https://github.com/upy-fpga/issues-wiki/wiki)

0 commit comments

Comments
 (0)