You are on page 1of 15

          Ασκήσεις Αρχιτεκτονικής Υπολογιστών, Δημήτρης Νικολός, Απρίλης 2011 
 
Άσκηση 4.

Στο σχήμα 4.1 δίνεται μια μονάδα επεξεργασίας δεδομένων σταθερής


υποδιαστολής που εκτελεί κάθε μια από τις κάτωθι εντολές σε όσους κύκλους
απαιτείται.

LOAD r1, d(r2) // r1Å M(r2+d)


STORE r1, (r2) // r1Æ M(r2)
ADD r1, r2, r3 // r1+ r2 Æ r3
SUB r1, r2, r3 // r1-r2 Ær3
AND r1, r2, r3 // r1∧r2 Æ r3
και
BRE r1, r2, d // εάν r1-r2=0 τότε ΜΠ=ΜΠ+d
Να υπολογίσετε την ελάχιστη περίοδο του σήματος χρονισμού, δηλαδή του
ρολογιού, λαμβάνοντας υπόψη τις καθυστερήσεις που δόθηκαν στην Άσκηση 3.

Σχήμα 4.1

 
2           Ασκήσεις Αρχιτεκτονικής Υπολογιστών, Δημήτρης Νικολός, Απρίλης 2011 
 
Λύση

Θα υπολογίσουμε το χρόνο που απαιτείται για να εκτελεστούν όλες οι λειτουργίες που


πρέπει να εκτελεστούν σε κάθε κύκλο ρολογιού κατά την εκτέλεση κάθε μίας από τις
εντολές που μελετάμε και θα πάρουμε ως περίοδο του κύκλου ρολογιού τον μέγιστο
i
χρόνο που θα υπολογίσουμε. Θα χρησιμοποιήσουμε το συμβολισμό Tεντολή για να
δηλώνουμε το χρόνο που απαιτείται για την ολοκλήρωση των λειτουργιών του i κύκλου
της εντολής «εντολή». Όπως έχουμε δει στην υποενότητα 3.3.2 του βιβλίου, για τη
μονάδα επεξεργασίας δεδομένων που μελετάμε, οι λειτουργίες που λαμβάνουν χώρα
στους δύο πρώτους κύκλους κατά την προσκόμιση και εκτέλεση μιας εντολής δεν
εξαρτώνται από την εντολή.

Για να υπολογίσουμε τον ελάχιστο χρόνο που απαιτείται για να ολοκληρωθούν όλες
οι ενέργειες που πρέπει να λάβουν χώρα σε ένα κύκλο ρολογιού κατά την εκτέλεση μιας
εντολής, θα πρέπει να βρούμε την ενέργεια που απαιτεί το μεγαλύτερο χρονικό διάστημα
σ’ αυτό τον κύκλο. Για την εκτέλεση μιας ενέργειας μπορεί να απαιτείται η ροή
περισσοτέρων του ενός σημάτων ελέγχου και περισσότερων της μιας μεταφορών
δεδομένων. Επομένως, για να βρούμε την ενέργεια η οποία απαιτεί το μεγαλύτερο
χρονικό διάστημα, πρέπει για κάθε ενέργεια να βρούμε το μονοπάτι διάδοσης σήματος
ελέγχου ή και δεδομένων που βάζει τη μεγαλύτερη καθυστέρηση. Για το σκοπό αυτό θα
υπολογίζουμε την καθυστέρηση όλων των δυνατών μονοπατιών που συμμετέχουν στην
εν λόγω ενέργεια. Η εύρεση όλων των δυνατών μονοπατιών που συμμετέχουν σε μία
συγκεκριμένη ενέργεια, γίνεται εύκολα εάν ξεκινάμε από το τέλος ενός μονοπατιού και
ακολουθούμε όλες τις δυνατές διαδρομές έως την πηγή του σήματος ελέγχου ή
δεδομένων. Για να διευκολυνθούμε στην ανεύρεση όλων των δυνατών μονοπατιών, σε
κάθε ένα από τα σχήματα που θα ακολουθήσουν δίνεται με πιο παχιές γραμμές η ροή των
δεδομένων (συνεχής γραμμή) και των σημάτων ελέγχου (διακεκομμένη γραμμή) που
συμμετέχουν στη διαδικασία που περιγράφεται στο συγκεκριμένο σχήμα.

