Selecting operation code for arithmetic circuit that uses the least amount of transistors and other inquiry

Click For Summary
SUMMARY

The discussion focuses on designing a combinational circuit using the least number of transistors, specifically for a full adder implementation. The circuit utilizes a 4x1 multiplexer for control signals (S3 through S0) and incorporates CMOS technology, utilizing NMOS and PMOS transistors. The participants emphasize the importance of minimizing gate usage to reduce transistor count, detailing that a 2-input AND/OR gate uses 6 transistors while a 2-input NAND/NOR uses 4. The design requires careful consideration of carry inputs and outputs for each bit-slice of the full adder.

PREREQUISITES
  • Understanding of combinational circuit design
  • Familiarity with full adder functionality
  • Knowledge of CMOS technology, specifically NMOS and PMOS transistors
  • Experience with multiplexers and their applications in circuit design
NEXT STEPS
  • Research CMOS transistor implementations for various logic gates
  • Learn about minimizing transistor count in digital circuit design
  • Study the operation and design of multiplexers in combinational circuits
  • Explore advanced techniques for full adder design and optimization
USEFUL FOR

Electrical engineers, circuit designers, and students studying digital electronics who are focused on optimizing transistor usage in combinational circuits.

mostafaelsan2005
Messages
74
Reaction score
3
Homework Statement
I have this truth table i made for an arithmetic circuit with control signals S3 to S0 and C0, I need to pick 3 inputs (three switches SW2 to SW0) that outputs this truth table with a combinational logic circuit using the least amount of transistors possible. How can i go about strategically selecting the inputs so that i can generate a combinational logic circuit that uses the least amount of transistors possible? 0 port of multiplexer is connected to ground for both A and B, 1 is connected to A' or B', 2 and 3 are connected to A or B.
Relevant Equations
All below.
,
Screenshot 2025-03-05 014442.png

I made this truth table, so this would be the output. I need to create a combinational circuit with inputs SW[2:0] that output this with the least amount of transistors. What is the strategy here? I have also attached my planning document:
Screenshot 2025-03-05 014626.png
If you want to know how I selected the control signals (S3 through S0, C0 is fixed based on the operation), it's based on a 4x1 multiplexer where the input for 2 and 3 (10 and 11) are connected to each other to account for the fact that I have three options only for A and B to which both outputs of the multiplexers are connected to a full adder for each bit of vector A and B.

Additionally, I also have some trouble understanding how I will be implementing each full adder. How would I design it so that the full adder adds 1 (when C0 = 1) to the appropriate A or B vector if that makes sense?
 
Physics news on Phys.org
mostafaelsan2005 said:
How would I design it so that the full adder adds 1 (when C0 = 1) to the appropriate A or B vector if that makes sense?
Each bit-slice of the full adder has two bits and a carry input, with one bit and carry output. The least significant bit gets input from the carry bit, while the most significant bit generates the new carry.
 
  • Like
Likes   Reactions: mostafaelsan2005 and berkeman
berkeman said:
You are really asked to implement this at the transistor level and not at the gate level? If so, what kinds of transistors are you allowed to use?

View attachment 358105
https://tiij.org/issues/issues/spring97/electronics/cmos/cmostran.html
No, I am asked to do it at the gate level but still using the least transistors possible. For example, if I am able to reduce the number of gates (including mapping techniques at the end) the number of transistors used will be significantly reduced. Additionally, were taught to use gates with CMOS transistor implementations (so NMOS and PMOS transistors). So like a 2 input AND?OR has 6 transistors, a 2 input NAND/NOR has 4 transistors, a 4 input OR/AND has 10 transistors, etc.
 
Last edited by a moderator:
Baluncore said:
Each bit-slice of the full adder has two bits and a carry input, with one bit and carry output. The least significant bit gets input from the carry bit, while the most significant bit generates the new carry.
That makes sense, thank you.
 

Similar threads

  • · Replies 3 ·
Replies
3
Views
2K
  • · Replies 4 ·
Replies
4
Views
2K
  • · Replies 1 ·
Replies
1
Views
3K
Replies
2
Views
2K
  • · Replies 4 ·
Replies
4
Views
3K
  • · Replies 4 ·
Replies
4
Views
3K
  • · Replies 11 ·
Replies
11
Views
4K
Replies
68
Views
7K
  • · Replies 59 ·
2
Replies
59
Views
6K
  • · Replies 10 ·
Replies
10
Views
5K