KR20000073311A - Circuit for generating Orthogonal Variable Spreading Factor codes - Google Patents

Circuit for generating Orthogonal Variable Spreading Factor codes Download PDF

Info

Publication number
KR20000073311A
KR20000073311A KR1019990016533A KR19990016533A KR20000073311A KR 20000073311 A KR20000073311 A KR 20000073311A KR 1019990016533 A KR1019990016533 A KR 1019990016533A KR 19990016533 A KR19990016533 A KR 19990016533A KR 20000073311 A KR20000073311 A KR 20000073311A
Authority
KR
South Korea
Prior art keywords
ovsf
seed
code
counter
circuit
Prior art date
Application number
KR1019990016533A
Other languages
Korean (ko)
Other versions
KR100319643B1 (en
Inventor
남정길
원신희
윤태열
박판종
Original Assignee
정규석
주식회사 데이콤
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 정규석, 주식회사 데이콤 filed Critical 정규석
Priority to KR1019990016533A priority Critical patent/KR100319643B1/en
Publication of KR20000073311A publication Critical patent/KR20000073311A/en
Application granted granted Critical
Publication of KR100319643B1 publication Critical patent/KR100319643B1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J13/00Code division multiplex systems
    • H04J13/0007Code type
    • H04J13/004Orthogonal
    • H04J13/0044OVSF [orthogonal variable spreading factor]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J13/00Code division multiplex systems
    • H04J13/10Code generation
    • H04J13/12Generation of orthogonal codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J13/00Code division multiplex systems
    • H04J13/16Code allocation
    • H04J13/18Allocation of orthogonal codes
    • H04J13/20Allocation of orthogonal codes having an orthogonal variable spreading factor [OVSF]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

PURPOSE: A circuit for generating orthogonal variable spreading factor(OVSF) code is provided to use one OVSF code generator to generate the OVSF code having various spreading factors, so as to reduce a hardware size and power consumption. CONSTITUTION: An n-bit counter(10) is a binary up counter for increasing as 1 to 0, 1, 2,....(2n) every clock, and repeats from '0'. SEED(1) to SEED(n) are seed values of an orthogonal variable spreading factor(OVSF) code. A first AND gate(20-1) applies AND operations to a count(1) of the n-bit counter and the SEED(n). A second AND gate(20-2) applies AND operations to a count(2) and a SEED(n-1). An n-AND gate(20-n) applies AND operations to a count(n) and the SEED(1). An exclusive OR gate(30) arithmetically operates outputs of the first to the n-AND gates to generate the OVSF code.

Description

직교가변확산계수 코드 발생회로{ Circuit for generating Orthogonal Variable Spreading Factor codes}Circuit for generating Orthogonal Variable Spreading Factor codes

본 발명은 광대역 코드분할 다중접속방식(Wideband CDMA)에서 사용되는 확산 코드의 하나인 직교가변확산계수(OVSF: Othogoanl Variable Spreading Factor) 코드를 발생하는 회로에 관한 것이다.The present invention relates to a circuit for generating an Orthogonal Variable Spreading Factor (OVSF) code, which is one of spreading codes used in wideband CDMA.

최근 이동통신기술에 널리 적용되는 광대역 코드분할 다중접속방식(Wideband CDMA)은 낮은 전송 속도에서부터 매우 높은 전송속도까지 다양한 전송 속도를 지원할 수 있다. 그리고 통상, 확산된 신호의 대역폭(Bandwidth)은 전송 속도와 관계없이 일정하므로, W-CDMA시스템은 다양한 전송 속도를 수용하기 위해서 다양한 확산 계수(Spreading Factor)를 제공할 수 있어야 한다.Wideband CDMA (Wideband CDMA), which is widely applied to recent mobile communication technologies, can support various transmission speeds from low transmission rates to very high transmission rates. In general, since the bandwidth of the spread signal is constant regardless of the transmission speed, the W-CDMA system should be able to provide various spreading factors to accommodate various transmission speeds.

그런데 종래에 확산 코드로 흔히 사용된 하다마드(Hadamard) 코드는 일정한 확산 계수에 대해서는 직교성(Orthogonality)을 가지나 여러 확산 계수 사이에서는 직교성을 가지지 못한다는 문제점이 있었다. 이러한 문제점을 해결하기 위하여 다양한 확산 계수 사이에서도 직교성을 가지도록 개발된 확산 코드가 직교가변확산계수(OVSF) 코드이다.However, the Hadamard code, which is commonly used as a spreading code, has orthogonality with respect to a constant spreading coefficient, but has no orthogonality among various spreading coefficients. To solve this problem, a spreading code developed to have orthogonality among various spreading coefficients is an orthogonal variable spreading factor (OVSF) code.

이와 같은 OVSF 코드는 아래의 수학식1 내지 5와 같이 발생된다.This OVSF code is generated as shown in Equations 1 to 5 below.

상기 수학식5에서 N은 확산계수로써이다.In Equation 5, N is a diffusion coefficient to be.

그런데 상기 수학식과 같은 OVSF 코드를 발생시키는 회로를 설계할 경우, 매번 방대한 양의 연산을 필요로 한다. 즉, C64(0)를 구하기 위해서는 다음 표 1과 같이 방대한 양의 연산을 수행하여야 한다.However, when designing a circuit that generates an OVSF code like the above equation, a huge amount of computation is required each time. That is, in order to obtain C64 (0), a large amount of operations must be performed as shown in Table 1 below.

C64(0)= [C32(0) C32(0)]= [C16(0) C16(0) C16(0) C16(0)]= [C8(0) C8(0) C8(0) C8(0) C8(0) C8(0) C8(0) C8(0)]= [C4(0) C4(0) C4(0) C4(0) C4(0) C4(0) C4(0) C4(0) C4(0) C4(0)C4(0) C4(0) C4(0) C4(0) C4(0) C4(0)]= [C2(0) C2(0) C2(0) C2(0) C2(0) C2(0) C2(0) C2(0) C2(0) C2(0)C2(0) C2(0) C2(0) C2(0) C2(0) C2(0) C2(0) C2(0) C2(0) C2(0)C2(0) C2(0) C2(0) C2(0) C2(0) C2(0) C2(0) C2(0) C2(0) C2(0)C2(0) C2(0)]= [C1(0) C1(0) C1(0) C1(0) C1(0) C1(0) C1(0) C1(0) C1(0) C1(0)C1(0) C1(0) C1(0) C1(0) C1(0) C1(0) C1(0) C1(0) C1(0) C1(0)C1(0) C1(0) C1(0) C1(0) C1(0) C1(0) C1(0) C1(0) C1(0) C1(0)C1(0) C1(0) C1(0) C1(0) C1(0) C1(0) C1(0) C1(0) C1(0) C1(0)C1(0) C1(0) C1(0) C1(0) C1(0) C1(0) C1(0) C1(0) C1(0) C1(0)C1(0) C1(0) C1(0) C1(0) C1(0) C1(0) C1(0) C1(0) C1(0) C1(0)C1(0) C1(0) C1(0) C1(0)]= [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0]C64 (0) = [C32 (0) C32 (0)] = [C16 (0) C16 (0) C16 (0) C16 (0)] = [C8 (0) C8 (0) C8 (0) C8 ( 0) C8 (0) C8 (0) C8 (0) C8 (0)] = [C4 (0) C4 (0) C4 (0) C4 (0) C4 (0) C4 (0) C4 (0) C4 (0) C4 (0) C4 (0) C4 (0) C4 (0) C4 (0) C4 (0) C4 (0) C4 (0)] = [C2 (0) C2 (0) C2 (0) C2 (0) C2 (0) C2 (0) C2 (0) C2 (0) C2 (0) C2 (0) C2 (0) C2 (0) C2 (0) C2 (0) C2 (0) C2 ( 0) C2 (0) C2 (0) C2 (0) C2 (0) C2 (0) C2 (0) C2 (0) C2 (0) C2 (0) C2 (0) C2 (0) C2 (0) C2 (0) C2 (0) C2 (0) C2 (0)] = [C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0 ) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0 ) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0 ) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0) C1 (0)] = [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0]

