lowRISC / sonata-system

A full micro-controller system utilizing the CHERIoT Ibex core, part of the Sunburst project funded by UKRI
Apache License 2.0
29 stars 17 forks source link

Add I/O timing cons, fix speed-grade, faster JTAG #187

Closed elliotb-lowrisc closed 1 month ago

elliotb-lowrisc commented 2 months ago

The biggest change (by volume) is by far the I/O timing constraints. These should improve timing on some synchronous interfaces, such as the User JTAG, and improve reliability. Further changes/refinements are likely. Note that internal timing constraints have yet to be tackled.

Also note that build times may increase slightly due the there being more for the tool to consider and optimise timing-wise.

elliotb-lowrisc commented 2 months ago

This will probably need reworking to account for pinmux once that is merged

elliotb-lowrisc commented 2 months ago

Forgot multicycle constraint for Ethernet MAC SPI

elliotb-lowrisc commented 2 months ago

Remove unused clock, add SPI clocks for R-Pi, loosen SPI input constraints a touch to ease implementation

elliotb-lowrisc commented 1 month ago

Rebased to include pinmux. Reworked clock creation/renaming to use clock net names instead of PLL pins.

elliotb-lowrisc commented 1 month ago

Realised the method of finding the PLL pins was faulty, so changed it. Also rebased

elliotb-lowrisc commented 1 month ago

Missing line-wrapping \'s

elliotb-lowrisc commented 1 month ago

Relax some margins to avoid internal setup timing failure on clk_sys