Baixe o app para aproveitar ainda mais
Prévia do material em texto
ARQUITETURA DE COMPUTADORES SISTEMAS DE INFORMAÇÃO – CEAD/UFPI PROFESSOR: EVERTON DIAS MÁQUINA MULTINÍVEL 1 Linguagem Orientada a Problemas Linguagem de Montagem (Assembly) Sistema Operacional Conjunto de Instruções Microarquitetura (Circuitos Digitais) Lógico Digital (Circuitos Eletrônicos) Nível 0 ----------------------------------- Nível 1 ----------------------------------- Nível 2 ----------------------------------- Nível 3 ----------------------------------- Nível 4 ----------------------------------- Nível 5 ----------------------------------- ESQUEMA DE NÍVEIS DAS ARQUITETURAS DE COMPUTADORES COMPUTADORES E SUA EVOLUÇÃO 2 A palavra “computador” vem do verbo “computar” que, por sua vez, significa “calcular”. VÁLVULA Entre 1945 a 1955: Computadores compostos por circuitos a válvulas. ENIAC (Electronic Numerical Integrator Analyzer and Computer): Mais famoso dessa geração, construído em 1945. Aritmética decimal, ao invés de binária Programação manual, por meio de chaves e cabos 3 1ª GERAÇÃO TRANSISTOR Substituíram as válvulas com mais eficiência, pois eram componentes mais ágeis Dissipavam menos calor Gastavam menos energia Utilizavam unidades lógicas e aritméticas e unidades de controle mais complexas 4 2ª GERAÇÃO CIRCUITO INTEGRADO Período: 1965- 1980 Consomem menos energia Ocupam menos espaço No Brasil é comum chama-los de CHIP. Possibilitou o conceito de Sistemas Multitarefa (Multithread) Foi possível graças: Avanços na Microeletrônica Barateamento na produção dos componentes 5 3ª GERAÇÃO CIRCUITO INTEGRADO EVOLUIDO Utilização de circuitos em grande escala Computadores tornaram-se mais baratos, potentes, compactos, confiáveis e acessíveis Origem do Personal Computer (PC) Utilização das linguagens de alto nível como C, C++, DBASE etc., Conceito de processamento Pipeline Conceito de internet introduzido 6 4ª GERAÇÃO DIAS ATUAIS Surgimento das arquiteturas de 64 bits Processadores com tecnologias RISC e CISC Discos rígidos com capacidade superior a 600GB Pen-drives com mais de 1GB de memória Inteligência Artificial (IA) Conectividade. 7 5ª GERAÇÃO PADRÃO VON NEWMANN 8 Projeto modelo de um computador digital que utiliza uma unidade de processamento (CPU) e uma de armazenamento (Memória) para comportar, respectivamente, instruções e dados. EVOLUÇÃO DOS PROCESSADORES 9 Intel 4004: Foi o primeiro microprocessador a ser lançado, em 1971 Meados da década de 70: A arquitetura x86 foi criada. As CPUs 80386 e 80486 são lançadas entre o meio e o fim da década de 80 1993: O primeiro Pentium (Intel) é lançado. EVOLUÇÃO DOS PROCESSADORES 10 1995, a Intel lançava o Pentium Pro. 1996: A AMD lançou o AMD K5 para concorrer com o Pentium original. Dois anos depois, o Pentium II foi lançado, atingindo o clock de 450 MHz. 1997: O AMD K6 foi lançado para bater as futuras linhas Pentium. Entre 1999 e 2000: Pentium III e o AMD Atlhon (K7) estavam guerreando pelo maior clock. Por um período de tempo, a AMD liderou a disputa, pois o Atlhon, que trabalhava com frequências maiores do que 1 GHz, superou o Pentium III. 2001: A Intel volta ao topo com o Pentium 4 (2 GHz ). Havia disputa entre os processadores “B”: Celeron (Intel) X Duron (AMD). EVOLUÇÃO DOS PROCESSADORES 11 Possuem dois ou mais núcleos de processamento (cores) no interior de um único chip. Estes dois ou mais núcleos são responsáveis por dividir as tarefas entre si. O surgimento dos processadores multicore, tornou-se necessário principalmente devido a missão cada vez mais difícil de resfriar processadores de apenas um núcleo com clocks cada vez mais altos. Exemplos de hardwares que utilizam a tecnologia multi-core: Athlon 64, Phenom, Turion 64 X2, Core 2 Duo, Core i3, Core i5, Core i7, Pentium Dual-Core, etc PROCESSADORES MULTINÚCLEO ( MULTICORE) DISPOSITIVOS DE E/S 12 Teclado Mouse Vídeo Câmera Modem Scanner Impressora DISPOSITIVOS DE ARMAZENAMENTO 13 Memória semicondutora Fitas magnéticas Discos magnéticos Discos flexíveis Discos ópticos Pen drive Flash drive MEMÓRIAS Memória são todos os dispositivos que permitem a um computador guardar dados, temporária ou permanentemente. 14 MEMÓRIA ROM 15 Os dados não se “perdem” quando a energia é cortada (não-volátil). PROM: Possui programa gravado e não se apaga os dados. EPROM: Memória somente de leitura programável e apagável. Gravação feita com incidência de luz ultravioleta. EEPROM: Memória somente de leitura programável e apagável. Gravação feita eletricamente. Evoluiu para a memória flash. BIOS: Um software gravado em memória rom. MEMÓRIA FLASH (EEPROM) 16 Tipo de Dispositivo de armazenamento não volátil que pode ser eletricamente apagado e reprogramado. Pode ser gravada rapidamente (daí seu nome). Permite armazenar dados por longos períodos, sem precisar de alimentação elétrica Mídia dominante em cartões de memória, pendrives, Unidades de estado sólido (SSDs) MEMÓRIA RAM 17 Tipo de memória que permite leitura e escrita de dados, sendo considerada a memória principal ou primária de qualquer sistema computacional. DRAM (RAM Dinâmica): Precisa que a informação seja atualizada o tempo todo. Esse tipo de RAM gasta mais energia se comparado com a SRAM. SRAM (RAM Estática): Consegue manter os bytes mesmo sem atualização contínua, perdidos somente após a interrupção da fonte de energia. A memória RAM estática é mais cara, mas entrega uma melhor performance. MEMÓRIA CACHE 18 É uma memória de alto desempenho localizada dentro do processador e que serve para aumentar a velocidade no acesso aos dados e instruções armazenados na memória RAM. ▰ Quando o processador tenta ler uma palavra da memória, é feita uma verificação para determinar se a palavra está na cache. Se estiver, ela é entregue ao processador. Se não, um bloco da memória principal é lido para a cache e depois a palavra é fornecida ao processador. ORGANIZAÇÃO DA MEMÓRIA RAM 19 As memórias são compostas por células. Uma célula é a menor unidade de endereçamento. Cada célula tem um número (em binário) denominado endereço. Se uma memória possui n células, seus endereços vão de 0 a n-1. Todas as células possuem o mesmo número de bits. CAPACIDADE DE MEMÓRIA RAM 20 Uma memória RAM é um conjunto de N células (endereços), cada uma armazenando um valor com tamanho M bits. A memória tem N endereços: Sendo N = 2E, e E = Tamanho do Barramento de Endereços. É quantidade de bits dos números que representam cada um dos N endereços. O total de bits que podem ser armazenados na referida memória é T, sendo: T = N x M CAPACIDADE DE MEMÓRIA RAM N = 8 = 23 21 0000 M = 4 = 22 N = Quantidade de endereços (células) M = Tamanho da célula T = M x N = Capacidade total da MP E = Tamanho do barramento de endereço N = 2E E = 3 CAPACIDADE DE MEMÓRIA RAM 22 ▰ Uma memória RAM tem um espaço máximo de endereçamento de 2K. Cada célula pode armazenar 16 bits. Qual o valor total de bits que podem ser armazenados nesta memória e qual o tamanho de cada endereço? Considere o exemplo abaixo: CAPACIDADE DE MEMÓRIA RAM 23 ▰ N=2k = 21 . 210 = 211 ▰ N=2E 211=2E E=11(cada endereço possui tamanho igual a 11 bits) ▰ M= 16 ▰ T=N . M T= T= 211.16 T=211.24 T=215 Ou T=25.210=32K Bits (valor total de bits que podem ser armazenados nesta memória) Solução: CAPACIDADE DE MEMÓRIA RAM 24 ▰ Um microcomputador possui uma capacidade máxima de Memória Principal de 32K células, cada uma capaz de armazenar uma palavra de 8 bits. Pergunta-se: a) Qual o tamanho do Barramento de Endereços destesistema b) Qual é o total de bits que podem existir nesta memória? Considere o exemplo abaixo: CAPACIDADE DE MEMÓRIA RAM 25 ▰ N=32k = 25 . 210 = 215 ▰ N=2E 215=2E E=15(cada endereço possui tamanho igual a 15 bits) ▰ M= 8 ▰ T=N . M T= T= 215.8 T=215.23 T=218 Ou T=28.210=256K Como 1 byte = 8bits, podemos afirmar que 256k /8 = 32KBytes Solução: HIERARQUIA DE MEMÓRIA 26 DETECÇÃO E CORREÇÃO DE ERROS O Código de Hamming é um código de detecção. Permite não apenas detectar erro de um bit, mas também a localização do bit errado. A ideia é inserir bits extras no byte de informação. Quanto mais bits são inseridos na palavra original, maior será a chamada distância de Hamming. Quanto maior for a distância de Hamming, mais fácil será detectar que determinado bit foi trocado, ou melhor ainda, será possível reverter essa troca e assim corrigir o bit errado sem haver necessidade de retransmissão da palavra. 27 ALGORITMOS DE SUBSTITUIÇÃO DE PÁGINAS 28 LRU (least recently used): Substitui o bloco no conjunto que permaneceu na cache por mais tempo sem qualquer referência a ele. FIFO (First-in-first-out): Substitui o bloco no conjunto que esteve na cache por mais tempo. LFU (Least frequently used): Substitui o bloco que tiver menos referências Random: Escolhe um bloco aleatoriamente. Possui desempenho inferior às baseadas no uso. ESCRITAS NA MEMÓRIA CACHE 29 Write-through: Todas as operações de escrita são feitas na MP e na cache, garantindo que a memória principal seja sempre válida. Write-back: As atualizações são feitas apenas na cache, minimizando as escritas na memória. BARRAMENTOS 29 Um barramento é um conjunto de linhas de comunicação que permitem a interligação entre dispositivos de um sistema de computação Barramentos Síncronos: Exigem que todo fluxo de dados aconteça em sincronia com uma base de tempo conhecida como clock do sistema. Barramento Assíncrono: Não segue um relógio mestre para realizar suas operações. Ativos ou Mestres: Dispositivos que comandam o acesso ao barramento para leitura ou escrita de dados Passivos ou Escravos: Dispositivos que simplesmente obedecem à requisição do mestre. ALGUNS TIPOS DE BARRAMENTOS 30 ISA: IBM PC, 8 BITS MCA: No intuito de substituir o ISA, possuía frequência maior, mas era proprietário, não houve popularidade. EISA: compatível com o Barramento ISA, utiliza para comunicação palavras binárias de 32 bits e frequência de 8 MHz. PCI: INTEL, 32BITS (há versão 64 bits), plug and play, AGP: Exclusivo para placas de vídeo, “ajudavam” a memoria principal PCI Express: Veio para substituir o AGP e PCI INTERFACES (BARRAMENTOS EXTERNOS) 31 Interface Serial Interface Paralela Firewire VGA HDMI DVI Ata e Sata PS/2 (mini-din) PROCESSADOR A unidade central de processamento ou CPU (Central Processing Unit), também conhecida como Processador, é a parte de um sistema computacional, que realiza as instruções de um programa de computador, para executar a aritmética básica, lógica, e a entrada e saída de dados. 32 CICLO BDE (BUSCA-DECODIFICA-EXECUTA) 33 ORGANIZAÇÃO DOS MICROPROCESSADORES 34 ULA – Unidade Lógico-Aritmética UC – Unidade de Controle MAR – Memory Address Register (Endereço) MBR – Memory Block Register (Dados) PC – Program Counter Registradores de Uso Geral UNIDADE DE CONTROLE (UC) 35 Gerencia todas as operações realizadas pela CPU Busca instruções e operandos As operações possuem código de identificação único O sinal de clock dá o ritmo da execução das micro operações Dados e instruções são copiados para dentro da CPU nos registradores INTERRUPÇÕES 36 Um código enviado a CPU por algum dispositivo solicitando recursos, interrompendo o funcionamento sequencial do processador. O que a CPU faz? Troca de Contexto DIRECT MEMORY ACCESS (DMA) 37 Permite que certos dispositivos (controladores de disco, placas gráficas, rede e som) de hardware acessem a memória do sistema para leitura e gravação independentemente da CPU. O DMA permite a transferência de dados direto para a memória sem interferência da CPU. A CPU inicia a transferência, mas não executa a transferência. Quando a transferência acaba, o DMA envia uma interrupção para a CPU. A CPU é envolvida apenas no começo e no final da transação. DIRECT MEMORY ACCESS (DMA) 38 ASSEMBLY (LINGUAGEM DE MONTAGEM) 39 Conjunto de instruções que a máquina reconhece e executa. É utilizada, em geral, para programação em baixo nível (mais próxima do nível de hardware) As instruções podem ser classificadas em uma das categorias a seguir: Leitura/Escrita em memória; Operações lógicas e aritméticas sobre dados; Controle da sequência de execução; Entrada/Saída. ASSEMBLY (LINGUAGEM DE MONTAGEM) 40 Os opcodes são representados por abreviações (mnemônicos) que indicam a operação ADD –Adiciona SUB –Subtrai MUL –Multiplica DIV –Divide LOAD –Carrega dados da memória STOR –Armazena dados na memória PILHA 41 Estrutura usada pelo HW para orientar o processador após o término de uma sub-rotina Uma pilha possui duas operações básicas importantes: • PUSH: insere um novo elemento no topo da lista; • POP: remove o elemento do topo da lista. REALOCAÇÃO 42 Códigos-fonte são submetidos a um “processo de tradução” (compilação, interpretação ou montagem) para linguagem de máquina. Compilação: Código fonte transformado em executável, ou binário. Interpretação: Não gera binário, cada linha é interpretada e a instrução é enviada de imediato para a CPU executar. Montagem: Escritos originalmente em Assembly REALOCAÇÃO - JAVA 43 CISC (COMPLEX INSTRUCTION SET COMPUTER) 43 Grande quantidade de instruções com múltiplos modos de endereçamento Numero pequeno de registradores Usa-se a UC da CPU para quebrar as instruções em outras menores Controle das instruções por microprogramação Numero de instruções alto Instruções complexas durante vários ciclos Muitas instruções podem acessar a memória RISC (REDUCED INSTRUCTION SET COMPUTER) 44 Uso avançado do Pipeline Controle por hardware Instruções com tamanho fixo Execução rápida das instruções Muitos registradores Uso de compiladores mais complexos Uso do load/Store para acesso a memoria Modo simples de endereçamento CISC X RISC 45 ARQUITETURA ARM 46 Desenvolvida por Acorn Computers LTDA Domina o mercado de baixa potência e sistemas de baixo custo embutido. De modo geral possuem tamanho fixo de 32 bits Onde podemos encontrar? • iPod, iPhone, iPad • Smartphones, palmtops, PDAs • Nintendo game boy advance • Netbooks (principalmente para concorrer com o Atom da Intel) 47 Bons Estudos! Alguma dúvida? Prof. Everton Dias everton@upi.edu.br Esse material foi desenvolvido no intuito de ajudar os alunos com os principais conceitos envolvendo Arquitetura de Computadores. É um resumo do conteúdo geral da disciplina. Foi utilizado como base o livro ‘‘ Arquitetura de Computador’’, de Flávio Ferry de Oliveira Moreira, que está disponível no Sigaa.
Compartilhar