提到自动驾驶,机器人视觉,高清摄像机,都要想到摄像头这个单元,先前本侠也讲过一些FPGA应用在高清摄像头和机器视觉中的深度摄像头以及双目摄像头等,FPGA在里面的作用主要是对采集的图像进行处理,对图像的处理需要硬件有着很好的并行的性能,那么它处理速度跟ARM的CPU比起来有没有优势呢?本侠今天就带领各位一起来探索一下FPGA在边缘计算方面的应用。

提起计算速度,我们首先能想到的是云计算。云计算有数不清的好处,例如计算快,计算数据的量大,等等。但智者千虑必有一失,没有云计算的厂家能够保证他能做任何的事情,云计算也有自己的不足之处,最大的不足就是计算的实时性不够高。例如,在你把一些数据送到云端去进行处理的时候总会有一些延迟,最难熬的莫过于等结果的时间。边缘计算需要很高的计算性能,而且有着很高的实时性,FPGA能够同时并行处理很多的事情,既能满足数据处理速度的要求,还能满足实时性的需求,可谓是两全其美。今年在加利福尼亚的圣塔拉拉举行的嵌入式视觉峰会上展示了基于Aldec的TySOM-2-7Z100原型板的4摄像头ADAS模型,如图.1所示。TySOM的性能很好,主要是因为里面的核心的运算处理部件是Xilinx Zynq Z-7100的SoC。

图.1 TySOM-2-7Z100原型板

如图.2可以看到Zynq在TySOM板子中的位置,为什么Zynq中的FPGA能够在边缘计算方面得到这么好的应用呢?Zynq-7000可编程SoC将软件可编程的ARM处理器和硬件可编程的FPGA放到了一个芯片中,能够实现数字分析的同时还能够实现硬件加速,里面集成了CPU,DSP,ASSP和混合信号处理模块。图像处理所用的就是Zynq里面的FPGA模块。那么ARM核心在TySOM办卡中能够起到什么作用呢?

Aldec的TySOM-2-7Z100原型板的良好的性能依赖于Zynq里面有着双核的ARM Cortex-A9处理器和一个FPGA逻辑。整个图像处理的过程是先从摄像头采集图像开始,使用一个边缘检测算法(这里的边缘指的是对物理边缘的感知,例如物体或者是巷子的边界线等)。这是一个计算密集的任务,因为有上百万的像素需要经过计算。采集到的图像如果是在ARM CPU中进行处理的话每秒钟只能处理3张的图像,然而在FPGA中每秒可以处理27.5张的图像,可见在Zynq中FPGA有着举足轻重的作用。也就是说,有了FPGA图像的处理速度有了将近10倍的速度的提升。

图.2 TySOM-2-7Z100板的正面图

有了高性能的核心处理芯片还不够,还需要神通广大的外设接口来跟其他的设备进行交互。TySOM的设计能够兼容多达362个I/O的外设接口、16个GTX收发器、两个FMC-HPC可以支持扩展子卡的连接口。ARM CPU处理数据的时候需要的基本的标准接口例如DDR3 RAM,USB和HDMI;ARM核心还能够支持Linux的操作系统和其他一些类型的实时操作系统。不仅如此,ARM的CPU有着1GB的DDR3 RAM能够让其进行支配,可以支持扩展32GB的SSD存储空间。网络的交互可以通过RJ45接口经过Gigabit Ethernet PHY来实现,还配备了4个USB 2.0的接口。大多数的FPGA的接口都通过两个FMC-HPC sockets接口来实现跟其他设备的交互。这样,ARM核心和FPGA模块都能够和外界进行信息的交互。

自动驾驶正在如火如荼的进行中,随着国家政策对自动驾驶的慢慢的认可,相信对技术来讲是一件好事,无论是硬件还是算法都会有自己的用武之地,在智慧城市,智慧生活的大环境下,FPGA的发展也会随着潮流稳步的向前推进,更好的去拥抱改变,创造改变的机会。

