Abstract

The present document contains the full specification of the speech codecs for use in the Terrestrial Trunked Radio (TETRA) system. The TETRA codec specified in clauses 4 to 8 is mandatory for all TETRA mobiles and networks. The AMR codec specified in clauses 9 to 12 is optional. If the AMR codec is implemented, the equipment shall conform to the whole of clause 9 to 12.

Status
Published
Publication Date
31-Mar-2006
Current Stage
6060 - National Implementation/Publication (Adopted Project)
Start Date
01-Apr-2006
Due Date
01-Apr-2006
Completion Date
01-Apr-2006

Buy Documents

Standard

SIST EN 300 395-2 V1.3.1:2006

English language (93 pages)
Preview
Preview
e-Library read for
×1 day

SIST EN 300 395-2 V1.3.1:2006 is the Slovenian adoption of ETSI EN 300 395-2 for Terrestrial Trunked Radio (TETRA) speech coding on the full-rate traffic channel. It specifies the mandatory TETRA speech codec for all TETRA mobiles and networks, and it also defines an optional AMR speech codec mode if that mode is implemented.

What does SIST EN 300 395-2 V1.3.1:2006 specify?

SIST EN 300 395-2 V1.3.1:2006 specifies the full speech-coding chain for TETRA voice on the full-rate traffic channel. It covers the source codec, channel coding and decoding for speech, bit-exact C code descriptions, and informative annexes with performance data, implementation guidance, and file indexes.

The document is organized into clauses 1 to 12 and annexes A to F. Clauses 4 to 8 define the mandatory TETRA codec, while clauses 9 to 12 define the optional AMR codec.

AnnexWhat it covers
Annex AAn informative implementation of speech channel decoding, including algorithmic description and example C code
Annex BIndexes of the C code routines and files
Annex CCodec quality, performance, complexity, and delay information
Annex DResults of listening tests and complexity tests
Annex EUse of the attached electronic files
Annex FBibliography

What are the key requirements of SIST EN 300 395-2 V1.3.1:2006?

SIST EN 300 395-2 V1.3.1:2006 requires exact implementation of the TETRA codec described in clauses 4 to 8, and it requires the whole AMR part in clauses 9 to 12 if AMR is implemented. In practice, this means implementers must follow the specified frame structure, bit allocation, channel protection, and bit-exact reference code.

Full-rate TETRA codec

Clause 4 defines the full-rate speech codec as a Code-Excited Linear Predictive (CELP) system. The codec uses long-term prediction for pitch and short-term prediction for the speech spectrum, so implementers must build both the excitation and the synthesis path.

The TETRA codec uses 30 ms speech frames divided into 4 subframes of 7.5 ms. Short-term prediction parameters are computed and transmitted every frame, while pitch and algebraic codebook parameters are transmitted every subframe. This matters because encoder and decoder timing, buffering, and packet structure all depend on that frame layout.

Clause 4 also fixes the LP order at 10 and uses perceptual weighting during analysis-by-synthesis. The practical effect is that encoder search must favor the speech regions that are most important to the listener, not just the mathematically closest waveform.

The algebraic excitation codebook is dynamically shaped and searched with a focused search method. In practice, this reduces search complexity, but it still requires the encoder to find the best pulse positions and gains in the prescribed way.

Channel coding for speech

Clauses 5 and 6 define the speech traffic channel error-control structure. The speech bits are grouped into sensitivity classes, protected with CRC and convolutional coding, interleaved, and then scrambled before being placed into multiplexed blocks.

The CRC is applied only to the third, most sensitive class. That means implementers must classify the speech bits exactly as specified, because only part of the payload is checked by CRC and the protection strength depends on the class assignment.

The codec uses 16-state RCPC (Rate-Compatible Punctured Convolutional) codes. In practical terms, the channel coder starts from a mother code and punctures it to different rates depending on the traffic mode, so encoder and decoder must use the same puncturing scheme.

For normal speech traffic, the standard says two speech frames are encoded and interleaved together within one transmission time slot. When frame stealing is activated, the speech frame and signalling data are handled separately, and the speech channel coding changes accordingly.

The receive side uses the same structure in reverse. If the CRC check fails, the decoder sets the BFI (Bad Frame Indicator), which is the signal the speech decoder uses to treat the frame as damaged.

AMR speech codec

Clauses 9 to 12 define an optional AMR speech codec path. If the AMR codec is implemented in the network or the mobile station, the document allows only the 4.75 kbit/s mode.

The standard also states that other AMR modes shall not be used within TETRA, and Source Controlled Rate (SCR) shall not be used. In practice, this limits interoperability choices and avoids mixing TETRA speech with higher-rate AMR modes.

