ES2928290T3 - Un diseño de intercalador eficiente para códigos polares - Google Patents

Un diseño de intercalador eficiente para códigos polares Download PDF

Info

Publication number
ES2928290T3
ES2928290T3 ES20176863T ES20176863T ES2928290T3 ES 2928290 T3 ES2928290 T3 ES 2928290T3 ES 20176863 T ES20176863 T ES 20176863T ES 20176863 T ES20176863 T ES 20176863T ES 2928290 T3 ES2928290 T3 ES 2928290T3
Authority
ES
Spain
Prior art keywords
rows
columns
encoded bits
bits
interleaver
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.)
Active
Application number
ES20176863T
Other languages
English (en)
Inventor
Jian Li
Changlong Xu
Chao Wei
Jilei Hou
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.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Application granted granted Critical
Publication of ES2928290T3 publication Critical patent/ES2928290T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2703Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques the interleaver involving at least two directions
    • H03M13/2707Simple row-column interleaver, i.e. pure block interleaving
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2732Convolutional interleaver; Interleavers using shift-registers or delay lines like, e.g. Ramsey type interleaver
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2742Irregular interleaver wherein the permutation pattern is not obtained by a computation rule, e.g. interleaver based on random generators
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2757Interleaver with an interleaving rule not provided for in the subgroups H03M13/2703 - H03M13/2753
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/29Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2957Turbo codes and decoding
    • H03M13/296Particular turbo code structure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0041Arrangements at the transmitter end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes
    • H04L1/0058Block-coded modulation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0061Error detection codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0071Use of interleaving

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

Los aspectos de la divulgación se relacionan con dispositivos de comunicación inalámbricos configurados para codificar bloques de información para producir bloques de código e intercalar los bloques de código utilizando un intercalador que incluye una pluralidad de filas y una pluralidad de columnas, donde el número de columnas del intercalador varía entre las filas. En algunos ejemplos, el intercalador incluye una matriz de filas y columnas en forma de triángulo isósceles rectángulo. En otros ejemplos, el intercalador incluye una matriz de filas y columnas de forma trapezoidal. (Traducción automática con Google Translate, sin valor legal)

Description

