Architektura počítačů

17
1 Architektura počítačů Architektura počítačů Co to vlastně je ? Co to vlastně je ?

description

Architektura počítačů. Co to vlastně je ?. Architecture vs Organization. V angličtině poměrně ustálené pojmy Architecture atributy „viditelné“ pro programátora, tj. to co má přímý vliv na provádění programu například: instrukční soubor, formát dat, způsob adresování paměti Organization - PowerPoint PPT Presentation

Transcript of Architektura počítačů

Page 1: Architektura počítačů

11

Architektura počítačůArchitektura počítačů

Co to vlastně je ?Co to vlastně je ?

Page 2: Architektura počítačů

22

Architecture vs OrganizationArchitecture vs Organization

V angličtině poměrně ustálené pojmy V angličtině poměrně ustálené pojmy ArchitectureArchitecture

atributy „viditelné“ pro programátora, tj. to co atributy „viditelné“ pro programátora, tj. to co má přímý vliv na provádění programumá přímý vliv na provádění programu

například: instrukční soubor, formát dat, například: instrukční soubor, formát dat, způsob adresování pamětizpůsob adresování paměti

OrganizationOrganization z jakých částí se počítač skládáz jakých částí se počítač skládá jak jsou vzájemně propojenyjak jsou vzájemně propojeny

Page 3: Architektura počítačů

33

ArchitekturaArchitektura

v češtině je v tom zmatekv češtině je v tom zmatek někdy stejný význam jako v angličtině někdy stejný význam jako v angličtině někdy zastřešuje všechny podstatné vlastnosti:někdy zastřešuje všechny podstatné vlastnosti:

funkce - popis chování počítače jako celkufunkce - popis chování počítače jako celku struktura - popis propojení jednotlivých funkčních struktura - popis propojení jednotlivých funkčních

celkůcelků organizace - interakce bloků a řízení jejich spolupráceorganizace - interakce bloků a řízení jejich spolupráce realizace - návrh a vnitřní struktura jednotlivých blokůrealizace - návrh a vnitřní struktura jednotlivých bloků

Page 4: Architektura počítačů

44

ArchitekturaArchitektura(co je potřeba definovat)(co je potřeba definovat)

Co je potřeba aby věděl programátorCo je potřeba aby věděl programátor• datové struktury a reprezentace datdatové struktury a reprezentace dat• adresové konvenceadresové konvence• instrukční souborinstrukční soubor• registrový modelregistrový model• řízení chodu, stavy počítačeřízení chodu, stavy počítače• vstupy a výstupyvstupy a výstupy

Page 5: Architektura počítačů

55

1. Datové struktury, 1. Datové struktury, reprezentace datreprezentace dat

způsob uložení dat v počítačizpůsob uložení dat v počítači mapovací funkce mezi reálným mapovací funkce mezi reálným

světem a vnitřním uloženímsvětem a vnitřním uložením minimální a maximální velikost minimální a maximální velikost

adresovatelné jednotkyadresovatelné jednotky

Page 6: Architektura počítačů

66

2. 2. Adresové konvenceAdresové konvence

definice způsobu, jak přistupovat k definice způsobu, jak přistupovat k datovým strukturámdatovým strukturám segment - offsetsegment - offset lineární adresacelineární adresace

velikost pamětivelikost paměti „„povolená“ místapovolená“ místa

Page 7: Architektura počítačů

77

3. 3. Instrukční souborInstrukční soubor

definice přechodové funkce mezi definice přechodové funkce mezi stavy počítačestavy počítače

formát instrukceformát instrukce způsob zápisuzpůsob zápisu možnosti adresování operandůmožnosti adresování operandů

Page 8: Architektura počítačů

88

44. . Registrový modelRegistrový model

Rozlišování registrů procesoru:Rozlišování registrů procesoru: Podle volby, určení registru:Podle volby, určení registru:

explicitní / implicitní registrexplicitní / implicitní registr Podle funkce registru:Podle funkce registru:

řídící registr / registr operanduřídící registr / registr operandu

Page 9: Architektura počítačů

99

55. . Řízení chodu, stavy Řízení chodu, stavy počítačepočítače

spolupráce procesoru a ostatních spolupráce procesoru a ostatních jednotekjednotek

