Μικροπρογραμματιζόμενη Λογική

15
Μικροπρογραμματιζόμενη Λογική Μειονεκτήματα καλωδιωμένης λογικής (hardwired logic): • Πολυπλοκότητα συνδυαστικού κυκλώματος ΜΕ • Αδυναμία αλλαγής των εντολών της γλώσσας μηχανής Wilkes, 1951: Μικροπρογραμματιζόμενη Λογική (microprogrammed logic) Παρένθεση: Αρχιτεκτονική πολλών καταχωρητών Ο TRN είναι κλασσικό παράδειγμα υπολογιστή του ενός καταχωρητή – συσσωρευτή Για να γίνει οποιαδήποτε πράξη, πρέπει πρώτα να μετακινηθούν πληροφορίες από την κεντρική μνήμη

description

Μικροπρογραμματιζόμενη Λογική. Μειονεκτήματα καλωδιωμένης λογικής (hardwired logic): Πολυπλοκότητα συνδυαστικού κυκλώματος ΜΕ Αδυναμία αλλαγής των εντολών της γλώσσας μηχανής Wilkes, 1951: Μικροπρογραμματιζόμενη Λογική (microprogrammed logic) Παρένθεση: Αρχιτεκτονική πολλών καταχωρητών - PowerPoint PPT Presentation

Transcript of Μικροπρογραμματιζόμενη Λογική

Page 1: Μικροπρογραμματιζόμενη Λογική

Μικροπρογραμματιζόμενη Λογική

Μειονεκτήματα καλωδιωμένης λογικής (hardwired logic):

• Πολυπλοκότητα συνδυαστικού κυκλώματος ΜΕ

• Αδυναμία αλλαγής των εντολών της γλώσσας μηχανής

Wilkes, 1951: Μικροπρογραμματιζόμενη Λογική (microprogrammed logic)

Παρένθεση: Αρχιτεκτονική πολλών καταχωρητών

Ο TRN είναι κλασσικό παράδειγμα υπολογιστή του ενός καταχωρητή – συσσωρευτή

Για να γίνει οποιαδήποτε πράξη, πρέπει πρώτα να μετακινηθούν πληροφορίες από την κεντρική μνήμη στον ACC και στη συνέχεια τα αποτελέσματα να αποθηκευθούν πάλι στη μνήμη

Page 2: Μικροπρογραμματιζόμενη Λογική

Αρχιτεκτονική Πολλών Καταχωρ.Αν υπήρχαν πολλοί καταχωρητές θα μπορούσαν να χρησιμοποιηθούν πολλά ορίσματα σε μία εντολή:

ADD R1, R2, R3

A1

Am

ALU

ΜUX Xj ΜUX Yj

X Y

Αποπλέκτης

Ζ

ε3

ε1 ε2

ε4

Page 3: Μικροπρογραμματιζόμενη Λογική

Αρχιτεκτονική Πολλών Καταχωρ.To σήμα ε1 καθορίζει ποιος καταχωρητής θα συνδεθεί με το διάδρομο Χ

Το σήμα ε2 καθορίζει ποιος καταχωρητής θα συνδεθεί με το διάδρομο Υ

Το σήμα ε3 καθορίζει ποια πράξη θα εκτελεστεί

Το σήμα ε4 καθορίζει ποιος καταχωρητής θα δεχθεί το αποτέλεσμα

mk 2logΓια m καταχωρητές, το μήκος των ε1, ε2, ε4 είναι

Tο μήκος του ε3 είναι: p2log Όπου p ο αριθμός των πράξεων

Για να περιγραφεί μία μικρολειτουργία του τμήματος επεξεργασίας απαιτούνται pmq 22 loglog3 δυαδικά ψηφία

Page 4: Μικροπρογραμματιζόμενη Λογική

Μικροπρογραμματιζόμενη ΛογικήΈνα πλήθος q τέτοιων δυαδικών ψηφίων της μορφής ε1 ε2 ε3 ε4 ονομάζεται λέξη ελέγχου (control word).

Μία ακολουθία από λέξεις ελέγχου καθορίζει μία σύνθετη λειτουργία της ΚΜΕ και μπορεί να αντιστοιχεί σε μία εντολή γλώσσας μηχανής

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

