返回首页

ZVM-E2000 v2.1发行版部署文档

一、ZVM-E2000v2.1简介

ZVM-E2000v2.1发行版是一款面向飞腾E2000处理器芯片的ZVM定制化版本,于2026年6月发布。其介绍如下:

(1)支持板卡与镜像说明

本节说明ZVM-E2000v2.1发行版支持的板卡、镜像下载入口和板卡适配文件的替换方式。

支持板卡列表

序号 板卡名称 说明
1 飞腾派E2000Q 默认支持板卡,直接使用ZVM发行版镜像包中的镜像即可运行

公共镜像

序号 镜像名称 下载链接
1 ZVM发行版镜像包ZVM-E2000v2.1 官方下载地址
2 可视化管理软件VisualZVMv2.1 官方下载地址

(2)灵活的多OS混合部署方式

支持同时启动多达3个客户OS。

客户OS Zephyr FreeRTOS Linux 是否支持AMP
可分配核数 1/2 1 1/2
内存大小 32MB 32MB 512MB ×

(3)灵活的多核OS支持

E2000为4核处理器,ZVM默认占用0核,客户OS可自主选择部署在其余的FT862核心上:

处理器型号 核号 分配说明
FTC310 0、1 ZVM
FTC664 2、3 客户OS灵活部署

(4)灵活的外设共享

支持外设完全虚拟化、半虚拟化等多种共享方式,解决复杂系统外设资源分配冲突问题:

序号 类别 支持的外设
1 完全虚拟化外设 UART
2 半虚拟化外设(VirtIO) SDMMC(Ramdisk)、XMAC

二、ZVM-E2000v2.1 部署教程

一、准备硬件

1.1 硬件清单

1.2 启动准备

ZVM-E2000 v2.1新增了TF卡启动方式,用户无需再使用TFTP启动,首先要做TF卡启动准备。飞腾Pi E2000开发板支持两种启动模式:

  • TF卡启动
  • EMMC启动
  • 注意:飞腾Pi E2000开发板必须要用任一存储介质,且其中烧录了至少一种官方系统镜像,否则开发板上电后将完全无法启动。

这里我们以TF卡启动为例。

首先按照飞腾派的官方文档,在TF卡中烧录飞腾官方任意Linux系统镜像,确保开发板可以正常启动。烧录好镜像的TF卡使用DiskGenius查看如下图所示:

可以看到TF卡中会存在一个EXT4分区,这个就是飞腾派 E2000开发板的官方启动分区,用于存储系统。还有一段空闲空间,我们要做的就是使用空闲空间创建一个ZVM启动分区。

首先选中空闲空间,右键选择“新建分区”,创建一个FAT32分区,大小建议为1GB以上,分区类型选择“主分区”,分区标记可以随意填写。如图所示:

点击“确定”后,点击“保存更改”,DiskGenius会提示是否保存更改,点击“是”即可。

提示是否格式化分区,点击“是”即可。

到此处,TF卡的ZVM启动分区就创建好了,接下来我们就可以将ZVM启动镜像复制到这个分区中。

二、获取ZVM镜像与软件

2.1 ZVM镜像

ZVM官方网站镜像下载中心获取完整启动镜像。

ZVM镜像位于 zvm_release/e2000 目录下:

文件名 说明
zephyr_e2000_cX_m32.bin Zephyr GuestOS镜像
freertos_e2000_c1_m32.bin FreeRTOS GuestOS镜像
Image_v5.15 Linux 内核镜像
linux_e2000q.dtb 设备树文件
initramfs_e2000.cpio.gz Initramfs 根文件系统
zvm_release_e2000v2.1.bin zvm_release_e2000v2.1启动镜像
boot.scr U-Boot启动引导文件

2.2 VisualZVM

VisualZVM_V2.1适用于 Windows 7/10/11 x86_64。

ZVM官方网站镜像下载中心可以下载VisualZVM软件包。

三、准备启动镜像

3.1 全部使用ZVM-E2000发行版镜像

ZVM-E2000 v2.1发行版完整镜像内置如下客户OS:

客户OS镜像 多核支持 CPU域 内存大小
Linux 1-2核 CPU1 512M
Zephyr RTOS 1-2核 CPU2-3 32M
FreeRTOS 仅支持单核 CPU2-3 32M

全部使用ZVM-E2000 v2.1发行版镜像可直接跳转至第四步。

3.2 用户自行编译客户OS

详见 客户OS编译指南,完成重新编译镜像后再执行第四步。

四、启动ZVM

4.1 硬件连接

  • 将网线连接开发板(ZVM-E2000 v2.1发行版不支持二者的热插拔,需要启动前插好)
  • 启动前先将zvm_release_e2000v2.1.bin和boot.scr直接放入TF卡的第二分区(飞腾Pi E2000不支持TF卡热插拔,启动前应先把文件放入并插上TF卡,否则开发板将无法启动)
  • 通过USB转串口连接调试终端(此处飞腾派波特率为115200)

