The exemplary and non-limiting embodiments of this invention relate generally to wireless communications systems and, more specifically, relate to techniques that provide for a retransmission of data.
The following abbreviations that appear herein are defined as follows:
3GPP third generation partnership project
ACK acknowledged (a positive acknowledgement)
AM acknowledged mode
ARQ automatic repeat request
BTS base transceiver system
CRC cyclic redundancy code
DL downlink
HARQ hybrid automatic repeat request
HSDPA high speed downlink packet access
MAC medium access control
MIMO multiple input multiple output
NACK not acknowledged (a negative acknowledgement)
PDU protocol data unit
PHY physical
PSN packet sequence number
RLC radio link control
RNC radio network controller
SDU service data unit
TB transport block
TSN transmission sequence number
UE user equipment
UL uplink
WCDMA wideband code division multiple access
UMTS universal mobile telecommunications system
L1 layer 1 (physical layer)
L2 layer 2 (medium access control layer)
HSDPA is a packet-based data service feature of the WCDMA standard that provides a data transmission of up to 8-10 Mbps (and 20 Mbps for MIMO systems) over a 5 MHz bandwidth in the WCDMA DL. The high speed of HSDPA is achieved through techniques including: 16 Quadrature Amplitude Modulation, HARQ with variable error coding and incremental redundancy. HSDPA may be considered to be a technology upgrade to current UMTS networks.
HARQ combines an ARQ principle—a method of controlling errors in which a receiver detects error(s) in a received data unit and automatically requests a retransmission from the transmitter—and forward error correction over the radio connection. The forward error correction is used to determine whether or not an automatic request for a retransmission should be performed. Typically, if the errors are correctable, no request is performed, whereas if the errors are not correctable, a request is performed. Then, residual link-level packet errors after HARQ operation can further be recovered by using a link-layer ARQ protocol operating above HARQ.
Although these techniques are beneficial, there are still problems associated with implementations of these techniques.
In an exemplary embodiment, a method is disclosed that includes receiving over a wireless link at least one transport block and determining from the at least one transport block a first data unit, wherein a portion but not all of the first data unit includes a second data unit. The method includes determining information corresponding to acknowledgement status of the first data unit and determining, based at least on the information, whether a request should be performed requesting retransmission of the second data unit. The method additionally includes performing the request in response to a determination that the request should be performed.
In another exemplary embodiment, an apparatus is disclosed that includes a first receiver configured to receive over a wireless link at least one transport block. The first receiver is configured to determine from the at least one transport block a first data unit, wherein a portion but not all of the first data unit includes a second data unit. The apparatus also includes a second receiver coupled to the first receiver. The second receiver is configured to determine, based at least on the information, whether a request should be performed requesting retransmission of the second data unit. The second receiver is further configured to perform the request in response to a determination that the request should be performed.
In a further exemplary embodiment, a computer program product is disclosed that tangibly embodies a program of machine-readable instructions executable by a digital processing apparatus to perform operations. The operations include receiving over a wireless link at least one transport block and determining from the at least one transport block a first data unit, wherein a portion but not all of the first data unit includes a second data unit. The operations also include determining information corresponding to acknowledgement status of the first data unit and determining, based at least on the information, whether a request should be performed requesting retransmission of the second data unit. The operations further include performing the request in response to a determination that the request should be performed.
In another exemplary embodiment, a method is disclosed that includes determining information corresponding to acknowledgement status of a previously transmitted data unit that was transmitted over a wireless link using a transport block, wherein a portion but not all of the previously transmitted data unit includes a second data unit. The method includes determining, based at least on the information, whether retransmission of the second data unit should occur. The method also includes performing the retransmission of the second data unit in response to a determination that the retransmission should be performed.
In an additional exemplary embodiment, an apparatus is disclosed that includes a first transmitter configured to determine information corresponding to acknowledgement status of a previously transmitted data unit that was transmitted over a wireless link using a transport block, wherein a portion but not all of the previously transmitted data unit includes a second data unit. The apparatus also includes a second transmitter coupled to the first transmitter. The second transmitter is configured to determine, based at least on the information, whether retransmission of the second data unit should occur. The second transmitter is additionally configured to perform the retransmission of the second data unit in response to a determination that the retransmission should be performed.
In an exemplary embodiment, a computer program product is disclosed that tangibly embodies a program of machine-readable instructions executable by a digital processing apparatus to perform operations. The operations include determining information corresponding to acknowledgement status of a previously transmitted data unit that was transmitted over a wireless link using a transport block, wherein a portion but not all of the previously transmitted data unit includes a second data unit. The operations also include determining, based at least on the information, whether retransmission of the second data unit should occur. The operations further include performing the retransmission of the second data unit in response to a determination that the retransmission should be performed.
The foregoing and other aspects of embodiments of this invention are made more evident in the following Detailed Description of Exemplary Embodiments, when read in conjunction with the attached Drawing Figures, wherein:
By way of introduction, in current standardization efforts, such as those for a proposed 3GPP UTRA and UTRAN long term evolution (LTE) network, it may be useful to employ HARQ. According to the experience in HSDPA, however, the use of only HARQ is not sufficient to efficiently achieve a packet error rate lower than 10−3. Therefore, the use of an additional ARQ mechanism on top of the HARQ is desirable. In general, the HARQ performs the main role in the error correction loop, and is supported by ARQ.
Assuming this HARQ/ARQ scenario, attention should be paid to the architecture of the ARQ mechanism so that the mechanism can efficiently utilize the information from the HARQ, including retransmission decision-making, signaling, and the interface between them.
More specifically, the use of the two (H)ARQ loops is desirable to achieve the desired level of reliability. The use of the double loops of HARQ and ARQ, however, adds complexity due to the double signaling over the air, signaling between ARQ and HARQ, and the inclusion of additional fields in PDUs to accommodate the operation of the two H(ARQ) loops.
In this context, then, the specification of an efficient ARQ scheme that supports and incorporates HARQ is thus desirable.
In the current HSDPA, there is no close collaboration between the HARQ and the ARQ. Instead, the HARQ was simply added to the existing WCDMA ARQ when HSDPA was introduced.
Reference is made first to
In general, the various embodiments of the UE 10 can include, but are not limited to, cellular telephones, personal digital assistants (PDAs) having wireless communication capabilities, portable computers having wireless communication capabilities, image capture devices such as digital cameras having wireless communication capabilities, gaming devices having wireless communication capabilities, music storage and playback appliances having wireless communication capabilities, Internet appliances permitting wireless Internet access and browsing, as well as portable units or terminals that incorporate combinations of such functions.
The embodiments of this invention may be implemented by computer software executable by the DP 10A of the UE 10 and the other DPs, or by hardware, or by a combination of software and hardware.
The MEMs 10B, 12B, and 14B may be of any type suitable to the local technical environment and may be implemented using any suitable data storage technology, such as semiconductor-based memory devices, magnetic memory devices and systems, optical memory devices and systems, fixed memory and removable memory. The DPs 10A, 12A, and 14A may be of any type suitable to the local technical environment, and may include one or more of general purpose computers, special purpose computers, microprocessors, digital signal processors (DSPs) and processors based on a multi-core processor architecture, as non-limiting examples.
The MAC 20 also includes mapping information 20F, which is used to map from ARQ (e.g., L2) data units to HARQ (e.g., L1) data units, as described in more detail below. The aspects of the MAC 20 (L2), PHY 22 (L1) of particular interest herein may be embodied with computer program code (e.g., in PROG 10C, 12C), or in hardware, or in a combination of program code and hardware. The ARQ receiver 20B is assumed to be capable of generating and sending an AM status report 26 (e.g., ARQ ACK/NACK), for example, based on a request using polling (as illustrated by a poll message 26). One of the main triggers for a retransmission in ARQ operation is the negative acknowledgement (NACK) of particular RLC PDU sequence(s) sent in an AM status report 26. Polling (e.g., using poll message 25) is most often used by the ARQ transmitter (e.g., 20A or 30A shown in
It is noted that the HARQ receiver 22B can communicate HARQ ACK/NACK information 71 with the HARQ transmitter 22A. Similarly, the ARQ receiver 20B can communicate acknowledgement status information, such as ACK/NACK information, with an ARQ transmitter 20A by using, e.g., the AM status report 26. The HARQ transmitter 22A can communicate with the ARQ transmitter 20A, and the HARQ receiver 22B can communicate with the ARQ receiver 20B. Such communication may take the form, for instance, of a “local NACK” 50, which indicates that a HARQ failure has occurred (and potentially other information as to which HARQ data unit the failure corresponds). In an exemplary embodiment, the local NACK 50 is not intended to be sent for each and every HARQ NACK. Instead the local NACK 50 indicates a failure of transmission attempts (including retransmissions) for a given transport block at HARQ level (e.g., PHY 22). This often means that HARQ level was trying to retransmit a given transport block several times up to a maximum allowed number and still was not able to transmit that transport block successfully. Then, the HARQ transmitter 22A may send a local NACK 50 to the ARQ level (e.g., ARQ transmitter 20A) at the transmitter side so that ARQ transmitter 20A may try to retransmit data, mapped on that given transport block, with new transport block(s) and the HARQ process may repeat for new transport block(s). The HARQ failure here is referred to, for example, when the number of HARQ retransmissions reaches a maximum allowed value for a given HARQ data unit (i.e., TB) or a HARQ level retransmission (ReTx) time-out and the HARQ is still not able to transmit the TB successfully (i.e., no ACK is received to that TB). The communication may also take other forms, e.g., of a generic HARQ information 51. It should be noted that the HARQ manager 40A shown in
The MAC 40 also includes a controller 40B, which controls operations of the MAC 40 and includes the HARQ manager 40A and mapping information 40C. The mapping information 40C is used to map from ARQ (e.g., L2) data units to HARQ (e.g., L1) data units, as described in more detail below. It is noted that the HARQ manager 40A and mapping information 40C could be separate from the controller 40B, if desired. It is also noted that the mapping information 40C could be included in the RLC 30 (e.g., as part of controller 30E) if desired. The aspects of the MAC 40 or RLC 30 of particular interest herein may be embodied with computer, program code (e.g., PROG 10C, 12C), or in hardware, or in a combination of program code and hardware. The ARQ receiver 30B is assumed to be capable of generating and sending an AM status report 26 (e.g., ARQ ACK/NACK), for example, based on a request using polling (as illustrated by a poll message 26).
It is noted that the HARQ receiver 22B can communicate ACK/NACK information 71 with the HARQ transmitter 22A. Similarly, the ARQ receiver 30B can communicate acknowledgement information with the ARQ transmitter 30A. The HARQ transmitter 22A can communicate with the ARQ transmitter 30A, and the HARQ receiver 22B can communicate with the ARQ receiver 30B via MAC. Such communication may take the form, for instance, of a “local NACK” 50, which may be communicated through MAC 40 as local NACK 60. The communication may also take the form, e.g., of a generic HARQ information message 51. It is noted that items 60 and/or 61 are typically a mapping of local NACK or other HARQ acknowledgement status onto relevant information of ARQ, such as sequences of RLC PDU(s) that are included in the failed transport block indicated by the local NACK.
Before turning to a more detailed description of embodiments of the invention, it is helpful to review
RLC PDUs are one example of an ARQ unit of information (called an “ARQ data unit” herein) that will be possibly segmented and combined with other units of information for placement into a HARQ unit of information (called a “HARQ data unit” herein), which is typically a MAC PDU. Some technique, such as a PSN and associated mapping (e.g., from TSN, HARQ process identity, or dispatching timestamp to PSN) is used so that the ARQ unit of information can be determined at the reception side from the HARQ unit(s) of information. Similarly, some technique, such as a TSN, HARQ process identity, or dispatching timestamp, is used such that the HARQ units of information can be determined at the reception side and mapped to ARQ unit(s) of information.
It is noted that a TSN is may be used in a MAC PDU to identify a transport block and/or used for reordering after HARQ operation as in HSDPA. However, a TSN may not be needed herein. This is because a transport block can be identified by other techniques such as its HARQ process identity (ID) and/or its dispatching time-stamp. The reordering can be performed on the RLC level based on PSN.
Turning now to a more detailed description of embodiments of the invention, the following assumptions may be made in one example (as implemented, e.g., by the system in
In another example, the following assumptions may be made (as implemented, e.g., by the system of
Certain exemplary embodiments of this invention pertain to an ARQ transmitter process (e.g., performed by ARQ transmitters 20A/30A) and to an ARQ receiver process (e.g., performed by the ARQ receivers 20B/30B). The basic ARQ scheme (the items (a) and (b) below) are implemented for both the transmitter and receiver sides. The items ((c) and (d)) are provided as an enhancement of the ARQ scheme, and can be implemented at one or both of the transmitter and receiver sides.
(1) Transmitter Side
The following description explains in detail the procedures used in the transmitter side (either the UE 10 or the base station 12). The items (a) and (b) may be considered to be assumptions of the exemplary embodiments of this invention. Reference may also be had to
(a) The ARQ transmitter 20A/30A, also referred to as the L2 transmitter in AM using an ARQ scheme combined with polling, for example, makes a determination to retransmit based on ARQ ACK/NACK information from the ARQ receiver 20B/30B (block 645).
(b) The ARQ transmitter 20A/30A may determine to make the retransmission based on using local timer(s) 22 (T interval) that operate to guard the event of transmitting the requested data (block 650).
(c) The ARQ transmitter 20A/30A may determine to retransmit based on a HARQ (success)/failure indication (e.g., in HARQ information 51, 61 or in local NACK 50, 60) from HARQ transmitter 22A (e.g., and/or the HARQ manager 40A) (block 655).
(c.1) The HARQ transmitter 22A/40A indicates (block 615) HARQ (success)/failure indication (e.g., in HARQ information 51, 61 or local NACK 50, 60) (e.g., based on a HARQ ACK/NACK, timer and/or maximum allowed number of HARQ retransmissions per a transport block) to ARQ transmitter 20A/30A, via the L1/L2 interface 24 and interface 34, or a HARQ ACK/NACK lost indication that is received from the HARQ receiver 22B, or on a retransmission (ReTx) time-out indication, or an indication based on the number of HARQ retransmissions exceeding a maximum allowed value for a given ARQ data unit (e.g., a MAC PDU). A “HARQ ACK/NACK lost” is a DRX (discontinuous reception) that is nothing received instead of expected ACK/NACK at a particular time of HARQ operation. It is noted that these indications may be included in, e.g., HARQ information 51, 61 or local NACK 50, 60, although typically the local NACK 50, 60 is based on a maximum allowed number of HARQ retransmissions per a transport block.
(d) The ARQ transmitter 20A/30A may determine to make a retransmission based on combination of two or more of the cases discussed above (block 660).
(d.1) The ARQ transmitter 20A/30A sends a specific data sequence identified by the PSN and timed for some T interval, which is requested by the ARQ receiver 20B/30B.
(d.2) If the ARQ transmitter 20A/30A receives a HARQ failure indication from the HARQ transmitter 22A/40A, and neither an ARQ ACK/NACK nor a T timeout has occurred, the ARQ transmitter 20A/30A waits T1 interval (T1 is from the L2 timer 20D/30D guarding the HARQ operation for the data packet, T1<T) and during T1:
(d.2.1) If the ARQ transmitter 20A/30A receives an ARQ ACK/NACK, the ARQ transmitter 20A/30A follows (a);
(d.2.2) Else if the ARQ transmitter 20A/30A receives a T time-out, the ARQ transmitter 20A/30A follows (b);
(d.2.3) Else if the T1 timer 20D/30D expires, the ARQ transmitter 20A/30A (respectively) notifies the ARQ receiver 20B/30B (respectively) to reset the timer for the given ARQ (e.g., L2) segments (e.g., RLC segments or PDUs) and starts ARQ (e.g., L2) retransmission (block 630);
(d.3) Else if the ARQ transmitter 20A/30A receives an ARQ ACK/NACK and not a T timeout, the ARQ transmitter 20A/30A follows (a);
(d.4) Else, the ARQ transmitter 20A/30A follows (b).
It is noted, as described in (a)-(d), that when it is determined that an ARQ data unit should be retransmitted (block 625=YES), the ARQ data unit is retransmitted (block 630), typically by using both the ARQ transmitter 20A/30A and HARQ transmitter 22A. It is noted that an ARQ data unit will typically be packaged in a single HARQ data unit, but may be packaged in multiple HARQ data units. If there is no determination that a retransmission should be made (block 625=NO), method 600 ends in block 640.
The operations identified as (d.2.1)-(d.2.2) avoid an occurrence of an error of HARQ ACK/NACK detection at the transmitter side, whereas (d.2.3) proactively initiates an early ARQ (e.g., L2) retransmission in case the ARQ NACK is delayed. This beneficially reduces HARQ-ARQ (e.g., L1-L2) retransmission redundancy and delay.
The operation (d) is provided to avoid unnecessary ARQ (e.g., L2) retransmissions due to a NACK/ACK flipping error and exception cases of the previous operations. Upon receiving a HARQ failure, instead of an ARQ (e.g., L2) retransmitting immediately, the ARQ (e.g., L2) controller 20E/40B delays a maximum of T1 and during that period waits for a ARQ (e.g., L1) ACK to arrive so that the controller can make a better decision as to whether an actual retransmission is needed. Thus, the shorter (than T timer 20C/30C) T1 timer 20D/30D is provided to aid in eliminating some HARQ (e.g., L1) retransmission “false alarms”.
(2) Receiver Side
The following description explains in detail the procedures used in the receiver side (either the UE 10 or the base station 12). The items (a) and (b) may be considered to be assumptions of the exemplary embodiments of this invention. Reference may also be had to
In block 730, it is determined whether to request retransmission of the ARQ data unit. Such determination may be made using, e.g., (a)-(d) below.
(a) The ARQ receiver 20B/30B, also referred to as an L2 receiver in AM using an ARQ scheme in the embodiment shown in
(b) The ARQ receiver 20B/30B of
(c) The ARQ receiver 20B/30B of
(c.1) The HARQ receiver 22B notifies (block 715) an occurrence of a HARQ failure to the ARQ receiver 20B/30B based on, for example, a HARQ retransmission time-out or a number of retransmissions exceeding a maximum allowed number for a given MAC PDU received with a CRC error. It is noted that in
(c.2) The ARQ receiver 20B/30B is capable of determining the corresponding PSN from the HARQ failure notification.
(d) The ARQ receiver 20B/30B is capable of generating and sending a L2 AM status report 26 (ARQ ACK/NACK) based on two or more of the cases discussed above (block 765).
(d.1) The ARQ receiver 20B/30B expects to receive a specific data sequence identified by the PSN and timed for T interval.
(d.2) If the ARQ receiver 20B/30B receives a HARQ failure notification from the HARQ receiver 22B during T, and not the expected data, the ARQ receiver 20B/30B generates and sends an ARQ (e.g., L2) NACK to the ARQ transmitter 20A/30A about the expected PSN.
(d.3) Else if the ARQ receiver 20B/30B receives a T timeout, but neither the expected data nor a HARQ failure notification from the HARQ receiver 22B, the ARQ receiver 20B/30B waits a T1 interval (T1 is the L2 timer 20D guarding the HARQ operation for the data packet, T1<T) and during T1:
(d.3.1) If the ARQ receiver 20B/30B receives a HARQ failure notification from HARQ, the ARQ receiver 20B/30B generates an ARQ (e.g., L2) NACK;
(d.3.2) Else if the T1 time 20D/30D times out before recovering the expected PSN, the ARQ receiver 20B/30B generates an ARQ NACK;
(d.3.3) Else, the ARQ receiver 20B/30B generates an ARQ (e.g., L2) ACK;
(d.4) Else, the ARQ receiver 20B/30B follows (a).
It is noted, as described in (a)-(d), that if it is determined that a request of a retransmission of an ARQ data unit (e.g., RLC PDU) should be made (block 735=YES), then the request for retransmission is made in block 740. If it is determined that a request should not be made (block 735=NO), the method 700 ends in block 745.
The operation in (d2), proactively requesting a necessary ARQ (e.g., L2) retransmission before the T timer 20C/30C timeout, and the operation in (d.3), helping to recover the packet after T timeout, avoids redundancy of the HARQ and ARQ and therefore improves the efficiency of network resource utilization.
It can be noted that the exemplary embodiments of this invention may be even more effective if the scheduling period is made much larger than T and T1. The scheduling period refers to the period that the current allocated resources to the user are valid and the user is allowed to transmit data constrained to the currently allocated resources.
E-UTRAN HARQ functionality may include HARQ error detection and recovery mechanisms. E-UTRAN HARQ assisted ARQ aims at significant enhancements in both reducing complexity and improving efficiency in terms of L2 throughput-delay performance while keeping robustness of the ARQ comparable with that used in UTRAN.
The ARQ level retransmissions can normally be based upon Local NACK indicated by the HARQ level at the transmitter side. Local NACK is generated whenever the HARQ transmitter gives up a particular HARQ process being used for transmitting a given TB, e.g. the maximum number of retransmissions are reached and no ACK is received.
Normal ARQ operation with status reporting is required for E-UTRAN ARQ to recover HARQ residual errors.
In case no further features such as aforementioned receiver-originated HARQ error detection and reporting are adopted, ARQ status reporting should utilize event-triggered reporting effectively to keep protocol overhead as low as possible. For example, the status report is sent only when the receiver performs reordering and detects a missing sequence number (SN) (e.g., PSN) segment. Thus, normally utmost one status report is sent per a reordering interval or window. In the meantime, the transmitter side can also rely on Local ACK and a suitable ARQ timer which is set in line with the reordering interval or window to manage related ARQ retransmission buffer. In addition, polling for status report on the last packet or infrequent high-priority traffic such as RRC signalling is needed as in UTRAN.
Because the delay associated with HARQ functionality is often much less than the delay associated with ARQ functionality involved in transfer of a given packet, retransmission schemes that rely as little as possible on the ARQ tend to provide, overall, shorter round trip time (RTT) and better packet delay. This motivates the introduction and usage of receiver-originated HARQ error detection and reporting as follows.
A mechanism behind the receiver-originated HARQ error detection and reporting is shown in
The HARQ transceiver 540 communicates HARQ information (info) to the C-ARQ transceiver 545 (553). The HARQ transceiver 520 determines that an error occurs and sends a request for retransmission via a NACK (554). It is assumed as an example that the HARQ transceiver 540 at the transmitter side misunderstand that NACK as an ACK, resulting in a false positive ACK (in other words, the HARQ transceiver 540 misinterprets the NACK in 554 as an ACK). In the meantime, the ARQ transceiver 550 sends Data M to the HARQ transceiver 540 (555), which sends the Data M to the HARQ transceiver 520 (556). The HARQ transceiver 520 sends an ACK (559) corresponding to the Data M.
The receiver 505 (e.g., the HARQ transceiver 520) upon detecting a HARQ error of a NACK→ACK misinterpretation nature (557) generates a local NACK (558). The C-ARQ transceiver 515 then generates (561) a HARQ error indication 560 and sends (561) the HARQ error indication back to the transmitter 525 (e.g., as soon as possible). The HARQ error indication 560 includes information related to the lost data, for example, the process ID and the time-stamp associated with the instant when the new data indicator of the relevant TB was first received. The process ID information can be omitted in the case of synchronous HARQ as the process ID information is implicitly specified with a system frame number (SFN) in which the transport block is received. The time-stamp can be associated with other tracking time instant in specified HARQ operation as well. The HARQ error indication 560 is received by the C-ARQ transceiver 545, which generates (562) NACK information and communicates (562) this to the ARQ transceiver 550. The ARQ transceiver 550 then communicates (563) an ARQ retransmission message to the HARQ transceiver 540, which then retransmits (564) the Data N. It is also noted that the ARQ transceiver 550 can communicate (563) the Data N again to cause the Data N to be retransmitted.
The following points should also be noted.
With regard to the HARQ success/failure indication to the ARQ at the transmitter and/or receiver, the success indication in the transmitter side may be removed when used with the receiver procedure in accordance with the exemplary embodiments of this invention. This is useful for a practical implementation as it, e.g., reduces the amount of signaling over the L1/L2 interface 24 or the MAC/RLC interface 34.
The use of the exemplary embodiments of this invention also provide a single comprehensive implementation of an ARQ scheme by using the transmitter side (d) operations and the receiver side (d) operations. The use of the transmitter side (d) operations enhances the speed of the retransmission because the transmitter side can trigger the retransmission without waiting for an ARQ polling mechanism. The receiver side (d) operations beneficially aid in recovering from a HARQ NACK→ACK flipping error. Hence, the HARQ error condition can be avoided within this combined scheme well.
The use of the exemplary embodiments of this invention also provide for reducing unnecessary retransmissions caused by the HARQ ACK→NACK flipping error. According to experience with HSDPA, the order of the HARQ ACK→NACK flipping error is about 10−3. Therefore, the overhead caused by the unnecessary retransmission is less than 1%. On the other hand, the high cost HARQ NACK→ACK flipping error can be avoided by the exemplary embodiments of the receiver process as described above.
The use of the exemplary embodiments of this invention provide as one non-limiting advantage, as compared to the use of only the HARQ scheme or MAC HARQ scheme, a reduced complexity ARQ implementation. For this purpose, the CRC for the ARQ can be eliminated for achieving lower processing overhead, and the polling scheme may be used for a lower signaling load. These two factors tend to generally increase the retransmission delay. The use of the exemplary embodiments of this invention thus shortens the overall delay, and also provides the recovery mechanism from the HARQ NACK→ACK flipping error condition.
Further, the use of the exemplary embodiments of this invention does not require any additional signaling field for the ARQ (if the CRC is not used).
Further, the ARQ retransmission becomes faster, and more accurate (from the transmitter side). For example, the transmitter process (operation d.2.3) can maintain the ARQ (e.g., L2) retransmission delay within T1 from the time of the HARQ (e.g., L1) failure notification. This is generally much faster than the use of an ARQ polling scheme. Further, and even if the CRC is implemented in ARQ, in addition to the CRC for HARQ, the advantages obtained in the transmitter side process discussed above remain valid.
A still further advantage that is realized by the use of the exemplary embodiments of this invention is that the ARQ retransmission becomes faster, and more accurate (from the receiver side). For example, the receiver process (operations (c) or (d.2)) can reduce the time needed to send the ARQ NACK, as compared to the use of a polling mechanism. Further, the receiver process can recover a drawback of the transmitter process. That is, since the transmitter process cannot detect the HARQ NACK→ACK flipping error, the receiver process (operations (c) or (d.2)) can ensure that the necessary ARQ retransmission occurs.
As was noted above, the various embodiments of this invention may be implemented in hardware such as special purpose circuits or logic, software, or any combination thereof. For example, some aspects may be implemented in hardware, while other aspects may be implemented in software (e.g., firmware) which may be executed by a controller, microprocessor or other digital processing device, although the invention is not limited thereto. While various aspects of the invention may be illustrated and described as block diagrams, flow charts, or using some other pictorial representation, it is well understood that these blocks, apparatus, systems, techniques or methods described herein may be implemented in, as non-limiting examples, hardware (e.g., special purpose circuits, logic, general purpose hardware or controllers, or other digital processing devices), software, (e.g., firmware), or some combination thereof.
It should also be noted that the exemplary embodiments of the inventions may be practiced in various components, such as integrated circuit modules. The design of integrated circuits is by and large a highly automated process. Complex and powerful software tools are available for converting a logic level design into a semiconductor circuit design ready to be etched and formed on a semiconductor substrate.
Programs, such as those provided by Synopsys, Inc. of Mountain View, Calif. and Cadence Design, of San Jose, Calif. automatically route conductors and locate components on a semiconductor chip using well established rules of design as well as libraries of pre-stored design modules. Once the design for a semiconductor circuit has been completed, the resultant design, in a standardized electronic format (e.g., Opus, GDSII, or the like) may be transmitted to a semiconductor fabrication facility or “fab” for fabrication.
Various modifications and adaptations may become apparent to those skilled in the relevant arts in view of the foregoing description, when read in conjunction with the accompanying drawings. However, any and all modifications of the teachings of this invention will still fall within the scope of the non-limiting embodiments of this invention.
Furthermore, some of the features of the various non-limiting embodiments of this invention may be used to advantage without the corresponding use of other features. As such, the foregoing description should be considered as merely illustrative of the principles, teachings and exemplary embodiments of this invention, and not in limitation thereof.
The present application claims the benefit under 35 U.S.C. §119(e) of U.S. Provisional Patent Application No. 60/741,143, filed on 30 Nov. 2005, the disclosure of which is hereby incorporated by reference in its entirety.
Number | Date | Country | |
---|---|---|---|
60741143 | Nov 2005 | US |