I tried making a computer that could actually execute instructions from ROm, but there were so many gates that the simulation started glitching and slowing down. I sadly had to abandon the project.
You need a better bus design. It should show as a double or thick line with multiple parallel input lines angling in and multiple parallel output lines angling out some length away. The bus should allow bending and extending like a single connecting line. It should also allow branching, thus duplicating input or output lines (there is no real difference between both types). I do not know whether the digital simulator you are using allows designing such a kind of visual/functional component but it would be a great help.
@@Logical_technologies No worries, I do like the video. I work in education. This video is very instructional, it was just as a bit of constructive criticism. Thanks so much.
You need more subscribers because I have been searching up for a long time now of how to make a cpu but you told me how thanks. Using it in a game in roblox named circuit maker 2
I believe you have an issue with DIGIT DISPLAY block : it looks like it decodes 4 bits signed integer (-8 to +7) instead of BCD (binary coded decimal, 0 to 9, an unsigned integer to 7-seg decoder, 0 to F, could do it as well). Your s segment should be useless and disconnected as well, unless you want to display a signed integer ? In that case only usefull on the left 7 seg, and need a very different GPU approach to show values 0 to 128 + 1 sign line to cover the -128 to +127 value range ! Already said, a 8xOR block would make it easier to fit in, and the ALLOW gate is nothing else than a latch. 3-states latches are better in practice, though... Also, you could remove the "internal" GPU now, so it would be less crampied 😅 Good video, too bad no time stamps for the sub-assemblies designs. Keep up with this project, very interresting ❤👍 Furthermore, for now it is not a computer, it is an overwhelmingly complicated adder believing it is a computer 😅 Have fun with this project 🖖
Yes I know about the GPU but I need time to fix it and I know this isn’t a computer but it acts as a adder and that counts as an actual computer thanks for the tips!
@@Logical_technologies i come from a forgotten time, a time when we repaired broken boards by changing the faulty component instead of replacing the entire board, around when dinosaurs were roaming Earth, lol 😅 I believe you know how to do what you have to do to make this emulated computer working, not a question of memory based on 1-bit NAND-flash or flip-flops or alternate schematic as SRAM (and, btw, i appreciate your use of the OR-AND RS flip-flop, very rare 👍), more a question of organizing/separating/defining (the extent of) needed functions, so each problem comes with a much more defined and 'easy' solution 😉 You need : - a CPU : some datas, address and a flag registers, an ALU, and a control block (reset, read_write, mem_io, ...). Your ALU : a number of "computing blocks" realising 1 operation each + an instruction decoder/sequencer to select the good one and select source(s) and destination registers. - RAM for code/datas - IO peripherals, basically keyboard and GPU (hard to sim a serial port connected to nothing, or a non-existing mouse ^^) - i don't know your software, but at some point (building a BIOS, an OS, an OS-dependent app or a self-OS app, all require that, maybe your instruction decoder too due to the number of possibilities), you will need the possibility to pre-load your RAM with external datas/code, make sure your sim can do that 😉 I saw your new BCD to "signed 7-seg" (technically should be 8-seg ^^) decoder earlier, nice new design 👍Now i wait for the 1st try with the whole machine 😉 Don't care too much about what i say, else you are in for designing a programmable interrupts controler before having a CPU 🤣😅 Have fun ❤😉🖖
@@Logical_technologies Hi 👋 Maybe you can take it like this : the instruction decoder is the heart of your CPU, connecting (internal) registers to computing blocks depending on the instruction, and sequencing all the machine. But you only need an embryo of a real instruction decoder to show how it works, you can get a processor to do something usefull with a very small number of instructions, and you need even less to demonstrate the principles. What an instruction decoder really does is to connect 3-states registers and logic blocks with the right timing. It also mean the instruction set is your own design ! You decide what op-code does what operation, and you can choose any practical solution to implement it ! What you REALLY REALLY need at this point : registers (the size you want, i would recommend 8 bits for a sim, with an ENABLE line to allow the entire register (so it acts only if used by the instruction), a READ/WRITE line (so the register knows if it supposed to get datas from the bus or put datas on the bus) and a OPERAND line, to connect to an internal secondary data bus to the ALU, as 2 inputs for most operations. You will need at least 2 data registers (because a+b needs to know a and b at the same time ^^), better 4, and 2 address registers (1 to follow the program in memory, 1 to point to the required datas), better 4. Now you have registers, you need an ALU (arithmetic and logical unit). It is in fact a large array of functions, selected 1 by 1 by the instruction decoder. To make an ALU, you need the schematic of all basic functions you wanna implement, each locked by an ENABLE line, so only 1 (or none, for instructions NOP, JMP and some others) is active at a time. You need a bitwise NEG, AND, OR, NAND, NOR, XOR, XNOR, a binary full adder, subber, binary comparisons, shifting and rotating... A number of operations don't go through the ALU because they don't use data registers, NOP uses nothing but time, JMP uses only instruction pointer, and so on. You need a flag register for many tests that don't involve the value in a specific register, but the result of the last operation. JE (jump if equal), JNE (jump if not equal) and so on. LD (load) usually also set the flag register as if the value loaded was a result. The flag register is essential to make choices in your program ! Told you, i speak too much 😅🤣❤🖖
@@Logical_technologies I FOUND THIS when you click on your video 1 : 03 : 11 You click 64+32 , so you should got 96 but you got -76 Graphics card work good but your digital display blocs working differently I made 1 by 1 to your and your dd (digital display bloc) have range -8 to 7 ,but you need 0 to 9 And when your Graphics card send information 1001 you got -7 not 9 Plis don`t ask me why i have so sad life to search for bugs in your digital logic and founds solution =P Ps Allow gate is bad idea , because take lot of space , better solution is add "ON pin " in 1 byte memory , and crate new bloc with or gate and one "on pin" for AND gate to allow pass signal from or gate
OK, So, I'm assuming you're using a BCD and 3 binary to Seven Segment display converters in 30:45. I had NO idea what you were making in 29:34. Until you named it the way you did. I've never seen a seven seg converters made with gates before. I only know a very hacky way to make them. Still haven't finished the full video quite yet, Still at 30:45, I'll update when I finish the video.
@@Logical_technologiesI’m very new to digital logic, but what’s Thea the point of the graphics card here? How does it work like the ALU can handle all the math so what’s the graphics card do? In this specific computer.
It makes it so the binary is displayed onto the 7-segment display like 101 in binary but gets converted to a different format so the 7-segment display can take that in and display it as 5
At that age i didn't even know what was inside a computer! i thought it just magically appeared on my screen such like minecraft i didn't understand how it was on my tv but it didnt make me not curios about them!
@@Logical_technologies if you want you can make a program counter i did it with a xor and (and gate) and some flip flops thanks for doing it the computer
9 หลายเดือนก่อน
i wonder why i didnt get 11k views when i make videos like these.
1 Byte goes up to 255 if you do not include the 00000000 but is 256 if included, 1 byte goes 1,2,4,8,16,32,64,128 and all them added together = 255 but added with the zero = 256
I’ve never tried, I need to make a proper computer for that. Look at my Aİ in Logic series as that will be an Ai that can basically do anything! It will be a long series though I haven’t even made the cpu yet!
When i can borrow my dads computer im gonna try to make a calculator but without division and multiplication Edit: i didnt have enough time because it was 11 pm
im not sure why u wasted so much time on the graphics card and things like that when you could have spent that alot better of an alu and over all alot more functions if you are smart enough to make things like the graphics card wasted potential in my opinion
@@Logical_technologies oh ok i thought this was a 1 project vid and not a series let me know when its done cause i would really like to see how you make this into a computer
Thanks for telling me but it is because it is a calculator but you can see one of my most recent videos I’ve made a programmable computer if that’s what you’re looking for?
I tried making a computer that could actually execute instructions from ROm, but there were so many gates that the simulation started glitching and slowing down. I sadly had to abandon the project.
Yes me too
do you still have the project?
@@maskangel Sadly, it's somehow gone.
@@HerzhaTheShapeshifter how many gates did it take?
I have a Computer too but i just have to fix the control UNIT
Oh my God the algorithm is killing it lately! Just found and subscribed to your channel. I'm excited to watch this video when i get home today!
Hope you enjoy!
You need a better bus design. It should show as a double or thick line with multiple parallel input lines angling in and multiple parallel output lines angling out some length away. The bus should allow bending and extending like a single connecting line. It should also allow branching, thus duplicating input or output lines (there is no real difference between both types). I do not know whether the digital simulator you are using allows designing such a kind of visual/functional component but it would be a great help.
I love the video. All it’s missing is some quiet ambient music, and commentary about each step.
I did add music but for some reason it wasn’t added
@@Logical_technologies No worries, I do like the video. I work in education. This video is very instructional, it was just as a bit of constructive criticism. Thanks so much.
Im going to be uploading some tutorials on python soon so I’ll add some commentary over that also some ambient music in the back thanks
You need more subscribers because I have been searching up for a long time now of how to make a cpu but you told me how thanks. Using it in a game in roblox named circuit maker 2
Nice
i was gonna go to bed and then i finds iths masterpeice
guess i'm staying up for another hour
lol you’ll start dreaming about logic gates
I believe you have an issue with DIGIT DISPLAY block : it looks like it decodes 4 bits signed integer (-8 to +7) instead of BCD (binary coded decimal, 0 to 9, an unsigned integer to 7-seg decoder, 0 to F, could do it as well).
Your s segment should be useless and disconnected as well, unless you want to display a signed integer ? In that case only usefull on the left 7 seg, and need a very different GPU approach to show values 0 to 128 + 1 sign line to cover the -128 to +127 value range !
Already said, a 8xOR block would make it easier to fit in, and the ALLOW gate is nothing else than a latch. 3-states latches are better in practice, though... Also, you could remove the "internal" GPU now, so it would be less crampied 😅
Good video, too bad no time stamps for the sub-assemblies designs. Keep up with this project, very interresting ❤👍 Furthermore, for now it is not a computer, it is an overwhelmingly complicated adder believing it is a computer 😅
Have fun with this project 🖖
Yes I know about the GPU but I need time to fix it and I know this isn’t a computer but it acts as a adder and that counts as an actual computer thanks for the tips!
@@Logical_technologies i come from a forgotten time, a time when we repaired broken boards by changing the faulty component instead of replacing the entire board, around when dinosaurs were roaming Earth, lol 😅
I believe you know how to do what you have to do to make this emulated computer working, not a question of memory based on 1-bit NAND-flash or flip-flops or alternate schematic as SRAM (and, btw, i appreciate your use of the OR-AND RS flip-flop, very rare 👍), more a question of organizing/separating/defining (the extent of) needed functions, so each problem comes with a much more defined and 'easy' solution 😉
You need :
- a CPU : some datas, address and a flag registers, an ALU, and a control block (reset, read_write, mem_io, ...). Your ALU : a number of "computing blocks" realising 1 operation each + an instruction decoder/sequencer to select the good one and select source(s) and destination registers.
- RAM for code/datas
- IO peripherals, basically keyboard and GPU (hard to sim a serial port connected to nothing, or a non-existing mouse ^^)
- i don't know your software, but at some point (building a BIOS, an OS, an OS-dependent app or a self-OS app, all require that, maybe your instruction decoder too due to the number of possibilities), you will need the possibility to pre-load your RAM with external datas/code, make sure your sim can do that 😉
I saw your new BCD to "signed 7-seg" (technically should be 8-seg ^^) decoder earlier, nice new design 👍Now i wait for the 1st try with the whole machine 😉
Don't care too much about what i say, else you are in for designing a programmable interrupts controler before having a CPU 🤣😅
Have fun ❤😉🖖
The problem is that i don't know how to make a cu inside of a cpu! and i cant find where to learn to build one
@@Logical_technologies
Hi 👋
Maybe you can take it like this : the instruction decoder is the heart of your CPU, connecting (internal) registers to computing blocks depending on the instruction, and sequencing all the machine. But you only need an embryo of a real instruction decoder to show how it works, you can get a processor to do something usefull with a very small number of instructions, and you need even less to demonstrate the principles. What an instruction decoder really does is to connect 3-states registers and logic blocks with the right timing. It also mean the instruction set is your own design ! You decide what op-code does what operation, and you can choose any practical solution to implement it !
What you REALLY REALLY need at this point : registers (the size you want, i would recommend 8 bits for a sim, with an ENABLE line to allow the entire register (so it acts only if used by the instruction), a READ/WRITE line (so the register knows if it supposed to get datas from the bus or put datas on the bus) and a OPERAND line, to connect to an internal secondary data bus to the ALU, as 2 inputs for most operations. You will need at least 2 data registers (because a+b needs to know a and b at the same time ^^), better 4, and 2 address registers (1 to follow the program in memory, 1 to point to the required datas), better 4.
Now you have registers, you need an ALU (arithmetic and logical unit). It is in fact a large array of functions, selected 1 by 1 by the instruction decoder. To make an ALU, you need the schematic of all basic functions you wanna implement, each locked by an ENABLE line, so only 1 (or none, for instructions NOP, JMP and some others) is active at a time. You need a bitwise NEG, AND, OR, NAND, NOR, XOR, XNOR, a binary full adder, subber, binary comparisons, shifting and rotating...
A number of operations don't go through the ALU because they don't use data registers, NOP uses nothing but time, JMP uses only instruction pointer, and so on.
You need a flag register for many tests that don't involve the value in a specific register, but the result of the last operation. JE (jump if equal), JNE (jump if not equal) and so on. LD (load) usually also set the flag register as if the value loaded was a result. The flag register is essential to make choices in your program !
Told you, i speak too much 😅🤣❤🖖
lol wow sorry i didn't see this but WOW that's alot of writing
Cool use of Sebastian Lague's logic simulator
Yes I learnt how to use it because of him!
@@Logical_technologies imma make this irl! it's hard but possible...
Very illustrative 👍
Thankyou
i'm taking notes rn lol
Oh... I finally found this channel again...
Nice
Why your 7-segment display show " - " symbol ??? although the value is positive
i don’t know if the graphics card works or not correctly but i’m not sure
@@Logical_technologies I FOUND THIS
when you click on your video 1 : 03 : 11 You click 64+32 , so you should got 96 but you got -76
Graphics card work good but your digital display blocs working differently
I made 1 by 1 to your and your dd (digital display bloc) have range -8 to 7 ,but you need 0 to 9
And when your Graphics card send information 1001 you got -7 not 9
Plis don`t ask me why i have so sad life to search for bugs in your digital logic and founds solution =P
Ps
Allow gate is bad idea , because take lot of space , better solution is add "ON pin " in 1 byte memory , and crate new bloc with or gate and one "on pin" for AND gate to allow pass signal from or gate
Lol sorry I didn’t see this but thankyou!
OK, So, I'm assuming you're using a BCD and 3 binary to Seven Segment display converters in 30:45. I had NO idea what you were making in 29:34. Until you named it the way you did. I've never seen a seven seg converters made with gates before. I only know a very hacky way to make them. Still haven't finished the full video quite yet, Still at 30:45, I'll update when I finish the video.
Forgot I made this comment. 🤣
Yeah, I finished the video. It was very neat.
Nice, glad you liked it!
You may like the game ‘Turing Complete’ and also ‘Nandgame’
Thanks for the suggestions, i'm thinking of making a video on Turing Complete soon
you are such a genius! c:
Thankyou
How many work done and so little functionals and uses. But you're good.
GRAFICS CARD - YA MEAN "THE 7-SEG-DISPLAY CONTROLLER" 🤣
Great Job! Now the next thing would be to hook it up to some ROM and have it run on it's own 🤔
Yes I know but that’s very hard to do!
ilo ROM li pali seme lon ijo ni?
@@maskangel poka nanpa la, ilo ROM li pali e poka sona lon ijo ni.
i have no idea what your saying or even what language your speaking in
@@Logical_technologies Someone asked what a ROM was and I explained it to them. It's in Toki Pona
Hmmm this makes me wonder if Game consoles like The NES, SNES are Made like this..
They would be similar but it would have a way of translating assembly code to binary
i love that "grafics card"
😂 I wasn’t thinking (new video out tomorrow)
@@Logical_technologiesI’m very new to digital logic, but what’s Thea the point of the graphics card here? How does it work like the ALU can handle all the math so what’s the graphics card do?
In this specific computer.
@@sslugsI think it's basically for the graphics card make all the ALU answers to 7 segment friendly for display
It makes it so the binary is displayed onto the 7-segment display like 101 in binary but gets converted to a different format so the 7-segment display can take that in and display it as 5
bro gonna make a 64 bit computer soon
im going to make a 16 bit computer soon
tried making a computer that is capable of running doom and had to stop because the lag was unbearable with just 64Byte 16x RAM
That’s the problem with running an computer on a computer, the computer needs a lot of hardware so it can run the software smoothly
Don’t know how to appreciate you
Share to others please.
When I was 8 I tried to make a cpu with a integrated assembler but sadly I didn't know how to do that.
At that age i didn't even know what was inside a computer! i thought it just magically appeared on my screen such like minecraft i didn't understand how it was on my tv but it didnt make me not curios about them!
write that down WRITE THAT DOWN (I'm gonna borrow this)
Nice computer!
Thanks (edited)
@@Logical_technologies Nothing, i’m just saving the timestamp (also i just edited it)
Yes yes now make another computer in that computer
Okay okay let me make a programmable computer and then I will
Thanks ❤
This will help me learn digital logic 😊
Sorry for no music I needed to upload it and I didn’t have time to add music I’m not sure if you can hear the music but I can’t sorry!
@@Logical_technologies no problem
No music can help me focus on the actual content anyways 😌
“grafics”💀💀💀
lololololololololololololololololololololololololol
Did not know that buses could give wireless singals
Yes I do and that’s why I have done so
@Logical_computers dam u reply to every comment thats a thing most people only do at the release of there videos
Yes I do because I like to interact with my audience
That's a great thing keep it up tho it will get harder as your channel grows but keep up the great effort
discord.gg/KR9kcsPuVu
Have you joined my Discord server? There’s announcements, computer science and more
Digital Logic Sim by Sebastian Lague
Put to the most advanced limits
Congratulations 🎉🎊🎉 on your first 100, you deserve it.
#sexy #tech #unspaghetti
Keep the great builds coming. ❤
Waiting for the "Over 9000" episode.
Yes I need to do that soon!
Sorry for no music I needed to upload it and I didn’t have time to add music I’m not sure if you can hear the music but I can’t sorry!
@@Logical_technologies no need to apologize. I loved it all the same.
@@Logical_technologies Let people choose their own music somewhere else instead of imposing your own musical taste.
wait what is the over 9000 episode do you mean subscribers?
Please what software are you using for the digital circuit
It is called Digital logic sim From Sebastian lague Go visit his channel on TH-cam!
finnaly
Finally? Have you been waiting for a video like this lol?
hey i am wondering is it possible for me to learn and understand logic gates? like can i make cpus like this made in this video man
Yeah you can copy what you want! Come join my discord to get the full image and ask me questions about logic gates discord.gg/yQzxcxz9GM
Sheesh that's a long way
What is the name of the software??
This is called digital logic simulator made by Sebastian lague and I suggest you go see his channel on TH-cam
Why did you used busses? Aeent they just wires? Wire is wire!
To make it look better
Wires get clustered and dont look clean
What is this software called?
Digital logic simulator
woah
22:38
if you write 9 on the computer it gives you 7 please fix digit display bug
Thanks for informing
@@Logical_technologies if you want you can make a program counter i did it with a xor and (and gate) and some flip flops thanks for doing it the computer
i wonder why i didnt get 11k views when i make videos like these.
Hmm im not sure i think i got that many views because i had been uploading daily for around 2 months but deleted all the videos before this one
ok@@Logical_technologies
i only just realized that 1 byte goes up to 256 not 128 idk if it includes 1 tho
1 Byte goes up to 255 if you do not include the 00000000 but is 256 if included, 1 byte goes 1,2,4,8,16,32,64,128 and all them added together = 255 but added with the zero = 256
@@Logical_technologies oh ok thx
your welcome
nice.. I am making a computer in roblox!
wow on what game on roblox?
named Build Logic
i might try that!
Bro i js made a 506 Byte Memory in Dls
Nice work!
@@Logical_technologies ty :D
1:03:26 double dabble exist, you know
Play gta 6 on it
Wth happened at 14:20?
I made a Nor gate
But everything dissepeared
That’s because I saved it into a gate
But can it run doom?😂
I’ve never tried, I need to make a proper computer for that. Look at my Aİ in Logic series as that will be an Ai that can basically do anything! It will be a long series though I haven’t even made the cpu yet!
Its a joke... @@Logical_technologies
How do you enable seeing the name of all the pins?
Options in the menu
Kk, Grafik kartı ingilizcede Graphics Card
Diye yazılıyor
lol I know a lot of people pointed that out, I accidentally called it ‘grafics’. Do you speak another language than English?
Yeah fam. Türkçe, english, Deutsch,
Yeah fam. Türkçe, english, Deutsch,
Yeah fam. Türkçe, english, Deutsch,
Ben türkçe öğreniyorum
Build rom plsss
Soon
When i can borrow my dads computer im gonna try to make a calculator but without division and multiplication
Edit: i didnt have enough time because it was 11 pm
Okay lol I hope you learn something when you do do it
Yey no any annoying music
Sorry for no music I needed to upload it and I didn’t have time to add music I’m not sure if you can hear the music but I can’t sorry!
@@Logical_technologies No ,no you don`t understood me , I`m happy because you don`t add music. First what I made after click your video is mute =P
YOU TIMED ME OUT
FOR 24HOURS????????????????
lmao
no way logic did this, also im @Enulix, this is an old account
@@Enulix im the morse guy
Soon we’re going to have the whole server commenting on this one comment lol
@@Logical_technologies yes lol
You are 15,343 IQ
thanks
im not sure why u wasted so much time on the graphics card and things like that when you could have spent that alot better of an alu and over all alot more functions if you are smart enough to make things like the graphics card wasted potential in my opinion
You’ll just have to wait… I’ve got something planned
@@Logical_technologies oh ok i thought this was a 1 project vid and not a series let me know when its done cause i would really like to see how you make this into a computer
@@camerontowell3638 this isn’t really a series but it’s out tomorrow anyways
@@Logical_technologies alright sounds good ill watch as soon as i see it come out
thats not a computer
Thanks for telling me but it is because it is a calculator but you can see one of my most recent videos I’ve made a programmable computer if that’s what you’re looking for?
The fact computer was firstly Made for calculator
Play gta 6 on it
It hasn’t came out yet so is need to wait till it comes out and then make it lol