Main Content

Superheterodyne Receiver Using RF Budget Analyzer App

This example shows how to build a superheterodyne receiver and analyze the receiver's RF budget for gain, noise figure, and IP3 using the RF Budget Analyzer app. The receiver is a part of a transmitter-receiver system described in the IEEE conference papers, [1] and [2].

Introduction

RF system designers begin the design process with a budget specification for how much gain, noise figure (NF), and nonlinearity (IP3) the entire system must satisfy. To assure the feasibility of an architecture modeled as a simple cascade of RF elements, designers calculate both the per-stage and cascade values of gain, noise figure and IP3 (third-intercept point).

Using the RF Budget Analyzer app, you can:

  • Build a cascade of RF elements.

  • Calculate the per-stage and cascade output power, gain, noise figure, SNR, and IP3 of the system.

  • Export the per-stage and cascade values to the MATLAB™ workspace.

  • Export the system design to RF Blockset for simulation.

  • Export the system design to RF Blockset measurement testbench as a DUT (device under test) subsystem and verify the results obtained using the App.

System Architecture

The receiver system architecture designed using the app is:

The receiver bandwidth is between 5.825 GHz and 5.845 GHz.

Build Superheterodyne Receiver

You can build all the components of the superheterodyne receiver using MATLAB command line and view the analysis using the RF Budget Analyzer app.

The first components in the superheterodyne receiver system architecture are theantennaandTR switch. We replace the antenna block with the effective power reaching the switch.

1. The system uses the TR switch to switch between the transmitter and the receiver. The switch adds a loss of 1.3 dB to the system. Create aTRSwitch的增益为-1.3 dB, OIP3 37 dBm. To match the RF budget results from reference [1], the noise figure is assumed to be 2.3 dB.

elements(1) = rfelement('Name','TRSwitch','Gain',-1.3,'NF',2.3,'OIP3',37);

2. To model the RF bandpass filter userffilter设计滤波器。From the exampleDesign IF Butterworth Bandpass Filter, load impedance of the filter is found to be 132.986 Ohms. But for budget calculation, each stage is terminated by 50 Ohms internally. Therefore, to achieve an insertion loss of 1 dB, the input impedance, Zin of the next element, i.e., amplifier, is set to 132.896 Ohms.

Fcenter = 5.8e9; Bwpass = 20e6; Z = 132.986; elements(2) = rffilter('ResponseType','Bandpass',...'FilterType','Butterworth','FilterOrder',6,...'PassbandAttenuation',10*log10(2),...'Implementation','Transfer function',...'PassbandFrequency',[Fcenter-Bwpass/2 Fcenter+Bwpass/2],'Zout',50,...'Name','RF_Filter');

The S-parameters for this filter are not ideal and automatically inserts a loss of approximately -1dB into the system.

3. Use theamplifierobject to model aLow Noise Amplifierblock with a gain of 15 dB, noise figure of 1.5 dB, and OIP3 of 26 dBm.

elements(3) = amplifier('Name','LNA','Gain',15,'NF',1.5,'OIP3',26,...'Zin',Z);

4.Model aGainblock with a gain of 10.5 dB, noise figure of 3.5 dB, and OIP3 of 23 dBm.

elements(4) = amplifier('Name','Gain','Gain',10.5,'NF',3.5,'OIP3',23);

5. The receiver downconverts the RF frequency to an IF frequency of 400 MHz. Use themodulatorobject to createDemodulatorblock with a LO (Local Oscillator) frequency of 5.4 GHz, gain of -7 dB, noise figure of 7 dB, and OIP3 of 15 dBm.

elements(5) = modulator('Name','Demod','Gain',-7,'NF'7'OIP3',15,...'LO',5.4e9,'ConverterType','Down');

6. To model the RF bandpass filter userffilter设计滤波器。

