Many embedded systems have increasingly included substantial collections of computationally complex protocols to provide superior connectivity for what is a growing segment of embedded applications. That trend shows no sign of slowing down, and in many cases is growing rapidly as developers find new reasons to enable connectivity within their embedded products. Protocol complexity issues in an embedded system have been partially mitigated through the use of preconfigured protocol stacks. But even a pre-packaged protocol stack doesn’t eliminate associated software test for engineers employing an already-proven validation suite. Provided that the protocol stack is isolated adequately, the pre-configured software stacks can save time and reduce the learning curve for software developers.
Flawless connectivity is a fundamental expectation of remote or distributed embedded systems. Quality and reliability engineers charged with validating the system before it is shipped can adopt pre-configured validation test suites to be certain that the protocol stack functions as intended. Ironically, for some companies the use of a pre-configured and verified protocol stack can hurt engineers’ ability to diagnose operational problems when they inevitably occur. When this situation happens, the robustness and functionality of the vendor’s programming tools, such as a workbench, become critical to the engineering process.
Commercial programming workbench tools often offer regression testing and test suite tools for specific communications stacks. Using these commercial tools can save time and effort while ensuring a reliable stack. Green Hills Software (1) and Wind River Systems (2) offer both a test workbench and pre-certified protocol stacks. These test suites incorporate experience gained from hundreds of uses by customers in real world situations. In effect, choosing a commercially available protocol stack carries with it thousands of man-hours applied to the problem of software verification and validation.
Green Hills Software Networking Solutions Center provides a wide range of software and services focused on communications and communication protocols. Connectivity of a particular embedded system is often dictated by the environment in use: CAN, Ethernet, or customized protocols. The number and diversity of communication options available to embedded systems can be staggering.
Which portion of the protocol spectrum you choose is dependent on the whole system that the embedded product is used within. Simple communications within a private, purpose-designed embedded network may only require an Ethernet layer with a single network layer. Green Hills Software network professional services include complete networking system design, integration, debug, optimization, customization, test, and validation, training, and enhanced product support. Using these services allows development engineers to deliver higher-quality products with faster time-to-market and at lower development and deployment cost. While using a third party communications package does have developmental advantages, there are tradeoffs to be made dealing with relying on a third party for debug support during both development and deployment.
Most Green Hills protocols are delivered in source code and are ready to run on INTEGRITY, INTEGRITY-178B, velOSity and u-velOSity. These protocols and protocol stacks are designed and tuned to use the capabilities of the Green Hills family of operating systems and the MULTI® IDE.
The MULTI IDE combines a debugger, editor, code browser, configuration manager, and other tools into a single integrated system. The MULTI IDE supports Green Hills Software's optimizing C, C++ and EC++ compilers. MULTI IDE supports the industry open standard Eclipse system that permits re-configuration of the MUTLI environment and integration of Eclipse-based third party tools into the development environment.
Wind River Systems’ Test Management product is a test execution optimization system for embedded devices. It permits run-time visibility into devices while under test. The system provides the operational feedback that test engineers need to achieve the highest possible quality in the least amount of time. The system is a scalable test and development environment intended to enhance automation, control, traceability, and feedback. It leverages unique, dynamic instrumentation technology to measure test coverage, map test-to-code traceability, profile performance, enable white-box access, and speed diagnostics of complex devices. All of these capabilities are available at run-time, providing a unique mechanism for test management. Like, Green Hills Software. Wind River Systems development environment supports the open standard Eclipse facility.
Communications protocols are best tested and validated by purpose-built tools and pre-packaged test and validation data and control suites. Developing communications systems often require some way to simulate dataflows and stimulus-response behavior. An open source network simulator may have a role in your next communications development. Ns-3 is a discrete-event network simulator for Internet systems, targeted primarily for research and educational use, but usable in other situations. Ns-3 is free software, licensed under the GNU GPLv2 license, and is publicly available for research, development, and use. It provides specialized support for simulation of TCP, routing, and multicast protocols over wired and wireless networks. Ns has no concept of operating systems as part of its structure, but the package can be integrated into any Eclipse-capable development environment. As with any other Eclispe third party tool, there may be additional programming required to make Ns work seamlessly within your specific environment.
Embedded connectivity does not live in an isolated environment. Tools beyond the typical software and hardware development systems are often useful during engineering of connected embedded systems. The importance of Internet –based protocols has spawned a continuously improving collection of tools. Network hardware simulators like Candela Technologies LANforge ICE provides a reproducible set of impairments in which to test robustness of connectivity for embedded systems. LANForge ICE is a network emulator. It can add impairments in a controlled and reproducible manner to aid in testing applications and network equipment that must operate over a network. LANforge supports physical impairments that are difficult or impossible to simulate: latency, bandwidth, jitter, packet loss, packet reordering and others.
PacketStorm Communications offers an IP Network Emulator and simulator designed to reproduce the unfavorable conditions of IP Networks and WANs in a controllable and repeatable lab setting. The company’s Route Analyzers monitor, record, and troubleshoot routing protocols of networks to maximize network availability by identifying and diagnosing IP routing faults in real time. The Route Analyzer’s Intelligent Error Analysis uses algorithms to provide user settable alarms for fast diagnostics. Although the intended audience for the Router Analyzer is large scale datacenters and service providers, it also can aid engineers who are developing large scale connected embedded systems employing typical Internet routing.
Internet-based communications protocols are becoming ubiquitous in embedded systems both for remote control/monitoring, and for data exchange. As these systems expand in capabilities and enter more sensitive applications, the full range of robustness for communications protocols take on a new urgency. With the increased reliance on connectivity comes the need for better and more comprehensive testing and validation. Today these needs can be met by commercially available development tools combined with network emulators and simulators.
- Green Hills Software is an Affiliate member of the Intel Embedded Alliance
- Wind River Systems is an Associate member of the Intel Embedded Alliance
Roving Reporter (Intel Contractor)
Intel® Embedded Alliance