Comp Sci Why Does My 19-bit Adder Using 74LS283 ICs Show Incorrect Results in Proteus?

  • Thread starter Thread starter Lord Doppler
  • Start date Start date
  • Tags Tags
    Adder
AI Thread Summary
The issue with the 19-bit adder using 74LS283 ICs in Proteus stemmed from grounding the S3 output, which prevented the correct carry from being processed. It was clarified that grounding any output is incorrect and can lead to energy waste or potential damage to the chip. The carry bit is considered the 21st bit, and for a 20-bit output, the S4 line should be used instead of grounding it. After adjusting the connections by floating C4 and linking S4 to S19, the adder produced the correct results. This adjustment resolved the initial problem, ensuring proper functionality of the adder circuit.
Lord Doppler
Messages
9
Reaction score
2
Homework Statement
Make a 19 bits adder
Relevant Equations
Boolean Algebra, Logic
Hello, I'm doing a 19 bit adder in Proteus with the 74LS283 IC and I have a problem, I'm adding 1110111000110011010 (487834) with 0001110110001100111 (60519) which the result is 10000101111000000001 (548353) and Proteus doesn't the correct result. It is not taking into account the carry, someone can help me?

1617509716738.png


Ícono de validado por la comunidad
 
Physics news on Phys.org
Why are you grounding S3 in the most significant digit? One should not ground any output, and you need that output to get your 20 bit result.

The carry bits seem to be getting through just fine.
 
  • Like
Likes Lord Doppler
Halc said:
Why are you grounding S3 in the most significant digit? One should not ground any output, and you need that output to get your 20 bit result.

The carry bits seem to be getting through just fine.
Because I need add 19 bits and not 20 bits I grounded S3 in the most significant digit, it's correct? I need add 19 bits and the carry
 
It is not correct to ground any output. You let it float if you don't care about the 20th bit. Grounding an output wastes energy at best, and burns out your chip at worst. I don't think LS technology will burn out since the fan-out implies an obvious current limit.

In that case, the 1st 19 bits of the the answer you got (shown in the bottom horizontal line) is correct. But you show 20 bits of answer, the last one being taken from the wrong line.

Lord Doppler said:
I need add 19 bits and the carry
The carry is the 21st bit. If you want 20 bits of output, s4 is that 20th bit, and it should be c4 that you let float. c4 is always going to be low anyway in the last chip.

I see you are calling the c4 line 's19', but it is actually 's20'. s19 is the s4 line, which you've grounded.
 
Last edited:
  • Like
Likes Lord Doppler
Halc said:
It is not correct to ground any output. You let it float if you don't care about the 20th bit. Grounding an output wastes energy at best, and burns out your chip at worst. I don't think LS technology will burn out since the fan-out implies an obvious current limit.

In that case, the 1st 19 bits of the the answer you got (shown in the bottom horizontal line) is correct. But you show 20 bits of answer, the last one being taken from the wrong line.

The carry is the 21st bit. If you want 20 bits of output, s4 is that 20th bit, and it should be c4 that you let float. c4 is always going to be low anyway in the last chip.

I see you are calling the c4 line 's19', but it is actually 's20'. s19 is the s4 line, which you've grounded.
Oh ok, then I will never ground an output, I didn't know. I tried float the C4 in the last chip and connect S4 to S19 for obtain the 20 bits in the output as you said and it works! Thanks
1617556395469.png
 

Similar threads

Back
Top