Μοντέλα Αρχιτεκτονικής στην Σύνθεση



Σχετικά έγγραφα
«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Μηχανές Πεπερασμένων Καταστάσεων

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

ς Ποιότητα ξιολόγηση Α

Σύνθεση Data Path. ιασύνδεσης. Μονάδες. Αριθµό Μονάδων. Τύπο Μονάδων. Unit Selection Unit Binding. λειτουργιών σε. Μονάδες. Αντιστοίχιση µεταβλητών &

PLD. Εισαγωγή. 5 η Θεµατική Ενότητα : Συνδυαστικά. PLAs. PLDs FPGAs

Άσκηση 3 Ένα νέο είδος flip flop έχει τον ακόλουθο πίνακα αληθείας : I 1 I 0 Q (t+1) Q (t) 1 0 ~Q (t) Κατασκευάστε τον πίνακα

ΗΜΥ 210 ΣΧΕΔΙΑΣΜΟΣ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ. Χειµερινό Εξάµηνο 2016 ΔΙΑΛΕΞΗ 15: Καταχωρητές (Registers)

Σχεδίαση Ψηφιακών Συστημάτων

ιαµέριση - Partitioning

Περίληψη. ΗΜΥ-210: Λογικός Σχεδιασµός Εαρινό Εξάµηνο Παράδειγµα: Καταχωρητής 2-bit. Καταχωρητής 4-bit. Μνήµη Καταχωρητών

Κυκλώµατα µε MSI. υαδικός Αθροιστής & Αφαιρέτης

Μοντέλα. χαρακτηριστικά χωρίς να συνοδεύεται από λεπτοµέρειες.

ΠΡΟΓΡΑΜΜΑ ΣΠΟΥ ΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ

Τεχνικές βελτιστοποίησης µε σκοπό την επίτευξη χαµηλής κατανάλωσης ισχύος

7 η Θεµατική Ενότητα : Καταχωρητές, Μετρητές και Μονάδες Μνήµης

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

Σχεδίαση Βασικών Κυκλωµάτων. Χρ. Καβουσιανός. Επίκουρος Καθηγητής

100 ΕΡΩΤΗΣΕΙΣ ΜΕ ΤΙΣ ΑΝΤΙΣΤΟΙΧΕΣ ΑΠΑΝΤΗΣΕΙΣ ΓΙΑ ΤΟ ΜΑΘΗΜΑ ΨΗΦΙΑΚΑ ΚΥΚΛΩΜΑΤΑ

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

Ολοκληρωμένα Κυκλώματα

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

ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ. Κεφάλαιο 3

Πανεπιστήμιο Πατρών Τμήμα Φυσικής Εργαστήριο Ηλεκτρονικής. Ψηφιακά Ηλεκτρονικά. Συνδυαστική Λογική. Επιμέλεια Διαφανειών: Δ.

ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ Γ ΕΠΑΛ 14 / 04 / 2019

3 η Θεµατική Ενότητα : Σύγχρονα Ακολουθιακά Κυκλώµατα. Επιµέλεια διαφανειών: Χρ. Καβουσιανός

Περιεχόµενα. Πρόλογος Εισαγωγή 21

26-Nov-09. ΗΜΥ 210: Λογικός Σχεδιασμός, Χειμερινό Εξάμηνο Καταχωρητές 1. Διδάσκουσα: Μαρία Κ. Μιχαήλ

«Σχεδιασμός Ψηφιακών Συστημάτων σε FPGA» Εαρινό εξάμηνο

Καταστάσεων. Καταστάσεων

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Ακολουθιακός Κώδικας

ΗΜΥ 210: Σχεδιασμός Ψηφιακών Συστημάτων. Καταχωρητές 1

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ

Κεφάλαιο 7 ο. Γ. Τσιατούχας. VLSI Technology and Computer Architecture Lab. Ακολουθιακή Λογική 2

«Σχεδιασμός Ψηφιακών Συστημάτων σε FPGA» Εαρινό εξάμηνο Διάλεξη 8 η : Μηχανές Πεπερασμένων Κaταστάσεων σε FPGAs

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

ΗΜΥ211 Εργαστήριο Ψηφιακών Συστημάτων

Χρ. Καβουσιανός Επίκουρος Καθηγητής

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

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

K24 Ψηφιακά Ηλεκτρονικά 9: Flip-Flops

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

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

