Rugged Dual-Function I/O Ethernet Subsystem
Edit this on GitLab
INTRODUCTION
This manual provides information about the North Atlantic Industries, Inc. (NAI) NIU2A System. The NIU2A is a “Nano Interface Unit”; a small, rugged, low-power, self-contained, multifunction I/O system with an integrated power supply that supports two Smart function module slots and an optional ARM Cortex A9 processor.
SOFTWARE SUPPORT
The ENAIBL Software Support Kit (SSK) is supplied with all system platform based board level products. This platform’s SSK contents include html format help documentation which defines board specific library functions and their respective parameter requirements. A board specific library and its source code is provided (module level 'C' and header files) to facilitate function implementation independent of user operating system (O/S). Portability files are provided to identify Board Support Package (BSP) dependent functions and help port code to other common system BSPs. With the use of the provided help documentation, these libraries are easily ported to any 32-bit O/S such as RTOS or Linux.
The latest version of a board specific SSK can be downloaded from our website www.naii.com in the software downloads section. A Quick-Start Software Manual is also available for download where the SSK contents are detailed, Quick-Start Instructions provided and GUI applications are described therein. For other operating system support, contact factory.
GENERAL SAFETY NOTICES
The following general safety notices supplement the specific warnings and cautions appearing elsewhere in the manual. They are recommended precautions that must be understood and applied during operation and maintenance of the instrument covered herein.
Death or serious injury may result if personnel fail to observe safety precautions. Dependent on configuration, some modules (e.g. Synchro / Resolver or AC signal sources) can generate output signals with high voltages. Be careful not to contact high-voltage connections when installing, operating or maintaining this instrument.

The NIU2A is delivered as a standalone system with no accessible or serviceable parts.
Repair

DO NOT ATTEMPT REPAIR. Under no circumstances should repair of this instrument be attempted. All repairs to this chassis must be accomplished at the factory.
High Voltage

HIGH VOLTAGE may be used in the operation of this equipment.
Input Power Always On

