diff options
author | Ivan Kluchnikov <kluchnikovi@gmail.com> | 2012-10-05 18:17:57 +0400 |
---|---|---|
committer | Ivan Kluchnikov <kluchnikovi@gmail.com> | 2012-10-05 18:17:57 +0400 |
commit | 9eb552b2399a714495cff4b7dc38c70b133342bb (patch) | |
tree | 311457f5de308e5162565d9358c3f3bf90d01369 /src/tbf.txt | |
parent | a95348c03e815290aca81ef1d01fa611766dc184 (diff) | |
parent | 499ff415a92909d125499d70ba8288bbc6ed8f60 (diff) |
Merge branch 'jolly'
Conflicts:
src/gprs_bssgp_pcu.cpp
src/gprs_rlcmac.cpp
src/gprs_rlcmac_data.cpp
src/gprs_rlcmac_sched.cpp
Diffstat (limited to 'src/tbf.txt')
-rw-r--r-- | src/tbf.txt | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/src/tbf.txt b/src/tbf.txt index 82bf05ac..025e56cf 100644 --- a/src/tbf.txt +++ b/src/tbf.txt @@ -94,11 +94,27 @@ Handling of LLC Frame of downlink TBF and LLC Queue of downlink TBF: If a new LLC PDU is attached to LLC Frame during WAIT RELEASE state, the state is changed to FLOW (downlink flow is assigned to MS). + Handling of LLC Frame on uplink TBF: Received uplink blocks are appended to LLC Frame of TBF. If the PDU is complete, it is forwarded to the upper layer. + +Control TS: + On uplink or downlink assignment, it is required to have one timeslot that + can be used to receive and transmit. This timeslot is used at uplink TBF + to acknowledge and to assign other TBF. This timeslot is used at downlink + TBF to poll acknowledgement and to assign other TBF. + + The first common TS (first_common_ts) is calculated when channels are + allocated. After creation of TBF or after assignment to different TS layout, + the first common TS is used for control TS. + + The first common TS (and so control TS) must not need to be allocated to + MS as uplink TBF. (E.g. in case of non-available USF for this slot) + + Polling: In order to poll uplink control block from MS, a special poll state and frame number is stored at TBF. The scheduler reads that value and will not @@ -109,3 +125,37 @@ Polling: - The received frame is bad (BFI). - The GSM indicates that the block should have been already received. + Because polling requires uplink response from MS, the polling must be + performed at control TS. + + +Data structures of TBFs and PDCHs: + + There is a global structure for BTS. + + The BTS structure has 8 TRX structures. + + Each TRX structure has 8 PDCH structures, one for each timeslot. + + There are two linked lists of TBF instances: + - uplink TBFs + - downlink TBFs + + Each TBF instance also has: + - a direction + - a TFI of range 0..31 + - an array of 8 PDCH structures, one for each assigned timeslot + - in case of uplink TBF: an array of 8 USFs, one for each assigned timeslot + + Each PDCH structure also has: + - an array of 32 uplink TBFs that are assigned to this PDCH + - an array of 32 downlink TBFs that are assigned to this PDCH + + On creation of a new TBF, it links to all assigned PDCHs. + Each PDCH links to that TBF. The TBF is added to the list of TBFs. + In case of uplink TBF: The allocated USFs are stored for each timeslot. + + On release of a TBF, the link to this PDCH is removed from all assigned + PDCHs. The TBF is removed from the list of TBFs. The TBF is destroyed. + + |