Αρχιτεκτονική Υπολογιστών

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Αρχιτεκτονική Υπολογιστών"

Transcript

1 Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 14: Σχεδιασμός μιας απλής CPU Δρ. Μηνάς Δασυγένης Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

2 Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύπου άδειας χρήσης, η άδεια χρήσης αναφέρεται ρητώς. 2

3 Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ψηφιακά Μαθήματα στο Πανεπιστήμιο Δυτικής Μακεδονίας» έχει χρηματοδοτήσει μόνο τη αναδιαμόρφωση του εκπαιδευτικού υλικού. Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους. 3

4 Σκοπός ενότητας Η αναλυτική παρουσίαση των βημάτων σχεδίασης μιας κεντρικής μονάδας επεξεργασίας. Η παρουσίαση των βελτιστοποιήσεων και η δικαιολόγηση των σχεδιαστικών αποφάσεων, κατά το σχεδιασμό της CPU. 4

5 Βασικές Λειτουργικές Μονάδες CPU Αριθμητική Λογική Μονάδα (Arithmetical Logical Unit, ALU). Μονάδα Ελέγχου (Control unit, CU). Συστοιχία Καταχωρητών (register file). 5

6 Λειτουργία CPU Μεταφορά εντολής στον επεξεργαστή (fetch). Αποκωδικοποίηση εντολής (decode). Εκτέλεση Εντολής (execute). Αποθήκευση αποτελεσμάτων (store). 6

7 Σχεδιασμός CPU Αναλύονται οι εφαρμογές που θα εκτελεστούν στη CPU (απλές, σύνθετες, ακέραιες τιμές, πραγματικές, κτλ). Αποφασίζονται οι εντολές που θα υποστηριχθούν (ISA). Αποφασίζονται οι ορατοί και οι κρυφοί καταχωρητές της αρχιτεκτονικής. Κατασκευάζεται το διάγραμμα καταστάσεων για κάθε εντολή της ISA, καθώς και τις μικρο-λειτουργίες που πρέπει να γίνονται σε κάθε στάδιο για κάθε συγκεκριμένη εντολή. Καθορίζονται οι εσωτερικοί δίαυλοι και τα σήματα ελέγχου. Όταν έχουν οριστεί όλα τα παραπάνω, σχεδιάζεται η μονάδα ελέγχου. 7

8 Καθορισμός της CPU Θα παρουσιάσουμε το σχεδιασμό μιας πολύ απλής CPU, π.χ. για τον έλεγχο ενός πλυντηρίου. Ονομάζεται Very Simple CPU (VSC), και δεν αντιστοιχεί σε πραγματικό επεξεργαστή. Αποφασίζεται ότι θα σχεδιαστεί ένας επεξεργαστής 4bit, επειδή καλύπτει τις επεξεργαστικές απαιτήσεις μας. Στη συνέχεια θα: Καθορίσουμε τις εντολές που θα υποστηρίζονται. Καθορίζεται το διάγραμμα καταστάσεων, δηλαδή οι μικρο-λειτουργίες που απαιτούνται για τη μεταγωγή από τη μια κατάσταση στην άλλη, για κάθε εντολή. 8

9 Γενικό Διάγραμμα Καταστάσεων Διακρίνονται: Fetch Decode execute Στο σχήμα, το decode δεν έχει κάποιο στάδιο, επειδή η λειτουργία είναι οι πολλαπλές ροές εκτέλεσης μετά το στάδιο fetch, κατά το στάδιο execute. 9

10 Καθορισμός προδιαγραφών Διευθυνσιοδότηση 64 Bytes μνήμης. Κάθε Byte είναι 8 bit. Ο δίαυλος διευθύνσεων είναι 6 bit ( ). Οι διευθύνσεις τοποθετούνται στα pin A[5..0]. O δίαυλος δεδομένων είναι 8 bit (pin D[7..0]). Υπάρχει μόνο ένας καταχωρητής 8 bit που ονομάζεται AC (accumulator). Ο επεξεργαστής υποστηρίζει μόνο 4 εντολές (επόμενη διαφάνεια). 10

11 Οι εντολές του VSC Εντολή Κώδικας Μηχανής Λειτουργία ADD 00AAAAAA AC <- AC + M[AAAAAA] AND 01AAAAAA AC <- AC ^ M[AAAAAA] JMP 10AAAAAA GOTO AAAAAA INC 11XXXXXX AC <- AC + 1 Οι 4 εντολές είναι για πρόσθεση, λογική πράξη KAI, αλλαγή ροής εκτέλεσης, και αύξησης κατά 1. Στον κώδικα μηχανής, χρησιμοποιούνται τα 2 πρώτα MSB για να κωδικοποιήσουν τις 4 αυτές λειτουργίες, ενώ τα υπόλοιπα 6 bit του κώδικα μηχανής, χρησιμοποιούνται για την παράμετρο της εντολής. Στη στήλη λειτουργία, αναλύεται η εντολή. 11

12 Επιπρόσθετοι Καταχωρητές Εκτός από τον καταχωρητή AC που είναι ορατός στο χρήστη, υπάρχουν και άλλοι καταχωρητές που χρησιμοποιούνται σε κάθε CPU για την ομαλή λειτουργία: Καταχωρητής διευθύνσεων (address register, AR), που παρέχει μια διεύθυνση στη μνήμη. Στο παράδειγμά μας είναι 6 bit, λόγω του μεγέθους της μνήμης. Καταχωρητής προγράμματος (program counter, PC), που περιέχει τη διεύθυνση της επόμενης εντολής προς εκτέλεση. Καταχωρητής δεδομένων (data register, DR), που λαμβάνει τις εντολές και τα δεδομένα από τη μνήμη D[7..0]. Καταχωρητής εντολών (instruction register, IR), που αποθηκεύει το τμήμα op-code της εντολής (τα 2 πρώτα MSB). 12

13 Στάδιο μεταφοράς εντολής από τη μνήμη 1 Πριν την εκτέλεση της εντολής, πρέπει να μεταφερθεί αυτή από τη μνήμη στον επεξεργαστή. Βήματα: Αποστολή της διεύθυνσης μέσω των pin A[5..0]. Μετά από συγκεκριμένους κύκλους που απαιτούνται ώστε η μνήμη να βρει το συγκεκριμένο κελί, αποστολή κατάλληλου σήματος για μεταφορά των 8βιτ δεδομένων στο CPU, μέσω D[7..0]. H διεύθυνση της εντολής αποθηκεύεται στο μετρητή προγράμματος. Οπότε, το πρώτο βήμα είναι να γίνει η μεταφορά από το PC στο AR: FETCH1: AR <- PC 13

14 Στάδιο μεταφοράς εντολής από τη μνήμη 2 Στη συνέχεια, η CPU διαβάσει τα δεδομένα. Για να γίνει αυτό, θα πρέπει να στείλει ένα σήμα READ (ανάγνωσης), ώστε η μνήμη να τοποθετήσει τα δεδομένα στο δίαυλο (D[7..0]). Ταυτόχρονα, η CPU πρέπει να διαβάσει τα δεδομένα και να τα τοποθετήσει στο DR, που είναι ο καταχωρητής πρόσβασης στη μνήμη. Επίσης, σε αυτό το στάδιο γίνεται η αύξηση του μετρητής προγράμματος κατά 1. Αυτές οι λειτουργίες γίνονται στην κατάσταση FETCH2, επειδή η μνήμη καθυστερεί στην πρόσβαση. FETCH2: DR <- M, PC <-PC

15 Στάδιο μεταφοράς εντολής από τη μνήμη 3 Αφού μεταφερθούν τα 8bit δεδομένα στο DR, στο στάδιο FETCH ο επεξεργαστής θα κάνει κάτι ακόμη: Θα μεταφέρει τα 2 MSB που υποδηλώνουν τη λειτουργία στο IR. Θα μεταφέρει τα 6 LSB που υποδηλώνουν την παράμετρο στο AR (αν και δε χρησιμοποιούν όλες οι εντολές το AR). FETCH3: IR <- DR[7..6], AR <- DR[5..0] Κατά τη σχεδίαση ενός επεξεργαστή, είναι προτιμότερο να τοποθετείται μια λειτουργία όσο πιο νωρίς γίνεται. Για παράδειγμα, η αύξηση του IR γίνεται στο FETCH2 (θα μπορούσε να γίνεται στο EXECUTE), ενώ η μεταφορά στο AR γίνεται στο FETCH3 (θα μπορούσε να γίνεται στο EXECUTE). Επίσης, το στάδιο EXECUTE είναι πολύ πολύπλοκο και η μεταφορά λειτουργιών σε άλλα στάδια είναι προτιμητέα. 15

16 FETCH1: AR <-PC Στάδιο μεταφοράς εντολής Διάγραμμα Καταστάσεων FETCH2: DR <-M, PC <- PC + 1 FETCH3: IR <- DR[7..6], AR <- DR[5..0] 16

17 Αποκωδικοποίηση εντολής Το επόμενο στάδιο είναι η αποκωδικοποίηση. Απαιτείται να προσδιοριστεί ποια λειτουργία θα εκτελεστεί, προκειμένου να δημιουργηθούν τα κατάλληλα σήματα ελέγχου. Στο VSC υπάρχουν μόνο 4 εντολές, οπότε 4 είναι τα πιθανά μονοπάτια. Για την εύρεση του μονοπατιού χρησιμοποιείται το IR, που κωδικοποιεί τις 4 εντολές (00 11). Το διάγραμμα καταστάσεων για την αποκωδικοποίηση εμφανίζεται στην επόμενη διαφάνεια. 17

18 Αποκωδικοποίηση εντολής Διάγραμμα Καταστάσεων 18

19 Εκτέλεση Εντολής Το επόμενο στάδιο είναι η εκτέλεση της εντολής. Κάθε μονοπάτι, έχει τα δικά του σήματα ελέγχου. 19

20 Εκτέλεση Εντολής - ADD Η εντολή ADD, απαιτεί: Τη μεταφορά της 2ης παραμέτρου από τη μνήμη. Απαιτείται η διεύθυνση να τοποθετηθεί στο A[5..0] μέσω του AR (αυτό έχει γίνει προηγουμένως στο FETCH3). Απαιτείται η μεταφορά των δεδομένων από τη μνήμη στον επεξεργαστή: ADD1: DR <- M Την εκτέλεση της άθροισης της τιμής του AC και της τιμής που μόλις ήρθε από τη μνήμη. Την αποθήκευση του αποτελέσματος στο AC. ADD2: AC <- AC + DR 20

21 Εκτέλεση Εντολής - AND Η εντολή AΝD, απαιτεί: Τη μεταφορά της 2ης παραμέτρου από τη μνήμη. Απαιτείται η διεύθυνση να τοποθετηθεί στο A[5..0] μέσω του AR (αυτό έχει γίνει προηγουμένως στο FETCH3). Απαιτείται η μεταφορά των δεδομένων από τη μνήμη στον επεξεργαστή: AΝD1: DR <- M Την εκτέλεση της λογικής πράξης AND του AC και της τιμής που μόλις ήρθε από τη μνήμη. Την αποθήκευση του αποτελέσματος στο AC. AΝD2: AC <- AC ^ DR 21

22 Εκτέλεση Εντολής - JMP Η εντολή JMP, απαιτεί: Τη μεταφορά της παραμέτρου, που ήδη έχει αποθηκευτεί στο DR[5..0] στο PC: JMP1: PC <- DR[5..0] Εναλλακτικά, η μεταφορά μπορεί να γίνει από τον AR, στον οποίο έχουμε αποθηκεύσει την παράμετρο στο FETCH. 22

23 Εκτέλεση Εντολής - INC Η εντολή INC, απαιτεί: Την προσθήκη 1 στο AC. Τη μεταφορά του αποτελέσματος στο AC. INC1: AC <-AC

24 Καθορισμός διαύλων & διάγραμμα καταστάσεων Το επόμενο βήμα, είναι να καθοριστούν οι δίαυλοι του επεξεργαστή. Κοιτάμε όλες τις μικρολειτουργίες που συμβαίνουν σε όλες τις εντολές, ώστε να καθορίσουμε τι στοιχεία μετακινούνται προς ποια κατεύθυνση. 24

25 Επιλογή αποκλειστικών διαύλων 1-προς-1 ή κοινής χρήσης Τα pin της διεύθυνσης A[5..0] δέχονται δεδομένα από τον καταχωρητή διευθύνσεων AR, οπότε τα συνδέει ένα μονοπάτι. Η μνήμη παρέχει τα δεδομένα μέσω των pin D[7..0], οπότε από αυτά θα ξεκινάνε ένα ή περισσότερα μονοπάτια. Μπορεί να χρησιμοποιηθούν δίαυλοι 1-προς-1, ή ένας μεγάλος κοινός δίαυλος με πολυπλέκτες, απομονωτές και στοιχεία 3 καταστάσεων, ώστε καταχωρητές να δέχονται είσοδο από πολλές πηγές. Η λύση που επιλέγεται είναι ένας κοινός δίαυλος, λόγω χαμηλότερου κόστους. 25

26 Καθορισμός των λειτουργιών Οι λειτουργίες συνοπτικά: FETCH1: AR <-PC FETCH2: DR <- M, PC <- PC + 1 FETCH3: IR <- DR[7..6], AR <- DR[5..0] ADD1: DR <- M ADD2: AC <- AC + DR AND1: DR <- M AND2: AC <- AC ^ DR JMP1: PC <- DR[5..0] INC1: AC <- AC + 1 Το επόμενο βήμα είναι η προσεχτική μελέτη κάθε μικρολειτουργίας, για να βρεθούν οι λειτουργίες που συμβαίνουν σε κάθε συστατικό (π.χ. σε κάθε καταχωρητή). 26

27 Δημιουργία διαύλων Αναδιάταξη των λειτουργιών, και τακτοποίηση ως προς το πρώτο συστατικό: AR: AR <- PC; AR <- DR[5..0] PC: PC <- PC + 1; PC <- DR[5..0] DR: DR <- M IR: IR <- DR[7..6] AC: AC <- AC + DR; AC <- AC ^ DR; AC <- AC + 1 Τα AR, DR, IR πάντα φορτώνουν δεδομένα από κάποιο άλλο στοιχείο από το δίαυλο, οπότε απαιτείται η δυνατότητα παράλληλης φόρτωσης (parallel load). Τα PC,AC φορτώνουν τιμές από εξωτερικά στοιχεία, αλλά απαιτείται και η αύξηση της τιμής τους (θα μπορούσε να τοποθετηθεί ειδικό υλικό, αλλά θα χρησιμοποιήσουμε καταχωρητές παράλληλης φόρτωσης). Συνδέουμε όλα τα στοιχεία στο δίαυλο του συστήματος. 27

28 Πρώτη έκδοση του αρχείου Παρατηρήσεις: Το AR παρέχει πάντα πληροφορίες για τη μνήμη. Δε χρειάζεται να είναι συνδεδεμένος στο δίαυλο. Το IR παρέχει μόνο πληροφορίες για τη μονάδα ελέγχου, οπότε δε χρειάζεται να συνδέεται με άλλα στοιχεία. Το AC δεν παρέχει δεδομένα στα υπόλοιπα στοιχεία, μπορεί να απομακρυνθεί η σύνδεση. Ο δίαυλος είναι 8bit, αλλά δεν είναι όλες οι μεταφορές 8bit. Πρέπει να οριστούν ποια bit χρησιμοποιούνται. (π.χ. AR, PC bus bits[5..0], IR bus bits [7..6]. Πρέπει να υπάρχει μια ALU με τις πράξεις ADD,AND καταχωρητών 28

29 Προσθήκη ALU Απαιτούνται οι πράξεις: ADD και η AND. H ALU θα μπορεί να δέχεται ως είσοδο το AC και το DR και θα στέλνει την έξοδο στο AC. Η πιο εύκολη λύση είναι το AC να είναι μόνιμα συνδεδεμένο σε δυο σημεία: στην 1η είσοδο της ALU, και στην έξοδο της ALU. 29

30 Έλεγχος παράλληλης εκτέλεσης Πρέπει να διασφαλιστεί ότι οι λειτουργίες που συμβαίνουν στο ίδιο στάδιο, μπορούν να συμβούν παράλληλα (δηλαδή, υπάρχουν αρκετοί πόροι για να καλύψουν τις λειτουργίες). Π.χ. αν στο ίδιο στάδιο χρησιμοποιείται ταυτόχρονα ο δίαυλος, τότε υπάρχει πρόβλημα (μόνο μια μεταφορά επιτρέπεται, αφού είναι κοινός ο δίαυλος). Για αυτό το λόγο η αύξηση του PC γίνεται καλύτερα με ειδικό υλικό μετρητή, χωρίς να χρησιμοποιείται ο δίαυλος. Εφόσον, σε κάθε στάδιο υπάρχει μόνο μια μεταφορά με δίαυλο, δεν υπάρχει πρόβλημα. 30

31 Δεύτερη έκδοση του αρχείου καταχωρητών Αλλαγές: AR AC IR προσθήκη ALU 31

32 Σχεδιασμός της ALU H ALU εκτελεί μόνο 2 λειτουργίες (AND και ADD). O πιο εύκολος τρόπος σχεδιασμού είναι να σχεδιαστεί με ξεχωριστό υλικό για κάθε λειτουργία και στη συνέχεια να συνδεθεί με ένα πολυπλέκτη για να επιλεχθεί είτε το πρώτο είτε το δεύτερο αποτέλεσμα. Η πρόσθεση γίνεται με ένα τυπικό αθροιστή 8bit ριπής (ripple carry adder). H πράξη ΚΑΙ γίνεται με 8 πύλες AND. Χρησιμοποιείται ένας πολυπλέκτης 8bit 2 σε 1. Η είσοδος επιλογής ονομάζεται S (από το Select). 32

33 Διάγραμμα της ALU 33

34 Σχεδιασμός της μονάδας ελέγχου: Καλωδιωμένη Λογική Το επόμενο βήμα είναι ο σχεδιασμός του κυκλώματος, που θα δημιουργεί όλα τα σήματα ελέγχου προκειμένου όλες οι λειτουργίες να συμβούν με την κατάλληλη ακολουθία. Το κύκλωμα αυτό ονομάζεται Μονάδα Ελέγχου. Υπάρχουν 2 μεθοδολογίες σχεδιασμού της μονάδας ελέγχου: Καλωδιωμένη (hardwired) μεθοδολογία. Μικρο-προγραμματισμένη (microsequenced) μεθοδολογία. Επιλέγεται η καλωδιωμένη μεθοδολογία, γιατί δεν έχουμε πολύπλοκες απαιτήσεις από τη CU. 34

35 Καλωδιωμένη Μονάδα Ελέγχου Η πιο απλή καλωδιωμένη μονάδα ελέγχου αποτελείται από: Μετρητή, που φέρει την τρέχουσα κατάσταση. Αποκωδικοποιητή, που δημιουργεί τα κατάλληλα σήματα κατάστασης, αναλόγως της τιμής του μετρητή. Συνδυαστική λογική, που λαμβάνει τα σήματα κατάστασης και δημιουργεί τα σήματα ελέγχου για κάθε συστατικό, όπως και το κατάλληλο σήμα προς το μετρητή. Με αυτά τα σήματα, υλοποιείται το διάγραμμα καταστάσεων και η σωστή μετάβαση από τη μια κατάσταση στην επόμενη. 35

36 Καλωδιωμένη Μονάδα Ελέγχου: Γενικό Κύκλωμα 36

37 Σήματα μονάδας ελέγχου - 1 Υπάρχουν 9 καταστάσεις Απαιτείται μετρητής καταστάσεων 4bit, Οπότε, και ένας αποκωδικοποιητής 4 σε 16bit, από τις οποίες θα χρησιμοποιηθούν μόνο οι 9 έξοδοι (7 έξοδοι του αποκωδικοποιητή δε θα χρησιμοποιηθούν). Γενικές Οδηγίες: Η κατάσταση FETCH1 θα τοποθετηθεί στη τιμή 0 του μετρητή. Με το CLR θα μηδενίζεται ο μετρητής. Η κατάσταση FETCH1 μπορεί να συμβεί από 4 άλλες καταστάσεις (σε αντίθεση με τις επόμενες καταστάσεις που συμβαίνουν μόνο μετά από μια κατάσταση). Με το σήμα CLR λοιπόν εύκολα από τις 4 καταστάσεις θα καταλήγουμε στη FETCH1. 37

38 Σήματα μονάδας ελέγχου - 2 Οι καταστάσεις που ακολουθεί η μια την άλλη, θα έχουν διαδοχικές τιμές, προκειμένου να χρειάζεται μια απλή λειτουργία αύξησης του μετρητή κατά 1 για να διέλθει από όλες αυτές το CU. Παράδειγμα: FETCH3, FETCH2, FETCH1 συνεχόμενες τιμές μετρητή. ADD1, ADD2 συνεχόμενες τιμές μετρητή. AND1, AND2 συνεχόμενες τιμές μετρητή. 38

39 Σήματα μονάδας ελέγχου - 3 Με βάση το opcode της εντολής και το μέγιστο πλήθος μικρο-λειτουργιών, να τοποθετηθεί η πρώτη μικρολειτουργία ενός σταδίου, να γίνει εκχώρηση των τιμών του μετρητή. Τα opcodes θα είναι είσοδοι στο μετρητή και στην είσοδο LD (load). Με αυτόν τον τρόπο γίνεται μια ευθεία λειτουργία αποκωδικοποίησης (δε χρειάζεται άλλο ειδικό κύκλωμα). Αυτό θα πρέπει να γίνει στο τελευταίο στάδιο της κατάστασης FETCH, προκειμένου να συνεχίσει ο επεξεργαστής προς την αποκωδικοποίηση και εκτέλεση. 39

40 Αντιστοίχηση Διευθύνσεων στο μετρητή σε μικρολειτουργίες 1 Απαιτείται η αντιστοίχηση κάθε τιμής του μετρητή σε μια μικρολειτουργία (αρκετά δύσκολο). Ως προς την υλοποίηση, θα πρέπει να φορτωθεί η τιμή στο μετρητή με: Τοποθέτηση της τιμής στην παράλληλη είσοδο του μετρητή. Ανύψωση του σήματος LD, για παράλληλη φόρτωση (εύκολο να υλοποιηθεί, αφού θα συμβαίνει αυτόματα κάθε φορά στο τελευταίο στάδιο του FETCH, δηλαδή στο FETCH3). 40

41 Αντιστοίχηση Διευθύνσεων στο μετρητή σε μικρολειτουργίες 2 Ο μετρητής είναι 4bit Το πρώτο βήμα είναι: Να καταγραφούν οι εντολές. Η πρώτη κατάσταση της εντολής. Το machine code για αυτή την εντολή. ΣΚΟΠΟΣ: Να χρησιμοποιήσουμε τα IR αυτούσια στην τιμή του μετρητή. π.χ. μπορούμε να έχουμε τα 2 bit 10 και μετά τα 2 bit του IR (δεν είναι καλή κωδικοποίηση). 41

42 Αντιστοίχηση Διευθύνσεων στο μετρητή σε μικρολειτουργίες 3 Χρησιμοποιώντας αυτή την κωδικοποίηση, παρουσιάζεται το πρόβλημα ότι δε μπορούμε να εκμεταλλευτούμε την οδηγία όλες οι μικρολειτουργίες του ίδιου σταδίου να έχουν συνεχόμενες τιμές. ΔΕΝ είναι αποδεκτή κωδικοποίηση. 42

43 Αντιστοίχηση Διευθύνσεων στο μετρητή σε μικρολειτουργίες 4 Παρατηρούμε ότι ο μέγιστος αριθμός σταδίων σε όλες τις εντολές είναι 2. Δηλαδή, αρκεί να βρούμε μια κωδικοποίηση που επιτρέπει να έχουμε τουλάχιστον 2 θέσεις κενές. Αυτή είναι η: 1 IR[1..0] 0, δηλαδή, το πρώτο bit 1, ακολουθούν τα 2 bit του IR, και τέλος το bit 0. Ως εκ τούτου έχουμε τις αντιστοιχήσεις: ADD1 (00) => 1000 (=8) AND1 (01) => 1010 (=10) JMP1 (10) => 1100 (=12) INC1 (11) => 1110 (=14) 43

44 Αντιστοίχηση Διευθύνσεων στο μετρητή σε μικρολειτουργίες 5 Από τη στιγμή που έχουμε καθορίσει τις αντιστοιχήσεις διευθύνσεων, μπορούμε να δημιουργήσουμε τα κατάλληλα σήματα ελέγχου. Τα σήματα ελέγχου για το μετρητή (μόνο) είναι: INC (αύξησης κατά 1), Χρησιμοποιείται στις συνεχόμενες καταστάσεις (δηλαδή, ακολουθεί στάδιο της ίδιας κατάστασης). Δηλαδή: FETCH1,FETCH2,ADD1,AND1. CLR (καθαρισμού), Χρησιμοποιείται στο τέλος της κατάστασης εκτέλεσης, για να μηδενιστεί ο μετρητής, και να αρχίσει πάλι από το στάδιο FETCH1. Δηλαδή: ADD2, AND2, JMP1, INC1 LD (φόρτωσης), Χρησιμοποιείται για τη φόρτωση τιμής στο μετρητή, στο τέλος του FETCH. Δηλαδή: FETCH3. 44

45 Μονάδα ελέγχου με καλωδιωμένη λογική 45

46 Υπόλοιπα σήματα ελέγχου (καταχωρητές) 1 Εκτός από τα σήματα ελέγχου του μετρητή, απαιτούνται και σήματα ελέγχου για τις υπόλοιπες μονάδες (AR,PC,DR,IR,M,ALU,buffers). Τα σήματα αυτά προκύπτουν με συνδυασμό καταστάσεων του μετρητή. Παράδειγμα AR ( AR: AR <- PC; AR <- DR[5..0] ). Χρησιμοποιείται στις καταστάσεις FETCH1 και FETCH3. Αρκεί να γίνει η πράξη OR ανάμεσα στις καταστάσεις FETCH1 (έξοδος αποκωδικοποιητή 0) και FETCH3 (έξοδος αποκωδικοποιητή 2) για να δημιουργηθεί το σήμα ARLOAD για τη φόρτωση του AR με δεδομένα. Ασφαλώς, με άλλα σήματα θα φροντίσουμε τα δεδομένα που θα φορτωθούν να είναι αυτά που πρέπει (είτε το PC, είτε το DR[5..0]). 46

47 Υπόλοιπα σήματα ελέγχου (καταχωρητές) 2 Με παρόμοιο τρόπο δημιουργούνται τα παρακάτω σήματα ελέγχου: PCLOAD = JMP1 (η τιμή του PC αλλάζει, στο στάδιο JMP1). PCINC = FETCH2 (η τιμή του PC αυξάνει κατά 1, στο στάδιο FETCH2). DRLOAD = FETCH1 OR ADD1 OR AND1 (ο DR φορτώνει δεδομένα, είτε στο στάδιο FETCH1, είτε στο στάδιο ADD1, είτε στο στάδιο AND1). ACLOAD = ADD2 OR AND2 (ο AC φορτώνει δεδομένα, είτε στο στάδιο ADD2, είτε στο στάδιο AND2). ACINC = INC1 (η τιμή του AC αυξάνει κατά 1, στο στάδιο INC1). IRLOAD = FETCH3 (γράφονται τα 2 bit του IR στο στάδιο FETCH3). 47

48 Υπόλοιπα σήματα ελέγχου (ALU) H ALU έχει ένα σήμα ελέγχου ALUSEL: Αν το ALUSEL είναι 0, τότε η ALU εκτελεί ADD. Αν το ALUSEL είναι 1, τότε η ALU εκτελεί AND. Ως εκ τούτου αν θέσουμε ALUSEL = AND2, τότε επιτελείται αυτή η λειτουργία όταν η ALU χρησιμοποιείται για AND ή ADD. => Με την παραπάνω σύνδεση, απλοποιείται το κύκλωμα, αλλά αυτό σημαίνει ότι η ALU θα χρησιμοποιείται σε κάθε στάδιο, απλώς δε θα αποθηκεύεται η τιμή στο AC σε κάθε άλλο στάδιο (δε θα υπάρχει το σήμα ACLOAD). 48

49 Υπόλοιπα σήματα ελέγχου (δίαυλος) 1 Πολλές λειτουργίες χρησιμοποιούν σήματα από το εσωτερικό δίαυλο συστήματος. Πρέπει να δημιουργηθούν τα κατάλληλα σήματα ελέγχου, ώστε να τοποθετηθούν τα σωστά δεδομένα στο δίαυλο την κατάλληλη στιγμή. Το DR πρέπει να τοποθετηθεί στο δίαυλο στα στάδια: FETCH3, ADD2, AND2, JMP1. Με τη λογική πράξη OR ανάμεσα σε αυτές τις εξόδους του αποκωδικοποιητή δημιουργείται το σήμα DRLOAD (φόρτωση στον καταχωρητή DR). DRLOAD = FETCH3 OR ADD2 OR AND2 OR JMP1. 49

50 Υπόλοιπα σήματα ελέγχου (δίαυλος) 2 Ομοίως, δημιουργούνται τα σήματα, MEMBUS (μεταφορά τον DR στο δίαυλο συστήματος), και PCBUS (μεταφορά από το PC στο δίαυλο συστήματος): MEMBUS = FETCH2 OR ADD1 OR AND1. PCBUS = FETCH1. Επίσης, πρέπει να δημιουργείται και το σήμα READ, ώστε η μνήμη να τοποθετήσει τα δεδομένα στο D[7..0]: READ = FETCH2 OR ADD1 OR AND1. 50

51 Δημιουργία σημάτων ελέγχου VSC 51

52 Επιβεβαίωση ορθής λειτουργίας 1 Μετά το σχεδιασμό, πρέπει να επιβεβαιωθεί η ορθή λειτουργία. Για να γίνει αυτό, εξετάζεται η ακολουθία κάθε εντολής στα στάδια fetch-decode-execute. Έστω για παράδειγμα, ότι έχουμε το παρακάτω κομμάτι κώδικα (πρώτη στήλη διεύθυνση μνήμης): 0 ADD 4 1 AND 5 2 INC 3 JMP H 5 39H 52

53 Επιβεβαίωση ορθής λειτουργίας 2 Ο επεξεργαστής, εκτελεί τα fetch/decode/execute για κάθε εντολή: ADD 4: FETCH1->FETCH2->FETCH3->ADD1->ADD2 AND 5: FETCH1->FETCH2->FETCH3->AND1->AND2 INC: FETCH1->FETCH2->FETCH3->INC1 JMP 0: FETCH1->FETCH2->FETCH3->JMP1 Μπορούμε να δούμε το ίχνος εκτέλεσης και δημιουργίας σημάτων στις επόμενες διαφάνειες. 53

54 Επιβεβαίωση μέσω ίχνους εκτέλεσης 1 54

55 Επιβεβαίωση μέσω ίχνους εκτέλεσης 2 55

56 Μια πιο σύνθετη σχεδίαση CPU 56

57 Μια πιο σύνθετη σχεδίαση: Relatively Simple CPU Η προηγούμενη σχεδίαση ήταν μια πολύ απλή CPU. Θα εξετάσουμε τη σχεδίαση μιας πιο σύνθετης CPU (αλλά σχετικά απλής). Ονομάζεται Relatively Simple CPU (RSC). Αυτή η CPU, έχει περισσότερες εντολές, καταχωρητές, και διαθέσιμη μνήμη. 57

58 Προδιαγραφές RSC 1 64KB μνήμης των 8 bit. 8 bit δίαυλο. Pin διευθύνσεων A[15..0]. Pin δεδομένων διπλής κατεύθυνσης D[7..0]. 3 καταχωρητές διαθέσιμοι στο χρήστη: AC, 8 bit. R, 8 bit ως δεύτερη παράμετρος. Z, 1 bit (σημαία) τίθεται μετά από αριθμητική/λογική πράξη. 58

59 Προδιαγραφές RSC 2 Το AC, χρησιμοποιείται πάντα ως η πρώτη είσοδος στο ALU σε διμελείς πράξεις, και είναι η έξοδος της ALU. Όταν μεταφέρεται ένα Byte από τη μνήμη, φορτώνεται πάντα στο AC. Όταν μεταφέρεται ένα Byte στη μνήμη, διαβάζεται πάντα από το AC. Ο καταχωρητής R, είναι γενικού τύπου και χρησιμοποιείται στις διμελείς πράξεις. Μπορεί να χρησιμοποιηθεί και για την προσωρινή αποθήκευση δεδομένων. 59

60 Εντολές του RSC Instruction Instruction Code Operation NOP No Operation LDAC Γ AC,-- M[Γ] STAC Γ M[Γ] <- AC MVAC R <- AC MOVR AC <- R JUMP Γ GOTO Γ JMPZ Γ IF(Z=1) THEN GOTO Γ JPNZ Γ IF(Z=0) THEN GOTO Γ ADD AC <-AC + R, IF(AC + R = 0) THEN Z <-1 ELSE Z <- 0 SUB AC <- AC - R, IF(AC - R = 0) THEN Z <- 1 ELSE Z <- 0 INAC AC<- AC + R, IF(AC + R = 0) THEN Z <- 1 ELSE Z <- 0 CLAC AC <- 0, Z <- 1 AND AC <- AC ^ R, IF(AC ^ R = 0) THEN Z <- 1 ELSE Z <- 0 OR AC<- AC R, IF(AC R = 0) THEN Z <-1 ELSE Z <- 0 XOR AC <- AC - R, IF(AC - R = 0) THEN Z <- 1 ELSE Z <- 0 NOT AC <- AC`, IF(AC` = 0) THEN Z <- 1 ELSE Z <- 0 60

