Microprogramação
A fronteira entre hardware e software não sempre é bem definida e muda constantemente. Máquinas mais antigas tinham as instruções aritméticas e booleanas diretamente implementadas em hardware. Máquinas mais modernas, muitas vezes, tem suas instruções do nível convencional realizadas passo a passo por um interpretador executando um microprograma. Exemplos de máquinas microprogramadas incluem as famílias Intel e Motorola. Uma classe de máquinas modernas, chamadas RISC, entretanto, não são microprogramadas e serão objeto de estudo mais adiante. Aqui vamos descrever o mecanismo de microprogramação.
O nível de microprogramação supõe a existência de um repertório primitivo de operações executadas diretamente por circuitos, que podem envolver registradores, barramentos, ALU, etc. Para a manipulação de tais componentes são usados sinais de controle, cada qual com a finalidade bem definida. Daremos a seguir alguns sinais de controle fundamentais, bem como alguns outros sinais importantes.
Microarquitetura
Em engenharia da computação, microarquitetura é a forma que um determinado conjunto de instruções (ISA) é implementado em um processador. Um determinado ISA pode ser implementado com diferentes microarquiteturas. As implementações podem variar devido a diferentes objetivos de um dado projeto ou a mudanças na tecnologia. Arquitetura de computadores é a combinação de microarquitetura e projeto do conjunto de instruções.
Arquitetura de computadores
A evolução da informática foi caracterizada pelo desenvolvimento de computadores com características as mais diversas, traduzidas pelos diferentes parâmetros, cada vez mais conhecidos da maioria de usuários de computador: a CPU adotada, a capacidade de memória, a capacidade do disco rígido, a existência de memória cache e outros menos conhecidos. A definição destes parâmetros e a forma como os diversos componentes de um computador são organizados, define aquilo que é conhecido por arquitetura de