ORGANIZACJA SYSTEMÓW KOMPUTEROWYCH



Podobne dokumenty
Programowanie niskopoziomowe

Rejestry procesora. Nazwa ilość bitów. AX 16 (accumulator) rejestr akumulatora. BX 16 (base) rejestr bazowy. CX 16 (count) rejestr licznika

organizacja procesora 8086

Procesory rodziny x86. Dariusz Chaberski

Architektura komputerów. Komputer Procesor Mikroprocesor koncepcja Johna von Neumanna

Organizacja typowego mikroprocesora

Układ sterowania, magistrale i organizacja pamięci. Dariusz Chaberski

CPU. Architektura FLAGS Bit: dr Paweł Kowalczyk; DPTNS, KFCS UŁ. SI 16 bit. 16 bit. 16 bit.

Mikroprocesor Intel 8088 (8086)

Sprzęt i architektura komputerów

Architektura komputerów

Sprzęt i architektura komputerów

Architektura komputerów

ARCHITEKTURA PROCESORA,

Pośredniczy we współpracy pomiędzy procesorem a urządzeniem we/wy. W szczególności do jego zadań należy:

Struktura i działanie jednostki centralnej

Technika mikroprocesorowa I Studia niestacjonarne rok II Wykład 2

Programowanie Niskopoziomowe

Układ wykonawczy, instrukcje i adresowanie. Dariusz Chaberski

Mikroprocesory rodziny INTEL 80x86

UTK ARCHITEKTURA PROCESORÓW 80386/ Budowa procesora Struktura wewnętrzna logiczna procesora 80386

Spis treúci. Księgarnia PWN: Krzysztof Wojtuszkiewicz - Urządzenia techniki komputerowej. Cz. 1. Przedmowa Wstęp... 11

BUDOWA I DZIAŁANIE MIKROPROCESORA

Architektura komputera. Cezary Bolek. Uniwersytet Łódzki. Wydział Zarządzania. Katedra Informatyki. System komputerowy

Technika mikroprocesorowa I Wykład 2

MIKROPROCESORY architektura i programowanie

J. Duntemann Zrozumieć Assembler Leo J. Scanlon Assembler 8086/8088/80286 S. Kruk Programowanie w Języku Assembler

Procesory. Schemat budowy procesora

MIKROKONTROLERY I MIKROPROCESORY

Procesor Intel 8086 model programisty. Arkadiusz Chrobot

Architektura Systemów Komputerowych. Rozwój architektury komputerów klasy PC

Wstęp do informatyki. System komputerowy. Magistrala systemowa. Architektura komputera. Cezary Bolek

Magistrala systemowa (System Bus)

Podstawy techniki cyfrowej i mikroprocesorowej II. Urządzenia wejścia-wyjścia

Podstawy techniki cyfrowej Mikroprocesory. Mgr inż. Bogdan Pietrzak ZSR CKP Świdwin

Spis treœci. Co to jest mikrokontroler? Kody i liczby stosowane w systemach komputerowych. Podstawowe elementy logiczne

Programowanie na poziomie sprzętu. Tryb chroniony cz. 1

UTK Można stwierdzić, że wszystkie działania i operacje zachodzące w systemie są sterowane bądź inicjowane przez mikroprocesor.

WPROWADZENIE Mikrosterownik mikrokontrolery

Architektura komputerów. Asembler procesorów rodziny x86

MOŻLIWOŚCI PROGRAMOWE MIKROPROCESORÓW

Architektura Systemów Komputerowych. Jednostka ALU Przestrzeń adresowa Tryby adresowania

J. Ułasiewicz Komputerowe systemy sterowania 1. 1 Architektura PC Ogólna struktura systemu jednoprocesorowego

Projektowanie. Projektowanie mikroprocesorów

Procesor Intel 8086 model programisty. Arkadiusz Chrobot

Wyświetlacz alfanumeryczny LCD zbudowany na sterowniku HD44780

2. Architektura mikrokontrolerów PIC16F8x... 13

System mikroprocesorowy i peryferia. Dariusz Chaberski

Układy wejścia/wyjścia

Podstawy techniki mikroprocesorowej. Dr inż. Grzegorz Kosobudzki p.311a A-5. Tel

Wykład Mikroprocesory i kontrolery

Hardware mikrokontrolera X51

Wstęp: Interfejs portu równoległego 6821 i portu szeregowego 6850 firmy Motorola

architektura komputerów w 1 1

Architektura mikroprocesorów TEO 2009/2010

end start ; ustawienie punktu startu programu i koniec instrukcji w assemblerze.

Mikroprocesor Operacje wejścia / wyjścia

KARTA PRZEDMIOTU. Architektura Komputerów C4

Architektura mikrokontrolera MCS51

Wybrane zagadnienia elektroniki współczesnej

Architektura systemów komputerowych

Budowa Mikrokomputera

Architektura Systemów Komputerowych. Bezpośredni dostęp do pamięci Realizacja zależności czasowych

Technika mikroprocesorowa I Wykład 3

Architektura mikrokontrolera MCS51

