NAI's software capabilities are designed to provide efficient solutions for motion control, process control, monitoring, and data transfer needs. Our unique blend of on-board processors and FPGAs in our COSA® designs enables I/O functions to pre-process data, leaving SBCs free to handle high-level system requirements. Our Software Support Kits (SSKs) include high-level APIs and device drivers for specific host processor types, making it easy for system integrators to develop successful applications for our embedded I/O boards and systems. Sample code and HTML-formatted help documentation are also included in our SSKs. Trust NAI's software solutions for comprehensive and customizable solutions for your I/O board and system needs.
NAI’s COSA® designs feature a unique blend of on-board processors and FPGAs. These components perform complex and time-critical tasks, including motion control, process control, monitoring, data transfer, and communication protocols. Each I/O function can "pre-process" data, reducing the burden on the host and leaving Single Board Computers (SBC) free to handle high-level system requirements. Additionally, the architecture provides extensive Background Built-In-Test (BIT) to ensure dependable performance. Trust NAI's COSA® designs to provide efficient solutions for your motion control, process control, monitoring, and data transfer needs.
NAI offers Software Support Kits (SSKs) that provide system integrators with the necessary software components and knowledge base to develop successful applications for our embedded I/O boards and systems. Our SSKs include high-level APIs and device drivers for specific host processor types (such as Intel®, NXP®, and ARM®), enabling users to access various I/O functions from a user application. Sample code is also included in our SSKs to help users quickly familiarize themselves with our software library and APIs. Our intelligent I/O functions have fixed memory maps that can be expanded as enhancements are added, without impacting existing code. Additionally, keeping up with technology insertion is seamless, as future processor upgrades require no new device drivers and will work with existing I/O cards.
Our common operating system-specific SSKs are independent of the single board computer (SBC) used and are supplied with source code and board-specific library APIs. The SBC-specific Board Support Package (BSP) does not need to be updated when new or enhanced function support is added since the SSK libraries are independent of the BSP. The low-level API Register-Transfer-Level (RTL) library is written in ANSI-C for portability and is used in multiple OS platforms. Our SSKs also include HTML-formatted help documentation that defines I/O function-specific API calls and their respective parameter requirements.
The latest version of a board-specific SSK can be downloaded here. Our SSKs provide out-of-the-box support for operating systems like Windows® (7,10), Linux (Ubuntu, RedHat, AlmaLinux), PetaLinux (2014, 2018, etc), LabVIEW/LabVIEW-RT Linux/PharLab, DEOS (Real-Time O/S) and VxWorks (6.9, 7, 653, etc). For other operating system support, please contact our factory at 1 (631) 567-1100. NAI's SSKs provide comprehensive and customizable software solutions for your I/O board and system needs.
Linux Library Software Support Kit
Linux Library Software Support Kit Version 1.57
Linux Library Software Support Kit Version 1.58
Linux Library Software Support Kit Version 1.59
Linux Library Software Support Kit Version 1.60
Linux Library Software Support Kit Version 1.61
Linux Library for ARM Processor Software Support Kit
Linux Library for ARM Processor Software Support Kit Version 1.57
Linux Library for ARM Processor Software Support Kit Version 1.58
Linux Library for ARM Processor Software Support Kit Version 1.59
Linux Library for ARM Processor Software Support Kit Version 1.60
Linux Library for ARM Processor Software Support Kit Version 1.62
VxWorks Library Software Support Kit
VxWorks Library Software Support Kit Version 1.57
VxWorks Library Software Support Kit Version 1.59
VxWorks Library Software Support Kit Version 1.60
VxWorks Library for ARM Processor Software Support Kit
VxWorks Library for ARM Processor Software Support Kit Version 1.57
VxWorks Library for ARM Processor Software Support Kit Version 1.59
VxWorks Library for ARM Processor Software Support Kit Version 1.60
VxWorks Library for ARM Processor Software Support Kit Version 1.62
VxWorks Library for Power PC Software Support Kit
VxWorks Library for Power PC Software Support Kit Version 1.57
VxWorks Library for Power PC Software Support Kit Version 1.59
VxWorks Library for Power PC Software Support Kit Version 1.60
VxWorks Library for Power PC Software Support Kit Version 1.62
Memory mapped access is a method of configuring hardware or software systems by modifying values stored in specific memory locations, known as memory-mapped registers. This approach is often used in embedded systems and other systems where low-level hardware control is necessary. It can provide a flexible and efficient means of configuring complex systems, particularly those with numerous hardware components that require coordination and synchronization.
Various aspects of the system's behavior can be configured, such as enabling or disabling specific features, setting operating modes or performance levels, and specifying input/output configurations. For example, memory-mapped registers can be used to configure the behavior of sensors, actuators, and other hardware components. Designers can adjust sampling rate, sensitivity, response time, power consumption, and more. Overall, memory-mapped registers provide a powerful mechanism for controlling the behavior of hardware components in a system control application. By fine-tuning the values stored in these registers, designers can achieve fine-grained control over the system's behavior, increasing efficacy and efficiency.