Heya Goldsmith (et al)!
I 've needed broadband 90 degree phases shifts on a number of occasions, and I've had a *great deal* of success with a configuration I first dicovered in the ARRL Handbook, and described in detail (in the "The Phasing Method of Image Rejection" section) of
https://michaelgellis.tripod.com/mixerscom.html.
[I've reproduced it here for convenience:]
Although it's often discussed in the context of audio-band (300 Hz - 3 kHz) phase shifting, I obtained the original paper describing its operation [Saraga, W., "The Design of Wide-Band Phase Splitting Neworks," Proc IRE, Vol 38, p 754 (1950)] and coded the equations into the following MATLAB script:
Code C - [expand] |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
| n = 6; % Number of RC stages within network
fLower = 1000000; % (Hz) - Lower network design frequency
fUpper = 10000000; % (Hz) - Upper network design frequency
R = 220; % (Ohms) - Value of resistance used throughout the network
m = 1 - (fLower/fUpper)^2;
K = ellipke(m);
for i = 1:n
[sn, cn, dn] = ellipj(((2*i - 1)*K)/(2*n), m);
RC(i) = dn/(2*pi*fLower);
end
C = RC/R;
fprintf('For a %d Hz - %d Hz %d stage RC network (R = %d), Cn is as follows:\n\n', ...
fLower, fUpper, n, R);
for i = 1:n
if (C(i) < 1e-9)
fprintf('C%d = %6.2f pF\n', i, C(i)*1e+12);
elseif (C(i) < 1e-6)
fprintf('C%d = %6.2f nF\n', i, C(i)*1e+9);
elseif (C(i) < 1e-3)
fprintf('C%d = %6.2f uF\n', i, C(i)*1e+6);
elseif (C(i) < 1)
fprintf('C%d = %6.2f mF\n', i, C(i)*1e+3);
else
fprintf('C%d is physically unrealisable!\n', i);
end
end |
As the script suggests - I've successfully built a 1 MHz - 10 MHz network using this approach! I used this as a part of an image-rejecting HF mixer design and I recall obtaining +/- 2 degree phase accuracy over the design bandwidth. This figure can apparently be improved with more stages, but I haven't personally tried this since the level of accuracy obtained was sufficient for my application.
I built a second version operating at a few 100 kHz a while later, with similar success.
So that's the LF stuff - for the microwave end of the spectrum, you cant go past a stripline "quadrature hybrid coupler" (descibed here: **broken link removed**) for simplicity and performance. I've found that EM simulation and optimisation (with ADS, CST etc) is essential for best performance, as is constructing them on a predictable substrate (e.g. Rogers instead of FR-4). I've made 2.4 GHz devices with 1 GHz bandwidths this way with little difficulty, and even had modest success with nothing more than a teflon-substrate PCB blank and a scalpel, cutting around the outline of a printed template!
Good luck