Κυκλώµατα. Εισαγωγή. Συνδυαστικό Κύκλωµα

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

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

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

Εργαστήριο Ψηφιακής Σχεδίασης

Φόρμα Σχεδιασμού Διάλεξης (ημ/α:15/10/07, έκδοση:0.1 ) 1. Κωδικός Μαθήματος : 2. Α/Α Διάλεξης : 1 1. Τίτλος : 1. Εισαγωγή στην Αρχιτεκτονική Η/Υ

Ακολουθιακά Κυκλώµατα. ΗΜΥ 210: Λογικός Σχεδιασµός, Εαρινό Εξάµηνο Ακολουθιακά Κυκλώµατα (συν.) Ακολουθιακή Λογική: Έννοια

Behavioral & Mixed VHDL Architectures Finite State Machines in VHDL

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

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

Περιεχόμενα. Πρόλογος... XI. Κεφάλαιο 1. Συστήματα Βασισμένα σε FPGA Κεφάλαιο 2. Τεχνολογία VLSI Εισαγωγή Βασικές Αρχές...

Ασύγχρονοι Απαριθμητές. Διάλεξη 7

ΗΜΥ 210 ΣΧΕΔΙΑΣΜΟΣ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ. Χειµερινό Εξάµηνο 2016 ΔΙΑΛΕΞΗ 18: Διαδικασία Σχεδίασης Ψηφιακών Συστηµάτων - Επανάληψη

ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΚΑΡΑΓΚΙΑΟΥΡΗΣ ΝΙΚΟΛΑΟΣ

ΔΙΑΧΥΤΑ ΚΑΙ ΕΝΣΩΜΑΤΩΜΕΝΑ ΣΥΣΤΗΜΑΤΑ

ΠΕΡΙΕΧΟΜΕΝΑ Υλικό και Λογισμικό Αρχιτεκτονική Υπολογιστών Δομή, Οργάνωση και Λειτουργία Υπολογιστών 6

ΠΕΡΙΕΧΟΜΕΝΑ. Πρόλογος...9 ΚΕΦ. 1. ΑΡΙΘΜΗΤΙΚΑ ΣΥΣΤΗΜΑΤΑ - ΚΩΔΙΚΕΣ

Behavioral & Mixed VHDL Architectures Finite State Machines in VHDL

