在芯片設計中嵌入eFPGA——從起點(diǎn)開(kāi)始
雖然系統級芯片(SoC)的架構師們已了解嵌入式FPGA(eFPGA)內核能如何為他們的ASIC/SoC設計增加價(jià)值,甚至是在規劃出一個(gè)具體應用之前就了解,但可能還不清楚如何開(kāi)始進(jìn)行一次評估。Achronix將該階段稱(chēng)為準備階段或者Phase Zero——這是一個(gè)客戶(hù)去規劃其應用概念的評估期,客戶(hù)可以通過(guò)使用Achronix的工具和模型來(lái)對這些概念進(jìn)行測試。
本文引用地址:http://dyxdggzs.com/article/201806/381722.htm以下是一種非常實(shí)用的方法,可以幫助設計人員去決定eFPGA是否是其下一代SoC的正確選擇。
為什么會(huì )考慮使用eFPGA
設計人員通常會(huì )遇到各種各樣的計算處理問(wèn)題,常用的解決方案都是在SoC中嵌入CPU或GPU,然后依靠外部的分立FPGA來(lái)進(jìn)行加速。通常情況下,推動(dòng)SoC設計團隊去探索嵌入一個(gè)可編程陣列結構的主要動(dòng)力是增加可用來(lái)解決問(wèn)題的技術(shù),使用傳統方法去解決這些問(wèn)題既棘手又成本高。
利用已經(jīng)在多種ASIC設計中得到驗證的eFPGA半導體知識產(chǎn)權( IP)產(chǎn)品,可支持SoC開(kāi)發(fā)人員為其解決方案增加邏輯可編程能力,從而設計出能夠適應多種應用的同一款器件。在SoC中嵌入一個(gè)可編程硬件加速器不僅具有與之俱來(lái)的系統級優(yōu)勢,eFPGA還可為SoC設計人員提供其它優(yōu)勢。例如,eFPGA可提供與應用相匹配的存儲器、查找表(LUT)和數字信號處理器(DSP)單元模塊等個(gè)性化組合。eFPGA還可以改善帶寬、信號延遲、延遲時(shí)間和功耗,最重要的是成本方面的節省。除了這些優(yōu)勢以外,隨著(zhù)采用eFPGA后對電源和冷卻需求的降低,電路板的設計也變得更簡(jiǎn)單。最終,系統的物料清單(BoM)成本也降低了,這是因為不再需要獨立的FPGA芯片以及諸如電平位移器和穩壓器等所有支持它的器件了。
一旦決定采用eFPGA途徑,潛在客戶(hù)心中的下一個(gè)問(wèn)題都差不多是“先不要在意數據手冊,重要的是我該如何評估Speedcore eFPGA IP的能力是否可解決我的問(wèn)題?”
Phase Zero準備階段,也是合作的第一步
通常情況下,Achronix的客戶(hù)是通過(guò)了解設計流程來(lái)找到對Speedcore eFPGA IP的“感覺(jué)”而開(kāi)始了這個(gè)過(guò)程。該過(guò)程從使用Achronix的ACE設計工具開(kāi)發(fā)樣例設計開(kāi)始,其中已經(jīng)準備好了客戶(hù)要求的許多核心功能。該步驟有助于客戶(hù)去熟悉Speedcore的設計流程和可用于支持他們自己設計工作的資源。這個(gè)流程有助于客戶(hù)進(jìn)一步清晰Speedcore IP在其潛在A(yíng)SIC設計中的設計理念,并且在獲得最終解決方案之前對功耗和性能設定期望值。
準備階段很快就發(fā)展成為高度協(xié)作參與階段,該階段可通過(guò)IP和設計流程培訓、咨詢(xún)問(wèn)答環(huán)節、及應用討論來(lái)明了客戶(hù)對Speedcore eFPGA的評估。此項交互性工作理應共享文檔、工具、專(zhuān)業(yè)知識和詳細的技術(shù)資料,因而在A(yíng)chronix和客戶(hù)之間需要簽署一份相互保密協(xié)議(NDA),以保護大家的知識產(chǎn)權。一旦NDA完成,Achronix將為評估人員提供登錄認證信息來(lái)允許他們去下載ACE工具并激活評估用的許可。
ACE包括一個(gè)經(jīng)Achronix優(yōu)化的Synopsys Synplify Pro軟件,以及對Speedcore IP的全面支持。為了幫助評估,ACE工具在下載時(shí)附帶了兩個(gè)樣例性的Speedcore實(shí)例,可以用于所針對的樣例設計。這兩個(gè)樣例實(shí)例擁有不同的面積大小和資源數量(BRAM、LUT等等),以便于支持ASIC設計團隊去將他們的設計編譯到一個(gè)Speedcore eFPGA中,從而更好地、更深入地了解設計流程和性能。
設計人員需要大量的反饋——ACE設計工具會(huì )生成多個(gè)有關(guān)性能、功耗和資源利用率的報告,也包括各種用于版圖設計、布局和布線(xiàn)、位流數據生成、調試支持、靜態(tài)時(shí)序分析、以及自動(dòng)功能和時(shí)序仿真的工具。Achronix的應用團隊將在整個(gè)過(guò)程中提供培訓和支持。
面向金屬堆層的邏輯綜合
使用ACE軟件工具,客戶(hù)能夠通過(guò)RTL邏輯綜合對Speedcore IP進(jìn)行基準測試,目標是兩個(gè)通用Speedcore樣本實(shí)例中的一個(gè)。通常,該過(guò)程是在A(yíng)chronix應用團隊的幫助下執行的。在這個(gè)階段,評估人員通常會(huì )收集資源使用率,及最高頻率(fMAX)和早期的功耗集合文件。
一旦有了從初步評估中獲得的數據,客戶(hù)就能夠確定他們自己獨特的Speedcore實(shí)例所需的、合適的資源組合——即一個(gè)能夠滿(mǎn)足他們準確需求的實(shí)例。Achronix則以預計的芯片面積和IP的縱橫比、靜態(tài)功耗分布圖、配置時(shí)間和可編程單元模塊的精確配比作為回應。影響Speedcore實(shí)例的這些早期面積評估的變量包括設計元素本身、客戶(hù)在性能和功耗之間的權衡、及客戶(hù)的目標工藝節點(diǎn)和金屬層數。
查找表和邏輯存儲器已經(jīng)演變
不同FPGA陣列結構之間的硬件差別一直存在。Speedcore eFPGA陣列結構基于4輸入查找表,而與其它FPGA供應商的6輸入查找表架構截然不同。使用4輸入查找表是一個(gè)深思熟慮的選擇,因為經(jīng)驗數據表明4輸入查找表方案可為絕大多數當代的可編程邏輯應用提供最佳性能,并同時(shí)兼顧到芯片面積。
另一個(gè)顯著(zhù)區別是Speedcore陣列結構的分布式存儲器。Speedcore邏輯RAM(LRAM)單元模塊為4096位(被配置為128x32),使其比其他競爭對手產(chǎn)品所采用的分布式存儲器協(xié)議更大,因而是諸如緩沖任務(wù)這樣的中型應用最理想的選擇。事實(shí)上,Speedcore LRAM已經(jīng)被證實(shí)特別適用于各種各樣的聯(lián)網(wǎng)和多媒體功能,包括包管理和視頻處理。并且通過(guò)提供塊隨機存儲器(BRAM)和行業(yè)領(lǐng)先的LRAM,Speedcore存儲器單元模塊有助于設計人員去選擇合適的存儲器配置,來(lái)為其個(gè)性化的Speedcore實(shí)例優(yōu)化其中每平方毫米片芯上的性能。
原始設計轉換和RTL
對于eFPGA的客戶(hù)來(lái)說(shuō),從以前面向分立FPGA芯片的RTL開(kāi)始不是很少見(jiàn)的,而且它們通常還針對某一特別的FPGA供應商的架構進(jìn)行優(yōu)化。為了將這些代碼重新定向到Speedcore架構上,可以使用Achronix提供的IP庫來(lái)幫助客戶(hù)將原有的Intel/Altera和Xilinx的設計轉換為面向Achronix架構的設計。此外,任何最初打算用于標準單元實(shí)現的RTL都可以在目標Speedcore eFPGA上工作,但將受益于為Speedcore架構去優(yōu)化代碼的努力??蛻?hù)可以查閱一組已發(fā)布的代碼寫(xiě)作最佳范例,這樣就能更高效地使用Speedcore邏輯、存儲器和DSP資源。
整個(gè)過(guò)程密切合作
Achronix的應用團隊經(jīng)常深度參與到Speedcore客戶(hù)的項目中。這種參與是Achronix和ASIC團隊之間的協(xié)同評估努力的一個(gè)正常組成部分,并有助于解釋設計結果,從而推動(dòng)功耗、編譯時(shí)間、配置時(shí)間和性能方面的進(jìn)一步改善。
準備階段只是引入Speedcore的開(kāi)始,它支持設計人員去充分探索使用一個(gè)或多個(gè)定制化Speedcore實(shí)例去部署SoC的益處。一旦準備階段完成(可控制在僅僅3周之內),剩下的就是推動(dòng)設計步驟向前,也就是完成授權許可協(xié)議。這樣的一份協(xié)議(包括條款、條件和授權時(shí)間)實(shí)際上與半導體行業(yè)內去購買(mǎi)嵌入式CPU、基于標準的電路單元模塊和大多數其它嵌入式IP的許可是一致的。簡(jiǎn)而言之,確定一款Speedcore eFPGA是否是您下一個(gè)SoC開(kāi)發(fā)項目的合適選擇,就是一個(gè)直接明了的、由Achronix團隊密切支持的評估過(guò)程。
作者:Alok Sanghavi,Achronix Semiconductor資深產(chǎn)品營(yíng)銷(xiāo)經(jīng)理
評論