Translation Lookaside Buffers Φροντιστήριο του μαθήματος “Προηγμένοι Μικροεπεξεργαστές”

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Εισαγωγή στις Τεχνολογίες της Πληροφορικής και των Επικοινωνιών
Advertisements

ΨΗΦΙΑΚΗ ΜΝΗΜΗ (RAM – ROM).
Κώστας Διαμαντάρας Τμήμα Πληροφορικής ΤΕΙ Θεσσαλονίκης 2011 Πολυεπεξεργαστές.
ΔΙΑΧΕΙΡΙΣΗ ΜΝΗΜΗΣ.
Εικονική Μνήμη (virtual memory)
Το υλικο του Υπολογιστη
Handling Local Variables General Purpose Registers
Συνάφεια Κρυφής Μνήμης σε Επεκτάσιμα Μηχανήματα. Συστήματα με Κοινή ή Κατανεμημένη Μνήμη  Σύστημα μοιραζόμενης μνήμης  Σύστημα κατανεμημένης μνήμης.
Σχεδίαση μονάδας ελέγχου επεξεργαστή Αρχιτεκτονική Υπολογιστών 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: Νεκτάριος Κοζύρης
Περίληψη Αρχιτεκτονική Μικροεπεξεργαστών MIPS-32
O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control) Σχεδίαση datapath 4 κατηγορίες εντολών: Αριθμητικές-λογικές.
Εικονική Μνήμη (virtual memory) Πολλά προγράμματα εκτελούνται ταυτόχρονα σε ένα υπολογιστή Η συνολική μνήμη που απαιτείται είναι μεγαλύτερη.
Λύση: Multicycle υλοποίηση Single-cyle υλοποίηση: Διάρκεια κύκλου ίση με τη μεγαλύτερη εντολή-worst case delay (εδώ η lw) = χαμηλή.
Προηγμένοι Μικροεπεξεργαστές 2006 – 2007 Παρουσίαση Projects.
William Stallings Computer Organization and Architecture 7 th Edition Κεφάλαιο 16 Λειτουργία Μονάδας Ελέγχου.
1 Αναβάθμισης Προγράμματος Σπουδών Τμήματος Πληροφορικής Τ.Ε.Ι Θεσσαλονίκης Μάθημα Προηγμένες Αρχιτεκτονικές Υπολογιστών Κεφαλαίο Τέταρτο Pipelining –
ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΜΙΚΡΟΫΠΟΛΟΓΙΣΤΩΝ & ΜΙΚΡΟΕΠΕΞΕΡΓΑΣΤΩΝ
1 Α. Βαφειάδης Αναβάθμισης Προγράμματος Σπουδών Τμήματος Πληροφορικής Τ.Ε.Ι Θεσσαλονίκης Μάθημα Προηγμένες Αρχιτεκτονικές Υπολογιστών Κεφαλαίο Τρίτο Συστήματα.
1 Οργάνωση και Αρχιτεκτονική Υπολογιστών A. Βαφειάδης Πρόγραμμα Αναβάθμισης Προγράμματος Σπουδών Τμήματος Πληροφορικής Α.Τ.Ε.Ι Θεσσαλονίκης Μάθημα Οργάνωση.
Διαχείριση μνήμης Υπόβαθρο Εναλλαγή Συνεχής κατανομή Σελιδοποίηση
ΑΡΧΙΤΕΚΤΟΝΙΚΗ & ΟΡΓΑΝΩΣΗ ΥΠΟΛΟΓΙΣΤΩΝ Κεφάλαιο 1 Εισαγωγή
Οργάνωση και Αρχιτεκτονική Υπολογιστών Βασικές αρχές Αρχιτεκτονικής
ΠΑΡΑΔΟΣΕΙΣ ΜΑΘΗΜΑΤΟΣ «ΜΙΚΡΟΫΠΟΛΟΓΙΣΤΕΣ 1» ΕΣΩΤΕΡΙΚΗΑΡΧΙΤΕΚΤΟΝΙΚΗ ΚΑΙ ΛΕΙΤΟΥΡΓΙΕΣ 8085 ΟΚΤΩΒΡΙΟΣ 2005.
1 Α. Βαφειάδης Αναβάθμισης Προγράμματος Σπουδών Τμήματος Πληροφορικής Τ.Ε.Ι Θεσσαλονίκης Μάθημα Προηγμένες Αρχιτεκτονικές Υπολογιστών Κεφαλαίο Τρίτο Συστήματα.
1 Α. Βαφειάδης Αναβάθμισης Προγράμματος Σπουδών Τμήματος Πληροφορικής Τ.Ε.Ι Θεσσαλονίκης Μάθημα Προηγμένες Αρχιτεκτονικές Υπολογιστών Κεφαλαίο Δεύτερο.
1 Α. Βαφειάδης Αναβάθμισης Προγράμματος Σπουδών Τμήματος Πληροφορικής Τ.Ε.Ι Θεσσαλονίκης Μάθημα Προηγμένες Αρχιτεκτονικές Υπολογιστών Κεφαλαίο Τρίτο Συστήματα.
© Processor-Memory (DRAM) Διαφορά επίδοσης Performance
1 Αναβάθμισης Προγράμματος Σπουδών Τμήματος Πληροφορικής Τ.Ε.Ι Θεσσαλονίκης Μάθημα Προηγμένες Αρχιτεκτονικές Υπολογιστών Κεφαλαίο Τέταρτο Οι κίνδυνοι της.
ΗΥ-220 Verilog HDL. Τα βασικά.... ΗΥ-220 – Ιάκωβος Μαυροειδής2 Βασική Ροή Σχεδίασης Requirements SimulateRTL Model Gate-level Model Synthesize SimulateTest.
ΜΙΚΡΟΫΠΟΛΟΓΙΣΤΗΣ.
1 Α. Βαφειάδης Αναβάθμισης Προγράμματος Σπουδών Τμήματος Πληροφορικής Τ.Ε.Ι Θεσσαλονίκης Μάθημα Προηγμένες Αρχιτεκτονικές Υπολογιστών Κεφαλαίο Δεύτερο.
Processor-Memory (DRAM) Διαφορά επίδοσης Performance
6/15/2015HY220: Ιάκωβος Μαυροειδής1 HY220 Static Random Access Memory.
1 Αρχιτεκτονική υπολογιστών Ενότητα 10 : Ομάδες εντολών: Τρόποι Διευθυνσιοδότησης και Μορφοποιήσεις Φώτης Βαρζιώτης Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό.
© Είδη των Cache Misses: 3C’s 1 Compulsory: 1 Compulsory: Συμβαίνουν κατά την πρώτη πρόσβαση σε ένα block. Το block πρέπει να κληθεί.
ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Κ.ΑΛΑΦΟΔΗΜΟΣ καθηγητής Δ.Παπαχρήστος μέλος ΕΔΙΠ ΑΕΙ ΠΕΙΡΑΙΑ ΤΤ ΠΑΝΕΠΙΣΤΗΜΙΟ Α ΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ.
Αρχιτεκτονική Υπολογιστών ΙΕΡΑΡΧΙΕΣ ΜΝΗΜΗΣ. Αρχιτεκτονική Υπολογιστών ΤΟΠΙΚΟΤΗΤΑ Χρονική Τοπικότητα (Temporal Locality) –μια λέξη μνήμης που χρησιμοποιήθηκε.
1 Διαχείριση Μνήμης Γενικά Εναλλαγή (Swapping) Συμπαγής Εκχώρηση (Contiguous Allocation) Σελιδοποίηση (Paging) Κατάτμηση (Segmentation) Κατάτμηση με Σελιδοποίηση.
Αρχιτεκτονική Υπολογιστών Ενότητα # 3: Ιεραρχία Μνήμης Διδάσκων: Γεώργιος Κ. Πολύζος Τμήμα: Πληροφορικής.
Κρυφή μνήμη (cache memory) (1/2) Εισαγωγή στην Πληροφορκή1 Η κρυφή μνήμη είναι μία πολύ γρήγορη μνήμη – πιο γρήγορη από την κύρια μνήμη – αλλά πιο αργή.
ΠΑΡΑΔΕΙΓΜΑ: ΤΑ ΕΠΙΠΕΔΑ ΥΛΙΚΟΥ – ΛΟΓΙΣΜΙΚΟΥ ΣΕ ΕΝΑΝ ΥΠΟΛΟΓΙΣΤΗ.
ΕΙΣΑΓΩΓΗ μέρος 2 ΜΙΚΡΟΕΛΕΓΚΤΕΣ - ΜΙΚΡΟΕΠΕΞΕΡΓΑΣΤΕΣ Π. ΚΩΣΤΑΡΑΚΗΣ Β. ΧΡΙΣΤΟΦΙΛΑΚΗΣ ΤΜΗΜΑ ΦΥΣΙΚΗΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ.
Τ.Ε.Ι. Κρήτης Τμ. Μηχανικών Πληροφορικής Αρχιτεκτονική Υπολογιστών 10 ο Μάθημα.
Κύρια Μνήμη Διάφοροι τύποι μνήμης RAM Από πάνω προς τα κάτω, DIP, SIPP, SIMM (30-pin), SIMM (72-pin), DIMM (168-pin), DDR DIMM (184-pin). Μνήμη RΟM.
Τεχνολογικό Εκπαιδευτικό Ίδρυμα Θεσσαλίας Αρχιτεκτονική Η/Υ ΙΙ Ενότητα #3: Σελιδοποίηση – Κατάτμηση στην Κύρια Μνήμη Νικόλαος Χ. Πετρέλλης Σχολή Τεχνολογικών.
1 Λειτουργικά Συστήματα Ενότητα 9 : Ιδεατή Μνήμη 1/2 Δημήτριος Λιαροκάπης Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου.
ΔIAXEIPIΣH MNHMHΣ.
Εικονική Μνήμη (virtual memory)
Θεωρήστε το λογικό χώρο διευθύνσεων που αποτελείται από 8 σελίδες των 1024 λέξεων (word) η καθεμία, που απεικονίζεται σε φυσική μνήμη 32 πλαισίων. Πόσα.
Καθηγητής Σταύρος Α. Κουμπιάς
O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control) 4 κατηγορίες εντολών: Αριθμητικές-λογικές εντολές (add, sub, slt κλπ) –R Type.
Δυναμικός Κατακερματισμός
Structure of Management Information (SMI)
Ενότητα 5 : Οργάνωση Υλικού Υπολογιστών Δρ. Γκόγκος Χρήστος
Single-cyle υλοποίηση:
ΟΙ ΜΙΚΡΟΕΠΕΞΕΡΓΑΣΤΕΣ ΤΗΣ INTEL
MIPS: Σύνολο εντολών, γλώσσα μηχανής & μεθοδολογία σχεδίασης
Αρχιτεκτονική Υπολογιστών 5ο Εξάμηνο,
1 Οργάνωση και Αρχιτεκτονική Υπολογιστών A. Βαφειάδης Πρόγραμμα Αναβάθμισης Προγράμματος Σπουδών Τμήματος Πληροφορικής Α.Τ.Ε.Ι Θεσσαλονίκης Μάθημα Οργάνωση.
O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control) 4 κατηγορίες εντολών: Αριθμητικές-λογικές εντολές (add, sub, slt κλπ) –R Type.
Θέματα Φεβρουαρίου
Single-cyle υλοποίηση:
Ο ΜΙΚΡΟΕΠΕΞΕΡΓΑΣΤΗΣ MIPS R10000
Αρχιτεκτονική ΙΑ-64 Προηγμένες Αρχιτεκτονικές Υπολογιστών
Υλικό - Λογισμικό Υλικό (Hardware) Λογισμικό (Software)
Single-cyle υλοποίηση:
Single-cyle υλοποίηση:
O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control) 4 κατηγορίες εντολών: Αριθμητικές-λογικές εντολές (add, sub, slt κλπ) –R Type.
UNIT 1 Τα Πρώτα Προγράμματα.
O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control) 4 κατηγορίες εντολών: Αριθμητικές-λογικές εντολές (add, sub, slt κλπ) –R Type.
Μεταγράφημα παρουσίασης:

Translation Lookaside Buffers Φροντιστήριο του μαθήματος “Προηγμένοι Μικροεπεξεργαστές”

Πως γίνεται η μετάφραση Τα bits 31:22 μας δείχνουν το offset του σχετικού directory entry μέσα στο Page Directory Τα bits 21:12 μας δείχνουν το offset του σχετικού page-table entry μέσα στο Page Table. Τα bits 11:0 μας δείχνουν το offset της μεταβλητής μέσα στο Page 3 memory accesses για την προσπέλαση μίας μεταβλητής  Προφανώς δεν γίνεται να κάνουμε την ίδια διαδικασία για κάθε ξεχωριστή μεταβλητή

Translation Lookaside Buffer Η Λύση:  Μία cache μνήμη που θα αποθηκεύει αντιστοιχίες virtual σε physical διευθύνσεις  TLB Κάθε εγγραφή του TLB περιέχει:  Τα 20 high-order bits της virtual address  Τα 20 high-order bits της αντίστοιχης physical address  4 control bits Για pages που η physical address τους βρίσκεται στο TLB  Μόνο ένα access

TLB και x86 architecture Η δομή και οι μέθοδοι ελέγχου του TLB δεν αποτελούν κομμάτι της x86 αρχιτεκτονικής  Σε κάθε διαφορετικό μοντέλο η υλοποίηση μπορεί και συνήθως είναι αρκετά διαφορετική

