forked from sinara-hw/assembly
Compare commits
No commits in common. "4783edd9d6ba3b5be0ad1697c7de4adee31e2495" and "a1fe673f79d8a45d74a44ea2bae793481dc35797" have entirely different histories.
4783edd9d6
...
a1fe673f79
10
README.md
10
README.md
@ -33,9 +33,7 @@ Tips for adding hardware instructions:
|
|||||||
for images with transparent background)
|
for images with transparent background)
|
||||||
3. Add link to the new chapter to the `src/SUMMARY.md`
|
3. Add link to the new chapter to the `src/SUMMARY.md`
|
||||||
4. Do not forget to tell about all hidden/non-obvious obstacles and pitfalls
|
4. Do not forget to tell about all hidden/non-obvious obstacles and pitfalls
|
||||||
5. Avoid using uncommon, complex, or hard-to-understand words, phrases, or grammar (e.g., ❌constituent -> ✔️component).
|
5. Add testing steps, even the "obvious" ones
|
||||||
Keep in mind that these guides may be used by people with different backgrounds and levels of English proficiency.
|
6. Add JSON sample if needed
|
||||||
6. Add testing steps, even the "obvious" ones
|
7. Add hardware setup (e.g. pins, switches) steps if needed
|
||||||
7. Add JSON sample if needed
|
8. View changed and added pages with `mdbook build` (see building instructions above)
|
||||||
8. Add hardware setup (e.g. pins, switches) steps if needed
|
|
||||||
9. View changed and added pages with `mdbook build` (see building instructions above)
|
|
||||||
|
Binary file not shown.
@ -15,57 +15,6 @@
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
## Getting the firmware
|
|
||||||
|
|
||||||
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)
|
|
||||||
|
|
||||||
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.
|
|
||||||
|
|
||||||
You will need:
|
|
||||||
- Xilinx ISE 14.7 installed on your system (this guide is assuming ``/opt/Xilinx`` path),
|
|
||||||
- an environment with Migen.
|
|
||||||
|
|
||||||
One way to do it is to create an FHS environment, like ARTIQ does for Vivado, within ARTIQ's ``flake.nix`` (to leverage Migen already being there), by adding these lines:
|
|
||||||
|
|
||||||
```
|
|
||||||
iseEnv = pkgs.buildFHSEnv {
|
|
||||||
name = "ise-env";
|
|
||||||
targetPkgs = vivadoDeps;
|
|
||||||
};
|
|
||||||
|
|
||||||
ise = pkgs.buildFHSEnv {
|
|
||||||
name = "ise";
|
|
||||||
targetPkgs = vivadoDeps;
|
|
||||||
profile = "set -e; source /opt/Xilinx/14.7/ISE_DS/settings64.sh";
|
|
||||||
runScript = "ise";
|
|
||||||
};
|
|
||||||
```
|
|
||||||
|
|
||||||
Add them below ``vivadoEnv``. Then add ``iseEnv`` and ``ise`` to the dev shell's build inputs. Call ``nix develop`` on that.
|
|
||||||
|
|
||||||
Then you can build Mirny:
|
|
||||||
|
|
||||||
```shell
|
|
||||||
nix develop
|
|
||||||
ise-env
|
|
||||||
cd ../mirny # or wherever your source is at
|
|
||||||
source /opt/Xilinx/14.7/ISE_DS/settings64.sh
|
|
||||||
python mirny_impl.py
|
|
||||||
```
|
|
||||||
|
|
||||||
### 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
|
|
||||||
nix-shell -p xc3sprog
|
|
||||||
xc3sprog -c jtaghs2 -m /opt/Xilinx/14.7/ISE_DS/ISE/xbr/data -v build/mirny.jed
|
|
||||||
```
|
|
||||||
|
|
||||||
## Testing
|
## Testing
|
||||||
|
|
||||||
### Without Almazny
|
### Without Almazny
|
||||||
@ -100,7 +49,7 @@ After running `artiq_sinara_test`:
|
|||||||
|
|
||||||
![](../img/mirny_gqrx.png)
|
![](../img/mirny_gqrx.png)
|
||||||
|
|
||||||
### With Almazny (ARTIQ 7)
|
### With Almazny
|
||||||
|
|
||||||
At first, `artiq_sinara_test` will prompt you for testing Mirnies as the would be without Almazny.
|
At first, `artiq_sinara_test` will prompt you for testing Mirnies as the would be without Almazny.
|
||||||
After that, it will prompt you with testing the Almazny:
|
After that, it will prompt you with testing the Almazny:
|
||||||
@ -148,6 +97,4 @@ You should also see differences in various modes, but that may require disabling
|
|||||||
|
|
||||||
### Tips
|
### Tips
|
||||||
|
|
||||||
~~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).
|
||||||
|
|
||||||
For Almazny v1.2+ support, CPLD firmware 0.3.1+ (with fixes) must be flashed onto Mirny.
|
|
Loading…
Reference in New Issue
Block a user