3.3.7.1.2. Data Manager Port
Nios® V/m processor data bus is implemented as a 32-bit AMBA* 4 AXI-Lite manager port as default interface. You can switch it to Avalon memory-mapped interface for smaller logic utilization. The data manager port:
- Performs read data from memory or a peripheral when the processor executes a load instruction.
- Performs write data to memory or a peripheral when the processor executes a store instruction.
- Does not require any burst adapter because it is non-bursting.
axsize signal value indicates the load/store instruction size- byte (LB/SB), halfword (LH/SH) or word (LW/SW). Address on axaddr signal is always aligned to size of the transfer. For store instructions, respective writes strobe bits are asserted to indicate bytes being written.
Nios® V/m processor core does not support speculative issue of load/store instruction. Hence, a core can issue only one load or store instruction and waits until the issued instruction is complete.
| Interface | Signal | Role | Width | Direction |
|---|---|---|---|---|
| Write Address Channel | awaddr | Store address | [31:0] | Output |
| awprot | Unused | [2:0] | Output | |
| awvalid | Store address valid | 1 | Output | |
| awready | Store address ready (from memory) |
1 | Input | |
| Write Data Channel | wdata | Store data | [31:0] | Output |
| wstrb | Byte position in word | [3:0] | Output | |
| wvalid | Store data valid | 1 | Output | |
| wready | Store data ready (from memory) |
1 | Input | |
| Write Response Channel | bresp | Store response: Non-zero value denotes store access fault exception. |
[1:0] | Input |
| bvalid | Store response valid | 1 | Input | |
| bready | Constant 1 | 1 | Output | |
| Read Address Channel | araddr | Load address | [31:0] | Output |
| arprot | Unused | [2:0] | Output | |
| arvalid | Load address valid | 1 | Output | |
| arready | Load address ready (from subordinates) |
1 | Input | |
| Read Data Channel | rdata | Load data | [31:0] | Input |
| rresp | Load response: Non-zero value denotes load access fault exception |
[1:0] | Input | |
| rvalid | Load data valid | 1 | Input | |
| rready | Constant 1 | 1 | Output |
| Signal | Role | Width | Direction |
|---|---|---|---|
| readdata | Load data | [31:0] | Agent → Processor |
| waitrequest | Force the processor to wait until the agent is ready | 1 | Agent → Processor |
| readdatavalid | Load data is valid | 1 | Agent → Processor |
| response | Load/Store response: Non-zero value denotes access fault exception | [31:0] | Agent → Processor |
| address | Load/Store address | [31:0] | Processor → Agent |
| read | Asserted to indicate a read transfer | 1 | Processor → Agent |
| write | Asserted to indicate a write transfer | 1 | Processor → Agent |
| writedata | Store data | [31:0] | Processor → Agent |
| byteenable | Indicates the load/store instruction size
|
[3:0] | Processor → Agent |
| writeresponsevalid | Asserted to indicate a valid write response | 1 | Agent → Processor |