układy wejścia/wyjścia

26
Układy wejścia/wyjścia

Upload: colby-freeman

Post on 01-Jan-2016

75 views

Category:

Documents


4 download

DESCRIPTION

Układy wejścia/wyjścia. Magistrala. Procesor. Pamięć. Układy I/O. Układy wejścia/wyjścia - układy elektroniczne pośredniczące w wymianie informacji między systemem komputerowym a urządzeniami peryferyjnymi. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Układy wejścia/wyjścia

Układy wejścia/wyjścia

Page 2: Układy wejścia/wyjścia

PamięćProcesor

Magistrala

Układy I/O

Page 3: Układy wejścia/wyjścia

Układy wejścia/wyjścia - układy elektroniczne pośredniczące w wymianie informacji między systemem komputerowym a urządzeniami peryferyjnymi

Driver - Program umożliwiający wykorzystanie urządzenia we/wy

Interfejs - Połączenie układu we/wy z urządzeniem zewnętrznym Zadaniem interfejsu jest przekazywanie danych obejmuje:

• fizyczne przewody i złącza• specyfikacja styków i sygnałów• poziomy sygnałów• zależności czasowe sygnałów

Page 4: Układy wejścia/wyjścia

Organizacje międzynarodoweOrganizacje krajowe

Zrzeszenia producentówProducenci

Organizacje normalizujące sprzęt komputerowy

ISO - International Organization for Standarization (od gr. isos - równy) Międzynarodowa Organizacja Normalizacyjnahttp://www.iso.org/

ISO jest pozarządową organizacją non-profit. Jej członkami mogą być wyłącznieagencje rządowe zajmujące się standaryzacją lub podobne do samego ISO pozarządoweorganizacje standaryzacyjne, po jednej z każdego kraju.

ISO nie posiada żadnej "mocy prawnej" do egzekwowania swoich norm.

Page 5: Układy wejścia/wyjścia

ANSI - American National Standards Intitute - instytucja ustalająca normy http://www.ansi.org/

IEC - International Electrotechnical CommisionMiędzynarodowa Komisja Elektrotechniczna przygotowujei publikuje standardy związane z elektrotechniką i elektronikąhttp://www.iec.ch/

VESA - Video Electronics Standards Associationhttp://www.vesa.org/

ITU - International Telecommunications UnionMiędzynarodowa Unia Telekomunikacyjnahttp://www.itu.int/

IEEE - Institute of Electrical and Electronics EngineersInstytut Inżynierów Elektryków i Elektronikówhttp://www.ieee.org/

PN - Polskie Normyhttp://www.pkn.pl/

Page 6: Układy wejścia/wyjścia

• różnice w szybkości działania• różnice w parametrach elektrycznych• różnice w formacie danych

Dlaczego stosowane są układy we/wy ?

Układy we/wy mogą być przeznaczone do współpracy z :

konkretnym urządzeniem wieloma urządzeniami

CPU

1011110011110101

1011110011110101

1011110011110101

10111100 Urządzenie BUrządzenie B

Urządzenie AUrządzenie A

Urządzenie CUrządzenie C

Page 7: Układy wejścia/wyjścia

sterowanie

pamięć

W zależności od sposobu komunikowania się z systemem układy we/wy dzielimy na :

• układy współadresowalne z pamięcią operacyjną UrządzenieUrządzenie UrządzenieUrządzenie

magistrala adresowamagistrala adresowaCPU

sterowanie

• układy izolowaneUrządzenieUrządzenie

CPUmagistrala adresowamagistrala adresowa

pamięć I/O

Page 8: Układy wejścia/wyjścia

Operacje wejścia/wyjścia

Operacjami we-wyj nazywamy całokształt działań potrzebnych do realizacji wymiany informacji pomiędzy procesorem i pamięcią z jednej strony a układem wej/wyj z drugiej.

Mogą być realizowane:• całkowicie przez procesor (operacje bezpośrednie)

PIO - Programmed Input/Output• inicjowane przez procesor a wykonywane przez inny układ (operacje pośrednie)

DMA - Direct Memory Access

Operacje wejścia/wyjścia z bezpośrednim sterowaniem przez procesor

• Bezwarunkowe operacje we/wy

Bezwarunkową operacją we/wyj nazywamy taką operację, przy realizacji której procesor nie sprawdza gotowości układu we/wyj do tej wymiany.

Zakłada się ciągłą gotowość urządzenia

Page 9: Układy wejścia/wyjścia

I/O

Bit gotowości układuCPU

danedane

UrządzenieUrządzenie

Wadą tego typu operacji jest konieczność wykonywania przez procesor pętli przepytywaniaw celu stwierdzenia gotowości tego układu do wymiany informacji.

• Operacje z testowaniem układu we/wy

Procesor sprawdza sygnał gotowości układu wej/wyj do wymiany

Page 10: Układy wejścia/wyjścia

• Operacje we/wy z przerwaniem programu

CPU I/OI/O UrządzenieUrządzenie

Aktualnie działający program

Program obsługi urządzenia

Linia zgłoszenia przerwania

Page 11: Układy wejścia/wyjścia

pamięć

CPU

I/OI/O UrządzenieUrządzenie

I/OI/O UrządzenieUrządzenie

I/OI/O UrządzenieUrządzenie

sterownikprzerwań

sterownikprzerwań

Obsługa wielu układów wejścia/wyjścia

klawiatura

myszka

kartasieciowa

drukarka

Programy obsługiurządzenia

Tablica wektorów przerwań

.

.

1

2

3

4

5

6

7

0

Page 12: Układy wejścia/wyjścia

Rodzaje linii transmisyjnych

Linia niesymetrycznanadajniknadajnik odbiornikodbiornik

Przewód sygnałowy

Przewód powrotny(masa)

nadajniknadajnik odbiornikodbiornik

Przewód powrotny(masa)

Zakłócenia• skręcanie przewodów• ekranowanie

Page 13: Układy wejścia/wyjścia

Linia symetryczna

D+D -

+-

Rodzaje transmisji Bajt

Page 14: Układy wejścia/wyjścia

Transmisja szeregowa

odbiornik

rejestr przesuwnymultiplekser

nadajnik

Page 15: Układy wejścia/wyjścia

Układwe / wyj

Urządzenie

TD

RD

TD

RDTD - Dane nadawaneRD - Dane odbierane

Czas trwania bituTransmisja asynchroniczna

nadajniknadajnik odbiornikodbiornik

00

Bit startu

11 00 11 00 00 11 00 00

Bity właściwej informacji

11

Bit stopu

11

Bit parzystości

Page 16: Układy wejścia/wyjścia

Przed rozpoczęciem transmisji należy ustalić parametry komunikacji odbiornika i nadajnika:

• Szybkość transmisji (liczba bitów na sekundę)• Długość słowa (liczba bitów w słowie 4-8)• Bit parzystości (parzyste, nieparzyste,brak)• Bity stopu (1-2)

Transmisja synchroniczna

nadajniknadajnik odbiornikodbiornik

synchronizacjasynchronizacja

Ramka 1Ramka 1 Ramka 2Ramka 2 Ramka 3Ramka 3 Ramka 4Ramka 4

Bajty informacjiBajty

nagłówka

Bajtykontrolne ikorekcyjne

Bajtysynchronizacji

Page 17: Układy wejścia/wyjścia

Transmisja pseudosynchroniczna

Sygnał zegarowy

Dane

Transmisja równoległa

Układwe / wyj

Urządzenie

odbiorniknadajnik

01110101

0

1

1

1

0

1

0

1

Page 18: Układy wejścia/wyjścia

Układwe / wyjUkład

we / wyj UrządzenieUrządzenie

ACK

STB

Dane

STB - Strobe (sygnał nadajnika)ACK - Acknowledge (zezwolenie na transmisję) sygnał odbiornika

Układwe / wyjUkład

we / wyj UrządzenieUrządzenie

ACK

STB

Dane

Transmisja z potwierdzeniem ( handshaking )

Page 19: Układy wejścia/wyjścia

Układwe / wyjUkład

we / wyj

UrządzenieUrządzenie

ACK

STB

Dane

Dane

Adres

INT

INTA

RD

WR

CPU we/wyjwe/wyj urządzenieurządzenie

Transmisja z potwierdzeniem ( handshaking )

Page 20: Układy wejścia/wyjścia

Układwe / wyjUkład

we / wyj

UrządzenieUrządzenie

ACK

STB

Dane

Dane

Adres

INT

INTA

RD

WR

CPU we/wyjwe/wyj urządzenieurządzenie

Transmisja z potwierdzeniem ( handshaking )

Page 21: Układy wejścia/wyjścia

Układwe / wyjUkład

we / wyj

UrządzenieUrządzenie

ACK

STB

Dane

Dane

Adres

INT

INTA

RD

WR

Numer urządzenia

Adres komórki

CPU we/wyjwe/wyj urządzenieurządzenie

Transmisja z potwierdzeniem ( handshaking )

Page 22: Układy wejścia/wyjścia

Układwe / wyjUkład

we / wyj

UrządzenieUrządzenie

ACK

STB

Dane

Dane

Adres

INT

INTA

RD

WR

Adres komórki

CPU we/wyjwe/wyj urządzenieurządzenie

Transmisja z potwierdzeniem ( handshaking )

Page 23: Układy wejścia/wyjścia

Przerwanie (ang. interrupt) lub żądanie przerwania (IRQ - Interrupt ReQuest) – sygnał powodujący zmianę przepływu sterowania, niezależnie od aktualnie wykonywanego programu. Pojawienie się przerwania powoduje wstrzymanie aktualnie wykonywanego programu i wykonanie przez procesor kodu procedury obsługi przerwania (ang. interrupt handler).

Przerwanie (ang. interrupt) lub żądanie przerwania (IRQ - Interrupt ReQuest)

Page 24: Układy wejścia/wyjścia

Sprzętowe: 1. Zewnętrzne – sygnał przerwania pochodzi z zewnętrznego układu obsługującego przerwania sprzętowe; przerwania te służą do komunikacji z urządzeniami zewnętrznymi, np. z klawiaturą, napędami dysków itp. 2. Wewnętrzne, nazywane wyjątkami (ang. exceptions) – zgłaszane przez procesor dla sygnalizowania sytuacji wyjątkowych (np. dzielenie przez zero); dzielą się na trzy grupy:

Page 25: Układy wejścia/wyjścia

dzielą się na trzy grupy: 1. faults (niepowodzenie) – sytuacje, w których aktualnie wykonywana instrukcja powoduje błąd; gdy procesor powraca do wykonywania przerwanego kodu wykonuje następną, po tej która wywołała wyjątek, instrukcję; 2. traps (pułapki) – sytuacja, która nie jest błędem, jej wystąpienie ma na celu wykonanie określonego kodu; wykorzystywane przede wszystkim w debugerach; gdy procesor powraca do wykonywania przerwanego kodu tę samą instrukcję która wywołała wyjątek; 3. aborts – błędy, których nie można naprawić.

Page 26: Układy wejścia/wyjścia

Programowe – z kodu programu wywoływana jest procedura obsługi przerwania; najczęściej wykorzystywane do komunikacji z systemem operacyjnym, który w procedurze obsługi przerwania (np. w DOS 21h, 2fh, Windows 2fh, Linux x86 przerwanie 80h) umieszcza kod wywołujący odpowiednie funkcje systemowe w zależności od zawartości rejestrów ustawionych przez program wywołujący, lub oprogramowaniem wbudowanym jak procedury BIOS lub firmware.