diff options
author | Sylvain Munaut <tnt@246tNt.com> | 2018-11-19 01:57:47 +0100 |
---|---|---|
committer | Sylvain Munaut <tnt@246tNt.com> | 2018-11-19 18:20:20 +0100 |
commit | bc9f2da470b96c4e2f65324a0da1ffe099b5e586 (patch) | |
tree | 7c05b3544a4ace9d69af28922751a5cd63d0d387 /ice40/arch.cc | |
parent | 325d46e284fd7944b99929c1482e641a1db53931 (diff) | |
download | nextpnr-bc9f2da470b96c4e2f65324a0da1ffe099b5e586.tar.gz nextpnr-bc9f2da470b96c4e2f65324a0da1ffe099b5e586.tar.bz2 nextpnr-bc9f2da470b96c4e2f65324a0da1ffe099b5e586.zip |
ice40: Introduce the concept of forPadIn SB_GB
Those are cells that are created mainly to handle the various sources a
global network can be driven from other than a user net.
When the flag is set, this means the global network usually driven by
this BEL is in fact driven by something else and so that SB_GB BEL and
matching global network can't be used.
This is also what gets used to set the extra bits during bitstream
generation.
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
Diffstat (limited to 'ice40/arch.cc')
-rw-r--r-- | ice40/arch.cc | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/ice40/arch.cc b/ice40/arch.cc index 995150ac..3138b813 100644 --- a/ice40/arch.cc +++ b/ice40/arch.cc @@ -1044,6 +1044,8 @@ void Arch::assignCellInfo(CellInfo *cell) cell->lcInfo.inputCount++; } else if (cell->type == id_SB_IO) { cell->ioInfo.lvds = str_or_default(cell->params, id_IO_STANDARD, "SB_LVCMOS") == "SB_LVDS_INPUT"; + } else if (cell->type == id_SB_GB) { + cell->gbInfo.forPadIn = bool_or_default(cell->attrs, this->id("FOR_PAD_IN")); } } |