Week 8: Merging of branch ‘alekh_gr’ into ‘master’ and some improvements

This week’s work progress included merging of the branch ‘alekh_gr’ into the ‘master’ after satisfactory testing, updation of predistorter block to remove the need of stream_to_gmp_vector block and some minor improvements.

Apart from this, I did some investigation into the potential suitable reference for the LMS algorithm implementation.

Major commits to the gr-dpd repository are:

  • Merging of branch ‘master’ into alekh_gr and vice versa: The only major difference between two branches was that in alekh_gr branch stream ports are used for passing of pa_input and some other single length parameters in between gain_phase, predistorter and RLS_postdistorter blocks rather than message ports as in master branch. After some initial testing and confirmed improvements in performance due to proper synchronisation achieved, alekh_gr is finally merged into master eliminating most of the use of the unsynchronised message parsing.
  • Updation of predistorter_training block: The predistorter_training block involves multiplication of a GMP_vector with weight vector/ taps to obtain predistorted output to be fed to the Power Amplifier. So, rather than using a separate stream_to_gmp_vector block to obtain GMP_vector using a history of inputs, it can be processed within the predistorter itself.
    • This commit eliminates the need of stream_to_gmp vector block in flowgraph.
    • A new parameter dpd_params is introduced in the predistorter itself.
Updated RLS_test_two_tone_setup.grc flowgraph
  • Updated gain_phase_calibrate block: Earlier, it used average of current and previous cfactor to calculate cfactor to be multiplied for the calibration.
    • This commit improved the estimation of gain factor for calibration by using average of all the previous cfactors rather than only last two cfactors.

Upcoming week tasks are as follows:

  • Working on the issues regarding unexpected strange behaviour in RLS based predistortion especially at high amplitudes.
  • Working on getting the data regarding coefficients or weight taps after each iteration.
  • Working towards the addition of LMS based postdistorter.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s