標題: 阻塞(=)與非阻塞(<=) [打印本頁]
作者: wangyin 時間: 2014-7-30 14:38
標題: 阻塞(=)與非阻塞(<=)
阻塞賦值操作符用等號(即 =)表示。“阻塞”是指在進程語句(initial和always)中,當前的賦值語句阻斷了其后的語句,也就是說后面的語句必須等到當前的賦值語句執行完畢才能執行。而且阻塞賦值可以看成是一步完成的,即:計算等號右邊的值并同時賦給左邊變量。從理論上講,它與后面的賦值語句只有概念上的先后,而無實質上的延遲。若在RHS 加上延遲,則在延遲期間會阻止賦值語句的執行,延遲后才執行賦值,這種賦值語句是不可綜合的,在需要綜合的模塊設計中不可使用這種風格的代碼。
非阻塞賦值操作符用小于等于號(即 <=)表示。“非阻塞”是指在進程語句(initial和always)中,當前的賦值語句不會阻斷其后的語句。非阻塞語句可以認為是分為兩個步驟進行的:
①計算等號右邊的表達式的值,(我的理解是:在進入進程后,所有的非阻塞語句的右端表達式同時計算,賦值動作只發生在順序執行到當前非阻塞語句那一刻)。
②在本條賦值語句結束時,將等號右邊的值賦給等號左邊的變量。
非阻塞賦值操作只能用于對寄存器類型變量進行賦值,因此只能用在"initial"塊和"always"塊等過程塊中。非阻塞賦值不允許用于連續賦值。
1.jpeg (168.96 KB, 下載次數: 115)
下載附件
2014-7-30 14:45 上傳
掌握可綜合風格的Verilog模塊編程的八個原則會有很大的幫助。在編寫時牢記這八個要點可以為絕大多數的Verilog用戶解決在綜合后仿真中出現的90-100%的冒險競爭問題。
1)時序電路建模時,用非阻塞賦值。
2)鎖存器電路建模時,用非阻塞賦值。
3)用always塊建立組合邏輯模型時,用阻塞賦值。
4)在同一個always塊中建立時序和組合邏輯電路時,用非阻塞賦值。
5)在同一個always塊中不要既用非阻塞賦值又用阻塞賦值。
6)不要在一個以上的always塊中為同一個變量賦值。
7)用$strobe系統任務來顯示用非阻塞賦值的變量值
8) 在賦值時不要使用 #0延遲
歡迎光臨 (http://m.zg4o1577.cn/bbs/) |
Powered by Discuz! X3.1 |
主站蜘蛛池模板:
99re视频精品
|
99精品视频在线观看免费播放
|
亚洲男人网
|
日韩三级在线
|
911网站大全在线观看
|
欧美区精品
|
亚洲欧洲精品在线
|
国产欧美一区二区三区在线看
|
在线午夜电影
|
久草视频在线看
|
午夜影院普通用户体验区
|
亚洲欧美中文日韩在线v日本
|
成人免费在线视频
|
欧美在线视频免费
|
国产乱码精品1区2区3区
|
亚洲欧美国产毛片在线
|
黄色大片网
|
欧美日韩视频在线第一区
|
成人黄色电影在线观看
|
国产高清在线观看
|
狠狠色综合欧美激情
|
heyzo在线|
一级黄色裸片
|
亚洲欧美激情网
|
羞羞的视频免费观看
|
91精品国产手机
|
av中文字幕在线
|
一级黄色毛片免费
|
亚洲欧美在线一区
|
久久美女网
|
www.亚洲免费
|
色网在线观看
|
日韩av免费看
|
国产精品久久久久久久久久久久久久
|
巨大荫蒂视频欧美另类大
|
操视频网站
|
成人二区
|
h视频在线观看免费
|
韩国av网站在线观看
|
欧美精品久久久久久
|
成人影院网站ww555久久精品
|