At North Atlantic Industries (NAI), our Configurable Open Systems Architecture™ (COSA®) designs provide an intelligent platform and operating system (OS) independent approach, making the application software (SW) both simple to write and portable. The hardware includes embedded firmware (FW) that interfaces directly to the SW Application Programming Interface (API). Together, the FW/SW offer seamless software application integration for the NAI COSA I/O and communication functions.
COSA designs incorporate an innovative mix of on-board processors and FPGAs that perform “built-in” complex and time-critical tasks to implement motion control, process control, monitoring, data transfer requirements, and communication protocols, as well as extensive Background Built-In-Test (BIT). The architecture provides the ability for each I/O function to perform “pre-processing” of data, unburdening the host and leaving the Single Board Computers (SBC) free to handle the processing of high-level system requirements.
Our Software Support Kits (SSKs) provide system integrators with the software components and knowledgebase necessary to successfully develop applications for NAI embedded I/O boards and systems. The SSKs provide high-level APIs and device drivers for specific host processor types (i.e., Intel®, NXP®, ARM®, etc.) to access various I/O functions from a user application. To quickly familiarize users with our software library, our SSKs also include sample code that demonstrates how to use the APIs for each of the I/O functions we provide. All I/O memory-mapped function data may be accessed over a system bus interface (i.e., VME, cPCI, PCIe,), directly from an onboard host processor or via Ethernet communication from a remote host. With COSA, 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.
Common operating system-specific SSKs, which are independent of the SBC used, 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; 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 used in multiple OS platforms. In addition to the source code, SSKs include HTML-formatted help documentation defining I/O function-specific API calls and their respective parameter requirements.
The latest version of a board-specific SSK can be downloaded here. A Quick-Start Software Manual is also available for download where the SSK contents are detailed. The SSKs provide out-of-the-box support for the following operating systems: Windows® NT/2000/XP/Vista/7/8.1/10, Wind River® VxWorks®/Linux, CentOS 6.5, PetaLinux, and RTOS (LynxOS®). For other operating system support, please contact the factory at 1 (631) 567-1100.