0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Timer測試方案 Timer測試平臺實現(xiàn) 測試平臺debug注意事項

冬至子 ? 來源:拾加分享 ? 作者:10+助手 ? 2023-07-14 10:54 ? 次閱讀

、測試的基本概念

IC驗證,一般也稱“功能驗證”,我們今天要講的,不是這個,是它的簡化版:模塊測試,是設(shè)計工程師完成代碼設(shè)計后,需要自己做的這部分驗證工作。IC驗證,我們將會在后續(xù)文章中,專門講解。

為什么說設(shè)計工程師做的模塊測試是IC驗證的簡化版?

在回答這個問題之前,我們先了解幾個概念:

  • 白盒測試(White-box Test)
  • 黑盒測試(Black-box Test)
  • 灰盒測試(Grey-box Test)

這個幾個概念在軟件工程中都有介紹,IC設(shè)計驗證中一樣存在這幾個概念涉及的工作,所以直接借用。

白盒測試,一般是針對代碼結(jié)構(gòu)進行的測試,所以也有稱白盒測試為“結(jié)構(gòu)測試”。

黑盒測試,一般是行為測試,把設(shè)計當(dāng)黑盒子,不用看代碼不用針對代碼結(jié)構(gòu)進行測試。我們前面提到的IC驗證,通常指的“功能驗證”,就屬于“黑盒測試”。

灰盒測試,介于白盒測試和黑盒測試之間,兼顧兩者優(yōu)點。

在實際工作中,設(shè)計工程師完成代碼設(shè)計之后,交給驗證工程師之前,除了檢查語法、可綜合性之外(當(dāng)然還有其他檢查,設(shè)計剛?cè)腴T,不用關(guān)心這么多),還需要進行基本的測試,這個基本的測試,原則上應(yīng)該是白盒測試。

實際上,因為全靠設(shè)計工程師構(gòu)造測試例來做覆蓋完成白盒測試的工作量太大,一般都用更實際的做法:簡單的功能測試。

做法:確認設(shè)計的代碼基本可以工作,基本的讀寫沒有問題后,就交給驗證工程師來做“IC驗證”,也就是功能驗證。當(dāng)然,不同的團隊對設(shè)計交付代碼質(zhì)量的要求不一樣,那么測試的內(nèi)容和工作量也有差異。

二、Timer測試方案

Timer的測試方案涵蓋的內(nèi)容包括:測試內(nèi)容、測試例、測試平臺結(jié)構(gòu),在實際操作中,有些團隊略去了測試內(nèi)容的梳理和測試平臺結(jié)構(gòu)的設(shè)計,僅僅構(gòu)造了一些這對基本功能的測試例,我們這部分保留這些內(nèi)容,但是做了精簡。

1.測試內(nèi)容

Timer模塊的白盒測試,簡化為基本的功能測試,如:

  • 對總線接口的讀寫檢查
  • 對模塊寄存器的復(fù)位值的檢查;
  • 對寄存器讀寫的檢查;
  • 對計數(shù)基本功能的檢查;
  • 對代碼行、if語句各分支的執(zhí)行檢查等;

針對這些功能,構(gòu)造相應(yīng)的測試例進行測試。

2.測試例

根據(jù)規(guī)格書上梳理待測試的功能。實際操作時有的工程師會簡化,經(jīng)測試基本功能,確認設(shè)計可以動起來。如下表格是測試例的片段。

圖片

3.測試平臺結(jié)構(gòu)

完成待測試功能的梳理和測試例的構(gòu)造,我們接著要做是,設(shè)計構(gòu)造測試平臺(Testbench)。

圖片

DUT:待測試對象(Device Under Test),也就是我們前面用Verilog或VHDL寫的RTL設(shè)計代碼。

激勵:DUT和testbench之間只能通過頂層接口連接,所以,所有的測試數(shù)據(jù)都必須按照頂層接口的時序要求,輸入進DUT中。這里的測試數(shù)據(jù)也叫測試例或者測試向量。測試例,一般是采用直接測試例進行測試,這種測試方式針對性強,能夠快速將模塊驅(qū)動起來。

