机器视觉的最佳选择——低功耗FPGA

FPGA作为一种非常灵活的可编程产品,应用领域非常广泛,今天我们聚焦在机器视觉的应用,因为随着AI技术的兴起,有很大一部分的应用都是与图像相关。在过去两年,易灵思和多家机器视觉领域的客户合作,对FPGA产品在机器视觉领域的应用有了长足的经验积累,我们认为低功耗的FPGA是机器视觉的最佳选择。

机器视觉无处不在,产品上如果有了机器视觉,那么这个产品在很大的意义上已经赋予了机器智能。例如机器人、无人机、工业检测,这些都需要机器视觉,但是他们的传感器和算法都不同。我们今天重点讨论工业相机行业的应用。

机器视觉系统也有硬件和软件,硬件部分通常是说工业相机,软件部分包含嵌入式控制以及一部分图像增强优化。还有部分视觉软件是依托于相机提供的图像进行运算,最后可检测产品缺陷、监控生产线、引导装配机器人以及追踪、分拣和识别元件。另外还有一部分,是智能机器人上面的视觉传感器的避障和深度检测,我们今天的话题主要集中在机器视觉的嵌入式部分。

摄像头大体可以分为三个类别:AI Camera、Industry Camera和Other Cameras。第一个AI Camera智能相机,体积小,相机和处理图片的部分都在一个设备里,在物流行业非常普遍。第二个Industry Camera工业相机,是应用最广的一类。最后一个Other Cameras,是一些特殊领域的相机,例如热成像,还有3D立体测量。

现在的智能制造的企业提高生产量、优化质量消除误差,并减少代价高昂的返工,这一切都依赖机器视觉来进行降本增效,在质量体系中,确保整个供应链上的可追溯性。这是工业相机的市场推动力,保持这个市场,每年有10%的复合增长,热成像市场的增长更是以超过20%以上的速度保持强劲势头。而门锁、测温仪、摄像头这三种设备就是典型的热成像市场,这些产品都有一个显著的要求——低功耗、小体积。而低功耗有两个方面的诉求,一个是因为在密闭的空间,确保不要发热,因为这会影响热成像传感器的精度。另外一个诉求是对于手持式的产品,需要更长的待机时间。
机器视觉的最佳选择——低功耗FPGA_第1张图片

从历史上看,机器视觉依靠照相机将图像发送到计算机,这仍然是当今使用最广泛的方法。但是,许多计算机都基于为串行计算而编写的软件,从而限制了智能系统。这导致线性数据流过CPU。自2012年以来,大多数计算机使用多核处理器来提供并行计算,但是除非专门为并行性编写,否则软件将继续是串行的。计算机依靠其多核处理器来处理来自存储软件代码的同一内存块中的数据。 CPU和此内存块之间的总线将性能限制在所谓的冯·诺依曼瓶颈和内存墙。这是指内存和CPU之间的带宽限制。虽然可以增加时钟频率以每次处理更多的指令,但是这将导致功耗急剧增加。

如今,大多数机器视觉系统都依赖于摄像机通过电缆将其图像发送到计算机,这些电缆是从不断增加的分辨率和引入的帧速率传感器中移出大量数据的瓶颈。当前已经开发出新的视频协议来帮助增加带宽:USB3,NBASE-T,Camera Link HS,CoaXPress和光纤接口。除USB3和GigE接口外,所有接口都需要接口卡才能将图像数据移至内存。
机器视觉的最佳选择——低功耗FPGA_第2张图片

让我们来看一个机器视觉的典型应用设计框图,因为每种相机有不同的应用场景,因此面临着品种繁多,需求差异大的问题。这是FPGA大显身手的好时机,作为FPGA要完成什么样的功能呢?我们一起剖析一下。

首先,FPGA能够与流行的Sensor进行接口,确保图像接收以及发送。

其次,FPGA逻辑容量要有一定的处理能力。例如,可以支持35K到120K的逻辑来进行不同应用的ISP功能,也就是图像处理功能。ISP(Image Signal Processor),它在相机系统中占有核心主导的地位,FPGA最适合以流水的方式处理这类矩阵型信号。算法的多少决定了逻辑资源的不同,当前市场的主流相机需要大致从35到120K Luts,同时也需要非常多的嵌入式存储器(BRAM)作为图像的高速缓存。
第三,为了能更好处理图像甚至可以处理多幅图像,也需要有外部的DDR,保持高效的带宽。
第四:如果有一定的特别的处理功能和加速运算,也需要FPGA中有一个智能的单元,内嵌处理器。现在最流行的RISC-V是个不错的选择,32bit的RISC-V处理相机的控制流是绝佳选择,再配上FreeRTOS的实时操作系统,如虎添翼。

