CAPÍTULO VI DECODIFICAÇÃO DE I/O E MEMÓRIA



Documentos relacionados
CAPÍTULO VI DECODIFICAÇÃO DE I/O E MEMÓRIA

CAPÍTULO VI DECODIFICAÇÃO DE I/O E MEMÓRIA

CAPÍTULO V ARQUITETURA DO PC E BARRAMENTO ISA

Introdução à Informática. Alexandre Meslin

Microinformática Introdução ao hardware. Jeronimo Costa Penha SENAI - CFP/JIP

ENTRADA E SAÍDA DE DADOS

Estrutura de um Computador

MANUTENÇÃO DE MICRO. Mário Gomes de Oliveira

Introdução à Arquitetura de Computadores IFES Campus Serra

Hardware de Computadores

1a LISTA DE EXERCÍCIOS

4.1 - Sistema de I/O. CEFET-RS Curso de Eletrônica. Organização de Computadores. Profs. Roberta Nobre & Sandro Silva

Unidade Central de Processamento (CPU) Processador. Renan Manola Introdução ao Computador 2010/01

Organização Básica do Computador

CAPÍTULO 2 CARACTERÍSTICAS DE E/S E PORTA PARALELA

Arquitetura de Computadores. Ivan Saraiva Silva

Interrupções. As interrupções são casos especiais de chamadas de procedimentos.

Universidade Tuiuti do Paraná UTP Faculdade de Ciências Exatas - FACET

ULA Sinais de Controle enviados pela UC

1. CAPÍTULO COMPUTADORES

Informática I. Aula 4. Aula 4-11/09/2006 1

Uso de interrupções de BIOS/DOS

2 - Processadores. CEFET-RS Curso de Eletrônica. Organização de Computadores. Profs. Roberta Nobre & Sandro Silva

Componentes de um Sistema de Computador

IDENTIFICAÇÃO MANUTENÇÃO

Arquitetura de Computadores - Revisão -

Entrada e Saída. Prof. Leonardo Barreto Campos 1

Máquina Multinível. Um programa pode ser definido como uma seqüência de instruções que descrevem como executar uma determinada tarefa.

Arquitetura e Organização de Computadores I

Gerência de Entrada/Saída

Figura 1 - O computador

CCNA 1 Conceitos Básicos de Redes. Capítulo1 - Introdução à Redes. Associação dos Instrutores NetAcademy - Agosto de Página

ARQUITETURA DE COMPUTADORES

3. Arquitetura Básica do Computador

FUNDAMENTOS DE HARDWARE COMO FUNCIONA UM PC? Professor Carlos Muniz

Arquitetura de Computadores Arquitetura de entrada e saída


Estrutura e funcionamento de um sistema informático

Barramentos - BUS. Professor Especialista: Airton Ribeiro de Sousa

Fundamentos de Hardware. 1. Placa Mãe

Sistemas de Computação. Dentro da Unidade do Sistema

Sistemas Operacionais Entrada / Saída. Carlos Ferraz (cagf@cin.ufpe.br) Jorge Cavalcanti Fonsêca (jcbf@cin.ufpe.br)

Componentes de um computador típico

Sistemas Operacionais

Arquitetura de Computadores. Tipos de Instruções

Fundamentos em Informática

William Stallings Arquitetura e Organização de Computadores 8 a Edição

Dispositivos de Entrada e Saída

ARQUITETURA DE COMPUTADORES

Placas Adaptadoras e montagem de Redes

Microprocessadores II - ELE 0327 CAPÍTULO 2 ESTUDO DA CPU 8086/88

FACULDADE PITÁGORAS PRONATEC

SISTEMAS INFORMÁTICOS

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES DISPOSITIVOS DE ENTRADA E SAÍDA. Prof. Dr. Daniel Caetano

5 Entrada e Saída de Dados:

Binária. Introdução à Informática. Introdução à Informática. Introdução à Informática. Introdução à Informática. Bit. Introdução à Informática

O Hardware Dentro da Unidade do Sistema

HARDWARE COMPONENTES BÁSICOS E FUNCIONAMENTO. Wagner de Oliveira

Microprocessadores e Microcontroladores Parte 3. Expansão de Memória Mapeamento de Memória

Prof. Sandrina Correia

Informática Aplicada

Estrutura de um Computador. Linguagem de Programação Rone Ilídio UFSJ - CAP

Visão Geral de Sistemas Operacionais

Sistemas Operacionais

Capacidade = 512 x 300 x x 2 x 5 = ,72 GB

MODULO II - HARDWARE

Escola Secundária de Emídio Navarro

AULA: Introdução à informática Computador Digital

Arquitetura de Von Neumann e os Computadores Modernos

Memórias Prof. Galvez Gonçalves

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES. Prof. André Dutton

SISTEMAS DIGITAIS. Memórias. Prof. Guilherme Arroz Prof. Carlos Sêrro Alterado para lógica positiva por Guilherme Arroz.

Sistemas Operacionais. Prof. Pedro Luís Antonelli Anhanguera Educacional

Organização e Arquitetura de Computadores I. Introdução. Ivan Saraiva Silva Leonardo Casillo

Instalando a placa de rede

Tecnologia PCI express. Introdução. Tecnologia PCI Express

Organização de Computadores 1

Processadores. Prof. Alexandre Beletti Ferreira

ARQUITETURA DE COMPUTADORES

Escola Secundária de Emídio Navarro

Sistemas Operacionais e Introdução à Programação. Módulo 1 Sistemas Operacionais

Introdução aos Computadores

BARRAMENTO DO SISTEMA

A Figura 1 mostra uma organização do NEANDER com uma UAL de 6 funções. Figura 1: Organização para o NEANDER.

Aplicativos Informatizados da Administração. Hardware A evolução e o impacto dos computadores nas áreas de negócios.

Introdução. à Estrutura e Funcionamento de um Sistema Informático

Componentes do Computador e. aula 3. Profa. Débora Matos

Estrutura e Funcionamento de um Computador

ARQUITETURA DE COMPUTADORES

Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 05 Estrutura e arquitetura do SO Parte 1. Cursos de Computação

Hardware 2. O Gabinete. Unidades Derivadas do BYTE. 1 KB = Kilobyte = 1024B = 2 10 B. 1 MB = Megabyte = 1024KB = 2 20 B

PROCESSAMENTO DE DADOS

Circuitos Combinacionais. Sistemas digitais

CURSO BÁSICO DE INFORMÁTICA

MOTAGEM E MANUTENÇÃO Hardware. Professor: Renato B. dos Santos

CALCULADORA SIMPLES COM ULA

Estruturas do Sistema de Computação

Transcrição:

Decodificação de I/O e Memória Cap.6: /0 CAPÍTULO VI DECODIFICAÇÃO DE I/O E MEMÓRIA afirmava-se que memória era todo dispositivo acessado através dos sinais *(S)MEMR ou *(S)MEMW e que I/O era todo dispositivo acessado através dos sinais *IOR ou *IOW (ativados pelas instruções "in" e "out") I/O é o nome dado a dispositivos que realizam diversas funções específicas, tais como enviar dados, receber dados, configurar a porta serial, controlar o acionador de disco ou ainda gerenciar a temporização. De forma mais simples, diz-se que os dispositivos de I/O trabalham com comandos e dados. Os comandos (operações de escrita) indicam como o dispositivo deverá operar, por exemplo, mudando a resolução da placa VA, enquanto que os dados (leitura ou escrita) são manuseados pelo I/O com objetivos diversos, como, por exemplo, para serem comunicados via modem ou placa de rede. instruções in, out, ins e outs 64K x K endereços Bits do Endereço 9876 54320 9 87654320 Espaço de I/O com 52 endereços Indica se o endereço era para a placa do sistema ou para os slots de expansão (=0) - placa do sistema (=) - slots de expansão erado pelas instruções IN e OUT, mas ignorado no caso de alguns PCs antigos Não são usados pelas instruções IN e OUT Figura 6.. Interpretação dos bits de endereçamento de I/O, nas arquiteturas de PCs antigos. - http://www.mzeditora.com.br - PC: um uia Prático de Hardware e Interfaceamento - Ricardo Zelenovsky & Alexandre Mendonça

