Sunteți pe pagina 1din 5

TÓPICOS AVANÇADOS EM ARQUITETURA DE COMPUTADORES

– AV1 – 2018.2
GABARITO
0,7 pt 1. O processador AMD Athlon 64 X2 3800+ núcleo “Windsor” é usado sobre o soquete AM2, que possui 940 pinos. Do
processador, são conectados barramentos que levam ao sistema de Memória Principal e ao chipset de controle do Sistema de E/S.
O barramento conectado ao sub-sistema de E/S é denominado HyperTransport 2.0. Utilizando-se um modelo mais avançado do
barramento, pode-se obter uma velocidade de 2 GHz (frequência do relógio/”clock”), e uma largura de dados ainda maior, com
32 bits em cada direção.
Sabendo que o referido barramento transfere quatro vezes a quantidade de dados a cada ciclo de clock, calcule a Taxa de
Transferência em bytes em cada direção?
A) 125 MBps; B) 4.000 MBps C) 235 Bps D) 226 bps E)250 Mbps
Resp: Taxa Transferência = Veloc x L bps (bits por seg).
V ou frequ do relógio (“clock”) = 2 GHz ou 2 Gbps/fio e a Largura = 32 bits.

O cálculo de Taxa T deve considerar que são enviados 4 bits por fio a cada pulso e deve ser multiplicado por 4.
Taxa T= 2 G x 32 x 4 (porque transfere 4 bits por pulso de relógio (“clock”) = 256 Gbps
Como se deseja a resposta em Bytes e 1 B (byte) = 8 b (bits), então, é necessário dividir o resultado por 8.
256 Gbps / 8= 32 GBps e como 32 = 25 e 1G = 230, 32 GBps = 235 GBps

OPÇÃO C
Exercício semelhante no Quest 1 item 14 e na Lista de exercícios 1 item 2 e item 3

0,7 pt 2. No passado, um dos grandes gargalos de desempenho dos sistemas de computação era a enorme diferença de
tempo de transferência entre Processador e Memória Principal. Esse problema foi equacionado e solucionado em grande
parte com a inclusão das Memórias Cache entre o Processador e MP. Observe as afirmativas sobre memória cache a seguir
e assinale a opção correta de afirmações Falsas (F) e Verdadeiras (V):
I. O número de blocos da memória principal é igual ao número de linhas da memória cache.
FALSO- sempre haverá muito mais blocos na MP do que na Cache.
II – A existência das Cache é decorrente da descoberta do Princípio da Localidade Temporal, devido a redução do tempo
de transferência dessas memórias.
FALSO- sua existência é devido ao princípio da localidade ESPACIAL.
III- As memórias cache só funcionam como dispositivo de armazenamento se estiverem localizadas no interior do chip
do processador
FALSO- poderá haver sim Caches na placa mãe. Atualmente, isso não tem ocorrido devido à necessidade de maior
rapidez (vir da placa mãe leva muito mais tempo do que do interior do processador) e haver disponibilidade de espaço
no interior do processador para colocar Caches L1, L2 e até L3 (transistores com menor espessura)
IV. o tempo de acesso das memórias cache é superior ao dos registradores
VERDADEIRO- os registradores são mais rápidos que as cache
V. Eficiência das memórias Cache é calculada pela relação entre a quantidade de Acertos e a quantidade de Faltas.
FALSO- a eficiência é calculada pela relação de Acertos sobre Total de acesso em um período

A) F -F -V – F -V B) F -V – F – V -F C) V -F -F -V -F D) F -F - F – V – F E) F -V -F - F- F

Resp: OPÇÃO D
Questão semelhante encontra-se no quest 2 item 8

0,7 pt 3. Um conjunto de instruções de máquina de um sistema de computação é definido em projeto do fabricante do


