Systém přerušení. Algoritmizace a programování. Struktura počítače - pokračování. Systémová struktura počítače pokrač.

Podobné dokumenty
Algoritmizace a programování

ŘÍZENÍ ELEKTRICKÝCH POHONŮ. Systémová struktura počítače Řízení běhu programu. České vysoké učení technické Fakulta elektrotechnická

MIKROPROCESORY PRO VÝKONOVÉ SYSTÉMY. Systémová struktura počítače

Vstup-výstup Input-Output Přehled a obsluha

Struktura a architektura počítačů

Struktura a architektura počítačů

Architektura počítače Základní bloky Provádění instrukcí

MIKROPROCESORY PRO VÝKONOVÉ SYSTÉMY. Systém přerušení. České vysoké učení technické Fakulta elektrotechnická

Přerušení POT POT. Přerušovací systém. Přerušovací systém. skok do obslužného programu. vykonávaný program. asynchronní událost. obslužný.

Strojový kód. Instrukce počítače

Princip funkce počítače

Sběrnicová struktura PC Procesory PC funkce, vlastnosti Interní počítačové paměti PC

Struktura a architektura počítačů (BI-SAP) 10

Metody připojování periferií BI-MPP Přednáška 2

Struktura a architektura počítačů

Činnost CPU. IMTEE Přednáška č. 2. Několik úrovní abstrakce od obvodů CPU: Hodinový cyklus fáze strojový cyklus instrukční cyklus

Dělení pamětí Volatilní paměti Nevolatilní paměti. Miroslav Flídr Počítačové systémy LS /11- Západočeská univerzita v Plzni

Paměti. Paměť je zařízení, které slouží k ukládání programů a dat, s nimiž počítač pracuje

Algoritmizace a programování

Sběrnicová struktura PC Procesory PC funkce, vlastnosti Interní počítačové paměti PC

ÚVOD DO OPERAČNÍCH SYSTÉMŮ. Správa paměti. Přímý přístup k fyzické paměti, abstrakce: adresový prostor, virtualizace, segmentace

Základy informatiky. 2. Přednáška HW. Lenka Carr Motyčková. February 22, 2011 Základy informatiky 2

Algoritmizace a programování

Technické prostředky počítačové techniky

Procesor. Základní prvky procesoru Instrukční sada Metody zvýšení výkonu procesoru

Strojový kód k d a asembler procesoru MIPS SPIM. MIPS - prostředí NMS NMS. 32 ks 32bitových registrů ( adresa registru = 5 bitů).

Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague

Paměť počítače. 0 (neprochází proud) 1 (prochází proud)

Kubatova Y36SAP procesor - control unit obvodový a mikroprogramový řadič RISC Y36SAP-control unit 1

Sběrnicová struktura PC Procesory PC funkce, vlastnosti Interní počítačové paměti PC

Počítač jako prostředek řízení. Struktura a organizace počítače

Procesor z pohledu programátora

Akademický rok: 2004/05 Datum: Příjmení: Křestní jméno: Osobní číslo: Obor:

Struktura a architektura počítačů (BI-SAP) 9

2 Hardware a operační systémy

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

3. Počítačové systémy

Struktura a architektura počítačů (BI-SAP) 7

Přednášky o výpočetní technice. Hardware teoreticky. Adam Dominec 2010

I. Dalšívnitřní paměti

Sběrnicová architektura POT POT. Jednotlivé subsystémy počítače jsou propojeny sběrnicí, po které se přenáší data oběma směry.

Přednáška. Vstup/Výstup. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012

Paměti EEPROM (1) Paměti EEPROM (2) Paměti Flash (1) Paměti EEPROM (3) Paměti Flash (2) Paměti Flash (3)

IMTEE Přednáška č. 8. interrupt vector table CPU při vzniku přerušení skáče na pevně dané místo v paměti (obvykle začátek CODE seg.

Základní principy konstrukce systémové sběrnice - shrnutí. Shrnout základní principy konstrukce a fungování systémových sběrnic.


Architektury VLIW M. Skrbek a I. Šimeček

Paměťový podsystém počítače

zení Koncepce připojení V/V zařízení POT POT ... V/V zařízení jsou připojena na sběrnici pomocí řadičů. Řadiče Připojení periferních zařízení

Metody připojování periferií

Přerušovací systém s prioritním řetězem

Přidělování paměti II Mgr. Josef Horálek

Architektura počítače

MSP 430F1611. Jiří Kašpar. Charakteristika

Komunikace procesoru s okolím

Architektury CISC a RISC, uplatnění v personálních počítačích

Paměťové prvky. ITP Technika personálních počítačů. Zdeněk Kotásek Marcela Šimková Pavel Bartoš

Procesory, mikroprocesory, procesory na FPGA O. Novák, CIE 11 1

Architektura počítačů

Pohled do nitra mikroprocesoru Josef Horálek

Systém řízení sběrnice

Využití ICT pro rozvoj klíčových kompetencí CZ.1.07/1.5.00/

Cílem kapitoly je seznámit studenta s pamětmi. Jejich minulostí, současností a hlavnímu parametry.

Paměti počítače 9.přednáška

Operační systémy. Tomáš Vojnar IOS 2009/2010. Vysoké učení technické v Brně Fakulta informačních technologií Božetěchova 2, Brno

Paměti počítače ROM, RAM

2.9 Vnitřní paměti. Střední průmyslová škola strojnická Vsetín. Ing. Martin Baričák. Název šablony Název DUMu. Předmět Druh učebního materiálu

Počítačová sestava paměti, operační paměť RAM

Principy komunikace s adaptéry periferních zařízení (PZ)

Jednočipové mikropočítače (mikrokontroléry)

DUM č. 10 v sadě. 31. Inf-7 Technické vybavení počítačů

Jazyk symbolických adres

Operační systémy. Jednoduché stránkování. Virtuální paměť. Příklad: jednoduché stránkování. Virtuální paměť se stránkování. Memory Management Unit

Profilová část maturitní zkoušky 2014/2015

Řízení IO přenosů DMA řadičem

Obsah. Kapitola 1 Skříně počítačů 15. Kapitola 2 Základní deska (mainboard) 19. Kapitola 3 Napájecí zdroj 25. Úvod 11

Parametry pamětí vybavovací doba (tj. čas přístupu k záznamu v paměti) = 10 ns ms rychlost toku dat (tj. počet přenesených bitů za sekundu)

Mikrokontroléry. Doplňující text pro POS K. D. 2001

Management procesu I Mgr. Josef Horálek

Obsluha periferních operací, přerušení a jeho obsluha, vybavení systémových sběrnic

Miroslav Flídr Počítačové systémy LS /21- Západočeská univerzita v Plzni

Další aspekty architektur CISC a RISC Aktuálnost obsahu registru

ZÁKLADY PROGRAMOVÁNÍ. Mgr. Vladislav BEDNÁŘ /14

Přerušovací systém 12.přednáška

HW počítače co se nalézá uvnitř počítačové skříně

Paměti operační paměti

Semestrální práce z předmětu Speciální číslicové systémy X31SCS

Kubatova Y36SAP 8. Strojový kód Jazyk symbolických instrukcí asembler JSA pro ADOP a AVR Kubátová Y36SAP-strojový kód 1

ISU Cvičení 7. Marta Čudová

RISC a CISC architektura

Architektura procesoru ARM

Periferní operace využívající přímý přístup do paměti

Pokročilé architektury počítačů

Cílem kapitoly je seznámit studenta s pamětmi. Jejich minulostí, současností, budoucností a hlavními parametry.

Procesor. Procesor FPU ALU. Řadič mikrokód

Výpočet v módu jádro. - přerušení (od zařízení asynchronně) - výjimky - softvérové přerušení. v důsledku událostí

Koncepce DMA POT POT. Při vstupu nebo výstupu dat se opakují jednoduché činnosti. Jednotlivé kroky lze realizovat pomocí speciálního HW.

a operačních systémů

Paměti a jejich organizace

Seznámení s mikropočítačem. Architektura mikropočítače. Instrukce. Paměť. Čítače. Porovnání s AT89C2051

Transkript:

Algoritmizace a programování Struktura počítače - pokračování České vysoké učení technické Fakulta elektrotechnická Ver.1.10 J. Zděnek 2015 Systémová struktura počítače pokrač. Systém přerušení A8B14ADP Algoritmizace a programovaní - Systém přerušení 2 1

Asynchronní akce hardwareové (hw) volání procedury Žádosti o přerušení Řadič přerušení A8B14ADP Algoritmizace a programovaní - Systém přerušení 3 Asynchronní akce hw volání procedury (ISR) Kontrolní seznam 7 Asynchronní akce Systém přerušení Hardwarové volání procedury Předdefinovaná cílová adresa Vektor přerušení Tabulka vektorů přerušení Asynchronní žádost o přerušení Řadič přerušení Vstupy žádostí o přerušení Asynchronní událost Žádost o přerušení do CPU Potvrzení žádosti od CPU Check list No.7 Asynchronous actions Interrupt system Hardware procedure call Predefined target address Interrupt vector Interrupt vector table Asynchronous interrupt request Interrupt controller Interrupt request inputs Interrupt event CPU interrupt request CPU interrupt acknowledge A8B14ADP Algoritmizace a programovaní - Systém přerušení 4 2

Asynchronní akce hw volání procedury (ISR). Kontrolní seznam 8 Asynchronní akce - pokrač. Instrukce je nepřerušitelná Reakční doba přerušení Priorita přerušení Statická priorita přerušení Dynamická priorita přerušení Programová priorita přerušení Typy přerušení Maskovatelné přerušení Nemaskovatelné Programové (ladící) přerušení Program řízený událostmi Check list No.8 Asynchronous actions cont'd Instruction is uninterruptable Interrupt latency Interrupt priority Static interrupt priority Dynamic interrupt priority Software interrupt priority Interrupt types Maskable interrupt Nonmaskable interrupt Trap (software interrupt) Event driven program A8B14ADP Algoritmizace a programovaní - Systém přerušení 5 Asynchronní akce hw volání procedury (ISR) Kontrolní seznam 9 Asynchronní akce - pokrač. Obsluha přerušení - ISR Návratová adresa z přerušení Instrukce návratu z přerušení Asynchronní událost Pozadí programu Nejnižší hladina programu Sdílené zdroje Střadač Stavové slovo procesoru - PSW Příznakový registr Kontext programu (uložit/obnovit) Check list No.9 Asynchronous actions cont'd Interrupt service routine - ISR Interrupt return address Interrupt return instruction Asynchronous event Background (level) Lowest program level Shared resources Accumulator Processor status word - PSW Flag register Program context (save/restore) A8B14ADP Algoritmizace a programovaní - Systém přerušení 6 3

Asynchronní akce hw volání procedury (ISR) A8B14ADP Algoritmizace a programovaní - Systém přerušení 7 Prostředky pro organizaci hw volání procedury (interrupt) A8B14ADP Algoritmizace a programovaní - Systém přerušení 8 4

Sdílené prostředky (sdílí je ISR a přerušený program) A8B14ADP Algoritmizace a programovaní - Systém přerušení 9 Žádost o obsluhu přerušení (hw volání procedury) A8B14ADP Algoritmizace a programovaní - Systém přerušení 10 5

Žádost o obsluhu aktivní - 1 A8B14ADP Algoritmizace a programovaní - Systém přerušení 11 Dokončení aktivní instrukce - 2 A8B14ADP Algoritmizace a programovaní - Systém přerušení 12 6

Uložení (Push) návratové adresy do zásobníku (Stack) - 3 A8B14ADP Algoritmizace a programovaní - Systém přerušení 13 Vyzvednutí adresy obslužného programu (ISR) - 4 A8B14ADP Algoritmizace a programovaní - Systém přerušení 14 7

Spuštění obslužné procedury přerušení (ISR) - 5 A8B14ADP Algoritmizace a programovaní - Systém přerušení 15 Uložení kontextu do zásobníku - 6 A8B14ADP Algoritmizace a programovaní - Systém přerušení 16 8

Provedení těla obslužné procedury (ISR) - 7 A8B14ADP Algoritmizace a programovaní - Systém přerušení 17 Obnovení kontextu (ze zásobníku) - 8 A8B14ADP Algoritmizace a programovaní - Systém přerušení 18 9

Vyzvednutí návratové adresy (ze zásobníku) - 9 A8B14ADP Algoritmizace a programovaní - Systém přerušení 19 Obnovení běhu přerušeného programu - 10 A8B14ADP Algoritmizace a programovaní - Systém přerušení 20 10

Princip programu řízeného událostmi - souhrn Obsluha žádosti o přerušení souhrn akcí Dokonči právě prováděnou instrukci (instrukce je nepřerušitelná) Ulož (Push) návratovou adresu do zásobníku (tj. adresu, která je právě v čítači instrukcí (PC)) Vyzvedni adresu ISR (tj. podprogramu obsluhy přerušení) z tabulky vektorů přerušení Spusť ISR Vynuluj Interrupt Request Flag (závisí na typu procesoru) Ulož kontext do zásobníku Proveď tělo ISR (vlastní obsluhu žádosti o přerušení) Obnov původní kontext (vyzvedni ho ze zásobníku) Proveď instrukci Return Ta vyzvedne Návratovou adresu ze zásobníku do čítače instrukcí (PC) Pokračuj v programu na pozadí tj. čti instrukci z adresy uložené v PC A8B14ADP Algoritmizace a programovaní - Systém přerušení 21 Event Driven Program Principle - summary Interrupt request service summary Finish current background instruction (instruction is uninterruptable) Push Return Address to stack (i.e. address in program counter) Get ISR Address from Interrupt Vector Table Start ISR routine Clear Interrupt Request Flag (depends on processor type) Save context to stack Run ISR body Restore context from stack Execute Return instruction Pop Return Address from stack (Pop it to program counter) Continue background program read next instruction from address in PC A8B14ADP Algoritmizace a programovaní - Systém přerušení 22 11

Typy systémů přerušení Jednohladinové neprioritní Vícehladinové prioritní Nemaskovatelné Softwareové Trap Maskovatelné S pevnou hw prioritou S dynamicky volitelnou prioritou Single level - non-priority interrupt system Multi level priority interrupt system Nonmaskable Trap Maskable Fixed priority system Flexible priority system A8B14ADP Algoritmizace a programovaní - Systém přerušení 23 Řadič přerušení princip (Interrupt Controller) TRAP DECODED INTRQ NMI IR0 IR1 Event Detector Priority Encoder Register (Active Interrupt) Comparator IR2 IF0 IE0 IF1 IE1 Driver IF2 GIE IE1 Control Interrupt Enable Interrupt Flag Žádost o přerušeni Povolení maskovatelných žádostí A8B14ADP Algoritmizace a programovaní - Systém přerušení 24 12

Cyklus obsluhy přerušení (Interrupt Cycle) A8B14ADP Algoritmizace a programovaní - Systém přerušení 25 DMA cyklus (Direct Memory Access Cycle) XTAL (CRYSTAL) STABLE SYNC. SIGNAL Power Supply Clock Power Monitor RESET DRQ1 DRQn HOLD CPU DMA Controller HLDA Common Bus Program Memory BIOS Operating System Application Program Data Memory MAIN MEMORY PROGRAM INSTRUCTIONS PROGRAM VARIABLES & PROGRAM STACK IRQ1 IRQ2 IRQn Interrupt Controller I/O Channels Output Input World A8B14ADP Algoritmizace a programovaní - Systém přerušení 26 13

DMA - princip XTAL (CRYSTAL) STABLE SYNC. SIGNAL DRQn DMA Controller Clock Control Commands Transfer Count Destination Address Source Address BUS MASTER 1 HOLD CPU HLDA INTRQ INTACK Common Bus Program Memory BIOS Operating System Application Program Data Memory MAIN MEMORY PROGRAM INSTRUCTIONS PROGRAM VARIABLES & PROGRAM STACK BUS MASTER 2 IRQ1 IRQ2 IRQn Interrupt Controller I/O Channels Output Input World A8B14ADP Algoritmizace a programovaní - Systém přerušení 27 DMA převzetí řízení sběrnice A8B14ADP Algoritmizace a programovaní - Systém přerušení 28 14

Programátorský model počítače A8B14ADP Algoritmizace a programovaní - Systém přerušení 29 Struktura CPU versus operandy Kontrolní seznam 10 Struktura CPU versus operandy Orientovaný na zásobník ALU, PSW (Příznakový reg) zásobník Střadačově orientovaný ALU, PSW (Příznakový reg) Paměť dat Registrově orientovaný ALU, PSW (Příznakový reg) univerzální registry (v CPU) Paměťově orientovaný ALU, PSW, paměť dat Check list No.10 CPU systems versus operands Stack oriented ALU, PSW (Flags) stack Accumulator oriented ALU, PSW (Flags), Accumulator Data memory Register oriented ALU,PSW (Flags) Universal (scratchpad) registers Memory oriented ALU, PSW (Flags), data memory A8B14ADP Algoritmizace a programovaní - Systém přerušení 30 15

Struktura CPU versus operandy - 1 STACK TOS ALU FLAGS STATUS STACK ORIENTED CPU A8B14ADP Algoritmizace a programovaní - Systém přerušení 31 Struktura CPU versus operandy - 2 A8B14ADP Algoritmizace a programovaní - Systém přerušení 32 16

Struktura CPU versus operandy - 3 A8B14ADP Algoritmizace a programovaní - Systém přerušení 33 Struktura CPU versus operandy - 4 DATA MEMORY ALU FLAGS STATUS MEMORY ORIENTED CPU A8B14ADP Algoritmizace a programovaní - Systém přerušení 34 17

Oddělený prostor vstupů a výstupů A8B14ADP Algoritmizace a programovaní - Systém přerušení 35 Mapování prostoru vstupů/výstupů do paměti A8B14ADP Algoritmizace a programovaní - Systém přerušení 36 18

Hardwareový zásobník (v CPU) A8B14ADP Algoritmizace a programovaní - Systém přerušení 37 Adresové módy (způsoby adresování operandů) Kontrolní seznam 11 Adresové módy Paměť dat Paměť programu Přímá adresa Nepřímá adresa Ukazatel do paměti Indexové adresování Bázová adresa + index Adresování pomocí bank Přemapování paměti Přístupová banka Skrytý paměťový prostor Check list No. 11 Addressing modes Data memory Program memory Direct address Indirect address Memory pointer Indexed addressing Base address + index Memory banking Remapping Access bank Hidden memory space A8B14ADP Algoritmizace a programovaní - Systém přerušení 38 19

Přímá adresa (adresa součástí instrukce) A8B14ADP Algoritmizace a programovaní - Systém přerušení 39 Nepřímá adresa (adresa je v registru) A8B14ADP Algoritmizace a programovaní - Systém přerušení 40 20

Indexové adresování A8B14ADP Algoritmizace a programovaní - Systém přerušení 41 Dynamické přemapování a přímá adresa A8B14ADP Algoritmizace a programovaní - Systém přerušení 42 21

Instrukční soubor počítače rozdělení Kontrolní seznam 12 Instrukční soubor počítače Pevná řádová čárka Plovoucí řádová čárka Přesuny operandů Aritmetické operace Posuny a rotace Logické operace Bitové operace Nepodmíněné skoky Absolutní, relativní Podmíněné skoky Volání podprogramu a návrat Řídící instrukce Check list No. 12 instruction set Fixed point Floating point Move operations Arithmetic operations Shift, Rotate operations Logical operations Bit operations Goto, Branch Direct, relative Conditional Branch Call, Return Control instructions A8B14ADP Algoritmizace a programovaní - Systém přerušení 43 Paměť počítače Paměť počítače je zařízení pro uchování programu a dat Základní funkce paměti: Uložení informace do paměti zápis Vyzvednutí informace z paměti čtení Třídění pamětí různá hlediska: Způsob použití v počítači Metoda přístupu k informacím v paměti Uchování a změna informace v paměti Fyzikální princip paměti Rychlost přístupu k informaci Kapacita paměti A8B14ADP Algoritmizace a programovaní - Systém přerušení 44 22

Třídění pamětí počítače Způsob použití v počítači Operační paměť (Main Memory) Externí paměť Vyrovnávací paměť (cache, nebo mezi počitači) Komunikační paměť (mezi počítači) Metoda přístupu k informacím v paměťi: Libovolný (náhodný) výběr položky (adresovatelná paměť) Jednobránová, dvoubránová, vícebránová Sekvenční (postupný) výběr položky (sériová paměť) Fronta (Queue, FIFO First In First Out) Zásobník (Stack, LIFO Last In First Out) Asociativní paměť (Contents Addressable Memory) A8B14ADP Algoritmizace a programovaní - Systém přerušení 45 Třídění pamětí počítače Uchování a změna informace v paměti: Volatilní po vypnutí napájení ztrácejí informaci SRAM Statická RAM (Static Random Access Memory) DRAM Dynamická RAM SDRAM Synchronní dynamická RAM Nevolatilní po vypnutí napájení informace zůstává v paměti ROM (Read Only Memory) EPROM (Erasable ROM) EEPROM (Electrically Erasable ROM) FLASH SRAM zálohovaná baterií Magnetické disky Optické disky A8B14ADP Algoritmizace a programovaní - Systém přerušení 46 23

Fyzikální princip paměti: Polovodičové (Elektronické) Magnetické Optické Třídění pamětí počítače Rychlost přístupu k informaci: Rychlé pro zápis i čtení (R/W) SRAM DRAM SDRAM Rychlé pro čtení ROM EPROM EEPROM FLASH A8B14ADP Algoritmizace a programovaní - Systém přerušení 47 Cache vyrovnávací paměť Urychlení práce počítače Část informace přesunuta do menší ale rychlé paměti (cache) Přístup procesoru k této informaci rychlejší Pokud informace v cache není, nutno ji přisunout do cache z operační paměti Cache může být rozdělena na více úrovní (hladin) jedna z úrovní je přímo v procesoru, druhá může být vně procesoru (ale sestavená z rychlejší paměti než je paměť operační) Cache může být určena jen pro data nebo i pro instrukce Data cache Instruction cache Virtual-to-physical address translation cache (u počítače s virtuální pamětí, kde je paměťový prostor rozšířen z operační paměti i na disk) Data cache po zpracování dat se data uloží: Ihned zpět do operační paměti (write-through method) Do data cache (write-back method). Zpět do operační paměti se uloží později, při novém plnění data cache A8B14ADP Algoritmizace a programovaní - Systém přerušení 48 24

Cache Vyrovnávací paměť - jednohladinová Single Level Cache A8B14ADP Algoritmizace a programovaní - Systém přerušení 49 Cache Vyrovnávací paměť - dvouhladinová Multi Level Cache A8B14ADP Algoritmizace a programovaní - Systém přerušení 50 25

Virtuální paměť (Virtual Memory) - princip Physical Address Main Memory + Logical Address Main Memory Page 0 Page 1 Page 2 Page 3 Page 4 Disk Disk Page 5 Page N A8B14ADP Algoritmizace a programovaní - Systém přerušení 51 Virtuální paměť Virtuální paměť (Virtual Memory) Paměťový prostor je rozšířen na disk Adresy (logické) mohou mít hodnotu větší než odpovídá operační paměti Část instrukcí a dat spuštěného programu je odložena (Swap) na disk (ty, které nejsou právě třeba při provádění programu) Paměťová jednotka, která se přenáší mezi virtuální a fyzickou pamětí se nazývá stránka (Page) A8B14ADP Algoritmizace a programovaní - Systém přerušení 52 26

Algoritmizace a programování Struktura počítače KONEC České vysoké učení technické Fakulta elektrotechnická 27