Introdução à Arquitetura de Computadores Professor Carlos Gouvêa SENAIPR - Pinhais O Computador Tipos analógico => grandezas contínuas ex: termômetro digital => pulsações elétricas (0V, +5V) ex: calculadora bit- menor unidade de informação ( binary digit ) 0 = apagado/desligado/desativado/não 1 = aceso/ligado/ativado/sim 1 byte= 8 bits 1 KB = 1 quilobyte = 1024 bytes 3 1
Componentes básicos de um computador Memória Processador Periféricos Barramento O processador (ou microprocessador) é responsável pelo tratamento de informações armazenadas em memória (programas em código de máquina e dos dados). A memória é responsável pela armazenagem dos programas e dos dados. Periféricos, que são os dispositivos responsáveis pelas entradas e saídas de dados do computador, ou seja, pelas interações entre o computador e o mundo externo. Exemplos de periféricos são o monitor, teclados, mouses, impressoras, etc. Barramento, que liga todos estes componentes e é uma via de comunicação de alto desempenho por onde circulam os dados tratados pelo computador Organização Básica Memória de Entrada de Controle de Saída Lógica e Aritmética Central de Processamento 5 2
I/O é um sigla para Input/Output. indica entrada (inserção) de dados por meio de algum código ou programa, para algum outro programa ou hardware; bem como a sua saída (obtenção de dados) ou retorno de dados, como resultado de alguma operação de algum programa. 6 São exemplos de unidades de entrada de um computador: disco rígido, microfone, teclado, mouse, Tela Sensível ao toque, Scanner, Leitor de código de barras, Celular, Pendrive, Máquina fotográfica digital, Webcam, joysticks e outros acessorios de jogos. 7 3
São exemplos de unidades de saída de um computador: monitor, caixas de som, impressora, disco rígido. 8 Organização Básica Memória de Entrada de Controle de Saída Lógica e Aritmética Central de Processamento 9 4
Memória a memória principal, ou memória de trabalho, onde normalmente devem estar armazenados os programas e dados a serem manipulados pelo processador; a memória secundária que permitem armazenar uma maior quantidade de dados e instruções por um período de tempo mais longo; o disco rígido é o exemplo mais evidente de memória secundária de um computador, mas podem ser citados outros dispositivos menos recentes como as unidades de fita magnética e os cartões perfurados; a memória cache, que se constitui de uma pequena porção de memória com curto tempo de resposta, normalmente integrada aos processadores e que permite incrementar o desempenho durante a execução de um programa. Arquitetura de Computadores RAM ( Random Access Memory ) memória volátil de leitura e escrita. As informações são perdidas caso o sistema de alimentação seja interrompido; ROM ( Read Only Memory ) memória não-volátil apenas de leitura. Seu conteúdo é gravado no processo de fabricação; PROM ( Programable ROM ) pode ser gravada apenas uma vez; EPROM ( Erasable PROM ) pode ser apagada e regravada várias vezes. 11 5
Organização Básica Memória de Entrada de Controle de Saída Lógica e Aritmética Central de Processamento 12 Processador A CPU é composta basicamente de três elementos: unidade de controle, unidade lógica e aritmética e registradores. Lógica e Aritmética (ALU) - Assume todas as tarefas relacionadas às operações lógicas (ou, e, negação, etc.) e aritméticas (adições, subtrações, etc...) a serem realizadas no contexto de uma tarefa. 6
Processador de Controle (UC) - assume toda a tarefa de controle das ações a serem realizadas pelo computador, comandando todos os demais componentes de sua arquitetura. onde os códigos (instruções), que representam as operações a serem realizadas, são identificados e através da qual os dados são obtidos da memória; código de operação: identifica a operação a ser feita código de operando: dados necessários à execução da operação Registradores - são utilizados para assegurar o armazenamento temporário de informações importantes para o processamento de uma dada instrução. Arquitetura de Computadores de Controle onde os códigos (instruções), que representam as operações a serem realizadas, são identificados e através da qual os dados são obtidos da memória; código de operação: identifica a operação a ser feita código de operando: dados necessários à execução da operação 15 7
O Registradorde uma unidade central de processamento é um tipo de memória de pequena capacidade porém muito rápida, utilizada no armazenamento temporário durante o processamento 16 Arquitetura de Computadores Linguagens de Máquina Especificação de uma operação básica (primitiva) que o hardware é capaz de realizar diretamente Formato: Código de operação + código de operandos Código da Operação Operando 1 Operando 2 Número de operandos: 0, 1, 2, 3,... O operando pode indicar o valor ou um endereço onde se encontra o valor 17 8
Ciclo da Instrução Ciclo de busca Buscar a próxima instrução na memória Incrementar o CP (Contador de Programa) Ciclo de Execução Interpretar a instrução Trazer (se for o caso) os operandos para a UCP Executar a operação Armazenar (se for o caso) os dados de saída Atualizar (se for o caso) o CP Repetir o processo com uma nova instrução 18 Tradutores Montador converte programas em ling. montada (Assembly) para ling. de máquina; Compilador converte programas em ling. de alto nível para ling. de máquina, às vezes agregando várias instruções de máquina para simular um comando de alto nível; Interpretador mesma função do compilador, só que vai executando linha a linha. 19 9
Compilação x Montagem Ler A, B X = A + B se X >= 0 imprimir X Ling. de Alto Nível Compilação FIM GET A GET B LDA A ADD B STA X JN FIM PRT X HLT 01001101 b 00101010 b 11100000 b 11110101 b 11001010 b 10000101 b Montagem Ling. Montagem (Assembly) Ling. de Máquina 20 Exemplo de como funciona o computador: Uso de um programa que faz cálculos matemáticos Usuário digita: 10+20*2 UC recebe estes dados UC verifica que precisam ser calculados UC envia para a ULA ULA realiza o cálculo necessário ULA retorna o valor 50 para a UC UC armazena na memória UC mostra o resultado no dispositivo de saída 10
Sistemas de Aplicação: Tradução Linguagem de Alto Nível Programa Fonte Tradutor (Compilador ou Interpretador) Tabela de Instruções de Máquina Bibliotecas Executável Linguagem de Máquina 22 Sistemas de Aplicação: Execução Código executável (Armazenado em disco) Carregamento na Memória Principal Execução 23 11
Arquitetura de um Sistema de Computação Aplicações & Utilitários Sistema Operacional Basic Input Output System (BIOS) Hardware 24 Arquitetura de Computadores Memória Secundária Ex: HD ( Hard Disk )/disco rígido, Disquete 3,5, CD- ROM, DVD, BLURAY ZIP DRIVE (JAZZ), Fita DAT, Disk Array Armazena bits para representar caracteres: Ex: códigos ASCII(Windows) e EBCDIC (UNIX) ASCII:? 0011 1111 C 0100 0011 @ 0100 0000 D 0100 0100 A 0100 0001 E 0100 0101 B 0100 0010 F 0100 0110 Representação binária 25 12
Memória Cache Idéias básicas por trás do conceito de Memória Cache: As palavras de memória mais usadas pelo processador devem permanecer armazenadas na cache. Somente no caso de ela não estar armazenada na cache é que a busca se dará na memória principal Se número de acessos a cache é grande, tempo médio de acesso à memória diminui significativamente Sucesso do esquema depende da fração de acessos satisfeitos pela cache 26 27 13
Arquitetura de Computadores Tipos de memória: Disco magnético: cabeças de gravação lêem ou gravam dados no revestimento magnético do disco (2 lados). Os discos são organizados em trilhas e setores (formatação); Discos óticos (CD, DVD e BLURAY)os dados são gravados por meio de inserções de variações na superfície reflexiva. Um feixe laser lê estas irregularidades percorrendo uma espiral; de fita: a informação é registrada sobre uma película de material magnético; 28 Arquitetura de Computadores Periféricos Entrada: teclado, mouse, unidades de disco, scanner, microfone, leitora óticas, sensores, webcam, etc. Saída: monitor, impressora, plotters, alto-falantes, etc. 29 14
Memória Principal Organização de um Sistema de Computação Dispositivos de Armazenamento Discos Monitor Dispositivos de Entrada e Saída Impressora Outros Central de Processamento ou Processador Via de Comunicação (Barramentos) Periférico Interface Controlador 30 ULA Organização de um SC ULA: UCP Registradores de Uso Geral Cache L1 de Lógicxa e Aritmética ACC: Acumulador RI: Registrador de Instrução CP: Contador de Programa REM: Registrador de End. de Memória RDM: Registrador de Dados de Memória ACC RI Decodificador de Instruções CP Memória Cache L2 Memória Principal... de Controle REM RDM Dispositivos de E/S BC BE BD 31 15
Arquitetura de Computadores Tipos de computadores Supercomputadores(grande capacidade de processamento, paralelismo, pesquisas científicas): CRAY Mainframes(grande porte, centenas de usuários): IBM, DEC, UNISYS Minicomputadores(versão menor dos mainframes, vários usuários) Microcomputadores(potência limitada, 1 usuário): PC (downsizing!) Cluster: Agrupamento de computadores agregando uma grande capacidade de processamento. 32 Arquitetura de Computadores Quanto ao número de processadores monoprocessamento: apenas 1 processador, 1 memória principal, vários programas podem compartilhar o mesmo processador (ex: time-sharing - cada programa tem um tempo para usar o processador); multiprocessamento: mais de um processador, podem compartilhar memória ou não, podem executar vários programas ao mesmo tempo ou dividir um. 33 16
34 17