ZYNQ7000性能分析的更多相关文章

  1. 如何进行python性能分析?

    在分析python代码性能瓶颈,但又不想修改源代码的时候,ipython shell以及第三方库提供了很多扩展工具,可以不用在代码里面加上统计性能的装饰器,也能很方便直观的分析代码性能.下面以我自己实 ...

  2. SQL Server-聚焦IN VS EXISTS VS JOIN性能分析(十九)

    前言 本节我们开始讲讲这一系列性能比较的终极篇IN VS EXISTS VS JOIN的性能分析,前面系列有人一直在说场景不够,这里我们结合查询索引列.非索引列.查询小表.查询大表来综合分析,简短的内 ...

  3. SQL Server-聚焦NOT IN VS NOT EXISTS VS LEFT JOIN...IS NULL性能分析(十八)

    前言 本节我们来综合比较NOT IN VS NOT EXISTS VS LEFT JOIN...IS NULL的性能,简短的内容,深入的理解,Always to review the basics. ...

  4. SQL Server-聚焦LEFT JOIN...IS NULL AND NOT EXISTS性能分析(十七)

    前言 本节我们来分析LEFT JOIN和NOT EXISTS,简短的内容,深入的理解,Always to review the basics. LEFT JOIN...IS NULL和NOT EXIS ...

  5. SQL Server-聚焦EXISTS AND IN性能分析(十六)

    前言 前面我们学习了NOT EXISTS和NOT IN的比较,当然少不了EXISTS和IN的比较,所以本节我们来学习EXISTS和IN的比较,简短的内容,深入的理解,Always to review ...

  6. SQL Server-聚焦NOT EXISTS AND NOT IN性能分析(十五)

    前言 上一节我们分析了INNER JOIN和IN,对于不同场景其性能是不一样的,本节我们接着分析NOT EXISTS和NOT IN,简短的内容,深入的理解,Always to review the b ...

  7. SQL Server-聚焦INNER JOIN AND IN性能分析(十四)

    前言 本节我们来讲讲联接综合知识,我们在大多教程或理论书上都在讲用哪好,哪个性能不如哪个的性能,但是真正讲到问题的实质却不是太多,所以才有了本系列每一篇的篇幅不是太多,但是肯定是我用心去查找许多资料而 ...

  8. Java 性能分析工具 , 第 3 部分: Java Mission Control

    引言 本文为 Java 性能分析工具系列文章第三篇,这里将介绍如何使用 Java 任务控制器 Java Mission Control 深入分析 Java 应用程序的性能,为程序开发人员在使用 Jav ...

  9. Java 性能分析工具 , 第 2 部分:Java 内置监控工具

    引言 本文为 Java 性能分析工具系列文章第二篇,第一篇:操作系统工具.在本文中将介绍如何使用 Java 内置监控工具更加深入的了解 Java 应用程序和 JVM 本身.在 JDK 中有许多内置的工 ...

随机推荐

  1. Spring Cloud 升级最新 Greenwich 版本,舒服了~

    去年将 Spring Cloud 升级到了 Finchley 版本: Spring Cloud 升级最新 Finchley 版本,踩了所有的坑! 这个大版本栈长是踩了非常多的坑啊,帮助了不少小伙伴. ...

  2. 把ubuntu自带的高gcc版本降到低版本(如gcc 3.4)的方法

    转载自: 博客1.博客2 .博客3 步骤 第一步: 下载所需gcc安装包(.deb格式) 手动:老版本gcc下载地址:http://old-releases.ubuntu.com/ubuntu/poo ...

  3. GitLab修改root用户密码

    GitLab是一个私有的Git仓库,具有较好的项目管理和用户管理能力.对于普通用户而言,通过系统的重置密码,接受邮件即可解决,可是GitLab的管理员账号,缺省的邮箱是一个不存在的邮箱地址,所以没有办 ...

  4. 小程序报错 “渲染层错误” Expect END descriptor with depth 0 but get another

    项目中有几个页面在控制台出现这个“渲染层错误”,虽然不影响业务操作,怕存在潜在风险,今天抽时间找了下原因,解决这个问题. 控制台报错日志如下: (中国标准时间) 渲染层错误 Error: Expect ...

  5. java 获取类路径

    package com.jason.test; import java.io.File; import java.io.IOException; import java.net.URL; public ...

  6. 【插件】【idea】Maven Helper查找maven依赖图

    File->Settings->Plugins 打开pom文件,地下有一个Dependency Analyzer选项

  7. 【C++】内联函数(inline)和宏定义(# define)的优劣及其区别

    一.宏定义:# define 1.为什么要使用宏? 因为调用宏比调用函数更有效率,函数的调用必须要将程序的执行顺序转移到函数所存放的内存地址中,将函数程序内容执行完后,再返回到执行该函数前的地方,这种 ...

  8. Elasticsearch Transport 模块创建及启动分析

    Elasticsearch 通信模块的分析从宏观上介绍了ES Transport模块总体功能,于是就很好奇ElasticSearch是怎么把服务启动起来,以接收Client发送过来的Index索引操作 ...

  9. drf面试题及总结

    drf面试题及总结 1.什么是前后端分离 2.什么是restful规范 3.模拟浏览器进行发送请求的工具 4.查找模板的顺序 5.什么是drf组件 6.drf组件提供的功能 7.drf继承过哪些视图类 ...

  10. NOI2019网络同步赛游记

    我发的邮件**f没收到,后来去专门询问才整到一个名额(估计是嫌我太菜,参加了也是垫底) day -1 上午写了到类似随机游走的高斯消元期望dp,然后颓颓颓 下午打洛咕月赛.T1一直50pts,后来才知 ...