Buscar

GABARITO-TOP-AV-ARQ-Questionário 8-videos -14-15-2018-2 e arq slides 25-27-2019-1

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 5 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

Prévia do material em texto

2019.1 - TÓPICOS AVANÇADOS EM ARQUITETURA DE COMP UTADORS 
QUESTIONÁRIO 8 – Tema 8 -Microarquitetura dos Proc essadores -parte 3-Aritmética 
de Ponto Flutuante-Controle: Tipos e Característica s- vídeos 14-15 (2018.2) e arq 
slides 25 -26-27 (2019.1) 
 
GABARITO 
1. O seguinte valor é lido pela unidade de ponto flutuante de um processador: 
 
0 0 1 0 0 0 1 0 0 0 1 1 0 1 1 0 
 
Levando em consideração o seguinte formato de PF com expoente não polarizado: 
 
 
 
 
 
 
a) Qual é o valor decimal que originou este formato? (despreze parte fracionária do 
número, se houver alguma) 
A primeira coisa a fazer é enquadrar os bits mostrados no formato indicado, como se 
segue: 
 SN SE E F 
 0 0 1 0 0 0 1 0 0 0 1 1 0 1 1 0 
Considerando o formato básico de números em PF ser: N = � F x B+-E então teremos: 
N = + 0,1000110110 x 2+1000 = + 0, 10001101 x 28 (desprezados os 2 alg mais à direita 
por serem fracionários) e o valor inteiro será + 10001101 (pois andamos com a vírgula 
8 casas para a direita (multiplicando por 28) 
Passando para decimal tem-se: + 14110 
 
b) Qual é o sinal do número? 
O sinal é positivo (+), pois o bit de sinal do número é 0. 
 
2. Qual é parte do formato de números em ponto flutuante que é responsável pela 
precisão do número? 
Resp: É a mantissa ou fração 
3. Considere um processador cujos números podem ser representados em ponto flutuante 
com o seguinte formato: 
 
Sn F SE E 
 1 bit 10 bits 1 bit 4 bits 
 
Base de representação: 2 
 
 Associação Carioca de Ensino Superior 
 
Centro Universitário Carioca 
E F SN SE 
1 1 4 10 
Mantissa (Fração) – F - normalizada 
Converter o número decimal - 119 para o formato acima, explicitando o resultado em 
hexadecimal. 
Resp 
a) Passar 119 para binário: 1110111 
b) Formato de PF: 1110111 x 20 
c) Ajustar F para ser normalizado e expoente de acordo. Expoente + 7 
d) Campos do formato: 
Sn = 1 (número é negativo) 
Se = 0 (expoente é positivo) 
E = 0111 (valor 7 com 4 bits) 
 F = 1110111000 (completa com zeros o campo de 10 bits) 
Resultado dentro do formato indicado: 
 1 1110111000 0 0111 
 Sn F SE E 
 
4. Considere o valor em hexadecimal: C406, que expressa a representação em ponto 
flutuante de um determinado número. Considerando que esta representação usa o 
formato a seguir, calcule qual é o valor decimal desse número. 
Sn F Se E 
 1 bit 9 bits 1 bit 5 bits 
Base de representação: 2 
Mantissa (Fração) – F - normalizada 
Resp: 
a) converte-se valor hexadecimal para binário: C406 = 1100 0100 0000 0110 
b) Enquadra-se os bits no formato indicado 
 Sn F Se E 
1 100010000 0 00110 
 1 bit 9 bits 1 bit 5 bits 
c) O número será negativo (bit 1 de sinal) e o valor é: 
 
