openenoc_endpoint address map

  • Absolute Address: 0x0

  • Base Offset: 0x0

  • Size: 0x800

Control and status register map for an openENOC Endpoint Interface instance.

Offset

Identifier

Name

0x000

info

openenoc_endpoint.info

0x008

config

openenoc_endpoint.config

0x020

axis_if

openenoc_endpoint.axis_if

0x040

peers

openenoc_endpoint.peers

0x400

rmem

rmem

info register

  • Absolute Address: 0x0

  • Base Offset: 0x0

  • Size: 0x8

Read-only information register for this openENOC Endpoint Interface instance.

Bits

Identifier

Access

Reset

Name

31:0

rmem_total_depth

r

0x100

openenoc_endpoint.info.rmem_total_depth[15:0]

63:32

num_of_peers

r

0x1

openenoc_endpoint.info.num_of_peers[31:16]

rmem_total_depth field

Total depth of the shared memory region for all remote peers. This field reflects the RMEM_TOTAL_DEPTH parameter value.

num_of_peers field

Number of remote peers supported by this openENOC Endpoint Interface instance. This field reflects the NUM_OF_PEERS parameter value.

config register file

  • Absolute Address: 0x8

  • Base Offset: 0x8

  • Size: 0x8

Configuration register file for this openENOC Endpoint Interface instance.

Offset

Identifier

Name

0x0

mac_address

openenoc_endpoint.config.mac_address

mac_address register

  • Absolute Address: 0x8

  • Base Offset: 0x0

  • Size: 0x8

Local site 48-bit destination MAC address.

Bits

Identifier

Access

Reset

Name

31:0

lo_word

rw

0x0

openenoc_endpoint.config.mac_address.lo_word[31:0]

47:32

hi_word

rw

0x0

openenoc_endpoint.config.mac_address.hi_word[47:32]

lo_word field

Lower 32 bits [31:0] of the 48-bit MAC address.

hi_word field

Upper 16 bits [47:32] of the 48-bit MAC address.

axis_if register file

  • Absolute Address: 0x20

  • Base Offset: 0x20

  • Size: 0x1C

Register file for the AXI4-Stream source and sink interfaces.

Offset

Identifier

Name

0x00

source

openenoc_endpoint.axis_if.source

0x10

sink

openenoc_endpoint.axis_if.sink

source register file

  • Absolute Address: 0x20

  • Base Offset: 0x0

  • Size: 0xC

Register file for the AXI4-Stream source interface.

Offset

Identifier

Name

0x0

data

openenoc_endpoint.axis_if.source.data

0x4

control

openenoc_endpoint.axis_if.source.control

0x8

status

openenoc_endpoint.axis_if.source.status

data register

  • Absolute Address: 0x20

  • Base Offset: 0x0

  • Size: 0x4

Data register for the AXI4-Stream source interface.

Bits

Identifier

Access

Reset

Name

31:0

tdata

rw

0x0

openenoc_endpoint.axis_if.source.data.tdata[31:0]

tdata field

32-bit data value for the AXI4-Stream source interface.

control register

  • Absolute Address: 0x24

  • Base Offset: 0x4

  • Size: 0x4

Control register for the AXI4-Stream source interface.

Bits

Identifier

Access

Reset

Name

0

tvalid

rw

0x0

openenoc_endpoint.axis_if.source.control.tvalid

8

tlast

rw

0x0

openenoc_endpoint.axis_if.source.control.tlast

tvalid field

Indicates that the AXI4-Stream source interface has valid data to send. This field is a single-pulse register that is automatically cleared back to zero after being written.

tlast field

Indicates the last data word of a frame on the AXI4-Stream source interface.

status register

  • Absolute Address: 0x28

  • Base Offset: 0x8

  • Size: 0x4

Status register for the AXI4-Stream source interface.

Bits

Identifier

Access

Reset

Name

0

tready

r

0x0

openenoc_endpoint.axis_if.source.status.tready

