Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Split nextpnr.h to allow for linear inclusion. | Keith Rothman | 2021-03-15 | 1 | -4/+11 |
| | | | | | | | | | | | | | | | | | | | "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> | ||||
* | Replace DelayInfo with DelayPair/DelayQuad | gatecat | 2021-02-19 | 1 | -15/+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 | 1 | -1/+0 |
| | | | | | | | | | | | | | | | | | 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: Python bindings and stub GUI | gatecat | 2021-02-12 | 1 | -0/+1 |
| | | | | Signed-off-by: gatecat <gatecat@ds0.me> | ||||
* | machxo2: Use snake_case for non-ArchAPI functions | gatecat | 2021-02-12 | 1 | -26/+26 |
| | | | | Signed-off-by: gatecat <gatecat@ds0.me> | ||||
* | machxo2: Use IdStringLists in earnest | gatecat | 2021-02-12 | 1 | -10/+14 |
| | | | | Signed-off-by: gatecat <gatecat@ds0.me> | ||||
* | machxo2: Update with Arch API changes | gatecat | 2021-02-12 | 1 | -364/+62 |
| | | | | Signed-off-by: gatecat <gatecat@ds0.me> | ||||
* | machxo2: clang format. | William D. Jones | 2021-02-12 | 1 | -1/+2 |
| | |||||
* | machxo2: Checkpoint commit for slice bitstream generation. | William D. Jones | 2021-02-12 | 1 | -0/+33 |
| | |||||
* | machxo2: Write out pips to bitstream. | William D. Jones | 2021-02-12 | 1 | -0/+15 |
| | |||||
* | machxo2: Add/fix copyright banners. | William D. Jones | 2021-02-12 | 1 | -1/+2 |
| | |||||
* | machxo2: Tweak A-star parameters for acceptable performance. | William D. Jones | 2021-02-12 | 1 | -1/+8 |
| | |||||
* | machxo2: Fix getWireName. | William D. Jones | 2021-02-12 | 1 | -1/+1 |
| | |||||
* | machxo2: Fix typos where absolute positions were treated as relative. | William D. Jones | 2021-02-12 | 1 | -6/+6 |
| | |||||
* | machxo2: Finish implementing Wire API functions. nextpnr segfaults on ↵ | William D. Jones | 2021-02-12 | 1 | -4/+43 |
| | | | | example with constraints. | ||||
* | machxo2: Finish implementing Pip API functions. | William D. Jones | 2021-02-12 | 1 | -9/+67 |
| | |||||
* | machxo2: Implement 4 more Wire/Pip API functions. | William D. Jones | 2021-02-12 | 1 | -8/+94 |
| | |||||
* | machxo2: Add stub getAttrs API functions. | William D. Jones | 2021-02-12 | 1 | -5/+21 |
| | |||||
* | machxo2: Implement getByName/getName for Wires and Pips. | William D. Jones | 2021-02-12 | 1 | -4/+33 |
| | |||||
* | machxo2: Detect LOC attributes during packing to implement rudimentary user ↵ | William D. Jones | 2021-02-12 | 1 | -0/+3 |
| | | | | constraints. | ||||
* | machxo2: clang format. | William D. Jones | 2021-02-12 | 1 | -6/+3 |
| | |||||
* | machxo2: Import remaining iterators from ECP5. | William D. Jones | 2021-02-12 | 1 | -0/+154 |
| | |||||
* | machxo2: Implement WireId/PipId, complete Bel part of API. | William D. Jones | 2021-02-12 | 1 | -0/+10 |
| | |||||
* | machxo2: Implement all of Bel API except getBelPinWire. | William D. Jones | 2021-02-12 | 1 | -3/+9 |
| | |||||
* | machxo2: Implement bel_to_cell and API functions using it. | William D. Jones | 2021-02-12 | 1 | -5/+47 |
| | |||||
* | machxo2: Implement 2 Bel API functions. | William D. Jones | 2021-02-12 | 1 | -1/+8 |
| | |||||
* | machxo2: Implement General Methods. | William D. Jones | 2021-02-12 | 1 | -5/+9 |
| | |||||
* | machxo2: Implement getBelLocation to stop std::out_of_range in place phase. | William D. Jones | 2021-02-12 | 1 | -1/+10 |
| | |||||
* | machxo2: Convert uint_t to int_t in packed structs. | William D. Jones | 2021-02-12 | 1 | -22/+22 |
| | |||||
* | machxo2: Implement functions to get device utilization (throws ↵ | William D. Jones | 2021-02-12 | 1 | -3/+82 |
| | | | | std::out_of_range during place phase). | ||||
* | machxo2: Initialize Arch context with device type and package. | William D. Jones | 2021-02-12 | 1 | -2/+3 |
| | |||||
* | machxo2: Add binary blob struct definitions. | William D. Jones | 2021-02-12 | 1 | -1/+99 |
| | |||||
* | machxo2: Stub out arch API functions and members. | William D. Jones | 2021-02-12 | 1 | -26/+13 |
| | |||||
* | machxo2: Start creating MachXO2CommandHandler. | William D. Jones | 2021-02-12 | 1 | -5/+49 |
| | |||||
* | machxo2: Remove generic API functions from Arch. | William D. Jones | 2021-02-12 | 1 | -32/+0 |
| | |||||
* | Create machxo2 backend (renamed from generic). | gatecat | 2021-02-12 | 1 | -0/+302 |
Signed-off-by: William D. Jones <thor0505@comcast.net> |