基于sat算法的時鐘樹布線方法
【專利摘要】本發(fā)明實(shí)施例公開一種基于SAT算法的時鐘樹布線方法,該方法包括:從用戶設(shè)計(jì)中獲取時鐘線、復(fù)位線和使能線,并保存該時鐘線、該復(fù)位線和該使能線的約束;從芯片模型中獲取第一時鐘樹網(wǎng)絡(luò)圖,并保存該第一時鐘網(wǎng)絡(luò)圖中的節(jié)點(diǎn)和該第一時鐘樹網(wǎng)絡(luò)圖包括的多路選擇器約束、多路選擇器間配置約束和多路選擇器間連接關(guān)系約束;根據(jù)該時鐘線、該復(fù)位線和該使能線的約束以及該第一時鐘樹網(wǎng)絡(luò)圖包括的約束,生成WFF格式的子句;對該子句調(diào)用可滿足性SAT算法,得到滿足該約束的至少一個解;將該至少一個解中的任一解對應(yīng)的數(shù)學(xué)解標(biāo)記到該時鐘線、該復(fù)位線和該使能線上,從而完成時鐘樹的布線。
【專利說明】
基于SAT算法的時鐘樹布線方法
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及微電子領(lǐng)域中的集成電路設(shè)計(jì)技術(shù)領(lǐng)域,尤其涉及一種基于SAT算法的時鐘樹布線方法。
【背景技術(shù)】
[0002]現(xiàn)場可編程門陣列(FieldProgrammable Gate Array,簡稱“FPGA”),是一種邏輯器件,它具有豐富的硬件資源、強(qiáng)大的并行處理能力和靈活的可重配置能力。因此,F(xiàn)PGA在數(shù)據(jù)處理、通信、網(wǎng)絡(luò)等領(lǐng)域的應(yīng)用越來越多廣泛。
[0003]FPGA的設(shè)計(jì)流程包括:設(shè)計(jì)輸入、調(diào)試、功能仿真、綜合、布局布線、時序仿真、配置下載等步驟。其中,布局就是指將邏輯網(wǎng)表中的硬件原語或者底層單元合理地適配到FPGA內(nèi)部的固有硬件結(jié)構(gòu)上,布局的優(yōu)劣對設(shè)計(jì)的最終結(jié)果(在速度和面積兩個方面)影響很大。布線則是指根據(jù)布局的拓?fù)浣Y(jié)構(gòu),利用FPGA內(nèi)部的各種連線資源,合理正確連接各個元件的過程。
[0004]然而,現(xiàn)有的FPGA的時鐘樹布線方法采用一般的布線算法,很難從全局的角度考慮并對時鐘樹進(jìn)行規(guī)劃,所以不能得到所有滿足約束的布線方式。
【發(fā)明內(nèi)容】
[0005]本發(fā)明實(shí)施例的目的是提供一種基于SAT算法的時鐘樹布線方法,通過調(diào)用SAT算法,得到滿足用戶設(shè)計(jì)和芯片模型中的約束的解,并將解對應(yīng)的數(shù)學(xué)解標(biāo)記到從用戶設(shè)計(jì)中獲取的時鐘線、復(fù)位線和使能線上,從而完成時鐘樹的布線。
[0006]為實(shí)現(xiàn)上述目的,本發(fā)明提供了一種基于SAT算法的時鐘樹布線方法,該方法包括:
[0007]從用戶設(shè)計(jì)中獲取時鐘線、復(fù)位線和使能線,并保存該時鐘線、該復(fù)位線和該使能線的約束;
[0008]從芯片模型中獲取第一時鐘樹網(wǎng)絡(luò)圖,并保存該第一時鐘網(wǎng)絡(luò)圖中的節(jié)點(diǎn)和該第一時鐘樹網(wǎng)絡(luò)圖包括的多路選擇器約束、多路選擇器間配置約束和多路選擇器間連接關(guān)系約束;
[0009]根據(jù)該時鐘線、該復(fù)位線和該使能線的約束以及該第一時鐘樹網(wǎng)絡(luò)圖包括的約束,生成WFF格式的子句;
[0010]對該子句調(diào)用可滿足性SAT算法,得到滿足該約束的至少一個解;
[0011]將該至少一個解中的任一解對應(yīng)的數(shù)學(xué)解標(biāo)記到該時鐘線、該復(fù)位線和該使能線上。
[0012]優(yōu)選的,根據(jù)該時鐘線、該復(fù)位線和該使能線的約束以及該第一時鐘樹網(wǎng)絡(luò)圖包括的約束,生成WFF格式的子句,具體為:
[0013]對該時鐘線、該復(fù)位線和該使能線的約束以及該第一時鐘樹網(wǎng)絡(luò)圖包括的約束進(jìn)行合取范式;
[0014]將該合取范式的結(jié)果轉(zhuǎn)換為WFF格式的子句。
[0015]優(yōu)選的,該從用戶設(shè)計(jì)中獲取時鐘線、復(fù)位線和使能線之后,該方法還包括:為該時鐘線、該復(fù)位線和該使能線添加平衡約束和/或分支約束。
[0016]進(jìn)一步優(yōu)選的,至少一個解為滿足該約束的所有解,將該至少一個解中的任一解對應(yīng)的數(shù)學(xué)解標(biāo)記到該時鐘線、該復(fù)位線和該使能線上,具體為:
[0017]通過評估的方式確定該所有解中的優(yōu)選解;
[0018]將該優(yōu)選解對應(yīng)的數(shù)學(xué)解標(biāo)記到該時鐘線、該復(fù)位線和該使能線上。
[0019]優(yōu)選的,該從芯片模型中獲取第一時鐘樹網(wǎng)絡(luò)圖之后,該方法還包括:
[0020]當(dāng)該用戶設(shè)計(jì)發(fā)生變化時,根據(jù)該用戶設(shè)計(jì)中變化的線更新該第一時鐘網(wǎng)絡(luò)圖中與該用戶設(shè)計(jì)中變化的線相對應(yīng)的部分,得到第二時鐘網(wǎng)絡(luò)圖。
[0021]進(jìn)一步優(yōu)選的,從用戶設(shè)計(jì)中獲取時鐘線、復(fù)位線和使能線,具體為:
[0022]標(biāo)識連接到該用戶設(shè)計(jì)中的寄存器中的時鐘線、復(fù)位線和使能線。
[0023]基于上述技術(shù)方案,本發(fā)明實(shí)施例提供的基于SAT算法的時鐘樹布線方法,通過獲取用戶設(shè)計(jì)和芯片模型中的約束,并對由約束轉(zhuǎn)化生成的WFF格式的子句調(diào)用SAT算法,得到滿足約束的至少一個解,將至少一個解中的任一解對應(yīng)的數(shù)學(xué)解標(biāo)記到從用戶設(shè)計(jì)中獲取的線上,從而完成時鐘樹的布線。
【附圖說明】
[0024]為了更清楚地說明本發(fā)明實(shí)施例的技術(shù)方案,下面將對本發(fā)明實(shí)施例中所需要使用的附圖作簡單地介紹,顯而易見地,下面所描述的附圖僅僅是本發(fā)明的一些實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0025]圖1為根據(jù)本發(fā)明實(shí)施例的基于SAT算法的時鐘樹布線方法的示意性流程圖;
[0026]圖2為根據(jù)本發(fā)明實(shí)施例的基于SAT算法的時鐘樹布線方法的另一示意性流程圖。
【具體實(shí)施方式】
[0027]下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明的一部分實(shí)施例,而不是全部實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動的前提下所獲得的所有其他實(shí)施例,都應(yīng)屬于本發(fā)明保護(hù)的范圍。
[0028]圖1為根據(jù)本發(fā)明實(shí)施例的基于SAT算法的時鐘樹布線方法100的示意性流程圖。如圖1所示的方法100包括:
[0029]110,從用戶設(shè)計(jì)中獲取時鐘線、復(fù)位線和使能線,并保存該時鐘線、該復(fù)位線和該使能線的約束。
[0030]120,從芯片模型中獲取第一時鐘樹網(wǎng)絡(luò)圖,并保存該第一時鐘網(wǎng)絡(luò)圖中的節(jié)點(diǎn)和該第一時鐘樹網(wǎng)絡(luò)圖包括的多路選擇器約束、多路選擇器間配置約束和多路選擇器間連接關(guān)系約束。
[0031]130,根據(jù)該時鐘線、該復(fù)位線和該使能線的約束以及該第一時鐘樹網(wǎng)絡(luò)圖包括的約束,生成WFF格式的子句。
[0032]140,對該子句調(diào)用可滿足性SAT算法,得到滿足約束的至少一個解。
[0033]150,將該至少一個解中的任一解對應(yīng)的數(shù)學(xué)解標(biāo)記到該時鐘線、該復(fù)位線和該使能線上。
[0034]具體的,在本發(fā)明實(shí)施例中,在110中,可以通過標(biāo)識連接到該用戶設(shè)計(jì)中的寄存器中的時鐘線、復(fù)位線和使能線的方式,獲取用戶設(shè)計(jì)中的時鐘線、復(fù)位線和使能線。同時,可以保存獲取的時鐘線、復(fù)位線和使能線的約束。應(yīng)理解,在本發(fā)明實(shí)施例中,用戶設(shè)計(jì)中的一條線可能同時作為時鐘線,復(fù)位線和使能線,還可能連接了其它的邏輯,因此,需要將用戶設(shè)計(jì)中的每一線進(jìn)行標(biāo)識,從而有利于確定最后的布線規(guī)則。
[0035]在120中,可以從芯片模型中提取第一時鐘樹網(wǎng)絡(luò)圖,并保存第一時鐘網(wǎng)絡(luò)圖中的節(jié)點(diǎn)和該第一時鐘樹網(wǎng)絡(luò)圖包括的多路選擇器約束、多路選擇器間配置約束和多路選擇器間連接關(guān)系約束。應(yīng)理解,在本發(fā)明實(shí)施例中,第一時鐘網(wǎng)絡(luò)圖中的節(jié)點(diǎn)可以包括多路選擇器的輸入、輸出,則多路選擇器約束可以為多路選擇器的輸入、輸出之間的邏輯關(guān)系,多路選擇器間配置約束可以為不同的多路選擇器之間的邏輯配置關(guān)系,多路選擇器間連接關(guān)系約束可以為不同的多路選擇器之間的邏輯連接關(guān)系。
[0036]在130中,將從用戶設(shè)計(jì)中獲取的時鐘線、復(fù)位線和使能線的約束,以及從芯片模型中獲取的第一時鐘樹網(wǎng)絡(luò)圖包括的約束,轉(zhuǎn)化生成WFF格式的子句,以便在140中對這些WFF格式的子句調(diào)用SAT算法,得到滿足這些約束的至少一個解。也就是說,得到滿足這些約束的,能使得多路選擇器的輸出為真的所有的布線方式。應(yīng)理解,在本發(fā)明實(shí)施例中,對WFF格式的子句調(diào)用SAT算法,得到滿足這些約束的至少一個解,就是基于SAT算法,得到多路選擇器的輸出為真的至少一種布線方式,其中,滿足約束的每一個解對應(yīng)一種布線方式。
[0037]在150中,將至少一個解中的任一解對應(yīng)的數(shù)學(xué)解標(biāo)記到時鐘線、復(fù)位線和使能線上。當(dāng)?shù)玫降臐M足約束的至少一個解為一個解時,例如:這個解可以為得到的第一個滿足約束的解,為了加快計(jì)算速度,可以將這個解對應(yīng)的數(shù)學(xué)解標(biāo)記到從用戶設(shè)計(jì)中獲取的時鐘線、復(fù)位線和使能線上,從而完成時鐘樹的布線。當(dāng)?shù)玫降臐M足約束的至少一個解為多個解時,可以選擇這多個解中任一個解對應(yīng)的數(shù)學(xué)解標(biāo)記到從用戶設(shè)計(jì)中獲取的時鐘線、復(fù)位線和使能線上,從而完成時鐘樹的布線。
[0038]因此,本發(fā)明實(shí)施例提供的基于SAT算法的時鐘樹布線方法,通過獲取用戶設(shè)計(jì)和芯片模型中的約束,并對由約束轉(zhuǎn)化生成的WFF格式的子句調(diào)用SAT算法,得到滿足約束的至少一個解,將至少一個解中的任一解對應(yīng)的數(shù)學(xué)解標(biāo)記到從用戶設(shè)計(jì)中獲取的線上,從而完成時鐘樹的布線。
[0039]需要說明的,在本發(fā)明實(shí)施例中,在對從用戶設(shè)計(jì)和芯片模型中獲取的約束轉(zhuǎn)化成的WFF格式的子句調(diào)用SAT算法后,可能出現(xiàn)不能得到滿足約束的至少一個解的情況,例如:在約束不可滿足、調(diào)用算法超時、內(nèi)部存在不可知的問題、調(diào)用過程中出錯或內(nèi)存不足等情況下,是無法得到滿足約束的解的,此時,就不能完成對時鐘樹的布線。
[0040]優(yōu)選的,作為本發(fā)明的一個實(shí)施例,在130中,根據(jù)時鐘線、復(fù)位線和使能線的約束以及第一時鐘樹網(wǎng)絡(luò)圖包括的約束,生成WFF格式的子句,具體為:
[0041]對時鐘線、復(fù)位線和使能線的約束以及第一時鐘樹網(wǎng)絡(luò)圖包括的約束進(jìn)行合取范式;
[0042]將合取范式的結(jié)果轉(zhuǎn)換為WFF格式的子句。
[0043]具體的,在本發(fā)明實(shí)施例中,可以對在110中從用戶設(shè)計(jì)中獲取并保存的時鐘線的約束、復(fù)位線的約束和使能線的約束,以及在120中從芯片模型中獲取的第一時鐘樹網(wǎng)線包括的多路選擇器約束、多路選擇器間配置約束和多路選擇器間連接關(guān)系約束進(jìn)行合取,應(yīng)理解,我們可以將所有要處理的線用連續(xù)的整數(shù)表示,將線經(jīng)過多路選擇器的事實(shí)表示為將多路選擇器的節(jié)點(diǎn)賦值為線對應(yīng)的整數(shù)。將合取范式的結(jié)果轉(zhuǎn)換為WFF格式的子句。
[0044]應(yīng)理解,在本發(fā)明實(shí)施例中,WFF格式的子句可以為一個INT類型的數(shù)組。例如:對節(jié)點(diǎn)A、B、C之間的約束進(jìn)行合取為:(A = = 5) &&(B = = 1)&&(B = = C),則用A[O],A[l]等表示A、B、C對應(yīng)的二進(jìn)制的比特位,則合取范式為A[0]&& ! A[1]&&A[2]&& !B[0]&& ! B[1]&&B[2]&&(B[0] I I ! C[0])&&( ! B[0] | | C[0])&&(B[1] | ! C[l])&&( !B[1]||C[1])&&(B[2]|| ! C[2])&&( ! B [2] | | C[2]))的則可以使用 I 代表 A[0],使用-1代表! A[0],同理2代表A[l],使用-2代表! A[l]等等,使用O代表符號&&,那么,這個合取范式的結(jié)果可以表達(dá)為:10-2030-40-50604-70-4705-80-5806-90-690,這就是一個WFF格式的子句。其中,“ !”表示:邏輯非,“&&”表示:邏輯與,“I I”表示:邏輯或。
[0045]對節(jié)點(diǎn)A、B、C之間的約束進(jìn)行合取范式為:A[0]&& ! A[1]&&A[2]&& !B[0]&& ! B[1]&&B[2]&&(B[0] I I ! C[0])&&( ! B[0] | | C[0])&&(B[1] | ! C[l])&&( !B[1]||C[1])&&(B[2]|| ! C[2])&&( ! B [2] | | C[2])),要得到滿足約束的至少一個解,就是要得到使得 A[0]&& ! A[1]&&A[2]&& ! B[0]&& ! B[1]&&B[2]&&(B[0] | | !C[0])&&( ! B[0] I |C[0])&&(B[1] I I ! C[l])&&( ! B[l] | | C[1])&&(B[2] | | ! C[2])&&( !B[2] I C_為I時,節(jié)點(diǎn)A、B、C是否為真的解。例如,A[0],A[2],B[2],C[2]為真,其余為假,這樣可以滿足合取范式為I,從而得到了一個解,再將解標(biāo)記回十進(jìn)制的值中,可知A為5,B和C均為I。進(jìn)一步可知,節(jié)點(diǎn)A被線5使用,節(jié)點(diǎn)B和C被線I使用。需要說明的上,這僅是本發(fā)明實(shí)施例的一個例子,并不對本發(fā)明實(shí)施例構(gòu)成任何限定。
[0046]優(yōu)選的,作為本發(fā)明的另一個實(shí)施例,在150中,至少一個解為滿足約束的所有解,將該至少一個解中的任一解對應(yīng)的數(shù)學(xué)解標(biāo)記到時鐘線、復(fù)位線和使能線上,具體為:
[0047]通過評估的方式確定該所有解中的優(yōu)選解;
[0048]將該優(yōu)選解對應(yīng)的數(shù)學(xué)解標(biāo)記到時鐘線、復(fù)位線和使能線上。
[0049]具體的,在本發(fā)明實(shí)施例中,分析評估滿足約束的所有解中不需要滿足條件的解,或者需要滿足條件但計(jì)算量大的解,將這些解從所有解中去除,從而確定該所有解中的一個優(yōu)選解,并將從所有解中確定的一個優(yōu)選解對應(yīng)的數(shù)學(xué)解標(biāo)記到該時鐘線、該復(fù)位線和該使能線上。優(yōu)選解對應(yīng)一種較佳的布線方式,也就是說,將優(yōu)選解對應(yīng)的數(shù)學(xué)解標(biāo)記到從用戶設(shè)計(jì)中獲取的時鐘線、復(fù)位線和使能線上,完成的時鐘樹的布線是一種較佳的布線方式。
[0050]因此,本發(fā)明實(shí)施例提供的基于SAT算法的時鐘樹布線方法,通過獲取用戶設(shè)計(jì)和芯片模型中的約束,并對由約束轉(zhuǎn)化生成的WFF格式的子句調(diào)用SAT算法,得到滿足約束的所有解,將所有解中的優(yōu)選解對應(yīng)的數(shù)學(xué)解標(biāo)記到從用戶設(shè)計(jì)中獲取的線上,從而完成時鐘樹的布線。
[0051]優(yōu)選的,作為本發(fā)明的另一個實(shí)施例,如圖2所示,在110之后,該方法100還包括:
[0052]160,為時鐘線、復(fù)位線和使能線添加平衡約束和/或分支約束。
[0053]具體的,在本發(fā)明實(shí)施例中,可以對從用戶設(shè)計(jì)中獲取的時鐘線、復(fù)位線和使能線額外的添加一些約束,可以添加平衡約束和/或分支約束,從而大大的減少不合理解的數(shù)目。其中,平衡約束可以使得線網(wǎng)中的源點(diǎn)相同的線到各個目的點(diǎn)的時延相同或相近??梢詫⒕€網(wǎng)中的目的點(diǎn)分組,分支約束可以使得每組目的點(diǎn)到其它線的某一組或多組中每一組目的點(diǎn)的時延相同或相近。
[0054]因此,本發(fā)明實(shí)施例提供的基于SAT算法的時鐘樹布線方法,通過獲取用戶設(shè)計(jì)和芯片模型中的約束,并對由約束轉(zhuǎn)化生成的WFF格式的子句調(diào)用SAT算法,得到滿足約束的至少一個解,將至少一個解中的任一解對應(yīng)的數(shù)學(xué)解標(biāo)記到從用戶設(shè)計(jì)中獲取的線上,從而完成時鐘樹的布線。
[0055]應(yīng)理解,在本發(fā)明實(shí)施例中,在130中,根據(jù)時鐘線、復(fù)位線和使能線的約束以及第一時鐘樹網(wǎng)絡(luò)圖包括的約束,生成WFF格式的子句。其中,時鐘線、復(fù)位線和使能線的約束包括從用戶設(shè)計(jì)中獲取的約束和額外為這些線添加的約束,因此,要根據(jù)這所有的約束,生成WFF格式的子句。
[0056]優(yōu)選的,作為本發(fā)明的另一個實(shí)施例,如圖2所示,在120之后,該方法100還包括:
[0057]170,當(dāng)該用戶設(shè)計(jì)發(fā)生變化時,根據(jù)該用戶設(shè)計(jì)中變化的線更新該第一時鐘網(wǎng)絡(luò)圖中與該用戶設(shè)計(jì)中變化的線相對應(yīng)的部分,得到第二時鐘網(wǎng)絡(luò)圖。
[0058]具體的,在本發(fā)明實(shí)施例中,當(dāng)用戶設(shè)計(jì)發(fā)生變化時,從用戶設(shè)計(jì)中獲取的時鐘線、復(fù)位線和使能線中的某些線發(fā)生了變化,這時需要更新第一時鐘網(wǎng)絡(luò)圖中與該用戶設(shè)計(jì)中變化的線相對應(yīng)的部分,得到第二時鐘樹網(wǎng)絡(luò)圖。也就是說,根據(jù)用戶設(shè)計(jì)中變化的部分僅更改第一時鐘樹網(wǎng)絡(luò)圖中的局部,而無需重新建立一個時鐘樹網(wǎng)絡(luò)圖,從而可以加快建立時鐘樹網(wǎng)絡(luò)圖的速度。
[0059]應(yīng)理解,在本發(fā)明實(shí)施例中,在130中,根據(jù)時鐘線、復(fù)位線和使能線的約束以及第一時鐘樹網(wǎng)絡(luò)圖包括的約束,生成WFF格式的子句。其中,第一時鐘樹網(wǎng)絡(luò)圖為更新后的時鐘樹網(wǎng)絡(luò)圖,即:第二時鐘樹網(wǎng)絡(luò)圖,因此,可以根據(jù)時鐘線、復(fù)位線和使能線的約束以及第二時鐘樹網(wǎng)絡(luò)圖包括的約束,生成WFF格式的子句。
[0060]另外,本文中術(shù)語“和/或”,僅僅是一種描述關(guān)聯(lián)對象的關(guān)聯(lián)關(guān)系,表示可以存在三種關(guān)系,例如,A和/或B,可以表示:單獨(dú)存在A,同時存在A和B,單獨(dú)存在B這三種情況。另外,本文中字符“/”,一般表示前后關(guān)聯(lián)對象是一種“或”的關(guān)系。
[0061]應(yīng)理解,在本發(fā)明各實(shí)施例中,上述各過程的序號的大小并不意味著執(zhí)行順序的先后,各過程的執(zhí)行順序應(yīng)以其功能和內(nèi)在邏輯確定,而不應(yīng)對本發(fā)明實(shí)施例的實(shí)施過程構(gòu)成任何限定。
[0062]本領(lǐng)域普通技術(shù)人員可以意識到,結(jié)合本文中所公開的實(shí)施例描述的各示例的單元及算法步驟,能夠以電子硬件、計(jì)算機(jī)軟件或者二者的結(jié)合來實(shí)現(xiàn),為了清楚地說明硬件和軟件的可互換性,在上述說明中已經(jīng)按照功能一般性地描述了各示例的組成及步驟。這些功能究竟以硬件還是軟件方式來執(zhí)行,取決于技術(shù)方案的特定應(yīng)用和設(shè)計(jì)約束條件。專業(yè)技術(shù)人員可以對每個特定的應(yīng)用來使用不同方法來實(shí)現(xiàn)所描述的功能,但是這種實(shí)現(xiàn)不應(yīng)認(rèn)為超出本發(fā)明的范圍。
[0063]以上所述,僅為本發(fā)明的【具體實(shí)施方式】,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到各種等效的修改或替換,這些修改或替換都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)以權(quán)利要求的保護(hù)范圍為。
【主權(quán)項(xiàng)】
1.一種基于SAT算法的時鐘樹布線方法,其特征在于,包括: 從用戶設(shè)計(jì)中獲取時鐘線、復(fù)位線和使能線,并保存所述時鐘線、所述復(fù)位線和所述使能線的約束; 從芯片模型中獲取第一時鐘樹網(wǎng)絡(luò)圖,并保存所述第一時鐘網(wǎng)絡(luò)圖中的節(jié)點(diǎn)和所述第一時鐘樹網(wǎng)絡(luò)圖包括的多路選擇器約束、多路選擇器間配置約束和多路選擇器間連接關(guān)系約束; 根據(jù)所述時鐘線、所述復(fù)位線和所述使能線的約束以及所述第一時鐘樹網(wǎng)絡(luò)圖包括的約束,生成WFF格式的子句; 對所述子句調(diào)用可滿足性SAT算法,得到滿足所述約束的至少一個解; 將所述至少一個解中的任一解對應(yīng)的數(shù)學(xué)解標(biāo)記到所述時鐘線、所述復(fù)位線和所述使能線上。2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)所述時鐘線、所述復(fù)位線和所述使能線的約束以及所述第一時鐘樹網(wǎng)絡(luò)圖包括的約束,生成WFF格式的子句,具體為: 對所述時鐘線、所述復(fù)位線和所述使能線的約束以及所述第一時鐘樹網(wǎng)絡(luò)圖包括的約束進(jìn)行合取范式; 將所述合取范式的結(jié)果轉(zhuǎn)換為WFF格式的子句。3.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,所述從用戶設(shè)計(jì)中獲取時鐘線、復(fù)位線和使能線之后,所述方法還包括: 為所述時鐘線、所述復(fù)位線和所述使能線添加平衡約束和/或分支約束。4.根據(jù)權(quán)利要求1至3中任一項(xiàng)所述的方法,其特征在于,所述至少一個解為滿足所述約束的所有解,將所述至少一個解中的任一解對應(yīng)的數(shù)學(xué)解標(biāo)記到所述時鐘線、所述復(fù)位線和所述使能線上,具體為: 通過評估的方式確定所述所有解中的優(yōu)選解; 將所述優(yōu)選解對應(yīng)的數(shù)學(xué)解標(biāo)記到所述時鐘線、所述復(fù)位線和所述使能線上。5.根據(jù)權(quán)利要求1至4中任一項(xiàng)所述的方法,其特征在于,所述從芯片模型中獲取第一時鐘樹網(wǎng)絡(luò)圖之后,所述方法還包括: 當(dāng)所述用戶設(shè)計(jì)發(fā)生變化時,根據(jù)所述用戶設(shè)計(jì)中變化的線更新所述第一時鐘網(wǎng)絡(luò)圖中與所述用戶設(shè)計(jì)中變化的線相對應(yīng)的部分,得到第二時鐘網(wǎng)絡(luò)圖。6.根據(jù)權(quán)利要求1至5中任一項(xiàng)所述的方法,其特征在于,所述從用戶設(shè)計(jì)中獲取時鐘線、復(fù)位線和使能線,具體為: 標(biāo)識連接到所述用戶設(shè)計(jì)中的寄存器中的所述時鐘線、所述復(fù)位線和所述使能線。
【文檔編號】G06F17/50GK105989197SQ201510044140
【公開日】2016年10月5日
【申請日】2015年1月28日
【發(fā)明人】孫鐵力, 徐靜
【申請人】京微雅格(北京)科技有限公司