作者:Microchip Technology Inc. 資深市場營銷工程師 Apurva Peri 使用 SmartHLS™可將開發時間縮短最多 5 倍。 高級電機控制應用簡介 現今的電機控制應用需要具有明確結果的多軸、多功能解決方案。試想一下大型自動化工業制造單元中的機器人(循環執行任務),甚至是機器人輔助進行的醫療手術——這些機器人需要在各個方向上精確控制,同時產生確定性輸出。同樣,高端工業級無人機需要穩定的陀螺儀和更高的機械可靠性,以及 DSP 的高速計算能力。在更重要的場景中,例如植入像心室輔助裝置這樣的醫療植入體(改善心臟功能),這類操作不容有任何閃失,因此除了精度和確定性之外,穩健性和可靠性也必不可少。電動機還執行諸如航天器中的姿態控制、展開機制、運動和節流閥控制等關鍵功能。機翼執行機構通常在起飛后或準備著陸時以較低的速度維持飛機的燃油效率。這些應用需要在高真空、輻射和不斷變化的工作環境下保持較長的使用壽命、高可靠性和安全性。 降低系統成本,打造將數字外設與處理器內核集成在一起的單一聯網、多協議硬件,是一以貫之的需求。 FPGA 在電機控制設計中的優勢 與 ASIC 相比,FPGA 的優勢更多,最突出的一點是其具有現場可配置性的確定性并行計算功能。它們可以實現復雜的邏輯功能,支持多種系統的實現和修改。 我們的 FPGA 獨樹一幟,因為它們具有基于閃存的非易失性存儲器。憑借這種瞬時啟動技術,它們的功耗可比競品 FPGA 低 30%到 50%。FPGA 具有抗輻射性能和獨特的安全功能,例如避免過度構建和克隆、設計 IP 保護、信任根、安全數據通信和防篡改功能。具體而言,在電機控制方面,我們的 FPGA 具有低功耗、低抖動、低延遲、高精度、高確定性和可擴展性,可在解決現代電機控制應用面臨的復雜挑戰方面發揮重要作用。 SmartHLS 助力提高生產率 使用 Verilog/VHDL 從頭開始為 FPGA 設計基于硬件的新電機控制器會非常耗時。通常,工程師已經有一個使用 C/C++設計的電機控制器正在運行。在這種情況下,理想的解決方案是針對 Microchip PolarFire® FPGA,自動將現有的 C++軟件代碼轉換為等效的硬件實現。智能高級綜合(SmartHLS™)工具和集成開發環境可使這項工作變得簡單易行,它們可以針對 Microchip FPGA 將 C++軟件編譯成硬件模塊。借助高級綜合工具,您可以將 C++作為輸入,并生成 Verilog 作為輸出。通常,HLS 將生成的頂層 C++函數標記為等效的硬件 IP核心。您可以在頂層 C++函數中描述算法。然后,您可以使用 HLS pragma 和 C++ HLS 庫來描述標準硬件接口,如 AXI、AXI-stream 或存儲器接口。HLS 有一個頗具吸引力的好處,那就是與 RTL 設計相比,使用 C++可以顯著提高抽象水平和生產率,這有助于縮短硬件設計和驗證時間。HLS 可以輕松添加或刪除流水線寄存器,以實現用戶指定的目標頻率,因此它非常適合進行架構探索。 我們有一位客戶使用 SmartHLS 將其具有嚴格限制的高級電機控制設計移植到我們的FPGA。客戶的主要目標是將確定性延遲時間縮短到 3 μs 以內。該延遲時間包括從接收每一個(共八個)電機編碼器傳感器的信號到 FPGA 電機控制內核更新所有這些傳感器的電流輸出之間的反饋時間。由于 DDR 和 PCIe®等外部 I/O 要求,客戶還希望設計能夠在 200MHz 以上的時鐘頻率下運行。此外,他們還希望能夠將設計輕松安裝到 PolarFire MPF500器件上。 客戶給出了他們的結果質量報告,結果遠超他們的設計目標。 他們的周期延遲時間縮短了 50%,同時頻率提高到其目標時鐘頻率 200 MHz。電機控制器的最終確定性延遲時間也減半,縮短至約 2 μs。電機控制器的面積也縮小到足以放入 300K LE PolarFire FPGA。 將原始 C++電機控制器與經過改進的 FPGA 版本進行比較的實驗表明,就延遲時間而言,基于 FPGA 的電機控制器的速度比 Arm®單片機高 2.5-6 倍,具體取決于單片機的抖動和實時操作系統。 單擊此處了解有關 SmartHLS 的更多信息。 單擊此處了解有關我們的電機控制解決方案的更多信息。 單擊此處注冊,可根據需要訪問我們的網絡研討會“Microchip FPGA 如何利用 HLS 提高使用 C++的電機控制應用的生產率” |