Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
* Arquitetura RISC * Introdução Os elementos essenciais de uma instrução são: Código de operação; Referências aos operandos de origem e de destino; Endereço da próxima instrução. * Introdução Característica comum à arquitetura de diversos processadores é o uso de uma pilha, visível ou não ao programador. Operações básicas PUSH (empilhar) e POP (desempilhar). * Introdução O conjunto de instruções da máquina constitui o limite em que o projetista e o programador de computadores enxergam uma mesma máquina: Projetista – Fornecer os requisitos funcionais para a CPU. Programador (linguagem de máquina) – conhecer o conjunto de registradores da CPU, a estrutura de memória, os tipos de dados e o funcionamento da ULA. * Características de Instrução de Máquina A operação de uma CPU é determinada pelas instruções que ela executa, as instruções de máquina ou instruções de computador. A coleção de diferentes instruções é conhecida como conjunto de instruções da CPU. * Introdução Os processadores Intel até o 486 eram baseados na arquitetura CISC. Padrão CISC: Comandos que incorporam muitas instruções mínimas para executar uma simples operação. Essas instruções mínimas são chamadas de RISC - Reduced Instruction Set Computing (Conjunto Reduzido de Instruções Computacionais ). * Introdução 1980 – David Patterson e Carlo Séquin desenvolveu chips processadores somente em hardware, denominado RISC : Chips VLSI - RISC I CPU. 1981 - John Hennessy desenvolveu um processador com projeto semelhante: MIPS. * Introdução Máquinas RISC Um conjunto limitado de instruções com formato fixo; Grande número de registradores ou o uso de um compilador que otimize o uso de registradores; Enfoque na otimização do uso da pipeline de instrução. * Introdução Máquinas RISC O conjunto de instruções simples favorece o uso eficiente de pipelines porque o número de operações por instrução é menor e mais previsível. Favorece também o uso da técnica de atraso de instruções de desvio, na qual são trocadas de posição com outras instruções para melhorar a eficiência. * Processadores (Caminho de dados) Registradores Registradores de entrada da UAL Registradores de saída da UAL Barramento de entrada da UAL * Introdução Por quê não há predominância do projeto RISC? Compatibilidade com os softwares aplicativos. Investimentos. O padrão não oferecerá benefícios, a não ser que seja usado um SO e programas criados e compilados especificamente para tirar vantagens das operações RISC. O emprego das mesmas idéias do padrão RISC foram aplicadas na arquitetura CISC. * Características e Funcionamento No início os Processadores RISC eram mais velozes. O termo refere-se ao número de ciclos de máquina que o processador leva para selecionar uma instrução. Um chip RISC, pode selecionar e executar uma instrução a cada ciclo de máquina. Ciclo de máquina –tempo requerido para buscar dois operandos em registradores, executar a operação e armazenar. * Características e Funcionamento As funções de comando consistem de muitas instruções pequenas e individuais, que realizam apenas uma única tarefa. O software aplicativo, recompilado para um processador RISC, informa ao processador qual a combinação de seus comandos menores deve ser executada para completar uma operação maior. * Características e Funcionamento Todos os comandos são do mesmo tamanho, e há somente uma maneira de carregá-los e armazená-los. Com cada comando na forma de microcódigo, os processadores não precisam usar uma unidade que transforme os comandos complexos em microcódigos mais simples, tornando-os mais rápidos. * Características e Funcionamento Durante a compilação de software para um chip RISC, o compilador determina quais comandos não vão depender dos resultados de outros. Como estes comandos não têm de esperar por outros, o processador pode executar simultaneamente vários comandos em paralelo. * Características e Funcionamento No processador RISC o conjunto de circuitos pode ser mais simples. Os comandos RISC passam por um número menor de transistores em circuitos mais curtos, desta forma os comandos são executados mais rapidamente. O número de ciclos necessários para completar uma operação inteira depende do número de pequenos comandos que constituem essa operação. * Princípios do Projeto RISC As instruções são executadas diretamente por hardware: Todas as instruções comuns são executadas diretamente pelo hardware – não são interpretadas por microinstruções. Maximizar a taxa de execução das instruções: Tentar iniciar o máximo possível de instruções por segundo. Instruções fáceis de decodificar: Decodificar a instrução, determinar seus recursos, é um gargalo no processamento. Soluções: Criar instruções regulares, de comprimento fixo, com pequeno número de campos. Menor número de formatos para a instrução. * Princípios do Projeto RISC Somente LOAD e STORE devem referenciar a memória: Requerer que os operandos venham de registradores da CPU e a eles retornem. Movimentação de operandos da memória para registradores pode ser executada em instruções separadas, sobrepondo essas instruções a outras. Quantidade de registradores: Sendo o acesso à memória lento, é preciso muitos registradores. * Pipelined Técnica em que o hardware processa mais de uma instrução de cada vez. Ele não espera o término de uma instrução para executar outra. Na máquina CISC são quatro fases para a execução: busca, decodificação, execução e escrita. Na máquina RISC, as mesmas fases são executadas em paralelo. Uma fase não precisa esperar a outra terminar, para que ela se inicie, melhorando o processamento global. * Diferenças entre Arquiteturas RISC e CISC Com o conjunto de instruções mudados e reduzidos, e o uso de pipelined, o processador cabia em um chip menor permitindo aumento na velocidade do clock e a inserção de novas características: Registros adicionais; Unidades funcionais adicionais para execução superescalar; Instruções adicionais não-RISC (mais rápidas); On-chip aceitando operações de ponto flutuante; Profundidade aumentada no Pipelined. * Diferenças entre Arquiteturas RISC e CISC Arquiteturas RISC Os processadores possuem 32 registros genéricos de 32 bits – para representar valores inteiros e/ou endereços de memória. Apontador para a próxima instrução, o instruction pointer ou program counter. Arquiteturas CISC Dois bancos de 8 registros genéricos de 32 bits: um para dados (D) e outro para apontadores para a memória (A). A arquitetura de base dispõe de 4 registros para conter operandos aritméticos (A, B, C e D), mais 4 para trabalhar com apontadores para a memória (BP, SP, DI e SI) e outros 4 para lidar com uma memória segmentada (CS, DS, SS e ES). Variação da dimensão dos registros na mesma família, pois o formato de instrução foi concebido para distinguir apenas operandos de 8 e de 16 bits; para garantir compatibilidade, os novos processadores têm de distinguir operandos de 8, 16 e 32 bits, usando o mesmo formato de instrução. * Diferenças entre RISC e CISC Todos os processadores dispõem de instruções de salto "de ida e volta“ (instruções de chamada de sub-rotinas): Guardar o endereço de instrução que segue a instrução de salto no PC; nas arquiteturas CISC este valor é guardado na stack; nas arquiteturas RISC ele é guardado num registro. * Conjunto de Instruções de um Processador RISC O conjunto de instruções que cada processador suporta é bastante variado. Para transferência de informação: entre registros e a memória (load/store), entre registros, entre posições de memória (não disponível em qualquer arquitetura RISC), ou entre registros e a stack; Operações aritméticas, lógicas, ...: soma, subtração, e operações lógicas AND, OR, NOT; alguns suportam a divisão, quer diretamente por hardware, quer por microprogramação. * Acesso a Operandos em Memória em CISC e RISC Na arquitetura CISC devido a um menor número de registros é feita a alocação das variáveis em posições de memória, enquanto que nas arquiteturas RISC, a regra é alocar em registros. A CISC por suportar o aninhamento e recursividade de procedimentos, necessita de um vários modos de endereçamento à memória. * Operações Lógicas e Aritméticas em CISC e RISC A diferença está na localização dos operandos, e o nº de operandos que é possível especificar em cada instrução: CISC: 1 ou mais operandos em memória; nem sempre se especificam 3 operandos. RISC: operandos sempre em registros; 3 operandos especificados (1 dest, 2 fontes). * Vantagens e Desvantagens do RISC Vantagens Velocidade Devido a tecnologia pipelined a RISC alcança duas a quatro vezes a performance dos processadores CISC. Simplicidade do Hardware O processador RISC trabalha com instruções simples, utiliza menos espaço no chip. Instrução de máquina simples As instruções construídas para um processador RISC são simples e pequenas o que aumenta a sua performance. * Vantagens e Desvantagens do RISC Desvantagens A transição da arquitetura CISC para RISC pode apresentar problemas para fazer a transição do código de memória de maneira correta. Qualidade do Código A performance de um processador RISC depende diretamente do código gerado pelo programador. Expansão do Código Refere-se ao aumento de tamanho que se obtém de um programa originalmente compilado para uma máquina CISC. Projeto de Sistema A arquitetura RISC requer sistema de memória rápida para alimentar suas instruções, ou seja, memória cache interna, o que encarece o projeto.
Compartilhar