0% found this document useful (0 votes)
150 views4 pages

FSK Filters

The document discusses different types of filters that can be used in Frequency Shift Keying (FSK) modulation. It describes Gaussian filters, lowpass filters, and Minimum Shift Keying (MSK) filters. It notes that the specific filter used depends on factors like bandwidth, modulation index, and noise characteristics.

Uploaded by

danial4419
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
150 views4 pages

FSK Filters

The document discusses different types of filters that can be used in Frequency Shift Keying (FSK) modulation. It describes Gaussian filters, lowpass filters, and Minimum Shift Keying (MSK) filters. It notes that the specific filter used depends on factors like bandwidth, modulation index, and noise characteristics.

Uploaded by

danial4419
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4

In Frequency Shift Keying (FSK) modulation, several types of filters can be used:

1. **Gaussian Filter**: Gaussian Frequency-Shift Keying (GFSK) is a common method used in


FSK modulation. Rather than directly modulating the frequency with the digital data symbols,
GFSK filters the data pulses with a Gaussian filter to make the transitions smoother¹. This filter
has the advantage of reducing sideband power, thus reducing interference with neighboring
channels, at the cost of increasing intersymbol interference¹.

2. **Lowpass Filter**: A lowpass filter can be used in binary FSK modulation systems. Here, a
binary bitstream is lowpass filtered and used to drive an FSK modulator. One implementation of
this shifts the frequency of an oscillator according to the voltage of the baseband signal².

3. **Minimum Shift Keying (MSK) Filter**: MSK is a particular implementation of FSK. It uses a
baseband lowpass filter so that the transitions from one state to another are smooth in time and
limit the bandwidth of the modulated signal².

Remember, the specific type and design of the filter would depend on the exact requirements of
your FSK system. It's always important to consider factors such as the signal bandwidth, the

😊
modulation index, and the noise characteristics of the system when designing these filters. I
hope this helps! Let me know if you have any other questions. .

Source: Conversation with Bing, 2/5/2024


(1) Frequency-shift keying - Wikipedia. https://en.wikipedia.org/wiki/Frequency-shift_keying.
(2) 2.6: Frequency Shift Keying, FSK - Engineering LibreTexts.
https://eng.libretexts.org/Bookshelves/Electrical_Engineering/Electronics/Microwave_and_RF_D
esign_I_-_Radio_Systems_%28Steer%29/02%3A_Modulation/2.06%3A_Frequency_Shift_Keyi
ng_FSK.
(3) FSK Filter Circuit - ElectroSchematics.com. https://www.electroschematics.com/fsk-filter/.

In Frequency Shift Keying (FSK) modulation, a pulse shaping filter is used to control the shape
of the transmitted pulses. This is done to minimize intersymbol interference (ISI) and to control
the bandwidth of the transmitted signal⁴. Here are some examples of pulse shaping filters used
in FSK modulation:

1. **Gaussian Filter**: Gaussian Frequency-Shift Keying (GFSK) is a common method used in


FSK modulation. The data pulses are filtered with a Gaussian filter to make the transitions
smoother¹. This reduces sideband power, thus reducing interference with neighboring channels,
at the cost of increasing intersymbol interference¹.
2. **Raised Cosine Filter**: This pulse shaping filter uses a cosine function with a parameter to
control the curvature of the filter’s transfer function in the frequency domain².

3. **Half Sine Filter**: The Half Sine pulse shaping filter changes the vector diagram of an
OQPSK signal from a square to a circle. This eliminates any amplitude variations and turns the
OQPSK signal into a constant envelope modulation³.

4. **Minimum-Shift Keying (MSK) Filter**: MSK is a particular implementation of FSK. It uses a


baseband lowpass filter so that the transitions from one state to another are smooth in time and
limit the bandwidth of the modulated signal¹.

The specific type and design of the pulse shaping filter would depend on the exact requirements
of your FSK system. It's always important to consider factors such as the signal bandwidth, the

😊
modulation index, and the noise characteristics of the system when designing these filters. I
hope this helps! Let me know if you have any other questions. .

Source: Conversation with Bing, 2/5/2024


