1// 2// Copyright (c) 2010-2024 Antmicro 3// 4// This file is licensed under the MIT License. 5// Full license text is available in 'licenses/MIT.txt'. 6// 7 8package renode_ahb_pkg; 9 typedef logic response_t; 10 typedef logic [2:0] burst_t; 11 typedef logic transfer_direction_t; 12 typedef logic [1:0] transfer_type_t; 13 typedef logic [2:0] transfer_size_t; 14 15 typedef enum response_t { 16 Okay = 1'b0, 17 Error = 1'b1 18 } response_e; 19 20 typedef enum burst_t { 21 Single = 3'b000, 22 Incrementing = 3'b001, 23 Wrapping4 = 3'b010, 24 Incrementing4 = 3'b011, 25 Wrapping8 = 3'b100, 26 Incrementing8 = 3'b101, 27 Wrapping16 = 3'b110, 28 Incrementing16 = 3'b111 29 } burst_e; 30 31 typedef enum transfer_direction_t { 32 Read = 1'b0, 33 Write = 1'b1 34 } transfer_direction_e; 35 36 typedef enum transfer_type_t { 37 Idle = 2'b00, 38 Busy = 2'b01, 39 NonSequential = 2'b10, 40 Sequential = 2'b11 41 } transfer_type_e; 42 43 // Notice that the bus uses different naming convention for sizes than Renode. 44 typedef enum transfer_size_t { 45 Byte8bit = 3'b000, 46 Halfword16bit = 3'b001, 47 Word32bit = 3'b010, 48 Doubleword64bit = 3'b011 49 } transfer_size_e; 50endpackage 51