# Patent

## Title
Beamforming codeword exchange between base stations

## Abstract

A first base station receives a message from a second base station. The first base station and the second base station communicate to wireless devices employing a downlink carrier comprising downlink resource blocks. The message comprises downlink beamforming information indicating a beamforming codeword of a codebook employed for downlink resource block(s). The first base station selects, for a subset of the downlink resource blocks, beamforming codewords from a codebook based, at least in part, on the downlink beamforming information. The first base station transmits signals on a subset of the downlink resource blocks employing beamforming codewords.

## Background
CROSS-REFERENCE TO RELATED APPLICATIONS
This application claims the benefit of U.S. Provisional Application No. 61/577,203, filed Dec. 19, 2011, entitled “Beam Information Exchange between Base Stations,” and U.S. Provisional Application No. 61/577,206, filed Dec. 19, 2012, entitled “Beamforming Codeword Exchange between Base Stations,” and U.S. Provisional Application No. 61/577,208, filed Dec. 19, 2011, entitled “Beamforming Signaling in a Wireless Network,” which are hereby incorporated by reference in its entirety.


BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS
An exemplary embodiment of the present invention is described herein with reference to the drawings, in which:
FIG. 1 is a diagram depicting example sets of OFDM subcarriers as per an aspect of an embodiment of the present invention;
FIG. 2 is a diagram depicting an example transmission time and reception time for two carriers as per an aspect of an embodiment of the present invention;
FIG. 3 is a diagram depicting OFDM radio resources as per an aspect of an embodiment of the present invention;
FIG. 4 is a block diagram of a base station and a wireless device as per an aspect of an embodiment of the present invention; and
FIG. 5 is a block diagram depicting a system for transmitting data traffic over an OFDM radio system as per an aspect of an embodiment of the present invention;
FIG. 6 is a block diagram of a limited feedback system as per an aspect of an embodiment of the present invention;
FIG. 7 is a block diagram of a limited feedback MIMO system as per an aspect of an embodiment of the present invention;
FIG. 8 is a block diagram for beamforming information exchange as per an aspect of an embodiment of the present invention;
FIG. 9 depicts message flows between a base station and a wireless device as per an aspect of an embodiment of the present invention;
FIG. 10 depicts an example flow chart for a base station employing beamforming as per an aspect of an embodiment of the present invention;
FIG. 11 depicts an example flow chart for a base station employing beamforming as per an aspect of an embodiment of the present invention;
FIG. 12 depicts an example flow chart for a base station employing beamforming as per an aspect of an embodiment of the present invention; and
FIG. 13 depicts an example flow chart for a base station employing beamforming as per an aspect of an embodiment of the present invention.


