chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

使用三種自動(dòng)化testbench驗(yàn)證方法

OpenFPGA ? 來(lái)源:OpenFPGA ? 作者:OpenFPGA ? 2020-11-20 11:26 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

Testbench編寫(xiě)指南(4)自動(dòng)化驗(yàn)證方法

自動(dòng)化驗(yàn)證testbench結(jié)果可以減少人工檢查的時(shí)間和可能犯的失誤,尤其對(duì)于比較大的設(shè)計(jì)。目前普遍使用三種自動(dòng)化testbench驗(yàn)證方法:

數(shù)據(jù)庫(kù)比較:首先創(chuàng)建一個(gè)包含預(yù)期輸出的數(shù)據(jù)庫(kù)文件(稱(chēng)作golden
vector文件),然后捕獲仿真輸出與該文件中的參考向量作比較。但是由于沒(méi)有提供從輸出到輸入文件的指針,該方法的缺點(diǎn)是難以追蹤導(dǎo)致不正確輸出的錯(cuò)誤源。

波形比較:將testbench輸出波形與預(yù)期波形作比較。Xilinx曾推出過(guò)一款HDL
Bencher的工具,可以執(zhí)行自動(dòng)化的波形比較,不過(guò)目前由于該方法很少使用,Xilinx也下架了該工具。

自我檢查testbench設(shè)計(jì):與前兩種方法不同,該方法實(shí)時(shí)檢查預(yù)期結(jié)果和實(shí)際結(jié)果,而不是仿真結(jié)束后才檢查。在testbench中插入錯(cuò)誤追蹤信息可以顯示設(shè)計(jì)在哪里失敗,從而縮短調(diào)試時(shí)間。

本文將介紹最后一種自動(dòng)化驗(yàn)證方法。將一系列預(yù)期向量(比如由MATLAB等軟件產(chǎn)生)放在testbench文件中,在運(yùn)行時(shí)間間隔與實(shí)際仿真結(jié)果比較,如果匹配則表明仿真成功;不匹配則報(bào)告結(jié)果不符。

比較時(shí)間可以選擇在每個(gè)時(shí)鐘邊沿,或者沒(méi)n個(gè)時(shí)鐘周期比較一次,總而言之要與設(shè)計(jì)相符合。比如內(nèi)存I/O的testbench應(yīng)該在讀出或?qū)懭胍粋€(gè)新數(shù)據(jù)后就進(jìn)行比較;如何設(shè)計(jì)使用了大量組合邏輯模塊,選取比較時(shí)間必須考慮組合邏輯延遲。
??對(duì)于中小型設(shè)計(jì)而言,自我檢查的testbench設(shè)計(jì)方法是一種不錯(cuò)的選擇,但是對(duì)于復(fù)雜的大型設(shè)計(jì),可能的輸出組合呈指數(shù)形式增加,編寫(xiě)一個(gè)自我檢查testbench將會(huì)困難很多。下面給出一個(gè)自我檢查testbench的設(shè)計(jì)示例(來(lái)源于xapp199):

