从零开始学习 sg200x 多核开发之 milkv-duo256 编译运行 sophpi

sophpi 是 算能官方针对 sg200x 系列的 SDK 仓库 https://github.com/sophgo/sophpi ,支持 cv180x、cv81x、sg200x 系列的芯片。

SG2002 简介

SG2002 是面向边缘智能监控 IP 摄像机、智能猫眼门锁、可视门铃、居家智能等多项产品领域而推出的高性能、低功耗芯片,集成了 H.264 视频压缩编解码器, H.265 视频压缩编码器和 ISP;支持 HDR 宽动态、3D 降噪、除雾、镜头畸变校正等多种图像增强和矫正算法,为客户提供专业级的视频图像质量

芯片更集成了自研 TPU,在 8 位整数运算下,可提供 1.0TOPS 的算力。特殊设计的 TPU 调度引擎能有效地为所有的张量处理器核心提供极高的带宽数据流。此外也为用户提供了强大的深度学习模型编译器和软件 SDK 开发包。主流的深度学习框架,比如 Caffe 和 Tensorflow,可以轻松地移植到其平台上。除此之外,还提供了安全启动,安全更新,安全加密等,为用户从开发、量产、产品应用,提供一系列安全解决方案。

Milk-V Duo 256M 是 Duo 的升级版本,内存提升至 256M,满足需要更大内存容量的应用。采用 SG2002 计算系列芯片,计算能力提升至 1.0TOPS@INT8。它可以实现 RISC-V/ARM 架构之间的无缝切换,并支持双系统同时运行。此外,它还包含 SPI、UART 等一系列丰富的 GPIO 接口,适合边缘智能监控领域的各种硬件开发,包括 IP 摄像头、智能猫眼锁、可视门铃等。

编译

  1. 下载
shell 复制代码
$ git clone -b sg200x-evb git@github.com:sophgo/sophpi.git
$ cd sophpi
$ ./scripts/repo_clone.sh --gitclone scripts/subtree.xml

仓库采用子仓库的形式,子仓库很多,很大,下载很考验网速和耐心。。。

  1. 配置
    sophpi 仓库默认没有选择 rootfs,需要手动配置。
shell 复制代码
$ source build/cvisetup.sh
$ defconfig sg2002_wevb_riscv64_sd
$ menuconfig
    ROOTFS options --->
    [*] Enable buildroot generate rootfs   

否则,编译出来的系统会非常小,连基本的文件系统都没有,无法正常启动。 查看 build/.config 文件,可以看到如下内容:

bash 复制代码
#
# ROOTFS options
#
CONFIG_SKIP_RAMDISK=y
# CONFIG_ROOTFS_OVERLAYFS is not set
# CONFIG_BUILDROOT_FS is not set
# CONFIG_USE_4K_ERASE_SIZE_FOR_JFFS2 is not set
# end of ROOTFS options

手工修改 sophpi\build\boards\cv181x\sg2002_wevb_riscv64_sd\sg2002_wevb_riscv64_sd_defconfig 文件,修改以下内容:

bash 复制代码
CONFIG_BUILDROOT_FS=y
  1. 编译
shell 复制代码
$ source build/cvisetup.sh
$ defconfig sg2002_wevb_riscv64_sd
$ clean_all
$ build_all
$ pack_burn_image

默认编译出来的版本是最小系统,只能通过串口终端完成最基本操作。

烧录镜像

Windows 下推荐使用 BalenaEtcher 烧录系统镜像, 可在 https://etcher.balena.io/ ,下载安装。

镜像文件在 install/soc_sg2002_wevb_riscv64_sd 目录下,文件名为 sophpi-duo-20240912-0719.img,烧录到 SD 卡即可。

分步骤编译

  1. 编译
shell 复制代码
$ source build/cvisetup.sh
$ defconfig sg2002_wevb_riscv64_sd
$ build_fsbl        # 编译 FSBL
$ build_uboot       # 编译 UBOOT
$ build_kernel      # 编译 LINUX Kernel

更多命令可以参考 build/cvisetup.sh 文件。

  1. 打包镜像
shell 复制代码
$ pack_burn_image

如果你对 sg2002/sg2000/cv1800b 等 RISC-V 芯片开发有兴趣,可以加入QQ群:920973004 交流

相关推荐
嵌入式小企鹅2 小时前
国产算力突破、RISC-V车规生态成型、AI编程工具免费化浪潮
学习·开源·ai编程·risc-v·昇腾·deepseek v4
sinovoip8 天前
香蕉派开源社区联合进迭进空重磅打造: BPI‑SM10(K3-Com260) 和 K3 Pico‑ITX 计算机将于5月11日全球发货
人工智能·开源·risc-v
嵌入式小企鹅8 天前
RISC-V车规专委会成立、AI模型集中开源、半导体产能加速爬坡
人工智能·学习·ai·程序员·算力·risc-v·半导体
国科安芯8 天前
空间激光通信系统中抗辐射 MCU 芯片应用研究
单片机·嵌入式硬件·架构·risc-v·安全性测试
极创信息9 天前
信创领域五种主流CPU架构(X86 / ARM / RISC-V / MIPS / LoongArch)
java·arm开发·数据库·spring boot·mysql·软件工程·risc-v
嵌入式小企鹅10 天前
CPU需求变化、RISC-V安全方案、DeepSeek V4适配、太空算力动态
人工智能·驱动开发·华为·开源·算力·risc-v
国科安芯12 天前
商业航天与航空安全场景下抗辐射 MCU 选型、应用实践及发展趋势
单片机·嵌入式硬件·无人机·cocos2d·risc-v
国科安芯12 天前
空间辐射环境下抗辐射 MCU 可靠性机理及航空安全应用研究综述
单片机·嵌入式硬件·macos·无人机·cocos2d·risc-v
国科安芯12 天前
航空安全关键系统抗辐射 MCU 加固技术、工程实现与典型应用
单片机·嵌入式硬件·无人机·cocos2d·risc-v
Captain_Data13 天前
AI 12小时设计CPU完整解析:从219字到RISC-V内核的技术突破
人工智能·python·ai·大模型·芯片设计·risc-v