Organizácia počítačových systémov Procesory Vnútorná pamäť Vonkajšie pamäte Vstupné a výstupné zariadenia Autor: Peter Tomcsányi Niektoré práva vyhrad

Podobné dokumenty
Úroveň strojového kódu procesor Intel Pentium Pamäťový operand Adresovanie pamäte Priama nepriama a indexovaná adresa Práca s jednorozmerným poľom Pra

test z informatiky - hardvér Test vytvoril Stanislav Horváth Vstupno - výstupné zariadenia Otázka č.1: Aké zariadenie je na obrázku? (1 bod) a) vstupn

Snímka 1

Zobrazenie čísiel v počítači Celé nezáporné čísla - čísla bez znamienka dvojková sústava iné používané sústavy - šestnástková a osmičková BCD kódovani

Prezentace aplikace PowerPoint

SLOVENSKÁ TECHNICKÁ UNIVERZITA V BRATISLAVE Fakulta informatiky a informačných technológií STU Ústav počítačových systémov a sietí ZADANIE SEMESTRÁLNE

Súhrnné špecifikácie

PoĊítaĊová sieť

Tue Oct 3 22:05:51 CEST Začiatky s jazykom C 2.1 Štruktúra programu Štruktúra programu by sa dala jednoducho popísať nasledovnými časťami, kto

Snímka 1

Počítačové siete DOCSIS

Výzva na predkladanie ponúk zadávanie zákazky podľa 9 ods. 9 zákona č. 25/2006 Z. z. o verejnom obstarávaní a o zmene a doplnení niektorých zákonov v

Paralelné algoritmy, cast c. 2

Dell OptiPlex 9010 Informácie o nastavení a funkciách

Predmet: Počítačové systémy a siete Charakteristika predmetu Žiak sa oboznámi sa so základným princípom fungovania počítača, rozvinie koncept Von Neum

2

(Microsoft Word - pr\355loha smernice \ \232pecifik\341cia)

Microsoft Word - zapis-predmetov-AiS

2.5. Dotyčnica krivky, dotykový kužeľ. Nech f je krivka a nech P V (f) (t.j. m P (f) 1). Ak m P (f) = r a l je taká priamka, že I P (f, l) > r, potom

Úvodná prednáška z RaL

Úroveň strojového kódu procesor Intel Pentium Úvod Štruktúra procesorov Intel Pentium Základné inštrukcie Vetvenia a cykly Praktické programovanie jed

Slide 1

A51

prijimacky 2014 MAT 4rocne ver A.doc

Prevodník USB/20mA

Externé mediálne karty Používateľská príručka

Ponuka Štart

iot business hub whitepaper isdd_em_New.pdf

Názov zákazky č

Snímka 1

Žiadosť o licenčnú zmluvu na podujatie Na adrese v sekcii hlavného menu kliknete na položku Používatelia. Zobrazí sa blokové menu,

Microsoft PowerPoint - Prog_p08.ppt

SAEAUT SNMP OPC Server

Import absencí z ASC

Snímka 1

Ako vybrať hliníkové disky (elektróny)

Matematický model činnosti sekvenčného obvodu 7 MATEMATICKÝ MODEL ČINNOSTI SEKVENČNÉHO OBVODU Konečný automat predstavuje matematický model sekvenčnéh

Prenosový kanál a jeho kapacita

NÁVRH UČEBNÝCH OSNOV PRE 1

Hardwarové prerušenie Nasledujúci kód ukazuje inštaláciu obsluhy časovača vrátane jeho inicializácie // inicializace časovače, přerušení každou milise

MESTO STARÁ ĽUBOVŇA Mestský úrad, Obchodná č. 1, Stará Ľubovňa P O Ž I A D A V K A na verejné obstarávanie tovarov, stavebných prác a služieb v

Paralelné algoritmy, cast c. 3

Čiastková kúpna zmluva č. Z uzavretá na základe Rámcovej dohody č. Z v zmysle ustanovení 409 a následne zákona č. 513/19

Prístupový kontrolér E inbio 16/260/460 Návod na použitie Návod na použitie Prístupový systém Kontrolér E inbio 16/260/460 Strana 1

