沈绪榜院士谈嵌入式系统的挑战与新机遇
作者/沈绪榜 中国航天科技集团公司九院七七一研究所研究员、博士生导师、中国科学院院士
编者按: 不久前, 在第十六届中国计算机学会(CCF) 全国嵌入式系统大会上, 沈绪榜院士介绍了嵌入式系统发展的新趋势、 新挑战和新机遇。
嵌入式系统发展的新趋势
最近几年, 物联网、 信息物理系统CPS(Cyber-Physical System)、 VR/AR技术、 人工智能技术、 自动驾驶技术以及区块链技术等新兴技术的出现和发展, 嵌入式系统设计呈现新的发展趋势。
针对高性能低成本低功耗的嵌入式系统的硬件设计,要从算法优化、体系结构、软硬件协同等几个方面统筹考虑。——沈绪榜
第一, 功能需求越来越多。 自动驾驶技术要求能够针对语音、 NLP、 图像、 视频等数据进行处理;要求能够支持paddle等多个深度学习框架, 灵活支持训练和预测; 还要求对雷达、 摄像头等传感器的多路数据进行快速地处理。
第二, 低功耗、 低延迟、 低成本、 高可靠性是该领域需求趋势。 物联网、 信息物理系统、 自动驾驶技术都要利用神经网络算法对其数据进行快速地的处理, 算力大、 低延时是基本要求。 由于复杂的外部环境, 可移动设备、 可穿戴设备和自动驾驶等对功耗和可靠性也有很高的要求。
第三, 嵌入式系统的优化越来越依赖专用算法优化、硬件体系结构的优化以及软硬件协同的优化。 嵌入式系统是硬件、 中间层、 操作系统和上层应用软件的集合体。 从专用算法、 硬件体系结构和软硬件协同三个角度考虑, 才能够统筹全局, 有利于设计出低功耗、 低延迟、低成本、 高可靠性的嵌入式系统。
嵌入式系统面临的新挑战
第一,专用算法上,像很多新兴算法,可能会因为模型复杂度太高或者其他原因,不能直接用于实现。比如自动驾驶领域的算法层面,目前还没有一家公司可以保证自家的算法完全可以投产商用。
第二,系统架构上,传统的嵌入式系统,处理器之间采用分布式设计,相互之间通过片外的高速通信总线等方式进行信息交换,不仅硬件设计难度较高,而且处理器软件系统之间的协同性与稳定性一直是困扰研发工程师的难题之一。
第三,算法与架构协调上,特殊的专用算法与通用处理器架构之间的协同不充分,既不能发挥处理器的计算能力,又不能达到该应用领域的算力和功耗的要求。
第四,系统软件上,对于异构处理器,虽然OpenCL标准和“AllProgrammable”平台都提供了统一的编译环境,满足了用软件设计语言实现CPU、GPU、DSP、FPGA等的编译要求,但不可避免地带来了编译器和编译方法的复杂性、编译效率低、存取开销和时间开销大等众多软件开发问题。
第五,网络带宽上,传输速度跟不上大数据云端分析的需求。根据国际电信联盟电信标准分局(ITU-T)的研究报告,到2018年,世界上三分之一的人口将拥有智能手机或者可穿戴设备,到2020年,这些设备将生成43万亿GB的数据。而机器学习的训练环节目前只能在云端实现。GPU、FPGA、ASIC(例如GoogleTPU1.0/2.0)等都已应用于云端训练环境。处理这些数据需要进一步扩展数据中心,这再次引起了人们对网络流量压力的广泛关注。IDC也发布了相关预测,到2018年,50%的物联网网络将面临网络带宽的限制。
嵌入式系统的新机遇
第一,专用算法的优化上有两类:一方面,复杂算法模型和协议不断地被优化,比如区块链底层协议、签名机制和共识机制的不断优化,吞吐率也在不断提高,功耗逐渐降低;另一方面,针对海量数据的分析与储存对网络带宽提出了巨大的挑战,边缘计算可以利用适合数据管理任务的空闲计算资源,在边缘节点处过滤或者分析以减少网络等待时间。
第二,硬件体系结构上有两种类型。第一种是对于能效、功耗和散热要求都比较高的领域,其数据处理单元往往经过如下演进过程:CPU构建初始模型,多核异构(CPU+GPU+FPGA+DSP)处理单元搭建硬件加速引擎,定制AISC专用处理单元三个阶段。比如比特币矿机芯片、AI深度学习处理系统、自动驾驶处理系统等,对算力、功耗有极高的要求,但由于通用芯片效能显然无法满足功耗、散热等问题,其体系结构只能经过异构处理阶段,最终已经或者将要走向AISC硬件加速阶段。第二种是对功耗要求不是那么高的领域,多核异构技术确实是一种不错的方案,可以兼有不同体系结构各自的优点。在云端模型训练中,NVIDIA的GPU占主导地位,多GPU并行架构是云端训练常用的基础架构方案。在云端识别中,基于功耗与运算速度的考量,单独基于GPU的方式并非最优方案,利用CPU、GPU、FPGA、ASIC各自的优势,采用异构计算(CPU+GPU+FPGA/ASIC)是目前主流方案。在高速数据采集与处理行业解决方案中,利用ARM+DSP+FPGA多核异构技术的特点,有效地应对了人工智能领域所提出的技术要求,如大规模并行数据处理。
第三,算法与硬件的协同设计上,在修改机器学习算法以使它们对硬件更友好的同时还维持准确度方面,研究界在减少计算量、数据传输和存储要求方面不断地有新的进展。通过在这些方面的研究,使得硬件的处理速度更快,硬件资源更少,功耗更低。
结论
基于以上嵌入式系统新挑战和新机遇的考虑, 针对高性能低成本低功耗的嵌入式系统的硬件设计, 要从算法优化、 体系结构、 软硬件协同等几个方面统筹考虑。这些方面统筹考虑为设计出更高性能、 更低功耗的嵌入式系统硬件提供了新思路。
本文来源于中国科技期刊必威娱乐平台 2019年第2期第1页,欢迎您写论文时引用,并注明出处
加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW
或用微信扫描左侧二维码