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