Tutorial de Verilog: Meio Somador (Half Adder)

Dando prosseguimento aos tutoriais de Verilog, confira neste post o Meio Somador de 1-bit, ou Half Adder em inglês. Relembre também a porta XOR.
Meio Somador

Dando prosseguimentos aos tutoriais de Verilog, apresento neste post o Meio Somador de 1-bit, ou Half Adder em inglês. O circuito meio somador é definido como o circuito que soma duas entradas e também que possui o carry, ou vai um. Supomos que temos duas entradas A e B e duas saídas, a soma, representado por S e Carry, que responde ao que conhecemos também por vai um, ou overflow da soma. A Soma (S) e o Carry (C) podem ser representados pela seguinte tabela:

Meio Somador

O circuito que satisfaz essa tabela é facilmente modelado com duas portas lógicas, a porta XOR para a soma, S, e a porta AND para o Carry, C. Veja o esquemático abaixo.

Meio Somador

 

Representação do Circuito Meio Somador em Verilog:

Implementei de duas formas diferentes, a primeira utilizando assign e lógica. A segunda utilizando as duas portas lógicas, conforme mostrado acima no esquema elétrico. Utilizei o mesmo Testbench para todos os testes. Veja a seguir:

 

Testbench:

Faça Download do Projeto para o Quartus da Altera:

download_proteus_arduino_lcd

Faça Download do Projeto para o Quartus da Altera:

download_proteus_arduino_lcd

 

Forma de Onda resultante do teste:

Meio Somador

Circuito Meio Somador (Half Adder) com NORs:

Reveja como representei a porta lógica XOR apenas com NORs no post sobre essa porta. Para isso acesse este link. Substitui então a porta XOR do circuito acima pelo circuito com NORs que a representa e então verifiquei que nenhum circuito extra é necessário para o sinal de saída Carry. Podemos facilmente ver que, pelo teorema de De Moore, uma porta NOR com as duas entradas negadas é o mesmo que uma porta AND. Portanto, obtemos Carry, o sinal de saída C.

Meio Somador

 

Representação do Circuito Meio Somador (Half Adder) com NORs em Verilog:

Esse código não tem segredo, apenas representei as portas lógicas NORs.

Faça Download do Projeto para o Quartus da Altera:

download_proteus_arduino_lcd

Circuito Meio Somador (Half Adder) com NANDs:

Meio Somador

Representação do Circuito Meio Somador (Half Adder) com NANDs em Verilog:

Esse código também não tem segredo, apenas representei as portas lógicas NANDs.

Faça Download do Projeto para o Quartus da Altera:

download_proteus_arduino_lcd

O Esquemático que obtemos é o seguinte:

Meio Somador

É comum também encontrarmos o seguinte símbolo:

Meio Somador

Este circuito é muito importante porque a partir dele poderemos implementar um somador completo (Full Adder).

Acompanhe o Embarcados e veja o próximo post sobre o somador completo.

Para aprender mais sobre Verilog

Portas Lógicas

PROCESSADORES PROGRAMÁVEIS – como projetar um processador em VERILOG

Formas de representar um sistema digital

Outros artigos da série

<< Tutorial de Verilog: Decodificador ou DEMUXTutorial de Verilog: Somador Completo (full adder) >>

Sou formado em Engenharia Elétrica na USP Sao Carlos, com mestrado em Engenharia Elétrica no Rochester Institute of Technology pelo CsF. Tenho 17 anos de experiência em projetos de circuitos eletrônicos. Escrevo regularmente para o Embarcados, adoro eventos sobre tecnologia, onde posso rever amigos e conhecer pessoas do ramo.

Notificações
Notificar
guest
0 Comentários
Inline Feedbacks
View all comments

WEBINAR

Imagens de Ultrassom: Princípios e Aplicações

DATA: 26/10 ÀS 19:30 H