next up previous
Next: ``Sequenciamento das microinstruções'' Up: Microprogramação Previous: ``Timing'' da microinstrução em

Os 4 subciclos para uma microinstrução

Figure: Os quatro ciclos da micro-arquitetura
\begin{figure}
\vspace{8in}
\end{figure}

Um bloco importante no diagrama é a memória de controle ou ``control store'', uma memória rápida para armazenar microinstruções. No exemplo, temos um ``control store'' de capacidade para 256 instruções ou 256 x 32 = 8192 bits. Como outras memórias, o ``control store'' também precisa de seu $MAR$ e $MBR$ correspondentes, no caso denominados MPC (micro program counter) e MIR (micro instruction register), respectivamente. O ``control store'' continuamente tenta copiar a microinstrução endereçada por MPC no MIR. O MIR, entretanto, só recebe uma nova microinstrução no subciclo 1, como indicado pelas linhas tracejadas entrando no MIR. Nos outros 3 subciclos, o MIR não é afetado, não importando o valor de MPC.

No subciclo 2, o MIR está estável e os vários campos da microinstrução começam a controlar o ``data path''. Em particular, os campos $A$ e $B$ (de 4 bits cada) são decodificados para produzir dois conjuntos de 16 sinais necessários para controlar a carga dos registradores da memória rascunho nos barramentos $A$ e $B$. Os ``$A$ latch'' e ``$B$ latch'' são carregados neste subciclo, produzindo as entradas para a ALU, e mantendo-se estáveis pelo resto do ciclo da microinstução (isto é, até o fim do quarto subciclo). Ainda no segundo subciclo, o valor do MPC sofre um incremento de 1, em preparo para a carga da próxima microinstrução.

No subciclo 3, a ALU e o ``shifter'' são dados tempo suficiente para produzirem resultados válidos. O campo AMUX da microinstrução determina a entrada no lado esquerdo da ALU; a do lado direito é sempre o ``$B$ latch''. Ainda neste subciclo, o $MAR$ é carregado do barramento, se for o caso.

Durante o subciclo 4, o valor do barramento $C$ é armazenado de volta a memória rascunho, ou no $MBR$, conforme o caso. Um registrador especificado pelo campo $C$ só é carregado com o valor presente no barramento $C$ se $ENC$ = 1 e o subciclo é 4.


next up previous
Next: ``Sequenciamento das microinstruções'' Up: Microprogramação Previous: ``Timing'' da microinstrução em
Siang Wun Song
2001-09-19