4.2 使用VisualZVM启动ZVM

  • 启动VisualZVM 位于VisualZVM软件包 ./VisualZVM_V2.1.exe
  • 进入VisualZVM串口控制台

    选择Guest OS \ 交互

    选择端口 \ 设置波特率115200 \ 打开串口 \ 长按[长按烧录]按钮/长按Ctrl + C \ 开发板上电

    输出:

    Hit any key to stop autoboot:  0
    Phytium-Pi#<INTERRUPT
    Phytium-Pi#<INTERRUPT
    Phytium-Pi#<INTERRUPT
    Phytium-Pi#
  • 使用TF卡启动

    在Shell中输入以下命令,通过U-Boot启动:

    mmc dev 0 && load mmc 0:2 0xf5000000 /boot.scr && source 0xf5000000

    U-Boot启动时间从装载到启动在15秒左右。

    待输出ZVM Logo后,按下Enter,见到 zvm_host:~# 表示启动完毕,已经进入ZVM控制台:

4.3 不使用VisualZVM

  • 使用终端工具连接串口,以MobaXterm为例

    选择 Session \ Serial \ 选择Serial port \ 设置波特率115200 \ 打开串口

  • 启动前先将zvm_release_e2000v2.1.bin和boot.scr直接放入TF卡的第二分区(飞腾Pi E2000不支持TF卡热插拔,启动前应先把文件放入并插上TF卡,否则开发板将无法启动)
  • 进入U-Boot

    长按Ctrl + C \ 开发板上电

    输出:

    Hit any key to stop autoboot:  0
    Phytium-Pi#<INTERRUPT
    Phytium-Pi#<INTERRUPT
    Phytium-Pi#<INTERRUPT
    Phytium-Pi#<INTERRUPT
    Phytium-Pi#<INTERRUPT
    Phytium-Pi#
  • 使用TF卡启动

    在Shell中输入以下命令,通过U-Boot启动:

    mmc dev 0 && load mmc 0:2 0xf5000000 /boot.scr && source 0xf5000000

    U-Boot启动时间从装载到启动在15秒左右。

    待输出ZVM Logo后,按下Enter,见到 zvm_host:~# 表示启动完毕,已经进入ZVM控制台:

五、运行客户OS

5.1 VisualZVM方式

ZVM发行版提供PC端可视化工具VisualZVM,与控制器端ZVM通过以太网连接,内置ZVM串口控制台,支持客户OS全生命周期管理与运行态动态监控。

使用方式见 VisualZVM 使用指导

5.2 命令行方式

创建、运行、交互客户OS示例:

  • 创建单核内存大小为32M的Zephyr
    zvm create -t zephyr -c 1 -m 32
  • 可看到Zephyr客户OS的ID为0
    [ZVM INFO]:  |*********************************************|
    [ZVM INFO]:  |******  Create VM Successful!          ******|
    [ZVM INFO]:  |******          VM INFO                ******|
    [ZVM INFO]:  |******  VM-NAME:     zephyr_os-0       ******|
    [ZVM INFO]:  |******  VM-ID:       0                 ******|
    [ZVM INFO]:  |******  VCPU NUM:    1                 ******|
    [ZVM INFO]:  |******  VMEM SIZE:   128         (M)   ******|
    [ZVM INFO]:  |*********************************************|
  • 运行这个客户OS
    zvm run -n 0
  • 进入虚拟串口控制台
    zvm_host:~#zvm look 0
    Connecting VM ID:0
    
    uart:~#kernel version
    Zephyr version 4.0.0
    uart:~#
  • Ctrl + X 退出
    uart:~#disconnect
    
    zvm_host:~#
  • 更多操作输入 zvm 查看
    zvm_host:~#zvm
    zvm - ZVM manager command. Some subcommand you can choice as below:
    
    Subcommands:
    create     : Create a vm.
                 You can use 'zvm create -t zephyr' or 'linux' to create a new vm.
    
    new        : Deprecated, Same as command create, keep it for backward
                 compatibility.
                 You can use 'zvm new -t zephyr' or 'linux' to create a new vm.
    
    run        : Run a created vm.
                 You can use 'zvm run -n 0' to run vm with vmid equal to 0.
    
    pause      : Pause a vm.
                 You can use 'zvm pause -n 0' to pause vm with vmid equal to 0.
    
    delete     : Delete a vm.
                 You can use 'zvm delete -n 0' to delete vm with vmid equal to 0.
    
    info       : List all vm info.
                 You can use 'zvm info' to list all vm info.
                 You can use 'zvm info -n 0' to list vm info with vmid equal to 0.
    
    update     : Update vm.
                 vm update is not supported now.
    
    manager    : Manager vm.
                 You can open the ZVM management software on the PC.
    
    tcpreload  : Manager vm.
                 You can restart the sockets between ZVM management software on
                 the PC and ZVM.
    
    look       : Switch virtual serial.
                 You can use 'zvm look 0' to connect available virtual serial.

三、ZVM特性试用

(1)内置VirtIO框架

详见 VirtIO使用手册

(2)跨域高速通信Zshm

详见 Zshm使用手册