WO2006036332A1 - Systems and methods for forward error correction in a wireless communication network - Google Patents

Systems and methods for forward error correction in a wireless communication network Download PDF

Info

Publication number
WO2006036332A1
WO2006036332A1 PCT/US2005/028800 US2005028800W WO2006036332A1 WO 2006036332 A1 WO2006036332 A1 WO 2006036332A1 US 2005028800 W US2005028800 W US 2005028800W WO 2006036332 A1 WO2006036332 A1 WO 2006036332A1
Authority
WO
WIPO (PCT)
Prior art keywords
sub
transmitter
encoder
block
channel
Prior art date
Application number
PCT/US2005/028800
Other languages
French (fr)
Inventor
Ismail Lakkis
Original Assignee
Pulse-Link, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Pulse-Link, Inc. filed Critical Pulse-Link, Inc.
Publication of WO2006036332A1 publication Critical patent/WO2006036332A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0041Arrangements at the transmitter end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/69Spread spectrum techniques
    • H04B1/7163Spread spectrum techniques using impulse radio
    • H04B1/71635Transmitter aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/04Speed or phase control by synchronisation signals
    • H04L7/041Speed or phase control by synchronisation signals using special codes as synchronising signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/69Spread spectrum techniques
    • H04B1/7163Spread spectrum techniques using impulse radio
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/69Spread spectrum techniques
    • H04B1/7163Spread spectrum techniques using impulse radio
    • H04B1/719Interference-related aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B2201/00Indexing scheme relating to details of transmission systems not covered by a single group of H04B3/00 - H04B13/00
    • H04B2201/69Orthogonal indexing scheme relating to spread spectrum techniques in general
    • H04B2201/707Orthogonal indexing scheme relating to spread spectrum techniques in general relating to direct sequence modulation
    • H04B2201/7097Direct sequence modulation interference
    • H04B2201/709709Methods of preventing interference
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0006Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0023Systems modifying transmission characteristics according to link quality, e.g. power backoff characterised by the signalling
    • H04L1/0026Transmission of channel quality indication

