INTRODUCTION

NAI is a leading manufacturer of products that support advanced control systems, including PWM servo motor drives. These drives primarily provide precise power/current drive utilizing pulse-width modulation (PWM) technology. Servo motors are commonly used in industrial automation, turret and imaging control, robotics, and other precision motion control systems. NAI’s PWM servo motor drives are designed for higher-power and with external or built-in closed-loop feedback options, can achieve speed and position control of servo motors for performance motion control applications.

For a brief description of the board and complete list of features, click here for the 68PW1 data sheet.

68PW1 Overview

The 68PW1 is a single-axis PWM servo motor drive. The 68PW1 offers high-performance motion control for a variety of industrial applications and is designed for use in rugged environments. This 3U OpenVPX module is conduction-cooled and supports VPX profiles:

  • MOD3-PAY-2U2U-16.2.16-1

  • SLT3-PAY-2U2U-14.2.17

The 68PW1 PWM drive supports both 2-phase brushed and 3-phase brushless (BLDC) motor types. A 2-phase brushed motor is a type of DC motor that uses a commutator and brushes to supply current to the rotor. It has a simple construction and is known for its low cost, high starting torque, and ease of control. However, wear and tear to the brushes can limit its lifespan. A 3-phase brushless (BLDC) motor uses a permanent magnet rotor and an electronic commutation system to provide more precise control and longer lifespan. It is more efficient, dependable, and produces less noise and vibration than a brushed motor. However, its construction is more complex and expensive. BLDC motors are commonly used in high-performance applications such as aerospace, automotive, and robotics.

From a single +28 VDC input source, the 68PW1 provides a programmable PWM output drive that can range from 24 V to 65 V. The card can source up to 10 A of current, providing a maximum power output of 650 W. The drive also includes discrete drive-enable control pins and P2/P3 TE high-current blade connectors, ensuring reliable and secure motor control.

The 68PW1 features a range of ancillary I/O options, including:

  • Four (4) ±10V A/D channels, with the first channel input set by default for injection into the current command for debugging & analysis purposes.

  • Four (4) ±10V D/A channels, which by default are configured as Channels 1 and 2 Feedback Current & Channels 1 and 2 Current Command outputs for testing & analysis purposes.

  • One (1) RS-422/485 SDLC serial communication channel, which provides a high-speed communication interface for a range of control and monitoring applications. For example, it can connect the drive to a remote controller or PLC, allowing for remote monitoring and control of the motor.

  • One (1) RS-232 console/debug channel, which can be used for console or debug purposes, allowing for easy setup, and troubleshooting of the drive. It can also interface with a local computer or other control device, allowing for direct control and monitoring of the motor.

  • One (1) 10/100BASE-T port, which provides a high-speed network connection for remote control and monitoring of the motor, as well as for maintenance and diagnostics. For example, it can remotely monitor and adjust the motor’s performance, or provide real-time status updates to a control system.

  • One (1) GbE (1000BASE-KX) port, which allows for remote control and monitoring of the motor drive system through an Ethernet connection. For instance, a computer or other control device can access and control the motor drive over a local network, which can be useful in situations where the motor drive is in a hard-to-reach location or needs remote monitoring for maintenance purposes. Additionally, this option allows for integration of the motor drive with other networked devices in a larger system for centralized control and monitoring.

The 68PW1 motor drive also supports the following feedback and control options:

  • Hall, needed for BLDC motor commutation.

  • Resolver/Synchro + AC Reference, commonly used in applications where the motor is subjected to harsh environments and high shock or vibration conditions, such as in military, aerospace, or oil drilling systems. This variety of feedback provides accurate positioning data with excellent resistance to electrical interference.

  • Encoder, widely used in industrial automation and robotics applications that require precise control of the position and speed of a motor. One example is in CNC machines where accurate control of the cutting tool is necessary to achieve high precision machining of parts.

The 68PW1 includes IPMC support for VITA 46.11 Tier-2, basic, compatible (configured option). The card is powered using +12V, ±12V AUX, and +3.3V AUX inputs, with a typical power dissipation of 10 W and an estimated 96% efficiency for the PWM drive.

The modular and programmable architecture of the 68PW1 allows for flexible integration with a variety of systems and is supported by an intelligent I/O library. It is suitable for use in both commercial and rugged applications, with an operating temperature range of -40º C to 85º C. In addition, the drive’s mechanical envelope is ANSI/VITA 48 compatible with a 1.0” pitch, and has a weight of approximately 1.95 lbs.

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.

SPECIFICATIONS

General for the Motherboard

Signal Logic Level:Supports LVDS PCIe ver. 2.0 bus (x1)
Power (Motherboard):`12V @ 900 mA (at no load conditions) ` `12V_AUX @ 45 mA ` -12V_AUX @ 45 mA + +3.3V_AUX @ 350 mA
Temperature, Operating:"C" =0° C to `70° C ` "H" =-40° C to +85° C (see part number)
Storage Temperature:-55° C to +105° C
Temperature Cycling:Each board is cycled from -40° C to +85° C for options “C” or “H”
General size:Height: 3.94" / 100 mm (3U)
Width: 0.8" / 20.3 mm (4HP) or 1.0” / 25.4 mm (5 HP) air cooled front panel options
Depth: 6.3“ / 160 mm deep
Weight:1.95 lbs. (0.88 kg) (approx.) (conduction cooled)

Specifications are subject to change without notice.

Environmental

Unless otherwise specified, NAI board products are designed to meet the general Environmental Specifications as posted here:

Qualification and Ruggedization

REGISTER MEMORY MAP ADDRESSING

The register map address consists of the following:

  • cPCI/PCIe BAR or Base Address for the Board
  • PWM Base Address
  • Function Offset Address

Board Base Address

The table below lists the BAR used for access to the motherboard and PWM registers. The second BAR is used internally for motherboard and PWM firmware updates. The other cPCI/PCIe BARs not listed are not used.

NAI BoardsDevice IDBusMotherboard and Module Register AccessMotherboard and Module Firmware Updates
Slave Boards
68PW10x6888PCIeBAR 1
Size: Module Dependent (minimum 64K Bytes)
BAR 2
Size: 1M Bytes

PWM Slot and Function Addresses

The 68PW1 includes a preconfigured PWM drive embedded within the motherboard (onboard function). This onboard function is the equivalent of a standard NAI COSA smart function module. The “start” address of the onboard PWM function register area is factory pre-defined (and read from) the motherboard PWM Start Address register. Refer to page 65 for the complete PWM Function Register Map.

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 the onboard PWM Start Address register (i.e. register address = 0x0400):

  1. Start with the base address for the board.
  2. Add the motherboard base register address offset.
Motherboard Address =Base Address
Motherboard Address Offset
= 0x0000 0400
0x0000 0000 + 0x0400

PWM Registers:

Read/Write access to the onboard PWM’s registers start with the base address of the board. Add the “content” for the PWM Start Address and then, add the specific onboard PWM function register offset.

