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

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

Επίλυση προβλημάτων μέσω Η/Υ

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

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

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

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

Κάθε functional unit χρησιμοποιείται μια φορά σε κάθε κύκλο: ανάγκη για πολλαπλό hardware = κόστος υλοποίησης!

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

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

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

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

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

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

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

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

Υλοποίηση Mικροεπεξεργαστή MIPS -16

και η µονάδα ελέγχου (control) O επεξεργαστής: Η δίοδος δεδοµένων (datapath) Εντολές διακλάδωσης (branch beq, bne) I Type Σχεδίαση datapath

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

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

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

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

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

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

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΔΕΥΤΕΡΗ ΠΡΟΟΔΟΣ ΣΤΗΝ ΟΡΓΑΝΩΣΗ ΣΤΟΥΣ Η/Y (ΗΥ232)

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

ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΥΠΟΛΟΓΙΣΤΕΣ. ΜΑΘΗΜΑ 4 ο ΟΡΓΑΝΩΣΗ ΤΗΣ ΜΝΗΜΗΣ ΠΕΡΙΦΕΡΕΙΑΚΗ ΜΝΗΜΗ

Σχεδίαση της Μονάδας Ελέγχου

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

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

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

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

Απλός επεξεργαστής (Επανάληψη)

Ενσωµατωµένα Υπολογιστικά Συστήµατα (Embedded Computer Systems)

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

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

ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών. Διάλεξη 13. Εξαιρέσεις και Διακοπές (Exceptions and Interrupts)

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

Κάθε functional unit χρησιµοποιείται µια φορά σε κάθε κύκλο: ανάγκη για πολλαπλό hardware = κόστος υλοποίησης!

Παραλληλισµός Εντολών (Pipelining)

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

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

Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών - Μηχανικών Υπολογιστών. Αρχιτεκτονική Υπολογιστών Νεκτάριος Κοζύρης. Multicycle datapath

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

Μάθημα 8: Επικοινωνία Συσκευών με τον Επεξεργαστή

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

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

Αρχιτεκτονικές Συνόλου Εντολών

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

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

Τέτοιες λειτουργίες γίνονται διαμέσου του

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

Διάλεξη 12 Καθυστερήσεις (Stalls)

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

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

ΗΜΥ 213. Εργαστήριο Οργάνωσης Η.Y. και Μικροεπεξεργαστών week 5. Διδάσκων: Δρ. Γιώργος Ζάγγουλος

6. Ακολουθίες μικροεντολών 7. Συμβολισμός μικροεντολών (MAL)

Διάλεξη 12 Καθυστερήσεις (Stalls) Εκκενώσεις Εντολών (Flushing)

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

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

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

ΠΛΕ- 027 Μικροεπεξεργαστές 7ο μάθημα: Αρχιτεκτονική πυρήνα: Πρόβλεψη διακλάδωσης, Εξαιρέσεις

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

Προηγμένοι Μικροεπεξεργαστές. Φροντιστήριο 4 Real Mode Interrupts

Οργάνωση Η/Υ. Γιώργος Δημητρίου. Μάθημα 4 ο ΜΕΔ πολλαπλών κύκλων

ΟΜΑΔΕΣ ΕΝΤΟΛΩΝ: ΙΔΙΟΤΗΤΕΣ ΚΑΙ ΛΕΙΤΟΥΡΓΙΕΣ

Διάλεξη 11 Προώθηση (Forwarding)

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

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

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

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

Σχεδίαση μονάδας ελέγχου επεξεργαστή

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

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

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

Δείγμα Τελικής Εξέτασης στο ΗΜΥ213. Διδάσκοντας: Γιώργος Ζάγγουλος

Οργάνωση Η/Υ. Γιώργος ηµητρίου. Μάθηµα 6 ο. Πανεπιστήµιο Θεσσαλίας - Τµήµα Μηχανικών Η/Υ, Τηλεπικοινωνιών και ικτύων

; Τι περιέχεται στη συσκευασία ενός μικροεπεξεργαστή σήμερα;

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

Υλικό Υπολογιστών (Hardware) ΜΥΥ-106 Εισαγωγή στους Η/Υ και Πληροφορική

