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

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

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

$monitor和$strobe有何差異?

sanyue7758 ? 來源:處芯積律 ? 2024-01-22 09:38 ? 次閱讀

在編寫測試平時,經(jīng)常會用到$monitor和$strobe監(jiān)測某些信號,并且使用格式上與$display比較類似,但是它們之間還是存在差異的,它們在當(dāng)前仿真時間槽(time-slot)中被執(zhí)行的區(qū)間是不同的。$display發(fā)生在Active區(qū),而$monitor和$strobe發(fā)生在當(dāng)前仿真的最后時刻,即post-pone區(qū),并且一個time-slot是存在很多區(qū)域的,因此,它們在觀測具體信號值時是存在一定差異的。

【示例】

c5037c4c-b8c5-11ee-8b88-92fbcf53809c.png

【仿真結(jié)果】

c507adf8-b8c5-11ee-8b88-92fbcf53809c.png

出現(xiàn)示例中的結(jié)果,是因?yàn)榉亲枞x值的LHS更新發(fā)生在Non-Active區(qū),而此時的$display已經(jīng)執(zhí)行完畢,所以$display觀測不到sig更新后的值,但是$monitor發(fā)生在Post-pone區(qū),晚于Non-Active區(qū)執(zhí)行,所以可以觀測到sig更新后的值。因此,$display和$monitor觀測到sig的值不同。在實(shí)際使用過程中,具體使用哪一種監(jiān)測方式則根據(jù)兩種監(jiān)測執(zhí)行的區(qū)間特點(diǎn)自行選擇,$strobe與$monitor在本例中監(jiān)測到的結(jié)果是一樣都發(fā)生在Post-pone區(qū),執(zhí)行類似,在此不贅述。那么既然$strobe和$monitor執(zhí)行效果一樣,都發(fā)生在Post-pone區(qū),那么為什么還要同時存在呢?兩者之間有些什么差異呢?下面我們就兩者之間的一些差異進(jìn)行示例說明。

1 $strobe的執(zhí)行

$strobe只有在被調(diào)用時才會對其中的參數(shù)進(jìn)行監(jiān)測,此時的參數(shù)所具有的值可以認(rèn)為是其所在當(dāng)前時間槽(time-slot)中的最終值。另外,$strobe在設(shè)計中可以多次被調(diào)用,且多次調(diào)用相互之間不產(chǎn)生任何影響。

【示例】

c516c716-b8c5-11ee-8b88-92fbcf53809c.png

【仿真結(jié)果】

c51a7622-b8c5-11ee-8b88-92fbcf53809c.png

示例中,在always過程塊中,當(dāng)敏感時間列表中的信號發(fā)生一次變化,always過程塊中的$strobe就會執(zhí)行一次,并且輸出此次執(zhí)行時對應(yīng)參數(shù)的穩(wěn)定值。在initial過程塊中,等待4個時間單位后$strobe執(zhí)行,并且輸出此時對應(yīng)參數(shù)的穩(wěn)定值,而在sig變化的其他時刻,該語句并未執(zhí)行(因?yàn)閕nitial塊只執(zhí)行了一次,并且完成了他的歷史使命)??梢?strobe的執(zhí)行取決于對其的調(diào)用,它的執(zhí)行并不取決于其中參數(shù)的變化,同時可見該語句在代碼中可以被多次調(diào)用,并且多次調(diào)用之間不會產(chǎn)生相互影響。

2 $monitor的執(zhí)行

$monitor和$strobe雖然它們監(jiān)測的參數(shù)都是當(dāng)前時間槽該參數(shù)最后的穩(wěn)定值,但兩者在具體執(zhí)行上還是有一定差別的,下面通過示例說明$monitor的用法。

【示例】

c51f3770-b8c5-11ee-8b88-92fbcf53809c.png

【仿真結(jié)果】

c52a7ca2-b8c5-11ee-8b88-92fbcf53809c.png

示例中,$monitor位于過程塊中,sig從0時刻開始,每發(fā)生一次變化,$monitor就會執(zhí)行一次,可見$monitor會持續(xù)監(jiān)測其中參數(shù)的變化,只要其中參數(shù)發(fā)生變化,$monitor就會執(zhí)行。那么是不是其中的任何參數(shù)的變化都會觸發(fā)$monitor的執(zhí)行,例如,可不可以使用$monitor監(jiān)測時間的變化呢?

【示例】

c52e75be-b8c5-11ee-8b88-92fbcf53809c.png

【仿真結(jié)果】

c53bb1f2-b8c5-11ee-8b88-92fbcf53809c.png

