Skip to main content
0002
SECURITY REPORT 173
satpraxis 2022
now 33 2022
27 Οκτωβρίου 2010 03:00

Πίσω από τη μνήμη Flash!

Γράφει: Αργύρης Νομικός
e8d7905e3ae396b97e7467ca3d2281ab XL 531b5e45

Featured | Ταχύτατη, ανθεκτική, αθόρυβη! Χρόνια τώρα, η μνήμη Flash είναι η καρδιά πολλών ηλεκτρονικών συσκευών. Και το εκπληκτικό είναι, ότι αντί να οδηγείται προς το “ράφι”, συνεχίζει να είναι από τα βασικότερα ηλεκτρονικά στοιχεία. Αξίζει λοιπόν, να δώσουμε λίγο χρόνο για να καταλάβουμε τη “γλώσσα” που μιλάει…

Εάν έχετε προχωρήσει λίγο παραπέρα από την κλασική ενασχόληση με το δορυφορικό σας δέκτη, σίγουρα θα έχετε πέσει στην έννοια “φλασάρω”. Πέρα από τη δύναμη της Ελληνικής γλώσσας να ελίσσεται και να προσαρμόζεται, η παραπάνω λέξη δηλώνει την ενέργεια αντιγραφής ενός λογισμικού στη μνήμη flash. Πολλοί λοιπόν από εμάς έχουμε ασχοληθεί εις γνώση μας ή όχι με τη μνήμη flash. Καιρός είναι λοιπόν, να μάθουμε μερικά πράγματα παραπάνω για το πως λειτουργεί αυτό το ηλεκτρονικό εξάρτημα, που είναι πλέον παντού γύρω μας.

Flash Memory
Η ηλεκτρονική μνήμη των ψηφιακών συσκευών, απαντάται σε πολλές μορφές. Η σημαντικότερη, ίσως, μορφή ηλεκτρονικής μνήμης σήμερα, είναι η Flash memory. Η  Flash memory χρησιμοποιείται πλέον σε πολλές διαφορετικές εφαρμογές, όπως:
α) Στους υπολογιστές.
β) Σε δορυφορικούς δέκτες.
γ) Σε PCMCIA cards (Diablo, Zeta κλπ).
δ) Σε Compact Flash, Smart Media και Memory Stick, που χρησιμοποιούνται κυρίως στις μνήμες ψηφιακών φωτογραφικών μηχανών και βιντεοκαμερών.
ε) Σε κονσόλες ηλεκτρονικών παιχνιδιών.
στ) Στην κινητή τηλεφωνία κ.λπ.
Η Flash memory είναι ένας τύπος εξελιγμένου EEPROM chip. Οι κλασικές EEPROM επιτρέπουν διαγραφή ή εγγραφή, μόνο σε μια τοποθεσία (location) τη φορά, ενώ οι Flash επιτρέπουν εγγραφή σε διαφορετικές τοποθεσίες, την ίδια χρονική στιγμή, πράγμα που τις καθιστά σαφώς πιο γρήγορες.
Η Flash memory αποθηκεύει πληροφορία σε μια διάταξη Floating Gates (πύλες ροής) transistors, που ονομάζονται κελιά (cells). Κάθε κελί μπορεί να αποθηκεύσει ένα bit πληροφορίας, αν και οι νεώτερες flash αναφέρονται σαν «multi-level cell devices» και μπορούν να αποθηκεύσουν περισσότερα από 1bit/κελί.

