diff --git a/hdl/src/wrapper_packet_construct.sv b/hdl/src/wrapper_packet_construct.sv index f556605590553ce15cbd10a0b7f79ea808b19c2f..792b7c5c04c3c6e1306b385c59759b25eed1f36c 100644 --- a/hdl/src/wrapper_packet_construct.sv +++ b/hdl/src/wrapper_packet_construct.sv @@ -62,7 +62,7 @@ assign packet_last_word = &addr [PACKETBYTEWIDTH-1:REGDBYTEWIDTH]; assign prev_packet_last_word = &prev_wr_addr [PACKETBYTEWIDTH-1:REGDBYTEWIDTH]; // Packet Address - Address of Packet -logic [ADDRWIDTH-1:PACKETBYTEWIDTH] packet_addr, prev_packet_addr; +logic [ADDRWIDTH-PACKETBYTEWIDTH-1:0] packet_addr, prev_packet_addr; assign packet_addr = addr [ADDRWIDTH-1:PACKETBYTEWIDTH]; assign prev_packet_addr = prev_wr_addr [ADDRWIDTH-1:PACKETBYTEWIDTH]; @@ -97,7 +97,8 @@ always_ff @(posedge hclk or negedge hresetn) begin // If Packet Address Changed - write out value in construction buffer // - The output will get overwritten if the current address also causes generation of packet - if (packet_addr != prev_packet_addr) begin + // - Check that previous address isn't 0 (just out of reset and no packet actually in buffer) + if (packet_addr != prev_packet_addr && (prev_wr_addr != {ADDRWIDTH{1'b0}})) begin // Produce Data Output packet_data <= const_buffer; // Write out Previous value of construction buffer // Calculate Last Flag on previous address diff --git a/socsim b/socsim index 27329d3afac51fbf2762428e12f2635d1137c549..55fae46b24cd1ec6e93347e553ad3d5e88fc0064 160000 --- a/socsim +++ b/socsim @@ -1 +1 @@ -Subproject commit 27329d3afac51fbf2762428e12f2635d1137c549 +Subproject commit 55fae46b24cd1ec6e93347e553ad3d5e88fc0064