Buscar

GABARITO-TOP-AV-ARQ-Questionário 4

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 7 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 7 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

2020.2 - TÓPICOS AVANÇADOS EM ARQUITETURA DE COMPUTADORS 
QUESTIONÁRIO 4 – Tópicos Avançados em Memórias – Endereçamento de 
Memórias-Caches: Organização e Funcionamento. Método de Mapeamento Direto–
vídeos 13 -14-15 
GABARITO 
 
1. Cite uma vantagem e uma desvantagem do método de mapeamento direto. 
Resp: Vantagem: simples de projetar e de funcionar, e rápido no acesso, já que as ligações são 
permanentes. 
Desvantagem: inflexibilidade no armazenamento de blocos, podendo acarretar frequentes 
Faltas. 
 
2. Considere um sistema de computação que possui um processador interligado a uma 
memória cache e à memória principal, sendo a referida memória principal endereçável 
fisicamente por byte, com uma capacidade máxima de 128MB e a memória cache, com 64KB, 
é organizada em L linhas de 32B cada. Calcule o valor, respectivamente, do tamanho do bloco, 
em bits, transferido da memória principal para a cache, sempre que ocorre uma falta (o dado 
não é encontrado na cache), bem como o valor de L. 
Resp: 
a) A largura de cada Bloco da MP é sempre igual a largura de cada Linha da Cache. 
Nesse caso, como as linhas tem 32B, então os blocos também terão essa mesma 
largura: 32B ou 32 x 8 = 256 bits 
b) Quantidade de linha (L) da cache é obtida dividindo-se o total d ebytes (64K) pela 
largura de uma linha (32B): 64KB / 32B = 2K linhas ou 2048 linhas. 
 
3. Qual é o método de mapeamento de endereços da memória cache, no qual cada bloco da 
Memória Principal tem uma linha da cache previamente definida, estando previamente 
determinado quando a linha receberá o bloco? 
Resp: Trata-se do Mapeamento Direto. Neste método, o sistema de controle da cache 
(usualmente no chipset) já é fabricado com as conexões previamente feitas, isto é, cada bloco 
da MP já está conectado à linha determinada. Exemplo: em um sistema com 8 blocos da MP 
(blocos 0 a 7), ligado a uma cache com 2 linhas (linha 0 e linha 1) teria as seguintes conexões já 
definidas: 
Bloco 0 para linha 0; bloco 1 para linha 1; bloco 2 novamente para linha 0 e bloco 3 novamente 
para linha 1; bloco 4 para linha 0 e bloco 5 para linha 1; bloco 6 para linha 0 e bloco 7 para linha 
1. Assim, cada linha teria previamente determinado 4 blocos, naturalmente, um de cada vez. 
 
4. Considere uma MP que possui 256K blocos de 64 células de 1 byte cada e a memória cache, 
que emprega mapeamento direto, possui 4K linhas. Qual deverá ser o formato do campo 
 
 Associação Carioca de Ensino Superior 
 
Centro Universitário Carioca 
http://www.unicarioca.br/index.php
de endereçamento para acesso à MP e à memória cache? Qual é a capacidade, em Bytes, 
da memória cache? 
Resp: 
Como a MP possui 256K blocos de 64 células cada uma (1Byte cada), então o total de Bytes é: 
256K * 64 = 16MB e cada endereço físico de Byte tem 24 bits de largura, pois 224 = 16M 
(resposta b) 
Sendo mapeamento direto o campo de endereço para ser analisado pelo controle da cache 
tem 3 partes, da esquerda para a direita: TAG-LINHA-BYTE (ou célula). 
Como o bloco da MP (largura igual a de cada linha da cache) é de 64B, então o campo BYTE 
possui 6 bits de largura, já que 26 = 64. 
Se a cache possui 4K linhas, então o campo LINHA possui 12 bits de largura, já que 212=4K 
O campo TAG terá 6 bits de largura, pois 24 – 12 – 6 = 6 
a) O formato do endereço será: 
 
 Tag Linha Byte 
 6 12 6 
b) capacidade da cache = 4K linhas x 64B = 256KB 
5. Supondo um sistema de computação que possua memória principal e cache única e que, 
em dado momento o processador coloca o seguinte valor no barramento de endereços 
(BE): 
 100110011101100100010101 
 
