Přidání poznámek z POT k periferním zařízením a řadičům
This commit is contained in:
parent
ca4cf3a179
commit
1c0b28711c
1 changed files with 123 additions and 0 deletions
123
KIV POT/14. Periferní zařízení a řadiče.md
Normal file
123
KIV POT/14. Periferní zařízení a řadiče.md
Normal file
|
@ -0,0 +1,123 @@
|
||||||
|
# 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
|
||||||
|
|
||||||
|
**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
|
||||||
|
|
||||||
|
**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**
|
||||||
|
- 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)
|
Loading…
Reference in a new issue