Introdução à Engenharia de Computação - PDF Download grátis
Download "Introdução à Engenharia de Computação"
Artur Castro Palhares
2 Tópico: Organização Básica de um Computador Digital Introdução à Engenharia de Computação 2
3 Componentes de um Computador Computador Eletrônico Digital É um sistema composto por: Memória Principal e Secundária Unidade Central de Processamento (CPU Central Processing Unit) ou Processador Unidades de Entrada/Saída (I/O Input/Output Unit) Barramentos (vias de interligação) 3
4 Componentes de um Computador (cont.) 4
5 Componentes de um Computador (cont.) Unidade Central de Processamento Processador Função: Executar os programas armazenados na MP, buscando cada instrução, interpretando-a e em seguida a executando. Unidade de Controle (UC): busca instruções na MP e determina o tipo de cada instrução. Unidade Lógica e Aritmética (ULA): realiza um conjunto de operações necessárias à execução das instruções. Conjunto (Banco) de Registradores: pequena memória de alta velocidade, usada para armazenar resultados temporários e certas informações de controle. 5
6 Componentes de um Computador (cont.) Memória Função: Armazenar dados e programas (conjunto de instruções), permitindo o processamento automático dos dados. Para serem executados pela CPU, os programas devem estar armazenados na Memória (como veremos, Memória principal). Unidade básica é o Bit Diferentes maneiras de se organizar a memória Hoje em dia o padrão é o byte Cada byte representa um endereço de memória 6
7 Componentes de um Computador (cont.) Tipos de Memória Memória Principal (MP) Limitada (armazena somente alguns programas e dados). É a memória de trabalho, nela são carregados todos os programas e dados usados pela CPU no momento. Geralmente o seu conteúdo será perdido uma vez que o computador seja desligado. Ex.: RAM (Random Access Memory) Memória Secundária (MS) Grande capacidade de armazenamento Mais lentas do que a MP Geralmente não-voláteis, permitindo guardar os dados permanentemente. Ex.: Discos rígidos (HD - Hard Disk), CDs, DVDs, disquetes, Pen drives, etc. E a Memória Cache? 7
8 Componentes de um Computador (cont.) Memória pequena e rápida, contida na CPU Flash memory Magnetic disk 8
9 Componentes de um Computador (cont.) Dispositivos de Entrada/Saída Função: Servem para a comunicação do computador com o meio externo. Muitos são usados para a interação com o usuário Transformam e transferem da representação interna dos dados (sinais eletrônicos usados no computador) para a representação externa usada por pessoas ou vice-versa. Ex.: impressoras, teclados, mouses, monitores, caixas de som, discos, etc. 9
10 Componentes de um Computador (cont.) Barramentos (Bus) Função: interconectar os demais elementos básicos. Nesse modelo, é possível transferência direta de dados entre os dispositivos de E/S e a memória Transferência feita por dispositivos especiais Controlador de DMA (Direct Memory Access) ou processador E/S Assumem momentaneamente o controle do barramento e isolam a comunicação CPU com a memória e dispositivos E/S. 10
11 Componentes de um Computador (cont.) Barramentos Unidirecionais: conduzir os sinais em uma única direção Bidirecionais: conduzir ora em uma direção e ora em outra de acordo com comandos eletrônicos Podem ainda ser: Três estados: bidirecionais acrescidos da possibilidade de se desconectarem eletricamente Unidirecional com a possibilidade de desconexão elétrica A possibilidade de desconexão elétrica controlada eletronicamente torna viável a comunicação seletiva entre os dispositivos. Por exemplo, a CPU se comunica com a memória e se desconecta dos dispositivos E/S. 11
12 Componentes de um Computador (cont.) Tipos de barramentos: Barramento de Dados: responsável pela transferência de dados e instrução entre os dispositivos. É de três estados entre a memória e a CPU e unidirecional com a possibilidade de desconexão elétrica nos dispositivos E/S. Barramento de Endereços: conduz o endereço a ser selecionado na memória ou dispositivos E/S. É geralmente unidirecional entre a CPU (que define o endereço) e a memória e os dispositivos E/S. Barramento de Controle: transfere os sinais de controle que ativam ou desativam os dispositivos, que selecionam determinado modo de operação ou sincronizam os circuitos. Formam a Arquitetura de Barramentos 12
13 Componentes de um Computador (cont.) 13
14 Unidade Central de Processamento - CPU Intel 4004 Pentium II Slot 1 o processador ainda é o componente básico de qualquer computador 14
15 Unidade Central de Processamento - CPU (cont.) Conceitos básicos Instruções: comando que define integralmente uma operação a ser executada Programas: instruções ordenadas logicamente... Para que um programa possa ser executável ele precisa ser construído de uma série de instruções de máquina... O processador é o cérebro do computador Função: Executar os programas armazenados na memória principal, buscando cada uma das instruções do programa, examinando-as, e executando-as uma após a outra. 15
16 Unidade Central de Processamento - CPU (3) Gera sinais de controle para os demais componentes do computador, além de reconhecer e responder sinais externos (interrupções) A CPU é responsável pela supervisão e controle de todo o funcionamento da máquina e pela realização das operações lógicas e aritméticas sobre os dados Clock (ou Relógio) é a referência de tempo necessária a CPU. Circuito eletrônico oscilador que gera uma forma de onda quadrada, essencial para o seqüenciamento das operações eletrônicas realizadas pela CPU. Está relacionado com a freqüência (taxa) de operação do processador. 16
17 Unidade Central de Processamento - CPU (4) A UCP pode ser dividida em : Unidade de controle (UC) Unidade lógica e aritmética (ULA) Registradores 17
18 Unidade Central de Processamento - CPU (4) The data path of a typical Von Neumann machine
19 Unidade Central de Processamento - CPU (cont.) Unidade de Controle (UC) Função: dirigir e coordenar as atividade das demais unidades do sistema É a parte mais complexa da UCP (o centro nervoso) Controla todos os componentes e dispositivos de um computador, emitindo sinais elétricos (pulsos de controle) Sincronizados através do clock Responsável pela busca das instruções na memória principal, sua decodificação e execução. Controla a ação da ULA e a movimentação de dados entre a UCP e a memória Solicita a busca da instrução que será executada, armazena-a em um registrador Dispara ações necessárias para execução da instrução 19
20 Unidade Central de Processamento - CPU (cont.) Unidade de Controle (UC) (cont.) Contador de Instrução (Program Counter PC): Armazena o endereço da (aponta para a) próxima instrução a ser executada. Determina a seqüência (fluxo) de execução de um programa, endereçando instrução por instrução Registrador de Instruções (Instruction Register RI) Armazena (contém) a instrução que está sendo executada. 20
21 Unidade Central de Processamento - CPU (cont.) Unidade de Lógica e Aritmética (ULA) Possui os circuitos necessários para executar operações lógicas e aritméticas. Exemplos: Somas, subtrações, determinação de sinal, comparações algébricas de números, verificar se um número é maior ou menor que zero, etc... os operandos utilizados pela ULA são armazenados em registradores internos da UCP... o resultado das operações da ULA também é armazenado em um registrador Acumulador (ACC) 21
22 Unidade Central de Processamento - CPU (cont.) Instrução Comece a ler entradas a partir da unidade de fita 2 Se X é maior que Y, vá para o passo 46 do programa Multiplique A por B e armazene o resultado em C Local de execução Unidade de controle Unidade lógica e aritmética (instrução lógica) Unidade lógica e aritmética (instrução aritmética) 22
23 Unidade Central de Processamento - CPU (cont.) Conjunto (Banco) de Registradores Memória interna de pequena capacidade de armazenamento, mas de alta velocidade, usada para armazenar resultados temporários e certas informações de controle Local onde os dados ficam armazenados enquanto são processados ou enquanto sujeitos a operações lógicas. Formada por: Registradores de uso geral: acessíveis ao usuário no nível convencional de máquina Registradores de uso específico: acessíveis diretamente apenas pela UC durante a execução de um programa. O número de registradores e seus tamanhos variam entre arquiteturas de computadores 23
24 Unidade Central de Processamento - CPU (cont.) Conjunto (Banco) de Registradores (cont.) Contador de programa (PC) Aponta para as instruções a serem processadas Incrementado ao fim do processamento da instrução Registrador de instrução (RI) Armazena o código binário da instrução propriamente dita... modificado toda vez que uma nova instrução deve ser executada Registrador de endereço de memória (REM) Mantém o endereço da posição de memória usada como operando... modificado quando é necessário apontar para um operando em outra posição de memória 24
25 Unidade Central de Processamento - CPU (cont.) Instruções São comandos atômicos fornecidos ao computador para que ele execute uma tarefa específica (soma, teste, desvio, etc) Uma série dessas instruções constituem um programa. Cada computador (leia-se processador) tem um repertório particular de instruções, cuja rapidez de execução é um fator determinante na potência de computação (performance) da máquina Conforme proposto por Von Neumann, as instruções, tal qual os dados, devem residir na MP, e dispostas sequencialmente. A seqüência de execução pode ser alterada por Instruções de Desvio 25
26 Unidade Central de Processamento - CPU (cont.) Formato das Instruções Código da Instrução (OpCode) Operando - Op (Informação Complementar) OpCode: identifica a instrução a ser efetuada Op: identifica sobre o que (quem) a instrução manipulará Existem instruções de 1, 2 ou 3 operandos O tamanho do OpCode indica o número máximo de instruções da máquina. n bits => até 2 n instruções Ciclo de Instrução: conjunto de operações realizadas pelo computador para completar a execução de uma instrução 26
27 Unidade Central de Processamento - CPU (cont.) Palavras são as unidades de dados movidas entre a memória e os registradores. Instruções Registrador-Memória Permitem que o conteúdo de palavras de memória seja armazenado nos registradores (load) ou conteúdos de registradores armazenados na memória (store) Referências a uma palavra deve ser feita através de Endereços. Instruções Registrador-Registrador Típico: busca dois operandos em registradores coloca-os nas entradas da ULA realiza alguma operação sobre eles... e armazena o resultado em um dos registradores Determina um caminho de dados 27
28 Unidade Central de Processamento - CPU (cont.) Ciclo de Instrução Um programa em execução é uma série de instruções de máquina que estão armazenadas na memória principal e serão interpretadas e executadas pela UCP Conjunto de ações (operações) realizadas pelo computador (leia-se CPU) para completar a execução de uma instrução Diagrama do Ciclo de Instrução Ciclo de Busca (Fetch Cycle) e Ciclo de Execução (Execution Cycle). Execução Início Busca Decodificação Busca Operandos Execução da Instrução Fim Ciclo de instrução 28
29 Unidade Central de Processamento - CPU (cont.) Ciclo de Busca 1. A UC lê (busca) a instrução na memória e carrega (armazena) a instrução em RI para ser decodificada e executada. 2. Atualização do valor de PC (incremento), fazendo-o apontar para a instrução seguinte Ciclo de Execução 3. Determinação do tipo de instrução que está armazenada em RI (decodificação) 4. Determinação de onde (endereço) uma palavra de dado ESTÁ armazenada, caso necessário 5. Busca da palavra, se necessário, e armazenamento em um dos registradores do processador 6. Execução da instrução 7. Retorno ao passo 1 para iniciar a execução da instrução seguinte 29
30 Unidade Central de Processamento - CPU (cont.) Caminho de Dados Registradores ULA Controlado pela UC A velocidade do ciclo do caminho de dados (Ciclo de Instrução) determina, em última análise, a velocidade do processador. 30
31 Questão De acordo com o que foi discutido, na sua opinião, quais os fatores que afetam a velocidade de processamento de um computador? 31