Note
|
The design of the model NIU2A is such that DC input power is continuously supplied to internal circuits when connected to a main power source. To disconnect the NIU2A from external power, the external power source should first be de-energized. The power input cable can then be disconnected. |
SYSTEM SPECIFICATIONS & DETAILS
Introduction
The Nano Interface Unit (NIU2A) is a second-generation, integrated, compact, “nano-sized” subsystem with unprecedented I/O capability configurations. The NIU2A connects to existing platform Ethernet networks, making data available to any system on the network. Optionally, the NIU2A can be delivered with ARM® Cortex®-A9 access support for standalone or other processor related capability.
The NIU2A easily adds sensor data acquisition and distribution and communication interfaces to mission computers without expensive chassis and backplane redesign. It has been designed with rugged embedded industrial, military and aerospace applications in mind.
Leveraging NAI’s field-proven, unique modular architecture, the NIU2A supports a wide selection of different Intelligent I/O, motion simulation/measurement and communications functions such as:
A/D Converter |
D/A Converter |
I/O TTL/CMOS |
RTD |
I/O Discrete |
I/O Differential Transceiver |
Synchro/Resolver LVDT/RVDT Measurement |
Synchro/Resolver LVDT/RVDT Simulation |
Strain Gage |
Encoder |
Dual-Channel Dual Redundant BC/RT/MT MIL-STD-1553 |
High-Speed Sync/Async RS232/422/423/485 |
ARINC 429/575 |
CANBus |
I/O Relay |
AC Reference |
Ethernet Switch |
SSD/Flash |
This approach provides unprecedented flexibility for supporting existing or new applications where there are specific interfacing requirements. Significant application benefits include:
-
Independent (pre-processed) I/O functionality targeted to specific data acquisition/control areas
-
Additional capabilities, technology insertion and sensor interfacing to existing fielded applications
-
Minimal integration risk based on current field-proven, deployed technologies
-
Only ~ 7.2” x 2.7” x 3.0” @ ~2.7 lbs. (1.22 kg) conduction/convection cooled
-
2x Ethernet
-
10/100/1000Base-T (GbE) (default)
-
1 GB Fiber Optic 850 nm (option)
-
SPECIFICATIONS
The NIU2A is designed to meet the following general specifications.
General
Ethernet Data Transfer: |
Data transfers within 1 ms (typical) |
Input Voltage: |
18 to 36 VDC (28 VDC nominal) |
Power (Base unit): |
~5 W @ 28 V VDC nominal plus module(s) power (see specific module(s) specifications) I/O Signal GND reference is isolated from main power source return and chassis. |
Power/Heat Dissipation: |
~25 watts (maximum) when properly mounted to a cold-plate, which must be maintained at a temperature not to exceed 71°C. Note: The total NIU2A power dissipation is dependent on the configuration of the modules fitted in the NIU2A. |
Temperature, Operating: |
-40°C to 71°C (conduction cooled - measured at primary thermal interface) |
Temperature, Storage: |
-55°C to 105°C |
Size: |
Height: ~2.7” (68.6 mm) Depth: ~3.0” (76 mm) Width: ~7.2” (182.9 mm) |
Weight: |
The weight of an NIU2A system is dependent on the configuration. The approximate weight of the NIU2A is based on the selection of the functional module(s). The approximate weight of a typical fully configured NIU2A (model #) is ~2.7 lbs. (1.22 kg). |
Environmental
Environmental MIL-STD-810 (1) (unless otherwise specified) |
||||||
No. |
Description |
Procedure |
Cycles |
Table |
Figure |
Comments |
514 |
Random Vibe |
Method 514.6, 0.1g2/Hz from 100 to 1K Hz., -3dB octave 5-100 Hz and -6dB 1K-2K Hz,(operational) |
||||
514 |
Sinusoidal Vibe |
TBD |
||||
501 |
Temp (High) |
3 |
3 periods (@ 4 hrs. ea.) within 24 hrs. cycle at 71 ºC baseplate |
|||
502 |
Temp (Low) |
1 |
3 periods (@ 4 hrs. ea.) within 24 hrs. cycle at -40 ºC baseplate |
|||
503 |
Temp (Shock) |
3 |
3 x 1 hr. each hot & cold cycle |
|||
507 |
Humidity |
II |
10 |
507.5-7 |
507.5-IX |
Cyclic high humidity (Cycle B2) |
500 |
Altitude (50K) |
II |
1 |
n/a |
n/a |
10m/s to 50,000ft for 1 hr. |
513 |
Acceleration |
II |
1 |
513.6-II |
n/a |
Carrier-based Aircraft (18g’s max) |
516 |
Shock - Operating |
I |
3 |
516.6-I |
n/a |
40g’s, 1 min each x 6 axis |
516 |
Shock - Crash |
V |
3 |
516.6-I |
n/a |
75g’s, 1 min each x 6 axis |
Ingress Protection IEC 60529 (1, 2) |
||||||
No. |
Description |
Procedure |
Cycles |
Table |
Figure |
Comments |
IP54 |
Dust Protection |
|||||
IP54 |
Water Splashing |
|||||
IP65 |
Dust Tight |
|||||
IP65 |
Water Jets |
EMI/EMC
EMC / MIL-STD-461 (1, 2*) |
||
MIL-STD-461(G) |
Method/Curve/Procedure |
Comments |
CE102 |
Conducted Emissions, Power Leads, 30 Hz - 10 kHz |
|
CS101 |
Conducted Susceptibility, Power Leads, 10 kHz - 10 MHz |
|
CS106 |
Conducted Susceptibility, Power Leads , 30 Hz - 150 kHz |
|
CS114 |
Conducted Susceptibility, Power Leads |
|
CS115 |
Conducted Susceptibility, Bulk Cable Injection, 10 kHz to 200 MHz |
|
CS116 |
Conducted Susceptibility, Bulk Cable Injection, Impulse Excitation |
|
RE101 |
Conducted susceptibility, Damped Sinusoidal Transients, Cables and Power Leads, 10 kHz to 100 MHz |
|
RE102 |
Radiated Emissions, Magnetic Field, 30 Hz to 100 kHz |
|
RS101 |
Radiated Emissions, Electric Field, 10 kHz to 18 GHz |
|
RS103 |
Radiated, Susceptibility, Magnetic Field, 30 Hz to 100 kHz |
Notes:
*1 - Designed to meet / Generic Test Reports Available
*2 - Utilizing proper shielded cables and system grounding practices
Note
|
Specifications are subject to change without notice. |
MTBF
Typical Mean Time Between Failure (MTBF) predication calculation estimates are as follows:

Note
|
(*) MTBF Prediction calculations/estimates are provided for base unit only (the base unit is defined as the integrated motherboard, power supply unit (PSU) and interface connector assemblies and does not include any module(s)). |
Contact factory for other environment, temperature or configuration prediction calculation requests.
UNPACKING & INSPECTION

Figure 1. NIU2A
Unpacking
The NIU2A packing materials were designed specifically for transport protection of the NIU2A. When receiving the shipment container, inspect packaging for any evidence of physical damage. If damage is evident, it is recommended that the carrier agent is present when opening the shipping container. It is further recommended that all packing material is retained in the event the NIU2A needs to be shipped elsewhere.
MECHANICAL INTERFACE
Mechanical Description
The NIU2A is a rugged, aluminum, conduction-cooled system. It must be mounted to a cold plate. The system thermal management design considerations should ensure that the chassis thermal interface (NIU2A bottom surface) does not exceed 71°C. Mounting holes are provided on the chassis bottom housing flanges (as depicted). See the outline drawing below.
Mounting Requirements
Refer to NIU2A Outline and Installation Drawing (OID) for details on mounting and installing the NIU2A. It is available for download from NAI’s website. The NIU2A is conduction cooled and must be mounted in accordance with the drawing. The OID provides recommended hardware, torque, cold-plate flatness and surface finish specifications, and thermal conductivity requirements.

Figure 3. NIU2A Outline Dimensions/Cold Plate Mounting Pattern (Reference Only)
Notes: 1. For reference only (refer to the product web page for the latest revision NIU2A Outline and Installation Drawing (OID). 2. J5 Fiber Optic Connector is optional. 3. Unless otherwise specified, dimensions are in inches (mm); tolerances are: * 2 PL DEC ±0.01; 3 PL DEC ±0.005 * FRACT ±1/64 (0.4); ANGLES ±1/2 (12.7)
Chassis (Earth) GND
Chassis ground point threaded insert location is on the connector side of the NIU2A as shown.

Figure 4. NIU2A Chassis GND location
Note
|
Chassis GND braid or equivalent to be secured by #6-32 screw/studs (with a depth of 0.3 inches) as end application requires. The NIU2A chassis is provided with #6-32 threaded insert only. The recommended torque for the NIU2A Chassis GND screw is 11 in-lbs. (125 N·cm) |
CONNECTOR DESIGNATION & DESCRIPTION
The Power, I/O Interface and Ethernet connectors are located on the NIU2A front panel housing.

Figure 5. NIU2A (Front Panel Connector Placement)
Connector Designation |
Description |
J1 |
Primary Power Connector, VDC |
J2 |
I/O Connector 1, Smart Module I/O Slot-1 |
J3 |
2x GbE, Maintenance, Debug (RS-232, System Reset) & extended processor option signals (RS-232, Hardware SATA Write Protect) |
J4 |
I/O Connector 2, Smart Module I/O Slot-2 |
J5 |
Fiber Optic (optional configuration) |
Connector Details and Pinout
Generic pinout. See module I/O section or contact factory regarding any special module I/O configuration.
J1, Primary Power Connector
Primary input power is supported on the NIU2A via the J1 connector. Connectors used are as follows:

Figure 6. J1 Primary Power Connector Detail
J2, I/O, Module 1
The NIU2A supports up to two Smart function modules. The J2 I/O connector supports Module-1 function I/O.

Figure 7. J2 I/O Module-1
Parts Identification
Chassis (Box-level) |
Mating Cable Connector |
||||
Designation |
MIL-DTL Equivalent Reference |
Shell/Insert |
Pin-count |
MIL-DTL Equivalent Reference |
NAI P/N (for reference) |
J2 |
D38999/20WF35SN |
19 / 35 |
66 |
D38999/26WF35PN |
05-0284 |
Pinout
Generic pinout. See module I/O section or contact factory regarding any special module I/O configuration.
J2 Connector Pin |
Signal |
Notes |
51 |
GND |
Signal/System Ground |
58 |
GND |
Signal/System Ground |
24 |
MOD1-DATIO01 |
|
23 |
MOD1-DATIO02 |
|
22 |
MOD1-DATIO03 |
|
21 |
MOD1-DATIO04 |
|
16 |
MOD1-DATIO05 |
|
15 |
MOD1-DATIO06 |
|
9 |
MOD1-DATIO07 |
|
8 |
MOD1-DATIO08 |
|
14 |
MOD1-DATIO09 |
|
13 |
MOD1-DATIO10 |
|
7 |
MOD1-DATIO11 |
|
6 |
MOD1-DATIO12 |
|
3 |
MOD1-DATIO13 |
|
2 |
MOD1-DATIO14 |
|
38 |
MOD1-DATIO15 |
|
29 |
MOD1-DATIO16 |
|
28 |
MOD1-DATIO17 |
|
27 |
MOD1-DATIO18 |
|
20 |
MOD1-DATIO19 |
|
19 |
MOD1-DATIO20 |
|
12 |
MOD1-DATIO21 |
|
11 |
MOD1-DATIO22 |
|
5 |
MOD1-DATIO23 |
|
1 |
MOD1-DATIO24 |
|
37 |
MOD1-DATIO25 |
|
36 |
MOD1-DATIO26 |
|
46 |
MOD1-DATIO27 |
|
45 |
MOD1-DATIO28 |
|
53 |
MOD1-DATIO29 |
|
52 |
MOD1-DATIO30 |
|
4 |
MOD1-DATIO31 |
|
10 |
MOD1-DATIO32 |
|
18 |
MOD1-DATIO33 |
|
17 |
MOD1-DATIO34 |
|
26 |
MOD1-DATIO35 |
|
25 |
MOD1-DATIO36 |
|
35 |
MOD1-DATIO37 |
|
34 |
MOD1-DATIO38 |
|
44 |
MOD1-DATIO39 |
|
43 |
MOD1-DATIO40 |
|
65 |
MOD1-ETH1-TP0N |
*1 |
66 |
MOD1-ETH1-TP0P |
*1 |
62 |
MOD1-ETH1-TP1N |
*1 |
63 |
MOD1-ETH1-TP1P |
*1 |
59 |
MOD1-ETH1-TP2N |
*1 |
64 |
MOD1-ETH1-TP2P |
*1 |
60 |
MOD1-ETH1-TP3N |
*1 |
61 |
MOD1-ETH1-TP3P |
*1 |
49 |
MOD1-ETH2_4-TP1_0N |
*1 |
50 |
MOD1-ETH2_4-TP1_0P |
*1 |
47 |
MOD1-ETH2_4-TP3_2N |
*1 |
48 |
MOD1-ETH2_4-TP3_2P |
*1 |
56 |
MOD1-ETH2-TP0N |
*1 |
57 |
MOD1-ETH2-TP0P |
*1 |
54 |
MOD1-ETH2-TP2N |
*1 |
55 |
MOD1-ETH2-TP2P |
*1 |
41 |
MOD1-ETH3-TP0N |
*1 |
42 |
MOD1-ETH3-TP0P |
*1 |
32 |
MOD1-ETH3-TP1N |
*1 |
33 |
MOD1-ETH3-TP1P |
*1 |
39 |
MOD1-ETH3-TP2N |
*1 |
40 |
MOD1-ETH3-TP2P |
*1 |
30 |
MOD1-ETH3-TP3N |
*1 |
31 |
MOD1-ETH3-TP3P |
*1 |
Note
|
*1: Defines and utilized only for special “high-speed” module I/O pinout (supports modules e.g. TE1, TE2, FW1, EM1, etc.) |
J3, Ethernet Communications & Debug
The NIU2A supports up to two 10/100/1000Base-T ports (when appropriately configured) and debug/maintenance signals. The debug/maintenance signals provided are an RS-232 console port and System Reset (for a soft reset/reload). Additionally, typically for ARM/processor optioned configurations, a USB 2.0 port, Hardware Write Protect (for SATA accessibility) and a Real Time Clock Standby (i.e. auxiliary 3.3V/battery backup for the real time clock) are also provided.

Figure 8. J3 Ethernet Communications & Debug Connector Detail
Parts Identification
Chassis (Box-level) |
Mating Cable Connector |
||||
Designation |
MIL-DTL Equivalent Reference |
Shell/Insert |
Pin-count |
MIL-DTL Equivalent Reference |
NAI P/N (for reference) |
J3 |
D38999/20WD35SN |
15 / 35 |
37 |
D38999/26WD35PN |
05-0302 |
Pinouts
J3 Connector Pin |
Signal |
Notes |
1 |
ETH2-TP2+ |
*7 |
2 |
ETH2-TP0+ |
*7 |
3 |
ETH2-TP1+ |
*7 |
4 |
ETH2-TP1- |
*7 |
5 |
ETH1-TP0+ |
*7 |
6 |
ETH1-TP0- |
*7 |
7 |
ETH1-TP3+ |
*7 |
8 |
ETH1-TP3- |
*7 |
9 |
ETH1-TP1+ |
*7 |
10 |
ETH1-TP1- |
*7 |
11 |
(+)5V-USB |
*4 |
12 |
USB-GND |
*4, 6 |
13 |
USB-DM |
*4 |
14 |
USB-DP |
*4 |
15 |
RTC_STDBY |
*5 |
16 |
SER-GND |
*2, 6 |
17 |
SER-RXD1 |
*2 |
18 |
SER-TXD1 |
*2 |
19 |
ETH2-TP2- |
*7 |
20 |
ETH2-TP0- |
*7 |
21 |
ETH2-TP3+ |
*7 |
22 |
ETH2-TP3- |
*7 |
23 |
ETH1-TP2+ |
*7 |
24 |
ETH1-TP2- |
*7 |
25 |
GND |
*6 |
26 |
(J3-26) |
*8 |
27 |
(J3-27) |
*8 |
28 |
SYSRSTn |
*1 |
29 |
HDW_WP |
*3 |
30 |
GND |
*6 |
31 |
GND |
*6 |
32 |
GND |
*6 |
33 |
GND |
*6 |
34 |
(J3-34) |
*8 |
35 |
(J3-35) |
*8 |
36 |
(J3-36) |
*8 |
37 |
GND |
*6 |
Notes
-
SYSRSTn: An active “low” or GND logic level (as referenced to System GND of the NIU2A) assertion of the SYSRST# signal (internally pulled 'high') on the NIU2A processor and module cards will initiate an NIU2A system reset.
-
Debug: RS-232 Serial Communications Console port
-
Hardware-Write Protect: Used for SATA Flash write enable/disable on the processor accessible version of the NIU2A. OPEN for Write Protect, GND for Write Enable. (ARM option only)
-
USB: USB 2.0 compatibility - accessible with processor accessible version of the NIU2A.(ARM option only).
-
RTC_STDBY: +3.3V (nom) battery backup for Real Time Clock (RTC) circuit. GND (System GND referenced). (ARM option only)
-
GND, SER-GND, USB-GND: All the identified GNDs are referenced to the same internal signal GND (System GND).
-
ETHx-TPyz: Standard NIU2A configuration provides 2x 10/100/1000Base-T Ethernet ports. If the Gigabit Fiber Optic (Gb FO) connection is specified, the Ethernet functionality will not be available These signals are considered no-connects (N/C).
-
(J3-xx): Signals are undefined in the standard NIU2A configurations. These signals are considered no-connects (N/C).
J4, I/O, Module 2
The NIU2A supports up to two Smart function modules. The J4 I/O connector supports Module-2 function I/O.

Figure 9. J4 I/O Module-2 Connector Detail
Parts Identification
Chassis (Box-level) |
Mating Cable Connector |
||||
Designation |
MIL-DTL Equivalent Reference |
Shell/Insert |
Pin-count |
MIL-DTL Equivalent Reference |
NAI P/N (for reference) |
J4 |
D38999/20WF35SA |
19 / 35 |
66 |
D38999/26WF35PA |
05-0285 |
Pinout
Generic pinout. See module I/O section or contact factory regarding any special module I/O configuration.
J4 Connector Pin |
Signal |
Notes |
9 |
GND |
Signal/System Ground |
16 |
GND |
Signal/System Ground |
51 |
MOD2-DATIO01 |
|
58 |
MOD2-DATIO02 |
|
53 |
MOD2-DATIO03 |
|
52 |
MOD2-DATIO04 |
|
59 |
MOD2-DATIO05 |
|
64 |
MOD2-DATIO06 |
|
46 |
MOD2-DATIO07 |
|
45 |
MOD2-DATIO08 |
|
38 |
MOD2-DATIO09 |
|
44 |
MOD2-DATIO10 |
|
29 |
MOD2-DATIO11 |
|
43 |
MOD2-DATIO12 |
|
61 |
MOD2-DATIO13 |
|
60 |
MOD2-DATIO14 |
|
55 |
MOD2-DATIO15 |
|
54 |
MOD2-DATIO16 |
|
47 |
MOD2-DATIO17 |
|
48 |
MOD2-DATIO18 |
|
40 |
MOD2-DATIO19 |
|
39 |
MOD2-DATIO20 |
|
31 |
MOD2-DATIO21 |
|
30 |
MOD2-DATIO22 |
|
66 |
MOD2-DATIO23 |
|
65 |
MOD2-DATIO24 |
|
22 |
MOD2-DATIO25 |
|
21 |
MOD2-DATIO26 |
|
14 |
MOD2-DATIO27 |
|
15 |
MOD2-DATIO28 |
|
63 |
MOD2-DATIO29 |
|
62 |
MOD2-DATIO30 |
|
57 |
MOD2-DATIO31 |
|
56 |
MOD2-DATIO32 |
|
50 |
MOD2-DATIO33 |
|
49 |
MOD2-DATIO34 |
|
42 |
MOD2-DATIO35 |
|
41 |
MOD2-DATIO36 |
|
33 |
MOD2-DATIO37 |
|
32 |
MOD2-DATIO38 |
|
24 |
MOD2-DATIO39 |
|
23 |
MOD2-DATIO40 |
|
1 |
MOD2-ETH1-TP0N |
*1 |
2 |
MOD2-ETH1-TP0P |
*1 |
5 |
MOD2-ETH1-TP1N |
*1 |
4 |
MOD2-ETH1-TP1P |
*1 |
3 |
MOD2-ETH1-TP2N |
*1 |
8 |
MOD2-ETH1-TP2P |
*1 |
7 |
MOD2-ETH1-TP3N |
*1 |
6 |
MOD2-ETH1-TP3P |
*1 |
18 |
MOD2-ETH2_4-TP1_0N |
*1 |
17 |
MOD2-ETH2_4-TP1_0P |
*1 |
20 |
MOD2-ETH2_4-TP3_2N |
*1 |
19 |
MOD2-ETH2_4-TP3_2P |
*1 |
11 |
MOD2-ETH2-TP0N |
*1 |
10 |
MOD2-ETH2-TP0P |
*1 |
13 |
MOD2-ETH2-TP2N |
*1 |
12 |
MOD2-ETH2-TP2P |
*1 |
26 |
MOD2-ETH3-TP0N |
*1 |
25 |
MOD2-ETH3-TP0P |
*1 |
35 |
MOD2-ETH3-TP1N |
*1 |
34 |
MOD2-ETH3-TP1P |
*1 |
28 |
MOD2-ETH3-TP2N |
*1 |
27 |
MOD2-ETH3-TP2P |
*1 |
37 |
MOD2-ETH3-TP3N |
*1 |
36 |
MOD2-ETH3-TP3P |
*1 |
Notes
*1: Defines special “high-speed” module I/O pinout (includes special modules e.g. TE1, TE2, FW1, EM1, etc.)
J5, Fiber Optic, Option
The NIU2A supports up to two Fiber Optic (Gb) Connections when appropriately configured.

Figure 10. J5 Gb Fiber Optic Connector Detail (option)
Parts Identification
Chassis (Box-level) |
Mating Cable Connector |
||||
Designation |
MIL-DTL Equivalent Reference |
Shell/Insert |
Pin-count |
MIL-DTL Equivalent Reference |
NAI P/N (for reference) |
J5 |
MT38999 FO MIL-circular Amphenol: CF-599011-01S (Modified, NAI) Olive drab, Cd Includes: MT 12 fiber ferrule |
11 / 01 FO, single cavity |
2 (FO ferrule) |
Amphenol: CF-599611-01P (olive drab, Cd) Includes: MT 12 fiber ferrule with female MT to 38999 adapter kit (MT female Assy Kit (flat ribbon) / Amphenol CF-198137-000) |
TBD |

Figure 11. Mating MT Fiber Ferrule Assembly Detail (for reference only)
POWER-UP & OPERATIONAL DESCRIPTION
Panel LEDs & Functions
Front Panel LEDs Indications.

Figure 12. NIU2A Status LEDs Location
LED |
STATUS / FUNCTION ILLUMINATED |
EXTINGUISHED |
POWER GRN: |
Blinking: Initializing Steady On: Power-On/Ready |
|
Power-off |
ACCESS YEL: |
Blinking: Unit Access (GbE activity) |
No Unit Access or Activity |
STATUS RED: |
Module BIT (Attention required) |
Basic Operations
Primary SBC/host/mission computer communications interface to the NIU2A is via the Gig-E port(s). Full command/control/register data query is requested and sent as a TCP/IP or UDP type message to the NIU2A via NAI Ethernet protocol structure, i.e. the NIU2A receives a message command and replies accordingly. In addition to direct read/write function module register access, once initialized the protocol can also support multi-register block read/writes as well as generate interrupt driven output messages or timed interval data 'dump' messages.
For detailed supplement, please visit the NIU2A model page and refer to:
NAI Ethernet Interface for Generation 5 SBC and Embedded IO Boards Software Specification
The NIU2A is delivered as a tested unit. All operations have been verified. It is recommended that Power and Ethernet connections be made to verify operation of the function module(s) fitted within the NIU2A by making use of NAI’s “Embedded Soft Panel” (ESP), which can be utilized as a board/module level debugging tool (if the NIU2A function module(s) configuration supports). The example process shown below describes the use of NAI’s ESP Ethernet connectivity/exercising debug tool. Refer to the product web page software tab to download and access the latest ESP software package, including documentation, for the expected host operating system.
After applying appropriate power to the NIU2A, connect a Host computer (laptop or similar running e.g. Windows 7, Linux or other OS) and the ESP interface program application to either NIU2A Ethernet Port 1 or Port 2 (only for Dual Ethernet option). Type in the NIU’s default IP Address (e.g. 10.8.19.55 - see unit ID label for actual) and the screen below will display. The ESP is an interactive GUI application allowing full access, query and operation of the module(s) function(s) configured in the NIU2A.
Note
|
Referenced screenshots are examples and may not necessarily depict the latest version and/or revision of the NAI ESP. Please reference the latest ESP software and documentation available from the NAI web site. |
Note: Ethernet port assignments and MAC address (factory default IP addresses are indicated on the system label). Please refer to the Configuration / Ordering information section of this document.

This screen shot shows that the “Board” is a NIU1A (NIU2A, etc.) and will interface over UDP. The particular IP address in this example is the default 192.168.1.6.

Additional operational windows will be dependent on the function modules installed. The ESP program, once communication has been established, can query the board (NIU2A) function module(s) configuration, and provides accessible function specific operating windows to allow full exercising of all the function programmable variables. Refer to the product web page software tab to download and access the latest ESP software package, including documentation, for the expected host operating system.
REGISTER MEMORY MAP ADDRESSING
The register map address consists of the following:
-
cPCI/PCIe BAR or Base Address for the Board
-
Module Slot Base Address
-
Function Offset Address
Board Base Address
The table below lists the BAR used for access to the motherboard and module registers. The second BAR is used internally for motherboard and module firmware updates. The other cPCI/PCIe BARs not listed are not used.
NAI Boards |
Device ID |
Bus |
Motherboard and Module Register Access |
Motherboard and Module Firmware Updates |
Slave Boards |
NIU2A |
N/A |
N/A |
Direct Memory Access |
Module Slot and Function Address
The memory map for the modules are dependent on the types of modules on the board and the order in which the modules are installed on the board as well as the firmware installed on the motherboard. The function modules are enumerated allowing for dynamic memory space allocation and therefore the “start” address of the module function register area is factory pre-defined (and read from) the Module Address register.

Figure 13. Register Memory Map Addressing Example for NIU2A
Address Calculation
Motherboard Registers:
Read/Write access to the motherboard registers starts with the base address for the board and then the motherboard base offset address.
For example, to address Module Slot 1 Start Address register (i.e. register address = 0x0400):
-
Start with the base address for the board.
-
Add the motherboard base register address offset.
Motherboard Address = |
Base Address + Motherboard Address Offset |
= 0x0000 0400 |
0x0000 0000 + 0x0400 |
Module Registers:
Read/Write access to the Function module’s registers start with the base address of the board. Add the “content” for the Module Start Address and then, add the specific module function register offset.
For example, to address an appropriate/specific function module with a register offset:
-
Start with the base address for the board.
-
Add the value (contents) from the module base address offset register (contents/value of Motherboard Memory register for Module 1 (i.e., @ 0x0400) = 0x4000.
-
Then add the specific module function Register Offset of interest (i.e., 0x1000)
(Function Specific) Address = |
Base Address |
Module Base Address Offset |
Function Register Offset |
= 0x0000 5000 |
0x0000 0000 |
0x4000 |
0x1000 |
REGISTER DESCRIPTIONS
Module Information Registers
The Module Slot Address, Module Slot Size and Module Slot ID provide information about the modules detected on the board.
Module Slot Address
Function: Specifies the Base Address for the module in the specific slot position.
Type: unsigned binary word (32-bit)
Data Range: 0x0000 0000 to 0xFFFF FFFF
Read/Write: R
Initialized Value: Based on board’s module configuration.
Operational Settings: 0x0000 0000 indicates no Module found.
Module Slot Size
Function: Specifies the Memory Size (in bytes) allocated for the module in the specific slot position.
Type: unsigned binary word (32-bit)
Range: 0x0000 0000 to 0xFFFF FFFF
Read/Write: R
Initialized Value: Assigned by factory for the module.
Operational Settings: 0x0000 0000 indicates no Module found.
Module Slot ID
Function: Specifies the Model ID for the module in the specified slot position.
Type: 4-ASCII characters
Data Range: 0x0000 0000 to 0xFFFF FFFF
Read/Write: R
Initialized Value: Assigned by factory for the module.
Operational Settings: The Module ID is formatted as four ASCII bytes: three characters followed by a space. A value of 0000 0000 indicates no Module found.
D31 |
D30 |
D29 |
D28 |
D27 |
D26 |
D25 |
D24 |
D23 |
D22 |
D21 |
D20 |
D19 |
D18 |
D17 |
D16 |
ASCII Character (ex: 'A' - 0x41) |
ASCII Character (ex: 'D' - 0x44) |
D15 |
D14 |
D13 |
D12 |
D11 |
D10 |
D9 |
D8 |
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
Hardware Information Registers
The registers identified in this section provide information about the board’s hardware.
Product Serial Number
Function: Specifies the Board Serial Number.
Type: unsigned binary word (32-bit)
Data Range: 0x0000 0000 to 0xFFFF FFFF
Read/Write: R
Initialized Value: Serial number assigned by factory for the board.
Operational Settings: N/A
Platform
Function: Specifies the Board Platform Identifier. Values are for the ASCII characters for the NAI valid platforms (Identifiers).
Type: 4-character ASCII string
Data Range: See table below.
Read/Write: R
Initialized Value: ASCII code is for the Platform Identifier of the board
Operational Settings: NAI platform for this board is shown below:
NAI Platform |
Platform Identifier |
4-character ASCII string |
NIU |
00 |
0x0000 3030 |
Model
Function: Specifies the Board Model Identifier. Values are for the ASCII characters for the NAI valid models.
Type: 4-character ASCII string
Data Range: See table below.
Read/Write: R
Initialized Value: ASCII code is for the Model Identifier of the board
Operational Settings: NAI model for this board is shown below:
NAI Model |
4-character ASCII string |
NIU |
0x0055 494E |
Generation
Function: Specifies the Board Generation. Identifier values are for the ASCII characters for the NAI valid generation identifiers.
Type: 4-character ASCII string
Data Range: See table below.
Read/Write: R
Initialized Value: ASCII code is for the Generation Identifier of the board
Operational Settings: NAI generation for this board is shown below:
NAI Generation |
4-character ASCII string |
2A |
0x0000 4132 |
Processor Count/Ethernet Interface Count
Function: Specifies the Processor Count and Ethernet Count
Type: unsigned binary word (32-bit)
Data Range: See table below.
Read/Write: R
Operational Settings:
Processor Count - Indicates the number of unique processor types on the motherboard = 1
NAI Board |
Processor Count |
Description |
|
Nano |
NIU1A |
1 |
Xilinx Zynq 7015 with Dual Core Cortex A9 |
NIU2A |
1 |
Xilinx Zynq 7015 with Dual Core Cortex A9 |
Ethernet Interface Count - Indicates the number of Ethernet interfaces on the product motherboard. For example, Single Ethernet = 1; Dual Ethernet = 2.
D31 |
D30 |
D29 |
D28 |
D27 |
D26 |
D25 |
D24 |
D23 |
D22 |
D21 |
D20 |
D19 |
D18 |
D17 |
D16 |
Processor Count (See Table) |
|||||||||||||||
D15 |
D14 |
D13 |
D12 |
D11 |
D10 |
D9 |
D8 |
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
Ethernet Count (Based on Part Number Ethernet Options) |
Maximum Module Slot Count/ARM Platform Type
Function: SSpecifies the Maximum Module Slot Count and ARM Platform Type..
Type: unsigned binary word (32-bit)
Data Range: See table below.
Read/Write: R
Operational Settings:
Indicates the number of modules that can be installed on the product.
ARM Platform Type - Altera = 1; Xilinx X1 = 2; Xilinx X2 = 3; UltraScale = 4
NAI Board |
Maximum Module Slot Count |
ARM Platform Type |
|
Nano |
NIU1A |
1 |
Xilinx X1 = 2; Xilinx X2 = 3 |
NIU2A |
2 |
Xilinx X2 = 3 |
D31 |
D30 |
D29 |
D28 |
D27 |
D26 |
D25 |
D24 |
D23 |
D22 |
D21 |
D20 |
D19 |
D18 |
D17 |
D16 |
Maximum Module Slot Count (See Table) |
|||||||||||||||
D15 |
D14 |
D13 |
D12 |
D11 |
D10 |
D9 |
D8 |
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
ARM Platform Type (See Table) |
Motherboard Firmware Information Registers
The registers in this section provide information on the revision of the firmware installed on the motherboard.
Motherboard Core (MBCore) Firmware Version
Edit this on GitLab
Function: Specifies the Version of the NAI factory provided Motherboard Core Application installed on the board.
Type: Two (2) unsigned binary word (32-bit)
Data Range: 0x0000 0000 to 0xFFFF FFFF
Read/Write: R
Operational Settings: The motherboard firmware version consists of four components: Major, Minor, Minor 2 and Minor 3.
Word 1 (Ex. 0007 0004 = 4.7 (Major.Minor) |
|||||||||||||||
D31 |
D30 |
D29 |
D28 |
D27 |
D26 |
D25 |
D24 |
D23 |
D22 |
D21 |
D20 |
D19 |
D18 |
D17 |
D16 |
Minor (ex: 0x0007 = 7) |
|||||||||||||||
D15 |
D14 |
D13 |
D12 |
D11 |
D10 |
D9 |
D8 |
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
Major (ex: 0x0004 = 4) |
|||||||||||||||
Word 2 (Ex. 0x0000 0000 = 0000 = 0.0 (Minor2.Minor3)) |
|||||||||||||||
D31 |
D30 |
D29 |
D28 |
D27 |
D26 |
D25 |
D24 |
D23 |
D22 |
D21 |
D20 |
D19 |
D18 |
D17 |
D16 |
Minor 3 (ex: 0x000 = 0) |
|||||||||||||||
D15 |
D14 |
D13 |
D12 |
D11 |
D10 |
D9 |
D8 |
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
Minor 2 (ex: 0x000 = 0) |
Motherboard Firmware Build Time/Date
Edit this on GitLab
Function: Specifies the Build Date/Time of the NAI factory provided Motherboard Core Application installed on the board.
Type: Two (2) unsigned binary word (32-bit)
Data Range: N/A
Read/Write: R
Operational Settings: The motherboard firmware time consists of the Build Date and Build Time.
Note
|
On some builds the the Date/Time fields are fixed to 0000 0000 to maintain binary consistency across builds. |
Word 1 - Build Date (ex. 0x030C 07E2 = 2018-12-03) |
|||||||||||||||
D31 |
D30 |
D29 |
D28 |
D27 |
D26 |
D25 |
D24 |
D23 |
D22 |
D21 |
D20 |
D19 |
D18 |
D17 |
D16 |
Day (ex: 0x03 = 3) |
Month (ex: 0x0C = 12) |
||||||||||||||
D15 |
D14 |
D13 |
D12 |
D11 |
D10 |
D9 |
D8 |
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
Year (ex: 0x07E2 = 2018) |
|||||||||||||||
Word 2 - Build Time (ex. 0x001B 3B0A = 10:59:27) |
|||||||||||||||
D31 |
D30 |
D29 |
D28 |
D27 |
D26 |
D25 |
D24 |
D23 |
D22 |
D21 |
D20 |
D19 |
D18 |
D17 |
D16 |
null (0x00) |
Seconds (ex: 0x1B = 27) |
||||||||||||||
D15 |
D14 |
D13 |
D12 |
D11 |
D10 |
D9 |
D8 |
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
Minutes (ex: 0x3B = 59) |
Hours (ex: 0x0A = 10) |
Motherboard Monitoring Registers
The registers in this provide motherboard temperature measurement information.
Temperature Readings Register
Edit this on GitLab
The temperature registers provide the current, maximum (from power-up) and minimum (from power-up) for the processor and PCB for Zynq processor.
These registers are only available on Xilinx Generation 5 platforms, and are periodically populated by the motherboard core application, which only runs in Petalinux and BareMetal. For other operating systems, refer to the naibrd Software Support Kit (SSK) naibsp_system_Monitor_Temperature_Get() routine to manually retrieve the temperature (NOTE: this feature is typically utilized for development/factory use only; contact the factory for additional details on potential use, if required).
Function: Specifies the Measured Temperatures on Motherboard.
Type: signed byte (8-bits) for each temperature reading - Six (6) 32-bit words
Data Range: 0x0000 0000 to 0xFFFF 0000
Read/Write: R
Initialized Value: Value corresponding to the measured temperatures based on the table below.
Operational Settings: The 8-bit temperature readings are signed bytes. For example, if the following register contains the value 0x6955 0000:
Example:
D31 |
D30 |
D29 |
D28 |
D27 |
D26 |
D25 |
D24 |
D23 |
D22 |
D21 |
D20 |
D19 |
D18 |
D17 |
D16 |
Max Zynq Core Temperature |
Max Zynq PCB Temperature |
||||||||||||||
D15 |
D14 |
D13 |
D12 |
D11 |
D10 |
D9 |
D8 |
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
0x00 |
0x00 |
The values would represent the following temperatures:
Temperature Measurements |
Data Bits |
Value |
Temperature (Celsius) |
Max Zynq Core Temperature |
D31:D24 |
0x69 |
+105° |
Max Zynq PCB Temperature |
D23:D16 |
0x55 |
+85° |
Temperature Readings
D31 |
D30 |
D29 |
D28 |
D27 |
D26 |
D25 |
D24 |
D23 |
D22 |
D21 |
D20 |
D19 |
D18 |
D17 |
D16 |
Zynq Core Temperature |
Zynq PCB Temperature |
||||||||||||||
D15 |
D14 |
D13 |
D12 |
D11 |
D10 |
D9 |
D8 |
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
0x00 |
0x00 |
D31 |
D30 |
D29 |
D28 |
D27 |
D26 |
D25 |
D24 |
D23 |
D22 |
D21 |
D20 |
D19 |
D18 |
D17 |
D16 |
0x00 |
0x00 |
||||||||||||||
D15 |
D14 |
D13 |
D12 |
D11 |
D10 |
D9 |
D8 |
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
0x00 |
0x00 |
D31 |
D30 |
D29 |
D28 |
D27 |
D26 |
D25 |
D24 |
D23 |
D22 |
D21 |
D20 |
D19 |
D18 |
D17 |
D16 |
Max Zynq Core Temp |
Max Zynq PCB Temp |
||||||||||||||
D15 |
D14 |
D13 |
D12 |
D11 |
D10 |
D9 |
D8 |
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
0x00 |
0x00 |
D31 |
D30 |
D29 |
D28 |
D27 |
D26 |
D25 |
D24 |
D23 |
D22 |
D21 |
D20 |
D19 |
D18 |
D17 |
D16 |
0x00 |
0x00 |
||||||||||||||
D15 |
D14 |
D13 |
D12 |
D11 |
D10 |
D9 |
D8 |
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
D31 |
D30 |
D29 |
D28 |
D27 |
D26 |
D25 |
D24 |
D23 |
D22 |
D21 |
D20 |
D19 |
D18 |
D17 |
D16 |
Min Zynq Core Temperature |
Min Zynq PCB Temperature |
||||||||||||||
D15 |
D14 |
D13 |
D12 |
D11 |
D10 |
D9 |
D8 |
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
D31 |
D30 |
D29 |
D28 |
D27 |
D26 |
D25 |
D24 |
D23 |
D22 |
D21 |
D20 |
D19 |
D18 |
D17 |
D16 |
0x00 |
0x00 |
||||||||||||||
D15 |
D14 |
D13 |
D12 |
D11 |
D10 |
D9 |
D8 |
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
Higher Precision Temperature Readings Register
These registers provide higher precision readings of the current Zynq and PCB temperatures.
Higher Precision Zynq Core Temperature
Edit this on GitLab
Function: Specifies the Higher Precision Measured Zynq Core temperature on Interface Board.
Type: signed word (16-bits) for integer part and unsigned word (16-bits) for fractional part
Data Range: 0x0000 0000 to 0xFFFF FFFF
Read/Write: R
Initialized Value: Measured Zynq Core temperature on Interface Board
Operational Settings: The upper 16-bits represent the signed integer part of the temperature and the lower 16-bits represent the fractional part of the temperature with the resolution of 1/1000 of degree Celsius. For example, if the register contains the value 0x002B 0271, this represents Zynq Core Temperature = 43.625° Celsius, and value 0xFFF6 0177 represents -10.375° Celsius.
D31 |
D30 |
D29 |
D28 |
D27 |
D26 |
D25 |
D24 |
D23 |
D22 |
D21 |
D20 |
D19 |
D18 |
D17 |
D16 |
Signed Integer Part of Temperature |
|||||||||||||||
D15 |
D14 |
D13 |
D12 |
D11 |
D10 |
D9 |
D8 |
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
Fractional Part of Temperature |
Higher Precision Motherboard PCB Temperature
Edit this on GitLab
Function: Specifies the Higher Precision Measured Motherboard PCB temperature.
Type: signed word (16-bits) for integer part and unsigned word (16-bits) for fractional part
Data Range: 0x0000 0000 to 0xFFFF FFFF
Read/Write: R
Initialized Value: Measured Motherboard PCB temperature
Operational Settings: The upper 16-bits represent the signed integer part of the temperature and the lower 16-bits represent the fractional part of the temperature with the resolution of 1/1000 of degree Celsius. For example, if the register contains the value 0x0020 007D, this represents Interface PCB Temperature = 32.125° Celsius, and value 0xFFE8 036B represents -24.875° Celsius.
D31 |
D30 |
D29 |
D28 |
D27 |
D26 |
D25 |
D24 |
D23 |
D22 |
D21 |
D20 |
D19 |
D18 |
D17 |
D16 |
Signed Integer Part of Temperature |
|||||||||||||||
D15 |
D14 |
D13 |
D12 |
D11 |
D10 |
D9 |
D8 |
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
Fractional Part of Temperature |
Motherboard Health Monitoring Registers
The registers in this section provide a summary of motherboard temperature sensors and their corresponding bits. Additionally, this section provides an overview of the registers allocated to those sensors, which are used to monitor current/minimum/maximum temperature readings, upper & lower critical/warning temperature thresholds, and whether or not a programmed temperature threshold has been exceeded.
These registers are only available on Xilinx Generation 5 platforms, and are periodically populated by the motherboard core application, which only runs in Petalinux and BareMetal. For other operating systems, refer to the naibrd Software Support Kit (SSK) naibsp_system_Monitor_Temperature_Get() routine to manually retrieve the temperature (NOTE: this feature is typically utilized for development/factory use only; contact the factory for additional details on potential use, if required).
Motherboard Sensor Summary Status
Edit this on GitLab
Function: The corresponding sensor bit is set if the sensor has crossed any of its thresholds.
Type: unsigned binary word (32-bits)
Data Range: See table below
Read/Write: R
Initialized Value: 0
Operational Settings: This register provides a summary for motherboard sensors. When the corresponding sensor bit is set, the Sensor Threshold Status register for that sensor will indicate the threshold condition that triggered the event.
Bit(s) |
Sensor |
D31:D5 |
Reserved |
D4 |
Motherboard PCB Temperature |
D3 |
Zynq Core Temperature |
D2:D0 |
Reserved |
Motherboard Sensor Registers
Edit this on GitLab
The registers listed in this section apply to each module sensor listed for the Motherboard Sensor Summary Status register. Each individual sensor register provides a group of registers for monitoring motherboard temperatures readings. From these registers, a user can read the current temperature of the sensor in addition to the minimum and maximum temperature readings since power-up. Upper and lower critical/warning temperature thresholds can be set and monitored from these registers. When a programmed temperature threshold is crossed, the Sensor Threshold Status register will set the corresponding bit for that threshold. The figure below shows the functionality of this group of registers when accessing the Zynq Core Temperature sensor as an example.
Sensor Threshold Status
Edit this on GitLab
Function: Reflects which threshold has been crossed
Type: unsigned binary word (32-bits)
Data Range: See table below
Read/Write: R
Initialized Value: 0
Operational Settings: The associated bit is set when the sensor reading exceed the corresponding threshold settings.
Bit(s) |
Description |
D31:4 |
Reserved |
D3 |
Exceeded Upper Critical Threshold |
D2 |
Exceeded Upper Warning Threshold |
D1 |
Exceeded Lower Critical Threshold |
D0 |
Exceeded Lower Warning Threshold |
Sensor Current Reading
Edit this on GitLab
Function: Reflects current reading of temperature sensor
Type: Single Precision Floating Point Value (IEEE-754)
Data Range: Single Precision Floating Point Value (IEEE-754)
Read/Write: R
Initialized Value: N/A
Operational Settings: The register represents current sensor reading as a single precision floating point value. For example, for a temperature sensor, register value 0x41C6 0000 represents temperature = 24.75° Celsius.
Sensor Minimum Reading
Edit this on GitLab
Function: Reflects minimum value of temperature sensor since power up
Type: Single Precision Floating Point Value (IEEE-754)
Data Range: Single Precision Floating Point Value (IEEE-754)
Read/Write: R
Initialized Value: N/A
Operational Settings: The register represents minimum sensor value as a single precision floating point value. For example, for a temperature sensor, register value 0x41C6 0000 represents temperature = 24.75° Celsius.
Sensor Maximum Reading
Edit this on GitLab
Function: Reflects maximum value of temperature sensor since power up
Type: Single Precision Floating Point Value (IEEE-754)
Data Range: Single Precision Floating Point Value (IEEE-754)
Read/Write: R
Initialized Value: N/A
Operational Settings: The register represents maximum sensor value as a single precision floating point value. For example, for a temperature sensor, register value 0x41C6 0000 represents temperature = 24.75° Celsius.
Sensor Lower Warning Threshold
Edit this on GitLab
Function: Reflects lower warning threshold of temperature sensor
Type: Single Precision Floating Point Value (IEEE-754)
Data Range: Single Precision Floating Point Value (IEEE-754)
Read/Write: R/W
Initialized Value: Default lower warning threshold (value dependent on specific sensor)
Operational Settings: The register represents sensor lower warning threshold as a single precision floating point value. For example, for a temperature sensor, register value 0xC220 0000 represents temperature = -40.0° Celsius.
Sensor Lower Critical Threshold
Edit this on GitLab
Function: Reflects lower critical threshold of temperature sensor
Type: Single Precision Floating Point Value (IEEE-754)
Data Range: Single Precision Floating Point Value (IEEE-754)
Read/Write: R/W
Initialized Value: Default lower critical threshold (value dependent on specific sensor)
Operational Settings: The register represents sensor lower critical threshold as a single precision floating point value. For example, for a temperature sensor, register value 0xC25C 0000 represents temperature = -55.0° Celsius.
Sensor Upper Warning Threshold
Edit this on GitLab
Function: Reflects upper warning threshold of temperature sensor
Type: Single Precision Floating Point Value (IEEE-754)
Data Range: Single Precision Floating Point Value (IEEE-754)
Read/Write: R/W
Initialized Value: Default upper warning threshold (value dependent on specific sensor)
Operational Settings: The register represents sensor upper warning threshold as a single precision floating point value. For example, for a temperature sensor, register value 0x42AA 0000 represents temperature = 85.0° Celsius.
Sensor Upper Critical Threshold
Edit this on GitLab
Function: Reflects upper critical threshold of temperature sensor
Type: Single Precision Floating Point Value (IEEE-754)
Data Range: Single Precision Floating Point Value (IEEE-754)
Read/Write: R/W
Initialized Value: Default upper critical threshold (value dependent on specific sensor)
Operational Settings: The register represents sensor upper critical threshold as a single precision floating point value. For example, for a temperature sensor, register value 0x42FA 0000 represents temperature = 125.0° Celsius.
Ethernet Configuration Registers
Edit this on GitLab
The registers in this section provide information about the Ethernet Configuration for the two ports on the board.
Important: Regardless if the board is configured for one or two Ethernet ports, the second IP address cannot be on the same Subnet as the First IP Address. The table below provides examples of valid and invalid IP Addresses and Subnet Mask Addresses.
First Port (A) IP Address |
First Port (A) Subnet Mask |
Second Port (B) IP Address |
Second Port (B) Subnet Mask |
Result |
192.168.1.5 |
255.255.255.0 |
192.168.2.5 |
255.255.255.0 |
Good |
192.168.1.5 |
255.255.0.0 |
192.168.2.5 |
255.255.0.0 |
Conflict |
192.168.1.5 |
255.255.0.0 |
192.168.2.5 |
255.255.255.0 |
Conflict |
10.0.0.15 |
255.0.0.0 |
192.168.1.5 |
255.255.255.0 |
Good |
Ethernet MAC Address and Ethernet Settings
Edit this on GitLab
Function: Specifies the Ethernet MAC Address and Ethernet Settings for the Ethernet port.
Type: Two (2) unsigned binary word (32-bit)
Data Range: See table.
Read/Write: R
Operational Settings: The Ethernet MAC Address consists of six octets. The Ethernet Settings are defined in table.
Bits |
Description |
Values |
D31:D23 |
Reserved |
0 |
D22:D21 |
Duplex |
00 = Not Specified, 01 = Half Duplex, 10 = Full Duplex, 11 = Reserved |
D20:D18 |
Speed |
000 = Not Specified, 001 = 10 Mbps, 010 = 100 Mbps, 011 = 1000 Mbps, 100 = 2500 Mbps, 101 = 10000 Mbps, 110 = Reserved, 111 = Reserved |
D17 |
Auto Negotiate |
0 = Enabled, 1 = Disabled |
D16 |
Static IP Address |
0 = Enabled, 1 = Disabled |
Word 1 (Ethernet MAC Address (Octets 1-4)) (ex: aa:bb:cc:dd:ee:ff) |
|||||||||||||||
D31 |
D30 |
D29 |
D28 |
D27 |
D26 |
D25 |
D24 |
D23 |
D22 |
D21 |
D20 |
D19 |
D18 |
D17 |
D16 |
MAC Address Octet 4 (ex: 0xDD) |
MAC Address Octet 3 (ex: 0xCC) |
||||||||||||||
D15 |
D14 |
D13 |
D12 |
D11 |
D10 |
D9 |
D8 |
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
MAC Address Octet 2 (ex: 0xBB) |
MAC Address Octet 1 (ex: 0xAA) |
||||||||||||||
Word 2 (Ethernet MAC Address (Octets 5-6) and Ethernet Settings) |
|||||||||||||||
D31 |
D30 |
D29 |
D28 |
D27 |
D26 |
D25 |
D24 |
D23 |
D22 |
D21 |
D20 |
D19 |
D18 |
D17 |
D16 |
Ethernet Settings (See table) |
|||||||||||||||
D15 |
D14 |
D13 |
D12 |
D11 |
D10 |
D9 |
D8 |
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
MAC Address Octet 6 (ex: 0xFF) |
MAC Address Octet 5 (ex: 0xEE) |
Ethernet Interface Name
Edit this on GitLab
Function: Specifies the Ethernet Interface Name for the Ethernet port.
Type: 8-character ASCII string
Data Range: See table.
Read/Write: R
Operational Settings: The Ethernet Interface Name (eth0, eth1, etc) for the Ethernet port.
Word 1 (Bit 0-31) (ex: 0x3068 7465 = “0hte”) |
|||||||||||||||
D31 |
D30 |
D29 |
D28 |
D27 |
D26 |
D25 |
D24 |
D23 |
D22 |
D21 |
D20 |
D19 |
D18 |
D17 |
D16 |
ASCII Character (ex: '0' - 0x30) |
ASCII Character (ex: 'h' - 0x68) |
||||||||||||||
D15 |
D14 |
D13 |
D12 |
D11 |
D10 |
D9 |
D8 |
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
ASCII Character (ex: 't' - 0x74) |
ASCII Character (ex: 'e' - 0x65) |
||||||||||||||
Word 2 (Bit 32-63) (ex: 0x0000 0000) |
|||||||||||||||
D31 |
D30 |
D29 |
D28 |
D27 |
D26 |
D25 |
D24 |
D23 |
D22 |
D21 |
D20 |
D19 |
D18 |
D17 |
D16 |
ASCII Character (ex: null - 0x00) |
ASCII Character (ex: null - 0x00) |
||||||||||||||
D15 |
D14 |
D13 |
D12 |
D11 |
D10 |
D9 |
D8 |
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
ASCII Character (ex: null - 0x00) |
ASCII Character (ex: null - 0x00) |
Ethernet IPv4 Address
Edit this on GitLab
Function: Specifies the Ethernet IPv4 Address for the Ethernet port.
Type: Three (3) unsigned binary word (32-bit)
Data Range: See table.
Read/Write: R
Operational Settings: The Ethernet IPv4 Address consists of three parts: IPv4 Address, IPv4 Subnet Mask and IPv4 Gateway.
Word 1 (Ethernet IPv4 Address) (ex: 0x1001 A8C0 = 192.168.1.16) |
|||||||||||||||
D31 |
D30 |
D29 |
D28 |
D27 |
D26 |
D25 |
D24 |
D23 |
D22 |
D21 |
D20 |
D19 |
D18 |
D17 |
D16 |
IPv4 Address Octet 4 (ex: 0x10 = 16) |
IPv4 Address Octet 3 (ex: 0x01 = 1) |
||||||||||||||
D15 |
D14 |
D13 |
D12 |
D11 |
D10 |
D9 |
D8 |
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
IPv4 Address Octet 2 (ex: 0xA8 = 168) |
IPv4 Address Octet 1 (ex: 0xC0 = 192) |
||||||||||||||
Word 2 (Ethernet IPv4 Subnet) (ex: 0x00FF FFFF = 255.255.255.0) |
|||||||||||||||
D31 |
D30 |
D29 |
D28 |
D27 |
D26 |
D25 |
D24 |
D23 |
D22 |
D21 |
D20 |
D19 |
D18 |
D17 |
D16 |
IPv4 Subnet Octet 4 (ex: 0x00 = 0) |
IPv4 Subnet Octet 3 (ex: 0xFF = 255) |
||||||||||||||
D15 |
D14 |
D13 |
D12 |
D11 |
D10 |
D9 |
D8 |
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
IPv4 Subnet Octet 2 (ex: 0xFF = 255) |
IPv4 Subnet Octet 1 (ex: 0xFF = 255) |
||||||||||||||
Word 3 (Ethernet IPv4 Gateway) (ex: 0x0101 A8C0 = 192.168.1.1) |
|||||||||||||||
D31 |
D30 |
D29 |
D28 |
D27 |
D26 |
D25 |
D24 |
D23 |
D22 |
D21 |
D20 |
D19 |
D18 |
D17 |
D16 |
IPv4 Gateway Octet 4 (ex: 0x01 = 1) |
IPv4 Gateway Octet 3 (ex: 0x01 = 1) |
||||||||||||||
D15 |
D14 |
D13 |
D12 |
D11 |
D10 |
D9 |
D8 |
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
IPv4 Gateway Octet 2 (ex: 0xA8 = 168) |
IPv4 Gateway Octet 1 (ex: 0xC0 = 192) |
Ethernet IPv6 Address
Edit this on GitLab
Function: Specifies the Ethernet IPv6 Address for the Ethernet port.
Type: Five (5) unsigned binary word (32-bit)
Data Range: See table.
Read/Write: R
Operational Settings: The IPv6 Prefix length indicates the network portion of an IPv6 address using the following format:
-
IPv6 address/prefix length
-
Prefix length can range from 0 to 128
-
Typical prefix length is 64
The following is an illustration of IPv6 addressing with IPv6 Prefix length of 64.
64 bits |
64 bits |
||||||
Prefix |
Interface ID |
||||||
Prefix 1 |
Prefix 2 |
Prefix 3 |
Subnet ID |
Interface ID 1 |
Interface ID 2 |
Interface ID 3 |
Interface ID 4 |
Example: 2002:c0a8:101:0:7c99:d118:9058:1235/64 |
|||||||
2002 |
C0A8 |
0101 |
0000 |
7C99 |
D118 |
9058 |
1235 |
Word 1 (Ethernet IPv6 Address (Prefix 1-2)) (ex:0xA8C0 0220 = 2002 C0A8) |
|||||||||||||||
D31 |
D30 |
D29 |
D28 |
D27 |
D26 |
D25 |
D24 |
D23 |
D22 |
D21 |
D20 |
D19 |
D18 |
D17 |
D16 |
Prefix 2 (ex: 0xA8C0 = C0A8) |
|||||||||||||||
D15 |
D14 |
D13 |
D12 |
D11 |
D10 |
D9 |
D8 |
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
Prefix 1 (ex: 0x0220 = 2002) |
|||||||||||||||
Word 2 (Ethernet IPv6 Address (Prefix 3/Subnet ID)) (ex:0x000 0101 = 0101 0000) |
|||||||||||||||
D31 |
D30 |
D29 |
D28 |
D27 |
D26 |
D25 |
D24 |
D23 |
D22 |
D21 |
D20 |
D19 |
D18 |
D17 |
D16 |
Subnet ID (ex: 0x0000 = 0000) |
|||||||||||||||
D15 |
D14 |
D13 |
D12 |
D11 |
D10 |
D9 |
D8 |
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
Prefix 3 (ex: 0x0101 = 0101) |
|||||||||||||||
Word 3 (Ethernet IPv6 Address (Interface ID 1-2)) (ex: 0x18D1 997C = 7C99 D118) |
|||||||||||||||
D31 |
D30 |
D29 |
D28 |
D27 |
D26 |
D25 |
D24 |
D23 |
D22 |
D21 |
D20 |
D19 |
D18 |
D17 |
D16 |
Interface ID 2 (ex: 0x18D1 = D118) |
|||||||||||||||
D15 |
D14 |
D13 |
D12 |
D11 |
D10 |
D9 |
D8 |
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
Interface ID 1 (ex: 0x997C = 7C99) |
|||||||||||||||
Word 4 (Ethernet IPv6 Address (Interface ID 3-4)) (ex: 0x3512 5890 = 9058 1235) |
|||||||||||||||
D31 |
D30 |
D29 |
D28 |
D27 |
D26 |
D25 |
D24 |
D23 |
D22 |
D21 |
D20 |
D19 |
D18 |
D17 |
D16 |
Interface ID 4 (ex: 0x3512 = 1235) |
|||||||||||||||
D15 |
D14 |
D13 |
D12 |
D11 |
D10 |
D9 |
D8 |
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
Interface ID 3 (ex: 0x5890 = 9058) |
|||||||||||||||
Word 5 (Ethernet IPv6 Prefix Length) (ex:0x0000 0040) |
|||||||||||||||
D31 |
D30 |
D29 |
D28 |
D27 |
D26 |
D25 |
D24 |
D23 |
D22 |
D21 |
D20 |
D19 |
D18 |
D17 |
D16 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
D15 |
D14 |
D13 |
D12 |
D11 |
D10 |
D9 |
D8 |
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
Prefix Length (ex: 0x0040 = 64) |
Interrupt Vector and Steering
Edit this on GitLab
When interrupts are enabled, the interrupt vector associated with the specific interrupt can be programmed (typically with a unique number/identifier) such that it can be utilized in the Interrupt Service Routine (ISR) to identify the type of interrupt. When an interrupt occurs, the contents of the Interrupt Vector registers is reported as part of the interrupt mechanism. In addition to specifying the interrupt vector, the interrupt can be directed (“steered”) to the native bus or to the application running on the onboard ARM processor.
Note
|
The Interrupt Vector and Interrupt Steering registers are mapped to the Motherboard Common Memory and these registers are associated with the Module Slot position (refer to Function Register Map). |
Interrupt Vector
Function: Set an identifier for the interrupt.
Type: unsigned binary word (32-bit)
Data Range: 0x0000 0000 to 0xFFFF FFFF
Read/Write: R/W
Initialized Value: 0
Operational Settings: When an interrupt occurs, this value is reported as part of the interrupt mechanism.
Interrupt Steering
Function: Sets where to direct the interrupt.
Type: unsigned binary word (32-bit)
Data Range: See table Read/Write: R/W
Initialized Value: 0
Operational Settings: When an interrupt occurs, the interrupt is sent as specified:
Direct Interrupt to VME |
1 |
Direct Interrupt to ARM Processor (via SerDes) (Custom App on ARM or NAI Ethernet Listener App) |
2 |
Direct Interrupt to PCIe Bus |
5 |
Direct Interrupt to cPCI Bus |
6 |
Module Control Command Registers
Edit this on GitLab
Function: Provides the ability to command individual Modules to Reset, Power-down, or Power-up.
Type: unsigned binary word (32-bit)
Data Range: 0x0000 0000 to 0xFFFF FFFF
Read/Write: R/W
Operational Settings: The Module Control Commands registers provide the ability to request individual Modules to perform one of the following functions – Reset, Power-down, Power-up. Only one command can be requested at a time per Module. For example, one can’t request a Reset and a Power-down at the same time for the same Module. Once the command is recognized and handled, the bit will be cleared.
Note
|
Clearing of the command request bit only indicates the command has been recognized and initiated, it does not indicate that the command action has been completed. |
There is one Control Command Request register per Module. Each register is Bit-mapped as shown in the table below:
Bit(s) |
Description |
D31:D3 |
Reserved |
D2 |
Module Power-up |
D1 |
Module Power-down |
D0 |
Module Reset |
Modules Health Monitoring Registers
Module Communications Status
Edit this on GitLab
Function: Provides the ability to monitor factors may effect communication status of a Module.
Type: unsigned binary word (32-bit)
Data Range: 0x0000 0000 to 0xFFFF FFFF
Read/Write: R
Operational Settings: The Module Communications registers provide the ability to monitor factors that may effect the Communications Status of individual Modules. There is one register per Module. Each communication factor is bit mapped to the register as shown in the table below:
Bit(s) |
Description |
D31:D5 |
Reserved |
D4 |
Module Communications Error Detected |
D3 |
Module Firmware Not Ready |
D2 |
Module LinkInit Not Done |
D1 |
Module Not Detected |
D0 |
Module Powered-down |
Module Powered-down: The user can request an individual Module be powered-down (see Module Control Command Requests). Once the request is detected and acted upon, this bit will be set. Once powered-down, you will not be able to communicate with the Module.
Module Not Detected: If a Module in this slot has not been detected, you will not be able to communicate with the Module.
Module LinkInit Not Done: Module communications is accomplished via SERDES. LinkInit is required to establish a connection to the Module. If the LinkInit has not been successfully completed, you will not be able to communicate with the Module.
Module Firmware Not Ready: Each Module has Firmware that is ready from Module QSPI and loaded for execution. If this Firmware was not loaded and started successfully, you may not be able to communicate with the Module.
Module Communications Error Detected: If at some point during run-time, communications with the Module has failed, this bit will be set.
Module BIT Status
Function: Provides the ability to monitor the individual Module BIT Status.
Type: unsigned binary word (32-bit)
Data Range: 0x0000 0000 to 0xFFFF FFFF
Read/Write: R
Operational Settings: The Module BIT Status registers provide the ability to monitor individual Module BIT results as Latched and current value. A 1 is any bit field indicates BIT failure for the Module in that slot.
Bit(s) |
Description |
D31:D19 |
Reserved |
D18 |
Module Slot 2 BIT Failure (current value) |
D17 |
Module Slot 1 BIT Failure (current value) |
D16 |
Reserved |
D15:D3 |
Reserved |
D2 |
Module Slot 2 BIT Failure - Latched |
D1 |
Module Slot 1 BIT Failure - Latched |
D0 |
Reserved |
Scratchpad Area
Edit this on GitLab
Function: Registers reserved as scratch pad for customer use.
Type: unsigned binary word (32-bit)
Data Range: 0x0000 0000 to 0xFFFF FFFF
Read/Write: R/W
Operational Settings: This area in memory is reserved for customer use.
MOTHERBOARD FUNCTION REGISTER MAP
Key:
Bold Underline = Measurement/Status/Board Information
Bold Italic = Configuration/Control
Module Information Registers
0x0400 |
Module Slot 1 Address |
R |
0x0404 |
Module Slot 2 Address |
R |
0x0430 |
Module Slot 1 Size |
R |
0x0434 |
Module Slot 2 Size |
R |
0x0460 |
Module Slot 1 ID |
R |
0x0464 |
Module Slot 2 ID |
R |
Hardware Information Registers
0x0020 |
Product Serial Number |
R |
0x0024 |
Platform |
R |
0x0028 |
Model |
R |
0x002C |
Generation |
R |
0x0030 |
Processor Count/Ethernet Count |
R |
0x0034 |
Maximum Module Slot Count/ARM Platform Type |
R |
Motherboard Firmware Information Registers
0x0100 |
MBExec Major/Minor Version |
R |
0x0104 |
MBExec Minor 2/3 Version |
R |
0x0108 |
MBExec Build Date (Bit 0-31) |
R |
Motherboard Monitoring Registers
Temperature Readings
0x0200 |
Current Zynq Temperatures |
R |
0x0204 |
Reserved |
R |
0x0208 |
Max Zynq Temperatures |
R |
0x020C |
Reserved |
R |
0x0210 |
Min Zynq Temperatures |
R |
0x0214 |
Reserved |
R |
Higher Precision Temperature Readings
0x0230 |
Current Zynq Core Temperature |
R |
0x0234 |
Current Zynq PCB Temperature |
R |
Ethernet Configuration Registers
0x0070 |
Ethernet A MAC (Octets 1-4) |
R |
0x0074 |
Ethernet A MAC (Octets 5-6)/Misc Settings |
R |
0x0078 |
Ethernet A Interface Name (Bit 0-31) |
R |
0x007C |
Ethernet A Interface Name (Bit 32-63) |
R |
0x0080 |
Ethernet A IPv4 Address |
R |
0x0084 |
Ethernet A IPv4 Subnet Mask |
R |
0x0088 |
Ethernet A IPv4 Gateway |
R |
0x008C |
Ethernet A IPv6 Address (Prefix 1-2) |
R |
0x0090 |
Ethernet A IPv6 Address (Prefix 3/Subnet ID) |
R |
0x0094 |
Ethernet A IPv6 Address (Interface ID 1-2) |
R |
0x0098 |
Ethernet A IPv6 Address (Interface ID 3-4) |
R |
0x009C |
Ethernet A IPv6 Prefix Length |
R |
0x00A0 |
Ethernet B MAC (Octets 1-4) |
R |
0x00A4 |
Ethernet B MAC (Octets 5-6)/Misc Settings |
R |
0x00A8 |
Ethernet B Interface Name (Bit 0-31) |
R |
0x00AC |
Ethernet B Interface Name (Bit 32-63) |
R |
0x00B0 |
Ethernet B IPv4 Address |
R |
0x00B4 |
Ethernet B IPv4 Subnet Mask |
R |
0x00B8 |
Ethernet B IPv4 Gateway |
R |
0x00BC |
Ethernet B IPv6 Address (Prefix 1-2) |
R |
0x00C0 |
Ethernet B IPv6 Address (Prefix 3/Subnet ID) |
R |
0x00C4 |
Ethernet B IPv6 Address (Interface ID 1-2) |
R |
0x00C8 |
Ethernet B IPv6 Address (Interface ID 3-4) |
R |
0x00CC |
Ethernet B IPv6 Prefix Length |
R |
Interrupt Vector and Steering
0x0500 - 0x057C |
Module 1 Interrupt Vector 1 - 32 |
R/W |
0x0600 - 0x067C |
Module 1 Interrupt Steering 1 - 32 |
R/W |
0x0700 - 0x077C |
Module 2 Interrupt Vector 1 - 32 |
R/W |
0x0800 - 0x087C |
Module 2 Interrupt Steering 1 - 32 |
R/W |
Module Control Command Requests
0x01D8 |
Module Slot 1 Command Request |
R/W |
0x01DC |
Module Slot 2 Command Request |
R/W |
ETHERNET
Edit this on GitLab
(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)
The Ethernet Interface Option allows communications and control access to all function modules either via the system BUS or Ethernet ports 1 or 2.
Ethernet 1 |
Ethernet 2 |
Ethernet 3* |
Ethernet 4* |
|
(REF PORT A) |
(REF PORT B) |
(REF PORT C) |
(REF PORT D) |
|
The default IP address: |
192.168.1.16 |
192.168.2.16 |
192.168.3.16 |
192.168.4.16 |
The default subnet: |
255.255.255.0 |
255.255.255.0 |
255.255.255.0 |
255.255.255.0 |
The default gateway: |
192.168.1.1 |
192.168.2.1 |
192.168.3.1 |
192.168.4.1 |
*see Part Number Designation for applicability.
Note
|
Actual "as shipped" card Ethernet default IP addresses may vary based upon final ATP configuration(s). |
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
Preamble |
The Preamble is used to delineate the beginning of a message frame. The Preamble is always 0xD30F. |
SequenceNo |
The SequenceNo is used to associate Commands with Responses. |
Type Code |
Type Codes are used to define the type of Command or Response the message contains. |
Message Length |
The 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. |
Payload |
The Payload contains the unique data that makes up the command or response. Payloads vary based on command type. |
Postamble |
The Postamble is use to delineate the end of a message frame. The Postamble is always 0xF03D. |
Notes
-
The messaging protocol applies only to card products.
-
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 Pin |
T568A Color |
T568B Color |
10/100Base-T |
1000BASE-T |
NAI wiring convention |
1 |
white/green stripe |
white/orange stripe |
TX+ |
DA+ |
ETH-TP0+ |
2 |
green |
orange |
TX- |
DA- |
ETH-TP0- |
3 |
white/orange stripe |
white/green stripe |
RX+ |
DB+ |
ETH-TP1+ |
4 |
blue |
blue |
DC+ |
ETH-TP2+ |
|
5 |
white/blue stripe |
white/blue stripe |
DC- |
ETH-TP2- |
|
6 |
orange |
green |
RX- |
DB- |
ETH-TP1- |
7 |
white/brown stripe |
white/brown stripe |
DD+ |
ETH-TP3+ |
|
8 |
brown |
brown |
DD- |
ETH-TP3- |
NIU2A I/O MAPPING
NIU2A I/O Mapping (for reference) is shown below, with respect to DATAIO. Additional information on pin-outs can be found in the Module Operational Manuals or by contacting the factory (NOTE: 'N/C' indicates pin not available at Jx I/O connector).
Internal Reference Only |
MOD1 (J2 – I/O) |
MOD2 (J4 – I/O) |
MOD-DATIO01 |
24 |
51 |
MOD-DATIO02 |
23 |
58 |
MOD-DATIO03 |
22 |
53 |
MOD-DATIO04 |
21 |
52 |
MOD-DATIO05 |
16 |
59 |
MOD-DATIO06 |
15 |
64 |
MOD-DATIO07 |
9 |
46 |
MOD-DATIO08 |
8 |
45 |
MOD-DATIO09 |
14 |
38 |
MOD-DATIO10 |
13 |
44 |
MOD-DATIO11 |
7 |
29 |
MOD-DATIO12 |
6 |
43 |
MOD-DATIO13 |
3 |
61 |
MOD-DATIO14 |
2 |
60 |
MOD-DATIO15 |
38 |
55 |
MOD-DATIO16 |
29 |
54 |
MOD-DATIO17 |
28 |
47 |
MOD-DATIO18 |
27 |
48 |
MOD-DATIO19 |
20 |
40 |
MOD-DATIO20 |
19 |
39 |
MOD-DATIO21 |
12 |
31 |
MOD-DATIO22 |
11 |
30 |
MOD-DATIO23 |
5 |
66 |
MOD-DATIO24 |
1 |
65 |
MOD-DATIO25 |
37 |
22 |
MOD-DATIO26 |
36 |
21 |
MOD-DATIO27 |
46 |
14 |
MOD-DATIO28 |
45 |
15 |
MOD-DATIO29 |
53 |
63 |
MOD-DATIO30 |
52 |
62 |
MOD-DATIO31 |
4 |
57 |
MOD-DATIO32 |
10 |
56 |
MOD-DATIO33 |
18 |
50 |
MOD-DATIO34 |
17 |
49 |
MOD-DATIO35 |
26 |
42 |
MOD-DATIO36 |
25 |
41 |
MOD-DATIO37 |
35 |
33 |
MOD-DATIO38 |
34 |
32 |
MOD-DATIO39 |
44 |
24 |
MOD-DATIO40 |
43 |
23 |
N/C |
||
N/C |
||
N/C |
||
SYSTEM-GND |
51 |
9 |
SYSTEM-GND |
58 |
16 |
SYNCHRO/RESOLVER AND LVDT/RVDT SIMULATION MODULE CODE TABLES
Edit this on GitLab
Select the Digital-to-Synchro (DSx), Digital-to-Resolver (DRx) or Digital-to-LVDT/RVDT (DLx) module ID corresponding to the application operating parameters required from the following code table (where x = the specific module ID designator). Customer should indicate the actual frequency applicable the design to assure that the correct default band width is set at the factory. All Input and Reference voltages are auto ranging. Frequency/voltage band tolerances +/- 10%. For availability and ranges other than those listed contact the factory. Specifications may be subject to change.
-
Single Channel module pending availability (contact factory)
Module ID |
Format |
Channel(s) |
Output Voltage VL-L (Vrms) |
Reference Voltage (Vrms) |
Frequency Range (Hz) |
Power / CH maximum (VA) |
Notes |
DS1 |
SYN |
1* |
2 - 28 |
2 - 115 |
47 - 1 K |
3 |
|
DR1 |
RSL |
||||||
DL1 |
LVDT/RVDT |
||||||
DS2 |
SYN |
1* |
2 - 28 |
2 - 115 |
1 K - 5 K |
3 |
|
DR2 |
RSL |
||||||
DL2 |
LVDT/RVDT |
||||||
DS3 |
SYN |
1* |
2 - 28 |
2 - 115 |
5 K - 10 K |
3 |
|
DR3 |
RSL |
||||||
DL3 |
LVDT/RVDT |
||||||
DS4 |
SYN |
1* |
2 - 28 |
2 - 115 |
10 K - 20 K |
3 |
|
DR4 |
RSL |
||||||
DL4 |
LVDT/RVDT |
||||||
DS5 |
SYN |
1* |
28 - 90 |
2 - 115 |
47 - 1 K |
3 |
|
DR5 |
RSL |
||||||
DL5 |
LVDT/RVDT |
||||||
DSX |
SYN |
1* |
X |
X |
X |
X |
X = TBD; special configuration, requires special part number code designation, contact factory |
DRX |
RSL |
||||||
DLX |
LVDT/RVDT |
||||||
DSA |
SYN |
2 |
2 - 28 |
2 - 115 |
47 - 1 K |
1.5 |
|
DRA |
RSL |
||||||
DLA |
LVDT/RVDT |
||||||
DSB |
SYN |
2 |
2 - 28 |
2 - 115 |
1 K - 5 K |
1.5 |
|
DRB |
RSL |
||||||
DLB |
LVDT/RVDT |
||||||
DSC |
SYN |
2 |
2 - 28 |
2 - 115 |
5 K - 10 K |
1.5 |
|
DRC |
RSL |
||||||
DLC |
LVDT/RVDT |
||||||
DSD |
SYN |
2 |
2 - 28 |
2 - 115 |
10 K - 20 K |
1.5 |
|
DRD |
RSL |
||||||
DLD |
LVDT/RVDT |
||||||
DSE |
SYN |
2 |
28 - 90 |
2 - 115 |
47 - 1 K |
2.2 |
|
DRE |
RSL |
||||||
DLE |
LVDT/RVDT |
||||||
DSY |
SYN |
2 |
Y |
Y |
Y |
Y |
Y = TBD; special configuration, requires special part number code designation, contact factory |
DRY |
RSL |
||||||
DLY |
LVDT/RVDT |
||||||
DSJ |
SYN |
3 |
2 - 28 |
2 - 115 |
47 - 1 K |
0.5 |
|
DRJ |
RSL |
||||||
DLJ |
LVDT/RVDT |
||||||
DSK |
SYN |
3 |
2 - 28 |
2 - 115 |
1 K - 5 K |
0.5 |
|
DRK |
RSL |
||||||
DLK |
LVDT/RVDT |
||||||
DSL |
SYN |
3 |
2 - 28 |
2 - 115 |
5 K - 10 K |
0.5 |
|
DRL |
RSL |
||||||
DLL |
LVDT/RVDT |
||||||
DSM |
SYN |
3 |
2 - 28 |
2 - 115 |
10 K - 20 K |
0.5 |
|
DRM |
RSL |
||||||
DLM |
LVDT/RVDT |
||||||
DSN |
SYN |
3 |
28 - 90 |
2 - 115 |
47 - 1 K |
0.5 |
|
DRN |
RSL |
||||||
DLN |
LVDT/RVDT |
||||||
DSZ |
SYN |
3 |
Z |
Z |
Z |
Z |
Z = TBD; special configuration, requires special part number code designation, contact factory |
DRZ |
RSL |
||||||
DLZ |
LVDT/RVDT |
SYNCHRO/RESOLVER AND LVDT/RVDT MEASUREMENT MODULE CODE TABLES
SYN/RSL Four-Channel Measurement (Field Programmable SYN/RSL)
Select the Synchro/Resolver-to-Digital (SDx) module ID corresponding to the application operating parameters required from the following code table (where x = the specific module ID designator). Customer should indicate the actual frequency applicable to the design to assure that the correct default band width is set at the factory. All Input and Reference voltages are auto ranging. For availability and ranges other than those listed contact the factory. Specifications may be subject to change.
Frequency/voltage band tolerances +/- 10%.
Module ID |
Input Voltage V (Vrms) |
Reference Voltage (Vrms) |
Frequency Range (Hz) |
Notes |
SD1 |
2 - 28 |
2 - 115 |
47 - 1 K |
|
SD2 |
2 - 28 |
2 - 115 |
1K - 5 K |
|
SD3 |
2 - 28 |
2 - 115 |
5K - 10 K |
|
SD4* |
2 - 28 |
2 - 115 |
10K - 20 K |
|
SD5 |
28 - 90 |
2 - 115 |
47 - 1 K |
|
SDX* |
X |
X |
X |
X = TBD; special configuration, requires special part number code designation, contact factory |
*Consult factory for availability
LVDT/RVDT Four-Channel Measurement (Field Programmable 2, 3 or 4-Wire)
Select the LVDT/RVDT-to-Digital (LDx) module ID corresponding to the application operating parameters required from the following code table (where x = the specific module ID designator). Customer should indicate the actual frequency applicable to the design to assure that the correct default band width is set at the factory. All Input and Excitation voltages are auto ranging. For availability and ranges other than those listed contact the factory. Specifications may be subject to change.
Frequency/voltage band tolerances +/- 10%.
Module ID |
Input Signal Voltage V (Vrms) |
Excitation Voltage (Vrms) |
Frequency Range (Hz) |
Notes |
LD1 |
2 - 28 |
2 - 115 |
47 - 1 K |
|
LD2 |
2 - 28 |
2 - 115 |
1K - 5 K |
|
LD3 |
2 - 28 |
2 - 115 |
5K - 10 K |
|
LD4* |
2 - 28 |
2 - 115 |
10K - 20 K |
|
LD5 |
28 - 90 |
2 - 115 |
47 - 1 K |
|
LDX* |
X |
X |
X |
X = TBD; special configuration, requires special part number code designation, contact factory |
*Consult factory for availability
Revision History
Hardware Manual - NIU2A Revision History
Revision |
Revision Date |
Description |
C |
2023-06-21 |
ECO C10484, transition to docbuilder format. Pg.6, changed 70 modules to +100. Pg.6, updated dimensions to 7.2 x 2.7 x 3.0. Pg.7, moved CD1 & VR1 to I/O Modules table. Pg.8, replaced SC2/SC7 with SC5/SC6 in Comm Modules table; add FM2 module. Pg.11, updated dimensions to 7.2 x 2.7 x 3.0. Pg.11 - updated weight to 2.7 lbs (1.22 kg). Pg.12 - updated height to 2.7" (68.6 mm); changed Length to Width; changed width to 7.2" (182.9 mm). Pg.12 - updated weight to 2.7 lbs (1.22 kg). Pg.31-55 - reformatted Addressing/Register Description/Function Map sections. Pg.58, changed 'RJ-48' to 'RJ-45'; changed pin 2 from 'TX' to 'TX-'. Pg.61 - added single channel note. Pg.61 - changed DSE/DRE/DLE Power/CH maximum (VA) to from 1.5 to 2.2. |
NAI Cares
Edit this on GitLab
North Atlantic Industries (NAI) is a leading independent supplier of Embedded I/O Boards, Single Board Computers, Rugged Power Supplies, Embedded Systems and Motion Simulation and Measurement Instruments for the Military, Aerospace and Industrial Industries. We accelerate our clients’ time-to-mission with a unique approach based on a Configurable Open Systems Architecture™ (COSA®) that delivers the best of both worlds: custom solutions from standard COTS components.
We have built a reputation by listening to our customers, understanding their needs, and designing, testing and delivering board and system-level products for their most demanding air, land and sea requirements. If you have any applications or questions regarding the use of our products, please contact us for an expedient solution.
Please visit us at: www.naii.com or select one of the following for immediate assistance: