Elektronické počítačové systémy
1. Štandardná architektúra počítačov
Architektúra počítačov je časť vedy o počítačoch, študujúca predovšetkým štruktúru,
organizáciu, realizáciu a funkciu počítačov.
Za predpokladu, že počítač sa skladá z určitého počtu funkčných blokov, význam
jednotlivých položiek môžeme spresniť takto:
štruktúra - popisuje prepojenie jednotlivých funkčných blokov
organizácia - popisuje dynamickú interakciu funkčných blokov a riadenie styku
medzi nimi
realizácia - popisuje návrh a vnútornú štruktúru jednotlivých funkčných blokov
funkcia - popis chovania počítača ako celku navonok
Tieto štyri položky nám ukazujú cestu návrhu počítačov, pričom nie je možné
jednotlivé úrovne návrhu od seba oddeľovať, nakoľko by sme tým prijímali značné
obmedzenia.
Návrhár nových architektúr počítačových systémov sa musí opierať o tieto zdroje
informácií:
1. Tradícia
2. Použiteľná technologická základňa
3. Vlastnosti živých organizmov
4. Fantázia
1.1. Von Neumanova architektúra číslicového
počítača
Začiatkom 40-tych rokov dvadsiateho storočia skupina vedcov pod vedením
matematika maďarského pôvodu von Neumanna formulovala základné princípy architektúry
počítačov platné dodnes:
1. Počítač sa skladá z týchto funkčných jednotiek: pamäť, radič, aritmetická jednotka,
vstupné a výstupné jednotky.
2. Štruktúra počítača je nezávislá na type riešenej úlohy, počítač sa programuje
obsahom pamäti.
3. Inštrukcie a operandy sú v tej istej pamäti.
4. Pamäť je rozdelená do buniek rovnakej veľkosti, ich poradové čísla sa používajú
ako adresy.
5. Program je tvorený postupnosťou príkazov - inštrukcií, v ktorých spravidla nie je
obsiahnutá hodnota operandu, ale uvádza sa ich adresa, takže program sa pri
Strana 5
zmene údajov nezmení. Inštrukcie sa vykonávajú jednotlivo v poradí, v ktorom sú
zapísané do pamäti.
6. Zmena poradia vykonávania inštrukcií sa vyvolá inštrukciou podmieneného alebo
nepodmieneného skoku.
7. Pre reprezentáciu inštrukcií a čísel sa používajú dvojkové signály a dvojková
číselná sústava.
Radič
Výstupná
jednotka
Pamäť
Vstupná
jednotka
Aritmeticko
logická
jednotka
1.1. Von Neumanova architektúra číslicového počítača
Podstatná časť von Neumannových myšlienok zostáva v platnosti dodnes a takmer vo
všetkých sériovo vyrábaných počítačoch nájdeme uvedených sedem bodov.
Prvý počítač postavený na základe von Neumannovej koncepcie bol postavený v roku
1949 s názvom EDSAC.
1.2. Centrálna procesorová jednotka
CPU - je hlavnou činnou jednotkou, zabezpečujúcou predovšetkým riadiacu a
synchronizačnú činnosť systému. Túto činnosť zabezpečuje radič a jeho podporné obvody,
ktorý sa nachádza v každej CPU.
1.2.1. Radič
Každý ucelený systém, vykonávajúci definovanú činnosť potrebuje koordinačnú
službu, ktorú zabezpečuje radič. Využíva k tomu vnútornú zbernicu pre internú komunikáciu
a sadu interných pamäťových miest - registrov, ktoré môžu uchovávať medzivýsledky dôležité
pre ďalšiu činnosť.
Veľmi dôležitou úlohou CPU je činnosť spojená s vyberaním a vykonávaním
jednotlivých príkazov - inštrukcií. Každá inštrukcia je pre radič vlastne kódové slovo, na ktoré
dekóder tohoto slova (dekóder inštrukcie) vyberie z vnútornej pevnej pamäte radiča
S tra na 6
Elektronické počítačové systémy
postupnosť riadiacich a synchronizačných signálov. Tieto sú vnútornou zbernicou odoslané k
ostatným výkonným jednotkám.
Ďalšou dôležitou úlohou radiča je správny výber ďalšej inštrukcie zo vstupnej
postupnosti inštrukcií. Táto postupnosť býva najčastejšie uložená v operačnej pamäti a radič
iba generuje ich jednotlivé adresy, pričom nie je ešte určené či sa jedná o inštrukčný kód alebo
dátovú informáciu ako operandy.
Radič musí zaistiť správnu interpretáciu, čiže mikrokód implementovaný v radiči
spätne ovplyvňovať.
A
B
C
D
E
F
G
I
H
J
1.2. Obecný inštrukčný cyklus
V prvej časti inštrukčného cyklu (A, B) radič prijme inštrukčný kód zo zbernice a
vonkajšiemu prostrediu dá signál -"začínam vykonávať inštrukciu". Ďalej sa vykoná prvé
dekódovanie inštrukčného kódu, ktoré určuje počet a typ ďalších dátových informácií nutných
pre správne vykonanie načítanej informácie (C). Údaje môžu byť buď priamo prístupné alebo
Strana 7
sa musia načítať z vonkajšieho zariadenia. V ďalšej časti inštrukčného cyklu sa vykonáva
vlastná inštrukcia (E) definovaná inštrukčným kódom. Nasleduje časť, kedy CPU výsledky
získané vykonaním operácie ukladá na zodpovedajúce miesta, ktoré sú definované v
samotnom inštrukčnom cykle.
Posledná časť inštrukčného cyklu je kľudová a CPU čaká na vhodný okamžik, aby
mohol začať s vykonávaním nového inštrukčného cyklu. Kontroluje stav vonkajšej zbernice a
prijíma požiadavky na vykonanie neštandardných operácií alebo iba čaká (F, I).
Medzi neštandardné operácie patrí vykonávanie prázdnych inštrukčných cyklov
(WAIT), uvoľnenie zbernice (HOLD) a vykonanie asynchronných procedúr (INTERRUPT ).
Cyklus WAIT je špeciálny cyklus CPU, kedy CPU čaká na dokončenie požadovanej
operácie, ktorú vykonáva vonkajšie zariadenie k takej operácii prispôsobené.
Cyklus HOLD je špeciálny cyklus CPU, kedy CPU zachytila požiadavku na uvoľnenie
riadenia vonkajšej zbernice. V prípade, že sa tak uskutoční, všetky obvody podieľajúce sa na
riadení zbernice odpoja svoje vstupy a výstupy od zbernice a vyšlú správu - "zbernica
odpojená". Po odpojení posledného riadiaceho obvodu, pridelí riadiaci obvod zbernicu tomu
obvodu, ktorý túto situáciu vyvolal a vyšle správu, že zbernica je obsadená. Tento operáciu
okamžite vykoná a po ukončení zbernicu uvoľní. Nadriadený obvod zbernice opäť prevezme
riadenie a ak ju sám nepotrebuje, informuje sa či nemá o ňu nik záujem.
CPU za predpokladu, že počítač je konečný automat riadený sekvenciou príkazov a
pracujúci s údajmi v binárnej forme, sa stará o súčinnosť mnohých takmer samostatných
jednotiek. Každá takáto jednotka je na svoju činnosť optimalizovaná a pre komunikáciu
využíva jasne definované protokoly. V ďalšom musí CPU zabezpečiť vykonávanie operácií
daných algoritmom a tiež sa musí postarať o ukladanie informácií.
1.2.2. Základné vlastnosti CPU
Rýchlosť CPU
Mikroprocesor pracuje podľa určitého taktu hodín - frekvencia, ktorého správne
nastavenie je dôležité pre jeho optimálnu činnosť. Pri malej frekvencii nie je dostatočne
využívaná výkonnosť mikroprocesora a pri veľkej frekvencii neúmerne vzrastá počet chýb a
tým sa zmenšuje výkonnosť. Frekvencia 1 MHz je milión taktov za sekundu. Staršie počítače
PC XT používali hodiny s frekvenciou 6 MHz a vyššiu. Najnovšie typy procesorov využívajú
to, že všetky externé zariadenia sú značne pomalšie ako vlastný procesor a ich interná
frekvencia je niekoľkonásobne vyššia ako externá.
Šírka slova
Šírka slova nám určuje, aké najväčšie číslo môže byť spracované v rámci jednej
operácie. Býva 8, 16, 32 a 64 bitov. Samozrejme, ktorýkoľvek počítač môže byť
naprogramovaný tak, aby spracovával ľubovoľne veľké číslo, musí však rozdeliť túto operáciu
na rad podoperácii. Teda čím väčšia šírka slova, tým menej podoperácií a tým väčšia
priechodnosť - výkonnosť.
S tra na 8
Elektronické počítačové systémy
Šírka prenosu údajov
Šírka prenosu údajov určuje šírku, ktorou sú údaje presúvané do CPU. Môže byť 8, 16,
32 a 64 bitov. Šírka prenosu údajov nemusí byť zhodná so šírkou slova! Čím je väčšia šírka
slova údajov ,tým je väčšia výkonnosť CPU. Napríklad príkaz MOV AX,0350 trvá pri
procesore i8080 dvakrát dlhšie ako pri procesore i8086. Síce obidva majú rovnakú šírku slova,
no majú rozdielnu šírku prenosu údajov (i8080 - 8 bitov, i8086 - 16 bitov).
Adresový priestor pamäte
Adresový priestor pamäte stanovuje akú maximálne veľkú pamäť môže ten ktorý
procesor využívať (adresovať). Opäť platí, čím väčší adresový priestor, ale samozrejme aj
fyzická pamäť RAM, tým väčšia výkonnosť CPU. Najstaršie typy procesorov mohli adresovať
len 64 kB, neskôr to bol 1 MB. Najnovšie typy procesorov umožňujú adresovať rádovo GB.
1.2.3. Základné typové triedy procesorov
Mikroprocesor 8088
Je použitý vo väčšine počítačov triedy PC XT. Je dodávaný v púzdre DIP (Dual In line) so 40 vývodmi, čo je obdĺžnikové púzdro s dvoma radmi vývodov po 20. Klasický i8088
(označovaný tiež i8088-1) pracoval s frekvenciou do 5 MHz, neskôr bol vyvinutý i8088-2
(Turbo PC XT) s frekvenciou do 8 MHz. Procesor i8088 zodpovedá 29 000 tranzistorom.
Mikroprocesor 80286
Navrhnutý firmou INTEL v roku 1981. Dodáva sa v púzdre PGA (Pin Grid Array), čo
je mriežkové usporiadanie vývodov. Procesor i80286 zodpovedá 130 000 tranzistorom na
pomerne malej ploche a preto je nutné chladenie formou doštičiek na jeho povrchu.
Mikroprocesor 80386
Mikroprocesor i80386DX bol uvedený na trh v roku 1986 v puzdre PGA a zodpovedá
250 000 tranzitorom. Poskytuje omnoho širšie programovacie schopnosti ako i80286,
umožňuje vykonávať aj programy v režime súbežného spracovania úloh. i80386SX sa líši od
i80386DX tým, že SX má šírku prenosu len 16 bitov.
Mikroprocesor 80486
Nepredstavoval taký výrazný skok ako napr. prechod z i80286 na i80386. V podstate
môžeme povedať, že je to zmodernizovaná i80386. Jeho mikrokód je rozsiahlejší a rýchlejší.
i80486 obsahuje v sebe okrem vylepšeného i80386 aj radič vyrovnávacej pamäte 80385 a
numerický koprocesor 80387. 80486 zodpovedá 1,25 miliónu tranzistorov. Rozdiel medzi
80486DX a 80486SX spočíva v odpojení koprocesora pri 80486SX.
Postupom času sa začali dodávať na trh aj koprocesory, ktoré po pripojení k 486SX
tento procesor úplne zatienili. Firma INTEL začala vyrábať čip nazývaný OVER DRIVE,
ktorý sa zasúval do pätice pre 80487SX a pracoval s dvoma frekvenciami (internou a
externou). Na princípe čipov OVER DRIVE sa začali vyrábať aj procesory s dvojitou
frekvenciou označované DX2, prípadne so štvornásobnou frekvenciou DX4, čiže vnútorná
frekvencia procesora bola dva, prípadne štyrikrát vyššia ako frekvencia, ktorou komunikoval s
okolím.
Strana 9
Výrobca
Typ
Max.
rýchlosť
(MHz)
Šírka slova
(b)
Šírka
prenosu
údajov (b)
Operačná
pamäť (MB)
INTEL
8080
8
16
8
1
INTEL
8086
8
16
16
1
INTEL
8186
16
16
16
1
NEC
V20
10
16
8
1
NEC
V30
10
16
16
1
INTEL
80286
20
16
16
16
INTEL
80386D
33
32
32
4096
INTEL
80386S
20
32
16
16
INTEL
80486D
33
32
32
4096
INTEL
80486S
20
32
32
4096
Tab.1.3. Prehľad základných charakteristík najpoužívanejších typov procesorov
Mikroprocesor PENTIUM
Bol uvedený na trh len v nedávnej dobe a je plne kompatibilný s procesormi 80X86.
Zodpovedá viac ako 3,1 miliónom tranzistorov. Jeho vnútorná architektúra je 32 bitová. Šírka
prenosu údajov je 64 bitov. Optimálne výkony dosahuje pri frekvenciách 60 a 66 MHz. Jeho
superskalárna architektúra umožňuje vykonávať viac ako 1 inštrukciu počas jedného taktu.
Hlavné odlišnosti od predchádzajúcich procesorov, ktoré umožnili zväčšiť jeho
výkonnosť:
• superskalárna architektúra,
• oddelená kódová a dátová vyrovnávacia pamäť (CACHE),
• predikcia vetvenia inštrukcií,
• vylepšená 64 bitová dátová zbernica,
• voľba veľkostí stránky pamäte,
• monitorovanie výkonu,
• detekcia chýb a funkčná redundancia,
Superskalárna architektúra:
Schopnosť vykonávať viac inštrukcií v jednom takte, je umožnená dvoma kanálmi,
ktoré môžu spracovávať 2 inštrukcie súčasne, čo umožňuje existencia dvoch aritmetickologických jednotiek.
S tra na 10
Elektronické počítačové systémy
1.3. Organizácia registrov CPU
Typy údajov
Elementárnou jednotkou množstva informácií je jeden bit (b). Najmenšou
adresovateľnou jednotkou, t.j. najmenšie množstvo informácií, ktoré sa ukladá do pamäte je 1
Byt = 8 bitov, niekedy označovaný aj ako slabika.
Bit najnižšieho rádu sa označuje nulou (LSB).
Bit najvyššieho rádu sa označuje sedmičkou (MSB).
Všetky ostatné jednotky, ktoré využíva procesor sú odvodené od slabiky:
210
1KB
220
1MB
30
2
1GB
1TB
240
Spojenie dvoch slabík sa nazýva slovo (WORD - používaná skratka W). Bity slova sú
číslované 0-15, bity 0-7 tvoria dolnú slabiku, bity 8-15 tvoria hornú slabiku
horná s la bika
dolná s la bika
15
7
0
4 slabiky vytvárajú dvojslovo - označujeme ho DOUBLE.
8 slabík vytvára štvorslovo - označujeme ho QUARD.
Adresy slov nemusia byť zarovnané na párne adresy (adresa slova nemusí byť
deliteľná dvoma).
Organizácia pamäte
Pamäť pripojená na zbernicu procesora sa nazýva fyzická pamäť. Je organizovaná ako
postupnosť slabík, pričom každej je priradená fyzická adresa, ktorá je v intervale 0-232-1
(4GB) .
Používateľ (programátor) však využíva virtuálnu pamäť. Prechod medzi fyzickými
adresami a virtuálnou pamäťou zabezpečuje správa pamäti, ktorá ponúka užívateľovi
segmentovanie a stránkovanie.
Segmentovanie je mechanizmus poskytujúci násobný a nezávislý prístup k
adresovému priestoru.
Stránkovanie pamäti podporuje vytváranie rozsiahlejšieho adresového priestoru, než je
kapacita fyzickej pamäti s použitím vonkajšej diskovej pamäte.
Môžu sa používať obidva mechanizmy alebo len jeden.
Ak sa program odkazuje na pamäť, použije logickú adresu. Táto sa segmentovaním
predkladá sa nesegmentovanú lineárnu adresu. Stránkovanie následne lineárnu adresu
prekladá na fyzickú, ak však nie je zapnuté stránkovanie, lineárna adresa sa rovná fyzickej.
Segmenty využívané segmentáciou sú vzájomne nezávislé priestory pamäte. Rôzne
segmenty sa vytvárajú pre inštrukcie privádzané do programu, rôzne pre údaje alebo zásobník.
Jeden proces môže mať až 16 383 segmentov rôznych veľkostí a typov. Logická adresa sa
Strana 11
skladá zo selektoru a offsetu. Selektor nás informuje okrem iného o báze (adresa začiatku)
segmentu a veľkosti segmentu.
OFFSET- je relatívna adresa vo vnútri segmentu a počíta sa od jeho začiatku,
samozrejme nesmie prekročiť veľkosť segmentu.
Logickú adresu zapisujeme v tvare:
selektor: offset
Výhodou segmentácie je, že sa kontrolujú prístupy k jednotlivým segmentom,
kontroluje sa prekročenie veľkosti, oprávnenie prístupu k segmentu a typ operácie
vykonávaný so segmentom.
Registre:
Mikroprocesory radu 80X86 a Pentium využíva tieto 3 skupiny registrov:
• všeobecné registre - osem 32-bitových registrov, ktoré môže väčšinou voľne
používať programátor,
• segmentované registre - šesť 16-bitových registrov, určených pre uloženie
selektoru,
• príznakový register EFLAGS a register smerníka inštrukcie (EIP).
Všeobecné registre:
Patria sem EAX, EBX, ECX, EDX, ESI, EDI, EBP, ESP
Do všetkých týchto registrov sa dajú ukladať výsledky a operandy pre aritmetické a
logické operácie. Tiež je možné ich použiť pre adresové výpočty okrem registra ESP.
Je možné zvlášť používať dolné slovo registrov AX, BX, CX, DX a aj ich horné aj
dolné slabiky AH, BH,CH, DH, AL,BL, CL, DL. Mená registrov majú svoj význam:
• EAX - akumulátor,
• EBX - bázový register často sa používa ako offsetová časť adresy,
• ECX - čítač (inštrukčné cykly),
• EDX - všeobecný údajový register,
• ESI, EDI, EBP, ESP sa najčastejšie používajú pre uloženie offsetovej časti
adresy,
• ESP - obsahuje offset adresy vrcholu zásobníka,
• EBP - je určený prevažne pre uloženie offsetovej časti adresy zásobníka,
• ESI - EDI indexové registre,
• ESI - indexové registre pre uloženie offsetovej adresy zdrojového operanda,
• EDI - indexové registre pre uloženie offsetovej adresy cieľového operanda.
Tieto konvencie je nutné dodržiavať pri práci s reťazcami. Zostavenie registra ESP je
výsadné a nemenné. Procesory vyrábané pred i80386 mali iba 16 a 8 bitové časti registrov.
S tra na 12
Elektronické počítačové systémy
Segmentové registre:
Je to šesť 16-bitových registrov slúžiacich pre uloženie selektora segmentu.
Patria sem:
• CS (code segment) v spojení s EIP je určený pre adresáciu kódu (inštrukcie),
adresovanie inštrukčných segmentov,
• DS (data segment) v spojení so všeobecným registrom adresuje údaje. Ako
pomocné dátové registre sa používajú ES(extra), FS a GS,
• SS (stack segment) zásobníkový , slúži na určenie vrcholu zásobníka v spojení
s registrom ESP a EBP.
Registre FS a GS používajú až procesory počínajúc typom i80386. Veľkosť všetkých
segmentových registrov zostáva u všetkých typoch procesorov rovnaká.
Príznakový register:
Obsahuje dve skupiny príznakových registrov. Prvá skupina sú príznaky nastavované
procesorom. Druhá skupina sú príznaky nastavované používateľom, pomocou ktorých môže
čiastočne riadiť chod procesora (napr. príznak PF - kontrola parity, DF - smer
vykonávania,...).
EIP - register smerníka inštrukcie obsahuje vždy offsetovú časť práve vykonávanej
inštrukie. Používateľ nemá možnosť meniť priamo obsah tohto registra.
1.4. Adresovacie techniky
Príkazy určené procesoru na spracovanie sa zadávajú vo forme inštrukcií, ktoré sa
skladajú z dvoch častí:
a) operačný znak je vlastným príkazom pre procesor,
b) operandy obsahujú vlastné údaje
Spôsob sprístupnenia - adresovania operandov sa uskutočňuje nasledovnými
technikami.
1.4.1. Register
Operand je priamo uložený v niektorom 32-bitovom (prípadne 16 alebo 8 bitovom)
všeobecnom registri. Môžu sa taktiež využívať registrové páry, ktoré vznikajú spojením dvoch
registrov .
Príklad:
MOV AX, CX
Prepíš obsah registra CX do AX
Strana 13
1.4.2. Priamy operand
Operand je priamo uložený v inštrukcii ako konštanta.
Príklad:
MOV AX, 120
Naplň register AX hodnotou 120
1.4.3. Pamäťové operandy
Týmto spôsobom sa sprístupňujú operandy uložené vo fyzickej pamäti. Každá adresa
sa získava zložením segmentu (príp. selektoru) a offsetu.
Segmentový register sa určuje väčšinou implicitne. Implicitná voľba je daná
niekoľkými faktormi, ako hlavný je typ operácie s pamäťovým registrom. Podľa typu
spracovávaného operandu sa potom vyberá segmentový register, ktorý sa použije pre výpočet
lineárnej adresy operandu.
Prístup k
inštrukciám
Použitý register
CS (Code Segment)
zásobníkom
SS (Stack Segment)
údajom
DS (Data Segment)
alternatívnym
údajom
ES (Extra Segment)
Operácia
Výber operačného znaku
alebo priameho operandu
Pri všetkých prístupoch k
zásobníku v spojitosti s
registrom ESP alebo EBP
Pri všetkých prístupoch k
údajom v pamäti okrem
zásobníka a priamych
operandov.
V reťazcových operáciách
pre segmentovanie
zdrojového operandu
V reťazcových operáciách
pre segmentovanie
cieľového operandu
Tab.1.4. Implicitné priradenie segmentových registrov vzhľadom k typu spracovávaného
operandu
V prípade potreby je možné pre jednu inštrukciu pomocou prefixu zmeniť implicitné
priradenie segmentového registra. Prefixami nie je možné zmeniť nastavenie segmentového
registra v týchto prípadoch:
- cieľový reťazec v reťazcových operáciách je vždy segmentovaný registrom ES,
- operácia uloženia do zásobníka a výberu zo zásobníka sa vždy segmentuje
registrom SS,
- výber inštrukcií sa vždy segmentuje registrom CS.
S tra na 14
Elektronické počítačové systémy
Offsetová časť adresy je uložená v niektorom zo všeobecných registrov
Príklad:
MOV BH, CS:[AX]
Nepriama adresa.
MOV AH, GS: Adresa
MOV BH, CS: [AX]
MOV AH, CS:Adresa
Nepriama adresa CS : AX a implicitne si vyberá
dátový segment.
Priama adresa cez GS.
1.5. Ovládanie vstupov a výstupov (V/V)
Vstupné a výstupné operácie vykonávajú procesory 80x86 prostredníctvom V/V brán
(I/0 - ports). Vstupno výstupné brány sú registre v radičoch periférnych zariadení. Vstupno
výstupná brána môže byť vstupná, výstupná alebo obojsmerná a z toho vyplýva, že z nej
môžeme iba čítať, iba zapisovať, alebo aj čítať aj zapisovať.
Vstupno výstupné brány môžeme adresovať dvoma spôsobmi:
1. Prostredníctvom zvláštneho adresového priestoru a V/V inštrukcií.
2. Mapovanie V/V brán do adresového priestoru fyzickej pamäte.
1. Adresovanie pomocou zvláštneho adresového priestoru
CPU pre adresáciu V/V brán poskytne oddelený 16-bitový adresový priestor, teda
môžeme samostatne adresovať 64 kB V/V brán. Brány sú 8-bitové a je možné ich spájať do
16-tich prípadne 32 bitov.
Pre prístup k V/V bránam nám slúžia inštrukcie IN, OUT, ktoré prenášajú údaje medzi
akumulátorom a V/V bránou.
To, či adresa nastavená na adresovej zbernici sa použije na prístup do pamäte alebo do
vstupno-výstupného adresového priestoru indikuje signál M/IO (Memory Input Output).
2. Mapovanie V/V brán do adresového priestoru fyzickej
pamäte
V tomto prípade adresujeme vstupno-výstupné brány priamo do adresového priestoru
fyzickej pamäte. Výhodou takéhoto usporiadania je, že pre ovládanie V/V brán je možné
použiť všetky inštrukcie pre prácu s pamäťou a všetky dostupné adresovacie techniky.
Dôležité je zabezpečiť synchronizáciu V/V operácií, aby napr. čítanie V/V brány
nepredbiehalo zápis do nej.
Strana 15
1.6. Organizácia hlavnej pamäte
V súčasnej dobe využívajú procesory na báze 80x86 tieto druhy primárnych pamätí:
1. konvenčná,
2. rozšírená EXTENDED - XMS,
3. prekrývaná, stránkovaná EXPANDED - EMS.
Konvenčná pamäť
80x86 pri svojej činnosti pod operačným systémom MS DOS využíva prvých 640 kB,
ktorých využitie je následujúce:
640 KB-1
9FFFF
pra covná obla s ť
a pliká cie
247KB
3B400
a pliká cia
69KB
54KB
1KB
0KB
11400
TS R - progra m
DOS
BIOS
00800
00400
0000
S tra na 16
Elektronické počítačové systémy
Adresový priestor nad 640 kB, ktorý je schopný adresovať aj 8088 a 8086 sa využíva
nasledovne:
1024KB-1
FFFFF
Re ze rvova ná obla s ť, ROM, buffe ry
BFFFF
768KB-1
Re ze rvova ná obla s ť, vide o pa mä ť
640KB-1
9FFFF
Re ze rvova ná obla s ť, vide o pa mä ť
0
00000
Extended Memory - XMS
Procesory od 80286 sú schopné adresovať väčší adresový priestor než 1MB. Aby však
mohli využívať túto pamäť nad 1 MB musia sa prepnúť do tzv. chráneného režimu (protected
mode), ktorý nie je kompatibilný s reálnym režimom procesorov 8088, 8086.
Chránený režim vymedzí každej aplikácii určitý pamäťový priestor a v prípade, že sú
prekročené jeho hranice, je aplikácia ukončená. Aby mohla byť využívaná rozšírená pamäť,
musí byť k tomu aplikácia špeciálne naprogramovaná.
Expanded Memory - EMS
Väčšina DOS aplikácií však nevie využívať XMS. Preto firmy LOTUS, INTEL,
MICROSOFT vyvinuli štandard pre programový produkt, ktorý prekračuje obmedzenie DOSu
pomocou stránkovania. V rezervovanej pamäti (640-1024 kB) sa alokuje 64kB pre 4 stránky
(1 stránka - 16 kB).
V počítačoch 80386 a vyšších je nutné pre EMS používať program EMM386.
Strana 17
2. Architektúra operačných systémov
Operačný systém je základná zložka programového vybavenia, ktorá prispôsobuje
technické prostriedky stanoveným typom aplikácií a požadovanému režimu činnosti počítača.
Základnú skupinu funkcií operačného systému tvoria tzv. služby, ktoré dávajú k
dispozícii jednotlivým aplikáciám systém dátových štruktúr a podprogramov realizujúcich nad
nimi operácie a tým sa stávajú aplikačné programy nezávislé na technickom vybavení
počítača. Tieto služby nad technickými prostriedkami vytvárajú tzv. virtuálny počítač a sú
implementované v základnej zložke operačného systému, ktorej hovoríme jadro operačného
systému.
V súčasnej dobe rozlišujeme podľa použitia tieto dve skupiny operačných systémov:
a) nešpecializované (univerzálne operačné systémy),
b) špecializované operačné systémy:
• databázové operačné systémy,
• RT - systémy (orientované na riadenie v reálnom čase).
K charakteristickým rysom operačných systémov patrí ovládanie vonkajších pamätí na
báze súborov, bežných periférií (klávesnica, monitor...) a hlavne spúšťanie výpočtových
procesov riadených aplikačnými programami (t.j. umiestnenie programu do operačnej pamäte
a následné pridelenie procesora).
Tieto funkcie vytvárajú tzv. používateľské rozhranie, ktoré slúži pre styk používateľa s
počítačom. Je možné vytvoriť ho tak, že je možná práca viacerých používateľov alebo len
jedného (t.j. viacužívateľský alebo monoužívateľský operačný systém).
2.1. Monoužívateľský operačný systém
2.1.1. Jednoduchý monoužívateľský operačný
systém
Charakteristickým predstaviteľom tohto typu operačných systémov je operačný systém
8 bitových počítačov CP/M, ktorého implementácia spočíva predovšetkým v realizácii
interpreteru riadiaceho jazyka vytvárajúceho používateľské rozhranie a v realizácii služieb
pre prácu so súbormi.
Modul BIOS(Basic Input Output System), ktorý tvorí základnú vrstvu - tzv. fyzický
systém vstupu a výstupu - správa periférií - obsahuje ovládače jednotlivých periférií. Modul
BIOS využívajú jednotlivé služby, realizované pomocou podprogramov, ktoré sú súčasťou
modulu BDOS. Väčšinu služieb predstavujú operácie systému ovládania súborov.
Primárne funkcie modulu BIOS:
a) Inicializačné funkcie:
• úplná inicializácia systému,
• obnovenie CCP a BDOS,
S tra na 18
Elektronické počítačové systémy
aplikaèné programy
a
interpreter riadiaceho jazyka
rozhranie
virtuálneho
poèítaèa
BDOS
BI OS
vrstva 2
vrstva 1
vrstva 0
2.1. Hierarchické usporiadanie CP/M
b) Ovládanie klávesnice, obrazovky, snímača, tlačiarne:
• stav klávesnice,
• znak z klávesnice,
• znak zo snímača,
• stav tlačiarne,
• znak na obrazovku,
• znak na tlačiareň.
c) Ovládanie diskety (disku):
• výber disku,
• výber stopy,
• výber sektoru,
• adresa prenosu,
• začatie čítania a čakania na ukončenie operácie,
• začatie zápisu a čakania na ukončenie operácie,
• preklad logických čísiel sektorov na fyzické čísla,
• výber stopy 0.
Modul BDOS, ktorý tvorí ďalšiu vrstvu programového vybavenia, využíva všetky
služby BIOSu. Realizuje základné operácie so súbormi ako otvorenie a zatvorenie súboru,
čítanie a zápis do súboru, ale aj vstup znaku a reťazca z klávesnice a výstup znaku a reťazca
na obrazovku.
Z hierarchického usporiadania modulov BIOS a BDOS logicky vyplýva, že jedinou
časťou operačného systému CP/M, ktorá je závislá na konkrétnej konfigurácii počítača je
modul BIOS.
Algoritmus interpretera riadiaceho jazyka spočíva v prečítaní príkazu, jeho analýze, v
presune žiadaného aplikačného programu do úseku pamäti TPA a jeho aktivizácii.
Niektoré aplikačné programy, ktoré nemajú veľké pamäťové nároky a sú
frekventovane používané, sa umiestňujú pevne do pamäti - rezidentne. Interpreter riadiaceho
jazyka takýto program nenahráva z disku, ale predáva mu priamo riadenie.
CP/M aj napriek tomu, že to umožňovali technické prostriedky, nevyužíval žiadnu
formu paralelizmu.
Strana 19
2.1.2. Monoužívateľský operačný systém s
triviálnym
paralelizmom
Pre tieto operačné systémy je charakteristické, že triviálnym spôsobom využívajú
technické prostriedky umožňujúce paralelizmus. Najrozšírenejším operačným systémom tejto
triedy je MS-DOS, ktorý je svojou koncepciou veľmi blízky operačnému systému CP/M.
Naviac, veľmi jednoduchou formou využíval paralelizmus jediného zariadenia - tlačiarne.
Podobne ako OS CP/M aj MS DOS má tri základné časti:
• modul BIOS obsahujúci ovládače periférií (časť je v pamäti ROM),
• modul DOS realizujúci systém ovládania súborov,
• interpreter riadiaceho jazyka.
aplikaèné programy
a
interpreter riadiaceho
jazyka
obsluha
rozhranie
virtuálneho
poèítaèa
vrstva 2
BDOS
BI OS
vrstva 1
vrstva 0
2.2. Hierarchické usporiadanie MS - DOS
Služby jadra operačného systému sú prístupné cez prerušenia, čím sa zdanlivo zvyšuje
bezpečnosť celého systému. Podstatný rozdiel v porovnaní s operačným systémom CP/M je v
zavedení tzv. stromových adresárov. K identifikácii súboru sa používa postupnosť mien, z
ktorých iba posledný označuje priamo súbor, ostatné sú mená adresárov. V koreni stromu sa
nachádza tzv. hlavný adresár označovaný znakom \
Aby nebolo nutné vypisovať celú identifikáciu súborov, je možné definovať tzv.
pracovný adresár. Takže napr. pri vymazávaní súboru nie je potrebné vypisovať celú cestu, ale
iba jeho meno.
Interpreter riadiaceho jazyka systému MS DOS považuje mená príkazov
neoznačujúcich rezidentné programy za mená súborov obsahujúcich programy, ktoré sa majú
nahrať do operačnej pamäte a spustiť. Pritom postupuje tak, že najprv prehľadáva pracovný
adresár a následne tie adresáre, ktoré sú určené príkazom PATH.
Tlač na pozadí alebo paralelná tlač prebieha tak, že príkazom PRINT sa požadovaný
textový súbor zaradí do tlačovej fronty, z ktorej sa postupne vyberajú jednotlivé súbory a ich
obsah sa tlačí na tlačiarni. Vlastná tlač prebieha paralelne a asynchrónne s vykonávaním
ďalších príkazov riadiaceho jazyka. Jedná sa o jednoduchú aplikáciu tzv. techniky spooling,
ktorá sa bežne používa aj vo viacužívateľských operačných systémoch.
S tra na 20
Elektronické počítačové systémy
2.1.3. Monoužívateľský operačný systém
s užívateľom riadeným prepínaním kontextu
Predchádzajúce operačné systémy boli charakteristické sekvenčným spracovaním
aplikačných programov. Mnohé aplikácie však vyžadujú ich paralelné spracovávanie (napr.
aplikácia A využíva medzivýsledok aplikácie B). Praktický význam paralelného
spracovávania sa zvýši, ak môže medzi súčasne bežiacimi procesmi dochádzať k výmene
informácií. Jednou z najjednoduchších foriem je výmena prostredníctvom užívateľa. Užívateľ
získa z jedného aplikačného programu na monitore určité medzivýsledky a pomocou
manipulácie s klávesnicou ich odovzdá inému programu. Túto formu komunikácie medzi
jednotlivými procesmi, bez toho aby musel byť niektorý proces ukončený, umožňujú operačné
systémy pomocou užívateľom riadeného prepínania kontextu.
Implementácia tohto druhu operačného systému je pomerne jednoduchá a medzi
charakteristických reprezentantov patrí operačný systém Finder, počítačov MacIntosh.
Riadiaci jazyk tohto operačného systému je založený na manipulácii s grafickými symbolmi ikonami.
Najvýznamnejšou vlastnosťou tejto skupiny OS je možnosť rozpracovania viacerých
aplikačných programov súčasne, pričom je iba na užívateľovi, ktorý z programov sa práve
spracováva (je aktívny). Možnosť rozpracovania viacerých programov spôsobuje nutnosť
implementácie vhodnej techniky pre využívanie operačnej pamäte. K ovládačom periférií a
systému ovládania súborov preto pribudnú ďalšie funkcie jadra operačného systému pre
prideľovanie pamäte, ktoré sa nazývajú správa pamäte. Nakoľko je v daný okamih aktívny iba
jeden program , nemá zmysel všetky ostatné rozpracované programy udržiavať v pamäti,
pretože by sa znižovala ich maximálna možná dĺžka. Preto sa programy, ktoré nie sú práve
aktívne, ukladajú na vonkajšiu pamäť s využitím tzv. odkladacieho súboru.
Implementácia prideľovania pamäte bude teda pozostávať z implementácie týchto
štyroch procedúr:
1. Vytvor odkladací súbor (číslo procesu).
1. Zruš odkladací súbor (číslo procesu).
2. Odlož program (číslo procesu, ukazovateľ zásobníku).
3. Vráť program (číslo procesu, ukazovateľ zásobníku).
V momente, keď sa prepína kontext na ďalší proces, musí sa uschovať aktuálny stav
procesora do zásobníka (registra SP).
Vizuálna realizácia jednotlivých procesov sa uskutočňuje pomocou tzv. okien, pričom
každému procesu prislúcha jedno okno.
Strana 21
2.1.4. Monoužívateľský operačný systém
s automatizovaným prepínaním kontextu
Často je riešenie problému takého charakteru, že je možný paralelný beh aplikačných
programov chápať tak, akoby bol každý z nich vykonávaný samostatným procesorom a tieto
procesory pracovali súčasne. Túto činnosť umožňujú operačné systémy s automatizovaným
prepínaním kontextu, patrí medzi ne napr. Concurrent DOS alebo MS WINDOWS.
Operačné systémy tejto skupiny umožňujú rozpracovať niekoľko aplikačných
programov. Výpočtové procesy riadené týmito programami (tzv. aplikačné procesy), bežia z
hľadiska užívateľa zdanlivo súčasne, paralelne. Je to tak preto, že prepínanie kontextu
(prideľovanie procesu jednotlivým aplikačným procesom) sa vykonáva automatizovane v
krátkych časových intervaloch, napr. 100 ms.
Tomuto typu paralelného spracovávania hovoríme multitasking (súbežné spracovanie
programov).
Pre reprezentáciu jednotlivých procesov sa využívajú, podobne ako v operačných
systémoch s užívateľom riadeným prepínaním kontextu, okná na monitore. Tým umožňuje
operačný systém vytvoriť na obrazovke toľko klasických užívateľských rozhraní, koľko je
rozpracovaných úloh.
Pri prepínaní kontextu v pravidelných
časových intervaloch (100 ms), nie je možné aby sa
Jadro operačného systému
vymieňal celý obsah pamäte, v ktorej je uložený vždy
len jeden program. Preto sa volí technika, ktorá
prideľuje každému procesu určitý úsek pamäte.
Základný proces
Kontext sa prepína tak, aby každý proces bežal vždy
stanovený časový úsek, tzv. časové kvantum. Pre
Interpreter riadiaceho
jazyka pre 1. proces
prepínanie kontextu sa využívajú časové signály
vysielané časovačom. Od týchto signálov sa
odvodzuje prerušenie a ako reakcia naň sa v jadre
1. proces
spúšťa pomocný časový proces, v ktorom sa zariadi
prepnutie kontextu, čiže jadro cyklicky prideľuje
procesor jednotlivým procesom na určité časové
Interpreter riadiaceho
kvantum. Touto technikou sa vytvára každému z
jazyka pre 2. proces
procesov virtuálny procesor, ktorého rýchlosť je
zhruba n-tina (pri n procesoch) rýchlosti technicky
2. proces
realizovaného procesora.
S tra na 22
Elektronické počítačové systémy
Aby procesu, ktorý čaká na dokončenie
2.3. Schéma využitia pamäte pre periférnej operácie nebol zbytočne prideľovaný
dva procesy
procesor, zavádza sa tretí stav - čakajúci - čím je
vyradený z fronty procesov čakajúcich na pridelenie
procesu. Tým sa zvýši rýchlosť jednotlivých virtuálnych procesorov.
Každý proces sa teda môže nachádzať v dvoch stavoch:
• má pridelený procesor - bežiaci,
• nemá pridelený procesor - pripravený.
priebeh procesov
3. proces
2. proces
1. proces
pomocný
èasový
proces
èas
t
t
t
t
t
t
2.4.a. Automatizované prepínanie kontextu, časový diagram prideľovania procesoru
trom procesom.
pripravený
pozastavenie
2.4.b.
prepínanie kontextu,
stavový
spustenie
procesov.
Automatizované
diagram
troch
bežiaci
Môžu však nastať situácie, keď proces čaká na dokončenie určitej operácie alebo na
ďalší príkaz (napr. čakanie na stlačenie klávesy pri vstupe z klávesnice), potom je výhodné,
aby tomuto procesu nebol prideľovaný procesor, nakoľko v časovom kvante pridelenia
procesora pre procesu, by sa vykonávali len prázdne cykly.
Pri dvoch stavoch procesov - bežiaci a pripravený - kedy sa čakajúcemu procesu
prideľuje procesor, hovoríme o aktívnom čakaní.
Aby procesu, ktorý čaká na dokončenie periférnej operácie (vstup z klávesnice) nebol
zbytočne prideľovaný procesor, zavádzame tretí stav procesu - čakajúci - čím je vyradený z
fronty procesov čakajúcich na pridelenie procesora a zaraďuje sa do fronty procesov
čakajúcich na dokončenie určitej periférnej operácie. Po vykonaní požadovanej periférnej
operácie sa proces opäť zaradí do fronty procesov čakajúcich na pridelenie procesora, pričom
Strana 23
zaujíma svoje pôvodné miesto vo fronte. Zavedenie tretieho stavu procesov samozrejme
zvyšuje frekvenciu prideľovania procesora ostatným procesom a tým zvyšuje rýchlosť
jednotlivých virtuálnych procesorov patriacich príslušným procesom.
3. proces
2. proces
1. proces
pomocný
èasový
proces
2. proces èaká aktívne
2.5. Časový diagram aktívneho čakania na dokončenie periférnej operácie
3.
2.
1.
pomocn
ý
časový
2. proces čaká
žiadosť o
vstup
z klávesnice
stlačenie
klávesy
S tra na 24
Elektronické počítačové systémy
2.6. Časový diagram pasívneho čakania na dokončenie periférnej operácie
vytvorenie
pripravený
pozastavenie
aktivácia
èakajúci
spustenie
bežiaci
blokovanie
zrušenie
Architektúra
Každému procesu musí byť vytvorený virtuálny procesor, ktorý bude poskytovať
klasické užívateľské rozhranie, ako napr. CP/M. Operačný systém musí teda poskytovať
služby zohľadňujúce existenciu viacerých procesov. Napríklad služba pre výstup reťazca na
obrazovku, musí byť súčasne prístupná viacerým procesom (výpis reťazca do príslušného
okna), no služba pre vstup klávesnice musí slúžiť počas určitej doby len jednému procesu.
Jednotlivé moduly jadra operačného systému (viď obr.2.8.) sú usporiadané lineárne,
t.j. ich funkcie sa môžu vzájomne vyvolávať smerom od vrchu. Tento spôsob zobrazenia jadra
je však do určitej miery zjednodušujúci, nakoľko svojou lineárnosťou neumožňuje vyjadriť
všetky väzby modulov. Naproti tomu však výstižne znázorňuje rozdiel medzi základným
procesom a aplikačnými procesmi vzhľadom k povolenému volaniu funkcií jadra:
aplikačnému procesu sú poskytnuté iba služby a „holý“ počítač (technické prostriedky), zatiaľ
čo základnému procesu všetky funkcie jadra a „holý“ počítač.
Strana 25
2.7.
Stavový
diagram procesu s tromi
stavmi
ZÁKLADNÝ PROCES
virtuálny
počítač
základného
procesu
PROCES 1
virtuálny
počítač 1
PROCES 2
modul
PROCES 3
HP
virtuálny
počítač 3
virtuálny
počítač 2
1. prideľovanie procesoru
2. synchronizácia procesov
4. BIOS
5. BDOS a časový
3
6
á i
i
l
i
l ži b
2.8. Štruktúra monoužívateľského operačného systému umožňujúceho multitasking
Virtuálne počítače jednotlivých aplikačných programov, ale aj základného procesu
majú spoločnú len vonkajšiu pamäť. Preto si môžu predávať údaje len prostredníctvom
súborov.
Základný proces má vlastnosti tzv. služobného procesu, pre ktorý je charakteristické,
že je integrálnou súčasťou operačného systému a zastáva v ňom určitú „služobnú“ funkciu.
Základný proces má aj vlastnosti tzv. privilegovaného procesu, ktorý má k funkciám jadra
širší prístup než predstavujú služby. Kontrola príslušnosti k privilegovaným procesom sa
často realizuje pomocou technických prostriedkov.
S tra na 26
Elektronické počítačové systémy
2.2. Viacužívateľské operačné systémy
Ich základnou myšlienkou je umožniť na jednom počítači súčasnú prácu viacerých
užívateľov, pričom každý pracuje na svojom terminále. Implementácia viacužívateľských
operačných systémov sa opiera o automatizované prepínanie kontextu.
štruktúra operaèného systému
HP
1. pride¾
ovanie procesoru
2. pomocná synchronizácia procesov
3. pride¾
ovanie pamäte
4. synchronizácia procesov
2. terminál
1. terminál
2. základný
proces
5. operácie s procesmi
6. BIOS
7. BDOS a èasový modul
8. volanie služieb
štruktúra
základných procesov
a aplikaèných procesov
jednotlivých terminálov
1. základný
proces
2. aplikaèný
1. aplikaèný
2.9. Štruktúra viacužívateľského OS neumožňujúceho multitasking
Strana 27
Užívateľské rozhranie viacužívateľských operačných systémov je možné na jednom
terminále vytvoriť principiálne dvoma spôsobmi:
1. dovoľuje spustiť najviac jeden aplikačný program,
2. dovoľuje činnosť viacerých aplikačných programov súčasne (multitasking).
Základná myšlienka, vytvoriť každému aplikačnému procesu virtuálny procesor, sa
nemení, no v dôsledku existencie viacerých užívateľov sa štruktúra operačného systému
rozšíri o tretí rozmer.
Jediným spoločným prostriedkom virtuálnych počítačov je opäť len vonkajšia pamäť
(súbory na diskoch). Ostatné periférie sú virtualizované (tlačiareň - vytvorením tlačovej
fronty) alebo sa rezervujú (zapisovač).
2. terminál
1. terminál
2. základný
proces
štruktúra
základných procesov
a aplikaèných procesov
jednotlivých terminálov
1. základný
proces
1. aplikaèný proces - C
2. aplikaèný proces - A
1. aplikaèný proces - A
1. aplikaèný proces - B
2.10. Štruktúra viacužívateľského OS umožňujúceho multitasking
V porovnaní s monoužívateľskými operačnými systémami pribudla vrstva
prideľovania pamäte, ktorá zabezpečuje výmeny obsahov operačnej pamäte pre jednotlivé
aplikácie.
Užívateľské rozhranie obsahuje nové prostriedky, ktoré musia bezpečne oddeliť
virtuálne počítače používané rôznymi užívateľmi. Nutnou podmienkou pre to, je podpora
technických prostriedkov založená na rozlišovaní užívateľského a privilegovaného procesu a
ochrany pamäte.
Toto oddelenie musí byť urobené tak, aby sa jednotlivé aplikačné procesy nemohli
nežiadúcim spôsobom ovplyvňovať a aby sa užívatelia mohli rozhodnúť, ktoré dáta resp.
programy dajú k dispozícii ostatným a ktoré nie. Z hľadiska užívateľa k tomuto účelu slúži
systém ochrany súborov založený na definovaní prístupových práv k súborom.
Konkrétna realizácia môže vyzerať tak, že každý užívateľ musí svoju prácu začať
prihlásením sa (tým je jednoznačne identifikovaný). Po úspešnom prihlásení sa môže
využívať tie súbory, ktoré sú mu prístupné - ku každému súboru sú definované prístupové
práva pre vlastníka súboru a pre ostatných užívateľov. Vlastníkom súboru je ten užívateľ,
ktorý ho vytvoril. Prístupové práva určujú napr. možnosť zápisu, čítania a spúšťania súborov
(Write - Read - Execution).
S tra na 28
Elektronické počítačové systémy
Základný proces viacužívateľských OS vznikne pri inicializácii celého systému. Jeho
hlavnou úlohou je vytvoriť pre každý terminál základný proces terminálu, ktorý má súčasne
funkciu interpretera riadiaceho jazyka. Základný proces terminálu - interpreter riadiaceho
jazyka - pracuje analogicky ako interpreter riadiaceho jazyka klasických operačných systémov
(napr. CP/M), no líši sa v dvoch hľadiskách:
1. prvý príkaz musí byť prihlásenie,
2. odlišne sa vykonáva volanie aplikačných programov - každej aplikácii musí byť
pridelená sekcia v pamäti a musí byť definovaná ako neprivilegovaný aplikačný
proces
Klasickými predstaviteľmi viacužívateľských operačných systémov sú UNIX, Novell a
Windows NT Server.
Strana 29
3. Vstupno-výstupný podsystém
Vstupno-výstupný podsystém výrazným spôsobom ovplyvňuje výkonnosť počítača ako
celku. Jeho hlavnou úlohou je okrem vlastného prenosu dát, podpora moderných prídavných
zariadení, sledovanie stavu aktuálnych prenosov a rozhodovanie o momentálnom priradení
technických prostriedkov, podľa žiadostí zariadení v tomto podsystéme spolupracujúcich.
Významnou súčasťou V/V podsystému je príslušná časť operačného systému.
3.1. Komunikácia V/V podsystému
V/V operácie vždy predstavujú časovú stratu z hľadiska celkového výkonu počítača,
pretože žiadne prídavné zariadenie nepracuje s takou rýchlosťou ako hlavná pamäť alebo
procesor. Časové straty pri V/V operáciách sa počas vývoja výpočtovej techniky stávali stále
nepríjemnejšími, preto bola spôsobu riadenia a vykonávania V/V operácií venovaná značná
pozornosť. Vytvorilo sa niekoľko základných spôsobov riadenia:
• synchrónne V/V operácie riadené procesorom,
• asynchrónne V/V operácie riadené procesorom,
• V/V operácie riadené V/V kanálom,
• V/V operácie riadené V/V počítačom.
Postupnosť týchto spôsobov nie je náhodná, ale zodpovedá postupnému vývoju.
V ďalšom texte budú popísané dva najznámejšie spôsoby riadenia V/V operácií, ktoré sa
používajú aj v súčasných výpočtových systémoch. Ide o prerušenie a priamy prístup do
pamäte.
3.1.1. Prerušenie
Pre zabezpečenie adekvátnej reakcie mikroprocesora na dôležité zmeny (poruchy,
žiadosti, atď.) a synchronizácie programu ním vykonávaným s vonkajšími zariadeniami
zabezpečuje prerušovací podsystém. Jeho činnosť bude ozrejmovaná na mikroprocesoroch
triedy 80X86, kde jadro celého systému predstavujú dva kaskádovo zapojené radiče
prerušenia označované 8259A. Podobný spôsob obsluhy prerušenia však používajú aj ostatné
typy mikroprocerov.
Mikroprocesor rozoznáva dva druhy prerušenia:
1. Nemaskovateľné (NMI) - takto sa oznaèujú prerušenia s najvyššou prioritou.
Udalosti, ktoré ich vyvolávajú, môžu spôsobiť kolaps celého programu. Patria sem
napríklad žiadosti spôsobené chybou parity pamäte.
2. Maskovateľné (INTR) – pomocou programových zásahov je možné ich nastaviť
tak, že systém nebude reagovať na niektoré druhy žiadostí. Žiadosti generuje radič
prerušenia na základe žiadostí z prídavných zariadení. Pre každé prídavné
zariadenie (disketová mechanika, pevných disk, tlačiareň, klávesnica, atď.) je
priradená jedna tzv. linka - IRQx.
Činnosť radiča prerušenia
Každý radič prerušenia dáva k dispozícii 8 kanálov pre vstup žiadostí o prerušenie
(IRQ0 - IRQ7) . Pri kaskádovom zapojení je výstup druhého radiča - INT privádzaný na jeden
zo vstupov prvého radiča - IRQ2. Prioritu jednotlivých žiadostí je možné dynamicky meniť,
prípadne ich maskovať. Žiadosti o prerušenie sa zapisujú do vstupného registra. Ten sa
porovnáva s maskovacím registrom a v prípade nastavenia niektorého z bitov tohto registra na
S tra na 30
Elektronické počítačové systémy
nulu je príslušná žiadosť maskovaná a procesor na ňu nebude reagovať. Výsledok
vyhodnotenia priority sa zapisuje do registra žiadostí v obsluhe, ktorý odráža úroveň práve
spracovávaného prerušenia mikroprocesorom.
3.1. Postup obsluhy prerušenia
Konektor
V/V kanála
d
k
Vznik
požia
RQ
Radič
I
IRQ
D0-7
INTA
NTR
TR
Uka zova te ľ
Nový CS ,IP
TA
I
Typ
prerušenia
IN
Pr
IN
Tabuľka
vektorov
Adresa
Pa
Obslužný
program
Vlastný postup spracovania žiadostí o prerušenie je nasledovný (viď obr. 3.1.). Žiadosť
vygenerovaná niektorým prídavným zariadením sa pomocou linky (IRQx) dostáva do radiča
prerušenia. Ten aktivuje signál INTR, čím sa pýta, či je mikroprocesor schopný spracovať
prerušenie. Mikroprocesor odpovedá pomocou signálu INTA. Skôr než sa však začne
spracovávanie vlastného prerušenia, mikroprocesor odpovedá pomocou signálu INTA. Pred
tým než sa začne spracovávanie vlastného prerušenia, je korektne ukončené prebiehajúce
spracovávanie inštrukcie. Pri kladnej odpovedi mikroprocesora signálom NTA, radič
prerušenia rozhodne o najdôležitejšej požiadavke a po prijatí druhého kladného signálu
vysiela po dátovej zbernici osembitovú hodnotu typu prerušenia. Mikroprocesor prepočíta typ
prerušenia na ukazovateľ do tabuľky vektorov prerušenia podľa vzťahu 4 x typ prerušenia.
Hodnota získaná z tabuľky vektorov prerušenia slúži ako počiatočná adresa obslužného
programu príslušného prerušenia. Pred vysielaním adresy obslužného programu po adresovej
zbernici a vlastným spustením programu sa musia uložiť hodnoty všetkých registrov
používaných programom a registre IP a CS uložiť do zásobníka. Po vykonaní obslužného
Strana 31
programu sa vynuluje príslušný bit registra žiadostí v obsluhe v radiči prerušenia. V priebehu
spracovávania prerušenia je možné začať vykonávať prerušenie s vyššou prioritou (tzv.
vnorené prerušenie) rovnakým spôsobom ako bolo doteraz uvedené.
Tabuľka vektorov prerušenia neobsahuje len položky aktivované technickými
prostriedkami prerušovacieho podsystému. Sú v nej aj štartovacie adresy programov
spúšťaných inštukciami INTn.
Inicializácia celého systému prerušenia sa vykonáva v BIOS-e, pričom niektoré typy
prerušenia sú ním aj naprogramované. Ide o hlavne o jednotlivé linky IRQx z radičov
prerušenia.
3.1.2. Priamy prístup do pamäte
Zabezpečenie komunikácie medzi mikroprocesorom a prídavným zariadením si
vyžaduje riadenie celej činnosti mikroprocesorom. Ten musí prerušiť svoju doterajšiu činnosť,
uložiť obsahy dôležitých registrov, vykonať obslužný program prerušenia a potom sa opäť
vrátiť k pôvodnej činnosti. Preto sa kvôli zvýšeniu výkonnosti celého systému, tam kde je to
možné zavádza priama komunikácia medzi hlavnou pamäťou a prídavným zariadením tzv.
priamy prístup do pamäte DMA (direct memory access). To znamená, že procesor nemusí
prerušovať vykonávanie programu. Jedinou podmienkou je uvoľnenie zbernice pre prenos
informácií. Tým, si však procesor uvoľňuje zbernicu, musí v systéme existovať blok, ktorý
zabezpečí generovanie adries a určovanie okamžikov presunov údajov po údajovej zbernici.
Tento blok sa nazýva kanál DMA.
Hlavná pamäť
Adresová
Údajová
Čítač
Register
adresy
R presunov
Procesor
A
Radič
DMA
Register
údajov
Prídavné
i d i
3.2. Pripojenie a štruktúra DMA
S tra na 32
Elektronické počítačové systémy
Základom architektúry DMA (viď obrázok 3.2.) sú tri registre:
• register údajov,
• register adresy,
• čítač presunov.
Význam jednotlivých registrov bude ozrejmený pri popise činnosti DMA. Údaje medzi
hlavnou pamäťou a prídavným zariadením sa môžu prenášať v dvoch režimoch a to blokovo
alebo jednotlivo. Pri blokovom prenose údajov blok DMA nepretržito riadi zbernicu. Presuny
sa uskutočňujú v režime tzv. odoberania cyklov. V tomto režime sa procesor zastaví len na
dobu jedného cyklu hlavnej pamäte a po prevedení jedného presunu slova uvoľní blok DMA
zbernicu, takže procesor môže pokračovať vo svojej činnosti. Pri jednotlivom prenose údajov
musí pred každým prenosom žiadať o pridelenie zbernice. Aký typ prenosu bude DMA
používať, závisí aj od prídavného zariadenia, ako rýchlo je schopné poskytovať údajov pre
prenos.
Každý presun údajov medzi hlavnou pamäťou a prídavným zariadením predchádza
naprogramovanie bloku DMA procesorom, čo predstavuje zapísanie počtu presúvaných slov
do čítača presunov a načítanie počiatočnej adresy hlavnej pamäte do registra adresy. Obsah
registra čítača presunov vymedzuje bloku pamäte, s ktorou sa bude pracovať. Po
naprogramovaní DMA je spustené prídavné zariadenie a DMA čaká, až bude schopné
prijímať alebo vysielať údaje. Akonáhle prídavné zariadenie ohlási pripravenosť na presun
údajov, blok DMA požiada procesor o priamy prístup do pamäti po linke REQ ( ďalší postup
komunikácie bude ozrejmovaný na vstupe údajov z DMA, výstup je analogický). Procesor je
spravidla schopný zareagovať na žiadosť REQ vždy na konci strojového cyklu. Ak rozhodne ,
že môže dôjsť k priamemu prístupu do pamäte, vyšle po linke ANS odpoveď a uvoľní
zbernicu. Blok DMA vyšle obsah registra adresy na adresovú zbernicu a na údajovú zbernicu
vyšle obsah svojho registra údajov. Po vykonaní jednotlivého cyklu pamäte sa hodnota čítača
presunov zmenší o jedničku a adresa v registri adresy sa zväčší o jedničku.
Ak obsah čítača presunov je nenulový, testuje sa či prídavné zariadenie už presunulo
do registra údajov nové údaje. Ak áno, opakuje sa vyššie uvedený cyklus. V opačnom prípade
dočasne ukončí presun údajov a odovzdá riadenie procesoru tým, že prestane vysielať žiadosť
o DMA. Keď prídavné zariadenie opäť pripraví údaje na prenos, DMA začne znovu žiadať
procesor o pridelenie zbernice a cyklus prenosu údajov sa opakuje vyššie popísaným
postupom.
Ak je obsah čítača presunov vygenerovaný, blok DMA ukončí celý presun a uvoľní
zbernicu. Blok DMA si môže vyžiadať nové naprogramovanie svojich registrov pomocou
prerušenia.
3.2. Rozhrania
Jednou z dôležitých úloh počítačov je efektívna komunikácia mikroprocesora s
prídavným zariadením. Niekoľko foriem tejto komunikácie bolo ozrejmených v
predchádzajúcich dvoch odstavcoch. No vlastný presun informácií, či už ide o údaje alebo
riadiace signály, musí zabezpečovať adaptér. Úlohou adaptéra je prispôsobiť signály kanála
konkrétnemu periférnemu zariadeniu, resp. rozhraniu. Rozhranie presne definuje postupnosť
signálov pri komunikácii. Každý typ prídavného zariadenia si však vyžaduje iný spôsob
komunikácie a teda aj rôzne rozhrania. V praxi to znamená, že k rozhraniu musí byť i vlastný
adaptér. Preto je prirodzená snaha výrobcov prídavných zariadení po čo najväčšej
štandardizácii v oblasti rozhraní.
Klasickým príkladom je sériové rozhranie, zabezpečujúce komunikáciu napr. s
modemom, tlačiarňou, myšou. Paralelné rozhranie zabezpečuje pripojenie takmer všetkých
Strana 33
typov tlačiarní. Aj v oblasti špeciálnych prídavných zariadení napr. diskoch, dochádza k
určitej unifikácii rozhraní (STT06, IDE, SCSI).
Ďalšou dôležitou úlohou adaptéra je riadenie pripojeného zariadenia, kde adaptér
funguje ako jeho radič. Veľmi záleží na zabudovanej inteligencii konkrétneho prídavného
zariadenia. Čím je zložitejšie, tým je schopnejšie fungovať autonómne a povely z radiča majú
obecný charakter. Čím je naopak jednoduchšie, tým konkrétnejšie riadenie vyžaduje a adaptér
je špeciálnejší, jednoúčelový.
3.3. Prídavné zariadenia
3.3.1. Klávesnice
Klávesnice sú klasické zariadenia pre vstup údajov do počítača. Je to vlastne sústava
znakových a číselných kláves usporiadaných do matice, ktorá po stlačení niektorého z nich,
generuje na výstupe elektrické signály. Tie svojou kódovou kombináciou zodpovedajú
stlačenému klávesu.
Podľa funkcie rozlišujeme tri typy klávesníc:
• abecednočíselné klávesnice, ktoré sú analogické klávesniciam písacích strojov,
• číselné klávesnice, slúžia pre vstup čísel a organizácia kláves je zhodná s
kalkulačkou,
• príkazové klávesnice, pod každým klávesom sa skrýva vyvolanie príslušnej
funkcie.
Z hľadiska vyhotovenia elektronickej časti klávesnice rozlišujeme dva typy klávesníc:
• zakódované (encoded),
• nezakódované (nonencoded).
Vlastný kláves je realizovaný tak, že každé stlačenie má za následok zopnutie
elektrického spínača, čo môže byť jednak kontaktný mechanický spínač alebo spínač založený
na inom princípe (kapacitnom, elektromagnetickom, atď.).
Obrázok 3.1. znázorňuje jeden
typ elektromechanického spínača,
zloženého z hmatníka, telesa spínača,
membrány a nosnej dosky. Stlačenie
hmatníka
spôsobí
deformáciu
vypuklej membrány, ktorá vytvorí
elektrický kontakt s druhým pólom
naneseným vo forme plošného spoja
na
nosnej
doske.
Okrem
membránových
klávesníc
sú
kontaktné
mechanické
spínače
niektorých klávesníc realizované
pomocou plochých mechanických
spínačov . Ich hlavnou nevýhodou je
malý zdvih klávesu a netypický
mechanický odpor.
Medzi elektronické metódy spínania patria metódy založené na využití kapacity
jazýčkového spínača, Hallovho javu, transformátorovej alebo optickej väzby, vzniku napätia
pri elastickej deformácii materiálu atď. Následne budú vysvetlené princípy najpoužívanejších
spínačov.
S tra na 34
Elektronické počítačové systémy
Jazýčkový spínač tvoria elektrické kontakty zatavené do sklenenej trubičky, viď.
obrázok 3.2. Stlačením klávesy sa k jazýčkom priblíži permanentný magnet, ktorý svojím
magnetickým poľom spôsobí ich zapnutie (magnetický obvod sa spojenými jazýčkami
uzavrie).
Kapacitný spínač je tvorený
dvoma elektródami nanesenými na
základnej
doske
a
pokrytými
izolačnými fóliami. Tretia elektróda je
pohyblivá a je tvorená pružným
Permanentný S
materiálom. Stlačením klávesy sa
Jazý čkové
magnet
pohyblivá elektróda priblíži k pevným
J
kontakty
a kapacita medzi nimi sa zmení.
Zmeny elektrického náboja spôsobené
touto zmenou sa privádzajú na vstupy
zosilňovačov elektronických obvodov.
U ďalšieho typu spínača
3.4. Spína č s jazýčkovými kontaktmi
využívajúceho Hallov jav (obrázok
3.3.) je výstupné napätie Hallovho
elementu úmerné súčinu prúdu prechádzajúceho elementom a intenzity magnetického poľa H,
v ktorom sa Hallov element nachádza. Ku
zmenám magnetického poľa, teda aj výstupného
napätia, dochádza tým, že sa permanentný magnet
v prípade stlačenia príslušnej klávesy priblíži k
Hallovmu elementu. Hlavnou nevýhodou týchto
spínačov je ich značná cena.
Bezkontaktný spínač obsahujúci feritové
jadro pracuje ako transformátor (obrázok 3.4.).
Pokiaľ nie je stlačený kláves, udržuje sa
(magnetickým poľom permanentných magnetov
spojených s klávesom) jadro v nasýtenom stave a
transformátorová väzba medzi budiacim a
výstupným vinutím je zanedbateľne malá.
3.5. Spínač využívajúci
3.4. Spínač s transformátorovou
Hallov jav je
Budiace
vinutie
napájané
vysokofrekvenčným prúdom. Pri stlačení
klávesy prestane na jadro pôsobiť nasycujúce
pole a na výstupnom vinutí sa objaví
výstupný signál, ktorý sa usmerní a upraví na
tvar logických impulzov.
Bezkontaktné spínače majú obvykle
dlhšiu životnosť, ale nízke výstupné signály,
ktoré je nutné potom zosilňovať a tvarovať.
Vlastné
vyhodnotenie
stlačenej
klávesy sa realizuje pomocou maticovej
organizácie spínačového poľa, kde jeden z
kontaktov spínača je spojený len s
niekoľkými ďalšími po skupinách. Každá
skupina má svoj vlastný vodič. Radič, ktorý vyhodnocuje stav klávesnice zistí, že bola
stlačená kláves o súradniciach x-tý riadok a y-ový stĺpec a tie sa použijú ako adresa pre
Strana 35
kódovaciu pamäť ROM. Tá môže byť naprogramovaná tak, aby generovala ASCI kód
stlačenej klávesy.
3.3.2. Zobrazovacie jednotky
Zobrazovacia jednotka je výstupné zariadenie, ktoré slúži k zobrazovaniu textových a
grafických informácií. Jej hlavným prvkom je predovšetkým elektrooptický menič
konvertujúci elektrické signály generované radičom monitora do oblasti viditeľného žiarenia.
V porovnaní s klasickým televíznym prijímačom má väčšiu rozlišovaciu schopnosť, sú
kladené vyššie požiadavky na linearitu vyhotovenia a samozrejme, neobsahuje demodulačné
vysokofrekvenčné obvody. Elektrooptický menič s elektronickými obvodmi bez radiča je
zabudovaný do jedného konštrukčného celku, ktorý sa nazýva monitor (obrázok 3.5.).
Systémové
rozhranie
Rozhranie
monitora
Adaptér
Vychyľovací
podsystém
Monitor
Radič
monitora
Modulácia
jasu
Elektrooptic
ký
menič
3.7. Bloková schéma zobrazovacej jednotky
Monitory môžu zobrazovať znakové (alfanumerické) alebo obrazové (grafické)
informácie. V obidvoch prípadoch plnia tieto výstupné zariadenia tri základné funkcie:
• zobrazovanie informácií,
• interakcia s používateľom,
• spracovanie informácií.
Pri realizácii vyššie spomínaných funkcií sa využívajú základné dva princípy
zobrazovania. Jednak rastrové vytváranie obrazu, podobne ako pri bodových tlačiarňach a
vektorové zobrazovanie, porovnateľné s princípom zapisovačov.
S tra na 36
Elektronické počítačové systémy
3.3.2.1. Princíp elektrooptických meničov
Najrozšírenejšími elektrooptickými meničmi sú obrazovky, ktoré využívajú
katódoluminiscenciu vo vákuu, čiže kombináciu termoemisie na katóde a vzniku fotónov na
luminiscenčnej vrstve.
Farebná obrazovka je pomerne zložité a na presnú výrobu náročné zariadenie. Tri
elektrónové trysky vytvárajú na spoločnom tienidle zloženom z malých, v určitom vzore sa
opakujúcich bodov (luminifory žiariace v troch základných farbách), aditívne zmiešaný obraz.
Trysky sú usporiadané buď do trojuholníka alebo sú v jednom rade. Lúč z elektrónovej trysky
ovládanej určitým signálom (napr. červená) rozsvieti len príslušné body a luminifory
ostatných farieb nezasiahne. To zabezpečujú masky umiestnené v určitej vzdialenosti pred
tienidlom.
Na obrázku 3.6. je znázornená trinitrónová obrazovka s tryskami umiestnenými v
jednej rovine, pričom zelená je v strede a dve krajné, t.j. modrá a červená, sú mierne natočené,
aby elektrónové dráhy prechádzali stredom spoločnej zaostrovacej elektrostatickej šošovky.
Nakoľko sa smerom k tienidlu lúče opäť rozbiehajú je nutné obidva krajné lúče usmerniť
elektrostatickým poľom vytvoreným medzi plochými elektródami tak, aby sa zbiehali v
rovnakých otvoroch masky a aby zasahovali len správne zložky luminiforu.
Tienidlo
G-Y
B-Y
Y
Magnet pre
polohu
modrého lúča
R-Y
Maska
Krúžky
čistoty
farieb
Vychyľovac
ia
jednotka
Konvergenčná
jednotka
3.8. Princíp farebnej obrazovky
Farebné obrazovky typu in line majú všetky elektrónové trysky zoradené tiež v jednej
rovine. Luminifory sú na tienidle nanesené do striedajúcich sa pásov. Obrazovky typu delta
majú luminifory nanesené do vrcholov rovnoramenných trojuholníkov.
Strana 37
Rozlišovacia schopnosť dnes bežne vyrábaných monitorov je 1024 x 1024 obrazových
bodov. Samozrejme sa vyrábajú aj špecializovanejšie monitory s ďaleko vyššou rozlišovacou
schopnosťou.
Monitor rastrového typu
Lúč emitovaný tryskami sa najprv pomocou rozkladových obvodov monitora a
vychyľovacích cievok nasmeruje do ľavého horného rohu tienidla. Horizontálny vychyľovací
systém pohybuje lúčom zľava doprava, vertikálny zhora a dolu. Okrem tohto pohybu sa lúč
elektrónov ešte moduluje v závislosti na údajovom signále z obrazového radiča, takže
luminifor svetielkuje menej alebo viacej. Takto sa postupne po riadkoch vytvára celý obraz
(obrázok 3.7.).
Rýchlosť rozkladu je určovaná potrebnou rozlišovacou schopnosťou a požiadavkou,
aby výsledný obraz neblikal.
3.9. Vnútorná štruktúra monitora rastrového typu
Monitor vektorového typu
Tento typ je principiálne zhodný s osciloskopom. Hlavnou požiadavkou na
vychyľovacie cievky umiestnené na hrdle obrazovky je, aby vychyľovali rýchlo, nakoľko to
určuje, koľko informácií sa môže zobraziť bez blikania. Dosahuje sa toho použitím veľkých
prúdov v cievkach. Dôležitou časťou celého vychyľovacieho systému sú zosilňovače, ktoré
vykonávajú malé napäťové zmeny generované obrazovým radičom na zodpovedajúci
vychyľovací prúd. Principiálna schéma monitora je na obrázku 3.8.
S tra na 38
Elektronické počítačové systémy
Rozhranie
Zosilovaè X
vychy¾
ovania
Obrazovka
Zosilovaè
modulácie
Zosilovaè Y
vychy¾
ovania
3.10. Vnútorná štruktúra monitora vektorového typu
Napätie pre vychyľovacie zosilňovače odvodzuje obrazový radič z hodnôt dodaných
nadradeným počítačom. Tieto hodnoty predstavujú súradnice a na napätie sa vykonávajú
prevodníkmi. Pre nakreslenie jedného vektora je nutný pár postupne sa meniacich napätí, z
ktorých sa odvodzujú vychyľovacie prúdy. Pre ich generovanie sa využívajú tzv. interpolátory.
Hlavnou nevýhodou monitora vektorového typu je možnosť len monochromatického
zobrazovania a problémy s vyznačovaním plôch (šrafovanie, zafarbovanie) a to je aj hlavný
dôvod pomerne malého využitia.
Okrem vyššie popísaných štandardných typov monitorov sa používajú aj ďalšie typy,
ktoré sú špecializované pre tú ktorú oblasť použitia. Sú to predovšetkým pamäťové
obrazovky, u ktorých nie je potrebné obnovovať obrazovú informáciu, ďalej tzv. plazmový
model, vyznačujúci sa veľmi stabilným obrazom, no pomerne malou rozlišovacou
schopnosťou a konečne displeje s kvapalnými kryštálmi, využívané hlavne v prenosných
počítačoch.
3.3.2.2. Radič monitora
Hlavnými časťami radiča monitora sú zobrazovací radič, obrazová pamäť a obvody
rozhrania (obrázok 3.9.).
Strana 39
Rozhranie
pre
monitor
Rozhranie
k nadradenému
í
Radič
monitora
Rozhranie
(DMA)
Obrazová
pamäť
Budiče
modulácie
Modulác
Radič
obrazovej
pamäti
Generátor
synchronizácie
HSYNC
VSYNC
1
Zobrazovací radič
3.11. Štruktúra radiča monitora
Obrazová pamäť (video RAM) obsahuje informáciu o modulácii všetkých obrazových
bodov obrazovky. Nakoľko väčšina obrazoviek vyžaduje obnovovanie, táto pamäť sa
periodicky číta a počas jednej obnovovacej periódy sa zobrazujú všetky detaily obrazu.
Spôsob čítania tejto pamäti a spracovanie prečítaných informácií sa odlišuje podľa
jednotlivých druhov monitorov.
Zobrazovací radič prostredníctvom svojho radiča obrazovej pamäti zabezpečuje
generovanie adresy obrazovej pamäte a to ako pri zápise do nej, tak aj pri periodickom
obnovovaní obrazu. V prípade zápisu sa adresa odvodzuje z informácií odovzdávaných
nadriadeným počítačom a pri čítaní zo synchronizačných signálov generovaných príslušným
generátorom synchronizačnej frekvencie. Obvody rozhrania sú v tomto bloku dva. Jeden na
strane k nadriadenému počítaču riadi spoluprácu pri nahrávaní obrazovej pamäte a pri
odovzdávaní stavovej informácie. Druhé na strane k monitoru prevádza prečítané údaje na
jednotlivé zložky jasovej modulácie, prípadne vytvoria požadovaný formát videosignálu.
Obrazová pamäť radiča rastrového monitora obsahuje informáciu, z ktorej sa
odvodzuje jasová modulácia bodov na obrazovke. Informácia môže určovať priamo stav
týchto jednotlivých bodov (bodová obrazová pamäť) alebo kóduje zobrazovanie celej skupiny
bodov. V druhom prípade sa musí vo výstupných obvodoch rozhrania vykonať preklad medzi
uloženým kódom v pamäti a skutočným bodovým zobrazením. Pri prevode kódu znaku na
body sa používa pamäť tvaru znakov ROM (pevné tvary), alebo RAM (programovateľné).
Ako pri bodovej, tak aj pri bunkovej obrazovke pamäti, je výsledný obraz zložený z bodov
zobrazovaných po riadkoch.
S tra na 40
Synchroni
cia
Elektronické počítačové systémy
3.3.2.3. Typy grafických kariet
Pri počítačoch PC XT/AT sa pripojuje monitor prostredníctvom adaptéru
obsahujúceho radič displeja. Podľa výsledného zobrazenia ich rozdeľujeme na znakové a
grafické adaptéry.
Monochromatické textové adaptéry MDA (Monochrom Dispalay Adapter) umožňujú
zápis 80 znakov v 25 riadkoch.
Jeho nasledovníkom je grafická 8 bitová karta CGA (Color Graphics Adapter), ktorá
umožňovala zobrazovanie v textovom aj grafickom móde. Textový mód umožňuje
zobrazovať 80 znakov na riadok a 25 riadkov. Grafické módy sú dva:
- 640 x 200 mono,
- 320 x 200, ktorý umožňuje priradiť každému bodu jednu zo štyroch farieb
zobrazovanej palety, do ktorej bolo možné vybrať odtiene zo 16 možných farieb. Z toho tri sú
určené z dvoch rôznych kombinácii skupín:
1. skupina - cyan, magenta, white, štvrtá farba je farba pozadia,
2. skupina - green, red, brown.
Ďalším vývojovým stupňom boli adaptéry Hercules, ktoré boli grafické, ale
monochromatické. V základnom režime používal rozlíšenie 720 x 348 bodov, pričom každý
bod bol priamo adresovateľný. Tento adaptér bol veľmi obľúbený, hlavne pre výhodné
zobrazovanie textových znakov a pre svoju nízku cenu.
Možnosti farebného zobrazovania ďalej rozširoval adaptér EGA. Umožňoval využitie
až 256 kB pamäte, čo zabránilo možnosti priameho prístupu do pamäte. Základný režim bol
textový a bol plne kompatibilný s režimom CGA. Grafický režim pri rozlíšení 320 x 200
bodov bol tiež kompatibilný s CGA, no umožňoval zobraziť 16 farieb z možnej palety 256
farieb. Režim vysokého rozlíšenia 640 x 350 bodov je tvorený podobne, pomocou
jednotlivých farebných vrstiev.
Najrozšírenejším adaptérom v súčasnej dobe je grafická karta VGA. Principiálne
vychádza z grafického zobrazenia adaptéru EGA v bitovej mape 640 x 480 bodov, boli však
doplnené jednotlivé farebné vrstvy tak, že bolo možné adaptér ľubovolne rozširovať
jednoduchým pridaním video pamäti. Takže sa používajú adaptéry VGA s 256 kB pamäte, s
512 kB pamäte alebo s 1 MB pamäte, samozrejme pre špeciálne grafické stanice je možné túto
pamäť ďalej rozširovať.
V ďalšom vývoji sa VGA dodávala aj s vyšším rozlíšením 800 x 600, 1024 x 768
alebo 1280 x 1024 bodov a väčšinou sa súhrne označujú Super VGA. Základná konfigurácia
VGA umožňuje zobrazenie 256 farieb z možnej palety 256 tisíc farieb. Samozrejme množstvo
súčasne zobraziteľných farieb a aj veľkosti paliet závisia hlavne od veľkosti video pamäti.
3.3.3. Tlačiarne
Tlačiarne patria medzi výstupné zariadenia, ktoré vytvárajú trvalý záznam výstupu z
počítača obsahujúci písmená, číslice a iné znaky v čitateľnej podobe alebo ľubovolné grafické
formáty. Prioritnou úlohou tlačiarní bola spočiatku tlač písmen a číslic a pre vytváranie
grafických formátov boli určené výlučne zapisovače, no s rozvojom nových technológií tlače a
samozrejme aj výpočtovej techniky sa funkcie týchto dvoch skupín stále viac prekrývajú.
Strana 41
Nasledujúce rozdelenie tlačiarní bude vychádzať z ich pôvodného určenia pre
vytváranie znakov a písmen, no samozrejme v prípade moderných technológií bude
poukázaná možnosť využitia tej ktorej skupiny pre vytváranie grafického formátu.
Znakové
tlačiarne
Kontúrové
Bodové
Úderové
Bezúderové
Úderové
Bezúderové
Sériové
Paralelné
Paralelné
Sériové
Paralelné
Sériové
Paralelné
Kontúrové tlačiarne pracujú na princípe písacieho stroja, všetky časti znaku sa tlačia
súčasne. Celý znak je odliaty z kovu a pripevnený k typovej páske. Bodový spôsob tlače
vytvára znaky kombináciou bodov, ktoré v celku predstavujú požadovaný znak.
Úderové tlačiarne vytvárajú znak na papier úderom tlačovej hlavy cez farbou
napustenú pásku na papier, čím dôjde k otlačeniu znaku. Pri bezúderových tlačiarniach
nedochádza pri tlačení k dotyku tlačiaceho mechanizmu s tlačeným povrchom. K
zviditeľneniu znaku sa používa ohriatie citlivého papiera, nástrek atramentu z trysky, atď.
Sériová tlač vytvára výstupnú zostavu po znakoch, jeden znak po druhom, paralelný
spôsob tlače tlačí zdanlivo celý riadok v jednom okamihu. U moderných typoch tlačiarní pre
ich značnú rýchlosť (napr. laserové) sa často používa termín stránkový spôsob tlače.
Sériové kontúrové úderové tlačiarne
Princíp týchto tlačiarní je zhodný s princípom písacích strojov. Ich hlavným prvkom je
typový valček alebo guľa, na ktorých sa nachádzajú požadované znaky. Ich tvary sa prenášajú
na papier pomocou farbiacej pásky nachádzajúcej sa medzi valčekom, príp. guľou a papierom.
V prípade potreby iných znakov sa jednoducho valček alebo guľa vymenili za iné. Výsledná
kvalita tlače je pomerne vysoká a dokonca je možná aj viacfarebná tlač použitím
rôznofarebných farbiacich pások.
Vlastná tlač sa vykonáva po riadkoch zľava doprava, no je možné ju urýchliť využitím
vyrovnávacej pamäte, ktorá umožní tlač aj sprava doľava.
Bežná rýchlosť tohto typu tlačiarní je cca 150 znakov za sekundu pri pomerne vysokej
kvalite a preto sa využívajú výlučne pre spracovávaní textov.
Paralelné kontúrové úderové tlačiarne
Často sú označované aj ako riadkové tlačiarne. Rýchlosť tlačiarne je až niekoľko sto
riadkov za minútu. Jednotlivé znaky sú u týchto tlačiarní umiestnené v riadku na nosiči,
ktorým je reťaz alebo pás pohybujúci sa kolmo na smer papiera alebo na valci rotujúcom
rovnakým smerom ako sa pohybuje papier. Medzi papierom a pásom (reťazou, valcom) sa
S tra na 42
Elektronické počítačové systémy
nachádza farbiaca páska. Nad každou pozíciou znaku alebo medzery tlačeného riadku je
umiestnené kladivko, ktoré udrie práve vtedy, keď sa tlačený znak nachádza pod ním. Ak
tlačiareň umožňuje tlač so šírkou napr. 70 znakov na riadok, je po celej šírke papiera
umiestnených 70 tlačiacich kladiviek.
Používajú sa hlavne tlačiarne s typovým pásom a reťazové tlačiarne, u ktorých sa dajú
veľmi jednoducho vymeniť najviac opotrebovávané časti, t.j. typový pás a reťaz, často
umiestnené v kazete.
Paralelné kontúrové bezúderové tlačiarne
Sú to vysoko špecializované tlačiarne určené pre výrobu predlôh pre tlačiarenské stroje
alebo pre extrémne vysokú rýchlosť tlače. Využívajú fotografický princíp k vytvoreniu celého
znaku bezúderovým spôsobom. Obrazy znakov v zodpovedajúcej veľkosti a tvare si vyberá
počítač a fotooptickou projekciou sa prenášajú na fotocitlivý papier alebo film.
Bodové tlačiarne
Znaky tlačené na bodovej tlačiarni sa vytvárajú tlačením skupiny bodov, ktoré formujú
tvary číslic, písmen a iných znakov. Často sa tieto tlačiarne nazývajú mozaikové a maticové,
nakoľko znaky sú zložené z mozaiky bodov. Body sa môžu tlačiť bezúderovým aj úderovým
spôsobom a sériovo alebo paralelne pre celý riadok.
Matica je určená počtom bodov do výšky a do šírky. Za účelom dosiahnutia vyššej
kvality pri nezmenenom počte bodov v matici sa tlačové body niektorých tlačiarní
horizontálne aj vertikálne prekrývajú. Dosahuje sa to nasledujúcim spôsobom. Pri spiatočnom
chode tlačiaceho mechanizmu sa tlačiace matice posunú voči papieru tak, aby tlačené body
ležali v medzerách (horizontálne aj vertikálne), čím sa dosiahne dvojnásobná hustota bodov.
Pri spiatočnom chode sa aktivuje doplnkový generátor znakov. Tlač prebieha obvykle
obojsmerne. Medzi výhody týchto tlačiarní patrí možnosť tlače rôznych tvarov písma a hlavne
tlač grafických symbolov i grafickú tlač.
Sériové bodové úderové tlačiarne
Tlačiaca hlava úderovej bodovej tlačiarne je obvykle zložená z matice drôtikov alebo
ihiel, ktoré tlačia znak cez pásku napustenú farbou. Tlačiaca hlava môže obsahovať jednak
úplnú maticu bodov pre tlač celého znaku, alebo iba jeden stĺpec bodovej matice. Dokonca
spočiatku sa vyrábali tlačiarne iba s jedným tlačiacim drôtikom, ktoré vytvárali celý znak
postupne.
Tlačiaca hlava sa pohybuje horizontálne, obvykle obojsmerne a môže ich byť
nainštalovaných aj viac.
V súčasnej dobe sa najviac využívajú hlavne 9 a 24-ihličkové tlačiarne. Príklad
usporiadania ihiel 24-ihličkovej tlačiarne je na obrázku 3.10.
Strana 43
Paralelné bodové úderové
tlačiarne
Tento typ tlačiarní sa používa len
výnimočne. Pre vlastnú tlač sa používa
horizontálny tlačový hrebeň umiestnený
kolmo
na smer pohybu papiera, ktorý
obsahuje toľko kladiviek, koľko je znakov na
riadok a na konci každého je jeden tlačiaci
bod. Tlač prebieha odhora dolu po
jednotlivých mikroriadkoch, takže celý riadok
vytvára niekoľko mikroriadkov tlačených
postupne. Konkrétne uskutočnenie tejto
technológie tlače dosahovalo v matici 5 x 7
3.12. Usporiadanie 24 ihli čkovej hlav bodov rýchlosť tlače 125 riadkov za minútu.
tlačiarne
Sériové bodové bezúderové
Tlačenie sa realizuje nemechanickým spôsobom. Preto sa nemôžu vytvoriť kópie
pomocou kopírovacieho papiera. Využívajú sa tieto tri fyzikálne princípy tlače: teplotný,
elektrocitlivý a tryskový.
Tepelné tlačiarne využívajú špeciálny papier, ktorý zahriatím mení svoju farbu.
Tlačiace hlavy sú elektricky zahrievané a vyhrievací prvok tvorí odpor - tranzistor.
Usporiadanie jednotlivých prvkov bodovej matice je podobné ako pri mozaikovej tlačiarni.
Na lícovej strane papiera je nanesená tenká kovová vrstva. Aktívne prvky tlačiacej hlavy
privedú na určené miesta vysoké napätie, ktoré spôsobí odparenie kovovej vrstvy a miesto
tlače ostane čierne. Znaky sa tlačia po riadkoch a výsledná kvalita je pomerne vysoká.
Tlačiarne s atramentovou tryskou sú založené na tom princípe, že pod tlakom sa
vystrekuje z trysiek atrament priamo na papier. V praxi sa používajú nasledujúce dva spôsoby
vystrekovania:
1. Pri spojitom spôsobe jediná tryska vytvára spojitý prúd elektrostaticky nabitých
kvapiek atramentu (obrázok 3.11.). Vertikálny smer tohto prúdu riadia vertikálne
vychyľovacie doštičky a ich rozsah je jeden riadok a horizontálny pohyb je
zabezpečený postupným posunom celej tlačovej hlavy. Tam, kde má ostať papier
nepopísaný je prúd atramentu zvedený do zberného zásobníka. Piezoelektrické
čerpadlo zabezpečuje prúd atramentu rozstrekovaný vo forme kvapiek. Rýchlosť
tlače je okolo 200 znakov za sekundu. Väčší výkon tlačiacej hlavy sa dosahuje
väčším počtom trysiek, ktoré môžu byť usporiadané do stĺpca alebo obdĺžnika.
Kvalita tlače je LQ(Letter quality) a tlačiarne sú takmer bezhlučné. Naviac pri
použití troch zásobníkov atramentu (R G B) umožňujú aj farebnú tlač.
S tra na 44
Elektronické počítačové systémy
Piezoelektrický
kryštál
Budiè
krištálu
Tryska
Vertikálne
H orizontálne
vychy¾
ovacie doštièky
Riadenie
vychy¾
ovania
Zásobník
náplne
Pumpa
Zásobník
recyklujúcej
náplne
Filter
3.13. Princíp tryskovej tlačiarne so spojitou tlačou
2. Pri prerušovanom spôsobe jedna alebo niekoľko trysiek vystrekuje prúd atramentu
riadený elektrickými impulzmi z radiča( obrázok 3.12.). Vyvedenie atramentu sa
deje termicky. Tryska uzatvára z jednej strany malú komoru a na jej opačnej
strane je tepelný element spôsobujúci zväčšenie objemu a vystreknutie kvapiek
Tlakový
zásobník
náplne
Tlaèiaca hlava
Nezávisle
riadené trysky
Regulátor tlaku
Filter
Prívod náplne
Vstup
elektrických
signálov riadenia
Papier
3.12. Princíp tryskovej tlaèiarne s prerušovanou tlaèou
atramentu. Kvapky získajú rýchlosť cca 12 m/s.
Strana 45
Tlačiarne tohto typu sú stále populárnejšie, nakoľko sú tiché, pomerne lacné a ani
prevádzka nie je veľmi nákladná. Dovoľujú farebnú tlač a aj tlač v grafickom móde.
Nevyžadujú papier so žiadnou zvláštnou úpravou.
Paralelný spôsob bezúderovej tlače
Posledná skupina tlačiarní patrí v súčasnej dobe medzi najpopulárnejšie a je založená
na princípe vytvárania latentného (neviditeľného) obrazu s využitím plošného
elektrostatického náboja (obrázok 3.13.). Nositeľom lokálneho náboja je valec alebo
nekonečný pás z fotoinduktívneho materiálu a na ňom sa pôsobením svetla vytvára latentný
obraz. Jedná sa o princíp elektrografickej tlač. Expozícia sa realizuje laserovým lúčom.
Latentný obraz vytvorený na valci sa zviditeľňuje v toneri, ktorého častice sa prichytia len na
svetlom vybitých plochách. Prenos obrazu na normálny papier prebieha za súčasného
pôsobenia tlaku a tepla, ktoré odparí tekuté zložky a obraz sa stabilizuje.
V podstate sa môže laserová tlač rozdeliť do týchto základných piatich taktov:
Nabíjanie
Expozícia
Vyvolanie
Prenos
Ustálenie
Technické riešenie
Nabíjanie fotokoinduktívneho valca alebo nekonečného pásu zabezpečuje výboj
Clona
Laserová
dioda
Valcová
šošovka
OPC pás
alebo Se valec
Vypnutý lúè
Zapnutý
OPC pás
3.15. Princíp laserovej tlače
vznikajúci okolo drôtenej elektródy natiahnutej pozdĺž povrchu. Tým sa vytvorí homogénny
plošný záporný náboj.
Expozícia sa realizuje svetlom emitovaným laserovou diódou. Obraz sa vytvára
podobne ako na rastrovej obrazovke rozložením na mikroriadky a moduláciou lúča.
S tra na 46
Elektronické počítačové systémy
Vertikálny posun, teda prechod na vykresľovanie nového mikroriadku, zabezpečuje otáčanie
valca a horizontálny posun - polygonálne zrkadlo. Kvalita tlače okrem iného závisí aj na
očistení valca od nadbytočného farbiva po zviditeľnení obrazu vyvolaním a po jeho prenose
na papier. Čistenie sa vykonáva opticky - vybíjanie povrchu a mechanicky - zotrenie zvyškov
tonera.
3.3.4. Interaktívne grafické systémy
Pre zadávanie údajov do počítača pri spracovaní grafických informácií sa dáva
prednosť elegantnejším zariadeniam ako sú klasické klávesnice. Medzi najznámejšie patria
svetelné perá, dotykové obrazovky, pákové a guľové ovládače a napokon tablety.
Svetelné pero
Patrí medzi obľúbené grafické vstupné zariadenia. Vlastné pero spojené ohybným
káblom s elektronikou displeja obsahuje svetlocitlivý prvok a často aj šošovku, ktorá zaostruje
lúč na svetlocitlivý prvok. Akonáhle zaostrený lúč po priložení pera na obrazovku dopadne na
svetlocitlivý prvok, je do radiča displeja vyslaný impulz zhody. Vzhľadom k tomu, že v radiči
sú zabudované technické prostriedky, ktoré zaznamenávajú, v ktorom riadku rastra a v akom
časovom okamžiku od začiatku pohybu elektrónového lúča v danom riadku ku zhode došlo,
má radič úplnú informáciu o polohe bodu, na ktorú svetelné pero ukazuje.
Svetelné pero sa môže použiť v programoch buď ako ukazovadlo alebo podobne ako
obyčajné pero pri kreslení.
Dotykové obrazovky
V určitom slova zmysle ide o analogické zariadenia ako sú obrazovky so svetelným
perom. Dotyková obrazovka pracuje na jednom z týchto princípov:
1. Meranie zmeny odporu materiálu spôsobené dotykom prstov.
2. Zachytávanie zmeny
kapacity v určitej oblasti
obrazovky(kapacitná
sonda).
Y
Spoločný pól
RY
X
S
X Y
Odporové páskové
elektródy
RX
3.16. Princíp odporovej dotykovej obrazovky
3. Zachytávanie zmeny
dopadajúceho svetla v
určitej oblasti obrazovky
(svetelná sonda).
4. Zachytávanie zvuku
odrazeného prstom alebo
iným ukazovadlom
(akustická sonda).
Odporová dotyková obrazovka
je založená na meraní veľkosti odporu
a jej princíp je nasledovný. Dve
odporové dráhy umiestnené na seba
kolmo a nanesené na priehľadné
podložky, majú vyvedené vodivé
odbočky. Tie tvoria pravouhlú sieť,
viď obrázok 3.14. V mieste stlačenia
Strana 47
sa vytvorí vodivý kontakt ku tretej, spoločnej elektróde. Vyhodnocovacia elektronika zmeria
veľkosť odporu medzi touto elektródou a pevnými vývodom každej odporovej dráhy. Práve
tieto dve hodnoty jednoznačne určujú ukazované miesto. Hlavnou nevýhodou tohto typu
dotykových obrazoviek je malá rozlišovacia schopnosť.
Kapacitne dotykovú obrazovku tvorí sklenená doska z dvoch strán pokrytá
priehľadnými tenkovrstvovými elektródami. Preteká nimi veľmi slabý elektrický prúd a s jej
rohmi sú vodivo spojené štyri oscilátory, ktoré kmitajú na rovnakej frekvencii. Pri dotyku s
vonkajšou elektródou dôjde ku vzniku síce nepatrného ale merateľného elektrického prúdu
spôsobeného vyrovnávaním potenciálov elektródy a ľudského tela. To spôsobí aj zmenu
frekvencie kmitania oscilátorov, ktoré sa vyhodnocuje diferenciálne a odtiaľ sa určí aj presná
poloha dotyku.
Infračervené
Pri infra-červenej
žiariče
dotykovej obrazovke je
po obvode obrazovky
rozmiestnená
sústava
infračervených diód a
oproti nim je sústava
snímačov (infračer-vené
fototranzistory),
viď
obrázok
3.15.
Tie,
ktorých lúč je zatienený,
Dotyková
indikujú polohu prsta,
plocha
presné miesto dotyku.
Proti
rušeniu
býva
povrch
zobrazovača
vybavený filtrom, ktorý
ho chráni pred infračerveným
spektrom
Infračervené
žiarenia.
snímače
3.17. Princíp infra červenej dotykovej obrazovky
Pákové
guľové ovládače
a
Pákový ovládač (joystick) umožňuje pohyb páky doprava, doľava, od seba, k sebe a vo
všetkých možných kombináciách týchto smerov. Výsledkom tohto pohybu je, že každý objekt
umiestnený na dvojrozmernej ploche môže byť identifikovaný jednou polohou ovládača.
Väčšina ovládačov je konštruovaná s dvoma potenciometrami. Napätie na bežci jedného je
úmerné pohybu v smere osy x, napätie na bežci druhého, pohybu v osi y. Každej polohe
ovládača zodpovedá iná dvojica napätia. Toto napätie musí byť pochopiteľne AČ
prevodníkom prevedené na číselný údaj, ktorý sa ďalej spracováva v počítači. Tento typ
ovládača je predovšetkým známy z počítačových hier.
Guľový ovládač obsahuje guľu s priemerom 51 - 76 mm, ktorá leží v miske a môže sa
v nej volne otáčať. Používateľ pohybuje touto guľou a pohyb sa prenáša na spínače otáčania v
dvoch na seba kolmých osách. Snímače obvykle generujú pulzy, ktoré sú sčítané v registroch.
Z týchto registrov sú načítané hodnoty odovzdávané do radiča ovládača a ďalej do počítača.
S tra na 48
Elektronické počítačové systémy
Myš
Myš patrí bezpochyby k najrozšírenejším typom vstupných zariadení interaktívnych
systémov, nakoľko neunavuje ruku, ľahko sa učí ovládať a využíva psychomotorické väzby,
ktoré má človek zafixované z iných činností.
Principiálne myš vykonáva prostredníctvom mechanických prevodov pohyb puzdra po
podložke na výchylku snímačov uhlov nachádzajúcich sa vnútri. Najčastejšie sa ako prvý člen
prevodu používa guľa, ktorá vyčnieva zo spodnej strany puzdra. Na jej povrch vnútri dosadajú
valčeky spojené so snímačmi uhlovej výchylky. Medzi guľou a valčekom dochádza čiastočne
k odvalcovaniu (rovnobežne s osou valčeka), čiastočne ku šmýkaniu (rovnobežne s osou
valčeka). Po podložke by sa guľa mala vždy odvaľovať, nikdy šmýkať.
V závislosti na konkrétnej realizácii rozlišujeme 2 typy myší:
1. myš s ťažkou guľou,
2. myš s ľahkou guľou.
Myš s ťažkou guľou používa pre vytvorenie dostatočnej trecej sily medzi podložkou a
guľou vlastnú váhu. Valčeky sú umiestnené do jej rovníkovej roviny s osami navzájom
kolmými. Prítlak k valčekom zabezpečuje tretí, odpružený valček. Tento typ myší je možné
použiť aj na hladkých plochách.
3.18. Usporiadanie prevodov s ľahkou guľou
Myš s ľahkou guľou využíva pre vytvorenie trecej sily medzi podložkou a guľou tlak
ruky na puzdro. Valčeky nie sú umiestnené v rovníkovej polohe, ale opierajú sa o hornú
pologuľu. U týchto myší je pre dosiahnutie dostatočného trenia nutné používať podložku.
Digitizéry a tablety
Grafický digitizér sa používa k digitalizácii ľubovoľných grafických statických
informácií (výkresy, fotografie), formou vstupu súradníc jednotlivých bodov a ich atribútov
do počítača. Podľa využitia ich môžeme rozdeliť do troch skupín:
1. Veľkoplošné digitizéry typicky používané pre digitalizáciu údajov z veľkých
výkresov. Ich konštrukcia je rovnaká ako pri grafických zapisovačoch, no funkcia
jednotlivých výstupných prvkov je inverzná.
2. Malé stolné digitizéry nazývané tablety, ktorých snímacie zariadenie obsluhuje
používateľ ručne.
3. Špeciálne digitizéry určené pre snímanie jednak dvojrozmerných pohyblivých
obrazov a tiež trojrozmerné snímanie.
Strana 49
Snímacie
zariadenie
U ref
U ref
Potenciometre
A
È
X
A
È
Y
3.19. Princíp digitizéru s potenciometrom
Digitizér sa skladá z týchto častí:
1. Snímacie zariadenie a tlačidlá, ktorými operátor určuje okamžik digitalizácie.
2. Pracovnej plochy a prevodu slúžiaceho k zisťovaniu polohy snímacieho
zariadenia.
3. Radiča a pripojovacej elektroniky.
4. Prípadne displej zobrazujúci informácie o súradniciach.
K prevodu polohy snímacieho zariadenia na číselný údaj sa používa niekoľko
spôsobov. Najjednoduchším patrí použitie potenciometra, viď obrázok 3.17. Snímacie
zariadenie je spojené s jeho bežcom. Pri dvojrozmernej digitalizácii sú samozrejme potrebné
dva potenciometre. Ak sú pevné vývody potenciometra napájané presným napätím a ak je
priebeh potenciometra lineárny, potom napätie merané na jeho bežci zodpovedá polohe
snímacieho zariadenia. K prevodu napätia na číselnú hodnotu sa používa analógovo-číslicový
prevodník.
S tra na 50
Elektronické počítačové systémy
3.3.5. Vonkajšie veľkokapacitné pamäte
Medzi najrozšírenejšie veľkokapacitné pamäte patria určite pevné disky, ktorých cena
sa neustále znižuje. Jednou z ich hlavných výhod je relatívne krátka doba prístupu k
informáciám.
Pevný disk a disketová jednotka
Fyzikálny princíp záznamu informácii je založený na zmene magnetického toku.
Zmena môže nastať z kladného magnetického toku na záporný, alebo naopak a táto zmena sa
pri čítaní prejaví ako impulz. Pre reprezentovanie dát sa využívajú impulzy, alebo ich
neprítomnosť.
Štruktúra uchovávania informácii na disketách je zhodná s pevnými diskmi. Disk je
rozdelený do oblasti konštantných veľkostí - sektorov, ktorých veľkosť je 512 bajtov. Tie sú
usporiadané do stôp na povrchoch diskov. Počet sektorov na stopu, ale aj stôp na povrchu je
rôzny. Pevné disky obsahujú niekoľko diskov nad sebou, takže stopy rovnakého čísla
vytvárajú tzv. valec (cylinder).
Zapisovacie a čítacie hlavy sú uložené na spoločnom ramene, čiže v daný okamih sú
všetky vždy nad rovnakou stopou.
Dôležitou charakteristikou výkonov diskových jednotiek je doba prístupu (acces time)
a rýchlosť prenosu údajov (data transfer rate). Dobu prístupu sa určuje ako súčet času
vystavenia, čo predstavuje premiestnenie ramena nad požadovanú stopu (valec) a času
čakania, čo je čas potrebný k takému natočeniu disku, aby žiadaný sektor bol pod hlavou.
Rýchlosť prenosu údajov udáva veľkosť prenesených informácii za časovú jednotku.
Dôležitou veličinou, ktorá môže do značnej miery ovplyvniť rýchlosť prenosu je aj faktor
prekladania, ktorý určuje, či sú sektory na stope usporiadané postupne za sebou (1:1) alebo sú
preusporiadané podľa určitého pravidla (1:2, 1:3, 1:4). Dôvodom preusporiadania sektorov na
stope je doba odovzdávania informácií BIOSu a DOSu a ich následná kontrola. Počas tejto
doby sa disk otáča a hlava sa dostane až nad sektory, ktoré sú vzdialené od posledne čítaného
sektoru minimálne o jeden sektor.
Radiče diskov
Úlohou radiča je sprostredkovať komunikáciu medzi požiadavkami BIOSu a fyzickým
diskom. Čiže musí zabezpečiť načítanie údajov, skontrolovať ich, pri prípadnej chybe ich
znovu načítať a poslať ďalej. Pri týchto operáciách sa môžu s výhodou využívať vyrovnávacie
pamäte, ktoré napr. pri požiadavke o načítanie sektoru načítajú celú stopu, nakoľko je veľká
pravdepodobnosť, že ďalšia požiadavka sa bude týkať nasledujúceho sektoru.
Kódovanie
Z magnetického princípu záznamu údajov vyplýva nasledujúca reprezentácia:
1 - impulz,
0 - chýbajúci impulz.
Hlavným nedostatkom tejto reprezentácie je, že pri dlhšej postupnosti núl by radič
stratil synchronizáciu s údajmi na disku. Preto je nutné použiť pre ukladanie údajov
kódovanie, ktoré zabezpečí, že nedôjde ku výpadku synchronizácie. Ďalej je dôležité
zabezpečiť, aby časovanie pri čítaní bolo také isté ako pri zápise.
Najpoužívanejšie sú tieto tri typy kódovania:
1. FM - Frequency Modulation,
2. MFM - Modified Frequency Modulation,
Strana 51
3. RLL - Run Length Limited.
Kódovanie FM (frekvenčná modulácia) rieši problém nežiadúcej postupnosti núl
veľmi jednoduchým spôsobom. Za každú nulu a jednotku sa pridá ďalší impulz:
1 0 1 1 0 po zakódovaní 1 1 0 1 1 1 1 1 0 1
Pri tomto spôsobe kódovania sa však zaberá zbytočne veľa miesta na disku. Na jednej
strane je požiadavka krátkej postupnosti núl, no na druhej strane treba brať do úvahy, že
záznam nuly zaberie menší priestor než záznam jednotky. Toto už zohľadňujú kódovania
MFM a RLL.
Kódovanie MFM (modifikovaná frekvenčná modulácia) využíva pri kódovaní túto
prevodnú tabuľku:
Kódovaný údaj
1
0 v postupnosti 00
0 v postupnosti 10
Zakódovaný údaj
01
10
00
Pravidlá kódovania uvedené v tabuľke zabezpečia, že zakódovaný údaj bude
obsahovať súvislú postupnosť maximálne troch núl a naviac počet jedničiek vo výslednom
reťazci bude pomerne malý, viď príklad:
1 0 1 1 0 0 po zakódovaní 0 1 0 0 0 1 0 1 0 1 0
Najnovší a v súčasnej dobe najpoužívanejší spôsob kódovania 2.7-RLL dokáže ušetriť
až 50 % miesta na disku v porovnaní s kódovaním MFM. Pre kódovanie údajov používa
pomerne zložitú prevodnú tabuľku:
Kódovaný údaj
00
01
100
101
1100
1101
111
Zakódovaný údaj
1000
0100
001000
100100
00001000
00100100
000100
Rozdiel medzi kódovaním MFM a 2,7 RLL je zrejmý z nasledujúceho príkladu:
MFM
1 0 1 1 0 0 po zakódovaní 0 1 0 0 0 1 0 1 0 1 0
- 4 impulzy
2, 7 RLL
1 0 1 1 0 0 po zakódovaní 1 0 0 1 0 0 0 0 1 0 0 0
- 3 impulzy
Ďalšou výhodou kódovania RLL je, že hustejšie uložené údaje sa dajú z disku preniesť
rýchlejšie. Touto metódou sa obecne zväčší kapacita diskovej pamäte a zrýchli prenos údajov.
Rozhranie medzi radičom a diskovou jednotkou
S tra na 52
Elektronické počítačové systémy
Aby radič mohol bez problémov komunikovať s diskovou jednotkou je potrebné
dohodnúť určitú formu (rozhranie) ich vzájomnej komunikácie. Je to záležitosť ako
technického tak aj programového vybavenia.
Najstarším typom rozhrania je ST 506, ktoré využíva 20 prvkový vodič pre údaje a 34
prvkový vodič pre riadiace signály. Toto rozhranie podporuje 16 hláv pevného disku. Je
schopné obsluhovať pevné disky, ktoré majú osem diskov, čo pri kódovaní RLL predstavuje
7,5 mil. bitov a pri MFM 5 mil. bitov. Separácia údajových bitov od synchronizačných sa
uskutočňuje v radiči.
Nástupcom bolo rozhranie ESDI, ktoré zachovalo rovnakú štruktúru prepojenia t.j.
počet vodičov a snažilo sa odstrániť hlavné nedostatky ST 506. Podporuje až 256 hláv a
umožňuje preniesť 24 mil. bitov za sekundu. Separácia údajov od synchronizačných impulzov
sa vykonáva priamo na disku a naviac disková jednotka ESDI môže radiču posielať
informácie o svojom rozložení disku. ESDI nikdy nedosiahlo širšieho využitia.
Rastúci počet periférnych zariadení vyžadoval vytvorenie univerzálneho rozhrania,
ktoré by umožňovalo komunikáciu nielen s pevným diskom, ale aj s optickým diskom,
optickým skenerom a Bernuliho kazetovými diskovými jednotkami. Takýmto rozhraním je
SCSI (Small Computer System Interface - rozhranie malých počítačových systémov), ktoré
umožňuje prenášať až 100 MB za sekundu. Disky SCSI majú radič v skutočnosti umiestnený
priamo na diskovej jednotke, preto sa karta pripájaná na vnútornú zbernicu neoznačuje už ako
radič, ale ako skupinový adaptér, na ktorý je možné pripojiť až osem zariadení.
SCSI je vo svojej podstate inteligentné zariadenie, schopné reagovať na zložitejšie
príkazy, ako napr. zapíš sektor, čítaj sektor, atď.
Hlavnou výhodou SCSI je možnosť obsluhy viacerých zariadení a teda aj úspora
miesta (8 zariadení - 1 slot), v ďalšom možnosť plne využívať multitaskingové prednosti a
technické prostriedky (zbernica ISA). Jeho vlastnosti sa plne využívajú v serveroch, kam
prichádzajú žiadosti o operácie s jednotlivými zariadeniami. CPU v prípade SCSI mu iba
predá žiadosti a v čase čakania na ukončenie operácie môže vykonávať inú činnosť - podpora
multitaskingu.
Posledným používaným rozhraním je IDE, nejedná sa však o následníka SCSI.
Vychádza z podstaty rozhrania ST 506, no snaží sa odstrániť jeho hlavný nedostatok, t.j.
spojovacie vodiče radiča a diskovej jednotky. Je to vyriešené veľmi jednoduchým spôsobom
tak, že radič sa nachádza priamo na diskovej jednotke. Používajú sa tri možnosti pripojenia na
vnútornú zbernicu PC:
1. Cez špeciálny tzv. IDE konektor umiestnený priamo na základnej doske.
2. Cez kartu pripojenú na slot, ktorej funkcia spočíva len v prepojení radiča s
vnútornou zbernicou.
3. Pevný disk je umiestnený priamo na karte zasunutej do slotu.
V súčasnej dobe sa stále viac uplatňujú aj CD ROM. Ich hlavnou prednosťou je
množstvo údajov sústredených na jednom disku, no už z názvu vyplýva, že z týchto
pamäťových médií je možné len čítať. Zariadenia umožňujúce zápis údajov patria ešte stále
medzi novinky a ich cena je vysoká.
Strana 53
4. Pamäťové systémy
Elementárnou jednotkou pamäte je jeden dvojstavový prvok, schopný zaznamenať
jeden bit (b). Pri spracovávaní a ich uchovávaní sa však používajú prevažne väčšie jednotky byte (B) a jeho kombinácie.
Požiadavky na všetky pamäťové systémy sa dajú zhrnúť v podstate do dvoch bodov maximálna rýchlosť a maximálna kapacita. Proti týmto požiadavkám stoja enormne veľké
náklady a hlavne prekážky fyzikálnej povahy ( oneskorenie signálov, spotreba energie,
vyžarovanie tepla).
4.1. Hierarchické usporiadanie jednotlivých
typov pamätí
Najstaršie počítače vystačili s jedným druhom pamätí, no s rastúcimi požiadavkami
na rýchlosť sa rozdelili pamäte na vnútorné a vonkajšie tzv. dvojúrovňový systém
usporiadania pamätí.
Základná
Radič
Procesor
Vstupné
jednotky
Vnútorná
pamäť
Výstupné
jednotky
Vonkajšia
pamäť
4.1. Dvojúrovňový pamäťový systém
Vnútorná pamäť je umiestnená vo vnútri základnej jednotky a je určená priamo pre
spoluprácu s procesorom, čiže musí byť veľmi rýchla, je energeticky náročná a jej kapacita je
pomerne nízka.
S tra na 54
Elektronické počítačové systémy
Vonkajšia pamäť je určená k uchovávaniu informácií, ktoré nie sú určené k
okamžitému spracovávaniu. Jej kapacita je podstatne vyššia, za to je však pomalšia, čo
umožňuje znížiť energetické nároky.
Jeden typ vonkajšej a vnútornej pamäte bol dostačujúci len do určitého stupňa vývoja,
preto dochádza k ďalšiemu deleniu vnútorných a vonkajších pamätí. V súčasnej dobe ich
môžeme rozdeliť do šiestich skupín podľa vybavovacej doby.
Vnútorné pamäte
Typ pamäte
Registre
(registers)
Vyrovnávacie pamäte
(cache, buffers)
Hlavné pamäte
(main memory)
Spôsob realizácie
polovodičové
preklápacie obvody
Vybavovacia doba
polovodičová RAM
20 - 200 ns
polovodičová RAM
feritové matice
200 - 2000 ns
2 - 20 ns
Vonkajšie pamäte
Typ pamäte
Záložné pamäte
(backing memory)
Sekundárne pamäte
(secondary memory)
Hromadné pamäte
(mass memory)
Spôsob realizácie
Vybavovacia doba
disk s pevnými hlavami
1 - 10 ms
disk s pohyblivými hlavami
20 - 100 ms
magnetická páska, optický
disk
10 - 100 s
Podstatou hierarchického usporiadania je vytvorenie niekoľkých úrovní pamätí, medzi
ktorými sa informácie určené na spracovávanie presúvajú smerom k procesoru a naopak
informácie určené k archivácii sa presúvajú smerom od procesora. Najrýchlejšie a väčšinou aj
kapacitne najmenšie sú pamäte najbližšie k procesoru.
Strana 55
1.
2.
3.
Adres
Proceso
r
Radič 1
Radič 2
Adresár
Adresár
Vyrovnávacia
pamäť
Hlavná
pamäť
Radič 3
Sekundár
na
pamäť
Údajová
4.2. Trojúrovňový pamäťový systém
Pre staršie strediskové počítače je typický trojúrovňový pamäťový systém. Najbližšie k
procesoru je vyrovnávacia pamäť, ktorá je vyrobená z veľmi rýchlych polovodičových
prvkov a má kapacitu niekoľko KB. Je určená pre zápis a čítanie medzivýsledkov získaných v
procesore. Zaradením vyrovnávacej pamäte medzi hlavnú pamäť a procesor dôjde ku
značnému zrýchleniu. Vo vyrovnávacej pamäti sú uložené duplikáty obsahu niektorých
vybraných miest hlavnej pamäti. Adresy týchto miest sú zapísané v adresári a podľa toho
môžeme veľmi ľahko zistiť, či sa hľadaná informácia nachádza vo vyrovnávacej pamäti. Ak
hľadaná adresa nie je v adresári vyrovnávacej pamäti, ale je v adresári hlavnej pamäti, údaje
sú z nej načítané do procesora a súčasne aj do vyrovnávacej pamäte.
Okrem toho sa z hlavnej pamäte presúva do vyrovnávacej pamäte aj niekoľko
susedných adries, čiže sa prenášajú po blokoch. Ich veľkosť sa pohybuje v rozmedzí 8 až 128
B.
V trojúrovňovom systéme je hlavná pamäť vlastne vyrovnávacou pamäťou pre
sekundárnu pamäť, teda obsahuje len časť údajov sekundárnej pamäte a opäť sa jedná o
duplicity. Medzi sekundárnou a hlavnou pamäťou sa údaje prenášajú po tzv. stránkach,
ktorých veľkosť býva 1 až 4 kB.
Stratégia prenosu informácií medzi jednotlivými úrovňami má rozhodujúci význam
pre výkon celého systému. Hlavnou úlohou je minimalizovať neúspešné pokusy pri
vyhľadávaní informácií v pamäti nižšej úrovne, stanoviť optimálnu veľkosť blokov a stránok
a zabezpečiť zhodnosť údajov na rovnakých adresách jednotlivých úrovní.
S tra na 56
Elektronické počítačové systémy
4.2. Vyrovnávacia pamäť
Postavenie vyrovnávacej pamäte v rámci pamäťového systému bolo stručne popísané v
predchádzajúcich odstavcoch. Najjednoduchší spôsob prepojenia vyrovnávacej pamäte a jej
adresára je znázornený na obrázku 4.3.
Adresa
Prízna
ky
Údaje
Adresa slova
v HP
(18 b)
Adresár VP (1024
slov)
HP
VP
1024
vodičov
Hľadaná
adresa
(32 b)
VP (1024
slov)
...... hlavná pamäť
...... vyrovnávacia
4.3. Vyrovnávacia pamäť s plne asociatívnym adresovaním
Kapacita vyrovnávacej pamäte uvedeného príkladu je 1024 slov a jedno slovo má
dĺžku 32 bitov, čo je súčasne aj blok presunu údajov medzi hlavnou a vyrovnávacou pamäťou.
Adresár má tiež kapacitu 1024 slov, takže adresa slova sa zapisuje v adresári vždy do
rovnakého riadku, ako sa vo vyrovnávacej pamäti zapisuje slovo z hlavnej pamäti.
Hľadanie adries sa uskutočňuje asociatívne, čiže adresár je realizovaný ako pamäť
adresovaná obsahom, t.j. asociatívna pamäť. Okrem zhody adries sa kontroluje aj platnosť
príznaku. Pre vyrovnávaciu pamäť nie je možný iný spôsob adresovania než pomocou
špeciálnej pamäte adries, preto musí mať adresár vždy rovnaký počet adries ako vyrovnávacia
pamäť.
Strana 57
4.2.1. Konštrukcia adresára a vyrovnávacej pamäte
Hľadanie adries prebieha tak, že obsah jednotlivých pamäťových miest adresára sa
porovnáva s hľadanou adresou, v prípade zhody sa generuje signál určujúci poradové číslo
linky adresára, kde bola nájdená adresa - pamäť je plne asociatívna (adresa môže byť na
ľubovolnom mieste). Pre realizáciu vyrovnávacej pamäte sa preto nedajú použiť pamäťové
obvody RAM, ale sa musia vyrábať špeciálne integrované obvody obsahujúce vyrovnávaciu
pamäť aj adresár vyrovnávacej pamäte. Tieto sú veľmi drahé a ich kapacita je pomerne malá.
Preto sa vyvinuli vyrovnávacie pamäte umožňujúce jednoduchým spôsobom využívať
pamäťové obvody RAM, no s obmedzeným stupňom asociativity.
Stupeň asociativity s označuje počet miest v pamäti, na ktorých sa môže nachádzať
hľadaná informácia. Obmedzený stupeň asociativity ohraničuje pre každú informáciu len
určitý úsek pamäte (segment, sada), kde môže byť táto informácia zapísaná.
Adresár so stupňom asociativity s je možné realizovať pomocou s modulov pamäte
RAM, ku ktorým sa pripojí pole ekvivalencie pre s adries.
Pri hľadaní určitej adresy sa v adresári prečíta súčasne všetkých s adresy a v
porovnávacích obvodoch sa porovnávajú s hľadanou adresou. Ak dôjde ku zhode generuje sa
signál určujúci pozíciu hľadaných údajov v segmente. V rámci urýchlenia sa súčasne s
adresami načítajú aj údaje daného segmentu vyrovnávacej pamäte. Aby mohla vyrovnávacia
pamäť využívať obmedzený stupeň asociativity, musí byť k tomu prispôsobená aj hlavná
pamäť. Vyrovnávacia pamäť je rozdelená do segmentov a ako trieda sa označuje skupina slov
hlavnej pamäte, z ktorých každé môže byť vybrané pre zápis do toho istého segmentu vo
vyrovnávacej pamäti. Triedy sú navzájom disjunktné (ich prienik je prázdna množina) a
segmenty vo vyrovnávacej pamäti sú im jednoznačne priradené. V určitom okamžiku môže
byť maximálne s slov z jednej triedy hlavnej pamäte zapísaných do vyrovnávacej pamäte,
preto je dôležité správne rozdelenie hlavnej pamäte na triedy. Susedné adresy hlavnej pamäte
by mali patriť do rôznych tried.
Jedna z možností adresácie 20 bitovej adresy s ohľadom na predchádzajúce
požiadavky je nasledovná:
Adresa slova v triede 10 bitov
Číslo triedy - 8
bitov
2
bity
Poloha
slabiky
l
S tra na 58
v
Elektronické počítačové systémy
Umiestnenie čísla triedy do dolnej polovice adresy je zámerné a umožňuje
rovnomerné rozdelenie slov jednej triedy v celej pamäti.
Číslo triedy
8
HP: 256Kx32
Adresár VP
256x4x10 b
DC
DC
AST
Adresa
slova
10
8
AST
AST
Vyrovnávacia
pamäť
256x4x32 b
AST
10
10
10
10
=
=
=
=
1 segment
(údaje)
32
32
32
.
.
.
32
MPX
Signály
zhody
Legenda
:
........
adresové
jednej triedy
32
Prečítané
údaje
miesta
4.4. Vyrovnávacia pamäť a jej adresár so stupňom asociativity s=4
Strana 59
4.2.2. Stratégia výmeny údajov medzi hlavnou a
vyrovnávacou pamäťou
Vyrovnávacia pamäť obsahuje duplikáty len malej časti pamäťových miest hlavnej
pamäte a preto je dôležité stanoviť optimálnu metódu pre výber týchto miest. Neúspešný
pokus o vyhľadanie adresy vo vyrovnávacej pamäti sa označuje ako výpadok bloku. Pomer
počtu výpadkov bloku k celkovému počtu pokusov sa označuje ako súčiniteľ výpadku
bloku - SVB.
Hodnota SVB je závislá na rôznych parametroch. Jedna z dôležitých závislostí je
časová. Na začiatku je vyrovnávacia pamäť prázdna takže SVB je rovné 1 a s rastúcim časom
jeho hodnota klesá až sa ustáli (asi po 105 prístupoch) na približne konštantnú hodnotu.
Po ustálení SVB je jeho hodnota závislá na veľkosti bloku, stupňa asociativity,
kapacite vyrovnávacej pamäte, algoritme výmeny údajov medzi hlavnou a vyrovnávacou
pamäťou a samozrejme na povahe riešenej úlohy.
0,35
Veľkosť bloku = 8 B
Kapacita VP = 4 kB
S=2
SVB
0,3
0,25
0,2
0,15
0,1
0,05
0
0
3*10E+2
3*10E+3
3*10E+4
3*10E+5
Počet prístupov
4.5. Závislosť SVB na počte prístupov do pamäti
SVB
0,3
S=1
0,25
2KB
4KB
0,2
8KB
0,15
0,1
0,05
0
0
4
8
16
Veľkosť bloku [B]
4.6. Závislosť SVB na veľkosti bloku a kapacite VP
Akonáhle sa naplní celý segment vyrovnávacej pamäte, je nutné rozhodnúť, ktorý blok
má uvolniť miesto pre nový blok z hlavnej pamäte. Najpoužívanejší algoritmus na určenie
nepotrebného bloku je LRU (Least Recently Used = najdlhšie nepoužívaný). Jeho realizácia
S tra na 60
Elektronické počítačové systémy
spočíva v implementácii čítača ku každému bloku, ktorý sa nuluje pri každom volaní daného
bloku a inkrementuje ak je volaný každý iný blok. V prípade potreby sa vyradí ten blok, v
ktorého čítači je najvyššia hodnota. Čítače sú umiestnené v adresári vyrovnávacej pamäte v
poli označovanom príznaky. Nevýhoda tohto riešenia spočíva v tom, že ak sa jeden blok volá
opakovane, hodnoty čítačov ostatných blokov sa naplnia na maximum a nie je možné určiť,
ktorý z nich má byť vyradený. V takom prípade sa používa pomocné kritérium (napr.
poradové číslo).
Okrem LRU je možné použiť jednoduchší algoritmus označovaný FIFO (First In First Out), ktorý vyradí vždy ten blok, ktorý je vo vyrovnávacej pamäti najdlhšie. K jeho
realizácii je možné použiť jeden čítač modulo s pre každý segment. Obrat tohoto čítača, ktorý
sa zvyšuje pri každom zápise do daného segmentu, potom určuje číslo bloku, ktorý má byť
vyradený.
Zvýšenie hodnoty SVB, ku ktorej dôjde v dôsledku použitia zjednodušujúcich
algoritmov, je pomerne malé a preto sa v niektorých systémoch s výhodou používa
pseudonáhodný výber blokov na vyradenie.
4.2.3. Zabezpečenie zhodnosti údajov medzi hlavnou a
vyrovnávacou pamäťou
Vzhľadom k existencii rovnakých adries v rôznych úrovniach pamäťového systému
vzniká nebezpečie, že na každej z nich bude zapísaná iná informácia.
Ku zmene obsahu hlavnej pamäte dochádza predovšetkým pri načítaní nových údajov
zo sekundárnej pamäte. V takom prípade sa kontroluje či príslušná adresa nie je načítaná aj
vo vyrovnávacej pamäti. Ak áno, dôjde k vynulovaniu príznaku platnosti a tým procesor
pozná, že údaje vo vyrovnávacej pamäti príslušnej adresy musí znovu načítať z hlavnej
pamäte. Druhou možnou príčinou nezhody je zápis nových údajov do vyrovnávacej pamäte.
Pre zabezpečenie zhodnosti údajov sa najviac používajú tieto metódy:
1. Súčasný zápis do vyrovnávacej aj hlavnej pamäte - používa sa vtedy, ak je treba
zabezpečiť zhodu údajov v obidvoch pamätiach v ľubovoľnom okamžiku. Jej
nevýhodou je spomalenie činnosti v prípade, že po aplikácii zápisu do hlavnej
pamäte nasleduje ďalšia operácia, ktorá pracuje s hlavnou pamäťou. Inak môže
procesor pracovať samostatne v dobe, keď sa dokončuje cyklus v hlavnej pamäti.
2. Zápis pri každej výmene - akonáhle má byť ľubovolný blok vo vyrovnávacej
pamäti prepísaný novým, pôvodný sa bez ohľadu na to, či je to nutné alebo nie,
zapíše do hlavnej pamäte. Tento postup je veľmi jednoduchý no pomerne pomalý.
3. Zápis podľa príznaku - blok, ktorý má byť prepísaný novým blokom sa zapisuje
do hlavnej pamäte iba vtedy ak má nastavený príznak na jednotku. Príznak sa
nastaví na jednotku pri zápise do daného bloku vyrovnávacej pamäte a vynuluje sa
pri prepise novým blokom. Tento algoritmus je pomerne rýchlejší než
predchádzajúce dva, nakoľko počet zmenených blokov je približne 25% z
celkového počtu blokov.
4. Zápis podľa príznaku cez register - v prípade, že príznak zmeny je nastavený na
jednotku, vyraďovaný blok sa najprv presunie do vyrovnávacieho registra vo
vyrovnávacej pamäti, potom sa z hlavnej pamäte prečíta nový blok a presunie sa
do vyrovnávacej pamäti a následne sa vyradený blok presunie z registra
Strana 61
vyrovnávacej pamäte do hlavnej pamäte. Tento spôsob je najrýchlejší, ale
vyžaduje najdokonalejšie riadenie.
Uvedené metódy vystačia len pri jednoprocesorových systémoch (až na prvú metódu).
Problémy vznikajú pri multiprocesorových systémoch, kde sa rovnaká adresa nachádza v
hlavnej pamäti a aj v jednotlivých vyrovnávacích pamätiach prislúchajúcich k procesorom, a
preto nestačí zabezpečiť zhodu len medzi hlavnou a vyrovnávacou pamäťou, ale aj medzi
jednotlivými vyrovnávacími pamäťami procesorov pracujúcich s rovnakými údajmi. Obvykle
sa prepojujú špeciálnym vedením umožňujúcim prenášať zmeny rovno do ostatných
vyrovnávacích pamätí alebo aspoň v nich zrušiť platnosť bloku, ktorý bol zmenený.
Ďalším problémom je využitie vyrovnávacej pamäte pri multiprogramovom režime
jedného procesoru. Pri výmene progamov je potrebných až 105 prístupov pre ustálenie
hodnoty SVB. Pre niektoré typy úlohy je však charakteristické, že k výmene úlohy dochádza
už po 3000 až 6000 prístupoch do pamäte. V takom prípade je účelné použiť väčšiu
vyrovnávaciu pamäť, v ktorej sa budú uchovávať bloky všetkých úloh, ktoré boli spustené a to
a aj v prípade, že práve je riešená len jedna z nich a ostatné sú v stave prerušenia.
4.3. Virtuálna pamäť
Vo výkonnejších pamäťových systémoch je obvykle adresový priestor (počet rôznych
adries, ktoré je procesor schopný volať - generovať) podstatne väčší než objem hlavnej
pamäte. Čiže v určitom okamžiku sa zo všetkých adries, ktoré môže volať procesor nachádza
v hlavnej pamäti len určitý zlomok.
Jedna možnosť riešenia tohto rozdielu je zakázať používanie adries presahujúcich
adresový priestor hlavnej pamäte. Dodnes sa táto metóda používa v jednoduchý
minipočítačoch.
Druhá možnosť riešenia je použitie tzv. virtuálnej (myslenej) pamäte, ktorú používateľ
môže priamo adresovať akoby to bola hlavná pamäť, ale ktorá v skutočnosti ako pamäť
priamo prístupná procesoru neexistuje. Hlavná pamäť sa adresuje pomocou tzv. reálnych
adries, ktoré sa získavajú prekladom virtuálnych adries. Oddelenie virtuálnych adries
vysielaných procesorom od reálnych, prichádzajúcich na vstup hlavnej pamäte, umožňuje tiež
realizovať dynamické prideľovanie pracovnej oblasti v hlavnej pamäti jednotlivým procesom.
Preklad virtuálnej adresy na reálnu sa vykonáva pomocou tabuľky uloženej v
pomocnej pamäti. V snahe po minimalizácii tejto tabuľky sa adresa delí na dve časti, pričom
iba jedna časť sa prekladá a druhá zostáva pri preklade nezmenená (obr. 4.7.).
Virtuálna adresa
Adresa stránky vo vonkajšej
pamäti
12 bitov
Adresa slabiky v stránke
12 bitov
Reálna adresa
Adresa stránky
v hlavnej pamäti
8 bitov
Adresa slabiky v stránke
12 bitov
S tra na 62
Elektronické počítačové systémy
4.7. Vzťah virtuálnej a reálnej adresy
V príklade na obrázku 4.7. adresový priestor procesora má veľkosť 224 slabík a hlavná
pamäť má kapacitu 220 slabík, takže v určitom okamžiku môže byť v hlavnej pamäti len 1/16
miest adresovateľných procesorom. Prenos medzi hlavnou a vonkajšou pamäťou sa
uskutočňuje v súvislých blokoch označovaných stránky. Ich veľkosť býva v rozmedzí 1 kB až
8 kB.
4.3.1. Adresár hlavnej pamäte
Preklad virtuálnej adresy na reálnu sa realizuje tak, že virtuálna adresa stránky sa
vyhľadá v adresári HP a nahradí sa reálnou adresou tej istej stránky. Takýto adresár je uložený
v hlavnej pamäti a jeho prehľadávanie realizuje príslušný mikroprogram. No takýto preklad je
pomerne pomalý, nakoľko si vyžaduje obvykle dve čítania v hlavnej pamäti.
V rámci urýchlenia prekladu sa používa pre adresovanie hlavnej pamäte adresár
realizovaný ako asociatívna pamäť. Pretože však počet stránok v hlavnej pamäti býva značne
veľký, používa sa asociatívna pamäť umiestnená v procesore iba pre adresovanie malého
počtu stránok hlavnej pamäte. Do asociatívnej pamäte sa potom zapisujú len adresy tých
stránok, s ktorými procesor najčastejšie spolupracuje. Znamená to teda, že kópie najčastejšie
používaných stránok sa prenesú zo sekundárnej do hlavnej pamäte a iba adresy niektorých
najfrekventovanejších sa zapíšu do asociatívnej pamäte.
Štruktúra slova umiestneného v adresári hlavnej pamäte je na obrázku 4.8. Pri hľadaní
v hlavnej pamäti sa najskôr porovnáva hľadaná adresa s virtuálnou adresou a v prípade zhody
sa kontroluje platnosť adresy a oprávnenosť prístupu (na základe vyhodnotenia kľúča). Ak
skončia všetky kontroly úspešne, prečíta sa reálna adresa stránky a dosadí sa za virtuálnu
adresu. V slove môžu byť zapísané ďalšie informácie, používané pri výmene stránok, napr.
príznak zmeny prevedenej v stránke počas jej pobytu v hlavnej pamäti alebo príznak aktivity
stránky pre algoritmus LRU.
Virtuálna adresa
Bit platnosti K¾
úè ochrany Reálna adresa Zmena
stránky
LRU
4.8. Štruktúra slova adresára v hlavnej pamäti
Ak hľadanie v asociatívnej pamäti skončí neúspechom, spustí sa algoritmus
používajúci úplný adresár uložený v hlavnej pamäti. Jeho výsledkom je buď nájdenie reálnej
adresy stránky alebo zistenie, že reálna adresa nie je v hlavnej pamäti. V takom prípade dôjde
k prerušeniu, počas ktorého sa hľadaná stránka presunie zo sekundárnej do hlavnej pamäte.
Pre realizáciu asociatívnej pamäte sa môže použiť aj pamäť s obmedzeným stupňom
asociativity podobne ako vo vyrovnávacích pamätiach.
Strana 63
4.3.2. Stratégia presunu stránok medzi hlavnou a
sekundárnou pamäťou
Neúspešný pokus o nájdenie stránky v hlavnej pamäti sa označuje ako výpadok
stránky, čo samozrejme znamená stratu času. Pomer počtu stránok k celkovému počtu
prístupov sa označuje ako súčiniteľ výpadku stránky - SVS a závisí hlavne na veľkosti
stránky, veľkosti hlavnej pamäti a aj na vlastnostiach programu.
Hodnota SVS sa s rastúcim objemom hlavnej pamäti zmenšuje, pretože vo väčšej
pamäti sa stránky menej často navzájom vytláčajú. Minimálna hodnota, na ktorej sa ustáli
SVS pre značne veľký objem hlavnej pamäti, je určená počtom nových stránok nutných pre
spustenie úlohy. Tento počet je tým menší, čím väčšia je stránka. Naopak pri menšom objeme
hlavnej pamäti je hodnota SVS nižšia pre menšie stránky, pretože ak máme možnosť
manipulovať s menšími celkami, využijeme pamäť efektívnejšie.
SVS
-2
10
-3
10
256 B
512 B
1kB
2kB
-4
10
-5
10
8k
16k
32k
64k
128k
Objem H P
priradený
úlohe
4.9. Závislosť SVS na kapacite hlavnej pamäti
Algoritmy pre určenie stránky, ktorá má byť v prípade potreby vylúčená, sú rovnaké
ako pri vyrovnávacej pamäti , t.j. LRU a FIFO. Pri uskutočňovaní dynamického prideľovania
hlavnej pamäti jednotlivým úlohám, je nutné základnú verziu algoritmu LRU čiastočne
modifikovať. Každá stránka obsahuje čítač, ktorý sa nuluje pri každom prístupe do tejto
stránky. Súčasne sa čítače všetkých ostatných stránok pridelených tejto úlohe zväčšia o
jedničku. Akonáhle obsah niektorého čítača presiahne stanovenú prahovú hodnotu, stránka je
daná k dispozícii pre vyradenie z hlavnej pamäti. Úlohy s vyššou hodnotou SVS môžu
používať rámy vyradených stránok iných úloh.
S tra na 64
Elektronické počítačové systémy
4.4. Zabezpečenie pamäťových systémov proti poruchám
V dôsledku neustáleho narastania kapacity pamäte, dochádza k väčšiemu výskytu
chýb, ktoré môžu značne ochromiť celý pamäťový systém.
Minimálnou požiadavkou pamäťových systémov je detekcia chýb, vzniknutých počas
uloženia informácií, no z časového hľadiska je výhodné, aby systém dokázal zistenú chybu
opraviť.
4.4.1. Bezpečnostné kódy
Kód je predpis, ktorý prvkom jednej množiny jednoznačne priraďuje prvky druhej
množiny. Jednotlivým znakom množín hovoríme kódové slová. Počet symbolov v jednom
slove sa nazýva dĺžka kódových slov. Pri použití binárnej sústavy počet jednotiek v kódovom
slove sa označuje ako váha kódového slova.
Kódová vzdialenosť dvoch kódových slov je počet bitov, v ktorých sa tieto dve slová
líšia a minimálna kódová vzdialenosť určitého kódu predstavuje minimum všetkých kódových
vzdialeností - dmin.
Kódy s väčšou dmin ako jedna sú označované ako bezpečnostné.
Bezpečnostné kódy z hľadiska reakcie na chybu delíme na detekčné a samoopravné.
Detekčná vlastnosť sa vyjadruje počtom pd súčasne sa vyskytujúcich chýb, ktoré je kód
schopný detekovať. Detekcia je založená na tom, že nekódové slovo, vzniknuté v dôsledku
chyby, sa svojimi vlastnosťami odlišuje od ostatných kódových slov. Kódová vzdialenosť
nutná pre detekciu pd chýb je
dmin > pd + 1
Kódová vzdialenosť nutná pre opravu po chýb je
dmin > 2po + 1
Ak vznikne viac než pd chýb súčasne, nemusí sa vytvoriť nekódové slovo a ak vznikne
viac než po chýb, budú opravené nesprávne. Z praktického hľadiska majú najväčší význam
také kódy, ktoré sú schopné rozlišovať medzi opraviteľnými a neopraviteľnými chybami.
Pre kód schopný opraviť po chýb a súčasne detekovať pd chýb platí
dmin > po + pd + 1
Teda ak vznikne v kódovom slove maximálne po chýb, budú všetky opravené. Ak
vznikne viac než po , ale nie viac než pd chýb, budú všetky detekované, ale žiadna z nich
nebude opravená. Ak vznikne viac než pd chýb, ale nie viac než pd + po chýb, budú tieto chyby
opravené nesprávne.
Základnou vlastnosťou všetkých kódov je redundancia - nadbytočnosť, pretože tá je
nutnou podmienkou detekcie a lokalizácie a z nej vyplývajúcej opravy chýb.
Strana 65
4.4.2. Parita
Najslabším a najjednoduchším spôsobom zabezpečenia informácií je parita. V podstate
sa jedná o sčítanie jednotlivých bitov kódového slova A = [an + an-1 +...+ a1 + a0] modulo 2
P(A) = [an + an-1 +...+ a1 + a0] mod 2
Súčet modulo 2 je pre binárne kódy totožný s nonekvivalenciou, čo je výhodné pri
realizácii logickým obvodom.
Parita popísaná predchádzajúcim vzorcom sa nazýva párna, nakoľko po pridaní
paritného bitu ku kódovanej informácii je celkový počet jedničiek v kódovom slove vždy
párny. Nepárna parita je vlastne ekvivalentnou negáciou paritného bitu
P(A) = [an + an-1 +...+ a1 + a0] mod 2
Aby bolo možné pomocou parity zabezpečiť opravu jednej chyby, používa sa pri
sériovo paralelnom prenose kombinácia pozdĺžnej a priečnej parity. Súradnice bitu, ktorý má
byť opravený, je určený polohou chybného paritného bitu priečnej a pozdĺžnej parity.
4.4.3. Lineárne kódy
Množina A slov dĺžky n sa nazýva lineárnym kódom, ak tvorí lineárnu podmnožinu
množiny všetkých slov dĺžky n. O lineárnej podmnožine hovoríme vtedy, ak lineárnou
kombináciou ľubovoľného počtu kódových slov (sčítanie odpovedajúcich bitov modulo 2)
vznikne opäť kódové slovo. Na generovanie jednotlivých kódových slov sa využíva tzv.
generujúca matica. Lineárne kódy majú veľmi výhodné vlastnosti z hľadiska detekcie a
opravy chýb.
4.4.4. Cyklické kódy
Osobitnú triedu lineárnych kódov vytvárajú cyklické kódy, ktoré sa môžu obecne
charakterizovať tak, že cyklickým posunom každého kódového slova o ľubovolný počet miest
vznikne opäť kódové slovo.
Pôvodné kódové slovo sa môže formálne reprezentovať:
a = ( an-1, an-2, an-3, . . . . , a1, a0 )
Po posune o jedno miesto doľava bude:
a = ( an-2, an-3, . . . . , a1, a0, an-1 )
Z primárnej vlastnosti týchto kódov - cykličnosti - sa môžu odvodiť ďalšie dôležité
vlastnosti, ktoré sa dajú využiť pri zostavovaní vlastného kódu.
Každé n-bitové slovo môže byť reprezentované kódovým mnohočlenom A(x) so
stupňom najviac n - 1,
A(x) = an-1xn-1 + an-2xn-2 + an-3xn-3 + . . . . + a1x + a0
Pre generovanie jednotlivých kódových mnohočlenov A(x) cyklického kódu (n,k) sa
využíva tzv. generujúci mnohočlen G(x),
G(x) = gn-kxn-k + gn-k-1xn-k-1 + gn-k-2xn-k-2 + . . . . + g1x + g0 ,
ktorého stupeň môže byť maximálne n-k, pričom k je dĺžka informácie, ktorú chceme
kódovať. Každý kódový mnohočlen A(x) je násobkom generujúceho mnohočlena G(x)
A(x) = M(x) . G(x) = (mk-1xk-1 + mk-2xk-2 + . . . . + m1x + m0) . G(x)
S tra na 66
Elektronické počítačové systémy
Ako koeficienty (mk-1, mk-2, . . . . m1, m0 ) sa používajú číslice informačného slova,
ktoré má byť kódované. Cyklický kód generovaný týmto spôsobom je tzv. nesystematický,
nakoľko v zakódovanom slove A(x) nie je žiadna skupina znakov, ktorá by sa zhodovala s
kódovanou informáciou m.
Aby sa generoval systematický cyklický kód, pridáva sa k informácii m určenej pre
zakódovanie kontrolný znak, získaný delením generujúcim mnohočlenom G(x). Mnohočlen
M(x) sa najskôr posunie o n-k miest doľava, čo je vlastne vynásobenie členom xn-k . Potom sa
vydelí mnohočlenom G(x), čím vznikne zvyšok R(x)
xn-k . M(x) = Q(x) . G(x) + R(x)
a z toho vyplýva
xn-k . M(x) + R(x) = Q(x) . G(x)
Tým je vytvorený predpis, podľa ktorého sú kódové slová cyklického kódu, ktorých
mnohočleny A(x) sú násobkami G(x), generované pripojením zvyšku po delení generujúcim
mnohočlenom k informačným bitom.
Príklad
Je daný generujúci mnohočlen G(x) = x3 + x + 1. Generujte systematický cyklický kód
(7,4) pre tieto štvorbitové informácie:
a) m = (1000)
b) m =(1110)
c) m = (0101)
Riešenie:
n = 7, k = 4, n - k = 3, G(x) = x3 + x + 1
a)
m = (1 0 0 0) , tomu zodpovedá mnohočlen M(x) = x3
uskutočníme presun o n - k miest doľava x3 . M(x) = x3 . x3 = x6
získaný mnohočlen budeme deliť mnohočlenom G(x), čím dostaneme
zvyšok R(x)
x6 : ( x3 + x + 1) = x3 + x + 1
x6 + x4 + x3
x4 + x2 + x
x3 + x2 + x
x3 + x + 1
x2 + 1 = R(x) a z toho r = 1 0 1
Zakódované slovo má tvar m = (1000101)
b)
m = (1 1 1 1) , tomu zodpovedá mnohočlen M(x) = x3 + x2 + x
prevedieme presun o n - k miest doľava
Strana 67
x3 . M(x) = x3 . (x3 + x2 + x) = x6 + x5 + x4
získaný mnohočlen budeme deliť mnohočlenom G(x), čím dostaneme
zvyšok R(x)
x6 + x5 + x4: ( x3 + x + 1) = x3 + x2
x6 + x4 + x3
x5 + x3
x5 + x3 + x2
x2 = R(x) a z toho r = 1 0 0
Zakódované slovo má tvar m = (1110100)
c)
m = (0 1 0 1) , tomu zodpovedá mnohočlen M(x) = x2 + 1
uskutočníme presun o n - k miest doľava
x3 . M(x) = x3 . (x2 + 1) = x5 + x3
získaný mnohočlen budeme deliť mnohočlenom G(x), čím dostaneme
zvyšok R(x)
x5 + x3: ( x3 + x + 1) = x2
x5 + x3 + x2
x2 = R(x) a z toho r = 1 0 0
Zakódované slovo má tvar m = (0101100)
Ochrana pamäťového podsystému má významnú úlohu pri minimalizácii chýb
vzniknutých pri prenose, ale hlavne pri úschove informácii.
V predchádzajúcich kapitolách bolo uvádzaných niekoľko bezpečnostných kódov, z
ktorých každý je vhodný pre iný druh pamäti. Lineárne kódy sa používajú pre zabezpečenie
hlavnej pamäte a cyklické kódy sa používajú hlavne pre zabezpečenie údajov uložených na
vonkajších pamätiach, jednak aj preto, že na kódovanie a dekódovanie je možné použiť veľmi
jednoduché obvody, ktorých spôsob činnosti vyhovuje sériovému zápisu a čítaniu údajov na
vonkajších pamätiach.
Obecne môžeme povedať, že rozhodujúcim faktorom pre výber bezpečnostného kódu
je rýchlosť zápisu a čítania údajov. Ak je tento čas pomerne veľký, je vhodný kód, ktorý
dokáže opraviť aj pomerne veľkú chybu . U rýchlych pamätí je dôležité, aby chyba bola
detekovaná a pred samoopravou sa volí radšej opätovné načítanie údajov.
S tra na 68
Elektronické počítačové systémy
5. Procesorové systémy
Procesorový podsystém predstavuje primárnu časť celého počítačového systému ako
celku a preto môže výrazne ovplyvniť jeho celkovú výkonnosť. To je hlavný dôvod prečo sa
neustále vynakladajú nemalé prostriedky na nikdy nekončiaci vývoj procesorov. Pri ich
modifikácii sa vedci uberajú mnohými smermi - prúdové spracovanie, redukcia súboru
inštrukcií a napokon paralelné systémy.
5.1. Prúdové spracovanie informácií
Štruktúra počítačov na ľubovoľnej úrovni je tvorená určitým počtom funkčných
jednotiek, určených na prevádzanie rozdielnych činností. Počas spracovávania bežného
programu sa postupne aktivizujú jednotlivé jednotky, čím sú však využívané veľmi
neefektívne. Snaha po čo najlepšom využití jednotiek vedie k princípu súčasnej činnosti
viacerých jednotiek, čo je základom tzv. prúdového spracovania informácií (pipeline).
Princíp prúdového spracovania informácií je znázornený na obrázku 5.1.
F
Vstup
S1
S2
S3
Výstup
5.1. Prúdovo pracujúca jednotka
Funkčná jednotka F je rozdelená do troch sekcií S1, S2 a S3, ktoré na seba tesne
naväzujú. Každý operand je privedený na vstup sekcie S1, po dobe T je medzivýsledok
predaný k ďalšiemu spracovaniu do sekcie S2 a následne opäť po dobe T sa predáva sekcii S3.
Po uplynutí času 3T od vstupu operandu do jednotky sa na výstupe objaví výsledok, medzitým
však sekcie S1 a S2 už spracovávajú ďalšie operandy. Časové prekrytie funkcií sekcií
jedntoky F pracujúcej prúdovo je znázornené nasledujúcou tabuľkou
S1
S2
S3
t
1
2t
2
1
3t
4t
3
4
2
3
1
2
5.2. Časová postupnosť spracovania
5t
5
4
3
Dôležité je zabezpečiť rovnakú časovú dĺžku spracovávania v každej sekcii. Obecne
prúdovo pracujúca jednotka nedokáže zrýchliť dobu spracovávania jedného operandu, avšak
umožňuje dosiahnuť veľkého výkonu tým, že za jednotku času dokáže spracovať veľký počet
výsledkov, teda má vysokú priepustnosť.
Prvé významnejšie použitie prúdového spracovania sa využilo v počítači IBM 7094
(rok 1962), kde sa použilo v pamäti s prekladaným cyklom. Prekladanie cyklu pamäti malo za
úlohu prispôsobiť rýchlosť pamäti požiadavkám procesora, ktorého cyklus bol v tej dobe asi
Strana 69
4x rýchlejší. Aby sa tento nepomer odstránil, bola hlavná pamäť rozdelená do štyroch blokov,
pracujúcich samostatne a schopných samostatne vykonávať čítací a zapisovací cyklus.
5.1.1. Prúdové spracovanie programu
Dôvod zavádzania prúdového spracovávania informácií je v možnosti rozdelenia
každej inštrukcie na niekoľko štandardných úkonov, ktoré sa môžu prevádzať nezávisle:
· výber inštrukcie z pamäti
· dekódovanie inštrukcie
· výpočet reálnej adresy
· výber 1. operandu z pamäti
· výber 2. operandu z registra
· vykonanie operácie
· uloženie výsledku do registra
· zakončenie operácie
Ak sa bude takáto inštrukcia vykonávať v počítači, ktorý nebol špeciálne navrhnutý
pre prúdové spracovanie, každý úkon prevádzaný v procesore obsadí celý procesor a podobne
každý úkon prevádzaný v hlavnej pamäti znemožní akúkoľvek inú činnosť hlavnej pamäte.
Postupnosť prevádzania jednotlivých úkonov v hlavnej pamäti a procesore je možné
znázorniť pomocou tabuľky na obrázku 5.3.
Pamäť
Procesor
1 1 1 1 1
1 1 1 1
1 1 1 1 1
1 1 1 1 1 1
5.3. Obsadenie hlavnej pamäte a procesora počas vykonávania jednej inštrukcie
Predpokladajme, že každý prístup do pamäte trvá rovnako dlho, a to 5 cyklov
procesora a že na výpočet efektívnej adresy potrebuje procesor 4 cykly a na vlastnú operáciu 6
cyklov, takže každá inštrukcia sa vykoná v 20 cykloch procesora. Z obrázku 5.3. je zrejmé, že
využitie pamäte aj procesora je 50 percentné.
Skutočnosť, že v prvých piatich cykloch uskutočňovania inštrukcie je obsadená iba
pamäť, zatiaľ čo procesor je voľný, umožňuje prekryť koniec predchádzajúcej inštrukcie so
začiatkom nasledujúcej. Takéto prekrytie znázorňuje obrázok 5.4., kde do každého políčka je
zapísané číslo tej inštrukcie, ktorá sa práve vykonáva.
Pamäť 1 1 1 1 1
1111122222
222223
Procesor
1111
1111112222
2
5.4. Jednoduché prekrytie inštrukcií
Vyššie spomínaným spôsobom sa zvýšilo využitie pamäte aj procesora na 66,6 % a
doba vykonávania jednej inštrukcie sa skrátila na 15 cyklov. Tento konkrétny príklad však
vychádza z rady zjednodušujúcich predpokladov. Ak by v závere inštrukcie došlo k zápisu
výsledku do pamäte, nebolo by možné načítavať súčasne ďalšiu inštrukciu, preto sa načítanie
novej inštrukcie vykoná ešte pred zápisom výsledku predchádzajúcej inštrukcie.
Ďalším faktorom, ktorý môže výrazne ovplyvniť prúdové spracovanie, je inštrukcia
skoku. V prípade podmieneného aj nepodmieneného skoku je treba počítať s možnosťou, že
skutočná adresa, s ktorou má program vyberať nasledujúce inštrukcie, bude vypočítaná až v
závere vykonávania predchádzajúcej inštrukcie. Aby prúdové spracovanie malo svoj význam,
S tra na 70
Elektronické počítačové systémy
musia sa načítané inštrukcie dodatočne kontrolovať, či aj po výpočte adresy zostávajú v
platnosti. Pokiaľ áno, môže sa pokračovať s dekódovaním, ak nie, musí sa táto inštrukcia
zanedbať a vykonať nové načítanie podľa správne vypočítanej adresy. Spôsob riešenia
predchádzajúcich problémov je rozdelenie procesora do niekoľkých samostatne pracujúcich
sekcií, pracujúcich prúdovo. Najjednoduchšie je rozdelenie do dvoch sekcií:
Inštrukčná jednotka (instruction unit)
Výkonná jednotka (execution unit)
Inštrukčná jednotka bude vždy prevádzať minimálne načítanie inštrukcie a výkonná
jednotka minimálne vykonanie inštrukcie. Úkony prevádzajúce sa medzi načítaním a
vykonaním inštrukcie (t.j. dekódovanie inštrukcie, výpočet reálnej adresy, výber 1. operandu z
pamäti, výber 2. operandu z registra) môžu byť rozdelené medzi inštrukčnou a výkonnou
jednotkou v závislosti na výhodnosti. Používajú sa rôzne spôsoby rozmiestnenia a každý má
svoje výhody aj nevýhody. V prípade, že je maximum úkonov sústredených do inštrukčnej
jednotky, treba zabezpečiť kontrolu hodnoty operandov, nakoľko výkonná jednotka môže
vykonať zápis do pamäti a prepísať tie operandy, ktoré už sú načítané v inštrukčnej jednotke .
Preto sa dáva niekedy prednosť takému riešeniu, že inštrukčnej a výkonnej jednotke
predradíme jednotku styku s hlavnou pamäťou, ktorá vykonáva každý prístup do pamäte a tým
kontroluje prípadné zmeny už načítaných operandov (obrázok 5.5.)
HP
HP
Jednotka I
Jednotka
styku s HP
Jednotka I
Jednotka E
Jednotka E
Legenda:
Jednotka I
jednotka
Jednotka E
HP
..
inštrukčná
..
výkonná jednotka
hl
á
äť
5.5. Prúdové spracovanie inštrukcie
Ďalším problémom je rôzna rýchlosť jednotiek, napríklad inštrukčná jednotka bude
vyhodnocovanie podmieneného skoku vykonávať podstatne dlhšie než spracovanie inštrukcie,
ktorá nepoužíva žiadny operand. Aby sa výkyvy v rýchlostiach vyrovnali, vkladá sa medzi
Strana 71
inštrukčnú a výkonnú jednotku pamäťová fronta, obsah ktorej závisí od rozloženia
jednotlivých úkonov medzi jednotkami (obrázok 5.6.a.). Ak prevažná väčšina úkonov bude
sústredená do inštrukčnej jednotky, pomocou fronty sa budú predávať dekódované inštrukcie
spolu s operandami, ak však väčšina úkonov bude sústredená vo výkonnej jednotke, vo fronte
sa budú nachádzať len inštrukcie a načítanie operandov sa vykonáva až v tejto jednotke. Bez
ohľadu na rozdelenie úkonov medzi jednotkami je dôležité zabezpečiť vhodnú reakciu na
inštrukciu skoku.
V prípade nepodmieneného skoku môže inštrukčná jednotka
vypočítať efektívnu adresu a použiť ju pri výbere nasledujúcej inštrukcie , teda vlastne celú
inštrukciu vykoná sama. Zložitejšie je to v prípade, kedy inštrukcia nepodmieneného skoku
môže byť modifikovaná výsledkom niektorej z inštrukcií doposiaľ čakajúcich vo fronte, alebo
ak narazí inštrukčná jednotka na podmienený skok, ktorého podmienka ešte nie je vypočítaná.
V podstate sú dve možnosti riešenia. Prvé je veľmi jednoduché, no značne neefektívne a
spočíva v tom, že inštrukčná jednotka zastaví svoju činnosť a čaká na výpočet podmienok
výkonnou jednotkou, dovtedy sa však môže fronta inštrukcií úplne vyprázdniť a tým by sa
zdržalo celé spracovávanie. Druhé riešenie využíva existenciu dvoch front (obrázok 5.6.b.)
Do jednej, hlavnej fronty, vkladá inštrukčná
HP
HP
Jednotka I
Jednotka I
Fronta
inštrukcií
Fronta
inštrukcií
Jednotka E
Jednotka E
a)
Vedľajšia
fronta
inštrukcií
b)
5.6. Prúdové spracovanie inštrukcií s využitím front
jednotka inštrukcie, ktoré zodpovedajú lineárnemu vykonávaniu prevádzaniu inštrukcií. Do
druhej, podstatne kratšej fronty, vkladá inštrukcie vybrané na základe splnenia podmienky
podmieneného skoku, takže jej obsah sa potom kompletne presúva do hlavnej fronty a
inštrukčná jednotka ju začne opäť dopĺňať.
S tra na 72
Elektronické počítačové systémy
5.1.2. Príklad prúdovej architektúry procesorov INTEL
Najznámejším počítačom využívajúcim v širšej miere prúdové spracovanie je
strediskový počítač IBM 306/91 z roku 1967. Svoju popularitu získal predovšetkým
originálnym riešením niektorých konštrukčných prvkov zabezpečujúcich prúdové
spracovanie.
Klasickým predstaviteľom novodobejších mikroprocesorov, uplatňujúcich už priamo v
štruktúre prúdové spracovanie, je INTEL 8086 (r. 1978). Firma INTEL naviac publikovala aj
spôsob , akým bola zvolená architektúra procesora vybraná. Ten bude
v nasledujúcich
odstavcoch popísaný.
Východiskovým stavom bolo neprúdové (sekvenčné) spracovanie inštrukcií a s ním sa
porovnávali všetky ďalšie modifikácie založené na prúdovom spracovaní predovšetkým z
hľadiska plochy čipu a rýchlosti. Sekvenčné spracovanie je znázornené na obrázku 5.7.a.
Prvé vylepšenie predstavovalo rozdelenie procesora do dvoch sekcií, z ktorých prvá
iba vyberala inštrukcie z pamäti a druhá vykonávala všetky ostatné inštrukcie, t.j. výpočet
adresy, dekódovanie inštrukcie a vlastná operácia. Tento variant je znázornená na obrázku
5.7.b. a umožňovala jednoduché prekrytie výberu novej inštrukcie z pamäte so spracovávaním
predchádzajúcej inštrukcie.
V ďalšom vylepšení sa procesor rozdelil do troch sekcií, ktoré postupne vykonávali
výber inštrukcie, výpočet adresy a dekódovanie s vlastnou operáciou. Tieto tri
fázy sa môžu plne prekrývať, viď. obrázok 5.7.c., takže priemerná doba trvania jednej
inštrukcie sa skráti na jeden takt.
Podrobnejšie spracovanie predchádzajúceho vylepšenia však ukázalo, že rozdelenie
procesora do troch sekcií je veľmi nákladné z hľadiska plochy čipu. Preto bolo navrhnuté ešte
ďalšie vylepšenie, viď obrázok 5.7.d., ktoré v podstate predstavuje zdokonalenie prvej
varianty, kde medzi predvýber inštrukcie a jej dekódovanie bola vložená fronta inštrukcií.
Naviac je pre dekódovanie zriadená samostatná sekcia, ktorá môže pracovať nezávisle na
vlastnom vykonávaní inštrukcie.
Testovanie jednotlivých variant z hľadiska výkonu a relatívnej vyťaženosti (t.j. podiel
počtu bezporuchových čipov z celkového počtu vyrábaných) ukázalo, že v prípade 5.7.b dôjde
ku zvýšeniu výkonu o 35% pri 15% zvýšení plochy čipu. Pri variante s troma sekciami bol
dosiahnutý síce maximálny výkon, no rast plochy čipu o 90% je neúnosný, nakoľko relatívna
vyťaženosť klesá až na 20%. Ako základ pre skutočný návrh mikroprocesora bolo zvolené
posledné riešenie, ktoré predstavuje zhruba 50% prírastok rýchlosti a 20% prírastok plochy
čipu s približnou 60% relatívnou vyťaženosťou.
Dôležitým faktorom ovplyvňujúcim rýchlosť je aj dĺžka fronty. Výsledky ukázali, že
optimálna dĺžka je 6 slabík. Počet inštrukcií, ktoré sa do tejto fronty vojdú, závisí na ich type.
Inštrukcie pre INTEL 8086 majú totiž premenlivú dĺžku od 1 do 6 slabík. Štatistické merania
ukazujú, že vo fronte dĺžky 6 slabík sú priemerne 2 inštrukcie.
5.2. Procesory s redukovaným počtom inštrukcií
Jedno z dôležitých kritérií hodnotiace výkonnosť procesorov bolo do určitej doby aj
počet a množstvo rôznych typov inštrukcií. No každé rozšírenie súboru inštrukcií o nové
inštrukcie znamená buď pridať mikroprogramy, alebo špecializovať technické vybavenie,
prípadne oboje. Tým vznikali stále zložitejšie, no pomerne málo prehľadné počítače.
V dôsledku toho sa v polovici 70-tych rokov začala štúdia za účelom redukcie súboru
inštrukcií, ktorej cieľom malo byť nielen zjednodušenie počítača, ale aj zrýchliť
Strana 73
HP
Výber inštrukcie
Výpoèet adresy
Dekódovanie inštrukcie
Vykonanie operácie
I.
I.
1
1
1
2
2
2
2
a)
HP
Výber inštrukcie
I.
I.
Výpoèet adresy
Dekódovanie inštrukcie
Vykonanie operácie
II.
1
2
1
1
II.
b)
HP
Výber inštrukcie
I.
I.
Výpoèet adresy
II.
II.
1
III.
Dekódovanie inštrukcie
Vykonanie operácie
2
3
1
2
3
1
2
4
5
3
4
2
3
3
III.
c)
HP
I.
Výber inštrukcie
II.
Fronta
inštrukcií
III.
Dekódovanie inštrukcie
Výpoèet adresy
Vykonanie operácie
I V.
I.
II.
3
4
3
III.
2
I V.
1
2
d)
5.7. Varianty architekrúry procesora INTEL 8086
S tra na 74
Elektronické počítačové systémy
jeho funkcie a zjednodušenie prekladačov z jazyka vyššej úrovne. Výsledkom výskumu bola
definícia vlastností počítača s redukovaným súborom inštrukcií označovaná RISC (reduced
instruction set computer).
Základnou myšlienkou procesorov typu RISC je vykonanie každej inštrukcie v jednom
strojovom cykle procesora, čo samozrejme nie je realizovateľné vo všetkých prípadoch, ale vo
väčšine inštrukcií je to možné. Skrátenie doby vykonávania inštrukcie na jeden cyklus sa
dosahuje predovšetkým tým, že prevažná väčšina inštrukcií spracováva operandy uložené v
registroch a ukladá ich tiež do registrov. Pre spoluprácu s pamäťou existujú len dve inštrukcie
a to čítanie z pamäti a zápis do pamäti. Aby však bolo možné využiť rýchle jednocyklové
operácie v procesore v plnej miere, je nutné pripraviť operandy včas do registrov. Jedným z
výrazných architektonických rysov procesorov typu RISC je preto použitie veľkého počtu
registrov. Na druhej strane tieto procesory sa zbavia veľkého počtu špeciálnych obvodov
potrebných pre dekódovanie zložitejších inštrukcií a pre zložitejšie výpočty adries.
Výsledkom redukcie môže byť súbor inštrukcií, ktorý obsahuje len niekoľko desiatok
inštrukcií.
RISC
Inštrukcie
Pripoèítanie konštenty
Sèítanie dvoch registrov
Sèítanie dvoch registrov
Porovnanie a podm.
skok ( výpoèet adresy)
Sèítanie dvoch registrov
Porovnanie a podm.
skok ( výpoèet adresy)
Spolu
Doba
vykona
nia
[ ms]
Konvenèný procesor CISC
125
Sèítanie dvoch slov
( výpoèet adries, èítanie,
sèítanie, zápis do pam.
400
Sèítanie dvoch slov
( výpoèet adries, èítanie,
sèítanie, zápis do pam.
600
Sèítanie, porovnanie a
podmienený skok
( výpoèet 3 adries)
1800
Sèítanie, porovnanie a
podmienený skok
( výpoèet 3 adries)
1800
125
125
250
125
250
1000
Inštrukcie
Spolu
Doba
vykona
nia
[ ms]
4600
5.8. Priebeh toho istého výpočtu v dvoch typoch procesorov
Na obrázku 5.8. je porovnaný spôsob vykonávania toho istého výpočtu v procesore
typu RISC a v konvenčnom procesore typu CISC. V počítači typu RISC sa na uvedenom
obrázku uskutočňujú len operácie podmieneného skoku v dvoch cykloch, pretože je nutné
Strana 75
vypočítať cieľovú adresu skoku. Všetky ostatné inštrukcie sa vykonajú v jednom cykle.
Naproti tomu v konvenčnom procesore je možné ten istý výpočet realizovať menším počtom
inštrukcií (4 namiesto 6), ktoré sú však zložitejšie a trvajú dlhšie. Výsledná doba výpočtu v
konvenčnom procesore je viac než 4x dlhšia než v procesore typu RISC.
To, že väčšina inštrukcií sa môže vykonávať behom jedného cyklu, umožňuje veľmi
efektívne využitie prúdového spracovania informácií. Každá inštrukcia sa vykonáva v štyroch
fázach:
· dekódovanie inštrukcie
· čítanie operandu
· vykonanie operácie
· uloženie výsledku
Obrázok 5.9. znázorňuje prúdové spracovanie piatich po sebe nasledujúcich inštrukcií,
z ktorých štyri sú prevedené v jednom cykle a jedna sa vykonáva až v troch cykloch.
Prevádzanie každej inštrukcie v jednom strojovom cykle vyžaduje, aby boli inštrukcie
do procesoru dodávané zodpovedajúcou rýchlosťou. Preto sa počítače typu RISC vybavujú
veľmi výkonnou jednotkou styku s pamäťou, v ktorej je uložená pomerne dlhá fronta
inštrukcií.
Dekódov Čítanie Vykona Uloženi
anie operand
nie
e
1
u
1
výsledk
u
1
Dekódov Čítanie Vykona Uloženi
anie operand
nie
e
2
u
2
výsledk
2
u
Dekódov Čítanie Vykona Vykona Vykona Uloženi
anie operand
nie
nie
nie
e
3
u
3
3
3
výsledk
3
u
Dekódov Čítanie Vykona Uloženi
anie operand
nie
e
4
u
4
výsledk
4
u
Dekódov Čítanie Vykona Uloženi
anie operand
nie
e
5
u
5
výsledk
5
u
5.9. Prúdové spracovanie inštrukcií v procesoroch typu RISC
Väčšiemu rozšíreniu procesorov typu RISC bránila predovšetkým ich nekompatibilita
s konvenčnými procesormi typu CISC a to je aj hlavný dôvod prečo sa také významné firmy
ako Intel a Motorola príliš nezaoberali vývojom týchto procesorov. Len v nedávnej dobe sa
podarilo spoločne firmám IBM a Apple vyrobiť výkonný, ale hlavne aj komerčne úspešný
RISC procesor Power PC 601, na čom má veľkú zásluhu možnosť používať na ňom aplikácie
určené pre procesory 80x86 v prijateľnej rýchlosti. Samozrejme, aplikácie napísané špeciálne
pre procesor s technológiou RISC dosahujú omnoho väčšie výkony.
Power PC 601 je procesor so superskalárnou architektúrou, čo znamená, že môže
vykonávať až tri inštrukcie počas jedného taktu. Procesor obsahuje 2,8 milióna tranzistorov a
jeho veľkosť je 120 mm2 (pre porovnanie procesor Pentium od firmy Intel má veľkosť
300mm2 ).
S tra na 76
Elektronické počítačové systémy
5.3. Paralelné systémy
Zvyšujúce sa požiadavky na výkonnosť počítačových systémov, ale aj rozsah a
zložitosť riešených úloh nútia výrobcov k neustálemu zdokonaľovaniu procesorových
podsystémov. Jedna z alternatív je zavádzanie paralelných systémov.
Paralelný systém, označovaný ako počítač s paralelnou štruktúrou, môžeme
charakterizovať následovne:
· je tvorený väčším počtom funkčných jednotiek, ktoré môžu , ale nemusia byť
rovnaké
· počet jednotiek jedného systému je možné zväčšiť za cenu, ktorá nepresahuje
približne lineárny rast, čím sa dosiahne prírastok rýchlosti, ktorý sa blíži
lineárnemu rastu zdola
· celý systém rieši súčasne jednu úlohu
Hlavným problémom paralelných systémov je efektívne využitie jednotlivých
jednotiek, o ktorom sa zmieňuje druhý bod, viď graf 5.10.
Stupeň využitia jednotlivých procesorov sa vyjadruje ako podiel celkovej výkonnosti
systému a počtu procesorov N.
5.3.1. Rozdelenie paralelných systémov
Snaha po paralelnej spolupráci procesorov sa datuje takmer od samého začiatku
výpočtovej techniky. Výsledkom tohto vývoja, ktorý neustále pokračuje, je veľké množstvo
štruktúr. V dôsledku toho je len veľmi ťažko zaviesť obecné triedenie podľa určitého kritéria.
Najznámejšie triedenie je podľa M. J. Flynna, ktorý rozdeľuje systémy podľa dvoch
kritérií a to podľa počtu programov riešených paralelne a podľa počtu údajových súborov
spracovávaných paralelne:
SI (single instruction stream)
MI(multi instruction stream)
- jeden program
- niekoľko programov
SD (single data stream)
MD (multi data stream)
- jeden tok údajov
- niekoľko tokov údajov
Vzájomnou kombináciou týchto
dvoch kriterií vznikajú štyri kategórie
systémov a to SISD, SIMD, MISD a
MIMD.
SISD je klasický von Neumannov
počítač s jedným programom a jedným
sériovo vykonávaným prúdom údajov.
MISD
je
abstraktná
kombinácia
niekoľkých programov spracovávajúcich
jeden prúd údajov.
V praxi sa používajú len dva typy
paralelných systémov SIMD a MIMD.
SIMD môžeme charakterizovať ako väčší
počet funkčných jednotiek pracujúcich
súčasne na tom istom programe. Systém
MIMD obsahuje jednotky do určitej miery
samostatné, každá z nich plní samostatný program, alebo aspoň úsek programu, a pritom
spracováva tiež iné údaje.
Strana 77
Veľmi obmedzujúcim faktorom predchádzajúceho delenia je pojem program, príp.
prúd inštrukcií, ktorý pre mnoho paralelných systémov stráca zmysel. Preto je logickejšie
delenie, kde hodnotiacim kritériom je podiel programového vybavenia na riadení systému:
1. Systém s niekoľkými procesormi riadenými vlastným programom
2. Procesory riadené tokom údajov
3. Maticové procesory
4. Asociatívne procesory
5. Systolické siete
Podiel programového vybavenia na riadení systému klesá smerom dolu, takže ak
systémy MIMD sú riadené klasickým programom skladajúcim sa z jednotlivých inštrukcií, tak
v systolických sieťach neexistuje program vôbec.
5.3.2. Multiprocesorové systémy MIMD
Ako multiprocesorové systémy sa označujú v užšom slova zmysle predovšetkým
systémy MIMD, ktorých jednotkové procesory nie sú úzko špecializované.
Z hľadiska dosahovaných parametrov je treba rozlišovať medzi systémami určenými
pre sériovú výrobu alebo pre experimentálnu prevádzku. Sériovo vyrábané systémy obsahujú
pomerne málo procesorov (max. 10) a to hlavne z obavy z ich nedostatočného využitia a tým
aj pomerne nízkej efektivity systému ako celku pri enormne vysokých nákladoch.
Jedným z hlavných predstaviteľov sériovo vyrábaných multiprocesorových systémov
je HONEYWELL 66/60.
P0
P1
SR0
M 01
M 02
SR1
M 11
MVV0
K
...
P2
M 12
SR2
M 21
MVV1
K
K
...
M 22
MVV2
K
K
...
K
5.11. Multiprocesorový systém Honeywell 66/60
Na obrázku 5.11. je cyklické prepojenie troch jednoprocesorových podsystémov, z
ktorých každý obsahuje jeden procesor Pi, jeden systémový radič SRi, dva pamäťové moduly
Mi, multiplexor vstupu a výstupu MVVi. Podsystémy sú navzájom prepojené pomocou
systémových radičov a ich hlavné funkcie sú:
S tra na 78
Elektronické počítačové systémy
·
riadiť dva pamäťové moduly
·
sprostredkovať prepojenie medzi jednotkami, ktoré sú k nim pripojené
Jeden z procesorov P0 má výnimočné postavenie v rámci systému, pretože sú k nemu
vedené všetky požiadavky na prerušenie zvonku a on následne rozhodne,
v akom
poradí majú byť obslúžené a ktorou jednotkou.
Kapacita adresového priestoru je 1 MB. Každý procesor môže adresovať
256
KB. Aby týchto 256 KB mohlo byť umiestnených v ľubovolnej časti adresového priestoru,
používajú sa 3 bázové registre, ktorých obsah sa pričíta ku generovanej adrese. Každý
procesor môže týmto spôsobom pre seba vymedziť časť adresového priestoru, prípadne
čiastočne alebo úplne zdieľať adresový priestor s iným procesorom. Komunikácia medzi
procesormi a kanálmi sa uskutočňuje prostredníctvom tzv. poštových schránok (mailbox).
Pre každý kanál je v hlavnej pamäti vymedzená určitá oblasť a ak procesor žiada o
styk s kanálom vloží do tejto schránky riadiacu informáciu a vyšle do volaného kanálu
inštrukciu, ktorá spôsobí spojenie kanálu s hlavnou pamäťou. Podobný spôsob sa používa aj
pri naväzovaní styku dvoch procesorov.
VV/P
4
0,0
Relatívn
a
výkonnos
0,6
3
1,2
2
3,0
1
2
3
4
Počet
5.12. Závislosť relatívnej výkonnosti systému na percente V/V operácií
Operačný systém je uložený v hlavnej pamäti iba raz. Každý procesor si môže
potrebnú časť tohoto systému zaviesť do svojej vnútornej pamäti a spustiť v prípade potreby.
Operačný systém riadi úlohy v jednotlivých procesoroch nezávisle a ak má dôjsť k ich
vzájomnej komunikácii využívajú sa spoločné komunikačné oblasti - už spomínané tzv.
poštové schránky .
Strana 79
Nadradenosť procesoru P0 sa prejavuje len pre vybavovanie žiadosti o prerušenie zo
strany periférných zariadení.
Závislosť relatívnej výkonnosti od počtu procesorov znázorňuje graf na obrázku 5.12.,
v ktorom je ako parameter zvolený pomer medzi vstupno - výstupnými inštrukciami a počtom
inštrukcií, ktoré prebiehajú iba v procesore.
5.3.3. Procesory riadené tokom údajov
V procesoroch riadených tokom údajov plní program do určitej miery odlišnú funkciu
ako v klasických počítačoch von Neumannovho typu. Program určuje iba logickú náväznosť
operácií, ktoré sa majú vykonať. Prestáva existovať čítač inštrukcií, ktorý určoval, kedy sa
jednotlivé inštrukcie budú prevádzať. Podstatnú časť riadiacich funkcií preberajú údaje, takže
okamžik vykonania určitej operácie závisí iba na tom, kedy sú pre túto operáciu k dispozícii
potrebné údaje.
Procesory riadené tokom údajov sa rozdeľujú na jednoúčelové a univerzálne.
a
c
b
a
2
*
–
2
1
2
1
/
2
X1
*
–
*
2 –
–
û
û
1
2 -
+
b
2
2
*
c
+
-
/
1
/
X2
/
X1
X2
5.13.a. Program pre procesor riadený tokom údajov
b. Štruktúra procesoru riadeného tokom údajov
S tra na 80
Elektronické počítačové systémy
5.3.3.1. Jednoúčelové procesory
Jednoúčelový procesor je určený k prevádzaniu výpočtu, ktorý nie je možné meniť
žiadnym spôsobom, meniť sa môžu len vstupné údaje a tým sa daný výpočet môže opakovať
veľmi rýchlo (úprava výsledkov do tvaru potrebného pre ďalšie použitie).
Návrh jednoúčelového procesoru riadeného tokom údajov vychádza z programu
nakresleného v grafickom tvare ako orientovaný graf.
Na obrázku 5.13.a. je nakreslený orientovaný znázorňujúci sled krokov pri výpočte
koreňov kvadratickej rovnice vychádzajúc zo vzorcov:
D = b2 - 4ac
x1 =
-b +
D
2a
x2 =
-b -
2a
D
Každý uzol v orientovanom grafe predstavuje jednu operáciu a každá hrana, ktorá do
uzlu vstupuje udáva, odkiaľ má byť privedený operand pre túto operáciu. Na vstupe
dvojoperandových operácií musí dôjsť k tzv. synchronizácii procesov, ktoré dovtedy
prebiehali nezávisle a paralelne.
Štruktúra vlastného procesoru riadeného tokom údajov vychádza z orientovaného
grafu, kde každej hrane zodpovedá jeden vodivý spoj a každému uzlu jedna funkčná jednotka.
Príklad zapojenia jednoúčelového procesoru pre výpočet kvadratickej rovnice je znázornený
na obrázku 5.13.b.
Vodivý spoj medzi funkčnými jendotkami však nezabezpečuje len prenos údajov, ale
aj synchronizáciu jednotlivých paralelne pracujúcich procesov. Vlastnú synchronizáciu
zabezpečujú dva vodiče. Prvý signalizuje funkčnej jednotke 2, že údaje sú platné a druhý
signalizuje jednotke 1, že údaje sú prijaté.
Platné údaje
1
2
1 Údaje
32 2
Príjem údajov
5.14. Realizácia hrany grafu
Obrázok 5.15. znázorňuje časovú postupnosť signálov pri styku dvoch jednotiek, ktorá
prebieha v takomto slede:
1. Funkčná jednotka 1 vyšle súčasne s údajmi aj signál Údaje platné
2. Funkčná jednotka 2 príjme údaje a vyšle do jednotky 1 signál Príjem údajov
3. Funkčná jednotka 1 prestane vysielať údaje a zruší signál Údaje prijaté
4. Funkčná jednotka 2 vynuluje signál Prijaté údaje až vtedy, keď je schopná
prijímať ďalšie údaje
V rámci ďalšieho urýchlenia sa môže na vstup jednotiek umiestniť fronta operandov,
čo následne umožňuje prúdové spracovanie.
Strana 81
Údaje platné
Údaje
Príjem údajov
5.15. Časový diagram styku dvoch jednotiek v procesore riadenom tokom údajov
5.3.3.2. Univerzálne procesory
K najznámejším predstaviteľom patrí počítač MIT, určený pre riešenie rôznych úloh,
ktorého bloková schéma je na obrázku 5.16.
Prepínač
výsledkov
Pamäť inštrukcie 1
Pamäť inštrukcie 2
Prepínač
operácií
.
.
.
Pamäť inštrukcie N
Radič
Rozhodovacia jednotka
Operačná jednotka 1
Operačná jednotka 2
.
.
.
Operačná jednotka M
Prídavné zariadenia
5.16. Univerzálny procesor riadený tokom údajov
S tra na 82
Elektronické počítačové systémy
V hornej časti obrázku 5.16. je sada pamätí inštrukcií, ktorá obsahuje okrem vlastnej
inštrukcie aj operandy potrebné pre inštrukciu a informácie akým spôsobom má byť použitý
výsledok. Štruktúra jednej pamäti inštrukcie je následovná:
Kód operácie
Blokovací signál
Blokovací signál
Cieľová adresa
Platnosť
Údaje
Platnosť
Údaje
Akonáhle sú do niektorej pamäti inštrukcie zapísané všetky informácie, žiada táto
pamäť o pridelenie operačnej jednotky. Toto pridelenie vykonáva prepínač operácie, ktorý si
uchováva na jednej strane požiadavky a na druhej strane informácie o volných operačných
jednotkách. Každá operačná jednotka je rozdelená do sekcií , takže je schopná pracovať
prúdovo. Operačné jednotky sú špecializované na vykonávanie aritmeticko - logických
operácií, na riadenie operácií vstupu a výstupu (operačná jednotka M) a tzv. rozhodovacie
jednotky, ktoré sú schopné vyhodnocovať logické podmienky a o výsledku informovať radič.
Prechodom jedného obsahu pamäti inštrukcie vznikne podobná štruktúra obsahujúca
informáciu o výsledku a spôsobe jeho ďalšieho použitia. Táto informácia sa vyhodnotí v
prepínači výsledkov, ktorý nájde pamäť inštrukcie, do ktorej má byť získaný výsledok
zapísaný ako operand.
Univerzálne procesory riadené tokom údajov sa veľmi dobre hodia pre riešenie úloh
aritmetického charakteru. Malou nevýhodou je nutnosť používať špeciálne programovacie
jazyky.
5.3.4. Maticové procesory - SIMD
Maticové procesory patria do skupiny SIMD, nakoľko plnia jeden program na
mnohých údajových položkách súčasne, čo je charakteristické pre vykonávanie operácií s
maticami prípadne vektormi.
Prepojovacia siet
NxN
P1
P2
Pn
Riadiaci
poc ítac
M1
M2
Mn
Prepojovacia siet
NxN
5.17. Maticový procesor
Strana 83
Bloková schéma maticového procesora vhodného pre prácu s maticami do rádu N x N
je znázornená na obrázku 5.17. Jeho základom je N identických procesorov a N pamäťových
modulov. Pole procesorov a pole modulov sú prepojené dvoma jednosmernými prepojovacími
sieťami typu N x N, schopnými súčasne prepojiť ľubovolný zo svojich N vstupov s
ľubovolným zo svojich N výstupov. Riadenie maticového procesora zabezpečuje riadiaci
počítač, ktorý číta z pamäti program a predáva maticové inštrukcie k ďalšiemu spracovávaniu
do procesorov. Riadi tiež prepojovacie siete a moduly pamäte.
Schopnosti maticového procesora sú najlepšie využívané vtedy, ak každý prvok matice
je zapísaný v inom pamäťovom module, takže môže byť nezávisle spracovávaná samostatným
procesorom. Pre maticové operácie je charakteristické, že sa striedajú operácie s riadkami a so
stĺpcami a preto sa dáva prednosť „špirálovitému“ uloženiu prvkov matice do pamäte.
M1 M2 M3
MN
a11 a12 a13 . . . . . . a1N
a11 a12 a13 . . . . . . a1N
a21 a22 a23 . . . . . . a2N
a31 a32 a33 . . . . . . a3N
.
.
.
.
.
.
.
.
.
.
.
.
aN1 aN2 aN3 . . . . . . aNN
Pôvodná matica
a2N a21 a22 . . . . . . a2N-1
a3N-1 a3N a31 . . . . . . a3N-2
.
.
.
.
.
.
.
.
.
.
.
.
aN2 aN3 aN4 . . . . . . aN1
Špirálové úloženie v
jednotlivých moduloch
Najznámejším predstaviteľom maticových procesorov je počítač ILLIAC IV, ktorý
obsahuje 64 procesorov.
5.3.5. Asociatívne procesory
Asociatívny procesor je charakteristický tým, že údaje z pamäte vyberá na základe
asociativity. Teda údaje sa nevyberajú podľa adresy ako u klasických von Neumannovských
počítačoch, ale podľa niektorých dôležitých vlastností, často vyjadrených tzv. kľúčom. Podľa
toho akým spôsobom sa pamäť údajov prehľadáva, delia sa asociatívne procesory do štyroch
skupín:
· plne paralelné
· pracujúce sériovo po bitoch
· pacujúce sériovo po slovách
· blokovo orientované
Plne paralelný asociatívny procesor používa samostatný logický obvod pre každý bit
pamäte, ktorý vykonáva len prosté porovnávanie hľadanej hodnoty so zapísanou. Hľadanie na
základe zložitejšej podmienky sa vykonáva programom.
V asociatívnom procesore pracujúcom sériovo po bitoch je vyhodnocovací logický
obvod pridelený každému slovu pamäti. Všetky slová sa spracovávajú paralelne, ale každé z
nich sa číta a vyhodnocuje sériovo po bitoch. Výhodou tohto typu asociatívneho procesoru je
možnosť použitia pamäťových modulov typu RAM.
S tra na 84
Elektronické počítačové systémy
Asociatívny procesor pracujúci sériovo po slovách číta slová z pamäti obvyklým
spôsobom , postupne za sebou, pričom každé slovo sa číta paralelne. V tomto type
asociatívnych procesoroch sa jednou inštrukciou prehľadí celá pamäť, čím odpadá opakované
čítanie a prevádzanie inštrukcií, potrebných pre riadenie cyklu.
V blokovo orientovanom asociatívnom procesore spracováva každá vyhodnocovacia
jednotka jeden blok pamäti. Tento spôsob spracovania sa používa tam, kde je nutné
manipulovať s veľkým objemom údajov (vyhodnocovanie údajov čítaných z disku z pevnými
hlavami).
Najznámejším typom je asociatívny procesor so sériovým spracovaním po bitoch
použitý v počítačoch STARAN, ktoré od roku 1974 vyrábala firma Goodear Aerospace
Corporation. Základom týchto počítačov je tzv. maticový modul , ktorého bloková schéma je
na obrázku 5.18. Skladá sa z pamäte s viacrozmerným prístupom, ktorá má kapacitu 256 x
256 bitov a je zostavená z 256 integrovaných obvodov typu RAM s organizáciou 256 x 1 bit.
V jednom čipe je zapísané vždy jedno slovo dĺžky 256 bitov. Z pamäti je možné prečítať v
jednom takte jeden stĺpec 256 bitov , ktoré sa paralelne objavia na výstupe pamäti. Prečítané
údaje sa spracovávajú v elementárnych jednobitových procesoroch, ktorých počet je rovnaký
ako slov v pamäti, čiže 256. Elementárny procesor je veľmi jednoduchý, obsahuje 3
preklápacie obvody a kombinačný obvod tvorený 32 logickými členmi. Umožňuje prevádzať
ktorúkoľvek zo 16 logických funkcií dvoch premenných.
256b
1 slovo
VSTUP
256
256
256
256b
Permutaèná sie 
256 x 256
Pamä s
viacprocesorovým
prístupom
256
256
Pole
procesorov
256
VÝSTUP
5.18. Maticový modul počítača STARAN
Medzi pamäťou a poľom procesorov je permutačná sieť, ktorá umožňuje meniť
priradenie slov pamäti procesorom a naopak.
Asociatívne procesory sa využívajú predovšetkým pri rýchlych výpočtoch Fourierovej
transformácie, spracovávanie raťazcov údajov (textu), operácie s bázami údajov a spracovanie
signálov. Zaujímavé je aj použitie v oblasti kartografie, pre číslicové spracovanie obrazov. Pre
tieto účely bola inštalovaná konfigurácia s 8216 procesormi, pripojená na hostiteľský počítač
CDC 6400.
Strana 85
5.3.6. Systolické siete
Systolická sieť je pevne prepojená sieť funkčných jendotiek, určená pre riešenie jednej
úlohy alebo jednej kategórie úzko príbuzných úloh. Jej prepojenie je vlastne obvodová
realizácia algoritmu výpočtu, takže systolickú sieť nie je treba (ani nie je možné) riadiť
programom.
Jednotky použité v systolickej sieti sú obvykle všetky rovnaké a sú schopné prevádzať
iba jednu operáciu napr. y = y+xw Údaje sa v systolickej sieti presúvajú v pravidelných
intervaloch z jednotky do jednotky a okrem synchronizačného vstupu nemá táto sieť žiadne
vonkajšie riadenie. Typickou úlohou riešenou v systolických sieťach je spájanie a
porovnávanie postupností, korelácia, interpolácia, diskrétna Fourierova transformácia a
násobenie a delenie polynomov.
Systolické siete sa realizujú ako jednorozmerné, alebo ako dvoj a viac rozmerné.
Kedže su systolické siete úzko špecializované na určitú kategóriu úloh, budú ozrejmené dva
jednoduché príklady.
S tra na 86
Elektronické počítačové systémy
5.3.6.1. Systolické siete pre aritmetické operácie
Najjednoduchší typ jednorozmernej systolickej siete je uvedený na obrázku 5.20. Rieši
tzv. konvolúciu, ktorá je definovaná takto: Je daná vstupná postupnosť { x1, x2, ... ..,xn} a
postupnosť váh { w1, w2, ... , wk } . Máme vypočítať postupnosť hodnôt { y1, y2, ... ..,yn+1-k
}, definovanú vzťahom
yj = w1xj + w2xj+1 + w3xj+2 + ... + wkxj+k-1
Konvolúciu je možné chápať ako zvláštny prípad obecnejšej úlohy, ktorá sa dá
charakterizovať ako spojenie dvoch postupností údajov
xi
(v našom prípade {xj} a {wj})určitým spôsobom .
V príklade na obrázku je použitá postupnosť
{wj} len s tromi váhami (k = 3). Tieto váhy sú zapísané
do vnútorných pamätí jednotlivých buniek a počas
W
yi
yo výpočtu sa nepohybujú. Funkcia jednej bunky je
popísaná na obrázku 5.19. Na vstupy siete sú
synchrónne privádzané postupnosti hodnôt {xj} a {yj},
yo = yi
pričom postupnosť {yj} je pre daný typ úlohy na
+ wxi
začiatku nulová. Hodnoty, ktoré sa v priebehu výpočtu
5.19. Funckia buňky vytvárajú v pamäti jednotlivých buniek sú znázornené na
obrázku 5.20. Prvý člen postupnosti výsledkov sa teda
objaví na výstupe sieti v treťom takte.
x1
y1
1. takt
2. takt
3. takt
W1
x1w1
x2w1
x3w1
W2
W3
x1w2
x1w3
x1w1+x 2w2
x1w2+x2w3
x2w1+x3w2
x1w1+x2w2+x3w3= y1
x2w1+x3w2+x4w3= y2
5.20. Jednosmerná systolická sie
ť s globálnym rozvodom
vstupnej postupnosti
Veľmi jednoduchým spôsobom je možné na túto sieť implementovať napríklad
vyhľadávanie postupnosti { w1, w2, ... , wk } v postupnosti { x1, x2, .....,xn}, pričom n > k a to
tak , že každá bunka bude vykonávať túto operáciu
yo = yi . (w = xi)
Zhoda na j-tom mieste bude signalizovaná hodnotou jj=1.
Strana 87
5.3.6.2. Systolické siete pre triedenie
Triedenie je jednou z najrozšírenejších operácií pri spracovaní údajov. Jednou z
možností urýchlenia triedenia je návrh špecializovaných technických prostriedkov, ktoré
umožnia triediť súbory rýchlo a s minimálnym programovým riadením. Týmto požiadavkám
plne vyhovujú systolické siete.
Systolická sieť pre triedenie je homogénna, teda je tvorená skupinou rovnakých
buniek. Bunka obsahuje dva registre, z ktorých je každý určený pre zápis jednej dvojice "kľúč,
ukazovateľ". Ako kľúč je tu označená skupina bitov, podľa ktorej má byť triedenie
prevádzané. Ukazovateľ je adresa, ktorá určuje, kde sa vo vlastnom súbore nachádza záznam
vzťahujúci sa k danému kľúču. Vlastný záznam teda počas celého zostáva na rovnakom
mieste a presúvajú sa iba kľúče s adresami.
Takt
Posuv
0
Výmena
Takt
Výstup
Posuv
Výmena
oo
oo
oo
oo
oo
oo
7
1
2
8
5
3
oo
9
2
8
3
5
9
oo
1
oo
5
oo
oo
oo
oo
oo
5
oo
oo
oo
oo
8
2
3
8
9
5
oo
oo
3
8
5
9
oo
oo
2
3
5
oo
oo
oo
oo
3
5
oo
oo
oo
oo
9
3
5
8
oo
9
oo
oo
5
8
9
oo
oo
oo
3
3
2
oo
5
oo
oo
2
3
5
oo
oo
oo
10
5
9
8
oo
oo
oo
oo
8
9
oo
oo
oo
oo
4
2
9
5
3
oo
oo
2
9
3
5
oo
oo
11
8
oo
9
oo
oo
oo
oo
9
oo
oo
oo
oo
oo
5
2
1
3
9
oo
5
1
2
3
9
5
oo
12
9
oo
oo
oo
oo
oo
oo
oo
oo
oo
oo
oo
oo
6
1
8
3
2
5
9
1
7
2
3
5
9
5.21. Systolická sieť pre triedenie
Obidva registre jednej bunky sú pripojené porovnávací obvod, ktorý určí menší kľúč.
Ak zistí pri vzostupnom triedení, že menší kľúč je v hornom registri, zostanú obsahy
obidvoch registrov na svojich miestach, inak sa vymenia.
Okrem výmeny registrov môže každá bunka tiež prijímať a vysielať informácie.
Činnosť každej bunky sa dá popísať asi takto: Do dolného registra príjme nový kľúč s
ukazovateľom, po porovnaní s horným registrom sa menší presunie do horného registra a
obsah dolného registra sa posiela ďalej.
Na obrázku 5.21. je znázornená systolická sieť s tromi bunkami, takže je schopná
triediť súbory so šiestimi prvkami. V počiatočnom stave je vo všetkých registroch siete
zapísaná hodnota oo, v ďalších šiestich taktoch sú postupne privádzané na vstup siete hodnoty
kľúčov v poradí 5, 3, 2, 9, 1, 8. Každá táto hodnota je zapísaná do dolného registra, následne
porovnaná s obsahom horného registra a podľa výsledku buď dôjde k výmene alebo nie. V
šiestom takte dostaneme výsledok: v každej bunke je menší kľúč hore, najmenší zo všetkých
kľúčov je v hornom registri ľavej bunky.
S tra na 88
Elektronické počítačové systémy
V nasledujúcich šiestich taktoch sa posúva iba obsah horných registrov doľava.
Hodnoty kľúčov, ktoré vystupujú na ľavom okraji siete, sú už zotriedené vzostupne, teda v
poradí 1, 2, 3, 5, 8, 9. Na vyprázdnené miesta sa zapisujú maximálne hodnoty a po skončení
12. taktu je sieť schopná triediť ďalší súbor.
Strana 89
6. Hodnotenie výkonnosti počítačov
Podobne ako pri iných technických zariadeniach aj pri počítačoch sa hodnotí ich
kvalita pomocou tzv. výkonnosti. Presná definícia tohto pojmu je však veľmi obtiažna,
nakoľko väčšina počítačov je špecializovaná na určité činnosti (hromadné spracovanie údajov,
riadenie výroby atď. ) Takže kým niektoré počítače môžu vykazovať pre určité procesy
vynikajúce výsledky, v ostatných sú podpriemerné. Preto sa výkonnosť počítača definuje len
obecne, ako miera schopnosti počítača vykonávať funkciu, pre ktorú je určený.
Celková výkonnosť je výsledkom hodnotenia z rôznych hľadísk, ktoré vyjadrujú určité
dielčie kvality systému. Medzi základné patria:
· priepustnosť systému
· doba odozvy
· stupeň využitia
Priepustnosť systému
Priepustnosť systému určuje počet úloh, ktoré je systém schopný spracovať za
jednotku času. Pre vlastné testovanie sa využívajú tzv. skúšobné úlohy, ktorých kvalita a
rôznorodosť sa stále zdokonaľuje.
Doba odozvy
Dobou odozvy je označovaný interval, ktorý uplynie od okamihu, kedy bola do
počítača vložená určitá úloha, do okamihu, kedy sa na výstupe objaví výsledok. Tento atribút
výkonnosti je dôležitý hlavne pri systémoch pracujúcich v reálnom čase. Doba odozvy a
priepustnosť systému sú parametre, ktoré sa vzájomne ovplyvňujú. Čiže ak na tom istom
počítači je využitá jeho výkonnosť na to, aby intenzívne pracoval na jednej úlohe, skráti sa
doba odozvy. Ak však rieši niekoľko úloh súčasne, čo väčšinou umožňuje veľmi efektívne
využitie systému, potom je počet úloh spracovávaných za jednotku času vyšší než v prvom
prípade, no doba odozvy rastie.
Stupeň využitia
Stupeň využitia systému definuje, aká časť z teoreticky dosiahnuteľnej výkonnosti
systému je skutočne využitá. Určuje sa samostatne pre jednotlivé podsystémy, z ktorých sa
skladá, alebo pre systém ako celok.
Okrem vyššie uvádzaných troch základných hľadísk pre posúdenie výkonnosti je
možné podľa potreby sledovať aj ďalšie ukazovatele výkonnosti, ako napr.
rekonfigurovateľnosť, prispôsobivosť meniacim sa požiadavkám úlohy, zotaviteľnosť po
poruche atď.
Obecne sa teda existujúci výpočtový systém podrobuje záťaži, pričom sa sleduje jeho
správanie. Záťaže môžu byť umelé alebo prirodzené. Do kategórie umelých záťaží patria tzv.
inštrukčné mixy a už spomínané skúšobné úlohy. Prirodzenú záťaž predstavuje najčastejšie
skúšobná prevádzka v konkrétnych podmienkach. Ďalšie dôležité informácie o výkonnosti sa
zisťujú pomocou monitorovania, čiže na základe sledovania najväčšieho počtu čiastkových
funkcií, javov alebo udalostí, ktoré v počítači nastávajú v priebehu normálnej prevádzky.
Pomocou monitorovania sa môžu pomerne jednoduchým spôsobom lokalizovať prípadné
nedostatky v konfigurácii, alebo chyby vzniknuté počas prevádzky.
S tra na 90
Elektronické počítačové systémy
6.1. Skúšobné úlohy
Skúšobná úloha - benchmark - je úloha, ktorá je svojím spôsobom typická pre činnosť
počítača v danej aplikačnej oblasti. Počítač sa pomocou skúšobnej úlohy hodnotí tak, že táto
úloha sa nechá prebehnúť pri normálnych prevádzkových podmienkach a potom sa zmeria
doba potrebná na jej vyriešenie. Skúšobné úlohy sa väčšinou programujú vo vyšších
programovacích jazykoch a pomocou kompilátora, ktorý tvorí základné programové
vybavenie systému, sú prekladané do strojového jazyka. Tým je do celkového hodnotenia
zahrnutá nielen rýchlosť technického vybavenia, ale aj kvalita programového vybavenia.
Vlastné skúšobné úlohy môžu vznikať dvomi spôsobmi, ako prirodzené alebo umelé.
Umelé sa vytvárajú špecificky len ako prostriedok pre meranie výkonu počítača. Pre ich
tvorbu sa môžu použiť naprogramované algoritmy typických zložitých úloh. Prirodzené úlohy
sú prebraté z bežnej prevádzky systému.
Pre hodnotenie počítačov určených pre spracovanie hromadných údajov sa používajú
tieto skúšobné úlohy:
· vyhľadávanie v tabuľkách
· aktualizácia súborov
· triedenie, indexovanie
a to :
· spracovanie textu
Počítače určené pre vedecko-technické účely však používajú iné typy skúšobných úloh
· inverzia matíc
· simulácia
· interpolácia a aproximácia
· výpočet hodnôt funkcií
· numerická derivácia, integrácia
· numerické riešenie diferenciálnych rovníc
· úlohy matematickej štatistiky
Výhodou skúšobných úloh naprogramovaných vo vyšších programovacích jazykoch je
ich objektivita pri hodnotení, nakoľko sú prenositeľné medzi počítačmi. Úlohy programované
v strojovom kóde sú do určitej miery závislé na skúsenostiach a schopnostiach programátora.
Máloktorý programátor ovláda rovnako dobre strojový kód porovnávaných počítačov a
neúmyselne preferuje len počítač, ktorý pozná lepšie. Programátor teda vytvára „program na
mieru“ určitému počítaču, čím znevýhodňuje ostatné. Ak sa tá istá úloha nechá pre každý
počítač naprogramovať špecializovanému programátorovi pre ten ktorý počítač, taktiež sa
uplatňuje jeho subjektivita a náhodný vklad do riešenia úlohy.
Kým v počiatkoch vývoja počítačov sa orientácia na jednotlivé typy úloh sústreďovala
skôr na špecializáciu technického vybavenia, v súčasnej dobe sa vyrábajú univerzálnejšie
počítače, pričom dôležitú úlohu zohráva kvalita špecializovaného programového vybavenia.
Preto o celkovej výkonnosti počítača viac informujú skúšobné úlohy ako inštrukčné mixy,
ktoré dávajú viac menej iba informáciu o rýchlosti operácií vykonávaných priamo
procesorom.
Strana 91
6.2. Monitorovanie
Úlohou monitorovania je sledovanie skutočného správania počítača pomocou
niekoľkých vopred zvolených stavových premenných. Najsledovanejšie stavové premenné sú :
· stav niektorej funkčnej jednotky (procesor, hlavná pamäť kanál )
· stav spojovacieho prostriedku (zbernica, diaľkové vedenie)
· chovanie používateľa ( vkladá dotaz, čaká na odpoveď)
Podľa spôsobu realizácie rozlišujeme monitory:
· programové
· technické
· kombinované
Programový monitor
Programový monitor je vlastne program, ktorý z vopred určených pozícií v hlavnej
pamäti vyberá hodnoty stavových premenných a vyhodnocuje ich. Hlavnou výhodou tohto
typu monitoringu je jeho jednoduchá realizácia, nakoľko si nevyžaduje žiadnu špeciálnu
technickú podporu. Naopak nevýhodou je určité „spomalenie“ vlastnej činnosti počítača a tým
aj do určitej miery skreslená informácia o jeho využití. Spomalenie počítača je spôsobené
ukladaním hodnôt stavových premenných do pamäte, čím sa aj zmenšuje pamäťová kapacita
počítača. Niektoré operačné systémy majú priamo zabudované programy poskytujúce
monitoring. U operačného systému UNIX je to príkaz TOP alebo GLANCE, pomocou ktorých
sa dá veľmi ľahko monitoravať napr. stav jednotlivých procesov, obsadenosť file systémov,
využitie hlavnej pamäte atď.
6.1. Monitorovacia procedúra TOP
Na obrázku 6.1. je zobrazená monitorovacia procedúra TOP, ktorá veľmi prehľadným
spôsobom zobrazuje základné a pre chod systému dôležité informácie. V záhlaví je zobrazené
S tra na 92
Elektronické počítačové systémy
meno systému a počet spustených procesov – 159 – v danom okamihu. Z toho je 1 bežiaci a
158 čaká na pridelenie procesora(viď kap. 2 – Operačné systémy). V ďalšej časti sú
informácie o CPU, napríklad ako je zaťažovaný užívateľskými procesmi – hodnota USER
alebo z koľkých percent je procesor voľný pre ďalšie procesy – hodnota IDLE. Ďalej nasledujú
informácie o pamäti a počte strán, na koľkých by sa zobrazili všetky spustené procesy – PAGE
1/12. Základom celej procedúry TOP je tabuľka aktualizovaná počas celej doby jej spustenia.
V prvom stĺpci TTY je meno linky po ktorej sa používateľ pripojil k serveru, ak sa tu
nachádza hodnota „?“ jedná sa o procesy spustené serverom nutné pre chod celého
operačného systému alebo tzv. zablúdené procesy, ktoré môžu zbytočne zaťažiť
procesor. Stĺpec PID zobrazuje identifikačné číslo procesu a stĺpec USERNAME prihlasovacie
meno tzv. login používateľa. V ďalších stĺpcoch nájdeme informácie o stave procesov, akým
spôsobom zaťažujú procesor a výstižný popis vlastného procesu. Pomocou tejto procedúry sa
dá veľmi rýchlo zmapovať stav procesora.
Podobne aj operačný systém WINDOVS NT SERVER ponúka veľmi elegantné
prostriedky na monitorovanie, kde si užívateľ môže zvoliť ktorúkoľvek stavovú premennú na
sledovanie (viď obrázok 6.2.)
6.2. Výber sledovaných hodnôt – Windows NT Server
Graf na obrázku 6.3. ukazuje jednu z foriem sledovania – monitorovania vybraných
hodnôt stavových premenných. Konkrétne v tomto grafe sú vybrané tri prvky na
monitorovanie. Tenká čiara zobrazuje prvok Processor Time, hrubá čiara prvok Pages/sec a
prerušovaná čiara (prakticky so stále nulovou hodnotou) prvok Disk Time. Presný význam
jednotlivých hodnôt je podrobne popísaný v nápovede systému. Napríklad definícia pre
Processor Time znie: “Procesorový čas sa vyjadruje ako percento z uplynulého času, ktorým
procesor bol zaneprázdnený vykonávaním operácie“ Pod grafom sú v jednotlivých oknách
číselné hodnoty zachycujúce hraničné hodnoty grafu. Ide o hodnoty Last (posledný), Average
(priemerný), Min (najnižší), Max (najvyšší) a Graph Time (časový úsek grafu – 100 jednotiek
periódy).
Technický monitor
Pri technickom monitore je využívaný samostatný funkčný blok, ktorý je pripojený k
počítaču, no ten ho pri svojej prevádzke „nevidí“ a teda ani ním nie je
Strana 93
6.3. Grafické zobrazenie monitorovania – Windows NT Server
zaťažovaný. Monitor sa s počítačom spojuje sondami, ktoré sa pripájajú na monitorované
signály napr. riadiace signály, zbernice a stavové signály pripojených jednotiek. Zmeny
hodnôt sledovaných signálov sa zapisujú do čítačov, tie sú spracovávané nezávislým
mikropočítačom riadiacim celý monitor. Na žiadosť obsluhy spustí mikropočítač program na
spracovanie získaných hodnôt a následne odovzdá výsledky na výstup. Hlavnou výhodou
technického monitoru je jeho nezávislosť na počítači, ktorá umožňuje sledovať počítač v jeho
prirodzenej funkcii, bez akéhokoľvek vonkajšieho zasahovania.
Kombinované monitory
Už z názvu kombinované monitory je zrejmé, že pri získavaní a vyhodnocovaní
informácií sa využíva programové aj technické vybavenie v takých kombináciách, ktoré
najlepšie vyhovuje povahe zhromažďovaných údajov. Teda tie stavové premenné, ktoré je
možné bez dodatočného oneskorenia údajov nájsť v pamäti, sa spracovávajú programovo a
opačne tie premenné, ktorých stav je signalizovaný na niektorom ľahko prístupnom vodiči
počítača, sníma technický monitor.
Výsledky monitorovania slúžia predovšetkým na posúdenia výkonnosti počítača, no
veľký význam majú aj pri hľadaní závad na systéme ak napr. dôjde k výraznému spomaleniu
systému (zablúdený proces, obsadenosť file systému, závada na komunikujúcej jednotke atď.),
pomocou rôznych monitorovacích procedúr je možné vystopovať závadu. Ďalej programové
monitory uľahčujú údržbu správcom rôzne veľkých systémov.
Podľa toho na ktorej časti systému sa vykonáva meranie, rozlišujeme tri hlavné
skupiny meraní:
· meranie na konfigurácii
· meranie sledujúce činnosť operačného systému
S tra na 94
Elektronické počítačové systémy
· meranie sledujúce činnosť používateľov
Pomocou merania na konfigurácii sa zisťuje predovšetkým vyváženosť jednotlivých
komponent počítača. Čo je dôležité aj z hľadiska ekonomického, nakoľko ak systém
pozostáva z pomerne drahých a výkonných komponent a keď čo i len jedna časť celého
systému je pomalá, môže to výrazne spomaliť systém ako celok a tým aj jeho neefektívne
využitie. Pre takéto informácie sa meria napríklad priemerná doba obsadenia jednotky
niektorou z úloh, doba pridelenia funkčnej jednotky jednotlivým úlohám, čakanie jednotky na
obsluhu (napr. na pridelenie určitého prostriedku), atď. Pri jednotlivých typoch funkčných
jednotiek sa potom tieto základné údaje doplňujú niektorými ďalšími hodnotami špecifickými
pre konkrétny typ jednotky, napríklad pri prídavných zariadeniach je to špecifikácia doby
prenosu údajov a čakanie, pri vonkajších pamätiach počty otváraní a zatváraní súborov, atď.
Merania na operačnom systéme poskytujú podklady pre hodnotenie jednotlivých
zložiek operačného systému. Preto sa meria hlavne efektívnosť prideľovania systémových
prostriedkov, účinnosť stránkovacieho mechanizmu, účinnosť plánovacieho mechanizmu,
pomer dôb vykonávania systémových programov a používateľských programov, atď.
Merania umožňujúce hodnotiť činnosť používateľov zahrňujú predovšetkým
sledovanie skladby požiadaviek zo strany používateľov (počet požiadaviek, ich typ a
vzájomná časová zhoda), doba odozvy na požiadavky, miera využitia systémových
prostriedkov jednotlivými používateľmi.
Všetky vyššie uvádzané spôsoby hodnotenia výkonnosti počítačov vychádzali
z predpokladu existencie daného výpočtového systému. No niekedy treba vykonať aj
hodnotenie systému, ktorý fyzicky ešte neexistuje, ale je iba vo forme návrhu. V takomto
prípade sa používa modelovanie výkonnosti počítačov. Obecne je to metóda testovania
vlastností daného objektu prostredníctvom iného objektu , ktorý sa prehlási za model a
ktorého vlastnosti sa v určitom zmysle zhodujú s vlastnosťami navrhnutého objektu. Vzťah
medzi navrhovaným objektom a jeho modelom je znázornený na obrázku 6.4.
t
Reálne
X
Modelovan
ý návrh
Reálne
Model
Model
N’=T(N)
Model
6.4. Vzťah modelu k modelovanému návrhu
Model môže byť abstraktný (napr. logický alebo matematický), pričom musia byť
definované dve zobrazenia. Zobrazenie vstupov, ktorým sa skutočné podnety, privádzané na
vstup skúmaného návrhu odvodia transformované vstupy, privádzané na vstup modelu a
zobrazenie výstupov, ktorým sa zistené reakcie modelu transformujú na výstupy skutočného
objektu.
Strana 95
7. Distribuované systémy
S rastúcimi požiadavkami na výpočtovú techniku vznikla potreba distribuovaného
spracovávania informácií, pri ktorom sa na riešení jednej úlohy podieľa viacej procesorov,
schopných vykonávať súbežne výpočet na rozdelených údajoch.
Ako distribuovaný systém sa označuje výpočtový systém, ktorý obsahuje:
· viac než jeden procesor,
· svoj program má rozdelený na komponenty, ktoré si vzájomne vymieòajú údaje
a spracovávané sú na rôznych procesoroch systému.
Distribuovaná architektúra umožòuje vzájomnú spoluprácu procesorov pri riešení
distribuovaného programu. Podľa spôsobu komunikácie medzi procesormi rozlišujeme:
· systémy s veľmi tesnou väzbou a
· systémy s voľnou väzbou.
Prvý systém sa opiera o zdieľanie pamäte a využíva sa pri potrebe sústredenia
vysokého výkonu na spracovanie veľmi úzko súvisiacich údajov, jedná sa v podstate o
paralelné počítače. Systémy s voľnou väzbou
òujúumož
komunikáciu procesorov
prostredníctvom výmeny správ, čo je výhodné pri spracovávaní úloh vyžadujúcich pomerne
malú frekvenciu výmeny údajov. Rozdelenie spracovávaného programu na komponenty a
definovanie ich vzájomných väzieb definuje štruktúru distribuovaného programu. V závislosti
na tom, akým systémom je spracovávaný distribuovaný program volí sa aj jeho rozdelenie na
komponenty. Napríklad pre systémy s voľnou väzbou je vhodné rozdelenie na relatívne veľké
komponenty, ktoré redukujú logicky uzavreté časti výpočtu, a ktoré si vzájomne vymie
òajú
minimum informácií.
S tra na 96
Elektronické počítačové systémy
7.1. Lokálne komunikačné systémy
Lokálne komunikačné systémy sú výhodné tam, kde je nutné rozložiť výpočtovú
kapacitu z dôvodu ľahkej dostupnosti, minimalizovať prenosy a súčasne zaistiť zdieľanie
údajov.
Do problematiky lokálnych komunikačných systémov patria:
· prenosové média, ich vlastnosti a využitie,
· topológia sietí, t.j. vzájomné prepojenie počítačov,
· riadenie prenosu údajov,
· spolupráca aplikačných procesov.
7.1.1. Model lokálnych komunikačných systémov
Pre úspešnú implementáciu lokálnych komunikačných systémov bol vytvorený
štandartný model sieťovej architektúry označovaný ISO/OSI (ISO Open Systems
Interconnection Standard).
Model OSI popisuje komunikáciu medzi počítačmi, ako hierarchiu 7 vrstiev
technických a programových prostriedkov. Každá vrstva zabezpečuje funkciu potrebnú pre
vrstvu vyššiu a využíva služieb nižších (obrázok 7.1.). Medzi jednotlivými vrstvami sú
definované rozhrania a medzi prvkami rovnakej vrstvy sú definované pravidlá komunikácie.
aplikačná
prezentačná
relačná
transportná
sieťová
linková
fyzická
7.1. Model ISO/OSI
Základné vlastnosti jednotlivých vrstiev modelu ISO/OSI:
Fyzická vrstva definuje fyzické prepojenie medzi prvkami siete, jeho mechanické vlastnosti
(konektor, typ média), elektrické vlastnosti (napäťové úrovne) a metódy prístupu k
prenosovému médiu.
Linková vrstva definuje pravidlá pre predávanie správ, ktoré sú prenášané v pevne
definovaných rámcoch tzv. paketoch
Transportná vrstva definuje adresáciu počítačov, zabezpečuje vytváranie dočasných
komunikačných spojení medzi nimi a rozkladanie správ do paketov.
Sieťová vrstva definuje spôsob, akým sa pakety pohybujú v sieti.
Relačná vrstva vytvára logické rozhranie pre aplikačné programy, ktoré využívajú služby
siete. Definuje spôsob komunikácie programov.
Prezentačná vrstva transformuje prenášané údaje, zabezpečuje prevody pre kompatibilné
počítače, kompresiu a utajovanie prenášaných údajov.
Aplikačná vrstva je konečnou vrstvou štandardných aplikačných programov, ktoré využívajú
sieť.
Strana 97
Okrem vlastnej definície jednotlivých vrstiev modelu ISO/OSI je nutné definovať
základne atribúty, ktoré môžu výrazne ovplyvòova
ť výkonnosť celého komunikačného
systému:
a) Rozľahlosť siete je definovaná ako pomer medzi oneskorením signálu v sieti τ a
strednou dobou prenosu jedného paketu t0 pri danej prenosovej rýchlosti:
a= τ / t0
Siete kde a > 1 sa označujú ako rozsiahle a pre a < 1 sa označujú ako lokálne.
b) Prenosné médium realizujúce vlastný prenos informácií vo veľkej väčšine využíva sériový prenos po nesymetrickom
(koaxiálnom) alebo symetrickom (twisted pair) vedení. Symetrické vedenie známe z telefónnych káblov sa môže používať
ï ako
bu
tienené (STP - Shielded Twisted Pair) alebo netienené (UTP - Unshielded Twisted Pair). Prenosová rýchlosť u obidvoch typoch sa
pohybuje okolo 10 Mb/s.
Stále viacej sa začínajú uplat
òovať aj svetlovodné vlákna, ktorých prenosová
rýchlosť je až do 1 Gb/s.
c) Topológia určuje architektúru priameho prepojenia jednotlivých pracovných staníc.
Druh použitej topológie má vplyv na celý rad vlastností komunikačnej siete:
· rozšíriteľnosť - možnosť ľahkého doplòovania nových staníc,
· rekonfigurovateľnosť - možnosť modifikácie pri poruche niektorej časti siete,
· spoľahlivosť - možnosť výpadku časti siete bez vplyvu na jej celkovú
funkčnosť,
· výkonnosť - efektívne využívanie všetkých prvkov siete
Najznámejšie sú topológie zbernicová, hviezdicová, stromová a kruhová, ostatné
druhy topológií sú väčšinou kombináciou predchádzajúcich druhov.
Zbernica
Zbernicová sieť pozostáva z úseku prenosového média - zbernice, ku ktorej sú
pripojované jednotlivé pracovné stanice siete. Pre riadenie zbernicových sietí sa používa celá
rada deterministických aj nedeterministických metód, ktoré využívajú skutočnosť, že signál
vysielaný jednou stanicou je prijatý ostatnými stanicami len s malým oneskorením.
Základné vlastnosti zbernicových sietí sú:
· pasívne médium
· ľahké pripojovanie staníc k médiu
· odolnosť proti výpadku staníc
7.2. Zbernicová topológia
Hviezda
S tra na 98
Elektronické počítačové systémy
Základom siete typu hviezda je centrálny uzol, ku ktorému sú samostatnými linkami
pripojené jednotlivé stanice. Do centrálneho uzla (hub) prichádza signál z jednej linky a ten je
rozposielaný do všetkých ostatných pripojených liniek. Centrálny uzol môže byť bu
ï pasívny,
v ktorom je signál iba posúvaný ïalej, alebo aktívny, v ktorom je prijatý signál navyše
zosilovaný na požadovanú úroveò. Pre riadenie tohto typu sietí sa používajú podobné metódy
ako u zbernicových sietí.
7.3. Hviezdicová topológia
Základné vlastnosti sietí typu hviezda sú:
· dvojbodové zapojenie medzi stanicami a centrálnym uzlom je možné ľahko
realizovať
· sieť je odolná voči výpadku jednotlivých staníc a liniek
· sieť je citlivá na poruchu centrálneho uzla
Strom
Tento typ topológie je v podstate rožírením topológie typu hviezda, pričom čiastočne
odstraòuje citlivosť na výpadok centrálneho uzlu. Pri výpadku niektorého z uzlov je aspoò
časť siete schopná prevádzky. Pre riadenie tohto typu sietí sa používajú podobné metódy ako
u zbernicových sietí.
Základné vlastnosti sietí typu hviezda sú:
· sieť je odolná voči výpadku jednotlivých staníc
· sieť je citlivá na poruchu uzlov
· ľahká rozšíriteľnosť
· dvojbodové zapojenia
Strana 99
7.4. Stromová topológia
Kruh
Jednotlivé stanice sú v kruhových sieťach prepojené spojmi, ktoré sú využívané len
v jednom smere. Signál vyslaný jednou stanicou je postupne predávaný ostatným staniciam
zapojeným v sieti až sa vráti ku stanici, ktorá ho odoslala. Kruhové siete používajú pre
riadenie deterministické metódy.
Základné vlastnosti sietí typu hviezda sú:
· ľahká využiteľnosť svetlovodov pre realizáciu dvojbodových jednosmerných
zapojení
· možnosť kombinácie rôznych prenosových médií
· citlivosť na výpadok ľubovolného prvku siete
S tra na 100
Elektronické počítačové systémy
7.5. Kruhová topológia
Uvedené topológie sú tzv. elektrické. Na vlastnosti siete má ale vplyv aj topológia
logická (metódy spolupráce staníc) a topológia fyzická (spôsob vedenia káblov)
Ïalšími dôležitými vlastnos
ťami sú kódovanie a modulácia, kapacita prenosového
kanálu, synchronizácia a zdieľanie prenosového média.
7.1.2. Zbernicové siete – metódy riadenia
Patria k najrozšírenejším typom sietí. Ich hlavnou prednosťou je pomerne jednoduché
pripojenie nových staníc k pasívnemu prenosovému médiu. Určitou nevýhodou je značný
vplyv prenosového média na parametre siete, ako je rýchlosť prenosu, dĺžka segmentu média
a počet pripojených staníc na segment. Existuje však možnosť vzájomného prepojenia
segmentov pomocou opakovačov (obrázok 7.6. Topológia zbernicových sietí).
Dôležitým faktorom, ktorý taktiež vplýva na výkonnosť celej siete sú metódy riadenia
prenosu údajov po sieti. Nakoľko zbernicová, hviezdicová a stromová topológia sa opierajú o
dvojbodové spojenia, tak aj metódy riadenia používané v týchto topológiách sú rovnaké alebo
veľmi podobné.
7.1.2.1. Statické rozdelenie kapacity kanála
Pre pevné rozdelenie kapacity prenosového kanála sa využíva frekvenčný alebo časový
multiplex.
Frekvenčný multiplex (FDMA – Frequency Division Multiple Access) je založený na
rozdelení frekvenčného pásma celého kanála na niekoľko podkanálov, pričom každý z nich sa
dá použiť nezávisle (obrázok 7.7.a.). Nutnou podmienkou je dostatočná frekvenčná šírka
použitého kanála. Frekvenčný multiplex sa využíva hlavne v širokopásmových sieťach.
Časový multiplex (TDMA – Time Division multiple Access) je založený na tom, že
postupne priraďuje celú šírku prenosového kanála jednotlivým staniciam. Každej pripojenej
stanici je vyhradený určitý časový úsek - slot, v ktorom môže vysielať údaje
Strana 101
seg
s ta
opa
7.6. Topológia zbernicových sietí
určitej veľkosti. Prideľovanie časových úsekov jednotlivým staniciam sa periodicky opakuje.
Celková dĺžka všetkých časových úsekov pre všetky stanice sa nazýva rámec. Z dôvodu
bezchybovej komunikácie je nutné doplniť do každého rámca synchronizačný časový úsek
(obrázok 7.7.b.).
7.7.a. Frekvenčný multiplex
S tra na 102
Elektronické počítačové systémy
7.7.b. Časový multiplex
Hlavnou nevýhodou tejto metódy riadenia je neschopnosť prispôsobiť sa nárazovému
charakteru požiadaviek jednotlivých staníc, takže je vhodné doplniť ho o algoritmus, ktorý by
sledoval napríklad požiadavky všetkých pripojených staníc.
7.1.2.2. Centralizované riadenie
Najjednoduchší spôsob ako riadiť prístup jednotlivých staníc náhodného charakteru k
prenosovému médiu je vyhradiť jednu zo staníc ako riadiacu. Riadiaca stanica prideľuje
kapacitu prenosového média na základe žiadostí podriadeným staniciam. Pre prenos žiadostí
však treba obetovať časť prenosovej kapacity média, prípadne vytvoriť špeciálny samostatný
podkanál pre žiadosti. Ďalším nedostatkom týchto riadiacich metód je závislosť siete na
spoľahlivosti riadiacej stanice.
Prideľovanie na výzvu
Najstaršou metódou prideľovania kapacity prenosového kanála je cyklická výzva, pri
ktorej centrálna stanica postupne vyzýva stanice podriadené. Ak má podriadená stanica
pripravené údaje, odošle ich, inak len potvrdí výzvu alebo vôbec neodpovie (obrázok 7.8.)
Cyklická výzva je vhodná pri vysokom rovnomernom využití kapacity prenosového kanála.
Pre malé zaťaženie a veľký počet staníc je oneskorenie signálu zbytočné veľké.
7.8. Cyklická výzva
Určité vylepšenia obsahuje metóda, ktorá umožňuje rozoznať, či v danom okamihu
vysiela jedna alebo viacej staníc. Jedná sa o binárne vyhľadávanie, pri ktorom sú stanice
rozdelené do dvoch rovnako veľkých skupín. Tie sú ďalej rozdeľované
00
E 11
C 011
B
D
10
010
Strana 103
7.9. Binárne vyhľadávanie a adresácia
rovnakým spôsobom, až vzniknú skupiny obsahujúce práve jednu stanicu (obrázok 7.9.).
Postup vyhľadávania aktívnej stanice je taký, že riadiaca stanica postupne vyzýva skupiny
staníc od koreňa stromu a aktívne stanice odpovedajú signálom. Ak je v skupine len jedna
aktívna stanica, môže zahájiť prenos. A ak je aktívnych staníc viac, riadiaca stanica klesne o
úroveň nižšie a výzvu opakuje.
Binárne vyhľadávanie je efektívne pri veľkých záťažiach a metóda cyklickej výzvy
vykazuje lepšie výsledky pri veľkých záťažiach. Ak je prispôsobená úroveň, od ktorej sa
prechádza binárny strom zmeranej záťaži, je možné dosiahnuť optimálne výsledky. Táto
metóda sa označuje ako metóda adaptívnej výzvy.
7.1.2.3. Distribuované riadenie
Tento spôsob riadenia odstraňuje závislosť na správnej funkcii riadiacej stanice. U
niektorých jednoduchších metód však môže spôsobiť problém obsadenia prenosového média
jednou dlhšie vysielajúcou stanicou. Medzi najznámejšie distribuované metódy riadenia patrí
rezervácia prenosového kanála, binárne vyhľadávanie (prioritný prístup) a logický kruh.
Rezervácia prenosového kanála
Prenosový kanál sa prideľuje staniciam na základe žiadostí, ktoré sa evidujú v tzv.
rezervačnom rámci. Pre každú stanicu je pridelený minislot dĺžky zodpovedajúcej šíreniu
signálu médiom, v ktorom môže požiadať o pridelenie prenosového kanála. Datové sloty sú
prideľované v poradí minislotov v rezervačnom rámci, metóda prideľovania beží súčastne na
všetkých pripojených staniciach. V podstate sa používajú dve rezervačné metódy, bitová
mapa a „round - robin“ (obrázok 7.10.). Kým metóda bitovej mapy vyhodnocuje rezervačný
rámec ako celok, metóda „round - robin“ poskytne prenosový kanál okamžite tej stanici,
ktorej je pridelený minislot a žiada o vysielanie údajov
7.10. Rezervácia prenosového kanálu
Binárne vyhľadávanie
Všetkým staniciam pripojeným k prenosovému médiu je jednoznačne priradená
binárna adresa. Každá stanica začína vysielanie vyslaním adresy od najvyššieho bitu, ak v
daný okamih vysiela viac staníc, vo vysielaní môžu pokračovať iba tie ktoré majú zhodné bity.
Po odvysielaní celej adresy môže zostať práve jedna aktívna stanica (obrázok 7.11.). Priorita
prístupu jednotlivých staníc k prenosovému kanálu sa definuje ich adresáciou. Pre
rovnoprávne sprístupnenie kanálu všetkým staniciam sa využíva napr. cyklická výmena
adries.
S tra na 104
Elektronické počítačové systémy
Aby bolo možné využívať metódu binárneho vyhľadávania, musia sa použiť také
prenosové médiá, ktoré umožňujú realizovať funkciu binárneho súčtu alebo súčinu viacerých
staníc (napr. zbernica s otvoreným kolektorom).
7.11. Binárne vyhľadávania
Logický kruh
Všetkým staniciam pripojeným k prenosovému médiu je jednoznačne priradená
adresa, pričom tieto adresy vytvárajú cyklickú postupnosť. Každá zo staníc obsahuje svoju
vlastnú adresu a adresu stanice, ktorá môže vysielať po nej (obrázok 7.12.). Jedna zo staníc je
vždy aktívna a v tomto stave smie odvysielať údaje, alebo predať riadenie ďalšej stanici
špeciálnym paketom - tzv. pešiak (token). Určitými nedostatkami sú štartovanie, zmena
postupnosti staníc alebo zaradenie a vypustenie novej stanice, ktoré sa musia riešiť pomocou
rekonfiguračných algoritmov.
7.12. Logický kruh
7.1.2.4. Náhodný prístup
Jednotlivé stanice uskutočňujú prístup k prenosovému kanálu na základe vlastného
odhadu, príp. pozorovania. Preto táto skupina riadiacich metód je opakom deterministických
metód riadenia.
Metódy Aloha
Tu patria najstaršie riadiace metódy využívané ešte pre riadenie rádiových sietí.
Najjednoduchším variantom je, že stanica, ktorá má pripravené údaje na vysielanie začne
vysielať bez ohľadu nato, či je obsadený prenosový kanál alebo nie. Dôsledkom toho je
väčšinou kolízia (obrázok 7.13.). Pakety poškodené pri kolízii je nutné opätovne vysielať a
interval, kedy sa bude prevádzať opakované vysielanie, je volený každou stanicou náhodne.
Strana 105
Podľa štatistických zistení je táto tzv. prostá Aloha schopná využiť kapacitu prenosového
kanálu na 18% a každý paket je pri tejto záťaži v priemere trikrát odvysielaný.
7.13. Prostá Aloha - kolízia
Taktovaná Aloha
Určitého vylepšenia je možné dosiahnuť tým, že vysielanie paketov je dovolené len v
určitých časových okamžikoch, čím sa výrazne skráti tzv. kolízny slot, ktorý v porovnaní s
prostou Alhou sa skráti až na polovicu.
Výhodou predchádzajúcich dvoch metód, prostá a taktovaná Aloha, je okamžité
odvysielanie údajov. Ak však zaťaženie siete prekročí určitú hranicu, rapídne sa zvýši
opakované vysielanie údajov a sieť sa môže dostať do zablokovaného stavu, z ktorého sa bez
modifikácie parametrov nemôže dostať. Tie riadiace metódy, ktoré sú schopné nastavovať
parameter opakovania v závislosti na záťaži sa označujú ako riadená Aloha.
Riadená Aloha
Moment opakovaného vysielania poškodených paketov je určovaný na základe
predchádzajúceho vyhodnotenia. Ak je stredná hodnota náhodne voleného opakovania 1/α, je
možné vhodnou voľbou parametra α, ktorý sa označuje ako intenzita opakovania, dosiahnuť
optimálnejšie využitie kapacity prenosového kanálu. Pre voľbu parametru α existuje mnoho
algoritmov. Napríklad sledovanie podielu doby, počas ktorej je prenosový kanál obsadený
alebo sledovanie priemerného počtu opakovania údajov. Najjednoduchším a pomerne
účinným algoritmom je rad postupne klasajúcich hodnôt parametra α, ktoré stanice postupne
využívajú pre výpočet odkladu ďalšieho opakovania.
Riadené opakovanie vysielania poškodených údajov má podstatný význam nielen pre
metódy Aloha, ale aj pre metódy, ktoré sú uvádzané ďalej. Bez riadenia nie je možné ani u
týchto metód zabezpečiť trvalú efektívnu činnosť.
Metódy CSMA
Základnou vlastnosťou CSMA (Carier Sense Multiple Access) je, že využívajú
možnosť zistenia obsadenia prenosového kanálu. To je samozrejme efektívne len pri sieťach s
malým oneskorením, teda hlavne lokálnych sieťach.
Nenaliehajúca CSMA
Stanica pred odoslaním paketu otestuje stav siete. Ak je kanál voľný, začne vysielať. V
opačnom prípade po náhodne zvolenom okamžiku sa pokúsi opäť o vyslanie. Postup sa
opakuje až do odoslania údajov. Voľba náhodne zvoleného okamžiku je väčšinou násobok
doby priechodu signálu zbernicou.
Naliehajúca CSMA
S tra na 106
Elektronické počítačové systémy
Opäť sa testuje obsadenosť kanálu. Ak je obsadený, odloží sa vysielanie na okamžik
jeho uvoľnenia. Nevýhodou tejto jednoduchej metódy je riziko kolízie staníc, ktoré čakajú na
uvoľnenie prenosového kanála.
p - naliehajúca CSMA
Vysielanie údajov predchádza otestovanie stavu prenosového kanálu. Ak je prenosový
kanál obsadený, stanica počká na jeho uvoľnenie. Ak je prenosový kanál voľný alebo sa práve
uvoľnil, začne stanica vysielať s pravdepodobnosťou p a s pravdepodobnosťou q = p-1 odloží
vysielanie o určitý malý časový úsek. Po uplynutí tejto doby sa celý postup opakuje až do
úspešného odvysielania údajov.
Voľba parametra p umožňuje optimálne využitie kanála. Ak sa p=1, ide vlastne o
naliehajúcu CSMA a ak p→0 priechodnosť prenosového kanálu sa síce zvyšuje, ale stredná
doba prenosu rastie nad všetky medze.
Metódy CSMA ako také nezabezpečujú stabilitu riadenia a preto podobne ako v
prípade metód Aloha je nutné pre udržanie nepretržitého pracovného stavu použiť vhodnú
metódu riadenia, napríklad zmenu intenzity opakovania alebo zmenu hodnoty parametra p u
p-naliehajúcej CSMA. Metódy CSMA sú vhodné pre lokálne siete.
Graf na obrázku 7.14 znázorňuje charakteristiky jednotlivých metód riadenia Aloha.
Os „S“ predstavuje priepustnosť kanálu (maximum=1) a os „G“ predstavuje zaťaženie
prenosového kanála. Vzťah obidvoch tokov, priechodzieho S a celkového G je možné
vyjadriť vzťahom
S = G . e-2G
7.14. Graf závislosti priepustnosti a zaťaženia
Metóda CSMA/CD
Už z jej názvu vyplýva, že sa jedná o určitú modifikáciu metód CSMA. Všetky
predchádzajúce metódy CSMA neboli schopné odstrániť riziko kolízie v prípadoch, keď bol
časový interval medzi zahájením vysielania dvoch staníc menší než určitá krajná hranica Toto
je dané konečnou rýchlosťou šírenia signálu v prenosovom kanále, vzdialenosťou staníc a
rýchlosťou reakcie detekčných obvodov. Ak už dôjde ku kolízií údajov značnej veľkosti,
priechodnosť siete sa znižuje.
Preto sa realizujú také prenosové kanály umožňujúce rozpoznať, že došlo ku kolízií
ešte v dobe vysielania údajov. Tým údajom, ktoré sú už porušené, pozastavujú ďalšie
Strana 107
vysielanie (obrázok 7.15.). Aby sa zabezpečilo, že kolíziu rozpoznajú všetky kolidujúce
stanice, vyšle stanica po detekcii kolízie tzv. kolíznu postupnosť. Detekovanie kolízie
vysielaných údajov je možné realizovať rôznymi spôsobmi, napríklad sledovanie napätia na
médiu alebo zbernica typu otvorený kolektor.
Detekcia kolízie zvyšuje priechodnosť prenosového kanálu u všetkých metód CSMA
(naliehajúca, nenaliehajúca a p-naliehajúca).
7.15. Odstránenie kolízie v CSMA/CD
7.1.2.5. Ethernet
Najznámejším predstaviteľom lokálnych sietí so zbernicovou architektúrou je
ETHERNET. Bol vyvinutý firmou Xerox v polovici 70. rokov a neskôr bol štandardizovaný
firmami Xerox, Intel a DEC. Ako prenosové médium sa používa koaxiálny kábel s
impedanciou 50Ω, ktorý je dostatočne odolný proti parazitným kapacitám konektorov a proti
vonkajšiemu rušeniu. Rýchlosť prenosu je 10Mb/s.
Základom siete je segment, čo je vlastne zbernica dĺžky maximálne 500m, na ktorú je
možné pripojiť až 100 staníc. Rozsiahlejšie siete je možné vytvoriť prepojovaním segmentov
pomocou retranslátorov - opakovačov, pričom maximálne je možné pripojiť až 1024 staníc s
najväčšou možnou vzdialenosťou medzi najvzdialenejšími stanicami až 2.5 km.
seg
s ta
op
a kova č
7.16. Zbernicová sieť - Ethernet
S tra na 108
Elektronické počítačové systémy
Stanica je k segmentu pripojená prostredníctvom tranceiveru (zariadenie pre
vysielanie a príjem), ktorý je pripevnený priamo na kábel. Tranceiver je spojený so stanicou
krútenou dvojlinkou na vzdialenosť až 50m.
Pre riadenie siete Ethernet sa používa metóda CSMA/CD. Stanica, ktorá zistí kolíziu,
preruší ďalšie vysielanie a začne vysielať špeciálnu kolíznu postupnosť. Táto postupnosť
informuje ostatné stanice o vzniku kolízie, čím dôjde po určitom čase k uvoľneniu
prenosového média. Maximum času pre uvoľnenie prenosového média je stanovené ako súčet
dvojnásobku doby šírenia signálu sieťou a doby vysielania kolíznej postupnosti - tzv. kolízny
slot.
Údaje sú po sieti prenášané v rámcoch. Každý rámec obsahuje tieto informácie:
· adresu príjemcu
· adresu odosielateľa
· typ paketu
· vlastné údaje
· kontrolné súčty
Veľkosti jednotlivých časti rámca sú konštantné, až na veľkosť vlastných údajov. Tá
môže byť v intervale 45 až 1500 znakov. Dĺžka najkratšieho rámca je 512 bitov, čo je vlastne
veľkosť kolízneho slotu.
Algoritmus riadenia intenzity opakovania je nasledovný. Po identifikácii kolízie je
ďalší pokus o vysielanie naplánovaný na x-tý kolízny slot, kde x je náhodne zvolené číslo z
intervalu 0 < x <= 2r ; exponent r je odvodený z počtu neúspešných pokusov o odoslanie
údajov n podľa funkcie r=min(n,10).
Lokálna sieť Ethernet umožňuje využitie kapacity kanála na 80 až 95%.
7.1.3. Kruhové siete - metódy riadenia
V kruhových sieťach sú stanice navzájom prepojené jednosmernými dvojbodovými
spojmi, pričom každá stanica obsahuje posuvný register. Ten umožňuje posun údajov jedným
smerom: od vysielajúcej stanice postupne cez všetky ďalšie pripojené do kruhu, až sa opäť
vráti k vysielajúcej stanici. Z toho vyplývajú určité pozitívne, ale aj negatívne vlastnosti.
Medzi pozitívne patria hlavne možnosť použitia metód distribuovaného riadenia aj na veľké
vzdialenosti a jednoduchá realizácia dvojbodových spojení pomocou svetlovodov, ktoré
zabezpečujú vysokú odolnosť voči vonkajšiemu rušeniu. Hlavnou negatívnou vlastnosťou je
závislosť siete na správnej činnosti všetkých komponent.
Pre kruhové siete sa používajú 3 základné metódy riadenia: tzv. Newhalllova sieť,
Pierceova sieť a sieť s vkladaním rámcov.
7.1.3.1. Newhalova sieť (Token Ring)
V tomto type kruhových sietí koluje v kľudovom stave po sieti tzv. poverenie (pešiak token). Stanica, ktorá má pripravené údaje na vysielanie a získa poverenie, môže údaje do
kruhu vyslať. Vysielanie pozostáva zo zmeny poverania na postupnosť znakov
identifikujúcich začiatok vysielania a z vlastného vysielania údajov. Po odvysielaní správy
odovzdá stanica riadenie(vyslaním poverenia) svojmu susedovi (obrázok 7.17.).
Tento typ siete sa používa hlavne ako komunikačný prostriedok v distribuovaných
riadiacich systémoch. Pri malých záťažiach je doba prenosu určená časom, ktorý musí stanica
čakať na pridelenie poverenia a časom vlastného prenosu údajov. Čas obehu poverenia je
závislý na rýchlosti prenosu, počtu pripojených staníc a dĺžke ich registrov. Pre veľké záťaže
vykazuje tento typ siete takmer ideálne prideľovanie prenosového kanálu.
Strana 109
Klasickým predstaviteľom Newhalových sietí je IBM Token Ring, ktorý je zaujímavý
tým, že elektrickú topológiu predstavuje kruh, avšak spoje medzi jednotlivými stanicami sú
vedené tak, že vytvárajú hviezdicovú sieť. Táto topológia sa niekedy označuje ako laloková.
Koncentrátory v uzloch siete dovoľujú odpojiť jednotlivé laloky, alebo aj celé časti siete v
prípade poruchy staníc. Na prepojenie sa využívajú symetrické a optické káble.
7.17. Newhalova sieť - princíp
Ďalším zaujímavým predstaviteľom tohto typu kruhových sietí je sieť FDDI. Pre
prepojenie staníc využíva optické káble s prenosovou rýchlosťou 100Mb/s. Vzhľadom k
vysokej kapacite sa používa hlavne pre vytváranie primárnych sietí prepojujúcich pomalšie
lokálne siete a pre prepojovanie veľkých počítačov. Základnou konfiguráciou je dvojitý kruh,
pričom jednotlivé okruhy majú opačný smer prenosu. V bežnej prevádzke slúži primárny
okruh pre prenos údajov, sekundárny pre riadenie a kontrolu funkcie. Pri detekcii poruchy
okruhu, stanice susediace s poškodenou stanicou automaticky rekonfigurujú okruh - využijú
sekundárny okruh pre prenos údajov
7.1.3.2. Piercova sieť
Pamäťová kapacita kruhovej siete je rozdelená na malé segmenty -minipakety, ktoré
prenášajú jediné 16-bitové slovo. Stanica, ktorá má pripravené údaje a má voľný minipaket vo
svojom registre, obsadí ho a po obehnutí siete ho opäť uvoľní. Minipaket môže mať napríklad
nasledovnú štruktúru:
S
EF
G
AD
AS
ÚDAJE
ACK
P
1
1
1
8
8
16
2
1
Dĺžka tohto minipaketu je 38 bitov a funkcia jednotlivých bitových polí je nasledovná:
S
synchronizácia, začiatok rámca,
E/F
indikácia obsadenia rámca,
G
monitorovanie,
AD
adresa adresáta,
AS
adresa odosielateľa,
ÚDAJE
prenášané údaje,
ACK
pole odpovedí,
P
paritná kontrola.
S tra na 110
Elektronické počítačové systémy
Stanica, ktorá „naplní“ minipaket údajmi, indikuje pomocou bitu E/F jeho obsadenosť.
Minipakety, ktoré môžu mať nejakým spôsobom poškodenú adresu odosielateľa a mohli by
zbytočne zaťažovať prenosové médium, musia byť zlikvidované. K tomuto slúži monitorovací
bit G, ktorý napomáha riadiacej stanici k rozpoznaniu a likvidácii minipaketu. Bit G je v
odosielanom minipakete nastavený na hodnotu 0. Riadiaca stanica ho prenastaví na hodnotu 1
a odosielateľ údajov ho pri uvoľnení minipaketu opäť vráti na hodnotu 0. Kombináciou
zodpovedajúcou obsadenému minipaketu E/F=1 a hodnote G=1 rozpozná riadiaca stanica
hybu a minipaket uvoľní.
7.18. Pierceova sieť
Bitové pole ACK nastavuje odosielateľ na hodnotu 11 a podľa toho, aká hodnota sa
nachádza v bitovom poli, po návrate paketu môžu nastať tieto stavy:
00
údaje nemohol príjemca prevziať,
01
údaje boli prijaté,
10
údaje boli odmietnuté,
11
príjemca neodpovedá.
Najznámejším predstaviteľom tohto typu kruhových sietí je sieť Cambridge Ring,
ktorá využíva ako prenosové médium dvojice symetrických vodičov. Prenosová rýchlosť je
10Mb/s.
7.1.3.3. Vkladanie rámcov
Tento typ siete má výhodný charakter pri veľkých aj malých záťažiach. Ich nevýhodou
je zložitejšia technická realizácia. Stanica, ktorá chce vyslať paket, uloží ho do registra. Počká
na koniec paketu, ktorý stanicou práve prechádza a prepnutím prepínača predĺži sieť o
register. Keď odoslaný paket prejde sieťou a je prevzatý adresátom, vráti sa do registra, ktorý
stanica zo siete opäť odopne.
Strana 111
7.19. Vkladanie rámcov
7.2. Prepojenie lokálnych sietí
Už z názvu „lokálne siete“ je zrejmá určitá obmedzenosť tohto typu sietí. Či už ide o
kapacitu prenosového média, maximálny počet staníc alebo maximálnu vzdialenosť medzi
stanicami. S rastúcimi požiadavkami na kapacitu, rozľahlosť alebo počet staníc vzniká
potreba vzájomného prepojenia lokálnych sietí.
Prepojenie lokálnych sietí sa realizuje pomocou špeciálnych staníc, ktoré sú pripojené
ku všetkým prepojovaným sieťam. Tieto stanice sa označujú ako mosty (bridge) a smerovače
(router), v ktorých sú všetky údaje – rámce z pripojených sietí analyzované a podľa výsledku
buď likvidované alebo uložené do pamäte a následne vyslané do niektorej z pripojených sietí.
Podstatný rozdiel medzi routerom a mostom je v množstve informácií, ktoré pri
analýze využívajú. Mosty využívajú len adresné pole rámca (MAC adresy), kým routery
analyzujú predávané údaje a využívajú informácie spojené s konkrétnym sieťovým alebo
transportným protokolom.
S tra na 112
Elektronické počítačové systémy
7.2.1. Most
Most, predstavovaný špeciálnou stanicou pripojenou do všetkých prepájaných sietí,
musí zabezpečovať nasledujúce funkcie:
· keďže mostom prechádzajú rámce zo všetkých pripojených sietí, musia sa
analyzovať a na základe adresy sa buď odošle do niektorej pripojenej siete
alebo sa zlikviduje,
· prenášané rámce uloží do svojej pamäte a pošle ich do vybranej lokálnej siete.
Najjednoduchšou formou prepojenia sú dve lokálne siete s rovnakou štruktúrou
rámcov. Pomerne jednoduchou modifikáciou, rozdelením mostu na dve časti, ktoré sú
prepojené dvojbodovým spojom (napr. prenajatá linka), je možné prepojiť siete aj na veľké
vzdialenosti(obrázok 7.20.). Prepojenie pomocou mostov má pozitívny vplyv na:
· kapacitu siete – komunikácia medzi stanicami tej istej siete nezaťažuje ostatné
siete,
· odolnosť voči poruchám – porucha v jednej sieti nenaruší správnu činnosť
ostatných sietí,
· bezpečnosť – komunikáciu medzi stanicami v jednej sieti nie je možné
„odpočúvať“ v iných sieťach,
Loká ln
7.20. Prepojenie sietí pomocou mostov
Mosty môžu využívať niekoľko algoritmov pre analýzu prijatých rámcov:
· transparentné mosty,
· explicitné smerovanie,
· hierarchické smerovanie.
Transparentný most
Nutnou podmienkou prepojenia sietí pomocou transparentného mostu je jednoznačné
adresovanie a stromová štruktúra, kde uzly predstavujú mosty a hrany predstavujú
prepojované lokálne siete.
Princíp fungovania transparentného mostu je nasledujúci:
· Každý most, ktorým prechádzajú všetky rámce z pripojených sietí, si vytvára
tzv. smerovaciu tabuľku (databázu), kde uchováva adresy staníc odosielateľov.
K tejto adrese si zapamätá aj adresu siete, z ktorej rámec prišiel. Napĺňanie
údajov do smerovacej tabuľky sa nazýva „učenie“ mostu.
Strana 113
· Reakcia mostu na každý prijatý rámec môže mať tieto tri podoby:
1. rámec, u ktorého sa zistí tá istá sieť pre odosielateľa aj príjemcu je
likvidovaný,
2. rámec, ktorý prechádza do inej siete a má záznam v smerovacej tabuľke
je presúvaný do cieľovej siete,
3. rámec, ktorý nemá záznam v smerovacej tabuľke je rozposielaný do
všetkých pripojených sietí okrem siete, z ktorej prišiel.
Adre
sa stanice
28
18
26
11
31
sieť
7.21. Transparentný most
Príklad jednoduchej smerovacej tabuľky pre tri siete je na obrázku 7.21. Ak posiela
stanica 11 údaje pre stanicu 28, je mostom M2 ignorovaná. Ak sú posielané údaje medzi
stanicami 11 a 31 prechádzajú mostom M1 a M2.
Hierarchické smerovanie
Na rozdiel od predchádzajúceho algoritmu sa hierarchické smerovanie neopiera len o
konkrétne adresovanie staníc, ale využíva aj informácie definované konkrétnym sieťovým
alebo transportným protokolom. Adresa každej stanice sa teda skladá z dvojice (číslo lokálnej
siete, MAC adresa stanice).
Smerovacie tabuľky obsahujúce pre každú pripojenú sieť jeden riadok, môžu byť buď
statické alebo dynamické. Pri statických smerovacích tabuľkách sú vopred presne stanovené
informácie o adrese nasledujúceho uzlu alebo priamo cieľovej stanice. Pri dynamických
tabuľkách je možné vytvárať rôzne alternatívne cesty umožňujúce nahradiť prípadné výpadky
jednotlivých sietí alebo mostov.
Svojimi vlastnosťami, hlavne čo sa týka možnosti kombinovania rôznych sieťových
technológií, tento algoritmus sa podobá vlastnostiam smerovačov (routers).
Explicitné smerovanie
Tento algoritmus nevyužíva pre určenie cieľovej stanice smerovacie tabuľky, ale
kompletnú cestu k adresátovi si nesie samotná správa. Kompletná cesta obsahuje zoznam
mostov a sietí, ktorými má správa prechádzať.
Cesta k adresátovi môže byť všetkým staniciam vopred nadefinovaná vo forme
tabuliek. Výhodnejšie je však dynamické zisťovanie optimálnej cesty, ktoré prebieha
nasledovne:
· odosielateľ začína prenos správy tým, že vyšle špeciálny rámec, ktorý je
prostredníctvom mostov vyslaný do všetkých pripojených sietí,
S tra na 114
Elektronické počítačové systémy
· špeciálny rámec je cestou doplňovaný o adresy mostov a sietí, ktorými
prechádza,
· tie špeciálne rámce, ktoré nájdu adresáta sú ním odosielané späť odosielateľovi,
·
odosielateľ si z niekoľkých odpovedí vyberie najoptimálnejšiu cestu a tú
uvedie do záhlavia vlastnej správy.
7.2.2. Smerovač
Hlavnou úlohou smerovačov je prepojovanie lokálnych sietí s rôznymi sieťovými a
transportnými protokolmi. Klasickým príkladom mohutného využitia smerovačov je dnes
najrozšírenejšia celosvetová sieť Internet, ktorej prvkami sú prepojovacie a lokálne siete.
V prípade Internetu slúži lokálna sieť ako médium spojujúce medzi sebou smerovače, ktoré
zabezpečujú vlastné smerovanie Internetu.
Pre smerovač ako špeciálnu stanicu nie je dôležité aké typy sietí prepojuje, nakoľko
obálka paketu (pozn. paket - forma prenosu údajov) je vždy znovu vytváraná pre každú sieť
na ceste k adresátovi. Vlastný paket zostáva pritom nezmenený. Podstatným problémom je
ohraničená dĺžka paketu pre rôzne typy sieťových technológií, čo vedie ku fragmentácii a
určitým spôsobom komplikuje činnosť koncových staníc.
Strana 115
Zoznam obrázkov
1.1. Von Neumanova architektúra číslicového počítača ...................................................... 6
1.2. Obecný inštrukčný cyklus .............................................................................................. 7
2.1. Hierarchické usporiadanie CP/M ................................................................................ 19
2.2. Hierarchické usporiadanie MS – DOS ........................................................................ 20
2.3. Schéma využitia pamäte pre dva procesy .................................................................... 22
2.4.a. Automatizované prepínanie kontextu, časový
diagram prideľovania procesoru trom procesom ...................................................... 22
2.4.b. Automatizované prepínanie kontextu, stavový diagram troch procesov .................. 23
2.5. Časový diagram aktívneho čakania na dokončenie periférnej operácie ...................... 23
2.6. Časový diagram pasívneho čakania na dokončenie periférnej operácie ..................... 24
2.7. Stavový diagram procesu s tromi stavmi ..................................................................... 24
2.8. Štruktúra monoužívateľského operačného systému
umožňujúceho multitasking .........................................................................................25
2.9. Štruktúra viacužívateľského OS neumožňujúceho multitasking ................................ 26
2.10. Štruktúra viacužívateľského OS umožňujúceho multitasking .................................. 27
3.1. Postup obsluhy prerušenia ........................................................................................... 30
3.2. Pripojenie a štruktúra DMA .........................................................................................31
3.3. Plochý mechanický spínač ............................................................................................ 33
3.4. Spínač s jazýčkovými kontaktmi ..................................................................................34
3.5. Spínač využívajúci Hallov jav ..................................................................................... 34
3.6. Budiace výstupné vinutie ............................................................................................ 34
3.7. Bloková schéma zobrazovacej jednotky ......................................................................35
3.8. Princíp farebnej obrazovky .......................................................................................... 36
3.9. Vnútorná štruktúra monitora rastrového typu ............................................................. 37
3.10. Vnútorná štruktúra monitora vektorového typu ........................................................ 37
3.11. Štruktúra radiča monitora .......................................................................................... 38
3.12. Usporiadanie 24 ihličkovej hlavy .............................................................................. 42
3.13. Princíp tryskovej tlačiarne so spojitou tlačou ............................................................ 43
3.14. Princíp tryskovej tlačiarne s prerušovanou tlačou ..................................................... 43
3.15. Princíp laserovej tlače ............................................................................................... 44
3.16. Princíp odporovej dotykovej obrazovky ................................................................... 45
3.17. Princíp infračervenej dotykovej obrazovky ............................................................... 46
3.18. Usporiadanie prevodov s ľahkou guľou .................................................................... 47
3.19. Princíp digitizéru s potenciometrom ......................................................................... 48
4.1. Dvojúrovňový pamäťový systém ................................................................................ 52
4.2. Trojúrovňový pamäťový systém .................................................................................. 53
4.3. Vyrovnávacia pamäť s plne asociatívnym adresovaním ............................................. 54
4.4. Vyrovnávacia pamäť a jej adresár so stupňom asociativity s=4 .................................. 56
4.5. Závislosť SVB na počte prístupov do pamäti ............................................................. 57
4.6. Závislosť SVB na veľkosti bloku a kapacite VP ........................................................ 57
4.7. Vzťah virtuálnej a reálnej adresy ................................................................................. 59
4.8. Štruktúra slova adresára v hlavnej pamäti ................................................................... 60
4.9. Závislosť SVS na kapacite hlavnej pamäti .................................................................. 61
5.1. Prúdovo pracujúca jednotka ........................................................................................ 66
5.2. Časová postupnosť spracovania .................................................................................. 66
5.3. Obsadenie hlavnej pamäte a procesora počas vykonávania jednej inštrukcie ............. 67
5.4. Jednoduché prekrytie inštrukcií ................................................................................... 67
S tra na 116
Elektronické počítačové systémy
5.5. Prúdové spracovanie inštrukcie ................................................................................... 68
5.6. Prúdové spracovanie inštrukcií s využitím front ......................................................... 69
5.7. Varianty architektúry procesora INTEL 8086 ............................................................. 71
5.8. Priebeh toho istého výpočtu v dvoch typoch procesorov ........................................... 72
5.9. Prúdové spracovanie inštrukcií v procesoroch typu RISC .......................................... 73
5.10. Rast výkonnosti a ceny systému v závislosti na počte procesorov ........................... 74
5.11. Multiprocesorový systém Honeywell 66/60 .............................................................. 75
5.12. Závislosť relatívnej výkonnosti systému na percente V/V operácií .......................... 76
5.13.a. Program pre procesor riadený tokom údajov
b. Štruktúra procesoru riadeného tokom údajov ........................................................ 77
5.14. Realizácia hrany grafu ............................................................................................... 78
5.15. Časový diagram styku dvoch jednotiek v procesore riadenom tokom údajov .......... 79
5.16. Univerzálny procesor riadený tokom údajov ............................................................. 79
5.17. Maticový procesor ..................................................................................................... 80
5.18. Maticový modul počítača STARAN ......................................................................... 82
5.19. Funkcia bunky ........................................................................................................... 83
5.20. Jednosmerná systolická sieť s globálnym rozvodom vstupnej postupnosti .............. 83
5.21. Systolická sieť pre triedenie ...................................................................................... 84
6.1. Monitorovacia procedúra TOP .................................................................................... 88
6.2. Výber sledovaných hodnôt – Windows NT Server ..................................................... 89
6.3. Grafické zobrazenie monitorovania – Windows NT Server ....................................... 90
6.4. Vzťah modelu k modelovanému návrhu ..................................................................... 91
7.1. Model ISO/OSI ............................................................................................................ 93
7.2. Zbernicová topológia ................................................................................................... 94
7.3. Hviezdicová topológia ................................................................................................. 94
7.4. Stromová topológia ..................................................................................................... 95
7.5. Kruhová topológia ....................................................................................................... 96
7.6. Topológia zbernicových sietí ...................................................................................... 97
7.7.a. Frekvenčný multiplex ............................................................................................... 97
7.7.b. Časový multiplex ...................................................................................................... 97
7.8. Cyklická výzva ............................................................................................................ 98
7.9. Binárne vyhľadávanie a adresácia ............................................................................... 98
7.10. Rezervácia prenosového kanálu ................................................................................ 99
7.11. Binárne vyhľadávania .............................................................................................. 100
7.12. Logický kruh ........................................................................................................... 100
7.13. Prostá Aloha – kolízia ............................................................................................. 101
7.14. Graf závislosti priepustnosti a zaťaženia ................................................................. 102
7.15. Odstránenie kolízie v CSMA/CD ............................................................................ 103
7.16. Zbernicová sieť – Ethernet ...................................................................................... 103
7.17. Newhalova sieť – princíp ........................................................................................ 105
7.18. Pierceova sieť .......................................................................................................... 106
7.19. Vkladanie rámcov .................................................................................................... 107
7.20. Prepojenie sietí pomocou mostov ........................................................................... 108
7.21. Transparentný most ................................................................................................. 108
Strana 117
Literatúra
[1] Číslicové počítače - doc. Ing. Jan Hlavička, CSc.
ČVUT Praha, 1991
[2] Operační systémy - doc. Ing. František Plášil, CSc.
ČVUT Praha, 1992
[3] IBM PC - velký průvodce hardwerem - Mark Minasi
GRADA, 1993
[4] Anatomie IBM PC - Jiří Zápalka
GRADA, 1993
[5] Periférní zařízení I - doc. Ing. Miroslav Šnorek, CSc.
ČVUT Praha, 1993
[6] Windows NT Server – Michal Osif
GRADA, 1995
S tra na 118
Download

Architektúra počítačov je časť vedy o počítačoch, študujúca