FPGA 101 手把手課堂:Vivado IPI 為 Aurora 設計開(kāi)放 FPGA 共享資源

發(fā)布時(shí)間:2016-1-20 15:34    發(fā)布者:eechina
關(guān)鍵詞: Vivado , Aurora
賽靈思的 IP Integrator 工具可幫助您改善設計輸入生產(chǎn)力和多核 Aurora 設計的資源優(yōu)化。

作者:

K Krishna Deepak
賽靈思高級設計工程師
kde@xilinx.com

Dinesh Kumar
賽靈思高級工程經(jīng)理
dineshk@xilinx.com

Jayaram PVSS
賽靈思高級工程經(jīng)理
jayaram@xilinx.com

Ketan Mehta
賽靈思高級IP產(chǎn)品經(jīng)理
ketanm@xilinx.com

客戶(hù)在必須由單個(gè) FPGA 實(shí)現的大型設計中使用多個(gè)知識產(chǎn)權 (IP) 實(shí)例時(shí),面臨的主要挑戰之一是如何在整個(gè)系統中有效共享資源。賽靈思 Aurora 串行通信內核的共享邏輯特性使用戶(hù)可以在多個(gè)實(shí)例中共享資源。Vivado 設計套件中的 IP Integrator 工具對于充分利用共享資源至關(guān)重要。

電子行業(yè)正快速轉向高速串行連接解決方案,同時(shí)逐漸舍棄并行通信標準。行業(yè)標準串行協(xié)議具有固定的線(xiàn)路速率和確定的信道寬度,有時(shí)無(wú)法充分利用千兆位串行收發(fā)器的功能。

Aurora 是賽靈思的高速串行通信協(xié)議,一直在行業(yè)內非常受歡迎。當某些應用領(lǐng)域中的行業(yè)協(xié)議實(shí)現過(guò)程太過(guò)復雜或者太耗費資源時(shí),Aurora 通常是首選方案。Aurora 能實(shí)現低成本、高數據速率的可擴展IP解決方案,可用于靈活地構建高速串行數據通道。

需要同時(shí)對線(xiàn)路速率和通道寬度進(jìn)行擴展的高性能系統和應用正在期待將 Aurora 作為解決方案。此外,Aurora 還被應用于 ASIC 設計以及包含多塊 FPGA 的系統(用背板傳輸千兆位的數據)中。Aurora 采用簡(jiǎn)單的幀結構,并具有協(xié)議擴展流量控制功能,可用于封裝現有協(xié)議的數據。它的電氣要求與產(chǎn)品設備兼容。賽靈思提供 Aurora 64b66b 和 Aurora 8b10b 內核,作為 Vivado 設計套件 IP 目錄的一部分。

Vivado IP Integrator (IPI) 是用于復雜多核系統中資源優(yōu)化的重要工具。就這一點(diǎn)而言,IPI 將幫助您充分利用 Aurora 64b66b 和 Aurora 8b10b 內核中的共享資源,尤其是“共享邏輯”特性。為了方便起見(jiàn),我們重點(diǎn)介紹 Aurora 64b66b IP,同時(shí)您要了解類(lèi)似技術(shù)也適用于 Aurora 8b10b 內核。

AURORA 的共享資源一覽

圖 1 是 Aurora 64b66b 內核的典型方框圖。突出顯示部分為時(shí)鐘資源,例如混合模式時(shí)鐘管理器 (MMCM)、BUFG 和 IBUFDS;以及千兆位收發(fā)器 (GT) 資源,例如 GT common 和 GT 通道,在圖中標示為賽靈思 7 系列器件雙路設計的 GT1 和 GT2。


圖 1–用橙色突出顯示的 Aurora 64b66b 內核中的共享資源

就像 Kintex-7 FPGA KC705 評估套件那樣,典型 16 路 Aurora 64b66b 內核所需的時(shí)鐘和 GT 資源已在表 1 中列出。
FPGA 中的時(shí)鐘和 GT 資源取決于所選的器件和封裝類(lèi)型。多個(gè) IP 內核經(jīng)常要求在系統級使用資源。因此,必須要優(yōu)化利用這些寶貴資源,以降低系統成本和功耗。

