Majority vote machine
The circuit in the problem was designed to make a majority vote machine for a board of directors. We were constrained by the fact that we only had two input gates, and the fact that if there was a tie, the president's vote will act as an tiebreaker. This report will show the major steps that I took in completing the circuit, going from a truth table to eventually wiring it on a breadboard.
PROBLEM conception
Truth Table
|
The purpose of the truth table is to more easily represent the possible inputs of the table, and the outputs that they will receive. The amount of rows in the table is determined by 2^n, where n is the amount of input variables. In this project I had 4 variables meaning that there will be 16 rows in the table as 2^4=16. Since this is a digital circuit, the outputs will either be a one or a zero. In this case a 1 represents the idea passing and the 0 represents the idea failing. In the event of a tie, as in two vote yes and two vote no, the presidents vote will decide if the idea passes or fails. It is shown in the table as if the president votes no in a tie both the president input and the out put receive a zero. If he/she votes yes, both the president's input and the output will be a 1.
The unsimplified equation derived from this table is D=P'VST+PV'S'T+PV'ST'+PV'ST+PVS'T'+PVS'T+PVST'+PVST where X' is not X. This is in sum of products form as there are 8 products added together. I was able to find the midterms, or the products, by looking on the table and finding where the output is 1 . I then looked at the inputs, if the input had a 1 it would just have the letter, if it was a 0 it would be a "not" followed by the input letter. I chose to make it a sum of product equation as I am more familiar with that equation type, making it a lot easier for me to derive the equation and create the circuit from it on multisim.
|
UNsimplified Circuit
This picture to the left is the picture of the unsimplified circuit as I made it on multisim, which is kind of like a wiring simulator. This particular circuit is in bus form, where each of the inputs connect to a bus in the middle, then the line continues on the other side of the bus in as many places as needed. This makes it much easier to see where the wires are going, and as a result easier to troubleshoot. It contains 35 gates: 4 inverter gates, 7 OR gates, and 24 AND gates. If this circuit was to be created outside of multisim, you would need 1 inverter chip, 2 OR chips, and 6 AND gates. These are very large amounts of chips for a circuit that could just as easily be represented by only 3 chips total (as you will see later on), and would result in a very unnecessarily complicated circuit.
|
Boolean Algebra
Th simplified expression is the expression D=PV+PT+PS+VST, this expression is equal to the previous expression used, it just has some of the unnecessary input conditions simplified out. The process I used to simplify it is shown below.
Process
Simplified circuit
This is the simplified circuit on multisim, which is not in bus form. I didn't use bus form as this wasn't worth the hassle of creating all of the bus lines like the unsimplified circuit. This version of the circuit only required 5 AND gates and 3 OR gates, which are much smaller numbers than the unsimplified circuit. This circuit when made in physical form, only requires 2 AND chips and 1 OR chip. I was able to find these numbers because each AND or OR chip has 4 gates, so 5 requires two chips and 3 requires one chip.
|
The simplified circuit is justified because it is much less complex, as it only would only require 3 chips instead of 9. This is important because more chips would result in the need for a much larger board as well as many more wires, while also it would result in a giant mess of wires of different colors getting all tangled up and going to very specific places. this would be very hard to follow if you needed to recreate or troubleshoot the circuit, as there would be a giant tangle of wires to trace through to find endpoints.
Bill of materials
This Bill of Materials shows what is needed o build the simplified circuit in its physical form i.e. a breadboard, chips, and wires.
Your browser does not support viewing this document. Click here to download the document.
Breadboards
This is the entire view of the breadboard with the accompanying unit for the LEDs
|
This is the right side of the chips, showing all of the connections on this side.
|
This is the left side of the chips, showing the connections on this side, while also showing how I attempted to organize the input wires.
|
For my first bread-boarding experience it went quite smoothly. I was a bit slow on the wiring as I wanted to make sure I did it right the first time, so I didn't have to look through the wire connections for a problem if there was one. I only had one problem, where when I completed it the first time it didn't work. It turned out that one of the chips was faulty which resulted in the whole circuit working wrong. Sadly this was after I had spent about 30min trying to find the problem in my wiring. I am quite glad that I checked the chip instead of taking apart the whole circuit for. As for the skills I learned, I learned that organizing the wires is very important as it will make your life a lot easier when you are trying to troubleshoot, or wiring in the first place.
Conclusion
This project shows the importance of knowing how to simplify circuits, because if we didn’t know how to, we would be stuck with having to create the very complex unsimplified circuits, which would prevent complex electronic devises to be made in small sizes. Boolean algebra is important for this very reason. It allows us to be able to quite easily simplify expressions by using theorems and other already math properties. It is so useful in fact, because it is applicable to any expression that has any number of variables, unlike k-charts which are only really useful up to 4 variables. This project also gives us an idea of the steps that need to be taken in order to go from a problem statement to an actual completed circuit. First you would need to create a truth table and from that derive an unsimplified logic expression. Then once that is done you would have to see if there was any way to simplify the equation down to a more manageable size for wiring. Then you would have to check that the two equations are equivalent by making another truth table for the simplified expression and comparing it to the original. Then all that is left would be the wiring which is probably the most tedious part.