Interrupções e DMA. Mecanismos de I/O

Documentos relacionados
Controladores do IBM-PC. Gustavo G. Parma

4.3 - DMA & Chipset. CEFET-RS Curso de Eletrônica. Profs. Roberta Nobre & Sandro Silva. e

ENTRADA E SAÍDA DE DADOS

Entrada/Saída. Capítulo 5. Sistemas Operacionais João Bosco Junior -

Organização e Arquitetura de Computadores I

Periféricos possuem características diferentes. Periféricos são mais lentos que UCP e Memória Necessita-se de módulos de Entrada/Saída

Entrada e Saída e Dispositivos

Dispositivos de Entrada e Saída

Aula 03 - Concorrência. por Sediane Carmem Lunardi Hernandes

Organização de Computadores

Arquitetura de Computadores. Revisão Volnys Bernal. Agenda. Revisão: Arquitetura de Computadores. Sobre esta apresentação

Capítulo 13: Sistemas de E/S. Operating System Concepts with Java 7th Edition, Nov 15, 2006

Barramento. Prof. Leonardo Barreto Campos 1

PCS-2529 Introdução aos Processadores. Prof. Dr. Paulo Sérgio Cugnasca

Barramentos ISA/EISA/VLB

Módulo 3 - Estrutura e configuração de Sistemas Operativos monoposto

Universidade Federal de Campina Grande Unidade Acadêmica de Sistemas e Computação Curso de Bacharelado em Ciência da Computação.

Trabalho Pesquisa I Arquitectura do PC Perspectiva CHIPSET

Universidade Federal de Minas Gerais. Sistemas Operacionais. Aula 19. Sistema de Entrada/Saída

Mapeamento de Memória e I/O

Entrada e saída Introdução hardware de E/S

Sistemas Operacionais

Problemas com Entrada e Saída

Notas da Aula 14 - Fundamentos de Sistemas Operacionais

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

Estrutura Básica de um Computador

Exercícios de Sistemas Operacionais 3 B (1) Gerência de Dispositivos de Entrada e Saída

Organização e Projeto de Computadores 3: Modo de Endereçamento, Sub-Rotina, Instruções de E/S, Interrupção

Arquitetura de Sistemas Operacionais Francis Berenger Machado / Luiz Paulo Maia (Material Adaptado)

Sistemas de Entrada e Saídas III

Estrutura de Sistemas Operacionais. Capítulo 1: Introdução

SSC0611 Arquitetura de Computadores

Barramentos e interfaces de comunicação Arquitetura e Organização de Computadores Curso de Análise e Desenvolvimento de Sistemas

Organização de Computadores 1

Introdução Estrutura Conectores Jumpers Outros componentes ROM BIOS CHIPSET. Cap. 2 - Placas mãe

Barramentos. Alguns sistemas reutilizam linhas de barramento para múltiplas funções; Dados Endereços Controle

Gerência de Entrada e Saída

Organização e Arquitetura de Computadores I

PLACA MÃE COMPONENTES BÁSICOS BIOS

Fundamentos de Sistemas Operacionais

SSC510 Arquitetura de Computadores 1ª AULA

Subsistemas de E/S Device Driver Controlador de E/S Dispositivos de E/S Discos Magnéticos Desempenho, redundância, proteção de dados

Controlador de DMA. Gustavo G. Parma

Gerência de Dispositivos. Adão de Melo Neto

Professor: Vlademir de Oliveira Disciplina: Microcontroladores e DSP. Memórias de Dados e de Programa

Sistemas Operacionais. Sistema de entrada e Saída

Sistemas de Entrada e Saída

Interrupções. Capítulo 6

Organização de Computadores

Barramentos Entrada e Saída (E/S)

Capítulo 7 - Interfaces de Entrada e Saída. Conceito

COMPONENTES DE UM COMPUTADOR (tecnologia) Adão de Melo Neto

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES PROF. DEJAIR PRIEBE

Sistemas de Entrada e Saída