61 Επιπρόσθετοι Καταχωρητές Εκτός από τους καταχωρητές που είναι ορατοί στο χρήστη, υπάρχουν και άλλοι καταχωρητές. Καταχωρητής διευθύνσεων AR 16bit, που γράφει στη μνήμη Α[15..0]. Μετρητής προγράμματος PC 16bit, που φέρει είτε τη διεύθυνση της επόμενης προς εκτέλεση εντολή, είτε τη διεύθυνση της επόμενης παραμέτρου (αν απαιτείται). Καταχωρητής δεδομένων DR 8bit, που είτε γράφει, είτε διαβάζει διαμέσου των pins D[7..0]. Καταχωρητής εντολών IR 8bit, που αποθηκεύει το opcode της τρέχουσας εντολής. Προσωρινής καταχωρητής TR 8bit, που αποθηκεύει προσωρινά δεδομένα κατά την εκτέλεση. 61

62 Βελτιώσεις του επεξεργαστή RSC Παρατηρούμε ότι εκτός από τις αλλαγές στα μεγέθη των καταχωρητών, υπάρχουν και άλλες αλλαγές, που τις συναντάμε και σε πραγματικούς επεξεργαστές: Αμφίδρομη μεταφορά δεδομένων), που απαιτούνται για την αυξημένη πολυπλοκότητα. Ο PC μεταφέρει και διευθύνσεις προς παραμέτρους και όχι μόνο προς εντολές (γιατί, ενώ έχουμε 8bit, η διεύθυνση μιας θέσης μνήμης είναι 16bit, οπότε δε χωράει εντολή + διεύθυνση σε 8bit, αν είχαμε 24bit τότε δε θα γίνονται καλή χρήση γιατί υπάρχουν εντολές που δεν κάνουν πρόσβαση στη μνήμη). Επιπρόσθετο καταχωρητή R (για μείωση των προσβάσεων στη μνήμη). Προσωρινή καταχωρητή TR (δεν είναι προσβάσιμος από το χρήστη, χρησιμοποιείται μόνο από τη CPU). Σημαία Z (zero flag), που τροποποιείται μόνο από συγκεκριμένες εντολές, κυρίως για εντολές αλλαγής ροής εκτέλεσης. 62

63 Στάδιο FETCH & DECODE Το στάδιο FETCH μοιάζει με το αντίστοιχο του VSC. FETCH1: AR <- PC FETCH2: DR <- M, PC <- PC <- PC + 1 FETCH3: IR <- DR, AR <- PC Όλα τα 8bit του DR μεταφέρονται στο IR. To PC μεταφέρεται στο AR, γιατί θα είναι η επόμενη διεύθυνση που θα γίνει πρόσβαση. Το στάδιο DECODE είναι το ίδιο. 63

64 Διάγραμμα καταστάσεων για Fetch και Decode Οι εντολές JMPZ, JPNZ για το ίδιο opcode, έχουν δυο διαφορετικά μονοπάτια, αναλόγως της τιμής Ζ. 64

65 Εκτέλεση των εντολών: NOP Το τελικό στάδιο, είναι για κάθε εντολή να αναπτυχθεί το διάγραμμα εκτέλεσης. NOP: Είναι η πιο εύκολη εντολή. Καμία λειτουργία. Μπορεί να γίνει είτε με άμεση μεταφορά στο FETCH1, είτε με τη δημιουργία μιας κατάστασης NOP1 για το στάδιο της εκτέλεσης, κάτι που είναι προτιμητέο, ώστε κάθε εντολή να έχει στάδιο εκτέλεσης. 65

66 Εκτέλεση των εντολών: LDAC Εντολή πολλών Byte (3 byte). Απαιτείται το opcode, το χαμηλό Byte και το υψηλό Byte της διεύθυνσης. Κατά το στάδιο της εκτέλεσης, θα πρέπει να πάρει τη διεύθυνση από τη μνήμη, στη συνέχεια να φέρει τα δεδομένα από αυτή τη διεύθυνση και να τα φορτώσει στον AC. Ο PC κάθε φορά δείχνει στο επόμενο Byte (που συνήθως είναι εντολή). Αν είναι εντολή με πολλά Byte, τότε το PC δείχνει στο χαμηλό Byte της διεύθυνσης και στην επόμενη αύξηση, δείχνει στο υψηλό Byte της διεύθυνσης. 66

67 Εκτέλεση των εντολών: LDAC1 Αρχικά, πρέπει να βρεθεί η διεύθυνση της παραμέτρου. Το PC δείχνει στο χαμηλό Byte της διεύθυνσης. Το PC έχει αντιγραφεί στο AR (έχει αυξηθεί στο FETCH3). Για το υψηλό Byte, απαιτείται η αύξηση του PC και του AR κατά 1. Θα μπορούσε να γίνει μόνο αύξηση του PC, και μεταφορά στο AR, αλλά αυτό θα απαιτούσε την προσθήκη μιας ακόμη κατάστασης εκτέλεσης. LDAC1: DR <-M, PC <- PC + 1, AR <- AR

68 Εκτέλεση των εντολών: LDAC2 Το επόμενο βήμα είναι η μεταφορά του υψηλού Byte. Πρέπει να αποθηκευτεί το χαμηλό Byte στον προσωρινό καταχωρητή (γιατί θα σβηστεί με την εγγραφή του νέου Byte). Επίσης, το PC πρέπει να αυξηθεί κατά 1, ώστε να δείχνει στην επόμενη προς εκτέλεση εντολή. LDAC2: TR <- DR, DR <- M, PC <- PC

69 Εκτέλεση των εντολών: LDAC3,4,5 Σε αυτό το στάδιο χρησιμοποιούνται τα 2 byte (υψηλό + χαμηλό) ως διεύθυνση για να ζητηθεί από τη μνήμη η μεταφορά των αντίστοιχων δεδομένων. Ο CPU πρέπει να αντιγράψει τη διεύθυνση στο AR. LDAC3: AR <- DR, TR Πρέπει να αντιγραφούν τα δεδομένα από τη μνήμη στο DR. LDAC4: DR <- M Τέλος, αντιγράφονται τα δεδομένα από το DR στο AC. LDAC5: AC <- DR 69

70 Εκτέλεση των εντολών: STAC Εντολή πολλών Byte (3 byte). Η εντολή αυτή αποθηκεύει το AC στη διεύθυνση μνήμης που ορίζεται από το επόμενο Byte (χαμηλό Byte διεύθυνσης) και το μεθεπόμενο byte (υψηλό Byte διεύθυνσης). Αντίστροφη της LDAC. Χρησιμοποιεί παρόμοια στάδια: STAC1: DR <- M, PC <- PC + 1, AR <- AR + 1 STAC2: R <- DR, DR <- M, PC <- PC + 1 STAC3: AR <- DR, TR SRTAC4: DR <- AC STAC5: M <- DR Τα STAC3,STAC4 δε μπορούν να συγχωνευτούν, γιατί μοιράζονται τον ίδιο εσωτερικό δίαυλο. 70

71 Εκτέλεση των εντολών: MVAC,MOVR Η εντολή MVAC μεταφέρει την τιμή από το AC στο R. Απαιτεί μια κατάσταση μόνο: MVAC1: R <- AC Η εντολή MOVR μεταφέρει την τιμή από το R στο AC. Απαιτεί μια κατάσταση μόνο: MOVR1: AC <- R 71

72 Εκτέλεση των εντολών: JUMP Εντολή πολλών Byte (3 byte). Αλλάζει η ροή εκτέλεσης στη διεύθυνση που ακολουθεί στο 2ο και 3ο byte. Μεταφέρεται στο DR το πρώτο byte της διεύθυνσης, και αυξάνει το AR κατά 1, για να δείξει στο επόμενο byte. JUMP1: DR <- M, AR <- AR + 1 Ομοίως με τις εντολές LDAC,STAC μεταφέρεται το 2ο στο TR και τo 3ο byte στο DR. JUMP2: TR <- DR, DR <- M Στη συνέχεια αντιγράφονται και τα 2 byte στο PC, ώστε να δείχνει στη διεύθυνση της νέας εντολής. JUMP3: PC <- DR, TR 72

73 Εκτέλεση των εντολών: JMPZ,JPNZ 1 (1/2) Εντολές πολλών Byte (3 byte). Οι εντολές αυτές μπορούν να τροποποιήσουν τη ροή εκτέλεσης, αναλόγως της σημαίας Ζ. Αν πρόκειται να γίνει αλλαγή ροής εκτέλεσης, τότε το στάδιο της εκτέλεσης εκτελεί τις λειτουργίες της εντολής JUMP. Αν δεν πρόκειται να γίνει αλλαγή ροής εκτέλεσης, τότε θα πρέπει να αυξηθεί το PC κατά 2, γιατί τα επόμενα 2 byte είναι η διεύθυνση που θα γίνονταν η αλλαγή αν το επέτρεπε το Z. H διαφορά του JMPZN και του JMPZY είναι ότι τα JMPZY εκτελούνται αν Z=1, ενώ τα ZMPZN αν Z=0. Ως προς τα JPNZ αυτά είναι παρόμοια, αλλά χρησιμοποιούνται με τις αντίστροφες συνθήκες. Δηλαδή, τα JPNZY εκτελούνται αν Z=0, ενώ το JPNZN αν Z=0. 73

74 Εκτέλεση των εντολών: JMPZ,JPNZ 1 (2/2) JMPZY1: DR <- M, AR <- AR + 1 JMPZY2: TR <- DR, DR <- M JMPZY3:PC <- DR, TR JPNZY1: DR <- M, AR <- AR + 1 JPNZY2: TR <- DR, DR <- M JPNZY3:PC <- DR, TR JMPZN1: PC <- PC + 1 JMPZN2: PC <- PC + 1 JPNZN1: PC <- PC + 1 JPNZN2: PC <- PC

