·

Sistemas de Informação ·

Linguagens de Programação

· 2022/1

Send your question to AI and receive an answer instantly

Ask Question

Preview text

Considere a Figura abaixo para a próximas questões 1. Explique como ficaria a implementação em hardware da instrução JAL. Explique como ficariam os sinais de controle e desenhe na Figura os componentes que precisam ser adicionados e onde eles entrariam no projeto do circuito do processador MIPS. 2. Explique a finalidade do módulo com nome Shift Left 2, e em quais instruções ele é utilizado. 3. Explique qual operação é feita na ULA que resulta no bit “Zero” que sai da ULA e em qual instrução ele é utilizado. 4. Explique o que é pipeline e porque os processadores utilizam desta técnica. a. Discorra sobre os problemas que precisam ser tratados para o pipeline funcionar corretamente. b. Explique porque é difícil implementar o pipeline em uma arquitetura de conjunto de instruções complexas. 5. Considere a memória cache com esquema de mapeamento direto. Mostre no quadro abaixo como ficará a memória cache com as seguinte sequência de acessos a memória: 02 06 05 11 09 03 12 07 03. Escreva o histórico dos dados mapeados na cache na coluna DATA. index V TAG DATA 00 0 01 1 01 mem[5] 10 1 00 mem[2] 11 0 6. Considere a Figura abaixo representando uma memória cache com mapeamento associativo por conjuntos. a) Por que os 2 bits menos significativos do endereço de memória requisitado não entram no cálculo da posição da memória cache? b) Se o espaço para dados fosse de 64 bits, como ficaria a divisão dos bits do endereço? c) Explique o que precisaria ser inserido na Figura acima para implementar a política de substituição LRU (menos utilizado recentemente). d) Como ficaria para implementar uma política de substituição FIFO (primeiro a entrar, primeiro a sair). 7. Explique o que é o “dirty bit” e como ele favorece o ganho de desempenho na execução de um programa. Para as próximas questões de múltipla escolha, realize o desenvolvimento da questão para chegar na alternativa correta. 8. Considere uma cpu usando uma estrutura pipeline com 5 estágios (IF, ID, EX, MEM, WB) e com memórias de dados e de instruções separadas, sem mecanismo de data forwarding, escrita no banco de registradores na borda de subida do clock e leitura na borda de descida do clock e o conjunto de instruções a seguir: I1: lw $2, 100($5) I2: add $1, $2, $3 I3: sub $3, $2, $1 I4: sw $2, 50($1) I5: add $2, $3, $3 I6: sub $2, $2, $4 Quantos ciclos de clock são gastos para a execução deste código? (a) 30 (b) 17 (c) 16 (d) 11 (e) 10 9. Um processador tem a seguinte hierarquia de memória: uma cache com latência de acesso de 1ns e uma memória principal com latência de acesso de 100ns. O acesso à memória principal somente é realizado após o valor não ser encontrado na cache. A MAIOR taxa de cache miss aceitável para que o tempo médio de acesso à memória seja menor ou igual à 2ns é: (a) 10% (b) 5% (c) 50% (d) 1% (e) 2% 10. Assuma que um programa tem um profile de execução onde 85% das instruções são simples (tais como AND, XOR, ADD e BRANCH) e os 15% restantes são instruções complexas (tais como MUL e DIV). Adicionalmente, considere que as instruções simples precisam de 2 ciclos de máquina e as complexas precisam de 12 ciclos em uma máquina CISC (cada ciclo = 10 ns). Em uma máquina RISC, as instruções simples serão executadas em 1 ciclo, enquanto que as instruções complexas deverão ser simuladas por software necessitando, em média, 20 ciclos por instrução. Devido a sua simplicidade, o tempo de ciclo em uma máquina RISC é de 8 ns. Considere também que o programa precisou de 100.000.000 instruções para ser completado. Qual o tempo gasto em segundos na execução desse programa, respectivamente, nas máquinas CISC e RISC? A) 1 e 0,8 B) 3,5 e 3,08 C) 10 e 12,8 D) 8,5 e 1,5 E) 14 e 16,8 11. Um processador tem cinco estágios de pipeline. Suponha que cada uma das etapas do processador (busca, decodificação, execução, leitura ou escrita de dados em memória e escrita em registrador) seja executada em 5ns. O tempo total para que 5 instruções sejam executadas em pipeline, supondo que não haja dependência de dados entre as instruções é: A) 15ns B) 25ns C) 30ns D) 45ns E) 50ns 12. Um sistema de computador possui um mapa de memória de 4 Gbytes, usando endereçamento a byte e uma memória cache com organização de mapeamento direto. A cache tem capacidade de armazenar até 1.024 palavras de 32 bits provenientes do mapa de memória. Assuma que a cache sempre é escrita de forma atômica com quatro bytes vindos de um endereço de memória alinhado em uma fronteira de palavra de 32 bits, e que ela usa 1 bit de validade por linha de cache. Neste caso, as dimensões do rótulo (tag) da cache, do índice e o tamanho da cache são, respectivamente: a) 12 bits, 18 bits e 54.272 bits. b) 14 bits, 18 bits e 56.320 bits. c) 20 bits, 10 bits e 54.272 bits. d) 20 bits, 12 bits e 54.272 bits. e) 22 bits, 10 bits e 56.320 bits 13. O uso de memória caches é muito importante para o desempenho dos processadores atuais. Analise as afirmativas abaixo relativas ao uso de memórias caches. I. Em uma memória cache com mapeamento direto um bloco de memória pode ser colocado em qualquer posição (entrada) dessa memória cache. II. Na política de escrita write-back o bloco modificado é atualizado na memória principal apenas quando for substituído. III. O uso de associatividade nas memórias cache serve para reduzir o número de falhas por conflito. A análise permite concluir que A) as três afirmativas são falsas. B) as três afirmativas são verdadeiras. C) apenas a afirmativa I é verdadeira. D) apenas as afirmativas II e III são verdadeiras. E) apenas a afirmativa III é verdadeira