For example, to address an appropriate/specific PWM with a register offset:

  1. Start with the base address for the board.
  2. Add the value (contents) from the onboard PWM base address offset register (contents/value of Motherboard Memory register for the onboard PWM (i.e., @ 0x0400) = 0x4000.
  3. Then add the specific PWM function Register Offset of interest (i.e., ADC Test Input Ch 1 @ 0x0200)
(PWM Function Specific) Address =Base Address +PWM Base Address Offset +Function Register Offset= 0x0000 4200
0x0000 00000x40000x0200

MOTHERBOARD REGISTER DESCRIPTIONS

PWM Information Registers

The PWM Addressing Ready, PWM Address, PWM Size and PWM ID provide information about the onboard PWM detected on the board. PWM Addressing Ready

PWM Addressing Ready
Function:Indicates that the onboard PWM is ready to be addressed.
Type:unsigned binary word (32-bit)
Data Range:0x0000 0000 to 0xFFFF FFFF
Read/Write:R
Initialized Value:0xA5A5A5A5
Operational Settings:This register will contain the value of 0xA5A5A5A5 when the PWM address has been determined.
PWM Address
Function:Specifies the Base Address for the onboard PWM.
Type:unsigned binary word (32-bit)
Data Range:0x0000 0000 to 0xFFFF FFFF
Read/Write:R
Initialized Value:Based on board's PWM configuration.
PWM Size
Function:Specifies the Memory Size (in bytes) allocated for the onboard PWM.
Type:unsigned binary word (32-bit)
Range:0x0000 0000 to 0xFFFF FFFF
Read/Write:R
Initialized Value:Assigned by factory for the PWM.
PWM ID
Function:Specifies the PWM ID for the onboard PWM.
Type:4-character ASCII string
Data Range:0x0000 0000 to 0xFFFF FFFF
Read/Write:R
Initialized Value:Assigned by factory for the PWM.
Operational Settings:The PWM ID is formatted as four ASCII bytes: three characters followed by a space. The PWM ID is in little-endian order with a single space following the first three characters.
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
ASCII Character (ex: 'P' - 0x50)ASCII Character (ex: 'W' - 0x57)
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
ASCII Character (ex: '1' - 0x31)ASCII Space (' ' - 0x20)

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:unsigned binary word (32-bit)
Data Range:See table below.
Read/Write:R
Initialized Value:ASCII code is for the Platform Identifier of the board.
Operational Settings:Valid NAI platforms and the associated values for these platforms are shown below:
NAI PlatformPlatform IdentifierASCII Binary Values (Note: little-endian order of ascii values)
3U VPX680x0000 3836
Model
Function:Specifies the Board Model Identifier. Values are for the ASCII characters for the NAI valid models.
Type:unsigned binary word (32-bit)
Data Range:See table below.
Read/Write:R
Initialized Value:ASCII code is for the Model Identifier of the board.
Operational Settings:Examples of NAI models and the associated values for these models are shown below:
NAI ModelASCII Binary Values (Note: little-endian order of ascii values)
PW0x0000 5057
Generation
Function:Specifies the Board Generation. Identifier values are for the ASCII characters for the NAI valid generation identifiers.
Type:unsigned binary word (32-bit)
Data Range:See table below.
Read/Write:R
Initialized Value:ASCII code is for the Generation Identifier of the board.
Operational Settings:Examples of NAI generations and the associated values for these generations are shown below:
NAI GenerationASCII Binary Values (Note: little-endian order of ascii values)
10x0000 0031
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. Ethernet Interface Count - Indicates the number of Ethernet interfaces on the product motherboard. For example, Single Ethernet = 1; Dual Ethernet = 2.
NAI BoardProcessor CountDescription
3U-VPX68PW11Xilinx Zynq 7015
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
Processor Count (See Table)
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
Ethernet Count (Based on Part Number Ethernet Options)
Maximum Module Slot Count/ARM Platform Type
Function:Specifies 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:Maximum Module Slot Count - Indicates the number of modules that can be installed on the product. ARM Platform - Altera = 1; Xilinx X1 = 2; Xilinx X2 = 3; UltraScale = 4 NOTE: The onboard PWM function is the equivalent of one (1) smart function module.
NAI BoardProcessor CountDescription
3U-VPX68PW11Xilinx X2 = 3
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
Maximum Module Slot Count (See Table)
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
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
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.
Motherboard Core Firmware Version (Note: little-endian order in register) (ex. 4.7.0.0)
Word 1 (Ex. 0007 0004 = 4.7 (Major.Minor)
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
Minor (ex: 0x0007 = 7)
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
Major (ex: 0x0004 = 4)
Word 2 (Ex. 0x0000 0000 = 0000 = 0.0 (Minor2.Minor3))
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
Minor 3 (ex: 0x000 = 0)
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
Minor 2 (ex: 0x000 = 0)
Motherboard Firmware Build Time/Date
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 Date/Time fields are fixed to 0000 0000 to maintain binary consistency across builds.
Motherboard Firmware Build Time (Note: little-endian order in register)
Word 1 - Build Date (ex. 0x030C 07E2 = 2018-12-03)
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
Day (ex: 0x03 = 3)Month (ex: 0x0C = 12)
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
Year (ex: 0x07E2 = 2018)
Word 2 - Build Time (ex. 0x001B 3B0A = 10:59:27)
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
null (0x00)Seconds (ex: 0x1B = 27)
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
Minutes (ex: 0x3B = 59)Hours (ex: 0x0A = 10)
Motherboard FPGA Revision
Function:Specifies the revision of the NAI factory provided Motherboard FPGA installed on the board.
Type:unsigned binary word (32-bit)
Data Range:0x0000 0000 to 0xFFFF FFFF
Read/Write:R
Operational Settings:The motherboard FPGA revision consists of two components: Major, Minor.
Motherboard FPGA Revision (ex. 0x0005 0008 = 5.8)
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
Major (ex: 0x0005 = 5)
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
Minor (ex: 0x0008 = 8)
Motherboard FPGA Compile Date/Time
Function:Specifies the Compile Date/Time of the NAI factory provided Motherboard FPGA installed on the board.
Type:unsigned binary word (32-bit)
Data Range:N/A
Read/Write:R
Operational Settings:The motherboard FPGA time consists of the Build Date and Time in the following format:
Motherboard FPGA Compile Time (ex. 0xD12A 01B8 = 02/26/21 00:06:56)
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
Day (D31:D27)Month (D26:D23)Year (D22:D17)
ex. 0xDex. 0x10x20xA
1101000100101010
Day = 0x1A = 26Month = 0x2 = 2Year = 0x15 = 21
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
Hour (D16:D12)Minutes (D11:D6)Seconds (D5:D0)
ex. 0x0ex. 0x1ex. 0xBex. 0x8
0000000110111000
Hour = 0x00 = 0Minutes = 0x06Seconds = 0x38 = 56

Motherboard Monitoring Registers

The registers in this provide motherboard temperature measurement information, and where applicable the host processor and slave processor measurements.

NAI BoardsBusHas Host ProcessorHas Slave Processor
Slave Boards68PW1PCIeNo
No

Temperature Readings Register

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).

Temperature Readings Register
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 0x0000 FFFF
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:
Word 3 (Max Zynq Temperatures)
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
Max Zynq Core TemperatureMax Zynq PCB Temperature
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
0x000x00

The values would represent the following temperatures:

Temperature MeasurementsData BitsValueTemperature (Celsius)
Max Zynq Core TemperatureD31:D240x69+105°
Max Zynq PCB TemperatureD23:D160x55+85°
Temperature Readings
Word 1 (Current Zynq Temperatures)
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
Zynq Core TemperatureZynq PCB Temperature
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
0x000x00
Word 2 (Reserved)
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0x000x00
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
0x000x00
Word 3 (Max Zynq Temperatures)
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
Zynq Core MaxTemp Zynq PCB Max Temp
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
0x000x00
Word 4 (Reserved)
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0x000x00
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
0000000000000000
Word 5 (Min Zynq Temperatures)
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
Min Zynq Core TemperatureMin Zynq PCB Temperature
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
0000000000000000
Word 6 (Reserved)
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0x000x00
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
0000000000000000

Higher Precision Temperature Readings Register

These registers provide higher precision readings of the current Zynq and PCB temperatures.

Higher Precision Zynq Core Temperature
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.
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
Signed Integer Part of Temperature
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
Fractional Part of Temperature
Higher Precision Motherboard PCB Temperature
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.
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
Signed Integer Part of Temperature
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
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 Alarm
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:D5Reserved
D4Motherboard PCB Temperature
D3Zynq Core Temperature
D2:D0Reserved
Link to original

Motherboard Sensor Registers

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.

Link to original

Sensor Threshold Status
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:D4Reserved
D3Exceeded Upper Critical Threshold
D2Exceeded Upper Warning Threshold
D1Exceeded Lower Critical Threshold
D0Exceeded Lower Warning Threshold
Link to original

Sensor Current Reading
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.
Link to original

Sensor Minimum Reading
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.
Link to original

Sensor Maximum Reading
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.
Link to original

Sensor Lower Warning Threshold
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.
Link to original

Sensor Lower Critical Threshold
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.
Link to original

Sensor Upper Warning Threshold
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.
Link to original

Sensor Upper Critical Threshold
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.
Link to original

Ethernet Configuration Registers

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 AddressFirst Port (A) Subnet MaskSecond Port (B) IP AddressSecond Port (B) Subnet MaskResult
192.168.1.5255.255.255.0192.168.2.5255.255.255.0Good
192.168.1.5255.255.0.0192.168.2.5255.255.0.0Conflict
192.168.1.5255.255.0.0192.168.2.5255.255.255.0Conflict
10.0.0.15255.0.0.0192.168.1.5255.255.255.0Good
Link to original

Ethernet MAC Address and Ethernet Settings
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.
BitsDescriptionValues
D31:D23Reserved0
D22:D21Duplex00 = Not Specified, ` 01 = Half Duplex, ` 10 = Full Duplex, + 11 = Reserved
D20:D18Speed000 = Not Specified, ` 001 = 10 Mbps, ` 010 = 100 Mbps, ` 011 = 1000 Mbps, ` 100 = 2500 Mbps, ` 101 = 10000 Mbps, ` 110 = Reserved, + 111 = Reserved
D17Auto Negotiate0 = Enabled, + 1 = Disabled
D16Static IP Address0 = Enabled, + 1 = Disabled
Ethernet MAC Address and Ethernet Settings (Note: little-endian order in register)
Word 1 (Ethernet MAC Address (Octets 1-4)) (ex: aa:bb:cc:dd:ee:ff)
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
MAC Address Octet 4 (ex: 0xDD)MAC Address Octet 3 (ex: 0xCC)
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
MAC Address Octet 2 (ex: 0xBB)MAC Address Octet 1 (ex: 0xAA)
Word 2 (Ethernet MAC Address (Octets 5-6) and Ethernet Settings)
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
Ethernet Settings (See table)
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
MAC Address Octet 6 (ex: 0xFF)MAC Address Octet 5 (ex: 0xEE)
Link to original

Ethernet Interface Name
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.
Ethernet Interface Name (Note: ascii string in register) (ex. “eth0”)
Word 1 (Bit 0-31) (ex: 0x3068 7465 = “0hte”)
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
ASCII Character (ex: '0' - 0x30)ASCII Character (ex: 'h' - 0x68)
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
ASCII Character (ex: 't' - 0x74)ASCII Character (ex: 'e' - 0x65)
Word 2 (Bit 32-63) (ex: 0x0000 0000)
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
ASCII Character (ex: null - 0x00)ASCII Character (ex: null - 0x00)
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
ASCII Character (ex: null - 0x00)ASCII Character (ex: null - 0x00)
Link to original

Ethernet IPv4 Address
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.
Ethernet IPv4 Address (Note: little-endian order in register)
Word 1 (Ethernet IPv4 Address) (ex: 0x1001 A8C0 = 192.168.1.16)
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
IPv4 Address Octet 4 (ex: 0x10 = 16)IPv4 Address Octet 3 (ex: 0x01 = 1)
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
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)
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
IPv4 Subnet Octet 4 (ex: 0x00 = 0)IPv4 Subnet Octet 3 (ex: 0xFF = 255)
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
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)
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
IPv4 Gateway Octet 4 (ex: 0x01 = 1)IPv4 Gateway Octet 3 (ex: 0x01 = 1)
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
IPv4 Gateway Octet 2 (ex: 0xA8 = 168)IPv4 Gateway Octet 1 (ex: 0xC0 = 192)
Link to original

Ethernet IPv6 Address
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 bits64 bits
PrefixInterface ID
Prefix 1Prefix 2Prefix 3Subnet IDInterface ID 1Interface ID 2Interface ID 3Interface ID 4
Example: 2002:c0a8:101:0:7c99:d118:9058:1235/64
2002C0A8010100007C99D11890581235
Ethernet IPv6 Address (Note: little-endian order within 32-bit and 16-bit words in register) (ex. IPv6 Address: 2002:c0a8:201:0:7c99:d118:9058:1235 IPv6 Prefix: 64)
Word 1 (Ethernet IPv6 Address (Prefix 1-2)) (ex:0xA8C0 0220 = 2002 C0A8)
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
Prefix 2 (ex: 0xA8C0 = C0A8)
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
Prefix 1 (ex: 0x0220 = 2002)
Word 2 (Ethernet IPv6 Address (Prefix 3/Subnet ID)) + (ex:0x000 0101 = 0101 0000)
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
Subnet ID (ex: 0x0000 = 0000)
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
Prefix 3 (ex: 0x0101 = 0101)
Word 3 (Ethernet IPv6 Address (Interface ID 1-2)) + (ex: 0x18D1 997C = 7C99 D118)
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
Interface ID 2 (ex: 0x18D1 = D118)
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
Interface ID 1 (ex: 0x997C = 7C99)
Word 4 (Ethernet IPv6 Address (Interface ID 3-4)) + (ex: 0x3512 5890 = 9058 1235)
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
Interface ID 4 (ex: 0x3512 = 1235)
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
Interface ID 3 (ex: 0x5890 = 9058)
Word 5 (Ethernet IPv6 Prefix Length) + (ex:0x0000 0040)
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
Prefix Length (ex: 0x0040 = 64)
Link to original

Interrupt Vector and Steering

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 VME1
Direct Interrupt to ARM Processor (via SerDes) +
(Custom App on ARM or NAI Ethernet Listener App)
2
Direct Interrupt to PCIe Bus5
Direct Interrupt to cPCI Bus6
Link to original

PWM Control Command Requests

PWM Control Command Requests
Function:Provides the ability to command the onboard PWM 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 PWM Control Commands registers provide the ability to request the onboard PWM to perform one of the following functions - Reset, Power-down, Power-up. Only one command can be requested at a time. For example, one cannot request a Reset and a Power-down at the same time. 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. The register is Bit-mapped as shown in the table below:
Bit(s)Description
D31:D3Reserved
D2PWM Power-up
D1PWM Power-down
D0PWM Reset

PWM Health Monitoring Registers

PWM Communications Status
Function:Provides the ability to monitor factors that may affect the communication status of the PWM.
Type:unsigned binary word (32-bit)
Data Range:0x0000 0000 to 0xFFFF FFFF
Read/Write:R
Operational Settings:The PWM Communications register provide the ability to monitor factors that may affect the Communications Status of the onboard PWM. Each communication factor is bit mapped to the register as shown in the table below:
Bit(s)Description
D31:D5Reserved
D4PWM Communications Error Detected
D3PWM Firmware Not Ready
D2PWM LinkInit Not Done
D1PWM Not Detected
D0PWM Powered-down

PWM Powered-down: The user can request the onboard PWM be powered-down (see PWM 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 PWM.

PWM Not Detected: If the onboard PWM has not been detected, you will not be able to communicate with the PWM.

PWM LinkInit Not Done: PWM communications is accomplished via SERDES. LinkInit is required to establish a connection to the onboard PWM. If the LinkInit has not been successfully completed, you will not be able to communicate with the PWM.

PWM Firmware Not Ready: The onboard PWM has Firmware that is ready from PWM QSPI and loaded for execution. If this Firmware was not loaded and started successfully, you may not be able to communicate with the PWM.

PWM Communications Error Detected: If at some point during run-time, communications with the onboard PWM have failed, this bit will be set.

PWM BIT Status
Function:Provides the ability to monitor the onboard PWM BIT Status.
Type:unsigned binary word (32-bit)
Data Range:0x0000 0000 to 0xFFFF FFFF
Read/Write:R
Operational Settings:The PWM BIT Status registers provide the ability to monitor the onboard PWM BIT results as Latched and current value. A 1 is any bit field indicates BIT failure for the PWM.
Bit(s)Description
D31:D18Reserved
D17PWM BIT Failure (current value)
D16Reserved
D15:D2Reserved
D1PWM BIT Failure - Latched
D0Reserved

Scratchpad Area

Scratchpad Area
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

Configuration/Control
Measurement/Status/Board Information
PWM INFORMATION REGISTERS
OFFSETREGISTER NAMEACCESSOFFSETREGISTER NAMEACCESS
0x03FCPWM Addressing ReadyR
0x0400PWM Slot 1 AddressR
0x0430PWM Slot 1 SizeR
0x0460PWM Slot 1 IDR
HARDWARE INFORMATION REGISTERS
OFFSETREGISTER NAMEACCESSOFFSETREGISTER NAMEACCESS
0x0020Product Serial NumberR
0x0024PlatformR0x0030Processor Count/Ethernet CountR
0x0028ModelR0x0034Maximum Module Slot Count/ARM Platform TypeR
0x002CGenerationR
MOTHERBOARD FIRMWARE INFORMATION REGISTERS
OFFSETREGISTER NAMEACCESSOFFSETREGISTER NAMEACCESS
Motherboard Core InformationMotherboard FPGA Information
0x0100MB Core Major/Minor VersionR0x0270MB FPGA RevisionR
0x0104MB Core Minor 2/3 VersionR0x0274MB FPGA Compile Date/TimeR
0x0108MB Core Build DateR
MOTHERBOARD MONITORING REGISTERS
OFFSETREGISTER NAMEACCESSOFFSETREGISTER NAMEACCESS
Temperature ReadingsHigh Precision Temperature Readings
0x0200Current Zynq TemperaturesR0x0230Current Zynq Core TemperatureR
0x0204ReservedR0x0234Current Zynq PCB TemperatureR
0x0208Max Zynq TempR
0x020CReservedR
0x0210Min Zynq TemperaturesR
0x0214ReservedR
MOTHERBOARD HEALTH MONITORING REGISTERS
OFFSETREGISTER NAMEACCESSOFFSETREGISTER NAMEACCESS
0x20F8Motherboard Sensor Summary StatusR
![](/motherboards/68PW1/images/health.png)
ETHERNET CONFIGURATION REGISTERS
OFFSETREGISTER NAMEACCESSOFFSETREGISTER NAMEACCESS
ETHERNET A (LEFT) / ETHERNET B (RIGHT)
0x0070Ethernet A MAC (Octets 1-4)R0x00A0Ethernet B MAC (Octets 1-4)R
0x0074Ethernet A MAC (Octets 5-6)/Misc SettingsR0x00A4Ethernet B MAC (Octets 5-6)/Misc SettingsR
0x0078Ethernet A Interface Name (Bit 0-31)R0x00A8Ethernet B Interface Name (Bit 0-31)R
0x007CEthernet A Interface Name (Bit 32-63)R0x00ACEthernet B Interface Name (Bit 32-63)R
0x0080Ethernet A IPv4 AddressR0x00B0Ethernet B IPv4 AddressR
0x0084Ethernet A IPv4 Subnet MaskR0x00B4Ethernet B IPv4 Subnet MaskR
0x0088Ethernet A IPv4 GatewayR0x00B8Ethernet B IPv4 GatewayR
0x008CEthernet A IPv6 Address (Prefix 1-2)R0x00BCEthernet B IPv6 Address (Prefix 1-2)R
0x0090Ethernet A IPv6 Address (Prefix 3/Subnet ID)R0x00C0Ethernet B IPv6 Address (Prefix 3/Subnet ID)R
0x0094Ethernet A IPv6 Address (Interface ID 1-2)R0x00C4Ethernet B IPv6 Address (Interface ID 1-2)R
0x0098Ethernet A IPv6 Address (Interface ID 3-4)R0x00C8Ethernet B IPv6 Address (Interface ID 3-4)R
0x009CEthernet A IPv6 Prefix LengthR0x00CCEthernet B IPv6 Prefix LengthR
INTERRUPT REGISTERS
OFFSETREGISTER NAMEACCESSOFFSETREGISTER NAMEACCESS
0x0500 - 0x057CPWM 1 Interrupt Vector 1 - 32R/W0x0600 - 0x067CPWM 1 Interrupt Steering 1 - 32R/W
MODULE CONTROL COMMAND REQUEST REGISTERS
OFFSETREGISTER NAMEACCESSOFFSETREGISTER NAMEACCESS
0x01D8PWM Command RequestR/W
MODULES HEALTH MONITORING REGISTERS
OFFSETREGISTER NAMEACCESSOFFSETREGISTER NAMEACCESS
0x01B8PWM Communications StatusR0x0128PWM BIT Status (current and latched)R
SCRATCHPAD REGISTERS
OFFSETREGISTER NAMEACCESSOFFSETREGISTER NAMEACCESS
0x3800 - 0x3BFFScratchpad RegistersR/W

PWM CARD REGISTER DESCRIPTIONS

Board Information Registers

The registers identified in this section provide information about the PWM’s FPGA revision.

FPGA Revision
Function:Specifies the major and minor revision of the FPGA.
Type:other
Data Range:0x0000 to 0xFFFF
Read/Write:R
Initialized Value:N/A.
Operational Settings:The upper byte equals the Major Revision. The lower byte equals the Minor Revision. Example: 0x0202 = rev 2.2.
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
Major RevisionMinor Revision
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD
FPGA Sub-Revision
Function:Specifies the sub-revision of the FPGA.
Type:other
Data Range:0x0000 to 0xFFFF
Read/Write:R
Initialized Value:N/A
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD

PWM Standard Operation Registers

The registers identified in this section provide information about PWM Channel Control, DAC Control, ADC Control, Measurement and Status Registers.

PWM Channel Control Registers

Current Command
Function:Latches its value to the drive command when the module is operating in current mode.
Type:signed binary word (32-bit)
Data Range:0xF800 to 0x07FF
Read/Write:R/W
Initialized Value:0x0000
Operational Settings:The command is a 12-bit signed integer and is mapped into the LSB's of a 16-bit register with sign bit extension.

Minimum valueF800: -8.500A
Maximum value07FF: +8.496A
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD
Voltage Command
Function:Latches its value to the drive command when the module is operating in voltage mode.
Type:signed binary word (32-bit)
Data Range:0xF800 to 0x07FF
Read/Write:R/W
Initialized Value:0x0000
Operational Settings:The command is a 12-bit signed integer and is mapped into the LSB's of a 16-bit register with sign bit extension.

Minimum valueF800: -80.000V
Maximum value07FF: +79.961V
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD
Drive Enable
Function:Provides enable/disable control of the channel output stage.
Type:boolean
Data Range:0x0000 to 0xFFFF
Read/Write:R/W
Initialized Value:0x0000 (disabled)
Operational Settings:N/A
Drive enabled/disabled0000: Drive disabled +
Other: Drive enabled
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD

Note

writing to the Drive Reset register does NOT clear this register

Drive Reset
Function:Used to clear all fail conditions related to the channel output in the Status Register.
Type:boolean
Data Range:0x0000 to 0xFFFF
Read/Write:R/W
Initialized Value:0x0000 (inactive)
Operational Settings:N/A
Drive reset0000: Reset inactive +
Other: Reset active
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD

Note

A write to this register is not latched. The register will be cleared to its default value after a successful write.

Note

A write to this register does not modify the Drive Enable register.

Note

in the event of a shut-down fault condition the channel will be disabled. To restore normal operation, write the appropriate value to this register. If on-board faults are resolved, normal operation will be restored.

DAC Control

DAC Test Word 1
Function:Provides bus read access to the RS-422 SDLC receive date for DAC test word #1.
Type:signed binary word (32-bit)
Data Range:0xF800 to 0x07FF
Read/Write:R
Initialized Value:0x0000
Operational Settings:N/A
Minimum valueF800: -2048 (-10V)
Maximum value07FF: 2047 (9.995V)
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD

Note

If no test word is transmitted or if an error is detected in the SDLC data frame, the last valid test word value will be output.

Note

This test word is output on DAC channel #1 or TST-WRD1 (P1.B6 and JP4.14).

DAC Test Word 2
Function:Provides bus read access to the RS-422 SDLC receive date for DAC test word #2.
Type:signed binary word (32-bit)
Data Range:0xF800 to 0x07FF
Read/Write:R
Initialized Value:0x0000
Operational Settings:N/A
Minimum valueF800: -2048 (-10V)
Maximum value07FF: 2047 (9.995V)
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD

Note

If no test word is transmitted or if an error is detected in the SDLC data frame, the last valid test word value will be output.

Note

This test word is output on DAC channel #2 or TST-WRD2 (P1.C6 and JP4.15).

ADC Control

ADC Test Input
Function:Provides bus read access to channel 1 of the debug ADC.
Type:signed binary word (32-bit)
Data Range:0xF800 to 0x07FF
Read/Write:R
Initialized Value:0x0000
Operational Settings:N/A
Minimum valueF800: -10.24V on the ADC input
Maximum value07FF: +10.24V on the ADC input
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD
ADC Test Input Channels 1-4
Function:Provides bus read access to channels 1-4 of the debug ADC.
Type:signed binary word (32-bit)
Data Range:0xF800 to 0x07FF
Read/Write:R
Initialized Value:0x0000
Operational Settings:N/A
Minimum valueF800: -10.24V on the ADC input
Maximum value07FF: +10.24V on the ADC input
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD

Note

ADC Test Input Channel 1 register is the same as ADC Test Input register.

ADC Input Enable
Function:Enables or disables the ADC input test for either transmission over the RS-422 SDLC interface or injection into the PWM module channel control loop summoning junctions.
Type:boolean
Data Range:0x0000 to 0xFFFF
Read/Write:R/W
Initialized Value:0x0000
Operational Settings:Destination of the ADC input is determined by the ADC Input Destination Select register.
ADC Input enableFFFF: ADC input enabled +
Other: ADC input disabled
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD
ADC Input Destination Select
Function:Selects the destination for the ADC Test Input Word.
Type:other
Range:0x0000 to 0xFFFF
Read/Write:R/W
Initialized Value:0x0000
Operational Settings:The available destinations are either RS-422 SDLC interface or the summing junctions of the PWM Channel Loop Controllers. The purpose of this register is to allow lab analysis of the PWM loop controller for verification purposes of the loop characteristics.
ADC Input destination select0000: ADC input is transmitted over SDLC
5555: ADC input is summed into Ch 1 loop
Other: Invalid
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD

Note

Only channel 1 of the ADC debug input is fed into the summing junction of the current loop. Its value can be read at the ADC Test Input Channel 1 register.

Measurement Registers

Drive Current Measurement
Function:Contains the measured motor current value.
Type:signed binary word (32-bit)
Data Range:0xF800 to 0x07FF
Read/Write:R
Initialized Value:0x0000
Operational Settings:Overflow or underflow values shall be clamped at the maximum positive or negative values.

Minimum valueF800: -10.00A
Maximum value07FF: +9.995A
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD
Drive Voltage Measurement
Function:Contains the measured motor voltage value.
Type:signed binary word (32-bit)
Data Range:0xF800 to 0x07FF
Read/Write:R
Initialized Value:0x0000
Operational Settings:Overflow or underflow values shall be clamped at the maximum positive or negative values.

Minimum valueF800: -80.000V
Maximum value07FF: +79.961V
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD
Drive Temperature
Function:Reports the temperature of the output drive stage.
Type:signed binary word (32-bit)
Data Range:0x8000 to 0x7FFF
Read/Write:R
Initialized Value:0x0000
Operational Settings:N/A

Minimum value8000: -32768 ºC
Maximum value7FFF: +-32767 ºC
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD
Measured Supply Voltage
Function:Contains the measured +65V onboard supply voltage value.
Type:unsigned binary word (32-bit)
Data Range:0x0000 to 0x07FF
Read/Write:R
Initialized Value:0x0000
Operational Settings:Overflow or underflow values shall be clamped at the maximum positive or negative values.

Minimum value0000: 0.000V
Maximum value07FF: +79.961V
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD
Measured Supply Current
Function:Contains the measured current of the +65V onboard supply.
Type:unsigned binary word (32-bit)
Data Range:0x0000 to 0x0FFF
Read/Write:R
Initialized Value:0x0000
Operational Settings:N/A

Minimum value0000: 0.000 A
Maximum value07FF: +65.984 A
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD
Measured Input Voltage
Function:Contains the measured voltage of the external supply to the card.
Type:unsigned binary word (32-bit)
Data Range:0x0000 to 0x0FFF
Read/Write:R
Initialized Value:0x0000
Operational Settings:N/A

Minimum value0000: 0.000V
Maximum value0FFF: +85.369V
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD
PS Temperature
Function:Reports the temperature of the on-board power supply.
Type:signed binary word (32-bit)
Data Range:0x8000 to 0x7FFF
Read/Write:R
Initialized Value:0x0000
Operational Settings:N/A

Minimum value8000: -32768 ºC
Maximum value7FFF: +-32767 ºC
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD
PWM Duty Limit
Function:Defines the maximum and minimum values the output state PWM duty cycle is saturated to.
Type:integer
Data Range:0x0000 to 0x03FF (0 to 1023)
Read/Write:R/W
Initialized Value:0x03B6 (950)
Operational Settings:N/A
Minimum value0000: 50% low & 50% high
Maximum value03FF: 0% low and 100% high
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD
Elapsed Time Counter Hi
Function:Upper word of the on-board elapsed time counter.
Type:other
Data Range:0x0000 to 0xFFFF
Read/Write:R
Initialized Value:N/A
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD
Elapsed Time Counter Lo
Function:Lower word of the on-board elapsed time counter.
Type:other
Data Range:0x0000 to 0xFFFF
Read/Write:R
Initialized Value:N/A
Operational Settings:This register and Elapsed Time Counter Hi represent the total 'on' time of the PWM card.
LSB=0.250 sExample:
0x0120 = 0x0001
0x0124 = 0x3251
Time = 0x0001 3251 = 78417 * 0.25s = 19604.25s
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD

Status Registers

Status Register
Function:Sets the corresponding bit associated with the channel's General Interrupt status.
Type:other
Data Range:0x0000 to 0xFFFF
Read/Write:R
Initialized Value:0x0000
Bit(s)Description
D31:D16Reserved
D15Master drive switch ` 0. Enabled (switch closed) ` 1. Disabled (switch open)
D14Battlefield Override ` 0. Enabled ` 1. Disabled
D13*Channel 1 drive fault ` 0. Normal ` 1. Active
D12PS Current Limited ` 0. Normal ` 1. Current mode
D11:D10Reserved
D9Channel 1 overcurrent ` 0. Normal ` 1. Active
D8Bus Watchdog ` 0. Normal ` 1. Fault
D7SDLC Watchdog ` 0. Normal ` 1. Fault
D6:D5Reserved
D4PS Over Temperature ` 0. Normal ` 1. Fault
D3Reserved
D2Drive Over Temperature ` 0. Normal ` 1. Fault
D1PS Undervoltage ` 0. Normal ` 1. Active
D0PS Overvoltage ` 0. Normal ` 1. Active

Note

*This status bit is latched until a reset is performed (Soft Reset or Drive Reset)

D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDD00DDD00D0DDD
Latched Status Register
Function:Sticky status bit register.
Type:other
Data Range:0x0000 to 0xFFFF
Read/Write:R
Initialized Value:0x0000

Note

Same as Status Register (see that register for bit descriptions).

Clear Latched Status Register
Function:Implements a non-latched reset of the Latched Status Register.
Type:boolean
Data Range:0x0000 to 0xFFFF
Read/Write:R/W
Initialized Value:0x0000
Operational Settings:N/A
Clear latched status register0000: Inactive +
Other: Clear latched status register
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD

Note

The register will be cleared to its default value after a successful write.

Board Ready
Function:Reports when the board is ready for communication.
Type:other
Data Range:0x0000 or 0xAA55.
Read/Write:R/W
Initialized Value:0x0000 (not ready)
Operational Settings:N/A
Board Ready0000: Board not ready +
AA55: Board ready
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD
Software Init Done
Function:Reports when the board software is ready for operation.
Type:other
Data Range:0x0000 or 0x0001.
Read/Write:R
Initialized Value:0x0000 (not ready)
Operational Settings:N/A
Board Ready0000: Not ready +
0001: Ready
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD
Log Data Register
Function:Provides fault log data.
Type:other
Data Range:0x0000 to 0xFFFF
Read/Write:R/W
Initialized Value:0x0000
Operational Settings:Register functionality outlined in Appendix.
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD
Log Control Register
Function:Provides access to the fault log.
Type:other
Data Range:0x0000 to 0xFFFF
Read/Write:R/W
Initialized Value:0x0000
Operational Settings:Register functionality outlined in Appendix.
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD

PWM Configuration Registers

The registers in this section provide information on the PWM configuration, channel configuration, and bus watchdog registers.

PWM Configuration Registers

Mode Select
Function: Selects the definition of the motor drive topology.
Type:boolean
Data Range:0x0000 to 0xFFFF
Read/Write:R/W
Initialized Value:0x0000
Operational Settings:N/A
Mode select0000: Current mode +
Other: Voltage mode
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD
Command Source Select
Function:Selects the source of the motor current/voltage commands.
Type:boolean
Data Range:0x0000 to 0xFFFF
Read/Write:R/W
Initialized Value:0x0000
Operational Settings:N/A
Command source select0000: RS-422 SDLC interface +
Other: Bus interface (PCIe or ETH)
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD

Channel Configuration

Current Limit
Function:Controls the maximum allowable current sourced by the output.
Type:signed binary word (32-bit)
Data Range:0x0000 to 0x7FFF
Read/Write:R/W
Initialized Value:0x0000
Operational Settings:Negative values are latched as a value of zero.

Minimum value0000: 0.000A
Maximum value7FFF: 9.995A
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD

Note

The current limit defaults to 1A to prevent overcurrent faults on the Status Register triggered by noise on the measurement.

Kc Gain
Function:Specifies the 16-bit input command scaling gain.
Type:signed binary word (32-bit)
Data Range:0x8000 to 0x7FFF
Read/Write:R
Initialized Value:0x0000
Operational Settings:N/A
Maximum negative value8000: -1 (scaling)
Maximum positive value7FFF: +1 (scaling)
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD

NOTE The gain is treated as a signed integer. Setting a negative gain value will result in the polarity reversal of the command.

Kg Gain
Function:Specifies the 16-bit global gain.
Type:signed binary word (32-bit)
Data Range:0x8000 to 0x7FFF
Read/Write:R
Initialized Value:0x0000
Operational Settings:N/A
Maximum negative value8000: -10 (scaling)
Maximum positive value7FFF: +10 (scaling)
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD

Note

The gain is treated as a signed integer. Setting a negative gain value will result in the polarity reversal of the error term.

Ki Gain
Function:Specifies the 16-bit integral gain.
Type:signed binary word (32-bit)
Data Range:0x8000 to 0x7FFF
Read/Write:R
Initialized Value:0x0000
Operational Settings:N/A
Maximum negative value8000: -1 (scaling)
Maximum positive value7FFF: +1 (scaling)
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD

Note

The gain is treated as a signed integer. Setting a negative gain value will result in the polarity reversal of the command.

Note

The integral term is driven by the sample rate of the current measurements:

Kp Gain
Function:specifies the 16-bit proportional gain.
Type:signed binary word (32-bit)
Data Range:0x8000 to 0x7FFF
Read/Write:R
Initialized Value:0x0000
Operational Settings:N/A
Maximum negative value8000: -2 (scaling)
Maximum positive value7FFF: +2 (scaling)
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD

Note

The gain is treated as a signed integer. Setting a negative gain value will result in the polarity reversal of the error term.

Bus Watchdog Registers

Bus Watchdog Enable
Function:Provides enable or disable control of the bus activity watchdog.
Type:boolean
Data Range:0x0000 to 0xFFFF
Read/Write:R/W
Initialized Value:0x0000
Operational Settings:N/A
Bus watchdog enableFFFF: Enabled +
Other: Disabled
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD
Bus Watchdog Timer Status
Function:Displays the status of the watchdog timer.
Type:other
Data Range:0x1234 or 0xAAAA
Read/Write:R/W
Initialized Value:0x0000
Operational Settings:A watchdog failure condition will latch the failure value. The watchdog fault can be cleared via a power cycle of the card or a toggle of the Bus Watchdog Enable register.
Watchdog timer statusAAAA: Watchdog timeout +
1234: Watchdog disabled or healthy
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD
Bus Watchdog Period
Function:Provides the capability to define the watchdog timer interval for a bus activity monitor.
Type:unsigned binary word (32-bit)
Data Range:0x0000 to 0xFFFF
Read/Write:R/W
Initialized Value:0x0000
Operational Settings:If the Status Register is not accessed via successful write within the defined interval, the PWM card shall disable both output channels (regardless of battlefield override state).
Bus watchdog period0000: 0 milliseconds +
FFFF: 250 milliseconds
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD

General Control Registers

The registers in this section provide information on the soft reset, battlefield override and power supply control registers.

Soft Reset
Function:Disables the PWM card's current controller functionality.
Type:boolean
Data Range:0x0000 to 0xFFFF
Read/Write:R/W
Initialized Value:0x0000
Operational Settings:Both the drive PWMs and fault reporting are disabled. During rest, read/writes to the defined registers are still possible.
Soft reset0000: Reset inactive +
Other: Reset active
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD

Note

Taking the controller OUT of soft reset will set all defined registers to their DEFAULT values.

Battlefield Override
Function:Used to lockout all fail-safes (except communication watchdogs) within the PWM card.
Type:boolean
Data Range:0x0000 to 0xFFFF
Read/Write:R/W
Initialized Value:0x0000
Operational Settings:When active, intervention of the protection circuitry to shut the drives off to either PWM channel is NOT allowed (except for Watchdog timers). The status of any protection logic is still updated within the Status Register to indicate a failure exists.
Battlefield override0000: Override inactive +
Other: Override active
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD
Disable PS Over-Temperature Shutdown
Function:Allows the user to disable the power supply 'over-temperature' protection on the card.
Type:boolean
Data Range:0x0000 to 0xFFFF
Read/Write:R/W
Initialized Value:0x0000
Operational Settings:If a PS over-temperature fault is detected, the drive stage will be disabled.
Disable PS Over-Temperature ShutdownFFFF: Protection disabled +
Other: Protection enabled
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD
PS Reenable
Function:Allows the user to re-enable the power supply after a fault.
Type:boolean
Data Range:0x0000 to 0xFFFF
Read/Write:R/W
Initialized Value:0x0000
Operational Settings:If a PS Overtemp fault occurs (in Status Register) the on-board PS will shut down unless BATTLEFIELD OVERRIDE or DISABLE_PS_OT_SHUTDOWN is set. This shutdown is a latched condition. Write to the PS_REENABLE register to re enable the PS after a fault.
PS Reenable0000: Inactive +
Other: Re-enable after fault
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD

Note

The register will be cleared to its default value after a successful write.

PWM Serial Registers

SDLC Edge Select
Function:Allows the user to select the clock edge used by the RS-422 SDLC serial port.
Type:boolean
Data Range:0x0000 to 0xFFFF
Read/Write:R/W
Initialized Value:0x0000
Operational Settings:Transmit and receive functions will use opposite edges as defined below.
SDLC Edge Select0000: Rx falling edge, Tx rising edge +
Other: Tx falling edge, Rx rising edge
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD

CRC Error and Data Frame Registers

SDLC Total CRC Errors
Function:Captures RS-422 SDLC Receive Data Frame CRC errors.
Type:unsigned binary word (32-bit)
Data Range:0x0000 to 0xFFFF
Read/Write:R
Initialized Value:0x0000
Operational Settings:Whenever a CRC error is detected within a received data frame this register will increment its value. The maximum value is 65535.
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD

Note

The counter will stop (and not rollover) when its maximum value is reached. The counter is reset by the SDLC Clear CRC Errors register.

SDLC Total Data Frames
Function:Captures the number of RS-422 SDLC Receive Data Frames received (valid or invalid).
Type:unsigned binary word (32-bit)
Data Range:0x0000 to 0xFFFF
Read/Write:R
Initialized Value:0x0000
Operational Settings:The maximum value is 65535.
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD

Note

The counter will stop (and not rollover) when its maximum value is reached. The counter is reset by the SDLC Clear Data Frames register.

SDLC Clear CRC Errors
Function:Clears the RS-422 SDLC CRC error counter in the SDLC Total CRC Errors register.
Type:boolean
Data Range:0x0000 to 0xFFFF
Read/Write:R/W
Initialized Value:0x0000
Operational Settings:While this register is in the inactive state, the error count register is allowed to increment. When the active state is commanded the error count register shall clear its count value to 0000 and refrain from incrementing its error count.
SDLC clear CRC errors0000: Reset inactive +
Other: Reset active
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD
SDLC Clear Data Frames
Function:Clears the number of RS-422 SDLC data frames received in the SDLC Total Data Frames register.
Type:boolean
Data Range:0x0000 to 0xFFFF
Read/Write:R/W
Initialized Value:0x0000
Operational Settings:While this register is in the inactive state, the error count register is allowed to increment. When the active state is commanded the count register shall clear its count value to 0000 and refrain from incrementing its error count.
SDLC clear data frames0000: Reset inactive +
Other: Reset active
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD
SDLC Clear Data Frames
Function:Indicates the status of the last RS-422 SDLC data frame received.
Type:other
Data Range:0x0000 or 0xFFFF
Read/Write:R/W
Initialized Value:0x0000
Operational Settings:If a data frame is interrupted for any reason, an error indication shall be indicated within this register. This register shall retain the status of the last data frame received until another data frame transmission has completed and new status is available to update this register value.
SDLC last data frame statusFFFF: Error detected on last RS-422 SDLC data frame +
0000: No error detected on last RS-422 SDLC data frame
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD

Serial Test Registers

SDLC RS422 Test Bits
Function:Bits to be transmitted in the last Tx SDLC data frame if test bits are enabled.
Type:other
Data Range:0x0 to 0xF
Read/Write:R/W
Initialized Value:0x0
Operational Settings:Test bits are enabled via the SDLC Tx Message Configuration register.
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
000000000000DDDD
SDLC RS422 Transmit Enable
Function:Enables SDLC transmission of a frame after receipt of a valid frame.
Type:boolean
Data Range:0x0000 to 0xFFFF
Read/Write:R/W
Initialized Value:0x0000
Operational Settings:N/A
SDLC RS422 transmit enable0000: Disables SDLC transmission +
Other: Enables SDLC transmission
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD
SDLC Tx Message Configuration
Function:Configures the behavior of the last byte of the Tx Data Frame.
Type:boolean
Data Range:0x0000 to 0xFFFF
Read/Write:R/W
Initialized Value:0x0000
Operational Settings:The last byte may represent either the test bits defined in the SDLC RS422 Test Bits register or the following Status Register bits.
SDLC Tx message configuration0000: Test bits +
Other: STATUS register bits
Bit(s)Description
D3PS overvoltage or undervoltage (Status Register D1 or D0)
D2'0'
D1Drive 1 fault (Status Register D13)
D0Master drive switch status for D0 (Status Register D15)
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
000000000000DDDD

Serial Watchdog Registers

SDLC Timeout Period
Function:Provides the capability to define the watchdog timer interval for a SDLC activity monitor.
Type:unsigned binary word (32-bit)
Data Range:0x0000 to 0xFFFF
Read/Write:R/W
Initialized Value:0x0000
Operational Settings:If a valid data frame is not received within the defined interface, the PWM card shall disable both output channels (regardless of battlefield override state).
SDLC watchdog period0000: 0 milliseconds +
FFFF: 250 milliseconds
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD
SDLC Watchdog Timer Enable
Function:Provides enable or disable control of the RS-422 SDLC activity watchdog.
Type:Boolean
Data Range:0x0000 to 0xFFFF
Read/Write:R/W
Initialized Value:0x0000
Operational Settings:N/A
SDLC watchdog timer enable0000: Watchdog disabled +
Other: Watchdog enabled
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD
SDLC Watchdog Timer Enable
Function:Displays the status of the watchdog timer.
Type:other
Data Range:0x1234 or 0xAAAA
Read/Write:R/W
Initialized Value:0x0000
Operational Settings:A watchdog failure condition will latch the failure value. The watchdog fault can be cleared via a power cycle of the card or a toggle of the SDLC Watchdog Timer Enable register.
SDLC watchdog timer statusAAAA: Watchdog timeout +
1234: Watchdog disabled or healthy
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
0000000000000000
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD

Test Registers

Read Only Test Register
Function:A read-only register used to test the communication link.
Type:N/A
Data Range:0x1122 AABB
Read/Write:R
Initialized Value:0x1122 AABB
Operational Settings:N/A
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
DDDDDDDDDDDDDDDD
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD
Read/Write Test Registers
Function:A read/write register used to test the communication link.
Type:N/A
Data Range:0x0000 0000 to 0xFFFF FFFF
Read/Write:R
Initialized Value:0x8899 EEFF
Operational Settings:N/A
D31D30D29D28D27D26D25D24D23D22D21D20D19D18D17D16
DDDDDDDDDDDDDDDD
D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0
DDDDDDDDDDDDDDDD

PWM FUNCTION REGISTER MAP

KEY

Configuration/Control
Measurement/Status/Board Information
BOARD INFORMATION REGISTERS
OFFSETREGISTER NAMEACCESSOFFSETREGISTER NAMEACCESS
0x00DCFPGA RevisionR
0x00FCFPGA Sub-RevisionR
PWM STANDARD OPERATION INFORMATION REGISTERS
OFFSETREGISTER NAMEACCESSOFFSETREGISTER NAMEACCESS
PWM Channel Control RegistersDAC Control Registers
0x000CCurrent CommandR/W0x00A0DAC Test Word 1R
0x0010Voltage CommandR/W0x00A4DAC Test Word 2R
0x0008Drive EnableR/W
0x0020Drive ResetR
ADC Control RegistersMeasurement Registers
0x00A8ADC Test InputR0x0018Drive Current MeasurementR
0x0200ADC Test Input Ch 1R0x001CDrive Voltage MeasurementR
0x0204ADC Test Input Ch 2R0x00E0Drive TemperatureR
0x0208ADC Test Input Ch 3R0x008CMeasured Supply VoltageR
0x020CADC Test Input Ch 4R0x0140Measured Supply CurrentR
0x00ACADC Input EnableR/W0x0144Measured Input VoltageR
0x00B0ADC Input Destination SelectR/W0x00E8PS Temperature MeasurementR
0x00E8PWM Duty LimitR/W
0x0120Elapsed Time Counter HiR
0x0124Elapsed Time Counter LoR
Status Registers
0x009CStatus RegisterR
0x0138Latched Status RegisterR
0x013CClear Latched Status RegisterR/W
0x01FCBoard ReadyR
0x02FCSW Init DoneR
0x01E8Log Data RegisterR
0x01ECLog Control RegisterR/W
PWM CONFIGURATION REGISTERS
OFFSETREGISTER NAMEACCESSOFFSETREGISTER NAMEACCESS
PWM Configuration RegistersChannel Configuration Registers
0x0000Mode SelectR/W0x0014Current LimitR/W
0x0004Command Source SelectR/W0x004CKc GainR/W
0x0050Kg GainR/W
0x0054Ki GainR/W
0x005CKp GainR/W
Bus Watchdog Registers
0x00B4Bus Watchdog EnableR/W
0x00F8Bus Watchdog Timer StatusR
0x00BCBus Watchdog PeriodR/W
GENERAL CONTROL REGISTERS
OFFSETREGISTER NAMEACCESSOFFSETREGISTER NAMEACCESS
0x00C4Soft ResetR/W
0x0098Battlefield OverrideR/W
0x00F4Disable PS Over-Temperature ShutdownR/W
0x0160PS ReenableR/W
PWM SERIAL REGISTERS
OFFSETREGISTER NAMEACCESSOFFSETREGISTER NAMEACCESS
0x0074SDLC Edge SelectR/W
CRC Error and Data Frame RegistersSerial Test Registers
0x0078SDLC Total CRC ErrorsR0x0090SDLC RS422 Test BitsR/W
0x007CSDLC Total Data FramesR0x0094SDLC RS422 Transmit EnableR/W
0x0080SDLC Clear CRC ErrorsR/W0x0110SDLC Tx Message ConfigurationR/W
0x0084SDLC Clear Data FramesR/W
0x0088SDLC Last Data Frame StatusR
Serial Watchdog Registers
0x00C0SDLC Timeout PeriodR/W
0x00B8SDLC Watchdog Timer EnableR/W
0x010CSDLC Watchdog Timer StatusR
TEST REGISTERS
OFFSETREGISTER NAMEACCESSOFFSETREGISTER NAMEACCESS
0x0300Read Only Test RegisterR
0x0304Read/Write Test RegisterR/W

ETHERNET

(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)

Note

For products capable of 10/100/1000Base-KX functionality - the product Ethernet PHY supports 1000BASE-X. Product interoperability with 10/100/1000BASE-KX is supported with 1000BASE-X (provided that auto-negotiation is disabled).

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 1Ethernet 2Ethernet 3*Ethernet 4*
(REF PORT A)(REF PORT B)(REF PORT C)(REF PORT D)
The default IP address:192.168.1.16192.168.2.16192.168.3.16192.168.4.16
The default subnet:255.255.255.0255.255.255.0255.255.255.0255.255.255.0
The default gateway:192.168.1.1192.168.2.1192.168.3.1192.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

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-
Link to original

68PW1 CONNECTOR/PIN-OUT INFORMATION

The 68PW1 3U OpenVPX single-axis PWM servo motor drive is available in one configuration: conduction-cooled. The 68PW1 follows the OpenVPX “Payload Slot Profile” configured as:

Slot profile:SLT3-PER-2U2U-14.2.17
Module profile:MOD3-PER-2U2U-16.2.16-1
User I/O is available through the OpenVPX user defined rear I/O connector P1 (see part number and pin-out information).

NOTES

The following notes apply unless otherwise specified:

Front Panel Connectors

Utility Connector JP4

Industry standard mini-HDMI type (type-C receptacle).

Chassis Ground

Rear connector key guides are chassis ground.

Front Panel Utility Connector JP4 (Conduction-Cooled)

The 68PW1 utilizes a Mini-HDMI type card edge connector JP4, available on conduction-cooled configurations that provides the following signals:

  • Serial (port 1)

  • Ethernet port 1 (factory configuration option)

  • ADC debug

  • DAC debug outputs

    • TST-WRD1

    • TST-WRD2

    • PWM-CMD1 (Drive 1 Current)

NAI also provides an optional “breakout” adapter board (NAI P/N 68PW1-ADPT-ETH-SER-AD-DA) with a mini-HDMI to mini-HDMI type cable. The “breakout” adapter board and a Micro-HDMI cable (NAI P/N 75SBC4-BB) allow for standard I/O connections to Ethernet and asynchronous serial (DB9). Consult the factory for availability.

a
a


Front JP4Standard Configuration
JP4-01N/C
JP4-02ETH1-TP0+
JP4-03ETH1-TP0-
JP4-04N/C
JP4-05ETH1-TP1+
JP4-06ETH1-TP1-
JP4-07N/C
JP4-08N/C
JP4-09N/C
JP4-10N/C
JP4-11N/C
JP4-12AD-CH2P
JP4-13GND
JP4-14TST-WRD1
JP4-15TST-WRD2
JP4-16PWM-CMD1
JP4-17SER1-RXD
JP4-18SER1-TXD
JP4-19GND
Key
N/CNot Connected

Signal Descriptions J5

Signal NameDescription
ETH1-TPxEthernet port 1 signals (2 pair) 10/100 twisted pair signals (Optional)
AD-CH2PInput to channel 2 of the debug ADC
TST-WRD1Debug DAC output of test word #1 (from SDLC)
TST-WRD2Debug DAC output of test word #2 (from SDLC)
PWM-CMD1Debug DAC output of the Drive Current
SER1-TXDAsynchronous transmit serial data port 1 (out) / RS232 debug/console port only
SER1-RXDAsynchronous received serial data port 1 (in) / RS232 debug/console port only
GNDSystem Ground (return)

Rear I/O VPX Connectors P0-P3 (Conduction-Cooled)

The 68PW1 3U OpenVPX single-axis PWM servo motor drive provides interface via the rear VPX connectors.

Rear I/O Summary

Signals defined as N/C currently have no functionality associated and are not required for general operation.

P0 - Utility plane. Contains the following signal definitions:
Power:Primary +12V, `3.3_AUX, `/- 12V_AUX and System GND
Geographical Address Pins:GA0# - GA4#, GAP#
Card reset:SYSRST# signal
VPX AUX/REF CLK(Not used)
P1 - Defined as primarily Data/Control Planes (User defined I/O secondary)
High Speed Switched Fabric Interface:One ultra-thin pipe option (PCIe ver. 2.0 (x1)).
Ethernet:1000Base-KX
P2 - Motor Drive Output/Power RTNInput source return
Motor power output
P3 - PWM/Drive+28VDC input source

Rear I/O Utility Plane (P0)

The P0 (Utility) Plane contains the primary power, bus, and utility signals for the OpenVPX board. Additionally, several of the user defined pins can be utilized for Geographical Addressing and a parallel SYSRST# signal. Signals defined as N/C currently have no functionality associated and is not required for general operation.

UTILITY + P0RowRowRowRowRowRowRow
GFEDCBA
1(+)12V (VS1_G1)(+)12V (VS1_F1)(+)12V (VS1_E1)N/C (NCD1)N/C (VS2_C1)N/C (VS2_B1)N/C (VS2_A1)
2(+)12V (VS1_G2)(+)12V (VS1_F2)(+)12V (VS1_E2)N/C (NCD2)N/C (VS2_C2)N/C (VS2_B2)N/C (VS2_A2)
3(VS3)(VS3)(VS3)N/C (NCD3)(VS3)(VS3)(VS3)
4(IMPB-SCL-B)(IMPB-SDA-B)GND(-)12V (-12V-AUX)GNDSYSRST#NVMRO
5GAP#GA4#GND(+)3.3V (+3.3V-AUX)GND(IMPB-SCL-A)(IMPB-SDA-A)
6GA3#GA2#GND(+)12V (+12V-AUX)GNDGA1#GA0#
7N/C (TCK)GNDN/C (TDO)N/C (TDI)GNDN/C (TMS)N/C (TRST)
8GND(REFCLK-25MHz-)(REFCLK-25MHz+)GND(AUX-CLK-)(AUX-CLK+)GND
= Motherboard reserved
= Maintenance reserved

Rear I/O Data/Control Planes (P1)

The 68PW1 has the configuration option for specifying a high-speed serial interface fabric bus connection - PCIe ver. 2.0 (x1). As defined in the OpenVPX bridge or payload slot specifications, the 68PW1 requires only one ‘ultra-thin pipe’ (one Tx and one Rx differential pair), which provides additional user I/O definition opportunity. Additionally, the 68PW1 can be commanded/controlled via single port Gig-E (option for 1000Base-KX interface). Additional I/O is also defined on the P1 user defined plane. Signals defined as N/C currently have no functionality associated or are considered optional and are not required for general operation.

Data Plane + P1RowRowRowRowRowRowRow
GFEDCBA
1N/CGNDPCIE-TXNPCIE-TXPGNDVPX-PCIE-RXNVPX-PCIE-RXP
2GNDN/CN/CGNDN/CN/CGND
3N/C (VBAT)GNDRXDLO-CH1RXDHI-CH1GNDTXDLO-CH1TXDHI-CH1
4GNDCLKLO-CH1CLKHI-CH1GNDDRV-EN-INDRV-EN-OUTGND
5N/C (SYS_CON)GNDCTSLO-CH1CTSHI-CH1GNDRTSLO-CH1RTSHI-CH1
6GNDPWM-CMD2PWM-CMD1GNDTST-WRD2TST-WRD1GND
7N/CGNDAD-CH4NAD-CH4PGNDAD-CH3NAD-CH3P
8GNDAD-CH2NAD-CH2PGNDAD-CH1NAD-CH1PGND
9(SER-RXD1)GNDS4_ENCB_N-CH1S2_ENCB_P-CH1GNDS1_ENCA_N-CH1S3_ENCA_P-CH1
10GNDRLO_ENCC_N-CH2RHI_ENCC_P-CH2GNDRLO_ENCC_N-CH1RHI_ENCC_P-CH1GND
11(SER-TXD1)GNDS4_ENCB_N-CH2S2_ENCB_P-CH2GNDS1_ENCA_N-CH2S3_ENCA_P-CH2
12GNDHALLC_N-CH1HALLC_P-CH1GNDREFLO-OUTREFHI-OUTGND
13GNDGNDHALLB_N-CH1HALLB_P-CH1GNDHALLA_N-CH1HALLA_P-CH1
14GNDN/CN/CGNDN/CN/CGND
15N/C (Maskable Reset)GNDETH1-TXNETH1-TXPGNDETH1-RXNETH1-RXP
16GNDGNDGNDGNDGNDGNDGND
= PCIe (x1)= Drive Enable= Port 1 / 1000Base-KX (Option)
= ADC= HALL (Option)= SYN/RSL & AC Ref (Option)
= PWM= Maintenance reserved= Encoder (Option)
= SDLC= DAC Output= Motherboard reserved

Motor Drive Output/Power RTN (P2) & PWM/Drive (P3)

The P2/P3 Plane contains the +28 VDC input source and programmable PWM output drive signals for the motor drive.

Data Plane + P2RowRowRowRowRowRow
FEDCBA
128VIN_RTN*28VIN_RTN*28VIN_RTN*28VIN_RTN*28VIN_RTN*28VIN_RTN*
2PWM-DRV2PWM-DRV2PWM-DRV2PWM-DRV2PWM-DRV2PWM-DRV2
3PWM-DRV1PWM-DRV1PWM-DRV1PWM-DRV1PWM-DRV1PWM-DRV1
428VIN_RTN28VIN_RTN28VIN_RTN28VIN_RTN28VIN_RTN28VIN_RTN

*P2.1 can be configured at factory for either 28V_RTN or PWM-DRV3 for BLDC 3-phase motor designs.

Data Plane + P3RowRowRowRowRowRow
FEDCBA
128VIN28VIN28VIN28VIN28VIN28VIN
228VIN28VIN28VIN28VIN28VIN28VIN
= 28VIN
= 28VIN_RTN
= PWM-DRV1
= PWM-DRV2

MECHANICAL DETAILS

General - Outline

Note

The following mechanical outline detail example is provided for reference only. Dimensions are in inches unless otherwise specified.

Conduction-Cooled

68PW1 PART NUMBER DESIGNATION

Click here for the 68PW1 part number designation

APPENDIX: 68PW1 FAULT LOG

Description

The fault logging system in the PWM card will store, in non-volatile memory, the board’s condition, e.g. current, voltage, and temperature at the time of a fault.

Hardware

The NVM device (FM24CL64B) is a ferroelectric RAM with 64-Kbit of storage, organized as 8K x 8. Each RAM entry is 8 bits wide. There is a total of 8K cells. The FRAM is written and read over an i2c bus.

Logging Information

The following table shows the information that will be logged at the time of a fault. SW will poll the C_ADDR_FAULT_EVENT_FLAG register every 100ms to capture a fault.

Information LoggedData BytesDescription
ETC4The ETC stores the elapsed time in a non-volatile 32- bit register with quarter second resolution. It can accumulate 298,261 hours, or about 34 years of time. Once the elapsed time register reaches 0xFFFFFFFF, counting stops. It does not roll over. This information is used to differentiate fault events
Status Register2The status register gives real-time monitoring of fault bits
Latched Status Register2Register used to store which status bits tripped during operation
PS Voltage2Measurement of the 65V power supply voltage.
PS Current2Measurement of the 65V power supply current.
PS BB1 Temp2Measurement of the 65V power supply temperature.
PS BB2 Temp2Measurement of the 65V power supply temperature.
Drive 1 Voltage2Measurement of the drive voltage.
Drive 2 Voltage2Measurement of the drive voltage.
Drive 1 Current2Measurement of the drive current.
Drive 2 Current2Measurement of the drive current.
Drive Temperature2Measurement of the drive temperature.

26 Bytes of data is written to the NVM during a fault. The size of the NVM device determines how many events can be stored.

A total of 150 Fault Events can be stored in NVM at once time. The total number of fault events currently logged is also stored in NVM. Once at full capacity, new entries will overwrite the oldest entries.

Fault Log Access (FPGA REGION = USER INTERFACE)

The access interface is comprised of two parts: a data register and a control register.

RegisterDescription
Data Register (RO)Once a request for a fault event is made, data from NVM is written to this register.
Control Register (R/W)Raytheon will request to read a specific event from NVM by writing to this register. The MSB of this register is defined as a request for event bit. Bits [9:0] represent the event that is being requested. Writing all 0's to bits [9:0] will return the event count (number of faults that occurred) in the data register. The event count will always point to the most recent event. The event count will not exceed 150. Once a count of 150 is read, it is known that the most recent event will always be at 150. After a request, the MSB of the control reg. will be cleared by the PWM card to signify that the data in the data reg. is valid. The following write commands are valid: x8000 = Return event count ` x8001 - x8096= Return data of specified event (1-150). ` xF000 = CLEAR FAULT LOG.

*Requesting an event that has not occurred will result NO NEW DATA. The MSB of the control register will be cleared, but the data register will not be written to.

**Requesting the same event more than 13 times will continue to return data word 13 of that event.

***Clearing the fault log will reset the event count to 0 by writing all zeros to the “Fault Logging Region “of the NVM.

Example Data Retrieval Scenario (User Side)

The following steps detail the method to retrieve the most recent fault event from NVM.

  1. Write x8000 to the Fault Log Control Register to get the event count.

  2. Read the Fault Log Control Register to ensure the MSB is cleared, indicating the data in the Fault Log Data Register is valid.

  3. Read the Fault Log Data Register to retrieve the Event Count. In this example assume the Event Count is 2. The Data Register will read 0x0002.

  4. Write to the Control Register x”8002” to begin data acquisition of event #2.

  5. Read the Control Register to ensure MSB is cleared. Expected read is x0002.

  6. Read the Data Register to get a word of Event #2.

  7. Repeat step 4-6 eleven more times to read the FULL fault event.

The following table details how to parse and transform the data from the data register into meaningful information.

Example of Decoding of Data

S T A R T of E V E N T
Word of an EventData Register ContentsData TranslationDefinition
10002![](/motherboards/68PW1/images/68PW1_img22.png) Data 1 and Data 2 of an event represent the ETC register. Data 1 is the high word, while data 2 is the low word. Concatenate data 2 to data 1 to retrieve the 32-bit ETC value in Hex. 0002_5020h = 151584_dec Total Elapsed Time 151584 * 0.25 sec = 37896 secondsElapsed Time (ETC)
25020Data 1 and Data 2 of an event represent the ETC register. Data 1 is the high word, while data 2 is the low word. Concatenate data 2 to data 1 to retrieve the 32-bit ETC value in Hex. 0002_5020h = 151584_dec Total Elapsed Time 151584 * 0.25 sec = 37896 secondsElapsed Time (ETC)
32200- Drive Fault + - Drive OvercurrentStatus Register
4A214- Master Drive ` - Drive Fault ` - Drive Overcurrent ` - PS Over Temp ` - Drive Over TempLatched Status Reg.
50976![](/motherboards/68PW1/images/68PW1_img23.png) 0976h = 2422_dec = 50.49157 VoltsPS Voltage
6005D![](/motherboards/68PW1/images/68PW1_img24.png) 005Dh = 93_dec = 1.498535 APS Current
70072![](/motherboards/68PW1/images/68PW1_img25.png) 0072h = 114_dec = 114 CPS BB1 Temp
8FFDC![](/motherboards/68PW1/images/68PW1_img25.png) FFDCh = -36_dec = - 36 CPS BB2 Temp
9289C![](/motherboards/68PW1/images/68PW1_img26.png) 298Ch = 10396_dec = 47.630625 VoltsDrive 1 Voltage
1008BC![](/motherboards/68PW1/images/68PW1_img26.png) 08BCh = 2236_dec = 11.25877 VoltsDrive 2 Voltage
11A9DC![](/motherboards/68PW1/images/68PW1_img27.png) A9DCh = -22052_dec = -27.130907 AmpsDrive 1 Current
12267B![](/motherboards/68PW1/images/68PW1_img27.png) 276Bh = 9851_dec = 12.119833 AmpsDrive 2 Current
130000![](/motherboards/68PW1/images/68PW1_img25.png) 0000h = 0 CDrive Temperature
E N D of E V E N T

Revision History

Motherboard Manual - 68PW1 Revision History

RevisionRevision DateDescription
C2023-03-09ECO C10038, initial release of 68PW1 manual.
C12024-05-20ECO C11549, pg.6, updated block diagram. Pg.6, updated Ancillary I/O bullet (changed 2x A/D to 4x). Pg.6, updated Front/Maintenance I/O bullet (changed 2 D/A to 3 D/A). Pg.7, updated A/D spec(changed 2x A/D to 4x). Pg.7, updated D/A (changed 2 D/A to 3 D/A). Removed ZynqCore/Aux/DDR Voltage register descriptions from Motherboard Monitoring Registers. Pg.24,updated MB Sensor Summary Status register to add PS references; updated Bit table to change voltage/current bits to 'reserved'. Pg.24, updated MB/PS Sensor Registers description to better describe register functionality and to add figure. Pg.25, added 'Exceeded' to threshold bit descriptions. Pg.25-26, removed voltage/current references from sensor descriptions. Pg.30,removed Zynq Core/Aux/DDR Voltage register offsets. Pg.32, updated MB Health MonitoringRegisters offset tables.

DOCS.NAII REVISIONS

Revision DateDescription
2026-05-04Formatting updates throughout manual (non-technical changes).

NAI Cares

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:

Documentation

https://www.docs.naii.com

FAQ

http://www.naii.com/faqs

Application Notes

http://www.naii.com/applicationnotes

Calibration and Repairs

http://www.naii.com/calibrationrepairs

Call Us

(631) 567-1100

Link to original