diff options
author | Harald Welte <laforge@gnumonks.org> | 2016-11-03 14:14:01 +0100 |
---|---|---|
committer | Neels Hofmeyr <neels@hofmeyr.de> | 2018-11-27 17:54:20 +0100 |
commit | 932f6753d147ab584de92de682a442527303850f (patch) | |
tree | 41d5acd4b9673d6bda225e7c1a3bc5c2c095615e /doc | |
parent | a9b521e2cb0ea7787e8e7c5f3e441fd39f528b97 (diff) |
rtp-amr.adoc: New TCH/AHS downlink chapters
Nutaq contributed the following chapters:
* TCH/AHS Downlink: FACCH/H During DTX Operation
* TCH/AHS Downlink: Inhibited SID_UPDATE
* TCH/AHS Downlink: Inhibited SID_FIRST_P1
Change-Id: I55d8e9f98694b39514d1f31c517a80050103fdd6
Diffstat (limited to 'doc')
-rw-r--r-- | doc/manuals/abis/rtp-amr.adoc | 111 |
1 files changed, 107 insertions, 4 deletions
diff --git a/doc/manuals/abis/rtp-amr.adoc b/doc/manuals/abis/rtp-amr.adoc index fbd6b501..889a032c 100644 --- a/doc/manuals/abis/rtp-amr.adoc +++ b/doc/manuals/abis/rtp-amr.adoc @@ -1087,7 +1087,110 @@ msc { } ---- -DLOS2:: The SID_ONSET and the first voice frame are sent in the same -block of four radio bursts. Hence, the BTS must be able ot to send -actual codec payload along with the GsmL1_TchPlType_Amr_Onset -primitive. +==== TCH/AHS Downlink: Inhibited SID_FIRST_P1 + +The following procedure must be observed in case of a SID_FIRST must be inhibited. + +["mscgen"] +---- +msc { + hscale = 2; + ms [label="MS"], phy [label="BTS-PHY"], bts [label="BTS"], mgw [label="MGW"]; + + ...; + --- [label="Inhibited SID_FIRST_P1"]; + + bts <= mgw [label="RTP (AMR FT=SID,Q=1)"]; + phy => bts [label="PH-RTS.ind (TCH)"]; + phy <= bts [label="PH-DATA.req GsmL1_TchPlType_Amr_SidFirstP1"]; + ms <= phy [label="L1 burst (sub-block 3 of speech frame N-1 + sub-block 1 of SID_FIRST_P1)"]; + ms <= phy [label="L1 burst (sub-block 4 of speech frame N-1 + sub-block 2 of SID_FIRST_P1)"]; + + bts <= mgw [label="RTP (AMR FT=0..7,Q=1) MARKER=1"]; + phy => bts [label="PH-RTS.ind (TCH)"]; + phy <= bts [label="PH-DATA.req GsmL1_TchPlType_Amr_SidFirstInh"]; + phy <= bts [label="PH-DATA.req GsmL1_TchPlType_Amr (N)"]; + ms <= phy [label="L1 burst (block 1 of SID_FIRST_INH, sub-block 1 of speech frame N)"]; + ms <= phy [label="L1 burst (block 2 of SID_FIRST_INH, sub-block 2 of speech frame N)"]; + + bts <= mgw [label="RTP (AMR FT=0..7,Q=1)"]; + phy => bts [label="PH-RTS.ind (TCH)"]; + phy <= bts [label="PH-DATA.req GsmL1_TchPlType_Amr (N+1)"]; + ms <= phy [label="L1 burst (sub-block 3 of speech frame N + sub-block 1 of speech frame N+1)"]; + ms <= phy [label="L1 burst (sub-block 4 of speech frame N + sub-block 2 of speech frame N+1)"]; +} +---- + +==== TCH/AHS Downlink: Inhibited SID_UPDATE + +The following procedure must be observed in case of a SID_UPDATE must be inhibited. + +["mscgen"] +---- +msc { + hscale = 2; + ms [label="MS"], phy [label="BTS-PHY"], bts [label="BTS"], mgw [label="MGW"]; + + ...; + --- [label="Inhibited SID_UPDATE"]; + + bts <= mgw [label="RTP (AMR FT=SID,Q=1)"]; + phy => bts [label="PH-RTS.ind (TCH)"]; + bts => phy [label="PH-DATA.req GsmL1_TchPlType_Amr (SID_UPDATE)"]; + ms <= phy [label="L1 burst (sub-block 1+2 of SID_UPDATE)"]; + ms <= phy [label="L1 burst (sub-block 3+4 of SID_UPDATE)"]; + + bts <= mgw [label="RTP (AMR FT=0..7,Q=1) MARKER=1"]; + phy => bts [label="PH-RTS.ind (TCH)"]; + phy <= bts [label="PH-DATA.req GsmL1_TchPlType_Amr_SidUpdateInh"]; + phy <= bts [label="PH-DATA.req GsmL1_TchPlType_Amr (N)"]; + ms <= phy [label="L1 burst (block 1 of SID_UPDATE_INH, sub-block 1 of speech frame N)"]; + ms <= phy [label="L1 burst (block 2 of SID_UPDATE_INH, sub-block 2 of speech frame N)"]; + + bts <= mgw [label="RTP (AMR FT=0..7,Q=1)"]; + phy => bts [label="PH-RTS.ind (TCH)"]; + phy <= bts [label="PH-DATA.req GsmL1_TchPlType_Amr (N+1)"]; + ms <= phy [label="L1 burst (sub-block 3 of speech frame N + sub-block 1 of speech frame N+1)"]; + ms <= phy [label="L1 burst (sub-block 4 of speech frame N + sub-block 2 of speech frame N+1)"]; +} +---- + +==== TCH/AHS Downlink: FACCH/H During DTX Operation + +The following procedure must be observed in case of a FACCH/H frame must be inserted during DTX operation. + +["mscgen"] +---- +msc { + hscale = 2; + ms [label="MS"], phy [label="BTS-PHY"], bts [label="BTS"], mgw [label="MGW"]; + + ...; + --- [label="FACCH/H During DTX Operation"]; + + bts <= mgw [label="FACCH/H"]; + phy => bts [label="PH-RTS.ind (FACCH/H)"]; + phy => bts [label="PH-RTS.ind (TCH/H)"]; + phy <= bts [label="PH-DATA.req GsmL1_TchPlType_Amr_Onset"]; + phy <= bts [label="PH-DATA.req FACCH/H"]; + ms <= phy [label="L1 burst (block 1 of SID_ONSET, sub-block 1 of FACCH/H frame)"]; + ms <= phy [label="L1 burst (block 2 of SID_ONSET, sub-block 2 of FACCH/H frame)"]; + + phy => bts [label="PH-RTS.ind (TCH/H)"]; + phy <= bts [label="PH-EMPTY-FRAME.req"]; + ms <= phy [label="L1 burst (sub-block 3+4 of FACCH/H frame)"]; + ms <= phy [label="L1 burst (sub-block 5+6 of FACCH/H frame)"]; + + phy => bts [label="PH-RTS.ind (FACCH/H)"]; + phy => bts [label="PH-RTS.ind (TCH/H)"]; + phy <= bts [label="PH-EMPTY-FRAME.req (FACCH/H)"]; + phy <= bts [label="PH-DATA.req GsmL1_TchPlType_Amr_SidFirstP1"]; + ms <= phy [label="L1 burst (sub-block 7 of FACCH/H frame + sub-block 1 of SID_FIRST_P1)"]; + ms <= phy [label="L1 burst (sub-block 8 of FACCH/H frame + sub-block 2 of SID_FIRST_P1)"]; + + phy => bts [label="PH-RTS.ind (TCH)"]; + phy <= bts [label="PH-DATA.req GsmL1_TchPlType_Amr_SidFirstP2"]; + ms <= phy [label="L1 burst (sub-block 3 of SID_FIRST_P1, sub-block 1 of SID_FIRST_P2)"]; + ms <= phy [label="L1 burst (sub-block 4 of SID_FIRST_P1, sub-block 2 of SID_FIRST_P2)"]; +} +---- |