Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Switch to potentially-sparse net users array | gatecat | 2022-02-27 | 1 | -1/+1 |
| | | | | | | | | This uses a new data structure for net.users that allows gaps, so removing a port from a net is no longer an O(n) operation on the number of users the net has. Signed-off-by: gatecat <gatecat@ds0.me> | ||||
* | refactor: New member functions to replace design_utils | gatecat | 2022-02-18 | 2 | -10/+10 |
| | | | | Signed-off-by: gatecat <gatecat@ds0.me> | ||||
* | refactor: Use constids instead of id("..") | gatecat | 2022-02-16 | 7 | -64/+81 |
| | | | | Signed-off-by: gatecat <gatecat@ds0.me> | ||||
* | refactor: Use cell member functions to add ports | gatecat | 2022-02-16 | 1 | -72/+59 |
| | | | | Signed-off-by: gatecat <gatecat@ds0.me> | ||||
* | refactor: New NetInfo and CellInfo constructors | gatecat | 2022-02-16 | 2 | -16/+9 |
| | |||||
* | archapi: Use arbitrary rather than actual placement in predictDelay | gatecat | 2021-12-19 | 2 | -7/+8 |
| | | | | | | | | | | | | This makes predictDelay be based on an arbitrary belpin pair rather than a arc of a net based on cell placement. This way 'what-if' decisions can be evaluated without actually changing placement; potentially useful for parallel placement. A new helper predictArcDelay behaves like the old predictDelay to minimise the impact on existing passes; only arches need be updated. Signed-off-by: gatecat <gatecat@ds0.me> | ||||
* | clangformat. | William D. Jones | 2021-12-16 | 2 | -9/+12 |
| | |||||
* | machxo2: Remove no-iobs option. It was always enabled and should remain an ↵ | William D. Jones | 2021-12-16 | 6 | -8/+5 |
| | | | | implementation detail. | ||||
* | machxo2: Remove -noiopad option when generating miters for post-pnr ↵ | William D. Jones | 2021-12-16 | 1 | -1/+2 |
| | | | | verification. | ||||
* | machxo2: Add packing logic to forbid designs lacking FACADE_IO top-level ports. | William D. Jones | 2021-12-16 | 1 | -0/+46 |
| | |||||
* | machxo2: Correct which PIO wires get adjusted when writing text bitstream. ↵ | William D. Jones | 2021-12-16 | 1 | -9/+26 |
| | | | | Add verbose logging for adjustments. | ||||
* | machxo2: Fix packing for directly-connected DFFs. | William D. Jones | 2021-07-01 | 3 | -9/+28 |
| | |||||
* | machxo2: Add VHDL primitives, demo, and script. | William D. Jones | 2021-07-01 | 4 | -0/+81 |
| | |||||
* | machxo2: Add a special case for pips whose config bits are in multiple | William D. Jones | 2021-07-01 | 1 | -0/+12 |
| | | | | tiles. | ||||
* | machxo2: Hardcode a rule for emitting U_/D_ or G_ prefixes in ASCII output. | William D. Jones | 2021-07-01 | 1 | -2/+17 |
| | |||||
* | machxo2: Set Pip and Wire delays to reasonable fake values mirroring | William D. Jones | 2021-07-01 | 1 | -2/+2 |
| | | | | estimateDelay. | ||||
* | Fixing old emails and names in copyrights | gatecat | 2021-06-12 | 13 | -15/+15 |
| | | | | Signed-off-by: gatecat <gatecat@ds0.me> | ||||
* | Remove redundant code after hashlib move | gatecat | 2021-06-02 | 1 | -43/+0 |
| | | | | Signed-off-by: gatecat <gatecat@ds0.me> | ||||
* | Use hashlib in most remaining code | gatecat | 2021-06-02 | 1 | -2/+2 |
| | | | | Signed-off-by: gatecat <gatecat@ds0.me> | ||||
* | Using hashlib in arches | gatecat | 2021-06-02 | 4 | -9/+8 |
| | | | | Signed-off-by: gatecat <gatecat@ds0.me> | ||||
* | Use hashlib for core netlist structures | gatecat | 2021-06-02 | 3 | -17/+19 |
| | | | | Signed-off-by: gatecat <gatecat@ds0.me> | ||||
* | Add hash() member functions | gatecat | 2021-06-02 | 1 | -0/+5 |
| | | | | Signed-off-by: gatecat <gatecat@ds0.me> | ||||
* | Add stub cluster API impl for remaining arches | gatecat | 2021-05-06 | 1 | -1/+3 |
| | | | | Signed-off-by: gatecat <gatecat@ds0.me> | ||||
* | Add same fix as in issue #373 | Miodrag Milanovic | 2021-04-08 | 1 | -0/+4 |
| | |||||
* | Split nextpnr.h to allow for linear inclusion. | Keith Rothman | 2021-03-15 | 2 | -7/+18 |
| | | | | | | | | | | | | | | | | | | | "nextpnr.h" is no longer the god header. Important improvements: - Functions in log.h can be used without including BaseCtx/Arch/Context. This means that log_X functions can be called without included "nextpnr.h" - NPNR_ASSERT can be used without including "nextpnr.h" by including "nextpnr_assertions.h". This allows NPNR_ASSERT to be used safely in any header file. - Types defined in "archdefs.h" are now available without including BaseCtx/Arch/Context. This means that utility classes that will be used inside of BaseCtx/Arch/Context can be defined safely in a self-contained header. Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com> | ||||
* | Fix compiler warnings introduced by -Wextra | gatecat | 2021-02-25 | 3 | -15/+1 |
| | | | | Signed-off-by: gatecat <gatecat@ds0.me> | ||||
* | Replace DelayInfo with DelayPair/DelayQuad | gatecat | 2021-02-19 | 2 | -36/+3 |
| | | | | | | | | | | | | | | | | | This replaces the arch-specific DelayInfo structure with new DelayPair (min/max only) and DelayQuad (min/max for both rise and fall) structures that form part of common code. This further reduces the amount of arch-specific code; and also provides useful data structures for timing analysis which will need to delay with pairs/quads of delays as it is improved. While there may be a small performance cost to arches that didn't separate the rise/fall cases (arches that aren't currently separating the min/max cases just need to be fixed...) in DelayInfo, my expectation is that inlining will mean this doesn't make much difference. Signed-off-by: gatecat <gatecat@ds0.me> | ||||
* | Remove isValidBelForCell | gatecat | 2021-02-16 | 3 | -12/+1 |
| | | | | | | | | | | | | | | | | | This Arch API dates from when we were first working out how to implement placement validity checking, and in practice is little used by the core parts of placer1/HeAP and the Arch implementation involves a lot of duplication with isBelLocationValid. In the short term; placement validity checking is better served by the combination of checkBelAvail and isValidBelForCellType before placement; followed by isBelLocationValid after placement (potentially after moving/swapping multiple cells). Longer term, removing this API makes things a bit cleaner for a new validity checking API. Signed-off-by: gatecat <gatecat@ds0.me> | ||||
* | machxo2: Misc tidying up | gatecat | 2021-02-12 | 2 | -8/+4 |
| | | | | Signed-off-by: gatecat <gatecat@ds0.me> | ||||
* | machxo2: Python bindings and stub GUI | gatecat | 2021-02-12 | 5 | -6/+188 |
| | | | | Signed-off-by: gatecat <gatecat@ds0.me> | ||||
* | machxo2: Use snake_case for non-ArchAPI functions | gatecat | 2021-02-12 | 4 | -63/+63 |
| | | | | Signed-off-by: gatecat <gatecat@ds0.me> | ||||
* | machxo2: Use IdStringLists in earnest | gatecat | 2021-02-12 | 2 | -76/+70 |
| | | | | Signed-off-by: gatecat <gatecat@ds0.me> | ||||
* | machxo2: Update with Arch API changes | gatecat | 2021-02-12 | 7 | -464/+115 |
| | | | | Signed-off-by: gatecat <gatecat@ds0.me> | ||||
* | machxo2: Prepare README.md for first PR. | William D. Jones | 2021-02-12 | 1 | -4/+36 |
| | |||||
* | machxo2: Add prefix parameter to simtest.sh. Remove show command from | William D. Jones | 2021-02-12 | 3 | -40/+43 |
| | | | | simtest.sh. Update README.md. | ||||
* | machxo2: Add prefix parameter to simple.sh. Update README.md. | William D. Jones | 2021-02-12 | 2 | -14/+14 |
| | |||||
* | machxo2: Fill in more about mitertest.sh in README.md and clean up a bit. | William D. Jones | 2021-02-12 | 1 | -4/+27 |
| | |||||
* | machxo2: Add two new examples: blinky_ext and aforementioned UART. | William D. Jones | 2021-02-12 | 3 | -0/+238 |
| | |||||
* | machxo2: auto-top does not work for smt miter either. | William D. Jones | 2021-02-12 | 1 | -1/+1 |
| | |||||
* | machxo2: Fix unhelpful comment in mitertest.sh. | William D. Jones | 2021-02-12 | 1 | -1/+0 |
| | |||||
* | machxo2: Verilog examples using OSCH cannot be simulated in mitertest.sh. ↵ | William D. Jones | 2021-02-12 | 1 | -3/+7 |
| | | | | Remove show from mitertest.sh. | ||||
* | machxo2: Add prefix parameter to mitertest.sh. All Verilog files top modules ↵ | William D. Jones | 2021-02-12 | 3 | -37/+37 |
| | | | | named "top". | ||||
* | machxo2: Add prefix paramter to demo.sh. | William D. Jones | 2021-02-12 | 4 | -22/+37 |
| | |||||
* | Add demo with RGB LED | mtnrbq | 2021-02-12 | 2 | -0/+43 |
| | |||||
* | machxo2: Fix packing when FF is driven by a constant; UART test core working ↵ | William D. Jones | 2021-02-12 | 2 | -1/+3 |
| | | | | on silicon, fails post-synth sim. | ||||
* | machxo2: Add packing logic to handle FFs fed with constant value; UART test ↵ | William D. Jones | 2021-02-12 | 3 | -5/+39 |
| | | | | core routes. | ||||
* | machxo2: Add additional packing phase to pack remaining FFs. | William D. Jones | 2021-02-12 | 1 | -0/+38 |
| | |||||
* | machxo2: Don't write out config bits for cells without location info. | William D. Jones | 2021-02-12 | 1 | -1/+2 |
| | |||||
* | machxo2: Special-case left and right I/O wire names in ASCII generation. | William D. Jones | 2021-02-12 | 1 | -1/+35 |
| | |||||
* | machxo2: Add quickstart README.md. | William D. Jones | 2021-02-12 | 1 | -0/+73 |
| |