Introduction to Embedded Systems Flashcards

(79 cards)

1
Q

What is an embedded computing system?

A

Any device that includes a programmable chip that is not a general-purpose computer (a device with a chip for a specific purpose)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Is a PC an embedded system?

A

No

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

How do embedded systems optimize designs?

A

They do not include a lot general purpose bells and whistles

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What are examples of embedded systems?

A

Printer, cell phone, cars/automobiles, airplanes, TVs, household applications

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

When was the MIT Whirlwind designed?

A

Late 1940s

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What was the MIT Whirlwind originally designed for?

A

to control aircraft simulator

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

When was the first microprocessor released and what was it called/which company did it belong to?

A

the early 1970s and called the Intel 4004

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What device used several devices to implement a microprocessor in 1972?

A

HP-35 calculator

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

When did automobiles start using microprocessor-based engine controllers?

A

1970

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

True or false: the early microprocessor-based engine controllers were multi-chip systems?

A

False

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What did the engine controllers control?

A

fuel/air mixture and engine timing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What was an advantage to using microprocessor-based engine controllers?

A

lower emissions and better fuel efficiency

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What are a couple microprocessor varieties?

A

Microcontroller and Digital Signal Processor (DSP)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What is a Microcontroller?

A

a microprocessor that includes I/O devices and on board memory

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What is a Digital Signal Processor (DSP)?

A

a microprocessor optimized for digital signal processing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What are the three typical embedded word sizes?

A

8-, 16-, and 32-bit

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

How many microprocessors does a Canon EOS 3 have?

A

3

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

What is an example of a simple control microprocessor?

A

the front panel of a microwave oven

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

What is an example of one of the microprocessors in the Canon EOS 3 and what is its purpose?

A

32-bit Reduced Instruction Set Computing (RISC) CPU (controls autofocus and eye control systems)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

What is an exampe of a digital TV’s microprocessor?

A

programmable CPUs with hardwired logic for video/audio decoding, menus, etc.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

About how many microprocessors are in current high-end automobiles?

A

maybe ~100

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

What are some examples of the microprocessor functions in automobiles?

A

4-bit microcontroller to check seat belt, microcontroller to run dashboard devices, 16/32-bit microprocessor controls engine

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

True or False: ABS is controlled by a microprocessor?

A

True

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

What does ASC+T (Automatic stability control) do?

A

controls engine to improve stability

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Which was introduced first: ABS or ASC+T?
ABS
26
What are the characteristics of an embedded system?
sophisticated functionality, real-time operation, low manufacturing cost, low power, designed on tight timelines by small teams
27
What is the definition of sophisticated functionality in the setting of an embedded system?
ability to run sophisticated/multiple algorithms and proved sophisticated UI
28
What is the meaning of 'Real-time operation' in the setting of an embedded system?
the computing operations must finish by deadlines
29
What is hard real time?
missing a deadline causes critical failure
30
What is soft real time?
missing a deadline causes degraded performance
31
What is it called when a system handles operations at widely varying rates?
a multi-rate system
32
What are the non-functional requirements of an embedded system?
low manufacturing costs and low power
33
How can an embedded system have low manufacturing cost?
mass market manufacturing, limited memory, and limited microprocessor power
34
Why is low power an important requirement of an embedded system?
battery power devices need lower power systems for longer battery life, and it lowers system cost for wall-powered devices
35
What is a common length market window?
6 month
36
What are some alternatives to microprocessors?
FPGAs and custom logic
37
Why are microprocessors better than custom logic?
more mass-market friendly, cheaper, and can use same logic to perform different functions
38
Why are microprocessors better than FPGAs?
simplify designs for certain product families
39
True or false: microprocessors use more logic for function implementation than custom logic?
true
40
How are microprocessors as fast as custom logic?
heavy pipe-lining, large design teams, aggressive VLSI tech
41
Which uses less power: microprocessors or custom logic?
custom logic
42
How do microprocessors improve power consumption?
features to control power consumption and software design techniques to reduce power consumption
43
What is a heterogeneous system?
custom logic for well defined functions and CPUs/software for everything else
44
What is an embedded computing platform?
hardware architecture and associated software
45
What are some examples of embedded computing platforms?
single-chip multiprocessors for cell phone and automotive network and processors
46
What are some challenges in embedded system design?
amount of hardware, meeting deadlines, minimizing power, correct functionality, ways to develop the system
47
How do you minimize hardware need?
CPU and memory size
48
What are ways to help meet deadlines?
faster hardware, cleverer software
49
What are ways to minimize power usage?
turning off unnecessary logic, reduce memory accesses
50
What do we need to consider when checking functionality of an embedded system?
having correct specifications, checking the implementation against specs, testing for real-time characteristics, testing with real data
51
What are the things to consider when trying to work on an embedded system?
observability, controllability, development platform
52
Definition of 'performance' in general computing?
average case, may not be well defined
53
In real-time systems, what does performance mean?
meeting deadlines
54
True or false: it is always good to finish ahead of the deadline in real-time systems?
false
55
True or false: in a real-time system, it is ok to miss a deadline only by a little bit?
false
56
What levels of abstraction do we need to analyze when trying to understand performance?
CPU, Platform, Program, Task, Multiprocessor
57
What is a design methodology?
a procedure for designing a system
58
How does having a design methodology improve the design process?
ensures you don't skip anything
59
What are some tools that automate and track design methodologies?
compilers, software engineering tools, and CAD tools
60
What are some design goals?
Performance (speed, deadlines), Functionality/UI, Manufacturing cost, Power consumption, Other requirements (physical size, etc.)
61
In a top-down design, what are the levels of abstraction?
requirements -> specification -> architecture -> components -> system integration
62
In a bottom-up design, what are the levels of abstraction?
system integration -> components -> architecture -> specification -> requirements
63
True or false: real design uses both top-down design and bottom-up design?
true
64
What is stepwise refinement?
at each level of abstraction analyzing the design for characteristics and current state and refining to add detail
65
What are requirements in the setting of embedded software design?
plain language description of what the user wants and expects to get
66
What are three ways to develop requirements for a product?
direct customer communication, marketing reps communication, prototyping for user feedback
67
What are functional requirements?
output as a function of input
68
What are some non-functional requirements?
time required to compute output, size, weight, power consumption, reliability
69
What are specifications?
more precise description of a system
70
Characteristics of specifications:
does not imply a certain architecture, provides input to architecture design process
71
True or false: specifications only include functional elements?
false, they include both function and non-functional elements
72
What forms may specifications be in?
executable or mathematical form for proofs
73
What is the basis of architecture design?
major components that will satisfy the specification
74
What hardware components should one consider in architecture design?
CPUs, peripherals, etc.
75
What software components should one consider in architecture design?
major programs and their operations
76
What is an important process in designing hardware and software components?
architecting the system before you start coding
77
Must every component be designed from scratch?
no, some can be modified from existing designs and others are ready-made with no modifications necessary
78
What is system integration?
putting together the components
79
Is it ok to test everything only after it is integrated?
No, testing each component often and each step of integration makes it easier to uncover and fix bugs