aboutsummaryrefslogtreecommitdiffstats
path: root/nexus/arch.cc
Commit message (Collapse)AuthorAgeFilesLines
* nexus: Switch to BaseArchD. Shah2021-02-051-14/+2
| | | | Signed-off-by: D. Shah <dave@ds0.me>
* Mark IdString and IdStringList single argument constructors explicit.Keith Rothman2021-02-041-3/+3
| | | | | | | | | Single argument constructors will silently convert to that type. This is typically not the right thing to do. For example, the nexus and ice40 arch_pybindings.h files were incorrectly parsing bel name strings, etc. Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
* nexus: Implement IdStringList for all arch object namesD. Shah2021-02-021-36/+34
| | | | Signed-off-by: D. Shah <dave@ds0.me>
* Run "make clangformat".Keith Rothman2021-02-021-2/+2
| | | | Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
* Rename Partition -> BelBucket.Keith Rothman2021-02-021-3/+3
| | | | Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
* Add Partition APIs to ice40, nexus, gowin archs.Keith Rothman2021-02-021-2/+15
| | | | Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
* nexus: Switch from RelPtr to RelSliceD. Shah2021-01-271-37/+31
| | | | | | | | | | This replaces RelPtrs and a separate length field with a Rust-style slice containing both a pointer and a length; with bounds checking always enforced. Thus iterating over these structures is both cleaner and safer. Signed-off-by: D. Shah <dave@ds0.me>
* nexus: Add basic LRAM support (no init)David Shah2020-12-021-0/+11
| | | | Signed-off-by: David Shah <dave@ds0.me>
* nexus: Fix db integrity checkDavid Shah2020-11-301-17/+6
| | | | Signed-off-by: David Shah <dave@ds0.me>
* nexus: Add post-place LUTFF optimisationDavid Shah2020-11-301-5/+23
| | | | Signed-off-by: David Shah <dave@ds0.me>
* nexus: Preliminary integration of DSP timing dataDavid Shah2020-11-301-0/+49
| | | | Signed-off-by: David Shah <dave@ds0.me>
* nexus: Tweak heuristics to improve routeabilityDavid Shah2020-11-301-2/+2
| | | | Signed-off-by: David Shah <dave@ds0.me>
* nexus: Fix slow routing around DSPsDavid Shah2020-11-301-0/+24
| | | | Signed-off-by: David Shah <dave@ds0.me>
* nexus: Tweak delay heuristicsDavid Shah2020-11-301-2/+4
| | | | Signed-off-by: David Shah <dave@ds0.me>
* nexus: Add EBR timing analysisDavid Shah2020-11-301-0/+19
| | | | Signed-off-by: David Shah <dave@ds0.me>
* nexus: Add LUTRAM and WIDEFN9 timing supportDavid Shah2020-11-301-3/+22
| | | | Signed-off-by: David Shah <dave@ds0.me>
* timing: Add a few more cell typesDavid Shah2020-11-301-6/+76
| | | | Signed-off-by: David Shah <dave@ds0.me>
* nexus: Swap sort order to make some lookups easierDavid Shah2020-11-301-2/+2
| | | | Signed-off-by: David Shah <dave@ds0.me>
* nexus: Add cell delay lookupDavid Shah2020-11-301-0/+81
| | | | Signed-off-by: David Shah <dave@ds0.me>
* nexus: Lookup speed grade and pip delaysDavid Shah2020-11-301-0/+21
| | | | Signed-off-by: David Shah <dave@ds0.me>
* nexus: Default to router2 for nowDavid Shah2020-11-301-1/+1
| | | | Signed-off-by: David Shah <dave@ds0.me>
* nexus: Improve placer configDavid Shah2020-11-301-0/+5
| | | | Signed-off-by: David Shah <dave@ds0.me>
* nexus: Add stub GUIDavid Shah2020-11-301-3/+57
| | | | Signed-off-by: David Shah <dave@ds0.me>
* nexus: Add a simple global routing passDavid Shah2020-11-301-0/+3
| | | | Signed-off-by: David Shah <dave@ds0.me>
* nexus: Generate FASM files that can be used standaloneDavid Shah2020-11-301-0/+8
| | | | Signed-off-by: David Shah <dave@ds0.me>
* nexus: Build and embed chipdb automaticallyDavid Shah2020-11-301-12/+7
| | | | Signed-off-by: David Shah <dave@ds0.me>
* nexus: Refactor cell pin style dbDavid Shah2020-11-301-0/+1
| | | | Signed-off-by: David Shah <dave@ds0.me>
* nexus: Add IO packingDavid Shah2020-11-301-4/+14
| | | | Signed-off-by: David Shah <dave@ds0.me>
* nexus: Lookup of package and IO pinsDavid Shah2020-11-301-0/+89
| | | | Signed-off-by: David Shah <dave@ds0.me>
* nexus: Infrastructure for constant/inv handlingDavid Shah2020-11-301-0/+44
| | | | Signed-off-by: David Shah <dave@ds0.me>
* nexus: Bring up to dateDavid Shah2020-11-301-2/+40
| | | | Signed-off-by: David Shah <dave@ds0.me>
* nexus: Working on validity checkingDavid Shah2020-11-301-6/+0
| | | | Signed-off-by: David Shah <dave@ds0.me>
* nexus: Add global networksDavid Shah2020-11-301-0/+3
| | | | Signed-off-by: David Shah <dave@ds0.me>
* nexus: Add packing frameworkDavid Shah2020-11-301-8/+0
| | | | Signed-off-by: David Shah <dave@ds0.me>
* nexus: Add mainDavid Shah2020-11-301-1/+1
| | | | Signed-off-by: David Shah <dave@ds0.me>
* nexus: Add more placeholder Arch functionsDavid Shah2020-11-301-0/+121
| | | | Signed-off-by: David Shah <dave@ds0.me>
* nexus: Implement bel, wire and pip Arch functionsDavid Shah2020-11-301-4/+209
| | | | Signed-off-by: David Shah <dave@ds0.me>
* Add Arch constructorDavid Shah2020-11-301-0/+109
Signed-off-by: David Shah <dave@ds0.me>