Unidade Logica Aritimética ( ULA )
Uma Unidade Lógica Aritmética (ULA) pode ser encontrada em diversos processadores de dados. Esta é a parte do processador que realmente efetua cálculos aritméticos.
A ULA foi proposta pelo matemático John Von Neumann em 1946. Desde então o desenvolvimento destas tem sido de viável importância para o aceleramento do processamento de dados e a realização de cálculos matemáticos mais rapidamente. Hoje em dia uma unidade lógica aritmética pode realizar as seguintes operações:
- Operações aritméticas com inteiros
- Operações lógicas bit a bit And, Not, Or, XOR
- Operações de deslocamento de bits* (deslocamento, rotação por um número específico de bits para esquerda ou direita, com ou sem sinal).
- Operações de divisão e multiplicação.
*Deslocamentos podem ser interpretados como multiplicações ou divisões por 2.
Um símbolo esquemático típico para uma ULA, onde "A" e "B" são operandos, "R" é a saída, "F" é a entrada da unidade de controle e "D" é a saída de status
Registradores
- O processador contém elementos de memória de pequena capacidade mas de alta velocidade, usados para armazenar resultados temporários, chamados de registradores.
- O conjunto desses registradores é denominado banco de registradores.
- Esses registradores são referenciados explicitamente pelas instruções lógicas, aritméticas e de transferência de dados.
- Existe um registrador especial denominado contador de programa - PC, que contém o endereço da próxima instrução a ser executada.
- Outro registrador, chamado de registrador de instrução - IR, contém a instrução que está sendo executada.
Funcionamento da ULA
Design da ULA
- ULA de 2 bits, que faz AND, OR, XOR, e adição
- ULA de 4 bits
Entradas e saídas
As entradas para a ULA são os dados a serem operados (chamados operandos) e o código da unidade de controle indicando as operações para executar. As saídas são os resultados da computação.
Em muitos projetos a ULA também leva ou gera as