CALCULADORA SIMPLES COM ULA



Documentos relacionados
CALCULADORA SIMPLES COM ULA

CONTROLE DE UM SERVO MOTOR

EPUSP PCS 2011 Laboratório Digital I. Uma ULA Simples

EPUSP PCS 2011 Laboratório Digital I. Uma ULA Simples

EPUSP PCS 2011/2305/2355 Laboratório Digital CALCULADORA SIMPLES

EPUSP PCS 2021/2308/2355 Laboratório Digital GERADOR DE SINAIS

EPUSP PCS 2011/2305/2355 Laboratório Digital CALCULADORA SIMPLES

Sistema de Aquisição de Dados

EPUSP PCS 2011/2305/2355 Laboratório Digital CALCULADORA SIMPLES

Somadores Binários E.T.M./2005 (revisão)

Figura 1 - Diagrama de um sistema de controle de temperatura que requer conversão analógico-digital para permitir o uso de técnicas de processamento

EPUSP PCS 3335 Laboratório Digital A. Um Circuito Digital

Aritmética Binária e. Bernardo Nunes Gonçalves

ULA Sinais de Controle enviados pela UC

CAPÍTULO 6 ARITMÉTICA DIGITAL

Circuitos Digitais Cap. 5

Unidade Lógica e Aritmética

A Figura 1 mostra uma organização do NEANDER com uma UAL de 6 funções. Figura 1: Organização para o NEANDER.

EPUSP PCS 2011/2305/2355 Laboratório Digital ARITMÉTICA DECIMAL

5º Experimento: Somador Binário de números com sinal

Multiplexação de Displays

ULA- Unidade Lógica Aritmética. Prof. Rômulo Calado Pantaleão Camara. Carga Horária: 60h

Introdução. A Informação e sua Representação (Parte III) Universidade Federal de Campina Grande Departamento de Sistemas e Computação

GUIA DE LABORATÓRIO DE SISTEMAS DIGITAIS PARA O CURSO DE ENGENHARIA DE CONTROLE E AUTOMAÇÃO

MÓDULO N.º 1 SISTEMAS DE NUMERAÇÃO HORAS / TEMPOS CONTEÚDOS OBJETIVOS AVALIAÇÃO

MINISTÉRIO DA EDUCAÇÃO IFSC - Campus São José. CST em Telecomunicações ELETRÔNICA DIGITAL CONTADORES. Marcos Moecke

Aula 8 Circuitos Integrados

UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA INF Técnicas Digitais para Computação

Multiplexação de Displays

Montagem, testes, depuração e documentação de circuitos digitais

Portas lógicas e circuitos digitais. Sistemas da Computação Prof. Rossano Pablo Pinto, Msc. rossano at gmail com 2 semestre 2007

Organização Básica do Computador

Um circuito comparador permite determinar se dois números binários são iguais, e não o sendo, qual deles é o maior.

Marcos da Arquitetura de Computadores (1)

Experimento 06 Unidade Aritmética

SISTEMAS DIGITAIS CIRCUITOS COMBINATÓRIOS TÍPICOS

EPUSP PCS 2011/2305/2355 Laboratório Digital. Displays

UNIVERSIDADE DO ESTADO DE SANTA CATARINA - UDESC CENTRO DE CIÊNCIAS TECNOLÓGICAS CCT DEPARTAMENTO DE ENGENHARIA ELÉTRICA DEE

3. Arquitetura Básica do Computador

Exemplo de Subtração Binária

Disciplina: : ELETRÔNICA DIGITAL

Unidade Lógica e Aritmética

ANO LETIVO 2015 / 2016

Aula 6 Aritmética Computacional

Ministério da Educação Universidade Federal do Ceará Pró-Reitoria de Graduação

Descrição de circuitos algebricamente, álgebra de Boole e circuitos lógicos, teorema de boole e De Morgan. Simplificação e projeto.

Sistemas Numéricos e a Representação Interna dos Dados no Computador

Conversor Analógico /Digital