The AMR channel coding follows the same overall structure as the TETRA speech channel coding, but with AMR-specific bit assignments and interleaving. If you are designing or checking AMR support, you need to verify both the codec mode and the associated channel coding, not just the speech algorithm.

Bit-exact reference code and conformance

Clause 8 gives the bit-exact ANSI C description of the TETRA codec. Clause 12 does the same for the AMR codec FEC, and the attached files form part of the deliverable.

This matters for integration and testing because vendors can compare their implementation against the provided bit-exact behavior. Clause 7 also points readers to codec performance and says practical implementations must satisfy normative conformance tests.

What terms does SIST EN 300 395-2 V1.3.1:2006 define?

  • CELP (Code-Excited Linear Predictive) - The speech coding model used by the TETRA codec, where speech is reconstructed from a codebook excitation passed through prediction filters.
  • AMR (Adaptive Multi-Rate) - The optional speech codec path defined in clauses 9 to 12, with only the 4.75 kbit/s mode allowed in TETRA.
  • LP (Linear Prediction) - The filter model used to represent the speech spectral envelope and to drive the synthesis filters.
  • LSP (Line Spectral Pair) - The quantized representation of LP parameters used for interpolation and filter stability in the codec.
  • CRC (Cyclic Redundancy Code) - The error-checking code applied to the third sensitivity class in the speech channel coding structure.
  • BFI (Bad Frame Indicator) - The flag set by the decoder when the CRC check shows a discrepancy.
  • RCPC (Rate-Compatible Punctured Convolutional) - The convolutional coding method used for speech channel protection, with puncturing to fit the channel format.
  • SCR (Source Controlled Rate) - A mode that the standard says shall not be used within TETRA when AMR is implemented.

Who uses SIST EN 300 395-2 V1.3.1:2006?

SIST EN 300 395-2 V1.3.1:2006 is used by TETRA equipment manufacturers, software developers, and system integrators who need to implement the speech codec in mobiles, base stations, and networks. It is also used by test laboratories and conformance teams that verify bit-exact behavior, frame structure, and channel-coding behavior.

Quality managers and buyers use it to check whether a product supports the mandatory TETRA codec and, if applicable, the optional AMR codec in the required way. Network planners and radio engineers use it when they need to understand speech quality, delay, error protection, and the impact of frame stealing.

What changed in SIST EN 300 395-2 V1.3.1:2006 from the previous edition?

SIST EN 300 395-2 V1.3.1:2006 is the January 2005 publication of ETSI EN 300 395-2 V1.3.1. The document history also records earlier ETS 300 395-2 editions from December 1996 and February 1998, and a V1.3.0 publication from September 2004.

Which standards are used with SIST EN 300 395-2 V1.3.1:2006?

  • ETSI EN 300 392-2 - Used as the TETRA Voice plus Data (V+D) air-interface reference in the channel-coding clauses, especially for the transmission chain and logical channels.
  • ETSI TS 126 073 - Provides the ANSI-C code for the Adaptive Multi-Rate speech codec used when AMR is implemented.
  • ETSI TS 126 074 - Provides the bit-exact AMR speech codec test sequences.
  • ETSI TS 126 090 - Provides the AMR transcoding functions used with the optional AMR path.

What does the SIST EN 300 395-2 V1.3.1:2006 document contain?

The document contains functional codec descriptions, block diagrams, frame and subframe organization, bit allocation, and channel-coding procedures. It also includes the detailed interleaving layouts and the fixed-bit values used in frame-stealing cases.

It further contains bit-exact ANSI C code descriptions for the source codec and the channel coding/decoding functions, with file and routine indexes in Annexes B and E. For implementation teams, those annexes are useful when tracing a software module back to the standard’s structure.

Annex C and Annex D collect performance, quality, listening-test, and complexity information. Those sections are useful when comparing implementations, estimating processor load, or reviewing speech quality and error performance under different channel conditions.

Buy Documents

Standard

SIST EN 300 395-2 V1.3.1:2006

English language (93 pages)
Preview
Preview
e-Library read for
×1 day

Get Certified

Connect with accredited certification bodies for this standard

ANCE

Mexican certification and testing association.

EMA Mexico Verified

Intertek Slovenia

Intertek testing, inspection, and certification services in Slovenia.

UKAS Slovenia Verified

