ETHERNET

If the 68G5P operating system is BareMetal the Ethernet feature on the board will be used for 68G5P Motherboard and Module Firmware Field Programmability, only.

To program the 68G5P board:

  1. Turn off power
  2. Pull NVMRO to Ground
  3. Turn on power
  4. From the Serial Console Port, login in and invoke the Configurator Program.
  5. Transfer the new image over Ethernet using the Windows-based NAI Downloader Application
  6. Turn off power
  7. Release NVMRO
  8. Turn on power

If the 68G5P operating system is Petalinux, the Ethernet Interface Option allows communications and control access to all function modules either via the system BUS or Ethernet ports 1 or 2.

(For detailed supplement, please visit the NAI web-site specific product page and refer to: Ethernet Interface for Generation 5 SBC and Embedded IO Boards Specification)

Ethernet 1Ethernet 2
The default IP address:192.168.1.16192.168.2.16
The default subnet:255.255.255.0255.255.255.0
The default gateway:192.168.1.1192.168.2.1

Note

Actual “as shipped” card Ethernet default IP addresses may vary based upon final ATP configuration(s).) Ethernet Port IP addresses may be field re-flashed to new default programmed addressed via use of the “IP Configuring for Ethernet Supported Boards” FLASH software support kit, available/documented from the specific product web page.

The NAI interface supports IPv4 and IPv6 and both the TCP and UDP protocols. The Ethernet Operation Mode Command Listener application running on the motherboard host processor implements the operation interface. The listener is operational on startup through the nai_MBStartup process and listen on specific ports for commands to process. The default ports are listed below:

  • TCP1 - Port 52801
  • TCP2 - Port 52802
  • UDP1 - Port 52801
  • UDP2 - Port 52802

While the listener is active, note that interrupts from the motherboard do not trigger. The listener can be disabled by turning off the nai_MBStartup process through the Motherboard EEPROM. To turn off nai_MBStartup use the command mbeeprom_util set MBStartupInitOnlyFlag 1 in the console, either by serial port or telnet to the motherboard, and then reboot the system. To turn on the nai_MBStartup use the command mbeeprom_util set MBStartupInitOnlyFlag 0 in the console, either by serial port or telnet to the motherboard, and then reboot the system.

Ethernet Message Framework

The interface uses a specific message framework for all commands and responses. All messages begin with a Preamble code and end with a Postamble code. The message framework is shown below.

Preamble
2 bytes Always
0xD30F
SequenceNo
2 bytes
Type Code
2 byte
Message Length
(2 bytes)
Payload
(0..1414 bytes)
Postamble
2 bytes
Always
0xF03D

Message Elements

PreambleThe Preamble is used to delineate the beginning of a message frame.
The Preamble is always 0xD30F.
SequenceNoThe SequenceNo is used to associate Commands with Responses.
Type CodeType Codes are used to define the type of Command or Response the message contains.
Message LengthThe Message Length is the number of bytes in the complete message frame starting with and including the
Preamble and ending with and including the Postamble.
PayloadThe Payload contains the unique data that makes up the command or response.
Payloads vary based on command type.
PostambleThe Postamble is use to delineate the end of a message frame.
The Postamble is always 0xF03D.

Notes

  1. The messaging protocol applies only to card products.
  2. Messaging is managed by the connected (client) computer. The client computer will send a single message and wait for a reply from the card. Multiple cards may be managed from a single computer, subject to channel and computer capacity.

Board Addressing

The interface provides two main addressing areas: Onboard and Off-board.

Onboard addressing refers to accessing resources located on the board that is implementing the operation interface (including its modules).

Off-board addressing refers to accessing resources located on another board reachable via VME, PCI, or other bus. Off-board addressing requires a Master/Slave configuration.

The user must always specify if a particular address is Onboard or Off-board. See the command descriptions for the onboard and off-board flags.

Within a particular board (Onboard or Off-board), the address space is broken up into two areas: Motherboard Common Address Space and Module Address Space. All addresses are 32-bit.

Motherboard Common Address Space starts at 0x00000000 and ends at 0x00004000. This is a 4Kx32-bit address space (16 kbytes).

Module Address Space starts at 0x00004000. Module addressing is dynamically configured at startup. NAI boards support between 1 and 6 modules. The minimum module address space size is 4Kx32 (16 kbytes) and module sizes are always a multiple of 4Kx32.

Module addressing is dynamic and cumulative. The first detected module (starting with Slot 1) is given an address of 0x00004000. The 2nd detected Module is given an address of:

First_Detected_Module_Address + First_Detected_Module_Size

Note

Slots do not define addresses.

If no module is detected in a module slot, that slot is not given an address. Therefore, if the first detected Module is in Slot 2, then that module address will be 0x00004000. If the next detected module is in Slot 4, then the address of that Module will be:

Second_Detected_Module_Address = First_Detected_Module_Address + First_Detected_Module_Size

If a 3rd Module is detected in Slot 6, then the address of that Module will be:

Third_Detected_Module_Address = Second_Detected_Module_Address + Second_Detected_Module_Size

Note

Module addresses are calculated at each board startup when the modules are detected. Therefore, if a module should fail to be detected due to malfunction or because it was removed from the motherboard, the addresses of the modules that follow it in the slot sequence will be altered. This is important to note when programming to this interface.

Users can always retrieve the Module Addresses, Module Sizes and Module IDs from the fixed Motherboard Common address area. This data is set upon each board startup. While the Module Addressing is dynamic, the address where these addresses are stored is fixed. For example, to find the startup address of the module location in Slot 3, refer to the MB Common Address 0x00000408 from the Motherboard Common Addresses table that follows.

Ethernet Wiring Convention

RJ-45 PinT568A ColorT568B Color10/100Base-T1000BASE-TNAI wiring convention
1white/green stripewhite/orange stripeTX+DA+ETH-TP0+
2greenorangeTX-DA-ETH-TP0-
3white/orange stripewhite/green stripeRX+DB+ETH-TP1+
4blueblueDC+ETH-TP2+
5white/blue stripewhite/blue stripeDC-ETH-TP2-
6orangegreenRX-DB-ETH-TP1-
7white/brown stripewhite/brown stripeDD+ETH-TP3+
8brownbrownDD-ETH-TP3-