Codificação 1. Introdução. C 2 R r {! + codificação

Sistemas Computacionais II Professor Frederico Sauer

Circuitos Digitais Cap. 6

Eletrônica Digital 1 Módulo1 Capítulo 1 Sistemas Numéricos. Prof. Nilton Costa Junior

ROTEIRO DE LABORATÓRIO

Projeto de Máquinas de Estado

Organização e Arquitetura de Computadores I

Circuitos Sequenciais. Sistemas digitais

Projeto da Cálculadora Eletrônica

MINISTÉRIO DA EDUCAÇÃO CEFET/SC - Unidade de São José. Curso Técnico em Telecomunicações CONTADORES. Marcos Moecke

Sistemas de Numeração. Engenharia da Computação 3 Período Alex Vidigal Bastos

CAPÍTULO 5 CONTADORES NA FORMA DE CIRCUITO INTEGRADO

Operações aritméticas

DATA: HORÁRIO DE ENTRADA: HORÁRIO DE SAÍDA: BANCADA: NOMES DOS COMPONENTES DO GRUPO DE TRABALHO:

DATA: HORÁRIO DE ENTRADA: HORÁRIO DE SAÍDA: BANCADA: NOMES DOS COMPONENTES DO GRUPO DE TRABALHO: PROJETO - CONTADORES ASSÍNCRONOS

Experimento 03 Circuito Decodificador e Multiplex

Introdução ao Laboratório Digital

3 Sistemas de Numeração:

Hardware de Computadores

Organização e Arquitetura de Computadores I

Organização e Arquitetura de Computadores I

Arquitetura de Computadores

Sistemas de Numeração

Componentes do Computador e. aula 3. Profa. Débora Matos

EPUSP PCS 2011/2305/2355 Laboratório Digital. Frequencímetro

EPUSP PCS 2011/2305/2355 Laboratório Digital. Freqüencímetro

Arquitetura de Computadores. Tipos de Instruções

Aula 04. Código BCD, Códigos Alfa-numéricos e Sistemas de Detecção de Erros

CONTROLE DE UM SERVO MOTOR

Representação de Dados

Introdução ao Laboratório Digital

EPUSP PCS 2011/2305/2355 Laboratório Digital SOMADORES DECIMAIS

Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini prof.andre.luis.belini@gmail.com /

EPUSP PCS2355 Laboratório Digital SOMADORES DECIMAIS

Amplificadores Operacionais

O processador é composto por: Unidade de controlo - Interpreta as instruções armazenadas; - Dá comandos a todos os elementos do sistema.

CONSTRUÇÃO DE UMA UCP HIPOTÉTICA M++ INTRODUÇÃO

Processadores BIP. Conforme Morandi et al (2006), durante o desenvolvimento do BIP, foram definidas três diretrizes de projeto:

Arquitetura de Computadores I

ARQUITETURA DE COMPUTADORES

Caracterização de Portas Lógicas

EPUSP PCS 2011/2305/2355 Laboratório Digital. Frequencímetro

Organização de Computadores. Cálculos Binários e Conversão entre Bases Aritmética Binária

PLANO DE ENSINO. Código: Crédito: Pré-requisito: Introdução a Lógica ( ) Carga Horária: 60h Bacharelado em Ciência da Computação

EXPERIÊNCIA 2 PORTAS LÓGICAS BÁSICAS E UNIVERSAIS

Arquitectura de Computadores Unidade de Processamento

Tutorial de Eletrônica Aplicações com 555 v

Tais operações podem utilizar um (operações unárias) ou dois (operações binárias) valores.

Programação Básica em STEP 7 Operações Binárias. SITRAIN Training for Automation and Drives. Página 6-1

AD / DA. EXPERIMENTS MANUAL Manual de Experimentos Manual de Experimentos 1 M-1116A

ARQUITETURA DE COMPUTADORES

Transcrição:

CALCULADORA SIMPLES COM ULA Versão 2012 RESUMO 1 Esta experiência tem por objetivo a utilização de circuitos integrados de operações lógicas e aritméticas para o desenvolvimento de circuitos que executam operações aritméticas básicas. A parte experimental inclui o projeto de uma calculadora simples que executa as operações de soma e subtração, além de multiplicação e divisão por 2 para valores em complemento de dois, utilizando o circuito integrado 74181 (ULA de 4 bits). 1. PARTE TEÓRICA 1.1. Soma / Subtração Usando Complemento de Dois Sabe-se que numa operação aritmética em complemento de dois, não se corrige o resultado como no caso da notação em complemento de um. É necessário, porém, somar-se 1 ao complemento bit a bit do número: (Complemento de 2) = (Complemento de 1) + 1. Numa subtração, portanto, costuma-se forçar um vem-um na coluna de bits menos significativos dos operandos: Exemplos: 7-3 = 4 4-6 = -2 1 vem-um forçado 1 vem-um forçado 0 1 1 1 7 0 1 0 0 4 1 1 0 0-3 (complemento de 1) 1 0 0 1-6 (complemento de 1) 0 1 0 0 4 1 1 1 0-2 (complemento de 2) Numa soma de dois números de mesmo sinal (positivos ou negativos), a complementação não é necessária e, portanto, não há vem-um forçado. Exemplo: -2 + (-3) = -5 1 1 1 0-2 (complemento de 2) 1 1 0 1-3 (complemento de 2) 1 0 1 1-5 (complemento de 2) A figura 1.1 mostra um circuito de soma/subtração em complemento de 2 usando um somador binário. 1 Esta experiência foi baseada nas experiências Somadores binários e Calculadora Simples, desenvolvidas para o Laboratório Digital. Calculadora Simples com ULA (2012) 1

X Y ou Y' 4 4 SUBTR = 1 1 4 Figura 1.1 - Circuito de Soma / Subtração em Complemento de 2 com somador binário. 1.2. Multiplicação e Divisão S As operações de multiplicação e divisão podem ser implementadas em um circuito digital através de um processo iterativo que envolve diversos passos computacionais (Midorikawa, 2004) (Tocci & Widmer, 2007). Por exemplo, a figura 1.2 abaixo ilustra um exemplo de multiplicação. 13 1101 multiplicando 11 1011 multiplicador 0000 valor inicial do produto parcial + 1101 soma multiplicando, bit do multiplicador é 1 1101 0110 1 desloca para a direita + 1101 soma multiplicando, bit do multiplicador é 1 1 0011 1 1001 11 desloca para a direita 0100 111 só desloca para a direita, bit do multiplicador é 0 + 1101 soma multiplicando, bit do multiplicador é 1 1 0001 111 1000 1111 desloca para a direita 143 10001111 produto Figura 1.2 Exemplo de Multiplicação Binária. Embora estas operações sejam complexas, certas situações podem levar a simplificações no circuito digital que as implementa. Uma destas situações é a da divisão por dois, onde, no caso de números positivos sem sinal, a operação pode ser implementada apenas por um deslocamento de bits de uma posição à direita. Exemplos: 6 / 2 = 3 5 / 2 = 2 0 1 1 0 6 0 1 0 1 5 desloca à direita de uma posição desloca à direita de uma posição 0 0 1 1 3 0 0 1 0 2 O mesmo pode ser aplicado para a multiplicação de números inteiros positivos por dois, onde esta operação pode facilmente ser implementada com um deslocamento de bits de uma posição à esquerda. Calculadora Simples com ULA (2012) 2

1.3. 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.3 é mostrado um esquema simplificado de uma ULA. A B S F Figura 1.3 - Esquema Simplificado de uma ULA. A operação que deve ser executada com os dados (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 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. 1.4. 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.4 apresenta um diagrama simplificado deste circuito integrado. M A 3 A 2 A 1 S 3 S 2 S 1 S 0 Cn F3 F2 F1 A 0 B3 B2 B1 B0 74181 F0 G T A = B C n+4 Figura 1.4 - Diagrama Simplificado da ULA 74181. As tabelas I e II a seguir apresentam a descrição dos pinos e as operações da ULA. Calculadora Simples com ULA (2012) 3

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 C n Entrada Bit de "vem um" S 0 a S 3 Entrada Seleção da operação Modo de operação: M Entrada M=0 - para operações aritméticas M=1 - para operações lógicas F 0 a F 3 Saída Dados (resultado) C n+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 Tabela II - Sinais e Operações da ULA 74181. Seleção Funções Funções Aritméticas ( M = 0 ) Lógicas S 3 S 2 S 1 S 0 ( M = 1 ) C n = 1 (sem carry) C n = 0 (com carry) 0 0 0 0 F = A F = A F = A + 1 0 0 0 1 F = (AORB) F = A OR B F = (A OR B) + 1 0 0 1 0 F = A B F = AORB F = AORB+ 1 0 0 1 1 F = 0 F = -1 (*) F = 0 0 1 0 0 F = A.B F = A + A B F = A + A B+ 1 0 1 0 1 F = B F = (A OR B) + A B F = (A OR B) + A B+ 1 0 1 1 0 F = A B F = A - B - 1 F = A - B 0 1 1 1 F = A B F = A B- 1 F = A B 1 0 0 0 F = AORB F = A + A.B F = A + A.B + 1 1 0 0 1 F = (A B) F = A + B F = A + B + 1 1 0 1 0 F = B F = AORB+ A. B F = AORB+ A. B + 1 1 0 1 1 F = A. B F = A. B - 1 F = A. B 1 1 0 0 F = 1 F = A + A F = A + A + 1 1 1 0 1 F = AORB F = (A OR B) + A F = (A OR B) + A + 1 1 1 1 0 F = A OR B F = AORB+ A F = AORB+ A + 1 1 1 1 1 F = A F = A - 1 F = A * (-1) 10 é representado por (1111) 2 em C2. As saídas G e T são os sinais "gerador de vai-um", correspondentes ao bit mais significativo e, utilizandose o circuito integrado 74182, look-ahead carry generator, permitem a expansão da largura da palavra a ser manipulada. Calculadora Simples com ULA (2012) 4

As operações de subtração são executadas em complemento de dois (C2). Por exemplo, (-1) é representado por (1111). As operações lógicas são executadas bit a bit. Por exemplo, se a operação AND é aplicada às entradas A = 1011 e B = 0110, resulta F = 0010. O resultado de uma operação de comparação é apresentado na saída A = B. Para tanto, deve-se executar a operação A - B - 1 com C n = 1; se as duas entradas são iguais, a saída A = B toma o valor 1. Esta saída tem a configuração open-colector para que seja possível implementar uma função wired-and dentre duas ou mais saídas deste tipo pertencentes a diferentes ULAs, quando se deseja expandir a largura da palavra a ser manipulada. A saída C n+4 representa o sinal de vai-um do último bit da palavra. Ela pode ser usada para propagar o vai-um para o próximo estágio quando não há preocupação com a velocidade do circuito. O sinal C n+4 também pode ser usado em conjunto com a saída A = B para indicar as condições A>B e A<B. OBSERVAÇÃO: Na realidade, em se tratando de um circuito combinatório, a ULA 74181 pode trabalhar com operandos representados em lógica positiva ou negativa. A Tabela II acima mostra o significado dos bits de seleção de operações quando se considera o uso de lógica positiva. Consulte o manual (datasheet) do componente para o caso do uso de lógica negativa. Calculadora Simples com ULA (2012) 5

2. PARTE EXPERIMENTAL 2.1. Especificação do Projeto Projetar o circuito da Calculadora Simples com ULA, onde a figura 2.1 ilustra os sinais de entrada e saída do circuito. D 3 D 2 D 1 D 0 I 2 I 1 I 0 Execute Calculadora Simples com ULA S 3 S 2 S 1 S 0 Figura 2.1 Circuito da Calculadora Simples com ULA. O circuito deve realizar uma função, determinada pela entrada I (3 bits), sobre o dado de entrada D de 4 bits e o conteúdo do registrador interno A de 4 bits. A tabela 2.1 apresenta as funções a serem implementadas. O resultado deve ser armazenado em A apenas no acionamento do sinal EXECUTE. O circuito da Calculadora Simples com ULA deve trabalhar com valores de 4 bits em notação de complemento de dois. Tabela 2.1 Tabela de funções da Calculadora Simples com ULA. Código I 2 I 1 I 0 Função 0 1 0 1 0 1 0 Soma (A A+D) 1 Subtração (A A-D) 0 Multiplicação por 2 (A A 2) 1 Divisão por 2 (A A 2) 0 Carga de valor (A D) 1 Reset (A 0) 0 Reservado 1 Reservado Para o projeto do circuito devem ser usados componentes básicos como portas lógicas, decodificadores, multiplexadores, somadores binários, registradores, deslocadores e flip-flops. 2.2. Montagem e Depuração do Circuito Nesta etapa, o grupo deve planejar os procedimentos de montagem modular, testes e depuração dos módulos do circuito da Calculadora Simples com ULA. a) A montagem deve ser realizada e testes iniciais devem ser planejados pelo grupo. b) O grupo deve propor um roteiro para a demonstração do correto funcionamento deste circuito. Calculadora Simples com ULA (2012) 6