結(jié)果比較:等待DUT輸出結(jié)果(DUT會有標(biāo)識,或通過主機輪詢,或DUT自己有標(biāo)識接口),testbench必須按照頂層接口的時序要求,取出DUT的輸出結(jié)果,再與期望值比較,最后將比較結(jié)果打印出來,便于查看。

三、Timer測試平臺實現(xiàn)

實現(xiàn)語言: 可以用verilog語言,或者VHDL語言,或者SystemVerilog語言等。

仿真工具 :Modelsim、VCS、NC-Verilog/NC-VHDL

下面是平臺代碼實現(xiàn)的片段。

1. 頂層文件代碼

圖片

頂層包含:

  • 時鐘和復(fù)位信號的定義;
  • 時鐘周期的參數(shù)定義;
  • 驗證環(huán)境文件的導(dǎo)入;
  • 時鐘的產(chǎn)生;
  • 復(fù)位信號的產(chǎn)生;
  • 模塊的例化;
  • 在初始化中運行測試例任務(wù);

2 .總線激勵

假定Timer的總線接口是Z總線,下面的代碼就是實現(xiàn)一個Z總線的寫操作,將wdata寫入zaddr這個地址里面。

圖片

3.測試例

測試例主要是將上面的總線驅(qū)動task調(diào)用起來對模塊進行驅(qū)動,讓模塊正常工作起來。同時設(shè)定一定的循環(huán)次數(shù),每一次新的運行需要等待中斷到來之后進行新的寄存器配置。

圖片

4.結(jié)果比較

為了提高debug效率,將從DUT出來的結(jié)果和理想結(jié)果進行自動對比,并將對比結(jié)果打印出來。

圖片

結(jié)果比較一般流程是等待DUT的中斷到來,然后讀取Timer的寄存器的值與期望值做比較。

四、測試平臺Debug注意事項

  1. 在對整個testbench進行編譯時候,初期語法錯誤較多,這時候需要多聯(lián)系上下文來check,很多時候工具報的問題不在出錯誤的地方。
  2. Debug經(jīng)常遇到的問題是測試例跑死,這種情況一般是等待的事件沒有等到,或者寄存器配置錯誤。
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5253

    瀏覽量

    119212
  • IC設(shè)計
    +關(guān)注

    關(guān)注

    37

    文章

    1287

    瀏覽量

    103440
  • VHDL語言
    +關(guān)注

    關(guān)注

    1

    文章

    113

    瀏覽量

    17931
  • RTL
    RTL
    +關(guān)注

    關(guān)注

    1

    文章

    384

    瀏覽量

    59520
  • DUT
    DUT
    +關(guān)注

    關(guān)注

    0

    文章

    188

    瀏覽量

    12193
