亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于功能覆蓋率的MAC的UVM驗證*

        2021-12-01 14:17:38徐梓文郭桂良
        計算機與數(shù)字工程 2021年11期
        關(guān)鍵詞:功能

        徐梓文 郭桂良

        (1.中國科學(xué)院大學(xué) 北京 100049)(2.中國科學(xué)院微電子研究所 北京 100029)

        1 引言

        隨著集成電路制造技術(shù)的不斷進步,以片上系統(tǒng)(SOC)為代表的數(shù)字集成電路發(fā)生了跨越式的發(fā)展,設(shè)計的復(fù)雜程度和規(guī)模大幅增加,這給驗證工作提出了全新的要求與挑戰(zhàn)。相關(guān)研究表示,驗證已經(jīng)占據(jù)了整個數(shù)字前端流程70%~80%的工作時間[1~3],傳統(tǒng)的驗證手段已經(jīng)難以滿足新的要求。在這種背景下,如何找到快速高效的驗證手段,成為了一項很有價值的研究工作。

        近年來,各大EDA廠商都在努力推出自己的驗證解決方案,諸如VMM等等。每種解決方案都有各自的優(yōu)勢,但是始終沒能做到兼容所有的應(yīng)用場景。2011年,UVM驗證方法學(xué)橫空出世,憑借其良好的性能得到了絕大多數(shù)先進IC公司的青睞。如今,UVM驗證方法學(xué)已經(jīng)正式成為了IEEE 1800.2-2017標準[4]。

        媒體訪問控制器(MAC)實現(xiàn)了上層數(shù)據(jù)和物理層比特流的封裝和解封、流量的控制、檢驗檢測和載波偵聽多路訪問的信道存取等功能,保障了以太網(wǎng)數(shù)據(jù)的高帶寬、低延時傳輸。

        2 UVM驗證方法學(xué)和以太網(wǎng)控制器

        2.1 基于CVD的通用驗證方法學(xué)

        通用驗證方法學(xué)UVM是由三大EDA廠商Syn?opsys、Cadence、Mentor協(xié)力打造,由Accellera組織負責(zé)發(fā)布的一種標準化的驗證方法學(xué)[5~6]。UVM本質(zhì)上是一種基于SystemVerilog語言的一個庫,它將驗證中需要使用到的各項功能進行劃分和標準化,使得驗證工程師可以采用類似堆積木的方式來搭建自己的驗證平臺。由于UVM引入了大量的標準化模塊,這使得基于UVM的驗證平臺具有了極強的可復(fù)用性。當待測設(shè)計(DUT)發(fā)生改變時,只需要改變與DUT相關(guān)的功能模塊即可實現(xiàn)測試平臺的復(fù)用。

        基于覆蓋率驅(qū)動(CVD)的UVM驗證平臺是指在驗證平臺運行時,除了在scoreboard(計分板)中對DUT反饋的數(shù)據(jù)做判斷外,還會在各個monitor(監(jiān)視器)中增加大量的CoverGroup(覆蓋組)來對采集到的數(shù)據(jù)加以分析。只有當收集到的數(shù)據(jù)覆蓋到所有CoverGroup中的全部CoverPoint(覆蓋點)時,即功能覆蓋率達到100%時,我們才可以認為該DUT的所有功能均已被測試[7]。

        2.2 媒體訪問控制器

        在ISO組織制定的國際標準中,引入了OSI(開放式系統(tǒng)互聯(lián)通信參考)模型,該模型定義了計算機之間的互聯(lián)通信標準,共分為7層。OSI模型從下到上依次是物理層、數(shù)據(jù)鏈路層、網(wǎng)絡(luò)層、傳輸層、會話層、表示層和應(yīng)用層,其中的數(shù)據(jù)鏈路層又分為三個部分,分別是:邏輯鏈路控制(LLC)子層、媒體訪問控制(MAC)子層[8~9]。MAC子層的作用是屏蔽不同的物理層帶來的差異性,使得上層網(wǎng)絡(luò)可以操作不用的PHY(物理層)芯片[10]。

        本文研究的MAC控制器便是采用MAC協(xié)議進行數(shù)據(jù)收發(fā)的IP,采用XGMII(10Gb獨立于媒體的接口)進行通信。

        3 本研究的驗證平臺

        本文的驗證平臺的結(jié)構(gòu)如圖1所示,這是在標準UVM驗證環(huán)境的基礎(chǔ)上進行搭建的驗證平臺。

        圖1 UVM驗證平臺架構(gòu)

        由于DUT主要分為與片內(nèi)通信的幀傳輸接口、寄存器控制接口、xgmii傳輸接口,本文構(gòu)建了packet_in、packet_out、reg_access、xgmii_tx、xgmii_rx五組interface和agent。

        Agent是根據(jù)數(shù)據(jù)包的功能進行劃分的[11],由于一組功能相關(guān)的數(shù)據(jù)接口都是同時使能或者屏蔽,幾乎不會出現(xiàn)單獨使用一組功能接口中某一個單獨信號的情況[12]。因此,本文在設(shè)計env的時候,引入了名為is_agent_active的參數(shù),且五組agent對應(yīng)五個不用的is_agent_active參數(shù)。當is_agent_active置高,即參數(shù)有效時,表明該組數(shù)據(jù)接口需要被驗證環(huán)境驅(qū)動,對應(yīng)的agent才會被實例化到env中;相應(yīng)的,當is_agent_active為低時,表明該組數(shù)據(jù)接口在本次測試用例中,不需要接受驗證環(huán)境的驅(qū)動,該參數(shù)對應(yīng)的agent就不會被實例化到env中。本文中的5個agent對應(yīng)5個參數(shù),這些參數(shù)通過uvm_config機制,從test_case這一層級,即用戶接觸到的層級中進行配置,用戶只需要編寫好testcase即可自動完成。這樣做便可以根據(jù)testcase的實際需求不同,來快速實現(xiàn)不同的驗證環(huán)境,用最精簡的驗證環(huán)境來完成需要實現(xiàn)的任務(wù),以節(jié)約仿真所需的內(nèi)存開銷,減小仿真需要的總時長。

        4 測試點以及測試用例

        根據(jù)待測設(shè)計的功能,本文對以下幾個功能進行驗證。

        表1 待測電路功能點劃分

        4.1 時鐘的驗證

        控制各時鐘的使能信號,觀測對應(yīng)的時鐘輸出頻率是否滿足要求。驗證時鐘樹上不同時鐘之間的相位差關(guān)系以及同源時鐘的分頻關(guān)系,故將時鐘信息納入功能驗證覆蓋點。

        4.2 復(fù)位的驗證

        在正常的工作狀態(tài)下,隨機產(chǎn)生一個等候時間,在此時間之后產(chǎn)生復(fù)位信號,并觀測各寄存器是否復(fù)位成功。復(fù)位之后釋放復(fù)位信號,重新使能,觀測系統(tǒng)能否正常工作。

        4.3 數(shù)據(jù)幀傳輸?shù)尿炞C

        時鐘使能之后,通過總線agent配置相應(yīng)的寄存器使DUT進入工作狀態(tài)。即配置TX與RX的使能寄存,使DUT可以進行數(shù)據(jù)的收發(fā)。此時需要調(diào)用UVM_INFO機制,將每次的收發(fā)信息進行打印對比,并將其納入測試覆蓋點。根據(jù)每次運行的testcase的不同,觀察系統(tǒng)是否能正常工作或者給出中斷信號等錯誤響應(yīng)。

        發(fā)送入棧引擎接受數(shù)據(jù)包,并將他們存入發(fā)送FIFO(先進先出存儲隊列);發(fā)送FIFO的每一個入口均指向一個[71:0]的存儲空間,其中低64比特存儲該幀的數(shù)據(jù),高8比特存儲該幀的幀信息,具體存儲格式如圖2所示;發(fā)送出擎分為兩個狀態(tài)機,分別控制幀數(shù)據(jù)的封裝、CRC校驗邏輯計算延時等待和幀數(shù)據(jù)發(fā)送過程的錯誤處理。

        圖2 FIFO中數(shù)據(jù)存儲的格式

        接受入棧引擎通過gemii接口接受幀數(shù)據(jù),它也包含兩個狀態(tài)機,分別控制幀數(shù)據(jù)接受過程的錯誤處理和幀數(shù)據(jù)的解封、CRC校驗邏輯計算延時的等待,如果校驗通過則會將剩下的數(shù)據(jù)寫入接收FIFO[13];接收FIFO的存儲格式和發(fā)送FIFO相一致;接收出棧引擎則將接收FIFO的信息反饋給上層邏輯,使得其他用戶可以得到接收到的數(shù)據(jù)信息。

        圖3 發(fā)送出棧引擎的工作流程

        通過對MAC處理器工作邏輯的分析,本文將發(fā)送接口和接收接口相連接,將發(fā)送的數(shù)據(jù)和接收到的數(shù)據(jù)進行對比,將FIFO中的各個狀態(tài)加入測試點。如果所有功能測試點都能100%覆蓋,則說明驗證充分全面[14~16]。

        5 實驗結(jié)果與分析

        5.1 一個完整的數(shù)據(jù)收發(fā)周期

        一個完整數(shù)據(jù)發(fā)送周期的波形如圖4所示,首先是CPU對寄存器進行了配置,設(shè)置了發(fā)送模式使能,打開了各項中斷位。發(fā)送數(shù)據(jù)幀經(jīng)過解碼存入了發(fā)送FIFO,并且隨即從發(fā)送FIFO中取出。接下來CRC校驗邏輯對該幀的數(shù)據(jù)進行了CRC值的計算,根據(jù)mac協(xié)議完成了數(shù)據(jù)包的封裝,進入發(fā)送階段。在發(fā)送出棧狀態(tài)機的控制下,由于沒有偵測到PHY接口上有遠程錯誤信息,該數(shù)據(jù)幀的各個數(shù)據(jù)段按照MAC協(xié)議依次經(jīng)xgmii接口進行了發(fā)送。

        圖4 數(shù)據(jù)發(fā)送過程的波形

        為了加快驗證,本文在testbench中將xgmii的發(fā)送口與接收口連接到了一起,即mac控制器會接收到自己發(fā)送出去的數(shù)據(jù)。從波形圖上可以看出,接受到的數(shù)據(jù)和發(fā)送數(shù)據(jù)完全一致,CRC校驗通過,接收到的數(shù)據(jù)幀符合mac協(xié)議。通過testbench的對比,發(fā)送的數(shù)據(jù)字段和接受的數(shù)據(jù)字段一致,該mac控制器可以正常工作。

        5.2 功能覆蓋率的結(jié)果與分析

        圖5 是經(jīng)過回歸測試之后的覆蓋率統(tǒng)計結(jié)果?;貧w測試是在大規(guī)模隨機測試之后,針對沒有覆蓋到的區(qū)域編寫定向測試用例,功能覆蓋率達到100%。

        圖5 功能覆蓋率的實驗結(jié)果

        在隨機測試用例中,大部分的功能點都已經(jīng)被覆蓋,只有不足10%的bins沒有被完全覆蓋掉。針對這種情況,本研究編寫了定向測試用例,即對DUT施加確定的激勵,使隨機測試用例中沒有被覆蓋到的功能也能通過仿真來實現(xiàn)。理論上,只要仿真時間不加以限制,隨機測試用例足夠多,總能實現(xiàn)100%的完成功能覆蓋,但是這樣做會耗費大量的時間與計算資源,延長了項目的開發(fā)周期,變相地降低了產(chǎn)品的競爭力。

        6 結(jié)語

        UVM作為目前最通行的數(shù)字芯片驗證手段,雖然其前期平臺搭建和測試用例的編寫會耗費大量時間,但是其高度的可重用性和清晰的結(jié)構(gòu)也給驗證人員帶來了無可比擬的便利性。本研究提出了一種基于UVM的以太網(wǎng)控制器IP的驗證環(huán)境,并且成功達到了功能覆蓋率100%的驗證目標,在實際的芯片開發(fā)流程中具有相當重要的應(yīng)用價值。

        猜你喜歡
        功能
        拆解復(fù)雜功能
        鐘表(2023年5期)2023-10-27 04:20:44
        也談詩的“功能”
        中華詩詞(2022年6期)2022-12-31 06:41:24
        基層弄虛作假的“新功能取向”
        當代陜西(2021年21期)2022-01-19 02:00:26
        深刻理解功能關(guān)系
        鉗把功能創(chuàng)新實踐應(yīng)用
        關(guān)于非首都功能疏解的幾點思考
        基于PMC窗口功能實現(xiàn)設(shè)備同步刷刀功能
        懷孕了,凝血功能怎么變?
        媽媽寶寶(2017年2期)2017-02-21 01:21:24
        “簡直”和“幾乎”的表達功能
        中西醫(yī)結(jié)合治療甲狀腺功能亢進癥31例
        国产精品女同一区二区久| 男女下面进入的视频| 7878成人国产在线观看| 亚洲日本无码一区二区在线观看 | 亚洲一区视频在线| 亚洲天堂av大片暖暖| 日韩精品免费一区二区三区观看| 成人精品视频一区二区三区尤物 | 日本久久久精品免费免费理论 | 国产在线观看无码免费视频 | 漂亮人妻被中出中文字幕久久| 亚洲人成7777影视在线观看| 亚洲精彩视频一区二区| 激情文学婷婷六月开心久久| 亚洲精品久久区二区三区蜜桃臀 | 欧美激情区| 久久国产精品国产精品久久| 亚洲熟妇自偷自拍另类| 和外国人做人爱视频| 中年人妻丰满AV无码久久不卡| 美女人妻中文字幕av| 亚洲av无码一区二区三区天堂| 中日韩精品视频在线观看| 日本香蕉久久一区二区视频| 少妇熟女天堂网av天堂| 曰韩无码无遮挡a级毛片| 色妺妺视频网| 蜜桃网站在线免费观看视频| 久久久精品人妻一区二区三区妖精| 久久久久久国产精品免费免费男同 | www插插插无码免费视频网站 | 老男人久久青草AV高清| av在线男人的免费天堂| 亚洲精品国产精品乱码视色| 精品国产aⅴ无码一区二区| a级国产精品片在线观看| 中文字幕亚洲精品专区| 亚洲成av人片在www| 一级呦女专区毛片| 国产av精品一区二区三区视频| 无码人妻精品一区二区三区夜夜嗨|