新手帮助!
时间:10-02
整理:3721RD
点击:
以下verilog 程序 为何在function 下正确,而timing下严重不对啊。指教啊!谢啊!
module case2(clk,in,rdata1,rdata2,count1);
input clk;
input[1:0] in;
output[1:0] rdata1,rdata2;
output count1;
reg[1:0] rdata1,rdata2;
reg count1;
always@(posedge[/email] clk)
begin
case(count1)
1'b0: rdata2[1:0]<=in[1:0];
1'b1: rdata1[1:0]<=in[1:0];
endcase
count1<=~count1;
end
endmodule
module case2(clk,in,rdata1,rdata2,count1);
input clk;
input[1:0] in;
output[1:0] rdata1,rdata2;
output count1;
reg[1:0] rdata1,rdata2;
reg count1;
always@(posedge[/email] clk)
begin
case(count1)
1'b0: rdata2[1:0]<=in[1:0];
1'b1: rdata1[1:0]<=in[1:0];
endcase
count1<=~count1;
end
endmodule
时序怎么不满足了,说清楚点 ,你的程序是不是这样的
module case2(clk,in,rdata1,rdata2,count1);
input clk;
input[1:0] in;
output[1:0] rdata1,rdata2;
output count1;
reg[1:0] rdata1,rdata2;
reg count1;
always@(posedge clk)
begin
case(count1)
1'b0: rdata2[1:0]<=in[1:0];
1'b1: rdata1[1:0]<=in[1:0];
endcase
count1<=~count1;
end
endmodule
