From e3b54015326ae24a29c2c6bdbcc91b164308c068 Mon Sep 17 00:00:00 2001 From: "Ian M." Date: Sat, 26 Sep 2026 11:52:58 +0000 Subject: bus: ari: Add address operation structure Signed-off-by: Ian M. --- rtl/inc/bus/ari.svh | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) (limited to 'rtl') diff --git a/rtl/inc/bus/ari.svh b/rtl/inc/bus/ari.svh index 86a3915..6c5a6e2 100644 --- a/rtl/inc/bus/ari.svh +++ b/rtl/inc/bus/ari.svh @@ -19,11 +19,28 @@ parameter PMA_XLEN = 32; // ARI bus tags for determining payload type // // @ARI_NOP: No-operation, as per the spec +// @ARI_ADOP: Address operation // typedef enum logic [3:0] { - ARI_NOP + ARI_NOP, + ARI_ADOP } AriTag; +// +// Address operation structure +// +// @ad: 48-bit physical address +// @data: Data to write (if write_en=1) +// @write_en: If set, this is a write operation +// @reserved: Reserved, must be zero +// +typedef struct packed { + logic [PMA_XLEN-1:0] ad; + logic [63:0] data; + logic write_en; + logic [14:0] reserved; +} AriAdop; + // // Represents an ARI frame that encapsulates a payload. // Refer to the ARI specification. -- cgit v1.2.3