Se você já fez o tutorial Como projetar o CI CD4069 em Verilog , este tutorial será familiar para você. Neste tutorial, vamos projetar o circuito integrado (CI) CD4081 na Plataforma Pitanga. Ao final, você será capaz de experimentar o CD4081 na sua máquina, em tempo real e sem FPGA, emulando-o na C-Board, conforme indicado na Figura 1:

Figura 1. Emulando o circuito integrado CD4081 na C-Board Virtual Pitanga.
Este tutorial oferece duas formas de chegar ao resultado final: você pode acompanhar o vídeo abaixo ou seguir o passo a passo detalhado descrito neste artigo. Escolha o formato que mais combina com você e vamos dar início à jornada!
Nota: você pode projetar este CI mais facilmente na S-Board, pois a S-Board possui chaves deslizantes suficientes para atribuir todas as entradas deste circuito.
O que é o Circuito Integrado CD4081?
O circuito integrado CD4081 foi introduzido no mercado em meados de 1968 pela empresa americana RCA1 (Radio Corporation of America). Esta empresa introduziu a série de circuitos integrados digitais CMOS 40002, ainda disponível no mercado nos dias atuais pela Texas Instruments3.
Originalmente, esta série de circuitos integrados foi lançada no mercado norte-americano com preço aproximado de US$13 por unidade. Corrigido pela inflação, esse valor equivaleria a cerca de US$113 em 20254. Curiosamente, o mesmo componente pode ser adquirido hoje por apenas US$0,865!
Essa drástica redução de custo só se tornou possível graças ao avanço exponencial da tecnologia de semicondutores, que possibilitou a miniaturização dos transistores, maior densidade de integração e fabricação em escala industrial com altíssima eficiência.
Mas essa fascinante evolução merece destaque próprio — voltaremos a ela em tutoriais futuros!
Qual é a pinagem e o diagrama lógico do CD4081?
O CD4081 é composto por 4 portas lógicas AND de duas entradas cada. Essas portas lógicas são independentes, ou seja, cada porta pode ser utilizada de forma isolada, sem depender das outras. No datashet do CD40816 há o diagrama de porta lógicas mostrado em conjunto com um esquema de disposição dos pinos no encapsulamento do CD4081. A Figura 2 a seguir apresenta os detalhes:

Figura 2. Diagrama lógico e disposição de pinos no CI CD4081B. Adaptado de [6]
Nas próximas seções, faremos a descrição do circuito integrado CD4081 em Verilog, tomando como base a Figura 2. Utilizaremos a C-Board da Plataforma Pitanga para compilar o código e realizar a análise dos resultados. Ao final, será possível emular o circuito diretamente na C-Board, permitindo verificar se seu comportamento está de acordo com as especificações funcionais descritas no datasheet da fabricante.
Descrevendo a Funcionalidade do CD4081 com uma porta AND
A Figura 2 apresenta a configuração dos pinos do CI CD4081 e o seu correspondente diagrama lógico. A partir dessas informações, vamos construir a Tabela 1, indicando os pinos de entrada e saída. Essa informação vai nos ajudar na descrição do circuito final.
| Pino | Direção | Descrição |
|---|---|---|
| A | Entrada | Pino de entrada para o AND a |
| B | Entrada | Pino de entrada para o AND a |
| C | Entrada | Pino de entrada para o AND b |
| D | Entrada | Pino de entrada para o AND b |
| E | Entrada | Pino de entrada para o AND c |
| F | Entrada | Pino de entrada para o AND c |
| G | Entrada | Pino de entrada para o AND d |
| H | Entrada | Pino de entrada para o AND d |
| J | Saída | Pino de saída da AND a |
| K | Saída | Pino de saída da AND b |
| L | Saída | Pino de saída da AND c |
| M | Saída | Pino de saída da AND d |
| Vdd | - | Fonte de alimentação positiva |
| Vss | - | Fonte de alimentação negativa |
Tabela 1. Descrição dos pinos do CI CD4081B. Adaptado de [6].
O circuito integrado CD4081 é constituído por quatro portas AND independentes. No entanto, antes de prosseguir com o desenvolvimento do projeto completo, vamos projetar o circuito apenas com porta lógica AND a. Para isso, vamos utilizar as linhas da tabela referente a porta lógica a descrita na Figura 2. Veja o resultado no código a seguir:
module cd4081(A, B, J);
input A, B; output J;
and(J, A, B); // AND a
endmodule
Na implementação acima, a porta lógica AND foi descrita utilizando a construção and. Em Verilog, essa construção recebe três parâmetros: o primeiro corresponde à saída da porta lógica, a segundo à entrada 1 e a terceira à entrada 2. Assim, a construção and(J, A, B) descreve uma porta lógica AND com uma saída J e duas entradas A e B, respectivamente. De forma semelhante, podemos descrever outros tipos de portas lógicas, como OR, NAND, NOR, XOR e XNOR, utilizando as construções or, nand, nor, xor e xnor, respectivamente. Entretanto, para este projeto, vamos nos concentrar apenas na porta lógica AND.
Concluída a descrição funcional em Verilog, o próximo passo é realizar o mapeamento das portas A, B e J do módulo cd4081 para os componentes virtuais da C-Board. Neste tutorial, a porta de saída J será vinculada ao LED led0, enquanto as portas de entrada A e B serão associadas às chaves deslizantes sw0 e sw1, respectivamente. Abaixo, apresentamos o trecho de código responsável pela definição da pinagem:
// Texto seguido de duas barras consectivas não é processado pela Pitanga
// PORTA COMPONENTE NA PLACA
A = sw0;
B = sw1;
J = led0;
A próxima etapa é verificar se o código está corente, compilando-o na Pitanga. Para isso, acesse a sua conta Pitanga e, usando a Placa Virtual C (C-Board), copie e cole o código Verilog e o de pinagem acima nos editores Verilog e de Pinos, respectivamente. Clique no botão “Run”. O resultado será mostrado no terminal de saída da Pitanga e deve ser igual ao mostrado abaixo:
Top level design units:
cd4081
Build succeeded: 0 errors, 0 warnings
DESIGN SUMMARY REPORT
module : cd4081
design file: pitanga.v
pinout file: pitanga.pinout
Total number of wires: 3
Total number of cells: 1
Total number of ports: 5
Cell Instances Cell Instances Cell Instances
-----------------------------------------------------------------
AND2 1 | NAND2 0 | XOR2 0
AND3 0 | NAND3 0 | XOR3 0
AND4 0 | NAND4 0 | XOR4 0
OR2 0 | NOR2 0 | XNOR2 0
OR3 0 | NOR3 0 | XNOR3 0
OR4 0 | NOR4 0 | XNOR4 0
-----------------------------------------------------------------
BUF 0 | INV 0 | DFFRSE 0
Cells utilization: 1
Transistor count : 6/500 transistors (1.20 %)
Note que a Pitanga indica o uso de uma porta AND de duas entradas (AND2) no relatório de design. Este comportamento pode ser visto na C-Board indicada na Figura 3 através do LED led0 ligado enquanto as chaves deslizantes sw0 e sw1 estão ativadas. Quando qualquer uma das chaves sw0 ou sw1 estão desativadas, o LED led0 se apaga. Este é exatamente o comportamento esperado por uma porta lógica AND2.

