Ir ao conteúdo
  • Cadastre-se

Somador binario de 2 ou 4 bits


Posts recomendados

Boas a todos!

 

Estou cursando a disciplina de Arquitetura de computadores na faculdade, faremos uma exposicão sobre a arquitetura e estou querendo apresentar um somador binario de pelo menos 4 bits. Minha intencao e demonstrar com funciona uma unidade artimetica e a magica do complemento de 1 e 2 na eletronica. 

 

Ja vi alguns circuitos utilizando CMOS, mas a didatica fica comprometida pois todos os calculos e feitos no proprio ci.

 

Queria um circuito usando apenas componentos discretos, apenas transistores. Quero comecar por um somador com dois bits, alguem possue algum circuito? Não importa muito a quantidade dos componentes, quanto mais discreto melhor. Fico no aguardo!

Link para o comentário
Compartilhar em outros sites

  • 2 semanas depois...

@Isadora Ferraz  Ola. Deixei meio quieto esse assunto e hoje retorno a fuçar com ele. Estou vendo sobre a porta xor, vi slgumas implementacoes com transistores, mas aque vi usava 5 transistores. Nao e muito mas quando penso em adicionar mais bits fica complicado esse tanto de transistores. Fiz esse esquema e pelo menos no proteus ele funciona: link. Embora ele seja muito didadico por causas do led, vai acabar com toda minha sucata aqui kkkk. 

 

Entao tem esse aqui que usa 4 diodos e 1 transistor, o que fica bom de mais, porém nao funcionou com o proteus.

 

 Sera porque? Pode me ajudar?

 

 

Link para o comentário
Compartilhar em outros sites

1 hora atrás, Aislan Silva Costa disse:

Entao tem esse aqui que usa 4 diodos e 1 transistor, o que fica bom de mais, porém nao funcionou com o proteus.

Eu que indiquei isso, na época montei de verdade e funcionou. 

O circuito é nada mais que uma porta or e uma nand em paralelo. 

Link para o comentário
Compartilhar em outros sites

58 minutos atrás, Aislan Silva Costa disse:

Olá, consegui neste outro circuito, colocando um resistor junto ao coletor do transistor q1.

Certo.

Não entendi pra que servem R1 e R4, quando eu fiz funcionavam sem (na prática no caso).

O valor do R3 é muito pra acender o Led, colque 2k2 ou 4k7.

1 hora atrás, Aislan Silva Costa disse:

Agora, no lugar do LogicState queria colocar um switch e um led, como posso proceder?

Coloque um segundo transistor pra amplificar a corrente, porque a que aparece ali é muito baixa pra acender um Led.

 

Da mesma forma do outro esquema:

Transistor NPN;

Emissor no terra;

Base com resistor de 1k serie e resistor na saída da porta;

Catodo do led em série com resistor no coletor do segundo transistor e anodo do led no + da fonte.

Link para o comentário
Compartilhar em outros sites

@Renato.88 O r4 e que sobro de uma tentativa minha de fazer outra coisa, e que ele ficou antes de tirar o print. Já o r1 eu vi de outro esquema, e retirei aqui e realmente não necessitava dele.

 

Eu não compreendi bem o que você disse sobre o led no lugar do logic state, poderia clarear minha mente? se possível o esquema?

Link para o comentário
Compartilhar em outros sites

1 hora atrás, Aislan Silva Costa disse:

@Renato.88 O r4 e que sobro de uma tentativa minha de fazer outra coisa, e que ele ficou antes de tirar o print. Já o r1 eu vi de outro esquema, e retirei aqui e realmente não necessitava dele.

 

Eu não compreendi bem o que você disse sobre o led no lugar do logic state, poderia clarear minha mente? se possível o esquema? 

imagem400.GIF.410fcb0c1fd8fc9e4da232a0d22740bd.GIF

Liga o R2 na saída da porta, lá onde está o zero.

Link para o comentário
Compartilhar em outros sites

@Renato.88 Pensando para uma implementação física dessa porta, assim estaria correto? O s1 quando não pressionado no caso, faria com que a saída estivesse em low não e? Nesse circuito agora, estaria funcionando como como pull down correto?

Será que fisicamente funciona?