让我们从一个最简单的图像接口例子来看:
机器视觉的最佳选择——低功耗FPGA_第3张图片

这可以抽象为LVDS、MIPI、MIPI和LVDS的转换。因为sensor的接口可以是LVDS,也可以是MIPI。现在的sensor使用MIPI接口已经是非常明显的趋势,为了顺应这一潮流,很多SoC也提供了MIPI的输入和输出。在这个应用里,例如HDMI显微镜,我们的FPGA可以很容易处理各种sensor到SoC的接口,以及一个或者多个sensor。

前两个案例是在工业领域应用居多的机器视觉。在实际应用中,各种产品都需要FPGA具有纤小的体积。特别是在医疗和一些测试仪表行业,对体积和系统的集成度提出了更高的要求,例如胶囊机器人以及医疗内窥硬镜都需要有小体积的强制要求。

机器视觉的最佳选择——低功耗FPGA_第4张图片

易灵思的第二代产品Ti60的器件,其中内置了HyperRAM,体积非常小,HyperRAM不仅兼顾存储容量,同时每片HyperRAM功耗也只有50-75mW。

模仿地球上最聪明的生物——人类,他所有的知觉包括眼睛都与大脑紧密相连,我们的大脑既包含记忆又包含处理能力,能够快速处理信息,直接进行反应。我们必须尝试采用类似的体系结构,快速处理快速反应。因此,对于真正的智能相机,要实现传感器与内存处理之间的这种紧密耦合,智能相机的传感器应与处理器紧密相连。所以SiP是我们的一个很好革新。如刚才的这些框图,可以帮助我们了解机器视觉的需要,那如果我们能够提供一个集成的开发框架,是不是更好呢?

在易灵思的框架中,提供了系统互联,高效的DMA数据引擎,在模块间的AXI-4标准的互联总线,嵌入了RISCV的软核IP。应用框架可以在Trion系列的T120BGA324板上直接部署开发,具有MIPI的摄像头输入和HDMI的显示接口,而且也有Ethernet的网络接口。 易灵思采用摄像头直接读取显示器上的内容,实时处理图像的处理结果,并用RISC-V来进行图像处理功能的选择,能够做到彩色–灰度–边沿–增加型处理。如果你拥有了Edge Vision SoC加速框架,你可以轻松的专注于自己的图像处理。

我从四个维度来衡量工业相机的应用现状。
机器视觉的最佳选择——低功耗FPGA_第5张图片

首先,在接口上,现在的设计复杂度高,需要开发人员对MIPI的图像接口用LVDS进行协议模拟。当换了一种sensor的时候,若MIPI的对数发生改变,势必要重新开发,同时也很难实现在线重配置,花费更长的时间在接口开发上。

第二个维度,如果需要多次读取,高带宽和低延迟是必须具备的特性,如果采用软核设计,不仅费时费力,开发效率低下,甚至需要耗费4-5K逻辑资源,并且还有潜在的时序收敛问题。

第三个维度,在现在的相机设计中,不可避免的和现在主流的SoC进行接口设计。而这些接口主要以MIPI作为标准,像Xilinx、Altera、Lattice等主流FPGA设计公司在28nm的产品上也没有这样的硬核。
第四个维度,就是低功耗的设计。

我们之前分析了当前的设计现状,针对这些问题,易灵思的产品与这四个维度以及工业相机的应用非常切合。所以我们再次强调,在机器视觉设计中,依据这4个特别优势,易灵思能够加速您的创新。并且易灵思的产品路标有40nm和16nm两种组合,满足绝大多数机器视觉的应用需求。

易灵思是一家国产化中高端FPGA公司,在众多FPGA厂商中,我们是如何进行产品的整个定位的呢? 接下来我们逐一分析这些优点来定位我们的产品。
机器视觉的最佳选择——低功耗FPGA_第6张图片

易灵思在40nm的拥有低功耗40-120KLE逻辑单元、MIPI [email protected] PHY+MAC硬核以及DDR3 PHY+MAC硬核。而在16nm上,易灵思可以实现超低功耗,35-1000KLEs逻辑单元、MIPI [email protected] PHY+MAC硬核、Serdes:16/25.8 Gbps、1.5G HSIO、DDR4 HMC。

机器视觉的最佳选择——低功耗FPGA_第7张图片

左侧是性能的轴线,Trion系列的性能和spartan性能不相伯仲,易灵思直接略过了28nm,在工艺上保持领先,采用先进工艺节点设计FPGA产品是提高性能的主要手段,但是先进工艺每一代之间有3倍以上的开发成本。

