4.8 KiB
4.8 KiB
Perfiferní zařízení a řadiče
Časovací obvody
- čítací registr - 8bitový registr nebo 16/32bitový čítač
- lze jej nastavit a číst programově nebo z pomocného registru
- počítá od nastavené hodnoty (
0000
->FFFF
) - při přetečení (
FFFF
->0000
) může generovat přerušení
- předdělička - snižuje frekvenci systémových hodin dělením zvolenou konstantou
Použití
- měření časových interrvalů
- generování přerušení po určitém čase
- periodické generování přerušení
Hodiny reálného času (RTC)
- obsahují kaskádu čítačů pro sekundy, minuty, hodiny, ...
- registry lze programově číst
- někdy na čipu se SRAM, ve společném pouzdru s krystalem a baterií
Diskové paměti
Konstrukční principy
- hlavy jsou na otočeném nosiči
- nastavením polohy hlav vybrán cylindr
- výběrem hlavy zvolena stopa
- záznam v jednotlivých stopách rozdělen na sektory
- klasické adresování sektorů: CHS (Cylinder, Head, Sector)
- novější způsob: LBA (Linear Block Address)
- všechny sektory jsou průběžně očíslovány jednorozměrnou adresou
- sektor (běžně 0.5 kB) = nejmenší objem dat, který lze číst/zapsat
- při požadavku na změnu 1 bytu
- přečte se celý sektor do paměti, změní se byte, sektor se zovu zapíše
- při požadavku na změnu 1 bytu
Kombinovaná zápisová/čtecí hlava
- zápis indukční hlavou
- záznam bitů modulací proudu v hlavě, kódování RLL
- čtení magnetorezistivní hlavou
- MR senzor - změna el. odporu v magnetickém poli
Zonální záznam (ZBR, Zone Bit Recording)
- bez ZBR - ve všech stopách stejný počet sektorů (povrch disku není dobře využit)
- se ZBR - v jednotlivých zónách je různý počet sektorů ve stopě
Rychlost disku
- rychlost vystavení hlav
- podle konstrukce vystavovacího mechanismu
- cca 0.5-1.0 ms na sousední stopu
- pro libovolné stopy cca 3-10 ms
- rychlost nalezení sektoru
- podle rychlosti otáčení
- 1/2 otáčky = 4.2 ms při 7200 ot/min
- rychlost přenosu
- podle rychlosti otáčení a kódování
- přenos z povrchu disku cca. 500-2000 Mbit/s
Solid State Devices (SSD)
Architektura Flash NAND
- stránka (page) = 2048 + 64 bytů (4 sektory)
- blok = běžně 64 stránek
- při kapacitě 4 Gb 4000 bloků
- AND nemá dělení na bloky
- paměťová matice se čte/zapisuje po stránkách
- ECC slouží k opravě chybně přečtených dat
- mazání
- AND - po stránkách
- NAND - po blocích
FTL (Flash Translation Layer)
- převádí logickou lineární adresu sektoru (LBA) na fyzickou adresu čipu / adresu stránky na čipu
- paralelní činnost banků pro zvýšení rychlosti
- rovnoměrné využívání stránek (Wear Leveling) pro vyšší životnost
- mazání volných stránek pro další zápis (Garbage Collection)
- správa vadných bloků
Rozhraní NVMHCI (Non Volatile Memory Host Controller Interface)
- protokol pro připojení nevolatilních pamětí na PCIe
Rozhraní ATA, ATAPI a SATA
Rozhraní ATA
- specifikace definuje
- fyzickou vrstvu
- odvozena od sběrnice ISA
- registry řadiče
- Command - příkazový registr - zápis povelu pro zařízení
- Sector Count - počet přenášených sektorů
- LBA Low, Mid, High - LBA adresa dat
- Device - výběr zařízení (č. 0/1), číslo hlavy při adresování CHS
- Status - stavový registr
- Alternate status - stavový registr
- Features - pro zápis různých parametrů (volba Ultra DMA, řízení úsporných režimů, ...)
- Error - indikace typu chyby
- fyzickou vrstvu
Rozhraní ATAPI (ATA Packet Interface)
- pro připojení CD/DVD
- do příkazového registru se zapisuje příkaz Packet Command (
0xA0
) - příkazy pro CD/DVD se předávají v příkazovém bloku (12 bytů) který se zapisuje do datového registru
- do příkazového registru se zapisuje příkaz Packet Command (
- příkazový packet
- do příkaz. registru se zapíše příkaz Packet Command
- do datového registru se zapíše příkazový packet
- z/do datového registru se čtou nebo zapisují data
Rozhraní SATA (Serial ATA)
- z hlediska aplikačního SW transparentní (používá stejné registry jako u ATA)
- fyzická vrstva
- každá disková jednotka propojena dvojicí jednosměrných signálů
- používá se diferenciální signál
- přenos. frekvence 1.5/3 GHz, rychlost tedy 150/300 MB/s
SATA II
- oproti SATA obsahuje rozšíření
- použití NCQ (Native Command Queuing)
- příkazy zadávány před dokončením předchozího
- vykonány v optimálním pořadí (určuje disk)
- rozvětvení portů (Port Multiplier)
- musí jej podporovat HBA (Host Bus Adapter)
- z jednoho HBA až na 15 portů
- port 15 (0xF) je Control Port
- podpora SES (SCSI Enclosure Services)
- komunikace s napájecími zdroji, ovládacím panelem, ...
- kompatibilita rozhraní se SAS (Serial Attached SCSI)
- použití NCQ (Native Command Queuing)