From b45db64102b5dafc81c5b3e5b8a19060a3d9c64a Mon Sep 17 00:00:00 2001 From: John McMaster Date: Sat, 22 Dec 2018 11:17:14 -0800 Subject: [PATCH] hclkpips: HCLK bitstream workaround Signed-off-by: John McMaster --- fuzzers/058-hclkpips/generate.py | 6 ++++++ fuzzers/058-hclkpips/generate.tcl | 15 ++++++++++++--- 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/fuzzers/058-hclkpips/generate.py b/fuzzers/058-hclkpips/generate.py index f32fb121..03356b7a 100644 --- a/fuzzers/058-hclkpips/generate.py +++ b/fuzzers/058-hclkpips/generate.py @@ -35,6 +35,12 @@ for arg in sys.argv[1:]: _, pip = pip.split("/") tile_type, pip = pip.split(".") src, dst = pip.split("->>") + + # FIXME: workaround for https://github.com/SymbiFlow/prjxray/issues/392 + if "CLB_IO_CLK" not in segmk.grid[tile]["bits"]: + print("WARNING: dropping tile %s" % tile) + continue + tag = "%s.%s" % (dst, src) segmk.add_tile_tag(tile, tag, 1) if "HCLK_CK_BUFH" in src: diff --git a/fuzzers/058-hclkpips/generate.tcl b/fuzzers/058-hclkpips/generate.tcl index 40a07d95..c03b20f1 100644 --- a/fuzzers/058-hclkpips/generate.tcl +++ b/fuzzers/058-hclkpips/generate.tcl @@ -21,10 +21,19 @@ route_design write_checkpoint -force design.dcp -if [regexp "_001$" [pwd]] {set tile [lindex [filter [roi_tiles] {TILE_TYPE == HCLK_L}] 0]} -if [regexp "_002$" [pwd]] {set tile [lindex [filter [roi_tiles] {TILE_TYPE == HCLK_R}] 0]} - set net [get_nets o_OBUF] + +if [regexp "_001$" [pwd]] { + set hclk_tiles [filter [roi_tiles] {TYPE == HCLK_L}] +} elseif [regexp "_002$" [pwd]] { + set hclk_tiles [filter [roi_tiles] {TYPE == HCLK_R}] +} else { + error "unknown specimen" +} + +# set tile [randsample_list 1 $hclk_tiles] +set tile [lindex $hclk_tiles end] +puts "Selected tile $tile" set pips [get_pips -of_objects $tile] for {set i 0} {$i < [llength $pips]} {incr i} {