From 7e58f47639e12b0d1ab715ca641fdcbb84e9a486 Mon Sep 17 00:00:00 2001 From: David Shah Date: Thu, 2 Nov 2017 11:48:29 +0000 Subject: Add 5k colbuf fuzzing scripts --- icefuzz/tests/colbuf_ram_5k.sh | 56 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100755 icefuzz/tests/colbuf_ram_5k.sh (limited to 'icefuzz/tests/colbuf_ram_5k.sh') diff --git a/icefuzz/tests/colbuf_ram_5k.sh b/icefuzz/tests/colbuf_ram_5k.sh new file mode 100755 index 0000000..1069433 --- /dev/null +++ b/icefuzz/tests/colbuf_ram_5k.sh @@ -0,0 +1,56 @@ +#!/bin/bash + +set -ex + +mkdir -p colbuf_ram_5k.work +cd colbuf_ram_5k.work + +glb_pins="20 35 37 44" + +for x in 6 19; do +for y in {1..30}; do + pf="colbuf_ram_5k_${x}_${y}" + gpin=$( echo $glb_pins | tr ' ' '\n' | sort -R | head -n1; ) + if [ $((y % 2)) == 1 ]; then + clkport="WCLK" + other_clkport="RCLK" + else + clkport="RCLK" + other_clkport="WCLK" + fi + cat > ${pf}.v <<- EOT + module top (input c, oc, input [1:0] d, output [1:0] q); + wire gc; + SB_GB_IO #( + .PIN_TYPE(6'b 0000_00), + .PULLUP(1'b0), + .NEG_TRIGGER(1'b0), + .IO_STANDARD("SB_LVCMOS") + ) gbuf ( + .PACKAGE_PIN(c), + .GLOBAL_BUFFER_OUTPUT(gc) + ); + SB_RAM40_4K #( + .READ_MODE(3), + .WRITE_MODE(3) + ) ram40 ( + .WADDR(11'b0), + .RADDR(11'b0), + .$clkport(gc), + .$other_clkport(oc), + .RDATA(q), + .WDATA(d), + .WE(1'b1), + .WCLKE(1'b1), + .RE(1'b1), + .RCLKE(1'b1) + ); + endmodule + EOT + echo "set_location ram40 $x $((y - (1 - y%2))) 0" > ${pf}.pcf + echo "set_io oc 1" >> ${pf}.pcf + echo "set_io c $gpin" >> ${pf}.pcf + ICEDEV=up5k-sg48 bash ../../icecube.sh ${pf}.v > ${pf}.log 2>&1 + ../../../icebox/icebox_explain.py ${pf}.asc > ${pf}.exp + rm -rf ${pf}.tmp +done; done -- cgit v1.2.3