diff options
author | David Shah <davey1576@gmail.com> | 2018-06-22 12:34:42 +0200 |
---|---|---|
committer | David Shah <davey1576@gmail.com> | 2018-06-22 12:34:42 +0200 |
commit | 71176ac5384c696dde1d5601ea1beb5c46f281c6 (patch) | |
tree | b7085a55f2fbc777e79bb76d3e69648d41e5be36 /ice40 | |
parent | 2c98231f88cd145267048b32a5ce0e4deadc2716 (diff) | |
download | nextpnr-71176ac5384c696dde1d5601ea1beb5c46f281c6.tar.gz nextpnr-71176ac5384c696dde1d5601ea1beb5c46f281c6.tar.bz2 nextpnr-71176ac5384c696dde1d5601ea1beb5c46f281c6.zip |
Fixing 5k bitstream gen and place heuristics
Signed-off-by: David Shah <davey1576@gmail.com>
Diffstat (limited to 'ice40')
-rw-r--r-- | ice40/bitstream.cc | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/ice40/bitstream.cc b/ice40/bitstream.cc index 8754fef7..e722cea4 100644 --- a/ice40/bitstream.cc +++ b/ice40/bitstream.cc @@ -229,6 +229,16 @@ void write_asc(const Context *ctx, std::ostream &out) set_config(ti, config.at(iey).at(iex), "IoCtrl.REN_" + std::to_string(iez), !pullup); } + + if (ctx->args.type == ArchArgs::UP5K) { + if (iez == 0) { + set_config(ti, config.at(iey).at(iex), "IoCtrl.cf_bit_39", + !pullup); + } else if (iez == 1) { + set_config(ti, config.at(iey).at(iex), "IoCtrl.cf_bit_35", + !pullup); + } + } } else if (cell.second->type == ctx->id("SB_GB")) { // no cell config bits } else if (cell.second->type == ctx->id("ICESTORM_RAM")) { @@ -312,7 +322,8 @@ void write_asc(const Context *ctx, std::ostream &out) ctx->args.type == ArchArgs::HX8K) { setColBufCtrl = (y == 8 || y == 9 || y == 24 || y == 25); } else if (ctx->args.type == ArchArgs::UP5K) { - if (tile == TILE_LOGIC) { + if (tile == TILE_LOGIC || tile == TILE_RAMB || + tile == TILE_RAMT) { setColBufCtrl = (y == 4 || y == 5 || y == 14 || y == 15 || y == 26 || y == 27); } else { |