Escreva a
seqüência de microoperações que devem ser realizadas pelo ciclo de execução das
seguintes instruções:
a) SUB Op.
ACC ACC – (Op.)
Resposta:
t1: REM
(RI(Endereço))
t2: RDM Memória
t3: ACC (ACC) - (RDM)
b) JMP Op. CI Op
Resposta:
t1: CI (RI(Endereço))
c) INC Op. (Op.) (Op.) + 1
Resposta:
t1: REM
(RI(Endereço))
t2: RDM Memória
t3: ACC (RDM) + 1
t4: RDM ACC
t5: Memória RDM
Considere
uma máquina que possa endereçar 512 Mbytes de memória física, utilizando
endereço referenciando byte, e que tenha a sua memória organizada em blocos de
32 bytes. Ela possui uma memória
cache que pode armazenar 8K blocos, sendo um bloco por linha. Mostre o formato
da memória cache, indicando os campos necessários (tag, bloco) e o número de
bits para cada campo, e o formato de um endereço da memória principal,
indicando os bits que referenciam os campos da cache, para os seguintes
mapeamentos:
a)
Mapeamento direto.
Resposta:
Como há 16 M blocos na memória
principal e 8 K blocos na cache, então cada linha deverá acomodar 2K blocos, um
de cada vez, é claro.
Formato da
memória cache:
A memória
cache terá 8K linhas (ou quadros) em cada linha teremos tag de 11 bits e bloco
de 32 bytes.
O endereço
da memória principal terá o seguinte formato:
Campo de
número do bloco: de 11 bits (para endereçar um dos 2 K blocos)
Campo de
número da linha: de 13 bits (já que temos 8 K blocos)
Campo de
endereço da palavra: 5 bits (já que temos 32 bytes por bloco)
b)
Mapeamento totalmente associativo.
Resposta:
Como há 16 M blocos na MP e eles podem
ficar em quaisquer dos 8 K blocos da Cache, temos:
Formato da
memória cache:
A memória
cache terá 8K linhas (ou quadros), em cada linha teremos tag de 24 bits e bloco
de 32 bytes.
O endereço
da memória principal terá o seguinte formato:
Campo de
número do bloco: de 24 bits (para endereçar um dos 16 M blocos)
Campo de
endereço da palavra: 5 bits (já que temos 32 bytes por bloco)
c) Mapeamento associativo por conjunto, onde cada
conjunto possui quatro linhas, cada uma de um bloco.
Resposta:
A memória cache neste caso terá um número de conjuntos
igual a 8K linhas/ 4 = 2 K. Onde, cada um
dos 16M blocos pode ficar em um dos 2K conjuntos, ou
seja, cada conjunto poderá alocar 8K blocos.
Assim, o formato da memória cache será: 2k conjuntos
de 4 linhas e cada linha com bloco de 32 K.
O tag da memória cache terá 13 bits e bloco de 32
bytes.
O endereço da MP terá os seguintes campos:
Tag: 13 bits (já que cada conjunto poderá alocar 8K
blocos)
Número de conjuntos: 11 bits (já que existem 2K
conjuntos)
Endereço da palavra: 5 bits (já que
temos 32 bytes por blocos)
Valeu
ResponderExcluir