Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added softmax accelerator #66

Closed
wants to merge 6 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 17 additions & 5 deletions Bender.lock
Original file line number Diff line number Diff line change
Expand Up @@ -52,8 +52,8 @@ packages:
dependencies:
- hci
common_cells:
revision: 0d67563b6b592549542544f1abc0f43e5d4ee8b4
version: 1.35.0
revision: 2bd027cb87eaa9bf7d17196ec5f69864b35b630f
version: 1.32.0
source:
Git: https://github.com/pulp-platform/common_cells.git
dependencies:
Expand Down Expand Up @@ -168,7 +168,7 @@ packages:
dependencies:
- common_cells
neureka:
revision: 14ca68d480350dd53a4b6b601db5eb54954de266
revision: 60c51c0a5f6b30140ca99cc546ddcfde00af0044
version: null
source:
Git: https://github.com/pulp-platform/neureka.git
Expand All @@ -185,7 +185,7 @@ packages:
dependencies:
- axi_slice
redmule:
revision: 60ba008c339ec70b5ffa7120bec2cbf5a8f53c99
revision: 7abb25690090c7f5548a8aa905c7bf0440d4ba6b
version: null
source:
Git: https://github.com/pulp-platform/redmule.git
Expand Down Expand Up @@ -232,6 +232,18 @@ packages:
Git: https://github.com/pulp-platform/scm.git
dependencies:
- tech_cells_generic
softex:
revision: 0fe8b1349ce6f4f05aa63ce65961a87b9c133ae5
version: null
source:
Git: https://github.com/belanoa/softex.git
dependencies:
- common_cells
- fpnew
- hci
- hwpe-ctrl
- hwpe-stream
- ibex
tech_cells_generic:
revision: a9cae21902e75b1434328ecf36f85327ba5717de
version: 0.2.11
Expand All @@ -249,5 +261,5 @@ packages:
revision: cc4068a0ccb7691cd062b809c34b2304e7fbfa36
version: null
source:
Git: https://github.com/yvantor/ibex.git
Git: git@github.com:yvantor/ibex.git
dependencies: []
5 changes: 3 additions & 2 deletions Bender.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,9 @@ dependencies:
register_interface: { git: "https://github.com/pulp-platform/register_interface.git", version: 0.4.4 } # branch: master
common_cells: { git: "https://github.com/pulp-platform/common_cells.git", version: 1.29.0 }
redundancy_cells: { git: "https://github.com/pulp-platform/redundancy_cells.git", rev: c37bdb47339bf70e8323de8df14ea8bbeafb6583 } # branch: astral_rebase
redmule: { git: "https://github.com/pulp-platform/redmule.git", rev: 60ba008c339ec70b5ffa7120bec2cbf5a8f53c99 } # branch: fc/hci-v2.1
neureka: { git: "https://github.com/pulp-platform/neureka.git", rev: 4f201c238c7dd0c1f84306f40d66ebdaa8589307 } # branch: fc/hci-v2.1
redmule: { git: "https://github.com/pulp-platform/redmule.git", rev: 7abb256 } # branch: fc/hci-v2
neureka: { git: "https://github.com/pulp-platform/neureka.git", rev: 60c51c0 } # branch: hci-v2
softex: { git: "https://github.com/belanoa/softex.git" , rev: 0fe8b13 } # branch: master

export_include_dirs:
- include
Expand Down
3 changes: 2 additions & 1 deletion packages/pulp_cluster_package.sv
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,8 @@ package pulp_cluster_package;
// HWPE type
typedef enum byte_t {
REDMULE,
NEUREKA
NEUREKA,
SOFTEX
} hwpe_type_e;

parameter MAX_NUM_HWPES = 8;
Expand Down
23 changes: 21 additions & 2 deletions rtl/hwpe_subsystem.sv
Original file line number Diff line number Diff line change
Expand Up @@ -60,8 +60,9 @@ module hwpe_subsystem
) periph [N_HWPES-1:0] (.clk(clk));

hci_core_intf #(
.DW ( DW ),
.AW ( AW )
.DW ( DW ),
.AW ( AW ),
.EHW ( 0 )
) tcdm [0:N_HWPES-1] (.clk(clk));

for (genvar i = 0; i < N_HWPES; i++) begin : gen_hwpe
Expand Down Expand Up @@ -124,6 +125,24 @@ module hwpe_subsystem
.periph ( periph[i] )
);

end else if (HWPE_CFG.HwpeList[i] == SOFTEX) begin : gen_softex

////////////
// SOFTEX //
////////////

softex_top #(
.DATA_WIDTH ( N_MASTER_PORT*32 ),
.N_CORES ( N_CORES )
) i_softex (
.clk_i ( hwpe_clk[i] ),
.rst_ni ( rst_n ),
.busy_o ( busy[i] ),
.evt_o ( evt[i] ),
.tcdm ( tcdm[i] ),
.periph ( periph[i] )
);

end
end

Expand Down
5 changes: 3 additions & 2 deletions rtl/pulp_cluster.sv
Original file line number Diff line number Diff line change
Expand Up @@ -354,8 +354,9 @@ XBAR_TCDM_BUS s_mperiph_bus();

// cores & accelerators -> log interconnect
hci_core_intf #(
.DW ( Cfg.HwpeNumPorts * DataWidth ),
.AW ( AddrWidth )
.DW ( Cfg.HwpeNumPorts * DataWidth ),
.AW ( AddrWidth ),
.EHW ( 0 )
) s_hci_hwpe [0:0] (
.clk ( clk_i )
);
Expand Down
2 changes: 1 addition & 1 deletion tb/pulp_cluster_tb.sv
Original file line number Diff line number Diff line change
Expand Up @@ -289,7 +289,7 @@ module pulp_cluster_tb;
TcdmSize: 128*1024,
TcdmNumBank: 16,
HwpePresent: 1,
HwpeCfg: '{NumHwpes: 2, HwpeList: {NEUREKA, REDMULE}},
HwpeCfg: '{NumHwpes: 3, HwpeList: {SOFTEX, NEUREKA, REDMULE}},
HwpeNumPorts: 9,
iCacheNumBanks: 2,
iCacheNumLines: 1,
Expand Down