DETAILED DESCRIPTION OF EMBODIMENTS
Example embodiments of the present invention enable beamforming information to be exchanged between base stations. Embodiments of the technology disclosed herein may be employed in the technical field of wireless communication systems. More particularly, the embodiments of the technology disclosed herein may relate to enhancing the exchange of beamforming information between base stations in a wireless communication system.
Example embodiments of the invention may be implemented using various physical layer modulation and transmission mechanisms. Example transmission mechanisms may include, but are not limited to: CDMA (code division multiple access), OFDM (orthogonal frequency division multiplexing), TDMA (time division multiple access), Wavelet technologies, and/or the like. Hybrid transmission mechanisms such as TDMA/CDMA, and OFDM/CDMA may also be employed. Various modulation schemes may be applied for signal transmission in the physical layer. Examples of modulation schemes include, but are not limited to: phase, amplitude, code, a combination of these, and/or the like. An example radio transmission method may implement QAM (quadrature amplitude modulation) using BPSK (binary phase shift keying), QPSK (quadrature phase shift keying), 16-QAM, 64-QAM, 256-QAM, and/or the like. Physical radio transmission may be enhanced by dynamically or semi-dynamically changing the modulation and coding scheme depending on transmission requirements and radio conditions.
FIG. 1 is a diagram depicting example sets of OFDM subcarriers as per an aspect of an embodiment of the present invention. As illustrated in this example, arrow(s) in the diagram may depict a subcarrier in a multicarrier OFDM system. The OFDM system may use technology such as OFDM technology, SC-OFDM (single carrier-OFDM) technology, or the like. For example, arrow 101 shows a subcarrier transmitting information symbols. FIG. 1 is for illustration purposes, and a typical multicarrier OFDM system may include more subcarriers in a carrier. For example, the number of subcarriers in a carrier may be in the range of 10 to 10,000 subcarriers. FIG. 1 shows two guard bands 106 and 107 in a transmission band. As illustrated in FIG. 1, guard band 106 is between subcarriers 103 and subcarriers 104. The example set of subcarriers A 102 includes subcarriers 103 and subcarriers 104. FIG. 1 also illustrates an example set of subcarriers B 105. As illustrated, there is no guard band between any two subcarriers in the example set of subcarriers B 105. Carriers in a multicarrier OFDM communication system may be contiguous carriers, non-contiguous carriers, or a combination of both contiguous and non-contiguous carriers.
FIG. 2 is a diagram depicting an example transmission time and reception time for two carriers as per an aspect of an embodiment of the present invention. A multicarrier OFDM communication system may include one or more carriers, for example, ranging from 1 to 10 carriers. Carrier A 204 and carrier B 205 may have the same or different timing structures. Although FIG. 2 shows two synchronized carriers, carrier A 204 and carrier B 205 may or may not be synchronized with each other. Different radio frame structures may be supported for FDD (frequency division duplex) and TDD (time division duplex) duplex mechanisms. FIG. 2 shows an example FDD frame timing. Downlink and uplink transmissions may be organized into radio frames 201. In this example, radio frame duration is 10 msec. Other frame durations, for example, in the range of 1 to 100 msec may also be supported. In this example, each 10 ms radio frame 201 may be divided into ten equally sized sub-frames 202. Other subframe durations such as including 0.5 msec, 1 msec, 2 msec, and 5 msec may also be supported. Sub-frame(s) may consist of two or more slots 206. For the example of FDD, 10 subframes may be available for downlink transmission and 10 subframes may be available for uplink transmissions in each 10 ms interval. Uplink and downlink transmissions may be separated in the frequency domain. Slot(s) may include a plurality of OFDM symbols 203. The number of OFDM symbols 203 in a slot 206 may depend on the cyclic prefix length and subcarrier spacing.
In an example case of TDD, uplink and downlink transmissions may be separated in the time domain. According to some of the various aspects of embodiments, each 10 ms radio frame may include two half-frames of 5 ms each. Half-frame(s) may include eight slots of length 0.5 ms and three special fields: DwPTS (Downlink Pilot Time Slot), GP (Guard Period) and UpPTS (Uplink Pilot Time Slot). The length of DwPTS and UpPTS may be configurable subject to the total length of DwPTS, GP and UpPTS being equal to 1 ms. Both 5 ms and 10 ms switch-point periodicity may be supported. In an example, subframe 1 in all configurations and subframe 6 in configurations with 5 ms switch-point periodicity may include DwPTS, GP and UpPTS. Subframe 6 in configurations with 10 ms switch-point periodicity may include DwPTS. Other subframes may include two equally sized slots. For this TDD example, GP may be employed for downlink to uplink transition. Other subframes/fields may be assigned for either downlink or uplink transmission. Other frame structures in addition to the above two frame structures may also be supported, for example in one example embodiment the frame duration may be selected dynamically based on the packet sizes.
FIG. 3 is a diagram depicting OFDM radio resources as per an aspect of an embodiment of the present invention. The resource grid structure in time 304 and frequency 305 is illustrated in FIG. 3. The quantity of downlink subcarriers or resource blocks (RB) (in this example 6 to 100 RBs) may depend, at least in part, on the downlink transmission bandwidth 306 configured in the cell. The smallest radio resource unit may be called a resource element (e.g. 301). Resource elements may be grouped into resource blocks (e.g. 302). Resource blocks may be grouped into larger radio resources called Resource Block Groups (RBG) (e.g. 303). The transmitted signal in slot 206 may be described by one or several resource grids of a plurality of subcarriers and a plurality of OFDM symbols. Resource blocks may be used to describe the mapping of certain physical channels to resource elements. Other pre-defined groupings of physical resource elements may be implemented in the system depending on the radio technology. For example, 24 subcarriers may be grouped as a radio block for a duration of 5 msec.
Physical and virtual resource blocks may be defined. A physical resource block may be defined as N consecutive OFDM symbols in the time domain and M consecutive subcarriers in the frequency domain, wherein M and N are integers. A physical resource block may include M×N resource elements. In an illustrative example, a resource block may correspond to one slot in the time domain and 180 kHz in the frequency domain (for 15 KHz subcarrier bandwidth and 12 subcarriers). A virtual resource block may be of the same size as a physical resource block. Various types of virtual resource blocks may be defined (e.g. virtual resource blocks of localized type and virtual resource blocks of distributed type). For various types of virtual resource blocks, a pair of virtual resource blocks over two slots in a subframe may be assigned together by a single virtual resource block number. Virtual resource blocks of localized type may be mapped directly to physical resource blocks such that sequential virtual resource block k corresponds to physical resource block k. Alternatively, virtual resource blocks of distributed type may be mapped to physical resource blocks according to a predefined table or a predefined formula. Various configurations for radio resources may be supported under an OFDM framework, for example, a resource block may be defined as including the subcarriers in the entire band for an allocated time duration.
According to some of the various aspects of embodiments, an antenna port may be defined such that the channel over which a symbol on the antenna port is conveyed may be inferred from the channel over which another symbol on the same antenna port is conveyed. In some embodiments, there may be one resource grid per antenna port. The set of antenna port(s) supported may depend on the reference signal configuration in the cell. Cell-specific reference signals may support a configuration of one, two, or four antenna port(s) and may be transmitted on antenna port(s) {0}, {0, 1}, and {0, 1, 2, 3}, respectively. Multicast-broadcast reference signals may be transmitted on antenna port 4. Wireless device-specific reference signals may be transmitted on antenna port(s) 5, 7, 8, or one or several of ports {7, 8, 9, 10, 11, 12, 13, 14}. Positioning reference signals may be transmitted on antenna port 6. Channel state information (CSI) reference signals may support a configuration of one, two, four or eight antenna port(s) and may be transmitted on antenna port(s) 15, {15, 16}, {15, . . . , 18} and {15, . . . , 22}, respectively. Various configurations for antenna configuration may be supported depending on the number of antennas and the capability of the wireless devices and wireless base stations.
According to some embodiments, a radio resource framework using OFDM technology may be employed. Alternative embodiments may be implemented employing other radio technologies. Example transmission mechanisms include, but are not limited to: CDMA, OFDM, TDMA, Wavelet technologies, and/or the like. Hybrid transmission mechanisms such as TDMA/CDMA, and OFDM/CDMA may also be employed.
FIG. 4 is an example block diagram of a base station 401 and a wireless device 406, as per an aspect of an embodiment of the present invention. A communication network 400 may include at least one base station 401 and at least one wireless device 406. The base station 401 may include at least one communication interface 402, at least one processor 403, and at least one set of program code instructions 405 stored in non-transitory memory 404 and executable by the at least one processor 403. The wireless device 406 may include at least one communication interface 407, at least one processor 408, and at least one set of program code instructions 410 stored in non-transitory memory 409 and executable by the at least one processor 408. Communication interface 402 in base station 401 may be configured to engage in communication with communication interface 407 in wireless device 406 via a communication path that includes at least one wireless link 411. Wireless link 411 may be a bi-directional link. Communication interface 407 in wireless device 406 may also be configured to engage in a communication with communication interface 402 in base station 401. Base station 401 and wireless device 406 may be configured to send and receive data over wireless link 411 using multiple frequency carriers. According to some of the various aspects of embodiments, transceiver(s) may be employed. A transceiver is a device that includes both a transmitter and receiver. Transceivers may be employed in devices such as wireless devices, base stations, relay nodes, and/or the like. Example embodiments for radio technology implemented in communication interface 402, 407 and wireless link 411 are illustrated are FIG. 1, FIG. 2, and FIG. 3. and associated text.
FIG. 5 is a block diagram depicting a system 500 for transmitting data traffic generated by a wireless device 502 to a server 508 over a multicarrier OFDM radio according to one aspect of the illustrative embodiments. The system 500 may include a Wireless Cellular Network/Internet Network 507, which may function to provide connectivity between one or more wireless devices 502 (e.g., a cell phone, PDA (personal digital assistant), other wirelessly-equipped device, and/or the like), one or more servers 508 (e.g. multimedia server, application servers, email servers, or database servers) and/or the like.
It should be understood, however, that this and other arrangements described herein are set forth for purposes of example only. As such, those skilled in the art will appreciate that other arrangements and other elements (e.g., machines, interfaces, functions, orders of functions, etc.) may be used instead, some elements may be added, and some elements may be omitted altogether. Further, as in most telecommunications applications, those skilled in the art will appreciate that many of the elements described herein are functional entities that may be implemented as discrete or distributed components or in conjunction with other components, and in any suitable combination and location. Still further, various functions described herein as being performed by one or more entities may be carried out by hardware, firmware and/or software logic in combination with hardware. For instance, various functions may be carried out by a processor executing a set of machine language instructions stored in memory.
As shown, the access network may include a plurality of base stations 503 . . . 504. Base station 503 . . . 504 of the access network may function to transmit and receive RF (radio frequency) radiation 505 . . . 506 at one or more carrier frequencies, and the RF radiation may provide one or more air interfaces over which the wireless device 502 may communicate with the base stations 503 . . . 504. The user 501 may use the wireless device (or UE: user equipment) to receive data traffic, such as one or more multimedia files, data files, pictures, video files, or voice mails, etc. The wireless device 502 may include applications such as web email, email applications, upload and ftp applications, MMS (multimedia messaging system) applications, or file sharing applications. In another example embodiment, the wireless device 502 may automatically send traffic to a server 508 without direct involvement of a user. For example, consider a wireless camera with automatic upload feature, or a video camera uploading videos to the remote server 508, or a personal computer equipped with an application transmitting traffic to a remote server.
One or more base stations 503 . . . 504 may define a corresponding wireless coverage area. The RF radiation 505 . . . 506 of the base stations 503 . . . 504 may carry communications between the Wireless Cellular Network/Internet Network 507 and access device 502 according to any of a variety of protocols. For example, RF radiation 505 . . . 506 may carry communications according to WiMAX (Worldwide Interoperability for Microwave Access e.g., IEEE 802.16), LTE (long term evolution), microwave, satellite, MMDS (Multichannel Multipoint Distribution Service), Wi-Fi (e.g., IEEE 802.11), Bluetooth, infrared, and other protocols now known or later developed. The communication between the wireless device 502 and the server 508 may be enabled by any networking and transport technology for example TCP/IP (transport control protocol/Internet protocol), RTP (real time protocol), RTCP (real time control protocol), HTTP (Hypertext Transfer Protocol) or any other networking protocol.
According to some of the various aspects of embodiments, an LTE network may include many base stations, providing a user plane (PDCP: packet data convergence protocol/RLC: radio link control/MAC: media access control/PHY: physical) and control plane (RRC: radio resource control) protocol terminations towards the wireless device. The base station(s) may be interconnected with other base station(s) by means of an X2 interface. The base stations may also be connected by means of an S1 interface to an EPC (Evolved Packet Core). For example, the base stations may be interconnected to the MME (Mobility Management Entity) by means of the S1-MME interface and to the Serving Gateway (S-GW) by means of the S1-U interface. The S1 interface may support a many-to-many relation between MMEs/Serving Gateways and base stations. A base station may include many sectors for example: 1, 2, 3, 4, or 6 sectors. A base station may include many cells, for example, ranging from 1 to 50 cells or more. A cell may be categorized, for example, as a primary cell or secondary cell. When carrier aggregation is configured, a wireless device may have one RRC connection with the network. At RRC connection establishment/re-establishment/handover, one serving cell may provide the NAS (non-access stratum) mobility information (e.g. TAI-tracking area identifier), and at RRC connection re-establishment/handover, one serving cell may provide the security input. This cell may be referred to as the Primary Cell (PCell). In the downlink, the carrier corresponding to the PCell may be the Downlink Primary Component Carrier (DL PCC), while in the uplink, it may be the Uplink Primary Component Carrier (UL PCC). Depending on wireless device capabilities, Secondary Cells (SCells) may be configured to form together with the PCell a set of serving cells. In the downlink, the carrier corresponding to an SCell may be a Downlink Secondary Component Carrier (DL SCC), while in the uplink, it may be an Uplink Secondary Component Carrier (UL SCC). An SCell may or may not have an uplink carrier.
A cell, comprising a downlink carrier and optionally an uplink carrier, is assigned a physical cell ID and a cell index. A carrier (downlink or uplink) belongs to only one cell, the cell ID or Cell index may also identify the downlink carrier or uplink carrier of the cell (depending on the context it is used). In the specification, cell ID may be equally referred to a carrier ID, and cell index may be referred to carrier index. In implementation, the physical cell ID or cell index may be assigned to a cell. Cell ID may be determined using the synchronization signal transmitted on a downlink carrier. Cell index may be determined using RRC messages. For example, when the specification refers to a first physical cell ID for a first downlink carrier, it may mean the first physical cell ID is for a cell comprising the first downlink carrier. The same concept may apply to, for example, carrier activation. When the specification indicates that a first carrier is activated, it equally means that the cell comprising the first carrier is activated.
Embodiments may be configured to operate as needed. The disclosed mechanism may be performed when certain criteria are met, for example, in wireless device, base station, radio environment, network, a combination of the above, and/or the like. Example criteria may be based, at least in part, on for example, traffic load, initial system set up, packet sizes, traffic characteristics, a combination of the above, and/or the like. When the one or more criteria are met, the example embodiments may be applied. Therefore, it may be possible to implement example embodiments that selectively implement disclosed protocols.
Example embodiments of the invention may enable beamforming information to be exchanged between base stations. Other example embodiments may comprise a non-transitory tangible computer readable media comprising instructions executable by one or more processors to cause beamforming information to be exchanged between base stations. Yet other example embodiments may comprise an article of manufacture that comprises a non-transitory tangible computer readable machine-accessible medium having instructions encoded thereon for enabling programmable hardware to cause a device (e.g. wireless communicator, user equipment (UE), base station, etc.) to exchange beamforming information between base stations. The device may include processors, memory, interfaces, and/or the like. Other example embodiments may comprise communication networks comprising devices such as base stations, wireless devices (or UE), servers, switches, antennas, and/or the like.
According to some of the various aspects of embodiments, base stations in a wireless network may be directly or indirectly connected to each other to exchange signaling and data packets. This interface in LTE and LTE-Advanced may be called an X2 interface. Other embodiments of the interface may also possible, for example, using an S1 interface. The X2 user plane interface (X2-U) may be defined between base stations. The X2-U interface may provide non-guaranteed delivery of user plane packet date units (PDUs). The transport network layer may be built on internet protocol (IP) transport and GPRS tunneling protocol user plane (GTP-U) may be used on top of user datagram protocol (UDP)/IP to carry the user plane PDUs. The X2 control (X2-C) plane interface may be defined between two neighbor base stations. The transport network layer may be built on Stream Control Transmission Protocol (SCTP) on top of IP. The application layer signaling protocol may be referred to as X2 Application Protocol (X2-AP). A single SCTP association per X2-C interface instance may be used with one pair of stream identifiers for X2-C common procedures. A few pairs of stream identifiers may be used for X2-C dedicated procedures. The list of functions on the interface between the base stations may include the following: mobility support, load management, inter-cell interference coordination, and data exchange.
In order to establish an association between two base stations, a first base station sends a first message to a second base station to initiate an association between two endpoints. The first initiation message may comprise multiple parameters such as the following: initiate tag, advertised receiver window credit, number of outbound streams, number of inbound streams, an initial transmit sequence number, a combination thereof, and/or the like.
According to some of the various aspects of the embodiments, an initiation tag may be a 32-bits unsigned integer. The receiver of the initiation message (the responding end) may record the value of the initiate tag parameter. This value may be placed into the verification tag field of SCTP packet(s) that the receiver of the initiation message transmits within this association. In an example, the initiation tag may be allowed to have any value except zero.
According to some of the various aspects of the embodiments, the advertised receiver window credit may be a 32-bit unsigned integer. The sender of the initiation message may reserve a dedicated buffer space defined by the number of bytes in association with this window. During the life of the association, the size of this buffer space may be maintained (e.g., dedicated buffers taken away from this association); however, an endpoint may change the value of window credit it sends in a packet. The number of outbound streams may be represented by a 16-bit unsigned integer which may define the number of outbound streams the sender of the initiation message wishes to create during an association. The number of inbound streams may be represented by a 16-bit unsigned integer and may define the maximum number of streams the sender of the initiation message may allow the peer end to create during the association between the two base stations. The two endpoints may use the minimum of requested and offered parameters rather than negotiation of the actual number of streams. The initial transmit sequence number may be represented by a 32-bit unsigned integer and may define the initial transmit sequence number that the sender may use. This field, for example, may be set to the value of the initiate tag field.
According to some of the various aspects of embodiments, the second base station may transmit an initiation acknowledgement message to acknowledge the initiation of an SCTP association with the first base station. The parameter part of the initiation acknowledgement message may be formatted similarly to the initiation message. The parameter part of the initiation acknowledgement message may use two extra variable parameters: the state cookie and the unrecognized parameter. The initiate tag may be represented by a 32-bit unsigned integer. The receiver of the initiation acknowledgement message may record the value of the initiate tag parameter. This value may be placed into the verification tag field of SCTP packet(s) that the initiation acknowledgement message receiver transmits within this association. According to some of the various aspects of the embodiments, the advertised receiver window credit may represented by a 32-bit unsigned integer. This value may represent the dedicated buffer space, in terms of the number of bytes, that the sender of the initiation acknowledgement message has reserved in association with this window. During the life of the association, the size of this buffer space may be maintained (e.g. not be lessened or taken away from this association).
According to some of the various aspects of embodiments, the number of outbound streams may be represented by, for example, a 16-bit unsigned integer. The number of outbound streams may define the number of outbound streams the sender of the initiation acknowledgement message wishes to create during this association between base stations. The number of inbound streams may, for example, be a represented in terms of a 16-bit unsigned integer. It may define the maximum number of streams the sender of this initiation acknowledgement message allows the peer end to create. The two endpoints may use the minimum of requested and offered parameters, rather than negotiation of the actual number of streams. An initial transmit sequence number (TSN) may be a represented by a 32-bit unsigned integer. The initial transmit sequence number (TSN) may define the initial TSN that the initiation acknowledgement message sender may use. This field may be set to the value of the initiate tag field. The state cookie parameter may contain the needed state and parameter information required for the sender of this initiation acknowledgement message to create the association between base stations. The state cookie parameter may also include a message authentication code (MAC). An unrecognized parameter may be returned to the originator of the initiation message when the initiation message contains an unrecognized parameter that has a value that indicates it should be reported to the sender. This parameter value field may contain unrecognized parameters copied from the initiation message complete with, for example, parameter type, length, and value fields.
According to some of the various aspects of embodiments, when sending an initiation acknowledgement message as a response to an initiation message, the sender of the initiation acknowledgement message may create a state cookie and send it in the state cookie parameter of the initiation acknowledgement message. Inside this state cookie, the sender may include a message authentication code, a timestamp on when the state cookie is created, and the lifespan of the state cookie, along with the information needed for it to establish the association. The following steps may be taken to generate the state cookie: 1) Create an association transmission control block (TCB) using information from both the received initiation message and the outgoing initiation acknowledgement messages, 2) In the TCB, set the creation time to the current time of day, and the lifespan to the protocol parameter to a pre-determined number, 3) From the TCB, identify and collect the minimal subset of information needed to re-create the TCB, and generate a MAC using this subset of information and a secret key, and/or 4) Generate the state cookie by combining this subset of information and the resultant MAC.
After sending the initiation acknowledgement with the state cookie parameter, the sender may delete the TCB and any other local resource related to the new association so as to prevent resource attacks. The hashing method used to generate the MAC may be strictly a private matter for the receiver of the initiation message. The MAC may be used to prevent denial-of-service attacks. The secret key may be random. The secret key may be changed reasonably frequently, and the timestamp in the state cookie may be used to determine which key should be used to verify the MAC. An implementation of an embodiment may make the cookie as small as possible to ensure interoperability.
According to some of the various aspects of embodiments, the first base station may transmit at least one third message to the second base station. One of the at least one third message may be a cookie-echo message. The cookie-echo message may be used during the initialization of an association. It may be sent by the initiator of an association to its peer to complete the initialization process. This cookie-echo message may precede any transport packet message sent within the association and may be bundled with one or more data transport packet in the same packet. This message may contain the cookie received in the state cookie parameter from the previous initiation acknowledgement message. The type and flags of the cookie-echo may be different than the cookie parameter. Some embodiments may make the cookie as small as possible to ensure interoperability. A cookie echo may not contain a state cookie parameter, but instead, the data within the state cookie's parameter value becomes the data within the cookie echo's chunk value. This may allow an implementation of an embodiment to change the first two bytes of the state cookie parameter to become a cookie echo message. The first base station may transmit at least one application protocol message in the cookie echo message. Alternatively, an implementation option may be for the base station to transmit application protocol messages after the association is complete and to not include application protocol messages in a cookie-echo message.
The application protocol message may receive a cookie-ack message from the second base station. This application protocol message may be used during the initialization of an association. The application protocol message may also be used to acknowledge the receipt of a cookie-echo message. This application protocol message may precede other data sent within the association and may be bundled with one or more data packets in the same SCTP packet. The second base station may transmit at least one application protocol message in a cookie ack message. Alternatively, according to one embodiment, the base station may choose to transmit application protocol messages after the association is complete rather than include application protocol messages in a cookie-ack message.
After the initiation and initiation acknowledgement messages are transmitted, the first base station or the second base station may transmit an X2 setup message to cause an X2 application interface to be configured. The first base station or the second base station may wait until the association is complete to set up an X2 application interface. Either the first base station or second base station could start the setup of the X2 application. The purpose of an X2 setup procedure could be to exchange application level configuration data needed for two base stations to interoperate correctly over the X2 interface. This procedure may erase any existing application level configuration data in the two nodes and replace the application level configuration data by the one received by the X2 setup message. This procedure may also reset the X2 interface.
A first base station or second base station may initiate the X2 setup procedure by sending the X2 set up request message to a candidate base station. The candidate base station may reply with the X2 set up response message. The initiating base station may transfer the list of served cells. The candidate base station may reply with the complete list of its served cells.
FIG. 11 depicts an example flow chart for a base station employing beamforming as per an aspect of an embodiment of the present invention. According to some of the various aspects of embodiments, a base station may receive a first application protocol message, for example an X2 set up request message, as shown in 1101. The X2 set up request message may include the following information about the originator of the message: a global base station identifier, the information about the served cells, and a group identifier list. The group identifier list identifies the pools to which the base station belongs to. Each row in this list may include the public land mobile network (PLMN) ID and mobility management entity (MME) group identifier. The information about each served cell may include information about the served cell configurations and may also include the list of neighbor cells of the served cell including, for example: the cell global identifier of the neighbor cell, the physical cell identifier of the neighbor cell, and the frequency of the cells. The served cell information may include at least one of the following parameters: a physical cell ID, a global cell identifier, a tracking area code, at least one broadcast PLMN, frequency division duplexing (FDD) information (uplink and downlink frequencies, uplink and downlink transmission bandwidth), time division duplexing (TDD) information (transmission frequency, subframe assignment, special subframe information, special subframe pattern, cyclic prefix for downlink and uplink), number of antenna ports, physical random access channel (PRACH) configuration, multicast broadcast single frequency network (MBSFN) subframe info (radio frame allocation period, radio frame allocation offset, subframe allocation), and a CSG identifier. The X2 set up request or some other subsequent application protocol messages may also include a beamforming codebook comprising a plurality of beamforming codewords. Each of the plurality of beamforming codewords may be identifiable by an index. In an example implementation, the codebook may be transmitted in the form of a look up table including rows, columns, and/or the like. For example, each row may include the index and the codeword corresponding to that index. A codeword in a row may be identifiable by the index in the same row. In another example implementation, the codewords in a codebook may be ordered according to their index. Identifying a codeword by an index may be performed implicitly according to codeword order or codeword ranking in a list. The indexes may or may not be included in the message transmitted on the X2 interface. The index(es) may be employed in other messages in order to refer to the codeword. In an example implementation, rows could be implemented as columns by just transposing the implemented matrix or array. It is also possible to implement a matrix, rows and/or columns of variables using various techniques such as using pointers, object oriented programming structures or other various programming structures configured to store a list of interrelated variables.
The index may be presented by a number of bits in a transmitted message between base stations or between a base station and a wireless device. The number of bits may be greater than or equal to log2(N), N being the number of the plurality of beamforming codewords. The number of bits may be less than the number of bits in a corresponding beamforming codeword.
The first base station may receive at least one fourth message from a second base station. The at least one fourth message may comprise a second beamforming codebook comprising a second plurality of codewords. The base station may receive from a second base station, at least one second application protocol message comprising at least one index in the plurality of indexes as shown in 1102. The at least one index may identify a subset of the plurality of beamforming codewords. The first base station may transmit signals to a plurality of wireless devices employing a first plurality of beamforming codewords from a first beamforming codebook as shown in 1103. The first plurality of codewords may be selected, at least in part, employing the subset of the second plurality of beamforming codewords.
The base station may transmit signals (data and/or control packets) to a plurality of wireless devices using a first plurality of beamforming codewords from a first beamforming codebook. The first plurality of codewords may be selected based, at least in part, on information received from the other base station. The information may comprise indexes of codewords from the second beamforming codebook. In some of the various embodiments, a first base station may transmit X2 messages to cause configuration of a table of codewords in a second base station. The first base station may then refer to the index(es) in the same and/or subsequent messages to refer to a codeword(s). The process may reduce the number of bits transmitted on the X2 and/or air interfaces. In an example embodiment, a codebook may include ten codewords. (N=10). Each codeword may be a variable presented by fifty bits. The indexes may be presented by k number of bits, k being a number greater than or equal to four and less than fifty.
According to some of the various aspects of embodiments, a first base station may transmit a first message to initiate an association between the first base station and a second base station in the plurality of base stations. The first message may comprise a first initiation tag. The first base station may receive a second message from the second base station. The second message may comprise a second verification tag, a second initiation tag, and a first state parameter. The second verification tag may be equal to the first initiation tag. A first state parameter may comprise at least one parameter related to operational information of the association and a message authentication code generated as a function of a private key.
The first base station may transmit at least one third message to the second base station. The at least one third message may comprise a first verification tag, a parameter, and a first application protocol message. The first verification tag may be equal to the second initiation tag. The parameter may comprise the first state parameter. The first application protocol message may comprise a unique identifier of the first base station, at least one MME group identifier, and a first beamforming codebook. The first beamforming codebook may comprise a first plurality of beamforming codewords. Each of the first plurality of beamforming codewords may be identifiable by an index. The index may be presented by a number of bits. The number of bits may be greater than or equal to log2(N), wherein N is the number of the plurality of beamforming codewords. The number of bits may be smaller than the number of bits in a corresponding beamforming codeword. The first base station may receive at least one fourth message from the second base station comprising an acknowledgement for the receipt of the parameter. The second base station may transmit signals to a plurality of wireless devices using a second plurality of beamforming codewords from a second beamforming codebook. The first plurality of codewords may be selected based, at least in part, on information received from the first base station. The information may comprise indices of codewords from said first beamforming codebook.
FIG. 10 depicts an example flow chart for a base station employing beamforming as per an aspect of an embodiment of the present invention. According to some of the various aspects of embodiments, a first base station may transmit a first message to initiate an association between the first base station and a second base station in the plurality of base stations as shown in 1001. The first message may comprise a first initiation tag. The first base station may receive a second message from the second base station as shown in 1002. The second message may comprise: a second verification tag, a second initiation tag, a first state parameter, a combination thereof, and/or the like. The second verification tag may be equal to the first initiation tag. The first state parameter may comprise at least one parameter related to operational information of the association, and a message authentication code generated as a function of a private key. The first base station may transmit at least one third message to the second base station as shown in 1003. The at least one third message may comprise a first verification tag and a parameter. The first verification tag may be equal to the second initiation tag. The parameter may comprise the first state parameter.
The first base station may receive at least one fourth message from the second base station as shown in 1004. The at least one fourth message may comprise an acknowledgement for the receipt of the parameter, and a second application protocol message. The second application protocol message may comprise a unique identifier of the second base station, at least one MME group identifier, and a second beamforming codebook. The second beamforming codebook may comprise a second plurality of beamforming codewords. Each of the second plurality of beamforming codewords may be identifiable by an index. The index may be presented by a number of bits. The number of bits may be greater than or equal to log2(N), wherein N is the number of the plurality of beamforming codewords. The number of bits may be smaller than the number of bits in a corresponding beamforming codeword. The first base station may transmit signals to a plurality of wireless devices using a first plurality of beamforming codewords from a first beamforming codebook as shown in 1006. The first plurality of codewords may be selected based, at least in part, on information received from the second base station as shown in 1005. The information may comprise indices of codewords from the second beamforming codebook.
According to some of the various aspects of embodiments, the first initiation tag value may be selected in the first base station using a pseudo-random process. The second initiation tag value may be selected in the second base station using a pseudo-random process. The first message may further comprise a first base station transport address and a second base station transport address. The first message may further comprise a first advertised receiver window credit representing a dedicated buffer space that the first base station reserves for a window of received packets from the second base station. The first message may further comprise a first initial transmission sequence number that the first base station uses for transmission of data segments. The first initial transmission sequence number may be equal to the first initiation tag.
The second message may further comprise the first base station transport address and the second base station transport address. The second message may further comprise a second advertised receiver window credit representing a dedicated buffer space that the second base station reserves for a window of received packets from the first base station. The second message may further comprise a second initial transmission sequence number that the second base station uses for transmission of data chunks. The second initial transmission sequence number may be equal to the second initiation tag. The at least one third message may further comprise the first base station transport address and the second base station transport address. The at least one third message may further comprise a transmit sequence number, a stream identifier, a stream sequence number.
The at least one fourth message may further comprise a transmit sequence number, a stream identifier, and a stream sequence number. The second base station may place the first initiation tag in the verification tag of every transport layer packet that it transmits to the first base station within the association. The first base station may place the second initiation tag in the verification tag of every SCTP packet that it transmits to the second base station within the association. The association may be an SCTP association. The at least one fourth message may further comprise the first base station transport address and the second base station transport address. The second application protocol message may be an X2-Application Protocol Setup Request message. The second application protocol message may be an X2-Application Protocol Setup Response message. The at least one third message may further comprise an X2-Application Protocol Setup Request message. The at least one third message may further comprise an X2-Application Protocol Setup Response message.
The first state parameter may further comprise a timestamp on when the first state parameter is created. The first state parameter may further comprise the lifespan of the first state parameter. The message authentication code may further be a function of at least one parameter related to operational information of the association. The at least one third message may further comprise a first application protocol message. The first application protocol message may comprise a unique identifier of the first base station, at least one MME group identifier, a beamforming codebook comprising a first plurality of beamforming codewords. Each of the first plurality of beamforming codewords may be identifiable by an index. The index may be presented by the first number of bits.
The first verification tag and the second verification tag in the association may not change during the life time of the association. A new verification tag value may be used each time the first base station or the second base station tears down and then reestablishes an association with the same node. The operational information may comprise at least one of the following: a parameter in the first message, a parameter in the second message, a state of the association, a configuration parameter of the first base station, a configuration parameter of the second base station, a combination thereof, and/or the like. The first message and the second message may further comprise a checksum for packet validation. The first base station transport address and the second base station transport address may comprise an IP address and a port address.
The first message may further comprise a first number of outbound streams that the first base station intend to create and a first maximum number of inbound streams that the first base station allows the second base station to create. The second message may further comprise a second number of outbound streams that the second base station intend to create, a second maximum number of inbound streams the second base station allows the first base station to create. The second number of outbound streams is smaller than or equal to the first maximum number of inbound streams. The first base station may further select a number equal or lower than the minimum of the first number of outbound streams and the second maximum number of inbound streams as the number of outbound streams for the first base station.
The first base station may use the plurality of indexes in communications with the second base station. Each of the plurality of indexes may refer to a locally unique beamforming codeword. The second application protocol message may further comprise the number of antennas of each cell in the second base station. The second application protocol message may further comprise a cell ID for each cell in the second base station. The second application protocol message may further comprise the frequency of each downlink and uplink carrier of the second base station. The first beamforming codebook and second beamforming codebook may be the same. The first plurality of beamforming codewords may be selected to reduce inter-cell interference from the second base station. The first base station may use information received from at least one wireless device to compute the inter-cell interference from the second base station.
The first plurality of beamforming codewords may be selected to reduce inter-cell interference to the second base station. The first base station may use information received from at least one wireless device to compute the inter-cell interference to the second base station. The first beamforming codebook or the second beamforming codebook may be defined for a maximum number of transmit antennas and comprises a set of original codewords. Each original codeword may have a number of rows or columns equal to the maximum number of transmit antennas. Codewords for a smaller number of transmit antennas may be constructed by using a subset of rows or columns of the original codewords. The first beamforming codebook or the second beamforming codebook may be defined for a maximum number of layers and may comprise a set of codewords. Each codeword may have a number rows or columns equal to the maximum number of layers. Codewords for a smaller number of layers may be constructed by using a subset of columns or rows of the original codewords.
The first base station may exchange similar messages with a plurality of second base stations. The first plurality of beamforming codewords may be selected to reduce inter-cell interference from a subset of the plurality of second base stations. The first base station may use information received from at least one wireless device to compute the inter-cell interference from the subset of the plurality of second base stations. The first plurality of beamforming codewords may be selected to reduce inter-cell interference to a subset of the plurality of second base stations. The first base station may use information received from at least one wireless device to compute the inter-cell interference to the subset of the plurality of second base stations. The second base station may transmit the same second application protocol message to a plurality of first base stations. The plurality of first base stations may select their respective first plurality of beamforming codewords based on information received from the second base station in the second application protocol message.
FIG. 6 is a block diagram of a limited feedback system according to an aspect of an embodiment of the present invention. Wireless device 604 measures information about a wireless channel (either perfect or imperfect) between the base station 602 transmitter and the wireless device 604 receiver. This receiver channel information may be fed into a quantizer/encoder 605 that returns a small number of feedback bits to be sent as overhead on reverse link 606. The base station 602 transmitter may use the received feedback bits to adapt the transmitted signal to forward channel 607.
The limited feedback may be implemented in multiple antenna wireless systems. Limited feedback may be a viable and beneficial option for a system that adapts a spatial degree-of-freedom. The degrees of freedom with multiple antenna systems may be exploited to offer rate and diversity benefits as well as beamforming and interference canceling capabilities. While the diversity gain may be extracted without the need of channel state information at the transmitter (CSIT) feedback (e.g., space time codes), CSIT may play a role for beamforming and interference mitigation at the transmitter.
A single-user narrowband multiple antenna system may be represented by an expression of the form y[k]=H[k]x[k]+n[k] at the k-th channel. Assuming Mt transmit antennas and Mr receive antennas, y[k] may be an Mr-dimensional receive vector, H[k] may be an Mr×Mt channel response matrix, x[k] may be an Mt-dimensional transmit vector, and n[k] may be Mr-dimensional noise. The noise may be assumed to have independent and identically distributed (iid) normalized entries distributed according to CN(0, 1). As in the single antenna case, the scenario where the receiver has access to H[k] may be considered. Given this, there may be a variety of ways to design x[k] if the transmitter is given access to some quantized information relating to H[k]. Again, this analysis may depend on the time evolution model of the channel. If we use notation of block-fading, the tth channel block may satisfy H[tKch]=H[tKch+1]= . . . =H[(t+1)Kch−1]=H(t) where Kch is the length of the fading block.
When the transmitter and receiver both know the channel, the ergodic capacity may be




  R
  =
  
    
      
        E
        H
      
      ⁡
      
        [
        
          
            log
            2
            
            
              
                
                  Q
                  ⁢
                  
                    
                  
                  :
                  
                    
                  
                  ⁢
                  
                    
                      tr
                      ⁡
                      
                        (
                        Q
                        )
                      
                    
                    ⁢
                    
                      
                    
                    ≤
                    1
                  
                
                ,
                
                  
                
                ⁢
                
                  
                    Q
                    *
                  
                  ⁢
                  
                    
                  
                  =
                  
                    
                  
                  ⁢
                  Q
                
                ,
                
                  
                
                ⁢
                
                  Q
                  ⁢
                  
                    
                  
                  ≥
                  
                    
                  
                  ⁢
                  0
                
              
              
                
                  
                
                ⁢
                max
              
          
          ⁢
          
            det
            ⁡
            
              (
              
                I
                ⁢
                
                  
                
                +
                
                  
                
                ⁢
                
                  ρ
                  ⁢
                  
                    
                  
                  ⁢
                  
                    HQH
                    *
                  
                
              
              )
            
          
        
        ]
      
    
    .
  




