Skip to content

Commit 5533991

Browse files
committed
axi_dmac: Default to 64 bit addressing
This commit increases the maximum address width of the DMA AXI interfaces to 64 to enable accessing the upper DDR memory regions of the 64 bit address spaces. Signed-off-by: Ionut Podgoreanu <[email protected]>
1 parent 083d801 commit 5533991

12 files changed

+25
-25
lines changed

docs/regmap/adi_regmap_dmac.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ ENDTITLE
99
REG
1010
0x000
1111
VERSION
12-
Version of the peripheral. Follows semantic versioning. Current version 4.05.64.
12+
Version of the peripheral. Follows semantic versioning. Current version 4.05.65.
1313
ENDREG
1414

1515
FIELD
@@ -25,7 +25,7 @@ RO
2525
ENDFIELD
2626

2727
FIELD
28-
[7:0] 0x00000064
28+
[7:0] 0x00000065
2929
VERSION_PATCH
3030
RO
3131
ENDFIELD

library/axi_dmac/address_generator.v

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
// ***************************************************************************
22
// ***************************************************************************
3-
// Copyright (C) 2014-2024 Analog Devices, Inc. All rights reserved.
3+
// Copyright (C) 2014-2025 Analog Devices, Inc. All rights reserved.
44
//
55
// In this HDL repository, there are many different and unique modules, consisting
66
// of various HDL (Verilog or VHDL) components. The individual modules are
@@ -39,7 +39,7 @@ module address_generator #(
3939

4040
parameter ID_WIDTH = 3,
4141
parameter DMA_DATA_WIDTH = 64,
42-
parameter DMA_ADDR_WIDTH = 32,
42+
parameter DMA_ADDR_WIDTH = 64,
4343
parameter BEATS_PER_BURST_WIDTH = 4,
4444
parameter BYTES_PER_BEAT_WIDTH = $clog2(DMA_DATA_WIDTH/8),
4545
parameter LENGTH_WIDTH = 8,

library/axi_dmac/axi_dmac.v

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
// ***************************************************************************
22
// ***************************************************************************
3-
// Copyright (C) 2014-2024 Analog Devices, Inc. All rights reserved.
3+
// Copyright (C) 2014-2025 Analog Devices, Inc. All rights reserved.
44
//
55
// In this HDL repository, there are many different and unique modules, consisting
66
// of various HDL (Verilog or VHDL) components. The individual modules are
@@ -60,7 +60,7 @@ module axi_dmac #(
6060
parameter DMA_AXI_PROTOCOL_SG = 0,
6161
parameter DMA_TYPE_DEST = 0,
6262
parameter DMA_TYPE_SRC = 2,
63-
parameter DMA_AXI_ADDR_WIDTH = 32,
63+
parameter DMA_AXI_ADDR_WIDTH = 64,
6464
parameter MAX_BYTES_PER_BURST = 128,
6565
parameter FIFO_SIZE = 8, // In bursts
6666
parameter AXI_ID_WIDTH_SRC = 1,

library/axi_dmac/axi_dmac_framelock.v

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
// ***************************************************************************
22
// ***************************************************************************
3-
// Copyright (C) 2024 Analog Devices, Inc. All rights reserved.
3+
// Copyright (C) 2024-2025 Analog Devices, Inc. All rights reserved.
44
//
55
// In this HDL repository, there are many different and unique modules, consisting
66
// of various HDL (Verilog or VHDL) components. The individual modules are
@@ -34,7 +34,7 @@
3434
// ***************************************************************************
3535

3636
module axi_dmac_framelock #(
37-
parameter DMA_AXI_ADDR_WIDTH = 32,
37+
parameter DMA_AXI_ADDR_WIDTH = 64,
3838
parameter BYTES_PER_BEAT_WIDTH_DEST = 3,
3939
parameter BYTES_PER_BEAT_WIDTH_SRC = 3,
4040
parameter FRAMELOCK_MODE = 0, // 0 - MM writer ; 1 - MM reader

library/axi_dmac/axi_dmac_regmap.v

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
// ***************************************************************************
22
// ***************************************************************************
3-
// Copyright (C) 2014-2024 Analog Devices, Inc. All rights reserved.
3+
// Copyright (C) 2014-2025 Analog Devices, Inc. All rights reserved.
44
//
55
// In this HDL repository, there are many different and unique modules, consisting
66
// of various HDL (Verilog or VHDL) components. The individual modules are
@@ -44,7 +44,7 @@ module axi_dmac_regmap #(
4444
parameter BYTES_PER_BURST_WIDTH = 7,
4545
parameter DMA_TYPE_DEST = 0,
4646
parameter DMA_TYPE_SRC = 2,
47-
parameter DMA_AXI_ADDR_WIDTH = 32,
47+
parameter DMA_AXI_ADDR_WIDTH = 64,
4848
parameter DMA_LENGTH_WIDTH = 24,
4949
parameter DMA_LENGTH_ALIGN = 3,
5050
parameter DMA_CYCLIC = 0,
@@ -147,7 +147,7 @@ module axi_dmac_regmap #(
147147
input [31:0] dbg_ids1
148148
);
149149

150-
localparam PCORE_VERSION = 'h00040564;
150+
localparam PCORE_VERSION = 'h00040565;
151151
localparam HAS_ADDR_HIGH = DMA_AXI_ADDR_WIDTH > 32;
152152
localparam ADDR_LOW_MSB = HAS_ADDR_HIGH ? 31 : DMA_AXI_ADDR_WIDTH-1;
153153

