1. 环境准备与SDK配置
在开始V851s Lizard的NPU开发之前,环境搭建是绕不开的第一步。我最初尝试用虚拟机,但编译SDK时总遇到性能瓶颈,后来干脆装了Ubuntu 22.04物理机,效率直接翻倍。这里分享几个关键步骤,帮你避开我踩过的坑。
SDK获取与编译
全志官方SDK需要通过repo工具拉取,但V851s的NPU扩展包在公开渠道很难找。我最后是在淘宝客服提供的预配置虚拟机里找到了这个关键文件(注:后来我也上传到了Git仓库方便大家下载)。编译时注意两点:一是首次编译务必用make -j1 V=s单线程模式,便于定位错误;二是遇到文件权限问题记得用chmod +x给脚本添加执行权限。有一次邪门的编译错误,多线程报错但加V=s参数后就正常了,估计是日志输出缓冲的问题。
烧录与调试
推荐直接用Linux平台的LiveSuit工具烧录,比Windows方案更稳定。遇到过烧录卡在10%的情况,最后发现是分区表大小超过了NAND Flash的128MB限制。解决方法是在tina/device/config/chips/v851s/configs下调整分区配置文件,把rootfs分区压缩到60MB以内。另外烧录后ADB可能无法启动,需要手动给/etc/init.d/下的启动脚本赋执行权限。
2. 模型转换实战详解
模型转换是NPU开发中最容易卡住的环节。V851s的NPU只支持特定的模型格式,需要把ONNX模型转换成NPU能识别的NBG文件。整个过程涉及模型导入、量化、预推理等多个步骤,我以音频分类模型为例详细说明。
从ONNX到NPU格式
转换工具链需要安装Vivante IDE,虽然申请License没通过,但不影响基础功能使用。关键命令如下:
# 转换命令示例
pegasus import onn

3826

被折叠的 条评论
为什么被折叠?



