Skip to content

Commit

Permalink
Merge pull request #19 from micprog/bender_int
Browse files Browse the repository at this point in the history
Added Bender.yml file, bugfix, update icache_mp_128_pf and cluster_peripherals
  • Loading branch information
OttG authored Dec 4, 2020
2 parents 69bca05 + 7f8ba06 commit 339c2b8
Show file tree
Hide file tree
Showing 5 changed files with 111 additions and 26 deletions.
70 changes: 70 additions & 0 deletions Bender.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
package:
name: pulp_cluster
authors:
- "Pirmin Vogel <[email protected]>"
- "Angelo Garofalo <[email protected]>"
- "Francesco Conti <[email protected]>"
- "Jie Chen <[email protected]>"

dependencies:
axi2mem: { git: "[email protected]:pulp-platform/axi2mem.git", rev: "6973e0434d26ba578cdb4aa69c26c1facd1a3f15" } # deprecated, replace with axi_to_mem in axi repo
axi2per: { git: "[email protected]:pulp-platform/axi2per.git", version: 1.0.1 }
per2axi: { git: "[email protected]:pulp-platform/per2axi.git", version: 1.0.4 }
axi_size_conv: { git: "[email protected]:pulp-platform/axi_size_conv.git", rev: "5239f87fe772111ec368fb08dbb971516edce097" } # deprecated, replace with axi_dw_converter in axi repo
cluster_interconnect: { git: "[email protected]:pulp-platform/cluster_interconnect.git", version: 1.1.0 }
event_unit_flex: { git: "[email protected]:pulp-platform/event_unit_flex.git", rev: "1.4.1" }
mchan: { git: "[email protected]:pulp-platform/mchan.git", version: 1.2.2 }
hier-icache: { git: "[email protected]:pulp-platform/hier-icache.git", version: 1.2.0 }
icache_mp_128_pf: { git: "[email protected]:pulp-platform/icache_mp_128_pf.git", rev: "6f2e54102001230db9c82432bf9e011842419a48" }
icache_private: { git: "[email protected]:pulp-platform/icache_private.git", rev: "1d4cdbcbec3ab454c09d378fc55631b60450fccd" }
cluster_peripherals: { git: "[email protected]:pulp-platform/cluster_peripherals.git", version: 2.0.0 }
fpu_interco: { git: "[email protected]:pulp-platform/fpu_interco.git", rev: "83c7a1b690bffd006d8b925805aab3c1f8ba9ff1" }
axi: { git: "[email protected]:pulp-platform/axi.git", version: 0.7.1 } # to be updated (now 0.24?)
axi_node: { git: "[email protected]:pulp-platform/axi_node.git", version: 1.1.4 } # deprecated, replaced by axi_xbar (in axi repo)
axi_slice: { git: "[email protected]:pulp-platform/axi_slice.git", version: 1.1.4 } # deprecated, replaced by axi_cut (in axi repo)
axi_slice_dc: { git: "[email protected]:pulp-platform/axi_slice_dc.git", version: 1.1.3 } # deprecated, replaced by axi_cdc (in axi repo)
timer_unit: { git: "[email protected]:pulp-platform/timer_unit.git", version: 1.0.2 }
common_cells: { git: "[email protected]:pulp-platform/common_cells.git", version: 1.13.1 }
tech_cells_generic: { git: "[email protected]:pulp-platform/tech_cells_generic.git", version: 0.2.2 }
riscv: { git: "[email protected]:micprog/cv32e40p.git", rev: "pulpissimo-v3.4.1"} # To be updated to openhwgroup repository
ibex: { git: "[email protected]:lowRISC/ibex.git", rev: "b148f3af51066ac3537c7c6eb4acbc17004bf868" }
scm: { git: "[email protected]:pulp-platform/scm.git", version: 1.0.1}
hwpe-mac-engine: { git: "[email protected]:micprog/hwpe-mac-engine.git", rev: "v1.2-bender" } # To be updated with pulp-platform dependency
# apu_cluster ?
# sp_icache ?

sources:
# Source files grouped in levels. Files in level 0 have no dependencies on files in this
# package. Files in level 1 only depend on files in level 0, files in level 2 on files in
# levels 1 and 0, etc. Files within a level are ordered alphabetically.
# Level 0
- packages/pulp_cluster_package.sv
- rtl/axi2mem_wrap.sv
- rtl/axi2per_wrap.sv
- rtl/axi_slice_wrap.sv
- rtl/cluster_bus_wrap.sv
- rtl/cluster_clock_gate.sv
- rtl/cluster_event_map.sv
- rtl/cluster_interconnect_wrap.sv
- rtl/cluster_timer_wrap.sv
- rtl/dmac_wrap.sv
- rtl/hwpe_subsystem.sv
- rtl/per2axi_wrap.sv
- rtl/per_demux_wrap.sv
- rtl/periph_demux.sv
- rtl/periph_FIFO.sv
- rtl/tcdm_banks_wrap.sv
# Level 1
- rtl/cluster_peripherals.sv
- rtl/core_demux.sv
# Level 2
- target: rtl
defines:
TRACE_EXECUTION: ~
files:
- rtl/core_region.sv
- target: not(rtl)
files:
- rtl/core_region.sv
# Level 3
- rtl/pulp_cluster.sv
34 changes: 17 additions & 17 deletions ips_list.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
#

