aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Add getBelHidden and add some missing "override" statements.Keith Rothman2021-02-1111-16/+30
| | | | Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
* Merge pull request #574 from YosysHQ/gatecat/belpin-1gatecat2021-02-104-37/+0
|\ | | | | Remove the unused CellInfo::pins field
| * Remove the unused CellInfo::pins fieldgatecat2021-02-104-37/+0
|/ | | | | | | | | | | No arches ever actually used this to implement a Cell->Bel pin mapping, and in practice if any did try they would inevitably hit bitrot. This field had limited use in practice as it is necessary to also support cases where one cell pin maps to more than one bel pin. Removing this old field is the first step towards developing a new API for this. Signed-off-by: gatecat <gatecat@ds0.me>
* Merge pull request #573 from YosysHQ/gatecat/basearchrangesgatecat2021-02-095-49/+25
|\ | | | | Add BaseArchRanges for default ArchRanges types
| * Add BaseArchRanges for default ArchRanges typesgatecat2021-02-095-49/+25
| | | | | | | | Signed-off-by: gatecat <gatecat@ds0.me>
* | Add nextpnr-gowin binary to gitignoregatecat2021-02-091-0/+1
|/ | | | Signed-off-by: gatecat <gatecat@ds0.me>
* Merge pull request #568 from YosysHQ/dave/arch-overridegatecat2021-02-0820-1145/+1334
|\ | | | | Create a new BaseArch that formally specifies the Arch API and provides some base implementations
| * Make BaseCtx destructor virtualgatecat2021-02-081-1/+1
| | | | | | | | Signed-off-by: gatecat <gatecat@ds0.me>
| * Update docs with API changesD. Shah2021-02-081-21/+160
| | | | | | | | Signed-off-by: D. Shah <dave@ds0.me>
| * interchange: Base on ArchAPID. Shah2021-02-082-106/+135
| | | | | | | | Signed-off-by: D. Shah <dave@ds0.me>
| * Use 'T' postfix to disambiguate LHS and RHS of usingD. Shah2021-02-086-147/+153
| | | | | | | | | | | | | | Arches might otherwise have range types named ambigiously with the entry in ArchRanges. Signed-off-by: D. Shah <dave@ds0.me>
| * Add archArgs and archArgsToId to Arch APID. Shah2021-02-057-11/+27
| | | | | | | | Signed-off-by: D. Shah <dave@ds0.me>
| * gowin: Switch to BaseArchD. Shah2021-02-052-150/+107
| | | | | | | | Signed-off-by: D. Shah <dave@ds0.me>
| * generic: Base upon ArchAPID. Shah2021-02-051-102/+132
| | | | | | | | | | | | | | As generic is often picked as our 'odd-one-out' we also use it as an example of an Arch that does not build upon BaseArch. Signed-off-by: D. Shah <dave@ds0.me>
| * nexus: Switch to BaseArchD. Shah2021-02-055-301/+103
| | | | | | | | Signed-off-by: D. Shah <dave@ds0.me>
| * ice40: Switch to BaseArchD. Shah2021-02-055-182/+115
| | | | | | | | Signed-off-by: D. Shah <dave@ds0.me>
| * Add pure-virtual ArchAPI interfaceD. Shah2021-02-051-104/+198
| | | | | | | | | | | | | | | | | | This splits out the pure-virtual definition of the architecture API into ArchAPI; leaving BaseArch to only provide default implementations (which can now be completely opted out of by deriving from ArchAPI instead of BaseArch). Signed-off-by: D. Shah <dave@ds0.me>
| * Rename ArchBase to BaseArch for consistency with BaseCtxD. Shah2021-02-053-7/+7
| | | | | | | | Signed-off-by: D. Shah <dave@ds0.me>
| * Add default implementation of bel bucket functionsD. Shah2021-02-055-88/+94
| | | | | | | | Signed-off-by: D. Shah <dave@ds0.me>
| * Add default implementation of some range-returning functionsD. Shah2021-02-052-17/+27
| | | | | | | | Signed-off-by: D. Shah <dave@ds0.me>
| * Add a few more functions to ArchBaseD. Shah2021-02-052-11/+18
| | | | | | | | Signed-off-by: D. Shah <dave@ds0.me>
| * ecp5: Use common wire/pip bindingD. Shah2021-02-052-83/+7
| | | | | | | | Signed-off-by: D. Shah <dave@ds0.me>
| * Fix now-illegal use of reinterpret_castD. Shah2021-02-051-3/+5
| | | | | | | | Signed-off-by: D. Shah <dave@ds0.me>
| * nextpnr: Example of shared wire/bel/pip binding codeD. Shah2021-02-051-13/+106
| | | | | | | | | | | | Currently not actually being tested Signed-off-by: D. Shah <dave@ds0.me>
| * nextpnr: Use templates to specify range typesD. Shah2021-02-052-18/+67
| | | | | | | | Signed-off-by: D. Shah <dave@ds0.me>
| * nextpnr: Add base virtual functions for non-range Arch APID. Shah2021-02-052-84/+176
| | | | | | | | | | | | | | | | | | | | | | | | | | This makes the Arch API clearer and also allows a base implementation of functions to reduce the amount of complexity to get a basic Arch up and running. Currently this only implements these for functions that don't return a range. Range-returning functions will require more work in order due to the current 'duck typing' approach (probably a struct that contains the range types combined with templating.) Signed-off-by: D. Shah <dave@ds0.me>
* | Update prjoxide URLD. Shah2021-02-082-4/+4
| | | | | | | | Signed-off-by: D. Shah <gatecat@ds0.me>
* | Merge pull request #572 from YosysHQ/dave/more-ssizeDavid Shah2021-02-084-23/+23
|\ \ | |/ |/| Use RelSlice::ssize instead of cast-to-int throughout
| * Use RelSlice::ssize instead of cast-to-int throughoutD. Shah2021-02-084-23/+23
|/ | | | Signed-off-by: D. Shah <dave@ds0.me>
* Merge pull request #567 from litghost/initial_fpga_interchangeDavid Shah2021-02-0515-2/+2582
|\ | | | | Initial FPGA interchange arch
| * Add RelSlice::ssize and use it when comparing with signed ints.Keith Rothman2021-02-053-27/+29
| | | | | | | | Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
| * Move all string data into BBA file.Keith Rothman2021-02-055-48901/+16
| | | | | | | | Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
| * Use RelSlice instead of RelPtr in cases where sizes are present.Keith Rothman2021-02-042-97/+67
| | | | | | | | Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
| * Update APIs to conform to style guide.Keith Rothman2021-02-045-67/+48939
| | | | | | | | | | | | | | - Change non-Arch methods to snake_case - Adds some utility functions to for accessing bel_data. Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
| * Remove unused method getReservedWireNet.Keith Rothman2021-02-041-7/+0
| | | | | | | | | | | | This was a holdover from the nextpnr-xilinx arch. Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
| * Update copywrite headers.Keith Rothman2021-02-048-4/+12
| | | | | | | | Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
| * Correct some typos.Keith Rothman2021-02-041-4/+4
| | | | | | | | Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
| * Fix warnings with signed/unsigned.Keith Rothman2021-02-041-1/+1
| | | | | | | | Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
| * Fix fpga_interchange/README.md duplicate patch statement.Keith Rothman2021-02-041-8/+0
| | | | | | | | Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
| * Fix URLs in Markdown.Keith Rothman2021-02-041-2/+2
| | | | | | | | Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
| * Add empty constids.inc for build.Keith Rothman2021-02-041-0/+0
| | | | | | | | Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
| * Run "make clangformat".Keith Rothman2021-02-044-148/+100
| | | | | | | | Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
| * Add README about initial state of FPGA interchange implementation.Keith Rothman2021-02-041-0/+170
| | | | | | | | Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
| * Update FPGA interchange to use IdStringList.Keith Rothman2021-02-042-132/+137
| | | | | | | | Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
| * Add initial GUI files.Keith Rothman2021-02-044-0/+96
| | | | | | | | Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
| * Start adding data for placement constraint solving.Keith Rothman2021-02-042-50/+43
| | | | | | | | Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
| * Debug BEL bucket data.Keith Rothman2021-02-041-11/+14
| | | | | | | | Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
| * Add initial updates to FPGA interchange arch for BEL buckets.Keith Rothman2021-02-045-0/+247
| | | | | | | | Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
| * Address review comments.Keith Rothman2021-02-043-95/+6
| | | | | | | | Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
| * Fix BBA import bugs.Keith Rothman2021-02-042-69/+201
| | | | | | | | Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>