LNE (Laboratoire National de Métrologie et d'Essais)

French national laboratory for metrology and testing.

COFRAC France Verified

Sponsored listings

Frequently Asked Questions

SIST EN 300 395-2 V1.3.1:2006 is a standard published by the Slovenian Institute for Standardization (SIST). Its full title is "Terrestrial Trunked Radio (TETRA); Speech codec for full-rate traffic channel; Part 2: TETRA codec". This standard covers: The present document contains the full specification of the speech codecs for use in the Terrestrial Trunked Radio (TETRA) system. The TETRA codec specified in clauses 4 to 8 is mandatory for all TETRA mobiles and networks. The AMR codec specified in clauses 9 to 12 is optional. If the AMR codec is implemented, the equipment shall conform to the whole of clause 9 to 12.

The present document contains the full specification of the speech codecs for use in the Terrestrial Trunked Radio (TETRA) system. The TETRA codec specified in clauses 4 to 8 is mandatory for all TETRA mobiles and networks. The AMR codec specified in clauses 9 to 12 is optional. If the AMR codec is implemented, the equipment shall conform to the whole of clause 9 to 12.

SIST EN 300 395-2 V1.3.1:2006 is classified under the following ICS (International Classification for Standards) categories: 33.070.10 - Terrestrial Trunked Radio (TETRA). The ICS classification helps identify the subject area and facilitates finding related standards.

SIST EN 300 395-2 V1.3.1:2006 is available in PDF format for immediate download after purchase. The document can be added to your cart and obtained through the secure checkout process. Digital delivery ensures instant access to the complete standard document.

Standards Content (Sample)


SLOVENSKI STANDARD
01-april-2006
Prizemni snopovni radio (TETRA) – Govorni kodek za kanal s polno hitrostjo – 2.
del: Kodek TETRA
Terrestrial Trunked Radio (TETRA); Speech codec for full-rate traffic channel; Part 2:
TETRA codec
Ta slovenski standard je istoveten z: EN 300 395-2 Version 1.3.1
ICS:
33.070.10 Prizemni snopovni radio Terrestrial Trunked Radio
(TETRA) (TETRA)
2003-01.Slovenski inštitut za standardizacijo. Razmnoževanje celote ali delov tega standarda ni dovoljeno.

ETSI EN 300 395-2 V1.3.1 (2005-01)
European Standard (Telecommunications series)

Terrestrial Trunked Radio (TETRA);
Speech codec for full-rate traffic channel;
Part 2: TETRA codec
�
2 ETSI EN 300 395-2 V1.3.1 (2005-01)

Reference
REN/TETRA-05059
Keywords
TETRA, radio, codec
ETSI
650 Route des Lucioles
F-06921 Sophia Antipolis Cedex - FRANCE

Tel.: +33 4 92 94 42 00  Fax: +33 4 93 65 47 16

Siret N° 348 623 562 00017 - NAF 742 C
Association à but non lucratif enregistrée à la
Sous-Préfecture de Grasse (06) N° 7803/88

Important notice
Individual copies of the present document can be downloaded from:
http://www.etsi.org
The present document may be made available in more than one electronic version or in print. In any case of existing or
perceived difference in contents between such versions, the reference version is the Portable Document Format (PDF).
In case of dispute, the reference shall be the printing on ETSI printers of the PDF version kept on a specific network drive
within ETSI Secretariat.
Users of the present document should be aware that the document may be subject to revision or change of status.
Information on the current status of this and other ETSI documents is available at
http://portal.etsi.org/tb/status/status.asp
If you find errors in the present document, please send your comment to one of the following services:
http://portal.etsi.org/chaircor/ETSI_support.asp
Copyright Notification
No part may be reproduced except as authorized by written permission.
The copyright and the foregoing restriction extend to reproduction in all media.

© European Telecommunications Standards Institute 2005.
All rights reserved.
TM TM TM
DECT , PLUGTESTS and UMTS are Trade Marks of ETSI registered for the benefit of its Members.
TM
TIPHON and the TIPHON logo are Trade Marks currently being registered by ETSI for the benefit of its Members.
TM
3GPP is a Trade Mark of ETSI registered for the benefit of its Members and of the 3GPP Organizational Partners.
ETSI
3 ETSI EN 300 395-2 V1.3.1 (2005-01)
Contents
Intellectual Property Rights.7
Foreword.7
1 Scope.9
2 References.9
3 Abbreviations.9
4 Full rate codec.10
4.1 Structure of the codec.10
4.2 Functional description of the codec.12
4.2.1 Pre- and post-processing.12
4.2.2 Encoder.13
4.2.2.1 Short-term prediction.14
4.2.2.2 LP to LSP and LSP to LP conversion .14
4.2.2.3 Quantization and interpolation of LP parameters.16
4.2.2.4 Long-term prediction analysis.17
4.2.2.5 Algebraic codebook: structure and search.19
4.2.2.6 Quantization of the gains .21
4.2.2.7 Detailed bit allocation .23
4.2.3 Decoder.23
4.2.3.1 Decoding process.24
4.2.3.1.1 Decoding of LP filter parameters .24
4.2.3.1.2 Decoding of the adaptive codebook vector.24
4.2.3.1.3 Decoding of the innovation vector .25
4.2.3.1.4 Decoding of the adaptive and innovative codebook gains.25
4.2.3.1.5 Computation of the reconstructed speech.25
4.2.3.2 Error concealment.25
5 Channel coding for speech .26
5.1 General.26
5.2 Interfaces in the error control structure .26
5.3 Notations.28
5.4 Definition of sensitivity classes and error control codes .28
5.4.1 Sensitivity classes.28
5.4.2 CRC codes.28
5.4.3 16-state RCPC codes .30
5.4.3.1 Encoding by the 16-state mother code of rate 1/3.30
5.4.3.2 Puncturing of the mother code .30
5.5 Error control scheme for normal speech traffic channel.31
5.5.1 CRC code.31
5.5.2 RCPC codes.31
5.5.2.1 Puncturing scheme of the RCPC code of rate 8/12 (equal to 2/3).31
5.5.2.2 Puncturing scheme of the RCPC code of rate 8/18 .31
5.5.3 Matrix Interleaving.32
5.6 Error control scheme for speech traffic channel with frame stealing activated.33
5.6.1 CRC code.33
5.6.2 RCPC codes.34
5.6.2.1 Puncturing scheme of the RCPC code of rate 8/17 .35
5.6.3 Interleaving.35
6 Channel decoding for speech .35
6.1 General.35
6.2 Error control structure .35
7 Codec performance.36
8 Bit exact description of the TETRA codec.36
ETSI
4 ETSI EN 300 395-2 V1.3.1 (2005-01)
9 AMR speech codec.38
10 Channel coding for AMR speech .38
10.1 General.38
10.2 Interfaces in the error control structure .38
10.3 Notations.38
10.4 Definition of sensitivity classes and error control codes .38
10.4.1 Sensitivity classes.38
10.4.2 CRC codes.39
10.4.3 16-state RCPC codes .40
10.4.3.1 Encoding by the 16-state mother code of rate 1/3.40
10.4.3.2 Puncturing of the mother code .41
10.5 Error control scheme for normal AMR speech traffic channel.41
10.5.1 CRC code.41
10.5.2 RCPC codes.41
10.5.2.1 Puncturing scheme of the RCPC code of rate 8/12 (equal to 2/3).42
10.5.2.2 Puncturing scheme of the RCPC code of rate 8/18 .42
10.5.3 Matrix Interleaving.42
10.6 Error control scheme for AMR speech traffic channel with frame stealing activated.43
10.6.1 Speech frames in stealing mode.43
10.6.2 CRC code.44
10.6.3 RCPC codes.45
10.6.3.1 Puncturing scheme of the RCPC code of rate 14/8 .45
10.6.4 Interleaving.45
11 Channel decoding for AMR speech .45
11.1 General.45
11.2 Error control structure .45
12 Bit exact description of the AMR codec FEC.46
Annex A (informative): Implementation of speech channel decoding.47
A.1 Algorithmic description of speech channel decoding .47
A.1.1 Definition of error control codes .47
A.1.1.1 16-state RCPC codes .47
A.1.1.1.1 Obtaining the mother code from punctured code.47
A.1.1.1.2 Viterbi decoding of the 16-state mother code of the rate 1/3 .47
A.1.1.2 CRC codes.48
A.1.1.3 Type-4 bits.48
A.1.2 Error control scheme for normal speech traffic channel.48
A.1.2.1 Matrix Interleaving.48
A.1.2.2 RCPC codes.48
A.1.2.2.1 Puncturing scheme of the RCPC code of rate 8/12 (equal to 2/3).49
A.1.2.2.2 Puncturing scheme of the RCPC code of rate 8/18 .49
A.1.2.3 CRC code.49
A.1.2.4 Speech parameters.49
A.1.3 Error control scheme for speech traffic channel with frame stealing activated.49
A.1.3.1 Interleaving.49
A.1.3.2 RCPC codes.49
A.1.3.2.1 Puncturing scheme of the RCPC code of rate 8/17 .50
A.1.3.3 CRC code.50
A.1.3.4 Speech parameters.50
A.2 C Code for speech channel decoding .50
Annex B (informative): Indexes .51
B.1 Index of C code routines .51
B.2 Index of files.54
Annex C (informative): Codec performance.55
C.1 General.55
ETSI
5 ETSI EN 300 395-2 V1.3.1 (2005-01)
C.2 Quality.55
C.2.1 Subjective speech quality .55
C.2.1.1 Description of characterization tests.55
C.2.1.2 Absolute speech quality.55
C.2.1.3 Effect of input level .55
C.2.1.4 Effect of input frequency characteristic .55
C.2.1.5 Effect of transmission errors.56
C.2.1.6 Effect of tandeming .56
C.2.1.7 Effect of acoustic background noise .56
C.2.1.8 Effect of vocal effort.56
C.2.1.9 Effect of frame stealing.56
C.2.1.10 Speaker and language dependency .56
C.2.2 Comparison with analogue FM .56
C.2.2.1 Analogue and digital systems results.56
C.2.2.2 All conditions.57
C.2.2.3 Input level.57
C.2.2.4 Error patterns.58
C.2.2.5 Background noise.58
C.2.3 Additional tests.58
C.2.3.1 Types of signals .58
C.2.3.2 Codec behaviour.58
C.3 Performance of the channel coding/decoding for speech.59
C.3.1 Classes of simulation environment conditions .59
C.3.2 Classes of equipment.59
C.3.3 Classes of bits.60
C.3.4 Channel conditions.60
C.3.5 Results for normal case .60
C.4 Complexity.61
C.4.1 Complexity analysis.61
C.4.1.1 Measurement methodology.61
C.4.1.2 TETRA basic operators .61
C.4.1.3 Worst case path for speech encoder.63
C.4.1.4 Worst case path for speech decoder.64
C.4.1.5 Condensed complexity values for encoder and decoder .65
C.4.2 DSP independence.66
C.4.2.1 Program control structure .66
C.4.2.2 Basic operator implementation .66
C.4.2.3 Additional operator implementation .66
C.5 Delay.66
Annex D (informative): Results of the TETRA codec characterization listening and
complexity tests .67
D.1 Characterization listening test.67
D.1.1 Experimental conditions.67
D.1.2 Tables of results .68
D.2 TETRA codec complexity study .76
D.2.1 Computational analysis results .76
D.2.1.1 TETRA speech encoder.76
D.2.1.2 TETRA speech decoder.84
D.2.1.3 TETRA channel encoder and decoder .87
D.2.2 Memory requirements analysis results .89
D.2.2.1 TETRA speech encoder.89
D.2.2.2 TETRA speech decoder.90
D.2.2.3 TETRA speech channel encoder.90
D.2.2.4 TETRA speech channel decoder.90
Annex E (informative): Description of attached computer files .91
E.1 Directory C-WORD.91
ETSI
6 ETSI EN 300 395-2 V1.3.1 (2005-01)
E.2 Directory C-CODE.91
E.3 Directory AMR-Code.91
Annex F (informative): Bibliography.92
History .93

ETSI
7 ETSI EN 300 395-2 V1.3.1 (2005-01)
Intellectual Property Rights
IPRs essential or potentially essential to the present document may have been declared to ETSI. The information
pertaining to these essential IPRs, if any, is publicly available for ETSI members and non-members, and can be found
in ETSI SR 000 314: "Intellectual Property Rights (IPRs); Essential, or potentially Essential, IPRs notified to ETSI in
respect of ETSI standards", which is available from the ETSI Secretariat. Latest updates are available on the ETSI Web
server (http://webapp.etsi.org/IPR/home.asp).
Pursuant to the ETSI IPR Policy, no investigation, including IPR searches, has been carried out by ETSI. No guarantee
can be given as to the existence of other IPRs not referenced in ETSI SR 000 314 (or the updates on the ETSI Web
server) which are, or may be, or may become, essential to the present document.
Foreword
This European Standard (Telecommunications series) has been produced by ETSI Project Terrestrial Trunked Radio
(TETRA).
The present document is part 2 of a multi-part deliverable covering speech codec for full-rate traffic channel, as
identified below:
Part 1: "General description of speech functions";
Part 2: "TETRA codec";
Part 3: "Specific operating features";
Part 4: "Codec conformance testing".
Clause 4 provides a complete description of the full rate speech source encoder and decoder, whilst clause 5 describes
the speech channel encoder and clause 6 the speech channel decoder.
Clause 7 describes the codec performance.
Clause 8 introduces the bit exact description of the codec. This description is given as an ANSI C code, fixed point, bit
exact. The whole C code corresponding to the TETRA codec is given in computer files attached to the present
document, and are an integral part of this multi-part deliverable.
Clause 9 describes the optional AMR codec.
Clause 10 describes the AMR speech channel encoder.
Clause 11 describes the AMR speech channel decoder.
Clause 12 introduces the AMR speech channel encoder and decoder. This description is given as an ANSI C code.
In addition to these clauses, five informative annexes are provided.
Annex A describes a possible implementation of the speech channel decoding function.
Annex B provides comprehensive indexes of all the routines and files included in the C code associated with the present
document.
Annex C describes the actual quality, performance and complexity aspects of the codec.
Annex D reports detailed results from codec characterization listening and complexity tests.
Annex E contains instructions for the use of the attached electronic files.
Annex F lists informative references relevant to the speech codec.

ETSI
8 ETSI EN 300 395-2 V1.3.1 (2005-01)
National transposition dates
Date of adoption of this EN: 21 January 2005
Date of latest announcement of this EN (doa): 30 April 2005
Date of latest publication of new National Standard
or endorsement of this EN (dop/e): 31 October 2005
Date of withdrawal of any conflicting National Standard (dow): 31 October 2005

ETSI
9 ETSI EN 300 395-2 V1.3.1 (2005-01)
1 Scope
The present document contains the full specification of the speech codecs for use in the Terrestrial Trunked Radio
(TETRA) system.
The TETRA codec specified in clauses 4 to 8 is mandatory for all TETRA mobiles and networks. The AMR codec
specified in clauses 9 to 12 is optional. If the AMR codec is implemented, the equipment shall conform to the whole of
clause 9 to 12.
2 References
The following documents contain provisions which, through reference in this text, constitute provisions of the present
document.
• References are either specific (identified by date of publication and/or edition number or version number) or
non-specific.
• For a specific reference, subsequent revisions do not apply.
• For a non-specific reference, the latest version applies.
Referenced documents which are not found to be publicly available in the expected location might be found at
http://docbox.etsi.org/Reference.
[1] ETSI EN 300 392-2: "Terrestrial Trunked Radio (TETRA); Voice plus Data (V+D); Part 2: Air
Interface (AI)".
[2] ETSI TS 126 073: "Universal Mobile Telecommunications System (UMTS); ANSI-C code for the
Adaptive Multi Rate speech codec (3GPP TS 26.073 Release 4)".
[3] ETSI TS 126 074: "Universal Mobile Telecommunications System (UMTS); Mandatory speech
codec speech processing functions; AMR speech codec test sequences (3GPP TS 26.074
Release 4)".
[4] ETSI TS 126 090: "Universal Mobile Telecommunications System (UMTS); Mandatory Speech
Codec speech processing functions AMR Speech Codec - Transcoding functions (3GPP TS 26.090
Release 4)".
3 Abbreviations
For the purposes of the present document, the following abbreviations apply:
ACELP Algebraic CELP
AMR Adaptive Multi-Rate
ANSI American National Standards Institute
BER Bit Error Ratio
BFI Bad Frame Indicator
BS Base Station
CELP Code-Excited Linear Predictive
CRC Cyclic Redundancy Code
DSP Digital Signal Processor
DTMF Dual Tone Multiple Frequency
EP Error Pattern
EQ EQualizer test
FIR Finite Impulse Response
GSM Global System for Mobile communications
HT Hilly Terrain
IRS Intermediate Reference System
ETSI
10 ETSI EN 300 395-2 V1.3.1 (2005-01)
LP Linear Prediction
LPC Linear Predictive Coding
LSF Line Spectral Frequency
LSP Line Spectral Pair
MER Message Error Rate
MNRU Multiplicative Noise Reference Unit
MOPS Million of Operations per Second
MOS Mean Opinion Score
MS Mobile Station
MSE Mean Square Error
PDF Probability Density Function
PUEM Probability of Undetected Erroneous Message
RAM Random Access Memory
RCPC Rate-Compatible Punctured Convolutional
RF Radio Frequency
ROM Read-Only Memory
SCR Source Controlled Rate
STCH STealing CHannel
TDM Time Division Multiplex
TU Typical Urban
VQ Vector Quantization
V+D Voice + Data
4 Full rate codec
4.1 Structure of the codec
The TETRA speech codec is based on the Code-Excited Linear Predictive (CELP) coding model. In this model, a block
of N speech samples is synthesized by filtering an appropriate innovation sequence from a codebook, scaled by a gain
factor g , through two time varying filters. A simplified high level block diagram of this synthesis process, as
c
implemented in the TETRA codec, is shown in figure 1.
Digital
Input
Algebraic codebook index
D
E
Pitch delay
M
U
L
T
GAIN PREDICTION
Gains I
P
AND VQ
L
E
Past
X
Excitation
g
T
p
ADAPTIVE
LPC Info
CODEBOOK
SHORT-TERM
Output
LONG-TERM SYNTHESIS FILTER
SYNTHESIS FILTER
Speech
g
k
c
ALGEBRAIC
CODEBOOK
Figure 1: High level block diagram of the TETRA speech synthesizer
The first filter is a long-term prediction filter (pitch filter) aiming at modelling the pseudo-periodicity in the speech
signal and the second is a short-term prediction filter modelling the speech spectral envelope.
ETSI
11 ETSI EN 300 395-2 V1.3.1 (2005-01)
The long-term or pitch, synthesis filter is given by:
=
(1)
−T
Bz
()
1−gz
p
where T is the pitch delay and g is the pitch gain. The pitch synthesis filter is implemented as an adaptive
p
codebook, where for delays less than the sub-frame length the past excitation is repeated.
The short-term synthesis filter is given by:
Hz==
()
p
Az
()
−i
(2)
1+ az
∑
i
i=1
where ai,,= 1.,p, are the Linear Prediction (LP) parameters and p is the predictor order. In the TETRA
i
codec p shall be 10.
The TETRA encoder uses an analysis-by-synthesis technique to determine the pitch and excitation codebook
parameters. The simplified block diagram of the TETRA encoder is shown in figure 2.
Input
Speech
LPC ANALYSIS
Unquantized
QUANTIZATION
LPC info
& INTERPOLATION
T
OPEN LOOP PERCEPTUAL
PITCH ANALYSIS WEIGHTING
Past
Excitation
g
T
p
ADAPTIVE LPC Info
CODEBOOK
SHORT-TERM
SYNTHESIS FILTER
g
k
c
ALGEBRAIC
CODEBOOK
PERCEPTUAL
MSE SEARCH
WEIGHTING
Gains M
GAIN VQ
U
L
Pitch delay (T)
T
I
Codebook index (k)
P
L
LPC info Digital
E
Output
X
Figure 2: High level block diagram of the TETRA speech encoder
ETSI
12 ETSI EN 300 395-2 V1.3.1 (2005-01)
In this analysis-by-synthesis technique, the synthetic speech is computed for all candidate innovation sequences
retaining the particular sequence that produces the output closer to the original signal according to a perceptually
weighted distortion measure. The perceptual weighting filter de-emphasizes the error at the formant regions of the
speech spectrum and is given by:
Az
()
Wz() = (3)
Az γ
()
where A(z) is the LP inverse filter (as in Equation (2)) and 0<≤γ 1. The value γ =08, 5 shall be used.
Both the weighting filter, Wz , and formant synthesis filter, Hz , shall use the quantized LP parameters.
() ()
In the Algebraic CELP (ACELP) technique, special innovation codebooks having an algebraic structure are used. This
algebraic structure has several advantages in terms of storage, search complexity, and robustness. The TETRA codec
shall use a specific dynamic algebraic excitation codebook whereby the fixed excitation vectors are shaped by a
dynamic shaping matrix (see annex F). The shaping matrix is a function of the LP model Az , and its main role is to
()
shape the excitation vectors in the frequency domain so that their energies are concentrated in the important frequency
bands. The shaping matrix used is a Toeplitz lower triangular matrix constructed from the impulse response of the filter:
Az / γ
()
Fz = (4)
()
Az / γ
()
where Az is the LP inverse filter. The values γ = 0,75 and γ = 0,85 shall be used.
()
1 2
In the TETRA codec, 30 ms speech frames shall be used. It is required that the short-term prediction parameters (or LP
parameters) are computed and transmitted every speech frame. The speech frame shall be divided into 4 sub-frames of
7,5 ms (60 samples). The pitch and algebraic codebook parameters have also to be transmitted every sub-frame.
Table 1 gives the bit allocation for the TETRA codec. 137 bits shall be produced for each frame of 30 ms resulting in a
bit rate of 4 567 bit/s.
Table 1: Bit allocation for the TETRA codec
st nd rd th
Parameter Total per frame
1 subframe 2 subframe 3 subframe 4 subframe
LP filter   26
Pitch delay 8 5 5 5 23
Algebraic code 16 16 16 16 64
VQ of 2 gains 6 6 6 6 24
Total   137
More details about the sequence of bits within the speech frame of 137 bits per 30 ms, with reference to the speech
parameters, can be found in clause 4.2.2.7, table 3.
4.2 Functional description of the codec
4.2.1 Pre- and post-processing
Before starting the encoding process, the speech signal shall be pre-processed using the offset compensation filter:
−1
 
1 1− z
 
Hz = (5)
()
p
 
−1
 1−αz 
where α = 32 735/32 768. In the time domain, this filter corresponds to:
''
s n=−sn//21sn−2+αs n−1 (6)
() () ( ) ( )
ETSI
13 ETSI EN 300 395-2 V1.3.1 (2005-01)
'
where sn is the input signal and sn is the pre-processed signal. The purpose of this pre-processing is
() ()
firstly to remove the dc from the signal (offset compensation), and secondly, to scale down the input signal in
order to avoid saturation of the synthesis filtering.
At the decoder, the post-processing consists of scaling up the reconstructed signal (multiplication by 2 with saturation
control).
4.2.2 Encoder
Figure 3 presents a detailed block diagram of the TETRA encoder illustrating the major parts of the codec as well as
signal flow. On this figure, names appearing at the bottom of the various building blocks correspond to the C code
routines associated with the present document.
Input
OFFSET
Speech INTERPOLATION
COMPENSATION LSP
Pre-processing FOR THE 4
QUANTIZATION
AND DIVISION
s(n) ^
SUBFRAMES
A(z)
BY 2
Int_Lpc4 Lsp_Az Clsp_334
Pre_Process
s'(n)
f
WINDOWING
r LEVINSON
AND
a LPC analysis DURBIN A(z)       LSP
AUTOCORRELATION
m R [ ]       A(z)
R [ ]
Lag_Window Autocorr Levin_32 Az_Lsp
e
COMPUTE
INTERPOLATE
Open-loop WEIGHTED FIND
4 SUBFRAMES
pitch search SPEECH OPEN-LOOP PITCH
LSP       A(z)
(4 SUBFRAMES)
Lsp_Az Pitch_Ol_Dec
Int_Lpc4 Pond_Ai Syn_Filt
Residu
T
^
A(z)
LSP index
COMPUTE
COMPUTE TARGET x(n)
Adaptive
FIND BEST DELAY ADAPTIVE
codebook FOR ADAPTIVE
AND GAIN CODEBOOK
search CODEBOOK
CONTRIBUTION
Pitch_Fr
Syn_Filt
Pred_Lt G_Pitch
pitch index
x(n)
s
u
b
Innovative COMPUTE TARGET FIND BEST
xn2(n)
code index
f
codebook FOR INNOVATION
r
search INNOVATION AND GAIN
a
D4i60_16 G_Code
m
e
gains index
GAINS
UPDATE FILTER
Compute COMPUTE QUANTIZATION
MEMORIES FOR
IN ENERGY
error EXCITATION
NEXT SUBFRAME
DOMAIN
Syn_Filt Ener_Qua
Figure 3: Signal flow at the encoder
ETSI
14 ETSI EN 300 395-2 V1.3.1 (2005-01)
4.2.2.1 Short-term prediction
Short-term prediction (LP or LPC analysis) shall be performed every 30 ms. The auto-correlation approach shall be
used with an asymmetric analysis window. The LP analysis window consists of two halves of Hamming windows with
different lengths. This window is given by:
 
πn
wn =−05, 4 0,46cos , nL=−01,.,
()  
L −1
 
(7)
 π()nL− 
=+05, 4 0,46cos , nL=+,.,L L−1
 
11 2
L −1
 
A 32 ms analysis window (corresponding to 256 samples with the sampling frequency of 8 kHz) shall be used with
values L = 216 and L = 40. The window shall be positioned such that 40 samples are taken from the future frame
1 2
(look-ahead of 40 samples).
The auto-correlation of the windowed speech sn′ ,n = 0,.,255 , are computed by:
()
(8)
rk() = ∑s′(n)s′(n−=k),,k 01.,0
nk=
and a 60 Hz bandwidth expansion has to be used by lag windowing the auto-correlation using the window
(see annex F):
 
 
1 2πfi
  (9)
wi=−exp , i =11,.,0
()  
lag
2  f 
 
s
 
where f = 60 Hz is the bandwidth expansion and f = 8 000 Hz is the sampling frequency. Further, r 0 is
()
0 s
multiplied by 1,00005 which is equivalent to adding a noise floor at -43 dB. In the TETRA coder, this is
'
alternatively performed by dividing the lag window as in equation (9) by 1,00005, resulting in w 01=
()
lag
and:
'
wi==w i /1,00005 i 1,.,10 (10)
() ()
lag lag
The modified auto-correlation:
''
rk()==r(k)w ()k , k 01,.,0 (11)
lag
are used to obtain the LP filter coefficients ak, = 1,.,10, by solving the set of equations:
k
ar′ i −k =−r′i,,i =11.,0 (12)
∑ () ()
k
k =1
The set of equations in (12) shall be solved using the Levinson-Durbin algorithm (see annex F).
4.2.2.2 LP to LSP and LSP to LP conversion
The LP filter coefficients of Az (ak, = 1,.,10) shall be converted to the Line Spectral Pair (LSP) representation
()
k
th
(see annex F) for quantization and interpolation purposes. For a 10 order LP filter, the LSPs are defined as the roots of
the sum and difference polynomials:
' −−11 1
Fz=+Az z Az (13)
() ( )
1 ()
ETSI
15 ETSI EN 300 395-2 V1.3.1 (2005-01)
and
' −−11 1
(14)
Fz()=−A(z) z Az
()
respectively. It can be proven that all roots of these polynomials are on the unit circle and they alternate each other
(see annex F). Fz′ has a root z =−1(ω = π) and Fz′ has a root z==1(ω 0).
() ()
1 2
To eliminate these two roots, new polynomials are defined:
...