The NI FlexRIO Adapter Module Development Kit (MDK) gives users all the tools necessary to develop a custom adapter module for use with NI FlexRIO products (such as the NI PXI-797xR). This document details the contents of the NI FlexRIO Adapter MDK as well as presents a high-level technical overview of the adapter module development process. For details, please contact your local NI Sales representative.
The NI FlexRIO Adapter MDK contains all the information necessary to enable the user to develop a custom adapter module. It comes with extensive documentation detailing the hardware and software interfaces to NI FlexRIO. The kit includes files and examples to get started. You will receive enclosures, PCB layout files, and mechanical drawings. Finally, the MDK users will have access to specialized NI FlexRIO MDK support resources and direct technical assistance from NI R&D. The following list details the exact contents of the MDK:
The high-level steps to creating a custom adapter module are as follows:
1. Design and build adapter module—Schematic, layout, assembly, etc.
The MDK includes all the necessary drawings, layout files, and instructions to create a PCB that will mechanically and electrically interface with the NI FlexRIO FPGA module. Files are available in standard .dxf and .dwg format for use with your own PCB design tools.
2. Register IO Module ID and program ID EEPROM
Instructions to program the EEPROM are contained in the NI FlexRIO Adapter Module Development Kit User Manual.
3. Create adapter module definition file (.fam)
The definition file makes the module appear in the LabVIEW development environment and defines certain electrical characteristics of the module. There are instructions and example files included in the MDK.
4. Create adapter module CLIP (HDL and XML)
The Component-level IP (CLIP) and an XML description of the adapter module establish the mapping of individual input and output ports from your hardware to LabVIEW. The MDK contains documentation and examples of these files.
5. Write LV FPGA VI for adapter module and CLIP
After all of the interfaces are defined, use LabVIEW FPGA to communicate to your custom adapter module and develop the rest of your system. Included in the MDK, you will receive examples and documentation of FPGA design VIs, examples using DMA to communicate across the PXI bus, and example host programs.
Successful adapter module development requires you and/or your team to have the following skills:
1. Virtex-5 Based NI FlexRIO
The adapter module interface is designed to expose the full power and flexibility of the Virtex-5 FPGA I/O while keeping a general interface for diverse adapter module applications. This interface includes fixed and configurable power rails as well as defined control signals for adapter module detection and identification. Here is a summary of the physical interface between the NI FlexRIO FPGA and adapter module.
2. 7 Series Based NI FlexRIO
The adapter module interface is designed to expose the full power and flexibility of the 7 Series FPGA I/O while keeping a general interface for diverse adapter module applications. This interface includes fixed and configurable power rails as well as defined control signals for adapter module detection and identification. Here is a summary of the physical interface between the NI FlexRIO FPGA and adapter module.
The standard NI FlexRIO adapter module design is a PCB which fits in a metal enclosure that can be mounted onto the face of the NI FlexRIO FPGA module. NI recommends that all adapter modules conform to these mechanical requirements, although some applications may require other dimensions. Operating outside of these recommendations would require modified enclosure/mounting solutions.
The adapter module PCB is about 3.6 in. wide by 4.3 in. tall (not including the edge connector area). This provides about 14 sq. in. for adapter module circuitry on each side. The recommended PCB thickness is 0.062 in. (1.57 mm) ±10%. The secondary side should only be used for small passives as the height clearance is 0.05 in. (1.27 mm). [v1] The interface to the NI FlexRIO FPGA module utilizes an edge connector. This removes the need for special connectors on all adapter modules, however, it does require specific PCB manufacturing specifications. Layout files and mechanical drawings of the card edge connector are included in the MDK.
The adapter module enclosure is a two-piece clamshell design. The PCB attaches via four mounting screws. It includes alignment pins and mounting screws for connecting to the NI FlexRIO FPGA module.
The adapter module enclosure includes a slot to capture the front panel connector face. This front panel is a simple metal rectangle that can be customized based on the required connectors. The following figure shows an example front panel with two BNC connectors: