Architektúry počítačov - ARP


Prednáška s cvičením sa koná každý štvrtok od 14:25 do 16:50 v P4.
Prvý záverečný písomný test bude vo štvrtok 9.6. o 10.00 v P10.
Druhý záverečný písomný test bude v stredu 22.6. o 10.00 v P12.
Posledný záverečný písomný test v tomto semestri bude v utorok 28.6. o 10.00 v P16.
Na test môžte prísť, aj keď Vám AIS nedovolí sa prihlásiť.
Odporúčaná literatúra a ďalšie zdroje informácií.

Zadania domácich úloh - séria A (doc, pdf), séria B (doc, pdf), séria C (doc, pdf), séria D (doc, pdf),
séria E (doc, pdf), séria F (doc, pdf), séria G (doc, pdf), séria H (doc, pdf)
  Témy prednášok
18.2.2016 História spracovania informácií. Princípy počítačov von Neumannovho typu.
Technologické vývojové stupne konštrukcie počítačov (generácie), súčasné technologické hranice.
Gruska, Havel, Wiedermann, Zelený: Počítačová revolúcia, SOFSEM'82
História vývoja počítačov, študijný materiál k prednáške
25.2.2016 Realizácia jednoduchých logických funkcií, kombinačné obvody.
Logické funkcie viacerých premenných, normálne formy.
Zjednodušovanie kombinačných obvodov - metóda Quine-McCluskey, Karnaughove mapy
Základné kombinačné obvody a ich využitie (kóder, dekóder, multiplexor, demultiplexor).
Študijné materiály - Cheng-Wen Wu (pdf): Intro, Boolean algebra, Simplification, Combinational components
Úlohy na precvičenie - séria A (pdf, doc) - riešenia odovzdať písomne do 3. 3. 2016, 14:25
3.3.2016 Sekvenčné obvody. Princíp činnosti preklápacích obvodov RS, D, JK.
Uchovávanie informácie v registri - paralelné, posuvné, kruhové registre, počítadlo.
Cheng-Wen Wu (pdf): Synchronous Sequential Logic
Na simuláciu činnosti obvodov budeme používať simulátor Logisim (lokálna inštalácia pre Win).
Úlohy k prednáške a na cvičenie - séria B (pdf, doc) - riešenia odovzdať do 10. 3. 2016, 14:25
Applety simulácie činnosti jednoduchých obvodov
10.3.2016 Realizácia konečnostavových automatov pomocou sekvenčných obvodov.
Aritmeticko-logická jednotka procesora - ALU.
Binárna aritmetika, reprezentácia prirodzených čísel v inverznom a dvojkovom doplnkovom kóde.
Cheng-Wen Wu (pdf): Data representations,Synchronous Sequential Logic
Úlohy k prednáške a na cvičenie - séria C (pdf, doc) - riešenia odovzdať do 17. 3. 2016, 14:25
17.3.2016 Obvodové radiče, realizácia základných funkčných a riadiacich prvkov počítača.
Riadenie jednoduchého výpočtového cyklu s registrom a ALU.
Pamäťová bunka - organizácia pamäťových buniek do pamäťovej matice.
Cheng-Wen Wu (pdf): Sequential Logic, Storage components, Asynchronous Sequential Logic (Introduction)
24.3.2016 Programovateľné radiče, procesor.
Vnútorné zbernice procesora, registre, aritmeticko-logická jednotka,
riadiace slovo, zabezpečenie časovej postupnosti spracovania.
Časový priebeh strojového cyklu, riadenie pomocou mikroinštrukcií.
Úlohy k prednáške a na cvičenie - séria D (pdf, doc) - riešenia odovzdať do 31. 3. 2016, 14:25
(zatiaľ nekompletný) text Návrh jednoduchého procesora, podľa ktorého robíme simuláciu.
31.3.2016 Riešenie komunikácie s operačnou pamäťou z pohľadu procesora.
Realizácia cyklov a podmienených skokov.
Návrh riešení komunkácie s ostatnymi zariadeniami.
Úlohy - séria E (pdf, doc) - riešenia odovzdať do 7. 4. 2016, 14:25
7.4.2016 Strojová inštrukcia. Spôsob zápisu, operačný kód, operandy, režimy adresácie.
Charakteristické typy inštrukcií, význam a využívanie súčastí procesora pri ich spracovaní
(registre, príznaky, zásobník, stavové slovo, zmena riadenia, sw prerušenie, maskovanie prerušenia).
Architektúra procesorov Intel x86. Seriál o Assembleri z PC-Revue.
Zaradenie vykonávania strojových inštrukcií do programov vo vyšších jazykoch.
texty k modulu strojové inštrukcie
Úlohy - séria F (pdf, doc) - riešenia odovzdať písomne do 14. 4. 2016, 14:25
14.4.2016 Časové členenie vykonávania inštrukcie. Realizácia vykonania inštrukcie pomocou mikroprogramu.
Urýchlenie spracovania inštrukcií, paralelizácia, zreťazenie inštrukcií.
Viacvláknové spracovanie, superskalárne systémy.
Predspracovanie inštrukcií, vykonávanie mimo poradia.

