diff options
author | David Shah <dave@ds0.me> | 2019-07-02 16:47:54 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-07-02 16:47:54 +0100 |
commit | 0447794c51ce1b77c2bd846ad5c09637f42f8612 (patch) | |
tree | 8ff666a0cf8df461c4c228417c908d23ce4ecc91 /tests | |
parent | d206eca03b8aa7bb982fb2486c02c90a61354066 (diff) | |
parent | d45936fe5f2c6fd1e6f371b2fc3d6d820868ef72 (diff) | |
download | yosys-0447794c51ce1b77c2bd846ad5c09637f42f8612.tar.gz yosys-0447794c51ce1b77c2bd846ad5c09637f42f8612.tar.bz2 yosys-0447794c51ce1b77c2bd846ad5c09637f42f8612.zip |
Merge pull request #1153 from YosysHQ/dave/fix_multi_mux
memory_dff: Fix checking of feedback mux input when more than one mux
Diffstat (limited to 'tests')
-rw-r--r-- | tests/memories/read_two_mux.v | 16 | ||||
-rwxr-xr-x | tests/memories/run-test.sh | 4 |
2 files changed, 20 insertions, 0 deletions
diff --git a/tests/memories/read_two_mux.v b/tests/memories/read_two_mux.v new file mode 100644 index 000000000..4f2e7e1cd --- /dev/null +++ b/tests/memories/read_two_mux.v @@ -0,0 +1,16 @@ +// expect-wr-ports 1 +// expect-rd-ports 1 +// expect-no-rd-clk + +module top(input clk, input we, re, reset, input [7:0] addr, wdata, output reg [7:0] rdata); + +reg [7:0] bram[0:255]; +(* keep *) reg dummy; + +always @(posedge clk) begin + rdata <= re ? (reset ? 8'b0 : bram[addr]) : rdata; + if (we) + bram[addr] <= wdata; +end + +endmodule diff --git a/tests/memories/run-test.sh b/tests/memories/run-test.sh index 76acaa9cd..8d1a8b413 100755 --- a/tests/memories/run-test.sh +++ b/tests/memories/run-test.sh @@ -31,6 +31,10 @@ for f in `egrep -l 'expect-(wr-ports|rd-ports|rd-clk)' *.v`; do grep -q "connect \\\\RD_CLK \\$(gawk '/expect-rd-clk/ { print $3; }' $f)\$" ${f%.v}.dmp || { echo " ERROR: Unexpected read clock."; false; } fi + if grep -q expect-no-rd-clk $f; then + grep -q "connect \\\\RD_CLK 1'x\$" ${f%.v}.dmp || + { echo " ERROR: Expected no read clock."; false; } + fi echo " ok." done |