diff options
Diffstat (limited to 'rtl/inc')
| -rw-r--r-- | rtl/inc/bus/ari.svh | 19 |
1 files changed, 18 insertions, 1 deletions
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,12 +19,29 @@ 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. // |