Ανάγνωση, διαγραφή, εγγραφή Flash
Στις flash, κάθε κελί μοιάζει με ένα MOSFET transistor, εκτός από το γεγονός ότι έχει δύο gates (πύλες), αντί για μία. Η μία gate είναι η control gate (CG), όπως σε όλα τα MOS, αλλά η δεύτερη είναι η floating gate (FG), που είναι μονωμένη με ένα στρώμα οξειδίου (oxide layer). Οι άλλες δύο επαφές του transistor, είναι οι συνηθισμένες Source και Drain, που υπάρχουν σε όλα τα MOS. Επειδή η FG είναι μονωμένη, κάθε ηλεκτρόνιο που τοποθετείται μέσα της, παγιδεύεται και έτσι αποθηκεύει πληροφορία. Τα ηλεκτρόνια που βρίσκονται μέσα στην FG, διαμορφώνουν το ηλεκτρικό πεδίο (μερικώς ακυρώνουν) της CG, το οποίο, με τη σειρά του, διαμορφώνει την τάση κατωφλιού {threshold voltage (Vt)} του κελιού. Με αυτόν τον τρόπο, όταν γίνεται «ανάγνωση» του κελιού, ασκώντας μια συγκεκριμένη τάση στην CG, θα ρέει ή δεν θα ρέει ηλεκτρικό ρεύμα, ανάλογα με την τάση Vt (κατωφλιού). Η απουσία ή η παρουσία ηλεκτρικού ρεύματος μεταφράζεται σε 1 ή 0, μεταφέροντας έτσι την πληροφορία που είναι αποθηκευμένη στο κελί. Σε μια multi-level cell device, που αποθηκεύει περισσότερα από 1 bit πληροφορίας ανά cell, ανιχνεύεται το ποσό του ρεύματος που ρέει (αντί απλά για την απουσία ή παρουσία του), έτσι ώστε να προσδιοριστεί ακριβώς, ο αριθμός των ηλεκτρονίων που είναι αποθηκευμένα στην FG.
Μια flash προγραμματίζεται με εκκίνηση ροής ηλεκτρονίων, από την επαφή source στην επαφή drain. Στη συνέχεια, ένα ισχυρό ηλεκτρικό πεδίο εφαρμόζεται στην CG, ώστε τα ηλεκτρόνια να αποκτήσουν ικανή κινητική ενέργεια για να εισέλθουν στην FG. Η διαδικασία ονομάζεται hot-electron injection.
Διαγραφή μιας flash σημαίνει ότι όλα τα κελιά θα αποκτήσουν την τιμή 1. Η διαγραφή είναι απαραίτητη διαδικασία πριν από κάθε εγγραφή. Για τον προγραμματισμό όλων των κελιών σε τιμή 1 (διαγραφή), χρειάζεται απλά μια πολύ ισχυρή ηλεκτρική τάση, ανάμεσα στη CG και τη source.
Για να μπορέσει να προγραμματιστεί η flash, να αλλάξουν δηλαδή κάποιες τιμές από την τιμή 1 στην τιμή 0, χρειάζεται μια διαδικασία, που ονομάζεται Fowler-Nordheim tunneling. Μια ηλεκτρική τάση μεταξύ 10 με 13 Volts εφαρμόζεται στην FG. Το φορτίο εισέρχεται στην FG με κατεύθυνση προς την επαφή drain. Το φορτίο αυτό, αναγκάζει την FG να δράσει σαν ηλεκτρονικό πυροβόλο. Τα διεγερμένα ηλεκτρόνια απωθούνται και παγιδεύονται στην άλλη άκρη της επίστρωσης του οξειδίου, δίνοντάς του αρνητικό φορτίο. Αυτά τα ηλεκτρόνια λειτουργούν σαν φραγή ανάμεσα στην FG και τη CG, επιτρέποντας μεγαλύτερο ή μικρότερο αριθμό ηλεκτρονίων να διέλθουν (ανάλογα με την τάση). Ένας ειδικός αισθητήρας, που ονομάζεται cell sensor, παρακολουθεί τη ροή των ηλεκτρονίων. Αν η ροή των ηλεκτρονίων είναι μεγαλύτερη από το 50% του συνολικού φορτίου, η τιμή είναι 1, αν αντίθετα, η ροή είναι μικρότερη του 50% του συνολικού φορτίου, η τιμή είναι 0.
Αυτά λοιπόν συμβαίνουν στον ηλεκτρονικό μικρόκοσμο του δέκτη σας ή του CAM σας, κάθε φορά που προσπαθείτε να προγραμματίσετε τη flash. Ροή ηλεκτρονίων προσπαθεί να δώσει στα κελιά τιμές 1 ή 0, που δεν είναι τίποτα άλλο, από τη δυαδική μορφή του οποιουδήποτε software περνάτε. Έτσι κι αλλιώς, πάντα έτσι είναι η ψηφιακή λογική. Ένα ανθρώπινο τρικ προσπαθεί να εξαναγκάσει ένα μηχάνημα, να καταλάβει δύο καταστάσεις.

