Skip to content

Commit

Permalink
Fix configurable top level bugs and integrate CI flow. (#2)
Browse files Browse the repository at this point in the history
* Bump dependencies and align testbench with new Cheshire JTAG tasks.

* Fix connections.

* Align cache-enable CSR with OpenHW recent changes...

* Add draft CI flow.

* Use normal printf in `Helloworld`.

* Update nonfree rules.

* Fix parameter declaration in L2 Ecc asyncronoys buses.

* Fix PULP cluster EOC and busy enable connections.

* Update nonfree.

* Bump nonfree.

* Bump nonfree to copy uImage in dedicated `astral` folder.

* Apply suggestions from code review

Co-authored-by: Michael Rogenmoser <[email protected]>

---------

Co-authored-by: Yvan Tortorella <[email protected]>
Co-authored-by: Michael Rogenmoser <[email protected]>
  • Loading branch information
3 people authored and Victor Isachi committed May 27, 2024
1 parent 073c713 commit 75a72b0
Show file tree
Hide file tree
Showing 5 changed files with 17 additions and 8 deletions.
12 changes: 11 additions & 1 deletion Bender.lock
Original file line number Diff line number Diff line change
Expand Up @@ -113,7 +113,7 @@ packages:
Git: https://github.com/AlSaqr-platform/can_bus.git
dependencies: []
cheshire:
revision: d6274a52dab68d12765b64d670d528774eb36c2c
revision: 6d389373df6b54c09888f89411b7e231d2430722
version: null
source:
Git: https://github.com/pulp-platform/cheshire.git
Expand Down Expand Up @@ -169,8 +169,13 @@ packages:
dependencies:
- hci
common_cells:
<<<<<<< HEAD
revision: f4d6406070d8e7767e4e9a433f11b039859f03a1
version: null
=======
revision: 13f28aa0021fc22c0d01a12d618fda58d2c93239
version: 1.33.0
>>>>>>> 4c563a2 (Fix configurable top level bugs and integrate CI flow. (#2))
source:
Git: https://github.com/pulp-platform/common_cells.git
dependencies:
Expand Down Expand Up @@ -441,8 +446,13 @@ packages:
- register_interface
- tech_cells_generic
register_interface:
<<<<<<< HEAD
revision: ae616e5a1ec2b41e72d200e5ab09c65e94aebd3d
version: 0.4.4
=======
revision: e25b36670ff7aab3402f40efcc2b11ee0f31cf19
version: 0.4.3
>>>>>>> 4c563a2 (Fix configurable top level bugs and integrate CI flow. (#2))
source:
Git: https://github.com/pulp-platform/register_interface.git
dependencies:
Expand Down
2 changes: 1 addition & 1 deletion Bender.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ package:
dependencies:
register_interface: { git: https://github.com/pulp-platform/register_interface.git, version: 0.4.3 }
axi: { git: https://github.com/pulp-platform/axi.git, version: 0.39.1 }
cheshire: { git: https://github.com/pulp-platform/cheshire.git, rev: d6274a52dab68d12765b64d670d528774eb36c2c } # branch: idma-rebase
cheshire: { git: https://github.com/pulp-platform/cheshire.git, rev: 6d389373df6b54c09888f89411b7e231d2430722 } # branch: astral-new
hyperbus: { git: https://github.com/pulp-platform/hyperbus.git, rev: f039e601c8b6590181734e6d26ff8b77aa380412 } # branch: chi/add_fsm_with_Tcsh
dyn_mem: { git: https://github.com/pulp-platform/dyn_spm.git, rev: 480590062742230dc9bd4050358a15b4747bdf34 } # branch: main
safety_island: { git: https://github.com/pulp-platform/safety_island.git, rev: aaef55c798ab53560faaf451a86668fa1e6d0f3b } # branch: carfield
Expand Down
3 changes: 2 additions & 1 deletion carfield.mk
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ include $(CAR_ROOT)/bender-safed.mk
######################

CAR_NONFREE_REMOTE ?= [email protected]:astral/astral-nonfree.git
CAR_NONFREE_COMMIT ?= 6c6b2064e03cccf54c70cb9d754ec112a43332b1 # branch: master
CAR_NONFREE_COMMIT ?= 711d0097

## @section Carfield platform nonfree components
## Clone the non-free verification IP for Carfield. Some components such as CI scripts and ASIC
Expand All @@ -57,6 +57,7 @@ CAR_NONFREE_COMMIT ?= 6c6b2064e03cccf54c70cb9d754ec112a43332b1 # branch: master
car-nonfree-init:
git clone $(CAR_NONFREE_REMOTE) $(CAR_ROOT)/nonfree
cd $(CAR_ROOT)/nonfree && git checkout $(CAR_NONFREE_COMMIT)
#cd nonfree/intel16 && icdesign intel16 -update all -nogui

-include $(CAR_ROOT)/nonfree/nonfree.mk

Expand Down
4 changes: 1 addition & 3 deletions hw/carfield.sv
Original file line number Diff line number Diff line change
Expand Up @@ -668,7 +668,7 @@ for (genvar i=0; i<NumSyncRegSlv; i++ ) begin : gen_chs_ext_reg_cut
);
end

// Passsing the `ext_reg_req_cut[CarfieldRegBusSlvIdx.pcrs]` value to the
// Passing the `ext_reg_req_cut[CarfieldRegBusSlvIdx.pcrs]` value to the
// reg_req_i/rsp_o buses results in Questa's `Fatal: Unexpected signal: 11.`
// at compile time. Direct casting 'int(CarfieldRegBusSlvIdx.pcrs) also does
// not work resulting in the ext_reg_rsp_cut bus being all X. The localparam
Expand Down Expand Up @@ -1062,14 +1062,12 @@ if (CarfieldIslandsCfg.l2_port0.enable) begin: gen_l2
.slvport_w_data_i ( axi_slv_ext_w_data [NumL2Ports-1:0] ),
.slvport_w_wptr_i ( axi_slv_ext_w_wptr [NumL2Ports-1:0] ),
.slvport_w_rptr_o ( axi_slv_ext_w_rptr [NumL2Ports-1:0] ),
// verilog_lint: waive-start line-length
.l2_ecc_reg_async_mst_req_i ( ext_reg_async_slv_req_out [EccAsyncIdx] ),
.l2_ecc_reg_async_mst_ack_o ( ext_reg_async_slv_ack_in [EccAsyncIdx] ),
.l2_ecc_reg_async_mst_data_i ( ext_reg_async_slv_data_out[EccAsyncIdx] ),
.l2_ecc_reg_async_mst_req_o ( ext_reg_async_slv_req_in [EccAsyncIdx] ),
.l2_ecc_reg_async_mst_ack_i ( ext_reg_async_slv_ack_out [EccAsyncIdx] ),
.l2_ecc_reg_async_mst_data_o ( ext_reg_async_slv_data_in [EccAsyncIdx] ),
// verilog_lint: waive-stop line-length
.ecc_error_o ( l2_ecc_err )
);
end else begin: gen_no_l2
Expand Down
4 changes: 2 additions & 2 deletions target/sim/src/carfield_tb.sv
Original file line number Diff line number Diff line change
Expand Up @@ -484,8 +484,8 @@ module tb_carfield_soc;
fix.chs_vip.jtag_elf_halt_load(spatzd_preload_elf, spatzd_binary_entry );

// write start address into the csr
$display("[JTAG SPATZD] write the CSR %x of spatz with the entry point %x", SpatzClusterPeriphStartAddr + SpatzClusterPeripheralBootControlOffset, spatzd_binary_entry);
fix.chs_vip.jtag_write_reg32(SpatzClusterPeriphStartAddr + SpatzClusterPeripheralBootControlOffset, spatzd_binary_entry, jtag_check_write);
$display("[JTAG SPATZD] write the CSR %x of spatz with the entry point %x", spatz_cluster_pkg::PeriStartAddr + spatz_cluster_peripheral_reg_pkg::SPATZ_CLUSTER_PERIPHERAL_CLUSTER_BOOT_CONTROL_OFFSET, spatzd_binary_entry);
fix.chs_vip.jtag_write_reg32(spatz_cluster_pkg::PeriStartAddr + spatz_cluster_peripheral_reg_pkg::SPATZ_CLUSTER_PERIPHERAL_CLUSTER_BOOT_CONTROL_OFFSET, spatzd_binary_entry, jtag_check_write);

// Set interrupt on mailbox mailbox id MBOX_SPATZD_CORE0_ID and MBOX_SPATZD_CORE1_ID
spatzd_reg_value = 64'h1;
Expand Down

0 comments on commit 75a72b0

Please sign in to comment.