Here, Q may be the covariance of the transmitted signal for each individual instantaneous channel realization. The covariance of the transmitted signal may incorporate both the spatial power allocation as well as unitary precoding. Spatial power allocation may be needed for cases when the number of transmit antennas is greater than the number of receive antennas. From an encoding point of view, x[k]=√{square root over (ρ)}(Q[k])1/2s[k], k=0, . . . , Kb1−1 where Q[k] may solve the optimization (based on channel feedback)





  
    Q
    ⁡
    
      [
      k
      ]
    
  
  =
  
    
      log
      2
      
      
        
          
            Q
            ⁢
            
              
            
            :
            
              
            
            ⁢
            
              
                tr
                ⁡
                
                  (
                  Q
                  )
                
              
              ⁢
              
                
              
              ≤
              
                
              
              ⁢
              1
            
          
          ,
          
            
          
          ⁢
          
            
              Q
              *
            
            ⁢
            
              
            
            =
            
              
            
            ⁢
            Q
          
          ,
          
            
          
          ⁢
          
            Q
            ⁢
            
              
            
            ≥
            
              
            
            ⁢
            0
          
        
        
          
            
          
          ⁢
          
            arg
            ⁢
            
              
            
            ⁢
            max
          
        
    
    ⁢
    
      
        det
        ⁡
        
          (
          
            I
            ⁢
            
              
            
            +
            
              
            
            ⁢
            
              ρ
              ⁢
              
                
              
              ⁢
              
                HQH
                *
              
            
          
          )
        
      
      .
    
  




and s[k] may the k-th channel use of an open-loop codeword.

