US20020186750A1 - System for spread spectrum communication - Google Patents

System for spread spectrum communication Download PDF

Info

Publication number
US20020186750A1
US20020186750A1 US10/198,712 US19871202A US2002186750A1 US 20020186750 A1 US20020186750 A1 US 20020186750A1 US 19871202 A US19871202 A US 19871202A US 2002186750 A1 US2002186750 A1 US 2002186750A1
Authority
US
United States
Prior art keywords
spread spectrum
spectrum code
code
output
shift
Prior art date
Legal status (The legal status 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 status listed.)
Abandoned
Application number
US10/198,712
Inventor
Edgar Callaway
Frederick Martin
Qicai Shi
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google Technology Holdings LLC
Original Assignee
Motorola 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 Motorola Inc filed Critical Motorola Inc
Priority to US10/198,712 priority Critical patent/US20020186750A1/en
Assigned to MOTOROLA, INC. reassignment MOTOROLA, INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: CALLAWAY, EDGAR H., JR., MARTIN, FREDERICK L., SHI, QICAI
Publication of US20020186750A1 publication Critical patent/US20020186750A1/en
Assigned to Google Technology Holdings LLC reassignment Google Technology Holdings LLC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: MOTOROLA MOBILITY LLC
Abandoned legal-status Critical Current

Links

Images

Classifications

    • 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/707Spread spectrum techniques using direct sequence modulation

Definitions

  • This invention pertains to spread spectrum communications. More particularly this invention pertains to a spread spectrum receiver, a spread spectrum transmitter, a spread spectrum communication system and a method of signaling using spread spectrum signals.
  • DSSS Direct Sequence Spread Spectrum
  • a binary data signal that is biased so that the two signal states have equal and opposite signal levels is multiplied by a higher frequency signal, thereby spreading its spectrum.
  • the higher frequency signal comprises a series of pulses that are polarized according to the values of a series of elements of a DSSS code.
  • conventional DSSS communication information is encoded by choosing the polarization of a sequence of pulses corresponding to a DSSS codes, according to the value of a corresponding data bit.
  • One signaling system uses different codes to communicate different N-bit bit patterns thereby achieving a higher data rate.
  • Unfortunately for a given DSSS code length there are only a limited number of DSSS codes that are sufficiently uncorrelated to be used reliably in the same communication system. If the codes are not sufficiently uncorrelated, the robustness of the system to interference can be degraded due to the need to increase threshold levels used in construing a received symbol.
  • One possible solution is to use a much longer DSSS code length so that there will be more uncorrelated DSSS codes that can be used for higher order M-ary signaling in order to achieve higher signal rates.
  • processing of longer DSSS codes increases power consumption and reduces battery life. The latter is unacceptable for low power wireless devices that are intended to be sustained in operation for long periods by a battery.
  • FIG. 1 is a schematic of a communication system according to a preferred embodiment of the present invention.
  • FIG. 2 is a block diagram of a transmitter used in the communication system shown in FIG. 1 according to a preferred embodiment of the invention.
  • FIG. 3 is a block diagram of a receiver used in the communication system shown in FIG. 1 according to a preferred embodiment of the invention.
  • FIG. 4 is a flow chart of a signaling method performed by the transmitter shown in FIG. 2 according to a preferred embodiment of the invention.
  • FIG. 5 is a plot of a sequence of 8 bits in signal form.
  • FIG. 6 is a plot of DSSS baseband signal generated by the transmitter shown in FIG. 2 based on the bit sequence shown in FIG. 5.
  • FIG. 7 is a flow chart of a method of processing a received signal that is performed by the receiver shown in FIG. 2 according to a preferred embodiment of the invention.
  • FIG. 8 is a flow chart of a process for determining a relative cyclical shift of a spread spectrum code included in a DSSS signal.
  • FIG. 9 is a hardware block diagram of the transmitter shown in FIG. 2 according to a preferred embodiment of the invention.
  • FIG. 10 is a hardware block diagram of the receiver shown in FIG. 2 according to a preferred embodiment of the invention.
  • FIG. 11 is a schematic of a OQPSK modulator used in the transmitter shown in FIG. 2 and FIG. 9.
  • FIG. 12 is a schematic of a demodulator used in the receiver shown in FIG. 3 and FIG. 10.
  • signaling methods, apparatuses, and software are provided for communicating by reading a sequence of N bits, cyclically shifting one of a plurality of predetermined spread spectrum code by a number of places that depends on the exact bit pattern of the N bits, modulating a carrier signal with the cyclically shifted spread spectrum code at a transmitter, and preferably with another spread spectrum code that is maintained in a fixed cyclical shift state and thereby serves as a reference, demodulating the signal to obtain a sequence of complex chip values at a receiver, optionally multiplying each Nth complex chip value by another (N+K)th complex chip value displaced from it in the sequence by a fixed number (K) of chip periods to obtain a series of differentially decoded values, correlating the received signal with one or more reference codes to determine a cyclical shift of the cyclically shifted code, and outputting the exact bit pattern.
  • the present invention provides a system that can more efficiently use a single spread spectrum code to represent a greater number of bits, by using different cyclical shift states of a plurality of single spread spectrum code to represent different bit patterns. Shorter codes can be used to achieve higher data rates. Shorter codes require less signal processing therefore power consumption is reduced.
  • FIG. 1 is a schematic of an exemplary communication system 100 used according to a preferred embodiment of the invention.
  • a first communication apparatus 102 comprises a first transmitter 104 , and a first receiver 106 .
  • a second communication apparatus 108 comprises a second transmitter 104 , and a second receiver 106 .
  • a transmission medium 112 couples the first communication apparatus, and the second communication apparatus.
  • the transmission medium can comprise free space.
  • FIG. 2 is a block diagram of a transmitter 104 (FIG. 1) used in the communication system shown in FIG. 1.
  • Binary data input at the binary data input 202 A of an N bit parser 202 is parsed into groups of N bits and output at an parser output 202 B.
  • a bit pattern encoder input 204 A of a bit pattern encoder 204 is coupled to the parser output 202 B.
  • the bit pattern encoder 204 selects a unique cyclical shift (that can be expressed as an integer), based on each possible bit pattern of the N bits, and outputs the cyclical shift at a bit pattern encoder output 204 B.
  • a cyclical shift input 206 A of a cyclical shifter 206 is coupled to the bit pattern encoder output 204 B for receiving the cyclical shift.
  • a first pseudo noise sequence (PN) memory 208 is used to store a PN code.
  • the PN code preferably comprises a binary sequence. For use in communication the zeros of a PN code can be interpreted as negative ones, e.g., for selecting the polarization of signal depending on an element of a PN code.
  • the PN memory includes a memory output 208 A coupled to a PN input 206 B of the cyclical shifter 206 .
  • the cyclical shifter receives the PN code, cyclically shifts it by a number of places indicated by the cyclical shift received from the bit pattern encoder and outputs a cyclically shifted code at a cyclical shifter output 206 C.
  • bit pattern encoder output 204 C of bit pattern encoder 204 is coupled to a first PN memory input 208 B of PN memory 208 , and a plurality of PN codes are stored in PN memory 208 .
  • bit pattern encoder 204 selects on the PN codes stored in PN memory 208 and a cyclic shift value, sending the selected PN code value to PN memory 208 via second bit pattern encoder output 204 C and the selected cyclic shift value to cyclical shifter 206 via bit pattern encoder output 204 B.
  • a first pulse shaper input 212 A, of a pulse shaper 212 is coupled to the cyclical shifter output 206 C for receiving, e.g., serially, the cyclically shifted code.
  • the pulse shaper 212 serves to generate a first baseband signal that comprises a sequence of pulses, one for each element of the cyclically shifted code.
  • the rate at which pulses are generated is termed the chip rate.
  • Each pulse covers a chip period.
  • the pulse shape is designed to limit the bandwidth of an RF signal generated by modulating a carrier wave with the baseband signal.
  • the pulse shape can be a half a cycle of a sine function.
  • the polarity of each pulse in the baseband signal depends on the value of a corresponding element of the cyclically shifted code.
  • a second PN memory 210 includes a second PN memory output 210 A that is coupled to a second pulse shaper input 214 A of a second pulse shaper 214 .
  • the second pulse shaper 214 generates a second baseband signal based on a second PN code stored in the second PN memory 210 .
  • the first pulse shaper 212 includes a first baseband signal output 212 B coupled to a first baseband signal input 216 A of an Offset Quadrature Phase Shift Key (OQPSK) modulator 216 .
  • the second pulse shaper 214 includes a second baseband signal output 214 B coupled to a second baseband signal input 216 B of the OQPSK modulator 216 .
  • An oscillator 218 includes a carrier frequency output 218 A coupled to a carrier frequency input 216 C of the OQPSK modulator.
  • the OQPSK modulator 216 generates a OQPSK RF signal by mixing a carrier wave received from the oscillator 218 with the first and second baseband signals received from the first 212 and second 214 pulse shapers respectively, and outputs the OQPSK RF signal at an RF output 216 D.
  • An amplifier input 220 A of a power amplifier 220 is coupled to the RF output 216 D of the OQPSK modulator 216 for receiving the OQPSK RF signal.
  • the amplifier 220 amplifies the OQPSK and outputs an amplified OQPSK RF signal at an amplifier output 220 B.
  • a medium interface input 222 A of a medium interface 222 is coupled to the amplifier output 220 B.
  • the medium interface 222 comprises an output 222 B coupled to the transmission medium 112 .
  • the medium can for example comprise free space, in which case the medium interface 222 preferably comprises an antenna.
  • the first memory 208 and second memory 210 can be implemented as a single physical memory, e.g., a Read Only Memory (ROM).
  • ROM Read Only Memory
  • FIG. 3 is a block diagram of the receiver 106 used in the communication system shown in FIG. 1 according to a preferred embodiment of the invention.
  • An input 302 A of a receiver medium interface 302 is coupled to the transmission medium 112 .
  • the receiver medium interface 302 preferably comprises an antenna.
  • the receiver medium interface receives the OQPSK RF signal transmitted by the transmitter 104 (FIG. 2) after it has passed through the transmission medium 112 .
  • the OQPSK RF signal is likely to be greatly attenuated after passing through the transmission medium.
  • a tuned receiver amplifier 304 includes an input 304 A that is coupled to an output 302 B of the receiver medium interface 302 , for receiving the OQPSK RF signal.
  • the tuned receiver amplifier 304 amplifies the OQPSK RF signal and outputs an amplified OQPSK signal at an amplifier output 304 B.
  • a demodulator input 306 A of a QPSK demodulator 306 is coupled to the amplifier output 304 B for receiving the signal therefrom.
  • the QPSK demodulator 306 demodulates the OQPSK RF signal and outputs a quadrature phase baseband signal at a quadrature phase output 306 B, and an in-phase baseband signal at an in-phase output 306 C.
  • the QPSK demodulator which is described below in more detail with reference to FIG. 12, preferably comprises a digital second stage, so that the output at the quadrature phase 306 B and in-phase 306 C outputs comprise sequences of quantized and sampled chip values. Together the two outputs constitute a sequence of complex chip values.
  • the quantized and sampled chip values are output at a rate that is preferably a multiple of the chip rate.
  • a complex chip multiplier 308 includes a first input 308 A coupled to the quadrature phase output 306 B of the QPSK demodulator 306 , and a second input 308 B coupled to the in-phase output 306 C of the QPSK demodulator 306 .
  • the complex chip multiplier multiplies each Nth chip in the series of complex chip values by the complex conjugate of another complex chip value displaced from Nth chip by a fixed number (K) of chip periods, and thereby generates a chip-by-chip differentially decoded (CBCDD) sequence.
  • K chip-by-chip differentially decoded
  • the fixed number of chip periods is equal to one so that complex chip values associated with adjacent chips of each baseband signal are involved in each product.
  • an Nth complex element of the CBCDD sequence is obtained by multiplying an (N ⁇ 1)th complex chip value by the complex conjugate of an Nth complex chip value.
  • Complex chip multiplication serves to reduce an undesirable modulation of the complex chip values caused by frequency drift between the transmitter oscillator 218 and a receiver local oscillator 1016 (FIG. 10).
  • the process and purpose of complex chip multiplication is the subject of a co-pending application Ser. No. 09/803,285 entitled SYSTEM FOR CODE DIVISION MULTI-ACCESS COMMUNICATION, filed on Mar. 9, 2001 and hereby incorporated herein by reference.
  • the receiver 106 comprises a first reference code memory 320 , a second reference code memory 314 , a first dot product operator 326 , a second dot product operator 312 , a first comparator 330 , and a second comparator 316 .
  • the complex chip multiplier 308 includes an output 308 C, for outputting the real part of the product obtained by complex chip multiplication.
  • the output 308 C of the complex chip multiplier 308 is coupled to a serial input 310 A of a shift register 310 , and to a serial input 328 A of shift register latch 328 .
  • a parallel output 310 B of the shift register 310 B is coupled to a first parallel input 312 A of a second dot product operator 312 .
  • a second reference code memory 314 includes a parallel output 314 A coupled to a second parallel input 312 B of the second dot product operator 312 .
  • the second dot product operator 312 After each element of the CBCDD series is input into the serial input 310 A of the shift register 310 and previously stored CBCDD series elements are shifted, the second dot product operator 312 performs a dot product operation between a sub-series of the CBCDD series that is loaded onto the shift register 310 and a reference code stored in the second reference code memory 314 , and outputs a dot product value at a dot product operator output 312 C.
  • a second comparator 316 includes a first input 316 A coupled to the second dot product operator output 312 C for receiving successive dot product values therefrom.
  • the second comparator 316 further comprises a second input 316 B that is coupled to an output 318 A of a threshold value source 318 .
  • the second comparator 316 compares the dot product value to a threshold value received from the threshold value source 318 . In the case that a dot product value exceeds the threshold value, the second comparator 316 outputs a first comparator affirmative signal at a first comparator output 316 C.
  • the shift register latch 328 also continually receives the CBCDD series and in response to each new element of the CBCDD stores that new element in a first position of an input register, and shifts other elements of the CBCDD series by one place in the input register.
  • the shift register latch 328 further comprises a control input 328 C that is coupled to the output 316 C of the first comparator 316 .
  • the shift register latch 328 transfers the contents of the input register to a parallel output 328 B.
  • the parallel output 328 B is coupled to a first parallel input 326 B of a first dot product operator 326 .
  • a first reference code memory 320 includes a parallel output 320 A coupled to a parallel input 324 A of a cyclical shifter 324 .
  • the cyclical shifter receives a first reference code from the first reference code memory 320 .
  • the cyclical shifter 324 further comprises a parallel output 324 B that is coupled to a second parallel input 326 A of the first dot product operator 326 .
  • the cyclical shifter 324 further comprises a trigger input 324 C that is coupled to the second comparator output 316 C. In response to the second comparator affirmative signal, the cyclical shifter 324 successively presents the first reference code in a series of cyclically shifted states at a cyclical shifter parallel output 324 B.
  • Each successive state has a different cyclical shift, e.g. cyclically shifted by one place relative to a preceding state.
  • the first dot product operator performs a dot product operation between the first reference code presented in a cyclically shifted state at its second parallel input, and a sub-series of the CBCDD series that has been latched over to the parallel output 328 B of the shift register latch 328 , and outputs a dot product value at an output 328 C. Therefore, the first dot product operator, outputs a succession of dot product values corresponding to a succession of cyclical shift states of the first reference code.
  • cyclical shifter 324 further comprises a code selector output 324 D coupled to a code selector input 320 B of first reference code memory 320 .
  • the cyclical shfiter 324 successively presents the first reference code in a series of cyclically shifted states at a cyclical shifter parallel output 324 .
  • first reference code memory 320 receives a request from cyclical shifter 324 via code selector output 324 D and code selector input 320 B, for a new reference code.
  • First reference code memory 320 presents this new reference code in a series of cyclically shifted states at cyclical shifter parallel. After all shifted states of this new reference code have been presented, a request for yet another new code is sent via code selector output 324 D to first reference code memory 320 .
  • a first comparator 330 includes a first input 330 A coupled to output 326 C of the first dot product operator 326 , and a first input 330 B coupled to the output 318 A of the threshold value source 318 .
  • the first comparator 330 performs comparisons between each dot product value in the succession of dot product values received from the first dot product operator 326 and the threshold value received from the threshold value source 318 . In the case that a dot product value exceeds the threshold value, the first comparator 330 outputs a first comparator affirmative signal at a first comparator output 330 C.
  • the second comparator output 316 C and the first comparator output 330 C are coupled to a first 332 A and second 332 B inputs of a time comparer 332 .
  • the time comparer 332 determines a time difference between a time at which the first comparator affirmative signal is generated by the first comparator 316 , and a time at which a second comparator affirmative signal is generated by the second comparator 330 .
  • the time difference is linearly dependent on a relative cyclical shift between a first spread spectrum code that is included in the received signal and after differential decoding correlates with the reference code presented at the first reference code memory parallel output 320 B, and second spread spectrum code that is included in the received signal and after differential decoding correlates with the reference code stored in the second reference code memory 314 .
  • the time comparer converts the time difference to a relative cyclical shift by applying a linear relation and outputs a signal indicative of a relative cyclical shift between the first spread spectrum code and the second spread spectrum code at a time comparer output 332 C.
  • a relative shift to bit pattern decoder 334 includes a relative cyclical shift input 334 A coupled to the time comparer output 332 C.
  • the relative shift to bit pattern decoder outputs an information symbol or bit pattern that depends on the relative cyclical shift at an output 334 that is coupled to a binary data output 336 .
  • the first reference code memory 314 includes a first reference code generated by operating on the first PN code by multiplying each (Nth) element by another element (N+K)th displaced from the first by a fixed number (K) of places.
  • the second reference code memory 320 includes a second reference code obtained by operating on the second PN code in the same manner.
  • the fixed number used in generating the reference codes stored in the memories 314 320 is equal to the number of chip periods used by the complex chip multiplier.
  • the PN code can be treated as a circular array.
  • the comparators 316 , 330 compare successive dot product values that correspond to successive symbol length or spread spectrum code length sub-series of the series of complex chip values, to one or more threshold value received from the threshold value source 318 , and output signals indicative of the outcome of the comparisons.
  • the comparator compares each dot product value to a single threshold value, and if the dot product value exceeds the threshold outputs a signal that is indicative of the fact that a received spread spectrum code has been correctly correlated with a reference code, in other words a correct cyclical shift has been determined.
  • the first reference code memory 320 , cyclical shifter 324 , first dot product operator 326 , shift register latch 328 , and first comparator 330 function as a first correlator.
  • the shift register 310 , second dot product operator 312 , second reference code memory, and second comparator 316 function as second correlator.
  • multiple versions of a PN code in different cyclical shift states are stored in the first reference code memory 320 and successively read out and applied to the first dot product operator 326 .
  • FIG. 4 is a flow chart of a signaling method 400 performed by the transmitter 104 shown in FIG. 2 according to a preferred embodiment of the invention.
  • binary data is read.
  • the binary data is parsed into N bit groups.
  • Process block 406 is the beginning of a loop that sequentially processes successive N bit groups.
  • a cyclical shift is selected that corresponds to a bit pattern of the N bit group.
  • a first Direct Sequence Spread Spectrum (DSSS) code is cyclically shifted by the selected cyclical shift to obtain a cyclically shifted DSSS code.
  • a PN code can be used as a DSSS code.
  • process block 414 the cyclically shifted DSSS code is transmitted along with a second DSSS code.
  • the second DSSS code serves as a reference with respect to which a relative cyclical shift of the first DSSS code is determined.
  • decision block 416 it is determined if there is more data to be processed. If so then in process block 412 , the loop started in process block 406 is incremented to the next N bit group and the process loops back to process block 406 . If the outcome of decision block 416 is negative then the process terminates.
  • step 407 is performed between steps 406 and 408 .
  • step 407 for each N bit group a first DSSS code is selected that corresponds to a bit pattern of the N bit group.
  • FIG. 5 is a plot 500 of a sequence of 8 data bits in signal form. Each bit period covers one time unit shown on the abscissa of the plot. The plot shows an eight bits sequence as follows: 0,0,0,1,1,0,1,1. If the bit parser 202 (FIG. 2) were to parse this sequence into successive groups of two its the following 2-bit sequences result: 00, 01, 10, 11. Thus in the exemplary signal 500 each of the four possible bit patterns of a two bit sequence is represented. Each bit pattern is an information symbol, and a DSSS code is transmitted in a unique cyclical shift state to convey each bit pattern.
  • FIG. 6 is a plot of DSSS baseband signal 600 generated by the pulse shaper 212 in response to the bit signal shown in FIG. 5 according to an exemplary embodiment of the invention.
  • the baseband signal 600 includes four symbol periods i.e., the period covering the ranges of zero to two, two to four, four to six, and six to eight.
  • Each of the four symbol periods which correspond to symbols 00, 01,10, and 11 respectively, includes a series of pulses based on a DSSS code in a particular cyclical shift state that corresponds to the information symbol for the symbol period.
  • each symbol period there is a sequence of pulses equal in number to the number of elements in the DSSS code.
  • Each pulse is polarized according to the sign of the corresponding element of a DSSS code in a cyclical shift state corresponding to the symbol for the symbol period.
  • a DSSS code in the baseband signal 600 in a first cyclical shift state is [1, ⁇ 1,1,1, ⁇ 1, ⁇ 1] is used to encode an information symbol of 00.
  • the series of pulses during the first symbol period is based on the DSSS code in the first cyclical shift state. Cyclically shifting the DSSS code to the left by one place from the previous state yields the DSSS code in a second cyclical shift state which is [ ⁇ 1,1,1, ⁇ 1, ⁇ 1,1].
  • the latter cyclical shift state is used to encode a bit pattern (information symbol) of 01.
  • the series of pulses of the baseband signal 600 during the second symbol period is based on the DSSS signal in the second cyclical shift state.
  • a third cyclical shift state of the DSSS code [1,1,1, ⁇ 1 ⁇ 1,1, ⁇ 1] (shifted by two places to the left from the first cyclical shift state) is used to encode a bit pattern of 10 for the third symbol and a fourth cyclical shift state of the DSSS code [1,1, ⁇ 1, ⁇ 1,1, ⁇ 1,1] (shifted by three places to the left from the first cyclical shift state) is used to encode a bit pattern of 11 for the fourth symbol period.
  • a single DSSS code can be used to convey two bits of information, by transmitting it in four different cyclical shift states.
  • four bits are conveyed using 16 cyclical shift states of a 63 element PN code.
  • One type of code used for spread spectrum communication is the maximal length of M-sequence. These codes have lengths of 2 N ⁇ 1. In order to encode all the possible bit patterns of an N-bit sequence by using different cyclical shift states 2 N cyclical shift states are needed. According to an embodiment of the invention, a zero is appended to an M-sequence in order to obtain a sequence that has 2 N possible cyclical shift states and can be used to encode all the possible bit patterns of an N-bit sequence. Thus by appending a zero to a 63 element M-sequence, a 64 element M-sequence is obtained that has 64 distinct cyclical shift states and can be used to encode 6 bits of information.
  • the second baseband signal output by the second pulse shaper 214 includes a periodic signal that is based on a DSSS sequence in a fixed cyclical shift state.
  • the sequence of pulses generated for each symbol period is based on the same cyclical shift state of the same DSSS code.
  • the baseband signal output by the second pulse shape 214 is used as a reference relative to which the cyclical shifts of cyclically shifted DSSS codes in the baseband signal 600 output by the first pulse shaper are judged.
  • FIG. 7 is a flow chart of a method of processing a received signal that is performed by the receiver 106 shown in FIG. 1 according to a preferred embodiment of the invention.
  • a received signal is demodulated to obtain quantized and sampled in-phase and quadrature phase signals in the form of a series of complex chip values.
  • each (Nth) complex chip value in the series of complex chip values is multiplied by the complex conjugate of another (N+K)th complex chip value that is displaced from the Nth by a fixed number (K, where K is an integer) of chip periods to obtain a chip-by-chip differentially decoded CBCDD sequence.
  • the CBCDD sequence is parsed into sub-sequences.
  • step 704 is eliminated and sub-series from the series of complex chip values are used in finding relative cyclical shifts of spread spectrum codes included in received signals.
  • Process block 708 is the start of a loop that processes successive symbol length sub-sequences.
  • a relative cyclical shift between a sub-sequence and a first reference code is determined.
  • a relative cyclical shift between the sub-sequence and a second reference code is determined.
  • step 714 the difference between the first relative cyclical shift and the second relative cyclical shift is taken.
  • step 716 N (an integer number of) bits with a bit pattern corresponding to the difference calculated in process block 714 are output.
  • bits with a bit pattern corresponding to the difference calculated in process block 714 and the identity of the first reference code used in process block 710 are output.
  • step 718 it is determined if there is more data (sub-sequences) to be processed. If so, then in process block 720 the loop started in process block 708 is increment to consider the next sub-sequence, and then loops back to process block 708 .
  • the demodulator 306 oversamples the received signals, and outputs more than one sample, for example four complex samples for each pulse of the first baseband signal. Due to the fact that the first and second baseband signals are superposed, each of these four samples will in general include a term based on the first baseband signal and a term based on the second baseband signal. Given such a sampling rate, the complex chip multiplier 308 would preferably multiply each complex chip value, in the sequence output by the modulator 306 by another that is displaced from it by four places (equal to one chip period). In this example, the resulting CBCDD sequence is parsed into sequences that are four times longer than the spread spectrum codes used to generate the received signals.
  • each reference code used to correlate the received signals can be obtained by multiplying each Nth element in a spread spectrum code used to generate the signals by an (N+1)th element, and duplicating each element of the differentially decoded spread spectrum code four times. For example treating the code [1, ⁇ 1,1,1,1, ⁇ 1, ⁇ 1] as a circular array and multiplying each element by the next one obtains a differentially decoded code of [ ⁇ 1, ⁇ 1,1,1, ⁇ 1,1, ⁇ 1]. Duplicating each element four times one obtains a reference code of [ ⁇ 1, ⁇ 1, ⁇ 1, ⁇ 1, ⁇ 1, ⁇ 1, ⁇ 1,1,1,1,1,1,1,1,1,1,1, ⁇ 1, ⁇ 1, ⁇ 1, ⁇ 1, ⁇ 1, ⁇ 1, ⁇ 1, ⁇ 1, ⁇ 1, ⁇ 1, ⁇ 1, ⁇ 1, ⁇ 1, ⁇ 1, ⁇ 1, ⁇ 1, ⁇ 1, ⁇ 1, ⁇ 1].
  • FIG. 8 is a flow chart of a process for determining a relative cyclical shift of a spread spectrum code included in a DSSS signal.
  • Process block 802 is the start of a loop that successively uses a reference code in a sequence of cyclically shifted states.
  • a dot product is performed between the reference code and a sequence of values derived from a received signal.
  • the values are complex values, more preferably the values are obtained by chip by chip differential decoding of complex values derived from a received signal.
  • decision block 806 an inequality involving the dot product value computed in step 804 is tested. If the inequality is true, then in step 810 the current cyclical shift state is output. If not then in process block 808 the cyclical shift state is incremented, and the process loops back to process block 802 .
  • the inequality relation can be testing using one or more comparators, as discussed above with reference to FIG. 3.
  • decision block 807 the number of cyclical shift states tested for this reference code is tested in decision block 807 . If all cyclical shift states of this reference code have not been tested, then in process block 808 , the cyclical shift state is incremented, and the process loops back to process block 802 . If all cyclical shift states of this reference code have been tested, then in process block 809 , the reference code is incremented, and the process loops back to process block 802 .
  • FIG. 9 an exemplary hardware block diagram of a transmitter 104 is shown.
  • the transmitter 104 comprises a data input 902 that is coupled to a digital signal bus 916 .
  • a program memory 910 , spread spectrum code memory 912 , and chip pulse shape memory 914 are coupled to a digital signal processor (DSP) 906 through the digital signal bus 916 .
  • DSP digital signal processor
  • the three foregoing memories 914 , 912 , 910 can be implemented, for example, as a single physical memory, e.g., a Programmable Read Only Memory (PROM).
  • PROM Programmable Read Only Memory
  • the spread spectrum code memory can be used as the first PN memory 208 (FIG. 2) and the second PN memory 210 (FIG. 2).
  • the program memory 910 is a computer readable medium that stores software for operating the receiver.
  • the spread spectrum code memory 912 stores spread spectrum codes.
  • the chip pulse memory 914 stores a digital representation of the pulse shapes used in generating baseband signals (e.g. 600 , FIG. 6).
  • An output of the digital signal processor 906 is coupled to an input of a first digital to analog converter 918 A.
  • the digital signal processor 906 combines the representation of the chip pulse shape, the spread spectrum code, and a binary data sequence into a digital representation of baseband signals.
  • a first digital representation of a baseband signal is used drive a first digital to analog converter 918 A.
  • the first digital representation of a baseband signal can include a cyclically shift spread spectrum code.
  • a second digital representation of a baseband signal is used to drive a second digital to analog converter 918 B.
  • the second digital representation of a baseband signal can for example include periodic repeats of the same spread spectrum code in the same cyclical shift state.
  • the first 918 A and second 918 B analog to digital converters generate first and second analog baseband signals.
  • the modulator 208 has a first input 216 A coupled to an output of the first digital to analog converter 918 A, and receives the first analog baseband signal therefrom.
  • the modulator 208 has a second input 216 B coupled to an output of the second digital to analog converter 918 B, and receives the analog version of the second baseband signal therefrom.
  • the modulator 216 has a carrier frequency input 216 C coupled to an output 218 A of the oscillator 218 , and receives a carrier frequency signal therefrom.
  • the modulator 216 serves to modulate the carrier frequency signal with the analog versions of the baseband signals, and output a resulting RF signal.
  • the modulator 216 is OQPSK modulator.
  • the modulator can be a QPSK modulator.
  • the power amplifier 220 comprises an input 220 A coupled to an output 216 D of modulator 216 for receiving the RF signal.
  • An antenna 920 comprises an input 920 A coupled to the output 220 B of the amplifier 220 for receiving the RF signal.
  • the antenna 920 serves to couple the RF signal into free space.
  • the program memory 910 can be used to store programs the functioning of which is illustrated with reference to FIG. 4. Furthermore, functional blocks shown in FIG. 2 including the N bit parser 202 , bit pattern encoder 204 , cyclical shifter 206 , first pulse shaper 212 , and second pulse shaper 214 can be implemented as programs stored in the program memory, and executed by the DSP 906 .
  • FIG. 10 is a hardware block diagram of the receiver 106 according to a preferred embodiment of the invention.
  • a receiver antenna 1002 includes an output 1002 A coupled to an input 1004 of a receiver amplifier 1004 .
  • the receiver amplifier 1004 includes an output 1004 B coupled to an input 1006 A of an RF to intermediate frequency converter 1006 .
  • a local oscillator 1016 includes an output 1016 A coupled to an oscillator input 1006 D of the RF to intermediate frequency converter 1006 .
  • the RF to intermediate frequency converter 1006 preferably is an analog stage of a QPSK demodulator (e.g., 306 , FIG. 3).
  • the RF to intermediate frequency converter 1006 comprises an in-phase output 1006 B that is coupled to an input 1008 A of a first low pass filter 1008 , and a quadrature phase output 1006 C that is coupled to an input 1010 A of a second low pass filter 1010 .
  • the first low pass filter 1008 includes an output 1008 B coupled to an input 1012 A of a first digital to analog converter 1012 .
  • the second low pass filter 1010 includes an output 1010 B coupled to an input 1014 A of a second analog to digital converter 1014 .
  • An output 1012 B of the first analog to digital converter 1012 , and an output 1014 B of the second analog to digital converter 1014 are coupled to a receiver digital signal bus 1024 .
  • a receiver digital signal processor (DSP) 1022 , Read Only Memory (ROM) 1020 , Random Access Memory (RAM) 1018 are also coupled to the receiver digital signal bus 1024 .
  • the ROM 1020 can be used to store programs that are executed by the receiver DSP 1022 in operating the receiver 104 , including the programs illustrated with reference to FIG. 7 and FIG. 8.
  • the RAM 1018 is used as a works space for running the aforementioned programs. Functional blocks shown in FIG.
  • the threshold 326 can be a value stored in ROM 1020 or RAM 1018 .
  • the ROM 1020 can be used as the reference code memory 316 .
  • FIG. 11 is a schematic of an OQPSK modulator 216 used in the transmitter shown in FIG. 2 and FIG. 9.
  • the modulator 216 includes the first modulator input 216 A that is coupled through one-half chip period delay 1102 to a first first mixer input 1106 A of a first mixer 1106 .
  • the second modulator input 216 B is coupled to a first second mixer input of a second mixer 1108 .
  • the output 218 A of the oscillator 218 is coupled to a second second mixer input 1108 B of the second mixer 1108 , and to an input 1104 A of a ⁇ /2 phase shifter 1104 .
  • An output 1104 B of the phase shifter 1104 is coupled to a second second mixer input 1106 B.
  • An output 1106 C of the first mixer 1106 is coupled to a first input 1110 A of a summer 1100 .
  • an output 1108 C of the second mixer 1108 is coupled to a second input 1110 B of the summer 1110 .
  • the output of the summer 216 D is the output of the modulator 216 .
  • FIG. 12 is a schematic of the demodulator 306 used in the receiver 104 shown in FIG. 3 and FIG. 10.
  • the demodulator comprises the RF to intermediate frequency converter 1006 .
  • the demodulator input 306 A is coupled to a first input 1202 A of a first mixer 1202 , and a second input 1204 A of a second mixer 1204 .
  • Local oscillator 1016 is coupled to a second input 1204 B of the second mixer 1204 , and to an input 1206 of a ⁇ /2 phase shifter 1206 .
  • An output 1206 B of the ⁇ /2 phase shifter 1206 is coupled to a second input 1202 B of the first mixer.
  • An output 1202 C of the first mixer 1202 is coupled to the input 1008 A of the first low pass filter 1008 .
  • An output 1204 C of the second mixer 1204 is coupled to the input 111 OA of the second low pass filter 1110 .
  • the demodulator 306 comprises a digital stage 1222 .
  • the digital stage 1222 of the demodulator 306 can be implemented as a program stored in the ROM 1020 (FIG. 10) and executed by the DSP 1022 .
  • the output 1012 B of the first analog to digital convert 1012 is coupled to a first input 1208 A of a first digital mixer 1208 .
  • the output 1014 B of the second analog to digital converter 1014 is coupled to a first input 1210 A of a second digital mixer 1210 .
  • the inputs 1208 A, 1210 A of the first and second digital mixers 1208 , 1210 serve as inputs of the digital stage 1222 .
  • a low frequency oscillator 1212 is coupled to a second input 1210 B of the second digital mixer 1210 , and through a ⁇ /2 phase shifter 1214 to a second input 1208 B of a the first mixer 1208 .
  • An output 1208 C of the first digital mixer 1208 is coupled to an input 1216 A of a first low pass filter 1216 .
  • An output 1210 C of the second digital mixer 1210 is coupled to an input 1218 A of a second low pass filter 1218 .
  • a first output 1216 B of the first low pass filter 1216 is coupled to a first non-inverting input 1220 A of a first summer 1220 .
  • a second output 1216 C of the first low pass filter 1216 is coupled to a non-inverting input 1222 A of a second summer 1222 .
  • a first output 1218 B of the second low pass filter 1218 is coupled to a second non-inverting input 1220 B of the first summer 1220 .
  • a second output 1218 C of the second low pass filter 1218 is coupled to an inverting input 1222 B of the second summer 12222 .
  • An output of the first summer 1220 serves as the quadrature phase demodulator output 306 B.
  • An output of the second summer 1222 serves as the in-phase demodulator output 306 C.
  • the transmitter 104 and the receiver 106 can be implemented in whole or in part as one or more Application Specific Integrated Circuits (ASIC).
  • ASIC Application Specific Integrated Circuits
  • the computer readable medium used in connection with the present invention as a memory for storing programs can comprise volatile memory such as RAM, or a medium that contains data in a transient state, such as a communication channel, network circuits, or a wireless communication link, or preferably nonvolatile memory including but not limited to, flash memory, Read Only Memory (ROM), EPROM, EEPROM, disk drive.
  • volatile memory such as RAM
  • a medium that contains data in a transient state such as a communication channel, network circuits, or a wireless communication link
  • nonvolatile memory including but not limited to, flash memory, Read Only Memory (ROM), EPROM, EEPROM, disk drive.
  • the computer readable medium used as a work space for signal processing operations can comprise Random Access Memory (RAM).
  • the present invention could be produced in hardware or software, or in a combination of hardware and software.
  • the system, or method, according to the inventive principles as disclosed in connection with the preferred embodiment may be produced in a single computer system having separate elements or means for performing the individual functions or steps described or claimed or one or more elements or means combining the performance of any of the functions or steps disclosed or claimed.
  • the invention is not limited to any particular computer program or logic or language, or instruction but may be practiced with any such suitable program, logic or language, or instructions as would be known to one of ordinary skill in the art.

Abstract

A signaling system is provided in which a spread spectrum code is cyclically shifted by a cyclical shift dictated by a bit pattern of one or more bits. The cyclically shifted spread spectrum code is used to modulate a carrier frequency, and transmitted from a transmitter to a receiver. At the receiver the signal including the cyclically shifted spectrum code is demodulated to recover the cyclically shifted code. The cyclical shift is then determined and the bit pattern which is associated with the cyclical shift is output. The method can be used in direct sequence spread spectrum communication.

Description

    CROSS REFERENCE TO RELATED APPLICATION
  • This application is a continuation in part application entitled SYSTEM FOR SPREAD SPECTRUM COMMUNICATION, Ser. No. 09/803,258 and is related to the application Ser. No. 09/803,285 Shi, et al., entitled System for Code Division Multi-Access Communication, and application Ser. No. 09/803,259, Lee et al., entitled A Protocol for Self-Organizing Network Using a Logical Spanning Tree Backbone, and application Ser. No. 09/803,322 Shi et al., entitled A Multiple Access Protocol and Structure for Communication Devices in an Asynchronous Network, filed concurrently herewith.[0001]
  • FIELD OF THE INVENTION
  • This invention pertains to spread spectrum communications. More particularly this invention pertains to a spread spectrum receiver, a spread spectrum transmitter, a spread spectrum communication system and a method of signaling using spread spectrum signals. [0002]
  • BACKGROUND OF THE INVENTION
  • Currently there is an interest in very low power wireless communication enabled devices. The uses of such devices include asset tracking devices, wireless sensors, wireless actuators for applications including asset tracking systems, wireless sensor networks, industrial and environmental monitoring and control systems, wireless personal computer peripherals, toys, security systems, etc. [0003]
  • With the proliferation of wireless communication services there is paucity of available spectrum. Therefore, system designers have turned to the unregulated Instrument, Scientific, and Medical (ISM) bands of 2.45 Ghz and 900 MHz. However, due to the fact that they are unregulated, the likelihood of a wireless system having to contend with high levels of interference must be taken into account. [0004]
  • One class of wireless communication system that is robust in terms of tolerance of interference is spread spectrum communication. One type of spread spectrum communication is Direct Sequence Spread Spectrum (DSSS) communication. DSSS communication systems are in fact able to contend with Signal to Noise Ratios (SNR) of less than unity. [0005]
  • In conventional DSSS communication systems a binary data signal that is biased so that the two signal states have equal and opposite signal levels is multiplied by a higher frequency signal, thereby spreading its spectrum. The higher frequency signal comprises a series of pulses that are polarized according to the values of a series of elements of a DSSS code. In conventional DSSS communication information is encoded by choosing the polarization of a sequence of pulses corresponding to a DSSS codes, according to the value of a corresponding data bit. [0006]
  • One signaling system uses different codes to communicate different N-bit bit patterns thereby achieving a higher data rate. Unfortunately for a given DSSS code length there are only a limited number of DSSS codes that are sufficiently uncorrelated to be used reliably in the same communication system. If the codes are not sufficiently uncorrelated, the robustness of the system to interference can be degraded due to the need to increase threshold levels used in construing a received symbol. [0007]
  • One possible solution is to use a much longer DSSS code length so that there will be more uncorrelated DSSS codes that can be used for higher order M-ary signaling in order to achieve higher signal rates. Unfortunately, the processing of longer DSSS codes increases power consumption and reduces battery life. The latter is unacceptable for low power wireless devices that are intended to be sustained in operation for long periods by a battery. [0008]
  • What is needed is spread spectrum signaling method that can achieve higher data rates without having to use longer DSSS codes, or otherwise increasing power consumption. [0009]
  • BRIEF DESCRIPTION OF THE FIGURES
  • The features of the invention believed to be novel are set forth in the claims. The invention itself, however, may be best understood by reference to the following detailed description of certain exemplary embodiments of the invention, taken in conjunction with the accompanying drawings in which: [0010]
  • FIG. 1 is a schematic of a communication system according to a preferred embodiment of the present invention. [0011]
  • FIG. 2 is a block diagram of a transmitter used in the communication system shown in FIG. 1 according to a preferred embodiment of the invention. [0012]
  • FIG. 3 is a block diagram of a receiver used in the communication system shown in FIG. 1 according to a preferred embodiment of the invention. [0013]
  • FIG. 4 is a flow chart of a signaling method performed by the transmitter shown in FIG. 2 according to a preferred embodiment of the invention. [0014]
  • FIG. 5 is a plot of a sequence of 8 bits in signal form. [0015]
  • FIG. 6 is a plot of DSSS baseband signal generated by the transmitter shown in FIG. 2 based on the bit sequence shown in FIG. 5. [0016]
  • FIG. 7 is a flow chart of a method of processing a received signal that is performed by the receiver shown in FIG. 2 according to a preferred embodiment of the invention. [0017]
  • FIG. 8 is a flow chart of a process for determining a relative cyclical shift of a spread spectrum code included in a DSSS signal. [0018]
  • FIG. 9 is a hardware block diagram of the transmitter shown in FIG. 2 according to a preferred embodiment of the invention. [0019]
  • FIG. 10 is a hardware block diagram of the receiver shown in FIG. 2 according to a preferred embodiment of the invention. [0020]
  • FIG. 11 is a schematic of a OQPSK modulator used in the transmitter shown in FIG. 2 and FIG. 9. [0021]
  • FIG. 12 is a schematic of a demodulator used in the receiver shown in FIG. 3 and FIG. 10.[0022]
  • DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT
  • While this invention is susceptible of embodiment in many different forms, there are shown in the drawings and will herein be described in detail specific embodiments, with the understanding that the present disclosure is to be considered as an example of the principles of the invention and not intended to limit the invention to the specific embodiments shown and described. Further, the terms and words used herein are not to be considered limiting, but rather merely descriptive. In the description below, like reference numbers are used to describe the same, similar, or corresponding parts in the several views of the drawings. [0023]
  • According to preferred embodiments of the present invention, signaling methods, apparatuses, and software are provided for communicating by reading a sequence of N bits, cyclically shifting one of a plurality of predetermined spread spectrum code by a number of places that depends on the exact bit pattern of the N bits, modulating a carrier signal with the cyclically shifted spread spectrum code at a transmitter, and preferably with another spread spectrum code that is maintained in a fixed cyclical shift state and thereby serves as a reference, demodulating the signal to obtain a sequence of complex chip values at a receiver, optionally multiplying each Nth complex chip value by another (N+K)th complex chip value displaced from it in the sequence by a fixed number (K) of chip periods to obtain a series of differentially decoded values, correlating the received signal with one or more reference codes to determine a cyclical shift of the cyclically shifted code, and outputting the exact bit pattern. The present invention provides a system that can more efficiently use a single spread spectrum code to represent a greater number of bits, by using different cyclical shift states of a plurality of single spread spectrum code to represent different bit patterns. Shorter codes can be used to achieve higher data rates. Shorter codes require less signal processing therefore power consumption is reduced. [0024]
  • FIG. 1 is a schematic of an [0025] exemplary communication system 100 used according to a preferred embodiment of the invention.
  • A [0026] first communication apparatus 102 comprises a first transmitter 104, and a first receiver 106.
  • A [0027] second communication apparatus 108 comprises a second transmitter 104, and a second receiver 106.
  • A [0028] transmission medium 112 couples the first communication apparatus, and the second communication apparatus. The transmission medium can comprise free space.
  • FIG. 2 is a block diagram of a transmitter [0029] 104 (FIG. 1) used in the communication system shown in FIG. 1. Binary data input at the binary data input 202A of an N bit parser 202 is parsed into groups of N bits and output at an parser output 202B.
  • A bit [0030] pattern encoder input 204A of a bit pattern encoder 204 is coupled to the parser output 202B. The bit pattern encoder 204 selects a unique cyclical shift (that can be expressed as an integer), based on each possible bit pattern of the N bits, and outputs the cyclical shift at a bit pattern encoder output 204B.
  • A [0031] cyclical shift input 206A of a cyclical shifter 206 is coupled to the bit pattern encoder output 204B for receiving the cyclical shift. A first pseudo noise sequence (PN) memory 208 is used to store a PN code. The PN code preferably comprises a binary sequence. For use in communication the zeros of a PN code can be interpreted as negative ones, e.g., for selecting the polarization of signal depending on an element of a PN code. The PN memory includes a memory output 208A coupled to a PN input 206B of the cyclical shifter 206. The cyclical shifter receives the PN code, cyclically shifts it by a number of places indicated by the cyclical shift received from the bit pattern encoder and outputs a cyclically shifted code at a cyclical shifter output 206C.
  • According to an alternative embodiment of the invention, a second bit [0032] pattern encoder output 204C of bit pattern encoder 204 is coupled to a first PN memory input 208B of PN memory 208, and a plurality of PN codes are stored in PN memory 208. In response to the N bit pattern received from N bit parser 202, bit pattern encoder 204 selects on the PN codes stored in PN memory 208 and a cyclic shift value, sending the selected PN code value to PN memory 208 via second bit pattern encoder output 204C and the selected cyclic shift value to cyclical shifter 206 via bit pattern encoder output 204B.
  • A first [0033] pulse shaper input 212A, of a pulse shaper 212 is coupled to the cyclical shifter output 206C for receiving, e.g., serially, the cyclically shifted code. The pulse shaper 212 serves to generate a first baseband signal that comprises a sequence of pulses, one for each element of the cyclically shifted code. The rate at which pulses are generated is termed the chip rate. Each pulse covers a chip period. The pulse shape is designed to limit the bandwidth of an RF signal generated by modulating a carrier wave with the baseband signal. For example, the pulse shape can be a half a cycle of a sine function. The polarity of each pulse in the baseband signal depends on the value of a corresponding element of the cyclically shifted code.
  • A [0034] second PN memory 210 includes a second PN memory output 210A that is coupled to a second pulse shaper input 214A of a second pulse shaper 214. The second pulse shaper 214 generates a second baseband signal based on a second PN code stored in the second PN memory 210.
  • The [0035] first pulse shaper 212 includes a first baseband signal output 212B coupled to a first baseband signal input 216A of an Offset Quadrature Phase Shift Key (OQPSK) modulator 216. The second pulse shaper 214 includes a second baseband signal output 214B coupled to a second baseband signal input 216B of the OQPSK modulator 216. An oscillator 218 includes a carrier frequency output 218A coupled to a carrier frequency input 216C of the OQPSK modulator. The OQPSK modulator 216 generates a OQPSK RF signal by mixing a carrier wave received from the oscillator 218 with the first and second baseband signals received from the first 212 and second 214 pulse shapers respectively, and outputs the OQPSK RF signal at an RF output 216D.
  • An [0036] amplifier input 220A of a power amplifier 220 is coupled to the RF output 216D of the OQPSK modulator 216 for receiving the OQPSK RF signal. The amplifier 220 amplifies the OQPSK and outputs an amplified OQPSK RF signal at an amplifier output 220B.
  • A [0037] medium interface input 222A of a medium interface 222 is coupled to the amplifier output 220B. The medium interface 222 comprises an output 222B coupled to the transmission medium 112. The medium can for example comprise free space, in which case the medium interface 222 preferably comprises an antenna.
  • The [0038] first memory 208 and second memory 210 can be implemented as a single physical memory, e.g., a Read Only Memory (ROM).
  • FIG. 3 is a block diagram of the [0039] receiver 106 used in the communication system shown in FIG. 1 according to a preferred embodiment of the invention.
  • An [0040] input 302A of a receiver medium interface 302 is coupled to the transmission medium 112. In the case that the transmission medium 112 is free space, the receiver medium interface 302 preferably comprises an antenna. The receiver medium interface receives the OQPSK RF signal transmitted by the transmitter 104 (FIG. 2) after it has passed through the transmission medium 112. The OQPSK RF signal is likely to be greatly attenuated after passing through the transmission medium.
  • A tuned [0041] receiver amplifier 304 includes an input 304A that is coupled to an output 302B of the receiver medium interface 302, for receiving the OQPSK RF signal. The tuned receiver amplifier 304 amplifies the OQPSK RF signal and outputs an amplified OQPSK signal at an amplifier output 304B.
  • A [0042] demodulator input 306A of a QPSK demodulator 306 is coupled to the amplifier output 304B for receiving the signal therefrom. The QPSK demodulator 306 demodulates the OQPSK RF signal and outputs a quadrature phase baseband signal at a quadrature phase output 306B, and an in-phase baseband signal at an in-phase output 306C. The QPSK demodulator which is described below in more detail with reference to FIG. 12, preferably comprises a digital second stage, so that the output at the quadrature phase 306B and in-phase 306C outputs comprise sequences of quantized and sampled chip values. Together the two outputs constitute a sequence of complex chip values. The quantized and sampled chip values are output at a rate that is preferably a multiple of the chip rate.
  • A [0043] complex chip multiplier 308 includes a first input 308A coupled to the quadrature phase output 306B of the QPSK demodulator 306, and a second input 308B coupled to the in-phase output 306C of the QPSK demodulator 306. The complex chip multiplier multiplies each Nth chip in the series of complex chip values by the complex conjugate of another complex chip value displaced from Nth chip by a fixed number (K) of chip periods, and thereby generates a chip-by-chip differentially decoded (CBCDD) sequence. Preferably the fixed number of chip periods is equal to one so that complex chip values associated with adjacent chips of each baseband signal are involved in each product. For example, an Nth complex element of the CBCDD sequence is obtained by multiplying an (N−1)th complex chip value by the complex conjugate of an Nth complex chip value. Complex chip multiplication serves to reduce an undesirable modulation of the complex chip values caused by frequency drift between the transmitter oscillator 218 and a receiver local oscillator 1016 (FIG. 10). The process and purpose of complex chip multiplication is the subject of a co-pending application Ser. No. 09/803,285 entitled SYSTEM FOR CODE DIVISION MULTI-ACCESS COMMUNICATION, filed on Mar. 9, 2001 and hereby incorporated herein by reference.
  • In connection with the present invention it is noted that when applied to an M-sequence type of PN code, the process of chip multiplication has the effect of shifting the PN code by a number of places or producing a result that is equivalent to taking the negative of the PN code and shifting the result by a certain number of places. [0044]
  • The [0045] receiver 106 comprises a first reference code memory 320, a second reference code memory 314, a first dot product operator 326, a second dot product operator 312, a first comparator 330, and a second comparator 316.
  • The [0046] complex chip multiplier 308 includes an output 308C, for outputting the real part of the product obtained by complex chip multiplication. The output 308C of the complex chip multiplier 308 is coupled to a serial input 310A of a shift register 310, and to a serial input 328A of shift register latch 328. A parallel output 310B of the shift register 310B is coupled to a first parallel input 312A of a second dot product operator 312. A second reference code memory 314 includes a parallel output 314A coupled to a second parallel input 312B of the second dot product operator 312.
  • After each element of the CBCDD series is input into the [0047] serial input 310A of the shift register 310 and previously stored CBCDD series elements are shifted, the second dot product operator 312 performs a dot product operation between a sub-series of the CBCDD series that is loaded onto the shift register 310 and a reference code stored in the second reference code memory 314, and outputs a dot product value at a dot product operator output 312C.
  • A [0048] second comparator 316 includes a first input 316A coupled to the second dot product operator output 312C for receiving successive dot product values therefrom. The second comparator 316 further comprises a second input 316B that is coupled to an output 318A of a threshold value source 318. After each dot product value is received by the second comparator 316, the second comparator 316 compares the dot product value to a threshold value received from the threshold value source 318. In the case that a dot product value exceeds the threshold value, the second comparator 316 outputs a first comparator affirmative signal at a first comparator output 316C.
  • The [0049] shift register latch 328 also continually receives the CBCDD series and in response to each new element of the CBCDD stores that new element in a first position of an input register, and shifts other elements of the CBCDD series by one place in the input register. The shift register latch 328 further comprises a control input 328C that is coupled to the output 316C of the first comparator 316. In response to receiving the second comparator affirmative signal from the second comparator, the shift register latch 328 transfers the contents of the input register to a parallel output 328B. The parallel output 328B is coupled to a first parallel input 326B of a first dot product operator 326.
  • A first [0050] reference code memory 320 includes a parallel output 320A coupled to a parallel input 324A of a cyclical shifter 324. The cyclical shifter receives a first reference code from the first reference code memory 320. The cyclical shifter 324 further comprises a parallel output 324B that is coupled to a second parallel input 326A of the first dot product operator 326. The cyclical shifter 324 further comprises a trigger input 324C that is coupled to the second comparator output 316C. In response to the second comparator affirmative signal, the cyclical shifter 324 successively presents the first reference code in a series of cyclically shifted states at a cyclical shifter parallel output 324B. Each successive state has a different cyclical shift, e.g. cyclically shifted by one place relative to a preceding state. In response to receiving each successive cyclically shifted state at its second parallel input 326A, the first dot product operator performs a dot product operation between the first reference code presented in a cyclically shifted state at its second parallel input, and a sub-series of the CBCDD series that has been latched over to the parallel output 328B of the shift register latch 328, and outputs a dot product value at an output 328C. Therefore, the first dot product operator, outputs a succession of dot product values corresponding to a succession of cyclical shift states of the first reference code.
  • According to an alternative embodiment of the invention, [0051] cyclical shifter 324 further comprises a code selector output 324D coupled to a code selector input 320B of first reference code memory 320. In response to the second comparator affirmative signal, the cyclical shfiter324 successively presents the first reference code in a series of cyclically shifted states at a cyclical shifter parallel output 324. After all shifted estates of the first reference code have been presented, first reference code memory 320 receives a request from cyclical shifter 324 via code selector output 324D and code selector input 320B, for a new reference code. First reference code memory 320 then presents this new reference code in a series of cyclically shifted states at cyclical shifter parallel. After all shifted states of this new reference code have been presented, a request for yet another new code is sent via code selector output 324D to first reference code memory 320.
  • A [0052] first comparator 330, includes a first input 330A coupled to output 326C of the first dot product operator 326, and a first input 330B coupled to the output 318A of the threshold value source 318. Rather than using a single threshold value source for the two comparators 316, 330, two separate threshold sources can be used. The first comparator 330 performs comparisons between each dot product value in the succession of dot product values received from the first dot product operator 326 and the threshold value received from the threshold value source 318. In the case that a dot product value exceeds the threshold value, the first comparator 330 outputs a first comparator affirmative signal at a first comparator output 330C.
  • The [0053] second comparator output 316C and the first comparator output 330C are coupled to a first 332A and second 332B inputs of a time comparer 332. The time comparer 332 determines a time difference between a time at which the first comparator affirmative signal is generated by the first comparator 316, and a time at which a second comparator affirmative signal is generated by the second comparator 330. The time difference is linearly dependent on a relative cyclical shift between a first spread spectrum code that is included in the received signal and after differential decoding correlates with the reference code presented at the first reference code memory parallel output 320B, and second spread spectrum code that is included in the received signal and after differential decoding correlates with the reference code stored in the second reference code memory 314. The time comparer converts the time difference to a relative cyclical shift by applying a linear relation and outputs a signal indicative of a relative cyclical shift between the first spread spectrum code and the second spread spectrum code at a time comparer output 332C.
  • A relative shift to bit [0054] pattern decoder 334 includes a relative cyclical shift input 334A coupled to the time comparer output 332C. The relative shift to bit pattern decoder outputs an information symbol or bit pattern that depends on the relative cyclical shift at an output 334 that is coupled to a binary data output 336.
  • According to a preferred embodiment of the invention the first [0055] reference code memory 314 includes a first reference code generated by operating on the first PN code by multiplying each (Nth) element by another element (N+K)th displaced from the first by a fixed number (K) of places. The second reference code memory 320 includes a second reference code obtained by operating on the second PN code in the same manner.
  • According to a preferred embodiment of the invention the fixed number used in generating the reference codes stored in the [0056] memories 314 320 is equal to the number of chip periods used by the complex chip multiplier. For the purpose of identifying an element displaced from another element of the PN code by the fixed number of places, the PN code can be treated as a circular array.
  • The [0057] comparators 316, 330 compare successive dot product values that correspond to successive symbol length or spread spectrum code length sub-series of the series of complex chip values, to one or more threshold value received from the threshold value source 318, and output signals indicative of the outcome of the comparisons. According to a preferred embodiment of the invention the comparator compares each dot product value to a single threshold value, and if the dot product value exceeds the threshold outputs a signal that is indicative of the fact that a received spread spectrum code has been correctly correlated with a reference code, in other words a correct cyclical shift has been determined.
  • The first [0058] reference code memory 320, cyclical shifter 324, first dot product operator 326, shift register latch 328, and first comparator 330 function as a first correlator. The shift register 310, second dot product operator 312, second reference code memory, and second comparator 316 function as second correlator.
  • According to an alternative embodiment of the invention multiple versions of a PN code in different cyclical shift states are stored in the first [0059] reference code memory 320 and successively read out and applied to the first dot product operator 326.
  • According to an alternative embodiment of the invention rather than storing PN codes in memory they can be generated using a generator polynomial. [0060]
  • FIG. 4 is a flow chart of a [0061] signaling method 400 performed by the transmitter 104 shown in FIG. 2 according to a preferred embodiment of the invention. In step 402 binary data is read. In step 404 the binary data is parsed into N bit groups. Process block 406 is the beginning of a loop that sequentially processes successive N bit groups. In step 408 for each N bit group a cyclical shift is selected that corresponds to a bit pattern of the N bit group. In process block 410 a first Direct Sequence Spread Spectrum (DSSS) code is cyclically shifted by the selected cyclical shift to obtain a cyclically shifted DSSS code. A PN code can be used as a DSSS code. In process block 414 the cyclically shifted DSSS code is transmitted along with a second DSSS code. The second DSSS code serves as a reference with respect to which a relative cyclical shift of the first DSSS code is determined. In decision block 416 it is determined if there is more data to be processed. If so then in process block 412, the loop started in process block 406 is incremented to the next N bit group and the process loops back to process block 406. If the outcome of decision block 416 is negative then the process terminates.
  • In an alternative embodiment, [0062] step 407 is performed between steps 406 and 408. In step 407, for each N bit group a first DSSS code is selected that corresponds to a bit pattern of the N bit group.
  • The signal generated by the [0063] transmitter 104 shown in FIG. 2 according to the method shown in FIG. 4 will be described below with references to FIGS. 5 and 6.
  • FIG. 5 is a [0064] plot 500 of a sequence of 8 data bits in signal form. Each bit period covers one time unit shown on the abscissa of the plot. The plot shows an eight bits sequence as follows: 0,0,0,1,1,0,1,1. If the bit parser 202 (FIG. 2) were to parse this sequence into successive groups of two its the following 2-bit sequences result: 00, 01, 10, 11. Thus in the exemplary signal 500 each of the four possible bit patterns of a two bit sequence is represented. Each bit pattern is an information symbol, and a DSSS code is transmitted in a unique cyclical shift state to convey each bit pattern.
  • FIG. 6 is a plot of DSSS baseband signal [0065] 600 generated by the pulse shaper 212 in response to the bit signal shown in FIG. 5 according to an exemplary embodiment of the invention. The baseband signal 600 includes four symbol periods i.e., the period covering the ranges of zero to two, two to four, four to six, and six to eight. Each of the four symbol periods which correspond to symbols 00, 01,10, and 11 respectively, includes a series of pulses based on a DSSS code in a particular cyclical shift state that corresponds to the information symbol for the symbol period.
  • During each symbol period there is a sequence of pulses equal in number to the number of elements in the DSSS code. Each pulse is polarized according to the sign of the corresponding element of a DSSS code in a cyclical shift state corresponding to the symbol for the symbol period. [0066]
  • A DSSS code in the baseband signal [0067] 600 in a first cyclical shift state is [1,−1,1,1,1,−1,−1] is used to encode an information symbol of 00. The series of pulses during the first symbol period is based on the DSSS code in the first cyclical shift state. Cyclically shifting the DSSS code to the left by one place from the previous state yields the DSSS code in a second cyclical shift state which is [−1,1,1,1,−1,−1,1]. The latter cyclical shift state is used to encode a bit pattern (information symbol) of 01. The series of pulses of the baseband signal 600 during the second symbol period is based on the DSSS signal in the second cyclical shift state. Similarly, as shown in FIGS. 5 and 6 a third cyclical shift state of the DSSS code [1,1,1,−1−1,1,−1] (shifted by two places to the left from the first cyclical shift state) is used to encode a bit pattern of 10 for the third symbol and a fourth cyclical shift state of the DSSS code [1,1,−1,−1,1,−1,1] (shifted by three places to the left from the first cyclical shift state) is used to encode a bit pattern of 11 for the fourth symbol period.
  • Thus as illustrated in the forgoing discussion, a single DSSS code can be used to convey two bits of information, by transmitting it in four different cyclical shift states. According to another exemplary embodiment of the invention four bits are conveyed using 16 cyclical shift states of a 63 element PN code. [0068]
  • One type of code used for spread spectrum communication is the maximal length of M-sequence. These codes have lengths of 2[0069] N−1. In order to encode all the possible bit patterns of an N-bit sequence by using different cyclical shift states 2N cyclical shift states are needed. According to an embodiment of the invention, a zero is appended to an M-sequence in order to obtain a sequence that has 2N possible cyclical shift states and can be used to encode all the possible bit patterns of an N-bit sequence. Thus by appending a zero to a 63 element M-sequence, a 64 element M-sequence is obtained that has 64 distinct cyclical shift states and can be used to encode 6 bits of information.
  • According to an embodiment of the invention, the second baseband signal output by the second pulse shaper [0070] 214 (FIG. 2) includes a periodic signal that is based on a DSSS sequence in a fixed cyclical shift state. In other words the sequence of pulses generated for each symbol period is based on the same cyclical shift state of the same DSSS code. For example, for use in combination with signal 600 which is output by the first pulse shaper 212 according to an exemplary embodiment, a signal which includes a repeating pattern of a sequence of pulses based on a 7 element PN code other than that shown in FIG. 6. At the receiver the 106 the baseband signal output by the second pulse shape 214 is used as a reference relative to which the cyclical shifts of cyclically shifted DSSS codes in the baseband signal 600 output by the first pulse shaper are judged.
  • FIG. 7 is a flow chart of a method of processing a received signal that is performed by the [0071] receiver 106 shown in FIG. 1 according to a preferred embodiment of the invention. In step 702 a received signal is demodulated to obtain quantized and sampled in-phase and quadrature phase signals in the form of a series of complex chip values.
  • In [0072] step 704 each (Nth) complex chip value in the series of complex chip values is multiplied by the complex conjugate of another (N+K)th complex chip value that is displaced from the Nth by a fixed number (K, where K is an integer) of chip periods to obtain a chip-by-chip differentially decoded CBCDD sequence. In step 706 the CBCDD sequence is parsed into sub-sequences. According to an alternative embodiment of the invention step 704 is eliminated and sub-series from the series of complex chip values are used in finding relative cyclical shifts of spread spectrum codes included in received signals.
  • [0073] Process block 708 is the start of a loop that processes successive symbol length sub-sequences. In step 710 a relative cyclical shift between a sub-sequence and a first reference code is determined. In step 712 a relative cyclical shift between the sub-sequence and a second reference code is determined.
  • In [0074] step 714 the difference between the first relative cyclical shift and the second relative cyclical shift is taken.
  • In step [0075] 716 N (an integer number of) bits with a bit pattern corresponding to the difference calculated in process block 714 are output. In an alternative embodiment, in step 716 N bits with a bit pattern corresponding to the difference calculated in process block 714 and the identity of the first reference code used in process block 710, are output.
  • In [0076] step 718 it is determined if there is more data (sub-sequences) to be processed. If so, then in process block 720 the loop started in process block 708 is increment to consider the next sub-sequence, and then loops back to process block 708.
  • According to one embodiment of the invention the [0077] demodulator 306 oversamples the received signals, and outputs more than one sample, for example four complex samples for each pulse of the first baseband signal. Due to the fact that the first and second baseband signals are superposed, each of these four samples will in general include a term based on the first baseband signal and a term based on the second baseband signal. Given such a sampling rate, the complex chip multiplier 308 would preferably multiply each complex chip value, in the sequence output by the modulator 306 by another that is displaced from it by four places (equal to one chip period). In this example, the resulting CBCDD sequence is parsed into sequences that are four times longer than the spread spectrum codes used to generate the received signals. In this example, each reference code used to correlate the received signals can be obtained by multiplying each Nth element in a spread spectrum code used to generate the signals by an (N+1)th element, and duplicating each element of the differentially decoded spread spectrum code four times. For example treating the code [1,−1,1,1,1,−1,−1] as a circular array and multiplying each element by the next one obtains a differentially decoded code of [−1,−1,1,1,−1,1,−1]. Duplicating each element four times one obtains a reference code of [−1,−1,−1,−1,−1, −1,−1,−1,1,1,1,1,1,1,1,1,−1,−1,−1,−1,1,1,1,1,−1,−1,−1,−1].
  • FIG. 8 is a flow chart of a process for determining a relative cyclical shift of a spread spectrum code included in a DSSS signal. [0078]
  • [0079] Process block 802 is the start of a loop that successively uses a reference code in a sequence of cyclically shifted states. In step 804 a dot product is performed between the reference code and a sequence of values derived from a received signal. Preferably the values are complex values, more preferably the values are obtained by chip by chip differential decoding of complex values derived from a received signal.
  • In [0080] decision block 806, an inequality involving the dot product value computed in step 804 is tested. If the inequality is true, then in step 810 the current cyclical shift state is output. If not then in process block 808 the cyclical shift state is incremented, and the process loops back to process block 802. In a hardware implementation the inequality relation can be testing using one or more comparators, as discussed above with reference to FIG. 3.
  • In an alternative embodiment, if the inequality of [0081] decision block 806 is false, the number of cyclical shift states tested for this reference code is tested in decision block 807. If all cyclical shift states of this reference code have not been tested, then in process block 808, the cyclical shift state is incremented, and the process loops back to process block 802. If all cyclical shift states of this reference code have been tested, then in process block 809, the reference code is incremented, and the process loops back to process block 802.
  • Referring to FIG. 9 an exemplary hardware block diagram of a [0082] transmitter 104 is shown.
  • The [0083] transmitter 104 comprises a data input 902 that is coupled to a digital signal bus 916. A program memory 910, spread spectrum code memory 912, and chip pulse shape memory 914 are coupled to a digital signal processor (DSP) 906 through the digital signal bus 916. The three foregoing memories 914, 912, 910 can be implemented, for example, as a single physical memory, e.g., a Programmable Read Only Memory (PROM). The spread spectrum code memory can be used as the first PN memory 208 (FIG. 2) and the second PN memory 210 (FIG. 2).
  • The [0084] program memory 910 is a computer readable medium that stores software for operating the receiver. The spread spectrum code memory 912 stores spread spectrum codes. The chip pulse memory 914 stores a digital representation of the pulse shapes used in generating baseband signals (e.g. 600, FIG. 6).
  • An output of the [0085] digital signal processor 906, is coupled to an input of a first digital to analog converter 918A. The digital signal processor 906 combines the representation of the chip pulse shape, the spread spectrum code, and a binary data sequence into a digital representation of baseband signals. A first digital representation of a baseband signal is used drive a first digital to analog converter 918A. For example the first digital representation of a baseband signal can include a cyclically shift spread spectrum code. A second digital representation of a baseband signal is used to drive a second digital to analog converter 918B. The second digital representation of a baseband signal can for example include periodic repeats of the same spread spectrum code in the same cyclical shift state. The first 918A and second 918B analog to digital converters generate first and second analog baseband signals.
  • The [0086] modulator 208 has a first input 216A coupled to an output of the first digital to analog converter 918A, and receives the first analog baseband signal therefrom. The modulator 208 has a second input 216B coupled to an output of the second digital to analog converter 918B, and receives the analog version of the second baseband signal therefrom. The modulator 216 has a carrier frequency input 216C coupled to an output 218A of the oscillator 218, and receives a carrier frequency signal therefrom. The modulator 216 serves to modulate the carrier frequency signal with the analog versions of the baseband signals, and output a resulting RF signal. Preferably the modulator 216 is OQPSK modulator. Alternatively the modulator can be a QPSK modulator.
  • The [0087] power amplifier 220 comprises an input 220A coupled to an output 216D of modulator 216 for receiving the RF signal.
  • An [0088] antenna 920 comprises an input 920A coupled to the output 220B of the amplifier 220 for receiving the RF signal. The antenna 920 serves to couple the RF signal into free space.
  • The [0089] program memory 910 can be used to store programs the functioning of which is illustrated with reference to FIG. 4. Furthermore, functional blocks shown in FIG. 2 including the N bit parser 202, bit pattern encoder 204, cyclical shifter 206, first pulse shaper 212, and second pulse shaper 214 can be implemented as programs stored in the program memory, and executed by the DSP 906.
  • FIG. 10 is a hardware block diagram of the [0090] receiver 106 according to a preferred embodiment of the invention.
  • A receiver antenna [0091] 1002 includes an output 1002A coupled to an input 1004 of a receiver amplifier 1004. The receiver amplifier 1004 includes an output 1004B coupled to an input 1006A of an RF to intermediate frequency converter 1006. A local oscillator 1016 includes an output 1016A coupled to an oscillator input 1006D of the RF to intermediate frequency converter 1006. The RF to intermediate frequency converter 1006 preferably is an analog stage of a QPSK demodulator (e.g., 306, FIG. 3). The RF to intermediate frequency converter 1006 comprises an in-phase output 1006B that is coupled to an input 1008A of a first low pass filter 1008, and a quadrature phase output 1006C that is coupled to an input 1010A of a second low pass filter 1010. The first low pass filter 1008 includes an output 1008B coupled to an input 1012A of a first digital to analog converter 1012. Likewise, the second low pass filter 1010 includes an output 1010B coupled to an input 1014A of a second analog to digital converter 1014. An output 1012B of the first analog to digital converter 1012, and an output 1014B of the second analog to digital converter 1014 are coupled to a receiver digital signal bus 1024. A receiver digital signal processor (DSP) 1022, Read Only Memory (ROM) 1020, Random Access Memory (RAM) 1018 are also coupled to the receiver digital signal bus 1024. The ROM 1020 can be used to store programs that are executed by the receiver DSP 1022 in operating the receiver 104, including the programs illustrated with reference to FIG. 7 and FIG. 8. The RAM 1018 is used as a works space for running the aforementioned programs. Functional blocks shown in FIG. 3 including the complex chip multiplier 308, first comparator 330, time comparer 332, shift register 310, second dot product operator 312, cyclical shifter 324, first dot product operator 326, shift register latch 328, second comparator 316, and relative shift to bit pattern decoder 334 can be implemented as programs stored ROM and executed by DSP 1022. The threshold 326 can be a value stored in ROM 1020 or RAM 1018. The ROM 1020 can be used as the reference code memory 316.
  • FIG. 11 is a schematic of an [0092] OQPSK modulator 216 used in the transmitter shown in FIG. 2 and FIG. 9. The modulator 216 includes the first modulator input 216A that is coupled through one-half chip period delay 1102 to a first first mixer input 1106A of a first mixer 1106. The second modulator input 216B is coupled to a first second mixer input of a second mixer 1108.
  • The [0093] output 218A of the oscillator 218 is coupled to a second second mixer input 1108B of the second mixer 1108, and to an input 1104A of a π/2 phase shifter 1104. An output 1104B of the phase shifter 1104 is coupled to a second second mixer input 1106B. An output 1106C of the first mixer 1106 is coupled to a first input 1110A of a summer 1100. Similarly an output 1108C of the second mixer 1108 is coupled to a second input 1110B of the summer 1110. The output of the summer 216D is the output of the modulator 216.
  • FIG. 12 is a schematic of the [0094] demodulator 306 used in the receiver 104 shown in FIG. 3 and FIG. 10. The demodulator comprises the RF to intermediate frequency converter 1006. The demodulator input 306A is coupled to a first input 1202A of a first mixer 1202, and a second input 1204A of a second mixer 1204. Local oscillator 1016 is coupled to a second input 1204B of the second mixer 1204, and to an input 1206 of a π/2 phase shifter 1206. An output 1206B of the π/2 phase shifter 1206 is coupled to a second input 1202B of the first mixer. An output 1202C of the first mixer 1202 is coupled to the input 1008A of the first low pass filter 1008. An output 1204C of the second mixer 1204 is coupled to the input 111 OA of the second low pass filter 1110.
  • The [0095] demodulator 306 comprises a digital stage 1222. The digital stage 1222 of the demodulator 306 can be implemented as a program stored in the ROM 1020 (FIG. 10) and executed by the DSP 1022. The output 1012B of the first analog to digital convert 1012 is coupled to a first input 1208A of a first digital mixer 1208. The output 1014B of the second analog to digital converter 1014 is coupled to a first input 1210A of a second digital mixer 1210. The inputs 1208A, 1210A of the first and second digital mixers 1208, 1210 serve as inputs of the digital stage 1222. A low frequency oscillator 1212 is coupled to a second input 1210B of the second digital mixer 1210, and through a π/2 phase shifter 1214 to a second input 1208B of a the first mixer 1208. An output 1208C of the first digital mixer 1208 is coupled to an input 1216A of a first low pass filter 1216. An output 1210C of the second digital mixer 1210 is coupled to an input 1218A of a second low pass filter 1218.
  • A [0096] first output 1216B of the first low pass filter 1216 is coupled to a first non-inverting input 1220A of a first summer 1220. A second output 1216C of the first low pass filter 1216 is coupled to a non-inverting input 1222A of a second summer 1222. A first output 1218B of the second low pass filter 1218 is coupled to a second non-inverting input 1220B of the first summer 1220. A second output 1218C of the second low pass filter 1218 is coupled to an inverting input 1222B of the second summer 12222. An output of the first summer 1220 serves as the quadrature phase demodulator output 306B. An output of the second summer 1222 serves as the in-phase demodulator output 306C.
  • The [0097] transmitter 104 and the receiver 106 can be implemented in whole or in part as one or more Application Specific Integrated Circuits (ASIC).
  • The computer readable medium used in connection with the present invention as a memory for storing programs can comprise volatile memory such as RAM, or a medium that contains data in a transient state, such as a communication channel, network circuits, or a wireless communication link, or preferably nonvolatile memory including but not limited to, flash memory, Read Only Memory (ROM), EPROM, EEPROM, disk drive. The computer readable medium used as a work space for signal processing operations, can comprise Random Access Memory (RAM). [0098]
  • The present invention, as would be known to one of ordinary skill in the art could be produced in hardware or software, or in a combination of hardware and software. The system, or method, according to the inventive principles as disclosed in connection with the preferred embodiment, may be produced in a single computer system having separate elements or means for performing the individual functions or steps described or claimed or one or more elements or means combining the performance of any of the functions or steps disclosed or claimed. [0099]
  • The invention is not limited to any particular computer program or logic or language, or instruction but may be practiced with any such suitable program, logic or language, or instructions as would be known to one of ordinary skill in the art. [0100]
  • While the preferred and other embodiments of the invention have been illustrated and described, it will be clear that the invention is not so limited. Numerous modifications, changes, variations, substitutions, and equivalents will occur to those of ordinary skill in the art without departing from the spirit and scope of the present invention as defined by the following claims.[0101]