Quick Guide for Installing Nokia Connectivity Cable Drivers

ŤAHÁK PRAKTICKÁ ČASŤ Prerekvizity: LINUX: WINDOWS: Inštalácia Oracle VirtualBoxu a vytvorenie virtuálneho stroja /návod nižšie/ Operačný system Window

Prezentácia programu PowerPoint

Pomôcka Setup Používateľská príručka

STRUČNÝ NÁVOD KU IP-COACHU

Tarifa internetového pripojenia SURFER platná od Zriaďovacie poplatky (jednorázový poplatok, alebo mesačný poplatok za prenájom) Jednorázova

Data sheet

V Ý Z V A na predkladanie ponúk bez využitia elektronického trhoviska podľa 117 zákona č. 343/2015 Z. z. o verejnom obstarávaní a o zmene a doplnení n

SRPkapitola06_v1.docx

1)

ASTI Prúdový chránič EFI EFI A Technické údaje Menovité napätie U n Menovitý prúd I n Men. reziduálny prúd

Metódy násobenie v stredoveku

Microsoft Word - skripta3b.doc

Premeňte slnečné svetlo na LED osvetlenie

Inspiron Nastavenie a technické údaje

MOPM -prednáška 9.

ECDL Syllabus V50 SK-V01

SK01-KA O1 Analýza potrieb Zhrnutie BCIME tím Vyhlásenie: "Podpora Európskej komisie pre výrobu tejto publikácie nepredstavuje súhlas

Protokol Verejná zákazka ID Vyhlasovateľ tendra Špecifikácia predmetu tendra Oprava na zariadeniach vyrábaných spoločnosťou EVPU a.s. Železničná

PowerPoint Presentation

Microsoft Word - Katalog svetla 2019

Microsoft Word - TeoriaMaR-pomocka2.doc

Návod na vytvorenie kvalifikovaného elektronického podpisu prostredníctvom občianskeho preukazu s čipom Dátum zverejnenia: Verzia: 1 Dátu

VSDC Free Video Editor stručný návod na používanie Link na sťahovanie softvéru: K prog

Resolution

Microsoft Word - Vyzva_na_predkladanie-ponuk-_zsnh IZVAR Počítačový systém.docx

Microsoft Word - 06b976f06a0Matice - Uzivatelska Dokumentacia

(ıkolské kolo-PYT)

Modem a lokálna sieť LAN Používateľská príručka

Microsoft Word - prirucka_katedry_nova

< UrbanStar > | < Philips >

SmartBalance, suspended |

!Tarifa_

NP

!Tarifa_

Vostro 3750 Technický hárok s informáciami o nastavení a funkciách

Stravné - přecenění

D01_01_001_E-Type04

Katalóg cieľových požiadaviek k maturitnej skúške

STRUČNÝ NÁVOD KU IP-COACHU

Identity Lifecycle Management

PL_FMS5713_004_

Gem o rama Je 5-valcový, multi-líniový výherný video prístroj s desiatimi fixnými hernými líniami. Hra je prístupná aj prostredníctvom mobilnej verzie

Výzva na predkladanie ponúk pre zákazku s nízkou hodnotou podľa 117 zákona č. 343/2015 Z. z. o verejnom obstarávaní a o zmene a doplnení niektorých zá

Príklad 5 - Benzén 3. Bilančná schéma 1. Zadanie príkladu n 1 = kmol/h Definovaný základ výpočtu. Na základe informácií zo zadania si ho bude v

Vostro 3300 Technický hárok s informáciami o nastavení a funkciách

ETITRAFO Jednofázové bezpečnostné a izolačné transformátory Technické údaje ETITRAFO Jednofázové bezpečnostné a izolačné transformátory Energi

Prezentace aplikace PowerPoint

PowerPoint Presentation

Algoritmizácia a programovanie - Príkazy

Vzorové riešenia úlohy 4.1 Bodovanie Úvod do TI 2010 Dôvod prečo veľa z Vás malo málo bodov bolo to, že ste sa nepokúsili svoje tvrdenia dokázať, prič

Medzinárodné menové vzťahy

Microsoft Word - mnohouholnik.doc

Microsoft Word - 16.kapitola.doc

