综合介绍 |
嵌入式人工智能(EAI)是以微控制器(MCU)或应用处理器(MPU)为核心,具备基本学习或推理算法,融合传感器采样、滤波处理、边缘计算、通信及执行机构等功能于一体的嵌入式计算机系统,是伴随着机器学习理论与算法的发展、嵌入式芯片性能的提高、嵌入式智能终端的市场需求而提出的,是人工智能产业化落地的主要形式。与一般意义上人工智能(GAI)相比,GAI是以通用计算机为运行载体进行学习与推理的系统,而EAI是以嵌入式计算机为运行载体进行学习与推理的系统。EAI目前发展处于启蒙阶段,它的发展与应用,将引起先进制造业的深刻变革。
嵌入式人工智能涉及软件、硬件、算法、通信、人机交互等众多技术于一体,技术人员往往从“零”做起,具有门槛高、成本大、周期长等特征,是许多企业技术转型的重要瓶颈之一。若能从技术科学范畴,研究其共性技术,把许多共性抽象处理,增大硬件、软件、算法的编程颗粒度,减少应用编程量,提供开发工具链,封装部分共性硬件、软件、算法,为“照葫芦画瓢”地进行具体应用开发提供共性技术,则可以有效地降低开发门槛、减少开发成本、缩短开发周期,符合人的认识过程由个别到一般,又由一般到个别的哲学原理。
|
创新要点 |
硬件:提高其颗粒度到通用嵌入式计算机(GEC)级别。借助早期通用计算机概念,GEC硬件内含基本软件系统(BIOS)提供启动及程序写入手段,延申其功能到基础构件、应用构件、软件构件,目标是通电后可基本运行,为继续编程提供基础。可以融合各种微型传感器、摄像头、NB-IoT、WiFi、4G/5G、WSN等,形成面向不同嵌入式人工智能与物联网应用领域的系列GEC芯片。通过特殊方式,在GEC内动态固化所需构件。
软件:提高其颗粒度到构件的API级。不再要求寄存器级层次的编程,抽取基础构件、应用构件、软件构件知识要素,采样重定位技术,给出标准构件API的标准调用方法,构件以机器码形式驻留于GEC内,不在是层层宏定义的SDK级别包,而是清晰可见的API使用说明,RTOS也可以驻留,技术分工更加明确,应用开发难度大大降低。
算法:动态方式驻留于GEC内。应用编程者不需知道深度学习的卷积层、池化层等概念,而知道其使用的API具有学习功能、推理功能,把它看作一个I/O系统,可以使得人工智能算法广泛应用,服务于产业界。科学分工更加明确,应用难度也大大降低。
模板:制作一些具有共性的标准模板开源,使得技术达到“六分熟”程度,这样的原型系统,可大幅度地减少开发工作量,技术人员可“照葫芦画瓢”地进行应用开发。
可以实现:向开发PC程序一样开发EAI软件;向调试PC机程序一样调试EAI软件;远程更新构件;远程更新程序;远程调试程序;发布构件与PC的动态链接库类似。从而达到用户程序的低代码编程之目标。
|
技术指标 |
以硬件构件为基础,以快速软硬件开发为目标,借鉴通用计算机发展模式,研究应用于先进制造业的嵌入式计算机共性技术,形成面向不同应用领域的通用嵌入式计算机GEC系列。通用嵌入式计算机GEC体现在硬件与软件两个侧面,在硬件上,把MCU硬件最小系统及面向具体应用的共性电路封装成一个整体,为用户提供SoC级芯片的可重用的硬件实体,并按照硬件构件要求进行原理图绘制、文档撰写及硬件测试用例设计,在软件上,把嵌入式软件分为BIOS程序与User程序两部分。BIOS程序先于User程序固化于MCU内的非易失存储器(如Flash)中,启动时,BIOS程序先运行,随后转向User程序。BIOS提供工作时钟及面向知识要素的底层驱动构件,并为User程序提供函数原型级调用接口。目前已经形成NB-IoT、4G、Wi-Fi、WSN、物体认知系统等系列。
|
其他说明 |
以构件为基础,以低代码为目标,在BIOS驻留基础上,构建嵌入式集成开发环境、实时操作系统驻留、构件驻留、动态命令、远程调试、编译型嵌入式Python等于一体的User应用开发生态系统,大幅度地降低嵌入式人工智能的开发难度。该系统历经十余年研发,具有常用开发环境兼容性、支持串口下载调试、外接软件功能、丰富的常用工具、简化工程配置等,可扩展支持NB-IoT、2G、4G等无线方式实现远程的程序更新;支持动态命令:可将机器码下载到特定的Flash区域直接运行该机器码,实现命令的动态扩充。
以共性技术为基础,涵盖嵌入式智能终端、云平台、人机交互系统等应用要素的“六分熟”原型系统,大幅度地减少开发工作量。这些源码抽取了技术共性形成,相对于完成了一个项目的60[%],为应用开发的低代码编程提供了基础。
以GAI算法为基础,以EAI应用场景为切入点,进行嵌入式人工智能算法研究;以EAI算法为基础,以快速应用实践为目标,封装人工智能训练与推理构件于GEC之中,实现快速开发于应用。这些工作正在加紧进行,若能很好地实现,将对智能产业链产生极大的推动。
|