A couple years ago I get a white ceramic gold pinned Intel 4004 processor. I was so happy to have it and I put it in a very nice box. Later I ask myself: “Could it work”. Or a better question: “Could I bring this 4004 processor to live”.
2 Years ago a read the blog from Frank Buss and this was my start to build around and program the Intel 4004 processor. Frank Buss use a Pic-processor to clock the 4004 and also hold the ROM image with the program for the 4004 processor. I have make some project’s with the Propellerchip from Parallax and decide to use this chip as clock and also as ROM, but the ROM-image for the 4004 I store on a SD-cart. So when I want to change a program for the 4004 I need to change the file on the SD-cart. On a vero bord I build a system for the 4004. I use a couple 16-pin’s ZIF-socket for the 4001, 4002 and 4004.
There are 3 powersupply’s, the first is a 15 Volt for the MCS-4 chipset and the second is a 3.3 Volt for the Propellerchip. There are some glue-chip’s to convert the 15 Volt from the MCS-3 chipset to the 3.3 Volt of the Propellerchip. And at the left under side there is the SD-cart in it’s holder.
The Intel 4004 processor is a 4 bit processor with a 4-bit multiplexed adres bus. An 4001 ROM contain’s 256 byte memory and 4-bit’s I/O. You could connect 16 ROM’s to the system wich give’s you a 4K memory. A 4002 RAM hold’s 4 bank’s of 20 4-bit’s memory’s and 4-bit output. And there is a 4003 serial in, paralel output chip. This 4 chip’s are called together the MCS-4 chipset.
I decide to use only the originel MCS-4 chip’s added with the propellerchip with act as ROM for the 4004-program. The I/O from the 4004 to the real world I want to do with the 4001 and 4002. This bring’s me to a big problem. The normal around these time’s of the 4004 you send your papertape with the program for the ROM to Intel and the make them. Include the metal-mask setting’s for the I/O. You must to specify the pin’s for Input or Output. When I want to use a real ROM as input of my system I need a 4001 which have NOT the internal numer of zero (because the system start on ROM page-0 witch is the propellerchip) but the I/O pin’s set to Input. So I search on the internet for 4001-ROM chip’s. I buy 10 of them and first I read the internal page-number. 6 of the 10 have the number-zero so the are useless for me. The other 4001-ROM’s I tested to write to and read from the I/O and at least 1 4001-ROM have 4 Input’s.
So I have a 4004 microprocessor, a good 4001 ROM with 4 Input pin’s and a 4002 RAM with 4 Output pin’s. With this I could build a system to control a robot.