ES2240114T3 - Aparato y metodo para generar codigos de aleatorizacion en el sistema umts de comunicaciones moviles. - Google Patents

Aparato y metodo para generar codigos de aleatorizacion en el sistema umts de comunicaciones moviles.

Info

Publication number
ES2240114T3
ES2240114T3 ES00942496T ES00942496T ES2240114T3 ES 2240114 T3 ES2240114 T3 ES 2240114T3 ES 00942496 T ES00942496 T ES 00942496T ES 00942496 T ES00942496 T ES 00942496T ES 2240114 T3 ES2240114 T3 ES 2240114T3
Authority
ES
Spain
Prior art keywords
randomization
code
sequence
codes
generator
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.)
Expired - Lifetime
Application number
ES00942496T
Other languages
English (en)
Inventor
Jae-Yoel Kim
Hee-Won C/O Samsung Elect. Co. Ltd. Kang
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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=19599971&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=ES2240114(T3) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Application granted granted Critical
Publication of ES2240114T3 publication Critical patent/ES2240114T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J13/00Code division multiplex systems
    • H04J13/0007Code type
    • H04J13/0022PN, e.g. Kronecker
    • H04J13/0025M-sequences
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K3/00Circuits for generating electric pulses; Monostable, bistable or multistable circuits
    • H03K3/84Generating pulses having a predetermined statistical distribution of a parameter, e.g. random pulse generators
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J13/00Code division multiplex systems
    • H04J13/0007Code type
    • H04J13/0022PN, e.g. Kronecker
    • H04J13/0029Gold
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J13/00Code division multiplex systems
    • H04J13/10Code generation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J13/00Code division multiplex systems
    • H04J13/10Code generation
    • H04J13/102Combining codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J13/00Code division multiplex systems
    • H04J13/10Code generation
    • H04J13/102Combining codes
    • H04J13/107Combining codes by concatenation

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Error Detection And Correction (AREA)
  • Developing Agents For Electrophotography (AREA)
  • Surface Acoustic Wave Elements And Circuit Networks Thereof (AREA)
  • Absorbent Articles And Supports Therefor (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

Un generador de códigos de aleatorización, que comprende: un primer generador de m-secuencias (1050) para generar una primera m-secuencia utilizando una primer memoria de registros (1040) que tiene una pluralidad de primeros registros con los primeros valores del registro de desplazamiento ai, en donde i = 0 a c-1, y en donde c es el numero total de primeros registros; un segundo generador de m-secuencias (1060) para generar una segunda m-secuencia utilizando una segunda memoria de registro de desplazamiento (1045) que tiene una pluralidad de segundos registros con unos segundos valores del registro de desplazamiento i = 0 a c-1, en donde c es el numero total de segundos registros; un controlador para controlar los valores de máscara KLi; una sección de enmascaramiento (1000) para enmascarar los primeros valores del registro de desplazamiento ai con los valores de máscara KLi, para generar una tercera m-secuencia, en la que i = 0 a c-1; un primer sumador (1030) para sumar la primera m- secuencia y la segunda m-secuencia para generar un código primario de aleatorización; y un segundo sumador (1032) para sumar la tercera m- secuencia y la segunda m-secuencia para generar un código secundario de aleatorización, en el que la sección de enmascaramiento está adaptada para desplazar la primera m-secuencia cíclicamente L veces, para generar un código secundario de aleatorización de orden L del código primario de aleatorización, caracterizado porque tiene: un controlador para controlar los valores de la máscara KLi, un código primario de aleatorización de orden K que un código Gold de orden ((K-1)*M+K), en donde M es el numero total de códigos secundarios de aleatorización para un código primario de aleatorización, y en donde K

Description

Aparato y método para generar códigos de aleatorización en el sistema UMTS de comunicaciones de móviles.
La presente invención está relacionada en general con un aparato y método para generar códigos de aleatorización en un sistema de comunicaciones de móviles, y más particularmente con un aparato y método para generar un código de aleatorización plural utilizando códigos de enmascaramiento.
El sistema de comunicaciones de móviles de acceso múltiple por división de códigos (de ahora en adelante denominado como sistema "CDMA"), utiliza códigos de aleatorización con el fin de separar las estaciones base. El sistema europeo W-CDMA UMTS (sistema universal de telecomunicaciones de móviles) genera múltiples códigos de aleatorización clasificados en un grupo plural de códigos de aleatorización de una longitud predeterminada. Como método para incrementar la capacidad además de la separación de las estaciones base, el cual es el objetivo de utilización de los códigos de aleatorización en el sistema CDMA, los códigos ortogonales para los múltiples grupos de códigos de aleatorización se utilizan para separar los canales. Es decir, cuando todos los códigos ortogonales para la separación de canales se han utilizado para un grupo de códigos de aleatorización, el sistema de comunicaciones de móviles puede utilizar un segundo grupo de códigos de aleatorización, para incrementar el número de enlaces de comunicaciones disponibles. El sistema de comunicaciones de móviles UMTS utiliza una secuencia Gold con una longitud de 2^{18}-1 como códigos de aleatorización, con el fin de tener múltiples códigos de aleatorización (un código primario de aleatorización, y múltiples códigos secundarios de aleatorización en una estación base), constituidos por los múltiples grupos de códigos de aleatorización. La secuencia Gold con una longitud de 2^{18}-1 incluye un grupo de 2^{18}-1 códigos Gold distintos. Las secuencias Gold del mismo grupo tienen una excelente característica de correlación entre sí. En este caso, la secuencia Gold con una longitud de 2^{18}-1 está dividida en 38400 segmentos que se utilizan repetidamente para la aleatorización.
Cada estación base en los sistemas de comunicaciones de móviles UMTS tiene un código exclusivo de aleatorización denominado "código primario de aleatorización", que se utiliza para permitir que los terminales diferencien cada estación base con respecto a otras estaciones base en el sistema. Así mismo, cada código exclusivo de aleatorización utilizado para el ensanchamiento (aleatorización) de las señales de los canales del enlace descendente de cada una de las estaciones base se denomina como "código primario de aleatorización", y uno de los grupos de códigos de aleatorización se utiliza para ensanchar los canales de datos del enlace descendente en caso de que los códigos ortogonales no estén disponibles, utilizando el código primario de aleatorización, denominado como "código secundario de aleatorización"). La estación base utiliza sus códigos exclusivos primarios de aleatorización para ensanchar (aleatorización) las señales comunes de los canales de control, transmitidas a todas las estaciones móviles con el código ortogonal correspondiente, y para ensanchar (aleatorización) las señales de los canales de datos transmitidos a las estaciones de comunicaciones en curso con los códigos ortogonales correspondientes, los cuales están asignados a cada una de las señales de los canales de datos para la separación de los canales del enlace descendente. La estación base tiene sus códigos primarios exclusivos de aleatorización con el fin de la estación móvil pueda discriminar la estación base de las adyacentes. Es decir, el numero de códigos primarios de aleatorización tiene que ser lo suficientemente grande, por ejemplo, 512, para impedir que la estación móvil pueda detectar concurrentemente las señales de las estaciones base que compartan los mismos códigos primarios de aleatorización. Así pues, las estaciones base adyacentes individuales utilizan distinto códigos primarios de aleatorización entre los 512 códigos primarios de aleatorización. Cuando no exista ningún código ortogonal con un código primario de aleatorización a asignar para la separación de canales, la estación base individual utilizará un código secundario de aleatorización seleccionado a partir sus múltiples grupos de códigos secundarios de aleatorización, correspondientes a los códigos primarios de aleatorización utilizados.
Una unidad a modo de ejemplo que utiliza los múltiples códigos de aleatorización es un enlace descendente en el sistema UMTS. Se observará que para los fines de la ilustración, el término "código de aleatorización" es intercambiable con el término de "código Gold" o "secuencia Gold", indicando el mismo código que el código de aleatorización.
La figura 1 es un diagrama esquemático que muestra la estructura de un transmisor de enlace descendente en el sistema de comunicaciones de móviles UMTS.
Con referencia a la figura 1, al recibir un canal de control físico dedicado DPCCH y los canales de datos físicos dedicados DPDCH1, ... ,y DPDCH_{N}, los cuales son previamente codificados y entrelazados en los canales, los demultiplexores 100 - 104 (correspondientes en numero al numero de canales de datos físicos N más uno para el DPCCH) dividen el canal de control físico dedicado DPCCH y los canales de datos físicos dedicados DPDCH1, ... , y DPDCHN en los canales I (en fase) y Q (en cuadratura). Los canales I y Q que se obtienen separadamente a la salida del demultiplexor 101 son llevados a los multiplicadores 110 y 111, respectivamente. Los multiplicadores 110 y 111 multiplican los canales I y Q por un código ortogonal 1 para la separación de canales, respectivamente, y envía la salida a un aleatorizador 120. De forma similar, los canales I y Q separadamente que salen de la salida de los demultiplexores 102 a 104 se someten a la misma operación según se ha descrito anteriormente, y son llevados a los N aleatorizadores 124 a 128, respectivamente. A continuación, el generador 100 del grupo de códigos de aleatorización genera los códigos secundarios de aleatorización correspondientes a los aleatorizadores 120, 124 hasta 128, y los suministra a los correspondientes aleatorizadores. En este caso, los aleatorizadores 120, 124 hasta 128 multiplican las señales de salida de los correspondientes multiplicadores por las señales de salida del generador 100 del grupo de códigos de aleatorización en un modo complejo, para dar salida a las partes reales de las señales aleatorizadas hasta un sumador 130, y las partes imaginarias de las señales aleatorizadas a un sumador 135. El sumador 130 suma las partes reales de las señales aleatorizadas de los aleatorizadores 120, 124 a 128, mientras que los sumadores 135 suman las partes imaginarias.
La figura 2 es un diagrama de bloques esquemático del generador 100 del grupo de códigos de aleatorización que se muestra en la figura 1, el cual genera concurrentemente los múltiples grupos de códigos de aleatorización. Aunque es un hecho que solo tienen que utilizarse los códigos primarios de aleatorización para los canales de control y los canales de datos, pueden ser utilizados los códigos secundarios de aleatorización en lugar de los códigos primarios de aleatorización, para incrementar el número de enlaces disponibles de comunicaciones. Por ejemplo, si la estación A utiliza el código primario de aleatorización B con los códigos ortogonales disponibles C-H, y todos los códigos ortogonales C-H se han asignado a los distintos canales, no existirán más códigos ortogonales disponibles que puedan ser asignados a los nuevos canales si un nuevo terminal necesita comunicar con la estación base. En dicho caso, en lugar de utilizar el código primario de aleatorización A, puede ser utilizado el código secundario Z de aleatorización en lugar del código primario de aleatorización A para los nuevos canales, y los códigos ortogonales C-H pueden entonces ser asignados a los nuevos canales debido a que los nuevos canales utilizan el código secundario de aleatorización Z en lugar del código primario de aleatorización A. Así pues, los nuevos canales pueden ser diferenciados con respecto a los canales originales que utilizaron los códigos ortogonales C-H debido a que los nuevos canales utilizan el código secundario de aleatorización Z en lugar del código primario A. Así pues, la estación base tiene que ser capaz de generar múltiples grupos de códigos de aleatorización.
Con referencia a la figura 2, el generador normal 100 del grupo de códigos de aleatorización incluye una pluralidad de generadores de secuencia Gold 201 y una pluralidad de retardos 203 correspondientes a los generadores de secuencia Gold 201. Al recibir la información de control sobre los códigos de aleatorización desde una capa superior, los generadores de secuencia Gold 201 generan los códigos de aleatorización, es decir, los códigos de secuencia Gold basados en la información de control y dando salida a los códigos de aleatorización generados que tienen una componente del canal I. Los retardos 203 retardan los códigos de aleatorización con la componente del canal I para un número predeterminado de segmentos, y generando los códigos de aleatorización retardados que tienen una componente del canal Q.
La figura 3 es un diagrama esquemático que muestra la estructura de un receptor de enlace descendente en el sistema de comunicaciones de móviles UMTS. Para los canales de control común del enlace descendente, el receptor tiene que des-aleatorizar las señales de control comunes del enlace descendente que hayan sido aleatorizadas con los códigos primarios de aleatorización. Simultáneamente, los canales de datos del enlace descendente, el receptor tiene también que des-aleatorizar la señal aleatorizada con el código secundario de aleatorización cuando el canal de datos del enlace descendente utilice el código secundario de aleatorización. Así pues, el receptor tiene que tener una capacidad de generación de múltiples códigos de aleatorización.
Con referencia a la figura 3, al recibir señales del transmisor tal como se muestra en las figuras 1 y 2, las componentes del canal I y canal Q de las señales recibidas son llevadas a los des-aleatorizadores 310 y 315, respectivamente. El generador de grupos de códigos de aleatorización 300 genera concurrentemente los códigos de aleatorización correspondientes a los respectivos canales y obteniéndolos a la salida para ser llevados a los des-aleatorizadores 310 y 315. A continuación, los des-aleatorizadores 310 y 315 multiplican las señales recibidas I+jQ por los conjugados de los códigos de aleatorización recibidos del generador de grupos de códigos de aleatorización 300, para des-aleatorizar las señales recibidas, y siendo llevada la salida de las componentes de los canales I y Q de las señales des-aleatorizadas a los correspondientes multiplicadores 320, 322, 324 y 326. En este caso, los códigos ortogonales asignados a los respectivos canales son des-ensanchados en los multiplicadores 320, 322, 324 y 326, y llevando su salida a los correspondientes demultiplexores 330 y 350. Los demultiplexores 330 y 350 demultiplexan las componentes des-ensanchadas de los canales I y Q, respectivamente.
La figura 4 es un diagrama de bloques esquemático del generador de grupos de códigos de aleatorización 300 que se muestra en la figura 3, el cual genera concurrentemente múltiples grupos de códigos de aleatorización. Aunque el generador de grupos de códigos de aleatorización 300 es para utilizar de hecho los códigos primarios de aleatorización para los canales de control comunes, puede utilizar también los códigos secundarios de aleatorización para los canales usados dependiendo de los usuarios, tales como los canales de datos, en el cado de una falta de códigos ortogonales disponibles. Así pues, la estación móvil tiene que ser capaz de generar múltiples grupos de códigos de
aleatorización.
Con referencia a la figura 4, el generador de grupos de códigos de aleatorización 300 del receptor incluye una pluralidad de generadores de secuencia Gold 401 y una pluralidad de retardos 403, correspondientes a los generadores de secuencias Gold 401. Al recibir la información de control en torno a los códigos de aleatorización para múltiples canales de una capa superior, los generadores de información de control 401 generan códigos de secuencias Gold correspondientes a la información de control, y obteniendo a su salida los códigos de secuencias Gold generados para tener una componente del canal I. Los retardos 403 retardan los códigos de secuencias Gold con la componente del canal I para un número predeterminado de segmentos, para generar los códigos de secuencias Gold de la componente del canal Q.
La figura 5 es un diagrama esquemático que muestra la estructura de los generadores de secuencias Gold mostrados en las figuras 2 y 4.
Con referencia a la figura 5, la secuencia Gold se genera normalmente a través de una suma binaria de dos secuencias m distintas. Un registro de desplazamiento que genera la m-secuencia superior está implementado con un generador polinómico definido como f(x) = x^{18} + x^{7} + 1, y un registro de desplazamiento que genera la m-secuencia inferior, que está implementado con un generador polinómico definido como f(x) = x^{18} + x^{10} + x^{7} + x^{5} + 1.
En la presente especificación estándar presente del sistema UMTS, no existe ninguna descripción para la aleatorización de la numeración de códigos y su generación. En consecuencia, a la vista de la especificación estándar del sistema UMTS, el receptor y el transmisor requieren muchos generadores de códigos de aleatorización anteriormente descritos, para generar múltiples códigos de aleatorización y utilizando por tanto distintos generadores para los códigos individuales de aleatorización, lo cual conduce a un incremento en la complejidad de los circuitos físicos. Adicionalmente, al utilizar las secuencias Gold como códigos de aleatorización, la complejidad de los circuitos físicos puede depender de la forma en que los códigos de aleatorización estén divididos en códigos primarios y secundarios de aleatorización, y dependiente de la forma en la que se numeren los códigos de aleatorización.
El documento WO99/26369A expone un dispositivo para generar una pluralidad de series de códigos Gold simultáneamente para su utilización en los sistemas CDMA y un radiorreceptor CDMA que comprende dicho dispositivo.
El documento US-A-4320513 expone un circuito eléctrico para la producción de varios códigos diferentes, los cuales pueden ser utilizados en sistemas que utilicen la tecnología SSMA para el direccionamiento de las estaciones individuales o canales de una red eléctrica de información.
Es por tanto un objeto de la presente invención el proporcionar un aparato para generar códigos de aleatorización agrupados en unidades de una longitud predeterminada utilizando funciones de máscara, minimizando por tanto la complejidad de los circuitos físicos.
Es otro objeto de la presente invención el proporcionar un aparato para generar códigos de aleatorización, incluyendo un código primario de aleatorización y los códigos secundarios de aleatorización asociados para ser utilizados en lugar del código primario de aleatorización, para incrementar el número de enlaces de comunicaciones disponibles. Los códigos de aleatorización se generan mediante la utilización de funciones de máscara. Es otro objeto adicional de la presente invención el proporcionar un aparato y método para generar un código primario de aleatorización y códigos secundarios asociados de aleatorización. En una realización de la presente invención, se utiliza un primer registro de desplazamiento para generar una primera m-secuencia y utilizándose un segundo registro de desplazamiento para generar una segunda m-secuencia. La primera m-secuencia es sumada con la segunda m-secuencia para generar un código primario de aleatorización. Para generar los segundos códigos asociados de aleatorización, los bits del primer registro de desplazamiento son introducidos en N secciones de enmascarado, las cuales utilizan las funciones de enmascaramiento para desplazar cíclicamente la primera m-secuencia. Las salidas de cada una de las seccione de enmascaramiento se suman con la segunda m-secuencia, para generar N códigos secundarios de aleatorización. Es otro objeto además de la presente invención, el proporcionar un esquema de numeración de los códigos de aleatorización parda la simple generación de los códigos de aleatorización mediante un generador de códigos de aleatorización.
Para conseguir los objetos anteriores de la presente invención, se proporciona un aparato para generar un código primario de aleatorización asignado a una estación base y múltiples códigos secundarios de aleatorización con dos generadores de m-secuencia, teniendo cada uno una pluralidad de registros de desplazamiento concatenados, incluyendo el método las etapas de: generar una primera m-secuencia, mediante el primer generador de m-secuencia, teniendo una generación polinómica dada, una segunda m-secuencia mediante un generador de m-secuencia que tenga una generación polinómica diferente de la primera generación polinómica de m-secuencia; sumar la salida del primer generador de m-secuencia y la salida del segundo generador de m-secuencia, para generar el primer código primario de aleatorización, para generar el código primario de aleatorización; recibir todos los valores de los primeros registros de m-secuencia; multiplicar los primeros valores del registro de m-secuencia con un valor de máscara, que es el código secundario de determinación de aleatorización y sumando los valores multiplicados en cada señal de reloj; y generando el código secundario de orden n mediante la adición del valor sumado y la salida del segundo generador de m-secuencia.
En otro aspecto de la presente invención, se proporciona un aparato para generar múltiples códigos de aleatorización en un sistema de comunicaciones de móviles CDMA, el cual genera un código primario de aleatorización asignado a una estación base y múltiples códigos secundarios de aleatorización, incluyendo el aparato: un primer generador de m-secuencia que tiene una pluralidad de registros de desplazamiento concatenados en serie para generar una primera m-secuencia; un segundo generador de m-secuencia que tiene una pluralidad de registros de desplazamiento concatenados en serie, para generar una segunda m-secuencia; un primer sumador para sumar la primera y segunda secuencias m, para generar el código primario de aleatorización; al menos unas seccione de enmascaramiento para recibir cada uno de los valores (a_{i}) del registro del generador de primera secuencia n, multiplicar los valores del registro y los valores de la máscara (k_{i}), lo cual determina el código secundario de aleatorización, mediante el desplazamiento de la primera m-secuencia con los valores sumados, para generar el código secundario de aleatorización. En otro aspecto adicional de la presente invención, se proporciona un aparato de generación un código de aleatorización de un transmisor del enlace descendente en un sistema de comunicaciones de móviles UMTS, el cual utiliza un código primario de aleatorización para la separación de estaciones base y múltiples códigos secundarios de aleatorización para la separación de los canales, incluyendo el aparato: un primer generador de secuencias m para generar una primera m-secuencia; un segundo generador de m-secuencia, para generar una segunda m-secuencia; un primer sumador para sumar la primera y segunda secuencias m, para generar el código primario de aleatorización; una pluralidad de secciones de enmascaramiento, en las que cada una de las primeras secciones de enmascaramiento efectúan el desplazamiento de la primera m-secuencia; y una pluralidad de segundos sumadores, en el que cada uno de los segundos sumadores es para sumar una de las primeras secuencias m desplazadas con el segunda m-secuencia, en el que la salida de los segundos sumadores generan los múltiples códigos de aleatorización secundarios.
Los anteriores y otros objetos, funciones y ventajas de la presente invención llegarán a ser más evidentes a partir de la siguiente descripción detallada, al considerarse en conjunción con los dibujos adjuntos en los que:
la figura 1 es un diagrama esquemático que muestra la estructura de un transmisor conocido del enlace descendente en un sistema general UMTS de comunicaciones de móviles;
la figura 2 es un diagrama de bloques esquemático de un conocido generador de grupos de códigos de aleatorización mostrado en la figura 1;
la figura 3 es un diagrama de bloques esquemático que muestra la estructura de un conocido receptor del enlace descendente en el sistema general UMTS de comunicaciones de móviles;
la figura 4 es un diagrama de bloques esquemático de un conocido generador de grupos de códigos de aleatorización que se muestra en la figura 3;
la figura 5 es un diagrama detallado que muestra la estructura de un conocido generador de grupos Gold de aleatorización en el sistema general UMTS de comunicaciones de móviles;
la figura 6 es un diagrama que muestra la estructura de un código de aleatorización de acuerdo con una primera realización de la presente invención;
la figura 7 es un diagrama detallado que muestra la estructura de un generador de grupos de códigos de aleatorización de un transmisor de enlace descendente en un sistema UMTS de comunicaciones de móviles, de acuerdo con la primera realización de la invención presente;
la figura 8 es un diagrama detallado que muestra la estructura de un generador de grupos de códigos de aleatorización de un receptor del enlace descendente en un sistema UMTS de comunicaciones de móviles de acuerdo con la primera realización de la presente invención;
la figura 9 es un diagrama que muestra la estructura de un código de aleatorización de acuerdo con una segunda realización de la presente invención;
la figura 10 es un diagrama detallado que muestra la estructura de un generador de grupos de códigos de aleatorización de un transmisor del enlace descendente en un sistema UMTS de comunicaciones de móviles de acuerdo con la segunda realización de la presente invención; y
la figura 11 es un diagrama detallado que muestra la estructura de un generador de grupos de códigos de aleatorización de un receptor del enlace descendente en un sistema UMTS de comunicaciones de móviles, de acuerdo con la segunda realización de la presente invención.
Se describirá más adelante una realización preferida de la presente invención con referencia a los dibujos adjuntos. En la siguiente descripción, no se describen con detalle las funciones o construcciones bien conocidas, puesto que complicarían la invención con detalles innecesarios.
El código Gold utilizado aquí como código de aleatorización se genera a través de la suma binaria de dos secuencias m distintas. Suponiendo que las dos secuencias m tienen una longitud L, según se definen como m1(t) y m2(t), respectivamente, un conjunto de códigos Gold puede comprender L secuencias de Gold distintas con una excelente característica de correlación entre sí. El conjunto de códigos Gold puede estar expresado por la ecuación 1.
[Ecuación 1]G = [m_{1}(t + \tau) + m_{2} (t)|0 \leq \tau \leq L – 1]
en donde t es un número variable en el tiempo, y \tau es un valor de desplazamiento. Tal como se comprende por la ecuación 1, el conjunto de los códigos Gold es un conjunto de todas las secuencias que comprende la suma de la m-secuencia_{1}(t) desplazada cíclicamente \tau veces y la m-secuencia m_{2}(t). Así pues, para el fin de la presente invención, la suma de la m-secuencia m_{1}(t) cíclicamente desplazada \tau veces y la m-secuencia m_{2}(t) estará designada como un código Gold g_{\tau}.. Es decir, g_{\tau}.(t) = m_{1}(t + \tau) + m_{2} (t). Si el periodo del código Gold es 2^{18} - 1, entonces las secuencias m individuales que constituyen el código Gold tendrán también un período de 2^{18}-1. Así pues, la m-secuencia m_{1}(t) puede estar desplazada cíclicamente un máximo de 2^{18}-1 veces, y el numero de elementos en el conjunto de los códigos Gold es igual a 2^{18}-1, que es el valor máximo del desplazamiento cíclico.
El conjunto de códigos Gold utilizados en las realizaciones de la presente invención tiene 2^{18}-1 códigos Gold como elementos, en el que cada uno de los cuales comprende una m-secuencia m_{1}(t) que tiene un generador polinómico definido como f(x) = x^{13} + x^{7} + 1, y una m-secuencia m_{2}(t) con un generador polinómico definido como f(x) = x^{13} + x^{10} + x^{7} + x^{5} +1.
Puede obtenerse una segunda m-secuencia m_{1}(t) desplazada cíclicamente \tau veces mediante la aplicación de funciones de máscara a los valores de la memoria de un registro de desplazamiento que genere la m-secuencia original.
Las realizaciones de la presente invención proporcionan un generador para generar concurrentemente múltiples secuencias de Gold, utilizando las funciones de máscara, y un método para dividir eficientemente el conjunto de secuencias Gold en un conjunto de códigos primarios de aleatorización y un conjunto de códigos secundarios de aleatorización, para reducir el número de funciones de máscara almacenadas en la memoria.
Primera realización
La figura 6 es un diagrama que muestra la estructura de los códigos primarios y secundarios de aleatorización, de acuerdo con una primera realización de la presente invención.
En primer lugar, cuando se selecciona una secuencia Gold a partir de las secuencias de Gold de longitud 2^{18}-1, los primeros 38400 segmentos se utilizan como un código primario de aleatorización, los segundos 38400 segmentos un primer código secundario de aleatorización correspondiente al código primario de aleatorización, los terceros 38400 segmentos a un segundo código secundario de aleatorización correspondiendo al código primario de aleatorización, los cuartos 38400 segmentos a un tercer código secundario de aleatorización, correspondiente al código primario de aleatorización, los quintos 38400 segmentos a un cuarto código secundario de aleatorización correspondiente al código primario de aleatorización, los sextos 38400 segmentos a un quinto código secundario de aleatorización correspondiente al código primario de aleatorización. En este caso, cuando se utilizan los 512 códigos primarios de aleatorización, existirán cinco grupos de códigos secundarios de aleatorización correspondientes a los 512 códigos primarios de aleatorización. Específicamente, 2^{18}-1 (la longitud de los códigos de aleatorización) dividido por 38400 es igual a seis (grupos de códigos de aleatorización). Aparte de los seis grupos de códigos de aleatorización, el primer grupo de códigos de aleatorización se utiliza como códigos primarios de aleatorización y los restantes cinco grupos de códigos de aleatorización se utilizan como códigos secundarios de aleatorización. En esta estructura, si una célula (estación base) utiliza su propio código primario de aleatorización y los códigos secundarios de aleatorización seleccionados aparte de su propio grupo de códigos de aleatorización, entonces los códigos secundarios de aleatorización seleccionados que pertenecen al grupo secundario de aleatorización correspondiente al código primario de aleatorización serán utilizados para los códigos de aleatorización del canal del enlace descendente cuando los códigos ortogonales no estén disponibles con el código primario de aleatorización. Tal como se muestra en la figura 6, una vez que se seleccione el código primario de aleatorización, los códigos secundarios de aleatorización correspondientes al código primario de aleatorización serán también parte de un código Gold, el cual incluirá también al código primario de aleatorización. En este caso, los códigos secundarios de aleatorización se generarán a través de la aplicación de funciones de máscara para los códigos primarios de aleatorización. Este método está adaptado a un generador del grupo de códigos de aleatorización de un transmisor, según se muestra en la figura 7, el cual genera concurrentemente un código primario de aleatorización y múltiples códigos secundarios de aleatorización.
Con referencia a la figura 7, el generador del grupo de códigos de aleatorización 701 comprende un primer generador de m-secuencias 750, que incluye: una memoria superior de registro de desplazamiento (de ahora en adelante denominada como "primera memoria de registro de desplazamiento") 700 (con los registros de 0 a 17) y un sumador 730, un segundo generador de m-secuencias 760, que incluye: una memoria inferior de registro de desplazamiento (de ahora en adelante, denominada como "segunda memoria de registro de desplazamiento") 705 (con los registros 0 a 17) y un sumador 735, una pluralidad de secciones de enmascaramiento 710 a 712, 714 a 716, una pluralidad de sumadores 742 a 744, y una pluralidad de retardos 722 a 724 y 720. La primera memoria de registro de desplazamiento 700 almacena un valor inicial "a_{o}" del registro predeterminado, y la segunda memoria de registro de desplazamiento 705 almacena un valor inicial "b_{o}" del registro predeterminado. Los valores almacenados en cada uno de los registros de la memoria 700 y la memoria 705 pueden cambiar durante cada período de un reloj de entrada (no mostrado). La memoria de registro 700 y 705 almacenan valores binarios de 18 bits (o símbolos) "a_{i}" y "b_{i}", respectivamente (i = 0 a c-1), en donde c = al numero total de registros en las memorias de registro 700 y 705).
El primer generador de m-secuencias 750 genera una primera m-secuencia utilizando la memoria de registro 700 y el sumador 730, el cual es un sumador binario que suma los valores binarios de los registros 0 y 7 de la memoria de registro 700 y da salida a la suma que se suministra al registro 17. El registro 0 de la memoria de registro 700 da salida secuencialmente a valores binarios que forman la primera m-secuencia durante cada período del reloj de entrada. Las seccione de enmascaramiento 710 a 712 almacenan los valores del código de máscara (k^{1}_{i} a k^{N}_{i}) para generar desplazamientos cíclicos de la primera m-secuencia mediante un número predeterminado de segmentos. Los desplazamientos cíclicos se consiguen mediante la multiplicación de los valores del código de máscara por el valor del registro "a_{i}" de la primer memoria de registro de desplazamiento 700, tal como se expresa mediante la siguiente ecuación: \Sigma (k^{L}_{i} x a_{i}) (L = 1 a N). Los valores resultantes se suministran a los sumadores 742 y 744, respectivamente.
El segundo generador de m-secuencias 760 genera una segunda m-secuencia, utilizando la memoria de registro 705 y el sumador 735, el cual es un sumador binario que suma los valores binarios de los registros 0, 5, 7 y 10 de la memoria de registro 705 y dando a su salida la suma en el registro 17. El registro 0 de la memoria de registro 705 da a su salida secuencialmente los valores binarios que forman la segunda m-secuencia durante cada periodo del reloj de entrada. Las secciones de enmascaramiento 714 a 716 almacenan cada una los valores del código de máscara (s^{1}_{i} a s^{N}_{i}) para generar desplazamientos cíclicos de la segunda m-secuencia mediante un número predeterminado de segmentos. Los desplazamientos cíclicos se consiguen mediante la multiplicación de los valores del código de máscara por el valor del registro "b_{i}" de la segunda memoria de registro de desplazamiento 705. Los valores resultantes se suministran a los sumadores 742 y 744, respectivamente. Cada uno de los generadores de m-secuencias 750 y 760 generan una m-secuencia de acuerdo con el correspondiente generador polinómico.
El sumador 740 suma los valores del registro del orden 0 (es decir, los últimos bits) de la primera y segunda memorias de registro de desplazamiento 700 y 705, para generar un código de aleatorización, el cual llega a convertirse en el código primario de aleatorización. Los sumadores 742 y 744 suman un bit generado desde cada una de las secciones de enmascaramiento 710 a 712 conectadas a la tercera memoria de registro de desplazamiento 700 con un bit generado desde las secciones de enmascaramiento 714 a 716 correspondientes a las secciones de enmascaramiento 710 a 712, respectivamente. En otras palabras, la salida de la primera sección de enmascaramiento 710 del primer grupo es sumada con la salida de la primera sección de enmascaramiento 714 del segundo grupo y así sucesivamente, hasta que la salida de la sección de orden N de enmascaramiento 712 del primer grupo sea sumada con la salida de la sección de enmascaramiento de orden N 716 del segundo grupo. Así pues, cada una de las secciones de enmascaramiento 710 - 712 en el primer grupo tiene una sección de enmascaramiento correspondiente en las secciones de enmascaramiento 714 - 716 del segundo grupo. Las salidas de las secciones de enmascaramiento correspondientes se suman conjuntamente en los sumadores 742 - 744, respectivamente. Es decir, las secciones de enmascaramiento individuales tienen un conjugado sobre la base de uno a uno con respecto a la primera y segunda memorias de registro de desplazamiento 700 y 705. Por ejemplo, la primera sección de enmascaramiento 710 de la primera memoria de registro de desplazamiento 700 corresponde a la primera sección de enmascaramiento 714 de la segunda memoria de registro de desplazamiento 705, la sección de enmascaramiento de orden N 712 corresponde a la sección de enmascaramiento de orden N 716, y así sucesivamente. Entre las dos secciones de enmascaramiento conjugadas (es decir, las primeras secciones de enmascaramiento 710 y 714, o las secciones de enmascaramiento de orden N 712 y 716) se encuentra conectado el sumador 742 a 744 que suma la salida de dos bits de las secciones de enmascaramiento, en respuesta al reloj de entrada. En este caso, las señales de salida de los sumadores 742 a 744 tienen una componente del canal I.
El retardo 722 a 724 y 720 retardan las señales del canal I durante varios segmentos predeterminados para generar las respectivas señales del canal Q.
A continuación se expondrá una descripción de una operación de la presente invención tal como se ha construido anteriormente.
Una vez que un valor inicial del código primario de aleatorización se haya aplicado a la primera y segunda memorias de registro de desplazamiento 700 y 705, que tienen cada una 18 registros para desplazar cíclicamente el valor de registro "a_{i}" ó "b_{i}", los valores del registro de orden 0 de la primera y segunda memorias de registro de desplazamiento 700 y 705 son suministradas al sumador 740, y los 18 valores del registro "a_{i}" de la primera memoria de registro de desplazamiento 700 son suministrados a la primera de las secciones de enmascaramiento de orden N 710 a 712, con el fin de generar secuencias desplazadas cíclicamente de los primeros registros de desplazamiento. Mientras tanto, los 18 valores de registro "b_{i}" de la segunda memoria de registro de desplazamiento 705 son suministrados a la primera de las secciones de enmascaramiento de orden N 714 a 716, con el fin de generar secuencias desplazadas cíclicamente de los primeros registros de desplazamiento. A continuación, la primera sección de enmascaramiento 710 enmascara los valores de entrada de la primera memoria (superior) de registro de desplazamiento 700 (todos los 18 bits de los 18 registros en la memoria de registro de desplazamiento 700) con una función de máscara k^{1}_{i} (es decir, \Sigma(k^{1}_{i} x a_{i})) y obteniendo a su salida los valores enmascarados y suministrándolos al sumador 744 para generar el primer código secundario de aleatorización. El enmascaramiento se procesa concurrentemente en cada una de las secciones de enmascaramiento 719 - 712. La sección de enmascaramiento de orden N 712 enmascara los valores de entrada de los primeros registros de desplazamiento (superior) con una función de máscara k^{N}_{i} (es decir, \Sigma(k^{N}_{i} x a_{i})) y dando salida a los valores enmascarados y suministrándolos al sumador 742 para generar el código secundario de orden N de aleatorización. La sección de enmascaramiento de orden N 716 enmascara los valores de entrada de los segundos registros de desplazamiento (inferior) con una función de máscara sin (es decir, \Sigma (s^{N}_{i} x a_{i})) y suministrando los valores enmascarados al sumador 744, para generar el código secundario de aleatorización de orden N. La primera sección de enmascarado 714 enmascara los valores de entrada de la memoria de registros 705 con una función de máscara s^{1}_{i} (es decir, \Sigma(s^{1}_{i} x a_{i})) y suministrando su salida de los valores resultantes al sumador 742 para generar el primer código secundario de aleatorización. Cada una de las secciones de enmascaramiento 710 - 712 enmascaran los valores de entrada de la primera memoria de registro de desplazamiento 700 y proporcionando la salida a los respectivos sumadores 742 - 744. A continuación, el sumador 740 suma los bits de salida de los registros de orden 0 de la primera y segunda memorias de registro de desplazamiento 700 y 705. Estas señales de salida generadas son retardadas inmediatamente en el retardo 720. El sumador 744 suma los bits de salida de las secciones de enmascaramiento de orden N 712 y 716 para generar las señales del canal I, las cuales son suministradas al retardo 724. El retardo 722 retarda las señales del canal I que salen del sumador 744 durante un número predeterminado de segmentos para generar las señales de aleatorización del canal Q. El sumador 742 suma los bits de salida de las primeras secciones de enmascaramiento 710 y 714 para generar las señales del canal I. Estas señales del canal I son inmediatamente retardadas durante un número predeterminado de segmentos en el retardo 722. A continuación, los valores del registro de orden 0 y séptimo de la primera memoria de registro de desplazamiento 700 se suman en el sumador 730, y el valor sumado es introducido en el registro de orden decimoséptimo, conforme los valores del lado izquierdo son desplazados hacia el lado derecho en una unidad, y en el que el registro más del lado izquierdo se rellena nuevamente con el valor de salida del sumador 730. Los valores del registro de orden 0, quinto, séptimo y décimo de la segunda memoria del registro de desplazamiento 705 se suman en el sumador 735, introduciéndose el valor sumado en el decimoséptimo registro, conforme los valores del lado izquierdo son desplazados hacia la derecha en una unidad, y el registro más a la izquierda (es decir, el decimoséptimo registro) con el valor de salida del sumador 735. Este procedimiento es repetido para generar los múltiples códigos de aleatorización.
La figura 8 es un diagrama que muestra un generador de códigos de aleatorización de un receptor para generar concurrentemente un código primario de aleatorización y un código secundario de aleatorización. El receptor tiene solo que utilizar los códigos de aleatorización para un canal de control común y los canales de datos asignados a los mismos, y por tanto necesita un código primario de aleatorización y un código secundario de aleatorización.
Con referencia a la figura 8, una vez que se haya aplicado un valor inicial del código primario de aleatorización a la primera memoria del registro de desplazamiento 840 que tiene 18 registros de desplazamiento superiores y la segunda memoria del registro de desplazamiento 845 con 18 registros de desplazamiento inferiores, los valores de los registros de orden 0 de la primera y segunda memorias de registros de desplazamientos 840 y 845 son introducidos en un sumador 810. La salida del sumador 810 es un código primario de aleatorización. Los 18 valores del registro "a_{i}" de la primera memoria del registro de desplazamiento 840 son introducidos en la sección de enmascaramiento 820. Mientras tanto, los 18 valores del registro "b_{i}" de la segunda memoria del registro de desplazamiento 845 son introducidos en la sección de enmascaramiento 825. A continuación, la sección de enmascaramiento 820 enmascara los valores de entrada del primer registro de desplazamiento con una función de máscara k_{i} (es decir, \Sigma (k_{i} x a_{i})), y dando salida a los valores enmascarados a un sumador 815 para generar el primer código secundario de aleatorización. La sección de enmascaramiento 825 enmascara los valores de entrada del segundo registro de desplazamiento (inferior) con una función de máscara s_{i} (es decir, \Sigma(s_{i} x a_{i})) y dando salida a los valores enmascarados a un sumador 815 para generar el código segundario de aleatorización. A continuación, el sumador 810 suma los bits de salida de los registros de orden 0 de la primera y segunda memorias de los registros de desplazamiento 800 y 805 para generar las señales del código primario de aleatorización del canal I. Estas señales del código primario de aleatorización del canal I son retardadas inmediatamente durante un número predeterminado de segmentos en el retado 830, para generar las señales del código primario de aleatorización del canal Q. El sumador 815 suma los bits de salida de las secciones de enmascaramiento 820 y 825 para generar las señales del código primario de aleatorización del canal I, las cuales son inmediatamente retardadas en un retardo 835. A continuación, los valores del registro de orden 0 y séptimo de los primeros registros de desplazamiento se suman en el sumador 800, y el valor sumado es suministrado al decimoséptimo registro, conforme los valores del lado izquierdo son desplazados hacia el lado derecho en una unidad. Los valores del registro de orden o, quinto, séptimo y décimo de los segundos registros de desplazamiento se suman en el sumador 805, y el valor sumado es suministrado al registro decimoséptimo, conforme los valores del lado izquierdo se desplazan hacia el lado derecho en una unidad. Este procedimiento se repite para generar los múltiples códigos de aleatorización.
El generador de códigos de aleatorización de la primera realización necesita la pluralidad de funciones distintas de enmascaramiento almacenadas en sus secciones de enmascaramiento con el fin de generar cada código secundario de aleatorización, es decir, utiliza 2N funciones de máscaras para generar N códigos de enmascaramiento. En consecuencia, la estructura de los códigos primario y secundario de aleatorización mostrada en la figura 6 permite la implementación del generador de códigos de aleatorización de la estructura del transceptor mostrado en las figuras 7 ú 8, las cuales incluyen además solo 2N funciones de máscara con una muy baja complejidad de los circuitos físicos, para generar los múltiples códigos de aleatorización.
Segunda realización
La figura 9 es un diagrama que muestra la estructura de los códigos primarios y secundarios de aleatorización, de acuerdo con una segunda realización de la presente invención. Mientras que la primera realización enmascara las m-secuencias m_{1}(t) y m_{2}(t) para generar los códigos de aleatorización, la segunda realización incluye el desplazamiento cíclico de la m-secuencia m_{2}(t) solo distinto a la m-secuencia m_{1}(t) para generar las secuencias de aleatorización. Es decir, esta realización está perfectamente expresada por la ecuación 1.
Con referencia a la figura 9, cuando los M códigos secundarios de aleatorización corresponden a un código primario de aleatorización, los códigos de Gold de los ordenes primero, (M+2), (2M + 3), ..., ((K-1)*M+K), ..., y (511M + 512), se utilizan como códigos primarios de aleatorización. Los códigos secundarios de aleatorización correspondientes al código de Gold de orden ((K-1)*M+K) utilizado como código primario de aleatorización de orden (K), están compuestos por códigos de Gold M, es decir, ((K-1)*M+(K+1)), ((K-1)*M+(K+2))..y por los códigos de Gold (K*M+K). En este caso, con la utilización de 512 códigos primarios de aleatorización, cada uno de los conjuntos de códigos secundarios de aleatorización correspondientes a los 512 códigos primarios de aleatorización está compuesto por los M códigos secundarios de aleatorización. En esta estructura, si una célula utiliza uno de los códigos primarios de aleatorización, entonces los códigos secundarios de aleatorización que pertenezcan al grupo de códigos secundarios de aleatorización correspondientes al código primario de aleatorización serán utilizados cuando tengan que utilizarse los códigos secundarios de aleatorización. Tal como se muestra en la figura 9, una vez que se haya seleccionado el código primario de aleatorización, se generarán los códigos secundarios de aleatorización correspondientes al código primario de aleatorización, mediante la suma de las primeras m-secuencias desplazadas cíclicamente y la segunda m-secuencia. En este caso, los códigos secundarios de aleatorización se generarán a través de la aplicación de funciones de máscara a las secuencias en la primera memoria de registros de desplazamiento. Este método está adaptado a un generador de códigos de aleatorización de un transmisor, tal como se muestra en la figura 10, el cual genera concurrentemente un código primario de aleatorización y múltiples códigos secundarios de aleatorización.
Con referencia a la figura 10, el primer generador de m-secuencias 1050 comprende una primera memoria de registro de desplazamiento 1040 (con los registros 0 a 17) y un sumador 1010 para sumar las salidas de los registros 0 y 7. El segundo generador de m-secuencias 1060 comprende una segunda memoria de registros 1045 (con los registros 0 a 17) y un sumador 1015 para sumar las salidas de los registros 0, 5, 7 y 10. El generador de códigos de aleatorización mostrado en la figura 10 comprende los dos generadores de m-secuencias 1050 y 1060, una pluralidad de secciones de enmascaramiento 1000 a 1005, una pluralidad de sumadores 1032 a 1034 y 1030, y una pluralidad de retardos 1022 a 1024 y 1020. La primera memoria de registro de desplazamiento 1040 almacena un valor inicial "a_{o}" del registro predeterminado, y la segunda memoria de registro de desplazamiento 1045 almacena un valor inicial "b_{o}" del registro predeterminado. La memoria del registro de desplazamiento 1040 y 1045 pueden almacenar 18 valores binarios (bits o símbolos) "a_{i}" y "b_{i}" (0 \leq i \leq 17). Los dos generadores de m-secuencias 1050 y 1060 generan bits de secuencias de salida en serie respectivas de acuerdo con cada uno de los polinomios de la generación en cada periodo del reloj de entrada (no mostrado). La segunda realización de la presente invención utiliza una longitud del código Gold de 38400 símbolos para generar los códigos de aleatorización. Así pues, las memorias de los registros de desplazamiento 1040 y 1045 pueden ser repuestas a cero con el valor inicial cuando cada una de las memorias de los registros 1040 y 1045 suministren a su salida una secuencia que tenga una longitud de 38400 símbolos.
El primer generador de m-secuencias 1050 genera la primera m-secuencia utilizando la memoria de registro 1040 y el sumador 1010, el cual es un sumador binario que suma los valores binarios de los registros 0 y 7 de la memoria de registro 1040 y da a su salida una suma que es suministrada al registro 17. El registro 0 de la memoria de registro 1040 da salida secuencialmente a valores binarios que forman la primera m-secuencia durante cada periodo del reloj de entrada. Las secciones de enmascarado 1000 a 1005 almacenan los valores del código de enmascaramiento (k^{1}_{i} a k^{N}_{i}) para generar los desplazamientos cíclicos de la primera m-secuencia mediante un número predeterminado de segmentos. Los desplazamientos cíclicos se obtienen mediante la multiplicación de los valores de los códigos de máscara mediante el valor del registro "a_{i}" de la primera memoria de registro de desplazamiento 1040, según se expresa en la ecuación siguiente: \Sigma (K^{L}_{i} x a_{i}). Los valores resultantes se suministran a los sumadores 1032 y 1034, respectivamente. En las realizaciones preferidas de la presente invención, cada uno de los valores del código de máscara (k^{l}_{i} a k^{N}_{i}) crean una nueva secuencia, la cual es una primera m-secuencia desplazada cíclicamente de 1 a N veces. Así pues, cada uno de los valores del código de máscara están determinados por el número deseado de desplazamientos cíclicos.
El sumador 1030 suma los valores del registro de orden 0 de la primera y segunda memorias del registro de desplazamiento 1040 y 1045, para generar un código de aleatorización, el cual llega a ser un código primario de aleatorización. Los sumadores 1032 a 1034 suman cada uno un bit generado desde las secciones de enmascaramiento 1000 a 1005 a un bit generado por la segunda memoria del registro de desplazamiento 1045, respectivamente, para generar las señales del código de aleatorización del canal I. En este caso, para generar las señales del código de aleatorización del canal I. En este caso, la salida del sumador 1030 se utiliza como el código primario de aleatorización y la salida de los códigos de aleatorización de los sumadores 1032 y 1034 pueden ser utilizadas como códigos secundarios de aleatorización, que corresponden al código primario de aleatorización. Lo expuesto a continuación es un ejemplo de los valores de máscara posibles (k^{l}_{i} a k^{n}_{i}): k^{l}_{i} = (000000000000000010), k^{2}_{i} = 000000000000000100), k^{3}_{i} = (0000000000000001000).... Mediante el control de los valores de la máscara, pueden generarse otros códigos primarios y secundarios. El ejemplo siguiente muestra la forma de obtener un código de máscara necesaria par desplazar cíclicamente una m-secuencia "n" veces. En general, se divide x^{n} por la generación polinómica de la m-secuencia (es decir, x^{n}/f(x)) y tomando el resto de la división para formar el código de máscara. Por ejemplo, si se desea un código de máscara que se desplace cíclicamente 31 veces, se tomará x^{31}, y se dividirá por f(x) = x^{18} + x^{7} +1 la generación polinómica y se localizará el resto que no pueda ser ya más dividido. El resto final es x^{13} + x^{9} + x^{2}, tal como se muestra por la siguiente expresión:
x^{31}= x^{13} x^{18} = x^{13} (x^{7} +1) = x^{20} + x^{13} = x^{2} x^{18} + x^{13} = x^{2} (x^{7} +1) + x^{13} = x^{13} + x^{9} + x^{2}
La secuencia binaria correspondiente a x^{13} + x^{9} + x^{2} es 000010001000000100, que es el código de máscara para desplazar cíclicamente la m-secuencia 31 veces.
Los retardos 1022 a 1024 y 1020 retardan las señales del canal I durante un número predeterminado de segmentos para generar las señales del código de aleatorización del canal Q.
Tal como se ha descrito anteriormente, la segunda realización de la presente invención genera grupos de códigos de aleatorización que se muestran en la figura 9, y que utiliza solamente el generador de códigos Gold, las secciones de enmascaramiento 1000 a 1005 y los sumadores 1022 a 1034.
A continuación se expondrá una descripción de una operación de la presente invención según se ha construido anteriormente.
Una vez que se haya aplicado un valor inicial del código primario de aleatorización a la primera y segunda memorias del registro de desplazamiento 1040 y 1045, que tienen cada una 18 registros, los valores del registro de orden 0 de la primera y segunda memorias del registro de desplazamiento 1040 y 1045 son suministradas al sumador 1030, y los 18 valores del registro "a^{i}" de la primera memoria del registro de desplazamiento 1040 son suministrados a la primera de las secciones de enmascaramiento de orden N 1000 a 1005, con el fin de generar de 1 a N secuencias desplazadas cíclicamente de la primera m-secuencia. A continuación, la primera sección de enmascaramiento 1000 enmascara el valor de entrada (a_{i}) desde la primera memoria del registro de desplazamiento (superior) 1040 con una función de máscara k^{l}_{i} para generar los primeros códigos secundarios de aleatorización (es decir, \Sigma(k^{l}_{i} x a_{i})), y dando salida al valor enmascarado (a_{i}) al sumador 1032. La sección de enmascaramiento de orden N 1005 enmascara el valor de entrada (a_{i}) de la primera memoria del registro de desplazamiento (superior) 1040 con una función de máscara k^{N}_{i}, para generar los códigos secundarios de aleatorización de orden N (es decir, \Sigma(k^{N}_{i} x a_{i})) y dando salida a los valores enmascarados al sumador 1034. Al mismo tiempo, el sumador 1030 suma los bits de salida de los registros de orden 0 de la primera y segunda memorias del registro de desplazamiento 1040 y 1045. Las señales de salida generadas son retardadas inmediatamente en el retardo 1022. El sumador 1032 suma los bits de salida de la primera sección de enmascaramiento 1000 y el registro de desplazamiento de orden 0 de la segunda memoria de registro de desplazamiento 1045. Las señales de salida son suministradas inmediatamente al retardo 1022. Posteriormente, los valores del registro de orden 0 y orden séptimo de la memoria del registro de desplazamiento 1040 se suman en el sumador 1010, y el sumador suministra la suma al registro decimoséptimo, conforme los valores del lado izquierdo son desplazados hacia el lado derecho en una unidad, y los registros más a la izquierda se rellenan con el valor de salida del sumador 1010. Los valores del registro de orden 0, quinto, séptimo y décimo de la memoria del registro de desplazamiento 1045 se suman en el sumador 1015, y el sumador introduce la suma en el registro decimoséptimo de la memoria del registro 1045, conforme los valores del lado izquierdo se desplazan hacia el lado derecho en una unidad, para rellenar el registro más a la izquierda (es decir, el registro decimoséptimo) con el valor de salida del sumador 1015. Este procedimiento se repite para generar múltiples códigos de aleatorización.
La figura 11 es un diagrama que muestra un generador de códigos de aleatorización de un receptor, para generar concurrentemente un código primario de aleatorización y un código secundario de aleatorización. Las realizaciones mostradas en las figuras 10 y 11 pueden ser utilizadas en el transmisor o bien en un receptor.
El receptor de acuerdo con la segunda realización de la presente invención solo tiene que utilizar un código secundario de aleatorización y por tanto necesita solo una sección de enmascaramiento 1100.
Con referencia a la figura 11, una vez que se haya sido aplicado un valor inicial para el código primario de aleatorización a la primera memoria del registro de desplazamiento 1140 que tiene 18 registros, y una segunda memoria de registro de desplazamiento 1145 con 18 registros, los valores del registro de orden 0 de la primera y segunda memorias del registro de desplazamiento 1140 y 1145 son suministrados a un sumador 1120. Los 18 valores del registro "a_{i}" de la primera memoria del registro de desplazamiento 1140 son suministrados a la sección de enmascaramiento 1100 con el fin de generar una m-secuencia desplazada cíclicamente. A continuación, la sección de enmascaramiento 1100 enmascara los valores de entrada (a_{i}) de la memoria del registro de desplazamiento 1140 con los valores de máscara k_{i} para generar los primeros códigos secundarios de aleatorización (es decir, \Sigma(k_{i} x a_{i})) y dando salida a los valores enmascarados que son suministrados a un sumador 1125. El sumador 1120 suma los bits de salida de los registros de orden 0 de la primera y segunda memorias del registro de desplazamiento 1140 y 1145. Las señales de salida del sumador 1120 son retardadas inmediatamente en el retardo 1130. Mientras tanto, el sumador 1125 suma los bits de salida de la sección de enmascaramiento 1100 y el registro de desplazamiento de orden 0 de la segunda memoria del registro de desplazamiento 1145 y da salida a la suma para ser suministrada a un retardo 1135 inmediatamente. A continuación, los valores del registro de orden 0 y séptimo de la primera memoria del registro de desplazamiento 1140 se suman en el sumador 1140, en cuyo caso los valores del lado izquierdo son desplazados hacia el lado derecho en una unidad, y los registros más al lado izquierdo se rellenan nuevamente con el valor de salida del sumador 1110. Los valores del registro de orden 0, quinto, séptimo y décimo de la segunda memoria del registro de desplazamiento 1145 se suman en el sumador 1115, desplazando los valores del lado izquierdo hacia el lado derecho en una unidad, y rellenando nuevamente el registro más a la izquierda con el valor de salida del sumador 1115. Los valores de máscara pueden ser controlados por un controlador (no mostrado) cuando el receptor necesite generar otros códigos de aleatorización.
El generador de códigos de aleatorización de la segunda realización necesita los valores de máscara almacenados en la sección de enmascaramiento, para generar el código secundario de aleatorización, es decir, utiliza N valores de máscaras para generar N códigos de aleatorización. En consecuencia, la estructura de los códigos primario y secundario de aleatorización mostrados en la figura 9 permite la implementación del generador de códigos de aleatorización de la estructura del generador mostrada en las figuras 10 y 11, las cuales incluyen además solo N funciones de máscaras, con una muy baja complejidad de los circuitos físicos para generar múltiples códigos de aleatorización.

