eFPGAs为嵌入式视觉应用提供实用的解决方案

实时处理数据从多个摄像机围观系统是一个挑战。

受欢迎程度

视频应用,如监视、目标检测和运动分析,依靠360°嵌入式视觉和高分辨率的鱼眼镜头的相机镜头广角视野(FOV)。这些系统有六个一起逐帧实时摄像头流处理。每一帧是纠正扭曲和其他图像工件,调整曝光和白平衡,然后动态缝合成一个360°全景。产量4 k 60 fps是投影到球面坐标空间。

存储和访问multiple-camera实时输入数据和从外部内存然后处理作为一个围观的相机系统的框架是一个棘手的咆哮。硬件需要运行在一个帧之间的延迟输入原始传感器数据从输入摄像机和缝输出视频。

高性能计算平台是朝着使用fpga结合cpu为实时图像处理任务提供专门的硬件加速。在这个配置中,cpu专注于复杂的算法,快速切换线程和上下文,而重复的任务是降级到一个FPGA作为可配置硬件加速器/协处理器/卸载引擎。

使用fpga和cpu作为离散设备提高系统整体效率,因为技术组合在一起。例如,因为图像从鱼眼镜头的镜片受到扭曲,缝合操作涉及多个相机是计算密集型,逐像素的任务,需要大量的实时图像处理和高度并行体系结构。这个应用程序超过fpga执行这个角色的能力,主要是由于移动数据延迟开关芯片,影响整体延迟、吞吐量和系统的性能。

在最近的一次开发,嵌入式视觉设计师正在寻找eFPGAs作为一个实际的解决方案。eFPGA IP可以嵌入在一个CPU的SoC因为其织物提供了独特的优势,包括更高的性能相比,一个独立的FPGA + CPU的解决方案。

低延迟是非常重要的对于复杂图像的实时处理,当纠正鱼眼镜头的畸变,例如。eFPGA是直接连接没有I / O缓冲区ASIC通过宽并行接口的高吞吐量和延迟在个位数的时钟周期数。

eFPGAs的另一个优点是,他们可以大小以满足特定的应用程序。例如,Speedcore eFPGA IP用户指定逻辑、记忆和DSP资源需求和IP配置为满足他们的个人需求。Look-up-tables(附近地区),内存块和DSP64块可以像积木一样组装创造一个最佳的可编程结构对于任何给定的应用程序。

此外,用户可以定义自己的自定义函数包含在eFPGA织物。它们集成到逻辑结构与传统的积木,增加的能力eFPGA通过添加功能优化减少面积和/或增加目标应用程序的性能,特别是对于嵌入式视觉和图像处理算法。

实施“你只看一次”(YOLO)意思,最先进的实时检测算法,利用神经网络在早些时候提高性能的方法的一个例子是自定义块使高性能图像处理。该算法依赖于大量的矩阵乘法器。当在一个FPGA实现,这些矩阵因子构建使用DSP和内存块。

之间的不匹配时,就会出现一个问题最优配置所需的DSP和内存块YOLO与发现是什么意思在一个典型的FPGA结构。也许一个FPGA织物提供了DSP与18×27块乘法/积累和32×128只公羊。最佳的解决方案是一个织物与16×8块DSP 48×1024只公羊。通过创建自定义模块,实现最优块DSP和RAM配置,Speedcore面料使用少40%死区来实现相同的功能以及实现更高层次的系统性能。

嵌入FPGA面料soc系统级别上提供了两个额外的好处:

  • 低功率,可编程I / O电路占总能耗的一半独立的fpga。一个eFPGA直接线连接到主机内的其他块SoC,不再需要大型可编程I / O缓冲区。
  • 降低系统成本,模具尺寸的eFPGA小于同等独立的FPGA。eFPGA可以为特定大小的目标函数。此外,功能独立的fpga可编程I / O缓冲区和eFPGA不需要接口逻辑。

超低延迟和实时处理是开车需要360°视图应用系统的有效实现。eFPGAs使用自定义模块使用一个CPU在同一主机SoC非常适合于实现目标检测和图像识别等专用功能,扭曲和失真校正,缝合在一起的最终图像。



留下一个回复


(注意:这个名字会显示公开)

Baidu