For a limited rate feedback approach, the general idea may be to use the fact that the receiver knows H[k] through procedures such as training. Using this channel knowledge, the receiver may quantize some function of H[k] using vector quantization (VQ) techniques.
Naturally, the aspects of the channel that the transmitter cares about are those that allow the design of the covariance for the tth channel block. Using this line of reasoning, the receiver may determine a rate maximizing covariance and feed this back to the transmitter. Employing a codebook of possible covariance matrices Q={Q1, . . . , Q2B} that may be known to the transmitter and receiver, the receiver may search for the codebook index.
The covariance codebook may be either fixed or randomly generated (using a seed known to both the transmitter and receiver). Designing a fixed covariance codebook to maximize the average rate may be a challenging problem that depends on the stationary distribution of the channel. Vector quantization approaches may efficiently generate codebooks that achieve a large rate. Random approaches for a covariance design may also be possible. The rate loss with B bits of feedback may decrease with the number of feedback bits.
While the codebook approach may be used for a block-to-block independently fading channel, temporal correlation between channel realizations may improve quantization. Feedback approaches based on tracking the channel using gradient analysis may also be possible. The use of switched codebooks, where the codebook is changed or adapted over time may be implemented. Orientation and radius of a localized codebook cap changing over time may be implemented with beamforming codebooks which have adaptive localized codebook caps. Models may be used to implement feedback compression. For example, Markov chain compression may be employed to analyze the effects of feedback delay and channel time evolution.
In an example embodiment, beamforming may be characterized by the use of a rank one covariance matrix. Using a rank one Q matrix may be useful whenever the single-user channel is itself rank one. This may occur when the user terminal is equipped with a single antenna. In this situation, the availability of CSIT may be needed.
In beamforming, the single-user multiple input multiple output (MIMO) expression in y[k]=H[k]x[k]+n[k] may be restricted so that x[k]=√{square root over (ρ)}f[k]s[k] where f[k] is a channel dependent vector referred to as a beamforming vector and s[k] is a single-dimensional complex symbol chosen independently of instantaneous channel conditions. In the multiple input single output (MISO) case, there may be a single receive antenna. In this case, y[k] may be reformulated as y[k]=√{square root over (ρ)}hT[k]f[k]s[k]+n[k]. h[k] may be a column vector. With this configuration, the receive SNR at channel use k (averaged with respect to the transmitted signal and noise) may be given by SNR[k]=ρ|hT[k]f[k]|2.
For MIMO beamforming and combining, a receive-side combining vector z[k] (sometimes, but not necessarily, unit norm) may be used so that after processing y[k]=√{square root over (ρ)}z*[k]H[k]f[k]s[k]+z*[k]n[k]. Conjugate transpose is denoted by *. Various forms of combiners may be implemented.
The receiver may be allowed to send some feedback to assist the transmitter's configuration. An example form of this feedback may select a transmit antenna(s). In this scenario, the transmit beamforming vector may be restricted such that one entry is non-zero. With this kind of set-up in a MISO system, a solution may be to send data on the antenna that substantially maximizes the receiver SNR, meaning data (and power) may be sent on antenna




  
    
      m
      opt
    
    ⁡
    
      [
      k
      ]
    
  
  =
  
    
      
      
        
          h
          m
        
        ⁡
        
          [
          k
          ]
        
      
      
    
    
    2
    
      
        1
        ≤
        m
        ≤
        
          M
          t
        
      
      argmax
  




hm[k] may denote the mth antenna entry of the channel vector h[k]. Using this approach, the selected antenna may be configured at the receiver and may be sent back to the transmitter using [log2(Mt)] bits. Error rates with antenna selection for spatially uncorrelated set-ups may be considered.
Antenna selection may be limited in terms of its benefits to the overall capacity as it may not allow for the full beamforming gain. If there exists a feedback link, more complicated forms of channel dependent feedback may improve performance. The channel vector may be quantized for a MISO system into a set of normalized column vectors={h1, . . . , h2B}. Because the system may have a single receive antenna, the channel vector h[k] may be quantized over this set by selecting the codebook vector hnopt [k] using a phase invariant distortion such that




  
    
      n
      opt
    
    ⁡
    
      [
      k
      ]
    
  
  =
  
    
      
        
        
          
            h
            n
            *
          
          ⁢
          
            h
            ⁡
            
              [
              k
              ]
            
          
        
        
      
      
      2
      
        
          1
          ≤
          m
          ≤
          
            2
            B
          
        
        argmax
    
    .
  




The transmitter can then pick a beamforming vector that solves




  
    f
    ⁡
    
      [
      k
      ]
    
  
  =
  
    
      
        log
        2
        
        
          
            
              f
              :
              
                
                
                  
                  f
                  
                
                
              
            
            =
            1
          
          argmax
      
      ⁢
      
        (
        
          1
          +
          
            ρ
            ⁢
            
              
                
                
                  
                    h
                    
                      
                        n
                        opt
                      
                      ⁡
                      
                        [
                        k
                        ]
                      
                    
                    T
                  
                  ⁢
                  f
                
                
              
              2
            
          
        
        )
      
    
    =
    
      
        
          
            (
            
              h
              
                
                  n
                  opt
                
                ⁡
                
                  [
                  k
                  ]
                
              
              T
            
            )
          
          *
        
        
          
            
            
              h
              
                
                  n
                  opt
                
                ⁡
                
                  [
                  k
                  ]
                
              
              T
            
            
          
          2
        
      
      .
    
  




Equal gain approaches that attempt to co-phase the signals received from various antennas may be implemented. This concept may be implemented to quantize the phases of each hm[k], m=1, . . . , Mt, using uniform phase quantization on a unit circle.
The codebooks may allow the receiver to directly configure the beamforming vector and send this vector back to the transmitter. In one example embodiment, beamforming vector quantization may be considered rather than channel quantization. f[k] may be restricted to lie in a set or codebook F={f1, . . . , f2B}. The receiver may use its channel knowledge to pick the required vector from the codebook.
This kind of approach is demonstrated in FIG. 7 using the interpretation that beamforming may be rank one precoding. FIG. 7 is a block diagram of a limited feedback linear precoded MIMO system according to an embodiment. The receiver 702 in wireless device 701 may use a channel estimate to pick the optimal transmitter-side linear precoder from a codebook known to the transmitter and receiver. The wireless device 701 may use quantization 703 to calculate feedback. For a codebook of size 2B, the B-bit binary label of the chosen precoder may be sent over feedback channel 705 to base station 704. Note that the rate and/or SNR may also be known as side information to facilitate communication and may be fed back to the base station.
The receiver now, in some sense, may control how the signal is adapted to the channel. Phase quantization codebooks may be implemented for MIMO beamforming and combining. This may jointly quantize the phases across transmit antennas and implement diversity. While equal gain approaches may be an option, a general design framework may be useful. Determining favorable configuration parameters for a spatially uncorrelated Rayleigh fading channel may be a goal for outage minimizing, SNR maximizing, rate maximizing, a combination thereof, and/or the like.
For a channel, the maximum diversity order may be when the rank of the matrix [f1, . . . , f2B] constructed from the set of beamforming vectors has a rank of Mt. Receiver SNR degradation may be analyzed. Insights from the problem of Grassmannian line packing designs may be used to assist analysis. Closed-form integral expressions may be obtained by modeling the feedback problem as one of a correlated antenna selection. An alternative approach to Grassmannian codebooks may be to construct the codebooks using vector quantization (VQ) techniques. A distortion function (usually related to rate loss or SNR loss) may be formulated and the distortion function may be iteratively minimized to obtain local solutions. Using multiple iterations with different (possibly randomized) initial settings may yield an approximately optimal codebook. Because of the unit vector constraints on the beamforming vector set, this may be a problem in spherical vector quantization. VQ designs also may have useful analytical properties when the codebook size (or quantizer resolution) increases. High resolution analysis and codebook design may be leveraged to give new insight into codebook behavior.
Grassmannian and VQ limited feedback designs may assume codebooks that are fixed and do not vary as the channel changes. Another implementation may be to randomly generate the codebook at each block (with the randomly generated codebook known to both the transmitter and receiver). This sort of codebook design technique may be based on random vector quantization (RVQ). The idea here is to generate the 2B codebook vectors independently and all identically distributed according to the stationary distribution of the quantized beamforming vector.
For example, a MISO system with channel information at the transmitter and receiver may use a beamforming vector




  
    f
    ⁡
    
      [
      k
      ]
    
  
  =
  
    
      
        (
        
          
            h
            T
          
          ⁡
          
            [
            k
            ]
          
        
        )
      
      *
    
    
      
        
        
          h
          ⁡
          
            [
            k
            ]
          
        
        
      
      2
    
  




(known as maximum ratio transmission). When the channel distribution is a spatially uncorrelated Rayleigh, the vector may follow a uniform distribution on the unit sphere. Thus, the RVQ codebook may be constructed by taking 2B independently and uniformly generated points on the unit sphere. These kinds of codebooks may have very asymptotic properties as the number of antennas scales to infinity. Closed-form analysis may also be possible when the channel follows a spatially uncorrelated Rayleigh model. Several other codebook designs may be considered as alternatives to Grassmannian line packings, vector quantization, and RVQ. Equiangular frame based codebooks may be implemented based on the observation that (in the real case) codebooks from equiangular frames maximize the mutual information between the true beamforming vector and the quantized precoding vector. In certain cases Grassmannian line packing may lead to equiangular frames. Codebooks may be generalized based on the Fourier concept for limited feedback. The key idea is to recognize that the non-coherent MIMO space-time code design problem may also be the problem of finding packings on the Grassmann manifold. DFT codebooks may introduce additional structure in Fourier codebooks, further simplifying their design. Adaptive modulation may be combined with beamforming codebooks. Techniques for dealing with time variation of the channel during the feedback phase may be considered in an example implementation.

Fourth generation (4G) and beyond cellular standards may use MIMO-OFDM technology. Generalizing the input-output relation to MIMO for the vth subcarrier yields {tilde over (y)}v[{tilde over (k)}]={tilde over (H)}v[{tilde over (k)}]{tilde over (X)}v[{tilde over (k)}]+ñv[{tilde over (k)}] for OFDM channel use {tilde over (k)}. In the formula, {tilde over (y)}v[{tilde over (k)}] is an Mr-dimensional received signal for subcarrier v, {tilde over (H)}v[{tilde over (k)}] is an Mr×Mt channel realization (in the frequency domain) for the vth subcarrier, {tilde over (X)}v[{tilde over (k)}] is an Mt-dimensional transmitted signal for subcarrier v, and ñv[{tilde over (k)}] is Mr-dimensional normalized additive noise with iid CN(0, 1) entries.
MIMO channel adaptation may be done on a per-subcarrier basis. For example, a linear precoded spatial multiplexing system may set {tilde over (x)}v[{tilde over (k)}]=√{square root over (ρv)}{tilde over (F)}v[{tilde over (k)}]{tilde over (s)}v[{tilde over (k)}], where ρv is the SNR on subcarrier v, {tilde over (F)}v[{tilde over (k)}] is the Mt×M precoder on subcarrier v, and {tilde over (s)}v[{tilde over (k)}] is an M-dimensional transmitted spatial multiplexing vector. The precoder {tilde over (F)}v[{tilde over (k)}] may be adapted directly to {tilde over (H)}v[{tilde over (k)}].
MIMO-OFDM feedback systems may send feedback for pilot subcarriers v0, . . . , vKpilot-1 where Kpilot is a function of the number of pilots. For example, a precoding system using limited feedback with a common codebook for all pilots of F={F1, . . . , F2B} may send B bits for each pilot subcarrier for a total feedback load of BKpilot bits per channel block. Given this information, the precoders for non-pilots may be determined.
It may be possible to weight and sum together the feedback beamforming vectors from the two nearest pilots. The weights may be configured to maximize the receive SNR of the subcarrier halfway between the two pilots. A transform domain quantization approach may be implemented. The precoder interpolation problem may be formulated as a weighted least squares problem. The weights may correspond to the distance (in number of subcarriers) from different pilot precoders. The technique may be generalized to larger rank precoding interpolation techniques. A geodesic approach (i.e., linear interpolation on the Grassmann manifold) may also be used. Other interpolation ideas may also be available. Instead of trying to interpolate, another implementation may be based on, where a common precoder is chosen for several contiguous subcarriers. The clustering implementation may yield an antenna subset selection criterion when the cluster is extended to cover all or most subcarriers (i.e., only one pilot) and the precoding codebook has the




   
  
    (
    
      
        
          
            M
            t
          
        
      
      
        
          M
        
      
    
    )
  




antenna subset matrices.

