Shrnutí na Paměťové systémy a adresování
Paměťové systémy a adresování: Kompletní průvodce pro studenty
Úvod
Paměťový systém počítače je základní součástí počítače zajišťující ukládání programů, dat a mezivýsledků výpočtů. Porozumění jeho strukturám a principům adresování je klíčové pro pochopení fungování moderních systémů.
Definice: Adresový prostor je množina všech paměťových adres, které může procesor přímo adresovat.
1. Co tvoří paměťový systém
Paměťový systém zahrnuje různé typy pamětí lišící se kapacitou, rychlostí a cenou:
- Registry – malé, velmi rychlé paměťové buňky přímo v procesoru.
- Cache paměť – rychlá vyrovnávací paměť mezi CPU a RAM.
- Operační paměť (RAM) – čtená i zapisovatelná hlavní pracovní paměť.
- Paměti ROM – paměti s trvalým uložením (např. firmware).
- Sekundární paměti (HDD, SSD) – velké, pomalejší úložiště.
Tabulka: srovnání typů pamětí
| Typ paměti | Rychlost | Kapacita | Cena za GB |
|---|---|---|---|
| Registry | velmi vysoká | velmi malá | velmi vysoká |
| Cache | vysoká | malá až střední | vysoká |
| RAM | střední | střední až velká | střední |
| ROM | závisí | malá | nízká |
| HDD/SSD | nízká až střední | velmi velká | nízká až střední |
2. Adresový prostor – podrobně
Velikost adresového prostoru
Velikost adresového prostoru je dána počtem adresových bitů procesoru. Pokud má procesor $n$ adresových bitů, platí:
$$2^n\ \text{paměťových adres}$$
Příklady:
- 16bitová adresa → $2^{16} = 65536$ adres (64 kB)
- 32bitová adresa → $2^{32} = 4294967296$ adres (4 GB)
- 64bitová adresa → teoreticky $2^{64}$ adres (přibližně 16 EB)
Definice: Fyzický adresový prostor jsou skutečné adresy dostupné v paměti; logický (virtuální) adresový prostor jsou adresy, které používá program. Překlad mezi nimi zajišťuje MMU.
Fyzický vs. virtuální
- Virtuální adresy umožňují každému procesu vlastní adresní prostor.
- MMU (Memory Management Unit) překládá virtuální adresy na fyzické adresy pomocí tabulek stránek.
3. Memory-mapped I/O
Část adresového prostoru může být vyhrazena pro vstupně-výstupní zařízení místo pro paměť. Tento způsob se nazývá memory-mapped I/O.
Výhody:
- stejný způsob přístupu jako k paměti (čtení/zápis)
Nevýhody:
- zmenšení dostupného adresového prostoru pro paměť
Praktický příklad: Grafická karta nebo řadič disků mohou mít namapované registry do určité oblasti adres, takže čtení z této adresy čte stav zařízení.
4. Adresový dekodér
Co je to adresový dekodér
Adresový dekodér je logický obvod, který dekóduje adresu na sběrnici a aktivuje konkrétní paměťový modul nebo I/O zařízení. Generuje signál CS (Chip Select), který povolí čtení nebo zápis do vybrané paměti.
Pracovní princip:
- Procesor vyšle adresu po adresové sběrnici.
- Dekodér porovná adresu s nastaveným rozsahem.
- Aktivuje odpovídající paměťový obvod; ostatní zůstávají neaktivní.
Typy dekódování
- Úplné dekódování: kontrolují se všechny adresové bity; každé zařízení má unikátní rozsah; žádné zrcadlení adres.
- Částečné dekódování: kontrolují se jen některé bity; jednodušší zapojení, ale může vzniknout zrcadlení adres (stejné zařízení reaguje na více adresních oblastí).
Praktická aplikace: V embedded systémech se často používá částečné dekódování pro snížení počtu logických obvodů, zatímco v přesnějších návrzích počítačových desek převládá úplné dekódování.
5. Vztah mezi adresovým prostorem a dekodérem
- Adresový prostor určuje, kolik adres je dostupných.
- Adresový dekodér rozdělí tento prostor mezi paměťové bloky a I/O zařízení.
- Správné dekódování je nezbytné, aby nedocházelo ke kolizím a aby každé zařízení reagovalo pouze na svůj adresní rozsah.
Příklad rozdělení (16bitový adresový prostor):
- $0000_{16}$ – $7FFF_{16}$ → RAM
- $8000_{16}$ – $BFFF_{16}
Už máš účet? Přihlásit se
Paměťový systém počítače
Klíčová slova: Paměťový systém počítače
Klíčové pojmy: Paměťový systém zahrnuje registry, cache, RAM, ROM a sekundární paměti, Adresový prostor má velikost $2^n$ pro $n$ adresových bitů, Fyzický a virtuální adresový prostor rozlišuje MMU, Memory-mapped I/O mapuje zařízení do adresního prostoru, Adresový dekodér generuje signál CS pro výběr zařízení, Úplné dekódování kontroluje všechny bity, částečné jen některé, Částečné dekódování může způsobit zrcadlení adres, Při návrhu mapy paměti určete jasné adresní hranice, 16bitový příklad: $0000_{16}$-$7FFF_{16}$ RAM, $8000_{16}$-$BFFF_{16}$ ROM, Správné dekódování zabraňuje kolizím zařízení, Cache zlepšuje výkon tím, že snižuje počet přístupů do RAM, Při omezených logických zdrojích volte kompromis mezi přesností a složitostí dekodéru