Στο σχήμα 4.1 δίνεται μια μονάδα επεξεργασίας δεδομένων σταθερής υποδιαστολής που εκτελεί κάθε μια από τις κάτωθι εντολές σε όσους κύκλους απαιτείται.

Εργαστήριο ΙΑΧΕΙΡΙΣΗ ΜΝΗΜΗΣ

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

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

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

ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2

Υ- 01 Αρχιτεκτονική Υπολογιστών Υπόβαθρο: Διοχέτευση

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

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

Κεφάλαιο 4. Ο επεξεργαστής. Οργάνωση και Σχεδίαση Υπολογιστών Η ιασύνδεση Υλικού και Λογισµικού, 4 η έκδοση

-Επεξεργαστής: datapath (δίοδος δεδοµένων) (1) και control (2) -Μνήµη (3) -Συσκευές Εισόδου (4), Εξόδου (5) (Μεγάλη ποικιλία!!)

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

ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός Προγραμματισμός. Κεφ. 4: Ο επεξεργαστής 1. Διάδρομος δεδομένων και μονάδα ελέγχου 2.

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

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

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

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

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

Διοχέτευση (Pipeline)

Transcript:

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

Μικροαρχιτεκτονική του LC3 Ο τρόπος με τον οποίο υλοποιείται εσωτερικά στον επεξεργαστή μία αρχιτεκτονική συνόλου εντολών (ISA) Βασικά μέρη της αρχιτεκτονικής: Μονοπάτι δεδομένων (data path): Περιλαμβάνει τους καταχωρητές και τις μονάδες (αθροιστές, πολυπλέκτες, κλπ) για την εκτέλεση των εντολών Μονάδα ελέγχου (control unit): Ενορχηστρώνει τη διαδικασία εκτέλεσης θέτοντας κατάλληλα σήματα ελέγχου. Μονάδα μνήμης και Ε/Ε (Memory, I/O unit): Αναλαμβάνει την πρόσβαση στη μνήμη και στις περιφερειακές συσκευές 2

Βασικά μέρη της αρχιτεκτονικής του LC3 10 σήματα για περιγραφή της κατάστασης και άλλων συνθηκών 39 σήματα για έλεγχο εκτέλεσης εντολών 3

Βασικά μέρη της αρχιτεκτονικής του LC3 ΙΝΤ: Υπάρχει αίτημα διακοπής R: Η μνήμη είναι έτοιμη IR[15:12]: Κωδικός τρέχουσας εντολής IR[11:11]: Τρόπος διευθυνσιοδότησης για JSR, JSRR ΒΕΝ: Αν θα πραγματοποιηθεί άλμα PSR[15]: Privilege mode 4

Βασικά μέρη της αρχιτεκτονικής του LC3 J[5:0]: Κωδικός τρέχουσας κατάσταση (52 καταστάσεις) COND[2:0]: Συνθήκες που πρέπει να ληφθούν υπόψη Unconditional (καμία) Memory ready Branch Addressing Mode Privilege mode Interrupt test IRD: Αγνόησε J, COND 5

LC3 state machine 52 καταστάσεις Το διάγραμμα δείχνει 31 Οι υπόλοιπες 19 αφορούν interrupts και exceptions 6

LC3 state machine Instruction fetch Φάση ανακλησης 7

LC3 state machine Instruction decode Φάση αποκωδικοποίησης 8

LC3 state machine Instruction execute Φάση εκτέλεσης 9

LC3 datapath 10

LC3 datapath Register file (R0 R7) MDR MAR PC IR N, Z, P 11

LC3 datapath ALU: ADD, AND, NOT, PASSA Ανάλογα με την τιμή του 2bit control σήματος ALUK Αθροιστής για υπολογισμό διευθύνσεων Μονάδα αύξησης PC 12

LC3 datapath Πολυπλέκτες: Επιλέγουν να δώσουν έξοδο μία από τις εισόδους ανάλογα με την τιμή του σήματος ελέγχου 13

LC3 datapath 39 σήματα ελέγχου 14

Παράδειγμα Φάση ανάκλησης (για όλες τις εντολές) State 18 15

1 00 State 18: MAR PC PC PC + 1 [INT] (υπάρχει interrupt?) δεν φαίνεται στο σχήμα 1 16

