Baixe o app para aproveitar ainda mais
Prévia do material em texto
2018.2 - TÓPICOS AVANÇADOS EM ARQUITETURA DE COMPUTADORES Aspectos Básicos dos SC - vídeos 1 – 2 – 3 - 4) e Sistemas de Memória (partes 1e 2) – vídeos 5 - 6 QUESTIONÁRIO 1 GABARITO 1. Qual a vantagem do emprego de barramentos em microcomputadores? Resp: redução de espaço e de custos de fiação (e no início, rapidez de acesso) 2. Qual a influência da largura do BE-barramento de endereços e do BD – barramento de dados de um sistema de computação? Resp: a largura do BE influencia a capacidade da memória, enquanto a do BD influencia a capacidade de transferência de dados 3. Qual é o valor, em bits, da largura de uma barramento serial? Resp: 1 bit 4. Por que as arquiteturas mais recentes empregam mais de um nível de barramento em vez de um único (interligando todos os componentes) como antigamente? Resp: Devido a enorme diferença de velocidade entre dispositivos, compartilhando a mesma via e sendo poermitida apenas uma única transferência de cada vez. Dividindo os barramentos (grupos de dispositivos com velocidades próximas em cada um) melhora-se o desempenho. 5. Quais são os dispositivos principais da área de controle de um processador? Qual deles é importante para implementação do ciclo das instruções? Resp: Unidade de Controle (UC), o Contador de Instrução (CI), o Registrador de Instrução (RI), o Decodificador de Instruções (dec) e o Relógio (“clock”). O mais importante é o CI. 6. Por que as linguagens de programação possuem dois tipos de dados numéricos (inteiros e fracionários) Resp: para facilitar armazenamento e processamento de números diferentes e com tamanhos diferentes, especialmente números muito grandes ou muito pequenos 7. Qual é o dispositivo responsável pelo sincronização de eventos e que controla a cadência de execução das microoperações? Resp: o relógio (“clock”) 8. Um sistema de computação tem um processador cujo decodificador de instruções possui 7 bits de entrada e com sua pinagem é possível endereçar, na MP, um máximo de 128M endereços. Ele possui um conjunto de X instruções de máquina, todas de 2 operandos, sendo que o campo Operando 1 (Op 1) indica o endereço de um registrador e o segundo operando (Op 2) indica o endereço da memória principal (MP). Considerando que o RI (registrador de instrução) possui 40 bits de largura, calcule: a) Qual é o tamanho em bits de cada instrução? b) Quantos registradores o processador possui? c) Qual é o valor de X, considerando que seja o valor máximo? Resp: Decodificador de instruções com 7 bits entrada significa que o C.Op de cada instrução tem largura de 7 bits; significa também que ele pode ter até 27 = 128 saídas (uma para cada instrução ). a) O formato de cada instrução é composto de 3 partes: COD. OP – OPERANDO 1 – OPERANDO 2. Como o RI tem 40 bits de largura e ele é o registrador que armazena instruções, então, cada instrução tem 40 bits de largura b) Se a MP tem 128M endereços, então cada endereço tem 27 bits, pois N = 2E. Então, tem-se: E – 27 bits. Se o campo 2 é endereço de memória então ele tem 27 bits de largura. 7 bits 6 bits 27 bits Se a instrução tem no total 40 bits, sendo 7 para c. op e 27 para operando 2m sobram 40 – 27 – 7 = 6 bits para operando 1, que é endereço de registrador. Se endereço de reg = 6 bits então haverá 26 = 64 registradores. c) X é o valor do total de instruções, que já se calculou acima ser 128. 9. Processadores capazes de endereçar até 512GB de memória RAM, e cujas instruções de máquina podem ser armazenadas em qualquer parte da memória, possuem um CI com largura de L bits. Qual o valor de L? Resp: MP = 2BE e como MP = 512G, então é 239 e BE = 39 bits. Se cada endereço tem 39 bits e pode- se armazenar instruções em qualquer parte, o endereço de uma instrução deve ter 39 bits. Como o CI armazena endereço de instrução, então, CI = 39 bits. E L = 39 bits 10. Qual é a diferença entre as metodologias de compilação e de interpretação? Resp: O método de compilação realiza as 3 etapas (compilar, ligar e carregar/executar) separadamente, gerando arq separados em cada uma. Já o método de interpretação realiza as 3 etapas para CADA instrução, não gerando nenhum produto intermediário. A compilação fica mais rápida, depois do desenvolvimento e consequente geração do EXECUTÁVEL, não gastando mais tempo em compilar, ligar como acontecde sempre coma interpretação. 11.O que se entende da mensagem: “ENDEREÇO EXTERNO NÃO RESOLVIDO” Resp: são as referências que o compilador indica desconhecer onde se localiza. Por exemplo, o comando de impressão não é reconhecido pelo compilador, pois é um código comum. 12.Código binário (executável) é compartilhável entre processadores? Resp: Não. Ele é constituido de instruções de máquina e estas são (como o nome indica) específicas de cada família de processadores. 13. Quais são os requisitos fundamentais de um sistema de memória? Resp: • Operações que podem ser realizadas: leitura e escrita • Organização: em N partes iguais e fixas Cod Op Op 1-Regis Op 2- mem • Endereçamento: cada parte é identificada por um número, seu endereço. A largura do endereço define a capacidade máxima de armazenamento (quantidade de endereços). 14. 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. Para esse modelo de processador, o barramento opera à velocidade de 1 GHz, e largura de dados de 16 bits em cada direção. Sabendo que o HyperTransport transfere duas vezes a quantidade de dados a cada ciclo de clock, qual é a Taxa de Transferência em bytes em cada direção? Resp: Taxa T = V x L bps (bits por seg). A V = 1 GHz ou 1 Gbps/fio e a L = 16 bits. T = 1 G x 16 x 2 (porque transfere 2 bits por pulso de relógio (“clock”) = 32 000 bps Como 1 B (byte) = 8 b (bits), então, 32 000 bps = 4 000 Bps 15. Um determinado sistema de computação é inicialmente implementado com uma memória principal (RAM) com 2GB e um processador de núcleo simples, operando na velocidade de 2,8GHz. O sistema possui uma arquitetura clássica, conhecida como “Arquitetura von Newmann”, com unidade de cálculo (ULA), registradores de dados; estes servem para armazenar dados de entrada (registrador- ULA) e dados de saída de um processamento (ULA registrador). Considere a operação normal desta máquina, supondo que carregar o conteúdo dos registradores de entrada na ULA leve 8 ns, executar a operação na ULA demore 12 ns e armazenar o resultado de volta no registrador de saída demore mais 20 ns. Qual é a taxa de operação máxima, em MIPS (milhões de operações por segundo), que essa máquina é capaz de alcançar, sabendo-se que executa uma instrução de cada vez? Resp:Cada operação gasta: 12 ns + 16 ns + 12 ns = 40 ns ou 40 x 10-9 seg. (é necessário converter para seg, já que a resposta é x instruções POR SEG) Quantas operações em UM segundo? O total de operações é obtido da regra de três. 1 instrução----------------40 *10-9 seg X instruções-------------- 1 seg. Nesse caso, conforme a regra de três, x = 1 / 40 * 10-9 1 por 40 x 10-9 é igual a 1 / 4 x 10-8 , que é igual a 0,25 x 108 , pois 10-8 no denominador é igual a 108 no numerador. Como 106 = 1 milhão, multiplica-se 0,25 por 102 (pois 102 x 106 = 108) e tem-se 25 x 106 ou 25 milhões instruções por segundo ou 25 MIPS 16. Um conjunto de instruções de máquina de um sistema de computação é definido em projeto do fabricante do processador, de modo a possuirinstruçõ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. Qual é a parte da instrução cuja largura em bits determina o limite máximo de instruções de máquina de um processador? 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? Resp: 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. A saída do RI (parte do C.Op. é conectada ao decodificador d einstrução, para, justamente, ser determinada qual operação será executada. 17. Considerando as características e operações de microprocessadores, conforme verificado em arquiteturas de computadores, julgue as seguintes afirmações: * o projeto de um microprocessador define que seu relógio (clock) opera com frequência de 2 GHz; * nesse microcomputador o acesso à memória gasta dois ciclos (dois pulsos). Quantos acessos são realizados à memória por segundo? Resp: o relógio é gerador de 2GHz ou 2G pulsos por seg ou 2 bilhões de pulsos/seg. Se cada acesso gasta 2 pulsos, então, a quantidade de acessos é 2 bilhões / 2 = 1 bilhão acessos por segundo. 18. Porque a MP transfere dados para a Cache em blocos e esta transfere dados para os registradores do processador dado por dado? Resp: Devido ao princípio da localidade e para aproveitar a diferença de tempos de transferência. Como a MP é mais lenta, envia-se para a Cache um bloco com o dado desejado e os dados que deverão ser usados em seguida, ganhando-se tempo, em vez de enviar um por um de forma lenta. 19. Quais são as relações matemáticas entre: a) 1 milisegundo para um nanosegundo b) 2,4 microsegundos = x milissegundos c) 2 Tera bytes = 2x giga bits Resp: 1 ms = 10-3 e 1 ns = 10-9 . Logo, a relação é de 10-3 / 10-9 = 106 ou 1 milhão. Milissegundo é 1 milhão de vezes maior que 1 nanoseg Como 1 miliseg = 1000 microseg ou 1 microseg = 10-3 miliseg, então, 2,4 microseg = 2,4 x 10-3 miliseg ou 0,0024 miliseg 1 T = 240 e 2T = 2 x 240 = 241 .......então: 241 = 2x .230 e, 2x = 241 / 230 = 211 .....x = 11 20. Considere um sistema de computação que possua dois tipos de memória: um rápido, de baixa capacidade (128 KB), com latência de 2 nseg, interligado ao processador e outro, mais lento, de maior capacidade (2 GB), com latência de 40 ns, interligada à memória rápida. Calcule o tempo médio de acesso do processador, considerando que o sistema tenha eficîência de 95 %. Resp: Se a eficiência da cache é 95%, então em cada 100 acessos, há 95 acertos (o dado é encontrado na cache) e 5 faltas (não é encontrado na cache e deve vir da MP, em um bloco, para depois ir para o processador) Tempo médio = ((95 x 2 ns) + (5 x 42)) / 100 = (190 + 210) / 100 = 400 / 100 = 4 ns 21. Por que o tempo de escrita em memórias Flash é muito maior que o tempo de leitura? Resp: Por que para se efetuar uma operação de escrita na Flash é preciso ANTES apagar o conteúdo existente na posição e só depois escrever o novo dado. A leitura é direta e, assim, muito mais ra´pida. 22. É possível que a taxa de transferência de um barramento serial seja maior que a referida Taxa em barramento paralelo? Mostre sua resposta com um exemplo prático. Cite exemplo de 2 barramentos seriais e dois paralelos. Resp: Sem, desde que a veloc (frequência do relógio (“clock”) do barramento serial seja superior a taxa de transferência do paralelo (V x L) Exemplo: um barramento paralelo pode possuir V = 100MHz e L = 8 bits. A taxa será 100M x 8 = 800Mbps Um barramento serial tem L = 1 bit e pode ter V = 900MHz. Sua taxa será 900M x 1 = 900Mbps, maior que a do paralelo. Já foi explicado que os barramentos paralelos terial perda de desempenho se a veloc aumentasse muito devido a frequentes repetições da mesma transferência em face de desalinhamentos. Exemplo de barramentos seriais: USB, PCIe, SATA Exemplo de barramentos paralelos: ISA, SCSI, AGP, PCI
Compartilhar