processador, de modo a possuir instruções aritméticas, instruções de movimentação de dados, instruções de entrada e saída,
instruções de desvio de controle e outras mais, especificadas pelo projetista segundo as estratégias concebidas para aquele
processador. Além disso, cada instrução possui um formato, também definido no projeto, sempre constituido de, pelo menos,
duas partes; algumas instruções podem ter 3 partes e outras até 4 partes. Como cada instrução a ser executada fica armazenada
no registrador de instrução - RI (em grande parte dos processadores), a qual dispositivo do processador é conectada a saída do RI?
Qual é a parte da instrução cuja largura em bits determina o limite máximo de instruções de máquina de um processador? Qual é
o dispositivo do processador contém os elementos básicos para emissão dos sinais de controle que comandam a execução das
atividades de um ciclo de instrução?
( ) A – Campo de operando – contador de instrução – Registrador de Controle
( ) B – Decodificador de Instrução – Campo Operando - Multiplexador de instrução
( ) C – Unidade de Controle - Campo Operando – Registrador de Controle
( ) E - Campo de controle – Contador de instrução (C I) - Decodificador de Endereços de Instruções
( ) E – Decodificador de instrução - Código de operação – Unidade de controle
Resp:
O ciclo de uma Instrução determina, em seu passo 3, que, depois de buscar a cópia da Instrução na Memória (armazena no RI) ,
ele deve ser interpretada (decidir que operação será realizada). Desse modo, a saída do RI (parte do C.Op. é conectada ao
decodificador de instrução, para, justamente, ser determinada qual operação será executada.

O código da operação é a parte do formato da instrução de máquina que indica qual é a operação e seu algoritmo de
execução. Assim, se o C.Op tiver 4 bits de largura, p.ex., haverá 16 C.Op (24 = 16) e haverá, então, 16 instruções de máquina
possíveis. E assim por diante.
Depois de decodificada e descoberta a operação a ser reaizada, a saída do decodificador de instrução habilita a sequência de
execução da específica operação (etapa do Ciclo de Instrução de execução da instrução). A referida sequência é estimulada pela
sucessão de sinais de controle oriundos da Unidade de Controle (cérebro do processador), que contém a programação de
execução de cada instrução.
Decodificador de Instrução – Código de Operação – Unidade de Controle
OPÇÃO E

Encontrada no questionário 1 item 16

0,7 pt 4. Um determinado sistema de computação suporta memórias do tipo DRAM com palavras de 4 bits por célula e 4
“camadas” (também chamadas de pastilhas ou bancos), sendo que, cada camada armazena um dos 4 bits da célula. Para cada
“camada”, saem 18 fios, através do barramento de endereços, até o registrador de endereços, e dele saem 9 fios para o MPX de
Endereços de linha, e 9 fios para o Decodificador de coluna, resultando em 512 linhas * 512 colunas * 4 bits em cada célula.
Observe a imagem a seguir, referente ao texto acima:

Se a capacidade total da memória é obtida através do somatório da capacidade total de endereçamento com a palavra de cada
célula em cada “camada”, ou banco, qual é a capacidade dessa MP em bits?
A) 256 Kbits; B) 512Kbits; C) 1Mbits; D) 4 Mbits; E) 8 Mbits

Resp: 1 célula = 4 bits


Cada endereço é representado por um número de 18 algarismos (18 bits), sendo 9 bits para endereço de linha e 9 bits para
endereços de coluna.
Capacidade total de bits será = total de endereços (TE) * largura de cada endereços (LE)
TE= 512 *512 = 29 * 29 = 218 = 256K endereços
LE = 4 bits (conforme enunciado)
Então, total de bits = 256K * 4 = 1M bits

OPÇÃO C

0,7 pt 5. Suponha um sistema de computação que tenha uma memória principal (MP) com capacidade máxima de 8GB, sendo
endereçado byte a byte. E também possui uma memória cache, organizada com método de mapeamento associativo completo
(“full associative”), tendo linhas de 64 bytes. Calcule a capacidade da Cache, em bytes, sabendo-se que o sistema de controle da
cache possui 8192 (8K) registradores de comparação para fazer o sistema funcionar com a máxima rapidez possível na parte de
mapeamento de endereços.
A) 2MB B) 256KB C) 1MB D) 128KB E) 512KB
Resp: Para que a cache funcione com máxima rapidez na parte do mapeamento de endereço em um sistema
associativo completo, é necessário que a verificação se o bloco acessado se encontra na cache seja feita por comparação
simultânea entre o bloco desejado e todos os blocos armazenados um em cada linha. Ou seja, deverão existir tantos
registradores de comparação quantas linhas da cache.