Το κάθε δυαδικό ψηφίο της λέξης ελέγχου αντιστοιχεί σε ένα σήμα ελέγχου που μπορεί να ενεργοποιήσει μία στοιχειώδη λειτουργία

Στην περίπτωση μικροπρογραμματιζόμενης ΚΜΕ οι λέξεις ελέγχου που ανακαλούνται και εκτελούνται διαδοχικά ονομάζονται και μικροεντολέςμικροεντολές

Page 5: Μικροπρογραμματιζόμενη Λογική

Μικροπρογραμματιζόμενη ΛογικήΣε κάθε εντολή γλώσσας μηχανής αντιστοιχεί και μία ακολουθία μικροεντολών

Ο καταχωρητής μικροεντολών (MIR) δέχεται την ανακαλούμενη από τη μνήμη ελέγχου μικροεντολή

Το περιεχόμενο του μετρητή μικροπρογράμματος (MPC) καθορίζει τη θέση στη μνήμη ελέγχου της επόμενης προς εκτέλεση μικροεντολής

Αν σε μία μικροεντολή καθορίζονται διάφορες μικρολειτουργίες αυτές υποτίθεται ότι μπορούν να εκτελεστούν παράλληλα

Κατακόρυφη μικροεντολή: η μικροεντολή καθορίζει μία μόνο μικρολειτουργία

Οριζόντια μικροεντολή: η μικροεντολή καθορίζει πολλές μικρολειτουργίες

Page 6: Μικροπρογραμματιζόμενη Λογική

Μορφή Μικροεντολών

Πεδίο ελέγχου 1

m1

Αποκωδ. 1

2 m1

Πεδίο ελέγχου 2

m2

Αποκωδ. 2

2 m2

Πεδίο ελέγχου k

mk

Αποκωδ. k

2 mk

Πεδίο Εντολής ελέγχου

Πεδίο Συνθήκης

Πεδίο επόμενης

διεύθυνσης

Μικρολειτουργίες που αντιστοιχούν στο ίδιο πεδίο της μικροεντολής δεν μπορούν να εκτελεσθούν ταυτοχρόνως

Page 7: Μικροπρογραμματιζόμενη Λογική

Σχεδίαση TRN με μικρο/μενη ΚΜΕ

ΜΝΗΜΗ ΕΛΕΓΧΟΥ

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

MIR

ΑΠ

ΟΚ

ΩΔ

ΙΚΟ

ΠΟ

ΙΗΤ

ΕΣ

Σήματακατάστασης

από τηνμονάδα

επεξεργασίας

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

επεξεργασίας

Page 8: Μικροπρογραμματιζόμενη Λογική

Σχεδίαση TRN με μικρο/μενη ΚΜΕ

1. ARPC TPCAR Π1 00001

2. Read READ Π1 00010

3. PCPC+1 INCPC Π2 001

4. IRBR TBRIR Π1 00011

5. ARBR(AP) TBRAR Π2 010

6. ARIR(AP)+I ADDIRIAR Π1 00100

7. ABR TBRA Π1 00101

8. XBR TBRX Π1 00110

9. IBR(AP) TBRI Π1 00111

Page 9: Μικροπρογραμματιζόμενη Λογική

Σχεδίαση TRN με μικρο/μενη ΚΜΕ

• Η μορφή της μικροεντολής προκύπτει από την εξέταση όλων των μικρολειτουργιών του TRN

• Οι μικρολειτουργίες που αφορούν τον μετρητή ακολουθίας (SC) και τον καταχωρητή κύκλων F δεν χρειάζονται

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

ΠεδίοΕντολής Ελέγχου

ΠεδίοΣυνθήκης

ΠεδίοΕπόμενης διεύθυνσης

ΠεδίοΕλέγχου 1

ΠεδίοΕλέγχου 2

ΠεδίοΕλέγχου 3

ΠροςΣυνεχιστή

Προς μονάδαεπεξεργασίας

5 bits 3 bits 1 bit

Page 10: Μικροπρογραμματιζόμενη Λογική

Πεδίο εντολής ελέγχου• Το πεδίο εντολής ελέγχου έχει μήκος 2 bits :

Πεδ. εντολής ελέγχου λ1λ2

Μνημονικό όνομα Λειτουργία

00 JMP(JuMP)

