diff options
author | Eddie Hung <eddie@fpgeh.com> | 2020-03-05 09:41:54 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-03-05 09:41:54 -0800 |
commit | 8b074cc473676288eb9cb04b09fb37ba6d11461a (patch) | |
tree | db28d5358d1485447f1e625d8aaceb18780ba06f | |
parent | 0930c00f038453685bf4d8f5366db7fe71f54cf8 (diff) | |
parent | 69f155505816e38280a12bc3998d65d03874a404 (diff) | |
download | yosys-8b074cc473676288eb9cb04b09fb37ba6d11461a.tar.gz yosys-8b074cc473676288eb9cb04b09fb37ba6d11461a.tar.bz2 yosys-8b074cc473676288eb9cb04b09fb37ba6d11461a.zip |
Merge pull request #1739 from YosysHQ/eddie/issue1738
ice40: fix specify for -device {lp,u}
-rw-r--r-- | techlibs/ice40/cells_sim.v | 8 | ||||
-rwxr-xr-x | tests/arch/run-test.sh | 17 |
2 files changed, 18 insertions, 7 deletions
diff --git a/techlibs/ice40/cells_sim.v b/techlibs/ice40/cells_sim.v index f18784b5e..17fe2ec99 100644 --- a/techlibs/ice40/cells_sim.v +++ b/techlibs/ice40/cells_sim.v @@ -2020,7 +2020,7 @@ specify $setuphold(negedge CLK, negedge SR, 113:125:140, 0:0:0); endspecify `endif -`ifdef ICE40_LX +`ifdef ICE40_LP specify // https://github.com/cliffordwolf/icestorm/blob/95949315364f8d9b0c693386aefadf44b28e2cf6/icefuzz/timings_lp1k.txt#L79 (CIN => COUT) = (118:153:186, 98:128:155); @@ -2045,7 +2045,7 @@ specify // https://github.com/cliffordwolf/icestorm/blob/95949315364f8d9b0c693386aefadf44b28e2cf6/icefuzz/timings_lp1k.txt#L89 (I3 => LO) = (249:323:393, 255:332:403); // https://github.com/cliffordwolf/icestorm/blob/95949315364f8d9b0c693386aefadf44b28e2cf6/icefuzz/timings_lp1k.txt#L90 - (posedge CLK => O) = (504:655:796, 504:655:796); + (posedge CLK => (O : 1'bx)) = (504:655:796, 504:655:796); // https://github.com/cliffordwolf/icestorm/blob/95949315364f8d9b0c693386aefadf44b28e2cf6/icefuzz/timings_lp1k.txt#L91-L92 (SR => O) = (559:726:883, 559:726:883); // https://github.com/cliffordwolf/icestorm/blob/95949315364f8d9b0c693386aefadf44b28e2cf6/icefuzz/timings_lp1k.txt#L74 @@ -2109,7 +2109,7 @@ specify // https://github.com/cliffordwolf/icestorm/blob/95949315364f8d9b0c693386aefadf44b28e2cf6/icefuzz/timings_up5k.txt#L101 (I3 => LO) = (216:378:583, 226:395:609); // https://github.com/cliffordwolf/icestorm/blob/95949315364f8d9b0c693386aefadf44b28e2cf6/icefuzz/timings_up5k.txt#L102 - (posedge CLK => O) = (516:903:1391, 516:903:1391); + (posedge CLK => (O : 1'bx)) = (516:903:1391, 516:903:1391); // https://github.com/cliffordwolf/icestorm/blob/95949315364f8d9b0c693386aefadf44b28e2cf6/icefuzz/timings_up5k.txt#L103-104 (SR => O) = (420:734:1131, 590:1032:1589); // https://github.com/cliffordwolf/icestorm/blob/95949315364f8d9b0c693386aefadf44b28e2cf6/icefuzz/timings_up5k.txt#L86 @@ -2366,7 +2366,7 @@ module SB_SPRAM256KA ( `endif `ifdef ICE40_U specify - https://github.com/cliffordwolf/icestorm/blob/95949315364f8d9b0c693386aefadf44b28e2cf6/icefuzz/timings_up5k.txt#L13169-L13182 + // https://github.com/cliffordwolf/icestorm/blob/95949315364f8d9b0c693386aefadf44b28e2cf6/icefuzz/timings_up5k.txt#L13169-L13182 $setup(posedge ADDRESS, posedge CLOCK, 268); // https://github.com/cliffordwolf/icestorm/blob/95949315364f8d9b0c693386aefadf44b28e2cf6/icefuzz/timings_up5k.txt#L13183 $setup(CHIPSELECT, posedge CLOCK, 404); diff --git a/tests/arch/run-test.sh b/tests/arch/run-test.sh index 5292d1615..170078a7f 100755 --- a/tests/arch/run-test.sh +++ b/tests/arch/run-test.sh @@ -2,12 +2,23 @@ set -e +declare -A defines=( ["ice40"]="ICE40_HX ICE40_LP ICE40_U" ) + echo "Running syntax check on arch sim models" for arch in ../../techlibs/*; do find $arch -name cells_sim.v | while read path; do - echo -n "Test $path ->" - iverilog -t null -I$arch $path - echo " ok" + arch_name=$(basename -- $arch) + if [ "${defines[$arch_name]}" ]; then + for def in ${defines[$arch_name]}; do + echo -n "Test $path -D$def ->" + iverilog -t null -I$arch -D$def $path + echo " ok" + done + else + echo -n "Test $path ->" + iverilog -t null -I$arch $path + echo " ok" + fi done done |