Implementation Strategies for Complex Embedded Systems Flashcards
(34 cards)
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
The number of bits assigned
to registers:
- 8-bit
- 16-bit
- 32-bit
- 64-bit
Central Processing Unit (CPU)
Important considerations:
Clock speed
Level of parallelism offered by the processor
The range of an embedded microprocessor
system is from the low hundreds of
megahertz (200 MHz) to over 1GHz.
Clock speed
Processors also offer instructions that are
—————- ———- to optimize the execution of
algorithms that exhibit data-level parallelism.
Single Instructions, Multiple Data
(SIMD)
where with the
addition of a relatively small amount of logic,
the processor presents two separate logical
cores
Symmetric multithreading
As —– —– increase, more and more logic is added to
the processor die, creating families
of application-specific service
processors
integration levels
often used to
describe these highly integrated
processors.
system on
chip (SOC)
SOCs integrate capabilities to connect
the SOC to external memory devices
and nonvolatile storage devices using
glue-less interfaces
a term used to indicate
that there is no additional logic needed
to connect the two devices,
Integration Level
Glue-less