Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
Click to edit Master title style Click to edit Master subtitle style * * William Stallings Arquitetura e Organização de Computadores Capítulo 3 Barramentos do Sistema * * * Conceito Programa Sistemas Hardwired são inflexíveis Hardware de propósito geral podem fazer tarefas diferentes, utilizando-se de sinais de controle corretos Em vez de re-projetar o hardware, fornecer um novo conjunto de sinais de controle * * * O que é um programa? Uma seqüência de passos Para cada passo, uma operação aritmética ou lógica é feita Para cada operação, um diferente conjunto de sinais de controle é necessário * * * Função da Unidade de Controle Um pedaço de hardware aceita o código e emite os sinais de controle. Para cada operação um código único é fornecido P.e. ADD (somar), MOVE (mover) Nós temos um computador! * * * Componentes A Unidade de controle e Unidade Aritmética e Lógica constituem a Unidade Central de Processamento Dados e instruções precisam entra no sistema e os resultados saírem Entrada/Saída Armazenamento temporário de código e resultados é necessário Memória principal * * * Componentes do computador: Vista de alto nível * * * Ciclo da instrução Dois passos: Busca Execução * * * Ciclo de Busca O Contador de Programa (PC) guarda o endereço da próxima instrução a ser buscada O Processador busca a instrução da posição da memória apontada pelo PC Incrementa o PC A menos que não seja a próxima (desvio) A instrução é carregada no Registrador de Instrução - IR O Processador interpreta a instrução e executa as ações requeridas * * * Ciclo de execução Processador-memória Transferência de dados entre a CPU e a memória principal Processador I/O Transferência de dados entre a CPU e o módulo de I/O Processamento de dados Operações aritméticas ou lógicas nos dados Controle Alteração na seqüência das operações p.e. JUMP Combinação dos itens acima * * * Exemplo de Execução * * * Ciclo de Instrução – Diagrama de Estados * * * Interrupções Mecanismo pelo qual outros módulos (p.e. I/O) podem interromper a seqüência normal de processamento Programa p.e. overflow, divisão por zero Relógio (Timer) Gerado pelo relógio interno do processador Usado em sistemas pre-emptive multi-tasking I/O Da controladora de I/O Falha de hardware p.e. erro de paridade de memória * * * Controle de Fluxo de programa * * * Ciclo de interrupção Adicionando ao ciclo de instrução Processador verifica se existe interrupção Indicado pelo sinal de interrupção Se não existe interrupção, buscar a próxima instrução Se existe interrupções pendentes: Suspenda a execução do programa corrente Salvar o contexto Colocar no PC o endereço de início da rotina manipuladora da interrupção Processar a interrupção Restaurar o contexto e continuar o programa interrompido * * * Ciclo de instruções com interrupções – Diagrama de Estados * * * Interrupções Múltiplas Interrupções desabilitadas O processador ignorará as interrupções enquanto processa uma interrupção As interrupções permanecerão pendentes e serão checadas após a primeira interrupção ter sido processada Manipulação as interrupções na seqüências que elas ocorrem Definir prioridades Interrupções de baixa prioridade podem ser interrompidas por interrupções de maior prioridade Quando a interrupção de maior prioridade foi processada, o processador retorna para a interrupção previa * * * Interrupções Múltiplas - Seqüencial * * * Interrupções Múltiplas - Alinhadas * * * Conectando Todas as unidades tem de ser conectadas Diferentes tipos de conexão para diferentes tipos de unidades Memória Entrada/Saída CPU * * * Conexão da Memória Recebe e envia dados Recebe endereços (de posições) Recebe sinais de controle Leitura (Read) Escrita (Write) Temporalização (Timing) * * * Conexão de Entrada/Saída - 1 Similar à memória sobre o ponto de c\vista do computador Saída Recebe dados do computador Envia dados para os periféricos Entrada Recebe dados dos periféricos Envia dados para o computador * * * Conexão de Entrada/Saída - 2 Recebe sinais de controle do computador Envia sinais de controle para os periféricos p.e. girar os discos Recebe endereços do computador p.e número da porta para identificar o periférico Envia sinais de interrupção (controle) * * * Conexão da CPU Le instruções e dados Escreve dados (depois do processamento) Envia sinais de controle para as outras unidades Recebe (& atua) interrupções * * * Barramentos Existem várias possibilidades de sistemas de interconexão Estruturas de barramentos unicas ou multiplas são muito comuns p.e. Control/Address/Data bus (PC) p.e. Unibus (DEC-PDP) * * * O que é um barramento? É um caminho de comunicação entre dois ou mais dispositivos Comumente usa broadcast Geralmente agrupando Vários canais em um barramento p.e o barramento de dados de 32 bits são 32 canais separados de um único bit Linhas de força podem não serem exibidas * * * Barramento de dados Transportam dados Lembre-se que não existe diferença entre dados e instruções neste nível Largura é uma chave determinante da performance 8, 16, 32, 64 bit * * * Barramento de endereço Identifica a fonte ou o destino do dado p.e. A CPU precisa ler uma instrução (dado) de uma determinada posição na memória A largura do barramento determina a capacidade máxima da memória do sistema p.e. 8080 tem barramento de endereço de 16 bit permitindo 64k no espaço de endereço * * * Barramento de controle Informação de controle e temporalização Sinal leitura/escrita da memória Requisição de interrupção Sinal de relógio (clock) * * * Esquema de interconexão de Barramento * * * Grande e amarelo? Como se parece os barramentos? Linhas paralelas nos circuitos impressos Cabos fitas Conectores nas placas mães p.e. PCI Conjuntos de arames (fios) * * * Problemas do barramento Único Muitos dispositivos em um barramento leva: Demoras na propagação Caminhos de dados longos significam que coordenação do uso do barramento pode afetar desempenho adversamente Se for transferido dados em grupo pode-se aproximar na capacidade do barramento A maioria dos sistemas usam barramentos múltiplos para superar esses problemas * * * Tradicional (ISA) (com cachê) * * * Barramento de alta performance * * * Tipos de barramentos Dedicado Linhas separadas de endereço e dados Multiplexado Linhas compartilhadas Linha de controle endereço válido ou dado válido Vantagem – poucas linhas Desvantagens Controle mais complexo Performance final * * * Arbitração do Barramento Mais que um módulo controlando o barramento e.g. CPU e controladora de DMA Apenas um módulo deve controlar o barramento em um instante Arbitração pode ser centralizada ou distribuída * * * Arbitração Centralizada Dispositivo de hardware único controla o acesso ao barramento Controlador do barramento Arbitro Pode ser parte da CPU ou separado * * * Arbitração Distribuída Cada módulo reivindica o barramento Lógica de controle em todos os módulos * * * Temporalização Coordenação dos eventos no barramento Síncrono Eventos determinados pelo sinal do relógio (clock) Barramento de Controle inclua a linha de clock Uma seqüência 1-0 é um ciclo do barramento Todos os dispositivos podem ler a linha de clock Comumente sync subida da borda Comumente um único ciclo para um evento * * * Diagrama de temporalização Síncrona * * * Diagrama de temporalização Assíncrona * * * Barramento PCI Peripheral Component Interconnection Intel liberou para domínio público 32 ou 64 bits 50 linhas * * * Linhas Barramento PCI (necessário) Linha de Sistema Inclui clock e reset Endereços e dados 32 linhas multiplexadas para endereço e dados Linha de interrupção e validação Interface Controle Arbitração Não compartilhada Diretamente conectada no arbitro do barramento PCI Linhas de Erro * * * Linhas Barramento PCI (opcional) Linhas de Interrupção Não compartilhada Suporte a cachê Extensão do barramento para 64-bits 32 linhas adicionais Multiplexador de tempo 2 linhas para permitir os dispositivos concordar em usar transferências de 64-bits JTAG/Boundary Scan Para procedimentos de teste * * * Comandos PCI Transição entre iniciador (mestre) e o alvo Barramento de reivindicações mestres Determina o tipo de transação p.e. I/O leitura/escrita Fase de endereçamento Uma ou mais fases de dados * * * PCI Diagrama de Temporalização de Leitura * * * Arbitração de barramentos PCI * * * Leituras recomendadas Stallings, capítulo 3 (tudo) www.pcguide.com/ref/mbsys/buses/ De fato, leia o local inteiro! www.pcguide.com/
Compartilhar