이러한 방대한 양의 연산을 피하는 방법으로는, 사용되는 모든 OVSF 코드를 미리 표만들어 메모리에 저장한 후 필요할 때마다 불러다 사용하는 방법이 있다. 이와 같이 메모리를 이용하는 방법은 예컨대 확산 계수가 64, 16인 OVSF 코드를 발생시킨다고 가정할 경우, (64×64 + 16×16) = 4,352 bits의 데이터를 저장하고 있어야 하므로 매우 큰 메모리를 필요로하는 문제점이 있다.One way to avoid this vast amount of computation is to create a table of all the OVSF codes that are used, store them in memory, and then load them whenever necessary. Such a method using a memory needs to store very large memory because (64 × 64 + 16 × 16) = 4,352 bits should be stored when assuming that an OVSF code having a spreading factor of 64 or 16 is generated. There is a problem.

이와 같이 OVSF 코드를 발생하는 회로를 구현할 경우에, 종래에는 방대한 양의 연산을 필요로 하여 회로가 복잡해지거나, 방대한 양의 데이터를 저장하기 위해 많은 매모리가 요구되는 문제점이 있다.As described above, when a circuit for generating an OVSF code is implemented, a conventional circuit requires a large amount of operation, which causes a complicated circuit or a large amount of memory for storing a large amount of data.