75 Εκτέλεση των εντολών: υπόλοιπες εντολές 1 Οι υπόλοιπες εντολές εκτελούνται σε ένα στάδιο. Για κάθε εντολή, συμβαίνουν τα εξής: Υπολογίζεται η τιμή, αναλόγως της πράξης, και τοποθετείται στο AC. Αν το αποτέλεσμα είναι 0, τότε το Z γίνεται 1, διαφορετικά γίνεται 0. Αυτό γίνεται ταυτόχρονα για εξοικονόμηση σταδίων. 75

76 Εκτέλεση των εντολών: υπόλοιπες εντολές 2 ADD1: AC <- AC + R, IF (AC + R = 0) THEN Z <- 1 ELSE Z <- 0 SUB1: AC <- AC - R, IF (AC - R = 0) THEN Z <- 1 ELSE Z <- 0 INAC1: AC <- AC + R, IF (AC + R = 0) THEN Z <- 1 ELSE Z <- 0 CLAC1: AC <- 0, Z <- 1 AND1: AC <- AC ^ R, IF (AC ^ R = 0) THEN Z <- 1 ELSE Z <- 0 OR1: AC <- AC R, IF (AC R = 0) THEN Z <- 1 ELSE Z <- 0 XOR1: AC <- AC + R, IF (AC + R = 0) THEN Z <- 1 ELSE Z <- 0 NOT1: AC <- AC`IF (AC` = 0) THEN Z <- 1 ELSE Z <- 0 76

77 Πλήρες διάγραμμα καταστάσεων 77

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

