Modulo 6

A project log for Grant Searle's Z80 CP/M Design

I thought I would put this CP/M 2.2 Z80 project together. See what I can learn.

agp.cooperagp.cooper 03/23/2021 at 00:290 Comments

Reducing the Serial Baud Rate

The 115200 baud for the 7.3728MHz version of the machine is just too fast.

The serial clocks can be reduced by a factor of six for a 19200 baud serial rate.

Here is a schematic for a modulo 6 design that I have added to the design using 74HC74 D-Latches:

Here is an updated schematic:

Flash Drive Support

The next thing I want to do is add Flash Drive support for the W29C020 (256k x 8bit).

Updated the PCB for 19200 Baud Serial with a 7.3728 MHz Clock

Updated the Schematic and the PCB. It is sort of worth while building this version.

Adding the Flash Drive requires a bit of coding.

Updated PCB has Arrived

The update PCB has arrived:

Unfortunately there were two problems:

  1. The main clock is running but is pulled down(?)after the buffer.
  2. The reset circuit is dulled down.

Pulled the Z80 CPU, no change.

Pulled the Z80 SIO/2 and now the main clock and reset works.

Checking the modulo 6 circuit and it is locked up?

Check the Z80 CPU in the original board and it works.

The Z80 SIO/2 is dead. The fact that it pulled down the clock and the reset lines suggest it may be a fake chip.

Checking the modulo circuit it did work once. I think the reset rise time is too slow for the relatively fast clock. Very small differences between the two chips results in the different reset times thus locking up the circuit. I will need to redesign the reset circuit.

Minor Success

A minor success. I removed the de-bounce capacitors from the board and the modulo 6 clock divider now works. I can configure a divide by six without the reset signal by using the spare NAND gate but better to have a proper reset signals.

However the serial is still dead. The SIO/2 works with the original board if I swap it out so I must have a miss understood something about dividing down the serial clocks or there is a wiring error. I just can't find the problem.

Swapped the ROMs between boards and they are okay.

I was a bit rough re-soldering the connection pins for the USB-Serial board, may be I broke a track? No.

Okay, must be a schematic/wiring error. Yes, found it, the RAM CE is inverted.