Live data from Hacker News

Simple CPU Design

simplecpudesign.com

1–10 of 51 posts

Re: Simple CPU Design

#2
how awesome that this exists. I was learning how CPU works and designing my own CPU w emulator like 20 years ago as a teenager by googling into obscure forums, blog posts and homemade cpu webring. I made an experiment not long ago "would I be able to find in google by myself all learning materials to do that again". The outcome of that experiment deeply unsettled me. Google just gives you shit and total garbage. Half of the results are AI generated, other half is sloppily written half assed abstract pseudo tutorial like nonsense on medium or other paid-for-engagement platform. My children would not be able to reproduce such self learning without watching some youtubers doing it or by accessing some curated paid course or by accidental stumbling upon "gems" like this i.e. from HN. We desperately need back old google and old internet and somehow save and preserve humanitys knowledge.

Re: Simple CPU Design

#3
I teach the introduction to computing class at MSU and agree entirely: most students need to start with the absolutely most simple introduction to computing possible.

My favorite two models are:

The Scott CPU

https://www.youtube.com/watch?v=cNN_tTXABUA (great book, website is now offline unfortunately: https://web.archive.org/web/20240430093449/https://www.butho...)

An extremely simple non-pipelined 8 bit CPU. The emulator lets you step through tick by tick and see how the machine code is driving an operation. I spend one lecture showing each tick of a bitwise AND and following the data around from the instruction into the instruction register, how the instruction selects the general purpose registers, runs it through the ALU and then moves the data back from the accumulator into a register. It's one of my favorite lectures of the year.

The Little Man Computer - https://www.101computing.net/LMC/

A higher level Von Neumann style computer that helps introduce students gently to assembly where they can fully understand the "machine code" since it's just decimal. We then build an emulator, assembler and compiler for an extension to LMC that introduces the notion of a stack to support function calls.

It's a fun one semester class, not as intense as NAND-to-Tetris but still an overview of how computing works.

Re: Simple CPU Design

#5

I teach the introduction to computing class at MSU and agree entirely: most students need to start with the absolutely most simple introduction to computing possible. My favorite two models are: The Scott CPU https://www.youtube.com/watch?v=cNN_tTXABUA (great book, website is now offline unfortunately: https://web.archive.org/web/20240430093449/https://www.butho... ) An extremely simple non-pipelined 8 bit CPU. The e…

My love is from the BU intro computing class from a number of years ago which was using the Harvey Mudd Miniature Machine

https://www.cs.hmc.edu/~cs5grad/cs5/hmmm/documentation/docum...

Re: Simple CPU Design

#6

I teach the introduction to computing class at MSU and agree entirely: most students need to start with the absolutely most simple introduction to computing possible. My favorite two models are: The Scott CPU https://www.youtube.com/watch?v=cNN_tTXABUA (great book, website is now offline unfortunately: https://web.archive.org/web/20240430093449/https://www.butho... ) An extremely simple non-pipelined 8 bit CPU. The e…

My love is from the BU intro computing class from a number of years ago which was using the Harvey Mudd Miniature Machine https://www.cs.hmc.edu/~cs5grad/cs5/hmmm/documentation/docum...

very cool machine!

Re: Simple CPU Design

#7

I teach the introduction to computing class at MSU and agree entirely: most students need to start with the absolutely most simple introduction to computing possible. My favorite two models are: The Scott CPU https://www.youtube.com/watch?v=cNN_tTXABUA (great book, website is now offline unfortunately: https://web.archive.org/web/20240430093449/https://www.butho... ) An extremely simple non-pipelined 8 bit CPU. The e…

Your class sounds amazing. Do you have any of your lectures online?

Re: Simple CPU Design

#8

how awesome that this exists. I was learning how CPU works and designing my own CPU w emulator like 20 years ago as a teenager by googling into obscure forums, blog posts and homemade cpu webring. I made an experiment not long ago "would I be able to find in google by myself all learning materials to do that again". The outcome of that experiment deeply unsettled me. Google just gives you shit and total garbage. Half…

I agree. Its hard though, SEO people are malicious, persistent and with modern tech, have incredible tools.

And with hand curation, its hard to feel like its 'worth it' when instead of being able to build a community, your results are scraped and shown out of context.

If you have any thoughts on how to get that sort of culture back I'm open to it

Re: Simple CPU Design

#9
I considered trying to do a simple CPU design from logic gates too. But I ended up wondering about some of the performance characteristics. Maybe some people who are knowledgeable are reading this. What I am wondering about is the switching speed of logic gates as compared to the signal speed in the electric connections for a realistic CPU. I.e., how many logic gate lengths (assume logic gates to be square) does an electric signal travel in an electric connection in the time that is needed for a logic gate to invert its output. Another one that seems relevant is how much spacing electric connections need compared to the size of a logic gate.
Post reply on HN