teste.png.207c4d6553cfc0894514dc4205d50e1d.png

 

Link para o comentário
Compartilhar em outros sites

@Renato.88 Agora que fui ver os led, curto total, fiquei estão concentrado nos estados que esqueci me do led. Eu ja tinha feito a implementação usando o switch, porém no proteus não tem o switch ou push button com essa configuração, então usei o dois switchs comutando eles manualmente e funciona sim. Fisicamente eu tenho os puth button com essa configuração, mas antes quero testar tudo no proteus.

 

Acho que agora foi:

 

meiosomador.thumb.png.48da5b994a14ae95baa6222755260779.png

teste.png

Link para o comentário
Compartilhar em outros sites

@Renato.88 A configuração da porta xor foi resolvida. Consegui na teoria(simulação do proteus) um meio somador. Suponho que na pratica ele também funcione. Minha intenção agora e projetar o somador completo. Eu já vi em alguns sites em inglês um somador completo, nos comentarios dizia funcional, mas envolvia 18 transistores para apenas 2 bitis, então fica meio inviavel, pra mim, soldar diodos e resistores e mais fácil do que os transistores, alem de na sucata, muitos deles virem queimados. Já com esse circuito por exemplo, a porta xor usou apenas 1 transistor, a porta and 3(1 para o led), e a porta or fiz com a logica DTL.

 

O problema que venho propor aqui para analise  em partes e o seguinte:

Esse o somador completo, usando 2 meio somadores, e uma porta or:

fulladder.png.35dd594816998ac4172045fa6a191d07.png

Este o meio somador:

meiosomador.thumb.png.1a23ad7d2dd5008dcbfc62b15ea70dec.png

 

Esta e a porta and:

 

portaand.png.722e83761226ffeae0761f5d028d9b11.png

 

Seguindo esta logica, na saida da porta XOR do primeiro meio somador devo colocar na primeira entrada do segundo meio somador. e ambas entradas da porta AND do segundo meio somador, recebe as entradas da sua porta XOR. O problema esta ai, veja nesta imagem.

 

No meio somador:

1+1 Soma = 0, Carr out = 1 . Ate ai tudo certo

 

1 -> Entrada A  do meio somador

2-> tensão da saida da porta and -> 3.69v

3 -> estado da porta and, no caso HIGH

 

12.thumb.png.56210a7272438fcc9e41a40c1ad1a032.png

 

Para fazer o somador completo, preciso conectar a saida do primeiro meio somador a primera entrada do segundo somador. Eu faco isso, porém, olha o que acontece quando o faço:

 

No meio somador:

 

uma observação importante e que, se iniciar o proteus com essas chaves deste modo ele funciona, a porta and em questao tem seu estado em HIGh como deveria ser, porém ao mudar as chaves ele muda seu estado para indefinido e nao vai pra low nem high. O curioso e que os leds do somador completo funcionam corretamente segundo a tabela verdade, apenas as logic probe que nao.

 

1 -> Conexao do primeiro meio somador ao segundo meio somador

2-> tensão da saida da porta and -> 3.25v

3 -> estado da porta and, indefinido

 

13.thumb.png.d86f70568bff6cf7e0a4250fd98a816f.png

 

Eu peco que analisem pra mim o que estou fazendo de errado, e avisem se a explicação tiver ficado confusa, pois eu mesmo ja me confude bastante...

 

Caso ajude, coloquei em anexo o projeto no proteus.

 

Mais uma observação. Eu tentei algumas formas de corrigir o problema, em vamo. Como por exemplo um transistor a mais na saida do primeiro meio somado,  a base do transistor na saida, coleto em vcc, e emissor com resistor de 10k pull down. Nesse resistor ia a conexao para entrada do segundo meio somador. Nao funcionou, ficou a mesma coisa

 

Somador+Completo+–+Projeto+alternativo.jpg

fulladder.rar

Link para o comentário
Compartilhar em outros sites

38 minutos atrás, Aislan Silva Costa disse:

Esta e a porta and:

 

No lugar dos dois transistores também da pra colocar dois diodos. 

Vai facilitar a construção. 

adicionado 26 minutos depois

Sobre a parte de que não funciona, esses circuitos de portas lógicas com diodos e transistores apresentam vários problemas quando um é ligado no outro. 

