Considere uma máquina que pode ter seu ciclo de busca e execução de uma instrução dividido em 5 estágios
totalmente independentes:● Busca de Instrução (BI),● Decodificação (DI),● Cálculo de Endereços de Operandos
(CO),● Execução (EX) e● Escrita de Resultado (ER).
Os estágios BI e EX possuem a duração
de 7 ns cada um, os estágio DI e CO têm
duração de 4 ns cada um e o estágio ER
possui a duração de 8 ns. Cada instrução
desta máquina precisa executar os 5
estágios que serão sempre executados na
seqüência BI, DI, CO, EX e ER.
Considere, nas questões abaixo, que cada
uma das instruções necessita dos 5
estágios.
a - Uma implementação desta
máquina foi realizada de modo que cada
instrução deva ser completamente
realizada em um único ciclo de relógio.
Calcule a duração do ciclo de relógio
que esta implementação deve possuir.
b - Como cada estágio é
independente um do outro, deseja-se
implementar uma nova arquitetura
utilizando-se um pipeline de 5 estágios.
Nesta nova implementação, cada
estágio do pipeline deve ser executado
em um ciclo de relógio. Calcule a
duração do ciclo de relógio que esta
implementação pipeline deve possuir.
c - Considere um programa
que necessita executar N instruções.
Calcule o tempo de execução deste
programa na máquina do item a e na
máquina do item b quando N=1, N=2 eN=100.000.
d - Suponha que seja possível
apenas utilizar um pipeline de dois
estágios, sendo o primeiro englobando
os estágios BI, DI e CO e o segundo
englobando os estágios EX e ER.
Calcule o tempo para executar 100.000
instruções, considerando que cada um
dos dois estágios do pipeline deve ser
executado em um ciclo de relógio.
Compare o resultado com os obtidos no
item c, comentando o porquê das
diferenças observadas