Binary και
Hexademical
Ένα bit είναι η μικρότερη μονάδα που μπορεί να αποθηκευτεί στη μνήμη ενός ψηφιακού μηχανήματος. Όπως είπαμε, μπορεί να πάρει δύο τιμές. Η απεικόνιση οποιασδήποτε πληροφορίας με χρήση δύο καταστάσεων, είναι αναγκασμένη να χρησιμοποιήσει πρωταρχικά το δυαδικό σύστημα αρίθμησης, που είναι βασισμένο σε δύο δυαδικά ψηφία (binary digits), το 0 και το 1. Ένα αρχείο που κωδικοποιείται σε δυαδική μορφή, ονομάζεται binary και είναι άμεσα εκτελέσιμο από οποιαδήποτε ψηφιακή συσκευή. Επειδή όμως το bit είναι πολύ μικρή μονάδα, η ψηφιακή πληροφορία δομείται σε bytes, που δεν είναι τίποτα άλλο, από 8-bits στη σειρά, που αποτελούν και μια ψηφιακή λέξη.
Αν κάποιος μηχανικός υπολογιστών ή προγραμματιστής, προσπαθήσει να προγραμματίσει χρησιμοποιώντας απλά 0 ή 1, γρήγορα θα καταλήξει σε μεγάλες σειρές από bits, της μορφής 010011000100110101010110 ή και ακόμη μεγαλύτερες. Για να απλοποιηθούν κάπως τα πράγματα, θα μπορούσαμε ανά 4 ψηφία (μισό byte) να χωρίζαμε τα ψηφία με κόμμα. Η μορφή θα γινόταν τότε 0100,1100,0100,1101,0101,0110. Αν στη συνέχεια, αναρωτηθούμε πόσες τετράδες μπορούν να δώσουν οι συνδυασμοί 0 ή 1 (με επαναλήψεις), τότε η απάντηση είναι το πολύ 16. Αν συμβολίσουμε τις 16 διαφορετικές αυτές καταστάσεις, με 16 διαφορετικά σύμβολα (δανειζόμενοι τα 10 ψηφία του δεκαδικού συστήματος αρίθμησης και τα 6 πρώτα γράμματα του λατινικού αλφάβητου), καταλήγουμε στο δεκαεξαδικό (hexademical) σύστημα αρίθμησης

Binary Hex

0000                0

0001                1

0010                2

0011                3

0100                4

0101                5

0110                6

0111                7

1000                8

1001                9

1010                A

1011                B

1100                C

1101                D

1110                E

1111                F

Αντιστοιχία δυαδικών αριθμών στο δεκαεξαδικό σύστημα
Με αυτόν τον τρόπο, η αρχική πληροφορία 010011000100110101010110, γίνεται απλά 4B4C57 και αυτό αποτελεί τη δεκαεξαδική απεικόνιση της αρχικής δυαδικής πληροφορίας. Αν όλα αυτά σας φαίνονται λίγο περίεργα, να θυμίσω απλά πως όλοι μας, χειριζόμαστε πολύ εύκολα μια άλλη μαθηματική κωδικοποίηση, που είναι το δεκαδικό σύστημα αρίθμησης, ακριβώς επειδή το μαθαίνουμε από την παιδική μας ηλικία. Αν μαθαίναμε το δεκαεξαδικό σύστημα, όλα τα παραπάνω θα φαινόντουσαν τόσο απλά, όσο το να μετρήσουμε από το 1 έως το 16… γιατί αυτό ακριβώς κάναμε.
Αυτές οι τετράδες από bits, λοιπόν, που συμβολίζονται με τα ανωτέρω σύμβολα στο δεκαεξαδικό σύστημα, δεν είναι τίποτα άλλο από «μισή ψηφιακή λέξη» (αφού τα 8 αποτελούν μια ψηφιακή λέξη). Αν ανοίξουμε οποιοδήποτε αρχείο με κάποιο πρόγραμμα δεκαεξαδικής επεξεργασίας (hexademical editor), εκείνο που θα δούμε, θα είναι δεκαεξαδικά σύμβολα, δομημένα σε δυάδες και φυσικά, κάθε δυάδα αποτελεί ένα πλήρες byte (μια πλήρη λέξη).

