Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas

Unidade Lógica e Aritmética, Resumos de Lógica

O circuito integrado MSI 74181 é uma ULA de 4 bits que tem possibilidade de executar 16 operações aritméticas binárias e 16 operações lógicas. A figura 1.2 ...

Tipologia: Resumos

2022

Compartilhado em 07/11/2022

Amazonas
Amazonas 🇧🇷

4.4

(80)

224 documentos

1 / 9

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
EPUSP — PCS 2011/2305/2355 — Laboratório Digital
Unidade Lógica e Aritmética (2011) 1
RESUMO
Esta experiência tem por objetivo a familiarização com o funcionamento da Unidade Lógica e Aritmética
(ULA), especificamente o circuito integrado 74181, que executa 16 funções aritméticas e 16 funções
lógicas.
A parte experimental inclui o projeto, montagem e documentação de um circuito baseado na ULA 74181,
com a sequencia de operações determinada pelo conteúdo de uma memória de acesso aleatório (RAM), o
circuito integrado 74189.
1. PARTE TEÓRICA
1.1. Unidade Lógica e Aritmética - ULA
A Unidade Lógica e Aritmética (ULA) é um circuito combinatório responsável pela execução de somas,
subtrações e funções lógicas, em um sistema digital. Na figura 1.1 é mostrado um esquema simplificado
de uma ULA.
Figura 1.1 - Esquema Simplificado de uma ULA.
A operação que deve ser executada com os dados de entrada (A e B) é determinada pelos sinais de
controle (S) e o resultado é obtido na saída (F). A complexidade da ULA é proporcional à complexidade
do sistema em que será utilizada; assim, sistemas simples permitem o uso de ULAs simples e sistemas
sofisticados exigem ULAs sofisticadas.
Uma vez estabelecido o porte do sistema, existe também o compromisso entre velocidade e preço. Por
exemplo, as calculadoras eletrônicas exigem ULAs que permitem operações complexas, porém com
velocidade de operação baixa, reduzindo-se o custo; os computadores de grande porte exigem
velocidade de operação elevada, aumentando o custo da ULA.
Atualmente têm-se várias alternativas de circuitos integrados que incluem uma ULA. Entre elas estão o
74181, 74381 e 74LS881.
A seguir será apresentada uma descrição de uma ULA integrada, o circuito integrado 74181.
A B
F
S
Unidade Lógica e Aritmética
J.L.R.B. e P.S.C./2001 (revisão)
E.T.M./2002 (revisão e adaptação)
E.T.M./2003 (revisão)
E.T.M./2005 (revisão)
E.T.M./2008 (revisão)
E.T.M./2011 (revisão)
pf3
pf4
pf5
pf8
pf9

Pré-visualização parcial do texto

Baixe Unidade Lógica e Aritmética e outras Resumos em PDF para Lógica, somente na Docsity!

RESUMO

Esta experiência tem por objetivo a familiarização com o funcionamento da Unidade Lógica e Aritmética (ULA), especificamente o circuito integrado 74181, que executa 16 funções aritméticas e 16 funções lógicas.

A parte experimental inclui o projeto, montagem e documentação de um circuito baseado na ULA 74181, com a sequencia de operações determinada pelo conteúdo de uma memória de acesso aleatório (RAM), o circuito integrado 74189.

1. PARTE TEÓRICA

1.1. Unidade Lógica e Aritmética - ULA

A Unidade Lógica e Aritmética (ULA) é um circuito combinatório responsável pela execução de somas, subtrações e funções lógicas, em um sistema digital. Na figura 1.1 é mostrado um esquema simplificado de uma ULA.

Figura 1.1 - Esquema Simplificado de uma ULA.

A operação que deve ser executada com os dados de entrada (A e B) é determinada pelos sinais de controle (S) e o resultado é obtido na saída (F). A complexidade da ULA é proporcional à complexidade do sistema em que será utilizada; assim, sistemas simples permitem o uso de ULAs simples e sistemas sofisticados exigem ULAs sofisticadas.

Uma vez estabelecido o porte do sistema, existe também o compromisso entre velocidade e preço. Por exemplo, as calculadoras eletrônicas exigem ULAs que permitem operações complexas, porém com velocidade de operação baixa, reduzindo-se o custo; já os computadores de grande porte exigem velocidade de operação elevada, aumentando o custo da ULA.

Atualmente têm-se várias alternativas de circuitos integrados que incluem uma ULA. Entre elas estão o 74181, 74381 e 74LS881.

A seguir será apresentada uma descrição de uma ULA integrada, o circuito integrado 74181.

A B

F

S

Unidade Lógica e Aritmética

J.L.R.B. e P.S.C./2001 (revisão) E.T.M./2002 (revisão e adaptação) E.T.M./2003 (revisão) E.T.M./2005 (revisão) E.T.M./2008 (revisão) E.T.M./2011 (revisão)

1.2. Circuito Integrado 74181 – uma ULA de 4 bits

O circuito integrado MSI 74181 é uma ULA de 4 bits que tem possibilidade de executar 16 operações aritméticas binárias e 16 operações lógicas. A figura 1.2 apresenta um diagrama simplificado deste circuito integrado.

Figura 1.2. - Diagrama Simplificado da ULA 74181.

As tabelas I e II a seguir apresentam a descrição dos pinos e as operações da ULA, respectivamente.

Tabela I - Descrição dos pinos da ULA 74181.

Pinos Tipo Descrição

A 0 a A 3 e B 0 a B 3 Entrada Dados de entrada

C n Entrada Bit de "vem um"

S 0 a S 3 Entrada Seleção da operação

M Entrada

Modo de operação: M=0 - para operações aritméticas M=1 - para operações lógicas

F 0 a F 3 Saída Dados de saída (resultado)

Cn+4 Saída Bit de "vai-um"

G e T Saídas Utilizadas para expansão utilizando carry look-ahead

A=B Saída Indica igualdade das duas entradas

A 3

A 2 A 1 A 0

B B BB

B

3 2 1

0

S 3 S 2 S 1 S 0 C

3

2 1 0

F

F F F

n

G T A = B

M

Cn+

1.3. Um Fluxo de Dados Simples utilizando a ULA 74181

A figura 1.3 mostra um fluxo de dados simples utilizando o circuito integrado 74181. De uma maneira geral, este circuito é encontrado como a base do fluxo de dados de vários microprocessadores.

Figura 1.3 - Fluxo de dados de um circuito simples utilizando o 74181.

Neste caso, todas as operações da ULA são executadas entre o conteúdo do acumulador (AC) e o

conteúdo da via (DADO). Assim, por exemplo, uma operação de soma de dois números X + Y é

executada seguindo-se os seguintes passos:

Passo S 3 S 2 S 1 S 0 M Cn B Comentário 1 0 0 1 1 1 d^ d^ AC ← 0 2 1 0 1 0 1 d*^ X AC ← X 3 1 0 0 1 0 1 Y AC ← X + Y

  • OBS: d significa que o valor não importa (do inglês “ don’t care ”).

Após cada passo deve-se gerar um pulso no sinal CLOCK para forçar a cópia de saída da ULA no

acumulador.

Operações mais complexas poderão ser executadas com outras sequencias de operações simples como aquelas relacionadas na Tabela III. De uma maneira geral, estas operações simples podem ser classificadas em operações lógicas e aritméticas e operações de transferência de registradores.

DADO CLOCK

F

SELEÇÃO ULA

AC

B A

1.4. Memória de Acesso Aleatório 74189 (RAM)

O circuito integrado 74189 é uma memória de 64 bits, organizados em 16 palavras de 4 bits. Os sinais de controle e dados são mostrados na figura 1.4, onde tem-se que:

  • D 0 a D 3 - dado de entrada (4 bits);
  • A 0 a A 3 - endereço (4 bits);
  • CE㍤㍤㍤㍤^ - sinal de seleção da pastilha ( chip-enable );
  • WE㍤㍤㍤㍤㍤^ - sinal de controle para armazenamento ( write-enable );
  • O㍥^0 a O㍥^3 - saída de dados (4 bits, negada, tri-state );

Figura 1.4 - Circuito Integrado 74189.

Para realizar uma leitura de uma posição de memória, deve-se primeiro colocar o endereço nas entradas A 0 a A 3 e depois colocar o sinal CE㍤㍤㍤㍤^ em "0", mantendo WE㍤㍤㍤㍤㍤^ em "1".