Κατά τη διάρκεια του πρώτου κύκλου ρολογιού, κατά την εκτέλεση μιας εντολής,
λαμβάνουν χώρα δύο ανεξάρτητες ενέργειες:

1. Η ανάγνωση της κρυφής μνήμης εντολών και η αποθήκευση της εντολής που
διαβάστηκε στον καταχωρητή εντολών, ΚΕ.

2. Η αύξηση του περιεχομένου του ΜΠ κατά ένα.

 
3           Ασκήσεις Αρχιτεκτονικής Υπολογιστών, Δημήτρης Νικολός, Απρίλης 2011 
 
Στο σχήμα 4.2 δίνονται με παχύτερες γραμμές τα σήματα που συμμετέχουν στη
διαδικασία προσκόμισης εντολής και αποθήκευσής της στον καταχωρητή εντολών ΚΕ.
Στη συγκεκριμένη περίπτωση όλα τα μονοπάτια διάδοσης σημάτων τελειώνουν στον
καταχωρητή ΚΕ. Λαμβάνοντας υπ' όψη ότι ο χρόνος παραγωγής του σήματος ελέγχου
που οδηγεί την είσοδο εε του ΚΕ καθώς και ο χρόνος παραγωγής του σήματος δΜΕ
ισούται με τη μέγιστη καθυστέρηση της μονάδας ελέγχου και το γεγονός ότι κάθε σήμα
που οδηγεί ένα καταχωρητή θα πρέπει να παίρνει την τελική του τιμή νωρίτερα από την
αλλαγή του σήματος χρονισμού από 0 σε 1 κατά χρόνο μεγαλύτερο του χρόνου προ-
τοποθέτησης, λαμβάνουμε:

Σχήμα 4.2 Τ1(ανάγνωση κρυφής μνήμης εντολών και αποθήκευση στον ΚΕ)

Τ1(ανάγνωση κρυφής μνήμης εντολών και αποθήκευση στον ΚΕ) =

 
4           Ασκήσεις Αρχιτεκτονικής Υπολογιστών, Δημήτρης Νικολός, Απρίλης 2011 
 
= max{[tπ(ΚΕ) + tμκ(ΜΕλ.)], [tπ(ΚΕ) + tμκ(Κρυφ.ΜΕ) + tμκ(ΜΕλ.)],

[tπ(ΚΕ) + tμκ(Κρυφ.ΜΕ) + tμκ(ΜΠ)]}=