따라서 본 발명은 방대한 양의 연산을 하거나, 방대한 양의 데이터를 저장하지 아니하고, 단순화된 구조로 구현할 수 있는 OVSF 코드 발생회로를 제공하는데 그 목적이 있다.Accordingly, an object of the present invention is to provide an OVSF code generation circuit that can be implemented in a simplified structure without performing a large amount of operations or storing a large amount of data.

상기와 같은 목적을 달성하기 위하여 본 발명은, n개의 시드값을 입력받아 N=2n계수의 OVSF코드들 발생하기 위한 회로에 있어서,In order to achieve the above object, the present invention provides a circuit for generating OVSF codes of N = 2 n coefficients by receiving n seed values.

n비트 카운터; 상기 카운터의 n비트 출력과 상기 n개의 시드값을 하나씩 입력받아 각각 논리곱 연산하는 n개의 엔드게이트; 상기 엔드게이트의 출력을 배타적 논리합 연산하는 n입력 배타적 오아게이트를 구비하여 상기 시드값에 대응하는 OVSF코드를 발생하는 것을 특징으로 한다.n bit counter; N end gates each of which receives the n-bit output of the counter and the n seed values one by one; And an n-input exclusive oragate for performing an exclusive OR operation on the output of the end gate to generate an OVSF code corresponding to the seed value.

도 1은 본 발명에 따라 최대 2n인 확산 계수를 가지는 OVSF 코드를 발생하는 회로를 도시한 도면,1 illustrates a circuit for generating an OVSF code having a spreading factor of up to 2 n in accordance with the present invention;

도 2는 도 1의 회로에서 C8(5)일 경우의 동작예를 설명하기 위한 도면,FIG. 2 is a view for explaining an operation example in the case of C 8 (5) in the circuit of FIG. 1;

도 3은 본 발명에 따른 코드발생 방법의 절차를 도시한 순서도이다.3 is a flowchart illustrating a procedure of a code generation method according to the present invention.

* 도면의 주요부분에 대한 부호의 설명* Explanation of symbols for main parts of the drawings

10: 카운터 20-1~20-n: 엔드게이트10: counter 20-1 to 20-n: end gate

30: 배타적오아게이트30: exclusive oragate

이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 자세히 설명하기로 한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

본 발명에 따라 한가지 또는 다양한 확산 계수의 OVSF(Orthogonal Variable Spreading Factor) 코드를 발생시킬 수 있는 OVSF 코드 발생회로는 도 1에 도시된 바와 같이, n비트 카운터(10), n개의 엔드게이트(20-1~20-n), n입력 배타적 오아게이트(30)로 구성된다.According to the present invention, an OVSF code generation circuit capable of generating an Orthogonal Variable Spreading Factor (OVSF) code having one or various spreading coefficients includes an n-bit counter 10 and n endgates 20- as shown in FIG. 1 to 20-n), and n input exclusive oragate 30.