DESCRIPCIÓN
Un diseño de intercalador eficiente para códigos polares
Reivindicación de prioridad
La presente solicitud reivindica la prioridad y el beneficio de la Solicitud PCT Núm.PCT/CN2017/079903 presentada en la Oficina de Patentes de China el 10 de abril de 2017.
Campo técnico
La tecnología discutida más abajo se refiere, en general, a sistemas de comunicación inalámbrica y, más particularmente, al canal de codificación utilizando códigos polares en los sistemas de comunicación inalámbrica. Antecedentes
Los códigos de bloque o los códigos de corrección de errores se usan frecuentemente para proporcionar la transmisión fiable de mensajes digitales a través de canales ruidosos. En un código de bloque típico, una secuencia o mensaje de información se divide en bloques, y un codificador en el dispositivo de transmisión adiciona entonces matemáticamente redundancia al mensaje de información. La explotación de esta redundancia en el mensaje de información codificado es la clave de la fiabilidad del mensaje, al permitir la corrección de cualquier error de bit que pueda ocurrir debido al ruido. Es decir, un decodificador en el dispositivo de recepción puede aprovechar la redundancia para recuperar de forma fiable el mensaje de información, aunque puedan ocurrir errores de bit, en parte, debido a la adición de ruido al canal.
Los expertos en la técnica conocen muchos ejemplos de tales códigos de bloque de corrección de errores, incluidos los códigos Hamming, los códigos Bose-Chaudhuri-Hocquenghem (BCH), los códigos turbo y los códigos de verificación de paridad de baja densidad (LDPC), entre otros. Muchas redes de comunicaciones inalámbricas existentes utilizan tales códigos de bloque, tal como las redes 3GPP LTE, que utilizan los códigos turbo; y las redes Wi-Fi IEEE 802.11n, que utilizan los códigos LDPC. Sin embargo, para las redes futuras, una nueva categoría de códigos de bloque, llamados códigos polares, presenta una oportunidad potencial para la transferencia de información fiable y eficiente con un rendimiento mejorado con relación a los códigos turbo y los códigos LDPC. Si bien la investigación sobre la implementación de códigos polares continúa avanzando rápidamente en sus capacidades y potencial, se desean mejoras adicionales, particularmente para el despliegue potencial de futuras redes de comunicaciones inalámbricas más allá de LTE.
El documento US 7024597 B2 (BROADCOM CORP [US]) del 4 de abril de 2006 se refiere a los intercaladores y desintercaladores convolucionales Ramsey Tipo I, II, III y IV.
Sumario
La invención se define por las reivindicaciones independientes 1, 8 y 13 con las realizaciones preferentes en las reivindicaciones dependientes. A continuación, se presenta un sumario simplificado de uno o más aspectos de la presente divulgación, con el fin de proporcionar una comprensión básica de dichos aspectos. Este sumario no es una descripción general extensa de todas las características contempladas de la divulgación y no pretende identificar elementos clave o críticos de todos los aspectos de la divulgación ni delinear el ámbito de cualquiera o todos los aspectos de la divulgación. Su único propósito es presentar algunos conceptos de uno o más aspectos de la divulgación de manera simplificada como un preámbulo de la descripción más detallada que se presenta más adelante.
Diversos aspectos de la divulgación proporcionan dispositivos de comunicación inalámbrica configurados para codificar bloques de información para producir bloques de código e intercalar los bloques de código utilizando un intercalador que incluye una pluralidad de filas y una pluralidad de columnas, donde el número de columnas del intercalador varía entre las filas. En algunos ejemplos, el intercalador incluye una matriz de filas y columnas en forma de triángulo isósceles recto. En otros ejemplos, el intercalador incluye una matriz de filas y columnas en forma de trapezoide.
En un aspecto de la divulgación, se proporciona un procedimiento de comunicación inalámbrica en un dispositivo de transmisión de comunicación inalámbrica. El procedimiento incluye la codificación de un bloque de información para producir un bloque de código que incluye una pluralidad de bits codificados y la intercalación de la pluralidad de bits codificados utilizando un intercalador para producir un bloque de código intercalado. El intercalador incluye una pluralidad de filas y una pluralidad de columnas, y un número de la pluralidad de columnas varía entre la pluralidad de filas. El procedimiento incluye además la transmisión del bloque de código intercalado a un dispositivo de recepción de comunicación inalámbrica a través de una interfaz aérea inalámbrica.
Otro aspecto de la divulgación proporciona un aparato configurado para la comunicación inalámbrica. El aparato incluye un transceptor, una memoria y un procesador acoplados comunicativamente al transceptor y la memoria. El procesador se configura para codificar un bloque de información para producir un bloque de código que incluye una pluralidad de bits codificados e intercalar la pluralidad de bits codificados utilizando un intercalador para producir un bloque de código intercalado. El intercalador incluye una pluralidad de filas y una pluralidad de columnas, y un número de la pluralidad de columnas varía entre la pluralidad de filas. El procesador se configura además para transmitir el bloque de código intercalado a un dispositivo de recepción de comunicación inalámbrica a través de una interfaz aérea inalámbrica.
Otro aspecto de la divulgación proporciona un aparato configurado para la comunicación inalámbrica. El aparato incluye medios para la codificación de un bloque de información para producir un bloque de código que incluye una pluralidad de bits codificados y medios para la intercalación de la pluralidad de bits codificados para producir un bloque de código intercalado. Los medios para la intercalación incluyen una pluralidad de filas y una pluralidad de columnas, y un número de la pluralidad de columnas varía entre la pluralidad de filas. El aparato incluye además medios para la transmisión del bloque de código intercalado a un dispositivo de recepción de comunicación inalámbrica a través de una interfaz aérea inalámbrica.
Otro aspecto de la divulgación proporciona un medio legible por ordenador no transitorio que almacena el código ejecutable por ordenador. El medio legible por ordenador no transitorio incluye el código para la codificación de un bloque de información para producir un bloque de código que incluye una pluralidad de bits codificados y un código para la intercalación de la pluralidad de bits codificados utilizando un intercalador para producir un bloque de código intercalado. El intercalador incluye una pluralidad de filas y una pluralidad de columnas, y un número de la pluralidad de columnas varía entre la pluralidad de filas. El medio legible por ordenador no transitorio incluye además un código para la transmisión del bloque de código intercalado a un dispositivo de recepción de comunicación inalámbrica a través de una interfaz aérea inalámbrica.
Estos y otros aspectos de la invención se entenderán mejor tras una revisión de la descripción detallada, que sigue. Otros aspectos, características y realizaciones de la presente invención resultarán evidentes para los expertos en la técnica, tras revisar la siguiente descripción de realizaciones ilustrativas específicas, de la presente invención junto con las Figuras acompañantes. Mientras que las características de la presente invención pueden discutirse con relación a ciertas realizaciones y figuras más abajo, todas las realizaciones de la presente invención pueden incluir una o más de las características ventajosas discutidas en la presente memoria. En otras palabras, mientras que una o más realizaciones pueden discutirse por tener ciertas características ventajosas, una o más de tales características también pueden usarse de acuerdo con las diversas realizaciones de la invención discutida en la presente memoria. De manera similar, aunque las realizaciones ilustrativas pueden discutirse más abajo como realizaciones de dispositivo, sistema, o procedimiento debe entenderse que tales realizaciones ilustrativas pueden implementarse en diversos dispositivos, sistemas y procedimientos.
Breve descripción de los dibujos
La Figura 1 es un diagrama que ilustra un ejemplo de una red de acceso.
La Figura 2 es una ilustración esquemática de comunicación inalámbrica utilizando códigos de bloque.
La Figura 3 es un diagrama de bloques que ilustra un ejemplo de una implementación de hardware para un dispositivo de comunicación inalámbrica que emplea un sistema de procesamiento de acuerdo con algunos aspectos de la presente divulgación.
La Figura 4 es un diagrama que ilustra un ejemplo de un diseño de intercalador de acuerdo con algunos aspectos de la presente divulgación.
La Figura 5 es un diagrama que ilustra una operación de ejemplo de codificación polar e intercalación de acuerdo con algunas realizaciones.
La Figura 6 es un diagrama de flujo que ilustra un procedimiento ilustrativo para la intercalación de los bits codificados de acuerdo con algunos aspectos de la presente divulgación.
La Figura 7 es un diagrama de flujo que ilustra otro procedimiento ilustrativo para la intercalación de los bits codificados de acuerdo con algunos aspectos de la presente divulgación.
La Figura 8 es un diagrama de flujo que ilustra otro procedimiento ilustrativo para la intercalación de los bits codificados de acuerdo con algunos aspectos de la presente divulgación.
La Figura 9 es un diagrama de flujo que ilustra otro procedimiento ilustrativo para la intercalación de los bits codificados de acuerdo con algunos aspectos de la presente divulgación.
La Figura 10 es un diagrama de flujo que ilustra otro procedimiento ilustrativo para la intercalación de los bits codificados de acuerdo con algunos aspectos de la presente divulgación.
Descripción detallada
La descripción detallada que se expone más abajo en relación con los dibujos adjuntos pretende ser como una descripción de diversas configuraciones y no pretende representar las únicas configuraciones en las que pueden ponerse en práctica los conceptos descritos en la presente memoria. La descripción detallada incluye detalles específicos con el propósito de proporcionar una comprensión profunda de diversos conceptos. Sin embargo, será evidente para los expertos en la técnica que estos conceptos pueden ponerse en práctica sin estos detalles específicos. En algunos casos, las estructuras y los componentes bien conocidos se muestran en forma de diagrama de bloques con el fin de evitar ocultar tales conceptos.
Los diversos conceptos presentados a lo largo de esta divulgación pueden implementarse a través de una amplia variedad de sistemas de telecomunicaciones, arquitecturas de red y estándares de comunicación. Con referencia ahora a la Figura 1, como un ejemplo ilustrativo sin limitación, se proporciona una ilustración esquemática simplificada de una red de acceso por radio 100. La red de acceso por radio 100 puede ser una red de acceso por radio de próxima generación (por ejemplo, quinta generación (5G) o Nueva Radio (NR)) o una red de acceso por radio heredada (3G o 4G). Además, uno o más nodos en la red de acceso por radio 100 pueden ser nodos de próxima generación o nodos heredados.
Tal como se usa en la presente memoria, el término red de acceso por radio heredada se refiere a una red que emplea una tecnología de comunicación inalámbrica de tercera generación (3G) en base a un conjunto de estándares que cumple con las especificaciones de Telecomunicaciones Móviles Internacionales-2000 (IMT-2000) o una tecnología de comunicación inalámbrica de cuarta generación (4G) en base a un conjunto de estándares que cumplen con la especificación de Telecomunicaciones Móviles Internacionales Avanzada (ITU-Avanzado). Por ejemplo, algunos de los estándares promulgados por el Proyecto de Asociación de 3ra Generación (3GPP) y el Proyecto de Asociación de 3ra Generación 2 (3GPP2) pueden cumplir con IMT-2000 y/o ITU-Avanzado. Los ejemplos de tales estándares heredados definidos por el Proyecto de Asociación de 3ra Generación (3GPP) incluyen, pero no se limitan a, la Evolución a Largo Plazo (LTE), el LTE-Avanzado, el Sistema de Paquetes Evolucionados (EPS) y al Sistema Universal de Telecomunicaciones Móviles (UMTS). Los ejemplos adicionales de las diversas tecnologías de acceso por radio en base a uno o más de los estándares 3GPP enumerados anteriormente incluyen, pero no se limitan a, Acceso por Radio Terrestre Universal (UTRA), Acceso por Radio Terrestre Universal Evolucionado (eUTRA), Servicio de Radio General por Paquetes (GPRS) y Tasas de Datos Mejoradas para la Evolución del GSM (EDGE). Los ejemplos de tales estándares heredados definidos por el Proyecto de Asociación de 3ra Generación 2 (3GPP2) incluyen, pero no se limitan a, el CDMA2000 y a la Banda ancha ultra móvil (UMB). Otros ejemplos de estándares que emplean la tecnología de comunicación inalámbrica 3G/4G incluyen el estándar IEEE 802.16 (WiMAX) y otros estándares adecuados.
Tal como se usa en la presente memoria, el término red de acceso por radio de próxima generación generalmente se refiere a una red que emplea tecnologías de comunicación inalámbrica en continua evolución. Esto puede incluir, por ejemplo, una tecnología de comunicación inalámbrica de quinta generación (5G) en base a un conjunto de estándares. Los estándares pueden cumplir con las directrices establecidas en el Libro Blanco de la 5G publicado por la Alianza de Redes Móviles de Próxima Generación (NGMN) el 17 de febrero de 2015. Por ejemplo, los estándares que pueden definirse por la 3GPP después de LTE-Avanzado o por la 3GPP2 después de Cd MA2000 pueden cumplir con el Libro Blanco de la 5G de la Alianza de NGMN. Los estándares también pueden incluir esfuerzos previos al 3GPP especificados por el Foro Técnico de Verizon y el Korea Telecom SIG.
La región geográfica cubierta por la red de acceso por radio 100 puede dividirse en un número de regiones celulares (células) que pueden identificarse únicamente por un equipo de usuario (UE) en base a una identificación difundida sobre un área geográfica desde un punto de acceso o estación base. La Figura 1 ilustra las macrocélulas 102, 104 y 106 y una pequeña célula 108, cada una de las cuales puede incluir uno o más sectores (no se muestran). Un sector es una subárea de una célula. Todos los sectores dentro de una célula son servidos por la misma estación base. Un enlace de radio dentro de un sector puede identificarse por una única identificación lógica perteneciente a ese sector. En una célula que se divide en sectores, los múltiples sectores dentro de una célula pueden formarse por grupos de antenas con cada antena responsable de la comunicación con los UE en una porción de la célula.
En general, una estación base (BS) respectiva da servicio a cada célula. De manera amplia, una estación base es un elemento de red en una red de acceso por radio responsable de la transmisión y recepción de radio en una o más células hacia o desde un UE. Una BS también puede denominarse por los expertos en la técnica, como una estación transceptora base (BTS), una estación base de radio, un transceptor de radio, una función transceptora, un conjunto de servicios básicos (BSS), un conjunto de servicios extendidos (ESS), un punto de acceso (AP), un Nodo B (NB), un eNodo B (eNB), un gNodo B (gNB) o cualquier otra terminología adecuada.
En la Figura 1, se muestran dos estaciones base 110 y 112 en las células 102 y 104; y se muestra una tercera estación base 114 que controla un cabezal de radio remoto (RRH) 116 en la célula 106. Es decir, una estación base puede tener una antena integrada o puede conectarse a una antena o RRH por cables de alimentación. En el ejemplo ilustrado, las células 102, 104 y 106 pueden denominarse como macrocélulas, ya que las estaciones base 110, 112 y 114 soportan células que tienen un gran tamaño. Además, se muestra una estación base 118 en la célula pequeña 108 (por ejemplo, una microcélula, una picocélula, una femtocélula, una estación base doméstica, un Nodo B doméstico, un eNodo B doméstico, etc.) la cual puede solaparse con una o más macrocélulas. En este ejemplo, la célula 108 puede denominarse como una célula pequeña, ya que la estación base 118 soporta una célula que tiene un tamaño relativamente pequeño. El dimensionamiento de la célula puede realizarse de acuerdo con el diseño del sistema, así como también con las restricciones de los componentes. Debe entenderse que la red de acceso por radio 100 puede incluir cualquier número de células y estaciones base inalámbricas. Además, puede desplegarse un nodo de retransmisión para extender el tamaño o el área de cobertura de una célula determinada. Las estaciones base 110, 112, 114, 118 proporcionan puntos de acceso inalámbricos a una red central para cualquier número de aparatos móviles.
La Figura 1 incluye además un cuadricóptero o dron 120, que puede configurarse para funcionar como una estación base. Es decir, en algunos ejemplos, una célula puede no estar necesariamente estacionaria y el área geográfica de la célula puede moverse de acuerdo con la ubicación de una estación base móvil tal como el cuadricóptero 120.
En general, las estaciones base pueden incluir una interfaz de red de retorno para comunicarse con una porción de red de retorno (no se muestra) de la red. La red de retorno puede proporcionar un enlace entre una estación base y una red central (no se muestra), y en algunos ejemplos, la red de retorno puede proporcionar la interconexión entre las respectivas estaciones base. La red central puede ser parte de un sistema de comunicación inalámbrica y puede ser independiente de la tecnología de acceso por radio usada en la red de acceso por radio. Pueden emplearse diversos tipos de interfaces de red de retorno, tales como una conexión física directa, una red virtual o similares mediante el uso de cualquier red de transporte adecuada.
La red de acceso por radio 100 se ilustra soportando la comunicación inalámbrica para múltiples aparatos móviles. Un aparato móvil se denomina comúnmente como equipo de usuario (UE) en los estándares y especificaciones promulgadas por el Proyecto de Asociación de 3ra Generación (3GPP), pero también puede ser denominado por los expertos en la técnica como una estación móvil (MS), una estación de abonado, una unidad móvil, una unidad de abonado, una unidad inalámbrica, una unidad remota, un dispositivo móvil, un dispositivo inalámbrico, un dispositivo de comunicaciones inalámbricas, un dispositivo remoto, una estación móvil de abonado, un terminal de acceso (AT), un terminal móvil, un terminal inalámbrico, un terminal remoto, un auricular, un terminal, un agente de usuario, un cliente móvil, un cliente o cualquier otra terminología adecuada. Un UE puede ser un aparato que proporciona a un usuario acceso a los servicios de red.
Dentro del presente documento, un aparato "móvil" no necesita tener necesariamente la capacidad de moverse y puede estar estacionario. El término aparato móvil o dispositivo móvil se refiere de manera amplia a una gama diversa de dispositivos y tecnologías. Por ejemplo, algunos ejemplos no limitativos de un aparato móvil incluyen un teléfono móvil, un teléfono celular (célula), un teléfono inteligente, un teléfono con protocolo de inicio de sesión (SIP), un ordenador portátil, una computadora personal (PC), una notebook, una netbook, un smartbook, una tableta, un asistente digital personal (PDA) y una amplia gama de sistemas integrados, por ejemplo, correspondientes a una "Internet de las cosas" (IoT). Un aparato móvil puede ser adicionalmente un vehículo automotor u otro vehículo de transporte, un sensor o actuador remoto, un robot o dispositivo robótico, una radio satelital, un dispositivo de sistema de posicionamiento global (GPS), un dispositivo de seguimiento de objetos, un dron, un multicóptero, un cuadricóptero, un dispositivo de control remoto, un consumidor y/o dispositivo portátil, tal como gafas, una cámara portátil, un dispositivo de realidad virtual, un reloj inteligente, un rastreador de salud o fitness, un reproductor de audio digital (por ejemplo, el reproductor MP3), una cámara, una consola de juegos, etc. Un aparato móvil puede ser adicionalmente un hogar digital o un dispositivo doméstico inteligente, tal como un dispositivo doméstico de audio, video y/o multimedia, un electrodoméstico, una máquina expendedora, iluminación inteligente, un sistema de seguridad para el hogar, un medidor inteligente, etc. Un aparato móvil puede ser adicionalmente un dispositivo de energía inteligente, un dispositivo de seguridad, un panel solar o matriz solar, un dispositivo de infraestructura municipal que controla la potencia eléctrica (por ejemplo, una red inteligente), iluminación, agua, etc.; un dispositivo empresarial y de automatización industrial; un controlador logístico; equipamiento agrícola; equipos de defensa militar, vehículos, aeronaves, barcos y armamento, etc. Además, un aparato móvil puede proporcionar medicina conectada o soporte de telemedicina, es decir, atención médica a distancia. Los dispositivos de telesalud pueden incluir dispositivos de monitoreo de telesalud y dispositivos de administración de telesalud, cuya comunicación puede dar un tratamiento preferencial o acceso prioritario sobre otros tipos de información, por ejemplo, en términos de acceso prioritario para el transporte del tráfico de datos de usuarios de servicios críticos y/o QoS relevante para el transporte del tráfico de datos de usuarios de servicios críticos.
Dentro de la red de acceso por radio 100, las células pueden incluir los UE que pueden estar en comunicación con uno o más sectores de cada célula. Por ejemplo, los UE 122 y 124 pueden estar en comunicación con la estación base 110; los UE 126 y 128 pueden estar en comunicación con la estación base 112; los UE 130 y 132 pueden estar en comunicación con la estación base 114 por medio del RRH 116; el UE 134 puede estar en comunicación con la estación base 118; y el UE 136 puede estar en comunicación con la estación base móvil 120. En la presente memoria, cada estación base 110, 112, 114, 118 y 120 puede configurarse para proporcionar un punto de acceso a una red central (no se muestra) para todos los UE en las respectivas células.
En otro ejemplo, un nodo de red móvil (por ejemplo, el cuadricóptero 120) puede configurarse para funcionar como un UE. Por ejemplo, el cuadricóptero 120 puede funcionar dentro de la célula 102 al comunicarse con la estación base 110. En algunos aspectos de la divulgación, dos o más UE (por ejemplo, los UE 126 y 128) pueden comunicarse entre sí mediante el uso de señales de igual a igual (P2P) o de enlace lateral 127 sin retransmitir esa comunicación a través de una estación base (por ejemplo, la estación base 112).
Las transmisiones de unidifusión o de difusión de la información de control y/o la información de tráfico (por ejemplo, tráfico de datos de usuarios) desde una estación base (por ejemplo, la estación base 110) a uno o más UE (por ejemplo, los UE 122 y 124) pueden denominarse como transmisión de enlace descendente (DL), mientras que las transmisiones de la información de control y/o la información de tráfico que se origina en un UE (por ejemplo, el UE 122) pueden denominarse como transmisiones de enlace ascendente (UL). Además, la información de control de enlace ascendente y/o de enlace descendente puede dividirse en el tiempo en tramas, subtramas, ranuras, mini ranuras y/o símbolos. Como se usa en la presente memoria, un símbolo puede referirse a una unidad de tiempo que, en una forma de onda multiplexada por división de frecuencia ortogonal (OFDM), porta un elemento de recurso (RE) por subportadora. Una ranura puede portar 7 o 14 símbolos OFDM. Una mini ranura puede portar menos de 7 símbolos OFDM o menos de 14 símbolos OFDM. Una subtrama puede referirse a una duración de 1 ms. Pueden agruparse múltiples subtramas para formar una única trama o trama de radio. Por supuesto, estas definiciones no son necesarias, y puede utilizarse cualquier esquema adecuado para organizar las formas de onda, y diversas divisiones de tiempo de la forma de onda pueden tener cualquier duración adecuada.
La interfaz aérea en la red de acceso por radio 100 puede utilizar uno o más algoritmos de multiplexación y acceso múltiple para permitir la comunicación simultánea de los diversos dispositivos. Por ejemplo, puede proporcionarse acceso múltiple para transmisiones de enlace ascendente (UL) o de enlace inverso desde los UE 122 y 124 a la estación base 110 utilizando el acceso múltiple por división de tiempo (TDMA), el acceso múltiple por división de código (CDMA), el acceso múltiple por división de frecuencia (FDMA), el acceso múltiple por división de frecuencia ortogonal (OFDMA), el acceso múltiple por código disperso (SCMA), el acceso múltiple por división de frecuencia de única portadora (SC-FDMA), el acceso múltiple por distribución de recursos (RSMA) u otros esquemas de acceso múltiple adecuados. Además, la multiplexación de transmisiones de enlace descendente (DL) o de enlace directo desde la estación base 110 a los UE 122 y 124 puede proporcionarse utilizando la multiplexación por división de tiempo (TDM), la multiplexación por división de código (CDM), la multiplexación por división de frecuencia (FDM), la multiplexación por división de frecuencia ortogonal (OFDM), la multiplexación por código disperso (SCM), la multiplexación por división de frecuencia de única portadora (SC-FDM) u otros esquemas de multiplexación adecuados.
Además, la interfaz aérea en la red de acceso por radio 100 puede utilizar uno o más algoritmos de duplexación.
Dúplex se refiere a un enlace de comunicación punto a punto donde ambos extremos pueden comunicarse entre sí en ambas direcciones. Full dúplex significa que ambos extremos pueden comunicarse simultáneamente entre sí.
Semidúplex significa que solamente un extremo puede enviar información al otro a la vez. En un enlace inalámbrico, un canal full dúplex generalmente se basa en el aislamiento físico de un transmisor y un receptor, y en tecnologías adecuadas de cancelación de interferencia. La emulación de full dúplex se implementa frecuentemente para enlaces inalámbricos al utilizar dúplex por división de frecuencia (FDD) o dúplex por división de tiempo (TDD). En FDD, las transmisiones en diferentes direcciones funcionan en diferentes frecuencias portadoras. En TDD, las transmisiones en diferentes direcciones en un canal determinado se separan entre sí mediante el uso de multiplexación por división de tiempo. Es decir, en algunas ocasiones el canal se dedica para transmisiones en una dirección, mientras que en otras ocasiones el canal se dedica para transmisiones en la otra dirección, donde la dirección puede cambiar muy rápidamente, por ejemplo, varias veces por subtrama.
En la red de acceso por radio 100, la capacidad de un UE para comunicarse mientras se mueve, independientemente de su ubicación, se denomina como movilidad. Los diversos canales físicos entre el UE y la red de acceso por radio generalmente se configuran, mantienen y liberan bajo el control de una entidad de gestión de la movilidad (MME). En diversos aspectos de la divulgación, una red de acceso por radio 100 puede utilizar la movilidad basada en DL o la movilidad basada en UL para permitir la movilidad y los traspasos (es decir, la transferencia de una conexión de UE de un canal de radio a otro). En una red configurada para la movilidad basada en DL, durante una llamada con una entidad de programación, o en cualquier otro momento, un UE puede monitorear diversos parámetros de la señal de su célula de servicio, así como también diversos parámetros de células vecinas. En función de la calidad de estos parámetros, el UE puede mantener la comunicación con una o más de las células vecinas. Durante este tiempo, si el UE se mueve de una célula a otra, o si la calidad de la señal de una célula vecina excede la de la célula de servicio por una cantidad de tiempo determinada, el UE puede asumir una transferencia o traspaso de la célula de servicio a la célula vecina (destino). Por ejemplo, el UE 124 puede moverse desde el área geográfica correspondiente a su célula de servicio 102 al área geográfica correspondiente a una célula vecina 106. Cuando la intensidad o calidad de la señal de la célula vecina 106 excede la de su célula de servicio 102 por una cantidad de tiempo determinada, el UE 124 puede transmitir un mensaje de información a su estación base de servicio 110 que indica esta condición. En respuesta, el UE 124 puede recibir una orden de traspaso y el UE puede someterse a un traspaso hacia la célula 106.
En una red configurada para la movilidad basada en UL, las señales de referencia de UL de cada UE pueden utilizarse por la red para seleccionar una célula de servicio para cada UE. En algunos ejemplos, las estaciones base 110, 112 y 114/116 pueden realizar la difusión de las señales de sincronización unificadas (por ejemplo, Señales de Sincronización Primarias unificadas (PSS), Señales de Sincronización Secundarias unificadas (SSS) y Canales de Difusión Física unificados (PBCH)). Los UE 122, 124, 126, 128, 130 y 132 pueden recibir las señales de sincronización unificadas, derivar la frecuencia portadora y la temporización de la subtrama a partir de las señales de sincronización y en respuesta a la derivación de la temporización, transmitir una señal de referencia o piloto de enlace ascendente. La señal piloto de enlace ascendente transmitida por un UE (por ejemplo, el UE 124) puede recibirse simultáneamente por dos o más células (por ejemplo, las estaciones base 110 y 114/116) dentro de la red de acceso por radio 100. Cada una de las células puede medir la intensidad de la señal piloto y la red de acceso por radio (por ejemplo, una o más de las estaciones base 110 y 114/116 y/o un nodo central dentro de la red central) puede determinar una célula de servicio para el UE 124. A medida que el UE 124 se mueve a través de la red de acceso por radio 100, la red puede continuar monitoreando la señal piloto de enlace ascendente transmitida por el UE 124. Cuando la intensidad de la señal o la calidad de la señal piloto medida por una célula vecina excede la intensidad o calidad de la señal medida por la célula de servicio, la red 100 puede traspasar el UE 124 desde la célula de servicio a la célula vecina, con o sin informar al UE 124.
Aunque la señal de sincronización transmitida por las estaciones base 110, 112 y 114/116 puede unificarse, la señal de sincronización puede no identificar una célula en particular, sino más bien puede identificar una zona de múltiples células que funcionan en la misma frecuencia y/o con la misma temporización. El uso de zonas en redes 5G u otras redes de comunicación de próxima generación permite el marco de movilidad basado en enlaces ascendentes y mejora la eficiencia tanto del UE como de la red, ya que el número de mensajes de movilidad que necesitan intercambiarse entre el UE y la red puede reducirse.
En diversas implementaciones, la interfaz aérea en la red de acceso por radio 100 puede utilizar espectro con licencia, espectro sin licencia o espectro compartido. El espectro con licencia proporciona el uso exclusivo de una porción del espectro, generalmente en virtud de que un operador de red móvil adquiere una licencia de un organismo regulador del gobierno. El espectro sin licencia proporciona el uso compartido de una porción del espectro sin necesidad de una licencia otorgada por el gobierno. Mientras que, generalmente aún se requiere el cumplimiento de algunas reglas técnicas para acceder al espectro sin licencia, en general, cualquier operador o dispositivo puede obtener acceso. El espectro compartido puede caer entre el espectro con licencia y sin licencia, en el que pueden requerirse reglas o limitaciones técnicas para acceder al espectro, pero el espectro aún puede compartirse por múltiples operadores y/o múltiples RAT. Por ejemplo, el titular de una licencia para una porción del espectro con licencia puede proporcionar acceso compartido con licencia (LSA) para compartir ese espectro con otras partes, por ejemplo, con las condiciones adecuadas determinadas por el licenciatario para obtener acceso.
En algunos ejemplos, el acceso a la interfaz aérea puede programarse, en el que una entidad de programación (por ejemplo, una estación base) asigna recursos para la comunicación entre algunos o todos los dispositivos y equipos dentro de su área o célula de servicio. Dentro de la presente divulgación, como se discute más abajo, la entidad de programación puede ser responsable de programar, asignar, reconfigurar y liberar recursos para una o más entidades programadas. Es decir, para la comunicación programada, las entidades programadas utilizan recursos asignados por la entidad de programación.
Las estaciones base no son las únicas entidades que pueden operar como una entidad de programación. Es decir, en algunos ejemplos, un UE puede funcionar como una entidad de programación, programando recursos para una o más entidades programadas (por ejemplo, uno o más de otros UE). En otros ejemplos, las señales de enlace lateral pueden usarse entre los UE sin depender necesariamente de la información de programación o control de una estación base. Por ejemplo, el UE 138 se ilustra comunicándose con los UE 140 y 142. En algunos ejemplos, el UE 138 está funcionando como una entidad de programación o un dispositivo de enlace lateral primario y los UE 140 y 142 pueden funcionar como una entidad programada o un dispositivo de enlace lateral no primario (por ejemplo, secundario). En otro ejemplo más, un UE puede funcionar como una entidad de programación en una red de dispositivo a dispositivo (D2D), de igual a igual (P2P) o de vehículo a vehículo (V2V) y/o en una red de malla. En un ejemplo de red de malla, los UE 140 y 142 opcionalmente pueden comunicarse directamente entre sí además de comunicarse con la entidad de programación 138.
La Figura 2 es una ilustración esquemática de la comunicación inalámbrica entre un primer dispositivo de comunicación inalámbrica 202 y un segundo dispositivo de comunicación inalámbrica 204. Cada dispositivo de comunicación inalámbrica 202 y 204 puede ser un equipo de usuario (UE), una estación base o cualquier otro aparato o medio adecuado para la comunicación inalámbrica. En el ejemplo ilustrado, una fuente 222 dentro del primer dispositivo de comunicación inalámbrica 202 transmite un mensaje digital a través de un canal de comunicación 206 (por ejemplo, un canal inalámbrico) a un sumidero 244 en el segundo dispositivo de comunicación inalámbrica 204. Para proporcionar una comunicación fiable del mensaje digital, suele ser beneficioso tener en cuenta el ruido 208 que afecta al canal de comunicación 206.
Los códigos de bloque o los códigos de corrección de errores se usan frecuentemente para proporcionar una transmisión fiable de mensajes digitales a través de tales canales. En un código de bloque típico, una secuencia o mensaje de información se divide en bloques, cada bloque que tiene una longitud de K bits. Luego, un codificador 224 en el primer dispositivo de comunicación inalámbrica (realiza la transmisión) 202 adiciona matemáticamente redundancia al mensaje de información, lo que da como resultado palabras de códigos que tienen una longitud de N, donde N > K. En la presente memoria, la tasa de código R es la relación entre la longitud del mensaje y la longitud del bloque: es decir, R = K / N. La explotación de esta redundancia en el mensaje de información codificado es una clave para la fiabilidad del mensaje, posiblemente al permitir la corrección de errores de bits que pueden ocurrir debido al ruido 208 u otros efectos de propagación de la señal. Es decir, un decodificador 242 en el segundo dispositivo de comunicación inalámbrica (realiza la recepción) 204 puede aprovechar la redundancia para posiblemente recuperar el mensaje de información, aunque puedan ocurrir errores de bit, en parte, debido a la adición de ruido al canal, etc.
Los expertos en la técnica conocen muchos ejemplos de tales códigos de bloque de corrección de errores, incluidos los códigos de Hamming, los códigos de Bose-Chaudhuri-Hocquenghem (BCH), los códigos turbo, los códigos convolucionales de cola (TBCC) y los códigos de verificación de paridad de baja densidad (LDPC), entre otros. Muchas redes de comunicaciones inalámbricas existentes utilizan tales códigos de bloque, tal como las redes 3GPP LTE, que utilizan los códigos turbo; y las redes Wi-Fi IEEE 802.11n, que utilizan los códigos LDPC. Sin embargo, para las redes futuras, una nueva categoría de códigos de bloque, llamados códigos polares, presenta una oportunidad potencial para la transferencia de información fiable y eficiente con un rendimiento mejorado con relación a los códigos turbo y los códigos LDPC.
Los códigos polares son códigos de corrección de errores de bloque lineal. En términos generales, la polarización de canales se genera con un algoritmo recursivo que define los códigos polares. Los códigos polares son los primeros códigos explícitos que alcanzan la capacidad del canal de los canales discretos sin memoria de entrada binaria simétrica. Es decir, los códigos polares alcanzan la capacidad del canal (el límite de Shannon) o el límite superior teórico de la cantidad de información sin errores que puede transmitirse en un canal discreto sin memoria de un ancho de banda determinado en presencia de ruido.
Sin embargo, incluso con los mejores códigos de corrección de errores, si el canal de comunicación 206 experimenta un desvanecimiento profundo, la tasa de bits erróneos puede exceder lo que puede compensarse. En consecuencia, muchas redes de comunicaciones inalámbricas utilizan intercaladores para mejorar aún más la fiabilidad de los datos.
Los intercaladores también pueden usarse en el propio procedimiento de codificación para proporcionar información extrínseca para la decodificación iterativa. Por ejemplo, los códigos turbo pueden utilizar un intercalador de polinomio de permutación cuadrática (QPP) para soportar la decodificación en paralelo. De manera similar, los códigos convolucionales de cola pueden utilizar un intercalador de subbloques para el canal de control. El intercalador de subbloques incluye una matriz de filas y columnas en forma rectangular. Típicamente hay treinta y dos columnas, pero el número de filas depende del número de bits codificados en un bloque de código. Los bits codificados se introducen en el intercalador de subbloques fila por fila. Luego, la matriz se reorganiza mediante el uso de una permutación entre columnas, después de lo cual los bits codificados se leen columna por columna.
Sin embargo, para los códigos polares con modulación de orden superior (por ejemplo, 16-QAM o 64-QAM), los diseños de intercaladores tradicionales, tales como los intercaladores QPP o los intercaladores de subbloques, no brindan un rendimiento suficiente en términos de Relación Señal-Ruido (SNR) y la Tasa de Error de Bloque (BLER), especialmente bajo el Ruido Gaussiano Blanco Aditivo (AWGN). Por lo tanto, de acuerdo con aspectos de la presente divulgación, se proporciona un nuevo diseño de intercalador, que puede utilizarse para códigos polares u otros tipos de códigos adecuados (por ejemplo, turbo o TBCC). El diseño del intercalador se basa en una matriz en forma de triángulo isósceles recto o una matriz de filas y columnas en forma de trapezoide, donde el número de columnas varía entre las filas. Por ejemplo, puede diseñarse una matriz en forma de triángulo isósceles recto con la longitud de los dos lados iguales establecida en el número entero más pequeño P que satisface la ecuación P*(P+1)/2 > N, donde N es el número de bits codificados en un bloque de código.
En una operación ilustrativa del intercalador, los bits codificados de un bloque de código pueden introducirse a las filas sucesivas del intercalador de arriba a abajo y leerse de las columnas sucesivas del intercalador de izquierda a derecha. Por tanto, el primer bit codificado en la primera fila es el primer bit codificado que se lee de la primera columna. Con este diseño de intercalador, el número de bits codificados en cada fila disminuye con el mayor número de bits codificados en la primera fila y el menor número de bits codificados en la última fila. Como tal, el número de bits codificados entre los bits codificados adyacentes en las filas adyacentes varía y, en particular, el número de bits codificados entre los bits codificados adyacentes en las filas adyacentes disminuye a medida que aumenta el número de fila. Por ejemplo, el número de bits codificados entre el bit codificado más a la izquierda en la primera fila y el bit codificado más a la izquierda en la segunda fila es P, mientras que el número de bits codificados entre el bit codificado más a la izquierda en la segunda fila y el bit codificado más a la izquierda en la tercera fila es P-1, y así sucesivamente.
En algunos aspectos de la presente divulgación, después de que el último bit codificado del bloque de código se introduce en el intercalador, cualquier fila restante o porciones de la misma en la matriz puede llenarse con valores nulos. Al leer las columnas de la matriz, estos valores nulos pueden omitirse para leer solo los bits codificados. Por lo tanto, el diseño del intercalador que excluye las filas que contienen solo valores nulos puede considerarse como una matriz en forma de trapezoide.
Además, la etapa de permutación entre columnas realizada con el intercalador de subbloques se elimina para reducir la complejidad y la latencia. En algunos ejemplos, el rendimiento de este nuevo diseño de intercalador puede ser comparable al de un intercalador aleatorio y, como tal, es adecuado para códigos polares con modulación de orden superior.
La Figura 3 es un diagrama de bloques que ilustra un ejemplo de una implementación de hardware para un dispositivo de comunicación inalámbrica 300 que emplea un sistema de procesamiento 314. Por ejemplo, el dispositivo de comunicación inalámbrica 300 puede ser un equipo de usuario (UE), una estación base o cualquier otro aparato o medio adecuado para la comunicación inalámbrica.
De acuerdo con diversos aspectos de la divulgación, un elemento, o cualquier porción de un elemento, o cualquier combinación de elementos puede implementarse con un sistema de procesamiento 314 que incluye uno o más procesadores 304. Los ejemplos de procesadores 304 incluyen microprocesadores, microcontroladores, procesadores de señales digitales (DSP), matrices de puertas programables en campo (FPGA), dispositivos lógicos programables (PLD), máquinas de estado, lógica de compuerta, circuitos de hardware discretos y otro hardware adecuado configurado para realizar las diversas funcionalidades descritas a lo largo de esta divulgación. Es decir, el procesador 304, como se utiliza en un dispositivo de comunicación inalámbrica 300, puede usarse para implementar uno cualquiera o más de los procedimientos descritos más abajo e ilustrados en las Figuras 4-5.
En este ejemplo, el sistema de procesamiento 314 puede implementarse con una arquitectura de bus, representada de manera general por el bus 302. El bus 302 puede incluir cualquier número de buses y puentes de interconexión en función de la aplicación específica del sistema de procesamiento 314 y las restricciones de diseño generales. El bus 302 enlaza diversos circuitos que incluyen uno o más procesadores (representados generalmente por el procesador 304), una memoria 305 y medios legibles por ordenador (representados generalmente por el medio legible por ordenador 306). El bus 302 también puede enlazar otros diversos circuitos tales como fuentes de temporización, periféricos, reguladores de tensión y circuitos de gestión de la potencia, los cuales se conocen bien en la técnica y, por lo tanto, no se describirán de manera adicional. Una interfaz de bus 308 proporciona una interfaz entre el bus 302 y un transceptor 310. El transceptor 310 proporciona un medio para la comunicación con diversos otros aparatos a través de un medio de transmisión. Dependiendo de la naturaleza del aparato, también puede proporcionarse una interfaz de usuario opcional 312 (por ejemplo, un teclado, una pantalla, un altavoz, un micrófono, un joystick). Debe entenderse que la interfaz de usuario 312 puede no proporcionarse en algunos dispositivos, tales como una estación base.
El procesador 304 es responsable de la gestión del bus 302 y del procesamiento general, que incluye la ejecución del software almacenado en el medio legible por ordenador 306. El software, cuando se ejecuta por el procesador 304, provoca que el sistema de procesamiento 314 realice las diversas funciones descritas más abajo para cualquier aparato en particular. El medio legible por ordenador 306 también puede usarse para almacenar datos que son manipulados por el procesador 304 cuando se ejecuta el software.
Uno o más procesadores 304 en el sistema de procesamiento pueden ejecutar el software. El software se interpretará de manera amplia en el sentido de instrucciones, conjuntos de instrucciones, código, segmentos de código, código de programa, programas, subprogramas, módulos de software, aplicaciones, aplicaciones de software, paquetes de software, rutinas, subrutinas, objetos, ejecutables, subprocesos de ejecución, procedimientos, funciones, etc., ya sea que se denomine como software, microprograma, software intermedio, microcódigo, lenguaje de descripción de hardware o de cualquier otra manera. El software puede residir en un medio legible por ordenador 306. El medio legible por ordenador 306 puede ser un medio legible por ordenador no transitorio. Un medio legible por ordenador no transitorio incluye, a manera de ejemplo, un dispositivo de almacenamiento magnético (por ejemplo, disco duro, disquete, banda magnética), un disco óptico (por ejemplo, un disco compacto (CD) o un disco versátil digital (DVD)), una tarjeta inteligente, un dispositivo de memoria flash (por ejemplo, una tarjeta, un lápiz o una unidad de llave), una memoria de acceso aleatorio (RAM), una memoria de sólo lectura (ROM), una ROM programable (PROM), una PROM borrable (EPROM), una PROM borrable eléctricamente (EEpRo M), un registro, un disco extraíble y cualquier otro medio adecuado para almacenar software y/o instrucciones que puedan accederse y leerse mediante una computadora. El medio legible por ordenador también puede incluir, a manera de ejemplo, una onda portadora, una línea de transmisión y cualquier otro medio adecuado para la transmisión de software y/o instrucciones que puedan accederse y leerse mediante una computadora. El medio legible por ordenador 306 puede residir en el sistema de procesamiento 314, externo al sistema de procesamiento 314 o distribuido a través de múltiples entidades, que incluye el sistema de procesamiento 314. El medio legible por ordenador 306 puede llevarse a la práctica en un producto de programa informático. A manera de ejemplo, un producto de programa informático puede incluir un medio legible por ordenador en los materiales de envase. Los expertos en la técnica reconocerán la mejor manera de implementar la funcionalidad descrita presentada a lo largo de esta divulgación en función de la aplicación particular y de las restricciones de diseño generales impuestas al sistema general.
En algunos aspectos de la divulgación, el procesador 304 puede incluir circuitos configurados para diversas funciones. Por ejemplo, el procesador 304 puede incluir un codificador 342, que en algunos ejemplos puede operar en coordinación con el software de codificación 352 almacenado en el medio de almacenamiento legible por ordenador 306. El codificador 342 puede configurarse para codificar un bloque de información para producir un bloque de código de longitud N después de la perforación. En algunos ejemplos, el codificador 342 es un codificador polar. Sin embargo, el codificador 342 no se limita a los codificadores polares y puede incluir cualquier codificador adecuado, tal como un codificador turbo, un codificador convolucional de cola u otro tipo de codificador.
En ejemplos donde el codificador 342 es un codificador polar, el codificador polar 342 puede configurarse para codificar polarmente el bloque de información para producir un bloque de código polar que tiene una longitud deN. Por ejemplo, el bloque de información puede representarse como un vector de bits de información u = (ui, U2..., un).
El codificador polar 342 puede codificar polarmente el vector de bits de información para producir el bloque de código polar como un vector de bits codificado c= (ci, C2..., cn) mediante el uso de una matriz generadora Gn=BnF®1', donde Bn es la matriz de permutación de inversión de bits para la decodificación de cancelación sucesiva (SC) (que funciona de alguna manera similar a la función de intercalador usada por un codificador turbo en redes LTE) y F®n es la nma potencia de Kronecker de F. La matriz básica F puede representarse como
Figure imgf000010_0001
La matriz F®n se genera al elevar la matriz básica de 2 x 2 F por la nma potencia de Kronecker. Esta matriz es una matriz triangular inferior, en la que todas las entradas por encima de la diagonal principal son cero. Por ejemplo, la matriz de F®n puede expresarse como:
Figure imgf000010_0002
El codificador polar 342 puede luego generar el bloque de código polar como:
Ci - u ^G n - U i B NF ® n
Por tanto, el vector de bits de información u puede incluir un número (N) de bits originales que puede codificarse polarmente por la matriz generadora Gn para producir un número correspondiente (N) de bits codificados en el bloque de código polar c. En algunos ejemplos, el vector de bits de información u puede incluir un número de bits de información, indicados K, y un número de bits congelados, indicados F. Los bits congelados son bits que se establecen a un valor predeterminado adecuado, como 0 o 1. Por tanto, el valor de los bits congelados puede conocerse generalmente tanto en el dispositivo de transmisión como en el dispositivo de recepción. El codificador polar 342 puede determinar el número de bits de información y el número de bits congelados en base a la tasa de códigoR. Por ejemplo, el codificador polar 342 puede seleccionar una tasa de código R de un conjunto de una o más tasas de código y seleccionar K = N * R bits en el bloque de información para transmitir la información. Los bits restantes (N - K) en el bloque de información pueden fijarse como bits congelados
F
Con el fin de determinar qué bits del bloque de información establecer como bits congelados, el codificador polar 342 puede analizar adicionalmente el canal inalámbrico por el que puede enviarse el bloque de código polar. Por ejemplo, el canal inalámbrico para la transmisión del bloque de código polar puede dividirse en un conjunto de subcanales, de manera que cada bit codificado en el bloque de código polar se transmita por uno de los subcanales. Por tanto, cada subcanal puede corresponder a una ubicación del bit codificado particular en el bloque de código polar (por ejemplo, el subcanal-1 puede corresponder a una ubicación del bit codificado que contiene el bit codificado ci). El codificador polar 342 puede identificar los K mejores subcanales para la transmisión de los bits de información y determinar las ubicaciones de los bits originales en el bloque de información que contribuyen a (o corresponden a) los K mejores subcanales. Por ejemplo, en base a la matriz generadora, uno o más de los bits originales del bloque de información pueden contribuir a cada uno de los bits codificados del bloque de código polar. Por tanto, en base a la matriz generadora, el codificador polar 342 puede determinar K ubicaciones de los bits originales en el bloque de información correspondiente a los K mejores subcanales, designar las K ubicaciones de los bits originales en el bloque de información para los bits de información, y designar las ubicaciones de los bits originales restantes en el bloque de información para los bits fijos.
En algunos ejemplos, el codificador polar 342 puede determinar los K mejores subcanales al realizar la evolución de la densidad o la aproximación Gaussiana. La evolución de la densidad se conoce generalmente por los expertos en la técnica. La aproximación Gaussiana es una versión de inferior complejidad de la evolución de la densidad y también se conoce generalmente por los expertos en la técnica. En general, el codificador polar 342 puede realizar la evolución de la densidad o la aproximación Gaussiana para calcular una probabilidad de error de bit (BEP) y/o una relación de probabilidad logarítmica (LLR) respectivas para cada una de las ubicaciones de los bits originales. Por ejemplo, los LLR de las ubicaciones de los bits codificados se conocen a partir de las condiciones del subcanal (por ejemplo, en base a las respectivas SNR de los subcanales). Por tanto, dado que uno o más de los bits originales del bloque de información pueden contribuir a cada uno de los bits codificados del bloque de código polar, los LLR de cada una de las ubicaciones de los bits originales pueden derivarse de los LLR conocidos de las ubicaciones de los bits codificados al realizar la evolución de la densidad o la aproximación Gaussiana. En base a los LLR de las ubicaciones de los bits originales calculados, el codificador polar 342 puede ordenar los subcanales y seleccionar los K mejores subcanales (por ejemplo, subcanales "buenos") para transmitir los bits de información.
El codificador polar 342 puede luego establecer las ubicaciones de los bits originales del bloque de información correspondiente a los mejores subcanales K que incluyen los bits de información y las ubicaciones restantes de los bits originales correspondientes a los subcanales N-K (por ejemplo, subcanales "malos") como si incluyeran bits congelados. La permutación de inversión de bits puede realizarse luego al aplicar la matriz de permutación de inversión de bits Bn descrita anteriormente a los N bits (incluyendo K bits de información y N-K bits congelados) para producir un bloque de información de bits invertidos. La permutación de inversión de bits reordena eficazmente los bits del bloque de información. El bloque de información de bits invertidos puede luego codificarse polarmente por la matriz generadora Gn para producir un número correspondiente (N) de bits codificados en el bloque de código polar. El procesador 304 puede incluir además un intercalador 344, que en algunos ejemplos puede operar en coordinación con el software de intercalación 354 almacenado en el medio legible por ordenador 306. El intercalador 344 también puede operar en coordinación con el codificador 342 para intercalar los bits codificados en el bloque de código para producir un bloque de código intercalado. El codificador 342 puede luego transmitir el bloque de código intercalado a través del transceptor 310.
En varios aspectos de la presente divulgación, el intercalador 344 incluye una pluralidad de filas y columnas, donde el número de columnas varía entre filas. En algunos ejemplos, el intercalador 344 incluye una matriz en forma de triángulo isósceles recto o una matriz de filas y columnas en forma de trapezoide. Por ejemplo, un intercalador de matriz en forma de triángulo isósceles recto 344 puede incluir dos lados iguales establecida cuya longitud en el número entero más pequeño P que satisface la ecuación P* (P+1)/2 > N, donde N es el número de bits codificados en el bloque de código.
El intercalador 344 puede configurarse para introducir los bits codificados del bloque de código en las filas sucesivas de la matriz, de manera que el primer bit codificado en el bloque de código sea el bit codificado más a la izquierda en la primera fila. El intercalador 344 puede configurarse además para leer los bits codificados de las columnas sucesivas de la matriz de izquierda a derecha. Por tanto, el primer bit codificado en la primera fila es el primer bit codificado que se lee de la primera columna. Con este diseño de intercalador, el número de bits codificados en cada fila disminuye con el mayor número de bits codificados en la primera fila y el menor número de bits codificados en la última fila. Como tal, el número de bits codificados entre los bits codificados adyacentes en las filas adyacentes varía y, en particular, el número de bits codificados entre los bits codificados adyacentes en las filas adyacentes disminuye a medida que aumenta el número de fila. Por ejemplo, el número de bits codificados entre el bit codificado más a la izquierda en la primera fila y el bit codificado más a la izquierda en la segunda fila es P, mientras que el número de bits codificados entre el bit codificado más a la izquierda en la segunda fila y el bit codificado más a la izquierda en la tercera fila es P-1, y así sucesivamente.
En algunos ejemplos, después de que el último bit codificado del bloque de código se introduce a la matriz, el intercalador 344 puede configurarse además para llenar cualquier fila restante o las porciones de las mismas en la matriz con valores nulos. En otros ejemplos, los bits nulos pueden introducirse primero en la matriz, seguidos de los bits codificados. Al leer las columnas de la matriz, el intercalador 344 también puede configurarse para omitir estos valores nulos para leer solo los bits codificados. Si los valores nulos se introducen en la matriz después de los bits codificados, la exclusión de las filas que contienen todos los valores nulos en la matriz puede dar como resultado un intercalador 344 que tiene una matriz en forma de trapezoide.
Además, el procesador 304 puede incluir un decodificador 346, que en algunos ejemplos puede operar en coordinación con el software de decodificación 356 almacenado en el medio legible por ordenador 306. En una modalidad de acuerdo con la invención reivindicada, el decodificador 346 puede configurarse para recibir un bloque de código intercalado a través del transceptor 310, desintercalar el bloque de código intercalado en base al diseño del intercalador en forma de triángulo isósceles recto descrito anteriormente para producir el bloque de código y decodificar el bloque de código para producir el bloque de información original. En algunos ejemplos, el decodificador 346 puede ser un decodificador polar 346. En otros ejemplos, el decodificador 346 puede incluir cualquier decodificador adecuado, tal como un decodificador turbo, un decodificador convolucional de cola u otro tipo de decodificador.
En ejemplos en los que el decodificador 346 es un decodificador polar 346, el decodificador polar 346 puede realizar una decodificación polar de cancelación sucesiva (SC) o una decodificación de lista polar SC para decodificar el bloque de código polar. Por ejemplo, el decodificador polar 346 puede configurarse para recibir una versión ruidosa de c, y para decodificar c o, de manera equivalente, u, mediante el uso de un algoritmo de decodificación de cancelación sucesiva (SC) simple. Los algoritmos de decodificación de cancelaciones sucesivas típicamente tienen una complejidad de decodificación de O (N log N) y pueden alcanzar la capacidad de Shannon cuando N es muy grande. Sin embargo, para longitudes de bloque cortas y moderadas, el rendimiento de la tasa de error de los códigos polares se degrada significativamente.
Por lo tanto, en algunos ejemplos, el decodificador polar 346 puede utilizar un algoritmo de decodificación de lista SC para mejorar el rendimiento de la tasa de errores de codificación polar. Con la decodificación de lista SC, en lugar de mantener solo una ruta de decodificación (como en los decodificadores SC simples), se mantienen L rutas de decodificación, donde L>1. En cada etapa de decodificación, el decodificador polar 346 descarta las rutas de decodificación menos probables (peores) y mantiene solo las L mejores rutas de decodificación. Por ejemplo, en lugar de seleccionar un valor en cada etapa de decodificación, dos rutas de decodificación correspondientes a cualquier valor posible deuse crean y la decodificación continúa en dos hilos de decodificación paralelos (2-L). Para evitar el crecimiento exponencial del número de rutas de decodificación, en cada etapa de decodificación, solo las L rutas más probables se conservan. Al final, el decodificador polar 346 tendrá una lista de L candidatos para ¿y ,
de los cuales se selecciona el candidato más probable. Por tanto, cuando el decodificador polar 346 completa el algoritmo de decodificación de lista SC, el decodificador polar 346 devuelve un único bloque de información.
La Figura 4 es un diagrama que ilustra un ejemplo de un diseño de intercalador de acuerdo con algunos aspectos de la presente divulgación. En el ejemplo mostrado en la Figura 4, el intercalador 400 incluye una matriz 402 en forma de triángulo isósceles recto de filas 404 y columnas 406. Un bloque de código que incluye los bits codificados x(1) a x(N), con una longitud de N, se introduce en las filas sucesivas 404 de la matriz, de manera que el primer bit codificado x(1) en el bloque de código es el bit codificado más a la izquierda en la primera fila 404. La longitud de la primera fila 404 se establece en el número entero más pequeño P que satisface la ecuación P*(P+1)/2 > N. Además, la longitud de la primera columna 406 es igual a la longitud de la primera fila 404 y, como tal, también se establece en P. Por tanto, la primera fila 404 incluye los bits codificados x(1) a x(P).
Con este diseño de intercalador 400, el número de bits codificados en cada fila 404 disminuye, estando el mayor número de bits codificados en la primera fila y el menor número de bits codificados en la última fila. Por ejemplo, la segunda fila de la matriz incluye los bits codificados x(P+1) a x(2P-1), la tercera fila de la matriz incluye los bits codificados x(2P) a x(3P-3), así sucesivamente. Como tal, el número de bits codificados entre los bits codificados adyacentes en las filas adyacentes varía y, en particular, el número de bits codificados entre los bits codificados adyacentes en las filas adyacentes disminuye a medida que aumenta el número de fila. Por ejemplo, el número de bits codificados entre el bit codificado más a la izquierda en la primera fila y el bit codificado más a la izquierda en la segunda fila es P, mientras que el número de bits codificados entre el bit codificado más a la izquierda en la segunda fila y el bit codificado más a la izquierda en la tercera fila es P-1, y así sucesivamente.
Después de introducir el último bit codificado x(N) en la matriz, pueden insertarse valores nulos (nulo) en cualquier fila restante o porciones de las mismas. En algunos ejemplos, los valores nulos pueden introducirse primero en la matriz 402, seguidos de los bits codificados.
Los bits codificados pueden luego leerse de las sucesivas columnas 406 de la matriz 402 de izquierda a derecha, omitiendo cualquier valor nulo. Por tanto, el primer bit codificado (bit codificado más a la izquierda) en la primera fila es el primer bit codificado que se lee de la primera columna. En el ejemplo mostrado en la Figura 4, la salida es x(1), x(P+1), x(2P), x(3P-2),..., x(2), x(P+2), x(2P+1 ), x(N), x(P-1), x(2P-l), x(P), omitiendo cualquier valor nulo en la matriz. Al excluir las filas que contienen todos los valores nulos, el diseño del intercalador 400 que se muestra en la Figura 4 puede considerarse como una matriz en forma de trapezoide.
La Figura 5 es un diagrama que ilustra una operación de ejemplo 500 de codificación polar e intercalación de acuerdo con algunas realizaciones. En la Figura 5, se proporciona un bloque de información 510 que incluye N ubicaciones de los bits originales 515, cada una de las cuales contiene un bit original (ui , U2..., un). Cada uno de los bits originales corresponde a un bit de información o a un bit congelado. El bloque de información 510 se recibe por un codificador polar 520. El codificador polar 520 codifica polarmente el bloque de información para producir una palabra de código polar 530 que incluye N ubicaciones de bits codificados 435, cada una de las cuales contiene un bit codificado (ci , C2, ..., cn).
La palabra de código polar 530 se recibe por un bloque intercalador 540. El bloque intercalador 540 aplica una matriz intercaladora en forma de triángulo isósceles recto o en forma de trapezoide a la palabra de código polar 530 para intercalar los bits codificados de la palabra de código polar para producir una palabra de código polar intercalada 550. Por tanto, a la salida del bloque intercalador 540 hay una palabra de código intercalada 550 que incluye N ubicaciones de bits codificados 555, cada una de las cuales incluye uno de los bits codificados (ci, C2..., cn) en un orden intercalado (cii, C12..., Cin). Se debe señalar que el codificador polar 520 puede, en algunos ejemplos, corresponder al codificador polar 342 y al software de codificación polar 352 que se muestra y describe anteriormente en relación con la Figura 3 o el codificador polar 224 que se muestra y describe anteriormente en relación con la Figura 2. Además, el bloque intercalador 540 puede, en algunos ejemplos, corresponder al intercalador 400 que se muestra y describe anteriormente en relación con la Figura 4 o el intercalador 344 y el software de intercalación 354 que se muestran y describen anteriormente en relación con la Figura 3.
La Figura 6 es un diagrama de flujo que ilustra un procedimiento ilustrativo 600 para la intercalación de los bits codificados de acuerdo con algunos aspectos de la presente divulgación. En algunos ejemplos, el procedimiento 600 puede implementarse mediante un dispositivo de comunicación inalámbrica como se describe anteriormente y se ilustra en las Figuras 1-5. En algunos ejemplos, el procedimiento 600 puede implementarse mediante cualquier aparato o medio adecuado para llevar a cabo las funciones descritas.
En el bloque 602, el dispositivo de comunicación inalámbrica puede codificar un bloque de información para producir un bloque de código que incluye una pluralidad de bits codificados. En algunos ejemplos, el bloque de información puede codificarse mediante el uso de la codificación polar. Por ejemplo, el codificador 342 que se muestra y describe anteriormente con referencia a la Figura 3 puede codificar el bloque de información para producir el bloque de código.
En el bloque 604, el dispositivo de comunicación inalámbrica puede intercalar la pluralidad de bits codificados en el bloque de código para producir un bloque de código intercalado. Los bits codificados pueden intercalarse utilizando un intercalador que incluye una pluralidad de filas y una pluralidad de columnas, donde el número de columnas varía entre las filas. En algunos ejemplos, el intercalador incluye una matriz en forma de triángulo isósceles recto o una matriz de filas y columnas en forma de trapezoide. Con la matriz en forma de triángulo isósceles recto, el número de filas en la primera columna es igual al número de columnas en la primera fila, y se selecciona además en base al número de bits codificados en el bloque de código. Por ejemplo, el número de filas en la primera columna puede establecerse en el número entero más pequeño P que satisface la ecuación P*(P+1)/2 > N, donde N es el número de bits codificados en el bloque de código. Los bits codificados pueden introducirse en las filas sucesivas del intercalador y leerse de las columnas sucesivas del intercalador, de manera que el primer bit codificado en el bloque de código sea el primer bit codificado leído del intercalador. Por ejemplo, el intercalador 344 que se muestra y describe anteriormente con referencia a la Figura 3 puede intercalar los bits codificados en el bloque de código para producir el bloque de código intercalado.
En el bloque 606, el dispositivo de comunicación inalámbrica puede transmitir el bloque de código intercalado a un dispositivo de recepción de comunicación inalámbrica a través de una interfaz aérea inalámbrica. Por ejemplo, el codificador 342, junto con el transceptor 310, que se muestra y describe anteriormente con referencia a la Figura 3 puede transmitir el bloque de código intercalado al dispositivo de dispositivo de recepción de comunicación inalámbrica.
La Figura 7 es un diagrama de flujo que ilustra otro procedimiento ilustrativo 700 para la intercalación de los bits codificados de acuerdo con algunos aspectos de la presente divulgación. En algunos ejemplos, el procedimiento 700 puede implementarse mediante un dispositivo de comunicación inalámbrica como se describe anteriormente y se ilustra en las Figuras 1-5. En algunos ejemplos, el procedimiento 700 puede implementarse mediante cualquier aparato o medio adecuado para llevar a cabo las funciones descritas.
En el bloque 702, el dispositivo de comunicación inalámbrica puede codificar un bloque de información para producir un bloque de código que incluye una pluralidad de bits codificados. En algunos ejemplos, el bloque de información puede codificarse mediante el uso de la codificación polar. Por ejemplo, el codificador 342 que se muestra y describe anteriormente con referencia a la Figura 3 puede codificar el bloque de información para producir el bloque de código.
En el bloque 704, el dispositivo de comunicación inalámbrica puede proporcionar un número de filas en una primera columna de un intercalador para igualar el número entero más pequeño P que satisface la ecuación P*(P+1)/2 > N, donde N es el número de bits codificados en el bloque de código. En el bloque 706, el dispositivo de comunicación inalámbrica puede proporcionar el número de columnas en la primera fila del intercalador para igualar el número de filas en la primera columna. En el bloque 708, el dispositivo de comunicación inalámbrica puede proporcionar el número de columnas en el intercalador para variar entre las filas del intercalador. Tal diseño de intercalador puede producir, en algunos ejemplos, una matriz en forma de triángulo isósceles recto o una matriz de filas y columnas en forma de trapezoide. Por ejemplo, el intercalador 344 que se muestra y describe anteriormente con referencia a la Figura 3 puede proporcionar el número de filas en la primera columna, el número de columnas en la primera fila y variar el número de columnas entre las filas de una matriz correspondiente al intercalador 344.
En el bloque 710, el dispositivo de comunicación inalámbrica puede intercalar la pluralidad de bits codificados en el bloque de código mediante el uso del intercalador para producir un bloque de código intercalado. Los bits codificados pueden introducirse en las filas sucesivas del intercalador y leerse de las columnas sucesivas del intercalador, de manera que el primer bit codificado en el bloque de código sea el primer bit codificado leído del intercalador. Por ejemplo, el intercalador 344 que se muestra y describe anteriormente con referencia a la Figura 3 puede intercalar los bits codificados en el bloque de código para producir el bloque de código intercalado.
En el bloque 712, el dispositivo de comunicación inalámbrica puede transmitir el bloque de código intercalado a un dispositivo de recepción de comunicación inalámbrica a través de una interfaz aérea inalámbrica. Por ejemplo, el codificador 342, junto con el transceptor 310, que se muestra y describe anteriormente con referencia a la Figura 3 puede transmitir el bloque de código intercalado al dispositivo de dispositivo de recepción de comunicación inalámbrica.
La Figura 8 es un diagrama de flujo que ilustra otro procedimiento ilustrativo 800 para la intercalación de los bits codificados de acuerdo con algunos aspectos de la presente divulgación. En algunos ejemplos, el procedimiento 800 puede implementarse mediante un dispositivo de comunicación inalámbrica como se describe anteriormente y se ilustra en las Figuras 1-5. En algunos ejemplos, el procedimiento 800 puede implementarse mediante cualquier aparato o medio adecuado para llevar a cabo las funciones descritas.
En el bloque 802, el dispositivo de comunicación inalámbrica puede codificar un bloque de información para producir un bloque de código que incluye una pluralidad de bits codificados. En algunos ejemplos, el bloque de información puede codificarse mediante el uso de la codificación polar. Por ejemplo, el codificador 342 que se muestra y describe anteriormente con referencia a la Figura 3 puede codificar el bloque de información para producir el bloque de código.
En el bloque 804, el dispositivo de comunicación inalámbrica puede introducir los bits codificados en las filas sucesivas de un intercalador, iniciando con la primera fila, donde el número de columnas en el intercalador varía entre las filas. En algunos ejemplos, el intercalador incluye una matriz en forma de triángulo isósceles recto o una matriz de filas y columnas en forma de trapezoide. Por ejemplo, el intercalador 344 que se muestra y describe anteriormente con referencia a la Figura 3 puede introducir los bits codificados en el bloque de código en las filas sucesivas del intercalador.
En el bloque 806, el dispositivo de comunicación inalámbrica puede leer los bits codificados de las columnas sucesivas del intercalador, iniciando con la primera columna, para producir un bloque de código intercalado. Por ejemplo, el intercalador 344 que se muestra y describe anteriormente con referencia a la Figura 3 puede leer los bits codificados de las columnas sucesivas del intercalador.
En el bloque 808, el dispositivo de comunicación inalámbrica puede transmitir el bloque de código intercalado a un dispositivo de recepción de comunicación inalámbrica a través de una interfaz aérea inalámbrica. Por ejemplo, el codificador 342, junto con el transceptor 310, que se muestra y describe anteriormente con referencia a la Figura 3 puede transmitir el bloque de código intercalado al dispositivo de dispositivo de recepción de comunicación inalámbrica.
La Figura 9 es un diagrama de flujo que ilustra otro procedimiento ilustrativo 900 para la intercalación de los bits codificados de acuerdo con algunos aspectos de la presente divulgación. En algunos ejemplos, el procedimiento 900 puede implementarse mediante un dispositivo de comunicación inalámbrica como se describe anteriormente y se ilustra en las Figuras 1-5. En algunos ejemplos, el procedimiento 900 puede implementarse mediante cualquier aparato o medio adecuado para llevar a cabo las funciones descritas.
En el bloque 902, el dispositivo de comunicación inalámbrica puede codificar un bloque de información para producir un bloque de código que incluye una pluralidad de bits codificados. En algunos ejemplos, el bloque de información puede codificarse mediante el uso de la codificación polar. Por ejemplo, el codificador 342 que se muestra y describe anteriormente con referencia a la Figura 3 puede codificar el bloque de información para producir el bloque de código.
En el bloque 904, el dispositivo de comunicación inalámbrica puede introducir los bits codificados en las filas sucesivas de un intercalador, iniciando con la primera fila, donde el número de columnas en el intercalador varía entre las filas. En algunos ejemplos, el intercalador incluye una matriz en forma de triángulo isósceles recto o una matriz de filas y columnas en forma de trapezoide. Por ejemplo, el intercalador 344 que se muestra y describe anteriormente con referencia a la Figura 3 puede introducir los bits codificados en el bloque de código en las filas sucesivas del intercalador.
En el bloque 906, el dispositivo de comunicación inalámbrica puede insertar valores nulos en las filas restantes del intercalador después de que los bits codificados se introduzcan en el intercalador. Por ejemplo, el intercalador 344 que se muestra y describe anteriormente con referencia a la Figura 3 puede insertar los valores nulos en las filas restantes del intercalador.
En el bloque 908, el dispositivo de comunicación inalámbrica puede leer los bits codificados de las columnas sucesivas del intercalador, iniciando con la primera columna y omitiendo los valores nulos, para producir un bloque de código intercalado. Por ejemplo, el intercalador 344 que se muestra y describe anteriormente con referencia a la Figura 3 puede leer los bits codificados de las columnas sucesivas del intercalador.
En el bloque 910, el dispositivo de comunicación inalámbrica puede transmitir el bloque de código intercalado a un dispositivo de recepción de comunicación inalámbrica a través de una interfaz aérea inalámbrica. Por ejemplo, el codificador 342, junto con el transceptor 310, que se muestra y describe anteriormente con referencia a la Figura 3 puede transmitir el bloque de código intercalado al dispositivo de dispositivo de recepción de comunicación inalámbrica.
La Figura 10 es un diagrama de flujo que ilustra otro procedimiento ilustrativo 1000 para la intercalación de los bits codificados de acuerdo con algunos aspectos de la presente divulgación. En algunos ejemplos, el procedimiento 1000 puede implementarse mediante un dispositivo de comunicación inalámbrica como se describe anteriormente y se ilustra en las Figuras 1-5. En algunos ejemplos, el procedimiento 1000 puede implementarse mediante cualquier aparato o medio adecuado para llevar a cabo las funciones descritas.
En el bloque 1002, el dispositivo de comunicación inalámbrica puede codificar un bloque de información para producir un bloque de código que incluye una pluralidad de bits codificados. En algunos ejemplos, el bloque de información puede codificarse mediante el uso de la codificación polar. Por ejemplo, el codificador 342 que se muestra y describe anteriormente con referencia a la Figura 3 puede codificar el bloque de información para producir el bloque de código.
En el bloque 1004, el dispositivo de comunicación inalámbrica puede insertar valores nulos en las filas sucesivas de una matriz correspondiente a un intercalador, iniciando con la primera fila, donde el número de columnas en el intercalador varía entre las filas. En algunos ejemplos, el intercalador incluye una matriz en forma de triángulo isósceles recto o una matriz de filas y columnas en forma de trapezoide. En algunos ejemplos, el número de valores nulos es igual al número de elementos en la matriz menos el número de bits codificados. Por ejemplo, el intercalador 344 que se muestra y describe anteriormente con referencia a la Figura 3 puede insertar valores nulos en las filas sucesivas del intercalador.
En el bloque 1006, el dispositivo de comunicación inalámbrica puede introducir los bits codificados en las filas restantes del intercalador después que se insertan los valores nulos en el intercalador. Por ejemplo, el intercalador 344 que se muestra y describe anteriormente con referencia a la Figura 3 puede introducir los bits codificados en las filas restantes del intercalador.
En el bloque 1008, el dispositivo de comunicación inalámbrica puede leer los bits codificados de las columnas sucesivas del intercalador, iniciando con la primera columna y omitiendo los valores nulos, para producir un bloque de código intercalado. Por ejemplo, el intercalador 344 que se muestra y describe anteriormente con referencia a la Figura 3 puede leer los bits codificados de las columnas sucesivas del intercalador.
En el bloque 1010, el dispositivo de comunicación inalámbrica puede transmitir el bloque de código intercalado a un dispositivo de recepción de comunicación inalámbrica a través de una interfaz aérea inalámbrica. Por ejemplo, el codificador 342, junto con el transceptor 310, que se muestra y describe anteriormente con referencia a la Figura 3 puede transmitir el bloque de código intercalado al dispositivo de dispositivo de recepción de comunicación inalámbrica.
En una configuración, un aparato configurado para la comunicación inalámbrica (por ejemplo, el dispositivo de comunicación inalámbrica 202 que se muestra en la Figura 2 y/o el dispositivo de comunicación inalámbrica 300 que se muestra en la Figura 3) incluye medios para la codificación de un bloque de información para producir un bloque de código que incluye una pluralidad de bits codificados. El dispositivo de comunicación inalámbrica incluye además medios para la intercalación de la pluralidad de bits codificados para producir un bloque de código intercalado, donde los medios para la intercalación incluyen una pluralidad de filas y una pluralidad de columnas, y un número de la pluralidad de columnas varía entre la pluralidad de filas. El dispositivo de comunicación inalámbrica incluye además medios para la transmisión del bloque de código intercalado a un dispositivo de recepción de comunicación inalámbrica a través de una interfaz aérea inalámbrica.
En un aspecto, los medios antes mencionados para la codificación del bloque de información pueden incluir el codificador 224 que se muestra en la Figura 2, el o los procesadores 304 que se muestran en la Figura 3, el codificador 342 que se muestra en la Figura 3, y/o el codificador polar 520 que se muestra en la Figura 5. En otro aspecto, los medios antes mencionados para la intercalación de los bits codificados pueden incluir el o los procesadores 304 que se muestran en la Figura 3, el intercalador 344 que se muestra en la Figura 3, el intercalador 400 que se muestra en la Figura 4 y/o el intercalador 540 que se muestra en la Figura 5. En otro aspecto, los medios antes mencionados para la transmisión del bloque de código intercalado pueden incluir el transceptor 310 en combinación con el o los procesadores 304 que se muestran en la Figura 3. En otro aspecto más, los medios antes mencionados pueden ser un circuito o cualquier aparato configurado para realizar las funciones recitadas por los medios antes mencionados.
Dentro de la presente divulgación, la palabra "ilustrativo" se usa para significar "que sirve como un ejemplo, caso, o ilustración." Cualquier implementación o aspecto descritos en la presente memoria como "ilustrativo" no se debe interpretar necesariamente como preferente o ventajoso por encima de otros aspectos de la divulgación. Igualmente, el término "aspectos" no requiere que todos los aspectos de la divulgación incluyan la característica, ventaja o modo de operación discutido. El término "acoplado" se usa en la presente memoria para referirse al acoplamiento directo o indirecto entre dos objetos. Por ejemplo, si el objeto A toca físicamente el objeto B y el objeto B toca el objeto C, entonces los objetos A y C todavía pueden considerarse acoplados entre sí, incluso si no se tocan físicamente de forma directa entre sí. Por ejemplo, un primer objeto puede acoplarse a un segundo objeto incluso si el primer objeto nunca está en contacto físicamente de manera directa con el segundo objeto. Los términos "circuito" y "circuitería" se usan de manera amplia y pretenden incluir tanto las implementaciones de hardware de dispositivos eléctricos como de conductores que, cuando se conectan y configuran, permiten el desempeño de las funciones descritas en la presente divulgación, sin limitación en cuanto al tipo de circuitos electrónicos, así como también las implementaciones de software de información e instrucciones que, cuando se ejecutan por un procesador, permiten el desempeño de las funciones descritas en la presente divulgación.
Uno o más de los componentes, etapas, características y/o funciones ilustrados en las Figuras 1-10 puede redisponerse y/o combinarse en un solo componente, etapa, característica o función o incorporarse en varios componentes, etapas o funciones. También pueden añadirse elementos, componentes, etapas y/o funciones adicionales sin apartarse de las características novedosas divulgadas en la presente memoria. Los aparatos, dispositivos y/o componentes ilustrados en las Figuras 1-5 pueden configurarse para realizar uno o más de los procedimientos, características, o etapas descritos en la presente memoria. Los algoritmos novedosos descritos en la presente memoria también pueden implementarse eficientemente en software y/o integrarse en hardware.
Se entiende que el orden o jerarquía específica de las etapas en los procedimientos divulgados es una ilustración de procesos ilustrativos. Basado en las preferencias de diseño, se entiende que el orden o jerarquía específica de las etapas en los procedimientos pueden redisponerse. El procedimiento acompañante reivindica los elementos presentes de las diversas etapas en un orden de muestra y no pretenden limitarse al orden o jerarquía específicos presentados a menos que se enumeren específicamente en ellos.
La descripción anterior se proporciona para permitir que cualquier experto en la técnica ponga en práctica los diversos aspectos que se describen en la presente memoria. Diversas modificaciones de estos aspectos resultarán fácilmente evidentes para los expertos en la técnica y los principios genéricos que se definen en la presente memoria pueden aplicarse a otros aspectos. Por tanto, las reivindicaciones no pretenden limitarse a los aspectos que se muestran en la presente memoria, pero se les debe otorgar el ámbito completo consistente con el lenguaje de las reivindicaciones del lenguaje, en el que la referencia a un elemento en singular no pretende significar "uno y solo uno" a menos que específicamente así lo indique, sino más bien "uno o más". A menos que se indique específicamente lo contrario, el término "algunos" se refiere a uno o más. Una expresión que se refiere a "al menos uno de" una lista de elementos se refiere a cualquier combinación de esos elementos, incluyendo los miembros únicos. Como un ejemplo, "al menos uno de: a, b o c" pretende cubrir: a; b; c; a y b; a y c; b y c; y a, b y c.

Claims (13)

REIVINDICACIONES
1. Un método de comunicación inalámbrica en un dispositivo receptor de comunicación inalámbrica (204, 300), que comprende:
recibir un bloque de código intercalado que comprende una pluralidad de bits codificados desde un dispositivo transmisor de comunicación inalámbrica (202, 300) a través de una interfaz aérea inalámbrica; desintercalar el bloque de código intercalado utilizando un intercalador para producir un bloque de código, en el que el intercalador comprende una pluralidad de filas y una pluralidad de columnas, en el que un número de la pluralidad de columnas varía entre la pluralidad de filas, en el que la desintercalación de la pluralidad de bits codificados comprende además:
introducir la pluralidad de bits codificados de las columnas sucesivas de la pluralidad de columnas del intercalador iniciando con la primera columna de la pluralidad de columnas; y leer la pluralidad de bits codificados de las filas sucesivas de la pluralidad de filas del intercalador iniciando con la primera fila de la pluralidad de filas;
en el que el primero de los bits codificados de la primera fila es el primero de los bits codificados de la primera columna;
en el que un número de filas en una primera columna de la pluralidad de columnas y un número de columnas en una primera fila de la pluralidad de filas son iguales y se seleccionan en base a un número de la pluralidad de bits codificados en el bloque de código, y el número de bits codificados en cada fila disminuye desde el mayor número de bits codificados en la primera fila hasta el menor número de bits codificados en la última fila;
en el que el número de filas en la primera columna es igual al número entero más pequeño P que satisface una ecuación P*(P+1)/2 > N, donde N corresponde al número de la pluralidad de bits codificados en el bloque de código; y
decodificar el bloque de código para producir un bloque de información.
2. El procedimiento de la reivindicación 1, en el que un número de la pluralidad de bits codificados entre los bits adyacentes de la pluralidad de bits codificados dentro de las filas adyacentes de la pluralidad de filas varía entre la pluralidad de filas.
3. El procedimiento de la reivindicación 1, en el que el intercalador comprende una matriz en forma de triángulo isósceles recto de la pluralidad de filas y la pluralidad de columnas.
4. El procedimiento de la reivindicación 1, en el que la desintercalación de la pluralidad de bits codificados comprende además:
insertar uno o más valores nulos en las filas restantes de la pluralidad de filas después de introducir la pluralidad de bits codificados al intercalador; y
omitiendo uno o más valores nulos al leer la pluralidad de bits codificados.
5. El procedimiento de la reivindicación 4, en el que el intercalador comprende una matriz en forma de trapezoide de la pluralidad de filas y la pluralidad de columnas excluyendo las filas restantes de la pluralidad de filas que contienen uno o más valores nulos.
6. El procedimiento de la reivindicación 1, en el que la desintercalación de la pluralidad de bits codificados comprende además:
insertar uno o más valores nulos en las filas sucesivas de la pluralidad de filas del intercalador iniciando con la primera fila de la pluralidad de filas, en el que un número del uno o más valores nulos es igual a un número de elementos en una matriz que comprende la pluralidad de filas y la pluralidad de columnas menos un número de la pluralidad de bits codificados;
introducir la pluralidad de bits codificados en las filas restantes de la pluralidad de filas después de insertar uno o más valores nulos en el intercalador;
leer la pluralidad de bits codificados de las columnas sucesivas de la pluralidad de columnas del intercalador iniciando con la primera columna de la pluralidad de columnas; y
omitiendo uno o más valores nulos al leer la pluralidad de bits codificados.
7. El método de la reivindicación 1, en el que la decodificación del bloque de código comprende además:
la decodificación polar del bloque de código, en el que el bloque de código comprende un bloque de código polar.
8. Un aparato (204, 300) configurado para la comunicación inalámbrica, comprendiendo el aparato (204, 300): medios para recibir (310) un bloque de código intercalado que comprende una pluralidad de bits codificados desde un dispositivo transmisor de comunicación inalámbrica (202, 300) a través de una interfaz aérea inalámbrica;
medios para la desintercalación (344, 354) del bloque de código intercalado para producir un bloque de código, en el que los medios para la desintercalación (344, 354) comprenden una pluralidad de filas y una pluralidad de columnas, en el que un número de la pluralidad de columnas varía entre la pluralidad de filas, en el que el medio para la desintercalación (344, 354) de la pluralidad de bits codificados comprende además:
medios para introducir la pluralidad de bits codificados en las columnas sucesivas de la pluralidad de columnas iniciando con una primera columna de la pluralidad de columnas; y
medios para leer la pluralidad de bits codificados en las filas sucesivas de la pluralidad de filas iniciando con la primera fila de la pluralidad de filas; y
en el que el primero de los bits codificados de la primera fila es el primero de los bits codificados de la primera columna;
en el que un número de filas en una primera columna de la pluralidad de columnas y un número de columnas en una primera fila de la pluralidad de filas son iguales y se seleccionan en base a un número de la pluralidad de bits codificados en el bloque de código, y el número de bits codificados en cada fila disminuye desde el mayor número de bits codificados en la primera fila hasta el menor número de bits codificados en la última fila;
en el que el número de filas en la primera columna es igual al número entero más pequeño P que satisface una ecuación P*(P+1)/2 > N, donde N corresponde al número de la pluralidad de bits codificados en el bloque de código; y
medios para decodificar (346, 356) el bloque de código para producir un bloque de información.
9. El aparato de la reivindicación 8, en el que un número de la pluralidad de bits codificados entre los bits adyacentes de la pluralidad de bits codificados dentro de las filas adyacentes de la pluralidad de filas varía entre la pluralidad de filas.
10. El aparato de la reivindicación 8, en el que los medios para la desintercalación comprenden una matriz en forma de triángulo isósceles recto de la pluralidad de filas y la pluralidad de columnas.
11. El aparato de la reivindicación 8, en el que el medio para la desintercalación de la pluralidad de bits codificados comprende además:
medios para insertar uno o más valores nulos en las filas restantes de la pluralidad de filas después de la pluralidad de bits codificados; y
medios para omitir el uno o más valores nulos cuando se lee la pluralidad de bits codificados, en el que los medios para la desintercalación comprenden una matriz en forma de trapezoide de la pluralidad de filas y la pluralidad de columnas excluyendo las filas restantes de la pluralidad de filas que contienen el uno o más valores nulos.
12. El aparato de la reivindicación 8, en el que el medio para la desintercalación de la pluralidad de bits codificados comprende además:
medios para insertar uno o más valores nulos en las filas sucesivas de la pluralidad de filas iniciando con la primera fila de la pluralidad de filas, en el que un número del uno o más valores nulos es igual a un número de elementos en una matriz que comprende la pluralidad de filas y la pluralidad de columnas menos un número de la pluralidad de bits codificados;
medios para introducir la pluralidad de bits codificados en las filas restantes de la pluralidad de filas después del uno o más valores nulos;
medios para leer la pluralidad de bits codificados de las columnas sucesivas de la pluralidad de columnas iniciando con la primera columna de la pluralidad de columnas; y
medios para omitir uno o más valores nulos cuando se lee la pluralidad de bits codificados.
13. Un medio legible por ordenador no transitorio (306) que tiene almacenadas en el mismo instrucciones (352, 354, 356) ejecutables por uno o más procesadores (304) de un dispositivo receptor de comunicación inalámbrica (204, 300), y que, cuando es ejecutado por el uno o más procesadores (304), hacen que el dispositivo receptor de comunicaciones inalámbricas:
reciba un bloque de código intercalado que comprende una pluralidad de bits codificados desde un dispositivo transmisor de comunicación inalámbrica a través de una interfaz aérea inalámbrica;
desintercalar la pluralidad de bits codificados utilizando un intercalador para producir un bloque de código intercalado, en el que el intercalador comprende una pluralidad de filas y una pluralidad de columnas, en el que un número de la pluralidad de columnas varía entre la pluralidad de filas, en el que el código para desintercalar la pluralidad de bits codificados comprende además un código que, cuando es ejecutado por el ordenador (304), provoca que el ordenador (304):
introduzca la pluralidad de bits codificados de las columnas sucesivas de la pluralidad de columnas del intercalador iniciando con la primera columna de la pluralidad de columnas; y
leer la pluralidad de bits codificados de las filas sucesivas de la pluralidad de filas del intercalador iniciando con la primera fila de la pluralidad de filas; y
en el que el primero de los bits codificados de la primera fila es el primero de los bits codificados de la primera columna;
en el que un número de filas en una primera columna de la pluralidad de columnas y un número de columnas en una primera fila de la pluralidad de filas son iguales y se seleccionan en base a un número de la pluralidad de bits codificados en el bloque de código, y el número de bits codificados en cada fila disminuye desde el mayor número de bits codificados en la primera fila hasta el menor número de bits codificados en la última fila,
en el que el número de filas en la primera columna es igual al número entero más pequeño P que satisface una ecuación P*(P+1)/2 > N, donde N corresponde al número de la pluralidad de bits codificados en el bloque de código; y
decodificar el bloque de código para producir un bloque de información.
ES20176863T 2017-04-10 2018-03-09 Un diseño de intercalador eficiente para códigos polares Active ES2928290T3 (es)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2017/079903 WO2018187902A1 (en) 2017-04-10 2017-04-10 An efficient interleaver design for polar codes

Publications (1)

Publication Number Publication Date
ES2928290T3 true ES2928290T3 (es) 2022-11-16

Family

ID=63792196

Family Applications (2)

Application Number Title Priority Date Filing Date
ES20176863T Active ES2928290T3 (es) 2017-04-10 2018-03-09 Un diseño de intercalador eficiente para códigos polares
ES18783922T Active ES2927818T3 (es) 2017-04-10 2018-03-09 Un diseño de intercalador eficiente para códigos polares

Family Applications After (1)

Application Number Title Priority Date Filing Date
ES18783922T Active ES2927818T3 (es) 2017-04-10 2018-03-09 Un diseño de intercalador eficiente para códigos polares

Country Status (24)

Country Link
US (4) US10404413B2 (es)
EP (4) EP4135228A1 (es)
JP (1) JP7102437B2 (es)
KR (2) KR102180855B1 (es)
CN (2) CN112039636B (es)
AR (1) AR111366A1 (es)
AU (1) AU2018252604B2 (es)
BR (1) BR112019021069A2 (es)
CA (1) CA3055439C (es)
CL (1) CL2019002870A1 (es)
CO (1) CO2019011181A2 (es)
DK (1) DK3610592T3 (es)
ES (2) ES2928290T3 (es)
HU (2) HUE060061T2 (es)
IL (2) IL269072B (es)
MX (1) MX2019012060A (es)
PH (1) PH12019502015A1 (es)
PT (1) PT3720024T (es)
RU (1) RU2753575C2 (es)
SG (1) SG11201908068TA (es)
SI (1) SI3720024T1 (es)
TW (1) TWI745579B (es)
WO (2) WO2018187902A1 (es)
ZA (1) ZA201906664B (es)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108028667A (zh) * 2015-09-24 2018-05-11 华为技术有限公司 具有很短信息块的咬尾卷积码
WO2018187902A1 (en) 2017-04-10 2018-10-18 Qualcomm Incorporated An efficient interleaver design for polar codes
US10868569B2 (en) * 2017-05-08 2020-12-15 Qualcomm Incorporated PBCH signal design and efficient continuous monitoring and polar decoding
US10560910B2 (en) 2017-06-12 2020-02-11 Qualcomm Incoporated Synchronization signal for a broadcast channel
KR20230053703A (ko) * 2017-08-04 2023-04-21 퀄컴 인코포레이티드 폴라 코드를 위한 효율적인 인터리버 설계
US11223372B2 (en) * 2019-11-27 2022-01-11 Hughes Network Systems, Llc Communication throughput despite periodic blockages
CN115622572A (zh) * 2020-04-22 2023-01-17 华为技术有限公司 编码、译码方法、装置及设备
WO2023130281A1 (zh) * 2022-01-05 2023-07-13 Oppo广东移动通信有限公司 交织方法、解交织方法和设备

