Projete um circuito que compute F=(A * B * C)+3 * D+12 A, B, C e D são entradas de 16 bits, e F é uma saída de 16 bits. Use multiplicadores e somadores de 16 bits no projeto. Ignore os problemas de overflow.

Passo 1

Beleza, vamos projetar um circuito que calcule a função . Aqui, , , e são entradas de 16 bits, e é a saída também de 16 bits. Para isso, vamos precisar usar multiplicadores e somadores de 16 bits. Vamos ignorar os problemas de overflow para simplificar.

Passo 2

Primeiro, vamos entender cada parte da função . A função tem três termos:
  1. : Isto é uma multiplicação de três números.
  2. : Multiplicação de por 3.
  3. : Um valor constante.
Vamos precisar de multiplicadores para calcular esses produtos e somadores para adicionar os resultados.

Passo 3

Vamos começar com o primeiro termo . Como multiplicar três números usando multiplicadores de 16 bits?
A gente pode fazer isso em etapas. Primeiro, multiplicamos e usando um multiplicador de 16 bits, o que nos dá um produto de 32 bits. Depois, multiplicamos esse resultado por , usando outro multiplicador de 16 bits. Para simplificar, vamos considerar apenas os 16 bits menos significativos do resultado final.

Passo 4

Agora, para o segundo termo . Como multiplicar um número por 3 usando um multiplicador de 16 bits?
Podemos fazer isso multiplicando por 2 e depois somando ao resultado. Ou seja, . Isso pode ser feito usando um multiplicador de 16 bits para e um somador de 16 bits para adicionar .

Passo 5

O último termo é , que é um valor constante. Precisamos apenas somar esse valor ao resultado das multiplicações anteriores. Vamos usar um somador de 16 bits para isso.

Passo 6

Agora, vamos juntar tudo. Primeiro, calculamos . Depois, calculamos . Em seguida, somamos esses dois resultados e, por último, adicionamos 12. Usamos somadores de 16 bits para realizar as adições necessárias.

Resposta

O circuito projetado usa dois multiplicadores de 16 bits para calcular e , além de três somadores de 16 bits para somar os resultados dessas multiplicações com o valor constante 12. Assim, a saída de 16 bits será .

Exercícios relacionados