WO2014060028A1 - Rate matching - Google Patents

Rate matching Download PDF

Info

Publication number
WO2014060028A1
WO2014060028A1 PCT/EP2012/070550 EP2012070550W WO2014060028A1 WO 2014060028 A1 WO2014060028 A1 WO 2014060028A1 EP 2012070550 W EP2012070550 W EP 2012070550W WO 2014060028 A1 WO2014060028 A1 WO 2014060028A1
Authority
WO
WIPO (PCT)
Prior art keywords
bit
bits
selection criteria
indication
rate
Prior art date
Application number
PCT/EP2012/070550
Other languages
French (fr)
Inventor
Pasi Eino Tapio Kinnunen
Kari Juhani Hooli
Original Assignee
Nokia Solutions And Networks Oy
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 Nokia Solutions And Networks Oy filed Critical Nokia Solutions And Networks Oy
Priority to PCT/EP2012/070550 priority Critical patent/WO2014060028A1/en
Publication of WO2014060028A1 publication Critical patent/WO2014060028A1/en
Priority to MA37215A priority patent/MA35868B1/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/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0009Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the channel coding
    • H04L1/0013Rate matching, e.g. puncturing or repetition of code symbols

Definitions

  • the present application relates to rate matching and particularly but not exclusively to rate matching for bundled transmissions.
  • a communication system can be seen as a facility that enables communications between two or more entities such as a communication device, e.g. mobile stations (MS) or user equipment (UE), and/or other network elements or nodes, e.g. Node B, enhanced Node B (eNodeB) or base transceiver station (BTS), associated with the communication system.
  • a communication device e.g. mobile stations (MS) or user equipment (UE)
  • UE user equipment
  • network elements or nodes e.g. Node B, enhanced Node B (eNodeB) or base transceiver station (BTS)
  • a communication system typically operates in accordance with a given standard or specification which sets out what the various entities associated with the communication system are permitted to do and how that should be achieved.
  • Wireless communication systems include various cellular or otherwise mobile communication systems using radio frequencies for sending voice or data between stations, for example between a communication device and a transceiver network element.
  • wireless communication systems may comprise public land mobile network (PLMN), such as global system for mobile communication (GSM), the general packet radio service (GPRS), the universal mobile telecommunications system (UMTS), and the long term evolution (LTE).
  • GSM global system for mobile communication
  • GPRS general packet radio service
  • UMTS universal mobile telecommunications system
  • LTE long term evolution
  • a mobile communication network may logically be divided into a radio access network (RAN) and a core network (CN).
  • the core network entities typically include various control or management entities, and gateways for enabling communication via a number of radio access networks and also for interfacing a single communication system with one or more communication systems, such as with other wireless systems, such as a wireless Internet Protocol (IP) network, and/or fixed line communication systems, such as a public switched telephone network (PSTN).
  • Examples of radio access networks may comprise the UMTS terrestrial radio access network (UTRAN), the GSM/EDGE radio access network (GERAN) and the evolved UMTS terrestrial radio access network (EUTRAN).
  • a geographical area covered by a radio access network is divided into cells defining a radio coverage provided by a transceiver network element or access point, such as a NodeB, eNodeB and/or base transceiver station.
  • a transceiver network element or access point such as a NodeB, eNodeB and/or base transceiver station.
  • a single transceiver network element may serve a number of cells.
  • a plurality of transceiver network elements is typically connected to a controller network element, such as a radio network controller (RNC) or other management entity.
  • RNC radio network controller
  • a method comprising: selecting a bit selection criteria of a rate matcher in dependence on a received indication; and selecting bits for transmission in accordance with the selected configuration.
  • the indication may be determined by a code rate for the transmission.
  • a first bit selection criteria may be selected when the code rate is greater than a threshold and a second bit selection criteria may be selected when the code rate is less than the threshold.
  • the indication may be at least one of: a modulation and coding scheme indication, a transport block size indication, an indication of transport block scaling; an indication of physical resource block allocation scaling; an indication of a bundled transmission and an explicit indication of a bit selection criteria.
  • Selecting bits for transmission may further comprise: selecting bits from a memory comprising data and parity bits in accordance with the selected bit selection criteria.
  • the memory may be a circular buffer.
  • Selecting bits may further comprise selecting at least two blocks of bits for transmission.
  • the at least two blocks may be transmitted in a bundled transmission.
  • the bits of each block of the at least two blocks may be selected from a respective starting position bit in the memory.
  • the respective starting position bit may be determined by the selected bit selection criteria.
  • the starting position bit of at least one block selected by a first bit selection criteria may be different to the starting position bit of a corresponding block selected by the second selection criteria.
  • the bit starting position of a block selected by the first bit selection criteria may be a next data bit after the last bit of a preceding block selected by the first selection criteria.
  • a data bit starting position of a block selected by the first bit selection criteria may be offset from the last bit of a preceding block selected by the first selection criteria by a predetermined offset.
  • an apparatus comprising: selecting means for selecting a bit selection criteria in dependence on a received indication; and a rate matcher configured to select bits for transmission in accordance with the selected configuration.
  • the indication may be determined by a code rate for the transmission.
  • the selecting means may be configured to select a first bit selection criteria when the code rate is greater than a threshold and to select a second bit selection criteria when the code rate is less than the threshold.
  • the indication may be at least one of: a modulation and coding scheme indication, a transport block size indication, an indication of transport block scaling; an indication of physical resource block allocation scaling; an indication of a bundled transmission; and an explicit indication of a bit selection criteria.
  • the rate matcher may be further configured to selecting bits from a memory comprising data and parity bits in accordance with the selected bit selection criteria.
  • the apparatus may further comprise the memory and the memory may be a circular buffer.
  • the rate matcher may be further configured to select at least two blocks of the bits for the transmission.
  • the apparatus may be further configured to transmit the at least two blocks in a bundled transmission.
  • the rate matcher may be further configured to select the bits of each block of the at least two blocks from a respective starting position bit in the memory.
  • the respective starting position bit may be determined by the selected bit selection criteria.
  • the starting position bit of at least one block selected by a first bit selection criteria may be different to the starting position bit of a corresponding block selected by the second selection criteria.
  • the bit starting position of a block selected by the first bit selection criteria may be a next data bit after the last bit of a preceding block selected by the first selection criteria.
  • a data bit starting position of a block selected by the first bit selection criteria may be offset from the last bit of a preceding block selected by the first selection criteria by a predetermined offset.
  • a computer program embedded on a computer readable medium, which when executed causes a computer to carry out the method of the first aspect.
  • a method comprising: determining a bit selection criteria to be used by a rate matcher for the selection of bits for transmission based on at least one characteristic of the transmission; and transmitting the bit selection criteria to the rate matcher.
  • the at least one characteristic may be at least one of: a modulation and coding scheme; a transport block size, a transport block scaling; a physical resource block allocation scaling; and a bundled transmission.
  • a network node of mobile communications system comprising: determining means for determining a bit selection criteria to be used by a rate matcher for the selection of bits for transmission based on at least one characteristic of the transmission; and transmission means for transmitting the bit selection criteria to the rate matcher.
  • Figure 1 shows an example of a communication system in which some embodiments may be implemented
  • Figure 2 shows an example of a system in which rate matching may be implemented
  • Figure 3 shows an example of a turbo coder
  • Figure 4 shows an example of bit collection
  • Figure 5 shows a flow diagram corresponding to an example of the method steps of generating a rate matched block
  • Figure 6 shows an example of a circular buffer
  • Figure 7 shows an example of the circular buffer and rate matched blocks in accordance with a first configuration
  • Figure 8 shows a flow diagram of configuration selection according to some embodiments
  • Figure 9 shows an example of the circular buffer and rate matched blocks in accordance with a second configuration
  • Figure 10 shows an example of signalling that may be carried out between a user equipment and an access point in some embodiments.
  • FIG. 1 shows an example of a mobile communication system 10.
  • Mobile communications apparatus or user equipment (UE) 1 can typically access wirelessly a mobile network system via at least one access point 12 or similar wireless transmitter and/or receiver node of the access system.
  • An access point 12 may for example be a Node B, base station and/or eNodeB.
  • An access point site typically provides one or more cells of a cellular system.
  • the access point 12 is configured to provide a cell, but could provide, for example, three sectors, each sector providing a cell.
  • Each mobile communications apparatus 1 and access point 12 may have one or more radio channels open at the same time and may communicate with more than one other station.
  • the communications apparatus 1 may be in direct communication with the other communication apparatus.
  • An access point 12 in some embodiments may carry out some control functionality. Additionally, the access point 12 may be in communication with a management entity or further network entity 11.
  • the management entity 11 may be connected to one or more further access points (not shown).
  • the user equipment 1, access point 12 and management entity 11 may be considered to collectively comprise a radio access network (RAN).
  • RAN radio access network
  • the network of figure 1 may further include one or more gateways entities (not shown) for communicating with further networks such as an external IP network.
  • a communication system may be provided by one or more interconnected networks and the elements thereof, and one or more gateway nodes may be provided for interconnecting various networks.
  • the gateways may facilitate communication with entities on the further communication networks for example a server 13.
  • the server 13 may be able to communicate with the management entity 11, either via a gateway or by another means.
  • the communications apparatus 1 may be provided with wireless access to the communication system based on various access techniques, such as code division multiple access (CDMA), wideband CDMA (WCDMA), time division multiple access (TDMA), frequency division multiple access (FDMA), Orthogonal Frequency-Division Multiple Access (OFDMA), space division multiple access (SDMA), and so on.
  • CDMA code division multiple access
  • WCDMA wideband CDMA
  • TDMA time division multiple access
  • FDMA frequency division multiple access
  • OFDMA Orthogonal Frequency-Division Multiple Access
  • SDMA space division multiple access
  • the access point 12 may communicate with UE 1 by scheduling resources on a shared channel, for example an uplink shared channel (UL-SCH), on which the UEs 1 may transmit.
  • a shared channel for example an uplink shared channel (UL-SCH)
  • the UEs 1 may transmit control information, for example LI and L2 control information.
  • the access point 12 may transmit the scheduling information and other information on a downlink shared channel (DL-SCH).
  • the channels may be divided up into transmission timing intervals (TTIs) or sub-frames in which the data may be transmitted.
  • Each TTI may define one or more physical resource blocks PRBs.
  • the PRBs may be frequency resources to be used during the TTI. For example during an allocated TTI, a transmission may be made on a physical resource block comprising the allocated frequency.
  • Data to be transmitted during one or more TTIs may be encoded and rate matched before being transmitted in the scheduled TTI.
  • the data transmitted may correspond to a transport block.
  • a transport block may be a group of data that is transmitted in one transmission.
  • one transmission may correspond to a TTI, in other embodiments where bundling is implemented, a transmission may correspond to a bundle of TTIs.
  • the transport block may be encoded in order to introduce parity bits that may aid in decoding the transmitted transport block later.
  • Rate matching may be carried out to set the number of bits being transmitted to a desired code rate for the transmission. For example, a rate matcher may prune or select bits from the encoded data in order to adhere to the desired code rate for the data transmitted in the scheduled TTI.
  • Data corresponding to a transport block may be transmitted in a single TTI or subframe, however in some systems bundling of TTIs or sub frames may be implemented. For example, in some systems a UE 1 on a cell-edge may experience a reduction in the quality of service. This may be of particular concern if the UE 1 is implementing time sensitive applications, for example applications making use of voice over internet protocol (VoIP). In these cases, the UE 1 may implement bundling by transmitting data in consecutive TTIs in order to improve quality of the communication. In some embodiments, the data to be transmitted in the bundle may be converted into two or more blocks or redundancy versions, each including bits of the data to be transmitted and parity bits. Each block may then be transmitted in a consecutive TTI or subframe of the bundle.
  • VoIP voice over internet protocol
  • the bundled subframes may then be received at a receiver and the data and parity bits used to decode the transmitted transport block.
  • the size of the transport block to be transmitted may be determined based on parameters or characteristics of the transmission. For example, bundled transmissions may implement a larger transport block size than non-bundled transmissions. In some embodiments, this may be because multiple combinations of data and parity bits are transmitted in a bundle as opposed to the single combination in a non-bundled transmission. Other factors such as the number of physical resource blocks PRBs allocated to the transmission may affect the transport block size.
  • a network node may send a modulation and coding scheme indicator MCS to the UE 1 which may indicate a transport block size and a code rate to be used.
  • MCS modulation and coding scheme indicator
  • a UE may determine the transport block size based on two parameters: MCS and a number of allocated PRBs.
  • the MCS indicator may in some embodiments include two parameters: a modulation order and a transport block size index.
  • the UE may access a transport block size table with transport block sizes corresponding the number of allocated PRBs and the size index.
  • the transport block size may increase with a larger number of allocated PRBs.
  • the transport block size may increase with a higher size index. In this case, a higher transport block size index corresponds to an increase in a code rate of the data transmitted.
  • a code rate of a transmission may be calculated as the ratio of the number of bits of data being transmitted to the number of bits in total being transmitted per subframe. So, for example, while an individually transmitted subframe may have a code rate of 1/3, a subframe of a bundle of subframes may have a higher coding rate, for example 4/3 as more data bits are being transmitted by the subframe bundle than number of bits in a sub frame.
  • TTI or subframe bundling is expected to improve the throughput of the transmitted data.
  • TTI bundling on the UL-SCH is expected to improve the throughput when UL-SCH transmission becomes limited by UE transmission power (for example the coverage of the coverage area of the UL-SCH).
  • UE transmission power for example the coverage of the coverage area of the UL-SCH.
  • the uplink LTE throughput achieved with bundling may not meet the non-bundling throughput reference at higher data rates (for example at better radio channel conditions where the signal to noise ratio (SNR) is higher than on cell edge).
  • LTE bundling limitations for example, in some cases, by allowing bundling for a larger number of physical resource block PRBs than 3, supporting longer bundling than 4 subframes, and scaling the used transport block sizes according to the number of bundled subframes
  • SNR signal to noise ratio
  • rate matcher it is recognised that a problem may lie in the rate matcher.
  • existing rate matchers may not adequately deal with the rate matching for bundling implementing higher code rates and larger transport block sizes.
  • Some embodiments attempt to address this problem by providing a rate matching configuration according to parameters of the transmission.
  • a rate matching configuration may be based on a desired code rate, a transport block size, the modulation and coding scheme and./or other implicit or explicit parameters associated with the transmission.
  • two or more rate matching configurations are provided, each being suited for use with a code rate or range of code rates.
  • one rate matcher configuration may correspond to a desired code rate below 1 and another rate matcher configuration may correspond to a desired code rate over 1.
  • the configurations may not directly correspond to the code rate but rather to an indication of a code rate, for example an MCS ' value or other indication.
  • the use of a configuration may be triggered by the receipt oi a configuration identifier.
  • a code rate of greater than 1 may correspond to a bundled transmission.
  • Figure 2 shows an example of the system 200 in which rate matching may be used.
  • the system of figure 2 may be implemented in a UE 1 in the preparation of data for transmission on an uplink shared channel (UL-SCH). It will be appreciated however, that the system may be used to prepare data for the transmission of any channel.
  • the system 200 may be implemented in an access point for the preparation of data for transmission on a downlink shared channel (DL-SCH).
  • DL-SCH downlink shared channel
  • data to be transmitted comprising a input bits
  • the data may be processed to insert an error detecting code, for example a cyclic redundancy check (CRC) at block 202.
  • CRC cyclic redundancy check
  • the data, including the CRC attachment may be segmented into code blocks.
  • a code block size may be determined by the channel coder to be used to encode the code blocks.
  • the block size may be chosen to be compatible with the channel coder, for example to be compatible with an interleaver of the channel coder.
  • a code block size may correspond to the transport block size.
  • the code blocks may be encoded by the channel encoder according to an encoding scheme.
  • the encoding scheme may be a turbo coding scheme.
  • the coding scheme may be any suitable coding scheme.
  • a tail biting convolutional coding scheme may be used.
  • the encoded data may be made up of systematic bits corresponding to the data to be transmitted and parity bits.
  • the encoded data output from the channel encoder at block 204 may be passed to a rate matcher at block 205.
  • the encoded data may be passed to the rate matcher using a circular buffer.
  • the rate matcher may prune and/or select bits of the encoded data to form an encoded block of data for transmission. This pruning and/or selecting of bits may be carried out in accordance with a configuration of the rate matcher and may convert the code rate of the encoded data blocks at step 204 to a desired code rate of transmission.
  • the rate matched encoded code block may be concatenated together in preparation for transmission.
  • the system 200 may optionally further include control information in the encoded coded clocks.
  • a channel quality indicator (CQI) may be inserted at block 207
  • a rank indication (RI) and acknowledgement (ACK) and/or negative acknowledgement (NACK) may be inserted at block 208. It will be appreciated that this is by way of example only and more or less or other control information may be included in the encoded code blocks for transmission.
  • bits h k of the encoded rate matched concatenated blocks including control information may be transmitted.
  • system 200 is only an example of a system in which channel coding and rate matching may be implemented. It will be appreciated that the rate matching as described in some embodiments, may be applicable to different or other systems implementing rate matching. It will be appreciated that some embodiments may be applicable to any system implementing a rate matching step. Some embodiments may be applicable to rate matching the output of a channel coder.
  • Channel coding for example the channel coding of block 204, may be used to encode the data for transmission in a form that will assist decoding and correct transmission of the data.
  • the channel coding may generate parity bits which may be used to check that the data is received correctly at a receiver.
  • Figure 3 shows an example of channel coder 300.
  • the channel coder 300 of figure is shown as a turbo coder, however it will be appreciated that other types of coders may be implemented.
  • the coder may be a tail biting convolutional coder.
  • Turbo coding is a form of forward error correction and may improve a channel capacity by adding redundant information in the form of parity bits.
  • the turbo encoder scheme may use a Parallel Concatenated Convolutional Code (PCCC) with two recursive convolutional coders and a "contention-free" Quadratic Permutation Polynomial (QPP) interleaver as shown in figure 3.
  • PCCC Parallel Concatenated Convolutional Code
  • QPP Quadratic Permutation Polynomial
  • the turbo coder 300 of figure 3 comprises a first constituent encoded 320, a second constituent encoder 330 and an interleaver 340.
  • the turbo encoder 300 may receive a bitstream Ck 301 to be encoded and input the bitstream Ck 301 to the first constituent encoder 320 and the interleaver 340.
  • the interleaver may interleave the bitstream Ck 301 and provide the interleaved bitstream c'k 302 to the second constituent encoder 330.
  • the interleaver may permutate or rearrange the bits of the input bit sequence 3 ⁇ 4 to form the interleaved bit sequence c .
  • the interleaver may be used to spread the information bits so that in the event of a burst error for example, the two code streams are affected differently. This may allow data to bi recovered more efficiently.
  • the output of the interleaver may be described by:
  • K is the input length of the bitstream sequence Ck and fi and f * 2 are coefficients chosen dependent on K.
  • ⁇ ® 0,13,6,19,12,25,18,31 ,24,37,30,3,36,9,2, 15,8,21 , 14,27,20,33,26,39,32,5,38. ..
  • the constituent encoders may each have a transfer function:
  • 1 (the first element) represents a systematic output transfer function; represents a recursive convolutional output transfer function
  • Each of the constituent encoders 320 and 330 may output two bitstreams - a systematic bitstream Xk, x'k and a parity bitstream z k , z' k . These bit streams may be determined by the transfer function (iii). Additionally trellis termination may be implemented in some embodiments.
  • the first constituent encoder 320 may output a systematic bit sequence Xk 351 and a parity bit sequence z k 352.
  • the second constituent encoder 330 may output a systematic sequence x'k 354 and a parity bit sequence z 353.
  • the turbo encoder 300 may therefore provide three output streams corresponding to a systematic stream and two parity streams.
  • the turbo encoder 300 provides a systematic stream x k 351 , a first parity stream z k 352 and a second parity stream z' k 353.
  • the ratio of the systematic bits to the parity bits is 1/3 and thus the code rate of the output of the encoder 300 is; 1/3. It will be appreciated that this is by way of example and other coders may correspond to other code rates. For example, some encoders may produce more or less parity streams and decrease and/or increase the code rate accordingly.
  • the systematic stream x k 351, the first parity stream z k 352 and the second parity stream z' k 353 may be collected into a circular buffer in order for rate matching to take place.
  • Figure 4 shows an example of bit collection and rate matching.
  • Figure 4 comprises a first input bit sequence 4 (0) 351, a second input bit sequence 352 and a third input bit sequence 4 (2) 353.
  • the first, second and third input bit sequences 351, 352 and 353 may correspond to the outputs of the turbo encoder 300 as follows:
  • K is the length of the bit sequence c k .
  • the first input bit sequence 4 (0) 351, second input bit sequence 352 and third input bit sequence d k (2) 353 may further comprises additional bits appended onto the end of the of the systematic stream x k 351, the first parity stream z k 352 and the second parity stream z' k 353 in accordance with trellis encoding to form a bit sequence of D bits.
  • Each of the input bit sequences 4 (0) 351, d k (1) 352 and d k (2) 353 are input to a respective sub-block! interleaver 410, 420 and 430.
  • each of the first 410, second 42C and third 430 sub-block interleavers may interleave the respective inputs to for example reduce the impact of burst errors on a signal as consecutive bits of data may not be corrupted.
  • the sub-block interleavers 410, 420 and 430 may reshape the input encoded bit sequence 4 (0) 351, d k 352 and d k ' 353 on a row-by-row basis. This may form a matrix with C su bbiock columns and R -s,ubblock rows. In some examples, 32 ⁇
  • the number of rows of a subblock Rsubbiock may be determined by finding a minimum integer such that the number of encoded input bits D ⁇ x c s ⁇ : ) _ IF (3 ⁇ 4£M,. «* x c ii»to C 3 ⁇ 4) > D then a> number of nulls D are appended onto the front of the encoded input sequence sc
  • the sub-block interleavers perform inter- column permutation on the sub-block matrix to reorder the columns.
  • the columns may be, reordered according to the pattern: 0, 16, 8, 24, 4, 20, 12, 28, 2, 18, 10, 26, 6, 22, 14, 30, 1, 17, 9, 25, 5, 21; 13, 29, 3, 19, 11, 27, 7, 23, 15, 31, where the pattern refers to the column numbers of the matrix before reordering.
  • the output of the first interleaver 410 may be a bit sequence corresponding to bits read out the inter-column permutated dk (0) 351 matrix on a column by column basis to create a first output stream Vk 0 ⁇
  • the output of the second interleaver 420 may be a bit sequence corresponding to bits read out the inter-column permutated dk ( 1) 352 matrix on a column by column basis to create a second output stream Vk ( 1) 421 which is
  • the subblock matrix of the 4 (2) 353 bit sequence may be also permutated based on the ' permutation pattern shown above but may be modified to create a permutation which is a function ol
  • ⁇ SubM ⁇ k -SubMock k and ⁇ - This may be used to provide a third output stream v k (2) 431. It will be appreciated that the third output stream may also be ⁇ 71 ⁇ S bbiock x ⁇ SnbbiDck ) ⁇ j ts long.
  • the first output stream Vk (0) 411, the second output stream Vk ( 1) 421 and the third output stream Vk (2) 431 may be provided to a bit collector 440.
  • the bit collector may collect the interleaved bit streams Vk (0) 411,; Vk ( 1 ) 421 and Vk (2) 431 to provide a circular buffer.
  • the circular buffer may be a virtual circular buffer, which corresponds to a sequential buffer whose last address, wraps around to the first address.
  • the circular buffer may therefore be implemented in hardware or software
  • the bit collector 440 may provide a bit output stream Wk corresponding to the bits of the circular buffer.
  • the bit collector 440 may fill the circular buffer in a manner determined by the encoding scheme the rate matcher and/or a decoding scheme implemented at a receiver.
  • the first K D D bits of the circular buffer may comprise bits corresponding to the systematic bits Xk and the next 2K D D may comprise interleaved parity bits of z k and z .
  • the bits of the circular buffer Wk 441 may then be provided to the rate matcher 450, for bit selection and/or pruning to provide the rate matched output bit sequence ⁇ 3 ⁇ 4. It will be appreciated that in some embodiments the circular buffer may be generated differently, for example a different pattern of interleaving, as long as a receiver is aware of the pattern of bits in the circular buffer.
  • a rate matcher such as the rate matcher 450, may be provided with access to a circular buffer.
  • the rate matcher may select bits from the circular buffer according to an algorithm or routine to provide output bits et for transmission.
  • the output bits may be provided in the form of a block having a number of bits E corresponding to the number of bits of the circular buffer to be transmitted in a subframe and may be determined by system parameters.
  • the algorithm used to select the bits for transmission may be able to select one or more redundancy versions.
  • Blocks of different redundancy may be selected from the same circular buffer but may contain a different selection of bits from the buffer.
  • Providing blocks of different redundancy may improve the ability of a receiver to decode a transmitted transport block as different information pertaining to the transport block is transmitted in each redundancy version.
  • a different redundancy version of a transport block may be transmitted in response to a negative acknowledgement for a previously transmitted redundancy version of that block from a receiver.
  • different redundancy version blocks may be bundled together and transmitted.
  • the rate matcher is configured to select bits such that a ratio of data bits to output bits adheres to a code rate. In embodiments that do not implement subframe bundling this ratio is the ratio of data bits in a first block to the size of the first block E. In embodiments where subframe bundling is implemented, this ratio may be the ratio of data bits contained in the subframe bundle, to the size of a subframe of E bits. The data and parity bits chosen by the rate matcher are then used to decode a transmitted block.
  • the rate matcher 450 of figure 4 may have a value E defining a length of the desired output bit sequence 3 ⁇ 4.
  • the rate matcher 450 may further be configured to determine a redundancy version RV to be used for the transmission.
  • the rate matcher 450 may select and/or prune the bits of the circular buffer Wk according to different redundancy versions, where each redundancy version results in a different combination of data bits being selected for the ouput bit sequence 3 ⁇ 4. It will be appreciated that in some embodiments, the different redundancy versions may correspond to different offsets in the selection of the bits from Wk.
  • the rate matcher 450 algorithm may generate blocks of 4 different redundancy version rv;d x :
  • the output bit sequence ek may correspond to:
  • the rate matcher 450 may define an offset value k 0 and collect successive E bits from this offset value to provide the output stream ek. It will be appreciated that any null bits (which were inserted to create the subblocks) will be discarded and the next successive bit may be collected until E bits have been collected from the output stream ek.
  • the offset k 0 will be defined according to the redundancy version used. For example, different redundancy versions will start collecting the output bits e t at different starting points. In this manner, an output stream e t may be output corresponding to different bits for different redundancy version.
  • the rate matcher may be collect bits e t using the following routine:
  • k corresponds to the bit number of an output bit e ⁇
  • W(ko+j)modNcb is the bit for which a determination is made as to whether or not the bit should be selected to form part of Wt;
  • ko is the number of the initial bit to be selected and may correspond to an offset from bit 0 of Wk (wo) at which the rate matcher starts selecting bits.
  • the value of the offset ko may be defined by the equation:
  • N cb may be defined as:
  • K w is the length of the circular buffer w3 ⁇ 4
  • C is the number of code blocks that are in a bundle.
  • the number of code blocks in a bundle may be dependent on the type of encoder used.
  • N SOft is the total number of soft channel bits [4] according to the UE category indicated by ue-
  • K M i M0 is equal to 2 if the UE is configured to receive PDSCH transmissions based on transmission modes 3, 4, 8 or 9 as defined in section 7.1 of [3], and is equal to 1 otherwise,
  • DL _ HARQ is the maximum number of DL HARQ processes as defined in section 7 of [3]; and where imit is a constant equal to 8.
  • variable E (the length of the output e t for a code block) may be defined by if r ⁇ C- - ⁇ els
  • G' G/(N l - Q m ) , Qm ⁇ > the modulation order and may be for example equal to 2 for QPSK, 4 for 16QAM and 6 for 64QAM, and N Z is for transmit diversity equal to 2 otherwise equal to the number of layers a transport block is mapped onto.
  • C is the number of code blocks in a bundle
  • G is the total number of bits available for the transmission of one transport block.
  • UL-SCH ko may be expressed by following equation in some embodiments: ' fVidx +
  • the rate matcher 450 may use an algorithm for the selection of bits from the circular buffer, for example an algorithm according to equations (iv) to (x).
  • Figure 5 shows an example of the method steps carried out by a rate matcher in the selection of bits for a redundancy version.
  • a starting position k 0 is determined for bit selection for a rate matched code block.
  • the starting position may be dependent on the redundancy version of the rate matched code block being selected. It will be appreciated that in some embodiments, k 0 may be determined by one or more of the above equations.
  • the redundancy version may in some embodiments, be selected sequentially. For example a block corresponding to redundancy version 0 may first be selected and transmitted and the redundancy version may be incremented for every retransmission in response to a NACK from the receiver. Where bundling is implemented for example, successive redundancy versions may be bundled together.
  • the rate matcher may examine the bit identified by the starting position k 0 and determine whether that bit represents a null value. It will be appreciated that the null values may have been inserted by the subblock interleavers in order to reshape the input bits into the subblock matrices.
  • step 503 that selected bit is output to form part of 3 ⁇ 4.
  • the method may the proceed to step 505 where it is determined whether the length of the rate matched code block of E bits have been output. If less than E bits have been output the method proceeds to step 504 where a next sequential bit is selected for examination. After the next bit has been selected, the method may proceed to step 502 where it may be determined if that bit is null.
  • step 502 it is determined that a selected bits is null, the method may proceed to step 504, where a next sequential bit is selected for examination. If, at step 505, it is determined that E bits have been output, the method proceeds to step 506 where the method ends.
  • each sequential bits is examined to determine if it has a null value and is output as part of et if it does not.
  • redundancy version of a transport block may be generated by repeating the method step shown for example in figure 5 for the different redundancy versions.
  • the starting position ko for each redundancy version may differ in the selection of bits from the circular buffer Wk.
  • the redundancy version rv;d x may be set according to the chosen redundancy version and the starting position k 0 will change accordingly.
  • Figure 6 shows an example of the circular buffer 602 and a rate matched output block 604 selected according to a redundancy version of 0.
  • Figure 6 shows an example of the circular buffer 600 comprising bits Wk.
  • the first K n bits 601 of the circular buffer 600 may correspond to the systematic bit stream Vk (0) and the next 2K n bits 602 of the circular buffer 600 may correspond to interleaved bits of the parity streams Vk (1) and Vk (2) .
  • the block 604 depicts the E bits selected by the rate matcher to form the output bits ek corresponding to a redundancy version rvo .
  • the selected may start from a staring position k 0 603. It will be appreciated the starting position may correspond to redundancy version and may differ according to the redundancy version selected.
  • different systematic and/or parity bits may be transmitted in the different redundancy versions in order to maximise the ability of the receiver to decode the received rate matched code block ek.
  • each code block may correspond to one transmission time interval TTI and/or one subframe.
  • the bundling length in the time domain may correspond to 4 TTIs (4 ms) and have a resource allocation of 1, 2 or 3 physical resource blocks PRBs.
  • the transport block size is often scaled to take into account of the number of subframes bundled together. In other words, bundling more subframes together means that a larger size of transport block for a given PRB allocation may be transmitted without little or no error. The larger transport block may take advantage of savings in overheads in the transmissions.
  • the size of the transport block may be selected by a modulation and coding scheme MCS indication and a number of allocated PRBs.
  • MCS indication may correspond to a larger transport block size code and a higher coder rate.
  • subframe bundling is expected to provide improvements in signal coverage, this is not always the case.
  • the selection of bits by the rate matcher may be inefficient when dealing with subframe bundling and particularly but not exclusively scaled transport blocks.
  • the bits transmitted in the bundled redundancy versions may not be sufficient to decode a transport block.
  • the size of transport block to be transmitted may increase.
  • the relative number of bits transmitted may be inefficient in terms of decoding the transport block.
  • Rate matchers for example the rate matcher as defined by LTE-3GPP TS63.212 Rel 8 provides these problems when coding rates are greater than 1.
  • Figure 7 shows an example of the redundancy versions generated by such a rate matcher.
  • Figure 7 shows the circular buffer 600 and rate matched code blocks 701 , 702, and 703 and 704 corresponding to different redundancy versions of a code block input to a rate matcher.
  • Figure 7 shows a circular buffer 600 in a matrix format having 32 columns per subblock and a number of rows corresponding to the amount of data to be transmitted. It will be appreciated that 32 columns here is by way of example only and other number of columns may be implemented.
  • Subblock 605 may correspond to a subblock matrix formed by the systematic bit stream Vk (0) and the subblocks 606 may correspond to the interleaved bit sequences of Vk ( 1 ) and Vk (2) .
  • Figure 7 additionally shows the four output bit sequence code blocks 701 , 702, 703 and 704 corresponding to the first, second, third and fourth redundancy versions of the coder block input to the rate matcher.
  • the code blocks 701 , 702, 703 and 704 may be bundled together to be transmitted.
  • the first code block 701 may correspond to a first redundancy version rvO and may have a starting point of ko(l).
  • the second code block 702 may have redundancy version of 1 and correspond to a second starting position ko(2).
  • the third code block 703 may have a redundancy version of 2 and correspond to a starting position of k 0 (3).
  • the fourth code block 704 may have redundancy version of 3 and correspond to a starting position of ko(4).
  • Figure 7 shows an example of bundling carried out by the system 200 in accordance with the above described rate matcher configuration for coding rates over one.
  • the transport block size may be scaled with the number of bundled subframes.
  • the bundling may shorten the relative portion of the 1ms rate matching block (E) as a larger transport block may be used.
  • E 1ms rate matching block
  • the number of bits of a rate matched block may remain constant as compared to transmissions with lower code rates, the number of bits in the transport block to be transmitted increases. There the rate matched block covers less of a percentage of the transport block.
  • the starting position (or offset from bit 0) for each block 701, 702, 703 and 704 in the bundled is selected based on the redundancy version rv and for each TTI (for example according to equation x), the rate matching block is selected from a subsequent location of the rate matching input bits (based on the rv index in equation vi).
  • gaps 710, 711, 712 and 713 may appear between the different redundancy versions of the rate matched code blocks 701, 702, 703 and 704. These gaps may for example occur when the code rate exceeds 4/3.
  • gaps 710, 711, 712 and 713 may lead to a situation where not all of the necessary bits are transmitted.
  • some of the systematic bits 705 as well as parity bits 706 may not be transmitted at all, and HARQ retransmissions of further or duplicate redundancy versions may just repeat already transmitted bits. Additionally in this configuration, a considerable portion of systematic bits may not be transmitted in the first (bundled) HARQ transmission.
  • a rate matching configuration may be selectable depending on the code rate of a transmission. For example some embodiments may select between two rate matcher configurations, a first for code rates less than one and a second for code rates greater than 1.
  • code rate threshold may be 4/3. It will be appreciated that in some embodiments, the code rate threshold may be dependent on other characteristics of the system, for example the coding scheme used.
  • Figure 8 shows an example of configuration selection for rate matching according to some embodiments.
  • Figure 8 shows an example where two different rate matcher configurations have been defined. It will be appreciated that this is by way of example only and in some embodiments more than two rate matcher configurations may be defined.
  • Each rate matcher configuration may be associated with code rate threshold.
  • a first configuration of the rate matcher is optimised for code rates less than a code rate threshold and the second rate match configuration has been optimised for a code rate greater than the code rate threshold. It will be appreciated that further configurations may be optimised for code rates corresponding to different thresholds.
  • the method starts at steps 801 where an indication is received.
  • the indication may identify a configuration to be used.
  • the indication may correspond to a code rate for a transmission.
  • the indication may be an explicit indication of which configuration to use. It will be appreciated that in these embodiments, the explicit indication may be generated in response or be determined by the code rate of the transmissions.
  • the indication may be received from an access point 12 and may form part of scheduling information or may be separate information. It will be appreciated that in some embodiments, the indication may correspond to stored information. For example the indication may correspond to a stored threshold which determines when the first and second configurations are to be used.
  • the indication may be related to or form part of scheduling information sent from an access node.
  • the indication may be an indication of a modulation and coding scheme to be used.
  • the user equipment may interpret the indicated modulation and coding scheme as further indicating a rate matcher configuration to be used.
  • a rate matcher configuration may be associated with a modulation and coding scheme.
  • the indication may be an indication of a transport block size. This may indicate the size of the transport block to be used as well as being further associated with a rate matcher configuration.
  • the transport block used may be scaled in response to for example a code rate and/or coding and modulation scheme.
  • the indication may be an indication of transport block scaling.
  • a physical resource block allocation may be scaled for bundled transmissions, for example more physical resource blocks may be allocated for example for a larger bundle.
  • the indication may be an indication of physical resource block allocation scaling.
  • the indication may be an indication that the transmissions are to be bundled.
  • the indication may be an explicit indication of a bit selection criteria or rate matcher configuration.
  • step 802 it is determined which configuration to use. In some embodiments, this may correspond to identifying the configuration based on the indication, for example when the indication explicitly or implicitly identifies the configuration. In other embodiments where the indication is a code rate indication, it may be determined whether the code rate is greater than a code rate threshold. If the code rate is greater than the code rate threshold, it may be determined that a second rate matcher configuration is to be used. If the code rate is less than the code rate threshold, it may be determined that a first code rate is used.
  • the method may proceed to step 803 where the first configuration is used. If it is determined at 802 that the second configuration is to be used, the method may proceed to step 804 where the second configuration will be used. It will be appreciated that this is by way of example only and in some embodiments a default configuration may be defined. The default configuration may used when no indication of a non-default configuration is received. For example, the default configuration may be used until an indication is received that indicated that a non-default configuration is to be used. In some embodiments the identity of the configuration to be used may be signalled to a user equipment from an access point. For example, the rate match configuration to be used may be signalled as part of uplink UL scheduling information.
  • the first configuration may be a default configuration. It will be appreciated that this first configuration may correspond to a configuration as discussed with reference to figure 7. In some embodiments the default configuration may be selected if no information identifying a rate much configuration is signalled to a user equipment. In the example of figure 8, the first configuration is selected.
  • the second rate matcher configuration is used.
  • This signalling may for example include predetermined code points in the downlink control information (DCI) when subframe bundling is configured via higher level signalling.
  • DCI downlink control information
  • the signalling identifying the use of the second rate matcher configuration may be explicit.
  • the signalling may be contained as part of the subframe bundling configuration via the higher layer signalling.
  • the use of the second rate match configuration may be associated with other signalling used in the setup of subframe handling.
  • the use of the second rate match configuration may be associated with a transmission block size.
  • the signalling may be associated with the code rate at the transmission.
  • an access point may determine which configuration to identify in the signalling based on a code rate of the signal to be transmitted.
  • the access point may determine which rate matching configuration to use (for example the first, second and/or further configuration) and signalled information associated with an identity of the selected configuration to the user equipment.
  • the access point may for example base its determination on a characteristic of the transmission. For example, the determination may be based on at least one of the modulation and coding scheme to be implemented in the transmission, a transport block size for the transmission, a transport block scaling to be carried out for the transmission, a physical resource block allocation scaling to be carried out for the transmission and/or an indication that the transmission to be a bundled transmission.
  • access point may determine which configurations to use based on the measurement from the user equipment. For example, in some embodiments, the access point may base its determination on signal to interference plus noise ratio (SINR) and/or power headroom reports. For example, in some embodiments, the access point may determine that subframe bundling is to be used and the coding rate per subframe is over the subframe threshold and base a decision to implement the second configuration on this.
  • SINR signal to interference plus noise ratio
  • power headroom reports For example, in some embodiments, the access point may determine that subframe bundling is to be used and the coding rate per subframe is over the subframe threshold and base a decision to implement the second configuration on this.
  • the first configuration 803 may be that defined with respect to figure 7. This configuration may correspond to the rate matcher configuration defined in 3GPP TS 36.212 (December 2009) Multiplexing and channel coding, V.8.8.O., however it will be appreciated that another configuration may be used as the first configuration.
  • the second configuration may be associated with code rates above the code threshold. For example the second configuration may be associated with the code rate greater than 1, in another embodiment the second configuration may be associated with code rate of greater than 4/3.
  • the second configuration may be similar to the first configuration in that a similar amount of systematic and parity bits may be transmitted in the first bundled transmission as in the first configuration. However, the second configurations may differ from the first configuration in the determination of the offset ko used for each rate matched block.
  • adjusting the second configuration with respect to the first configuration based on the offset value k 0 may reduce the complexity of implementing two rate matcher configurations while optimising the rate matcher configuration for different code rates.
  • figure 9 shows the circular buffer 600 comprising a first subblock 705 corresponding to the systematic bits and a second and third subblock 706 corresponding to the interleaved parity bits.
  • each subblock may have 32 columns and a number of rows defined by the amount of data to be transmitted.
  • the bits of the first subblock 705 may correspond to the bit stream Vk (0) and bits of the second and third subblock 706 may correspond to the interleaved bits of the second and third bit streams Vk (1) and Vk (2) .
  • Figure 7 further depicts four rate matched code blocks 901, 902, 903 and 904 corresponding to the first, second, third and fourth redundancy versions rvo, rvi, n3 ⁇ 4 and rv3.
  • Each of the rate matched blocks 901, 902, 903 and 904 may correspond to a starting position for that block.
  • the first rate matched block 901 may correspond to starting position k 0 (0) .
  • the second rate matched block 902 may correspond to a starting position ko (1) .
  • the third rate matched block 903 may correspond to a third starting position ko (2) and the fourth rate matched block 904 may correspond to a fourth starting position k 0 (3) .
  • the starting position k 0 of each of the rate matched blocks is chosen to correspond to an end of a previous rate matched block.
  • the starting position k 0 (1) of the second rate matched block 902 corresponds to the starting position of the first rate matched block k 0 (0) plus E.
  • the starting position of the third rate matched block k 0 (2) ko (1) + E.
  • the starting position of the fourth rate matched block ko (3) ko (2) + E.
  • the starting point ko (0) of the first rate matched block 901 corresponds to the first bit of the circular buffer, however it will be appreciated that in other embodiments of the starting point ko (0) may correspond to any offset.
  • any null bits have been disregarded for purposes of clarity of explanation. However in the case where null bits are present a bit range of the circular buffer corresponding to a rate matched blocks, these null bits will be disregarded and the next successive bit will be considered for the rate matched block. This process may be similar to that described with reference to figure 5. It will be appreciated that configuration shown in figure 9 is one example of a configuration that may be used as a second configuration. It will be appreciated that other configurations may also be implemented that are suitable for a code rate over the threshold. In some embodiments these configurations may be implemented in place of or in addition to the configuration as described with reference to figure 9.
  • c) a configuration corresponding to defining equally spaced out vector starting points (which may be similar to the first configuration) and increasing the number of redundancy versions. For example, instead of providing four rate matched blocks corresponding to four redundancy version, eight rate matched blocks may be provided having equally spaced vector starting point.
  • an access point may select between the second and further configurations. This selection may be based on for example a SINR and/or coding rate.
  • the access point in some embodiments may further the able to select between the second, third or fourth configuration based on a sufficiently high SINR to support a coding rate of for example 1/N where N is the number of rate matched blocks in a bundle. It will be appreciated that the access point may further select whether or not to use subframe bundling for example based on transmit power and/or a wider physical resource block (PRB) allocation.
  • PRB physical resource block
  • the second and subsequent configurations may differ from the first configuration in the definition of the starting point of a rate matched block or offset value ko.
  • the starting point of a rate matched block with reference to the circular buffer may be defined according to equation (iv) (repeated here for convenience).
  • the k 0 for the second and/or further configuration may be defined using rate matched block output length E in equation as follows: E ⁇ rem(rv ldx , Nbundle)
  • Nbundle is number of TTIs being bundled
  • Rsubblock is the number of rows in a subblock
  • Neb is the number of code blocks in the bundle
  • rvj dx is the redundancy number of the rate match block being generated
  • E is the length of the rate matched block
  • the rv; dx value may be kept fixed over bundled transmission and an index, for example a TTI index n running from 0 to Nbundle- 1, may be used in the equation as follows for the bundled transmission:
  • n is an index running from 0 to Nbundle- 1.
  • the k 0 change within bundle may be ignored (i.e. rv does not change over bundled subfirames, but only between HARQ retransmissions) and continue using j from the first TTI of bundle to the last bundled TTI (for the first bundled TTI j is set as shown above and for next TTIs in bundle j is not set to zero value).
  • Figure 10 shows an example of the signalling between a user equipment 1 and access point 12 that may implement some embodiments of the application.
  • the user equipment may provide measurements to the access point 12. These measurements may relate to for example the signal to noise ratio SNR experience by the user equipment. In some embodiments, the measurements may be sent in response to a request from the access point 12. In other embodiments, the measurements may be periodic or otherwise triggered.
  • the access point 12 may make determinations relating to the scheduling of transmissions based on the measurements. For example, the access point may determine whether or not subframe bundling should take place and may determine characteristics of the transmission, for example a coding rate, transport block size and/or rate matcher configuration. It will be appreciated that in other embodiments, one or more of these characteristics may be determined by the user equipment in response to an indication from the access point 12. For example the user equipment may determine a transport block size and/or rate matcher configuration based on an indication to implement bundling.
  • the access point may send an indication of the rate matcher configuration to the user equipment 1.
  • this indication may be explicit or implicit.
  • the indication may be a code rate, indication to implement bundling, indication to scale transport block size corresponding to the bundling, and/or other scheduling information.
  • the user equipment 1 may determine a configuration for a rate matcher and start to transmit based on this configuration.
  • the user equipment may transmit bundled sub frames in accordance with the determined rate matcher configuration.
  • the user equipment 1 and access point 12 of figure 1 may comprise any circuitry necessary to carry out a method or functionality as described above and/or with reference to the accompanying figures.
  • An appropriate user equipment 1 may be provided by any device capable of sending radio signals to and/or receiving radio signals.
  • Non-limiting examples include a mobile station (MS) such as a mobile phone or what is known as a 'smart phone', a portable computer provided with a wireless interface card or other wireless interface facility, personal data assistant (PDA) provided with wireless communication capabilities, or any combinations of these or the like.
  • a mobile communication device may provide, for example, communication of data for carrying communications such as voice, electronic mail (email), text message, multimedia and so on. Users may thus be offered and provided numerous services via their communication devices.
  • Non-limiting examples of these services include two-way or multi-way calls, data communication or multimedia services or simply an access to a data communications network system, such as the Internet.
  • Non-limiting examples of content data include downloads, television and radio programs, videos, advertisements, various alerts and other information.
  • the user equipment 1 may be configured to receive signals in the downlink over an air interface via appropriate apparatus for receiving and to transmit signals in the uplink via appropriate apparatus for transmitting radio signals.
  • a user equipment may comprise a transceiver means.
  • the transceiver means may be provided for example by means of a radio part and associated antenna arrangement.
  • the antenna arrangement may be arranged internally or externally to the user equipment.
  • the user equipment 1 may also be provided with at least one data processing entity, at least one memory and other possible components for use in software and hardware aided execution of tasks it is designed to perform, including control of access to and communications with base stations and/or other communication devices.
  • the data processing, storage and other relevant apparatus can be provided on an appropriate circuit board and/or in chipsets.
  • a user may control the operation of the user equipment 1 by means of a suitable user interface such as key pad, voice commands, touch sensitive screen or pad, combinations thereof or the like.
  • a display, a speaker and a microphone can be also provided.
  • a communication device may comprise appropriate connectors (either wired or wireless) to other devices and/or for connecting external accessories, for example hands-free equipment, thereto.
  • an access point 12 may comprise an integrated control apparatus.
  • the control apparatus can be provided by a separate network element.
  • the control apparatus can be interconnected with other control entities.
  • the control apparatus and functions may be distributed between a plurality of control units.
  • each access point may comprise a control apparatus.
  • two or more access points may share a control apparatus.
  • a control apparatus can be understood as providing control on communications in the service area of at least one access point.
  • the control apparatus may be configured to provide control functions in accordance with embodiments described above.
  • the control apparatus can comprise at least one memory, at least one data processing unit and an input/output interface. Via the interface the control apparatus may be coupled to an access point 12 or other parts of the access point 12 to cause operation of the access point 12 in accordance with the above described embodiments.
  • the control apparatus can be configured to execute an appropriate software code to provide the control functions.
  • An appropriately adapted computer program code product or products may be used for implementing the embodiments, when loaded on an appropriate data processing apparatus, for example for preparing the transmission uplink transmissions, for example bundled subframes.
  • the program code product for providing the operation may be stored on, provided and embodied by means of an appropriate carrier medium.
  • An appropriate computer program can be embodied on a computer readable record medium. A possibility is to download the program code product via a data network.
  • the various embodiments may be implemented in hardware or special purpose circuits, software, logic or any combination thereof. Embodiments of the application may thus be practiced in various components such as integrated circuit modules.
  • the design of integrated circuits is by and large a highly automated process. Complex and powerful software tools are available for converting a logic level design into a semiconductor circuit design ready to be etched and formed on a semiconductor substrate.
  • any blocks of the logic flow as in the Figures may represent program steps, or interconnected logic circuits, blocks and functions, or a combination of program steps and logic circuits, blocks and functions.
  • the software may be stored on such physical media as memory chips, or memory blocks implemented within the processor, magnetic media such as hard disk or floppy disks, and optical media such as for example DVD and the data variants thereof, CD.
  • Some aspects of the embodiments may be implemented in hardware, while other aspects may be implemented in firmware or software which may be executed by a controller, microprocessor or other computing device, although the invention is not limited thereto.

