
Medzi procesorom (kam patria aj registre) a pamatou samozrejme dochadza k vymene dat. Procesor si povie z akej adresy chce citat (EBX + IP) a z pamate nacita data do dalsich registrov (IR a napr. EAX). Prenos sa deje po datovej zbernici, o ktorej uz co to vieme. Adresovanie pamate prebieha po adresovej zbernici. Samozrejme, musime odlisovat dve mozne operacie pamate a to read/write. K tomu sluzia signaly.

K tomuto super mega uvodu do pamati je este mozno vhodne ukazat, ako sa z pamati cita a ako sa do nej zapisuje. Zjednoduseny diagram nas vlastne ukaze, ako vyzera cyklus pamate.
Pan Skrbek bol taky mily, ze nam to dokonca aj nazoomoval a vsimnite si slajdu dole. Je na nom prakticky uplne to iste, ako hore, ale nazornejsie ukazane adresovanie. Vybrali sme si riadok a vybrali sme si stlpec pamate a postupne s delay-om 45 nanosekund nam prichadzaju data. Potom sme zadali novu adresu stlpca a prichadzaju dalsie data z inej adresy. Co z toho vyplyva? Ze citame po stlpcoch! :)
Tak tolko uvod do pamate a teraz, ake su zakladne parametre pamate?
- Kapacita pamate, alebo objem dat, ktore do nej mozme ulozit
- pristupova doba, znaci trvanie cyklu pamate, alebo doba pre najdenie pozadovaneho miesta v pamati
- sirka pasma, alebo kolko dat prenesieme za jednotku casu
- cena
- typ pamati, pretoze pamat moze byt vnutorna a vonkajsia. Medzi vnutorne pamate radime registre, zapisnikove pamate, skryte pamate (cache), hlavne pamate
- energeticka zavislost. Toto sme uz mali vyssie. Pamate mozme rozdelit na
- Energeticky nezavisle
- permanentne
- ROM - read only memory s obsahom od vyrobcu
- PROM - obsah je jednorazovo naprogramovany po vytvoreni cipu (ten rozdiel od ROM). Obsah je uzamknuty pomocou diod a antidiod.
- semipermanentne
- EPROM - ktorej informacie je mozne vymazat po oziareni ultrafialovym svetlom
- EEPROM - da sa vymazat elektricky
- Energeticky zavisle
- RAM
- SRAM - je realizovana ako bistabilny klopny obvod
- DRAM - data su uchovavane vo forme naboja na pamatovom kondenzatore, ktory sa pri zapise nabije alebo vybije a pri citani sa vybija
- Aby sme deleniu neboli nic dlzny, tak pamate este mozme delit aj podla sposobu vyberu datovych poloziek
- adresove, teda s adresovym vyberom
- seriove, teda s postupnym vyberom
- asociativne, kde vyberame podla kluca
- LIFO, last in first out (zasobnik)
- FIFO, first in first out (fronta)
Cyklus pamate
Cyklus pamate je dobre citatelny z obrazka, ktory sme uz viedli vyssie. Jedna sa o postupnost udalosti, ku ktorym dojde od prijatia poziadavku az po vykonanie poziadavku (vystavenie dat na data bus). Kazda pamat potrebuje po vykonani poziadavku "oddych", tzv. cycle time. Cycle time je teda dlzka intervalu medzi dvoma po sebe iducimi poziadavkami, potrebna na vybitie + doba na vybavenie poziadavku. Pocas tohto intervalu je pristup k pamati nemozny.
Cyklus moze byt zapisovaci a citaci
- najprv sa vystavi adresa na adresovu zbernicu
- ak je to citaci cyklus, tak potom sa aktivuje read signal a data su vystavene na DB
- ak je cyklus zapisovaci, tak data sa vystavia na data bus a az nasledne sa aktivuje signal
- read/write cyklus sa ukonci
Aby sme to trochu zhrnuli, tak
- Vybavovacia doba pamate (Access Time)
Je casovy interval, ktory uplynie od vyslania poziadavku az kym su data k dispozicii (read). Dnes to je okolo 70 nanoseknund. - Cycle Time
Toto je Access Time + doba potrebna na vybijanie. Dnes okolo 200 nanosekund a pocas tohto intervalu sa na pamat nesmie sahat.