最新的毛片基地免费,国产国语一级毛片,免费国产成人高清在线电影,中天堂国产日韩欧美,中国国产aa一级毛片,国产va欧美va在线观看,成人不卡在线

芯片邏輯驗證的方法、裝置、設(shè)備、存儲介質(zhì)和程序產(chǎn)品與流程

文檔序號:41954646發(fā)布日期:2025-05-16 14:20閱讀:4來源:國知局
芯片邏輯驗證的方法、裝置、設(shè)備、存儲介質(zhì)和程序產(chǎn)品與流程

本公開的實施例主要涉及芯片設(shè)計工具領(lǐng)域。更具體地,本公開的實施例涉及用于芯片邏輯驗證的方法、裝置、設(shè)備、計算機可讀存儲介質(zhì)以及計算機程序產(chǎn)品。


背景技術(shù):

1、電子設(shè)計自動化(electronic?design?automation,eda)軟件被廣泛應(yīng)用于芯片的功能設(shè)計、綜合、驗證、仿真等過程。利用eda軟件,可以高效地執(zhí)行對芯片設(shè)計的邏輯驗證。eda工具鏈中的一種是邏輯等價性驗證(logic?equivalence?checking,lec)工具,其也稱為組合等價性驗證(combinatorial?equivalence?checking,cec)工具。具體地,lec工具可以驗證兩個電路在邏輯上是否完全等價。例如,可以驗證兩個寄存器傳輸級(register-transfer?level,rtl)代碼設(shè)計之間的邏輯等價性,或者驗證rtl代碼設(shè)計和對應(yīng)的門級網(wǎng)表之間的邏輯等價性。在芯片設(shè)計過程中,lec工具在設(shè)計的多個階段被高頻地調(diào)用。因此,需要一種用于芯片邏輯驗證的方案,以提高驗證邏輯等價性的效率。


技術(shù)實現(xiàn)思路

1、一些相關(guān)的芯片邏輯驗證方案具有驗證效率低和資源消耗大等問題。本公開的實施例提供了一種用于芯片邏輯驗證的方案,以至少部分地解決上述問題。

2、在本公開的第一方面,提供了用于芯片邏輯驗證的方法。該方法包括:構(gòu)建表征子邏輯電路的與非圖(and-inverter?graph,aig),子邏輯電路包括第一電路的至少一部分和第二電路的至少一部分。第一電路和第二電路是待比較邏輯等價性的兩個電路。方法還包括:基于與非圖確定分量圖(component?graph),分量圖包括與子邏輯電路中的電路功能模塊對應(yīng)的節(jié)點,并且電路功能模塊包括與非圖中的與門和反相器。換言之,分量圖中的至少一個節(jié)點并非對應(yīng)于基礎(chǔ)的邏輯門,而是對應(yīng)于電路功能模塊,因而分量圖相比與非圖具有更豐富的信息和更小的規(guī)模。方法還包括:基于分量圖,確定第一電路與第二電路之間的邏輯等價性。通過利用分量圖來驗證邏輯等價性,可以利用電路結(jié)構(gòu)信息來求解邏輯等價性驗證問題,并且可以減小求解模型的規(guī)模,從而提高驗證邏輯等價性的效率并且減少資源消耗。

3、在第一方面的一些實施例中,方法還包括:通過將所述分量圖中的多個節(jié)點合并為新的一個節(jié)點,化簡所述分量圖。以此方式,可以進(jìn)一步減小求解模型的規(guī)模,從而提高驗證效率。

4、在第一方面的一些實施例中,子邏輯電路還包括異或門,所述異或門連接所述第一電路的至少一部分和所述第二電路的至少一部分?;谒龇至繄D,確定所述第一電路與所述第二電路之間的所述邏輯等價性包括:將所述分量圖的輸出節(jié)點的輸出值設(shè)置為預(yù)定值,所述輸出節(jié)點與所述異或門對應(yīng),所述預(yù)定值指示所述第一電路與所述第二電路不滿足邏輯等價要求;利用自動測試向量生成(automatic?test?pattern?generation,atpg)算法和所述預(yù)定值對所述分量圖執(zhí)行推理,確定是否存在使得所述推理成功的測試向量,所述測試向量對應(yīng)于所述分量圖中除了所述輸出節(jié)點之外的多個節(jié)點的多個輸出值;以及基于確定不存在使得所述推理成功的測試向量,確定所述第一電路和所述第二電路滿足所述邏輯等價要求。以此方式,可以將atpg技術(shù)應(yīng)用在lec場景中,從而提高驗證效率。