2.3. Programas de Teste do Circuito Completo Agora o grupo deve desenvolver programas para realizar algumas computações abaixo. c) Executar a seguinte sequência de instruções: RESET CARGA 6 em A Subtrai 1111 2 Divide por 2 Qual deve ser o resultado final em A após a execução desta sequência? d) Desenvolver um plano de execução para os seguintes cálculos: i. F = (A + B) - C ii. F = ((A * 2) B) + C iii. F = (A + B C) / 2 e) Elaborar uma tabela contendo todos os sinais que devem ser ativados para a execução de cada plano. f) Executar cada plano para pelo menos um conjunto de valores positivos e negativos. Perguntas: 1. Explique como a operação de multiplicação por 2 poderia ser implementado usando a ULA. 2. Mostre como outras operações (p.ex. operações lógicas) poderiam ser acrescentadas no circuito. 3. Como seria o projeto do circuito da Calculadora se ao invés de uma ULA, fosse usado um somador binário? 3. BIBLIOGRAFIA FREGNI, Edson e SARAIVA, Antonio M. Engenharia do Projeto Lógico Digital: Conceitos e Prática. Editora Edgard Blucher Ltda, 1995. WAKERLY, John F. Digital Design Principles & Practices. 4 th edition, Prentice Hall, 2006. Fairchild Semiconductor. TTL Data Book. Mountain View, California, 1978. MIDORIKAWA, E. T. Multiplicador binário. Apostila de Laboratório Digital, versão de 2004. PCS/EPUSP. Somadores binários. Apostila de Laboratório Digital, 2001. PCS/EPUSP. Calculadora simples. Apostila de Laboratório Digital, 2008. Texas Instruments. TTL Logic Data Book, 1994. TOCCI, R. J.; WIDMER, N. S.; MOSS, G. L. Digital Systems: principles and applications. 11th ed., Prentice-Hall, 2011. 4. MATERIAL DISPONÍVEL Circuitos Integrados TTL: 7400 portas NAND de 2 entradas 7402 portas NOR de 2 entradas 7404 portas inversoras 7408 portas AND de 2 entradas 7410 portas NAND de 3 entradas 7420 portas NAND de 4 entradas 7474 flip-flops tipo D 7486 portas XOR 74157 multiplexadores de 2 para 1 74175 registrador de 4 bits 74181 ULA de 4 bits 74193 contador síncrono up/down de 4 bits 74194 registrador deslocador bidirecional de 4 bits 74195 registrador deslocador de 4 bits Calculadora Simples com ULA (2012) 7

5. EQUIPAMENTOS NECESSÁRIOS 1 painel de montagens experimentais. 1 fonte de alimentação fixa, 5V ± 5%, 4A. 1 osciloscópio digital. 1 multímetro digital. 1 gerador de pulsos. Histórico de Revisões E.T.M./2003 revisão e adaptação. M.D.M. e E.T.M./2005 revisão. E.T.M./2008 revisão. E.T.M./2012 versão inicial com ULA. Calculadora Simples com ULA (2012) 8