Decodificação de I/O e Memória Cap.6: 2/0 FFFFh 0400h 03FFh 0200h 0FFh 0000h 64.52 52 52 Não usado no projeto inicial do PC Espaço para os slots de expansão Espaço para a placa do sistema Figura 6.2. Utilização do espaço de endereçamento de I/O nos primeiros PCs. dispositivos "on-board" Endereços Dispositivo 000h-00Fh primeiro controlador de DMA (8237) 020h-02h primeiro controlador de interrupções (8259) 040h-043h temporizador programável (8253) 060h-063h interface paralela 8255 (T) 060h-064h controlador 8742 (AT) 070h-07h RAM CMOS e registrador de máscara NMI (AT) 080h-08Fh registradores de paginação para DMA 0h-0h segundo controlador de interrupções (AT) 0C0h-0DFh segundo controlador de DMA (AT) 0F0h-0FFh coprocessador aritmético (AT) F0h-FFh disco rígido (AT) 200h-20Fh porta de jogos 238h-23Bh mouse de barramento 278h-27Fh LPT2: 2B0h-2BFh vídeo (EA-VA) 2C0h-2CFh vídeo (EA-VA) 2h-2DFh vídeo (EA-VA) 2E8h-2EFh COM4: 2F8h-2FFh COM2: 320h-32Fh disco rígido (T) 378h-37Fh LPT: 300h-3Fh reservado para protótipos 3C0h-3CFh vídeo (EA-VA) 3h-3DFh vídeo (CA) 3E8h-3EFh COM3: 3F0h-3F7h disco flexível 3F8h-3FFh COM: 400h => projetos PCI Figura 6.3. Uso do espaço de endereçamento de I/O no PC. - http://www.mzeditora.com.br - PC: um uia Prático de Hardware e Interfaceamento - Ricardo Zelenovsky & Alexandre Mendonça

Decodificação de I/O e Memória Cap.6: 3/0 Decodificação com endereço fixo *CS0, *CS,...,*CS7 com habilitação em nível baixo OR dos *CS com *IOR e *IOW (7) (8) AEN () (2) (3) (4) (5) (6) *IOR () *IOW () Endereço Base = 3E0H * * *AEN 0 () (0) (9) 74LS30 74LS08 0 A B C 2A 2B 74LS38 *ADROK *IORW 8 Endereços Decodificados 0 2 3 4 5 6 7 *IOR () *IOW () *CS0 (3E0H) *CS (3EH) *CS2 (3E2H) *CS3 (3E3H) *CS4 (3E4H) *CS5 (3E5H) *CS6 (3E6H) *CS7 (3E7H) Barramento de Dados do PC 74LS32 *IOR () () () () () () () () () 74LS32 B Figura 6.4. Decodificação de I/O com endereço fixo. Q 2 3 4 2 22 23 24 2 Saída com 8 Bits 2 2 2 2 Barramento Interno Entrada com 8 Bits outportb(0x3e0, variável); variável = inportb(0x3e0); uso do 74LS374 ao invés do AEN = 0 é um nível lógico necessário para que os decodificadores de I/O operem sem conflitar com os ciclos de DMA. Decodificação programável por chave uso de "dip switch" outportb(endereço, variável); variável = inportb(endereço); - http://www.mzeditora.com.br - PC: um uia Prático de Hardware e Interfaceamento - Ricardo Zelenovsky & Alexandre Mendonça

Decodificação de I/O e Memória Cap.6: 4/0 6x (8K2) SW SW DIP-6 Programado pela Chave (2) AEN () (3) (4) (5) (6) (7) (8) *IOR () *IOW () P0 P P2 P3 P4 P5 P6 P7 Q () (0) (9) P=Q 74LS688 74LS08 8 Endereços Decodificados A B C 2A 2B *ADROK *IORW 74LS38 *IOR () 0 2 3 4 5 6 7 Barramento de Dados do PC 74LS32 *IOW () *CS0 (base) *CS (base+) *CS2 (base+2) *CS3 (base+3) *CS4 (base+4) *CS5 (base+5) *CS6 (base+6) *CS7 (base+7) *IOR () () () () () () () () () B 74LS32 Figura 6.5. Decodificação programável por chave, usando o 74LS688. Q 2 3 4 2 22 23 24 2 Saída com 8 Bits 2 2 2 2 Barramento Interno Entrada com 8 Bits Programado pela Chave 4 (8K2) SW SW DIP-4 AEN () (2) (3) (4) (5) (6) Coletor Aberto 74LS266 74LS266 74LS266 74LS266 74LS09 4K7 ADROK Wired AND (9) (8) (7) A B NOR 0 0 0 0 0 0 A B C 2A 2B 74LS38 0 2 3 4 5 6 7 A=B A=B 0 *CS0 (base+0) *CS (base+4) *CS2 (base+8) *CS3 (base+2) *CS4 (base+6) *CS5 (base+20) *CS6 (base+24) *CS7 (base+28) - - 8 Linhas Decodificadas. Cada linha seleciona um bloco de 4 endereços consecutivos. Figura 6.6. Decodificação programável por chave usando o 74LS266. - http://www.mzeditora.com.br - PC: um uia Prático de Hardware e Interfaceamento - Ricardo Zelenovsky & Alexandre Mendonça