`timescale 1 ns / 1 ps module test_sc; // 信號(hào)申明 reg tbreset, tbstrtstop; reg tbclk; wire [6:0] onesout, tensout; wire [9:0] tbtenthsout; parameter cycles = 25; reg [9:0] Data_in_t [0:cycles]; // 實(shí)例化設(shè)計(jì) stopwatch UUT (.CLK (tbclk), .RESET (tbreset), .STRTSTOP (tbstrtstop), .ONESOUT (onesout), .TENSOUT (tensout), .TENTHSOUT (tbtenthsout)); wire [4:0] tbonesout, tbtensout; assign tbtensout = led2hex(tensout); assign tbonesout = led2hex(onesout); //------------------------------------------------------------- // 預(yù)期結(jié)果 //------------------------------------------------------------- initial begin Data_in_t[1] =10'b1111111110; Data_in_t[2] =10'b1111111101; Data_in_t[3] =10'b1111111011; Data_in_t[4] =10'b1111110111; Data_in_t[5] =10'b1111101111; Data_in_t[6] =10'b1111011111; Data_in_t[7] =10'b1110111111; Data_in_t[8] =10'b1101111111; Data_in_t[9] =10'b1011111111; Data_in_t[10]=10'b0111111111; Data_in_t[11]=10'b1111111110; Data_in_t[12]=10'b1111111110; Data_in_t[13]=10'b1111111101; Data_in_t[14]=10'b1111111011; Data_in_t[15]=10'b1111110111; Data_in_t[16]=10'b1111101111; Data_in_t[17]=10'b1111011111; Data_in_t[18]=10'b1110111111; Data_in_t[19]=10'b1101111111; Data_in_t[20]=10'b1011111111; Data_in_t[21]=10'b0111111111; Data_in_t[22]=10'b1111111110; Data_in_t[23]=10'b1111111110; Data_in_t[24]=10'b1111111101; Data_in_t[25]=10'b1111111011; end reg GSR; assign glbl.GSR = GSR; initial begin GSR = 1; // 等到全局復(fù)位結(jié)束 #100 GSR = 0; end //建立一個(gè)時(shí)鐘 initial begin tbclk = 0; //全局復(fù)位結(jié)束后開(kāi)始產(chǎn)生時(shí)鐘信號(hào) #100 forever #60 tbclk = ~tbclk; end //給出設(shè)計(jì)激勵(lì) initial begin tbreset = 1; tbstrtstop = 1; #240 tbreset = 0; tbstrtstop = 0; #5000 tbstrtstop = 1; #8125 tbstrtstop = 0; #500 tbstrtstop = 1; #875 tbreset = 1; #375 tbreset = 0; #700 tbstrtstop = 0; #550 tbstrtstop = 1; #100000 $stop; end //------------------------------------------------------------- // 在每個(gè)時(shí)鐘的下降沿比較預(yù)期結(jié)果和實(shí)際結(jié)果 //------------------------------------------------------------- integer i,errors; always @ (posedge tbclk) begin if (tbstrtstop) begin i = 0; errors = 0; end else begin for (i = 1; i <= cycles; i = i + 1) begin ? ? ? ?@(negedge tbclk) ? ? ? ?// 每個(gè)下降沿檢查結(jié)果 ? ? ? ?$display("Time%d ns; TBSTRTSTOP=%b; Reset=%h; Expected ? ? ? ?TenthsOut=%b; Actual TenthsOut=%b", $stime, tbstrtstop, tbreset, ? ? ? ?Data_in_t[i], tbtenthsout); ? ? ? ?if ( tbtenthsout !== Data_in_t[i] ) begin ? ? ? ? ? ?$display(" ------ERROR. A mismatch has occurred-----"); ? ? ? ? ? ?errors = errors + 1; ? ? ? ?end ? ?end ? ?if (errors == 0) ? ? ? ?$display("Simulation finished Successfully."); ? ?else if (errors > 1) $display("%0d ERROR! See log above for details.",errors); else $display("ERROR! See log above for details."); #100 $stop; end end endmodule

上述代碼中,將預(yù)期結(jié)果和實(shí)際結(jié)果的比較情況顯示在終端。該代碼模板可應(yīng)用于任何設(shè)計(jì)的自我檢查testbench中,需要修改實(shí)例化接口和預(yù)期的輸出值。如果不需要在每個(gè)時(shí)鐘沿檢查一次數(shù)據(jù),則修改for循環(huán)的執(zhí)行條件。

責(zé)任編輯:lq

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • matlab
    +關(guān)注

    關(guān)注

    189

    文章

    3001

    瀏覽量

    234094
  • 自動(dòng)化
    +關(guān)注

    關(guān)注

    29

    文章

    5780

    瀏覽量

    84820
  • 數(shù)據(jù)庫(kù)
    +關(guān)注

    關(guān)注

    7

    文章

    3926

    瀏覽量

    66198

原文標(biāo)題:Testbench編寫(xiě)指南(4)自動(dòng)化驗(yàn)證方法

文章出處:【微信號(hào):Open_FPGA,微信公眾號(hào):OpenFPGA】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    工業(yè)DTU對(duì)工業(yè)自動(dòng)化通信格局的重塑

    隨著工業(yè)4.0和智能制造的快速發(fā)展,工業(yè)自動(dòng)化系統(tǒng)對(duì)通信技術(shù)的要求越來(lái)越高。工業(yè)數(shù)據(jù)傳輸單元(DTU,DataTransferUnit)作為一新興的通信設(shè)備,正在逐步重塑工業(yè)自動(dòng)化通信格局,為工業(yè)
    的頭像 發(fā)表于 03-28 14:09 ?285次閱讀
    工業(yè)DTU對(duì)工業(yè)<b class='flag-5'>自動(dòng)化</b>通信格局的重塑

    告別人工檢測(cè)!casaim自動(dòng)化維激光掃描

    casaim自動(dòng)化維激光掃描技術(shù)通過(guò)集成傳感器、智能算法和自動(dòng)化控制系統(tǒng),解決了傳統(tǒng)人工檢測(cè)的諸多問(wèn)題。
    的頭像 發(fā)表于 03-12 13:20 ?333次閱讀
    告別人工檢測(cè)!casaim<b class='flag-5'>自動(dòng)化</b><b class='flag-5'>三</b>維激光掃描

    相濾波器:工業(yè)自動(dòng)化的穩(wěn)定基石

    自動(dòng)化中的應(yīng)用,以及它如何成為這一領(lǐng)域不可或缺的科技力量。 一、相濾波器:工業(yè)自動(dòng)化中的電磁守護(hù)者 相濾波器的工作原理與重要性 相濾波
    的頭像 發(fā)表于 03-11 11:04 ?434次閱讀

    HFSS 自動(dòng)化建模工具

    因工作需求,自己寫(xiě)的HFSS參數(shù)自動(dòng)化建模工具,目前只實(shí)現(xiàn)了常用的四模型,可定制,如需可聯(lián)系 qq:1300038043 附件下載鏈接:https://pan.baidu.com/s/1TVeTTFiJw-pxSyT1AT
    發(fā)表于 02-27 17:44

    casaim自動(dòng)化維激光掃描

    CASAIM自動(dòng)化維激光掃描技術(shù)通過(guò)非接觸式高精度數(shù)據(jù)采集與智能分析系統(tǒng),為工業(yè)檢測(cè)提供全流程數(shù)字化解決方案。
    的頭像 發(fā)表于 02-27 10:32 ?370次閱讀

    自動(dòng)化設(shè)備中滾珠螺桿的清洗方法有哪些?

    滾珠螺桿是一常見(jiàn)的精密傳動(dòng)元件,廣泛應(yīng)用于機(jī)床、自動(dòng)化設(shè)備等領(lǐng)域。
    的頭像 發(fā)表于 02-05 17:58 ?391次閱讀
    <b class='flag-5'>自動(dòng)化</b>設(shè)備中滾珠螺桿的清洗<b class='flag-5'>方法</b>有哪些?

    示波器的三種觸發(fā)模式

    示波器的觸發(fā)方式不僅影響波形捕捉的時(shí)機(jī),還決定了顯示的波形是否穩(wěn)定。 常見(jiàn)的觸發(fā)模式有三種: 單次觸發(fā) (Single)、 正常觸發(fā) (Normal)和 自動(dòng)觸發(fā) (Auto)。下面將對(duì)這三種觸發(fā)
    的頭像 發(fā)表于 01-07 11:04 ?7572次閱讀
    示波器的<b class='flag-5'>三種</b>觸發(fā)模式

    串口屏自動(dòng)化測(cè)試

    嚴(yán)謹(jǐn)而高效的自動(dòng)化測(cè)試方案顯得尤為重要。以下是對(duì)串口屏自動(dòng)化測(cè)試策略的深度解析,旨在通過(guò)高質(zhì)量的測(cè)試設(shè)計(jì),嚴(yán)格控制產(chǎn)品設(shè)計(jì)質(zhì)量,推動(dòng)產(chǎn)業(yè)升級(jí)。 引言 串口屏自動(dòng)化測(cè)試是連接軟件開(kāi)發(fā)與硬件性能驗(yàn)
    的頭像 發(fā)表于 12-27 17:17 ?1473次閱讀

    菱PLC自動(dòng)化控制應(yīng)用領(lǐng)域

    在現(xiàn)代工業(yè)生產(chǎn)中,自動(dòng)化控制技術(shù)扮演著至關(guān)重要的角色。菱電機(jī)作為自動(dòng)化技術(shù)的先驅(qū)之一,其PLC產(chǎn)品以其高可靠性、高性能和易用性在全球范圍內(nèi)被廣泛采用。 1. 制造業(yè) 制造業(yè)是PLC應(yīng)用最廣泛的領(lǐng)域
    的頭像 發(fā)表于 12-26 17:34 ?2490次閱讀

    編寫(xiě)高效Testbench的指南和示例

    Testbench驗(yàn)證HDL設(shè)計(jì)的主要手段,本文提供了布局和構(gòu)建高效Testbench的指南以及示例。另外,本文還提供了一示例,可以為任何設(shè)計(jì)開(kāi)發(fā)自檢
    的頭像 發(fā)表于 10-29 16:14 ?1877次閱讀
    編寫(xiě)高效<b class='flag-5'>Testbench</b>的指南和示例

    MR30系列IO——工業(yè)自動(dòng)化的智慧紐帶

    工業(yè)生產(chǎn)的智能與高效提供了堅(jiān)實(shí)的支撐。明達(dá)技術(shù)將為您深入淺出地介紹這三種模塊的基本概念、功能特性及其應(yīng)用場(chǎng)景,特別聚焦于MR30系列IO模塊的獨(dú)特之處
    的頭像 發(fā)表于 10-10 13:27 ?500次閱讀
    MR30系列IO——工業(yè)<b class='flag-5'>自動(dòng)化</b>的智慧紐帶

    TI RF Transceiver EVM自動(dòng)化環(huán)境搭建方法

    電子發(fā)燒友網(wǎng)站提供《TI RF Transceiver EVM自動(dòng)化環(huán)境搭建方法.pdf》資料免費(fèi)下載
    發(fā)表于 09-04 09:35 ?0次下載
    TI RF Transceiver EVM<b class='flag-5'>自動(dòng)化</b>環(huán)境搭建<b class='flag-5'>方法</b>

    復(fù)雜工件的高效測(cè)量方案:自動(dòng)化坐標(biāo)測(cè)量與影像測(cè)量技術(shù)集成

    在現(xiàn)代制造業(yè)的快速發(fā)展中,復(fù)雜工件的精密測(cè)量成為了質(zhì)量控制的關(guān)鍵。隨著工業(yè)4.0的推進(jìn),自動(dòng)化技術(shù)與精密測(cè)量設(shè)備的結(jié)合,為生產(chǎn)效率和產(chǎn)品質(zhì)量的提升提供了新的解決方案。全自動(dòng)化坐標(biāo)測(cè)量站全自動(dòng)
    的頭像 發(fā)表于 08-30 16:49 ?855次閱讀
    復(fù)雜工件的高效測(cè)量方案:<b class='flag-5'>自動(dòng)化</b><b class='flag-5'>三</b>坐標(biāo)測(cè)量與影像測(cè)量技術(shù)集成

    MCUXpresso IDE下在線聯(lián)合調(diào)試雙核MCU工程的三種方法

    大家好,我是痞子衡,是正經(jīng)搞技術(shù)的痞子。今天痞子衡給大家分享的是MCUXpresso IDE下在線聯(lián)合調(diào)試i.MXRT1170雙核工程的三種方法。
    的頭像 發(fā)表于 08-08 15:18 ?1360次閱讀
    MCUXpresso IDE下在線聯(lián)合調(diào)試雙核MCU工程的<b class='flag-5'>三種方法</b>

    數(shù)字示波器的測(cè)量方法有哪三種

    數(shù)字示波器是一廣泛應(yīng)用于電子測(cè)量領(lǐng)域的儀器,它能夠?qū)崟r(shí)顯示電壓波形,幫助工程師和技術(shù)人員對(duì)電子信號(hào)進(jìn)行分析和測(cè)量。數(shù)字示波器的測(cè)量方法有很多種,不同的測(cè)量方法適用于不同的應(yīng)用場(chǎng)景。以下是三種
    的頭像 發(fā)表于 07-17 18:02 ?3175次閱讀