Por exemplo, suponha uma cache que tem 512 linhas, cada uma tem um campo TAG indicando o bloco que está atualmente
armazenada naquela linha. E o processador, em um acesso, deseja um dado que faz parte do bloco X. O sistema de controle da
cache coloca X em TODOS os 512 registradores de comparação (uma parte do registrador terá X e outra parte o end do bloco
armazenado e simultaneamente eles passam por um circuito lógico XOR. Se houver igualdade (só poderá ser em um registrador)
– saída 0 do XOR – então este bloco é o desejado e o sistema localiza a célula (byte) pelo campo endereço de byte. Caso
contrário – saída 1 do XOR – haverá uma FALTA (“Miss”).

No problema em questão, já se sabe que existem 8192 (8K) registradores de comparação e o que se deseja saber, então, é a
capacidade da cache em Bytes. Sabendo-se que há 8K linhas e que cada linha tem largura de 64 Bytes, basta multiplicar:

Capacidade da cache = 8K linhas x 64B = 512K bytes

OPÇÃO E
Questão semelhante no Questionário 4 item 10

0,7 pt 6. Considere que a etapa de incremento do CI (contador de instrução) de um ciclo de instrução possua a seguinte
definição:
CI ----- CI + n.
Com relação ao significado dessa expressão, julgue os itens a seguir, assinalando a opção correta.
A) O valor de n representa a quantidade de bytes que a próxima instrução deve ocupar.
B) O incremento do CI é realizado ao término da execução de cada instrução.
C) O valor de n representa o tamanho da instrução corrente em termos de quantidade de endereços que ocupa.
D) A expressão apresentada não se aplica em instruções de desvio.
E) O valor de n é fixo para qualquer instrução em processadores que usam arquitetura CISC.
Resp:
No Ciclo de Instrução define-se que, para a execução de um programa ser automática, assim que a instrução é buscada (pelo
endereço dela armazenado no CI) e armazenada no RI, o CI deve ser incrementado para já apontar para a próxima instrução
(quando acabar a execução desta atual). Ou seja, seu conteúdo é incrementado de um valor para o endereço seguinte contíguo
na memória. Se a inatrução atual começa no endereço 3 (CI = 3) e ocupa 2 endereços (tenha, p.ex., 2 bytes de tamanho), então
CI deve ser incrementado de 2 e apontará para 3 + 2 = end 5.
Assim, na expressão CI = CI + n, o valor de n será a largura de endereços da atual instrução, isto é, a que acabou de ser buscada e
está sendo interpretada ainda.
OPÇÃO C

0,7 pt 7. Um computador é constituido de um sistema de armazenamento que compreende uma cache com dois níveis (L1 e L2).
Suponha que 65% das referências à memória obtêm presença na cache nível 1, 30% na cache nível 2 e os 5% restantes não estão
em cache (estão, consequentemente, em MP). Se os tempos de acesso são de 5 ns, 20 ns e 50 ns, respectivamente, qual é o tempo
médio de acesso do sistema?
A) 13 B) 14,25 C) 14, 05 D) 11,25 E) 12,75
Resp:

Neste caso, tem-se 4 elementos de armazenamento com seus tempos de transferência e sua parte na eficiência global do sistema.
Do tempo total de acessos do processador (100%), em 65% dele o dado é encontrado na cache L1 e gasta-se 5 ns para a
transferência L1-Processador. Em 30% dele ele não está na cache L1 e sim na L2; nesse caso, o sistema tem que inicialmente
transferir o bloco que contém o dado, da cache L2 para L1 (gasta 20 ns) e ainda enviá-lo da L1 para o processador (gasta mais 5
ns); total de 25 ns. Finalmente, em 5% das vezes, o dado não está nem na L1 e nem na L2 (está na MP). O sistema gasta bem mais,
pois tem que trazer o bloco da MP para cache L2 (gasta 50 ns), daí levar um bloco menos da L2 para a L1 (gasta mais 20 ns) e
finalmente 5 ns para levar efetivamente o dado para o processador: total de 75 ns

O tempo médio será a média ponderada desses 3 tipos de tempo:

Tempo M = ((65 x 5) + (30 x 25) + (5 x 75)) / 100 ou (325 + 750 + 375) / 100 = 1425 / 100 = 14,25

Questão semelhante no questionário 2 item 9

0,7 pt 8. Supondo um sistema de computação que possua memória principal, cujo endereçamento é realizado a nível de byte e
que possua uma cache única e que, em dado momento o processador coloca o seguinte valor no barramento de endereços (BE):

1001 0001 1111 1100 0001 1101

Suponha ainda que o sistema usa método de mapeamento associativo por conjunto de 4 vias, que a MP é vista pelo controle da
cache como um conjunto de blocos de 32 Bytes e que são previstos sempre uma quantidade de 64 blocos em cada conjunto da
cache. Considerando que o formato de endereço para acesso pelo controle da cache é:
TAG - CONJUNTO - BYTE

Calcule a capacidade da memória Cache em bytes.


A) 256 KB B) 24 MB C) 16 MB D) 1 MB E) 512KB

Resp: Para saber capacidade da cache é preciso saber qtas linhas ela possui e multiplicarmos pela largura de 1 linha, no
caso é 32 Bytes.
Se soubermos qtos conjuntos e multiplicar por 4 (o mapeamento é assoc por conjunto de 4 vias), teremos qtda de linhas.
Como o endereço total no BE tem 24 bits (6 grupos de 4 bits cada), o campo conjunto é obtido da diferença entre 24 menos 5
(campo byte) e menos 6 (campo TAG, pois são 64 blocos por conjunto)

Tag Conjunto Byte

6 x 5

24 – 6 – 5 = 13 bits e teremos 213 = 8K conjuntos.


8K x 32Bytes = 256K bytes

OPÇÃO A)

1,5 pt 9. Um sistema de computação tem um processador que possui um máximo de 64 instruções de máquina e com sua
pinagem é possível endereçar, na MP, um máximo de 4G endereços. As instruções deste processador são todas de de 2
operandos, sendo que o campo Operando 1 (Op 1) indica o endereço de MP e o segundo operando (Op 2) indica o endereço de
um dos X registradores de dados ou endereços do referido processador. No referido processador, sabe-se que é possível
armazenar simultaneamente até 16 dados e/ou endereços nos mencionados registradores. Calcule:
a) O tamanho em bits do registrador de instrução (RI);
b) A largura, em bytes, do BE;
c) A quantidade de fios na entrada do decodificador de instrução.

Resp: Se o processador possui 64 instruções, conclui-se que há 64 C.Op e cada um deles tem 6 bits de largura(64 = 26). Esta é a
largura do campo C.Op. das Instruções desse processador. E se a MP endereça 4G endereços, então cada endereço tem 32 bits de
largura (campo do Operando 1= 32), pois 4G = 232 e esta será a largura do BE em bits. Para saber em Bytes é só dividir o valor por
8 ou 32 / 8 = 4bytes (letra b).

O decodificador de instrução tem n bits de entrada (n = c.op) e assim serão 6 bits de entrada e 2n fios de saída ou 64 fios, um para
cada possível instrução. (letra c)

Cod Op Op 1-Mem Op 2- Reg


6 bits 32 bits 4 bits

Se o processador é capaz de armazenar 16 dados/endereços simultaneamente, isso significa que ele precisa ter 16 registradores
e o endereço de cada um é 4 bits (16 = 24) e esta é a largura do campo do operando 2

A soma dos 3 campos da instrução é 6 + 32 + 4 = 42 bits. Se as instruções tem 42 bits e o RI é o registrador que armazena a instrução
a ser executada, ele tem que ter 42 bits (letra a)

Questão semelhante no Questionário 1 item 8

1,4 pt 10) Uma das mais importantes razões da rápida evolução de desempenho dos processadores tem sido a contínua redução
da espessura dos transistores (litografia), atualmente em 7 e 10 nm. Isto tem permitido o encapsulamento de maior quantidade
de transistores na pastilha (mais componentes) e também uma expressiva redução do percurso dos sinais (menor tempo de
transferência e execução de operações). No entanto, os projetistas estão encontrando enorme dificuldade de reduzir ainda mais
a espessura dos transistores, além dos notórios problemas de calor e interferências, que tem limitado o aumento da frequência
do relógio (“clock”) dos processadores. Em face desses problemas, qual a solução que tem sido cada vez mais adotada para
aumentar o desempenho dos sistemas de computação?

Resp: Usar paralelismo, tanto no nível de instruções (instruções que executam operações com múltiplos dados), quanto na área
de execução (hardware), com múltiplas unidades de execução ou ULAs (processamento superescalar) e até mesmo com
múltiplos processadores (arquiteturas multicore).

Questão 12 da lista de exercícios 1

S-ar putea să vă placă și