Final exam EEE499 Real-Time Embedded System Design 18 April

Transcription

Final exam EEE499 Real-Time Embedded System Design 18 April
Final exam
Examen final
EEE499 Real-Time Embedded System Design
GEF499 Conception de systèmes intégrés en
temps réel
18 April 2015, 09:00
18 avril 2015, 09h00
Examiner: Dr. Alain Beaulieu, CD, PhD, PEng
Examinateur: Capt Adrien Lapointe, CD, MSc
Instructions:
Instructions:
•
Do not turn this page until instructed
to do so.
You have 180 minutes to complete the
test.
Questions have the values indicated in
the centre column.
This exam is on 100 marks.
•
•
Answer all questions in the test booklet,
unless instructed otherwise.
•
•
Immediately fill out your name, college
number and the number of your booklet
and on the information card.
Use of a calculator is permitted.
If a question seems unclear, make a
reasonable assumption, document it, and
answer the question as though the
assumption were correct. The examiners
will not clarify the meaning of questions
during the test.
•
Good luck!
•
•
•
•
•
•
•
•
•
•
•
•
Ne tournez pas cette page avant
l’instruction de l’examinateur.
Vous avez 180 minutes pour compléter
le test.
Les questions ont les valeurs indiquées
dans la colonne centrale.
Cet examen est sur 100 points
Répondez à toutes les questions dans le
livret d'examen, sauf sur indication
contraire.
Écrivez immédiatement votre nom,
numéro de collège sur le livret et sur la
carte d’information.
L’usage de la calculatrice est permis.
Si une question ne vous semble pas
claire, faites des suppositions
raisonnables, documentez-les et
répondez à la question en tenant compte
des suppositions. Les examinateurs ne
clarifieront pas le sens des questions
pendant le test.
Bonne chance!
1.
Explain what the run-to-completion
semantics mean and why it is important.
2
1. Expliquez ce qu’est la sémantique
d’exécution jusqu’à la fin et pourquoi elle
est importante.
2.
Protocols are important in Real-Time
Object Oriented Modeling. Name the main
advantage of using protocols to
communicate between capsules.
2
2. Les protocoles sont importants pour la
modélisation orientée-objet de systèmes en
temps réel. Donnez l’avantage principal
d’utiliser des protocoles pour communiquer
entre les capsules.
3.
In the implementation of Lab 3, the jammer
cannot transmit while the receiver is in
search mode. This obviously requires some
special attention at design.
6
3. Dans l’implémentation du laboratoire 3, le
brouilleur ne peut pas transmettre lorsque le
receveur est en mode de recherche. Cela
nécessite évidemment une attention spéciale
lors du design.
a. Donnez une définition de la tolérance
aux défaillances.
b. Étant donné que le contrôleur
ElectronicWarfare coordonne les
émissions électromagnétiques du
transmetteur et du brouilleur, quel type
de communications devrait-il utiliser?
Pourquoi?
c. Quel est l’effet de ce type de
communications sur la sémantique
d’exécution jusqu’à la fin?
a. Give a definition of fault-tolerance
b. Given that an ElectronicWarfare
controller coordinates the
electromagnetic emissions of both the
transmitter and jammer, what kind of
communication should it use? Why?
c. What is the effect of that type of
communication on the run-to-completion
semantics?
Questions 4 to 6 refer to the a SystemCapsule
that includes the following elements:
Les questions 4 à 6 font référence à un
SystemCapsule qui inclus les éléments
suivants :
i.
Trois capsules contenues : anA de type
A, aB de type B et aC de type C.
ii.
Les capsules de types A et B partagent
le protocole AtoB, A est la base et B le
conjugué.
iii.
Un port de chronomètre appelé
delayTimer; et
iv.
Un port relais conjugué public vers la
capsule aC utilisant le protocole SCtoC.
i. Three contained capsules: anA of type A,
aB of type B, and aC of type C.
ii. A and B type capsules share the AtoB
protocol, A is the base and B is the
conjugate.
iii. A timing port called delayTimer; et
iv. A public conjugate relay port to aC
capsule using the SCtoC protocol.
4.
Draw the class and structure diagrams for
the SystemCapsule.
10
1/8
4. Dessinez les diagrammes de classe et de
structure pour le SystemCapsule.
5.
Draw the state diagram for aB based on the
6
5. Dessinez le diagramme de machine d’état
pour aB selon les exigences suivantes.
Annotez sur le diagramme l’endroit où il y
aurait du code et donnez-en le pseudo-code.
a. Pendant la transition initiale, aB
démarre le delayTimer pour 6
secondes et va en mode init.
b. Lorsque le delayTimer expire, aB va
en mode standby.
c. Lorsque le signal catch est reçu de anA,
aB va en mode receiving.
d. Après 5000 msec, aB envoie le signal
gotIt à anA et retourne en mode
standby.
3
6. Selon l’information fournie jusqu’à
maintenant, dessinez le protocole et ses
messages. (Indice : le message sortant pour
la base est situé au bas de la représentation
graphique du protocole.
3
7. Les systèmes en temps-réel ne sont pas
comme les bases de données ou autres
applications de bureau. Il y a deux
caractéristiques qui les différencient des
autres systèmes. Quelles sont-elles?
Expliquez l’importance de chacune.
following specifications. Annotate where on
the diagram you would have code and
provide pseudo-code for each annotation.
a. During the initial transition aB sets the
delayTimer to 6 seconds and goes to
the init mode
6.
7.
b. When the delayTimer timeout occurs
aB goes to standby mode
c. Upon receipt of the catch signal from
anA, aB goes to the receiving mode
d. After 5000 msec, aB sends the gotIt
signal to anA and goes back to the
standby mode
Based on the information provided so far,
draw the protocol and the messages where
they belong. (Hint: the base outgoing
signals are those at the very bottom of the
protocol’s graphical representation.)
Real-Time systems are not like database or
other desktop applications. There are two
characteristics that separate real-time
systems from other systems. What are the
two characteristics and explain why each is
important.
2/8
Questions 8 to 10 refer to the ChemicalPlant
system shown in the diagram below.
8.
Draw the structure diagram for the
ChemicalPlant and one Enclave based on
the following requirements:
a. A ChemicalPlant is composed of a
Supervisory Control and Data
Acquisition (SCADA) system.
b. The plant also has five Enclaves
c. A Sensor can be either a Temperature
or a Pressure sensor
d. Each Enclave has up to six Sensor.
Les questions 8 à 10 font référence au système
ChemicalPlant montré dans le diagramme cidessous.
6
3/8
8. Dessinez le diagramme de structure pour le
ChemicalPlant et une Enclave selon les
exigences suivantes :
a. Une usine ChemicalPlant est composée
d’un système de supervision et
d’acquisition de données (SCADA).
b. L’usine a aussi cinq Enclave.
c. Un Sensor peut être soit un capteur de
Temperature ou de Pressure.
d. Chaque Enclave a jusqu’à six Sensor.
9.
Each Enclave is characterized by two
constants V, the volume of the enclave, and
n, the number of moles within the enclave.
a. Modify the diagram above so that each
enclave can be characterized by its own
constants. A blank copy of the diagram
is provided at the end of the exam.
10
9. Chaque Enclave est caractérisée par deux
constantes V, son volume, et n, le nombre de
moles qu’elle contient.
a. Modifiez le diagramme de classe afin
que chaque enclave puisse avoir ses
propres constantes. Une copie vierge du
diagramme est fournie à la fin de
l’examen.
b. Créez un protocole afin que le SCADA
puisse demander et recevoir V et n de
chaque Enclave. Incluez le protocole,
ses signaux et relations sur le
diagramme.
c. Créez un protocole qui permet au SCADA
de demander des sensorData de chaque
capteur. Incluez le protocole, ses
signaux et relations sur le diagramme.
d. Spécialisez le protocole générique du
Sensor afin que chaque capteur envoie
son type (température ou pression) avec
les données.
e. Complétez le diagramme en incluant la
cardinalité et les relations baseconjugué.
10
10. En vous référant au diagramme d’état du
SCADA montré ci-dessous, faites la liste des
séquences de code exécutées pour chaque
transition et identifiez l’état dans lequel le
système est à la fin de la chaine de
transition.
b. Create a protocol that allows SCADA to
request and receive V and n from each
Enclave. Include the protocol and its
signals on the class diagram, complete
the relations.
c. Create a protocol that allows SCADA to
request sensorData from any sensor.
Include the protocol and its signals on
the class diagram, complete the relations.
d. Specialize the Sensor generic protocol
so that each sensor sends its type
(temperature or pressure) with the data.
e. Complete the diagram including
cardinality and base-conjugate
relationships.
10. Refer to the state diagrams for the SCADA
shown below. List the sequence of code
blocks executed for each of the following
transitions and identify the end state (the
state that you are in when the transition
chain completes).
Assume that initially you are in the
monitor state. After that follow the state
machine wherever the transition chains take
you:
Supposez que vous êtes initialement dans
l’état monitor. Suivez la machine d’état là
où les chaines de transitions vous mènent.
a.
a. Dans le sous-état monitor, le signal BIT
est reçu;
b. Suivi par le signal monitorTimeout,
supposez que pressureLower est True.
b.
c.
d.
e.
f.
While in the monitor sub-state the BIT
signal arrives;
Followed by a monitorTimeout
signal, assume the pressureLower
evaluates to True
Followed by a heatTimeout signal;
Followed by a status signal;
Followed by a monitorTimeout,
pressureLower evaluates to False
and pressureOutOfRange evaluates to
False.
Followed by coolTimeout signal
c. Suivi par le signal heatTimeout;
d. Suivi par le signal status;
e. Suivi par le signal monitorTimeout où
pressureLower est False et
pressureOutOfRange est False;
f. Suivi par le signal coolTimeout;
4/8
g.
Followed by monitorTimeout where
pressureLower evaluates to False,
pressureOutOfRange evaluates to
True and pressureCritical
evaluates to True
g. Suivi par le signal monitorTimeout où
pressureLower est False,
pressureOutOfRange est True et
pressureCritical est True.
5/8
11. You have been hired by the Poles-Apart
consortium that is building a satellite
system that provides navigation data in the
Arctic and Antarctic.
4
11. Vous avez été engagé par le consortium
Poles-Apart qui bâtit un système de
navigation par satellite pour les régions
polaires Arctique et Antarctique.
Your new boss comes to see you and tells
you he read an interesting journal paper on
Rate-Monotonic Algorithm (RMA) and he
is so impressed with the paper that he wants
you to use this algorithm.
Votre nouveau patron vous dit qu’il a lu un
article sur l’algorithme d’ordonnancement à
taux monotone (RMA) et il est si
impressionné par l’article qu’il veut utiliser
cet algorithme pour le système.
Knowing this not a good idea, identify and
explain two limitations of RMA.
Puisque vous savez que ce n’est pas une
bonne idée, identifiez et expliquez deux
limites à l’utilisation de l’algorithme.
12. You have encountered a priority inversion
problem during the design of the PolesApart satellite. You refer back to your
course notes to resolve the problem. You
find two algorithms that solve the problem:
Priority Inheritance Protocol, and Priority
Ceiling Protocol
5
12. Un problème d’inversion des priorités s’est
présenté pendant le design du satellite pour
Poles-Apart. En regardant vos notes de
cours, vous trouvez deux algorithmes qui
aident à résoudre le problème : le protocole
d’héritage des priorités et le protocole de
priorité plafond.
Explain what each protocol does.
Expliquez ce que chacun des protocoles fait.
Which one solves the transitive blocking
that can lead to deadlock?
Lequel résout le problème de blocage
temporaires qui peut entrainer les
interblocages?
13. Systems A, B and C are each comprised of
four independent periodic tasks. They are
scheduled according to RMA on a single
processor. Given the following utilization
for each system, and using the utilization
bound test, indicate if the system can,
cannot, or might be schedulable.
6
13. Les systèmes A, B et C ont chacun quatre
tâches périodiques indépendantes. Leur
ordonnancement est fait selon le RMA sur
un seul processeur. Étant donné l’utilisation
suivante pour chacun des systèmes et en
utilisant le théorème des bornes
d’utilisation, indiquez si chacun d’entre eux
peut être, ne peux pas ou peux possiblement
être ordonnancé.
a. UsysA = 0.825;
b. UsysB = 1.03; and
c. UsysC = 0.72
a. UsysA = 0.825;
b. UsysB = 1.03; and
c. UsysC = 0.72
Note the formula for schedulability analysis
are appended at the end of the exam.
Notez que les formules d’ordonnancement
sont fournies en annexe.
6/8
14. Refer to the set of tasks in the table below
and their respective shared resources. All
tasks are periodic so you may assume Rate
Monotonic Priority Ordering and simple
priority inheritance
12
a. What is the blocking time of each task?
b. What is the worst case response time of
each task?
c. In the system there is one task that does
not suffer from interference, which one
and why?
d. There is also a task that will never suffer
from blocking, which one and why?
Task / Tâche
14. Les questions suivantes font références aux
tâches et à leurs ressources partagées
montrées dans le tableau suivant. Toutes les
tâches sont périodiques, supposez
l’utilisation de l’ordonnancement de priorité
avec échéancier monotone et l’héritage des
priorités simple.
a. Quel est le temps de blocage de chaque
tâche?
b. Quel est le temps de réponse (pire cas)
de chaque tâche?
c. Dans le système, il y a une tâche qui ne
souffre pas d’interférence. Laquelle et
pourquoi?
d. Il y a aussi une tâche qui ne souffrira
jamais de blocage, laquelle et pourquoi?
Computation Time / Temps d’exécution
Period / Période
Resources Used /
(worst-case /pire cas, msec)
(msec)
Ressource Utilisée
A
15
75
R1, R2
B
3
20
R2
C
14
35
R1
D
5
50
R2
Computation Cost /
Resource
Coût d’exécution
(worst-case / pire cas, msec)
R1
5
R2
2
15. An image guided surgery system consists of:
i. three identical and redundant
Interactive Image Guided Surgery
(IIGS) units with identical software,
ii. a Primary Optical Tracking (POT)
unit with unique software, and
iii. a Back-up Optical Tracking (BOT)
unit with unique software.
15
a. Provide a reliability block diagram for
the system.
b. Determine the system reliability for a 4
hour procedure
c. What is the reliability of a single IIGS
(Hardware and Software) for a procedure
15. Un système de chirurgie guidée comprend :
i. Trois unités de chirurgie guidée par
imagerie interactive (IIGS) avec le
même logiciel;
ii. Une unité primaire de suivi optique
(POT) avec logiciel unique; et
iii. Une unité de suivi optique de secours
(BOT) avec logiciel unique.
a. Donnez un diagramme fonctionnel de
fiabilité pour le système.
b. Déterminez la fiabilité du système pour
une procédure de 4 heures.
c. Quelle est la fiabilité d’un seul IIGS
(matériel et logiciel) pour une procédure
7/8
twice as long, 8 hours
deux fois plus longue, soit 8 heures?
All formulas are provided at the end of the
exam.
Component /
Composante
Toutes les formules sont fournies à la fin de
l’examen
Failure Rate /
Taux de défaillance
(Execution hours / heure d’exécution)
Utilization /
Utilisation
Reliability /
Fiabilité
(4 hour / heures)
IIGS Hardware / Matériel
100%
85%
IIGS Software / Logiciel
35%
92.5%
POT / BOT Hardware / Matériel
100%
87.5%
POT Software / Logiciel
0.010
20%
BOT Software / Logiciel
0.005
15%
End of Exam
Fin de l’examen
8/8
Formules d’ordonancement | Scheduling Formulas
Utilisation | Usage
U = C/T
URM (n) = n(21/n
1)
Temps de réponse | Response Time
Ri = C i + Bi + I i
win+1 = Ci +
X
j2hp(i)
dRi /Tj eCj
où | where wi0 = Ci
Temps de blocage | Blocking Time
Bi =
K
X
u(k, i)CS(k)
k=1
K
Bi = max (u(k, i) · CS(k))
k=1
Formules pour la fiabilité | Reliability Formulas
Fiabilité | Reliability
t
= ⇢c
⌧
où ⇢c est l’utilisation moyenne.
where ⇢c is the average usage.
t
R(t) = e
=
1
M T BF
Fiabilité des systèmes en série | Reliability of Serial Systems
RSys =
n
Y
Ri
i=1
Fiabilité des systèmes en parallèle | Reliability of Parallel Systems
RSys = 1
n
Y
i=1
A-1
(1
Ri )
Fiabilité de k systèmes parmi n | Reliability of k Systems out of n
RSys =
n ✓ ◆
X
n
i=k
où | where
k
i
RC
(1
RC ) n
✓ ◆
n
n!
=
k
k!(n k)!
A-2
i
Name /
Nom : ______________________________________________________________________
B-1

Documents pareils