(1) Pulse shaping - Wikipedia. https://en.wikipedia.org/wiki/Pulse_shaping.
(2) digital communications - Pulse shaping filter for FSK - Signal ....
https://dsp.stackexchange.com/questions/71328/pulse-shaping-filter-for-fsk.
(3) How to Use a Pulse Shaping Filter for Communications.
https://resources.system-analysis.cadence.com/blog/msa2021-how-to-use-a-pulse-shaping-filter
-for-communications.
(4) Half Sine Filter - Keysight.
https://rfmw.em.keysight.com/wireless/helpfiles/89600b/webhelp/subsystems/digdemod/content/
dlg_digdemod_fltr_halfsine.htm.

Yes, the shape of a cut-off filter is not limited to the Kaiser window. There are many other
window functions that can be used to design FIR filters, each with its own characteristics. Here
are a few examples:

1. **Rectangular Window**: This is the simplest window, equivalent to no window at all. It


provides the poorest frequency resolution but the best temporal resolution¹.

2. **Hamming Window**: This window reduces the side lobes of the frequency response,
leading to less leakage compared to the rectangular window¹.

3. **Hann Window**: Also known as the Cosine Bell, it is one of the most commonly used
windows for filter design and signal analysis¹.
4. **Blackman Window**: This window provides even lower side lobes in the frequency
response, at the expense of wider main lobes¹.

5. **Gaussian Window**: This window has properties that are useful in some applications, such
as radar signal processing².

The choice of window function depends on the specific requirements of your application, such

😊
as the desired trade-off between main lobe width and side lobe level, and the acceptable level of
signal distortion. I hope this helps! Let me know if you have any other questions.

Source: Conversation with Bing, 2/5/2024


(1) Design digital filters - MATLAB designfilt - MathWorks.
https://www.mathworks.com/help/signal/ref/designfilt.html.
(2) Closed-Form FIR Filter Design with Accurately Controllable Cut-Off ....
https://link.springer.com/article/10.1007/s00034-016-0330-7.
(3) Window-based FIR filter design - MATLAB fir1 - MathWorks.
https://www.mathworks.com/help/signal/ref/fir1.html.

Sure, here's an example of how you might create a bandpass filter using the liquid-dsp library.
This example creates a bandpass filter with a lower cutoff frequency of 0.1 and an upper cutoff
frequency of 0.3.

```c
#include <stdio.h>
#include <stdlib.h>
#include <liquid/liquid.h>

int main() {
// specify filter parameters
unsigned int h_len = 64; // filter length
float h[h_len]; // filter coefficients
float fc=0.2f; // filter center frequency
float As=60.0f; // stop-band attenuation [dB]

// design filter
liquid_firdespm_btype btype = LIQUID_FIRDESPM_BANDPASS;
unsigned int bands_len = 4;
float bands[4] = {0.0f, 0.1f, 0.3f, 0.5f};
float des[2] = {1.0f, 0.0f};
float weights[2] = {1.0f, 1.0f};
liquid_firdespm_run(h_len, bands_len, bands, des, weights, btype, As, h);

// create filter object from coefficients


firfilt_rrrf q = firfilt_rrrf_create(h, h_len);

// clean up allocated objects


firfilt_rrrf_destroy(q);

return 0;
}
```

This code first specifies the filter parameters, including the filter length, the center frequency,
and the stop-band attenuation. It then designs the bandpass filter using the
`liquid_firdespm_run` function, which designs a filter that minimizes the maximum error between
the desired and actual frequency responses. The `liquid_firdespm_btype` parameter is set to
`LIQUID_FIRDESPM_BANDPASS` to specify a bandpass filter. The `bands` array specifies the
lower and upper cutoff frequencies of the passband and stopband. The `des` array specifies the
desired amplitude in each band, and the `weights` array specifies the weight of the error in each
band.

Finally, the code creates a filter object from the filter coefficients using the `firfilt_rrrf_create`
function. The filter object can then be used to filter a signal.

Please note that you'll need to install the liquid-dsp library to compile and run this code. Also,
this is a basic example and may need to be adjusted based on your specific requirements.
Always remember to destroy the created objects at the end to free up the allocated memory.

I hope this helps! Let me know if you have any other questions. 😊

You might also like