Prepis:

Organizácia počítačových systémov Procesory Vnútorná pamäť Vonkajšie pamäte Vstupné a výstupné zariadenia Autor: Peter Tomcsányi Niektoré práva vyhradené v zmysle licencie Creative Commons http://creativecommonsorg/licenses/by-nc-sa/3/ Použité obrázky z učebnice: Andrew S Tanenbaum, Structured Computer Organization http://wwwcsvunl/~ast/books/ 1 / 26

Počítač Von Neumannovského typu (počítač s uloženým programom) Počítač má procesor (CPU), pamäť, vstupné a výstupné zariadenia Pamäť (adresovateľná pamäť) pozostáva z veľkého počtu (kedysi tisíce, dnes miliardy) malých jednotiek informácie Malé jednotky sú binárne, majú niekoľko bitov (jedno slovo ) sú očíslované číslami od adresami Teda na jednej adrese je uložené jedno niekoľkobitové číslo Program je reprezentovaný ako čísla (postupnosti bitov) a je uložený v rovnakej pamäti ako dáta Teda niektoré čísla v pamäti sú dáta, iné čísla sú inštrukcie Tie isté jednotky informácie môžu byť niekedy dátami a inokedy inštrukciami Za prvý takýto počítač sa považuje EDVAC (navrhnutý v roku 1945, dokončený v 1949, pracoval do 1962), mal pamäť 124 slov po 44 bitoch (5,5 kilobajtu) 2 / 26

Aký iný (by) mohol byť počítač? Dnes si to vieme ťažko predstaviť, ale prvé elektronické počítače neboli Von Neumannovského typu Napríklad Colossus a ENIAC programovali pomocou prepínačov (trochu ako práčka) a spojovacích káblov Iné počítače mali oddelené pamäte pre program a inštrukcie Harwardská architektúra Počítač Colossus zdroj:https://commonswikimediaorg/wiki/file:colossusjpg Pomáhal Britom počas Druhej svetovej vojny dešifrovať správy kódované nemeckými šifrovacími strojmi Enigma Bol zrejme prvým elektronickým počítačom, bol však až do polovice 7 rokov utajený, preto sa dlho za prvý 3 / 26 elektronický počítač považoval americký ENIAC

Schéma počítača s jednou zbernicou Počítač s jednou zbernicou (ISA, EISA, PCI, PCI-Express, ) Procesor Pamäť Niekoľko vstupných a výstupných zariadení (I/O devices) 4 / 26

Vykonávanie inštrukcií riadiacou jednotkou Pamäť 495 494 255 1234 27 1233 99 1232 49 1231 25 123 97 1229 112 1 119 215 Adresa Obsah Register IP (Instruction Pointer) 123 Register IP ukazuje na inštrukciu v pamäti, ktorá sa má vykonať Číslo 97 bude v interpretované ako inštrukcia programu Na adrese je uložená hodnota 215 1 Vyber inštrukciu z pamäti z miesta kam ukazuje register IP 2 Zmeň register IP tak aby ukazoval na ďalšiu inštrukciu 3 Zisti druh inštrukcie 4 Ak inštrukcia potrebuje operand z pamäti, tak zisti jeho adresu 5 Vyber operand z pamäti 6 Vykonaj inštrukciu 7 Ak inštrukcia ukladá výsledok do pamäti, tak ho ulož do pamäti 8 Pokračuj znova krokom 1 5 / 26

Procesor do ktorého registra dať výsledok Všeobecné registre (jeden z nich je IP) Adresný register, prepojený na adresnú časť zbernice ktorý z registrov preniesť do A Riadiaca jednotka (Control Unit) ktorý z registrov preniesť do B Vysiela a prijíma ktorý vstup (MBR alebo A) riadiace signály- tenké šípky Vstupné registre ALU Dátový register, prepojený na dátovú časť zbernice aká operácia +, -, +1, -1, and, or, kopíruj A, neurob nič, Aritmeticko-logická jednotka ALU aký bol výsledok operácie, nulový, záporný, výstupný register ALU hrubé šípky - tok údajov signál "čítaj" na riadiacu časť zbernice (zbernica dodá do MBR dáta za adresy v MAR) Dátová cesta (data path) signál "zapisuj" na riadiacu časť zbernice (dáta z MBR a adresa z MAR) 6 / 26