Περίληψη. ΗΜΥ-210: Λογικός Σχεδιασµός Εαρινό Εξάµηνο Μετρητής Ριπής (Ripple Counter) Μετρητές (Counters) Μετρητής Ριπής (συν.

Ψηφιακή Λογική Σχεδίαση

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

Πανεπιστήμιο Πατρών Τμήμα Φυσικής Εργαστήριο Ηλεκτρονικής. Ψηφιακά Ηλεκτρονικά. Μονάδες Μνήμης και Διατάξεις Προγραμματιζόμενης Λογικής

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

Σελίδα 1 από 11. Απαντήσεις στο φυλλάδιο 57 Ερώτηση: 1 η : Οι ακροδέκτες αυτοί χρησιµοποιούνται για:

Ενότητα ΑΡΧΕΣ ΑΚΟΛΟΥΘΙΑΚΗΣ ΛΟΓΙΚΗΣ LATCHES & FLIP-FLOPS

ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ II. χειμερινό εξάμηνο & εαρινό εξάμηνο (σε κίτρινο υπόβαθρο)

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

ΑΣΚΗΣΗ 9. Tα Flip-Flop

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

i Στα σύγχρονα συστήματα η κύρια μνήμη δεν συνδέεται απευθείας με τον επεξεργαστή

ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙ ΕΥΤΙΚΟ Ι ΡΥΜΑ (Τ.Ε.Ι.) ΚΡΗΤΗΣ Τµήµα Εφαρµοσµένης Πληροφορικής & Πολυµέσων. Ψηφιακή Σχεδίαση. Κεφάλαιο 5: Σύγχρονη Ακολουθιακή

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

Κυκλώµατα. Εισαγωγή. Συνδυαστικό Κύκλωµα

Θέμα 1ο (3 μονάδες) Υλοποιήστε το ακoλουθιακό κύκλωμα που περιγράφεται από το κατωτέρω διάγραμμα

Ψηφιακή Σχεδίαση Ενότητα 10:

i Το τρανζίστορ αυτό είναι τύπου NMOS. Υπάρχει και το συμπληρωματικό PMOS. ; Τι συμβαίνει στο τρανζίστορ PMOS; Το τρανζίστορ MOS(FET)

Αρχιτεκτονική Επεξεργαστών Ψ.Ε.Σ

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

Ελίνα Μακρή

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

Ψηφιακή Λογική Σχεδίαση

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

Ψηφιακά Συστήματα. 8. Καταχωρητές

Ενότητα 4. Εισαγωγή στην Πληροφορική. Αναπαράσταση δεδοµένων. Αναπαράσταση πληροφορίας. υαδικοί αριθµοί. Χειµερινό Εξάµηνο

Πανεπιστήμιο Πατρών Τμήμα Φυσικής Εργαστήριο Ηλεκτρονικής. Ψηφιακά Ηλεκτρονικά. Ακολουθιακή Λογική. Επιμέλεια Διαφανειών: Δ.

ΗΥ220 Εργαστήριο Ψηφιακών Κυκλωµάτων

Πανεπιστήμιο Πατρών Τμήμα Φυσικής Εργαστήριο Ηλεκτρονικής. Ψηφιακά Ηλεκτρονικά. Καταχωρητές και Μετρητές 2. Επιμέλεια Διαφανειών: Δ.

5 η Θεµατική Ενότητα : Μνήµη & Προγραµµατιζόµενη Λογική. Επιµέλεια διαφανειών: Χρ. Καβουσιανός

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

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

Τεχνολογίες Κύριας Μνήμης

6.1 Καταχωρητές. Ένας καταχωρητής είναι μια ομάδα από f/f αλλά μπορεί να περιέχει και πύλες. Καταχωρητής των n ψηφίων αποτελείται από n f/f.

3. Συνδυαστική λογική Λογικές πύλες 4. Στοιχεία μνήμης Καταχωρητές 5. Ακολουθιακή λογική

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

ΗΜΥ 210 ΣΧΕΔΙΑΣΜΟΣ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ

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

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

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

Transcript:

Μοντέλα Αρχιτεκτονικής στην Σύνθεση

Σχεδιαστικά Στυλ & Αρχιτεκτονική Ο σχεδιαστής επιλέγει Σχεδιαστικό στυλ prioritized interrupt instruction buffer bus-oriented datapath serial I/O direct memory access π.χ. επεξεργαστής Αρχιτεκτονική αριθµός καταχωρητών αριθµός διαύλων βαθµίδες pipeline υλοποίηση εντολών προσπέλαση µνηµών Κάθε αλγόριθµος σύνθεσης έχει σαν στόχο συγκεκριµένη αρχιτεκτονική όσο πιο ρεαλιστική είναι η αρχιτεκτονική αυτή, τόσο καλύτερη η ποιότητα της σχεδίασης, και τόσο πιο εκλεπτυσµένος αλγόριθµος απαιτείται. Μοντέλα Αρχιτεκτονικής 2

Παράδειγµα µη ρεαλιστικής αρχιτεκτ. Σε έναν κύκλο ρολογιού γίνονται 1. ανάγνωση 2 τελουµένων 2. πράξη 3. αποθήκευση αποτελέσµατος Κύκλος ρολογιού = 100 ns Εξαρτηµένες πράξεις: Ανεξάρτητες πράξεις: 200ns Μοντέλα Αρχιτεκτονικής 3

Παράδειγµα µη ρεαλιστικής αρχιτεκτ. Το µοντέλο αυτό είναι πολύ απλό και µη-ρεαλιστικό Τα 3 bus κοστίζουν πολύ αφού καταλαµβάνουν µεγάλο τµήµα του χώρου. Ο κύκλος ρολογιού είναι µεγάλος Μεγάλο µέρος ρ ς του κύκλου οι µονάδες ς µένουν ανεκµετάλλευτες µ (αναµονή) αφού λειτουργούν εναλλακτικά. Η σύνθεση του είναι απλή Μοντέλα Αρχιτεκτονικής 4

Παράδειγµα ρεαλιστικής αρχιτεκτονικής. Προσθήκη καταχωρητών LIR, RIR. Βελτιώσεις: 1.Μισός κύκλος ρολογιού (50 ns). 2.Αύξηση χρόνου χρήσης µονάδων σε κάθε κύκλο. 3.Απαιτεί µόνο 2 buses Σε έναν κύκλο ρολογιού γίνονται ανάγνωση File=>LIR, RIR ή ανάγνωση File=>LIR & πράξη µε αποθήκευση στο RIR πράξη & αποθήκευση ALU=>File Απαιτεί πιο περίπλοκο αλγόριθµο σύνθεσης. Μοντέλα Αρχιτεκτονικής 5

Παράδειγµα ρεαλιστικής αρχιτεκτονικής Εξάρτηση πράξεων: 150ns = βελτίωση 25% Ανεξάρτητες πράξεις: 200ns = βελτίωση 0% Ο αλγόριθµος σύνθεσης απαιτεί διερεύνηση της εξάρτησης πράξεων για εφαρµογή ή όχι. Μοντέλα Αρχιτεκτονικής 6

Συνδυαστική Λογική Λογική Μονάδες αποθήκευσης Μονάδες λειτουργικές (επεξεργασία δεδοµένων) Καταχωρητές Αθροιστές / Πολλαπλασιαστές Αρχεία καταχωρητών ALUs Μνήµες Ολισθητές, αυξητές, Τα είδη λογικής µπορούν να κατηγοριοποιηθούν σαν sliceable (carry ripple adder) και unsliceable (carry look ahead adder). Η λογική sliceable είναι εύκολα συνθέσιµη και υλοποιήσιµη σε κύκλωµα, αλλά συνήθως όχι αποδοτική. Παράδειγµα: Αθροιστής ριπής Αθροιστής Πρόβλεψης Κρατουµένου Μοντέλα Αρχιτεκτονικής 7

Συνδυαστική Λογική Εκφράσεις Boole για αθροιστή c 0 = C in c i+1 = a i b i +c i (a i +b i ) sum i = a i EXOR b i EXOR c i C out = c 16 Sliceable Με άµεση εφαρµογή έχουµε αθροιστή ριπής UnSliceable Με αντικατάσταση c i+1 από λογική c i αναδροµικά έχουµε αθροιστή πρόβλεψης κρατουµένου. Τρόποι Περιγραφής Συνδυαστικής Λογικής: α) Εκφράσεις Βoole, β) Πίνακας Αλήθειας (για λίγες εισόδους ή για λίγους άσσους στην έξοδο). Τρόποι Υλοποίησης: ROM, PLA, Decoders, Primitive Gates Μοντέλα Αρχιτεκτονικής 8