MPC Περιεχόμενο πεδίου επόμενης διεύθυνσης, εάν η συνθήκη είναι αληθής (1).

    MPC MPC+1, εάν η συνθήκη που περιγράφεται στο πεδίο συνθήκης είναι ψευδής (0).

01 JSR(Jump to

SubRoutine)

Q MPC+1, εάν η συνθήκη που περιγράφεται στο πεδίο συνθήκης είναι αληθής (1).

    MPC Περιεχόμενο πεδίου επόμενης διεύθυνσης, εάν η συνθήκη είναι αληθής (1).

    MPC MPC+1, εάν η συνθήκη που περιγράφεται στο πεδίο συνθήκης είναι ψευδής (0).

10 JIQ MPC Q

  (Jump Indirect on Q)    

11 JIR MPC(2,6) IR(15,19)

  (Jump indirect on IR) MPC(0,1) 00

Page 11: Μικροπρογραμματιζόμενη Λογική

Πεδίο συνθήκης• Το πεδίο συνθήκης έχει μήκος 3 bits :

Περιεχόμενο πεδίου συνθήκης

Μνημονικό όνομα

Συνθήκη

000 U Χωρίς συνθήκη

001 E ¨Εμμεση προσπέλαση

010 D Προσπέλαση με δεικτοδότηση

011 Z A=0

100 V Υπερχείλιση

101 S A<0

110 R IR(12)=1 δηλ. IR(0,12)<0

111 IG I>0

Page 12: Μικροπρογραμματιζόμενη Λογική

Πεδίο επόμενης διεύθυνσης• Περιέχει τη διεύθυνση της επόμενης μικροεντολής που θα εκτελεστεί, εφόσον πληρείται η συνθήκη του πεδίου συνθήκης.

• Αλλιώς, εκτελείται η μικροεντολή που βρίσκεται στην επόμενη θέση της μνήμης ελέγχου

• Όταν το μικροπρόγραμμα είναι γραμμένο σε συμβολική γλώσσα, τότε στο πεδίο της επόμενης διεύθυνσης υπάρχει το μνημονικό όνομα CONT που σημαίνει «συνέχισε με την επόμενη εντολή»

Page 13: Μικροπρογραμματιζόμενη Λογική

Μικρορουτίνες εντολών label: op (cond, address) μ1, μ2, μ3 * σχόλια

label: επιγραφή της εντολής

op: λειτουργία της εντολής (JMP, JSR, JIQ, JIR)

cond: συνθήκη που πρέπει να ισχύει για να εκτελεσθεί η εντολή ελέγχου

address: επόμενη διεύθυνση του μικροπρογράμματος

μ1, μ2, μ3: μικρολειτουργίες της μικροεντολής

Π.χ.

TAG: JMP (S, FETCH), ΤΒRPC

Εκτέλεση της μικρολειτουργίας TBRPC. Η επόμενη μικροεντολή που θα εκτελεστεί είναι στη θέση FETCH (αν A<0), αλλιώς στη θέση TAG+1

Page 14: Μικροπρογραμματιζόμενη Λογική

Μικρορουτίνες εντολών ΤRN

000 FETCH: JMP(U ,CONT ),TPCAR AP PC

001 JMP(U ,CONT ),READ ,INCRPC ανάγνωση από την μνήμη; PC PC+1

002 JIR(U ,FETCH ),TBRIR ,TBRAR IR BR; AR BR(AP)

003 JMP(U ,FETCH ),NOP

004 LDA: JSR(D ,INDEX ) άλμα στην ρουτίνα δεικτοδοτημένης αναφοράς

005 JSR(E ,INDRCT) άλμα στην ρουτίνα έμμεσης αναφοράς

006 JMP(U ,CONT ),READ ανάγνωση από την μνήμη

007 JMP(U ,FETCH ),TBRA A BR

Page 15: Μικροπρογραμματιζόμενη Λογική

12 ... E D 120 ... 0

Z V S

Συνδυαστικόκύκλωμα

B

MUX

Αύξησηκατά "1"

MPC

Μνήμηελέγχου

Q

Πεδία ελέγχουΠ1, Π2, Π3

λ1 λ0Πεδίο εντολής

ελέγχου

Πεδίοσυνθήκης

Πεδίοεπόμενης

διεύθυνσης

Αποκωδικοποιητές

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

I IR

M1

M0

C

IR(12)

IG

0 0

0123

1

0