我想做一个模块,执行值的二进制补码,如果msb是1.它工作在节奏,但是当我尝试合成它时,我得到以下错误:错误当试图合成verilog代码
无法测试变量X_parallel
,因为它不在事件表达式中或极性错误。
该模块的代码如下:
module xTwosComp (X_parallel, Clk, Reset, X_pos);
input [13:0] X_parallel;
input Clk, Reset;
//wire X_msb; //was an attempt at fixing the problem
output [13:0] X_pos;
reg [13:0] X_pos;
//assign X_msb=X_parallel[13];//failled attempt at fixing
always @ (posedge Clk or posedge Reset)
begin
if (X_parallel[13]) begin
X_pos = ~(X_parallel) +1;
end else begin
X_pos = X_parallel;
end
end
endmodule