历史上的今天
返回首页

历史上的今天

今天是: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 解决方案为机器人应用提供了软硬件兼具的高灵活性计算基干,可提供低功耗、高性能、确定性、硬件可重配置、安全,以及自适应等特性。

推荐阅读

史海拾趣

ADPOW公司的发展小趣事

ADPOW公司始终将技术研发作为公司发展的核心驱动力。公司投入大量资源用于研发新技术、新产品,不断推陈出新。同时,公司积极与高校、研究机构等合作,引进先进技术和人才,为公司的持续发展注入新的活力。

Cantec Electronic Co Ltd公司的发展小趣事

Cantec Electronic Co Ltd最初只是电子产业链中的一家小公司,专注于生产电子元器件。然而,在一次偶然的技术研发中,公司成功开发出了一种新型的节能芯片,这一技术突破使得公司的产品在市场上大受欢迎。随着订单量的不断增加,公司逐渐扩大了生产规模,提升了研发实力,开始在电子行业中崭露头角。

FTDI公司的发展小趣事

Cantec Electronic Co Ltd最初只是电子产业链中的一家小公司,专注于生产电子元器件。然而,在一次偶然的技术研发中,公司成功开发出了一种新型的节能芯片,这一技术突破使得公司的产品在市场上大受欢迎。随着订单量的不断增加,公司逐渐扩大了生产规模,提升了研发实力,开始在电子行业中崭露头角。

CSR plc(剑桥硅晶无线电)公司的发展小趣事

CSR plc的创始人们怀揣着对音频技术的热情与追求,在剑桥这个科技创新的摇篮中开始了他们的征程。初创时期,公司的主要业务集中在音频领域,他们研发出了一系列创新的音频技术,为当时的移动设备市场带来了前所未有的听觉体验。这些技术的成功应用,不仅让CSR plc在行业内崭露头角,也为公司的后续发展奠定了坚实的基础。

Chemi-Con公司的发展小趣事

随着电子行业的快速发展,Chemi-Con公司不断加大对研发的投入,致力于技术创新和产品升级。公司研发团队在铝电解电容器的基础上,不断推出性能更优、体积更小、寿命更长的产品,满足了市场对于高效、可靠电容器的迫切需求。此外,Chemi-Con还积极拓展产品线,涉足了多层陶瓷电容器、薄膜电容器等多个领域,为客户提供更加丰富的选择。

General Transistor Corp公司的发展小趣事

面对日益激烈的市场竞争,GTC及时调整市场策略,加强品牌建设。公司注重提升产品质量和服务水平,积极参与国内外各类电子产品展会和论坛,提高品牌知名度和影响力。同时,GTC还建立了完善的销售网络和售后服务体系,为客户提供更加便捷、高效的服务。这些举措有力地推动了公司业务的快速增长和市场份额的扩大。

问答坊 | AI 解惑

电源问题

3.6V电池供电,想最终得到正负2.5V电压。 先用MAX770升压到5V,然后用ME7660进行负压变换得到正负5V电压。 然后通过电阻分压,得到正负2.5V电压。 不知道以上办法可不可行。 有没有更好的方法??用更简单的芯片来实现这个功能??…

查看全部问答>

电子原器件基本培训知识

电子原器件基本培训知识…

查看全部问答>

艾克赛尔(Axelwave)无线网络――无线监控在高速公路的应用

近年来中国经济的飞速发展,使中国的公路建设,尤其是高速公路的建设上了一个新台阶。而随着现代化高速公路的建设,新一代高速公路视频监控系统,日益成为高速公路监管的重要手段。无线监控凭借其简便、快速、受环境影响小的特点,也逐步成为高速公 ...…

查看全部问答>

采用MPC8260和FPGA的DMA接口设计

在基于软件无线电的某无线通信信号侦收平台的设计中,天线接收到的信号经过变频器处理和A/D变换之后,经过高速通道把采集的信号送入主控板进行数据分发处理。系统的结构框图如图1所示。 图1  主控板的系统结构框图  主控板的硬件核 ...…

查看全部问答>

wince下SIM300C的使用

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” ...…

查看全部问答>

急求WINCE5.0下录音成mp3的程序

wince提供的api只能录制成wave吧? 录成mp3需要使用开源的lame库? 我现在在模拟器上能录制成wave, 调用lame库把wave转成mp3不成功,似乎是lame库内存异常了. 哪位大侠有CE5.0下能用的lame库? 或者还有其它方式能直接录成mp3? 我的邮箱:victor_20 ...…

查看全部问答>

这个VHDL的信号赋初值语句怎么理解?

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聊吧,…

查看全部问答>