Universidade Federal de Santa Catarina Centro Tecnológico Departamento de Informática e Estatística Ciências da Computação & Engenharia Eletrônica

Documentos relacionados
Prof. Leonardo Augusto Casillo

Circuitos Lógicos Aula 22

Universidade Federal de Santa Catarina Centro Tecnológico Departamento de Informática e Estatística Curso de Graduação em Ciências da Computação

Operações com números binários

Processador: Conceitos Básicos e Componentes

ARITMÉTICA BINÁRIA. Adão de Melo Neto

Arquitetura e Organização de Computadores. Sistemas Numéricos

Organização de Computadores

Circuitos Aritméticos. Circuitos Aritméticos. Circuitos Aritméticos. Circuitos Aritméticos. Circuitos Aritméticos. Circuitos Aritméticos

Arquitetura de Computadores. Tiago Alves de Oliveira

Representações de Números Inteiros: Sinal e Magnitude e Representação em Excesso de k

Organização e Arquitetura de Computadores I

CALCULADORA SIMPLES COM ULA

Aula 16: UCP: Conceitos Básicos e Componentes

Circuitos Combinacionais

3 a Lista de Exercícios

Binários: Operações matemáticas

Aula 7: Representações de Números Inteiros: Sinal e Magnitude e Representação em Excesso de k

Operações Aritméticas Prof. Rômulo Calado Pantaleão Camara. Carga Horária: 2h/60h

Aula 9. Aritmética Binária. SEL Sistemas Digitais. Prof. Dr. Marcelo Andrade da Costa Vieira

3 Circuitos Combinacionais

Introdução à Computação

Sistemas Digitais Circuitos Aritméticos e Representação de Números com Sinal

Circuitos Lógicos. Capítulo 9 Aritmérica Digital: Operações e Circuitos

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

Arquitetura e Organização de Computadores

Arquitetura de Computadores

Aula 14: Lógica e circuitos digitais

Sistemas Digitais INE 5406

Sistemas de Numeração. Exemplos de Sistemas de Numeração (1) Exemplos de Sistemas de Numeração (2) Sistemas de Numeração

Arquitetura e Organização de Computadores

Sistemas de Computação

3 Utilizando o CircuitMaker, simule circuito abaixo e preencha sua tabela. Analise que circuito é esse.

REPRESENTAÇÃO DE NÚMEROS EM BINÁRIO E HEXADECIMAL

Representação de quantidade(número)

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

Circuitos Combinacionais

Eletrônica Digital. Instituto Federal de Santa Catarina Campus São José. Área de Telecomunicações. Sistema de Numeração

Introdução à Informática

Números Binários Operações Aritméticas. Prof. Patrícia G. P. Magalhães

Eletrônica Digital. Conversão de base e operações aritméticas com números binários. Professor: Francisco Ary

Sistemas de Numeração e Códigos

Projeto de Somador com e sem Sinal. Qualificadores

Aula 8: Complemento a Um e Complemento a Dois

Dessa forma pode-se transformar qualquer número em qualquer base para a base 10.

Relatório de Prática no LABORATORIO

Representação de quantidade(número) Expressão de significância posicional

Representação de Valores Números Binários Negativos

Aula 7: Portas Lógicas: AND, OR, NOT, XOR, NAND e NOR

Introdução à Computação

Universidade Federal de Uberlândia Faculdade de Computação. Representação e aritmética binária

Aritmética Binária e Caminho de Dados. Aritmética Binária Caminho de Dados

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

Sistemas de Numeração. Sistemas de Numeração. Sistemas de Numeração. RUIDO em Sistemas Computacionais. Arquiteturas de Computadores

Representação de Dados

Aula 3 - Representação de Dados

Códigos de Detecção de Erros 2ª. parte. Prof. Ricardo de O. Duarte DECOM - UFOP

Complemento a Um e Complemento a Dois

Notas de Aula Guilherme Sipahi Arquitetura de Computadores. Aritmética de Inteiros

7 Operadores e Expressões

Circuitos Combinacionais Prof. Rômulo Calado Pantaleão Camara. Carga Horária: 2h/60h

Departamento de Engenharia Elétrica e de Computação SEL 405 Lab. de Introdução aos Sistemas Digitais I Profa. Luiza Maria Romeiro Codá PRÁTICA Nº 6

Aula 8 - Unidade lógica aritmética e Multiplicadores

Sistemas Digitais / Sistemas Digitais I 6 Representação de números com sinal

MÓDULO. Conjunto de Instruções do 8086/88 Aritméticas, lógicas, deslocamento e rotação M 02

ÁLGEBRA BOOLEANA E LÓGICA DIGITAL AULA 04 Arquitetura de Computadores Gil Eduardo de Andrade

Eletrônica Digital I TE050. Circuitos Combinacionais

Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Engenharia Lógica Computacional Aplicada. Prof. Dr. Fabian Vargas.

dado elementos distintos de uma informação; Informação coleção de dados representada de forma compreensível ao ser humano.

SOMADORES E SUBTRATORES

Nível da Lógica Digital

a b s cout Tabela 1: tabela verdade do meio somador

Escola Politécnica de Pernambuco Departamento de Engenharia Elétrica PROGRAMA EMENTA OBJETIVOS

X. B Y Base do sistema de numeração Dígito do número em questão

Arquitetura de Computadores Sistema de Numeração. Apresentado por Prof. Fred Sauer Mat. Elaborado por Prof. Ricardo Quintão

Circuitos Combinacionais. Arquitetura de Computadores I

Eletrônica Digital. Projeto de Circuitos Combinacionais. Alex Vidigal Bastos

SISTEMA DE NUMERAÇÃO. Introdução a Informática. Vinícius Pádua

Aula 10. Circuitos Aritméticos. SEL Sistemas Digitais. Prof. Dr. Marcelo Andrade da Costa Vieira

Aula de hoje. Códigos numéricos. Códigos binários. Armazenamento de dados. Armazenamento de dados. Armazenamento de dados

Circuitos Integrados. Nível da Lógica Digital (Aula 7) Circuitos Combinacionais. Circuitos Lógicos Digitais Básicos. Multiplexadores (1)

Somador de quatro bits terá um total de: Esquema interno do somador é apresentado a seguir.

Curso Profissional de Técnico de Gestão de Equipamentos Informáticos 10º ANO

Multiplicação Divisão

Prof. Leonardo Augusto Casillo

Prof. Leonardo Augusto Casillo

EXPERIÊNCIA 8 CIRCUITOS ARITMÉTICOS: SOMADORES SUBTRATORES

CONCURSO PÚBLICO PARA PROFESSOR DE ENSINO MÉDIO E TÉCNICO, Nº 065/11/ PROCESSO Nº 5191/2017.

Computação e Programação

Sistemas Binários. José Delgado Arquitetura de Computadores Sistemas binários 1

CENTRO FEDERAL DE EDUCAÇÃO TECNOLÓGICA DE MINAS GERAIS UNIDADE DE ENSINO SUPERIOR CURSO DE ENGENHARIA INDUSTRIAL ELÉTRICA PLANO DE ENSINO

UFMG DCC Álgebra de Boole. Slides ligeiramente adaptados daqueles do professor Osvaldo Farhat de Carvalho, DCC, UFMG

Capítulo V Sistemas Numéricos

Capítulo 04 : Sistemas Numéricos

SOMADORES E SUBTRATORES

Lógica Boolena. Aula 05. Prof. Msc. Arthur G. Bartsch

Arquitetura de Computadores

PARTE I I: ARITMÉTICA COMPUTACIONAL ARQUITETURA DE COMPUTADORES ANTONIO RAMOS DE CARVALHO JÚNIOR

Departamento de Engenharia Elétrica e de Computação SEL 384 Laboratório de Sistemas Digitais I Profa. Luiza Maria Romeiro Codá PRÁTICA Nº 4:

CAPÍTULO 6 ARITMÉTICA DIGITAL

Transcrição:

Universidade Federal de Santa Catarina Centro Tecnológico Departamento de Informática e Estatística Ciências da Computação & Engenharia Eletrônica Aula 1-T 1. Projeto de unidade lógico-aritmética (ULA). Representação de números inteiros em binário. Convenções do nível RT. Adição de números sem e com sinal, o somador paralelo carry-ripple e overflow. O subtrator e o somador-subtrator, overflow. Estrutura de uma ULA simples. Outras operações lógicas e aritméticas. Unidades funcionais para mais de dois. Circuitos Digitais e Níveis de Abstração. guntzel@inf.ufsc.br www.inf.ufsc.br/~guntzel/ine5406/ine5406.html

Representação de Inteiros em Binário Números Inteiros sem Sinal (Naturais) assumindo-se números com 4 bits binário decimal Menor número 0000 0 Maior número 1111 15 Intervalo de representação: [ 0, 15 ] Slide1T.2

Representação de Inteiros em Binário Números Inteiros sem Sinal (naturais) assumindo-se números com 8 bits binário decimal Menor número 00000000 0 Maior número 11111111 255 Intervalo de representação: [ 0, 255 ] Slide1T.3

Representação de Inteiros em Binário Números Inteiros sem Sinal (Naturais) Observe que: 11111111 2 = = 1x2 0 + 1x2 1 + 1x2 2 + 1x2 3 + 1x2 4 + 1x2 5 + 1x2 6 + 1x2 7 = = 1 + 2 + 4 + 8 + 16 + 32 + 64 + 128 = 255 Observe também que: 100000000 2 = = 0x2 0 + 0x2 1 + 0x2 2 + 0x2 3 + 0x2 4 + 0x2 5 + 0x2 6 + 0x2 7 + 1x2 8 = = 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 256 = 256 (= 255 + 1) Então, podemos nos referir ao 255 como 2 8-1, para efeitos de generalização. Slide1T.4

Representação de Inteiros em Binário Números Inteiros sem Sinal (naturais) Generalizando-se para n bits binário decimal Menor número 0000...0 0 Maior número 1111...1 2 n -1 Intervalo de representação: [ 0, 2 n -1] Slide1T.5

Representando Dados em Circuitos Digitais Algumas Convenções Indicando como um número de n+1 bits é composto (outro exemplo) Decompondo um número de n+1 bits em um número de n bits e mais um sinal 0 n n+1 n+1 overflow n S Slide1T.6

Circuitos Aritméticos São Circuitos Combinacionais que operam sobre dados numéricos. Exercício 1: Projetar um circuito combinacional capaz de testar se um número de 8 bits vale zero ou não. Este circuito deve operar conforme descrito na tabela abaixo. Tabela de funcionamento: zero significado 0 S 0 Interfaces: S =0? 8 1 S = 0 zero Slide1T.7

Circuitos Aritméticos Exercício 2: Projetar um circuito combinacional que compara dois números de 4 bits cada. Este circuito deve operar conforme descrito na tabela abaixo. Tabela de funcionamento: Interfaces: A B iguais significado 0 A B 1 A = B 4 =? iguais 4 Slide1T.8

Circuitos Aritméticos Exercício 2: solução... Função XOR (Exclusive OR, OU Exclusivo) Resulta 1 se as duas entradas forem iguais... X Y X Y X Y = X Y + X Y 0 0 0 0 1 1 1 0 1 1 1 0 X Y Porta lógica Circuito em soma de produtos X Y Slide1T.9

Circuitos Aritméticos Exercício 3: Projetar um circuito combinacional que compara dois números de 4 bits cada. Este circuito deve operar conforme descrito na tabela abaixo. Tabela de funcionamento: Interfaces: A B maior significado 4 4 0 A <= B 1 A > B A > B? maior Slide1T.10

Circuitos Aritméticos Qual é a operação aritmética mais importante? Resposta: a adição! Por quê? Porque ela serve de base para outras operações aritméticas mais frequentes nos sistemas digitais. Slide1T.11

Revisão de Adição Binária Adição de Números Sem Sinal Exemplo 1: Notação genérica Análise supondo A e B com 4 bits 0 1 0 0 transportes (carries) + A B + 0 1 1 0 (6) 0 1 0 0 (4) S 1 0 1 0 (10) resultado Supondo um somador que trabalhe com operandos de 4 bits, então o resultado S deverá pertencer ao intervalo [ 0, 15 ] Slide1T.12

