新四季網

一種針對fpga面積優化的優先級資源共享方法

2023-08-06 21:22:21 1

一種針對fpga面積優化的優先級資源共享方法
【專利摘要】本發明公開了一種針對FPGA面積優化的優先級資源共享方法,包括:讀取RTL綜合中間數據結構網表,查找並收集網表中所有時序互斥的分支;分析時序互斥的分支中的具體操作,檢測並收集時序互斥的分支中相同的算術操作;以及優先對有相同輸出的算術操作進行共享,其次對只有公共輸入埠的算術操作進行共享,最後對沒有公共埠的算術操作進行共享。利用本發明,通過檢測HDL設計文件中時序互斥的相同的算術操作,對這些算術操作按照規定的順序依次進行共享,就可以減少算術邏輯單元(ALU-Arithmetic?Logic?Unit),達到面積優化的效果。
【專利說明】一種針對FPGA面積優化的優先級資源共享方法
【技術領域】
[0001]本發明涉及現場可編程門陣列(FPGA)和電子設計自動化【技術領域】,特別涉及一種針對FPGA面積優化的優先級資源共享方法。
【背景技術】
[0002]資源共享是指對時序互斥的兩個或者多個算術操作用一個算術邏輯單元實現的過程,是FPGA綜合優化的關鍵方法之一。
[0003]FPGA EDA 工具包含:綜合(synthesis)、映射(mapping)、布局(placing)、布線(routing)、碼流生成(bit gen)及碼流下載(download)等幾部分,已成為FPGA領域一個十分關鍵的部分。EDA工具的好壞直接影響設計的實現及效果。
[0004]綜合(synthesis)是FPGA EDA工具裡的關鍵部分之一,是將HDL描述的設計文件進行翻譯和優化,轉換為門級的網表,並進行優化。其優化部分包含針對面積、時序和功耗的優化,優化的結果直接決定設計結果的好壞。
[0005]資源共享是FPGA綜合中面積優化的重要方法之一,它能夠減少複雜的算術邏輯單元的個數,實現面積優化。
[0006]現有RTL綜合(Register Transfer Level Synthesis)技術中,資源共享算法不完善,導致可能出現的優化不徹底,以及數據流衝突錯誤的問題。

【發明內容】

[0007](一 )要解決的技術問題
[0008]有鑑於此,本發明的主要目的在於提供一種針對FPGA面積優化的優先級資源共享方法,以解決在RTL綜合中資源共享可能出現的優化不徹底以及數據流衝突錯誤的問題。
[0009]( 二 )技術方案
[0010]為達到上述目的,本發明提供了一種針對FPGA面積優化的優先級資源共享方法,包括:讀取RTL綜合中間數據結構網表,查找並收集網表中所有時序互斥的分支;分析時序互斥的分支中的具體操作,檢測並收集時序互斥的分支中相同的算術操作;以及優先對有相同輸出的算術操作進行共享,其次對只有公共輸入埠的算術操作進行共享,最後對沒有公共埠的算術操作進行共享。
[0011]上述方案中,所述讀取RTL綜合中間數據結構網表,查找並收集網表中所有時序互斥的分支的步驟中,在任意時刻,每組中時序互斥分支最多只有一個分支執行,這些分支包括if、else分支和case的不同分支,以及包括結構級描述中mux的不同輸入分支。
[0012]上述方案中,所述分析時序互斥的分支中的具體操作,檢測並收集時序互斥的分支中相同的算術操作的步驟中,只針對複雜的算術操作進行共享,不考慮邏輯操作。
[0013]上述方案中,所述優先對有相同輸出的算術操作進行共享的步驟中,是優先對連接到同一個mux的算術操作進行共享,共享的具體操作包括:首先將每組互斥分支可以合併的兩個或者多個算術操作單元合併為一個算術操作A ;其次檢測每組互斥分支的相同算術操作之間有沒有公共輸入埠,將公共埠連接到該算術操作A的一個輸入;將輸出端的mux平移到輸入端,來選擇非公共輸入埠的驅動信號。
[0014]上述方案中,所述對只有公共輸入埠的算術操作進行共享的步驟,包括:先將每組互斥分支可以合併的兩個或者多個算術操作單元合併為一個算術操作,將公共埠連接到該算術操作的一個輸入,另外一個輸入端添加一個mux來選擇非公共輸入埠的驅動信號,輸出端則驅動多個模塊。
[0015]上述方案中,所述對沒有公共埠的算術操作進行共享的步驟,包括:先將每組互斥分支可以合併的兩個或者多個算術操作單元合併為一個算術操作,兩個輸入端分別添加一個mux來選擇驅動信號,輸出端則驅動多個模塊。
[0016](三)有益效果
[0017]從上述技術方案可以看出,本發明具有以下有益效果:
[0018]1、本發明提供的針對FPGA面積優化的優先級資源共享方法,是在資源共享的基礎上的改進方案,使可共享的資源按照規定的優先級順序依次進行共享。這樣不僅能夠避免數據流衝突錯誤,而且還能夠使結果增加的mux數量減少。
[0019]2、本發明提供的針對FPGA面積優化的優先級資源共享方法,首先要收集所有時序互斥的分支,如if、else分支和case分支,每一組的不同分支之間是時序互斥的,即所有時刻最多只有一個分支執行。這樣才能保證共享以後不會出現信號衝突。其次,檢測每組分支,標記不同分支的相同算術操作,對這些算術操作按照規定的優先級順序進行共享。
[0020]3、本發明提供的針對FPGA面積優化的優先級資源共享方法,共享操作減少了複雜ALU的個數,實現了面積優化。該方法只對算術操作進行共享,不對邏輯操作進行共享。因為算術邏輯單元佔用的面積比較大,儘管可能會引入mux,但總體會減少面積。而對邏輯單元進行共享的過程,減少了邏輯單元,增加了 mux,結果面積不一定減少。
[0021]4、本發明提供的針對FPGA面積優化的優先級資源共享方法,在資源共享的基礎上進行改進,結果在減少算術操作個數的同時,也使得增加的mux數量減少,甚至有些情況不會增加mux ;同時還會避免資源共享過程中出現組合迴路產生數據流衝突的錯誤結果。
【專利附圖】

