Prévia do material em texto
ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos AULA APOIO ARQUITETURA DE HARDWARE SISTEMAS COMPUTACIONAIS 2024.1 Prof. Nelson Vasconcellos ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos CISC & RISC & PIPELINE RISC: Reduced Instruction Set Computers CISC: Complex Instruction Set Computer Arquitecturas de microprocessadores Arquitectura CISC Arquitectura RISC ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos Arquitectura de microprocessadores Uma das primeiras decisões ao projectar um microprocessador é decidir qual será o seu conjunto de instruções. Esta decisão é importante por dois motivos : • o conjunto de instruções decide o projecto físico da montagem( reduzido ou complexo); • qualquer operação a ser executada no microprocessador deve ser capaz de ser descrita em termos de uma linguagem dessas instruções. Diante dessa questão, existem duas filosofias de design, máquinas chamadas CISC e máquinas chamadas RISC. ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos Arquitectura de microprocessadores Quando falamos sobre microprocessadores CISC, (computadores com um conjunto de instruções complexo), e processadores RISC, (computadores com um conjunto de instruções reduzido), pensa- se que os atributos complexos e reduzidos descrevem o diferenças entre os dois modelos de arquitectura de microprocessador. ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos Arquitectura CISC A tecnologia CISC (Complex Instruction Set Computer) , criada em 1971 pela Intel do primeiro microchip que permitiria o nascimento da computação pessoal. Em 1972 surge o 8080, o primeiro chip capaz de processar 8 bits, o suficiente para representar números e letras. Com esta possibilidade de colocar todos os circuitos em um único chip e a capacidade de lidar com números e letras, nasceria a quarta geração de computadores, conhecidos como PCs ou computadores pessoais. ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos Durante grande parte da história dos computadores pessoais o modelo predominante dos microcomputadores tem sido daIntel Corporation. O primeiro processador da IBM PC foi a Intel 80088. As gerações seguintes foram da família 80X86, 80286, 80386, 80486, a partir do 80586 Intel começou a ter concorrentes como AMD, CYRIX e TEXAS INSTRUMENTS Apesar das mudanças, os processadores Intel até o 80486 eram baseados numa filosofia de projeto CISC, este padrão usa comandos que incorporam muitas instruções mínimas para executar uma simples operação. Um processador com arquitetura CISC é capaz de executar várias informações complexas diferentes. ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos Arquitectura CISC Os microprocessadores CISC possuem um conjunto de instruções que se caracteriza por ser muito amplo e permitir operações complexas entre operandos localizados na memória ou em registros internos. Esse tipo de arquitectura dificulta o paralelismo entre as instruções. A maioria dos sistemas CISC, clássicos de alto desempenho implementa um sistema que converte essas instruções complexas em várias instruções simples, geralmente chamadas de microinstruções. ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos Arquitectura CISC A microprogramação significa que cada instrução de máquina é interpretada por um microprograma localizado em uma memória no circuito integrado do processador. As instruções compostas são decodificadas internamente e executadas com uma série de microinstruções armazenadas em um ROM interno. Isso requer vários ciclos de clock, pelo menos um por micro instrução. ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos Arquitectura CISC Dentre os benefícios do CISC, destacam-se os seguintes: • Reduz a dificuldade de criação de compiladores. • Permite reduzir o custo total do sistema. • Reduz os custos de criação de software. • Melhora a compactação do código. • Facilita a depuração. Exemplo de microprocessadores baseados na tecnologia • CISC: Intel 8086, 8088, 80286, 80386, 80486, • IBM/64; Intel Pentium 1, II, III e algunsmodelosP4, bem como os correspondentes AMD (mesma arquitetura X86) Motorola 68000, 68010, 68020, 68030, 6840. ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos Atributos de CISC • Múltiplos modos de endereçamento para acesso à memória. • Instruções de tamanho variável de acordo com o modo de endereçamento • requerem múltiplos ciclos de clock para executar uma intrução ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos Características de Processadores CISC • Possuem uma lógica de decodificação de instrução complexa, originada pela necessidade de suportar modos de endereçamento múltiplos • Possuem um número pequeno de registradores de propósito geral, devido ao facto de as instruções poderem operar directamente na memória, além de uma quantidade limitada de espaço. • Possuem muitos registradores de propósito específico tais como, apontadores de pilha, tratadores de interrupção, etc. ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos Características de Processadores CISC • Muitas instruções • Instruções são complexas • Microcodificação das instruções • Alta capacidade de endereçamento para operações de memória • Número reduzido de registradores de próposito geral ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos Porque CISC (1)? • Simplificação do compilador? – Por um lado, mapeamento “direto” entre a instrução da ling. de alto nível e a instrução de máquina – Por outro lado, difícil de encontrar a instrução de máquina que se adeqüe exatamente a instrução da ling. de alto nível – Otimização mais difícil com instruções complexas • Programas menores? – Por um lado, usam menos memória • Porém memória se tornou mais barata – Por outro lado, podem parecer menores em forma simbólica (tem menos instruções), mas podem ocupar muitos bits na memória ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos Porque CISC (2)? • Programas mais rápidos ? – Tendência em usar instruções mais simples – Unidade de controle mais complexa e mais memória fazem com que aumente o tempo de execução das instruções mais simples • Não está claro que a arquitetura CISC é a solução apropriada ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos Arquitetura RISC Microprocessadores RISC (Reduced Instruction Set Computer) são aqueles que utilizam um pequeno conjunto de instruções altamente optimizado. Os primeiros projetos RISC foram desenvolvidos nos anos 70 e 80 pelas universidades de Stanford e Berkeley, respectivamente. Ejemplo de microprocesadores basados en la tecnología RISC: MIPS, Millions Instruction Per Second, PA-RISC, Hewlett Packard, PARC, Scalable Processor Architecture, Sun Microsystems, POWER PC, Apple, Motorola e IBM. • Intel i3, i5, i7 -ARM (celulares, palms, embutidos, etc) ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos Desde os primeiros momentos da Indústria de computadores que o cientistas dos principais fabricantes têm estudado métodos e técnicas que possam aperfeiçoar o desempenho e a capacidade dos sistemas de computação. Aos aspectos atribuídos ao primeiro RISC: projetos marcados por volta de 1975 incluem as observações que os compiladores de memória restritos da época eram frequentemente incapaz de tirar proveitos dos recursos . O termo é uma linha de arquitetura de processadores que favorecem um conjunto simples e pequeno de instruções que levam aproximadamente a mesma quantidade de tempo para serem executadas. A maioria dos microprocessadores modernos são RISC’s por exemplo DEC Alpha, SPARC,MIPS e Power PC. O tipo de microprocessador mais usado em Desktops. ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. NelsonVasconcellos ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos Arquitetura RISC Algumas características RISC importantes são: • Execução em um ciclo de clock. Esta característica é resultado da optimização de cada instrução, aliada a uma técnica chamada de Pipelining; • Pepelining é uma técnica que permite execução simultânea de partes, ou estágios, de instruções, tornando o processo mais eficiente; • Grande número de registradores de propósito geral para evitar uma quantidade elevada de interações com a memória. ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos PIPELINE Uma técnica de hardware que permite que a CPU realize a busca de uma ou mais instruções além da próxima a ser executada( é uma técnica de dividir a execução de uma instrução em fases ou estágios, abrindo espaço para execução simultânea de múltiplas instruções); Estas instruções são colocadas em uma fila de memória onde irão aguardar o momento para serem executados, por exemplo a busca na memória: execução da instruções e referência memória. Se utilizarmos esta técnica uma instrução for iniciada a cada ciclo, mesmo que ela demore mais de uma para finalizar, em média a regra estaria cumprida. Em cinco ciclos, cinco instruções foram iniciadas ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos • Pipelining – Introduz paralelismo no ciclo de busca e execução • Múltiplos processadores • Arquitetura de computadores com conjunto de instruções reduzido (RISC) ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos PROCESSAMENTO PARALELO Há diversos métodos de um processador realizar seu trabalho–executaras etapas de um ciclo de instrução. ➢ Processamento simples, sequencial–SISD - Single Instruction, Single Data Uma instrução manipulando um dado. ➢ Processamento paralelo -instrução–SIMD - Single Instruction, Multiple Data: –uma instrução manipulando múltiplos dados -controle por pipeline –diversas instruções em etapas diferentes de execução “simultânea”; -processamento superescalar – diversas execuções -multiprocessamento ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos 24 ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos Arquitectura RISC Algumas características RISC importantes são: • 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 ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos Características da RISC • Uma instrução por ciclo de máquina – Ciclo de máquina é o tempo para buscar dois operandos em registradores, executar uma operação de ULA e armazenar resultado em registrador • Maioria das operações são de registrador para registrador – Exceto lw e sw • Poucos e simples modos de endereçamento • Formato fixo das instruções • Compiladores devem despender mais tempo e esforço ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos Ao contrário dos complexos CISC, os processadores RISC são capazes de executar apenas poucas instruções simples, e justamente por isso que os chips baseados nesta arquitetura são mais simples e muito mais baratos. Uma outra vantagem dos processadores que utilizam essa arquitetura é o fato de terem um menor número de circuitos internos, permite que se trabalhe com clocks mais altos. Um bom exemplo são os processadores Alpha, que em 97 já operavam a 600 MHz. ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos Desvantagens da Arquitectura CISC • o conjunto de instruções quanto o hardware do novo chip tornam-se mais complexos, com a evolucao dos microprocessadores • Instruções diferentes levam quantidades diferentes de clock do relógio para executar, o que pode tornar a máquina excessivamente lenta. • Instruções que demandam tempo de execução, além do facto de os programadores terem um esforço extra em lembrar-se de examiná-las. ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos Desvantagens de RISC • Qualidade do Código - A performance de um processador RISC depende directamente do código gerado pelo programador. No caso de um código mal desenvolvido o processador pode gastar um tempo demasiado na execução das instruções, isto faz com que a performance de uma máquina RISC dependa em grande parte da qualidade do código, gerado pelo programador. ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos Desvantagens de RISC • Expansão do Código - a transição do código pode acarretar problemas. O termo "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, ter sido recompilado para uma máquina RISC. • Projecto de Sistema - requer sistema de memória rápida para alimentar suas instruções. Tipicamente sistemas baseados nesta arquitectura costumam apresentar grande quantidade de memória cache interna, conhecida como "first-level cache", o que encarece o projecto. ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos Comparacao entre CISC e RISC RISC CISC Instruções Simples durante 1 ciclo Instruções complexas durante vários ciclos Apenas LOAD/STORE referência a memória Qualquer instrução pode referenciar a memória Alto uso de Pipeline Baixa uso de Pipeline Instruções executadas pelo Hardware Instruções interpretadas pelo Micro programa (Micro programação) Instruções com formato fixo Instruções de vários formatos Poucas Instruções e modo de endereçamentos Muitas Instruções e modo de endereçamentos Múltiplos conjuntos de registradore Conjunto Único de registradores A complexidades esta no compilador A complexidade esta no micro programa ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos ARQUITETURA CISC RISC Implementação de Controle Micro programação Hardware Comprimento das instruções Variável fixo Numero de registradores Baixo (4 bits a 16 bits) Alto (32 bits a 128 bits) Numero de instruções Alto (mais de 100) Médio (aproximadamente 64) Execução de instruções Baixa superposição Alta superposição (Pipeline) Numero de modos de endereçamento Alto (4 ou mais) Baixo (3 ou menos) ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos Controvérsia (1) • Quantitativa – Comparar tamanho dos programas e velocidades de execução • Qualitativa – Examinar suporte a linguagem de alto nível e uso ideal da tecnologia VLSI (Very-Large Scale Integration: circuitos integrados) • Problemas – Não existem duas máquinas RISC e CISC que sejam diretamente comparáveis – Não existe um conjunto definitivo de programas para teste – Difícil separar efeitos do hardware dos efeitos do compilador ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos Controvérsia (2) • Problemas... – Maioria das comparações realizadas em máquinas experimentais e não comerciais – Maioria das máquinas comercias possuem uma mistura de características • Muitos projetos atualmente incorporam características CISC e RISC • PowerPC – RISC que incorpora características CISC • Pentium II – CISC que incorpora características RISC ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos Controvérsia (2) • Problemas... – Maioria das comparações realizadas em máquinas experimentais e não comerciais – Maioria das máquinas comercias possuem uma mistura de características • Muitos projetos atualmente incorporam características CISC e RISC • PowerPC – RISC que incorpora características CISC • Pentium II – CISC que incorpora características RISC ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos ATUALIDADES ESTADO DA ARTE ARQUITETURAS DE HARDWAREDE COMPUTADORES Prof. Nelson Vasconcellos ATUALIDADES Atualmente não se pode afirmar com 100% de certeza que um processador utiliza apenas a arquitetura CISC ou RISC, pois os modelos atuais de processadores abrigam as características de ambas as arquiteturas. Processadores ARM usados em celulares são um com exemplo de uso da arquitetura RISC, outro exemplo de uso dessa arquitetura é em consoles como o Nintendo 64 e o Playstation. ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos ATUALIDADES ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos Com o passar dos anos, tanto a Intel quanto a AMD perceberam que usar alguns conceitos da arquitetura RISC em seus processadores poderia ajudá-las a criar processadores mais rápidos. Porém, ao mesmo tempo, existia a necessidade de continuar criando processadores compatíveis com os antigos. A ideia então passou a ser construir chips híbridos, que fossem capazes de executar as instruções x86, sendo compatíveis com todos os programas, mas ao mesmo tempo comportando-se internamente como chips RISC, quebrando estas instruções complexas em instruções simples, que podem ser processadas por seu núcleo RISC. ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos PESQUISA - ATUALIDADES Máquinas Superescalares O termo escalar é utilizado para distinguir os modelos de execução: • e uma única instrução manipulando operandos discretos; • Das instruções vetoriais, que desencadeiam a ativação em paralelo de múltiplos elementos de processamento, todos executando uma única operação. Além destes dois modelos, existe o que executa várias instruções concorrentemente, sem que elas precisem ter o mesmo código de operação... Os computadores que possuem arquiteturas que implementam múltiplos pipelines são conhecidos como Superescalares. ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos ARQUITETURAS DE HARDWARE DE COMPUTADORES Prof. Nelson Vasconcellos