library/axi_dmac/axi_dmac_regmap_request.v

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
// ***************************************************************************
22
// ***************************************************************************
3-
// Copyright (C) 2018-2024 Analog Devices, Inc. All rights reserved.
3+
// Copyright (C) 2018-2025 Analog Devices, Inc. All rights reserved.
44
//
55
// In this HDL repository, there are many different and unique modules, consisting
66
// of various HDL (Verilog or VHDL) components. The individual modules are
@@ -41,7 +41,7 @@ module axi_dmac_regmap_request #(
4141
parameter BYTES_PER_BEAT_WIDTH_SRC = 1,
4242
parameter BYTES_PER_BEAT_WIDTH_SG = 1,
4343
parameter BYTES_PER_BURST_WIDTH = 7,
44-
parameter DMA_AXI_ADDR_WIDTH = 32,
44+
parameter DMA_AXI_ADDR_WIDTH = 64,
4545
parameter DMA_LENGTH_WIDTH = 24,
4646
parameter DMA_LENGTH_ALIGN = 3,
4747
parameter DMA_CYCLIC = 0,

library/axi_dmac/axi_dmac_transfer.v

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
// ***************************************************************************
22
// ***************************************************************************
3-
// Copyright (C) 2014-2024 Analog Devices, Inc. All rights reserved.
3+
// Copyright (C) 2014-2025 Analog Devices, Inc. All rights reserved.
44
//
55
// In this HDL repository, there are many different and unique modules, consisting
66
// of various HDL (Verilog or VHDL) components. The individual modules are
@@ -46,7 +46,7 @@ module axi_dmac_transfer #(
4646
parameter BYTES_PER_BEAT_WIDTH_SG = $clog2(DMA_DATA_WIDTH_SG/8),
4747
parameter DMA_TYPE_DEST = 0,
4848
parameter DMA_TYPE_SRC = 2,
49-
parameter DMA_AXI_ADDR_WIDTH = 32,
49+
parameter DMA_AXI_ADDR_WIDTH = 64,
5050
parameter DMA_2D_TRANSFER = 0,
5151
parameter DMA_2D_TLAST_MODE = 0,
5252
parameter DMA_SG_TRANSFER = 0,

library/axi_dmac/dest_axi_mm.v

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
// ***************************************************************************
22
// ***************************************************************************
3-
// Copyright (C) 2014-2024 Analog Devices, Inc. All rights reserved.
3+
// Copyright (C) 2014-2025 Analog Devices, Inc. All rights reserved.
44
//
55
// In this HDL repository, there are many different and unique modules, consisting
66
// of various HDL (Verilog or VHDL) components. The individual modules are
@@ -39,7 +39,7 @@ module dest_axi_mm #(
3939

4040
parameter ID_WIDTH = 3,
4141
parameter DMA_DATA_WIDTH = 64,
42-
parameter DMA_ADDR_WIDTH = 32,
42+
parameter DMA_ADDR_WIDTH = 64,
4343
parameter BYTES_PER_BEAT_WIDTH = $clog2(DMA_DATA_WIDTH/8),
4444
parameter BEATS_PER_BURST_WIDTH = 4,
4545
parameter MAX_BYTES_PER_BURST = 128,

library/axi_dmac/dmac_2d_transfer.v

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
// ***************************************************************************
22
// ***************************************************************************
3-
// Copyright (C) 2014-2024 Analog Devices, Inc. All rights reserved.
3+
// Copyright (C) 2014-2025 Analog Devices, Inc. All rights reserved.
44
//
55
// In this HDL repository, there are many different and unique modules, consisting
66
// of various HDL (Verilog or VHDL) components. The individual modules are
@@ -38,7 +38,7 @@
3838
module dmac_2d_transfer #(
3939

4040
parameter DMA_2D_TLAST_MODE = 0, // 0 - End of Frame; 1 - End of Line
41-
parameter DMA_AXI_ADDR_WIDTH = 32,
41+
parameter DMA_AXI_ADDR_WIDTH = 64,
4242
parameter DMA_LENGTH_WIDTH = 24,
4343
parameter BYTES_PER_BURST_WIDTH = 7,
4444
parameter BYTES_PER_BEAT_WIDTH_SRC = 3,

library/axi_dmac/dmac_sg.v

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
// ***************************************************************************
22
// ***************************************************************************
3-
// Copyright (C) 2023-2024 Analog Devices, Inc. All rights reserved.
3+
// Copyright (C) 2023-2025 Analog Devices, Inc. All rights reserved.
44
//
55
// In this HDL repository, there are many different and unique modules, consisting
66
// of various HDL (Verilog or VHDL) components. The individual modules are
@@ -36,7 +36,7 @@
3636
`timescale 1ns/100ps
3737

3838
module dmac_sg #(
39-
parameter DMA_AXI_ADDR_WIDTH = 32,
39+
parameter DMA_AXI_ADDR_WIDTH = 64,
4040
parameter DMA_DATA_WIDTH = 64,
4141
parameter DMA_LENGTH_WIDTH = 24,
4242
parameter AXI_LENGTH_WIDTH = 8,

0 commit comments

Comments
 (0)