The transmitter may recreate precoders employing precoder feedback sent on a subset of the subcarriers in conjunction with the channel correlation in the frequency domain. Clustering may also be implemented. In this case, the transmitter and receiver may divide (or cluster) the subcarriers in a predetermined way. All narrowband channels within the cluster may use the same feedback and use the same precoding matrix. The receiver may then design the feedback to choose a precoder that is mutually beneficial (e.g., with respect to sum rate).
Alternative techniques besides clustering and interpolation may also be implemented. For example, Trellis techniques for precoder interpolation may be used. Successive beamforming taking into account correlation in time and frequency may be implemented. A reduced CSI feedback approach for MIMO-OFDM may take into account that highly correlated channels may have highly correlated feedback values; thus, the number of bits may be effectively reduced by taking the actual correlation between binary sequences into account.
The multi-mode precoding implementations may also be quantized. In this scenario, both the matrix and the rank of the matrix may evolve over the OFDM symbol subcarriers. An interpolation framework for multi-mode precoding may be used.
3GPP LTE and LTE-advanced may employ a MIMO-OFDMA physical layer on the downlink and may support various single and multiple user MIMO modes of operation. Several different single-user codebook based limited feedback techniques may be used. Codebook based precoding on the downlink may be implemented, for example, with two, four, or eight transmit antennas. In the case of two antennas, a beamforming codebook with six vectors (including two corresponding to antenna selection) and a precoding codebook with three matrices may be implemented. For four antennas, a four bit codebook may be used for beamforming and precoding with two, three, and four streams. The precoding codebooks may be built by taking specific subsets of Householder reflection matrices generated from the beamforming entries. The subsets may be chosen to have a nested structure. For example, for a given generating vector, the two stream codebook may include the original vector and an additional vector. The three stream codebook may add an additional vector and so on. This may facilitate multi-mode rank adaptation where the base station may change the number of active streams, and may offer some computational savings.
3GPP codebooks may use a finite alphabet structure, which may make them easy to store and may simplify computation.
A second base station may transmit to a first base station a load indication message. The load indication message may be transmitted periodically or regularly as needed. The first base station may request a load indication message and indicate the transmission period and duration. The load indication message may comprise at least one of the following fields: an uplink interference overload, an uplink high interference indication, a transmit power parameter, and an almost blank subframe. The transmitter of a load indication message may request a similar or different load indication message from the base station receiving the message. The invoke indication in the message may indicate which type of information a base station requesting the other base station may send back. A base station MAC and physical layer may schedule and transmit downlink packets based, at least in part, on the received load indication messages.
An uplink interference overload for the uplink carrier may indicate the status of uplink interference. The uplink carrier may comprise a plurality of uplink resource blocks. The uplink interference overload may indicate a status of uplink interference for each uplink resource block in the plurality of uplink resource blocks. The status of uplink interference may be represented as one of a plurality of predefined interference level indicators. The uplink high interference indication may comprise a list of a target carrier identifier and a status of uplink target interference. The status of uplink target interference may indicate the status of uplink target interference for each resource block in the plurality of uplink resource blocks. The status of uplink target interference may indicate a high interference sensitivity and/or low interference sensitivity.
The transmit power parameter for the downlink carrier may comprise a status of transmit power for each downlink resource block, the number of antenna ports for the downlink carrier, PDCCH information, beamforming information, a combination thereof, and/or the like. The status of transmit power for downlink resource block(s) may indicate a status of transmit power for downlink resource block(s) in the plurality of downlink resource blocks. The status of transmit power for a downlink resource block may be one of a first value when transmit power of the downlink resource block is below a pre-defined threshold and a second value when transmit power of the downlink resource block is below or above the pre-defined threshold. The PDCCH interference impact may be presented by predicted number of occupied PDCCH OFDM Symbols. The PDCCH interference impact may be one of 0, 1, 2, 3, and 4, wherein value 0 indicates no prediction is available for load information transmission;
FIG. 12 depicts an example flow chart for a base station employing beamforming as per an aspect of an embodiment of the present invention. According to some of the various aspects of embodiments, a first base station may receive from a second base station at least one application protocol message as shown in 1201. The at least one application protocol message may be received, for example from an X2 interface or an S1 interface. The first base station and the second base station may be configured to communicate with a plurality of wireless devices employing a downlink carrier. The downlink carrier may comprise a plurality of resource blocks. The at least one application protocol message may comprise a downlink beamforming information element for at least one resource block in the downlink carrier. In another implementation at least one application protocol message may comprise a plurality of downlink or uplink beamforming information elements, each one for one or more resource blocks.
The downlink beamforming information element may indicate a second beamforming codeword employed by the second base station for the at least one resource block. In another example implementation the downlink beamforming information element may indicate a plurality of second beamforming codeword employed by the second base station for the at least one resource block. The codewords are employed for beamforming. In an example implementation, the second beamforming codeword may have a number of rows or columns equal to a number of antenna ports employed by the second base station for beamforming on the downlink carrier. As described previously, an array/matrix may be stored using multiple programming code structures. The number of rows or columns refers to the information in a codeword which can be stored using various methods. In another example embodiment second beamforming codeword may have a number of rows or columns less than a number of antenna ports employed by the second base station for beamforming on the downlink carrier
The second beamforming codeword may be included in (be a part of) a second beamforming codebook. In an example implementation, the second beamforming codeword may be referenced by an index. Instead of transmitting an entire codeword, the index for the codeword may be transmitted. Correspondence between the beamforming codeword and the index may be defined by an application protocol message. The application protocol message may be received prior to the at least one application protocol message reception.
The first base station may select for the at least one resource block, a first beamforming codeword from a first beamforming codebook as shown in 1202. The selection may be based, at least in part, on the downlink beamforming information element received from the second base station. The first base station may transmit, employing the first beamforming codeword, signals on a subset of the at least one resource block to a wireless device as shown in 1203. The signals may carry control or data packets for one or more wireless devices.
According to some of the various aspects of embodiments, a first base station may receive from a second base station at least one application protocol message. The first base station and the second base station may be configured to communicate with a plurality of wireless devices employing a downlink carrier. The downlink carrier may comprise a plurality of resource blocks. The at least one application protocol message may comprise a downlink beamforming information element for at least one resource block in the downlink carrier. The downlink beamforming information element may indicate a second beamforming codeword employed by the second base station for the at least one resource block. The second beamforming codeword may be referenced by an index. The second beamforming codeword may be included in a second beamforming codebook.
The first base station may select for the at least one resource block, a first beamforming codeword from a first beamforming codebook. The selection may be based, at least in part, on the downlink beamforming information element received from the second base station. The first base station may transmit, employing the first beamforming codeword, signals on a subset of the at least one resource block to a wireless device. The signals may carry control or data packets for one or more wireless devices.
The at least one application protocol message may be transmitted periodically. At least one application protocol message may further comprise a load indication message. At least one application protocol may comprise a transmit power parameter for the downlink carrier. The transmit power parameter may comprise a status of transmit power for each downlink resource block in the plurality of downlink resource blocks. The status of transmit power for a downlink resource block may be one of a first value when transmit power of the downlink resource block is below a pre-defined threshold and a second value when transmit power of the downlink resource block is below or above the pre-defined threshold.
The subset of the plurality of downlink resource blocks may be selected based, at least in part, on the transmit power parameter and the downlink beamforming information. The first beamforming codebook and second beamforming codebook may be the same. The first plurality of beamforming codewords may be selected to reduce inter-cell interference from the second base station. The first base station may use information received from at least one wireless device to compute the inter-cell interference from the second base station. The first base station may use a zero-forcing criterion to select a subset of the first plurality of beamforming codewords. The first base station may use a minimum mean squared error criterion to select a subset of the first plurality of beamforming codewords. The first plurality of beamforming codewords may be selected to reduce inter-cell interference to the second base station.
The first base station may use information received from at least one wireless device to compute the inter-cell interference to the second base station. The first base station may use a maximum signal to leakage ratio criterion to select a subset of the plurality of beamforming codewords. One skilled in the art may use other criterions. The first beamforming codebook or the second beamforming codebook may be defined for a maximum number of transmit antennas and may comprise a set of original codewords. Each original codeword may have a number rows equal to the maximum number of transmit antennas. Codewords for a smaller number of transmit antennas may be constructed by using a subset of rows of the original codewords. The first beamforming codebook or the second beamforming codebook may be defined for a maximum number of layers and may comprise a set of original codewords. Each original codeword may have a number columns (or rows) equal to the maximum number of layers. Codewords for a smaller number of layers may be constructed by using a subset of columns (or rows) of the original codewords. The first base station may receive similar application protocol messages from a plurality of second base stations.
The first plurality of beamforming codewords may be selected to reduce inter-cell interference from a subset of the plurality of second base stations. The first base station may use information received from at least one wireless device to compute the inter-cell interference from the subset of the plurality of second base stations. The first base station may use a zero-forcing criterion to select a subset of the first plurality of beamforming codewords. The first base station may use a minimum mean squared error criterion to select a subset of the first plurality of beamforming codewords. The first plurality of beamforming codewords may be selected to reduce inter-cell interference to a subset of the plurality of second base stations. The first base station may use information received from at least one wireless device to compute the inter-cell interference to the subset of the plurality of second base stations. The first base station may use a maximum signal to leakage criterion to select a subset of the first plurality of beamforming codewords. The second base station may transmit the same second application protocol message to a plurality of first base stations. The plurality of first base stations may select their respective first plurality of beamforming codewords based on information received from the second base station in the second application protocol message.
FIG. 8 is a block diagram for beamforming information exchange according to at least one embodiment. In an example embodiment, a first base station 802 may comprise a communication interface, a processor, and a memory storing instructions that, when executed, cause the first base station to cause certain functions. The first base station 802 may receive at least one application protocol message from a second base station 801 using interface 807. The second base station 801 may comprise a downlink carrier comprising a plurality of downlink resource blocks. The at least one application protocol message may comprise downlink beamforming information for the downlink carrier. The downlink beamforming information may indicate, for each downlink resource block in the plurality of downlink resource blocks, a beamforming codeword employed for the downlink resource block. The first base station 802 may obtain channel state input information for a wireless device based on, at least in part, processing the downlink beamforming information. The first base station may transmit the channel state input information 804 to the wireless device 803 in a message, for example, a measurement information message. The wireless device 803 may use the channel state input information to compute a precoding matrix indicator. The first base station 802 may receive a channel state feedback 805 from the wireless device. The channel state feedback may comprise the precoding matrix indicator. Each of the beamforming codewords may be represented by an index and may belong to a first beamforming codebook. The correspondence between a beamforming codeword and an index may be defined by an application protocol message received prior to the at least one application protocol message reception. The base station may transmit packets to the wireless device 803 using beamforming transmission 806.
FIG. 9 depicts message flow between a base station 902 and a wireless device 901, according to at least one embodiment. The first base station 902 may receive at least one application protocol message from a second base station in the plurality of base stations. The second base station may comprise a downlink carrier comprising a plurality of downlink resource blocks. The at least one application protocol message may comprise the number of antenna ports for the downlink carrier and downlink beamforming information for the downlink carrier. The downlink beamforming information may indicate, for each downlink resource block in the plurality of downlink resource blocks, a beamforming codeword employed for the downlink resource block. Each of the beamforming codewords may depend on the number of antenna ports and may be represented by an index and belonging to a first beamforming codebook. The first base station may select a subset of the downlink beamforming information for wireless device 901. The first base station 902 may transmit a control message 903 to wireless device 901. The control message may comprise an identifier of the second base station, and the subset of the downlink beamforming information. First base station 902 may receive a channel state feedback 904 from the wireless device 901. The channel state feedback may comprise a precoding matrix indicator. The wireless device 901 may measure reference signals received from the second base station and process the measured reference signals based, at least in part, on the subset to compute the precoding matrix indicator. The first base station 902 may transmit packets to the wireless device 901 using beamforming transmission 905.
FIG. 13 depicts an example flow chart for a base station employing beamforming as per an aspect of an embodiment of the present invention. A first base station may receive from a second base station at least one application protocol message as shown in 1301. The first base station and the second base station may be configured to communicate with a plurality of wireless devices employing a downlink carrier. The downlink carrier may comprise a plurality of resource blocks. The at least one application protocol message may comprise a downlink beamforming information element for at least one resource block in the downlink carrier. The downlink beamforming information element may indicate a second beamforming codeword employed by the second base station for the at least one resource block. The second beamforming codeword may be included in (be a part of) a second beamforming codebook. The first base station may compute a channel state input information element for a wireless device based on, at least in part, processing the downlink beamforming information element as shown in 1302. The first base station may transmit the channel state input information element to the wireless device for computing a precoding matrix indicator as shown in 1303. The first base station may receive a channel state feedback from the wireless device. The channel state feedback may comprise the precoding matrix indicator as shown in 1304.
According to some of the various aspects of embodiments, a wireless device may receive channel state input information from a first base station. The wireless device may compute a precoding matrix indicator using the channel state input information. The wireless device may transmit a channel state information comprising the precoding matrix indicator to the first base station.
According to some of the various aspects of embodiments, the wireless device may receive channel state input information from a first base station in the plurality of base stations. The first base station may obtain the channel state input information based, at least in part, on processing downlink beamforming information received from a second base station in the plurality of base stations. The first base station may compute a precoding matrix indicator using the channel state input information. The first base station may transmit a channel state information comprising the precoding matrix indicator to the first base station.
According to some of the various aspects of embodiments, the wireless device may receive channel state input information from a first base station in the plurality of base stations. The first base station may obtain the channel state input information based, at least in part, on processing downlink beamforming information received from a second base station in the plurality of base stations. The second base station may comprise a downlink carrier comprising a plurality of downlink resource blocks. The downlink beamforming information may indicate a beamforming codeword employed by the second base station for each downlink resource block in the plurality of downlink resource blocks. The wireless device may compute a precoding matrix indicator using the channel state input information. The wireless device may transmit channel state information comprising the precoding matrix indicator to the first base station.
According to some of the various aspects of embodiments, the wireless device may receive a control message from a first base station in the plurality of base stations. The control message may comprise an identifier of a second base station in the plurality of base stations, and channel state input information. The channel state input information may be a subset of downlink beamforming information received from the second base station. The second base station may comprise a downlink carrier comprising a plurality of downlink resource blocks. The downlink beamforming information may indicate a beamforming codeword employed by the second base station for each downlink resource block in the plurality of downlink resource blocks. The wireless device may measure reference signals received from the second base station. The wireless device may process the measured reference signals based, at least in part, on the channel state input information to compute a precoding matrix indicator. The wireless device may transmit channel state information comprising the precoding matrix indicator to the first base station. The processing of the measured reference signals may comprise multiplying measured reference signal(s) by at least one codeword in the channel state input information.
According to some of the various aspects of embodiments, a wireless device may receive a control message from a first base station. The control message may comprise an identifier of a second base station in the plurality of base stations. The control message may comprise a channel state input information element. The channel state input information element may be based, at least in part, on a downlink beamforming information element received by the first base station from a second base station. The downlink beamforming information element may indicate a beamforming codeword employed by the second base station for at least one downlink resource block. The wireless device may measure reference signals received from the second base station. The wireless device may process the measured reference signals based, at least in part, on the channel state input information element to compute a precoding matrix indicator. The wireless device may transmit a channel state information comprising the precoding matrix indicator to the first base station. The processing of the measured reference signals may comprise multiplying measured reference signal by at least one codeword in the channel state input information.
According to some of the various aspects of embodiments, a wireless device may receive from a first base station a channel state input information element. The channel state input information element may be based, at least in part, on a downlink beamforming information element received by the first base station from a second base station. The downlink beamforming information element may indicate a beamforming codeword employed by the second base station for at least one downlink resource block. The wireless device may compute a precoding matrix indicator employing the channel state input information element. The wireless device may transmit channel state information comprising the precoding matrix indicator to the first base station.
The channel state input information may be a codebook subset restriction bitmap parameter. The wireless device may select a precoding matrix indicator from a subset of the precoding codebook indicated by the codebook subset restriction bitmap parameter. The processing of the measured reference signals may include vector quantization and encoding. The processing of the measured reference signals may comprise multiplying measured reference signal(s) by at least one codeword in the downlink beamforming information. The wireless device may further measure the data signals received from the base station. The precoding matrix indicator may be calculated to reduce downlink inter-cell interference. The channel state feedback may further comprise a channel quality indicator. The channel state feedback may further comprise a rank indicator. The precoding matrix indicator may be selected from a plurality of predetermined precoding matrix indicators.
The first base station may transmit a plurality of packets to the wireless device. The plurality of packets may be transmitted using the precoding matrix indicator. The precoding matrix indicator may be computed for a sub-band of the downlink carrier. The first base station may further transmit at least one control message to the wireless device. The at least one control message may configure measurement parameters of the wireless device. The first base station may demodulate, despread, and decode the received channel state feedback. The channel state feedback may be modulated using SC-FDMA. The subset of the downlink beamforming information may comprise a plurality of beamforming codewords employed for a subset of the plurality of downlink resource blocks. The wireless device may use a zero-forcing criterion to compute the precoding matrix indicator. The wireless device may use a minimum mean squared error criterion to compute the precoding matrix indicator.
The subset of downlink beamforming information may comprise beam information from the second base station that causes substantial inter-cell interference to the wireless device. The first beamforming codebook may be defined for a maximum number of transmit antennas and may comprise a set of original codewords. Each original codeword may have a number of rows (or columns) equal to the maximum number of transmit antennas. Codewords for a smaller number of transmit antennas may be constructed by using a subset of rows (or columns) of the original codewords. The first beamforming codebook may be defined for a maximum number of layers and comprise a set of original codewords. Each original codeword may have a number of columns (or rows) equal to the maximum number of layers. Codewords for a smaller number of layers may be constructed by using a subset of columns of the original codewords. The smaller number of layers may be equal to a rank indicated by the wireless device through a rank indicators field in the channel state feedback.
According to some of the various aspects of embodiments, the packets in the downlink may be transmitted via downlink physical channels. The carrying packets in the uplink may be transmitted via uplink physical channels. The baseband data representing a downlink physical channel may be defined in terms of at least one of the following actions: scrambling of coded bits in codewords to be transmitted on a physical channel; modulation of scrambled bits to generate complex-valued modulation symbols; mapping of the complex-valued modulation symbols onto one or several transmission layers; precoding of the complex-valued modulation symbols on layer(s) for transmission on the antenna port(s); mapping of complex-valued modulation symbols for antenna port(s) to resource elements; and/or generation of complex-valued time-domain OFDM signal(s) for antenna port(s).
Codeword, transmitted on the physical channel in one subframe, may be scrambled prior to modulation, resulting in a block of scrambled bits. The scrambling sequence generator may be initialized at the start of subframe(s). Codeword(s) may be modulated using QPSK, 16QAM, 64QAM, 128QAM, and/or the like resulting in a block of complex-valued modulation symbols. The complex-valued modulation symbols for codewords to be transmitted may be mapped onto one or several layers. For transmission on a single antenna port, a single layer may be used. For spatial multiplexing, the number of layers may be less than or equal to the number of antenna port(s) used for transmission of the physical channel. The case of a single codeword mapped to multiple layers may be applicable when the number of cell-specific reference signals is four or when the number of UE-specific reference signals is two or larger. For transmit diversity, there may be one codeword and the number of layers may be equal to the number of antenna port(s) used for transmission of the physical channel.
The precoder may receive a block of vectors from the layer mapping and generate a block of vectors to be mapped onto resources on the antenna port(s). Precoding for spatial multiplexing using antenna port(s) with cell-specific reference signals may be used in combination with layer mapping for spatial multiplexing. Spatial multiplexing may support two or four antenna ports and the set of antenna ports used may be {0,1} or {0, 1, 2, 3}. Precoding for transmit diversity may be used in combination with layer mapping for transmit diversity. The precoding operation for transmit diversity may be defined for two and four antenna ports. Precoding for spatial multiplexing using antenna ports with UE-specific reference signals may also, for example, be used in combination with layer mapping for spatial multiplexing. Spatial multiplexing using antenna ports with UE-specific reference signals may support up to eight antenna ports. Reference signals may be pre-defined signals that may be used by the receiver for decoding the received physical signal, estimating the channel state, and/or other purposes.
For antenna port(s) used for transmission of the physical channel, the block of complex-valued symbols may be mapped in sequence to resource elements. In resource blocks in which UE-specific reference signals are not transmitted the PDSCH may be transmitted on the same set of antenna ports as the physical broadcast channel in the downlink (PBCH). In resource blocks in which UE-specific reference signals are transmitted, the PDSCH may be transmitted, for example, on antenna port(s) {5, {7}, {8}, or {7, 8, . . . , v+6}, where v is the number of layers used for transmission of the PDSCH.
Common reference signal(s) may be transmitted in physical antenna port(s). Common reference signal(s) may be cell-specific reference signal(s) (RS) used for demodulation and/or measurement purposes. Channel estimation accuracy using common reference signal(s) may be reasonable for demodulation (high RS density). Common reference signal(s) may be defined for LTE technologies, LTE-advanced technologies, and/or the like. Demodulation reference signal(s) may be transmitted in virtual antenna port(s) (i.e., layer or stream). Channel estimation accuracy using demodulation reference signal(s) may be reasonable within allocated time/frequency resources. Demodulation reference signal(s) may be defined for LTE-advanced technology and may not be applicable to LTE technology. Measurement reference signal(s), may also called CSI (channel state information) reference signal(s), may be transmitted in physical antenna port(s) or virtualized antenna port(s). Measurement reference signal(s) may be Cell-specific RS used for measurement purposes. Channel estimation accuracy may be relatively lower than demodulation RS. CSI reference signal(s) may be defined for LTE-advanced technology and may not be applicable to LTE technology.
In at least one of the various embodiments, uplink physical channel(s) may correspond to a set of resource elements carrying information originating from higher layers. The following example uplink physical channel(s) may be defined for uplink: a) Physical Uplink Shared Channel (PUSCH), b) Physical Uplink Control Channel (PUCCH), c) Physical Random Access Channel (PRACH), and/or the like. Uplink physical signal(s) may be used by the physical layer and may not carry information originating from higher layers. For example, reference signal(s) may be considered as uplink physical signal(s). Transmitted signal(s) in slot(s) may be described by one or several resource grids including, for example, subcarriers and SC-FDMA or OFDMA symbols. Antenna port(s) may be defined such that the channel over which symbol(s) on antenna port(s) may be conveyed and/or inferred from the channel over which other symbol(s) on the same antenna port(s) is/are conveyed. There may be one resource grid per antenna port. The antenna port(s) used for transmission of physical channel(s) or signal(s) may depend on the number of antenna port(s) configured for the physical channel(s) or signal(s).
Element(s) in a resource grid may be called a resource element. A physical resource block may be defined as N consecutive SC-FDMA symbols in the time domain and/or M consecutive subcarriers in the frequency domain, wherein M and N may be pre-defined integer values. Physical resource block(s) in uplink(s) may comprise of M×N resource elements. For example, a physical resource block may correspond to one slot in the time domain and 180 kHz in the frequency domain. Baseband signal(s) representing the physical uplink shared channel may be defined in terms of: a) scrambling, b) modulation of scrambled bits to generate complex-valued symbols, c) mapping of complex-valued modulation symbols onto one or several transmission layers, d) transform precoding to generate complex-valued symbols, e) precoding of complex-valued symbols, f) mapping of precoded complex-valued symbols to resource elements, g) generation of complex-valued time-domain SC-FDMA signal(s) for antenna port(s), and/or the like.
For codeword(s), block(s) of bits may be scrambled with UE-specific scrambling sequence(s) prior to modulation, resulting in block(s) of scrambled bits. Complex-valued modulation symbols for codeword(s) to be transmitted may be mapped onto one, two, or more layers. For spatial multiplexing, layer mapping(s) may be performed according to pre-defined formula (s). The number of layers may be less than or equal to the number of antenna port(s) used for transmission of physical uplink shared channel(s). The example of a single codeword mapped to multiple layers may be applicable when the number of antenna port(s) used for PUSCH is, for example, four. For layer(s), the block of complex-valued symbols may be divided into multiple sets, each corresponding to one SC-FDMA symbol. Transform precoding may be applied. For antenna port(s) used for transmission of the PUSCH in a subframe, block(s) of complex-valued symbols may be multiplied with an amplitude scaling factor in order to conform to a required transmit power, and mapped in sequence to physical resource block(s) on antenna port(s) and assigned for transmission of PUSCH.
According to some of the various embodiments, data may arrive to the coding unit in the form of two transport blocks every transmission time interval (TTI) per UL cell. The following coding actions may be identified for transport block(s) of an uplink carrier: a) Add CRC to the transport block, b) Code block segmentation and code block CRC attachment, c) Channel coding of data and control information, d) Rate matching, e) Code block concatenation. f) Multiplexing of data and control information, g) Channel interleaver, h) Error detection may be provided on UL-SCH (uplink shared channel) transport block(s) through a Cyclic Redundancy Check (CRC), and/or the like. Transport block(s) may be used to calculate CRC parity bits. Code block(s) may be delivered to channel coding block(s). Code block(s) may be individually turbo encoded. Turbo coded block(s) may be delivered to rate matching block(s).
Physical uplink control channel(s) (PUCCH) may carry uplink control information. Simultaneous transmission of PUCCH and PUSCH from the same UE may be supported if enabled by higher layers. For a type 2 frame structure, the PUCCH may not be transmitted in the UpPTS field. PUCCH may use one resource block in each of the two slots in a subframe. Resources allocated to UE and PUCCH configuration(s) may be transmitted via control messages. PUCCH may comprise: a) positive and negative acknowledgements for data packets transmitted at least one downlink carrier, b) channel state information for at least one downlink carrier, c) scheduling request, and/or the like.
According to some of the various aspects of embodiments, cell search may be the procedure by which a wireless device may acquire time and frequency synchronization with a cell and may detect the physical layer Cell ID of that cell (transmitter). An example embodiment for synchronization signal and cell search is presented below. A cell search may support a scalable overall transmission bandwidth corresponding to 6 resource blocks and upwards. Primary and secondary synchronization signals may be transmitted in the downlink and may facilitate cell search. For example, 504 unique physical-layer cell identities may be defined using synchronization signals. The physical-layer cell identities may be grouped into 168 unique physical-layer cell-identity groups, group(s) containing three unique identities. The grouping may be such that physical-layer cell identit(ies) is part of a physical-layer cell-identity group. A physical-layer cell identity may be defined by a number in the range of 0 to 167, representing the physical-layer cell-identity group, and a number in the range of 0 to 2, representing the physical-layer identity within the physical-layer cell-identity group. The synchronization signal may include a primary synchronization signal and a secondary synchronization signal.
According to some of the various aspects of embodiments, the sequence used for a primary synchronization signal may be generated from a frequency-domain Zadoff-Chu sequence according to a pre-defined formula. A Zadoff-Chu root sequence index may also be predefined in a specification. The mapping of the sequence to resource elements may depend on a frame structure. The wireless device may not assume that the primary synchronization signal is transmitted on the same antenna port as any of the downlink reference signals. The wireless device may not assume that any transmission instance of the primary synchronization signal is transmitted on the same antenna port, or ports, used for any other transmission instance of the primary synchronization signal. The sequence may be mapped to the resource elements according to a predefined formula.
For FDD frame structure, a primary synchronization signal may be mapped to the last OFDM symbol in slots 0 and 10. For TDD frame structure, the primary synchronization signal may be mapped to the third OFDM symbol in subframes 1 and 6. Some of the resource elements allocated to primary or secondary synchronization signals may be reserved and not used for transmission of the primary synchronization signal.
According to some of the various aspects of embodiments, the sequence used for a secondary synchronization signal may be an interleaved concatenation of two length-31 binary sequences. The concatenated sequence may be scrambled with a scrambling sequence given by a primary synchronization signal. The combination of two length-31 sequences defining the secondary synchronization signal may differ between subframe 0 and subframe 5 according to predefined formula (s). The mapping of the sequence to resource elements may depend on the frame structure. In a subframe for FDD frame structure and in a half-frame for TDD frame structure, the same antenna port as for the primary synchronization signal may be used for the secondary synchronization signal. The sequence may be mapped to resource elements according to a predefined formula.
Example embodiments for the physical channels configuration will now be presented. Other examples may also be possible. A physical broadcast channel may be scrambled with a cell-specific sequence prior to modulation, resulting in a block of scrambled bits. PBCH may be modulated using QPSK, and/or the like. The block of complex-valued symbols for antenna port(s) may be transmitted during consecutive radio frames, for example, four consecutive radio frames. In some embodiments the PBCH data may arrive to the coding unit in the form of a one transport block every transmission time interval (TTI) of 40 ms. The following coding actions may be identified. Add CRC to the transport block, channel coding, and rate matching. Error detection may be provided on PBCH transport blocks through a Cyclic Redundancy Check (CRC). The transport block may be used to calculate the CRC parity bits. The parity bits may be computed and attached to the BCH (broadcast channel) transport block. After the attachment, the CRC bits may be scrambled according to the transmitter transmit antenna configuration. Information bits may be delivered to the channel coding block and they may be tail biting convolutionally encoded. A tail biting convolutionally coded block may be delivered to the rate matching block. The coded block may be rate matched before transmission.
A master information block may be transmitted in PBCH and may include system information transmitted on broadcast channel(s). The master information block may include downlink bandwidth, system frame number(s), and PHICH (physical hybrid-ARQ indicator channel) configuration. Downlink bandwidth may be the transmission bandwidth configuration, in terms of resource blocks in a downlink, for example 6 may correspond to 6 resource blocks, 15 may correspond to 15 resource blocks and so on. System frame number(s) may define the N (for example N=8) most significant bits of the system frame number. The M (for example M=2) least significant bits of the SFN may be acquired implicitly in the PBCH decoding. For example, timing of a 40 ms PBCH TTI may indicate 2 least significant bits (within 40 ms PBCH TTI, the first radio frame: 00, the second radio frame: 01, the third radio frame: 10, the last radio frame: 11). One value may apply for other carriers in the same sector of a base station (the associated functionality is common (e.g. not performed independently for each cell). PHICH configuration(s) may include PHICH duration, which may be normal (e.g. one symbol duration) or extended (e.g. 3 symbol duration).
Physical control format indicator channel(s) (PCFICH) may carry information about the number of OFDM symbols used for transmission of PDCCHs (physical downlink control channel) in a subframe. The set of OFDM symbols possible to use for PDCCH in a subframe may depend on many parameters including, for example, downlink carrier bandwidth, in terms of downlink resource blocks. PCFICH transmitted in one subframe may be scrambled with cell-specific sequence(s) prior to modulation, resulting in a block of scrambled bits. A scrambling sequence generator(s) may be initialized at the start of subframe(s). Block (s) of scrambled bits may be modulated using QPSK. Block(s) of modulation symbols may be mapped to at least one layer and precoded resulting in a block of vectors representing the signal for at least one antenna port. Instances of PCFICH control channel(s) may indicate one of several (e.g. 3) possible values after being decoded. The range of possible values of instance(s) of the first control channel may depend on the first carrier bandwidth.
According to some of the various embodiments, physical downlink control channel(s) may carry scheduling assignments and other control information. The number of resource-elements not assigned to PCFICH or PHICH may be assigned to PDCCH. PDCCH may support multiple formats. Multiple PDCCH packets may be transmitted in a subframe. PDCCH may be coded by tail biting convolutionally encoder before transmission. PDCCH bits may be scrambled with a cell-specific sequence prior to modulation, resulting in block(s) of scrambled bits. Scrambling sequence generator(s) may be initialized at the start of subframe(s). Block(s) of scrambled bits may be modulated using QPSK. Block(s) of modulation symbols may be mapped to at least one layer and precoded resulting in a block of vectors representing the signal for at least one antenna port. PDCCH may be transmitted on the same set of antenna ports as the PBCH, wherein PBCH is a physical broadcast channel broadcasting at least one basic system information field.
According to some of the various embodiments, scheduling control packet(s) may be transmitted for packet(s) or group(s) of packets transmitted in downlink shared channel(s). Scheduling control packet(s) may include information about subcarriers used for packet transmission(s). PDCCH may also provide power control commands for uplink channels. OFDM subcarriers that are allocated for transmission of PDCCH may occupy the bandwidth of downlink carrier(s). PDCCH channel(s) may carry a plurality of downlink control packets in subframe(s). PDCCH may be transmitted on downlink carrier(s) starting from the first OFDM symbol of subframe(s), and may occupy up to multiple symbol duration(s) (e.g. 3 or 4).
According to some of the various embodiments, PHICH may carry the hybrid-ARQ (automatic repeat request) ACK/NACK. Multiple PHICHs mapped to the same set of resource elements may constitute a PHICH group, where PHICHs within the same PHICH group may be separated through different orthogonal sequences. PHICH resource(s) may be identified by the index pair (group, sequence), where group(s) may be the PHICH group number(s) and sequence(s) may be the orthogonal sequence index within the group(s). For frame structure type 1, the number of PHICH groups may depend on parameters from higher layers (RRC). For frame structure type 2, the number of PHICH groups may vary between downlink subframes according to a pre-defined arrangement. Block(s) of bits transmitted on one PHICH in one subframe may be modulated using BPSK or QPSK, resulting in a block(s) of complex-valued modulation symbols. Block(s) of modulation symbols may be symbol-wise multiplied with an orthogonal sequence and scrambled, resulting in a sequence of modulation symbols
Other arrangements for PCFICH, PHICH, PDCCH, and/or PDSCH may be supported. The configurations presented here are for example purposes. In another example, resources PCFICH, PHICH, and/or PDCCH radio resources may be transmitted in radio resources including a subset of subcarriers and pre-defined time duration in each or some of the subframes. In an example, PUSCH resource(s) may start from the first symbol. In another example embodiment, radio resource configuration(s) for PUSCH, PUCCH, and/or PRACH (physical random access channel) may use a different configuration. For example, channels may be time multiplexed, or time/frequency multiplexed when mapped to uplink radio resources.
According to some of the various aspects of embodiments, the physical layer random access preamble may comprise a cyclic prefix of length Tcp and a sequence part of length Tseq. The parameter values may be pre-defined and depend on the frame structure and a random access configuration. In an example embodiment, Tcp may be 0.1 msec, and Tseq may be 0.9 msec. Higher layers may control the preamble format. The transmission of a random access preamble, if triggered by the MAC layer, may be restricted to certain time and frequency resources. The start of a random access preamble may be aligned with the start of the corresponding uplink subframe at a wireless device.
According to an example embodiment, random access preambles may be generated from Zadoff-Chu sequences with a zero correlation zone, generated from one or several root Zadoff-Chu sequences. In another example embodiment, the preambles may also be generated using other random sequences such as Gold sequences. The network may configure the set of preamble sequences a wireless device may be allowed to use. According to some of the various aspects of embodiments, there may be a multitude of preambles (e.g. 64) available in cell(s). From the physical layer perspective, the physical layer random access procedure may include the transmission of random access preamble(s) and random access response(s). Remaining message(s) may be scheduled for transmission by a higher layer on the shared data channel and may not be considered part of the physical layer random access procedure. For example, a random access channel may occupy 6 resource blocks in a subframe or set of consecutive subframes reserved for random access preamble transmissions.
According to some of the various embodiments, the following actions may be followed for a physical random access procedure: 1) layer 1 procedure may be triggered upon request of a preamble transmission by higher layers; 2) a preamble index, a target preamble received power, a corresponding RA-RNTI (random access-radio network temporary identifier) and/or a PRACH resource may be indicated by higher layers as part of a request; 3) a preamble transmission power P_PRACH may be determined; 4) a preamble sequence may be selected from the preamble sequence set using the preamble index; 5) a single preamble may be transmitted using selected preamble sequence(s) with transmission power P_PRACH on the indicated PRACH resource; 6) detection of a PDCCH with the indicated RAR may be attempted during a window controlled by higher layers; and/or the like. If detected, the corresponding downlink shared channel transport block may be passed to higher layers. The higher layers may parse transport block(s) and/or indicate an uplink grant to the physical layer(s).
According to some of the various aspects of embodiments, a random access procedure may be initiated by a physical downlink control channel (PDCCH) order and/or by the MAC sublayer in a wireless device. If a wireless device receives a PDCCH transmission consistent with a PDCCH order masked with its radio identifier, the wireless device may initiate a random access procedure. Preamble transmission(s) on physical random access channel(s) (PRACH) may be supported on a first uplink carrier and reception of a PDCCH order may be supported on a first downlink carrier.
Before a wireless device initiates transmission of a random access preamble, it may access one or many of the following types of information: a) available set(s) of PRACH resources for the transmission of a random access preamble; b) group(s) of random access preambles and set(s) of available random access preambles in group(s); c) random access response window size(s); d) power-ramping factor(s); e) maximum number(s) of preamble transmission(s); 0 initial preamble power; g) preamble format based offset(s); h) contention resolution timer(s); and/or the like. These parameters may be updated from upper layers or may be received from the base station before random access procedure(s) may be initiated.
According to some of the various aspects of embodiments, a wireless device may select a random access preamble using available information. The preamble may be signaled by a base station or the preamble may be randomly selected by the wireless device. The wireless device may determine the next available subframe containing PRACH permitted by restrictions given by the base station and the physical layer timing requirements for TDD or FDD. Subframe timing and the timing of transmitting the random access preamble may be determined based, at least in part, on synchronization signals received from the base station and/or the information received from the base station. The wireless device may proceed to the transmission of the random access preamble when it has determined the timing. The random access preamble may be transmitted on a second plurality of subcarriers on the first uplink carrier.
According to some of the various aspects of embodiments, once a random access preamble is transmitted, a wireless device may monitor the PDCCH of a first downlink carrier for random access response(s), in a random access response window. There may be a pre-known identifier in PDCCH that indentifies a random access response. The wireless device may stop monitoring for random access response(s) after successful reception of a random access response containing random access preamble identifiers that matches the transmitted random access preamble and/or a random access response address to a wireless device identifier. A base station random access response may include a time alignment command. The wireless device may process the received time alignment command and may adjust its uplink transmission timing according the time alignment value in the command. For example, in a random access response, a time alignment command may be coded using 11 bits, where an amount of the time alignment may be based on the value in the command. In an example embodiment, when an uplink transmission is required, the base station may provide the wireless device a grant for uplink transmission.
If no random access response is received within the random access response window, and/or if none of the received random access responses contains a random access preamble identifier corresponding to the transmitted random access preamble, the random access response reception may be considered unsuccessful and the wireless device may, based on the backoff parameter in the wireless device, select a random backoff time and delay the subsequent random access transmission by the backoff time, and may retransmit another random access preamble.
According to some of the various aspects of embodiments, a wireless device may transmit packets on an uplink carrier. Uplink packet transmission timing may be calculated in the wireless device using the timing of synchronization signal(s) received in a downlink. Upon reception of a timing alignment command by the wireless device, the wireless device may adjust its uplink transmission timing. The timing alignment command may indicate the change of the uplink timing relative to the current uplink timing. The uplink transmission timing for an uplink carrier may be determined using time alignment commands and/or downlink reference signals.
According to some of the various aspects of embodiments, a time alignment command may indicate timing adjustment for transmission of signals on uplink carriers. For example, a time alignment command may use 6 bits. Adjustment of the uplink timing by a positive or a negative amount indicates advancing or delaying the uplink transmission timing by a given amount respectively.
For a timing alignment command received on subframe n, the corresponding adjustment of the timing may be applied with some delay, for example, it may be applied from the beginning of subframe n+6. When the wireless device's uplink transmissions in subframe n and subframe n+1 are overlapped due to the timing adjustment, the wireless device may transmit complete subframe n and may not transmit the overlapped part of subframe n+1.
According to some of the various aspects of embodiments, a wireless device may include a configurable timer (timeAlignmentTimer) that may be used to control how long the wireless device is considered uplink time aligned. When a timing alignment command MAC control element is received, the wireless device may apply the timing alignment command and start or restart timeAlignmentTimer. The wireless device may not perform any uplink transmission except the random access preamble transmission when timeAlignmentTimer is not running or when it exceeds its limit. The time alignment command may substantially align frame and subframe reception timing of a first uplink carrier and at least one additional uplink carrier. According to some of the various aspects of embodiments, the time alignment command value range employed during a random access process may be substantially larger than the time alignment command value range during active data transmission. In an example embodiment, uplink transmission timing may be maintained on a per time alignment group (TAG) basis. Carrier(s) may be grouped in TAGs, and TAG(s) may have their own downlink timing reference, time alignment timer, and/or time alignment commands. Group(s) may have their own random access process. Time alignment commands may be directed to a time alignment group. The TAG, including the primary cell may be called a primary TAG (pTAG) and the TAG not including the primary cell may be called a secondary TAG (sTAG).
According to some of the various aspects of embodiments, control message(s) or control packet(s) may be scheduled for transmission in a physical downlink shared channel (PDSCH) and/or physical uplink shared channel PUSCH. PDSCH and PUSCH may carry control and data message(s)/packet(s). Control message(s) and/or packet(s) may be processed before transmission. For example, the control message(s) and/or packet(s) may be fragmented or multiplexed before transmission. A control message in an upper layer may be processed as a data packet in the MAC or physical layer. For example, system information block(s) as well as data traffic may be scheduled for transmission in PDSCH. Data packet(s) may be encrypted packets.
According to some of the various aspects of embodiments, data packet(s) may be encrypted before transmission to secure packet(s) from unwanted receiver(s). Desired recipient(s) may be able to decrypt the packet(s). A first plurality of data packet(s) and/or a second plurality of data packet(s) may be encrypted using an encryption key and at least one parameter that may change substantially rapidly over time. The encryption mechanism may provide a transmission that may not be easily eavesdropped by unwanted receivers. The encryption mechanism may include additional parameter(s) in an encryption module that changes substantially rapidly in time to enhance the security mechanism. Example varying parameter(s) may comprise various types of system counter(s), such as system frame number. Substantially rapidly may for example imply changing on a per subframe, frame, or group of subframes basis. Encryption may be provided by a PDCP layer between the transmitter and receiver, and/or may be provided by the application layer. Additional overhead added to packet(s) by lower layers such as RLC, MAC, and/or Physical layer may not be encrypted before transmission. In the receiver, the plurality of encrypted data packet(s) may be decrypted using a first decryption key and at least one first parameter. The plurality of data packet(s) may be decrypted using an additional parameter that changes substantially rapidly over time.
According to some of the various aspects of embodiments, a wireless device may be preconfigured with one or more carriers. When the wireless device is configured with more than one carrier, the base station and/or wireless device may activate and/or deactivate the configured carriers. One of the carriers (the primary carrier) may always be activated. Other carriers may be deactivated by default and/or may be activated by a base station when needed. A base station may activate and deactivate carriers by sending an activation/deactivation MAC control element. Furthermore, the UE may maintain a carrier deactivation timer per configured carrier and deactivate the associated carrier upon its expiry. The same initial timer value may apply to instance(s) of the carrier deactivation timer. The initial value of the timer may be configured by a network. The configured carriers (unless the primary carrier) may be initially deactivated upon addition and after a handover.
According to some of the various aspects of embodiments, if a wireless device receives an activation/deactivation MAC control element activating the carrier, the wireless device may activate the carrier, and/or may apply normal carrier operation including: sounding reference signal transmissions on the carrier, CQI (channel quality indicator)/PMI(precoding matrix indicator)/RI(ranking indicator) reporting for the carrier, PDCCH monitoring on the carrier, PDCCH monitoring for the carrier, start or restart the carrier deactivation timer associated with the carrier, and/or the like. If the device receives an activation/deactivation MAC control element deactivating the carrier, and/or if the carrier deactivation timer associated with the activated carrier expires, the base station or device may deactivate the carrier, and may stop the carrier deactivation timer associated with the carrier, and/or may flush HARQ buffers associated with the carrier.
If PDCCH on a carrier scheduling the activated carrier indicates an uplink grant or a downlink assignment for the activated carrier, the device may restart the carrier deactivation timer associated with the carrier. When a carrier is deactivated, the wireless device may not transmit SRS (sounding reference signal) for the carrier, may not report CQI/PMI/RI for the carrier, may not transmit on UL-SCH for the carrier, may not monitor the PDCCH on the carrier, and/or may not monitor the PDCCH for the carrier.
A process to assign subcarriers to data packets may be executed by a MAC layer scheduler. The decision on assigning subcarriers to a packet may be made based on data packet size, resources required for transmission of data packets (number of radio resource blocks), modulation and coding assigned to data packet(s), QoS required by the data packets (i.e. QoS parameters assigned to data packet bearer), the service class of a subscriber receiving the data packet, or subscriber device capability, a combination of the above, and/or the like.
According to some of the various aspects of embodiments, packets may be referred to service data units and/or protocols data units at Layer 1, Layer 2 and/or Layer 3 of the communications network. Layer 2 in an LTE network may include three sub-layers: PDCP sub-layer, RLC sub-layer, and MAC sub-layer. A layer 2 packet may be a PDCP packet, an RLC packet or a MAC layer packet. Layer 3 in an LTE network may be Internet Protocol (IP) layer, and a layer 3 packet may be an IP data packet. Packets may be transmitted and received via an air interface physical layer. A packet at the physical layer may be called a transport block. Many of the various embodiments may be implemented at one or many different communication network layers. For example, some of the actions may be executed by the PDCP layer and some others by the MAC layer.
According to some of the various aspects of embodiments, subcarriers and/or resource blocks may comprise a plurality of physical subcarriers and/or resource blocks. In another example embodiment, subcarriers may be a plurality of virtual and/or logical subcarriers and/or resource blocks.
According to some of the various aspects of embodiments, a radio bearer may be a GBR (guaranteed bit rate) bearer and/or a non-GBR bearer. A GBR and/or guaranteed bit rate bearer may be employed for transfer of real-time packets, and/or a non-GBR bearer may be used for transfer of non-real-time packets. The non-GBR bearer may be assigned a plurality of attributes including: a scheduling priority, an allocation and retention priority, a portable device aggregate maximum bit rate, and/or the like. These parameters may be used by the scheduler in scheduling non-GBR packets. GBR bearers may be assigned attributes such as delay, jitter, packet loss parameters, and/or the like.
According to some of the various aspects of embodiments, subcarriers may include data subcarrier symbols and pilot subcarrier symbols. Pilot symbols may not carry user data, and may be included in the transmission to help the receiver to perform synchronization, channel estimation and/or signal quality detection. Base stations and wireless devices (wireless receiver) may use different methods to generate and transmit pilot symbols along with information symbols.
According to some of the various aspects of embodiments, the transmitter in the disclosed embodiments of the present invention may be a wireless device (also called user equipment), a base station (also called eNodeB), a relay node transmitter, and/or the like. The receiver in the disclosed embodiments of the present invention may be a wireless device (also called user equipment-UE), a base station (also called eNodeB), a relay node receiver, and/or the like. According to some of the various aspects of embodiments of the present invention, layer 1 (physical layer) may be based on OFDMA or SC-FDMA. Time may be divided into frame(s) with fixed duration. Frame(s) may be divided into substantially equally sized subframes, and subframe(s) may be divided into substantially equally sized slot(s). A plurality of OFDM or SC-FDMA symbol(s) may be transmitted in slot(s). OFDMA or SC-FDMA symbol(s) may be grouped into resource block(s). A scheduler may assign resource(s) in resource block unit(s), and/or a group of resource block unit(s). Physical resource block(s) may be resources in the physical layer, and logical resource block(s) may be resource block(s) used by the MAC layer. Similar to virtual and physical subcarriers, resource block(s) may be mapped from logical to physical resource block(s). Logical resource block(s) may be contiguous, but corresponding physical resource block(s) may be non-contiguous. Some of the various embodiments of the present invention may be implemented at the physical or logical resource block level(s).
According to some of the various aspects of embodiments, layer 2 transmission may include PDCP (packet data convergence protocol), RLC (radio link control), MAC (media access control) sub-layers, and/or the like. MAC may be responsible for the multiplexing and mapping of logical channels to transport channels and vice versa. A MAC layer may perform channel mapping, scheduling, random access channel procedures, uplink timing maintenance, and/or the like.
According to some of the various aspects of embodiments, the MAC layer may map logical channel(s) carrying RLC PDUs (packet data unit) to transport channel(s). For transmission, multiple SDUs (service data unit) from logical channel(s) may be mapped to the Transport Block (TB) to be sent over transport channel(s). For reception, TBs from transport channel(s) may be demultiplexed and assigned to corresponding logical channel(s). The MAC layer may perform scheduling related function(s) in both the uplink and downlink and thus may be responsible for transport format selection associated with transport channel(s). This may include HARQ functionality. Since scheduling may be done at the base station, the MAC layer may be responsible for reporting scheduling related information such as UE (user equipment or wireless device) buffer occupancy and power headroom. It may also handle prioritization from both an inter-UE and intra-UE logical channel perspective. MAC may also be responsible for random access procedure(s) for the uplink that may be performed following either a contention and non-contention based process. UE may need to maintain timing synchronization with cell(s). The MAC layer may perform procedure(s) for periodic synchronization.
According to some of the various aspects of embodiments, the MAC layer may be responsible for the mapping of multiple logical channel(s) to transport channel(s) during transmission(s), and demultiplexing and mapping of transport channel data to logical channel(s) during reception. A MAC PDU may include of a header that describes the format of the PDU itself, which may include control element(s), SDUs, Padding, and/or the like. The header may be composed of multiple sub-headers, one for constituent part(s) of the MAC PDU. The MAC may also operate in a transparent mode, where no header may be pre-pended to the PDU. Activation command(s) may be inserted into packet(s) using a MAC control element.
According to some of the various aspects of embodiments, the MAC layer in some wireless device(s) may report buffer size(s) of either a single Logical Channel Group (LCG) or a group of LCGs to a base station. An LCG may be a group of logical channels identified by an LCG ID. The mapping of logical channel(s) to LCG may be set up during radio configuration. Buffer status report(s) may be used by a MAC scheduler to assign radio resources for packet transmission from wireless device(s). HARQ and ARQ processes may be used for packet retransmission to enhance the reliability of radio transmission and reduce the overall probability of packet loss.
According to some of the various aspects of embodiments, an RLC sub-layer may control the applicability and functionality of error correction, concatenation, segmentation, re-segmentation, duplicate detection, in-sequence delivery, and/or the like. Other functions of RLC may include protocol error detection and recovery, and/or SDU discard. The RLC sub-layer may receive data from upper layer radio bearer(s) (signaling and data) called service data unit(s) (SDU). The transmission entities in the RLC layer may convert RLC SDUs to RLC PDU after performing functions such as segmentation, concatenation, adding RLC header(s), and/or the like. In the other direction, receiving entities may receive RLC PDUs from the MAC layer. After performing reordering, the PDUs may be assembled back into RLC SDUs and delivered to the upper layer. RLC interaction with a MAC layer may include: a) data transfer for uplink and downlink through logical channel(s); b) MAC notifies RLC when a transmission opportunity becomes available, including the size of total number of RLC PDUs that may be transmitted in the current transmission opportunity, and/or c) the MAC entity at the transmitter may inform RLC at the transmitter of HARQ transmission failure.
According to some of the various aspects of embodiments, PDCP (packet data convergence protocol) may comprise a layer 2 sub-layer on top of RLC sub-layer. The PDCP may be responsible for a multitude of functions. First, the PDCP layer may transfer user plane and control plane data to and from upper layer(s). PDCP layer may receive SDUs from upper layer(s) and may send PDUs to the lower layer(s). In other direction, PDCP layer may receive PDUs from the lower layer(s) and may send SDUs to upper layer(s). Second, the PDCP may be responsible for security functions. It may apply ciphering (encryption) for user and control plane bearers, if configured. It may also perform integrity protection for control plane bearer(s), if configured. Third, the PDCP may perform header compression service(s) to improve the efficiency of over the air transmission. The header compression may be based on robust header compression (ROHC). ROHC may be performed on VOIP packets. Fourth, the PDCP may be responsible for in-order delivery of packet(s) and duplicate detection service(s) to upper layer(s) after handover(s). After handover, the source base station may transfer unacknowledged packet(s)s to target base station when operating in RLC acknowledged mode (AM). The target base station may forward packet(s)s received from the source base station to the UE (user equipment).
In this specification, “a” and “an” and similar phrases are to be interpreted as “at least one” and “one or more.” In this specification, the term “may” is to be interpreted as “may, for example,” In other words, the term “may” is indicative that the phrase following the term “may” is an example of one of a multitude of suitable possibilities that may, or may not, be employed to one or more of the various embodiments. If A and B are sets and every element of A is also an element of B, A is called a subset of B. In this specification, only non-empty sets and subsets are considered. For example, possible subsets of B={cell1, cell2} are: {cell1}, {cell2}, and {cell1, cell2}.
Many of the elements described in the disclosed embodiments may be implemented as modules. A module is defined here as an isolatable element that performs a defined function and has a defined interface to other elements. The modules described in this disclosure may be implemented in hardware, software in combination with hardware, firmware, wetware (i.e. hardware with a biological element) or a combination thereof, all of which are behaviorally equivalent. For example, modules may be implemented as a software routine written in a computer language configured to be executed by a hardware machine (such as C, C++, Fortran, Java, Basic, Matlab or the like) or a modeling/simulation program such as Simulink, Stateflow, GNU Octave, or LabVIEWMathScript. Additionally, it may be possible to implement modules using physical hardware that incorporates discrete or programmable analog, digital and/or quantum hardware. Examples of programmable hardware comprise: computers, microcontrollers, microprocessors, application-specific integrated circuits (ASICs); field programmable gate arrays (FPGAs); and complex programmable logic devices (CPLDs). Computers, microcontrollers and microprocessors are programmed using languages such as assembly, C, C++ or the like. FPGAs, ASICs and CPLDs are often programmed using hardware description languages (HDL) such as VHSIC hardware description language (VHDL) or Verilog that configure connections between internal hardware modules with lesser functionality on a programmable device. Finally, it needs to be emphasized that the above mentioned technologies are often used in combination to achieve the result of a functional module.
The disclosure of this patent document incorporates material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent file or records, for the limited purposes required by law, but otherwise reserves all copyright rights whatsoever.
While various embodiments have been described above, it should be understood that they have been presented by way of example, and not limitation. It will be apparent to persons skilled in the relevant art(s) that various changes in form and detail can be made therein without departing from the spirit and scope. In fact, after reading the above description, it will be apparent to one skilled in the relevant art(s) how to implement alternative embodiments. Thus, the present embodiments should not be limited by any of the above described exemplary embodiments. In particular, it should be noted that, for example purposes, the above explanation has focused on the example(s) using FDD communication systems. However, one skilled in the art will recognize that embodiments of the invention may also be implemented in TDD communication systems. The disclosed methods and systems may be implemented in wireless or wireline systems. The features of various embodiments presented in this invention may be combined. One or many features (method or system) of one embodiment may be implemented in other embodiments. Only a limited number of example combinations are shown to indicate to one skilled in the art the possibility of features that may be combined in various embodiments to create enhanced transmission and reception systems and methods.
In addition, it should be understood that any figures which highlight the functionality and advantages, are presented for example purposes only. The disclosed architecture is sufficiently flexible and configurable, such that it may be utilized in ways other than that shown. For example, the actions listed in any flowchart may be re-ordered or only optionally used in some embodiments.
Further, the purpose of the Abstract of the Disclosure is to enable the U.S. Patent and Trademark Office and the public generally, and especially the scientists, engineers and practitioners in the art who are not familiar with patent or legal terms or phraseology, to determine quickly from a cursory inspection the nature and essence of the technical disclosure of the application. The Abstract of the Disclosure is not intended to be limiting as to the scope in any way.
Finally, it is the applicant's intent that only claims that include the express language “means for” or “step for” be interpreted under 35 U.S.C. 112, paragraph 6. Claims that do not expressly include the phrase “means for” or “step for” are not to be interpreted under 35 U.S.C. 112, paragraph 6.

