專利名稱:一種電路編譯方法及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及電路仿真驗證領(lǐng)域,特別是涉及一種電路編譯方法及裝置。
背景技術(shù):
大規(guī)模集成電路設(shè)計里每個模塊通常包含有很多數(shù)字時序邏輯,在設(shè)計處于仿真驗證階段中,大部分的測試用例是不需要所有模塊都有效工作的,仿真過程中,如果要編譯或仿真所有模塊中的數(shù)字時序邏輯,那么就會在一些不需要關(guān)注的模塊上花費不必要的資源,浪費時間。目前解決的辦法有I)增量編譯的方法;2)分離式或者并行編譯;3)在測試用例中把不需要關(guān)注的數(shù)字熟悉邏輯模塊的時鐘關(guān)掉;4)只為關(guān)注的模塊搭建驗證平臺。但是上述幾種方法都有一定的局限性,增量編譯本身是基于類似makefile的方法來實現(xiàn)(makefile文件用于保存編譯器和連接器的參數(shù)選項,還表述了所有源文件之間的關(guān)系,創(chuàng)建程序首先讀取makefile文件,然后再激活編譯器,匯編器,資源編譯器和連接器以便產(chǎn)生最后的輸出,最后輸出并生成的通常是可執(zhí)行文件),需要查看每個文件的修改時間,節(jié)省的編譯時間有限,并且無法節(jié)省仿真時間;分離式或并行編譯雖然可以減少編譯時間,但是對設(shè)計和驗證有特殊要求,而且不但不節(jié)省仿真時間,經(jīng)常還會導(dǎo)致仿真時間加長 ’關(guān)掉不需要關(guān)注模塊時鐘的方法可以節(jié)省有限的仿真時間,但是無法節(jié)省編譯時間;為關(guān)注的模塊搭建單獨的驗證平臺,雖然通常可以節(jié)省一定的編譯和仿真時間,但是由于模塊眾多,每個模塊都搭建驗證平臺則需要大量的驗證工程師資源。
發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問題是提供一種電路編譯方法及裝置,能夠在整個編譯過程中,無需花費額外時間對不關(guān)注的邏輯模塊進行編譯。為解決上述技術(shù)問題,本發(fā)明的實施例提供一種電路編譯方法,包括:
獲取所述電路中欲編譯邏輯模塊的欲編譯文件的入口地址;根據(jù)所述入口地址調(diào)用所述欲編譯邏輯模塊的欲編譯文件;對所述欲編譯文件進行編譯;其中,所述欲編譯文件包括:對所述電路中無需編譯的邏輯模塊的替換編譯文件;所述替換編譯文件為只有輸入和輸出的空文件。其中,所述空文件包括:輸入輸出端口,并且輸出端口為固定賦值的空文件。其中,對所述欲編譯文件進行編譯的步驟包括:刪除所述無需編譯的邏輯模塊的原始編譯文件;增加所述無需編譯的邏輯模塊的替換編譯文件,并編譯所述替換編譯文件。本發(fā)明的實施例還提供一種電路編譯裝置,包括:獲取單元,用于獲取所述電路中欲編譯邏輯模塊的欲編譯文件的入口地址;調(diào)用單元,用于根據(jù)所述入口地址調(diào)用所述欲編譯邏輯模塊的欲編譯文件;編譯單元,對所述欲編譯文件進行編譯;其中,所述欲編譯文件包括:對所述電路中無需編譯的邏輯模塊的替換編譯文件;所述替換編譯文件為只有輸入和輸出的空文件。其中,所述空文件包括:輸入輸出端口,并且輸出端口為固定賦值的空文件。其中,所述編譯單元具體包括:刪除子單元,用于刪除所述無需編譯的邏輯模塊的原始編譯文件;增加子單元,用于增加所述無需編譯的邏輯模塊的替換編譯文件,并編譯所述替換編譯文件。本發(fā)明的上述方案具有如下有益效果:本發(fā)明的方法及裝置能夠在電路進行編譯過程中,將空文件代替電路中無需編譯的邏輯模塊的編譯文件,從而在整個編譯過程,無需花費額外時間對不關(guān)注的邏輯模塊進行編譯,提高了電路的編譯效率。
圖1為本發(fā)明中電路編譯方法的示意圖;圖2為本發(fā)明的具體實施例中SoC芯片的示意圖;圖3為本發(fā)明中電路編譯裝置的結(jié)構(gòu)示意圖。
具體實施例方式為使本發(fā)明要解決的技術(shù)問題、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合附圖及具體實施例進行詳細描述。如圖1所示,本發(fā)明的實施例提供一種電路編譯方法,包括:步驟1,獲取所述電路中欲編譯邏輯模塊的欲編譯文件的入口地址;步驟2,根據(jù)所述入口地址調(diào)用所述欲編譯邏輯模塊的欲編譯文件;步驟3,對所述欲編譯文件進行編譯;其中,所述欲編譯文件包括:對所述電路中無需編譯的邏輯模塊的替換編譯文件;所述替換編譯文件為只有輸入和輸出的空文件。上述方法在電路進行編譯過程中,將空文件代替電路中無需編譯的邏輯模塊的編譯文件,從而使整個編譯過程中,無需花費額外時間對不關(guān)注的邏輯模塊進行編譯,提高了電路的編譯效率。具體地,在本發(fā)明的上述實施例,所述空文件包括:輸入輸出端口,并且輸出端口為固定賦值的空文件。當然,該空文件還可以是如具有輸入輸出端口,但有少部分編譯內(nèi)容的文件;該空文件的編譯比無需編譯的邏輯模塊的原始編譯文件在編譯過程中,消耗的資源和時間都少,因此,可以用空文件代替上述無需要編譯的邏輯模塊的原始編譯文件,無需要花費額外時間對不關(guān)注的無需編譯的邏輯模塊進行編譯,提高了電路的編譯效率。具體地,在本發(fā)明的上述實施例,步驟3包括:步驟31,刪除所述無需編譯的邏輯模塊的原始編譯文件;步驟32,增加所述無需編譯的邏輯模塊的替換編譯文件,并編譯所述替換編譯文件。下面對上述方法進行詳細描述:如圖2所示的一個SoC芯片,在對其“video (視頻)”模塊進行仿真驗證的時候,是不需要關(guān)注“Storage (存儲)”和“Audio (音頻)”邏輯模塊的。如果帶著“Storage”和“Audio”邏輯模塊進行仿真驗證的話,就必定會浪費編譯和仿真資源。但是如果只為“Audio”邏輯模塊搭建驗證平臺的話,那么就要花費額外的資源。所以,當仿真驗證“Video”邏輯模塊的時候,本實施例首先獲取“Video”邏輯模塊的欲編譯文件的入口地址;之后根據(jù)所述入口地址調(diào)用所述“video”邏輯模塊的欲編譯文件;把欲編譯文件中有含有“Audio”和“Storage”存放路徑字樣的原始編譯文件都去掉,并且在編譯文件中自動增加“audio_processed.V”和“storage_processed.V”文件作為替換編譯文件,替換掉“Audio”和“Storage”邏輯模塊原有的原始編譯文件。由于這個時候不需關(guān)心 “Audio” 和 “Storage” 邏輯模塊的功能,所以 “audio_processed.V” 和 “storage_processed.V”文件沒有實際功能,只需包含輸入輸出端口,并且輸出端口為固定賦值的空文件即可。在另外一個具體應(yīng)用實例中,當在對SoC芯片中的“Audio (音頻)”模塊進行仿真驗證的時候,首先獲取“Audio”邏輯模塊的欲編譯文件的入口地址;之后根據(jù)所述入口地址調(diào)用所述“Audio”邏輯模塊的欲編譯文件;把欲編譯文件中有含有“Video”和“Storage”存放路徑字樣的原始編譯文件都去掉,并且在編譯文件中自動增加“video_processed.V”和“storage_processed.V”文件作為替換編譯文件,替換掉“Video”和“Storage”邏輯模塊原有的原始編譯文件。本發(fā)明所述空文件的生成以及替換的工作可做成腳本語言自動執(zhí)行,并需要驗證的邏輯模塊的欲編譯文件自動執(zhí)行完成,不必為每個無需驗證的邏輯模塊單獨再搭建平臺。此外,在編譯和仿真的時候,由于用很簡單的“audio_pr ocessed.V”和“storage_processed.V”文件代替了復(fù)雜的實際編譯文件,所以節(jié)省了資源,增加了編譯和仿真速度。而且本方法可以在一個系統(tǒng)級平臺上非常簡便的實現(xiàn)所有邏輯模塊的驗證,對一個項目上驗證平臺進行統(tǒng)一化,降低了驗證的成本。如圖3所示,本發(fā)明的實施例還提供一種電路編譯裝置,包括:獲取單元,用于獲取所述電路中欲編譯邏輯模塊的欲編譯文件的入口地址;調(diào)用單元,用于根據(jù)所述入口地址調(diào)用所述欲編譯邏輯模塊的欲編譯文件;編譯單元,對所述欲編譯文件進行編譯;其中,所述欲編譯文件包括:對所述電路中無需編譯的邏輯模塊的替換編譯文件;所述替換編譯文件為只有輸入和輸出的空文件。上述裝置在電路進行編譯過程中,將空文件代替電路中無需編譯的邏輯模塊的編譯文件,從而使整個編譯過程中,無需花費額外時間對不關(guān)注的邏輯模塊進行編譯,提高了電路的編譯效率。具體的,在本發(fā)明的上述實施例中,所述空文件包括:輸入輸出端口,并且輸出端口為固定賦值的空文件。具體,在本發(fā)明的上述實施例中,所述編譯單元具體包括:刪除子單元,用于刪除所述無需編譯的邏輯模塊的原始編譯文件;增加子單元,用于增加所述無需編譯的邏輯模塊的替換編譯文件,并編譯所述替換編譯文件。顯然,上述實施例為本發(fā)明中電路編譯方法對應(yīng)的裝置實施例,所述電路編譯方法能達到的技術(shù)效果,本實施例的裝置也同樣能夠達到。
以上所述是本發(fā)明的優(yōu)選實施方式,應(yīng)當指出,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明所述原理的前提下,還可以作出若干改進和潤飾,這些改進和潤飾也應(yīng)視為本發(fā)明的保護范圍。
權(quán)利要求
1.一種電路編譯方法,其特征在于,包括: 獲取所述電路中欲編譯邏輯模塊的欲編譯文件的入口地址; 根據(jù)所述入口地址調(diào)用所述欲編譯邏輯模塊的欲編譯文件; 對所述欲編譯文件進行編譯;其中,所述欲編譯文件包括:對所述電路中無需編譯的邏輯模塊的替換編譯文件;所述替換編譯文件為只有輸入和輸出的空文件。
2.根據(jù)權(quán)利要求1所述的電路編譯方法,其特征在于,所述空文件包括: 輸入輸出端口,并且輸出端口為固定賦值的空文件。
3.根據(jù)權(quán)利要求1所述的電路編譯方法,其特征在于,對所述欲編譯文件進行編譯的步驟包括: 刪除所述無需編譯的邏輯模塊的原始編譯文件; 增加所述無需編譯的邏輯模塊的替換編譯文件,并編譯所述替換編譯文件。
4.一種電路編譯裝置,其特征在于,包括: 獲取單元,用于獲取所述電路中欲編譯邏輯模塊的欲編譯文件的入口地址; 調(diào)用單元,用于根據(jù)所述入口地址調(diào)用所述欲編譯邏輯模塊的欲編譯文件; 編譯單元,對所述欲編譯文件進行編譯;其中,所述欲編譯文件包括:對所述電路中無需編譯的邏輯模塊的替換編譯文件;所述替換編譯文件為只有輸入和輸出的空文件。
5.根據(jù)權(quán)利要求4所述的電路編譯裝置,其特征在于,所述空文件包括: 輸入輸出端口,并且輸出端口為固定賦值的空文件。
6.根據(jù)權(quán)利要求4所述的電路編譯裝置,其特征在于,所述編譯單元具體包括: 刪除子單元,用于刪除所述無需編譯的邏輯模塊的原始編譯文件; 增加子單元,用于增加所述無需編譯的邏輯模塊的替換編譯文件,并編譯所述替換編譯文件。
全文摘要
本發(fā)明提供一種電路編譯方法及裝置,涉及電路仿真驗證領(lǐng)域。方法包括獲取所述電路中欲編譯邏輯模塊的欲編譯文件的入口地址;根據(jù)所述入口地址調(diào)用所述欲編譯邏輯模塊的欲編譯文件;對所述欲編譯文件進行編譯;其中,所述欲編譯文件包括對所述電路中無需編譯的邏輯模塊的替換編譯文件;所述替換編譯文件為只有輸入和輸出的空文件。本發(fā)明的方法及裝置能夠在電路進行編譯過程中,將空文件代替電路中無需編譯的邏輯模塊的編譯文件,從而在整個編譯過程,無需花費額外時間對不關(guān)注的邏輯模塊進行編譯,提高了電路的編譯效率。
文檔編號G06F17/50GK103150438SQ201310078590
公開日2013年6月12日 申請日期2013年3月12日 優(yōu)先權(quán)日2013年3月12日
發(fā)明者李樹杰 申請人:青島中星微電子有限公司