mirny: add build and flashing instructions #17

Merged
esavkin merged 1 commits from mwojcik/assembly:mirny-improvements into master 2024-08-17 17:37:24 +08:00
2 changed files with 11 additions and 3 deletions

Binary file not shown.

View File

@ -15,9 +15,15 @@
} }
``` ```
## Building firmware ## Getting the firmware
Once you get your hands on the firmware, you will need to work around few shortcomings of Nix, mainly not being able to run dynamically linked executables. Here is [Mirny 0.3.1 firmware](../extra/mirny/mirny-0.3.1.zip). It contains a single ``.jed`` file that can be flashed following [flashing instructions](#flashing).
### Building firmware (optional)

Feels like it should be H3 instead of H2

Feels like it should be H3 instead of H2
Outdated
Review

Just add the release to hydra like the others https://nixbld.m-labs.hk/eval/6728

Just add the release to hydra like the others https://nixbld.m-labs.hk/eval/6728
morgan marked this conversation as resolved Outdated

add an install path example like "/opt/Xilinx", since by default Xilinx installer use "/tools/Xilinx" iirc

add an install path example like "/opt/Xilinx", since by default Xilinx installer use "/tools/Xilinx" iirc
However, if you need to make chances or build from source, follow these instructions.
Once you get your hands on the firmware source code, you will need to work around few shortcomings of Nix, mainly not being able to run dynamically linked executables.
morgan marked this conversation as resolved Outdated

There are no mention of the file we need to add the lines to, you can add it here e.g. "adding these line to flake.nix" or after the code block

There are no mention of the file we need to add the lines to, you can add it here e.g. "adding these line to flake.nix" or after the code block
You will need: You will need:
Review

This better be in Getting the firmware

This better be in `Getting the firmware`
Review

There's some overlap (ISE) but not all (no Migen, but xc3sprog). So I just repeated that.

There's some overlap (ISE) but not all (no Migen, but xc3sprog). So I just repeated that.
- Xilinx ISE 14.7 installed on your system (this guide is assuming ``/opt/Xilinx`` path), - Xilinx ISE 14.7 installed on your system (this guide is assuming ``/opt/Xilinx`` path),
@ -53,6 +59,8 @@ python mirny_impl.py
### Flashing ### Flashing
For flashing, you will need Xilinx ISE 14.7 installed on your system (here assuming ``/opt/Xilinx`` path), and ``xc3sprog`` with the appropriate HS2 JTAG adapter.
```shell ```shell
nix-shell -p xc3sprog nix-shell -p xc3sprog
xc3sprog -c jtaghs2 -m /opt/Xilinx/14.7/ISE_DS/ISE/xbr/data -v build/mirny.jed xc3sprog -c jtaghs2 -m /opt/Xilinx/14.7/ISE_DS/ISE/xbr/data -v build/mirny.jed
@ -142,4 +150,4 @@ You should also see differences in various modes, but that may require disabling
~~Mirnies often fail `ValueError: MUXOUT not high`, in that case restart the tests or reboot the board(s).~~ - fixed in [9569cfb](https://github.com/m-labs/artiq/commit/9569cfb26329c0acdc1705d3256d2506b7bccce5) ~~Mirnies often fail `ValueError: MUXOUT not high`, in that case restart the tests or reboot the board(s).~~ - fixed in [9569cfb](https://github.com/m-labs/artiq/commit/9569cfb26329c0acdc1705d3256d2506b7bccce5)
For Almazny v1.2+ support, CPLD firmware above 0.3.0 (with fixes) must be flashed onto Mirny. For Almazny v1.2+ support, CPLD firmware 0.3.1+ (with fixes) must be flashed onto Mirny.