Quantcast
Channel: stardot.org.uk
Viewing all articles
Browse latest Browse all 2528

Econet in all its guises • Re: Econet Clock / Termination

$
0
0
I note that you are using two switch circuits (3 & 4) to isolate the clock termination. I assume we could move both legs onto one switch, and free up the other switch?
Yes, I just used two because there were two available and it made it a tiny bit more symmetric; one would almost certainly come out the same.
If so, I was then thinking we could use that spare switch to isolate a 5v supply to the data termination circuit instead of powering it from GPIO; thus allowing us to power the data termination from 5v, but still avoid burning power statically. Would that work, or have I misunderstood what you mean by burning power? What would the impact be on the sizing of the resistors and cap?
That's certainly a possibility. But I lean towards using 3V3 rather than 5V, especially if using a Pico (still power the analogue switch from 5V/Vbus obviously). The 3V3 is better regulated, and if it's a Pico then it's a switching converter so that voltage drop is efficient (vs drawing the same current from 5V). Using the extra switch still gives the possibility of drawing more current than the existing setup while sticking with 3V3.

The two diodes are again partly because they come two in a package; the more important one is the one across the capacitor (which ensures that the capacitor can't get more than about 0.2V in the wrong direction), while the 'spare' one just ensures that if the Econet wires have got to some crazy voltage it doesn't feed through and blow up the Pico GPIO.

We're aiming as usual for about 0.45V in the idle condition, which the existing resistor values achieve with about 1.5mA. The capacitor gives a zero AC impedance. For the idle condition, any current would do, and the resistors can be scaled accordingly.

The challenge with this circuit is dealing with packets containing long strings of the same bit value, particularly zeros. Ideally, the capacitor would be infinitely large and not affected by the current flowing when the line is actively driven by stations, just maintaining the bias voltage. But if we can't manage infinitely large (a 1Kbyte packet full of zeros is maybe 40ms and it's driven through 100R, so we're talking at least 1000uF to be 'nearly infinite'), then there's the problem that the capacitor can get charged in the zero direction and biases the line in the wrong direction immediately after the packet, causing the line to appear busy. So the capacitor needs to be small enough that it re-charges to the bias voltage within a bit time or so after the worst case reverse charge (limited by the diode to 0.2V), but in all other respects wants to be as big as possible.

Hence you could scale the existing resistor values in the same proportions as now, and that would let you increase the capacitor value (actually, the capacitor value is a bit on the low side already). If you were prepared to burn 15mA, then scaling all the resistors by 10 (100R/33R/100R) almost gets to the point where the diode isn't needed and the capacitor could be say 10nF. Or maybe 150R/47R/150R for 9mA and 10nF again. Or whatever you like - as I say, the current values do in fact work OK.

You could scrap all of this and just put the analogue switch feeding a resistor-only terminator like you've put on your recent interfaces - that's good as a terminator, but I don't really like putting the analogue switch direct on the Econet wires from a robustness point of view. Those 47R series resistors help with ESD or other rogue voltages.

Whichever way you do it (including the original Acorn and then the SJ terminators), there's a bit of compromise involved. That's why I gave up on this circuit and designed something different, though this one is good enough.

Statistics: Posted by arg — Sat Jun 15, 2024 8:15 pm



Viewing all articles
Browse latest Browse all 2528

Trending Articles