Designing an 8-bit supercomputer

silverwarriorin

Silverwarriorin

Posted on May 13, 2022

Designing an 8-bit supercomputer

In this short series I will be designing one of the first Z80 based supercomputers, in order to accomplish this we need to make useful modules for the multiple Z80 processors to use, this will include external APUs that can handle the large floating point numbers that the machine will be able to compute.

Z80 Compute Modules

In order for this machine to have any usable modules first we need to build some Z80 processor cards, this can easily be accomplished with a few small boards.

The Z80

The Z80 is an 8-bit processor with 16 bits of address space, there are a multitude of control and status lines as well that need to be controlled in order for the processor to run properly, first of which are the power (+5V) and ground (GND) connections, which supply power to the Z80, the +5V line should also have a decoupling capacitor to ground with a 100nF value.

Z80 with the power connected

Next are the control signals, ordinarily you would tie the majority of these to ground with a resistor, however in this case they will be needed later down the design process in order to control and monitor certain aspects of the running system, as such we will tie them to ground with an external input for control using a D Type latch.

Z80 with IO sorted

There is a lot going on here, but basically I am attaching these pins to a latch so external circuitry can control them.

The final pieces of the puzzle for now are the data lines and address lines as well as a few other outputs and inputs, these will be used in tandem with the BUSREQ control line in order for the processors to access the memory and peripherals.

All hooked up

With this being the final schematic.

Routing the traces

Routing PCB traces is a massive pain, so I am going to use an autorouter to do the job for me, more specifically a tool called FreeRouting

GitHub logo freerouting / freerouting

Advanced PCB auto-router

Freerouting

Freerouting

Freerouting is an advanced autorouter for all PCB programs that support the standard Specctra or Electra DSN interface.

Release version License

πŸ‘‰ This project needs JAVA and UI/UX volunteers! Contact @andrasfuchs for details! πŸ‘ˆ

Installers for Windows and Linux can be downloaded here.

Introduction

This software can be used together with all host PCB design software systems containing a standard Specctra or Electra DSN interface. It imports .DSN files generated by the Specctra interface of the host system and exports .SES Specctra session files.

Altough the software can be used for manual routing in 90 degree, 45 degree and free angle modes, it's main focus is on autorouting.

Getting started

  1. After launching freerouting, a window appears promting you to select your exported .DSN design file image

  2. After opening a design you can start the autorouter with the button in the toolbar on top of the board window image

  3. While autorouter is running you can…

Prior to routing:
Prior to routing

After reorganizing:
Image description

After routing:
Image description

3D Render:
Image description

Next Up: Memory Modules

πŸ’– πŸ’ͺ πŸ™… 🚩
silverwarriorin
Silverwarriorin

Posted on May 13, 2022

Join Our Newsletter. No Spam, Only the good stuff.

Sign up to receive the latest update from our blog.

Related