Implementation Strategies for Complex Embedded Systems Flashcards
A key characteristic of all embedded systems
is that they are designed to perform a
Specific
task or function.
can range from a simple
stand-alone device to a chassis of networked
cards to a system composed of many separate
networked embedded elements
Embedded system
The traditional design approach
has been to traverse the two sides
of the accompanying diagram
separately. That is:
Design the hardware
components.
* Design the software
components.
* Bring the two together.
* Spend time testing and
debugging the system.
The Hardware Portion of
the life cycle involves:
- the design
- development
- test of the physical system
architecture - packaging printed circuit
boards and the individual
components.
Entails the tasks or algorithmic
portion of the application.
The Software Portion
Good system designers and
designs proceed using a
minimum of five steps:
- Requirements Definition.
- System Specification.
- Functional Design.
- Architectural Design.
- Prototyping
is
to capture a formal
description of the
complete system from
the customer’s point of
view and then to
document these needs
as written definitions
and descriptions.
The goal of the
requirements
identification process
- Name and Description of the
Entity - Responsibilities—Activities
- Relationships
- Safety and Reliability
THE ENVIRONMENT
- System Inputs and Outputs
- Responsibilities—Activities
- Safety and Reliability
THE SYSTEM
a precise description of
the system that meets stated requirements.
SYSTEM SPECIFICATIONS
Ideally, a specification document should be
- Complete
- Consistent
- Comprehensible
*Traceable to the requirements - Unambiguous
- Modifiable
*Able to be written
is
carried out based on a search of
essential internal variables and
events in the system
A first functional decomposition
In executing an ——– ——-,
the goal is to select the most
appropriate solution to the original
problems based on exploration of a
variety of architectures and the
choice of the best-suited
hardware/software partitioning and
allocation of functionality.
architectural design
Software design - the following must be analyzed and
decided:
- Whether to use a real-time kernel
- Whether several functions can be
combined in order to reduce the
number of software - tasks and if so, how?
- A priority for each task
Software design
Hardware Architecture -Among the important criteria that we
strive to optimize are:
- Implementation (or factory) cost
- Development time and cost
- Performance and dependability
constraints - Power consumption
- Size