Abstract:
In a multiple access communications system data to be transmitted to a particular end-user receiver is processed with a specific process assigned to the particular end-user. The processing is such that an output array of data bits after processing has the same number of bits as an input array of data bits but is unique to the particular end-user. Then, the data is only recoverable at the end-user receiver by using a process that is the exact inverse of the process employed at the transmitter and assigned to the particular end-user receiver. Consequently, the data is identified to the particular end-user without having to transmit additional identification information.

Description:
TECHNICAL FIELD 
     This invention relates to wireless multiple access communications systems and, more particularly, to proper data reception in such systems. 
     BACKGROUND OF THE INVENTION 
     In wireless communications systems employing multiple access, users share a transmission medium. One such wireless system is the orthogonal frequency division multiplexing (OFDM) based spread spectrum multiple access mobile communications system. In such systems, it is important that users are prevented from receiving packets meant for other users. So-called fixed channel assignment techniques have been employed to address this problem by allocating channels that are dedicated to individual users. Unfortunately, such fixed channel assignment of communications channels is not efficient for data traffic. In Ethernet systems, packets are transmitted with identification numbers of the users they are intended for so that other users can drop the packets after they are decoded. The cost of such a technique is the overhead needed to transmit a user identification number in each packet that is substantial in, for example, wireless multiple access communications systems. 
     SUMMARY OF THE INVENTION 
     These and other problems related to the correct and proper reception of data at a receiver in a multiple access communications system are overcome by processing data to be transmitted to a particular end-user receiver with a specific process assigned to the particular end-user. The processing at a transmitter is such that an output array of data bits after processing has the same number of bits as an input array of data bits but is unique to the particular end-user. Then, the data is only recoverable at the end-user receiver by using a process that is the exact inverse of the process employed at the transmitter and assigned to the particular end-user receiver. Consequently, the data is identified to the particular end-user without having to transmit additional identification information. 
     In an embodiment of the invention, information bits, e.g., a segment of bits, to be transmitted are encoded to provide an error detection capability at a remote receiver. The encoded segment of bits, i.e., an array of bits, is then processed using a particular end-user dependent function of the encoded array of bits and associated with a user dependent index to generate an output array of bits the same size as the encoded array of bits. The output array of bits is modulated and transmitted. At a remote end-user unit, a received version of the transmitted signal is demodulated to obtain a received array of bits. An exact inverse end-user function of the encoded array of bits and associated with the user dependent index corresponding to the end-user function used at the transmitter is employed to de-map the array of received bits to obtain a received version of the encoded array of bits. This encoded array of bits is decoded, and if it is an array of bits intended for this particular end-user it is properly decoded and accepted. If the decoded array of bits were not intended for this particular end-user, it would not be properly decoded and is dropped. 
     In another embodiment of the invention, the user dependent function is of only redundancy bits generated by error detection encoder and associated with the user dependent index. Specifically, in one example, the transmitter user dependent function is of the bits of a frame check sum (FCS) sequence generated by a FCS encoder and associated with the user dependent index. The receiver user dependent function is the inverse function of the bits of a frame check sum (FCS) sequence and associated with the user dependent index. 
    
    
     BRIEF DESCRIPTION OF THE DRAWING 
     FIG. 1 shows, in simplified block diagram form, a multiple access transmission system in which the invention may be advantageously employed; 
     FIG. 2A shows, in simplified block diagram form, details of a transmitter that may be utilized in the base station and/or remote mobile units shown in FIG. 1; 
     FIG. 2B shows, in simplified block diagram form, details of a receiver that may be utilized in the base station and/or remote mobile units shown in FIG. 1; 
     FIG. 3A illustrates, in simplified block diagram form, a user dependent processing unit, i.e., mapper unit, that may be advantageously employed in the transmitter of FIG. 2A; 
     FIG. 3B illustrates, in simplified block diagram form, a user dependent processing unit, i.e., de-mapper unit, that may be advantageously employed in the receiver of FIG. 2B; 
     FIG. 4A graphically illustrates an example implementation of the user dependent processing unit of FIG. 3A employing a first circular shift for a first end-user; 
     FIG. 4B graphically illustrates a first example implementation of the user dependent processing unit of FIG. 3B employing an exact inverse of the first circular shift illustrated in FIG. 4A; 
     FIG. 5A graphically illustrates a second example implementation of the user dependent processing unit of FIG. 3A employing a second circular shift for a second end-user; 
     FIG. 5B graphically illustrates a second example implementation of the user dependent processing unit of FIG. 3B employing an exact inverse of the second circular shift illustrated in FIG. 5A; 
     FIG. 6A shows, in simplified block diagram, another example of a user processing unit, i.e., mapper, employing exclusive ORing of the end-user dependent function and segment of information bits that may be advantageously employed in the transmitter of FIG. 2A; 
     FIG. 6B shows, in simplified block diagram, another example of a user processing unit, i.e., de-mapper, employing exclusive ORing of the end-user dependent function and segment of information bits that may be advantageously employed in the receiver of FIG. 2B; and 
     FIG. 7A shows, in simplified block diagram form, a transmitter including another embodiment of the invention that may be utilized in the base station and/or remote mobile units shown in FIG. 1; and 
     FIG. 7B shows, in simplified block diagram form, a receiver also including another embodiment of the invention that may be utilized in the base station and/or remote mobile units shown in FIG.  1 . 
    
    
     DETAILED DESCRIPTION 
     FIG. 1 shows, in simplified block diagram form, a wireless mobile multiple access communications system in which the invention may be advantageously employed. It should be noted that although applicants&#39; unique invention will be described in the context of a wireless mobile communications system, it has equal application to non-mobile systems. As indicated above, one such mobile wireless communications system is OFDM based spread spectrum multiple access. 
     Specifically, shown in FIG. 1 is a mobile multiple access wireless communications system  100 . System  100  includes base station  101  and one or more remote mobile units  102 - 1 ,  102 - 2  through  102 -Y. Transmission of signals is from and to base station  101  to and from remote mobile units  102 . All of mobile units  102  share the transmission spectrum in a dynamic fashion. In particular, base station  101  dynamically broadcasts the assignment of data traffic channels to the remote mobile units  102 . Remote mobile units  102  monitor the broadcast channel assignments via assignment messages. After detecting its assigned channel, a particular remote mobile unit  102  then receives is data segments in the assigned data traffic channel. However, because the data traffic channels are not always reliable in a wireless communications system, the assignment messages may not be delivered correctly to their corresponding remote mobile units  102 . Indeed, problems arise when a particular one of remote mobile units  102  decodes the assignment message in error and mistakenly takes a traffic segment intended for some other one of remote mobile units  102 . 
     FIG. 2A shows, in simplified block diagram form, details of a transmitter  200  that may be utilized in the base station  101  and/or remote mobile units  102  shown in FIG.  1 . As shown, information bits, e.g., in segments, from some data source are supplied to frame check sum (FCS) encoder  201 . FCS encoder  201  generates and adds redundancy bits to the bits in the segment to form a first block having a fixed number of bits, in well known fashion. The first block of bits from FCS encoder  201  is supplied directly to forward error coding (FEC) encoder  202  or via mapper  203  to FEC encoder  202 . Mapper  203  is an end-user dependent processing unit and is described below. For now it is enough to state that mapper  203  inserts a specific user function unique to a particular end-user into an input block of bits, and that a block of bits outputted from mapper  203  is the same size as a block of bits inputted to it. Consequently, the operation of mapper  203  does not cost any overhead in the bit stream being transmitted. FEC encoder  202  also adds redundancy bits to the first block of bits from FSC encoder  201  or mapper  203  for the purpose of error correction at the remote receiver and forms a second block of bits. The second block of bits is outputted from FEC encoder  202  directly to bit interleaver  204  or via mapper  203  to interleaver  204 . Mapper  203  operates on the second block of bits in the same manner as the first block of bits, as described above. Interleaver  204  basically changes the order of the bits in the block supplied to it for the purpose of randomizing bursty noise in the corresponding wireless data traffic channel, in well known fashion. The interleaved block of bits outputted from interleaver  204  is supplied directly to modulator  205  or via mapper  203  to modulator  205 . Again, operation of mapper  203  is as described above. The modulated output from modulator  205  is supplied to antenna  206  for transmission. Thus, it is seen that mapper  203  can be located, in this example, between FSC encoder  201  and FEC encoder  202 , or between FEC encoder  202  and interleaver  203 , or between interleaver  203  and modulator  205 . 
     FIG. 2B shows, in simplified block diagram form, details of a receiver  210  that may be utilized in the base station  101  and/or remote mobile units  202  shown in FIG.  1 . Specifically, a transmitted signal from, for example, transmitter  200  in base station  101  is received at antenna  211  at receiver  210 . The received signal is supplied to demodulator  212  where it is demodulated as a series of symbols, in well known fashion. The symbols are supplied directly to deinterleaver  213  or via demapper  214  to deinterleaver  213 . Operation of demapper  214  is the exact inverse of the operation of mapper  203  described above and will be further described below. Deinterleaver operates to organize the bits of the symbols to be in proper order for processing by forward error correction (FEC) decoder  215 . Again, the output symbols from deinterleaver  213  may be supplied directly to FEC decoder  215  or via demapper  214  to FEC decoder  215 . FEC decoder  215  converts the symbols to a block of decoded FEC bits and also corrects for symbol errors caused by channel impairments or noise, in known fashion. The block of decoded FEC bits outputted by FEC decoder  215  is supplied directly to frame check sum (FCS) decoder  216  or via demapper  214  to FCS decoder  216 . FCS decoder  216  is operative to detect whether any uncorrected errors still remain. If so, the decoded FEC block of bits is discarded. Otherwise, FCS decoder  216  removes the FCS redundancy bits from the decoded FEC block of bits and the resulting information bits are forwarded for further processing. Demapper  214  may be located between demodulator  212  and deinterleaver  213 , or between deinterleaver  213  and FEC decoder  215 , or between FEC decoder  215  and FCS decoder  216 . However, the demapper  214  must be located at a position in the receiver  210  chain that corresponds to the location of mapper  203  in the transmitter  200  chain. 
     Thus, if mapper  203  is located between FCS encoder  201  and FEC encoder  202 , demapper  214  must be located between FEC decoder  215  and FCS decoder  216 . Similarly, if mapper  203  is located between FEC encoder  202  and interleaver  204 , demapper  214  must be located between deinterleaver  213  and FEC decoder  215 . Finally, if mapper  203  is located between interleaver  204  and modulator  205 , demapper  214  must be located between demodulator  212  and deinterleaver  213 . 
     FIG. 3A illustrates, in simplified block diagram form, a user dependent processing unit, i.e., mapper unit  203 , which may be advantageously employed in the transmitter  200  of FIG.  2 A. Inputs to mapper  203  are a block of bits, namely, array of bits “b” from an information source and a user index “u” from an index source. Note that user index “u” is specific to the particular end-user, i.e., it is unique to a particular one of remote mobile units  102 . The output of mapper  203  is another block of bits, namely, array of bits “c”. It is important to note that array “b” and array “c” are the same size. Consequently, no overhead is added to the bit stream by the user dependent processing. The relationship between output array “c” from mapper  203  and the inputs to mapper  203  is expressed by the user dependent function c=ƒ(b,u). Note that for distinct “b” vectors mapper  203  generates distinct “c” vectors. 
     FIG. 3B illustrates, in simplified block diagram form, a user dependent processing unit, i.e., demapper unit  214 , which may be advantageously employed in the receiver  210  of FIG.  2 B. Inputs to demapper  214  are a block of bits, namely, the array of bits “c”, and the user index “u”. The output of demapper  214  is another block of bits, namely, array of bits “b”. It is important to note that array “b” and array “c” are the same size. Consequently, no overhead has been added to the bit stream by the user dependent processing. The relationship between output array “b” from demapper  214  and the inputs to demapper  214 , i.e., input array “c” is expressed by the function b=ƒ −1 (c,u) that is the exact inverse function used in mapper  203 , namely, c=ƒ(b,u). Note that for distinct “c” vectors demapper  214  generates distinct “b” vectors. 
     FIG. 4A graphically illustrates an example implementation of the user dependent processing unit, namely, mapper  203 , of FIG. 3A employing a first circular shift for a first end-user. FIG. 4B graphically illustrates a first example implementation of the user dependent processing unit, namely, demapper  214 , of FIG. 3B employing an exact inverse of the first circular shift illustrated in FIG.  4 A. FIG. 5A graphically illustrates a second example implementation of the user dependent processing unit, namely, mapper  203 , of FIG. 3A employing a second circular shift for a second end-user. While FIG. 5B graphically illustrates a second example implementation of the user dependent processing unit, namely, demapper  214 , of FIG. 3B employing an exact inverse of the second circular shift illustrated in FIG.  5 A. 
     Specifically, at the transmitter  200  in mapper  203  (FIGS.  4 A and  5 A), the input array “b” contains N bits, denoted as b( 0 ), b( 1 ), . . . , b(N−1). The output array “c” contains the same number of bits, denoted as c( 0 ), c( 1 ), . . . , c(N−1). Array “c” is a cyclic shifted version of “b”, that is, c(i)=b(i-i 0  mod N), for i=0, . . . , N−1, where i 0  is an offset index, which is unique to each remote mobile unit  202 . In receiver  210 w the first user (FIGS. 4A and 4B) is given its offset index i 0 =3 and the second user (FIGS. 5A and 5B) is given its offset index i 0 =5. 
     Thus, for the first user, mapper  203  at transmitter  200  (FIG. 2A) causes a circular shift in input array “b” via user index u=i 0 =3 to yield the output array “c”, as shown in FIG.  4 A. Then, for the first user, demapper  214  at receiver  210  (FIG. 2B) causes the exact inverse function as mapper  203 . That is demapper  214  causes the inverse circular shift from the received version of the output array “c” from mapper  203  to yield a received version of array “b”. As shown in FIGS. 5A and 5B, operation of mapper  203  in transmitter  200  and demapper  214  in receiver  210  is identical, except that the unique user index for the second user is u=i 0 =5. 
     Again, it is noted that demapper  214  in receiver  210  must be placed in a location of the receiver  210  chain corresponding to the location where mapper  203  in transmitter  200  is placed in the transmitter chain. 
     Additionally, it should be noted that although in this example the user index “u” is show as being equal to the cyclic shift for both the first and second users, the user index can be in the form of some prescribed relationship to the cyclic shift and does not have to be equal to it. 
     FIG. 6A shows, in simplified block diagram, another example of a user processing unit, i.e., mapper  203 , employing exclusive ORing of a sequence of bits associated with the end-user index “u s ” and input array “b” information bits that may be advantageously employed in the transmitter  200  of FIG. 2A, and FIG. 6B shows, in simplified block diagram, another example of a user processing unit, i.e., demapper,  214  also employing exclusive ORing of a sequence bits associated with end-user index “u s ” and received array “c” of bits that may be advantageously employed in the receiver  210  of FIG.  2 B. It will be apparent to those skilled in the art that the exclusive ORing is on a bit-by-bit basis of the sequence of bits associated with user index “u s ” and the input array bits to the exclusive ORing unit. Except for the exclusive ORing function, operation of mapper  203  of FIG. 6A is identical to mapper  203  of FIG.  3 A and described above. Similarly, except for the exclusive ORing function, operation of demapper  214  of FIG. 6B is identical to that of demapper  214  of FIG.  3 B and described above. 
     Further, the above description has described the user index “u” and user sequence “us” as each being unique to a particular end-user, it should be noted that in certain applications it is desirable to multicast information to a plurality of end-users. In such applications the user index employed needs to be common to all the users that the information is to be multicast to. 
     FIG. 7A shows, in simplified block diagram form, a transmitter  700  including another embodiment of the invention that may be utilized in the base station  101  and/or remote mobile units  102  shown in FIG.  1 . As shown, information bits, e.g., in segments (arrays) “h”, from some data source are supplied to frame check sum (FCS) encoder  701 . FCS encoder  701  generates and adds redundancy bits in the form of array “d” to the bits in the array h to form a first block having a fixed number of bits, i.e., first block of bits [h d], in well known fashion. Note that array d is the frame check sequence generated by FCS encoder  701 . The first block of bits [h d] from FCS encoder  701  is supplied to mapper  702 . Mapper  702  is an end-user dependent processing unit that in this example generates an array of bits that is a function of the redundancy bits generated by FCS encoder  701  and a function associated with the user dependent index “u”. The function associated with the user index “u” may be a cyclic shift or some sequence of bits. An output from mapper  702  is a second block of bits [h f(d,u)]. It is noted that mapper  203  inserts a specific user dependent function unique to a particular end-user into the first block of bits [h d], and that the second block of bits [h f(d,u)] outputted from mapper  702  is the same size in bits as the block of bits [h d] inputted to it. Consequently, the operation of mapper  702  does not cost any overhead in the bit stream being transmitted. It is further noted that [f(d,u)] has the same number of bit as “d”. The second block of bits [h f(d,u)] is supplied to FEC encoder  703  that also adds redundancy bits to it for the purpose of error correction at the remote receiver and forms an output block of bits to be transmitted. The output block of bits is supplied to bit interleaver  704 . Interleaver  704  basically changes the order of the bits in the output block of bits supplied to it for the purpose of randomizing bursty noise in the corresponding wireless data traffic channel, in well known fashion. The interleaved block of bits is supplied to modulator  705  where it is modulated and then supplied to antenna  706  for transmission. In this example, mapper  702  performs a user dependent transformation of the array d. The user dependent transformation may take the form of exclusive ORing of array d with a user dependent sequence of bits associated with user index “u”. Alternatively, the transformation may take the form of a permutation of the bits of array d that includes an exclusive ORing operation. 
     FIG. 7B shows, in simplified block diagram form, a receiver  710  also including another embodiment of the invention that may be utilized in the base station  101  and/or remote mobile units  102  shown in FIG.  1 . Specifically, a transmitted signal from, for example, transmitter  700  in base station  101  is received at antenna  711  at receiver  710 . The received signal is supplied to demodulator  712  where it is demodulated as a series of symbols, in well known fashion. The symbols are supplied to deinterleaver  713  that operates to organize the bits of the symbols to be in proper order for processing by forward error correction (FEC) decoder  714 . FEC decoder  714  converts the symbols to a block of decoded FEC bits and also corrects for symbol errors caused by channel impairments or noise, in known fashion. The decoded FEC bits outputted by FEC decoder  714  is block of bits [h f(d,u)] and is supplied to demapper  715 . Demapper  715  is also supplied with a function associated with the user dependent index “u”. The function associated with the user index “u” may be a cyclic shift or some sequence of bits. Demapper  715  operates to perform the exact inverse function of mapper  702  to yield block of bits [h d]. block of bits [h d] is supplied to frame check sum (FCS) decoder  716  that decodes it to generate as an output array of bits h. FCS decoder  716  is also operative to detect whether any uncorrected errors still remain. If so, the decoded array of bits h from FEC decoder  716  is discarded. Otherwise, FCS decoder  716  removes the FCS redundancy bits from the decoded array of bits and the resulting array of information bits, namely, array h, is forwarded for further processing. 
     It should be noted that although the embodiments shown in FIGS. 7A and 7B have been described in terms of using an exclusive ORing function in mapper  702  and demapper  715  a general mapping function or a cyclic shifting mapping function may also be equally employed. 
     The above-described embodiments are, of course, merely illustrative of the principles of the invention. Indeed, numerous other methods or apparatus may be devised by those skilled in the art without departing from the spirit and scope of the invention. Moreover, the invention may be implemented as hardware, as an integrated circuit, via programming on a microprocessor, on a digital signal processor or the like.