Baixe o app para aproveitar ainda mais
Prévia do material em texto
Organização e Arquitetura de Computadores Instruções e Microinstruções Prof. Wanderson Senra Michel wanderson.senra@udf.edu.br Relembrando Relembrando Registradores Ciclo de Instrução Básico Exemplo de Aplicação do Ciclo Exemplo de Aplicação do Ciclo Exemplo de Aplicação do Ciclo Exemplo de Aplicação do Ciclo Busca da 1ª Instrução Execução da 1ª Instrução Busca da 2ª Instrução Execução da 2ª Instrução Busca da 3ª Instrução Execução da 3ª Instrução Organização e Arquitetura de Computadores Barramentos Prof. Wanderson Senra Michel wanderson.senra@udf.edu.br Parte 4 – Barramentos Parte 4 - Barramentos Parte 4 - Barramentos Parte 4 - Barramentos Parte 4 - Barramentos Parte 4 - Barramentos Parte 4 - Barramentos Parte 4 - Barramentos Parte 4 - Barramentos Parte 4 - Barramentos Parte 4 - Barramentos Parte 4 - Barramentos Parte 4 - Barramentos Parte 4 - Barramentos Parte 4 - Barramentos Parte 4 - Barramentos Parte 4 - Barramentos Parte 4 - Barramentos Parte 4 - Barramentos Parte 4 - Barramentos Parte 4 - Barramentos Parte 4 - Barramentos Organização e Arquitetura de Computadores Transmissão Paralela e Serial Prof. Wanderson Senra Michel wanderson.senra@udf.edu.br Tipos de Transmissão • Transmissão serial: a transferência de dados é feita um bit de cada vez, embora o controlador possa ser conectado à CPU através de um barramento paralelo. • Antigamente a comunicação serial era mais lenta que a transmissão paralela, e era usada em periféricos lentos, no entanto, atualmente a transmissão serial é usada para transmissão de alta velocidade. CPU Interface buffer periférico Barramento paralelo Interface serial Transmissão serial • Como a transmissão é realizada bit a bit, é necessário que o receptor e o transmissor estejam sincronizados, e os bits devem ter sempre a mesma duração.. • Se a velocidade de transmissão é de 1000 bits por segundo (1000 bps), cada bit tem duração de 1/1000 s, ou 1 ms. • O nível de tensão alto pode significar o bit 1 e o nível de tensão zero, o bit 0. O receptor deve medir o nível de tensão recebido no meio do período de duração do bit, de 1 ms, para que seja feita a leitura correta. transmissor receptor 1ms medição Transmissão serial assíncrona • Além de medir os bits corretamente, o receptor deve identificar os grupos de bits, por exemplo, na recepção de um caractere. Assim, o receptor deve saber qual o método de transmissão usado. • Há dois métodos para se realizar a transmissão serial: assíncrona e síncrona. • Transmissão assíncrona: o receptor se sincroniza a cada novo caractere recebido usando o bit start (valor 0). Os bits seguintes são do caractere e paridade. Ao terminar são recebidos dois bits stop (valor 1). Antes e após a recepção do caractere a linha de transmissão fica no estado de repouso. repouso start 010000100 stop repouso 2 bits 1 bit UART (Universal Assynchronous Receiver/Transmitter) É o circuito usado para a transmissão serial. A função da UART é: 1) decomposição de caracteres em bits para a transmissão e 2) composição de caracteres na recepção. transmissor receptor Caractere em forma paralela Caractere em forma paralela Diagrama interno de uma UART dado serial transmissão dado serial recepção controle controle Dado recebido Dado a transmitir Transmissão síncrona Os dados são transmitidos em bloco com as características seguintes: a) não há intervalo entre os caracteres de um bloco b) o transmissor monta um bloco, usualmente de 128 a 256 caracteres, e o transmite bit a bit sem intervalo entre o primeiro e o último bit; c) o receptor deve fazer a leitura bit a bit, portanto deve estar sincronizado com o transmissor. d) para a identificação do início e o fim de um bloco, deve existir um grupo de bits no início do bloco e outro no final do bloco. CC – caracteres especiais C1, C2, CN – caracteres de dados Transmissão paralela • Na transmissão paralela, um grupo de de bits é transmitido de cada vez, cada um sendo transmitido por uma linha separada. • Exemplos: chip 8255 (Programmable Peripheral Interface – PPI) da Intel, interface paralela de impressora, CENTRONICS e interface SCSI. Serial x Paralela • Aparentemente a transmissão paralela deveria ser mais rápida que a serial, permitindo maiores taxas de transmissão de dados. • No entanto, quando a velocidade de transmissão dos bits aumenta, começa a surgir diferenças de tempo de recepção entre os bits paralelos, denominadas desvio (skew em inglês). • A solução para evitar o problema de skew é o retorno à transmissão serial, que elimina o problema pois só existe uma linha de transmissão. • Assim usando a transmissão serial pode-se obter velocidades maiores, em consequência surgiu o padrão USB, FireWire e SATA. Organização e Arquitetura de Computadores Microprocessadores e Microprogramas Prof. Wanderson Senra Michel wanderson.senra@udf.edu.br Nível ISA inclui: • Instruction set • Memória (modelo) • Registradores acessíveis pelo programador Este nível define a macro arquitetura do sistema Macro arquitetura Utiltários Circuitos Eletrônicos Microprogramação Linguagem de Máquina A r q u i t e t u r a R I S C Sistema Operacional Aplicativos ISA: Arquitetura do Conjunto de Instruções A Macro arquitetura define • Set de instruções • Formato de instruções • Formato de memória • Endereçamento de memória • Acessos à memória • Quantidade e uso de registradores Macro arquitetura Instruction Set Architecture (ISA) Macro arquitetura • Existem duas arquiteturas dominantes no projeto de processadores: –Microprocessadores CISC (Complex Instruction Set Computer) –Microprocessadores RISC (Reduced Instruction Set Computer) Arquitetura CISC • Microprocessadores CISC (Complex Instruction Set Computer) são fáceis de programar e permitem um uso eficiente de memória. • A pouco tempo atrás as máquinas eram programadas única e exclusivamente em linguagem Assembly (linguagem de máquina), e as memórias eram lentas e caras, o que justificou a filosofia CISC. • Assim, projetos de microprocessadores clássicos, tais como o Intel 80x86 e o Motorola 68K series, seguiram a filosofia CISC. Arquitetura CISC • Mudanças recentes na tecnologia de software e hardware forçou uma reavaliação em termos de arquitetura. • Assim, muitos processadores CISC mais modernos têm implementado alguns princípios RISC (Reduced Instruction Set Computer), tornando-se arquiteturas híbridas mais convenientes. Arquitetura CISC Atributos de CISC • Possui um formato de 2 operandos, onde as instruções têm uma fonte e um destino, permitindo: –Comandos de registrador-registrador, registrador-memória, e memória- registrador; e –Múltiplos modos de endereçamento para acesso à memória. • Instruções de tamanho variável de acordo com o modo de endereçamento • Instruções que requerem múltiplos ciclos de clock para executar Características de Processadores CISC • Possuem um número pequeno de registradores de propósito geral • Possuem muitos registradores de propósito específico tais como, apontadores de pilha, tratadores de interrupção, etc. • Possuem um registrador “Condition code” alterado de acordo com efeitos causados por algumas instruções (menor do que, é igual a, maior do que e gravação de ocorrência de certas condiçõesde erro) Vantagens de CISC • Otimizar o desempenho da máquina • Microprogramação é tão fácil de implementar quanto o Assembly, e muito menos caro do que hardwarizar uma unidade de controle • A facilidade de novas instruções, permitindo que um computador novo execute o mesmo programa que era executado em um computador antigo • Como cada instrução torna-se mais capaz, menos instruções podem ser usadas para implementar uma dada tarefa Desvantagens de CISC • Como as novas gerações de uma família de processador geralmente envolve a geração antecessora, tanto o conjunto de instruções quanto o hardware do novo chip tornam-se mais complexos • Instruções diferentes levam quantidades diferentes de período de relógio para executar, o que pode tornar a máquina excessivamente lenta • Instruções CISC típicas setam “condition codes”, o que demanda tempo de execução, além do fato de os programadores terem um esforço extra em lembrar de examiná-las Primeiros Processadores CISC Tabela ilustrativa dos primeiros processadores CISC ANIMAÇÃO MÁQUINA CISC Arquitetura RISC • Microprocessadores RISC (Reduced Instruction Set Computer) são aqueles que utilizam um pequeno conjunto de instruções altamente otimizado. • Os primeiros projetos RISC foram desenvolvidos nos anos 70 e 80 pelas universidades de Stanford e Berkeley, respectivamente. Arquitetura RISC Execução em um ciclo de clock. Esta característica é resultado da otimização de cada instrução, aliada a uma técnica chamada de Pipelining. Grande número de registradores para evitar uma quantidade elevada de interações com a memória. Conjunto reduzido de instruções Instruções menos complexas Baixa capacidade de endereçamento para operações de memória, com apenas duas instruções básicas, LOAD e STORE Características Importantes A importância de se usar registradores é que entre os dispositivos de armazenamento disponíveis, os registradores constituem os dispositivos que oferecem acesso mais rápido que a memória principal ou a memória cache. Um banco de registradores é fisicamente pequeno, fica contido na ULA e na Unidade de Controle e usa endereços de tamanho muito menor que endereços da memória cache e memória principal. Os registradores armazenam os operandos mais utilizados minimizando operações de transferência de dados entre eles e a memória. Arquitetura RISC • É fato que máquinas RISC são mais baratas e mais rápidas do que as CISC, o que pode nos induzir a pensar que elas são as máquinas do futuro. • Entretanto, o custo de um hardware mais simples é a necessidade de um software mais complexo. Isto é bom ou ruim? Desvantagens RISC Primeiros Computadores RISC Tabela ilustrativa dos primeiros processadores RISC ANIMAÇÃO MÁQUINA RISC • Máquinas RISC conseguem maior MIPS que máquinas CISC . • Para instruções de ponto flutuante, as máquinas RISC necessitam de hardware especial para terem desempenho equivalente às CISC. • Múltiplos conjuntos de registradores das RISC contribuem para um maior desempenho. • Alguns programas criados em linguagens de alto nível precisam de uma biblioteca de procedimentos para rodar eficientemente em máquinas RISC, o que pode ser realizado via microcódigo nas CISC. • As arquiteturas RISC são mais fáceis de produzir devido à sua simplicidade e menor número de transistores. • Compiladores para RISC são mais complexos, pois precisam usar eficientemente os recursos de pipeline e de alocação de registradores. Comparação RISC x CISC Comparação RISC x CISC Comparação RISC x CISC Diferenças que caracterizaram os primeiros processadores das arquiteturas RISC e CISC Pipeline RISC x CISC Pipelines para RISC e CISC RISC CISC Como possui mais instruções ortogonais, apresenta uma menor variação da estrutura pipeline. Como possui instruções mais variadas, apresenta também um pipeline com uma estrutura mais complexa. A maior parte das instruções RISC são baseadas em operações nos registros internos. As instruções podem acessar os registros internos ou a memória. A descodificação das instruções é “trivial”. A descodificação das instruções pode demorar mais do que um ciclo de relógio.
Compartilhar