IPI 工具將內核作為頂層模塊進(jìn)行可視化;標準接口之間的連接現在更加直觀(guān)和智能化,在有些情況下甚至可實(shí)現自動(dòng)化。正確的設計規則檢查被置入工具以及 IP 周?chē),以確保突出顯示錯誤連接,以便設計人員在設計輸入時(shí)發(fā)現它們。該工具能自動(dòng)生成頂層封裝文件以及調用正確的引腳級 I/O 要求,因此可幫助系統設計人員提高生產(chǎn)力。如果您已經(jīng)設計了定制子模塊,可以考慮

AURORA 資源共享

因為多款基于 GT 的賽靈思內核都支持共享邏輯特性,Aurora 內核可配置為“內核(主機)中的共享邏輯”或“實(shí)例設計(從機)中的共享邏輯”。當在系統級進(jìn)行實(shí)例化時(shí),兩種配置的組合可支持在主機與從機之間共享時(shí)鐘和 GT 資源。

對于需要使用共享邏輯特性的應用,手動(dòng)建立多個(gè) IP 之間的連接有可能會(huì )產(chǎn)生錯誤,并增加總的設計輸入時(shí)間。借助工具進(jìn)行設計輸入是一種解決該問(wèn)題的方法,而賽靈思的 IP Integrator 能游刃有余地完成這個(gè)任務(wù)。

依照賽靈思應用指南 1168,“針對 Vivado IP Integrator 打包定制 AXI IP”(XAPP1168) 對設計進(jìn)行打包,并在 IPI 中使用子模塊。

Aurora 的共享邏輯特性不僅可讓用戶(hù)在多個(gè)實(shí)例中共享資源,而且還能在相同 GT Quad 封裝中使用 GT 通道,無(wú)需編輯 GT common、PLL、時(shí)鐘以及相關(guān)模塊。唯一的約束是“共享”內核的線(xiàn)路速率應該相同(允許存在諧波,只要您能接受其對時(shí)鐘資源的影響即可)。

典型的共享邏輯設計在一個(gè) Guad 中包含一個(gè)主機以及一個(gè)或多個(gè)從機實(shí)例。與大多數其它通信 IP 不同,Aurora不僅限于單個(gè) Guad 共享。Aurora 內核的共享邏輯定義可擴展用于任意數量的受支持信道。

下面的一些實(shí)例展示了 Aurora 共享邏輯特性的應用情況。

多個(gè)單信道設計

單部 FPGA 中的多個(gè)單信道設計與多信道設計的不同之處在于前者需要通道綁定。我們可以直觀(guān)地看到多個(gè)單信道設計所需的資源會(huì )在系統級線(xiàn)性增加。讓我們考慮不同情況,并了解共享邏輯特性如何在每種情況下起作用。

我們首先從包含四條單信道的設計開(kāi)始。通過(guò)實(shí)例化四個(gè)單信道 Aurora 內核,您可直接構建這類(lèi)設計。如果我們實(shí)際執行該實(shí)現方案,會(huì )發(fā)現每個(gè) Aurora 設計都有一個(gè) GT common 實(shí)例;因此,該設計的布局和資源利用會(huì )遍及四個(gè) GT Guad。這種方法消耗太多資源,不一定總是可行。

表 1–Kintex-7 FPGA KC705 評估套件上的時(shí)鐘和 GT 資源利用率
16 信道  Aurora 設計
 器件中提供的數量Aurora 使用的數量
資源
MMCME2_ADV101
IBUFDS_GTE282
GTE2_COMMON44
GTXE2_CHANNEL1616


為實(shí)現更好的布局以及在功耗和資源方面精心優(yōu)化的解決方案,所選的四個(gè) GT 應來(lái)自同一個(gè) GT Guad。

如果沒(méi)有共享邏輯特性,而是通過(guò)手動(dòng)處理所生成的設計來(lái)滿(mǎn)足該要求,需要花費很大精力。要想有效使用共享邏輯特性,您需要生成一個(gè)主機模式的 Aurora 內核以及其它三個(gè)從機模式的 Aurora 內核,如圖 2 所示。另外,還有一些其它的系統級考慮因素,例如主機內核控制了進(jìn)入從機內核的時(shí)鐘,所以需要對內核復位。只有用相同的線(xiàn)路速率配置 Aurora 內核,才能立即實(shí)現這種配置和資源優(yōu)化。表 2 定量地說(shuō)明了在系統中為四個(gè)單信道設計使用共享邏輯特性所能實(shí)現的優(yōu)勢。


