ENGENHARIA DA COMPUTAÇÃO MULTIPLICADOR BINARIO DE 4 BITS
Por: Luana Fernandes • 30/9/2018 • Trabalho acadêmico • 1.239 Palavras (5 Páginas) • 449 Visualizações
UNIVERSIDADE ANHEMBI MORUMBI
ENGENHARIA DA COMPUTAÇÃO
MULTIPLICADOR BINARIO DE 4 BITS
COMBINACIONAL
Projeto Integrado
Professor Coordenador
Christiam Segundo Morales Alvarado
Luana Fernandes
INTRODUÇÃO
O processo de multiplicação de números binários é realizada da mesma maneira como a de números decimais. O multiplicando é multiplicado por cada bit do multiplicador, começando pelo LSB (Least Significant Bit) ou seja do bit menos significativo, até chegar no MSB( most significant bit), sendo ele o bit mais significativo. E o resultado de cada uma dessas multiplicações formam um produto parcial, sendo que durante a multiplicação esses resultados são descolocados uma posição para a esquerda em relação a linha anterior, e o produto final é obtido através da soma de todos os produtos parciais.
OBJETIVOS
Este projeto tem o objetivo mostrar todos os passos para a implementação de um circuito multiplicador binário de 4 bits. Tendo isso em vista, foram desenvolvidos blocos lógicos com os possíveis circuitos combinacionais necessários para o processo de execução da multiplicação binária.
FUNDAMENTOS TEORICOS
- Circuitos lógicos
Os circuitos lógicos dos sistemas digitais podem ser de dois tipos: circuitos sequenciais ou circuitos combinacionais. Um circuito sequencial, emprega elementos de armazenamento denominados latches e flip-flops, além de portas lógicas. Os valores das saídas do circuito dependem dos valores das entradas juntamente com a informação dos estados dos latches ou flip-flops utilizados. Como os estados dos latches e flip-flops é função dos valores anteriores das entradas, diz-se que as saídas de um circuito sequencial dependem dos valores das entradas e do histórico do próprio circuito. Logo, o comportamento de um circuito sequencial é especificado pela sequência temporal das entradas e de seus estados internos.
Figura 1: Diagrama genérico de um circuito sequencial.[pic 1]
Um circuito combinacional, por sua vez, é constituído por um conjunto de portas lógicas as quais determinam os valores das saídas exclusivamente a partir dos valores atuais das entradas. Pode-se dizer que um circuito combinacional realiza uma operação de processamento de informação a qual pode ser especificada por meio de um conjunto de equações Booleanas. Pode-se dizer que um circuito combinacional realiza uma operação de processamento que pode ser especificada por meio de um conjunto de equações booleanas. Um circuito combinacional possui entradas, portas lógicas e um certo número de saídas, como mostra a figura abaixo[pic 2]
Figura 2: Diagrama genérico de um circuito combinacional.
- Multiplicador
Como citada na introdução a multiplicação de dois números binários é realizada da mesma maneira como a de números decimais. Sendo que no caso dos binários o processo é bem mais simples, pois os dígitos do multiplicador são sempre 0 ou 1, o que torna a operação simples de executar, embora para um computador digital seja uma operação custosa, descreve-se abaixo uma pequena definição do Multiplicador Binário segundo Midorikawa (2001), que diz: ”O Multiplicador Binário é responsável pela realização de uma multiplicação de dois números binários, ele é considerado uma das operações mais custosas em um computador digital. Basicamente, o algoritmo tradicional de multiplicação de dois números binários sem sinal é composto por sucessivos deslocamentos do multiplicando à esquerda (que constituem as parcelas do cálculo dos produtos parciais) e uma soma”, conforme a figura abaixo:
[pic 3]
Figura 3: Funcionamento do multiplicador binário.
Midorikawa (2001) explica a execução do algoritmo que leva em consideração um bit do multiplicador de cada vez, começando a partir do bit menos significativo. Se o bit do multiplicador for 1, o multiplicando é copiado para ser somado posteriormente. Caso contrário, se o bit do multiplicador for 0, um valor nulo é copiado em seu lugar. Os sucessivos produtos parciais são deslocados por uma posição à esquerda em relação à linha anterior. E finalmente, o produto final é obtido a partir da soma das parciais. Na implementação deste circuito consideram-se as operações lógicas descritas na figura seguinte, utilizando circuitos adicionadores completos para as operações assinaladas a cinzento
[pic 4]
Figura 4: exemplo de multiplicador binário 2x2
Tendo por base o seguinte adicionador completo:
Ci=Transporte anterior (“Carry in”)[pic 5]
Co=Transporte seguinte(“Carry out”)
Obtém-se o diagrama lógico:
[pic 6]
Figura 5:diagrama logico do circuito
Contudo, não é essa a única forma possível de implementar a multiplicação. Dadas duas entradas de n-bits (X, Y), pode escrever-se a tabela de verdade que expressa o produto P=X*Y de 2n-bits através duma função combinacional de X e Y. A maior parte das estratégias de implementação de multiplicadores combinacionais baseiam-se no algoritmo tradicional com deslocamentos e somas.[pic 7]
Figura 6: exemplo de deslocamento e somas
[pic 8]
Figura 7: Implementação da estratégia de multiplicação anterior
DESENVOLVIMENTO
Para que o circuito faça a multiplicação de dois números binários de dois bits, dando um resultado com quatro bits. O sistema precisará de quatro entradas (de dois dígitos binários) e quatro saídas. Adotando como entradas AB e XY agrupadas em pares, obteremos resultados na tabela-verdade sendo que para esse número de resultados são necessários quatro bits de saída que serão distribuídos em quatro saídas diferentes , logo cada saída terá seu próprio circuito lógico.[pic 9][pic 10]
Após atribuído um nome ou símbolo para cada variável de entrada e para cada variável de saída, precisaremos montar a tabela verdade para determinar os valores lógicos de proposição composta. E em seguida montaremos os mapas de Karnaugh para cada dígito de saída, simplificando assim o máximo das funções lógicas, implementando-as com portas lógicas mais comuns (de duas entradas).
A | B | X | Y | [pic 11] | [pic 12] | [pic 13] | [pic 14] |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 |
0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 |
0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 1 | 0 | 1 | 0 | 0 | 0 | 1 |
0 | 1 | 1 | 0 | 0 | 0 | 1 | 0 |
0 | 1 | 1 | 1 | 0 | 0 | 1 | 1 |
1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
1 | 0 | 0 | 1 | 0 | 0 | 1 | 0 |
1 | 0 | 1 | 0 | 0 | 1 | 0 | 0 |
1 | 0 | 1 | 1 | 0 | 1 | 1 | 0 |
1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
1 | 1 | 0 | 1 | 0 | 0 | 1 | 1 |
1 | 1 | 1 | 0 | 0 | 1 | 1 | 0 |
1 | 1 | 1 | 1 | 1 | 0 | 0 | 1 |
Figura 8: Tabela verdade do multiplicador
...