在实现一个CPU架构的QEMU前端指令翻译的时候会用到各种tcg变量,本文整理这些 变量的基本语意,分析背后的qemu代码。本文分析基于的QEMU版本是6.2.0, 基于riscv CPU体系结构。
qemu tcg取指令逻辑分析
发表于
本文分析qemu tcg里vCPU取指令实现逻辑的分析,基于的qemu版本是v7.1.50,分析基于riscv平台。
qemu tlb实现分析
发表于
更新于
本文分析qemu tcg里tlb实现的逻辑,分析基于的qemu版本是v7.1.50, 基于riscv构架。
RISCV DTS描述分析
发表于
更新于
本文分析riscv的dts描述格式,分析用的是riscv qemu virt平台,我们将分析不同 启动参数下生成的dts格式,重点分析CPU、中断控制器以及PCIe控制器的相关定义。 依赖的qemu版本是v7.1.50,依赖的内核版本是v6.1。
qemu tcg goto_tb分析
发表于
更新于
分析goto tb什么要在一个page内,使用的qemu代码的版本是v7.1.50,分析基于riscv构架。
git submodule的使用
发表于
本文介绍git中submodule的基本逻辑以及使用方法。
Linux内核镜像头分析
发表于
本文分析Linux内核镜像中Image头部格式的一些相关问题,使用的硬件构架是riscv, 分析中使用的内核版本使用v6.1
riscv qemu virt平台CPU拓扑分析
发表于
更新于
本文分析riscv qemu virt平台上和CPU相关的拓扑,分析基于qemu v7.1.50代码。
CPU核中断设计基本逻辑
发表于
本文梳理CPU核在中断上的高层逻辑,分析围绕软硬件接口,而不关注硬件内部的实现 逻辑。本文是高层逻辑上的分析,不会涉及具体体系架构上的中断设计,如果有必要, 我们用riscv作为具体体系构架分析具体内容。
riscv plic基本逻辑分析
发表于
更新于
本文分析riscv下plic中断控制器的基本逻辑,分析基于plic-1.0.0_rc5, qemu代码基于v7.1.50, Linux内核代码基于v6.1。