Na stránke o softvérovej optimalizácii nájdete odkazy na materiály od Agnera Foga :
1. časť - optimalizácia kódu v C++, na záver aj pomocou vnoreného asembleru (dá sa použiť aj v iných prostrediach)
2. časť - špeciality asembleru pre jednotlivé platformy, prepájanie knižníc, na záver aj práca s vektorovými inštrukciami
3. časť !! - detailná architektúra súčasne používaných mikroprocesorov (aj s ukážkami v asembleri) - zreťazenie, predikcie ...
4. časť - tabuľky - rýchlosť spracovania jednotlivých inštrukcií

Príklady na vnáranie asm do Pascalu - rýchly prehľad - v Indirect Addressing aj využitie inštrukcie LEA
Jednoduchý tutoriál o vkladaní asembleru do Free Pascalu
Učebnica assembler 86 (len pre 16 bit 80286)

Prehľad inštrukcií asembleru Intel x86 (aj rozšírené inštrukcie SSE).
Úlohy - séria G (pdf, doc) - riešenia odovzdať písomne do 28. 4. 2016, 14:25
28.4.2016 Viacúrovňový pamäťový systém, rýchle vyrovnávacie pamäte, asociatívny prístup.
Efektívne využívanie operačnej pamäte, podpora segmentácie a stránkovania, virtualizácia pamäte.
Viacprocesorové systémy, riadenie prístupu k spoločným zdrojom.
Koherencia vyrovnávacích pamätí, MESI algoritmus.
Slajdy k pamäťovej hierarchii
What Every Programmer Should Know About Memory

Úlohy - séria H (doc, pdf) - riešenia odovzdať písomne do 5. 5. 2016, 14:25
Do uvedeného termínu môžete odovzdávať ešte aj riešenia série G.

5.5.2016 Spôsoby komunikácie procesora prostredníctvom zbernice s operačnou pamäťou a vonkajšími zariadeniami.
Komunikácia cez vstupno-výstupné brány, prerušenie, priamy prístup do pamäte.
Zbernice a komunikácia, pamäte.
12.5.2016 Princípy ovládania vstupno - výstupných zariadení. Funkcia radičov zariadení.
Programové zabezpečenie komunikácie procesora s vonkajšími zariadeniami.
19.5.2016 Funkcie ovládačov, spôsoby realizácie a začlenenia do operačného systému.
Monitorovanie a manažovanie zdieľaných prostriedkov výpočtového systému.
Využitie GPU vo výpočtoch.

Hodnotenie :

Hodnotenie sa akumuluje priebežne cez semester bodovanými aktivitami
(písomné úlohy (50), aktívna účasť na cvičeniach a úlohy na cvičenia (40))
a záverečným testom (v troch termínoch za 50 bodov).

Záverečný písomný test - cca 10 otázok s dôrazom na funkcionalitu

- návrh logického obvodu
- analýza sekvenčného obvodu
- štádiá priebehu vykonania inštrukcie a ich realizácia pomocou mikroinštrukcií
- jednoduchá úloha v assembleri
- hazardy pri zreťazení spracovania inštrukcií
- pamäťová matica, pamäťové bunky SRAM, DRAM, ROM
- funkcie rýchlych vyrovnávacích pamätí (cache), koherencia
- komunikácia s externými zariadeniami cez porty
- DMA komunikácia
- priebeh spracovania prerušenia

Na absolvovanie predmetu s hodnotením aspoň E je potrebné získať aspoň polovicu všetkých bodov (70).
Za každých ďalších 10 bodov bude hodnotenie zlepšené o 1 stupeň.


Odporúčaná literatúra :

D. Harris, S.Harris: Digital Design and Computer Architecture (lokálna kópia)
alebo P. Lala: Principles of Modern Digital Design (lokálna kópia)
a D. Patterson, J. Hennesy: Computer Organization and Design (lokálna kópia)

Tanenbaum: Structured Computer Organization, 5. ed., Prentice Hall, 2005
Stallings: Computer Organization and Architecture: Designing for Performance, 7. ed., Prentice Hall, 2005
Hennessy, Patterson: Computer Organization and Design, 3.ed., Morgan Kaufmann, 2007
Hennessy, Patterson : Computer Architecture, A Quantitative Approach, 4.ed., Morgan Kaufmann, 2006
Tom's Hardware
The Art of Assembly Language

Charles Babbage, Babbage Pages, Konrad Zuse Z3
John von Neumann: First Draft of a Report on the EDVAC EDSAC simulátor
Alan Turing: Proposed Electronic Calculator
Gordon Bell: Computer Structures: Readings & Examples, Computing Timeline
Computer History Museum Computer History z prednášky
Megaprocesor
Historický prehľad architektúr počítačov s obrázkami (Tim Margush)
Postup výroby procesora, AMD, Chip manufacturing, Moore's law Intel i7, Intel 2010, Intel 3G
(videá sú vo formáte mp4 - na prehratie môžete skúsiť aj VLC Meda Player)
Blokové diagramy architektúr procesorov Intel 80286, 80386, 80486, Pentium 4, Alpha 21064, PowerPC 603, SuperSPARC II.