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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4748|回復: 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 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产电影一区二区 | 欧美日韩在线视频一区 | 国产91在线观看 | 久久久精品网站 | 国产美女h视频 | 欧美精品久久久 | 亚洲精品成人av | 三级av在线 | 久久影院一区 | 国产精品美女在线观看 | 久操av在线 | 亚洲免费网站 | 国产精品福利在线观看 | 国产一区二区精 | 一级黄色录像毛片 | 欧美日韩国产传媒 | 欧美日韩亚洲国产 | 久久伊人一区二区 | 天天干天天操天天看 | 男女网站免费 | 天天碰夜夜操 | 国产精品久久 | 在线国产一区二区 | 午夜精品影院 | 免费看91 | 精品久久一区二区 | 老司机狠狠爱 | 天天干天天操天天看 | 国产乱码精品一区二区三区中文 | 亚洲精品日韩在线观看 | 国产一区二区三区视频免费观看 | 二区视频| 日韩久久成人 | 在线区| 99国产精品久久久 | 草久久 | 国产精品美女一区二区 | 国产视频福利在线观看 | 黄色一级毛片免费看 | 中文字幕国产一区 | 亚洲狠狠|