Figura 3. Emulação de uma porta AND de duas entradas.
Analise, também, a quatidade de fios reportado no relatório de design. Ao todo são 3 wires (fios) e 5 ports (portas). Lembre-se, do tutorial anterior, que a Pitanga contabilizada as portas de alimentação Vdd e Vss, motivo pelo qual há duas portas adicionais somadas as portas explicitamente descritas no Verilog.
Projetando o Circuito Integrado CD4081 na C-Board
Agora que já temos a descrição de uma porta lógica AND2, vamos expandir o projeto para incluir as outras portas lógicas AND2 do CD4081. Para isso, vamos replicar a construção da porta lógica AND2 a para as portas b, c e d, conforme indicado na Figura 2. O código Verilog atualizado fica assim:
// Descrição do Circuito CD4081B (Texas Instruments)
module cd4081(A, B, C, D, E, F, G, H, J, K, L, M);
// Declaração e direcionamento das portas
input A, B; output J; // entradas e saída da porta 'a'
input C, D; output K; // entradas e saída da porta 'b'
input E, F; output L; // entradas e saída da porta 'c'
input G, H; output M; // entradas e saída da porta 'd'
// Portas lógicas AND2
and(J, A, B); // porta 'a'
and(K, C, D); // porta 'b'
and(L, E, F); // porta 'c'
and(M, G, H); // porta 'd'
endmodule
O CI CD4081 possui 8 entradas e 4 saídas. As 4 saídas podem ser facilmente mapeadas para os LEDs led0 a led3. No entanto, as 8 entradas não podem ser mapeadas diretamente para as chaves deslizantes da C-Board, pois ela possui apenas 6 chaves (sw0 a sw5). Para resolver essa limitação, vamos utilizar os botões virtuais btn0 e btn1. Dessa forma, conseguimos compilar o CI CD4081 na C-Board. Seu arquivo de pinagem, coniderando o mapeamento para os botões, segue abaixo:
// Sintaxe:
// <port> = <etiqueta do componente na placa>;
// Mapeamento do CD4081 na C-Board
// portas de entrada
A = sw0; B = sw1;
C = sw2; D = sw3;
E = sw4; F = sw5;
G = btn0; H = btn1;
// portas de saída
J = led0;
K = led1;
L = led2;
M = led3;
Copie e cole o código Verilog e o de pinagem acima nos editores Verilog e de Pinos, respectivamente. Em seguida, compile o código clicando no botão “Run”. O resultado da compilação do projeto será impresso no terminal da Pitanga, conforme indicado abaixo:
Top level design units:
cd4081
Build succeeded: 0 errors, 0 warnings
DESIGN SUMMARY REPORT
module : cd4081
design file: pitanga.v
pinout file: pitanga.pinout
Total number of wires: 12
Total number of cells: 4
Total number of ports: 14
Cell Instances Cell Instances Cell Instances
-----------------------------------------------------------------
AND2 4 | NAND2 0 | XOR2 0
AND3 0 | NAND3 0 | XOR3 0
AND4 0 | NAND4 0 | XOR4 0
OR2 0 | NOR2 0 | XNOR2 0
OR3 0 | NOR3 0 | XNOR3 0
OR4 0 | NOR4 0 | XNOR4 0
-----------------------------------------------------------------
BUF 0 | INV 0 | DFFRSE 0
Cells utilization: 4
Transistor count : 24/500 transistors (4.80 %)
Exatamente 4 portas lógicas AND2 foram utilizadas. Cada porta AND2 consome 6 transistores CMOS7, resultando em um total de 24 transistores CMOS utilizados no projeto. Este resultado é consistente com o esperado para o CD4081, que possui 4 portas lógicas AND2. O número total de 14 portas (ports) está consistente com o total de portas do CI4081 indicado na Tabela 1, (lembre-se que a Pitanga contabiliza as portas de alimentação Vdd e Vss). Por fim, os 12 fios (wires) utilizados no projeto correspondem às 8 entradas e 4 saídas do CD4081 conectadas aos componentes virtuais da C-Boad.
Emulando o Circuito Integrado CD4081 na Pitanga C-Board
Agora é o momento ideal para explorar e interagir com seu projeto, observando o comportamento dinâmico do circuito na C-Board. Para isso, experimente ativar e desativar as chaves deslizantes sw0 a sw5, observando as alterações nos LEDs led0 a led3. Note que o LED led0 acende quando ambas as chaves sw0 e sw1, conectadas à porta lógica AND2 a, estão ativadas. Por outro lado, o LED led0 apaga sempre que qualquer uma dessas chaves estiver desativada, confirmando o funcionamento característico da lógica AND. Este mesmo comportamento deve ser observado para:
- o LED
led1, que deve acender quando ambas as chavessw2esw3estiverem ativadas, - o LED
led2, que deve acender quando ambas as chavessw4esw5estiverem ativadas, - e o LED
led3, que deve acender quando ambos os botões virtuaisbtn0ebtn1estiverem pressionados.
No entanto, devido a limitação da C-Board, não possível pressionar os botões virtuais btn0 e btn1 ao mesmo tempo, o que impossibilita a verificação do LED led3. Sendo assim, a Figura 1, mostrado no início deste artigo, mostra a emulação do CD4081 na C-Board, onde o LED led3 está apagado, pois os botões virtuais btn0 e btn1 não estão pressionados.
Nota: Se você estiver utilizando a S-Board, poderá utilizar as chaves deslizantes
sw6esw7ao invés dos botões virtuaisbtn0ebtn1. Dessa forma, você conseguirá emular o CD4081 mais facilmente. O resultado da emulação, neste caso, pode ser verificado na Figura 4.

