Reply 20 of 22, by Deunan
kagura1050 wrote on 2025-10-15, 05:59:I'm planning to use the ICS501 to generate the 21.477272MHz signal (I'm not planning on using the 74HCU04/4069UBE anymore because I want a stable square wave).
You won't get a square wave at this frequency unless you route the clock trace properly, make it thick and avoid any capacitive coupling to power planes.
In general your original oscillator circuit is a bit odd. Why use all these extra gates in series? It only adds thermal noise and more points of failure. One gate for the crystal and another for amplification and separation is enough. Tie the rest to GND/VCC if not used. This is not recommended as such but with gates on the same chip, and CMOS tech, you could put 2 or 3 in parallel. The phase noise on slopes is not going to be anything significant and you'll get more drive out of it for better square shape.
Truth be told sine wave should be good enough if it has clean slopes and good amplitude. But HC (and anything 4000 series) usually doesn't have the drive to output square, or anything close to it, at this frequency. AC series might but that will also add noise with over/undershoots if the signal routing is not good enough. Or might require resistive termination at the end.
kagura1050 wrote on 2025-10-15, 05:59:1. Divide the ISA bus's 14.318MHz signal by 2 with the HCT74 and multiply it by 3 with the ICS501, or vice versa (is the motherboard's ISA frequency reliable?)
Mobo frequency is usually only "good enough" for CGA divisors and analog TV output. If you plan on having it multiplied via PLL you might get a lot of noise, drift, and pick up other random frequencies from the PC itself.
And then there are weird mobos (and SBCs for example) that might not have this clock, or not in spec. If you want stable frequency you need your own source. Maybe even, like some VGAs do, use a separate power path for it - that is, 12V input with local 5V regulator for the oscillator circuit. But that requires careful consideration of what is going to happen if one of the voltages suddenly goes missing. You don't want chips getting stressed or fried because some lousy PC PSU has poor power-on/off voltage sequencing for example.
And another question I have for the original oscillator circuit you've made: Did you check the datasheet for the crystal you are using, for correct configuration (parallel/serial) and capacitance? This circuit usually starts with 1M resistor at this frequency (though it might be a bit off due to wrong config) but the 22pF capacitors - that's just a middle point and won't always work. Some crystals will require more (33pF for example) and some way less (down to 10pF). Again too thin traces and of different length might upset that as well. Also the correct value depends on the circuit configuration - parallel/serial.
If you don't have a datasheet then just play with the capacitor values a bit, and/or reconsider your routing in that area. Preferably also verify you get correct output frequency because difference between parallel/serial is not big, usually within a few kHz (before multiplication step), but that might be enough to upset some hardware or software. Certainly way above the usual 30 or 50ppm crystal specs. There's plenty of bugs and quirks old consoles had with regard to timing.