도 1을 참조하면, n비트 카운터(10)는 매 클럭마다 0, 1, 2, ... (-1)로 1씩 증가한 후 다시 0부터 반복하는 바이너리 업 카운터이다. 그리고 n비트 카운터(10) 출력단의 C_out(1), C_out(2), ... C_out(n-1), C_out(n)은 각각 카운터의 첫 번째, 두 번째, ... (n-1) 번째, n 번째 출력 bit에 해당한다. SEED(1)~SEED(n)은 OVSF 코드의 시드(Seed) 값으로써, 만일의 OVSF 코드를 얻고 싶을 경우, A에 해당하는 2진 데이터를 시드(Seed)값으로 주면 된다.Referring to FIG. 1, the n-bit counter 10 is 0, 1, 2, ... (for each clock. Binary up counter that increments by 1 and repeats from 0 again. C_out (1), C_out (2), ... C_out (n-1) and C_out (n) of the n-bit counter 10 output stage are the first, second, ... (n-1) of the counter, respectively. ) Th and nth output bits. SEED (1) ~ SEED (n) is the seed value of the OVSF code. If you want to get OVSF code, you can give the binary data corresponding to A as seed.

제1 엔드게이트(20-1)는 카운터(10)의 Cout(1)과 SEED(n)을 논리곱 연산하고, 제2 엔드게이트(20-2)는 Cout(2)와 SEED(n-1)을 논리곱 연산하며, 동일한 방식으로 제n 엔드게이트(20-n)는 Cout(n)과 SEED(1)을 논리곱 연산한다. 그리고 배타적 오아게이트(30)는 제1 내지 제n 엔드게이트(20-1~20-n)의 출력을 연산하여 OVSF코드를 발생한다.The first end gate 20-1 performs an AND operation on the Cout (1) and the SEED (n) of the counter 10, and the second end gate 20-2 performs the Cout (2) and SEED (n-1) operations. ), And in the same manner, the n-th end gate 20-n performs an AND operation on Cout (n) and SEED (1). The exclusive oragate 30 generates an OVSF code by calculating the outputs of the first to nth end gates 20-1 to 20-n.

도 1의 동작을 이해하기 쉽도록 확산계수가 8이고, 시드값이 5인 OVSF 코드의 경우를 예로 들어보자. 이와 같이 C8(5)인 경우의 도 1의 n비트 카운터(10)는 3비트 바이너리 카운터가 되고, 3개의 엔드게이트(20-1~20-3)와 3입력 배타적 오아게이트(30)에 의해 8비트의 OVSF코드가 발생된다. 이때 시드값으로는 SEED(1), SEED(2), SEED(3)이 요구된다. C8(5)인 경우,=8이므로, n=3이 된다. Seed는 5이므로, SEED(3) = 1, SEED(2) = 0, SEED(1) = 1 이 된다.OVSF code with a diffusion coefficient of 8 and a seed value of 5 for easy operation of FIG. For example, As described above, the n-bit counter 10 of FIG. 1 in the case of C 8 (5) becomes a 3-bit binary counter, and is provided to three end gates 20-1 to 20-3 and three input exclusive oragate 30. This generates an 8-bit OVSF code. At this time, SEED (1), SEED (2), and SEED (3) are required as seed values. For C 8 (5), Since n = 8, n = 3. Since Seed is 5, SEED (3) = 1, SEED (2) = 0, and SEED (1) = 1.

도 2는 C8(5)일 경우의 동작예를 설명하기 위한 도면으로서, 클럭에 따른 카운터의 출력과 각 게이트들이 출력하는 값들이 도시되어 있다. 도 2에서 "CLK"는 카운터의 동작 클럭으로서 칩레이트와 같고, SEED(3) 내지 SEED(1)은 시드값을 나타내는 바이너리이고, Cout(1) 내지 Cout(3)은 카운터 출력, AND1 내지 AND3은 엔드게이트의 출력이며, OVSF코드는 배타적 오아게이트(30)에서 출력되는 확산코드값을 나타낸다.FIG. 2 is a diagram for describing an operation example in the case of C 8 (5), in which an output of a counter according to a clock and values output by each gate are illustrated. In FIG. 2, "CLK" is an operation clock of a counter equal to the chip rate, SEED (3) to SEED (1) are binary representing seed values, and Cout (1) to Cout (3) are counter outputs, AND1 to AND3. Is the output of the endgate, and the OVSF code represents the spreading code value output from the exclusive oragate 30.