Decodificação de I/O e Memória Cap.6: 5/0 decodificação selecionável por PROM 528 PROM () 8 (0) 7 (9) 6 (8) 5 (7) 4 (6) 3 (5) 2 (4) (3) 23 AEN ()2 2 (2) 9 23 N82S4 (60 η *CE s) *CE2 CE3 CE4 9 0 3 4 5 6 7 *CS0 *CS *CS2 *CS3 *CS4 *CS5 *CS6 *CS7 EEMPLO: Habilitar *CS0 para o endereço 382h Endereço Dado Programado 0 0 0 0 0 0 Figura 6.7. Decodificação de I/O usando uma PROM. Expandindo o espaço de endereçamento utilização dos bits de ordem superior não funciona desde o surgimento do PCI endereçamento indireto RAM CMOS e vídeo VA Dado Interpretado como Endereço - *IOW Latch I-7 Endereço Indireto Decodificador 8 / 256 *IOR *IOW *SEL I/O Endereçado Indiretamente *CS - - AEN DECOD. NORMAL *CS *CS0 Transceiver Barramento de Dados do PC - Barramento de Dados Interno Figura 6.9. Esquema simplificado para o endereçamento indireto para I/O. - http://www.mzeditora.com.br - PC: um uia Prático de Hardware e Interfaceamento - Ricardo Zelenovsky & Alexandre Mendonça

Decodificação de I/O e Memória Cap.6: 6/0 () *IOW () Barramento Dados PC 6x (8K2) SW SW DIP-6 () 74LS27 (2) AEN () (3) (4) (5) (6) (7) (8) Dado usado como Endereço Q P0 P P2 P3 P4 P5 P6 P7 Q P=Q 74LS688 74LS32 I I I I I I I I Barramento de Dados do PC *IOR () 8 Endereços Decodificados A B C 2A 2B 74LS38 *IOW () *IOR () () () () () () () () () 0 2 3 4 5 6 7 *ICS0 *ICS *ICS2 *ICS3 *ICS4 *ICS5 *ICS6 *ICS7 B 74LS27 Saída Digital Endereçada Indiretamente Q Figura 6.0. Uso de endereçamento indireto para expandir o espaço de I/O. "outportb(base,índice);" seguido de "outportb(base+,dado);" 2 3 4 2 22 23 24 2 2 2 2 2 Entrada Digital Endereçada Indiretamente Barramento de Dados Interno I/O mapeado em memória 9 8 7 0 6 5 4 3 2 0 0 0 0 Q DO0 DO DO2 DO3 DO4 DO5 DO6 DO7 *MEMW 9 (2) 8 (3) 6 (5) 5 (6) 4 (7) 3 (8) 2 (9) (0) 0 () (2) (3) (4) (5) (6) (7) (8) 7 (4) (9) (0) () 74LS30 74LS30 74S260 Decodificação dos 20 bits do Endereço DFFF8H 74LS0 *MEMR () () () () () () () () *MEMR B Saídas usando o endereço de memória DFFF8H Entradas usando o endereço de memória DFFF8H Figura 6.. Registradores de I/O (entrada e saída) mapeados no primeiro megabyte de memória. 2 3 4 2 22 23 24 2 2 2 2 2 DI0 DI DI2 DI3 DI4 DI5 DI6 DI7 - http://www.mzeditora.com.br - PC: um uia Prático de Hardware e Interfaceamento - Ricardo Zelenovsky & Alexandre Mendonça

Decodificação de I/O e Memória Cap.6: 7/0 nunca entra em conflito com os endereços de I/O já utilizados aumenta o espaço de I/O oferece a possibilidade de usar todas as instruções da família 80x86 I/O a 6 bits S S S S S S S S *IOR B Q DO0 DO DO2 DO3 DO4 DO5 DO6 DO7 endereço par... AEN decod. I/O *IOW *I/S6 SD8 SD9 S0 S S2 S3 S4 S5 *IOR B 74LS05 D8 D9 0 2 3 4 5 Q DO8 DO9 DO0 DO DO2 DO3 DO4 DO5 endereço ímpar *IOW *SBHE Figura 6.2. Esquema para I/O a 6 bits. parte alta e parte baixa (*SBHE e ) acesso a endereço par mov dx,300h in ax,dx "outport(0x300);" em linguagem C endereços acessados: 300h e 30h único ciclo de barramento acesso a endereço ímpar mov dx,30h in ax,dx "outport(0x30);" em linguagem C endereços acessados: 30h e 302h 2 ciclos de barramento - http://www.mzeditora.com.br - PC: um uia Prático de Hardware e Interfaceamento - Ricardo Zelenovsky & Alexandre Mendonça

