Sébastien Bourdeauducq
2014-05-15 08:28:44 UTC
Hi everyone,
MiSoC (http://m-labs.hk/gateware.html) now supports the mor1kx CPU in
addition to the original LM32.
You can choose mor1kx at compile time by adding "-Ot cpu_type or1k" on
the make.py command line, e.g.
./make.py -Ot cpu_type or1k all
./make.py -Ot cpu_type or1k -p m1 -s FramebufferSoC all
...and that's all, make.py also configures the software build
environment to use the selected CPU.
For a demonstration of the functionalities of MiSoC on a simple design,
have a look at this example:
https://github.com/m-labs/blinkie
(You can use mor1kx with blinkie, just as well as LM32, by using the
same command-line option)
All that SoC targets which support or1k need to do is pass the cpu_type
argument to the GenSoC constructor. The recommended way to do it is to
pass any supplementary keyword arguments to the parent SoC classes using
**kwargs.
NB: BIOS execute-in-place from the flash on the Papilio Pro does not
work with or1k for some reason - I suspect it is reset timing related,
as it also breaks on LM32 when loading the bitstream to SRAM via
xc3sprog. It works fine on Mixxeo, or when using IntegratedBIOS.
Sébastien
MiSoC (http://m-labs.hk/gateware.html) now supports the mor1kx CPU in
addition to the original LM32.
You can choose mor1kx at compile time by adding "-Ot cpu_type or1k" on
the make.py command line, e.g.
./make.py -Ot cpu_type or1k all
./make.py -Ot cpu_type or1k -p m1 -s FramebufferSoC all
...and that's all, make.py also configures the software build
environment to use the selected CPU.
For a demonstration of the functionalities of MiSoC on a simple design,
have a look at this example:
https://github.com/m-labs/blinkie
(You can use mor1kx with blinkie, just as well as LM32, by using the
same command-line option)
All that SoC targets which support or1k need to do is pass the cpu_type
argument to the GenSoC constructor. The recommended way to do it is to
pass any supplementary keyword arguments to the parent SoC classes using
**kwargs.
NB: BIOS execute-in-place from the flash on the Papilio Pro does not
work with or1k for some reason - I suspect it is reset timing related,
as it also breaks on LM32 when loading the bitstream to SRAM via
xc3sprog. It works fine on Mixxeo, or when using IntegratedBIOS.
Sébastien