女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

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

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

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

SystemVerilog:處理信號雙驅(qū)動問題解析

sanyue7758 ? 來源:處芯積律 ? 2023-10-13 14:53 ? 次閱讀

1.前言

最近幫朋友搞定一個小問題,記錄一下。不啰嗦,直接上結(jié)論:當某個信號出現(xiàn)多于一個驅(qū)動源的時候,或者某個信號是雙向(inout)的時候,都需要使用wire來完成線網(wǎng)連接。具體用法就是聲明某個信號為wire sigal_a;或者wire logic signal_a;就可以了。注意直接聲明為logic signal_a;是不行的,會報類似如下的錯誤:xmelab: *E,ICDCBA: Illegal combination of driver and output clockvar to variable 'signal_a' detected (output clockvar found in ......).

2. 實例代碼

776401b4-6910-11ee-939d-92fbcf53809c.png

interface test_if(input clk);
  //var logic multi_drv_sig;//code bug
  logic multi_drv_sig;//code bug
  //wire logic multi_drv_sig;//ok
  //wire multi_drv_sig;//ok


  clocking cb @(posedge clk);
    inout multi_drv_sig;
  endclocking


  modport modp_0(output multi_drv_sig);
  modport modp_1(input multi_drv_sig);
endinterface


module test();


test_if test_if0();


assign test_if0.modp_1.multi_drv_sig=0;
endmodule

3.Makefile腳本