Suponha ainda que o sistema usa método de mapeamento direto, que a MP é vista pelo 
controle da cache como um conjunto de blocos de 64 Bytes e que são previstos sempre 
uma quantidade de 64 blocos em cada linha da cache. Pergunta-se: 
 a) qual o formato de endereço para ser processado pelo controle da cache? 
 b) qual é o valor binário do campo “Linha” do endereço? 
Resp: 
Se cada bloco possui 64 B então campo BYTE tem 6 bits de largura, pois 64 = 26. 
Se são previstos sempre 64 blocos por linha então campo TAG (campo de endereço do bloco 
armazenado no momento naquela linha) possui 6 bits de largura, pois 64 = 26. 
Se cada endereço físico da MP possui um total de 24 bits (contando os bits armazenados no BE 
um a um dará 28 bits, então o campo LINHA terá: 24 – 6 – 6 = 12 bits de largura 
a) Formato do campo de endereço 
 Tag Linha Byte 
 6 bits 12 bits 6 bits 
b) Considerando o formato acima e a linha de bits armazenada no BE, vamos separar os 24 bits 
em 3 grupos (6 para TAG), 12 para linha e 6 para Byte, teremos para o endereço citado: 
 100110 011101100100 010101 
 TAG LINHA BYTE 
 
O campo LINHA será: 011101100100 
 
6. Considere um sistema de computação que possui uma memória principal, organizada em 
células de 1 byte cada e apenas uma memória cache externa, organizada com mapeamento 
direto, sendo cada linha de 16 bytes. Em um dado instante, o processador inicia um acesso 
colocando no BE comum o endereço hexadecimal: 6D7C9F2. Sabendo-se que, neste 
sistema cada linha da cache tem atribuido 512 blocos da MP, pergunta-se: 
a. qual deverá ser a largura do BE do sistema? 
b. Qual foi a linha acessada pelo processador? 
Resp: Sendo mapeamento direto cada endereço deve ser mapeado para Tag -Linha – Byte. 
Assim, temos: 
Linha = Bloco = 16B, então: campo Byte = 4 bits de largura, pois 16 =24 
Endereço de célula = 5D7A9F2 = 7 algarismos hexadecimais ou 7 * 4 = 28 bits (sabe-se que, 
cada algarismo em base 16 pode ser convertido para um valor binário de 4 algarismos. 
Se cada linha tem atribuido 512 blocos então o campo TAG = 9 bits, pois 512 = 29 
Campo Linha terá uma largura igual a diferença entre o valor total do endereço (28 bits) e 
o valor do campo Tag (9 bits) e Byte (4 bits). É igual a 28 – 9 - 4 = 15 
 
 Tag Linha Byte 
 9 bits 15 bits 4 bits 
 
 
a) largura do BE = 28 bits 
b) 5D7A9F2 = 0101 1101 0111 1010 1001 1111 0010, sendo os 9 mais à esquerda para TAG 
(010111010) e os 4 mais à direita para endereço da célula ou BYTE (0010). Os 15 do meio 
são o endereço da Linha ou 
tag = 010111010 linha = 111101010011111 byte = 0010 
7. Considere um sistema de computação que possua uma Memória Principal (MP) com 16MB 
de capacidade, usando o endereçamento por Byte e uma memória Cache única, que tem 
256KB de capacidade e é organizada em linhas de 16Bytes. Calcule os seguintes elementos: 
a) a quantidade de blocos em que a MP é organizada para funcionamento com a Cache. 
b) a quantidade de linhas da Cache. 
c) supondo que se use o método de mapeamento de endereços MP/Cache do tipo Direto, 
quantos blocos são alocados para cada linha da cache? 
Resp: 
Sendo a MP de 16MB e com endereçamento por byte, então tem 16M endereços e a largura dos 
números que representam cada endereço é 24 bits, pois: 16M = 224 
Se a Cache tem linhas de 16B, então a MP é organizada em blocos também de 16 bytes e o 
campo Byte do endereço de mapeamento direto tem largura de 4 bits (16 =24). 
a) Se MP=16mB e cada bloco =16B, então a quantidade de blocos é: 16MB / 16B = 1 M blocos 
b) Se a cache tem 256KB e cada linha tem 16B, a quantidade de linhas é 256KB / 16B = 16K 
linhas 
c) Se há 1M blocos para 16K linhas, deve haver 1M/16K blocos por linha ou 64 blocos por linha 
 
