TCC Organização de Computadores I Turma :A1 Lista 3-GABARITO. 1. A figura abaixo mostra o diagrama da implementação para a UCP estudada em sala.

Documentos relacionados
Fundamentos de Arquiteturas de Computadores Turma :A1 Lista 3 Profa.: Simone Martins

Tiago Alves de Oliviera

Implementação da UCP. Construção do caminho de dados Controle Implementação monociclo. Organização de Computadores

SSC510 Arquitetura de Computadores 1ª AULA

Dispositivos de Entrada e Saída

Dispositivos de Entrada e Saída

ção de Computadores II

Organização e Arquitetura de Computadores I

2ª Lista de Exercícios de Arquitetura de Computadores

Procedimentos. Sistemas de Computação

Tecnólogo em Análise e Desenvolvimento de Sistemas. Sistemas Operacionais (SOP A2)

SSC0611 Arquitetura de Computadores

Periféricos possuem características diferentes. Periféricos são mais lentos que UCP e Memória Necessita-se de módulos de Entrada/Saída


Organização e Arquitetura de Computadores I

Problemas com Entrada e Saída

Dispositivos de Entrada e Saída

Organização de Computadores

Arquitetura de Computadores Unidade 2 Organização Funcional dos Sistemas de Computação tópico 2.3 Subsistemas de E/S

PROGRAMAÇÃO I. Introdução

Sistema de entrada e saída (E/S)- Módulos de E/S; tipos de operações de E/S

X Y Z A B C D

Válido Rótulo Bloco bits 8 bits 8 bits 8 bits

ARQUITETURA DE COMPUTADORES

1. A pastilha do processador Intel possui uma memória cache única para dados e instruções. Esse processador tem capacidade de 8 Kbytes e é

Barramento. Prof. Leonardo Barreto Campos 1

Sistemas Operacionais I

Algoritmos Computacionais

Arquitetura e Organização de Computadores

CPU. Funções: Componentes: Processamento; Controle. UC (Unidade de Controle); Registradores; ALU s, FPU s etc. Arquitetura de Computadores 3

2ª Lista de Exercícios de Arquitetura de Computadores

William Stallings Arquitetura e Organização de Computadores 8 a Edição

Solução Lista de Exercícios Processadores

Os textos nestas caixas foram adicionados pelo Prof. Joubert

AULA 03: FUNCIONAMENTO DE UM COMPUTADOR

Sistemas Operacionais. Entrada/Saída

Arquitetura de Computadores. Professor: Vilson Heck Junior (Material: Douglas Juliani)

1) Considere a situação atual da memória do sistema computacional abaixo discriminada.

DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO BACHARELADO EM INFORMÁTICA SISTEMAS OPERACIONAIS I 1 0 SEM/05 Teste 1 Unidade I DURAÇÃO: 50 MINUTOS

Organização e Arquitetura de Computadores I

Universidade Federal do Rio de Janeiro Bacharelado em Ciência da Computação. Arquitetura de Computadores I. Organização Básica do Computador

Parte I Multiprocessamento

Todo processador é constituído de circuitos capazes de realizar algumas operações primitivas:

É um sinal elétrico periódico que é utilizado para cadenciar todas as operações realizadas pelo processador.

2. A influência do tamanho da palavra

2. A influência do tamanho da palavra

PARTE II - CONJUNTO DE INSTRUÇÕES ARQUITETURA DE COMPUTADORES ANTONIO RAMOS DE CARVALHO JÚNIOR

4. Modelo de Programação do DLX Introdução

PCS-2529 Introdução aos Processadores. Prof. Dr. Paulo Sérgio Cugnasca

Aula 12: Memória: Barramentos e Registradores

ORGANIZAÇÃO DE COMPUTADORES CAPÍTULO 6: PROCESSADORES. Prof. Juliana Santiago Teixeira

AULA DE REVISÃO 3 ILP

Aula 03 - Concorrência. por Sediane Carmem Lunardi Hernandes

Microprocessadores I. Aula 6 Arquitetura do Microprocessador Pinagem e Diagrama de Temporização

Universidade de Santa Cruz do Sul UNISC Departamento de informática COMPILADORES. Introdução. Geovane Griesang

BARRAMENTO DO SISTEMA. Adão de Melo Neto

UCP: Construindo um Caminho de Dados (Parte III)

Sâmia Rodrigues Gorayeb. Arquitetura de Computadores Organização e Funcionamento

BARRAMENTOS. Adão de Melo Neto

Processador. Processador

Arquitetura e Organização de Computadores

Aula 09. Módulos de Entrada e Saída

ORGANIZAÇÃO DE COMPUTADORES

Sistemas Operacionais

AGT0001 Algoritmos Aula 01 O Computador

UFRJ IM - DCC. Sistemas Operacionais I. Unidade IV Gerência de Recursos Entrada e Saída. 02/12/2014 Prof. Valeria M. Bastos

Prof. Benito Piropo Da-Rin. Arquitetura, Organização e Hardware de Computadores - Prof. B. Piropo

UNIDADE CENTRAL DE PROCESSAMENTO FELIPE G. TORRES

Entrada e Saída e Dispositivos

Organização de computadores. Prof. Moisés Souto

Fundamentos de Sistemas Operacionais

Tópicos Avançados em Sistemas Computacionais: Infraestrutura de Hardware Aula 06

Organização de Computadores

Memória. Arquitetura de Von Neumann. Universidade do Vale do Rio dos Sinos Laboratório I Prof.ª Vera Alves 1 CPU. Unidade de controle ULA

MAC2166 Introdução à Computação Aula 1 Como Funciona um Computador

Conceitos básicos sobre computadores (continuação)

Expoente Mantissa Frac. UNIVERSIDADE FEDERAL FLUMINENSE INSTITUTO DE COMPUTAÇÃO DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO

Gerência de Dispositivos. Adão de Melo Neto

Sistemas Operacionais. Concorrência

Sistemas Operacionais. Sistema de entrada e Saída

Exercícios resolvidos (aula de 4 de Maio) Resolução:

UCP 8051 (parte 02) Professor Adão de Melo Neto

SSC0112 Organização de Computadores Digitais I

Sistemas Operacionais. Interrupção e Exceção

Prof. Antonio Almeida de Barros Jr. Prof. Antonio Almeida de Barros Junior

COMPUTADORES COM UM CONJUNTO REDUZIDO DE INSTRUÇÕES. Adão de Melo Neto

Unidade Central de Processamento UCP (CPU)

CONJUNTO DE INSTRUÇÕES

Organização Básica de Computadores. Organização Básica de Computadores. Organização Básica de Computadores. Organização Básica de Computadores

Aula 19: UCP: Construindo um Caminho de Dados (Parte III)

Sistemas de Entrada e Saída

Organização de Computadores 1

DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO BACHARELADO EM INFORMÁTICA SISTEMAS OPERACIONAIS I 2 0 SEM/05 Teste 1 Unidade I DURAÇÃO: 50 MINUTOS

Organização e Arquitetura de Computadores INTRODUÇÃO

SISTEMAS OPERACIONAIS ABERTOS Prof. Ricardo Rodrigues Barcelar

Introdução à Informática

Disciplina: Arquitetura de Computadores

Prof. Sandro Wambier

Sistemas Operacionais. Conceitos de Hardware

Sistema Computacional

Transcrição:

UNIVERSIDADE FEDERAL FLUMINENSE INSTITUTO DE COMPUTAÇÃO DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO TCC4.7-Organização Computadores I Turma :A Lista 3-GABARITO. A figura abaixo mostra o diagrama da implementação para a UCP estudada em sala. PC + Somador Resultado da UAL Registradores Somador P C Enreço leitura Instrução Memória Instruções A B C RegDst # #2 escrito Dado escrita EscReg D Reg # Reg #2 Extensão sinal Operação da UAL UAL fonte 3 Zero Resultado da UAL UAL DvC EscMem Memória UALParaReg dados Enreço Dado Dado a escrito LerMem a) Indique quais os bits da instrução vem estar conectados nas ligações A, B, C e D. Consultando a tabela instruções temos: A: bits 2 a 9 B: 8 a 6 C: 2 a D: 5 a b) Consire a instrução subi rega regb imediato. Esta instrução,quando executada, ve subtrair o valor imediato do conteúdo rega e armazenar o resultado em regb. O formato da instrução é: Bits 3-25 = Bits 24-22=código operação Bits 2-9=regA Bits 8-6=regB Bits 5-= valor imediato expresso em complemento a 2 Complete a tabela com o valor que os sinais controle vem ter (, ou X) para esta instrução, explicando suas escolhas: Instr. RegDst EscReg EscMem LerMem UAL fonte DvC UALParaReg subi rega regb imed.

RegDst tem que igual a porque os bits que indicam o registrador a escrito (regb) são os bits 8 a 6. EscReg tem que porque ve haver escrita no registrador regb. EscMem tem que porque a instrução não escreve na memória dados. LerMem tem que porque a instrução não lê da memória dados. UALfonte ve porque o valor a subtraído do conteúdo rega ve o conteúdo do valor imediato. DvC ve porque a próxima instrução a executada ve aquela que se encontra no enreço PC+. UALParaReg ve porque o valor a carregado no registrador a escrito regb ve a saída da UAL. 2. Consire o esquema pipeline mostrado para a arquitetura vista em sala aula, on temos 5 estágios pipeline: Busca (B), Decodificação/Leitura regs (DL),Execução da instrução (EX), Acesso à memória dados (MD), Escrita nos registradores (ER). Analise o trecho código abaixo e indique as instruções on porá existir conflito estrutural, ou controle ou dados, quando este código for executado. Suponha que a única maneira resolver os conflitos é atrasar a execução dos estágios através da inção instruções s. Indique o número instruções s que verão inidas para resolver cada conflito. addi 3 3 lw 3 4 addi 7 7 addi 3 3 beq 2 5 if addi 3 if addi addi 3 3 /* conflito dados porque lw posterior precisa do conteúdo do registrador 3 */ lw 3 4 /* conflito dados porque add posterior precisa do conteúdo do registrador 4 */ addi 7 7 addi 3 3 beq 2 5 if /* conflito dados e controle */ addi 3 if addi Inindo s para remover os conflitos: addi 3 3 lw 3 4-3 instruções s - 3 instruções s addi 7 7 addi 3 3 instrução beq 2 5 if addi 3-2 instruções s addi O código ve ficar com mostrado abaixo:

addi 3 3 lw 3 4 addi 7 7 addi 3 3 beq 4 addi 3 if addi 3. Explique o que são e como funcionam os processos compilação, montagem e ligação. Compilação: Processo que consiste na análise um programa escrito em linguagem alto nível (programa fonte) e sua tradução em um programa em linguagem montagem ou em linguagem máquina (programa objeto). Este processo é realizado pelo Compilador. A Análise feita pelo compilador consiste em 3 partes: - A análise léxica on o programa fonte é composto em seus elementos individuais (comandos, operadores, variáveis, etc), gerando erros se for encontrada alguma incorreção. - A análise sintática on são criadas as estruturas cada comando e verificação acordo com as regras gramaticais da linguagem. - A análise semântica on são verificadas as regras semânticas estáticas, pondo produzir mensagens erros. Após esta análise, se traduz o programa para linguagem montagem ou para linguagem máquina. Montagem: Processo que consiste em traduzir um programa em linguagem montagem (assembly) para seu equivalente escrito em linguagem máquina. Este processo é realizado pelo montador. Esta tradução consiste em substituir os códigos operação simbólicos por valores numéricos, nomes simbólicos enreços por valores numéricos e converter valores constantes para valores binários. Ligação: Processo on é feita a intificação chamadas a rotinas e respectiva conexão entre o código objeto principal e o código das rotinas. Este processo é executado pelo ligador. O ligador examina o código-objeto, procura referências externas não resolvidas e suas localizações nas bibliotecas substituindo a linha chamada pelo código da rotina e emitindo mensagem erro em caso não encontrar a rotina. 4. Consire os seguintes tipos interface E/S: por programa, por interrupção e por acesso direto à memória. a) Descreva, em termos gerais, a operação cada uma las. E/S por programa: O processador tem controle direto sobre a operação E/S, incluindo a tecção do estado do dispositivo, o envio comandos leitura ou escrita e transferência dados. Para realizar uma transferência dados, o processador envia um comando para o módulo E/S e fica monitorando o módulo para intificar o momento em que a transferência po realizada. Após tectar que o módulo está pronto, a transferência dados é realizada através do envio comandos leitura ou escrita em registradores do controlador do dispositivo E/S pelo processador. Se o processador for mais rápido que o módulo E/S, o procedimento realizado para intificar quando o módulo está pronto representa um sperdício tempo processamento.

E/S por interrupção: Neste caso, o processador envia um comando para o módulo E/S e continua a executar outras instruções, sendo interrompido pelo módulo quando ele estiver pronto para realizar a transferência dados, que é executada pelo processador através da obtenção dos dados da memória principal, em uma operação saída, e por armazenar dados na memória principal, em uma operação entrada. E/S por acesso direto à memória (DMA): Nesse caso a transferência dados entre o módulo E/S e a memória principal é feita diretamente sem envolver o processador. Existe um outro módulo nominado controlador DMA que realiza a transferência direta dados entre a memória e o módulo E/S. Quando o processador seja efetuar a transferência um bloco dados com um módulo E/S, ele envia um comando para o controlador DMA indicando o tipo operação a realizada (leitura ou escrita dados), enreço do módulo E/S envolvido, enreço memória para início da operação leitura ou escrita dados e número palavras a em lidas ou escritas. Depois enviar estas informações ao controlador DMA, o processador po continuar executando outras instruções. O controlador DMA executa a transferência todo o bloco dados e ao final envia um sinal interrupção ao processador, indicando que a transferência foi realizada. b) Consire um sistema on o número ciclos relógio para realizar uma operação por programa é igual a 4, o processador utiliza um relógio 5 MHZ para executar as instruções e nenhuma transferência dados po perdida. Determine o overhead -em termos fração tempo CPU consumida- que ocorre quando se utiliza a interface por programa para os seguintes dispositivos: b.) Um mouse que ve interrogado pelo sistema 3 vezes por segundo para garantir que nenhum movimento le seja perdido. Como o mouse ve interrogado 3 vezes por segundo e em cada atendimento são gastos 4 ciclos, teremos 2 ciclos sendo gastos em um segundo para realizar operações E/S por programa. A freqüência do relógio sta máquina é 5 MHZ, ou seja, 5 6 ciclos relógio são realizados em um segundo. O overhead é calculado como a razão do número ciclos utilizados em um segundo pelo método E/S por programa dividido pelo número total ciclos que são fornecidos em um segundo 2/(5 6 )=,24 %. b.2) Um disco flexível que transfere dados para o processador em blocos 6 bits e possui uma taxa transferência dados 5 KB/segundo. Como a taxa transferência é igual 5 KB/s e a unida transferência é 6 bits, ou seja, 2 bytes, temos que a taxa atendimento ve igual a 5 KB/2B=25 K vezes por segundo. Então ão gastos 25K 4 ciclos relógio em um segundo para realizar operações E/S por programa. O overhead é igual a 25 3 4/(5 6 )=2% b.3) Um disco rígido que transfere dados para o processador em blocos 6 bytes e possui uma taxa transferência 4MB/segundo. Como a taxa transferência é igual 4 MB/s e a unida transferência é 6 bytes, temos que a taxa atendimento ve igual a 4 MB/6B= 25 K vezes por segundo. Então ão gastos 25K 4 ciclos relógio em um segundo para realizar operações E/S por programa. O overhead é igual a 25 3 4/(5 6 )=2% c) Discuta a vantagem que a interface por interrupção possui em relação à interface por programa. Ilustre sua resposta calculando a fração tempo CPU consumida pelo disco rígido conforme scrito no item b.3 assumindo que o overhead cada transferência, incluindo a interrupção, é 5 ciclos relógio e que o disco está ativo em 5 % do tempo total em que a CPU está sendo utilizada. Porque a porcentagem do tempo que um dispositivo está ativo é importante para comparar as interfaces por programa e por interrupção? Como a taxa transferência do disco rígido é igual 4 MB/s e a unida transferência é 6 bytes, temos que a taxa atendimento ve igual a 4MB/6B=25 K vezes por segundo. Então ão gastos 25K 5 ciclos relógio em um segundo para realizar operações E/S por interrupção. Caso o dispositivo estivesse ativo todo o tempo, o overhead ia igual a 25 3 5 /(5 6 )=25% que é maior que o overhead da E/S por programa. Mas como o

dispositivo só está ativo 5% do tempo total, neste caso os ciclos relógio só ão utilizados quando o dispositivo interromper o processador, ou seja, o overhead á 25% 5% =,25%. A porcentagem do tempo que um dispositivo está ativo é importante para comparar estes dois métodos, porque no método por E/S por programa o processador é obrigado a gastar ciclos relógio para monitorar o dispositivo inpenntemente do fato ele estar sendo acionado ou não. No caso do método por interrupção, os ciclos só ão gastos quando o dispositivo estiver efetivamente sendo acionado para realizar transferência dados. Neste caso, obve que na operação por programa, cada tentativas em que o processador acessa o dispositivo apenas em 5 este estará disponível para transferir informações (5% ativo). Na operação interrupção, o processador apenas á interrompido quando o dispositivo E/S estiver em ativida. d) Consire agora outro cenário, on o disco rígido está sendo controlado por um controlador DMA, cada transferência entre o disco e a memória ocorre em blocos 8KB e ocorrem transferências em % do tempo total que a CPU está sendo utilizada. Calcule a fração tempo CPU que é consumida, caso necessite-se, em cada transferência, ciclos relógio do processador para inicializar o controlador DMA e o tratamento da interrupção gerada pela finalização da operação do controlador do DMA necessite 5 ciclos relógio do processador. Ignore qualquer impacto que possa ocorrer vido à contenção do barramento entre o processador e o controlador DMA. O número ciclos inicialização é igual a e interrupção é igual a 5. Logo o número total ciclos por operação DMA é igual a 5. Como scrito no item b.3, o disco possui uma taxa transferência 6 MB/s. Neste caso, são transferidos 8 KB por operação transferência dados, então cada operação DMA terá a duração 8KB/4 MB/s = 2-3 segundos. Se as transferências ocorrem % do tempo, teremos que o número ciclos gasto para transferência dados á 5 / (2-3 )=75 3 ciclos clock/s. O overhead á (75 3 ) /(5 6 )=,5 % 5. Descreva cinco principais características da arquitetura RISC e compare-as com a arquitetura CISC. RISC Pequeno número instruções linguagem máquina Instruções com tempos execução semelhantes e pequenos Todas as instruções possuem um único tamanho Operações lógicas e aritméticas são aplicadas a operandos que estejam somente nos registradores Passagem parâmetros para procedimentos é realizado preferencialmente através registradores CISC Gran número instruções linguagem máquina Pom existir instruções com tempo execução muito longo Instruções possuem tamanhos variáveis Operações lógicas e aritméticas pom aplicadas a operandos que estejam em registradores e na memória Passagem parâmetros é realizada através da memória