Chapter 16 Control Unit Implemntation. A Basic Computer Model.

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Handling Local Variables General Purpose Registers
Advertisements

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ Φροντιστήρια Εισηγητής: Σπύρος Αργυρόπουλος Μέλος ΕΤΕΠ Εργαστήριο Προγραμματισμού & Τεχνολογίας Ευφυών Συστημάτων.
O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control) Σχεδίαση datapath 4 κατηγορίες εντολών: Αριθμητικές-λογικές.
Ανίχνευση κίνδυνου Επίλυση με προώθηση. Μπλέ: Εξαρτήσεις. Εξαρτήσεις προς προηγούμενα CC είναι κίνδυνοι δεδομένων Kόκκινο: Προώθηση IF/ID ID/EX EX/MEM.
Λύση: Multicycle υλοποίηση Single-cyle υλοποίηση: Διάρκεια κύκλου ίση με τη μεγαλύτερη εντολή-worst case delay (εδώ η lw) = χαμηλή.
© Pipeline: Ένα παράδειγμα από ….τη καθημερινή ζωή 1.Πλυντήριο 2.Στεγνωτήριο 3.Δίπλωμα 4.αποθήκευση 30 min κάθε «φάση» Σειριακή προσέγγιση.
1 Pipeline: Ένα παράδειγμα από ….τη καθημερινή ζωή 1.Πλυντήριο 2.Στεγνωτήριο 3.Δίπλωμα 4.αποθήκευση 30 min κάθε «φάση» Σειριακή προσέγγιση για 4 φορτία.
Υπερβαθμωτή (superscalar) Οργάνωση Υπολογιστών
1 Οργάνωση και Αρχιτεκτονική Υπολογιστών A. Βαφειάδης Πρόγραμμα Αναβάθμισης Προγράμματος Σπουδών Τμήματος Πληροφορικής Α.Τ.Ε.Ι Θεσσαλονίκης Μάθημα Οργάνωση.
Οργάνωση και Αρχιτεκτονική Υπολογιστών Βασικές αρχές Αρχιτεκτονικής
Multi-threading Κορομηνάς Κωνσταντίνος – Μ437
Multi-threading Κορομηνάς Κωνσταντίνος – Μ437 Χατζηανδρέου Ελένη - Μ400 Χήνου Διονυσία – Μ364.
1 Κλήσεις συναρτήσεων και προγραμματισμός με μηχανές καταστάσεων.
Υπερβαθμωτή (superscalar) Οργάνωση Υπολογιστών.
6/15/2015HY220: Ιάκωβος Μαυροειδής1 HY220 Static Random Access Memory.
ΗΥ Παπαευσταθίου Γιάννης1 Clock generation.
ΗΥ Καλοκαιρινός Γιώργος1 PCI Bus Pin List. ΗΥ Καλοκαιρινός Γιώργος2 Initiator Target.
ΗΥ Καλοκαιρινός Γιώργος1 Bus. ΗΥ Καλοκαιρινός Γιώργος2 MCS51.
6/26/2015HY220: Ιάκωβος Μαυροειδής1 HY220 Asynchronous Circuits.
Week 11 Quiz Sentence #2. The sentence. λαλο ῦ μεν ε ἰ δότες ὅ τι ὁ ἐ γείρας τ ὸ ν κύριον Ἰ ησο ῦ ν κα ὶ ἡ μ ᾶ ς σ ὺ ν Ἰ ησο ῦ ἐ γερε ῖ κα ὶ παραστήσει.
Ο PID έλεγχος. Integral Lag Distance velocity lag Υλοποιούμε την.
Προσομοίωση Δικτύων 4η Άσκηση Σύνθετες τοπολογίες, διακοπή συνδέσεων, δυναμική δρομολόγηση.
Σχεδίαση ψηφιακών συστημάτων Ενότητα 4: Finite State Machines Algorithmic State Machine (ASM) Charts, and VHDL code Ιωάννης Βογιατζής Τμήμα Μηχανικών Πληροφορικής.
ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Κ.ΑΛΑΦΟΔΗΜΟΣ καθηγητής Δ.Παπαχρήστος μέλος ΕΔΙΠ ΑΕΙ ΠΕΙΡΑΙΑ ΤΤ ΠΑΝΕΠΙΣΤΗΜΙΟ Α ΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ.
Αρχιτεκτονική Υπολογιστών Ενότητα # 3: Ιεραρχία Μνήμης Διδάσκων: Γεώργιος Κ. Πολύζος Τμήμα: Πληροφορικής.
Αριθμητική Επίλυση Διαφορικών Εξισώσεων 1. Συνήθης Δ.Ε. 1 ανεξάρτητη μεταβλητή x 1 εξαρτημένη μεταβλητή y Καθώς και παράγωγοι της y μέχρι n τάξης, στη.
ΕΙΣΑΓΩΓΉ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΉ ΝΊΚΟΣ ΠΑΠΑΔΆΚΗΣ Αρχιτεκτονική Υπολογιστών.
Αρχιτεκτονική Υπολογιστών DATAPATH & CONTROL. Αρχιτεκτονική Υπολογιστών DATAPATH & CONTROL Για κάθε εντολή υπάρχουν δυο βήματα που πρέπει να γίνουν: –Προσκόμιση.
Υπολογιστικά συστήματα: Στρώματα
Διασύνδεση LAN Γιατί όχι μόνο ένα μεγάλο LAN
Καθηγητής Σταύρος Α. Κουμπιάς
Υπερβαθμωτή (superscalar) Οργάνωση Υπολογιστών
O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control) 4 κατηγορίες εντολών: Αριθμητικές-λογικές εντολές (add, sub, slt κλπ) –R Type.
Ενότητα 5 : Οργάνωση Υλικού Υπολογιστών Δρ. Γκόγκος Χρήστος
Εισαγωγή στους Η/Υ Ενότητα 7: Η οργάνωση ενός Η/Υ Ιωάννης Σταματίου
Τ.Ε.Ι. Κρήτης Τμ. Μηχανικών Πληροφορικής Αρχιτεκτονική Υπολογιστών
Αντικειμενοστραφής Προγραμματισμός ΙΙ
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
Αντίληψη Αντίληψη του φυσικού κόσμου που μας περιβάλλει, μέσω του νευρικού μας συστήματος (sensory perception). Η αντίληψη αποτελεί δημιούργημα του εγκεφάλου.
Lab 4 Εισαγωγή στον προγραμματισμό Assembly ARM
INSTRUCTIONS LANGUAGE OF THE MACHINE
Ψηφιακeς ιδEες και αξIες
Single-cyle υλοποίηση:
Υπερβαθμωτή (superscalar) Οργάνωση Υπολογιστών
Υπερβαθμωτή (superscalar) Οργάνωση Υπολογιστών
φίλτρα IIR (Infinite Impulse Response)
Κεντρική Μονάδα Επεξεργασίας
Παράγοντες που επηρεάζουν την επίδοση της CPU
ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ
Pipeline: Ένα παράδειγμα από ….τη καθημερινή ζωή
1 Οργάνωση και Αρχιτεκτονική Υπολογιστών A. Βαφειάδης Πρόγραμμα Αναβάθμισης Προγράμματος Σπουδών Τμήματος Πληροφορικής Α.Τ.Ε.Ι Θεσσαλονίκης Μάθημα Οργάνωση.
O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control) 4 κατηγορίες εντολών: Αριθμητικές-λογικές εντολές (add, sub, slt κλπ) –R Type.
Οσμές στη Σχεδίαση του Λογισμικού
Single-cyle υλοποίηση:
Υπερβαθμωτή (superscalar) Οργάνωση Υπολογιστών
ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ Ι
Πανεπιστήμιο Θεσσαλίας
Εισαγωγή στην Τεχνολογία
aka Mathematical Models and Applications
Υπερβαθμωτή (superscalar) Οργάνωση Υπολογιστών
Αρχιτεκτονική Υπολογιστών
Single-cyle υλοποίηση:
O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control) 4 κατηγορίες εντολών: Αριθμητικές-λογικές εντολές (add, sub, slt κλπ) –R Type.
Single-cyle υλοποίηση:
Single-cyle υλοποίηση:
O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control) 4 κατηγορίες εντολών: Αριθμητικές-λογικές εντολές (add, sub, slt κλπ) –R Type.
CPSC-608 Database Systems
O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control) 4 κατηγορίες εντολών: Αριθμητικές-λογικές εντολές (add, sub, slt κλπ) –R Type.
Υπερβαθμωτή (superscalar) Οργάνωση Υπολογιστών
Μεταγράφημα παρουσίασης:

Chapter 16 Control Unit Implemntation

A Basic Computer Model

Example Simple Processor & Data Paths

MIPS Data Paths with Generation of Control Signals Note: This figure does not show J (jump) type instruction Data Paths

A Simple Computer & its Control Unit

Control Signal Sources Clock —One micro-instruction (or set of parallel micro-instructions) per clock cycle Instruction Register —Op-code for current instruction —Determines which micro-instructions are performed Flags —State of CPU —Results of previous operations From Control Bus —Interrupts / Bus Requests —Acknowledgements

Control Signals Outputs Within CPU —Cause data movement —Activate specific functions Via Main Bus —To memory —To I/O modules

Control Signals

The Internal Bus ?

Example Simple Processor & Data Paths

State Machine for Example Simple Processor

Control Unit with Decoded Inputs

MIPS Instruction Formats

MIPS Data Paths with Generation of Control Signals Note: This figure does not show J (jump) type instruction Data Paths

MIPs Pipelined Machine with Controls IF | ID | EX | MEM | WB (64 bits) (142 bits) (107 bits) (71 bits)

Problems With Hard Wired Designs Sequencing & micro-operation logic gets complex Difficult to design, prototype, and test Resultant design is inflexible, and difficult to build upon (Pipeline, multiple computation units, etc.) Adding new instructions requires major design and adds complexity quickly