Abstract

A method and apparatus are provided. A bit selection criteria of a rate matcher is selected in dependence on a received indication. Bits for transmission are selected in accordance with the selected configuration.

Description

RATE MATCHING
The present application relates to rate matching and particularly but not exclusively to rate matching for bundled transmissions.
A communication system can be seen as a facility that enables communications between two or more entities such as a communication device, e.g. mobile stations (MS) or user equipment (UE), and/or other network elements or nodes, e.g. Node B, enhanced Node B (eNodeB) or base transceiver station (BTS), associated with the communication system. A communication system typically operates in accordance with a given standard or specification which sets out what the various entities associated with the communication system are permitted to do and how that should be achieved.
Wireless communication systems include various cellular or otherwise mobile communication systems using radio frequencies for sending voice or data between stations, for example between a communication device and a transceiver network element. Examples of wireless communication systems may comprise public land mobile network (PLMN), such as global system for mobile communication (GSM), the general packet radio service (GPRS), the universal mobile telecommunications system (UMTS), and the long term evolution (LTE).
A mobile communication network may logically be divided into a radio access network (RAN) and a core network (CN). The core network entities typically include various control or management entities, and gateways for enabling communication via a number of radio access networks and also for interfacing a single communication system with one or more communication systems, such as with other wireless systems, such as a wireless Internet Protocol (IP) network, and/or fixed line communication systems, such as a public switched telephone network (PSTN). Examples of radio access networks may comprise the UMTS terrestrial radio access network (UTRAN), the GSM/EDGE radio access network (GERAN) and the evolved UMTS terrestrial radio access network (EUTRAN).
A geographical area covered by a radio access network is divided into cells defining a radio coverage provided by a transceiver network element or access point, such as a NodeB, eNodeB and/or base transceiver station. A single transceiver network element may serve a number of cells. A plurality of transceiver network elements is typically connected to a controller network element, such as a radio network controller (RNC) or other management entity.
According to a first aspect, there is provided a method comprising: selecting a bit selection criteria of a rate matcher in dependence on a received indication; and selecting bits for transmission in accordance with the selected configuration.
The indication may be determined by a code rate for the transmission. A first bit selection criteria may be selected when the code rate is greater than a threshold and a second bit selection criteria may be selected when the code rate is less than the threshold.
The indication may be at least one of: a modulation and coding scheme indication, a transport block size indication, an indication of transport block scaling; an indication of physical resource block allocation scaling; an indication of a bundled transmission and an explicit indication of a bit selection criteria. Selecting bits for transmission may further comprise: selecting bits from a memory comprising data and parity bits in accordance with the selected bit selection criteria. The memory may be a circular buffer.
Selecting bits may further comprise selecting at least two blocks of bits for transmission. The at least two blocks may be transmitted in a bundled transmission. The bits of each block of the at least two blocks may be selected from a respective starting position bit in the memory. The respective starting position bit may be determined by the selected bit selection criteria. The starting position bit of at least one block selected by a first bit selection criteria may be different to the starting position bit of a corresponding block selected by the second selection criteria.
The bit starting position of a block selected by the first bit selection criteria may be a next data bit after the last bit of a preceding block selected by the first selection criteria. A data bit starting position of a block selected by the first bit selection criteria may be offset from the last bit of a preceding block selected by the first selection criteria by a predetermined offset.
According to a second aspect, there is provided an apparatus comprising: selecting means for selecting a bit selection criteria in dependence on a received indication; and a rate matcher configured to select bits for transmission in accordance with the selected configuration.
The indication may be determined by a code rate for the transmission. The selecting means may be configured to select a first bit selection criteria when the code rate is greater than a threshold and to select a second bit selection criteria when the code rate is less than the threshold.
The indication may be at least one of: a modulation and coding scheme indication, a transport block size indication, an indication of transport block scaling; an indication of physical resource block allocation scaling; an indication of a bundled transmission; and an explicit indication of a bit selection criteria.
The rate matcher may be further configured to selecting bits from a memory comprising data and parity bits in accordance with the selected bit selection criteria. The apparatus may further comprise the memory and the memory may be a circular buffer.
The rate matcher may be further configured to select at least two blocks of the bits for the transmission. The apparatus may be further configured to transmit the at least two blocks in a bundled transmission. The rate matcher may be further configured to select the bits of each block of the at least two blocks from a respective starting position bit in the memory. The respective starting position bit may be determined by the selected bit selection criteria. The starting position bit of at least one block selected by a first bit selection criteria may be different to the starting position bit of a corresponding block selected by the second selection criteria. The bit starting position of a block selected by the first bit selection criteria may be a next data bit after the last bit of a preceding block selected by the first selection criteria. A data bit starting position of a block selected by the first bit selection criteria may be offset from the last bit of a preceding block selected by the first selection criteria by a predetermined offset.
According to a third aspect, there is provided a computer program embedded on a computer readable medium, which when executed causes a computer to carry out the method of the first aspect. According to a fourth aspect, there is provided a method comprising: determining a bit selection criteria to be used by a rate matcher for the selection of bits for transmission based on at least one characteristic of the transmission; and transmitting the bit selection criteria to the rate matcher.
The at least one characteristic may be at least one of: a modulation and coding scheme; a transport block size, a transport block scaling; a physical resource block allocation scaling; and a bundled transmission.
According to a fifth aspect, there is provided a network node of mobile communications system comprising: determining means for determining a bit selection criteria to be used by a rate matcher for the selection of bits for transmission based on at least one characteristic of the transmission; and transmission means for transmitting the bit selection criteria to the rate matcher.
Embodiments will now be described in further detail, by way of example only, with reference to the following examples and accompanying drawings, in which:
Figure 1 shows an example of a communication system in which some embodiments may be implemented;
Figure 2 shows an example of a system in which rate matching may be implemented;
Figure 3 shows an example of a turbo coder;
Figure 4 shows an example of bit collection;
Figure 5 shows a flow diagram corresponding to an example of the method steps of generating a rate matched block;
Figure 6 shows an example of a circular buffer;
Figure 7 shows an example of the circular buffer and rate matched blocks in accordance with a first configuration;
Figure 8 shows a flow diagram of configuration selection according to some embodiments;
Figure 9 shows an example of the circular buffer and rate matched blocks in accordance with a second configuration; and
Figure 10 shows an example of signalling that may be carried out between a user equipment and an access point in some embodiments.
The following embodiments are exemplary. Although the specification may refer to "an", "one", or "some" embodiment(s) in several locations, this does not necessarily mean that each such reference is to the same embodiment s), or that the feature only applies to a single embodiment. Single features of different embodiments may also be combined to provide other embodiments. Furthermore, words "comprising" and "including" should be understood as not limiting the described embodiments to consist of only those features that have been mentioned and such embodiments may also contain also features/structures that have not been specifically mentioned.
Reference will now be made in detail to the embodiments of the present invention, examples of which are illustrated in the accompanying drawings. Figure 1 shows an example of a mobile communication system 10. Mobile communications apparatus or user equipment (UE) 1 can typically access wirelessly a mobile network system via at least one access point 12 or similar wireless transmitter and/or receiver node of the access system. An access point 12 may for example be a Node B, base station and/or eNodeB. An access point site typically provides one or more cells of a cellular system. In the figure 1 example the access point 12 is configured to provide a cell, but could provide, for example, three sectors, each sector providing a cell. Each mobile communications apparatus 1 and access point 12 may have one or more radio channels open at the same time and may communicate with more than one other station. In addition to communications with the access point 12, the communications apparatus 1 may be in direct communication with the other communication apparatus.
An access point 12 in some embodiments may carry out some control functionality. Additionally, the access point 12 may be in communication with a management entity or further network entity 11.
The management entity 11 may be connected to one or more further access points (not shown). The user equipment 1, access point 12 and management entity 11 may be considered to collectively comprise a radio access network (RAN).
The network of figure 1 may further include one or more gateways entities (not shown) for communicating with further networks such as an external IP network. A communication system may be provided by one or more interconnected networks and the elements thereof, and one or more gateway nodes may be provided for interconnecting various networks. The gateways may facilitate communication with entities on the further communication networks for example a server 13. In some embodiments the server 13 may be able to communicate with the management entity 11, either via a gateway or by another means.
The communications apparatus 1 may be provided with wireless access to the communication system based on various access techniques, such as code division multiple access (CDMA), wideband CDMA (WCDMA), time division multiple access (TDMA), frequency division multiple access (FDMA), Orthogonal Frequency-Division Multiple Access (OFDMA), space division multiple access (SDMA), and so on.
The access point 12 may communicate with UE 1 by scheduling resources on a shared channel, for example an uplink shared channel (UL-SCH), on which the UEs 1 may transmit. In some embodiments, the UEs 1 may transmit control information, for example LI and L2 control information. The access point 12 may transmit the scheduling information and other information on a downlink shared channel (DL-SCH). The channels may be divided up into transmission timing intervals (TTIs) or sub-frames in which the data may be transmitted.
It will be appreciated that in some embodiments a TTI and a sub-frame are equivalent and the terminology may be interchangeable. Each TTI may define one or more physical resource blocks PRBs. The PRBs may be frequency resources to be used during the TTI. For example during an allocated TTI, a transmission may be made on a physical resource block comprising the allocated frequency.
Data to be transmitted during one or more TTIs may be encoded and rate matched before being transmitted in the scheduled TTI. In some embodiments, the data transmitted may correspond to a transport block. A transport block may be a group of data that is transmitted in one transmission. In some embodiments one transmission may correspond to a TTI, in other embodiments where bundling is implemented, a transmission may correspond to a bundle of TTIs. The transport block may be encoded in order to introduce parity bits that may aid in decoding the transmitted transport block later. Rate matching may be carried out to set the number of bits being transmitted to a desired code rate for the transmission. For example, a rate matcher may prune or select bits from the encoded data in order to adhere to the desired code rate for the data transmitted in the scheduled TTI.
Data corresponding to a transport block may be transmitted in a single TTI or subframe, however in some systems bundling of TTIs or sub frames may be implemented. For example, in some systems a UE 1 on a cell-edge may experience a reduction in the quality of service. This may be of particular concern if the UE 1 is implementing time sensitive applications, for example applications making use of voice over internet protocol (VoIP). In these cases, the UE 1 may implement bundling by transmitting data in consecutive TTIs in order to improve quality of the communication. In some embodiments, the data to be transmitted in the bundle may be converted into two or more blocks or redundancy versions, each including bits of the data to be transmitted and parity bits. Each block may then be transmitted in a consecutive TTI or subframe of the bundle.
The bundled subframes may then be received at a receiver and the data and parity bits used to decode the transmitted transport block.
The size of the transport block to be transmitted (in other words, the size of the data to be transmitted in a bundle before encoding and rate matching is carried out) may be determined based on parameters or characteristics of the transmission. For example, bundled transmissions may implement a larger transport block size than non-bundled transmissions. In some embodiments, this may be because multiple combinations of data and parity bits are transmitted in a bundle as opposed to the single combination in a non-bundled transmission. Other factors such as the number of physical resource blocks PRBs allocated to the transmission may affect the transport block size.
In some embodiments a network node, for example an eNodeB, may send a modulation and coding scheme indicator MCS to the UE 1 which may indicate a transport block size and a code rate to be used. For example, in some systems, a UE may determine the transport block size based on two parameters: MCS and a number of allocated PRBs.
The MCS indicator may in some embodiments include two parameters: a modulation order and a transport block size index. The UE may access a transport block size table with transport block sizes corresponding the number of allocated PRBs and the size index. In some embodiments, for a same transport block size index, the transport block size may increase with a larger number of allocated PRBs. In embodiments where the number of allocated PRBs remains constant, the transport block size may increase with a higher size index. In this case, a higher transport block size index corresponds to an increase in a code rate of the data transmitted.
A code rate of a transmission may be calculated as the ratio of the number of bits of data being transmitted to the number of bits in total being transmitted per subframe. So, for example, while an individually transmitted subframe may have a code rate of 1/3, a subframe of a bundle of subframes may have a higher coding rate, for example 4/3 as more data bits are being transmitted by the subframe bundle than number of bits in a sub frame.
TTI or subframe bundling is expected to improve the throughput of the transmitted data. For example TTI bundling on the UL-SCH is expected to improve the throughput when UL-SCH transmission becomes limited by UE transmission power (for example the coverage of the coverage area of the UL-SCH). However, this is not always the case. For example this in not always the case with higher coding rates.
For example based on simulations for an uplink shared channel in an long term evolution (LTE) system, the uplink LTE throughput achieved with bundling by simply relaxing LTE bundling limitations (for example, in some cases, by allowing bundling for a larger number of physical resource block PRBs than 3, supporting longer bundling than 4 subframes, and scaling the used transport block sizes according to the number of bundled subframes) may not meet the non-bundling throughput reference at higher data rates (for example at better radio channel conditions where the signal to noise ratio (SNR) is higher than on cell edge). For example, at a SNR of -1.5dB, throughput with 4 physical resource block (PRB) and 8 TTI bundling (encoding over 8ms, coding rate>l per subframe) is only 200kbh7s whereas the non-bundling reference reaches throughput of about 360kbn7s. This means more than ldB loss in SNR.
In some embodiments, it is recognised that a problem may lie in the rate matcher. For example, existing rate matchers may not adequately deal with the rate matching for bundling implementing higher code rates and larger transport block sizes.
Some embodiments attempt to address this problem by providing a rate matching configuration according to parameters of the transmission. For example a rate matching configuration may be based on a desired code rate, a transport block size, the modulation and coding scheme and./or other implicit or explicit parameters associated with the transmission.
For example, in some embodiments, two or more rate matching configurations are provided, each being suited for use with a code rate or range of code rates. In some embodiments, one rate matcher configuration may correspond to a desired code rate below 1 and another rate matcher configuration may correspond to a desired code rate over 1. It will be appreciated that in some embodiments, the configurations may not directly correspond to the code rate but rather to an indication of a code rate, for example an MCS' value or other indication. In some embodiments, the use of a configuration may be triggered by the receipt oi a configuration identifier. It will also be appreciated that in some embodiments, a code rate of greater than 1 may correspond to a bundled transmission.
Figure 2 shows an example of the system 200 in which rate matching may be used.
In some embodiments, the system of figure 2 may be implemented in a UE 1 in the preparation of data for transmission on an uplink shared channel (UL-SCH). It will be appreciated however, that the system may be used to prepare data for the transmission of any channel. For example, in some embodiments, the system 200 may be implemented in an access point for the preparation of data for transmission on a downlink shared channel (DL-SCH).
At block 201 data to be transmitted, comprising a input bits, is assembled. The data may be processed to insert an error detecting code, for example a cyclic redundancy check (CRC) at block 202. It will be appreciated that this is by way of example only and, in some embodiments, no CRC may be inserted or other error detection may be carried out. At block 203 the data, including the CRC attachment, may be segmented into code blocks. A code block size may be determined by the channel coder to be used to encode the code blocks. For example, in some embodiments, the block size may be chosen to be compatible with the channel coder, for example to be compatible with an interleaver of the channel coder. In some embodiments, a code block size may correspond to the transport block size.
At block 204, the code blocks may be encoded by the channel encoder according to an encoding scheme. For example, in some embodiments, the encoding scheme may be a turbo coding scheme. However it will be appreciated that the coding scheme may be any suitable coding scheme. For example, in other' embodiments, a tail biting convolutional coding scheme may be used. The encoded data may be made up of systematic bits corresponding to the data to be transmitted and parity bits.
The encoded data output from the channel encoder at block 204 may be passed to a rate matcher at block 205. In some embodiments, the encoded data may be passed to the rate matcher using a circular buffer. The rate matcher may prune and/or select bits of the encoded data to form an encoded block of data for transmission. This pruning and/or selecting of bits may be carried out in accordance with a configuration of the rate matcher and may convert the code rate of the encoded data blocks at step 204 to a desired code rate of transmission.
At block 206 the rate matched encoded code block may be concatenated together in preparation for transmission.
The system 200 may optionally further include control information in the encoded coded clocks. For example, a channel quality indicator (CQI) may be inserted at block 207, a rank indication (RI) and acknowledgement (ACK) and/or negative acknowledgement (NACK) may be inserted at block 208. It will be appreciated that this is by way of example only and more or less or other control information may be included in the encoded code blocks for transmission.
At block 209, bits hk of the encoded rate matched concatenated blocks including control information may be transmitted.
It will be appreciated that the system 200 is only an example of a system in which channel coding and rate matching may be implemented. It will be appreciated that the rate matching as described in some embodiments, may be applicable to different or other systems implementing rate matching. It will be appreciated that some embodiments may be applicable to any system implementing a rate matching step. Some embodiments may be applicable to rate matching the output of a channel coder.
Channel coding, for example the channel coding of block 204, may be used to encode the data for transmission in a form that will assist decoding and correct transmission of the data. For example, the channel coding may generate parity bits which may be used to check that the data is received correctly at a receiver.
Figure 3 shows an example of channel coder 300. The channel coder 300 of figure is shown as a turbo coder, however it will be appreciated that other types of coders may be implemented. For example, in some embodiments, the coder may be a tail biting convolutional coder. Turbo coding is a form of forward error correction and may improve a channel capacity by adding redundant information in the form of parity bits. In some embodiments, the turbo encoder scheme may use a Parallel Concatenated Convolutional Code (PCCC) with two recursive convolutional coders and a "contention-free" Quadratic Permutation Polynomial (QPP) interleaver as shown in figure 3.
The turbo coder 300 of figure 3 comprises a first constituent encoded 320, a second constituent encoder 330 and an interleaver 340. The turbo encoder 300 may receive a bitstream Ck 301 to be encoded and input the bitstream Ck 301 to the first constituent encoder 320 and the interleaver 340. The interleaver may interleave the bitstream Ck 301 and provide the interleaved bitstream c'k 302 to the second constituent encoder 330.
The interleaver may permutate or rearrange the bits of the input bit sequence ¾ to form the interleaved bit sequence c . The interleaver may be used to spread the information bits so that in the event of a burst error for example, the two code streams are affected differently. This may allow data to bi recovered more efficiently.
The output of the interleaver may be described by:
c = c )j i = Q,l1 ...l iK - i) (i)
where
Figure imgf000010_0001
and K is the input length of the bitstream sequence Ck and fi and f*2 are coefficients chosen dependent on K.
For example, if K= 40 and f = 3 and f2 = 10 then:
Π® =0,13,6,19,12,25,18,31 ,24,37,30,3,36,9,2, 15,8,21 , 14,27,20,33,26,39,32,5,38. ..
The constituent encoders may each have a transfer function:
Figure imgf000010_0002
where 1 (the first element) represents a systematic output transfer function;
Figure imgf000010_0003
represents a recursive convolutional output transfer function where
50(D) = 1 + D 2 + D3 g1(D = l + D + D 3
Each of the constituent encoders 320 and 330 may output two bitstreams - a systematic bitstream Xk, x'k and a parity bitstream zk, z'k. These bit streams may be determined by the transfer function (iii). Additionally trellis termination may be implemented in some embodiments. For example, the first constituent encoder 320 may output a systematic bit sequence Xk 351 and a parity bit sequence zk 352. The second constituent encoder 330 may output a systematic sequence x'k 354 and a parity bit sequence z 353. It will be appreciated however that only one of the systematic bit sequences Xk and x'k will be used and the other may be disabled as being merely a permutated (or rearranged) version of the chosen systematic sequence. The turbo encoder 300 may therefore provide three output streams corresponding to a systematic stream and two parity streams. For example, in the case of figure 3, the turbo encoder 300 provides a systematic stream xk 351 , a first parity stream zk 352 and a second parity stream z'k 353. As can be seen the ratio of the systematic bits to the parity bits is 1/3 and thus the code rate of the output of the encoder 300 is; 1/3. It will be appreciated that this is by way of example and other coders may correspond to other code rates. For example, some encoders may produce more or less parity streams and decrease and/or increase the code rate accordingly.
The systematic stream xk 351, the first parity stream zk 352 and the second parity stream z'k 353 may be collected into a circular buffer in order for rate matching to take place.
Figure 4 shows an example of bit collection and rate matching.
Figure 4 comprises a first input bit sequence 4(0) 351, a second input bit sequence 352 and a third input bit sequence 4(2) 353. The first, second and third input bit sequences 351, 352 and 353 may correspond to the outputs of the turbo encoder 300 as follows:
a k - Xk
For k= 0, 1 , 2... , K- 1 ; where K is the length of the bit sequence ck.
The first input bit sequence 4(0) 351, second input bit sequence 352 and third input bit sequence dk (2) 353 may further comprises additional bits appended onto the end of the of the systematic stream xk 351, the first parity stream zk 352 and the second parity stream z'k 353 in accordance with trellis encoding to form a bit sequence of D bits.
In the case of turbo encoding with a code rate of 1/3, the length of each bit sequences dk (0) 351,; dk (1) 352 and dk (2) 353 may be: D= K + 4 to accommodate the trellis encoding bits. In the case of tail biting convolutional encoding the length of each bit sequences 4(0) 351 , dk (1) 352 and dk (2) 353 may be: D= K.
Each of the input bit sequences 4(0) 351, dk (1) 352 and dk (2) 353 are input to a respective sub-block! interleaver 410, 420 and 430. Similarly to the interleaver 340 of figure 3, each of the first 410, second 42C and third 430 sub-block interleavers may interleave the respective inputs to for example reduce the impact of burst errors on a signal as consecutive bits of data may not be corrupted.
The sub-block interleavers 410, 420 and 430 may reshape the input encoded bit sequence 4(0) 351, dk 352 and dk ' 353 on a row-by-row basis. This may form a matrix with Csubbiock columns and R -s,ubblock rows. In some examples,
Figure imgf000011_0001
32 ι
The number of rows of a subblock Rsubbiock may be determined by finding a minimum integer such that the number of encoded input bits D ≤ x cs^ : ) _ IF (¾£M,.«* x cii»toC¾) > D then a> number of nulls D are appended onto the front of the encoded input sequence sc
2¾ + D— ί b b ock X ^Subb cck ) For the sub-blocks generated from dk(0) 351 and dk( 1 ) 352, the sub-block interleavers perform inter- column permutation on the sub-block matrix to reorder the columns. For example, the columns may be, reordered according to the pattern: 0, 16, 8, 24, 4, 20, 12, 28, 2, 18, 10, 26, 6, 22, 14, 30, 1, 17, 9, 25, 5, 21; 13, 29, 3, 19, 11, 27, 7, 23, 15, 31, where the pattern refers to the column numbers of the matrix before reordering.
The output of the first interleaver 410 may be a bit sequence corresponding to bits read out the inter-column permutated dk(0) 351 matrix on a column by column basis to create a first output stream Vk 0^
K = (RTC , , CTC , , )
411 which is 71 Subbio k Su bMock f ^jts long. Similarly, the output of the second interleaver 420 may be a bit sequence corresponding to bits read out the inter-column permutated dk( 1) 352 matrix on a column by column basis to create a second output stream Vk( 1) 421 which is
Figure imgf000012_0001
bits long.
The subblock matrix of the 4(2) 353 bit sequence may be also permutated based on the' permutation pattern shown above but may be modified to create a permutation which is a function ol
^SubM^k -SubMock k and Λ - This may be used to provide a third output stream vk (2) 431. It will be appreciated that the third output stream may also be ^ 71 ^S bbiock x ^SnbbiDck ) ^jts long.
The first output stream Vk(0) 411, the second output stream Vk( 1) 421 and the third output stream Vk(2) 431 may be provided to a bit collector 440. The bit collector may collect the interleaved bit streams Vk(0) 411,; Vk( 1 ) 421 and Vk(2) 431 to provide a circular buffer. It will be appreciated that in some embodiments the circular buffer may be a virtual circular buffer, which corresponds to a sequential buffer whose last address, wraps around to the first address. The circular buffer may therefore be implemented in hardware or software The bit collector 440 may provide a bit output stream Wk corresponding to the bits of the circular buffer. ,
The bit collector 440 may fill the circular buffer in a manner determined by the encoding scheme the rate matcher and/or a decoding scheme implemented at a receiver.
In the present example, the circular buffer may have a length of K„ bits where Kw= 3Kn. It will be appreciated that 3Kn may correspond to the number of bits in the three sub-blocks created by the interleavers 410, 420 and 430.
The bits Wk of the circular buffer (where k= 0 to 3KQ-1) may be generated as follows:
Figure imgf000012_0002
w¾ +2* = for * = 0,..., Kn -\
wKn +2k+i = vk (2) for * = 0,..., Kn -1 ,
Therefore, the first KD Dbits of the circular buffer may comprise bits corresponding to the systematic bits Xk and the next 2KD Dmay comprise interleaved parity bits of zk and z . ι
The bits of the circular buffer Wk 441 may then be provided to the rate matcher 450, for bit selection and/or pruning to provide the rate matched output bit sequence ε¾. It will be appreciated that in some embodiments the circular buffer may be generated differently, for example a different pattern of interleaving, as long as a receiver is aware of the pattern of bits in the circular buffer.
In some embodiments a rate matcher, such as the rate matcher 450, may be provided with access to a circular buffer. The rate matcher may select bits from the circular buffer according to an algorithm or routine to provide output bits et for transmission. The output bits may be provided in the form of a block having a number of bits E corresponding to the number of bits of the circular buffer to be transmitted in a subframe and may be determined by system parameters.
The algorithm used to select the bits for transmission may be able to select one or more redundancy versions. Blocks of different redundancy may be selected from the same circular buffer but may contain a different selection of bits from the buffer. Providing blocks of different redundancy may improve the ability of a receiver to decode a transmitted transport block as different information pertaining to the transport block is transmitted in each redundancy version.
In systems where subframe bundling is not implemented for example, a different redundancy version of a transport block may be transmitted in response to a negative acknowledgement for a previously transmitted redundancy version of that block from a receiver. In subframe bundling, different redundancy version blocks may be bundled together and transmitted.
The rate matcher is configured to select bits such that a ratio of data bits to output bits adheres to a code rate. In embodiments that do not implement subframe bundling this ratio is the ratio of data bits in a first block to the size of the first block E. In embodiments where subframe bundling is implemented, this ratio may be the ratio of data bits contained in the subframe bundle, to the size of a subframe of E bits. The data and parity bits chosen by the rate matcher are then used to decode a transmitted block.
The rate matcher 450 of figure 4 may have a value E defining a length of the desired output bit sequence ¾. The rate matcher 450 may further be configured to determine a redundancy version RV to be used for the transmission. In order to provide blocks with different parity bits, the rate matcher 450 may select and/or prune the bits of the circular buffer Wk according to different redundancy versions, where each redundancy version results in a different combination of data bits being selected for the ouput bit sequence ¾. It will be appreciated that in some embodiments, the different redundancy versions may correspond to different offsets in the selection of the bits from Wk.
In the embodiment figure 4, the rate matcher 450 algorithm may generate blocks of 4 different redundancy version rv;dx:
rvidx = 0, 1, 2 or 3 (iv)
The output bit sequence ek may correspond to:
ek = 0, 1, 2,..., E-1 (v)
In some embodiments, the rate matcher 450 may define an offset value k0 and collect successive E bits from this offset value to provide the output stream ek. It will be appreciated that any null bits (which were inserted to create the subblocks) will be discarded and the next successive bit may be collected until E bits have been collected from the output stream ek. In some embodiments, the offset k0 will be defined according to the redundancy version used. For example, different redundancy versions will start collecting the output bits et at different starting points. In this manner, an output stream et may be output corresponding to different bits for different redundancy version.
In one example, the rate matcher may be collect bits et using the following routine:
Set k=0 and j=0
while {k<E} //before the end of the length of e* is reached
if W(ko+j)modNcb≠<NULL> //if the selected bit is not a null value
ek = W(w+j)modNcb//selected the selected bit as output bit e*
k=k+l
end if
j=j+l
end while where E is the number of bits in the output stream et corresponding to a code block;
k corresponds to the bit number of an output bit e^
W(ko+j)modNcb is the bit for which a determination is made as to whether or not the bit should be selected to form part of Wt; and
where ko is the number of the initial bit to be selected and may correspond to an offset from bit 0 of Wk (wo) at which the rate matcher starts selecting bits.
In some embodiments, the value of the offset ko may be defined by the equation:
K0 - Ksubblock
Figure imgf000014_0002
(vi)
and Ncb may be defined as:
N
■ N.h = min IR
,K- for DL-SCH and PCH transport channels (vii)
C
for UL-SCH and MCH transport channels (viii)
where Kw is the length of the circular buffer w¾
C is the number of code blocks that are in a bundle. The number of code blocks in a bundle may be dependent on the type of encoder used.
And NIR is defined by:
Figure imgf000014_0001
where NSOft is the total number of soft channel bits [4] according to the UE category indicated by ue-
Category-vlOxy [6] If Noft = 35982720, Kc= 5,
elseif NSOft = 3654144 and the UE is capable of supporting no more than a maximum of two spatial layers for the DL cell, Kc = 2
else Kc = 1
end if.
where KMiM0 is equal to 2 if the UE is configured to receive PDSCH transmissions based on transmission modes 3, 4, 8 or 9 as defined in section 7.1 of [3], and is equal to 1 otherwise,
where DL_HARQ is the maximum number of DL HARQ processes as defined in section 7 of [3]; and where imit is a constant equal to 8.
In some embodiments, the variable E (the length of the output et for a code block) may be defined by if r < C- - \ els
Figure imgf000015_0001
end if
where G' = G/(Nl - Qm ) , Qm ^> the modulation order and may be for example equal to 2 for QPSK, 4 for 16QAM and 6 for 64QAM, and NZ is for transmit diversity equal to 2 otherwise equal to the number of layers a transport block is mapped onto.
C is the number of code blocks in a bundle; G is the total number of bits available for the transmission of one transport block.
Therefore, for UL-SCH ko may be expressed by following equation in some embodiments:
Figure imgf000015_0002
' fVidx +
V °-PLsubblock
The rate matcher 450 may use an algorithm for the selection of bits from the circular buffer, for example an algorithm according to equations (iv) to (x).
Figure 5 shows an example of the method steps carried out by a rate matcher in the selection of bits for a redundancy version.
At step 501 a starting position k0 is determined for bit selection for a rate matched code block. The starting position may be dependent on the redundancy version of the rate matched code block being selected. It will be appreciated that in some embodiments, k0 may be determined by one or more of the above equations. The redundancy version may in some embodiments, be selected sequentially. For example a block corresponding to redundancy version 0 may first be selected and transmitted and the redundancy version may be incremented for every retransmission in response to a NACK from the receiver. Where bundling is implemented for example, successive redundancy versions may be bundled together.
At step 502, the rate matcher may examine the bit identified by the starting position k0 and determine whether that bit represents a null value. It will be appreciated that the null values may have been inserted by the subblock interleavers in order to reshape the input bits into the subblock matrices.
If it is determined that the selected bit is not a null bit, the method may proceeds to step 503 where that selected bit is output to form part of ¾. The method may the proceed to step 505 where it is determined whether the length of the rate matched code block of E bits have been output. If less than E bits have been output the method proceeds to step 504 where a next sequential bit is selected for examination. After the next bit has been selected, the method may proceed to step 502 where it may be determined if that bit is null.
If, at step 502, it is determined that a selected bits is null, the method may proceed to step 504, where a next sequential bit is selected for examination. If, at step 505, it is determined that E bits have been output, the method proceeds to step 506 where the method ends.
In this manner, from the offset position k0, each sequential bits is examined to determine if it has a null value and is output as part of et if it does not.
It will be appreciated that more than one redundancy version of a transport block may be generated by repeating the method step shown for example in figure 5 for the different redundancy versions. The starting position ko for each redundancy version may differ in the selection of bits from the circular buffer Wk. For example, the redundancy version rv;dx may be set according to the chosen redundancy version and the starting position k0 will change accordingly.
Figure 6 shows an example of the circular buffer 602 and a rate matched output block 604 selected according to a redundancy version of 0.
Figure 6 shows an example of the circular buffer 600 comprising bits Wk. In this embodiment of the circular buffer, the first Kn bits 601 of the circular buffer 600 may correspond to the systematic bit stream Vk(0) and the next 2Kn bits 602 of the circular buffer 600 may correspond to interleaved bits of the parity streams Vk(1) and Vk(2). The block 604 depicts the E bits selected by the rate matcher to form the output bits ek corresponding to a redundancy version rvo. The selected may start from a staring position k0 603. It will be appreciated the starting position may correspond to redundancy version and may differ according to the redundancy version selected.
By shifting a starting position k0 for a block ek according to a redundancy version, in some embodiments, different systematic and/or parity bits may be transmitted in the different redundancy versions in order to maximise the ability of the receiver to decode the received rate matched code block ek.
When bundling is implemented, subframes are bundled together in an attempt to maximise the ability of a receiver to decode the received data. Two or more rate matched code blocks may be generated by a rate matcher corresponding to different redundancy versions and may be bundled together and transmitted. In some embodiments each code block may correspond to one transmission time interval TTI and/or one subframe. For example, in some systems, the bundling length in the time domain may correspond to 4 TTIs (4 ms) and have a resource allocation of 1, 2 or 3 physical resource blocks PRBs. When bundling is implemented, a receiver may have a higher likelihood of decoding a received transport block correctly. In this case, the transport block size is often scaled to take into account of the number of subframes bundled together. In other words, bundling more subframes together means that a larger size of transport block for a given PRB allocation may be transmitted without little or no error. The larger transport block may take advantage of savings in overheads in the transmissions.
It will be appreciated that the size of the transport block may be selected by a modulation and coding scheme MCS indication and a number of allocated PRBs. For a given number of PRBs the MCS indication may correspond to a larger transport block size code and a higher coder rate.
While subframe bundling is expected to provide improvements in signal coverage, this is not always the case. In some cases, the selection of bits by the rate matcher may be inefficient when dealing with subframe bundling and particularly but not exclusively scaled transport blocks. When the transport block size increases, the bits transmitted in the bundled redundancy versions may not be sufficient to decode a transport block. For example, while the number of bits E transmitted in a TTI may remain the same, the size of transport block to be transmitted may increase. In this case, the relative number of bits transmitted may be inefficient in terms of decoding the transport block.
For example current rate matchers, for example the rate matcher as defined by LTE-3GPP TS63.212 Rel 8 provides these problems when coding rates are greater than 1. Figure 7 shows an example of the redundancy versions generated by such a rate matcher.
Figure 7 shows the circular buffer 600 and rate matched code blocks 701 , 702, and 703 and 704 corresponding to different redundancy versions of a code block input to a rate matcher.
Figure 7 shows a circular buffer 600 in a matrix format having 32 columns per subblock and a number of rows corresponding to the amount of data to be transmitted. It will be appreciated that 32 columns here is by way of example only and other number of columns may be implemented.
Subblock 605 may correspond to a subblock matrix formed by the systematic bit stream Vk(0) and the subblocks 606 may correspond to the interleaved bit sequences of Vk( 1 ) and Vk(2). Figure 7 additionally shows the four output bit sequence code blocks 701 , 702, 703 and 704 corresponding to the first, second, third and fourth redundancy versions of the coder block input to the rate matcher.
The code blocks 701 , 702, 703 and 704 may be bundled together to be transmitted. The first code block 701 may correspond to a first redundancy version rvO and may have a starting point of ko(l). The second code block 702 may have redundancy version of 1 and correspond to a second starting position ko(2). The third code block 703 may have a redundancy version of 2 and correspond to a starting position of k0(3). The fourth code block 704 may have redundancy version of 3 and correspond to a starting position of ko(4).
Figure 7 shows an example of bundling carried out by the system 200 in accordance with the above described rate matcher configuration for coding rates over one. In this example, the transport block size may be scaled with the number of bundled subframes. The bundling may shorten the relative portion of the 1ms rate matching block (E) as a larger transport block may be used. For example, while the number of bits of a rate matched block may remain constant as compared to transmissions with lower code rates, the number of bits in the transport block to be transmitted increases. There the rate matched block covers less of a percentage of the transport block.
The starting position (or offset from bit 0) for each block 701, 702, 703 and 704 in the bundled is selected based on the redundancy version rv and for each TTI (for example according to equation x), the rate matching block is selected from a subsequent location of the rate matching input bits (based on the rv index in equation vi).
Due to the configuration of the rate matcher, gaps 710, 711, 712 and 713 may appear between the different redundancy versions of the rate matched code blocks 701, 702, 703 and 704. These gaps may for example occur when the code rate exceeds 4/3.
These gaps 710, 711, 712 and 713 may lead to a situation where not all of the necessary bits are transmitted. In other words, some of the systematic bits 705 as well as parity bits 706 may not be transmitted at all, and HARQ retransmissions of further or duplicate redundancy versions may just repeat already transmitted bits. Additionally in this configuration, a considerable portion of systematic bits may not be transmitted in the first (bundled) HARQ transmission.
This may lead to a degradation in the efficiency of the receiver and many repeat request transmissions may be made before the receiver can correctly decode the data or the receiver if the receiver is ever able to correctly decode the data. It can be seen from figure 7 that the configuration of the rate matcher is not optimised for all code rates and particularly to code rates exceeding 1.
Some embodiments may provide an alternative method or algorithm for the selection of bits to form a redundancy version of a transport block that may avoid the above 'gaps'. In some embodiments, a rate matching configuration may be selectable depending on the code rate of a transmission. For example some embodiments may select between two rate matcher configurations, a first for code rates less than one and a second for code rates greater than 1.
It will be appreciated that while a code rate of 1 has been given as an example of a code rate threshold, other values of code rate may be the code rate threshold in other embodiments. For example, in some embodiments, the code rate threshold may be 4/3. It will be appreciated that in some embodiments, the code rate threshold may be dependent on other characteristics of the system, for example the coding scheme used.
Figure 8 shows an example of configuration selection for rate matching according to some embodiments. Figure 8 shows an example where two different rate matcher configurations have been defined. It will be appreciated that this is by way of example only and in some embodiments more than two rate matcher configurations may be defined. Each rate matcher configuration may be associated with code rate threshold. For example, in figure 8 a first configuration of the rate matcher is optimised for code rates less than a code rate threshold and the second rate match configuration has been optimised for a code rate greater than the code rate threshold. It will be appreciated that further configurations may be optimised for code rates corresponding to different thresholds.
The method starts at steps 801 where an indication is received. The indication may identify a configuration to be used. In some embodiments, the indication may correspond to a code rate for a transmission. In other embodiments, the indication may be an explicit indication of which configuration to use. It will be appreciated that in these embodiments, the explicit indication may be generated in response or be determined by the code rate of the transmissions. In some embodiments, the indication may be received from an access point 12 and may form part of scheduling information or may be separate information. It will be appreciated that in some embodiments, the indication may correspond to stored information. For example the indication may correspond to a stored threshold which determines when the first and second configurations are to be used.
It will be appreciated that in embodiments, the indication may be related to or form part of scheduling information sent from an access node. For example the indication may be an indication of a modulation and coding scheme to be used. In this embodiment, the user equipment may interpret the indicated modulation and coding scheme as further indicating a rate matcher configuration to be used. In some embodiments, a rate matcher configuration may be associated with a modulation and coding scheme. In another example, the indication may be an indication of a transport block size. This may indicate the size of the transport block to be used as well as being further associated with a rate matcher configuration.
In some embodiments, the transport block used may be scaled in response to for example a code rate and/or coding and modulation scheme. In this case, in some embodiments, the indication may be an indication of transport block scaling. In some embodiments, a physical resource block allocation may be scaled for bundled transmissions, for example more physical resource blocks may be allocated for example for a larger bundle. In this case, the indication may be an indication of physical resource block allocation scaling. In additional or further embodiments, the indication may be an indication that the transmissions are to be bundled. In some embodiments, the indication may be an explicit indication of a bit selection criteria or rate matcher configuration.
The method then proceeds to step 802 where it is determined which configuration to use. In some embodiments, this may correspond to identifying the configuration based on the indication, for example when the indication explicitly or implicitly identifies the configuration. In other embodiments where the indication is a code rate indication, it may be determined whether the code rate is greater than a code rate threshold. If the code rate is greater than the code rate threshold, it may be determined that a second rate matcher configuration is to be used. If the code rate is less than the code rate threshold, it may be determined that a first code rate is used.
If at step 802 it is determined that the first configuration is to be used, the method may proceed to step 803 where the first configuration is used. If it is determined at 802 that the second configuration is to be used, the method may proceed to step 804 where the second configuration will be used. It will be appreciated that this is by way of example only and in some embodiments a default configuration may be defined. The default configuration may used when no indication of a non-default configuration is received. For example, the default configuration may be used until an indication is received that indicated that a non-default configuration is to be used. In some embodiments the identity of the configuration to be used may be signalled to a user equipment from an access point. For example, the rate match configuration to be used may be signalled as part of uplink UL scheduling information.
In some embodiments the first configuration may be a default configuration. It will be appreciated that this first configuration may correspond to a configuration as discussed with reference to figure 7. In some embodiments the default configuration may be selected if no information identifying a rate much configuration is signalled to a user equipment. In the example of figure 8, the first configuration is selected.
If signalling occurs identifying a second rate matcher configuration, then the second rate matcher configuration is used. This signalling may for example include predetermined code points in the downlink control information (DCI) when subframe bundling is configured via higher level signalling. Alternatively or additionally the signalling identifying the use of the second rate matcher configuration may be explicit. For example, the signalling may be contained as part of the subframe bundling configuration via the higher layer signalling. In a further or alternatively embodiment, the use of the second rate match configuration may be associated with other signalling used in the setup of subframe handling. For example, the use of the second rate match configuration may be associated with a transmission block size.
It will be appreciated that in some embodiments the signalling, explicit or implicit, may be associated with the code rate at the transmission. For example, an access point may determine which configuration to identify in the signalling based on a code rate of the signal to be transmitted.
In some embodiments, the access point may determine which rate matching configuration to use (for example the first, second and/or further configuration) and signalled information associated with an identity of the selected configuration to the user equipment.
It will be appreciated that in the case that the configuration to be used is determined by the access point, the access point may for example base its determination on a characteristic of the transmission. For example, the determination may be based on at least one of the modulation and coding scheme to be implemented in the transmission, a transport block size for the transmission, a transport block scaling to be carried out for the transmission, a physical resource block allocation scaling to be carried out for the transmission and/or an indication that the transmission to be a bundled transmission.
In some embodiments access point may determine which configurations to use based on the measurement from the user equipment. For example, in some embodiments, the access point may base its determination on signal to interference plus noise ratio (SINR) and/or power headroom reports. For example, in some embodiments, the access point may determine that subframe bundling is to be used and the coding rate per subframe is over the subframe threshold and base a decision to implement the second configuration on this.
It will be also be appreciated that in some embodiments the first configuration 803 may be that defined with respect to figure 7. This configuration may correspond to the rate matcher configuration defined in 3GPP TS 36.212 (December 2009) Multiplexing and channel coding, V.8.8.O., however it will be appreciated that another configuration may be used as the first configuration. In some embodiments, the second configuration may be associated with code rates above the code threshold. For example the second configuration may be associated with the code rate greater than 1, in another embodiment the second configuration may be associated with code rate of greater than 4/3.
An example of the second configuration will now be described with respect to figure 9.
The second configuration may be similar to the first configuration in that a similar amount of systematic and parity bits may be transmitted in the first bundled transmission as in the first configuration. However, the second configurations may differ from the first configuration in the determination of the offset ko used for each rate matched block.
In some embodiments, adjusting the second configuration with respect to the first configuration based on the offset value k0 may reduce the complexity of implementing two rate matcher configurations while optimising the rate matcher configuration for different code rates.
Similar to figure 7, figure 9 shows the circular buffer 600 comprising a first subblock 705 corresponding to the systematic bits and a second and third subblock 706 corresponding to the interleaved parity bits. In one example, each subblock may have 32 columns and a number of rows defined by the amount of data to be transmitted. It will be appreciated that in some embodiments the bits of the first subblock 705 may correspond to the bit stream Vk(0) and bits of the second and third subblock 706 may correspond to the interleaved bits of the second and third bit streams Vk(1) and Vk(2).
Figure 7 further depicts four rate matched code blocks 901, 902, 903 and 904 corresponding to the first, second, third and fourth redundancy versions rvo, rvi, n¾ and rv3.
Each of the rate matched blocks 901, 902, 903 and 904 may correspond to a starting position for that block. For example, the first rate matched block 901 may correspond to starting position k0 (0). The second rate matched block 902 may correspond to a starting position ko(1). The third rate matched block 903 may correspond to a third starting position ko(2) and the fourth rate matched block 904 may correspond to a fourth starting position k0 (3).
In the example configuration of figure 9, the starting position k0 of each of the rate matched blocks is chosen to correspond to an end of a previous rate matched block. For example, with a rate matched block length of E, the starting position k0 (1) of the second rate matched block 902 corresponds to the starting position of the first rate matched block k0 (0) plus E. Similarly the starting position of the third rate matched block k0 (2)=ko(1) + E. Furthermore, the starting position of the fourth rate matched block ko(3)=ko(2) + E.
It will also be appreciated that in the embodiment of figure 9, the starting point ko(0) of the first rate matched block 901 corresponds to the first bit of the circular buffer, however it will be appreciated that in other embodiments of the starting point ko(0) may correspond to any offset.
It will also be appreciated than in example figure 9, any null bits have been disregarded for purposes of clarity of explanation. However in the case where null bits are present a bit range of the circular buffer corresponding to a rate matched blocks, these null bits will be disregarded and the next successive bit will be considered for the rate matched block. This process may be similar to that described with reference to figure 5. It will be appreciated that configuration shown in figure 9 is one example of a configuration that may be used as a second configuration. It will be appreciated that other configurations may also be implemented that are suitable for a code rate over the threshold. In some embodiments these configurations may be implemented in place of or in addition to the configuration as described with reference to figure 9.
For example a configuration or configurations may be implemented corresponding to one or more of the following in some embodiments:
a) a configuration corresponding to a rate matched block vector continuing from the end of a rate matched block vector of a previous rate matched block within a subframe bundle (for example as described with reference to figure 9).
b) a configuration corresponding to providing starting points k0 for each rate matched block vector corresponding to the end of the previous vector plus an offset. For example k0 (l+1) = k0 (l) + (E+X) where X is the offset.
c) a configuration corresponding to defining equally spaced out vector starting points (which may be similar to the first configuration) and increasing the number of redundancy versions. For example, instead of providing four rate matched blocks corresponding to four redundancy version, eight rate matched blocks may be provided having equally spaced vector starting point.
It will be appreciated that in some systems one or more of the options a to c may be provided as a second and further configurations. It will also be appreciated that in some embodiments, none of the above configurations may be provided and other configurations may be used.
In some embodiments, an access point may select between the second and further configurations. This selection may be based on for example a SINR and/or coding rate. The access point in some embodiments may further the able to select between the second, third or fourth configuration based on a sufficiently high SINR to support a coding rate of for example 1/N where N is the number of rate matched blocks in a bundle. It will be appreciated that the access point may further select whether or not to use subframe bundling for example based on transmit power and/or a wider physical resource block (PRB) allocation.
It will be appreciated that in some embodiments, the second and subsequent configurations may differ from the first configuration in the definition of the starting point of a rate matched block or offset value ko.
In the first configuration, the starting point of a rate matched block with reference to the circular buffer may be defined according to equation (iv) (repeated here for convenience).
Figure imgf000022_0001
(iv)
It will be appreciated that this equation may be in line with the 3GPP TS 36.212 (December 2009) Multiplexing and channel coding, V.8.8.0 and V.10.6.0. or further releases.
According to one embodiment the k0 for the second and/or further configuration may be defined using rate matched block output length E in equation as follows: E rem(rvldx , Nbundle)
Figure imgf000023_0001
(xi)
where Nbundle is number of TTIs being bundled;
Rsubblock is the number of rows in a subblock;
Neb is the number of code blocks in the bundle;
rvjdx is the redundancy number of the rate match block being generated; and
E is the length of the rate matched block;
In another embodiment the rv;dx value may be kept fixed over bundled transmission and an index, for example a TTI index n running from 0 to Nbundle- 1, may be used in the equation as follows for the bundled transmission:
Figure imgf000023_0002
n is an index running from 0 to Nbundle- 1.
Set k = 0 and j = 0
while { k < E }
if ≠< NULL > ek = w(k0+j)mOdNcb
k = k +l
end if
=7 +1
end
It will be appreciated that these embodiments do not take into account small position error in w\ vector due to the null bits in the circular buffer v¾ vector and that the effect of the null bits may be taken into account in some embodiments.
In some embodiments, for example the embodiment according to xii, the k0 change within bundle may be ignored (i.e. rv does not change over bundled subfirames, but only between HARQ retransmissions) and continue using j from the first TTI of bundle to the last bundled TTI (for the first bundled TTI j is set as shown above and for next TTIs in bundle j is not set to zero value).
Figure 10 shows an example of the signalling between a user equipment 1 and access point 12 that may implement some embodiments of the application.
At 101, the user equipment may provide measurements to the access point 12. These measurements may relate to for example the signal to noise ratio SNR experience by the user equipment. In some embodiments, the measurements may be sent in response to a request from the access point 12. In other embodiments, the measurements may be periodic or otherwise triggered. At step 102, the access point 12 may make determinations relating to the scheduling of transmissions based on the measurements. For example, the access point may determine whether or not subframe bundling should take place and may determine characteristics of the transmission, for example a coding rate, transport block size and/or rate matcher configuration. It will be appreciated that in other embodiments, one or more of these characteristics may be determined by the user equipment in response to an indication from the access point 12. For example the user equipment may determine a transport block size and/or rate matcher configuration based on an indication to implement bundling.
At step 103, the access point may send an indication of the rate matcher configuration to the user equipment 1. It will be appreciated that this indication may be explicit or implicit. For example, the indication may be a code rate, indication to implement bundling, indication to scale transport block size corresponding to the bundling, and/or other scheduling information.
At step 104, the user equipment 1 may determine a configuration for a rate matcher and start to transmit based on this configuration. At step 105, the user equipment may transmit bundled sub frames in accordance with the determined rate matcher configuration.
It will be appreciated that the user equipment 1 and access point 12 of figure 1 may comprise any circuitry necessary to carry out a method or functionality as described above and/or with reference to the accompanying figures.
An appropriate user equipment 1 may be provided by any device capable of sending radio signals to and/or receiving radio signals. Non-limiting examples include a mobile station (MS) such as a mobile phone or what is known as a 'smart phone', a portable computer provided with a wireless interface card or other wireless interface facility, personal data assistant (PDA) provided with wireless communication capabilities, or any combinations of these or the like. A mobile communication device may provide, for example, communication of data for carrying communications such as voice, electronic mail (email), text message, multimedia and so on. Users may thus be offered and provided numerous services via their communication devices. Non-limiting examples of these services include two-way or multi-way calls, data communication or multimedia services or simply an access to a data communications network system, such as the Internet. Non-limiting examples of content data include downloads, television and radio programs, videos, advertisements, various alerts and other information.
The user equipment 1 may be configured to receive signals in the downlink over an air interface via appropriate apparatus for receiving and to transmit signals in the uplink via appropriate apparatus for transmitting radio signals. For this purpose, a user equipment may comprise a transceiver means. The transceiver means may be provided for example by means of a radio part and associated antenna arrangement. The antenna arrangement may be arranged internally or externally to the user equipment.
The user equipment 1 may also be provided with at least one data processing entity, at least one memory and other possible components for use in software and hardware aided execution of tasks it is designed to perform, including control of access to and communications with base stations and/or other communication devices. The data processing, storage and other relevant apparatus can be provided on an appropriate circuit board and/or in chipsets. A user may control the operation of the user equipment 1 by means of a suitable user interface such as key pad, voice commands, touch sensitive screen or pad, combinations thereof or the like. A display, a speaker and a microphone can be also provided. Furthermore, a communication device may comprise appropriate connectors (either wired or wireless) to other devices and/or for connecting external accessories, for example hands-free equipment, thereto.
The method steps or functionality associated with an access point may be carried out by or incorporated in the access point 12 or other network entity. In some embodiments an access point 12 may comprise an integrated control apparatus. In some other embodiments, the control apparatus can be provided by a separate network element. The control apparatus can be interconnected with other control entities. The control apparatus and functions may be distributed between a plurality of control units. In some embodiments each access point may comprise a control apparatus. In alternative embodiments, two or more access points may share a control apparatus.
The arrangement of the control may depend on the standard, and for example in accordance with the current LTE specifications no separate radio network controller is provided. Regardless of the location, a control apparatus can be understood as providing control on communications in the service area of at least one access point. The control apparatus may be configured to provide control functions in accordance with embodiments described above. For this purpose the control apparatus can comprise at least one memory, at least one data processing unit and an input/output interface. Via the interface the control apparatus may be coupled to an access point 12 or other parts of the access point 12 to cause operation of the access point 12 in accordance with the above described embodiments. The control apparatus can be configured to execute an appropriate software code to provide the control functions.
An appropriately adapted computer program code product or products may be used for implementing the embodiments, when loaded on an appropriate data processing apparatus, for example for preparing the transmission uplink transmissions, for example bundled subframes. The program code product for providing the operation may be stored on, provided and embodied by means of an appropriate carrier medium. An appropriate computer program can be embodied on a computer readable record medium. A possibility is to download the program code product via a data network. In general, the various embodiments may be implemented in hardware or special purpose circuits, software, logic or any combination thereof. Embodiments of the application may thus be practiced in various components such as integrated circuit modules. The design of integrated circuits is by and large a highly automated process. Complex and powerful software tools are available for converting a logic level design into a semiconductor circuit design ready to be etched and formed on a semiconductor substrate.
Further in this regard it should be noted that any blocks of the logic flow as in the Figures may represent program steps, or interconnected logic circuits, blocks and functions, or a combination of program steps and logic circuits, blocks and functions. The software may be stored on such physical media as memory chips, or memory blocks implemented within the processor, magnetic media such as hard disk or floppy disks, and optical media such as for example DVD and the data variants thereof, CD. Some aspects of the embodiments may be implemented in hardware, while other aspects may be implemented in firmware or software which may be executed by a controller, microprocessor or other computing device, although the invention is not limited thereto. While various aspects of the invention may be illustrated and described as block diagrams, flow charts, or using some other pictorial representation, it is well understood that these blocks, apparatus, systems, techniques or methods described herein may be implemented in, as non-limiting examples, hardware, software, firmware, special purpose circuits or logic, general purpose hardware or controller or other computing devices, or some combination thereof.
It is also noted herein that while the above describes exemplifying embodiments of the invention, there are several variations and modifications which may be made to the disclosed solution without departing from the scope of the present application.

