Σχεδίαση Μνηµών Χρ. Καβουσιανός Επίκουρος Καθηγητής
Εισαγωγή Η Μνήµη είναι ένας πίνακας από θέσεις αποθήκευσης συγκεκριµένου µεγέθους, κάθε µία από τις οποίες έχει µία διακριτή διεύθυνση Θέση 0 Θέση 1 Θέση 2 Θέση 3... Θέση 2 n -1 m bits n bits διεύ ύθυνση Μέγεθος 2 n xm bits (Kbits/Kbytes, Mbits/Mbytes, Gbits/Gbytes) a(0) a(1) a(n 1) d_in(0) d_in(1) d_in(m 1) d_out(0) d_out(1) d_out(m 1) ανάγνωση εγγραφή Σχεδίαση Κυκλωµάτων µε CAD 2
Οργάνωση µνηµών Μπορούµε να συνδυάσουµε µικρές µνήµες για να δηµιουργήσουµε µεγαλύτερες d_in(7 0) a(15 14) 0 12 3 d_in(7 0) d_in(7 0) d_out(7 0) d_out(7 0) ιακριτές είσοδοι / έξοδοι Π.χ. Τέσσερις µνήµες των 16Κbytes µπορούν να σχηµατίσουν µία µνήµη των 64Kbytes d_in(7 0) d_in(7 0) d_out(7 0) d_out(7 0) 0 1 2 3 d_out(7 0) Σχεδίαση Κυκλωµάτων µε CAD 3
Οργάνωση µνηµών Η διασύνδεση πολλών µνηµών απαιτεί την χρήση τρισταθών οδηγών (tristate drivers) +V έξοδος Τρεις καταστάσεις εξόδου +V +V +V Συνδέσεις δεδοµένων διπλής κατεύθυνσης τριών καταστάσεων Κοινός δίαυλος εισόδου / εξόδου Σχεδίαση Κυκλωµάτων µε CAD 4
Οργάνωση µνηµών d(7 0) 0 12 a(15 14) 3 d(7 0) d(7 0) Μείωση κόστους διασυνδέσεων δέ και ακροδεκτών (για µνήµες που υλοποιούνται µε χωριστά ολοκληρωµένα) d(7 0) d(7 0) Σχεδίαση Κυκλωµάτων µε CAD 5
Ασύγχρονες Στατικές RAM Ασύγχρονη Στατική Πτητική εν βασίζεται σε ρολόι ιατηρεί τα δεδοµένα επ αόριστον (Volatile) απαιτεί τροφοδοσία Βασίζεται σε χρήση κελιών αποθήκευσης που αποτελούνται από µανδαλωτές D. A A CE D CE WE OE WE OE t su t h D δεδομένα εγγραφής δεδομένα ανάγνωσης Σχεδίαση Κυκλωµάτων µε CAD 6
Χαρακτηριστικά απόδοσης: Ασύγχρονες Στατικές RAM Χρόνος προσπέλασης: καθυστέρηση από την αρχή µίας λειτουργίας ανάγνωσης έως ότου εµφανιστούν δεδοµένα στην έξοδο Χρόνος κύκλου ανάγνωσης: χρόνος ολοκλήρωσης λειτουργίας ανάγνωσης Χρόνος κύκλου εγγραφής: χρόνος ολοκλήρωσης λειτουργίας εγγραφής Οι ασύγχρονες µνήµες είναι απλές αλλά εισάγουν προβλήµατα επικοινωνίας στα συστήµατα µε ρολόι Σχεδίαση Κυκλωµάτων µε CAD 7
Σύγχρονες Στατικές RAM Είναι όµοιες σε δοµή µε τις Ασύγχρονες SRAM, έχουν όµως και ενσωµατωµένους καταχωρητές µε ρολόι για αποθήκευση: Τιµών διεύθυνσης εδοµένων εισόδου Σηµάτων ελέγχου εδοµένων εξόδου SSRAM flow through SSRAM pipelined Σχεδίαση Κυκλωµάτων µε CAD 8
SSRAM flow-through ιατηρούν καταχωρητή µόνο στις εισόδους δεδοµένων (σύγχρονη επικοινωνία) ιαδοχικές λειτουργίες σε διαδοχικούς κύκλους clk A a a 1 2 D_in xx D_out xx M(a 2 ) Σχεδίαση Κυκλωµάτων µε CAD 9
SSRAM pipeline ιατηρούν καταχωρητή σε εισόδους και εξόδους δεδοµένων. Τα δεδοµένα εξόδου διατηρούνται έναν επιπλέον κύκλο (είναι διαθέσιµα στον επόµενο κύκλο) και η επεξεργασία τους γίνεται πιο απλή για το υπόλοιπο σύστηµα. clk A a 1 a 2 1 κύκλος καθυστέρησης D_in xx D_out xx M(a 2 ) Σχεδίαση Κυκλωµάτων µε CAD 10
Μνήµες Πολλαπλών Θυρών Οι µνήµες πολλαπλών θυρών µπορούν να εκτελέσουν ταυτόχρονα πολλές λειτουργίες προσπέλασης Υψηλή απόδοση Κόστος υλοποίησης από πολλαπλασιασµό υποκυκλωµάτων SSRAM διπλής θύρας A1 A2 D_in1 D_out1 1 1 δ λής θύρας Η ταυτόχρονη προσπέλαση της ίδιας θέσης µπορεί να οδοηγήσει σε ανταγωνισµό ή σε D_in2 απρόβλεπτα αποτελέσµατα clk1 D_out2 2 2 clk2 Η επίλυση εξαρτάται από την κάθε υλοποίηση ή/και από τα κυκλώµατα του χρήστη της µνήµης Σχεδίαση Κυκλωµάτων µε CAD 11
Είναι µνήµη διπλής θύρας. Μνήµη FIFO Υλοποιείται σαν κυκλική προσωρινή µνήµη Κάθε θύρα έχει τον δικό της µετρητή διεύθυνσης που διατηρεί το τελευταίο δεδοµένο που γράφτηκε ή διαβάστηκε FIFO D_ D_rd _ rd_ empty reset full clk Συνθήκες εξαίρεσης: Empty, Full Παράδειγµα χρήσης: συγχρονισµός συστηµάτων που επικοινωνούν µε διαφορετικά (ασύγχρονα) ρολόγια Σχεδίαση Κυκλωµάτων µε CAD 12
υναµικές Μνήµες Έχουν µεγαλύτερους χρόνους απόκρισης. Απαιτούν περιοδικό φρεσκάρισµα (refresh) δεδοµένων Είναι πολύ φθηνότερες από τις στατικές Γραµµή γραή λέξη λέξης Το χωρητικό φορτίο µειώνεται λόγω ρευµάτων διαροής γραή Γραµµή bit bit Οι σύγχρονες DDR (double data rate) µπορούν να προσπελάσουν ριπές δεδοµένων ξεκινώντας από µία διεύθυνση και παρέχουν δεδοµένα και στις δύο ακµές ρολογιού Προφόρτιση για ανάγνωση + χρήση αισθητήρων Σχεδίαση Κυκλωµάτων µε CAD 13
Read Only Memories Έχουν πολύ µεγάλη πυκνότητα υλοποίησης (κάθε κελί αποτελείται από ένα το πολύ τρανζίστορ) Ουσιαστικά υλοποιούν πίνακες αλήθειας Είναι πολύ φθηνότερες από τις στατικές Μπορούν να προγραµµατιστούν ή/και να επαναπρογραµµατιστούν PROM EEPROM EPROM Σχεδίαση Κυκλωµάτων µε CAD 14
Μνήµες Flash Ηλεκτρικά διαγράψιµες προγραµµατιζόµενες ROM Μπορούν να διαγράψουν µονοµιάς µπλοκ αποθήκευσης και ακολουθεί προγραµµατισµός ξεχωριστών θέσεων Επιτρέπουν µερικές εκατοντάδες χιλιάδων προγραµµατισµού πριν αχρηστευθούν NOR Flash NAND Flash Κάθε µπλοκ εγγράφεται αφού διαγραφεί πλήρως και µετά µπορεί κάθε θέση του να αναγνωστεί σε τυχαία σειρά όσες φορές θέλουµε Γράφεται και διαβάζεται µία σελίδα (2Κ) την φορά. Έχουν µεγαλύτερη πυκνότητα από τις NOR Μνήµες διαµόρφωσης σε FPGAs και προγράµµατος σε ενσωµατωµένους επεξεργαστές Καταναλωτικές συσκευές, USB sticks κλπ Σχεδίαση Κυκλωµάτων µε CAD 15