Buscar

GABARITO-TOP AV ARQ COMP-Trabalho de Avaliacao para AV2-2020-2-v2

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 6 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 6 páginas

Prévia do material em texto

2020.2 - TÓPICOS AVANÇADOS EM ARQUITETURA DE COMPUTADORES 
TRABALHO PARA AVALIAÇÃO PARA AV2 
G A B A R I T O 
Questão 1 
Considere um sistema de computação constituído de um Processador, DUAS memórias cache, L1 e L2 
e a Memória Principal (MP). O tempo de transferência de um dado entre processador e cache L1 é de 
5 ns (nanosegundos), o tempo de transferência de um bloco de dados entre cache L1 e cache L2 é de 
15 ns e entre cache L2 e memória principal é de 40 ns. Sabe-se que apenas 7 % das transferências são 
realizadas entre a MP e a cache L2. Calcule, qual deverá ser a eficiência de transferências entre cache 
L1 e processador e entre Cache L1 e cache L2 com o emprego dessa estrutura, para que o tempo 
médio de transferência entre os 4 dispositivos seja de 11,55 ns ( nanosegundos)? MOSTRE OS 
CÁLCULOS 
Resp: 
 
O tempo médio de acesso será, como o nome indica, uma combinação matemática das percentagens e 
tempos entre os componentes. 
Tem-se que: TM = 11,55ms e 7 % de acessos entre MP e Cache L2. A percentagem de acessos Cache 
L1-Processador é desconhecida e vai-se identificar pela incógnita X. Consequentemente, a 
percentagem de acessos entre Cache L2 e Cache L1 será a diferença das duas anteriores para 100 
(total padrão de acessos), ou seja: 100 – X – 7 ou 93 – X 
Então, em 100 acesso, X vezes há Acerto e o sistema gasta 5 ns de transferência da Cache L1 para 
Processador; em (93 – X) vezes, que o sistema não acha o dado na Cache L1 ele encontra na Cache L2 
e, nesse caso, gasta 15 ns para levar uma cópia do bloco que contem o dado para a cache L1 e dai mais 
 
 Associação Carioca de Ensino Superior 
 
Centro Universitário Carioca 
http://www.unicarioca.br/index.php
5 ns para o dado ser levado da cache L1 para processador, total de 20 ns. E, por último, em 7% das 
vezes o sistema não encontra o dado nem na Cache L1 nem no cache L2 e precisa gastar 40 ns para 
trazer o bloco que contém o dado para cache L2 e dai mais 15 ns para outro bloco (que contém o 
dado) para cache L1 e mais 5 ns para processador; total 60 ns. 
Assim, TM = (( X * 5ns) + ((93 – X) * 20 ns) + ( 7 x 60 ns) / 100 
Ora, como TM =11,55, tem-se que: 
11,55 = (5X + 1860 - 20X + 420) 100 
1155 = - 15 X + 1860 + 420.............Trocando as parcelas de lugar, troca-se sinal 
15 X = 2280 – 1155 
15X = 1125 
X = 75 %--------percentagem Cache L1 para Processador 
Percentagem Cache L2 para Cache L1 = 93 – X = 18 % 
Questão 2 
Considere um sistema de computação de 32 bits, que possui um conjunto de instruções que realizam 
operações aritméticas com números inteiros (complemento a 2 – C2) e em ponto flutuante. Quando o 
sistema realiza operações em C2, usa a representação padrão do bit de sinal (mais à esquerda) e os 
restantes bits para magnitude (esta em C2). A representação em ponto flutuante é única (não há 
representação para dupla precisão) e segue o formato SN - E - SE - F, sendo a base de representação 2 
e fração do tipo normalizada, com 23 bits. 
Durante a execução de um programa, uma das instruções aritméticas de ponto flutuante produz um 
resultado expresso em hexadecimal (base 16) como: 
 8 9 0 C 8 0 0 0 
Como neste instante o valor da Fração (F) ainda não está normalizado, calcule, qual deverá ser o novo 
valor de Expoente (E) para deixar F normalizada? indique o novo valor em binário e em decimal 
Formato dos números em ponto flutuante 
 
Como os números tem 32 bits, cada bit de sinal tem 1 bit e a Fração foi indicado ter 23 bits, então o 
campo expoente tem largura de 7 bits, sendo o formato mostrado na figura acima, na sequência 
definida no enunciado. 
O valor em base 16, 8 9 0 C 8 0 0 0, convertido para base 2 e enquadrado no formato definido é 
mostrado a seguir com o espaçamento entre os bits de acordo com o formato:: 
1 0001001 0 00011001000 0000 0000 0000 
SN = 1 – negativo 
E = 0001001 = 910 
SE = 0 – positivo 
F = 00011001000000000000000 
SE se desejar realizar a operação para verificar o valor de N em decimal tem-se que: 
N = - 0,00011001 x 2 +9 ou, movendo a vírgula 9 casas para a direita (por causa 
do expoente + 9) obtém-se um inteiro 1100102 = - 5010 
Mas observe que a Fração NÃO ESTÁ NORMALIZADA, pois ANTES da vírgula tem-se 0 e não 1 como 
definido para a forma normalizada.. Para se tornar normalizada é preciso deslocar o ponto (vírgula 
fracionária) 4 posições para a direita na Fração, isto é, multiplicar o número por 24 . Fazendo isso ( 
multiplicando a Fração por 24 ela ficaria igual a 
110010000000000000000000, correspondendo a 1,1001 
Mas, para o valor do número não ser alterado, é preciso ajustar o expoente, dividindo o número 
também por 24, isto é, subtraindo 4 do valor do expoente, que ficará (9 -4) igual a + 5. 
Resposta: o expoente passou a ser 00001012 = 510 
O número continuará o mesmo em decimal: 
N = - 1,1001 x 2+5...Realizando a operação, move-se a vírgula da Fração 5 casas 
para a direita (expoente + 5), ficando: 1100102 = - 5010 
Questão 3 
Considere um sistema de computação cujo processador tem uma unidade de controle que funciona 
usando a tecnologia de Pipeline, o qual foi projetado com 6 estágios. Sabe-se que o processador opera 
com 2 GHZ , que cada estágio consome uma quantidade igual de tempo, igual a 4 unidades de tempo 
(4 ciclos). Considerando o consumo de tempo na execução de 40 instruções pelo pipeline, caLcule, 
qual deverá ser o valor da medida de desempenho deste processador em MIPS (milhões de Instruções 
por Segundo)? 
Resp: O pipeline tem 6 estágios (M = 6) e cada estágio ocupa 4 ciclos (P=4) e deseja-se medir tempo 
gasto com 40 instruções (n =40). 
O consumo total de tempo dessas 40 instruções será dado pela fórmula: 
T = (M x P) + (n – 1) x P, sendo M = quantidade de estágios do pipeline; n = quantidade de instruções e 
P = valor de ciclos de cada estágio. 
Sendo M =6; P = 4 e n = 40, tem-se: T = (6 x 4) +( 39 x 4) = 24 + 156 = 180 ciclos. 
Conforme informado, o processador opera com frequência de 2GHz, então cada ciclo dura: 1 / 2 x 109 
= 0,5 nanoseg 
Então, as 40 instruções do pipeline gastaram 180 ciclos x 0,5 ns/ciclo = 90 nanosegs 
Se 40 instruções gastam 90 ns, uma instrução, em média, consome 90 / 40 = 2,25 ns ou 2,25 x 10-9 
segundos 
Se 1 instrução consome 2,25 x 10-9 seg, então em 1 segundo serão executadas 1 / (2,25 x 10-9) 
instruções. 
Separando as parcelas tem-se: 1 / 2,23 x 1 / 10-9 ou ainda 0,444 x 109 instruções. 
Total de instruções: 444 x 106 ou 444 milhões instruções por segundo ou 444 MIPS 
Questão 4 
Um determinado sistema de computação possui um Processador que funciona com 
frequência de relógio (“clock”) de 2 GHz e possui uma Unidade de Controle (UC), contendo a 
programação para realização de todas as microoperações necessárias ao funcionamento 
operacional do Processador. Considere um trecho de microoperações, mostradas em LTR 
(linguagem de transferência de registradores): 
P0: INT Bar-------BC 
P1: Barr OK------ BC Pn ------pulsos de relógio em sequência, 
P2: Leitura------- BC n ----0 , 1, 2, 3...... 
 REM--------- CI 
P3: BE ------------REM 
 DEC-----------BE 
 RAS 
P4: CAS 
 Buffer-------Mem 
P5: BD------ Buffer 
P6: RDM--------BD 
Responda: 
a) Mostre, JUSTIFICADAMENTE, quanto tempo foi gasto para executar essa sequência de 
microoperações? 
b) Explique se a sequência acima é executada usando o método de programação por 
hardware ou pelo método de microprogramação? 
Resp: 
a) Como o relógio (“clock”) do processador opera com frequência de 2 GHz, então, a 
duração de cada ciclo (período ou P) sendo o inverso da frequência será: 
P (ciclo) = 1 / F = 1 / 2 X 109 ou P = 0,5 x 10-9 = 0,5 ns (nanosegundos) 
(1 GHz = 109 Hz ou 109 ciclos por segundo) 
Cada um ou mais microoperações, indicadas por um PX acima, é realizada em um ciclo de 
relógio ou seja, em 0,5 ns.A última sequência de microoperações é antecedida do ciclo P6 ou seja, o sétimo ciclo, já que 
o primeiro da sequência é P0. 
Logo, nessa sequência gastou-se 7 x 0,5 = 3,5 ns (nanosegundos) 
b) Uma sequência de microoperações consiste da lógica de execução criada pelo 
programador de sistemas do Fabricante, que realiza sua programação usando a LTR 
definida na Fábrica. Ela independe do tipo de método de execução (micoprogramação 
ou programação por Hardware. A forma de executar cada microoperação varia 
conforme o método, mas a sequência de microoperações será a mesma, pois é 
definida ANTES do método de execução. 
Questão 5 
Uma das análise mais importantes de um projeto de processadores refere-se a sua habilidade 
de realizar cálculos matemáticos, pois afinal esta é a sua atividade fim. Esta análise envolve 
diversos fatores, como, por exemplo: 
• a definição da estratégia de realização dos cálculos: tipos ponto fixo e ponto 
flutuante; 
• A capacidade das unidades de cálculo, isto é, o tamanho (largura) limite dos números 
envolvidos 
• O formato da representação dos dados numéricos em cada caso (ponto fixo e ponto 
flutuante). 
Sobre este assunto, responda os seguintes itens: 
a) Qual das estratégias de ponto fixo é mais adequada e por que? 
b) Mesmo que você não ache adequado o emprego de complemento a dois, explique 
porque esta representação utiliza um valor negativo a mais do que os valores 
positivos. 
Resp: 
a) As duas mencionadas estratégias, ponto fixo e ponto flutuante caracterizam métodos 
de representação diferentes (um para inteiros e outro para fracionários ou números 
grandes e pequenos, que não podem ser representados (limite de algarismos) em 
ponto fixo. Na de Pto Fixo tem-se 3 modalidades: Simal/Magnitude (S/M) – 
Complemento a 1 (C1) e complemento a 2 (C2). 
No que se refere a representações em Ponto Fixo, há décadas os fabricantes optaram 
por complemento a 2 ( C2), por ser mais eficiente que as outras: 
- ela só tem uma representação para o zero, enquanto as outras possuem DUAS 
representações para o zero, um complicador; 
- executa operações de forma mais rápida que S/M, pois não precisa comparar sinais, 
etc 
- custo menor, pois somente tem um circuito digital de soma, seja para soma mesmo 
ou para subtração (soma de complemento), enquanto a de S/M precisa de dois 
circuitos separados, uma para soma e outro para subtração. 
b) Em C2, representa-se apenas um valor de zero e, neste caso, sobra o valor 1...seguido 
de zeros, que indica o número mais negativo (sem correspondente positivo).

Continue navegando