Claims (10)

1. Un generador de códigos de aleatorización, que comprende:
un primer generador de m-secuencias (1050) para generar una primera m-secuencia utilizando una primer memoria de registros (1040) que tiene una pluralidad de primeros registros con los primeros valores del registro de desplazamiento a_{i}, en donde i = 0 a c-1, y en donde c es el numero total de primeros registros;
un segundo generador de m-secuencias (1060) para generar una segunda m-secuencia utilizando una segunda memoria de registro de desplazamiento (1045) que tiene una pluralidad de segundos registros con unos segundos valores del registro de desplazamiento i = 0 a c-1, en donde c es el numero total de segundos registros;
un controlador para controlar los valores de máscara K^{L}_{i};
una sección de enmascaramiento (1000) para enmascarar los primeros valores del registro de desplazamiento a_{i} con los valores de máscara K^{L}_{i}, para generar una tercera m-secuencia, en la que i = 0 a c-1;
un primer sumador (1030) para sumar la primera m-secuencia y la segunda m-secuencia para generar un código primario de aleatorización; y
un segundo sumador (1032) para sumar la tercera m-secuencia y la segunda m-secuencia para generar un código secundario de aleatorización,
en el que la sección de enmascaramiento está adaptada para desplazar la primera m-secuencia cíclicamente L veces, para generar un código secundario de aleatorización de orden L del código primario de aleatorización,
caracterizado porque tiene:
un controlador para controlar los valores de la máscara K^{L}_{i},
un código primario de aleatorización de orden K que un código Gold de orden ((K-1)*M+K), en donde M es el numero total de códigos secundarios de aleatorización para un código primario de aleatorización, y en donde K tiene un valor de 1 a 512.
2. El generador de códigos de aleatorización de la reivindicación 1 ó 2, en el que los códigos secundarios de aleatorización de los códigos primarios de aleatorización de orden K son los códigos Gold de orden ((K-1)*M+K)+1) a (L*M+K), en donde M es el numero total de códigos secundarios de aleatorización para un código primario de aleatorización, y siendo K un valor de 1 a 512.
3. El generador de códigos de aleatorización de la reivindicación 1, que comprende además:
una segunda sección de enmascaramiento (1005) para enmascarar los primeros valores del registro de desplazamiento a_{i}, con los segundos valores de máscara K^{M}_{i}, en donde i = 0 a c-1, distintos a los valores de máscara K^{L}_{i} para generar una cuarta m-secuencia; y
un tercer sumador (1034) para sumar la cuarta m-secuencia y la segunda m-secuencia para generar un código secundario de muestreo de orden M del código primario de aleatorización,
en el que la segunda sección de enmascaramiento está adaptada para desplazar la primera m-secuencia cíclicamente M veces, para generar el código secundario de aleatorización de orden M del código primario de aleatorización generado por el primer sumador.
4. El generador de códigos de aleatorización de cualquiera de las reivindicaciones 1 a 3, en el que las secciones de enmascaramiento están adaptadas para ejecutar el desplazamiento cíclico, mediante el enmascaramiento de los primeros valores del registro de desplazamiento a_{i} de acuerdo con la ecuación siguiente: \Sigma(K^{L}_{i} x a_{i}).
5. El generador de códigos de aleatorización de cualquiera de las reivindicaciones 1 a 4, en el que el primer generador de m-secuencias está adaptado para desplazar cíclicamente los primeros valores del registro de desplazamiento y en el que el segundo generador de m-secuencias está adaptado para desplazar cíclicamente los segundos valores del registro de desplazamiento.
6. El generador de códigos de aleatorización de cualquiera de las reivindicaciones 1 a 5, en el que el primer generador de m-secuencias está adaptado además para sumar los bits predeterminados de la primera memoria del registro de desplazamiento, basándose en un primer generador polinómico de la primera m-secuencia, desplazando a la derecha la primera memoria del registro de desplazamiento e insertando el valor de los bits sumados predeterminados en a_{c-1}.
7. El generador de códigos de aleatorización de cualquiera de las reivindicaciones 1 a 6, en el que el primer generador de m-secuencias está adaptado para sumar a_{o} con a_{7} para formar un a_{c-1} siguiente.
8. El generador de códigos de aleatorización de cualquiera de las reivindicaciones 1 a 7, en el que el segundo generador de m-secuencias está adaptado además para sumar unos bits predeterminados de la segunda memoria del registro de desplazamiento, basándose en un segundo generador polinómico de la segunda m-secuencia, desplazando a la derecha la segunda memoria del registro de desplazamiento e insertando el valor de los bits sumados predeterminados en b_{c-1}.
9. El generador de códigos de aleatorización de cualquiera de las reivindicaciones 1 a 8, en el que el segundo generador de m-secuencias está adaptado para sumar b_{o} con b_{5}, b_{7}, y b_{10}, para formar el siguiente b_{c-1}.
10. El generador de códigos de aleatorización de cualquiera de las reivindicaciones 1 a 9, en el que el generador de códigos de aleatorización está adaptado además para retardar el código secundario de aleatorización de orden L, para producir una componente del canal Q del código secundario de aleatorización de orden L, en el que el código secundario de aleatorización de orden L es una componente del canal I del código secundario de aleatorización de orden L.
ES00942496T 1999-07-07 2000-07-07 Aparato y metodo para generar codigos de aleatorizacion en el sistema umts de comunicaciones moviles. Expired - Lifetime ES2240114T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR19990027279 1999-07-07
KR9927279 1999-07-07