## Claims

1. A method comprising:
a) receiving, by a first base station from a second base station, at least one application protocol message, said first base station and said second base station configured to communicate with a plurality of wireless devices employing a downlink carrier, said downlink carrier comprising a plurality of resource blocks, said at least one application protocol message comprising a downlink beamforming information element for at least one resource block in said downlink carrier, said downlink beamforming information element indicating a second beamforming codeword employed by said second base station for said at least one resource block, said second beamforming codeword:
i) having a number of rows or columns equal to a number of antenna ports employed by said second base station for beamforming on said downlink carrier;
ii) included in a second beamforming codebook; and
iii) referenced by an index, correspondence between said beamforming codeword and said index being defined by an application protocol message received prior to said at least one application protocol message reception;

b) selecting, by said first base station for said at least one resource block, a first beamforming codeword from a first beamforming codebook, said selection being based, at least in part, on said downlink beamforming information element received from said second base station; and
c) transmitting, by said first base station, employing said first beamforming codeword, signals on a subset of said at least one resource block to a wireless device.

2. The method of claim 1, wherein said at least one application protocol message comprises said number of antenna ports for said downlink carrier.

3. The method of claim 1, wherein said first beamforming codeword has a number of rows or columns equal to a number of antenna ports employed by said first base station for beamforming on said downlink carrier.

