Claiming priority in accordance with 35U.S.C. § 119
This patent application claims priority to provisional application No.60/669,555 entitled "TIMING RECOVERY AND NETWORK SWITCHING FOR FLO" filed on 7.4.2005 AND assigned to the assignee hereof AND expressly incorporated herein by reference.
Detailed Description
The detailed description set forth below in connection with the appended drawings is intended as a description of various embodiments of the present invention and is not intended to represent the only embodiments in which the present invention may be practiced. The detailed description includes specific details for the purpose of providing a thorough understanding of the present invention. It will be apparent, however, to one skilled in the art that the present invention may be practiced without these specific details. In some instances, well-known structures and components are shown in block diagram form in order to avoid obscuring the concepts of the present invention.
Techniques for broadcasting different types of transmissions (e.g., local and wide-area transmissions) in a wireless broadcast network are described herein. As used herein, "broadcast" and "casting" refer to the transmission of content/data to groups of users of any size and may also be referred to as "multicasting" or other terminology. A wide-area transmission is a transmission that may be broadcast by all or many transmitters in the network. A local transmission is a transmission that may be broadcast by a subset of the transmitters for a given wide-area transmission. Different local transmissions may be broadcast by different subsets of the transmitters for a given wide-area transmission. Different wide-area transmissions may also be broadcast by different groups of transmitters in the network. The wide area and local transmissions typically carry different content, but these transmissions may carry the same content.
One example of such a broadcast network is QUALCOMM MediaFLO which delivers program sets at a bit rate of about 2 bits per second per HzTM. The technology used is an Orthogonal Frequency Division Multiplexing (OFDM) -based air interface specifically designed for cost-effective multicasting of large amounts of rich multimedia content to wireless subscribers. It takes advantage of multicast technology in a single frequency network to significantly reduce the cost of delivering the same content to many users simultaneously. In addition, local and wide areas within a single RF channel (e.g., 700MHz)The coexistence of the overlays is supported as described above. This division between wide and local areas supports more targeted programming, local advertising, and the ability to break and re-adjust as needed. MediaFLOTMIs but one example of a broadcast network of the type described herein and other functionally equivalent broadcast networks are also contemplated.
Similar to cable TV, subscribers within a wireless broadcast network may subscribe to different groups and tiers of services (e.g., pay movies, sports, etc.) and be provided with a set of channels (e.g., tennis, ESPN, soap operas, BBC, etc.). Different content providers forward the content to the broadcast network, which then combines the content and broadcasts it according to a predetermined schedule. During provisioning of a user's mobile device, the ability to receive and decode channels subscribed to by the user is programmed into the mobile device. The offer may be updated later to remove or add additional packets and channels. One of ordinary skill will recognize that the hierarchical arrangement of channels just described is but one example of how multimedia and other content may be provided. Other arrangements or organizations of data and its channels may be utilized without departing from the scope of the invention.
Fig. 1A depicts two exemplary wireless broadcast networks 102, 104. Each of the two networks 102, 104 may provide a variety of different channels and content to multiple subscribers in a relatively large geographic area. For example, transmitter T of network 1021120 may broadcast various channels, and a transmitter T2130 may broadcast their own channels within the network coverage area 104.
The broadcasts from the different transmitters 120, 130 are not necessarily the same and may include different channels or include different content. For example, one network 102 may be in the pacific time zone and another network may be in the mountain time zone. Thus, even if the two networks provide the same channel, the actual programming broadcast may be different due to time zone differences (e.g., a major event movie is scheduled to start always at 8 pm at local time). In addition, there are logical channels (e.g., ESPN) and physical channels (e.g., a particular TDM time slot, or a particular frequency band). Therefore, even if both networks 102, 104 provide ESPN, they may not broadcast on the same physical channel.
The result of these differences is that access to available content may change as wireless users move from the coverage area of one broadcast network 102 to a different broadcast network 104. Referring to fig. 1A, the mobile device 110 is clearly within the coverage area of the network 104, but the other mobile device 108 may detect the presence of both networks 102, 104. From the transmitter T when the mobile device 108 moves from the network coverage area 104 into another network coverage area 1021120 compared to the broadcast signal from the transmitter T2The broadcast signal of 130 will become stronger. Because the signal is stronger, the user of the mobile device 108 will be provided better service within the network 102 because there will be less signal delay, signal errors, etc. Thus, it appears that the best thing mobile device 108 does is to measure the signal strength from both transmitters 120, 130 and lock onto the stronger signal. This approach has a number of drawbacks.
First, the transition region between the two networks is not well defined and may vary depending on nearby structures, direction of travel, weather, and other similar factors. Thus, as a user moves from one network coverage area to another, the transmitters 120, 130 with stronger signals may change back and forth multiple times until the user is clearly within the new network coverage area. Thus, if the device 108 is changed to a new strongest network each time it is detected, the content available to the client will also change back. This occurrence will be very devastating in many situations, especially in real-time content and interactive content situations.
Second, even if the signal is degraded or poor, the user of device 108 may want to continue to enjoy a particular content channel. For example, if a sporting event is being viewed and is the last few minutes or seconds, the user may wish to endure degraded service to ensure that the last minute is viewed in an uninterrupted manner.
Another possible scenario may be explained with reference to the mobile device 106. From the transmitter T even though the device 106 appears to be clearly within the network coverage area 1021The signal of 120 is not always the strongest. For example, there may be buildings or other structures between the device 106 and the transmitter 120 that constitute a "shadow" that degrades the reception of the device 106. Within the shadow, from another transmitter T2The signal of 130 may be a stronger signal that is actually perceived. Thus, if the switch to a different network is immediate and automatic, the device 108 will lock to the different network both when entering and when leaving the shadow.
The network diagram of fig. 1B depicts another scenario in which a mobile device transitions between different networks. In this example, 3 transmitters (along with other transmitters not shown) transmit signals over the area comprising wide area network 149. Within this region 149, there is a constant set of content that is the same for the entire region. Even when the mobile device is located within one of the three local areas 150, 152, 154. However, there is a portion of the broadcast content in these areas that differs between the different networks 150, 152, 154. Thus, each network 150, 152, 154 has its own unique local content transmitted by transmitters 151, 153, 155, respectively, with the common wide-area content. As the devices 160 and 162 move throughout the wide area network 149, the wide area content will remain the same but the local content may change. Thus, similar to the scenario described with respect to fig. 1A, there may be some scenarios where it is useful to switch between different neighboring networks, but there may also be some scenarios where a handover should be avoided.
Typically, the transmitters 151, 153, 155 will broadcast signals that are captured, demodulated and decoded by the mobile devices to extract the desired content. In the aforementioned OFDM system, these signals may include wide area content data, local area content data, overhead (overhead) information, and timing signals. A timing signal, commonly referred to as a pilot signal, is used by the mobile device to identify the reception of the broadcast signal and establish a reference point for the remainder of the signal. The content data may be separated into different channels and broadcast at separate times or frequencies (depending on the encoding method). The overhead information may be used by the mobile device to determine which portions of the broadcast signal to decode. For example, if a user desires to receive one channel from 20 or 50 channels provided, the mobile device may use the overhead information to demodulate and decode the portion of the broadcast signal associated with the desired channel. Performing in this manner provides efficient power usage and extends the operating life of the battery.
The data, pilot, and overhead information for the local and wide-area transmissions may be multiplexed in various ways. For example, data symbols for a wide-area transmission may be multiplexed into a "transmission span (span)" allocated for the wide-area transmission, data symbols for a local transmission may be multiplexed into a transmission span allocated for the local transmission, TDM and/or FDM pilots for the wide-area transmission may be multiplexed into a transmission span allocated for the pilots, and TDM and/or FDM pilots for the local transmission may be multiplexed into a transmission span allocated for the pilots. Overhead information for local and wide-area transmissions may be multiplexed to one or more designated transmission spans. The different transmission spans correspond to (1) different sets of frequency subbands when the wireless broadcast network utilizes FDM, (2) different time segments when TDM is utilized, or (3) different groups of subbands in different time segments when both TDM and FDM are utilized. Various multiplexing schemes are described below. More than two different types of networks with more than two different layers of coverage may also be processed, multiplexed and broadcast. Wireless devices in the wireless broadcast network perform supplemental processing to recover data for local and wide-area transmissions.
Fig. 2 illustrates an exemplary superframe structure 200 that may be used in an OFDM-based wireless broadcast network for broadcasting local and wide-area transmissions. Data transmission is performed in units of superframes 210. Each superframe spans a predetermined duration, which may be selected based on various factors such as the statistical multiplexing required for the data streams being broadcast, the amount of time diversity required for the data streams, the acquisition time of the data streams, buffer requirements for the wireless devices, and so forth. A superframe of approximately one second size may provide a good tradeoff between the various factors described above. However other super-frame sizes may be used.
For the embodiment shown in fig. 2, each superframe 210 includes: a header section 220, 4 frames 230a to 230d of equal size, and an end section 240, not shown to scale in fig. 2. Table 1 lists various fields of segments 220 and 240 of each frame 230.
| Field(s) | Description of the invention | 
| TDM pilot | TDM pilot for signal detection, frame synchronization, frequency error estimation, and time synchronization | 
| Transition pilot | Pilots are used for channel estimation and possibly time synchronization and are sent on the boundaries of wide-area and local fields/transmissions | 
| WIC | Wide area identification channel-transmitting identifiers assigned to served wide areas | 
| LIC | Local identification channel-transmitting an identifier assigned to a served local area | 
| Wide area OIS | Wide area overhead information symbol-transmission sent in wide area data fieldOverhead information (e.g., frequency/time location and allocation) for each data channel of (a) | 
| Local OIS | Local overhead information symbol-conveying overhead information for each data channel sent in a local data field | 
| Wide area data | Data channel for transmitting wide area transmission | 
| Local data | Data channel for transmitting local transmission | 
For the embodiment shown in fig. 2, different pilots are used for different purposes. A pair of TDM201 is sent at or near the beginning of each superframe and may be used for the purposes described in table 1. The transition pilot is sent on the boundary between the local and wide-area fields/transmissions and allows for seamless transitions between the local and wide-area fields/transmissions.
The local and wide-area transmissions may be for multimedia content such as video, audio, data, teletext, video/audio clips, etc., and may be sent in separate data streams. For example, a single multimedia (e.g., television) program may be transmitted in three separate data streams for video, audio, and data. The data stream is transmitted over a data channel. Each data channel may carry one or more data streams. The data channels carrying the data streams for local transmission are also referred to as "local channels", while the data channels carrying the data streams for wide transmission are also referred to as "wide channels". The local frequency channels are transmitted in the local data field of the superframe, while the wide frequency channels are transmitted in the wide data field.
Each data channel may be "allocated" a fixed or variable number of interlaces per superframe depending on the payload of the data channel, the availability of interlaces in the superframe, and possibly other factors. Each data channel may be active or inactive in any given superframe. Each active data channel is also "allocated" a particular interlace within the superframe based on an allocation scheme that attempts to (1) fill all active data channels as efficiently as possible, (2) reduce the transmission time of each data channel, (3) provide sufficient time diversity for each data channel, and (4) minimize the amount of signaling required to indicate the interlace allocated to each data channel. The same interlace allocation may be used for the four frames of the super-frame for each active data channel.
The local OIS field indicates the time-frequency allocation for each active local channel for the current super-frame. The wide-area OIS field indicates the time-frequency allocation for each active wide-area channel for the current superframe. The local OIS and wide-area OIS are transmitted at the beginning of each super-frame to allow the wireless device to determine the time-frequency location of each data channel of interest in that super-frame.
The various fields of the superframe may be transmitted in the order shown in fig. 2 or in other orders. In general, it is desirable to transmit the TDM pilot and overhead information early in the super-frame so that the TDM pilot and overhead information can be used to receive data subsequently transmitted in the super-frame. The wide-area transmission may be sent before the local transmission as shown in fig. 2 or after the local transmission.
Fig. 2 shows a specific superframe structure. In general, a superframe may span any duration and may include any number and any type of segments, frames, and fields. However, there is typically a useful range of superframe durations associated with acquisition time and cycle time of the receiver electronics. Other superframe and frame structures may also be used to broadcast different types of transmissions and are within the scope of the invention.
The pilot signal of fig. 2, which is transmitted during a broadcast transmission, may be used to derive (1) a channel estimate for a wide-area transmission, also referred to as a wide-area channel estimate, and (2) a channel estimate for a local transmission, also referred to as a local channel estimate. The local and wide-area channel estimates may be used for data detection and decoding for local and wide-area transmissions, respectively. These pilots may also be used for channel estimation, time synchronization, acquisition (e.g., Automatic Gain Control (AGC)), and so on. The transition pilot may also be used to obtain improved timing for local transmissions as well as wide-area transmissions.
Fig. 3 shows a block diagram of a base station 1010 and a wireless device 1050 in the wireless broadcast network 100 of fig. 1A and 1B. Base station 1010 is generally a fixed station and may also be referred to as an access point, a transmitter, or some other terminology. Wireless device 1050 may be fixed or mobile and may also be referred to as a user terminal, a mobile station, a receiver, or some other terminology. Wireless device 1050 may also be a portable unit such as a cellular phone, handheld device, wireless module, Personal Digital Assistant (PDA), or the like.
At base station 1010, a Transmit (TX) data processor 1022 receives data for a wide-area transmission from a source 1012, processes (e.g., encodes, interleaves, and symbol maps) the wide-area data, and generates data symbols for the wide-area transmission. The data symbol is a modulation symbol for the data, and the modulation symbol is a complex value corresponding to a point in a signal constellation for a modulation scheme (e.g., M-PSK, M-QAM, etc.). TX data processor 1022 also generates the FDM and transition pilots for the wide area in which base station 1010 belongs and provides the data and pilot symbols for the wide area to a multiplexer (Mux) 1026. A TX data processor 1024 receives data for a local transmission from sources 1014, processes the local data, and generates data symbols for the local transmission. TX data processor 1024 also generates a pilot for the local area to which base station 1010 belongs and provides data and pilot symbols for the local area to multiplexer 1026. The coding and modulation of the data may be selected based on various factors, such as whether the data is for wide-area or local transmission, the type of data, the desired coverage area for the data, and so on.
A multiplexer 1026 multiplexes the data and pilot symbols for the local and wide areas, as well as the overhead information and symbols for the TDM pilot, into the subbands and symbol periods allocated for the symbols. A modulator (Mod)1028 performs modulation in accordance with the modulation technique used by network 100. For example, modulator 1028 may perform OFDM modulation on the multiplexed symbols to generate OFDM symbols. A transmitter unit (TMTR)1032 converts the symbols from modulator 1028 into one or more analog signals and further conditions (e.g., amplifies, filters, and frequency upconverts) the analog signals to generate a modulated signal. Base station 1010 then transmits the modulated signal through antenna 1034 to wireless devices in the network.
At wireless device 1050, the transmitted signal from base station 1010 is received by an antenna 1052 and provided to a receiver unit (RCVR) 1054. Receiver unit 1054 conditions (e.g., amplifies, filters, and frequency downconverts) the received signal and digitizes the conditioned signal to generate a stream of data samples. A demodulator (Demod)1060 performs (e.g., OFDM) demodulation on the data samples and provides received pilot symbols to a synchronization (Sync)/channel estimation unit 1080. Unit 1080 also receives the data samples from receiver unit 1054, determines frame and symbol timing from the data samples, and derives channel estimates for the local and wide areas from the received pilot symbols for the local and wide areas. Unit 1080 provides the symbol timing and channel estimate to demodulator 1060 and provides the frame timing to demodulator 1060 and/or a controller 1090. Demodulator 1060 performs data detection on the received data symbols for the local transmission using the local channel estimates, performs data detection on the received data symbols for the wide-area transmission using the wide-area channel estimates, and provides the detected data symbols for the local and wide-area transmissions to a demultiplexer (Demux) 1062. The detected data symbols are estimates of the data symbols transmitted by base station 1010 and may be provided in log-likelihood ratios (LLRs) or other forms.
Demultiplexer 1062 provides the detected data symbols for all wide-area channels of interest to a Receive (RX) data processor 1072 and provides the detected data symbols for all local channels of interest to an RX data processor 1074. RX data processor 1072 processes (e.g., deinterleaves and decodes) the detected data symbols for the wide-area transmission in accordance with an applicable demodulation and decoding scheme and provides decoded data for the wide-area transmission. RX data processor 1074 processes the detected data symbols for the local transmission in accordance with an applicable demodulation and decoding scheme and provides decoded data for the local transmission. In general, the processing by demodulator 1060, demultiplexer 1062, and RX data processors 1072 and 1074 at wireless device 1050 is complementary to the processing by modulator 1028, multiplexer 1026, and TX data processors 1022 and 1024, respectively, at base station 1010.
Controllers 1040 and 1090 direct operation at base station 1010 and wireless device 1050, respectively. These controllers may be hardware-based, software-based, or a combination of both. Memory units 1042 and 1092 store program codes and data used by controllers 1040 and 1090, respectively. A scheduler 1044 schedules the broadcast of local and wide-area transmissions and allocates and assigns resources for the different transmission types.
For clarity, fig. 3 illustrates data processing for local and wide-area transmissions at base station 1010 and wireless device 1050 by two different data processors. Data processing for all types of transmissions may be performed by a single data processor on each of base station 1010 and wireless device 1050. In general, any number of types of transmissions having different coverage areas may be transmitted by base station 1010 and received by wireless device 1050. For clarity, fig. 3 also shows all of the units of base station 1010 as being located at the same site. In general, these units may be located at the same or different sites and may communicate over various communication links. For example, data sources 1012 and 1014 may be located outside of the site, transmitter 1032 and/or antenna 1034 may be located at a transmit site, and so on.
The user interface 1094 is also in communication with a controller 1090 that allows a user of the device 1050 to control various aspects of its operation. For example, the interface 1094 may include a keypad and display as well as the underlying hardware and software necessary to prompt the user for commands and instructions and then process the commands and instructions once received. For example, the user interface 1094 may be used to alert the user that a new network is providing better signal strength than the current network and to ask the user whether the device 1050 should acquire the new network. The display of other networks may include their WIC/LIC information as well as a score or value indicating their signal quality or strength.
Fig. 4 depicts a flow diagram of an exemplary method of determining when a mobile device should be handed off from one broadcast network to another. In step 402, the mobile device operates normally and demodulates and decodes data based on the currently selected serving broadcast network. Demodulation and decoding of the signal is based on previously detected TDM pilot signals (and possibly other pilot signals) that provide timing information and channel estimates.
During decoding, errors may occur and may be detected through the use of error correction codes and other techniques. Due to the uncertainty of the wireless environment, a certain amount of errors may occur even in a properly operating system. Therefore, a threshold value is typically selected that defines an acceptable number of errors. The acceptable number of errors may be based on the entire superframe or on each individual frame within the superframe. Thus, one threshold may be "16 errors or less than 16 within the entire superframe" and another threshold may be "no more than 2 errors within any individual frame". Furthermore, the wide-area data may have a proprietary threshold to the local-area data such that more errors are allowed in the local-area data than in the wide-area data. In summary, one of ordinary skill will recognize that there are many different ways to measure and determine whether a predetermined error threshold has been exceeded.
If more than the allowed number of errors is reached in step 404, software executing on the mobile device causes the demodulator to reacquire the current signal in step 406. The reacquisition may be a completely new acquisition starting from the erasure or may be a partial reacquisition using a portion of previously detected information. For example, one advantageous method of reacquiring signals using the superframe of fig. 2 is to attempt to reacquire WIC/LIC, TDM2, and OIS. Based on the reacquired information, the timing resolution for future demodulation and decoding can be improved. This step may correct any problems due to timing issues only.
At step 408, the mobile device continues to demodulate and decode data from the current serving network. At the same time, the mobile device captures all signals it can detect and generates a score indicative of the quality of each signal at step 410. Advantageously, the number of samples per signal is greater than 1 such that the quality score of each signal is based on a composite of different samples of each signal. For example, 5 samples (more or less samples) of each signal may be detected and the respective mass scores for each sample averaged together to produce a composite score for the signal. Using the superframe of fig. 2, WIC/LIC, TDM2, and OIS for all detectable network candidates may be captured. Based on the pilot signal and/or other signals, a quality score may be assigned to each WIC/LIC. As mentioned, the quality score may be generated from each WIC/LIC, TDM2, and OIS by detecting multiple superframes.
At step 412, a determination is made as to whether the WIC/LIC of the current serving network is the best network (based on the quality score) from the list of network candidates located in step 410. If the best network in the candidate list is a different network, the user is presented with a choice of switching to the new network or remaining on the current network. If the user keeps, the quality of the received signal may degrade and will continue to be demodulated and decoded. Eventually, the signal may degrade too much and signal lock will be lost.
If the user chooses to switch networks at step 414, the mobile device performs a full reacquisition of the network. Using the superframe example of fig. 2, the mobile device acquires TDM1, WIC/LIC, TDM2, and OIS for the new network to begin demodulating and decoding the broadcast signal.
The above method prevents the ping-pong effect of switching between two adjacent networks, as previously described, in at least two ways. First, by choosing not to switch, the user may prevent automatic switching from one network to another, even though the relative signal strengths of the two networks may otherwise suggest. Second, by combining the quality scores over multiple samples, temporal anomalies in signal strength are ignored so as not to cause problems. Accordingly, a handover between two networks may still occur efficiently while being performed in a user-friendly manner.
Fig. 5 illustrates an alternative block level diagram of a mobile device 500 that may operate in accordance with the principles of the invention. There is a determining means 502 for determining a respective quality score for each of a plurality of broadcast networks. The quality score indicates the likelihood of successfully receiving and decoding a particular broadcast network signal with an acceptable level of error. The apparatus 500 further comprises receiving means for receiving commands from a user or an operator of the apparatus 500. The command relates to whether the user wants to switch from one broadcast network to another. The results of the receiving means 504 and the determining means 502 are provided to the decoding means 506. In particular, the decoding means may select which of these broadcast network signals to decode. For example, the decoding device may remain on its current selection and continue to receive and decode the current broadcast network signal. Alternatively, if so commanded, the decoding device may switch so that it receives and decodes a different broadcast network with the highest quality score. Accordingly, the mobile device 500 may allow a user input to play a factor in whether the mobile device 500 switches from one broadcast network to another.
The techniques described herein for broadcasting different types of transmissions over the air may be implemented by various means. For example, these techniques may be implemented in hardware, software, or a combination thereof. For a hardware implementation, the processing units at the base station used to broadcast the different types of transmissions may be implemented within one or more Application Specific Integrated Circuits (ASICs), Digital Signal Processors (DSPs), Digital Signal Processing Devices (DSPDs), Programmable Logic Devices (PLDs), Field Programmable Gate Arrays (FPGAs), processors, controllers, micro-controllers, microprocessors, other electronic units designed to perform the functions described herein, or a combination thereof. The processing units on the wireless device for receiving different types of transmissions may also be implemented within one or more ASICs, DSPs, and the like.
For a software implementation, the techniques illustrated herein may be implemented with modules (e.g., procedures, functions, and so on) that perform the functions described herein. The software codes may be stored in a memory unit (e.g., memory unit 1042 or 1092 in fig. 3) and executed by a processor (e.g., controller 1040 or 1090). The memory unit may be implemented within the processor or external to the processor, in which case it can be communicatively coupled to the processor via various means as is known in the art.
The previous description is provided to enable any person skilled in the art to practice the various embodiments described herein. Modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments. Thus, the claims are not intended to be limited to the embodiments described herein, but is to be accorded the full scope consistent with the written claims, wherein reference to an element in the singular is not intended to mean "one and only one" unless specifically so stated, but rather "one or more. Structural and functional equivalents to the elements of the various embodiments described throughout this disclosure that are or become known to those of ordinary skill in the art are expressly incorporated herein by reference and are intended to be encompassed by the claims. Furthermore, nothing disclosed herein is intended to be dedicated to the public regardless of whether such disclosure is explicitly recited in the claims. Claim elements should not be construed in accordance with 35u.s.c. § 112, sixth unless the claim elements are explicitly recited using the phrase "means for.