Isso acontece porque parte deles é do tipo passivo e a corrente acaba se perdendo em meio a tantos diodos e resistores. 

 

Um transistor acaba amplificando somente um estado, seja o zero, ou seja o um. Quando o transistor entra em corte, a corrente que vem pelo resistor ou diodo é pouca e não faz funcionar corretamente o estágio seguinte. 

Para eliminar o problema, deve se usar dois transistores a cada saída de porta, um npn e outro pnp. 

Link para o comentário
Compartilhar em outros sites

@Renato.88 Se eu nao conseguir vou mudar a porta and para diodos mesmo. Mas antes disso poderia me dar um exemplo do :

47 minutos atrás, Renato.88 disse:

Para eliminar o problema, deve se usar dois transistores a cada saída de porta, um npn e outro pnp. 

 

Link para o comentário
Compartilhar em outros sites

@Renato.88 acho que finalmente consegui o somador completo. Naqueles outros circuitos uma porta XOR nao conseguia o sinal para uma outra mesma. Vi que em outro post aqui no CdH, sobre o mesmo assunto, voce dizia que a saida do circuito tinha alta impedancia, e que aparentemente apenas um circuito ttl consegueria "enxergar aquele valor", acho que foi isso que entendi. Então eu busquei outras implementações da porta XOR e fui conectando uma saida de uma a outra ate obter o resultado equivalente com a tabela verdade. O resultado foi esse:

fulladder.thumb.png.d50a2895516a4c02f4b6bbeeae20b068.png

 

Eu queria uma opnião pra saber se esse circuito funcionara na pratica, o que acha?

Link para o comentário
Compartilhar em outros sites

17 horas atrás, Aislan Silva Costa disse:

@Renato.88 Se eu nao conseguir vou mudar a porta and para diodos mesmo. Mas antes disso poderia me dar um exemplo do :

 

Vira uma particularidade para cada trecho do seu circuito, em algumas partes poderá usar só diodos e resistores e em outras vai precisar de transistores de transistores pra amplificar o sinal ou inverter a lógica.

Cabe a você saber onde precisa e onde não.

Veja exemplos de portas simples com os componentes básicos:

imagem500.GIF.891cf2cf0615a8e38f92a14816656c8d.GIF   imagem501.GIF.fc03c09fae8b3e5bb75a6eed167326ab.GIF   imagem502.GIF.e012808f2c3fd903a503d0a5fb276901.GIF imagem503.GIF.99f103e5897f4c4b01c18787cf194c9c.GIFimagem504.GIF.829cd40f963df2854d3cb256cde87542.GIFimagem505.GIF.479367f3c24369a19f02c381134be571.GIF

 

17 minutos atrás, Aislan Silva Costa disse:

acho que finalmente consegui o somador completo. Naqueles outros circuitos uma porta XOR nao conseguia o sinal para uma outra mesma. Vi que em outro post aqui no CdH, sobre o mesmo assunto, voce dizia que a saida do circuito tinha alta impedancia, e que aparentemente apenas um circuito ttl consegueria "enxergar aquele valor", acho que foi isso que entendi. Então eu busquei outras implementações da porta XOR e fui conectando uma saida de uma a outra ate obter o resultado equivalente com a tabela verdade.

É exatamente isso.

