IQ modulator and quadrature coupler sign issues.

Introduction

IQ modulators and quadrature couplers are often used together to perform a frequency translation while rejecting the unwanted sideband. However, the documentation often does not clarify whether the quadrature signal has a +90° or -90° phase shift, and whether the IQ modulator expects a quadrature input with a +90° or -90° phase shift.

The purpose of this page is to clarify this sign issue.

Upconverter side

Here, we assume an upconverter is used. The principle of an IQ upconverter is to perform a complex frequency translation as follows:

"RF" = Re[(I + j \cdot Q) \cdot e^(j \cdot \omega_("rf") \cdot t)]

In the case of a complex cosine signal in baseband with frequency &&\omega_b&&:

I + j \cdot Q = e^(j \cdot \omega_b \cdot t) = cos(\omega_b \cdot t) + j \cdot sin(\omega_b \cdot t)

By application of the trigonometric identity &&sin(x) = cos(x - pi / 2)&&:

I + j \cdot Q = cos(\omega_b \cdot t) + j \cdot cos(\omega_b \cdot t - \pi / 2)

This clearly shows that the Q input has a phase lag compared to the I input, which is a -90° phase.

Coupler side case 1: coupled line coupler

Let’s assume that the coupled line coupler QCH-451+ from Mini-Circuits is used. The datasheet indicates which port is the quadrature output but not whether its phase is +90° or -90°.

Using ChatGPT and Plotly, the following plots were easily generated:

It’s clear from the plots than the quadrature output has a +90° phase (lead) compared to the in-phase output.

Besides clarifying the +/-90° sign issue, it is useful to check to what physical element correspond each port number. The hypothesis is that this coupler is made with an equivalent to coupled lines performed using an LC network, as pure coupled lines are obviously too long to fit in the component.

Analysis of the transmission curves enables to deduce the connexions:

  • At low frequencies, total transmission from port 1 to port 3 and no transmission to the other ports. Thus both ports are connected to the same first transmission line and ports 2 and 3 are connected to the second line.

  • Port 4 is not connected at low frequencies but is coupled in the band. So port 4 is the coupled port of the other line.

  • Port 2 is not connecter at low frequencies and remains approximately isolated in the band. So port 2 is the coupled output of the second line.

This leads to the following schematic, compared to the datasheet information:

The symmetry of the schematic is coherent with the symmetry of the table given in the Mini-Circuits datasheet:

The +90 phase shift stays even at low frequencies. This is coherent with the similar behaviour of an high-pass CR network, which is part of the equivalent schematic at low frequencies.

Coupler side case 2: branch-line coupler

