龙芯派-PMON
本文以龙芯派开发板为案例,介绍如何通过 PMON 启动 SylixOS 操作系统。2K 龙芯派资源丰富,采用龙芯最新一代 2 号处理器 2K1000,集成存储、显 示、音频、网络等功能,具有高性能,低功耗的特点。
PMON 简介
龙芯平台计算机目前多采用 PMON(Prom Monitor)作为基本的输入输出系统(BIOS)。PMON 具有强大而丰富的功能,包括硬件初始化、操作系统引导和硬件测试、程序调式等功能。它提供多种加载操作系统的方式,可以从优盘、光盘、tftp 服务器和硬盘等媒介加载;它提供对内存、串口、显示、网络、硬盘等的基础测试工具;此外,它还支持软件升级。
龙芯派开发板启动固化 SylixOS ,需要准备以下软硬件环境:
1 台有以太网口的电脑,并具备以下环境:
安装 windows 系统。
TFTP 功能,可安装 RealEvo-IDE 或者 Tftp32 软件。
FTP功能,可安装 RealEvo-IDE 或者 FileZilla。
串口调试工具(如 PuTTY),可以从IDE安装包 Tools 文件夹获取。解压 PuTTY 压缩包,不需要安装,直接双击 PUTTY.EXE 即可使用。
龙芯派开发板的启动镜像
bspls2k_lspi.elf
。1 个龙芯派开发板。
1 条网线、1 条串口线。分别将串口线、网线,连接开发板和 Windows 电脑,这样就可以通过电脑访问开发板,并对开发板进行串口连接、网络启动、SD 卡格式化等操作了。
查看串口号
通过 Windows 电脑的 设备管理器, 查看串口的端口号。如下图所示, 串口号 为 COM3 。如果无法识别串口,可能是没有安装此串口的驱动程序,需要下载并安装驱动。
串口连接
打开串口调试工具 PuTTY。找到 PuTTY 工具路径,然后双击 PUTTY.EXE。
配置连接。在 Session 页面,设置串口端口(要与准备工作查到的端口号保持一致)和波特率参数。
选择 Serial ,配置串口 Flow control 参数为 None 。
单击 Open。
给开发板重新上电,重新启动开发板。
注意:
务必在 PMON 倒计时到 0 之前,在键盘上按一下“c”键, 进入 PMON 命令行。您可以使用命令行与开发板进行交互。
网络启动
准备工作
- 启动 TFTP 服务:将龙芯派开发板与上位机通过网线连接,启动 TFTP 服务器,服务器传输目录指向
bspls2k_lspi.elf
所在的目录下。 - 关闭防火墙:如果 Windows 防火墙未关闭,则可能会阻止开发板与电脑之间的通信。但是,在关闭 Windows 防火墙之前,请确保您已经采取其他必要的安全措施来确保计算机的安全性和网络的安全性。特别是如果您正在连接到公共网络(如互联网),请始终注意安全问题,以避免潜在的安全风险。
操作步骤
通过以下步骤和指令进行 SylixOS 系统镜像的加载及启动。
注意:
以下操作均是在 PMON 指令操作界面,非 SylixOS 系统 Shell 界面。
设备上电,按
c
键进入 PMON 命令行(注意请输入小写 c)。输入以下指令,设置 PMON 下板卡 IP 地址,(IP 地址需要同主机 IP 在同一网段,指令中 IP 地址为参考)。
说明:
可以通过devls
命令确定网口对应 PMON 下的网络名称,以下步骤使用syn0
进行操作。ifconfig syn0 192.168.1.102;
通过 TFTP 方式及
load
命令加载 SylixOS 镜像文件,输入以下指令(指令中 IP 地址为上位机 IP,镜像名称为参考,根据实际镜像名称填写)。load tftp://192.168.1.100/bspls2k_lspi.elf;
使用
g
命令运行加载的 SylixOS 镜像文件,该命令会将 SylixOS 镜像文件搬运至板卡内存,同时启动 SylixOS 系统。g
磁盘格式化
完成以上操作,能够在龙芯派开发版运行 SylixOS 系统。但此时 Shell 界面显示 unknown
,标识操作系统并没有固化到具体的存储介质,需要进行文件系统格式化,才能够真正使用 SylixOS 操作系统。
使用
showmount
命令查看系统挂载 SD 卡情况,AUTO-Mount point show >>
一栏展示的是当前文件系统挂载的目录。说明:
板卡第一次进行文件系统启动,默认是不会有挂载设备。如果出现挂载了设备,需要先执行umount /media/hdd0
和umount /media/hdd1
将磁盘分区卸载。umount /media/hdd0 umount /media/hdd1
使用
fdisk
命令对硬盘进行分区,操作顺序如下图所示。使用
ll /dev/blk
查看 SylixOS 识别的硬盘设备名。ll /dev/blk
使用
fdsk – f /dev/blk/
hdd-0
对硬盘hdd-0
进行分区。- 分区数设置为
2
代表两个分区(最多支持 4 个分区)。 - 第一分区对齐值为
4096
(可选为 4K、8K …,这里只能使用 4096、8192 …)。 - 第一分区设置分区大小百分比为
10
(此处为百分比)。 - 第一分区是否为激活的分区,输入
y
。 - 第一分区文件系统类型选择
1
FAT 格式。 (第一个分区作为 boot 分区因此这里选择 FAT )。 - 第二分区大小百分比为
0
(0 代表剩余的全部空间)。 - 第二分区是否为激活的分区,输入 n。
- 第二分区文件系统类型选择
2
TPSFS 格式。 - 分区完成显示分区结果。
- 分区数设置为
执行
remount
命令重新挂载硬盘分区。 (对于一个新的磁盘设备,第一次使用 SylixOS 命令进行分区时,执行 remount 命令后会出现“Magic number error, mount failed”的提示,这是由于分区前的文件系统与新的文件系统不兼容的提示信息,可以忽略。)。remount /dev/blk/hdd-0
对上面分区的硬盘进行格式化,格式化的分区为 remount 执行后打印的分区名称 ,操作序列下图所示(remount 之后会产生 hdd1、hdd2,如果不确认可以 0、1、2 分区都进行格式化)。
mkfs /media/hdd1 mkfs /media/hdd2
执行
sync
命令将以上操作写入硬盘,reboot 重启。sync reboot
二次网启并固化
进行分区格式化后,重启硬件设备,串口界面会重新进入 PMON 界面。
设备上电,按 c 键进入 PMON 命令行(注意请输入小写 c)。
输入以下指令,设置 PMON 下板卡 IP 地址(IP 地址需要同主机 IP 在同一网段,指令中 IP 为参考)。
ifconfig syn0 192.168.1.102; # syn0为USB口对应PMON下的网络名称
通过 TFTP 加载镜像,输入以下指令(指令中 IP 为主机 IP,镜像名称为参考,根据实际镜像名称填写),刷新。
load tftp://192.168.1.100/bspls2kpcm2k01.elf;flush -di;
设置硬盘自启动环境变量,以下指令供参考,指令中镜像名称请按照实际镜像填写。
set al1 "/dev/fs/fat@wd0/bspls2kpcm2k01.elf"
运行加载的镜像。
g
固化自启动验证
重新进入 SylixOS 系统,通过FTP将本地镜像上传至 SylixOS 根文件系统,即 /boot
目录下。
将镜像上传至本地后执行以下操作完成硬盘镜像自启动。
确保将以上操作写入磁盘。
sync
执行
reboot
重启板卡。reboot
完成固化,重启即可从硬盘读取镜像加载进入系统。