CPU和GPU善于掌握流盤算。它們的掌握驅動機械模子基于掌握令牌,掌握令牌提醒應施行語句的時候。這付與 CPU 和 GPU 完整的掌握力,能輕松實現龐雜的數據和掌握構造。然而,那樣干的價值是效力較低且難以毫無過失地正確編程。相反,FPGA 善于數據流運算。它們遵守數據驅動機械的形式,一旦一切操作數可以用就施行語句。那樣的成果便是 FPGA 能開釋偉大的并行性和吞吐量潛力,與此同時防止犯錯或發生副作用。
整體來講,作為 CPU 和 GPU 通用平臺的替換手藝,FPGA 可以自適應生成定制較量爭論架構,知足機器人的需求。由于具有亙古未有的靈活性,并能縮短設計周期,與此同時低落開辟本錢,FPGA 曾經z正在各種著名工業機器人制造商和醫療機器人運用中大批接納。正在 “A survey of FPGA- based roboTIc compuTIng”中,閱讀者可以看到一份有關基于 FPGA 的機器人較量爭論的調研,該調研展現了 FPGA 正在機器人運用領域的普遍適用性。下面是對 FPGA 特點的詳細描述:
? 自適應:當與此同時需求掌握流和數據流時,CPU 和 GPU因為時延和呼應時候問題沒法利用,而 FPGA 則能生成前所未有的定制盤算架構,知足嚴厲的實時要求和多重樞紐性要求。CPU 和 GPU 所采納的固定盤算架構,限定了它們的團體本領,包含呼應時候和時延。
? 高性能:FPGA 根據創設深度流水線化的數據途徑(流較量爭論)來提拔較量爭論性能,而并不是像 CPU 和 GPU 那樣依托較量爭論單位數目的增添。流較量爭論的事情道理是一個較量爭論單位發生的數據立即被流水線中的下一個較量爭論單位處置懲罰,那樣就免去了數據流通道中“提取-較量爭論-存儲 (fetch-compute-store)”的環節,便于數據發生者和消費者的運算操縱,進而提拔了性能。相反,因為存在架構固定、核數目固定、指令集固定、存儲器架構僵化等多重限定,CPU 和 GPU 只能以捐軀性能的體式格局開展較量爭論。
? 高能效:速度和功耗是數字電路的根基品質因數 (FOM,figures of merit)。功率是示意數字電路頻次和觸發率的函數。 FPGA 經由過程并行和直接施行算法調理頻次。FPGA 連結較低頻次和較低切換率(無指令獵取)舉行測算,但取 CPU 和 GPU 的等效測算性能相比,FPGA 正在更高的頻次下具有更大的并行性上風,進而客戶以實現更好的功率指數和更高的能效。
? 沒有鋪張算力:FPGA 借助靈活性實現芯片利用率最大化以提拔性能。靜態功用交流(DFX,曩昔被稱為“部份重設置”)同意正在 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 解決方案為機器人利用供應了軟硬件兼具的高靈活性測算基干,可供應低功耗、高性能、確定性、硬件可重設置、寧靜,和自適應等特征。