• 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>

    FPGA中進行電子設計自動化的邏輯單元裝箱方法技術

    技術編號:9967655 閱讀:101 留言:0更新日期:2014-04-25 08:38
    本發明專利技術公開了一種FPGA中進行電子設計自動化的邏輯單元裝箱方法,主要解決現有技術裝箱后電路時延過大,可配置邏輯單元CLB消耗過多的問題。其裝箱過程是:將工藝映射,單元劃分處理后的電路用有向無環圖表示;通過電路中查詢表LUT之間的連接方式對有向無環圖中的時延信息進行初始化;通過廣度優先遍歷法計算每個節點的松散度,并結合每個節點對電路關鍵路徑的影響計算出它的關鍵度;根據每個節點的關鍵度并結合查詢表LUT的線網個數和可配置邏輯單元CLB中已使用的線網個數,計算每個查詢表LUT的線網增益值,根據線網增益值對查詢表LUT進行選擇填裝。本發明專利技術極大地降低了最終電路的時延,同時極大地減少了最終電路消耗的可配置邏輯單元CLB的數量。

    【技術實現步驟摘要】
    【專利摘要】本專利技術公開了一種FPGA中進行電子設計自動化的邏輯單元裝箱方法,主要解決現有技術裝箱后電路時延過大,可配置邏輯單元CLB消耗過多的問題。其裝箱過程是:將工藝映射,單元劃分處理后的電路用有向無環圖表示;通過電路中查詢表LUT之間的連接方式對有向無環圖中的時延信息進行初始化;通過廣度優先遍歷法計算每個節點的松散度,并結合每個節點對電路關鍵路徑的影響計算出它的關鍵度;根據每個節點的關鍵度并結合查詢表LUT的線網個數和可配置邏輯單元CLB中已使用的線網個數,計算每個查詢表LUT的線網增益值,根據線網增益值對查詢表LUT進行選擇填裝。本專利技術極大地降低了最終電路的時延,同時極大地減少了最終電路消耗的可配置邏輯單元CLB的數量?!緦@f明】FPGA中進行電子設計自動化的邏輯單元裝箱方法
    本專利技術屬于計算機
    ,特別涉及一種電子設計自動化設計裝箱打包方法,可用于同構,異構等多種FPGA芯片的應用設計。
    技術介紹
    80年代中期,美國Xilinx公司首先推出了現場可編程門陣列器件FPGA,它是在可編程邏輯陣列PLA和通用陣列邏輯GAL的基礎上進一步發展的產物。隨著集成電路的深亞微米制造技術和設計技術的迅速發展,集成電路進入了系統級SOC時代。Xilinx公司推出的百萬門Virtex系列的FPGA,為解決系統級設計問題提供了新的FPGA平臺。目前,國外FPGA的設計技術和加工工藝成熟,產品門類齊全,可以提供上百個系列品種,芯片集成度已達到上百萬門,并廣泛應用于通信、航天、航空、導航、遙感、遙測等國防領域。美國Xilinx、Altera、Lattice和Actel等公司壟斷了全球可編程邏輯器件市場。而國內的芯片發展基本上處于一窮二白的階段,沒有自主產權的核心工藝技術,所以研發我國自主的FPGA芯片已經刻不容緩。使用FPGA芯片必須要有支持FPGA開發的電子設計自動化軟件,開發基于FPGA的電子設計自動化軟件的設計流程包括:邏輯綜合,工藝映射,單元劃分,邏輯單元裝箱,布局,布線,編程下載等步驟,如圖1所示。其中:網表優化,用于實現消除冗余的邏輯,減少電路實際所需的面積;工藝映射,用于將優化后的網表轉化為由查詢表LUT和時序單元組成的電路,實現在滿足輸入約束的條件下,將更多的組合邏輯放入到一個查詢表LUT,以減少所需FPGA的容量;單元劃分,用于將規模大小超過FPGA容量的LUT集成單元,劃分成幾個能分別放進到給定的FPGA中的小的LUT單元組;邏輯單元裝箱,用于根據劃分后的LUT單元組之間的互連時延信息,計算LUT之間的互連延遲并算出每個LUT的權重值,然后按照權重值的大小對LUT進行排序,將一個個LUT單元按照順序依次裝箱到可配置邏輯單元CLB中;布局,用于將裝箱之后的CLB單元映射到實際FPGA的各個邏輯位置,以達到減少CLB之間連線的交錯度,緩解布線模塊的壓力;布線,用于實現將CLB之間的各個連接采用FPGA內部已經存在的連線資源連接起來,使整個電路被完全映射到給定的FPGA芯片上;編碼下載,根據布線映射好的電路,通過編譯生成所要使用的位數據流文件,然后將此數據文件下載到FPGA芯片中。所述的邏輯單元裝箱,通常依賴于FPGA的結構,目前比較流行的FPGA結構就是在一個可配置邏輯單元CLB內部含多個查詢表LUT,這些查詢表LUT之間共享輸入,同時它們的輸出也可以通過互連資源反饋到輸入端?,F有的邏輯單元裝箱方法基本分為以下兩種:一種是通過犧牲可配置邏輯單元CLB的數量來提高最終電路的時延性能,例如T-vpack邏輯單元裝箱方法,該方法就是在計算時延階段通過反復的回朔計算來提高最終電路的時延,即在對每一個查詢表LUT填裝完成后,都會去對整個電路的時延信息進行更新,同時計算查詢表LUT所對應的時延權值。這種方法雖然能保證電路時延性能的高效,但卻沒有對最終電路的面積,即消耗的可配置邏輯單元CLB的數量進行很好的優化控制,使得最終加載到FPGA開發板上的電路消耗的可配置邏輯單元CLB過多。另一種是通過犧牲電路的時延性能來減小最終電路的可配置邏輯單元CLB消耗,例如R-pack邏輯單元裝箱方法,該方法就是將最終電路消耗可配置邏輯單元CLB的個數作為首要的優化目標對查詢表LUT進行裝箱打包,并為了保證對查詢表LUT裝箱的連續性,在計算時延階段對電路的時延信息不進行回朔更新。這種方法雖在保證查詢表LUT連續裝填的情況下,能充分控制最終電路消耗的可配置邏輯單元CLB的數量,但卻忽略了對電路最終延遲性能的保障,使得最終加載到FPGA開發板上的電路運行時間過長。
    技術實現思路
    本專利技術的目的在于針對上述已有技術的不足,提出一種FPGA中進行電子設計自動化的邏輯單元裝箱方法,以綜合考慮電路的最終的時延性能以及消耗的可配置邏輯單元CLB的數量,使得最終設計出來的電路達到盡可能高的性能。實現本專利技術目的的技術方案,包括如下步驟:A.計算電路中每個查詢表LUT的關鍵度B:(Al)將經過工藝映射,單元劃分處理后的電路作為一個有向無環圖DAG,該有向無環圖中的節點表示具有存儲電路邏輯功能的查詢表LUT;有向無環圖中的邊表示查詢表LUT之間的線網連線,根據查詢表LUT之間的實際連接關系對有向無環圖中的每條邊賦上相應的時延權重值;(A2)從電路的源端節點開始,根據有向無環圖中邊所對應的時延權重值,采用廣度優先遍歷的方法計算出有向無環圖中節點i的最晚到達時間Ta(i),其中i表示有向無環圖中的第i個節點的標號,i的取值范圍為I?N,N表示電路中節點的總數,節點i的輸入節點集合用In⑴表示,集合In⑴中的節點總數用el表示,節點i的輸出節點集合用On⑴表示,集合On⑴中的節點總數用e2表示;(A3)從電路的末端節點開始,結合每條邊對應的時延權重值,采用廣度優先遍歷的方法計算出有向無環圖中節點i的最晚需要達到時間Tr(i);(A4)根據得到的有向無環圖中節點i的最晚到達時間Ta(i)和最晚需要達到時間Tr(i),得到第節點i對應的松散度:s(i) =Tr⑴-Ta(i);(A5)根據松散度計算有向無環圖中節點i的時延度:C(i) = l_s(i)/Ms,其中Ms表示有向無環圖中所有節點松散度的最大值;(A6)計算有向無環圖中節點i對關鍵路徑的影響權值:TA(i) = IA(i)+0A(i),其中:IA(i)表示節點i所對應的輸入節點在關鍵路徑上的節點總數,OA⑴表示節點i所對應的輸出節點在關鍵路徑上的節點總數;(A7)根據節點i的時延度C(i)和該節點對有向無環圖中關鍵路徑的影響權值TA(i),計算節點i的關鍵度:= W)+ HW(Z)其中λ取0.01;B.選擇查詢表LUT裝填到新的可配置邏輯單元CLB:(BI)對于步驟(A7)中所得到的每個節點的關鍵度進行排序,選出關鍵度最高的那個節點所對應的查詢表LUT,填裝到一個新的可配置邏輯單元CLB中去;(B2)將裝填到可配置邏輯單元CLB中的查詢表LUT標記為H,計算與H相連接的第j個查詢表LUT的線網關聯增益I (j),其中j表示與H相連接的第j個查詢表LUT,j的取值范圍為I?M,M表示與H相連接的查詢表LUT的總個數;(B3)對計算得到的所有查詢表LUT的線網關聯增益值I (j)進本文檔來自技高網
    ...

    【技術保護點】
    一種FPGA中進行電子設計自動化的邏輯單元裝箱方法,包括如下步驟:?A.計算電路中每個查詢表LUT的關鍵度B:?(A1)將經過工藝映射,單元劃分處理后的電路作為一個有向無環圖DAG,該有向無環圖中的節點表示具有存儲電路邏輯功能的查詢表LUT;有向無環圖中的邊表示查詢表LUT之間的線網連線,根據查詢表LUT之間的實際連接關系對有向無環圖中的每條邊賦上相應的時延權重值;?(A2)從電路的源端節點開始,根據有向無環圖中邊所對應的時延權重值,采用廣度優先遍歷的方法計算出有向無環圖中節點i的最晚到達時間Ta(i),其中i表示有向無環圖中的第i個節點的標號,i的取值范圍為1~N,N表示電路中節點的總數,節點i的輸入節點集合用In(i)表示,集合In(i)中的節點總數用e1表示,節點i的輸出節點集合用On(i)表示,集合On(i)中的節點總數用e2表示;?(A3)從電路的末端節點開始,結合每條邊對應的時延權重值,采用廣度優先遍歷的方法計算出有向無環圖中節點i的最晚需要達到時間Tr(i);?(A4)根據得到的有向無環圖中節點i的最晚到達時間Ta(i)和最晚需要達到時間Tr(i),得到第節點i對應的松散度:s(i)=Tr(i)?Ta(i);?(A5)根據松散度計算有向無環圖中節點i的時延度:C(i)=1?s(i)/Ms,其中Ms表示有向無環圖中所有節點松散度的最大值;?(A6)計算有向無環圖中節點i對關鍵路徑的影響權值:?TA(i)=IA(i)+OA(i),?其中:IA(i)表示節點i所對應的輸入節點在關鍵路徑上的節點總數,OA(i)表示節點i所對應的輸出節點在關鍵路徑上的節點總數;?(A7)根據節點i的時延度C(i)和該節點對有向無環圖中關鍵路徑的影響權值TA(i),計算節點i的關鍵度:其中B.選擇查詢表LUT裝填到新的可配置邏輯單元CLB:?(B1)對于步驟(A7)中所得到的每個節點的關鍵度進行排序,選出關鍵度最高的那個節點所對應的查詢表LUT,填裝到一個新的可配置邏輯單元CLB中去;?(B2)將裝填到可配置邏輯單元CLB中的查詢表LUT標記為H,計算與H相連接的第j個查詢表LUT的線網關聯增益I(j),其中j表示與H相連接的第j個查詢表LUT,j的取值范圍為1~M,M表示與H相連接的查詢表LUT的總個數;?(B3)對計算得到的所有查詢表LUT的線網關聯增益值I(j)進行排序,選擇線網關聯增益值最大的那個查詢表LUT將其填裝到上述新的可配置邏輯單元CLB中去;?(B4)重復步驟(B2)和步驟(B3),直到上述新的可配置邏輯單元CLB被填裝滿為止;?C.更新電路時延信息,繼續對查詢表LUT進行填裝:?(C1)對于一個已經被填裝滿的可配置邏輯單元CLB,根據它和電路中其他查詢表LUT的連接方式,重新設置電路中邊的時延權重值,形成新的有向無環圖DAG’;?(C2)利用新的有向無環圖DAG’,重復步驟(A2)和步驟(B4),直到電路中所有的查詢表LUT被裝填完成為止。...

    【技術特征摘要】

    【專利技術屬性】
    技術研發人員:段振華,李虎,黃伯虎,
    申請(專利權)人:西安電子科技大學,
    類型:發明
    國別省市:

    網友詢問留言 已有0條評論
    • 還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。

    1
    主站蜘蛛池模板: 亚洲熟妇无码乱子AV电影| 性无码免费一区二区三区在线| 精品无码日韩一区二区三区不卡 | 国产乱子伦精品免费无码专区| 精品无码一区二区三区爱欲九九 | 精品久久久久久中文字幕无码| 性无码专区一色吊丝中文字幕| 亚洲人成人无码网www国产| 亚洲AV无码一区二区三区在线观看 | 少妇极品熟妇人妻无码| 国产成人无码一区二区在线观看| 无码AV大香线蕉| 国产成人综合日韩精品无码不卡| 中文字幕韩国三级理论无码| 国产成人精品无码片区在线观看| 亚洲国产91精品无码专区| 中文字幕无码高清晰| 无码乱人伦一区二区亚洲| 精品人妻少妇嫩草AV无码专区 | 无码国模国产在线无码精品国产自在久国产 | 亚洲中文字幕无码av永久| 在线观看免费无码视频| 日韩少妇无码喷潮系列一二三| 亚洲熟妇无码爱v在线观看| 日韩人妻无码中文字幕视频| 久久国产精品无码网站| 亚洲av中文无码字幕色不卡 | 精品无码一级毛片免费视频观看| 亚洲a∨无码男人的天堂| 国产成人AV片无码免费| 麻豆人妻少妇精品无码专区 | 国产精品无码一本二本三本色 | 超清无码无卡中文字幕| 在线观看无码的免费网站| 亚洲熟妇无码一区二区三区导航| 亚洲国产成人精品无码区在线秒播 | 国产亚洲AV无码AV男人的天堂| 在线A级毛片无码免费真人| 亚洲性无码AV中文字幕| 黄色成人网站免费无码av| 久久中文字幕无码一区二区|