圖 2–使用一個(gè)主機 Aurora 內核(左)和三個(gè)從機的共享邏輯設計

占用 12 個(gè) GT 通道的設計

對于 7 系列 FPGA 而言,基于南北時(shí)鐘的要求是如果從中間 Guad 中選擇單個(gè)參考時(shí)鐘源,其最多可服務(wù) 12 個(gè) GT 通道。
讓我們考慮下這種使用情況,其需要 12 個(gè)單信道設計使用盡可能少的時(shí)鐘資源。

如果您將圖 2 所示的“一個(gè)主機加三個(gè)從機”配置進(jìn)行延伸,便可節省時(shí)鐘資源。如果將這種 1+3 配置延伸為三個(gè) Guad,那么設計一共需要六個(gè)差分時(shí)鐘資源。不過(guò),如果您選擇讓其中兩個(gè)主機設計接受一個(gè)單端 INIT_CLK 和一個(gè) GT 參考時(shí)鐘,那么還能節省更多資源。這樣我們可將該系統的差分時(shí)鐘輸入從六個(gè)減少至兩個(gè),從而節省 IBUFDS/IBUFDS_GTE2 資源需求(參見(jiàn)表 3)。設計中的 IBUFDS_GTE2 資源節省實(shí)際上還意味著(zhù)可以節省外部時(shí)鐘資源以及設計管腳。

表 2–在包含四條單信道的設計中使用共享邏輯所實(shí)現的資源利用率優(yōu)勢
具有四條單信道的設計
 無(wú)共享邏輯有共享邏輯
資源
MMCME2_ADV41
IBUFDS_GTE241
GTE2_COMMON41
GTXE2_CHANNEL44

此外,還可針對 MMCM 進(jìn)行類(lèi)似的優(yōu)化。

表 3–在包含 12 條單信道的設計中使用共享邏輯功能所實(shí)現的資源優(yōu)勢
具有 12  條單信道的設計
   有共享邏輯(使用單端主機輸入時(shí)鐘)
   
  有共享邏輯(默認)
資源無(wú)共享邏輯 
MMCME2_ADV1233
IBUFDS_GTE21231
GTE2_COMMON1233
GTXE2_CHANNEL121212

3X4 信道設計


假設需要 3 個(gè)四信道設計,如果沒(méi)有共享邏輯特性,您可能要創(chuàng )建 3 個(gè)主機模式的四信道 Aurora 內核,然后對生成的設計進(jìn)行手動(dòng)處理,以獲得最佳的時(shí)鐘資源利用率。如果您能直接實(shí)現同樣的結果呢?您可按圖 3 所示對一個(gè)主機內核和兩個(gè)從機內核進(jìn)行定制,以實(shí)現此目的。

而更大尺寸(16 個(gè)或以上)的單信道 Aurora 設計就更加需要共享邏輯。有時(shí)候甚至需要 48 個(gè)單信道獨立雙工鏈路。允許的 Aurora單信道鏈路數量?jì)H受所選器件的可用 GT 資源數量限制。在這種情況下,如果不有效利用共享邏輯特性,很難實(shí)現這類(lèi)系統設計。

該設計覆蓋 12 個(gè) Guad,因此需要 2*12 個(gè)差分時(shí)鐘資源,從電路板設計角度看,這實(shí)在是項令人生畏的艱巨任務(wù)。您可利用“12 條單信道設計”案例中所提到的技術(shù)方法,減少整個(gè)系統的差分時(shí)鐘和 MMCM 需求(參見(jiàn)表 5)。

非對稱(chēng)信道和其它定制優(yōu)化

在視頻投影機這樣的設備中,主流數據以高吞吐量單方向流動(dòng),而吞吐量較低的反向通道則用來(lái)傳輸輔助或控制信息。在此類(lèi)應用設備中,采用全面的雙工鏈路意味著(zhù)使用更少的帶寬,本質(zhì)上會(huì )降低系統設計的投資回報率。這種問(wèn)題的理想解決方案是:如圖 4 所示,采用非對稱(chēng)的鏈路寬度以及最優(yōu)的 GT 資源利用率,其中,具有較高吞吐量的數據流方向上的信道數量要多于具有較低吞吐量的數據流方向上的信道數量。


