CONTENTS

 Annex G  –  16 kbit/s fixed point specification
        G.1     Introduction
                  G.1.1     General philosophy
                  G.1.2     Numerical representation
                  G.1.3     Arithmetic operations
        G.2     Algorithmic changes
                  G.2.1     Changes in the backward vector gain adapter (block 20)
                  G.2.2     Changes in the Levinson-Durbin recursion modules
        G.3     Pseudo-code for other modules of Recommendation G.728
                  G.3.1     Block 4 – Pseudo-code for weighting filter
                  G.3.2     Blockzir – Pseudo-code for synthesis and perceptual weighting filters during zero‑input response computation
                  G.3.3     Blocks 9 and 10 – Pseudo-code for synthesis and perceptual weighting filter memory updates       
                  G.3.4     Block 11 – VQ target vector computation
                  G.3.5     Block 12 – Impulse response vector calculation
                  G.3.6     Block 13 – Time-reversed convolution
                  G.3.7     Block 14 – Shape codevector convolution and energy calculation
                  G.3.8     Block 16 – VQ target vector normalization
                  G.3.9     Block 17 – VQ search error calculator and best codebook index selector
                 G.3.10     Block 19 – Excitation VQ codebook and block 21 – Gain scaling unit
                 G.3.11     Block 32 – Decoder synthesis filter
                 G.3.12     Block 36 – Pseudo-code for hybrid windowing module
                 G.3.13     Block 38 – Weighting filter coefficient calculator
                 G.3.14     Block 43 – Hybrid windowing module
                 G.3.15     Block 45 – Bandwidth expansion module
                 G.3.16     Block 46 – Log-gain linear prediction
                 G.3.17     Block 49 – Hybrid window module for synthesis filter
                 G.3.18     HWMCORE – Core of hybrid window module
                 G.3.19     Block 51 – Bandwidth expansion module
                 G.3.20     Blocks 71 and 72 – Long-term and short-term postfilters
                 G.3.21     Blocks 73 and 74 – Sum of absolute value calculators
                 G.3.22     Block 75 – Scaling factor calculator
                 G.3.23     Block 76 – First-order lowpass filter and block 77 – Output gain scaling unit
                 G.3.24     Block 81 – 10th order LPC inverse filter
                 G.3.25     Block 82 – Pitch period extraction module
                 G.3.26     Block 83 – Pitch predictor tap calculator
                 G.3.27     Block 84 – Long-term postfilter coefficient calculator
                 G.3.28     Block 85 – Short-term postfilter coefficient calculator
        G.4     LD-CELP internal variable representations
        G.5     Log-gain tables for gain and shape codebook vectors
        G.6     Integer values of gain codebook related arrays
        G.7     Encoder and decoder main program pseudo-codes