Kontakty Webpage přednášky: –http://ulita.ms.mff.cuni.cz/mff/sylaby/PRG017.HTML Slajdy (MS PowerPoint): –ftp://ulita.ms.mff.cuni.cz/predn/PRG017 Technické.

Slides:



Advertisements
Podobné prezentace
13AMT Procesory I. Lecture 2 Ing. Martin Molhanec, CSc.
Advertisements

Mikroprocesory Procesory. Procesor je synchronní zařízení provádí operace s daty je programovatelný pomocí mikroinstrukcí je více rodin procesorů (jednočipy.
Komunikace periférii.
Zásobník (LiFo) Fronta (FiFo)
SYSTÉM PŘERUŠENÍ U 68HC11.
Instrukce procesoru pro skoky v programu (JMP, JZ, JNZ, JC, JNC)
Instrukce procesoru pro přesun (MOV) mov X, Y Instrukce kopíruje osmibitová data ze zdroje Y do cíle X mov A, R n mov A, DPH mov A, DPL mov A, SPH mov.
Otázky k absolutoriu HW 1 - 5
Programování v asembleru - historie
Kontakty Webpage přednášky: – Slajdy (MS PowerPoint): –ftp://ulita.ms.mff.cuni.cz/predn/PRG017 Technické.
Základy mikroprocesorové techniky
Program Programátorský model procesoru Instrukční soubor
TEP Instrukční soubor č.9.
Základy mikroprocesorové techniky 11. Týden – Instrukční sada ‘51 Garant:Prof. Zdeněk Bohuslávek, CSc. Přednášející:Ing. Jiří Nesládek Podklady:
Instrukční soubor PIC16Fxxx osnova: Charakteristika instrukčního souboru Rozdělení instrukcí Časové průběhy (zpracování instrukcí)
Výukový program: Mechanik - elektrotechnik Název programu: Číslicová technika - mikroprocesory III. ročník Mikrořadiče Vypracoval : Vlastimil Vlček Projekt.
Technické prostředky informačních systémů 4. Týden – Sběrnice.
Obchodní akademie, Ostrava-Poruba, příspěvková organizace Vzdělávací materiál/DUM VY_32_INOVACE_02A13 Autor Ing. Jiří Kalousek Období vytvoření duben 2014.
Architektura a vývoj PC 2.
PicoBlaze, MicroBlaze, PowerPC
Základy mikroprocesorové techniky
Orbis pictus 21. století Tato prezentace byla vytvořena v rámci projektu.
Paměťové obvody a vývoj mikroprocesoru
Tato prezentace byla vytvořena
= monolitický integrovaný obvod obsahující kompletní mikropočítač
Operační systém (OS) ICT Informační a komunikační technologie.
Informatika / …o počítači (základní pojmy, jednoduché představy) 2006.
Adresy a adresování Střední odborná škola Otrokovice Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Miloš Zatloukal.
Tato prezentace byla vytvořena
Kontakty Webpage přednášky: – Slajdy (MS PowerPoint): –ftp://ulita.ms.mff.cuni.cz/predn/PRG017 Technické.
Jaroslav Krahula.  OSC - ? ROM - ? RAM - ? Č/Č - ? CPU - ? ŘS - ? SP - ? LPT -?
Začátky mikroprocesorů
1. ELEKTRICKÝ SIGNÁL VSTUPUJE DO uPROCESORU 2.VYMAŽE DATA KTERÁ ZŮSTALA V REGISTRECH VNITŘNÍ PAMĚTI 3. NASTAVÍ REGISTR CPU – ČÍTAČ INSTRUKCÍ NA F000 ADRESA.
Přehled registrů Střední odborná škola Otrokovice Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Miloš Zatloukal.
Procesor Renesas H8S/2633F.
Výrok „Vypadá to, že jsme narazili na hranici toho, čeho je možné dosáhnout s počítačovými technologiemi. Člověk by si ale měl dávat pozor na takováto.
Kontakty Webpage přednášky: – Slajdy (MS PowerPoint): –ftp://ulita.ms.mff.cuni.cz/predn/PRG017 Technické.
David Rozlílek Me4B. ? ? ? ?? Jaká paměť tvoří paměť programu ………… ? EA … kde je logická 1 a kde logická 0 ……….? ? ….. Kde je vnější a kde vnitřní paměť……….?
Mikroprocesor.
Kontakty Webpage přednášky: – Slajdy (MS PowerPoint): –ftp://ulita.ms.mff.cuni.cz/predn/PRG017 Technické.
Kontakty Webpage přednášky: – Slajdy (MS PowerPoint): –ftp://ulita.ms.mff.cuni.cz/predn/PRG017 Technické.
Kontakty Webpage přednášky: – Slajdy (MS PowerPoint): –ftp://ulita.ms.mff.cuni.cz/predn/PRG017 Technické.
Instrukce procesoru.
Digitální signálový procesor (DSP) Digitální signálový kontrolér (DSC) Blokové schéma mikroprocesroru.
Kontakty Webpage přednášky: – Slajdy (MS PowerPoint): –ftp://ulita.ms.mff.cuni.cz/predn/PRG017 Technické.
Technika počítačů 3. Mikroprocesory © Milan Keršlágerhttp:// Obsah: ●
Univerzální procesor. Jako vhodný procesor na místo virtuálního univerzálního mikroprocesoru (procesoru) byl pro výklad jako vhodný typ vybrán procesor.
Mikrokontrolery řady Tyto obvody představují vlastně velmi jednoduchý, ale kompletní mikropočitačový systém. Ustálil se pro ně název jednočipové.
Kontakty Webpage přednášky: – Slajdy (MS PowerPoint): –ftp://ulita.ms.mff.cuni.cz/predn/PRG017 Technické.
Odborný výcvik ve 3. tisíciletí Tato prezentace byla vytvořena v rámci projektu.
ZŠ Brno, Řehořova 3 S počítačem snadno a rychle Informatika 7. ročník III
Vývoj architektur mikroprocesorů Od 4 bitů k superskalárnímu RISC Vývoj architektur mikroprocesorů Od 4 bitů k superskalárnímu RISC Pavel Píša
Instrukční soubor řady 8051 Assembler. Úvod Instrukční soubor má 111 instrukcí a to :  1bytových - 49  2bytových - 45  3bytových - 17 Soubor se rozděluje.
Odborný výcvik ve 3. tisíciletí Tato prezentace byla vytvořena v rámci projektu.
PC základní jednotka.
Programování mikropočítačů Platforma Arduino
Výukový materiál zpracován v rámci projektu
Operační systémy Mikroprocesory
Výukový materiál zpracován v rámci projektu
Jednočipové počítače – instrukční sada
Výukový materiál zpracován v rámci projektu
Mikropočítač Soubor instrukcí
Výukový materiál zpracován v rámci projektu
Výukový materiál zpracován v rámci projektu
Výukový materiál zpracován v rámci projektu
Výukový materiál zpracován v rámci projektu
jednočipových počítačů I
Segmentace Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Libor Otáhalík. Dostupné z Metodického portálu ISSN: 
Informatika / …o počítači
Využití ICT pro rozvoj klíčových kompetencí CZ.1.07/1.5.00/
Transkript prezentace:

Kontakty Webpage přednášky: – Slajdy (MS PowerPoint): –ftp://ulita.ms.mff.cuni.cz/predn/PRG017 Technické informace (manuály ap.): –ftp://ulita.ms.mff.cuni.cz/techdoc/index.html Mail:

 8-bitové procesory 1 „Intel line“ Intel 4004 – 1971: –4-bitový procesor –8-bitové instrukce –Harvardská architektura – oddělený adresový prostor pro kód a data –1K datové paměti, 4K programové paměti (12bit PC) –4-úrovňový interní stack (CALL, RET) –16 čtyřbitových regs., spojitelných do 8 osmibitových –46 instrukcí –16-pin DPI futrál –740kHz (původně zamýšlen jako 1MHz) – cca ops –Bez podpory přerušení –Určený pro kalkulátory

Mezidobí Intel 4040: –vylepšená verze 4004 –+14 instrukcí –8-úrovňový stack –přerušovací systém (shadowing of 1 st 8 regs) Intel 8008 – 1972: –první (nepříliš úspěšný) pokus o 8-bitový procesor; záhy překonán typem 8080 –podobný 4040, terminálový kontroler –14-bitová adresace

Zlatý hřeb Intel 8080(A) – 1974: –jeden z prvních 8-bitových procesorů –považován za typického představitele éry  množství napodobenin a odvozených typů –8-bitová datová a 16-bitová adresová sběrnice –little endian –cca 78 instrukcí –hw podpora pro zásobník v hlavní paměti signal pin pro existenci stacku v jiné bance paměti –oddělení adresového prostoru paměti a I/O zařízení 256 I/O portů –jednoduchý systém přerušení (instrukce od periferie) – RST0, RST8, RST16,... –Altair 8800 Intel 8085 – 1976: –hw vylepšení (jednotné napajení, další I/O vstupy, generátor hodin na čipu)

8080 – registry AF BC DE HL S Z 0 AC 0 P 1 CYINTE PC SP

8080 – instrukční soubor Akumulátorově orientovaný IS Instrukční repertoár typický pro dané období: –instrukce přesunů dat (8- a 16-bitových) –8-bitové aritmetické instrukce (bez násobení a dělení) –8-bitové logické instrukce chybí instrukce logických či aritmetických posunů (jen rotace) –Omezený výběr 16-bitových aritmetických instrukcí určeny primárně pro formování adres –Skokové instrukce pro nepodmíněné a podmíněné skoky –Instrukce volání podprogramu využívají hw podpory pro implementaci zásobníku existují i podmíněné varianty –Instrukce pro komunikaci s I/O zařízeními

8080 – způsoby adresace Implicitní adresace střadače (aritmetické a logické instrukce) Explicitní přímá adresace registrů (aritmetické a logické instrukce) Přímá adresace (instrukce přesunu dat, I/O instrukce) Nepřímá adresace obsahem registru (přesunové, aritmetické n. logické instrukce) Implicitní adresace ukazatele zásobníku (instrukce pro manipulaci se zásobníkem, instrukce volání podprogramu) Instrukce skoků a volání podprogramů používají přímou adresaci s plnou 16-bitovou adresou

8080 – systém přerušení Pro dané období poměrně pokročilý Náznak vektorového systému Výrazně využívá speciálních instrukcí RSTn

Motorola & spol: jiná cesta Motorola 6800 – 1974 (1975?) –big endian –redukovaný počet registrů (v podstatě pouze 2 střadače) –naopak silně rozšířený repertoár adresačních módů –instrukční soubor rozsahem zhruba odpovídá tomu u 8080 –zjednodušený systém přerušení MOS Technologies – 65xx –„odpadlíci“ z Motoroly 6501 byla tak „podobná“ 6800, že se na trhu prakticky neohřála 6502 – 1975?: –velký komerční úspěch –levný, nenáročný procesor oblíbenec designerů „osobních mikropočítačů“ – Atari, Apple, Commodore –celkově podobný charakter jako 6800 –následovaly odvozené (rovněž komerčně úspěšné) typy, např. 6510

6502 – registry A X Y N V. B D I Z C PC SP Příznaky: C - Carry Z - Zero I - Interrupts disable D - Decimal (BCD arithm.) B - BRK instr. flag V - Overflow N - Negative (Sign flag)

6502 – způsoby adresace Absolutní adresace: –CMP&1900 Zkrácená absolutní adresace (zero page addressing): –CPY&80 Nepřímá adresace obsahem paměti: –JMP(&1900) Indexovaná adresace: –LDA&2800,X –ADCtable,Y Zkrácená indexovaná adresace (zero page indexed addressing): –ADD&80,X Zero page pre-indexed indirect addressing: –LDA(&80,X) Zero page post-indexed indirect addressing: –LDA(&80),Y

Konec 8-bitové éry ZiLOG Z80 – 1976 –konec sporů o „nejlepší“ 8-bitový procesor –opět „odpadlík“ – tentokrát od Intelu –bin. kompatibilita s 8080 –nové registry (indexované adresování) –dvě sady registrů pro zrychlení obsluhy přerušení –+cca 80 nových instrukcí skokové instrukce s krátkou autorelativní adresou stringové operace ( LDI(R), LDD(R), CPI(R), CPD(R) ) s možností opakování bitové instrukce i jiné obskurnosti ( DJNZ ) „tajné“ instrukce –paměťové rozhraní – RAM refresh cycles –velmi pokročilý systém přerušení – 3 módy (8080 comp., RST38h a vektorový) mode 2: relokovatelný vektorový –úspěch = kompatibilita s mem IF + CP/M (+ ZX Spectrum) –některé verze až 10 MHz hodiny!

Z80 – registry AF BC DE HL S Z 0 H 0 P N CYIFF1IFF2 A’F’ B’C’ D’E’ H’L’ IR IX IY PC SP

Z80 – instrukční soubor Binární kompatibilita  kompletní instrukční sada 8080 (z licenčních důvodů ovšem se zcela novou mnemonikou ) Množství nových instrukcí: –„jednoduchá rozšíření“ – např. doplněny instrukce logických operací o posuny (aritmetické i logické) –odklon od čistě „akumulátorové“ filozofie –instrukce pro manipulaci s novými registry –zcela nové třídy instrukcí: bitové instrukce ( BIT, SET, RES ) řetězcové instrukce (s/bez opakování) – kopírování bloků paměti ( LDI(R), LDD(R) ), vyhledávání v blocích ( CPI(R), CPD(R) ) a především blokové vstupy a výstupy ( INI(R), IND(R), OUTI(R), OUTD(R) ) a jiné ( DJNZ ) Nové adresační módy: –autorelativní („krátká“) adresace u skoků –indexové adresování (prostřednictvím registrů IX, IY ): LD A, (IX+10) RLC (IY+11)

Z80 – systém přerušení Relokovatelný vektorový systém –zařízení v okamžiku přijetí svého požadavku o přerušení dodá procesoru 8-bitovou hodnotu (vektor) –vektor je použit jako index do relokovatelné tabulky obslužných rutin přerušení Kromě tohoto pokročilého mechanismu jsou implementovány i další módy: –mód kompatibility s 8080 –zjednodušený mód (tzv. mód RST38), zhruba na úrovni systému přerušení procesorů 65xx Vlastností procesoru, využitelnou při obsluze přerušení, je i shadowing registrů –vzhledem k nepřítomnosti jakýchkoliv ochranných mechanismů se však příliš neužívá

8-bitové evergreeny: Intel MCS 51 8-bitový procesor optimalizovaný pro řídící aplikace Rozšířené možnosti práce v jednobitové logice 64K adresový prostor pro kód 64K adresový prostor pro data 4K zabudované kódové PROM 128B zabudované datové RAM 32 obousměrných a jednotlivě adresovatelných 1/0 linek Dva 16-bitové časovače/čítače Plně obousměrný UART 6-zdrojová/5-vektorová architektura přerušení se dvěmi úrovněmi priorit Zabudovaný generátor hodinového kmitočtu Kmitočet Mhz

Intel MCS 51 – Blokové schéma

Intel MCS 51 - Rozdělení kódové a datové paměti

Intel MCS 51 – Organizace paměti Výřez kódové paměti Organizace interní datové paměti

Intel MCS 51 - Rozdělení interní datové paměti

Intel MCS 51 - SFR SFR=Special Function Registers:

Intel MCS 51 - SFR

Intel MCS 51 - Adresovací módy Přímé adresování –8-bitová adresa v instrukci, pouze na interní datovou paměť a SFR Nepřímé adresování –instrukce specifikuje registr, který obsahuje adresu –8-bitová adresace pomocí R0, R1 nebo SP –16-bitová adresace pomocí DPTR Registrová adresace –instrukce obsahuje tříbitový kód registru ve zvolené bance Registrově specifické instrukce –instrukce přímo bez kódování určuje použitý registr Přímý operand –konstanta následuje operační kód instrukce Indexované adresování –v kódové paměti na čtení, DPTR ukazuje na začátek tabulky, akumulátor obsahuje položku, výsledná adresa=DPTR+ACC –nepřímý indexovaný skok, opět výsledná adresa=DPTR+ACC

Intel MCS 51 - Přerušení Vektory přerušení: Nastavení priority zdroje přerušení v registru IP Priority uvnitř jedné úrovně priority přerušení –IE0, TF0, IE1, TF1, RI nebo TI, TF2 nebo EXF

Intel MCS 51 – Instrukční soubor Aritmetické instrukce –ADD A, ; ADDC A, ; MUL AB ; DIV AB ; INC A ; INC DPTR ; INC ; DEC xxx ; SUBB A, ; DA A Logické instrukce –ANL A, ; ANL,A ; ANL,#data ; ORL xxx ; XRL xxx ; CRL A ; CPL A ; RL A ; RLC A ; RR A ; RRC A ; SWAP A Přesun dat v interní paměti –MOV A, ; MOV,A ; MOV, ; MOV DPTR,#data16 ; PUSH ; POP ; XCH A, ; XCHD Přesun dat v externí paměti –MOVX ; ; MOVX ; Vyhledávací tabulky –MOVC ; MOVC

Intel MCS 51 – Instrukční soubor Bitové instrukce –ANL C,bit ; ANL C,/bit ; ORL xxx ; MOV C,bit ; MOV bit,C ; CLR C ; CLR bit ; SETB C ; SETB bit ; CPL C ; CPL bit ; JC rel ; JNC rel ; JB bit,rel ; JNB bit,rel ; JBC bit,rel Skokové instrukce –JMP addr ; ; CALL addr ; RET ; RETI ; NOP Podmíněné skoky –JZ rel ; JNZ rel ; DJNZ,rel ; CJNE A,,rel ; CJNE,#data,rel

8-bitové procesory – celkové zhodnocení Sběrnice: –8 bitová datová sběrnice –16 bitová adresová sběrnice, obvykle multiplexovaná Instrukční soubor: –CISC –akumulátorově orientovaný –8-bitová aritmetika, bez násobení/dělení –omezeně i 16-bitová aritmetika (obvykle však jen v souvislosti s adresací) Systém přerušení: –obvykle velmi jednoduchý (jediná obslužná rutina, rozlišení zdroje přerušení dodatečným HW) –výjimka: Z80 –jen vnější přerušení, v některých případech SW přerušení Zcela chybí: –podpora virtuální paměti (MMU) –mechanismy ochrany