本帖最后由 linguixuan 于 2021-5-2 20:06 编辑
最小系统板分享
Sipeed Maix Dock——K210最小系统板
在电赛中,STM32算是使用最频繁的芯片,但是在一些特定的功能上,STM32也具有其短板,因此在平时多了解多种类的单片机还是非常有必要。
我想介绍的最小系统板是Sipeed公司设计的K210最小系统板,这一块最小系统板采用的是嘉楠科技公司开发的K210芯片,是一款国产的单片机,由于芯片的封装采用的是BGA144封装,焊接比较复杂,因此在使用的时候,比较建议直接购买最小系统板进行学习和开发。
K210芯片介绍
Kendryte K210 是集成机器视觉与机器听觉能力的系统级芯片(SoC)。使用台积电(TSMC) 超低功耗的28 纳米先进制程,具有双核64 位处理器,拥有较好的功耗性能,稳定性与可靠性。Kendryte K210 定位于AI 与IoT 市场的SoC,同时是使用非常方便的MCU。
K210 包含RISC-V 64位双核CPU,主频为400M(超频可达600M),每个核心内置独立FPU. K210 的核心功能是机器视觉与听觉,其包含用于计算卷积人工神经网络的KPU与用于处理麦克风阵列输入的APU. 同时K210 具备快速傅里叶变换加速器,可以进行高性能复数FFT 计算。因此对于大多数机器学习算法,K210 具备高性能处理能力。下图是K210的系统架构;
通过系统结构图可以发现,除了普通MCU都普遍具有的GPIO、SPI、UART、I2C、Timer、PWM、DMA等资源,我们还要特别注意以下三个特点:
1. 具有自主设计的KPU(神经网络处理器),可用于加速神经计算 2. 具有独立的FFT单元(快速傅里叶变换加速器) 3. 具有FPIO单元(现场可编程IO阵列),这个功能可以用于配置IO口和内部资源,比较类似于FPGA的形式。 关于上述的三个的特点,我将在后续的亮点进行具体的说明,当然,以上的介绍只是根据我个人的使用情况进行简单的介绍,其中类似于SHA356等我尚未用到的功能也有其独特之处。 Spieed Maix Dock介绍 Maix Dock是Sipeed公式maix产线的一员,是基于嘉楠勘智科技的边缘智能计算芯片K210设计的一款AIOT开发板,Sipeed提供了两种开发板,一种是单纯的模块化设计并引出了IO口,图片如下:
另一种是使用的模块+底板方式设计,整洁小巧,板载type-c接口等,图片如下:
在平时的使用中,第二种比较符合我们的使用习惯,在开发板上,也包含了我们常用的接口,便于进行模块的扩展,开发板上的具体和接口资源如下: 资源: 按键*2 RGB灯*2 Mems microphone*1 USB to UART 128Mbit Flash*1 接口: USB Type-c接口 24pin DVP摄像头接口 24pin LCD接口 MircoSD卡槽 音频接口(支持外接2x3w扬声器) 所有IO口排针引脚引出 设计亮点 1. 该最小系统板设计小巧,简洁、但是包含了平时常用的大部分功能和接口,基本满足参加比赛的需求; 2. 芯片具有具有自主设计的KPU(神经网络处理器),可以对神经计算进行加速,内置卷积、批归一化、激活、池化运算单元,可以对人脸或物体进行实时检测,支持YOLO3\Mobilenetv2等多种模型格式,在这一点特别要提出,该项功能对支持完成2020年F题的简易体温、身份识别装置和G题非接触物体形态测量有着很大的帮助; 3. 具有独立的FFT单元(快速傅里叶变换加速器),可以用硬件的方式来实现FFT 的基2 时分运算,支持64-512点运算长度,DMA传输等2020年电赛的E题便可以使用K210来进行快速傅里叶的运算 4. 具有FPIO单元(现场可编程IO阵列),这个功能可以用于配置IO口和内部资源,比较类似于FPGA的形式,有了这个功能,IO口的分布便可以更加的灵活,如果使用官方提供的Kendryte IDE编写程序,还可以使用其包含的可视化界面进行配置,使用更加的方便; 5. 该最小系统板支持VS code(C语言)、嘉楠勘智官方提供的Kendryte(C语言)、和sipeed官方提供的MaixpyIDE(micropython)等多种工具,可以根据自己的擅长和使用情况进行选择。 下面是maix dock设计的原理图,附件中有maix dock的相关手册和资料
|