19class VerilatedContext;
56 void reset(
int cycles = 1);
135 uint32_t
get_reg(
int idx)
const;
139 std::unique_ptr<VCoreTop>
top;
uint32_t get_commit_inst() const
获取当前正提交的机器级精确指令码码字 (Instruction Code)
定义 core.cpp:149
std::unique_ptr< VerilatedContext > contextp
定义 core.hpp:138
bool is_commit_csr_wen() const
指示当前提交指令是否发生了一次有效的 CSR 写操作
定义 core.cpp:169
uint8_t get_commit_rd() const
获取被修改目标架构寄存器的索引映射
定义 core.cpp:141
void eval()
处理 DPI 逻辑绑定并应用所有组合逻辑的顺序计算和传播
定义 core.cpp:109
uint32_t get_commit_pc() const
获取成功提交指令的 PC (程序计数器) 值
定义 core.cpp:133
uint32_t get_commit_csr_wdata() const
获取提交阶段写入到对应 CSR 寄存器中的数据
定义 core.cpp:165
void step()
推进一个完整的硬件时钟周期 (Tick/Step)
定义 core.cpp:114
CoreState state
保存仿真器目前的运行状态
定义 core.hpp:44
uint32_t get_commit_csr_waddr() const
获取提交阶段所指向的 CSR 寄存器目标地址
定义 core.cpp:161
Core(guest_mem *mem_instance=nullptr)
构造函数:初始化核心实例
定义 core.cpp:92
bool is_commit_store() const
指示提交的指令是否执行了内存存储 (Store) 操作
定义 core.cpp:153
~Core()
析构函数:销毁 Verilator 实例以及相关的运行追踪 (Trace)
定义 core.cpp:105
bool is_commit_wen() const
判定寄存器写回逻辑是否有效 (Write Enable)
定义 core.cpp:145
void reset(int cycles=1)
异步触发系统复位信号
定义 core.cpp:121
uint32_t get_reg(int idx) const
通过底层寄存器索引读取目标寄存器存储的值
定义 core.cpp:205
std::unique_ptr< VCoreTop > top
定义 core.hpp:139
bool is_commit_valid() const
检查当前周期是否有一条指令成功越过了写回 (Write-back) 阶段并真正提交 (Commit)
定义 core.cpp:129
bool is_commit_halt() const
指示提交的指令是否触发了核心挂起或陷阱 (如 EBREAK 指令)
定义 core.cpp:157
void print_registers() const
打印当前 CPU 矩阵各寄存器的文本格式概览,直观呈现核心状态信息
定义 core.cpp:180
uint32_t get_commit_wdata() const
获取写入内部 GPR (通用寄存器) 的原始数据
定义 core.cpp:137
uint32_t get_reg_by_name(const std::string &name) const
利用字符串字面量键值查找并解析硬件内部的直接变量状态
定义 core.cpp:192
内存子系统抽象层 (Guest Memory Subsystem)
定义 mem.hpp:29
CoreState
仿真核心 (Core) 的当前运行状态枚举
定义 core.hpp:10
@ STOPPED
核心已停止或处于暂停状态
定义 core.hpp:11
@ RUNNING
核心正在正常运行并执行指令
定义 core.hpp:12
@ ABORT
核心遇到了致命的异常或错误 (如段错误或未实现指令)
定义 core.hpp:14
@ END
核心遇到正常结束标志 (如 EBREAK 指令) 并成功停止
定义 core.hpp:13