久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4763|回復: 0
收起左側

Verilog中,順序執行與非阻塞賦值

[復制鏈接]
ID:86860 發表于 2015-7-26 02:08 | 顯示全部樓層 |閱讀模式
順序語句是執行完一句再執行下一句,如果有非阻塞就要按照并行處理,再說幾個概念:
并行,順序:verilog主要的模塊之間都是并行執行的,例如各個always之間、always與assign之間、assign之間,如果你在一個always中要對a賦值,而在另一個always中要使用a的值,這時候就要注意了,兩者并行的,處理先后不能確定。你當前處理的a,是這個時鐘被賦值的還是上一時鐘被賦值的,意義可能完全不同,這就是并行需要考慮的問題。
而在always內部,一般使用了begin...end。這里面的內容都是順序執行的,比如b=a; c=b,先執行一條,再執行下一條,那就是c=a了如果里面有兩組if/else,就是先執行前一組,再執行后一組。但是如果是非阻塞,那就要特殊對待,多個非阻塞賦值是在一個塊結束時一起執行的,比如b<=a; c<=b,那就跟之前不同了,當執行c<=b 時b還沒有變化成a的值,因此這個賦值的結果是b被賦值前的值,這兩條語句其實是獨立的、并行的。好處是放得先后順序沒關系,只要在一個塊內,隨便寫。這個不是很好理解,怎么說了begin...end之間是順序,到了非阻塞就又變成并行執行的呢。不好理解也沒辦法, verilog就是這樣,先告訴你是這樣的,然后又告訴你這樣行不通,習慣就好了,另外掌握幾條原則:組合邏輯用阻塞賦值,時序邏輯用非阻塞賦值,同一個模塊中不要既用阻塞又用非阻塞...

回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美久久一区二区 | 黄色三级视频在线观看 | 黄色片免费网站 | 国产亚洲一区二区三区 | 特黄aaaaaaaaa真人毛片 | 超碰免费在线 | 婷婷六月综合 | 欧美一级黄色大片 | av色婷婷 | 免费观看成人 | 国产丝袜一区 | 亚洲国产欧美日韩在线 | 超碰免费在线 | 波多野结衣一区二区三区在线观看 | 操欧美女人| 久久最新网址 | 国产成人小视频 | 国产视频99 | 精品在线播放 | 欲望岛av| 免费网站av| 日韩欧美亚洲 | 手机成人在线视频 | 亚洲第一视频网站 | 成人毛片100免费观看 | 成人久久视频 | 日批视频免费在线观看 | 天天爽天天操 | 亚洲视频在线看 | 可以看毛片的网站 | 国产精品国产精品国产专区不卡 | 天天干天天操天天摸 | 国产乱国产乱300精品 | 理论片中文字幕 | 天天干天天草 | 亚洲欧美日韩色图 | 久久久www成人免费精品 | 可以看毛片的网站 | 97在线免费视频 | 欧美日韩中文字幕在线观看 | 国产一级视频在线观看 |