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 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.