Gast
#676626
Hallo zusammen
Ich hab ein kleines problem:
Ich möchte mit jeder steigenden Flanke von clk1 data_in input in einer
bestimmten speicherregister speichern (insgesamt 7 * 4 Bit zu
enpfangen).
Das Problem wenn ich 7 in den 2 if Anweisungen schreibe bekomme ich gar
nichts in data_out. Aber wenn ich 6 in den 2 if Anweisungen schreibe,
kann ich am Ausgang alle reg_X finden ausser reg_7 der mit mem[6]
verbunden ist.
Hängt das vielleicht von der deklaration vom Speicherregister?
ich brauche eure Hilfe.
MfG
Jimmy
reg [3:0] mem [6:0];
reg [2:0]counter = 3'b000;
always @(posedge clk1) begin
if(counter < 3'd7) begin
mem[counter] <= data_in;
counter <= counter + 3'd1;
end
if(counter == 3'd7) begin
sl_comm_rdy <= 1'b1;
reg_1 <= mem[0];//
reg_2 <= mem[1];//
reg_3 <= mem[2];//
reg_4 <= mem[3];
reg_5 <= mem[4];//
reg_6 <= mem[5];//
reg_7 <= mem[6];
end
always @(posedge clk2) begin
data_out <= reg_7;
end