Baixe o app para aproveitar ainda mais
Prévia do material em texto
Arquitetura de Computadores II Aula 5 OBJETIVOS Entender Arquitetura dos componentes principais: ✓ Processador ✓ CPU ✓ Memória ✓ Entrada e Saída Arquitetura de Computadores CPU – Unidade Central de Processamento A unidade central de processamento ou CPU, 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 entrada e saída de dados. Arquitetura por Jhon von Newmann A máquina proposta por Von Neumann reúne os seguintes componentes: 1.Uma Memória 2.Uma Unidade Aritmética e Lógica (ULA/ALU) 3.Uma Unidade de Controle (UC) Função da CPU: buscar um programa na memória, instrução por instrução, e executá-lo sobre os dados de entrada. Gargalo de Von NewmannDécada de 50 Inspirado pela máquina de Alan Turing, ele criou ENIAC, ILLIAC e ORDIVAC Arquitetura de uma CPU Uma CPU reúne os seguintes componentes: 1.Uma Memória (Registradores) 2.Uma Unidade Aritmética e Lógica (ULA/ALU) 3.Uma Unidade de Controle (UC) Função: buscar um programa na memória, instrução por instrução, e executá-lo sobre os dados de entrada. Ciclo de instrução: ✓ Busca instrução; ✓ Decodifica a instrução; ✓ Busca operandos; ✓ Executa a instrução; ✓ Escreve os resultados; ✓ Retorna ao primeiro passo. Processadores CISC x RISC CISC – Instruções Complexas para o Computador - Vários ciclos de processamento para processar uma instrução ✓ Um número reduzido de registradores, ✓ Vários modos de endereçamento ✓ Processamento controlado por microprograma. RISC – Instruções Reduzidas para o Computador - Um ciclo de processamento para processar uma instrução ✓ Execução otimizada de Chamada de Funções (CALL); ✓ Menor quantidade de modos de endereçamento; ✓ Modo de execução com Pipelining. CISC e RISC podem definir o melhor ou pior desempenho do Processador. Processadores CISC x RISC Arquitetura de Computadores ULA – Unidade Lógica Aritimética ALU – Arithmetic Logic Unit A ULA executa as principais operações lógicas e aritméticas do computador. Ela soma, subtrai, divide, determina se um número é positivo ou negativo ou se é zero. Além de executar funções aritméticas, uma ULA deve ser capaz de determinar se uma quantidade é menor ou maior que outra e quando quantidades são iguais. Arquitetura de Computadores UC – Unidade de Controle UC - Unidade de Controle é a responsável por gerar todos os sinais que controlam as operações no exterior da CPU, e ainda por dar todas as instruções para o correto funcionamento interno da CPU. A apoiá-la, a UC terá a colaboração de uma outra estrutura/actor (o descodificador de instruções) Arquitetura de Computadores Registradores Um REGISTRADOR é um local interno à CPU, onde os dados que foram buscados na memória são armazenados. O registrador é um circuito lógico que tem a finalidade de reter a curto prazo um conjunto de bits. Os registradores são chamados de acumuladores. Arquitetura de Computadores Registradores Um REGISTRADOR é um local interno à CPU, onde os dados que foram buscados na memória são armazenados. O registrador é um circuito lógico que tem a finalidade de reter a curto prazo um conjunto de bits. Os registradores são chamados de acumuladores. Arquitetura de Computadores Registradores Um REGISTRADOR é um local interno à CPU, onde os dados que foram buscados na memória são armazenados. O registrador é um circuito lógico que tem a finalidade de reter a curto prazo um conjunto de bits. Os registradores são chamados de acumuladores. Arquitetura de Computadores Lógica Digital Porta - Elemento de hardware que recebe um ou mais sinais de entrada e, de acordo com a operação definida, produz uma saída. Porta lógica - Porta(hardware) que recebe valores de entrada, e realiza uma operação lógica sobre eles, produzindo uma saída. Operação lógica -produz um resultado que pode assumir dois valores. (0 ou 1, V ou F). Tabela Verdade: Conjunto de resultados da operação lógica para todas as combinações possíveis de entrada. Cada operação lógica possui um símbolo matemático que a representa, assim como uma porta lógica, que também possui um símbolo gráfico para representa-la. Arquitetura de Computadores Tabela Verdade Arquitetura de Computadores Memória Memória (Sistema de armazenamento de informações) ✓ Subsistema responsável pelo armazenamento de informações (dados e instruções) ✓ Nas memórias, existem duas operações possíveis: leitura (read) ou escrita (write) ✓ Organização de forma hierárquica com o objetivo de obter uma relação custo/benefício adequada. Parâmetros de classificação: ✓ Tempo de acesso: tempo em que uma informação requerida se torna disponível; ✓ Ciclo de memória: tempo decorrido entre dois acessos consecutivos; ✓ Capacidade de armazenamento: quantidade de informações que podem ser armazenadas; ✓ Volatilidade: Perda das informações na ausência de energia elétrica; ✓ Tecnologia de fabricação: meios magnéticos (HD’s, disquetes), meios semi-condutores (RAM, cache) e meios óticos (CD); –Temporariedade; –Custo. Arquitetura de Computadores Hierarquia de Memória Registradores: ✓ Dispositivos de armazenamento localizados no próprio processador; ✓ O processador trabalha buscando instruções e dados na memória principal (RAM) e as colocando em registradores; ✓ Enquanto estiverem sendo usados, os dados e instruções permanecem nos registradores. ✓ Tempo de acesso reduzido, pouco espaço de armazenamento e alto custo; ✓ Dispositivos voláteis; ✓ São divididos em registradores de propósito geral e específicos Arquitetura de Computadores Hierarquia de Memória Memória cache: ✓ Meio intermediário de armazenamento entre o processador e a memória RAM; ✓ Tempo de acesso bem mais curto do que o da RAM; ✓ Seu objetivo é minimizar os efeitos da diferença de velocidade entre o processador e a memória principal. ✓ Toda busca de instruções e dados é feita inicialmente na cache; ✓ Dispositivo de armazenamento volátil com capacidade de armazenamento superior à dos registradores. Arquitetura de Computadores Hierarquia de Memória Memória RAM: ✓ Máquina de Von Neuman; ✓ Meio para o qual os dados de instruções de um programa devem ser carregados antes da sua execução; ✓ São mais lentas do que as caches, porém bem maiores e mais baratas. Arquitetura de Computadores Hierarquia de Memória Memória secundária: ✓ Grande capacidade de armazenamento; ✓ Exemplos: HD’s, disquetes, CD’s, fitas, etc; ✓ Dispositivos não voláteis, utilizados para o armazenamento de informações em caráter permanente. Arquitetura de Computadores Hierarquia de Memória Memória secundária: ✓ Grande capacidade de armazenamento; ✓ Exemplos: HD’s, disquetes, CD’s, fitas, etc; ✓ Dispositivos não voláteis, utilizados para o armazenamento de informações em caráter permanente. Arquitetura de Computadores Hierarquia de Memória Memória Principal ✓ Todos os programas a serem executados pela CPU devem ser carregados para a MP. ✓ Palavra -unidade de informação que deve representar um dado ou instrução. ✓ Célula -grupo de bits identificados por um endereço. ✓ Unidade de transferência -quantidade de bits transferidos entre MP e CPU. ✓ Organização: Ncélulas endereçadas de 0 a (N-1) seqüencialmente, cada uma contendo Mbits. ✓ Duas operações possíveis: leitura (read) ou escrita (write). ✓ Quantidade de bits por célula -definida pelo fabricante. ✓ Em uma célula com Mbits podemos armazenar 2Mcombinações diferentes. ✓ Padrão adotado pela maioria dos fabricantes é de células de 8 bits (1 byte) ✓ Quantidade de bits do endereço indica a quantidade de células endereçáveis. ✓ Endereço X Conteúdo de células Arquitetura de Computadores Hierarquia de Memória Operações da Memória Principal As operações realizadas na MP envolvem os seguintes elementos: ✓ Barramento de dados; ✓ Barramento de endereços; ✓ Barramento de controle; ✓ RDM (Registrador de Dados da Memória); ✓ REM (Registrador de Endereços da Memória). Arquitetura de Computadores Hierarquia de Memória Passosde Leitura e Escrita da Memória Principal Leitura: 1) Preencher o REM; 2) Sinal de leitura no barramento de controle; 3) RDM <- MP(REM) Escrita: 1) Preencher o RDM; 2) Preencher o REM; 3) Sinal de escrita no barramento de controle; 4) MP(REM) <- RDM Arquitetura de Computadores Hierarquia de Memória Capacidade da Memória 1K - 210(1024); 1M - 220(1.048.576); 1G - 230(1.073.741.824); 1T - 240(1.099.511.627.776); Normalmente se mede a capacidade da memória através do seu número de células (bytes), Arquitetura de Computadores Representação da Informação Bit / Byte; Sistemas de numeração: ✓ Decimal -dez algarismos utilizados para a representação (0 a 9); ✓ Binária -Algarismos ‘0’ e ‘1’; ✓ Octal -Algarismos ‘0’ a ‘7’; ✓ Hexadecimal -Algarismos ‘0’a ‘9’ e letras de ‘A’ a ‘E’. Arquitetura de Computadores Linguagens Linguagem de alto nível: A = A + B; JavaScript Python PHP Linguagem de baixo nível ou de maquina: Carregue um registrador com o conteúdo da posição de memória A; Adicionar o conteúdo da posição de memória B ao registrador; Armazenar o conteúdo do registrador na posição de memória A Assembly console.log('Hello World!'); https://www.jdoodle.com/compile-assembler-nasm-online/ Máquina Assembly Online: section .data msg db 'Como programar em Assembly? Hello World!!!', 0AH len equ $-msg section .text global _start _start: mov edx, len mov ecx, msg mov ebx, 1 mov eax, 4 int 80h mov ebx, 0 mov eax, 1 int 80h Exercício 1 Altere a mensagem e dê um print https://www.jdoodle.com/compile-assembler-nasm-online/ Arquitetura de Computadores Linguagens https://www.jdoodle.com/compile-assembler-nasm-online/ Máquina Assembly Online: section .text global _start _start: mov eax, [x] sub eax, '0' mov ebx, [y] sub ebx, '0' add eax, ebx add eax, '0' mov [sum], eax mov ecx, msg mov edx, len mov ebx, 1 mov eax, 4 int 0x80 mov ecx, sum mov edx, 1 mov ebx, 1 mov eax, 4 int 0x80 mov eax, 1 int 0x80 section .data x db '5' y db '3' msg db "sum of x and y is " len equ $ - msg segment .bss sum resb 1 Resultado: sum of x and y is 8 Exercício 2 Altere os valores do calculo e dê um print https://www.jdoodle.com/compile-assembler-nasm-online/ Arquitetura de Computadores Entrada e Saída Dispositivo de entrada e saída: É necessário que exista um componente intermediário entre o processador e cada um dos periféricos. As controladoras de periféricos realizam o papel da comunicação entre os periféricos e o núcleo CPU / MP. Existem duas formas de comunicação entre a CPU / MP e os periféricos: Transmissão serial: Os dados são transmitidos um bit de cada vez (Ex: Teclado e Mouse). Transmissão paralela: Os dados são transmitidos em grupos de bits (Ex: HD’s e Vídeo) Principais dispositivos de E/S: ✓ Teclado; ✓ Mouse; ✓ Monitor de Vídeo; ✓ Impressora; ✓ HD’s, disquetes, CD’s e Fitas Magnéticas; ✓ Scanners; ✓ MODEM’s ✓ Etc. Bibliografia complementar https://pt.wikipedia.org/wiki/Arquitetura_de_von_Neumann https://www.youtube.com/watch?v=hcn0BPG182A https://pt.wikipedia.org/wiki/Registrador_(inform%C3%A1tica) BROWN, Stephen; VRANESIC, Zvonko.Fundamentals of digital logic with VHDL design. 3. ed. Boston: Mc Graw Hill Higher Education, 2009. 840 p., il., 24 cm. ISBN 9780073529530. WEBER, Raul Fernando. Fundamentos de arquitetura de computadores.4. ed. Porto Alegre: Bookman, 2012. 1 recurso online. (Livros didáticos informática UFRGS, 8). ISBN 9788540701434. Disponível em: <http://integrada.minhabiblioteca.com.br/books/9788540701434>. Acesso em: 31 mar. 2019. MONTEIRO, Mário A. Introdução à organização de computadores. 5. ed. Rio de Janeiro, RJ: LTC, 2007. 1 recurso online. ISBN 978-85-216-1973-4. Disponível em: <http://integrada.minhabiblioteca.com.br/books/978- 85-216-1973-4>. Acesso em: 31 mar. 2019. TOKHEIM, Roger. Fundamentos de eletrônica digital, V.1: sistemas combinacionais. Porto Alegre: AMGH, 2013. 1 recurso online. (Tekne). ISBN 9788580551938. Disponível em: <https://integrada.minhabiblioteca.com.br/books/9788580551938>. Acesso em: 31 mar. 2019. https://pt.wikipedia.org/wiki/Arquitetura_de_von_Neumann https://www.youtube.com/watch?v=hcn0BPG182A https://pt.wikipedia.org/wiki/Registrador_(inform%C3%A1tica)
Compartilhar