用单颗芯片实现出色的处理性能、能效和安全性
研究发现,我们人类擅长与外界进行可视化互动,因为我们处理视觉图像的速度远远快于其它形式的媒介,如书面文字。增强现实(AR)跟虚拟现实(VR)比较类似,能帮助我们更好地体验周边环境,二者的主要区别在于AR 能通过文字或其它视觉信息实现自然界的增强,从而让我们更加安全高效地在自然环境中实现互动,而VR则能让我们浸入在综合创建的环境中。增强现实和虚拟现实相结合通常被称为混合现实(MR)。许多人已经在日常生活中接触过AR 了,但却没有意识到,比方说我们用移动设备实现街道导航或者玩 Pokémon Go 这样的 AR 游戏。
图1 - 虚拟现实、增强现实和混合现实。
抬头显示器(HUD)就是 AR 及其应用的一个很好的例证。就比较简单的 AR 应用而言,诸如HUD用于航空和汽车应用领域,可让驾驶人员无需低头看仪表盘就能直接了解车辆信息。有的AR 应用可提供更高级的功能,比方说可穿戴技术(通常称为智能AR),Tractica预计这样的高端应用到 2020 年将实现 23 亿美元的市值。
AR 正全面进军工业、军事、制造、医疗和商业等各个不同应用领域,显著改善我们的生活。在社会商业领域,AR 用于社交媒体应用,可添加生物信息,甚至能识别每个人。
许多 AR 应用需要操作人员佩戴智能眼镜。智能眼镜通过取代手动作业或者提供零部件组装信息等,可大幅提高制造业的工作效率。在医疗领域,智能眼镜能分享病例以及创伤和损伤细节等,从而让抵达现场的急救人员获得必要信息,随后再提供给急诊室。
图2 - 智能眼镜用于工业领域的实例。
一家大型快递公司目前正采用AR智能眼镜读取包裹条码。扫描条码后,智能眼镜能通过 Wi-Fi 连接与公司服务器通信,明确包裹的最终目的地。知道目的地后,智能眼镜能告知包裹应该堆放在什么位置,以便发运。
除了考虑最终应用之外,AR 解决方案还要考虑性能、安全性、功耗、面向未来等一系列要求。不同要求之间可能会存在冲突,因此设计人员必须同时考虑到所有这些要求,力争推出最佳AR 系统解决方案。
复杂的 AR 系统要求能够连接多个摄像头传感器并处理其提供的数据,以便了解周围环境。这些摄像头传感器可能要处理电磁(EM)频谱的不同频段信息,包括红外线或近红外线等。此外,就像 MEMS 加速计和陀螺仪一样,传感器可能提供 EM 频谱之外的信息,结合全球卫星导航系统 (GNSS) 提供的位置数据,可检测移动和旋转情况。对不同类型传感器进行传感器融合的嵌入式视觉系统统称为异构传感器融合系统。
AR 系统还需要实现高帧率,能逐帧进行实时分析,从而提取和处理每帧所含的信息。能否为系统提供处理功能,满足上述要求,这就成了组件选择的一个决定性因素。
图3 - 增强现实系统剖析
设计人员还可将 All Programmable Zynq®-7000 SoC或Zynq® UltraScale+™ MPSoC用作 AR处理系统的核心。这些 SoC将 ARM® 处理器和高性能可编程逻辑完美结合在一起,本身就是异构化处理系统。作为新一代Zynq-7000 SoC 的 Zynq UltraScale+ MPSoC还采用了 ARM®Mali-400 GPU,该系列产品中有些产品还采用了硬化的视频编码器,能支持 H.265 和 HEVC 高效视频编码标准。
上述复杂器件有助于设计人员对其系统架构进行细分,优化利用处理器进行实时分析,并把传统处理器任务转交给生态系统来完成。设计人员可运用可编程逻辑来支持传感器接口和处理功能。这样做的好处包括:
·可根据应用要求,并行实现 N 个图像处理流水线。
·支持任意连接,能定义和连接任何传感器、通信协议或显示标准,确保灵活性和未来升级路径。
支持嵌入式视觉和机器学习
为实现图像处理流水线和传感器融合算法,开发人员可采用支持嵌入式视觉和机器学习应用的reVISION™ 加速堆栈。reVISION主要是在软件定义的 SoC 或 SDSoC™ 工具集环境中开发的,能让设计人员采用OpenVX 等业界标准框架实现视觉处理、OpenCV 计算机视觉库和Caffe Flow 的跨平台加速,以满足处理器系统和可编程逻辑的要求。reVISION可加速大量 OpenCV函数(包括核心 OpenVX 函数)。
reVISION 还支持在可编程逻辑中直接用Caffe prototxt 文件实现机器学习推断引擎,这就能采用业界标准框架,不仅可缩短开发时间,尽可能减少高级系统模型和设计成品之间的差距,同时还可打造出响应速度更快、能效更高(单位功耗像素更高)的灵活解决方案,而这一切要归功于处理系统和可编程逻辑的完美结合。
图4 – reVISION堆栈。
设计人员还必须考虑AR 系统的独特因素,其不仅要连接摄像头和传感器以观察周边环境并根据应用要求和使用情况执行算法,而且还要跟踪用户的眼部,明确他们看什么东西,往什么方向看。这通常要采用额外的摄像头来实现,既要观察用户面部,又要实现眼部跟踪算法,让AR 系统能跟踪用户的视线,从而确定向 AR 显示屏提供什么内容,并高效利用带宽,确保处理要求得到满足。执行这种检测和跟踪工作可能是一项高计算强度的任务,可用reVISION实现加速。
高度关注便携式设备的功耗问题
大多数 AR 系统具有可移植性、不受限制性,而且许多情况下可搭配可穿戴产品,如智能眼镜。这就带来了独特的挑战,需要在功耗要求严格的环境中完成处理工作。Zynq-7000 SoC 和 Zynq UltraScale+ MPSoC 系列产品都能提供最佳单位功耗性能,进一步降低工作期间的功耗,为此可采用不同选择,如让处理器进入睡眠状态,工作时候再唤醒,这可让器件上一半的可编程逻辑断电。检测发现未被使用就进入睡眠状态,这样AR 系统的电池使用寿命会延长。
在 AR 系统工作期间,当前未使用的处理器元件可采用门控时钟来降低功耗。设计人员可根据简单的设计原则实现可编程逻辑元件的极高效电源解决方案,包括高效利用硬宏、认真规划控制信号、考虑就当前不需要的器件区采用智能门控时钟等。这样,相对于采用CPU 或 GPU 的方法而言,能提供用电效率更高、响应速度更快的单芯片解决方案。单芯片Zynq-7000 SoC 或 Zynq UltraScale+ MPSoC解决方案采用 reVISION 来加速机器学习和图像处理元件,这相对于类似的 GPU 解决方案而言能将单位功耗每秒帧率提高 6 倍(机器学习)到 42 倍(图像处理)之间,而时延则缩短到原来的五分之一。
满足敏感的安全性要求
分享病例和生产数据这样的AR 应用需要信息安全(IA)和威胁防护(TP)领域的安全性,而AR系统具有高度移动性、可能错放,这就让安全问题变得尤其重要。信息安全(IA)要求我们能够信任系统中存储的信息以及该系统接收和发送的信息。
就综合而全面的信息安全而言,设计人员需要采用Zynq 器件的安全启动功能,该功能支持加密。设计人员还应通过高级加密标准(AES)、HMAC 和 RSA 公共密钥加密等算法来进行确认。器件正确配置并运行后,开发人员可用ARM® Trustzone 和系统管理程序实现正交世界,也就是说能确保自身安全性,别人无法访问。
就威胁防护而言,设计人员可用系统中内置的赛灵思ADC(XADC)宏来监控供电电压、电流和温度,并检测有没有修改AR 系统的企图。如果出现威胁性事件,Zynq 器件提供保护选项,包括记录威胁企图、擦除安全数据、避免AR 系统再次连接支持基础设施等。
AR 系统会在商业、工业和军事领域变得无所不在。这种系统的高性能、系统级安全性和能效要求之间往往是相互冲突的。设计人员可将Zynq-7000 SoC 或 Zynq UltraScale+ MPSoC用作处理系统的核心,并结合 reVISION 加速堆栈来支持嵌入式视觉和机器学习应用,从而应对有关挑战。
如需了解更多信息,敬请访问以下网址:http://china.xilinx.com/products/design-tools/embedded-vision-zone.html。