도 2를 참조하면, SEED(3)은 1이고, SEED(2)는 0이며, SEED(1)은 1이다. 카운터(10)의 출력 Cout(1), Cout(2), Cout(3)은 클럭(CLK)에 따라 0부터 7까지 증가하고 이어 0부터 반복된다. AND1, AND2, AND3은 각 엔드게이트의 출력이다.2, SEED 3 is 1, SEED 2 is 0, and SEED 1 is 1. The outputs Cout (1), Cout (2) and Cout (3) of the counter 10 increase from 0 to 7 according to the clock CLK and then repeat from zero. AND1, AND2, AND3 are the outputs of the respective endgates.

제1 클럭에서 카운터의 출력(Cout(1), Cout(2), Cout(3))은 (0, 0, 0)이 되고, 이 카운트값과 시드값을 논리곱한 연산 결과인 AND1, AND2, AND3은 (0, 0, 0)이 되며, 이 연산결과는 배타적 논리합 연산되어 "0"이 OVSF 코드의 일부로서 출력된다.The counter outputs Cout (1), Cout (2) and Cout (3) at the first clock are (0, 0, 0), and AND1, AND2, AND3 becomes (0, 0, 0), and the result of this operation is an exclusive OR operation, and "0" is output as part of the OVSF code.

이어, 제2 클럭에서 카운터의 출력(Cout(1), Cout(2), Cout(3))은 (1, 0, 0)이 되고, 이 카운트값과 시드값을 논리곱한 연산 결과인 AND1, AND2, AND3은 (1, 0, 0)이 되며, 이 연산결과는 배타적 논리합 연산되어 "1"이 OVSF 코드의 일부로서 출력된다.Next, the counter outputs Cout (1), Cout (2), and Cout (3) at the second clock become (1, 0, 0), and AND1, which is an operation result of logically multiplying the count value and the seed value, AND2 and AND3 become (1, 0, 0), and the result of this operation is an exclusive OR operation, and "1" is output as part of the OVSF code.

제3 클럭에서 카운터의 출력(Cout(1), Cout(2), Cout(3))은 (0, 1, 0)이 되고, 이 카운트값과 시드값을 논리곱한 연산 결과인 AND1, AND2, AND3은 (0, 0, 0)이 되며, 이 연산결과는 배타적 논리합 연산되어 "0"이 OVSF 코드의 일부로서 출력된다.The counter outputs Cout (1), Cout (2), and Cout (3) at the third clock become (0, 1, 0), and AND1, AND2, AND3 becomes (0, 0, 0), and the result of this operation is an exclusive OR operation, and "0" is output as part of the OVSF code.

제4 클럭에서 카운터의 출력(Cout(1), Cout(2), Cout(3))은 (1, 1, 0)이 되고, 이 카운트값과 시드값을 논리곱한 연산 결과인 AND1, AND2, AND3은 (1, 0, 0)이 되며, 이 연산결과는 배타적 논리합 연산되어 "1"이 OVSF 코드의 일부로서 출력된다.The counter outputs Cout (1), Cout (2), and Cout (3) at the fourth clock become (1, 1, 0), and AND1, AND2, AND3 becomes (1, 0, 0), and the result of this operation is an exclusive OR operation, and "1" is output as part of the OVSF code.

제5 클럭에서 카운터의 출력(Cout(1), Cout(2), Cout(3))은 (0, 0, 1)이 되고, 이 카운트값과 시드값을 논리곱한 연산 결과인 AND1, AND2, AND3은 (0, 0, 1)이 되며, 이 연산결과는 배타적 논리합 연산되어 "1"이 OVSF 코드의 일부로서 출력된다.The counter outputs Cout (1), Cout (2), and Cout (3) at the fifth clock are (0, 0, 1), and AND1, AND2, AND3 becomes (0, 0, 1), and the result of this operation is an exclusive OR operation and " 1 " is output as part of the OVSF code.

제6 클럭에서 카운터의 출력(Cout(1), Cout(2), Cout(3))은 (1, 0, 1)이 되고, 이 카운트값과 시드값을 논리곱한 연산 결과인 AND1, AND2, AND3은 (1, 0, 1)이 되며, 이 연산결과는 배타적 논리합 연산되어 "0"이 OVSF 코드의 일부로서 출력된다.At the sixth clock, the counter outputs Cout (1), Cout (2), and Cout (3) become (1, 0, 1), and AND1, AND2, AND3 becomes (1, 0, 1), and the result of this operation is an exclusive OR operation and " 0 " is output as part of the OVSF code.

