Anda di halaman 1dari 5

Arquitetura e Organização de Computadores

Prof. James Blayne Oliveira Reis

Francisco das Chagas Vieira Filho

Lista de Exercícios 2

Obs.: Para as questões a seguir, considere, como referência, a Microarquitetura IJVM Mic-1.

1) Descreva, resumidamente, de quais fatores depende o projeto do Nível da Microarquitetura.

R.

Depende da arquitetura do conjunto das instruções a serem implementadas, bem como dos objetivos de custo e performance

2) Esboce um diagrama e explique o que ´e e quais os passos do ciclo de Von Neumman.

Arquitetura e Organização de Computadores Prof. James Blayne Oliveira Reis Francisco das Chagas Vieira Filho Lista
  • 1. A unidade de controle busca a próxima instrução do programa na memória principal;

  • 2. O contador de programa é usado pela unidade de controle para determinar onde a instrução está

localizada;

  • 3. A instrução é decodificada para uma linguagem que a unidade lógica aritmética possa entender;

  • 4. Os operandos de dados requeridos para executar a instrução são carregados da memória e

colocados em registradores;

  • 5. A unidade lógica aritmética executa a instrução e coloca os resultados em registradores ou na

memória.

R.

3) Qual a composição básica e quais as funcionalidades dos elementos que formam o Mic-1 (Figura 2)?

R.

Basicamente é composta de um caminho de dados (parte operativa) e uma unidade de controle. A parte operativa executa as operações elementares sobre os dados e a unidade de controle coordena e controla a parte operativa.

4) Um registrador pode ser lido e escrito no mesmo ciclo de clock sem produzir lixo? Por que?

R.

Sim, contanto que o tempo do ciclo do clock contemple a somatória dos subciclos implícitos do caminho de dados: Δw+Δx+Δy+Δz.

5) Cite vantagens e desvantagens da integra¸c˜ao das mem´orias de programa e dados ao circuito integrado do microprocessador.

R.

Vantagens:

Reduz o número de pinos do encapsulamento;

Reduz os custos com componentes externos;

Diminui as dimensões da montagem;

Simplifica o circuito de aplicação; Desvantagens:

Aumenta o curto do μC;

Limita a complexidade do programa embarcado;

Limita o montante de dados manipuláveis;

6) Descreva o que ocorre durante cada subciclo em um ciclo do caminho de dados.

R.

 

Δw: Os sinais de controle são ajustados; Δx: Os registradores são carregados no barramento; Δy: Operação da ULA e deslocador; Δz: Os resultados se propagam ao longo do barramento C de volta aos registradores.

7) Um chip comum ´e um somador de 8 bits. Quatro desses chips podem ser conectados para

formar um somador de 64 bits.

Quantos pinos vocˆe espera que tenha o chip do somador de

8 bits?

Por quˆe?

R.

Como são 8 bits, teremos 8 pinos para a saída que representa cada bit já somado, sabemos que a soma ocorre bit a bit, logo deve haver o dobro de entradas que de saídas, portanto 16 entradas. Ademais sabemos que os chips podem ser ligados em cadeia, devem existir então pinos para vai 1 de entrada e de saída, 2 pinos. Somando o total de pinos mencionados 8+16+2=26 pinos para um somador de 8bits.

8) Cite todos os pares de registradores do MIC-1 para tratar dados, endereços e microinstruções. Diferencie-os.

R.

MAR e MDR são responsáveis pelo registro de endereços e dados respectivamente; PC e MBR são responsáveis por identificar e registrar as instruções respectivamente; SP e TOS são responsáveis pela movimentação ao logo da pilha de dados;

LV e CPP são responsáveis por apontar para variáveis locais e constantes respectivamente; OPC e H são registradores temporários para armazenar o valor do registrador PC e o segundo operando da ULA respectivamente.

9) Qual o objetivo de uma micro instrução? Descreva a função dos sinais que compõem uma palavra de controle (micro instrução)?

R.

O objetivo da microinstrução é destinar um comando ou palavra de controle a ser implementada pelo microcontrolador. As funções dos sinais seguem:

Escrita nos registradores: 9 vias; Leitura dos registradores: 9 vias; Controle da ULA e do Deslocador: 8 vias; Leitura/escrita da Memória principal via MAR/MDR: 2 vias; Busca na Memória principal via PC/BMR: 1 via;

10) O fato de o MAR trabalhar com palavras enquanto a memória física trabalha com bytes é suportado por um artifício muito interessante. Explique.

R.

Quando o MAR é colocado no barramento de endereços, seus 32 bits não são mapeados diretamente para as 32 linhas do endereço, 0-31. Em vez disso, 0 bit 0 do MAR é ligado à linha 2 do barramento de endereço, o bit 1 do MAR é ligado à linha 3 do barramento de endereço e assim por diante. Os 2 bits superiores do MAR são descartados, visto que só são necessários para endereços de palavra acima de 2 32 , nenhum dos quais é legal para nossa máquina de 4GB. Usando esse mapeamento, quando MAR é 1, o endereço 4 é colocado no barramento; quando MAR é 2, o endereço 8 é colocado no barramento e assim por diante.

