aboutsummaryrefslogtreecommitdiff
path: root/src/test/resources
diff options
context:
space:
mode:
authorjackkoenig2016-09-22 19:09:36 -0700
committerJack Koenig2016-10-26 15:15:37 -0700
commite25c6f7a5e4e1bfbfcb8345288be478caa469525 (patch)
treedd2cc446225035e5f2809ff55831579280543e43 /src/test/resources
parentd7bf4656f27de63474eec018c689e5b28e3472d8 (diff)
Add ExtModule Tests
Diffstat (limited to 'src/test/resources')
-rw-r--r--src/test/resources/blackboxes/AdderExtModule.v8
-rw-r--r--src/test/resources/blackboxes/MultiExtModuleTester.fir36
-rw-r--r--src/test/resources/blackboxes/SimpleExtModule.v8
-rw-r--r--src/test/resources/blackboxes/SimpleExtModuleTester.fir20
4 files changed, 72 insertions, 0 deletions
diff --git a/src/test/resources/blackboxes/AdderExtModule.v b/src/test/resources/blackboxes/AdderExtModule.v
new file mode 100644
index 00000000..1841814e
--- /dev/null
+++ b/src/test/resources/blackboxes/AdderExtModule.v
@@ -0,0 +1,8 @@
+
+module AdderExtModule(
+ input [15:0] foo,
+ output [15:0] bar
+);
+ assign bar = foo + 1;
+endmodule
+
diff --git a/src/test/resources/blackboxes/MultiExtModuleTester.fir b/src/test/resources/blackboxes/MultiExtModuleTester.fir
new file mode 100644
index 00000000..7c1adab2
--- /dev/null
+++ b/src/test/resources/blackboxes/MultiExtModuleTester.fir
@@ -0,0 +1,36 @@
+circuit MultiExtModuleTester :
+ extmodule SimpleExtModule :
+ input foo : UInt<16>
+ output bar : UInt<16>
+
+ extmodule AdderExtModule :
+ input foo : UInt<16>
+ output bar : UInt<16>
+
+ module MultiExtModuleTester :
+ input clk : Clock
+ input reset : UInt<1>
+
+ inst dut1 of SimpleExtModule
+ inst dut2 of SimpleExtModule
+ inst dut3 of AdderExtModule
+
+ dut1.foo <= UInt(1234)
+ dut2.foo <= UInt(5678)
+ dut3.foo <= UInt(100)
+
+ when not(reset) :
+ when neq(dut1.bar, UInt(1234)) :
+ printf(clk, not(reset), "Assertion failed\nTest Failed!\n")
+ stop(clk, not(reset), 1)
+ else :
+ when neq(dut2.bar, UInt(5678)) :
+ printf(clk, not(reset), "Assertion failed\nTest Failed!\n")
+ stop(clk, not(reset), 1)
+ else :
+ when neq(dut3.bar, UInt(101)) :
+ printf(clk, not(reset), "Assertion failed\nTest Failed!\n")
+ stop(clk, not(reset), 1)
+ else :
+ stop(clk, not(reset), 0)
+
diff --git a/src/test/resources/blackboxes/SimpleExtModule.v b/src/test/resources/blackboxes/SimpleExtModule.v
new file mode 100644
index 00000000..03a9db44
--- /dev/null
+++ b/src/test/resources/blackboxes/SimpleExtModule.v
@@ -0,0 +1,8 @@
+
+module SimpleExtModule(
+ input [15:0] foo,
+ output [15:0] bar
+);
+ assign bar = foo;
+endmodule
+
diff --git a/src/test/resources/blackboxes/SimpleExtModuleTester.fir b/src/test/resources/blackboxes/SimpleExtModuleTester.fir
new file mode 100644
index 00000000..4d99bff2
--- /dev/null
+++ b/src/test/resources/blackboxes/SimpleExtModuleTester.fir
@@ -0,0 +1,20 @@
+circuit SimpleExtModuleTester :
+ extmodule SimpleExtModule :
+ input foo : UInt<16>
+ output bar : UInt<16>
+
+ module SimpleExtModuleTester :
+ input clk : Clock
+ input reset : UInt<1>
+
+ inst dut of SimpleExtModule
+
+ dut.foo <= UInt(1234)
+
+ when not(reset) :
+ when neq(dut.bar, UInt(1234)) :
+ printf(clk, not(reset), "Assertion failed\nTest Failed!\n")
+ stop(clk, not(reset), 1)
+ else :
+ stop(clk, not(reset), 0)
+