钛金系列,钛是一种重量轻强度高的金属,寓意我们的产品性能极高、功耗极低、体积极小。我们用一些Opencore的benchmark进行测试,他拥有和Ultrascale plus相似的性能。目前,易灵思是国产公司中第一家推出16nm的公司。
机器视觉的最佳选择——低功耗FPGA_第8张图片

我们看一下FPGA功耗对比,下面的轴线是代表功耗,越往右功耗越大。功耗设计在工业相机和热成像相机的设计中,是首要的考虑因素。在通信产品中,高于300KLE的设计,功耗也是非常头痛的问题,更不用说1KKLE的FPGA。Trion系列40nm的产品,比起很多28nm的产品,功耗仍然具有优势,比其他40nm的产品,功耗只有1/3。在16nm的产品,易灵思起步时候已经领先对手一个身位,功耗是同类产品的1/2, 对于设计资源高达150KLE以上的时候,我们具有极强的竞争能力。

聚焦机器视觉的市场应用,易灵思是第一家集成MIPI CSI硬核的FPGA公司,硬核资源丰富,无需编程、敏捷开发,开发时间仅数小时。符合视频应用,解决了包括机器视觉在存储器带宽的痛点问题。易灵思是第一个在40nm工艺节点唯一支持1066M DDR3的FPGA,也是中国第一家商用支持MIPI CSI的厂商。
机器视觉的最佳选择——低功耗FPGA_第9张图片

为了让FPGA成为一个智能设计的平台,从而降低开发难度,迎合当前设计需求,不仅可以满足机器视觉,对视频应用加速提供开发平台,工程师将重点放在绿色的区域,实现自己专业的创新和一些设计框架的内容,从而提供给设计者一个经过验证的平台。我们在这里对这个框架的每一部分采用不同的颜色进行标注,左侧的橙色是我们的RISCV,黄色部分是模块间的总线互联,AXI4对于APB3,主要数据总线的带宽给与不同的支持。

易灵思已经将数据面和控制面的接口采用ST以及MM来代表,您可能也注意到右上角浅蓝色的DDR memory有两个位宽不同的接口:128bit和256bit。上一页已经提到易灵思的DDR3有内建的仲裁器。要想实现这样的创新,易灵思对硬核的器件采用了不同于其他厂家的做法,全流程编译:代码输入、逻辑综合、布局布线、下载编程。专注系统集成的内核与外设分离的设计,简单配置,就可以将Hardcore快速集成到您的设计中,所有的开发工具均为自主研发。在国产第一个发布的16nm FPGA产品中,我刚才已经提到它的功耗优势,下图是采用量化的方式来对我们已经推出的产品以110KLE作为对比,采用其他厂商的功耗评估,以及一些开发板的实际测试,在60KLE、100M工作状态下,我们的功耗大致是150mW。这是采用Quartum创新架构的结果,在每个工艺节点都可以获得功耗减半的优势。

机器视觉的最佳选择——低功耗FPGA_第10张图片

PPA(performance,Power,Area)可以兼顾依赖于易灵思的创新,最后来揭示与众不同的结构设计,我们之所以说易灵思是机器视觉的设计最佳方案,是得益于它的优点:
 小封装、小尺寸
 低功耗
 内嵌MIPI硬核
 Memory:DDR3支持1066Mbps、AXI-4 2Ports
 RISC-V内核
 Efinity全自主设计工具

很多FPGA以及硬件工程人员,可能在过去经常将注意力停留在HDL的设计,片内Debugger是否支持的方面,往往忽略了系统架构的有效性和开发周期。我们引用IT行业时常提到的,我们并不需要重复造轮子,我们这些已经将常用部件实现了硬化的方式,就是今天FPGA业内的一种革新。过去的经验固然重要,但是一味模仿,而忽略今天的应用需求,刻舟求剑的故事发生在今天也并不稀奇。易灵思对市场经过大量的分析、抽象、软硬件的协调,这些都是您快速革新的有力推手。

在半导体市场拓展新的市场,实际上都是九死一生。以Intel为例,过去我算是短暂服务过的公司,在移动领域的拓展中,也是一败涂地。作为后来者你的质量管控不具优势,而你的竞争对手也没有躺着那里让你追赶,所以,如果不去潜心研究一些技术,没有特色,没有创新,成功处于偶然,失败一定是必然的。

选择有时候比努力重要,在机器视觉方面,我们已经预先研究布局,为避免遇到错误而付出了更多的努力。因此,易灵思超低功耗FPGA是您的最佳选择。

你可能感兴趣的:(机器学习,数据挖掘,边缘计算)