axi/axi2mem:
commit: d704c8beff729476d1dbfd7b60679afa796947d2
commit: 6973e0434d26ba578cdb4aa69c26c1facd1a3f15
domain: [soc, cluster]
group: pulp-platform
axi/axi2per:
Expand All @@ -16,44 +16,44 @@ axi/per2axi:
domain: [soc, cluster]
group: pulp-platform
axi/axi_size_conv:
commit: tags/pulp-v1.0
commit: 5239f87fe772111ec368fb08dbb971516edce097
domain: [cluster]
group: pulp-platform
group: pulp-platform
cluster_interconnect:
commit: tags/v1.0.3
commit: tags/v1.1.0
domain: [cluster]
group: pulp-platform
group: pulp-platform
event_unit_flex:
commit: v1.4.0
commit: 1.4.1
domain: [cluster]
group: pulp-platform
group: pulp-platform
mchan:
commit: tags/v1.2.1
commit: tags/v1.2.2
domain: [cluster]
group: pulp-platform
group: pulp-platform
hier-icache:
commit: v1.2.0
domain: [cluster]
group: pulp-platform
icache-intc:
commit: tags/v1.0.1
domain: [cluster]
group: pulp-platform
group: pulp-platform
icache_mp_128_pf:
commit: tags/v1.0.0
commit: 6f2e54102001230db9c82432bf9e011842419a48
domain: [cluster]
group: pulp-platform
group: pulp-platform
icache_private:
commit: b14de95b0f70e2edb54ccc7076d5737b41249411
commit: 1d4cdbcbec3ab454c09d378fc55631b60450fccd
domain: [cluster]
group: pulp-platform
group: pulp-platform
cluster_peripherals:
commit: tags/v1.0.1
commit: v2.0.0
domain: [cluster]
group: pulp-platform
fpu_interco:
commit: be7808b84a1dcdb1ecdb6e40814cc4864acd9451
commit: 83c7a1b690bffd006d8b925805aab3c1f8ba9ff1
domain: [soc, cluster]
group: pulp-platform
group: pulp-platform


21 changes: 15 additions & 6 deletions rtl/cluster_peripherals.sv
Original file line number Diff line number Diff line change
Expand Up @@ -145,6 +145,12 @@ module cluster_peripherals

// internal speriph bus to combine multiple plugs to new event unit
XBAR_PERIPH_BUS speriph_slave_eu_comb();

`ifdef FEATURE_ICACHE_STAT
localparam bit FEATURE_STAT = 1'b1;
`else
localparam bit FEATURE_STAT = 1'b0;
`endif

// decide between common or core-specific event sources
generate
Expand Down Expand Up @@ -325,9 +331,10 @@ module cluster_peripherals
`ifdef MP_ICACHE
mp_pf_icache_ctrl_unit
#(
.NB_CACHE_BANKS(NB_CACHE_BANKS),
.NB_CORES(NB_CORES),
.ID_WIDTH(NB_CORES+NB_MPERIPHS)
.NB_CACHE_BANKS ( NB_CACHE_BANKS ),
.NB_CORES ( NB_CORES ),
.ID_WIDTH ( NB_CORES+NB_MPERIPHS ),
.FEATURE_STAT ( FEATURE_STAT )
)
icache_ctrl_unit_i
(
Expand All @@ -342,9 +349,11 @@ module cluster_peripherals
`ifdef SP_ICACHE
sp_icache_ctrl_unit
#(
.NB_CACHE_BANKS(NB_CACHE_BANKS),
.NB_CORES(NB_CORES),
.ID_WIDTH(NB_CORES+NB_MPERIPHS)
.NB_CACHE_BANKS ( NB_CACHE_BANKS ),
.NB_CORES ( NB_CORES ),
.ID_WIDTH ( NB_CORES+NB_MPERIPHS ),
.OFFSET ( 4 ),
.FEATURE_STAT ( FEATURE_STAT )
)
icache_ctrl_unit_i
(
Expand Down
2 changes: 1 addition & 1 deletion rtl/dmac_wrap.sv
Original file line number Diff line number Diff line change
Expand Up @@ -127,7 +127,7 @@ module dmac_wrap

mchan #(

//.NB_CTRLS ( 3 ), // NUMBER OF CONTROL PORTS : CL, FC, DECOMPRESSOR
.NB_CTRLS ( NB_CTRLS ), // NUMBER OF CONTROL PORTS : CL, FC, DECOMPRESSOR
//.NB_TRANSFERS ( 16 ), // NUMBER OF AVAILABLE DMA CHANNELS
//.CTRL_TRANS_QUEUE_DEPTH ( 2 ), // DEPTH OF PRIVATE PER-CORE COMMAND QUEUE (CTRL_UNIT)
//.GLOBAL_TRANS_QUEUE_DEPTH ( 8 ), // DEPTH OF GLOBAL COMMAND QUEUE (CTRL_UNIT)
Expand Down
10 changes: 8 additions & 2 deletions rtl/pulp_cluster.sv
Original file line number Diff line number Diff line change
Expand Up @@ -264,8 +264,13 @@ module pulp_cluster

);

localparam int unsigned NB_L1_CUTS = 16;
localparam int unsigned RW_MARGIN_WIDTH = 4;
localparam int unsigned NB_L1_CUTS = 16;
localparam int unsigned RW_MARGIN_WIDTH = 4;
`ifdef FEATURE_ICACHE_STAT
localparam bit FEATURE_STAT = 1'b1;
`else
localparam bit FEATURE_STAT = 1'b0;
`endif


//********************************************************
Expand Down Expand Up @@ -1184,6 +1189,7 @@ module pulp_cluster
.NB_WAYS ( SET_ASSOCIATIVE ),
.CACHE_SIZE ( CACHE_SIZE ),
.CACHE_LINE ( 1 ),
.FEATURE_STAT ( FEATURE_STAT ),
.AXI_ID ( AXI_ID_OUT_WIDTH ),
.AXI_ADDR ( AXI_ADDR_WIDTH ),
.AXI_USER ( AXI_USER_WIDTH ),
Expand Down

0 comments on commit 339c2b8

Please sign in to comment.