verilog if語句中,如果else後什麼都不做,可以直

2022-01-15 03:24:09 字數 3374 閱讀 7772

1樓:匿名使用者

http://zhidao.baidu.

com/question/1510800942812293380.html?push=keyword&entry=qb_home_keyword

關於verilog中 if else 的問題

2樓:還不快去吃飯

沒有其他功能,如果else後不寫賦值語句的話這個else寫不寫都一樣,都會綜合出帶反饋的d觸發

器,因為到達這條語句時,在其他條件都沒滿足的條件下暫存器需要保持原值。不過如果你在這個else後給暫存器賦值比如

else sw_state<=1'b0;

就不會有帶反饋的d觸發器了

3樓:侑子

if(midwdmidwd)&&(wen

希望對你能有所幫助。

關於verilog if語句問題

4樓:匿名使用者

if 不能這麼用,一般的情況下必須寫在一個過程賦值模組中。

比如:reg b;

[email protected](a)

begin

if(a==0)

b = 1;

else

b =0;

end或者用一個連續賦值

比如:wire b;

assign b = (a)?0:1;

這兩種方法都可以滿足你要的邏輯

verilog裡面else if語句最多能有多少個

5樓:匿名使用者

理論上可以無限多個,但若是同步時序邏輯電路,就需要考慮到實際電路的延遲,如果所使用的電路綜合器優化效能不夠強大,把這段**變成了一連串有先後關係的電路,那麼最後一個else的輸出結果就有可能不滿足時鐘對於建立時間和保持時間的要求,產生亞穩態。

所以,在**層面保證電路的結構優化也是必要的

pl/sql 的if else語句後必須有賦值語句麼

6樓:匿名使用者

if else只是一個判斷語句,用法正確就可以了,沒有必要一定跟賦值語句。

delcare

a number:=0;

b number:=1;

begin

if a>b then

dbms_output.putline('a>b');

else

dbms_output.putline('a

7樓:這個問題超帥

在t-sql語言中,賦值運算子必須與( )語句和( )語句配合使用?

其中一個 是 set

另一個是 宣告變數吧...

verilog中if else中能套if else嗎,有啥錯誤啊,為什麼??? case中能套if else嗎 case中能套case嗎

8樓:匿名使用者

你說的這幾種都是可以互相巢狀的

其中if else之間互相巢狀如果if和else不是一一配對的話需要用begin end來控制配對,如果配對不足則會報錯。如果if後面沒有else與其配對,則自動寄存

case之間的巢狀是根據endcase來進行判斷一個case的結束的你的程式出錯的原因是if else的應該是配對問題,如果if 和else數量不等的話,需要用begin end來控制你的if或者else何時結束

建議:最好不要出現if if這種語句,一是不容易理解,二是容易出錯

9樓:匿名使用者

if else中絕對能巢狀的。

case中這個還真沒見過。

10樓:百度網友

case好像不能巢狀if else,別的應該都可以。你出錯估計是因為begin end沒用好

11樓:風雷小草

當然可以。你出現錯誤是因為巢狀不完整。

12樓:匿名使用者

為什麼不能哦?出錯肯定是因為你錯了。呵呵 。

verilog中if else和case語句有什麼區別

13樓:匿名使用者

功能差不多,if else有優先順序,case沒有,一般類別少的用if else,類別多用case。

例如:if (data == 1)

out <= 2'b01;

else if (data1 == 1)

out <= 2'b10;

else

out <= 2'b00;

case (addr[3:0])

4'h0: out = 0;

4'h1: out = 1;

4'h2: out = 2;

4'h3: out = 3;

4'h4: out = 4;

default: out = 0;

endcase

verilog語言 if 語句 15

14樓:百度網友

三種形式的if語句:

1)if(表示式)語句。如

if(a>b)

out1 = int1;

2)if(表示式)

語句;else

語句;如

if(a>b)

out1 = int1;

else

out1 = int2;

3)if(表示式1)

語句1;

else if(表示式2) 語句2;

else if(表示式3) 語句3;

…………………...

else if(表示式m) 語句m;

else 語句n;

條件語句必須在過程塊語句中是用(initial和always語句),除了這兩個語句引導的bedin end塊中可以編寫條件語句外,模組中的其他地方都不能編寫。

15樓:手機使用者

這4種情況表達方式是:

if(a>0)

if(b>0) ....... //對應的是a>0,b>0;

else ....... // 對應的是a>0,b<=0;

else

if(b>0)........//對應的是a<0,b>0;

else .........//對應的是a<0,b<0;

不知道你能不能看懂,是使用多重if..else...巢狀用法

16樓:匿名使用者

if(rxd_state[8:0] = 9'd0)應該是 if(rxd_state[8:0] == 9'd0)吧,還有是否是需要用阻塞式呢