Mikroprogramovanie, CISC versus RISC Prvé počítače mali strojový kód implementovaný pomocou logických obvodov (hardvéru) Úroveň strojového kódu Úroveň logických obvodov V 6 rokoch 2 storočia sa ujal spôsob implementácie, kde je hardware jednoduchší a strojový kód je implementovaný softwarovo pomocou mikroprogramu Hardware vykonáva mikroinštrukcie a v jazyku mikroinštrukcií je naprogramovaný interpreter strojového kódu Úroveň strojového kódu Úroveň mikroprogramu Úroveň logických obvodov V 7 rokoch sa tento prístup rozšíril a umožnil vyvinúť procesory s rozsiahlym súborom inštrukcií (stovky druhov inštrukcií) Takéto procesory (a na nich založené počítače) označujeme skratkou CISC (Complex Instruction Set Computer) V 8 rokoch 2 storočia sa objavila myšlienka, že návrat k menšiemu počtu inštrukcií priamo vykonávaných hardwarom umožní urýchliť procesory Nazývame ich RISC (Reduced Instruction Set Computer) Súčasné procesory často kombinujú prístupy CISC a RISC - menší počet rýchlych jednoduchých hardwarovo vykonávaných inštrukcií a ďalšie zložitejšie inštrukcie vykonávané mikroprogramom 7 / 26

Urýchľovanie počítačov A Zrýchlime hodiny Zvyšovať rýchlosť procesorov zvýšením frekvencie hodín je už (takmer) nemožné Limit je rýchlosť šírenia elektrického signálu, teda rýchlosť svetla Pri frekvencii 1GHz je čas jedného taktu 1ns Elektrický signál prejde vo vákuu za 1ns dráhu 3cm, v kremíku asi 2cm Pri 1GHz je to len 2cm To už môže byť menej, než je dĺžka spoja medzi časťami procesora B Paralelizmus vo vnútri procesora Pipelining Dvojitý pipelining Superskalárna architektúra C Paralelizmus mimo procesora SIMD, polia procesorov Multiprocesorové systémy Multipočítačové systémy, clustre počítačov 8 / 26

Pipelining (prúdové spracovanie) Problémom pipeliningu sú podmienené skoky v programe Skok je strojová inštrukcia, ktorá zmení register IP, teda spôsobí, že ako ďalšia sa nevykoná inštrukcia na nasledujúcej adrese, ale nejaká iná Podmienený skok je skok, ktorý zmení IP len keď je splnená nejaká podmienka Preto procesory implementujú algoritmy predpovedania (predvídania) skokov (branch prediction) 9 / 26

Dvojitý Pipelining Základná myšlienka je jednu inštrukciu "poslať" do jedného pipeline a nasledujúcu paralelne do druhého Zásadným problémom je dátová závislosť, keď inštrukcia na svoje vykonanie potrebuje dáta vypočítané bezprostredne predošlou inštrukciou Také dve inštrukcie nemožno vykonať paralelne Problém možno čiastočne riešiť v procesore vykonávaním inštrukcií mimo poradia (v inom poradí než nasledujú v programe) alebo môže programátor (resp prekladač vyššieho jazyka) napísať program tak, aby minimalizoval dátovú závislosť medzi dvomi po sebe idúcimi inštrukciami "Rozpojením" dvojitého pipeline (a zdvojnásobením počtu registrov) vznikne procesor, ktorý vie vykonávať naraz dva spracovať naraz dva nezávislé programy (Intel to nazýva hyperthreading) 1 / 26

Superskalárna architektúra 11 / 26

