Baixe o app para aproveitar ainda mais
Prévia do material em texto
Arquitetura e Organização de Computadores Unidade Central de Processamento heloar.alves@gmail.com Site: heloina.com.br 1 mailto:heloar.alves@gmail.com Arquitetura e Organização de Computadores A Unidade Central de Processamento (UCP) ou CPU (Central Processing Unit), também conhecida como processador, é responsável pelo processamento e execução de programas armazenados na memória principal, buscando suas instruções, examinando-as e, então, executando uma após a outra. CPU 2 Arquitetura e Organização de Computadores Segundo Monteiro (2010), um processador tem, por propósito, realizar operações com os dados (chamadas de processamento) normalmente numéricos. Para realizar essas operações, o processador necessita, em primeiro lugar, interpretar que tipo de operação é a que ele irá executar (pode ser a soma ou subtração de dois números). Para a realização da operação é necessário que os dados estejam armazenados no dispositivo que irá executar a operação. CPU 3 Arquitetura e Organização de Computadores A CPU (processador) realiza o processamento (executa a operação com os dados); e também controla todo o funcionamento do sistema (busca a descrição da operação a ser realizada – a instrução); interpreta que tipo de operação deverá ser realizado; localiza e busca os dados que serão processados e executa a operação. CPU 4 Arquitetura e Organização de Computadores A função da CPU consiste então, em: a) Buscar uma instrução na memória (operação de leitura), uma de cada vez (cujo endereço deve estar armazenado no registrador existente na CPU e específico para esse fim); b) Interpretar que operação a instrução está explicitando (pode ser uma soma de dois números, uma multiplicação, uma operação de entrada ou saída de dados, ou ainda uma operação de movimentação de um dado de uma célula para outra); c) Buscar os dados onde estiverem armazenados, para trazê-los até a CPU; d) Executar efetivamente a operação com o(s) dado(s), guardar o resultado (se houver algum) no local definido na instrução; e, finalmente, e) Reiniciar o processo buscando uma nova instrução. CPU 5 Arquitetura e Organização de Computadores CPU Fluxo resumido de um ciclo de instrução 6 Arquitetura e Organização de Computadores As atividades realizadas pela CPU podem ser divididas em duas categorias funcionais: Função processamento; e Função controle CPU: Funções 7 Arquitetura e Organização de Computadores CPU: Funções Esquema simplificado de uma CPU 8 Arquitetura e Organização de Computadores Os componentes do processador são interligados por meio de um barramento, que consiste em um conjunto de fios paralelos que permitem a transmissão de dados, endereços e sinais de controle entre a UCP, memória e dispositivos de entrada e saída. Existem barramentos externos ao processador, cuja função é conectá-lo à memória e aos dispositivos de entrada/saída, além dos barramentos internos à UCP. CPU: Funções 9 Arquitetura e Organização de Computadores Função Processamento: O processamento de dados é a ação de manipular um ou mais valores (dados) em certa sequência de ações, de modo a produzir um resultado útil. Algumas tarefas de processamento: • Operações aritméticas (somar, subtrair, multiplicar, dividir); • Operações lógicas (and, or , xor, etc.); • Movimentação de dados (memória-CPU, CPU-memória, registrador- registrador, etc.); • desvios (alterações de sequencia de execução de instruções); • Operações de entrada ou saída; CPU: Funções 10 Arquitetura e Organização de Computadores Função Processamento: Dispositivos da função processamento: • Unidade Lógica e Aritmética (ULA); • Registradores; CPU: Funções 11 Arquitetura e Organização de Computadores Unidade lógica e aritmética (ULA): Qualquer ULA é um aglomerado de circuitos lógicos e componentes eletrônicos simples que, integrados, realizam as operações aritméticas e lógicas. A ULA pode ser uma parte pequena da pastilha do processador, usada em pequenos sistemas, ou pode compreender um considerável conjunto de componentes lógicos de alta velocidade, sendo que os processadores mais modernos utilizam em sua arquitetura mais de uma ULA, para tornar a execução das instruções mais rápida. CPU: Função Processamento 12 Arquitetura e Organização de Computadores CPU: Função Processamento Esquema da CPU: componentes de processamento 13 Arquitetura e Organização de Computadores Unidade lógica e aritmética (ULA): A função efetiva deste dispositivo é a execução das instruções dos programas que se encontram armazenadas na memória. Ao chegarem à UCP, essas instruções são interpretadas e traduzidas em operações matemáticas a serem executadas pela ULA. CPU: Função Processamento 14 Arquitetura e Organização de Computadores Unidade lógica e aritmética (ULA): A ULA é o dispositivo da CPU que executa realmente as operações matemáticas com os dados. Tais operações podem ser: Tais operações podem utilizar dois valores (operações aritméticas, operações lógicas), por isso a ULA possui duas entradas (ver diagrama funcional da CPU) ou apenas um valor (como, por exemplo, a operação de complemento). • Ambas as entradas se conectam à saída (resultado da operação efetuada) pelo barramento interno de dados. CPU: Função Processamento • Soma • Subtração • Multiplicação • Divisão • Operação lógica AND • Operação lógica XOR • Deslocamento à direita • Incremento • Operação lógica OR • Deslocamento à esquerda • Decremento 15 Arquitetura e Organização de Computadores Unidade lógica e aritmética (ULA): CPU: Função Processamento Exemplo de utilização de mais de uma ULA • Os processadores Pentium possuem três ULAs, duas delas para processamento de números inteiros e a terceira FPU – Floating Point Unit para processar números fracionários. • Atualmente, mais ULA são inseridas nos processadores, com o consequente aumento de rendimento nas operações matemáticas. 16 Arquitetura e Organização de Computadores Registradores: Para que um dado possa ser transferido para a ULA, é necessário que ele permaneça, mesmo que por um breve instante, armazenado em um registrador (a memória específica da CPU). O resultado de uma operação aritmética ou lógica realizada na ULA deve ser armazenado temporariamente, de modo que possa ser reutilizado mais adiante (por outra instrução) ou apenas para ser, em seguida, transferido para a memória. CPU: Função Processamento 17 Arquitetura e Organização de Computadores Registradores: São elementos de armazenamento temporário, localizados na CPU, os quais são extremamente rápidos por causa da sua tecnologia de fabricação. Assim, as CPUs são fabricadas com certa quantidade de registradores destinados ao armazenamento de dados que estão sendo utilizados durante o processamento e, portanto, servem de memória auxiliar básica da ULA. A quantidade e o emprego dos registradores variam bastante de modelo para modelo de processador. Devido à sua tecnologia de construção e por estarem localizados no interior da UCP, são muito caros e, por isso, disponíveis em quantidade limitada. CPU: Função Processamento 18 Arquitetura e Organização de Computadores Registradores: CPU: Função Processamento Diagrama simplificado da CPU Intel 8085 19 Arquitetura e Organização de Computadores Registradores: CPU: Função Processamento Diagrama simplificado da CPU Intel 8086 20 Arquitetura e Organização de Computadores Registradores: CPU: Função Processamento Diagrama simplificado da CPU Intel 8086 21 Arquitetura e Organização de Computadores Trabalho de Pesquisa (1,0 ponto extra) Projeto de UCP – ULA e registradores Pesquise na internet sobre o número de ULAs utilizadas nos processadores atuais, bem como a função de cada ULA. CPU: Função Processamento Diagrama simplificado da CPU Intel 8086 22 Arquitetura e Organização de Computadores Registradores: Os sistemas mais antigos possuíam um registradorespecial chamado acumulador ou ACC (de accumulator), o qual, além de armazenar dados, servia de elemento de ligação entre a ULA e os demais dispositivos da UCP (MONTEIRO, 2007). Nos computadores mais simples é encontrado apenas um acumulador. Em arquiteturas mais complexas, vários registradores podem desempenhar as funções de um acumulador, além de haver diversos registradores de dados de uso geral. CPU: Função Processamento 23 Arquitetura e Organização de Computadores Registradores Tamanho da palavra: • O tamanho da palavra, a qual está vinculada ao projeto de fabricação da CPU, correspondendo ao tamanho dos elementos ligados à área de processamento, a ULA e os registradores de dados. • A capacidade de processamento de uma CPU, ou seja, sua velocidade, é bastante influenciada pelo tamanho da palavra. • Atualmente há computadores referenciados como tendo uma arquitetura de 32 bits ou uma arquitetura de 64 bits, o que corresponde ao tamanho de sua palavra. CPU: Função Processamento 24 Arquitetura e Organização de Computadores Registradores Especiais de estado: Além dos registradores para armazenamento de dados e de endereços, a área de processamento utiliza outro tipo de registradores que auxiliam e completam a realização das operações matemáticas pela ULA, indicando o estado de vários elementos referentes à operação em si. Os principais bits de estado são: • Sinal – contém o sinal resultante da última operação aritmética realizada pelo processador. • Overflow – quando setado (=1) indica que a última operação aritmética realizada resultou em estouro do valor, um erro. • Zero – quando setado (=1) indica que a última operação aritmética realizada resultou no valor zero. • Vai 1 (carry) – indica que ocorreu “vai 1” para o bit mais à esquerda na última operação de soma realizada. Pode indicar, também, overflow em operações com números sem sinal. CPU: Função Processamento 25 Arquitetura e Organização de Computadores A área de controle da CPU é responsável pela realização das seguintes atividades: a) busca da instrução que será executada, armazenando-a em um registrador da UCP; b) interpretação das instruções a fim de saber quais operações deverão ser executadas pela ULA (ex.: soma, subtração, comparação) e como realizá-las; c) geração de sinais de controle apropriados para a ativação das atividades necessárias à execução propriamente dita da instrução identificada. Esses sinais de controle são enviados aos diversos componentes do sistema, sejam eles internos à UCP (ex.: a ULA) ou externos (ex.: memória e dispositivos de entrada e saída). CPU: Função Controle 26 Arquitetura e Organização de Computadores A área de controle da CPU é composta pelos seguintes elementos: Registrador de endereço de memória (REM) Registrador de dados de memória (RDM) Contador de instruções (CI) ou PC – program conter Registrador de instruções (RI) ou IR – instruction register Decodificador de Instruções Unidade de controle(UC) Clock (relógio). CPU: Função Controle 27 Arquitetura e Organização de Computadores CPU: Função Controle Esquema da CPU: componentes de controle 28 Arquitetura e Organização de Computadores Dispositivos da área de controle da CPU: Unidade de controle (UC) • É o dispositivo mais complexo da CPU; • Têm como função controlar a execução das instruções e os demais componentes da CPU; • Dispositivo que possui a lógica necessária para realizar a movimentação de dados e de instruções da/para a CPU, através de sinais de controle que emite em instantes de tempo programados. • A UC se conecta a todos os principais elementos do processador e ao barramento de controle; CPU: Função Controle 29 Arquitetura e Organização de Computadores CPU: Função Controle Diagrama em bloco simplificado da função controle 30 Arquitetura e Organização de Computadores Dispositivos da área de controle da CPU: Unidade de controle (UC) • Os sinais de controle, emitidos pela UC, ocorrem em vários instantes durante o período de realização de um ciclo de instrução e, de modo geral, todos possuem uma duração fixa e igual, originada em um gerador de sinais denominado relógio (clock); • Os microeventos ou microoperações comandadas pelo funcionamento da UC podem ser iniciados segundo um de dois princípios de arquitetura: – Por microprogramação; ou – Por programação prévia diretamente no hardware. CPU: Função Controle 31 Arquitetura e Organização de Computadores Dispositivos da área de controle da CPU: Unidade de controle (UC) • Microoperações: – O início de um ciclo de instruções consiste em buscar (fetch) a referida instrução e trazer uma cópia sua da MP para o processador (para o registrador de instrução). – Para efetivar esta ação são realizadas algumas ações menores que, em conjunto, constituem a desejada transferência (constituem os passos de um ciclo de leitura). » Tais operações menores denominam-se microoperações, por se constiuirem na menor parte individualmente executável pelo processador. CPU: Função Controle 32 Arquitetura e Organização de Computadores Dispositivos da área de controle da CPU: Unidade de controle (UC) • Microoperações 𝒕𝟎: REM (CI) 𝒕𝟏: CI CI + N RDM M(op.) 𝒕𝟐: RI RDM Sendo 𝑡0, 𝑡1 e 𝑡2 - pulsos de relógio emitidos em instantes sequenciais crescentes REM – registrador de endereços de memória RDM – registrador de dados de memória CI – contador de instruções M(op.) – conteúdo de célula(s) de endereços igual a op. CPU: Função Controle Sequencia de microoperações realizadas em um ciclo de busca (fetch) 33 Arquitetura e Organização de Computadores Dispositivos da área de controle da CPU: Registrador de dados de memória (RDM) • O RDM, também chamado de MBR (Memory Buffer Register), é um registrador que armazena temporariamente dados (conteúdo de uma ou mais células) que estão sendo transferidos da memória principal para a UCP (em uma operação de leitura) ou da UCP para a memória principal (em uma operação de escrita). • Em seguida, o referido dado é reencaminhado para outro elemento da UCP para processamento ou para uma célula da memória principal, se for um resultado de um processamento. • A quantidade de bits que pode ser armazenada no RDM é a mesma quantidade suportada pelo barramento de dados. CPU: Função Controle 34 Arquitetura e Organização de Computadores Dispositivos da área de controle da CPU: Registrador de endereços de memória (REM) • O REM, também chamado de MAR (Memory Address Register), é um registrador que armazena temporariamente o endereço de acesso a uma posição de memória, necessário ao se iniciar uma operação de leitura ou de escrita. • Em seguida, o referido endereço é encaminhado à controladora da memória, principal identificação e localização da célula desejada. Permite armazenar a mesma quantidade de bits do barramento de endereço. CPU: Função Controle 35 Arquitetura e Organização de Computadores Dispositivos da área de controle da CPU: Contador de instruções (CI) - Program Counter (PC) • É o registrador cuja função específica é armazenar o endereço da próxima instrução a ser executada pelo processador. • De acordo com Monteiro (2007), tão logo a instrução que vai ser executada seja buscada da memória principal para a CPU (início do ciclo de instrução), o sistema automaticamente efetiva a modificação do conteúdo do CI de modo que ele passe a armazenar o endereço da próxima instrução na sequência. • Assim, o CI é um registrador crucial para o processo de controle e de sequenciamento da execução dos programas. CPU: Função Controle 36 Arquitetura e Organização de Computadores Dispositivos da área de controle da CPU: Registrador de instruções (RI) – Instruction Register (IR) • Tem a função de armazenar a instrução a ser executada pela UCP. • Ao se iniciar um ciclo de instrução (MONTEIRO, 2007), a UC emite sinais decontrole em sequência no tempo, de modo que se processe a realização de um ciclo de leitura para buscar a instrução na memória. • Ao final do ciclo de leitura a instrução desejada será armazenada no RI, via barramento de dados e RDM. • O RI é ligado diretamente ao decodificador de instruções, o qual irá interpretar a instrução e avisar à Unidade de Controle (UC). CPU: Função Controle 37 Arquitetura e Organização de Computadores Dispositivos da área de controle da CPU: Decodificador de instruções • Cada instrução é uma ordem para que a UCP realize uma determinada operação. • Como são muitas instruções, é necessário que cada uma possua uma identificação própria e única, e é função do decodificador de instrução identificar que operação será realizada, correlacionada à instrução cujo código de operação foi decodificado. • Assim, o RI irá passar ao decodificador uma sequência de bits representando uma instrução a ser executada. CPU: Função Controle 38 Arquitetura e Organização de Computadores Dispositivos da área de controle da CPU: Decodificador de instruções • O decodificador recebe em sua entrada um conjunto de bits previamente escolhido e específico para identificar uma instrução de máquina (cada instrução tem um valor próprio, denominado código de operação); • Um decodificador possui 2𝑁 saídas, sendo N a quantidade de algarismos binários do valor de entrada; • A Figura seguinte mostra um diagrama em blocos do processo de decodificação na UCP, no qual o RI passa um código de instrução ao decodificador de tamanho de 4 bits, que é decodificado (interpretado) e encaminhado à UC para que ela emita os sinais de controle para os demais elementos da UCP. CPU: Função Controle 39 Arquitetura e Organização de Computadores Dispositivos da área de controle da CPU: Decodificador de instruções • Exemplo: Decodificador com 4 entradas e 16 saídas CPU: Função Controle 40 Arquitetura e Organização de Computadores Dispositivos da área de controle da CPU: Decodificador de instruções CPU: Função Controle Linhas de Saída 41 Arquitetura e Organização de Computadores Dispositivos da área de controle da CPU: Relógio (clock) • É o dispositivo gerador de pulsos, cuja duração é chamada de ciclo, e a quantidade de vezes que esse pulso básico se repete em um segundo define a unidade de medida do relógio, denominada frequência, a qual também é usada para definir a velocidade na CPU. • A cada pulso é realizada uma operação elementar, durante o ciclo de uma instrução (ex.: busca de dados, envio da instrução para o RI, sinal de controle). CPU: Função Controle 42 Arquitetura e Organização de Computadores Dispositivos da área de controle da CPU: Relógio (clock) • Um ciclo de relógio ou de máquina (machine cycle) é o intervalo de tempo entre o início de um pulso e o início do seguinte. – Este ciclo está relacionado à realização de uma operação elementar, durante o ciclo de uma instrução. » Esta operação elementar não se realiza em um só passo, por isso o ciclo de máquina costuma ser dividido em ciclos menores (subciclos), defasados no tempo, de modo que cada um aciona um passo diferente da operação elementar. • Esses diferentes passos de uma operação elementar são as microoperações. CPU: Função Controle 43 Arquitetura e Organização de Computadores Dispositivos da área de controle da CPU: Relógio (clock) • Exemplo: Microoperações realizadas para completar a busca de uma instrução da MP para o Registrador de Instrução, RI, na CPU. Cada microoperação é realizada em um instante de tempo 𝑇𝑛 , conforme se observa na figura. Esses instantes de tempo são originados no relógio. CPU: Função Controle 44 Arquitetura e Organização de Computadores Dispositivos da área de controle da CPU: Relógio (clock) • Exemplo: Ciclo básico e os cinco subciclos gerados CPU: Função Controle Diagrama em bloco do conjunto de tempo da área de controle 45 Arquitetura e Organização de Computadores Dispositivos da área de controle da CPU: Relógio (clock) • Exemplo: Ciclo básico e os cinco subciclos gerados CPU: Função Controle Diagrama de tempo do ciclo do processador (t0) e seus 5 subciclos 46 Arquitetura e Organização de Computadores Dispositivos da área de controle da CPU: Relógio (clock) • A unidade de medida utilizada para a frequência do relógio da CPU é o hertz (Hz), que significa um ciclo por segundo. • Como os computadores atuais apresentam frequências bastante elevadas, utiliza-se a medida de milhões de ciclos por segundo (mega-hertz – MHz) ou bilhões de ciclos por segundo (giga-hertz – GHz). CPU: Função Controle 47 Arquitetura e Organização de Computadores Vimos que a UCP é responsável pela execução de instruções e dados de programas, os quais que se encontram armazenados na memória. Uma instrução é uma ordem para que a UCP realize determinada operação (ex.: somar, subtrair, mover um dado de um local para outro, transferir um dado para um dispositivo de saída). Instruções de máquina 48 Arquitetura e Organização de Computadores Segundo Monteiro (2007), uma máquina pode executar tarefas complicadas e sucessivas se for “instruída” sobre o que fazer e em que sequência isso deve ser feito. Os seres humanos, ao receberem uma instrução (ex.: “trazer a pasta da funcionária Ana”), precisariam realizar uma série de ações intermediárias, até que a tarefa seja realizada por completo. Então, considerando esse exemplo, seria necessário: localizar o arquivo em que as pastas de todos os funcionários estão arquivadas; localizar a pasta da funcionária Ana, trazê-la a quem solicitou. Instruções de máquina 49 Arquitetura e Organização de Computadores Da mesma forma, para a máquina (computador) é necessário que cada instrução seja detalhada em pequenas etapas. Isso ocorre porque os computadores são projetados para entender e executar pequenas operações, ou seja, as operações mais básicas (ex.: soma, subtração). Essas pequenas etapas de uma instrução dependem do conjunto de instruções do computador. Assim, uma instrução de máquina pode ser definida pela formalização de uma operação básica que o hardware é capaz de realizar diretamente (MONTEIRO, 2007). Ou seja, consiste em transformar instruções mais complexas em uma sequência de instruções básicas e compreensíveis pelo processador. Instruções de máquina 50 Arquitetura e Organização de Computadores Exemplo: Considere um processador com uma ULA capaz de executar a soma ou a multiplicação de dois números (operações básicas), mas não as duas coisas ao mesmo tempo. Agora imaginem que esse processador precisa executar: X = A + B*C de uma só vez. Isso irá gerar a necessidade de transformar essa instrução, considerada complexa para esse processador, em uma sequência de instruções mais básicas, da seguinte forma: • Executar primeiro: T = B*C (sendo que T é um registrador ou memória temporária) • Em seguida realizar a operação: X = A + T Instruções de máquina 51 Arquitetura e Organização de Computadores O projeto de um processador é centrado no conjunto de instruções de máquina que se deseja que ele execute, ou seja, do conjunto de operações primitivas que ele poderá executar. Quanto menor e mais simples for o conjunto de instruções, mais rápido é o ciclo de tempo do processador (MONTEIRO, 2007). Um processador precisa dispor de instruções para: movimentação de dados; aritméticas; lógicas; edição; deslocamento; manipulação de registros de índice; desvio; modificação de memória; formais de ligação à sub-rotina; manipulação de pilha; entrada e saída e de controle. Instruções de máquina 52 Arquitetura e Organização de Computadores Atualmente, há duas tecnologias de projeto de processadores empregadas pelos fabricantes de computadores (MONTEIRO, 2007): Sistemas com conjunto de instruções complexo (Complex Instruction Set Computers – CISC), e Sistemas com conjunto de instruções reduzido (Reduced Instruction SetComputers – RISC). Ambas as tecnologias serão abordadas na próxima unidade Instruções de máquina 53 Arquitetura e Organização de Computadores Formato das instruções: De acordo com Monteiro (2007), uma instrução é formada basicamente por dois campos: a) Código de operação (Opcode) b) Operando Instruções de máquina 54 Arquitetura e Organização de Computadores Formato das instruções: a) Código de operação (Opcode): um subgrupo de bits que identifica a operação a ser realizada pelo processador. • É o campo da instrução cujo valor binário identifica a operação a ser realizada, conforme exemplo da Figura abaixo. • Esse valor é a entrada no Decodificador de Instruções na Unidade de Controle. • Cada instrução deverá ter um código único que a identifique. Instruções de máquina 55 Arquitetura e Organização de Computadores Formato das instruções: b) Operando:um subgrupo de bits que identifica o endereço de memória onde está contido o dado que será manipulado, ou pode conter o endereço onde o resultado da operação será armazenado. Instruções de máquina 56 Arquitetura e Organização de Computadores Ciclo de instrução: A partir da proposta da arquitetura de Von Neumann, da qual os conceitos básicos ainda são válidos, propunha-se que as instruções fossem executadas sequencialmente (a não ser pela ocorrência de um desvio), uma a uma. O contador de instruções indica a sequência de execução, isto é, o CI controla o fluxo de execução das instruções. Instruções de máquina 57 Arquitetura e Organização de Computadores Ciclo de instrução: Instruções de máquina 58 Arquitetura e Organização de Computadores Ciclo de instrução Fase 1: • A UCP busca o código de operação (Opcode) na memória principal, o qual está localizado no endereço contido no CI (endereço da próxima instrução a ser executada) e armazena- o no Registrador de Instrução (RI):RI ← (CI) Instruções de máquina 59 Arquitetura e Organização de Computadores Ciclo de instrução Fase 1: • Micro-operações da fase 1: a) a UC lê o conteúdo do CI (endereço da próxima instrução) e coloca o endereço no REM; b) a UC envia um sinal – via barramento de controle – à controladora da memória principal para que realize uma operação de leitura; c) a memória principal lê o endereço que está no REM – via barramento de endereço – e busca o conteúdo da célula referenciada; d) a memória principal coloca no RDM – via barramento de dados – o conteúdo da célula; e) a controladora da memória principal envia à UC – via barramento de controle – o sinal de leitura concluída; f) a UC transfere o código de operação (conteúdo que está no RDM) ao RI. Instruções de máquina 60 Arquitetura e Organização de Computadores Ciclo de instrução Fase 2: O Decodificador de Instrução decodifica (interpreta) o Código de Operação (Opcode) contido no RI. • Micro-operações da fase 2: a) o RI envia para o decodificador de instrução os bits correspondentes ao Opcode; a) o Decodificador de Instruções determina quantas células a instrução ocupa e identifica a operação a ser realizada; a) a UC envia um sinal de controle à ULA informando a operação a ser realizada e incrementa o CI para apontar para a próxima instrução: CI → (CI+N), onde, N = nº de células que a próxima instrução ocupa. Instruções de máquina 61 Arquitetura e Organização de Computadores Ciclo de instrução Fase 3: A UC busca (se houver) o(s) dado(s) (Operandos): RI ← (Op) Micro-operações da fase 3: a) a UC envia um sinal – via barramento de controle – à controladora da memória principal para que realize uma operação de leitura; b) a memória principal lê o endereço que está no REM – via barramento de endereços – e busca o conteúdo da célula referenciada; c) a memória coloca no RDM – via barramento de dados – o conteúdo da célula lida; d) a memória principal envia à UC – via barramento de controle – um sinal de leitura concluída; e) a UC transfere o operando (conteúdo do RDM) ao RI (se for um código de operação) ou a um dos registradores internos da UCP (se for um dado). Obs.: Esta fase se repete até que sejam trazidos para dentro da UCP todos os operandos necessários à execução da instrução. Instruções de máquina 62 Arquitetura e Organização de Computadores Ciclo de instrução Fase 4: A UC comanda a execução da instrução (a operação é executada sobre o(s) dado(s)); Micro-operações da fase 4: a) a ULA executa a instrução sobre os dados disponíveis nos registradores; b) ao concluir a operação, a ULA envia um sinal para a UC informando que a execução terminou; c) a UC identifica o endereço de memória para onde deve ser enviado o resultado da operação e o armazena no REM; d) a UC autoriza o envio do resultado da operação para o RDM; e) a UC autoriza a controladora de memória a realizar uma operação de leitura no REM para obter o endereço de memória onde deverá ser escrito o resultado e uma leitura no RDM para obter o resultado a ser escrito na memória. Instruções de máquina 63 Arquitetura e Organização de Computadores Ciclo de instrução Fase 5: Se o programa tiver terminado, pára; senão, volta à Fase 1. Instruções de máquina 64
Compartilhar