Baixe o app para aproveitar ainda mais
Prévia do material em texto
1 Aula 9 Professores: Lúcia M. A. Drummond Simone de Lima Martins Conteúdo: Entrada e Saída (E/S) - Dispositivos externos - Interface de E/S - Operações de E/S 2 Dispositivos externos • Dispositivos externos são denominados dispositivos periféricos ou periféricos e permitem a comunicação da máquina com o ambiente externo − Dispositivos voltados para a comunicação com o usuário − Dispositivos voltados para a comunicação com a máquina − Dispositivos voltados para a comunicação com dispositivos remotos • Discos magnéticos e sensores • Modem e interface de rede (Fig. 10.2 do livro texto) Entrada Saída Monitor de vídeo UCP MP 3 Dispositivos externos • Existe uma grande variedade de periféricos com diferentes formas de funcionamento (Fig. 10.6 do livro texto) Disco rígido UCP MP Impressora Vídeo Teclado Mouse Disquete 4 Dispositivos externos • Dispositivos de E/S são conectados a módulos de E/S que se comunicam com os outros componentes da máquina através do barramento (Fig. 10.4 do livro texto) UCP MP E/S E/S E/S Endereços Controle Dados UCP MPMP E/S E/S E/S Dados - Endereços - Controle . . . . . . . . 5 Dispositivos externos • Monitor de vídeo em modalidade gráfica (Fig. 10.24 do livro texto) . . . . . . . . . . . . . . . . . . . . . . . . . . . Pixel 321 Pixel 1 Pixel 320 Pixel 640 Pixel 64000 6 Dispositivos externos • Teclado (Fig. 10.43 do livro texto) +5 V d0 d1 d2 d3 d4 d5 d6 d7 Po rta d e sa íd a d0d1d2d3d4d5d6d7 Porta de entrada Resistores de terminação 64 chaves tipo tecla 7 Dispositivos externos • Disco magnético Rotação Setor Eixo Braço que se move de fora para dentro Direção do movimento do braço Cabeça de leitura/escrita (Fig. 10.32 do livro texto) 8 Dispositivos externos • Disco magnético 0 1 2 3 4 5 6 7 8 9 Cilindro do disco Trilha Mecanismo de leitura/escrita Prato do disco Mecanismo de leitura/escrita Trilha (Fig. 10.34 do livro texto) 9 Interface de E/S • Existe uma grande variedade de periféricos − Entregam e recebem quantidades diferentes de dados − Trabalham em velocidades diferentes − Utilizam diferentes formatos • Todos são mais lentos que a UCP e memória principal • Necessita-se de módulos, controladores ou interfaces de E/S 10 Interface de E/S • Modelo geral de um dispositivo externo (Fig. 6.2 do livro de Arquitetura e Organização de Computadores" , William Stallings) Dados (específicos ao dispositivo) de e para o ambiente Sinais de dados (bits) de e para o módulo de E/S Sinais de estado para o módulo de E/S Área de armazenamento temporário Transdutor Sinais de controle do módulo de E/S Lógica de controle 11 Interface de E/S • Diagrama de blocos (Fig. 6.4 do livro de Arquitetura e Organização de Computadores" , William Stallings) Interface com dispositivos externos Linhas de controle Linhas de endereço Linhas de dados Interface com o barramento do sistema Lógica de E/S Registradores de dados Lógica deinterface com dispositivo externo Lógica de interface com dispositivo externo • • • Registradores de estado/controle Dados Estado Controle Dados Estado Controle 12 Interface de E/S • Conexão UCP/MP a controladores de E/S (Fig. 10.8 do livro texto) UCP MP CONTROLADOR DE E/S - 1 CONTROLADOR DE E/S - 2 CONTROLADOR DE E/S - N ..... P1 P2 P4P3 P5 UCP MP CONTROLADOR DE E/S P2 P3P1 Controle DadosEndereço 13 Interface de E/S • Controle e sincronismo do fluxo de dados entre a UCP/MP e periférico − Exemplo: 1. UCP interroga interface de E/S para verificar estado do dispositivo a ela conectado − Interações entre UCP e interface de E/S são realizadas através de compartilhamento de barramentos 2. A interface de E/S retorna o estado do dispositivo 3. Se o dispositivo estiver pronto para operar, a UCP requisita a transferência de dados, enviando um comando para a interface de E/S 4. A interface de E/S recebe ou transmite uma unidade de dados de/para o dispositivo externo 5. Os dados são transferidos de/para a interface de E/S para/de a UCP 14 Interface de E/S • Comunicação com a UCP − Decodificação de comando − Os dados são transmitidos através do barramento de dados − Informação de estado − Reconhecimento de endereço • Comunicação com os dispositivos • Comandos, informação de estado e dados 15 Interface de E/S • Armazenamento temporário de dados − As taxas de transferência de dados dos dispositivos periféricos apresentam ordens de grandeza menores que as taxas de transferência entre memória principal e UCP • Detecção de erros − Compreendem uma ampla faixa de valores 16 Interface de E/S • Transmissão de dados entre periférico e interface de E/S − Serial − Paralela • Bit a bit • Grupos de bits de cada vez 17 Interface de E/S • Transmissão serial (Fig. 10.9 do livro texto) (Fig. 10.10 do livro texto) UCP/MP Interface Buffer Periférico 10110001 Serial Barramento do sistema T R 10101100 1 0 1 0 1 1 0 0 1 ms 1 ms 1 ms 1 ms 1 ms 1 ms 1 ms 1 ms Linha de transmissão Transmissor 1000 bps Receptor 1000 bps 1 ms 1 ms Transmissor: 1 bit = 1/1000 s = 1 ms 18 Interface de E/S • Transmissão serial assíncrona (Fig. 10.11 do livro texto) (Fig. 10.12 do livro texto) T R Linha de transmissão 01010010 Caractere ASCII "R" STOP START0 1 0 1 0 0 1 0 Queda de tensão Nível alto ( bit 1) Nível alto ( bit 1) Caractere chega em paralelo Transmissor 0 1 0 0 1 0 1 0 UART Receptor UART bit a bit 01001010 Transmissão serial 19 Interface de E/S • Transmissão serial síncrona (Fig. 10.14 do livro texto) T R Transmissor ReceptorTransmissão CC CN C2 C1 CC CC CC..........................................CC Bloco de transmissão caracteres de dadosC1, C2, C3 ... caracteres especiais de controleCC 20 Interface de E/S • Transmissão paralela (Fig. 10.15 do livro texto) T R Transmissor Receptor 0 1 0 1 0 0 1 0 1 0 0 1 1 0 0 0 Transmissão Caractere 2 Caractere 1 21 Operações de E/S • Endereçamento de dispositivos − E/S mapeada na memória • Existe um único espaço de endereçamento para posições de memória e dispositivos de E/S • Registradores de dados e de estado das interfaces de E/S são vistos pela UCP como endereços de memória • São utilizadas as mesmas instruções para acessar memória e dispositivos − E/S independente • Espaços de endereçamento diferentes para posições de memória e dispositivos de E/S • Necessita linhas diferentes para indicar acesso à memória ou dispositivos • Comandos especiais de E/S 22 Operações de E/S • Técnicas de realização das operações de Entrada e Saída − Por programa − Interrupção − Acesso direto à memória 23 Operações de E/S • Entrada e Saída por programa − UCP tem controle direto da operação de E/S − UCP tem que monitorar toda a realização da operação − Desperdício de tempo da UCP • Detecção do estado do dispositivo • Envio de comandos de leitura ou escrita • Transferência de dados 24 Operações de E/S • Entrada e Saída por programa (Fig. 6.5(a) do livro de Arquitetura e Organização de Computadores", William Stallings) Terminou? Verifica o estado Próxima instrução Sim Não Não pronto Pronto CPU → E/S E/S → CPU Condição de erro E/S → CPU CPU → Memória Envia comando de leitura para o módulo de E/S Lê o estado do módulo de E/S Lê uma palavra do módulo de E/S Escreve uma palavra na memória 25 Operações de E/S • Entrada e Saída por programa − E/S mapeada na memória − E/S independente ENDEREÇO INSTRUÇÃO COMENTÁRIO 200 202 Carregar acumulador Armazenar acumulador Carregar acumulador Desviar se sinal = 0 Carregar acumulador Iniciar leitura do teclado Obter byte de estado Repetir até que esteja pronto Carregar byte de dados OPERANDO " 1" 517 517 202 516 ENDEREÇO INSTRUÇÃO COMENTÁRIO 200 201 Iniciar E/S Testar E/S Desviar se não pronto Leitura Iniciar leitura do teclado Testar se a operação foi completada Repetir até que seja completada Carregar byte de dados OPERANDO 5 5 201 4 7 6 5 4 3 2 1 0 516 Registrador de dados de entrada do teclado 7 6 5 4 3 2 1 0 517 Registrador de controle e de estado de entrada do teclado 1 - pronto 0 - ocupado Atribuir 1 para iniciar a leitura (Fig. 6.6(a) do livro de Arquitetura e Organização de Computadores" , William Stallings) (Fig. 6.6(b) do livro de Arquitetura e Organização de Computadores" , William Stallings) 26 Operações de E/S • Interrupção − UCP não precisa monitorar dispositivo − A interface de E/S interrompe a UCP quando o dispositivo está pronto para realizar a transferência de dados com a UCP 27 Operações de E/S • Interrupção (Fig. 6.5(b) do livro de Arquitetura e Organização de Computadores" , William Stallings) Terminou? Verifica o estado Próxima instrução Sim Não Pronto CPU → E/S E/S → CPU Condição de erro E/S → CPU CPU → Memória Executa outras instruções Interrupção Envia comando de leitura para o módulo de E/S Lê o estado do módulo de E/S Lê uma palavra do módulo de E/S Escreve uma palavra na memória 28 Operações de E/S • E/S por programa e Interrupção (Fig. 6.5(a) e (b) do livro de Arquitetura e Organização de Computadores" , William Stallings) Terminou? Escreve uma palavra na memória Lê uma palavra do módulo de E/S Lê o estado do módulo de E/S Verifica o estado Envia comando de leitura para o módulo de E/S Próxima instrução Sim Não Não pronto Pronto CPU → E/S E/S → CPU Condição de erro E/S → CPU CPU → Memória Terminou? Escreve uma palavra na memória Lê uma palavra do módulo de E/S Lê o estado do módulo de E/S Verifica o estado Envia comando de leitura para o módulo de E/S Próxima instrução Sim Não Pronto CPU → E/S E/S → CPU Condição de erro E/S → CPU CPU → Memória Executa outras instruções Interrupção 29 Operações de E/S • Interrupção Software (Fig. 6.7 do livro de Arquitetura e Organização de Computadores" , William Stallings) Um controlador de dispositivo ou outro hardware do sistema envia uma interrupção O processador termina a execução da instrução corrente O processador envia o reconhecimento da interrupção O processador armazena o conteúdo dos registradores PSW e PC na pilha de controle O processador carrega um novo valor no registrador PC, conforme a interrupção As demais informações de estado do processo são armazenadas Processamento da interrupção A informação de estado do processo é restaurada Os antigos valores dos registradores PSW e PC são restaurados Hardware 30 Operações de E/S • Interrupção − UCP envia um comando de leitura − Executa outro procedimento − Verifica se existe uma interrupção ao final de cada ciclo de instrução − Se existe algum pedido de interrupção: • Salva contexto • Processa atendimento à interrupção − Obtém e armazena dados 31 Operações de E/S • Interrupção (Fig. 6.8(a) do livro de Arquitetura e Organização de Computadores" , William Stallings) T + M T N + 1 N Y + L Y Retorno Início Registradores • • Apontador de topo da pilha N + 1 Contador de programa Programa de usuário Rotina de tratamento de interrupção Pilha de controle T 32 Operações de E/S • Desvantagens de E/S por programa e por interrupção − A taxa de transferência de E/S é limitada pela velocidade com que a UCP pode testar e servir um dispositivo − A UCP se ocupa de gerenciar a transferência de dados de E/S, tendo de executar várias instruções a cada transferência • Técnica de acesso direto à memória mais eficiente − DMA (Direct Memory Access) 33 Operações de E/S • Acesso direto à memória (Fig. 6.5(c) do livro de Arquitetura e Organização de Computadores" , William Stallings) Envia comando de leitura de bloco para o módulo E/S CPU → DMA Executa outras instruções Interrupção Lê o estado do módulo DMA DMA → CPU Próxima instrução 34 Operações de E/S • E/S por programa, Interrupção e Acesso direto à memória (Fig. 6.5 do livro de Arquitetura e Organização de Computadores" , William Stallings) Terminou? Escreve uma palavra na memória Lê uma palavra do módulo de E/S Lê o estado do módulo de E/S Verifica o estado Envia comando de leitura para o módulo de E/S Próxima instrução Sim Não Pronto CPU → E/S E/S → CPU Condição de erro E/S → CPU CPU → Memória Executa outras instruções Interrupção Terminou? Escreve uma palavra na memória Lê uma palavra do módulo de E/S Lê o estado do módulo de E/S Verifica o estado Envia comando de leitura para o módulo de E/S Próxima instrução Sim Não Não pronto Pronto CPU → E/S E/S → CPU Condição de erro E/S → CPU CPU → Memória Envia comando de leitura de bloco para o módulo E/S CPU → DMA Executa outras instruções Interrupção Lê o estado do módulo DMA DMA → CPU Próxima instrução 35 Operações de E/S • Diagrama de blocos de um controlador de DMA Contador de dados Registrador de dados Registrador de endereços Lógica de controle Linhas de dados Linhas de endereço DMA Request DMA Acknowledge Interrupt Read Write (Fig. 6.12 do livro de Arquitetura e Organização de Computadores" , William Stallings) 36 Operações de E/S • Informação enviada pela UCP para o controlador de DMA (Fig. 6.12 do livro de Arquitetura e Organização de Computadores" , William Stallings) − Indicação de operação de leitura ou escrita Contador de dados Registrador de dados Registrador de endereços Lógica de controle Linhas de dados Linhas de endereço DMA Request DMA Acknowledge Interrupt Read Write 37 Operações de E/S • Informação enviada pela UCP para o controlador de DMA − Endereço do dispositivo de E/S enviado pelas linhas de dados (Fig. 6.12 do livro de Arquitetura e Organização de Computadores" , William Stallings) Contador de dados Registrador de dados Registrador de endereços Lógica de controle Linhas de dados Linhas de endereço DMA Request DMA Acknowledge Interrupt Read Write 38 Operações de E/S • Informação enviada pela UCP para o controlador de DMA − Endereço de memória para início de leitura ou escrita de dados enviado pelas linhas de dados (Fig. 6.12 do livro de Arquitetura e Organização de Computadores" , William Stallings) Contador de dados Registrador de dados Registrador de endereços Lógica de controle Linhas de dados Linhas de endereço DMA Request DMA Acknowledge Interrupt Read Write 39Operações de E/S • Informação enviada pela UCP para o controlador de DMA − Número de palavras a serem lidas ou escritas enviado pelas linhas de dados (Fig. 6.12 do livro de Arquitetura e Organização de Computadores" , William Stallings) Contador de dados Registrador de dados Registrador de endereços Lógica de controle Linhas de dados Linhas de endereço DMA Request DMA Acknowledge Interrupt Read Write 40 Operações de E/S • Operação do controlador de DMA − UCP executa outras instruções − O controlador de DMA transfere diretamente todo o bloco de dados de ou para a memória − O controlador de DMA envia um sinal de interrupção quando a transferência é concluída 41 Operações de E/S • O controlador de DMA tem que acessar o barramento • O controlador de DMA efetua a transferência de uma palavra por acesso ao barramento • A UCP não pode acessar o barramento mas não necessita executar instruções relacionadas à transferência − Não realiza troca de contexto • A UCP é suspensa antes que precise acessar o barramento − Antes de ler ou escrever da/na memória • Torna a execução das instruções um pouco mais lenta mas não tanto quanto nos casos em que a UCP realiza a transferência 42 Operações de E/S • Pontos de suspensão de DMA e de interrupção Ciclo do processador Ciclo do processador Ciclo do processador Ciclo do processador Ciclo do processador Ciclo do processador Busca de instrução Decodificação de instrução Busca de operando Execução de instrução Armazenamento de resultado Processamento de interrupção Ciclo de instrução Tempo Pontos de suspensão de DMA Ponto de suspensão de interrupção (Fig. 6.13 do livro de Arquitetura e Organização de Computadores" , William Stallings) 43 Operações de E/S • Configuração de DMA (1) (Fig. 6.14(a) do livro de Arquitetura e Organização de Computadores" , William Stallings) − Cada transferência utiliza duas vezes o barramento − A UCP é suspensa duas vezes • • • Processador DMA E/S E/S Memória 44 Operações de E/S • Configuração de DMA (2) (Fig. 6.14(b) do livro de Arquitetura e Organização de Computadores" , William Stallings) − Um controlador pode atender mais de um dispositivo − Cada transferência utiliza uma vez o barramento − A UCP é suspensa uma vez Processador DMA MemóriaDMA E/S E/S E/S 45 Operações de E/S • Configuração de DMA (3) (Fig. 6.14(c) do livro de Arquitetura e Organização de Computadores" , William Stallings) − Todos os dispositivos são conectados ao controlador através de um único barramento − Cada transferência utiliza uma vez o barramento − A UCP é suspensa uma vez Processador Memória Barramento do sistema Barramento de E/S DMA E/S E/S E/S 46 Exercícios • Capítulo 10 do livro texto − 14, 15, 21, 22, 25, 26, 30, 31 ,32
Compartilhar