// 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