虚拟原型搭建与软硬件协同仿真
📚 共计 30 章节
01
虚拟原型概述
什么是虚拟原型 · 与物理原型对比 · SoC开发价值
概念
导论
02
虚拟原型开发环境搭建
安装QEMU · 配置SystemC · 交叉编译工具链
环境
工具链
03
TLM-2.0基础
事务级建模 · initiator/target/socket · 内存映射模型
TLM
接口
04
SystemC模块设计
SC_MODULE · SC_CTOR · SC_THREAD/SC_METHOD
SystemC
进程
05
CPU虚拟化模型
QEMU TCG · RISC-V虚拟CPU · 裸机程序加载
CPU
QEMU
06
外设模型开发
GPIO控制器 · PLIC中断 · UART串口模型
外设
中断
07
总线与互联模型
TileLink协议 · Crossbar · AXI4-Lite从设备
总线
互联
08
内存子系统建模
SRAM · DDR控制器 · Cache一致性(MSI)
内存
Cache
09
时钟与复位域
sc_clock · 异步复位同步释放 · 多时钟域同步器
时钟
复位
10
调试与追踪
GDB远程调试 · printf调试桩 · 总线事务日志
调试
追踪
11
固件与Bootloader仿真
OpenSBI启动 · U-Boot运行 · Linux内核启动
固件
启动
12
设备树(DTB)生成
设备树语法 · 编写DTS · 编译加载DTB
设备树
DTS
13
中断处理仿真
PLIC分发 · CPU异常处理 · 中断延迟测量
中断
PLIC
14
DMA控制器建模
DMA引擎 · 内存搬运 · CPU协同
DMA
搬运
15
定时器与PWM模型
mtime/mtimecmp · PWM波形 · 周期中断
定时器
PWM
16
I2C/SPI外设仿真
I2C主控制器 · SPI Flash · 读写验证
I2C
SPI
17
网络控制器仿真
E1000网卡 · tap/tun后端 · TCP/IP交互
网络
E1000
18
GPU/显示控制器模型
帧缓冲 · VGA时序 · 像素渲染
GPU
显示
19
功耗与热模型
功耗状态机 · DVFS仿真 · 热插拔模拟
功耗
热模型
20
虚拟原型性能分析
仿真速度 · 热点识别 · 并行仿真(MTTCG)
性能
优化
21
软硬件接口定义
MMIO映射 · 寄存器规范 · 头文件自动生成
接口
MMIO
22
裸机驱动开发
GPIO点灯 · UART轮询 · 中断驱动
驱动
裸机
23
RTOS移植与仿真
FreeRTOS运行 · 任务调度可视化 · Tick仿真
RTOS
FreeRTOS
24
Linux设备驱动开发
字符设备 · Platform驱动 · 中断处理
Linux
驱动
25
协同仿真接口
Verilator+SystemC · RTL替换 · 混合精度
协同
Verilator
26
虚拟原型测试
Catch2框架 · 回归测试 · 覆盖率分析
测试
覆盖率
27
CI/CD集成
GitLab CI · 每日构建 · 性能回归报告
CI/CD
自动化
28
多核虚拟原型
SMP启动 · 原子操作 · 缓存一致性
多核
SMP
29
安全与隔离
TrustZone · 安全/非安全切换 · 内存隔离
安全
隔离
30
虚拟原型项目实战
从需求到交付 · AIoT虚拟平台 · 总结展望
实战
项目