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

  • Context: Comp Sci 
  • Thread starter Thread starter Lord Doppler
  • Start date Start date
  • Tags Tags
    Adder
Click For Summary

Discussion Overview

The discussion revolves around a problem encountered while implementing a 19-bit adder using 74LS283 ICs in Proteus. Participants are addressing issues related to incorrect results, specifically regarding the handling of carry bits and the grounding of outputs.

Discussion Character

  • Technical explanation
  • Debate/contested

Main Points Raised

  • One participant reports an issue with their 19-bit adder not accounting for carry bits, leading to incorrect results in Proteus.
  • Another participant questions the grounding of S3 in the most significant digit, suggesting that grounding outputs is not advisable and may lead to incorrect results.
  • There is a discussion about the necessity of the carry bit, with some participants clarifying that the carry is the 21st bit and should not be grounded.
  • One participant expresses a need to add 19 bits and the carry, indicating a misunderstanding of the output configuration.
  • Clarifications are provided regarding the correct labeling of output lines, with emphasis on not grounding outputs and allowing them to float if not used.
  • A later reply indicates a successful adjustment by floating C4 and connecting S4 to S19, resulting in the correct output.

Areas of Agreement / Disagreement

Participants generally agree that grounding outputs is not correct and that it can lead to issues in the circuit. However, there is some confusion regarding the output configuration and the handling of carry bits, indicating that multiple views and some misunderstandings remain in the discussion.

Contextual Notes

There are unresolved aspects regarding the proper configuration of the outputs and the implications of grounding versus floating outputs. The discussion reflects varying levels of understanding about the IC's functionality and the circuit design principles involved.

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   Reactions: 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   Reactions: 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
 
  • Like
Likes   Reactions: Halc

Similar threads

  • · Replies 9 ·
Replies
9
Views
5K