1
0
mirror of https://github.com/antonblanchard/microwatt.git synced 2026-02-06 08:15:03 +00:00
Commit Graph

9 Commits

Author SHA1 Message Date
Anton Blanchard
270d7b1b9a Cmod A7-35 support
This adds support for the Digilane Cmod A7-35.

I had to use the MMCM because the clock (12 MHz) is below the PLL
minimum of 19 MHz.

Signed-off-by: Anton Blanchard <anton@linux.ibm.com>
2019-09-08 16:36:50 +10:00
Anton Blanchard
03fd06deaf Rework SOC reset
The old reset code was overly complicated and never worked properly.
Replace it with a simpler sequence that uses a couple of shift registers
to assert resets:

- Wait a number of external clock cycles before removing reset from
  the PLL.

- After the PLL locks and the external reset button isn't pressed,
  wait a number of PLL clock cycles before removing reset from the SOC.

Signed-off-by: Anton Blanchard <anton@linux.ibm.com>
2019-09-08 07:40:19 +10:00
Anton Blanchard
5e140298a5 Rework decode2
The decode2 stage was spaghetti code and needed cleaning up.
Create a series of functions to pull fields from a ppc instruction
and also a series of helpers to extract values for the execution
units.

As suggested by Paul, we should pass all signals to the execution
units and only set the valid signal conditionally, which should
use less resources.

Signed-off-by: Anton Blanchard <anton@linux.ibm.com>
2019-09-03 16:47:54 +10:00
Anton Blanchard
5379b805ec Arty A7 reset pin is C2
Use C2 for reset, and fix up a few whitespace issues.

Signed-off-by: Anton Blanchard <anton@linux.ibm.com>
2019-08-30 08:39:44 +10:00
riktw
4ebd6fc1f7 Added support for building for Arty A7 boards 2019-08-29 22:37:48 +02:00
Olof Kindgren
12327034d6 Add and use plle2 primitive for nexys boards 2019-08-26 13:44:50 +02:00
Olof Kindgren
b9bf19f912 Added synthesis target
The synth target can be used to analyze the core after synthesis
without running P&R. Currently, the only edalize backends that
support synthesis without P&R are vivado and icestorm, and icestorm
needs yosys built with verific support to parse vhdl.

To run synthesis only for a part, run

fusesoc run --target=synth --tool=vivado microwatt --part=<part>

where part is a valid Xilinx part such as xc7a100tcsg324-1
2019-08-23 14:20:20 +02:00
Olof Kindgren
250d09ed2d Add Nexys Video support 2019-08-23 14:09:06 +02:00
Olof Kindgren
5e56b14125 Add FuseSoC core description file with Nexys A7 support 2019-08-23 13:32:05 +02:00