제7 클럭에서 카운터의 출력(Cout(1), Cout(2), Cout(3))은 (0, 1, 1)이 되고, 이 카운트값과 시드값을 논리곱한 연산 결과인 AND1, AND2, AND3은 (0, 0, 1)이 되며, 이 연산결과는 배타적 논리합 연산되어 "1"이 OVSF 코드의 일부로서 출력된다.At the seventh clock, the counter outputs Cout (1), Cout (2), and Cout (3) become (0, 1, 1), and AND1, AND2, AND3 becomes (0, 0, 1), and the result of this operation is an exclusive OR operation and " 1 " is output as part of the OVSF code.

그리고 제8 클럭에서 카운터의 출력(Cout(1), Cout(2), Cout(3))은 (1, 1, 1)이 되고, 이 카운트값과 시드값을 논리곱한 연산 결과인 AND1, AND2, AND3은 (1, 0, 1)이 되며, 이 연산결과는 배타적 논리합 연산되어 "0"이 OVSF 코드의 일부로서 출력된다.At the eighth clock, the counter outputs Cout (1), Cout (2), and Cout (3) become (1, 1, 1), and AND1 and AND2 which are the result of the operation of multiplying the count value with the seed value. , AND3 becomes (1, 0, 1), and the result of this operation is an exclusive OR operation, and "0" is output as part of the OVSF code.

이와 같은 방식으로 OVSF 코드 출력 (0 1 0 1 1 0 1 0)을 얻을 수 있고, 클럭이 계속되면 동일한 코드값이 계속 반복되어 발생된다.In this way, the OVSF code output (0 1 0 1 1 0 1 0) can be obtained, and if the clock continues, the same code value is repeatedly generated.

도 3은 본 발명에 따른 코드발생 방법의 절차를 도시한 순서도이다. 도 3을 참조하면, 단계 S1에서 카운터를 초기화한 후, 단계 S2에서 시드(SEED)값을 입력한다. 이어 단계 S3에서는 매 클럭마다 카운터의 출력과 시드값을 논리곱 연산하고, 각 연산결과를 배타적 논리합 연산한다. 이와 같이 연산된 결과값은 OVSF코드로서 단계 S4에서 출력되고, 단계 S5에서 코드발생 종료여부를 판단한 후 계속 코드를 발생할 경우에 단계 S6에서 카운트값을 증가시킨 후 상기 단계 S3 내지 단계 S6을 반복한다.3 is a flowchart illustrating a procedure of a code generation method according to the present invention. Referring to FIG. 3, after initializing a counter in step S1, a seed value is input in step S2. Subsequently, in step S3, the output and the seed value of the counter are ORed for each clock, and the result of each operation is subjected to an exclusive OR. The resultant value calculated as described above is output in step S4 as an OVSF code. After determining whether the code has been generated in step S5, if the code continues to be generated, the count value is increased in step S6, and the steps S3 to S6 are repeated. .

한편, 광대역 코드분할 다중접속방식(Wideband CDMA)은 낮은 전송 속도에서부터 매우 높은 전송속도까지 다양한 전송 속도를 지원하여야 한다. 즉, 광대역 코드분할 다중접속방식은 다양한 확산 계수를 가지는 OVSF 코드를 필요로 한다. 도 1에 도시된 본 발명의 회로는 하나의 회로로 다양한 확산 계수를 가지는 OVSF 코드를 얻을 수 있다. 만일, 확산 계수가 64(n=6), 16(n=4), 4(n=2)인 OVSF 코드가 필요한 경우, n이 6인 OVSF 발생회로를 제작한 후, 동일한 OVSF 발생회로에 시드값만 다른 방식으로 입력하므로써 확산 계수가 64, 16, 4인 OVSF 코드를 발생시킬 수 있다.On the other hand, wideband code division multiple access (Wideband CDMA) has to support a variety of transmission rates from a low transmission rate to a very high transmission rate. That is, the wideband code division multiple access method requires an OVSF code having various spreading coefficients. The circuit of the present invention shown in FIG. 1 can obtain an OVSF code having various spreading coefficients in one circuit. If OVSF codes with spreading coefficients of 64 (n = 6), 16 (n = 4), and 4 (n = 2) are required, an OVSF generating circuit with n of 6 is fabricated and then seeded in the same OVSF generating circuit. By inputting the values differently, OVSF codes with spreading coefficients of 64, 16, and 4 can be generated.

