Release notes V6Z80P plus v1.1
Note 1.
The latest version of the PCB (V6Z80P+ v1.1) should allow better"ZX Spectrum emulation" as it has the ability to switch the CPU's clock
source. It'll take input from the standard 16MHz oscillator or an
output from the FPGA (there's a physical switch on board).
The 16MHz oscillator will always be soldered on as
per V6Z80P/OSCA standard and the alternative oscillator(s) can be
installed as an option. There's a pin header (and a footprint for an
SMT oscillator) for one of the alternative clocks, the other is based
on a 74HC04/crystal arrangement which is cheaper and more flexible
than oscillator units: Spectrum-relevant 14MHz oscillators could not
be sourced, though 14MHz* crystals are available.
The pysical switch ensures the board is 100% V6Z80P compatible. Without it,
and instead routing the standard 16MHz clock via the FPGA may have created
timing problems in OSCA (something that would need a new config file to correct).
(* Naturally, 14MHz divides down nicely to 3.5MHz, the standard Spectrum
48K speed.)
Note 2.
All 3 possible oscillator inputs go direct to the FPGA and arenot switched (the FPGA can use whichever clock signal is relevant
to the config). Only the input to the CPU is switched.
Some detail: The Z80's clock pin is driven by the output of a 74HCT08
AND gate - this originally served to just increase the 3.3V logic levels
to CMOS level as required by the Z80. But now one input of the AND gate is
connected to an FPGA pin (which can be a passed-through clock output, or
pulled high by the FPGA = not used, or pulled low = clock disabled) and
the other AND input other goes to a SPDT switch. This switch selects between
a line from the 16MHz clock or a 3.3v logic high.