第 16 章:多核调试
学习目标
- 调试多核系统
- 分析竞争条件
- 使用调试工具
16.1 常见问题
- 死锁:两个核互相等待
- 活锁:不断重试
- 数据竞争:未同步访问
16.2 调试方法
// 记录每个核的状态
reg [31:0] core0_pc, core1_pc;
reg [31:0] core0_state, core1_state;
思考:如何重现多核 bug?
// 记录每个核的状态
reg [31:0] core0_pc, core1_pc;
reg [31:0] core0_state, core1_state;
思考:如何重现多核 bug?