Para realizar uma escrita em uma posição, além de primeiro endereçar a palavra e colocar o sinal CE㍤㍤㍤㍤^ em "0", deve-se em seguida colocar o dado a ser escrito nas entradas D 0 a D 3 e depois gerar um pulso negativo na entrada WE㍤㍤㍤㍤㍤.

A figura 1.5 mostra o diagrama de tempos para um ciclo de leitura e um de escrita. Consulte o manual do circuito integrado para mais detalhes sobre a sequencia de acionamento de sinais.

Figura 1.5 - Diagrama de Tempos dos Sinais do Circuito 74189 para os ciclos de leitura e escrita.

OBS : Existem diferenças técnicas entre as memórias 7489, 74189, 74289. Consulte os respectivos manuais.

3 2 1 0 3 2 1 0 D D D D A A A A

O 1

O 2

O 3

CE WE

O 0

ESCRITA ESTÁVEL

ESTÁVEL ESTÁVEL

ESTÁVEL ESTÁVEL

LEITURA DADO

ENDEREÇO

SAÍDA


CE


WE

(*) - sinais tri-state.

Assim, para se executar um "programa", deve-se seguir o seguinte procedimento:

a) Colocar o circuito em modo "Execução" e limpar o REM;

b) Mudar o modo de operação para o modo "Programação" e armazenar o "programa" na memória;

c) Colocar o circuito em modo "Execução" e limpar o REM;

d) Executar, passo a passo, as "instruções", colocando nas chaves o dado a ser manipulado, apertando o botão de execução (B2) e observando os resultados nos leds e displays.

2.2. Familiarização com os componentes

Antes de efetuar a montagem do projeto do circuito projetado, deverão ser executados certos procedimentos com o objetivo de se familiarizar com a ULA 74181 e a memória 74189.

2.2.1 Familiarização com a memória 74189

Este item tem com objetivo a familiarização com a operação do circuito de memória 74189.

a) Monte um contador 74161 de 4 bits, ligando o botão B1 na entrada de clock e as quatro saídas em um display (D3). Ligue os demais sinais de entrada de acordo e teste o funcionamento desta parte.

b) Efetuar em seguida a ligação dos seguintes sinais:

  • Ligar os 4 bits da saída do contador acima nas 4 entradas de endereço do 74189.
  • Ligar as chaves C0 a C3 nas entradas de dados do 74189 e as saídas D 0 a D 3 em leds (L8 a L11).
  • Ligar os sinais /CE e /WE nas chaves C6 e C7, respectivamente.

c) Acionando o botão B1 e as chaves C6 e C7, execute operações de gravação de dados na memória e posterior leitura dos dados. IMPORTANTE: Lembre-se de seguir a sequencia apresentada nas formas de onda da figura 1.5 para o ciclo de gravação de dados na memória.

d) Anote e comente como é o funcionamento da memória.

PERGUNTAS:

  1. Qual é a relação entre os dados de entrada da memória e os dados de saída?
  2. Se desejarmos que a saída de uma certa posição da memória seja "0110", como devemos proceder?
  3. O que acontece em um ciclo de escrita da memória se, enquanto o sinal /WE é mantido em 0, o valor das entradas de endereço é incrementado?

2.2.2 Familiarização com a ULA 74181

Este item tem como objetivo a familiarização com a operação da ULA 74181.

e) No circuito do item anterior, acrescente uma segunda pastilha de memória, interligando os sinais de controle de forma especificada abaixo.

  • Ligar os 4 bits da saída do contador nas 4 entradas de endereço das pastilhas de memória.
  • Ligar as entradas de dados nas chaves C0 a C3 (pastilha 1) e C4 e C5 (pastilha 2).
  • Ligar os sinais /CE e /WE nas chaves C6 e C7, respectivamente.
  • Ligar os 4 bits das saídas da pastilha 1 de memória (que devem permanecer ligados nos leds L8 a L11) nos sinais de seleção S 0 a S 3 , respectivamente, da ULA 74181.
  • Ligar os 2 bits menos significativos da pastilha 2 nas entradas M e Cn, respectivamente, da ULA 74181 e também nos leds L12 e L13.
  • Ajustar valores fixos com jumpers nas entradas A e B da ULA 74181.
  • Ligar a saída de dados da ULA no display D0 e o bit de "vai-um" no display D1.