4. The method of claim 1, wherein said first base station selecting a subset of said first plurality of beamforming codewords further comprises employing a zero-forcing criterion.

5. The method of claim 1, wherein said first base station selecting a subset of said first plurality of beamforming codewords further comprises employing a minimum mean squared error criterion.

6. The method of claim 1, further comprising configuring said first plurality of beamforming codewords to reduce inter-cell interference from said first base station.

7. The method of claim 6, further comprising said first base station computing inter-cell interference to said second base station employing information received from at least one wireless device.

8. The method of claim 7, wherein said first base station selecting a subset of said first plurality of beamforming codewords further comprises employing a maximum signal to leakage ratio criterion.

9. A method comprising:
a) receiving, by a first base station from a second base station, at least one application protocol message, said first base station and said second base station configured to communicate with a plurality of wireless devices employing a downlink carrier, said downlink carrier comprising a plurality of resource blocks, said at least one application protocol message comprising a downlink beamforming information element for at least one resource block in said downlink carrier, said downlink beamforming information element indicating a second beamforming codeword employed by said second base station for said at least one resource block, said second beamforming codeword referenced by an index and included in a second beamforming codebook;
b) selecting, by said first base station for said at least one resource block, a first beamforming codeword from a first beamforming codebook, said selection being based, at least in part, on said downlink beamforming information element received from said second base station; and
c) transmitting, by said first base station, employing said first beamforming codeword, signals on a subset of said at least one resource block to a wireless device.

10. The method of claim 9, wherein said first beamforming codebook or said second beamforming codebook is defined for a number of transmit antennas and comprises a set of original codewords, each original codeword having a number of rows or columns equal to said number of transmit antennas.

11. The method of claim 10, further comprising constructing codewords for a subset of transmit antennas employing a subset of rows or columns of said original codewords.

12. The method of claim 9, further comprising defining said first beamforming codebook or said second beamforming codebook for a number of layers, and wherein said first beamforming codebook or said second beamforming codebook comprises a set of codewords, each codeword having a number columns or rows equal to said maximum number of layers.

13. The method of claim 12, further comprising constructing codewords for a subset of layers employing a subset of columns or rows of said original codewords.

14. The method of claim 9, further comprising aid second base station transmitting the same second application protocol message to a plurality of first base stations.

15. The method of claim 14, further comprising said plurality of first base stations selecting respective first plurality of beamforming codewords based on information received from said second base station in said second application protocol message.

16. A first base station comprising:
a) one or more communication interfaces;
b) one or more processors; and
c) memory storing instructions that, when executed, cause said first base station to:
i) receive from a second base station, at least one application protocol message, said first base station and said second base station configured to communicate with a plurality of wireless devices employing a downlink carrier, said downlink carrier comprising a plurality of resource blocks, said at least one application protocol message comprising a downlink beamforming information element for at least one resource block in said downlink carrier, said downlink beamforming information element indicating a second beamforming codeword employed by said second base station for said at least one resource block, said second beamforming codeword:
(1) having a number of rows or columns equal to or less than a number of antenna ports employed by said second base station for beamforming on said downlink carrier; and
(2) included in a second beamforming codebook;

ii) select for said at least one resource block, a first beamforming codeword from a first beamforming codebook, said selection being based, at least in part, on said downlink beamforming information element received from said second base station; and
iii) transmit employing said first beamforming codeword, signals on a subset of said at least one resource block to a wireless device.

17. The first base station of claim 16, wherein said first beamforming codebook or said second beamforming codebook is defined for a number of transmit antennas and comprises a set of original codewords, each original codeword having a number columns or rows equal to said number of transmit antennas.

18. The first base station of claim 17, wherein said instructions, when executed, further cause said first base station to construct codewords for a smaller number of transmit antennas by employing a subset of columns or rows of said original codewords.

19. The first base station of claim 16, wherein said first beamforming codebook or said second beamforming codebook is defined for a number of layers and comprises a set of original codewords, each original codeword having a number rows or columns equal to said maximum number of layers.

20. The first base station of claim 19, wherein codewords for a smaller number of layers are constructed by employing a subset of rows or columns of said original codewords.