Figura 4. Exemplo de emulação do CI CD4089 na S-Board Virtual Pitanga.
Conclusão
Parabéns por chegar até aqui! Isso indica que você foi capaz de desenvolver o circuito integrado CD4081 em Verilog, realizar o mapeamento dos sinais para os componentes virtuais da C-Board e compilar o projeto com sucesso. Com o suporte da Placa Virtual Pitanga, você pôde vivenciar na prática a experiência de projetar circuitos digitais utilizando Verilog. Vale destacar que este mesmo circuito pode ser implementado em dispositivos lógico-programáveis (FPGAs) ou diretamente em tecnologia de semicondutores — temas que abordaremos em próximos tutoriais.
Referências
Wikipedia. “Radio Corporation of America.” [Online]. Disponível em: https://en.wikipedia.org/wiki/RCA . Acesso em: 21-Jul-2025. ↩︎
B. Lojek, History of Semiconductor Engineering. Berlin, Germany: Springer, 2007. ↩︎
Texas Instruments. “Site oficial.” [Online]. Disponível em: https://www.ti.com/ . Acesso em: 21-Jul-2025. ↩︎
In2013Dollars.com. “Calculadora de Inflação dos EUA.” [Online]. Disponível em: https://www.in2013dollars.com/ . Acesso em: 21-Jul-2025. ↩︎
Mouser Electronics. “Distribuidor de Componentes Eletrônicos – Mouser Brasil.” [Online]. Disponível em: https://br.mouser.com/ . Acesso em: 21-Jul-2025. ↩︎
[10] Texas Instruments. “CD4081B – Datasheet.” [Online]. Disponível em: https://www.ti.com/lit/ds/symlink/cd4081b.pdf?ts=1753018496483 . Acesso em: 21-Jul-2025. ↩︎
N. H. E. Weste e D. M. Harris, CMOS VLSI Design: A Circuits and Systems Perspective, 4ª ed. Boston, MA, EUA: Addison-Wesley, 2011. ↩︎