Chapter 17 Micro-Programmed Control

Example Simple Processor Micro-Programed Control

Control Unit Organization Tasks of Control Unit: Microinstruction sequencing Microinstruction execution The Control Memory contains sequences of microinstructions that provide the control signals to execute instruction cycles, e.g. Fetch, Indirect, Execute, and Interrupt. May be expected to complete instruction execution in “1” clock cycle. How is this possible ?

Recall: Micro-sequencing

Example of Control Memory Organization Microinstructions: Generate Control Signals Provide Branching

Horizontal vs Vertical Microprogramming Horizontal Microprogrammed or — Unpacked — Hard — Direct Vertical Microprogrammed or — Packed — Soft — Indirect

Microinstruction Encoding - Direct Encoding

Microinstruction Encoding - Indirect Encoding

Horizontal Micro-programming Wide control memory word High degree of parallel operations possible Little encoding of control information Faster

Vertical Micro-programming Width can be much narrower Control signals encoded into function codes – need to be decoded More complex, more complicated to program, less flexibility More difficult to modify Slower

Typical Microinstruction Formats

Example Microprogramming Formats MicroProgram Counter Subroutines Stack Control Register (MicroProgram Format)

Next Address Decision Depending on ALU flags and control buffer register: — Get next instruction –Add 1 to control address register — Jump to new routine based on jump microinstruction –Load address field of control buffer register into control address register — Jump to machine instruction routine –Load control address register based on opcode in IR

Microprogrammed Control Unit

Design Considerations Necessity of speed Size of Microinstructions Address generation —Branches –Both conditional and unconditional –Based on current microinstruction, condition flags, contents of IR –Based on format of address information +Two address fields +Single address field +Variable format

Branch Control: Two Address Fields Branch based upon: Instruction Opcode Address 1 Address 2 Does require a wide microinstruction, but no address calculation is needed

Branch Control: Single Address Field Branch based upon: Next instruction Address Opcode Does require more circuitry, e.g. adder

Branch Control: Variable Format One bit determines microinstruction format: Control signal format Branch format Does require even more circuitry, and is slowest.

Advantages and Disadvantages of Microprogramming Advantage: Simplifies design of control unit —Cheaper to design —Less error-prone —Much easier to modify —Supports having multiple versions / models Disadvantage: Slower More expensive to produce in quantities