Β
oot loader
Όταν προγραμματίζετε, λοιπόν, την ψηφιακή σας συσκευή, αποθηκεύετε ένα αρχείο γλώσσας μηχανής (binary ή hexademical) στη flash της συσκευής σας (σε μερικούς δέκτες και σε USB stick ή HDD), που δεν είναι τίποτα άλλο από το λειτουργικό της συσκευής. Κάθε φορά όμως, που ξεκινά η λειτουργία του δέκτη, αυτό το λειτουργικό θα πρέπει να εκτελείται. Ο Boot Loader δεν είναι τίποτα άλλο, από ένα πρόγραμμα, το οποίο φορτώνει και εκτελεί το λειτουργικό. Πώς όμως ενεργοποιείται ο Boot Loader;
Κατά την εκκίνηση της συσκευής, το BIOS διαβάζει τα πρώτα 512 bytes του MBR (Master Boot Record) της μονάδας boot (Flash, USB stick, HDD κλπ). To master boot record περιλαμβάνει συνήθως δύο πληροφορίες, ένα μέρος ή ολόκληρο τον  Boot Loader και το partition table (που περιλαμβάνει πληροφορίες για τα  partitions των δίσκων ή των υπόλοιπων μονάδων). Σε συσκευές που δεν δέχονται πρόσθετες μονάδες αποθήκευσης (HDD κλπ), ο Boot Loader είναι ένα πρόγραμμα, το οποίο εκτελεί άμεσα το λειτουργικό. Σε περιπτώσεις πολλών μονάδων αποθήκευσης ή  multi-boot, o Boot Loader αποτελείται από δύο μέρη. Το πρώτο μέρος ονομάζεται ILP (initial program loader) και απλά ανιχνεύει τα bootable media, που υπάρχουν διαθέσιμα. Και το δεύτερο αποτελεί τον κυρίως Boot Loader, ο οποίος φορτώνει τον Kernel του λειτουργικού και το user interface. Από το σημείο αυτό και μετά, έχετε πλήρη έλεγχο του δέκτη σας, αφού το μενού (user interface) εμφανίζεται στην οθόνη σας.

Η ΑΓΟΡΑ ΣΗΜΕΡΑ