Claims (40)

What is claimed is:
1. A method for operating a transmitter to transmit data, the method comprising the steps of:
reading one or more bits;
determining a first cyclical shift based on a bit pattern of the one or more bits;
obtaining a direct sequence spread spectrum code characterized by the first cyclical shift; and
transmitting the first direct sequence spread spectrum code.
2. The method according to claim 1, wherein:
the step of reading a plurality of bits comprises the sub-step of:
reading N bits; and
the step of obtaining a 2N element first direct sequence spread spectrum code that includes an M-sequence and one or more appended zeros.
3. The method according to claim 1 wherein the step of obtaining a first direct sequence spread spectrum code characterized by the first cyclical shift state comprises the sub-steps of:
reading the first direct sequence spread spectrum code in a state characterized by a second cyclical shift; and
cyclically shifting the first direct sequence spread spectrum code.
4. The method according to claim 1 wherein the step of obtaining a first direct sequence spread spectrum code characterized by a first cyclical shift comprises the sub-step of:
reading the first direct sequence spread spectrum code from a memory.
5. The method according to claim 1 wherein the step of obtaining a first direct sequence spread spectrum code characterized by a first cyclical shift comprises the sub-step of:
reading one of a plurality of direct sequence spread spectrum codes from a memory based upon the bit patterns of one or more bits.
6. The method according to claim 1 wherein the step of transmitting the first direct sequence spread spectrum code comprises the sub-step of:
transmitting the first direct sequence spread spectrum code in a first channel of a phase shift key signal.
7. The method according to claim 1 further comprising the step of:
transmitting a second direct sequence spread spectrum code.
8. The method according to claim 1 wherein:
the step of transmitting the first direct sequence spread spectrum code comprises the sub-step of:
transmitting the first direct sequence spread spectrum code in a first channel of a quadrature phase shift key signal; and
the step of transmitting the second direct sequence spread spectrum code comprises the sub-step of:
transmitting the second direct sequence spread spectrum code in a second channel of the quadrature phase shift key signal.
9. A method for operating a receiver, the method comprising the steps of:
receiving a signal that includes a first direct sequence spread spectrum code;
determining a correct relative cyclical shift of the first direct sequence spread spectrum code; and
outputting one or more bits having a bit pattern associated with the correct relative cyclical shift.
10. The method according to claim 9 wherein the step of determining a correct relative cyclical shift comprises the sub-step of:
performing a dot product operation between the first direct sequence spread spectrum code and a reference code at a plurality of relative cyclical shifts to obtain a plurality of dot product values.
11. The method according to claim 10 wherein the step of determining a correct relative cyclical shift further comprises the sub-step of:
testing one or more inequality relations involving each of the plurality of dot product values in order to identify the correct cyclical shift that corresponds to a first dot product value from the plurality of dot product values that passes one or more inequality relations.
12. The method according to claim 9 wherein the step of receiving a signal comprises the sub-step of:
receiving a signal that includes the first direct sequence spread spectrum code, and a second direct sequence spread spectrum code.
13. The method according to claim 12 wherein the step of receiving a signal comprises the sub-step of:
receiving a quadrature phase shift key signal including the first direct sequence spread spectrum code in a first channel, and a second direct sequence spread spectrum code in a second channel.
14. The method according to claim 12 wherein the step of determining a correct relative cyclical shift comprises the sub-step of:
determining the correct relative cyclical shift of the first direct sequence spread spectrum code relative to the second direct sequence spread spectrum code.
15. The method according to claim 14 wherein the step of determining a correct relative cyclical shift comprises the sub-step of:
performing a dot product operation between the first direct sequence spread spectrum code and a first reference code at a plurality of relative cyclical shifts to obtain a first plurality of dot product values;
testing one or more inequality relations involving each of the first plurality of dot product values in order to identify a first relative cyclical shift which corresponds to a first dot product value from the plurality of dot product values that passes at least one inequality relation among the one or more inequality relations;
performing a dot product operation between the second direct sequence spread spectrum code and a second reference code at a plurality of relative cyclical shifts to obtain a second plurality of dot product values;
testing one or more inequality relations involving each of the second plurality of dot product values in order to identify a second relative cyclical shift which corresponds to a first dot product value from the plurality of dot product values that passes at least one inequality relation among the one or more inequality relations; and
subtracting the first relative cyclical shift from the second relative cyclical shift to obtain the correct relative cyclical shift.
16. The method according to claim 9 wherein the step of receiving a signal comprises the sub steps of:
demodulating the signal using a quadrature demodulator; and
sampling the signal to obtain a sequence of complex chip values including the first direct sequence spread spectrum code.
17. The method according to claim 16 further comprising the step of:
multiplying each Nth complex chip value in the series of complex chip values by a (N+K)th complex chip value in the series of complex chip values that is separated from the Nth complex chip value by a K places to obtain a decoded sequence.
18. The method according to claim 17 wherein the step of determining a correct relative cyclical shift comprises the sub-step of:
performing a dot product operation between the decoded sequence and a reference code at a plurality of relative cyclical shifts to obtain a plurality of dot product values; and
testing one or more inequality relations involving each of the plurality of dot product values in order to identify the correct cyclical shift that corresponds to a first dot product value from the plurality of dot product values that passes one or more inequality relations.
19. A method for operating a receiver, the method comprising the steps of:
determining a correct relative cyclical shift and direct sequence spread spectrum code of the first direct sequence spread spectrum code; and
outputting one or more bits having a bit pattern associated with the correct relative cyclical shift and direct sequence spread spectrum code.
20. A spread spectrum transmitter comprising:
a bit pattern encoder for receiving one or more bits at an input and outputting a predetermined relative cyclical shift value in response to each possible bit pattern of the one or more bits at an output; and
a cyclical shifter for receiving the relative cyclical shift value at an input and outputting a first spread spectrum code that has been shifted by the predetermined cyclical shift value at a cyclical shifter output.
21. The spread spectrum transmitter according to claim 20 further comprising:
a modulator including a first modulator input for receiving a first baseband signal including first spread spectrum code that has been shifted by the predetermined cyclical shift value.
22. The spread spectrum transmitter according to claim 21 further comprising:
a first pulse shaper for receiving the first spread spectrum code that has been shifted by the predetermined cyclical shift value at a first pulse shaper input that is coupled to the cyclical shifter output and outputting the first baseband signal based on the first spread spectrum code that has been shifted by the predetermined cyclical shift value at a first pulse shaper output that is coupled to the first modulator input.
23. The spread spectrum transmitter according to claim 22 wherein the modulator further comprises:
a second modulator input for receiving a second baseband signal.
24. The spread spectrum transmitter according to claim 23 further comprising:
a second pulse shaper for outputting the second baseband at a second pulse shaper output that is coupled to the second modulator input, in response to receiving a second spread spectrum code at a second pulse shaper input; and
a memory for storing the second spread spectrum code including a memory output coupled to the second pulse shaper input.
25. A spread spectrum transmitter comprising:
a processor programmed to: read binary data;
parse the binary data into a plurality of groups of N bits;
select a cyclical shift based on a bit pattern of each of the plurality of groups of N bits; and
generate a cyclically shifted spread spectrum code by cyclically shift a first spread spectrum code by the cyclical shift.
26. The spread spectrum transmitter according to claim 25 wherein the processor is further programmed to:
generate a digital representation of a first baseband signal that includes the cyclically shifted spread spectrum code.
27. The spread spectrum transmitter according to claim 26 further comprising:
a first digital to analog converter coupled to the processor for receiving the digital representation of the first baseband signal and outputting a first analog baseband signal; and
a modulator including a first input coupled to the first digital to analog for receiving the first analog baseband signal and modulating a carrier wave with the first analog baseband signal.
28. The spread spectrum transmitter according to claim 27 wherein the processor is programmed to:
generate a digital representation of a second baseband signal; and
the transmitter further comprises:
a second digital to analog converter coupled to the processor for receiving the digital representation of the second baseband signal and outputting a second analog baseband signal; and
the modulator includes:
a second input coupled to the second digital to analog for receiving the second analog baseband signal and modulating the carrier wave with the second analog baseband signal.
29. A spread spectrum receiver comprising:
a first correlator for determining a relative cyclical shift of a first received spread spectrum code; and
a relative shift to bit pattern decoder for outputting the identity of an information symbol based on the relative cyclical shift of the received spread spectrum code.
30. The spread spectrum receiver according to claim 29 further comprising:
a second correlator for determining a relative cyclical shift of a second received spread spectrum code; and
a time comparer for determining the relative cyclical shift of the first received spread spectrum code with reference to the relative cyclical shift of the second received spread spectrum code.
31. The spread spectrum receiver according to claim 30 further comprising:
a quadrature phase shift key demodulator for demodulating a signal that includes the first received spread spectrum code and the second received spread spectrum code, and outputting a series of complex chip values at an in-phase output and a quadrature phase output.
32. The spread spectrum receiver according to claim 31 further comprising;
a complex chip multiplier including:
a first input coupled to the in-phase output, and a second input coupled to the quadrature-phase output for receiving the series of complex chip values and multiplying each Nth complex chip value in the series of complex chip values by a (N+K)th complex chip value in the series of complex chip values that is separated from the Nth complex chip value by a K places to obtain a decoded sequence to obtain a differentially decoded series.
33. The spread spectrum receiver according to claim 30 wherein the first correlator comprises:
a shift register including:
a first serial input for receiving the differentially decoded series; and
a first parallel output;
a first dot product operator including:
a first parallel input coupled to the first parallel output;
a second parallel input; and
a first dot product operator output; and
a reference first code memory including:
an first memory output coupled to the second parallel input; and
a first comparator including:
a first input coupled to the output; and
a second input;
a threshold value source coupled to the second input; and
a first comparator output;
34. The spread spectrum receiver according to claim 33 wherein the second correlator comprises:
a shift register latch including a
a second serial input for receiving the differentially decoded series;
a second parallel output; and
a control input coupled to the first comparator output; and
a second dot product operator including:
a third parallel input coupled to the second parallel output;
a fourth parallel input; and
a second dot product operator output; and
a second reference code memory including:
a second memory output; and
a cyclical shifter including:
a fifth parallel input coupled to the second output; and
a third parallel output coupled to the fourth parallel input; and
a second comparator including:
a first input coupled to the second dot product operator output;
a second input coupled to a threshold value source; and
a second comparator output.
35. The spread spectrum receiver according to claim 34 wherein the time comparer includes:
a first input coupled to the first comparator output, and
a second input coupled to the second comparator output.
36. A spread spectrum receiver comprising:
a processor programmed to:
determine a first relative cyclical shift of a first received cyclically shifted spread spectrum code; and
output an information symbol associated with the first relative cyclical shift.
37. The spread spectrum receiver according to claim 36 wherein the processor is programmed to:
correlate the first received cyclically shifted spread spectrum code with a first reference code;
correlate a second received spread spectrum code with the first reference code;
determine the first relative cyclical shift relative to the second received spread spectrum code.
38. A computer readable medium containing programming instructions for operating a transmitter, the computer readable medium including programming instructions for:
reading one or more bits;
determining a first cyclical shift based on a bit pattern of the one or more bits;
obtaining a first direct sequence spread spectrum code characterized by the first cyclical shift; and
transmitting the first direct sequence spread spectrum code.
39. A computer readable medium including programming instructions for operating a receiver, the computer readable medium including programming instructions for:
receiving a signal that includes a first direct sequence spread spectrum code;
determining a correct relative cyclical shift of the first direct sequence spread spectrum code; and
outputting one or more bits having a bit pattern associated with the correct relative cyclical shift.
40. A communication system comprising:
a transmitter including:
a bit pattern encoder for receiving one or more bits at an input and outputting a predetermined relative cyclical shift value in response to each possible bit pattern of the one or more bits at an output;
a cyclical shifter for receiving the relative cyclical shift value at an input and outputting a first spread spectrum code that has been shifted by the predetermined cyclical shift value at a cyclical shifter output; and
a receiver including:
a first correlator for determining a relative cyclical shift of the first spread spectrum code; and
a relative shift to bit pattern decoder for outputting the identity of an information symbol based on the relative cyclical shift of the received spread spectrum code.
US10/198,712 2001-03-09 2002-07-17 System for spread spectrum communication Abandoned US20020186750A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US10/198,712 US20020186750A1 (en) 2001-03-09 2002-07-17 System for spread spectrum communication

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/803,258 US6922432B2 (en) 2001-03-09 2001-03-09 System for spread spectrum communication
US10/198,712 US20020186750A1 (en) 2001-03-09 2002-07-17 System for spread spectrum communication

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US09/803,258 Continuation-In-Part US6922432B2 (en) 2001-03-09 2001-03-09 System for spread spectrum communication

