Program ● ●
Standarní rozhranní – – – –
●
Rozhraní pro pevné disky –
●
Paralelní port Sériový port, IRDA Firewire USB, Bluetooth ATA, SATA, SCSI (příště)
Cvičení: Blikající stromeček, řízení křižovatky, infračervený příjímač, osciloskop ze zvukové karty, měření sběrnice I2C, měření sběrnice USB, měření komunikace klávesnice, zvuková karta z paralelního portu, stavba I2C převodníku do paralelního portu.
První krůčky v C ●
Datové typy: – – – – –
●
void – speciální typ nespecifikovaný/prázdný int, unsigned int, signed int = DWORD char (zase signed unsigned) = BYTE int * = Ukazatel na proměnou typu int int nazev[32] – pole 32 hodnot typu int (paměť 4*32 byte)
Funkce mají jeden návratový typ –
Deklarace: ● ● ● ● ●
●
navratovytyp nazev (prametry); int main(void) { deklarace proměných tělo programu }
P ROGRAM = algoritmus + data
Programové konstrukce ●
rozhodování –
if (podmínka) { ●
–
else ●
– ●
příkaz
}
Iterace – – –
●
příkaz
for (i=0;i<10;i++) { příkaz1; }
iterace s podmínkou – – –
while (podmínka) { příkaz2; }
Rozhraní pro záznamová média ●
Úplně první PC XT mělo – – –
●
kazetový magnetofon Disketovou mechaniku 160KB 5'25 palce IBM ROM BASIC
Rozhraní záznamové jednotky –
jednotky pružných disků ● ● ●
–
Jednotky 5.25 palce Jednotky 3.5 palce připojeny přes vlastní řadič, maximálně 2 na PC
pevné a optické jednotky ●
pevné disky a optické jednotky (viz samostatná hodina) – –
vlastní řadič, dvě jednotky na kabel, rozhraní IDE, ATA později ještě druhý řadič, rozhraní EIDE, ATA
ATA - IDE ●
●
standart, norma pro pevné disky, později i pro optické jednotky (ATAPI) Advanced Technology Attachment Packet Interface (ATAPI), with the full standard ATA/ATAPI.
● ● ●
● ●
ATA - Advanced Technology Attachment Marketingem změněno na IDE (Integrated Drive Electronics) a později na EIDE Nedávno zase změněno na PATA Parallel ATA (P-ATA), Nové rozjranní SATA
Paralelní ATA - EIDE ● ●
● ●
http://en.wikipedia.org/wiki/EIDE přenáší najednou 16 bitů (nebo 32 ale po 16 vodičích ve dvou krocích) 40 pinové konektory Kabely: – –
má 3 konektory dva blíže kabely ●
40tižilový – –
●
původní jen do jistých rychlostí
80tižilový – – –
pro rychlosti ULTRADMA 66 a výše kvůli přeslechům se mezi všechny vodiče připojili kabely se zeměním ale konektor zůstal stejný
Pán otrok a cable select ● ● ●
Dva disky na jednom kabelu Jakpak se asi domluví kdo kdy bude hovořit s řadičem disku? buď pomocí: – –
●
Master – – – –
●
řídí přístup ke kabelu systém ho najde jako „primární“ měl by to být disk a ne CDROM apod Pozor: Když je disk sám někdy (jistě u disků Western Digital) musí být propojka na SINGLE
Slave – –
●
propojek na disku Cable select (CS)
druhé zařízení přístup ve volném čase masteru
Cable select –
A drive setting called cable select has also emerged. In this mode of operation, the drives automatically configure themselves as master or slave. This is achieved by cutting wire 28 (on 40 wire cables, or wires 56
Přenosové rychlosti ●
PIO – – – –
●
programmed input output procesor vykonává instrukce IN OUT a tak komunikuje s diskem hodně zátěžové pro procesor PIO modes: pio0 pio1 pio2 pio3 pio4
DMA – – –
Direct Memory Access procesor naprogramuje jen disk a v paměti se objeví data DMA módy: ● ●
– – – – –
DMA modes: mdma0 mdma1 mdma2 UDMA modes: udma0 udma1 *udma2 udma3 udma4 udma5
ATA33 znamená nejvýše UDMA2 => 33.3 MB/s ATA66 znamená nejvýše UDMA4 => 66.7 MB/s ATA100 znamená nejvýše UDMA5 => 100 MB/s ATA133 znamená nejvýše UDMA6 => 133 MB/s V dnešní době disky PATA „vytáhnou“ cca 55MB/s
SATA ● ● ● ● ● ● ●
http://en.wikipedia.org/wiki/Serial_ATA přenáší data sériově po 7dmi pinovém kabelu rychlosti možné do 150MB/s (až do 300MB/s (ATA II)) hotswapping native command queing (změna pořadí příkazů) Žádný Master/Slave Jiný konektor na napájení (3.3V 5V 12V)
SCSI ● ● ● ●
●
● ●
http://en.wikipedia.org/wiki/SCSI Small Computer System Interface standart pro rohraní pro přenos dat SCSI host adapter – řadič sběrnice SCSI (mezi „PC“ a zařízeními SCSI) Každé zařízení podobně jako IDE disk musí mít řadič pro sběrnici SCSI V dnešní době SCSI zůstalo dominantní na poli Worksations a Serverů Periferie – – –
● ●
disky DVDROM CDRW apod tiskárny, scannery (dříve)
Rozhraní SCSI se objevilo počátkem 80 let minulého století verze – výrobci nemusejí implementovat celou sadu příkazů dané verze – –
SCSI 1, SCSI 2, SCSI 3 Výrobci často dodávali přípony ULTRA, WIDE, FAST – SCSI aby odlišili přenos. rychlosti
Bluetooth ● ●
●
http://en.wikipedia.org/wiki/Bluetooth Název po králi Haraldu Blåtandovi (Harold Bluetooth, Harold Modrozub), králi Dánska a Norska (935 and 936) velkému sjednotiteli severských národů bezdrátový přenos k perfieriím jako jsou – – –
●
tiskárny, sluchátka, telefony, PDA, klávesnice 2.45 Ghz, channel hopping (změna frekvence vysílače 1000x za sekundu) hodně zjednodušeně „bezdrátové USB“
Verze: – – –
1.0 a 1.0B první pokus a nic moc. 1.1 opravy a podpora nešifrovaných spojení 1.2 samozřejmě zpětně kompatibilní s 1.1 ● ●
–
rychlejší přenosové rychlosti adaptivní freq. hopping
2.0 zase zpětně kompatibilní ● ●
rychlejší 2.1 Mbit/s vestavěný QoS (priorita toků zařízením)
USB úvod ● ● ●
http://en.wikipedia.org/wiki/Universal_Serial_Bus Universal serial Bus pro připojení běžných periferií k počítači –
● ●
● ●
myši, klávesnice, zvuková karta, modemy, fotoaparáty, externí paměti, sítě
Asymetrická topologie (nesouměrné propojení) K jednomu USB portu (řadič sběrnice USB) lze připojit více zařízení je třeba užít USB HUB (funguje podobně jako síťový hub/switch) Standarty – –
USB 1.1, USB 2.0 Hardwarová implementace rozhraní ● ● ●
UHCI – implementace veze 1.1 firmou INTEL (a VIA koupila licenci) OHCI - implementace veze 1.1 firmou Compaq EHCI – implementace verze 2.0
USB třídy zařízení ● ● ●
●
Zařízení se dělí podle funkcí do tříd každá třída má standartizovaný protokol pro komunikaci operační systém nemusí mít ovladače pro konkrétní zařízení protože se chová jako zařízení z nějaké třídy (v nejlepším případě) třídy –
USB HID – Human Interface Devices ● ●
– – –
rozhraní počítač člověk klávesnice, myši
USB Mass Storage Devices externí paměťová média USB comunications device class – modemy, winmodemy, síťové karty USB Audio, Printer, Video ...
Konektory a fyzické rozhraní ● ● ●
●
4 žílový kabel Diferenční datové vodiče D+ D2 žíly napájení 5V, max 0.5A pro všechna zařízení připojené na ten samý port Konektory – –
●
typ A nejznámější typ B, mini A, mini B atd.
Rychlost rozhranní – – – –
tři různé toky Low speed – klávesnice apod. 1.5Mbit/s Full speed – mass storage 12 Mbit/s High speed – pro USB 2.0 480Mbit/s
USB technické detaily ●
●
Zařízení z pohledu řadiče jsou functions (jedno zařízení může mít vicero funkcí) Functions mají pipes (roury pro přenos) –
až 15 pro každou „stranu“ přenosu (z a do zařízení)
● ●
Druhy přenosu – – – –
control transfers – krátké přikazy zařízení dotazy na stav apod. isochronous transfers – jako Firewire, přenosy s jistou ganrantovanou rychlostí, něco se může ztratit interrupt transfers – zařízení co mohou dostat data kdykoli např. klávesnice bulk transfers – velké přenosy dat omezenou dobu, např přenosy dat do/z přenosných disků (fotoaparátů)