TLB και x86 architecture

Έλεγχος των TLB Τα περιεχόμενα των TLB είναι προσπελάσιμα μέσω των test registers TR6 και TR7 TR7 TR6

Έλεγχος των TLB – TR6 TR6:  Bit 0: Δηλώνει αν θέλουμε να αναζητήσουμε (1) ή να γράψουμε (0) ένα TLB  Bit 1: Δηλώνει αν θέλουμε να ενεργήσουμε στο instruction (0) ή στο data (1) TLB  Bits 31:12 : Το page που ψάχνουμε να δούμε αν περιέχεται στο TLB ή που θέλουμε να προσθέσουμε TR7 TR6

Έλεγχος των TLB – TR7 TR7:  Bit 4: Δείχνει αν κατά την αναζήτηση ενός page είχαμε hit στο TLB  Bits 31:12 : Αν αναζητούσαμε και είχαμε hit περιέχουν την physical address που αντιστοιχεί στο page που αναζητήσαμε Αν γράφουμε ένα TLB θέτουμε εδώ το physical address που θέλουμε να αντιστοιχεί στο page που ορίσαμε στον TR6 TR7 TR6

Έλεγχος των TLB Μετά τους Pentium οι TR6 και TR7 μετατράπηκαν σε Model Specific Registers που διαβάζονται με την εντολή RDMSR και γράφονται με την εντολή WRMSR RDMSR:  Διαβάζει τον MSR που καθορίζεται από τον ECX στους καταχωρητές EDX:EAX WRMSR:  Γράφει τα περιεχόμενα των καταχωρητών EDX:EAX στον MSR που καθορίζεται από τον ΕCX Ο TR6 χρησιμοποιείται με ECX=8 και ο TR7 με ECX=9

Παράδειγμα ελέγχου του D-TLB next: mov eax,PAGE_NO ;load eax with the page number or eax,01h;we search for that page or eax,02h;and we search in the D-TLB mov ecx,08h ;WRMSR refers to TR6 wrmsr ;so TR6 <= eax mov ecx,09h ;RDMSR refers to TR7 rdmsr ;so eax <= TR7 and al,10h;leave only the hit bit jz miss ;if zero, page not in TLB hit: ;print that page PAGE_NO was found and ;to which physical page frame it corresponds miss: ;print that page PAGE_NO was not found