Revisão de Adição Binária Adição de Números Sem Sinal Exemplo 2: + A B Cout = overflow + 1 1 0 0 transportes (carries) 1 1 0 0 (12) 0 1 1 0 (6) S 0 0 1 0 (18) resultado Caso o resultado não puder ser representado com 4 bits, o sinal Cout indicará que houve um estouro de representação (em inglês, overflow). Slide1T.13

Esquema da Adição Paralela Considerando dois números (A e B) com 4 bits cada a3 b3 a2 b2 a1 b1 a0 b0 c4 (=cout) c3 c2 c1 s3 s2 s1 s0 Há um elemento para cada coluna da soma. O sinal de transporte mais à esquerda (c4, neste caso), também recebe o nome de cout. Se este somador operar sobre inteiros sem sinal, então cout também servirá para indicar a ocorrência de overflow Slide1T.14

O Meio Somador Redesenhando, usando porta XOR a0 b0 a0 b0 c1 MS c1 s0 s0 s0 = a0 b0 + a0 b0 = a0 b0 c1 = a0 b0 Slide1T.15

Somador Para as Demais Colunas Projetando um tipo de circuito para as demais colunas: c4 a3 b3 c3 a2 b2 c2 a1 b1 c1 a0 b0 s3 s2 s1 s0 + c 4 c 3 c 2 c 1 a 3 a 2 a 1 a 0 b 3 b 2 b 1 b 0 Generalizando + c i a i b i adição de 3 bits s 3 s 2 s 1 s 0 c i+1 s i resultado em 2 bits carry resultado Com i >= 1 Slide1T.16

O Somador Completo ai bi a i b i MS ci+1 ci g i p i c i+1 c i si x i MS si = ci ai bi s i ci+1 = ai bi+ ai ci+ bi ci Slide1T.17

O Somador Paralelo Carry-Ripple (de 4 Bits) Diagrama de Blocos (Nível Lógico) a3 b3 a2 b2 a1 b1 a0 b0 c4 (=cout) c3 c2 c1 MS s3 s2 s1 s0 Símbolo no Nível RT cout A B 4 4 + Indicação do número de bits 4 S Slide1T.18

O Somador Paralelo Carry-Ripple (de 4 Bits) Diagrama de Blocos (Nível Lógico): versão 2 a3 b3 a2 b2 a1 b1 a0 b0 c4 (=cout) c3 c2 c1 c0 s3 s2 s1 s0 Símbolo no Nível RT A B 4 4 cout + 4 S Slide1T.19

O Somador Paralelo Carry-Ripple (de 4 Bits) Diagrama de Blocos (Nível Lógico): versão 3 a3 b3 a2 b2 a1 b1 a0 b0 c4 (=cout) c3 c2 c1 c0 = cin s3 s2 s1 s0 Símbolo no Nível RT A B 4 4 cout + cin 4 S Slide1T.20

Representando Dados em Circuitos Digitais Mais Convenções Somador-subtrator para operandos com n bits cada Indicando como um número de n+1 bits é composto overflow n +/- n overflow n +/- n n n n+1 Convenção para indicar que o bit menos significativo está mais à direita Slide1T.21

Somador Carry-Ripple: Custo x Desempenho A estrutura do somador carry-ripple baseia-se na fatoração da expressão do carry. A consequência disto é: Redução do custo (i.e., menor número de portas lógicas) Aumento do atraso (o cálculo de c4 depende de c3, que depende de c2, que depende de c1, que depende apenas das entradas c0, a0 e b0). a3 b3 a2 b2 a1 b1 a0 b0 c4 (=cout) c3 c2 c1 c0 = cin s3 Os slides complementares somadores rápidos mostra outros tipos de somadores. s2 Slide1T.22 s1 s0

Representação de Inteiros em Binário Como Representar Inteiros Negativos? Sinal-magnitude sinal Complemento de 1 sinal +3 = 0 0 1 1-3 = 1 0 1 1 +3 = 0 0 1 1-3 = 1 1 0 0 Complemento de 2 sinal Obtido a partir do +3, aplicando-se a inversão bit a bit +3 = 0 0 1 1-3 = 1 1 0 1 Obtido a partir do +3, aplicando -se a inversão bit a bit e após, somando-se 1 (uma unidade) Slide1T.23