Publications (1)

Publication Number Publication Date
US20020186750A1 true US20020186750A1 (en) 2002-12-12

Family

ID=25186036

Family Applications (2)

Application Number Title Priority Date Filing Date
US09/803,258 Expired - Lifetime US6922432B2 (en) 2001-03-09 2001-03-09 System for spread spectrum communication
US10/198,712 Abandoned US20020186750A1 (en) 2001-03-09 2002-07-17 System for spread spectrum communication

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US09/803,258 Expired - Lifetime US6922432B2 (en) 2001-03-09 2001-03-09 System for spread spectrum communication

Country Status (2)

Country Link
US (2) US6922432B2 (en)
WO (1) WO2002073919A1 (en)

Cited By (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020110103A1 (en) * 2000-12-21 2002-08-15 Lg Electronics Inc. Apparatus for searching a signal in mobile communication system and method thereof
US20040266485A1 (en) * 2003-06-30 2004-12-30 Jeyanandh Paramesh Method and apparatus to combine radio frequency signals
US20090202067A1 (en) * 2008-02-07 2009-08-13 Harris Corporation Cryptographic system configured to perform a mixed radix conversion with a priori defined statistical artifacts
US20090279690A1 (en) * 2008-05-08 2009-11-12 Harris Corporation Cryptographic system including a mixed radix number generator with chosen statistical artifacts
US20100054228A1 (en) * 2008-08-29 2010-03-04 Harris Corporation Multi-tier ad-hoc network communications
US20100091700A1 (en) * 2008-10-09 2010-04-15 Harris Corporation Ad-hoc network acquisition using chaotic sequence spread waveform
US20100226497A1 (en) * 2009-03-03 2010-09-09 Harris Corporation Communications system employing orthogonal chaotic spreading codes
US20100296465A1 (en) * 2007-10-30 2010-11-25 Nokia Siemens Networks Oy Method, apparatuses, system, and related computer program product for resource allocation
US20110002463A1 (en) * 2009-07-01 2011-01-06 Harris Corporation Permission-based multiple access communications systems
US20110002360A1 (en) * 2009-07-01 2011-01-06 Harris Corporation Permission-based secure multiple access communication systems
US20110002460A1 (en) * 2009-07-01 2011-01-06 Harris Corporation High-speed cryptographic system using chaotic sequences
US20110002362A1 (en) * 2009-07-01 2011-01-06 Harris Corporation symbol estimation for chaotic spread spectrum signal
US20110002366A1 (en) * 2009-07-01 2011-01-06 Harris Corporation Rake receiver for spread spectrum chaotic communications systems
US20110019719A1 (en) * 2009-07-22 2011-01-27 Harris Corporation Adaptive link communications using adaptive chaotic spread waveform
US20110019817A1 (en) * 2009-07-22 2011-01-27 Harris Corporation Permission-based tdma chaotic communication systems
US20110222584A1 (en) * 2010-03-11 2011-09-15 Harris Corporation Hidden markov model detection for spread spectrum waveforms
US8139764B2 (en) 2008-05-06 2012-03-20 Harris Corporation Closed galois field cryptographic system
US8145692B2 (en) 2008-05-29 2012-03-27 Harris Corporation Digital generation of an accelerated or decelerated chaotic numerical sequence
US8180055B2 (en) 2008-02-05 2012-05-15 Harris Corporation Cryptographic system incorporating a digitally generated chaotic numerical sequence
US8312551B2 (en) 2007-02-15 2012-11-13 Harris Corporation Low level sequence as an anti-tamper Mechanism
US8351484B2 (en) 2008-12-29 2013-01-08 Harris Corporation Communications system employing chaotic spreading codes with static offsets
US8369376B2 (en) 2009-07-01 2013-02-05 Harris Corporation Bit error rate reduction in chaotic communications
US8379689B2 (en) 2009-07-01 2013-02-19 Harris Corporation Anti-jam communications having selectively variable peak-to-average power ratio including a chaotic constant amplitude zero autocorrelation waveform
US8406276B2 (en) 2008-12-29 2013-03-26 Harris Corporation Communications system employing orthogonal chaotic spreading codes
US8428102B2 (en) 2009-06-08 2013-04-23 Harris Corporation Continuous time chaos dithering
US8428103B2 (en) 2009-06-10 2013-04-23 Harris Corporation Discrete time chaos dithering
US8509284B2 (en) 2009-06-08 2013-08-13 Harris Corporation Symbol duration dithering for secured chaotic communications
US8611530B2 (en) 2007-05-22 2013-12-17 Harris Corporation Encryption via induced unweighted errors
US20150221066A1 (en) * 2014-01-31 2015-08-06 Morpho, Inc. Image processing device and image processing method
US9258160B2 (en) 2010-01-11 2016-02-09 Qualcomm Incorporated Multiplexing demodulation reference signals in wireless communications
US20160219295A1 (en) * 2015-01-28 2016-07-28 Intel Corporation Threshold filtering of compressed domain data using steering vector

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7149514B1 (en) 1997-07-30 2006-12-12 Bellsouth Intellectual Property Corp. Cellular docking station
US20080207197A1 (en) 1997-07-30 2008-08-28 Steven Tischer Apparatus, method, and computer-readable medium for interfacing devices with communications networks
US6411802B1 (en) * 1999-03-15 2002-06-25 Bellsouth Intellectual Property Management Corporation Wireless backup telephone device
US6922432B2 (en) * 2001-03-09 2005-07-26 Motorola, Inc. System for spread spectrum communication
US7224716B2 (en) * 2002-02-11 2007-05-29 Hypertag Communications, Inc. Communication methods and apparatus employing spread spectrum techniques and doppler-tolerant polyphase codes
US7200424B2 (en) 2002-07-15 2007-04-03 Bellsouth Intelectual Property Corporation Systems and methods for restricting the use and movement of telephony devices
US8275371B2 (en) 2002-07-15 2012-09-25 At&T Intellectual Property I, L.P. Apparatus and method for providing communications and connection-oriented services to devices
US8000682B2 (en) 2002-07-15 2011-08-16 At&T Intellectual Property I, L.P. Apparatus and method for restricting access to data
US8554187B2 (en) 2002-07-15 2013-10-08 At&T Intellectual Property I, L.P. Apparatus and method for routing communications between networks and devices
US8416804B2 (en) 2002-07-15 2013-04-09 At&T Intellectual Property I, L.P. Apparatus and method for providing a user interface for facilitating communications between devices
US8543098B2 (en) 2002-07-15 2013-09-24 At&T Intellectual Property I, L.P. Apparatus and method for securely providing communications between devices and networks
US8526466B2 (en) 2002-07-15 2013-09-03 At&T Intellectual Property I, L.P. Apparatus and method for prioritizing communications between devices
US7301985B1 (en) * 2003-06-30 2007-11-27 L-3 Communications Corporation Pseudo-noise code hopping method and apparatus
US7398127B2 (en) * 2005-01-04 2008-07-08 Edwards Vacuum, Inc. Systems and methods for facilitating wireless communication between various components of a distributed system
KR101082171B1 (en) * 2005-05-23 2011-11-09 아주대학교산학협력단 Method and apparatus for orthogonal frequency division multiplex
US7511640B2 (en) * 2007-01-31 2009-03-31 Telefonaktiebolaget Lm Ericsson (Publ) Digital compression of binary data blocks
US20080259891A1 (en) * 2007-04-17 2008-10-23 Telefonaktiebolaget Lm Ericsson (Publ) Multiple packet source acknowledgement
US8649401B2 (en) * 2007-05-01 2014-02-11 Qualcomm Incorporated Generation and detection of synchronization signal in a wireless communication system
US20100054211A1 (en) * 2008-08-27 2010-03-04 Qualcomm Incorporated Frequency domain pn sequence
US9658271B2 (en) * 2008-09-11 2017-05-23 The Boeing Company Wire fault illumination and display
US9742555B2 (en) * 2008-09-25 2017-08-22 Nokia Technologies Oy Encryption/identification using array of resonators at transmitter and receiver
US8423305B2 (en) * 2009-12-23 2013-04-16 The Boeing Company Wire system assessment
WO2017029829A1 (en) * 2015-08-19 2017-02-23 株式会社ワコム Method for detecting sensor controller by using stylus, stylus, and sensor controller

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5748623A (en) * 1993-09-03 1998-05-05 Ntt Mobile Communications Network, Inc. Code division multiple access transmitter and receiver
US5852630A (en) * 1997-07-17 1998-12-22 Globespan Semiconductor, Inc. Method and apparatus for a RADSL transceiver warm start activation procedure with precoding
US6108317A (en) * 1995-11-01 2000-08-22 Stm Wireless, Inc. Cyclic code phase multiple access for inbound satellite communications
US20020126738A1 (en) * 2001-03-09 2002-09-12 Callaway Edgar H. System for spread spectrum communication
US6519275B2 (en) * 2001-06-29 2003-02-11 Motorola, Inc. Communications system employing differential orthogonal modulation
US6738413B1 (en) * 1999-04-21 2004-05-18 Matsushita Electric Industrial Co., Ltd. Code generator, communication unit using the code generator, communication system, and code generation method

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4707839A (en) * 1983-09-26 1987-11-17 Harris Corporation Spread spectrum correlator for recovering CCSK data from a PN spread MSK waveform
US5809060A (en) * 1994-02-17 1998-09-15 Micrilor, Inc. High-data-rate wireless local-area network

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5748623A (en) * 1993-09-03 1998-05-05 Ntt Mobile Communications Network, Inc. Code division multiple access transmitter and receiver
US6108317A (en) * 1995-11-01 2000-08-22 Stm Wireless, Inc. Cyclic code phase multiple access for inbound satellite communications
US5852630A (en) * 1997-07-17 1998-12-22 Globespan Semiconductor, Inc. Method and apparatus for a RADSL transceiver warm start activation procedure with precoding
US6738413B1 (en) * 1999-04-21 2004-05-18 Matsushita Electric Industrial Co., Ltd. Code generator, communication unit using the code generator, communication system, and code generation method
US20020126738A1 (en) * 2001-03-09 2002-09-12 Callaway Edgar H. System for spread spectrum communication
US6519275B2 (en) * 2001-06-29 2003-02-11 Motorola, Inc. Communications system employing differential orthogonal modulation

Cited By (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7257097B2 (en) * 2000-12-21 2007-08-14 Lg Electronics Inc. Apparatus for searching a signal in mobile communication system and method thereof
US20020110103A1 (en) * 2000-12-21 2002-08-15 Lg Electronics Inc. Apparatus for searching a signal in mobile communication system and method thereof
US20040266485A1 (en) * 2003-06-30 2004-12-30 Jeyanandh Paramesh Method and apparatus to combine radio frequency signals
US7197336B2 (en) * 2003-06-30 2007-03-27 Intel Corporation Method and apparatus to combine radio frequency signals
US8312551B2 (en) 2007-02-15 2012-11-13 Harris Corporation Low level sequence as an anti-tamper Mechanism
US8611530B2 (en) 2007-05-22 2013-12-17 Harris Corporation Encryption via induced unweighted errors
USRE46406E1 (en) 2007-10-30 2017-05-16 Cellular Communications Equipment Llc Methods, apparatuses, system, and related computer program product for resource allocation
US8379590B2 (en) 2007-10-30 2013-02-19 Nokia Siemens Networks Oy Method, apparatuses, system, and related computer program product for resource allocation
US20100296465A1 (en) * 2007-10-30 2010-11-25 Nokia Siemens Networks Oy Method, apparatuses, system, and related computer program product for resource allocation
US8180055B2 (en) 2008-02-05 2012-05-15 Harris Corporation Cryptographic system incorporating a digitally generated chaotic numerical sequence
US20090202067A1 (en) * 2008-02-07 2009-08-13 Harris Corporation Cryptographic system configured to perform a mixed radix conversion with a priori defined statistical artifacts
US8363830B2 (en) 2008-02-07 2013-01-29 Harris Corporation Cryptographic system configured to perform a mixed radix conversion with a priori defined statistical artifacts
US8139764B2 (en) 2008-05-06 2012-03-20 Harris Corporation Closed galois field cryptographic system
US8320557B2 (en) 2008-05-08 2012-11-27 Harris Corporation Cryptographic system including a mixed radix number generator with chosen statistical artifacts
US20090279690A1 (en) * 2008-05-08 2009-11-12 Harris Corporation Cryptographic system including a mixed radix number generator with chosen statistical artifacts
US8145692B2 (en) 2008-05-29 2012-03-27 Harris Corporation Digital generation of an accelerated or decelerated chaotic numerical sequence
US20100054228A1 (en) * 2008-08-29 2010-03-04 Harris Corporation Multi-tier ad-hoc network communications
US8325702B2 (en) 2008-08-29 2012-12-04 Harris Corporation Multi-tier ad-hoc network in which at least two types of non-interfering waveforms are communicated during a timeslot
US8165065B2 (en) 2008-10-09 2012-04-24 Harris Corporation Ad-hoc network acquisition using chaotic sequence spread waveform
US20100091700A1 (en) * 2008-10-09 2010-04-15 Harris Corporation Ad-hoc network acquisition using chaotic sequence spread waveform
US8406276B2 (en) 2008-12-29 2013-03-26 Harris Corporation Communications system employing orthogonal chaotic spreading codes
US8351484B2 (en) 2008-12-29 2013-01-08 Harris Corporation Communications system employing chaotic spreading codes with static offsets
US8457077B2 (en) * 2009-03-03 2013-06-04 Harris Corporation Communications system employing orthogonal chaotic spreading codes
US20100226497A1 (en) * 2009-03-03 2010-09-09 Harris Corporation Communications system employing orthogonal chaotic spreading codes
US8428102B2 (en) 2009-06-08 2013-04-23 Harris Corporation Continuous time chaos dithering
US8509284B2 (en) 2009-06-08 2013-08-13 Harris Corporation Symbol duration dithering for secured chaotic communications
US8428103B2 (en) 2009-06-10 2013-04-23 Harris Corporation Discrete time chaos dithering
US20110002362A1 (en) * 2009-07-01 2011-01-06 Harris Corporation symbol estimation for chaotic spread spectrum signal
US20110002366A1 (en) * 2009-07-01 2011-01-06 Harris Corporation Rake receiver for spread spectrum chaotic communications systems
US20110002463A1 (en) * 2009-07-01 2011-01-06 Harris Corporation Permission-based multiple access communications systems
US20110002360A1 (en) * 2009-07-01 2011-01-06 Harris Corporation Permission-based secure multiple access communication systems
US8369376B2 (en) 2009-07-01 2013-02-05 Harris Corporation Bit error rate reduction in chaotic communications
US8379689B2 (en) 2009-07-01 2013-02-19 Harris Corporation Anti-jam communications having selectively variable peak-to-average power ratio including a chaotic constant amplitude zero autocorrelation waveform
US8340295B2 (en) 2009-07-01 2012-12-25 Harris Corporation High-speed cryptographic system using chaotic sequences
US8385385B2 (en) 2009-07-01 2013-02-26 Harris Corporation Permission-based secure multiple access communication systems
US20110002460A1 (en) * 2009-07-01 2011-01-06 Harris Corporation High-speed cryptographic system using chaotic sequences
US8406352B2 (en) 2009-07-01 2013-03-26 Harris Corporation Symbol estimation for chaotic spread spectrum signal
US8363700B2 (en) 2009-07-01 2013-01-29 Harris Corporation Rake receiver for spread spectrum chaotic communications systems
US8428104B2 (en) 2009-07-01 2013-04-23 Harris Corporation Permission-based multiple access communications systems
US8848909B2 (en) 2009-07-22 2014-09-30 Harris Corporation Permission-based TDMA chaotic communication systems
US20110019817A1 (en) * 2009-07-22 2011-01-27 Harris Corporation Permission-based tdma chaotic communication systems
US20110019719A1 (en) * 2009-07-22 2011-01-27 Harris Corporation Adaptive link communications using adaptive chaotic spread waveform
US8369377B2 (en) 2009-07-22 2013-02-05 Harris Corporation Adaptive link communications using adaptive chaotic spread waveform
US9258160B2 (en) 2010-01-11 2016-02-09 Qualcomm Incorporated Multiplexing demodulation reference signals in wireless communications
US9698954B2 (en) 2010-01-11 2017-07-04 Qualcomm Incorporated Multiplexing demodulation reference signals in wireless communications
US20110222584A1 (en) * 2010-03-11 2011-09-15 Harris Corporation Hidden markov model detection for spread spectrum waveforms
US8345725B2 (en) 2010-03-11 2013-01-01 Harris Corporation Hidden Markov Model detection for spread spectrum waveforms
US20150221066A1 (en) * 2014-01-31 2015-08-06 Morpho, Inc. Image processing device and image processing method
US9659350B2 (en) * 2014-01-31 2017-05-23 Morpho, Inc. Image processing device and image processing method for image correction, and non-transitory computer readable recording medium thereof
US20160219295A1 (en) * 2015-01-28 2016-07-28 Intel Corporation Threshold filtering of compressed domain data using steering vector
US9503747B2 (en) * 2015-01-28 2016-11-22 Intel Corporation Threshold filtering of compressed domain data using steering vector
US9965248B2 (en) 2015-01-28 2018-05-08 Intel Corporation Threshold filtering of compressed domain data using steering vector

Also Published As

Publication number Publication date
US6922432B2 (en) 2005-07-26
WO2002073919A1 (en) 2002-09-19
US20020126738A1 (en) 2002-09-12

Similar Documents

Publication Publication Date Title
US6922432B2 (en) System for spread spectrum communication
US6519275B2 (en) Communications system employing differential orthogonal modulation
US5253268A (en) Method and apparatus for the correlation of sample bits of spread spectrum radio signals
KR100201798B1 (en) Spread spectrum correlator
US5463657A (en) Detection of a multi-sequence spread spectrum signal
US8531981B2 (en) Arrangement for determining a characteristic form of an input signal
US5166952A (en) Method and apparatus for the reception and demodulation of spread spectrum radio signals
US5583884A (en) Spread spectrum modulation and demodulation systems which accelerate data rate without increasing multilevel indexing of primary modulation
US6414983B1 (en) Digital communication apparatus
EP2365653B1 (en) Hidden markov model detection for spread spectrum waveforms
US20040001531A1 (en) Frequency hopping spread spectrum decoder
US6212223B1 (en) Demodulation and correlation for spread spectrum communications
JPH06505131A (en) Asymmetric spread spectrum correlator
CN109039975B (en) Code shift keying modulation method for repeatedly shifting phase for multiple times and demodulation method thereof
KR100421531B1 (en) Spectrum spread communication method
US6882692B2 (en) Fast transform system for an extended data rate WLAN system
US20120087307A1 (en) Differential Detection unit for the Zigbee 802.15.4 Standard
Liu et al. Differential permutation index DCSK modulation for chaotic communication system
JP4230773B2 (en) Code division multiple access communication system
CA2285339A1 (en) A code synchronization unit and method
US10855326B1 (en) Reduced complexity in generating chaotic sequences for communication systems using sub-sampling techniques
EP2781031B1 (en) Direct sequence spread spectrum signal receiving device and method
Cheong et al. Permutation-based M-ary chaotic-sequence spread-spectrum communication systems
US20030112849A1 (en) Efficient quadrature code position modulation
US8363690B2 (en) Codeword synthesizing system and a correlation system, methods of operation thereof and a spread spectrum communications transceiver employing the same

Legal Events

Date Code Title Description
AS Assignment

Owner name: MOTOROLA, INC., ILLINOIS

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:CALLAWAY, EDGAR H., JR.;MARTIN, FREDERICK L.;SHI, QICAI;REEL/FRAME:013122/0701

Effective date: 20020509

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION

AS Assignment

Owner name: GOOGLE TECHNOLOGY HOLDINGS LLC, CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MOTOROLA MOBILITY LLC;REEL/FRAME:035464/0012

Effective date: 20141028