專利名稱:基于模型量化的fpga互聯(lián)結(jié)構(gòu)評估方法
技術領域:
本發(fā)明屬于電子技術領域,涉及FPGA互聯(lián)結(jié)構(gòu)的設計,具體涉及基于模型量化的 FPGA互聯(lián)結(jié)構(gòu)評估方法。
背景技術:
現(xiàn)代FPGA的硬件結(jié)構(gòu)日趨復雜,評判一款FPGA芯片的性能指標也是多種多樣, FPGA評估系統(tǒng)的目的是為了在指定的優(yōu)化目標下評估各種FPGA硬件結(jié)構(gòu)設計的優(yōu)劣,并 最終以此來引導硬件結(jié)構(gòu)設計及改進的方向。傳統(tǒng)的FPGA互聯(lián)結(jié)構(gòu)評估方法一般有兩種,一種是憑借設計人員的經(jīng)驗進行取 舍,另一種則是將一組標準測試電路通過完整的CAD流程映射到目標結(jié)構(gòu)上來觀察性能。 兩種方法都有明顯的缺點,前者無法充分地搜索和挖掘潛在的FPGA互聯(lián)結(jié)構(gòu),結(jié)論較為主 觀;后者雖然精準,但時間代價很大,實際中不太可能進行大規(guī)模的搜索。因此對在可接受 時間內(nèi)能夠大規(guī)模評估FPGA互聯(lián)結(jié)構(gòu)的方法提出了要求。
發(fā)明內(nèi)容
本發(fā)明的目的在于提出一種能減小FPGA互聯(lián)結(jié)構(gòu)評估的時間代價,并在大范圍 上保證評估精度的FPGA互聯(lián)結(jié)構(gòu)評估方法。本發(fā)明提出的FPGA互聯(lián)結(jié)構(gòu)評估方法,總體方案如下提取影響FPGA互聯(lián)結(jié)構(gòu)的 關鍵參數(shù)互聯(lián)線種類,互聯(lián)通道寬度,連通度,加以整合,對FPGA互聯(lián)結(jié)構(gòu)進行綜合建模, 得到信號一次跳躍、兩次跳躍、三次跳躍所能覆蓋的邏輯單元的分布圖,并得到每個所覆蓋 到的邏輯單元的信號允許通過量。在此模型的基礎上,提取量化的指標用于評價互聯(lián)結(jié)構(gòu)。 該指標必須覆蓋和區(qū)分不同結(jié)構(gòu)中互聯(lián)線網(wǎng)種類、互聯(lián)通道寬度、連通度的不同對性能帶 來的影響。模型闡述如下對于任何一個模型而言,要評價互聯(lián)結(jié)構(gòu)的優(yōu)劣,都必須體現(xiàn)以 下幾個因素對互聯(lián)性能帶來的影響
1互聯(lián)線種類。包括傳統(tǒng)的單倍線、2倍線、6倍線等,以及各種為增強互聯(lián)能力引入的 各種拐線;
2互聯(lián)通道寬度。包括每種互聯(lián)線的配置根數(shù); 3通用互聯(lián)矩陣的設計。包括各種互聯(lián)線之間的連通度和驅(qū)動關系。在我們的模型中,對以上幾個因素進行了有機的整合,能夠快速直觀的得到一個 綜合的評價指標。首先,對互聯(lián)線種類的體現(xiàn)可以以圖形化的方式來說明。下面以一個類似于 Xilinx Virtex5系列的對稱對角互聯(lián)結(jié)構(gòu)為例,如圖1所示。圖中的一個方塊代表一個基 本的可編程邏輯單元(CLB)。以圖中圓形的CLB為原點出發(fā),根據(jù)給定的互聯(lián)線種類,經(jīng)過 一次跳躍(HOP)能夠遍歷到的CLB用方形標出。類似的,圖中的菱形和星形CLB分別表示 經(jīng)過兩次和三次跳躍所能遍歷到的CLB。顯而易見,如果給定不同的互聯(lián)線種類的組合,那么從紅色CLB出發(fā),它的一次HOP集合,兩次HOP集合,三次HOP集合在平面上的分布都是 不同的,這種分布直觀地表達了信號在不同的互聯(lián)結(jié)構(gòu)中的擴散速度和能力。其次,每種互聯(lián)線的配置根數(shù)對于互聯(lián)結(jié)構(gòu)的性能也會產(chǎn)生影響。在上面的平面 圖中,只體現(xiàn)了信號從源點出發(fā)經(jīng)過若干次跳躍分別能夠到達的位置,但不能體現(xiàn)信號到 達該位置的“帶寬”,即該種互聯(lián)結(jié)構(gòu)在該位置能夠提供的信號通過的容量。為了體現(xiàn)這一 點,我們在平面圖的基礎上增加一維,來表示“帶寬”,如圖2所示。最后,連通度在我們的模型中也可以得到體現(xiàn)。通過進一步細分“帶寬”的構(gòu)成, 我們可以將各種線網(wǎng)之間的連接密度和驅(qū)動關系反映出來。連通度本質(zhì)上反映的是中轉(zhuǎn)能 力,因此以一次跳躍中轉(zhuǎn)到兩次跳躍為例,我們可以記錄信號是經(jīng)過哪種線網(wǎng)到達當前CLB 的,并通過連通度計算出信號可以繼續(xù)行走的方向和線路分布,從而得到對應的二次跳躍 后的帶寬。這樣一來,互聯(lián)通道寬度和連通度的影響可以統(tǒng)一在“帶寬”中體現(xiàn)出來。有了以上模型,就為提取各種量化指標進行評價提供了可能。本發(fā)明的基于模型量化的FPGA互聯(lián)結(jié)構(gòu)評估方法,具體步驟可歸納如下
1)提取影響FPGA互聯(lián)結(jié)構(gòu)的關鍵參數(shù)
把FPGA互聯(lián)結(jié)構(gòu)用統(tǒng)一的形式進行描述,形式上包含互聯(lián)線種類,互聯(lián)通道寬度,連 通度這三個關鍵參數(shù);
2)對FPGA互聯(lián)結(jié)構(gòu)進行圖形化的建模
根據(jù)互聯(lián)線種類,計算從某個可編程邏輯單元出發(fā),通過一次、兩次、三次跳躍分別能 夠覆蓋到的其他可編程邏輯單元集合。在此基礎上,根據(jù)互聯(lián)通道寬度和連通度,計算出到 達集合中任一單元的信號最大通過量。其中
計算跳躍次數(shù)的方法為,統(tǒng)計所有互聯(lián)線網(wǎng)能輻射到的邏輯單元位置,那些能被一次 輻射到的位置即為一次跳躍集合;同理,從一次跳躍集合中的邏輯單元出發(fā),再統(tǒng)計一次所 有互聯(lián)線網(wǎng)能輻射到的位置,即為二次跳躍集合,依次類推。信號最大通過量的計算方式 為,對于每一個邏輯單元位置,把所有能輻射到該位置的互聯(lián)線網(wǎng)的數(shù)量求和;
3)定義量化指標
在模型基礎上可自定義量化指標,該指標滿足的條件為必須覆蓋和區(qū)分不同結(jié)構(gòu)中 互聯(lián)線網(wǎng)種類、互聯(lián)通道寬度、連通度的不同對性能帶來的影響。以我們提出的“平均跳躍 次數(shù)”指標為例,就能很好地滿足以上條件;
4)通過選定互聯(lián)線網(wǎng)種類,我們能夠自動遍歷枚舉出所有可能的線網(wǎng)組合方式,從而 得到大批量的FPGA互聯(lián)結(jié)構(gòu)。然后針對每一種結(jié)構(gòu)重復步驟1) 3),根據(jù)步驟3)中定義 的指標作為每種結(jié)構(gòu)的得分,然后進行排序,從而篩選出較為優(yōu)化的結(jié)構(gòu),指導后期更詳細 的互聯(lián)設計。上述方法中,步驟1)所述的對FPGA互聯(lián)結(jié)構(gòu)采用統(tǒng)一參數(shù)化方式進行描述,參數(shù) 至少包含互聯(lián)線種類,互聯(lián)通道寬度,連通度。上述方法中,步驟2)所述的對FPGA互聯(lián)結(jié)構(gòu)進行三維建模,其中XY平面反映一 次、兩次、三次跳躍能到達的可編程邏輯單元,Z軸反映到達該單元的允許信號量。上述方法中,步驟3)所述的從模型中提取的量化指標是自定義的。上述方法中,步驟4)是利用平均跳躍次數(shù)指標來大規(guī)模地篩選FPGA互聯(lián)結(jié)構(gòu)。技術效果本發(fā)明方法極大地加快了 FPGA互聯(lián)結(jié)構(gòu)的評估,時間代價與通過傳統(tǒng)的完整CAD流程相比可以忽略不計,同時保證了評估的準確性。
圖1信號跳躍次數(shù)模型示意圖。圖2 “帶寬”模型示意圖。圖3觀察窗口權重函數(shù)示意圖。圖4理論模型與實測數(shù)據(jù)變化趨勢。
具體實施例方式下面以“平均跳躍次數(shù)”的統(tǒng)計為例進一步闡述本發(fā)明,但不構(gòu)成對本發(fā)明的限制 顧名思義,“平均跳躍次數(shù)”是指在一定區(qū)域內(nèi),信號到達該區(qū)域內(nèi)任一
CLB所需要的跳躍次數(shù)的加權平均值。該指標內(nèi)含了三個可變參數(shù),公式如下
+ [Hop(x, y) Λ-1]*NSigfudUftpassed(χ, ν)
NFestSigvd, NTestSsgrnl <= Sig^ialChpuciiy (χ, γ) I<!SigmlPass€d(x, y)- <第二個參數(shù)是“測試信號量”(NT磁—I ),即用于測試互聯(lián)性能的信號的數(shù)目。 信號量的選取應根據(jù)實際的benchmark放入FPGA后通道上信號通過量的典型值。如果信 號量太小,則不能反映出各處不同帶寬的松緊,如果信號量太大,則導致過度擁擠,與實際 情況不符合。第三個參數(shù)是“權重函數(shù)”(啦J)),即反映區(qū)域內(nèi)到達某個CLB的跳躍次數(shù)在總 平均次數(shù)中的權重。因為經(jīng)過實際CAD流程的優(yōu)化后,一個線網(wǎng)輻射出的各個CLB總是盡 可能地被放在靠近的位置,所以在評價互聯(lián)性能時,我們總是對互聯(lián)的局部性能更感興趣,
為了建立一個公平有效的對比平臺,對于以上三個參數(shù),我們采用理論指導結(jié)合統(tǒng)計實驗的方式進行了慎重的選取
對于觀察窗口,首先考慮到不同例子的線網(wǎng)輻射范圍是不同的。如果觀察窗口的選 取遠大于或遠小于benchmark的線網(wǎng)平均輻射范圍,那么模型指標反映的性能將偏離實際 布局布線后的性能很遠。因此,一批benchmark的平均線網(wǎng)輻射范圍決定了觀察窗口的選 取,事實上也是如此,因為一種互聯(lián)結(jié)構(gòu)的好壞并沒有絕對客觀的標準,而和用于測試的 benchmark有很大的相關性。我們從學術界通用的MCNC標準測試電路中選取了中等偏大 的20個電路作為我們實驗中的測試電路。通過觀察對這20個MCNC測試電路進行布局后 的統(tǒng)計數(shù)據(jù)可發(fā)現(xiàn),其線網(wǎng)平均輻射長度為4. 98,。因此我們選取觀察窗口的半徑為5,即 水平垂直都在-5 5的區(qū)間內(nèi)。(此處及后文中相關的長度,都代表Manhattan距離)。對于測試信號量,為了盡可能真實地反映實際電路中信號的通過量,考慮到我們 的CLB模型中含兩個SLICE,每個SLICE包含兩個4輸入LUT,因此從一個CLB到一個CLB 的最大數(shù)據(jù)信號量為16,再加上控制信號和可能的過路信號,我們選取測試信號量為20。對于權重函數(shù),我們希望該函數(shù)隨著范圍的擴大呈快速收斂的趨勢,因為到達越 是外圈的CLB的能力對于互聯(lián)性能越不重要,其權重因迅速減小。因此我們設計了如圖3 所示,呈階梯狀下降的權重函數(shù),其橫坐標表示與觀察窗口中心原點的距離,縱坐標為權重 值。根據(jù)以上所述的參數(shù)值,我們隨機選取了幾種互聯(lián)結(jié)構(gòu)計算了平均跳躍次數(shù)指 標,其中每種結(jié)構(gòu)都搭配了不同種類的線網(wǎng)組合(比如L1L4表示單倍線和四倍線搭配, L3L8表示三倍線和八倍線搭配)。作為比較,我們同時用完整的CAD流程對這幾種互聯(lián)結(jié)構(gòu) 的性能進行測試,測試結(jié)果歸一化后與我們的模型得出的指標值進行了對比,如圖4所示。圖4中方塊構(gòu)成的曲線為模型指標得到的每種結(jié)構(gòu)性能的相對變化,菱形塊構(gòu)成 的曲線為實測得到的每種結(jié)構(gòu)性能的相對變化。我們可以發(fā)現(xiàn),通過上述兩種完全不同的 方式獲得的數(shù)據(jù)在評估結(jié)構(gòu)性能方面表現(xiàn)出了很好的一致性,在理論模型中排名前列的結(jié) 構(gòu),其實際測試的結(jié)果也同樣表現(xiàn)優(yōu)異,這說明使用我們的理論模型能夠迅速地從潛在的 互聯(lián)結(jié)構(gòu)集合中篩選出一批較優(yōu)化的結(jié)構(gòu),指導進一步地詳細設計。表1 =BenchMarks布局后線網(wǎng)平均輻射長度
權利要求
1.基于模型量化的FPGA互聯(lián)結(jié)構(gòu)評估方法,其特征在于具體步驟為1)提取影響FPGA互聯(lián)結(jié)構(gòu)的關鍵參數(shù);把FPGA互聯(lián)結(jié)構(gòu)用統(tǒng)一的形式進行描述,形式上必須互聯(lián)線種類,互聯(lián)通道寬度,連 通度這三個關鍵參數(shù);2)對FPGA互聯(lián)結(jié)構(gòu)進行圖形化的建模根據(jù)互聯(lián)線種類,計算從某個可編程邏輯單元出發(fā),通過一次、兩次、三次跳躍分別能 夠覆蓋到的其他可編程邏輯單元集合;在此基礎上,根據(jù)互聯(lián)通道寬度和連通度,計算出到 達集合中任一單元的信號最大通過量;3)定義量化指標在模型基礎上自定義量化指標,該指標滿足的條件為必須覆蓋和區(qū)分不同結(jié)構(gòu)中互 聯(lián)線網(wǎng)種類、互聯(lián)通道寬度、連通度的不同對性能帶來的影響;4)通過選定互聯(lián)線網(wǎng)種類,自動遍歷枚舉出所有可能的線網(wǎng)組合方式,從而得到大批 量的FPGA互聯(lián)結(jié)構(gòu);然后針對每一種結(jié)構(gòu)重復步驟1) 步驟3),根據(jù)步驟3)中定義的指 標作為每種結(jié)構(gòu)的得分,然后進行排序,從而篩選出較為優(yōu)化的結(jié)構(gòu),指導后期更詳細的互 聯(lián)設計。
2.按權利要求1所述的基于模型量化的FPGA互聯(lián)結(jié)構(gòu)評估方法,其特征是步驟2)所 述的對FPGA互聯(lián)結(jié)構(gòu)進行三維建模,其中XY平面反映一次、兩次、三次跳躍能到達的可編 程邏輯單元,Z軸反映到達該單元的允許信號量。
3.按權利要求2所述的基于模型量化的FPGA互聯(lián)結(jié)構(gòu)評估方法,其特征在于步驟2)中,計算跳躍次數(shù)的方法為統(tǒng)計所有互聯(lián)線網(wǎng)能輻射到的邏輯單元位 置,那些能被一次輻射到的位置即為一次跳躍集合;同理,從一次跳躍集合中的邏輯單元出 發(fā),再統(tǒng)計一次所有互聯(lián)線網(wǎng)能輻射到的位置,即為二次跳躍集合,依次類推;信號最大通 過量的計算方式為對于每一個邏輯單元位置,把所有能輻射到該位置的互聯(lián)線網(wǎng)的數(shù)量 求和。
4.按權利要求1所述的基于模型量化的FPGA互聯(lián)結(jié)構(gòu)評估方法,其特征在于自定義量 化指標采用平均跳躍次數(shù)指標;步驟4)是利用平均跳躍次數(shù)指標來大規(guī)模地篩選FPGA互 聯(lián)結(jié)構(gòu),其算式如下
全文摘要
本發(fā)明屬于電子技術領域,具體為基于模型量化的FPGA互聯(lián)結(jié)構(gòu)評估方法。本發(fā)明通過對影響FPGA互聯(lián)結(jié)構(gòu)的關鍵因素進行量化建模,并在此模型基礎上提出了一種基于平均跳躍次數(shù)統(tǒng)計的評價指標。通過本方法能夠在很短的時間內(nèi)就遍歷搜索大規(guī)模的FPGA互聯(lián)結(jié)構(gòu)空間,并保證與通過完整CAD流程得到的評價結(jié)果在大范圍上保持一致性。
文檔編號G01R31/3185GK102116841SQ20111000049
公開日2011年7月6日 申請日期2011年1月4日 優(yōu)先權日2011年1月4日
發(fā)明者來金梅, 王健, 王臻, 胡敏, 謝丁, 陳利光 申請人:復旦大學