8. Considere um sistema de memória constituído por uma cache de 64K palavras de 1 Byte e 
uma memória principal de 8M palavras de 1 Byte. Considere ainda que a cache tem blocos de 8 
palavras e utiliza mapeamento direto. 
a) Indique, o número de bits que se utiliza para endereçar a cache e a memória principal (isto é, 
a largura do barramento de endereços de cada uma, supondo que a cache também possa 
endereçar por byte). 
b) calcule, a largurados campos de índice-tag, linha e byte tal como interpretado por esta cache. 
Resp: 
a) Se MP = 8MB (palavra de 1 Byte), que é igual a 2E. Nesse caso, E (MP)= 23 bits, pois 8M = 
223 
E a cache de 64KB (palavra de 1 byte) = 2E e nesse caso, E (cache) = 16 bits 
b) Se a cache tem 64KB e cada linha/bloco = 8B, então a quantidade de linhas é 64KB / 
8B = 8K linhas. O endereço de cada linha é 13 bits pois 8K = 213. E, então, o campo 
Linha do endereço tem 13 bits de largura. Além disso, o campo Byte tem 3 bits de 
largura, já que o bloco tem 8 bytes e 8 = 23. Como o endereço total tem 23 bits de 
largura, o campo TAG terá: 23 – 13 – 3 = 7 bits 
 
 Tag Linha Byte 
 7 13 3 
9. Os processadores baseados na arquitetura AMD64 possuem uma largura de caminho de 
dados, entre a memória cache L2 e o cache de dados L1, de 128 bits; e o caminho da cache L1 
para os registradores é de 64 bits. Isso significa que, na fase de busca de dados (Fetch), o 
processador irá buscar dados em grupos de quantos Bytes? 
Resp: do processador irá buscar dado por dado, utilizando o caminho de 64 bits. 
 
10. O processador AMD Athlon 64 X2 3800+ com núcleo “Windsor” possui memória cache com 
capacidade de 64 KB, e tamanho de cada linha com 64 bytes. Se um determinado Sistema 
Computacional no qual esse processador está instalado possui uma Memória Principal com 
capacidade de 1 Giga endereços, e cada “linha” (célula) possui 8 bits, qual será a quantidade de 
blocos em que a MP deve ser organizada? 
Resp: Cache de 64KB e linhas de 64B, então a cache terá 64KB / 64B = 1K linhas. 
A MP tem 1 G endereços de 1 byte cada (célula de 8 bits) e como cada bloco tem mesma largura 
de linha da cache, então a quantidade de blocos da MP é igual a 1G / 64 = 16M blocos 
230 / 26 = 224 ou 16M 
 
11. Sabe-se que há dois métodos para endereçamento de células em uma memória do tipo RAM: 
direto (linear) e por matriz de duas dimensões (linha e coluna), sendo que, neste último, podem 
ser empregadas as modalidades de matriz quadrada ou retangular. No método linear (direto), 
há uma quantidade fixa de fios condutores de entrada do endereço no decodificador, com 
largura igual a do BE (barramento de endereços) e na saída uma quantidade igual a 2BE fios; já 
no método de linhas/colunas, há uma quantidade de fios de entrada em um multiplexador (igual 
a largura do BE) e do multiplexador é que saem fios para decodificadores de endereços de linha 
e de coluna. 
 
Sobre o assunto, assinale a opção considerada válida. 
A) usando-se o método de matriz de linha/coluna verifica-se que a quantidade total de fios de 
saída dos decodificadores de linha/coluna (soma dos dois) é maior quando se usa matriz 
retangular do que usando-se matriz quadrada 
B) usando-se o método direto tem-se uma dupla desvantagem sobre o método de linha/coluna: 
a quantidade de fios de saída do decodificador no método linear é maior que no método L/C e 
o tempo de acesso também 
C) o total de fios de saída do multiplexador no método direto é igual a 2 * 2BE, enquanto que no 
método de L/C é de 2D-L + 2D-C 
D) o método linear só é usado em memórias com tecnologia DRAM, não sendo aplicável em 
memórias que usam tecnologia SRAM 
E) o tempo de acesso em memórias que empregam o método de endereçamento de matriz L/C 
é proporcional a quantidade de acessos realizados entre a memória principal e memória 
secundária, o que não acontece com o método linear 
Resp: 
Opção A – correto. Ex. de BE com 20 bits. Em quadrada tem-se 10 fios p/ L e 10 p/ C, dando 
1024 + 1024 = 2048 fios. Em retangular há inúmeras opções, mas, p.ex. pode ser: (1) 12 fios p/ 
L e 8 p/ C ou (2) 16 fios p/ L e 4 p/ C. No caso (1) tem-se 4096 L e 256 C = 4352 e em (2) tem-se: 
65536 fios L e 16 fios C , total de 65552 fios. Ambos bem maiores que os 2048 da matriz 
quadrada. 
Opção B – incorreto, pois, embora a 1ª parte esteja certa (quantidade de fios de saida do linear 
é maior que L/C, a 2ª parte está errada, pois o tempo de acesso do linear é MENOR que do L/C 
( no linear só há um tempo de acesso, enquanto no L/C há um tempo para acesso à linha e um 
outro tempo para acesso da coluna). 
Opção C – incorreto - total de fios de saida do linear é 2BE e não 2 * 2BE 
Opção D – incorreto – o método linear é usado em memórias SRAM (cache) e não em DRAM 
(MP), devido ao custo de fios e espaço. 
Opção E – incorreto – nada haver com memória secundária. Tempo é direto no acesso à 
memória seja para linear seja para L/C. 
 
OPÇÃO A. 
 
12. Um sistema de computação possui uma memória RAM com endereços de 28 bits. 
Compare os dois métodos de endereçamento possíveis nessa memória: linear/direto e por 
matriz quadrada de linha/coluna, concluindo qual deles economiza mais fios de conexão. 
Mostre o cálculo em cada caso. 
Qual dos métodos de endereçamento acima é mais rápido? Por que? 
Resp: endereço de MP de 28 bits, corresponde diretamente a 228 = 258M endereços. 
Com a forma direta/linear de endereçamento, os 28 fios do BE entram no decodificador de 
endereços e dele saem 256M (256 x 1024 x 1024 = 268.435.456 fios, um para cada uma das 
respectivas células de memoria. O acesso à MP é realizado em UM instante de tempo para 
decodificação e correspondente localização da célula. 
Coma forma de matriz/coluna, tipo quadrada, as 256M células são organizadas em X linhas e Y 
colunas, sendo X = Y. Assim, os 28 fios do BE entram em um dispositivo multiplexador que os 
divide em duas partes de 14 fios cada, um para endereços de linha e outro para endereço de 
coluna. E o acesso é realizado em DUAS partes de tempo. 
Os 14 fios de endereço de linha entram no decodificador de linha e dele saem 214 = 16K fios = 
16384 fios e os 14 de endereço de coluna entram no decodificador de coluna e saem também 
16 384 fios para cada coluna. 
Total de fios de saída = 32.768 fios em vez dos 268.435.456 fios do método direto. 
No entanto, vantagem do método linha/coluna possui, em contra-partida, uma enorme 
desvantagem de tempo. O acesso a uma célula ocorre em dois instantes de tempo, uma para 
decodoficar e localizar linha e outro para fazer o mesmo com a coluna desejada.=. O método 
direto é mais rápido, por usar apenas um momento de acesso. 
 
13. Considere um sistema de computação que possua uma memória principal (MP) com 
capacidade máxima de N endereços; endereçamento por byte e uma única memória cache 
com 128 KB de capacidade e possuindo linhas com 32B de largura. O processador tem uma 
pinagem de 360 pinos, dos quais 31 são para endereços. 
Calcule os seguintes elementos: 
a) Valor de N; 
b) Quantidade de blocos da MP e quantidade de linhas da memória cache. 
Resp:cache com linha = 32B, mesma largura de bloco da MP. 
a) Se cada endereço (E) = 31 bits de largura e sabe-se que N = 2E, então, N = 231 ou 2G 
endereços. 
b) Quantidade de blocos da MP = total de endereços / largura de um bloco = 2G / 32B = 64M 
blocos ou 231 / 25 = 226 = 64M 
Quantidade de linhas da cache = total de bytes da cache / largura de cada linha ou 128KB 
/ 32B = 4 K linhas ou 4096 linhas. Outra forma: 217 / 25 = 212 = 4K 
 
