多片FPGA的原型驗(yàn)證系統(tǒng)的性能和容量通常受到FPGA間連接的限制。FPGA中有大量的資源,但I(xiàn)O引腳的數(shù)量受封裝技術(shù)的限制,通常只有1000個(gè)左右的用戶IO引腳。然后,這1000個(gè)引腳需要連接到其他FPGA或板上的外圍設(shè)備,以形成盡可能普遍適用的互連網(wǎng)絡(luò),但這應(yīng)該是什么樣子?引腳應(yīng)該以菊花鏈環(huán)形排列的形式連接各個(gè)FPGA,還是所有FPGA引腳都應(yīng)該以星形連接在一起?FPGA是否應(yīng)僅鏈接到相鄰的FPGA,或者是否應(yīng)做出一些規(guī)定以鏈接到更多遠(yuǎn)程設(shè)備?
其實(shí),每中連接方式都有優(yōu)點(diǎn)和缺點(diǎn)。
菊花鏈互連要求信號通過FPGA本身以連接遠(yuǎn)程設(shè)備。這種直通連接不僅限制了其他信號的引腳可用性,而且還顯著增加了整體路徑延遲。依賴于直通互連的電路板或系統(tǒng)通常比其他類型的電路板運(yùn)行得更慢。然而,這樣的電路板可能適合于一種由單個(gè)寬數(shù)據(jù)路徑主導(dǎo)的設(shè)計(jì),很少或沒有分支。
星形連接的使用可能更快,因?yàn)槿魏蜦PGA都可以通過直接導(dǎo)線驅(qū)動任何其他FPGA,但星形連接通常使用FPGA引腳的效率最低。如下圖所示??梢钥吹揭粋€(gè)簡單的多路復(fù)用總線上的三個(gè)設(shè)計(jì)塊是如何被劃分為一個(gè)板上四個(gè)FPGA中的三個(gè),其中板采用基于星形的固定互連。由于直接連接,三個(gè)塊之間的連接將是高速的,但第四個(gè)FPGA上的許多引腳將被浪費(fèi)。
此外,這些未使用的引腳將需要配置為高阻抗,以便不干擾期望的信號。如果第四個(gè)FPGA將用于設(shè)計(jì)的另一部分,那么這種引腳浪費(fèi)可能非常嚴(yán)重,并且可能會對將設(shè)計(jì)的其余部分映射到剩余資源的能力產(chǎn)生很大影響。
如果電路板是在內(nèi)部設(shè)計(jì)和制造的,我們可以根據(jù)需要精確地安排互連,以滿足原型項(xiàng)目的需求?;ミB通常類似于SoC設(shè)計(jì)的頂層框圖,特別是當(dāng)使用原型設(shè)計(jì)方法來簡化將頂層SoC塊劃分為FPGA時(shí)。這種自由度可能會為該原型項(xiàng)目產(chǎn)生最佳的互連布置,但對于后續(xù)項(xiàng)目來說可能是次優(yōu)的。此外,如果SoC設(shè)計(jì)在發(fā)展過程中發(fā)生變化,則在原型項(xiàng)目開始時(shí)修復(fù)互連資源可能會導(dǎo)致問題。
同樣,具有固定互連的商用原型驗(yàn)證板不太可能滿足給定項(xiàng)目的確切需求,因此需要做出妥協(xié)。典型的在許多商用原型驗(yàn)證板上找到的解決方案是前面提到的直接互連布置之間的混合。 理想的互連拓?fù)涫鞘裁?
我們正在尋求盡可能靈活的互連布置,但要有高性能,并且也可以盡可能地定制,以滿足給定原型項(xiàng)目的互連需求。供應(yīng)商應(yīng)理解這些明顯矛盾的需求所推斷出的妥協(xié),并應(yīng)盡量選擇適用于盡可能多的最終用戶項(xiàng)目的最佳互連安排。最靈活的解決方案是使用某種形式的間接互連,其中兩個(gè)最常見的示例如下圖所示。這兩個(gè)例子是延遲互連和交換互連。
在延遲互連拓?fù)渲?,F(xiàn)PGA之間的固定連接相對較少,但每個(gè)FPGA引腳都被路由到附近的連接器。然后,根據(jù)每個(gè)特定項(xiàng)目的需要,使用其他介質(zhì)(某些類型的連接器板或柔性電纜)連接這些連接器。例如,在上圖中,我們看到了一種連接器布置,通過在每個(gè)FPGA的多個(gè)連接器之間使用連接電纜,可以在FPGA1和FPGA 4之間進(jìn)行大量連接。如果需要,堆疊連接器仍允許多個(gè)點(diǎn)之間的星形連接。
下圖是基于HAPS的平臺的示意圖和照片,顯示了使用夾層連接器板和帶狀電纜進(jìn)行的本地和遠(yuǎn)程連接。
連接器的粒度將影響其靈活性,但延遲互連為將FPGA連接在一起以及將FPGA連接到系統(tǒng)的其他部分提供了大量可能性。此外,由于連接不是固定的,因此很容易斷開電纜和連接器板,并在下一個(gè)原型項(xiàng)目中以新拓?fù)渲匦逻B接FPGA。
間接互連的第二個(gè)例子是交換互連,它依靠可編程開關(guān)將互連的不同部分連接在一起。當(dāng)然,可以使用手動開關(guān),但連接密度要低得多,出錯(cuò)的可能性也會增加。假設(shè),我們有一個(gè)理想化的中央交換路由矩陣,它可以將任何點(diǎn)連接到電路板上的任何點(diǎn)。
該矩陣可編程并配置為滿足任何給定設(shè)計(jì)的分區(qū)和路由需求。由于是可編程的,它還可以在項(xiàng)目之間或甚至在項(xiàng)目期間快速更改,以便輕松探索不同的設(shè)計(jì)選項(xiàng)。對于遠(yuǎn)程操作,可能是在另一個(gè)站點(diǎn)的軟件驗(yàn)證實(shí)驗(yàn)室,可以將設(shè)計(jì)圖像加載到系統(tǒng)中,并配置交換互連,而無需任何人接觸原型本身。
交換互連方法的另一個(gè)顯著優(yōu)點(diǎn)是它非常快速且易于更改,因此用戶不必認(rèn)為互連是靜態(tài)的,而是更動態(tài)的。在將設(shè)計(jì)配置到板上之后,仍然可以將未使用的引腳或其他連接路由到其他點(diǎn),例如,允許快速探索解決方案或調(diào)試方案,或?qū)㈩~外信號路由到測試和調(diào)試端口。
交換互連的另一個(gè)優(yōu)點(diǎn)是可以將交換機(jī)的編程置于設(shè)計(jì)劃分工具的控制之下。在這種情況下,如果分區(qū)器意識到,為了實(shí)現(xiàn)最佳分區(qū),它需要某些FPGA之間的更多連接,它可以立即執(zhí)行該選項(xiàng),同時(shí)使用這些修改的互連資源繼續(xù)分區(qū)任務(wù)。在這些場景中,細(xì)粒度的交換機(jī)結(jié)構(gòu)非常有用,因此可以盡可能少地進(jìn)行必要的連接來解決分區(qū)問題,同時(shí)仍然允許其他地方使用其余的本地連接。
如上圖所示。這里我們可以看到,除了同一板上的FPGA之間的固定跡線之外,還有可編程開關(guān),可用于通過附加跡線連接FPGA。類似的交換機(jī)可以將內(nèi)存模塊鏈接到平臺或鏈接到其他板或平臺,從而構(gòu)建具有更多FPGA的更大系統(tǒng)。并非所有的交換機(jī)組合都是合理的,而且在大多數(shù)情況下,由于它們太多,無法手動控制,因此它們由軟件自動配置,軟件也了解系統(tǒng)拓?fù)浜头謪^(qū)要求。
審核編輯:劉清
-
FPGA
+關(guān)注
關(guān)注
1626文章
21670瀏覽量
601875 -
連接器
+關(guān)注
關(guān)注
98文章
14322瀏覽量
136169 -
交換機(jī)
+關(guān)注
關(guān)注
21文章
2622瀏覽量
99267 -
SoC設(shè)計(jì)
+關(guān)注
關(guān)注
1文章
148瀏覽量
18762 -
柔性電纜
+關(guān)注
關(guān)注
0文章
9瀏覽量
2181
原文標(biāo)題:【芯知識】多片F(xiàn)PGA原型驗(yàn)證系統(tǒng)互連拓?fù)浞治?/p>
文章出處:【微信號:于博士Jacky,微信公眾號:于博士Jacky】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論