神经网络协同处理器降低视觉处理功耗
扫描二维码
随时随地手机看文章
嵌入式视觉(EV)系统的成长正推动对于更高性能与节能的视觉处理能力需求。包括AMD、CEVA、Imagination、英特尔(Intel)、Nvidia以及ARM的授权客户等业界多家公司均积极因应这一成长中的趋势,利用FPGA、FPGA/MPU组合、GPU与专用异质多核心等各种不同的硬体,为设计任务实现最佳化。
新思科技(Synopsys Inc.)日前发布另一种解决方案——DesignWare EV处理器核心(IP)系列,专为整合于具有多颗CPU的SoC而设计,无论是采用来自ARM、英特尔、Imagination MIPS或PowerPC等其他CPU均可相容。
该IP核心系列目前包括EV52与EV54两款可为视觉运算应用最佳化的产品,采用28nm制程制造。EV52搭载基于该公司ARC指令集的双核心 RISC处理器,以高达1GHz的频率作业;而EV54则采用四核心建置,提供较EV52更高的性能。两款产品均内建2-8个可编程配置的物件侦测引擎处理单元(PE)。
Synopsys的视觉处理器结合基于ARC的RISC核心,以及卷积神经网路侦测引擎处理单元。
(来源:Synopsys)
EV52和EV54处理器利用‘卷积神经网路’(CNN)演算法——从人脑处理视觉资讯方式取得灵感,为视觉运算应用实现最佳化。CNN利用前馈人工神经网路,其中,个别神经元以一种反应视线内重叠区域的方式拼接排列。这种重叠是人眼得以追踪动作、辨识环境变化、区别不同物体以及反应脸部表情细微变化的重要关键。
Synopsys DesignWare ARC处理器资深产品行销经理Mike Thompson介绍:“该EV处理器系列是专为以1,000GOPS/W的性能执行CNN计算而设计的,它仅需使用约竞争视觉方案一小部份的功耗,即可为一系列广泛的物件应用实现更迅速与准确的侦测。”
Thompson指出,“虽然有多种视觉辨识演算法竞相争宠,我们一直认为CNN具有最重大进展,而且也是目前我们看到在目标应用中最佳的物件辨识方案,可作为相机、可穿戴式装置、家庭自动化、DTV、虚拟实境、游戏、机器人、数位看板、医疗与车载资讯娱乐系统等目标应用的理想选择。”
Synopsys目前正与嵌入式视觉市场中的多家厂商合作,包括Nvidia、CEVA、微软(Microsoft)等。然而,虽然透过CNN能够取得超过95%的准确结果,但问题仍取决于如何在市场可接受的功耗/性能范围内达到这样的准确度。
Thompson表示,通用处理器(GPP)虽可用于视觉处理,但由于缺乏先进的数学运算资源而使其速度过于缓慢;绘图处理器(GPU)虽然有必要的数学运算资源,但却缺少有效移动视觉资料的能力,使其视觉性能相对较低而功耗相对较高。
“我们提出的协同处理器策略将有助于使CNN成本降低到可负担的范围,以及可应用在消费产品的功耗水平。”Thompson以一系列典型物件侦测与手势办识应用的比较为例表示,EV处理器执行视觉任务的功耗大约比其他视觉解决方案的功耗更低5倍。采用内建EV处理器的SoC以每秒30格的视讯处理速率执行一项脸部侦测任务时,大约仅需175mW的功耗。相形之下,如果采用GPU来执行相同任务的话,至少需要更高8-10倍的功耗。
以每瓦数十亿次作业为衡量基准,EV处理器(最右)的执行效率超越了其他视觉方案的物件侦测与分析能力。(来源:Synopsys)
嵌入式视觉导入CNN演算法
为了将1或多个EV处理器整合于SoC,Synopsys利用与主处理器平行/同步作业的方式——透过复杂和高效的讯息传送设定以及中断机制,让不同卷积物件侦测引擎处理单元与其他处理器核心之间实现通讯(图3)。ARC EV处理器可经由编程实现自动化作业,或者,当应用必须符合特定的功耗/性能限制时,开发人员也可以选择尽量在EV处理器与主处理器之间实现最多的控制与功能共享。
EV处理器的核心是物件侦测引擎,其中包含2-8颗专用的处理单元。
(来源:Synopsys)
Thompson说:“PE的数量是由用户在建构设计时所配置的,就像在PE之间的串流互连网路一样——在所有的PE之间配置灵活的点对点互连。取决于物件侦测引擎上的CNN绘图执行情况,每个点或连线均可动态改变。”
该架构的建置在于让EV处理器记忆体映射可完全由主处理器进行存取,这将能够让主处理器一方面持续进行控制,同时让所有的视觉处理任务卸载至EV单元,主处理器与EV处理器二者均可降低功耗,并加速关键的视觉任务进行。
此外,Thompson强调,这种方法还可让各种不同的视觉处理单元都能与主处理器即时通讯。为了让EV之间以及与主处理器之间的通讯更有效率,每个EV 处理器都能存取储存于SoC记忆体映射区的影像,或是在需要时透过内建的AMBA AXI标准系统介面存取晶片外接记忆体资源。
为CNN开发提供软体套件
Thompson指出,由于CNN存在一定的复杂度,就算采用了EV硬体,为特定视觉处理应用推出适合的演算法组合仍然是一项困难的任务。为了协助开发商减轻一些责任,Synopsys提供了一套完整的工具库与参考设计,让开发人员能更有效率地建构、除错、配置,以及利用业界标准且开放源码的嵌入式视觉工具链OpenCV和OpenVX,为其嵌入式视觉系统实现最佳化。
该最佳化的工具套件内含ARC EV处理器,以及超过2,500项OpenCV功能,可实现即时电脑视觉。此外,该工具套件还提供具有43种标准电脑视觉核心的OpenVX架构,可实现边缘侦测、建立影像金字塔以及光流评估,这些功能均已为执行于EV处理器实现最佳化。
Thompson还表示,由于EV处理器是可编程的,因而可加以训练用于支援任何物件检测图,以及导入新的OpenVX核心定义。一次OpenVX的运行时间可将排列的核心执行分配在EV处理器的多个执行单元上,从而简化了该处理器的编程。[!--empirenews.page--]
在用于设计EV核心时,可透过ARChitect工具发表与配置ARC EV处理器。该工具合成了可整合于任何SoC设计的RTL,以支援任何主处理器,包括ARM、英特尔、Imagination MIPS与PowerPC等。为了进一步加速软体开发,虚拟原型机将可用于EV处理器,以及支援基于FPGA的原型设计,在制造晶片之前实现硬体和软体协同设计。
“嵌入式视觉是一个快速变化的环境,”Thompson说,“现在,CNN看来是最佳的发展方向。但是,未来也可能发生改变。除了找到能够满足当今应用的成本和功耗需求的解决方案以外,我们希望为开发人员提供一种更有效的方法,在中期改变其设计任务,而无需回到起点重新设计。”