WO2004040784A2 - Complementary code decoding by reduced sized circuits - Google Patents

Complementary code decoding by reduced sized circuits Download PDF

Info

Publication number
WO2004040784A2
WO2004040784A2 PCT/US2003/035434 US0335434W WO2004040784A2 WO 2004040784 A2 WO2004040784 A2 WO 2004040784A2 US 0335434 W US0335434 W US 0335434W WO 2004040784 A2 WO2004040784 A2 WO 2004040784A2
Authority
WO
WIPO (PCT)
Prior art keywords
correlation
cck
correlator circuit
data
circuit
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.)
Ceased
Application number
PCT/US2003/035434
Other languages
French (fr)
Other versions
WO2004040784A3 (en
Inventor
Uwe Eckhardt
Eric Sachse
Ingo Kuhn
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.)
Advanced Micro Devices Inc
Original Assignee
Advanced Micro Devices 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
Priority claimed from DE10250891A external-priority patent/DE10250891B4/en
Application filed by Advanced Micro Devices Inc filed Critical Advanced Micro Devices Inc
Priority to AU2003291349A priority Critical patent/AU2003291349A1/en
Publication of WO2004040784A2 publication Critical patent/WO2004040784A2/en
Publication of WO2004040784A3 publication Critical patent/WO2004040784A3/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

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
    • H04B1/7073Synchronisation aspects
    • H04B1/7075Synchronisation aspects with code phase acquisition
    • H04B1/708Parallel implementation
    • 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
    • H04B1/709Correlator structure
    • H04B1/7093Matched filter type
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L23/00Apparatus or local circuits for systems other than those covered by groups H04L15/00 - H04L21/00
    • H04L23/02Apparatus or local circuits for systems other than those covered by groups H04L15/00 - H04L21/00 adapted for orthogonal signalling
    • 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
    • H04B1/709Correlator structure
    • H04B1/7093Matched filter type
    • H04B2001/70935Matched filter type using a bank of matched fileters, e.g. Fast Hadamard Transform
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J13/00Code division multiplex systems
    • H04J13/0007Code type
    • H04J13/004Orthogonal
    • H04J13/0048Walsh