Yeastar P-Series Cloud Edition
Η Yeastar P-Series Cloud Edition είναι μια ολοκληρωμένη λύση cloud PBX, σχεδιασμένη για σύγχρονες επιχειρήσεις. Ενοποιεί φωνή, video, άμεσα μηνύματα και τηλεδιάσκεψη σε μία ενιαία πλατφόρμα, χωρίς τ…
MaxHub Video Bar U50
Σε έναν κόσμο όπου η συνεργασία δεν περιορίζεται πια σε έναν χώρο, αλλά εκτείνεται σε ομάδες που συνδέονται από διαφορετικά σημεία, η τεχνολογία των συναντήσεων πρέπει να λειτουργεί διακριτικά και α…
TELEVES DTKom 5338
Διαθέσιμος είναι από την EDISION ο ενισχυτής γραμμής Televes DTKom 5338. Πρόκειται για ενισχυτή με χαμηλή ενδοδιαμόρφωση, ακόμα και σε υψηλή στάθμη εξόδου (123dBμV). Διαθέτει κύκλωμα PUSH-PULL…
IKUSI by FAGOR ONE plus vs Stellar
Η IDComs διαθέτει δύο κορυφαίες σειρές ψηφιακών multiband ενισχυτών από την IKUSI by FAGOR: την εμβληματική ONE plus και την πιο οικονομική Stellar. Παρότι και οι δύο διαθέτουν τεχνολογία 32 φίλτρων…
Linkvil W610W
Το W610W είναι ένα φορητό, κομψό τηλέφωνο Wi-Fi που χρησιμοποιείται ευρέως σε επιχειρήσεις, εμπορικά κέντρα και ξενοδοχεία. Είναι εξοπλισμένο με έγχρωμη οθόνη 2” και 16 προγραμματιζόμενα πλήκτρα DSS…
EDISION PSU-2402
Το EDISION PSU-2402 είναι ένα τροφοδοτικό για ενισχυτή ιστού συμβατού με ρεύμα λειτουργίας 24V DC μέσω ομοαξονικού καλωδίου. Παρέχει 2 εξόδους προς τις TV με βύσματα τύπου F για σύνδεση σε αντίστοιχ…
Televes DTKom 534120
Ο ενισχυτής κεντρικής εγκατάστασης Televes 534120 προορίζεται για περιοχές με φάσμα τηλεοπτικών συχνοτήτων 5G (αποκοπή LTE 700). Διαθέτει 5 εισόδους σύνδεσης κεραιών και σημάτων, με αυτόματη απόρριψ…
Ruijie-Reyee RG-AP680-L
Υπάρχουν σημεία όπου η συνδεσιμότητα δοκιμάζεται: υπαίθριοι χώροι, ακτές, πισίνες, λιμάνια, ξενοδοχεία δίπλα στο κύμα. Εκεί που οι περισσότερες λύσεις σταματούν, το RG-AP680-L της Ruijie-Reyee ξεκιν…
JollyLine JL45030/5G
Η JL45030/5G της JollyLine, μια εσωτερική κεραία Digital Flat 5G για λήψη επίγειων ψηφιακών τηλεοπτικών καναλιών DVB-T / T2 με αποκοπή παρεμβολών 5G, προορίζεται για εγκατάσταση σε εσωτερικό χώρο. Μ…
Audien SM-5215A
Η εταιρεία KAL Electronics ανακοινώνει την παραλαβή του νέου ηχείου Audien SM-5215A. Πρόκειται για φορητό, επαναφορτιζόμενο ενεργό ηχείο με μεγάφωνο 15” και ισχύ 180W RMS, το οποίο περιλαμβάνει 2 ασ…
Kathrein OSW 1310/6 & OSW 1550/6
Η εταιρεία ΛΥΡΑ ΑΕΒΕ ανακοινώνει την παραλαβή των νέων μονάδων OSW 1310/6 και OSW 1550/6 της γερμανικής Kathrein. Πρόκειται για οπτικούς πομπούς με μήκος κύματος 1.310nm (OSW 1310/6) ή 1.550nm (OSW…
Προϊόντα PROMAX σε μειωμένες τιμές από την IDComs
Η προσφορά ισχύει κατά τη διάρκεια της Athens Electronix 2026 και μέχρι τέλος Μαρτίου! Από 1 Ιανουαρίου 2026 ισχύει νέος τιμοκατάλογος PROMAX, ο οποίος περιλαμβάνει μία μικρή προσαρμογή τιμής, εξ…

ΣΕ ΑΥΤΟ ΤΟ ΤΕΥΧΟΣ

Ψηφιακή Τηλεόραση, Απρίλιος 2026
Το νέο τεύχος Απριλίου 2026 του περιοδικού «Ψηφιακή Τηλεόραση» κυκλοφορεί πάντα μαζί με το περιοδικό «Security Report», που ηγείται στην αγορά των ηλεκτρονικών συστημάτων ασφαλείας. Θέματα τεύχου…
Athens Electronix 2026
Μεγάλη επιτυχία για την Athens Electronix 2026, τη μεγαλύτερη έκθεση συστημάτων ασφαλείας, τηλεόρασης, δικτύων και τεχνολογίας ξενοδοχείων, που διοργανώθηκε από την Libra Press το Σαββατοκύριακο 14…
20 ΧΡΟΝΙΑ LEMCO
Το Σάββατο 31 Ιανουαρίου, η Ψηφιακή Τηλεόραση βρέθηκε σε ένα αξιοσημείωτο event για τον κλάδο – στον εορτασμό των 20 χρόνων λειτουργίας της LEMCO! Η εκδήλωση πραγματοποιήθηκε στο Κτήμα 28, έναν χώρο…
Sat & Zap, τεύχος 211
Κλείνοντας το ζάπινγκ του μήνα, ξέσπασαν οι πολεμικές επιχειρήσεις στη Μέση Ανατολή, προκαλώντας ίσως αυξημένο ενδιαφέρον για τα κανάλια της περιοχής. Γενικότερα, πάντως, ο μήνας ήταν πιο ενδιαφέρων…
Επισκόπηση απορρήτου

Αυτός ο ιστότοπος χρησιμοποιεί cookie ώστε να μπορούμε να σας παρέχουμε την καλύτερη δυνατή εμπειρία χρήστη. Οι πληροφορίες cookie αποθηκεύονται στο πρόγραμμα περιήγησης σας και εκτελούν λειτουργίες όπως η ανάγνωση σας όταν επιστρέφετε στον ιστότοπο μας και η βοήθεια της ομάδας μας να κατανοήσει ποιες ενότητες του ιστοτόπου θεωρείτε πιο ενδιαφέρουσες και χρήσιμες.