diff --git a/flist/nanosoc/nanosoc_tb.flist b/flist/nanosoc/nanosoc_tb.flist index 4c7b31c13ccc093e4bce684453d2a6e62eb54192..2126968b71248577893fda99e15bf18c8a9c7e6e 100644 --- a/flist/nanosoc/nanosoc_tb.flist +++ b/flist/nanosoc/nanosoc_tb.flist @@ -19,16 +19,17 @@ +incdir+$(SOCLABS_NANOSOC_TECH_DIR)/verif/verilog/ // - Top-level testbench -$(SOCLABS_NANOSOC_TECH_DIR)/verif/verilog/nanosoc_tb.v +$(SOCLABS_NANOSOC_TECH_DIR)/verif/tb/verilog/nanosoc_tb.v // - Testbench components -$(SOCLABS_NANOSOC_TECH_DIR)/verif/verilog/nanosoc_clkreset.v -$(SOCLABS_NANOSOC_TECH_DIR)/verif/verilog/nanosoc_uart_capture.v +$(SOCLABS_NANOSOC_TECH_DIR)/verif/control/verilog/nanosoc_clkreset.v -$(SOCLABS_NANOSOC_TECH_DIR)/verif/verilog/nanosoc_axi_stream_io_8_txd_from_file.v -$(SOCLABS_NANOSOC_TECH_DIR)/verif/verilog/nanosoc_ft1248x1_to_axi_streamio_v1_0.v -$(SOCLABS_NANOSOC_TECH_DIR)/verif/verilog/nanosoc_axi_stream_io_8_rxd_to_file.v -$(SOCLABS_NANOSOC_TECH_DIR)/verif/verilog/nanosoc_track_tb_iostream.v -$(SOCLABS_NANOSOC_TECH_DIR)/verif/verilog/nanosoc_ft1248x1_track.v -$(SOCLABS_NANOSOC_TECH_DIR)/verif/verilog/nanosoc_dma_log_to_file.v -$(SOCLABS_NANOSOC_TECH_DIR)/verif/verilog/nanosoc_acc_log_to_file.v \ No newline at end of file + +$(SOCLABS_NANOSOC_TECH_DIR)/verif/trace/verilog/nanosoc_uart_capture.v +$(SOCLABS_NANOSOC_TECH_DIR)/verif/trace/verilog/nanosoc_axi_stream_io_8_txd_from_file.v +$(SOCLABS_NANOSOC_TECH_DIR)/verif/trace/verilog/nanosoc_ft1248x1_to_axi_streamio_v1_0.v +$(SOCLABS_NANOSOC_TECH_DIR)/verif/trace/verilog/nanosoc_axi_stream_io_8_rxd_to_file.v +$(SOCLABS_NANOSOC_TECH_DIR)/verif/trace/verilog/nanosoc_track_tb_iostream.v +$(SOCLABS_NANOSOC_TECH_DIR)/verif/trace/verilog/nanosoc_ft1248x1_track.v +$(SOCLABS_NANOSOC_TECH_DIR)/verif/trace/verilog/nanosoc_dma_log_to_file.v +$(SOCLABS_NANOSOC_TECH_DIR)/verif/trace/verilog/nanosoc_accelerator_ss_logger.v \ No newline at end of file diff --git a/nanosoc_tech b/nanosoc_tech index 95c9e5c1e07a5442371fbf1a3f2b88d76c62da20..916c2ada153b3b45abf65b88727e3cb9528322a1 160000 --- a/nanosoc_tech +++ b/nanosoc_tech @@ -1 +1 @@ -Subproject commit 95c9e5c1e07a5442371fbf1a3f2b88d76c62da20 +Subproject commit 916c2ada153b3b45abf65b88727e3cb9528322a1 diff --git a/system/src/accelerator_subsystem.v b/system/src/accelerator_subsystem.v index c07da89b17630514c41dd803519dce191071a593..6e68edad48b81fb3e96af758649229329eaf826c 100644 --- a/system/src/accelerator_subsystem.v +++ b/system/src/accelerator_subsystem.v @@ -1,5 +1,5 @@ //----------------------------------------------------------------------------- -// SoC Labs Basic Example Accelerator Wrapper +// SoC Labs Accelerator Subsystem for SecWorks AES-128 Accelerator // A joint work commissioned on behalf of SoC Labs; under Arm Academic Access license. // // Contributors @@ -11,46 +11,44 @@ //----------------------------------------------------------------------------- module accelerator_subsystem #( - parameter SYS_ADDR_W=32, - parameter SYS_DATA_W=32, - parameter AHBADDRWIDTH=16, - parameter INPACKETWIDTH=128, - parameter CFGSIZEWIDTH=64, - parameter CFGSCHEMEWIDTH=2, - parameter OUTPACKETWIDTH=128, - parameter CFGNUMIRQ=4 - ) ( - input wire HCLK, // Clock - input wire HRESETn, // Reset + parameter SYS_ADDR_W = 32, + parameter SYS_DATA_W = 32, + parameter ACC_ADDR_W = 16, + parameter IRQ_NUM = 4 +) ( + input wire HCLK, // Clock + input wire HRESETn, // Reset - // AHB connection to Initiator - input wire HSEL, - input wire [SYS_ADDR_W-1:0] HADDR, - input wire [1:0] HTRANS, - input wire [2:0] HSIZE, - input wire [3:0] HPROT, - input wire HWRITE, - input wire HREADY, - input wire [SYS_DATA_W-1:0] HWDATA, + // AHB connection to Initiator + input wire HSEL, + input wire [SYS_ADDR_W-1:0] HADDR, + input wire [1:0] HTRANS, + input wire [2:0] HSIZE, + input wire [3:0] HPROT, + input wire HWRITE, + input wire HREADY, + input wire [SYS_DATA_W-1:0] HWDATA, - output wire HREADYOUT, - output wire HRESP, - output wire [SYS_DATA_W-1:0] HRDATA, + output wire HREADYOUT, + output wire HRESP, + output wire [SYS_DATA_W-1:0] HRDATA, - // Data Request Signal to DMAC - output wire [1:0] EXP_DRQ, - input wire [1:0] EXP_DLAST, - - // Interrupts - output wire [CFGNUMIRQ-1:0] EXP_IRQ - - ); + // Data Request Signal to DMAC + output wire [1:0] EXP_DRQ, + input wire [1:0] EXP_DLAST, + + // Interrupts + output wire [IRQ_NUM-1:0] EXP_IRQ +); + //-------------------------------------- + // AES Accelerator Wrapper + //-------------------------------------- soclabs_ahb_aes128_ctrl u_exp_aes128 ( .ahb_hclk (HCLK), .ahb_hresetn (HRESETn), .ahb_hsel (HSEL), - .ahb_haddr16 (HADDR[AHBADDRWIDTH-1:0]), + .ahb_haddr16 (HADDR[ACC_ADDR_W-1:0]), .ahb_htrans (HTRANS), .ahb_hwrite (HWRITE), .ahb_hsize (HSIZE), @@ -61,9 +59,9 @@ module accelerator_subsystem #( .ahb_hreadyout (HREADYOUT), .ahb_hresp (HRESP), .drq_ipdma128 (EXP_DRQ[0]), - .dlast_ipdma128 (1'b0), + .dlast_ipdma128 (EXP_DLAST[0]), .drq_opdma128 (EXP_DRQ[1]), - .dlast_opdma128 (1'b0), + .dlast_opdma128 (EXP_DLAST[1]), .irq_key128 (EXP_IRQ[0]), .irq_ip128 (EXP_IRQ[1]), .irq_op128 (EXP_IRQ[2]),