CitationDownload as .RIS
Emerald Group Publishing Limited
Copyright © 1998, MCB UP Limited
MATRIX X proves its worth at Lear Astronics
Software solutions for aerospace
MATRIXX proves its worth at Lear Astronics
Sophisticated flight control systems are integral to the safety of today's modern aircraft. As a leader in creating these crucial embedded systems, lear Astronics Corporation (Astronics) uses state-of-the-art hardware and software techniques and tools to improve the quality, time-to-market, and cost of their products. Astronics' Universal Vehicle Control System (UVCS) clearly demonstrates this advanced development approach.
Astronics initiated the UVCS IR&D program to improve productivity and quality through automation of its software development process. After careful evaluation of available design and development tools, Astronics chose the MATRIXX toolset from Integrated Systems Inc. as the centerpiece for this program. The powerful MATRIXX product family, which includes SystemBuild a dynamic modelling and simulation tool, Xmath an object-oriented graphics and analysis package, and AutoCode a real-time source code generator, accelerates the design process from concept development to final control system design. Using the complete family of tools, engineers can seamlessly design, test, and modify models throughout the entire design process, with the added benefit of producing code and documentation automatically.
Meeting the challenge of safety-critical systems
Reducing development time and cost was a key goal of Astronics' UVCS project because software development is a high-labour-content and a high-labour-rate activity for safety-critical systems. Testability and traceability to requirements were also crucial. For Astronics, it was essential that the source code generated by automatic code generation tools be testable to the level of scrutiny required for qualification of safety-critical software. Finally, Astronics needed an automatic code generation solution that generated efficient program code in terms of both program size and duty cycle overhead.
"We chose the MATRIXX toolset for a number of masons, but the maturity of the products was pivotal," says Bernaid Shen, a member of the technical staff at Astronics and the individual responsible for technology insertion on the UNCS project. "We needed tools that would work the first time around. In addition, we had to satisfy our project goals of increased productivity and quality."
To prove the UVCS design concepts, Astronics applied UVCS to a real application the P-3C Automatic Flight Control System (AFCS). Used in P-3C maritime patrol aircraft around the world, the original AFCS was developed by Astronics as an analogue autopilot in the 1960s. With the UVCS/P-3C project, Astronics created a dual-channel digital system with built-in hooks for expanded capabilities, such as navigation and flight management, to replace the existing system.
In applying the UVCS program to the P-3C project, Astronics engineers used MATRIXX SystemBuild and Xmath tools to perform requirements modelling and analysis, and the MATRIXX AutoCode tool to automatically generate Ada code from the SystemBuild models. In addition, UVCS made extensive use of reusable code to reduce development efforts and focused on open standards, such as POSIX, to decrease development risks and costs (Figure 1).
"We experienced significant improvements in productivity and the quality of embedded software even though we didn't take full advantage of all the MATRIXX capabilities in the P-3C project," Shen states. "And the project results confirmed the reliability of the MATRIXX tools. We didn't encounter a single tools error in any of the Ada code generated during the development process."
Shortened development life cycle expedites project schedule
With the P-3C project, Astronics demonstrated that application of the MATRIXX toolset within the UVCS model can shorten the software life cycle. Using the MATRIXX tools, Astronics replaced the "waterfall" design model, which requires completion of each design stage prior to solving to the next stage, with a shortened interactive design practice that permits software architectural design and algorithm development to occur in parallel. The architectural design stage focuses on specifying system requirements and how they will be satisfied through reusable components, automatic code generation, or manual coding. The algorithm development stage consists of developing control algorithms, control logic, redundancy management, and built-in test capabilities.
Figure 1 Astronics engineers used MATRIXX SystemBuild and Xmath tools to perform requirements modelling and analysis, and the MATRIXX AutoCode tool to automatically generate Ada code from the SystemBuild models. In addition, reusable code further reduced development efforts and following open standards decreased development risks and costs
To develop the P-3C algorithms, Astronics system analysts/engineers used MATRIXX SystemBuild and Xmath graphical block diagram modelling and simulation tools to capture the algorithms and construct simulation models to evaluate the correctness of the algorithms. MATRIXX AutoCode (Ada) was then used to generate accurate and efficient compilable code from the SystemBuild descriptions.
Using the MATRIXX toolset, Astronics cut development cost in half and completed the project in half the time it would have taken with the manual methods the engineers used previously. "SystemBuild's visual block diagramming capability greatly improved the efficiency of our engineers," Shen explains. "SystemBuild portrays a system pictorially, allowing the engineer to understand the system more easily. The MATRIXX library of building blocks was also important to us because it met our safety-critical requirements. To satisfy our needs, the code generated from the building blocks has to be uniquely identifiable, repeatable, verifiable, traceable, and testable."
Astronics achieved compliance with the DOD-STD-2167A standards simply by mapping MATRIXX output to elements of the standard software life cycle. For example, Astronics mapped SystemBuild continuous SuperBlocks to software requirements, discrete SuperBlocks to the software design, and AutoCode Ada output to code elements.
Efficient automatic code generation, simplified software validation boost productivity, quality
Approximately 50 per cent of the P-3C's 9,000 lines of embedded code represented controls and monitoring functions implemented using the MATRIXX tools. The remaining 50 per cent were I/O and executive functions constructed using object-based reuse technology. The P-3C's two autocoded components, Control Laws and Signal Monitors, required no MATRIXX User Code Blocks (manually-written user code), demonstrating SystemBuild capabilities and the efficiency and accuracy of MATRIXX AutoCode. Astronics used manually-coded software (representing 8 per cent of the total lines of code) solely as glue logic to tie the autocoded routines to the I/O and executive.
"The MATRIXX tools allowed us to create an expanded set of reuse components including domain-specific flight control logic and high-level control algorithms such as voters, monitors, persistence counters, and force equalizers," explains Shen. In addition to software algorithms that would end up as embedded Add code, Astronics generated SystemBuild SuperBlocks that represented analog circuits such as servo loops and failure detection circuits. With these descriptions, Astronics could create a complete testable model (hardware and software) of the embedded system, and systematically capture engineering designs that are added to the company's knowledge base.
Astronics also found that the one-to-one mapping between a SystemBuild SuperBlock and a software procedure was a key advantage. This MATRIXX feature greatly simplifies software validation because Astronics can use the same test scenarios to validate correctness of the tool outputs during software integration as they used to validate correctness of the model during initial algorithm development. In addition, it provides the traceability Astronics needs for safety-critical applications.
Additional MATRIXX features, including nested subroutines and data typing, enabled Astronics to minimize program memory and reduce the duty cycle. With the newest version of MATRIXX, which features fixed-point modelling, analysis and code generation capabilities, Astronics expects to reduce its embedded system hardware from a 32-bit microprocessor incorporating a hardware floating point unit to a non-floating point 16-bit processor or an 8-bit microcontroller.
Expanded automation promises continued success
Today Astronics is successfully running MATRIXX tools on a SunOS system. The company is evaluating the Windows NT version with the goal of migrating as many tools as possible to a PC platform. "Tools that run on PCs are typically much less expensive," Shen points out. "Further, we believe that the Windows environment improves productivity in document and presentation preparation. Also, with the availability of low-cost notebook PCs, there is a competitive advantage in running MATRIXX and other tools in customers' offices, aircraft hangars, or any geographical location where engineers work.
"Software design automation using the MATRIXX tools produced the desired results for Lear Astronics," Shen concludes. "It confirmed that we can achieve significant productivity improvements using a combination of automatic code generation and reuse technologies. With the P-3C project, we achieved a successful flight test within an extremely aggressive schedule. At the same time, the automatic code generation duty cycle overhead was less than 10 per cent of the total duty cycle, which was well within our requirements. In addition, our average software problem report (SPR) turnaround time was reduced to one day. In future projects, we plan to expand our use of the MATRIXX product family for simulation, modelling, test, and AutoCode C code generation to garner even greater benefits." (Figure 2)
Figure 2 With the P-3C project, Astronics demonstrated that application of the MATRIXX toolset within the UVCS model can shorten the software life cycle
Details from Integrated Systems Inc. Ltd, 201 Moffet Park Drive, Sunnyvale, California 94089, USA. Tel: +1 408 542 1500; Fax: +1 408 542 1950; or Unit 5, Meadway Court, Rutherford Close, Stevenage, Herts SG1 2EF. Tel: +44 (0) 1438 751 651; Fax: +44 (0) 438 312 311; or in France. Tel: +33 1 3465 3732; Fax: +1 3465 0034.