2012-01-24 41 views
0

我已經運行這段代碼的檢查皮棉(望遠鏡):固定位寬不匹配

 1 module test(
    2   output [7:0] O_O, 
    3   input [7:0] I_1, 
    4   input [7:0] I_2 
    5); 
    6 
    7   wire [14:0] result; 
    8 
    9   assign result = (I_1 + I_2) << 5; 
    10   assign O_O = result[7:0]; 
    11 endmodule 

我得到這樣的警告消息:

Bit-width mismatch in signal assignment (LHS: 'O_O' width 8 should match RHS: '((I_1 + I_2) << 5)' width 14). [Hierarchy:test] 

爲了避免這個警告,我改變了我的代碼像這樣:

 1 module test(
    2   output [7:0] O_O, 
    3   input [7:0] I_1, 
    4   input [7:0] I_2 
    5); 
    6   wire [15:0] result; 
    7 
    8   assign result = (I_1 + I_2) << 5; 
    9   assign O_O = result[7:0]; 
    10 endmodule 

然後得到這個警告信息

Port 'O_O[4:0]' is 'tied-low' 

任何建議來解決這些警告?

回答

1

這是行得通嗎?

1 module test(
2   output [7:0] O_O, 
3   input [7:0] I_1, 
4   input [7:0] I_2 
5); 
6 
7   wire [14:0] result = (I_1 + I_2) << 5; 
8 
9   assign O_O = result[7:0]; 
10 endmodule 
+0

我試了一下,但仍然收到了警告信息:'Port'O_O [4:0]'是'tied-low' – e19293001

+0

您可能需要聯繫[SpyGlass]製造商(http://www.atrenta .com/solutions/spyglass-family.htm)獲得技術支持。 –

1

必須有辦法告訴你的皮棉檢查員,你打算這些位總是零。你必須閱讀文檔以瞭解如何 - 也許可以添加一個特殊的註釋來源,或者單獨的配置文件來說「期望在這行代碼上發出警告」

0

您可以創建一個豁免文件來放棄所有在望遠鏡中的警告。

0

在警告窗口有此警告轉向棄權文件,I,E

.awl 
.swl 

,它會顯示有意添加的東西,需要忽略的選項,不會反映在警告窗口了。