aboutsummaryrefslogtreecommitdiff
path: root/src/test/resources
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/resources')
-rw-r--r--src/test/resources/blackboxes/ParameterizedExtModule.v15
-rw-r--r--src/test/resources/blackboxes/ParameterizedExtModuleTester.fir40
-rw-r--r--src/test/resources/blackboxes/RenamedExtModuleTester.fir22
3 files changed, 77 insertions, 0 deletions
diff --git a/src/test/resources/blackboxes/ParameterizedExtModule.v b/src/test/resources/blackboxes/ParameterizedExtModule.v
new file mode 100644
index 00000000..ee6e3ec3
--- /dev/null
+++ b/src/test/resources/blackboxes/ParameterizedExtModule.v
@@ -0,0 +1,15 @@
+
+module ParameterizedExtModule(
+ input [15:0] foo,
+ output [15:0] bar
+);
+ parameter VALUE = 0;
+ parameter STRING = "one";
+ parameter REAL = 1.0;
+ wire [15:0] fizz;
+ wire [15:0] buzz;
+ assign bar = foo + VALUE + fizz + buzz;
+ assign fizz = (STRING == "two")? 2 : (STRING == "one")? 1 : 0;
+ assign buzz = (REAL > 2.5E50)? 2 : (REAL < 0.0)? 1 : 0;
+endmodule
+
diff --git a/src/test/resources/blackboxes/ParameterizedExtModuleTester.fir b/src/test/resources/blackboxes/ParameterizedExtModuleTester.fir
new file mode 100644
index 00000000..29769e84
--- /dev/null
+++ b/src/test/resources/blackboxes/ParameterizedExtModuleTester.fir
@@ -0,0 +1,40 @@
+circuit ParameterizedExtModuleTester :
+ extmodule ParameterizedExtModule_1 :
+ input foo : UInt<16>
+ output bar : UInt<16>
+
+ defname = ParameterizedExtModule
+ parameter VALUE = 1
+ parameter STRING = "one"
+ parameter REAL = -1.7
+
+ extmodule ParameterizedExtModule_2 :
+ input foo : UInt<16>
+ output bar : UInt<16>
+
+ defname = ParameterizedExtModule
+ parameter VALUE = 2
+ parameter STRING = "two"
+ parameter REAL = 2.6E50
+
+ module ParameterizedExtModuleTester :
+ input clk : Clock
+ input reset : UInt<1>
+
+ inst dut1 of ParameterizedExtModule_1
+ inst dut2 of ParameterizedExtModule_2
+
+ dut1.foo <= UInt(1000)
+ dut2.foo <= UInt(1000)
+
+ when not(reset) :
+ when neq(dut1.bar, UInt(1003)) :
+ printf(clk, not(reset), "Assertion failed\nTest Failed!\n")
+ stop(clk, not(reset), 1)
+ else :
+ when neq(dut2.bar, UInt(1006)) :
+ 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/RenamedExtModuleTester.fir b/src/test/resources/blackboxes/RenamedExtModuleTester.fir
new file mode 100644
index 00000000..48b0886c
--- /dev/null
+++ b/src/test/resources/blackboxes/RenamedExtModuleTester.fir
@@ -0,0 +1,22 @@
+circuit RenamedExtModuleTester :
+ extmodule ThisIsJustTheFirrtlName :
+ input foo : UInt<16>
+ output bar : UInt<16>
+
+ defname = SimpleExtModule
+
+ module RenamedExtModuleTester :
+ input clk : Clock
+ input reset : UInt<1>
+
+ inst dut of ThisIsJustTheFirrtlName
+
+ 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)
+