Understanding Key Parameters of Software Defined Radio Equipment

Starting to set up the transmission environment and getting it to run was much harder than simulation, especially dealing with the Linux system environment, as being unfamiliar with command line operations consumed a lot of time. I feel that my understanding of the equipment is not very accurate, but for now, the main goal is to get it running and achieve the first step of sending and receiving. I welcome any criticism or corrections regarding my understanding of the equipment.

1 Equipment Introduction

1.1 Transmission Equipment

Recently, I bought a Microsemi E310:

Understanding Key Parameters of Software Defined Radio Equipment

Figure 1 Microsemi SDR Equipment

PlutoSDR (also known as ADALM-PLUTO) is a low-cost SDR manufactured by ADI, based on the AD9364 RFIC (the same RFIC used in USRP B200) but marked as AD9363. I don’t really understand the specifics. Let’s take a look at several parameters of the PlutoSDR Sink that I need:

Understanding Key Parameters of Software Defined Radio Equipment

Below is my understanding of the parameters:

Understanding Key Parameters of Software Defined Radio Equipment

Figure 2 Parameter Understanding

The buffer size refers to the amount of data transmitted at once. For example, if I want to send 2 million points at once, I set it to 2M; if I want to send it in two batches, I set it to 1M.

1.2 Receiving Equipment

The parameters and meanings of the HackRF one device can be looked up online and understood in reference to the transmission equipment mentioned above.

Understanding Key Parameters of Software Defined Radio Equipment

Figure 3 HackRF one Device

2 Transmitter Design

The flowchart is as follows:

Understanding Key Parameters of Software Defined Radio Equipment

Figure 4 Transmitter Flow Design

Where the source coding and channel coding refer to previous article content:

A Simple QPSK Digital Communication System
Gu Ge, WeChat Public Account: Communication Algorithm Notes and Software Defined Radio Practice A Simple QPSK Digital Communication System

After symbol mapping, it goes to the following flowchart.

Then in the corresponding OOT module in gnuradio, the flowchart is displayed as follows:

Understanding Key Parameters of Software Defined Radio Equipment

Figure 5 Transmitter OOT Module Design

In the above figure, the Rational Resample module is the digital up-conversion (DUC), which upsamples the signal with a sampling rate of 8000Hz to 2MHz. Here, I directly call the internal block, and the implementation method can use zero insertion and anti-aliasing filtering. (In ideal interpolation, the number of signal points changes from the original 390 to 390*250), but after calling the Rational Resample function, the data points change from 390 to 89846. This is probably due to the anti-aliasing filter; anyway, I won’t consider too much for now. So, after reading the above file, the baseband signal with a sampling rate of 8000Hz is up-converted to 2MHz and then sent out with 89846 points.

Understanding Key Parameters of Software Defined Radio Equipment

Figure 6 Transmitter Interface

Looking at the parameters, the sampling rate is set to 2MHz; the buffer is set for continuous reading to the length of 89846 after up-conversion; the attenuation is set to 10dB; the carrier frequency and local oscillator frequency are set to 501MHz to meet the equipment range.

The transmitted waveform is as follows:

Understanding Key Parameters of Software Defined Radio Equipment

Figure 7 Baseband Waveform of Transmission (This is a graph drawn by octave)

In practice, the segment of this time-domain signal is sent repeatedly to maintain a continuous signal.

3 Receiver

The receiver flow is as follows:

Understanding Key Parameters of Software Defined Radio Equipment

Figure 8 Receiver Gnuradio Module Diagram

The receiver doesn’t have a flow design yet, as I am still learning about synchronization. So I will save it as a file for learning.

The time-frequency diagram of the received signal is as follows:

Understanding Key Parameters of Software Defined Radio Equipment

Figure 9 Received Time-Frequency Diagram

Since we opened the receiver first, there was no time for sending signals at the beginning.

After getting the data, I started to perform coherent demodulation. I have always been puzzled why both the transmitter and receiver know the carrier frequency, but still need carrier recovery. It wasn’t until I operated that I realized that due to various issues (which I still don’t know), the frequency was inaccurate. It was really frustrating.

When sending, it was 501MHz; I used a 500.5MHz intermediate frequency to down-convert 2MHz, which gives [499.5-501.5]MHz. Therefore, the carrier frequency for processing this segment of the signal should be 0.5MHz, and then I directly use coherent down-conversion and low-pass filtering, followed by digital down-conversion (DDC) to down-sample the signal to 8000Hz after matched filtering for analysis. The waveform is as follows:

Understanding Key Parameters of Software Defined Radio Equipment

Figure 10 Data After Mixing and Filtering Down-Conversion

It is obviously incorrect, with the frequency shifted left by 404Hz (I embarrassingly figured this out myself) as shown in the following figure:

Understanding Key Parameters of Software Defined Radio Equipment

Figure 11 Left-Shifted 404Hz Signal

It looks much better now. We will discuss carrier recovery algorithms later.

Leave a Comment

×