Παράδειγμα Φάση ανάκλησης (για όλες τις εντολές) Έστω ότι δεν υπάρχει interrupt (η συνηθέστερη περίπτωση) State 33 17

State 33: MDR M Όσο η μνήμη δεν είναι έτοιμη (R = 0), παραμένει στην κατάσταση 33 1 1 0 18

Παράδειγμα Φάση ανάκλησης (για όλες τις εντολές) State 35 19

State 35: IR MDR 1 1 20

Παράδειγμα Φάση αποκωδικοποίησης (για όλες τις εντολές) State 32 21

instruction BEN 1 State 32: ΒΕΝ IR[11] & N + IR[10] & Z + IR[9] & P (σε περίπτωση εντολής άλματος, αν θα πραγματοποιηθεί το άλμα) [IR[15:12]]: αποκωδικοποίηση εντολής απευθείας από τα 4 bit (opcode) 22

Παράδειγμα: ADD Φάση εκτέλεσης State 1 23

ADD State 1: DR SR1 + SR2 or DR SR1 + SEXT[imm5] setcc 00 24

Παράδειγμα: LD Φάση εκτέλεσης State 2 25

1 1 LD State 2: MAR PC + off9 10 0 1 26

Παράδειγμα: LD Φάση εκτέλεσης State 25 27

LD State 25: MDR M[MAR] Όσο η μνήμη δεν είναι έτοιμη (R = 0), παραμένει στην κατάσταση 33 1 1 0 28

Παράδειγμα: LD Φάση εκτέλεσης State 27 29

LD State 25: MDR M[MAR] Όσο η μνήμη δεν είναι έτοιμη (R = 0), παραμένει στην κατάσταση 33 30

Μονάδα ελέγχου του LC3 Πώς παράγονται τα κατάλληλα σήματα σε κάθε κατάσταση; Πώς μεταβαίνει ο επεξεργαστής από τη μία κατάσταση στην επόμενη; 31

Μονάδα ελέγχου του LC3 49 σήματα ελέγχου 39 για το μονοπάτι δεδομένων (τι πρέπει να εκτελεστεί τώρα) 10 για την εύρεση της επόμενης κατάστασης (σε ποια κατάσταση θα μεταβεί ο επεξεργαστής στον επόμενο κύκλο) 52 καταστάσεις 6 bits για να κωδικοποιηθούν Τα 49 σήματα κάθε κατάστασης αποτελούν μια μικροεντολή (microinstruction) Οι 52 μικροεντολές αποθηκεύονται σε μία εσωτερική μνήμη (control store) 2 6 θέσεων Ο microsequencer αναλαμβάνει την ενορχήστρωση της εκτέλεσης, δλδ λαμβάνει απόφαση για το ποια μικροεντολή θα ενεργοποιηθεί (θα διαβαστεί από την control store) 32

Microsequencer COND[2] COND[1] COND[0] Λαμβάνει σαν είσοδο: Το κωδικό της τρέχουσας εντολής IR[15:12] Τον κωδικό της τρέχουσας κατάστασης J[5:0] Αν υπάρχει σήμα διακοπής: ΙΝΤ Σε ποιο privilege mode είναι ο επεξεργαστής PSR[15] Αν ισχύει η συνθήκη άλματος BEN Αν είναι έτοιμη η μνήμη R Ποιο addressing mode πρέπει να χρησιμοποιηθεί (αφορά την JSR, JSRR) IR[11] Ποια συνθήκη πρέπει να ληφθεί υπόψη: COND0 (000): Καμία συνθήκη COND1 (001): Memory Ready COND2 (010): Branch COND3 (011): Addressing Mode COND4 (100): Privilege Mode COND5 (101): Interrupt test «Αγνόησε» τα J και COND: IRD Δίνει σαν έξοδο τη διεύθυνση (θέση) της επόμενης μικροεντολής στο control store 33

Επιπλέον διάβασμα: Introduction to Computing Systems: From Bits and Gates to C and Beyond, 2/e, Yale N. Patt, University of Texas at Austin, Sanjay J. Patel, University, of Illinois at Urbana/Champaign, Appendix C: The microarchitecture of LC3: http://highered.mheducation.com/sites/dl/free/0072467509/104652/p at67509_appc.pdf 34