【附圖說明】
[0022]圖1是本發明提供的針對FPGA面積優化的優先級資源共享方法的流程圖;
[0023]圖2是圖1中RLT綜合網表中兩個互斥分支的示意圖;
[0024]圖3是圖1中RTL綜合中互斥分支中標記相同的算術操作的示意圖;
[0025]圖4是依照本發明第一實施例的HDL文件描述及不採用資源共享的網表示意圖;
[0026]圖5是依照本發明第一實施例的不採用優先級的資源共享方法的共享結果示意圖;
[0027]圖6是依照本發明第一實施例的採用優先級資源共享的結果示意圖;
[0028]圖7是依照本發明第二實施例的HDL文件描述及不採用資源共享的網表示意圖;
[0029]圖8是依照本發明第二實施例的不採用優先級資源共享的共享結果示意圖;
[0030]圖9是依照本發明第二實施例的採用優先級資源共享方法的結果示意圖;
[0031]圖1Oa是兩個時序互斥加法器優化前的示意圖;[0032]圖1Ob是兩個時序互斥加法器資源共享步驟分解的示意圖;
[0033]圖1Oc是兩個時序互斥加法器優化後的結果示意圖。
【具體實施方式】
[0034]為使本發明的目的、技術方案和優點更加清楚明白,以下結合具體實施例,並參照附圖,對本發明進一步詳細說明。
[0035]如圖1所示,圖1是本發明提供的針對FPGA面積優化的優先級資源共享方法的流程圖,該方法包括以下步驟:
[0036]步驟S1、讀取RTL綜合中間數據結構網表,查找並收集網表中所有時序互斥的分支;
[0037]在任意時刻,每組中時序互斥分支最多只有一個分支執行。這些分支主要包括if、else分支和case的不同分支,也包括結構級描述中mux的不同輸入分支,如圖2所示,兩個加法操作為一組時序互斥分支,在任意時刻最多只有一個加法器執行。
[0038]步驟S2、分析時序互斥的分支中的具體操作,檢測並收集時序互斥的分支中相同的算術操作;
[0039]本發明只是針對複雜的算術操作進行共享,不考慮邏輯操作。如圖3所示,標記兩個互斥分支之間的相同的加法操作。
[0040]步驟S3、優先對有相同輸出,即連接到同一個mux的算術操作進行共享。
[0041]如圖4所示,該第一實施例中不採用資源共享的結果,包含3個加法器ADD1、ADD2和ADD3,其中ADD2和ADD3的輸出連接到同一個mux,優先對ADD2和ADD3進行共享。
[0042]共享的具體操作分為以下幾步:(I)首先將每組互斥分支可以合併的兩個或者多個算術操作單元合併為一個算術操作A,如圖1Oa所示;(2)其次檢測每組互斥分支的相同算術操作之間有沒有公共輸入埠,將公共埠連接到A的一個輸入;(3)將輸出端的mux平移到輸入端,來選擇非公共輸入埠的驅動信號,如圖1Ob所示。優化後的結果如圖1Oc所示。
[0043]步驟S4、其次對只有公共輸入埠的算術操作進行共享,先將每組互斥分支可以合併的兩個或者多個算術操作單元合併為一個算術操作A,將公共埠連接到A的一個輸入,另外一個輸入端添加一個mux來選擇非公共輸入埠的驅動信號,輸出端則驅動多個模塊。
[0044]步驟S5、最後對沒有公共埠的算術操作進行共享,先將每組互斥分支可以合併的兩個或者多個算術操作單元合併為一個算術操作A,兩個輸入端分別添加一個mux來選擇驅動信號,輸出端則驅動多個模塊。
[0045]本發明的優點如下:
[0046]—、和普通的資源共享相比,本發明提供的針對FPGA面積優化的優先級資源共享方法可以減少mux數量。如圖4所示,該第一實施例中不進行資源共享的結果包含3個加法器,I個mux ;若不採用優先級方法的資源共享,如圖5所示,該第一實施例中ADDl和ADD3進行共享,結果:2個加法器和3個mux ;採用優先級的資源共享方法,如圖6所示,該第一實施例中ADD2和ADD3進行共享,結果只有兩個加法器和兩個mux,和圖4相比減少了一個加法器,和圖5相比減少了一個mux。[0047]二、避免數據流衝突錯誤。本發明的第二實施例如圖7所示,不採用資源共享的綜合結果含有4個加法器和I個mux。若不採用優先級的資源共享方法,結果如圖8所示,該第二實施例中ADDl和ADD4共享,ADD2和ADD3共享,會產生2個加法器和5個mux,而且會出現組合迴路,產生數據流衝突的錯誤結果。採用優先級的資源共享,結果如圖9所示,該第二實施例中ADD2和ADD4共享,ADDl和ADD3共享,結果含有2個加法器和3個mux,和圖7相比減少了 2個加法器,而且不會出現組合迴路,和圖8相比減少了 2個mux。
[0048]本發明提供的針對FPGA面積優化的優先級資源共享方法,其結果和普通的資源共享相比,會減少mux的數量,更好的實現面積優化;在某些情況下,減少mux的同時,也減少了 mux延時的級數,時序結果較好。該方法還會避免數據流衝突,防止共享結果出現組合迴路的錯誤結果。
[0049]以上所述的具體實施例,對本發明的目的、技術方案和有益效果進行了進一步詳細說明,所應理解的是,以上所述僅為本發明的具體實施例而已,並不用於限制本發明,凡在本發明的精神和原則之內,所做的任何修改、等同替換、改進等,均應包含在本發明的保護範圍之內。
【權利要求】
1.一種針對FPGA面積優化的優先級資源共享方法,其特徵在於,包括: 讀取RTL綜合中間數據結構網表,查找並收集網表中所有時序互斥的分支; 分析時序互斥的分支中的具體操作,檢測並收集時序互斥的分支中相同的算術操作;以及 優先對有相同輸出的算術操作進行共享,其次對只有公共輸入埠的算術操作進行共享,最後對沒有公共埠的算術操作進行共享。
2.根據權利要求1所述的針對FPGA面積優化的優先級資源共享方法,其特徵在於,所述讀取RTL綜合中間數據結構網表,查找並收集網表中所有時序互斥的分支的步驟中,在任意時刻,每組中時序互斥分支最多只有一個分支執行,這些分支包括if、else分支和case的不同分支,以及包括結構級描述中mux的不同輸入分支。
3.根據權利要求1所述的針對FPGA面積優化的優先級資源共享方法,其特徵在於,所述分析時序互斥的分支中的具體操作,檢測並收集時序互斥的分支中相同的算術操作的步驟中,只針對複雜的算術操作進行共享,不考慮邏輯操作。
4.根據權利要求1所述的針對FPGA面積優化的優先級資源共享方法,其特徵在於,所述優先對有相同輸出的算術操作進行共享的步驟中,是優先對連接到同一個mux的算術操作進行共享,共享的具體操作包括: 首先將每組互斥分支可以合併的兩個或者多個算術操作單元合併為一個算術操作A ; 其次檢測每組互斥分支的相同算術操作之間有沒有公共輸入埠,將公共埠連接到A的一個輸入; 將輸出端的mux平移到輸入端,來選擇非公共輸入埠的驅動信號。
5.根據權利要求1所述的針對FPGA面積優化的優先級資源共享方法,其特徵在於,所述對只有公共輸入埠的算術操作進行共享的步驟,包括: 先將每組互斥分支可以合併的兩個或者多個算術操作單元合併為一個算術操作,將公共埠連接到該算術操作的一個輸入,另外一個輸入端添加一個mux來選擇非公共輸入埠的驅動信號,輸出端則驅動多個模塊。
6.根據權利要求1所述的針對FPGA面積優化的優先級資源共享方法,其特徵在於,所述對沒有公共埠的算術操作進行共享的步驟,包括: 先將每組互斥分支可以合併的兩個或者多個算術操作單元合併為一個算術操作,兩個輸入端分別添加一個mux來選擇驅動信號,輸出端則驅動多個模塊。
【文檔編號】G06F9/46GK103885819SQ201210564207
【公開日】2014年6月25日 申請日期:2012年12月21日 優先權日:2012年12月21日
【發明者】劉貴宅, 於芳, 劉忠立, 刁嵐松 申請人:中國科學院微電子研究所, 北京飄石科技有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