tready field

Indicates that the destination AXI4-Stream interface is ready to receive data.

sink register file

  • Absolute Address: 0x30

  • Base Offset: 0x10

  • Size: 0xC

Register file for the AXI4-Stream sink interface.

Offset

Identifier

Name

0x0

data

openenoc_endpoint.axis_if.sink.data

0x4

control

openenoc_endpoint.axis_if.sink.control

0x8

status

openenoc_endpoint.axis_if.sink.status

data register

  • Absolute Address: 0x30

  • Base Offset: 0x0

  • Size: 0x4

Data register for the AXI4-Stream sink interface.

Bits

Identifier

Access

Reset

Name

31:0

tdata

r

openenoc_endpoint.axis_if.sink.data.tdata[31:0]

tdata field

32-bit data value for the AXI4-Stream sink interface.

control register

  • Absolute Address: 0x34

  • Base Offset: 0x4

  • Size: 0x4

Control register for the AXI4-Stream sink interface.

Bits

Identifier

Access

Reset

Name

0

tready

w

0x0

openenoc_endpoint.axis_if.sink.control.tready

tready field

Indicates that the AXI4-Stream sink interface is ready to receive next data transfer.

status register

  • Absolute Address: 0x38

  • Base Offset: 0x8

  • Size: 0x4

Status register for the AXI4-Stream sink interface.

Bits

Identifier

Access

Reset

Name

0

tvalid

r

openenoc_endpoint.axis_if.sink.status.tvalid

8

tlast

r

openenoc_endpoint.axis_if.sink.status.tlast

tvalid field

Indicates that the AXI4-Stream sink interface has valid data to receive.

tlast field

Indicates the last data word of a frame on the AXI4-Stream sink interface.

peers register file

  • Absolute Address: 0x40

  • Base Offset: 0x40

  • Size: 0x1C

Register file for remote peer configuration and memory region information.

Offset

Identifier

Name

0x0

entry[0]

openenoc_endpoint.peers.entry[0..NUM_OF_PEERS-1]

entry register file

  • Absolute Address: 0x40

  • Base Offset: 0x0

  • Size: 0x1C

  • Array Dimensions: [1]

  • Array Stride: 0x1C

  • Total Size: 0x1C

Register file for a single remote peer configuration and memory region information.

Offset

Identifier

Name

0x00

mac_address

openenoc_endpoint.peers.entry[0..NUM_OF_PEERS-1].mac_address

0x08

rmem_address

openenoc_endpoint.peers.entry[0..NUM_OF_PEERS-1].rmem_address

0x0C

local_address

openenoc_endpoint.peers.entry[0..NUM_OF_PEERS-1].local_address

0x10

remote_address

openenoc_endpoint.peers.entry[0..NUM_OF_PEERS-1].remote_address

0x14

size

openenoc_endpoint.peers.entry[0..NUM_OF_PEERS-1].size

0x18

dma

openenoc_endpoint.peers.entry[0..NUM_OF_PEERS-1].dma

mac_address register

  • Absolute Address: 0x40

  • Base Offset: 0x0

  • Size: 0x8

Remote peer 48-bit destination MAC address.

Bits

Identifier

Access

Reset

Name

31:0

lo_word

rw

openenoc_endpoint.peers.entry[0..NUM_OF_PEERS-1].mac_address.lo_word[31:0]

47:32

hi_word

rw

openenoc_endpoint.peers.entry[0..NUM_OF_PEERS-1].mac_address.hi_word[47:32]

lo_word field

Lower 32 bits [31:0] of the 48-bit MAC address.

hi_word field

Upper 16 bits [47:32] of the 48-bit MAC address.

rmem_address register

  • Absolute Address: 0x48

  • Base Offset: 0x8

  • Size: 0x4

Address offset of the virtual memory region corresponding to the remote peer's memory.

Bits

Identifier

Access

Reset

Name

31:0

offset

rw

