前言
非常感谢电子发烧友和龙芯中科,让我有机会试用<真正国产>开发板---龙芯2K0300蜂鸟板。
据官方介绍,龙芯2K0300芯片是一款基于LA264处理器核的多功能SoC芯片,可广泛适用于工业控制、通信设备、信息家电和物联网等领域。该芯片采用高集成度设计,可提供丰富的功能接口,满足多场景应用需求,同时支持低功耗技术,能够在低能耗条件下进行高效处理。芯片主频1GHz,片内集成16位DDR4内存控制器,并集成丰富的外设接口:USB2.0、GMAC、LCD显示、I2S音频、高速SPI/QSPI、ADC、eMMC、SDIO和其他工控领域常用接口。
最重要的是,LA264是64位的LoongArch指令集,支持LoongArch基础指令集和可选的128位向量扩展指令。LA264每GHz的通用处理性能高于ARM A53,大致是A55的水平,浮点运算性能比A55更高。这款IP核适合工控设备,凡是ARM A53/A55的性能适用的场景,换成LA264都没问题。
板卡介绍
官方宣传图
实物图
浅显评价
1 调试串口接口,使用最新的Type-C接口,值得称赞(可以把调试串口接口分为3代,一代是连接DB9时代,二代时,连接UART,三代是Type-C接口)
2 电源,直接使用Type-C可以供电,这也是一个可赞的设计,极大的方便开发、调试简单的功能
3 显示,只有LCD接口,这个设计有点鸡肋,一般的开发板,都是HDMI接口,因为HDMI接口的显示器随处可见,不出意外,本次试用,很多人会对LCD显示发愁,如果板子上有HDMI接口,相信人人都会有HDMI设备(如电视机)
4 网络,虽然带了有线网络,但没有无线网络,有点可惜
5 接口丰富,CAN(4)_、PWM(4)、SPI(3)、I2C(4)、UART(3)、AI(8)、I2S(1)、GPIO等
6 没有芯片的数据手册,非常遗憾
上电启动
串口打印
上电串口打印,如下所示,截取关键信息,基本上可以分为第1阶段(SPL或BL1),uboot阶段,内核阶段,根文件系统应用初始化阶段,最后通过uname查看内核版本和编译信息,
LoongArch Initializing ...
RAM(Cache AS RAM) Initializing ...
Lock Scache Done.
Copy spl code to locked scache...
Jump to board_init_f...
Enter board_init_f...
_ __ __ _ _ ___ ___ __ _ _ / ___ __ \
| | | | | |\ | | __ [__ | | |\ | | | __ | \ |
|___ |__| |__| | \| |__] ___] |__| | \| \ |__] |__/ /
============ddr4 init and training done!========
Trying to boot from BootSpace
U-boot start ...
Jump to board_init_f...
U-Boot 2022.04-v2.1.0-00429-g33df0614 (Jun 17 2024 - 18:01:41 +0800), Build: jenkins-u-boot-2022.04-2k300-mini-dp-19
CPU: LA264
Speed: Cpu @ 997 MHz/ Mem @ 800 MHz/ Bus @ 200 MHz
Model: loongson-2k300
Board: LS2K300-MINI-DP
DRAM: 512 MiB
512 MiB
...........
[ 0.000000] Linux version 5.10.0.lsgd-ga7f3115b8c73 (loongson@loongson) (loongarch64-linux-gnu-gcc (LoongArch GNU toolchain rc1.3-1 (20240425)) 8.3.0, GNU ld (LoongArch GNU toolchain rc1.3-1 20240425) 2.31.1.20190122)
[ 0.000000] Primary instruction cache 32kB, 4-way, VIPT, linesize 64 bytes.
[ 0.000000] Primary data cache 32kB, 4-way, VIPT, no aliases, linesize 64 bytes
[ 0.000000] Unified victim cache 1024kB 16-way, linesize 64 bytes.
.................
[ 5.982391] Run /linuxrc as init process
[ 6.294674] systemd[1]: systemd 247 running in system mode. (-PAM -AUDIT -SELINUX -IMA -APPARMOR -SMACK -SYSVINIT -UTMP -LIBCRYPTSETUP +GCRYPT +GNUTLS -ACL +XZ -LZ4 -ZSTD -SECCOMP +BLKID -ELFUTILS +KMOD -IDN2 -IDN +PCRE2 default-hierarchy=hybrid)
[ 6.316931] systemd[1]: Detected architecture loongarch64.
Welcome to LoongOS 2021.02.4!
.......................
Welcome to Loongson-gd
LS-GD login: root (automatic login)
Rootfs Resized.
[root@LS-GD ~]
Linux LS-GD 5.10.0.lsgd-ga7f3115b8c73
[root@LS-GD ~]
boot_run.sh logo_player loongson_test_case ls2_sys_config_tool xboard
板卡显示
心跳灯闪烁
开发环境
Ubuntu下载
官方已经提供了配置好的开发环境Ubuntu,只需要安装一个虚拟机,即可以运行、开发
下载后,通过虚拟机打开,
查看官方配置,使用Ubuntu 18.04,已经安装了交叉编译环境,并下载好了uboot、kernel、buildroot(含dl)等,为开发者省去很多搭建环境的时候,尤其对初学者,非常友好。
loongson@loongson-virtual-machine:~$ uname -a
Linux loongson-virtual-machine 4.18.0-15-generic
GNU/Linux
loongson@loongson-virtual-machine:~$ ls /opt/ -al
总用量 20
drwxr-xr-x 4 root
root 4096 7月 27
17:38 .
drwxr-xr-x 24 root root 4096 9月 6
2022 ..
drwxr-xr-x 8 root
root 4096 6月 7
10:42 loongson-gnu-toolchain-8.3-x86_64-loongarch64-linux-gnu-rc1.3-1
lrwxrwxrwx 1 root
root 63 5月 17 08:24
loongson-gnu-toolchain-x86_64-loongarch64-linux-gnu ->
loongson-gnu-toolchain-8.3-x86_64-loongarch64-linux-gnu-rc1.3-1
drwxr-xr-x 3 root
root 4096 5月
28 2021 mips64el-linux-gcc-8.x
loongson@loongson-virtual-machine:~$ ls workspace/
buildroot
dl-3862614a4c-240725.tar.xz
linux-5.10 set_env.sh u-boot
对于Qt开发者,默认的环境也已经安装了Qt Creator,并进行了配置测试
loongson@loongson-virtual-machine:~$ ls Desktop/Qt-test/
build-Qt-test-Desktop_Qt_5_12_11_GCC_64bit-Debug Qt-test
build-Qt-test-loongarch64-Debug
环境验证
主机验证
打开工程
配置编译
编译运行
蜂鸟板验证
配置编译
编译运行
编译报如下错误,提示找不到编译器
重新设置正确的编译器路径
再次编译,通过
板卡运行
[root@LS-GD xboard]# ./Qt-test
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to
参考
官网龙芯2K0300
龙芯IP核
龙芯光盘蜂鸟开发板光盘资料