5、在第一方面的一些實施例中,對所述分量圖執(zhí)行推理包括:基于所述分量圖構(gòu)建蘊含圖(implication?graph),所述蘊含圖指示推理過程中由多個決策得到的多個結(jié)果;基于所述多個結(jié)果之間的沖突,確定針對所述分量圖的沖突約束,所述沖突約束包括所述分量圖中至少兩個節(jié)點的輸出值之間的邏輯限制關(guān)系;以及基于所述沖突約束,更新所述多個決策中的至少一個決策。以此方式,可以利用蘊含圖和沖突約束來加速推理,從而提高推理效率。

6、在第一方面的一些實施例中,所述分量圖是基于所述與非圖的第一部分而被確定的第一分量圖,所述與非圖的第一部分與所述子邏輯電路的第一部分對應(yīng)。確定所述第一電路與所述第二電路之間的所述邏輯等價性包括:基于針對所述第一分量圖執(zhí)行的所述推理的結(jié)果,確定所述第一電路和所述第二電路部分地滿足所述邏輯等價要求;基于所述與非圖的第二部分確定第二分量圖,所述與非圖的第二部分與所述子邏輯電路的第二部分對應(yīng),并且所述子邏輯電路的所述第二部分包括所述子邏輯電路的所述第一部分;以及通過對所述第二分量圖執(zhí)行推理,確定所述第一電路與所述第二電路之間的所述邏輯等價性。以此方式,可以實現(xiàn)對分量圖的增量建模和增量推理,從而減小單個分量圖的規(guī)模以提高推理效率。

7、在第一方面的一些實施例中,方法還包括:基于確定存在使得所述推理成功的測試向量,確定所述第一電路與所述第二電路不滿足所述邏輯等價要求;以及基于所述分量圖,執(zhí)行根因分析。以此方式,可以基于分量圖中的電路功能模塊的信息來執(zhí)行根因分析,從而提高根因分析的效率。

8、在第一方面的一些實施例中,atpg算法包括基于扇(fan-based)的atpg算法?;谏鹊腶tpg算法可以僅在特定的節(jié)點,例如電路功能模塊處做出決策,而在其他節(jié)點只進(jìn)行傳播,因此可以減小決策空間,提高推理效率。在第一方面的一些實施例中,電路功能模塊包括以下至少一項:全加器、半加器或壓縮器。以此方式,本公開的方案可以有利地應(yīng)用在運算電路中,因而可以適用于人工智能(artificial?intelligence,ai)計算芯片。

9、在第一方面的一些實施例中,基于所述分量圖確定所述第一電路與所述第二電路之間的所述邏輯等價性還包括:基于從所述分量圖得到的合取范式(conjunctive?normalform,cnf),確定所述第一電路與所述第二電路之間的所述邏輯等價性。以此方式,本公開的方案可以兼容常規(guī)的基于cnf的求解器,或者可以與基于cnf的其他求解器一起工作,以用于芯片邏輯驗證。

10、在本公開的第二方面,提供了用于芯片邏輯驗證的裝置。該裝置包括:與非圖構(gòu)建單元,被配置為構(gòu)建表征子邏輯電路的與非圖(aig),所述子邏輯電路包括第一電路的至少一部分和第二電路的至少一部分;分量圖確定單元,被配置為基于所述與非圖確定分量圖(component?graph),所述分量圖包括與所述子邏輯電路中的電路功能模塊對應(yīng)的節(jié)點,所述電路功能模塊包括所述與非圖中的與門和反相器;以及邏輯驗證單元,被配置為基于所述分量圖,確定所述第一電路與所述第二電路之間的邏輯等價性。

11、以此方式,通過利用分量圖來驗證邏輯等價性,可以利用電路結(jié)構(gòu)信息來輔助求解邏輯等價性驗證問題,并且可以減小求解模型的規(guī)模,從而提高驗證邏輯等價性的效率并且減少資源消耗。

12、在第二方面的一些實施例中,裝置還包括化簡單元,被配置為:通過將所述分量圖中的多個節(jié)點合并為新的一個節(jié)點,化簡所述分量圖。