Fcenter = 400e6; Bwpass = 5e6; elements(6) = rffilter('ResponseType','Bandpass',...'FilterType','Butterworth','FilterOrder',4,...'PassbandAttenuation',10*log10(2),...'Implementation','Transfer function',...'PassbandFrequency',[Fcenter-Bwpass/2 Fcenter+Bwpass/2],'Zout',50,...'Name','IF_Filter');

The S-parameters for this filter are not ideal and automatically inserts a loss of approximately -1dB into the system.

7. Model anIF Amplifierblock with a gain of 40 dB and a noise figure of 2.5 dB.

elements(7) = amplifier('Name','IFAmp','Gain',40,'NF',2.5,'Zin',Z);

8. As seen in the references, the receiver uses an AGC (Automatic Gain Control) block where the gain varies with the available input power level. For an input power of -80 dB, the AGC gain is at a maximum of 17.5 dB. Use an Amplifier block to model an AGC. Model anAGCblock with a gain of 17.5 dB, noise figure of 4.3 dB, and OIP3 of 36 dBm.

elements(8) = amplifier('Name','AGC','Gain',17.5,'NF',4.3,'OIP3',36);

9. Calculate the rbudget of the superheterodyne receiver using the followingSystem Parameters: 5.8 GHz forInput frequency, -80 dB forAvailable input power, and 20 MHz forSignal bandwidth. Replace the antenna element with the effectiveAvailable input powerwhich is estimated to be -66 dB reaching the TRswitch

superhet = rfbudget('Elements',elements,'InputFrequency',5.8e9,...'AvailableInputPower',-66,'SignalBandwidth',20e6)
superhet = rfbudget with properties: Elements: [1x8 rf.internal.rfbudget.Element] InputFrequency: 5.8 GHz AvailableInputPower: -66 dBm SignalBandwidth: 20 MHz Solver: Friis AutoUpdate: true Analysis Results OutputFrequency: (GHz) [ 5.8 5.8 5.8 5.8 0.4 0.4 0.4 0.4] OutputPower: (dBm) [-67.3 -67.3 -53.3 -42.8 -49.8 -49.8 -10.8 6.7] TransducerGain: (dB) [ -1.3 -1.3 12.7 23.2 16.2 16.2 55.2 72.7] NF: (dB) [ 2.3 2.3 3.531 3.657 3.693 3.693 3.728 3.728] IIP2: (dBm) [] OIP2: (dBm) [] IIP3: (dBm) [ 38.3 38.3 13.29 -0.3904 -3.824 -3.824 -3.824 -36.7] OIP3: (dBm) [ 37 37 25.99 22.81 12.38 12.38 51.38 36] SNR: (dB) [32.66 32.66 31.43 31.31 31.27 31.27 31.24 31.24]

View the analysis in theRF Budget Analyserapp by typing this command at the command line.

show(superhet);

10. The app displays the cascade values such as: output frequency of the receiver, output power, gain, noise figure, OIP3, and SNR (Signal-to- Noise-Ratio).

11. The RF Budget Analyzer app saves the model in a MAT-file format.

Plot Cascade Transducer Gain and Cascade Noise Figure

1. Plot the cascade transducer gain of the receiver using the function,rfplot

rfplot(superhet,'GainT') view(90,0)

Figure GainT contains an axes object. The axes object with title Transducer Gain Friis Analysis contains 8 objects of type line. These objects represent 1..1, 1..2, 1..3, 1..4, 1..5, 1..6, 1..7, 1..8.

2. Plot the cascade noise figure of the receiver.

rfplot(superhet,'NF') view(90,0)

Figure NF contains an axes object. The axes object with title Noise Figure Friis Analysis contains 8 objects of type line. These objects represent 1..1, 1..2, 1..3, 1..4, 1..5, 1..6, 1..7, 1..8.

You can also use thePlotbutton on theRFBudgetAnalyzerapp to plot the different output values.

Export to MATLAB Script

1. You can also export the model to MATLAB script format using theExportbutton or:

h = exportScript(superhet);

The script opens automatically in a MATLAB Editor window.

h.closeNoPrompt

