色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創(chuàng)作中心

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

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

Systemverilog中的Driving Strength講解

冬至子 ? 來(lái)源:CSDN ? 作者:谷公子 ? 2023-06-14 15:50 ? 次閱讀

在systemverilog中,net用于對(duì)電路中連線進(jìn)行建模,driving strength(驅(qū)動(dòng)強(qiáng)度)可以讓net變量值的建模更加精確。net變量擁有4態(tài)邏輯值(0,1,z,x),它的driving strength有(supply,strong,pull,weak,highz)。net的值由連接到net的driver源(驅(qū)動(dòng)源)決定的,這些driver源可以是連續(xù)賦值語(yǔ)句(例如assign),也可以是門級(jí)建模原語(yǔ)(例如門級(jí)or或and或cmos等)。

在每個(gè)Δ仿真周期中,仿真器通過查看net上所有驅(qū)動(dòng)源的邏輯值(logical value)和強(qiáng)度值(strength level)來(lái)決定該net的邏輯值和強(qiáng)度值。如果net沒有驅(qū)動(dòng)源,那么它的值將是’z’態(tài)。如果net只有1個(gè)驅(qū)動(dòng)源,那么它的邏輯值和強(qiáng)度值等于驅(qū)動(dòng)源的值和強(qiáng)度。但是,如果net有多個(gè)驅(qū)動(dòng)源,那么需要比較它們的強(qiáng)度值了,強(qiáng)度最大的驅(qū)動(dòng)源將成功驅(qū)動(dòng)net。不過如果有多個(gè)強(qiáng)度最大的驅(qū)動(dòng)源,但它們的邏輯值不一樣的話,net的邏輯值將會(huì)是’x’態(tài),強(qiáng)度值是最強(qiáng)的strength。

需要注意的是driving strength是用于gate輸出和連續(xù)賦值語(yǔ)句輸出的(assign)。對(duì)于非net類型的多驅(qū)動(dòng),仿真工具會(huì)報(bào)多驅(qū)的編譯錯(cuò)誤。

Systemverilog的driving strength level(驅(qū)動(dòng)強(qiáng)度)有以下幾種:

image.png

上述strength level可以歸為3類:

  • Driving strength:supply,strong,pull和weak
  • Charge storage strength:large,medium和small
  • High impedance:highz

Charge storage strength只用于trireg類型的net。

Driving strength的語(yǔ)法如下:

drive_strength ::=
  ( strength0 , strength1 )
| ( strength1 , strength0 )
| ( strength0 , highz1 )
| ( strength1 , highz0 )
| ( highz0 , strength1 )
| ( highz1 , strength0 )
strength0 ::= supply0 | strong0 | pull0 | weak0
strength1 ::= supply1 | strong1 | pull1 | weak1
charge_strength ::= ( small ) | ( medium ) | ( large )

strength0表示當(dāng)驅(qū)動(dòng)源驅(qū)動(dòng)net為0時(shí)的驅(qū)動(dòng)強(qiáng)度。Strength1表示當(dāng)驅(qū)動(dòng)源驅(qū)動(dòng)net為1時(shí)的驅(qū)動(dòng)強(qiáng)度。

net默認(rèn)的strength level是(strong0, strong1)。對(duì)于pullup和pulldown gate,默認(rèn)的strength level是pull。trireg默認(rèn)的strength level是medium。Supply net的默認(rèn)strength level是supply。另外從上面syntax看出,(highz1, highz0)和(highz0, highz1)的strength level組合是非法的。

結(jié)合上面的理論講解,給出1個(gè)例子如下:

module strength;
  
  logic i1, i2;
  wire logic out;
  
  assign (supply1, weak0) out = i1;
  assign (pull1, supply0) out = i2;
  
  initial begin
    i1 = 1'b0;
    i2 = 1'b0;
    $strobe("[time:%0t],i1:%b, i2:%b, out:%b, out_strength:%v", $time, i1, i2, out, out);
    #1ns;
    i1 = 1'b0;
    i2 = 1'b1;
    $strobe("[time:%0t],i1:%b, i2:%b, out:%b, out_strength:%v", $time, i1, i2, out, out);
    #1ns;
    i1 = 1'b1;
    i2 = 1'b0;
    $strobe("[time:%0t],i1:%b, i2:%b, out:%b, out_strength:%v", $time, i1, i2, out, out);
    #1ns;
    i1 = 1'b1;
    i2 = 1'b1;
    $strobe("[time:%0t],i1:%b, i2:%b, out:%b, out_strength:%v", $time, i1, i2, out, out);
  end
  
endmodule

使用Questasim仿真輸出的log結(jié)果為:

# [time:0],i1=0, i2=0, out=0, out_strength=Su0
# [time:1],i1=0, i2=1, out=1, out_strength=Pu1
# [time:2],i1=1, i2=0, out=x, out_strength=SuX
# [time:3],i1=1, i2=1, out=1, out_strength=Su1

"assign (supply1, weak0) out = i1"行給net類型的out驅(qū)動(dòng)i1的值,其中strength1為supply1(level=7),strength0為weak0(level=3)。12行給net類型的out驅(qū)動(dòng)i2的值,其中strength1為pull1(level=5),strength為supply0(level=7)。

" assign (pull1, supply0) out = i2"行給net類型的out驅(qū)動(dòng)i2的值,其中strength1為pull1(level=5),strength為supply0(level=7)。

image.png

Driving strength還有很多其它的組合,大家可以復(fù)制上述代碼,并修改assign out語(yǔ)句的strength0與strength1去產(chǎn)生其它的組合并分析結(jié)果。

另外,大家可能好奇如何打印出net變量的strength level?在systemverilog中提供了%v格式化打印。%v的輸出是3個(gè)字符的string類型,前2個(gè)字符指示strength類型,第三個(gè)字符指示當(dāng)前邏輯值。比如上述log中的Su0或Pu1或SuX或Su1。

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

    關(guān)注

    54

    文章

    8646

    瀏覽量

    149378
  • 仿真器
    +關(guān)注

    關(guān)注

    14

    文章

    1034

    瀏覽量

    85119
  • Verilog語(yǔ)言
    +關(guān)注

    關(guān)注

    0

    文章

    113

    瀏覽量

    8512
