Experiments, Milestones, Physics, Electronics, Engineering

More Engineering. RAM Ready in the simulated 8-bit computer project in Circuitverse.

In October and early November, Simon was busy with another attempt to simulate SAP-1 (simple as possible processor, an 8-bit computer) in Circuitverse (something that he hadn’t managed to complete when he tried it last time). I’m not even sure if anyone uses Circuitverse for such large-scale projects.

Main

On November 7, Simon finally managed to finish the RAM on his simulated 8-bit computer (a computer where every general-purpose register contains 8 bits and therefore can only process 8 bits of data)! Although he is far from the end of the project, he is convinced that the RAM is the hardest part, so “now everything is going to be okay!”

“RAM was the hardest mainly because I have been trying to build the subcircuit for the RAM myself, which is not going to do it for SAP-2”,(Simon’s next ambition, also an 8-bit computer but with 64K memory, 2K PROM + 62K RAM). “This time the RAM I needed was particularly small, so I built a mini-RAM myself”.

The most difficult part, half of the mini-RAM. It doesn’t contain 16 bites, it contains 16 4-bit words or “nibbles” of memory

You can view and launch this (unfinished) project via this link: https://circuitverse.org/users/7241/projects/35775

All of Simon’s projects on his Circuitverse page: https://circuitverse.org/users/7241

Simon’s current plan is to record a series of videos based on the Digital Computer Electronics book he uses as a guide in his engineering projects.

Simon compiling a plan (in Microsoft Paint) based on the Digital Computer Electronics book contents

These are some simpler circuits from late September, simulated on Tinkercad:

Test circuit in Tinkercad on 30 September 2019
Test circuit in Tinkercad on 30 September 2019
JK Flipflop to create simple clock module in Tinkercad on 30 September 2019
Computer Science, Crafty, Electronics, Engineering, Good Reads, Milestones, Simon's sketch book

Simon trying to build a 8-bit computer in circuit simulators

As some of you may know, Simon is working on building a real-life 8-bit computer from scratch, guided by Ben Eater’s tutorials (it’s a huge project that may takes months). He has also been enchanted by the idea to build the computer in a simulator as well, researching all virtual environments possible. The best simulator Simon has tried so far has been Circuitverse.org, although he did stumble upon a stack overflow error once, approximately half-way through (maybe the memory wasn’t big enough for such an elaborate circuit, Simon said). You can view Simon’s projects on Circuitverse here: https://circuitverse.org/users/7241

Link to the project that ended up having a stack overflow: https://circuitverse.org/users/7241/projects/21712

And here is a link to Simon’s new and more successful attempt to put together a SAP-1 (simple as possible) processor (work in progress), something he has been reading about in his new favourite book, the Digital Computer Electronics eBook (third edition): https://circuitverse.org/users/7241/projects/22541

https://circuitverse.org/users/7241/projects/21712
the register
the RAM
https://circuitverse.org/users/7241/projects/22541

Simon has also tried building an 8-bit computer in Simulator.io, but it was really difficult and time consuming:

Version in simulator.io

The next hopeful candidate was the Virtual Breadboard desktop app for pc. Simon downloaded it about ten times from the Microsoft store but it somehow never arrived, most probably because our Windows version was slightly outdated but who knows.

And finally, Simon has also discovered Fritzing.org, an environment for creating your own pcbs with a real-life look. He may attempt actually making a hardcopy SAP-1 via Fritzing after he’s done with the Ben Eater project. Conclusion: sticking with Circuitverse for the time being.

Electricity, Electronics, Logic, Simon teaching

Simon has been bitten by the hardware bug again!

It’s all Ben Eater‘s fault! Simon is more of a software and pure math champion, but Ben Eater’s videos have sparked Simon’s interest in logic and electronics, anew. Back in mid July (yes, I know, I’m a little behind with the blog), while waiting for his Complete 8-bit breadboard computer kit bundle to arrive from the US, Simon was playing with virtual circuits that he built on two wonderful platforms: Circuitverse.org and Logic.ly. You can view Simon’s page on Circuitverse at https://circuitverse.org/users/7241

Simon’s favourite was building the Master-Slave JK Flip-Flop https://circuitverse.org/simulator/edit/20037

Simon gave me a whole lecture on the differences between Sequential and Combinational Logic: in the former, there’s a presence of a feedback loop (the output actually goes back to somewhere else in the circuit), and the latter has everything going in one direction (the inputs come in and the outputs go out).

It’s a little bit like the difference between a Feed Forward neural network where the output only depends on the input and a recurrent neural network where the output also depends on what the output was previously,

Simon explained.

Here’s a problem with sequential logic circuits: they go crazy like this very often (confused NOR gate). That’s why most sequential logic circuits have a clock in them. A clock acts like a delay so that it won’t go crazy.

That’s the power of sequential logic: you can have the same input but a different output. This is useful for storing data: I release the input, but the data is stored. It can only be archived in sequential logic.

The delay comes in error detection (on the rising edge of the square wave).

Master-Slave JK Flip-Flop
https://circuitverse.org/simulator/edit/20037

The following circuits are buit in Logicly https://logic.ly/demo

SR Latch in Logic.ly
D Flip-Flop
SR Flip-Flop
Master-Slave JK Flip-Flop
Simon building circuits together with his uncle whom he has met for the first time (Russian)