79 Ομαδοποίηση ενεργειών 1 AR: AR <- PC; AR <- AR + 1; AR <- DR, TR PC: PC <- PC + 1; PC <- DR, TR DR: DR <- M, DR <- AC IR: IR <- DR R: R <- AC TR: TR <- DR AC: AC <- DR; AC <- R; AC <- AC + R; AC <- R; AC <- AC + 1; AC <- 0; AC <- AC ^ r; AC <- AC r; AC <- AC + R; AC <- AC` Z: Z <- 0 (both conditional) 79

80 Ομαδοποίηση ενεργειών 2 Οι καταχωρητές AR και PC, πρέπει να μπορούν να έχουν: παράλληλη φόρτωση. Αύξηση κατά 1. Οι καταχωρητές DR,IR,R,TR, πρέπει να μπορούν να έχουν παράλληλη φόρτωση. Μπορεί να χρησιμοποιηθεί είτε ο κοινός δίαυλος, είτε να προστεθούν αποκλειστικές συνδέσεις (αναλόγως το χρονισμό). Η ALU χρησιμοποιεί στη μια είσοδο το AC και την τιμή που φέρει ο δίαυλος για τη 2η είσοδο. Το AC θα παίρνει τιμή από το ALU. H CPU χρησιμοποιεί την τιμή του AC για το Z. 80

81 Ομαδοποίηση ενεργειών 3 Στο AC χρησιμοποιείται η αύξηση κατά 1. Αυτό μπορεί να γίνει μέσω ειδικής διάταξης στον καταχωρητή AC (όπως σε άλλους καταχωρητές) ή μέσω της ALU (επιλέγεται η ALU, για να μπορεί να υπολογιστεί και το Z). Το Z είναι καταχωρητής 1bit. Συνδέονται τα pins της διεύθυνσης A[15..0], και των αμφίδρομων δεδομένων D[7..0]. Η πρώτη έκδοση του διαγράμματος που συνδέει όλα τα στοιχεία φαίνεται στην επόμενη διαφάνεια. 81

82 Πρώτη έκδοση κυκλωματικού διαγράμματος Βελτιώσεις: Τα AR,IR δε παρέχουν δεδομένα αλλού, μπορούν να απομακρυνθούν οι συνδέσεις. Τα D[7..0] δεν έχουν ακόμη τροποποιηθεί για αμφίδρομη λειτουργία, απαιτούνται buffers για κάθε κατεύθυνση. Κάποιοι καταχωρητές δε χρησιμοποιούν το δίαυλο 16bit. Πρέπει να οριστούν ποια bit του διαύλου συνδέονται σε ποιο καταχωρητή. Ο καταχωρητής Z δεν έχει συνδεθεί. 82

83 Γενικό διάγραμμα αμφίδρομης λειτουργίας Δεν επιτρέπεται ποτέ να είναι ενεργοποιημένα και τα δυο data enable. 83

84 Μεταφορές από το δίαυλο (16 bit) σε καταχωρητές (16 bit και 8 bit) 1 Το AR,PC είναι 16bit, οπότε τα bit του διαύλου συνδέονται άμεσα σε αυτούς τους καταχωρητές. Οι υπόλοιποι καταχωρητές είναι 8bit, οπότε μια υλοποίηση είναι η σύνδεση τους με τα bit [7..0]. Όμως, μπορεί να βελτιωθεί: Κατά το FETCH3 απαιτείται η μεταφορά 2 στοιχείων στους καταχωρητές ( IR <- DR, AR <- PC ). ή θα προστεθεί ένα ακόμη στάδιο, ή μια μεταφορά θα γίνει εκτός διαύλου. Επιλέγουμε να συνδέσουμε το IR στο DR, επειδή το IR μόνο από το DR δέχεται δεδομένα. Ως εκ τούτου το IR μπορεί να αποσυνδεθεί από το κοινό δίαυλο. 84

85 Μεταφορές από το δίαυλο (16 bit) σε καταχωρητές (16 bit και 8 bit) 2 Κατά το LDAC2 (TR <- DR, DR <- M ), καθώς και σε άλλα στάδια, απαιτείται η ταυτόχρονη μεταφορά 2 στοιχείων από το δίαυλο. Επίσης, το TR δέχεται δεδομένα μόνο από το DR, οπότε μπορεί να υπάρχει μια αποκλειστική σύνδεση του TR με το DR. To TR μπορεί να αποσυνδεθεί λοιπόν από το δίαυλο. Στο LDAC3 (AR <- DR, TR), πρέπει να γράψουμε ταυτόχρονα 2 8bit λέξεις στο 16bit δίαυλο. Μπορούμε να τοποθετήσουμε το DR στα [15..8], αλλά θα δημιουργηθεί πρόβλημα σε επόμενες εντολές (π.χ. LDAC5: AC <- DR ). Μπορούμε να χρησιμοποιήσουμε απομονωτές και να στέλνουμε το DR είτε στα [15..8], είτε στα [7..0] αναλόγως της λειτουργίας. Το Z υπολογίζεται μόνο όταν υπάρχει μια λειτουργία ALU. Μπορεί να χρησιμοποιηθεί μια πράξη NOR. Για αυτό το λόγο το CLEAR και INC στο AC γίνεται μέσω της ALU, για να ενημερώνεται άμεσα και το Ζ. 85

86 Τελική έκδοση κυκλωματικού διαγράμματος Βελτιώσεις: Αμφίδρομο D[7..0]. Υπολογισμός Ζ. AR, IR χωρίς σύνδεση στο δίαυλο. DR με σύνδεση είτε [15..8] είτε [7..0]. TR δεδομένα από DR. IR δεδομένα από DR. 86

87 Σχεδιασμός της ALU 1 Όλα τα δεδομένα που καταλήγουν στο AC πρέπει να διέλθουν μέσω της ALU. Συνοψίζονται οι ενέργειες που τροποποιούν το AC. LDAC5: AC <- DR MOVR1: AC <- R ADD1: AC <- AC + R SUB1: AC <- AC - R INAC1: AC <- AC + 1 CLAC1: AC <- 0 AND1: AC <- AC ^ R OR1: AC <- AC R XOR1: AC <- AC + R NOT1: AC <- AC 87

88 Σχεδιασμός της ALU 2 Οι ενέργειες αυτές θα πρέπει να χωριστούν σε αριθμητικές και λογικές λειτουργίες. Θα σχεδιαστεί πρώτα το αριθμητικό κομμάτι της ALU και μετά το λογικό. Κατά τη λειτουργία της ALU θα υπολογίζεται μια τιμή τόσο από το αριθμητικό κομμάτι τόσο από το λογικό. Με έναν πολυπλέκτη θα γίνεται η επιλογή του κατάλληλου αποτελέσματος και θα συνδέεται στην έξοδο. 88

89 Σχεδιασμός της ALU: Αριθμητικές λειτουργίες 14 Ξεχωρίζονται οι αριθμητικές λειτουργίες. LDAC5: AC <- DR MOVR1: AC <- R ADD1: AC <- AC + R SUB1: AC <- AC - R INAC1: AC <- AC + 1 CLAC1: AC <- 0 Το DR έχει ως πηγή το δίαυλο (BUS). Το R έχει ως πηγή το δίαυλο (BUS). 89

90 Σχεδιασμός της ALU: Αριθμητικές λειτουργίες 2 Τροποποιούνται οι αριθμητικές λειτουργίες, ώστε να χρησιμοποιούν έναν παράλληλο αθροιστή ριπής μαζί με είσοδο κρατουμένου. Προσθέτονται: α είσοδος, β είσοδος και κρατούμενο. LDAC5: AC<-0 + BUS + 0 MOVR1: AC <- 0 + BUS + 0 ADD1: AC <- AC + BUS + 0 SUB1: AC <- AC +BUS' + 1 (πρόσθεση με συμπλήρωμα ως προς 2) INAC1: AC <- AC CLAC1: AC < Παρατηρούμε ότι: Η α είσοδος είναι 0 ή AC (χρήση πολυπλέκτη). Η β είσοδος είναι BUS ή BUS' ή 0 (χρήση πολυπλέκτη). Το κρατούμενο είναι 0 ή 1 (σήμα από τη μονάδα ελέγχου). 90

91 Σχεδιασμός της ALU : Λογικές λειτουργίες 1 Ξεχωρίζονται οι λογικές λειτουργίες: AND1: AC <- AC ^ R OR1: AC <- AC R XOR1: AC <- AC + R NOT1: AC <- AC Το AC έχει ως πηγή το δίαυλο (BUS). To R έχει ως πηγή το δίαυλο (BUS). 91

92 Σχεδιασμός της ALU: Λογικές λειτουργίες 2 Υπάρχουν 4 λειτουργίες. Κάθε λειτουργία εξάγει ένα αποτέλεσμα 8bit. Μπορεί να χρησιμοποιηθεί ένας πολυπλέκτης 8bit 4 σε 1, ώστε να επιλέγεται κάθε φορά η κατάλληλη έξοδος. Το μειονέκτημα είναι ότι ξοδεύεται ενέργεια γιατί συνεχώς υπολογίζονται όλα τα αποτελέσματα, αλλά επιλέγεται ένα κάθε φορά. Επίσης, ακόμη και όταν δε λειτουργεί η ALU, όλα τα κυκλώματα της λειτουργούν. Η 1η είσοδος του πολυπλέκτη (00): AND1: AC <- AC ^ BUS Η 2η είσοδος του πολυπλέκτη (01): OR1: AC <- AC BUS Η 3η είσοδος του πολυπλέκτη (10): XOR1: AC <- AC + BUS Η 4η είσοδος του πολυπλέκτη (11): NOT1: AC <- AC' 92

93 Σχεδιασμός της ALU 3 93

94 Σχεδιασμός της μονάδας ελέγχου 1 Υπάρχει αυξημένη πολυπλοκότητα και έτσι χρησιμοποιούνται δυο καταχωρητές μέσα στη CU (αντί για ένα που είχε η VSC). Ο πρώτος καταχωρητής φέρει τον 8bit op-code. Ο δεύτερος καταχωρητής φέρει τον αριθμό του σταδίου (κατάσταση) που βρίσκεται κάθε φορά ο επεξεργαστής. Ο καταχωρητής που φέρει το op-code της τρέχουσας εντολής είναι εύκολο να σχεδιαστεί. Όλα τα opcodes είναι της μορφής 0000XXXX, αρκεί να γίνει αποκωδικοποίηση των τελευταίων 4 bit. Δηλαδή, ως είσοδο στον αποκωδικοποιητή εισάγονται τα IR[3..0]. 94

95 Σχεδιασμός της μονάδας ελέγχου 2 Προκειμένου να ενεργοποιηθεί η αποκωδικοποίηση, αρκεί να γίνει NOR των 4 υψηλών bit IR[7..4], ώστε να υπάρξει αποτέλεσμα 1. Αυτό το αποτέλεσμα τοποθετείται στην είσοδο Ε (enable) του αποκωδικοποιητή. Ο μετρητής θα πρέπει να μπορεί να αυξηθεί κατά 1 και να μπορεί να καθαριστεί (δε χρειάζεται παράλληλη φόρτωση). 95

96 Τα opcodes και το κυκλωματικό διάγραμμα (1/2) 96

97 Τα opcodes και το κυκλωματικό διάγραμμα (2/2) 97

98 Κωδικοποίηση καταστάσεων H FETCH δε χρησιμοποιεί κάποια τιμή από τον αποκωδικοποιητή εντολών. Το FETCH1 για τους ίδιους λόγους με το VSC το τοποθετούμε στο TO, ενώ τα FETCH2,FETCH3 στα T1,T2 αντίστοιχα. Τοποθετούμε τα υπόλοιπα στάδια των εντολών στις καταστάσεις Τ3,Τ4. Με τη λογική πράξη AND ανάμεσα στην έξοδο του αποκωδικοποιητή και του χρονισμού Τ0- Τ7,δημιουργούμε τα κατάλληλα σήματα ελέγχου. π.χ. LDAC1 = ILDAC ^ T3, LDAC2 = IDAC ^ T4 98

99 Δημιουργία Σημάτων Μετά τη δημιουργία των καταστάσεων, πρέπει να δημιουργηθούν τα σήματα CLR,INC για τον μετρητή χρονισμού (T0,..,T7). Σήμα CLR. O μετρητής μηδενίζεται κάθε φορά στο τελευταίο στάδιο εκτέλεσης της κάθε εντολής. Για αυτό το λόγο, θα κάνουμε την πράξη OR με την τελευταία κατάσταση εκτέλεσης. Σήμα INC. Το σήμα INC πρέπει να είναι ενεργό σε κάθε άλλη στιγμή, εκτός από το τελευταίο στάδιο εκτέλεσης. Για αυτό το λόγο, θα κάνουμε πράξη OR με όλες τις υπόλοιπες καταστάσεις (εκτός από την τελευταία). 99

100 Διάγραμμα καταστάσεων 100

101 Σήματα ALU 1 (1/2) Τα σήματα της ALU (ALUS1 ALUS7) δημιουργούνται με παρόμοιο τρόπο με το VSC. ALUS1 (επιλογή 0 ή AC) = ADD1 OR SUB1 OR INAC1. ALUS2 (επιλογή BUS' ή BUS ή 0)=SUB1. ALUS3 (επιλογή BUS' ή BUS ή 0) =LDAC5 OR MOVR1 OR ADD1. ALUS4 (επιλογή Cin)= SUB1 OR INAC1. 101

102 Σήματα ALU 1 (2/2) Τα σήματα της ALU (ALUS1 ALUS7) δημιουργούνται με παρόμοιο τρόπο με το VSC. ALUS1 (επιλογή 0 ή AC) = ADD1 OR SUB1 OR INAC1. ALUS2 (επιλογή BUS' ή BUS ή 0)=SUB1. ALUS3 (επιλογή BUS' ή BUS ή 0) =LDAC5 OR MOVR1 OR ADD1. ALUS4 (επιλογή Cin)= SUB1 OR INAC1. 102

103 Σήματα ALU 2 ALUS5 (επιλογή λογικής πράξης) =XOR1 OR NOT1. ALUS6 (επιλογή λογικής πράξης) =OR1 OR NOT1. ALUS7 (επιλογή αποτελέσματος, αν 0 τότε αριθμητικό αποτέλεσμα, αν 1 τότε λογικό) =AND1 OR OR1 OR XOR1 OR NOT1. Για να βγάλουμε τα σήματα, κοιτάμε: 1) το κυκλωματικό διάγραμμα της ALU. 2) τις καταστάσεις της ALU. 103

104 Σήματα απομονωτών και διαύλου Με παρόμοιο τρόπο, δημιουργούνται και τα υπόλοιπα σήματα. 104

105 Επιβεβαίωση Σχεδίασης Απαιτείται να ετοιμαστεί ένα ίχνος εκτέλεσης εντολών, και να εξεταστούν όλα τα μονοπάτια εκτέλεσης. Μπορεί να χρησιμοποιηθεί ο προσομοιωτής RSCPU. 105

106 Επεκτάσεις / Βελτιώσεις 1 Ο επεξεργαστής μπορεί να επεκταθεί, ώστε να πλησιάσει του πραγματικούς επεξεργαστές. Προσθήκη περισσότερων καταχωρητών και κρυφής μνήμης (μείωση εξωτερικού αριθμού προσβάσεων). Περισσότεροι καταχωρητές, επιτρέπουν και την εκτέλεση ρουτίνων. Θα μπορούσε η επικοινωνία ανάμεσα στο κυρίως πρόγραμμα και την ρουτίνα, να γίνεται μέσω καταχωρητών και όχι μέσω της κύριας μνήμης (παράμετροι κλήσης, ενδιάμεσα αποτελέσματα, τελικό αποτέλεσμα). 106

107 Επεξεργαστές Intel & καταχωρητές 4004, καθόλου καταχωρητές. 8008, 8080, 8085 έξι καταχωρητές και ένα ACC. 8086, 80286, 80386, καταχωρητές. Pentium 8 καταχωρητές των 32bit,32KB Cache. Itanium 128 καταχωρητές ακεραίων, 128 καταχωρητές πραγματικών, 4MB Cache. 107

108 Επεκτάσεις / Βελτιώσεις 2 Πολλαπλοί δίαυλοι, ώστε να επιτρέπονται πολλαπλές παράλληλες μεταφορές. Επίσης, δεν υπάρχει ανάγκη για αποκλειστικές συνδέσεις (π.χ. TR). 108

109 Επεκτάσεις / Βελτιώσεις 2 (συνέχεια) 109

110 Επεκτάσεις / Βελτιώσεις 3 Χρήση διασωλήνωσης: Στον επεξεργαστή που σχεδιάσαμε, πάντα βρίσκονταν μόνο σε μια κατάσταση (οι άλλες καταστάσεις δεν έκαναν τίποτα χρήσιμο). Κατά τη διασωλήνωση, όλα τα στάδια χρησιμοποιούνται, και έτσι ενώ κάτι βρίσκεται στο FETCH, μια άλλη εντολή είναι στην κατάσταση DECODE, και μια άλλη είναι στην κατάσταση EXECUTE. Αυξάνεται ο ρυθμός απόδοσης. Η κάθε εντολή απαιτεί το ίδιο χρόνο εκτέλεσης. Η διασωλήνωση αναλύεται σε άλλη διάλεξη. 110

111 Επεκτάσεις / Βελτιώσεις 4 Μεγαλύτερα σετ εντολών. Ο επεξεργαστής που σχεδιάσαμε έχει μόνο κάτι απλές εντολές. π.χ. αν ο επεξεργαστής μας κάνει μόνο την πράξη συμπλήρωμα ως προς 2 και την πράξη AND, τότε για τη λογική πράξη A OR B θα έπρεπε να έχουμε: Συμπλήρωμα ως προς 2 του Α Συμπλήρωμα ως προς 2 του Α Πράξη AND Α και B Συμπλήρωμα ως προς 2 του αποτελέσματος: Αν αντιθέτως υποστηρίζονταν η πράξη OR τότε θα είχαμε μόνο μια εντολή. Αν υπάρχουν πολλές εντολές, τότε γίνεται πολύπλοκη η αποκωδικοποίηση. 111

112 Επεκτάσεις / Βελτιώσεις 5 Υπορουτίνες και διακοπές. Για να υποστηρίζονται υπορουτίνες πρέπει να υπάρχει ένας δείκτης στοίβας, ώστε κάθε φορά να αποθηκεύεται η διεύθυνση επιστροφής από τη ρουτίνα. Οι διακοπές είναι σήματα από συσκευές E/E για να ενημερώσουν τον επεξεργαστή για κάποιο θέμα. Οι διακοπές επιτρέπουν τον επεξεργαστή να διακόψει προσωρινά την εκτέλεση και να εκτελέσει ένα άλλο κομμάτι κώδικα που ονομάζεται κώδικας ή συνάρτηση εξυπηρέτησης διακοπής. Οι διακοπές αναλύονται σε άλλη διάλεξη. 112

113 Ο επεξεργαστής 8085 (1/2) 113

114 Ο επεξεργαστής 8085 (2/2) Ο επεξεργαστής υποστηρίζει διακοπές και I/O. Το ALU εκτελεί εντολές αριθμητικές, λογικές και ολίσθησης. Υπάρχουν οι καταχωρητές: A, B, C, D, E, H, L, SP, Flags, IR, PC, TR, AR. Χρησιμοποιούνται απομονωτές τριών καταστάσεων. Υπάρχει η μονάδα ελέγχου που δημιουργεί όλα τα σήματα χρονισμού. Η αποκωδικοποίηση της εντολής δημιουργεί όλα τα σήματα κατάστασης που συνδέονται στο block χρονισμού. Οι διακοπές ελέγχουν αν είναι ενεργοποιημένες και στέλνουν σήμα στη μονάδα ελέγχου. 114

115 Σύνοψη Σχεδιασμού CPU Δημιουργείται το ISA του επεξεργαστή (εντολές και ο αριθμός - ονόματα των καταχωρητών). Δημιουργείται μετά το διάγραμμα καταστάσεων και ορίζονται οι μικρο-λειτουργίες για κάθε εντολή. Στη συνέχεια αναπτύσσεται η περιγραφή υλικού (RTL). Η CPU έχει τρία βασικά τμήματα: Αρχείο καταχωρητών (ορατοί και μη). ALU. Μονάδα ελέγχου. Οι μικρο-λειτουργίες ορίζουν το τι πρέπει να γίνει και πότε. Χρησιμοποιούν μόνο συνδυαστική λογική γιατί πρέπει να ολοκληρώνονται σε 1 περίοδο ρολογιού. Η μονάδα ελέγχου δημιουργεί πληθώρα σημάτων για κάθε στοιχείο πάνω στο chip. 115

116 Πρόβλημα 1 Ένας επεξεργαστής παρόμοιος με το VSC, έχει το παρακάτω σετ εντολών και το διάγραμμα καταστάσεων. Να δώσετε το RTL. 116

117 Πρόβλημα 2 Ένας επεξεργαστής παρόμοιος με το VSC έχει το παρακάτω διάγραμμα καταστάσεων, και το RTL κώδικα. Να δώσετε το instruction set. 117

118 Πρόβλημα 3 Να δημιουργήσετε τη μονάδα ελέγχου για το πρόβλημα

119 Πρόβλημα 4 (1o μέρος) Η παρακάτω μονάδα ελέγχου υποτίθεται ότι υλοποιεί το διάγραμμα καταστάσεων που φαίνεται στο επόμενο slide. Ισχύει αυτό; Αν όχι ποιο διάγραμμα καταστάσεων υλοποιεί; 119

120 Πρόβλημα 4 (2ο μέρος) 120

121 Βιβλιογραφία Η παρουσίαση βασίζεται στο κεφάλαιο 6 CPU Design, από το βιβλίο. Carpinelli, Computer Systems Organization & Architecture, Pearson Education, 2001, ISBN , aw-bc.com/info/carpinelli/ 121

122 Τέλος Ενότητας 122

ΑΡΧΙΤΕΚΤΟΝΙΚΗ HARDWARE ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ

ΑΡΧΙΤΕΚΤΟΝΙΚΗ HARDWARE ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΚΕΦΑΛΑΙΟ 7ο ΑΡΧΙΤΕΚΤΟΝΙΚΗ HARDWARE ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ Γενικό διάγραμμα υπολογιστικού συστήματος Γενικό διάγραμμα υπολογιστικού συστήματος - Κεντρική Μονάδα Επεξεργασίας ονομάζουμε

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 7: Αποκωδικοποίηση Εντολής x86 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

Διαβάστε περισσότερα

Κεφάλαιο 3 Αρχιτεκτονική Ηλεκτρονικού Τμήματος (hardware) των Υπολογιστικών Συστημάτων ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ

Κεφάλαιο 3 Αρχιτεκτονική Ηλεκτρονικού Τμήματος (hardware) των Υπολογιστικών Συστημάτων ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ Κεφάλαιο 3 Αρχιτεκτονική Ηλεκτρονικού Τμήματος (hardware) των Υπολογιστικών Συστημάτων ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ 1. Τι εννοούμε με τον όρο υπολογιστικό σύστημα και τι με τον όρο μικροϋπολογιστικό σύστημα; Υπολογιστικό

Διαβάστε περισσότερα

ΕΙΔΙΚΟΤΗΤΑ: ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

ΕΙΔΙΚΟΤΗΤΑ: ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΕΙΔΙΚΟΤΗΤΑ: ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ (Τμήματα Υπολογιστή) ΕΚΠΑΙΔΕΥΤΗΣ:ΠΟΖΟΥΚΙΔΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ ΤΜΗΜΑΤΑ ΗΛΕΚΤΡΟΝΙΚΟΥ ΥΠΟΛΟΓΙΣΤΗ Κάθε ηλεκτρονικός υπολογιστής αποτελείται

Διαβάστε περισσότερα

Μάθημα 3.2: Κεντρική Μονάδα Επεξεργασίας

Μάθημα 3.2: Κεντρική Μονάδα Επεξεργασίας Κεφάλαιο 3 ο Αρχιτεκτονική Υπολογιστών Μάθημα 3.: Κεντρική Μονάδα Επεξεργασίας Όταν ολοκληρώσεις το κεφάλαιο θα μπορείς: Να σχεδιάζεις την εσωτερική δομή της ΚΜΕ και να εξηγείς τη λειτουργία των επιμέρους

Διαβάστε περισσότερα

Γενική οργάνωση υπολογιστή «ΑΒΑΚΑ»

Γενική οργάνωση υπολογιστή «ΑΒΑΚΑ» Περιεχόμενα Γενική οργάνωση υπολογιστή «ΑΒΑΚΑ»... 2 Καταχωρητές... 3 Αριθμητική-λογική μονάδα... 3 Μονάδα μνήμης... 4 Μονάδα Εισόδου - Εξόδου... 5 Μονάδα ελέγχου... 5 Ρεπερτόριο Εντολών «ΑΒΑΚΑ»... 6 Φάση

Διαβάστε περισσότερα

Οργάνωση επεξεργαστή (1 ο μέρος) ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική

Οργάνωση επεξεργαστή (1 ο μέρος) ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική Οργάνωση επεξεργαστή (1 ο μέρος) ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική Κώδικας μηχανής (E) Ο επεξεργαστής μπορεί να εκτελέσει το αρχιτεκτονικό σύνολο εντολών (instruction set architecture) Οι

Διαβάστε περισσότερα

Αρχιτεκτονική υπολογιστών

Αρχιτεκτονική υπολογιστών 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Αρχιτεκτονική υπολογιστών Ενότητα 11-12 : Δομή και Λειτουργία της CPU Ευάγγελος Καρβούνης Παρασκευή, 22/01/2016 2 Οργάνωση της CPU Η CPU πρέπει:

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 5: Εντολές αλλαγής ροής. Διακλάδωση χωρίς συνθήκη. Διακλάδωση με συνθήκη. Δρ. Μηνάς Δασυγένης

Διαβάστε περισσότερα

Μηχανοτρονική. Τμήμα Μηχανικών Παραγωγής και Διοίκησης 7 ο Εξάμηνο,

Μηχανοτρονική. Τμήμα Μηχανικών Παραγωγής και Διοίκησης 7 ο Εξάμηνο, Τμήμα Μηχανικών Παραγωγής και Διοίκησης 7 ο Εξάμηνο, 2016-2017 ΜΙΚΡΟΕΠΕΞΕΡΓΑΣΤΕΣ Μικροϋπολογιστής Υπολογιστής που χρησιμοποιείται για την είσοδο, επεξεργασία και έξοδο πληροφοριών. Είδη μικροϋπολογιστών:

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 2: Καταχωρητές, HelloWorld σε 8086, emu8086 emulator Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων

Διαβάστε περισσότερα

Κεντρική Μονάδα Επεξεργασίας

Κεντρική Μονάδα Επεξεργασίας Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Κεντρική Μονάδα Επεξεργασίας (Σχεδιασμός και λειτουργία μιας απλής ΚΜΕ) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης

Διαβάστε περισσότερα

Εργαστήριο 3 ΟΡΓΑΝΩΣΗ ΤΗΣ ΚΜΕ. Εισαγωγή

Εργαστήριο 3 ΟΡΓΑΝΩΣΗ ΤΗΣ ΚΜΕ. Εισαγωγή Εισαγωγή Εργαστήριο 3 ΟΡΓΑΝΩΣΗ ΤΗΣ ΚΜΕ Σκοπός του εργαστηρίου είναι να γνωρίσουµε την εσωτερική δοµή και αρχιτεκτονική της κεντρικής µονάδας επεξεργασίας, να κατανοήσουµε τον τρόπο µε τον οποίο λειτουργεί

Διαβάστε περισσότερα

Το ολοκληρωμένο κύκλωμα μιας ΚΜΕ. «Φέτα» ημιαγωγών (wafer) από τη διαδικασία παραγωγής ΚΜΕ

Το ολοκληρωμένο κύκλωμα μιας ΚΜΕ. «Φέτα» ημιαγωγών (wafer) από τη διαδικασία παραγωγής ΚΜΕ Το ολοκληρωμένο κύκλωμα μιας ΚΜΕ Η Κεντρική Μονάδα Επεξεργασίας (Central Processing Unit -CPU) ή απλούστερα επεξεργαστής αποτελεί το μέρος του υλικού που εκτελεί τις εντολές ενός προγράμματος υπολογιστή

Διαβάστε περισσότερα

Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L. Hennessy. Chapter 5. Ο επεξεργαστής: διαδρομή δεδομένων και μονάδα ελέγχου

Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L. Hennessy. Chapter 5. Ο επεξεργαστής: διαδρομή δεδομένων και μονάδα ελέγχου Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L. Hennessy Chapter 5 Ο επεξεργαστής: διαδρομή δεδομένων και μονάδα ελέγχου Ενδέκατη (11 η ) δίωρη διάλεξη. Διαφάνειες διδασκαλίας από το

Διαβάστε περισσότερα

Εισαγωγή στην Επιστήμη των Υπολογιστών

Εισαγωγή στην Επιστήμη των Υπολογιστών Εισαγωγή στην Επιστήμη των Υπολογιστών Ενότητα 3: Χειρισμός δεδομένων, 2ΔΩ Τμήμα: Αγροτικής Οικονομίας & Ανάπτυξης Διδάσκων: Θεόδωρος Τσιλιγκιρίδης Μαθησιακοί Στόχοι Η Ενότητα 3 διαπραγματεύεται θέματα

Διαβάστε περισσότερα

Αρχιτεκτονική υπολογιστών

Αρχιτεκτονική υπολογιστών 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Αρχιτεκτονική υπολογιστών Ενότητα 3 : Μια άποψη του κορυφαίου επιπέδου λειτουργίας και διασύνδεσης του υπολογιστή Καρβούνης Ευάγγελος Η έννοια

Διαβάστε περισσότερα

Μάθημα 4: Κεντρική Μονάδα Επεξεργασίας

Μάθημα 4: Κεντρική Μονάδα Επεξεργασίας Μάθημα 4: Κεντρική Μονάδα Επεξεργασίας 4.1 Γενικά Ο υπολογιστής επεξεργάζεται δεδομένα ακολουθώντας βήμα βήμα, τις εντολές ενός προγράμματος. Το τμήμα του υπολογιστή, που εκτελεί τις εντολές και συντονίζει

Διαβάστε περισσότερα

Κεντρική Μονάδα Επεξεργασίας (ΚΜΕ) Τμήματα ΚΜΕ (CPU) Ένα τυπικό υπολογιστικό σύστημα σήμερα. Οργάνωση Υπολογιστών (Ι)

Κεντρική Μονάδα Επεξεργασίας (ΚΜΕ) Τμήματα ΚΜΕ (CPU) Ένα τυπικό υπολογιστικό σύστημα σήμερα. Οργάνωση Υπολογιστών (Ι) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2015-16 Οργάνωση Υπολογιστών (Ι) (η κεντρική μονάδα επεξεργασίας) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Ένα

Διαβάστε περισσότερα

Οργάνωση Υπολογιστών (Ι)

Οργάνωση Υπολογιστών (Ι) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2014-15 Οργάνωση Υπολογιστών (Ι) (η κεντρική μονάδα επεξεργασίας) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Ένα

Διαβάστε περισσότερα

Chapter 5. Ο επεξεργαστής: διαδρομή δεδομένων και μονάδα ελέγχου. Ενδέκατη (11 η ) δίωρη διάλεξη.

Chapter 5. Ο επεξεργαστής: διαδρομή δεδομένων και μονάδα ελέγχου. Ενδέκατη (11 η ) δίωρη διάλεξη. Chapter 5 Ο επεξεργαστής: διαδρομή δεδομένων και μονάδα ελέγχου Ενδέκατη (11 η ) δίωρη διάλεξη. Διαφάνειες διδασκαλίας από το πρωτότυπο αγγλικό βιβλίο (4 η έκδοση), μετάφραση: Καθ. Εφαρμογών Νικόλαος Πετράκης,

Διαβάστε περισσότερα

Μικροαρχιτεκτονική του LC3

Μικροαρχιτεκτονική του LC3 ΆδειαΧρήσης Τοπαρόνεκπαιδευτικόυλικόυπόκειταισε άδειεςχρήσηςcrea vecommons. Γιαεκπαιδευτικόυλικό,όπωςεικόνες,που υπόκειταισεάδειαχρήσηςάλλουτύπου, αυτήπρέπεινααναφέρεταιρητώς. Μικροαρχιτεκτονική του LC3

Διαβάστε περισσότερα

Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων VLSI II

Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων VLSI II Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων VLSI II 3 η Εργαστηριακή Άσκηση Σχεδίαση και Υλοποίηση μίας ALU δύο εισόδων VHDL Εργαστήριο_2 2012-2013 1 Άδειες Χρήσης Το παρόν υλικό διατίθεται με τους όρους της άδειας

Διαβάστε περισσότερα

i Όλες οι σύγχρονες ΚΜΕ είναι πολυπλοκότερες!

i Όλες οι σύγχρονες ΚΜΕ είναι πολυπλοκότερες! Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Κεντρική Επεξεργασίας (Σχεδιασμός και λειτουργία μιας απλής ΚΜΕ) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Η υπολογιστική

Διαβάστε περισσότερα

Στοιχεία αρχιτεκτονικής μικροεπεξεργαστή

Στοιχεία αρχιτεκτονικής μικροεπεξεργαστή Στοιχεία αρχιτεκτονικής μικροεπεξεργαστή Αριθμός bit δίαυλου δεδομένων (Data Bus) Αριθμός bit δίαυλου διευθύνσεων (Address Bus) Μέγιστη συχνότητα λειτουργίας (Clock Frequency) Τύποι εντολών Αριθμητική

Διαβάστε περισσότερα

Πανεπιστήμιο Δυτικής Μακεδονίας. Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών. Ψηφιακή Σχεδίαση

Πανεπιστήμιο Δυτικής Μακεδονίας. Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών. Ψηφιακή Σχεδίαση Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Ψηφιακή Σχεδίαση Ενότητα 12: Σύνοψη Θεμάτων Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών http://arch.icte.uowm.gr/mdasyg

Διαβάστε περισσότερα

Βασικές Σχεδίασης Υπολογιστών Αριθμητική Μονάδα Επεξεργασίας Κεφάλαιο 10

Βασικές Σχεδίασης Υπολογιστών Αριθμητική Μονάδα Επεξεργασίας Κεφάλαιο 10 Βασικές Σχεδίασης Υπολογιστών Αριθμητική Μονάδα Επεξεργασίας Κεφάλαιο 10 Chapter 10 Part 1 1 Περιεχόμενο Εισαγωγή Παράδειγμα Διαδρομής Δεδομένων Αριθμητική Λογική Μονάδα (Arithmetic Logic Uit - ALU) Μονάδα

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 5: Datapath x86. Παράδειγμα λειτουργίας υποθετικής αρχιτεκτονικής TOY86 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών

Διαβάστε περισσότερα

Ψηφιακή Σχεδίαση. Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:07. Δρ. Μηνάς Δασυγένης. Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

Ψηφιακή Σχεδίαση. Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:07. Δρ. Μηνάς Δασυγένης. Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Ψηφιακή Σχεδίαση Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:07 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών http:

Διαβάστε περισσότερα

Αρχιτεκτονική υπολογιστών

Αρχιτεκτονική υπολογιστών 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Αρχιτεκτονική υπολογιστών Ενότητα 11 : Δομή και Λειτουργία της CPU 1/2 Φώτης Βαρζιώτης 2 Ανοιχτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Τμήμα Μηχανικών Πληροφορικής

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 07 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και

Διαβάστε περισσότερα

Αρχιτεκτονική υπολογιστών

Αρχιτεκτονική υπολογιστών 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Αρχιτεκτονική υπολογιστών Ενότητα 12 : Δομή και Λειτουργία της CPU 2/2 Φώτης Βαρζιώτης 2 Ανοιχτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Τμήμα Μηχανικών Πληροφορικής

Διαβάστε περισσότερα

Είναι το «μυαλό» του υπολογιστή μας. Αυτός κάνει όλους τους υπολογισμούς και τις πράξεις. Έχει δική του ενσωματωμένη μνήμη, τη λεγόμενη κρυφή

Είναι το «μυαλό» του υπολογιστή μας. Αυτός κάνει όλους τους υπολογισμούς και τις πράξεις. Έχει δική του ενσωματωμένη μνήμη, τη λεγόμενη κρυφή 1 Είναι το «μυαλό» του υπολογιστή μας. Αυτός κάνει όλους τους υπολογισμούς και τις πράξεις. Έχει δική του ενσωματωμένη μνήμη, τη λεγόμενη κρυφή μνήμη(cache). Η cache είναι πολύ σημαντική, πολύ γρήγορη,

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 5: Datapath x86. Παράδειγμα λειτουργίας υποθετικής αρχιτεκτονικής TOY86 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 2: Χειρισµός εδοµένων

ΚΕΦΑΛΑΙΟ 2: Χειρισµός εδοµένων ΚΕΦΑΛΑΙΟ 2: Χειρισµός εδοµένων 2.1 Αρχιτεκτονική Υπολογιστών 2.1 Αρχιτεκτονική Υπολογιστών 2.2 Γλώσσα Μηχανής 2.3 Εκτέλεση προγράµµατος 2.4 Αριθµητικές και λογικές εντολές 2.5 Επικοινωνία µε άλλες συσκευές

Διαβάστε περισσότερα

Οργάνωση και Αρχιτεκτονική Υπολογιστών. Κεφάλαιο 7.4

Οργάνωση και Αρχιτεκτονική Υπολογιστών. Κεφάλαιο 7.4 Οργάνωση και Αρχιτεκτονική Υπολογιστών Κεφάλαιο 7.4 Ε/Ε Οδηγούμενη από Διακοπές Το πρόβλημα με την προγραμματιζόμενη Ε/Ε είναι ότι ο επεξεργαστής πρέπει να περιμένει ώστε η μονάδα Ε/Ε που τον ενδιαφέρει

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 3: Καταχωρητές, Τμήματα, Διευθυνσιοδότηση Μνήμης, SEGMENT, MOV, ADD, SUB, INT, TITLE, LEA

Διαβάστε περισσότερα

Εισαγωγή στην πληροφορική

Εισαγωγή στην πληροφορική Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Εισαγωγή στην πληροφορική Ενότητα 4: Ψηφιακή Λογική, Άλγεβρα Boole, Πίνακες Αλήθειας (Μέρος B) Αγγελίδης Παντελής Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

Διαβάστε περισσότερα

ΠΛΕ- 027 Μικροεπεξεργαστές 6ο μάθημα: Αρχιτεκτονική πυρήνα: υλοποίηση με διοχέτευση

ΠΛΕ- 027 Μικροεπεξεργαστές 6ο μάθημα: Αρχιτεκτονική πυρήνα: υλοποίηση με διοχέτευση ΠΛΕ- 027 Μικροεπεξεργαστές 6ο μάθημα: Αρχιτεκτονική πυρήνα: υλοποίηση με διοχέτευση Αρης Ευθυμίου Απόδοση απλής υλοποίησης Υλοποίηση ενός κύκλου είναι πολύ αργή κάθε κύκλος είναι τόσο μεγάλος όσο χρειάζεται

Διαβάστε περισσότερα

Single Cycle Datapath. Αρχιτεκτονική Υπολογιστών. 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: Νεκ. Κοζύρης

Single Cycle Datapath. Αρχιτεκτονική Υπολογιστών. 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: Νεκ. Κοζύρης Αρχιτεκτονική Υπολογιστών 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: 2014-2015 Νεκ. Κοζύρης nkoziris@cslab.ece.ntua.gr Single Cycle Datapath http://www.cslab.ece.ntua.gr/courses/comparch/ Άδεια Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

1. Οργάνωση της CPU 2. Εκτέλεση εντολών 3. Παραλληλία στο επίπεδο των εντολών 4. Γραμμές διοχέτευσης 5. Παραλληλία στο επίπεδο των επεξεργαστών

1. Οργάνωση της CPU 2. Εκτέλεση εντολών 3. Παραλληλία στο επίπεδο των εντολών 4. Γραμμές διοχέτευσης 5. Παραλληλία στο επίπεδο των επεξεργαστών ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ ΟΡΓΑΝΩΣΗ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ Ι Γ. Τσιατούχας 2 ο Κεφάλαιο ιάρθρωση 1. Οργάνωση της 2. εντολών 3. Παραλληλία στο επίπεδο των εντολών 4. Γραμμές διοχέτευσης 5. Παραλληλία στο

Διαβάστε περισσότερα

ΠΛΗ10 Κεφάλαιο 2. ΠΛH10 Εισαγωγή στην Πληροφορική: Τόμος Α Κεφάλαιο: : Αριθμητική περιοχή της ALU 2.5: Κυκλώματα Υπολογιστών

ΠΛΗ10 Κεφάλαιο 2. ΠΛH10 Εισαγωγή στην Πληροφορική: Τόμος Α Κεφάλαιο: : Αριθμητική περιοχή της ALU 2.5: Κυκλώματα Υπολογιστών ΠΛH10 Εισαγωγή στην Πληροφορική: Τόμος Α Κεφάλαιο: 2 2.3 : Αριθμητική περιοχή της ALU 2.5: Κυκλώματα Υπολογιστών Στόχοι Μαθήματος: Να γνωρίσετε τις βασικές αρχές αριθμητικής των Η/Υ. Ποια είναι τα κυκλώματα

Διαβάστε περισσότερα

Πανεπιστήμιο Δυτικής Μακεδονίας. Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών. Ψηφιακή Σχεδίαση

Πανεπιστήμιο Δυτικής Μακεδονίας. Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών. Ψηφιακή Σχεδίαση Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Ψηφιακή Σχεδίαση Ενότητα 9: Ελαχιστοποίηση και Κωδικοποίηση Καταστάσεων, Σχεδίαση με D flip-flop, Σχεδίαση με JK flip-flop, Σχεδίαση με T flip-flop Δρ. Μηνάς

Διαβάστε περισσότερα

Μικροεπεξεργαστές - Μικροελεγκτές Ψηφιακά Συστήματα

Μικροεπεξεργαστές - Μικροελεγκτές Ψηφιακά Συστήματα Μικροεπεξεργαστές - Μικροελεγκτές Ψηφιακά Συστήματα 1. Ποια είναι η σχέση της έννοιας του μικροεπεξεργαστή με αυτή του μικροελεγκτή; Α. Ο μικροεπεξεργαστής εμπεριέχει τουλάχιστο έναν μικροελεγκτή. Β. Ο

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Αρχιτεκτονική Υπολογιστών Οργάνωση επεξεργαστή Διδάσκων: Επίκουρος Καθηγητής Αριστείδης Ευθυμίου Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε

Διαβάστε περισσότερα

Multi Cycle Datapath. Αρχιτεκτονική Υπολογιστών. 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: Νεκ. Κοζύρης

Multi Cycle Datapath. Αρχιτεκτονική Υπολογιστών. 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: Νεκ. Κοζύρης Αρχιτεκτονική Υπολογιστών 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: 2014-2015 Νεκ. Κοζύρης nkoziris@cslab.ece.ntua.gr Multi Cycle Datapath http://www.cslab.ece.ntua.gr/courses/comparch/ Άδεια Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

«ΜΙΚΡΟΫΠΟΛΟΓΙΣΤΕΣ» ΕΣΩΤΕΡΙΚΗ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΚΑΙ ΛΕΙΤΟΥΡΓΙΕΣ

«ΜΙΚΡΟΫΠΟΛΟΓΙΣΤΕΣ» ΕΣΩΤΕΡΙΚΗ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΚΑΙ ΛΕΙΤΟΥΡΓΙΕΣ «ΜΙΚΡΟΫΠΟΛΟΓΙΣΤΕΣ» ΕΣΩΤΕΡΙΚΗ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΚΑΙ ΛΕΙΤΟΥΡΓΙΕΣ 8085 ΧΟΝΔΡΙΚΟ ΔΙΑΓΡΑΜΜΑ 8085 CPU ΟΙ ΚΑΤΑΧΩΡΗΤΕΣ ΤΟΥ 8085 Ο ΑΠΟΚΩΔΙΚΟΠΟΙΗΤΗΣ ΕΝΤΟΛΩΝ Η ΑΡΙΘΜΗΤΙΚΗ ΚΑΙ ΛΟΓΙΚΗ ΜΟΝΑΔΑ ΟΙ «ΣΗΜΑΙΕΣ» FLAGS Η ΜΟΝΑΔΑ

Διαβάστε περισσότερα

Υπάρχουν δύο τύποι μνήμης, η μνήμη τυχαίας προσπέλασης (Random Access Memory RAM) και η μνήμη ανάγνωσης-μόνο (Read-Only Memory ROM).

Υπάρχουν δύο τύποι μνήμης, η μνήμη τυχαίας προσπέλασης (Random Access Memory RAM) και η μνήμη ανάγνωσης-μόνο (Read-Only Memory ROM). Μνήμες Ένα από τα βασικά πλεονεκτήματα των ψηφιακών συστημάτων σε σχέση με τα αναλογικά, είναι η ευκολία αποθήκευσης μεγάλων ποσοτήτων πληροφοριών, είτε προσωρινά είτε μόνιμα Οι πληροφορίες αποθηκεύονται

Διαβάστε περισσότερα

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2014

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2014 ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 201 ΤΕΧΝΟΛΟΓΙΑ (Ι) ΤΕΧΝΙΚΩΝ ΣΧΟΛΩΝ ΘΕΩΡΗΤΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ Μάθημα : Μικροϋπολογιστές

Διαβάστε περισσότερα

Επεξεργαστής Υλοποίηση ενός κύκλου μηχανής

Επεξεργαστής Υλοποίηση ενός κύκλου μηχανής ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη 9 Επεξεργαστής Υλοποίηση ενός κύκλου μηχανής Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων 1 Ti είναι Αρχιτεκτονική και τι Μικροαρχιτεκτονική

Διαβάστε περισσότερα

Προγραμματισμός Ηλεκτρονικών Υπολογιστών 1

Προγραμματισμός Ηλεκτρονικών Υπολογιστών 1 Προγραμματισμός Ηλεκτρονικών Υπολογιστών 1 Ενότητα 3: Άλγεβρα Βοole και Λογικές Πράξεις Δρ. Φραγκούλης Γεώργιος Τμήμα Ηλεκτρολογίας Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης

Διαβάστε περισσότερα

Συστήματα σε Ολοκληρωμένα Κυκλώματα

Συστήματα σε Ολοκληρωμένα Κυκλώματα Συστήματα σε Ολοκληρωμένα Κυκλώματα Κεφάλαιο 4: Αρχιτεκτονική των Embedded Μικροεπεξεργαστών Διδάσκων: Καθηγητής Οδυσσέας Κουφοπαύλου Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών ΕΙΣΑΓΩΓΗ Παρουσιάζεται

Διαβάστε περισσότερα

Συστήματα Μικροϋπολογιστών

Συστήματα Μικροϋπολογιστών Συστήματα Μικροϋπολογιστών Είσοδος / Έξοδος Δεδομένων Υπεύθυνος Μαθήματος: K. ΠΕΚΜΕΣΤΖΗ Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως

Διαβάστε περισσότερα

Τμήμα Λογιστικής. Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. Μάθημα 8. 1 Στέργιος Παλαμάς

Τμήμα Λογιστικής. Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. Μάθημα 8. 1 Στέργιος Παλαμάς ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας Τμήμα Λογιστικής Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές Μάθημα 8 Κεντρική Μονάδα Επεξεργασίας και Μνήμη 1 Αρχιτεκτονική του Ηλεκτρονικού Υπολογιστή Μονάδες Εισόδου Κεντρική

Διαβάστε περισσότερα

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2009 ΑΠΑΝΤΗΣΕΙΣ

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2009 ΑΠΑΝΤΗΣΕΙΣ ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2009 Μάθημα : Μικροϋπολογιστές Τεχνολογία Τ.Σ. Ι, Θεωρητικής κατεύθυνσης Ημερομηνία

Διαβάστε περισσότερα

ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Α Γενικού Λυκείου (Μάθημα Επιλογής)

ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Α Γενικού Λυκείου (Μάθημα Επιλογής) ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Α Γενικού Λυκείου (Μάθημα Επιλογής) Σύγχρονα Υπολογιστικά Συστήματα τους υπερυπολογιστές (supercomputers) που χρησιμοποιούν ερευνητικά εργαστήρια τα μεγάλα συστήματα (mainframes)

Διαβάστε περισσότερα

Μία μέθοδος προσομοίωσης ψηφιακών κυκλωμάτων Εξελικτικής Υπολογιστικής

Μία μέθοδος προσομοίωσης ψηφιακών κυκλωμάτων Εξελικτικής Υπολογιστικής Μία μέθοδος προσομοίωσης ψηφιακών κυκλωμάτων Εξελικτικής Υπολογιστικής Βασισμένο σε μια εργασία των Καζαρλή, Καλόμοιρου, Μαστοροκώστα, Μπαλουκτσή, Καλαϊτζή, Βαλαή, Πετρίδη Εισαγωγή Η Εξελικτική Υπολογιστική

Διαβάστε περισσότερα

Εισαγωγή στην Επιστήμη των Υπολογιστών

Εισαγωγή στην Επιστήμη των Υπολογιστών Εισαγωγή στην Επιστήμη των Υπολογιστών Ενότητα 2: Λογικές πράξεις, 2ΔΩ Τμήμα: Αγροτικής Οικονομίας & Ανάπτυξης Διδάσκων: Θεόδωρος Τσιλικρίδης Μαθησιακοί Στόχοι Η Ενότητα 2 διαπραγματεύεται θέματα που αφορούν

Διαβάστε περισσότερα

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2015

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2015 ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2015 ΤΕΧΝΟΛΟΓΙΑ (Ι) ΤΕΧΝΙΚΩΝ ΣΧΟΛΩΝ ΘΕΩΡΗΤΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ Μάθημα : Μικροϋπολογιστές

Διαβάστε περισσότερα

; Γιατί είναι ταχύτερη η λήψη και αποκωδικοποίηση των εντολών σταθερού μήκους;

; Γιατί είναι ταχύτερη η λήψη και αποκωδικοποίηση των εντολών σταθερού μήκους; Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2015-16 Αρχιτεκτονικές Συνόλου Εντολών (ΙΙ) (Δομή Εντολών και Παραδείγματα) http://di.ionio.gr/~mistral/tp/comparch/ Μ.Στεφανιδάκης Αρχιτεκτονική

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 8: Ολισθήσεις Περιστροφές Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

Διαβάστε περισσότερα

Κεφάλαιο 4 Σύνδεση Μικροεπεξεργαστών και Μικροελεγκτών ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ

Κεφάλαιο 4 Σύνδεση Μικροεπεξεργαστών και Μικροελεγκτών ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ Κεφάλαιο 4 Σύνδεση Μικροεπεξεργαστών και Μικροελεγκτών ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ 1. Παρακάτω δίνονται μερικοί από τους ακροδέκτες που συναντάμε στην πλειοψηφία των μικροεπεξεργαστών. Φτιάξτε έναν πίνακα που να

Διαβάστε περισσότερα

Κεφάλαιο 4 ο. Ο Προσωπικός Υπολογιστής

Κεφάλαιο 4 ο. Ο Προσωπικός Υπολογιστής Κεφάλαιο 4 ο Ο Προσωπικός Υπολογιστής Μάθημα 4.3 Ο Επεξεργαστής - Εισαγωγή - Συχνότητα λειτουργίας - Εύρος διαδρόμου δεδομένων - Εύρος διαδρόμου διευθύνσεων - Εύρος καταχωρητών Όταν ολοκληρώσεις το μάθημα

Διαβάστε περισσότερα

Κεφάλαιο Το υπολογιστικό σύστημα Η εξέλιξη του ανθρώπου πραγματοποιήθηκε χάρη στην ικανότητά στον χειρισμό εργαλείων.

Κεφάλαιο Το υπολογιστικό σύστημα Η εξέλιξη του ανθρώπου πραγματοποιήθηκε χάρη στην ικανότητά στον χειρισμό εργαλείων. Α Γενικού Λυκείου Κεφάλαιο 1 1.1 Το υπολογιστικό σύστημα Η εξέλιξη του ανθρώπου πραγματοποιήθηκε χάρη στην ικανότητά στον χειρισμό εργαλείων. Ιδιαίτερη θέση έχουν οι Υπολογιστικές συσκευές. Μηχανισμός

Διαβάστε περισσότερα

Πανεπιστήμιο Θεσσαλίας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων

Πανεπιστήμιο Θεσσαλίας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων Πανεπιστήμιο Θεσσαλίας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων Οργάνωση Η/Υ Ενότητα 1η: Εισαγωγή στην Οργάνωση Η/Υ Άσκηση 1: Αναλύστε τη διαδοχική εκτέλεση των παρακάτω εντολών MIPS με βάση τις

Διαβάστε περισσότερα

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2012

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2012 ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2012 ΤΕΧΝΟΛΟΓΙΑ (Ι) ΤΕΧΝΙΚΩΝ ΣΧΟΛΩΝ ΘΕΩΡΗΤΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ Μάθημα : Μικροϋπολογιστές

Διαβάστε περισσότερα

O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control)

O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control) O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control) 4 κατηγορίες εντολών: Σχεδίαση datapath Αριθμητικές-λογικές εντολές (add, sub, slt κλπ) R Type Εντολές αναφοράς στη μνήμη (lw,

Διαβάστε περισσότερα

ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ MHXANIKO MHXANIK I O I Η/ Η Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Γ. Τσιατούχας ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ

ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ MHXANIKO MHXANIK I O I Η/ Η Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Γ. Τσιατούχας ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ MHXNIKOI Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Γ. Τσιατούχας ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ Εκτέλεση Προγραµµάτων 1. Ο υπολογιστής εκτελεί λίπρογράµµατα που συνθέτονται από εντολές

Διαβάστε περισσότερα

ΟΡΓΑΝΩΣΗ ΚΑΙ ΣΧΕΔΙΑΣΗ Η/Υ

ΟΡΓΑΝΩΣΗ ΚΑΙ ΣΧΕΔΙΑΣΗ Η/Υ ΟΡΓΑΝΩΣΗ ΚΑΙ ΣΧΕΔΙΑΣΗ Η/Υ Γιώργος Δημητρίου Μάθημα 6 ο ΠΜΣ Εφαρμοσμένη Πληροφορική ΕΝΤΟΛΗ ΑΠΛΟΥ ΚΥΚΛΟΥ ΜΗΧΑΝΗΣ Όλες οι φάσεις του κύκλου εντολής στον ίδιο κύκλο μηχανής: Ο χρόνος από την ανάκληση μέχρι

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 2: Χειρισμός Δεδομένων

ΚΕΦΑΛΑΙΟ 2: Χειρισμός Δεδομένων ΚΕΦΑΛΑΙΟ 2: Χειρισμός Δεδομένων Εισαγωγή στην Αρχιτεκτονική Υπολογιστών Γλώσσα Μηχανής Εκτέλεση προγράμματος Αριθμητικές και λογικές εντολές Παράδειγμα: μια απλή Γλώσσα Μηχανής Επικοινωνία με άλλες συσκευές

Διαβάστε περισσότερα

Ολοκληρωμένα Κυκλώματα - Φθινόπωρο 2014 Γ. Δημητρακόπουλος. Εργαστηριακή άσκηση 2

Ολοκληρωμένα Κυκλώματα - Φθινόπωρο 2014 Γ. Δημητρακόπουλος. Εργαστηριακή άσκηση 2 Ολοκληρωμένα Κυκλώματα - Φθινόπωρο 2014 Γ. Δημητρακόπουλος Εργαστηριακή άσκηση 2 Σκοπός αυτής της εργαστηριακής άσκησης είναι να σας θυμίσει (ή να σας δείξει ανάλογα με το βαθμό εξοικίωσης σας) τον τρόπο

Διαβάστε περισσότερα

Σελίδα 1 από 12. Απαντήσεις στο φυλλάδιο 55. Ερώτηση 1 η : Ένα υπολογιστικό σύστηµα αποτελείται από:

Σελίδα 1 από 12. Απαντήσεις στο φυλλάδιο 55. Ερώτηση 1 η : Ένα υπολογιστικό σύστηµα αποτελείται από: Σελίδα 1 από 12 Απαντήσεις στο φυλλάδιο 55 Ερώτηση 1 η : Ένα υπολογιστικό σύστηµα αποτελείται από: (α) Κεντρική Μονάδα Επεξεργασίας. (β) Κύρια Μνήµη. (γ) Μονάδες εισόδου. (δ) Μονάδες εξόδου. (ε) Βοηθητική

Διαβάστε περισσότερα

Αρχιτεκτονική υπολογιστών

Αρχιτεκτονική υπολογιστών 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Αρχιτεκτονική υπολογιστών Ενότητα 10 : Ομάδες εντολών: Τρόποι Διευθυνσιοδότησης και Μορφοποιήσεις Φώτης Βαρζιώτης 2 Ανοιχτά Ακαδημαϊκά Μαθήματα

Διαβάστε περισσότερα

Ας ξεκινήσουμε. Macro-instructions. (Assembly level) Micro-instructions Main memory. (micro-code)

Ας ξεκινήσουμε. Macro-instructions. (Assembly level) Micro-instructions Main memory. (micro-code) Ας ξεκινήσουμε Τι χρειαζόμαστε για να υλοποιήσουμε έναν επεξεργαστή? Macro-instructions ALU (Assembly level) Register File Micro-instructions Main memory (micro-code) Control signals and microcode (control

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 6: inc, dec, loop, jcxz, dup, displacement Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο

Διαβάστε περισσότερα

6 η Θεµατική Ενότητα : Σχεδίαση Συστηµάτων σε Επίπεδο Καταχωρητή

6 η Θεµατική Ενότητα : Σχεδίαση Συστηµάτων σε Επίπεδο Καταχωρητή 6 η Θεµατική Ενότητα : Σχεδίαση Συστηµάτων σε Επίπεδο Καταχωρητή Εισαγωγή Η σχεδίαση ενός ψηφιακού συστήµατος ως ακολουθιακή µηχανή είναι εξαιρετικά δύσκολη Τµηµατοποίηση σε υποσυστήµατα µε δοµικές µονάδες:

Διαβάστε περισσότερα

Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων VLSI II

Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων VLSI II Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων VLSI II 4 η Εργαστηριακή Άσκηση Περιγραφή Κυκλωμάτων με Ακολουθιακές Εντολές Άδειες Χρήσης Το παρόν υλικό διατίθεται με τους όρους της άδειας χρήσης Creative Commons

Διαβάστε περισσότερα

ΤΕΧΝΙΚΕΣ ΑΥΞΗΣΗΣ ΤΗΣ ΑΠΟΔΟΣΗΣ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ I

ΤΕΧΝΙΚΕΣ ΑΥΞΗΣΗΣ ΤΗΣ ΑΠΟΔΟΣΗΣ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ I ΤΕΧΝΙΚΕΣ ΑΥΞΗΣΗΣ ΤΗΣ ΑΠΟΔΟΣΗΣ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ I MIPS Η MIPS (Microprocessor without Interlocked Pipeline Stages) είναι μία αρχιτεκτονική συνόλου εντολών (ISA) γλώσσας μηχανής που αναπτύχθηκε από την εταιρεία

Διαβάστε περισσότερα

8.1 Θεωρητική εισαγωγή

8.1 Θεωρητική εισαγωγή ΨΗΦΙΑΚΑ ΚΥΚΛΩΜΑΤΑ - ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ 8 ΣΤΟΙΧΕΙΑ ΜΝΗΜΗΣ ΚΑΤΑΧΩΡΗΤΕΣ Σκοπός: Η µελέτη της λειτουργίας των καταχωρητών. Θα υλοποιηθεί ένας απλός στατικός καταχωρητής 4-bit µε Flip-Flop τύπου D και θα µελετηθεί

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 03 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και

Διαβάστε περισσότερα

Περιεχόμενα ΜΤ Τυχαίας Προσπέλασης Θεωρία Υπολογισμού Ενότητα 23: Μηχανές Turing Τυχαίας Προσπέλασης Επ. Καθ. Π. Κατσαρός Τμήμα Πληροφορικής Επ. Καθ.

Περιεχόμενα ΜΤ Τυχαίας Προσπέλασης Θεωρία Υπολογισμού Ενότητα 23: Μηχανές Turing Τυχαίας Προσπέλασης Επ. Καθ. Π. Κατσαρός Τμήμα Πληροφορικής Επ. Καθ. Θεωρία Υπολογισμού Ενότητα 23: Μηχανές Turing Τυχαίας Προσπέλασης Τμήμα Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 10: Πέρασμα Παραμέτρων σε Διαδικασίες. Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής

Διαβάστε περισσότερα

ΘΕΜΑΤΑ & ΕΝΔΕΙΚΤΙΚΕΣ ΛΥΣΕΙΣ

ΘΕΜΑΤΑ & ΕΝΔΕΙΚΤΙΚΕΣ ΛΥΣΕΙΣ ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Θεματική Ενότητα Ακαδημαϊκό Έτος 2010 2011 Ημερομηνία Εξέτασης Κυριακή 26.6.2011 Ώρα Έναρξης Εξέτασης

Διαβάστε περισσότερα

*Ένας υπολογιστής είναι στην πραγματικότητα ένα σύστημα πολλών μερών που συνεργάζονται μεταξύ τους.

*Ένας υπολογιστής είναι στην πραγματικότητα ένα σύστημα πολλών μερών που συνεργάζονται μεταξύ τους. Ένας υπολογιστής είναι στην πραγματικότητα ένα σύστημα πολλών μερών που συνεργάζονται μεταξύ τους. *Τα φυσικά μέρη που μπορούμε να δούμε και να αγγίξουμε ονομάζονται συνολικά υλικό (hardware). * * υπερυπολογιστές

Διαβάστε περισσότερα

Μάθημα 3: Αρχιτεκτονική Υπολογιστών

Μάθημα 3: Αρχιτεκτονική Υπολογιστών Μάθημα 3: Αρχιτεκτονική Υπολογιστών 3.1 Περιφερειακές μονάδες και τμήμα επεξεργασίας Στην καθημερινή μας ζωή ερχόμαστε συνέχεια σε επαφή με υπολογιστές. Ο υπολογιστής είναι μια συσκευή που επεξεργάζεται

Διαβάστε περισσότερα

Δομημένος Προγραμματισμός

Δομημένος Προγραμματισμός ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Δομημένος Προγραμματισμός Ενότητα: Εισαγωγή στη C θεωρία Δ. Ε. Μετάφας Τμ. Ηλεκτρονικών Μηχ. Τ.Ε. Άδειες Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

Αρχιτεκτονική υπολογιστών

Αρχιτεκτονική υπολογιστών 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Αρχιτεκτονική υπολογιστών Ενότητα 13 : Η Λειτουργία της Μονάδας Ελέγχου Φώτης Βαρζιώτης 2 Ανοιχτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Τμήμα Μηχανικών Πληροφορικής

Διαβάστε περισσότερα

Αρχιτεκτονική υπολογιστών

Αρχιτεκτονική υπολογιστών 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Αρχιτεκτονική υπολογιστών Ενότητα 9 : Ομάδες Εντολών: Ιδιότητες και Λειτουργίες Ευάγγελος Καρβούνης Παρασκευή, 15/01/2016 Τι είναι ομάδα εντολών;

Διαβάστε περισσότερα

Αρχιτεκτονική Eckert-von Neumann. Πως λειτουργεί η ΚΜΕ; Κεντρική μονάδα επεξεργασίας [3] ΕΠΛ 031: ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

Αρχιτεκτονική Eckert-von Neumann. Πως λειτουργεί η ΚΜΕ; Κεντρική μονάδα επεξεργασίας [3] ΕΠΛ 031: ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Αρχιτεκτονική Eckert-von Neumann εισόδου μεταφορά δεδομένων από έξω προς τον Η/Υ εξόδου μεταφορά δεδομένων από τον Η/Υ προς τα έξω ΕΠΛ 031: ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Κύκλος Μηχανής κεντρικός έλεγχος/πράξεις

Διαβάστε περισσότερα

Πληροφορική Ι. Μάθημα 6 ο Εκτέλεση πράξεων, Αρχιτεκτονική Η/Υ. Τμήμα Χρηματοοικονομικής & Ελεγκτικής ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας

Πληροφορική Ι. Μάθημα 6 ο Εκτέλεση πράξεων, Αρχιτεκτονική Η/Υ. Τμήμα Χρηματοοικονομικής & Ελεγκτικής ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας Τμήμα Χρηματοοικονομικής & Ελεγκτικής ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας Πληροφορική Ι Μάθημα 6 ο Εκτέλεση πράξεων, Αρχιτεκτονική Η/Υ Δρ. Γκόγκος Χρήστος Εκτέλεση προγραμμάτων Πρόγραμμα: Ένα σύνολο από εντολές.

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No 05 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και

Διαβάστε περισσότερα

Μελέτη και σχεδίαση µιας υποτυπώδους κεντρικής µονάδας επεξεργασίας στα 32 µπιτ.

Μελέτη και σχεδίαση µιας υποτυπώδους κεντρικής µονάδας επεξεργασίας στα 32 µπιτ. ΤΕΙ ΚΡΗΤΗΣ / ΠΑΡΑΡΤΗΜΑ ΧΑΝΙΩΝ ΤΜΗΜΑ ΗΛΕΚΤΡΟΝΙΚΗΣ Μελέτη και σχεδίαση µιας υποτυπώδους κεντρικής µονάδας επεξεργασίας στα 32 µπιτ mode mode(0) ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Εµµανουήλ Καπαρού Επιβλέπων : ρ Μηχ Νικόλαος

Διαβάστε περισσότερα

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ. ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ, 5 ο εξάµηνο

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ. ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ, 5 ο εξάµηνο ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ και ΥΠΟΛΟΓΙΣΤΩΝ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ, 5 ο εξάµηνο ΦΕΒΡΟΥΑΡΙΟΣ 2006 ΘΕΜΑΤΑ ΚΑΙ ΛΥΣΕΙΣ

Διαβάστε περισσότερα

Μάθημα 7: Μικροϋπολογιστικό Σύστημα και Μνήμες

Μάθημα 7: Μικροϋπολογιστικό Σύστημα και Μνήμες Μάθημα 7: Μικροϋπολογιστικό Σύστημα και Μνήμες 7.1 Αρχιτεκτονική μνημών σε υπολογιστικό σύστημα Σε ένα υπολογιστικό σύστημα υπάρχουν συνήθως περισσότερες από μία μνήμες. Επειδή η χωρητικότητα ενός μόνο

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 13: (Μέρος Α ) Ενσωματωμένα Συστήματα Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής

Διαβάστε περισσότερα

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Σχεδίαση Ψηφιακών Συστημάτων. Ενότητα: ΚΑΤΑΧΩΡΗΤΕΣ - ΑΠΑΡΙΘΜΗΤΕΣ

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Σχεδίαση Ψηφιακών Συστημάτων. Ενότητα: ΚΑΤΑΧΩΡΗΤΕΣ - ΑΠΑΡΙΘΜΗΤΕΣ ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα ᄃ Σχεδίαση Ψηφιακών Συστημάτων Ενότητα: ΚΑΤΑΧΩΡΗΤΕΣ - ΑΠΑΡΙΘΜΗΤΕΣ Κυριάκης - Μπιτζάρος Ευστάθιος Τμήμα Ηλεκτρονικών Μηχανικών

Διαβάστε περισσότερα

ΟΡΓΑΝΩΣΗ ΚΑΙ ΣΧΕΔΙΑΣΗ Η/Υ

ΟΡΓΑΝΩΣΗ ΚΑΙ ΣΧΕΔΙΑΣΗ Η/Υ ΟΡΓΑΝΩΣΗ ΚΑΙ ΣΧΕΔΙΑΣΗ Η/Υ Γιώργος Δημητρίου Μάθημα 5 ο ΠΜΣ Εφαρμοσμένη Πληροφορική ΣΥΝΟΛΙΚΗ ΔΟΜΗ ΚΜΕ Μία ή περισσότερες μονάδες αριθμητικών και λογικών πράξεων Μονάδα ολίσθησης Φάκελος καταχωρητών γενικού

Διαβάστε περισσότερα

ΕΡΓΑΣΤΗΡΙΟ ΗΛΕΚΤΡΟΝΙΚΩΝ ΕΦΑΡΜΟΓΩΝ

ΕΡΓΑΣΤΗΡΙΟ ΗΛΕΚΤΡΟΝΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΕΡΓΑΣΤΗΡΙΟ ΗΛΕΚΤΡΟΝΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΨΗΦΙΑΚΑ ΟΛΟΚΛΗΡΩΜΕΝΑ ΗΛΕΚΤΡΟΝΙΚΑ ΚΑΙ ΣΥΣΤΗΜΑΤΑ ΟΜΑ Α Α Αριθµητική Λογική Μονάδα των 8-bit 1. Εισαγωγή Γενικά µια αριθµητική λογική µονάδα (ALU, Arithmetic Logic Unit)

Διαβάστε περισσότερα

ΛΥΣΕΙΣ 3 ης ΓΡΑΠΤΗΣ ΕΡΓΑΣΙΑΣ

ΛΥΣΕΙΣ 3 ης ΓΡΑΠΤΗΣ ΕΡΓΑΣΙΑΣ ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΠΡΟΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΠΛΗΡΟΦΟΡΙΚΗ ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ ΕΡΓΑΣΤΗΡΙΟ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΛΥΣΕΙΣ 3 ης ΓΡΑΠΤΗΣ ΕΡΓΑΣΙΑΣ ΠΑΤΡΑ 2006 9.

Διαβάστε περισσότερα

Πανεπιστήμιο Θεσσαλίας - Τμήμα Πληροφορικής. Οργάνωση Η/Υ. Γιώργος Δημητρίου. Μάθημα 3 ο ΜΕΔ απλού κύκλου

Πανεπιστήμιο Θεσσαλίας - Τμήμα Πληροφορικής. Οργάνωση Η/Υ. Γιώργος Δημητρίου. Μάθημα 3 ο ΜΕΔ απλού κύκλου Γιώργος Δημητρίου Μάθημα 3 ο ΜΕΔ απλού κύκλου Συνολική Δομή ΚΜΕ Μία ή περισσότερες μονάδες αριθμητικών και λογικών πράξεων Μονάδα ολίσθησης Φάκελος καταχωρητών γενικού σκοπού Κρυφή μνήμη (ενοποιημένη ή

Διαβάστε περισσότερα