Trenutno najviše u eksploataciji su magnetne, optičke i poluprovodničke memorije. Kod magnetnih (hard disk – HD) i optičkih (compact disc – CD) memorija uvek postoji neki čitač zapisa koji se mehanički mora postaviti na mesto gde se nalazi željeni podatak. Podatak se zatim čita, pretvara u električni ekvivalent i prenosi dalje kroz sistemsku magistralu. Usko grlo (usporenje rada ) su upravo ti neophodni mehanički delovi.
Poluprovodničke memorije su memorije sa direktnim pristupom željenoj adresi, bez mehaničkih delova i sa mnogo kraćim vremenom pristupa od ostalih memorija. Izgrađuju se statičke i dinamičke. Dinamičke memorije čuvaju upisani sadržaj nabojem parazitnih kapacitivnosti MOSFET tranzistora. S obzirom da se parazitne kapacitivnosti vremenom prazne ovakve memorije je neophodno osvežavati. Period osvežavanja zavisi od vremena potrebnog za osvežavanje sadržaja jedne ćelije (reda 100ns) i ukupnog kapaciteta memorije pošto je neophodno osvežiti sve lokacije. Statičke memorije su realizovane bipolarno, sa flip flop kolom za svaki bit memorije. Ovakve memorije ne treba osvežavati.
U vezi sa poluprovodničkom memorijom bitno je znati sledeće:
- Lokacija – Određuje fizičko mesto memorije. Da li je unutrašnja (interna u mikroprocesoru) ili spoljna ( externa – u posebnom integrisanom kolu).
- Kapacitet – Ovde treba obratiti pažnju na obim jednog podatka (bit, nibl, bajt , word …) i na broj lokacija za te podatke. Kapacitet memorije sa m ulaznih pinova (za adrese) i n izlaznih za podatke u bitima iznosi Kb=n2^m . Po razvoju memorija većeg kapaciteta postalo je uobičajeno da se veličina memorije izražava u bajtovima KB=Kb/8.
- Metod pristupa – Za poluiprovodničke memorije je uvek proizvoljan (random access). Svaka jedinica memorije proziva se na data megistralu preko svoje adrese koju dekoduje adresni dekoder. Za sve lokacije vreme pristupa je jednako.
- Način čuvanja podataka – Po načinu čuvanja/upisu podataka dalja podela memorija je RAM, EPROM i EEPROM.
- Vreme pristupa – Postoji vreme za upis (write – WR) i za čitanje (read RD). Za RD ciklus daje se vreme postavljanja validnih podataka na data magistralu. Za WR ciklus daje se vreme neophodno da podaci budu na magistrali dok se ne upišu.
RAM – Random Access Memory
RAM memorije čuva podatke u integrisanim flip flopovima tako da one zadržavaju sadržaj pojedine lokacije do upisa novog podatka ili do nestanka napajanja. Tipičan šematski prikaz jednog RAM čipa dat je na slici br. 1.
Slika br.1 Šematski prikaz RAM memorije (2^n lokacija sa m-bitnim podacima)
Da bi se u pojedinu lokaciju memorije pisalo/čitalo prvo treba tu lokaciju selektovati. Selekcija lokacije se vrši postavljanjem njene adrese na adresne ulaze, prozivom čipa (CS). Ukoliko želimo u datu lokaciju da pišemo postavljamo WR signal na aktivan nivo a na liniju za podatke željeni podatak. Ukoliko želimo da čitamo postavljamo RD aktivno i posle određenog vremena uspostavljanja tačnih podataka (kataloški podatak) možemo da čitamo linije za podatke. Tipične statičke RAM memorije u CMOS tehnologiji su:
- 27C64 8KB
- 27C128 16KB
- 27C256 32KB
- 27C512 64KB
ROM – Read Only Memory
ROM memorija ne gubi sadržaj po nestanku napajanja. Sadržaj se definiše u fabrici i ne može se promeniti u toku eksploatacije. U suštini, nije klasična poluprovodnička memorija. Ovakva vrsta memorije ne poseduje memorijski element već predstavlja složenu kombinacionu mrežu. Naziv ROM (read only memory) govori da ovakva memorija, jednom definisana u fabrici (programirana) može samo da se čita bez mogućnosti izmene sadržaja pojedinih memorijskih lokacija. Koriste se za upis programa i konstanti koji se ne menjaju. Varijanta ROM memorija koji nije programiran u fabrici, ali se može programirati samo jednom naziva se PROM memorija.
Slika br.2. Šematski prikaz ROM memorije (2^n lokacija sa m-bitnim podacima)
EPROM –Erasable Programable ROM
EPROM memoriju je moguće čitati (vreme pristupa reda veličine za RAM), upisivati (vreme upisa 10ms i veći napon za programiranje) i brisati UV zracima. Za brisanje UV zracima postoji prozor na integrisanom kolu. EPROM memorije nalaze veliku primenu u zameni ROM memorija za koje je neophodan fabrički upis. Šematski prikaz EPROM memorije dat je na slici br. 3.
Slika br.3 Šematski prikaz EPROM memorije (2^n lokacija sa m-bitnim podacima). Briše se sa UV zracima preko prozora a moguće ga je i programirati sa PRG komandom (i višim naponom).
Aktivnost ulaza OE (output enable) inicira postavljanje podatak (m) na izlazno-ulazne linije D. Podaci se postavljaju sa adrese A koja je trenutno postavljena na adresnoj magistrali (n). Identično sa RD kod RAM. PRG signal inicira programiranje lokacije čija je adresa postavljena i to sa podatkom na ulazu za podatke D. EPROM memorije uobičajeno zahtevaju povišen napon za programiranje i zato poseduju dva napona napajanja, jedan za čitanje i jedan za programiranje. Tipične EPROM memorije su:
- 6264 8KB
- 62128 16KB
- 62256 32KB
- 62512 64KB
EEPROM –Electrically Erasable Programable ROM
Razlikuje se od EPROM-a u tome što se može električnim putem i brisati. Nema prozor za brisanje UV zracima. Vreme čitanja je za nekoliko reda veličine kraće od vremena upisa. Upis podatka na neku lokaciju EEPROM memorije inicira proces unutrašnjeg samoprogramiranja (10ms) u kome se lokacija briše a zatim puni sadržajem ulaznog baffer-a u koji je upisan podatak sa magistrale. Veliki broj ciklusa pisanja-brisanja, kao i mogućnost upisa samo jednog podatka ih čini veoma popularni za čuvanje raznih programskih konstantni, konfiguracionih podataka i mernih podataka, na primer pojačanja regulatora, zapis merenja temperature itd.. Obično se koriste serijski EEPROM-i sa 10 godišnjom garancijom čuvanja podataka i preko 1 000 000 upisa. Serijski protokoli koji se koriste su I2C i SPI protokol.
RAM nema ograničenje za broj pisanja podataka. Kod EEPROM memorije se vremenom ošteti izolacioni sloj i broj upisa je ograničen. Za prve modele je broj upisa manji od 100, dok najnoviji modeli predviđaju oko 1 000 000 upisa (podatak iz 2006.godine). Ovaj broj je mnogo veći neko u slučaju FLASH memorije (tipično oko 10 000 ciklusa brisanja/upisa) tako da EEPROM ostaje popularan u uređajima koji zahtevaju veliki broj upisa podataka u toku rada. Dodatni razlog za upotrebu EEPROM memorije je mogućnost upisa (promene) samo jednog zapamćenog byte-a, što nije moguće u slučaju FLASH-a jer je pre upisa neophodno obrisati ceo blok FLASH memorije.
FLASH memorija
FLASH tehnologija je trenutno najpopularnija. Kao ni ROM, EPROM i EEPROM, FLASH memorija takođe ne zahteva napajanje da zadrži podatke. Ali, prednost FLASH memorije je cena, brže brisanje i sa istim naponom napajanja, brže čitanje (jedino je DRAM brži) kao i bolja otpornost na udare (od hard disk-a). FLASH tehnologija je zasnovana na dodatnim kapacitivnostima plivajućih MOSFET tranzistorskih kapija (gates). Ove strukture MOSFET kapija imaju mogučnost čuvanja električnog naboja u toku dugog vremenskog perioda, nakon nestanka napona napajanja. Novije FLASH memorije čuvaju električne naboje različitih nivoa, tako da jedna MOSFET kapija ne čuva samo jedan bit informacije, nego više (obično dva-četiri nivoa). FLASH memorija se briše po blokovima. Svaka FLASH memorija je podeljena na više blokova, na primer 32KB FLASH sadrži 32 bloka po 1KB. Svi podaci u jednom bloku se brišu zajedno. Za brisanje je potreban povećan napon, ali to nije problem. Skoro svi FLASH čipovi su sa jednim napajanjem i visoki napon potreban za brisanje se generiše preko interne charge pump.
FLASH memorije karakterišu brzo vreme čitanja (short access time) , relativno brzo brisanje i pisanje (samo elektičnim putem), nema potrebe za UV zracima pri brisanju. Bolja otpornost na udare. Koriste je svi, mikrokontroleri, PLC i DSP. Može brzo da se čita i relativno brzo da se piše.
Od memorija se danas ozbiljno koriste samo EEPROM i FLASH. Kao i EEPROM, FLASH memorija se piše briše električnim putem. Ona je jeftinija od EEPROM, brže se i čita i piše. Ali, trenutno stanje u tehnologiji je da FLASH može imati manje upisa tokom radnog veka nego EEPROM (FLASH will wear out faster). Tipični radni vek FLASH memorije je 10,000 ciklusa, dok se EEPROM može i 1,000,000 pisati brisati. Manja cena i brzina pristupa čine FLASH memoriju pogodnijom za upis programa mikrokontrolera (danas je FLASH apsolutni pobednik) dok veliki broj zapisa i dalje zadržava EEPROM memoriju za čuvanje konfiguracionih podataka, ili nekih mernih veličina. Dodatni razlog za primenu EEPROM memorije u čuvanju kofiguracionih podataka je i u činjenici da FLASH memorija briše čitave blokove memorije, a ne pojedine lokacije. Promena jednog byte u FLASH je moguća samo ako se obriše i prepiše jedan ceo blok FLASH memorije (na primer 1KB) što ubrzava propadanje FLASH memorije.
Napomena: Tekst je preuzet iz materijala dr Predraga Teodorovića, za predmet UVOD U DIGITALNU I MIKRORACUNARSKU ELEKTRONIKU, na FTN, Univerziteta u Novom Sadu. Iz originalnog teksta su izostavljene pojedine slike, a dalja objašnjenja pojmova korišćenih u ovom uvodnom tekstu možete naći u pomenutim materijalima.