Search This Blog

Saturday, March 19, 2016

Guide to logic & Logic families by Texas Instruments!

While googling around to learn more about logic families and mixing different IC technologies, I came across this helpful pdf made by Texas Instruments. 

Here are some screenshots from the document to give you a glimpse on its content.


Here is a link to another tutorial on logic families and their advantages/disadvantages, application notes and important information on mixing different technologies.

Monday, March 14, 2016

Homebrew 4 bit CPU - Part2 (Registers, scratch-pad RAM and Breadboard maze)

Here is a quick update on my homebrew 4 bit CPU. 
After few hours with the jumper wires and breadboard I managed to create a nasty looking maze of connections, starting with the accumulator: I used a 74HCT173 D register and connected it so that it feeds the 4 bit output of the ALU (F0...F3) back to it's A input (A0..A3) .

The ALU is able to run arithmetic and logical operations on 2 operands A and B. The value of the A operand is provided by the accumulator which also stores the result of the operation. (control signal /LOADA )
Another 74HCT173 serves as the flags register, and it stores the carry output (Cn+4) bit and the Not Zero bit. The carry out bit is used for relative magnitude comparison and the Not Zero bit is the output of 3 OR gates (74LS32) and indicates if at least one line of the ALU 4 bit datapath is at High state. (control signal /LOADFLAGS)
One more 74HCT173 serves as an output register and stores the value on the Data Bus (control signal /LOADOUT) to deliver it later to the 7 segment Driver (74LS47)
Then there is the dual Bus Driver 74HCT244, which puts the ALU result on the Data Bus (orange wires in photo) when needed (/OEALU and /OEOPRAND control signals at pins 1 & 19, see nippler schematic)

Finally I got the 64 bit (4 x16)  RAM (SN7489) connected to the data bus, well the nippler uses a different 4 bit RAM, much larger and with a 12 bit Address Bus (A0..A11)
I still dont have the right PROM and EEPROMs for Program and Microcode so i was thinking maybe i could emblement both using a microcontroller and some i2c port expansion chip!?

Thursday, March 3, 2016

Homebrew 4 bit CPU - Part1 (ALU)

Inspired by the Nippler 4 bit cpu I decided to build my own based on the Nippler architicture (Harvard Architicture). However Im faced with a chalange of implementing the Nippler design using only component I have in my inventory. I honestly don't know what does this mean :-)
probably it's going to be a difficult task using different Flip Flops, EEPROM and SRAM .. who knows..
My goal is to learn with you as much as possible about CPUs and CPU design.

Now let's begin with the ALU ... a 4 bit Arithmetic Logic Unit, namely the 74LS181

In my first set up I only play around with the ALU using 2 dip switches (Red) for the operands (A and B) and another dip switch (blue) for selecting the ALU operation.

The schematic for the 7 segment display driven by sn7447N in my setup: