Skip to content

Commit

Permalink
ariane_testharness/ariane_xilinx: Fix AXI ID width (#813)
Browse files Browse the repository at this point in the history
- Fix the AXI ID width for the CLINT (previously `4`, now `5`)
- Parametrise the CLINT's AXI types
- Deprecate `axi_[master|slave]_connect` and move to AXI assign macros,
  as they allow arbitrary AXI types

Signed-off-by: Nils Wistoff <[email protected]>
  • Loading branch information
niwis authored Feb 6, 2022
1 parent da74358 commit 741e821
Show file tree
Hide file tree
Showing 12 changed files with 58 additions and 332 deletions.
4 changes: 0 additions & 4 deletions Bender.yml
Original file line number Diff line number Diff line change
Expand Up @@ -153,10 +153,6 @@ sources:
- common/submodules/common_cells/src/stream_demux.sv
- common/submodules/common_cells/src/stream_arbiter.sv
- common/submodules/common_cells/src/stream_arbiter_flushable.sv
- common/local/util/axi_master_connect.sv
- common/local/util/axi_slave_connect.sv
- common/local/util/axi_master_connect_rev.sv
- common/local/util/axi_slave_connect_rev.sv
- corev_apu/axi/src/axi_cut.sv
- corev_apu/axi/src/axi_join.sv
- corev_apu/axi/src/axi_delayer.sv
Expand Down
12 changes: 8 additions & 4 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -70,10 +70,6 @@ src/fpu/src/fpu_div_sqrt_mvp/hdl/defs_div_sqrt_mvp.sv ==> core/fpu/src/fpu_div_s
src/common_cells/src/stream_mux.sv ==> common/submodules/common_cells/src/stream_mux.sv
src/common_cells/src/stream_demux.sv ==> common/submodules/common_cells/src/stream_demux.sv
src/common_cells/src/exp_backoff.sv ==> common/submodules/common_cells/src/exp_backoff.sv
src/util/axi_master_connect.sv ==> common/local/util/axi_master_connect.sv
src/util/axi_slave_connect.sv ==> common/local/util/axi_slave_connect.sv
src/util/axi_master_connect_rev.sv ==> common/local/util/axi_master_connect_rev.sv
src/util/axi_slave_connect_rev.sv ==> common/local/util/axi_slave_connect_rev.sv
src/axi/src/axi_cut.sv ==> corev_apu/axi/src/axi_cut.sv
src/axi/src/axi_join.sv ==> corev_apu/axi/src/axi_join.sv
src/axi/src/axi_delayer.sv ==> corev_apu/axi/src/axi_delayer.sv
Expand Down Expand Up @@ -107,6 +103,14 @@ src/fpu/src/fpu_div_sqrt_mvp/hdl/defs_div_sqrt_mvp.sv ==> core/fpu/src/fpu_div_s
tb/common/SimJTAG.sv ==> corev_apu/tb/common/SimJTAG.sv
```

#### Removed standalone components
```
src/util/axi_master_connect.sv
src/util/axi_slave_connect.sv
src/util/axi_master_connect_rev.sv
src/util/axi_slave_connect_rev.sv
```

### 4.2.0 - 2019-06-04

### Added
Expand Down
4 changes: 0 additions & 4 deletions Flist.ariane
Original file line number Diff line number Diff line change
Expand Up @@ -67,10 +67,6 @@ include/instr_tracer_pkg.sv
src/util/instr_tracer_if.sv
src/util/instr_tracer.sv
src/util/sram.sv
src/util/axi_master_connect.sv
src/util/axi_master_connect_rev.sv
src/util/axi_slave_connect.sv
src/util/axi_slave_connect_rev.sv
src/fpga-support/rtl/SyncSpRamBeNx64.sv
src/dromajo_ram.sv
src/axi_mem_if/src/axi2mem.sv
Expand Down
4 changes: 0 additions & 4 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -196,10 +196,6 @@ src := $(filter-out core/ariane_regfile.sv, $(wildcard core/*.sv))
common/submodules/common_cells/src/exp_backoff.sv \
common/submodules/common_cells/src/addr_decode.sv \
common/submodules/common_cells/src/stream_register.sv \
common/local/util/axi_master_connect.sv \
common/local/util/axi_slave_connect.sv \
common/local/util/axi_master_connect_rev.sv \
common/local/util/axi_slave_connect_rev.sv \
corev_apu/axi/src/axi_cut.sv \
corev_apu/axi/src/axi_join.sv \
corev_apu/axi/src/axi_delayer.sv \
Expand Down
68 changes: 0 additions & 68 deletions common/local/util/axi_master_connect.sv

This file was deleted.

68 changes: 0 additions & 68 deletions common/local/util/axi_master_connect_rev.sv

This file was deleted.

70 changes: 0 additions & 70 deletions common/local/util/axi_slave_connect.sv

This file was deleted.

67 changes: 0 additions & 67 deletions common/local/util/axi_slave_connect_rev.sv

This file was deleted.

8 changes: 5 additions & 3 deletions corev_apu/clint/axi_lite_interface.sv
Original file line number Diff line number Diff line change
Expand Up @@ -16,13 +16,15 @@
module axi_lite_interface #(
parameter int unsigned AXI_ADDR_WIDTH = 64,
parameter int unsigned AXI_DATA_WIDTH = 64,
parameter int unsigned AXI_ID_WIDTH = 10
parameter int unsigned AXI_ID_WIDTH = 10,
parameter type axi_req_t = ariane_axi::req_t,
parameter type axi_resp_t = ariane_axi::resp_t
) (
input logic clk_i, // Clock
input logic rst_ni, // Asynchronous reset active low

input ariane_axi::req_t axi_req_i,
output ariane_axi::resp_t axi_resp_o,
input axi_req_t axi_req_i,
output axi_resp_t axi_resp_o,

output logic [AXI_ADDR_WIDTH-1:0] address_o,
output logic en_o, // transaction is valid
Expand Down
12 changes: 8 additions & 4 deletions corev_apu/clint/clint.sv
Original file line number Diff line number Diff line change
Expand Up @@ -20,13 +20,15 @@ module clint #(
parameter int unsigned AXI_ADDR_WIDTH = 64,
parameter int unsigned AXI_DATA_WIDTH = 64,
parameter int unsigned AXI_ID_WIDTH = 10,
parameter int unsigned NR_CORES = 1 // Number of cores therefore also the number of timecmp registers and timer interrupts
parameter int unsigned NR_CORES = 1, // Number of cores therefore also the number of timecmp registers and timer interrupts
parameter type axi_req_t = ariane_axi::req_t,
parameter type axi_resp_t = ariane_axi::resp_t
) (
input logic clk_i, // Clock
input logic rst_ni, // Asynchronous reset active low
input logic testmode_i,
input ariane_axi::req_t axi_req_i,
output ariane_axi::resp_t axi_resp_o,
input axi_req_t axi_req_i,
output axi_resp_t axi_resp_o,
input logic rtc_i, // Real-time clock in (usually 32.768 kHz)
output logic [NR_CORES-1:0] timer_irq_o, // Timer interrupts
output logic [NR_CORES-1:0] ipi_o // software interrupt (a.k.a inter-process-interrupt)
Expand Down Expand Up @@ -63,7 +65,9 @@ module clint #(
axi_lite_interface #(
.AXI_ADDR_WIDTH ( AXI_ADDR_WIDTH ),
.AXI_DATA_WIDTH ( AXI_DATA_WIDTH ),
.AXI_ID_WIDTH ( AXI_ID_WIDTH )
.AXI_ID_WIDTH ( AXI_ID_WIDTH ),
.axi_req_t ( axi_req_t ),
.axi_resp_t ( axi_resp_t )
) axi_lite_interface_i (
.clk_i ( clk_i ),
.rst_ni ( rst_ni ),
Expand Down
Loading

0 comments on commit 741e821

Please sign in to comment.