openenoc_endpoint.peers.entry[0..NUM_OF_PEERS-1].rmem_address.offset[31:0]

offset field

Word-aligned 32-bit address offset of the virtual memory region corresponding to the remote peer's memory.

local_address register

  • Absolute Address: 0x4C

  • Base Offset: 0xC

  • Size: 0x4

Start address of the local memory region for DMA transfers.

Bits

Identifier

Access

Reset

Name

31:0

base

rw

openenoc_endpoint.peers.entry[0..NUM_OF_PEERS-1].local_address.base[31:0]

base field

Word-aligned 32-bit start address of the local memory region for DMA transfers.

remote_address register

  • Absolute Address: 0x50

  • Base Offset: 0x10

  • Size: 0x4

Start address of the remote peer's memory region.

Bits

Identifier

Access

Reset

Name

31:0

base

rw

openenoc_endpoint.peers.entry[0..NUM_OF_PEERS-1].remote_address.base[31:0]

base field

Word-aligned 32-bit start address of the remote peer's memory region.

size register

  • Absolute Address: 0x54

  • Base Offset: 0x14

  • Size: 0x4

Size of the remote peer's memory region.

Bits

Identifier

Access

Reset

Name

31:0

bytes

rw

openenoc_endpoint.peers.entry[0..NUM_OF_PEERS-1].size.bytes[31:0]

bytes field

32-bit size of the remote peer's memory region in bytes.

dma register

  • Absolute Address: 0x58

  • Base Offset: 0x18

  • Size: 0x4

DMA configuration and control for the remote peer.

Bits

Identifier

Access

Reset

Name

1:0

mode

rw

openenoc_endpoint.peers.entry[0..NUM_OF_PEERS-1].dma.mode[1:0]

8

request

rw

0x0

openenoc_endpoint.peers.entry[0..NUM_OF_PEERS-1].dma.request[8:8]

16

idle

r

openenoc_endpoint.peers.entry[0..NUM_OF_PEERS-1].dma.idle[16:16]

24

done

r

openenoc_endpoint.peers.entry[0..NUM_OF_PEERS-1].dma.done[24:24]

25

error

r

openenoc_endpoint.peers.entry[0..NUM_OF_PEERS-1].dma.error[25:25]

mode field

DMA mode for transfers to/from the remote peer:

  • 0: DMA transfers to/from the remote peer are disabled.
  • 1: DMA transfers to/from the remote peer are enabled in transparent mode, where accesses to the virtual memory region are directly translated to corresponding accesses to the remote peer's memory region (transactions are word-by-word, i.e., per virtual memory access).
  • 2: DMA transfers to/from the remote peer are enabled in mirror-to-local mode, where the local memory region is used instead of the virtual memory region. The state of the remote peer's memory region (remote_address, size) is fetched from the remote peer on demand or periodically.
  • 3: DMA transfers to/from the remote peer are enabled in mirror-to-remote mode, where the remote memory region is used instead of the virtual memory region. The state of the local peer's memory region (local_address, size) is sent to the remote peer on demand or periodically.

request field

Writing a 1 to this field initiates a DMA transfer to/from the remote peer. This field is a single-pulse register that is automatically cleared back to zero after being written.

idle field

Indicates whether the DMA transfer to/from the remote peer is idle. A value of 1 indicates that the DMA transfer is idle, while a value of 0 indicates that the DMA transfer is in progress.

done field

Indicates whether the DMA transfer to/from the remote peer has been successful. A value of 1 indicates that the DMA transfer has completed successfully, while a value of 0 indicates that the DMA transfer is still in progress or has encountered an error.

error field

Indicates whether the DMA transfer to/from the remote peer has encountered an error. A value of 1 indicates an error, while a value of 0 indicates no error.

rmem memory

  • Absolute Address: 0x400

  • Base Offset: 0x400

  • Size: 0x400

Virtual memory region for all remote peers, with offsets and sizes defined in the peers regfile.

No supported members.