2 – Elementos Básicos de um Microcomputador
É muito importante entender a diferença entre um microprocessador (µP) e um microcomputador (µC). Um microcomputador é constituído de diversos elementos, o mais importante dos quais é o microprocessador. O µP é um chip VLSI (Very Large Scale Integation), que contém todos os circuitos das unidades de controle e aritmético-lógica – em outras palavras, o microprocessador é a própria unidade central de processamento. A figura 2 mostra os elementos básicos de um microcomputador.
Na unidade de memória, aparecem tanto as RAM´s quanto as ROM´s. A seção das RAM´s é constituída por um ou mais chips VLSI, combinados de maneira a fornecer a capacidade de memória projetada para o sistema. Vale observar que, as RAM´s são necessárias, pois as informações armazenadas nessa seção de memória serão alteradas várias vezes no decorrer da operação do sistema. As RAM´s também são usadas para os armazenamentos intermediários e finais dos resultados das operações realizadas pela ULA no decorrer da execução do programa.
A seção das ROM´s é constituída por um ou mais chips VLSI para o armazenamento de informações que não podem ser alteradas no decorrer do processamento. Por exemplo, lá devem estar informações que farão com que o µC monitore continuamente o teclado do sistema, ou pode estar armazenada a tabela de códigos ASCII (American Standard Code International Interchange), necessários à transferência de informações para terminais de vídeo ou impressoras.
Figura 2 – Elementos básicos de um µC |
As seções de entrada e saída contém os circuitos de interface necessários à garantia da comunicação entre os dispositivos de ENTRADA e SAÍDA e as demais unidades do computador. Em alguns casos, tais circuitos são chips produzidos pelo próprio fabricante do microprocessador para servirem de interface entre o microprocessador e uma grande variedade de outros dispositivos. Em outros casos, os circuitos de interface podem ser tão simples quanto um registrador.
| ||||
O µP contém todos os circuitos lógicos necessários à realização destas funções. Tal lógica não está disponível externamente, por estar encerrada em um chip. Apesar disso, podemos controlar o que ocorre dentro do µP através dos programas colocados na memória para que o µP os execute. Nesse sentido, o µP é bastante versátil – quando queremos mudar sua forma operação, trocamos simplesmente os programas armazenados em suas memórias RAM (software) e ROM (firmware) ao invés de alterar seus circuitos eletrônicos (hardware).
A lógica interna do microprocessador é extremamente complexa, estando distribuída por três unidades básicas: a unidade de controle e temporização, a unidade de armazenamento interno e a ULA (figura 3).
Vale observar que, além das funções específicas de cada uma destas unidades, a interação entre elas é um ponto muito importante no estudo do microprocessador.
A função primordial da unidade de controle e temporização é buscar as instruções na memória e codificar (interpretar) seus códigos de operação, gerando os sinais de controle e temporização necessários para que as demais unidades do µP possam, efetivamente executar tais instruções. Essa unidade também gera sinais de controle e temporização para os dispositivos externos ao microprocessador: memórias do tipo RAM/ROM e dispositivos de ENTRADA/SAÍDA.
A unidade de armazenamento interno contém diversos registradores utilizados durante a execução de uma instrução pelo microprocessador. O mais importante é o contador de programa- PC (Program Counter), responsável pelo armazenamento do endereço da próxima instrução a ser executada pelo microprocessador. Além do PC existem diversos outros registradores que realizam várias funções: armazenamento de código de operação de instruções que estiverem sendo decodificadas, armazenamento de dados que estão sendo operados pela ULA, armazenamento de endereços e dados a serem buscados na memória, e muitos outros registradores de propósito geral, cuja utilização é controlada pelas instruções do programa em execução.
Os registradores da unidade de armazenamento são divididos em registradores de propósito geral, cujo uso é definido pelas instruções em execução, e registradores de propósito específicos, de uso exclusivo do processador, no processo de execução das instruções de um programa. Além do PC, existem diversos outros registradores de propósito específico, como registrador de instruções - IR (Instruction Register), que armazena o código da operação da instrução que está sendo executada, o registrador de endereço de memória - MAR (Memory Address Register), que armazena o endereço da informação a ser lida ou escrita na memória, e o registrador de dados de memória - MBR (Memory Buffer Register), que armazena a informação a ser lida ou escrita na memória.
A ULA realiza uma gama variada de operações aritméticas-lógicas sobre dados. Tais operações sempre incluem a adição, subtração, as operações lógicas como o AND, OR, EX-OR, operações de deslocamento, além de operações de incremento e decremento. Os microprocessadores mais avançados têm uma ULA que pode fazer multiplicação e divisão. Durante a operação do microprocessador, as operações executadas pela ULA estão sob controle da unidade de controle e temporização, a qual naturalmente faz o que manda o código de operação da instrução que foi lida da memória para ser executada.
Na figura 4, demonstra-se a seqüência da execução de uma instrução de um programa, o qual consiste, em um conjunto de instruções armazenadas na memória. Figura 4 – Ciclo de Instrução
|
|
A CPU executa o trabalho em uma seqüência denominada por CICLO DE INSTRUÇÃO que é subdividido em CICLO DE BUSCA E CICLO DE EXECUÇÃO até o final do CICLO DE INSTRUÇÃO. Em geral, as instruções se encaixam nas seguintes categorias: |