예컨대, 확산계수가 64인 OVSF발생기를 이용하여을 얻는 방법은 SEED(6)부터 SEED(1)까지 (1 0 0 0 1 1)로 주면 되고,를 얻기 위해선 SEED의 상위 4 비트(SEED(6)~SEED(3))에 9를 넣어주고 하위 2 비트(SEED(2),SEED(1))를 0으로 채워주면 된다. 즉, SEED(6)~SEED(1)을 (1 0 0 1 0 0)로 주면 된다. 같은 방식으로를 얻기 위해선 시드값의 상위 2 비트에 3을 넣어주고, 하위 4 비트를 0으로 채워주면 된다. 즉, SEED(6)~SEED(1)을 (1 1 0 0 0 0)로 주면 된다.For example, using an OVSF generator with a diffusion coefficient of 64 The way to get is from (1 0 0 0 1 1) from SEED (6) to SEED (1), In order to obtain, put 9 in the upper 4 bits of SEED (SEED (6) ~ SEED (3)) and fill the lower 2 bits (SEED (2), SEED (1)) with 0. That is, SEED (6) to SEED (1) may be given as (1 0 0 1 0 0). In the same way To get, we put 3 in the upper 2 bits of the seed and fill the lower 4 bits with 0. That is, SEED (6) to SEED (1) may be given as (1 1 0 0 0 0).

이와 같이 본 발명의 OVSF 코드 발생회로는 여러 가지의 확산계수를 가지는 OVSF 코드를 동일한 하드웨어를 이용하여 구현할 수 있으므로, 각각의 확산계수를 갖는 OVSF코드 발생회로를 개별적으로 구현할 경우보다 하드웨어의 크기를 줄일 수 있다.As described above, since the OVSF code generating circuit of the present invention can implement OVSF codes having various diffusion coefficients using the same hardware, the hardware size can be reduced compared to the case of separately implementing the OVSF code generating circuits having the respective diffusion coefficients. Can be.

이상에서 살펴 본 바와 같이 본 발명은, OVSF 코드 발생기 회로를 구성함에 있어서 매우 단순화된 회로를 사용함으로써, 기존의 방식에 비하여 연산량을 줄이거나 데이터를 저장하기 위한 하드웨어의 크기를 줄일 수 있는 효과가 있다. 특히, 하나의 OVSF 코드 발생기를 이용하여 다양한 확산 계수를 가지는 OVSF 코드를 발생시킬 수 있으므로, 회로의 제작에 필요한 하드웨어의 크기 및 전력 손실을 줄일 수 있다.As described above, the present invention uses an extremely simplified circuit in constructing the OVSF code generator circuit, thereby reducing the amount of computation or the size of hardware for storing data, compared to the conventional method. . In particular, since one OVSF code generator can be used to generate OVSF codes having various spreading coefficients, it is possible to reduce the size and power loss of hardware required for fabrication of the circuit.

Claims (3)

n개의 시드값을 입력받아 N=2n확산계수의 직교가변확산계수(OVSF) 코드들 발생하기 위한 회로에 있어서,In a circuit for receiving n seed values and generating orthogonal variable spreading factor (OVSF) codes of N = 2 n diffusion coefficients, n비트 카운터;n bit counter; 상기 카운터의 n비트 출력과 상기 n개의 시드값을 하나씩 입력받아 각각 논리곱 연산하는 n개의 연산수단;N calculation means for receiving the n-bit output of the counter and the n seed values one by one and performing logical AND operation on each of the counters; 상기 연산수단의 출력을 배타적 논리합 연산하여 OVSF코드를 발생하는 배타적 오아게이트를 포함하는 직교가변확산계수(OVSF) 코드 발생회로.And an exclusive oragate for generating an OVSF code by performing an exclusive OR operation on the output of the computing means. 제1항에 있어서, 상기 n비트 카운터는 바이너리 업 카운터인 것을 특징으로 하는 직교가변확산계수(OVSF) 코드 발생회로.The orthogonal variable diffusion coefficient (OVSF) code generation circuit according to claim 1, wherein the n-bit counter is a binary up counter. 제1항에 있어서, 상기 코드 발생회로는 최대 확산계수의 OVSF코드를 발생하기 위한 하드웨어를 구성한 후 시드값을 달리 입력하므로써 다양한 확산계수의 OVSF코드를 발생할 수 있도록 된 것을 특징으로 하는 직교가변확산계수(OVSF) 코드 발생회로.The orthogonal variable diffusion coefficient of claim 1, wherein the code generation circuit is configured to generate OVSF codes having various diffusion coefficients by inputting different seed values after configuring hardware for generating an OVSF code having a maximum diffusion coefficient. (OVSF) code generation circuit.
KR1019990016533A 1999-05-10 1999-05-10 Circuit for generating Orthogonal Variable Spreading Factor codes KR100319643B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019990016533A KR100319643B1 (en) 1999-05-10 1999-05-10 Circuit for generating Orthogonal Variable Spreading Factor codes

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019990016533A KR100319643B1 (en) 1999-05-10 1999-05-10 Circuit for generating Orthogonal Variable Spreading Factor codes