UFRJ IM - DCC. Sistemas Operacionais I. Unidade IV Gerência de Recursos Entrada e Saída. 02/12/2014 Prof. Valeria M. Bastos

Sistemas Operacionais

Barramentos. Alberto Felipe Friderichs Barros

Sistemas Operacionais. Interrupção e Exceção

HARDWARE COMPONENTES BÁSICOS E FUNCIONAMENTO. Wagner de Oliveira


2ª Lista de Exercícios de Arquitetura de Computadores

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

Entrada e Saída (E/S)

Introdução. Walter Fetter Lages

Chips Processadores (2) Nível da Lógica Digital (Aula 9) Barramentos. Chips Processadores (3)

ARQUITETURA DE COMPUTADORES

Registradores. Registradores e Instruções Especiais. Link Register. Stack Pointer. Registradores Especiais. Contador de Programa 29/03/2018

Capítulo 13: Sistemas de E/S. Operating System Concepts 8 th Edition

Transcrição:

Universidade Federal do Rio Grande do Sul Escola de Engenharia Departamento de Engenharia Elétrica Curso de Extensão em Arquitetura de Computadores Pessoais Interrupções e DMA 1 Mecanismos de I/O Programmed I/O (PIO) Instruções privilegiadas Polling Interrupções Acesso direto à memória (DMA) Chanal de I/O 2

Interrupções Mascaráveis Podem ser desabilitadas Não mascaráveis Não podem ser desabilitadas Ativas por borda Solicitação ativa quando ocorre transição (subida ou descida) do sinal Ativas por nível Solicitação ativa quando o sinal está em um determinado nível (alto ou baixo) 3 Interrupções Latência Prioridade Traps Interrupções de software Interface com o sistema operacional Exceções Geradas internamente pelo processador 4

Interrupções no 80x86 Interrupção mascarável Solicitada através do pino INTR Se estiver habilitada, após terminar a execução da instrução atual o processador reconhece a interrupção A CPU ativa o pino INTA# por um ciclo de barramento para reconhecer a interrupção A CPU ativa o pino INTA# em outro ciclo de barramento para obter o vetor de interrupção O vetor de interrupção é utilizado como índice na IDT para obter o endereço da rotina de tratamento 5 Interrupções no 80x86 Interrupção não mascarável Solicitada através do pino NMI Após terminar a execução da instrução atual o processador desvia para a rotina de tratamento apontada na entrada 2 da IDT Interrupção de software Gerada através da instrução INT n Não podem ser desabilitadas 6

