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