Advanced Model-Based Design
ANSYS SCADE Suite Advanced Modeler provides software data flow and state machine design and simulation capabilities in a fully integrated environment. The environment connects with configuration management tools, ANSYS SCADE Display, ANSYS SCADE Architect, ANSYS Twin Builder, National Instruments™ Veristand™, dSPACE® MicroAutoBox™ and FMI-compliant tools, and includes the following model-based design capabilities:
- Intuitive and familiar graphical notation based on unlimited nesting of data flows and hierarchical state machines
- Graphical decision diagrams
- Array iterators to facilitate operator multi-instantiation and perform complex data processing
- Guaranteed model completeness and determinism
- Strongly-typed language and static consistency checking
- Easy reuse and readability of design
- Semantic comparison of various versions of models, packages, operators, or state machines with location and reporting features
- SCADE Suite library components: integrators, hysteresis, quantizers, filters, flip-flops, truth tables, look-up tables, matrix operators, etc.
- Import of manual legacy code into designs and import of MathWorks® Simulink® models
- Read/write access to SCADE Suite project and model files via Eclipse™ Modeling Framework (EMF) or Python API
- Wizard for Python script development using the SCADE Python API
Synchronization with Software Architecture Design
Integration of SCADE Architect and SCADE Suite provides you with tools for the complete software design process, from architecture to detailed design of components, including:
- Evolution of architecture and design of software components in parallel and resynchronization upon request at chosen project milestones
- Bidirectional synchronization between architecture models and design models
- Consistent and efficient management of I/Os and data definitions and changes
- No duplication of efforts in synchronizing interfaces defined at the architecture level and refined at the design level
This integration supports architecture design down to code production flow in contexts like IMA, FACE and AUTOSAR.
SCADE Suite qualified code generator produces code that fulfills the specifications provided as a SCADE Suite model without need for code verification activities. It is therefore key to ensure that the SCADE Suite model is correct with respect to its requirements. SCADE Suite offers several analyses that are performed at model level to ensure model correctness and improve development time.
Static analysis of the model (i.e., checks that the model is consistent, data flows are properly typed, initializations are properly done) are achieved by the front-end of the SCADE Suite code generator and is therefore qualified at the highest levels for the various standards.
The SCADE Suite Rule Checker provides a Python-based framework to develop specific checks on the model or even a SCADE Suite project. You can easily develop mandatory, required or advisory rules to check company or department rules. The SCADE Suite Rule Checker supports a justification mechanism for required or advisory rules and produces a detailed report with direct access to the model for failed rules.
SCADE Suite Design Verifier is a verification assistant that formally expresses and assesses safety requirements, providing a productive way to find bugs early in the development process. Properties to verify are defined by SCADE itself. The Boolean outputs are the proof objectives for Design Verifier, which then automatically produce counterexamples. Design Verifier can also be used to find division-by-zero operations. It is powered by Prover® Technology and supported by a multicore-enabled formal proof engine with floating point computation support.
Timing and stack size optimization
SCADE Suite Timing and Stack Optimizer estimates the relative worst-case execution time (WCET) or stack usage of tasks in an application. Based on estimation results, you can easily focus iteratively on the application parts that are causing long execution times or unsatisfactory memory usage and refine the application profiling by optimizing SCADE Suite models and/or tuning SCADE Suite KCG code generator options. SCADE Suite Timing and Stack Optimizer is powered by AbsInt aiT.
The Timing and Stack Optimizer provides:
- Analysis of WCET and stack usage of a SCADE Suite application independently from the actual target platform
- An iterative process to focus on application parts that are causing long execution times or unsatisfactory stack usage, and to refine the application profiling by optimizing SCADE Suite models
- Comparison of results between optimization sessions reported in the SCADE Suite design environment
- Automatic and customizable detailed reporting
- Easy comparison of code performance by fine-tuning KCG options
Debugging and Simulation
Once described with graphical and/or textual blocks in SCADE Suite, you can simulate a software design or any of its blocks. SCADE Suite simulation capabilities are based on the code produced by the qualified SCADE Suite code generator and provide a powerful visual debugging environment that enables you to define stop conditions, set breakpoints within an execution cycle and examine the internal variables and output values. You can also record and play back scenarios. The ASCII format of the scenarios makes it easy to integrate the SCADE Suite simulation phase within existing workflows. SCADE Suite simulation tasks can be tailored and automated using the Tcl scripting language.
SCADE Suite simulation and debugging capabilities include:
- Executable SCADE Suite designs
- Detailed simulation of actual SCADE Suite-generated code
- Scenario recording and playback
- Early detection of specification errors
- Automatic non-regression tests
- Interactive and batch modes
- Access to variables and probes for debugging in the graphical model
- Breakpoints on control, data and time criteria
- Support of SCADE Test Environment input formats
- Co-simulation with MathWorks® Simulink® and MATLAB®
- Simulation driven by Tcl scripts for complex customized scenarios
- Slave mode for connection to your simulation environment and tools (co-simulation)
- Functional Mock-up Unit export (32/64-bits) from SCADE Suite models for connection to ANSYS Twin Builder® and any FMI-compliant system simulation tools
Automatic Code Generation
SCADE Suite KCG is a C and Ada code generator from Scade models that has been qualified as a development tool for DO-178B software up to Level A and DO-178C/DO-330 at TQL-1; certified for IEC 61508 at SIL 3 and for EN 50128 at SIL 3/4; and qualified for ISO 26262 software up to ASIL D. This code generator saves verification effort in the coding phase, such as code reviews and low-level testing on the SCADE Suite KCG generated code. This productivity improvement shortens certification and/or modification time and effort. SCADE Suite KCG has successfully passed the qualification procedure on several large programs and is currently used in production for programs in Europe, Asia and the Americas.
Generated code properties
- Fulfills embeddable code constraints: static memory allocation, static bounded loops, no recursion
- Generates high quality and safe C and Ada production code: optimized, customizable, readable and traceable
- Introduces no dead code
- Produces portable code
Qualifiable/Certified SCADE Suite KCG 6.6
- C code generation
- Ada 95 code generation compatible with SPARK 95, fitting seamlessly into Ada users flows
- Scade language and typing extensions (new iterators, bitwise operators, 8/16/32/64-bit numeric types (signed/ unsigned) and 32/64-bit floats
- Qualifiable as a DO-330 TQL-1 tool under DO-178C
- Qualifiable as a development tool under DO-178B
- Qualified under ISO 26262:2011 at ASIL D and C
- Certified under IEC 61508:2010 at SIL 3
- Certified under EN 50128:2011 at SIL 3/4
- Automatic integration of the generated code to Wind River® VxWorks® 653 and VxWorks® CERT, Green Hills® Software INTEGRITY™-178B, SYSGO PikeOS® and other RTOSes
- Customizable RTOS adaptors for generated code
Multicore code generation
SCADE Suite enables multicore code generation using the Multicore Code Generator. Specific instances of operators are identified in the model to become parallelizable tasks. The specification of these tasks is independent from the model, allowing for various configurations. Multicore code generation is successfully used on:
- Infineon AURIX™ with PXROS-HR from Hightec
- MPPA® many-cores platform from Kalray
Best-in-class Qualification/Certification Support
The SCADE Suite toolkit offers a complete solution for the development of high-integrity embedded applications. The Scade language has been specifically designed in cooperation with customers and authorities to address high-integrity embedded applications.
The SCADE Suite KCG C and Ada code generator is qualified/certified as a DO-330 TQL-1 tool under DO-178C, ISO 26262:2011 at ASIL D and C, IEC 61508:2010 at SIL 3 and EN 50128:2011 at SIL 3/4. The tool itself has been developed following these standards.
The SCADE Suite C Compiler Verification Kit is a test suite that contains all possible C constructs (and combinations of these constructs to a certain level of complexity) that can be generated by SCADE Suite KCG C Code Generator. The Compiler Verification Kit is used to verify that the target C compiler correctly compiles the C code generated by SCADE Suite. The objective of this verification is to obtain the required level of confidence that there is no discrepancy between source and object code that can be introduced by compiler/linker, according to a procedure that obeys DO-178C. The Compiler Verification Kit supports early verification of the correctness and consistency between the development tools chain and the target platform. It demonstrates that the C code generated by SCADE Suite KCG is correctly compiled by the C target compiler and that the resulting code executes correctly on a given target platform. The Compiler Verification Kit also supports customizable automation execution scripts.
Systems Simulation Capabilities
SCADE Suite Advanced Modeler includes ANSYS Twin Builder. Twin Builder is a powerful platform for modeling, simulating and analyzing virtual system prototypes. It enables product development teams to verify and optimize performance of their software-controlled, multidomain systems designs. Twin Builder also provides:
- Flexible modeling capabilities and tight integrations with ANSYS solutions for 3D multiphysics simulation and ANSYS SCADE products for embedded software design
- Broad support for assembling system-level physical models and helping product development organizations connect conceptual design, detailed analysis and system verification
Dedicated Solutions for Embedded Automotive Software
The SCADE Automotive Package extends and simplifies system design capabilities for the automotive market. It encompasses SCADE Architect and SCADE Suite with integration of SCADE LifeCycle to support a development flow starting from AUTOSAR Software Component (SWC) to AUTOSAR RTE-compliant code generation.
The package provides:
- AUTOSAR R4.2.2 Support
- Import/export of AUTOSAR ARXML inter-exchange format
- AUTOSAR SCADE Architect configuration for Software Component support, including Timex, Complex Device Driver and ComSpecs (for initialization)
- Dedicated synchronization of “Runnables” with SCADE Suite software models. “Runnables” can be decomposed into SysML Internal Block Diagrams before synchronization if additional architectural refinements are needed
- Support for multisynchronization at the architecture level between system engineers in a team
- Support for traceability between architectural elements and requirements in IBM® DOORS®, JAMA, Siemens Polarion® (see Ansys SCADE LifeCycle)
- AUTOSAR code generator for AUTOSAR RTE-compliant code generation, including dedicated information (files, memory) provided as separate ARXML for final integration
- Calibration and Fixed Point Support
- ASAM MCD-2 DC (ASAP2) support for software calibration and measurement
- Library generator for fixed-point conversion, with various encodings
- Qualified Code Generation
- SCADE Suite and SCADE Display KCG Code Generators have been qualified by TÜV SÜD at TCL3 to be used for the development of ISO 26262 ASIL D software
SCADE Tools Integration
SCADE Suite easily integrates with tools for systems architecture design, HMI development and testing and application life cycle management, providing a complete environment for all embedded software development activities.
Synchronization with software architecture design
SCADE Suite enables you to refine software components based on structural system modeling in the SCADE Architect environment. This ensures:
- Consistent and efficient management of I/Os and data definitions and changes
- No duplication of efforts in synchronizing interfaces defined at the software architecture level and refined at the software design level
SCADE Suite connection with SCADE Test Rapid Prototyper helps you to:
- Design and build interactive graphical panels for SCADE Suite simulation sessions
- Access a library of predefined and customizable widgets (controls and indicators)
- Automatically generate executable applications for Windows, Apple iOS, or Android platforms
- Generate 32/64-bit Functional Mock-up Units (FMU) for connection to ANSYS Twin Builder and FMI-compliant system simulation tools
Development of embedded human-machine interfaces (HMIs)
SCADE Suite enables you to design the control logic associated with graphical HMIs designed in SCADE Display. Features include:
- Co-design: Tight design-level integration of critical logic and graphic components in embedded applications
- Co-simulation: Early prototyping and validation in white-box and black-box mode between display application logic and graphic components
- Co-reporting: Integration of report generation between SCADE Suite models and SCADE Display graphical specifications
- Co-generation: Integrated deployment of SCADE Suite and SCADE Display generated code
Application life cycle management
SCADE Suite integration with SCADE LifeCycle provides the following capabilities:
- Project monitoring with SCADE LifeCycle Dashboard to compute metrics reported on predefined and customizable dashboards
- Requirements management and traceability with SCADE LifeCycle Requirements Management Gateway
- Automatic documentation generation with SCADE LifeCycle Reporter
- Integration with SCADE LifeCycle Reporter and SCADE LifeCycle Requirements Management Gateway shared with SCADE Display and SCADE Architect