Baixe o app para aproveitar ainda mais
Prévia do material em texto
Universidade Federal do Maranhão – UFMA ˥ Centro de Ciências Exatas e Tecnologia - CCET Departamento de Engenharia de Eletricidade Av. dos Portugueses, s/no - Campus Universitário do Bacanga 65080-040 - São Luís - MA - Brasil N = NOTA:Nome: _____________________________________ Código: _____________________ Data: _____/_____/_____ Introdução a Arquitetura de Computadores Prof. Denivaldo Lopes Prova I Forneça uma definição para (Pontos: 1,5): Computador de programa armazenado. Arquitetura, Organização, Estrutura e Função de computadores. Microprocessador e microcontrolador. Linhas de um barramento quanto à função. Speed-up e Eficiência. Liste e defina duas técnicas para lidar com múltiplas interrupções. (Pontos: 1,5) Um programa de benchmark é executado em um processador de P MHz. O programa executado consiste de S execuções de instruções, com a mistura de instruções e quantidade de ciclos de clock apresentados na Tabela 1. Pontos (2,0) Tabela 1. Quantidades de instruções e ciclos de clock por instrução Tipo de instrução Quantidade de instruções Ciclos de clock por instrução Aritmética de inteiros 30.000 1 Transferência de dados 20.000 2 Ponto flutuante S – 70.000 2 Transferência de controle 20.000 2 Onde: P = N x 10 S = N x 100.000 Determine o CPI efetivo, a taxa de MIPS e o tempo de execução para esse programa. A estrutura do computador IAS e seu conjunto de instruções são fornecidos na Figura 1 e na Tabela 2, respectivamente. Considere que A=A(1), A(2), ..., A(50) e B=B(1), B(2), ...,B(50) sejam dois vetores (arrays unidimensionais) compostos de 50 números em cada um, que são subtraídos para formar um array C tal que C(i)= A(i) - B(i) para i=1,2,3,...,50. Usando o conjunto de instruções do IAS, escreva um programa para resolver esse problema. (Pontos: 2,5) O processador da Figura 2 possui um conjunto básico de código em linguagem assembly, linguagem de máquina e micro-código dado na Tabela 3. Escreva um programa em assembly, depois forneça o código de máquina, que execute as seguintes operações de alto nível : (Pontos: 2,5) S = 5; T = S + 2; U = 8; P = U + 4; W = P – T; Boa sorte! Figura 1. Organização do IAS Tabela 2. Conjunto de instruções do IAS Figura 2. Processador simples Tabela 3. Conjunto de instruções para o processador simples da Figura 2. Código Assembly Código de Máquina Micro-código Comentário LOAD ACC, <const> <const> 0 EE 91 ACC ← <const> ADD ACC, <const> <const> 1 EE 41 ACC ← ACC + <const> SUB ACC, <const> <const> 2 ED A1 ACC ← ACC - <const> MOVE <address>, ACC <address> 3 44 01 <address> ← ACC HLT 04 5E 35 Parada ADDM ACC, <address> <address> 6 2E 49 ACC ← ACC + <address> SUBM ACC, <address> <address> 7 E4 00 ACC ← ACC - <address> CP (Contador de Programa) MP (Memória de Programa) MC (Memória de Controle) AC (Acumulador) 4 4 4 MUX ULA (Unidade Lógica e Aritmética) RAM 4 4 4 4 4 4 Clock STACK 4 MUX 4 4
Compartilhar