The Client
A leading developer and manufacturer of advanced weapon systems, sub-systems and ordnance for aerospace, combat land and naval platforms.
Description TenAsys Corporation’s INtime product is a real time extension for Microsoft Windows. The INtime CIF Driver is a real time (RT) Driver (CIFINtimeDrv.rta) that supports CIF30 (ISA), CIF50 (PCI) and CIF80 (CompactPCI) cards. Azure RTOS ThreadX. This advanced real-time operating system (RTOS) is designed specifically for deeply embedded applications. Among the multiple benefits it provides are real-time multithreading, inter-thread communication and synchronization, and memory management.
The Client’s Needs
The client needed reliable testing tools for the development of one of their advanced missile systems. The tools had to test correct handling of the data interfaces between the different components of the system, interfaces which include several RS communications, a digital signal that had to be acknowledged, and a global time keeping signal, all of which had to be handled within hard real time constraints measured in microseconds. In addition the client wanted to automate the regression testing of these interfaces as much as possible as well as to perform interference checking at protocol level by deliberately invalidating aspects such as ids, lengths, counters and checksums of messages at will.
Download Tenasys Driverpack
The Solution
To meet the strict real time demands of the system’s requirements, Adi extended the capabilities of its Simulator by using Tenasys’ InTime software which allows running a real time OS on a Windows based machine. To avoid duplicating the entire SBASE framework (for writing the Simulator’s driver), only reception, transmission, and immediate acknowledgment of messages / signals were handled within the InTime code leaving any other logic and handling to the existing
Simulator framework. To make this a robust as possible, a special inner protocol was developed between the real time (custom) and non-real time (generic) parts of the Simulator that allows dynamic creation of communication channels with the desired types and properties, including acknowledgment time constraints. This ensured real time responsiveness for the time critical parts while minimizing duplication of handling logic.
All the interfaces (including the inner protocol) were defined in the ICD Tool and generated whenever changes occurred in the definition to ensure that tests were always up to date. In addition, Adi’s TestManager was used to perform regression testing as development of system was being performed. Different interference checking were handled by the real time part of the driver instigated through the inner protocol by the non-real time part of the Simulator using dedicated messages also defined in the ICD Tool.
Activity | Tool |
---|---|
Defining data of interfaces between missile and ground units and internal interfaces | ICD |
Developing real time driver for Simulator and mechanism for dynamically creating communication channels | InTime Visual Studio plugin by TenAsys |
Developing driver with internal protocol between Simulator and real time driver | SBASE Framework |
Generating data for Simulator and data of internal protocol for real time driver | Files Generation |
Functional and black box testing of missile units interfaces | Simulator |
Automating smoke and regression testing | Test Manager |
The Results
Download Tenasys Driver Printer
Extending the SBASE framework of Adi’s Simulator with a driver written using InTime OS allowed the client to simulate the strict hard real time requirements for the interfaces and perform a considerable amount of the testing needed for the system. Using TestManager further enabled them to automate regression testing and reduce the manual labor involved in testing all the aspects of the protocols.
As a byproduct, the interface data was inserted into the ICD Database and is now available for report generation and code generation should the system require further development in subsequent projects.