本發(fā)明涉及可編程集成電路設(shè)計領(lǐng)域,尤其涉及一種FPGA(Field Programmable Gate Array,現(xiàn)場可編程門陣列)配置控制系統(tǒng)測試方法、控制平臺及驗證平臺。
背景技術(shù):
隨著信息與數(shù)據(jù)科技的發(fā)展需求,可編程芯片,特別是現(xiàn)場可編程門陣列憑借其編程靈活、系統(tǒng)穩(wěn)定、資源豐富、集成度高等優(yōu)點,其應(yīng)用領(lǐng)域已經(jīng)從原來的通信領(lǐng)域擴展到航天、消費電子、工業(yè)控制、測試測量等廣泛的領(lǐng)域,并且還有不斷擴大的趨勢。然而隨著工藝節(jié)點的不斷攀升,人們對于可編程電路的系統(tǒng)集成度、可編程資源以及器件規(guī)模提出了更高的要求。對于FPGA系統(tǒng)而言,需要將軟件產(chǎn)生的配置信息位流通過FPGA配置控制系統(tǒng)加載到電路系統(tǒng)中相應(yīng)電路模塊的配置存儲單元SRAM中,來完成相應(yīng)功能的配置,因此FPGA配置控制系統(tǒng)的設(shè)計合理性以及實用性對于用戶體驗來講有著舉足輕重的作用,對于FPGA配置控制系統(tǒng)的測試在設(shè)計流程上也是非常重要的一環(huán)。
目前對于FPGA配置控制系統(tǒng)的測試,是在FPGA配置控制系統(tǒng)測試驗證平臺上進行的,主要是通過FPGA的配套軟件工具定制產(chǎn)生需要的測試位流數(shù)據(jù),然后配置數(shù)據(jù)流讀取器讀取相應(yīng)的測試位流數(shù)據(jù),然后通過格式轉(zhuǎn)換輸入到驅(qū)動器中進行處理,同時通過預(yù)設(shè)的配置接口信息生成對應(yīng)的寫入或讀取時序信號輸入至驅(qū)動器中,通過驅(qū)動器將測試位流數(shù)據(jù)根據(jù)時序信號寫入配置控制系統(tǒng)的待測設(shè)計進行測試。在這一流程中,配套軟件工具的布局布線效果是固定的,接口也是固定的,因此配套軟件工具產(chǎn)生的測試位流數(shù)據(jù)也是固定的,不具有隨機性,也就無法驗證到FPGA配置控制系統(tǒng)在隨機情況下表現(xiàn)的情況,因此測試驗證的準(zhǔn)確性不高。
技術(shù)實現(xiàn)要素:
本發(fā)明提供的一種FPGA配置控制系統(tǒng)測試方法、控制平臺及驗證平臺,主要解決的技術(shù)問題是:現(xiàn)有技術(shù)中對FPGA配置控制系統(tǒng)進行測試時,生成的測試位流數(shù)據(jù)不具有隨機性,無法驗證FPGA配置控制系統(tǒng)在隨機情形下表現(xiàn)情況的問題。
為解決上述技術(shù)問題,本發(fā)明提供一種FPGA配置控制系統(tǒng)測試控制平臺,包括:
實例獲取器,用于獲取對配置控制系統(tǒng)的待測設(shè)計進行測試的測試實例,所述測試實例包括測試流程、測試流程中涉及的至少部分配置數(shù)據(jù)之生成約束條件以及配置接口信息;
配置數(shù)據(jù)生成器,用于根據(jù)所述測試執(zhí)行流程以及所述生成約束條件生成測試位流數(shù)據(jù)輸入至測試執(zhí)行平臺;所述測試位流數(shù)據(jù)中包含根據(jù)所述約束條件生成的指定測試數(shù)據(jù)以及針對所述測試流程涉及但無生成約束條件的配置數(shù)據(jù)所生成的隨機測試數(shù)據(jù);
配置接口時序發(fā)生器,用于根據(jù)所述配置接口信息生成對應(yīng)的寫入或讀取時序信號輸入至所述測試執(zhí)行平臺,以供該測試執(zhí)行平臺將所述位流數(shù)據(jù)寫入所述配置控制系統(tǒng)的待測設(shè)計進行測試。
進一步地,本發(fā)明還提供一種FPGA配置控制系統(tǒng)測試驗證平臺,其特征在于,包括測試執(zhí)行平臺以及上述的FPGA配置控制系統(tǒng)測試控制平臺;
所述測試執(zhí)行平臺用于根據(jù)所述配置接口時序發(fā)生器輸出的時序信號,將所述配置數(shù)據(jù)生成器輸出的測試位流數(shù)據(jù)寫入所述配置控制系統(tǒng)的待測設(shè)計進行測試。
進一步地,本發(fā)明還提供一種FPGA配置控制系統(tǒng)測試方法,其特征在于,包括:
獲取對配置控制系統(tǒng)的待測設(shè)計進行測試的測試實例,所述測試實例包括測試流程、測試流程中涉及的至少部分配置數(shù)據(jù)之生成約束條件以及配置接口信息;
根據(jù)所述測試執(zhí)行流程以及所述生成約束條件生成測試位流數(shù)據(jù)輸入至測試執(zhí)行平臺;所述測試位流數(shù)據(jù)中包含根據(jù)所述約束條件生成的指定測試數(shù)據(jù)以及針對所述測試流程涉及但無生成約束條件的配置數(shù)據(jù)所生成的隨機測試數(shù)據(jù);
根據(jù)所述配置接口信息生成對應(yīng)的寫入或讀取時序信號輸入至所述測試執(zhí)行平臺,以供該測試執(zhí)行平臺將所述位流數(shù)據(jù)寫入所述配置控制系統(tǒng)的待測設(shè)計進行測試;
根據(jù)所述時序信號,將所述配置數(shù)據(jù)生成器輸出的測試位流數(shù)據(jù)寫入所述配置控制系統(tǒng)的待測設(shè)計進行測試。
本發(fā)明的有益效果是:
根據(jù)本發(fā)明提供的FPGA配置控制系統(tǒng)測試方法、控制平臺及驗證平臺,通過實例獲取器獲取對配置控制系統(tǒng)的待測設(shè)計進行測試的測試實例,配置數(shù)據(jù)生成器根據(jù)測試實例中的測試執(zhí)行流程以及生成約束條件生成測試位流數(shù)據(jù)輸入至測試執(zhí)行平臺,其中,測試位流數(shù)據(jù)中包含根據(jù)約束條件生成的指定測試數(shù)據(jù)以及針對測試流程涉及但無生成約束條件的配置數(shù)據(jù)所生成的隨機測試數(shù)據(jù),配置接口時序發(fā)生器根據(jù)測試實例中的配置接口信息生成對應(yīng)的寫入或讀取時序信號輸入至測試執(zhí)行平臺,以供該測試執(zhí)行平臺將測試位流數(shù)據(jù)寫入配置控制系統(tǒng)的待測設(shè)計進行測試,由于配置數(shù)據(jù)生成器生成的測試位流數(shù)據(jù)具有隨機性,因此可以驗證配置控制系統(tǒng)在各個情形下的表現(xiàn)情況,進而提升了配置控制系統(tǒng)功能驗證的準(zhǔn)確性和可靠性。
附圖說明
圖1為本發(fā)明實施例一的FPGA配置控制系統(tǒng)測試方法第一流程示意圖;
圖2為本發(fā)明實施例一的FPGA配置控制系統(tǒng)測試方法第二流程示意圖;
圖3為本發(fā)明實施例二的FPGA配置控制系統(tǒng)測試控制平臺的結(jié)構(gòu)示意圖;
圖4為本發(fā)明實施例二的配置數(shù)據(jù)生成器的結(jié)構(gòu)示意圖;
圖5為本發(fā)明實施例三的FPGA配置控制系統(tǒng)測試驗證平臺的第一結(jié)構(gòu)示意圖;
圖6為本發(fā)明實施例三的FPGA配置控制系統(tǒng)測試驗證平臺的第二結(jié)構(gòu)示意圖;
圖7為本發(fā)明實施例三的FPGA配置控制系統(tǒng)測試驗證平臺的第三結(jié)構(gòu)示意圖。
具體實施方式
下面通過具體實施方式結(jié)合附圖對本發(fā)明實施例作進一步詳細說明。
實施例一:
為了使對FPGA配置控制系統(tǒng)的測試不再依賴于配套軟件工具,提高對FPGA配置控制系統(tǒng)進行測試的準(zhǔn)確性,本實施例提供一種FPGA配置控制系統(tǒng)測試方法,具體的可以參見圖1所示,包括:
S101:獲取對配置控制系統(tǒng)的待測設(shè)計進行測試的測試實例。
本實施例中的測試實例包括測試流程、測試流程中涉及的至少部分配置數(shù)據(jù)之生成約束條件以及配置接口信息。且需要說明的是,本實施例中的待測設(shè)計可以為實現(xiàn)某種功能的電路設(shè)計。其中,步驟S101中可以通過實例獲取器來獲取測試實例。
S102:根據(jù)測試流程及約束條件生成測試位流數(shù)據(jù)輸入至測試執(zhí)行平臺。
應(yīng)當(dāng)理解的是,本實施例中可以通過的配置數(shù)據(jù)生成器來產(chǎn)生測試位流數(shù)據(jù),本實施例中的配置數(shù)據(jù)生成器可以根據(jù)實例獲取器獲取到的測試實例中的測試流程以及生成約束條件,生成測試位流數(shù)據(jù)并輸入至測試執(zhí)行平臺的。其中,本實施例中的配置數(shù)據(jù)生成器生成的測試位流數(shù)據(jù)包括根據(jù)約束條件生成的指定測試數(shù)據(jù),以及針對測試流程涉及但無生成約束條件的配置數(shù)據(jù)所生成的隨機測試數(shù)據(jù)。
需要說明的是,本實施例中的配置數(shù)據(jù)生成器可以包括以下產(chǎn)生器中的至少一種:配置寄存器自動產(chǎn)生器、配置存儲數(shù)據(jù)自動產(chǎn)生器、空白數(shù)據(jù)產(chǎn)生器和配置數(shù)據(jù)識別內(nèi)容產(chǎn)生器。
也即是,本實施例中的配置數(shù)據(jù)生成器可以只包括上述產(chǎn)生器中的任意一種,或者可以包括上述產(chǎn)生器中的任意兩種、三種,或者也可以同時包括上述的四種產(chǎn)生器。例如,本實施例中的配置數(shù)據(jù)生成器可以包括配置寄存器自動產(chǎn)生器和配置存儲數(shù)據(jù)自動產(chǎn)生器。
因此本實施例中的配置數(shù)據(jù)生成器生成測試位流數(shù)據(jù)就包括以下情況中的至少一種:
配置寄存器自動產(chǎn)生器根據(jù)生成約束條件產(chǎn)生指定配置寄存器數(shù)據(jù),和/或隨機產(chǎn)生隨機配置寄存器數(shù)據(jù);
配置存儲數(shù)據(jù)自動產(chǎn)生器根據(jù)生成約束條件產(chǎn)生配置到FPGA存儲單元的指定數(shù)據(jù),和/或隨機產(chǎn)生配置到FPGA存儲單元的隨機數(shù)據(jù);
空白數(shù)據(jù)產(chǎn)生器產(chǎn)生供時鐘切換配置或供時間等待的空白數(shù)據(jù)。
配置數(shù)據(jù)識別內(nèi)容產(chǎn)生器產(chǎn)生唯一標(biāo)識所述測試位流數(shù)據(jù)的標(biāo)識數(shù)據(jù)。
應(yīng)當(dāng)理解的是,本實施例中的配置寄存器自動產(chǎn)生器可以根據(jù)約束條件產(chǎn)生指定配置寄存器數(shù)據(jù)和隨機產(chǎn)生隨機配置寄存器數(shù)據(jù),也可以只產(chǎn)生指定配置寄存器數(shù)據(jù)或只產(chǎn)生隨機配置寄存器數(shù)據(jù)。同樣的,本實施例中的配置存儲數(shù)據(jù)自動產(chǎn)生器可以根據(jù)約束條件產(chǎn)生配置到FPGA存儲單元的指令數(shù)據(jù)和隨機產(chǎn)生配置到FPGA存儲單元的隨機數(shù)據(jù),或者也可以只產(chǎn)生指定數(shù)據(jù)或只產(chǎn)生隨機數(shù)據(jù)。本實施例中的空白數(shù)據(jù)產(chǎn)生器可以產(chǎn)生供時鐘切換配置或供時間等待的空白數(shù)據(jù),從而可以為模式切換數(shù)據(jù)處理提供足夠的等待時間,應(yīng)當(dāng)理解的是,本實施例中的空白數(shù)據(jù)的大小可以由開發(fā)人員預(yù)先設(shè)定好,也可以支持用戶自定義。本實施例中的配置數(shù)據(jù)識別內(nèi)容產(chǎn)生器生成的標(biāo)識數(shù)據(jù)可以是一個固定的數(shù)據(jù),主要起標(biāo)識作用,其中標(biāo)識數(shù)據(jù)可以位于測試位流數(shù)據(jù)的頭部,也可以位于測試位流數(shù)據(jù)的尾部,當(dāng)然也可以同時位于測試位流數(shù)據(jù)的頭部和尾部。
S103:根據(jù)配置接口信息生成對應(yīng)的寫入或讀取時序信號輸入至測試執(zhí)行平臺。
應(yīng)當(dāng)說明的是,本實施例中可以通過配置接口時序發(fā)生器生成時序信號,且配置接口時序發(fā)生器可以根據(jù)實例獲取器獲取到的配置接口信息生成寫入或讀取時序信號的。
S104:根據(jù)時序信號,將配置數(shù)據(jù)生成器輸出的測試位流數(shù)據(jù)寫入到配置控制系統(tǒng)的待測設(shè)計進行測試。
應(yīng)當(dāng)理解的是,本實施例S104步驟可以由測試執(zhí)行平臺執(zhí)行。
下面對本實施例中對配置控制系統(tǒng)的待測設(shè)計進行測試作進一步說明。
請參見圖2所示,本實施例中對配置控制系統(tǒng)的待測設(shè)計執(zhí)行的測試流程包括:
S201:根據(jù)接收到的時序信號將測試位流數(shù)據(jù)分別寫入到配置控制系統(tǒng)的待測設(shè)計和模擬器中。
對于S201而言,可以通過驅(qū)動器實現(xiàn)上述過程,且本實施例中的配置接口時序發(fā)生器生成的時序信號可以輸入驅(qū)動器中,同時,本實施例中的配置數(shù)據(jù)生成器生成的測試位流數(shù)據(jù)也可以輸入至驅(qū)動器中。
S202:模擬器中包含配置控制系統(tǒng)的待測設(shè)計的參考模型,并根據(jù)輸入的測試位流數(shù)據(jù)產(chǎn)生仿真結(jié)果并輸出至校驗器中。
S203:獲取配置控制系統(tǒng)的待測設(shè)計根據(jù)測試位流數(shù)據(jù)輸出的運行結(jié)果,并將該結(jié)果輸出至校驗器中。
應(yīng)當(dāng)理解的是,本實施例中可以通過監(jiān)測器獲取配置控制系統(tǒng)的待測設(shè)計根據(jù)測試位流數(shù)據(jù)輸出的運行結(jié)果,本實施例中的S202與S203沒有先后之分,可以先執(zhí)行S203再執(zhí)行S202。
S204:校驗器對接收到的仿真結(jié)果和運行結(jié)果進行校驗處理得到測試結(jié)果。
此外還需要說明的是,還可以直接通過斷言控制器向配置控制系統(tǒng)的待測設(shè)計輸入外加測試激勵,此時的斷言控制器可以與配置控制系統(tǒng)的待測設(shè)計中的激勵輸入接口連接,可以理解的是,當(dāng)通過斷言控制器向配置控制系統(tǒng)的待測設(shè)計輸入外加測試激勵時,也可以向模擬器中輸入同樣的外加測試激勵。可以理解的是,本實施例中的配置數(shù)據(jù)生成器可以只生成隨機測試數(shù)據(jù),此時的指定測試數(shù)據(jù)就可以通過斷言控制器向配置控制系統(tǒng)的待測設(shè)計輸入,同時該指定數(shù)據(jù)也要輸入至模擬器中。
此外,還可以將斷言控制器與配置控制系統(tǒng)的待測設(shè)計中的監(jiān)測位置相連,斷言控制器可以提取該監(jiān)測位置的信號進行監(jiān)測。
此外還需要說明的是,本實施例中的配置控制系統(tǒng)的待測設(shè)計中的存儲單元的描述格式可以為從陣列功能層進行整體描述的陣列式描述格式,例如,可以使用寄存器型verilog(硬件描述語言)描述方式進行陣列式存儲單元的描述,如此可以縮短仿真和編譯的時間,使模擬器中的處理速度更快,從而提高仿真效率。
本發(fā)明實施例提供的FPGA配置控制系統(tǒng)測試方法,通過配置數(shù)據(jù)生成器生成測試位流數(shù)據(jù)輸入至測試執(zhí)行平臺,其中測試位流數(shù)據(jù)中包括指定測試數(shù)據(jù)和隨機測試數(shù)據(jù),從而可以驗證配置控制系統(tǒng)在各個情形下的表現(xiàn)情況,提高了測試驗證配置控制系統(tǒng)的準(zhǔn)確性,相對于現(xiàn)有技術(shù)中通過配套軟件工具生成測試位流數(shù)據(jù)也能節(jié)約一定的時間。
實施例二:
本實施例提供一種FPGA配置控制系統(tǒng)測試控制平臺30,具體的可以參見圖3所示,包括實例獲取器31、配置數(shù)據(jù)生成器32和配置接口時序發(fā)生器33。
其中,實例獲取器31用于獲取對配置控制系統(tǒng)的待測設(shè)計進行測試的測試實例。本實施例中的測試實例包括測試流程、測試流程中涉及的至少部分配置數(shù)據(jù)之生成約束條件以及配置接口信息。且需要說明的是,本實施例中的待測設(shè)計可以為實現(xiàn)某種功能的電路設(shè)計。
本實施例中的配置數(shù)據(jù)生成器32用于根據(jù)實例獲取器31獲取到的測試實例中的測試流程以及生成約束條件生成測試位流數(shù)據(jù)輸入至測試執(zhí)行平臺;本實施例中的測試位流數(shù)據(jù)中包含根據(jù)約束條件生成的指定測試數(shù)據(jù)以及針對測試流程涉及但無生成約束條件的配置數(shù)據(jù)所生成的隨機測試數(shù)據(jù)。
需要說明的是,本實施例中的配置數(shù)據(jù)生成器32包括以下產(chǎn)生器中的至少一種:
配置寄存器自動產(chǎn)生器,用于根據(jù)生成約束條件產(chǎn)生指定配置寄存器數(shù)據(jù),和/或隨機產(chǎn)生隨機配置寄存器數(shù)據(jù);
配置存儲數(shù)據(jù)自動產(chǎn)生器,用于根據(jù)生成約束條件產(chǎn)生配置到FPGA存儲單元的指定數(shù)據(jù),和/或隨機產(chǎn)生配置到FPGA存儲單元的隨機數(shù)據(jù);
空白數(shù)據(jù)產(chǎn)生器;用于產(chǎn)生供時鐘切換配置或供時間等待的空白數(shù)據(jù)。
配置數(shù)據(jù)識別內(nèi)容產(chǎn)生器,用于產(chǎn)生唯一標(biāo)識測試位流數(shù)據(jù)的標(biāo)識數(shù)據(jù)。
也即是,本實施例中的配置數(shù)據(jù)生成器32可以只包括上述產(chǎn)生器中的任意一種,或者可以包括上述產(chǎn)生器中的任意兩種、三種,或者也可以同時包括上述的四種產(chǎn)生器。例如,本實施例中的配置數(shù)據(jù)生成器32可以包括配置寄存器自動產(chǎn)生器、配置存儲數(shù)據(jù)自動產(chǎn)生器和配置數(shù)據(jù)識別內(nèi)容產(chǎn)生器。請參見圖4所示,圖4為當(dāng)本實施例中的配置數(shù)據(jù)生成器32同時包括配置寄存器自動產(chǎn)生器321、配置存儲數(shù)據(jù)自動產(chǎn)生器322、空白數(shù)據(jù)產(chǎn)生器323和配置數(shù)據(jù)識別內(nèi)容產(chǎn)生器324時,其四種產(chǎn)生器的結(jié)構(gòu)示意圖。
應(yīng)當(dāng)理解的是,本實施例中的配置寄存器自動產(chǎn)生器可以根據(jù)約束條件產(chǎn)生指定配置寄存器數(shù)據(jù)和隨機產(chǎn)生隨機配置寄存器數(shù)據(jù),也可以只產(chǎn)生指定配置寄存器數(shù)據(jù)或只產(chǎn)生隨機配置寄存器數(shù)據(jù)。具體而言,本實施例中的配置寄存器自動產(chǎn)生器可以產(chǎn)生各種配置寄存器的內(nèi)容,包括控制寄存器、命令寄存器、位寬識別寄存器、用戶寄存器以及其他用于識別的寄存器和自定義的寄存器等,主要用于設(shè)置位寬識別、配置存儲數(shù)據(jù)的控制方式、接口工作方式、校驗計算方式、讀寫控制方式、加解密控制方式等,控制寄存器中控制位和命令寄存器中命令位可根據(jù)不沖突的原則進行條件組合方式隨機化產(chǎn)生控制值。
同樣的,本實施例中的配置存儲數(shù)據(jù)自動產(chǎn)生器可以根據(jù)約束條件產(chǎn)生配置到FPGA存儲單元的指令數(shù)據(jù)和隨機產(chǎn)生配置到FPGA存儲單元的隨機數(shù)據(jù),或者也可以只產(chǎn)生指定數(shù)據(jù)或只產(chǎn)生隨機數(shù)據(jù)。
本實施例中的空白數(shù)據(jù)產(chǎn)生器可以產(chǎn)生供時鐘切換配置或供時間等待的空白數(shù)據(jù),空白數(shù)據(jù)為填充內(nèi)容,沒有功能,而且可以為時鐘切換、模式切換等過程預(yù)留足夠的時間來完成操作。應(yīng)當(dāng)理解的是,本實施例中的空白數(shù)據(jù)的大小及位置可以由開發(fā)人員預(yù)先設(shè)定好,也可以支持用戶自定義。
本實施例中的配置數(shù)據(jù)識別內(nèi)容產(chǎn)生器生成的標(biāo)識數(shù)據(jù)可以是一個固定的數(shù)據(jù),主要起標(biāo)識作用,其中標(biāo)識數(shù)據(jù)可以位于測試位流數(shù)據(jù)的頭部,也可以位于測試位流數(shù)據(jù)的尾部,當(dāng)然也可以同時位于測試位流數(shù)據(jù)的頭部和尾部。應(yīng)當(dāng)理解的是,當(dāng)對單個配置控制系統(tǒng)的待測設(shè)計進行測試時,也可以不需要配置數(shù)據(jù)識別內(nèi)容產(chǎn)生器產(chǎn)生標(biāo)識數(shù)據(jù)。當(dāng)然,本實施例中的FPGA配置控制系統(tǒng)測試控制平臺30中可以根據(jù)待測設(shè)計的設(shè)置對應(yīng)的產(chǎn)生器,具體產(chǎn)生器的組合方式可以靈活設(shè)置。
本實施例中的配置接口時序發(fā)生器33用于根據(jù)所述配置接口信息生成對應(yīng)的寫入或讀取時序信號輸入至所述測試執(zhí)行平臺,以供該測試執(zhí)行平臺將所述測試位流數(shù)據(jù)寫入所述配置控制系統(tǒng)的待測設(shè)計進行測試。
本實施例提供的FPGA配置控制系統(tǒng)測試控制平臺30還可以包括斷言控制器。本實施例中斷言控制器用于與配置控制系統(tǒng)的待測設(shè)計中的激勵輸入接口連接,用于直接向配置控制系統(tǒng)的待測設(shè)計輸入外加測試激勵;
和/或,
斷言控制器用于與配置控制系統(tǒng)的待測設(shè)計中的監(jiān)測位置連接,用于提取監(jiān)測位置的信號進行監(jiān)測。
也即是,本實施例中的斷言控制器可以用于直接向配置控制系統(tǒng)的待測設(shè)計輸入外加測試激勵的同時,也可以用于對待測設(shè)計中的某一監(jiān)測位置進行監(jiān)測,也可以同時具有上述功能。這樣,可以更加直觀、更方便地添加外加測試激勵或者增加監(jiān)測位置進行更詳細的信號檢測,使得測試驗證的質(zhì)量得到更好的保證。
當(dāng)然,當(dāng)通過本實施例提供的斷言控制器向配置控制系統(tǒng)的待測設(shè)計輸入外加測試激勵時,也可以向模擬器中輸入同樣的外加測試激勵??梢岳斫獾氖?,本實施例中的配置數(shù)據(jù)生成器32可以只生成隨機測試數(shù)據(jù),此時的指定測試數(shù)據(jù)就可以通過斷言控制器向配置控制系統(tǒng)的待測設(shè)計輸入,同時該指定數(shù)據(jù)也要輸入至模擬器中。
通過本實施例提供的FPGA配置控制系統(tǒng)測試控制平臺30,可以直接通過配置數(shù)據(jù)生成器32生成用于測試的測試位流數(shù)據(jù),可以提升測試效率,而且由于生成的測試位流數(shù)據(jù)具有隨機性,因此可以提高配置控制系統(tǒng)測試驗證結(jié)果的準(zhǔn)確性。
實施例三:
請參見圖5所示,本實施例提供一種FPGA配置控制系統(tǒng)測試驗證平臺50,包括測試執(zhí)行平臺34以及上述的任意一種FPGA配置控制系統(tǒng)測試控制平臺30。
在此,需要說明的是,本實施例中的FPGA配置控制系統(tǒng)測試控制平臺30可以集成于FPGA配置控制系統(tǒng)測試驗證平臺50內(nèi),這樣可以節(jié)省驗證測試的整體時間,當(dāng)然本實施例中的FPGA配置控制系統(tǒng)測試控制平臺30也可以獨立于FPGA配置控制系統(tǒng)測試驗證平臺50以外額外設(shè)置。
本實施例中的測試執(zhí)行平臺34用于根據(jù)配置接口時序發(fā)生器33輸出的時序信號,將配置數(shù)據(jù)生成器32輸出的測試位流數(shù)據(jù)寫入到配置控制系統(tǒng)的待測設(shè)計進行測試。
請參見圖6所示,本實施例提供的測試執(zhí)行平臺34可以包括驅(qū)動器341、模擬器342、監(jiān)測器344以及校驗器345。
本實施例中的驅(qū)動器341用于根據(jù)配置接口時序發(fā)生器33輸出的時序信號將配置數(shù)據(jù)生成器32輸出的位流數(shù)據(jù)分別寫入配置控制系統(tǒng)待測設(shè)計343以及模擬器342。
模擬器342中包含配置控制系統(tǒng)的待測設(shè)計的參考模型,用于根據(jù)輸入的位流數(shù)據(jù)產(chǎn)生仿真結(jié)果輸出至校驗器345;
監(jiān)測器344用于獲取配置控制系統(tǒng)的待測設(shè)計根據(jù)測試位流數(shù)據(jù)輸出的運行結(jié)果,并將運行結(jié)果輸出至校驗器345;
校驗器345用于對接收到的仿真結(jié)果和運行結(jié)果進行校驗處理得到測試結(jié)果。
當(dāng)本實施例提供的FPGA配置控制系統(tǒng)測試驗證平臺50中包括斷言控制器35時,本實施例中的FPGA配置控制系統(tǒng)測試驗證平臺50可以參見圖7所示。
此外還需要說明的是,本實施例中的配置控制系統(tǒng)的待測設(shè)計中的存儲單元的描述格式可以為從陣列功能層進行整體描述的陣列式描述格式,例如,可以使用寄存器型verilog(硬件描述語言)描述方式進行陣列式存儲單元的描述,如此,驗證平臺50在編譯時能夠得到更好的編譯處理和綜合處理,會使仿真運行時綜合得出的網(wǎng)表更簡化,大大減少了仿真軟件的系統(tǒng)消耗,從而縮短仿真的編譯時間和仿真時間,從而縮短了整體的測試驗證時間,進而提高了仿真效率。
通過本實施例提供的FPGA配置控制系統(tǒng)測試驗證平臺,產(chǎn)生測試位流數(shù)據(jù)的方式不再依賴于配套軟件工具,可以減少配套軟件工具產(chǎn)生測試位流數(shù)據(jù)以及讀取測試位流數(shù)據(jù)費時費力的流程,從而可以減少測試驗證的時間,由于能夠通過配置數(shù)據(jù)自動產(chǎn)生器產(chǎn)生隨機的測試位流數(shù)據(jù),相較于配套軟件工具只能產(chǎn)生固定的測試位流數(shù)據(jù),能夠使得驗證平臺驗證到待測設(shè)計很多死角的漏洞,從而提升了測試驗證配置控制系統(tǒng)待測設(shè)計的準(zhǔn)確性。
顯然,本領(lǐng)域的技術(shù)人員應(yīng)該明白,上述本發(fā)明實施例的各模塊或各步驟可以用通用的計算裝置來實現(xiàn),它們可以集中在單個的計算裝置上,或者分布在多個計算裝置所組成的網(wǎng)絡(luò)上,可選地,它們可以用計算裝置可執(zhí)行的程序代碼來實現(xiàn),從而,可以將它們存儲在計算機存儲介質(zhì)(ROM/RAM、磁碟、光盤)中由計算裝置來執(zhí)行,并且在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟,或者將它們分別制作成各個集成電路模塊,或者將它們中的多個模塊或步驟制作成單個集成電路模塊來實現(xiàn)。所以,本發(fā)明不限制于任何特定的硬件和軟件結(jié)合。
以上內(nèi)容是結(jié)合具體的實施方式對本發(fā)明實施例所作的進一步詳細說明,不能認定本發(fā)明的具體實施只局限于這些說明。對于本發(fā)明所屬技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干簡單推演或替換,都應(yīng)當(dāng)視為屬于本發(fā)明的保護范圍。