收藏 0人收藏

    評(píng)論

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

    SystemVerilog的Virtual Methods

    SystemVerilog多態(tài)能夠工作的前提是父類的方法被聲明為virtual的。
    發(fā)表于 11-28 11:12 ?844次閱讀

    SystemVerilog的“const”類屬性

    SystemVerilog可以將類屬性聲明為常量,即“只讀”。目的就是希望,別人可以讀但是不能修改它的值。
    發(fā)表于 11-29 10:25 ?2330次閱讀

    SystemVerilog的聯(lián)合(union)介紹

    SystemVerilog ,聯(lián)合只是信號(hào),可通過不同名稱和縱橫比來(lái)加以引用。
    的頭像 發(fā)表于 10-08 15:45 ?1828次閱讀
    <b class='flag-5'>SystemVerilog</b><b class='flag-5'>中</b>的聯(lián)合(union)介紹

    protel的“have no driving source”問題

    畫原理圖的時(shí)候,在編譯時(shí)出現(xiàn)警告:have no driving source,請(qǐng)問有高手能否指點(diǎn)一下,如何解決
    發(fā)表于 06-14 11:20

    systemverilog學(xué)習(xí)教程

    systemverilog的一些基本語(yǔ)法以及和verilog語(yǔ)言之間的區(qū)別。
    發(fā)表于 04-01 14:24

    SystemVerilog Assertion Handbo

    SystemVerilog Assertion Handbook1 ROLE OF SYSTEMVERILOG ASSERTIONSIN A VERIFICATION METHODOLOGY
    發(fā)表于 07-22 14:08 ?188次下載

    SystemVerilog的斷言手冊(cè)

    SystemVerilog Assertion Handbook1 ROLE OF SYSTEMVERILOG ASSERTIONSIN A VERIFICATION METHODOLOGY
    發(fā)表于 07-22 14:12 ?20次下載

    SystemVerilog$cast的應(yīng)用

    SystemVerilog casting意味著將一種數(shù)據(jù)類型轉(zhuǎn)換為另一種數(shù)據(jù)類型。在將一個(gè)變量賦值給另一個(gè)變量時(shí),SystemVerilog要求這兩個(gè)變量具有相同的數(shù)據(jù)類型。
    的頭像 發(fā)表于 10-17 14:35 ?3336次閱讀

    SystemVerilog的操作方法

    SystemVerilog提供了幾個(gè)內(nèi)置方法來(lái)支持?jǐn)?shù)組搜索、排序等功能。
    的頭像 發(fā)表于 10-31 10:10 ?3446次閱讀

    SystemVerilog可以嵌套的數(shù)據(jù)結(jié)構(gòu)

    SystemVerilog除了數(shù)組、隊(duì)列和關(guān)聯(lián)數(shù)組等數(shù)據(jù)結(jié)構(gòu),這些數(shù)據(jù)結(jié)構(gòu)還可以嵌套。
    的頭像 發(fā)表于 11-03 09:59 ?1931次閱讀

    SystemVerilog的package

    SystemVerilog packages提供了對(duì)于許多不同數(shù)據(jù)類型的封裝,包括變量、task、function、assertion等等,以至于可以在多個(gè)module中共享。
    的頭像 發(fā)表于 11-07 09:44 ?1473次閱讀

    SystemVerilog的struct

    SystemVerilog“struct”表示相同或不同數(shù)據(jù)類型的集合。
    的頭像 發(fā)表于 11-07 10:18 ?2818次閱讀

    SystemVerilog的Shallow Copy

    SystemVerilog的句柄賦值和對(duì)象復(fù)制的概念是有區(qū)別的。
    的頭像 發(fā)表于 11-21 10:32 ?1124次閱讀

    SystemVerilog的Semaphores

    SystemVerilogSemaphore(旗語(yǔ))是一個(gè)多個(gè)進(jìn)程之間同步的機(jī)制之一,這里需要同步的原因是這多個(gè)進(jìn)程共享某些資源。
    的頭像 發(fā)表于 12-12 09:50 ?3734次閱讀

    帶你了解SystemVerilog的關(guān)聯(lián)數(shù)組

    SystemVerilog,我們知道可以使用動(dòng)態(tài)數(shù)組實(shí)現(xiàn)數(shù)組元素個(gè)數(shù)的動(dòng)態(tài)分配,即隨用隨分
    的頭像 發(fā)表于 06-09 09:46 ?8266次閱讀
    帶你了解<b class='flag-5'>SystemVerilog</b><b class='flag-5'>中</b>的關(guān)聯(lián)數(shù)組
    主站蜘蛛池模板: 花蝴蝶在线高清视频观看免费播放 | 亚洲精品无夜久久久久久久久 | 久久伊人久久 | 99国产热视频在线观看 | 久草色在线 | 国产午夜人成在线视频麻豆 | 红色机尾快播 | 亚洲免费每日在线观看 | 一道本无吗d d在线播放 | 国产午夜婷婷精品无码A片 国产午夜视频在永久在线观看 | 午夜一级毛片看看 | 一本大道熟女人妻中文字幕在线 | 亚洲精品无码不卡 | 一本色道久久88综合日韩精品 | 国产69精品久久久久观看软件 | 成人综合在线观看 | 亚洲欧美自拍明星换脸 | 最近中文字幕完整版高清 | 波多野结衣教师系列6 | 亚洲日本欧美国产在线视 | 久久成人国产精品一区二区 | jyzzjyzzz视频国产在线观看 | 国产麻豆精品传媒AV国产在线 | 国产99视频精品免费播放 | 美女洗澡脱得一二干净 | 免费精品美女久久久久久久久久 | 神马影院午夜伦理限级 | 99国内偷揿国产精品人妻 | 久久国产亚洲精品AV麻豆 | 欧美高清videosgratis高 | 久久这里只有精品国产精品99 | 女性性纵欲派对 | 神马影院在线eecss伦理片 | 国语自产二区高清国语自产拍 | 国产精品99久久久久久宅男AV | thermo脱色摇床安卓下载 | 亚洲欧洲免费三级网站 | 极品网红液液酱粉嫩福利照子凌酱 | 91情国产l精品国产亚洲区 | 免费在线观看的毛片 | 亚洲人成77777在线视频 |

    電子發(fā)燒友

    中國(guó)電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會(huì)員交流學(xué)習(xí)
    • 獲取您個(gè)性化的科技前沿技術(shù)信息
    • 參加活動(dòng)獲取豐厚的禮品