Antes do seu post eu estava fazendo os esquemas acima, veja que tem várias formas de desenhar a mesma porta (e eu não desenhei todas as formas possíveis.

Em alguns casos é preciso que o sinal positivo precisa ser forte pra atravessar os diodos, caso a próxima porta tenha o diodo no sentido direto e em outros casos o diodo estará no sentido inverso.

 

Já que mencionou os CIs TTL, os mais antigos da série 74 que não se fabricam mais usavam sempre as entradas com sinal negativo, isso acontecia porque sempre usavam um transistor NPN na entrada com a configuração base comum, o sinal era sempre aplicado no emissor do transistor.

 

Link para o comentário
Compartilhar em outros sites

  • 2 semanas depois...

@Renato.88  oi de novo! To precisando muito de ajuda. Eu montei um circuito somador e  subtrator com portas logicas ttl e a transistor(circuito fisico)

 

porém estou com um problema do segundo somador para o terceiro. No caso quando faco 4 menos um, o 3 bit (4 - 2, 4-3 e todas os outros calculos funcionam) que seria o 4 nao apaga ficando o resultado 7. Ja na soma, 4 + 2 nao ascende o 4(4 + 1, 4 + 3 funciona e todos os outros calculos tambem). Eu acho que  oerro acontece porque a tensão da porta logica and do segundo somador fica com apenas 3v na saida(e uma porta and com dois diodos invertidos indo para pull up, tentei varios resistores mas a tensão ficou em 3v, seja 10 ohmss ou 100kohms) como a tensão esta baixa nao vence os diodos para desligar a porta(no caso da subtracao, e ligar no caso da soma)

 

Como voce disse aqui:

Em 17/06/2019 às 01:04, Renato.88 disse:

Em alguns casos é preciso que o sinal positivo precisa ser forte pra atravessar os diodos, caso a próxima porta tenha o diodo no sentido direto e em outros casos o diodo estará no sentido inverso.

A saida dessa porta and vai pra um porta or implementada com transistores. Ja a saida dessa or, que e meu carry out, vai pro carry in do 3 somador. A porta xor la e com diodos, esta chegando 3v mas mesmo assim a a saida da porta nao vai a 0( 1 e 1: 0). Eu testei aplicando 5v ns porta e ela apresnetou o resultado esperado. Mas 3v ela nao desliga, como poso aumentar essa tensão, um buffer com lm393 consegue?

 

 

Como faco para aumentar essa tensão?  

Link para o comentário
Compartilhar em outros sites

29 minutos atrás, Aislan Silva Costa disse:

Como faco para aumentar essa tensão? 

Usa dois transistores. 

Um npn acionando um PNP. 

Não tem como eu fazer um desenho específico, mas este amplificador de áudio pode quebrar o galho:

images?q=tbn:ANd9GcSFsEa3I915kan9ETG54lt

O resistor de 1M e o capacitor de 10uF devem ser retirados. 

Use um resistor de valor entre 1 e 10k entre a base do primeiro transistor e a saída da sua porta lógica. 

Entre o coletor do segundo transistor e o negativo coloque um resistor de 1k. 

A saída para o próximo estágio é no coletor do 2º transistor. 

Link para o comentário
Compartilhar em outros sites

@Renato.88 Como vai, eu acabei nem testando a implementacao que indicou, porque a porta xor que ficava a cargo de inverter a segunda porta and para a escolha entre subtracao e soma nao funcionou, tentei 4 implementacoes diferentes as 4 dava erro do 2 pro terceiro bit do somador. Acabaei deixando so soma e funcionou corretissimo. Meu intuito e criar um processador inteiro com logica ttl e com transistores, entao eu quero apreender a dominar mais essa parte dos diodos w transistores. Estou acompanhando uma serie do canal wr kits onde ele constroi um processador de 8 bits usando circuitos integrados. O problema do circuito integrado é que, como o processador ele já esta pronto e nao e muito didatico. 

 

O principal problema que enfrentei durante a montagem desse somador foi com a impedancia, o proteus que uso pra sinular me parece que nao domina isso muito bem. Entao o que me recomanda para estudo para lidar com impedancia?

 

voce acha ser possivel construir todo um processador de 8 bits apenas com transistores, diodos e resistores?

Link para o comentário
Compartilhar em outros sites

1 hora atrás, Aislan Silva Costa disse:

O problema do circuito integrado é que, como o processador ele já esta pronto e nao e muito didatico

Os circuitos integrados lógicos do tipo porta lógica ainda está entre os didáticos. 

Os flip flops também entram. 

 

Se torna menos didático a partir dos contadores, shift registers e multiplexadores. 

 

1 hora atrás, Aislan Silva Costa disse:

voce acha ser possivel construir todo um processador de 8 bits apenas com transistores, diodos e resistores?

Com certeza, o pessoal do século passado construiu e fez os processadores a partir disso. 

Mas se for pra você construir sozinho, vai demorar anos pois o circuito é enorme. Eu mesmo nem sei por onde que iria começar. 

 

Se eu fosse fazer um projeto didático desses ia ficar com as portas lógicas mesmo. 

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...