Definitions

  • the invention generally relates to complementary code decoders, and in particular to data communications receivers such as WLAN (Wireless Local Area Network) receivers comprising such decoders.
  • WLAN Wireless Local Area Network
  • a wireless local area network is a flexible data communications system implemented as an extension to or as an alternative for, a wired LAN.
  • wireless LANs Using radio frequency or infrared technology, wireless LANs transmit and receive data over the air, minimizing the need for wired connections.
  • wireless LANs combine data connectivity with user mobility.
  • WLAN systems use spread spectrum technology, a wide-band radio frequency technique developed for use in reliable and secure communication systems.
  • the spread spectrum technology is designed to trade-off bandwidth efficiency for reliability, integrity and security.
  • Two types of spread spectrum radio systems are frequently used: frequency hopping and direct sequence systems.
  • the standard defining and governing wireless local area networks that operate in the 2.4 GHz spectrum is the IEEE 802.11 standard.
  • the standard was extended to the 802.1 lb standard that allows data rates of 5.5 and 11 Mbps in the 2.4 GHz spectrum. This extension is backwards compatible as far as it relates to direct sequence spread spectrum technology, but it adopts a new modulation technique called CCK (Complementary Code Keying) which allows for realizing the speed increase.
  • CCK Computer Code Keying
  • Complementary codes also referred to as binary complementary sequences or series, may generally be defined as codes that comprise a pair of sequences of equal finite length, having the property that the number of pairs of like elements with any given separation in one series is equal to the number of pairs of unlike elements with the same separation in the other series. This leads to some symmetry resulting in a periodic autocorrelative vector sum being zero everywhere except at the zero shift.
  • a binary complementary code is a subset of the more general class of codes known as polyphase codes.
  • a polyphase complementary code is a sequence having complementary properties, and being made of elements that have phase parameters. More specifically, such elements are e. g. members of a set of complex numbers ⁇ 1, -j, -1,
  • the CCK uses the complex set of Walsh/Hadamard functions as complementary codes.
  • the Walsh codes can be formed by a successive folding operation, and they may be considered to be a block code which translates (at full rate) a sequence of bits d, into a codeword C of complex chips c,.
  • the number of bits d, and the number of chips c are eight.
  • the number of bits d, is four and the number of chips c ; is eight.
  • the following equation represents the eight complex chip values for the CCK code set, with the phase variable being QPSK (Quadrature Phase Shift Keying) phases;
  • the variables ⁇ ⁇ , ⁇ z, ⁇ _ and ⁇ are complex QPSK phasors mapped from the data bits as follows; The first phasor ⁇ undergoes a different bit mapping for each even or odd CCK symbol:
  • the other phasors ⁇ , (p and ⁇ 4 define the basecode, and the QPSK encoding table in this case is for CCK- 11 :
  • ⁇ 2, ⁇ _ and ⁇ 4 define 64 different CCK codes of 8 bits (with CCK-11) or 4 different CCK codes of 4 bits (with CCK-5.5), and the differential encoded phasor q gives an extra phase rotation to the entire codeword since it is part of all chips in one codeword.
  • the data is grouped into 2 bits and 6 bits.
  • the 6 information bits are used to select one of 64 complex vectors of 8 chip length for the symbol and the other 2 bits DQPSK (Differential QPSK) modulate the entire symbol.
  • DQPSK Different QPSK
  • the data is grouped into 4 bits nibbles where 2 of those bits select the spreading function out of the set of four while the remaining 2 bits QPSK modulate the symbol.
  • the spreading sequence then DQPSK modulates the carrier by driving the I and Q modulators.
  • a block diagram of a conventional CCK modulator is illustrated that may be used in a transmitter.
  • a multiplexer 100 receives scrambled data and multiplexes the input data either to the code selector 110 or to the modulator 120.
  • the multiplexer 100 gets clocked at the symbol rate, i. e. at 1.375 MSps.
  • the code selector 110 selects one of the complex codes that is to be fed to the modulator 120. This code represents the information bits that are spread over the basecode phasors cpx, q, and ⁇ 4 .
  • the bits that the modulator 120 receives from the multiplexer 100 are the two least significant (i. e. first incoming) bits d 0 , d ⁇ that are used to QPSK (Quadrature Phase Shift Keying) modulate the codeword.
  • the outputs of the modulator 120 are respective I and Q signals.
  • a conventional CCK demodulator as shown in FIG. 2 may be used that decodes the received CCK codes using a fast Walsh transformation technique.
  • This functionality is generally provided in the WLAN baseband processor, and it provides a channel matched filter 200 that supplies the filtered signals to a Walsh transformation block 210. It is to mentioned that a channel matched filter 200 as shown in FIG. 2 needs not necessarily be provided in a CCK demodulator.
  • a bank 220 of 64 (or 4) correlators followed by a maximum detector 230 determines which code was transmitted giving the most significant 6 bits (or 2 bits) of the data word.
  • the other 2 bits of the data word are determined from the QPSK phase of the symbol and fed to the sign detector 240.
  • the sign detector 240 may comprise a differential demodulator, but it is again to be mentioned that a sign detector 240 as shown in FIG. 2 needs not necessarily be provided in a CCK demodulator.
  • the Walsh transformer 210 has to search for the maximum correlation of R over all codewords. For doing so, a high number of correlations R ⁇ C* need to be computed and compared, to detect the ML (maximum likelihood) codeword:
  • each of the correlations that are to be computed may be implemented using the CCK correlator circuit shown in FIG. 3. That is, conventional CCK decoders require a correlator bank 220 that includes up to 64 CCK correlator circuits such as that shown in FIG. 3. This consumes a large amount of chip area and leads to substantial manufacturing costs.
  • An improved complementary code decoding technique is provided that may allow for saving chip space and costs without deteriorating the overall system performance.
  • a WLAN receiver has a CCK decoder.
  • the CCK decoder comprises a serial- to-parallel converter that is connected to receive CCK encoded input data and output a parallelized representation thereof.
  • the CCK decoder further comprises a correlator circuit that is connected to receive the parallelized input data and generate correlation values therefrom.
  • the correlator circuit is capable of changing its correlation characteristics depending on at least one control signal.
  • the CCK decoder further comprises a state transition controller that is adapted to sequentially provide different control signals to the correlator circuit thereby driving the correlator circuit to sequentially generate multiple correlation values from the parallelized input data based on different correlation characteristics.
  • the CCK decoder comprises a best correlation picker circuit that is connected to receive the multiple correlation values and that is adapted to identify the correlation value that represents the optimum correlation.
  • said best correlation picker circuit is connected to receive multiple correlation values in each cycle of said multicycle sequence.
  • said best correlation picker circuit is adapted to identify in each cycle the best correlation value for that cycle.
  • said best correlation picker circuit comprises circuitry connected to receive said best correlation values for each cycle, and adapted to identify said optimum correlation value therefrom.
  • said circuitry comprises a register storing the best correlation value pertaining to respective previous cycles, and a comparator for comparing said previous best correlation value with the current best correlation value.
  • said comparator is connected to said register to write the better one of said previous best correlation value and said current best correlation value into said register.
  • said correlator circuit comprises a plurality of multipliers and adders for performing signal processing operations based on the CCK basecode phasors ( ⁇ 2 , ⁇ _, ⁇ ).
  • said correlator circuit is a three-stage circuit where each of the stages is adapted to perform signal processing operations based on an individual one of the CCK basecode phasors (cpi, ⁇ s, ⁇ 4 ).
  • each of the stages comprises circuitry for performing at least two signal processing operations in parallel.
  • each of the stages comprises a plurality of multipliers and adders for performing said signal processing operations.
  • At least two of said stages comprises a plurality of multiplexers with each of the multiplexers being connected to one of said multipliers, said multiplexers being controlled by said at least one control signal provided by said state transition controller.
  • multiplexers of one of said stages are connected to each receive the same control signal.
  • multiplexers of one of said stages are connected to each receive different control signals.
  • control signals used for controlling the multiplexers in a first one of said at least two stages are different from the control signals used for controlling the multiplexers in a second one of said at least two stages.
  • said multiplexers are controlled by said control signals to multiplex between the complex numbers 1, -j, -1, and/.
  • the correlation value representing the optimum correlation is the maximum correlation value.
  • the WLAN receiver further comprises a multiplexer receiving said correlation values from said correlator circuit for selecting one of said multiple correlation values to determine the one CCK phasor ( ⁇ > ⁇ ) that is not a basecode phasor ( ⁇ i, ⁇ _, ⁇ ⁇ ).
  • a complementary code decoder that comprises a serial-to-parallel converter that is connected to receive serially encoded input data and output a parallelized representation thereof.
  • the complementary code decoder comprises a correlation circuit that is connected to receive the parallelized input data and generate correlation values therefrom.
  • the correlator circuit is capable of changing its correlation characteristics depending on at least one control signal.
  • the complementary code decoder further comprises a state transition controller that is adapted to sequentially provide different control signals to the correlator circuit thereby driving the correlator circuit to sequentially generate multiple correlation values from the parallelized input data based on different correlation characteristics.
  • the complementary code decoder further comprises a best correlation picker circuit that is connected to receive the multiple correlation values and that is adapted to identify the correlation value that represents the optimum correlation.
  • an integrated circuit chip that has CCK decoder circuitry.
  • the CCK decoder circuitry comprises a serial-to-parallel converter circuit that is connected to receive CCK encoded input data and output a parallelized representation thereof.
  • the CCK decoder circuitry further comprises a correlator circuit that is connected to receive the parallelized input data and generate correlation values therefrom.
  • the correlator circuit is capable of changing its correlation characteristics depending on at least one control signal.
  • the CCK decoder circuitry further comprises a state transition control circuit that is adapted to sequentially provide different control signals to the correlator circuit thereby driving the correlator circuit to sequentially generate multiple correlation values from the parallelized input data based on different correlation characteristics.
  • the CCK decoder circuitry comprises a best correlation picker circuit that is connected to receive the multiple correlation values and that is adapted to identify the correlation value that represents the optimum correlation.
  • a method of decoding a CCK encoded input signal comprises receiving the CCK encoded input signal, converting the received data to parallel data, submitting the converted input data to a correlator circuit, sequentially submitting different control signals to the correlator circuit to drive the correlator circuit to sequentially generate multiple correlation values from the parallel data, where the correlator circuit is capable of changing its correlation characteristics depending on the control signals, and identifying the correlation value that represents the optimum correlation.
  • said parallel data comprises a plurality of data elements and said correlator circuit comprises a plurality of input terminals to receive said data elements, wherein the number of data elements is equal to the number of input terminals.
  • said data elements have complex values.
  • said number of data elements and input terminals is eight.
  • the number of cycles in said multicycle sequence is chosen to be 64 divided by said number of data elements and input terminals.
  • identifying the correlation value comprises: receiving said best correlation values for each cycle;
  • said correlator circuit is a three-stage circuit, wherein sequentially generating said multiple correlation values comprises:
  • At least two of said stages comprises a plurality of multiplexers with each of the multiplexers being connected to one of said multipliers, wherein operating said at least two stages comprises:
  • controlling said multiplexers in one of said stages comprises;
  • control signals used for controlling the multiplexers in a first one of said at least two stages are different from the control signals used for controlling the multiplexers in a second one of said at least two stages.
  • said multiplexers are controlled by said control signals to multiplex between the complex numbers 1, -j, -1, and/.
  • the correlation value representing the optimum correlation is the maximum correlation value.
  • FIG. 1 is a block diagram illustrating the components of a conventional CCK modulator
  • FIG. 2 is a block diagram illustrating a conventional CCK demodulator
  • FIG. 3 illustrates a CCK correlator circuit that may be used in the correlator bank that is a component of the demodulator shown in FIG. 2;
  • FIG. 4 illustrates 802.1 lb outer receiver components according to an embodiment
  • FIG. 5 illustrates a Walsh transformer that may be used in the arrangement of FIG. 4, according to an embodiment
  • FIG. 6 illustrates a multiplication unit according to an embodiment that may be used in the circuits of FIG. 5;
  • FIG. 7 is a flowchart illustrating the process for complementary code decoding according to an embodiment. DETAILED DESCRIPTION OF THE INVENTION
  • the complex input signal is fed to a Walsh transformer 400 and a Barker matched filter 410.
  • a state transition controller 480 provided that controls the operation of both the Walsh transformer 400 and the Barker matched filter 410. More specifically, the state transition controller 480 provides activity signals to the units to enable at any one time the operation of only one of the Walsh transformer 400 and the Barker matched filter 410.
  • the state transition controller 480 further controls multiplexers 420, 430 that select the complex output signals of the Walsh transformer 400 or the Barker matched filter 410, respectively.
  • the multiplexed signal is then registered in registers 440, 450 before being processed in the demapper 460. Finally, the signal gets descrambled in unit 470, and for this purpose, the descrambler 470 receives the basecode from the Walsh transformer 400.
  • the registers 440, 450 may be combined to form a uniform unit which may be considered, together with some suitable additional circuitry, as a differential demodulator.
  • state transition controller 480 may further control the demapper 460 to provide the ability to make adjustments for the various modulation techniques such as BPSK or QPSK, in case it operates on signals from the Barker matched filter 410.
  • FIG. 5 illustrates the components of the Walsh transformer 400 of the present embodiment in more detail
  • the input signal r(k) is fed to the circuit on the lower left side of the figure.
  • the eight chips of the CCK codeword that is received are first parallelized in a serial-to-parallel converter 500.
  • the converter 500 comprises a sequence of seven chip registers that are clocked with the chip rate (e.g. 11 Mcps in the CCK-11 case). Thus, a new codeword will be written into the registers after eight clocks.
  • the serial-to-parallel converter 500 By controlling an output shutter of the serial-to-parallel converter 500 in an eight clock time distance, a parallelized representation of the CCK encoded input data r(k) is generated and submitted to the following circuitry.
  • the shutter functionality may be realized by setting output enable signals to the registers 500.
  • This enable signal, or any other control signal used to perform this functionality, is provided by the state transition controller 480.
  • the state transition controller 480 is a finite state machine (FSM) that steps from one finite state to the next finite state in a predefined manner. By doing so, the state transition controller reahzes a sequential automaton that controls the components of the Walsh transformer 400 and that may further control other components of the baseband processor.
  • control signals provided by the state transition controller are denoted C *.
  • an inverter bank 505 is provided for reverting the sign of some of the data elements as required to comply with the above described code definitions.
  • each of the stages of the arrangement according to the present embodiment is adapted to perform signal processing operations based on an individual one of the CCK basecode phasors q , ⁇ _ and ⁇ 4 .
  • the three-stage structure of the embodiment differs from that of FIG. 3 in that each of the stages shown in FIG. 5 receives control signals from the state transition controller 480 to change its correlation characteristics.
  • the three-stage correlation circuit of FIG. 5 is sequentially operated in eight cycles based on the same parallel input data, and the correlation characteristics are changed from cycle to cycle.
  • the present embodiment requires to have only one three-stage structure to obtain the same correlation information. This is achieved by doing both: simultaneously operating on eight parallel data elements (i.e. chips), and using the same hardware structure in an eight cycle sequence where each cycle has different correlation characteristics.
  • the number of cycles may be chosen to be sixty-four divided by the number of chips per codeword. It is however to be mentioned that other embodiments exists where the number of cycles may be different from this value.
  • the correlator circuit is made up of a plurality of multiplier units 515, 530, 540, 555 and adders 520, 535, 545 and 560.
  • the multiplier units multiply the respective input signal with the respective phasor factor e ⁇ * ⁇ 2 , e J ⁇ 3 , e -* ⁇ 4 of the stage.
  • the values of these factors are switched according to the control signal C PSM that is provided by the state transition controller 480.
  • FIG. 6 A circuit that may be used as multiplier unit in the correlator circuit of FIG. 5 is illustrated in FIG. 6.
  • the circuit comprises a multiplexer 610 that receives the complex numbers +1, -j, -1, and +j as input values.
  • the multiplexer 610 selects one of the complex numbers based on the C FS __ based control signal.
  • the selected complex number is then multiplied with the input signal by multiplier 600.
  • the state transition controller 480 is allowed for changing the multiplication properties of the circuit by providing respective control signals.
  • circuit shown in FIG. 6 can in principle be used for each of the multiplier units 515, 530, 540, 555 in FIG. 5, it is to be noted that in the present embodiment, the circuit of FIG. 6 is used in stages 510 and 525 only.
  • C B denotes the basecode part of the codeword
  • arg C B gives the basecode index that is equivalent to the reversed bit pattern for ⁇ d 2 ,..,d 7 ⁇ .
  • the correlator circuit generates in each cycle eight correlator output metrics, i.e., correlation values that are compared to each other by the comparator tree 570 that comprises seven comparators.
  • the biggest correlation value is registered in register 575 and compared with the maximum metric of the previous cycles.
  • a register 585 is provided that outputs its contents to the comparator 580 where the registered value is compared with the correlation value of the current cycle that was stored in register 575. The greater value, i.e. that showing the better correlation, is then written into the register 585. That is, at the end of the eight-cycle process, the register 585 stores the global maximum metric for the received CCK symbol, i.e. the basecode index.
  • a multiplexer 590 that receives signals from the third stage 550 and selects one of these signals based on the output of the comparator tree 570.
  • the multiplexed signal is stored in a temporary register 595 which after eight cycles holds the complex value that pertains to that phasor ⁇ that is not a basecode phasor.
  • This complex value may then be passed to a differential demodulator such as the sign detector 240 shown in FIG. 2, and/or to a phase error correction unit of the receiver where the value may provide a phase change estimate.
  • each of the four structures 515, 520 of the first stage 510 of the correlator circuit that comprise one multiplier 515 and one adder 520 may be implemented in software coded form by realizing the following pseudo code.
  • the variable mode corresponds to the value of the control signal issued by the state transition controller 480.
  • multiplier-adder structures 530, 535; 540, 545 of the second stage 525 may be reahzed by:
  • phi42_real ⁇ phi3_1_real[7],phi3_1_real ⁇ - ⁇ phi3_0_real[7],phi3_0_reai ⁇ ;
  • phi42_imag ⁇ phi3_1_imag[7],p i3_1jmag ⁇ - ⁇ phi3_0_imag[7],phi3_0_imag ⁇ ;
  • a fully pipelined CCK decoder that can solve the ML CCK decoding problem to obtain the basecode index within eight steps using a minimum set of operator blocks.
  • the required chip area can be reduced to one fourth. This advantageously reduces the manufacturing costs and further improves the efficiency of the overall operation.
  • the embodiments make use of eight parallel variable correlator paths that are used eight times per symbol.
  • the circuit structure is advantageously reused multiple times so that the gate count of the CCK decoder block can be strongly decreased.
  • the embodiments described above primarily relate to the CCK- 11 mode defined in the 802.11b specification, it is to be mentioned that other embodiments exist where the 5.5 Mbps mode is used. In this mode, the information of two bits is spread over three basecode phasors. This causes only the basecode indices ⁇ 16, 48, 18, 50 ⁇ to be valid.
  • the same structure as that shown in FIG. 5 can be used and only some changes to the signal assignment performed by the state transition controller 480 need to be done to pass only those values to the comparator tree that match the mentioned basecode indices.
  • the improved complementary code decoding technique of the present mvention provides enhanced efficiency in terms of required chip area in mass production and thereby may significantly contribute to a cost reduction of industrially manufactured devices having implemented the inventive technique.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Analogue/Digital Conversion (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

A complementary code decoder technique is provided where the encoded input data is first parallelized. From the parallelized data, correlation values are generated by a correlator circuit that is capable of changing its correlation characteristics depending on at least one control signal. Different control signals are sequentially provided to the correlator circuit thereby driving the correlator circuit to sequentially generate multiple correlation values from the parallelized data, based on different correlation characteristics. From the multiple correlation values, the correlation value that represents the optimum correlation is identified. This technique significantly reduces the gate count of the decoder structure, thus saving chip area and manufacturing costs.

Description

COMPLEMENTARY CODE DECODING BY REDUCED SIZED CIRCUITS
BACKGROUND OF THE INVENTION
1. Field of the Invention
The invention generally relates to complementary code decoders, and in particular to data communications receivers such as WLAN (Wireless Local Area Network) receivers comprising such decoders.
2. Description of the Related Art
A wireless local area network is a flexible data communications system implemented as an extension to or as an alternative for, a wired LAN. Using radio frequency or infrared technology, wireless LANs transmit and receive data over the air, minimizing the need for wired connections. Thus, wireless LANs combine data connectivity with user mobility.
Most WLAN systems use spread spectrum technology, a wide-band radio frequency technique developed for use in reliable and secure communication systems. The spread spectrum technology is designed to trade-off bandwidth efficiency for reliability, integrity and security. Two types of spread spectrum radio systems are frequently used: frequency hopping and direct sequence systems.
The standard defining and governing wireless local area networks that operate in the 2.4 GHz spectrum, is the IEEE 802.11 standard. To allow higher data rate transmissions, the standard was extended to the 802.1 lb standard that allows data rates of 5.5 and 11 Mbps in the 2.4 GHz spectrum. This extension is backwards compatible as far as it relates to direct sequence spread spectrum technology, but it adopts a new modulation technique called CCK (Complementary Code Keying) which allows for realizing the speed increase.
Complementary codes, also referred to as binary complementary sequences or series, may generally be defined as codes that comprise a pair of sequences of equal finite length, having the property that the number of pairs of like elements with any given separation in one series is equal to the number of pairs of unlike elements with the same separation in the other series. This leads to some symmetry resulting in a periodic autocorrelative vector sum being zero everywhere except at the zero shift.
A binary complementary code is a subset of the more general class of codes known as polyphase codes. A polyphase complementary code is a sequence having complementary properties, and being made of elements that have phase parameters. More specifically, such elements are e. g. members of a set of complex numbers { 1, -j, -1,
Figure imgf000003_0001
CCK uses the complex set of Walsh/Hadamard functions as complementary codes. The Walsh codes can be formed by a successive folding operation, and they may be considered to be a block code which translates (at full rate) a sequence of bits d, into a codeword C of complex chips c,. In the CCK-11 case, i. e. where a data rate of 11 Mbps is used, the number of bits d, and the number of chips c, are eight. At 5.5 Mbps, the number of bits d, is four and the number of chips c; is eight. The following equation represents the eight complex chip values for the CCK code set, with the phase variable being QPSK (Quadrature Phase Shift Keying) phases;
φ4))
Figure imgf000004_0001
Figure imgf000004_0002
The variables φ\, φz, φ_ and ψ\ are complex QPSK phasors mapped from the data bits as follows; The first phasor φι undergoes a different bit mapping for each even or odd CCK symbol:
Figure imgf000004_0003
The other phasors ψ , (p and ω4 define the basecode, and the QPSK encoding table in this case is for CCK- 11 :
Figure imgf000004_0004
and for CCK-5.5 (CCK at 5.5 Mbps):
φ2 d2 π + - φ3 0 φ4 = d3
Thus, ψ2, φ_ and φ4 define 64 different CCK codes of 8 bits (with CCK-11) or 4 different CCK codes of 4 bits (with CCK-5.5), and the differential encoded phasor q gives an extra phase rotation to the entire codeword since it is part of all chips in one codeword.
That is, to make 11 Mbps CCK modulation, the data is grouped into 2 bits and 6 bits. The 6 information bits are used to select one of 64 complex vectors of 8 chip length for the symbol and the other 2 bits DQPSK (Differential QPSK) modulate the entire symbol. In the 5.5 Mbps mode, the data is grouped into 4 bits nibbles where 2 of those bits select the spreading function out of the set of four while the remaining 2 bits QPSK modulate the symbol. The spreading sequence then DQPSK modulates the carrier by driving the I and Q modulators.
Referring now to FIG. 1, a block diagram of a conventional CCK modulator is illustrated that may be used in a transmitter. In the modulator, a multiplexer 100 receives scrambled data and multiplexes the input data either to the code selector 110 or to the modulator 120. The multiplexer 100 gets clocked at the symbol rate, i. e. at 1.375 MSps. The code selector 110 selects one of the complex codes that is to be fed to the modulator 120. This code represents the information bits that are spread over the basecode phasors cpx, q, and φ4. The bits that the modulator 120 receives from the multiplexer 100 are the two least significant (i. e. first incoming) bits d0, d\ that are used to QPSK (Quadrature Phase Shift Keying) modulate the codeword. The outputs of the modulator 120 are respective I and Q signals.
On the receiver side, a conventional CCK demodulator as shown in FIG. 2 may be used that decodes the received CCK codes using a fast Walsh transformation technique. This functionality is generally provided in the WLAN baseband processor, and it provides a channel matched filter 200 that supplies the filtered signals to a Walsh transformation block 210. It is to mentioned that a channel matched filter 200 as shown in FIG. 2 needs not necessarily be provided in a CCK demodulator. In the CCK- 11 (or CCK-5.5) Walsh transformer, a bank 220 of 64 (or 4) correlators followed by a maximum detector 230 determines which code was transmitted giving the most significant 6 bits (or 2 bits) of the data word. The other 2 bits of the data word are determined from the QPSK phase of the symbol and fed to the sign detector 240. For this purpose, the sign detector 240 may comprise a differential demodulator, but it is again to be mentioned that a sign detector 240 as shown in FIG. 2 needs not necessarily be provided in a CCK demodulator.
Assuming R to be the received signal vector, and C* the conjugate code vector, the Walsh transformer 210 has to search for the maximum correlation of R over all codewords. For doing so, a high number of correlations R ■ C* need to be computed and compared, to detect the ML (maximum likelihood) codeword:
Figure imgf000005_0001
This expression can be written as:
Figure imgf000006_0001
+ [(r4e + r5)e + (-r6e + r7)]
Thus, each of the correlations that are to be computed may be implemented using the CCK correlator circuit shown in FIG. 3. That is, conventional CCK decoders require a correlator bank 220 that includes up to 64 CCK correlator circuits such as that shown in FIG. 3. This consumes a large amount of chip area and leads to substantial manufacturing costs.
SUMMARY OF THE INVENTION
An improved complementary code decoding technique is provided that may allow for saving chip space and costs without deteriorating the overall system performance.
In one embodiment, a WLAN receiver is provided that has a CCK decoder. The CCK decoder comprises a serial- to-parallel converter that is connected to receive CCK encoded input data and output a parallelized representation thereof. The CCK decoder further comprises a correlator circuit that is connected to receive the parallelized input data and generate correlation values therefrom. The correlator circuit is capable of changing its correlation characteristics depending on at least one control signal. The CCK decoder further comprises a state transition controller that is adapted to sequentially provide different control signals to the correlator circuit thereby driving the correlator circuit to sequentially generate multiple correlation values from the parallelized input data based on different correlation characteristics. Further, the CCK decoder comprises a best correlation picker circuit that is connected to receive the multiple correlation values and that is adapted to identify the correlation value that represents the optimum correlation.
In one embodiment of the WLAN receiver as defined in claim 2, said best correlation picker circuit is connected to receive multiple correlation values in each cycle of said multicycle sequence.
In a further embodiment said best correlation picker circuit is adapted to identify in each cycle the best correlation value for that cycle.
In a further embodiment said best correlation picker circuit comprises circuitry connected to receive said best correlation values for each cycle, and adapted to identify said optimum correlation value therefrom.
In a further embodiment said circuitry comprises a register storing the best correlation value pertaining to respective previous cycles, and a comparator for comparing said previous best correlation value with the current best correlation value.
In a further embodiment said comparator is connected to said register to write the better one of said previous best correlation value and said current best correlation value into said register. In a further embodiment said correlator circuit comprises a plurality of multipliers and adders for performing signal processing operations based on the CCK basecode phasors (< 2, φ_, φϊ).
In a further embodiment said correlator circuit is a three-stage circuit where each of the stages is adapted to perform signal processing operations based on an individual one of the CCK basecode phasors (cpi, φs, φ4).
In a further embodiment each of the stages comprises circuitry for performing at least two signal processing operations in parallel.
In a further embodiment each of the stages comprises a plurality of multipliers and adders for performing said signal processing operations.
In a further embodiment at least two of said stages comprises a plurality of multiplexers with each of the multiplexers being connected to one of said multipliers, said multiplexers being controlled by said at least one control signal provided by said state transition controller.
In a further embodiment the multiplexers of one of said stages are connected to each receive the same control signal.
In a further embodiment the multiplexers of one of said stages are connected to each receive different control signals.
In a further embodiment the control signals used for controlling the multiplexers in a first one of said at least two stages are different from the control signals used for controlling the multiplexers in a second one of said at least two stages.
In a further embodiment said multiplexers are controlled by said control signals to multiplex between the complex numbers 1, -j, -1, and/.
In a further embodiment the correlation value representing the optimum correlation is the maximum correlation value.
In a further embodiment the WLAN receiver further comprises a multiplexer receiving said correlation values from said correlator circuit for selecting one of said multiple correlation values to determine the one CCK phasor (φ>ι) that is not a basecode phasor (ψi, φ_, ΨΛ).
In another embodiment, there may be provided a complementary code decoder that comprises a serial-to-parallel converter that is connected to receive serially encoded input data and output a parallelized representation thereof. The complementary code decoder comprises a correlation circuit that is connected to receive the parallelized input data and generate correlation values therefrom. The correlator circuit is capable of changing its correlation characteristics depending on at least one control signal. The complementary code decoder further comprises a state transition controller that is adapted to sequentially provide different control signals to the correlator circuit thereby driving the correlator circuit to sequentially generate multiple correlation values from the parallelized input data based on different correlation characteristics. The complementary code decoder further comprises a best correlation picker circuit that is connected to receive the multiple correlation values and that is adapted to identify the correlation value that represents the optimum correlation.
In a further embodiment, there may be provided an integrated circuit chip that has CCK decoder circuitry. The CCK decoder circuitry comprises a serial-to-parallel converter circuit that is connected to receive CCK encoded input data and output a parallelized representation thereof. The CCK decoder circuitry further comprises a correlator circuit that is connected to receive the parallelized input data and generate correlation values therefrom. The correlator circuit is capable of changing its correlation characteristics depending on at least one control signal. The CCK decoder circuitry further comprises a state transition control circuit that is adapted to sequentially provide different control signals to the correlator circuit thereby driving the correlator circuit to sequentially generate multiple correlation values from the parallelized input data based on different correlation characteristics. Moreover, the CCK decoder circuitry comprises a best correlation picker circuit that is connected to receive the multiple correlation values and that is adapted to identify the correlation value that represents the optimum correlation.
In still a further embodiment, a method of decoding a CCK encoded input signal comprises receiving the CCK encoded input signal, converting the received data to parallel data, submitting the converted input data to a correlator circuit, sequentially submitting different control signals to the correlator circuit to drive the correlator circuit to sequentially generate multiple correlation values from the parallel data, where the correlator circuit is capable of changing its correlation characteristics depending on the control signals, and identifying the correlation value that represents the optimum correlation.
In one embodiment of the method as defined in claim 9, said parallel data comprises a plurality of data elements and said correlator circuit comprises a plurality of input terminals to receive said data elements, wherein the number of data elements is equal to the number of input terminals.
In a further embodiment said data elements have complex values.
In a fiirther embodiment said number of data elements and input terminals is eight.
In a further embodiment the number of cycles in said multicycle sequence is chosen to be 64 divided by said number of data elements and input terminals.
In a further embodiment identifying the correlation value comprises:
receiving multiple correlation values in each cycle of said multicycle sequence.
In a further embodiment identifying the correlation value comprises:
identifying in each cycle the best correlation value for that cycle.
In a further embodiment identifying the correlation value comprises: receiving said best correlation values for each cycle; and
identifying said optimum correlation value from the received values.
In a further embodiment wherein identifying said optimum correlation value comprises:
storing the best correlation value pertaining to previous cycles in a register; and
comparing said previous best correlation value with the current best correlation value.
In a further embodiment the method further comprises:
writing the better one of said previous best correlation value and said current best correlation value into said register.
In a further embodiment sequentially generating said multiple correlation values comprises:
operating a plurality of multiphers and adders for performing signal processing operations based on the CCK basecode phasors (q_, φ_, φf .
In a further embodiment said correlator circuit is a three-stage circuit, wherein sequentially generating said multiple correlation values comprises:
operating each of the stages to perform signal processing operations based on an individual one of the CCK basecode phasors (ψι, φ_, φ4).
In a further embodiment operating each of the stages comprises:
performing at least two signal processing operations in parallel.
In a further embodiment operating each of the stages comprises:
operating a plurality of multiphers and adders for performing said signal processing operations.
In a further embodiment at least two of said stages comprises a plurality of multiplexers with each of the multiplexers being connected to one of said multipliers, wherein operating said at least two stages comprises:
controlling said multiplexers by said control signals.
In a further embodiment controlling said multiplexers in one of said stages comprises;
receiving the same control signal at each of the multiplexers.
In a further embodiment controlling said multiplexers in one of said stages comprises:
receiving different control signals at different multiplexers. In a further embodiment the control signals used for controlling the multiplexers in a first one of said at least two stages are different from the control signals used for controlling the multiplexers in a second one of said at least two stages.
In a further embodiment said multiplexers are controlled by said control signals to multiplex between the complex numbers 1, -j, -1, and/.
In a further embodiment the correlation value representing the optimum correlation is the maximum correlation value.
In a further embodiment the method further comprises:
receiving said multiple correlation values; and
selecting one of said multiple correlation values to determine the one CCK phasor (q ) that is not a basecode phasor , ψi, φf).
BRIEF DESCRIPTION OF THE DRAWINGS
The accompanying drawings are incorporated into and form a part of the specification for the piupose of explaining the principles of the invention. The drawings are not to be construed as limiting the invention to only the illustrated and described examples of how the invention can be made and used. Further features and advantages will become apparent from the following and more particular description of the invention, as illustrated in the accompanying drawings, wherein:
FIG. 1 is a block diagram illustrating the components of a conventional CCK modulator;
FIG. 2 is a block diagram illustrating a conventional CCK demodulator;
FIG. 3 illustrates a CCK correlator circuit that may be used in the correlator bank that is a component of the demodulator shown in FIG. 2;
FIG. 4 illustrates 802.1 lb outer receiver components according to an embodiment;
FIG. 5 illustrates a Walsh transformer that may be used in the arrangement of FIG. 4, according to an embodiment;
FIG. 6 illustrates a multiplication unit according to an embodiment that may be used in the circuits of FIG. 5; and
FIG. 7 is a flowchart illustrating the process for complementary code decoding according to an embodiment. DETAILED DESCRIPTION OF THE INVENTION
The illustrative embodiments of the present invention will now be described with reference to the figure drawings wherein like elements and structures are indicated with like reference numbers.
Referring now to the drawings and particularly to FIG. 4, components of a baseband processor in a WLAN outer receiver according to an embodiment are shown. As apparent from the figure, the complex input signal is fed to a Walsh transformer 400 and a Barker matched filter 410. Further, there is a state transition controller 480 provided that controls the operation of both the Walsh transformer 400 and the Barker matched filter 410. More specifically, the state transition controller 480 provides activity signals to the units to enable at any one time the operation of only one of the Walsh transformer 400 and the Barker matched filter 410. The state transition controller 480 further controls multiplexers 420, 430 that select the complex output signals of the Walsh transformer 400 or the Barker matched filter 410, respectively.
The multiplexed signal is then registered in registers 440, 450 before being processed in the demapper 460. Finally, the signal gets descrambled in unit 470, and for this purpose, the descrambler 470 receives the basecode from the Walsh transformer 400.
In another embodiment, the registers 440, 450 may be combined to form a uniform unit which may be considered, together with some suitable additional circuitry, as a differential demodulator.
Moreover, while the state transition controller 480 is shown in FIG. 4 to provide activity signals to the individual other units of the baseband processor, it may further control the demapper 460 to provide the ability to make adjustments for the various modulation techniques such as BPSK or QPSK, in case it operates on signals from the Barker matched filter 410.
Turning now to FIG. 5 which illustrates the components of the Walsh transformer 400 of the present embodiment in more detail, the input signal r(k) is fed to the circuit on the lower left side of the figure. The eight chips of the CCK codeword that is received are first parallelized in a serial-to-parallel converter 500. The converter 500 comprises a sequence of seven chip registers that are clocked with the chip rate (e.g. 11 Mcps in the CCK-11 case). Thus, a new codeword will be written into the registers after eight clocks. By controlling an output shutter of the serial-to-parallel converter 500 in an eight clock time distance, a parallelized representation of the CCK encoded input data r(k) is generated and submitted to the following circuitry.
The shutter functionality may be realized by setting output enable signals to the registers 500. This enable signal, or any other control signal used to perform this functionality, is provided by the state transition controller 480. In the present embodiment, the state transition controller 480 is a finite state machine (FSM) that steps from one finite state to the next finite state in a predefined manner. By doing so, the state transition controller reahzes a sequential automaton that controls the components of the Walsh transformer 400 and that may further control other components of the baseband processor. In FIG. 5, control signals provided by the state transition controller are denoted C *. Once the incoming codeword has been parallelized, some circuitry may be provided for performing initial arithmetic operations on the data elements of the parallelized data. In the embodiment of FIG. 5, an inverter bank 505 is provided for reverting the sign of some of the data elements as required to comply with the above described code definitions.
The parallelized and preprocessed data are then input to a three-stage correlator circuit. Similarly to the three stages 300, 310, 320 of the correlator circuit shown in FIG. 3, each of the stages of the arrangement according to the present embodiment is adapted to perform signal processing operations based on an individual one of the CCK basecode phasors q , φ_ and φ4. However, the three-stage structure of the embodiment differs from that of FIG. 3 in that each of the stages shown in FIG. 5 receives control signals from the state transition controller 480 to change its correlation characteristics. In the present embodiment, the three-stage correlation circuit of FIG. 5 is sequentially operated in eight cycles based on the same parallel input data, and the correlation characteristics are changed from cycle to cycle.
That is, while conventional CCK decoders require up to sixty-four separate circuits of the kind shown in FIG. 3, the present embodiment requires to have only one three-stage structure to obtain the same correlation information. This is achieved by doing both: simultaneously operating on eight parallel data elements (i.e. chips), and using the same hardware structure in an eight cycle sequence where each cycle has different correlation characteristics.
It is to be noted that generally, the number of cycles may be chosen to be sixty-four divided by the number of chips per codeword. It is however to be mentioned that other embodiments exists where the number of cycles may be different from this value.
In the embodiment of FIG. 5, the correlator circuit is made up of a plurality of multiplier units 515, 530, 540, 555 and adders 520, 535, 545 and 560. The multiplier units multiply the respective input signal with the respective phasor factor e * ^2 , e J ^3 , e -* ^4 of the stage. The values of these factors are switched according to the control signal CPSM that is provided by the state transition controller 480.
A circuit that may be used as multiplier unit in the correlator circuit of FIG. 5 is illustrated in FIG. 6. As apparent from this figure, the circuit comprises a multiplexer 610 that receives the complex numbers +1, -j, -1, and +j as input values. The multiplexer 610 selects one of the complex numbers based on the CFS__ based control signal. The selected complex number is then multiplied with the input signal by multiplier 600. Thus, the state transition controller 480 is allowed for changing the multiplication properties of the circuit by providing respective control signals.
While the circuit shown in FIG. 6 can in principle be used for each of the multiplier units 515, 530, 540, 555 in FIG. 5, it is to be noted that in the present embodiment, the circuit of FIG. 6 is used in stages 510 and 525 only.
The following table gives an example of how to provide control signals to the Walsh transformer of FIG. 5 to achieve the correlation properties described above. In the table, CB denotes the basecode part of the codeword, and arg CB gives the basecode index that is equivalent to the reversed bit pattern for {d2,..,d7}.
Figure imgf000013_0001
Turning now back to FIG. 5, the correlator circuit generates in each cycle eight correlator output metrics, i.e., correlation values that are compared to each other by the comparator tree 570 that comprises seven comparators. The biggest correlation value is registered in register 575 and compared with the maximum metric of the previous cycles.
For this purpose, a register 585 is provided that outputs its contents to the comparator 580 where the registered value is compared with the correlation value of the current cycle that was stored in register 575. The greater value, i.e. that showing the better correlation, is then written into the register 585. That is, at the end of the eight-cycle process, the register 585 stores the global maximum metric for the received CCK symbol, i.e. the basecode index.
As apparent from the figure, there may further be provided a multiplexer 590 that receives signals from the third stage 550 and selects one of these signals based on the output of the comparator tree 570. The multiplexed signal is stored in a temporary register 595 which after eight cycles holds the complex value that pertains to that phasor ψι that is not a basecode phasor. This complex value may then be passed to a differential demodulator such as the sign detector 240 shown in FIG. 2, and/or to a phase error correction unit of the receiver where the value may provide a phase change estimate.
While the circuits of FIGs. 5 and 6 have been shown to comprise multiphers and adders for performing the correlation functions, it is to be noted that the same architecture can be realized using other structures. For instance, the arithmetic operations that are performed by the multipliers and adders can be reahzed in other embodiments by programmable elements. For instance, each of the four structures 515, 520 of the first stage 510 of the correlator circuit that comprise one multiplier 515 and one adder 520 may be implemented in software coded form by realizing the following pseudo code. In this code, the variable mode corresponds to the value of the control signal issued by the state transition controller 480.
case(mode)
2'DO: begin phi2_real = {in_real_1[5],in_real_1} + {in_real_2[5],in_real_2}; phi2_imag = {in_imag_1[5],in_imag_1} + {in_imag_2[5],in_imag_2}; end 2'D1: begin phi2_real = {in_i ag_1[5],injmag_1} + {in_real_2[5],in_real_2}; p i2_imag = {in_imag_2[5],in_imag_2} - {in_real_1[5],in_real_1}; end 2'D2: begin phi2_rea! - {in_real_2[5j,in_real_2} - {in_rea!_1[5],in_real_1}; phi2_imag = {inj ag_2[5],injmag_2} - {injmag_1[5],inj ag_1}; end 2'D3: begin phi2_real = {in_real_2[5],in_real_2} - {injmag_1[5],in_imag_1}; phi2Jmag = {in_jmag_2[5],injmag_2} + {in_reaM[5],in_real_1}; end endcase
Similarly, the multiplier-adder structures 530, 535; 540, 545 of the second stage 525 may be reahzed by:
case(c_mode)
2'DO: begin phi3_real = {in_reaM[5],in_real_1} + {inj-ealJ2[5],in_ real_2}; phi3_imag = {in_imag_1[5],injmag_1} + {in_imag_2[5],injmag_2}; end 2'D1 : begin phi3_real = {injmag_1[5],injmag_1} + {in_real_2[5],in_real_2}; phi3_imag = {in_imag_2[5],in_imag_2} - {in_real_1[5],in_reaM}; end 2'D2: begin phi3_real = {in_real_2[5],in_real_2} - {in_real_1 [5],in_real_1}; phi3_imag = {injmag_2[5],in_imag_2} - {in_imag_1[53,injmag_1}; end 2'D3: begin phi3_real = {in_real_2[5],in_real_2} - {in_imag_1 [5],in_imag_1 }; phi3_imag = {in_imag_2[53Jinjmag_2} + {in_real_1[5],in_real_1}; end endcase
In the third stage, the operation of the arithmetic structures may similarly be described by:
phi40_real = {phi3_0_real[7],phi3_0_real} + {phi31_real[7},phi3_1_rea!}; phi40jmag = {phi3_0jmag[73,phi3_0_imag}+{phi3_1_imag[7],phi3_1_imag};
phi41_real = {phi3_1_real[7],phi3_1_real} + {phi3_0_imag[7],phi3_0_imag}; phi41_imag = {phi3_1_imag[7],phi3_1_imag} - {phi3_0_real[7],phi3_0_reai};
phi42_real = {phi3_1_real[7],phi3_1_real} - {phi3_0_real[7],phi3_0_reai}; phi42_imag = {phi3_1_imag[7],p i3_1jmag} - {phi3_0_imag[7],phi3_0_imag};
phi43_real = {phi3_1_real[7],phi3_1_real} - {phi3_0_imag[7],phi3_0_imag}; phi43_imag = {phi3_1 jmag[7],phi3_1_imag} + {phi3_0_real[7],phi3_0_rea!};
Given the above described embodiments, a fully pipelined CCK decoder is described that can solve the ML CCK decoding problem to obtain the basecode index within eight steps using a minimum set of operator blocks. In fact, by avoiding a large set of conventional correlator circuits to be realized, the required chip area can be reduced to one fourth. This advantageously reduces the manufacturing costs and further improves the efficiency of the overall operation.
The embodiments make use of eight parallel variable correlator paths that are used eight times per symbol. Thus, the circuit structure is advantageously reused multiple times so that the gate count of the CCK decoder block can be strongly decreased. While the embodiments described above primarily relate to the CCK- 11 mode defined in the 802.11b specification, it is to be mentioned that other embodiments exist where the 5.5 Mbps mode is used. In this mode, the information of two bits is spread over three basecode phasors. This causes only the basecode indices {16, 48, 18, 50} to be valid. Thus, the same structure as that shown in FIG. 5 can be used and only some changes to the signal assignment performed by the state transition controller 480 need to be done to pass only those values to the comparator tree that match the mentioned basecode indices.
Moreover, while the above described embodiments relate to CCK decoders in WLAN receivers, it is to be noted that other embodiments exist where the decoder structure discussed above is used to decode other complementary codes in other data communication systems.
Industrial Applicability
The improved complementary code decoding technique of the present mvention provides enhanced efficiency in terms of required chip area in mass production and thereby may significantly contribute to a cost reduction of industrially manufactured devices having implemented the inventive technique.

Claims

1. A WLAN (Wireless Local Area Network) receiver having a CCK (Complementary Code Keying) decoder comprising:
a serial-to-parallel converter (500) connected to receive CCK encoded input data and output a parallelized representation thereof;
a correlator circuit (505-560) connected to receive the parallehzed input data and generate correlation values therefrom, said correlator circuit being capable of changing its correlation characteristics depending on at least one control signal;
a state transition controller (480) adapted to sequentially provide different control signals to said correlator circuit thereby driving said correlator circuit to sequentially generate multiple correlation values from said parallehzed input data based on different correlation characteristics; and
a best correlation picker circuit (565-585) connected to receive said multiple correlation values and adapted to identify the correlation value representing the optimum correlation.
2. The WLAN receiver of claim 1, wherein said state transition controller is adapted to drive said correlator circuit to sequentially generate said multiple correlation values in a multicycle sequence based on correlation characteristics that change from cycle to cycle.
3. The WLAN receiver of claim 2, wherein the number of cycles in said multicycle sequence is eight.
4. The WLAN receiver of claim 2, wherein said parallehzed input data comprises a plurality of data elements and said correlator circuit comprises a plurality of input terminals to receive said data elements, wherein the number of data elements is equal to the number of input terminals.
5. The WLAN receiver of claim 4, wherein said data elements have complex values.
6. The WLAN receiver of claim 4, wherein said number of data elements and input terminals is eight.
7. The WLAN receiver of claim 4, wherein the number of cycles in said multicycle sequence is chosen to be 64 divided by said number of data elements and input terminals.
8. A method of decoding a CCK (Complementary Code Keying) encoded input signal, the method comprising:
receiving said CCK encoded input data;
converting (700) the received data to parallel data;
submitting the converted input data to a correlator circuit (505-560); sequentiaUy (710) submitting different control signals to said correlator circuit to drive said correlator circuit to sequentiaUy generate multiple correlation values from said parallel data, said correlator circuit being capable of changing its correlation characteristics depending on said control signals; and
identifying (720, 730) the correlation value representing the optimum correlation.
9. The method of claim 8, wherein sequentially generating said multiple correlation values is performed in a multicycle sequence where said correlation characteristics are changed from cycle to cycle.
10. The method of claim 9, wherein the number of cycles in said multicycle sequence is eight.
PCT/US2003/035434 2002-10-31 2003-10-27 Complementary code decoding by reduced sized circuits Ceased WO2004040784A2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU2003291349A AU2003291349A1 (en) 2002-10-31 2003-10-27 Complementary code decoding by reduced sized circuits

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
DE10250891A DE10250891B4 (en) 2002-10-31 2002-10-31 Complementary code decoding by circuits of reduced size
DE10250891.7 2002-10-31
US10/464,965 2003-06-19
US10/464,965 US7184496B2 (en) 2002-10-31 2003-06-19 Complementary code decoding by reduced sized circuits

Publications (2)

Publication Number Publication Date
WO2004040784A2 true WO2004040784A2 (en) 2004-05-13
WO2004040784A3 WO2004040784A3 (en) 2004-06-24

Family

ID=32231870

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2003/035434 Ceased WO2004040784A2 (en) 2002-10-31 2003-10-27 Complementary code decoding by reduced sized circuits

Country Status (2)

Country Link
AU (1) AU2003291349A1 (en)
WO (1) WO2004040784A2 (en)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3428490B2 (en) * 1999-04-22 2003-07-22 岩崎通信機株式会社 Method and apparatus for wirelessly transmitting digital information
EP1178630A1 (en) * 2000-07-31 2002-02-06 Lucent Technologies Inc. Wireless LAN with enhanced carrier sensing
EP1207657B1 (en) * 2000-11-20 2007-10-31 Lucent Technologies Inc. Detection method and apparatus for phase-modulated CCK symbols with a correlator-bank

Also Published As

Publication number Publication date
WO2004040784A3 (en) 2004-06-24
AU2003291349A1 (en) 2004-05-25
AU2003291349A8 (en) 2004-05-25

Similar Documents

Publication Publication Date Title
JP3905500B2 (en) Information bit modulation method, digital modulation system, digital demodulation system
US6985517B2 (en) Matched filter and correlation detection method
US20030012259A1 (en) Communications system employing differential orthogonal modulation
EP0874471B1 (en) Direct sequence spread spectrum correlator
US8401056B2 (en) Method and apparatus for packet acquisition
US10911095B2 (en) Fallthrough correlation techniques for arbitrary-phase spread spectrum waveforms
US8804790B2 (en) Spread spectrum encoding and decoding
US20140016676A1 (en) Spread-spectrum codes generation
WO2003063379A1 (en) A system and method employing concatenated spreading sequences to provide data modulated spread signals
US9094108B2 (en) Spread-spectrum modulation and demodulation
US7184496B2 (en) Complementary code decoding by reduced sized circuits
TWI683549B (en) System and method for processing analog signals
US6999533B2 (en) Demodulating encoded data
USRE41931E1 (en) Receiver module and receiver formed from several cascaded modules
US20020061057A1 (en) Digital filter
EP1847029A1 (en) Method and apparatus for despreading data in a wireless communication system
CN111654349B (en) Frame synchronization method and system
JPH09284256A (en) Spread spectrum communication system
Ribov et al. Complementary code keying with PIC based microcontrollers for the wireless radio communications
JP3914626B2 (en) PN code generation circuit
KR20030064613A (en) Spread spectrum communication system utilizing differential code shift keying
JP4272593B2 (en) Digital modulation system using orthogonal code modified to reduce autocorrelation
WO2012037638A1 (en) A tri-phase code generator in a cdma wireless communication system
WO2005050858A1 (en) Receiving method and apparatus
JP2007228468A (en) Multi-carrier frequency hopping system, transmission circuit and receiving circuit

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

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

AL Designated countries for regional patents

Kind code of ref document: A2

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

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

Ref country code: JP

WWW Wipo information: withdrawn in national office

Country of ref document: JP