aboutsummaryrefslogtreecommitdiff
path: root/core/obj_dir/Vtb.h
diff options
context:
space:
mode:
Diffstat (limited to 'core/obj_dir/Vtb.h')
-rw-r--r--core/obj_dir/Vtb.h88
1 files changed, 88 insertions, 0 deletions
diff --git a/core/obj_dir/Vtb.h b/core/obj_dir/Vtb.h
new file mode 100644
index 0000000..e1386e3
--- /dev/null
+++ b/core/obj_dir/Vtb.h
@@ -0,0 +1,88 @@
+// Verilated -*- C++ -*-
+// DESCRIPTION: Verilator output: Primary design header
+//
+// This header should be included by all source files instantiating the design.
+// The class here is then constructed to instantiate the design.
+// See the Verilator manual for examples.
+
+#ifndef _VTB_H_
+#define _VTB_H_ // guard
+
+#include "verilated_heavy.h"
+
+//==========
+
+class Vtb__Syms;
+
+//----------
+
+VL_MODULE(Vtb) {
+ public:
+
+ // LOCAL SIGNALS
+ // Internals; generally not touched by application code
+ CData/*4:0*/ tb__DOT__read1;
+ CData/*4:0*/ tb__DOT__read2;
+ CData/*4:0*/ tb__DOT__write;
+ QData/*63:0*/ tb__DOT__val1;
+ QData/*63:0*/ tb__DOT__val2;
+ QData/*63:0*/ tb__DOT__write_data;
+ QData/*63:0*/ tb__DOT__r__DOT__reg_array[32];
+
+ // LOCAL VARIABLES
+ // Internals; generally not touched by application code
+ CData/*4:0*/ __Vtask_tb__DOT__r__DOT__write_reg__0__regid;
+ QData/*63:0*/ __Vtask_tb__DOT__r__DOT__write_reg__0__data;
+ QData/*63:0*/ __Vchglast__TOP__tb__DOT__val1;
+ QData/*63:0*/ __Vchglast__TOP__tb__DOT__val2;
+
+ // INTERNAL VARIABLES
+ // Internals; generally not touched by application code
+ Vtb__Syms* __VlSymsp; // Symbol table
+
+ // CONSTRUCTORS
+ private:
+ VL_UNCOPYABLE(Vtb); ///< Copying not allowed
+ public:
+ /// Construct the model; called by application code
+ /// The special name may be used to make a wrapper with a
+ /// single model invisible with respect to DPI scope names.
+ Vtb(const char* name = "TOP");
+ /// Destroy the model; called (often implicitly) by application code
+ ~Vtb();
+
+ // API METHODS
+ /// Evaluate the model. Application must call when inputs change.
+ void eval() { eval_step(); }
+ /// Evaluate when calling multiple units/models per time step.
+ void eval_step();
+ /// Evaluate at end of a timestep for tracing, when using eval_step().
+ /// Application must call after all eval() and before time changes.
+ void eval_end_step() {}
+ /// Simulation complete, run final blocks. Application must call on completion.
+ void final();
+
+ // INTERNAL METHODS
+ static void _eval_initial_loop(Vtb__Syms* __restrict vlSymsp);
+ void __Vconfigure(Vtb__Syms* symsp, bool first);
+ private:
+ static QData _change_request(Vtb__Syms* __restrict vlSymsp);
+ static QData _change_request_1(Vtb__Syms* __restrict vlSymsp);
+ void _ctor_var_reset() VL_ATTR_COLD;
+ public:
+ static void _eval(Vtb__Syms* __restrict vlSymsp);
+ private:
+#ifdef VL_DEBUG
+ void _eval_debug_assertions();
+#endif // VL_DEBUG
+ public:
+ static void _eval_initial(Vtb__Syms* __restrict vlSymsp) VL_ATTR_COLD;
+ static void _eval_settle(Vtb__Syms* __restrict vlSymsp) VL_ATTR_COLD;
+ static void _initial__TOP__1(Vtb__Syms* __restrict vlSymsp) VL_ATTR_COLD;
+ static void _settle__TOP__2(Vtb__Syms* __restrict vlSymsp) VL_ATTR_COLD;
+} VL_ATTR_ALIGNED(VL_CACHE_LINE_BYTES);
+
+//----------
+
+
+#endif // guard