Programowanie w asemblerze Środowiska 64-bitowe

Wykład I. Podstawowe pojęcia. Studia Podyplomowe INFORMATYKA Architektura komputerów

CYKL ROZKAZOWY = 1 lub 2(4) cykle maszynowe

Wydział Elektryczny. Katedra Automatyki i Elektroniki. Instrukcja. do ćwiczeń laboratoryjnych z przedmiotu: SYSTEMY CYFROWE 1.

Architektura typu Single-Cycle

Architektura komputerów

Programowanie Niskopoziomowe

Architektura komputerów

Budowa i zasada działania komputera. dr Artur Bartoszewski

LEKCJA TEMAT: Współczesne procesory.

RDZEŃ x86 x86 rodzina architektur (modeli programowych) procesorów firmy Intel, należących do kategorii CISC, stosowana w komputerach PC,

Wstęp Architektura... 13

Adresowanie obiektów. Adresowanie bitów. Adresowanie bajtów i słów. Adresowanie bajtów i słów. Adresowanie timerów i liczników. Adresowanie timerów

Architektura komputerów

Budowa komputera. Magistrala. Procesor Pamięć Układy I/O

2 Literatura. c Dr inż. Ignacy Pardyka (Inf.UJK) ASK MP.02 Rok akad. 2011/ / 24

Procesor ma architekturę rejestrową L/S. Wskaż rozkazy spoza listy tego procesora. bgt Rx, Ry, offset nand Rx, Ry, A add Rx, #1, Rz store Rx, [Rz]

Technika mikroprocesorowa. Linia rozwojowa procesorów firmy Intel w latach

PC 3 PC^ TIMER IN RESET PC5 TIMER OUT. c 3. L 5 c.* Cl* 10/H CE RO WR ALE ADO AD1 AD2 AD3 AD4 A05 A06 LTJ CO H 17 AD7 U C-"

Schematy zarzadzania pamięcia

PRZEWODNIK PO PRZEDMIOCIE

Zagadnienia zaliczeniowe z przedmiotu Układy i systemy mikroprocesorowe elektronika i telekomunikacja, stacjonarne zawodowe

Architektura komputera. Dane i rozkazy przechowywane są w tej samej pamięci umożliwiającej zapis i odczyt

Zadanie Zaobserwuj zachowanie procesora i stosu podczas wykonywania następujących programów

MIKROPROCESORY architektura i programowanie

Sprzęt komputerowy 2. Autor prezentacji: 1 prof. dr hab. Maria Hilczer

Kurs Zaawansowany S7. Spis treści. Dzień 1

Mikrokontroler 80C51

Katedra Systemów Automatyki Automatyka i Robotyka. Obszary kształcenia. Nauki techniczne

Układy czasowo-licznikowe w systemach mikroprocesorowych

Technika mikroprocesorowa I Wykład 4

Część I - Sterownik przerwań 8259A i zegar/licznik 8253

Liczniki, rejestry lab. 08 Mikrokontrolery WSTĘP

Architektura komputerów

Wprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera

Transkrypt:

ORGANIZACJA SYSTEMÓW KOMPUTEROWYCH Dr inŝ. Paweł Raczyński Katedra Systemów Automatyki WETI PG 2010-11-04 P.R. KSA 1

Literatura (1): A. Pyrchla, BIOS. Leksykon kieszonkowy., Helion 2007 A. Pyrchla, B. Danowski, BIOS. Przewodnik, Helion 2007 V. Pirogow, Asembler Podręcznik programisty, Helion 2005 E. Wróbel, Asembler Praktyczny kurs asemblera, Helion 2004 S. Kruk, Turbo asembler idee, polecenia, rozkazy procesora Pentium, Mikom 2000 K. R. Irvine, Asembler dla procesorów Intel vademecum profesjonalisty, Helion 2003 A. Jedruch, Techniki asemblerowe w programowaniu komputera IBM PC. Cz. 2 Zastosowanie funkcji systemu DOS, Skrypt PG 1991 J. Hollingworth, D. Buttrtfield, B. Swart, J. Allsop, C++ Builder 5 vademecum profesjonalisty tom 1 i 2, Helion 2001 Misiurewicz P. Układy mikroprocesorowe struktury i programowanie. WNT 1983. Misiurewicz P. Podstawy techniki mikroprocesorowej. WNT 1991. Niederliński A. Mikroprocesory mikrokomputery mikrosystemy. WSiP 1988. Systemy interfejsu w miernictwie. Praca zbiorowa pod redakcją W. Nowakowskiego. WKiŁ 1987. Rydzewski A. "Mikrokomputery jednoukładowe rodziny MCS-51", WNT Warszawa 1992. Mielczarek W. "Szeregowe interfejsy cyfrowe", HELION, 1993. Metzger P. "Anatomia PC", HELION, 2008. 2010-11-04 P.R. KSA 2

Literatura (2): Coffron J.W. "Lokalizacja uszkodzeń w systemach mikroprocesorowych" WNT Warszawa 1985. Cellary W., Królikowski Z. "Wprowadzenie do projektowania baz danych" WNT Warszawa 1989. Ullman J.D. "Systemy baz danych", WNT Warszawa 1988. M. Szafarczyk, D. Śmigulska-Grądzka, R. Wypysiński Podstawy układów sterowań cyfrowych i komputerowych PWN 2007 A. S. Tanenbaum, Strukturalna organizacja systemów komputerowych, Helion 2006 N. Noam, S. Shimon Elementy systemów komputerowych. Budowa nowoczesnego komputera od podstaw., WNT 2008 B. Danowski, Leksykon pojęć sprzętowych, Helion 2005 W. Komorowski, Krótki kurs architektury i organizacji komputerów, Mikom 2004 W. Stallings, Organizacja i architektura systemu komputerowego, WNT 2003 A. Skorupski, Podstawy budowy i działania komputerów, WKŁ W. Nawrocki, Komputerowe systemy pomiarowe, WKŁ B. Zieliński, Układy mikroprocesorowe. Przykłady rozwiązań, Helion 2002 Katalogi, strony WWW i podręczniki firmowe. 2010-11-04 P.R. KSA 3

Warunki zaliczenia przedmiotu Wykła d Punkty Kolokwium 8-tydzień 20 Kolokwium 15-tydzień 20 Raze m 40 próg zalicze nia 21 pkt Laboratorium Punkty odrobie nie wszystkich ćw iczeń Ćwiczenie 1-6 6*7=42 S rawozdania 1-6 6*3=18 Raze m 60 próg zalicze nia 31 pkt Oce na zaleŝna sumy punktów (trze ba zaliczyć obie części) Dla chę tnych Re fe rat max 10 min 5 2010-11-04 P.R. KSA 4

Model prostego komputera URZĄDZENIA WE/WY magistrala PROCESOR PAMIĘĆ 2010-11-04 P.R. KSA 5

Model prostego procesora Rodzina procesorów firmy Intel Prawo Moore a moc obliczeniowa procesorów podwaja się co 24 miesiące 2010-11-04 P.R. KSA 6

Model prostego procesora (i8080) 2010-11-04 P.R. KSA 7

Model prostego procesora (i8080) internal data bus Accumulator Buffer FLAGS Accomulator B-register C-register Buffer ALU L-register SP Jednostka arytmetyczno-logiczna PC Registers 2010-11-04 P.R. KSA 8

Model prostego procesora (i8080) General PurposeRegisters Accomulator B-register D-register H-register C-register E-register L-register 8 bit data 8/16 bit data / 16-bit address 8/16 bit data / 16-bit address 8/16 bit data / 16-bit address FLAGS SP SP -IP 16-bit address 16-bit address Programowo dostępne rejestry ogólnego przeznaczenia 2010-11-04 P.R. KSA 9

Model prostego procesora (i8080) Instruction register Budowa instrukcji procesora 2010-11-04 P.R. KSA 10

Model prostego procesora (i8080) data register address register address data PAMIĘĆ CONTROL strobe processor Adres źródło: PC-IP adres rozkazu SP adresowanie pamięci stosu HL, DE, BC adresowanie danych Dane źródło/miejsce przeznaczenia: A,B,C,D,E,H,L,IR dane 8-bitowe HL, DE, BC, AF dane 16-bitowe 2010-11-04 P.R. KSA 11

Model prostego procesora (i8080) Cykl magistrali 2010-11-04 P.R. KSA 12

Model prostego procesora (i8080) Pobranie rozkazu Wykonanie rozkazu Pobranie rozkazu Wykonanie rozkazu Pobranie rozkazu Wykonanie rozkazu P: Szyna adresowa:= IP IP:=IP+1 IR:=DANE IF nie zakończono pobierania rozkazu GOTO P K: WYKONAJ ROZKAZ czas Cykl pracy procesora 2010-11-04 P.R. KSA 13

Model prostego procesora (i8080) PAMIĘĆ MEMR & MEMW A0-A15 IOR & IOWW A0-A7 UKŁADY WE/WY Podział przestrzeni adresowej 2010-11-04 P.R. KSA 14

Model prostego procesora (i8080) Lista rozkazów 2010-11-04 P.R. KSA 15

Model prostego procesora (i8080) Lista rozkazów 2010-11-04 P.R. KSA 16

Model prostego procesora (i8080) Lista rozkazów 2010-11-04 P.R. KSA 17

Model prostego procesora (i8080) adresowanie natychmiastowe adresowanie rejestrowe adresowanie bezpośrednie adresowanie rejestrowe pośrednie Maszyna jednoadresowa - konsekwencje Tryby adresowania 2010-11-04 P.R. KSA 18

Model prostego procesora (i8080) T1 WAIT=YES pobranie rozkazu czytanie z pamięci pisanie do pamięci czytanie ze stosu pisanie na stos czytanie z wejścia pisanie na wyjście przyjęcie przerwania NO NO T2 T3 T4 T5 Command finished? INT&INTE=1 WAIT=NO WAIT=YES TW Cykl maszynowy: T1-T3/T4/T5 (jeden kontakt z magistralą) Rozkaz: 1-5 cykli maszynowych Uproszczony graf stanów YES zamiast pobrania rozkazu przyjęcie przerwania 2010-11-04 P.R. KSA 19

Model prostego procesora (i8080) HOLDRQ=YES T3 T3 HOLDRQ=YES HOLDRQ=NO TWH Generacja HOLDACK Ustawienie magistrali w stan TS Stan zatrzymania 2010-11-04 P.R. KSA 20

Model prostego procesora (i8080) 2010-11-04 P.R. KSA 21

Współpraca z pamięcią 2010-11-04 P.R. KSA 22

Współpraca z pamięcią 2010-11-04 P.R. KSA 23

Współpraca z pamięcią 2010-11-04 P.R. KSA 24

Współpraca z pamięcią 2010-11-04 P.R. KSA 25

Współpraca z pamięcią 2010-11-04 P.R. KSA 26

Współpraca z pamięcią 2010-11-04 P.R. KSA 27

Współpraca z pamięcią 2010-11-04 P.R. KSA 28

Współpraca z pamięcią 2010-11-04 P.R. KSA 29

Współpraca z pamięcią 2010-11-04 P.R. KSA 30

Współpraca z pamięcią 2010-11-04 P.R. KSA 31

Współpraca z pamięcią 2010-11-04 P.R. KSA 32

Współpraca z pamięcią 2010-11-04 P.R. KSA 33

Architektura wejść cyfrowych i analogowych address bus CPU data bus RD WR Dekoder adresowy OR Rejestr ADC OR Wejście cyfrowe obiekt S&H obiekt Wejście analogowe Czujnik Przetwornik 2010-11-04 P.R. KSA 34

Architektura wyjść cyfrowych i analogowych address bus CPU PWM data bus RD WR Dekoder adresowy OR Rejestr DAC OR Wyjście cyfrowe obiekt Filtr dolnoprzepustowy obiekt Wzmacniacz i człon wykonawczy Filtr dolnoprzepustowy Wzmacniacz i człon wykonawczy obiekt Wyjście analogowe Wyjście analogowe 2010-11-04 P.R. KSA 35

Kierunki rozwojowe mikroprocesorów częstotliwość zegara wydłuŝenie słowa i rejestrów zwiększenie uniwersalności rejestrów zwiększenie przestrzeni adresowej rozbudowa listy rozkazów CISC/RISC zwiększenie liczby trybów adresowania modyfikacja architektury i cyklu procesora zwiększenie liczby przerwań wieloprogramowość mechanizmy ochrony zasobów działanie na wielu argumentach jednocześnie MMX inne? kompatybilność! 2010-11-04 P.R. KSA 36

8086 protoplasta rodziny x86 - rejestry AX (16) BX (16) CX (16) DX (16) Rejestry ogólnego przeznaczenia AH (8) AL (8) BH (8) BL (8) CH (8) CL (8) DH (8) DL (8) akumulator baza licznik dane Rejestry indeksowe BP (16) SP (16) SI (16) DI (16) Rejestry stanu i sterowania FLAGI (16) IP (16) Rejestry segmentowe CS (16) DS (16) SS (16) ES (16) 2010-11-04 P.R. KSA 37

8086 protoplasta rodziny x86 - flagi 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 x x x x O D I T S Z x A x P x C O overflow (przepełnienie) D direction (kierunek) I interrupt (przerwanie) T trap (pułapka) S sign (znak) Z zero A auxilliary carry (przeniesienie pomocnicze) P parity (parzystość) C carry (przeniesienie) x nie wykorzystane 2010-11-04 P.R. KSA 38

8086 protoplasta rodziny x86 adresowanie pamięci 15 adres efektywny (16) 0 15 segment (16) 0000 0 SUMATOR 19 0 adres fizyczny (20) 2010-11-04 P.R. KSA 39

8086 protoplasta rodziny x86 adresowanie pamięci IP (16) CS (16) 0000 SUMATOR MOV d segment kodu SI (16) SUMATOR DS (16) 0000 SUMATOR Argument segment danych MOV r,[si+d] 2010-11-04 P.R. KSA 40

8086 protoplasta rodziny x86 modele pamięci 00000H KOD IP CS SS DS ES STOS DANE SP, BP BX, SI Wspólne dane DI FFFFFH 2010-11-04 P.R. KSA 41

8086 protoplasta rodziny x86 modele pamięci 00000H 00000H KOD + DANE + STOS + WSPÓLNE DANE 64 kb KOD 64 kb STOS 64 kb... DANE 64 kb Wspólne dane 64 kb CS=SS=DS=ES FFFFFH FFFFFH CS SS DS ES 2010-11-04 P.R. KSA 42

8086 protoplasta rodziny x86 modele pamięci 00000H KOD DANE 64 kb 64 kb Pojęcia: Bliski w zasięgu 16 bitowego przesunięcia Odległy wymaga modyfikacji przesunięcia i segmentu Krótki wymaga modyfikacji IP Długi wymaga modyfikacji CS i IP FFFFFH Konsekwencje: czas wykonania zajętość pamięci 2010-11-04 P.R. KSA 43

8086 protoplasta rodziny x86 sterowanie Jednostka wykonawcza EU magistrala wewnętrzna Jednostka obsługi magistrali BIU magistrala zewnętrzna rozkaz rozkaz rozkaz kolejka rozkazów pobranie rozkazu wykonanie rozkazu pobranie rozkazu wykonanie rozkazu pobranie rozkazu pobranie rozkazu wykonanie rozkazu pobranie rozkazu wykonanie rozkazu t 2010-11-04 P.R. KSA 44

8086 protoplasta rodziny x86 tryby adresowania albo albo albo BX BP SI DI albo albo BX BP SI DI + albo albo albo + CS 0000 SS 0000 DS 0000 ES 0000 przemieszczenie + adres efektywny + adres fizyczny 2010-11-04 P.R. KSA 45

8086 protoplasta rodziny x86 tryby adresowania kod operacji mod przemieszczenie adres efektywny adresowanie bezpośrednie kod operacji mod BX albo BP albo SI albo DI adresowanie pośrednie przez rejestr adres efektywny kod operacji mod przemieszczenie BX albo BP + adres efektywny adresowanie bazowe (względne) 2010-11-04 P.R. KSA 46

8086 protoplasta rodziny x86 tryby adresowania kod operacji mod przemieszczenie SI albo DI + automodyfikacja SI i DI flaga kierunku D adresowanie indeksowe adres efektywny kod operacji mod przemieszczenie SI albo DI + BX albo BP adresowanie bazowo-indeksowe adres efektywny automodyfikacja SI i DI flaga kierunku D 2010-11-04 P.R. KSA 47

8086 protoplasta rodziny x86 tryby adresowania kod operacji SI DI adres efektywny łańcucha źródłowego adres efektywny łańcucha docelowego adresowanie łańcuchów kod operacji dana DX adres portu bezpośrednie adresowanie portu kod operacji adres portu pośrednie adresowanie portu 2010-11-04 P.R. KSA 48

8086 protoplasta rodziny x86 organizacja magistrali FFFFF FFFFD FFFFE FFFFC a+1 a A19-A1 3 1 A19-A1 2 0 D15-D8 D7-D0 BHE=1 Bus High Enable A0=0 Transmisja bajtu do/z komórki o adresie parzystym 2010-11-04 P.R. KSA 49

8086 protoplasta rodziny x86 organizacja magistrali FFFFF FFFFD FFFFE FFFFC a+1 a A19-A1 3 1 A19-A1 2 0 D15-D8 D7-D0 BHE=0 Bus High Enable A0=1 Transmisja bajtu do/z komórki o adresie nieparzystym 2010-11-04 P.R. KSA 50

8086 protoplasta rodziny x86 organizacja magistrali FFFFF FFFFD FFFFE FFFFC b+1 a+1 b a A19-A1 3 1 A19-A1 2 0 D15-D8 D7-D0 BHE=0 Bus High Enable A0=0 Transmisja słowa do/z komórki o adresie parzystym 2010-11-04 P.R. KSA 51

8086 protoplasta rodziny x86 organizacja magistrali FFFFF FFFFE FFFFF FFFFE FFFFD FFFFC FFFFD FFFFC b+1 b b+1 b a+1 a a+1 a A19-A1 A19-A1 A19-A1 A19-A1 3 2 3 2 1 0 1 0 D15-D8 D7-D0 D15-D8 D7-D0 BHE=0 Bus High Enable A0=1 BHE=1 Bus High Enable A0=0 Transmisja słowa do/z komórki o adresie nieparzystym (dwa cykle magistrali!) 2010-11-04 P.R. KSA 52

8086 protoplasta rodziny x86 lista rozkazów rozwiązanie CISC wiele złoŝonych rozkazów wykonywanych często w ciągu wielu cykli maszynowym rozwiązanie RISC niewielka ilość prostych rozkazów ale wykonywanych najczęściej w jednym (lub w minimalnej liczbie) cykli maszynowych Wybór zaleŝy przede wszystkim od zadań stawianych danemu procesorowi! 2010-11-04 P.R. KSA 53

8086 protoplasta rodziny x86 lista rozkazów Rozkazy przesłań 2010-11-04 P.R. KSA 54

8086 protoplasta rodziny x86 lista rozkazów Rozkazy arytmetyczne 2010-11-04 P.R. KSA 55

8086 protoplasta rodziny x86 lista rozkazów Rozkazy manipulacji na bitach 2010-11-04 P.R. KSA 56

8086 protoplasta rodziny x86 lista rozkazów Wykorzystanie rejestrów i flag Rozkazy operacji na łańcuchach 2010-11-04 P.R. KSA 57

8086 protoplasta rodziny x86 lista rozkazów Diagram operacji na łańcuchach 2010-11-04 P.R. KSA 58

8086 protoplasta rodziny x86 lista rozkazów Rozkazy skoków i skoków ze śladem / powrotu 2010-11-04 P.R. KSA 59

8086 protoplasta rodziny x86 lista rozkazów problem zasięgu skoku adres bezpośredni / względny CALL RET 0059 IP 0059 IP CALL RET 2C00 CS 2C00 CS 0059 IP 0059 IP Rozkazy skoków ze śladem bliskich i dalekich 2010-11-04 P.R. KSA 60

8086 protoplasta rodziny x86 lista rozkazów Wybrane konsekwencje resetu Rozkazy sterujące 2010-11-04 P.R. KSA 61

8086 protoplasta rodziny x86 lista rozkazów Czas wyznaczania adresu efektywnego Fragment listy rozkazów 2010-11-04 P.R. KSA 62

8086 protoplasta rodziny x86 przerwania Struktura systemu przerwań i ich priorytety 2010-11-04 P.R. KSA 63

8086 protoplasta rodziny x86 przerwania Wektory przerwań Obsługa pracy krokowej (TF=1) 2010-11-04 P.R. KSA 64

8086 protoplasta rodziny x86 przerwania Przerwania wewnętrzne 0 dzielenie przez 0 1 praca krokowa 2 NMI 3 pułapka 4 gdy podczas INT0 wykryty nadmiar Diagram obsługi przerwań 2010-11-04 P.R. KSA 65

8086 protoplasta rodziny x86 tryb pracy Tryb minimalny / maksymalny Tryb minimalny system z pojedynczym mikroprocesorem, niewielkie zasoby Tryb maksymalny procesor współpracuje ze sterownikiem magistrali, moŝliwa znaczna rozbudowa zasobów komputera oraz współpraca wielu procesorów 2010-11-04 P.R. KSA 66

80286 tryby pracy W trybie rzeczywistym moŝliwość adresacji 1 MB pamięci segmentowanej, wprowadzony w celu kompatybilności z wcześniejszymi modelami. W trybie chronionym moŝliwość adresowania 4 GB pamięci adres 32 bitowy. UmoŜliwia sprzętową ochronę pamięci przy pracy wielozadaniowej moduł Memory Management Unit (MMU). rejestry segmentowe zawierają selektory, które wskazują deskryptory 8-bajtowe struktury opisujące segment. deskryptor zawiera wskazanie fizycznego adresu w pamięci 24-bitowy adres bazowy, 16-bitowa długość segmentu, prawa dostępu, numer uprawnienia segmentu przerwanie sprzętowe w przypadku naruszenia praw dostępu przełączanie rzeczywisty/chroniony bit PE (Protection Enable) w Control Register 2010-11-04 P.R. KSA 67

80286 tryb chroniony - deskryptor 31-24 23 22 21 20 19-16 15 14-13 12 11-8 7-0 Ba za 31-24 ZIARN D/B 0 S YS re z Limit 19-16 PAM PRZYWILEJ S TYP Ba za 23-16 Ba za 15-0 Limit 15-0 Baza 32-bitowy offset segmentu Limit 20-bitowa wielkość segmentu interpretacja w kontekście ZIARN D/B 0-segm 16-bitowy, 1-segm 32-bitowy ZIARN 0-ziarnistość 1B (max 1 MB), 1-ziarnistość 4kB (max 4GB) SYS rez zarezerwowane dla systemu operacyjnego PAM informacja czy segment załadowany do pamięci PRZYWILEJ poziom uprzywilejowania (0 najwyŝszy) S 0 segment systemowy TYP typ segmentu i prawa dostępu (róŝna interpretacja dla róŝnych segmentów) 2010-11-04 P.R. KSA 68

tryby wirtualny V86 (Virtual 8086) Tryb wirtualny umoŝliwia procesorom IA-32 uruchamianie programów przeznaczonych dla trybu rzeczywistego. Uwaga: dostęp do zasobów np. portów, przerwań jest sankcjonowany przez system operacyjny (niedostępne bezpośrednio dla uŝytkownika). Na system operacyjny spada konieczność emulowania zasobów i nadzór nad wykorzystaniem rzeczywistych zasobów. Systemy operacyjne mają moŝliwość wykorzystanie tego trybu nazywane róŝnie np. DOSEMU, DOSBOX lub NTVDM. 2010-11-04 P.R. KSA 69

8086 protoplasta rodziny x86 technologia MMX Single Instruction Multiple Data jak przetworzyć jedną instrukcją wiele danych? Odmiany tej technologii: MMX (Intel) - MultiMedia Extensions 3Dnow (AMD) Streaming SIMD Extensions (SSE) Pentium III, nowsze AMD Streaming SIMD Extensions 2 (SSE 2) Pentium IV, AMD 64 Streaming SIMD Extensions 3 (SSE 3) Xeon, nowsze AMD Technologia MMX operuje na ośmiu 64-bitowych rejestrach danych oznaczonych mm0,..., mm7, stanowiących części 80-bitowych rejestrów FPU. To wyklucza jednoczesne uŝycie FPU i MMX! Rejestry 64-bitowe mieszczą spakowane dane np. 2 słowa 32-bitowe, 4 słowa 16-bitowe lub 8 słów 8-bitowych. MoŜna zatem wykonywać jedną instrukcje od razu na zbiorze danych! 2010-11-04 P.R. KSA 70

Obsługa urządzeń wejścia - wyjścia Synchronizacja wymiany danych start start Nadajnik informacji Dane waŝne = NIE Gotowość = TAK zapis Przygotuj dane NIE Dane waŝne? Bufor (1) S Q (2) NIE Odbiornik gotowy? TAK Zapis do bufora TAK Odczyt z bufora Gotowość = NIE R Dane waŝne = TAK UŜyj danych odczyt Odbiornik informacji (2) (1) NIE TAK Odbiornik gotowy? Dane waŝne = NIE Koniec danych? Gotowość = TAK Dane waŝne? Koniec danych? 2010-11-04 P.R. KSA 71 stop TAK NIE TAK TAK stop NIE NIE

Obsługa urządzeń wejścia - wyjścia Wyjście równoległe INT address bus CPU address decoder OR write port Register data bus RD WR read status OR Q FLIP- FLOP S R Output device (1) (2) 2010-11-04 P.R. KSA 72

Obsługa urządzeń wejścia - wyjścia Wejście równoległe INT address bus CPU address decoder OR read port Register load data bus RD WR read status OR Q FLIP- FLOP R S Input device (2) (1) 2010-11-04 P.R. KSA 73

Programowany interfejs równoległy 8255 2010-11-04 P.R. KSA 74

Programowany interfejs równoległy 8255 Opis wyprowadzeń 2010-11-04 P.R. KSA 75

Programowany interfejs równoległy 8255 Dostęp do zasobów 2010-11-04 P.R. KSA 76

Programowany interfejs równoległy 8255 Tryby pracy 2010-11-04 P.R. KSA 77

Programowany interfejs równoległy 8255 Programowanie trybów pracy słowo sterujące 2010-11-04 P.R. KSA 78

Programowany interfejs równoległy 8255 Programowanie trybu pracy portów 2010-11-04 P.R. KSA 79

Programowany interfejs równoległy 8255 Słowo wykonawcze indywidualne ustawianie/kasowanie bitów 2010-11-04 P.R. KSA 80

Programowany interfejs równoległy 8255 Tryb 1 - wejście INTR=1 - przerwanie 2010-11-04 P.R. KSA 81

Programowany interfejs równoległy 8255 Tryb 1 - wyjście INTR=1 - przerwanie 2010-11-04 P.R. KSA 82

Programowany interfejs równoległy 8255 Tryb 1 kombinacja wejście / wyjście 2010-11-04 P.R. KSA 83

Programowany interfejs równoległy 8255 Tryb 2 port dwukierunkowy 2010-11-04 P.R. KSA 84

Programowany interfejs równoległy 8255 Czytanie portu C w trybach 1 i 2 dostarcza informacji statusowej 2010-11-04 P.R. KSA 85

Programowany interfejs równoległy 8255 Przykład wykorzystania współpraca z przetwornikami A/C i C/A 2010-11-04 P.R. KSA 86

Zestaw programowalnych liczników 8254 Architektura i moŝliwości układu 2010-11-04 P.R. KSA 87

Zestaw programowalnych liczników 8254 2010-11-04 P.R. KSA 88

Zestaw programowalnych liczników 8254 Współpraca z magistralą systemową 2010-11-04 P.R. KSA 89

Zestaw programowalnych liczników 8254 Cykl zapisu Cykl odczytu 2010-11-04 P.R. KSA 90

Zestaw programowalnych liczników 8254 Postać słowa sterującego 2010-11-04 P.R. KSA 91

Zestaw programowalnych liczników 8254 Rozkazy wykonawcze i status 2010-11-04 P.R. KSA 92

Zestaw programowalnych liczników 8254 Adresy i konsekwencje polecenia read-back 2010-11-04 P.R. KSA 93

Zestaw programowalnych liczników 8254 Tryb 0 przerwanie po doliczeniu do stanu końcowego OUT na początku =0, zmienia stan na 1 po osiągnięciu stanu końcowego GATE = 0 blokuje zliczanie Start/Restart zliczania następny impuls zegara po załadowaniu licznika 2010-11-04 P.R. KSA 94

Zestaw programowalnych liczników 8254 Tryb 1 sprzętowo (re)wyzwalany pojedynczy impuls OUT na początku =1, zmienia stan na 0 po wyzwoleniu GATE GATE powtórnie wyzwala impuls (restartuje zliczanie) Czas trwania impulsu zaleŝny od nastawy wpisanej do licznika 2010-11-04 P.R. KSA 95

Zestaw programowalnych liczników 8254 Tryb 2 generator sygnału o zadanej częstotliwości OUT na początku =1, zmienia stan na 0 na jeden takt zegara podczas wyzerowania licznika GATE = 0 zatrzymuje zliczanie Wpisanie nowej wartości do licznika podczas zliczania skutkuje w następnym cyklu zliczania 2010-11-04 P.R. KSA 96