收藏 人收藏

    評論

    相關(guān)推薦

    求鋰電池充電方案,IC選擇及測試注意事項

    求鋰電池充電方案,IC選擇及測試注意事項,謝謝
    發(fā)表于 12-22 16:22

    高壓絕緣電阻測試的使用注意事項

    高壓絕緣電阻測試儀也被稱為兆歐表或者絕緣電阻測試儀等等,它被廣泛應(yīng)用于電力的網(wǎng)站或用電的設(shè)備檢測,對人身安全和設(shè)備安全有著重要的意義,下面將會讓大家詳細地介紹高壓絕緣電阻測試儀的使用注意事項
    發(fā)表于 09-01 08:58

    接地電阻測試儀使用與注意事項

    接地電阻測試儀使用與注意事項 一、測試方法: 1、將儀表放置水平位置,檢查檢流計的指針是否在中心線
    發(fā)表于 12-11 15:35 ?1555次閱讀

    Timer0和Timer1及Timer2定時器的C語言和匯編語言測試程序免費下載

    本文檔的主要內(nèi)容詳細介紹的是Timer0和Timer1及Timer2定時器的C語言和匯編語言測試程序免費下載。
    發(fā)表于 06-10 08:00 ?0次下載
    <b class='flag-5'>Timer</b>0和<b class='flag-5'>Timer</b>1及<b class='flag-5'>Timer</b>2定時器的C語言和匯編語言<b class='flag-5'>測試</b>程序免費下載

    全自動電容電感測試儀使用注意事項

    電容電感測試儀是不拆線檢測補償電容器的專用儀器。一般在進行電容測試和電感測試之前,試驗者需要根據(jù)被試品參數(shù)設(shè)置相應(yīng)的測量參數(shù)。但是在試驗過程中,需要注意哪些事情呢?下面小編就給大家講講
    發(fā)表于 06-30 11:26 ?1454次閱讀

    炭黑含量測試儀如何操作?注意事項有哪些

    主要介紹了關(guān)于炭黑含量測試儀的操作方法和注意事項
    發(fā)表于 09-29 10:44 ?655次閱讀
    炭黑含量<b class='flag-5'>測試</b>儀如何操作?<b class='flag-5'>注意事項</b>有哪些

    防止Stress測試損壞注意事項

    電子發(fā)燒友網(wǎng)站提供《防止Stress測試損壞注意事項.pdf》資料免費下載
    發(fā)表于 10-17 10:39 ?2次下載
    防止Stress<b class='flag-5'>測試</b>損壞<b class='flag-5'>注意事項</b>

    觸摸按鍵測試板PCB設(shè)計注意事項

    電子發(fā)燒友網(wǎng)站提供《觸摸按鍵測試板PCB設(shè)計注意事項.pdf》資料免費下載
    發(fā)表于 10-25 15:41 ?15次下載
    觸摸按鍵<b class='flag-5'>測試</b>板PCB設(shè)計<b class='flag-5'>注意事項</b>

    扭力測試儀的操作安全有哪些注意事項?

    磐石測控:深圳扭力測試儀的操作安全有哪些注意事項?磐石測控:深圳扭力測試儀的操作安全有哪些注意事項?相信不少人是有疑問的,今天深圳市磐石測控儀器有限公司就跟大家解答一下!在使用這款扭力
    的頭像 發(fā)表于 07-21 11:38 ?986次閱讀
    扭力<b class='flag-5'>測試</b>儀的操作安全有哪些<b class='flag-5'>注意事項</b>?

    Y電容的測試方法和注意事項

    Y電容是一種常見的被動元件,用于濾波和穩(wěn)壓電路中。在實際應(yīng)用中,需要對Y電容進行測試以確保其正常工作。本文將介紹Y電容的測試方法和注意事項。
    發(fā)表于 09-12 16:53 ?3537次閱讀

    HK32MCU應(yīng)用筆記(十六)| HK32F103xC/D/E-Timer的應(yīng)用及注意事項

    HK32MCU應(yīng)用筆記(十六)| HK32F103xC/D/E-Timer的應(yīng)用及注意事項
    的頭像 發(fā)表于 09-18 10:58 ?662次閱讀

    繼電保護測試測試時必須注意事項有哪些?

    注意事項。其次,要檢查測試儀器的電源和電纜是否連接良好,確保儀器處于正常狀態(tài)。此外,還要確保測試環(huán)境的安全,避免在潮濕、高溫或存在危險因素的環(huán)境中進行測試。 二、操作過程中的
    的頭像 發(fā)表于 11-21 14:11 ?519次閱讀
    繼電保護<b class='flag-5'>測試</b>儀<b class='flag-5'>測試</b>時必須<b class='flag-5'>注意事項</b>有哪些?

    如何進行電源的效率測試?有哪些注意事項呢?

    如何進行電源的效率測試?有哪些注意事項呢? 電源的效率測試是評估電源輸出電能與輸入電能之間的轉(zhuǎn)化效率的過程。這對于設(shè)計和選擇高效電源以減少能源浪費非常重要。本文將介紹電源效率測試的基本
    的頭像 發(fā)表于 11-29 10:56 ?1012次閱讀

    數(shù)據(jù)采集設(shè)備測試有哪些注意事項

    數(shù)據(jù)采集設(shè)備測試有哪些注意事項
    的頭像 發(fā)表于 12-05 10:05 ?418次閱讀

    電阻測試儀的使用方法和注意事項

    注意事項仍然是確保測試準確度和設(shè)備安全的關(guān)鍵。本文將對電阻測試儀的使用方法和注意事項進行詳細闡述,以期為使用者提供參考。
    的頭像 發(fā)表于 05-11 16:27 ?2005次閱讀