aboutsummaryrefslogtreecommitdiff
path: root/src/tb/mzi_tb.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/tb/mzi_tb.h')
-rw-r--r--src/tb/mzi_tb.h31
1 files changed, 31 insertions, 0 deletions
diff --git a/src/tb/mzi_tb.h b/src/tb/mzi_tb.h
new file mode 100644
index 0000000..16ed624
--- /dev/null
+++ b/src/tb/mzi_tb.h
@@ -0,0 +1,31 @@
+#pragma once
+
+#include <optical_signal.h>
+#include <systemc.h>
+#include <waveguide.h>
+#include <directional_coupler.h>
+#include <mzi.h>
+#include <probe.h>
+#include <specs.h>
+
+SC_MODULE(mzi_tb)
+{
+public:
+ spx::oa_port_out_type IN;
+ spx::oa_port_in_type OUT1, OUT2;
+ sc_out<double> vphi,vtheta;
+
+ void run_1();
+ void monitor();
+ SC_CTOR(mzi_tb)
+ {
+ SC_HAS_PROCESS(mzi_tb);
+
+ SC_THREAD(run_1);
+
+ SC_THREAD(monitor);
+ sensitive << IN << OUT1 << OUT2 << vphi << vtheta;
+ }
+};
+
+void MZI_tb_run();