[go: up one dir, main page]

HK1077425B - System and method for avoiding stall using timer for high-speed downlink packet access system - Google Patents

System and method for avoiding stall using timer for high-speed downlink packet access system Download PDF

Info

Publication number
HK1077425B
HK1077425B HK05109396.6A HK05109396A HK1077425B HK 1077425 B HK1077425 B HK 1077425B HK 05109396 A HK05109396 A HK 05109396A HK 1077425 B HK1077425 B HK 1077425B
Authority
HK
Hong Kong
Prior art keywords
data block
timer
data
data blocks
buffer
Prior art date
Application number
HK05109396.6A
Other languages
Chinese (zh)
Other versions
HK1077425A1 (en
Inventor
李承俊
吕运荣
李昭暎
Original Assignee
Lg电子株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from KR20020000632A external-priority patent/KR100747464B1/en
Application filed by Lg电子株式会社 filed Critical Lg电子株式会社
Publication of HK1077425A1 publication Critical patent/HK1077425A1/en
Publication of HK1077425B publication Critical patent/HK1077425B/en

Links

Description

System and method for avoiding stall using timer for high speed downlink packet access system
Technical Field
The present invention relates generally to wireless communications, and more particularly, to a system and method for improving the transmission efficiency of packet data received by a receiver in a mobile radio communication system.
Background
The Universal Mobile Telecommunications System (UMTS) is a third generation mobile communication system that has evolved from a standard known as the global system for mobile communications (GSM). This standard is the european standard which is directed to providing an improved mobile communication service based on the GSM core network and wideband code division multiple access (W-CDMA) technology. In 12 months 1998, ETSI in europe, ARIB/TTC in japan, T1 in the us, and TTA in korea constitute the third generation partnership project (3GPP) for the purpose of creating specifications for standardizing UMTS.
The work performed by 3GPP to standardize UMTS has led to the formation of five technical specification groups (TGS), each of which is directed to forming network elements with independent operation. More specifically, each TSG develops, approves, and manages one standard specification in the relevant area. Among them, a Radio Access Network (RAN) group (TSG-RAN) develops specifications for required functions, items, and interfaces of a UMTS Terrestrial Radio Access Network (UTRAN), which is a new RAN supporting a W-CDMA access technology in UMTS.
The TSG-RAN group includes one group which is present collectively and four workgroups. Working group 1(WG1) developed a specification for the physical layer (first layer). Working group 2(WG2) specifies the functions of a data link layer (second layer) and a network layer (third layer). Working group 3(WG3) defines a specification for the interface between base stations, Radio Network Controllers (RNCs) and the core network in UTRAN. Finally, working group 4(WG4) discusses the requirements needed for estimating radio link performance and the items needed for radio resource management.
Fig. 1 shows the structure of 3GPP UTRAN. This UTRAN 10 includes one or more Radio Network Subsystems (RNSs) 120 and 130. Each RNS120 and 130 includes an RNC 121 and 131 and one or more node bs 122 and 123 and 132 and 133 (e.g., base stations) managed by the RNC. The RNCs 121 and 131 are connected to a Mobile Switching Center (MSC)141 which performs communication with a handover circuit of the GSM network. The RNC is also connected to a serving general packet radio service support node (SGSN)142 which performs communication of handover packets with a General Packet Radio Service (GPRS) network.
The node B receives information transmitted through a physical layer of the terminal 150 (e.g., a mobile station, user equipment, and/or subscriber unit) through an uplink and transmits data to the terminal 150 through a downlink, which are managed by the RNC. Thus, the node B operates as an access point of the UTRAN for the terminal 150.
The RNC performs functions including allocation and management of radio resources. One RNC that directly manages the node B is referred to as a controlling RNC (crnc). The CRNC manages common radio resources. On the other hand, the serving rnc (srnc) manages dedicated radio resources allocated to each terminal. The CRNC may be the same as the SRNC. However, when the terminal moves to another RNC area deviating from the SRNC area, the CRNC may be different from the SRNC. Since the physical location of the various elements in a UMTS network may vary, an interface to the elements is necessary. The node B and the RNC are connected to each other through an lub interface. The two RNCs are connected to each other via an lur interface. The interface between the RNC and the core network is called lu.
Fig. 2 illustrates a structure of a radio access interface protocol between a terminal operating based on a 3GPP RAN and a UTRAN. The physical layer (PHY), the data link layer, and the network layer horizontally form a radio access interface protocol and are vertically divided into a control plane for transmitting control information and a user plane for transmitting data information. The user plane is an area into which user traffic information, such as voice or IP packets, is to be transmitted. The control plane is an area into which maintenance and management, such as network interfaces or calls, is to be sent.
In fig. 2, protocol layers may be divided into a first layer (L1), a second layer (L2), and a third layer (L3) according to three lower layers of an Open System Interconnection (OSI) standard model well known in the communication system.
The first layer (L1) operates as a physical layer (PHY) for the radio interface and is connected to an upper Medium Access Control (MAC) layer through one or more transport channels. The physical layer transmits data delivered to the physical layer (PHY) to a receiver through a transport channel using various coding and modulation methods suitable for a radio environment. The transport channel is divided into a dedicated transport channel and a common transport channel according to whether the transport channel between a physical layer (PHY) and a MAC layer is dedicated to a single terminal or shared by several terminals.
The second layer L2 operates as a data link layer and allows terminals to share the radio resources of the W-CDMA network. The second layer L2 is divided into a MAC layer, a Radio Link Control (RLC) layer, a Packet Data Convergence Protocol (PDCP) layer, and a broadcast/multicast control (BMC) layer.
The MAC layer transfers data through an appropriate mapping relationship between logical channels and transport channels. The logical channel connects the upper layer to the MAC layer. Various logical channels are provided according to the type of information transmitted. Generally, when information of the control plane is transmitted, a control channel is used. When transmitting information of the user plane, a traffic channel is used. The MAC layer is divided into two sub-layers depending on the function performed. The two sublayers are the MAC-d sublayer located in the SRNC and managing dedicated transport channels and the MAC-c/sh sublayer located in the CRNC and managing common transport channels.
The RLC layer forms a suitable RLC Protocol Data Unit (PDU) suitable for transmission by the segmentation and concatenation function of an RLC Service Data Unit (SDU) received from an upper layer. The RLC layer also performs an automatic repeat request (ARQ) function by which RLC PDUs lost during transmission are retransmitted. The RLC layer operates in three modes: transparent Mode (TM), Unacknowledged Mode (UM), and Acknowledged Mode (AM). The selection of the mode depends on a method used to process the RLC SDU received from the upper layer. There is an RLC buffer in the RLC layer, which stores RLC SDUs or RLC PDUs received from an upper layer.
The Packet Data Convergence Protocol (PDCP) layer is an upper layer of the RLC layer, which allows data items to be transmitted through a network protocol, such as IPv4 or IPv 6. Efficient IP packet transmission can be performed using a header compression technique for compressing and transmitting header information in a packet.
The broadcast/multicast control (BMC) layer allows messages to be sent from a Cell Broadcast Center (CBC) over the radio interface. The main function of the BMC layer is to schedule and send cell broadcast messages to the terminals. Generally, data is transmitted through the RLC layer operating in unacknowledged mode.
The PDCP layer and the BMC layer are connected to the SGSN because a packet switching method is used and are located only in the user plane because they transmit only user data. Unlike the PDCP layer and the BMC layer, the RLC layer may be included in a user plane and a control plane according to one layer connected to an upper layer. When the RLC layer belongs to the control plane, data is received from a Radio Resource Control (RRC) layer. In other cases, the RLC layer belongs to the user plane. Generally, a transmission service of user data provided from the user plane to an upper layer through the second layer (L2) is referred to as a Radio Bearer (RB). A service of transmitting control information provided from the control plane to an upper layer through the second layer (L2) is referred to as a Signaling Radio Bearer (SRB). As shown in fig. 2, there may be multiple inputs in the RLC and PDCP layers. This is because one terminal has multiple RBs and one or two RLC inputs, while for one RB, only one PDCP input is generally used. The input of the RLC layer and the PDCP layer may perform independent functions in each layer.
The RRC layer located at the lowest portion of the third layer (L3) is defined only in the control plane, and controls logical channels, transport channels, and physical channels related to the setting, reconfiguration, and release of RBs. At this time, setting up the RB means some processes of stipulating the characteristics of a protocol layer and a channel required to provide a specific service and set each detailed parameter and operation method. It is possible to transmit a control message received from an upper layer through an RRC message.
The above W-CDMA system attempts to obtain a 2Mbps transmission speed in the case of indoor and pico-cell and a 384kbps transmission speed under general radio conditions. However, as the wireless internet becomes more popular and the number of subscribers increases, more and more various services will be provided. To support these services, higher transmission speeds are expected to be required. In the current 3GPP association, research is being conducted to provide high transmission speed by developing W-CDMA networks. A representative system is known as a High Speed Downlink Packet Access (HSDPA) system.
HSDPA systems are based on WCDMA. It supports a maximum speed of 10Mbps to the downlink and is expected to provide shorter delay times and increased capacity than existing systems. The following techniques have been applied to HSDPA systems in order to provide higher transmission speeds and expanded capacity: link Adaptation (LA), hybrid automatic repeat request (HARQ), Fast Cell Selection (FCS), and multiple-input, multiple-output (MIMO) antennas.
The LA uses one Modulation and Coding Scheme (MCS) suitable for the channel condition. When the channel condition is good, a high degree modulation such as 16QAM or 64QAM is used. When the channel condition is poor, a low degree of modulation such as QPSK is used.
In general, the low modulation method supports less transmission traffic than the high modulation method. However, in low degree modulation methods, the transmission success rate is high when the channel conditions are not ideal, and thus it is advantageous to use this form of modulation when the effects of fading or interference are large. On the other hand, the frequency efficiency in the high degree modulation method is superior to that in the low degree modulation method. In the high modulation method, for example, it is possible to obtain a transmission speed of 10Mbps in W-CDMA using a bandwidth of 5 MHz. However, the highly modulated approach is extremely sensitive to noise and interference. Therefore, when the user terminal is located close to the node B, it is possible to improve transmission efficiency using 16QAM or 64 QAM. And a low modulation method such as QPSK is useful when the terminal is located at a cell boundary or when the influence of fading is large.
The HARQ method is a retransmission method different from the existing retransmission method used in the RLC layer. The HARQ method is used together with the physical layer, and guarantees a high decoding success rate by combining retransmitted data with previously received data. That is, packets that failed to be sent are not discarded but stored. The stored packet is combined with the retransmission packet in a step before decoding, and decoding is performed. Therefore, when the HARQ method is used together with the LA, it is possible to greatly increase the transmission efficiency of the packet.
The FCS method is similar to the prior art soft handover. That is, the terminal may receive data from each cell. However, the terminal receives data from a single cell having the best channel condition in consideration of the channel condition of each cell. The related art soft handover method uses diversity to increase a transmission success rate, in particular, by receiving data from each cell. However, in the FCS method, data is received from a specific cell in order to reduce interference between cells.
With regard to the MIMO antenna system, various independent radio waves propagating in dispersive channel conditions are used to increase the transmission speed of data. A MIMO antenna system generally includes several transmission antennas and several reception antennas so that diversity gain is obtained by reducing correlation between radio waves received by each antenna.
Therefore, the HSDPA system adopts a new technology based on the WCDMA network. However, in order to migrate new technologies, modifications are inevitable. As a representative example, the functionality of the node B is improved. That is, although most of the control functions are located in the RNC in the WCDMA network, the node B manages new techniques of the HSDPA system in order to get faster adjustment of the channel conditions and to reduce the delay time in the RNC. However, from the RNC's point of view, the enhanced functionality of the node B is not meant to replace the functionality of the RNC, but is intended to supplement these functions for high speed data transmission.
Therefore, in the HSDPA system, the node B is modified to perform some MAC functions unlike in the WCDMA system. The modified layer that performs some of the MAC functions is referred to as the MAC-hs sublayer.
The MAC-hs sublayer is situated above the physical layer and can perform packet scheduling and LA functions. The MAC-HS sublayer also manages a new transport channel known as HS-DSCH (high speed downlink shared channel) for HSDPA data transmission. When data is exchanged between the MAC-HS sublayer and the physical layer, HS-DSCH channels are used.
Fig. 3 shows a radio interface protocol structure supporting the HSDPA system. As shown, the MAC layer is divided into a MAC-d sublayer, a MAC-c/sh sublayer, and a MAC-hs sublayer. The MAC-hs sublayer is located above the physical layer (PHY) of the node B. The MAC-c/sh sub-layer and the MAC-d sub-layer are located in the CRNC and the SRNC. A new transmission protocol involving the HS-DSCH Frame Protocol (FP) is used between the RNC and the node B or between the RNCs for HSDPA data transfer.
The MAC-c/sh sublayer, the MAC-d sublayer, and the RLC layer, which are located above the MAC-hs sublayer, perform the same functions as those of the current system. Thus, the HSDPA system can be fully supported by slightly modifying the current RNC.
Fig. 4 shows a structure of a MAC layer used in the HSDPA system. The MAC layer is divided into a MAC-d sublayer 161, a MAC-c/sh sublayer 162, and a MAC-hs sublayer 163. The MAC-d sublayer in SRNC manages dedicated transport channels for a specific terminal. The MAC-c/sh sublayer in CRNC manages common transport channels. The MAC-HS sublayer in the node B manages the HS-DSCH. In this configuration, the functions performed by the MAC-c/sh sublayer 162 in the HSDPA system are reduced. That is, the MAC-c/sh sublayer allocates a common resource shared by terminals in the conventional system and processes the common resource. However, in the HSDPA system, the MAC-c/sh sublayer simply performs a flow control function for data transfer between the MAC-d sublayer 161 and the MAC-hs sublayer 163.
Referring to fig. 4, how data received from the RLC layer is processed and transferred to the HS-DSCH in the MAC layer will be described. First, a path of an RLC PDU transmitted from the RLC layer through a dedicated logical channel, i.e., a Dedicated Traffic Channel (DTCH) or a Dedicated Control Channel (DCCH), is determined by a channel switching function in the MAC-d layer. When the RLC PDU is transferred to a Dedicated Channel (DCH), a relevant header is attached to the RLC PDU in the MAC-d sublayer 161 and the RLC PDU is transferred to a physical layer through the DCH. When the HS-DSCH channel of the HSDPA system is used, the RLC PDU is transferred to the MAC-c/sh sublayer 162 through a channel switching function. When one transport channel is used for a plurality of logical channels, RLC PDUs are transmitted through one transport channel multiplex block. During the process
Identification information (control/traffic (C/T) field) of a logical channel to which each RLC PDU belongs is added. Also, each logical channel has a priority. The data of the logical channels have the same priority.
When transmitting the MAC-d PDU, the MAC-d sublayer 161 transmits the priority of the MAC-d PDU. The MAC-c/sh sublayer 162 receiving the MAC-d PDU simply transfers the data received from the MAC-d sublayer 161 to the MAC-hs sublayer 163. The MAC-d PDUs delivered to the MAC-hs sublayer 163 are stored in a transmit buffer in the scheduling block. There is one transmit buffer per priority level. Each MAC-hs SDU (MAC-d pdu) is stored in sequence in a transmission buffer corresponding to its priority.
The appropriate data block size is selected by the scheduling function according to the channel conditions. Thus, a data block is formed by one or more MAC-hs SDUs.
A priority class identifier and a transmission sequence number are added to each data block and each data block is transferred to the HARQ block.
There are a maximum of 8 HARQ processes in the HARQ block. The data block received from the scheduling block is transmitted to the appropriate HARQ process. Each HARQ process operates in a stop and wait (SAW) ARQ. In this method, the next data block is not transmitted until after the current data block is successfully transmitted. As described above, since only one data block is transmitted in one TTI, only one HARQ process is activated in one TTI.
Additional HARQ processes wait until their turn. Each HARQ process has a HARQ process identifier. Through the downlink control signal, the terminal has previously known a corresponding HARQ process identifier, so that a specific data block is transmitted through the same HARQ process in the transmitter (UTRAN) as well as in the receiver (terminal). The HARQ process that transmits the data block also stores the data block for future retransmission. When a non-acknowledgement (NACK) is received from the terminal, the HARQ process retransmits the data block.
When receiving an Acknowledgement (ACK) from the terminal, the HARQ process deletes the corresponding data block. And prepares for transmission of a new block of data. When transmitting a data block, a Transport Format and Resource Combination (TFRC) block selects a TFC that is appropriate for the HS-DSCH.
Fig. 5 illustrates a MAC layer structure of a terminal used in the HSDPA system. The MAC layer is divided into a MAC-d sublayer 173, a MAC-c/sh sublayer 172, and a MAC-hs sublayer 171. Unlike UTRAN, the three sublayers are located in the same place. The MAC-d sublayer and the MAC-c/sh sublayer in the terminal are almost the same as in UTRAN, but the MAC-hs sublayer 171 is slightly different because the MAC-hs sublayer in UTRAN performs only transmission and the MAC-hs sublayer in the terminal performs only reception.
The manner in which the MAC layer receives data from the physical layer and transfers data to the RLC layer will now be described. The data block transmitted to the MAC-HS sublayer 171 over the HS-DSCH is first stored in one of the HARQ processes in the HARQ block. It is known from the HARQ process identifier included in the downlink control signal in which process the data block is stored.
When there is an error in the data block, the HARQ process storing the data block transmits NACK information to the UTRAN and requests retransmission of the data block. When there is no error, the HARQ process transfers the data block to the reordering buffer and sends ACK information to the UTRAN. The re-ordering buffer has a priority like the transmit buffer in UTRAN. The HARQ process transmits the data blocks to the corresponding reordering buffer with the help of the priority level identifiers included in the data blocks. An important feature of the reorder buffer is that it supports in-order delivery of data.
The data blocks are sequentially transferred to an upper layer according to a Transmission Sequence Number (TSN). In particular, when a data block is received while one or more previous data blocks are being lost, the data block is stored in the reorder buffer and is not delivered to an upper layer. Instead, the stored data block is transferred to the upper layer only if all previous data blocks are received and transferred to the upper layer. Because several HARQ processes operate, the re-ordering buffer may receive data blocks out of sequence. Therefore, an in-order transfer function is used for the reorder buffer so that data blocks can be sequentially transferred to an upper layer.
One difference between the re-ordering buffer of the terminal and the transmission buffer of the UTRAN is that the re-ordering buffer stores data in units of data blocks composed of one or more MAC-hs SDUs, and the transmission buffer stores data in units of MAC-hs SDUs (═ MAC-d PDUs). Since the MAC-d sublayer 173 processes data in units of MAC-d PDUs, when the re-ordering buffer of the terminal MAC-hs sublayer 171 transfers data blocks to the MAC-d sublayer 173, the re-ordering buffer must first break the data blocks into MAC-d PDUs and then transfer them to the MAC-d sublayer. The MAC-c/sh sublayer 172 transfers the MAC-d PDU received from the MAC-hs sublayer 171 to the MAC-d sublayer. The MAC-d sublayer 173, which receives the MAC-d PDU, checks a logical channel identifier (C/T field) included in each MAC-d PDU in the transport channel multiplexing block and transmits the MAC-d PDU to the RLC through the corresponding logical channel.
Fig. 6 illustrates some processes for transmitting and receiving data blocks in an HSDPA system. The MAC-d PDUs are actually stored in the transmit buffer 180. However, for convenience, it is shown as a data block (one or more MAC-d PDUs). The size of the individual data blocks may vary. However, for illustrative purposes, the sizes shown are the same. It is also assumed that there are eight HARQ processes 181 to 188.
The process includes transmitting a data block having a transmit sequence number in a transmit buffer from TSN-13 to TSN-22 to a receiver. The data block with the lower TSN is first used for the empty HARQ process. For example, as shown, data block TSN 13 is transmitted to HARQ process #1181, and data block TSN 14 is transmitted to HARQ process # 8. It is clear from this description that the TSN is independent of the HARQ process number.
When the HARQ process receives an arbitrary data block, the HARQ process transmits the data block to the receiver in a specific TTI, and stores the data block for retransmission that may be performed later. Only one data block may be transmitted in a certain TTI. Thus, only one HARQ process is activated in a single TTI. The HARQ process transmitting a data block informs the receiver of its process number through a downlink control signal transmitted through a channel different from the channel transmitting the data block.
The reason why the HARQ process of the transmitter is consistent with that of the receiver is that each HARQ process pair uses a stop-and-wait ARQ method. That is, HARQ process #1181 transmitting data block TSN 13 does not transmit another data block until after the data block is successfully transmitted. Because receiver HARQ process #1191 can know through the downlink control signal that data corresponding to a TTI has been transmitted thereto, when a data block is not successfully received in a defined Transmission Time Interval (TTI), receiver HARQ process #1 transmits NACK information to the transmitter through the uplink control signal. On the other hand, when a data block is successfully received, the receiver HARQ process #1 transmits ACK information to the transmitter while transmitting the corresponding data block to the reordering buffer according to priority.
There is a priority level for each reorder buffer. The HARQ process checks the priority included in the header information of the data block and transfers the data block to the re-ordering buffer according to the priority. Then, when all the previous data blocks are transferred to the upper layer, the data blocks transferred to the re-ordering buffer are transferred to the upper layer. However, when one or more previous data blocks are not transferred to the upper layer, the data blocks are stored in the reorder buffer 190. That is, the reorder buffer must support in-order delivery of data blocks to upper layers. Data blocks that are not transferred to the upper layer are stored in a reorder buffer.
To illustrate the above, fig. 6 shows that when the data block TSN is received 14 but the data block TSN is not received 13, the data block TSN is stored 14 in the re-ordering buffer until the data block TSN is received 13. When the data block TSN 13 is received, two data blocks are transferred to an upper layer in the order of TSN 13 and TSN 14. When the data blocks are transferred to the upper layer, they are decomposed in units of MAC-d PDUs and transferred as described above.
The re-ordering buffer transfer process is susceptible to stall conditions (stallcondition) as described below. Because the reorder buffer supports in-order delivery of data blocks, when a data block with a later TSN is not received, the data block is not delivered to the upper layer but is stored in the reorder buffer. When a particular data block is not received for a long time or permanently, the data block in the reorder buffer is not transferred to the upper layer. Furthermore, after a short period of time, no further data blocks can be received because the buffer is full, resulting in a stall condition.
When the stall time occurs and a specific data block cannot be transmitted for a long time or never, the transmission efficiency of the HSDPA system deteriorates. In particular, when a large number of data blocks are stored in the buffer of the MAC-hs for a long time due to a single missing data block, the overall data transmission efficiency of the system is reduced. This undermines many of the advantages of HSDPA systems, such as its ability to provide high speed data communications.
In an attempt to overcome this problem, the existing methods take the following approaches. When the receiver does not successfully receive the data block for a certain amount of time, the receiver stops waiting for the lost data block and then transmits the received data block to an upper layer. As a result, all data blocks successfully received and stored in the re-ordering buffer are lost, thus deteriorating communication quality and transmission efficiency.
Incidentally, it is noted that data may not be permanently received for one of the following two reasons:
1) the UTRAN misinterprets the NACK signal sent by the terminal as an ACK signal; and
2) the HARQ process of the UTRAN discards the corresponding data block because the data block has been retransmitted up to the maximum number of times allowed by the system or cannot be successfully performed for a defined time.
In case 1), the UTRAN performs erroneous decoding of the status information transmitted by the terminal. In case 2), the UTRAN discards the specific data block because the specific data block cannot be successfully transmitted for a long time. However, the UTRAN does not inform the terminal of this fact. In this case, since the corresponding data block is not transmitted permanently, the subsequent data block is stored in the reorder buffer without being transferred to the upper layer. Therefore, the protocol is delayed, which is a big problem.
There is therefore a need for an improved method of increasing the efficiency and quality of voice and data transmission in a mobile communication system, and in particular, a method that achieves these advantages while correcting for stall conditions in the re-ordering buffer of a communication receiver.
Disclosure of the invention
An object of the present invention is to provide a system and method for improving communication quality in a mobile communication system.
It is another object of the present invention to achieve the above object by preventing a stall condition in a user terminal in a way that simultaneously improves the transmission efficiency of the system.
It is another object of the present invention to achieve the above object using a stall timer that limits the amount of time a data block is stored in a re-ordering buffer of a receiver.
It is another object of the invention to set the period of the stall timer to a value that prevents the occurrence of a return condition with respect to the sequence number assigned to the data block stored in the buffer.
It is a further object of this invention to provide a system and method that prevents stall conditions in a re-ordering buffer and at the same time prevents loss of correctly received data blocks stored in the buffer.
These and other objects and advantages of the present invention are achieved by providing a method of preventing a stall condition in a user terminal by receiving a data block SN, detecting that no data block SN has been received with a transmit sequence number earlier in order than the transmit sequence number of the data block SN, storing the data block SN in a reordering buffer, and outputting the data block SN from the buffer when a first time period of a timer expires. For example, a user terminal may be configured to operate in a High Speed Downlink Packet Access (HSDPA) mobile communication system, and the re-ordering buffer is preferably implemented in the MAC layer of the terminal. If so implemented, the buffer may receive data blocks from the physical layer via the HS-DSCH channel and may output the data blocks to an upper layer, such as the RLC layer.
Further steps of the method include receiving an earlier-in-order data block during a first timer period and then transmitting the earlier-in-order data block and the data block SN to an upper layer. The data blocks that precede in order may be transmitted in one of a number of ways. According to one embodiment, when the first timer period expires, the data block with the prior order and the data block SN may be transmitted to the designated destination. Advantageously, this step can be performed even if at least one other data block with an order-preceding transmission sequence number has not been received.
According to another embodiment, if the preceding data block is received before the first timer period expires and is the only missing data block preceding the data block SN, the preceding data block and the data block SN are transmitted to the designated destination and the timer is stopped.
According to another embodiment, at a moment in time when the data block SN is received, it is detected that a number of data blocks with transmission sequence numbers in the order first will be lost. In this case, when at least one prior-order data block is received before the expiration of the first timer period, the received prior-order data block is immediately transferred to the designated destination if there is no prior missing data block prior in order to the data block. Otherwise, the received data block with the preceding order is transmitted together with the data block SN after the expiration of the first timer time period.
According to another embodiment, data blocks having subsequent transmission sequence numbers are received during a first timer time period. The data block SN and the subsequent data block are then transferred to the designated destination when the first timer period expires, but only if the subsequent data block and the data block SN have sequential transmission sequence numbers.
According to another embodiment, data blocks having subsequent transmission sequence numbers are received during a first timer time period. When this occurs, the preceding data block and data block SN are transferred to the designated destination when the first timer period expires, and the succeeding data block is also transferred when the first timer period expires, but only when the succeeding data block and data block SN have sequential transmission sequence numbers.
According to another embodiment, a plurality of data blocks having subsequent transmission sequence numbers are received during a first timer time period. When this occurs, a plurality of subsequent data blocks are transmitted to the designated destination together with the data block SN when the first timer period expires, but only if the data block SN and the plurality of subsequent data blocks have sequential transmission sequence numbers.
According to another embodiment, a plurality of data blocks having subsequent transmission sequence numbers are received, and the presence of at least one missing data block M in the plurality of subsequent data blocks is detected. The data block SN and one or more subsequent blocks may have sequential transmission sequence numbers, while the missing data block M has a transmission sequence number following the transmission sequence number of one or more subsequent data blocks sequentially following the transmission sequence number of the data block SN. When this occurs, one or more data blocks having a transmission sequence number sequentially following the transmission sequence number of the data block SN are transferred to the designated destination when the first timer period expires. The transferred data blocks are then discarded from the buffer, while the remaining subsequent data blocks (i.e. those having a transmission sequence number following the transmission sequence number of the missing data block M) are stored in the buffer.
According to another embodiment, the second time period of the timer may be started based on the remaining subsequent blocks having the highest transmission sequence number. When this occurs, each remaining subsequent data block is transferred to the designated destination after all preceding missing data blocks in the order of receipt or after expiration of the second timer period.
The invention is also a computer program having code portions for performing the steps included in any of the embodiments of the method of the invention discussed herein. The computer program may be written in any computer language that is supportable in the user terminal and may be stored on a permanent or removable computer readable medium in or interfaced with the terminal.
The invention is also a method for controlling a reorder buffer. The buffer is preferably located in the communication receiver but may be implemented in other parts of the communication system if desired. The method includes providing a timer that controls the storage of the data block in the buffer and sets a time period of the timer to a value that prevents a return of a sequence number assigned to the data block.
According to another embodiment, a method of processing packet data in a receiver of a communication system receives data blocks having sequence numbers, stores the data blocks in a reorder buffer, and starts a timer of the reorder buffer if a data block having an earlier-ordered sequence number is lost. Here, the timer is only a timer provided for controlling the re-ordering buffer. Preferably, the timer is started only when the data block with the sequence number preceding it is lost and the timer is not working.
A further step of the method comprises determining whether the data block can be immediately transferred to an upper layer. If so, the data block is transferred to the upper layer without storing it in the reorder buffer. If not, the data block is stored in the reorder buffer. Also, the step of determining whether the timer is operating may be performed before the step of starting. If the timer is active, the start-up step need not be performed.
Further steps include receiving at least one additional data block after the timer has been started and storing the at least one additional data block in a reorder buffer. The additional data blocks may have sequence numbers that precede in order. In this case, when the additional data block has not previously been lost, or when the timer expires, the additional block can be taken out of the buffer and transferred to an upper layer. The additional data blocks may have consecutive sequence numbers. In this case, if the succeeding sequence number of the additional data block sequentially follows the data block having the sequence number, the additional block can be taken out of the re-ordering buffer and transferred to the upper layer when the timer expires. If the sequence number of the additional data block is not sequentially following, the additional data block may continue to be stored in the buffer after the timer expires. The timer may then be restarted for the data block stored in the buffer having the highest sequence number in the buffer.
According to another embodiment, a method of processing packet data in a receiver of a communication system includes starting a timer of a reorder buffer, receiving a data block having a sequence number, storing the data block in the reorder buffer, and retrieving the data block from the reorder buffer when the timer expires if the sequence number of the data block is in an order prior to the sequence number of the data block received and stored in the reorder buffer at a time when the timer was started.
According to another embodiment, the present invention provides a user terminal comprising a resequencing buffer for storing data blocks having sequence numbers, a timer and a controller, said controller starting said timer of the resequencing buffer if a data block having a sequence number preceding in sequence is lost, wherein said timer is only one timer provided for controlling the resequencing buffer. The controller starts the timer if a data block of the sequence number preceding the sequence number is lost and the timer is inactive. The controller may also determine whether the data block of the sequence number that precedes the order can be immediately transferred to an upper layer. If the data block cannot be immediately transferred to the upper layer, the buffer will store the data block of the sequence number preceding the order in the reorder buffer. If the data block can be immediately transferred, the buffer outputs the block to an upper layer.
The reorder buffer also stores at least one additional data block in the reorder buffer at the time the timer is started. The additional data block may be a missing data block having a sequence number preceding the order. If so, the additional data block is fetched from the re-ordering buffer when the timer expires and is transferred to the upper layer. The additional data block may also be a subsequent sequence number, if so, the data block is fetched from the re-ordering buffer and transferred to the upper layer if its subsequent sequence number follows the data block with said sequence number in order when the timer expires.
If, after the timer expires, the subsequent sequence number of the additional data block does not follow the data block having said sequence number in sequence, the reorder buffer will continue to store the additional data block in the reorder buffer. In this case, the controller will determine whether the data block stored in the buffer has the highest sequence number and will restart the timer.
According to another embodiment, a method of processing packet data in a receiver of a communication system includes receiving a data block, storing the data block in a reorder buffer, starting a timer of the reorder buffer, and transmitting the data block from the reorder buffer to an upper layer when the timer expires. In this embodiment, the data blocks are transferred sequentially in the transfer step, but may not be in order.
Sequential transmission differs from in-order transmission in that the sequence numbers of two adjacent transmitted data blocks may not be consecutive. I.e. to allow loss of data blocks between transmitted data blocks.
Examples) the transmission data block has the following sequence number.
14, 15, 17, 19, 24, 25, 26, 28, → allowing the data blocks to be lost, but should be transferred sequentially.
If we apply in-order transfer for the above example, then the data block with sequence number greater than 16 is not transferred until after the data block 16 is transferred. The sequence number of the transmitted data block must be: 14, 15, 16, 17, 18, 19.→ the data blocks are not allowed to be lost and should be transferred sequentially.
In contrast, the reorder buffer may receive data blocks out of order. In this case, out-of-order reception means that the re-ordering buffer may receive data blocks with a higher TSN earlier than data blocks with a lower TSN. For example, the reorder buffer receives blocks of data as such.
15,20,14,16,23,24,17,18,...
The present invention represents an important improvement over conventional approaches to preventing stall conditions in a communication system. The present invention improves transmission efficiency and communication quality at a receiver by correctly transmitting received data blocks, which would be lost in conventional systems. The present invention also eliminates the cumulative delay problem that occurs in the receiver as a TSN return case. With these improvements, the present invention will allow user terminals to meet or exceed the performance standards required for so-called next generation wireless systems.
Additional advantages, objects, and features of the invention will be set forth in part in the description which follows and in part will become apparent to those having ordinary skill in the art upon examination of the following or may be learned from practice of the invention. The objects and advantages of the invention, as particularly pointed out in the appended claims, may be realized and attained.
Brief Description of Drawings
The present invention will be described in detail with reference to the following drawings, wherein like reference numerals refer to like elements, and wherein:
fig. 1 shows a structure of a 3GPP UTRAN in a 3GPP communication system.
Fig. 2 shows the structure of a radio access interface protocol between a terminal and a UTRAN operating according to the 3GPP RAN specifications.
Fig. 3 shows a radio interface protocol structure supporting the HSDPA system.
Fig. 4 shows a structure of a MAC layer used in the HSDPA system, which includes a MAC-d sublayer, a MAC-c/sh sublayer, and a MAC-hs sublayer.
Fig. 5 shows a structure of a MAC layer of a user terminal in the HSDPA system.
Fig. 6 illustrates a procedure for transmitting and receiving a data block in an HSDPA system.
Fig. 7 shows a user terminal according to a preferred embodiment of the present invention.
Figures 8A-8C illustrate steps included in a method for avoiding stall conditions in a reorder buffer, according to one embodiment of the present invention.
Fig. 9 shows a timing chart illustrating a first control procedure according to the present invention.
Fig. 10A and 10B illustrate another embodiment of the method of the present invention for avoiding stall conditions in HSDPA systems.
Fig. 11A-11C illustrate how the maximum value of the worst-case linger timer time period T1 is calculated.
Fig. 12A and 12B show an example of how the inventive method operates a stall timer to manage the storage of data blocks in a reorder buffer in a manner that avoids stall conditions.
Fig. 13 shows an example illustrating how the method of the invention is applied to a situation where reuse of sequence numbers of data blocks stored in the re-ordering buffer is started.
Modes for carrying out the preferred embodiments
The present invention is a system and method for preventing a stall condition in a user terminal of a mobile communication system. The invention is preferably implemented in a mobile network such as the Universal Mobile Telecommunications System (UMTS) currently being developed by the third generation partnership project (3 GPP). However, those skilled in the art will appreciate that the present invention is additionally applicable to communication systems operating in accordance with other standards. The present invention is also a user terminal that implements the method of the present invention for preventing a stall condition from occurring. The invention is also a computer program storable in a user terminal for implementing the method of the invention. A detailed discussion of embodiments of the present invention will now be provided.
The invention is ideally suited for High Speed Downlink Packet Access (HSDPA) mobile systems. This type of system comprises user equipment communicating with a UMTS Terrestrial Radio Access Network (UTRAN) over a wireless link. For example, the user equipment may comprise a mobile phone, a personal digital assistant, a so-called mini-PC, a laptop or notebook computer, or any other device that receives signals transmitted wirelessly over a mobile communication network. As described above, these signals may be transmitted by the UTRAN and received by a user terminal operating in accordance with the protocol infrastructure shown in fig. 1-3, 5 and 6, for example.
When so implemented, the method of the present invention controls the storage of data blocks in and the subsequent transfer and deletion from a reordering buffer operating in the Medium Access Control (MAC) layer of the user terminal. In particular, a re-ordering buffer may be located in the MAC-hs sublayer that receives data blocks from a lower level physical layer and passes the data blocks to an upper layer, such as a Radio Link Control (RLC) layer, through the MAC-c/sh sublayer and the MAC-d sublayer, respectively. For example, these features have been previously discussed in detail with reference to FIG. 5, and a detailed discussion of them is not provided herein.
Fig. 7 is a view illustrating a user terminal according to a preferred embodiment of the present invention. The terminal comprises circuitry/software to perform the method as will be described in more detail below. At this point, it is sufficient to note that these circuits/software are preferably incorporated in a MAC-HS entity 300 which receives data blocks from peer entities of the UTRAN via a plurality of high speed downlink shared channels (HS-DSCH) 302 and transmits these data blocks to the MAC-d sublayer via the MAC-c/sh sublayer via a series of dedicated transport channels (DCH) 308. The MAC-hs entities and the peer-layer entities of the UTRAN exchange messages and other control forms of control information over downlink and uplink channels 304 and 306, respectively.
The MAC-hs entity comprises a HARQ unit 310, a reordering queue allocation unit 320, one or more reordering buffers 330, preferably with an equal number of linger time timers 340, a plurality of decomposition units 350 and an input for receiving control signals from a MAC layer controller 360, said MAC layer controller 360 being arranged for managing functions and operations performed in the MAC-hs entity.
The HARQ unit performs MAC functions related to the HARQ protocol including, but not limited to, all tasks required for hybrid ARQ. The HARQ unit also transmits Acknowledgement (ACK) and non-acknowledgement (NACK) signals indicating whether data blocks transmitted by a peer entity of the UTRAN have been received. The HARQ unit comprises a plurality of HARQ processes 310-1 to 310-n, which preferably can operate in parallel. One or more upper layers of the protocol may determine the number of HARQ processes. In operation, each HARQ process transmits a data block from the HS-DSCH channel to the reordering buffer according to priority level identification information in the header of the block. The data block is included or may be in the form of a MAC-hs Protocol Data Unit (PDU) or Service Data Unit (SDU).
The reorder queue allocation unit routes the data blocks to the correct reorder buffer based on queue Identification (ID) information in the header of each block. This information provides an indication of a reordering queue that may be used to support, for example, independent buffers handling data belonging to different reordering queues.
The reorder buffer reorders the data blocks from the reorder queue allocation unit according to the Transmit Sequence Number (TSN) in the block's header. The buffer then transfers the blocks to the upper layer in order. The transfer of these blocks may be performed as follows. In each buffer, data blocks with subsequent TSNs are transferred to the associated decomposition unit upon reception. However, if one or more prior-in-order data blocks (e.g., those having a lower transmit sequence number) are not received, the data blocks are not immediately transferred to the decomposition unit. In this case, the data blocks are temporarily stored in a reorder buffer and then output under the control of the stall timer of the present invention, as discussed in more detail below. One reorder buffer may be provided for each queue ID, and each transmit sequence number may be provided relative to a particular reorder buffer. The TSN and queue ID information may be inserted into the header of each data block by a scheduler and HARQ process entity located in the UTRAN.
The decomposition units decompose the data blocks output from the reorder buffer, respectively. If the data block comprises a MAC-hs PDU, the decomposition is performed by taking the header information, retrieving the MAC-d PDU and taking any padding bits that may be present. And then delivers the MAC-d PDU to an upper layer.
The stall timer controls when a block of data is output from the reorder buffer. Preferably, a stall timer is provided for each reorder buffer. As will be appreciated by those skilled in the art, multiple timers may be used, but one is sufficient. When a data block cannot be immediately transferred to an upper layer, a stall timer for activating each buffer is started. This occurs when one or more prior-in-order data blocks (e.g., those having lower transmit sequence numbers) are not received. Thus, when storing a data block in a buffer and when starting to activate the linger timer, the following rules govern: a data block can be transferred to an upper layer only when all previous data blocks are received and transferred.
When the above rules begin to be violated, the received data block is temporarily stored in the buffer for a period of time determined by the linger timer. According to one embodiment of the invention, this time period may be equal to one or more linger time timer periods. The stall timer period is preferably set by upper layers of the protocol. This period is preferably set to ensure that no transmit sequence number return occurs. The manner in which the linger timer is set is discussed in more detail below.
Figures 8A-8C illustrate some steps included in a method for avoiding stall conditions in a re-ordering buffer of a protocol layer of a receiver in accordance with one embodiment of the present invention. Referring to fig. 8A, as a starting step, the method includes receiving a data block with a sequence number SN from a peer entity of a transmitter over an HS-DSCH channel via a lower layer such as a physical layer. (block 400).
The second step includes determining whether the received data block can be transferred to an upper layer. (block 401). This step is performed depending on whether one or more previous data blocks have not been received. If at least one data block having a transmission sequence number in an order preceding that of the received data block has not been received, the received data block (having a transmission sequence number TSN) is not transferred to an upper layer but stored in a re-ordering buffer. (block 402). For example, a missing data block may be detected by comparing the transmit sequence number in the header of a newly received data block with the transmit sequence number of the last transmitted data block. If the numbers are out of order, it may be determined that there is a missing data block, and the number of the missing data block may be determined from the difference between the numbers. These functions may be performed, for example, under the control of the MAC controller, along with the re-ordering queue allocation and HARQ units.
In these cases, since the data block TSN-1 is lost, even if the data block TSN is correctly received, it cannot be immediately transferred to the upper layer. (those skilled in the art will appreciate that the above examples are not intended to limit the invention, as there may be more than one missing data block between the last transmitted data block and the data block SN). When this occurs, the data block SN is temporarily stored in the reorder buffer. If all data blocks with an order-first transmission sequence number have been transmitted in the considered time frame, the data block SN is not stored in the buffer but is automatically transmitted to the upper layer. (block 403).
The next step includes determining whether a stall timer provided for the buffer is active. (block 404). If the timer is active, no further timer is started, since only one timer is provided per reordering buffer. This step can be further elucidated as follows:
if the timer T1 has been active:
no further timer is started, i.e. only one timer T1 may be active at a given time.
If the linger timer is not active, a timer is started and a predetermined time period is run as determined by the MAC controller and/or one or more upper layers of the protocol (block 405). These steps can be re-elucidated as follows:
if the timer T1 is not active:
then when the MAC-hs PDU with TSN SN is correctly received, but cannot be delivered to the disassembly function because a MAC-hs PDU with TSN equal to Next _ expected _ TSN is lost and the timer T1 should be started.
Here, the term "Next _ expected _ TSN" means TSN of a data block that should be received Next time if the data blocks are received in order.
Referring to fig. 8B, a case of stopping the linger time timer and actions after the stop and expiration of the linger time timer will be described. Once the linger time timer is started, it is determined whether the data block TSN at which the linger time timer was started is transferred to an upper layer before the expiration of the timer period. (block 411). If the block of data at which the linger timer was started is transferred to the upper layers before the time period, the linger timer is stopped (block 420). These steps can be re-elucidated as follows:
the timer T1 should be stopped if:
the MAC-hs PDU at the start of the timer can be transferred to the additional function before the timer expires.
If the data block has not been transferred to the upper layer during the time period of the linger time timer, the following steps may be performed. First, if the received data block cannot be transferred to the upper layer, it is preferable to place all the data blocks received during the time period of the linger time timer in the re-ordering buffer in order. (block 410). Thus, for example, in the case where a stall timer is started for data block SN and a data block from SN-4 to SN-1 is lost, if data blocks SN-4, SN-2, and SN-1 are received during the time period of the stall timer, data block SN-4 is immediately transferred to an upper layer and data blocks SN-2 and SN-1 are stored in a reorder buffer.
When the time period of the linger timer expires, the data blocks stored in the reorder buffer to the SN at which the linger timer started will be processed appropriately. (block 413). Among the stored data blocks to the data block SN, all correctly received but not transmitted data blocks are transmitted to the upper layer in order. These data blocks may then be removed from the buffer, leaving room for the next received data block. These steps can be re-elucidated as follows:
when timer T1 expires:
-all correctly received MAC-hs PDUs up to and including SN-1 are passed to the disassembly function and removed from the reordering buffer.
Of course, it will be understood in this reiteration language that data block SN may also be transmitted at this point in time after all the prior-in-order data blocks are transmitted.
The method of the present invention may perform the following additional steps as a way to further improve transmission efficiency. During the linger timer period, data blocks having transmission sequence numbers greater than the transmission sequence number of data block SN (e.g., data blocks SN +1, SN +2, etc.) may be received in addition to the data blocks preceding in order (e.g., data blocks SN-1, SN-2, etc.). Since at least one prior-in-order data block has not been transmitted, these subsequent data blocks may not be transmitted. Instead, they are stored in the reorder buffer in order along with the data block SN.
When the linger timer time period expires, the method of the present invention may advantageously transmit all data blocks stored in the re-ordering buffer having a transmission sequence number sequentially following the data block SN. (block 414).
It is possible that one or more subsequent data blocks are not received during the linger timer time period. For example, data blocks SN +1, SN +2, and SN +4 may have been received, but data block SN +3 may not have been received. In this case, the method of the invention can transfer all subsequent data blocks stored in the re-ordering buffer up to the first missing data block SN + 3. Thus, data blocks SN +1 and SN +3 may be transmitted at the time the linger timer expires, but data block SN +4 may be left in the reorder buffer. After transmitting the data blocks SN +1 and SN +2, the next-expected-TSN becomes SN + 3. Transmitting these contiguous data blocks further increases transmission efficiency and is therefore highly desirable. These steps, which may further clarify the invention, are as follows:
when timer T1 expires:
all correctly received MAC-hs PDUs up to the first missing MAC-hs PDU should be passed to the disassembly function.
When one or more subsequent data blocks are lost in the re-ordering buffer at the time when the linger timer expires or at the time when the linger timer is stopped because the data block SN was transmitted before the timer expired, the method of the present invention may follow a control procedure representing another embodiment of the present invention.
The control procedure shown in fig. 8C includes starting a timer for a data block (hereinafter HSN) according to the highest transmission sequence number (i.e., the last number in the circular ordering of data block sequence numbers stored in the reorder buffer at the time the linger time timer expires or stops). (blocks 412, 420). This step can therefore be elucidated as follows:
when the timer T1 stops or expires and there are still some received MAC-hs PDUs that cannot be delivered to higher layers:
-starting a timer T1 for the MAC-hs PDU with the highest TSN of these MAC-hs PDUs which cannot be transmitted.
It is noted that there may be only a limited number of transmission sequence numbers that can be assigned to data blocks in the above steps. In this case, the transmission sequence number must be reused. It is therefore possible that in these cases the last data block stored in the re-ordering buffer is not in fact the one with the highest transmission sequence number. Thus, the highest transmit sequence number (HSN) is the last number in the circular ordering of data block sequence numbers stored in the re-ordering buffer, not the largest transmit sequence number.
The data block of the HSN or the data block with the highest transmission sequence number in the buffer may correspond to the last data block in a part of the cycle of the transmission sequence number.
The performance of the re-ordering buffer of the restarted linger timer is the same as the previous linger timer. During the restart timer period, all data blocks preceding the data block HSN in order may be received and transferred to the upper layer. If so, the data block HSN is transferred to the upper layer (block 411) and the linger time timer is stopped (block 420).
If at least one data block preceding data block HSN in order is not received before the restart hold-off timer time period expires, data block HSN and other received but not transmitted data blocks are stored in the reordering buffer in the correct order. When the restart hold-off timer time period expires (block 412), data blocks in the middle of all correctly received but untransmitted data blocks to the data block HSN are sequentially transmitted to the upper layer (block 413). All the in-order data blocks in the middle of the data blocks succeeding the data block HSN are also transferred to the upper layer. The transferred data block is then discarded from the buffer (block 413). After all possible data blocks have been transferred, if one or more data blocks remain in the reorder buffer, the linger time timer is restarted for the data block of the new HSN and the control process begins again. If no data block remains in the buffer, the linger timer becomes inoperative and the reorder buffer waits for the next data block, i.e., the data block to begin its process again.
FIG. 9 illustrates a timing diagram of an exemplary control process that may be performed in accordance with the present invention. This figure shows that the data blocks SN 13 and SN14 are received and passed to the upper layers before the stall timer is first started. Since all previous data blocks have already been transmitted, the data blocks SN 13 and SN14 are also transmitted to the upper layer without delay. At this point, the next-expected-TSN is SN 15. The data block SN 18 is received after the data block SN 14. Since the data blocks SN 15, SN 16, and SN 17 have not been received, the received data block SN 18 cannot be transferred to an upper layer. In these cases, data block SN 18 is stored in the reorder buffer and a stall timer is started.
The re-ordering buffer may only contain the data block SN 18 when the linger timer is first started. At the end of the first timer period, the data block SN 16 and the subsequent data blocks SN 19, SN 20, SN 22, SN 23 and SN25 are received. However, data blocks SN 21 and SN 24 are lost along with SN 15 and SN 17. At this time, the data blocks SN 16, SN 18, SN 19, and SN 20 are transferred to an upper layer and also discarded from the reordering buffer. Data blocks SN 22, SN 23 and SN25 are not transmitted at this time because one of the preceding data blocks SN 21 is lost. Therefore, the linger timer is restarted a second time according to the data block SN 25. At the end of the second timer time period, all received data blocks SN 21 and SN 24 are transmitted and included at this time as well, although data blocks SN 21 and SN 24 have not been received at this time. Of the stored data blocks succeeding the data block 25, all the data blocks in order are now also transferred to the upper layer. The transferred data blocks are then discarded from the buffer and the method is restarted according to whether any data blocks remain in the re-ordering buffer.
Fig. 10A and 10B illustrate another embodiment of the method of the present invention for avoiding a stall condition in an HSDPA system. Now, the term "data block DB" is defined as the data block when the linger timer is started, and "data block M" is the data block received during the linger timer time period. As shown in fig. 10A, this method includes as a starting step determining whether a data block DB has been received from a physical layer in a media access control layer of a user equipment (block 501). The data block may be received through an HS-DSCH channel connected to one of a plurality of HARQ processes included in the MAC layer. Depending on the content, the data block preferably includes header information and one or more MAC-hs SDUs (MAC-d pdus). The HARQ process may transmit the data block to a reordering buffer in the MAC layer according to priority level information included in the header of the data block.
When the data block DB is received, the next step of the method comprises determining whether the received data block DB can be delivered to an upper layer, such as a radio link control layer (block 502). This step can be performed according to the following rules: a data block received by the MAC layer cannot be delivered to an upper layer unless and until all immediate, prior-in-order data blocks have been delivered. If the MAC layer has not received one or more immediate, prior-in-order data blocks (i.e. lost from the incoming data stream), the data block DB cannot be delivered to the upper layer upon reception. Instead, a check is performed to determine whether the assigned stall timer that controls the reorder buffer is active (block 503).
For example, it may be determined that a data block is lost based on comparing the transmission sequence number of the received data block DB and the transmission sequence number of the last transmitted data block. If the two sequence numbers are not consecutive, the difference between the sequence numbers can be used as a basis for determining how many missing data blocks (i.e. not received) are present before the received data block DB.
If the linger timer is determined to be inactive, the linger timer is activated (block 504) and the received data block is stored in the reorder buffer (block 505). They are transferred to an upper layer or stored in a re-ordering buffer according to the transmission sequence number TSN of the next received data block. If the TSN of the received data block M sequentially follows the TSN of the last transmitted data block, i.e., if the received data block M is the next-expected-TSN, the received data block M is transmitted to the upper layer without being stored in the reorder buffer. However, if the received data block M does not follow the TSN of the last transmitted data block sequentially, i.e. if there is a missing data block in the received data block M, it is stored in the re-ordering buffer according to its transmission sequence number TSN. The data block M stored in the re-ordering buffer is transferred to the upper layer only after all the data blocks in the order first are received and transferred to the upper layer, or if the received data block M has not been transferred to the upper layer until the linger time timer expires. The method of setting the count time period of the linger timer is discussed in more detail below. At this point, it is well understood that it is preferable to set the count time period to a value that ensures that a return condition does not occur.
An example of the above can be given as follows. In this example, the following events occur one after the other. Each step occurs for every TTI (transmission time interval 2 ms). Assume that NET (next-expected-TSN) is 9 before this process.
1. Reception data block 9 → transmission to the upper layer, NET 10.
2. Received data block 15 → store in the reorder buffer and start the stall timer.
3. Received data block 20 → stored in the reorder buffer.
4. Received data block 10 → transfer to upper layer, NET 11.
5. Received data block 14 → stored in the reorder buffer.
6. Received data block 16 → stored in the reorder buffer.
7. Received data block 18 → stored in the reorder buffer.
8. Received data block 12 → stored in the reorder buffer.
9. Receive data block 11 → transfer data blocks 11 and 12 to the upper layer, NET 13.
10. The hold off timer expires.
i. The data blocks 14, 15 and 16 are transferred to the upper layer, NET 17.
Restart the linger timer for the data block 20. (at restart hold-off time timing
At this point in time, data blocks 18 and 20 remain in the reorder buffer and no data has been received yet
Blocks 17 and 19).
If it is determined that the linger timer has been active, this means that a linger timer condition has occurred with respect to a data block that has been previously received and stored in the reorder buffer. That is, the currently received data block is data block M in the above example, and the linger timer has been started for the previously received data block DB. In this case, the received and subsequently received data blocks are transferred to an upper layer or stored in a re-ordering buffer according to their transmission sequence numbers TSN. Preferably, the received and subsequently received data blocks are stored according to their transmission sequence numbers. The stored data block is transferred to the upper layer only after all the prior-in-order data blocks are received and transferred to the upper layer or after a linger time timer period expires.
The data blocks may continue to be received and stored in the reorder buffer during the time period when the timer is active. These data blocks may include lost data blocks determined as data blocks in the order prior to the data block DB and received subsequently, i.e., data blocks having a transmission sequence number greater than that of the data block DB. However, it may happen that only some or even none of the prior-order data blocks are received during this time. Also, one or more subsequent data blocks may not be received. (this may be determined based on a comparison of the transmission sequence numbers of successively received data blocks.)
In the next step, a determination is made as to whether the linger time timer has expired (block 506). When the linger time timer expires, all data blocks that have been received before the expiration of the timer but are not transmitted to the upper layer are transmitted to the upper layer together with the data block DB among the data blocks preceding the data block DB in order. According to the invention, this is advantageously performed even when not all preceding data blocks are received before the timer expires. In these cases, as shown in fig. 10B, the MAC layer (and preferably the MAC-hs sublayer) sends information to the transmitter (e.g., UTRAN) identifying which of the prior-order data blocks were not received within the timer time period (block 507). The transmitter may responsively stop all efforts to retransmit the missing data block.
In a next step, the subsequently received data blocks stored in the reorder buffer are examined to determine if they may also be transmitted with data block DB (block 508). This includes comparing the transmit sequence numbers of the remaining data blocks stored in the re-ordering buffer with the transmit sequence number of the data block DB. All remaining data blocks stored in the re-ordering buffer having a transmission sequence number sequentially following the transmission sequence number of the data block DB are preferably transferred to the upper layer. The lost data blocks may be a disconnection point for transmitting these subsequent data blocks.
To explain the above steps, if the data block DB has a transmission sequence number equal to 10 and data blocks having transmission sequence numbers equal to 11, 12, and 14 are stored in the reorder buffer, it is preferable to transfer the data blocks 11 and 12 to the upper layer after the transfer of the data block 10. Since the data block with the send sequence number 13 is lost (i.e. not yet received), the data block 14 and all data blocks stored thereafter are not transferred, but left in the re-ordering buffer. For efficiency, all data blocks that have been transferred may be deleted from the buffer.
It is possible that all remaining data blocks stored in the re-ordering buffer have consecutively succeeding transmission sequence numbers. In this case, when the timer expires, all remaining data blocks in the reorder buffer are transferred to the upper layer together with the data block DB, and the linger time timer becomes inactive. On the other hand, if any data blocks remain in the reorder buffer due to one or more missing data blocks, the linger time timer is restarted for the data block having the highest transmission sequence number among the remaining data blocks in the reorder buffer. This will be further described in the next step.
When the linger timer expires, after all possible data blocks have been transferred to the upper layers, a check is performed to determine if any data blocks remain in the reorder buffer (block 509). If not, the method returns to block 501 for the next TTI without restarting the timer, i.e., the linger timer becomes inactive. If any data blocks remain in the reorder buffer, the stall timer is restarted for the purpose of transferring all remaining data blocks stored in the reorder buffer (block 510). In particular, a stall timer is restarted for the data blocks of the HSN in the reorder buffer, which may correspond to the one with the highest transmit sequence number.
During the time period of the restarted timer, some of the prior and subsequent data blocks may be received as in the previous linger timer time period. The received data blocks are transferred to an upper layer or stored in a re-ordering buffer according to their transmission sequence number TSN. When the restarted timer expires, the same procedure is performed as when the previous linger timer time period expired. That is, all stored data blocks that are in first order and for which the linger timer is restarted (e.g., the one having the highest transmission sequence number when the previous linger timer expires) are delivered to the upper layer. Among the stored subsequent data blocks, data blocks up to the first missing data block are transferred to the upper layer. After the data blocks are transferred, they are preferably discarded from the reorder buffer.
The transfer of data blocks to an upper layer, such as the RLC layer, may comprise a step of breaking the blocks into MAC-d PDUs. The decomposed blocks may then be transferred to the MAC-d sublayer through the MAC-c/sh sublayer before reaching the RLC layer.
Further steps of the method address the case where the received data block can be transferred to an upper layer. This occurs, for example, when an immediately preceding data block has been received and delivered to an upper layer. When this occurs, the received data block is not stored in the reorder buffer. Instead, all received data blocks with subsequent transmission sequence numbers are immediately passed to the upper layer (block 521).
After all possible data blocks have been delivered to the upper layer, a check is performed to determine whether the data block DB (which started the linger timer) has been delivered to the upper layer (block 522). If so, the linger timer may be stopped and reset for later use (block 523). If the condition in block 522 is not met, the method continues to wait until the hold off timer expires, at which point execution occurs with the option in step S106, as described above.
The linger time timer may be controlled by one or more upper layers, such as a Radio Resource Control (RRC) upper layer. Preferably, the layer sets the timer to a time period that ensures that no return condition occurs in the reorder buffer. This situation may occur when the time period of the linger timer is set too long, so that different data blocks having the same or redundant transmit sequence numbers are stored in the reorder buffer.
Whether a return situation will occur depends on the range of possible transmission sequence numbers that can be allocated to the data block in the user equipment. For example, if 64 transmission sequence numbers (0 to 63) can be allocated at the maximum, a transmission sequence number of 0 will be redundantly allocated to the 1 st and 65 th data blocks transmitted from the UTRAN. A return condition will occur if the time period of the linger timer is set to allow these data blocks to be stored in the reorder buffer at the same time.
The present invention may advantageously set the time period of the linger timer to ensure that a return condition does not occur. This may be achieved by the RRC determining the maximum value of the transmission sequence number that can be set and then determining the duration of one TTI. Since the maximum delay is less than 2 × T1, the return condition can be avoided by setting the maximum hold-off timer time period T1 to an appropriate value. According to an embodiment of the present invention, when the transmission sequence number is in the range of 0 and 63 and one TTI is 2 msec, the RRC may set the time period of the linger time timer so as not to exceed 64 msec (2 msec 64/2). This can be understood as follows.
Fig. 11A-11C illustrate how the maximum value of the linger timer time period T1 is calculated for the worst case. Fig. 11A shows that a data block with a transmission sequence number SN1 is received, but no immediately preceding data block is received. As described above, when this occurs, a stall timer may be started for data block SN 1.
Fig. 11B shows that all data blocks with subsequent transmission sequence numbers except data block SN4 are received while the linger timer is running. Here, it can be assumed that the data block SN4 is never received, for example, because the UTRAN erroneously interprets a non-acknowledgement signal (NACK) transmitted from the user equipment requesting retransmission of the data block as an acknowledgement signal, or because the UTRAN erroneously deletes the data block and thus cannot retransmit it to the user equipment.
When the linger timer expires, data block SN1 is passed to higher layers, but cannot be passed up to and including the other data blocks received of data block SN2 because of the missing data block SN 4. Instead, these data blocks are saved in a buffer and the stall timer (or, on the other hand, the second stall timer 2) is restarted for the data block of the HSN (in this case, data block SN 2). Theoretically, the maximum value of the transmission sequence number SN2 is SN1+ T1/(2 ms).
Fig. 11C shows that all subsequent data blocks are correctly received during the second time period of the linger time timer. At the expiration of the second linger time timer period, the last data block received and stored in the reorder buffer is data block SN 3. Theoretically, the maximum value of the transmission sequence number SN3 is SN2+ T1/(2 ms) is SN1+ T1. Accordingly, the range of data blocks that the receiver can receive during the second linger time timer period is [ SN4, SN3] ═ SN +1, SN1+ T1 ].
As described above, the transmission sequence number that can be allocated to the data block ranges from 0 to 63. Therefore, when the transmission sequence number SN3 is equal to or greater than the transmission sequence number SN4+64, the user equipment receiver cannot determine whether a subsequently received data block is before or after the data block SN2 shown in the figure. This return situation occurs because the number of transmit sequence numbers that can be assigned to a data block is limited.
To prevent the return situation from occurring, the inventors of the present invention have determined that the send sequence number SN3 should be less than or greater than SN4+ 64. The maximum value of SN3 can be expressed as SN3 ═ SN4+ 64-1 ═ SN1+ 64. This is because SN3 is SN1+ T1, and theoretically the maximum value of T1 should be 64 milliseconds. Thus, if the linger timer time period T1 is set to a value less than or equal to 64 milliseconds, a return condition will not occur. The RRC of the present invention may control the linger time timer in accordance with these criteria with respect to the manner in which the operation of the re-ordering buffer is managed.
In general, when the range of the transmission sequence numbers to be allocated to the data blocks is N number and TTI is 2 ms, the maximum value of the time period of the linger timer must be N × TTI/2. When the time period of the linger timer is greater than 64 milliseconds, in the worst case, a new data block may be received before the linger timer expires, the new data block having a transmit sequence number that is the same as or redundant to the transmit sequence number of the data block previously stored in the reorder buffer. However, in this case, one of the two data blocks is discarded, and it is preferable to discard the data block whose number is redundant. Therefore, to prevent a return situation where the sequence number is transmitted when the range of TSN numbers is 64 and the TTI is 2 ms, the maximum time period of the linger timer should not be more than 64 ms.
In operation, it is preferable that the UTRAN does not transmit (or retransmit) data blocks that are not received in a time period of 2 × T1. This is because the maximum reception latency that the receiver can wait for a data block is 2 xt 1 without violating the return condition. Even if received correctly, data blocks retransmitted after this time are preferably discarded in the user equipment. Therefore, it is preferable to provide a discard timer for each HARQ process in the UTRAN, and the time period of the discard timer is preferably set to be not more than twice the linger time timer time period in the user equipment receiver.
Fig. 12A and 12B illustrate one example of how the method of the present invention operates a stall timer that manages the storage of data blocks in a reorder buffer in a manner that avoids stall conditions.
Initially, for example, a Medium Access Control (MAC) layer in a mobile terminal receiver sequentially receives data blocks having transmission sequence numbers 13 and 14, respectively. Since the immediately-preceding data block is transferred to the upper layer, the data blocks 13 and 14 are not stored in the reorder buffer, but are also transferred to the upper layer. However, when receiving a data block with a transmission sequence number 18, it is detected that no preceding data blocks 15, 16 and 17 are received. As a result, the data block 18 is stored in the reorder buffer and a stall timer is started. At the moment the linger timer is started, care is taken that only data blocks 18 are stored in the reorder buffer. This situation is reflected in fig. 12.
During the time period of the linger time timer, the MAC layer monitors which data blocks are received. As shown in fig. 12B, data block 16 and data blocks 18, 19, 20, 22, 23, and 25 are received during this time. It is detected that the data blocks 21 and 24 are not received.
When the linger timer time period expires, the data blocks 16 and 18 are transmitted in accordance with the present invention. Also, since the data blocks 19 and 20 follow the block 18 sequentially according to the transmission sequence number (since there is no missing data block in between the block 18 and the blocks 19 and 20), the data blocks 19 and 20 are transferred to the upper layer without further delay. For example, all transmitted data blocks are deleted from the reorder buffer, leaving room to store subsequently received data blocks. Also, if the blocks are not received before the timer period expires, the MAC layer of the user equipment may send a message instructing the UTRAN not to send data blocks 15 and 17 any more.
When the linger timer expires, data blocks 22, 23, and 25 are not transmitted because data block 21 was not received. Instead, the data blocks of the HSN stored in the reorder buffer are detected at the time the linger time timer expires.
In this case, the data block of HSN25 corresponds to the one of the reorder buffers having the highest transmission sequence number. However, this may not always be the case. Since the transmission sequence numbers that can be assigned to the data blocks have a limited range, it may be the case that subsequent data blocks 63, 0, 1 and 2 are stored in the re-ordering buffer. In this case, the data block of the HSN does not correspond to the data block having the largest transmission sequence number. This is illustratively shown in fig. 13. The present invention is preferably implemented to restart the linger timer to coincide with the HSN's data blocks in the buffer and not require the data blocks to have the highest transmit sequence numbers.
After detecting the data blocks of the HSN in the buffer, the linger timer is started. During this time, further data blocks are received, some of which may include missing data blocks 21 and 24. When the data block 21 is received during the linger time timer period, the data blocks 21, 22 and 23 are sequentially transferred to an upper layer, and then, if the data block 24 is also received during the linger time timer period, the data blocks 24, 25 and consecutively succeeding data blocks are transferred to the upper layer and the linger time timer is stopped. However, if the data blocks 21 and 24 are not received during the linger time timer period, the data blocks 22, 23, and 25 and the consecutively succeeding data blocks are transferred to the upper layer only after the linger time timer expires. The transferred block is then discarded from the buffer and the process continues.
With this embodiment of the invention, it is preferable that the reorder buffer be controlled by only one hold-off timer.
Another embodiment of the method of the present invention for preventing stall conditions may be performed in a user equipment comprising the same MAC layer structure as the first embodiment. However, the way the reorder buffer is controlled is different.
With respect to this embodiment, the following definitions may apply. The term "Next _ expected _ TSN" corresponds to the transmission sequence number of the MAC-hs Protocol Data Unit (PDU) in order following the last received. A transmit sequence number equal to Next _ expected _ TSN should be updated when receiving MAC-hs PDUs. The initial value of Next _ expected _ TSN is 0.
In this embodiment, the linger time timer controls the reordering buffer in the MAC layer (especially the MAC-hs sublayer) of the user terminal. The upper layer may control the linger timer time period to avoid the return condition discussed previously.
Note that initially, the hold-off timer T1 is inactive. When the user terminal correctly receives the MAC-hs PDU with TSN-SN but cannot transmit to the corresponding disassembly function because the MAC-hs PDU with TSN equal to Next _ expected _ TSN is lost, a linger time timer is started. When the linger timer has been active, no additional linger timer or timer time period may be started, i.e., only one timer T1 may be active at any given time.
The linger time timer T1 is stopped if the MAC-hs PDU for which the timer was started can be delivered to the disassembly function before the linger time timer T1 expires.
When the linger time timer T1 expires, all correctly received MAC-hs PDUs up to and including SN-1 are passed to the disassembly function. The transmitted MAC-hs PDUs are then removed from the reordering buffer. Also, for example, all correctly received MAC-hs PDUs up to the first missing MAC-hs PDU of the MAC-hs PDU following the SN are passed to the disassembly function.
When the timer T1 stops or expires and there are some received MAC-hs PDUs that cannot be transmitted to the upper layer, the linger time timer T1 is restarted for the MAC-hs PDU with the highest transmission sequence number among the MAC-hs PDUs that cannot be transmitted.
All received MAC-ha PDUs with consecutive Transmission Sequence Numbers (TSNs) from Next _ expected _ TSN up to the first non-received MAC-ha PDU are transferred to the disassembly entity. TSN of the first non-received MAC-hs PDU becomes Next _ expected _ TSN
The invention is also a computer program having code portions for performing the steps included in any of the embodiments of the method of the invention discussed herein. The computer program may be written in any computer language that is supportable in the user terminal and may be stored on a permanent or removable computer readable medium in or interfaced with the terminal. Non-transitory computer readable media include, but are not limited to, read-only memory and random access memory. Removable media includes, but is not limited to, EPROM, EEPROM, any of a number of so-called memory sticks or cards, or any other type of removable storage media. Flash memory may also be used to store the computer program of the present invention.
It is to be noted that the present invention has adopted the 3GPP technical specification TS25.308 — integrated description, including UTRA High Speed Downlink Packet Access (HSDPA), and the 3GPP technical specification 25.321, including the MAC protocol specification. These documents are incorporated herein by reference.
Other modifications and variations of the present invention will be apparent to those skilled in the art from the foregoing disclosure. Thus, while only certain embodiments of the invention have been specifically described herein, it will be apparent that many modifications thereto are possible without departing from the spirit and scope of the invention.
The foregoing embodiments and advantages are merely exemplary and are not to be construed as limiting the present invention. The present teachings can be readily applied to other types of apparatuses. The description of the invention is intended to be illustrative, and not to limit the scope of the claims. Many variations, modifications, and changes will become apparent to those skilled in the art. In the claims, means-plus-function clauses are intended to cover the structures described herein as performing the recited function and not only structural equivalents but also equivalent structures.

