Field Guide · term

Also known as: AACH, Access Assignment Channel, ACCESS-ASSIGN

The TETRA AACH (Access Assignment Channel) is the short signalling field carried in the centre of every TETRA downlink slot, whatever else the slot is doing.1 It carries a 14-bit ACCESS-ASSIGN PDU that names how the slot is being used — idle, control signalling, or a traffic call — and, on the uplink side, how random access to the slot is granted. Because it is present in all four TDMA slots regardless of their content, decoding the AACH frame by frame is how a receiver maps which slot is currently the control channel and which slots hold calls.

BKN1 · 216 bits AACH train AACH BKN2 · 216 bits hdr 2 field1 6 field2 6 RM(30,14) + scramble → 30 bits field1 (header ≠ 0) = downlink usage marker: control / traffic / idle
The AACH occupies two half-fields either side of a slot's training sequence; a 2-bit header and two 6-bit fields carry 14 information bits that are RM(30,14) coded and scrambled to 30 type-5 bits, and field 1 yields the downlink usage marker.

How it works

The 14 information bits split into a 2-bit access-assignment header followed by two 6-bit fields. The header selects how the fields are read. Header value 0 leaves the downlink as common control by definition; the other three header values (DLF1_ULCA, DLF1_ULAO, DLF1_ULF1) all place the downlink usage marker in field 1, while field 2 carries uplink-access information a downlink monitor does not need.

Those 14 bits are protected by a short block code rather than the convolutional chain the other signalling channels use. Per §8.3.1.1 the AACH skips RCPC and interleaving entirely: the RM(30,14) Reed–Muller code takes the 14 type-1 bits straight to 30 type-5 bits, which are then scrambled with the cell colour code. The receiver reverses that — descramble, then the maximum-likelihood RM(30,14) decode — and reports the corrected 14 bits plus a Hamming-distance metric that doubles as a confidence gate. GopherTrunk also runs a soft-decision variant of the decode that recovers the marker on marginal bursts the hard decoder mis-corrects.

The field-1 value is the AACH’s most useful output. It is a per-slot enumeration:

Marker Meaning
0 Unallocated (idle)
1 Assigned control
2 Common control
3 Reserved
≥ 4 Traffic — the value itself identifies the call occupying the slot

A marker of 1 or 2 means the slot is carrying control signalling; a marker of 4 or greater means it holds a call, and the marker value is the identifier that call was granted. That makes the AACH the demux key a voice follower routes by: the AACH decodes in every downlink slot, and a granted call’s usage marker matches the marker carried in its grant — the reliable way to keep concurrent same-carrier calls apart (see traffic slot mapping). It is also what lets a receiver follow a Single Carrier Base Station running dynamic MCCH sharing, where any of the four TDMA slots can act as the control channel at a given moment rather than a fixed slot 1.

Relevance to SDR

internal/radio/tetra/aach.go decodes the 14 recovered bits into an AccessAssign PDU and exposes DownlinkUsage, IsControlChannel, and IsTraffic; the coding chain lives in channel_coding.go (EncodeAACH / DecodeAACH / DecodeAACHSoft). Because the AACH sits in the centre of the slot next to the training sequence, a receiver that has already correlated the burst has the AACH dibits in hand for free, so reading the usage marker adds almost nothing to the per-slot cost while giving the trunk-following engine a truthful, slot-by-slot picture of what the carrier is carrying. The normal-frame interpretation here covers frames 1–17; frame 18 carries the broadcast block and can reinterpret the fields, which does not affect the steady-state downlink usage marker.

Sources

  1. Terrestrial Trunked Radio — Wikipedia, on the TETRA air interface and its TDMA slot structure. 

See also