/Develop/Hardware/Hi-Z 16:16 CPU/

k1.spdns.de / Develop / Hardware / Hi-Z 16:16 CPU /

The Hi-Z 16/16 CPU

clock.png

This project was started on 1. Jan. 2019.

Last updated: 2019-01-01
Questions & comments to Kio

After building a 16 bit CPU and computer from standard ICs, i wanted to start the new year with a new project. From all the smaller and simpler projects i chose the largest, most expensive and most useless one: build a CPU from transistors, diodes and resistors only.

This CPU borrows some ideas from my first K1 16/16 CPU: same width for data and addresses, microcode opcodes, no flag registers but two code planes for conditional execution.

For simplicity data and address width are the same. This allows reading addresses in a single cycle. A 8/8 bit version may be enough to run simple programs, but to be actually usable 16/16 bits are needed. Also, the opcodes are 16 bit wide, though if they are stored in a separate program rom then opcodes may be 16 bit wide while the rest of the computer uses 8 bits only.

The opcodes are very simple and more like microcodes. The program rom is organized in 2 planes. In every microcode instruction a flag is selected. This flag is tested at the end of the instruction and determines the code plane for the next instruction read.

The CPU uses Hi-Z logic: The binary values 0 and 1 are not represented with 0V and 5V but with 0V and high impedance (Hi-Z).

Size estimation:

A typical gate will probably consist of 1 transistor, 1 resistor and 3 diodes. This sums up to 1.25 x 1.25 cm per gate. So slightly over 80 gates gates fit on an Euro board of 16 x 10 cm. If required up to 100 gates might be be squeezed on a board. A bit blade currently consists of 74 gates, so a bit blade will fit on a single Euro board. Additionally i estimate 4 boards for the control unit.

Cost estimation:

If a typical gate consist of 1 transistor, 1 resistor and 3 diodes, then this sums up to 15¢ per gate.
20 boards with approx. 80 gates sum up to 1600 gates. So this is 240€ for the components. The costs of the PCBs will add on top of that, but i don't know whether i will order domestic or abroad. In any case the bit slices are a great cost saver because they are all the same and copies are much cheaper than single boards.

Summary

• Built from approx. 1600 transistors, 1600 resistors and 5000 diodes.
• Built on 20 "Euro" PCBs and 1 backplane
• Manual circuit design and routing of the PCBs (with KiCAD)
  Professionally made double-layer printed circuit boards
 
• von Neumann architecture: Program and data are stored in the same memory (not part of the CPU)
• Bit slice architecture: common control unit + identical boards for all data bits
16 bit data (planned)
16 bit address (planned)
16 bit microcode opcodes
 
Hi-Z logic
• No flag register. (but flags)
• Program memory is organized in 2 planes for conditional execution.
• 6 universal registers (incl. PC)
• All 16 boolean functions with 0, 1 and 2 inputs.
• Adder with fast 'life line carry'. (probably re-invented)
 
• All opcodes are executed in 2 clock cycles.
• Hopefully up to 500.000 instructions per second.

Project Blog

Name Letzte Änderung Länge 
Blog/ 2019-08-20 05:21 18 
Boards/ 2019-08-20 05:21
CPU Logic Diagram/ 2021-05-16 11:15 30 
Measurements/ 2020-08-27 14:08 13 
pSpice Models/ 2019-08-20 05:21
VHDL-sim/ 2019-12-16 20:16 12 
Control Unit.txt 2019-01-01 19:13 1902 
KiCAD Arbeitsablauf.png
size: 699 × 990
2018-12-26 13:00 214158 
Microcode Instructionset Breakup.txt 2019-01-01 19:13 8038 
Unbenannt 1.odg 2018-12-30 14:15 13869 

powered by vipsi - your friendly VIP Script Interpreter

Valid HTML Valid CSS