Electronic Projects


Home Progetti About me

Custom Ram and Rom

As an Electronic and Electrotechnic Technician, i've always been mesmerized by the looks and complexity of integrated circuits.
In College, i was taught that a computer is always composed of the 3 fundamental components:
-The CPU: The Central Processing Unit, the calculating part of the machine's brains.
-The RAM: The Random Access Memory, the storing part of the latter.
-The ROM: The Read Only Memory, the final component of the pc's brain, the psychological Id, if you will.


These descriptions, however, did not satisfy what i wanted to know:
-How does the CPU know what to do? Like yes it is Engineered to do what it is made to. But for example (personal example too), how can the same cpu work for 2 Different Operating systems like Linux and Windows? Why, for example, is the ARM chipset arranged in a different way, such to change every ISO you have to install onto it?
-Why is the ram Random? How can it be truely random, if the computer is programmed to be perfectly precise? Wouldn't it cause errors, if it were to be truely random? How does it store and delete stuff so quickly?
-How is the rom flashed? How is it supposed to dispense the informations the system needs to know, never failing at its job? (unlike ram and disks getting bad sectors over time)

Those are the questions that have for a long time remained unanswered in my mind. The solutions to those answers were either to take a Electronic Engineering degree, or to manually study it myself from the ground up.
I decided (for my own sanity and spare time i have) to set out and learn it myself, to learn how to recreate a very basic component from just logic gates. Luckily for me, the tools and documentation nowadays to do what i want are not only easly accessible, but free too!

My dear friend RAD750 recomended me some very good websites to get ICs for an extravagantly cheap price, and i found a program called "INSERISCI IL NOME DEL PROGRAMMA" That has a neatly intuitive UI; kinda looks like AutoCAD, but for electronics!à

My first project is to create a simple 8 or preferably 16 bit RAM using basic logic gates and ICs. This project will be separated in 4 parts, that are:
1. Planning out in "EasyEDA" the circuit, neatly compact yet still functional. This will take the longest, as i'll have to plan it out immaculately;
2. Ordering the PCB and buy its components. This will probably take 2 weeks tops for everythng to arrive.
3. Assembling or asking the PCB company to assemble my components. As i have never soldered things so little, i'm hoping someone else can take this job.
4. Finishing up and uploading the source "code". I'll upload some pics and perhaps a video of the circuit working, together with a Github repo or website page with all the things you'll need to know to replicate all of this(for free!)

This is the main idea, i'll update this page from time to time here at the bottom in case of substantial updates. See you all when i'll see you!