= max{[50 ps + 90 ps], [50 ps + 6 ns + 90 ps], [50 ps + 6 ns + 80 ps}=

= max{[140 ps], [6.140 ps], [6.130 ps}= 6.140 ps

Σχήμα 4.3 Τ1(ΜΠ=ΜΠ+1)

Στο σχήμα 4.3 δίνονται με παχύτερες γραμμές τα σήματα που συμμετέχουν στη
διαδικασία αύξησης του περιεχομένου του ΜΠ κατά ένα.

 
5           Ασκήσεις Αρχιτεκτονικής Υπολογιστών, Δημήτρης Νικολός, Απρίλης 2011 
 
1
Τ (ΜΠ=ΜΠ+1) =

= max{[ tπ(ΜΠ) + tμκ(OR) + tμκ(ΜΕλ.)],

[tπ(ΜΠ) + tμκ(ΠΓ) + tμκ(AND) + tμκ(ΜΕλ.)],

[tπ(ΜΠ) + tμκ(ΠΓ) +tμκ(ΑΛΜ)+tμκ(ΜΕλ.)],

[tπ(ΜΠ) + tμκ(ΠΓ) +tμκ(ΑΛΜ)+ tμκ(ΠΑ) +tμκ(ΜΕλ.)],

[tπ(ΜΠ) + tμκ(ΠΓ) +tμκ(ΑΛΜ)+ tμκ(ΠΑ) +tμκ(ΜΠ)],

[tπ(ΜΠ) + tμκ(ΠΓ) +tμκ(ΑΛΜ)+ tμκ(ΠΒ) +tμκ(ΜΕλ.)]}=

= max{[ 50 ps + 40 ps + 90 ps],

[50 ps + 80 ps + 40 ps + 90 ps],

[50 ps + 80 ps + 4 ns+ 90 ps],

[50 ps + 80 ps + 4 ns+ 80 ps + 90 ps],

[50 ps + 80 ps + 4 ns + 80 ps + 80 ps],

[50 ps + 80 ps + 4 ns + 90 ps + 90 ps]}=

= max{[ 180 ps], [260 ps], [4.220], [4.300 ps], [4.290 ps], [4.310 ps]}= 4.310 ps

 
Επομένως Τ1= 
 =max{Τ1(ανάγνωση κρυφής μνήμης εντολών και αποθήκευση στον ΚΕ),

Τ1(ΜΠ=ΜΠ+1)} = max{6.140 ps, 4.310 ps} = 6.140 ps.  

 
6           Ασκήσεις Αρχιτεκτονικής Υπολογιστών, Δημήτρης Νικολός, Απρίλης 2011 
 

Σχήμα 4.4 Τ2 (ανάγνωση των καταχωρητών γενικού σκοπού) 

Κατά  τη  διάρκεια  του  δεύτερου  κύκλου  ρολογιού,  κατά  την  εκτέλεση  μιας  εντολής, 
λαμβάνουν χώρα δύο ανεξάρτητες ενέργειες: 

1. Ανάγνωση των καταχωρητών γενικού σκοπού. 
2. Υπολογισμός του ΜΠ+d  
Στο  σχήμα  4.4  δίνονται  με  παχύτερες  γραμμές  τα  σήματα  που  συμμετέχουν  στη 
διαδικασία ανάγνωσης των καταχωρητών γενικού σκοπού. 
Τ2 (ανάγνωση των καταχωρητών γενικού σκοπού) = tμκ(Καταχ.) + tμκ(ΚΕ) =

= 1 ns + 80 ps = 1080 ps

Στο  σχήμα  4.5  δίνονται  με  παχύτερες  γραμμές  τα  σήματα  που  συμμετέχουν  στη 
διαδικασία υπολογισμού του ΜΠ+d. 

 
7           Ασκήσεις Αρχιτεκτονικής Υπολογιστών, Δημήτρης Νικολός, Απρίλης 2011 
 

Σχήμα 4.5 Τ2(υπολογισμός ΜΠ+d)

Τ2(υπολογισμός ΜΠ+d) =

= max{[ tπ(κΑΛΜ) + tμκ(ΑΛΜ) + tμκ(ΜΕλ.)],

[ tπ(κΑΛΜ) + tμκ(ΑΛΜ) + tμκ(ΠΑ) + tμκ(ΜΕλ.)],

[ tπ(κΑΛΜ) + tμκ(ΑΛΜ) + tμκ(ΠΑ) + tμκ(ΜΠ)],

[ tπ(κΑΛΜ) + tμκ(ΑΛΜ) + tμκ(ΠΒ) + tμκ(ΜΕλ.)],

[tπ(κΑΛΜ) + tμκ(ΑΛΜ) + tμκ(ΠΒ) + tμκ(Επ.Π) + tμκ(ΚΕ)]} =

= max{[ 50 ps + 4 ns + 90 ps],

[50 ps + 4 ns + 90 ps + 90 ps],

[50 ps + 4 ns + 90 ps + 80 ps],

 
8           Ασκήσεις Αρχιτεκτονικής Υπολογιστών, Δημήτρης Νικολός, Απρίλης 2011 
 
[50 ps + 4 ns + 90 ps + 90 ps],

[50 ps + 4 ns + 90 ps + 4 ps + 80 ps]} =

= max{[ 4.140 ps], [4.230 ps], [4.220 ps], [4.230 ps], [4.224 ps]} = 4.230 ps

Επομένως Τ2= 
 =max{Τ2(ανάγνωση  των  καταχωρητών  γενικού  σκοπού), Τ2(υπολογισμός ΜΠ+d)}
=max{1080 ps, 4.230 ps} = 4.230 ps 

Για τον τρίτο κύκλο πρέπει να εξετάσουμε κάθε εντολή ξεχωριστά.

Εντολή BRE r1, r2, d

Μεγαλύτερος χρόνος απαιτείται όταν η εντολή εκτελείται, δηλαδή, όταν o ΜΠ πρέπει να


πάρει την τιμή ΜΠ+d (σχήμα 4.6). Επομένως θα εξετάσουμε μόνο αυτή την περίπτωση.

Τ3BRE =

= max{[ tπ(ΜΠ) + tμκ(OR) + tμκ(AND) + tμκ(ΜΕλ.)],

[tπ(ΜΠ) + tμκ(OR) + tμκ(AND) + tμκ(αποτέλεσμα 0) + tμκ(ΜΕλ.)],

[tπ(ΜΠ) + tμκ(OR) + tμκ(AND) + tμκ(αποτέλεσμα 0) + tμκ(ΠΑ) + tμκ(ΜΕλ.)],

[tπ(ΜΠ) + tμκ(OR) + tμκ(AND) + tμκ(αποτέλεσμα 0) + tμκ(ΠΒ) + tμκ(ΜΕλ.)],

[tπ(ΜΠ) + tμκ(ΠΓ) + tμκ(AND) + tμκ(ΜΕλ.)],

[tπ(ΜΠ) + tμκ(ΠΓ) + tμκ(κΑΛΜ)]}=

= max{[50 ps + 40 ps + 40 ps + 90 ps],

[50 ps + 40 ps + 40 ps + 4.040 ps + 90 ps],

 
9           Ασκήσεις Αρχιτεκτονικής Υπολογιστών, Δημήτρης Νικολός, Απρίλης 2011 
 

Σχήμα 4.6 Τ3BRE

[50 ps + 40 ps + 40 ps + 4.040 ps + 90 ps + 90 ps],

[50 ps + 40 ps + 40 ps + 4.040 ps + 90 ps + 90 ps],

[50 ps + 80 ps + 40 ps + 90 ps],

[50 ps + 80 ps + 80 ps]}=

= max{[220 ps], [4.260], [4.350 ps], [4.350 ps], [260 ps], [210 ps]}= 4.350 ps

 
 

 
10           Ασκήσεις Αρχιτεκτονικής Υπολογιστών, Δημήτρης Νικολός, Απρίλης 2011 
 

Σχήμα 4.7 Τ3LOAD


Εντολή LOAD r1, (r2), τρίτος κύκλος  
 
Τ3LOAD = max{ [tμκ(Κρυφ.ΜΔ) + tμκ(ΜΕλ.)],

[tμκ(Κρυφ.ΜΔ) + tμκ(ΠΖ) + tμκ(ΜΕλ.)],

[tμκ(Κρυφ.ΜΔ) + tμκ(ΠΖ)]} =

= max{[6 ns + 90 ps], [6 ns + 80 ps + 90 ps], [6 ns + 80 ps]} = 6.170 ps

10 

 
11           Ασκήσεις Αρχιτεκτονικής Υπολογιστών, Δημήτρης Νικολός, Απρίλης 2011 
 

Σχήμα 4.8 Τ4LOAD

Τ4LOAD =

= max{[ tπ(Καταχ.) + tμκ(ΠΕ)],

[tπ(Καταχ.) + tμκ(ΠΕ) + tμκ(ΜΕλ.)],

[tπ(Καταχ.) + tμκ(ΜΕλ.)],

[tπ(Καταχ.) + tμκ(ΠΔ) + tμκ(ΜΕλ.)] =

= max{[50 ps + 80 ps],

[50 ps + 80 ps + 90 ps],

[50 ps + 90 ps],

[50 ps + 80 ps + 90 ps] =

= max{[130 ps], [220 ps], [140 ps], [220 ps]}= 220 ps

11 

 
12           Ασκήσεις Αρχιτεκτονικής Υπολογιστών, Δημήτρης Νικολός, Απρίλης 2011 
 

Σχήμα 4.9 Τ3STORE

 
Εντολή STORE r1, (r2), τρίτος κύκλος  
Τ3STORE = max{[tμκ(Κρυφ.ΜΔ)] + tμκ(ΜΕλ.)],

[tμκ(Κρυφ.ΜΔ)] + tμκ(ΠΖ) + tμκ(ΜΕλ.)]}=

= max{[6 ns + 90 ps], [6 ns + 80 ps +90 ps]} =

= max{6.090 ps, 6.170 ps}= 6.170 ps

12 

 
13           Ασκήσεις Αρχιτεκτονικής Υπολογιστών, Δημήτρης Νικολός, Απρίλης 2011 
 

Σχήμα 4.10 Τ3ADD

Εντολή ADD, SUB ή AND, τρίτος κύκλος


Τ3ADD =

= max{[tπ(κΑΛΜ) + tμκ(ΑΛΜ) + tμκ(ΜΕλ.)],

[tπ(κΑΛΜ) + tμκ(ΑΛΜ) + tμκ(ΠΑ) + tμκ(ΜΕλ.)],

[tπ(κΑΛΜ) + tμκ(ΑΛΜ) + tμκ(ΠΒ) + tμκ(ΜΕλ.)] = 


= max{[50 ps + 4 ns + 90 ps],

[50 ps + 4 ns + 90 ps + 90 ps],

[50 ps + 4 ns + 90 ps + 90 ps] = 
= max{[4.140 ps], [4.230 ps], [4.230 ps] = 4.230 ps 

13 

 
14           Ασκήσεις Αρχιτεκτονικής Υπολογιστών, Δημήτρης Νικολός, Απρίλης 2011 
 
Εντολή ADD, SUB ή AND, τέταρτος κύκλος

 
Σχήμα 4.11   Τ4ADD 
 
Τ4ADD = max{[ tπ(Καταχ.) + tμκ(ΠΕ)],

[tπ(Καταχ.) + tμκ(ΠΕ) + tμκ(ΜΕλ.)],

[tπ(Καταχ.) + tμκ(ΜΕλ.)],

[tπ(Καταχ.) + tμκ(ΠΔ) + tμκ(ΜΕλ.)],

[tπ(Καταχ.) + tμκ(ΠΔ) + tμκ(κΑΛΜ)]}=

= max{[50 ps + 80 ps],

[50 ps + 80 ps + 90 ps],

[50 ps + 90 ps],
14 

 
15           Ασκήσεις Αρχιτεκτονικής Υπολογιστών, Δημήτρης Νικολός, Απρίλης 2011 
 
[50 ps + 80 ps + 90 ps],

[50 ps + 80 ps + 80 ps]}=

= max{[130 ps], [220 ps], [140 ps], [220 ps], [210 ps]} = 220 ps

Στον επόμενο Πίνακα 4.1 δίνεται η ελάχιστη διάρκεια που πρέπει να έχει κάθε κύκλος
ανάλογα με την εντολή που εκτελείται για να προλαβαίνουν να εκτελεστούν όλες οι
απαιτούμενες λειτουργίες. Η μέγιστη τιμή που εμφανίζεται στον Πίνακα 4.1 καθορίζει
την ελάχιστη περίοδο του σήματος χρονισμού (ρολόι). Επομένως η περίοδος του
σήματος χρονισμού πρέπει να είναι μεγαλύτερη ή ίση του Τ=6.170 ps.

Πίνακας 4.1
κύκλος ADD, SUB ή
LOAD STORE BRE
AND
T1 6.140 ps 6.140 ps 6.140 ps 6.140 ps
T2 4.230 ps 4.230 ps 4.230 ps 4.230 ps
T3 6.170 ps 6.170 ps 4.230 ps 4.350 ps
T4 220 ps - 220 ps -

Ποιο άλλο συμπέρασμα βγάζετε από τον Πίνακα 4.1;

15 

You might also like