示例中,隨著仿真時間的推進(jìn),$monitor僅執(zhí)行了一次。這主要是因?yàn)樵?monitor中,如果監(jiān)測的參數(shù)是$time、$stime和$realtime這些系統(tǒng)函數(shù)的返回值,$monitor對這些時間參數(shù)的變化并不敏感。

另外,當(dāng)$monitor中具有多個參數(shù)同時發(fā)生變化時,這是因?yàn)檫@些參數(shù)在當(dāng)前時間槽中調(diào)用$monitor時都已經(jīng)處于穩(wěn)定狀態(tài)了,所以此時$monitor只調(diào)用一次,如下所示。

【示例】

c53fd188-b8c5-11ee-8b88-92fbcf53809c.png

【仿真結(jié)果】

c5434e94-b8c5-11ee-8b88-92fbcf53809c.png

那么,我們可不可以使用多個$monitor監(jiān)測信號的變化呢?此時$monitor會如何執(zhí)行呢?我們看看下面的示例。

【示例】

c549b9fa-b8c5-11ee-8b88-92fbcf53809c.png

【仿真結(jié)果】

c54da984-b8c5-11ee-8b88-92fbcf53809c.png

示例中,使用了兩個$monitor分別檢測sig1和sig2信號的變化,但是仿真結(jié)果僅有一個$monitor執(zhí)行。這主要是因?yàn)?monitor執(zhí)行上的一個特點(diǎn),在任意仿真時刻,只有一個$monitor系統(tǒng)任務(wù)處于激活執(zhí)行狀態(tài),至于多個$monitor執(zhí)行的順序,一般則取決于哪一個$monitor最近一次被調(diào)用。除此之外,$nonitor還提供了其他的配置系統(tǒng)任務(wù),可以通過這些系統(tǒng)任務(wù)實(shí)現(xiàn)對于$monitor執(zhí)行的控制。

【示例】

c554c89a-b8c5-11ee-8b88-92fbcf53809c.png

【仿真結(jié)果】

c55f9946-b8c5-11ee-8b88-92fbcf53809c.png

示例中,$monitoroff和$monitoron之間sig的變化并沒有觸發(fā)$monitor系統(tǒng)任務(wù)的執(zhí)行。這主要是因?yàn)?monitoroff會不使能當(dāng)前所有激活的$monitor任務(wù)對于其中參數(shù)的監(jiān)測,所以在$monitoroff之后,$monitor監(jiān)測的參數(shù)如果發(fā)生變化,將不會觸發(fā)$monitor的執(zhí)行。$monitoron的效果與$monitoroff剛好相反,主要用于再次啟動激活$monitor任務(wù),在$monitoron執(zhí)行后,如果$monitor監(jiān)測的參數(shù)發(fā)生變化,則會觸發(fā)$monitor的執(zhí)行。

綜上所述,$strobe和$monitor執(zhí)行的主要特定如下:

?$strobe和$monitor監(jiān)測的相關(guān)變量的值,都是這些變量在當(dāng)前時間槽中的最終穩(wěn)定值;

?$strobe只有在被調(diào)用時才會對其中的參數(shù)進(jìn)行監(jiān)測,而$monitor只要監(jiān)測的參數(shù)發(fā)生變化,$monitor就會執(zhí)行;

?代碼中可以存在多個$strobe,并且多個$strobe的調(diào)用相互之間不影響;

?在$strobe和$monitorr中,如果監(jiān)測的參數(shù)是$time、$stime和$realtime這些系統(tǒng)函數(shù)的返回值,$strobe和$monitor對這些時間參數(shù)的變化并不敏感

?在任意仿真時刻,只有一個$monitor系統(tǒng)任務(wù)處于激活執(zhí)行狀態(tài),至于多個$monitor執(zhí)行的順序,一般則取決于哪一個$monitor最近一次被調(diào)用;

?可以通過$monitoroff和$monitoron對$monitor的執(zhí)行進(jìn)行監(jiān)測;

審核編輯:黃飛

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

    關(guān)注

    1

    文章

    62

    瀏覽量

    28155
  • 配置系統(tǒng)
    +關(guān)注

    關(guān)注

    0

    文章

    7

    瀏覽量

    6465
  • Strobe
    +關(guān)注

    關(guān)注

    0

    文章

    2

    瀏覽量

    6304

原文標(biāo)題:$monitor和$strobe都看的是啥

