历史上的今天
今天是:2024年11月12日(星期二)
2021年11月12日 | 【自适应计算在机器人领域的应用】连载三:为什么FPGA能在机器人中起到重要作用
2021-11-12 来源:厂商供稿
: Víctor Mayoral-Vilches 和 Giulio Corradi,公司
连载三:为什么 能在机器人中起到重要作用
和 擅长控制流计算。它们的控制驱动机器模型基于控制令牌,控制令牌提示应执行语句的时间。这赋予 CPU 和 GPU 完全的控制力,能轻松实现复杂的数据和控制结构。然而,这样做的代价是效率较低且难以毫无差错地准确编程。相反,FPGA 擅长数据流运算。它们遵循数据驱动机器的模式,一旦所有操作数可用就执行语句。这样的结果就是 FPGA 能释放巨大的并行性和吞吐量潜力,同时避免出错或产生副作用。
总体而言,作为 CPU 和 GPU 通用平台的替代技术,FPGA 能够自适应生成定制计算架构,满足机器人的需求。因为拥有前所未有的灵活性,并能缩短设计周期,同时降低开发成本,FPGA 已经z在各类知名工业机器人制造商和医疗机器人应用中大量采用。在 “A survey of FPGA- based roboc compuTIng”中,可以看到一份有关基于 FPGA 的机器人计算的调研,该调研展示了 FPGA 在机器人应用领域的广泛适用性。下面是对 FPGA 特征的详细描述:
• 自适应:当同时需要控制流和数据流时,CPU 和 GPU因为时延和响应时间问题无法使用,而 FPGA 则能生成无与伦比的定制计算架构,满足严格的实时要求和多重关键性要求。CPU 和 GPU 所采用的固定计算架构,限制了它们的整体能力,包括响应时间和时延。
• 高性能:FPGA 通过建立深度流水线化的数据路径(流计算)来提升计算性能,而不是像 CPU 和 GPU 那样依靠计算单元数量的增加。流计算的工作原理是一个计算单元产生的数据立即被流水线中的下一个计算单元处理,这样就免去了数据流通道中“提取-计算-存储 (fetch-compu-store)”的环节,便于数据产生者和消费者的运算操作,从而提升了性能。相反,由于存在架构固定、核数量固定、指令集固定、架构僵化等多重限制,CPU 和 GPU 只能以牺牲性能的方式进行计算。
• 高能效:速度和功耗是的基本品质因数 (FOM,figures of merit)。功率是表示数字电路频率和触发率的函数。 FPGA 通过并行和直接执行算法调节频率。FPGA 保持较低频率和较低切换率(无指令获取)进行计算,但与 CPU 和 GPU 的等效计算性能相比,FPGA 在更高的频率下具有更大的并行性优势,从而客户以实现更好的功率指数和更高的能效。
• 不浪费算力:FPGA 借助灵活性实现芯片利用率最大化以提升性能。动态功能交换(,过去被称为“部分重配置”)允许在 CPU 上运行的线程化应用分时共享 FPGA。由此当给定线程正在处理 FPGA 生成的结果时,另一线程能使用 FPGA 进行不同的计算。
• 可预测:FPGA 帮助 CPU 和 GPU 卸载严格意义的实时计算,在执行时间上提供纳秒级预测能力,而且不会受到与 GPU 和 CPU 计算有关的变更或抖动的影响。
• 可重配置:机器人算法仍处于高速演进发展中,FPGA 能够按需进行动态重配置和更新。此外,还可以轻松地对 FPGA 进行重新编程以满足异构需求,实现 CPU 和 GPU 才能提供的通用能力。
• 安全:FPGA 能够按需灵活地构建安全,保障机器人数据流的安全。此外,FPGA 能充分利用重配置功能修正其硬件架构的缺陷(避免硬件风险)。这样设计人员就能迅速解决在固定计算架构上难以解决或者无法解决的安全风险(避免未来的风险,例如“熔毁”和“幽灵”)。
然而也有观点认为,尽管 FPGA 是机器人专家心目中理想的计算基干,但是它们提供的灵活性是以增加复杂性和所需的设计技能为代价的。“A survey of FPGA- based roboTIc compuTIng”列出了部分所需的额外技能。只有能够全面综合地运用含多核 CPU、GPU 和 FPGA 在内的所有这些技术,才能实现最优异的机器人性能。实际不然,赛灵思所提供这种集成式片上系统 (SoC) 解决方案,是将 CPU 通用软件的可编程能力与 FPGA 自适应硬件功能完美结合在了同一器件之中。
这些自适应 SoC 为机器人应用提供了软硬件兼有的高灵活性计算基础,并可提供高性能、低功耗、确定性、硬件可重配置、安全,以及自适应特性等价值。
要点总结:CPU 和 GPU 擅长控制流计算,而 FPGA 擅长数据流计算。自适应 SoC 解决方案为机器人应用提供了软硬件兼具的高灵活性计算基干,可提供低功耗、高性能、确定性、硬件可重配置、安全,以及自适应等特性。
史海拾趣
|
艾克赛尔(Axelwave)无线网络――无线监控在高速公路的应用 近年来中国经济的飞速发展,使中国的公路建设,尤其是高速公路的建设上了一个新台阶。而随着现代化高速公路的建设,新一代高速公路视频监控系统,日益成为高速公路监管的重要手段。无线监控凭借其简便、快速、受环境影响小的特点,也逐步成为高速公 ...… 查看全部问答> |
|
在基于软件无线电的某无线通信信号侦收平台的设计中,天线接收到的信号经过变频器处理和A/D变换之后,经过高速通道把采集的信号送入主控板进行数据分发处理。系统的结构框图如图1所示。 图1 主控板的系统结构框图 主控板的硬件核 ...… 查看全部问答> |
|
SIM300C是一款内嵌TCP/IP协议的GPRS模块。 可以使用他直接连接互联网,最近做的一个项目中使用到这个模块 AT+CREG? +CREG: 0,1 OK AT+CGATT? +CGATT: 1 OK Delay 120 seconds AT+CIPSTART=”TCP”,”211.145.35.45”,”2020” ...… 查看全部问答> |
|
wince提供的api只能录制成wave吧? 录成mp3需要使用开源的lame库? 我现在在模拟器上能录制成wave, 调用lame库把wave转成mp3不成功,似乎是lame库内存异常了. 哪位大侠有CE5.0下能用的lame库? 或者还有其它方式能直接录成mp3? 我的邮箱:victor_20 ...… 查看全部问答> |
|
signal abc: std_logic_vector(5 downto 0):=(others=>\'0\');困扰很久,一直不明白。哪位大侠能给详解一下?谢谢!… 查看全部问答> |
|
各位大侠pointer to different objects怎么解决 我用xdata 数据指针定义如下 struct course xdata * xdata course1;struct course xdata * xdata course2;struct course xdata * xdata course3;struct course xdata * xdata course4;volatile struct course xdata * xdata course[4]; ...… 查看全部问答> |
|
大家好, 请教一下网络设备(路由器、交换机等)接地若干问题: 1、设备配置三相电源插头,插座也接地了,请问一下电源接地的目的是避雷么?还是其他作用? 2、设备机壳有接地标识;机壳接地的作用是什么?是防止静电么? 3、设备安装到机柜内 ...… 查看全部问答> |
|
搬实验室,出东西啦,WIFI TFT LCD ARM M4等 搬实验室,出东西啦,WIFI TFT LCD ARM M4等 qq 84321999 注明eeword 额,东西太多, 价格感兴趣的加QQ聊吧,… 查看全部问答> |