13、在第二方面的一些實施例中,子邏輯電路還包括異或門,所述異或門連接所述第一電路的至少一部分和所述第二電路的至少一部分。邏輯驗證單元被配置為:將所述分量圖的輸出節(jié)點的輸出值設(shè)置為預(yù)定值,所述輸出節(jié)點與所述異或門對應(yīng),所述預(yù)定值指示所述第一電路與所述第二電路不滿足邏輯等價要求;利用自動測試向量生成atpg算法和所述預(yù)定值對所述分量圖執(zhí)行推理,確定是否存在使得所述推理成功的測試向量,所述測試向量對應(yīng)于所述分量圖中除了所述輸出節(jié)點之外的多個節(jié)點的多個輸出值;以及基于確定不存在使得所述推理成功的測試向量,確定所述第一電路和所述第二電路滿足所述邏輯等價要求。

14、在第二方面的一些實施例中,邏輯驗證單元包括:推理學(xué)習(xí)單元,被配置為:基于所述分量圖構(gòu)建蘊含圖(implication?graph),所述蘊含圖指示推理過程中由多個決策得到的多個結(jié)果;基于所述蘊涵圖中的所述多個結(jié)果之間的沖突,確定針對所述分量圖的沖突約束,所述沖突約束包括所述分量圖中至少兩個節(jié)點的輸出值之間的邏輯限制關(guān)系;以及基于所述沖突約束,更新所述多個決策中的至少一個決策。

15、在第二方面的一些實施例中,分量圖是基于所述與非圖的第一部分而被確定的第一分量圖,所述與非圖的第一部分與所述子邏輯電路的第一部分對應(yīng)。邏輯驗證單元被配置為:基于針對所述第一分量圖執(zhí)行的所述推理的結(jié)果,確定所述第一電路和所述第二電路部分地滿足所述邏輯等價要求;基于所述與非圖的第二部分確定第二分量圖,所述與非圖的第二部分與所述子邏輯電路的第二部分對應(yīng),并且所述子邏輯電路的所述第二部分包括所述子邏輯電路的所述第一部分;以及通過對所述第二分量圖執(zhí)行推理,確定所述第一電路與所述第二電路之間的所述邏輯等價性。

16、在第二方面的一些實施例中,裝置還包括根因分析單元。邏輯驗證單元被配置為:基于確定存在使得所述推理成功的測試向量,確定所述第一電路與所述第二電路不滿足所述邏輯等價要求。根因分析單元被配置為:基于所述分量圖,執(zhí)行根因分析。

17、在第二方面的一些實施例中,所述atpg算法包括基于扇(fan-based)的atpg算法。在第二方面的一些實施例中,電路功能模塊包括以下至少一項:全加器、半加器或壓縮器。在第二方面的一些實施例中,邏輯驗證單元還被配置為:基于從所述分量圖得到的合取范式(cnf),確定所述第一電路與所述第二電路之間的所述邏輯等價性。

18、在本公開的第三方面,提供了一種電子設(shè)備,包括:至少一個計算單元;至少一個存儲器,至少一個存儲器被耦合到至少一個計算單元并且存儲用于由至少一個計算單元執(zhí)行的指令,指令當(dāng)由至少一個計算單元執(zhí)行時,使得設(shè)備實現(xiàn)第一方面所提供的方法。

19、在本公開的第四方面,提供了一種計算機可讀存儲介質(zhì),其上存儲有計算機程序,其中計算機程序被處理器執(zhí)行實現(xiàn)第一方面所提供的方法。

20、在本公開的第五方面,提供一種計算機程序產(chǎn)品,包括計算機可執(zhí)行指令,當(dāng)指令在被處理器執(zhí)行時實現(xiàn)第一方面的方法的部分或全部步驟。

21、可以理解地,上述提供的第三方面的電子設(shè)備、第四方面的計算機存儲介質(zhì)或者第五方面的計算機程序產(chǎn)品均用于執(zhí)行第一方面所提供的方法。因此,關(guān)于第一方面的解釋或者說明同樣適用于第三方面、第四方面和第五方面。此外,第二方面、第三方面、第四方面和第五方面所能達(dá)到的有益效果可參考對應(yīng)方法中的有益效果,此處不再贅述。

當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1