11) Como a arquitetura IJVM divide a memória? Caracterize cada uma das partes.

F0

F1

ENA

ENB

INVA

INC

FUNÇÃO

0

 

1

 
  • 1 A

    • 0 0

0

   

0

 

0

 
  • 1 B

    • 1 0

0

   

0

 

1

 
  • 1 ¯A

    • 0 0

1

   

1

 

1

 
  • 0 B¯

    • 1 0

0

   

1

 

1

 
  • 1 A + B

    • 1 0

0

   

1

 

1

 
  • 1 1

0

 
  • 1 A + B + 1

1

 

1

 
  • 1 A + 1

    • 0 1

0

   

1

 

0

 
  • 1 B + 1

    • 1 1

0

   

1

 

1

 
  • 1 B A

    • 1 1

1

   

1

 

0

 
  • 1 B 1

    • 1 0

1

   

1

 

1

 
  • 1 A

    • 0 1

1

   

0

 

1

 
  • 1 0

0

 
  • 0 A AND B

0

 

1

 
  • 1 0

0

 
  • 1 A OR B

0

 
  • 1 0

0

 
  • 0 0

 

0

0

 
  • 1 0

0

 
  • 0 1

 

1

0

 

0

 
  • 1 1

    • 0 0

1

   

Tabela 1: Funções úteis da ULA

LV e CPP são responsáveis por apontar para variáveis locais e constantes respectivamente; OPC e H

Figura 1: ULA de 1 bit

R. A IJVM divide a memória em:  Pool de constantes:  o Não pode ser
R. A IJVM divide a memória em:  Pool de constantes:  o Não pode ser

R.

A IJVM divide a memória em:

Pool de constantes:

o Não pode ser escrita pelos programas IJVM; o Contém constantes, strings e ponteiros para endereços de memória; o O registrador CPP (Constant pool pointer) aponta para a primeira palavra do pool de constantes. O quadro de Variáveis Locais:

o No início guarda valores dos parâmetros (argumentos) do procedimento chamado; o O registrador LV contém o endereço da primeira posição do quadro de variáveis locais.

A pilha de Operandos

o Fica imediatamente acima do quadro de variáveis locais; o O registrador SP. A Área do procedimento:

o Região de memória que armazena o programa; o O registrador PC (Program Counter) aponta para o endereço da instrução que deve ser buscada em seguida. Obs. CPP, LV e SP apontam para palavras (4 bytes cada palavra); PC aponta para bytes (cada instrução ocupa 1byte).

12) Na Figura 2 o campo da microinstrução que controla o acesso ao barramento B está codificado em 4 bits. Mas o campo do barramento C é controlado por um mapa de bits (cada sinal de controle é representado por um bit da microinstrução). Explique por quê.

R.

O mapeamento bit-a-bit dos sinais de controle do barramento C na memória de controle é desejável pois permite que uma microinstrução escreva um dado valor em mais de um registrador ao mesmo tempo; Por outro lado, o mesmo não é verdadeiro para os sinais de controle do barramento B; A seleção de mais de um registrador ao mesmo tempo geraria conflito e possivelmente dano físico aos componentes. Uma boa solução para isso é fazer com que o controle dos sinais de escrita do barramento B seja intermediada por um decodificador capaz de endereça-los individualmente. Neste caso, poderia empregar um decodificador comercial do tipo 4 para 16.

13) A Tabela 1 mostra uma maneira de fazer com que A apareça na saída da ULA. Sabendo que cada uma das 32 ULA de 1 bit é implementado conforme a Figura 1, determine outra combinação binária que desempenhe a mesma função.

14)

Com base no diagrama da Figura 1, demonstre qual função a ULA deve desempenhar quando:

F0

F1

ENA

ENB

INVA

INC

1

1

0

1

1

1

R.

B+1

15) Após implementar o MIC-1 em laboratório (Figura 2), você mede os tempos de propagação do circuito e averígua que o mesmo gasta 1ns para carregar o MIR, 1ns para habilitar um registrador para que este coloque seu conteúdo no barramento B, 3ns aguardando a operação da ULA e do deslocador, e 1ns para que os resultados se propaguem de volta aos registradores. Se o intervalo alto do clock não pode ser inferior a 2ns para que o sequenciador funcione corretamente, determine a máxima frequência de clock com que seu microprocessador será capaz de operar (despreze os tempos de transição de borda). Justifique sua resposta através de um diagrama de tempo indicando cada intervalo da temporização.

Obs: consulte o microprograma para o MIC-1 no livro-texto (Tanenbaum fig. 4.17)