14. Observe as afirmativas sobre memória cache e assinale as que são Falsas (F) e as que 
são Verdadeiras (V) 
I. O número de blocos da memória principal é igual ao número de linhas da memória cache. 
ERRADO-sempre há mais blocos na MP que linha na cache 
II. as memórias cache só funcionam como dispositivo de armazenamento se estiverem 
localizadas no interior do chip do processador 
ERRADO- há diversos sistemas que possuem caches na placa mãe, fora do processador. É 
verdade que, atualmente, é raro um sistema recente usar isso, devido a lentidão de acesso 
na placa mães em relação aos acessos no interior do processador e também porque pode-
se colocar caches relativamente grandes no interior dos processadores em face da 
diminuição da litografia (espessura dos transistores) 
III. o tempo de acesso das memórias cache é inferior ao dos registradores 
ERRADO- os registradores são mais rápidos (menor tempode acesso) que as cache. 
IV. Denomina-se hit quando um dado solicitado não está armazenado na memória cache e, 
neste caso, o bloco da memória principal que contém o byte desejado é transferido para a 
memória cache. 
ERRADO-isso é FALTA. Ocorre Hit quando se encontra o dado na cache. 
V. A eficiência da memória cache de um sistema de computação em que ocorrem 94 hits a 
cada 100 acessos é de 6%. 
ERRADO- Nesse caso, a eficiência seria de 94% (94 acesso em 100) 
 
 
15. Considere um sistema de computação que, além do processador e elementos de E/S, 
possua uma Memória Principal (MP) com capacidade máxima de 4 GB (seu endereçamento 
físico é por byte) e uma memória cache interna L1 com 256KB (linha de 16B) e uma cache 
L2 com 1MB (linha de 64B). A MP usa endereçamento por matriz de linha/coluna do tipo 
retangular, com 75% de linhas e as memórias cache usam endereçamento linear/direto. 
Qual é a quantidade de fios usados no endereçamento da memória principal e nas memórias 
cache? 
Resp: MP= 4G endereços (4GB, com 1 byte por endereço). Capacidade da MP -N = 2E . Se N 
= 4G então 4G = 232 e cada endereço tem largura de 32 bits. Se a MP usa endereçamento 
por matriz de L/C, com matriz retangular onde 75% é de linhas e 25% de colunas, tem-se: 
75% de 32 fios = 24 fios para endereço de linha e haverá na saída do decodificador d elinha 
(L) 224 = 16M fios (=16,777.216 fios) e 8 fios para endereço de entrada do decodificador de 
coluna. . A saída do decodificador de coluna é 28 fios ou 256 fios de saída. 
Para as cache tem-se: 
Cache L1 = 256KB / 16B = 16 K linhas ou 16384 fios de saída do decodificador de endereços 
de linha da cache. 
Cache L2 = 1MB / 64B = 14K linhas ou 16 384 fios de saída do decodificador d elinha da 
cache. 
 
16. O que significa os termos CAS e RAS em Sistemas de Computação? Como esses 
elementos são usados? 
Resp: CAS – column access select (strobe) em português: seleção de acesso de coluna (C) e 
RAS – row access select ou strobe – tradução: seleção de acesso à linha (L). 
São identificadores dos pulsos de tempo que iniciam o acesso a uma linha (L) e a uma coluna 
(C) quando se usa método de endereçamento por matriz L/C. 
 
17. Um determinado sistema de computação suporta memória principal do tipo DRAM com 
palavras de 8 bits por célula e 8 “camadas” (também chamadas de pastilhas ou bancos), sendo 
que, cada camada armazena um dos 8 bits da célula. Para cada “camada”, saem 32 fios, 
através do barramento de endereços até o registrador de endereços, e dele saem fios para o 
MPX de Endereços de linha, e fios para o Decodificador de coluna. O sistema usa método de 
matriz quadrada de linha/coluna 
Qual é a capacidade total da memória em bits? 
Resp: Se o endereçamento é por matriz de L/C , com endereço do BE de 32 fios e a matriz é 
quadrada, então haverá 16 fios para endereço de L e 16 fios para endereço de coluna. 
O total de bits será 232 = 4G endereços de 8 bits cada um ou 32G bits.

Continue navegando