ROM (πλήρη αθροιστή) Συνδυαστική Λογική PLA ιαφορά στο µέγεθος του decoder Μοντέλα Αρχιτεκτονικής 9

Για µικρές απαιτήσεις Συνδυαστική Λογική Πιο αποδοτικός τρόπος Μοντέλα Αρχιτεκτονικής 10

Συνδυαστική Λογική Σύγκριση Αρχιτεκτονικών Συνδυαστικών Κυκλωµάτων Η ROM είναι η πιο ακριβή. Η PLA έχει προγραµµατιζόµενο και το AND πίνακα άρα έχει µεγαλύτερη ευελιξία σε µικρότερο χώρο από την ROM. H ROM υπερτερεί όταν έχουµε πολλές εξόδους (πολλαπλή χρήση των ελαχιστόρων). Η προσθήκη µίας εισόδου στην ROM απαιτεί διπλασιασµό της επιφάνειας ενώ στην PLA αυξάνει κατά λίγο την επιφάνεια. Οι πύλες επιτρέπουν την σχεδίαση λογικής πολλαπλών επιπέδων. Οι πύλες έχουν την καλύτερη απόδοση. ROM και PLA κατασκευάζονται και ελέγχονται ευκολότερα. Μοντέλα Αρχιτεκτονικής 11

Συνδυαστική Λογική ιαδικασία Σύνθεσης για Συνδυαστικά Κυκλώµατα Compilation (µετάφραση περιγραφής σε ενδιάµεση µορφή) Minimization (ελαχιστοποίηση αριθµού και µεγέθους παραγόντων) ROM-PLA Optimization (µείωση κρίσιµων µονοπατιών) Technology Mapping (χρήση βέλτιστων πυλών για κάθε περίπτωση) Transistor Sizing (ανάλογα µε απαιτήσεις ταχύτητας / επιφάνειας) Μοντέλα Αρχιτεκτονικής 12

