本申請涉及驗(yàn)證領(lǐng)域,尤其涉及一種基于uvm的用于驗(yàn)證canfd協(xié)議的驗(yàn)證系統(tǒng)和驗(yàn)證平臺。
背景技術(shù):
1、canfd總線協(xié)議是can2.0協(xié)議的拓展和升級,有容錯(cuò)性高的特點(diǎn),是一種在工業(yè)級、車規(guī)級的soc(片上系統(tǒng))、mcu(微控制器)、dsp(數(shù)字信號處理器)等芯片常用的通信接口協(xié)議。芯片驗(yàn)證是芯片研發(fā)的重要環(huán)節(jié)之一,由于canfd總線在工業(yè)級、車規(guī)級芯片中的廣泛使用,所以非常多的驗(yàn)證場景都要面向canfd總線協(xié)議收發(fā)數(shù)據(jù)。此時(shí),能夠在行為級抽象簡化且在信號級精確模擬canfd協(xié)議收發(fā)數(shù)據(jù)信息的裝置就叫canfd?vip(verification?intellectual?property)。
2、各大eda廠商均有各自的canfd-vip,并得到了廣泛應(yīng)用。工具廠商的canfdvip通常只提供uvm(通用驗(yàn)證方法學(xué))組件如sequence和component的成員(members)和方法(methods)的簡要介紹,以及只開放各傳輸階段(通常是周期級)的底層回調(diào)函數(shù),而內(nèi)部核心驅(qū)動(dòng)邏輯以及內(nèi)部的隨機(jī)約束是加密的。用戶只能使用其提供的回調(diào)(callback)函數(shù)對vip的行為和狀態(tài)做一些配置和調(diào)試。當(dāng)需要測試復(fù)雜場景和時(shí)序時(shí),解約束以及回調(diào)函數(shù)的使用限制,會(huì)使得需要多次嘗試調(diào)試才能正確運(yùn)行,嚴(yán)重降低了驗(yàn)證效率。這也使得用戶必須對canfd協(xié)議非常熟悉,還要求用戶對vip的架構(gòu)以及vip的回調(diào)函數(shù)對應(yīng)的傳輸階段非常熟悉,給用戶帶來了很高的學(xué)習(xí)曲線。
技術(shù)實(shí)現(xiàn)思路
1、本申請實(shí)施例提供了一種基于uvm的用于驗(yàn)證canfd協(xié)議的驗(yàn)證系統(tǒng)和驗(yàn)證平臺,可以解決現(xiàn)有canfd協(xié)議的驗(yàn)證問題。所述技術(shù)方案如下:
2、第一方面,本申請實(shí)施例提供了一種基于uvm的用于驗(yàn)證can協(xié)議的驗(yàn)證系統(tǒng),uvm模型包括:協(xié)議驅(qū)動(dòng)器、監(jiān)視器、序列發(fā)生器、序列庫、計(jì)分板、以及配置組件;
3、所述協(xié)議驅(qū)動(dòng)器和所述計(jì)分板之間采用analysis_fifo收發(fā)傳輸事務(wù),所述監(jiān)視器和所述計(jì)分板之間采用analysis_fifo收發(fā)傳輸事務(wù);所述協(xié)議驅(qū)動(dòng)器與待測試rtl進(jìn)行連接,所述監(jiān)視器與所述待測試rtl進(jìn)行連接,所述序列庫與所述序列發(fā)生器進(jìn)行通信,所述序列發(fā)生器與所述協(xié)議驅(qū)動(dòng)器進(jìn)行通信;
4、所述配置組件,用于配置can協(xié)議類型、波特率參數(shù)和濾波器參數(shù);
5、所述序列發(fā)生器,用于根據(jù)所述序列庫中的序列生成傳輸事務(wù),以及將所述傳輸事務(wù)發(fā)送給所述協(xié)議驅(qū)動(dòng)器;
6、所述協(xié)議驅(qū)動(dòng)器,基于配置組件的波特率參數(shù)產(chǎn)生時(shí)序信號,將所述傳輸事務(wù)中的比特流、比特流標(biāo)志位、以及各種debug標(biāo)記信號驅(qū)動(dòng)到虛擬接口上,以及檢測到虛擬接口上的錯(cuò)誤并發(fā)送錯(cuò)誤幀,以及在規(guī)定的位切換快慢波特率。在傳輸事務(wù)使能傳輸錯(cuò)誤比特流時(shí),驅(qū)動(dòng)指定次數(shù)錯(cuò)誤比特流后驅(qū)動(dòng)正常比特流;
7、所述監(jiān)視器,用于接收所述總線上的幀,以及在規(guī)定的位上切換快慢波特率,也能夠檢測總線上的錯(cuò)誤并且發(fā)送錯(cuò)誤幀;
8、所述傳輸事務(wù),用于產(chǎn)生幀的正確或異常比特流,比特流的標(biāo)志位,以及額外的標(biāo)記信息。依據(jù)幀信息以及協(xié)議類型計(jì)算crc序列,將幀轉(zhuǎn)化為初始比特流并依據(jù)不同協(xié)議對初始比特流填充填充位以及stuff_count得到正常比特流;若使能異常比特流,則依據(jù)選定的異常模式在正常比特流基礎(chǔ)上修改指定比特位得到異常比特流。
9、所述計(jì)分板,用于通過比較收發(fā)的傳輸事務(wù),支持多種幀id濾波模式以及幀類型濾波模式,支持反算濾波器號,檢測總線上傳輸?shù)谋忍亓魇欠駷槠谕麕?,以及其他?biāo)記信息是否符合期望。
10、所述虛擬接口,用于連接vip環(huán)境與待測試模塊。
11、第二方面,本申請實(shí)施例提供了一種驗(yàn)證平臺,包括上述的驗(yàn)證系統(tǒng)。
12、本申請一些實(shí)施例提供的技術(shù)方案帶來的有益效果至少包括:
13、本申請的uvm模型相較于傳統(tǒng)工具廠商提供的同類產(chǎn)品,展現(xiàn)出顯著的技術(shù)優(yōu)勢與用戶體驗(yàn)的革新。其核心驅(qū)動(dòng)邏輯與內(nèi)部隨機(jī)約束機(jī)制的全面開放,不僅摒棄了傳統(tǒng)加密處理的限制,更極大地簡化了驗(yàn)證流程,降低了用戶的學(xué)習(xí)門檻與調(diào)試成本。用戶能夠直接洞察并操控vip的內(nèi)部運(yùn)作機(jī)理,從而實(shí)現(xiàn)更高效、更直觀的問題定位與解決,顯著縮短了產(chǎn)品驗(yàn)證周期。本申請的驗(yàn)證系統(tǒng)在測試異常與錯(cuò)誤場景時(shí),展現(xiàn)出前所未有的靈活性與精確度。通過在傳輸事務(wù)中實(shí)現(xiàn)幀的比特流,驅(qū)動(dòng)器不再對幀進(jìn)行解析以及填充填充位,專注于驅(qū)動(dòng)比特流以及檢測錯(cuò)誤,相比于某些同類產(chǎn)品在驅(qū)動(dòng)器中實(shí)現(xiàn)對幀進(jìn)行解析以及填充填充位的方式,本申請的代碼更為簡潔,復(fù)雜度更低。通過允許用戶直接修改任意合法幀中的任意比特位,以模擬非法或異常的比特流傳輸,這一創(chuàng)新功能為驗(yàn)證工程師提供了強(qiáng)大的工具,使他們能夠精確構(gòu)造復(fù)雜多樣的測試案例,全面覆蓋并驗(yàn)證系統(tǒng)在不同極端條件下的響應(yīng)能力,確保設(shè)計(jì)的健壯性與可靠性。本申請的驗(yàn)證系統(tǒng)還集成了多元化的濾波模式,不僅支持基于原始幀id的濾波器號計(jì)算。本申請還引入了幀外額外標(biāo)記信息與debug標(biāo)記信號的支持,特別是比特流標(biāo)志位的引入,使得仿真時(shí)幀比特流的信息更為直觀,極大的提高了驗(yàn)證效率。這些高級特性極大地豐富驗(yàn)證手段,使得工程師在調(diào)試設(shè)計(jì)缺陷時(shí)能夠依據(jù)詳盡的信息流進(jìn)行精準(zhǔn)定位,同時(shí),通過靈活的濾波配置,可有效過濾無關(guān)信息,聚焦于關(guān)鍵問題區(qū)域,顯著提升調(diào)試效率與準(zhǔn)確性。
1.一種基于uvm的用于驗(yàn)證canfd協(xié)議的驗(yàn)證系統(tǒng),其特征在于,uvm模型包括:協(xié)議驅(qū)動(dòng)器、監(jiān)視器、傳輸事務(wù)、序列發(fā)生器、序列庫、計(jì)分板、配置組件、以及虛擬接口;
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述協(xié)議驅(qū)動(dòng)器、序列發(fā)生器、監(jiān)視器和計(jì)分板中設(shè)置有所述配置組件的句柄。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述傳輸事務(wù)包括:配置組件指針、幀類型、通信協(xié)議類型、幀的位域信息、幀轉(zhuǎn)化的正常比特流、注入錯(cuò)誤位、注入了錯(cuò)誤的異常比特流、比特流標(biāo)志位、異常比特流重復(fù)發(fā)送次數(shù);
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述協(xié)議驅(qū)動(dòng)器中并行運(yùn)行有多個(gè)task:get_transaction_channel任務(wù)、slow_tq任務(wù)、fast_tq任務(wù)、rx_sample任務(wù)、以及tx_drv任務(wù)。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述監(jiān)視器并行運(yùn)行有多個(gè)task:slow_tq任務(wù)、fast_tq任務(wù)、rx_sample任務(wù)、以及receive_channel任務(wù)。
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述計(jì)分板并行有運(yùn)行多個(gè)task:get_tx_transaction任務(wù)、get_rx_transaction任務(wù)、acf任務(wù)、以及cmp函數(shù)。
7.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述虛擬接口中傳輸?shù)男盘柊ǎ簳r(shí)鐘信號、復(fù)位信號、發(fā)送信號和接收信號、比特流標(biāo)志位信號、以及各種debug標(biāo)記信號。
8.一種驗(yàn)證平臺,其特征在于,包括:如權(quán)利要求1至7任意一項(xiàng)所述的驗(yàn)證系統(tǒng)。