Академический Документы
Профессиональный Документы
Культура Документы
Multi-ciclo
Dada uma aplicação com 106 instruções sendo 10% de instruções da classe A, 20% de
instruções da classe B, 50% de instruções da classe C e 20% de instruções da classe D.
a. Qual implementação tem melhor desempenho?
b. Qual o CPI global para cada implementação?
c. Calcule o número de ciclos de clock para cada implementação.
7. Suponha que foi inserida a instrução move rs, rt, que copia o conteúdo do registrador
rs para o registrador rt. Considerando a implementação apresentada no livro texto,
como se poderia implementar esta instrução preservando todos os outros registradores
de forma a ser ter o menor CPI. Quais as modificações na unidade de processamento e
na unidade de controle e qual seria o CPI desta instrução?
PCWriteCond PCSource
PCWrite ALUOp
IorD Outputs
ALUSrcB
MemRead
ALUSrcA
MemWrite Control
MemtoReg RegWrite
Op RegDst
IRWrite [5– 0]
0
M
Jump 1 u
Instruction [25– 0] 26 28 address [31-0] x
Shift
left 2 2
Instruction
[31-26]
PC 0 PC [31-28]
0
M Instruction Read
[25– 21] register 1 M
u Address u
x Read x
Instruction Read A
1 Memory Zero
[20– 16] register 2 data 1 1
0 ALU ALU ALUOut
MemData Registers
Instruction M Write result
Read B
[15– 0] Instruction u register data 2 0
Write [15– 11] x
Instruction Write 4 1 M
data 1 u
register data 2 x
Instruction 0 3
[15– 0] M
u
x
Memory 1
data 16 32 ALU
Sign Shift
register control
extend left 2
Instruction [5– 0]
Face à crescente utilização da sequencia de instruções acima, foi incluída uma nova
instrução cmove rs, rt, ri que copia o conteúdo do registrador rs no registrador rt se o
conteúdo do registrador ri for igual a zero. Esta instrução substitui a sequencia de
instruções mostrada acima.
Para uma determinada aplicação a frequência de execução das instruções é dada pela
tabela abaixo:
a. Implemente a instrução cmove de forma que ela possua o mesmo CPI da instrução
move. Quais as modificações na unidade de processamento e na unidade de
controle?
b. Considerando que a instrução cmove possui o mesmo CPI da instrução move,
implementada na questão anterior e se esta instrução substitui 20% das instruções
de desvio condicional, a inclusão desta instrução melhoraria o desempenho da
máquina?? Justifique. Se sim, qual o speedup?