In this part, the ports are numbered like in Microwaves101 (https://www.microwaves101.com/encyclopedias/branchline-couplers), from which this schematic is taken:

This part was performed in two steps. First, using scikit-rf with a some help of ChatGPT, a Python script was created to produce preliminary plots and an s4p file. The second step was to reuse the plotting code from the previous section, with some help from ChatGPT to refactor the duplicate parts, to make the following plots:

Contrary to coupled lines, which have a very broadband quadrature effect, the branch-line coupler has a narrowband quadrature effect. This is still useful for narrowband applications.

It’s clear from the plots than the coupled output has a -90° phase (lag) compared to the direct output.

Conclusion

Quadrature couplers are important for making image reject mixers, but the actual phase sign is sometimes not clearly stated. According to the theory, IQ mixers needs a -90° phase (lag) for the Q input. For coupled lines couplers, the coupled output has a +90° (lead) phase compared to the uncoupled output. Conversely, for branchline couplers, the coupled output has a -90° (lag) phase compared to the uncoupled output. These points must be considered when selecting the wanted mixer side.

MLCC voltage dependence.

This content was originally published on Microwaves 101 (https://www.microwaves101.com/encyclopedias/capacitor-voltage-effects). Many thanks to Steve for improvements on the original version. Have a look on his website for more interesting content.

This page was suggested by Hadrien, who has had recent experience in MLC capacitor variations with voltage. Did you know your capacitor nominal value can drop 80% when you apply a DC voltage to it? Worse, there does not seem to be any standards for voltage variations like there are for temperature variations.

This page is primarily discussing MLCCs, or multi-layer cerami capacitors, in Class 2. Class 2 uses exotic dielectrics such as barium titanate (BaTiO) with some other strange additives in order to get high dielectric constant in the thousande (to increase capaitance density). Barium titanate is a ferro-electric material, which is the source of voltage/capacitance misery.

From here down, thanks to Hadrien!

Case study

Since this page was originally written for Microwaves101, the case study to illustrate this problem was taken from it. Suppose we want to redesign the good old breadboard RF pulsed (https://www.microwaves101.com/encyclopedias/breadboard-rf-modulator) source from 2006 with more recent components (first version of this page written in 2019). Start by the capacitors. Capacitors values which were at this time most often made with electrolytic capacitors are nowadays more often made with MLCC (multiple layers caramic) capacitors.

To replace the 4.7 µF capacitor, a simple search gives this component:

https://fr.rs-online.com/web/p/condensateurs-ceramique-multicouche/8467296/ (4.7 µF)

Seems rather nice, and smaller than the original. Wrong! Let’s check the detailed characteristics:

https://psearch.en.murata.com/capacitor/product/GRM188R61A475KE15%23.html

Not good! If we need the 4.7 µF capacitance value, we’ll be soon in trouble.

Let’s search a bigger capacitor. We search the biggest value among MLCC capacitors having 10 V rating. https://fr.rs-online.com/web/c/passifs/condensateurs/condensateurs-ceramique-multicouche/?applied-dimensions=4294244793,4291386526&pn=1 We find some nice models:

Let’s plot together their bias characteristics1,2,3,4,5,6:

The values of the capacitors at 5 V range from 28.7 to 45.9 µF. Still low for 100 µF capacitors but all would be more than sufficient to replace the 4.7 µF capacitor of the original design.

Personnally, to keep some safety margin from the maximum voltage, I don’t like using a capacitor at a voltage where its capacitance drops more than 50 % of its nominal value. So, if I had to redesign this board, I would continue searching capacitors, even when the Murata and Kemet capacitors are close matches.

Conclusion of case study

As a conclusion, the “100 µF” capacitors of our study, when a DC voltage is applied to them, have an actual capacitance value much lower than their nominal value. This capacitance value would be still sufficient for our application because we oversized the capacitor. However, to keep a sufficient margin from voltage breakdown, I find careful to not use a capacitor at a voltage where its capacitance drop is more than 50 %. In designs where the capacitors are undersized, the capacitance drop effect on applied voltage can be a bad surprise and lead to severe troubles. Such problems are pretty hard to debug if not aware because the cap meters instruments most often measure at 0 V.

An other interesting point is what happens when we combine both biasing and temperature effects. Let’s see an other curve provided by TDK:

The temperature dependence is better when biased. This leads to the conclusion that temperature coefficient is most often less troublesome than voltage coefficient for MLCC capacitors.

Calculation of characteristic impedance from S parameters.

Introduction

Suppose one wants to measure or simulate the characteristic impedance of something similar to a transmission line. This can be for example a 75 Ω coax cable or a via structure on HFSS. The characteristic impedance can be calculated form its measured or simulated S parameters references to 50 Ω.

Suppose also that the structure is “symmetric enough” to have the same characteristic impedance on each side (see https://en.wikipedia.org/wiki/Image_impedance)…

According to https://en.wikipedia.org/wiki/Image_impedance, and assuming the symmetry hypothesis which allows to simply discard the second result, the characteristic impedance can be calculated as:

Z_0 = sqrt((A B)/(C D))

The ABCD parameters can be obtained from S parameters with https://www.microwaves101.com/encyclopedias/network-parameters:

{: ( A = ((1 + S_(11))(1 - S_(22)) + S_(12)S_(21))/(2S_(21)) , B = 50 Omega ((1 + S_(11))(1 + S_(22)) - S_(12)S_(21))/(2S_(21)) ), ( C = 1/(50 Omega) ((1 - S_(11))(1 - S_(22)) - S_(12)S_(21))/(2S_(21)) , D = ((1 - S_(11))(1 + S_(22)) + S_(12)S_(21))/(2S_(21)) ) :}

Calculation is made as follows:

Z_0 = 50 Omega sqrt( ( ((1 + S_(11))(1 - S_(22)) + S_(12)S_(21)) ((1 + S_(11))(1 + S_(22)) - S_(12)S_(21)) ) / ( ((1 - S_(11))(1 - S_(22)) - S_(12)S_(21)) ((1 - S_(11))(1 + S_(22)) + S_(12)S_(21)) )

These formulas can be conveniently entered into an Excel spreadsheet.

Transfer S parameters can also be used for this calculation. However, this method is NOT recommended because the calculations are cumbersome.

Expressing the characteristic impedance as a reflection coefficient from 50 Ω, and recalling that by definition its invariant through the system, the following can be written:

[[b_1],[a_1]] = [[T_11,T_12],[T_21,T_12]] \ [[a_2],[b_2]] Gamma = b_1 / a_1 = (T_11 Gamma b_2 + T_12 b_2)/(T_21 Gamma b_2 + T_12 b_2) = (T_11 Gamma + T_12)/(T_21 Gamma + T_12)

Rearranging:

Gamma (T_21 Gamma + T_12) = (T_11 Gamma + T_12) T_21 Gamma^2 + (T_12 - T_11) Gamma - T_12 = 0

Solving by the usual methods:

Delta = (T_(12)-T_(11))^2+4*T_(21)*T_(12) Gamma = (T_(11) - T_(12) +- sqrt((T_(12)-T_(11))^2+4*T_(21)*T_(12)))/(2*T_(21))

So, the procedure, can be outlined as follows:

  1. Convert S parameters to T parameters using the previous formulas or scikit-rf (https://scikit-rf.readthedocs.io/en/latest/api/generated/skrf.network.s2t.html)

  2. Calculate the Gamma of the characteristic impedance references to 5 Ω.

  3. From the Gamma, calculate the characteristic impedance.

Export QGIS maps and terrain height data to Forsk Atoll.

Forsk Atoll antenna planning software is not so hard to use when a suitable map and terrain height data is available for import into Atoll. However such ready to use data is rather hard to find and finding such data is the top question asked in the comments of most Atoll tutorials.

Here is a tutorial to make a pretty convenient map with QGIS, usefull for all needs besides just Atoll, and to export relevant data towards Atoll.

QGIS

Installation

Install QGIS uing the OSGeo4W bundle. Ensure the following is checked for install:

  • QGIS
  • matplotlib
  • numpy

If you see the following or similar error message, check the installed packages in OSGeo4W.

Map and height map preparation

The steps of this part are long, but thanksfully must be done only once and can be reused for several projects. A starting file is given here: QGIS-base.qgz. When using this file, skip straight until Bookmark needed area.

Coordinate reference system

Project -> New (Ctrl + N)

Project -> Properties

Select the WGS 84 / UTM zone corresponding to the area of the study. For France, its UTM 31N (EPSG 32631). Antenna coverage studies are usually on a scale sufficiently small to make UTM practical, and the distances coordinates makes life much easier when estimating distances, for instance for antenna simulation radius settings.

OpenStreetMaps and transparency

By default, the OpenStreetMaps vector layers are opaque. Configuration is needed in order to make it transparent to overlay it on satellite imagery.

Short way

Import this layer file with all the settings: openstreetmap-vector-overlay.qlr and skip next section.

Long way

In case for whatever reason you want to do the previous step manually, here are the instructions. In most case, you ought better import the settings as shown in previous section.

Add OSM map using Vector Tiles -> OpenStreetMap vector:

Using QuickMapServices plugin, add satellite picture using QuickMap Services -> ESRI -> ESRI Satellite. The satellite view is not immediately visible because the layer is added behind the previouly added one:

Go to OpenStreetMaps vector properties and :

Uncheck background:

Uncheck fills:

Uncheck patterns:

Uncheck landcovers with exception of outlines:

Uncheck water areas with exception of outlines:

Uncheck transportation areas:

Uncheck oceans:

Uncheck leaf types:

Uncheck waterways :

Recheck all outlines in case some outline were accidentally unchecked in previous steps:

Contour maps

Using the browser pane on left, add Maptiler Topo.

From Maptiler topo, keep only Contours, and place it between satellite layer and overlayed map.

Check again in project properties that project coordinate reference system is the wanted one.

Bookmark needed area

View the extent of the area you need, next go View -> New Spatial Bookmark… (Ctrl B):

Height map preparation

Double-click on bookmark to be sure the display canvas matches it. Download height maps using the SRTM downloader icon:

Click set canvas extent, and put « ./ » in output path:

Usually, STRM downloader downloads only a single SRTM maps since their map cutting is quite big:

Here, KeePass and Ctrl+Alt+A can be quite useful.

After the layer being downloaded, you should see it. Reorder the layers to check it matches other layers:

Next, uncheck the height layer but keep it:

Map and height map export

Map export

Go to Project -> Export -> Export Map to Image:

Select first the suitable scale and resolution (good values are 1:40000, 300 dpi) and next select your bookmark:

Save as JPG format, convenient because satellite images hard to compress in PNG.

Height map export

Settings :

  • Select « Raw Data ».
  • Select « Erdas Imagine Images(.img).
  • Select CRS WRS 84 / UTM correct zone.
  • Extent : select bookmarks.
  • Resolution : round the best (lowest) value and use it for both horizontal and vertical because Atoll can’t handle different resolution on the axes.

Atoll

Coordinate reference system

In your project, go do Document -> Properties…:

Next, select WGS 84 / UTM correct zone for projection and display:

Map import

In Geo tab, create an Offline Maps folder for the created map:

Import the map into Offline Maps:

Height map import

Next, import the height file:

Note both maps covers the same area of the QGIS bookmark. Once the correctness of the height map import is checked, this layer can be hidden, still it will be correctly taken into accout for calculations.

Atoll example

With map and height data generated by the previously described methods, the following quick draft of DVB-T digital television coverage simulation was performed on an area where reception is difficult. Transmitters positions come from ANFR Cartoradio1 and powers come from a forum 2,3. Of course, this quick draft must be refined, particularly concerning the radiation diagrams of some antennas. Nevertheless, the reception hole in the Ennuyé valley around Bésignan can be seen immediately due to the blocade of the Ventoux transmitter by the south mountain. The others transmitters are not significant on a wide scale because their are low power district transmitters.

Excel stuff.

This blog pages is a summary of some useful Excel spreadsheets I made: