diff --git a/flist/wrapper_ip.flist b/flist/wrapper_ip.flist index 261a85d26d420dd541efefa124e460d0f8da520e..5b84e97733bdc5660ae7536e19b0613835caac1b 100644 --- a/flist/wrapper_ip.flist +++ b/flist/wrapper_ip.flist @@ -25,6 +25,6 @@ $(ACC_WRAPPER_DIR)/hdl/src/wrapper_ahb_packet_deconstructor.sv $(ACC_WRAPPER_DIR)/hdl/src/wrapper_addr_calc.sv $(ACC_WRAPPER_DIR)/hdl/src/wrapper_data_req.sv $(ACC_WRAPPER_DIR)/hdl/src/wrapper_ahb_reg_interface.sv -$(ACC_WRAPPER_DIR)/hdl/src/wrapper_ahb_vr_interface.sv +// $(ACC_WRAPPER_DIR)/hdl/src/wrapper_ahb_vr_interface.sv $(ACC_WRAPPER_DIR)/hdl/src/wrapper_packet_construct.sv $(ACC_WRAPPER_DIR)/hdl/src/wrapper_packet_deconstruct.sv diff --git a/flow/stimgen.py b/flow/stimgen.py index 960ed3e16febdfc0690ac744b03b4ccb2d3f7b3c..561b02f5bb97ed1ce3fa7d5bffeaeaa1e0acdd8d 100644 --- a/flow/stimgen.py +++ b/flow/stimgen.py @@ -205,6 +205,6 @@ if __name__ == "__main__": accelerator_input_size = 0x0000_0800 accelerator_output_address = 0x6001_0800 accelerator_output_size = 0x0000_0800 - stim_file = os.environ["ACC_ENGINE_DIR"] + "/simulate/stimulus/system/" + "input_data_32bit_stim.csv" - ref_file = os.environ["ACC_ENGINE_DIR"] + "/simulate/stimulus/system/" + "output_hash_32bit_ref.csv" + stim_file = os.environ["SOC_TOP_DIR"] + "/wrapper/stimulus/" + "input_block_32bit_stim.csv" + ref_file = os.environ["SOC_TOP_DIR"] + "/wrapper/stimulus/" + "output_hash_32bit_ref.csv" stimulus_generation(stim_file, ref_file, accelerator_input_address, accelerator_input_size, accelerator_output_address, accelerator_output_size) \ No newline at end of file diff --git a/hdl/src/wrapper_addr_calc.sv b/hdl/src/wrapper_addr_calc.sv index b91c39be935e2904b9eb673d3115d92f2073ad71..85e14cd63428236ff6e197e0a311787180a0cf9b 100644 --- a/hdl/src/wrapper_addr_calc.sv +++ b/hdl/src/wrapper_addr_calc.sv @@ -11,7 +11,10 @@ module wrapper_addr_calc #( //parameter for address width parameter ADDRWIDTH=11, - parameter PACKETWIDTH=256 + parameter PACKETWIDTH=256, + localparam PACKETBYTES = (PACKETWIDTH+7)/8, // Number of Bytes in Packet + localparam PACKETBYTEWIDTH = $clog2(PACKETBYTES), // Number of Bits to represent Bytes in Packet + localparam PACKETSPACEWIDTH = ADDRWIDTH-PACKETBYTEWIDTH // Number of Bits to represent all Packets in Address Space )( // Number of Packets in Current Block input logic [PACKETSPACEWIDTH:0] block_packet_count, @@ -20,9 +23,7 @@ module wrapper_addr_calc #( output logic [ADDRWIDTH-1:0] block_addr ); - localparam PACKETBYTES = (PACKETWIDTH+7)/8; // Number of Bytes in Packet - localparam PACKETBYTEWIDTH = $clog2(PACKETBYTES); // Number of Bits to represent Bytes in Packet - localparam PACKETSPACEWIDTH = ADDRWIDTH-PACKETBYTEWIDTH; // Number of Bits to represent all Packets in Address Space + logic [ADDRWIDTH-1:0] block_byte_count; // Number of Bytes taken up by Block logic [ADDRWIDTH:0] end_word_addr; // First Address at start of next region diff --git a/hdl/src/wrapper_ahb_packet_deconstructor.sv b/hdl/src/wrapper_ahb_packet_deconstructor.sv index 5afb2e0ae72f7a95b39be79152d7aa1d088fd603..7d3fee28420c0fbdd995a5057c9c47fa891e6773 100644 --- a/hdl/src/wrapper_ahb_packet_deconstructor.sv +++ b/hdl/src/wrapper_ahb_packet_deconstructor.sv @@ -11,7 +11,9 @@ module wrapper_ahb_packet_deconstructor #( //parameter for address width parameter ADDRWIDTH=11, - parameter PACKETWIDTH=256 + parameter PACKETWIDTH=256, + localparam PACKETBYTEWIDTH = $clog2(PACKETWIDTH/8), // Number of Bytes in Packet + localparam PACKETSPACEWIDTH = ADDRWIDTH-PACKETBYTEWIDTH // Number of Bits to represent all Packets in Address Space )( input logic hclk, // clock input logic hresetn, // reset @@ -43,8 +45,7 @@ module wrapper_ahb_packet_deconstructor #( output logic [ADDRWIDTH-1:0] block_read_addr ); - localparam PACKETBYTEWIDTH = $clog2(PACKETWIDTH/8); // Number of Bytes in Packet - localparam PACKETSPACEWIDTH = ADDRWIDTH-PACKETBYTEWIDTH; // Number of Bits to represent all Packets in Address Space + // Register Interface Connections logic [ADDRWIDTH-1:0] addr; diff --git a/hdl/src/wrapper_packet_construct.sv b/hdl/src/wrapper_packet_construct.sv index 238b5eef30cce764cdeda5da79d3648ebd471ccc..88b1ce0c67d3ed2cbedf895d73f817ea140cbae9 100644 --- a/hdl/src/wrapper_packet_construct.sv +++ b/hdl/src/wrapper_packet_construct.sv @@ -106,11 +106,11 @@ always_ff @(posedge hclk or negedge hresetn) 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 - packet_data_last <= prev_packet_addr_last; - // Take Valid High - packet_data_valid <= 1'b1; + // packet_data <= const_buffer; // Write out Previous value of construction buffer + // // Calculate Last Flag on previous address + // packet_data_last <= prev_packet_addr_last; + // // Take Valid High + // packet_data_valid <= 1'b1; // Clear Construction Buffer const_buffer <= {PACKETWIDTH{1'b0}}; end diff --git a/hdl/src/wrapper_packet_deconstruct.sv b/hdl/src/wrapper_packet_deconstruct.sv index 0a0b76299a529307a6fe5a2738236bd1382c1b77..fb63bcc090b85f26460c10d0484e8a08ce5bd5f0 100644 --- a/hdl/src/wrapper_packet_deconstruct.sv +++ b/hdl/src/wrapper_packet_deconstruct.sv @@ -11,7 +11,9 @@ //----------------------------------------------------------------------------- module wrapper_packet_deconstruct #( parameter ADDRWIDTH=11, - parameter PACKETWIDTH=256 + parameter PACKETWIDTH=256, + localparam PACKETBYTEWIDTH = $clog2(PACKETWIDTH/8), // Number of Bytes in Packet + localparam PACKETSPACEWIDTH = ADDRWIDTH-PACKETBYTEWIDTH // Number of Bits to represent all Packets in Address Space )( input logic hclk, // clock input logic hresetn, // reset @@ -39,8 +41,7 @@ module wrapper_packet_deconstruct #( output logic deconstructor_ready ); -localparam PACKETBYTEWIDTH = $clog2(PACKETWIDTH/8); // Number of Bytes in Packet -localparam PACKETSPACEWIDTH = ADDRWIDTH-PACKETBYTEWIDTH; // Number of Bits to represent all Packets in Address Space + // Create Deconstruction Buffer logic [(PACKETWIDTH/32)-1:0][31:0] deconst_buf;