Definitions

  • the invention relates generally to wireless communication and more particularly to systems and methods for wireless communication over awide bandwidth channel using aplurality of sub-channels.
  • Wireless communication systems are proliferating at the Wide Area Network (WAN), Local Area Network (LAN), and Personal Area Network (P AN) levels. These wireless communication systems use a variety of techniques to allow simultaneous access to multiple users. The most common of Ihese techniques are Frequency Division Multiple Access (FDMA), which assigns specific frequencies to each user, Time Division Multiple Access (TDMA), which assigns particular time slots to each user, and Code Division Multiple Access (CDMA), which assigns specific codes to each user.
  • FDMA Frequency Division Multiple Access
  • TDMA Time Division Multiple Access
  • CDMA Code Division Multiple Access
  • Multipalh interference occurs because some of the energy in a transmitted wireless signal bounces off of obstacles, such as buildings or mountains, as it travels from source to destination.
  • the obstacles in effect create reflections of the transmitted signal and the more obstacles there are, the more reflections they generate.
  • the reflections then travel along their own transmission paths to the destination (or receiver).
  • the reflections will contain Ihe same information as the original signal; however, because of the differing transmission path lengths, the reflected signals will be out of phase with the original signal. As a result, they will often combine destructively with the cdginalsigrial in Ihe receiver. This is referred to as fading.
  • fading To combat fading, current systems typically try to estimate the muMpafh e ⁇ % ⁇ and then compensate for them in the receiver using an equalizer. In practice, however, it is very difficult to achieve effective multipafh compensation.
  • a second problem that can affect the operation of wireless communication systems is interference from adjacent communication cells within the system.
  • this type of interference is prevent through a frequency reuse plan.
  • available communication frequencies are allocated to communication cells within the communication system such that the same frequency will not be used in adjacent cells. Essentially, the available frequencies are split into groups. The number of groups is termed the reuse factor.
  • the communication cells are grouped into clusters, each cluster containing the same number of cells as there are frequency groups. Each frequency group is then assigned to a cell in each cluster.
  • a frequency reuse factor of7 is used, for example, then a particular communication frequency will beusedonly cmce in every seven communication cells.
  • each cell can only use I// 1 of the available frequencies, i.e., each cell is only able to use I// 1 of the available bandwidth.
  • each cell uses the same wideband communication channel.
  • each communication cell uses a particular set of spread spectrum codes to differentiate communications within the cell from those originating outside of the cell.
  • CDMA systems preserve the bandwidth in the sense that they avoid reuse planning. But as will be discussed, there are other issues that limit the bandwidth in CDMA systems as well Thus, in overcoming interference, system bandwidth is often sacrificed. Bandwidth is becoming a very valuable commodity as wireless communication systems continue to expand by adding more and more users. Therefore, trading offbandwidth for system performance is a costly, albeit necessary, proposition that is inherent in all wireless communication systems.
  • Wireless communication systems can be split into three types: 1) line-of-sight systems, which can include point-to-point or point- to-muMpoint systems; 2) indoor non-line of sight systems; and 3) outdoor systems such as wireless WANs.
  • line-of-sight systems are least affected by the problems described above, while ir ⁇ ix)r systems are more affected, due for example to signals bouncing off ofbuilding walls. Outdoor systems are by far Ihe most affected of the three systems.
  • a forward error correction encoder encodes input data words into code words t ⁇ rrpise a parity matrix.
  • the encoder is optimized based on the properties of the parity matrix in ord ⁇ to reduce routing overhead and size.
  • a decoder is optimized to receive and decode the code word in the face of noise introduced when the code word is transmitted over a physical channel.
  • Figure 1 is a ⁇ agram illustrating an example embodiment of aw channels in accordance with the invention
  • Figure 2 is a diagram illustrating the effects of multipath in a wireless communication system
  • Figure 3 is a diagram illustrating another example embodiment of a wideband communication channel divided into a plurality of sub-channels in accordance with the invention.
  • Figure 5A is a diagram illustrating the assignment of sub-channels for a wideband communication channel in accordance with the invention.
  • Figure 5B is a diagram illustrating the assignment of time slots for a wideband communication channel in accordance with the invention.
  • Figure 6 is a diagram illustrating an example embodiment of a wireless communication in accordance with the invention.
  • Figure 7 is a diagram illustrating the use of synchronization codes in the wireless communication system of figure 5 in accordance with the invention.
  • Figure 8 is a diagram illustrating a correlator that can be used to correlate synchronization codes in the wireless communication system of figure 5;
  • Figure 9 is a diagram illustrating synchronization code correlation in accordance with the invention.
  • Figure 10 is a diagram illustrating the cross-correlation properties of synchronization codes configured in accordance with the invention.
  • Figure 11 is a diagram illustrating another example embodiment of a wireless communication system in accordance with the invention.
  • Figure 12A is a diagram illustrating how sub-channels of a wideband communication channel according to the present invention can be grouped in accordance with the present invention
  • Figure 12B is a diagram iltustrating the assignment of the groups of sub- channels of figure 12A in accordance with the invention.
  • Figure 13 is a diagram illustrating the group assignments of figure 12B in the time domain
  • Figure 14 is a flow chart illustrating the assignment of sub-channels based on SIR measurements in the wireless communication system of figure 11 in accordance with the invention.
  • Figure 15 is a logical block diagram of an example embodiment of transmitter configured in accordance with the invention.
  • Figure 16 is a logical block diagram of an example embodiment of a modulator configured in accordance with the present invention for use in the transmitter of figure 15;
  • Figure 17 is a diagram illustrating an example embodiment of a rate ccintroUer ccnfigured in accordance with theinveritimforuseinthemodulaioroffigure 16;
  • Figure 18 is a diagram illustrating another example embodrment of a rate controller configured in accordance with the invention for use in the modulator of figure 16;
  • Figure 19 is a diagram illustrating an example embodiment of a ftequency encoder configured in accordance withiheinventionforuseinthemodulatoroffigure 16;
  • Figure 20 is a logical block diagram of an example embodiment of a TDMFDM block configured in accordance with the inventionforuseinthemodulatoroffigure 16;
  • Figure 21 is a logical block diagram of another example embodiment of a TDMFDM block configured in accordance with the invention for use in the modulator of figure 16;
  • Figure 22 is a logical block diagram of an example embodiment of a frequency shifter configured in accordance withtheinventionforuseinthemodulatoroffigure 16;
  • Figure 23 is a logical block diagram of a receiver configured in accordance with the invention.
  • Figure 24 is a logical block diagram of an example embodiment of a demodulator configured in accordance with the invention lor use in thereceiver of figure 23;
  • Figure 25 is a logical block diagram of an example embodiment of an equalizer configured in accordance with the present invention for use in the demodulator of figure 24;
  • Figure 26 is a logical block diagram of an example embodiment of a wireless communication device configured in accordance with the invention.
  • Figure 27 is a flow chart illustrating an exemplary method for recovering bandwidth in a wireless communication network in accordance with the invention.
  • Figure 28 is a diagram illustrating an exemplary wireless communication network in which the method of figure 27 can be implemented
  • Figure 29 is a logical block diagram illustrating an exemplary transmitter that can be used in the network of figure 28 to implement the method of figure 27;
  • Figure 30 is a logical block diagram illustrating another exemplary trarismitter that can be used in the network of figure 28 to implement the method of figure 27;
  • Figure 31 is a diagram illustrating another exemplary wireless communication network in which the method of figure 27 can be implemented.
  • Figure 32 is a diagram illustrating an exemplary EEC encoder and exemplary FEC decoder
  • Figure 33 is a diagram illustrating an example FEC encoder c ⁇ ifigured in accordance with me embodiment
  • Figure 34 is a diagram illustrating a FEC encoder configured to generated a code word ftom input data in accordance with one embodiment
  • Figure 35 is a diagram illustrating the encoder of figure 34 in more detail
  • Figure 36 is a diagram illustrating further detail for the encoder of figure 34;
  • Figure 37 is a diagram illustrating an example parity node processor lhat can be included in a decoder in accordance with one embodiment;
  • Figure 38 is a diagram illustrating one node of Hie parity node processor of figure 37;
  • Figure 39 is adiagram illustrating the paritynode processor of Figure 37 inmore detail.
  • Figure 40 is a diagram illustrating a parity node processor configured in accordance with one embodiment
  • the systems and methods described herein provide various communication methodologies that enhance performance of transmitters and receivers with regard to various common problems that afflict such systems and that allow the transmitters and/or receivers to be reconfigured for optimal performance in a variety of systems.
  • the systems and methods described herein define a channel access protocol that uses a common wideband communication channel for all communication cells.
  • the wideband channel is then divided into a plurality of sub-channels. Different sub-channels are then assigned to one or more users within each cell But the base station, or service access point, within each ceU transmits one message lhat occupies the entire bandwidth of the wideband channel.
  • Each user's communication device receives the entire message, but only decodes 1hose portions of the message that reside in sub-channels assigned to the user.
  • sub-channels For a point-to-point system, for example, a single user may be assigned all sub-channels and, therefore, has the full wide band channel available to them In awireless WAN, on the oflier hand, the sub-channels maybe divided among apiurality of users.
  • a receiver When a receiver receives the communication, demodulates it, and then decodes it, it will recreate a stream 104 of data symbols 106 as illustrated in figure 2. But the receiver will also receive multipath versions 108 of the same data stream. Because multipath data streams 108 are delayed in time relative to the data stream 104 by delays dl,d2,d3, and d4, for example, they may combine destructively with data stream 104.
  • a delay spread 4 is defined as the delay fiom reception of data stream 104 to the reception of the last multipath data stream 108 that interferes with the reception of data stream 104.
  • the delay spread d s is equal to delay d4.
  • the delay spread d s will vary for different environments.
  • the delay spread d s will be longer.
  • the delay spread 4 can be as long as 20 microseconds. Using the 10ns symbol duration of equation (1), this translates to 2000 symbols.
  • lOOMHz very large bandwidth
  • multipath interference can cause a significant amount of interference at the symbol level tor which adequate compensation is difficult to achieve. This is true even tor indoor environments.
  • the delay spread d s is significantly shorter, typically about 1 microsecond.
  • the multipath eflect can be reduced to a much more manageable level For example, if the bandwidth b of each sub-channel 202 is 500KHz, then the symbol duration is 2 microseconds. Thus, the delay spread d s for each sub-channel is equivalent to only 10 symbols (outdoor) or half a symbol (indoor). Thus, by breaking up a message that occupies the entirebandwidrh5into discrete messages, each occupying the bandwidth b of sub-channels 202, a very wideband signal that suffers fiom relatively minor multipath effects is created.
  • the overall bandwidth B is segmented into Nsub-charmels center at frequenciesX to fm-
  • the sub ⁇ channel 202 that is immediately to the right oifc is onset ftomye by b/2, where b is the bandwidth of each sub-channel 202.
  • the next sub-channel 202 is offset by 3b/2, the next by 5b/2, and so oa To the left of/e, each sub-channel 202 is offset by -b/2, -3b/2, -5b/2, etc.
  • sub-channels 202 are non-overlapping as this allows each sub-channel to be processed independently in the receiver.
  • a roll-off factor is preferably applied to the signals in each sub-channel in apulse-shaping step.
  • the effect of such apulse-shaping step is illustrated in figure 3 by the r»n-rectangular shape of the pulses in each sub-channel 202.
  • main lobe 402 comprises almost all of signal 400. But some of the signal also resides in side lobes 404, which stretch out indefinitely in both directions from main lobe 402. Side lobes 404 make processing signal 400 much more difficult, which increases the complexity of the receiver.
  • Applying a roll-off factor r, as in equation (2), causes signal 400 to decay faster, reducing the number of side lobes 404.
  • increasing the roll-off factor decreases the length of signal 400, Le., signal 400 becomes shorter in time.
  • including the roll-off factor also decreases the available bandwidth in each sub-channel 202. Therefore, r must be selected so as to reduce the number of side lobes 404 to a sufficient number, e.g., 15, while still maximizing the available bandwidth in each sub-channel 202.
  • IFFT Inverse Fast Fourier Transfomi
  • N(r) is not an integer
  • B can be made slightly wider than MfT to compensate.
  • lhat r be chosen so foatN(r) is approximately an integer.
  • figure 6 illustrates an example communication system 600 comprising a plurality of cells 602 that each use a common wideband communication channel to communicate with communication devices 604 within each cell 602.
  • the common communication channel is a wideband communication channel as described above
  • Each communication cell 602 is defined as the coverage area of a base station, or service access point, 606 within the cell
  • a base station or service access point
  • the term base station will be used generically to refer to a device that provides wireless access to the wireless communication system for a plurality of communication devices, whether the system is a line of sight, indoor, or outdoor system.
  • each cell 602 uses the same communication channel, signals in one cell 602 must be distinguishable from signals in adjacent cells 602.
  • adjacent base stations 606 use different synchronization codes according to a code reuse plan Ih figure 6, system 600 uses a synchronization code reuse factor of 4, although the reuse factor can vary depending on the application
  • the synchronization code is periodically inserted into a communication from a base station 606 to a communication device 604 as illustrated in figure 7.
  • a predetermined numberof data packets 702 in this case two
  • the particular synchronization code 704 is inserted into the information being transmitted by each base station 606.
  • a synchronization code is a sequence of data bits known to both the base station 606 and any communication devices 604 with which it is communicating The synchronization code allows such a communication device 604 to synchronize its timing to that ofbase station 606, which, in turn, allows device 604 to decode the data property.
  • synchronization code 1 (SYNCl) is inserted into data stream 706, which is generated by base station 606 in cell 1, after every two packets 702; in cell 2 SYNC2 is inserted after every two packets 702; in cell 3 SYNC3 is inserted; and in cell 4 SYNC4 is inserted
  • SYNCl synchronization code 1
  • an example wideband communication channel 500 for use in communication system 600 is divided into 16 sub-channels 502, centered at fiequencies fo to fe
  • a base station 606 at the center of each communication cell 602 transmits a single packet occupying the whole bandwidth B of wideband channel 500.
  • Such a packet is illustrated by packet 504 in figure 5B.
  • Packet 504 comprises sur>packets506toareencc>dedwifiiafiequency offset corresponding to one of sub-channels 502.
  • Sub-packets 506 in effect define available time slots in packet 504.
  • sub-channels 502 can be said to define available frequency bins in communication channel 500.
  • the resources available in communication cell 602 are time slots 506 and frequency bins 502, which can be assigned to different communication devices 604 within each cell 602.
  • frequency bins 502 and time slots 506 can be assigned to 4 different communication devices 604 within a cell 602 as shown in figure 5.
  • Each communication device 604 receives the entire packet 504, but only processes those frequency bins 502 and/or timeslots 506 that are assigned to it
  • each device 604 is assigned non-adjacent frequency bins 502, as in figure 5B. This way, if interference corrupts the information in a portion of communication channel 500, then the effects are spread across all devices 604 within a cell 602.
  • each device 604 can still be recreated from the unaffected information received in other frequency bins. For example, if interference, such as fading, corrupted the information in bsnsf o -f 4 then each user 14 loses one packet of data. But each user potentially receives three unaffected packets from the other bins assigned to them. Ultimately, the unaffected data in the other three bins provides enough information to recreate the entire message for each user. Thus, frequency diversity can be achieved by assigning non-adjacent bins to each of multiple users.
  • the coherence bandwidth is approximately equal to 1/cL,.
  • the non-adjacent frequency bands assigned to a user are preferably separated by at least IMHz. It is even more preferable, however, if the coherence bandwidth plus some guard band to ensure sufficient frequency diversity separate the non-adjacent bins assigned to each user. For example, it is preferable in certain implementations to ensure that at least 5 times the coherence bandwidth, or 5MHz in the above example, separates the non-adjacent bins.
  • Another way to provide frequency diversity is to repeat blocks of data in frequency bins assigned to aparticular user that are separated by more than the coherence bandwidth.
  • data block a can be repeated in the first and third sub-channels 202 and data block b can be repeated in the second and fourth sub-channels 202, provided the sub-channels are sufficiently separated in frequency.
  • the system can be said to be using a diversity length factor of 2.
  • the system can similariybe configured to implement otiier diversity lengths, e.g., 3, 4,..., /.
  • Spatial diversity can comprise transmit spatial diversity, receive spatial diversity, or both.
  • transmit spatial diversity 1he transmitter uses a plurality of separate transmitters and a plurality of separate antennas to transmit each message. In other words, each transmitter transmits the same message in parallel. The messages are then recdvedtrceitetrans ⁇ ttersarxlcxjrnbinedin the receiver. Because the parallel transmissions travel different paths, if one is affected by lading, the others will likely not be affected Thus, when they are combined in the receiver, the message should be recoverable even ifone or more of Ihe other transmission paths experienced severe fading.
  • Receive spatial diversity uses aplurality of separate receiveis and aplurality of separate antennas to receive a single message. If an adequate distance separates the antennas, then the transmission path for the signals received by the antennas will be different Again, this difference in the transmission palhswiU provide imperviousness to fadhg when the signals from the receivers are combined
  • Transmit and receive spatial diversity can also be combined within a system such as system 600 so that two antennas are used to transmit and two antennas are used to receive.
  • each base station 606 transmitter can include two antennas, for transmit spatial diversity
  • each communication device 604 receiver can include two antennas, for receive spatial diversity. If only transmit spatial diversity is implemented in system 600, then it can be implemented in base stations 606 or in communication devices 604. Similarly, if only receive spatial diversity is included in system 600, then it can be implemented in base staticms 606 or corrimu ⁇ cation devices 604.
  • the number of communication devices 604 assigned frequency bins 502 and/or time slots 506 in each cell 602 is preferably programmable in real time.
  • the resource allocation within a communication cell 602 is preferably programmable in the face of varying external conditions, i.e., multrpath or adjacent cell interference, and varying requirements, i.e., bandwidth requirements for various users within the cell
  • varying external conditions i.e., multrpath or adjacent cell interference
  • varying requirements i.e., bandwidth requirements for various users within the cell
  • bins assigned to a particular user can be used for both the forward and reverse link
  • some bins 502 can be assigned as the forward link and some can be assigned for use on the reverse link, depending on the implementation
  • each commiinication cell 602 is preferably reused in each commiinication cell 602, with each cell 602 being differentiated by a unique synchronization code (see discussion below).
  • system 600 provides increased immunity to multipath and fading as well as increased bandwidth due to flie elimination offiequericy reuse requirements.
  • FIG 8 illustrates an example embodiment of a synchronization code correlator 800.
  • a device 604 in cell 1 receives an incoming ⁇ jmmunicarion from the cell 1 base station 606, it compares the incoming data with SYNQ in correlator 800.
  • the device scam the incoming data Iiying to correlate the data with the known synchronization code, in this case SYNQ
  • correlator 800 matches the incoming data to SYNQ it generates a correlation peak 804 at the output Mi ⁇ rpath versions of the data will also generate correlation peaks 806, although these peaks 806 are generally smaller than correlation peak 804.
  • correlator 800 can then use the correlation peaks to perform channel estimation, which allows the device to adjust for the multipath using an equalizer.
  • correlator 800 receives a data stream comprising SYNCl , it will generate correlation peaks 804 and 806. If, on the other hand, the data stream comprises SYNC2, for example, then no peaks will be generated and the device will essentially ignore the incoming communication.
  • a data stream that comprises SYNC2 will not create any correlation peaks, it can create noise in correlator 800 that can prevent detection of correlation peaks 804 and 806.
  • One way to minimize the noise created in correlator 800 by signals from adjacent cells 602, is to configure system 600 so that each base station 606 transmits at the same time.
  • the svrKhtOrrizaticniaxies ( ⁇ n ) preferably be generated in such a manner that only the synchronization codes 704 of adjacent cell data streams, e.g., streams 708, 710, and 712, as opposed to packets 702 within those streams, will interfere with detection of the correct synchronization code 704, e.g., SYNCl.
  • the synchronization codes can then be further configured to eliminate or reduce the interference.
  • the noise or interference caused by an incorrect synchronization code is a function of the cross correlation of that synchronization code with respect to the correct code.
  • the noise level will be virtually zero as illustrated in figure 9 by noise level 902. Therefore, a preferred embodiment of system 600 uses synchronization codes that exhibit ideal cross correlation, Le., zero.
  • the ideal cross correlation of the synchronization codes covers a period /that is sufficient to allow accurate detection of multipath 906 as well as multipath correlation peaks 904. This is important so that accurate channel estimation and equalization can take place.
  • period / the noise level 908 goes up, because the data in packets 702 is random and will exhibit low cross correlation with the synchronization code, e.g., SYNCl.
  • the synchronization code e.g., SYNCl.
  • period / is actually slightly longer then the multipath length in order to ensure that the multipath can be detected a Synchronization code generation
  • each code must have ideal, or zero, cross correlation with each of the other codes used in adjacent cells 602. Therefore, in one example embodiment of a method for generating synchronization codes exhibiting the properties described above, the process begins by selecting a "perfect sequence" to be used as the basis for the codes.
  • a perfect sequence is one that when correlated with itxlfproduces a number equal to the number of bits in the sequence. For example:
  • the first synchronization code is preferably generated in one embodiment by repeating the sequence 4 times.
  • Each sample bin is separated by 1/(4LxI), where T ⁇ s the symbol duration
  • each sample bin is separated by 1/(16x1) in the frequency domain.
  • TRACES 2-4 illustrate the next three synchronization codes. As can be seen, the samples for each subsequent synchronization code are shifted by one sample bin relative to the samples for the previous sequence. Therefore, none of Hie sequences interfere with each other.
  • the final step in generating each synchronization code is to append the copies of the lastMsamples, where Mis the length of the muttipatb, to the front of each code. This is done to make the convolution with the muMpath cyclic and to allow easier detection of the multipart].
  • synchronization codes can be generated from more flian one perfect sequence using the same methodology. For example, a perfect sequence can be generated and repeated four times and flien a second perfect sequence can be generated and repeated four times to get a n factor equal to ⁇ ght The resulting sequence can then be shifted as described above to create the synchronization codes, b. Signal Measurements Using Synchronization Codes
  • FIG. 11 illustrates another example embodiment of a wireless communication system 1100 comprising communication cells 1102, 1104, and 1106 as well as communication device 1108, which is in communication wifli base station 1110 of cell 1102 but also receiving communication from base stations 1112 and 1114 of cells 1104 and 1106, respectively.
  • communications from base station 1110 comprise synchronization code SYNCl
  • communications from base station 1112 and 1114 comprise SYNC2 and SYNC3 respectively
  • Hien device 1108 will effectively receive the sum of these three synchronization codes. This is because, as explained above, base stations 1110, 1112, and 1114 are configured to transmit at the same time. Also, the synchronization codes arrive at device 1108 at almost the same time because they are generated in accordance with the description above.
  • the synchronization codes SYNCl, SYNC2, and SYNC3 exhibit ideal cross correlation Therefore, when device 1108 correlates the sum x of codes SYNCl, SYNC2, and SYNC3, the latter two will not interfere with proper detection of SYNCl by device 1108.
  • the sum x ( ⁇ n also be used to determine important signal characteristics, because the sum x is equal to the sum of the synchronization code signal in accordance with the following equation:
  • the energy computed from the sum (SYNC2 + SYNC3) is equal to the noise or interference seen by device 1108. Since the purpose of correlating the synchroriizaticffi ⁇ x)dehdewce 1106 is to extrad the energy in SYNC 1, device 1108 also has the energy in the signal from base station 1110, i.e., the energy represented by SYNCl. Therefore, device 1106 can use the energy of SYNC 1 and of (S YNC2 + S YNC3) to perform a signal-to-interference measurement for the communication channel over which it is communicating with base station 1110. The result of the measurement is preferably a signal-to-interference ratio (SIR).
  • SIR signal-to-interference ratio
  • the SIR measurement can then be communicated back to base station 1110 tor purposes that will be discussed below.
  • the ideal cross correlation of the synchronization codes also allows device 1108 to perform extremely accurate determinations of the Channel Impulse Response (CIR), or channel estimation, from the correlation produced by correlator 800. This allows for highly accurate equalization using low cost, low complexity equalizers, thus overcoming a significant draw back of conventional systems. 4. Sub-Channel Assignments
  • the SIR as determined by device 1108 can be communicated back to base station lllOforusein the assignment of channels 502.
  • the SIR for each sub-channel 502 can be measured and commumcsted back to base station 1110.
  • sub-channels 502 can be divided into groups and a SIR measurement for each group can be sent to base station 1110.
  • FIG HA shows a wideband communication channel 1200 segmented into sub-channels fo tofc
  • Sub-channels ⁇ tofy are then grouped into 8 groups Gl to G8.
  • device 1108 and base station 1110 communicate over a channel such as channel 1200.
  • Sub-channels in the same group are preferably separated by as many sub-channels as possible to ensure diversity.
  • sub-channels within the same group are 7 sub-channels apart, e.g, group Gl comprises ⁇ and/i ? .
  • Device 1102 reports a SIR measurement for each ofthe groupsGl toG8. These SIR measurements are preferably compared with a threshold value to determine which sub-channels groups are useable by device 1108. This comparison can occur in device 1108 or base station 1110. If it occurs in device 1108, then device 1108 can simply report to base station 1110 which sub-channels groups are useable by device 1108.
  • figure 12B illustrates the situation where two communication devices corresponding to User 1 and User 2 report SIR levels above the threshold for groups Gl, G3, G5, and G7.
  • Base station 1110 preferably then assigns sub-channel groups to User 1 and User 2 based on the SIR reporting as illustrated in Figure 12B.
  • base station 1110 also preferably assigns them based on the principles of frequency diversity. In figure 12B, therefore, User 1 and User 2 are alternately assigned every other "good" sub-channel.
  • the assignment of sub-channels in the frequency domain is equivalent to the assignment of time slots in the 13, two users, User 1 and User 2, receive packet 1302 transmitted ova communication channel 1200.
  • Figure 13 also illustrated the sub-channel assignment of figure 12B. While figures 12 and 13 illustrate sub-channel/time slot assignment based on SIR for two users, the principles illustrated can be extended lor any number of users. Thus, a packet within cell 1102 can be received by 3 or more users. Although, as the number of available subchannels is reduced due to high SIR, so is the available bandwidth. In other words, as available channels are reduced the ni ⁇ nb ⁇ ofusers that can gam aa ⁇ to corn ⁇ 1200 is also reduced.
  • sub-channel assignment can be coordinated between cells, such as cells 1102, 1104, and 1106 in figure 11, in order to prevent interference from adjacent cells.
  • communication device 1108 is near the edge of cell 1102
  • device 1118 is near the edge of cell 1106, then the two can interfere with each other.
  • the SIR measurements lhat device 1108 and 1118 report back to base stations 1110 and 1114, respectively, will indicate that the interference level is too high.
  • Base station 1110 can then be configured to assign only the odd groups, i.e., Gl, G3, G5, etc., to device 1108, while base station 1114 can be configured to assign the even groups to device 1118.
  • the two devices 1108 and 1118 will then not interfere with each other due to the coordinated assignment of sub-channel groups.
  • Assigning the sub-channels in this manner reduces the overall bandwidth available to devices 1108 and 1118, respectively. In this case the bandwidth is reduced by a factor of two. But it should be remembered that devices operating closer to each base station 1110 and 1114, respectively, will still be able to use all channels if needed Thus, it is only devices, such as device 1108, that are near the edge of a cell that will have the available barxlwidth reduced Cbnrrast this with a CDMA system, for example, in which the bandwidth for all users is reduced due to the spreading techniques used in such systems, by approximately a factor of 10 at all times. It can be seeri, therefore, that the systems and methods for wireless communication ova a wide bandwidth channel using a plurality of sub-channels not only improves the quality of service, but can also increase Hie available bandwidth significantly.
  • the sub-channels can be divided by three.
  • device 1108, for example can be assigned groups Gl, G4, etc
  • device 1118 can be assigned groups G2, G5, etc.
  • device 1116 can be assigned groups G3, G6, etc.
  • the available bandwidth for these devices, i.e., devices near the edges of cells 1102, 1104, and 1106, is reduced by a factor of 3, but this is still bett ⁇ than a CDMA system, for example.
  • acommunication device such as device 1108, reports the SIR for all sub-channel groups Gl to G8.
  • the SlRs reported are then compared in step 1404, to a threshold to determine if the SIR is sufficiently low for each group.
  • device 1108 can make the determination and simply report which groups are above or below the SIR fhreshokTIf the " SIR levels ate good for each group, then base station 1110 can make each group available to device 1108, in step 1406.
  • device 1108 preferably measures the SIR level and updates base station 1110 in case the SIR as deteriorated. For example, device 1108 may move fiorn near the center of cell 1102 toward the edge, where interference from an adjacent cell may affect the SIR for device 1108.
  • base station 1110 can be preprogrammed to assign either the odd groups or the even groups only to device 1108, which it will do in step 1408.
  • Device 1108 then reports the SIR measurements tor the odd or even groups it is assigned in step 1410, and they are again compared to a SIR threshold in step 1412.
  • step 1408 tiie assignment of odd or even groups in step 1408 preferably corresponds with the assignment of the opposite groups to device 1118, by base station 1114. Accordingly, when device 1108 reports the SIR measurements for whichever groups, odd or even, are assigned to it, the comparison in step 1410 should reveal that the SIR levels are now below the threshold level. Thus, base station 1110 makes the assigned groups available to device 1108 instep 1414. Again, device 1108 preferablyperiodically updates the SIRmeasurements by returning to step 1402.
  • step 1410 It is possible for Hie comparison of step 1410 to reveal that the SIR levels are still above the threshold, which should indicate that a third device, e.g., device 1116 is still intertMig with device 1108.
  • base station 1110 can be preprogrammed to assign every third group to device 1108 in step 1416. This should correspond with the corresponding assignments of non-interfering channels to devices 1118 and 1116 by base stations 1114 and 1112, respectively.
  • device 1108 should be able to operate on the sub-channel groups assigned, i.e., Gl , G4, etc., without undue interference.
  • device 1108 preferablyperiodicallyupdates the SIRmeasurements by returning to step 1402.
  • a third comparison step (not shown) can be inplemented after st ⁇ 1416, to ensure that the groups assigned to device 1408 posses an adequate SIR level for proper operation Moreover, if there are more adjacent cells, i.e., if it is possible for devices in a 4 th or even a 5 h adjacent cell to interfere with device 1108, then the process of figure 13 would continue and the sub-channel groups would be divided even further to ensure adequate SIR levels on the sub-channels assigned to device 1108.
  • the SIR measurements can be used in such a manner as to increase the data rate and therefore restore or even increase bandwidth.
  • the transmitters and receivers used in base stations 1102, 1104, and 1106, and in devices in communication therewith, e.g., devices 1108, 1114, and 1116 respectively, must be capable of dynamically changing the symbol mapping schemes used for some or all of the sub-channeL
  • the symbol mapping scheme can be dynamically changed among BPSK, QPSK, 8PSK, 16QAM, 32QAM, etc.
  • the base station e.g., base station 11 IU
  • the base station 1108 can then determine what symbol mqpingsch ⁇ iie can be si ⁇ ported for each sub-channel group and can change the modulation scheme accoidingly.
  • Device 1108 must also change the symbol mapping scheme to correspond to that of the base stations. The change can be effected for all groups uniformly, or it can be effected for individual groups.
  • the symbol mapping scheme can be changed on just the forward link, just the reverse link, or both, depending on the embodiment
  • the systems and methods described herein provide the ability to maintain higher available bandwidths with higher performance levels than conventional systems.
  • the systems and methods described thus far must be capable of implementation in a cost effect and convenient manner.
  • the implementation must include reconfigurability so that a single device can move between different types of communication systems and still maintain optimum performance in accordance with the systems and methods described herein.
  • the following descriptions detail example high level embodiments of hardware implementations configured to operate in accordance with the systems and methods described herein in such a manner as to provide the capability just described above. 5.
  • FIG. 15 is logical block diagram illustrating an example embodiment of a transmitter 1500 configured for wireless communication in accordance with the systems and methods described above.
  • the transmitter could, for example be within a base station, e.g., base station 606, or within a communication device, such as device 604.
  • Transmitter 1500 is provided to illustrate logical components that can be included in a transmitter configured in accordance with the systems and methods described herein It is not intended to limit the systems and methods for wireless communication over a wide bandwidth channel using a plurality of sub-channels to any particular transmitter configuration or any particular wireless communication system.
  • transmitter 1500 cc>mprisesaserial-to ⁇ )araUelcx5nveiterl504ccMguredto receive a serial data stream 1502 comprising a data rate R
  • Serial-to-parallel converter 1504 converts data stream 1502 into Nparallel data streams 1504, whereNis the number of subch.oiels202.ttshould be rwtedtowMefce discussion that follows assumes that a single serial data stream is used, more than one serial data stream can also be used if required or desired. In any case, the data rate of each parallel data stream 1504 is then RN.
  • Each data stream 1504 is then sent to a scrambler, encoder, and i ⁇ terieaver block 1506.
  • Scrambling, encoding, and interleaving are common techniques implemented in many wireless communication transmitters and help to provide robust, secure communication. Examples of these techniques will be briefly explained for illustrative purposes.
  • Scrambling breaks up the data to be transmitted in an effort to smooth out the spectral density of the transmitted rt ⁇ ta For example, if the data comprises a long string of 1 T 1 S, there will be a spike in the spectral density. This spike can cause greater interference within the wireless communication system By breakhg up the data, the spec ⁇ density can be smoothed out to avoid any such peaks. Often, scrambling is achieved by XORing the data with arandom sequence. i ⁇ icocttng, or coding, the parallel bit streams 1504 can, for example, provide Forward Error Correction (FEQ. The purpose of FEC is to improve the capacity of a communicarion channel by adding some carefully designed redundant information to the data being transmitted through the channel.
  • FEQ Forward Error Correction
  • Convolutional coding and block coding are the two major forms of channel coding.
  • Convolutional codes operate on serial data, one or a few bits at a time.
  • Block codes operate on relatively large (typically, up to a couple ofhundred bytes) message blocks.
  • convolutional encoding or turbo coding with Viterbi decoding is a EEC technique that is particularly suited to a channel in which the transmitted signal is corrupted mainly by additive white gaussian noise (AWGN) or even a channel that simply experiences fading.
  • AWGN additive white gaussian noise
  • Convolutional codes are usually des ⁇ ibed using two parameters: the code rate and the constraint length.
  • the code rate, k/n is expressed as a ratio of the number of bits into the convolutional encoder (k) to the number of channel symbols (n) output bytheconvoMonalencxxlermagivenencodercycle.
  • Acommcnco ⁇ rate is 1/2, which means that 2 symbols are produced for every 1-bit input into the coder.
  • the constraint length parameter, K denotes the 'length" of the convolutional encoder, i.e. how many fc-bit stages are available to feed the combinatorial logic that produces the output symbols.
  • Closely related to AT is the parameter m, which indicates how many encoder cycles an input bit is retained and used for encoding after it first appears at the input to the convolutional encoder.
  • the m parameter can be thought of as the memory length of the encoder.
  • Interleaving is used to reduce the effects of fading. Interleaving mixes up the order of the data so that if a fade interferes with a portion of the transmitted signal, the overall message will not be effected. This is because once the message is de-interieaved and decoded in tiie receiver, the data lost will comprise non-contiguous portions of the overall message. In other words, the fade will interfere with a contiguous portion of the interleaved message, but when the message is de-interleaved, the interfered with portion is spread throughout the overall message. Using techniques such as FEC, the missing information can then be filled in, or the impact of the lost datamayjust be negligible.
  • each parallel data stream 1504 is sent to symbol mappers 1508.
  • Symbol mappers 1508 apply the requisite symbol mapping, e.g., BPSK, QPSK, etc., to each parallel data stream 1504.
  • Symbol mappers 1508 are preferably programmable so that the modulation applied to parallel data streams can be changed, for example, in response to the SIR reported for each sub-channel 202. It is also preferable, that each symbol mapper 1508 be separately programmable so that the optimum symbol mapping scheme for each sub-channel can be selected and applied to each parallel data stream 1504.
  • parallel data streams 1504 are sent to modulators 1510. Important aspects and features of example embodiments of modulators 1510 are described below.
  • parallel datastreams 1504 are sent to summer 1512, which is configured to sum the parallel data streams and thereby generate a single serial data stream 1518 comprising each of the individually processed parallel data streams 1504.
  • Serial data stream 1518 is thai sent to radio module 1512, where it is modulated with an RF carrier, amplified, and transmitted via antenna 1516 according to known techniques.
  • the transmitted signal occupies the entire bandwidth B of communication channel 100 and comprises each of the discrete parallel data streams 1504 encoded onto their respective sub-channels 102 within bandwidth B. Encoding parallel data streams 1504 onto the appropriate sub-channels 102 reqiiires that each paraflel data stream 1504 be shified in irequencybyanapprcpiateorrsetThisisachievedrnmodulator lSlO.
  • Figure 16 is a logical block diagram of an example embodiment of a modulator 1600 in accordance with the systems and methods described herein.
  • modulator 1600 takes parallel data streams 1602 performs Time Division Modulation (TDM) or Frequency Division Modulation (FDM) on each data stream 1602, filters them using filters 1612, and then shifts each data stream in frequency using frequency shifter 1614 so that they occupy the appropriate sub-channel. Filters 1612 apply the required pulse shaping, i.e., they apply the roll-off factor described in section 1. The frequency shifted parallel data streams 1602 are then summed and transmitted. Modulator 1600 can also include rate controller 1604, frequency encoder 1606, and interpolators 1610. All of the components shown in figure 16 are des ⁇ ibed in more detail in the following paragraphs and in conjunction with figures 17-23.
  • TDM Time Division Modulation
  • FDM Frequency Division Modulation
  • Rate control 1700 is used to control the data rate of each parallel data stream 1602.
  • the data rate is halved by repeating data streams d(0) to d(7), for example, producing streams a(0) to a(15) in which a(0) is the same as a(8), a(l) is the same as a(9), etc.
  • Figure 17 also illustrates that the effect of repeating the data streams in this manner is to take the data streams that are encoded onto the first 8 sub-channels 1702, and duplicate them on the next 8 sub-channels 1702.
  • 7 sub-channels separate sub-channels 1702 ocmprising the same, or duplicate, data streams.
  • the other sub-channels 1702 carrying the same data will likely not be effected, i.e., there is frequency diversity between the duplicate data streams. So by sacrificing data rate, in this case half the data rate, more robust transmission is achieved Moreover, the robustness provided by duplicating the data streams d(0) to d(J) can be further enhanced by applying scrambling to the duplicated data streams via scramblers 1708.
  • the data rate can be reduced by more than half, e.g, by four or more.
  • the data rate can also be reduced by an amount other than half
  • information from one data stream can be encoded on a first sub-channel
  • information from a second data stream can be encoded on a second data channel
  • the sum or difference of the two data streams can be encoded on a third channel.
  • proper scaling will need to be applied to the power in the third channel.
  • the power in the third channel can be twice the power in the first two.
  • rate controller 1700 is programmable so that the data rate can be changed responsive to certain operational factors. For example, if the SIR reported for sub-channels 1702 is low, then rate controller 1700 can be programmed to provide more robust t ⁇ kisrri ⁇ ssion via repetition to ensure that no data is lost due to interference. Additionally, different types of wireless communication system, e.g., indoor, outdoor, line-of-sight, may require varying degrees of robustness. Thus, rate controller 1700 can be adjusted to provide the minimum required robustness tor the particular type of communication system. This type of programmability not only ensures robust communication, it can also be used to allow a single device to move between communication systems and maintain superior rxrlbrmance.
  • Figure 18 illustrates an alternative example embodiment of a rate ⁇ ntroU ⁇ 1800 in accc ⁇ dance with the systems and methods described.
  • rate controller 1800 the data rate is increased instead ofdecreased This is axcmplished using serial-to- parallel converters 1802 to convert each data streams d(0) to d(15), for example, into two data streams.
  • Delay circuits 1804 then delay one of the two data streams generated by each serial-to-parallel converter 1802 by 1/2 a symbol.
  • data streams d(0) to d(15) are transformed into data streams a(0) to a(31).
  • the data streams generated by a particular serial-to-parallel converter 1802 and associate delay circuit 1804 must then be summed and encoded onto the appropriate sub-channel.
  • data streams a(0) and a(l) must be summed and encoded onto the first sub- channeL
  • the data streams are summed subsequent to each data stream being pulsed shaped byafiher 1612.
  • rate controller 1604 is preferably programmable so that the data rate can be incieased, as in rate controller 1800, or decreased, as in rate controller 1700, as required by a particular type of wireless communication system, or as required by the communication channel conditions or sub-channel conditions.
  • filters 1612 are also preferably programmable so that they can be configiired to apply pulse shaping to data streams ⁇ (Q) to a ⁇ l), for example, and then sum the appropriate streams to generate the appropriate number of parallel data streams to send to frequency shifter 1614.
  • the advantage of increasing the data rate in the manner illustrated in figure 18 is that higher symbol mapping rates can essentially be achieved, without changing the symbol mapping used in symbol mappers 1508.
  • the summed streams are shifted in frequency so that they reside in 1hear ⁇ ropriatesurHtemeL But because the number of bits per each symbol has been doubled, the symbol mapping rate has been doubled.
  • a 4QAM symbol mapping can be converted to a 16QAM symbol mapping, even if the SIR is too high for 16QAM symbol mapping to oiherwise be applied.
  • programming rate controller 1800 to increase the data rate in the manner illustrated in figure 18 can increase the symbol mapping even when channel conditions would otherwise not allow it, which in turn can allow a communication device to maintain adequate or even superior performance regardless of the type of communication system
  • Figure 19 illustrates one example embodiment of a frequency encoder 1900 in accordance with the systems and methods described herein Similar to rate encoding frequency encoding is preferably used to provide increased communication robustness.
  • Th fluency e ⁇ Ser 1900 the sum or difference of multiple data streams are encoded onto each sub-channel. This is accomplished using addeis 1902 to sum data streams d(0) to d(7) with data streams d(8) to d(15), respectively, while adders 1904 subtract data streams d(0) to d(7) fiorn data streams d(8) to d(15), respectively, as shown.
  • data streams a(0) to a(15) generated by adders 1902 and 1904 comprise information related to more than one data streams d(0) to d(15).
  • a(0) comprises the sum of d(0) and d(8), i.e., d(0) + d(8), while a(8) comprises d(8) - d(0). Therefore, if either a(0) or a(8) is not received due to fading, for example, then both of data streams d(0) and d ⁇ ) can still be retrieved from data stream a(8).
  • the relationship between data stream d(0) to d(15) and a(0) to a(15) is a matrix relationship.
  • the receiver knows the correct matrix to apply, it can recover the sums and differences of d(0) to d(15) from a(0) to a(15).
  • frequency encoder 1900 is programmable;, so that it can be enabled and disabled in order to provided robustness when required
  • addeis 1902 and 1904 are programmable also so that different matrices can be appkedtod(0)tod(15).
  • TDM/FDM blocks 1608 perform TDM or FDM on the data streams as required by the particular embodiment
  • FIG 20 illustrates an example embodiment of a TDM/FDM block 2000 configured to perform TDM on a data stream.
  • TDM/FDM block 2000 is provided to illustrate the logical components that can be included in a TDM/FDM block configured to perform TDM on a data stream. Depending on the actual implementation, some of the logical components may or may not be included.
  • TDM/FDM block 2000 comprises a sub-block repeater 2002, a sub- block scrambler 2004, a sub-block terminator 2006, asub-block repeater 2008, andasync inserter 2010.
  • Sub-block repeater 2002 is configured to receive a sub-block of data, such as block 2012 comprising bits a(0) to a(3) for example. Sub-block repeater is then configured to repeat block 2012 to provide repetition, which in turn leads to more robust communication Thus, sub-block repeater 2002 generates block 2014, which comprises 2 blocks 2012. Sub-block scrambler 2004 is then configured to receive block 2014 and to scramble it, thus generating block 2016.
  • One method of scrambling can be to invert half ofblock 2014 as illustrated in blcck 2016. But oth ⁇ scrarr ⁇ ling methods ( ⁇ also be implemented depending on the embodiment
  • Sub-block terminator 2006 takes block 2016 generated by sub-block scrambler 2004 and adds a termination block 2034 to the front ofblock 2016 to form block 2018. Termination block 2034 ensures that each block can be processed independently in the receiver. Without termination block 2034, some blocks maybe delayed due to multipath, for example, and they would therefore overlap part of the next block of data But by including termination block 2034, the delayed block can be prevented from overlapping any ofthe actual data in the next block
  • Termination block 2034 can be a cyclic prefix termination 2036.
  • a cyclic prefix termination 2036 simply repeats the last few symbols ofblock 2018. Thus, for example, if cyclic prefix termination 2036 is three symbols long, then it would simply repeat the last three symbols ofblock 2018.
  • termination block 2034 can comprise a sequence of symbols that are known to both the transmitter and receiver. The selection of what type ofblock termination 2U34 to use can impact what type of equalizer is used in the receiver. Therefore, receiver complexity and choice of ec ⁇ alizers must be ccr ⁇ dered when detemiinin ⁇
  • TDM/FDM block 2000 can include a sub-block repeater 2008 configured to perform a second block repetition step in which block 2018 is repeated to form block 2020.
  • M X ⁇ tamemrxidiments, sub- block repeater can be configured to perform a second block scrambling step as well
  • TDM/FDM block 2000 comprises a sync inserter 210 configured to periodically insert an appropriate synchronization code 2032 after a predetermined number of blocks 2020 and/or to insert known symbols into each block. The purpose of synchronization code 2032 is discussed in section 3.
  • FIG. 21 illustrates an example embodiment of a TDM/FDM block 2100 configured for EDM, which comprises sub-block repeater 2102, sub-block scrambler 2104, block coder 2106, sub-block transformer 2108, sub-block terminator 2110, and sync inserter 2112.
  • sub-block repeater 2102 repeats block 2114 and generates block 2116.
  • Sub-block scrambler then scrambles block 2116, generating block 2118.
  • Sub-block coder 2106 takes block 2118 and codes it, generating block 2120. Coding block correlates the data symbols together and generates symbols b. This requires joint demodulation in the receiver, which is more robust but also more complex.
  • Sub-block transformer 2108 then performs a transformation on block 2120, generating block 2122.
  • the transformation is an IFFT of block 2120, which allows for more efficient equalizers to be used in the receiver.
  • sub-block terminator 2110 terminates block 2122, generating block 2124 and sync inserter 2112 periodically inserts a synchronization code 2126 after a certain number ofblocks 2124 and/or insert known symbols into each block.
  • sub-block terminator 2110 only uses cyclic prefix termination as described above. Again this allows for more efficient receiver designs.
  • TDM/FDM block 2100 is provided to illustrate the logical components that can be included in a TDM/FDM block configured to perform FDM on a data stream. Depending on the actual implementation, some of the logical cornponentsmay ormaynot be included Moreover, TDM/FDM block 2000 and2100 are preferably programmable so that the appropriate logical components can be included as required by a particular implementation.
  • TDM/FDM block 1608 in figure 16 be programmable so that it can be programmed to perform TDM, such as described in conjunction with block 2000, or FDM, such as described in conjunction with block 2100, as required by a particular communication system.
  • thepatallel data streams are preferably passed to interpolators 1610.
  • the parallel data streams are passed to filters 1612, which apply the pulse shaping described in conjunction with the roll-off factor of equation (2) in section 1.
  • the parallel data streams are sent to frequency shifter 1614, which is configured to shift each parallel data stream by the frequency offset associated with the sub-channel to which the particular parallel data stream is associated.
  • Figure 22 illustrates an example embodiment of a frequency shifter
  • frequency shifter 2200 in accordance with the systems and methods described herein.
  • frequency shifter 2200 comprises multipliers 2202 configured to multiply each ' " parallel data stream by the appropriate exponential to achieve the required frequency shift.
  • frequency shifter 1614 in figure 16 is programmable so that various cha ⁇ nel/sub-channel configurations can be ac ⁇ xnmodated for various different systems.
  • an IFFTblock can replace shifter 1614 and filtering can be done after the IEFT block. This type of implementation can be more efficient depending on the implementation
  • each sub-channel may be assigned to one user, or each sub-channel may carry a data stream intended for different users.
  • the assignment of sub-channels is described in section 3b. Regardless ofhow the sub ⁇ channels are assigned, however, each user will receive the entire bandwidth, comprising all the sub-channels, but will only decode those sub-channels assigned to the user. 6.
  • FIG 23 illustrates an example embodiment of a receiver 2300 that can be configured in accordance with the present invention.
  • Receiver 2300 comprises an antenna 2302 configured to receive a message transmitted by a transmitter, such as transmitter 1500.
  • a transmitter such as transmitter 1500.
  • the wide band message comprises a plurality of messages each encoded onto each of a corresponding sub-channel.
  • AU of the sub-channels may or may not be assigned to a device that includes receiver 2300; Therefore, receiver 2300 may or may not be required to decode all of the sub-channels.
  • radio receiver 2304 After the message is received by antenna 2300, it is sent to radio receiver 2304, which is configured to remove the carrier associated with the wide band communication channel and extract a baseband signal comprising the data stream transmitted by the transmitter. The baseband signal is then sent to correlator 2306 and demodulator 2308.
  • Correlator 2306 is configured to correlated with a synchronization code inserted in the data stream as described in section 3. It is also preferably configured to perform SIR and multipath estimations as described in section 3(b).
  • Demodulator 2308 is configured to extract the parallel data streams from each sub-channel assigned to the device comprising receiver 2300 and to generate a single data stream therefrom
  • FIG. 24 illustrates an example embodiment of a demodulator 2400 in accordance with the systems and methods described herein
  • Demodulator 2402 comprises a frequency shifter 2402, which is configured to apply a frequency offset to the baseband data stream so that parallel data streams comprising the baseband data stream can be independently processed in receiver 2400.
  • the output of frequency shifter 2402 is a plurality of parallel data streams, which are then preferably filtered by filters 2404.
  • Filters 2404 apply a filter to each parallel data stream that corresponds to the pulse shape applied in the transmitter, e.g., transmitter 1500.
  • an IFFT block can replace shifter 1614 and filtering can be done after the IFFT block This type ofimplementation can be mere effident depending on the implementation.
  • receiver 2400 preferably includes decimalors 2406 configured to decimate the data rate of the parallel bit streams. Sampling at higher rates helps to ensure accurate recreation of the data. But the higher the data rate, the larger and more complex equalizer 2408 becomes. Thus, the sampling rate, and flierefore the number of samples, can be reduced by decimators 2406 to an adequate level that allows for a smaller and less costly equalizer 2408.
  • Equalizer 2408 is configured to reduce the effects of multipath in recdver 2300. Its cperation will be discussed more fully below.
  • the parallel data streams are sent to de-scrambler, decoder, and de-interieaver 2410, which perform the opposite operations of scrambler, encoder, and inteiieaver 1506 so as to reproduce the original data generated in the transmitter.
  • the parallel data streams are then sent to parallel to serial converter 2412, which generates a single serial data stream firm the parallel data streams.
  • Equalizer 2408 uses the multipath estimates provided by correlator 2306 to equalize the effects of muttipaih in receiver 2300.
  • equalizer 2408 comprises Single-In Single-Out (SISO) equalizers operating on each parallel data stream in demodulator 2400.
  • SISO Single-In Single-Out
  • each SISO equalizer ⁇ n ⁇ rising equalizer 2408 receives a single input and generates a single equalized output
  • each equalizer can be a MuWpIe-M Multiple-Out (MMO) or a Multiple-In Single-Out (MISO) equalizer.
  • MMO MuWpIe-M Multiple-Out
  • MISO Multiple-In Single-Out
  • each equalizers comprising equalizer 2408 need to equalize more than one sub-channel.
  • equalizer 2408 can then generate a single output corresponding to d(l) or d(8) (MISO) or it can generate both d(l) and d(8) (MMO).
  • Equalizer 2408 can also be a time domain equalizer (TDE) or a frequency domain equalizer (FDE) amending on the embodiment
  • equalizer 2408 is a TDE if the modulator in the transmitter performs TDM on the parallel data streams, and aFDE if the modulator performs FDM
  • equalizer 2408 can be an FDE even ifTDM is used in the tiarismitter. Therefore, the preferred equalizer type should be taken into consideration when deciding what type ofblock termination to use in the transmitter. Because of power requiremerrl ⁇ it is often preferable to use FDM on the forvvard link and TDM on the reverse link in a wireless communication system.
  • demodulator 2400 are preferably programmable, so that a single device can operate in a plurality of different systems and still maintain superior performance, which is a primary advantage of the systems and methods described herein. Accordingly, the above discussion provides systems and methods for implementing a channel access protocol Ural allows the transmitter and receiver hardware to be reprogrammed slightly depending on the communication system.
  • a device when a device moves from one system to another, it preferably reconfigures the hardware, i.e. transmitter and receiver, as required and switches to a protocol stack corresponding to the new system.
  • An important part of reconfiguring the receiver is reconfiguring, or programming the equalizer because muhrpath is a main problem for each type ot system, lhe muitrpath, however, vanes depending on the type of system, which previously has meant that a different equalizer is required tor different types of communication systems.
  • the channel access protocol des ⁇ ibed in the preceding sections, however, allows for equalizers to be used that need only be reconfigured slightly for operation in various systems, a Sample Equalizer Embodiment
  • FIG 25 illustrates an example embodiment of a receiver 2500 illustrating one way to configure equalizers 2506 in accordance with the systems and methods described herein
  • one way to configure equalizers 2506 is to simply include one equalizer per channel (for the systems and methods described herein, a channel is the equivalent of a sub-channel as described above).
  • a correlator such as correlator 2306 (figure 23) can then provide equalizers 2506 with an estimate of the number, amplitude, and phase of any multiparhs present, up to some maximum number. This is also known as the Channel Impulse Response (CIR).
  • CIR Channel Impulse Response
  • the maximum number of multipaihs is determined based on design criteria for a particular implementation The more multipaths included in the CIR the more path diversity the receiver has and the more robust communication in the system will be. Path diversiry is discussed a little more fully below.
  • equalizer 2506 the CIR is preferably provided directly to equalizers 2506 tram 1he correlator (not shown). If such a correlator configuration is used, Ihen equalizers 2506 can be run at a slow rate, but the overall equalization process is relatively last For systems with a relatively small number of channels, such a configuration is therefore preferable. The problem, however, is that there is large variances in the number of channels used in different types of communication systems. For example, an outdoor system can have has many as 256 channels. This would require 256 equalizers 2506, which would make the receiver design too complex and costly. Thus, for systems with a lot of channels, the configuration illustrated in figure 25 is preferable. In receiver 2500, multiple channels share each equalizer 2506. For example, each equalizer can be shared by 4 channels, e.g., ChI -Ch4, Ch5-Ch8, etc., as illustrated in figure 25. In which case, receiver 2500 preferably comprises a memory 2502 configured to store information arriving on each channel.
  • each equalizer can be shared by 4
  • Memory 2502 is preferably divided into sub-sections 2504, which are each configured to store information for a particular subset of channels. Information for each channel in each subset is then alternately sent to the appropriate equalizer 2506, which equalizes the information based on the CIR provided for that channeL In ftiis case, each equalizer must run much taster than it would if there was simply one equalizer per channel. For example, equalizers 2506 would need to run 4 or more times as last in order to effectively equalize 4 channels as opposed to 1. In addition, extra memory 2502 is required to buffer the channel information But overall, the complexity of receiver 2500 is reduced, because there are fewer equalizers. This should also lower the overall cost to implement receiver 2500.
  • memory 2502 and the number of channels that are sent to a particular equalizer is programmable.
  • receiver 2500 can be reconfigured for the most optimum operation for a given system.
  • receiver 2500 can preferably be reconbgured so that there are fewer, even as tew as 1, enamel per equalizer.
  • the rate at which equalizers 2506 are run is also preferably programmable such Ihat equalizers 2506 can be ⁇ in at Ihe ⁇ timum rate for Ihe number of cramels being equalized
  • each equalizer 2506 is equalizing multiple channels, then the CIR for those multiple paths must alternately be provided to each equalizer 2506.
  • a memory (not shown) is also included to buffer the CIR information for each channel.
  • the appropriate QR information is thmsentto each equalizer fiom the QRmernory (not shown) when the corresponding channel information is being equalized
  • the QR memory (not shown) is also preferably programmable to ensure optimum operation regardless of what type of system receiver 2500 is operating in
  • the number of paths used by equalizers 2506 must account for the delay spread d s in the system.
  • the communication channel can comprise a bandwidth of 125 Mega Hertz (MHz), e.g., the channel can extend from 5.725 GHz to 5.85GHz.
  • each subchannel will have a bandwidth of approximately 215 kilohertz (KHz), which provides approximately a 4.6 microsecond symbol duration Since the worst case delay spread d s is 20 microseconds, the numberofpaths used by equalizers 2504 can be set to amaximumof5.
  • KHz kilohertz
  • a sixth path can be included so as to completely cover the delay spread ck however, 20 microseconds is the worst case.
  • a delay spread d, of 3 microseconds is a more typical value. In most instances, therefore, the delay spread 4 will actually be shorter and an extra path is not needed Alternatively, fewer sub-channels can be used, thus providing a larger symbol duration, instead of using an extrapalh. But again, this would typically not be needed
  • equalizers 2506 are preferably configurable so that they can be reconfigured for various communication systems.
  • the number of paths used must be sufficient regardless of the type of communication system. But this is also dependent on the number of sub-channels used If, for example, receiver 2500 went from operating in the above described outdoor system to an indoor system, where the delay spread 4 is on the order of 1 microsecond then receiver 2500 can preferably be reconfigured for 32 subchannels and 5 paths. Assuming the same overall bandwidth of 125 MHz, the bandwidth of each sub-channel is approximately 4 MHz and the symbol duration is approximately 250 nanoseconds.
  • Figure 26 illustrates an example embodiment of a wireless communication device in accordance with the systems and methods described herein.
  • Device 2600 is, lor example, a portable communication device configured for operation in a plurality of indoor and outdoor communication systems.
  • device 2600 comprises an antenna 2602 for transmitting and receiving wireless communication signals ova a wireless communication channel 2618.
  • Duplexor 2604, or switch can be included so that transmitter 2606 and receiver 2608 can both use antenna 2602, while being isolated from each other.
  • Duplexors, or switches used for this purpose are well known and will not be explained herein.
  • Transmitter 2606 is a configurable transmitter configured to implement the channel access protocol des ⁇ ibed above.
  • transmitter 2606 is capable of transmitting and encoding a wideband communication signal comprising a plurality of sub-channels.
  • transmitter 2606 is configured such that the various sub-components that comprise transmitter 2606 can be reconfigured, or programmed, as described in secdcm 5.
  • receiver 2608 is configured to implement the channel access protocol described above and is, therefore, also configured such that the various sub ⁇ components comprising receiver 2608 can be reconfigured, or reprogrammed, as described in section 6.
  • Transmitter 2606 and receiver 2608 are interfaced with processor 2610, which ( ⁇ n corrrrxise various processing, controller, and/or Digital Signal Processing (DSP) circuits.
  • processor 2610 controls the operation of device 2600 including encoding signals to be transmitted by transmitter 2606 and decoding signals r ⁇ 2610 can also include memory 2612, which can be configured to store operating instructions, e.g., firmware/software, used by processor 2610 to control the operation of device 2600.
  • Processor 2610 is also preferably configured to reprogram transmitter 2606 and receiver 2608 via control interlaces 2614 and 2616, respectively, as required by the wireless communication system in which device 2600 is operating.
  • device 2600 can be configured to periodically ascertain the availability is a preferred communication system. If the system is detected, then processor 2610 can be configured to load the corresponding operating instruction from memory 2612 and reconfigure transmitter 2606 and receiver 2608 for operation in the preferred system.
  • device 2600 it may preferable for device 2600 to switch to an indoor wireless LAN if it is available. So device 2600 may be operating in a wireless WAN where no wireless LAN is available, while periodically searching for the availability of an appropriate wireless LAN. Once the wireless LAN is detected, processor 2610 will load the operating instructions, e.g., the appropriate protocol stack, for the wireless LAN environment and will reprogram transmitter 2606 and receiver 2608 accordingly. In this manner, device 2600 can move from one type of communication system to another, while niaintaining superior performance.
  • operating instructions e.g., the appropriate protocol stack
  • a base station configured in accordance with the systerr ⁇ and metkxls herein will operate in a similar manner as device 2600; however, because the base station does not move from one type of system to another, there is generally no need to configure processor 2610 to reconfigure Iransnitter 2606 and receiver 2608 for operation in accordance with the operating instruction for a different type of system.
  • processor 2610 can still be configured to reconfigure, or reprogram the sub-components of transmitter 2606 and/or receiver 2608 as required by the operating conditions within the system as reported by communication devices in communication with the base station Moreover, such a base station can be configured in accordance witti the systems and me ⁇ odsdesc ⁇ ed herein to implement more 2608 to implement flie appropriate mode of operation 8. Bandwidth recovery
  • a device such as device 1118 when a device, such as device 1118 is near the edge of a communication cell 1106, it may experience interference fiom base station 1112 of an adjacent communication cell 1104.
  • device 1118 will report a low SIR to base station 1114, which will cause base station 1114 to reduce the number of sub-channels assigned to device 1118.
  • this reduction can comprise base station 1114 assigning only even sub-channels to device 1118.
  • base station 1112 is correspondingly assigning only odd sub-channels to device 1116.
  • base station 1112 and 1114 perform complementary reductions in the channels assigned to devices 1116 and 1118 in order to prevent interference and improve performance of devices 1116 and 1118.
  • the reduction in assigned channels reduces the overall bandwidth available to devices 1116 and 1118.
  • a system implementing such a complementary reduction of sub-channels will still maintain a higher bandwidth than conventional systems. Still, it is preferable to recover the unused sub-channels, or unused bandwidth, created by the reduction of sub-channels in response to a low reported SIR.
  • base station 1114 receives SIR reports for different groups of sub-channels from device 1118 as described above. If the group SIR reports are good, then base station 1114 can assign all sub-channels to device 1118 in step 2704. If, however, some of the group SIR reports received in step 2702 are poor, 1hen base station 1114 can reduce the number of sub-channels assigned to device 1118, e.g, by assigning only even sub-channels, in step 2706. At the same time, base station 1112 is preferably performing a complementary reduction in the sub-channels assigned to device 1116, e.g., by assigning only odd sub-channels.
  • each base station has unused bandwidth with respect to devices 1116 and 1118.
  • base station 1114 can, in step 2708, assign the unused odd sub-channels to device 1116 in adjacent cell 1104. It should be noted that even though cells 1102, 1104, and 1106 are illustrated as geometrically shaped, non-overlapping coverage areas, the actual coverage areas do not resemble these shapes. The shapes are essentially fictions used to plan and describe a wireless communication system 1100. Therefore, base station 1114 can in fact communicate with device 1116, even Ihoughitis in adjacent cell 1104.
  • base station 1112 and 1114 communicate with device 1116 simultaneously over the odd sub-channels in step 2710.
  • base station 1112 also assigns the unused even sub-channels to device 1118 in order to recover Hie unused bandwidfli in cell 1104 as welL
  • spatial diversity is achieved by having both base station 1114 and 1112 communicate with device 1116 (and 1118) over the same sub-channels. Spatial diversity occurs when the same message is transmitted simultaneously ova statistically independent communication paths to the same receiver. The independence of the two paths improves the overall immunity of the system to lading. This is because the two paths will experience different lading effects. Therefore, if the receiver cannot receive the signal over one path due to fading, then it will probably still be able to receive the signal over the other path, because the fading that effected the first path wiUr ⁇ teffed the second. Asa result, spatial diversity improves overall system performance by improving the Bit Error Rate (BER) in the receiver, which effectively increases the deliverable data rate to the receiver, i.e., increase the bandwidth.
  • BER Bit Error Rate
  • base stations 1112 and 1114 ideally transmit the same information at the same time over the same sub-channels.
  • system 1100 is a TDM system with synchronized base stations.
  • Base stations 1112 and 1114 also assigned the same sub-channels to device 1116 in step 2708. Therefore, all that is left is to ensure that base stations 1112 and 1114 send the same information
  • the informatice ⁇ mmunicated to device 1116 by base stations 1112 and 1114 is preferably coordinated so that the same information is transmitted at the same time. The mechanism for enabling this coordination is discussed more fully below. Such coordination, however, also allows encoding that can provide furiher performance enhancements within system 1100 and aUowagrealer percentage of the unused bandwidth to be recovered
  • STC Space-Time-Coding
  • transmitter 2802 transmits a message over channel 2808 to receiver 2806.
  • transmitter 2804 transmits a message over channel 2810 to receiver 2806.
  • channels 2808 and 2810 are independent, system 2800 will have spatial diversity with respect to communications from transmitters 2802 and 2804 to receiver 2806.
  • the data transmitted by each transmitter 2802 and 2804 can be encoded to also provide time diversity.
  • the Mowing equations illustrate the process of encoding and decoding data in a STC system, such as system 2800.
  • Block 2812a comprises N-symbols denoted as CLQ, ai, Ci 2 , ..., a ⁇ i, or a(0:N-l).
  • Block 2812b transmits N- symbols of data denoted b(0: N-I).
  • Transmitter 2804 simultaneously transmits two block of data 2814a and 2814b.
  • Block2814aistheneg3bveinveise ⁇ ug ⁇ Block2814b is the inverse conjugate ofblock 2812a and can therefore be described as a*(N-l:0). It should be noted that each block of data in the forgoing description will preferably comprise a cyclical prefix as described above.
  • blocks 2812a, 2812b, 2814a, and 2814b are received in receiver 2806, they are combined and decoded in the following manner First, the blocks will be combined in the receiver to form the following blocks, after discarding the cyclical prefix:
  • Bbckl a(0:N-l) ®h n -b*(N-l:0) ⁇ % « ;and(3)
  • Block2 b(0:-N-l) ®h n + a*(N-l:0) ®& (4)
  • ⁇ S> represents a cyclic convolution
  • Blockl A n* H n -B n * * G n ,di ⁇ (5)
  • equations (5) and (6) H n and G n will be known, or can be estimated. But to solve the two equations and determine ⁇ and B n , it is preferable to turn equations (5) and (6) into two equations with two unknowns. This can be achieved using estimated signals X n and Y n as follows:
  • Signals A n and B n can be determined using equation (12). It should be noted, that the process just described is not the only way to implement STC. Other methods can also be implemented in accordance with the systems and methods described herein. Importantly, however, by adding time diversity, such as described in the preceding equations, to the space diversity already achieved by using base stations 1112 and 1114 to communicate with device 1116 simultaneously, the BER can be reduced even further to recover even more bandwidth.
  • Transmitter 2900 includes a block storage device 2902, a serial-to- parallel converter 2904, encoder 2906, and antenna 2908.
  • n isthesecx3ndblcd ⁇ soiftrarisrr ⁇ tter2900isgoingtotiansrr ⁇ two blocks, e.g., a n and b m and then generate block 2814a and 2814b (see figure 28).
  • Serial-to-parallel converter 2904 generates parallel bit streams from the bits ofblocks a n and b n .
  • Encoder 2906 then encodes the bit streams as required, e.g., encoder 2906 can generate -O n * and a n * (see blocks 2814a and 2814b in figure 28). The encoded blocks are then combined into a single transmit signal as described above and transmitted via antenna2908.
  • Transmitter 2900 preferably uses TDM to transmit messages to receiver 2806.
  • An alternative transmitter 3000 embodiment that uses EDM is illustrated in figure 30.
  • Transmitter 3000 also includes block storage device 3002, a serial- to-parallel converter 3004, encoder 3006, and antenna 3008, which are configured to perform in the same manner as the corresponding components in transmitter 2900.
  • transmitter 3000 includes IFFTs 3010 to take the IFFT of the blocks generated by encoder 2906.
  • transmitter 3000 transmits -B n * and A n * as opposed to -b * and a *, which provides space, frequency, and time diversity.
  • Figure 31 illustrates an alternative system 3100 that also uses FDM but that eliminates the 1 block delay associated with transmitters 2900 and 3000.
  • transmitter 3102 transmits over channel 3112 to receiver 3116.
  • Transmitter 3106 transmits over channel 3114 to receiver 3116.
  • transmitters 3102 and 3106 implement an encoding scheme designed to recover bandwidth in system 3100.
  • the coordinated encoding occurs at the symbol level instead of the block leveL
  • transmitter 3102 can transmit block 3104 comprising symbols ao, a u a. 2 , and 0 3 .
  • transmitter 3106 will transmit ablock 3108 comprising symbols -aj*, ao* -0 3 *, and a?.
  • this is the same encoding scheme used by transmitters 2802 and 2804, but implemented at the symbol level instead of the block level. As such, there is no need to delay one block before transmitting.
  • An IhFl ' of each block 3104 and 3108 can then be taken and transmitted using FDM
  • An IFFT 3110 ofblock 3104 is shown in figure 3 l fcrpurpctses of illustration
  • Channels 3112 and 3114 can be described by H n and G n , respectively.
  • the following symbols will be formed: (A,.H0+(V*G0 (A 2 .H ⁇ -(A 3 *.Gi) (A 3 .H 3 )+(A 2 *-G 3 ).
  • each symbol a, (n - 0 to 3) occupies a slightly different time location
  • the symbol combinations formed in the receiver are of the same form as equations (5) and (6) and, therefore, can be solved in the same manner, but without the one block delay.
  • base stations 1112 and 1114 In order to implement STC or Space Frequency Coding (SFQ diversity as described above, bases stations 1112 and 1114 must be able to coordinate encoding of the symbols that are simultaneously sent to a particular device, such as device 1116 or 1118. Fortunately, base stations 1112 and 1114 are preferably interfaced with a common network interface server. For exarr ⁇ le, ma IAN, base stations 1112 and 1114 (whi ⁇ the case of a LAN) are interfaced with a common network interface server that connects the LAN to a larger network such as a Public Switched Telephone Network (PSTN). Similarly, in a wireless WAN, base stations 1112 and 1114 are typically interfaced with a common base station control center or mobile switching center.
  • PSTN Public Switched Telephone Network
  • coordination of the encoding can be enabled via the common connection with the network interface server.
  • Bases station 1112 and 1114 can then be configured to share information through this common connection related to communications with devices at the edge of cells 1104 and 1106.
  • the sharing of information allows time or frequency diversity coding as described above.
  • delay diversity can preferably be achieved in accordance with the systems and methods described herein by cyclical shifting the transmitted blocks.
  • one transmitter can transmit a block comprising A 0 , Ai , A 2 , and A 3 in that order, while the other transmitter transmits the symbols in the following order A 3 , AQ, AI, and A 2 . Therefore, it can be seen that the second transmitter transmits a cyclically shifted version of the block transmitted by the first transmitter. Further, the shifted block can be cyclically shifted by more then one symbol of required by a particular implementation 9.
  • Forward Error Correction
  • FEC Forward Error Correction
  • extra bits are transmuted wnntne ⁇ atatnat can oe use ⁇ cyme receiver to dieck for errors in the data that was received
  • the receiver can then ask that the data be resent if too many errors are detected.
  • the receiver can include some mechanism by which it Iries to correct detected errors.
  • an FEC encoder 3202 adds bits to an input data stream 3204 to create an output data stream 3206 that necessarily has a higher data rate due to the added bits.
  • FEC encoder 3202 is a 1 A rate FEC encoder, which means that for every input bit d m FEC encoder 3202 adds abit that can be used to detect errors when data stream 3206 is decoded.
  • the data rate of output 3206 is twice that of input 3204.
  • Data stream 3206 can then be modulated and transmitted to a recdv ⁇ .
  • an FEC decoder 3208 can be used to remove the extra bits and detect errors in the original data.
  • FEC decoder 3208 should match FEC encoder 3202, Le., FEC decoder 3208 should be a 1/2 rate FEC decoder, in toe above example.
  • FIG 33 depicts a portion of a transmitter chain 3300.
  • a data stream 3302 with a data rate (R) is first split into a plurality of parallel data streams 3306 in serial to parallel converter 3304, each with a lower data rate (R/n) where n is the number of parallel data streams 3306.
  • the parallel data streams 3306 can then be encoded using a plurality of FEC encoders.
  • each of FEC encoders 3308 and 3310 can, depending on the implementation, handle half as much data and operate at a lower speed than required in a conventional system
  • FEC encoders 3308 and 3310 can be configured to assist each other with FEC encoding and reduce the overall load on each FEC encoder in the systenx This, ofcourse, requires some coordination, or message passing, between the two FEC encoders.
  • the outputs of FEC encoders 3308 and 3310 can then, for example, be passed Bracketough Parallel to serial converters 3312 and 3314 and combined via combiner 3316 into a single data stream with FEC encoding.
  • the single data stream can tiien be optional filtered and/or pulse shaped before being modulated an transmitted, e.g., via optional block 3318.
  • a code word is generated from an input data word by adding rjarity bits to the data word as illustrated in figure 34.
  • FEC encoder 3402 referred to as a LDPC, takes data word 3404 and generates output code word 3406.
  • the data word and code word are illustrated in matnx form.
  • the code word can be generated using a gmerator matrix as illustrated by the following equation:
  • the generator matrix can, in turn, he generated fiom an identify matrix andaparity check matrix as illustrated in the Mowing equation:
  • aparitymatrixHcanbeusedto generate the code woid C according to the following:
  • ⁇ f is configured as a dual diagonal matrix withMrows and Mcolumns.I ⁇ jal diagonal matrices are well known and will not be described here; however and exemplary one is illustrated by the following:
  • H D can, depending on the embodiment, be formed from a matrix of matrices.
  • M cme embodiment, this B, CandZ) can be used as in Ihe following:
  • each of the matrices A B, C, and-D will have k/4 rows and k/4 columns.
  • an encoder and decoder configured in accordance with the systems and methods described herein can be optirnized for a dual diagonal tf and a block cyclic H 0 , as explained below.
  • Many methods can be used to generate matrices A B 1 C, and D consistent with the systems and methods described herein.
  • Each of matrices A, B, C, and D can then be generated from this identity matrix /
  • a permutation vector in this example oflength 4, can then be used to generate A Qfr ⁇ uise,othermetr ⁇ xlsforgeneratingmarrices ⁇ B, following form, once an appropriate permutation vector is used to modify identity matrix /:
  • a permutation vector can be used to shift the positions of the l's in identity matrix /.
  • a single permutation matrix can be required.
  • the other matrices B, C, and D can be generated by shifting matrix A
  • each subsequent matrices B, C, and D is generated by shifting he previous matrix, starting with A, by 90°.
  • B would be as follows:
  • each row has only a single 1.
  • Galois Field algebra (GF(2)) can be used to define the following equations for use in solving for P :
  • H D was partitioned in 4s, therefore d should also be partitioned by 4 as illustrated in the following:
  • the above equation can be implemented efficiently, for example, using a circuit such as the example circuit illustrated in figure 36.
  • the circuit of figure 36 is generalized for Ihe more realistic situation where k — 128; however, it will be appreciated that the example embodiments described herein are not limited to any particular lengths or configurations.
  • the circuit of figure 36 uses a bank of cjclic shift registers 3606 to implement d .
  • the outputs of shift registers 3606 can then be passed to a plurality XORs 3602 as shown.
  • XORs 3202 collect the appropriate outputs from shift registers 3606 in order to generate the u terms.
  • the outputs ofc ⁇ lic shift registers 36C)6 can be rearranged and fixed so that, e.g., the first outputs of each go to the first XOR 3202, the second outputs go to the second XOR 3202, etc. Accordingly, efficient fixed connections 3608 can be used to reduce the complexity of LDPC 3500. The U terms can then be registered and fed to XOR 3502 as illustrated.
  • the LDPC encoder of figure 3600 can, therefore, be used to generate code word C, which can be modulated an transmitted But he receiverwill receive Cco ⁇ uptedbynoise as illustrated in the following:
  • the job of the decoder is then to extract d fiom the signal represented by equation (33).
  • this can be accomplished by making soft decisions as to the value of x and combining it with hard decisions related to thesign x suchthat d ran then be accuracy determined
  • the soft d ⁇ example if 4 bits are used in 2's complement, then y_>u can have up to 16 levels.
  • the levels can, for example, be from -8 to 7.
  • the levels can be tram -7.5 to 7.5.
  • An advantage of the later is that the levels are not biased, e.g., toward the negative.
  • An advantage of the former is that it includes the level 0.
  • any level scheme can be used as long as it allows for accurate detemiinations of ⁇ i .
  • the levels can be used to determine the probabilities of the value of x and ultimately d . For example, if the level determined for x is7or7.5,1hen1hede ⁇ xlerc ⁇ beconfiguredtosee1hisasaMg ⁇ the level is -8 or -7.5, then this can be seen as a high probability that the value is - 1.
  • Parity check equations can then be generated tram the following:
  • a parity node processor 3702 can be used to implement equation (35), as illustrated by the example embodiment depicted in figure 37. Message passing algorithms can be used to allow each such node 3702 to make final estimations.
  • FIG 39 is a diagram illustrating and example embodiment in which apluratityofparity node processors 3702 are configured in accordance with the systems and methods described herein.
  • each node 3702 receives information as to what the values X 0 , x ⁇ , . . . XN are believed to be.
  • a given node 3702 can then process Ihisinforrnation and produce estimates as to what the node believes the output of the other nodes should be and feed this information back in such a manner that the subsequent input to the other nodes is modified. It should be roted, therefore, that in such an embocliment, anode does not produce information to be feedback to its own input relatedto what it believes its own output should be.
  • node processors 3702 will, therefore, comprise storage to store the information being fed to it and processed as required. As a result, both storage and routing overheads can become excessive.
  • FIG. 40 is a diagram illustrating an example decoder 4000 that can be configured to reduce storage and routing overhead in accordance with one embodiment of the systems and methods described herein.
  • the basic premise behind decoder 4000 is that all the edges produced form parity node processor 4002 can be added and then the last edge for each node, produced by that node, can be subtracted out
  • a given row can be updated for all edges and then shifted in shift registers 4004.
  • the appropriate edge can then be sijbtracted out for each row using the data provided from registers 4014, as opposed to doing each row, storing the result and updating it with information form other nodes.
  • each shift register 4008 gets information from only two nodes 3702, e.g., viaregisters 4010 and 4012.

Abstract

A forward-error-correction encoder (3202), and a transmitter (1514) employing the encoder are provided. The forward error correction encoder encodes input data words (3204) into code words (3206) that comprise a parity matrix. In one embodiment, the encoder (3202) is optimized based on the properties of the parity matrix in order to reduce routing overhead and size. This Abstract is provided for the sole purpose of complying with the Abstract requirement rules that allow a reader to quickly ascertain the subject matter of the disclosure contained herein. This Abstract is submitted with the explicit understanding that it will not be used to interpret or to limit the scope or the meaning of the claims.

Description

SYSTEMS ANDMETHODSFORFORWARDERRORCORRECπON EV AWIRELESS COMMUNICATION NETWORK
1. Field of Hie Invention
The invention relates generally to wireless communication and more particularly to systems and methods for wireless communication over awide bandwidth channel using aplurality of sub-channels.
2. Background
Wireless communication systems are proliferating at the Wide Area Network (WAN), Local Area Network (LAN), and Personal Area Network (P AN) levels. These wireless communication systems use a variety of techniques to allow simultaneous access to multiple users. The most common of Ihese techniques are Frequency Division Multiple Access (FDMA), which assigns specific frequencies to each user, Time Division Multiple Access (TDMA), which assigns particular time slots to each user, and Code Division Multiple Access (CDMA), which assigns specific codes to each user. But these wireless communication systems and various modulation techniques are afflicted by a host of problems that limit the capacity and the quality of service provided to the users. The following paragraphs briefly describe a few of these problems for the purpose of illustration
One problem that can exist in a wireless communication system is multipafh interference. Multipalh interference, or muMpath, occurs because some of the energy in a transmitted wireless signal bounces off of obstacles, such as buildings or mountains, as it travels from source to destination. The obstacles in effect create reflections of the transmitted signal and the more obstacles there are, the more reflections they generate. The reflections then travel along their own transmission paths to the destination (or receiver). The reflections will contain Ihe same information as the original signal; however, because of the differing transmission path lengths, the reflected signals will be out of phase with the original signal. As a result, they will often combine destructively with the cdginalsigrial in Ihe receiver. This is referred to as fading. To combat fading, current systems typically try to estimate the muMpafh eή%^ and then compensate for them in the receiver using an equalizer. In practice, however, it is very difficult to achieve effective multipafh compensation.
A second problem that can affect the operation of wireless communication systems is interference from adjacent communication cells within the system. In FDMA/TDMA systems, this type of interference is prevent through a frequency reuse plan. Under a frequency reuse plan, available communication frequencies are allocated to communication cells within the communication system such that the same frequency will not be used in adjacent cells. Essentially, the available frequencies are split into groups. The number of groups is termed the reuse factor. Then the communication cells are grouped into clusters, each cluster containing the same number of cells as there are frequency groups. Each frequency group is then assigned to a cell in each cluster. Thus, if a frequency reuse factor of7 is used, for example, then a particular communication frequency will beusedonly cmce in every seven communication cells. Thus, in any group of seven communication cells, each cell can only use I//1 of the available frequencies, i.e., each cell is only able to use I//1 of the available bandwidth.
In a CDMA communication system, each cell uses the same wideband communication channel. In order to avoid interference with adjacent cells, each communication cell uses a particular set of spread spectrum codes to differentiate communications within the cell from those originating outside of the cell. Thus, CDMA systems preserve the bandwidth in the sense that they avoid reuse planning. But as will be discussed, there are other issues that limit the bandwidth in CDMA systems as well Thus, in overcoming interference, system bandwidth is often sacrificed. Bandwidth is becoming a very valuable commodity as wireless communication systems continue to expand by adding more and more users. Therefore, trading offbandwidth for system performance is a costly, albeit necessary, proposition that is inherent in all wireless communication systems.
The foregoing are just two examples of the types of problems that can affect conventional wireless communication systems. The examples also illustrate that there are many aspects of wireless communication system performance that can be improved through systems and methods that, for example, reduce interference, increase bandwidth, or both
Not only are conventional wireless communication systems effected by problems, such as those described in the preceding paragraphs, but also different types of systems are effected h different ways and to different degrees. Wireless communication systems can be split into three types: 1) line-of-sight systems, which can include point-to-point or point- to-muMpoint systems; 2) indoor non-line of sight systems; and 3) outdoor systems such as wireless WANs. line-of-sight systems are least affected by the problems described above, while irκix)r systems are more affected, due for example to signals bouncing off ofbuilding walls. Outdoor systems are by far Ihe most affected of the three systems. Because these types of problems are limiting factors in the design of wireless transmitters and receivers, such designs must be tailored to the specific types of system in which it will operate. In practice, each type of system implements unique communication standards that address the issues unique to the particular type of system. Even if an indoor system used the same communication protocols and modulation techniques as an outdoor system, for example, the receiver designs would still be different because muftiparh and other problems are unique to a given type of system and must be addressed with unique solutions. This would not necessarily be the case if cost efficient and effective methodologies can be developed to ∞mbat such problerm as described above that buM types of systems and still maintain superior performance.
SUMMARY OFTHE INVENTION
A forward error correction encoder encodes input data words into code words tø∞rrpise a parity matrix. In one aspect, the encoder is optimized based on the properties of the parity matrix in ordα to reduce routing overhead and size. In another aspect of the invention, a decoder is optimized to receive and decode the code word in the face of noise introduced when the code word is transmitted over a physical channel. Other aspects, advantages, and novel features of the invention will become apparent from the following Detailed Description of Preferred Embodiments, when considered in conjunction with the accompanying drawings.
BRIEFDESOMFΠON OFTHEDRAWINGS
Preferred embodiments of the present inventions taught herein are illustrated by way of example, and not by way oflirnitation, in the figures of Hie accompanying drawings, in which
Figure 1 is a άagram illustrating an example embodiment of aw channels in accordance with the invention;
Figure 2 is a diagram illustrating the effects of multipath in a wireless communication system;
Figure 3 is a diagram illustrating another example embodiment of a wideband communication channel divided into a plurality of sub-channels in accordance with the invention;
Figιire4isactøgramiUustratmgtheappB<^on 1 and2;
Figure 5A is a diagram illustrating the assignment of sub-channels for a wideband communication channel in accordance with the invention;
Figure 5B is a diagram illustrating the assignment of time slots for a wideband communication channel in accordance with the invention;
Figure 6 is a diagram illustrating an example embodiment of a wireless communication in accordance with the invention;
Figure 7 is a diagram illustrating the use of synchronization codes in the wireless communication system of figure 5 in accordance with the invention;
Figure 8 is a diagram illustrating a correlator that can be used to correlate synchronization codes in the wireless communication system of figure 5;
Figure 9 is a diagram illustrating synchronization code correlation in accordance with the invention;
Figure 10 is a diagram illustrating the cross-correlation properties of synchronization codes configured in accordance with the invention;
Figure 11 is a diagram illustrating another example embodiment of a wireless communication system in accordance with the invention;
Figure 12A is a diagram illustrating how sub-channels of a wideband communication channel according to the present invention can be grouped in accordance with the present invention;
Figure 12B is a diagram iltustrating the assignment of the groups of sub- channels of figure 12A in accordance with the invention;
Figure 13 is a diagram illustrating the group assignments of figure 12B in the time domain;
Figure 14 is a flow chart illustrating the assignment of sub-channels based on SIR measurements in the wireless communication system of figure 11 in accordance with the invention;
Figure 15 is a logical block diagram of an example embodiment of transmitter configured in accordance with the invention;
Figure 16 is a logical block diagram of an example embodiment of a modulator configured in accordance with the present invention for use in the transmitter of figure 15;
Figure 17 is a diagram illustrating an example embodiment of a rate ccintroUer ccnfigured in accordance with theinveritimforuseinthemodulaioroffigure 16;
Figure 18 is a diagram illustrating another example embodrment of a rate controller configured in accordance with the invention for use in the modulator of figure 16;
Figure 19 is a diagram illustrating an example embodiment of a ftequency encoder configured in accordance withiheinventionforuseinthemodulatoroffigure 16;
Figure 20 is a logical block diagram of an example embodiment of a TDMFDM block configured in accordance with the inventionforuseinthemodulatoroffigure 16;
Figure 21 is a logical block diagram of another example embodiment of a TDMFDM block configured in accordance with the invention for use in the modulator of figure 16;
Figure 22 is a logical block diagram of an example embodiment of a frequency shifter configured in accordance withtheinventionforuseinthemodulatoroffigure 16;
Figure 23 is a logical block diagram of a receiver configured in accordance with the invention;
Figure 24 is a logical block diagram of an example embodiment of a demodulator configured in accordance with the invention lor use in thereceiver of figure 23;
Figure 25 is a logical block diagram of an example embodiment of an equalizer configured in accordance with the present invention for use in the demodulator of figure 24;
Figure 26 is a logical block diagram of an example embodiment of a wireless communication device configured in accordance with the invention;
Figure 27 is a flow chart illustrating an exemplary method for recovering bandwidth in a wireless communication network in accordance with the invention;
Figure 28 is a diagram illustrating an exemplary wireless communication network in which the method of figure 27 can be implemented;
Figure 29 is a logical block diagram illustrating an exemplary transmitter that can be used in the network of figure 28 to implement the method of figure 27;
Figure 30 is a logical block diagram illustrating another exemplary trarismitter that can be used in the network of figure 28 to implement the method of figure 27;
Figure 31 is a diagram illustrating another exemplary wireless communication network in which the method of figure 27 can be implemented;
Figure 32 is a diagram illustrating an exemplary EEC encoder and exemplary FEC decoder,
Figure 33 is a diagram illustrating an example FEC encoder cαifigured in accordance with me embodiment;
Figure 34 is a diagram illustrating a FEC encoder configured to generated a code word ftom input data in accordance with one embodiment;
Figure 35 is a diagram illustrating the encoder of figure 34 in more detail;
Figure 36 is a diagram illustrating further detail for the encoder of figure 34; Figure 37 is a diagram illustrating an example parity node processor lhat can be included in a decoder in accordance with one embodiment;
Figure 38 is a diagram illustrating one node of Hie parity node processor of figure 37;
Figure 39 is adiagram illustrating the paritynode processor ofFigure 37 inmore detail; and
Figure 40 is a diagram illustrating a parity node processor configured in accordance with one embodiment
DETAΠJΏDESCRIFΠONOFTHEPREFERREDEMBODIMENTS
1. Introduction
In order to improve wireless communication system performance and allow a single device to move fiorn one type of system to another, while still maintaining superior performance, the systems and methods described herein provide various communication methodologies that enhance performance of transmitters and receivers with regard to various common problems that afflict such systems and that allow the transmitters and/or receivers to be reconfigured for optimal performance in a variety of systems. Accordingly, the systems and methods described herein define a channel access protocol that uses a common wideband communication channel for all communication cells. The wideband channel, however, is then divided into a plurality of sub-channels. Different sub-channels are then assigned to one or more users within each cell But the base station, or service access point, within each ceU transmits one message lhat occupies the entire bandwidth of the wideband channel. Each user's communication device receives the entire message, but only decodes 1hose portions of the message that reside in sub-channels assigned to the user. For a point-to-point system, for example, a single user may be assigned all sub-channels and, therefore, has the full wide band channel available to them In awireless WAN, on the oflier hand, the sub-channels maybe divided among apiurality of users.
In the descriptions of example embodiments that follow, implementation differences, or unique concerns, relating to different types of systems will be pointed out to the extent rx>ssfl)le. But it should be understood to the systems and methods described herein are applicable to any type of communication systems. In addition, terms such as communication cell, base station, service access point, etc. are used interchangeably to refer to the common aspects of networks at these different levels. To begin illustrating the advantages of the systems and methods described herein, one can start by looking at the multipath effects for a single wideband communication channel 100 of bandwidth B as shown in figure 1. Communications sent over channel 100 inatraditional wireless communication system will comprise digital data bits, or symbols, that are encoded and modulated onto aRF earner that is centered at frequency^ and occupies bandwidth B. Generally, the width of the symbols (or the symbol duration) Jis defined as 1/B. Thus, if the bandwidth^ is equalto IOOMI^ then thesymtol duration Tisdefinedbythe following equation:
T= l/B = l/100megaher1zβmZ) = 10nanoseconώ(ns). (1)
When a receiver receives the communication, demodulates it, and then decodes it, it will recreate a stream 104 of data symbols 106 as illustrated in figure 2. But the receiver will also receive multipath versions 108 of the same data stream. Because multipath data streams 108 are delayed in time relative to the data stream 104 by delays dl,d2,d3, and d4, for example, they may combine destructively with data stream 104. A delay spread 4 is defined as the delay fiom reception of data stream 104 to the reception of the last multipath data stream 108 that interferes with the reception of data stream 104. Thus, in the example illustrated in figure 2, the delay spread ds is equal to delay d4. The delay spread ds will vary for different environments. An environment with a lot of obstacles will create a lot of multipath reflections. Thus, the delay spread ds will be longer. Experiments have shown that for outdoor WAN type environments, the delay spread 4 can be as long as 20 microseconds. Using the 10ns symbol duration of equation (1), this translates to 2000 symbols. Thus, with a very large bandwidth, such as lOOMHz, multipath interference can cause a significant amount of interference at the symbol level tor which adequate compensation is difficult to achieve. This is true even tor indoor environments. For indoor LAN type systems, the delay spread ds is significantly shorter, typically about 1 microsecond. For a 10ns symbol duration, this is equivalent to 100 symbols, which is more manageable but still significant By segmenting the bandwidth B into a plurality of sub-channels 202, as iUustrated in figure 2, and generating a distinct data stream for each sub-charmel, the multipath eflect can be reduced to a much more manageable level For example, if the bandwidth b of each sub-channel 202 is 500KHz, then the symbol duration is 2 microseconds. Thus, the delay spread ds for each sub-channel is equivalent to only 10 symbols (outdoor) or half a symbol (indoor). Thus, by breaking up a message that occupies the entirebandwidrh5into discrete messages, each occupying the bandwidth b of sub-channels 202, a very wideband signal that suffers fiom relatively minor multipath effects is created.
Before discussing further features and advantages of using a wideband communication channel segmented into a plurality of sub-channels as described, certain aspects of the sub-channels will be explained in more detail Referring back to figure 3, the overall bandwidth B is segmented into Nsub-charmels center at frequenciesX to fm- Thus, the sub¬ channel 202 that is immediately to the right oifc is onset ftomye by b/2, where b is the bandwidth of each sub-channel 202. The next sub-channel 202 is offset by 3b/2, the next by 5b/2, and so oa To the left of/e, each sub-channel 202 is offset by -b/2, -3b/2, -5b/2, etc.
Preferably, sub-channels 202 are non-overlapping as this allows each sub-channel to be processed independently in the receiver. To accomplish this, a roll-off factor is preferably applied to the signals in each sub-channel in apulse-shaping step. The effect of such apulse-shaping step is illustrated in figure 3 by the r»n-rectangular shape of the pulses in each sub-channel 202. Thus, the bandwidth b of each sub-channel can be represented by an equation such as the following: b = (l+r)/T; (2)
Wherer=theroll-offfactor,and T - the symbol duration.
Without the roll-off factor, i.e., 6 = 7/£ the pulse shape would be rectangular in the frequency domain, which corresponds to a (sin x)/x function in the time domain The time domain signal for a ( w^)Λ signal 400 is shown in figure 4 in order to illustrate the problems associated wilh a rectangular pulse shape and the needtousearoll-offfactor.
As can be seen, main lobe 402 comprises almost all of signal 400. But some of the signal also resides in side lobes 404, which stretch out indefinitely in both directions from main lobe 402. Side lobes 404 make processing signal 400 much more difficult, which increases the complexity of the receiver. Applying a roll-off factor r, as in equation (2), causes signal 400 to decay faster, reducing the number of side lobes 404. Thus, increasing the roll-off factor decreases the length of signal 400, Le., signal 400 becomes shorter in time. But including the roll-off factor also decreases the available bandwidth in each sub-channel 202. Therefore, r must be selected so as to reduce the number of side lobes 404 to a sufficient number, e.g., 15, while still maximizing the available bandwidth in each sub-channel 202.
Thus, the overall bandwidth^ for communication channel 200 is given by the following equation:
B=N(Hr)ZT; (3) or
B=MT; (4)
Where
M=(l+r)N. (5)
For efficiency purposes related to transmitter design, it is preferable that r is chosen so thatMin equation (5) is an integer. Choosing r so that M is an integer allows for more efficient transmitters designs using, for example, Inverse Fast Fourier Transfomi (IFFT) techniques. SmceM=N+N(r), andNisalwaysanintegα,1riismeans1hatrmustbechosen so thatNcy is an integer. Generally, it is preferable for r to be between 0.1 and 0.5. Therefore, ifTVis 16, for example, then 0.5 could be selected for r so that N(r) is an integer. Alternatively, if a value for r is chosen in the above example so that N(r) is not an integer, B can be made slightly wider than MfT to compensate. In this case, it is still preferable lhat r be chosen so foatN(r) is approximately an integer.
2. Example Embodiment of a Wireless Communication System
With the above in mind, figure 6 illustrates an example communication system 600 comprising a plurality of cells 602 that each use a common wideband communication channel to communicate with communication devices 604 within each cell 602. The common communication channel is a wideband communication channel as described above Each communication cell 602 is defined as the coverage area of a base station, or service access point, 606 within the cell One such base station 606 is shown for illustration in figure 6. For purposes of this specification and tfie claims that follow, the term base station will be used generically to refer to a device that provides wireless access to the wireless communication system for a plurality of communication devices, whether the system is a line of sight, indoor, or outdoor system.
Because each cell 602 uses the same communication channel, signals in one cell 602 must be distinguishable from signals in adjacent cells 602. To differentiate signals from one cell 602 to another, adjacent base stations 606 use different synchronization codes according to a code reuse plan Ih figure 6, system 600 uses a synchronization code reuse factor of 4, although the reuse factor can vary depending on the application
Preferably, the synchronization code is periodically inserted into a communication from a base station 606 to a communication device 604 as illustrated in figure 7. After a predetermined numberof data packets 702, in this case two, the particular synchronization code 704 is inserted into the information being transmitted by each base station 606. A synchronization code is a sequence of data bits known to both the base station 606 and any communication devices 604 with which it is communicating The synchronization code allows such a communication device 604 to synchronize its timing to that ofbase station 606, which, in turn, allows device 604 to decode the data property. Thus, in ceU l (see tightly shaded cells 602 in figure 6), for example, synchronization code 1 (SYNCl) is inserted into data stream 706, which is generated by base station 606 in cell 1, after every two packets 702; in cell 2 SYNC2 is inserted after every two packets 702; in cell 3 SYNC3 is inserted; and in cell 4 SYNC4 is inserted Use of the synchronization codes is discussed in more detail below.
In figure 5A, an example wideband communication channel 500 for use in communication system 600 is divided into 16 sub-channels 502, centered at fiequencies fo to fe A base station 606 at the center of each communication cell 602 transmits a single packet occupying the whole bandwidth B of wideband channel 500. Such a packet is illustrated by packet 504 in figure 5B. Packet 504 comprises sur>packets506toareencc>dedwifiiafiequency offset corresponding to one of sub-channels 502. Sub-packets 506 in effect define available time slots in packet 504. Similarly, sub-channels 502 can be said to define available frequency bins in communication channel 500. Therefore, the resources available in communication cell 602 are time slots 506 and frequency bins 502, which can be assigned to different communication devices 604 within each cell 602. Thus, for example, frequency bins 502 and time slots 506 can be assigned to 4 different communication devices 604 within a cell 602 as shown in figure 5. Each communication device 604 receives the entire packet 504, but only processes those frequency bins 502 and/or timeslots 506 that are assigned to it Preferably, each device 604 is assigned non-adjacent frequency bins 502, as in figure 5B. This way, if interference corrupts the information in a portion of communication channel 500, then the effects are spread across all devices 604 within a cell 602. Hopefully, by spreading out the effects of interference in this manner the effects are minimized and the entire information sent to each device 604 can still be recreated from the unaffected information received in other frequency bins. For example, if interference, such as fading, corrupted the information in bsnsfo-f4 then each user 14 loses one packet of data. But each user potentially receives three unaffected packets from the other bins assigned to them. Hopefully, the unaffected data in the other three bins provides enough information to recreate the entire message for each user. Thus, frequency diversity can be achieved by assigning non-adjacent bins to each of multiple users.
Ensuring that the bins assigned to one user are separated by more than the coherence bandwidth ensures frequency diversity. As discussed above, the coherence bandwidth is approximately equal to 1/cL,. For outdoor systems, where ds is typically 1 microsecond, 1/ds = 1/1 microsecond = 1 Mega Hertz (MHz). Thus, the non-adjacent frequency bands assigned to a user are preferably separated by at least IMHz. It is even more preferable, however, if the coherence bandwidth plus some guard band to ensure sufficient frequency diversity separate the non-adjacent bins assigned to each user. For example, it is preferable in certain implementations to ensure that at least 5 times the coherence bandwidth, or 5MHz in the above example, separates the non-adjacent bins.
Another way to provide frequency diversity is to repeat blocks of data in frequency bins assigned to aparticular user that are separated by more than the coherence bandwidth. In other words, if 4 sub-channels 202 are assigned to a user, then data block a can be repeated in the first and third sub-channels 202 and data block b can be repeated in the second and fourth sub-channels 202, provided the sub-channels are sufficiently separated in frequency. In this case, the system can be said to be using a diversity length factor of 2. The system can similariybe configured to implement otiier diversity lengths, e.g., 3, 4,..., /.
It should be noted that spatial diversity can also be included depending on the embcκlimenL Spatial diversity can comprise transmit spatial diversity, receive spatial diversity, or both. In transmit spatial diversity, 1he transmitter uses a plurality of separate transmitters and a plurality of separate antennas to transmit each message. In other words, each transmitter transmits the same message in parallel. The messages are then recdvedtrceitetransπύttersarxlcxjrnbinedin the receiver. Because the parallel transmissions travel different paths, if one is affected by lading, the others will likely not be affected Thus, when they are combined in the receiver, the message should be recoverable even ifone or more of Ihe other transmission paths experienced severe fading.
Receive spatial diversity uses aplurality of separate receiveis and aplurality of separate antennas to receive a single message. If an adequate distance separates the antennas, then the transmission path for the signals received by the antennas will be different Again, this difference in the transmission palhswiU provide imperviousness to fadhg when the signals from the receivers are combined Transmit and receive spatial diversity can also be combined within a system such as system 600 so that two antennas are used to transmit and two antennas are used to receive. Thus, each base station 606 transmitter can include two antennas, for transmit spatial diversity, and each communication device 604 receiver can include two antennas, for receive spatial diversity. If only transmit spatial diversity is implemented in system 600, then it can be implemented in base stations 606 or in communication devices 604. Similarly, if only receive spatial diversity is included in system 600, then it can be implemented in base staticms 606 or corrimuώcation devices 604.
The number of communication devices 604 assigned frequency bins 502 and/or time slots 506 in each cell 602 is preferably programmable in real time. In other words, the resource allocation within a communication cell 602 is preferably programmable in the face of varying external conditions, i.e., multrpath or adjacent cell interference, and varying requirements, i.e., bandwidth requirements for various users within the cell Thus, if user 1 requires the whole bandwidth to download a large video file, for example, then the allocation ofbins 502 canbeadjusttoprovideuser 1 with more, or even all, ofbins 502. Once user 1 no longer requires such large amounts ofbandwidth, the allocation ofbins 502 can be readjusted among all of users 14.
It should also be noted that all of the bins assigned to a particular user can be used for both the forward and reverse link Alternatively, some bins 502 can be assigned as the forward link and some can be assigned for use on the reverse link, depending on the implementation
To increase capacity, the entire bandwidth B is preferably reused in each commiinication cell 602, with each cell 602 being differentiated by a unique synchronization code (see discussion below). Thus, system 600 provides increased immunity to multipath and fading as well as increased bandwidth due to flie elimination offiequericy reuse requirements. 3. Synchronization "
Figure 8 illustrates an example embodiment of a synchronization code correlator 800. When a device 604 in cell 1 (see figure 6), for example, receives an incoming αjmmunicarion from the cell 1 base station 606, it compares the incoming data with SYNQ in correlator 800. Essentially, the device scam the incoming data Iiying to correlate the data with the known synchronization code, in this case SYNQ Once correlator 800 matches the incoming data to SYNQ it generates a correlation peak 804 at the output Miώrpath versions of the data will also generate correlation peaks 806, although these peaks 806 are generally smaller than correlation peak 804. The device can then use the correlation peaks to perform channel estimation, which allows the device to adjust for the multipath using an equalizer. Thus, in cell 1, if correlator 800 receives a data stream comprising SYNCl , it will generate correlation peaks 804 and 806. If, on the other hand, the data stream comprises SYNC2, for example, then no peaks will be generated and the device will essentially ignore the incoming communication.
Even though a data stream that comprises SYNC2 will not create any correlation peaks, it can create noise in correlator 800 that can prevent detection of correlation peaks 804 and 806. Several steps can be taken to prevent this from occurring. One way to minimize the noise created in correlator 800 by signals from adjacent cells 602, is to configure system 600 so that each base station 606 transmits at the same time. This way, the svrKhtOrrizaticniaxies (^n preferably be generated in such a manner that only the synchronization codes 704 of adjacent cell data streams, e.g., streams 708, 710, and 712, as opposed to packets 702 within those streams, will interfere with detection of the correct synchronization code 704, e.g., SYNCl. The synchronization codes can then be further configured to eliminate or reduce the interference.
For example, the noise or interference caused by an incorrect synchronization code is a function of the cross correlation of that synchronization code with respect to the correct code. The better the cross correlation between the two, the lower the noise level. When the cross correlation is ideal, then the noise level will be virtually zero as illustrated in figure 9 by noise level 902. Therefore, a preferred embodiment of system 600 uses synchronization codes that exhibit ideal cross correlation, Le., zero. Preferably, the ideal cross correlation of the synchronization codes covers a period /that is sufficient to allow accurate detection of multipath 906 as well as multipath correlation peaks 904. This is important so that accurate channel estimation and equalization can take place. Outside of period /, the noise level 908 goes up, because the data in packets 702 is random and will exhibit low cross correlation with the synchronization code, e.g., SYNCl. Preferably, period / is actually slightly longer then the multipath length in order to ensure that the multipath can be detected a Synchronization code generation
Conventional systems use orthogonal codes to achieve cross correlation in correlator 800. In system 600 for example, SYNCl, SYNC2, SYNC3, and SYNC4, corresponding to cells 14 (see lightly shaded cells 602 of figure 6) respectively, will all need to be generated in such a manner that they will have ideal cross correlation with each oflier. In one embodiment, if the data streams involved comprise high and low data bits, then the value "1" can be assigned to the high data bits and "-1" to the low data bits. Orthogonal data sequences are then those that produce a "0" output when they are exclusively ORed (XQRed) together in correlator 800. The following example illustrates this point for orthogonal sequences 1 and 2: sequence 1: 11-1 1 sequence 2: 11 1-1
1 1-1-1 =0 Thus, when theresultsofXORing each bitpair areadded, theresuttis "0".
But in system 600, for example, each code must have ideal, or zero, cross correlation with each of the other codes used in adjacent cells 602. Therefore, in one example embodiment of a method for generating synchronization codes exhibiting the properties described above, the process begins by selecting a "perfect sequence" to be used as the basis for the codes. A perfect sequence is one that when correlated with itxlfproduces a number equal to the number of bits in the sequence. For example:
Perfect sequence 1: 11-11 11-11 1111=4 But each time aperfect sequence is cyclically shifted by one bit, the new sequence is orthogonal with the original sequence. Thus, for example, if perfect sequence 1 is cyclically shifted by one bit and then correlated with the original, the correlation produces a "0" as in the following example;
Perfect sequence 1 : 11-1 1 11 1-1 11 -1-1 =0 Ifthe perfect sequence 1 is again cyclically shifted by one bit, and again correlated with the original, then it will produce a "0". In general, you can cyclically shift a perfect sequence by any number ofbits up to its length and correlate the shifted sequence with the original to obtain a "0".
Once aperfect sequence of the correct length is selected, the first synchronization code is preferably generated in one embodiment by repeating the sequence 4 times. Thus, if perfect sequence 1 is bemg used, then a first synclm)nization codey would be the following: y=l l-l l 11-11 11-11 11-11.
Qr in generic form: y=x(0)xα)x(2)x(3)x(0)xα)x(2)x(3)x(0)xα)x(2)x(3)x(0)xα)x(2)x(3). For a sequence of length L: y=x(0)x®...Λ(L)X(0)X(1)....x(L)x(0)x(l)..._x(L)x(0)xφ...x(L) Repeating the perfect sequence allows correlator 800 a better opportunity to detect the synchronization code and allows generation of other uncorrelated frequencies as well. Repeating has the effect of sampling in the frequency domain. This effect is illustrated by the graphs in figure 10. Thus, in TRACE 1, which corresponds to synchronization code^, a sample 1002 is generated every fourth sample bin 1000. Each sample bin is separated by 1/(4LxI), where T\s the symbol duration Thus, in the above example, whereZ =4, each sample bin is separated by 1/(16x1) in the frequency domain. TRACES 2-4 illustrate the next three synchronization codes. As can be seen, the samples for each subsequent synchronization code are shifted by one sample bin relative to the samples for the previous sequence. Therefore, none of Hie sequences interfere with each other.
To generate Ihe subsequent sequences, corresponding to TRACES 2-4, sequenceymustbe shifted in frequency. This can be accomplished using Ihe following equation: i(m) =y(m)*exp(j*2 *τ*r*m/(n *L)), (5) forr= 1 to Z (# of sequences) andm=0 to 4*IΛ (time); and where: i(m) = each subsequent sequence; y(m) = the first sequence; and n = the number of times the sequence is repeated It will be understood that multiplying by an exp(j2it(r*m/N)) factor, where N is equal to the number of times the sequence is repeated n multiplied by the length of the underlying perfect sequence L, in the time domain results in a shift in the frequency domain Equation (5) results in the desired shift as illustrated in figure 9 for each of synchronization codes 2 A relative to synchronization code 1. The final step in generating each synchronization code is to append the copies of the lastMsamples, where Mis the length of the muttipatb, to the front of each code. This is done to make the convolution with the muMpath cyclic and to allow easier detection of the multipart].
It should be noted that synchronization codes can be generated from more flian one perfect sequence using the same methodology. For example, a perfect sequence can be generated and repeated four times and flien a second perfect sequence can be generated and repeated four times to get a n factor equal to άght The resulting sequence can then be shifted as described above to create the synchronization codes, b. Signal Measurements Using Synchronization Codes
Therefore, when a communication device is at the edge of a cell, it will receive signals from multiple base stations and, therefore, will be decoding several synchronization codes at the same time. This can be illustrated with the help of figure 11, which illustrates another example embodiment of a wireless communication system 1100 comprising communication cells 1102, 1104, and 1106 as well as communication device 1108, which is in communication wifli base station 1110 of cell 1102 but also receiving communication from base stations 1112 and 1114 of cells 1104 and 1106, respectively. If communications from base station 1110 comprise synchronization code SYNCl and communications from base station 1112 and 1114 comprise SYNC2 and SYNC3 respectively, Hien device 1108 will effectively receive the sum of these three synchronization codes. This is because, as explained above, base stations 1110, 1112, and 1114 are configured to transmit at the same time. Also, the synchronization codes arrive at device 1108 at almost the same time because they are generated in accordance with the description above.
Again as described above, the synchronization codes SYNCl, SYNC2, and SYNC3 exhibit ideal cross correlation Therefore, when device 1108 correlates the sum x of codes SYNCl, SYNC2, and SYNC3, the latter two will not interfere with proper detection of SYNCl by device 1108. Importantly, the sum x (^n also be used to determine important signal characteristics, because the sum x is equal to the sum of the synchronization code signal in accordance with the following equation:
X=SYNCl +SYNC2+SYNC3. (6) " Therefore, when SYNCl is removed, the sum of SYNC2 and SYNC3 is left, as shown in the following: x-SYNCl =SYNC2+SYNC3. (I)
The energy computed from the sum (SYNC2 + SYNC3) is equal to the noise or interference seen by device 1108. Since the purpose of correlating the synchroriizaticffi<x)dehdewce 1106 is to extrad the energy in SYNC 1, device 1108 also has the energy in the signal from base station 1110, i.e., the energy represented by SYNCl. Therefore, device 1106 can use the energy of SYNC 1 and of (S YNC2 + S YNC3) to perform a signal-to-interference measurement for the communication channel over which it is communicating with base station 1110. The result of the measurement is preferably a signal-to-interference ratio (SIR). The SIR measurement can then be communicated back to base station 1110 tor purposes that will be discussed below. The ideal cross correlation of the synchronization codes, also allows device 1108 to perform extremely accurate determinations of the Channel Impulse Response (CIR), or channel estimation, from the correlation produced by correlator 800. This allows for highly accurate equalization using low cost, low complexity equalizers, thus overcoming a significant draw back of conventional systems. 4. Sub-Channel Assignments
As mentioned, the SIR as determined by device 1108 can be communicated back to base station lllOforusein the assignment of channels 502. In one embodiment, due to the fact that each sub-channel 502 is processed independently, the SIR for each sub-channel 502 can be measured and commumcsted back to base station 1110. Li such an embodiment, therefore, sub-channels 502 can be divided into groups and a SIR measurement for each group can be sent to base station 1110. This is illustrated in figure HA, which shows a wideband communication channel 1200 segmented into sub-channels fo tofc Sub-channels^ tofy are then grouped into 8 groups Gl to G8. Thus, in one embodiment, device 1108 and base station 1110 communicate over a channel such as channel 1200.
Sub-channels in the same group are preferably separated by as many sub-channels as possible to ensure diversity. In figure 12A for example, sub-channels within the same group are 7 sub-channels apart, e.g, group Gl comprises^ and/i?. Device 1102 reports a SIR measurement for each ofthe groupsGl toG8. These SIR measurements are preferably compared with a threshold value to determine which sub-channels groups are useable by device 1108. This comparison can occur in device 1108 or base station 1110. If it occurs in device 1108, then device 1108 can simply report to base station 1110 which sub-channels groups are useable by device 1108.
SIR reporting will be simultaneously occurring for a plurality of devices within cell 1102. Thus, figure 12B illustrates the situation where two communication devices corresponding to User 1 and User 2 report SIR levels above the threshold for groups Gl, G3, G5, and G7. Base station 1110 preferably then assigns sub-channel groups to User 1 and User 2 based on the SIR reporting as illustrated in Figure 12B. When assigning the "good" sub-channel groups to User 1 and User 2, base station 1110 also preferably assigns them based on the principles of frequency diversity. In figure 12B, therefore, User 1 and User 2 are alternately assigned every other "good" sub-channel.
The assignment of sub-channels in the frequency domain is equivalent to the assignment of time slots in the
Figure imgf000016_0001
13, two users, User 1 and User 2, receive packet 1302 transmitted ova communication channel 1200. Figure 13 also illustrated the sub-channel assignment of figure 12B. While figures 12 and 13 illustrate sub-channel/time slot assignment based on SIR for two users, the principles illustrated can be extended lor any number of users. Thus, a packet within cell 1102 can be received by 3 or more users. Although, as the number of available subchannels is reduced due to high SIR, so is the available bandwidth. In other words, as available channels are reduced the niπnbαofusers that can gam aa^ to corn^ 1200 is also reduced.
Poor SIR can be caused for a variety of reasons, but frequently it results from a device at the edge of a cell receiving communication signals from adjacent cells. Because each cell is using the same bandwidth B, the adjacent cell signals will eventually raise the noise level and degrade SIR for certain sub-channels. In certain embodiments, therefore, sub-channel assignment can be coordinated between cells, such as cells 1102, 1104, and 1106 in figure 11, in order to prevent interference from adjacent cells.
Thus, if communication device 1108 is near the edge of cell 1102, and device 1118 is near the edge of cell 1106, then the two can interfere with each other. As a result, the SIR measurements lhat device 1108 and 1118 report back to base stations 1110 and 1114, respectively, will indicate that the interference level is too high. Base station 1110 can then be configured to assign only the odd groups, i.e., Gl, G3, G5, etc., to device 1108, while base station 1114 can be configured to assign the even groups to device 1118. The two devices 1108 and 1118 will then not interfere with each other due to the coordinated assignment of sub-channel groups.
Assigning the sub-channels in this manner reduces the overall bandwidth available to devices 1108 and 1118, respectively. In this case the bandwidth is reduced by a factor of two. But it should be remembered that devices operating closer to each base station 1110 and 1114, respectively, will still be able to use all channels if needed Thus, it is only devices, such as device 1108, that are near the edge of a cell that will have the available barxlwidth reduced Cbnrrast this with a CDMA system, for example, in which the bandwidth for all users is reduced due to the spreading techniques used in such systems, by approximately a factor of 10 at all times. It can be seeri, therefore, that the systems and methods for wireless communication ova a wide bandwidth channel using a plurality of sub-channels not only improves the quality of service, but can also increase Hie available bandwidth significantly.
When there are three devices 1108, 1118, and 1116 near the edge oftheir respective adjacent cells 1102, 1104, and 1106, the sub-channels can be divided by three. Thus, device 1108, for example, can be assigned groups Gl, G4, etc, device 1118 can be assigned groups G2, G5, etc., and device 1116 can be assigned groups G3, G6, etc. In this case the available bandwidth for these devices, i.e., devices near the edges of cells 1102, 1104, and 1106, is reduced by a factor of 3, but this is still bettα than a CDMA system, for example.
The mannα in which such a coordinated assignment of sub-channels can work is illustrated by the flow chart in figure 14. Firstinstep 1402, acommunication device, such as device 1108, reports the SIR for all sub-channel groups Gl to G8. The SlRs reported are then compared in step 1404, to a threshold to determine if the SIR is sufficiently low for each group. Alternatively, device 1108 can make the determination and simply report which groups are above or below the SIR fhreshokTIf the" SIR levels ate good for each group, then base station 1110 can make each group available to device 1108, in step 1406. Periodically, device 1108 preferably measures the SIR level and updates base station 1110 in case the SIR as deteriorated. For example, device 1108 may move fiorn near the center of cell 1102 toward the edge, where interference from an adjacent cell may affect the SIR for device 1108.
If the comparison in step 1404 reveals that the SIR levels are not good, then base station 1110 can be preprogrammed to assign either the odd groups or the even groups only to device 1108, which it will do in step 1408. Device 1108 then reports the SIR measurements tor the odd or even groups it is assigned in step 1410, and they are again compared to a SIR threshold in step 1412.
It is assumed that the poor SIR level is due to the fact 1hat device 1108 is operating at the edge ofcell 1102 and is therefore being interfered with by a device such as device 1118. But device 1108 will be interfering with device 1118 at the same time. Therefore, tiie assignment of odd or even groups in step 1408 preferably corresponds with the assignment of the opposite groups to device 1118, by base station 1114. Accordingly, when device 1108 reports the SIR measurements for whichever groups, odd or even, are assigned to it, the comparison in step 1410 should reveal that the SIR levels are now below the threshold level. Thus, base station 1110 makes the assigned groups available to device 1108 instep 1414. Again, device 1108 preferablyperiodically updates the SIRmeasurements by returning to step 1402.
It is possible for Hie comparison of step 1410 to reveal that the SIR levels are still above the threshold, which should indicate that a third device, e.g., device 1116 is still intertMig with device 1108. fo this case, base station 1110 can be preprogrammed to assign every third group to device 1108 in step 1416. This should correspond with the corresponding assignments of non-interfering channels to devices 1118 and 1116 by base stations 1114 and 1112, respectively. Thus, device 1108 should be able to operate on the sub-channel groups assigned, i.e., Gl , G4, etc., without undue interference. Again, device 1108 preferablyperiodicallyupdates the SIRmeasurements by returning to step 1402. Optionally, a third comparison step (not shown) can be inplemented after stφ 1416, to ensure that the groups assigned to device 1408 posses an adequate SIR level for proper operation Moreover, if there are more adjacent cells, i.e., if it is possible for devices in a 4th or even a 5h adjacent cell to interfere with device 1108, then the process of figure 13 would continue and the sub-channel groups would be divided even further to ensure adequate SIR levels on the sub-channels assigned to device 1108.
Even though the process of figure 14 reduces the bandwidth available to devices at the edge of cells 1102, 1104, and 1106, the SIR measurements can be used in such a manner as to increase the data rate and therefore restore or even increase bandwidth. To accomplish this, the transmitters and receivers used in base stations 1102, 1104, and 1106, and in devices in communication therewith, e.g., devices 1108, 1114, and 1116 respectively, must be capable of dynamically changing the symbol mapping schemes used for some or all of the sub-channeL For example, in some embodiments, the symbol mapping scheme can be dynamically changed among BPSK, QPSK, 8PSK, 16QAM, 32QAM, etc. As the symbol mapping scheme moves higher, i.e., toward 32QAM, the SIR level required for proper operation moves higher, i.e., less and less interference can be withstood. Therefore, once the SIR levels are determined for each group, the base station, e.g., base station 11 IU, can then determine what symbol mqpingschαiie can be siφported for each sub-channel group and can change the modulation scheme accoidingly. Device 1108 must also change the symbol mapping scheme to correspond to that of the base stations. The change can be effected for all groups uniformly, or it can be effected for individual groups. Moreover, the symbol mapping scheme can be changed on just the forward link, just the reverse link, or both, depending on the embodiment
Thus, by maintaining the capability to dynamically assign sub-channels and to dynamically change the symbol mapping scheme used for assigned sub-channels, the systems and methods described herein provide the ability to maintain higher available bandwidths with higher performance levels than conventional systems. To fully realize the benefits described, however, the systems and methods described thus far must be capable of implementation in a cost effect and convenient manner. Moreover, the implementation must include reconfigurability so that a single device can move between different types of communication systems and still maintain optimum performance in accordance with the systems and methods described herein. The following descriptions detail example high level embodiments of hardware implementations configured to operate in accordance with the systems and methods described herein in such a manner as to provide the capability just described above. 5. Sample Transmitter Embodiments
Figure 15 is logical block diagram illustrating an example embodiment of a transmitter 1500 configured for wireless communication in accordance with the systems and methods described above. The transmitter could, for example be within a base station, e.g., base station 606, or within a communication device, such as device 604. Transmitter 1500 is provided to illustrate logical components that can be included in a transmitter configured in accordance with the systems and methods described herein It is not intended to limit the systems and methods for wireless communication over a wide bandwidth channel using a plurality of sub-channels to any particular transmitter configuration or any particular wireless communication system.
With this in mind, it can be seen that transmitter 1500 cc>mprisesaserial-to^)araUelcx5nveiterl504ccMguredto receive a serial data stream 1502 comprising a data rate R Serial-to-parallel converter 1504 converts data stream 1502 into Nparallel data streams 1504, whereNis the number of subch.oiels202.ttshould be rwtedtowMefce discussion that follows assumes that a single serial data stream is used, more than one serial data stream can also be used if required or desired. In any case, the data rate of each parallel data stream 1504 is then RN. Each data stream 1504 is then sent to a scrambler, encoder, and iπterieaver block 1506. Scrambling, encoding, and interleaving are common techniques implemented in many wireless communication transmitters and help to provide robust, secure communication. Examples of these techniques will be briefly explained for illustrative purposes.
Scrambling breaks up the data to be transmitted in an effort to smooth out the spectral density of the transmitted rtøta For example, if the data comprises a long string of 1T1S, there will be a spike in the spectral density. This spike can cause greater interference within the wireless communication system By breakhg up the data, the spec^ density can be smoothed out to avoid any such peaks. Often, scrambling is achieved by XORing the data with arandom sequence. iϊicocttng, or coding, the parallel bit streams 1504 can, for example, provide Forward Error Correction (FEQ. The purpose of FEC is to improve the capacity of a communicarion channel by adding some carefully designed redundant information to the data being transmitted through the channel. The process of adding this redundant information is known as channel coding. Convolutional coding and block coding are the two major forms of channel coding. Convolutional codes operate on serial data, one or a few bits at a time. Block codes operate on relatively large (typically, up to a couple ofhundred bytes) message blocks. There are a variety of useful convolutional and block codes, and a variety of algorithms for decoding the received coded information sequences to recover the original data For example, convolutional encoding or turbo coding with Viterbi decoding is a EEC technique that is particularly suited to a channel in which the transmitted signal is corrupted mainly by additive white gaussian noise (AWGN) or even a channel that simply experiences fading.
Convolutional codes are usually desσibed using two parameters: the code rate and the constraint length. The code rate, k/n, is expressed as a ratio of the number of bits into the convolutional encoder (k) to the number of channel symbols (n) output bytheconvoMonalencxxlermagivenencodercycle. Acommcncoα^rateis 1/2, which means that 2 symbols are produced for every 1-bit input into the coder. The constraint length parameter, K, denotes the 'length" of the convolutional encoder, i.e. how many fc-bit stages are available to feed the combinatorial logic that produces the output symbols. Closely related to AT is the parameter m, which indicates how many encoder cycles an input bit is retained and used for encoding after it first appears at the input to the convolutional encoder. The m parameter can be thought of as the memory length of the encoder.
Interleaving is used to reduce the effects of fading. Interleaving mixes up the order of the data so that if a fade interferes with a portion of the transmitted signal, the overall message will not be effected. This is because once the message is de-interieaved and decoded in tiie receiver, the data lost will comprise non-contiguous portions of the overall message. In other words, the fade will interfere with a contiguous portion of the interleaved message, but when the message is de-interleaved, the interfered with portion is spread throughout the overall message. Using techniques such as FEC, the missing information can then be filled in, or the impact of the lost datamayjust be negligible.
After blocks 1506, each parallel data stream 1504 is sent to symbol mappers 1508. Symbol mappers 1508 apply the requisite symbol mapping, e.g., BPSK, QPSK, etc., to each parallel data stream 1504. Symbol mappers 1508 are preferably programmable so that the modulation applied to parallel data streams can be changed, for example, in response to the SIR reported for each sub-channel 202. It is also preferable, that each symbol mapper 1508 be separately programmable so that the optimum symbol mapping scheme for each sub-channel can be selected and applied to each parallel data stream 1504.
After symbol mappers 1508, parallel data streams 1504 are sent to modulators 1510. Important aspects and features of example embodiments of modulators 1510 are described below. After modulators 1510, parallel datastreams 1504 are sent to summer 1512, which is configured to sum the parallel data streams and thereby generate a single serial data stream 1518 comprising each of the individually processed parallel data streams 1504. Serial data stream 1518 is thai sent to radio module 1512, where it is modulated with an RF carrier, amplified, and transmitted via antenna 1516 according to known techniques.
The transmitted signal occupies the entire bandwidth B of communication channel 100 and comprises each of the discrete parallel data streams 1504 encoded onto their respective sub-channels 102 within bandwidth B. Encoding parallel data streams 1504 onto the appropriate sub-channels 102 reqiiires that each paraflel data stream 1504 be shified in irequencybyanapprcpiateorrsetThisisachievedrnmodulator lSlO. Figure 16 is a logical block diagram of an example embodiment of a modulator 1600 in accordance with the systems and methods described herein. Importantly, modulator 1600 takes parallel data streams 1602 performs Time Division Modulation (TDM) or Frequency Division Modulation (FDM) on each data stream 1602, filters them using filters 1612, and then shifts each data stream in frequency using frequency shifter 1614 so that they occupy the appropriate sub-channel. Filters 1612 apply the required pulse shaping, i.e., they apply the roll-off factor described in section 1. The frequency shifted parallel data streams 1602 are then summed and transmitted. Modulator 1600 can also include rate controller 1604, frequency encoder 1606, and interpolators 1610. All of the components shown in figure 16 are desαibed in more detail in the following paragraphs and in conjunction with figures 17-23.
Figure 17 illustrates one example embodiment of a rate controller 1700 in accordance with the systems and methods described herein Rate control 1700 is used to control the data rate of each parallel data stream 1602. In rate controller 1700, the data rate is halved by repeating data streams d(0) to d(7), for example, producing streams a(0) to a(15) in which a(0) is the same as a(8), a(l) is the same as a(9), etc. Figure 17 also illustrates that the effect of repeating the data streams in this manner is to take the data streams that are encoded onto the first 8 sub-channels 1702, and duplicate them on the next 8 sub-channels 1702. As can be seen, 7 sub-channels separate sub-channels 1702 ocmprising the same, or duplicate, data streams. Thus, if fading effects one sub-channel 1702, for example, the other sub-channels 1702 carrying the same data will likely not be effected, i.e., there is frequency diversity between the duplicate data streams. So by sacrificing data rate, in this case half the data rate, more robust transmission is achieved Moreover, the robustness provided by duplicating the data streams d(0) to d(J) can be further enhanced by applying scrambling to the duplicated data streams via scramblers 1708.
It should be noted that the data rate can be reduced by more than half, e.g, by four or more. Alternatively, the data rate can also be reduced by an amount other than half For example if information from n data stream is encoded onto m sub-channels, where m >n Thus, to decrease the rate by 2/3, information from one data stream can be encoded on a first sub-channel, information from a second data stream can be encoded on a second data channel, and the sum or difference of the two data streams can be encoded on a third channel. In which case, proper scaling will need to be applied to the power in the third channel. Otherwise, for example, the power in the third channel can be twice the power in the first two.
Preferably, rate controller 1700 is programmable so that the data rate can be changed responsive to certain operational factors. For example, if the SIR reported for sub-channels 1702 is low, then rate controller 1700 can be programmed to provide more robust tϊkisrriϊssion via repetition to ensure that no data is lost due to interference. Additionally, different types of wireless communication system, e.g., indoor, outdoor, line-of-sight, may require varying degrees of robustness. Thus, rate controller 1700 can be adjusted to provide the minimum required robustness tor the particular type of communication system. This type of programmability not only ensures robust communication, it can also be used to allow a single device to move between communication systems and maintain superior rxrlbrmance.
Figure 18 illustrates an alternative example embodiment of a rate ∞ntroUα 1800 in accc^dance with the systems and methods described. In rate controller 1800 the data rate is increased instead ofdecreased This is axcmplished using serial-to- parallel converters 1802 to convert each data streams d(0) to d(15), for example, into two data streams. Delay circuits 1804 then delay one of the two data streams generated by each serial-to-parallel converter 1802 by 1/2 a symbol. Thus, data streams d(0) to d(15) are transformed into data streams a(0) to a(31). The data streams generated by a particular serial-to-parallel converter 1802 and associate delay circuit 1804 must then be summed and encoded onto the appropriate sub-channel. For example, data streams a(0) and a(l) must be summed and encoded onto the first sub- channeL Preferably, the data streams are summed subsequent to each data stream being pulsed shaped byafiher 1612.
Thus, rate controller 1604 is preferably programmable so that the data rate can be incieased, as in rate controller 1800, or decreased, as in rate controller 1700, as required by a particular type of wireless communication system, or as required by the communication channel conditions or sub-channel conditions. In the event that the data rate is increased, filters 1612 are also preferably programmable so that they can be configiired to apply pulse shaping to data streams α(Q) to aβl), for example, and then sum the appropriate streams to generate the appropriate number of parallel data streams to send to frequency shifter 1614.
The advantage of increasing the data rate in the manner illustrated in figure 18 is that higher symbol mapping rates can essentially be achieved, without changing the symbol mapping used in symbol mappers 1508. Once the data streams are summed, the summed streams are shifted in frequency so that they reside in 1hearφropriatesurHtemeL But because the number of bits per each symbol has been doubled, the symbol mapping rate has been doubled. Thus, for example, a 4QAM symbol mapping can be converted to a 16QAM symbol mapping, even if the SIR is too high for 16QAM symbol mapping to oiherwise be applied. In other words, programming rate controller 1800 to increase the data rate in the manner illustrated in figure 18 can increase the symbol mapping even when channel conditions would otherwise not allow it, which in turn can allow a communication device to maintain adequate or even superior performance regardless of the type of communication system
The drawback to increasing the data rate as illustrated in figure 18 is that interference is increased, as is receiver complexity. The former is due to the increased amount of data The latter is due to the fact tiiat each symbol cannot be processed independently because of the 1/2 symbol overlap. Thus, these concerns must be balanced against the increase symbol mapping ability when implementing a rate controller such as rate controller 1800.
Figure 19 illustrates one example embodiment of a frequency encoder 1900 in accordance with the systems and methods described herein Similar to rate encoding frequency encoding is preferably used to provide increased communication robustness. Th fluency eή∞Ser 1900 the sum or difference of multiple data streams are encoded onto each sub-channel. This is accomplished using addeis 1902 to sum data streams d(0) to d(7) with data streams d(8) to d(15), respectively, while adders 1904 subtract data streams d(0) to d(7) fiorn data streams d(8) to d(15), respectively, as shown. Thus, data streams a(0) to a(15) generated by adders 1902 and 1904 comprise information related to more than one data streams d(0) to d(15). For example, a(0) comprises the sum of d(0) and d(8), i.e., d(0) + d(8), while a(8) comprises d(8) - d(0). Therefore, if either a(0) or a(8) is not received due to fading, for example, then both of data streams d(0) and dβ) can still be retrieved from data stream a(8).
Essentially, the relationship between data stream d(0) to d(15) and a(0) to a(15) is a matrix relationship. Thus, if the receiver knows the correct matrix to apply, it can recover the sums and differences of d(0) to d(15) from a(0) to a(15). Preferably, frequency encoder 1900 is programmable;, so that it can be enabled and disabled in order to provided robustness when required Preferable, addeis 1902 and 1904 are programmable also so that different matrices can be appkedtod(0)tod(15).
After frequency encoding if it is included, data streams 1602 are sent to TDM/FDM blocks 1608. TDM/FDM blocks 1608 perform TDM or FDM on the data streams as required by the particular embodiment Figure 20 illustrates an example embodiment of a TDM/FDM block 2000 configured to perform TDM on a data stream. TDM/FDM block 2000 is provided to illustrate the logical components that can be included in a TDM/FDM block configured to perform TDM on a data stream. Depending on the actual implementation, some of the logical components may or may not be included. TDM/FDM block 2000 comprises a sub-block repeater 2002, a sub- block scrambler 2004, a sub-block terminator 2006, asub-block repeater 2008, andasync inserter 2010.
Sub-block repeater 2002 is configured to receive a sub-block of data, such as block 2012 comprising bits a(0) to a(3) for example. Sub-block repeater is then configured to repeat block 2012 to provide repetition, which in turn leads to more robust communication Thus, sub-block repeater 2002 generates block 2014, which comprises 2 blocks 2012. Sub-block scrambler 2004 is then configured to receive block 2014 and to scramble it, thus generating block 2016. One method of scrambling can be to invert half ofblock 2014 as illustrated in blcck 2016. But othαscrarrώling methods (^ also be implemented depending on the embodiment
Sub-block terminator 2006 takes block 2016 generated by sub-block scrambler 2004 and adds a termination block 2034 to the front ofblock 2016 to form block 2018. Termination block 2034 ensures that each block can be processed independently in the receiver. Without termination block 2034, some blocks maybe delayed due to multipath, for example, and they would therefore overlap part of the next block of data But by including termination block 2034, the delayed block can be prevented from overlapping any ofthe actual data in the next block
Termination block 2034 can be a cyclic prefix termination 2036. A cyclic prefix termination 2036 simply repeats the last few symbols ofblock 2018. Thus, for example, if cyclic prefix termination 2036 is three symbols long, then it would simply repeat the last three symbols ofblock 2018. Alternatively, termination block 2034 can comprise a sequence of symbols that are known to both the transmitter and receiver. The selection of what type ofblock termination 2U34 to use can impact what type of equalizer is used in the receiver. Therefore, receiver complexity and choice of ecμalizers must be ccrødered when detemiinin^
After sub-block terminator 2006, TDM/FDM block 2000 can include a sub-block repeater 2008 configured to perform a second block repetition step in which block 2018 is repeated to form block 2020. M (Xϊtamemrxidiments, sub- block repeater can be configured to perform a second block scrambling step as well After sub-block repeater 2008, if included, TDM/FDM block 2000 comprises a sync inserter 210 configured to periodically insert an appropriate synchronization code 2032 after a predetermined number of blocks 2020 and/or to insert known symbols into each block. The purpose of synchronization code 2032 is discussed in section 3.
Figure 21, on the other hand, illustrates an example embodiment of a TDM/FDM block 2100 configured for EDM, which comprises sub-block repeater 2102, sub-block scrambler 2104, block coder 2106, sub-block transformer 2108, sub-block terminator 2110, and sync inserter 2112. As with TDM/FDM block 2000, sub-block repeater 2102 repeats block 2114 and generates block 2116. Sub-block scrambler then scrambles block 2116, generating block 2118. Sub-block coder 2106 takes block 2118 and codes it, generating block 2120. Coding block correlates the data symbols together and generates symbols b. This requires joint demodulation in the receiver, which is more robust but also more complex. Sub-block transformer 2108 then performs a transformation on block 2120, generating block 2122. Preferably, the transformation is an IFFT of block 2120, which allows for more efficient equalizers to be used in the receiver. Next, sub-block terminator 2110 terminates block 2122, generating block 2124 and sync inserter 2112 periodically inserts a synchronization code 2126 after a certain number ofblocks 2124 and/or insert known symbols into each block. Preferably, sub-block terminator 2110 only uses cyclic prefix termination as described above. Again this allows for more efficient receiver designs.
TDM/FDM block 2100 is provided to illustrate the logical components that can be included in a TDM/FDM block configured to perform FDM on a data stream. Depending on the actual implementation, some of the logical cornponentsmay ormaynot be included Moreover, TDM/FDM block 2000 and2100 are preferably programmable so that the appropriate logical components can be included as required by a particular implementation. This allows a device that incorporates one ofblocks 2000 or 2100 to move between different systerns with different requiremerfe Further, it is preferable that TDM/FDM block 1608 in figure 16 be programmable so that it can be programmed to perform TDM, such as described in conjunction with block 2000, or FDM, such as described in conjunction with block 2100, as required by a particular communication system.
After TDM/FDM blocks 1608, in figure 15, thepatallel data streams are preferably passed to interpolators 1610. After Interpolators 1610, the parallel data streams are passed to filters 1612, which apply the pulse shaping described in conjunction with the roll-off factor of equation (2) in section 1. Then the parallel data streams are sent to frequency shifter 1614, which is configured to shift each parallel data stream by the frequency offset associated with the sub-channel to which the particular parallel data stream is associated. Figure 22 illustrates an example embodiment of a frequency shifter
2200 in accordance with the systems and methods described herein. As can be seen, frequency shifter 2200 comprises multipliers 2202 configured to multiply each' "parallel data stream by the appropriate exponential to achieve the required frequency shift. Each exponential is of the form: eφ(j2$rflMφ, where c is 1he corresponding sub-channel, e.g., c = 0 to N-I, and n is time. Preferably, frequency shifter 1614 in figure 16 is programmable so that various chaπnel/sub-channel configurations can be acαxnmodated for various different systems. Alternatively, an IFFTblock can replace shifter 1614 and filtering can be done after the IEFT block. This type of implementation can be more efficient depending on the implementation
After the parallel data streams are shifted, they are summed, e.g., in summer 1512 of figure 15. The summed data stream is then transmitted using the entire bandwidth B of the communication channel being used. But the transmitted data stream also comprises each of the parallel data streams shifted in frequency such that they occupy the appropriate sub-channeL Thus, each sub-channel may be assigned to one user, or each sub-channel may carry a data stream intended for different users. The assignment of sub-channels is described in section 3b. Regardless ofhow the sub¬ channels are assigned, however, each user will receive the entire bandwidth, comprising all the sub-channels, but will only decode those sub-channels assigned to the user. 6. Sample Receiver Embodiments
Figure 23 illustrates an example embodiment of a receiver 2300 that can be configured in accordance with the present invention. Receiver 2300 comprises an antenna 2302 configured to receive a message transmitted by a transmitter, such as transmitter 1500. Thus, antenr^ entire bandwidth B of a wide band channel that is divided into sub- channels of bandwidth b. As described above, the wide band message comprises a plurality of messages each encoded onto each of a corresponding sub-channel. AU of the sub-channels may or may not be assigned to a device that includes receiver 2300; Therefore, receiver 2300 may or may not be required to decode all of the sub-channels. After the message is received by antenna 2300, it is sent to radio receiver 2304, which is configured to remove the carrier associated with the wide band communication channel and extract a baseband signal comprising the data stream transmitted by the transmitter. The baseband signal is then sent to correlator 2306 and demodulator 2308. Correlator 2306 is configured to correlated with a synchronization code inserted in the data stream as described in section 3. It is also preferably configured to perform SIR and multipath estimations as described in section 3(b). Demodulator 2308 is configured to extract the parallel data streams from each sub-channel assigned to the device comprising receiver 2300 and to generate a single data stream therefrom
Figure 24 illustrates an example embodiment of a demodulator 2400 in accordance with the systems and methods described herein Demodulator 2402 comprises a frequency shifter 2402, which is configured to apply a frequency offset to the baseband data stream so that parallel data streams comprising the baseband data stream can be independently processed in receiver 2400. Thus, the output of frequency shifter 2402 is a plurality of parallel data streams, which are then preferably filtered by filters 2404. Filters 2404 apply a filter to each parallel data stream that corresponds to the pulse shape applied in the transmitter, e.g., transmitter 1500. Alternatively, an IFFT block can replace shifter 1614 and filtering can be done after the IFFT block This type ofimplementation can be mere effident depending on the implementation.
Next, receiver 2400 preferably includes decimalors 2406 configured to decimate the data rate of the parallel bit streams. Sampling at higher rates helps to ensure accurate recreation of the data. But the higher the data rate, the larger and more complex equalizer 2408 becomes. Thus, the sampling rate, and flierefore the number of samples, can be reduced by decimators 2406 to an adequate level that allows for a smaller and less costly equalizer 2408.
Equalizer 2408 is configured to reduce the effects of multipath in recdver 2300. Its cperation will be discussed more fully below. After equalizer 2408, the parallel data streams are sent to de-scrambler, decoder, and de-interieaver 2410, which perform the opposite operations of scrambler, encoder, and inteiieaver 1506 so as to reproduce the original data generated in the transmitter. The parallel data streams are then sent to parallel to serial converter 2412, which generates a single serial data stream firm the parallel data streams.
Equalizer 2408 uses the multipath estimates provided by correlator 2306 to equalize the effects of muttipaih in receiver 2300. In one embodiment, equalizer 2408 comprises Single-In Single-Out (SISO) equalizers operating on each parallel data stream in demodulator 2400. In this case, each SISO equalizer ∞nφrising equalizer 2408 receives a single input and generates a single equalized output Alternatively, each equalizer can be a MuWpIe-M Multiple-Out (MMO) or a Multiple-In Single-Out (MISO) equalizer. Multiple inputs can be required for example, when a frequency encoder or rate controller, such as frequency encoder 1900, is included in the transmitter. Because frequency encoder 1900 encodes information from more than one parallel data stream onto each sub-channel, each equalizers comprising equalizer 2408 need to equalize more than one sub-channel. Thus, for example, if a parallel data stream in demodulator 2400 cornprises d(l) + d(8), then equalizer 2408 will need to equalize both d(l) and d(8) together. Equalizer 2408 can then generate a single output corresponding to d(l) or d(8) (MISO) or it can generate both d(l) and d(8) (MMO).
Equalizer 2408 can also be a time domain equalizer (TDE) or a frequency domain equalizer (FDE) amending on the embodiment Generally, equalizer 2408 is a TDE if the modulator in the transmitter performs TDM on the parallel data streams, and aFDE if the modulator performs FDM But equalizer 2408 can be an FDE even ifTDM is used in the tiarismitter. Therefore, the preferred equalizer type should be taken into consideration when deciding what type ofblock termination to use in the transmitter. Because of power requiremerrl^ it is often preferable to use FDM on the forvvard link and TDM on the reverse link in a wireless communication system.
As with transmitter 1500, the various components comprising demodulator 2400 are preferably programmable, so that a single device can operate in a plurality of different systems and still maintain superior performance, which is a primary advantage of the systems and methods described herein. Accordingly, the above discussion provides systems and methods for implementing a channel access protocol Ural allows the transmitter and receiver hardware to be reprogrammed slightly depending on the communication system.
Thus, when a device moves from one system to another, it preferably reconfigures the hardware, i.e. transmitter and receiver, as required and switches to a protocol stack corresponding to the new system. An important part of reconfiguring the receiver is reconfiguring, or programming the equalizer because muhrpath is a main problem for each type ot system, lhe muitrpath, however, vanes depending on the type of system, which previously has meant that a different equalizer is required tor different types of communication systems. The channel access protocol desαibed in the preceding sections, however, allows for equalizers to be used that need only be reconfigured slightly for operation in various systems, a Sample Equalizer Embodiment
Figure 25 illustrates an example embodiment of a receiver 2500 illustrating one way to configure equalizers 2506 in accordance with the systems and methods described herein Before discussing lhe configuration of receiver 2500, it should be noted that one way to configure equalizers 2506 is to simply include one equalizer per channel (for the systems and methods described herein, a channel is the equivalent of a sub-channel as described above). A correlator, such as correlator 2306 (figure 23), can then provide equalizers 2506 with an estimate of the number, amplitude, and phase of any multiparhs present, up to some maximum number. This is also known as the Channel Impulse Response (CIR). The maximum number of multipaihs is determined based on design criteria for a particular implementation The more multipaths included in the CIR the more path diversity the receiver has and the more robust communication in the system will be. Path diversiry is discussed a little more fully below.
If there is one equalizer 2506 per channel, the CIR is preferably provided directly to equalizers 2506 tram 1he correlator (not shown). If such a correlator configuration is used, Ihen equalizers 2506 can be run at a slow rate, but the overall equalization process is relatively last For systems with a relatively small number of channels, such a configuration is therefore preferable. The problem, however, is that there is large variances in the number of channels used in different types of communication systems. For example, an outdoor system can have has many as 256 channels. This would require 256 equalizers 2506, which would make the receiver design too complex and costly. Thus, for systems with a lot of channels, the configuration illustrated in figure 25 is preferable. In receiver 2500, multiple channels share each equalizer 2506. For example, each equalizer can be shared by 4 channels, e.g., ChI -Ch4, Ch5-Ch8, etc., as illustrated in figure 25. In which case, receiver 2500 preferably comprises a memory 2502 configured to store information arriving on each channel.
Memory 2502 is preferably divided into sub-sections 2504, which are each configured to store information for a particular subset of channels. Information for each channel in each subset is then alternately sent to the appropriate equalizer 2506, which equalizes the information based on the CIR provided for that channeL In ftiis case, each equalizer must run much taster than it would if there was simply one equalizer per channel. For example, equalizers 2506 would need to run 4 or more times as last in order to effectively equalize 4 channels as opposed to 1. In addition, extra memory 2502 is required to buffer the channel information But overall, the complexity of receiver 2500 is reduced, because there are fewer equalizers. This should also lower the overall cost to implement receiver 2500.
Preferably, memory 2502 and the number of channels that are sent to a particular equalizer is programmable. In this way, receiver 2500 can be reconfigured for the most optimum operation for a given system. Thus, if receiver 2500 were moved from an outdoor system to an indoor system with fewer channels, then receiver 2500 can preferably be reconbgured so that there are fewer, even as tew as 1, enamel per equalizer. The rate at which equalizers 2506 are run is also preferably programmable such Ihat equalizers 2506 can be πin at Iheφtimum rate for Ihe number of cramels being equalized
In addition, if each equalizer 2506 is equalizing multiple channels, then the CIR for those multiple paths must alternately be provided to each equalizer 2506. Preferably, therefore, a memory (not shown) is also included to buffer the CIR information for each channel. The appropriate QR information is thmsentto each equalizer fiom the QRmernory (not shown) when the corresponding channel information is being equalized The QR memory (not shown) is also preferably programmable to ensure optimum operation regardless of what type of system receiver 2500 is operating in
Returning to the issue of path diversity, the number of paths used by equalizers 2506 must account for the delay spread ds in the system. For example, if the system is an outdoor system operating in the 5 Gga Hertz (GHz) range, the communication channel can comprise a bandwidth of 125 Mega Hertz (MHz), e.g., the channel can extend from 5.725 GHz to 5.85GHz. If the channel is divided into 512 sub-channels with aroll-off factor rof.125, then each subchannel will have a bandwidth of approximately 215 kilohertz (KHz), which provides approximately a 4.6 microsecond symbol duration Since the worst case delay spread ds is 20 microseconds, the numberofpaths used by equalizers 2504 can be set to amaximumof5. Thus, therewouldbe a first path Pl at zero microseconds, asecondpalhP2 at 4.6 microseconds, a thiid path P3 at 92 microseconds, a fourth path P4 at 13.8 microseconds, and fifflipathP5 at 18.4 microseconds, which is close to the delay spread 4 In another embodiment, a sixth path can be included so as to completely cover the delay spread ck however, 20 microseconds is the worst case. In fact, a delay spread d, of 3 microseconds is a more typical value. In most instances, therefore, the delay spread 4 will actually be shorter and an extra path is not needed Alternatively, fewer sub-channels can be used, thus providing a larger symbol duration, instead of using an extrapalh. But again, this would typically not be needed
As explained above, equalizers 2506 are preferably configurable so that they can be reconfigured for various communication systems. Thus, for example, the number of paths used must be sufficient regardless of the type of communication system. But this is also dependent on the number of sub-channels used If, for example, receiver 2500 went from operating in the above described outdoor system to an indoor system, where the delay spread 4 is on the order of 1 microsecond then receiver 2500 can preferably be reconfigured for 32 subchannels and 5 paths. Assuming the same overall bandwidth of 125 MHz, the bandwidth of each sub-channel is approximately 4 MHz and the symbol duration is approximately 250 nanoseconds.
Therefore, there will be a first path Pl at zero microseconds and subsequent paths P2 to P5 at 250ns, 500ns, 750ns, and 1 microsecond respectively. Thus, the delay spread ds should be covered for the indoor environment Again, the 1 microsecond delay spread ds is worst case so the 1 microsecond delay spread ds provided in 1he above example will often be more than is actually required This is preferable, towever, fcr indoor systems, because it ∞naUow operation to extend outside of the inside environment, e.g., just outside the building in which the inside environment operates. For campus style environments, where auser is likely to be traveling between buildings, this can be advantageous. 7. Sample Embodiment of a Wϊielάs'Cόϊhmunication device
Figure 26 illustrates an example embodiment of a wireless communication device in accordance with the systems and methods described herein. Device 2600 is, lor example, a portable communication device configured for operation in a plurality of indoor and outdoor communication systems. Thus, device 2600 comprises an antenna 2602 for transmitting and receiving wireless communication signals ova a wireless communication channel 2618. Duplexor 2604, or switch, can be included so that transmitter 2606 and receiver 2608 can both use antenna 2602, while being isolated from each other. Duplexors, or switches used for this purpose, are well known and will not be explained herein.
Transmitter 2606 is a configurable transmitter configured to implement the channel access protocol desαibed above. Thus, transmitter 2606 is capable of transmitting and encoding a wideband communication signal comprising a plurality of sub-channels. Moreover, transmitter 2606 is configured such that the various sub-components that comprise transmitter 2606 can be reconfigured, or programmed, as described in secdcm 5. Similarly, receiver 2608 is configured to implement the channel access protocol described above and is, therefore, also configured such that the various sub¬ components comprising receiver 2608 can be reconfigured, or reprogrammed, as described in section 6.
Transmitter 2606 and receiver 2608 are interfaced with processor 2610, which (^n corrrrxise various processing, controller, and/or Digital Signal Processing (DSP) circuits. Processor 2610 controls the operation of device 2600 including encoding signals to be transmitted by transmitter 2606 and decoding signals r^ 2610 can also include memory 2612, which can be configured to store operating instructions, e.g., firmware/software, used by processor 2610 to control the operation of device 2600.
Processor 2610 is also preferably configured to reprogram transmitter 2606 and receiver 2608 via control interlaces 2614 and 2616, respectively, as required by the wireless communication system in which device 2600 is operating. Thus, for example, device 2600 can be configured to periodically ascertain the availability is a preferred communication system. If the system is detected, then processor 2610 can be configured to load the corresponding operating instruction from memory 2612 and reconfigure transmitter 2606 and receiver 2608 for operation in the preferred system.
For example, it may preferable for device 2600 to switch to an indoor wireless LAN if it is available. So device 2600 may be operating in a wireless WAN where no wireless LAN is available, while periodically searching for the availability of an appropriate wireless LAN. Once the wireless LAN is detected, processor 2610 will load the operating instructions, e.g., the appropriate protocol stack, for the wireless LAN environment and will reprogram transmitter 2606 and receiver 2608 accordingly. In this manner, device 2600 can move from one type of communication system to another, while niaintaining superior performance.
It should be noted that a base station configured in accordance with the systerrø and metkxls herein will operate in a similar manner as device 2600; however, because the base station does not move from one type of system to another, there is generally no need to configure processor 2610 to reconfigure Iransnitter 2606 and receiver 2608 for operation in accordance with the operating instruction for a different type of system. But processor 2610 can still be configured to reconfigure, or reprogram the sub-components of transmitter 2606 and/or receiver 2608 as required by the operating conditions within the system as reported by communication devices in communication with the base station Moreover, such a base station can be configured in accordance witti the systems and meώodsdescώed herein to implement more
Figure imgf000029_0001
2608 to implement flie appropriate mode of operation 8. Bandwidth recovery
As described above in relation to figures 11-14, when a device, such as device 1118 is near the edge of a communication cell 1106, it may experience interference fiom base station 1112 of an adjacent communication cell 1104. In this case, device 1118 will report a low SIR to base station 1114, which will cause base station 1114 to reduce the number of sub-channels assigned to device 1118. As explained in relation to figures 12 and 13, this reduction can comprise base station 1114 assigning only even sub-channels to device 1118. Preferably, base station 1112 is correspondingly assigning only odd sub-channels to device 1116.
In this manner, base station 1112 and 1114 perform complementary reductions in the channels assigned to devices 1116 and 1118 in order to prevent interference and improve performance of devices 1116 and 1118. The reduction in assigned channels reduces the overall bandwidth available to devices 1116 and 1118. But as described above, a system implementing such a complementary reduction of sub-channels will still maintain a higher bandwidth than conventional systems. Still, it is preferable to recover the unused sub-channels, or unused bandwidth, created by the reduction of sub-channels in response to a low reported SIR.
One method for recovering the unused bandwidth is illustrated in the flow chart of figure 27. First, in step 2702, base station 1114 receives SIR reports for different groups of sub-channels from device 1118 as described above. If the group SIR reports are good, then base station 1114 can assign all sub-channels to device 1118 in step 2704. If, however, some of the group SIR reports received in step 2702 are poor, 1hen base station 1114 can reduce the number of sub-channels assigned to device 1118, e.g, by assigning only even sub-channels, in step 2706. At the same time, base station 1112 is preferably performing a complementary reduction in the sub-channels assigned to device 1116, e.g., by assigning only odd sub-channels.
At this point, each base station has unused bandwidth with respect to devices 1116 and 1118. To recover this bandwidth, base station 1114 can, in step 2708, assign the unused odd sub-channels to device 1116 in adjacent cell 1104. It should be noted that even though cells 1102, 1104, and 1106 are illustrated as geometrically shaped, non-overlapping coverage areas, the actual coverage areas do not resemble these shapes. The shapes are essentially fictions used to plan and describe a wireless communication system 1100. Therefore, base station 1114 can in fact communicate with device 1116, even Ihoughitis in adjacent cell 1104.
Once base station 1114 has assigned the odd sub-channels to device 1116, in step 2708, base station 1112 and 1114 communicate with device 1116 simultaneously over the odd sub-channels in step 2710. Preferably, base station 1112 also assigns the unused even sub-channels to device 1118 in order to recover Hie unused bandwidfli in cell 1104 as welL
In essence, spatial diversity is achieved by having both base station 1114 and 1112 communicate with device 1116 (and 1118) over the same sub-channels. Spatial diversity occurs when the same message is transmitted simultaneously ova statistically independent communication paths to the same receiver. The independence of the two paths improves the overall immunity of the system to lading. This is because the two paths will experience different lading effects. Therefore, if the receiver cannot receive the signal over one path due to fading, then it will probably still be able to receive the signal over the other path, because the fading that effected the first path wiUr^teffed the second. Asa result, spatial diversity improves overall system performance by improving the Bit Error Rate (BER) in the receiver, which effectively increases the deliverable data rate to the receiver, i.e., increase the bandwidth.
For effective spatial diversity, base stations 1112 and 1114 ideally transmit the same information at the same time over the same sub-channels. As mentioned above, each base station in system 11(X) is configured to transmit simultaneously, i.e., system 1100 is a TDM system with synchronized base stations. Base stations 1112 and 1114 also assigned the same sub-channels to device 1116 in step 2708. Therefore, all that is left is to ensure that base stations 1112 and 1114 send the same information Accordingly, the informaticeαmmunicated to device 1116 by base stations 1112 and 1114 is preferably coordinated so that the same information is transmitted at the same time. The mechanism for enabling this coordination is discussed more fully below. Such coordination, however, also allows encoding that can provide furiher performance enhancements within system 1100 and aUowagrealer percentage of the unused bandwidth to be recovered
One example coordinated encoding scheme that can be implemented between base stations 1112 and 1114 with respect to communications with device 1116 is Space-Time-Coding (STQ diversity. STC is illustrated by system 2800 in figure 28. In system 2800, transmitter 2802 transmits a message over channel 2808 to receiver 2806. Simultaneously, transmitter 2804 transmits a message over channel 2810 to receiver 2806. Because channels 2808 and 2810 are independent, system 2800 will have spatial diversity with respect to communications from transmitters 2802 and 2804 to receiver 2806. In addition, however, the data transmitted by each transmitter 2802 and 2804 can be encoded to also provide time diversity. The Mowing equations illustrate the process of encoding and decoding data in a STC system, such as system 2800.
First, channel 2808 can be denoted hn and channel 2810 can be denotedg^, where: hH =ahdβh ; and (1) gn = ag^s (2)
Second, we can look at two blocks of data 2812a and 2812b to be transmitted by transmitter 2802 as illustrated in figure 28. Block 2812a comprises N-symbols denoted as CLQ, ai, Ci2, ..., a^i, or a(0:N-l). Block 2812b transmits N- symbols of data denoted b(0: N-I). Transmitter 2804 simultaneously transmits two block of data 2814a and 2814b. Block2814aistheneg3bveinveise∞ηug^ Block2814b is the inverse conjugate ofblock 2812a and can therefore be described as a*(N-l:0). It should be noted that each block of data in the forgoing description will preferably comprise a cyclical prefix as described above.
When blocks 2812a, 2812b, 2814a, and 2814b are received in receiver 2806, they are combined and decoded in the following manner First, the blocks will be combined in the receiver to form the following blocks, after discarding the cyclical prefix:
Bbckl =a(0:N-l) ®hn-b*(N-l:0) <%«;and(3)
Block2 = b(0:-N-l) ®hn + a*(N-l:0) ®& (4) Where the symbol <S> represents a cyclic convolution
Second, bytaking an IKbI ofthe blocks, the blocks can be described as: Blockl =An*Hn-Bn* *Gn,diύ (5)
Bbck2 =Bn*Hn-An* *Gn. (6)
Where«-0toN-7.
In equations (5) and (6) Hn and Gn will be known, or can be estimated. But to solve the two equations and determine^ and Bn, it is preferable to turn equations (5) and (6) into two equations with two unknowns. This can be achieved using estimated signals Xn and Yn as follows:
Xn =A *Hn-Bn* *Gn,arή (I)
Yn =Bn *Hn +A**Gn. (8)
To generate two equations and two unknowns, the conjugate of Yn can be used to generate the following two equations:
Xn =A^Hn-Bn*. Gn; ml (9)
Yn* =Bn* .Hn*+An .Gn*. (10)
Thus, the two unknowns areΛ andZ?n* and equations (9) and (10) define amatrix relationship in terms of these two unknowns as follows:
Figure imgf000031_0003
Figure imgf000031_0001
Which can be rewritten as:
Figure imgf000031_0002
Signals An and Bn can be determined using equation (12). It should be noted, that the process just described is not the only way to implement STC. Other methods can also be implemented in accordance with the systems and methods described herein. Importantly, however, by adding time diversity, such as described in the preceding equations, to the space diversity already achieved by using base stations 1112 and 1114 to communicate with device 1116 simultaneously, the BER can be reduced even further to recover even more bandwidth.
An example transmitter 2900 configured to communicate using STC in accordance with the systems and methods described herein is illustrated in figure 29. Transmitter 2900 includes a block storage device 2902, a serial-to- parallel converter 2904, encoder 2906, and antenna 2908. Block storage device 2902 is included in transmitter 2900 becausealblcckdelayisnecessarytoimplemeπtthecαl^ This is because transmitter 2804 first transmits -£>„* (h =./V-i toO). Butόnisthesecx3ndblcdς soiftrarisrrύtter2900isgoingtotiansrrύ two blocks, e.g., an and bm and then generate block 2814a and 2814b (see figure 28).
Serial-to-parallel converter 2904 generates parallel bit streams from the bits ofblocks an and bn. Encoder 2906 then encodes the bit streams as required, e.g., encoder 2906 can generate -On* and an* (see blocks 2814a and 2814b in figure 28). The encoded blocks are then combined into a single transmit signal as described above and transmitted via antenna2908.
Transmitter 2900 preferably uses TDM to transmit messages to receiver 2806. An alternative transmitter 3000 embodiment that uses EDM is illustrated in figure 30. Transmitter 3000 also includes block storage device 3002, a serial- to-parallel converter 3004, encoder 3006, and antenna 3008, which are configured to perform in the same manner as the corresponding components in transmitter 2900. But in addition, transmitter 3000 includes IFFTs 3010 to take the IFFT of the blocks generated by encoder 2906. Thus, transmitter 3000 transmits -Bn* and An* as opposed to -b * and a *, which provides space, frequency, and time diversity.
Figure 31 illustrates an alternative system 3100 that also uses FDM but that eliminates the 1 block delay associated with transmitters 2900 and 3000. In system 3100, transmitter 3102 transmits over channel 3112 to receiver 3116. Transmitter 3106 transmits over channel 3114 to receiver 3116. As with transmitters 2802 and 2804, transmitters 3102 and 3106 implement an encoding scheme designed to recover bandwidth in system 3100. In system 3100, however, the coordinated encoding occurs at the symbol level instead of the block leveL
Thus, for example, transmitter 3102 can transmit block 3104 comprising symbols ao, au a.2, and 03. Ih which case, transmitter 3106 will transmit ablock 3108 comprising symbols -aj*, ao* -03*, and a?. As can be seen, this is the same encoding scheme used by transmitters 2802 and 2804, but implemented at the symbol level instead of the block level. As such, there is no need to delay one block before transmitting. An IhFl' of each block 3104 and 3108 can then be taken and transmitted using FDM An IFFT 3110 ofblock 3104 is shown in figure 3 l fcrpurpctses of illustration
Channels 3112 and 3114 can be described by Hn and Gn, respectively. Thus, in receiver 3116 the following symbols will be formed:
Figure imgf000032_0001
(A,.H0+(V*G0 (A2.H^-(A3*.Gi) (A3.H3)+(A2*-G3).
In time, each symbol a,, (n - 0 to 3) occupies a slightly different time location In frequency, each symbol An (n = 0to3) occupies a støgMy different frequency. Thus, each symbol^, is transmitted over a slightly different channel, i.e., Hn (n = 0 to 3) or Gn (n = 0 to 3), which results in the combinations above.
As can be seen, the symbol combinations formed in the receiver are of the same form as equations (5) and (6) and, therefore, can be solved in the same manner, but without the one block delay.
In order to implement STC or Space Frequency Coding (SFQ diversity as described above, bases stations 1112 and 1114 must be able to coordinate encoding of the symbols that are simultaneously sent to a particular device, such as device 1116 or 1118. Fortunately, base stations 1112 and 1114 are preferably interfaced with a common network interface server. For exarrφle, ma IAN, base stations 1112 and 1114 (whiΛ the case of a LAN) are interfaced with a common network interface server that connects the LAN to a larger network such as a Public Switched Telephone Network (PSTN). Similarly, in a wireless WAN, base stations 1112 and 1114 are typically interfaced with a common base station control center or mobile switching center. Thus, coordination of the encoding can be enabled via the common connection with the network interface server. Bases station 1112 and 1114 can then be configured to share information through this common connection related to communications with devices at the edge of cells 1104 and 1106. The sharing of information, in turn, allows time or frequency diversity coding as described above.
It should be noted that other forms of diversity, such as polarization diversity or delay diversity, can also be combined with the spatial diversity in a communication system designed in accordance with the systems and methods described herein. The goal being to combine alternative forms of diversity with the spatial diversity in order to recover larger amounts ofbandwidth. It should also be noted, that the systems and methods described can be applied regardless ofhe number ofbase stations, devices, and communication cells involved.
Briefly, delay diversity can preferably be achieved in accordance with the systems and methods described herein by cyclical shifting the transmitted blocks. For example, one transmitter can transmit a block comprising A0, Ai , A2, and A3 in that order, while the other transmitter transmits the symbols in the following order A3, AQ, AI, and A2. Therefore, it can be seen that the second transmitter transmits a cyclically shifted version of the block transmitted by the first transmitter. Further, the shifted block can be cyclically shifted by more then one symbol of required by a particular implementation 9. Forward Error Correction
Forward Error Correction (FEC) is used to control errors in a communication system. When FEC is included, extra bits are transmuted wnntne αatatnat can oe useα cyme receiver to dieck for errors in the data that was received Depending on the implementation, the receiver can then ask that the data be resent if too many errors are detected. Alternatively, the receiver can include some mechanism by which it Iries to correct detected errors.
Accordingly, as can be seen in figure 32, an FEC encoder 3202 adds bits to an input data stream 3204 to create an output data stream 3206 that necessarily has a higher data rate due to the added bits. In the example of figure 32, FEC encoder 3202 is a 1A rate FEC encoder, which means that for every input bit dm FEC encoder 3202 adds abit that can be used to detect errors when data stream 3206 is decoded. Thus, the data rate of output 3206 is twice that of input 3204. Data stream 3206 can then be modulated and transmitted to a recdvα. In the receiver, an FEC decoder 3208 can be used to remove the extra bits and detect errors in the original data. Thus, FEC decoder 3208 should match FEC encoder 3202, Le., FEC decoder 3208 should be a 1/2 rate FEC decoder, in toe above example.
A problem with conventional FEC encoders and decoders is that 1he data rates can be too high for conventional technology. This can be especially true, for example, in an ultra - wideband application, where the data rates can be extremely high. One way to overcome this problem in accordance with the systems and methods described herein is illustrated in figure 33, which depicts a portion of a transmitter chain 3300. In the example of figure 33, a data stream 3302, with a data rate (R) is first split into a plurality of parallel data streams 3306 in serial to parallel converter 3304, each with a lower data rate (R/n) where n is the number of parallel data streams 3306. The parallel data streams 3306 can then be encoded using a plurality of FEC encoders. Here two encoders 3308 and 3310 are illustrated. Thus, each of FEC encoders 3308 and 3310 can, depending on the implementation, handle half as much data and operate at a lower speed than required in a conventional system More generally, FEC encoders 3308 and 3310 can be configured to assist each other with FEC encoding and reduce the overall load on each FEC encoder in the systenx This, ofcourse, requires some coordination, or message passing, between the two FEC encoders.
The outputs of FEC encoders 3308 and 3310 can then, for example, be passed Ihrough Parallel to serial converters 3312 and 3314 and combined via combiner 3316 into a single data stream with FEC encoding. The single data stream can tiien be optional filtered and/or pulse shaped before being modulated an transmitted, e.g., via optional block 3318.
In another example embodiment, of an FEC encoder configured in accordance with the systems and methods described herein, a code word is generated from an input data word by adding rjarity bits to the data word as illustrated in figure 34. In this example embodiment, FEC encoder 3402, referred to as a LDPC, takes data word 3404 and generates output code word 3406. As can be seen, the data word and code word are illustrated in matnx form. Thus, for exarnple, thedatawordisamatrkoomprisingAriOwsand 1 column.
In one embodiment of an LDPC 3402, the code word can be generated using a gmerator matrix as illustrated by the following equation:
Figure imgf000034_0001
where: Glacis Ihe Generator Matrix N=M+lς R=k/N;
Figure imgf000035_0001
The generator matrix can, in turn, he generated fiom an identify matrix andaparity check matrix as illustrated in the Mowing equation:
G=DtP] (14) where: I = the identity matrix; and P =theparity matrix.
Alternatively, aparitymatrixHcanbeusedto generate the code woid C according to the following:
ΗMXN * C >M = 0 MX1 (15) The parity matrix Hcan then be defined as:
Figure imgf000035_0002
Accordingly, and dropping the subscripts for simplicity:
Figure imgf000035_0003
Q?* P )+QP* d )=0 (18)
The goal now is to solve for P , since d is known, i.e., it is the input data To facilitate finding P in one embodiment, ϊf is configured as a dual diagonal matrix withMrows and Mcolumns.Iλjal diagonal matrices are well known and will not be described here; however and exemplary one is illustrated by the following:
1 1 0 0 ... 0
0 1 1 0 ... 0
0 0 1 1 ... 0
Hp= (19)
0 0 0 1
1
0 0 0 0 1
Further, HD can, depending on the embodiment, be formed from a matrix of matrices. M cme embodiment, this
Figure imgf000035_0004
B, CandZ) can be used as in Ihe following:
Figure imgf000036_0001
Here, each of the matrices A B, C, and-D will have k/4 rows and k/4 columns. Thus, an encoder and decoder configured in accordance with the systems and methods described herein can be optirnized for a dual diagonal tf and a block cyclic H0, as explained below. Many methods can be used to generate matrices A B1 C, and D consistent with the systems and methods described herein. One example method, however, will be described in the following paragraphs. This example method will assume, for the time being, that k = 16 and therefore A/4- =4. Then an identity matrix /can be used, such as the following:
Figure imgf000036_0002
Each of matrices A, B, C, and D can then be generated from this identity matrix / For example, a permutation vector, in this example oflength 4, can then be used to generate A Qfrøuise,othermetrκxlsforgeneratingmarricesΛ B,
Figure imgf000036_0003
following form, once an appropriate permutation vector is used to modify identity matrix /:
0 0 0 1 1 0 0 0
A= (22) 0 0 1 0 0 1 0 0
Basically, as can be seen, a permutation vector can be used to shift the positions of the l's in identity matrix /. In one embodiment, a single permutation matrix can be required. Once the first matrix A is generated using the single permutation vector, then the other matrices B, C, and D can be generated by shifting matrix A For example, in one embodiment, each subsequent matrices B, C, and D is generated by shifting he previous matrix, starting with A, by 90°. Thus, B would be as follows:
1 0 0 0 0 0 1 0
B= (23) 0 0 0 1 0 1 0 0 But as can be seen, in Hie example embodiment for generating matrices A, B, C, and D described above, each row has only a single 1.
In one embodiment, Galois Field algebra (GF(2)) can be used to define the following equations for use in solving for P :
1 + 1=0, 1-1=0; 1+0=1; 0+1 = 1; 0+l = l;and 0-1=4 = 1. (24)
Thus, even results are equal to 0, while odd results are equal to 1. Now returning to the equation at issue:
(HP*P)+(HD* J)=O (18) This can be rewritten as:
(HP*P)=-(HD* d) (25) But using the equations (24), -1 = l,1herefore:
(H1^P)=(H0* d) (26) In one embodiment, the following equation can be used:
(H0* d)= ύ (27)
Accordingly:
(rf* P)=u (28)
Eqιiation(28)canbeinplementedefFectrvelyif M can be generated efficiently. In one embodiment, based on the examples above, ifk = 6, then w can be determined as follows:
Figure imgf000037_0001
This will result in the following equations: Po = uo >
Figure imgf000038_0001
P4 + P2 = M4 ;
Figure imgf000038_0002
;
The equations of (30) define the following general equation:
Figure imgf000038_0003
This equation then suggest a configuration for an LDPC encoder 3500, such as that illustrated in figure 35. As can be seen, the u values are fed into Exclusive-OR (XOR) 3502, the output of which is fed through a delay 3504 and back to the other input of XOR 3502. A remaining issue, however, is 1he generation of the ύ terms. In other words, the equation(Hp* P )= U asimplemertoibyblock3506stouldalsobedcnemfe
In the example above, HD was partitioned in 4s, therefore d should also be partitioned by 4 as illustrated in the following:
Figure imgf000038_0004
The above equation can be implemented efficiently, for example, using a circuit such as the example circuit illustrated in figure 36. The circuit of figure 36 is generalized for Ihe more realistic situation where k — 128; however, it will be appreciated that the example embodiments described herein are not limited to any particular lengths or configurations. As can be seen, the circuit of figure 36 uses a bank of cjclic shift registers 3606 to implement d . The outputs of shift registers 3606 can then be passed to a plurality XORs 3602 as shown. Thus, XORs 3202 collect the appropriate outputs from shift registers 3606 in order to generate the u terms.
But since it is known, in the examples above, that the output of each cyclic shift register will only have one 1, duetothefactthatΛ jδ, C3and/J)haveonlyone l in each row, the outputs ofc^lic shift registers 36C)6 can be rearranged and fixed so that, e.g., the first outputs of each go to the first XOR 3202, the second outputs go to the second XOR 3202, etc. Accordingly, efficient fixed connections 3608 can be used to reduce the complexity of LDPC 3500. The U terms can then be registered and fed to XOR 3502 as illustrated.
Accordingly, if everything is segmented by 4s as illustrated in the above examples, 1hen the cyclic shift registers 3606 can be shifted k/4 times. On each clock cycle, k/4 of the solution would be generated, such that it takes k/4 cycles to get the entire solution This can result in a highly parallel encoder, such as that illustrated in figure 36, for high speed operation. The result can also be a low cost encoder, because the hardware requii^ can be rediced to l/4tii1hatrequ^ by conventional circuits through the reuse of the components.
The LDPC encoder of figure 3600 can, therefore, be used to generate code word C, which can be modulated an transmitted But he receiverwill receive Ccoπuptedbynoise as illustrated in the following:
x = {l - 2C)+ (noise) (33)
The job of the decoder is then to extract d fiom the signal represented by equation (33). In one embodiment, this can be accomplished by making soft decisions as to the value of x and combining it with hard decisions related to thesign x suchthat d ran then be accuracy determined The soft d^ example, if 4 bits are used in 2's complement, then y_>u can have up to 16 levels. In one embodiment, the levels can, for example, be from -8 to 7. Alternatively, using offset 2's complement, the levels can be tram -7.5 to 7.5. An advantage of the later is that the levels are not biased, e.g., toward the negative. An advantage of the former, however, is that it includes the level 0. Of course, any level scheme can be used as long as it allows for accurate detemiinations of <i .
The levels can be used to determine the probabilities of the value of x and ultimately d . For example, if the level determined for x is7or7.5,1hen1hedeαxlerc^beconfiguredtosee1hisasaMg^ the level is -8 or -7.5, then this can be seen as a high probability that the value is - 1.
Parity check equations can then be generated tram the following:
Figure imgf000039_0001
This will a set of parity equations in which, based on the examples above, there will be 6 terms, except in the last one, because there is exactly one 1 in each row of A B, Q and D., The first offlieseparity equations would then, e.g., look like tfie following, based on the above examples:
S0 = X0 + x, + X2 + X3 + x4 + X5 (35)
Then, if S0 = +1 , then the operation can be viewed as passing. If, on the other hand, it is - 1, then it can be viewed as a failure. A parity node processor 3702 can be used to implement equation (35), as illustrated by the example embodiment depicted in figure 37. Message passing algorithms can be used to allow each such node 3702 to make final estimations.
Figure 39 is a diagram illustrating and example embodiment in which apluratityofparity node processors 3702 are configured in accordance with the systems and methods described herein. Thus, each node 3702 receives information as to what the values X0, x\, . . . XN are believed to be. A given node 3702 can then process Ihisinforrnation and produce estimates as to what the node believes the output of the other nodes should be and feed this information back in such a manner that the subsequent input to the other nodes is modified. It should be roted, therefore, that in such an embocliment, anode does not produce information to be feedback to its own input relatedto what it believes its own output should be.
This is illustrated in figure 38 for a single node processor at time = 0. As can be seen, information for each bit is provided to node 3702, which processes the information and produces information related to what it determines each bit should be. These input and outputs can be referred to as edges (E). Each output edge is feedback to the relevant input bit The node processors 3702 will, therefore, comprise storage to store the information being fed to it and processed as required. As a result, both storage and routing overheads can become excessive.
For example, when information related to bit XQ is fed to node S0, the information from each other node related to X0 is also added into the information provided to SQ. This is illustrated by the following:
xo+EM(s1^xo)+Ew(S2 ^xo)+... (36)
Again, as mentioned above, in this embodiment, the edge produce by node S0 is not fed back to bit XQ. Figure 40 is a diagram illustrating an example decoder 4000 that can be configured to reduce storage and routing overhead in accordance with one embodiment of the systems and methods described herein. The basic premise behind decoder 4000 is that all the edges produced form parity node processor 4002 can be added and then the last edge for each node, produced by that node, can be subtracted out Thus, on the right hand side of figure 40, a given row can be updated for all edges and then shifted in shift registers 4004. The appropriate edge can then be sijbtracted out for each row using the data provided from registers 4014, as opposed to doing each row, storing the result and updating it with information form other nodes.
It should be noted that the output of shift registers 4004 can be rearranged and fixed to reduce routing overhead It should also be noted that this process provides an approximation of the correct data; however, the results converge and ultimately provide tie same answer. Qn the left hand side of decoder 4000, each shift register 4008 gets information from only two nodes 3702, e.g., viaregisters 4010 and 4012.
While embodiments and irnplementations of the invention have been shown and described, it should be apparent that many more embodiments and implementations are within the scope of the invention Accordingly, the invention is not to be restricted, except in light of the claims and their equivalents.

Claims

1. A forwaid-eiror-correction (FEQ encoder, comprising:
apluralityofblock cyclic shift registers; a plurality of connections between each of the plurality ofblock cyclic shift registers; and
a plurality ofXOR gates communicating with the plurality of connections, the connections arranged such that a
first connection between each of the plurality ofblock cyclic shift registers communicates with a first of the plurality of XOR gates, a second connection between each of the plurality ofblock cyclic shift registers communicates with a second of the plurality ofXOR gates, and so on until a last of the connections between each of the block cyclic shift registers
communicates with a last of the plurality ofXOR gates.
2. The FEC encoder of claim l,fuitherccHTpis]higaregjsterconfiguredto
of XOR gates.
3. The F^ encxder of claim 2, funiiα comprising aro
another XOR gate configured to XOR the output stored in the register with a delayed version of the output stared in Ihe register.
4. The EEC encoder of claim 1, wherein the EEC encoder is configured to produce a code word from input data
bits.
5. The FΕC encoder ofclam 4, wherem the code word K
6. TheFECencoderofclam5,wheremtheparitymatri^
7. The EEC encoder of claim 5, wherein theparitymatrix comprises amatrix ofblock cyclic matrices.
8. The EEC encoder of claim 1, wheϊi±ithepluratityofcoimectionsareike^ amatrix ofblock cyclic matrices.
9. The EEC encoder of claim 7, wherein each of the plurality ofblock cyclic matrices are generated from an identitymatrix and apermutation vector.
10. TheEECerκ»derofclam9,wherehafirstoftte the identitymatrix and apermutation vector, and each of the subsequent plurality ofblock cyclic matrices are generated by rotating the previous block cyclic matrix.
33
11. A transmitter, comprising: aprccessorconfiguredtogena^datatotetaansnitt^
an forwand-error-corπection (FEC) encoder configured to generate a code word based on the data, the FEC
encoder comprising: a plurality of block cyclic shift registers configured to receive the data and shift it through the plurality of block
cyclic shift registers; a plurality of connections between each of the plurality ofblock cyclic shift registers, the plurality of connections
configured to allow the datatobe shifted through the plurality ofblock cydic shift registers; and
a plurality of XOR gates communicating with the plurality of connections, the connections arranged such that a first connection between each of the plurality ofblock cydic shift registers communicates with a first of the plurality of XOR gates, a second connection between each of the plurality ofblock cyclic shift registers communicates with a second
of the plurality of XOR gates, and so on until a last of the connections between each of the block cyclic shift registers
communicates with a last of the plurality ofXOR gates.
12. The transmitter of claim ll,lut1hα(X)mprisingaregister(xrfguredtostoreanouφutofeachofthepruralityof XOR gates.
13. The transmitter of claim 12, iurther comprising another XOR gate communicating with the register, the another
XOR gate configured to XOR the output stored in the register with a delayed version of the output stored in the register.
14. The transmitter of claim 11, wherein the code word is generated using aparrtyrnatrix.
15. The transmitter of claim 14, whereintheparitymatrixconprisesadualdiagonalmatrix.
16. The transmitter of claim 14, wherein theparitymalrkcorrφrisesaniatrixofblcickcycHcmatrices.
17. The transmitter of claim 16,wherehthepluraUtyofikedccrøiectiorøa^ and amatrix ofblock cyclic matrices.
18. The transmitter of claim 16,whejeheachofthepluralityofblock<^Hcmatricesare matrix and a permutation vector.
19. The transmitter of claim 18, whereinafirstofthepluralityofblockcycHcmatricesis generated directly from the identity matrix and apemiutation vector, and each ol the subsequentplurality ofblock cyclic matrices are generated by
rotating the previous block cydic matrix.
PCT/US2005/028800 2004-09-27 2005-08-11 Systems and methods for forward error correction in a wireless communication network WO2006036332A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/952,485 2004-09-27
US10/952,485 US7406647B2 (en) 2001-12-06 2004-09-27 Systems and methods for forward error correction in a wireless communication network

Publications (1)

Publication Number Publication Date
WO2006036332A1 true WO2006036332A1 (en) 2006-04-06

Family

ID=36119210

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2005/028800 WO2006036332A1 (en) 2004-09-27 2005-08-11 Systems and methods for forward error correction in a wireless communication network

Country Status (2)

Country Link
US (2) US7406647B2 (en)
WO (1) WO2006036332A1 (en)

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7349478B2 (en) * 2001-12-06 2008-03-25 Pulse-Link, Inc. Ultra-wideband communication apparatus and methods
US7941149B2 (en) 2002-05-13 2011-05-10 Misonimo Chi Acquistion L.L.C. Multi-hop ultra wide band wireless network communication
US7957356B2 (en) 2002-05-13 2011-06-07 Misomino Chi Acquisitions L.L.C. Scalable media access control for multi-hop high bandwidth communications
US8780770B2 (en) 2002-05-13 2014-07-15 Misonimo Chi Acquisition L.L.C. Systems and methods for voice and video communication over a wireless network
US7852796B2 (en) * 2002-05-13 2010-12-14 Xudong Wang Distributed multichannel wireless communication
CN1663147A (en) 2002-06-21 2005-08-31 威德菲公司 Wireless local area network repeater
US8885688B2 (en) 2002-10-01 2014-11-11 Qualcomm Incorporated Control message management in physical layer repeater
WO2004034600A1 (en) 2002-10-11 2004-04-22 Widefi, Inc. Reducing loop effects in a wireless local area network repeater
MXPA05003929A (en) 2002-10-15 2005-06-17 Widefi Inc Wireless local area network repeater with automatic gain control for extending network coverage.
US8078100B2 (en) 2002-10-15 2011-12-13 Qualcomm Incorporated Physical layer repeater with discrete time filter for all-digital detection and delay generation
US7230935B2 (en) 2002-10-24 2007-06-12 Widefi, Inc. Physical layer repeater with selective use of higher layer functions based on network operating conditions
EP1568167A4 (en) 2002-11-15 2010-06-16 Qualcomm Inc Wireless local area network repeater with detection
JP2006510326A (en) 2002-12-16 2006-03-23 ワイデファイ インコーポレイテッド Improved wireless network repeater
US8027642B2 (en) 2004-04-06 2011-09-27 Qualcomm Incorporated Transmission canceller for wireless local area network
EP1745567B1 (en) 2004-05-13 2017-06-14 QUALCOMM Incorporated Non-frequency translating repeater with detection and media access control
EP1769645A4 (en) 2004-06-03 2010-07-21 Qualcomm Inc Frequency translating repeater with low cost high performance local oscillator architecture
KR101065693B1 (en) * 2004-09-17 2011-09-19 엘지전자 주식회사 Method of encoding or decoding using LDPC code and method of generating LDPC code
US20060106840A1 (en) * 2004-11-04 2006-05-18 International Business Machines Corporation System and method for tracking notifications in a publish subscribe system
WO2006081405A2 (en) 2005-01-28 2006-08-03 Widefi, Inc. Physical layer repeater configuration for increasing mino performance
JP4617985B2 (en) * 2005-04-25 2011-01-26 ソニー株式会社 Encoding apparatus and encoding method
US8601269B2 (en) * 2005-07-15 2013-12-03 Texas Instruments Incorporated Methods and systems for close proximity wireless communications
WO2007091779A1 (en) 2006-02-10 2007-08-16 Lg Electronics Inc. Digital broadcasting receiver and method of processing data
EP2002565A4 (en) * 2006-03-31 2012-07-04 Qualcomm Inc Enhanced physical layer repeater for operation in wimax systems
WO2007126196A1 (en) 2006-04-29 2007-11-08 Lg Electronics Inc. Digital broadcasting system and method of processing data
WO2007136166A1 (en) 2006-05-23 2007-11-29 Lg Electronics Inc. Digital broadcasting system and method of processing data
US8175613B2 (en) 2006-08-04 2012-05-08 Misonimo Chi Acquisitions L.L.C. Systems and methods for determining location of devices within a wireless network
WO2008036401A2 (en) 2006-09-21 2008-03-27 Qualcomm Incorporated Method and apparatus for mitigating oscillation between repeaters
JP4818045B2 (en) * 2006-09-28 2011-11-16 株式会社東芝 Wireless communication device
US7839900B1 (en) * 2006-09-29 2010-11-23 Rockwell Collins, Inc. Method and architecture for TTNT symbol rate scaling modes
KR100837730B1 (en) * 2006-09-29 2008-06-13 한국전자통신연구원 Method for reduced complexity encoder generating low density parity check codes
US7873104B2 (en) 2006-10-12 2011-01-18 Lg Electronics Inc. Digital television transmitting system and receiving system and method of processing broadcasting data
RU2414064C2 (en) 2006-10-26 2011-03-10 Квэлкомм Инкорпорейтед Repeater techniques for multiple input multiple output system using beam formers
WO2008070871A2 (en) * 2006-12-07 2008-06-12 Misonimo Chi Acquisition L.L.C. System and method for timeslot and channel allocation
KR101285887B1 (en) 2007-03-26 2013-07-11 엘지전자 주식회사 Digital broadcasting system and method of processing data in digital broadcasting system
KR101253185B1 (en) 2007-03-26 2013-04-10 엘지전자 주식회사 Digital broadcasting system and data processing method
KR101285888B1 (en) 2007-03-30 2013-07-11 엘지전자 주식회사 Digital broadcasting system and method of processing data in digital broadcasting system
WO2009005326A2 (en) 2007-07-04 2009-01-08 Lg Electronics Inc. Digital broadcasting system and method of processing data
JP4580035B2 (en) * 2007-08-17 2010-11-10 株式会社エヌ・ティ・ティ・ドコモ Mobile communication method, radio base station apparatus and mobile station
KR20090131230A (en) * 2008-06-17 2009-12-28 삼성전자주식회사 Low density parity code encoding device and decoding device using at least two frequency bands
US8443270B2 (en) * 2008-12-09 2013-05-14 Entropic Communications, Inc. Multiple input hardware reuse using LDPC codes
US8286049B1 (en) * 2009-03-17 2012-10-09 Qualcomm Atheros, Inc. Configurable transmitter including flexible block coder
US8472868B2 (en) 2009-05-06 2013-06-25 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for MIMO repeater chains in a wireless communication network
US8750792B2 (en) 2012-07-26 2014-06-10 Remec Broadband Wireless, Llc Transmitter for point-to-point radio system
US10644829B2 (en) 2016-09-15 2020-05-05 Huawei Technologies Co., Ltd. Method and apparatus for encoding data using a polar code
US10541770B2 (en) 2017-02-06 2020-01-21 Valens Semiconductor Ltd. Efficient recovery of lost packets using double parity forward error correction

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5784387A (en) * 1994-10-31 1998-07-21 International Business Machines Corporation Method for detecting start-of-frame, end of frame and idle words in a data stream
US6023783A (en) * 1996-05-15 2000-02-08 California Institute Of Technology Hybrid concatenated codes and iterative decoding
US20010025361A1 (en) * 1999-12-18 2001-09-27 Kim Sae-Joon XOR code and serially concatenated encoder/decoder using the same
US20030079171A1 (en) * 2001-10-24 2003-04-24 Tim Coe Forward error correction
US20030104788A1 (en) * 2001-09-01 2003-06-05 Sungwook Kim Decoding architecture for low density parity check codes

Family Cites Families (148)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3568148A (en) 1969-04-02 1971-03-02 Radiation Inc Decoder for error correcting codes
NL7502054A (en) 1975-02-21 1976-08-24 Philips Nv CLOCK PULSE GENERATOR.
US4001693A (en) 1975-05-12 1977-01-04 General Electric Company Apparatus for establishing communication between a first radio transmitter and receiver and a second radio transmitter and receiver
US4278978A (en) 1979-09-18 1981-07-14 Nasa Baseband signal combiner for large aperture antenna array
NL8000883A (en) 1980-02-13 1981-09-16 Philips Nv COHERENT RECEIVER FOR ANGLE MODULATED DATA SIGNALS.
US4498174A (en) * 1982-08-25 1985-02-05 Ael Microtel Limited Parallel cyclic redundancy checking circuit
US4569052A (en) * 1983-07-14 1986-02-04 Sperry Corporation Coset code generator for computer memory protection
US4707839A (en) 1983-09-26 1987-11-17 Harris Corporation Spread spectrum correlator for recovering CCSK data from a PN spread MSK waveform
DE3428046A1 (en) 1984-07-30 1986-01-30 Siemens AG, 1000 Berlin und 8000 München METHOD AND DEVICE FOR DELAYING AN ULTRASONIC SIGNAL
US4847876A (en) 1986-12-31 1989-07-11 Raytheon Company Timing recovery scheme for burst communication systems
US4905234A (en) 1987-06-03 1990-02-27 General Electric Company Apparatus and method for transmitting digital data over a radio communications channel
US4860003A (en) 1988-05-27 1989-08-22 Motorola, Inc. Communication system having a packet structure field
US5109390A (en) 1989-11-07 1992-04-28 Qualcomm Incorporated Diversity receiver in a cdma cellular telephone system
JP2675890B2 (en) 1990-03-06 1997-11-12 キヤノン株式会社 Spread spectrum communication equipment
US5041836A (en) 1990-06-14 1991-08-20 Ball Corporation Self-steered antenna system
DE59106942D1 (en) 1990-11-22 1996-01-04 Ascom Tech Ag Multiple access method and mobile radio system for carrying out the multiple access method.
US5087835A (en) 1991-03-07 1992-02-11 Advanced Micro Devices, Inc. Positive edge triggered synchronized pulse generator
EP0505657A1 (en) 1991-03-27 1992-09-30 International Business Machines Corporation Preamble recognition and synchronization detection in partial-response systems
US5177765A (en) 1991-06-03 1993-01-05 Spectralink Corporation Direct-sequence spread-spectrum digital signal acquisition and tracking system and method therefor
US5467367A (en) 1991-06-07 1995-11-14 Canon Kabushiki Kaisha Spread spectrum communication apparatus and telephone exchange system
US5235326A (en) 1991-08-15 1993-08-10 Avid Corporation Multi-mode identification system
US5555183A (en) 1991-12-02 1996-09-10 Motorola, Inc Method and apparatus for synchronizing to a synchronous selective call signal
US5422952A (en) 1992-06-03 1995-06-06 Itt Corporation Dynamic radio communications system
US5416767A (en) 1993-02-08 1995-05-16 U.S. Philips Corporation Method of transmitting a data stream, transmitter and receiver
US5389939A (en) 1993-03-31 1995-02-14 Hughes Aircraft Company Ultra wideband phased array antenna
JPH0775099A (en) 1993-05-07 1995-03-17 Philips Electron Nv Transmission method, transmitter and receiver for transmitting multiplex orthogonal-amplitude-modulation type television
US5675572A (en) 1993-07-28 1997-10-07 Sony Corporation Orthogonal frequency division multiplex modulation apparatus and orthogonal frequency division multiplex demodulation apparatus
US5377223A (en) 1993-08-30 1994-12-27 Interdigital Technology Corporation Notch filtering a spread spectrum signal using fourier series coefficients
US5396110A (en) 1993-09-03 1995-03-07 Texas Instruments Incorporated Pulse generator circuit and method
JP3102221B2 (en) 1993-09-10 2000-10-23 三菱電機株式会社 Adaptive equalizer and adaptive diversity equalizer
IL111469A0 (en) 1993-11-01 1994-12-29 Omnipoint Corp Despreading/demodulating direct sequence spread spectrum signals
US5457702A (en) * 1993-11-05 1995-10-10 The United States Of America As Represented By The Secretary Of The Navy Check bit code circuit for simultaneous single bit error correction and burst error detection
US5659572A (en) 1993-11-22 1997-08-19 Interdigital Technology Corporation Phased array spread spectrum system and method
JPH07170225A (en) 1993-12-15 1995-07-04 Fujitsu Ltd Radio communication system
US5809060A (en) 1994-02-17 1998-09-15 Micrilor, Inc. High-data-rate wireless local-area network
IL114471A0 (en) 1994-07-12 1996-01-31 Usa Digital Radio Partners L P Method and system for simultaneously broadcasting and analog signals
US5680419A (en) 1994-08-02 1997-10-21 Ericsson Inc. Method of and apparatus for interference rejection combining in multi-antenna digital cellular communications systems
US5832035A (en) * 1994-09-20 1998-11-03 Time Domain Corporation Fast locking mechanism for channelized ultrawide-band communications
US5677927A (en) 1994-09-20 1997-10-14 Pulson Communications Corporation Ultrawide-band communication system and method
US5822359A (en) 1994-10-17 1998-10-13 Motorola, Inc. Coherent random access channel in a spread-spectrum communication system and method
US5590399A (en) 1995-02-23 1996-12-31 Nextel Communications Up-link channel assignment scheme for cellular mobile communications systems employing multi-beam antennas with beam selection
US5644568A (en) 1995-03-15 1997-07-01 Motorola, Inc. Method and apparatus for organizing and recovering information communicated in a radio communication system
JPH08331095A (en) 1995-05-31 1996-12-13 Sony Corp Communication system
US5745484A (en) 1995-06-05 1998-04-28 Omnipoint Corporation Efficient communication system using time division multiplexing and timing adjustment control
US6356607B1 (en) 1995-06-05 2002-03-12 Omnipoint Corporation Preamble code structure and detection method and apparatus
US5959980A (en) 1995-06-05 1999-09-28 Omnipoint Corporation Timing adjustment control for efficient time division duplex communication
US5734963A (en) 1995-06-06 1998-03-31 Flash Comm, Inc. Remote initiated messaging apparatus and method in a two way wireless data communications network
US5606729A (en) 1995-06-21 1997-02-25 Motorola, Inc. Method and apparatus for implementing a received signal quality measurement in a radio communication system
US5991308A (en) 1995-08-25 1999-11-23 Terayon Communication Systems, Inc. Lower overhead method for data transmission using ATM and SCDMA over hybrid fiber coax cable plant
US6307868B1 (en) 1995-08-25 2001-10-23 Terayon Communication Systems, Inc. Apparatus and method for SCDMA digital data transmission using orthogonal codes and a head end modem with no tracking loops
US5852770A (en) 1995-09-19 1998-12-22 Sanyo Electric Co., Ltd. Transmission power control device for a portable terminal
US5835498A (en) * 1995-10-05 1998-11-10 Silicon Image, Inc. System and method for sending multiple data signals over a serial link
EP0768778A1 (en) 1995-10-11 1997-04-16 ALCATEL BELL Naamloze Vennootschap Method for transmission line impulse response equalisation and a device to perform this method
US6108317A (en) 1995-11-01 2000-08-22 Stm Wireless, Inc. Cyclic code phase multiple access for inbound satellite communications
JP2780690B2 (en) 1995-11-30 1998-07-30 日本電気株式会社 Code multiplex communication equipment
US5642391A (en) 1995-12-15 1997-06-24 Conklin Instrument Corporation Method and apparatus for monitoring channel performance on a channel using alternate mark inversion protocols
JP2800797B2 (en) 1996-08-12 1998-09-21 日本電気株式会社 Spread spectrum communication system
US6064663A (en) 1996-09-10 2000-05-16 Nokia Mobile Phones Limited Cellular CDMA data link utilizing multiplexed channels for data rate increase
US6005640A (en) 1996-09-27 1999-12-21 Sarnoff Corporation Multiple modulation format television signal receiver system
US6192068B1 (en) 1996-10-03 2001-02-20 Wi-Lan Inc. Multicode spread spectrum communications system
US6141373A (en) 1996-11-15 2000-10-31 Omnipoint Corporation Preamble code structure and detection method and apparatus
US6032033A (en) 1996-12-03 2000-02-29 Nortel Networks Corporation Preamble based selection diversity in a time division multiple access radio system using digital demodulation
US6034987A (en) 1996-12-17 2000-03-07 Ericsson Inc. System for improving the quality of a received radio signal
US6128276A (en) 1997-02-24 2000-10-03 Radix Wireless, Inc. Stacked-carrier discrete multiple tone communication technology and combinations with code nulling, interference cancellation, retrodirective communication and adaptive antenna arrays
US5943331A (en) 1997-02-28 1999-08-24 Interdigital Technology Corporation Orthogonal code synchronization system and method for spread spectrum CDMA communications
US5930296A (en) 1997-04-08 1999-07-27 Glenayre Electronics, Inc. Low-complexity bidirectional equalizer
US7209523B1 (en) * 1997-05-16 2007-04-24 Multispectral Solutions, Inc. Ultra-wideband receiver and transmitter
US6026125A (en) * 1997-05-16 2000-02-15 Multispectral Solutions, Inc. Waveform adaptive ultra-wideband transmitter
US6128387A (en) * 1997-05-19 2000-10-03 Industrial Technology Research Institute Method and system for using a non-inversible transform and dynamic keys to protect firmware
US5867478A (en) 1997-06-20 1999-02-02 Motorola, Inc. Synchronous coherent orthogonal frequency division multiplexing system, method, software and device
US5926503A (en) 1997-08-27 1999-07-20 Motorola, Inc. DS-CDMA receiver and forward link diversity method
US6049707A (en) 1997-09-02 2000-04-11 Motorola, Inc. Broadband multicarrier amplifier system and method using envelope elimination and restoration
US6215777B1 (en) 1997-09-15 2001-04-10 Qualcomm Inc. Method and apparatus for transmitting and receiving data multiplexed onto multiple code channels, frequencies and base stations
US6185258B1 (en) 1997-09-16 2001-02-06 At&T Wireless Services Inc. Transmitter diversity technique for wireless communications
US6373827B1 (en) 1997-10-20 2002-04-16 Wireless Facilities, Inc. Wireless multimedia carrier system
US6563856B1 (en) * 1998-07-08 2003-05-13 Wireless Facilities, Inc. Frame synchronization and detection technique for a digital receiver
US6081562A (en) 1997-10-22 2000-06-27 Hitachi Ltd. Implementing reduced-state viterbi detectors
US6259687B1 (en) 1997-10-31 2001-07-10 Interdigital Technology Corporation Communication station with multiple antennas
US6012161A (en) 1997-11-26 2000-01-04 At&T Corp. System and method for joint coding and decision feedback equalization
US6700939B1 (en) * 1997-12-12 2004-03-02 Xtremespectrum, Inc. Ultra wide bandwidth spread-spectrum communications system
US6222832B1 (en) 1998-06-01 2001-04-24 Tantivy Communications, Inc. Fast Acquisition of traffic channels for a highly variable data rate reverse link of a CDMA wireless communication system
US6128473A (en) 1997-12-22 2000-10-03 Telefonaktiebolaget Lm Ericsson (Publ) Method for frequency plan revision within a cellular telephone system using downlink interference estimates
US6052812A (en) 1998-01-07 2000-04-18 Pocketscience, Inc. Messaging communication protocol
US6078576A (en) 1998-02-04 2000-06-20 Golden Bridge Technology, Inc. High processing gain CDMA/TDMA system and method
US6240133B1 (en) 1998-02-05 2001-05-29 Texas Instruments Incorporated High stability fast tracking adaptive equalizer for use with time varying communication channels
US6686879B2 (en) * 1998-02-12 2004-02-03 Genghiscomm, Llc Method and apparatus for transmitting and receiving signals having a carrier interferometry architecture
US6256508B1 (en) 1998-02-27 2001-07-03 Mitsubishi Denki Kabushiki Kaisha Simultaneous broadcasting system, transmitter and receiver therefor
US6700881B1 (en) * 1998-03-02 2004-03-02 Samsung Electronics Co., Ltd. Rate control device and method for CDMA communication system
JP3094984B2 (en) 1998-03-13 2000-10-03 日本電気株式会社 Pulse generation circuit
US6133876A (en) 1998-03-23 2000-10-17 Time Domain Corporation System and method for position determination by impulse radio
JP2000005180A (en) 1998-06-25 2000-01-11 Olympus Optical Co Ltd Acoustic impedance measuring device
US6078607A (en) 1998-08-10 2000-06-20 Omnipont Corporation Synchronization codes for use in communication
US6470055B1 (en) * 1998-08-10 2002-10-22 Kamilo Feher Spectrally efficient FQPSK, FGMSK, and FQAM for enhanced performance CDMA, TDMA, GSM, OFDN, and other systems
US6529488B1 (en) * 1998-08-18 2003-03-04 Motorola, Inc. Multiple frequency allocation radio frequency device and method
FI106897B (en) 1998-09-14 2001-04-30 Nokia Networks Oy RAKE receiver
US6310866B1 (en) 1998-10-09 2001-10-30 Telefonaktiebolaget Lm Ericsson (Publ) Medium access control protocol with automatic frequency assignment
US6141374A (en) 1998-10-14 2000-10-31 Lucent Technologies Inc. Method and apparatus for generating multiple matched-filter PN vectors in a CDMA demodulator
US6542722B1 (en) * 1998-10-21 2003-04-01 Parkervision, Inc. Method and system for frequency up-conversion with variety of transmitter configurations
US6842495B1 (en) * 1998-11-03 2005-01-11 Broadcom Corporation Dual mode QAM/VSB receiver
US6252910B1 (en) * 1998-11-11 2001-06-26 Comspace Corporation Bandwidth efficient QAM on a TDM-FDM system for wireless communications
US6142946A (en) 1998-11-20 2000-11-07 Atl Ultrasound, Inc. Ultrasonic diagnostic imaging system with cordless scanheads
US6128330A (en) 1998-11-24 2000-10-03 Linex Technology, Inc. Efficient shadow reduction antenna system for spread spectrum
US7110473B2 (en) * 1998-12-11 2006-09-19 Freescale Semiconductor, Inc. Mode controller for signal acquisition and tracking in an ultra wideband communication system
US6683955B1 (en) * 1998-12-17 2004-01-27 Intel Corporation Method for receiving a secured transmission of information through a plurality of frequency orthogonal subchannels
US6191724B1 (en) 1999-01-28 2001-02-20 Mcewan Thomas E. Short pulse microwave transceiver
US6317411B1 (en) 1999-02-22 2001-11-13 Motorola, Inc. Method and system for transmitting and receiving signals transmitted from an antenna array with transmit diversity techniques
US6337878B1 (en) 1999-03-03 2002-01-08 Nxt Wave Communications Adaptive equalizer with decision directed constant modulus algorithm
US6570912B1 (en) * 1999-03-05 2003-05-27 Pctel, Inc. Hybrid software/hardware discrete multi-tone transceiver
US6392500B1 (en) 1999-04-27 2002-05-21 Sicom, Inc. Rotationally invariant digital communications
US6628728B1 (en) * 1999-04-28 2003-09-30 Cyntrust Communications, Inc. Nyquist filter and method
US6990348B1 (en) * 1999-05-07 2006-01-24 At&T Corp. Self-configuring wireless system and a method to derive re-use criteria and neighboring lists therefor
US6198989B1 (en) 1999-05-21 2001-03-06 Trimble Navigation Ltd Monitor and remote control via long baseline RTK
EP1065851A1 (en) * 1999-07-02 2001-01-03 Motorola, Inc. Decision feedback equaliser with reduced-state sequence estimation
US6067290A (en) 1999-07-30 2000-05-23 Gigabit Wireless, Inc. Spatial multiplexing in a cellular network
US6570919B1 (en) * 1999-07-30 2003-05-27 Agere Systems Inc. Iterative decoding of data packets employing decision feedback equalization
DE19942944A1 (en) * 1999-09-08 2001-03-22 Infineon Technologies Ag Communication system and corresponding recipient
CN1148889C (en) * 1999-11-26 2004-05-05 诺基亚网络有限公司 Rake receiver
US6351499B1 (en) 1999-12-15 2002-02-26 Iospan Wireless, Inc. Method and wireless systems using multiple antennas and adaptive control for maximizing a communication parameter
US6298092B1 (en) 1999-12-15 2001-10-02 Iospan Wireless, Inc. Methods of controlling communication parameters of wireless systems
US6526090B1 (en) * 1999-12-28 2003-02-25 Texas Instruments Incorporated Demodulation element assignment for a receiver capable of simultaneously demodulating multiple spread spectrum signals
AU2611201A (en) * 1999-12-30 2001-07-16 Morphics Technology, Inc. Method and apparatus to support multi standard, multi service base-stations for wireless voice and data networks
US6336613B1 (en) * 2000-01-21 2002-01-08 C.E.W. Lighting, Inc. Adjustable lighting reflector bracket
DE60129381D1 (en) * 2000-02-22 2007-08-30 Koninkl Philips Electronics Nv MULTI-RENDER RECEIVER WITH CHANNEL ESTIMATE
AU2001244007A1 (en) * 2000-03-31 2001-10-15 Ted Szymanski Transmitter, receiver, and coding scheme to increase data rate and decrease bit error rate of an optical data link
US20020048333A1 (en) * 2000-05-25 2002-04-25 Nadeem Ahmed Joint detection in OFDM systems
EP1290802A1 (en) * 2000-06-16 2003-03-12 Aware, Inc. Systems and methods for ldpc coded modulation
FR2810820B1 (en) * 2000-06-22 2002-09-20 Nortel Matra Cellular METHOD AND DEVICE FOR RECEIVING A RADIO SIGNAL
US6701129B1 (en) * 2000-09-27 2004-03-02 Nortel Networks Limited Receiver based adaptive modulation scheme
US6560463B1 (en) * 2000-09-29 2003-05-06 Pulse-Link, Inc. Communication system
WO2002031988A2 (en) * 2000-10-10 2002-04-18 Xtremespectrum, Inc. Ultra wide bandwidth noise cancellation mechanism and method
US8515339B2 (en) * 2001-05-10 2013-08-20 Qualcomm Incorporated Method and an apparatus for installing a communication system using active combiner/splitters
US6633856B2 (en) * 2001-06-15 2003-10-14 Flarion Technologies, Inc. Methods and apparatus for decoding LDPC codes
US7006564B2 (en) * 2001-08-15 2006-02-28 Intel Corporation Adaptive equalizer
US20050053121A1 (en) * 2001-12-06 2005-03-10 Ismail Lakkis Ultra-wideband communication apparatus and methods
US7218682B2 (en) * 2002-02-12 2007-05-15 Itt Manufacturing Enterprises, Inc. Methods and apparatus for synchronously combining signals from plural transmitters
US6961373B2 (en) * 2002-07-01 2005-11-01 Solarflare Communications, Inc. Method and apparatus for channel equalization
US7609612B2 (en) * 2002-07-12 2009-10-27 Texas Instruments Incorporated Multi-carrier transmitter for ultra-wideband (UWB) systems
US7178080B2 (en) * 2002-08-15 2007-02-13 Texas Instruments Incorporated Hardware-efficient low density parity check code for digital communications
JP3564468B2 (en) * 2002-09-09 2004-09-08 三星電子株式会社 Ultra-wideband wireless transmitter, ultra-wideband wireless receiver, and ultra-wideband wireless communication method
US7123664B2 (en) * 2002-09-17 2006-10-17 Nokia Corporation Multi-mode envelope restoration architecture for RF transmitters
US7120856B2 (en) * 2002-09-25 2006-10-10 Leanics Corporation LDPC code and encoder/decoder regarding same
US7015600B2 (en) * 2002-10-10 2006-03-21 International Business Machines Corporation Pulse generator circuit and semiconductor device including same
US7221724B2 (en) * 2002-10-10 2007-05-22 Bitzmo, Inc. Precision timing generation
US7317750B2 (en) * 2002-10-31 2008-01-08 Lot 41 Acquisition Foundation, Llc Orthogonal superposition coding for direct-sequence communications
US7702986B2 (en) * 2002-11-18 2010-04-20 Qualcomm Incorporated Rate-compatible LDPC codes
US20050084031A1 (en) * 2003-08-04 2005-04-21 Lowell Rosen Holographic communications using multiple code stages
US7738545B2 (en) * 2003-09-30 2010-06-15 Regents Of The University Of Minnesota Pulse shaper design for ultra-wideband communications
US7046187B2 (en) * 2004-08-06 2006-05-16 Time Domain Corporation System and method for active protection of a resource

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5784387A (en) * 1994-10-31 1998-07-21 International Business Machines Corporation Method for detecting start-of-frame, end of frame and idle words in a data stream
US6023783A (en) * 1996-05-15 2000-02-08 California Institute Of Technology Hybrid concatenated codes and iterative decoding
US20010025361A1 (en) * 1999-12-18 2001-09-27 Kim Sae-Joon XOR code and serially concatenated encoder/decoder using the same
US20030104788A1 (en) * 2001-09-01 2003-06-05 Sungwook Kim Decoding architecture for low density parity check codes
US20030079171A1 (en) * 2001-10-24 2003-04-24 Tim Coe Forward error correction

Also Published As

Publication number Publication date
US7406647B2 (en) 2008-07-29
US20050201315A1 (en) 2005-09-15
US20080109696A1 (en) 2008-05-08

Similar Documents

Publication Publication Date Title
WO2006036332A1 (en) Systems and methods for forward error correction in a wireless communication network
US7349478B2 (en) Ultra-wideband communication apparatus and methods
US7289494B2 (en) Systems and methods for wireless communication over a wide bandwidth channel using a plurality of sub-channels
US7929596B2 (en) Ultra-wideband communication apparatus and methods
US20080069256A1 (en) Ultra-wideband communication apparatus and methods
US20080107199A1 (en) Systems and methods for recovering bandwidth in a wireless communication network
US20080056332A1 (en) Ultra-wideband communication systems and methods
US20080062921A1 (en) Ultra-wideband communication systems and methods
WO2006044287A2 (en) Ultra-wideband communication apparatus and methods
US7403576B2 (en) Systems and methods for receiving data in a wireless communication network
US20050207505A1 (en) Systems and methods for recovering bandwidth in a wireless communication network
US20050094709A1 (en) Ultra-wideband communication apparatus and methods
US20080008234A1 (en) Systems and methods for equalization of received signals in a wireless communication network
US20050147079A1 (en) Systems and methods for implementing an open loop architecture in a wireless communication network
US7352806B2 (en) Systems and methods for transmitting data in a wireless communication network
US20080049827A1 (en) Systems and methods for implementing path diversity in a wireless communication network
EP1719274B1 (en) Systems and methods for implementing an open loop architecture in a wireless communication network
WO2006044214A2 (en) Ultra-wideband communication apparatus and methods

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KM KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NG NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SM SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LT LU LV MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase