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í



Podobné dokumenty
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ý.

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

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

Architektura počítače

FASTPort. Nová sběrnice pro připojení inteligentních karet* k osmibitovým počítačům. aneb. Jak připojit koprocesor

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.

Principy činnosti sběrnic

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

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

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

Rozhraní mikrořadiče, SPI, IIC bus,..

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

Systém řízení sběrnice

Přednášející: Zdeněk Kotásek. Ústav počítačových systémů, místnost č. 25

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

Hardware. Z čeho se skládá počítač

Inovace bakalářského studijního oboru Aplikovaná chemie. Reg. č.: CZ.1.07/2.2.00/

Provádění instrukcí. procesorem. Základní model

Procesor z pohledu programátora

Obvody a architektura počítačů. Jednoprocesorové počítače

Sběrnicová struktura PC Interní počítačové paměti PC

Operační paměti počítačů PC

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

Základní deska (1) Parametry procesoru (2) Parametry procesoru (1) Označována také jako mainboard, motherboard

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

Sběrnice PCI, PCI-X, PCI Express

Pozice sběrnice v počítači

enos dat rnici inicializaci adresování adresu enosu zprávy start bit átek zprávy paritními bity Ukon ení zprávy stop bitu ijíma potvrzuje p

požadovan adované velikosti a vlastností Interpretace adresy POT POT

Zemní ochrana rotoru generátoru ve spojení proudové injektážní jednotky PIZ 50V a ochrany REJ 521

Komunikace procesoru s okolím

PCU Procesorová jednotka. Příručka uživatele. Platí od výr. č Střešovická 49, Praha 6, s o f c o s o f c o n.

Paralelní rozhraní. Přehled standardů paralelního rozhraní Centronics

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


Snímače teploty a vlhkosti s komunikací po RS485 protokolem Modbus RTU - řada PHM

Konfigurace portů u mikrokontrolérů

Přednášející: Zdeněk Kotásek. Ústav počítačových systémů, místnost č. L322

Podstanice DESIGO PX Modulární řada s rozšiřujícím modulem

Princip funkce počítače

Z čeho se sběrnice skládá?

Základní uspořádání pamětí MCU

PROTOKOL O LABORATORNÍM CVIČENÍ

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

Fakulta informačních technologií VUT v Brně Ústav počítačových systémů Periferní zařízení, cvičení IPZ Analýza komunikace na sběrnici USB

Systémová sběrnice, souvislost architektury počítače a systémové

MCP BIOS řídicí jednotky Kit386EXR

Rozhraní ATA a ATAPI. Rozhraní ATA a ATAPI. Koncepce ATA. Řadič je součástí diskové jednotky. Původní fyzické rozhraní odvozeno od sběrnice ISA.

Přednášející: Zdeněk Kotásek. Ústav počítačových systémů, místnost č. L322

Základní deska (mainboard, motherboard)

Registrový model HDD

Registry 8*32bit ERn (=16*16bit En+Rn, 8*16bit+16*8bit En+RnH+RnL)

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

Jazyk symbolických adres

Adresní mody procesoru

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

Přednášející: Zdeněk Kotásek. Ústav počítačových systémů, místnost č. L336

Rozhraní USB. Rozhraní USB. Specifikace USB. Doplnění (upřesnění) 1.0. Rychlosti Low Speed (1.5 Mb/sec) a Full Speed (12 Mb/sec).

PCKIT LPT MODUL SBĚRNICE IOBUS PRO PC LPT. Příručka uživatele. Střešovická 49, Praha 6, s o f c o s o f c o n.

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

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

INFORMAČNÍ A KOMUNIKAČNÍ TECHNOLOGIE

MIDAM MW 240 modbus 2 x DI, 2 x DO

Praktické úlohy- 2.oblast zaměření

Základní normalizované datové přenosy

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

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

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

PK Design. MB-S2-150-PQ208 v1.4. Základová deska modulárního vývojového systému MVS. Verze dokumentu 1.0 ( )

CHARAKTERISTIKY MODELŮ PC

SPECIFIKACE DODÁVKY EPS A SERVISU EPS

Paměti a jejich organizace

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

AGP - Accelerated Graphics Port

Výklad učiva: Co je to počítač?

O autorovi 6 O odborném redaktorovi 7 Úvod 21 Laptop nebo notebook? 21 Co je cílem této knihy 22 Webové stránky autora 23 Osobní poznámka 23

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

Universal Serial Bus. Téma 12: USB. Komunikační principy Enumerace Standardní třídy zařízení

Vnější paměti. Vnější paměti. Dělení podle materiálu a fyzikálních principů

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

Grafické adaptéry a monitory

Sběrnice, připojování periferních zařízení a RAID. INP 2008 FIT VUT v Brně

SNÍMAČOVÁ JEDNOTKA TB2.310-USB2.0/1.2-ASCII

2007/2008 ZS. operačních systémů

IPZ laboratoře. Analýza komunikace na sběrnici USB L305. Cvičící: Straka Martin, Šimek Václav, Kaštil Jan. Cvičení 2

Inovace výuky prostřednictvím ICT v SPŠ Zlín, CZ.1.07/1.5.00/ Vzdělávání v informačních a komunikačních technologií

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

Zpracování informací

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

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

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

Metody připojování periferií

Rozhraní SCSI. Rozhraní SCSI. Architektura SCSI

PROCESOR. Typy procesorů

Úvod. Instrukce musí obsahovat: typ operace adresu operandu (operandů) typ operandů modifikátory adresy modifikátory operace POT POT

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

multiprotokolová komunikační ethernet brána pro PROFINET, EtherNet/IP a Modbus TCP

Vstupně - výstupní moduly

Sběrnice a rozhraní. Josef Voltr

Metody připojování periferií

Transkript:

Připojení periferních zařízen zení 1 Koncepce připojení V/V zařízení V/V zařízení jsou připojena na sběrnici pomocí řadičů. Řadiče specializované (řadič disku) lze k nim připojit jen zařízení určitého typu. univerzální (sériové rozhraní USB) lze k nim připojit zařízení různých typů. CPU Řadič V/V zařízení Sběrnice... Paměť Řadič V/V zařízení V/V zařízení 2

Rozhraní V/V řadiče Rozhraní V/V řadiče: Rozhraní pro připojení na sběrnici obvykle navrženo univerzálně pro snadné připojení na různé systémové sběrnice (nebo naopak jen pro určitou sběrnici, např. PCI), zahrnuje datové vodiče, několik adresních vodičů (výběr registru), řídicí signály (/CS, /RD, /WR, Reset,... ). Rozhraní pro připojení V/V zařízení u specializovaných řadičů přizpůsobeno připojenému V/V zařízení (disk,...), u univerzálních je buď programovatelné nebo přímo odpovídá standardu některého univerzálního rozhraní (SCSI, USB,...). Rozhraní pro připojení V/V řadiče na sběrnici Výstupní datové registry Stavové registry Vstupní datové registry Řídicí registry Rozhraní pro připojení V/V zařízení 3 Základní typy přenosu dat z/do V/V zařízení (1) Sériový přenos dat data se přenáší po jednom vodiči bit po bitu. V/V řadič... 0101001101000110... V/V obvod Paralelní přenos dat data se přenáší po více vodičích, obvykle po bytech, slovech (16 bitů) apod. V/V řadič... 0 0...... 1 1...... 0 0...... 1 0...... 0 0...... 0 1...... 1 1...... 1 0... Řízení V/V obvod 4

Základní typy přenosu dat z/do V/V zařízení (2) Asynchronní přenos Řadič komunikuje se zařízením způsobem požadavek potvrzení (Request Acknowledge), tzv. handshake. Umožňuje snadné přizpůsobení rychlosti počítače (řadiče) a zařízení. Obousměrná komunikace omezuje maximální dosažitelnou rychlost. REQ REQ IO řadič Data Zařízení IO řadič Data Zařízení D0-D7 D0-D7 REQ REQ Data Out Potvrzení zápisu Požadavek na zápis Data In Potvrzení dat Požadavek čtení 5 Základní typy přenosu dat z/do V/V zařízení (3) Synchronní přenos Řadič (nebo zařízení) vysílá taktovací signál. V každé periodě proběhne jeden dílčípřenos. Provedení přenosu se nepotvrzuje. Umožňuje dosažení vysoké přenosové rychlosti. CLK Strobe Přijímač Data Linkový budič Strobe Změna dat Data Vzorkování dat Synchronní přenos čtení z IO. 6

V/V řadič z pohledu programátora (1) V/V řadič je reprezentován sadou registrů: Datové registry pro vstup a výstup dat. Řídicí registry nastavení parametrů V/V řadiče resp. připojeného V/V zařízení. Stavové registry zjištění stavu V/V řadiče resp. připojeného V/V zařízení. Rozhraní pro připojení V/V řadiče na sběrnici Výstupní datové registry Stavové registry Vstupní datové registry Řídicí registry Rozhraní pro připojení V/V zařízení 7 V/V řadič z pohledu programátora (2) Jednotlivé registry V/V řadiče mohou být mapovány v paměťovém nebo ve V/V adresním prostoru. V/V řadič v paměťovém adresním prostoru (například procesor H8S): pro přístup k registrům V/V řadiče se používají stejné instrukce jako pro práci s pamětí (MOV,...). lze používat i další instrukce (pokud jsou v instrukčním souboru), často se používá neúplné dekódování adres. Registry V/V řadičů Paměť kódu a dat Paměťový adresní prostor 8

V/V řadič v paměťovém adr. prostoru CPU MOV @addr,r0 Paměť IO řadič D A RD WR CS D A RD WR CS Data Adresa CS_MEM CS_IO READ WRITE Dekodér adres Dekodér adres 9 V/V řadič z pohledu programátora (3) Jednotlivé registry V/V řadiče mohou být mapovány v paměťovém nebo ve V/V adresním prostoru. V/V řadič ve V/V adresním prostoru (např. IA-32): procesor rozlišuje adresní prostor paměti a adresní prostor V/V zařízení, pro práci se zařízeními ve V/V adresním prostoru slouží zvláštní instrukce (IN, OUT), na sběrnici se vyskytují kromě cyklů čtení z paměti a zápis do paměti také cykly čtení z V/V zařízení a zápis do V/V zařízení, adresní prostor V/V zařízení má obvykle menší velikost než adresní prostor paměti. Paměťový adresní prostor Paměť kódu a dat V/V adresní prostor Registry V/V řadičů 10

V/V řadič v odděleném V/V adr. prostoru CPU IN @addr,r0 D Paměť A RD WR CS D IO řadič A RD WR CS Data Adresa MEM_READ MEM_WRITE IO_READ IO_WRITE CS_MEM CS_IO Dekodér adres Dekodér adres 11 Univerzální V/V řadič 82C55A Obsahuje 3 ks. 8bitových paralelních portů. Každý port lze samostatně konfigurovat jako vstupní nebo výstupní. Port A a Port B mohou pracovat v základním (bitovém) nebo strobovaném režimu. Ve strobovaném režimu lze využít přerušovací systém procesoru. Řada výrobců (Intel, Harris, Toshiba, NEC, OKI,...). 8 D7-D0 A1 A0 RD WR CS RESET PA7-PA0 PC7-PC4 PC3-PC0 PB7-PB0 8 4 4 8 Port A Port C Port B Group A Group B 82C55A 12

Registry obvodu 82C55A Každý port (PA, PB, PC) má datový registr typu R/W: ve vstupním režimu se čtením datového registru čtou data z příslušného portu, ve výstupním režimu se zápisem do datového registru vysílají data na příslušný port. 82C55A má jeden řídicí registr, který se používá ke konfiguraci všech tří portů: nastavení směru portu (vstup nebo výstup) nastavení režimu činnosti (bitový nebo strobovaný režim). Ve strobovaném režimu a při použití přerušení slouží jako řídicí a stavový registr i některé bity Portu C. Datový reg. - Port A Datový reg. - Port B Datový reg. - Port C Řídicí registr A1 A0 0 0 0 1 1 0 1 1 13 Řídicí registr 82C55A Nastavení směru přenosu dat v portu PA, PB, PC. Nastavení režimu portu PA a PB (bitový nebo strobovaný režim). Nezávislé ovládání jednotlivých bitů PC. D7 D6 D5 D4 D3 D2 D1 D0 Group B 0 = PC3-PC0 Output 1 = PC3-PC0 Input 0 = PB7-PB0 Output 1 = PB7-PB0 Input 0 = Mode 0 1 = Mode 1 Group A 0 = PC7-PC4 Output 1 = PC7-PC4 Input 0 = PA7-PA0 Output 1 = PA7-PA0 Input 00 = Mode 0 01 = Mode 1 1x = Mode 2 D7 D6 D5 D4 D3 D2 D1 D0 0 0 0 = Bit 0 0 0 1 = Bit 1 0 1 0 = Bit 2... 1 1 1 = Bit 7 0 = Bit Set Flag 0 = Bit Reset 1 = Bit Set 1 = Mode Set Flag 14

Připojení 82C55A na sběrnici procesoru H8S 1. verze Adresní vodiče A0 a A1 zavedeme přímo na příslušné vstupy 82C55A. Ostatní adresní vodiče a signál /CSn (např. /CS3) zavedeme do externího dekodéru adres, který bude generovat /CS pro 82C55A. Signály /RD a /HWR lze použít přímo, /RESET je nutno invertovat. A23 A22 A21 A20... A2 A1 A0 Dekódováno v H8S Externí dekodér Adresa registru v 82C55A 15 Připojení 82C55A na sběrnici procesoru H8S 1. verze 16

Připojení 82C55A na sběrnici procesoru H8S 1. verze 17 Připojení 82C55A na sběrnici procesoru H8S 2. verze Nevýhoda předchozího zapojení: potřebujeme dekodér adres s velkým počtem vstupů. Jinéřešení: použijeme standardní dekodér a neúplné dekódování adres. A23 A22 A21 A20... A8 A7 A6 A5 A4 A3 A2 A1 A0 Dekódováno v H8S Nedekódováno Externí dekodér Adresa registru v 82C55A 18

Připojení 82C55A na sběrnici procesoru H8S 2. verze 19 Připojení 82C55A na sběrnici procesoru H8S 2. verze A23 A22 A21 A20... A8 A7 A6 A5 A4 A3 A2 A1 A0 Dekódováno v H8S Nedekódováno Externí dekodér Adresa registru v 82C55A Důsledek předchozího zapojení: PA leží na adrese 0110 0000 0000 0000 0000 0000 (binárně), tj.600 000. PB leží na adrese 0110 0000 0000 0000 0000 0001 (binárně), tj.600 001. PC leží na adrese 0110 0000 0000 0000 0000 0010 (binárně), tj.600 002. ŘR leží na adrese 0110 0000 0000 0000 0000 0011 (binárně), tj.600 003. Modře vyznačené adresní bity nejsou zavedeny do dekodéru, tj. mohou mít libovolnou hodnotu. Proto lze též registry adresovat např. takto: PA = 7FF F0C, PB = 60F 009, PC = 6F0 F0E, ŘR = 777 707 a dále mnoha jinými způsoby. 20

Připojení více V/V řadičů 21 Adresování více V/V řadičů Bázové adresy V/V řadičů: Řadič #0 0x600 000 Řadič #1 0x600 010 Řadič #2 0x600 020... Řadič #7 0x600 070 D7 - D0 A3 - A0 A7 - A4 /CS3 Dekodér adres /IO_CS0 /IO_CS1 /IO_CS2... V/V řadič #0 V/V řadič #1 V/V řadič #2... V/V řadič #7 /IO_CS7 22

Příklad použití 82C55A rozhraní Centronics Z rozhraní Centronics pro připojení tiskáren bylo postupně odvozeno rozhraní IEEE 1284. Rozhraní Centronics v podstatě odpovídá IEEE 1284 v tzv. Compatibility Mode. 8 DATA STROBE BUSY 23 Rozhraní Centronics (1) 8 DATA STROBE BUSY DATA STROBE BUSY > 1 us 24

Rozhraní Centronics (2) Z DATA =... DATA STROBE BUSY + BUSY = H? - STROBE = L > 1 us - BUSY = H? + STROBE = H K 25 Rozhraní Centronics pomocí 82C55A (1) Pro přenos dat použijeme PA v bitovém režimu (výstup). Pro výstup /STROBE použijeme PC0 (výstup). Pro vstup BUSY použijeme PC4 (vstup), / nepotřebujeme. PA PC0 PC4 PC5 82C55A 8 DATA STROBE BUSY 26

Rozhraní Centronics pomocí 82C55A (2) Poznámka: Rozložení signálů na konektoru neodpovídá specifikaci IEEE 1284. 27 Řízení V/V operací Přímé řízení procesorem. Řízení V/V operací s využitím přerušení. Řízení V/V operací DMA řadičem. Použití specializovaného V/V procesoru. 28

Přímé řízení V/V zařízení procesorem 1. Procesor čte (programově) stavové registry řadiče a testuje připravenost. 2. Není-li zařízení připraveno opakuje čtení a test (bod 1). 3. Je-li zařízení připraveno, čte nebo zapisuje data z/do datových registrů. 4. Postup se opakuje až do konce přenosu. Procesor je trvale zatížen čtením a testováním stavu. Maximální rychlost je omezena rychlostí provedení instrukcí pro čtení stavu test zápis/čtení dat. Jednoduchý hardware. Příklad: programové řízení rozhraní Centronics. Tisk řetězce znaků zakončeného znakem 0x00 na tiskárně. 29 Příklad: programová obsluha IO zařízení Jednoduchý příklad: vyslání řetězce znaků na zařízení (tiskárnu) připojené na rozhraní IEEE 1284 (Centronics). Řetězec je uložen v paměti a je ukončen znakem 0x00. Rozhraní IEEE 1284 je vytvořeno pomocí obvodu 82C55A. Vyslání řetězce bude řízeno programově. PA PC0 PC4 PC5 82C55A 8 DATA STROBE BUSY 30

Programová obsluha IO zařízení Inicializace 82C55A: nastavení režimu PA na MODE 0, nastavení směru přenosu: PA = out, PC0-PC3 = out, PC4-PC7 = in, nastavení /STROBE na H. Přenos dat adresa textu v ER1, text zakončen 0x00. V/V přenos Inicializace V/V Přenos dat Deaktivace V/V K 31 Programová obsluha inicializace 82C55A (1).equ BASE55, 0x600000 ;bazova adresa 82C55A.equ PA55, BASE55 ;Port A.equ PB55, BASE55+1 ;Port B.equ PC55, BASE55+2 ;Port C.equ CTRL55, BASE55+3 ;Ridici registr... TEXT:.asciz AHOJ ;text pro tisk + 0x00... START: JSR @INIT55 ;inicializace 82C55A MOV.L #TEXT,ER1 ;adresa textu do ER1 JSR @PRINT ;tisk... 32

Programová obsluha inicializace 82C55A (2) INIT55: MOV.B #0x8A,R0L ;nastaveni rezimu MOV.B R0L,@CTRL55 ;zapis do ridiciho reg. MOV.B #0x01,R0L ;set bit 0 MOV.B R0L,@CTRL55 ;zapis do ridiciho reg. RTS 1 0 0 0 1 0 1 0 0 0 0 0 0 0 0 1 0 = PC3-PC0 Output 1 = PB7-PB0 Input 0 = Mode 0 1 = PC7-PC4 Input 0 0 0 = Bit 0 0 = Bit Set Flag 1 = Bit Set 0 = PA7-PA0 Output 00 = Mode 0 1 = Mode Set Flag PA PC0 PC4 PC5 82C55A 8 DATA STROBE BUSY 33 Programová obsluha přenos dat (1) Příprava znaku přečtení znaku z paměti do registru, posun pointeru. Kontrola konce přenosu znak == 0x00? Přenos dat Příprava znaku Konec přenosu? - Přenos znaku + K 34

Ukončení přenosu Nalezením koncového znaku. Např. znak == 0x00? Přenesením všech znaků (vyčerpání délky přenosu). Např. sektor na disku = 512 bytů. Přenos dat Přenos dat Nalezení koncového znaku koncový znak se netiskne Příprava znaku Konec přenosu? - Přenos znaku + - Příprava znaku Přenos znaku Konec přenosu? + Vyčerpání délky nebo nalezení koncového znaku koncový znak se tiskne K K 35 Programová obsluha přenos dat (2)... PRINT: MOV.B @ER1,R0L ;znak do R0L BNE LAB01 ;neni-li znak 0x00 RTS ;navrat - znak byl 0x00 LAB01: INC.L ER1 ;posun pointeru JSR @PUTCH ;tisk znaku BRA PRINT ;opakovani... 36

Programová obsluha přenos znaku (1) DATA STROBE BUSY Čtení stavu čtení PC test BUSY Zápis znaku zápis do PA puls na /STROBE - Přenos znaku Čtení stavu Zařízení připraveno? + Zápis/čtení znaku K 1. čekací smyčka 2. čekací smyčka 37 Programová obsluha přenos znaku (2)... PUTCH: MOV.B @PC55,R0H ;Port C do R0H AND.B #0x10,R0H ;maskovani bitu 4 BNE PUTCH ;neni 0 -> je BUSY ; MOV.B R0L,@PA55 ;znak do Portu A MOV.B #0x00,R0L ;reset bit 0 /STROBE MOV.B R0L,@CTRL55 ;zapis povelu ; LAB02: MOV.B @PC55,R0H ;Port C do R0H AND.B #0x10,R0H ;maskovani bitu 4 BEQ LAB02 ;je 0 -> neni BUSY ; MOV.B #0x01,R0L ;set bit 0 - /STROBE MOV.B R0L,@CTRL55 ;zapis povelu RTS ;hotovo... 38