專利名稱:一種fpga軟件ip核生成系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種FPGA軟件IP核生成系統(tǒng)。
背景技術(shù):
在以FPGA為處理器的工程項目開發(fā)過程中,經(jīng)常遇到因FPGA邏輯的不斷修改完善致使邏輯文件版本增多的現(xiàn)象,從而極易導(dǎo)致在邏輯開發(fā)過程中不同版本邏輯文件出現(xiàn)混淆的狀況,每一個具有一定功能的FPGA軟件邏輯模塊可以作為一個FPGA軟件IP核,多個FPGA軟件IP核構(gòu)成了一個軟件IP庫。通過將FPGA軟件邏輯模塊按照功能進(jìn)行分類,并形成一個軟件IP庫,通過IP庫對FPGA軟件版本進(jìn)行統(tǒng)一的管理,可以避免軟件版本增多而出現(xiàn)的混淆狀況,從而實現(xiàn)FPGA軟件版本的規(guī)范化與標(biāo)準(zhǔn)化管理。FPGA軟件中很多邏輯功能模塊具有較強的通用性,這些模塊在不同工程應(yīng)用中都會被重復(fù)使用,但是在重復(fù)使用的過程中,常因人為的改動改變FPGA軟件重用前后的一致性,從而在軟件使用過程中會產(chǎn)生一些意想不到的錯誤,影響工程的開發(fā)進(jìn)度。為保持軟件重用前后版本的一致性,需要通過某種手段使得每次得到的FPGA軟件模塊是一致的。
發(fā)明內(nèi)容
本發(fā)明的技術(shù)解決問題是針對現(xiàn)有技術(shù)的不足,提供了一種FPGA軟件IP核生成系統(tǒng),可以對FPGA軟件的IP核進(jìn)行管理,確保了 IP核在每次被調(diào)用時,IP核標(biāo)準(zhǔn)代碼的
一致性。本發(fā)明的技術(shù)解決方案是本發(fā)明所涉及的IP核生產(chǎn)系統(tǒng)具有軟件版本的生成功能,將標(biāo)準(zhǔn)的軟件代碼包 括在IP庫中,通過界面可以直接生成相應(yīng)的FPGA軟件邏輯模塊,確保每次生成的FPGA軟件邏輯模塊的代碼都是一樣的,從而確保了軟件模塊的一致性。具體技術(shù)方案如下本發(fā)明所述FPGA軟件IP核生成系統(tǒng)包括主控制模塊、對不同類型IP核進(jìn)行管理的子模塊和由不同IP核的標(biāo)準(zhǔn)代碼構(gòu)成的IP庫;所述主控制模塊根據(jù)被調(diào)用IP核的類型選擇對應(yīng)的子模塊;所述子模塊對IP庫進(jìn)行檢索獲取被調(diào)用IP核的標(biāo)準(zhǔn)代碼,利用該IP核的標(biāo)準(zhǔn)代碼生成IP核軟件邏輯模塊;并將輸入?yún)?shù)輸出給生成的所述IP核軟件邏輯模塊;所述IP核軟件邏輯模塊根據(jù)輸入?yún)?shù)產(chǎn)生IP核。 進(jìn)一步,在上述FPGA軟件IP核生成系統(tǒng)中,主控制模塊用于人機交互的主界面和多個與子模塊相對應(yīng)的子模塊調(diào)用接口,所述子模塊調(diào)用接口在所述主界面上通過瀏覽窗的形式進(jìn)行顯示,利用所述瀏覽窗可直接對所述IP庫進(jìn)行檢索,根據(jù)在所述瀏覽窗中的檢索結(jié)果,可調(diào)用子模塊獲取與所述檢索結(jié)構(gòu)對應(yīng)的IP核標(biāo)準(zhǔn)代碼。進(jìn)一步,在上述FPGA軟件IP核生成系統(tǒng)中,所述子模塊包括用于對IP庫進(jìn)行檢索并獲取IP核標(biāo)準(zhǔn)代碼的IP庫瀏覽接口,接收輸入?yún)?shù)并將輸入?yún)?shù)寫入IP核標(biāo)準(zhǔn)代碼的參數(shù)輸入接口和用于將生成的IP核輸出的IP核輸出接口。進(jìn)一步,在上述FPGA軟件IP核生成系統(tǒng)中,所述主控制模塊以進(jìn)程的形式調(diào)用每個所述子模塊。進(jìn)一步,在上述 FPGA軟件IP核生成系統(tǒng)中,所述IP庫可添加新的IP核的標(biāo)準(zhǔn)代碼或刪除已有的IP核的標(biāo)準(zhǔn)代碼。本發(fā)明與現(xiàn)有技術(shù)相比具有如下優(yōu)點I、針對軟件版本繁多不易的管理問題,通過對主控制模塊和子模塊對IP核進(jìn)行分類調(diào)用,并結(jié)合IP庫對IP核的標(biāo)準(zhǔn)代碼實現(xiàn)了標(biāo)準(zhǔn)化管理。利用子模塊,可對IP核進(jìn)行分類后,按類對IP核進(jìn)行檢索和調(diào)用,且所述主控制模塊和所述子模塊均具有便于人機交互的控制界面,與現(xiàn)有技術(shù)先比,提高了對IP核進(jìn)行管理的標(biāo)準(zhǔn)型和有效性以及對IP核進(jìn)行調(diào)用和使用的便利性。進(jìn)一步的,利用所述子模塊包括針對被調(diào)用IP核的參數(shù)輸入接口和IP核輸出接口,從而提高了對IP核使用的規(guī)范性,確保了在每次調(diào)用IP核時,可針對IP庫中存儲的IP核標(biāo)準(zhǔn)代碼輸入?yún)?shù)并獲得輸出的IP核,且不會更改所述IP核標(biāo)準(zhǔn)代碼,保證了下次對同一 IP核進(jìn)行調(diào)用的正確性,降低軟件在重用過程中因人為對代碼的修改而產(chǎn)生的錯誤。同時,主控制模塊在利用進(jìn)行調(diào)用每個子模塊,針對不同類型IP核設(shè)定的子模塊在調(diào)用時相互獨立,并結(jié)合可擴充或刪除的IP庫,可在每次IP核由有變化時,方便的實現(xiàn)對IP核標(biāo)準(zhǔn)代碼的增加刪除及調(diào)用。
圖I為本發(fā)明示意圖;圖2為子模塊瀏覽窗示意圖;圖3為子模塊進(jìn)程窗口示意圖;圖4為設(shè)計流程圖。
具體實施例方式下面就結(jié)合附圖對本發(fā)明做進(jìn)一步介紹。如圖I所示,本發(fā)明包括主控制模塊、子模塊和IP庫。所述主控制模塊對所述子模塊進(jìn)行調(diào)用管理,所述子模塊分別對應(yīng)于IP核的不同類型具有多個,用于管理對應(yīng)類型的IP核,所述IP庫為存儲IP核標(biāo)準(zhǔn)代碼的數(shù)據(jù)庫,可由所述子模塊對其中的IP核標(biāo)準(zhǔn)代碼進(jìn)行調(diào)用。進(jìn)一步如圖2所示,以本實施例在遙感領(lǐng)域中的應(yīng)該為例,主模塊上設(shè)置對應(yīng)于每個子模塊的調(diào)用接口,所述子模塊按類型以瀏覽窗的形式可對IP庫中對應(yīng)類型的IP核進(jìn)行檢索,在本發(fā)明實施例中,IP核可分為基本元素、外設(shè)接口、存儲器、信號處理、焦面電路和調(diào)試與驗證四個類型,對應(yīng)于各類型的瀏覽窗具有滾動條,可通過上下瀏覽的方式遍歷對應(yīng)類型下IP庫中所述IP核名稱,與所述IP核名稱對應(yīng)的為IP庫中的IP核標(biāo)準(zhǔn)代碼。確定某個IP核后,通過點擊進(jìn)入后,可進(jìn)一步開啟如圖3所示窗口,該窗口為主控制模塊以進(jìn)程的方式啟動的子模塊,該子模塊上具有參數(shù)輸入接口 Input Parameters、IP核輸出接口 Directory和參數(shù)顯示區(qū)域Values of Parameters,同時還具有配置Config、生成Generate和退出Quit按鈕。在該子模塊進(jìn)程后,通過參數(shù)輸入接口可以為調(diào)用的IP核寫入輸入?yún)?shù),輸入的參數(shù)會在參數(shù)顯示區(qū)域進(jìn)行顯示,便于使用者對輸入?yún)?shù)對正確性進(jìn)行檢查,并在點擊配置按鈕后將輸入?yún)?shù)寫入IP核標(biāo)準(zhǔn)代碼。所述IP核輸出接口可以再點擊生成 按鈕后,將根據(jù)所述IP核標(biāo)準(zhǔn)代碼產(chǎn)生的IP核輸出到由該輸出接口設(shè)定的路徑下。該發(fā)明的設(shè)計過程如圖4所示,本發(fā)明實施例采用Tcl/Tk腳本語言實現(xiàn)所述主控制模塊的主界面和子模塊。第一步對應(yīng)子模塊設(shè)置頂層窗口組件,輸入框、按鈕等組件都在頂層窗口組件之上;第二部進(jìn)行IP核輸出接口路徑輸入框設(shè)計,為生成的IP核提供存儲路徑;第三步進(jìn)行參數(shù)輸入接口和參數(shù)顯示區(qū)域設(shè)計,獲取輸入?yún)?shù)后進(jìn)行配置按鈕設(shè)計,配置按鈕按下后執(zhí)行寫文件命令,將輸入?yún)?shù)寫到IP核標(biāo)準(zhǔn)代碼中,同時執(zhí)行參數(shù)顯示命令,將輸入的參數(shù)在參數(shù)顯示區(qū)顯示出來;第四步生成按鈕設(shè)計,生成按鈕按下后執(zhí)行寫文件操作,在IP核輸出接口的路徑處生成IP核文件;第五步進(jìn)行退出按鈕設(shè)計,退出按鈕按下后執(zhí)行關(guān)閉子模塊進(jìn)程的操作;在完成子模塊的設(shè)計,對主控制模塊中子模塊瀏覽窗進(jìn)行布局。各子模塊的瀏覽窗布局方式可如圖2所示。每個瀏覽窗包括一個滾動條組件,滑動滾動條組件可將對應(yīng)類型下的IP核標(biāo)準(zhǔn)代碼對應(yīng)IP核的名稱邏輯文件進(jìn)行顯示。雙擊相應(yīng)的IP核文件名稱,主界面會通過對進(jìn)程的調(diào)用打開相應(yīng)IP核對應(yīng)子模塊的子界面。并利用上述過程設(shè)計出的子界面對IP核進(jìn)行調(diào)用。各子模塊的進(jìn)行相互獨立,并且在需要為IP庫加入或刪除IP核標(biāo)準(zhǔn)代碼時,只需要為對應(yīng)了類型的子模塊添加或刪除一個進(jìn)程即可實現(xiàn)對IP核標(biāo)準(zhǔn)代碼的調(diào)用。通過這種方式,使得對各IP核標(biāo)準(zhǔn)代碼的調(diào)用相互獨立,提高了本發(fā)明的擴展性和可修改性。本發(fā)明未詳細(xì)說明部分屬本領(lǐng)域技術(shù)人員公知常識。
權(quán)利要求
1.一種FPGA軟件IP核生成系統(tǒng),用于對FPGA中的IP核進(jìn)行管理,其特征在于,包括主控制模塊、對不同類型IP核進(jìn)行管理的子模塊和由不同IP核的標(biāo)準(zhǔn)代碼構(gòu)成的IP庫; 所述主控制模塊根據(jù)被調(diào)用IP核的類型選擇對應(yīng)的子模塊; 所述子模塊對IP庫進(jìn)行檢索獲取被調(diào)用IP核的標(biāo)準(zhǔn)代碼,利用該IP核的標(biāo)準(zhǔn)代碼生成IP核軟件邏輯模塊;并將輸入?yún)?shù)輸出給生成的所述IP核軟件邏輯模塊;所述IP核軟件邏輯模塊根據(jù)輸入?yún)?shù)產(chǎn)生IP核。
2.如權(quán)利要求I所述的一種FPGA軟件IP核生成系統(tǒng),其特征在于主控制模塊用于人機交互的主界面和多個與子模塊相對應(yīng)的子模塊調(diào)用接口,所述子模塊調(diào)用接口在所述主界面上通過瀏覽窗的形式進(jìn)行顯示,利用所述瀏覽窗可直接對所述IP庫進(jìn)行檢索,根據(jù)在所述瀏覽窗中的檢索結(jié)果,可調(diào)用子模塊獲取與所述檢索結(jié)構(gòu)對應(yīng)的IP核標(biāo)準(zhǔn)代碼。
3.如權(quán)利要求I或2所述的一種FPGA軟件IP核生成系統(tǒng),其特征在于,所述子模塊包括用于對IP庫進(jìn)行檢索并獲取IP核標(biāo)準(zhǔn)代碼的IP庫瀏覽接口,接收輸入?yún)?shù)并將輸入?yún)?shù)寫入IP核標(biāo)準(zhǔn)代碼的參數(shù)輸入接口和用于將生成的IP核輸出的IP核輸出接口。
4.如權(quán)利要求I或2所述的一種FPGA軟件IP核生成系統(tǒng),其特征在于,所述主控制模塊以進(jìn)程的形式調(diào)用每個所述子模塊。
5.如權(quán)利要求I所述的一種FPGA軟件IP核生成系統(tǒng),其特征在于,所述IP庫可添加新的IP核的標(biāo)準(zhǔn)代碼或刪除已有的IP核的標(biāo)準(zhǔn)代碼。
全文摘要
本發(fā)明公開了一種FPGA軟件IP核生成系統(tǒng),用于對FPGA中的IP核進(jìn)行管理,包括主控制模塊、對不同類型IP核進(jìn)行管理的子模塊和由不同IP核的標(biāo)準(zhǔn)代碼構(gòu)成的IP庫;所述主控制模塊根據(jù)被調(diào)用IP核的類型選擇對應(yīng)的子模塊;所述子模塊對IP庫進(jìn)行檢索獲取被調(diào)用IP核的標(biāo)準(zhǔn)代碼,利用該IP核的標(biāo)準(zhǔn)代碼生成IP核軟件邏輯模塊;并將輸入?yún)?shù)輸出給生成的所述IP核軟件邏輯模塊;所述IP核軟件邏輯模塊根據(jù)輸入?yún)?shù)產(chǎn)生IP核。采用本發(fā)明可以對FPGA軟件的IP核進(jìn)行管理,確保了IP核在每次被調(diào)用時,IP核標(biāo)準(zhǔn)代碼的一致性。
文檔編號G06F9/44GK102929623SQ20121041394
公開日2013年2月13日 申請日期2012年10月24日 優(yōu)先權(quán)日2012年10月24日
發(fā)明者馬飛, 劉琦, 尹娜, 包斌, 王鵬, 徐磊 申請人:北京空間機電研究所