文章出處:【微信號:處芯積律,微信公眾號:處芯積律】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    請問2538和2530的性能差異哪些?特別的,在收發(fā)數(shù)據(jù)的帶寬上有差別?

    本帖最后由 一只耳朵怪 于 2018-5-24 14:45 編輯 你好,請問2538和2530的性能差異哪些?特別的,在收發(fā)數(shù)據(jù)的帶寬上有差別!多謝!
    發(fā)表于 05-22 06:14

    單端信號和差分信號差異?

    單端信號和差分信號會有差異嗎? 他們差異,還有在數(shù)據(jù)傳輸中 為什么使用LVDS或M-LVDS?
    發(fā)表于 03-09 08:40

    數(shù)碼調(diào)變技術(shù)與多工技術(shù)差異

    數(shù)碼調(diào)變技術(shù)是什么?什么是多工技術(shù)?數(shù)碼調(diào)變技術(shù)與多工技術(shù)差異?
    發(fā)表于 05-18 06:14

    DVB-H和韓國T-DMB地面數(shù)字廣播電視技術(shù)差異?

    DVB-H和韓國T-DMB地面數(shù)字廣播電視技術(shù)差異?開展手機(jī)電視業(yè)務(wù)面臨哪些問題?
    發(fā)表于 05-26 07:07

    無刷直流電機(jī)(BLDC)與永磁同步電機(jī)(PMSM)結(jié)構(gòu)及其物理特性差異?

    無刷直流電機(jī)(BLDC)與永磁同步電機(jī)(PMSM)結(jié)構(gòu)及其物理特性差異?無刷直流電機(jī)(BLDC)與永磁同步電機(jī)(PMSM)數(shù)學(xué)模型的區(qū)別在哪?無刷直流電機(jī)(BLDC)與永磁同步電機(jī)(PMSM)的調(diào)制模式
    發(fā)表于 07-28 07:11

    STM32的三種Boot模式差異

    STM32的三種Boot模式差異呢?如何去驗(yàn)證這種差異呢?
    發(fā)表于 11-26 07:15

    基于寄存器與基于固件庫的stm32 LED流水燈編程方式差異

    如何去實(shí)現(xiàn)基于寄存器的stm32 LED流水燈程序呢?基于寄存器與基于固件庫的stm32 LED流水燈編程方式差異?
    發(fā)表于 12-06 07:24

    基于標(biāo)準(zhǔn)庫函數(shù)與基于HAL庫函數(shù)的stm32編程方式差異

    Arduino IDE開發(fā)的優(yōu)點(diǎn)是什么?安裝Arduino IDE及程序目的是什么?基于標(biāo)準(zhǔn)庫函數(shù)與基于HAL庫函數(shù)的stm32編程方式差異
    發(fā)表于 12-06 07:17

    Qt ECG Monitor是什么?功能

    Qt ECG Monitor是由Qt-UI開發(fā)和維護(hù)的嵌入式床旁心電監(jiān)護(hù)儀界面項(xiàng)目。項(xiàng)目提供C++/Python語言,基于Qt5下原生QWidget編譯開發(fā),包含以下功能界面:包含Windows
    發(fā)表于 12-30 06:34

    放大器中,大信號和小信號電壓增益差異?

    問題:放大器中,大信號和小信號電壓增益差異
    發(fā)表于 11-15 07:43

    CCTV MOnitor與PC Monitor差異及區(qū)別

    CCTV MOnitor與PC Monitor差異 一般PC用Monitor的解像度(ResoIution)較 高,且會隨著使用者的VGA卡(顯示介面卡)與顯 示程式而改變。常見
    發(fā)表于 12-29 11:26 ?1082次閱讀

    磷酸鐵鋰電池與錳酸鋰電池差異?

    磷酸鐵鋰電池與錳酸鋰電池差異? 磷酸鐵鋰電池與錳酸鋰電池對照分析 1、電器
    發(fā)表于 10-27 09:43 ?3796次閱讀

    陶瓷電容溫度系數(shù)淺析:1類和2類電容差異?如何標(biāo)識?

    陶瓷電容溫度系數(shù)淺析:1類和2類電容差異?如何標(biāo)識?
    的頭像 發(fā)表于 12-08 17:30 ?1029次閱讀
    陶瓷電容溫度系數(shù)淺析:1類和2類電容<b class='flag-5'>有</b><b class='flag-5'>何</b><b class='flag-5'>差異</b>?如何標(biāo)識?

    平面型VDMOS和超結(jié)型VDMOS的雪崩耐量差異以及如何選擇?

    平面型VDMOS和超結(jié)型VDMOS的雪崩耐量差異以及如何選擇? 平面型VDMOS和超結(jié)型VDMOS是常見的金屬氧化物半導(dǎo)體場效應(yīng)管(MOSFETs)的不同設(shè)計類型。它們在結(jié)構(gòu)上存在一些細(xì)微的
    的頭像 發(fā)表于 11-24 14:15 ?1090次閱讀

    LED洗墻燈跟線條燈的區(qū)別,使用的芯片差異

    LED洗墻燈跟線條燈的區(qū)別,使用的芯片差異?
    的頭像 發(fā)表于 01-05 14:30 ?1399次閱讀