"And i realize this is a bit messy..." and then pulls out huge diagram. I'm always amazed how much work you put into these and for anyone else wanting to make the decoder, it isn't too bad, it's just a lot of and gates.
@@chemieju6305 Why not both. You would need a reader of some sort, and index every item a number, whe an item is read, a signal is sent toward something that corrsponds with the index, and performs a function. All you really need is a sender, that sends an item to a reader, and the reader then sends a high or low signal to something that performs a function.
@@theterribleanimator1793 i did something like this, i used the 16 colors of concrete powder to encode hexadecimal. I used them because they are quite easy to work with because they are gravity affected. I build 4bit encoder and decoder and a 46byte storage, only using 124 blocks for storage itself.
@@theterribleanimator1793 expanding it is surprisingly easy, especially now that honey blocks are a thing. I built one functioning system and then got kinda bored. I then got back to develloping more efficiant ram cells.
If only Ben Eater knows how many times I would come back to his videos for reference for my college assignments, he would probably be shocked. He is a lifesaver, a hero for me.
Ben, thank you so much for your videos. I believe I've already mentioned it before, but you're the one who made me realize that electronics are so much simpler than I ever thought they were, and so thanks to you I'm now loving a new hobby, and I'm already building circuits on my breadboard. Thanks again! Eric from Ottawa, Ontario
the exact opposite of what I said, after I did the logic part on paper. :D But I think somewhere deep inside me there was a little urge to actually build it. - That is what makes it so satisfying to watch now. Thank you! :)
Your breadboard circuits are pieces of art, Says a guy who has done unthinkable messes on breadboard. I studied all Digital circuits 10 years backs in Engineering and yet your explanation teaches something new! Good job, Ben!
Ben love your videos - this 7 segment decoder project makes me feel like a 14 year old again (mid 70s), when I lit up my first 7 segment display on a breadboard. I then bought a board at my local Radio Shack which used a 7447 and 7 segment common anode decimal (0-9) decoder...I bought the parts at Poly Paks mail order from my allowance savings. I was always fascinated by 7 segment displays on cash registers, pinball machines, etc.
Just to point out for people saying use a karnaugh map or an mcu etc, I'm sure ben is aware of all those things, he's teaching you this as a tool. It allows him to show you how it works in the clearest way, and the difference between combinatorial and sequential logic, introduce eeproms which no doubt are used later on for microcode etc - that's what I love about this series, everything leads onto everything else, its great! You don't want him dropping k-maps on you just yet.
I'm not sure how people can watch this series and not immediately understand that it's ALL "crazy things done for educational purposes" and none of it is practical in 2019.
@Doctor Buga I use 7400s all the time, that's not the point. Building a processor from 7400s is educational, not a practical way of obtaining a processor. If someone is complaining about this video series not being practical, they have missed the point. Seems to be a common issue.
that logic stuff he uses is in wafers too. its just the size, speed and a more complex design. he taught how to start out. the difficulty is to manufacture it that tiny from materials. doesnt matter if its 7400's or whatever its called on wafers.
It was a part of my course project. I had to join 3 seven-segments monitors and show counting from 0 to 255 on them. I calculated a circuit but finally implemented it in Electronic Workbench. Then I found a circuit in 555 series which I could use in cascade connecting to realize the project. It took a lot of time but it was one of the most interesting projects =) Thank you for your videos!
Yeah i had to make a similar one, but to 25, not to 255. I used flip flops in cascade, it worked pretty clean id say. I guess its the same thing as you bcuz 555s have flip flops inside them.
That wiring though ❤️ That must’ve took at least 5 hours and some serious patience. I can tell because I’ve wired simpler circuits, and boy do I get confused when I forget something.
The circuit it's not that hard. What is really hard is connecting the wires (or jumpers) so they don't get out of the board. Man, every time I'm wiring something, some wire get out and I get pissed.
I feel everyone saying you could do this with an off the shelf chip, or an Arduino are missing the point of this video. This teaches HOW it works, as well as the underlying theory and fundamentals.
Absolute top class. Spotted a way of losing a few gates on the intial setup but initially I had 2 more than you, superb explanation, really good and clear video.
You reminded me of my freshman year (not so long ago). There was an exercise to find a simplified logic equation (I don't even remember how they are properly called...) of a 7-segment display. I spent so much time, writing down the truth table, then the Karnaugh map, then simplifying things...
@@thatonegoblin7051 Yep, Karnaugh mapping, Venn diagrams or Boolean algebra and minimisation. "Split the line and change the sign" brings back memories😁
This was awesome. This really gives a person perspective when trying to drive seven segment displays using a microcontroller. Takes too many I/O pins to do this once you get more than 2 or 3 displays.
This takes me back to the university days in electronic engineering. Loved that course so much... we literally built things like this in class. I remember also using the espresso logic minimizer and breaking my head as to why it worked so well.
When i studied digital electronics, we were asked to make circuits like this and two days later after it was corrected our teacher just showed us there's a IC that makes exactly that , from memories to counters the same history.
I've been designing sonething similar to this for a project I am working on. I discovered k-maps just before starting, and it was a little bit tricky to get my head around it at first, but it helps to massively simplify the logic required to build a decoder for a 7 segment display. I would highly recommend spending some time to learn how to use k-maps!
When you have just got your first Digital Design course, you study EEE mainly because of this channel, and finally understand how he came up with this logic circuit. What a great channel🎉🎉
Your breadboard solution is a great way to visualize the Tyranny of Numbers (Wires) problem. Back before the IC (Integrated Circuit) was invented, people knew that building a computer was possible, but were unable to build it because of the number of wires required (impossible to physically connect the circuit). Jack Kilby invented the IC, and now we have computers. Ben's beautiful breadboard examples demonstrates the Tyranny of numbers problem.
Teach by experiment Learn thru experience. This is what I get from a teacher like Ben and me as the hands-on student. Learning digital electronics is getting easier nowadays. And the most efficient way of learning is to watch youtube videos like this and quit going to school. That is one complex circuit for displaying single digit on a 7 segment LED you got there Ben! But compare that with the complexity of the latest computers for playing 4K quality youtube videos on UHD screens via the internet? I'm really blown away by the complexity designed by the masters of the digital world.
I think he will use both something like an cd4511 AND an EEPROM. This is because with 8 bit EEPROMs and 3 digits a 7 segments, you would need 3 EEPROMS.If you use 3 cd4511s, you can save 1 EEPROM.
I used one EEPROM and a 4017 to switch between the 3 digits... activate the 7seg and also high address pins with it. Switch it fast enough and you can't tell it's flickering.
I've done a few projects with 7 segment displays, Ive always used 74HC595s to control them. I do have some cd4511s - havent got round to using them yet.
I've still go my EE text book that covers how to reduce/simplify truth tables. This was a "weed-out" course at UT for EE freshmen. Now I feel the need to dig that book out and take a trip down memory lane.
hi there CREATE SHADES USING SIEERPINKI'S TRIANGLE AND YOUR SMART PHONE ua-cam.com/video/DMYn_0uTVB8/v-deo.html go watch and try supporting by subscribing
9:27: You could have also arranged the gates differently and taken a shortcut with D1 and !D2, which also does occur twice, but that would have precluded your saving the D0 and !D1 gate that you did save, so it's either save that one or the other one but not both, and in fairness your arrangement is simpler. I just needed to say that I noticed that.
I have learned so much from this series of videos. I never understood how computers worked at a fundamental level. I knew about bits and registers and all that, and even programmed BASIC as a kid, designing spites and later getting into HTML. I also build my own machines and can troubleshoot computers as well as analog circuitry (like tube amps and such). I understand how transistors and capacitors and resistors, et al work. But the actual logic circuitry behind computers, despite delving into Boolean algebra on my own in 8th grade, has always eluded me. Over the last four days I have watched every one of your videos on the subject and now I finally understand how computers actually compute and the logic behind them, which has given me a newfound appreciation of the level of complexity hidden in out-of-date computers like my childhood C64, to say nothing of modern PCs, smart phones, tablets, etc. It is truly incredible. Thank you for sharing your knowledge in such a concise way. You are a great teacher.
Putting the current limiting resistor at the common anode is usually not recommended since the brightness of the LEDs will vary depending upon how many are turned on. It is recommended to use a current limiting resistor for each individual segment for the best results.
Rex McCarthy One might actually view this as an advantage, as the *overall* brightness of the complete digit won't vary as much. Also, you have a fixed amount of current needed per digit, regardless of the actual value. Anyways, the difference can hardly be seen at 5..10mA for all segments with a modern display. Taking all that, plus that it's much easier to build with only one resistor, I personally don't care much what's usually recommended.
You did the truth table for the 1st segment and made the logic diagram. Then I was thinking would be cool if he filled out the rest. Done. Then I thought too bad its too much work to actually make the thing it would look cool. Then you pulled it out far surpassing my expectations. Bravo sir!
I recently designed and built a binary to hexadecimal driver from scratch. Created the truth table, reduced it to 43 gates (including inverters but also using XOR and triple input gates), simulated in Logisim Evolution, realized in twelve 7400 series logic ICs, created a schematic, and designed a custom PCB to connect everything. After all that design work then waiting for the ICs and PCBs to arrive, assembling that hardware and having it work flawlessly was awesome. Sure it's inefficient and willfully outdated but it is far more satisfying than any microcontroller program could be.
"Simplify the problem and solve the simpler problem" - key to setting up a trillion dollar company.
5 років тому+1
I hope you never delete these videos. I had this in school and now 20 years later it's really nice to refresh that knowledge with such amazing videos. Thanks a bunch!
BTW Each of the cathodes should have a resistor. Using 1 resistor in the common Anode causes the display's brightness to change depending on how many LEDs are lit. Common Anode should be connected to VCC.
hi there CREATE SHADES USING SIEERPINKI'S TRIANGLE AND YOUR SMART PHONE ua-cam.com/video/DMYn_0uTVB8/v-deo.html go watch and try supporting by subscribing
When you pulled out the completed circuit for the entire truth table ... oh wow, he actually did it, amazing! Also you should try sticking a bit of blue plastic over the display, will make the numbers easier to read.
when he pulled of that huge ess at 12:30 at first i was like holy crap thats a lot of tanglyness then i got impressed that we can build all that into a ridiculousley tiny little chip
hi there CREATE SHADES USING SIEERPINKI'S TRIANGLE AND YOUR SMART PHONE ua-cam.com/video/DMYn_0uTVB8/v-deo.html go watch and try supporting by subscribing
Bless you Ben.I've done this at least 7 times only because i was using Intel's quartus prime lite and i was testing my results with the correspoding simulations to each output.D kept being wrong the whole time , i kept on checking my truth table for the decoder and i found out that d had a 0 in the number 9 thanks to you contrary to my university's lab that had forgotten this and had d turned off in the number 9 in the project's instructions.Thank you so much for your help
I don't know if you corrected it later, but using only one resistor for the whole 7-segment-Unit isn't that well, becaue each Segment will pull a specific current. And the voltage across the resistor (to set the voltage at each LED to 3V) depends on the resistance of it and the current through it (with the LED it is a little bit more complex, but that's basically the point). The problem occuring now is that if you turn pn multiple LEDs, the current through the LEDs will sum up and so the voltage aceoss the resistor will increase. By doing so, the current through the LEDs will decrease and the LEDs will be less bright. By using only 2 Segments, this won't be that much, but if you compare your "8" and only a "1", you should definitely see a difference. If you use an individual resistor for each segement, that would be much better. Because then the current through each LED is independant to the number of LEDs shining.
hey there CREATE SHADES USING SIEERPINKI'S TRIANGLE AND YOUR SMART PHONE ua-cam.com/video/DMYn_0uTVB8/v-deo.html go watch and try supporting by subscribing
I love these videos. Up intil a year ago i studied electrical engineering, in which digital design was one of the first courses i had. One of the first projects was to actually make this using an fpga! If i found you 3 years ago, i might have continued electrical engineering. But i'm very happy in my current occupation
hey there CREATE SHADES USING SIEERPINKI'S TRIANGLE AND YOUR SMART PHONE ua-cam.com/video/DMYn_0uTVB8/v-deo.html go watch and try supporting by subscribing
Wow. Your patience to describe something is incredible. I admit I had to jump around to find out where it will go. We used to use boolean logic algebra at school to transfer the truth table to your circuit gates to synthesize the circuit. Both NOR or NAND based. You jumped to "I came up with this circuit" directly. It would be useful to show how to do it since it can minimize number of used gates.
Coders: UA-cam: Wanna learn how to build a combinational logic circuit to decode 8 bits and display a 3-digit decimal number on 7-segment displays? Coders: Actually I do! This is a useful recommendation that I am grateful for.
hi there CREATE SHADES USING SIEERPINKI'S TRIANGLE AND YOUR SMART PHONE ua-cam.com/video/DMYn_0uTVB8/v-deo.html go watch and try supporting by subscribing
I wish I had found this series a year ago. I had been mentoring a younger person and we were working our way through the "From NAND to Tetris" course (and book) and he was more interested in building a computer on a breadboard exactly like you are doing. This would have been a much better series for us to use. He passed unexpectedly late last year but watching many of these last night, I kept wishing I could show it to him. But the reason I'm commenting on this particular video in the series is to ask about your final truth table(s) for the decoder. We did nearly an identical project in my first year EE course back in college. After demonstrating how messy this can get, the professor taught us Karnaugh maps to simplify when possible. Based on a rough set of maps over breakfast this morning (yes, that's what I do for fun), it looks like this could be reduced pretty well. When you said something about showing an easier technique later, that's where I thought you were going. I get that the point was to move forward to the EEPROM version in the next video, but showing how a Karnaugh map could reduce the footprint would have made a nice intermediate step. That's my $0.02 you didn't ask for :-) so I'll stop now. Amazing series! I found this video first last night and watched a few in order, but soon I'm starting from the top and might built along with you. Thank you so much for all your work!
A single current-limiting resistor in line with the common anode is NOT the way to do it! That way the brightness of the digit will vary depending on how many segments are lit...
Correct! But not so important for this type of video. You can also use many more complicated methods to find a circuit with: a) the minimum number of gates b) the minimum propagation time c) the evenest propagation time. But that was not the purpose of this video.
I remember doing this in high school. It was fun but I had to redue it 3 times because of faulty and/or gates...my teacher gave me credit but I was still a bit disappoited I never got it running
I was just working with 7-segment display and binary decoding for an assignment in my Digital Fundamentals college class, more specifically I had to consider the "Don't-Care" condition for K-maps, where certain input binary values would be ignored, making the simplification of the boolean algebra equation needed for building the circuit a LOT easier. Although we didn't consider hexadecimal numbers after 9, so that's why I needed to apply the "Don't-Care" condition. It's super exciting to finally be able to tinker with this stuff myself, though there is a lot of stuff to learn. Regardless, it's entertaining and educational!
Love it! Always such quality videos. Question about your construction methods: how do you get your jumper wires? Do you make them yourself? I always find myself running out when I buy those premade kits.
I'm pretty well certain that he makes them himself, probably out of solid-core insulated wires. I've noticed that the jumper wires which are made for kits are always colour-coded by length which can be confusing when you want to trace a run but it goes through multiple colours of jumpers. If you can get hold of some "telephone" cable, you can open it out and strip out at least 4 different colours of wires. More, if you get a larger cable with more conductors.
hi there CREATE SHADES USING SIEERPINKI'S TRIANGLE AND YOUR SMART PHONE ua-cam.com/video/DMYn_0uTVB8/v-deo.html go watch and try supporting by subscribing
I thought of using an eprom as a decoder too but with the popularity of Hex displays I'm still amased they haven't designed an ic that works like a 7447 but decodes hexadecimal...
Well just thinking about this, the quickest way would be to just use a low-pin count, low gate CPLD, although probably not cost effective. The cheapest way would probably be to use a very low cost MCU (something like a $1 PIC or ATTINY).
No, no, not MCU!!! :) That just ruins the elegance man. I was planning on building something with a GAL/PAL type thing as I wanted to have some fun playing with the things anyway and this gives me an excuse.
hi there CREATE SHADES USING SIEERPINKI'S TRIANGLE AND YOUR SMART PHONE ua-cam.com/video/DMYn_0uTVB8/v-deo.html go watch and try supporting by subscribing
Thanks! I am wondering what are the other ways to make the gate logic more efficiently from a truth table. The only method I know of is using Karnaugh map.
The map is sparse enough that you don't need a Karnaugh map to find the optimal logic. It's easy enough to find the right logic without using a Karnaugh map in this example.
It's obviously not so easy, as the resulting circuit is far from optimal. The Karnaugh map for four inputs is still feasable by hand (still 2D) and would make for an interesting video in itself. What else one could do is to think in terms of 2-bit data selectors (which can be built from 2 ANDs, an OR and a NOT, Ben made a video on them). They correspond to the ite-operator ("?" and ":") you might know from programming. Looking at the minimal sum-of-products from Karnaugh you'll immediately find considerably smaller circuits. Eg for the "a" segment 7 AND, 2 OR and of course 4 NOTs for the inputs - as opposed to 11 AND, 3 OR, 4 NOT.
TheRealMeisl I did this myself for a project I'm working on. K-maps are amazing for this kind of thing. ornotblog.blogspot.co.uk/2017/03/clock-design-notes-2-7-segment-decoders.html But I only did numbers 0-9 since mine are for a clock.
+Tom Storey Very nice blog post that is of yours! Now there's two things I'm wondering about: 1) You mention how you were able to re-use certain combinations (CD' in your example), so in effect you're optimizing across segments (as opposed to your using one K-map each to optimize a single segment). I did this myself, but not systematically, just by kinda "staring" at them all at once. Is there a better - systematic - way to do this other than writing a program that does an exhaustive search? 2) K-maps are designed to find minimal sum-of-products, aka "minterms", so the basic gates used are NOT, AND and OR. But of course there are chips with other kinds of gates, particularly universal gates like NAND and NOR. How would a systematic approach look like which produces minimal terms containing, say, only NORs?
If there is, I'd like to know! I spent a few days staring at my k-maps trying to find optimisations as well. The more time I spent looking at them the more I learned how to recognise cases where I might be able to make savings. There might be tools and other tricks or methods that I havent discovered yet, but this method seemed to work well for me. :-) If I understand your question correctly, I suppose I havent tried to produce minterms using NOR logic. I have just translated my minterms in to NOR logic in my circuits. For example, in Bens decoder, an inverter produces a high when an input is low, so the output of that inverter can be used along with inputs to match against various high/low input combinations using standard AND gates. In my case, when an input is high the inverter produces a low, and that low in combination with other inputs can feed a NOR gate, and if all of the inputs to that NOR gate are low then its output would be high. Same function as an AND gate, just using inverted logic. So Im basically using the universal gate property of NOR to build the other types of logic gates.
The next step is maybe build up the logic by concrete transistor gates to show how it is working inside. He has much effort for this theme. Respect to you.
hey there CREATE SHADES USING SIEERPINKI'S TRIANGLE AND YOUR SMART PHONE ua-cam.com/video/DMYn_0uTVB8/v-deo.html go watch and try supporting by subscribing
This is teaching at the right level, yes you can use a MCU and simplify it all... does that learn you foundation basics, no... now this does, well done.
You are really passionate about Electronic Engineering! Nice video. I used to find it to be very complicated, but you simplify and explain stuff! Keep up the good work.
hi there CREATE SHADES USING SIEERPINKI'S TRIANGLE AND YOUR SMART PHONE ua-cam.com/video/DMYn_0uTVB8/v-deo.html go watch and try supporting by subscribing
Hi Ben I was thinking that maybe I could set up a service we're we do a assembly of all the components for people for low profit (just so it's worth our time) instead of people having to go out and souce the components themselves.I think this would be a great addition to the channel and if anyone thinks this would be a good idea please like to get Ben to look at this comment.Thanks will
The fun is building it yourself. It might be nice to offer a kit with ALL the components required, but I would let people assemble it their selves, that is the enjoyment (and learning) of this project. I am following along building in a simulator myself but have the chips on order and will be building the computer for real (and probably adding some of my own design along the way).
Buying your own components and sourcing them is part of the learning experience. You have to plan and figure out how to get good deals etc, plus putting things into action. That being said though with other projects its the same sort of thing look on the net, buy stuff and build it. This as a kit would be really good though I can't denie that, I don't think there is anything out there that is like DIY your own 8 bit computer.
Sir, thank you very much, i have always wondered how computers work at the root level and your videos have made me understand the beauty within them. Once again thank you very very much.
hey there CREATE SHADES USING SIEERPINKI'S TRIANGLE AND YOUR SMART PHONE ua-cam.com/video/DMYn_0uTVB8/v-deo.html go watch and try supporting by subscribing
hi there CREATE SHADES USING SIEERPINKI'S TRIANGLE AND YOUR SMART PHONE ua-cam.com/video/DMYn_0uTVB8/v-deo.html go watch and try supporting by subscribing
"And i realize this is a bit messy..." and then pulls out huge diagram. I'm always amazed how much work you put into these and for anyone else wanting to make the decoder, it isn't too bad, it's just a lot of and gates.
Maybe I should've watched the whole video first cause I didn't think you were crazy enough to build the whole thing. Wow
Yeah, thought the diagram was more than enough and BOOM! Out comes the physical implementation, so good.
Yeah, the one thing missing from total masochism is implementing it using single transistors :q
Sci Twi that would be awesome, but insane
_Do you want to see my collection of drawn schematics?_
Your videos are the foundation of my Minecraft storage system , thank you for the great explanation.
Do you do item or data storage?
@@chemieju6305 Why not both.
You would need a reader of some sort, and index every item a number, whe an item is read, a signal is sent toward something that corrsponds with the index, and performs a function. All you really need is a sender, that sends an item to a reader, and the reader then sends a high or low signal to something that performs a function.
@@theterribleanimator1793 i did something like this, i used the 16 colors of concrete powder to encode hexadecimal. I used them because they are quite easy to work with because they are gravity affected. I build 4bit encoder and decoder and a 46byte storage, only using 124 blocks for storage itself.
@@chemieju6305 and why did you stop at this storage point ? Because you got bored or it could not be expanded efficiently? Just asking btw, curiosity.
@@theterribleanimator1793 expanding it is surprisingly easy, especially now that honey blocks are a thing. I built one functioning system and then got kinda bored.
I then got back to develloping more efficiant ram cells.
If only Ben Eater knows how many times I would come back to his videos for reference for my college assignments, he would probably be shocked. He is a lifesaver, a hero for me.
I'm just now realizing their usefulness for my digital fundamentals class as well. Crazy
When I was in electrical engineering college several decades ago, digital design was by far my favorite class along with DD Lab.
Ben, thank you so much for your videos. I believe I've already mentioned it before, but you're the one who made me realize that electronics are so much simpler than I ever thought they were, and so thanks to you I'm now loving a new hobby, and I'm already building circuits on my breadboard. Thanks again! Eric from Ottawa, Ontario
@12:30 "To demenstrate that, of course I built the thing." LOL, noice
I love the giddiness in his voice
@@isunktheship Me too
the exact opposite of what I said, after I did the logic part on paper. :D
But I think somewhere deep inside me there was a little urge to actually build it. - That is what makes it so satisfying to watch now.
Thank you! :)
That's the nerdiest thing I've heard in a while :D
@@AntoineGouby :D
"Of course I build the thing."
Me: "You what?"
Epic. Ben, I really love your videos!
CREATE SHADES USING SIEERPINKI'S TRIANGLE AND YOUR SMART PHONE ua-cam.com/video/DMYn_0uTVB8/v-deo.html
go watch and try supporting by subscribing
Your breadboard circuits are pieces of art, Says a guy who has done unthinkable messes on breadboard. I studied all Digital circuits 10 years backs in Engineering and yet your explanation teaches something new! Good job, Ben!
Dude you actually went to the trouble of putting it all together just to demonstrate how it works.. respect!
Ben love your videos - this 7 segment decoder project makes me feel like a 14 year old again (mid 70s), when I lit up my first 7 segment display on a breadboard. I then bought a board at my local Radio Shack which used a 7447 and 7 segment common anode decimal (0-9) decoder...I bought the parts at Poly Paks mail order from my allowance savings. I was always fascinated by 7 segment displays on cash registers, pinball machines, etc.
Gyhgg
Just to point out for people saying use a karnaugh map or an mcu etc, I'm sure ben is aware of all those things, he's teaching you this as a tool. It allows him to show you how it works in the clearest way, and the difference between combinatorial and sequential logic, introduce eeproms which no doubt are used later on for microcode etc - that's what I love about this series, everything leads onto everything else, its great!
You don't want him dropping k-maps on you just yet.
Nice comment.
Also, I tried the function with k-map and the expression didn't boil down much anyways.
I'm not sure how people can watch this series and not immediately understand that it's ALL "crazy things done for educational purposes" and none of it is practical in 2019.
@Doctor Buga I use 7400s all the time, that's not the point. Building a processor from 7400s is educational, not a practical way of obtaining a processor. If someone is complaining about this video series not being practical, they have missed the point. Seems to be a common issue.
that logic stuff he uses is in wafers too. its just the size, speed and a more complex design. he taught how to start out. the difficulty is to manufacture it that tiny from materials. doesnt matter if its 7400's or whatever its called on wafers.
It was a part of my course project. I had to join 3 seven-segments monitors and show counting from 0 to 255 on them. I calculated a circuit but finally implemented it in Electronic Workbench. Then I found a circuit in 555 series which I could use in cascade connecting to realize the project. It took a lot of time but it was one of the most interesting projects =)
Thank you for your videos!
Yeah i had to make a similar one, but to 25, not to 255. I used flip flops in cascade, it worked pretty clean id say. I guess its the same thing as you bcuz 555s have flip flops inside them.
That wiring though ❤️ That must’ve took at least 5 hours and some serious patience. I can tell because I’ve wired simpler circuits, and boy do I get confused when I forget something.
The circuit it's not that hard. What is really hard is connecting the wires (or jumpers) so they don't get out of the board. Man, every time I'm wiring something, some wire get out and I get pissed.
CREATE SHADES USING SIEERPINKI'S TRIANGLE AND YOUR SMART PHONE ua-cam.com/video/DMYn_0uTVB8/v-deo.html
go watch and try supporting by subscribing
I'm happy he's getting rewarded for all the effort with lots of views
I feel everyone saying you could do this with an off the shelf chip, or an Arduino are missing the point of this video.
This teaches HOW it works, as well as the underlying theory and fundamentals.
No ones saying that dude
@@shayorshayorshayor i am
@@maxczarnecki0 ur a nobody tho
@@maxczarnecki0 and ur blocked. dont even bother replying
@@shayorshayorshayor 🙂
This must’ve taken a whole week to do. You have fulfilled my curiosity for me. Thanks Ben!
"If that sounds like a lot of work, that's because it is." Says the dude who built a graphics card from scratch on breadboards
That was insanely fantastic!
@@ge5645 fuck you
@@janKanali wasn't it interesting I tried to just amaze you but anyways
@@janKanali thank you for WATCHING
Which video is that, by the way?
Absolute top class. Spotted a way of losing a few gates on the intial setup but initially I had 2 more than you, superb explanation, really good and clear video.
You reminded me of my freshman year (not so long ago). There was an exercise to find a simplified logic equation (I don't even remember how they are properly called...) of a 7-segment display. I spent so much time, writing down the truth table, then the Karnaugh map, then simplifying things...
wouldn't the map give you the minimum gate expression
@@thatonegoblin7051 Yep, Karnaugh mapping, Venn diagrams or Boolean algebra and minimisation. "Split the line and change the sign" brings back memories😁
The moment before you shoved the breadboard my brain was like "No way, he will not do it" and than you pulled it out :D
You are an amazing teacher!
CREATE SHADES USING SIEERPINKI'S TRIANGLE AND YOUR SMART PHONE ua-cam.com/video/DMYn_0uTVB8/v-deo.html
go watch and try supporting by subscribing
This was awesome. This really gives a person perspective when trying to drive seven segment displays using a microcontroller. Takes too many I/O pins to do this once you get more than 2 or 3 displays.
You just multiplex them, or if you have too many, give in and use a character module 😂
The dedication you put into your videos is amazing. Thanks for your great explanation!
This takes me back to the university days in electronic engineering. Loved that course so much... we literally built things like this in class. I remember also using the espresso logic minimizer and breaking my head as to why it worked so well.
CREATE SHADES USING SIEERPINKI'S TRIANGLE AND YOUR SMART PHONE ua-cam.com/video/DMYn_0uTVB8/v-deo.html
go watch and try supporting by subscribing
When i studied digital electronics, we were asked to make circuits like this and two days later after it was corrected our teacher just showed us there's a IC that makes exactly that , from memories to counters the same history.
I've been designing sonething similar to this for a project I am working on. I discovered k-maps just before starting, and it was a little bit tricky to get my head around it at first, but it helps to massively simplify the logic required to build a decoder for a 7 segment display.
I would highly recommend spending some time to learn how to use k-maps!
CREATE SHADES USING SIEERPINKI'S TRIANGLE AND YOUR SMART PHONE ua-cam.com/video/DMYn_0uTVB8/v-deo.html
go watch and try supporting by subscribing
Thanks!
Awesome, refreshes my memory from college. You should do a video on using boolean algebra to reduce the complexity of combinational logic!!
When you have just got your first Digital Design course, you study EEE mainly because of this channel, and finally understand how he came up with this logic circuit. What a great channel🎉🎉
I can't wait to see the next videos😆
Me too
Me Three ...
Me 4
Me 5
me 6
well your hardwork has earned you a new subscriber
"It works because I tested it."
Well resistor maggots, where are you?
"It just works"
Your breadboard solution is a great way to visualize the Tyranny of Numbers (Wires) problem. Back before the IC (Integrated Circuit) was invented, people knew that building a computer was possible, but were unable to build it because of the number of wires required (impossible to physically connect the circuit). Jack Kilby invented the IC, and now we have computers. Ben's beautiful breadboard examples demonstrates the Tyranny of numbers problem.
I am now a proud patron of Ben Eater on @Patreon, and you should be too. Thanks a lot Ben for your efforts
Teach by experiment Learn thru experience. This is what I get from a teacher like Ben and me as the hands-on student. Learning digital electronics is getting easier nowadays. And the most efficient way of learning is to watch youtube videos like this and quit going to school.
That is one complex circuit for displaying single digit on a 7 segment LED you got there Ben! But compare that with the complexity of the latest computers for playing 4K quality youtube videos on UHD screens via the internet? I'm really blown away by the complexity designed by the masters of the digital world.
EPROMS.. Im intrigued. This is like a cliffhanger !
w00dyblack I thought he'd use something like a cd4511 but when he said eeprom, all sorts of ideas kept popping up. 😁
I'm trying to think of a hint with out giving it away.
maybe something like. not just display decoding but state machines.
I think he will use both something like an cd4511 AND an EEPROM.
This is because with 8 bit EEPROMs and 3 digits a 7 segments, you would need 3 EEPROMS.If you use 3 cd4511s, you can save 1 EEPROM.
I used one EEPROM and a 4017 to switch between the 3 digits... activate the 7seg and also high address pins with it. Switch it fast enough and you can't tell it's flickering.
I've done a few projects with 7 segment displays, Ive always used 74HC595s to control them. I do have some cd4511s - havent got round to using them yet.
I've still go my EE text book that covers how to reduce/simplify truth tables. This was a "weed-out" course at UT for EE freshmen. Now I feel the need to dig that book out and take a trip down memory lane.
hi there
CREATE SHADES USING SIEERPINKI'S TRIANGLE AND YOUR SMART PHONE ua-cam.com/video/DMYn_0uTVB8/v-deo.html
go watch and try supporting by subscribing
9:27: You could have also arranged the gates differently and taken a shortcut with D1 and !D2, which also does occur twice, but that would have precluded your saving the D0 and !D1 gate that you did save, so it's either save that one or the other one but not both, and in fairness your arrangement is simpler. I just needed to say that I noticed that.
I have learned so much from this series of videos. I never understood how computers worked at a fundamental level. I knew about bits and registers and all that, and even programmed BASIC as a kid, designing spites and later getting into HTML. I also build my own machines and can troubleshoot computers as well as analog circuitry (like tube amps and such). I understand how transistors and capacitors and resistors, et al work. But the actual logic circuitry behind computers, despite delving into Boolean algebra on my own in 8th grade, has always eluded me.
Over the last four days I have watched every one of your videos on the subject and now I finally understand how computers actually compute and the logic behind them, which has given me a newfound appreciation of the level of complexity hidden in out-of-date computers like my childhood C64, to say nothing of modern PCs, smart phones, tablets, etc. It is truly incredible. Thank you for sharing your knowledge in such a concise way. You are a great teacher.
Ben's "messy" diagrams look like "final copy" works of art compared to my notebook sketches. Guess I should use a ruler. LOL
Aren't you a little too old 🧐
same man, same
I don't know how I got here, nor am I interested in learning this, but you explain it so well I'll click like anyway
Putting the current limiting resistor at the common anode is usually not recommended since the brightness of the LEDs will vary depending upon how many are turned on. It is recommended to use a current limiting resistor for each individual segment for the best results.
Rex McCarthy One might actually view this as an advantage, as the *overall* brightness of the complete digit won't vary as much. Also, you have a fixed amount of current needed per digit, regardless of the actual value. Anyways, the difference can hardly be seen at 5..10mA for all segments with a modern display.
Taking all that, plus that it's much easier to build with only one resistor, I personally don't care much what's usually recommended.
You did the truth table for the 1st segment and made the logic diagram. Then I was thinking would be cool if he filled out the rest. Done. Then I thought too bad its too much work to actually make the thing it would look cool. Then you pulled it out far surpassing my expectations. Bravo sir!
hex! What a wonderful hack! Never thought of it
Max Scribner I used bcd (binay coded decimal)
I recently designed and built a binary to hexadecimal driver from scratch. Created the truth table, reduced it to 43 gates (including inverters but also using XOR and triple input gates), simulated in Logisim Evolution, realized in twelve 7400 series logic ICs, created a schematic, and designed a custom PCB to connect everything. After all that design work then waiting for the ICs and PCBs to arrive, assembling that hardware and having it work flawlessly was awesome. Sure it's inefficient and willfully outdated but it is far more satisfying than any microcontroller program could be.
"Simplify the problem and solve the simpler problem" - key to setting up a trillion dollar company.
I hope you never delete these videos. I had this in school and now 20 years later it's really nice to refresh that knowledge with such amazing videos. Thanks a bunch!
BTW Each of the cathodes should have a resistor. Using 1 resistor in the common Anode causes the display's brightness to change depending on how many LEDs are lit. Common Anode should be connected to VCC.
You are the best teacher I have ever met.
thank you for your time and efforts..
hi there
CREATE SHADES USING SIEERPINKI'S TRIANGLE AND YOUR SMART PHONE ua-cam.com/video/DMYn_0uTVB8/v-deo.html
go watch and try supporting by subscribing
When you pulled out the completed circuit for the entire truth table ... oh wow, he actually did it, amazing! Also you should try sticking a bit of blue plastic over the display, will make the numbers easier to read.
when he pulled of that huge ess at 12:30 at first i was like holy crap thats a lot of tanglyness
then i got impressed that we can build all that into a ridiculousley tiny little chip
hi there
CREATE SHADES USING SIEERPINKI'S TRIANGLE AND YOUR SMART PHONE ua-cam.com/video/DMYn_0uTVB8/v-deo.html
go watch and try supporting by subscribing
Thanks for your time, we all appreciate it. It looks like this circuit took a lot of time to complete.. Thank you for your efforts!
CREATE SHADES USING SIEERPINKI'S TRIANGLE AND YOUR SMART PHONE ua-cam.com/video/DMYn_0uTVB8/v-deo.html
go watch and try supporting by subscribing
First circuit simplifies quite a bit to
AD(B xor C) + ~A~C(B xor D)
Samuel, what does the ~ mean in your formula?
@@andreamazzai1969 NOT
Bless you Ben.I've done this at least 7 times only because i was using Intel's quartus prime lite and i was testing my results with the correspoding simulations to each output.D kept being wrong the whole time , i kept on checking my truth table for the decoder and i found out that d had a 0 in the number 9 thanks to you contrary to my university's lab that had forgotten this and had d turned off in the number 9 in the project's instructions.Thank you so much for your help
Man this reminds me of my first semester electronics course vibes lmao
Bro literally said "And of course, i built the thing".
i literally shoutted in shock, like dude, you are amazing
I don't know if you corrected it later, but using only one resistor for the whole 7-segment-Unit isn't that well, becaue each Segment will pull a specific current. And the voltage across the resistor (to set the voltage at each LED to 3V) depends on the resistance of it and the current through it (with the LED it is a little bit more complex, but that's basically the point). The problem occuring now is that if you turn pn multiple LEDs, the current through the LEDs will sum up and so the voltage aceoss the resistor will increase. By doing so, the current through the LEDs will decrease and the LEDs will be less bright. By using only 2 Segments, this won't be that much, but if you compare your "8" and only a "1", you should definitely see a difference. If you use an individual resistor for each segement, that would be much better. Because then the current through each LED is independant to the number of LEDs shining.
Amazing that you built that! And not even looking a bit like a rat's nest. A really dedicated teacher!
It is just opening my mind
hey there
CREATE SHADES USING SIEERPINKI'S TRIANGLE AND YOUR SMART PHONE ua-cam.com/video/DMYn_0uTVB8/v-deo.html
go watch and try supporting by subscribing
I love these videos. Up intil a year ago i studied electrical engineering, in which digital design was one of the first courses i had. One of the first projects was to actually make this using an fpga! If i found you 3 years ago, i might have continued electrical engineering. But i'm very happy in my current occupation
I remember doing this exercise in undergrad. Good times.
hey there
CREATE SHADES USING SIEERPINKI'S TRIANGLE AND YOUR SMART PHONE ua-cam.com/video/DMYn_0uTVB8/v-deo.html
go watch and try supporting by subscribing
Wow. Your patience to describe something is incredible. I admit I had to jump around to find out where it will go. We used to use boolean logic algebra at school to transfer the truth table to your circuit gates to synthesize the circuit. Both NOR or NAND based. You jumped to "I came up with this circuit" directly. It would be useful to show how to do it since it can minimize number of used gates.
Coders:
UA-cam: Wanna learn how to build a combinational logic circuit to decode 8 bits and display a 3-digit decimal number on 7-segment displays?
Coders: Actually I do! This is a useful recommendation that I am grateful for.
Exactly me
hi there
CREATE SHADES USING SIEERPINKI'S TRIANGLE AND YOUR SMART PHONE ua-cam.com/video/DMYn_0uTVB8/v-deo.html
go watch and try supporting by subscribing
Just finished a semester where I took digital electronics
Excited AF to see it for real
Fucking brilliant video. It really motivates me. Thanks a lot for the video my friend.
I wish I had found this series a year ago. I had been mentoring a younger person and we were working our way through the "From NAND to Tetris" course (and book) and he was more interested in building a computer on a breadboard exactly like you are doing. This would have been a much better series for us to use. He passed unexpectedly late last year but watching many of these last night, I kept wishing I could show it to him.
But the reason I'm commenting on this particular video in the series is to ask about your final truth table(s) for the decoder.
We did nearly an identical project in my first year EE course back in college. After demonstrating how messy this can get, the professor taught us Karnaugh maps to simplify when possible. Based on a rough set of maps over breakfast this morning (yes, that's what I do for fun), it looks like this could be reduced pretty well. When you said something about showing an easier technique later, that's where I thought you were going.
I get that the point was to move forward to the EEPROM version in the next video, but showing how a Karnaugh map could reduce the footprint would have made a nice intermediate step.
That's my $0.02 you didn't ask for :-) so I'll stop now.
Amazing series! I found this video first last night and watched a few in order, but soon I'm starting from the top and might built along with you. Thank you so much for all your work!
CREATE SHADES USING SIEERPINKI'S TRIANGLE AND YOUR SMART PHONE ua-cam.com/video/DMYn_0uTVB8/v-deo.html
go watch and try supporting by subscribing
A single current-limiting resistor in line with the common anode is NOT the way to do it! That way the brightness of the digit will vary depending on how many segments are lit...
Correct!
But not so important for this type of video.
You can also use many more complicated methods to find a circuit with: a) the minimum number of gates b) the minimum propagation time c) the evenest propagation time.
But that was not the purpose of this video.
"So of course I built the thing." That's worth at least a thumbs up. 12:31 that was just perfect.
CREATE SHADES USING SIEERPINKI'S TRIANGLE AND YOUR SMART PHONE ua-cam.com/video/DMYn_0uTVB8/v-deo.html
go watch and try supporting by subscribing
I remember doing this in high school. It was fun but I had to redue it 3 times because of faulty and/or gates...my teacher gave me credit but I was still a bit disappoited I never got it running
I was just working with 7-segment display and binary decoding for an assignment in my Digital Fundamentals college class, more specifically I had to consider the "Don't-Care" condition for K-maps, where certain input binary values would be ignored, making the simplification of the boolean algebra equation needed for building the circuit a LOT easier. Although we didn't consider hexadecimal numbers after 9, so that's why I needed to apply the "Don't-Care" condition.
It's super exciting to finally be able to tinker with this stuff myself, though there is a lot of stuff to learn. Regardless, it's entertaining and educational!
Love it! Always such quality videos. Question about your construction methods: how do you get your jumper wires? Do you make them yourself? I always find myself running out when I buy those premade kits.
I'm pretty well certain that he makes them himself, probably out of solid-core insulated wires. I've noticed that the jumper wires which are made for kits are always colour-coded by length which can be confusing when you want to trace a run but it goes through multiple colours of jumpers.
If you can get hold of some "telephone" cable, you can open it out and strip out at least 4 different colours of wires. More, if you get a larger cable with more conductors.
hi there
CREATE SHADES USING SIEERPINKI'S TRIANGLE AND YOUR SMART PHONE ua-cam.com/video/DMYn_0uTVB8/v-deo.html
go watch and try supporting by subscribing
I never thought you would build the circuit. You are a pro with breadboards
I thought of using an eprom as a decoder too but with the popularity of Hex displays I'm still amased they haven't designed an ic that works like a 7447 but decodes hexadecimal...
They have, but it's hard to find some. I got 10 DM9368N for 12.50 $ from ebay.
I should have mentioned that the DM9368 are designed for common-cathode displays, not common-anode as used in the video.
Well just thinking about this, the quickest way would be to just use a low-pin count, low gate CPLD, although probably not cost effective. The cheapest way would probably be to use a very low cost MCU (something like a $1 PIC or ATTINY).
No, no, not MCU!!! :) That just ruins the elegance man. I was planning on building something with a GAL/PAL type thing as I wanted to have some fun playing with the things anyway and this gives me an excuse.
A decoder could also be programmed into a FPGA, course it's an overkill.
nice video for understanding 7 segment hexa-coder
I'm impressed with your way of teaching
hi there
CREATE SHADES USING SIEERPINKI'S TRIANGLE AND YOUR SMART PHONE ua-cam.com/video/DMYn_0uTVB8/v-deo.html
go watch and try supporting by subscribing
Thanks! I am wondering what are the other ways to make the gate logic more efficiently from a truth table. The only method I know of is using Karnaugh map.
My man out there reinventing computers and digital electronics all by himself :D
Dislikes on these videos can only be explained by corrupted bits (misclicks on the dislike button)
Why didn't you use karnaugh map?
The map is sparse enough that you don't need a Karnaugh map to find the optimal logic. It's easy enough to find the right logic without using a Karnaugh map in this example.
It's obviously not so easy, as the resulting circuit is far from optimal. The Karnaugh map for four inputs is still feasable by hand (still 2D) and would make for an interesting video in itself.
What else one could do is to think in terms of 2-bit data selectors (which can be built from 2 ANDs, an OR and a NOT, Ben made a video on them). They correspond to the ite-operator ("?" and ":") you might know from programming. Looking at the minimal sum-of-products from Karnaugh you'll immediately find considerably smaller circuits. Eg for the "a" segment 7 AND, 2 OR and of course 4 NOTs for the inputs - as opposed to 11 AND, 3 OR, 4 NOT.
TheRealMeisl I did this myself for a project I'm working on. K-maps are amazing for this kind of thing.
ornotblog.blogspot.co.uk/2017/03/clock-design-notes-2-7-segment-decoders.html
But I only did numbers 0-9 since mine are for a clock.
+Tom Storey Very nice blog post that is of yours! Now there's two things I'm wondering about:
1) You mention how you were able to re-use certain combinations (CD' in your example), so in effect you're optimizing across segments (as opposed to your using one K-map each to optimize a single segment). I did this myself, but not systematically, just by kinda "staring" at them all at once. Is there a better - systematic - way to do this other than writing a program that does an exhaustive search?
2) K-maps are designed to find minimal sum-of-products, aka "minterms", so the basic gates used are NOT, AND and OR. But of course there are chips with other kinds of gates, particularly universal gates like NAND and NOR. How would a systematic approach look like which produces minimal terms containing, say, only NORs?
If there is, I'd like to know! I spent a few days staring at my k-maps trying to find optimisations as well. The more time I spent looking at them the more I learned how to recognise cases where I might be able to make savings. There might be tools and other tricks or methods that I havent discovered yet, but this method seemed to work well for me. :-)
If I understand your question correctly, I suppose I havent tried to produce minterms using NOR logic. I have just translated my minterms in to NOR logic in my circuits.
For example, in Bens decoder, an inverter produces a high when an input is low, so the output of that inverter can be used along with inputs to match against various high/low input combinations using standard AND gates.
In my case, when an input is high the inverter produces a low, and that low in combination with other inputs can feed a NOR gate, and if all of the inputs to that NOR gate are low then its output would be high. Same function as an AND gate, just using inverted logic. So Im basically using the universal gate property of NOR to build the other types of logic gates.
This guy goes from 7 segment displays to making his own computer. Bro is just doing side quests atp.
did you ever hear something about Karnaugh-Veitch-Diagram ?
y?
The next step is maybe build up the logic by concrete transistor gates to show how it is working inside.
He has much effort for this theme. Respect to you.
Thanks again Ben. Don't you just hate those four words, when you know it's all over for now: "In the next video'". Hurry up please ;-)
hey there
CREATE SHADES USING SIEERPINKI'S TRIANGLE AND YOUR SMART PHONE ua-cam.com/video/DMYn_0uTVB8/v-deo.html
go watch and try supporting by subscribing
This is teaching at the right level, yes you can use a MCU and simplify it all... does that learn you foundation basics, no... now this does, well done.
My teacher gave us five days to design and build this exact thing.
really????
@@rojbenimahrez7810 probably not
You are really passionate about Electronic Engineering! Nice video.
I used to find it to be very complicated, but you simplify and explain stuff! Keep up the good work.
hi there
CREATE SHADES USING SIEERPINKI'S TRIANGLE AND YOUR SMART PHONE ua-cam.com/video/DMYn_0uTVB8/v-deo.html
go watch and try supporting by subscribing
Could have optimized with Karnaugh tables though haha
or boolean algebra...
Karnaugh table IS boolean algebra
or just bought a CD4543BE for $.50
that's not a point of this video, you can buy a 8 bit CPU for few bucks, but he wants to build 8 bit cpu from just logic gate
@@bacphan7582 ye, and if he minimalized the functions he could have used a lot less of those gates
WoW. This incremented my respect for the firsts people that built the firsts computers by a lot.
“This is the truth table I came up with”
*laughs in peasantry*
How clear cut explanation is given. Thank you
Hi Ben I was thinking that maybe I could set up a service we're we do a assembly of all the components for people for low profit (just so it's worth our time) instead of people having to go out and souce the components themselves.I think this would be a great addition to the channel and if anyone thinks this would be a good idea please like to get Ben to look at this comment.Thanks will
The fun is building it yourself. It might be nice to offer a kit with ALL the components required, but I would let people assemble it their selves, that is the enjoyment (and learning) of this project. I am following along building in a simulator myself but have the chips on order and will be building the computer for real (and probably adding some of my own design along the way).
Buying your own components and sourcing them is part of the learning experience. You have to plan and figure out how to get good deals etc, plus putting things into action. That being said though with other projects its the same sort of thing look on the net, buy stuff and build it. This as a kit would be really good though I can't denie that, I don't think there is anything out there that is like DIY your own 8 bit computer.
Why not to use the 74LS46, 74LS47 or 74LS49 CHIP?
Adrian Sikora
if u use the ICs that u have mentioned,for invalid bcd codes( 10 to 15) the outputs wont be A to F....
I think he'll get to that but he has to teach the low level concepts before showing how to simplify the problem
Or use an Arduino
Sir, thank you very much, i have always wondered how computers work at the root level and your videos have made me understand the beauty within them. Once again thank you very very much.
you should have made every gate with transistors hahaha that would have propably filled a whole table of breadboards
hey there
CREATE SHADES USING SIEERPINKI'S TRIANGLE AND YOUR SMART PHONE ua-cam.com/video/DMYn_0uTVB8/v-deo.html
go watch and try supporting by subscribing
I'm starting to study electronic, and this is just awesome
I thought it said “destroying hex segment decoder” and I was like “just blow it up”
i so cannot believe you made that circuit ben. thanks SO much for your efforts
FF equals 255 = 2 digits
But he wants it to say "255", not "FF".
Watching in awe. Patient dedication to accomplish a fundamental task. 🎩 🙌
0:18 user friendly unless you are a human calculator
hi there
CREATE SHADES USING SIEERPINKI'S TRIANGLE AND YOUR SMART PHONE ua-cam.com/video/DMYn_0uTVB8/v-deo.html
go watch and try supporting by subscribing
What a great explanation. Made the idea of hexadecimal much clearer for me