NMI no PC Pode ser desabilitada através de um flip flop no bit 0 da porta 70h Erro de paridade na memória Erro no barramento ISA (IOCHK#) Erro no co processador Erro de sistema no barramento PCI (SERR#) Opcional 7 Interrupções no PC 2 controladores 8259A em cascata Implementados no Chipset 8

8259A IRQs podem ser habilitadas/desabilitadas individualmente Vetores de interrupção em seqüência O sinal IRQ deve ficar ativo até após o início do primeiro pulso INTA# Caso contrário o 8259 assume uma interrupção espúria, que é mapeada para IRQ7 O software deve estar preparado para tratar esta situação 9 Interface do 8259A 10

Cascateamento de 8259As 11 Inicialização do 8259A no PC Interrupções ativas por borda Prioridade fixa 0, 1, (2), 3, 4, 5, 6, 7 ^ 8, 9, 10, 11, 12, 13, 14, 15 Base dos vetores de interrupção PIC1 = 08h IRQ0 ~ INT 8h PIC2 = 70h IRQ8 ~ INT 70h Coincidência de vetores do PIC1 com TRAPs de modo protegido Sistema Operacional reprograma base dos vetores 12

Interrupções no XT O XT tem apenas um 8259A No slot ISA, a IRQ9 ocupa o lugar da IRQ2 que existia no slot do XT Redirecionamento por software da rotina de tratamento da IRQ9 para IRQ2 A rotina de tratamento de IRQ9 executa um INT 10h 13 Interrupções ISA IRQ0 timer IRQ1 teclado IRQ2 cascata IRQ3 COM2/COM4 IRQ4 COM1/COM3 IRQ5 LPT2/HD XT IRQ6 floppy IRQ7 LPT1 IRQ8 RTC IRQ9 livre/vga IRQ10 livre IRQ11 livre IRQ12 livre/ps2 IRQ13 FPU IRQ14 IDE IRQ15 livre/ide2 14

Compartilhamento de IRQs Pela especificação do barramento ISA, as IRQs devem ser geradas por um circuito em coletor aberto IRQs deveriam poder ser compartilhadas Poucos fabricantes implementam corretamente o circuito de geração de IRQ Compartilhamento apenas seria possível se fossem ativas por nível (EISA) Poucos drivers estão preparados para possibilitar o compartilhamento de IRQs 15 Compartilhamento de IRQs 16

Interrupções PCI 4 linhas de requisição de interrupção INTA#, INTB#, INTC#, INTD# Ativas por nível, ativas em baixo, compartilháveis Dispostivos PCI com uma única função devem utilizar INTA# Cada função deve utilizar apenas uma linha de requisição de interrupção 17 Interrupções PCI 18

Roteamento de Interrupções As interrupções PCI devem ser roteadas para o controlador de interrupções Cada função PCI que utiliza interrupção deve implementar dois registradores de configuração Interrupt Pin Register (R/O) Interrupção PCI Interrupt Line Register (R/W) Linha de IRQ a ser utilizada 19 APIC APIC=Advanced Programmable Interrupt Controller Desenvolvido para ser utilizado em sistemas com mais de um processador Pode ser utilizado em sistemas uniprocessador Menor latência do que o controlador com 8259A Pode ser utilizado conjuntamente com o 8259A Cada controlador controla algumas interrupções Suporta a distribuição das interrupções entre os processadores 20

Sistema APIC Composto por duas partes que se comunicamo através do barramento APIC Local APIC Localizado em cada processador Determina se o processador deve processar a interrupção difundida no barramento APIC Gera interrupções entre os processadores Possui um temporizador I/O APIC Suporta linhas de interrupção para os periféricos Possui tabela de redirecionamento de interrupções 21 Tabela de Redirecionamento Armazena as características de cada linha de interrupção Ativa por borda ou por nível Vetor de interrupção Prioridade Processador de destino Seleção de processador estática ou dinâmica Estática = interrupção associada ao processador Dinâmica = processador selecionado dinâmicamente 22

Barramento APIC 23 Acesso Direto à Memória Acesso Direto à Memória Frequentemente utilizado com interrupções para sinalizar o fim da transferência de um bloco de dados O controlador de DMA assume o controle do barramento e faz a trasferência 24

DMA no PC O PC utiliza dois 8237A em cascata e um registrador de página para armazenar os bits mais significativos de endereço Páginas de 64 KB para o escravo e 128KB para o mestre Bus master ISA é feito através do DMA 25 Modos de DMA ISA Transferência única Uma transferencia a cada requisição Transferência em bloco Um bloco transferido por requisição Transferência por demanda Tranferências enquanto a requisição estiver ativa Transferência memória memória 26

Canais de DMA ISA Escravo 8 bits 0 refresh no XT/Sound Blaster/ECP 1 Sound Blaster 2 floppy 3 IDE/ECP Mestre 16 bits 4 cascata 5 Sound Baster 6 7 27 Otimizações do DMA Dependentes do Chipset Transferências de 16/32 bits em todos os canais Capacidade de endereçar com 32 bits Preempção Scatter write e gather read (buffer chaining) 28

DMA PCI DMA PC/PCI Linhas de REQUEST e GRANT dedicadas Associa um canal de DMA à um mestre PCI DMA distribuído Emulação de um 8237 através de canais de DMA implementados nos dispositivos PCI O chipset monitora os acessos ao 8237 virtual e distribui os dados no barramento PCI Cada canal DMA pode ser configurado DMA ISA DMA PC/PCI DMA distribuído 29