Publications (1)

Publication Number Publication Date
ES2240114T3 true ES2240114T3 (es) 2005-10-16

Family

ID=19599971

Family Applications (4)

Application Number Title Priority Date Filing Date
ES03008940T Expired - Lifetime ES2295483T3 (es) 1999-07-07 2000-07-07 Aparato y metodo para generar codigos de aleatorizacion en un sistema de comunicacion movil umts.
ES03027776T Expired - Lifetime ES2387670T3 (es) 1999-07-07 2000-07-07 Aparato y método para generar códigos de aleatorización en el sistema de UMTS de comunicaciones de móviles
ES03027777T Expired - Lifetime ES2290399T3 (es) 1999-07-07 2000-07-07 Aparato y metodo para generar codigos de aleatorizacion en un sistema de comunicacion movil umts.
ES00942496T Expired - Lifetime ES2240114T3 (es) 1999-07-07 2000-07-07 Aparato y metodo para generar codigos de aleatorizacion en el sistema umts de comunicaciones moviles.

Family Applications Before (3)

Application Number Title Priority Date Filing Date
ES03008940T Expired - Lifetime ES2295483T3 (es) 1999-07-07 2000-07-07 Aparato y metodo para generar codigos de aleatorizacion en un sistema de comunicacion movil umts.
ES03027776T Expired - Lifetime ES2387670T3 (es) 1999-07-07 2000-07-07 Aparato y método para generar códigos de aleatorización en el sistema de UMTS de comunicaciones de móviles
ES03027777T Expired - Lifetime ES2290399T3 (es) 1999-07-07 2000-07-07 Aparato y metodo para generar codigos de aleatorizacion en un sistema de comunicacion movil umts.

Country Status (19)

Country Link
US (2) US7362867B1 (es)
EP (4) EP1429485B1 (es)
JP (2) JP3640923B2 (es)
KR (1) KR100374354B1 (es)
CN (4) CN1496039A (es)
AT (4) ATE557487T1 (es)
AU (1) AU752300B2 (es)
BR (1) BRPI0006898B1 (es)
CA (3) CA2605221C (es)
DE (4) DE60036315T2 (es)
DK (2) DK1112632T3 (es)
ES (4) ES2295483T3 (es)
ID (1) ID29401A (es)
IL (3) IL141787A0 (es)
PL (2) PL232813B1 (es)
PT (3) PT1351421E (es)
RU (1) RU2185031C1 (es)
WO (1) WO2001005079A1 (es)
ZA (1) ZA200101908B (es)

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3565102B2 (ja) 1999-08-13 2004-09-15 日本電気株式会社 下り回線拡散符号割り当て方法及び基地局
KR100434262B1 (ko) * 1999-08-17 2004-06-04 엘지전자 주식회사 순방향 다중 스크램블링 코드 발생 방법
KR100424538B1 (ko) * 2001-05-29 2004-03-27 엘지전자 주식회사 이동통신시스템에서의 스크램블링 코드 생성 장치 및 방법
DE60211846D1 (de) * 2002-03-07 2006-07-06 St Microelectronics Srl Verfahren, System und Computerprogramm zur Erzeugung von Codes für CDMA-Nachrichtenübertragung
US7193609B2 (en) 2002-03-19 2007-03-20 America Online, Inc. Constraining display motion in display navigation
US8699505B2 (en) * 2002-05-31 2014-04-15 Qualcomm Incorporated Dynamic channelization code allocation
US7826613B2 (en) * 2002-08-19 2010-11-02 Qualcomm Incorporated Stream cipher cryptographic system and method
JP4276009B2 (ja) * 2003-02-06 2009-06-10 株式会社エヌ・ティ・ティ・ドコモ 移動局、基地局、無線伝送プログラム、及び無線伝送方法
US7933250B2 (en) * 2003-06-23 2011-04-26 Qualcomm Incorporated Code channel management in a wireless communications system
US8072942B2 (en) * 2003-11-26 2011-12-06 Qualcomm Incorporated Code channel management in a wireless communications system
EP1578053A1 (en) * 2004-03-18 2005-09-21 STMicroelectronics Limited Data obfuscation
CN1691656B (zh) * 2004-04-26 2010-08-18 上海明波通信技术有限公司 在数字通信系统中生成扰码的方法及其装置
JP4643978B2 (ja) * 2004-12-01 2011-03-02 ルネサスエレクトロニクス株式会社 スクランブル回路、デ・スクランブル回路及び方法、並びにディスク装置
WO2006100368A1 (fr) * 2005-03-22 2006-09-28 France Telecom Equipement, procede, programme et ordinateur pour la generation de code complexe.
US7876806B2 (en) * 2005-03-24 2011-01-25 Interdigital Technology Corporation Orthogonal frequency division multiplexing-code division multiple access system
WO2006131022A1 (en) * 2005-06-07 2006-12-14 Intel Corporation Ultrasonic tracking
US8064424B2 (en) * 2005-07-22 2011-11-22 Qualcomm Incorporated SDMA for WCDMA
US20090129448A1 (en) * 2006-02-15 2009-05-21 Joshua Lawrence Koslov Apparatus and Method For Generating Scrambling Codes
US8102900B2 (en) * 2006-04-07 2012-01-24 Broadcom Corporation Method and apparatus for efficient gold code generation and management in WCDMA systems
CN101064581B (zh) * 2006-04-27 2012-07-04 上海宣普实业有限公司 一种解扰解扩的方法与装置
WO2007149961A1 (en) 2006-06-21 2007-12-27 Qualcomm Incorporated Wireless resource allocation methods and apparatus
US8675758B2 (en) 2006-06-21 2014-03-18 Qualcomm Incorporated Methods and apparatus for measuring, communicating and/or using interference information
TWI372539B (en) 2006-06-23 2012-09-11 Qualcomm Inc Methods and systems for processing overhead reduction for control channel packets
JP4911452B2 (ja) * 2006-06-27 2012-04-04 株式会社メガチップス 半導体メモリ及びデータ授受システム
KR101294781B1 (ko) 2006-08-08 2013-08-09 엘지전자 주식회사 랜덤 액세스 프리앰블 전송 방법
JP4444259B2 (ja) * 2006-10-03 2010-03-31 株式会社エヌ・ティ・ティ・ドコモ 下りリンクスクランブル方法および基地局装置
CN101136649B (zh) * 2006-10-12 2010-06-23 中兴通讯股份有限公司 复用扰码发生器
KR100753191B1 (ko) * 2007-05-16 2007-08-30 삼성전자주식회사 이동 통신 시스템의 스크램블링 코드 할당 방법
US8971305B2 (en) * 2007-06-05 2015-03-03 Qualcomm Incorporated Pseudo-random sequence mapping in wireless communications
CN101068135B (zh) * 2007-06-27 2011-11-23 中兴通讯股份有限公司 主扰码序列生成装置
US8289946B2 (en) * 2007-08-14 2012-10-16 Qualcomm Incorporated Reference signal generation in a wireless communication system
WO2009043139A1 (en) * 2007-10-01 2009-04-09 Research In Motion Limited Substitution table masking for cryptographic processes
US8848913B2 (en) 2007-10-04 2014-09-30 Qualcomm Incorporated Scrambling sequence generation in a communication system
US8503547B2 (en) * 2007-10-11 2013-08-06 Qualcomm Incorporated Scrambling codes for secondary synchronization codes in wireless communication systems
US8787181B2 (en) 2008-01-14 2014-07-22 Qualcomm Incorporated Resource allocation randomization
US8923249B2 (en) * 2008-03-26 2014-12-30 Qualcomm Incorporated Method and apparatus for scrambling sequence generation in a communication system
US7983306B2 (en) 2008-07-23 2011-07-19 Conexant Systems, Inc. Method and apparatus for channelizing sampled broadband signal
KR100991957B1 (ko) * 2009-01-20 2010-11-04 주식회사 팬택 광대역 무선통신시스템에서의 스크램블링 코드 생성 장치 및 그 방법
US8315291B2 (en) * 2009-07-02 2012-11-20 Cambridge Silicon Radio Limited Method and apparatus for generating scrambling codes
KR101685173B1 (ko) 2009-07-13 2016-12-12 주식회사 팬택 무선통신 시스템에서의 시퀀스 생성 방법 및 그 장치
GB2472594B (en) * 2009-08-11 2011-11-30 Ubiquisys Ltd Scrambling code selection
CN103684463B (zh) * 2013-11-26 2016-08-17 北京空间机电研究所 基于fwnn预测网络的流水线结构的模数转换系统
FR3025322B1 (fr) * 2014-08-29 2016-09-30 Commissariat Energie Atomique Methode d'acquisition d'une sequence de gold par double decodage iteratif
KR101794760B1 (ko) * 2015-12-29 2017-11-07 국방과학연구소 확산 부호 생성 장치 및 그 확산 부호 생성 방법
KR102243889B1 (ko) * 2019-12-13 2021-04-23 국방과학연구소 데이터 복호화 장치 및 방법

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US705257A (en) * 1898-09-14 1902-07-22 James G Simonton Buttonhole-sewing machine.
DE2124320C1 (de) 1971-05-17 1978-04-27 Siemens Ag, 1000 Berlin Und 8000 Muenchen Elektrische Schaltung zur Erzeugung einer Vielzahl verschiedener Codes
US3818442A (en) * 1972-11-08 1974-06-18 Trw Inc Error-correcting decoder for group codes
JPS5947833A (ja) 1982-09-10 1984-03-17 Clarion Co Ltd M系列発生装置
US4707839A (en) * 1983-09-26 1987-11-17 Harris Corporation Spread spectrum correlator for recovering CCSK data from a PN spread MSK waveform
DE69027464T2 (de) * 1989-03-09 1997-02-20 Oki Electric Ind Co Ltd Verfahren zum Verwürflung/Entwürflung von Daten mittels Wort-zu-Wort-Verarbeitung
EP0445354A3 (en) * 1990-03-08 1992-05-27 Oki Electric Industry Co., Ltd. Apparatus for scrambling/descrambling data by word-by-word processing
US5550809A (en) * 1992-04-10 1996-08-27 Ericsson Ge Mobile Communications, Inc. Multiple access coding using bent sequences for mobile radio communications
KR960007678B1 (ko) * 1993-06-18 1996-06-08 이병기 병렬 분산 표본 스크램블링 시스템
JPH08331120A (ja) * 1995-06-02 1996-12-13 Oki Electric Ind Co Ltd スクランブル符号生成回路
US5942005A (en) * 1997-04-08 1999-08-24 International Business Machines Corporation Method and means for computationally efficient error and erasure correction in linear cyclic codes
US6108369A (en) * 1997-07-11 2000-08-22 Telefonaktiebolaget Lm Ericsson Channelization code allocation for radio communication systems
US6185244B1 (en) * 1997-08-29 2001-02-06 Telefonaktiebolaget Lm Ericsson Cell searching in a CDMA communications system
SE9703161L (sv) * 1997-09-02 1999-03-03 Ericsson Telefon Ab L M Förfarande för telekommunikation
CN1160888C (zh) * 1997-11-19 2004-08-04 Ntt移动通信网株式会社 同时多代码序列产生器和采用其的码分多址无线接收机
US6058214A (en) * 1998-01-20 2000-05-02 At&T Corp. Compression of partially masked still images
US6754251B1 (en) * 1998-03-09 2004-06-22 Texas Instruments Incorporated Spread-spectrum telephony with accelerated code acquisition
JPH11275052A (ja) * 1998-03-19 1999-10-08 Fujitsu Ltd 拡散符号化装置およびその方法
KR100326182B1 (ko) * 1998-03-23 2002-07-02 윤종용 부호분할다중접속통신시스템의의사잡음시퀀스발생방법및장치
JP3028800B2 (ja) * 1998-05-01 2000-04-04 日本電気株式会社 Cdmaセルラシステム及びcdmaセルラシステムにおける拡散符号検出方法
US6526091B1 (en) * 1998-08-17 2003-02-25 Telefonaktiebolaget Lm Ericsson Communication methods and apparatus based on orthogonal hadamard-based sequences having selected correlation properties
US6141374A (en) * 1998-10-14 2000-10-31 Lucent Technologies Inc. Method and apparatus for generating multiple matched-filter PN vectors in a CDMA demodulator
US6339646B1 (en) * 1998-11-03 2002-01-15 Telefonaktiebolaget Lm Ericsson Slotted mode code usage in a cellular communications system
US6389138B1 (en) * 1998-11-12 2002-05-14 Lucent Technologies Inc. Method and apparatus for generating a complex scrambling code sequence
US6636553B1 (en) * 1998-12-29 2003-10-21 Texas Instruments Incorporated Pseudorandom noise generator for WCDMA
US6560212B1 (en) * 1999-03-16 2003-05-06 Agere Systems Inc. Generating an offset de-bruijn sequence using masks for a CDMA communication system
KR100434262B1 (ko) * 1999-08-17 2004-06-04 엘지전자 주식회사 순방향 다중 스크램블링 코드 발생 방법
US7173992B2 (en) * 2001-12-11 2007-02-06 Sasken Communication Technologies Limited Method for synchronization in wireless systems using receive diversity
DE60211846D1 (de) * 2002-03-07 2006-07-06 St Microelectronics Srl Verfahren, System und Computerprogramm zur Erzeugung von Codes für CDMA-Nachrichtenübertragung

Also Published As

Publication number Publication date
ATE293322T1 (de) 2005-04-15
EP1351421A1 (en) 2003-10-08
PL232813B1 (pl) 2019-07-31
BRPI0006898B1 (pt) 2016-03-29
EP1429485B1 (en) 2007-09-05
IL141787A (en) 2009-08-03
CN1321378A (zh) 2001-11-07
KR20010015235A (ko) 2001-02-26
CN100448188C (zh) 2008-12-31
ES2290399T3 (es) 2008-02-16
CN1496044A (zh) 2004-05-12
WO2001005079A1 (en) 2001-01-18
PT1112632E (pt) 2005-06-30
DE60019394T2 (de) 2005-09-08
AU752300B2 (en) 2002-09-12
CA2342808C (en) 2012-11-27
DE60036315T2 (de) 2008-01-03
DE60037541D1 (de) 2008-01-31
DE60019394D1 (de) 2005-05-19
CA2526112C (en) 2012-09-18
EP1429484B1 (en) 2012-05-09
CA2605221A1 (en) 2001-01-18
EP1351421B1 (en) 2007-12-19
US7536014B2 (en) 2009-05-19
CN1496038A (zh) 2004-05-12
US20050084112A1 (en) 2005-04-21
PL234297B1 (pl) 2020-01-31
US7362867B1 (en) 2008-04-22
RU2185031C1 (ru) 2002-07-10
DE20023092U1 (de) 2003-01-16
EP1112632A4 (en) 2002-07-03
EP1112632A1 (en) 2001-07-04
ZA200101908B (en) 2002-06-05
KR100374354B1 (ko) 2003-03-04
ID29401A (id) 2001-08-30
PL406392A1 (pl) 2014-03-17
PT1351421E (pt) 2008-01-10
JP2004173321A (ja) 2004-06-17
ATE372618T1 (de) 2007-09-15
EP1112632B1 (en) 2005-04-13
CN1168243C (zh) 2004-09-22
DE60037541T2 (de) 2008-04-30
ATE381819T1 (de) 2008-01-15
ATE557487T1 (de) 2012-05-15
ES2387670T3 (es) 2012-09-28
EP1429484A1 (en) 2004-06-16
PL346620A1 (en) 2002-02-25
ES2295483T3 (es) 2008-04-16
AU5710800A (en) 2001-01-30
BR0006898A (pt) 2001-10-30
DK1351421T3 (da) 2008-01-14
IL173518A (en) 2014-04-30
CA2526112A1 (en) 2001-01-18
CA2342808A1 (en) 2001-01-18
DE60036315D1 (de) 2007-10-18
EP1429485A1 (en) 2004-06-16
CN100440766C (zh) 2008-12-03
JP3640923B2 (ja) 2005-04-20
JP2003504946A (ja) 2003-02-04
IL141787A0 (en) 2002-03-10
PT1429485E (pt) 2007-09-25
CN1496039A (zh) 2004-05-12
JP3840227B2 (ja) 2006-11-01
IL173518A0 (en) 2006-07-05
DK1112632T3 (da) 2005-06-27
CA2605221C (en) 2013-05-21

Similar Documents

Publication Publication Date Title
ES2240114T3 (es) Aparato y metodo para generar codigos de aleatorizacion en el sistema umts de comunicaciones moviles.
EP0983647B1 (en) Device and method for generating PN sequence in CDMA communication system
KR101037520B1 (ko) 광대역 무선통신시스템에서 스크램블링 코드 생성 방법 및 그 장치
ES2438532T3 (es) Códigos ortogonales de longitud variable no contiguos
US20040052222A1 (en) Method of updating a shift register
JP2004048274A (ja) 符号発生方法および拡散符号発生器
KR19990025732A (ko) 이동 통신시스템의 준 직교부호의 생성방법 및 장치