# hyplnkRXSegValReg_s Struct Reference
[HYPLNK LLD Register Definitions]

Specification of the Rx Address Segment Value Register. More...

`#include <hyplnk.h>`

## Data Fields

uint32_t | raw
| [ro] Raw image of register on read; actual value on write
uint16_t | rxSegVal
| [rw] Segment address value (base address)
uint8_t | rxLenVal
| [rw] Selects segment size

## Detailed Description

Specification of the Rx Address Segment Value Register.

There is an array of 64 segment value registers. The particular segment value register accessed via hyplnkRXSegValReg_s is specified in hyplnkRXSegIdxReg_s::rxSegIdx.

After the segment index is extracted from the incoming address based on hyplnkRXAddrSelReg_s::rxSegSel, the index is dereferenced through this table to get a base address and length.

The local address (which will be presented through the SES or SMS MPAX) is constructed by:

((rxSegVal << 16) | RxAddress) & ((1 << (1 + rxLenVal)) - 1)

## Field Documentation

uint8_t hyplnkRXSegValReg_s::rxLenVal

[rw] Selects segment size

Field size: 5 bits

rxLenVal | Segment Size
--- | ---
0-7 | 0
8 | 0x0 0000 0200
9 | 0x0 0000 0400
10 | 0x0 0000 0800
11 | 0x0 0000 1000
12 | 0x0 0000 2000
13 | 0x0 0000 4000
14 | 0x0 0000 8000
15 | 0x0 0001 0000
16 | 0x0 0002 0000
17 | 0x0 0004 0000
18 | 0x0 0008 0000
19 | 0x0 0010 0000
20 | 0x0 0020 0000
21 | 0x0 0040 0000
22 | 0x0 0080 0000
23 | 0x0 0100 0000
24 | 0x0 0200 0000
25 | 0x0 0400 0000
26 | 0x0 0800 0000
27 | 0x0 1000 0000
28 | 0x0 2000 0000
29 | 0x0 4000 0000
30 | 0x0 8000 0000
31 | 0x1 0000 0000

uint16_t hyplnkRXSegValReg_s::rxSegVal

[rw] Segment address value (base address)

Field size: 16 bits

The documentation for this struct was generated from the following file:

- hyplnk.h

Copyright 2012, Texas Instruments Incorporated