N = - 0,100010000 x 2+6 (sinal expoente é 0 (+) e valor 110 = 610 
N = - 1000102 (valor inteiro, pois multiplicou-se por 26 – andou a vírgula 6 casas 
para direita) 
 N = - 3410 
5. O que significa a sigla IEEE 754 e para que serve? 
Resp: É a sigla de um padrão de formato e características de representação de 
números em computadores em Ponto Flutuante. Foi definida sobre o patrocínio do 
IEEE _ Instituto de Engenheiros, Eletricistas e Eletrônicos, uma organização para fins 
científicos. 
Vem servindo para que a maioria dos fabricantes adotem um padrão único (nem todos 
seguem) de representação em ponto flutuante e assim, dar maior rapidez a 
transferência de dados entre máquinas diferentes 
 
6. Faça uma análise do limite de representação de dois tipos de representação de dados 
numéricos (S/M e Ponto Flutuante). Para esta análise, considere um sistema com palavra de 
16 bits e, para ponto flutuante, um expoente cujos valores são representados com 5 bits. 
Resp: 
Em Sinal e Magnitude, os números seriam representados com 1 bit de sinal e 15 bits para 
magnitude. Considerando apenas números inteiros, a faixa de representação seria: 
- 215 – 1 a + 215 – 1 ou – 32 78410 a -3278310 
 
Em ponto flutuante, o formato compreende sempre 1 bit para sinal do número e 1 para 
sinal expoente. Os restantes são divididos entre Fração e valor do Expoente, sendo bem 
mais para Fração (indica a precisão do número) do que expoente. No caso, já foi definido 
que expoente tem 5 bits, sobrando 9 para Fração (total de 16 bits) 
A faixa de representação será muito muito maior que a de S/M, pois o expoente pode ser 
positivo ou negativo e cujo valor de expoente tendo 5 bits, irá de -31 a +31. 
 
- 0,99999 x 2+ ou – 31 até + 0, 99999 x 2+ ou - 31 
7. Considere que um determinado processador utiliza o método seqüencial de execução de 
instruções, isto é, uma instrução somente inicia sua execução após o término total da 
execução da anterior e que este processador executa um ciclo de instrução completo em 4 
nanosegundos. Caso se desejasse construir um outro processador que empregasse o 
método “pipelining” de execução de instruções, quantos estágios ele deveria ter para que 
se pudesse obter a cada nanosegundo o término do ciclo de uma instrução (considere que 
todos os estágios terão tempos iguais de duração)? 
Resp: Ele deveria ter 4 estágios, cada um com 1 ns de duração para se ter uma instrução 
terminando a cada ns 
8. Quando o Pentium 4 foi lançado em 2001, os testes iniciais mostraram um desempenho 
pior que seu antecessor Pentium III, cuja causa foi atribuída a um pipeline muito longo. 
Os projetistas tomaram o pipeline de 12 estágios do Pentium III e o fatiaram mais ainda, 
sendo que cada estágio trabalha muito pouco mas permite ao processador operar com 
clocks muito altos. 
(Retirado e adaptado de: < http://arstechnica.com/features/2004/07/pentium-2/1/>. Acesso em 
27/10/2015). 
Considerando que o tempo de execução de um pipeline é dado por 
 
 T = m * P + (n – 1) * P 
e considerando a descrição acima, qual é o tempo de execução (T) para 11 (onze) 
instruções na entrada percorrendo os 20 estágios do Pipeline do Pentium 4, no qual 
cada estágio possui tempo gasto com valor igual a 1ns? 
Resp: n = 11 (quantidade de instruções); m = 20 (quantidade de estágios) e P = 1 (tempo) 
T = 20 * 1 + (11 – 1) * 1 = 20 + 10 = 30 ns 
9. Descreva os métodos utilizados para projetar e operar a Unidade de Controle (UC) 
de um Processador. 
Resp: A UC pode executar as instruções de dois modos (diretamente por hardware ou por 
microprograma). Além disso, a realização do ciclo de cada instrução pode ser feita de 
forma sequencial (uma instrução só inicia execução depois da anterior terminar) ou por 
pipeline, quando pode ocorrer de haver diversas instruções sendo executadas, embora 
cada uma em um estágio diferente do ciclo de instrução. 
 
10. O que se entende por um “estágio” durante a execução de processamento do tipo 
pipeline? 
Resp: é uma atividade individual de execução, uma parte da execução que é realizada 
individualmente. Por exemplo, a execução do cilo de instruções d eum determinado 
processador pode ter um estágio de busca da instrução. Ele é reposnsável por interpretar o 
endereço contido no CI e dar os passos necessários para localizar a instrução e trazer uma 
cópia para o processador. 
11. O que você entende por conflito de uso de barramento durante a execução de 
instruções com pipeline? 
Resp: havendo um único barramento de acesso a memória em um sistema com pipeline, não 
poderá haver dois acessos asimultâneos, pois o barramento não permite tráfego de mais de 
um dado de cada vez. Se, por exemplo, acontecer um instante de tempo em que umainstrução está no estágio de busca e outra irá entrar no estágio de buscar operandos (ou 
escrever resultado), esta última terá que esperar acabar a primeira com usso do barramento 
para ser executado o estágio. 
12. Cite um requisito importante para implementação mais eficiente de processamento 
com pipeline. 
Resp: que todos os estágios tenham duração a mais próxima possível da igualdade entre eles. 
Que haja uma boa quantidade de estágios, de modo a acelerar a passagem de um para outro 
(sendo muitos estágios, haverá pouca atividade em cada um). 
13. Descreva sucintamente como funciona a operação de somar na unidade de PF a 
seguir, considerando que o processamento se realiza com uso intensivo de pipeline. 
 
 
Resp: Tem-se, por exemplo, dois valores N1 = +M1 * B+E1 e N2 = + M2 * B+E2 e se deseja 
executar a operação de somar N1 + N2. 
a) Como os expoentes devem ser iguais em valor (só é possível somar duas potências se 
expoentes forem iguais) e supondo (para exemplo) que E1 <E2, tipo E1 = 13 e E2 = 16, 
então, E1 e E2 são armazenados nos latch correspondentes a cada um, assim como M1 
e M2. 
b) Em seguida, iguala-se os valores de E1 com E2 (por exemplo, ambos ficam iguais a 16); 
E1 cresce 3 unidades) – isso acontece no 1º estágio do pipeline e o expoente fica E; e 
para que os números não fiquem diferentes, a mantissa (ou fração) M1 é dividida por 
23; a vírgula de M1 anda 3 casas para a esquerda – isso acontece no pipeline. 
c) Os resultados de M1 e M2 (não se alterou) são passados para o latch seguinte (mais 
abaixo) e E (valor único agora (no exemplo é 16) vai para o latch correspondente 
abaixo. 
d) No pipeline seguinte ocorre a soma das mantissas (frações), e o resultado, M, vai para 
o latch seguinte, abaixo; enquanto que o expoente, E, segue para o latch seguinte mais 
abaixo; 
e) Finalmente ocorre a normalização do resultado no pipeline seguinte, ou seja, a virgula 
de M é deslocada para que o 1º algarismo seguinte a ela ser diferente de zero e E é 
ajustado correspondentemente. E os novos valores de E e M aparecem nos últimos 
latch. 
 
14. Uma técnica de hardware permite que o processador (UCP-Unidade Central de 
Processamento) execute partes diferentes de diferentes instruções de forma paralela. Nessa 
técnica, as instruções são divididas em etapas e as instruções entram uma por vez no sistema 
de processamento, que processa simultaneamente as diferentes partes das instruções. Como 
essa técnica é denominada? 
Resp: Pipeline 
 
15. Todo processador possui um conjunto de dispositivos, cada um com sua função específica 
no processamento das instruções. Há uma unidade que é acionada pelo decodificador de 
instruções e emite os sinais para a ULA executar a devida operação; ela também emite os 
sinais que irão acionar a busca dos dados que a ULA precisa para executar a referida operação. 
Qual é este dispositivo? 
Resp: Trata-se da Unidade de Controle

Outros materiais