Game Consoles and Oscillators - Nand2Tetris
Extra Bits from the internet.
Extra Bits of information related to the course that I found interesting.
Remember those game consoles that we plugged into the TV and inserted a cartridge that said 1000000 in 1? Those were computers (well technically).
They were 16-bit (fourth generation) and 32/64-bit (fifth-generation). These word sizes are somewhat debatable (click here for more info) but the real thing is that these were more like computers and had all the parts like RAM, CPU and even ROM.
The ROM is the 1000000 in 1 cartridges that we used to buy at local stores for Rs. 50/-. So we basically swapped out ROMs whenever we wanted to and the reset button just moved the PC (Program Counter) to 0.
Those glitches and random artefacts? The PC probably messed up the count or the ROM lost a bit somewhere. It's crazy to think that I had a computer even before I thought I had one and it used a CRT TV as a monitor.
Oscillators in Modern Computers
In the course, while building the CPU, we never thought of the Oscillator that gave us the clock pulse. It was treated as an external entity that the CPU knew how to handle. In reality and in modern computers, the oscillators are a part of the CPU.
To know why it's now moved inside the CPU we have to know that in the usual sense, an oscillator would be a different entity and the pulse would be routed to all the components that need a clock cycle to work with - CPU, Memory, Registers etc. In reality, each component in the computer can run at its own speed. The RAM chip currently in your computer might be running at 2333 MHz and your CPU might be running at a speed of 2.8 GHz. That's a lot of difference and there are mechanisms to handle it.
But for the explanation as to how oscillators are implemented modern CPUs, they are a part of the CPU or whichever component they are giving a pulse to.