💾 Archived View for gem.librehacker.com › gemlog › tech › 20220908-0.gmi captured on 2024-08-25 at 00:52:33. Gemini links have been rewritten to link to archived content
⬅️ Previous capture (2023-01-29)
-=-=-=-=-=-=-
I found a few classic chips which I ripped out of some equipment heading for the scrap pile.
Z80, support chips, and some 4-bit CPUs
The chip at right center appears to be a Mostek Z80 8-bit CPU. The top-right chip is a DMA controller. I thought at first that the chip on the bottom right might be an early Intel CPU, but I believe it is actually a bus interface, evidently tied to the Z80.
On the left side are a few IDM2901-1JC chips. These are 4-bit, 16 Mhz CPUs. According to the data sheet, the IDM2901 is a 4-bit bipolar microprocessor, and consists of "a 16-word by 4-bit 2-port RAM, a high-speed ALU, and the required shifting, decoding, and multiplexing circuits". I'm unclear what is meant by "bipolar" since it appears to use the usual TTL voltages.
The chips can be daisy-chained for longer word lengths, so perhaps that is why I found four of them on one card. In other words, four 4-bit processors can become a 16-bit processor.
From what I understand, the IDM2901 has some A and B address pins — which allows you to control what memory you are accessing in the 16 nibbles of RAM — and four input and four output pins. There is also an extra "Q" register, which seems to be some kind of shifting buffer. Pretty much all of the above can be used as sources or destinations of the various instructions.
The CPU has an interesting 9-bit instruction set, with the first three bits for the source register(s), three bits for the ALU function, and three bits for the destination register(s). There are nine logic instructions available: AND, OR, XOR, XNOR, INVERT, PASS (included twice), ZERO (set both sources to zero), and MASK (which is (not X) and Y). There are five arithmetic instructions, which translate to ten: Basically there is addition, subtraction, increment, decrement, and PASS data, but each instruction is modified depending on the state of the Carry In pin. The current instruction is selected through nine instruction-control pins.