我們知道,硬件比軟件跑得更快。賽靈思公司(Xilinx)的Zynq器件是當今性能最強的芯片之一。自2011年發布以來,這個帶有ARM處理器的FPGA芯片得到業界越來越廣泛的接受,其自身也在不斷演進。近日,賽靈思公司發布了采用16nm技術的全新的 Zynq UltraScale+ MPSoC,它帶有64位四核ARM Cortex-A53處理器和雙核ARM Cortex-R5實時處理器(參見“賽靈思最新發布的UltraScale+16nm系列FPGA、3D IC和MPSoC介紹”),創造了SoC性能的新標桿。 然而,FPGA SoC雖然功能強大,但它卻不那么容易使用。就像F1賽車,必須專業賽車手才能駕馭它。FPGA開發需要硬件語音技能,這在很大程度上制約了Zynq的普及。賽靈思公司當然意識到了這一點,所以一直致力于降低FPGA器件的開發難度。近日,該公司推出了一個全新的開發環境SDSoC,它有望解除(起碼是緩解)用戶的“痛點”,讓更多的嵌入式開發人員可以嘗試Zynq。賽靈思全球銷售與市場亞太區副總裁楊飛向我們講解了這個SDSoC開發環境的作用和特點。 圖1:溫文爾雅的賽靈思全球銷售與市場亞太區副總裁楊飛先生 楊飛介紹說,SDSoC開發環境是賽靈思公司SDx(Software Defined xx,即軟件定義的xx)戰略的一部分,其目的就是簡化系統開發難度,讓軟件工程師和系統架構師得以發揮更大的作用,使得他們也可以參與硬件開發。最早推出的是SDNet(軟定義網絡),這個面向通信網絡的方案將可編程能力和智能化功能從控制層擴展至數據層 (參見Xilinx推出業界首款“軟”定義網絡(SDNet)解決方案)。然后在去年年底,賽靈思面向數據中心推出了SDAccel,它針對OpenCL、C 和 C++的SDAccel 開發環境將單位功耗性能提高達25倍,從而利用FPGA 實現數據中心應用加速(參見Xilinx推出針對OpenCL、C和 C++的SDAccel開發環境)。 可見,SDx不僅僅是個工具或方法(Method),而是一個戰略或方法論(Methodology)。它或許可以開啟一個全新的系統開發局面。 相比面向網絡的SDNet和面向數據中心的SDAccel,面向嵌入式系統的SDSoC顯然應用更為廣泛,因為嵌入式系統幾乎無處不在。對于諸多傳統上采用CPU或ASSP芯片的系統,有了SDSoC,現在完全可以考慮Zynq SoC或MPSoC(多核),因為SDSoC提供類似ASSP編程體驗的C/C++設計環境,在開發難度上的差距得以大幅縮小,而Zynq的處理性能則遙遙領先。 圖2:SDSoC加速Zynq SoC或MPSoC的開發進程 SDSoC提供類似ASSP的編程體驗。簡便易用的Eclipse IDE(賽靈思SDK的擴展產品)為廣大軟件工程師所熟悉。可編程邏輯(PL)中的一鍵式加速功能、優化的庫、對Linux/FreeRTOS/裸機的支持等特性簡化了開發過程。 如下圖所示,SDSoC的特色還包括:系統級的特性描述、全系統優化的編譯器和面向平臺開發人員和系統架構師的專家級使用模型。在新聞發布會上,Xilinx亞太區Zynq業務發展經理羅霖演示了如何利用SDSoC開發一款運動監測系統。SDSoC可幫助開發者快速進行系統性能估算,報告軟件/硬件周期精度、性能和硬件利用率。利用可編程邏輯實現自動功能加速,與軟件相比,系統的性能據稱可提升100倍。演示結果顯示,在純軟件運行情況下,系統輸出的視頻出現卡頓,而在硬件加速后則非常流暢。 圖3:SDSoC開發環境的特點 楊飛介紹說,在不具備RTL語音技能的情況下,軟件工程師采用C/C++也可以完成大部分的系統開發任務,硬件工程師的工作則是開發底層的應用平臺,方便軟件工程師調用。這樣就解決了硬件工程師緊缺的難題,同時大幅加快了開發進程,使得過去需要一兩年的研發工作可以縮短到了一兩個月。 . 目前,賽靈思和第三方提供的Zynq開發板有ZC702、ZC706、ZedBoard、MicroZed 和ZYBO。含視頻與圖像、SDR等功能在內的賽靈思聯盟成員特定市場平臺即將推出。用戶也可以運用SDSoC和Vivado設計套件構建自己的定制平臺。SDSoC現可提供早期試用版本。更多信息請訪問china.xilinx.com/sdsoc。 |