Forums - Open Redstone Engineers
CPU tutorial, Capo-Style - Printable Version

+- Forums - Open Redstone Engineers (https://forum.openredstone.org)
+-- Forum: ORE General (https://forum.openredstone.org/forum-39.html)
+--- Forum: Projects & Inventions (https://forum.openredstone.org/forum-19.html)
+---- Forum: In Progress (https://forum.openredstone.org/forum-20.html)
+---- Thread: CPU tutorial, Capo-Style (/thread-8017.html)



CPU tutorial, Capo-Style - LordDecapo - 10-11-2015

So everyone, i have decided i want to make a long interactive video (questions asked, and answers redirect u to a different time of the video based on if u got it right or wrong) that will teach you everything from the basic CPU all the way up to Big Pipelines, branch prediction, hazards, interrupts, and other things. 


For this i need you guys to ask a bunch of CPU questions in the responses on here. I will use these to make the video more directed at stuff people actually are getting confused on, not just the random basics.


RE: CPU tutorial, Capo-Style - greatgamer34 - 10-11-2015

Whats a(n) cpu?


RE: CPU tutorial, Capo-Style - newomaster - 10-12-2015

What does it mean to say a CPU has an "x-stage pipeline"?
What are instruction sets and how are they encoded to reduce their size? (RISC vs. CISC maybe?)


RE: CPU tutorial, Capo-Style - jxu - 10-13-2015

What is the difference between a CPU and GPU? (asked a lot)
What is the difference between RAM and registers? (also asked a lot)
How is cache used?
Why is branch prediction necessary?
Where is minecraft CPU development historically? (I would guess at late 1970s, early 1980s in terms of branch prediction and pipelining but NOT performance Tongue)

There are so many questions that can be asked. I suggest taking questions from the comments instead of an interactive video (a bit gimmicky imo)


RE: CPU tutorial, Capo-Style - Charles - 10-14-2015

What are the advantages of interrupts?
Why should I care about hazards?


RE: CPU tutorial, Capo-Style - LordDecapo - 10-14-2015

Awesome questions guys!
I was going to make a video asking for more questions as well as this post before I make the long tutorial


RE: CPU tutorial, Capo-Style - GISED_Link - 10-14-2015

what kind of devices can I use to debug my CPU ?
What are the general spec's of a CPU ?
for what purpose can I use a CPU ?
How a program is executed in a CPU (branch, adress, programm counter) ?
What is a Flag ? Is there always the same flags in any CPU ? Which flags are necessary ?
How can I show the data (BCD, 7 segments) ?


RE: CPU tutorial, Capo-Style - Mar_Win - 10-14-2015

How do you design an efficient Instruction Set?
How do you combine two CPU - Cores and is it worth it?
Are Threads or even Multithreading a thing with Redstone?
How do you connect a (mathematical) Co-Processor or a GPU to the CPU?
What about devices like a "mouse" or a keyboard? 
How do you prioritize some interrupts over others?
What to do when the calculated number can be dealt with properly, like an overflow or a carry occurs in the programm?
Difference between CISC and RISC (implementation, when to use it and how) ?
well...yeah


RE: CPU tutorial, Capo-Style - Apuly - 10-15-2015

How much wood would a woodchuck chuck if a woodchuck could chuck wood?


RE: CPU tutorial, Capo-Style - Nuuppanaani - 10-17-2015

Is this for Minecraft or a general see pee you tutorial? Either way, really looking forward to this Big Grin


RE: CPU tutorial, Capo-Style - Magic :^) - 10-19-2015

I figure it should be minecraft based, but applicable to real CPUs. This is a level above gate-level logic, so apart from timing and critical path stuff, the knowledge to be gleaned is pretty universal.


RE: CPU tutorial, Capo-Style - DjSapsan - 10-20-2015

can u make text version answers? I wanna translate to Russian. In Russian are very few helpful material, really. Tens of thousands it will be useful Wink


RE: CPU tutorial, Capo-Style - LordDecapo - 10-23-2015

i can link the text of the what i will say plus maybe include pics


RE: CPU tutorial, Capo-Style - PNWMan - 11-06-2015

--What is the difference between strings/threads/processes/programs... etc.?
--what are subroutines and how do they work?
--what are some ways of dealing with immediates (have immediate instructions [like ADI] or memory map a register address to be an IMM [register 111=IMM, for example])?
--what is jump and link register?
--what are the differences between harvard, modified harvard, and von neumann?
--Possibly mention little-endian or big-endian data formats, as well as horizontal [RCA, ICA], vertical [CCA], and diagonal [CLE] orientations and their registers.
--advantages/disadvantages of using register-based ($c=$a+$b), register writeback (proper term for it? idk...) ($c=$c+$a), and accumulator (Acc=Acc+$a) architectures.
--what are some different ways of clocking the CPU's program counter? (because some CPUs may be asynchronous where different instructions take longer, or branching clocks the PC differently)
Maybe divide the video up into 2 parts: One about the CPU architecture, one about programming it, applications, representing the numbers, and a UI.


RE: CPU tutorial, Capo-Style - slugdude - 11-17-2015

Do this plz, I can't find any resources about pipeline implementation in minecraft Sad


RE: CPU tutorial, Capo-Style - Magic :^) - 11-17-2015

but slug if capo finished a project that would be heresy


RE: CPU tutorial, Capo-Style - slugdude - 11-20-2015

(11-17-2015, 10:29 AM)MagicalGentleman Wrote: but  slug if capo finished a project that would be heresy

^


RE: CPU tutorial, Capo-Style - phonkyman - 11-28-2015

what's the difference between RISC and CISC, and can you explain them?