Family Cites Families (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4559625A (en) 1983-07-28 1985-12-17 Cyclotomics, Inc. Interleavers for digital communications
ATE292336T1 (de) 1997-01-31 2005-04-15 Cit Alcatel Verfahren und geräte zur schachtelung/entschachtelung von digitalen daten und kommunikationssystem
GB2327578A (en) * 1997-07-18 1999-01-27 Nokia Mobile Phones Ltd Convolutional interleaver for preventing the transmission of unwanted data
US6105158A (en) * 1998-04-03 2000-08-15 Lucent Technologies, Inc. Screening for undetected errors in data transmission systems
CN1147052C (zh) 1998-05-27 2004-04-21 Ntt移动通信网株式会社 插入方法与设备和去插入方法与设备
US6347385B1 (en) 1998-08-03 2002-02-12 Nortel Networks Limited Interleavers for turbo code
DE69907011T2 (de) * 1998-10-30 2004-03-25 Broadcom Corp., Irvine Verallgemeinerter faltungsver- und -entschachteler
FI106416B (fi) * 1999-02-09 2001-01-31 Nokia Mobile Phones Ltd Menetelmä ja laite dekoodatun symbolisarjan luotettavuuden määrittämiseksi
KR100526512B1 (ko) 1999-05-20 2005-11-08 삼성전자주식회사 이동 통신시스템의 직렬 쇄상 컨볼루션 부호화를 위한 인터리빙장치 및 방법
US6848069B1 (en) * 1999-08-10 2005-01-25 Intel Corporation Iterative decoding process
FR2812150A1 (fr) 2000-07-18 2002-01-25 St Microelectronics Sa Dispositif d'emission/reception de donnees numeriques capable de traiter des debits differents, en particulier dans un environnement vdsl
US6772377B2 (en) 2001-09-28 2004-08-03 Texas Instruments Incorporated Convolutional interleaving with interleave depth larger than codeword size
US7280625B2 (en) 2002-12-11 2007-10-09 Qualcomm Incorporated Derivation of eigenvectors for spatial processing in MIMO communication systems
US8179954B2 (en) 2007-10-30 2012-05-15 Sony Corporation Odd interleaving only of an odd-even interleaver when half or less data subcarriers are active in a digital video broadcasting (DVB) standard
GB2454193B (en) 2007-10-30 2012-07-18 Sony Corp Data processing apparatus and method
EP3340511B1 (en) 2004-10-12 2022-11-30 TQ Delta, LLC Resource sharing in a telecommunications enviroment
US7516390B2 (en) 2005-01-10 2009-04-07 Broadcom Corporation LDPC (Low Density Parity Check) coding and interleaving implemented in MIMO communication systems
US20060153285A1 (en) 2005-01-12 2006-07-13 Texas Instruments Incorporaated Dynamic interleaver depth change for a general convolutional interleaver
US7738583B2 (en) 2005-04-21 2010-06-15 Broadcom Corporation Reduced feedback for beamforming in a wireless communication
US7676735B2 (en) * 2005-06-10 2010-03-09 Digital Fountain Inc. Forward error-correcting (FEC) coding and streaming
US7657818B2 (en) 2005-06-22 2010-02-02 Adaptive Spectrum And Signal Alignment, Inc. Dynamic minimum-memory interleaving
US7793190B1 (en) 2005-08-10 2010-09-07 Trellisware Technologies, Inc. Reduced clash GRA interleavers
CN101292486B (zh) 2005-09-06 2012-10-10 日本电信电话株式会社 无线发送装置和无线接收装置、无线发送方法和无线接收方法、以及无线通信系统和无线通信方法
US7802165B2 (en) 2006-08-17 2010-09-21 Lantiq Deutschland Gmbh Decoder system for data encoded with interleaving and redundancy coding
US8352843B2 (en) * 2007-03-16 2013-01-08 Qualcomm Incorporated Method and apparatus for coding a communication signal
KR101531910B1 (ko) * 2007-07-02 2015-06-29 엘지전자 주식회사 방송 수신기 및 방송신호 처리방법
EP2051387A1 (en) 2007-10-15 2009-04-22 CoreOptics, Inc., c/o The Corporation Trust Center Receiver, interleaving and deinterleaving circuit and method
DK2056510T3 (da) 2007-10-30 2013-05-21 Sony Corp Anordning og fremgangsmåde til databehandling
TWI442731B (zh) 2007-10-30 2014-06-21 Sony Corp 資料處理設備及方法
KR101355633B1 (ko) 2007-11-06 2014-01-29 삼성전자주식회사 인코더 및 인코딩 방법
KR100925441B1 (ko) 2008-01-07 2009-11-06 엘지전자 주식회사 분산형 가상자원블록 스케쥴링 방법
US8572456B1 (en) 2009-05-22 2013-10-29 Altera Corporation Avoiding interleaver memory conflicts
US8442163B2 (en) * 2009-08-24 2013-05-14 Eric Morgan Dowling List-viterbi hard iterative decoder for multilevel codes
US8677227B2 (en) * 2010-08-25 2014-03-18 Royal Institution for the Advancement of Learning / McGill University Method and system for decoding
US9176927B2 (en) * 2011-11-08 2015-11-03 The Royal Institution For The Advancement Of Learning/Mcgill University Methods and systems for decoding polar codes
US9503126B2 (en) * 2012-07-11 2016-11-22 The Regents Of The University Of California ECC polar coding and list decoding methods and codecs
CN103260033B (zh) * 2013-04-26 2017-02-08 西安交通大学 一种联合端系统和中继节点网络编码的鲁棒视频传输方法
CN104219019B (zh) * 2013-05-31 2021-06-22 华为技术有限公司 编码方法及编码设备
WO2014199865A1 (ja) * 2013-06-12 2014-12-18 ソニー株式会社 データ処理装置、及びデータ処理方法
US9319073B2 (en) * 2014-02-11 2016-04-19 Seagate Technology Llc Mitigation of write errors in multi-level cell flash memory through adaptive error correction code decoding
EP3799314B1 (en) * 2014-02-20 2023-07-26 Huawei Technologies Co., Ltd. Rate matching with sub-block interleaving and a virtual buffer for polar codes
WO2015143593A1 (zh) * 2014-03-24 2015-10-01 华为技术有限公司 极性码的速率匹配方法和速率匹配装置
KR102157667B1 (ko) * 2014-05-15 2020-09-18 삼성전자주식회사 천공 장치 및 그의 천공 방법
US9479216B2 (en) * 2014-07-28 2016-10-25 Uvic Industry Partnerships Inc. Spread spectrum method and apparatus
US10231121B2 (en) * 2015-06-24 2019-03-12 Lg Electronics Inc. Security communication using polar code scheme
US10312946B2 (en) * 2017-02-06 2019-06-04 Mitsubishi Electric Research Laboratories, Inc. Soft-output decoding of codewords encoded with polar code
WO2018187902A1 (en) 2017-04-10 2018-10-18 Qualcomm Incorporated An efficient interleaver design for polar codes
KR20230053703A (ko) 2017-08-04 2023-04-21 퀄컴 인코포레이티드 폴라 코드를 위한 효율적인 인터리버 설계
KR20200036338A (ko) 2018-09-28 2020-04-07 삼성전자주식회사 무선 통신 시스템에서 극 부호를 이용한 부호화 및 복호화를 위한 장치 및 방법
US10931360B2 (en) * 2019-04-23 2021-02-23 Samsung Electronics Co., Ltd System and method for providing multiple input multiple output (MIMO) detector selection with reinforced learning neural network
US11418220B2 (en) * 2020-03-20 2022-08-16 Huawei Technologies Co., Ltd. Method, system, and apparatus for a segmented polarization-adjusted convolutional (PAC) code
US11677500B2 (en) * 2020-09-30 2023-06-13 Polaran Haberlesme Teknolojileri Anonim Sirketi Methods and apparatus for encoding and decoding of data using concatenated polarization adjusted convolutional codes

Also Published As

Publication number Publication date
RU2019131688A (ru) 2021-05-11
SG11201908068TA (en) 2019-10-30
HUE060061T2 (hu) 2023-01-28
CN112039636A (zh) 2020-12-04
BR112019021069A2 (pt) 2020-05-12
IL269072B (en) 2020-03-31
JP2020517149A (ja) 2020-06-11
PH12019502015A1 (en) 2020-06-01
CO2019011181A2 (es) 2019-10-21
ES2927818T3 (es) 2022-11-11
EP3720024A1 (en) 2020-10-07
US10404413B2 (en) 2019-09-03
TWI745579B (zh) 2021-11-11
HUE059986T2 (hu) 2023-01-28
JP7102437B2 (ja) 2022-07-19
IL272812A (en) 2020-04-30
EP3610592A4 (en) 2020-09-30
US11996940B2 (en) 2024-05-28
RU2019131688A3 (es) 2021-06-28
US20230095580A1 (en) 2023-03-30
IL269072A (en) 2019-11-28
WO2018188439A1 (en) 2018-10-18
US20180294922A1 (en) 2018-10-11
PT3720024T (pt) 2022-10-03
EP3610592B1 (en) 2022-09-07
AU2018252604B2 (en) 2022-05-05
CN110521150A (zh) 2019-11-29
RU2753575C2 (ru) 2021-08-17
EP3720024B1 (en) 2022-09-07
SI3720024T1 (sl) 2022-11-30
US20230109472A1 (en) 2023-04-06
CN110521150B (zh) 2020-10-09
CL2019002870A1 (es) 2020-02-21
KR102180855B1 (ko) 2020-11-19
KR102642376B1 (ko) 2024-02-28
KR20200130524A (ko) 2020-11-18
MX2019012060A (es) 2019-11-11
ZA201906664B (en) 2023-05-31
KR20190129134A (ko) 2019-11-19
CA3055439C (en) 2021-08-24
CA3055439A1 (en) 2018-10-18
EP3610592A1 (en) 2020-02-19
WO2018187902A1 (en) 2018-10-18
US11558149B2 (en) 2023-01-17
EP4135228A1 (en) 2023-02-15
CN112039636B (zh) 2023-05-09
TW201842742A (zh) 2018-12-01
AR111366A1 (es) 2019-07-03
AU2018252604A1 (en) 2019-09-26
DK3610592T3 (da) 2022-10-03
EP4135229A1 (en) 2023-02-15
US20190372716A1 (en) 2019-12-05

Similar Documents

Publication Publication Date Title
ES2928290T3 (es) Un diseño de intercalador eficiente para códigos polares
US10348329B2 (en) Low density parity check (LDPC) circular buffer rate matching
WO2018107430A1 (en) Crc bits for joint decoding and verification of control information using polar codes
US11394491B2 (en) Nested structure for polar code construction using density evolution
US11026253B2 (en) Mapping a physical downlink control channel (PDCCH) across multiple transmission configuration indication (TCI) states
US11451245B2 (en) Efficient interleaver designs for polar codes
WO2019028590A1 (en) ANTICIPATED STOP OF POLAR CODES USING DISTRIBUTED CYCLIC REDUNDANCY MONITORING