Claims

Claims
1. A method comprising:
selecting a bit selection criteria of a rate matcher in dependence on a received indication; and selecting bits for transmission in accordance with the selected configuration.
2. The method of claim 1 wherein the indication is determined by a code rate for the transmission.
3. The method of claim 2 wherein a first bit selection criteria is selected when the code rate is greater than a threshold and a second bit selection criteria is selected when the code rate is less than the threshold.
4. The method of any preceding claim wherein the indication is at least one of: a modulation and coding scheme indication, a transport block size indication, an indication of transport block scaling; an indication of physical resource block allocation scaling; an indication of a bundled transmission and an explicit indication of a bit selection criteria.
5. The method of any preceding claim wherein selecting bits for transmission further comprises: selecting bits from a memory comprising data and parity bits in accordance with the selected bit selection criteria.
6. The method of claim 5 wherein the memory is a circular buffer.
7. The method of any of claims 5 and 6 wherein selecting bits further comprises selecting at least two blocks of bits for transmission.
8. The method of claim 7 wherein the bits of each block of the at least two blocks are selected from a respective starting position bit in the memory.
9. The method of claim 8 wherein the respective starting position bit is determined by the selected bit selection criteria.
10. The method of claim 9 wherein the starting position bit of at least one block selected by a first bit selection criteria is different to the starting position bit of a corresponding block selected by the second selection criteria.
11. The method of claim 3 wherein the bit starting position of a block selected by the first bit selection criteria is a next data bit after the last bit of a preceding block selected by the first selection criteria.
12. The method of claim 3 wherein a data bit starting position of a block selected by the first bit selection criteria is offset from the last bit of a preceding block selected by the first selection criteria by a predetermined offset.
13. An apparatus comprising:
selecting means for selecting a bit selection criteria in dependence on a received indication; and a rate matcher configured to select bits for transmission in accordance with the selected
configuration.
14. The apparatus of claim 13 wherein the indication is determined by a code rate for the transmission.
15. The apparatus of claim 14 wherein the selecting means is configured to select a first bit selection criteria when the code rate is greater than a threshold and to select a second bit selection criteria when the code rate is less than the threshold.
16. The apparatus of any of claims 13 to 15 wherein the indication is at least one of: a modulation and coding scheme indication, a transport block size indication, an indication of transport block scaling; an indication of physical resource block allocation scaling; an indication of a bundled transmission; and an explicit indication of a bit selection criteria.
17. The apparatus of any of claims 14 to 16 wherein the rate matcher is further configured to selecting bits from a memory comprising data and parity bits in accordance with the selected bit selection criteria.
18. The apparatus of claim 17 wherein the rate matcher is further configured to select at least two blocks of the bits for the transmission.
19. The apparatus of claim 18 wherein the rate matcher is further configured to select the bits of each block of the at least two blocks from a respective starting position bit in the memory.
20. The apparatus of claim 19 wherein the respective starting position bit is determined by the selected bit selection criteria.
21. The apparatus of claim 20 wherein the bit starting position of a block selected by the first bit selection criteria is a next data bit after the last bit of a preceding block selected by the first selection criteria.
22. The apparatus of claim 21 wherein a data bit starting position of a block selected by the first bit selection criteria is offset from the last bit of a preceding block selected by the first selection criteria by a predetermined offset.
23. A computer program embedded on a computer readable medium, which when executed causes a computer to carry out the method of any of claims 1 to 12.
24. A method comprising:
determining a bit selection criteria to be used by a rate matcher for the selection of bits for transmission based on at least one characteristic of the transmission; and
transmitting the bit selection criteria to the rate matcher.
25. A network node of mobile communications system comprising:
determining means for determining a bit selection criteria to be used by a rate matcher for the selection of bits for transmission based on at least one characteristic of the transmission; and
transmission means for transmitting the bit selection criteria to the rate matcher.
PCT/EP2012/070550 2012-01-24 2012-10-17 Rate matching WO2014060028A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/EP2012/070550 WO2014060028A1 (en) 2012-10-17 2012-10-17 Rate matching
MA37215A MA35868B1 (en) 2012-01-24 2014-07-15 Flow mapping

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2012/070550 WO2014060028A1 (en) 2012-10-17 2012-10-17 Rate matching

Publications (1)

Publication Number Publication Date
WO2014060028A1 true WO2014060028A1 (en) 2014-04-24

Family

ID=47146350

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2012/070550 WO2014060028A1 (en) 2012-01-24 2012-10-17 Rate matching

Country Status (1)

Country Link
WO (1) WO2014060028A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023225945A1 (en) * 2022-05-26 2023-11-30 Qualcomm Incorporated Probabilistic constellation shaping for slot aggregation

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1624606A1 (en) * 2003-04-04 2006-02-08 Matsushita Electric Industrial Co., Ltd. Apparatus and method for radio transmission
US20090028129A1 (en) * 2007-07-23 2009-01-29 Zhouyue Pi Rate matching for hybrid ARQ operations

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1624606A1 (en) * 2003-04-04 2006-02-08 Matsushita Electric Industrial Co., Ltd. Apparatus and method for radio transmission
US20090028129A1 (en) * 2007-07-23 2009-01-29 Zhouyue Pi Rate matching for hybrid ARQ operations

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023225945A1 (en) * 2022-05-26 2023-11-30 Qualcomm Incorporated Probabilistic constellation shaping for slot aggregation

Similar Documents

Publication Publication Date Title
DK2557715T3 (en) FEEDBACK SIGNALING TROUBLESHOOTING AND CONTROL IN MIMO WIRELESS COMMUNICATION SYSTEMS
US8514927B2 (en) Compression code for transferring rate matched data between devices
RU2407146C2 (en) Message encoding and re-display
EP2625810B1 (en) Method and apparatus in wireless communication systems
JP5410509B2 (en) Method, apparatus and communication system for improving spectrum utilization efficiency in communication system
US8140944B2 (en) Interleaver design with unequal error protection for control information
KR100594021B1 (en) Bit scrambling method and apparatus for packet transmission/reception in wireless communication system
US20090313516A1 (en) Enhanced hybrid automatic repeat request for long term evolution
EP1594247A2 (en) Method and apparatus for determining rate matching parameters for a transport channel in a mobile telecommunication system
EP2840852A1 (en) Data transmission method and device
JPWO2007080727A1 (en) Communication method and communication apparatus
US9220091B2 (en) Method and terminal for transmitting uplink control information and method and apparatus for determining the number of coded symbol
CN117375766A (en) Information transmission method, transmitting terminal equipment and receiving terminal equipment
WO2009096658A1 (en) Method for determining transport block size and signal transmission method using the same
CN105227270A (en) For coding and the decoding of the control information of radio communication
US20090052473A1 (en) Method and apparatus for circuit buffer-based rate matching and burst multiplexing for packet data transmission in a communication system
JP2011504038A (en) Transport block size determination method and signal transmission method using the same
US7178089B1 (en) Two stage date packet processing scheme
EP2537278A1 (en) Technique of encoding harq feedback information with two separate codewords with unequal error protection for dtx and ack/nack
KR101701305B1 (en) Method and Apparatus for Transmitting and Receiving Uplink Control Information in Carrier Aggregation
WO2012112099A1 (en) Methods and nodes for adapting coding and beta offset of csi payload as a function of the length of the csi payload
WO2011136033A1 (en) Communication system, transmitter apparatus, receiver apparatus, program, and processor
CN104660319A (en) An interference eliminating method and device
WO2017130505A1 (en) Device, method and program
JP2007306469A (en) Wireless communication apparatus and modulated signal generating 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: 12783546

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: 12783546

Country of ref document: EP

Kind code of ref document: A1