f) Programar nas primeiras posições de memória, o código de algumas operações selecionadas (veja Tabela II). Sugestão: use as operações da pergunta 3 abaixo.

g) Acionando a memória para realizar operações de leitura, verifique a execução das operações programadas na memória, observando as saídas da ULA.

PERGUNTAS:

  1. Quais os valores dos sinais de entrada de controle da ULA para realizar as seguintes operações: A+B, A–B, 2×A, A and B, A or B, not B, A xor B?
  2. Quando há dois valores distintos para as entradas de controle da ULA que realizam a mesma operação, qual delas é a mais adequada? Por que?
  3. O que acontece com o valor da saída da ULA quando o sinal Cn muda de 0 para 1?

2.3. Montagem do Circuito com a ULA e a RAM

Neste item, o circuito com a ULA deverá ser montado e testado de acordo com o planejamento previamente elaborado pelo grupo. O diagrama lógico deve apresentar todos os detalhes de montagem. Recomenda-se que o planejamento inclua simulações com o Quartus II.

h) Montar o circuito projetado anteriormente.

DICA: Para facilitar a depuração, monte inicialmente a memória e o REM; certifique-se do funcionamento correto destes e depois monte o resto do circuito.

i) Verifique o funcionamento de cada bloco do circuito, apresentando os testes realizados para verificar o funcionamento do subcircuito montado.

PERGUNTA:

  1. Como garantir com um mínimo de operações o correto funcionamento do circuito? Justifique.
  2. Como as montagens dos itens da seção 2.2 podem ser reaproveitados na montagem do circuito projetado?

2.4. Teste do Circuito com “Programas”

j) Verifique o funcionamento do circuito para várias sequencias de operações, variando também os dados de entrada.

k) Escreva os "programas" para calcular as seguintes expressões:

i. X = (2×A) – B – C + D + 1 ii. Y = (A OR NOT(B) AND C) XOR D

l) Verifique os resultados obtidos executando os "programas", para vários valores de A, B, C e D.

Sugestão: para escrever os "programas", faça uso da Tabela II, a despeito da memória ter saídas ativas em zero.

PERGUNTA:

  1. Este projeto se assemelha com o núcleo de um processador de propósito geral, como os microprocessadores e microntroladores. O registrador REM é equivalente ao registrador PC (“ program conter ” ou “ instruction pointer ”). Qual é a função do PC em um processador?
  2. Qual é a função do ACUMULADOR em um processador?

2.5 Modificações no Circuito

O entendimento do funcionamento completo do circuito projetado é muito importante. O professor poderá solicitar uma pequena modificação no circuito projetado pelo grupo. Esta modificação deverá ser realizada e documentada de acordo com as normas do laboratório (documento “ Documentação de aula ” disponível na página Internet do curso).

PERGUNTA:

  1. Seja a implementação da inclusão de uma instrução de salto incondicional (JUMP) para uma determinada posição de memória. A instrução JUMP em um processador faz com que a próxima instrução a ser executada seja especificada pelo dado de entrada que especifica o endereço de memória. Por exemplo, se o dado de entrada contiver o valor “0111”, o circuito deve mudar a sequencia de execução e iniciar a execução pela instrução presente no endereço “0111” da memória. Mostre um diagrama contendo as modificações necessárias para incluir esta instrução ao projeto. 3. BIBLIOGRAFIA
  • Fairchild Semiconductor. TTL Data Book. Mountain View, California, 1978.
  • FREGNI, E. e SARAIVA, A. M. Engenharia do Projeto Lógico Digital: Conceitos e Prática. Editora Edgard Blücher Ltda, 1995.
  • TANENBAUM, A. S. Organização estruturada de computadores. 5ª edição, Prentice-Hall, 2009.
  • TOCCI, R. J.; WIDMER, N.S.; MOSS, G.L. Sistemas Digitais: Princípios e Aplicações. Prentice-Hall, 10a^ ed., 2007.
  • WAKERLY, John F. Digital Design Principles & Practices. 4th^ edition, Prentice Hall, 2006.