diff options
Diffstat (limited to 'ecp5/bitstream.cc')
-rw-r--r-- | ecp5/bitstream.cc | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/ecp5/bitstream.cc b/ecp5/bitstream.cc index 9fb823ab..c6863cd6 100644 --- a/ecp5/bitstream.cc +++ b/ecp5/bitstream.cc @@ -867,8 +867,10 @@ void write_bitstream(Context *ctx, std::string base_config_file, std::string tex if (is_differential(ioType_from_str(iotype))) { if (bel.location.y == 0) { // Pseudo differential top IO - NPNR_ASSERT(dir == "OUTPUT"); - NPNR_ASSERT(pio == "PIOA"); + if (dir != "OUTPUT") + log_error("Pseudo-differential IO '%s' must be output\n", ctx->nameOf(ci)); + if (pio != "PIOA") + log_error("Pseudo-differential IO '%s' must be constrained to 'A' side of pair\n", ctx->nameOf(ci)); std::string cpio_tile = get_comp_pio_tile(ctx, bel); std::string cpic_tile = get_comp_pic_tile(ctx, bel); cc.tiles[cpio_tile].add_enum(pio + ".BASE_TYPE", dir + "_" + iotype); |