Finite State Mashines Είναι το πλέον χρησιµοποιούµενο µοντέλο σχεδίασης Αποτελείται από ένα σύνολο εισόδων, καταστάσεων, µεταβάσεων, και ενεργειών (εξόδων). <S, I, O, f: S x I -> S, h: S x I -> O> 1. Autonomous 2. State based Είδη Μηχανών Κατάστασης 3. Transition based 4. Machines with datapath 5. Communicating machines Μοντέλα Αρχιτεκτονικής 13

Autonomous FSMs εν υπάρχουν εξωτερικοί είσοδοι (Ι= ). Χρησιµοποιείται για µονάδες που τρέχουν ελεύθερα. Οι καταστάσεις αποθηκεύονται σε Flip Flops. Κωδικοποίηση µε 2 bits Μοντέλα Αρχιτεκτονικής 14

Autonomous FSMs Μοντέλα Αρχιτεκτονικής 15

Με Προσθήκη εξόδου ιαιρέτης µε 3 (Κάθε τρεις παλµούς η έξοδος είναι στο 1 για έναν παλµό). Autonomous FSMs Μοντέλα Αρχιτεκτονικής 16

State Based/Transition Based FSMs Έχουν σύνολο εισόδων. ιαφέρουν στον καθορισµό της συνάρτησης εξόδου: Στο state based (Moore) η έξοδος εξαρτάται µόνο από την κατάσταση του FSM (αλλάζει µόνο σε ακµές). Στο transition based d(m (Mealy) η έξοδος εξαρτάται από την κατάσταση του FSM και τις εισόδους (αλλάζει και ενδιάµεσα σε ακµές). Μοντέλα Αρχιτεκτονικής 17

Παράδειγµα State Based FSMs Παράδειγµα state based FSM (modulo 3 divider) Προσθήκη εισόδου Count που επιτρέπει την µέτρηση. Οι πίνακες είναι χωριστοί αφού η έξοδος εξαρτάται µόνο από την παρούσα κατάσταση και όχι την είσοδο. Μοντέλα Αρχιτεκτονικής 18

Παράδειγµα State Based FSMs Εξαρτάται µόνο από την κατάσταση. εν επηρεάζεται από τις αλλαγές στην είσοδο, αλλά µόνο από την παρούσα κατάσταση. Μοντέλα Αρχιτεκτονικής 19

Παράδειγµα Transition Based FSMs Παράδειγµα transition based FSM (modulo 3 divider) Ο πίνακας είναι ενιαίος αφού η έξοδος εξαρτάται από την παρούσα κατάσταση και την είσοδο. Μοντέλα Αρχιτεκτονικής 20

State Based/Transition Based FSMs Eπηρεάζεται από την αλλαγή της εισόδου Μοντέλα Αρχιτεκτονικής 21

State Based/Transition Based FSMs Η διαδικασία σύνθεσης για τα state/transition based FSMs περιλαµβάνει τα ακόλουθα βήµατα Compilation State minimization Ελαχιστ. αριθµού καταστάσεων (απαλοιφή πλεοναζόντων). Ελαχιστ. αριθµού Flip Flops Ελαχιστ. λογικής εξόδου και µετάβασης καταστάσεων (πλεονασµός καταστάσεων) State encoding (µπορεί να βοηθήσει στην ελαχιστοποίηση). Με tradeoff µπορούµε να ελαχιστοποιήσουµε αριθµό Flip Flops ή συνδυαστικής λογικής µετάβασης/εξόδου υαδική Κωδικοποίηση One-Hot Σύνθεση συναρτήσεων µετάβασης/εξόδου (συνδυαστική λογική) Μοντέλα Αρχιτεκτονικής 22

FSM with DataPath Τα FSMs αποδίδουν για ως και µερικές εκατοντάδες καταστάσεις. Απλές µονάδες (Ι/Ο interfaces) µπορεί να έχουν χιλιάδες καταστάσεις. Μοντέλο FSM µε DataPath: Κωδικοποιούµε καταστάσεις µε ακέραιες και πραγµατικές µεταβλητές (ακέραιος 16 bits = 65536 καταστάσεις). Παράδειγµα module-3 divider µε µία κατάσταση Μία µεταβλητή x (2 bits) αναπαριστά τον µετρητή Μοντέλα Αρχιτεκτονικής 23

FSM with DataPath (FSMD) Πλεονέκτηµα: εν χρειάζεται κάθε µία κατάσταση του µετρητή να είναι και κατάσταση της µηχανής. Μοντελοποιούµε την λειτουργία του DataPath δηλ. αύξηση ή µηδένιση και την ελέγχουµε µε το FSM Το κόστος σταθερό για µέτρηση έως το 2 ή µεγαλύτερο αριθµο πχ. 15.678 Μοντέλα Αρχιτεκτονικής 24

FSM with DataPath Τα µοντέλα FSMD περιγράφουν συστήµατα σε RTL. To DataPath εκτελεί τις πράξεις, ενώ το καθεαυτό FSM ελέγχει το DataPath. Μοντέλα Αρχιτεκτονικής 25

Παράδειγµα: µοντέλο επεξεργαστή σε FSMD Το µοντέλο επεξεργαστή (στην ροή εκτέλεσης εντολών) µπορεί να χρησιµοποιηθεί για την υλοποίηση FSMD: Η επόµενη κατάσταση µπορεί να είναι η παρούσα αυξηµένη κατά 1 ή µία κατάσταση διακλάδωσης αποθηκευµένη σε ROM ή PLA. Η επιλογή γίνεται από ειδικό bit ελέγχου που ελέγχει πολυπλέκτη. Το bit ελέγχου επιλέγεται και αυτό ανάµεσα µ από εισόδους ελέγχου και bit κατάστασης. Οι είσοδοι ελέγχου µπορεί να είναι κάποιες διακοπές. Τα bit κατάστασης είναι εσωτερικά (πχ status flags C, Z, N, O, ). Για κάθε bit ελέγχου αποθηκεύεται ο κατάλληλος κωδικός κατάσταση στην ROM. Μοντέλα Αρχιτεκτονικής 26

Παράδειγµα: µοντέλο επεξεργαστή σε FSMD Εξωτερικά γεγονότα (διακοπές) Ζ, S, C, O Επιλογή Επόµενης Κατάστασης Μοντέλα Αρχιτεκτονικής 27

ιαδικασία σύνθεσης για τα FSMDs: Σύνθεση για FSMDs Compilation Unit Selection (αριθµό και τύπο µονάδων αποθήκευσης, λειτουργίας, διασύνδεσης που θα χρησιµοποιηθούν) Storage Binding (ανάθεση µεταβλητών σε αποθηκευτικά στοιχεία / διαµοίραση ανάλογα µε χρόνο ζωής) Unit Binding (ανάθεση λειτουργιών σε µονάδες λειτουργίες σε διαφορετικές καταστάσεις είναι ανεξάρτητες και εκτελούνται από κοινές µονάδες) Interconnection Binding (ανάθεση µονάδων διασύνδεσης) Control Definition (δηµιουργία Boolean εκφράσεων για κάθε σήµα ελέγχου) Control Unit Synthesis Functional Unit Synthesis Μοντέλα Αρχιτεκτονικής 28

Αρχιτεκτονική Συστήµατος Σε επίπεδο συστήµατος κάθε FSMD αντιστοιχεί σε µία διαδικασία (process). Κάθε process περιγράφεται από δοµές ελέγχου (loop, if, case, ). Κάθε σύστηµα αποτελείται από συνεργαζόµενες processes και άρα από συνεργαζόµενα FSMDs. Απαιτείται επικοινωνία κυρίως µεταξύ των µηχανών καταστάσεων. Η επικοινωνία µπορεί να είναι σύγχρονη ή ασύγχρονη. modulo-3 divider 1-state FSMD Μοντέλα Αρχιτεκτονικής 29

Πρωτόκολλο HandShake FSM1: Request=1 (req. state) FSM2: Acknowledge=1 (ack state) Χρήση BUS από FSM2 FSM1: Request=0 FSM2: Acknowledge=0 Με όµοιο τρόπο (DataReady, DataReceived) µπορεί να γίνει η χρήση του Bus για επικοινωνία Μοντέλα Αρχιτεκτονικής 30

Πρωτόκολλο HandShake Ενδιάµεσα µπορεί να χρησιµοποιηθεί το bus. Όταν ο ρυθµός επικοινωνίας είναι γνωστός το πρωτόκολλο απλοποιείται. Παράδειγµα: Προσπέλαση µνήµης 1. Αίτηση στην µνήµης (Request) 2. Ανάγνωση δεδοµένων σε γνωστό χρόνο. Μοντέλα Αρχιτεκτονικής 31

Αρχιτεκτονική Συστήµατος ιαδικασία σύνθεσης σε επίπεδο συστήµατος: Compilation (µετατροπή της περιγραφής σε Control Data Flow Graph CDFG που δείχνει εξαρτήσεις δεδοµένων και ελέγχου). Partitioning (διαίρεση σε chips και υποοµάδες/chip, κάθε υποοµάδα υλοποιείται µε µια FSMD δοµή) Interface Synthesis (καθορισµός επικοινωνίας) Scheduling (διαιρεί το CDFG σε καταστάσεις ή βήµατα ελέγχου) FSMD Synthesis Μοντέλα Αρχιτεκτονικής 32

Συγχρονισµός Συστήµατος (clocking) Στα σύγχρονα συστήµατα απαιτείται ρολόϊ. Το ρολόϊ συγχρονίζει την αποθήκευση των δεδοµένων στα στοιχεία µνήµης (flip flops / latches). Έχουµε ακµοπυροδότητα flip flops και ευαίσθητα σε ακµή latches. D Q CP A D Q B CP CP D A B Μοντέλα Αρχιτεκτονικής 33

Συγχρονισµός Συστήµατος (clocking) Αφέντης - Σκλάβος Data D Q D Q Clk CP CP Η αποθήκευση σε όλα τα στοιχεία γίνεται ταυτόχρονα σε ένα σύστηµα (συγχρονισµός). Υπάρχουν περιπτώσεις που προτιµάται το ένα είδος συγχρονισµού έναντι του άλλου. Υπάρχουν περιπτώσεις που δεν µπορεί να χρησιµοποιηθεί ο συγχρονισµός ευαισθησίας σε ακµές (καταχωρητές ολίσθησης). Μοντέλα Αρχιτεκτονικής 34

Συγχρονισµός Συστήµατος (clocking) Μοντέλα Αρχιτεκτονικής 35

Συγχρονισµός Συστήµατος (clocking) Πρόβληµα: Μπορεί αφέντης σκλάβος να ανοίξουν µαζί (ευαίσθητο σε σχεδίαση κατασκευή) Μοντέλα Αρχιτεκτονικής 36

Latches clk1 Πολυφασικά ρολόγια clk2 Circuit 1 Latches Circuit 2 Πολυφασικά εν είναι ταυτόχρονα ενεργά Μοντέλα Αρχιτεκτονικής 37

ίαυλοι Είναι η πιο διαδεδοµένη µονάδα διασύνδεσης. Έχουν πολύ απλό Layout Μπορούµε να διασυνδέουµε µονάδες πολύ εύκολα. Το βασικό δοµικό στοιχείο είναι ο οδηγός τριών καταστάσεων. Τηρεί προτεραιότητες Ελεγκτής ιαύλου: FSMD Παρέχει την χρήση του Bus έχεται αιτήσεις χρήσης Μοντέλα Αρχιτεκτονικής 38

ίαυλοι Μοντέλα Αρχιτεκτονικής 39

Pipelining Αυξάνει το ποσοστό χρήσης λειτουργικών µονάδων. Μειώνει τον χρόνο κύκλου. Εισάγει περιορισµούς καθώς το αποτέλεσµα µίας πράξης δεν µπορεί να είναι διαθέσιµο για τις επόµενες πράξεις (µέχρι να βγει από το pipeline). Η µονάδα ελέγχου είναι πιο περίπλοκη. ιαιρείται η µονάδα σε βαθµίδες και πριν από κάθε βαθµίδα τοποθετείται ένα latch. Η πιο αργή βαθµίδα καθορίζει την συχνότητα ρολογιού. Μοντέλα Αρχιτεκτονικής 40

Pipelined Functional Unit Μοντέλα Αρχιτεκτονικής 41

Pipelined Control Unit Στις pipelined µονάδες ελέγχου διαιρείται σε βαθµίδες α) η λογική επόµενης κατάστασης και β) η λογική εξόδου Συνήθως µπαίνουν latches µόνο στις εισόδους και εξόδους της λογικής ελέγχου καθώς δεν υπάρχουν πολλά επίπεδα πυλών σε µονάδες ελέγχου. Μοντέλα Αρχιτεκτονικής 42