2 开发基础
本章帮助用户熟悉K230软件开发的基础底层工具,对K230_SDK和nncase进行简单介绍,帮助用户熟悉SDK环境搭建、镜像编译烧录、kmodel转换的过程。
2.1 K230 SDK
2.1.1. K230 SDK 简介
K230 SDK 是面向K230 开发板的软件开发包,包含了基于Linux&RT-smart 双核异构系统开发需要用到的源代码,工具链和其他相关资源。源码地址:kendryte/k230_sdk: (github.com) 或 kendryte/k230_sdk: (gitee.com)。

K230 SDK软件架构层次如图所示:

2.2. nncase简介
2.2.1. nncase介绍
nncase是面向 AI 加速器的神经网络编译器,用于为 Kendryte系列芯片生成推理所需要的模型文件 .kmodel,并提供模型推理所需要的 runtime lib。
本教程主要包括以下内容:
- 使用
nncase完成模型编译,生成kmodel。 - 在PC和开发板上执行
kmodel推理。
2.2.1.1. 原始模型说明
nncase目前支持 tflite、onnx格式的模型,更多格式的支持还在进行中。
Tips:
- 对于TensorFlow的
pb模型,请参考官方文档将其转换为tflite格式。注意不要设置量化选项,直接输出浮点模型即可。如果模型中存在quantize和dequantize算子,则属于量化模型,目前不支持。- 对于PyTorch的
pth等格式模型,需使用torch.export.onnx接口导出onnx格式。