Arquitetura de Computadores: CPU, Ciclo de Instrução e Memória
Classificado em Computação
Escrito em em português com um tamanho de 5,83 KB
Caminho Crítico
É o percurso que vai levar mais tempo para ser executado.
Relacionamento (Clock e Caminho Crítico)
O tempo de execução do clock não pode ser menor que o caminho crítico. Se o clock for menor, pode ocorrer falha na operação, e algumas instruções, como OR
, ADD
, SUBTRACT
e AND
, não serão executadas.
Modelo de Von Neumann
O refinamento do modelo de Von Neumann, o modelo de barramento de sistema, possui uma CPU (ALU e controle), memória e uma unidade de entrada/saída (I/O).
Componentes Principais do Modelo de Von Neumann
O modelo de Von Neumann possui cinco componentes principais:
- Unidade de entrada;
- Unidade de saída;
- Unidade Lógica Aritmética (ULA);
- Unidade de memória;
- Unidade de controle.
Ciclo BDE (Busca, Decodificação e Execução)
Toda Unidade Central de Processamento (UCP ou CPU) faz sempre a mesma coisa desde que é energizada até ser desligada: ela fica sempre buscando a próxima instrução a ser executada. Caso exista alguma “na vez”, esta é decodificada, seja pelo microprograma (no caso dos computadores CISC - Conjunto Completo de Instruções) ou pelos circuitos especializados (no caso do RISC - Conjunto Reduzido de Instruções).
Componentes dos Processadores
Os microprocessadores atuais são compostos por:
- ULA – Unidade Lógico-Aritmética;
- UC – Unidade de Controle;
- MAR – Registrador de Endereço de Memória;
- MBR – Registrador de Bloco de Memória;
- PC – Contador de Programas;
- Registradores de Uso Geral;
- E outros componentes.
Função da Unidade de Controle (UC)
Cada operação possui um código identificador único. Para cada código interpretado, uma sequência de micro-operações é realizada. O sinal de clock dá o ritmo da execução das micro-operações. Dados e instruções são copiados para dentro da UCP, nos registradores. A Unidade de Controle faz o gerenciamento de todas essas operações.
Ciclo de Instrução
O ciclo de instrução (também chamado de ciclo de busca e execução ou ciclo busca-execução) é o período de tempo no qual um computador lê e processa uma instrução em linguagem de máquina da sua memória, ou a sequência de ações que a UCP realiza para executar cada instrução em código de máquina num programa.
Função do Microprograma
A função principal desse microprograma é verificar cada dígito que identifica a instrução e “descobrir” de qual instrução se trata para fazer a devida busca de operandos, se for o caso.
Tipos de Operações Envolvidas nas Instruções
As instruções podem envolver operações diversas do computador, tais como:
- Aritmética;
- Controle (laços, desvios condicionais, e outros);
- Entradas e saídas (de e para periféricos);
- Operações envolvendo a memória;
- Outras.
Interrupção
Uma interrupção é um sinal de um dispositivo que tipicamente resulta em uma troca de contexto. Isto é, o processador para de fazer o que está fazendo para atender o dispositivo que pediu a interrupção. Ao ser interrompida, a UCP precisa salvar todo o seu conteúdo em alguma área de memória para atender ao periférico. Após realizar o atendimento, a UCP retoma os valores armazenados e continua o processamento normalmente.
Regime de Clock (Temporização)
Iremos supor que:
- Cada registrador possui um sinal de carga particular que é ativado com lógica direta.
- Os registradores são “disparados” pela borda ascendente do relógio (clock).
- No desenho ao lado, quando CK=?, se cargaR1=1, então R1 <- entrada.
O atraso crítico do bloco combinacional deve ser menor que o período do relógio.
Bloco Operativo Monociclo
- Qualquer instrução é executada em um único ciclo de relógio.
- O período do relógio será longo o suficiente para acomodar qualquer instrução.
- Na verdade, o período do relógio será função da instrução mais demorada.
Elementos Necessários para a Busca da Instrução
- A memória onde estão armazenadas as instruções;
- O contador de programa (PC) para armazenar o endereço da instrução;
- Um somador para calcular o endereço da próxima instrução.
Elementos Necessários para a Execução de Instruções Tipo R
- Um banco de registradores para armazenar os operandos e o resultado das operações;
- Uma Unidade Lógica/Aritmética (ULA) que será utilizada para realizar as operações.
Elementos Necessários para Executar lw
e sw
- Uma memória de dados;
- Um módulo de extensão de sinal;
- Um banco de registradores (já mostrado);
- Uma ULA (já mostrada).
Combinando Elementos para Escrita na Memória (sw
)
- O endereço de escrita é obtido pela soma de um registrador de base (registrador 1) com um deslocamento de 16 bits estendido para 32 bits.
- O registrador 2 é escrito na memória.
Combinando Elementos para Leitura da Memória (lw
)
- O processo de leitura é semelhante ao de escrita.
- A diferença básica é a existência de um caminho para escrever o valor lido no banco de registradores.