各位大神 ,我在做FPGA与MCU8位并行通信,自定义协议 ,在Modelsim中仿真能达到要求(如上图) ,但板子上验证时出现了一些问题 。
module talk_to_mcu
(
inclk,rst,csn,data_in,data_out,flag_end
);
input inclk,rst,csn;
input [31:0]data_in;
output [7:0]data_out;
output flag_end;
reg [7:0]data_out;
reg [3:0]cnt;
always @ (posedge inclk or negedge rst)
begin
if (!rst)
begin
data_out<=0;
cnt<=0;
end
else if (csn)
cnt<=0;
else
begin
cnt<=cnt+1'b1;
case (cnt)
4'd0: data_out<={data_in[31],data_in[30:24]};
4'd1: data_out<={data_in[23],data_in[22:16]};
4'd2: data_out<={data_in[15],data_in[14:8]};
4'd3: data_out<={data_in[7],data_in[6:0]};
endcase
end
end
assign flag_end=(cnt==4'd5)?1'b1:1'b0;
endmodule
以上是我的Verilog代码。
为何不能还是不能通信呢?
|