WO2020226680A1 - Adaptive reordering in multiband communication systems - Google Patents

Adaptive reordering in multiband communication systems Download PDF

Info

Publication number
WO2020226680A1
WO2020226680A1 PCT/US2019/057269 US2019057269W WO2020226680A1 WO 2020226680 A1 WO2020226680 A1 WO 2020226680A1 US 2019057269 W US2019057269 W US 2019057269W WO 2020226680 A1 WO2020226680 A1 WO 2020226680A1
Authority
WO
WIPO (PCT)
Prior art keywords
frames
window
block
reordering
circuit
Prior art date
Application number
PCT/US2019/057269
Other languages
French (fr)
Inventor
Tianan MA
Yongjiang Yi
Chusong Xiao
Original Assignee
Huawei Technologies Co. Ltd.
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
Application filed by Huawei Technologies Co. Ltd. filed Critical Huawei Technologies Co. Ltd.
Publication of WO2020226680A1 publication Critical patent/WO2020226680A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1829Arrangements specially adapted for the receiver end
    • H04L1/1832Details of sliding window management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/1607Details of the supervisory signal
    • H04L1/1614Details of the supervisory signal using bitmaps
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1829Arrangements specially adapted for the receiver end
    • H04L1/1835Buffer management
    • H04L1/1841Resequencing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L5/00Arrangements affording multiple use of the transmission path
    • H04L5/003Arrangements for allocating sub-channels of the transmission path
    • H04L5/0037Inter-user or inter-terminal allocation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L5/00Arrangements affording multiple use of the transmission path
    • H04L5/003Arrangements for allocating sub-channels of the transmission path
    • H04L5/0044Arrangements for allocating sub-channels of the transmission path allocation of payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L5/00Arrangements affording multiple use of the transmission path
    • H04L5/003Arrangements for allocating sub-channels of the transmission path
    • H04L5/0058Allocation criteria
    • H04L5/0064Rate requirement of the data, e.g. scalable bandwidth, data priority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • H04W76/15Setup of multiple wireless link connections
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/34Flow control; Congestion control ensuring sequence integrity, e.g. using sequence numbers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/41Flow control; Congestion control by acting on aggregated flows or links