Verify Output Power and Transducer Gain Using RF Blockset Simulation

1. Use theExportbutton to export the receiver to RF Blockset or:

exportRFBlockset(superhet)

2. Run the RF Blockset model to calculate theOutput power (dBm)andTransducer gain (dB)of the receiver. Note that the results match thePout (dBm)and theGainT (dB)values of the receiver obtained using the RF Budget Analyzer app.

3. Look under the mask of the Demodulator block. This block consists of an ideal filter and a channel select filter and an LO (local oscillator) for frequency up or down conversion.

4.The stop time for the simulation is zero. To simulate time-varying results, you need to change the stop time.

Export to RF Blockset Testbench

1. Use theExportbutton to export the receiver to RF Blockset measurement testbench or:

exportTestbench(superhet);

2. The RF Blockset testbench consists of two subsystems,RF Measurement UnitandDevice Under Test.

3. TheDevice Under Testsubsystem block contains the superheterodyne receiver you exported from theRF Budget Analyzer应用程序。双击on the DUT subsystem block to look inside.

4.双击on theRF Measurement Unitsubsystem block to see the system parameters. By default, RF Blockset testbench verifies gain.

Verify Gain, Noise Figure, and IP3 Using RF Blockset Testbench

You can verify the gain, noise figure, and IP3 measurements using the RF Blockset testbench.

1. By default, the model verifies the gain measurement of the device under test. Run the model to check the gain value. The simulated gain value matches the cascade transducer gain value from the app. The scope shows an output power of approximately 6.7 dB at 400 MHz that matches the output power value in theRF Budget Analyzer应用程序。

2. The RF Blockset testbench calculates the spot noise figure. The calculation assumes a frequency independent system within a given bandwidth. To simulate a frequency independent system and calculate the correct noise figure value, you need to reduce the broad bandwidth of 20 MHz to a narrow bandwidth.

3. First, stop all simulations. Double-click on theRF Measurement UnitBlock. This opens the RF measurement unit parameters. In theMeasured Quantityparameter drop down, change the parameter toNF(noise figure). In theParameterstab, change theBaseband bandwidth (Hz)to 2000 Hz. ClickApply. To learn more about how to manipulate noise figure verification, click theInstructionstab.

4.再次运行模型检查噪音图value. The testbench noise figure value matches the cascade noise figure value from theRF Budget Analyzer应用程序。

5. IP3 measurements rely on the creation and measurement of intermodulation tones that are usually small in amplitude and may be below the DUT's noise floor. For accurate IP3 measurements, clear theSimulate noisecheckbox.

6. To verify OIP3 (output third-order intercept), stop all simulations. Open theRF Measurement Unitdialog box. Clear theSimulate noise (both stimulus and DUT internal)check box. Change theMeasured Quantityparameter toIP3. Keep theIP TypeasOutput referred. To learn more about how to manipulate OIP3 verification, click theInstructionstab. ClickApply.

7. Run the model. The testbench OIP3 value matches the cascade OIP3 value of the app.

8. To verify IIP3 (input third-order intercept), stop all simulations. OpenRF Measurement Unitdialog box. Clear theSimulate noise (both stimulus and DUT internal)check box. Change theMeasured Quantityparameter in block parameters toIP3. Change theIP TypetoInput referred. To learn more about how to manipulate IIP3 verification, click theInstructionstab. ClickApply.

9. Run the model again to check the IIP3 value.

References

[1] Hongbao Zhou, Bin Luo. " Design and budget analysis of RF receiver of 5.8GHz ETC reader" Published at Communication Technology (ICCT), 2010 12th IEEE International Conference, Nanjing, China, November 2010.

[2] Bin Luo, Peng Li. "Budget Analysis of RF Transceiver Used in 5.8GHz RFID Reader Based on the ETC-DSRC National Specifications of China" Published at Wireless Communications, Networking and Mobile Computing, WiCom '09. 5th International Conference, Beijing, China, September 2009.

See Also

Related Topics