本發(fā)明實(shí)施例涉及電路設(shè)計(jì)領(lǐng)域,尤其涉及一種時(shí)序約束管理方法及裝置。
背景技術(shù):
在電路的設(shè)計(jì)過(guò)程中,為了便于電路的設(shè)計(jì)以及維護(hù),通常對(duì)電路采用層次化設(shè)計(jì),層次化設(shè)計(jì)的電路由至少一個(gè)頂層模塊構(gòu)成,各頂層模塊中包括多個(gè)子模塊,為了保證整個(gè)電路可以正常且高效的運(yùn)行,需要對(duì)各頂層模塊以及各頂層模塊中的子模塊進(jìn)行時(shí)序約束。
在電路設(shè)計(jì)初期階段,先根據(jù)電路的時(shí)序約束為電路中的各頂層模塊設(shè)計(jì)時(shí)序約束,然后根據(jù)頂層模塊的時(shí)序約束為頂層模塊中的子模塊設(shè)計(jì)粗略的時(shí)序約束,在電路設(shè)計(jì)初期階段之后,當(dāng)頂層模塊中的基本時(shí)序模型或者設(shè)計(jì)環(huán)境發(fā)生變化時(shí),需要對(duì)該頂層模塊中的部分子模塊的時(shí)序約束進(jìn)行修改;在現(xiàn)有技術(shù)中,通常對(duì)子模塊的所有設(shè)計(jì)(包括時(shí)序約束)進(jìn)行優(yōu)化修改后,形成修改后的子模塊,然后將修改后的整個(gè)子模塊拼接至頂層模塊中,并通過(guò)如下方式對(duì)修改后的子模塊的時(shí)序約束進(jìn)行檢測(cè):在頂層模塊中運(yùn)行頂層模塊中的各子模塊,在各子模塊的運(yùn)行過(guò)程中,根據(jù)修改后的子模塊以及與該修改后的子模塊具有連接關(guān)系的子模塊的運(yùn)行狀況,判斷修改后的子模塊與和該修改后的子模塊具有連接關(guān)系的子模塊之間是否存在時(shí)序沖突,和/或,通過(guò)頂層模塊中的所有子模塊的運(yùn)行時(shí)長(zhǎng),判斷修改后的子模塊的時(shí)序約束與其它子模塊的時(shí)序約束的結(jié)合是否滿足頂層模塊的時(shí)序約束。
然而,在現(xiàn)有技術(shù)中,在頂層模塊中運(yùn)行各子模塊的過(guò)程中,需要對(duì)各子模塊中的部件進(jìn)行調(diào)用,由于頂層模塊中各子模塊的部件通常較多,因此,在對(duì)修改后的子模塊的時(shí)序約束進(jìn)行檢測(cè)過(guò)程中,需要對(duì)拼接形成的頂層模塊中所有子模塊進(jìn)行較多的調(diào)用,使得檢測(cè)過(guò)程消耗的時(shí)間較 多,對(duì)修改后的子模塊的時(shí)序約束的檢測(cè)效率低下,導(dǎo)致電路設(shè)計(jì)的整體效率低下。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明實(shí)施例提供一種時(shí)序約束管理方法及裝置,以實(shí)現(xiàn)提高對(duì)待檢測(cè)子模塊的待檢測(cè)的時(shí)序約束進(jìn)行檢測(cè)的效率,進(jìn)而提高電路的整體設(shè)計(jì)效率。
第一方面,本發(fā)明實(shí)施例提一種時(shí)序約束管理方法,所述方法應(yīng)用于時(shí)序約束系統(tǒng),所述時(shí)序約束系統(tǒng)中包括頂層模塊和所述頂層模塊對(duì)應(yīng)的頂層數(shù)據(jù)庫(kù),所述頂層模塊中包括至少兩個(gè)子模塊,包括:
確定待檢測(cè)子模塊的待檢測(cè)的時(shí)序約束,所述待檢測(cè)子模塊為所述頂層模塊中的任一子模塊;
根據(jù)所述待檢測(cè)的時(shí)序約束、以及所述頂層數(shù)據(jù)庫(kù)中存儲(chǔ)的所述頂層模塊的時(shí)序約束、所述頂層模塊中除所述待檢測(cè)子模塊外的其它子模塊的時(shí)序約束,判斷所述待檢測(cè)的時(shí)序約束是否滿足預(yù)設(shè)約束條件;
當(dāng)所述待檢測(cè)的時(shí)序約束滿足預(yù)設(shè)約束條件時(shí),向所述頂層模塊發(fā)送所述待檢測(cè)的時(shí)序約束,以使所述頂層模塊根據(jù)所述待檢測(cè)的時(shí)序約束對(duì)所述待檢測(cè)模塊進(jìn)行更新。
第二方面,本發(fā)明實(shí)施例提供一種時(shí)序約束管理裝置,所述時(shí)序約束管理裝置應(yīng)用于時(shí)序約束系統(tǒng),所述時(shí)序約束系統(tǒng)包括頂層模塊和所述頂層模塊對(duì)應(yīng)的頂層數(shù)據(jù)庫(kù),所述頂層模塊中包括至少兩個(gè)子模塊,所述時(shí)序約束管理裝置包括確定模塊、檢測(cè)模塊以及發(fā)送模塊,其中,
所述確定模塊,用于確定待檢測(cè)子模塊的待檢測(cè)的時(shí)序約束,所述待檢測(cè)子模塊為所述頂層模塊中的任一子模塊;
所述檢測(cè)模塊,用于根據(jù)所述確定模塊確定的所述待檢測(cè)的時(shí)序約束、以及所述頂層數(shù)據(jù)庫(kù)中存儲(chǔ)的所述頂層模塊的時(shí)序約束、所述頂層模塊中除所述待檢測(cè)子模塊外的其它子模塊的時(shí)序約束,判斷所述待檢測(cè)的時(shí)序約束是否滿足預(yù)設(shè)約束條件;
所述發(fā)送模塊,用于在檢測(cè)模塊判斷所述待檢測(cè)的時(shí)序約束滿足所述預(yù)設(shè)約束條件時(shí),向所述頂層模塊發(fā)送所述待檢測(cè)的時(shí)序約束,以使所述頂層模塊根據(jù)所述待檢測(cè)的時(shí)序約束對(duì)所述待檢測(cè)模塊進(jìn)行更新。
本發(fā)明實(shí)施例提供的時(shí)序約束管理方法及裝置,先確定待檢測(cè)子模塊的待檢測(cè)的時(shí)序約束,待檢測(cè)子模塊為頂層模塊中的任一子模塊,然后根據(jù)待檢測(cè)的時(shí)序約束、以及頂層數(shù)據(jù)庫(kù)中存儲(chǔ)的頂層模塊的時(shí)序約束、頂層模塊中除待檢測(cè)子模塊外的其它子模塊的時(shí)序約束,判斷待檢測(cè)的時(shí)序約束是否滿足預(yù)設(shè)約束條件,當(dāng)待檢測(cè)的時(shí)序約束滿足預(yù)設(shè)約束條件時(shí),將待檢測(cè)的時(shí)序約束存儲(chǔ)至頂層數(shù)據(jù)庫(kù)中,向頂層模塊發(fā)送待檢測(cè)的時(shí)序約束,以使頂層模塊根據(jù)待檢測(cè)的時(shí)序約束對(duì)待檢測(cè)模塊進(jìn)行更新;在上述過(guò)程中,由于無(wú)需對(duì)頂層模塊中的所有子模塊進(jìn)行運(yùn)行,只需要根據(jù)頂層數(shù)據(jù)庫(kù)中預(yù)先存儲(chǔ)的數(shù)據(jù)即可判斷待檢測(cè)的時(shí)序約束是否滿足預(yù)設(shè)約束條件,減少了對(duì)待檢測(cè)時(shí)序約束的檢測(cè)試時(shí)間,提高了檢測(cè)效率,進(jìn)而提高電路的整體設(shè)計(jì)效率。
附圖說(shuō)明
為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作一簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明提供的時(shí)序約束管理方法的應(yīng)用場(chǎng)景示意圖;
圖2為本發(fā)明提供的時(shí)序約束管理方法的流程示意圖一;
圖3為本發(fā)明提供的時(shí)序約束管理方法的流程示意圖二;
圖4為本發(fā)明提供的時(shí)序約束管理系統(tǒng)的結(jié)構(gòu)示意圖;
圖5為本發(fā)明提供的時(shí)序約束管理裝置的結(jié)構(gòu)示意圖一;
圖6為本發(fā)明提供的時(shí)序約束管理裝置的結(jié)構(gòu)示意圖二。
具體實(shí)施方式
為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
圖1為本發(fā)明提供的時(shí)序約束管理方法的應(yīng)用場(chǎng)景示意圖,請(qǐng)參照?qǐng)D1,該時(shí)序約束系統(tǒng)中包括N個(gè)頂層模塊,分記為頂層模塊1、頂層模塊2-頂層模塊N,各頂層模塊中包括至少兩個(gè)子模塊;值得說(shuō)明的是,頂層模塊和子模塊是相對(duì)的,一個(gè)模塊既可以是它下一層模塊的頂層模塊,也可以是它上一層模塊的子模塊;例如,模塊1中包括模塊A和模塊B,模塊A中包括模塊M和模塊N,則模塊A為模塊1的子模塊,同時(shí),模塊A也是模塊M和模塊N的頂層模塊。各頂層模塊和各頂層模塊中的子模塊均具有各自的時(shí)序約束,在電路設(shè)計(jì)過(guò)程中,當(dāng)對(duì)一頂層模塊中的子模塊的時(shí)序約束進(jìn)行修改后,需要對(duì)子模塊的修改后的時(shí)序約束進(jìn)行檢測(cè),以判斷修改后的時(shí)序約束的是否符合預(yù)設(shè)條件;下面采用具體實(shí)施例對(duì)時(shí)序約束管理方法進(jìn)行詳細(xì)說(shuō)明。
圖2為本發(fā)明提供的時(shí)序約束管理方法的流程示意圖一,該方法應(yīng)用于時(shí)序約束系統(tǒng),時(shí)序約束系統(tǒng)中包括頂層模塊和頂層模塊對(duì)應(yīng)的頂層數(shù)據(jù)庫(kù),各頂層模塊中包括至少兩個(gè)子模塊,請(qǐng)參照?qǐng)D2,該方法可以包括:
S201、確定待檢測(cè)子模塊的待檢測(cè)的時(shí)序約束,待檢測(cè)子模塊為頂層模塊中的任一子模塊;
S202、根據(jù)待檢測(cè)的時(shí)序約束、以及頂層數(shù)據(jù)庫(kù)中存儲(chǔ)的頂層模塊的時(shí)序約束、頂層模塊中除待檢測(cè)子模塊外的其它子模塊的時(shí)序約束,判斷待檢測(cè)的時(shí)序約束是否滿足預(yù)設(shè)約束條件;
S203、當(dāng)所述待檢測(cè)的時(shí)序約束滿足預(yù)設(shè)約束條件時(shí),向頂層模塊發(fā)送待檢測(cè)的時(shí)序約束,以使頂層模塊根據(jù)待檢測(cè)的時(shí)序約束對(duì)待檢測(cè)模塊進(jìn)行更新。
在圖2所示的實(shí)施例中,每一個(gè)頂層模塊均對(duì)應(yīng)一個(gè)頂層數(shù)據(jù)庫(kù),頂層數(shù)據(jù)庫(kù)用于存儲(chǔ)頂層模塊的時(shí)序約束、以及頂層模塊中各子模塊的時(shí)序約束;在電路設(shè)計(jì)初級(jí)階段,為各頂層模塊設(shè)計(jì)時(shí)序約束,并根據(jù)頂層模塊的時(shí)序約束為頂層模塊中的各子模塊設(shè)計(jì)粗略的時(shí)序約束,然后,將頂層模塊的時(shí)序約束、頂層模塊中各子模塊的時(shí)序約束存放至該頂層模塊的頂層數(shù)據(jù)庫(kù)中。
在電路設(shè)計(jì)初級(jí)階段之后的任一階段,可以根據(jù)實(shí)際需要對(duì)頂層模塊中的任一子模塊中的時(shí)序約束進(jìn)行修改,并對(duì)修改后的時(shí)序約束進(jìn)行檢 測(cè);下面以頂層模塊中的任一待檢測(cè)子模塊的待檢測(cè)的時(shí)序約束的檢測(cè)過(guò)程為例,對(duì)圖1所示的時(shí)序約束管理方法進(jìn)行詳細(xì)說(shuō)明。
在確定待檢測(cè)子模塊的待檢測(cè)的時(shí)序約束之后,在頂層數(shù)據(jù)庫(kù)中獲取頂層數(shù)據(jù)庫(kù)中存儲(chǔ)的頂層模塊的時(shí)序約束、頂層模塊中除待檢測(cè)子模塊外的其它子模塊的時(shí)序約束,并根據(jù)待檢測(cè)的時(shí)序約束、在頂層數(shù)據(jù)庫(kù)中獲取得到的頂層模塊的時(shí)序約束、頂層模塊中除待檢測(cè)子模塊外的其它子模塊的時(shí)序約束,判斷待檢測(cè)的時(shí)序約束是否滿足預(yù)設(shè)約束條件,可選的,預(yù)設(shè)約束條件可以為待檢測(cè)子模塊的待檢測(cè)的時(shí)序約束和其它子模塊的時(shí)序約束的結(jié)合,滿足頂層模塊的時(shí)序約束。
若判斷待檢測(cè)的時(shí)序約束滿足預(yù)設(shè)約束條件,向頂層模塊發(fā)送待檢測(cè)的時(shí)序約束,以使頂層模塊根據(jù)待檢測(cè)的時(shí)序約束對(duì)待檢測(cè)模塊進(jìn)行更新。若判斷待檢測(cè)的時(shí)序約束不滿足預(yù)設(shè)約束條件,可選的,可以向用戶反饋待檢測(cè)時(shí)序約束不滿足預(yù)設(shè)約束條件的分析報(bào)告,以使得用戶可以根據(jù)分析報(bào)告對(duì)待檢測(cè)的時(shí)序約束進(jìn)行進(jìn)一步的修改。
進(jìn)一步的,在圖1所示的實(shí)施例中,在電路設(shè)計(jì)初級(jí)階段之后的任一階段,可以先對(duì)子模塊的部分時(shí)序約束進(jìn)行修改以及驗(yàn)證,在驗(yàn)證修改的部分時(shí)序約束符合要求時(shí),再對(duì)該子模塊的其它部分時(shí)序約束進(jìn)行修改,依次類推,直至完成整個(gè)子模塊以及整個(gè)電路的時(shí)序約束的修改及驗(yàn)證;通過(guò)對(duì)電路中各子模塊的時(shí)序約束進(jìn)行逐步修改驗(yàn)證,易于定位故障點(diǎn),過(guò)程簡(jiǎn)單,進(jìn)而提高電路設(shè)計(jì)的整體效率。
下面,以具體示例對(duì)圖1所示的方法進(jìn)行詳細(xì)說(shuō)明。
假設(shè)頂層模塊1包括3個(gè)子模塊,分別記為子模塊A、子模塊B和子模塊C,假設(shè)預(yù)設(shè)約束條件為子模塊A、子模塊B和子模塊C的時(shí)序約束的結(jié)合滿足頂層模塊1的時(shí)序約束。
在電路設(shè)計(jì)初級(jí)階段,為頂層模塊1設(shè)計(jì)的時(shí)序約束為:從頂層模塊的信號(hào)輸入端至信號(hào)輸出端的延時(shí)范圍為:15納秒(nanosecond,簡(jiǎn)稱ns)-20ns,根據(jù)頂層模塊1的時(shí)序約束為子模塊A設(shè)計(jì)的時(shí)序約束為:5ns-7ns,子模塊B的時(shí)序約束為3ns-5ns,子模塊C的時(shí)序約束為:7ns-8ns;在初級(jí)階段設(shè)計(jì)完成后,將頂層模塊1的時(shí)序約束、子模塊A-子模塊C的時(shí)序約束、以及子模塊A-子模塊C之間的拓?fù)溥B接關(guān)系存儲(chǔ)至頂層模塊1 的頂層數(shù)據(jù)庫(kù)1中。
在電路設(shè)計(jì)初級(jí)階段之后,根據(jù)實(shí)際需要,將子模塊A的時(shí)序約束修改為6ns-8ns,在驗(yàn)證子模塊A的待檢測(cè)的時(shí)序約束(6ns-8ns)是否滿足預(yù)設(shè)約束條件時(shí),從頂層數(shù)據(jù)庫(kù)1中,獲取頂層模塊1的時(shí)序約束15ns-20ns,子模塊B的時(shí)序約束3ns-5ns,子模塊C的時(shí)序約束為7ns-8ns,并確定子模塊A的待檢測(cè)的時(shí)序約束、子模塊B和子模塊C的時(shí)序約束的結(jié)合為16ns-21ns,子模塊A-子模塊C結(jié)合后的時(shí)序約束的最大延時(shí)為21ns,大于頂層模塊1的最大延時(shí)20ns,因此,確定子模塊A的待檢測(cè)的時(shí)序約束6ns-8ns不滿足預(yù)設(shè)條件。
再假設(shè)在電路設(shè)計(jì)初級(jí)階段之后,根據(jù)實(shí)際需要,將子模塊A的時(shí)序約束修改為5ns-6ns,在驗(yàn)證子模塊A的待檢測(cè)的時(shí)序約束(5ns-6ns)是否滿足預(yù)設(shè)約束條件時(shí),從頂層數(shù)據(jù)庫(kù)1中,獲取頂層模塊1的時(shí)序約束15ns-20ns,子模塊B的時(shí)序約束3ns-5ns,子模塊C的時(shí)序約束為7ns-8ns,并確定子模塊A的待檢測(cè)的時(shí)序約束、子模塊B和子模塊C的時(shí)序約束的結(jié)合為15ns-19ns,子模塊A-子模塊C結(jié)合后的時(shí)序約束的范圍在頂層模塊1的時(shí)序約束的范圍之間,確定子模塊A的待檢測(cè)的時(shí)序約束滿足預(yù)設(shè)條件,則將子模塊A的待檢測(cè)的時(shí)序約束5ns-6ns存儲(chǔ)至頂層數(shù)據(jù)庫(kù)1中,并向頂層模塊1發(fā)送子模塊A的待檢測(cè)的時(shí)序約束,以使頂層模塊1根據(jù)子模塊A的時(shí)序約束更新為5ns-6ns(待檢測(cè)的時(shí)序約束)。
本發(fā)明實(shí)施例提供的時(shí)序約束管理方法,先確定待檢測(cè)子模塊的待檢測(cè)的時(shí)序約束,待檢測(cè)子模塊為頂層模塊中的任一子模塊,然后根據(jù)待檢測(cè)的時(shí)序約束、以及頂層數(shù)據(jù)庫(kù)中存儲(chǔ)的頂層模塊的時(shí)序約束、頂層模塊中除待檢測(cè)子模塊外的其它子模塊的時(shí)序約束,判斷待檢測(cè)的時(shí)序約束是否滿足預(yù)設(shè)約束條件,當(dāng)所述待檢測(cè)的時(shí)序約束滿足預(yù)設(shè)約束條件時(shí),將待檢測(cè)的時(shí)序約束存儲(chǔ)至頂層數(shù)據(jù)庫(kù)中,向頂層模塊發(fā)送待檢測(cè)的時(shí)序約束,以使頂層模塊根據(jù)待檢測(cè)的時(shí)序約束對(duì)待檢測(cè)模塊進(jìn)行更新;在上述過(guò)程中,由于無(wú)需對(duì)頂層模塊中的所有子模塊進(jìn)行運(yùn)行,只需要根據(jù)頂層數(shù)據(jù)庫(kù)中預(yù)先存儲(chǔ)的數(shù)據(jù)即可判斷待檢測(cè)的時(shí)序約束是否滿足預(yù)設(shè)約束條件,減少了對(duì)待檢測(cè)時(shí)序約束的檢測(cè)試時(shí)間,提高了檢測(cè)效率,進(jìn)而提高電路的整體設(shè)計(jì)效率。
在圖2所示的實(shí)施例中,為了便于對(duì)頂層模塊中的各子模塊的時(shí)序約束進(jìn)行管理,在時(shí)序約束系統(tǒng)中,每一個(gè)子模塊還可以對(duì)應(yīng)一個(gè)子數(shù)據(jù)庫(kù),各子模塊和其子數(shù)據(jù)庫(kù)之間具有交互接口,子模塊可以通過(guò)和子數(shù)據(jù)庫(kù)之間的交互接口獲取子數(shù)據(jù)庫(kù)中的數(shù)據(jù);各模塊的子數(shù)據(jù)庫(kù)和頂層數(shù)據(jù)庫(kù)之間具有交互接口,各子模塊的子數(shù)據(jù)庫(kù)和頂層數(shù)據(jù)庫(kù)之間可以通過(guò)交互接口實(shí)現(xiàn)數(shù)據(jù)庫(kù)中數(shù)據(jù)傳輸,在圖2所示實(shí)施例的基礎(chǔ)上,本發(fā)明實(shí)施例給出了圖3所示的實(shí)施例。
圖3為本發(fā)明提供的時(shí)序約束管理方法的流程示意圖二,在圖2所示實(shí)施例的基礎(chǔ)上,請(qǐng)參照?qǐng)D3,該方法可以包括:
S301、獲取修改信息、以及頂層數(shù)據(jù)庫(kù)中存儲(chǔ)的待檢測(cè)子模塊的時(shí)序約束;
S302、根據(jù)修改信息,對(duì)獲取得到的頂層數(shù)據(jù)庫(kù)中存儲(chǔ)的待檢測(cè)子模塊的時(shí)序約束進(jìn)行修改,得到待檢測(cè)子模塊的待檢測(cè)的時(shí)序約束;
S303、將待檢測(cè)的時(shí)序約束保存至待檢測(cè)子模塊的子數(shù)據(jù)庫(kù)中;
S304、當(dāng)接收到提交信號(hào)時(shí),通過(guò)待檢測(cè)子模塊的子數(shù)據(jù)庫(kù)與頂層數(shù)據(jù)庫(kù)之間的交互接口,將待檢測(cè)的時(shí)序約束從待檢測(cè)模塊的子數(shù)據(jù)庫(kù)中提交至頂層數(shù)據(jù)庫(kù)中,以使頂層數(shù)據(jù)庫(kù)將頂層數(shù)據(jù)庫(kù)中存儲(chǔ)的待檢測(cè)子模塊的初始時(shí)序約束更新為待檢測(cè)的時(shí)序約束;
S305、根據(jù)待檢測(cè)的時(shí)序約束、以及頂層數(shù)據(jù)庫(kù)中存儲(chǔ)的頂層模塊的時(shí)序約束、頂層模塊中除待檢測(cè)子模塊外的其它子模塊的時(shí)序約束,判斷待檢測(cè)的時(shí)序約束是否滿足預(yù)設(shè)約束條件;
S306、當(dāng)待檢測(cè)的時(shí)序約束滿足預(yù)設(shè)約束條件時(shí),向頂層模塊發(fā)送待檢測(cè)的時(shí)序約束,以使頂層模塊根據(jù)待檢測(cè)的時(shí)序約束對(duì)待檢測(cè)模塊進(jìn)行更新。
在S301中,當(dāng)需要對(duì)待檢測(cè)子模塊的時(shí)序約束進(jìn)行修改時(shí),需要獲取修改信息以及頂層數(shù)據(jù)庫(kù)中存儲(chǔ)的待檢測(cè)子模塊的時(shí)序約束,可選的,獲取得到的修改信息可以為用戶輸入的修改信息;在獲取頂層數(shù)據(jù)庫(kù)中存儲(chǔ)的待檢測(cè)子模塊的時(shí)序約束的過(guò)程中,由于頂層數(shù)據(jù)庫(kù)中存儲(chǔ)著待檢測(cè)子模塊的最新的時(shí)序約束,因此,首先要獲取頂層數(shù)據(jù)庫(kù)中存儲(chǔ)的待檢測(cè)子模塊的時(shí)序約束,但是由于頂層數(shù)據(jù)庫(kù)和待檢測(cè)子模塊之間不具備交互 接口,因此待檢測(cè)子模塊需要通過(guò)子數(shù)據(jù)庫(kù)獲取頂層數(shù)據(jù)庫(kù)中存儲(chǔ)的待檢測(cè)子模塊的時(shí)序約束。
在實(shí)際應(yīng)用過(guò)程中,在電路設(shè)計(jì)初級(jí)階段之后,若第一次對(duì)待檢測(cè)子模塊的時(shí)序約束進(jìn)行修改時(shí),待檢測(cè)子模塊的子數(shù)據(jù)庫(kù)中為存儲(chǔ)任何數(shù)據(jù),此時(shí),可以通過(guò)子數(shù)據(jù)庫(kù)與頂層數(shù)據(jù)庫(kù)之間的交互接口,獲取頂層數(shù)據(jù)庫(kù)中存儲(chǔ)的待檢測(cè)子模塊的時(shí)序約束;若第N(N為大于1的整數(shù))次對(duì)待檢測(cè)子模塊的時(shí)序約束進(jìn)行修改時(shí),待檢測(cè)子模塊的子數(shù)據(jù)庫(kù)中存儲(chǔ)著待檢測(cè)子模塊的時(shí)序約束,且子數(shù)據(jù)庫(kù)中存儲(chǔ)的待檢測(cè)子模塊的時(shí)序約束與頂層數(shù)據(jù)庫(kù)中存儲(chǔ)的待檢測(cè)子模塊的時(shí)序約束相同,此時(shí),在待檢測(cè)子模塊的子數(shù)據(jù)庫(kù)中即可獲取頂層數(shù)據(jù)庫(kù)中存儲(chǔ)的待檢測(cè)子模塊的時(shí)序約束。具體的,獲取頂層數(shù)據(jù)庫(kù)中存儲(chǔ)的待檢測(cè)子模塊的時(shí)序約束,可以包括:
判斷待檢測(cè)子模塊的子數(shù)據(jù)庫(kù)中是否存在待檢測(cè)子模塊的時(shí)序約束;
若判斷結(jié)果為是,則通過(guò)子數(shù)據(jù)庫(kù)與待檢測(cè)子模塊之間的接口,在子數(shù)據(jù)庫(kù)中獲取待檢測(cè)子模塊的時(shí)序約束,子數(shù)據(jù)庫(kù)中存儲(chǔ)的待檢測(cè)子模塊的時(shí)序約束與頂層模塊中存儲(chǔ)的待檢測(cè)模塊的時(shí)序約束相同;
若判斷結(jié)果為否,通過(guò)頂層數(shù)據(jù)庫(kù)與子數(shù)據(jù)庫(kù)之間的交互接口,將頂層數(shù)據(jù)庫(kù)中存儲(chǔ)的待檢測(cè)子模塊的時(shí)序約束保存至子數(shù)據(jù)庫(kù)中,并通過(guò)子數(shù)據(jù)庫(kù)與待檢測(cè)子模塊之間的接口,在子數(shù)據(jù)庫(kù)中獲取頂層數(shù)據(jù)庫(kù)中存儲(chǔ)的待檢測(cè)子模塊的時(shí)序約束。
在S302-S304中,在獲取得到修改信息、以及頂層數(shù)據(jù)庫(kù)中存儲(chǔ)的待檢測(cè)子模塊的時(shí)序約束后,可選的,可以在待檢測(cè)子模塊中,根據(jù)修改信息對(duì)獲取得到的頂層數(shù)據(jù)庫(kù)中存儲(chǔ)的待檢測(cè)子模塊的時(shí)序約束進(jìn)行修改,進(jìn)而得到待檢測(cè)子模塊的待檢測(cè)的時(shí)序約束;在得到待檢測(cè)的時(shí)序約束后,為了方便需要對(duì)待檢測(cè)的時(shí)序約束進(jìn)行修改時(shí),方便獲取待檢測(cè)的時(shí)序約束,將待檢測(cè)的時(shí)序約束保存至待檢測(cè)子模塊的子數(shù)據(jù)庫(kù)中;進(jìn)一步的,為了便于頂層模塊中的其它子模塊對(duì)待檢測(cè)的時(shí)序約束的使用,通過(guò)待檢測(cè)子模塊的子數(shù)據(jù)庫(kù)和頂層數(shù)據(jù)庫(kù)之間的交互接口,將待檢測(cè)的時(shí)序約束從待檢測(cè)模塊的子數(shù)據(jù)庫(kù)中提交至頂層數(shù)據(jù)庫(kù)中,以使頂層數(shù)據(jù)庫(kù)將頂層數(shù)據(jù)庫(kù)中存儲(chǔ)的待檢測(cè)子模塊的初始時(shí)序約束更新為待檢測(cè)的時(shí)序 約束。
在S305中,在判斷待檢測(cè)的時(shí)序約束是否滿足預(yù)設(shè)約束條件時(shí),根據(jù)預(yù)設(shè)約束條件的不同,判斷的過(guò)程也不相同,在實(shí)際應(yīng)用的過(guò)程中,可以根據(jù)實(shí)際需要設(shè)置預(yù)設(shè)約束條件。
一種可行的實(shí)現(xiàn)方式:預(yù)設(shè)約束條件為:頂層模塊中各子模塊的時(shí)序約束的整合后的時(shí)序約束,滿足頂層模塊的時(shí)序約束。
相應(yīng)的,根據(jù)頂層數(shù)據(jù)庫(kù)中的頂層模塊的時(shí)序約束、頂層模塊中除待檢測(cè)子模塊外的其它子模塊的時(shí)序約束、以及待檢測(cè)的時(shí)序約束,判斷待檢測(cè)的時(shí)序約束是否滿足預(yù)設(shè)約束條件,包括:對(duì)待檢測(cè)的時(shí)序約束和頂層數(shù)據(jù)庫(kù)存儲(chǔ)的其它子模塊的時(shí)序約束進(jìn)行整合,得到整合后的時(shí)序約束,根據(jù)整合后的時(shí)序約束和頂層模塊的時(shí)序約束,判斷待檢測(cè)的時(shí)序約束是否滿足預(yù)設(shè)約束條件。
示例性的,假設(shè)頂層模塊的時(shí)序約束為10ns-15ns,待檢測(cè)的時(shí)序約束為:4ns-5ns,其它子模塊的時(shí)序約束分別為3ns-4ns、5ns-6ns,對(duì)待檢測(cè)的時(shí)序約束以及其它子模塊的時(shí)序約束進(jìn)行整合后,得到整合后的時(shí)序約束為12ns-15ns,整合后的時(shí)序約束在頂層模塊的時(shí)序約束的范圍內(nèi),進(jìn)而可以根據(jù)整合后的時(shí)序約束以及頂層模塊的時(shí)序約束,確定待檢測(cè)的時(shí)序約束滿足預(yù)設(shè)約束條件。
另一種可行的實(shí)現(xiàn)方式:預(yù)設(shè)約束條件為:待檢測(cè)子模塊與和待檢測(cè)子模塊具有連接關(guān)系的子模塊之間不存在時(shí)序沖突。
在該種可行的實(shí)現(xiàn)方式中,頂層數(shù)據(jù)庫(kù)還包括頂層模塊中各子模塊件的拓?fù)潢P(guān)系,相應(yīng)的,根據(jù)頂層數(shù)據(jù)庫(kù)中的頂層模塊的時(shí)序約束、頂層模塊中除待檢測(cè)子模塊外的其它子模塊的時(shí)序約束、以及待檢測(cè)的時(shí)序約束,判斷待檢測(cè)的時(shí)序約束是否滿足預(yù)設(shè)約束條件,包括:根據(jù)拓?fù)潢P(guān)系,確定與待檢測(cè)子模塊具有連接關(guān)系的級(jí)聯(lián)子模塊,并確定待檢測(cè)的時(shí)序約束和頂層數(shù)據(jù)庫(kù)存儲(chǔ)的級(jí)聯(lián)子模塊的時(shí)序約束之間的時(shí)序關(guān)系,根據(jù)時(shí)序關(guān)系判斷待檢測(cè)的時(shí)序約束是否滿足預(yù)設(shè)約束條件。
示例性的,假設(shè)根據(jù)頂層模塊中各子模塊之間的拓?fù)溥B接關(guān)系,可以確定與待檢測(cè)子模塊具有級(jí)聯(lián)關(guān)系的子模塊為子模塊1,待檢測(cè)子模塊的輸出端口與子模塊1的輸入端口相連;假設(shè)根據(jù)子模塊1的時(shí)序約束,確 定子模塊1的輸入端口的輸入信號(hào)需要在第i個(gè)時(shí)鐘周期之前到達(dá),根據(jù)待檢測(cè)子模塊的待檢測(cè)的時(shí)序約束,確定待檢測(cè)子模塊輸入端口的輸出信號(hào)在第j個(gè)時(shí)鐘周期時(shí)輸出。
若j小于或等于i,則待檢測(cè)子模塊的輸出端口的輸出信號(hào)無(wú)法按時(shí)到達(dá)子模塊1的輸入接口,進(jìn)而確定待檢測(cè)子模塊的時(shí)序約束與子模塊1之間的時(shí)序約束存在時(shí)序沖突。
若j大于i,則待檢測(cè)子模塊的輸出端口的輸出信號(hào)可以按時(shí)到達(dá)子模塊1的輸入接口,進(jìn)而確定待檢測(cè)子模塊的時(shí)序約束與子模塊1之間的時(shí)序約束不存在時(shí)序沖突。
在S306中,可選的,可以通過(guò)頂層數(shù)據(jù)庫(kù)與頂層模塊之間的交互接口,將頂層數(shù)據(jù)庫(kù)中存儲(chǔ)的待檢測(cè)的時(shí)序約束發(fā)送至頂層模塊,以使頂層模塊根據(jù)待檢測(cè)的時(shí)序約束對(duì)待檢測(cè)模塊進(jìn)行更新。
圖4為本發(fā)明提供的時(shí)序約束管理系統(tǒng)的結(jié)構(gòu)示意圖,下面,請(qǐng)參照?qǐng)D4,對(duì)圖3所示的時(shí)序約束管理方法進(jìn)行進(jìn)一步的說(shuō)明。
請(qǐng)參照?qǐng)D4,該時(shí)序約束管理系統(tǒng)中包括頂層模塊401、頂層數(shù)據(jù)庫(kù)402、子模塊的子數(shù)據(jù)庫(kù)403A-403N,測(cè)試子模塊404A-404B;需要說(shuō)明的是,在實(shí)際的電路設(shè)計(jì)過(guò)程中,為了便于各子模塊的開(kāi)發(fā)以及維護(hù),不同的研發(fā)人員分別在各子模塊中對(duì)該子模塊進(jìn)行設(shè)計(jì),在對(duì)子模塊設(shè)計(jì)完成后,將對(duì)子模塊的優(yōu)化或者整個(gè)子模塊更新至頂層模塊中;在圖4中,子模塊A401A與測(cè)試子模塊A404A的實(shí)質(zhì)相同,子模塊B401B與測(cè)試子模塊B404B的實(shí)質(zhì)相同,為了便于描述,對(duì)子模塊的名稱進(jìn)行了區(qū)分。
在圖4所示的實(shí)施例中,頂層模塊401和頂層數(shù)據(jù)庫(kù)402之間具有交互接口,頂層數(shù)據(jù)庫(kù)402和子數(shù)據(jù)庫(kù)A-子數(shù)據(jù)庫(kù)N之間分別具有交互接口,各子模塊的子數(shù)據(jù)庫(kù)和各自對(duì)應(yīng)的測(cè)試子模塊之間具有交互接口,可以通過(guò)交互接口進(jìn)行數(shù)據(jù)傳輸。
在電路設(shè)計(jì)的初級(jí)階段,先設(shè)計(jì)頂層模塊401的時(shí)序約束,然后根據(jù)頂層模塊401的時(shí)序約束,設(shè)計(jì)各子模塊401A-401N的時(shí)序約束,以及各子模塊401A-401N之間的拓?fù)溥B接關(guān)系,然后通過(guò)頂層模塊401和頂層數(shù)據(jù)庫(kù)402之間的交互接口,將頂層模塊401的時(shí)序約束、各子模塊401A-401N的時(shí)序約束以及拓?fù)溥B接關(guān)系存儲(chǔ)至頂層數(shù)據(jù)庫(kù)402中。
在電路設(shè)計(jì)的初級(jí)階段之后的任一階段,當(dāng)需要頂層模塊中的任一子模塊的時(shí)序約束進(jìn)行修改時(shí),在測(cè)試子模塊中對(duì)子模塊的時(shí)序約束進(jìn)行修改,并對(duì)修改后的時(shí)序約束進(jìn)行測(cè)試,下面,以對(duì)子模塊A的時(shí)序約束進(jìn)行修改以及測(cè)試的過(guò)程為例進(jìn)行說(shuō)明。
當(dāng)需要對(duì)子模塊A的時(shí)序約束進(jìn)行修改時(shí),需要根據(jù)實(shí)際需求,在測(cè)試子模塊A中進(jìn)行時(shí)序約束的修改,具體的:測(cè)試子模塊A先判斷子數(shù)據(jù)庫(kù)A中是否存在子模塊A的時(shí)序約束,若存在,則通過(guò)測(cè)試子模塊A與子數(shù)據(jù)庫(kù)A之間的交互接口,在子數(shù)據(jù)庫(kù)A中獲取子模塊A的時(shí)序約束,若不存在,子數(shù)據(jù)庫(kù)A通過(guò)和頂層數(shù)據(jù)庫(kù)402之間的交互接口,在頂層數(shù)據(jù)庫(kù)402中獲取子模塊A的時(shí)序約束,并通過(guò)和測(cè)試子模塊A之間的交互接口傳輸至測(cè)試子模塊A;在測(cè)試子模塊A獲取得到子模塊A的時(shí)序約束后,將子模塊A的時(shí)序約束應(yīng)用于測(cè)試子模塊A,并在測(cè)試子模塊A中對(duì)子模塊A的時(shí)序約束進(jìn)行修改,得到子模塊A的待測(cè)試的時(shí)序約束。
測(cè)試子模塊A通過(guò)和子數(shù)據(jù)庫(kù)A之間的交互接口,將待測(cè)試的時(shí)序約束傳輸中子數(shù)據(jù)庫(kù)A中,子數(shù)據(jù)庫(kù)A對(duì)待測(cè)試的時(shí)序約束進(jìn)行存儲(chǔ),然后子數(shù)據(jù)庫(kù)A將子模塊A的待測(cè)試的時(shí)序約束傳輸至頂層數(shù)據(jù)庫(kù)中,同時(shí),頂層數(shù)據(jù)庫(kù)中將子模塊A修改前的時(shí)序約束進(jìn)行備份處理,以使得當(dāng)需要子模塊A修改前的時(shí)序約束時(shí),可以在頂層數(shù)據(jù)庫(kù)中獲取得到。
在頂層數(shù)據(jù)庫(kù)中,根據(jù)子模塊A的待測(cè)試時(shí)序約束、頂層模塊的時(shí)序約束、以及頂層數(shù)據(jù)庫(kù)中存儲(chǔ)的子模塊B-子模塊N的時(shí)序約束,判斷待測(cè)試的時(shí)序約束是否滿足預(yù)設(shè)約束條件,可選的,預(yù)設(shè)約束條件可以存儲(chǔ)在頂層數(shù)據(jù)庫(kù)中;若待測(cè)試的時(shí)序約束不滿足預(yù)設(shè)約束條件,對(duì)子模塊A的時(shí)序約束進(jìn)行再次修改,重復(fù)上述過(guò)程,直到修改后的子模塊A的待測(cè)試的時(shí)序約束滿足預(yù)設(shè)約束條件,然后頂層數(shù)據(jù)庫(kù)402通過(guò)和頂層模塊401之間的交互接口將子模塊A的待檢測(cè)的時(shí)序約束傳輸至頂層模塊401,以使得頂層模塊401根據(jù)子模塊A的待檢測(cè)的時(shí)序約束對(duì)子模塊A進(jìn)行更新。
當(dāng)然,在對(duì)子模塊A進(jìn)行更新后,還可以通過(guò)上述方法對(duì)其它子模塊進(jìn)行更新,直至整個(gè)電路設(shè)計(jì)完成;通過(guò)本發(fā)明提供的時(shí)序約束管理方法, 在初級(jí)設(shè)計(jì)階段之后的任一階段,可以隨時(shí)對(duì)任一子模塊的時(shí)序約束進(jìn)行修改并進(jìn)行測(cè)試,無(wú)需在整個(gè)子模塊測(cè)試完成后再對(duì)該子模塊的時(shí)序約束進(jìn)行測(cè)試,縮短設(shè)計(jì)周期,并且在上述對(duì)待測(cè)試時(shí)序約束進(jìn)行測(cè)試的方法簡(jiǎn)單方便,無(wú)需通過(guò)運(yùn)行整個(gè)頂層模塊中的各個(gè)部件,減少檢測(cè)時(shí)間,提高測(cè)試效率,進(jìn)而提高整個(gè)電路的設(shè)計(jì)效率。
圖5為本發(fā)明提供的時(shí)序約束管理裝置的結(jié)構(gòu)示意圖一,該時(shí)序約束管理裝置應(yīng)用于時(shí)序約束系統(tǒng),時(shí)序約束系統(tǒng)包括頂層模塊和頂層模塊對(duì)應(yīng)的頂層數(shù)據(jù)庫(kù),頂層模塊中包括至少兩個(gè)子模塊,時(shí)序約束管理裝置包括確定模塊501、檢測(cè)模塊502以及發(fā)送模塊503,其中,
確定模塊501,用于確定待檢測(cè)子模塊的待檢測(cè)的時(shí)序約束,待檢測(cè)子模塊為頂層模塊中的任一子模塊;
檢測(cè)模塊502,用于根據(jù)確定模塊501確定的待檢測(cè)的時(shí)序約束、以及頂層數(shù)據(jù)庫(kù)中存儲(chǔ)的頂層模塊的時(shí)序約束、頂層模塊中除待檢測(cè)子模塊外的其它子模塊的時(shí)序約束,判斷待檢測(cè)的時(shí)序約束是否滿足預(yù)設(shè)約束條件;
發(fā)送模塊503,用于在檢測(cè)模塊502判斷待檢測(cè)的時(shí)序約束滿足預(yù)設(shè)約束條件時(shí),向頂層模塊發(fā)送待檢測(cè)的時(shí)序約束,以使頂層模塊根據(jù)待檢測(cè)的時(shí)序約束對(duì)待檢測(cè)模塊進(jìn)行更新。
圖6為本發(fā)明提供的時(shí)序約束管理裝置的結(jié)構(gòu)示意圖二,在圖5所示實(shí)施例的基礎(chǔ)上,請(qǐng)參照?qǐng)D6,該時(shí)序約束管理裝置還可以包括保存模塊504和提交模塊505,其中,
保存模塊504,用于將待檢測(cè)的時(shí)序約束保存至待檢測(cè)子模塊的子數(shù)據(jù)庫(kù)中;
提交模塊505,用于當(dāng)接收到提交信號(hào)時(shí),通過(guò)待檢測(cè)子模塊的子數(shù)據(jù)庫(kù)與頂層數(shù)據(jù)庫(kù)之間的交互接口,將待檢測(cè)的時(shí)序約束從待檢測(cè)模塊的子數(shù)據(jù)庫(kù)中提交至頂層數(shù)據(jù)庫(kù)中,以使頂層數(shù)據(jù)庫(kù)將頂層數(shù)據(jù)庫(kù)中存儲(chǔ)的待檢測(cè)子模塊的初始時(shí)序約束更新為待檢測(cè)的時(shí)序約束。
進(jìn)一步的,確定模塊501可以包括獲取單元5011和修改單元5012,其中,
獲取單元5011,用于獲取修改信息、以及頂層數(shù)據(jù)庫(kù)中存儲(chǔ)的待檢測(cè) 子模塊的時(shí)序約束;
修改單元5012,用于根據(jù)修改信息,對(duì)獲取單元5011獲取得到的頂層數(shù)據(jù)庫(kù)中存儲(chǔ)的待檢測(cè)子模塊的時(shí)序約束進(jìn)行修改,得到待檢測(cè)子模塊的待檢測(cè)的時(shí)序約束。
進(jìn)一步的,確定模塊501還可以包括判斷單元5013;
判斷單元5013,用于判斷待檢測(cè)子模塊的子數(shù)據(jù)庫(kù)中是否存在待檢測(cè)子模塊的時(shí)序約束;
相應(yīng)的,獲取單元5011,用于在判斷單元5013判斷待檢測(cè)子模塊的子數(shù)據(jù)庫(kù)中存在待檢測(cè)子模塊的時(shí)序約束時(shí),通過(guò)子數(shù)據(jù)庫(kù)與待檢測(cè)子模塊之間的接口,在子數(shù)據(jù)庫(kù)中獲取待檢測(cè)子模塊的時(shí)序約束,子數(shù)據(jù)庫(kù)中存儲(chǔ)的待檢測(cè)子模塊的時(shí)序約束與頂層模塊中存儲(chǔ)的待檢測(cè)模塊的時(shí)序約束相同;
獲取單元5011,用于在判斷單元5013判斷待檢測(cè)子模塊的子數(shù)據(jù)庫(kù)中不存在待檢測(cè)子模塊的時(shí)序約束時(shí),通過(guò)頂層數(shù)據(jù)庫(kù)與子數(shù)據(jù)庫(kù)之間的交互接口,將頂層數(shù)據(jù)庫(kù)中存儲(chǔ)的待檢測(cè)子模塊的時(shí)序約束保存至子數(shù)據(jù)庫(kù)中,并通過(guò)子數(shù)據(jù)庫(kù)與待檢測(cè)子模塊之間的接口,在子數(shù)據(jù)庫(kù)中獲取頂層數(shù)據(jù)庫(kù)中存儲(chǔ)的待檢測(cè)子模塊的時(shí)序約束。
可選的,發(fā)送模塊503具體可以用于:
通過(guò)頂層數(shù)據(jù)庫(kù)與頂層模塊之間的交互接口,將頂層數(shù)據(jù)庫(kù)中存儲(chǔ)的待檢測(cè)的時(shí)序約束發(fā)送至頂層模塊,以使頂層模塊根據(jù)待檢測(cè)的時(shí)序約束對(duì)待檢測(cè)模塊進(jìn)行更新。
在圖6所示的實(shí)施例中,可選的,檢測(cè)模塊502可以包括整合單元5021和第一檢測(cè)單元5022:
整合單元5021,用于對(duì)待檢測(cè)的時(shí)序約束和頂層數(shù)據(jù)庫(kù)存儲(chǔ)的其它子模塊的時(shí)序約束進(jìn)行整合,得到整合后的時(shí)序約束;
第一檢測(cè)單元5022,用于根據(jù)整合后的時(shí)序約束和頂層模塊的時(shí)序約束,判斷待檢測(cè)的時(shí)序約束是否滿足預(yù)設(shè)約束條件。
在圖6所示的實(shí)施例中,頂層數(shù)據(jù)庫(kù)還包括頂層模塊中各子模塊件的拓?fù)潢P(guān)系,相應(yīng)的,檢測(cè)模塊502可以包括確定單元5023和第二檢測(cè)單元5024:
確定單元5023,用于根據(jù)拓?fù)潢P(guān)系,確定與待檢測(cè)子模塊具有連接關(guān)系的級(jí)聯(lián)子模塊,并確定待檢測(cè)的時(shí)序約束和頂層數(shù)據(jù)庫(kù)存儲(chǔ)的級(jí)聯(lián)子模塊的時(shí)序約束之間的時(shí)序關(guān)系;
第二檢測(cè)單元5024,用于根據(jù)時(shí)序關(guān)系判斷待檢測(cè)的時(shí)序約束是否滿足預(yù)設(shè)約束條件。
本實(shí)施例所示的時(shí)序約束管理裝置,可執(zhí)行上述方法實(shí)施例所示的技術(shù)方案,其實(shí)現(xiàn)原理和技術(shù)效果類似,本實(shí)施例此處不再贅述。
本領(lǐng)域普通技術(shù)人員可以理解:實(shí)現(xiàn)上述各方法實(shí)施例的全部或部分步驟可以通過(guò)程序指令相關(guān)的硬件來(lái)完成。前述的程序可以存儲(chǔ)于一計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中。該程序在執(zhí)行時(shí),執(zhí)行包括上述各方法實(shí)施例的步驟;而前述的存儲(chǔ)介質(zhì)包括:ROM、RAM、磁碟或者光盤等各種可以存儲(chǔ)程序代碼的介質(zhì)。
最后應(yīng)說(shuō)明的是:以上各實(shí)施例僅用以說(shuō)明本發(fā)明的技術(shù)方案,而非對(duì)其限制;盡管參照前述各實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說(shuō)明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對(duì)前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對(duì)其中部分或者全部技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的范圍。