圖 3–面向 3 個(gè)連續 Guad 上四信道 Aurora 設計的“1 個(gè)主機和 2 個(gè)從機”配置

由于 Aurora 內核中現有的數據流模式(單工/雙工),目前只能以相同的 TX 和 RX 信道數量來(lái)配置內核。要想使兩個(gè)方向的信道數量不同,您需要為每個(gè)方向生成兩個(gè) Aurora 單工內核。賽靈思應用指南 1227,“采用 Aurora 64B/66B IP 核的非對稱(chēng)信道設計” (XAPP1227) 中介紹了在 7 系列 FPGA 上構建非對稱(chēng)信道設計的方法。

另外一個(gè)有用的設計策略是 BUFG 資源優(yōu)化。通常,為了實(shí)現在相同或不同線(xiàn)路速率下工作的多個(gè) Aurora 內核,系統設計人員需要知道器件具體的時(shí)鐘要求和限制。要想實(shí)現很多條 Aurora 鏈路,就需要為每條鏈路生成時(shí)鐘。節約時(shí)鐘資源會(huì )提高系統的性?xún)r(jià)比。如果系統設計具有多個(gè)模塊,而且時(shí)鐘資源 (BUFG) 緊張,那么應考慮用 BUFR/BUFH 代替 BUFG。建議您使用相同類(lèi)型的緩沖器驅動(dòng) GT 內核的兩個(gè) TX 路徑用戶(hù)時(shí)鐘。

表 4–3 個(gè)四信道設計的最優(yōu)信道選擇
3x4 單信道設計的最優(yōu)信道選擇
GTQ2Master1_3Master1_4
Slave2_3Slave2_4
GTQ1Slave2_1Slave2_2
Slave1_4Master1_2
GTQ0Slave1_3Slave1_2
Master1_1Slave1_1


圖 4–用 Aurora 實(shí)現跨鏈路的非對稱(chēng)數據傳輸

7 系列 Aurora 內核需要一個(gè)額外的動(dòng)態(tài)重配置端口 (DRP) 時(shí)鐘輸入,否則將需要使用一個(gè) BUFG。如果 Aurora 的自由運行時(shí)鐘頻率選定在允許的 DRP 時(shí)鐘范圍內,那么 Aurora 輸出的自由運行時(shí)鐘可以重復使用并連接回到 DRP 時(shí)鐘。這樣您可節省所生成設計中的 BUFG 數量。

在為多個(gè) Aurora 設計選擇線(xiàn)路速率時(shí),您應記。

如果線(xiàn)路速率是整數倍數,便于時(shí)鐘推導和在多條鏈路之間共享,這樣您就可共享時(shí)鐘資源。如果將共享邏輯特性延伸到諧波線(xiàn)路速率,您就可以通過(guò)少量的額外時(shí)鐘分頻器為從機 Aurora 內核生成所需的輸入頻率。

未來(lái)機遇


Aurora 具有很高的靈活性,可用來(lái)創(chuàng )建多種系統配置和應用。在賽靈思 Vivado IP Integrator 這樣的強大工具幫助下,較高的設計輸入生產(chǎn)力和系統級資源共享正在加速 All Programmable 應用領(lǐng)域的創(chuàng )新。憑借賽靈思 UltraScale 架構,具備更多 GT 通道的器件可受益于更強的 GT 線(xiàn)路速率支持,因此能夠實(shí)現更多的設計可能性和更高的資源利用率。

表 5–在 48 條單信道設計中使用共享邏輯特性所實(shí)現的資源優(yōu)勢
48 條單信道設計
資源無(wú)共享邏輯有共享邏輯
MMCME2_ADV484
IBUFDS_GTE2484
GTE2_COMMON4812
GTXE2_CHANNEL4848

如需評估 Aurora 內核,敬請查看IP Catalog、IPI 和 Aurora 產(chǎn)品 Web 頁(yè)面:http://china.xilinx. com/products/design_resources/conn_ central/grouping/aurora.htm.
本文地址:http://selenalain.com/thread-160207-1-1.html     【打印本頁(yè)】

本站部分文章為轉載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀(guān)點(diǎn)和對其真實(shí)性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問(wèn)題,我們將根據著(zhù)作權人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页