Representação de Inteiros em Binário Números Inteiros com Sinal Para facilitar a construção de circuitos aritméticos, os negativos são representados em complemento de dois Assumindo-se números com 4 bits binário decimal Menor número 1000-8 Zero 0000 0 Maior número 0111 +7 Intervalo de representação: [ -8, +7 ] Slide1T.24

Representação de Inteiros em Binário Números Inteiros com Sinal Observe que: 0111 2 = 1x2 0 + 1x2 1 + 1x2 2 + 0x2 3 = = 1 + 2 + 4 + 0 = = +7 Observe também que: 1111 2 = 1x2 0 + 1x2 1 + 1x2 2-1x2 3 = = 1 + 2 + 4-8 = = -1 O bit mais à esquerda representa o sinal: se ele valer 1, o número é negativo. Caso contrário, o número é positivo ou zero. Slide1T.25

Representação de Inteiros em Binário Números Inteiros com Sinal assumindo-se números com 8 bits binário decimal Menor número 10000000-128 Zero 00000000 0 Maior número 01111111 +127 Intervalo de representação: [ -128, +127 ] Slide1T.26

Representação de Inteiros em Binário Números Inteiros com Sinal Generalizando-se para n bits binário decimal Menor número 1000...0-2 n-1 Zero 0000...0 0 Maior número 0111...1 +(2 n-1-1) Intervalo de representação: [ -2 n-1, +(2 n-1-1) ] Slide1T.27

Adição de Inteiros com Sinal Assumindo: Negativos são representados em complemento de dois Números com 4 bits binário decimal Menor número 1000-8 Zero 0000 0 Maior número 0111 +7 Intervalo de representação: [ -8, +7 ] Slide1T.28

Adição de Inteiros com Sinal (Assumindo Negativos em Complemento de 2) Exemplo 3: dois números positivos, cuja soma [-8,+7] + 0 0 0 0 transporte (carry) 0 0 1 0 (+2) 0 1 0 0 (+4) 0 1 1 0 (+6) resultado correto Slide1T.29

Adição de Inteiros com Sinal (Assumindo Negativos em Complemento de 2) Exemplo 4: dois números negativos, cuja soma seja -8 Apesar deste último carry valer 1, não houve overflow + 1 1 0 0 transporte (carry) 1 1 1 0 (-2) 1 1 0 0 (-4) 1 0 1 0 (-6) resultado correto Slide1T.30

Adição de Inteiros com Sinal (Assumindo Negativos em Complemento de 2) Exemplo 5: um número positivo e um número negativo, tais que o resultado é positivo Novamente + 1 1 1 1 transporte (carry) 0 1 1 1 (+7) 1 1 1 1 (-1) 0 1 1 0 (+6) resultado correto Slide1T.31

Adição de Inteiros com Sinal (Assumindo Negativos em Complemento de 2) Exemplo 6: um número positivo e um número negativo, tais que o resultado é negativo + 0 0 0 1 transporte (carry) 1 0 0 1 (-7) 0 0 0 1 (+1) 1 0 1 0 (-6) resultado correto Slide1T.32

Adição de Inteiros com Sinal (Assumindo Negativos em Complemento de 2) Exemplo 7: um positivo e um negativo, iguais em módulo E novamente + 1 1 1 1 transporte (carry) 0 1 0 1 (+5) 1 0 1 1 (-5) 0 0 0 0 (0) resultado correto Slide1T.33

Adição de Inteiros com Sinal (Assumindo Negativos em Complemento de 2) Exemplo 8: 2 números positivos ocorre overflow quando esses 2 bits são diferentes + 0 1 0 0 transporte (carry) 0 1 0 0 (+4) 0 1 0 1 (+5) 1 0 0 1 (-7) Resultado errado! o resultado excede o intervalo de representação = overflow Slide1T.34

Adição de Inteiros com Sinal (Assumindo Negativos em Complemento de 2) Exemplo 9: 2 números negativos ocorre overflow quando esses 2 bits são diferentes + 1 0 0 0 transporte (carry) 1 1 0 0 (-4) 1 0 1 1 (-5) 0 1 1 1 (+7) Resultado errado! o resultado excede o intervalo de representação = overflow Slide1T.35

