[经验分享] [基于GD32F350RB的音频识别器] 2. 测试GD32F3xx是否可以支持边缘计算

北方   2018-9-20 11:26 楼主
1. 在关于下一代的电子产品设计中,边缘计算是目前最前沿的视角。这是因为人工智能已经被赋予了第四次工业革命的头衔,但是让这些聪明的计算落地,需要数不清的智能电子器件来实现,而不能仅仅是在电脑上做一些图像识别和视频捕捉的功能。 目前比较常用的人工智能解决方案都要通过wifi联网,把前端采集到的图片,声音信号上传到云端,让云端海量的服务器来实现计算功能把结果反馈到终端。这个比较典型的就是亚马逊的ECHO音箱,多维声场捕捉的只是高精度的声音信号,具体这些是代表的那种语言,转换成文字,要在海量的文本语义中准确识别,确实不是终端所胜任的。 但是,ARM在这方面并没有放弃,率先实现了边缘计算的概念,而且门槛低至ARM-M0++。换言之,就是让终端采集到的数据在终端就直接计算出结果,不用再依赖通讯通道了,在终端完成大规模的计算,就是简单理解的边缘计算。 这样,这些开发板就不用再简单的玩点灯的blink游戏了,就可以赋予更重的计算任务,同时也可以实现更有趣的应用。 2. 实现边缘计算的方法就是调用CMSIS-NN库,这个库中包含了很多强计算的函数库,尤其注意是需要启用DSP协处理器的,即要设置DSP=1. 目前在边缘计算上尝试的MCU厂家并不多,NXP提供了一些范例,也在NXP上有一些经验,那么在GD32F350RB是否可以实现呢。本帖就测试一下。 3. 首先创建一个工程,选择GD32F350RB芯片 1.JPG 4. 其次,选择安装的初始库,一定要选定NN和DSP, 2.JPG 然后进行编译,发现编译通过,但是系统资源不足,显示内存不足。 3.JPG 修改使用microLib,再次编译,显示部分程序资源不足。 4.JPG 5.这样的初步验证,程序和代码可以在GD32F350上执行,但是如何确定代码占用的资源,并进行优化,是编程的一个,相对于缩小层数,并且降低中间buff的占用,还可以加载外部的内存,把中间数据swap到外存,这样就可以完成计算了。 具体就是优化的过程,这个初步可以验证这个范例代码是可以在这个平台执行的。 具体代码分析和使用说明逐步解释。 本帖最后由 北方 于 2018-9-20 11:56 编辑

回复评论

暂无评论,赶紧抢沙发吧
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复