interakce s okolíminterakce s okolím přerušení (interrupt)přerušení (interrupt)

vnitřnívnitřní vnějšívnější

Page 10: Architektura počítačů

1010

66. . Vstupy a výstupyVstupy a výstupy

metody a způsob přenosu dat mezi metody a způsob přenosu dat mezi procesorem a ostatními jednotkamiprocesorem a ostatními jednotkami počítačem a okolímpočítačem a okolím

zahrnuje:zahrnuje: definice datových struktur („CO“)definice datových struktur („CO“) identifikace zdroje/cíle („ODKUD/KAM“)identifikace zdroje/cíle („ODKUD/KAM“) identifikace datových cest („KUDY“)identifikace datových cest („KUDY“) protokol (“JAK“)protokol (“JAK“) reakce na chybyreakce na chyby

Page 11: Architektura počítačů

1111

OrganizaceOrganizace (co je potřeba definovat) (co je potřeba definovat)

Tohle už programátor vědět nemusíTohle už programátor vědět nemusí• šíře datových cestšíře datových cest• stupeň sdílenístupeň sdílení• definice specializovaných jednotekdefinice specializovaných jednotek• paralelismyparalelismy• organizace paměti a I/Oorganizace paměti a I/O• stupeň predikcestupeň predikce

Page 12: Architektura počítačů

1212

1. 1. Šíře datových cestŠíře datových cest

základní velikost přenášené datové základní velikost přenášené datové jednotkyjednotky mezi registry procesorumezi registry procesoru mezi procesorem a pamětímezi procesorem a pamětí

Page 13: Architektura počítačů

1313

2. 2. Stupeň sdíleníStupeň sdílení

na úrovni obvodůna úrovni obvodů sdílení jednotlivých obvodů procesoru a sdílení jednotlivých obvodů procesoru a

I/O ovladače, a tedy vymezení, co je a co I/O ovladače, a tedy vymezení, co je a co není možné dělat zároveňnení možné dělat zároveň

na úrovni jednotekna úrovni jednotek sdílení ALU více procesory sdílení ALU více procesory

(např. Motorola 3150 má tři řadiče, (např. Motorola 3150 má tři řadiče, vhodně načasované, které sdílí jednu vhodně načasované, které sdílí jednu ALU)ALU)

Page 14: Architektura počítačů

1414

3. 3. Specializované jednotkySpecializované jednotky

na různých úrovních:na různých úrovních: jednotka pro výpočty v plovoucí řádové jednotka pro výpočty v plovoucí řádové

čárce (numerický koprocesor) – čárce (numerický koprocesor) – používaná jen některými instrukcemipoužívaná jen některými instrukcemi

fetch / decode / execute jednotky fetch / decode / execute jednotky (nahrání instrukce z paměti, dekódování (nahrání instrukce z paměti, dekódování instrukce, provedení instrukce) – každou instrukce, provedení instrukce) – každou z těchto činností provádí jiná jednotka z těchto činností provádí jiná jednotka procesoru (pro každou instrukci)procesoru (pro každou instrukci)

Page 15: Architektura počítačů

1515

4. 4. ParalelismyParalelismy

rozklad na úlohy, které lze rozklad na úlohy, které lze zpracovávat současně – granularitazpracovávat současně – granularita programyprogramy části programůčásti programů podprogramypodprogramy cykly, iterace ...cykly, iterace ... instrukceinstrukce

Lze pouze u nezávislých dějůLze pouze u nezávislých dějů

Page 16: Architektura počítačů

1616

5. 5. Organizace paměti a I/OOrganizace paměti a I/O

hierarchie pamětihierarchie paměti způsob vyhledávání a předávání datzpůsob vyhledávání a předávání dat

rozdělení funkcí vstupně-výstupních rozdělení funkcí vstupně-výstupních zařízení, počet I/O jednotekzařízení, počet I/O jednotek

Page 17: Architektura počítačů

1717

6. 6. Stupeň predikceStupeň predikce

schopnost „připravit se“ na očekávaný schopnost „připravit se“ na očekávaný dějděj načtení instrukcenačtení instrukce nastavení přenosu datnastavení přenosu dat

explicitní predikceexplicitní predikce statistikastatistika heuristikyheuristiky adaptivní predikceadaptivní predikce