Adição de Inteiros com Sinal (Assumindo Negativos em Complemento de 2) Conclusões: Números binários em complemento de 2 podem ser adicionados como se fossem números binários sem sinal! Neste caso, a detecção de overflow se dá comparando-se os dois últimos sinais de carry Slide1T.36

O Somador Paralelo Carry-Ripple (de 4 Bits) Modificado para Operar Sobre Números com Sinal (Assumindo negativos em complemento de 2) Diagrama de Blocos (Nível Lógico) a3 b3 a2 b2 a1 b1 a0 b0 c4 (=cout) c3 c2 c1 MS overflow s3 s2 s1 s0 Slide1T.37

O Somador Paralelo Carry-Ripple (de 4 Bits) Modificado para Operar Sobre Números com Sinal (Assumindo negativos em complemento de 2) Diagrama de Blocos (Nível Lógico): versão 2 a3 b3 a2 b2 a1 b1 a0 b0 c4 (=cout) c3 c2 c1 c0 overflow s3 s2 s1 s0 Slide1T.38

O Somador Paralelo Carry-Ripple (de 4 Bits) Modificado para Operar Sobre Números com Sinal (Assumindo negativos em complemento de 2) Diagrama de Blocos (Nível Lógico): versão 3 a3 b3 a2 b2 a1 b1 a0 b0 c4 (=cout) c3 c2 c1 c0 = cin overflow s3 s2 s1 s0 Slide1T.39

O Somador Paralelo Carry-Ripple (de 4 Bits) Símbolos no Nível RT cout overflow overflow A B 4 4 + S A + cout overflow A B 4 4 4 4 S B 4 4 S overflow + A B 4 4 4 4 S + cin cin Slide1T.40

Circuitos Aritméticos Exercício 4: Usando o somador carry-ripple, projetar um circuito combinacional que troca o sinal de um número inteiro de 4 bit. Interfaces: B 4 Troca sinal B Slide 2T.41

Circuitos Aritméticos Exercício 4: Solução Trocar o sinal significa aplicar as regras do complemento de dois ao número, ou seja: 1. Negar ( NOT ) bit a bit o número 2. Somar uma unidade ao resultado do passo anterior Slide 2T.42

Circuitos Aritméticos Exercício 4: Solução b3 b2 b1 b0 B 0 0 0 0 c4 = cout c3 c2 c1 c0 = cin = 1 r3 r2 r1 r0 -B Slide 2T.43

Subtração de Números Inteiros em Binário Princípio A B = A + ( B ) Onde B é o número B de sinal trocado! Ora, que coincidência!! (Ou não?) Slide 2T.44

Subtrator Paralelo (de 4 bits) A B = A + ( B ) b3 b2 b1 b0 a3 a2 a1 a0 0 0 0 0 c4 (=cout) c3 c2 c1 c0 = cin = 1 overflow s3 s2 s1 s0 Slide 2T.45

Subtrator Paralelo (de 4 bits) Diagrama de Blocos (Nível Lógico) b3 b2 b1 b0 a3 a2 a1 a0 c4 (=cout) c3 c2 c1 c0 = cin = 1 overflow s3 Símbolos no Nível RT s2 A B 4 4 s1 s0 A B 4 4 cout overflow 4 overflow 4 S Slide 2T.46 S

Subtrator/Subtrator Paralelo (de 4 bits) Somador a3 b3 a2 b2 a1 b1 a0 b0 c4 = cout c3 c2 c1 c0 = cin = 0 s3 s2 s1 s0 b3 b2 b1 b0 a3 a2 a1 a0 Subtrator c4 = cout c3 c2 c1 c0 = cin = 1 s3 s2 s1 s0 Slide 2T.47

Subtrator/Subtrator Paralelo (de 4 bits) Como uni-los em um único circuito, configurável? b3 b2 b1 b0 a3 a3 b3 a2 a2 b2 a1 a1 b1 a0 a0 b0 c4 c4 = = cout cout c3 c3 c2 c2 c1 c1 c0 c0 = cin cin = 01 s3 s3 s2 s2 s1 s1 s0 s0 Slide 2T.48

