【導讀】為了獲得高性能,GPU架構利用強大的并行處理能力來處理高要求的圖像和計算任務。那么如何來優(yōu)化GPU原型設計呢?本文一位頂尖國際工程師分享了基于FPGA的GPU原型優(yōu)化設計方案,有興趣的可以看看。
安迪•喬力是一名高級應用程序顧問——該程序即Synopsys全球產品線領導品牌,基于FPGA的原型設計。安迪已從事FPGA技術研發(fā)25年多。最近,他又開始向客戶提供支持,支持他們建立在Synopsys HAPS平臺上的復雜CPU SoC和GPU IP原型設計需求,并同時在全球范圍內對嵌入在用戶程序中相同SoC和GPU IP的開發(fā)提供支持。
PowerVR Rogue GPU的建立基于效率市場領先的原則,這使過去幾代圖像處理器的性能得以顯著提高。為了獲得高性能,GPU架構利用強大的并行處理能力來處理高要求的圖像和計算任務。為獲得高性能而配置GPU IP時,設計團隊面臨的是多重的挑戰(zhàn)。他們需將復雜、高門數(shù)的設計融入單一FPGA有限的空間里??紤]到Series6、Series6XE 和Series6XT系列的可擴展性(從半個到八個集群),在嘗試測試這些復雜設備時卻面臨著更多的挑戰(zhàn)。
PowerVR Series6XT GPU的規(guī)模是從兩個集群到八個集群。由于其它選擇(即制造測試芯片)的過程變得越來越昂貴且耗時,Synopsys和Imagination便合作打造更具活力基于FPGA的原型設計結構。由此,使用多個FPGA甚至是最大的PowerVR GPU建模的新型優(yōu)化流程便得以問世。下述將具體展示獲得這一建樹的經(jīng)歷。
GPU原型設計需求
Synopsys所做的第一步是啟動一個概念驗證項目。這個項目為Imagination的PowerVR Series6 GPU展示了基于FPGA的原型設計。原型設計環(huán)境包括一個獨立回歸測試的頂層測試架構。試架構通過PCIe端口和使用DDR3存儲接口的存儲測試激勵和結果連接至PC主機。這使得測試團隊得以控制和分析GPU,并通過Universal Multi-Resource BUS (UMRBus)對系統(tǒng)進行配置且從PC主機訪問測試和結果數(shù)據(jù)。
支持回歸測試的頂層測試架構
團隊為包含多重FPGA的Synopsys HAPS-70 S48原型設計系統(tǒng)的實施進行手動的設計區(qū)分,獲得了幾個MHz的時鐘速度。在該系統(tǒng)上將實施7000個回歸測試——所有測試都不需要測試芯片。我們不僅僅區(qū)分衍生設計(甚至比Series6 GPU更大的設備),還創(chuàng)建了額外的測試邏輯和充足的性能,以支持視頻輸出。這可通過使用ProtoCompiler完成。ProtoCompiler是Synopsys第二代FPGA自動化區(qū)分工具。ProtoCompiler旨在將啟動所需的時間和工作量最小化,再為IP驗證和軟件開發(fā)部署Synopsys HAPS系列系統(tǒng)。它結合了自動化特性,用于設計規(guī)劃、邏輯綜合、調試和連接到其它驗證環(huán)境如Synopsys VCS和ZeBu。原型軟件與HAPS系列緊密結合,以提供系統(tǒng)性能。
PowerVR Series6和Series6XT原型的成功意味著Imagination設計團隊在將新型GPU引入市場時很少依賴測試芯片的使用。對原型的早期訪問可確保系統(tǒng)驗證、早期的軟件開發(fā)并簡化軟硬件集成。
Synopsys HAPS-70中的PowerVR Series6 GPU
利用原型平臺最終獲得12 MHz性能使Imagination得以在幾個小時內執(zhí)行數(shù)千個測試,并為平臺提供早期的軟件開發(fā)。此外,HAPS系統(tǒng)支持視頻輸出可允許實時、工作的I/O對圖像處理的正確性和質量進行檢查。