虚拟原型驱动嵌入式软件调试

📚 共计 30 章节
01
虚拟原型概述
什么是虚拟原型 · 与硬件原型对比 · 在嵌入式开发中的价值
概念对比
02
虚拟原型工具链
QEMU · Synopsys VDK · ARM Fast Models · 选型策略
工具选型
03
搭建第一个虚拟原型环境
基于QEMU搭建ARM Cortex-M3 · 编译与运行裸机程序
实操QEMU
04
虚拟原型调试基础
GDB远程调试 · 连接QEMU与GDB · 断点与单步执行
调试GDB
05
外设模型与仿真
GPIO · UART · 定时器模型的虚拟化实现与调试
外设模型
06
中断与异常处理调试
中断向量表仿真 · 触发与响应 · 嵌套中断处理
中断异常
07
内存映射与MMU调试
内存映射配置 · MMU仿真 · 页表调试与TLB分析
MMU内存
08
DMA与数据传输调试
DMA控制器模型 · 描述符链仿真 · 数据搬移调试
DMA传输
09
多核与SMP调试
多核启动仿真 · 核间通信(IPI) · 缓存一致性模拟
多核SMP
10
实时操作系统(RTOS)调试
FreeRTOS任务调度 · 栈溢出检测 · 信号量与队列调试
RTOSFreeRTOS
11
Bootloader与启动流程调试
引导加载仿真 · Flash编程模拟 · 启动时间分析
Boot启动
12
电源管理与低功耗调试
WFI/WFE指令仿真 · 电源状态切换 · 功耗估算
低功耗电源
13
时钟与复位调试
时钟树仿真 · PLL配置调试 · 复位序列模拟
时钟复位
14
安全机制调试
TrustZone仿真 · 安全/非安全切换 · 安全启动验证
安全TrustZone
15
性能分析与优化
指令执行统计 · Cache命中率 · 分支预测模拟
性能优化
16
覆盖率与测试
代码覆盖率收集 · 条件覆盖率 · MC/DC覆盖率仿真
测试覆盖率
17
故障注入与鲁棒性测试
单比特翻转注入 · 总线错误模拟 · 看门狗响应测试
故障鲁棒性
18
外设交互调试
SPI/I2C总线仿真 · 传感器数据模拟 · DMA与外设协同
外设总线
19
网络协议栈调试
以太网控制器模型 · TCP/IP协议栈仿真 · 网络延迟模拟
网络TCP/IP
20
文件系统调试
Flash文件系统仿真 · FAT32/EXT4模型 · 读写性能分析
文件系统存储
21
图形与显示调试
LCD控制器仿真 · 帧缓冲调试 · GPU模型基础
图形显示
22
音频子系统调试
I2S接口仿真 · 音频编解码器模型 · 音频延迟分析
音频I2S
23
USB协议栈调试
USB主机/设备控制器模型 · 枚举过程仿真 · 批量传输调试
USB协议
24
CAN总线调试
CAN控制器模型 · 报文收发仿真 · 错误帧模拟
CAN总线
25
虚拟原型自动化测试
Python脚本驱动仿真 · CI/CD集成 · 回归测试框架
自动化CI/CD
26
虚拟原型与HIL协同
虚拟原型与硬件在环联合仿真 · 接口同步机制
HIL协同
27
虚拟原型在DevOps中的应用
持续集成中的虚拟原型 · 版本管理与构建自动化
DevOpsCI
28
虚拟原型性能加速
动态二进制翻译优化 · 多线程仿真加速 · GPU加速仿真
加速性能
29
虚拟原型调试高级技巧
逆向执行 · 时间旅行调试 · 非确定性复现
高级调试
30
虚拟原型项目实战
从需求分析到交付全流程案例 · 常见问题与解决方案
实战案例