Claims (27)

1. A method for processing packet data in a receiver of a communication system, the method comprising the steps of:
checking the data blocks in the reorder buffer when the reorder buffer's timer becomes inactive; and
the timer is restarted for one of the data blocks that is the last data block to be transferred to the upper layer among the data blocks stored in the re-ordering buffer if at least one data block remains in the re-ordering buffer.
2. The method of claim 1, wherein one of the data blocks corresponds to the data block with the highest sequence number stored in the reorder buffer.
3. A method for processing packet data in a receiver of a communication system, the method comprising the steps of:
receiving a data block;
storing the data blocks in a reorder buffer;
starting a timer of the re-sequencing buffer; and
transferring the data blocks from the reorder buffer to an upper layer when a timer expires, wherein the transferring step comprises transferring the data blocks out of order, wherein the out of order transfer corresponds to a data block transfer in the event that it is preceded by one or more missing data blocks.
4. The method of claim 3, wherein the out-of-order transmission is based on a sequence number of a data block.
5. The method of claim 3, wherein the data blocks having one or more missing data blocks before the data blocks are sequentially transferred to the upper layer according to the sequence numbers of the data blocks.
6. A method of processing a data block including packet data in a mobile communication system receiver, the method comprising:
starting a timer for a correctly received data block having a sequence number higher than a sequence number of another data block expected to be received first, if the timer is not working; and
when the timer is stopped or expires, the timer is started,
transmitting to a higher layer all correctly received ones of data blocks that arrive and include a data block having a sequence number immediately preceding the sequence number of the data block for which the timer was started, and
all correctly received data blocks up to the next not received data block, including the data block for which the timer was started, are transferred to the higher layer.
7. The method of claim 6, further comprising the steps of:
the timer is restarted for the data block with the highest sequence number in the received data block that cannot be passed to higher layers.
8. The method of claim 6, wherein no additional timers are started when the timers are running.
9. The method of claim 6, wherein the method is implemented in a mobile terminal.
10. The method of claim 6, wherein the method is implemented in a node B.
11. The method of claim 6, wherein a period of the timer is less than or equal to N x (TTI/2), where N is a range of sequence numbers assigned to a data block and TTI is a transmission time interval.
12. The method of claim 6, wherein the method is performed at a media access control layer.
13. The method of claim 6, wherein the data blocks are delivered to higher layers in sequence.
14. The method of claim 6, wherein the data block is a MAC-hs protocol data unit.
15. The method of claim 6, wherein the higher layer is a MAC-d sublayer.
16. The method of claim 6, wherein the higher layer is a radio link control layer.
17. The method of claim 6, wherein the method is for High Speed Data Packet Access (HSDPA) technology.
18. An apparatus for processing a data block including packet data in a mobile communication system receiver, the apparatus comprising:
a reorder buffer;
a timer for reordering the buffer; and
a medium access control entity connected to the reordering buffer and the timer of the reordering buffer, the medium access control entity being adapted to:
when the timer of the re-ordering buffer stops or expires, transmitting to a higher layer all correctly received ones of the data blocks that reach and include a data block having a sequence number immediately preceding the sequence number of the data block for which the timer was started and all correctly received data blocks that reach a next not received data block; and restarting a timer of the reorder buffer for a data block having a highest sequence number of the received data blocks that cannot be passed to higher layers.
19. The apparatus of claim 18, wherein no additional timer is started when the timer of the reorder buffer is active.
20. The apparatus of claim 18, wherein the apparatus is part of a mobile terminal.
21. The apparatus of claim 18, wherein the apparatus is part of a node B.
22. The apparatus of claim 18, wherein a period of the timer is less than or equal to N x (TTI/2), where N is a range of sequence numbers assigned to a data block and TTI is a transmission time interval.
23. The apparatus of claim 18, wherein the data blocks are delivered to higher layers in sequence.
24. The apparatus of claim 18, wherein the data block is a MAC-hs protocol data unit.
25. The apparatus of claim 18, wherein the higher layer is a MAC-d sublayer.
26. The apparatus of claim 18, wherein the higher layer is a radio link control layer.
27. The apparatus of claim 18, wherein the apparatus is for High Speed Data Packet Access (HSDPA) technology.
HK05109396.6A 2002-01-05 2002-12-31 System and method for avoiding stall using timer for high-speed downlink packet access system HK1077425B (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR20020000632A KR100747464B1 (en) 2002-01-05 2002-01-05 Deadlock avoidance method using timer for high speed downlink packet connection (HSDPA) system
KR10-2002-0000632 2002-01-05
PCT/KR2002/002510 WO2003058852A1 (en) 2002-01-05 2002-12-31 System and method for avoiding stall using timer for high-speed downlink packet access system

Publications (2)

Publication Number Publication Date
HK1077425A1 HK1077425A1 (en) 2006-02-10
HK1077425B true HK1077425B (en) 2009-07-17

Family

ID=

Similar Documents

Publication Publication Date Title
US10849021B2 (en) Method and apparatus for operating a timer for processing data blocks
HK1077425B (en) System and method for avoiding stall using timer for high-speed downlink packet access system