本發(fā)明涉及數(shù)字電路中的電路功能模擬技術(shù),具體涉及一種電路反標(biāo)模擬環(huán)境中時(shí)鐘信號(hào)的延時(shí)對(duì)齊方法及系統(tǒng)。
背景技術(shù):
1、數(shù)字時(shí)序電路設(shè)計(jì)一般在硬件實(shí)現(xiàn)前都需進(jìn)行功能模擬以確認(rèn)所設(shè)計(jì)的功能是正確的,模擬環(huán)境應(yīng)能滿足電路設(shè)計(jì)各階段的需求,這些需求包括無(wú)延時(shí)模擬階段的需求和帶延時(shí)反標(biāo)模擬階段的需求。
2、在數(shù)字時(shí)序電路中,所有時(shí)序邏輯統(tǒng)一在時(shí)鐘信號(hào)到來(lái)的時(shí)刻進(jìn)行數(shù)據(jù)交換。在不考慮電路延時(shí)的功能模擬中,時(shí)鐘信號(hào)從產(chǎn)生點(diǎn)到使用時(shí)鐘信號(hào)時(shí)序器件的延時(shí)是忽略不計(jì)的,此時(shí)時(shí)鐘信號(hào)相關(guān)電路都為零延時(shí)。在數(shù)字時(shí)序電路模擬環(huán)境中,除了待測(cè)模塊使用了時(shí)鐘信號(hào),與待測(cè)模塊相連的其他電路也會(huì)使用相同的時(shí)鐘信號(hào),因此時(shí)鐘信號(hào)從產(chǎn)生點(diǎn)到這些電路也是零延時(shí)。但是,當(dāng)待測(cè)電路完成物理設(shè)計(jì)后進(jìn)行帶延時(shí)反標(biāo)模擬時(shí),待測(cè)電路中時(shí)鐘輸入點(diǎn)到使用時(shí)鐘信號(hào)時(shí)序器件的延時(shí)不再是零延時(shí),而是電路的真實(shí)延時(shí)。但原來(lái)模擬環(huán)境中與待測(cè)模塊相連的其他電路使用的時(shí)鐘信號(hào)還是零延時(shí),這與待測(cè)電路中時(shí)鐘信號(hào)的延時(shí)不匹配,待測(cè)模塊原本滿足要求的接口時(shí)序可能會(huì)因?yàn)檫@種不匹配而產(chǎn)生時(shí)序違反從而導(dǎo)致模擬失敗。此時(shí)需要將時(shí)鐘信號(hào)延時(shí)一段時(shí)間與待測(cè)模塊的時(shí)鐘延時(shí)對(duì)齊后再單獨(dú)傳給待測(cè)模塊外的時(shí)序器件,這樣待測(cè)模塊的接口才能在模擬環(huán)境中滿足時(shí)序要求,反標(biāo)模擬才能正常進(jìn)行。
3、傳統(tǒng)的時(shí)鐘信號(hào)延時(shí)對(duì)齊解決方法是采用觀察波形的方法,在發(fā)生時(shí)序違反的模擬波形中找到待測(cè)模塊時(shí)鐘信號(hào)的延時(shí)范圍并標(biāo)注到模擬環(huán)境的接口相關(guān)電路中進(jìn)行對(duì)齊來(lái)解決模擬環(huán)境中待測(cè)模塊接口的時(shí)序違反問(wèn)題。這種方法經(jīng)過(guò)多次迭代檢查后一般也能解決接口時(shí)序違反的問(wèn)題。由于時(shí)鐘信號(hào)通常同時(shí)控制待測(cè)模塊的輸入和輸出信號(hào),復(fù)雜邏輯電路中大量接口信號(hào)的波形需要被記錄和查找來(lái)嘗試解決接口時(shí)序的違反,而電路反標(biāo)模擬速度非常慢,因此傳統(tǒng)的方法效率非常低。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明要解決的技術(shù)問(wèn)題:針對(duì)現(xiàn)有技術(shù)的上述問(wèn)題,提供一種電路反標(biāo)模擬環(huán)境中時(shí)鐘信號(hào)的延時(shí)對(duì)齊方法及系統(tǒng),本發(fā)明旨在提升電路反標(biāo)模擬效率,加速反標(biāo)模擬進(jìn)度。
2、為了解決上述技術(shù)問(wèn)題,本發(fā)明采用的技術(shù)方案為:
3、一種電路反標(biāo)模擬環(huán)境中時(shí)鐘信號(hào)的延時(shí)對(duì)齊方法,包括下述步驟:
4、確定電路反標(biāo)模擬環(huán)境中待測(cè)模塊輸入端口的時(shí)鐘信號(hào)延時(shí)要求;
5、確定電路反標(biāo)模擬環(huán)境中待測(cè)模塊輸出端口的時(shí)鐘信號(hào)延時(shí)要求;
6、將兩種時(shí)鐘信號(hào)延時(shí)要求合并得到所需時(shí)鐘信號(hào)延時(shí)范圍;
7、根據(jù)所需時(shí)鐘信號(hào)延時(shí)范圍對(duì)電路反標(biāo)模擬環(huán)境中的時(shí)鐘信號(hào)進(jìn)行延時(shí)對(duì)齊。
8、可選地,所述確定電路反標(biāo)模擬環(huán)境中待測(cè)模塊輸入端口的時(shí)鐘信號(hào)延時(shí)要求包括:
9、選擇待測(cè)模塊的任意一個(gè)輸入端口,根據(jù)該輸入端口在電路反標(biāo)模擬環(huán)境中的電路結(jié)構(gòu)確定該輸入端口的保持時(shí)間約束以及建立時(shí)間約束;
10、針對(duì)該輸入端口的保持時(shí)間約束以及建立時(shí)間約束,將電路反標(biāo)模擬環(huán)境中待測(cè)模塊以外電路的延時(shí)設(shè)置為零,得到簡(jiǎn)化后的該輸入端口的保持時(shí)間約束以及建立時(shí)間約束;
11、根據(jù)該輸入端口需要同時(shí)滿足簡(jiǎn)化后的保持時(shí)間約束以及建立時(shí)間約束確定該輸入端口同時(shí)滿足簡(jiǎn)化后的保持時(shí)間約束以及建立時(shí)間約束的相關(guān)時(shí)鐘信號(hào)延時(shí)最大值和延時(shí)最小值,以作為待測(cè)模塊輸入端口的時(shí)鐘信號(hào)延時(shí)要求。
12、可選地,所述確定電路反標(biāo)模擬環(huán)境中待測(cè)模塊輸出端口的時(shí)鐘信號(hào)延時(shí)要求包括:
13、選擇待測(cè)模塊的任意一個(gè)輸出端口,根據(jù)該輸出端口在電路反標(biāo)模擬環(huán)境中的電路結(jié)構(gòu)確定該輸出端口的保持時(shí)間約束以及建立時(shí)間約束;
14、針對(duì)該輸出端口的保持時(shí)間約束以及建立時(shí)間約束,將電路反標(biāo)模擬環(huán)境中待測(cè)模塊以外電路的延時(shí)設(shè)置為零,得到簡(jiǎn)化后的該輸出端口的保持時(shí)間約束以及建立時(shí)間約束;
15、根據(jù)該輸出端口需要同時(shí)滿足簡(jiǎn)化后的保持時(shí)間約束以及建立時(shí)間約束確定該輸出端口同時(shí)滿足簡(jiǎn)化后的保持時(shí)間約束以及建立時(shí)間約束的相關(guān)時(shí)鐘信號(hào)延時(shí)最大值和延時(shí)最小值,以作為待測(cè)模塊輸出端口的時(shí)鐘信號(hào)延時(shí)要求。
16、可選地,所述將兩種時(shí)鐘信號(hào)延時(shí)要求合并得到所需時(shí)鐘信號(hào)延時(shí)范圍包括:在待測(cè)模塊各輸入端口的時(shí)鐘信號(hào)延時(shí)要求的延時(shí)最小值、待測(cè)模塊各輸出端口的時(shí)鐘信號(hào)延時(shí)要求的延時(shí)最小值兩者中選擇更大的延時(shí)最小值作為合并后的延時(shí)最小值;在待測(cè)模塊各輸入端口的時(shí)鐘信號(hào)延時(shí)要求的延時(shí)最大值、待測(cè)模塊各輸出端口的時(shí)鐘信號(hào)延時(shí)要求的延時(shí)最大值兩者中選擇更小的延時(shí)最大值作為合并后的延時(shí)最大值,從而得到由合并后的延時(shí)最小值、合并后的延時(shí)最大值構(gòu)成的所需時(shí)鐘信號(hào)延時(shí)范圍。
17、可選地,所述根據(jù)所需時(shí)鐘信號(hào)延時(shí)范圍對(duì)電路反標(biāo)模擬環(huán)境中的時(shí)鐘信號(hào)進(jìn)行延時(shí)對(duì)齊包括:在所需時(shí)鐘信號(hào)延時(shí)范圍內(nèi)選擇一個(gè)延時(shí)值作為目標(biāo)延時(shí)值;將待測(cè)模塊相連的非反標(biāo)電路的時(shí)鐘信號(hào)延遲目標(biāo)延時(shí)值,從而實(shí)現(xiàn)延時(shí)對(duì)齊以滿足全部電路保持時(shí)間以及建立時(shí)間的時(shí)序要求。
18、可選地,所述將待測(cè)模塊相連的非反標(biāo)電路的時(shí)鐘信號(hào)延遲目標(biāo)延時(shí)值,是指將待測(cè)模塊相連的非反標(biāo)電路的時(shí)鐘信號(hào)用硬件描述語(yǔ)言插入一個(gè)目標(biāo)延時(shí)值以進(jìn)行延時(shí)對(duì)齊。
19、此外,本發(fā)明還提供一種電路反標(biāo)模擬環(huán)境中時(shí)鐘信號(hào)的延時(shí)對(duì)齊系統(tǒng),包括:
20、輸入端口延時(shí)要求確定程序單元,用于確定電路反標(biāo)模擬環(huán)境中待測(cè)模塊輸入端口的時(shí)鐘信號(hào)延時(shí)要求;
21、輸出端口延時(shí)要求確定程序單元,用于確定電路反標(biāo)模擬環(huán)境中待測(cè)模塊輸出端口的時(shí)鐘信號(hào)延時(shí)要求;
22、延時(shí)要求合并程序單元,用于將兩種時(shí)鐘信號(hào)延時(shí)要求合并得到所需時(shí)鐘信號(hào)延時(shí)范圍;
23、延時(shí)對(duì)齊執(zhí)行程序單元,用于根據(jù)所需時(shí)鐘信號(hào)延時(shí)范圍對(duì)電路反標(biāo)模擬環(huán)境中的時(shí)鐘信號(hào)進(jìn)行延時(shí)對(duì)齊。
24、此外,本發(fā)明還提供一種電路反標(biāo)模擬環(huán)境中時(shí)鐘信號(hào)的延時(shí)對(duì)齊系統(tǒng),包括相互連接的微處理器和存儲(chǔ)器,所述微處理器被編程或配置以執(zhí)行所述電路反標(biāo)模擬環(huán)境中時(shí)鐘信號(hào)的延時(shí)對(duì)齊方法。
25、此外,本發(fā)明還提供一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),該計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中存儲(chǔ)有計(jì)算機(jī)程序或指令,該計(jì)算機(jī)程序或指令被編程或配置以通過(guò)處理器執(zhí)行所述電路反標(biāo)模擬環(huán)境中時(shí)鐘信號(hào)的延時(shí)對(duì)齊方法。
26、此外,本發(fā)明還提供一種計(jì)算機(jī)程序產(chǎn)品,包括計(jì)算機(jī)程序或指令,該計(jì)算機(jī)程序或指令被編程或配置以通過(guò)處理器執(zhí)行所述電路反標(biāo)模擬環(huán)境中時(shí)鐘信號(hào)的延時(shí)對(duì)齊方法。
27、和現(xiàn)有技術(shù)相比,本發(fā)明主要具有下述優(yōu)點(diǎn):為了提升電路反標(biāo)模擬效率,加速反標(biāo)模擬進(jìn)度,本發(fā)明包括下述步驟:確定電路反標(biāo)模擬環(huán)境中待測(cè)模塊輸入端口的時(shí)鐘信號(hào)延時(shí)要求;確定電路反標(biāo)模擬環(huán)境中待測(cè)模塊輸出端口的時(shí)鐘信號(hào)延時(shí)要求;將兩種時(shí)鐘信號(hào)延時(shí)要求合并得到所需時(shí)鐘信號(hào)延時(shí)范圍;根據(jù)所需時(shí)鐘信號(hào)延時(shí)范圍對(duì)電路反標(biāo)模擬環(huán)境中的時(shí)鐘信號(hào)進(jìn)行延時(shí)對(duì)齊,本發(fā)明創(chuàng)新地通過(guò)延時(shí)計(jì)算來(lái)獲得時(shí)鐘信號(hào)的延時(shí)對(duì)齊時(shí)間,避免了傳統(tǒng)方法中在反標(biāo)模擬環(huán)境中的多次迭代模擬,有效加速了模擬進(jìn)度。