模拟器运行介绍
参考 readme.txt -> Quick Start for qemu run 章节,模拟器包含在 toolchain_thead_xxx.tar.xz 中,一般解压到 host 目录下
基于开源 Qemu 项目开发,提供 T-HEAD CPU 基础功能验证环境,支持 2 种架构,5 款 CPU:
- RISC-V 架构: 906/910
- C-SKY 架构: 807/810/860
RISC-V Qemu 命令介绍
LD_LIBRARY_PATH=./host/lib ./host/csky-qemu/bin/qemu-system-riscv64 -M virt -kernel fw_jump.elf -device loader,file=Image,addr=0x80200000 -append "rootwait root=/dev/vda ro" -drive file=rootfs.ext2,format=raw,id=hd0 -device virtio-blk-device,drive=hd0 -nographic -smp 1
- LD_LIBRARY_PATH=./host/lib: 增加指定运行库
- qemu-system-riscv64: RISC-V QEMU 可执行命令
- -M virt: QEMU 标准,指定板型号,这里是著名的 virt machine
- -kernel fw_jump.elf: 指定 RISC-V Opensbi 为加载程序,此为 RISC-V QEMU 标准
- -device loader, file=Image,addr=0x80200000: QEMU 标准 loader 设备,将 Image 文件,加载到 0x80200000 处
- -append "rootwait root=/dev/vda ro": 指定 linux cmdline
- -drive file=rootfs.ext2,format=raw,id=hd0: 指定 rootfs.ext2 为磁盘设备,对应 cmdline 中 root=/dev/vda 设置该设备为根文件系统
- -device virtio-blk-device,drive=hd0: 同上确定 -drive 中 id=hd0 的具体设备类型
- -nographic: 禁用图形 framebuffer
- -smp 1: 指定 cpu 数量
C-SKY Qemu 命令介绍
./host/csky-qemu/bin/qemu-system-cskyv2 -M virt -cpu c860v -kernel Image -nographic -append "console=ttyS0,115200 rdinit=/sbin/init rootwait root=/dev/vda ro" -drive file=rootfs.ext2,format=raw,id=hd0 -device virtio-blk-device,drive=hd0 -smp 1
- qemu-system-cskyv2: C-SKY QEMU 可执行命令
- -M virt: QEMU 标准,指定板型号,这里是著名的 virt machine
- -cpu c807/c810/c860: 指定 cpu 型号
- -kernel Image: 指定 C-SKY Linux 镜像,不需要 bootloader 辅助启动
- -append "console=ttyS0,115200 rdinit=/sbin/init rootwait root=/dev/vda ro": 指定 linux cmdline
- -drive file=rootfs.ext2,format=raw,id=hd0: 指定 rootfs.ext2 为磁盘设备,对应 cmdline 中 root=/dev/vda 设置该设备为根文件系统
- -device virtio-blk-device,drive=hd0: 同上确定 -drive 中 id=hd0 的具体设备类型
- -nographic: 禁用图形 framebuffer
- -smp 1: 指定 cpu 数量