Decodificação de I/O e Memória Cap.6: 8/0 acesso de 6 bits em barramento PCI acesso de 32 bits em barramento PCI Decodificação de memória *(S)MEMR e *(S)MEMW 0 () (2) (3) (4) (5) (6) (7) (8) (9) (0) () *MEMR () *MEMW (B) 2 2 2 2 2 2 2 2 2 2 2 3 4 2 22 23 24 2 3 4 2 22 23 24 (0) A 0 2 (9) B *SEL RUPO 2 3 74LS39 B0 B B B B B B B B B B *BMEMR *BMEMW *CS0 *CS *CS2 *CS3 B B B B B B B B B B B0 *CS0 *BMEMR *BMEMW B B B B B B B B B B B0 *CS2 *BMEMR *BMEMW 0 CE OE WE 66 0 CE OE WE 66 B B B B B B B B B B B B B B B B B B B B B B B B B B B0 *CS *BMEMR *BMEMW B B B B B B B B B B B0 *CS3 *BMEMR *BMEMW 0 CE OE WE 66 0 CE OE WE 66 B B B B B B B B B B B B B B B B SW DIP-7 8K2 9 (2) 8 A(3) 7 (4) 6 (5) 5 (6) 4 (7) 3 (8) P0 P P2 P3 P4 P5 P6 P7 Q P=Q 74LS688 *SEL RUPO () () () () () () () () *MEMR () B B B B B B B B B Figura 6.3. Decodificação de 8 KB de memória em blocos de 2 KB. SW DIP-4 8K2 9 (2) 8 (3) 7 (4) 6 (5) B0 B A<B A=B A>B 74LS85 A<B A=B A>B Decodificação de um bloco de 64KB Figura 6.4. Decodificação de 64 KB com endereço selecionável por chave. - http://www.mzeditora.com.br - PC: um uia Prático de Hardware e Interfaceamento - Ricardo Zelenovsky & Alexandre Mendonça

Decodificação de I/O e Memória Cap.6: 9/0 Mapa de memória 00000h E0000h C0000h 000h 9FFFFh 00500h 00400h 00000h PC AT Memória Estendida Reservado para a PARA ROM BIOS Reservado para ROMs Buffers de Vídeo Porção transiente do DOS Área de Programas (programas de usuários e dados) Porção residente do DOS Área de dados para ROM BIOS e BASIC Área de dados para a ROM BIOS Tabela de Vetores de Interrupção Figura 6.5. Mapa de memória de um típico PC AT. Área destinada ao DOS Exercícios 6-7) Projete um circuito que multiplexe o acesso a 2 registradores num mesmo endereço, da seguinte forma: o primeiro acesso é realizado em um dos registradores, o acesso seguinte é feito ao outro e assim sucessivamente. 6-2) O seguinte conjunto de instruções é utilizado para realizar uma leitura de 6 bits: mov dx,300h in ax,dx. Existe alguma diferença de desempenho entre executar estas instruções com a linha *I/O CS 6 ativada ou não? 6-3) Repita o problema anterior, substituindo apenas 300h por 30h. 6-4) Nos casos dos problemas 6-2 e 6-3, quais as diferenças de implementações em hardware ao ativar-se ou não a linha *I/O CS 6? 6-5) O que acontecerá se, por engano, um projetista utilizar em seu projeto os endereços de I/O de 3F0h a 3F7h? - http://www.mzeditora.com.br - PC: um uia Prático de Hardware e Interfaceamento - Ricardo Zelenovsky & Alexandre Mendonça

Decodificação de I/O e Memória Cap.6: 0/0 6-7) (Concurso para o Quadro de Engenheiros Militares do Exército - especialidade eletrônica - 998) Para permitir que um microprocessador acesse 3 dispositivos, foi preparada a decodificação a seguir, onde se utilizaram apenas as 0 linhas de endereços menos significativas:,,...,. As demais linhas de endereços foram ignoradas. Considerando que os dispositivos são selecionados em nível baixo (quando *CS=0), determine em hexadecimal todos os endereços possíveis, para cada dispositivo. 74LS38 *CS DISP A B C 2A 2B 0 2 3 4 5 6 7 *CS *CS DISP2 DISP3 - http://www.mzeditora.com.br - PC: um uia Prático de Hardware e Interfaceamento - Ricardo Zelenovsky & Alexandre Mendonça