Subtrator/Subtrator Paralelo (de 4 bits) Resposta!!! b3 b2 b1 b0 a3 a2 a1 a0 c3 c4 (=cout) c3 c2 c1 c0 = cin = controle overflow s3 s2 s1 s0 controle operação 0 S=A+B 1 S=A-B Slide 2T.49

Subtrator/Subtrator Paralelo (de 4 bits) Símbolo no Nível RT A B 4 4 A B 4 4 cout overflow +/ controle overflow +/ controle 4 4 S S Tabela de Operação controle operação 0 S=A+B 1 S=A B Slide 2T.50

ULA Simples Suponha que se necessite de uma Unidade Lógico-Aritmética (ULA) capaz de realizar as seguintes operações C1 C0 operação comentário 0 0 S = A + B adição 0 1 S = A - B subtração 1 0 S = A AND B E bit a bit 1 1 S = A OR B OU bit a bit Símbolo no nível RT A B n n overflow 2 ULA n S C Obs: o sinal de overflow pode ou não ser necessário Slide 2T.51

ULA Simples C1 C0 operação Visão Geral desta ULA 0 0 S = A + B A B 0 1 S = A - B 1 0 S = A AND B 1 1 S = A OR B n n +/- n AND/OR bit a bit n C0 C0 operação 0 S=A+B 0 1 C1 C0 operação 0 S=A AND B 1 S=A-B n 1 S=A OR B S Slide 2T.52

ULA Simples Visão de um bit desta ULA (os demais bits serão similares) a0 b0 C1 C0 operação 0 0 S = A + B 0 1 S = A - B 1 0 S = A AND B c1 0 1 C0 1 1 S = A OR B 0 1 C1 s0 Slide 2T.53

ULA Simples Multiplexador no Nível RT... n 0 1 n n C1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 Todos os n muxes 2:1 são controlados pelo mesmo sinal C1 n muxes 2:1 C1 Slide 2T.54

ULA Simples Mas onde foi parar o overflow? Voltando ao projeto do todo A B n n n n overflow +/- AND/OR bit a bit C0 n 0 n n+1 n+1 0 1 n+1 C1 overflow n S Slide 2T.55

Deslocador Combinacional Um deslocador (shifter) com uso de multiplexadores 2:1 A3 A2 A1 A0 entrada serial desloca 0 1 0 1 0 1 0 1 S3 S2 S1 S0 Se desloca=1, este circuito desloca cada bit uma posição para a esquerda Qual é o significado desta operação? Slide 2T.56

Deslocador Combinacional Outro deslocador (shifter) com uso de multiplexadores 2:1 A3 A2 A1 A0 entrada serial desloca 1 0 1 0 1 0 1 0 S3 S2 S1 S0 Se desloca=1, este circuito desloca cada bit uma posição para a direita Qual é o significado desta operação? Slide 2T.57

Multiplicação com Circuito Combinacional O Multiplicador Matricial É uma implementação direta do esquema ao lado Cada bit dos produtos parciais é gerado por meio de um E lógico + x 1 0 0 1 1 0 1 1 1 0 0 1 1 0 0 1-0 0 0 0 - - 1 0 0 1 - - - multiplicando multiplicador produtos parciais 1 1 0 0 0 1 1 resultado Slide 2T.58

Multiplicação com Circuito Combinacional O Multiplicador Matricial (p/ Números s/ Sinal) Para multiplicar dois números de n bits são necessários n-1 somadores de n bits Problemas: A 2 B Custo 2 Atraso crítico! A 2 B 1 A 2 B 0 A 1 B 2 Carry out A 0 B 2 A 1 B 1 A 1 B 0 0 Somador de 3 bits A 0 B 1 A 0 B 0 Carry out Somador de 3 bits caminho crítico M 5 M 4 M 3 M 2 M 1 M 0 Slide 2T.59

Multiplicação com Circuito Combinacional O Multiplicador Matricial (p/ Números s/ Sinal) O Símbolo no Nível RT X 3 Y 3 * 6 S Slide 2T.60