2015-05-26 38 views
0

我不確定以下是Verilog中的有效代碼。更具體地說,可以一個一個case語句使用一個整數作爲條件,如:可以在verilog中的case語句中使用整數嗎?

input [2:0]W; 
integer k=1; 
output [7:0]Y; 
case (W) 
k:y[k]=1; 
endcase 
+0

這是一個編譯錯誤,我嘗試了2個模擬器。你爲什麼認爲你需要這樣的事情? – toolic

+0

爲什麼你需要整數? – inye

+0

你究竟想要完成什麼? – Qiu

回答

0

在貼出的問題你的輸出Y是大寫的,在分配y是小寫的,一旦這種被解決的案例陳述不能獨立存在,他們需要在一個始終或初始塊內。

例如:

always @* begin 
    case (W) 
    k: y[k]=1; 
    endcase 
end 

一個整數僅僅是一個32(或64)位REG。語法沒有什麼不同,使用整數而不是reg。

相關問題