You are on page 1of 12

UNIVERSIDADE DA BEIRA INTERIOR

DEPARTAMENTO DE ELECTROMECANICA
RELATORIO DO 1º TRABALHO

Arquitet
uras
Aritméti
Ano Letivo: 2017/2018

cas Curso: Eng. Eletrotécnica e de Computadores


Disciplina: Microprocessadores
Controla Grupo nº: 08

dores
Integrantes:
 César R.A. Bumba / a40387
 Luzolo João / a40388
1º Ano da Licenciatura

Docente
Prof. Dr. ANTÓNIO PINHEIRO

Índice
1. Introdução............................................................................................................................3
2. ALU.....................................................................................................................................4
3. Controlador..........................................................................................................................7
4. Considerações finais...........................................................................................................12

Covilhã aos 08 de junho de 2018


Covilhã aos 08 de junho de 2018
1. Introdução
O presente trabalho teve como objetivo elaboração construção da Arquitetura
ALU em associação com o CONTROLADOR.
A ALU que tem como significa Unidade Logica e Aritmética, mas neste trabalho
simplesmente desenvolvemos a parte aritmética, em que circuito somador/subtrator de
números inteiros de 4 bits com sinal.
O CONTROLADOR é um circuito com a finalidade de controlar um
determinado sistema ou máquina, por intermedio de um conjunto de instruções
integradas (contidas no mesmo).
O circuito implementado deve fazer diferentes operações Aritméticas e Lógicas
entre duas palavras binárias. Essas operações são feitas através de ALU (Unidade
Lógica Aritmética).
Em seguida, iremos projetar uma Arquitetura que será composta por 4 registros
de armazenamento de 4 bits, para guardar dados das operações efetuadas através da
ALU.
E no final implementar um Controlador Digital para estabelecer sequências temporais
de acordo com as entradas de controlo, em relação ao que se encontra no Fluxograma.
2. ALU
Relativamente a ALU tínhamos duas variáveis controladoras que definiam as
operações a serem executadas.

Ainda em associação a ALU tivemos duas Box compostas por quatro


Multiplexas para fazerem a seleção das palavras que estarão na entrada da ALU, uma
Box com as quatros Flags (Falg Cin, Zero, Over flow, Sinal), uma Box com os
Registros (R3, R2, R1, R0).

Fcin
Esquema da ALU:

Multiplexas

REGISTROS:
As FLAGS:
3. Controlador

Neste caso foi nos dado uma função que executa duas operações dependendo de
uma variável de decisão:

F ( x)=
{ R3 R2=R3 R2 + R1 R 0 , x=0
R1 R0=R1 R0 +33 ,∧x =1

Deste modo, criamos o Fluxograma no intuito de orientar as ideias para a


construção do construção do mesmo controlador, tendo em conta as entradas da ALU.
Fluxograma
INIC.

I1,WR,WF D1,WR,WF

Cin Cin

D0,I1,WR D1,D0,I1,WR

D0,I1,WR D1,D0,S0,

D0,I1,WR

Uma vez construído o Fluxograma, partimos assim para elaboração do


controlador tendo em conta os conceitos teóricos:
Obtivemos:

A princípio para executar todas as operações de acordo a função dada, tivemos


no mino sete estados de execução e um estado livre (recomendado pelo professor), que
no MULTSIM utilizamos os Flip-flops.
Respetivamente ativação do controlador, a ideia central era fazer um ciclo de a
ativação, tínhamos a noção de que, em cada CLOCK que dermos só um único estado
deveria ficar ativo, razão pela qual pusemos todas as saídas dos estados numa porta
NOR tendo em conta que, se uma todos os estados tiverem a 0 a saída tinha de ser 1,
caso contrário a saída seria 0, e para garantir a continuidade da ativação colocamos a
entrada de uma porta OR os dois estados finais, no intuito de obtermos 1 quando um
deles for 1, caso contrário será 0, assim numa porta OR ligávamos na entrada as saída
da NOR e OR, em essa saída formava assim o INIC, que serviria de entrada ao primeiro
estado.
Depois de tudo obtivemos seguinte resultado:
Teste da Arquitetura e do Controlador:
ES X I1 I0 D1 D0 S1 S0 FC WR WF OPERA R3 R2 R1 R0
T
0 1 0 0 0 0 0 0 0 0 0 ---- 0000 0000 0000 0000
4 1 1 0 0 0 0 0 0 1 1 R0=R0+1 0000 0000 0000 0001
6 1 1 0 0 1 0 0 0 1 0 R1=R0+1 0000 0000 0001 0001
7 1 1 0 0 1 0 0 0 1 0 R1=R0+1 0000 0000 0010 0001
0 1 0 0 0 0 0 0 0 0 0 ---- 0000 0000 0010 0001
4 1 1 0 0 0 0 0 0 1 1 R0=R0+1 0000 0000 0010 0010
6 1 1 0 0 1 0 0 0 1 0 R1=R0+1 0000 0000 0011 0010
7 1 1 0 0 1 0 0 0 1 0 R1=R0+1 0000 0000 0100 0010
0 0 0 0 0 0 0 0 0 0 0 ---- 0000 0000 0100 0010
1 0 0 0 1 0 0 0 0 1 1 R2=R2+R0 0000 0010 0100 0010
3 0 0 0 1 1 0 1 0 1 0 R3=R3+R1 0100 0010 0100 0010
0 0 0 0 0 0 0 0 0 0 0 ---- 0100 0010 0100 0010

Teste do controlador:
R3 R2=R3 R2 + R1 R 0 X=0
R1 R 0=R1 R0 +33 X=1
Fizemos duas vezes a operação para x=1, em seguida uma vez a operação para
x=0.
4. Considerações finais
É de salientar que esse trabalho foi desenvolvido inteiramente no Multisim.
No âmbito da elaboração do presente trabalho conseguimos evoluir as nossas
capacidades de trabalho com o Multisim, conseguimos entender o funcionamento da
Unidade Logica e Aritmética, também aprendemos a desenvolver fluxogramas para
resolver um determinado problema envolvendo controladores.

You might also like