Definitions

  • the disclosure generally relates to electronic communication and to systems and methods used for electronic communication.
  • Electronic communication including wireless electronic communication is widely used for a broad range of purposes.
  • Electronic circuits including electronic circuits formed as integrated circuits (ICs) on semiconductor substrates, may be used in electronic communication systems.
  • ICs integrated circuits
  • mobile phones, laptops, tablets and other user devices may use wireless electronic communication to access a wireless network.
  • user devices In a wireless communication network, user devices (user equipment) may wirelessly connect to an access point or base station, which is connected to a network (e.g. the Internet) and provides network access to user devices.
  • a network e.g. the Internet
  • a circuit that includes a plurality of receivers configured to receive frames of a stream of data in parallel.
  • a block acknowledge circuit is configured to generate block acknowledgements for corresponding blocks of frames received by the plurality of receiver circuits.
  • Each block of frames contains a predetermined number of frames, a block acknowledgement providing acknowledgement information for each frame of a corresponding block.
  • a reordering circuit is configured to maintain a plurality of frames of the stream of data in a reordering window while one or more failed frames are resent in response to a block acknowledgement indicating the failed frames, the reordering window configurable to contain more than a block of frames.
  • the reordering window is dynamically configurable to contain two or more blocks of frames.
  • the plurality of receivers includes n receivers corresponding to n channels allocated to the stream of data for a multi-band transmission and the reordering window is configurable to contain at least n blocks of frames.
  • the reordering window is configurable to contain 2n blocks of frames.
  • the frames of the stream of data are assigned sequence numbers
  • the reordering window includes frames having sequential sequence numbers from a window start frame to a window end frame and the reordering circuit is configured to separately move the window start frame and the window end frame.
  • the sequence numbers extend from zero to a maximum sequence number with wrap-around after the maximum sequence number and the reordering window is dynamically configurable to include a number of frames up to the maximum sequence number.
  • the reordering circuit is configured to change the window start frame in response to confirming that a first block that includes the window start frame is complete.
  • the reordering circuit is further configured to release the first block in response to confirming that the first block is complete.
  • the reordering circuit is further configured to change the window end frame in response to receiving one or more frames with sequence numbers higher than a sequence number of the window end frame.
  • data of frames within the reordering window are stored in an area of a shared memory.
  • a method that includes receiving a plurality of frames of a data stream, the plurality of frames equal in size to a block acknowledgement window, the plurality of frames including one or more failed frames.
  • the method includes generating a block acknowledgement indicating receipt of the plurality of frames and indicating the one or more failed frames, maintaining the plurality of frames in a reordering window, the reordering window is bigger than the block acknowledgement window.
  • the method further includes subsequently receiving resent copies of the one or more failed frames and additional data and adding the one or more failed frames and the additional data to the plurality of frames in the reordering window.
  • the method includes, in response to confirming the resent copies of the one or more failed frames, releasing the plurality of frames including the resent copies of the one or more failed frames.
  • the method includes in response to releasing the plurality of frames, moving a starting frame of the reordering window.
  • the method further includes dynamically configuring reordering window size.
  • the frames of the stream of data are assigned sequence numbers, and the reordering window extends from a window start frame, sequentially by sequence number, to a window end frame, and wherein dynamically configuring the reordering window includes separately changing the window start frame and the window end frame.
  • the method includes changing the window start frame in response to confirming that all frames of a block acknowledgement window extending from the window start frame are successfully received.
  • the method further includes changing the window end frame in response to receiving one or more frames with sequence numbers higher than the window end frame.
  • a system includes an AP and a UE.
  • the AP includes a plurality of transmitters configured to send a plurality of frames of a stream of data in parallel.
  • the UE includes a plurality of receivers configured to receive the plurality of frames of the stream of data in parallel, a block acknowledge circuit configured to generate block acknowledgements for corresponding blocks of frames received by the plurality of receiver circuits, each block of frames containing a predetermined number of frames, a block acknowledgement providing acknowledgement information for each frame of a corresponding block, and a reordering circuit configured to maintain a plurality of frames of the stream of data in a reordering window while one or more failed frames are resent by the AP in response to a block acknowledgement indicating the failed frames, the reordering window configurable to contain more than a block of frames.
  • the AP is configured to respond to a block acknowledgement indicating failed frames in a block by resending the failed frames and sending additional data outside the block.
  • the reordering circuit is configured to extend the reordering window in response to receiving one or more frames that are outside the reordering window.
  • FIGURE (FIG.) 1 illustrates an exemplary wireless network for communicating data.
  • FIG. 2 illustrates exemplary details of an instance of user equipment (UE) introduced in FIG. 1.
  • UE user equipment
  • FIG. 3 illustrates exemplary details of an instance of an Access Point (AP) introduced in FIG. 1.
  • AP Access Point
  • FIG. 4 illustrates exemplary details of an implementation of UE of FIG. 2.
  • FIG. 5 illustrates exemplary details of an implementation of AP of FIG. 1 .
  • FIG. 6 illustrates an example of multiband communication.
  • FIG. 7 illustrates examples of a UE configured for multiband communication.
  • FIGs 8A-B illustrate an example of multiband communication with failed frames.
  • FIG 9A-B illustrate an example of operation of a reordering window with capacity of one block.
  • FIG. 10 illustrates an example of operation of a reordering window with capacity of one block in multiband communication.
  • FIG. 1 1 illustrates an example of operation of a reordering window with capacity of more than one block in multiband communication.
  • FIGs 12A-B illustrate an example of operation of an adaptive reordering window with capacity for more than one block.
  • FIGs 13A-B illustrate operation of an adaptive reordering window in multiband communications.
  • FIG. 14 illustrates a method according to an example of the present technology.
  • frames are acknowledged in blocks (e.g. a block of sixteen frames) when they are successfully received by a receiver instead of being individually acknowledged.
  • Frames may be reordered by a receiver in a reordering window that is configurable to be larger than a block.
  • copies of the failed frames may be resent (resent frames) along with new frames (e.g. frames from a subsequent block).
  • the block containing the failed frames may be held in the reordering window until resent frames corresponding to the failed frames are received and the resent frames may be added in the reordering window.
  • a reordering window may extend from a start frame (WinStart) to an end frame (WinEnd), which are separately movable.
  • WinEnd may be moved to accommodate new frames outside the current reordering window.
  • WinStart may be moved as frames are confirmed as received and are released, in order, e.g. to an upper layer.
  • FIG. 1 illustrates a wireless network for communicating data.
  • the communication system 100 includes, for example, user equipment 1 10A-1 10C, radio access networks (RANs) 120A-120B, a core network 130, a public switched telephone network (PSTN) 140, the Internet 150, and other networks 160. Additional or alternative networks include private and public data-packet networks including corporate intranets. While certain numbers of these components or elements are shown in the figure, any number of these components or elements may be included in the system 100.
  • the RANs 120A-120B may include access points (APs) 170 configured to form one or more Wireless Local Area Networks (WLANs).
  • APs 170A-170B APs 170
  • APs 170 may use technology such as defined by IEEE 802.1 1 n or 802.1 1 ax to provide wireless network access to one or more devices (e.g. User Equipment 1 10A) in a home, workplace, airport, or other location.
  • APs 170 may employ orthogonal frequency-division multiplexing (OFDM) to communicate with User Equipment 1 10A-1 10C.
  • OFDM orthogonal frequency-division multiplexing
  • the RANs 120A-120B may include millimeter and/or microwave access points (e.g. APs 170).
  • the APs may include, but are not limited to, a connection point (an mmW CP) capable of mmWcommunication (e.g., a mmW base station).
  • the mmW APs may transmit and receive signals in a frequency range, for example, from 24 GHz to 100 GHz, but are not required to operate throughout this range.
  • the wireless network may be a fifth generation (5G) network including at least one 5G base station which employs orthogonal frequency- division multiplexing (OFDM) and/or non-OFDM and a transmission time interval (TTI) shorter than 1 ms (e.g. 100 or 200 microseconds), to communicate with the communication devices.
  • 5G fifth generation
  • a base station may also be used to refer any of the eNB and the 5G BS (gNB).
  • the network may further include a network server for processing information received from the communication devices via the at least one eNB or gNB.
  • AP access point
  • AP wireless network
  • a suitable wireless network which may include a cellular network
  • AP may be implemented by a base station of a cellular network.
  • System 100 enables multiple wireless users to transmit and receive data and other content.
  • the system 100 may implement one or more channel access methods, such as but not limited to code division multiple access (CDMA), time division multiple access (TDMA), frequency division multiple access (FDMA), orthogonal FDMA (OFDMA), or single-carrier FDMA (SC-FDMA).
  • CDMA code division multiple access
  • TDMA time division multiple access
  • FDMA frequency division multiple access
  • OFDMA orthogonal FDMA
  • SC-FDMA single-carrier FDMA
  • the user equipment (UE) 1 10A-1 10C are configured to operate and/or communicate in the system 100.
  • the user equipment 1 10A-1 10C are configured to transmit and/or receive wireless signals or wired signals.
  • Each user equipment 1 10A-1 10C represents any suitable end user device and may include such devices (or may be referred to) as a user equipment/device, wireless transmit/receive unit (UE), mobile station, fixed or mobile subscriber unit, pager, cellular telephone, personal digital assistant (PDA), smartphone, laptop, computer, touchpad, tablet, wireless sensor, wearable devices or consumer electronics device.
  • UE wireless transmit/receive unit
  • PDA personal digital assistant
  • the RANs 120A-120B include one or more base stations or access points 170A, 170B (collectively, base stations or access points 170).
  • Each of the access points 170 is configured to wirelessly interface with one or more of the UEs 1 10A, 1 10B, 1 10C to enable access to the core network 130, the PSTN 140, the Internet 150, and/or the other networks 160.
  • the Access Points (APs) 170 may include one or more of several well-known devices, such as a wireless router, or a server, router, switch, or other processing entity with a wired or wireless network, a base transceiver station (BTS), a Node-B (NodeB), an evolved NodeB (eNB), a next (fifth) generation (5G) NodeB (gNB), a Home NodeB, a Home eNodeB, or a site controller.
  • BTS base transceiver station
  • NodeB Node-B
  • eNB evolved NodeB
  • 5G NodeB gNB
  • gNB next (fifth) generation
  • the AP 170A forms part of the RAN 120A, which may include other APs, elements, and/or devices.
  • the AP 170B forms part of the RAN 120B, which may include other APs, elements, and/or devices.
  • Each of the APs 170 operates to transmit and/or receive wireless signals within a particular geographic region or area (sometimes referred to as a“cell” in a cellular network).
  • multiple-input multiple-output (MIMO) technology may be employed having multiple transceivers for each area.
  • the APs 170 communicate with one or more of the user equipment 1 10A- 1 10C over one or more air interfaces (not shown) using wireless communication links.
  • the air interfaces may utilize any suitable radio access technology.
  • the system 100 may use multiple channel access functionality, including for example schemes in which the APs 170 and user equipment 1 10A-1 10C are configured to implement an IEEE 802.1 1 standard (e.g. the IEEE 802.1 1 ax standard), the Long Term Evolution wireless communication standard (LTE), LTE Advanced (LTE-A), and/or LTE Multimedia Broadcast Multicast Service (MBMS).
  • the APs 170 and user equipment 1 10A-1 10C are configured to implement UMTS, HSPA, or HSPA+ standards and protocols. Of course, other multiple access schemes and wireless protocols may be utilized.
  • the RANs 120A-120B are in communication with the core network 130 to provide the user equipment 1 10A-1 10C with voice, data, application, Voice over Internet Protocol (VoIP), or other services.
  • VoIP Voice over Internet Protocol
  • the RANs 120A-120B and/or the core network 130 may be in direct or indirect communication with one or more other RANs (not shown).
  • the core network 130 may also serve as a gateway access for other networks (such as PSTN 140, Internet 150, and other networks 160).
  • some or all of the user equipment 1 10A-1 10C may include functionality for communicating with different wireless networks over different wireless links using different wireless technologies and/or protocols.
  • FIG. 1 illustrates one example of a communication system
  • the communication system 100 could include any number of user equipment, access points, networks, or other components in any suitable configuration.
  • user equipment may refer to any type of wireless device communicating with a radio network node in a cellular or mobile communication system.
  • Non-limiting examples of user equipment are a target device, device-to-device (D2D) user equipment, machine type user equipment or user equipment capable of machine-to-machine (M2M) communication, laptops, PDA, iPad, Tablet, mobile terminals, smart phones, laptop embedded equipped (LEE), laptop mounted equipment (LME) and USB dongles.
  • D2D device-to-device
  • M2M machine type user equipment or user equipment capable of machine-to-machine
  • laptops PDA, iPad, Tablet
  • smart phones laptop embedded equipped (LEE), laptop mounted equipment (LME) and USB dongles.
  • LEE laptop embedded equipped
  • LME laptop mounted equipment
  • FIG. 2 illustrates an example details of an UE 1 10 that may implement the methods and teachings according to this disclosure.
  • the UE 1 10 may for example be a mobile telephone but may be other devices in further examples such as a desktop computer, laptop computer, tablet, hand-held computing device, automobile computing device and/or other computing devices.
  • the exemplary UE 1 10 is shown as including at least one transmitter 202, at least one receiver 204, memory 206, at least one processor 208, and at least one input/output device 212.
  • the processor 208 can implement various processing operations of the UE 1 10.
  • the processor 208 can perform signal coding, data processing, power control, input/output processing, or any other functionality enabling the UE 1 10 to operate in the system 100 (FIG. 1 ).
  • the processor 208 may include any suitable processing or computing device configured to perform one or more operations.
  • the processor 208 may include a microprocessor, microcontroller, digital signal processor, field programmable gate array, or application specific integrated circuit.
  • the transmitter 202 can be configured to modulate data or other content for transmission by at least one antenna 210.
  • the transmitter 202 can also be configured to amplify, filter and to frequency convert RF signals before such signals are provided to the antenna 210 for transmission.
  • the transmitter 202 can include any suitable structure for generating signals for wireless transmission.
  • the receiver 204 can be configured to demodulate data or other content received by the at least one antenna 210.
  • the receiver 204 can also be configured to amplify, filter and frequency convert RF signals received via the antenna 210.
  • the receiver 204 can include any suitable structure for processing signals received wirelessly.
  • the antenna 210 can include any suitable structure for transmitting and/or receiving wireless signals. The same antenna, antenna 210, can be used for both transmitting and receiving RF signals, or alternatively, different antennas can be used for transmitting signals and receiving signals.
  • one or multiple transmitters 202 could be used in the UE 1 10
  • one or multiple receivers 204 could be used in the UE 1 10
  • one or multiple antennas 210 could be used in the UE 1 10.
  • at least one transmitter 202 and at least one receiver 204 could be combined into a transceiver. Accordingly, rather than showing a separate block for the transmitter 202 and a separate block for the receiver 204 in FIG. 2, a single block for a transceiver could have been shown.
  • the UE 1 10 further includes one or more input/output devices 212.
  • the input/output devices 212 facilitate interaction with a user.
  • Each input/output device 212 includes any suitable structure for providing information to or receiving information from a user, such as a speaker, microphone, keypad, keyboard, display, or touch screen.
  • the UE 1 10 includes at least one memory 206.
  • the memory 206 stores instructions and data used, generated, or collected by the UE 1 10.
  • the memory 206 could store software or firmware instructions executed by the processor(s) 208 and data used to reduce or eliminate interference in incoming signals.
  • Each memory 206 includes any suitable volatile and/or non-volatile storage and retrieval device(s). Any suitable type of memory may be used, such as random access memory (RAM), read only memory (ROM), hard disk, optical disc, subscriber identity module (SIM) card, memory stick, secure digital (SD) memory card, and the like.
  • FIG. 3 illustrates an example AP 170 that may implement the methods and teachings according to this disclosure.
  • the AP 170 includes at least one processor 308, at least one transmitter 302, at least one receiver 304, one or more antennas 310, and at least one memory 306.
  • the processor 308 implements various processing operations of the AP 170, such as signal coding, data processing, power control, input/output processing, or any other functionality.
  • Each processor 308 includes any suitable processing or computing device configured to perform one or more operations.
  • Each processor 308 could, for example, include a microprocessor, microcontroller, digital signal processor, field programmable gate array, or application specific integrated circuit.
  • Each transmitter 302 includes any suitable structure for generating signals for wireless transmission to one or more UEs 1 10 or other devices.
  • Each receiver 304 includes any suitable structure for processing signals received wirelessly from one or more UEs 1 10 or other devices. Although shown as separate blocks or components, at least one transmitter 302 and at least one receiver 304 may be combined into a transceiver.
  • Each antenna 310 includes any suitable structure for transmitting and/or receiving wireless signals. While a common antenna 310 is shown here as being coupled to both the transmitter 302 and the receiver 304, one or more antennas 310 could be coupled to the transmitter(s) 302, and one or more separate antennas 310 could be coupled to the receiver(s) 304.
  • Each memory 306 includes any suitable volatile and/or non-volatile storage and retrieval device(s).
  • the technology described herein can be implemented using hardware, software, or a combination of both hardware and software.
  • the software used is stored on one or more of the processor readable storage devices described above to program one or more of the processors to perform the functions described herein.
  • the processor readable storage devices can include computer readable media such as volatile and non-volatile media, removable and non-removable media.
  • computer readable media may comprise computer readable storage media and communication media.
  • Computer readable storage media may be implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data.
  • Examples of computer readable storage media include RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by a computer.
  • a computer readable medium or media does (do) not include propagated, modulated or transitory signals.
  • Communication media typically embodies computer readable instructions, data structures, program modules or other data in a propagated, modulated or transitory data signal such as a carrier wave or other transport mechanism and includes any information delivery media.
  • modulated data signal means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal.
  • communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as RF and other wireless media. Combinations of any of the above are also included within the scope of computer readable media.
  • some or all of the software can be replaced by dedicated hardware logic components.
  • illustrative types of hardware logic components include Field-programmable Gate Arrays (FPGAs), Application-specific Integrated Circuits (ASICs), Application-specific Standard Products (ASSPs), System-on-a-chip systems (SOCs), Complex Programmable Logic Devices (CPLDs), special purpose computers, etc.
  • FPGAs Field-programmable Gate Arrays
  • ASICs Application-specific Integrated Circuits
  • ASSPs Application-specific Standard Products
  • SOCs System-on-a-chip systems
  • CPLDs Complex Programmable Logic Devices
  • special purpose computers etc.
  • software stored on a storage device
  • the one or more processors can be in communication with one or more computer readable media/ storage devices, peripherals and/or communication interfaces.
  • Figure 4 shows an example of an implementation of UE 1 10 that is adapted for multi-band operations.
  • Figure 4 shows receiver 204 including individual RF band receivers 425, 426, 427, each of which receives an RF signal over a different RF band to allow multi-band operation of UE 1 10.
  • Processor 208 is adapted for multi-band operation and includes individual physical layer (PFIY) circuits 420, 421 , 422 coupled respectively to individual RF band receivers 425, 426, 427.
  • PHY layer circuits 420, 421 , 422 are connected to Media Access Control (MAC) layer circuit 418, which is connected to UE host interface 416 to provide communication with additional components of UE 1 10 or external to UE 1 10.
  • PFIY physical layer
  • MAC Media Access Control
  • receiver 204 is illustrated in Figure 4, it will be understood that a transmitter such as transmitter 202 may be similarly configured for multi-band operation, or that receiver 204 may be configured as a transceiver (e.g. RF band receivers 425, 426, 427 may be configured for transmission also). RF band receivers 425, 426, 427 are coupled to respective antennas 430 to facilitate receiving (and, in some cases, transmitting) RF signals. While shown as separate circuits, it will be understood that processor 208 and receiver 204 may be implemented in a common integrated circuit (IC), e.g. as a system on a chip (SOC) or other structure.
  • IC integrated circuit
  • SOC system on a chip
  • FIG. 5 illustrates an example of an implementation of AP 170 that is adapted for multi-band operations (e.g. in communication with one or more UEs such as UE 1 10 as illustrated in Figure 4).
  • AP 170 includes transmitter 302, which in this implementation includes individual RF band transmitters 525, 526, 527, each of which transmits over a different RF band to allow multi-band operation of AP 170.
  • Processor 308 is adapted for multi-band operation and includes individual physical layer (PFIY) layer circuits 520, 521 , 522 coupled respectively to individual RF band transmitters 525, 526, 527.
  • PFIY physical layer
  • PHY layer circuits 520, 521 , 522 are connected to Media Access Control (MAC) layer circuit 518, which is connected to AP host interface 516 to provide communication with additional components of AP 170 or external to AP 170.
  • MAC Media Access Control
  • transmitter 302 is illustrated in Figure 5, it will be understood that a receiver such as receiver 304 may be similarly configured for multi-band operation, or that transmitter 302 may be configured as a transceiver (e.g. RF band transmitters 525, 526, 527 may be configured for receiving also).
  • RF band transmitters 525, 526, 527 are coupled to respective antennas 530 to facilitate transmitting (and, in some cases, receiving) RF signals.
  • processor 308 and transmitter 302 may be implemented in a common integrated circuit (IC), e.g. as a system on a chip (SOC) or other structure.
  • IC integrated circuit
  • SOC system on a chip
  • Figure 6 illustrates an example of operation of AP 170 in communication with UE 1 10 to provide multi-band communication (e.g. in a WLAN using WiFi technology, in a cellular network, or other communication network).
  • This communication may be two-way communication with RF components (e.g. RF band transmitters 525, 526, 527 and RF band receivers 425, 426, 427) configured to both transmit and receive (configured as transceivers) and/or with the addition of other components to facilitate bi-directional communication.
  • Individual RF band transmitter 525 is in communication with individual RF receiver 425 via communication channel 636 (e.g. using a first RF band).
  • Individual RF band transmitter 526 is in communication with individual RF receiver 426 via communication channel 638 (e.g.
  • the three communication channels, using three RF bands, may be configured to convey data of a single data stream in parallel (e.g. to stream data from AP 1 10 to UE 1 10) to thereby provide high speed communication. Additional communication channels between AP 170 and UE 1 10 may be provided and the number of such channels and corresponding RF components is not limited to any particular number.
  • Figure 7 illustrates certain components of UE 1 10 that facilitate multi-band operation of communication channels 636, 638, and 640.
  • Figure 7 shows MAC 418 including block acknowledge circuit 742, reordering circuit 744, and buffer 746.
  • block acknowledge circuit 742, reordering circuit 744, and buffer 746 are used when data of a data stream is received via communication channels 636, 638, and 640 to acknowledge receipt of data and to store and reorder the data prior to releasing it (e.g. releasing it to other components of MAC layer circuit 418 or other components of UE 1 10.
  • block acknowledge circuit 742 may generate and send a block acknowledge for every block of sixteen frames received over a communication channel (e.g. communication channels 636, 638, 640).
  • a block acknowledge may include information regarding which frames of a block were successfully received and which frames were not successfully received (failed frames). In response to a block acknowledge that indicates one or more failed frames, copies of the frames may be resent.
  • Reordering circuit 744 may operate a reordering window to allow reordering of frames received over one or more communication channels.
  • a reorder window is the same size as a block of frames used for block acknowledge purposes (e.g. sixteen frames in the example above).
  • reordering circuit 744 may maintain frames in a reorder window until a block acknowledge is sent.
  • data of the block may be maintained in a reorder window until the frames are resent and confirmed (i.e. resent frames are confirmed as successfully received and not failed, e.g. by ECC) and then released with the resent frames as a complete block.
  • ECC e.g. by ECC
  • Data in a reordering window operated by reordering circuit 744 may be maintained in any suitable physical data storage component.
  • Buffer 746 is shown in MAC layer circuit 418 and may be a dedicated buffer that is used for data of reordering window 744. Alternatively, buffer 746 may be a shared buffer (in MAC 418 or elsewhere) that is also used for other purposes.
  • data in a reordering window may be maintained in a portion of a memory (volatile or nonvolatile memory) that is common to various components of UE 1 10.
  • Figure 8A shows an example of operation of communication channels 636, 638, 640 between AP 170 and UE 1 10 (e.g. configured as illustrated in Figure 6).
  • a block 850 that includes sixteen frames is sent from AP 170 to UE 1 10.
  • the size of a block (or block acknowledgement window) is fixed in this example (sixteen frames) so that all communication channels use the same block size, which may be predetermined (e.g. set as part of a standard).
  • UE 1 10 sends block acknowledge 852 to AP 170 (e.g. block acknowledge circuit 742, illustrated in Figure 7, may generate and send block acknowledge 852).
  • Block 850 includes failed frames 854, 855, 856.
  • Failed frames are frames that are not successfully received by UE 1 10 (e.g. frames that include a number of errors beyond the error correction capacity of error correction circuits of UE 1 10 due to interference in communication channel 636 or from some other cause).
  • Block acknowledge 852 may include indicators as to which frames are successfully received and which are failed frames. In this example, block acknowledge 852 indicates that frames 854, 855, and 856 are failed frames (and that all other frames of block 850 were successfully received).
  • a block 860 that includes sixteen frames is sent from AP 170 to UE 1 10.
  • UE 1 10 sends block acknowledge 862 to AP 170 (e.g. block acknowledge circuit 742, illustrated in Figure 7, may generate and send block acknowledge 862).
  • Block 860 includes no failed frames.
  • block acknowledge 862 indicates that all frames of block 860 were successfully received.
  • a block 864 that includes sixteen frames is sent from AP 170 to UE 1 10.
  • UE 1 10 sends block acknowledge 866 to AP 170 (e.g. block acknowledge circuit 742, illustrated in Figure 7, may generate and send block acknowledge 866).
  • Block 864 includes no failed frames.
  • block acknowledge 866 indicates that all frames of block 864 were successfully received.
  • Data of blocks 850, 860, 864 may be data of a common stream of data. Transfer of data in communication channels 636, 638, 640 may occur in parallel (e.g. blocks 850, 860, 864 may be transmitted in parallel, or substantially in parallel, by AP 170 and block acknowledges 852, 862 866 may be transmitted in parallel, or substantially in parallel, by UE 1 10. This provides efficient usage of available spectrum. However, in the scenario of Figure 8A, some inefficiency may occur.
  • AP may resend copies 870 of the failed frames as shown in Figure 8B. Additional frames may be sent to form a full block for block acknowledgement purposes (e.g. padding data may be added) or some indication may be provided to indicate the end of a block. While sending copies 870 via communication channel 636, communication channels 638, 640 are idle in this example. AP 170 may leave such communication channels idle to avoid sending data out-of-order. However, this uses available spectrum inefficiently.
  • Figure 9A illustrates sending block 850 and subsequent resending of frames 870 by AP 170. It can be seen that while block 850 occupies an entire block acknowledge window, resent frames 870 occupy only a portion of a block acknowledge (BA) window so that the remainder of the block acknowledge window is unused.
  • BA block acknowledge
  • Figure 9B illustrates receiving data including block 850 by UE 1 10.
  • Figure 9B shows reordering window 974 extending from a window start frame (WinStart), which in this example is failed frame 854, to a window end frame (WinEnd).
  • reordering window 974 may be configured by reordering circuit 744, including maintaining pointers to WinStart and WinEnd while block 850 is stored in a buffer such as buffer 746.
  • Three failed frames 854, 855, 856 were encountered when block 850 was received by UE 1 10 (e.g. due to interference or otherwise) and are each marked with an X. When copies of these frames are resent (resent copies 870) the resent frames may be confirmed as successfully received (e.g.
  • reordering window 974 may be released (e.g. to a higher layer) and reordering window 974 may move to subsequent data (e.g. to another block that was received in parallel with block 850 such as block 860).
  • a block acknowledgement may be sent to AP 170 to indicate that the resent frames 170 were successfully received.
  • AP 170 may proceed to send additional data over communication channels 636, 638, 640.
  • reordering window 974 is the same size as a block acknowledge window (sixteen frames) in this example and reordering window 974 may not move until resent frames 870 are successfully received and block 850 is released. However, this may cause problems when multiple communications channels are used for multi-band communication.
  • Figure 10 shows receiving blocks 850, 860, 864, each including sixteen frames (e.g. by UE 1 10).
  • sequence numbers SN
  • sequence numbers go from 0 to 4095 and wrap around so that in a stream of data, the next frame after frame with sequence number 4095 is assigned sequence number 0.
  • Sequence numbers may be used to ensure that frames sent through different communication channels that may be received out of order can be re-ordered correctly (e.g. for release to a higher layer).
  • FIG 10 shows Block Acknowledge (BA) windows for band 1 , band 2, and band 3 (corresponding to communication channels 636, 638, 640).
  • Each BA window has capacity for sixteen frames and
  • Figure 10 shows the windows for bands 1 , 2, and 3 occupied by blocks 850, 860, and 864 respectively.
  • Reordering window 974 also has capacity for sixteen frames (i.e. equal in size to a BA window).
  • block 850 is received with failed frames (as previously shown)
  • reordering window 974 may be stuck at block 850 until replacement frames are received or may proceed to subsequent frames (e.g. to frames of blocks 860, 864) with block 850 released without the resent frames (i.e. including failed frames). This may cause problems at a higher layer (e.g. when resent frames are received they may be released out of order).
  • reordering window 1 180 can include subsequent frames from different bands while continuing to maintain frames of block 850. These frames may be maintained until resent frames are received (e.g. resent frames 870, including resent copies of failed frames 854, 855, 856) and thus block 850 and blocks 860, 864 may be released in order, without failed frames (i.e.
  • a reordering window for a given stream of data may have a capacity equal to at least one BA window (one block) for each communication channel (band) assigned to the stream (e.g. reordering window 1 180 has a capacity for three blocks of frames corresponding to three communication channels 636, 638, 640).
  • a reordering window in some embodiments may be configurable so that the size (capacity) of a reordering window can be configured as needed and is not fixed.
  • a re-ordering window may expand or stretch to accommodate more frames while waiting for receipt of replacement frames.
  • WinStart and WinEnd are not necessarily separated by a fixed offset (e.g. sixteen frames as in the case of reordering window 974) and may be separately moved.
  • WinEnd may move when one or more frame is received with a higher sequence number to include the received frame in the reordering window.
  • WinStart may move when the earliest block of frames in the reordering window is released (e.g.
  • WinStart and WinEnd provide flexibility and may facilitate efficient use of available resources in a multiband communications system.
  • Figure 12A-B show an example of how an adaptive reordering window may be used to improve efficiency. This example is illustrated in a single communication channel (single band) example but it will be understood that it may be extended to multiband examples.
  • Figure 12A shows frames sent by a transmitter (e.g. a transmitter of AP 170) including block 850 and resent frames 870 (e.g. resent in response to receipt of block acknowledge 852, indicating failed frames 854, 855, 856 as illustrated in Figure 8A).
  • the transmitter sends additional frames 1284 subsequent to resent frames 870.
  • Resent frames 870 together with additional frames 1284 occupy a BA window and may be considered to form a block 1286 (corresponding to BA Window 2). It will be understood that additional frames 1284 and resent frames 870 are not sequential and that there is a discontinuity in sequence number (SN) between resent frames 870 and additional frames 1284.
  • SN sequence number
  • Figure 12B shows how frames of blocks 850 and 1286 are managed by a receiver (e.g. in UE 1 10).
  • a receiver e.g. in UE 1 10
  • block 850 When block 850 is received, failed frames 854, 855, 856 are detected, and a corresponding block acknowledge (e.g. block acknowledge 852) is generated, which causes the transmitter to transmit resent frames 870 and additional frames 1284.
  • Resent frames 870 replace failed frames 854, 855, 856 and additional frames 1284 are maintained in adaptive reordering window 1288 by extending adaptive reordering window 1288 to be larger than a BA window (i.e. to have a capacity larger than a block, or larger than sixteen frames in this example).
  • reordering window 974 is extended by thirteen frames by moving WinEnd accordingly (e.g. by incrementing the value of WinEnd to WinEnd +13, which may occur without changing WinStart).
  • the size of reordering window 974 is not an integer number of blocks (or BA windows) in this example. It will be understood that an adaptive reordering window may contain any suitable number of frames and is limited only by the number of sequence numbers available (e.g. where sequence numbers run from 0 to 4095, the maximum size for a reordering window may be 4096 frames).
  • block 850 may be released, and WinStart may be moved to the start of additional frames 1284 (without moving WinEnd).
  • Figures 12A-B illustrates an example of a single communication channel, it will be understood that advantages of the present technology are applicable to multichannel communication and may provide increased benefits in a multichannel communications system.
  • Figure 13A illustrates an example of two successive blocks of frames of a data stream received over each channel of a four channel (four band) multiband communication system (e.g. received by four receivers of UE 1 10).
  • bands 1 -4 are allocated to a common data stream and reordering may be performed (e.g. by reordering circuit 744) prior to release.
  • Figure 13A illustrates an example in which a reordering window has capacity for only one block of frames for each band (corresponding to a multiband version of the single band example of Figures 9A-B).
  • Failed frames are illustrated by an“X” in BA Window 1 of the corresponding band.
  • BA window 2 resent frames (shaded) are received (e.g. in response to block acknowledgements that indicate failed frames of BA Window 1 ). No data transmission occurs subsequent to resent frames in BA Window 2.
  • Figure 13B illustrates an example in which, in BA window 2, new frames are sent along with resent frames (e.g. as illustrated in the single band example of Figures 12A-B).
  • This new data transmission is facilitated by an adaptive reordering window that can accommodate the new data (e.g. similarly to additional frames 1284).
  • the reordering window may be configurable to contain at least n blocks of frames.
  • the adaptive reordering window is extendable to include up to four additional BA windows (i.e. eight BA windows or two BA windows per band) in this example (e.g. 128 frames) or may be extendable beyond two BA windows per band.
  • the reordering window may be configurable to contain up to 2n blocks of frames.
  • the size of a reordering window may depend on the amount of new data, which depends on the number of failed frames.
  • the reordering window may be sized appropriately by moving WinEnd as needed to accommodate new data while maintaining WinStart to maintain failed frames until resent frames are received and confirmed.
  • Figure 14 illustrates a method that may be used in a communications system according to an example of the present technology (e.g. in UE 1 10).
  • the method includes receiving a plurality of frames of a data stream, the plurality of frames equal in size to a block acknowledgement window, the plurality of frames including one or more failed frames 1402 (e.g. failed frames 854, 855, 856).
  • the method further includes generating a block acknowledgement indicating receipt of the plurality of frames and indicating the one or more failed frames 1404 (e.g. block acknowledge 852), maintaining the plurality of frames in a reordering window, the reordering window is bigger than the block acknowledgement window 1406 (e.g. reordering windows 1 180, 1288).
  • the method also includes subsequently receiving resent copies of the one or more failed frames and additional data 1408 and adding the one or more failed frames and the additional data to the plurality of frames in the reordering window 1410 (e.g. as shown in Figure 12B).

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

A circuit includes a plurality of receivers configured to receive frames of a stream of data in parallel. A block acknowledge circuit is configured to generate block acknowledgements for corresponding blocks of frames received by the plurality of receiver circuits. Each block of frames contains a predetermined number of frames, a block acknowledgement providing acknowledgement information for each frame of a corresponding block. A reordering circuit is configured to maintain a plurality of frames of the stream of data in a reordering window while one or more failed frames are resent in response to a block acknowledgement indicating the failed frames, the reordering window is configurable to contain more than a block of frames.

Description

ADAPTIVE REORDERING IN MULTIBAND COMMUNICATION SYSTEMS
Inventors:
Tianan Ma
Yongjiang Yi
Chusong Xiao
CROSS-REFERENCE
This application claims the benefit of U.S. Provisional Patent Application Number 62/843, 158 filed on May 3, 2019, which is hereby incorporated by reference.
FIELD
[0001] The disclosure generally relates to electronic communication and to systems and methods used for electronic communication.
BACKGROUND
[0002] Electronic communication, including wireless electronic communication is widely used for a broad range of purposes. Electronic circuits, including electronic circuits formed as integrated circuits (ICs) on semiconductor substrates, may be used in electronic communication systems. For example, mobile phones, laptops, tablets and other user devices may use wireless electronic communication to access a wireless network. In a wireless communication network, user devices (user equipment) may wirelessly connect to an access point or base station, which is connected to a network (e.g. the Internet) and provides network access to user devices. BRIEF SUMMARY
[0003] According to one aspect of the present disclosure, there is provided a circuit that includes a plurality of receivers configured to receive frames of a stream of data in parallel. A block acknowledge circuit is configured to generate block acknowledgements for corresponding blocks of frames received by the plurality of receiver circuits. Each block of frames contains a predetermined number of frames, a block acknowledgement providing acknowledgement information for each frame of a corresponding block. A reordering circuit is configured to maintain a plurality of frames of the stream of data in a reordering window while one or more failed frames are resent in response to a block acknowledgement indicating the failed frames, the reordering window configurable to contain more than a block of frames.
[0004] Optionally, in any of the preceding aspects, the reordering window is dynamically configurable to contain two or more blocks of frames.
[0005] Optionally, in any of the preceding aspects, the plurality of receivers includes n receivers corresponding to n channels allocated to the stream of data for a multi-band transmission and the reordering window is configurable to contain at least n blocks of frames.
[0006] Optionally, in any of the preceding aspects, the reordering window is configurable to contain 2n blocks of frames.
[0007] Optionally, in any of the preceding aspects, the frames of the stream of data are assigned sequence numbers, the reordering window includes frames having sequential sequence numbers from a window start frame to a window end frame and the reordering circuit is configured to separately move the window start frame and the window end frame.
[0008] Optionally, in any of the preceding aspects, the sequence numbers extend from zero to a maximum sequence number with wrap-around after the maximum sequence number and the reordering window is dynamically configurable to include a number of frames up to the maximum sequence number. [0009] Optionally, in any of the preceding aspects, the reordering circuit is configured to change the window start frame in response to confirming that a first block that includes the window start frame is complete.
[0010] Optionally, in any of the preceding aspects, the reordering circuit is further configured to release the first block in response to confirming that the first block is complete.
[0011] Optionally, in any of the preceding aspects, the reordering circuit is further configured to change the window end frame in response to receiving one or more frames with sequence numbers higher than a sequence number of the window end frame.
[0012] Optionally, in any of the preceding aspects, data of frames within the reordering window are stored in an area of a shared memory.
[0013] According to still one other aspect of the present disclosure, there is provided a method that includes receiving a plurality of frames of a data stream, the plurality of frames equal in size to a block acknowledgement window, the plurality of frames including one or more failed frames. The method includes generating a block acknowledgement indicating receipt of the plurality of frames and indicating the one or more failed frames, maintaining the plurality of frames in a reordering window, the reordering window is bigger than the block acknowledgement window. The method further includes subsequently receiving resent copies of the one or more failed frames and additional data and adding the one or more failed frames and the additional data to the plurality of frames in the reordering window.
[0014] Optionally, in any of the preceding aspects, the method includes, in response to confirming the resent copies of the one or more failed frames, releasing the plurality of frames including the resent copies of the one or more failed frames.
[0015] Optionally, in any of the preceding aspects, the method includes in response to releasing the plurality of frames, moving a starting frame of the reordering window.
[0016] Optionally, in any of the preceding aspects, the method further includes dynamically configuring reordering window size. [0017] Optionally, in any of the preceding aspects, the frames of the stream of data are assigned sequence numbers, and the reordering window extends from a window start frame, sequentially by sequence number, to a window end frame, and wherein dynamically configuring the reordering window includes separately changing the window start frame and the window end frame.
[0018] Optionally, in any of the preceding aspects, the method includes changing the window start frame in response to confirming that all frames of a block acknowledgement window extending from the window start frame are successfully received.
[0019] Optionally, in any of the preceding aspects, the method further includes changing the window end frame in response to receiving one or more frames with sequence numbers higher than the window end frame.
[0020] According to still one other aspect of the present disclosure, a system includes an AP and a UE. The AP includes a plurality of transmitters configured to send a plurality of frames of a stream of data in parallel. The UE includes a plurality of receivers configured to receive the plurality of frames of the stream of data in parallel, a block acknowledge circuit configured to generate block acknowledgements for corresponding blocks of frames received by the plurality of receiver circuits, each block of frames containing a predetermined number of frames, a block acknowledgement providing acknowledgement information for each frame of a corresponding block, and a reordering circuit configured to maintain a plurality of frames of the stream of data in a reordering window while one or more failed frames are resent by the AP in response to a block acknowledgement indicating the failed frames, the reordering window configurable to contain more than a block of frames.
[0021] Optionally, in any of the preceding aspects, the AP is configured to respond to a block acknowledgement indicating failed frames in a block by resending the failed frames and sending additional data outside the block.
[0022] Optionally, in any of the preceding aspects, the reordering circuit is configured to extend the reordering window in response to receiving one or more frames that are outside the reordering window. [0023] This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject matter. The claimed subject matter is not limited to implementations that solve any or all disadvantages noted in the Background.
BRIEF DESCRIPTION OF THE DRAWINGS
[0024] Aspects of the present disclosure are illustrated by way of example and are not limited by the accompanying figures (FIGS.) for which like references indicate elements.
[0025] FIGURE (FIG.) 1 illustrates an exemplary wireless network for communicating data.
[0026] FIG. 2 illustrates exemplary details of an instance of user equipment (UE) introduced in FIG. 1.
[0027] FIG. 3 illustrates exemplary details of an instance of an Access Point (AP) introduced in FIG. 1.
[0028] FIG. 4 illustrates exemplary details of an implementation of UE of FIG. 2.
[0029] FIG. 5 illustrates exemplary details of an implementation of AP of FIG. 1 .
[0030] FIG. 6 illustrates an example of multiband communication.
[0031] FIG. 7 illustrates examples of a UE configured for multiband communication.
[0032] FIGs 8A-B illustrate an example of multiband communication with failed frames.
[0033] FIG 9A-B illustrate an example of operation of a reordering window with capacity of one block. [0034] FIG. 10 illustrates an example of operation of a reordering window with capacity of one block in multiband communication.
[0035] FIG. 1 1 illustrates an example of operation of a reordering window with capacity of more than one block in multiband communication.
[0036] FIGs 12A-B illustrate an example of operation of an adaptive reordering window with capacity for more than one block.
[0037] FIGs 13A-B illustrate operation of an adaptive reordering window in multiband communications.
[0038] FIG. 14 illustrates a method according to an example of the present technology.
DETAILED DESCRIPTION
[0039] The present disclosure will now be described with reference to the figures, which in general relate to systems and methods of transmitting and receiving data that may be used in various communication systems, e.g. in wireless communication networks such as WiFi networks, cellular telephone networks, or other wireless communication networks.
[0040] In some examples, including multiband communication examples, frames are acknowledged in blocks (e.g. a block of sixteen frames) when they are successfully received by a receiver instead of being individually acknowledged. Frames may be reordered by a receiver in a reordering window that is configurable to be larger than a block. In this way, when failed frames are received, copies of the failed frames may be resent (resent frames) along with new frames (e.g. frames from a subsequent block). The block containing the failed frames may be held in the reordering window until resent frames corresponding to the failed frames are received and the resent frames may be added in the reordering window. A reordering window may extend from a start frame (WinStart) to an end frame (WinEnd), which are separately movable. Thus, for example, WinEnd may be moved to accommodate new frames outside the current reordering window. WinStart may be moved as frames are confirmed as received and are released, in order, e.g. to an upper layer.
[0041] It is understood that the present embodiments of the disclosure may be implemented in many different forms and that claims scopes should not be construed as being limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete and will fully convey the inventive embodiment concepts to those skilled in the art. Indeed, the disclosure is intended to cover alternatives, modifications and equivalents of these embodiments, which are included within the scope and spirit of the disclosure as defined by the appended claims. Furthermore, in the following detailed description of the present embodiments of the disclosure, numerous specific details are set forth in order to provide a thorough understanding. However, it will be clear to those of ordinary skill in the art that the present embodiments of the disclosure may be practiced without such specific details.
[0042] FIG. 1 illustrates a wireless network for communicating data. The communication system 100 includes, for example, user equipment 1 10A-1 10C, radio access networks (RANs) 120A-120B, a core network 130, a public switched telephone network (PSTN) 140, the Internet 150, and other networks 160. Additional or alternative networks include private and public data-packet networks including corporate intranets. While certain numbers of these components or elements are shown in the figure, any number of these components or elements may be included in the system 100.
[0043] In one embodiment, the RANs 120A-120B may include access points (APs) 170 configured to form one or more Wireless Local Area Networks (WLANs). For example, APs 170A-170B (APs 170) may use technology such as defined by IEEE 802.1 1 n or 802.1 1 ax to provide wireless network access to one or more devices (e.g. User Equipment 1 10A) in a home, workplace, airport, or other location. APs 170 may employ orthogonal frequency-division multiplexing (OFDM) to communicate with User Equipment 1 10A-1 10C. [0044] In one embodiment, the RANs 120A-120B may include millimeter and/or microwave access points (e.g. APs 170). The APs may include, but are not limited to, a connection point (an mmW CP) capable of mmWcommunication (e.g., a mmW base station). The mmW APs may transmit and receive signals in a frequency range, for example, from 24 GHz to 100 GHz, but are not required to operate throughout this range.
[0045] In one embodiment, the wireless network may be a fifth generation (5G) network including at least one 5G base station which employs orthogonal frequency- division multiplexing (OFDM) and/or non-OFDM and a transmission time interval (TTI) shorter than 1 ms (e.g. 100 or 200 microseconds), to communicate with the communication devices. In general, a base station may also be used to refer any of the eNB and the 5G BS (gNB). In addition, the network may further include a network server for processing information received from the communication devices via the at least one eNB or gNB. The term “access point” or“AP” is generally used in this application to refer to an apparatus that provides wireless communication to user equipment through a suitable wireless network, which may include a cellular network, and it will be understood that an AP may be implemented by a base station of a cellular network.
[0046] System 100 enables multiple wireless users to transmit and receive data and other content. The system 100 may implement one or more channel access methods, such as but not limited to code division multiple access (CDMA), time division multiple access (TDMA), frequency division multiple access (FDMA), orthogonal FDMA (OFDMA), or single-carrier FDMA (SC-FDMA).
[0047] The user equipment (UE) 1 10A-1 10C are configured to operate and/or communicate in the system 100. For example, the user equipment 1 10A-1 10C are configured to transmit and/or receive wireless signals or wired signals. Each user equipment 1 10A-1 10C represents any suitable end user device and may include such devices (or may be referred to) as a user equipment/device, wireless transmit/receive unit (UE), mobile station, fixed or mobile subscriber unit, pager, cellular telephone, personal digital assistant (PDA), smartphone, laptop, computer, touchpad, tablet, wireless sensor, wearable devices or consumer electronics device. [0048] In the depicted embodiment, the RANs 120A-120B include one or more base stations or access points 170A, 170B (collectively, base stations or access points 170). Each of the access points 170 is configured to wirelessly interface with one or more of the UEs 1 10A, 1 10B, 1 10C to enable access to the core network 130, the PSTN 140, the Internet 150, and/or the other networks 160. For example, the Access Points (APs) 170 may include one or more of several well-known devices, such as a wireless router, or a server, router, switch, or other processing entity with a wired or wireless network, a base transceiver station (BTS), a Node-B (NodeB), an evolved NodeB (eNB), a next (fifth) generation (5G) NodeB (gNB), a Home NodeB, a Home eNodeB, or a site controller.
[0049] In one embodiment, the AP 170A forms part of the RAN 120A, which may include other APs, elements, and/or devices. Similarly, the AP 170B forms part of the RAN 120B, which may include other APs, elements, and/or devices. Each of the APs 170 operates to transmit and/or receive wireless signals within a particular geographic region or area (sometimes referred to as a“cell” in a cellular network). In some embodiments, multiple-input multiple-output (MIMO) technology may be employed having multiple transceivers for each area.
[0050] The APs 170 communicate with one or more of the user equipment 1 10A- 1 10C over one or more air interfaces (not shown) using wireless communication links. The air interfaces may utilize any suitable radio access technology.
[0051] It is contemplated that the system 100 may use multiple channel access functionality, including for example schemes in which the APs 170 and user equipment 1 10A-1 10C are configured to implement an IEEE 802.1 1 standard (e.g. the IEEE 802.1 1 ax standard), the Long Term Evolution wireless communication standard (LTE), LTE Advanced (LTE-A), and/or LTE Multimedia Broadcast Multicast Service (MBMS). In other embodiments, the APs 170 and user equipment 1 10A-1 10C are configured to implement UMTS, HSPA, or HSPA+ standards and protocols. Of course, other multiple access schemes and wireless protocols may be utilized.
[0052] The RANs 120A-120B are in communication with the core network 130 to provide the user equipment 1 10A-1 10C with voice, data, application, Voice over Internet Protocol (VoIP), or other services. As appreciated, the RANs 120A-120B and/or the core network 130 may be in direct or indirect communication with one or more other RANs (not shown). The core network 130 may also serve as a gateway access for other networks (such as PSTN 140, Internet 150, and other networks 160). In addition, some or all of the user equipment 1 10A-1 10C may include functionality for communicating with different wireless networks over different wireless links using different wireless technologies and/or protocols.
[0053] Although FIG. 1 illustrates one example of a communication system, various changes may be made to FIG. 1 . For example, the communication system 100 could include any number of user equipment, access points, networks, or other components in any suitable configuration. It is also appreciated that the term user equipment may refer to any type of wireless device communicating with a radio network node in a cellular or mobile communication system. Non-limiting examples of user equipment are a target device, device-to-device (D2D) user equipment, machine type user equipment or user equipment capable of machine-to-machine (M2M) communication, laptops, PDA, iPad, Tablet, mobile terminals, smart phones, laptop embedded equipped (LEE), laptop mounted equipment (LME) and USB dongles.
[0054] FIG. 2 illustrates an example details of an UE 1 10 that may implement the methods and teachings according to this disclosure. The UE 1 10 may for example be a mobile telephone but may be other devices in further examples such as a desktop computer, laptop computer, tablet, hand-held computing device, automobile computing device and/or other computing devices. As shown in the figure, the exemplary UE 1 10 is shown as including at least one transmitter 202, at least one receiver 204, memory 206, at least one processor 208, and at least one input/output device 212. The processor 208 can implement various processing operations of the UE 1 10. For example, the processor 208 can perform signal coding, data processing, power control, input/output processing, or any other functionality enabling the UE 1 10 to operate in the system 100 (FIG. 1 ). The processor 208 may include any suitable processing or computing device configured to perform one or more operations. For example, the processor 208 may include a microprocessor, microcontroller, digital signal processor, field programmable gate array, or application specific integrated circuit.
[0055] The transmitter 202 can be configured to modulate data or other content for transmission by at least one antenna 210. The transmitter 202 can also be configured to amplify, filter and to frequency convert RF signals before such signals are provided to the antenna 210 for transmission. The transmitter 202 can include any suitable structure for generating signals for wireless transmission.
[0056] The receiver 204 can be configured to demodulate data or other content received by the at least one antenna 210. The receiver 204 can also be configured to amplify, filter and frequency convert RF signals received via the antenna 210. The receiver 204 can include any suitable structure for processing signals received wirelessly. The antenna 210 can include any suitable structure for transmitting and/or receiving wireless signals. The same antenna, antenna 210, can be used for both transmitting and receiving RF signals, or alternatively, different antennas can be used for transmitting signals and receiving signals.
[0057] It is appreciated that one or multiple transmitters 202 could be used in the UE 1 10, one or multiple receivers 204 could be used in the UE 1 10, and one or multiple antennas 210 could be used in the UE 1 10. Although shown as separate blocks or components, at least one transmitter 202 and at least one receiver 204 could be combined into a transceiver. Accordingly, rather than showing a separate block for the transmitter 202 and a separate block for the receiver 204 in FIG. 2, a single block for a transceiver could have been shown.
[0058] The UE 1 10 further includes one or more input/output devices 212. The input/output devices 212 facilitate interaction with a user. Each input/output device 212 includes any suitable structure for providing information to or receiving information from a user, such as a speaker, microphone, keypad, keyboard, display, or touch screen.
[0059] In addition, the UE 1 10 includes at least one memory 206. The memory 206 stores instructions and data used, generated, or collected by the UE 1 10. For example, the memory 206 could store software or firmware instructions executed by the processor(s) 208 and data used to reduce or eliminate interference in incoming signals. Each memory 206 includes any suitable volatile and/or non-volatile storage and retrieval device(s). Any suitable type of memory may be used, such as random access memory (RAM), read only memory (ROM), hard disk, optical disc, subscriber identity module (SIM) card, memory stick, secure digital (SD) memory card, and the like.
[0060] FIG. 3 illustrates an example AP 170 that may implement the methods and teachings according to this disclosure. As shown in the figure, the AP 170 includes at least one processor 308, at least one transmitter 302, at least one receiver 304, one or more antennas 310, and at least one memory 306. The processor 308 implements various processing operations of the AP 170, such as signal coding, data processing, power control, input/output processing, or any other functionality. Each processor 308 includes any suitable processing or computing device configured to perform one or more operations. Each processor 308 could, for example, include a microprocessor, microcontroller, digital signal processor, field programmable gate array, or application specific integrated circuit.
[0061] Each transmitter 302 includes any suitable structure for generating signals for wireless transmission to one or more UEs 1 10 or other devices. Each receiver 304 includes any suitable structure for processing signals received wirelessly from one or more UEs 1 10 or other devices. Although shown as separate blocks or components, at least one transmitter 302 and at least one receiver 304 may be combined into a transceiver. Each antenna 310 includes any suitable structure for transmitting and/or receiving wireless signals. While a common antenna 310 is shown here as being coupled to both the transmitter 302 and the receiver 304, one or more antennas 310 could be coupled to the transmitter(s) 302, and one or more separate antennas 310 could be coupled to the receiver(s) 304. Each memory 306 includes any suitable volatile and/or non-volatile storage and retrieval device(s).
[0062] The technology described herein can be implemented using hardware, software, or a combination of both hardware and software. The software used is stored on one or more of the processor readable storage devices described above to program one or more of the processors to perform the functions described herein. The processor readable storage devices can include computer readable media such as volatile and non-volatile media, removable and non-removable media. By way of example, and not limitation, computer readable media may comprise computer readable storage media and communication media. Computer readable storage media may be implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Examples of computer readable storage media include RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by a computer. A computer readable medium or media does (do) not include propagated, modulated or transitory signals.
[0063] Communication media typically embodies computer readable instructions, data structures, program modules or other data in a propagated, modulated or transitory data signal such as a carrier wave or other transport mechanism and includes any information delivery media. The term“modulated data signal” means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as RF and other wireless media. Combinations of any of the above are also included within the scope of computer readable media.
[0064] In alternative embodiments, some or all of the software can be replaced by dedicated hardware logic components. For example, and without limitation, illustrative types of hardware logic components that can be used include Field-programmable Gate Arrays (FPGAs), Application-specific Integrated Circuits (ASICs), Application- specific Standard Products (ASSPs), System-on-a-chip systems (SOCs), Complex Programmable Logic Devices (CPLDs), special purpose computers, etc. In one embodiment, software (stored on a storage device) implementing one or more embodiments is used to program one or more processors. The one or more processors can be in communication with one or more computer readable media/ storage devices, peripherals and/or communication interfaces. [0065] The need for higher bandwidth and higher throughput is generally growing in the wireless communication industry. The available spectrum resources are limited and very expensive. Instead of allocating more spectrum and spending more on additional bands of spectrum, one current trend is to aggregate available spectrum bands together to form a multi-band operation to increase operation bandwidth so that aggregated throughput could be high enough to meet the demands within available spectrum bands (i.e. without having to pay for additional frequencies). One popular method of multi-band operations is to utilize transmitters in each frequency band and transmit data frames through multiple frequency bands at the same time. For this popular multi-band operation to work, data frame sequences generally have to be kept. Some technology for reordering does not apply well to the multi-band operations as will be described here. Aspects of the present technology facilitate reordering in multi band operations.
[0066] Figure 4 shows an example of an implementation of UE 1 10 that is adapted for multi-band operations. Figure 4 shows receiver 204 including individual RF band receivers 425, 426, 427, each of which receives an RF signal over a different RF band to allow multi-band operation of UE 1 10. Processor 208 is adapted for multi-band operation and includes individual physical layer (PFIY) circuits 420, 421 , 422 coupled respectively to individual RF band receivers 425, 426, 427. PHY layer circuits 420, 421 , 422 are connected to Media Access Control (MAC) layer circuit 418, which is connected to UE host interface 416 to provide communication with additional components of UE 1 10 or external to UE 1 10. While receiver 204 is illustrated in Figure 4, it will be understood that a transmitter such as transmitter 202 may be similarly configured for multi-band operation, or that receiver 204 may be configured as a transceiver (e.g. RF band receivers 425, 426, 427 may be configured for transmission also). RF band receivers 425, 426, 427 are coupled to respective antennas 430 to facilitate receiving (and, in some cases, transmitting) RF signals. While shown as separate circuits, it will be understood that processor 208 and receiver 204 may be implemented in a common integrated circuit (IC), e.g. as a system on a chip (SOC) or other structure. [0067] Figure 5 illustrates an example of an implementation of AP 170 that is adapted for multi-band operations (e.g. in communication with one or more UEs such as UE 1 10 as illustrated in Figure 4). AP 170 includes transmitter 302, which in this implementation includes individual RF band transmitters 525, 526, 527, each of which transmits over a different RF band to allow multi-band operation of AP 170. Processor 308 is adapted for multi-band operation and includes individual physical layer (PFIY) layer circuits 520, 521 , 522 coupled respectively to individual RF band transmitters 525, 526, 527. PHY layer circuits 520, 521 , 522 are connected to Media Access Control (MAC) layer circuit 518, which is connected to AP host interface 516 to provide communication with additional components of AP 170 or external to AP 170. While transmitter 302 is illustrated in Figure 5, it will be understood that a receiver such as receiver 304 may be similarly configured for multi-band operation, or that transmitter 302 may be configured as a transceiver (e.g. RF band transmitters 525, 526, 527 may be configured for receiving also). RF band transmitters 525, 526, 527 are coupled to respective antennas 530 to facilitate transmitting (and, in some cases, receiving) RF signals. While shown as separate circuits, it will be understood that processor 308 and transmitter 302 may be implemented in a common integrated circuit (IC), e.g. as a system on a chip (SOC) or other structure.
[0068] Figure 6 illustrates an example of operation of AP 170 in communication with UE 1 10 to provide multi-band communication (e.g. in a WLAN using WiFi technology, in a cellular network, or other communication network). This communication may be two-way communication with RF components (e.g. RF band transmitters 525, 526, 527 and RF band receivers 425, 426, 427) configured to both transmit and receive (configured as transceivers) and/or with the addition of other components to facilitate bi-directional communication. Individual RF band transmitter 525 is in communication with individual RF receiver 425 via communication channel 636 (e.g. using a first RF band). Individual RF band transmitter 526 is in communication with individual RF receiver 426 via communication channel 638 (e.g. using a second RF band). Individual RF band transmitter 527 is in communication with individual RF receiver 427 via communication channel 640 (e.g. using a third RF band). The three communication channels, using three RF bands, may be configured to convey data of a single data stream in parallel (e.g. to stream data from AP 1 10 to UE 1 10) to thereby provide high speed communication. Additional communication channels between AP 170 and UE 1 10 may be provided and the number of such channels and corresponding RF components is not limited to any particular number.
[0069] Figure 7 illustrates certain components of UE 1 10 that facilitate multi-band operation of communication channels 636, 638, and 640. For example, Figure 7 shows MAC 418 including block acknowledge circuit 742, reordering circuit 744, and buffer 746. In operation, block acknowledge circuit 742, reordering circuit 744, and buffer 746 are used when data of a data stream is received via communication channels 636, 638, and 640 to acknowledge receipt of data and to store and reorder the data prior to releasing it (e.g. releasing it to other components of MAC layer circuit 418 or other components of UE 1 10.
[0070] In certain systems, including examples shown here, when frames of data are received, an acknowledgement is provided on a block basis and not on a frame- by-frame basis. This block acknowledgement system reduces the number of acknowledgements provided and thus reduces the time that the communication channel is in use for acknowledgement compared with frame-by-frame acknowledgement. This allows more efficient use of a communication channel. For example, block acknowledge circuit 742 may generate and send a block acknowledge for every block of sixteen frames received over a communication channel (e.g. communication channels 636, 638, 640). A block acknowledge may include information regarding which frames of a block were successfully received and which frames were not successfully received (failed frames). In response to a block acknowledge that indicates one or more failed frames, copies of the frames may be resent.
[0071] Reordering circuit 744 may operate a reordering window to allow reordering of frames received over one or more communication channels. In some systems a reorder window is the same size as a block of frames used for block acknowledge purposes (e.g. sixteen frames in the example above). Thus, reordering circuit 744 may maintain frames in a reorder window until a block acknowledge is sent. For single band communication, when a block includes one or more failed frame, data of the block may be maintained in a reorder window until the frames are resent and confirmed (i.e. resent frames are confirmed as successfully received and not failed, e.g. by ECC) and then released with the resent frames as a complete block. However, multi-band operation is more complex, and some inefficiencies may arise when failed frames are received.
[0072] Data in a reordering window operated by reordering circuit 744 may be maintained in any suitable physical data storage component. Buffer 746 is shown in MAC layer circuit 418 and may be a dedicated buffer that is used for data of reordering window 744. Alternatively, buffer 746 may be a shared buffer (in MAC 418 or elsewhere) that is also used for other purposes. In some examples, data in a reordering window may be maintained in a portion of a memory (volatile or nonvolatile memory) that is common to various components of UE 1 10.
[0073] Examples of multi-band operation of an AP and UE are shown in Figures 8A-B. Figure 8A shows an example of operation of communication channels 636, 638, 640 between AP 170 and UE 1 10 (e.g. configured as illustrated in Figure 6). In communication channel 636, a block 850 that includes sixteen frames is sent from AP 170 to UE 1 10. The size of a block (or block acknowledgement window) is fixed in this example (sixteen frames) so that all communication channels use the same block size, which may be predetermined (e.g. set as part of a standard). In response, UE 1 10 sends block acknowledge 852 to AP 170 (e.g. block acknowledge circuit 742, illustrated in Figure 7, may generate and send block acknowledge 852). Block 850 includes failed frames 854, 855, 856. Failed frames are frames that are not successfully received by UE 1 10 (e.g. frames that include a number of errors beyond the error correction capacity of error correction circuits of UE 1 10 due to interference in communication channel 636 or from some other cause). Block acknowledge 852 may include indicators as to which frames are successfully received and which are failed frames. In this example, block acknowledge 852 indicates that frames 854, 855, and 856 are failed frames (and that all other frames of block 850 were successfully received).
[0074] In communication channel 638, a block 860 that includes sixteen frames is sent from AP 170 to UE 1 10. In response, UE 1 10 sends block acknowledge 862 to AP 170 (e.g. block acknowledge circuit 742, illustrated in Figure 7, may generate and send block acknowledge 862). Block 860 includes no failed frames. In this example, block acknowledge 862 indicates that all frames of block 860 were successfully received.
[0075] In communication channel 640, a block 864 that includes sixteen frames is sent from AP 170 to UE 1 10. In response, UE 1 10 sends block acknowledge 866 to AP 170 (e.g. block acknowledge circuit 742, illustrated in Figure 7, may generate and send block acknowledge 866). Block 864 includes no failed frames. In this example, block acknowledge 866 indicates that all frames of block 864 were successfully received.
[0076] Data of blocks 850, 860, 864 may be data of a common stream of data. Transfer of data in communication channels 636, 638, 640 may occur in parallel (e.g. blocks 850, 860, 864 may be transmitted in parallel, or substantially in parallel, by AP 170 and block acknowledges 852, 862 866 may be transmitted in parallel, or substantially in parallel, by UE 1 10. This provides efficient usage of available spectrum. However, in the scenario of Figure 8A, some inefficiency may occur.
[0077] In response to receiving block acknowledge 852, which indicates three failed frames 854, 855, 856, AP may resend copies 870 of the failed frames as shown in Figure 8B. Additional frames may be sent to form a full block for block acknowledgement purposes (e.g. padding data may be added) or some indication may be provided to indicate the end of a block. While sending copies 870 via communication channel 636, communication channels 638, 640 are idle in this example. AP 170 may leave such communication channels idle to avoid sending data out-of-order. However, this uses available spectrum inefficiently.
[0078] Figure 9A illustrates sending block 850 and subsequent resending of frames 870 by AP 170. It can be seen that while block 850 occupies an entire block acknowledge window, resent frames 870 occupy only a portion of a block acknowledge (BA) window so that the remainder of the block acknowledge window is unused.
[0079] Figure 9B illustrates receiving data including block 850 by UE 1 10. Figure 9B shows reordering window 974 extending from a window start frame (WinStart), which in this example is failed frame 854, to a window end frame (WinEnd). For example, reordering window 974 may be configured by reordering circuit 744, including maintaining pointers to WinStart and WinEnd while block 850 is stored in a buffer such as buffer 746. Three failed frames 854, 855, 856 were encountered when block 850 was received by UE 1 10 (e.g. due to interference or otherwise) and are each marked with an X. When copies of these frames are resent (resent copies 870) the resent frames may be confirmed as successfully received (e.g. by ECC) and may added to reordering window 974. When all frames of reordering window 974 (in this case, all frames of block 850) including resent frames 870 are confirmed as successfully received and are in reordering window 974, block 850 may be released (e.g. to a higher layer) and reordering window 974 may move to subsequent data (e.g. to another block that was received in parallel with block 850 such as block 860). A block acknowledgement may be sent to AP 170 to indicate that the resent frames 170 were successfully received. In response, AP 170 may proceed to send additional data over communication channels 636, 638, 640.
[0080] It can be seen that the size of reordering window 974 is the same size as a block acknowledge window (sixteen frames) in this example and reordering window 974 may not move until resent frames 870 are successfully received and block 850 is released. However, this may cause problems when multiple communications channels are used for multi-band communication.
[0081] Figure 10 shows receiving blocks 850, 860, 864, each including sixteen frames (e.g. by UE 1 10). Frames of blocks 850, 860, 864 are assigned sequence numbers, SN = 0 to SN = 4095 (e.g. assigned by AP 170). In this example, sequence numbers (SN) go from 0 to 4095 and wrap around so that in a stream of data, the next frame after frame with sequence number 4095 is assigned sequence number 0. Sequence numbers may be used to ensure that frames sent through different communication channels that may be received out of order can be re-ordered correctly (e.g. for release to a higher layer). Figure 10 shows Block Acknowledge (BA) windows for band 1 , band 2, and band 3 (corresponding to communication channels 636, 638, 640). Each BA window has capacity for sixteen frames and Figure 10 shows the windows for bands 1 , 2, and 3 occupied by blocks 850, 860, and 864 respectively. Reordering window 974 also has capacity for sixteen frames (i.e. equal in size to a BA window). When block 850 is received with failed frames (as previously shown), reordering window 974 may be stuck at block 850 until replacement frames are received or may proceed to subsequent frames (e.g. to frames of blocks 860, 864) with block 850 released without the resent frames (i.e. including failed frames). This may cause problems at a higher layer (e.g. when resent frames are received they may be released out of order).
[0082] Figure 1 1 shows an alternative configuration including reordering window 1 180, which in this example is three times the size of a BA window (i.e. 3 x 16 = 42 frames), which allows blocks 850, 860, 864 to be maintained in reordering window 1 180 at the same time. In this way, instead of moving the entire reordering window to subsequent frames from a different band (different communication channel), reordering window 1 180 can include subsequent frames from different bands while continuing to maintain frames of block 850. These frames may be maintained until resent frames are received (e.g. resent frames 870, including resent copies of failed frames 854, 855, 856) and thus block 850 and blocks 860, 864 may be released in order, without failed frames (i.e. including successfully received resent frames 870). In some cases, a reordering window for a given stream of data may have a capacity equal to at least one BA window (one block) for each communication channel (band) assigned to the stream (e.g. reordering window 1 180 has a capacity for three blocks of frames corresponding to three communication channels 636, 638, 640).
[0083] A reordering window in some embodiments may be configurable so that the size (capacity) of a reordering window can be configured as needed and is not fixed. For example, a re-ordering window may expand or stretch to accommodate more frames while waiting for receipt of replacement frames. Thus, WinStart and WinEnd are not necessarily separated by a fixed offset (e.g. sixteen frames as in the case of reordering window 974) and may be separately moved. WinEnd may move when one or more frame is received with a higher sequence number to include the received frame in the reordering window. WinStart may move when the earliest block of frames in the reordering window is released (e.g. after all frames of the block are confirmed, which may be after receipt and confirmation of resent frames when the block as originally received included failed frames). Such independent operation of WinStart and WinEnd (e.g. by reordering circuit 744) provides flexibility and may facilitate efficient use of available resources in a multiband communications system.
[0084] Figure 12A-B show an example of how an adaptive reordering window may be used to improve efficiency. This example is illustrated in a single communication channel (single band) example but it will be understood that it may be extended to multiband examples. Figure 12A shows frames sent by a transmitter (e.g. a transmitter of AP 170) including block 850 and resent frames 870 (e.g. resent in response to receipt of block acknowledge 852, indicating failed frames 854, 855, 856 as illustrated in Figure 8A). In this example (unlike the example of Figure 8B), the transmitter sends additional frames 1284 subsequent to resent frames 870. Resent frames 870 together with additional frames 1284 occupy a BA window and may be considered to form a block 1286 (corresponding to BA Window 2). It will be understood that additional frames 1284 and resent frames 870 are not sequential and that there is a discontinuity in sequence number (SN) between resent frames 870 and additional frames 1284.
[0085] Figure 12B shows how frames of blocks 850 and 1286 are managed by a receiver (e.g. in UE 1 10). When block 850 is received, failed frames 854, 855, 856 are detected, and a corresponding block acknowledge (e.g. block acknowledge 852) is generated, which causes the transmitter to transmit resent frames 870 and additional frames 1284. Resent frames 870 replace failed frames 854, 855, 856 and additional frames 1284 are maintained in adaptive reordering window 1288 by extending adaptive reordering window 1288 to be larger than a BA window (i.e. to have a capacity larger than a block, or larger than sixteen frames in this example). Because resent frames 870 consist of three frames (corresponding to three failed frames 854, 855, 856), additional frames 1284 consists of thirteen frames in this example. Thus, reordering window 974 is extended by thirteen frames by moving WinEnd accordingly (e.g. by incrementing the value of WinEnd to WinEnd +13, which may occur without changing WinStart). Thus, the size of reordering window 974 is not an integer number of blocks (or BA windows) in this example. It will be understood that an adaptive reordering window may contain any suitable number of frames and is limited only by the number of sequence numbers available (e.g. where sequence numbers run from 0 to 4095, the maximum size for a reordering window may be 4096 frames). Subsequently, when resent frames 870 are confirmed as successfully sent, block 850 may be released, and WinStart may be moved to the start of additional frames 1284 (without moving WinEnd).
[0086] While the example of Figures 12A-B illustrates an example of a single communication channel, it will be understood that advantages of the present technology are applicable to multichannel communication and may provide increased benefits in a multichannel communications system.
[0087] Figure 13A illustrates an example of two successive blocks of frames of a data stream received over each channel of a four channel (four band) multiband communication system (e.g. received by four receivers of UE 1 10). Thus, bands 1 -4 are allocated to a common data stream and reordering may be performed (e.g. by reordering circuit 744) prior to release. Figure 13A illustrates an example in which a reordering window has capacity for only one block of frames for each band (corresponding to a multiband version of the single band example of Figures 9A-B). Failed frames are illustrated by an“X” in BA Window 1 of the corresponding band. In BA window 2, resent frames (shaded) are received (e.g. in response to block acknowledgements that indicate failed frames of BA Window 1 ). No data transmission occurs subsequent to resent frames in BA Window 2.
[0088] In contrast with Figure 13A, Figure 13B illustrates an example in which, in BA window 2, new frames are sent along with resent frames (e.g. as illustrated in the single band example of Figures 12A-B). This new data transmission is facilitated by an adaptive reordering window that can accommodate the new data (e.g. similarly to additional frames 1284). In this case, the adaptive reordering window may have a minimum size that is equal to the number of bands (four) multiplied by the size of a BA window, which is sixteen frames (i.e. 4 x 16 = 64 frames). In general, where n receivers corresponding to n channels are allocated to a stream of data for a multi-band transmission, the reordering window may be configurable to contain at least n blocks of frames. The adaptive reordering window is extendable to include up to four additional BA windows (i.e. eight BA windows or two BA windows per band) in this example (e.g. 128 frames) or may be extendable beyond two BA windows per band. In an example, where n receivers corresponding to n channels are allocated to a stream of data for a multi-band transmission, the reordering window may be configurable to contain up to 2n blocks of frames. As can be seen, the size of a reordering window may depend on the amount of new data, which depends on the number of failed frames. The reordering window may be sized appropriately by moving WinEnd as needed to accommodate new data while maintaining WinStart to maintain failed frames until resent frames are received and confirmed.
[0089] Figure 14 illustrates a method that may be used in a communications system according to an example of the present technology (e.g. in UE 1 10). The method includes receiving a plurality of frames of a data stream, the plurality of frames equal in size to a block acknowledgement window, the plurality of frames including one or more failed frames 1402 (e.g. failed frames 854, 855, 856). The method further includes generating a block acknowledgement indicating receipt of the plurality of frames and indicating the one or more failed frames 1404 (e.g. block acknowledge 852), maintaining the plurality of frames in a reordering window, the reordering window is bigger than the block acknowledgement window 1406 (e.g. reordering windows 1 180, 1288). The method also includes subsequently receiving resent copies of the one or more failed frames and additional data 1408 and adding the one or more failed frames and the additional data to the plurality of frames in the reordering window 1410 (e.g. as shown in Figure 12B).
[0090] It is understood that the present subject matter may be embodied in many different forms and should not be construed as being limited to the embodiments set forth herein. Rather, these embodiments are provided so that this subject matter will be thorough and complete and will fully convey the disclosure to those skilled in the art. Indeed, the subject matter is intended to cover alternatives, modifications and equivalents of these embodiments, which are included within the scope and spirit of the subject matter as defined by the appended claims. Furthermore, in the following detailed description of the present subject matter, numerous specific details are set forth in order to provide a thorough understanding of the present subject matter. Flowever, it will be clear to those of ordinary skill in the art that the present subject matter may be practiced without such specific details. [0091] Aspects of the present disclosure are described herein with reference to flowchart illustrations and/or block diagrams of methods, apparatuses (systems) and computer program products according to embodiments of the disclosure. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable instruction execution apparatus, create a mechanism for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
[0092] The description of the present disclosure has been presented for purposes of illustration and description, but is not intended to be exhaustive or limited to the disclosure in the form disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the disclosure. The aspects of the disclosure herein were chosen and described in order to best explain the principles of the disclosure and the practical application, and to enable others of ordinary skill in the art to understand the disclosure with various modifications as are suited to the particular use contemplated.
[0093] Although the present disclosure has been described with reference to specific features and embodiments thereof, it is evident that various modifications and combinations can be made thereto without departing from scope of the disclosure. The specification and drawings are, accordingly, to be regarded simply as an illustration of the disclosure as defined by the appended claims, and are contemplated to cover any and all modifications, variations, combinations or equivalents that fall within the scope of the present disclosure. Although the subject matter has been described in language specific to structural features and/or methodological acts, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are disclosed as example forms of implementing the claims.

Claims

CLAIMS What is claimed is:
1. A circuit, comprising:
a plurality of receivers configured to receive frames of a stream of data in parallel;
a block acknowledge circuit configured to generate block acknowledgements for corresponding blocks of frames received by the plurality of receiver circuits, each block of frames containing a predetermined number of frames, a block acknowledgement providing acknowledgement information for each frame of a corresponding block; and
a reordering circuit configured to maintain a plurality of frames of the stream of data in a reordering window while one or more failed frames are resent in response to a block acknowledgement indicating the failed frames, the reordering window configurable to contain more than a block of frames.
2. The circuit of claim 1 wherein the reordering window is dynamically configurable to contain two or more blocks of frames.
3. The circuit of any one of claims 1-2 wherein the plurality of receivers includes n receivers corresponding to n channels allocated to the stream of data for a multi-band transmission and the reordering window is configurable to contain at least n blocks of frames.
4. The circuit of any one of claims 3 wherein the reordering window is configurable to contain 2n blocks of frames.
5. The circuit of any one of claims 1 -4 wherein the frames of the stream of data are assigned sequence numbers, the reordering window includes frames having sequential sequence numbers from a window start frame to a window end frame and the reordering circuit is configured to separately move the window start frame and the window end frame.
6. The circuit of claim 5 wherein the sequence numbers extend from zero to a maximum sequence number with wrap-around after the maximum sequence number and the reordering window is dynamically configurable to include a number of frames up to the maximum sequence number.
7. The circuit of any one of claims 5-6 wherein the reordering circuit is configured to change the window start frame in response to confirming that a first block that includes the window start frame is complete.
8. The circuit of any one of claim 7 wherein the reordering circuit is further configured to release the first block in response to confirming that the first block is complete.
9. The circuit of any one of claims 5-8 wherein the reordering circuit is further configured to change the window end frame in response to receiving one or more frames with sequence numbers higher than a sequence number of the window end frame.
10. The circuit of any one of claims 1 -9 wherein data of frames within the reordering window are stored in an area of a shared memory.
1 1 . A method comprising:
receiving a plurality of frames of a data stream, the plurality of frames equal in size to a block acknowledgement window, the plurality of frames including one or more failed frames;
generating a block acknowledgement indicating receipt of the plurality of frames and indicating the one or more failed frames;
maintaining the plurality of frames in a reordering window, the reordering window is bigger than the block acknowledgement window;
subsequently receiving resent copies of the one or more failed frames and additional data; and adding the one or more failed frames and the additional data to the plurality of frames in the reordering window.
12. The method of claim 11 further comprising, in response to confirming the resent copies of the one or more failed frames, releasing the plurality of frames including the resent copies of the one or more failed frames.
13. The method of any one of claim 12 further comprising, in response to releasing the plurality of frames, moving a starting frame of the reordering window.
14. The method of any one of claims 11-13 further comprising dynamically configuring reordering window size.
15. The method of claim 14 wherein the frames of the stream of data are assigned sequence numbers, and the reordering window extends from a window start frame, sequentially by sequence number, to a window end frame, and wherein dynamically configuring the reordering window includes separately changing the window start frame and the window end frame.
16. The method of any one of claim 15 further comprising changing the window start frame in response to confirming that all frames of a block acknowledgement window extending from the window start frame are successfully received.
17. The method of any one of claims 14-15 further comprising changing the window end frame is in response to receiving one or more frames with sequence numbers higher than the window end frame.
18. A system, comprising:
an Access Point (AP) comprising:
a plurality of transmitters configured to send a plurality of frames of a stream of data in parallel; and
a User Equipment (UE) comprising: a plurality of receivers configured to receive the plurality of frames of the stream of data in parallel;
a block acknowledge circuit configured to generate block acknowledgements for corresponding blocks of frames received by the plurality of receiver circuits, each block of frames containing a predetermined number of frames, a block acknowledgement providing acknowledgement information for each frame of a corresponding block; and
a reordering circuit configured to maintain a plurality of frames of the stream of data in a reordering window while one or more failed frames are resent by the AP in response to a block acknowledgement indicating the failed frames, the reordering window configurable to contain more than a block of frames.
19. The system of claim 18 wherein the AP is configured to respond to a block acknowledgement indicating failed frames in a block by resending the failed frames and sending additional data outside the block.
20. The system of any one of claims 18-19 wherein the reordering circuit is configured to extend the reordering window in response to receiving one or more frames that are outside the reordering window.
PCT/US2019/057269 2019-05-03 2019-10-21 Adaptive reordering in multiband communication systems WO2020226680A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201962843158P 2019-05-03 2019-05-03
US62/843,158 2019-05-03

Publications (1)

Publication Number Publication Date
WO2020226680A1 true WO2020226680A1 (en) 2020-11-12

Family

ID=68468872

Family Applications (4)

Application Number Title Priority Date Filing Date
PCT/US2019/057269 WO2020226680A1 (en) 2019-05-03 2019-10-21 Adaptive reordering in multiband communication systems
PCT/US2019/057265 WO2020226679A1 (en) 2019-05-03 2019-10-21 Multi-user resource unit allocation
PCT/US2020/017439 WO2020163849A1 (en) 2019-05-03 2020-02-10 Multi-band single mac communication system
PCT/US2020/030120 WO2020226931A1 (en) 2019-05-03 2020-04-27 Data frame generation and combination in multi-band communication system

Family Applications After (3)

Application Number Title Priority Date Filing Date
PCT/US2019/057265 WO2020226679A1 (en) 2019-05-03 2019-10-21 Multi-user resource unit allocation
PCT/US2020/017439 WO2020163849A1 (en) 2019-05-03 2020-02-10 Multi-band single mac communication system
PCT/US2020/030120 WO2020226931A1 (en) 2019-05-03 2020-04-27 Data frame generation and combination in multi-band communication system

Country Status (1)

Country Link
WO (4) WO2020226680A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021051119A2 (en) * 2020-12-16 2021-03-18 Zeku, Inc. Apparatus and method of layer 2 data processing using flexible layer 2 circuits

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999009698A1 (en) * 1997-08-19 1999-02-25 Telefonaktiebolaget Lm Ericsson (Publ) A multi-channel automatic retransmission query (arq) method
US20090086696A1 (en) * 2007-09-28 2009-04-02 Masahiko Naito Wireless Transmission Device, Wireless Transmission Method, Wireless Communication System, and Program

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140269461A1 (en) * 2013-03-14 2014-09-18 Qualcomm Incorporated Systems and methods for link augmentation
ES2951495T3 (en) * 2014-06-12 2023-10-23 Huawei Tech Co Ltd System and method for OFDMA tone assignment in next generation Wi-Fi networks
US9867189B2 (en) * 2015-09-29 2018-01-09 Newracom, Inc. Resource allocation indication for multi-user multiple-input-multiple-output (MU-MIMO) orthogonal frequency division multiple access (OFDMA) communication
US20170311204A1 (en) * 2016-04-26 2017-10-26 Laurent Cariou Access point (ap), station (sta) and method for link aggregation
US20180145919A1 (en) * 2016-11-23 2018-05-24 Qualcomm Incorporated Wi-fi link aggregation
US10230654B2 (en) * 2016-12-28 2019-03-12 Intel IP Corporation Multiband aggregation data encapsulation
US10856203B2 (en) * 2017-01-19 2020-12-01 Qualcomm Incorporated Signaling for link aggregation setup and reconfiguration

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999009698A1 (en) * 1997-08-19 1999-02-25 Telefonaktiebolaget Lm Ericsson (Publ) A multi-channel automatic retransmission query (arq) method
US20090086696A1 (en) * 2007-09-28 2009-04-02 Masahiko Naito Wireless Transmission Device, Wireless Transmission Method, Wireless Communication System, and Program

Also Published As

Publication number Publication date
WO2020226679A1 (en) 2020-11-12
WO2020163849A1 (en) 2020-08-13
WO2020226931A1 (en) 2020-11-12

Similar Documents

Publication Publication Date Title
US10999761B2 (en) Methods to determine a hybrid automatic repeat request acknowledgement (HARQ-ACK) codebook in new radio (NR) systems
TWI711291B (en) Apparatus of user equipment, apparatus of evolved node b, and computer-readable storage medium
CN107409430B (en) Apparatus, system and method for multi-user wireless communication
US10608832B2 (en) Apparatus, system and method of multicast communication
CN112136357B (en) Configuration method, device and communication system for bandwidth part indication
EP3395029B1 (en) Methods, apparatuses and computer program product for pdu formatting according to sdu segmentation
KR20120085880A (en) Downlink control information set switching when using carrier aggregation
US10819397B2 (en) Information transmission method and related device
CN111448774A (en) Apparatus, system, and method of communicating during a transmission opportunity (TXOP)
CN110536421B (en) Communication method and device
EP3700153B1 (en) Communication device
US11683789B2 (en) Information indication method and apparatus
WO2020226680A1 (en) Adaptive reordering in multiband communication systems
JPWO2018074119A1 (en) Communication apparatus and communication method using aggregate physical layer convergence protocol data unit
JP2023052740A (en) Device for dealing collision of physical uplink control channel and method of them
WO2018236694A1 (en) Apparatus, system and method of acknowledging a multi user (mu) multiple-input-multiple-output (mimo) (mu-mimo) transmission
WO2016190995A1 (en) Apparatus, system and method of wireless communication to a plurality of stations
US12004144B2 (en) Multi-band single mac communication system
AU2022209265B2 (en) Device and method for handling a hybrid automatic repeat request transmission
KR102291796B1 (en) Repetition transmission method based on code block group for ultra-reliable and low latency communication in a wireless communication system and apparatus thereof
WO2022102670A1 (en) Terminal
US20230379898A1 (en) Terminal and communication method
WO2021192063A1 (en) Terminal
WO2022153509A1 (en) Terminal, base station, and radio communication method
WO2022130517A1 (en) Communication device and communication method

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19798495

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19798495

Country of ref document: EP

Kind code of ref document: A1