Publications (2)

Publication Number Publication Date
KR20000073311A true KR20000073311A (en) 2000-12-05
KR100319643B1 KR100319643B1 (en) 2002-01-09

Family

ID=19584421

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019990016533A KR100319643B1 (en) 1999-05-10 1999-05-10 Circuit for generating Orthogonal Variable Spreading Factor codes

Country Status (1)

Country Link
KR (1) KR100319643B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040009939A (en) * 2002-07-26 2004-01-31 엘지전자 주식회사 Direct generation apparatus of channelization code
KR100424628B1 (en) * 2001-12-12 2004-03-24 삼성전자주식회사 Apparatus and method for generating spreading code in mobile communication system
US7643638B2 (en) 2001-04-06 2010-01-05 Interdigital Technology Corporation System for generating pseudorandom sequences

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100463512B1 (en) * 2000-03-13 2004-12-29 엘지전자 주식회사 Method and apparatus for finding Walsh index of communication system receiver

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7643638B2 (en) 2001-04-06 2010-01-05 Interdigital Technology Corporation System for generating pseudorandom sequences
KR100424628B1 (en) * 2001-12-12 2004-03-24 삼성전자주식회사 Apparatus and method for generating spreading code in mobile communication system
KR20040009939A (en) * 2002-07-26 2004-01-31 엘지전자 주식회사 Direct generation apparatus of channelization code

Also Published As

Publication number Publication date
KR100319643B1 (en) 2002-01-09

Similar Documents

Publication Publication Date Title
Kim et al. A carry-free 54b/spl times/54b multiplier using equivalent bit conversion algorithm
EP2827516B1 (en) Scrambling code generation method, apparatus and scrambling code processing apparatus
KR100319643B1 (en) Circuit for generating Orthogonal Variable Spreading Factor codes
US6529546B2 (en) Acquisition of a spread-spectrum signal using counters
US6173009B1 (en) State calculation circuit for discrete linear state space model
US6275558B1 (en) Circuit and method for arbitrarily shifting M-sequence
US6981010B1 (en) System and method for generating psuedo-noise sequences
US7003536B2 (en) Reduced complexity fast hadamard transform
KR100308887B1 (en) Layered orthogonal code generator and generating method
US7729235B2 (en) Method and apparatus for OVSF code generation
KR101318992B1 (en) Modulo n calculation method and apparatus thereof
US7173900B1 (en) Method and apparatus for chip generation of a chip sequence
US7606851B2 (en) Correlator having user-defined processing
RU2299460C1 (en) Modulus multiplier by two
US20040131009A1 (en) Method and low consumption device for parallel generating channelization codes for CDMA transmissions, in particular WH and OVSF codes
US20040015527A1 (en) Efficient pseudo-noise sequence generation for spread spectrum applications
KR100307705B1 (en) Layered orthogonal code generation apparatus and method
US6910056B1 (en) Method and apparatus for implementing a multi-step pseudo random sequence generator
Kim et al. Efficient implementation of ovsf code generator for umts systems
KR100307702B1 (en) Digital match filter for acquisition code
KR960003101B1 (en) Walsh-hadamard generator
KR100292067B1 (en) Cell for discrete time cellular neural networks
KR100771598B1 (en) Method generating walsh code and generator therefor
KR100195207B1 (en) Multiplier using multiply domain translation
KR20090077334A (en) Apparatus and method for efficiently generating ovsf code using 2-stage scheme in wireless communication system

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee