- HW/SW interfaces define interactions between software and hardware (which component/subsystem interacts with other components/subsystems, what is the protocol of interaction, and possibly interaction performance requirements)
- They are often a source of problems
- What are the difficulties in defining and managing HW/SW interfaces?
- Identifying and dealing with (often unforeseen) second and third order (e.g. side-effect) interactions between software and hardware
- Making interfaces clear and explicit to everyone involved in the development, during the different phases (also during detailed design)
- Understanding, communicating and dealing with impact of changes made to software and hardware
Overcoming these problems - in other words, mastering management of HW/SW interfaces is therefore an imperative of HW/SW co-design
Following table lists all TWINS solutions and experience reports that address this co-design imperative.
| ESSENTIAL ACTIVITIES |
CO-DESIGN IMPERATIVE: Managing Interfaces between Hardware and Software |
| Requirements Management |
Requirements Flowdown |
| Solutions |
NeoMultiModel is a theoretical method which combines Requirements engineering, Architectural decomposition and Multidisciplinary modelling
More details on the solution page
|
| Experience Reports |
|
| Architecture |
Architectural Decomposition |
| Solutions |
NeoMultiModel is a theoretical method which combines Requirements engineering, Architectural decomposition and Multidisciplinary modelling
More details on the solution page
|
| Experience Reports |
|
| HW/SW simulation & emulation |
Early Consistency Check of HW/SW Interfaces |
| Solutions |
"The Scaleo TWINS emulation platform allows to prototype a system-on-chip and execute/test its embedded software; it provides a low cost prototype for performance evaluation"
Set-up to test printer control software against a model of the physical engine
A tool/environment to simulate the part of a printer that creates the toner image and puts it on paper
|
| Experience Reports |
"The Scaleo TWINS emulation platform allows to prototype a system-on-chip and execute/test its embedded software; it provides a low cost prototype for performance evaluation"
A tool/environment to simulate the part of a printer that creates the toner image and puts it on paper
|
| Verification and validation |
Specialised Test Environment |
| Solutions |
Set-up to test printer control software against a model of the physical engine
A tool/environment to simulate the part of a printer that creates the toner image and puts it on paper
Interface verification for concurrent programs: A method by which systems with a high degree of parallelism can verified, by abstracting from the values of program variables and verify safety properties w.r.t interface calls
More details on the solution page
|
| Experience Reports |
A tool/environment to simulate the part of a printer that creates the toner image and puts it on paper
|
| Management |
Conformance |
| Solutions |
The issues with this thermal printer were successfully solved. The key to the solution was proper documentation, improving design quality, the introduction of DFT structures and last but not least, proper coaching and cooperation of interdisciplinary design teams
More details on the solution page
The objective of the approach was to exploit the re-configurability of a programmable part being present in the system to verify/debug/optimize as much as possible the HW part of the system without the need for the final (embedded) SW part to be ready. A clear rendezvous point was created to ensure seamless inter-team operation
More details on the solution page
|
| Experience Reports |
The issues with this thermal printer were successfully solved. The key to the solution was proper documentation, improving design quality, the introduction of DFT structures and last but not least, proper coaching and cooperation of interdisciplinary design teams
More details on the solution page
The objective of the approach was to exploit the re-configurability of a programmable part being present in the system to verify/debug/optimize as much as possible the HW part of the system without the need for the final (embedded) SW part to be ready. A clear rendezvous point was created to ensure seamless inter-team operation
More details on the solution page
|