小白求教四位booth乘法器这样写为什么仿真不出来?
module booth(c,date_1,date_2);
input[7:0]date_1,date_2;
output [7:0]c;
reg[8:0]data;
reg[7:0]c;
reg [3:0]a,b;
initial
begin
a=date_1[3:0];
b=date_2[3:0];
end
initial
begin
data={{4{1'b0}},b,{1'b0}};
repeat(4)
begin
if(data[1:0]==00||data[1:0]==11)
data[8:0]=data>>>1;
else if(data[1:0]==10)
begin
data[8:5]=data[8:5]-a;
data=data>>>1;
end
else if(data[1:0]==01)
begin
data[8:5]=data[8:5]+a;
data=data>>>1;
end
end
c=data[8:1];
end
endmodule