2013-05-05 97 views
1

我正在查找11位輸入端口的前8位。我們如何在verilog中做到這一點?我正在嘗試下面的代碼。但它不工作。如何比較8位輸入端口

 input [0:10]inputport1; 
    if(inputport1==11'b11010101xxx) begin 
    $display ("some value"); 
    end 

 input [0:10]inputport1; 
    if(inputport1[0:8]==9'b11010101) begin 
    $display ("some value"); 
    end 
+0

如果您需要比較4態值('x'),您可能需要案例相等運算符'==='。 – toolic 2013-05-05 12:25:26

+1

這對我有用!非常感謝。 – 2013-05-05 17:42:35

回答

1

端口應(通常)所定義的從MSB到LSB。

input [11:0] x, 
... 
if (x[7:0] == 8'b0000_1111) begin 
+0

我也使用一些不關心的條件,所以===運算符是重要的,這我瞭解上面。感謝幫助。 – 2013-05-05 17:43:17

+0

你的問題沒有提到不在乎,它說前8位。你不得不使用,因爲你的公共汽車是錯誤的。如果你不得不整合其他人的工作,這可能會在以後引起麻煩。它可能會導致錯誤和綜合問題。 – Morgan 2013-05-06 06:43:27

+0

這意味着我需要將我的巴士與[7:0]安排 – 2013-05-06 13:14:24