本發(fā)明公開一種基于axi總線的功能驗證平臺的搭建方法,涉及ic設(shè)計驗證領(lǐng)域。
背景技術(shù):
axi全稱advancedextensibleinterface,是arm1996年提出的微控制器總線家族amba中的一部分。axi的第一個版本出現(xiàn)在amba3.0發(fā)布于2003年,axi4.0發(fā)布于2010年,xilinx從6系列的fpga開始引入,主要描述了主設(shè)備和從設(shè)備之間的數(shù)據(jù)傳輸方式。因為axi總線架構(gòu)靈活、易用等優(yōu)點,基于axi總線的設(shè)計非常多,市場上主要的供應(yīng)商包括altera、xilinx等。而每一個基于axi總線的設(shè)計都需要開發(fā)一個驗證平臺用來對設(shè)計內(nèi)部的寄存器和ram模塊進行仿真測試,以保證設(shè)計的axi總線的有效性。但基于axi總線的產(chǎn)品太多,如此不但十分麻煩,增加成本,而且浪費有限資源。
本發(fā)明提供一種基于axi總線的功能驗證平臺的搭建方法,針對axi總線協(xié)議的規(guī)劃性,描述了用于測試基于axi總線的產(chǎn)品的功能驗證平臺的搭建方法,通過使用自動化腳本根據(jù)總線架構(gòu)信息文檔、內(nèi)部寄存器和ram模塊信息文檔、芯片初始化控制文檔,自動化完成測試向量生成和運行。而且本發(fā)明方法實施方便,流程簡單,高效穩(wěn)定,可以大幅縮短基于axi總線的設(shè)計搭建功能驗證平臺的開發(fā)周期,提高功能驗證效率。
技術(shù)實現(xiàn)要素:
本發(fā)明提供一種基于axi總線的功能驗證平臺的搭建方法,具有通用性強、實施簡便等特點,具有廣闊的應(yīng)用前景。
本發(fā)明提出的具體方案是:
一種基于axi總線的功能驗證平臺的搭建方法:
根據(jù)被測axi總線架構(gòu)的初始化工作過程,編寫芯片初始化控制文檔;
根據(jù)被測axi總線架構(gòu),確定總線架構(gòu)的參數(shù)信息,編寫總線架構(gòu)信息文檔;
建立驗證平臺總線仲裁模塊模型并生成腳本,讀取總線架構(gòu)信息文檔,生成總線仲裁模塊模型頂層文件;
根據(jù)被測axi總線架構(gòu)內(nèi)部寄存器和ram模塊的參數(shù)建立寄存器信息文檔,并生成自動腳本,用該自動腳本根據(jù)寄存器信息文檔生成測試向量;
生成驗證平臺的輸出信息控制腳本和驗證平臺的運行腳本,調(diào)試運行測試向量,進行功能驗證平臺的驗證過程。
根據(jù)被測axi總線架構(gòu)的初始化工作過程中的時鐘信號穩(wěn)定時間,reset信號使能時間,內(nèi)部各特殊控制信號列表及時序信息,編寫芯片初始化控制文檔。
所述運行腳本根據(jù)芯片初始化控制文檔自動生成針對axi總線架構(gòu)的初始環(huán)境配置命令并執(zhí)行,之后執(zhí)行測試向量,進行測試驗證并生成測試報告。
所述總線架構(gòu)信息文檔包含被測axi總線架構(gòu)類型,總線架構(gòu)中主從設(shè)備的數(shù)量及其設(shè)備id,使用的axi_interconnect_1ip核數(shù)量及名字以及每個ip核仲裁的設(shè)備id。
所述寄存器信息文檔包含內(nèi)部寄存器和ram模塊的地址、數(shù)據(jù)寬度、深度、讀寫特征、讀寫命令延遲以及讀寫相關(guān)順序信息。
所述輸出信息控制腳本通過預(yù)留控制端口,在測試過程中根據(jù)實際需要進行輸出信息的分類控制。
本發(fā)明的有益之處是:
本發(fā)明提出了一種基于axi總線的功能驗證平臺的搭建方法,通過使用芯片初始化控制文檔實現(xiàn)對不同設(shè)計的初始驗證環(huán)境的配置,通過使用內(nèi)部寄存器和ram模塊信息文檔實現(xiàn)針對存儲模塊進行測試;通過使用自動化腳本,實現(xiàn)自動化完成驗證平臺的搭建和運行工作;可以通過基于標準的axi總線協(xié)議設(shè)計驗證平臺測試命令,實現(xiàn)對各基于axi總線的設(shè)計的通用讀寫測試;本發(fā)明方法對于設(shè)計人員理解驗證平臺沒有語言門檻,便于設(shè)計人員和驗證人員進行交流,而且實施方便,流程簡單,高效穩(wěn)定,可以大幅縮短為不同的基于axi總線的設(shè)計搭建功能驗證平臺的開發(fā)周期,提高功能驗證效率。
附圖說明
圖1本發(fā)明方法流程示意圖。
具體實施方式
本發(fā)明提供一種基于axi總線的功能驗證平臺的搭建方法:
根據(jù)被測axi總線架構(gòu)的初始化工作過程,編寫芯片初始化控制文檔;
根據(jù)被測axi總線架構(gòu),確定總線架構(gòu)的參數(shù)信息,編寫總線架構(gòu)信息文檔;
建立驗證平臺總線仲裁模塊模型并生成腳本,讀取總線架構(gòu)信息文檔,生成總線仲裁模塊模型頂層文件;
根據(jù)被測axi總線架構(gòu)內(nèi)部寄存器和ram模塊的參數(shù)建立寄存器信息文檔,并生成自動腳本,用該自動腳本根據(jù)寄存器信息文檔生成測試向量;
生成驗證平臺的輸出信息控制腳本和驗證平臺的運行腳本,調(diào)試運行測試向量,進行功能驗證平臺的驗證過程。
結(jié)合附圖對本發(fā)明進行進一步說明。利用本發(fā)明方法的具體過程為:
首先,根據(jù)被測axi總線的設(shè)計的初始化工作過程,包括時鐘信號穩(wěn)定時間,reset信號使能時間,內(nèi)部各特殊控制信號列表及時序等信息,編寫芯片初始化控制文檔;
根據(jù)被測axi總線架構(gòu)類型編寫總線架構(gòu)信息文檔,總線架構(gòu)信息文檔包含被測axi總線架構(gòu)類型,總線架構(gòu)中主從設(shè)備的數(shù)量及其設(shè)備id,使用的axi_interconnect_1ip核數(shù)量及名字以及每個ip核仲裁的設(shè)備id;
根據(jù)被測axi總線的設(shè)計內(nèi)部寄存器和ram模塊的地址、數(shù)據(jù)寬度、深度、讀寫特征、讀寫命令延遲以及讀寫相關(guān)順序信息,編寫寄存器信息文檔;
編寫自動化腳本,包括總線仲裁模型頂層文件生成腳本,測試向量生成腳本,輸出信息控制腳本和運行腳本,同時可以根據(jù)需要編寫符合axi協(xié)議時序要求的讀寫命令模板庫;上述自動化腳本和命令模塊庫都可以在不同被測axi總線的設(shè)計中進行復(fù)用;
使用總線仲裁模型頂層文件生成腳本通過讀取總線架構(gòu)信息文檔生成驗證需要的總線仲裁模型頂層文件;
使用測試向量生成腳本針對基于axi總線的設(shè)計內(nèi)部寄存器和ram模塊的信息文檔,生成選定的要測試的寄存器或ram模塊的測試向量;
使用輸出信息控制腳本預(yù)留的控制端口,設(shè)置當前的測試需要輸出到log文件的信息類別;
使用運行腳本根據(jù)芯片初始化控制文檔生成對應(yīng)的初始化命令序列,執(zhí)行,之后運行測試向量,生成測試報告,完成本次測試。
上述功能驗證平臺中的腳本可以使用perl/tcl/c-shell等腳本語言編寫。
根據(jù)被測設(shè)計需要,利用本發(fā)明自動化生成不同架構(gòu)類型的功能驗證平臺。通過本發(fā)明方法搭建的驗證平臺可以完成多種架構(gòu)類型的基于axi總線的設(shè)計中的寄存器和ram模塊的測試,具有開發(fā)周期短、通用性強和自動化程度高的特點,可以大幅度提高芯片驗證效率。