all:clean
  xrun -sv -64bit -access rwc -top test ./*.sv
clean:
  rm -rf *.d *.history *.log
4.仿真結(jié)果

77841e18-6910-11ee-939d-92fbcf53809c.png

5.報錯信息查詢

如下圖所示,查詢報錯信息的含義,xrun甚至還給出了解決方案,通過添加工具提供的選項-warn_multiple_driver的確可以將這個*E的Error降為Warning,但是這不是問題的根源。

77a0912e-6910-11ee-939d-92fbcf53809c.png

6. 問題的根源

如下圖所示,第4行和第5行的用法都是對的,第2行和第3行的用法都是錯誤的。

77b7907c-6910-11ee-939d-92fbcf53809c.png

7. Summary& Conclusion

在SystemVerilog中,類型可以分為線網(wǎng)(net)和變量(variable)。線網(wǎng)的賦值設(shè)定與Verilog的要求相同,即線網(wǎng)賦值需要使用連續(xù)賦值語句(assign),而不應(yīng)該出現(xiàn)在過程塊(initial/always)中;相比于線網(wǎng)驅(qū)動的限制,變量(var)類型的驅(qū)動要求就沒有那么多了,如logic [15:0] signal_b,該變量默認類型是var(變量),對它可以使用連續(xù)賦值或過程賦值。

簡言之,可以在module中的數(shù)值存儲和線網(wǎng)連接,多數(shù)情況下使用logic類型變量,而很少有只能使用wire的情況。那么什么時候需要使用wire類型呢?就是本文的這種scenario:當某個信號出現(xiàn)多于一個驅(qū)動源的時候,或者某個信號是雙向(inout)的時候,都需要使用wire來完成線網(wǎng)連接。具體用法就是聲明某個信號為wire sigal_a;或者wire logic signal_a;就可以了。

編輯:黃飛

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

    關(guān)注

    48

    文章

    1055

    瀏覽量

    103903
  • Verilog
    +關(guān)注

    關(guān)注

    28

    文章

    1365

    瀏覽量

    111792
  • Makefile
    +關(guān)注

    關(guān)注

    1

    文章

    125

    瀏覽量

    19572

原文標題:SystemVerilog中如何處理信號的雙驅(qū)動問題

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

收藏 人收藏

    評論

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

    RCC電路原理與設(shè)計及問題解析

    RCC電路原理與設(shè)計及問題解析 RCC電路,單端反激式的一種,結(jié)構(gòu)簡單,主要應(yīng)用在1~200W,首先變壓器設(shè)計最為重要,RCC電路結(jié)構(gòu)主要包括: 1.
    發(fā)表于 12-14 10:31 ?2.7w次閱讀

    C語言習(xí)題解析

    C語言習(xí)題解析
    發(fā)表于 03-11 15:20

    round robin 的 systemverilog 代碼

    大家好,我對一個 round robin 的 systemverilog 代碼有疑惑。https://www.edaplayground.com/x/2TzD代碼第49和54行是怎么解析呢 ?
    發(fā)表于 03-14 19:16

    UART串口與LWIP以太網(wǎng)問題解析

    技術(shù)三千問:【技術(shù)三千問】之《玩轉(zhuǎn)ART-Pi》,看這篇就夠了!干貨匯總【技術(shù)三千問】之《AT組件問題匯總與解析》,干貨匯總!【技術(shù)三千問】之《UART串口問題解析》,干貨匯總!【技術(shù)三千問】之
    發(fā)表于 08-05 06:54

    電子設(shè)計競賽賽題解析

    電子設(shè)計競賽賽題解析 東西是非常不錯的,可供參考.
    發(fā)表于 12-17 12:43 ?0次下載

    電視卡常見問題解決方法(驅(qū)動問題等)

    電視卡常見問題解決方法(驅(qū)動問題等) 比如有時發(fā)現(xiàn)裝不上驅(qū)動,請查看自已的系統(tǒng)是否已經(jīng)裝了DirectX9.0C,如果沒有,可以到
    發(fā)表于 12-06 08:37 ?2865次閱讀

    運算放大器容性負載驅(qū)動問

    運算放大器容性負載驅(qū)動問題 Grayson King,Analog Devices Inc. 問:為什么我要考慮驅(qū)動容性負載問題?
    發(fā)表于 01-04 17:42 ?4007次閱讀
    運算放大器容性負載<b class='flag-5'>驅(qū)動問</b>題

    蘇泊爾微電腦電磁爐故障問題解析

    蘇泊爾微電腦電磁爐故障問題解析,本內(nèi)容介紹了蘇泊爾電磁爐故障問題的分析
    發(fā)表于 05-11 15:14 ?7002次閱讀
    蘇泊爾微電腦電磁爐故障問<b class='flag-5'>題解析</b>

    自動控制原理習(xí)題解析

    自動控制原理習(xí)題解析,有需要的下來看看。
    發(fā)表于 05-05 14:06 ?0次下載

    風(fēng)力擺控制系統(tǒng)賽題解析

    風(fēng)力擺控制系統(tǒng)賽題解析
    發(fā)表于 12-09 23:00 ?31次下載

    電工學(xué)知識要點與習(xí)題解析

     《高等學(xué)校優(yōu)秀教材?電工學(xué)知識要點與習(xí)題解析》為配合秦曾煌教授主編的《電工學(xué)》(第六版)而編寫的輔導(dǎo)書?!峨姽W(xué)知識要點與習(xí)題解析/高等學(xué)校優(yōu)秀教材輔導(dǎo)叢書》主要包括知識要點、書后思考題解答、書后
    發(fā)表于 01-10 11:48 ?59次下載
    電工學(xué)知識要點與習(xí)<b class='flag-5'>題解析</b>

    解決高頻MEMS測試驅(qū)動問題的方案是什么

    ,驅(qū)動電壓需要達到150Vpp,目前市面上的標準信號發(fā)生器輸出電壓低、電壓小于10Vpp帶負載能力弱,輸出電流是mA級別。無法解決高壓大功率驅(qū)動問題。 如何解決高頻MEMS測試驅(qū)動問
    發(fā)表于 12-08 11:32 ?903次閱讀

    樊昌信《通信原理》真題解析及講義電子版

    樊昌信《通信原理》真題解析及講義電子版
    發(fā)表于 09-06 14:40 ?0次下載

    光耦失效的幾種常見問題解析

    光耦失效的幾種常見問題解析? 光耦失效是一個常見的問題,特別是在電子設(shè)備中經(jīng)常使用光耦進行隔離和信號傳輸?shù)那闆r下。下面將詳細介紹一些光耦失效的常見問題以及解析。 1. 輸出信號弱或無輸
    的頭像 發(fā)表于 12-25 14:30 ?8231次閱讀

    USB驅(qū)動問題:設(shè)備無法識別的全面指南!

    今天我把USB驅(qū)動問題,關(guān)于設(shè)備無法識別方面做一個全面指南供大家參考。連接USB無法識別模組設(shè)備,是不是驅(qū)動問題?今天就一起來聊聊如何排查解決。
    的頭像 發(fā)表于 11-26 12:35 ?1064次閱讀
    USB<b class='flag-5'>驅(qū)動問</b>題:設(shè)備無法識別的全面指南!