GNU Radio's DPD Package
RLS_postdistorter.h
Go to the documentation of this file.
1
/* -*- c++ -*- */
2
/*
3
* Copyright 2020 Alekh Gupta
4
*
5
* SPDX-License-Identifier: GPL-3.0-or-later
6
*/
7
8
#ifndef INCLUDED_DPD_RLS_POSTDISTORTER_H
9
#define INCLUDED_DPD_RLS_POSTDISTORTER_H
10
11
#include <gnuradio/sync_block.h>
12
#include <
dpd/api.h
>
13
14
namespace
gr
{
15
namespace
dpd {
16
17
/*!
18
* \brief RLS based Algorithm implemented to estimate the coefficients of the
19
* behaviorial model (GMP) of the Power Amplifier and thus predistorter taps.
20
* \ingroup dpd
21
*
22
* \details
23
* It estimates the coefficients based on the PA_output and PA_input.
24
*
25
* It has two input ports, one for the PA_output (gain phase calibrated) and
26
* other for the PA_input (or predistorter output).
27
*
28
* The coefficients estimated are passed as messages through message output
29
* port 'taps'.
30
* Both Input ports are only for Complex Data Type.
31
*
32
* The Fast RLS Algorithm used in coefficient estimations is referenced from the
33
* publication: S. Pagadarai, R. Grover, S. J. Macmullan and A. M. Wyglinski,
34
* "Digital Predistortion of Power Amplifiers for Spectrally Agile Wireless
35
* Transmitters."
36
*/
37
class
DPD_API
RLS_postdistorter
:
virtual
public
gr::sync_block
38
{
39
public
:
40
typedef
boost::shared_ptr<RLS_postdistorter>
sptr
;
41
42
/*!
43
* \brief Make RLS_postdistorter block
44
*
45
* \param dpd_params The (K_a, L_a, K_b, L_b, M_b) int_vector denoting the
46
* GMP model parameters used for predistorter coefficients estimations.
47
* Total No. of coefficients = ((K_a * L_a) + (K_b * M_b * L_b))
48
* \param iter_limit Iteration limit or Max. number of iterations of training
49
* to be performed for predistorter DPD coefficients estimation.
50
*
51
*
52
*/
53
static
sptr make(
const
std::vector<int>& dpd_params,
int
iter_limit);
54
};
55
56
}
// namespace dpd
57
}
// namespace gr
58
59
#endif
/* INCLUDED_DPD_RLS_POSTDISTORTER_H */
api.h
gr::dpd::RLS_postdistorter
RLS based Algorithm implemented to estimate the coefficients of the behaviorial model (GMP) of the Po...
Definition:
RLS_postdistorter.h:37
gr
Definition:
gain_phase_calibrate.h:14
DPD_API
#define DPD_API
Definition:
api.h:19
gr::dpd::RLS_postdistorter::sptr
boost::shared_ptr< RLS_postdistorter > sptr
Definition:
RLS_postdistorter.h:40
include
dpd
RLS_postdistorter.h
Generated by
1.8.13