SIMD - Single Instruction, Multiple Data Pole procesorov (array processor) Jedna riadiaca jednotka riadi viacero procesorov, z ktorých každý má svoju pamäť a aritmeticko-logickú jednotku Prvýkrát použité na počítači ILLIAC IV (1972) V súčasnosti sa takáto architektúra nepoužíva Vektorový procesor (vector processor) - procesor má len jednu aritmeticko-logickú jednotku, ktorá dokáže naraz spracovať (napríklad sčítať) dve k-tice čísiel z vektorových registrov Prvýkrát použité na počítači Cray-1 (1974), stále sa produkujú ich nasledovníci Myšlienka SIMD sa uplatňuje aj v procesoroch Intel Pentium - Streaming SIMD Extensions (SSE,SSE2, SSE3, SSSE3 a SSE4) FPU (aritmeticko-logická jednotka pôvodne určená na operácie s reálnymi číslami môže interpretovať svoj M-bitový vstup buď ako jedno číslo, alebo ako niekoľko N-bitových (M=k*N) čísiel a dokáže naraz urobiť operáciu medzi dvomi takými operandmi ARM NEON je implementácia rovnakej základnej myšlienky v procesoroch ARM 12 / 26

Multiprocesorové počítače Viacprocesorový počítač s jednou spoločnou pamäťou Prístupy k zdieľanej pamäti môžu spomaľovať prácu celého počítača Viacprocesorový počítač s lokálnou pamäťou pre každý procesor Môže byť rýchlejší Má aj spoločnú zdieľanú pamäť Viacjadrový procesor môžeme z pohľadu programátora považovať za viacprocesorový počítač, ktorý má všetky procesory integrované v jednom čipe 13 / 26

Vnútorná pamäť Je to vlastne pole dĺžky 2M pozostávajúce z S-bitových hodnôt - slov V súčasnosti je väčšinou S=8, teda pamäť sa adresuje po bajtoch N-bitový procesor, dve možné definície: Má N-bitovú dátovú zbernicu (vie preniesť N-bitov z/do pamäti v jednom cykle) Má N-bitové všeobecné registre a aritmeticko-logickú jednotku (vie vo svojom vnútri pracovať s N-bitovými hodnotami) Často je to to isté, ale nemusí to tak byť vždy Súčasné N-bitové procesory majú väčšinou N deliteľné 8, teda pracujú naraz s niekoľkými bajtami 14 / 26

Poradie bajtov v pamäti 32-bitový register Pamäť adresovaná po bajtoch Little endian 4 1 Prenes 4 bajty z adresy 142 do registra 1423 1422 1421 4 142 1 Big endian 1 4 Názvy Little endian a Big endian boli použité prvýkrát v diele Johnatana Swifta Guliverove cesty (1726), pre počítače sa tieto názvy ujali vďaka článku Dannyho Cohena 15 / 26 On Holy Wars and a Plea for Peace (198)

Cache pamäť Je rýchlejšia ale menšia než vnútorná pamäť, ale drahšia a menšia Uchováva najčastejšie používané časti vnútornej pamäte Využíva sa princíp lokality - v istom časovom intervale program používa len obmedzenú časť svojej pamäte Cache býva rozdelená na bloky (cache lines) Bloky sa vždy čítajú celé Napr ak je blok 64 bajtov a program číta z adresy 26, tak sa prečíta časť pamäti od adresy 256 po adresu 319 Viac cache pamätí, napr L1 na čipe procesora, L2 mimo čipu, ale zapuzdrená s procesorom, L3 na doske Oddelená L1 cache pre inštrukcie a dáta podporuje pipelining - možno zároveň pristupovať k inštrukcii aj k dátam priemerný čas prístupu=c+(1-h)*m c - čas prístupu do cache m - čas prístupu do pamäte h - hit ratio - číslo medzi a 1 16 / 26

Vonkajšia pamäť Menšia kapacita, vyššia rýchlosť, vyššia cena Väčšia kapacita, nižšia rýchlosť, nižšia cena Hierarchia druhov pamätí 17 / 26

Magnetické disky 18 / 26

RAID Redundant Array of Inexpensive Disks Využiť paralelizmus v práci viacerých diskov na urýchlenie práce (podobne ako u procesorov) Využiť rozdelenie údajov na viac diskov na zvýšenie spoľahlivosti V niektorých prípadoch sa dajú dosiahnuť oba ciele naraz Článok Patterson et al, 1988 Opakom je SLED - Single Large Expensive Disk V súčasnosti sa namiesto Inexpensive číta Independent 19 / 26

RAID Redundant Array of Inexpensive Disks Využiť paralelizmus v práci viacerých diskov na urýchlenie práce (podobne ako u procesorov) Využiť rozdelenie údajov na viac diskov na zvýšenie spoľahlivosti V niektorých prípadoch sa dajú dosiahnuť oba ciele naraz Článok Patterson et al, 1988 Opakom je SLED - Single Large Expensive Disk V súčasnosti sa namiesto Inexpensive číta Independent 2 / 26

Stripe = jedno "poschodie" A1 a A2 tvoria jeden stripe, A3 a A4 druhý, n = počet diskov v poli RAID A1 A2 A3 A4 A5 A6 A7 A8 RAID 1 dáta sú rozdelené na bloky (stripe units) jednotnej veľkosti (desiatky až stovky KB) Striping - bloky dát sa rozložia postupne na niekoľko (2 alebo viac) diskov Kapacita poľa je n-násobok kapacity najmenšieho disku Zrýchli sa rýchlosť čítania aj zápisu veľkých súborov (až nnásobne) Spoľahlivosť sa ale zníži lebo porucha jedného disku znamená poruchu celého poľa A1 A1 A2 A2 A3 A3 A4 A4 RAID a RAID 1 potrebuje aspoň 2 disky (teda n >= 2) Mirroring - každý blok dát sa zapíše na každý disk (teda každý blok má n kópií) Kapacita poľa sa rovná kapacite najmenšieho použitého disku Zvýši sa spoľahlivosť - môže vypadnúť až n-1 diskov a pole zostáva funkčné Rýchlosť čítania sa môže pri dobrej implementácii zvýšiť až n-násobne Rýchlosť zápisu je mierne nižšia 21 / 26 než rýchlosť zápisu jedného disku

RAID 2 prvé 4 bity zakódované do 7 bitov druhé 4 bity zakódované do 7 bitov Bit 1 Bit 2 Bit 3 Bit 4 Bit 5 Bit 6 Bit 1 Bit 2 Bit 3 Bit 4 Bit 5 Bit 6 Bit 7 Bit 7 Bit 1 Bit 2 Bit 3 Bit 4 Bit 5 Bit 6 Bit 7 Bit 1 Bit 2 Bit 3 Bit 4 Bit 5 Bit 6 Bit 7 Dáta sa ukladajú po skupinách bitov (napr po 4 bitoch) Používa sa Hammingov kód, ktorý dokáže opraviť chyby, napríklad ak 4 bity zakódujeme do 7 bitov s pridaním troch paritných bitov (kontrolných súčtov modulo 2 resp xor), tak dokážeme opraviť jednu chybu V praxi sa nepoužíva lebo pre efektívny zápis musia byť otáčky diskov synchronizované Príklad Hammingovho kódu Dátové bity 1 Kontrolné súčty 1 1 1 1 xor xor = 1 Príklad opravy jednej chyby Chybný bit 1 1 1 Nesedia tieto dva kontrolné súčty 22 / 26

RAID 3, 4, 5 a 6 Dokážu nahradiť jeden chybný disk ak vieme, ktorý to je Parity počítajú operácie XOR RAID 3, 4 a 5 potrebujú aspoň 3 disky a kapacita je (n-1)-násobok kapacity najmenšieho disku XOR je sama sebe inverzná, preto sa pri výpadku hociktorého disku dá jeho obsah dopočítať ako XOR ostatných diskov RAID 6 je ako RAID 5 ale má 2 kópie parity, potrebuje aspoň 4 disky, ma kapacitu (n-2)-krát kapacita najmenšieho disku 23 / 26

Optické disky 24 / 26

Vstupné a výstupné zariadenia Radič zariadenia (controller) je elektronika, ktorá slúži na pripojenie zariadenia ku zbernici Radič môže byť veľmi jednoduchý (napr klávesnica) alebo to môže byť celý samostatný počítač s vysokým výkonom (grafická karta) Programátor programuje povely pre radič a až ten riadi samotné zariadenie Radiče obsahujú svoje registre a niekedy aj väčšie úseky pamäte 25 / 26

Vstupné a výstupné zariadenia (2) Obrázok ukazuje štruktúru počítača PC s viacerými zbernicami 26 / 26