Zestaw programowalnych liczników 8254 Tryb 3 generator przebiegu prostokątnego OUT na początku =1, zmienia stan na 0 na połowę okresu zliczania licznika W przypadku nieparzystego N OUT=1 przez (N-1)/2+1 okresów zegara a OUT=0 przez (N-1)/2 okresów zegara GATE = 0 zatrzymuje zliczanie 2010-11-04 P.R. KSA 97

Zestaw programowalnych liczników 8254 Tryb 4 programowo wyzwalany impuls o czasie trwania 1 okresu zegara OUT na początku =1, zmienia stan na 0 po wyzerowaniu licznika, start zliczania po załadowaniu GATE = 0 wstrzymuje zliczanie Przeładowanie licznika w trakcie zliczania powoduje dokończenie zliczania wg. Pierwotnej nastawy, odliczenie wg. Nowej i dopiero generację impulsu 2010-11-04 P.R. KSA 98

Zestaw programowalnych liczników 8254 Tryb 5 sprzętowo (re)wyzwalany impuls o czasie trwania 1 okresu zegara OUT na początku =1, zmienia stan na 0 po wyzerowaniu licznika, start zliczania po opadającym zboczu GATE Kolejne zbocze opadające GATE restartuje zliczanie Przeładowanie licznika w trakcie zliczania powoduje dokończenie zliczania wg. pierwotnej nastawy, odliczenie wg. nowej dopiero po kolejnym wyzwoleniu 2010-11-04 P.R. KSA 99

Zestaw programowalnych liczników 8254 Minimalne i maksymalne wartości początkowe zliczania w zaleŝności od wybranego trybu Podsumowanie roli GATE w poszczególnych trybach pracy 2010-11-04 P.R. KSA 100

Zestaw programowalnych liczników 8254 Parametry czasowe cyklu zapisu do licznika 2010-11-04 P.R. KSA 101

Zestaw programowalnych liczników 8254 Parametry czasowe sygnałów CLOCK i GATE 2010-11-04 P.R. KSA 102

Idea transmisji szeregowej synchronicznej Rejestr PISO dane Rejestr PISO ZEGAR takt Warunek poprawności transmisji: liczba impulsów zegara równa długości przesyłanego słowa zgodny kierunek przesuwu rejestrów Transmisja bez przerw wypełniaczem transmisji znaki synchronizacji. Bitowa szybkość transmisji (BST) wyznaczona przez zegar. Efektywna szybkość transmisji (EST) wynika z szybkości podawania danych. EST <= BST 2010-11-04 P.R. KSA 103

Idea transmisji szeregowej asynchronicznej Rejestr PISO dane Rejestr PISO ZEGAR takt N takt O ZEGAR Warunek poprawności transmisji: f(takt N) = f(takt O) decydują o bitowej szybkości transmisji zgodność fazy zegarów (mechanizm synchronizacji) ustalona długość znaków ustalony kierunek przesuwu rejestrów określony sposób kontroli poprawności przesyłanych danych Między przesłaniem kolejnych znaków dowolnie długa przerwa. Bitowa szybkość transmisji (BST) wyznaczona przez zegar. Efektywna szybkość transmisji (EST) wynika z szybkości podawania danych. EST <= BST 2010-11-04 P.R. KSA 104

Mechanizm synchronizacji w transmisji asynchronicznej stan spoczynku Bit startu Bity danych Bit(y) stopu Linia danych Zegar N T NADAJNIK RAMKA stan spoczynku Bit startu Bity danych Bit(y) stopu Linia danych Zegar O 3/2T T t ODBIORNIK Krótkoterminowa niestabilność f zegara < 5% 2010-11-04 P.R. KSA 105

Mechanizm kontroli poprawności 0 1 0 1 0 0 1 0 1 0 1 1 1 0 0 1 0 0 Bit parzystości ustawiany w nadajniku i kontrolowany w odbiorniku Bit nieparzystości ustawiany w nadajniku i kontrolowany w odbiorniku 0 1 0 1 0 0 1 0 0 0 1 1 1 0 0 1 0 1 2010-11-04 P.R. KSA 106

Parametry transmisji szeregowej asynchronicznej Transmisja synchroniczna niebieskie znaki danych, zielone znaki synchronizacji Transmisja asynchroniczna Standard RS232C 1 bit startu 5-8 bitów znaku danych tolerowany bit kontrolny 1, 1,5 lub 2 bity stopu BST {110, 300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200, 230400} bodów (bitów na sekundę) 2010-11-04 P.R. KSA 107

2010-11-04 P.R. KSA 108

16550 jeden z następców 8250 Adresy rejestrów wewnętrznych Schemat aplikacyjny 2010-11-04 P.R. KSA 109

16550 jeden z następców 8250 Struktura wewnętrzna 2010-11-04 P.R. KSA 110

16550 jeden z następców 8250 Rejestry sterujące 2010-11-04 P.R. KSA 111

16550 jeden z następców 8250 Funkcje przerwań 2010-11-04 P.R. KSA 112