KR101018611B1 - 멀티캐스트 메시지들에 대한 계층적 코딩 - Google Patents

멀티캐스트 메시지들에 대한 계층적 코딩 Download PDF

Info

Publication number
KR101018611B1
KR101018611B1 KR1020087016421A KR20087016421A KR101018611B1 KR 101018611 B1 KR101018611 B1 KR 101018611B1 KR 1020087016421 A KR1020087016421 A KR 1020087016421A KR 20087016421 A KR20087016421 A KR 20087016421A KR 101018611 B1 KR101018611 B1 KR 101018611B1
Authority
KR
South Korea
Prior art keywords
data
code
rate
decoded
input data
Prior art date
Application number
KR1020087016421A
Other languages
English (en)
Other versions
KR20080089383A (ko
Inventor
알렉세이 고로코브
아브네시 아그라왈
아빈드 비제이 케어시
Original Assignee
퀄컴 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 퀄컴 인코포레이티드 filed Critical 퀄컴 인코포레이티드
Publication of KR20080089383A publication Critical patent/KR20080089383A/ko
Application granted granted Critical
Publication of KR101018611B1 publication Critical patent/KR101018611B1/ko

Links

Images

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/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/2945Coding, 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 using at least three error correction 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/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/2903Methods and arrangements specifically for encoding, e.g. parallel encoding of a plurality of constituent 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/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/2948Iterative decoding
    • 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/2978Particular arrangement of the component decoders
    • 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/63Joint error correction and other techniques
    • H03M13/635Error control coding in combination with rate matching
    • H03M13/6362Error control coding in combination with rate matching by puncturing
    • 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/65Purpose and implementation aspects
    • H03M13/6508Flexibility, adaptability, parametrability and configurability of the implementation
    • H03M13/6513Support of multiple code types, e.g. unified decoder for LDPC and turbo 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/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/0045Arrangements at the receiver end
    • H04L1/0047Decoding adapted to other signal detection operation
    • H04L1/005Iterative decoding, including iteration between signal detection and decoding operation
    • 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/0064Concatenated codes
    • H04L1/0065Serial concatenated 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/007Unequal error protection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2381Adapting the multiplex stream to a specific network, e.g. an Internet Protocol [IP] network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2383Channel coding or modulation of digital bit-stream, e.g. QPSK modulation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2402Monitoring of the downstream path of the transmission network, e.g. bandwidth available
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2404Monitoring of server processing errors or hardware failure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2405Monitoring of the internal components or processes of the server, e.g. server load
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/64Addressing
    • H04N21/6405Multicasting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/64Addressing
    • H04N21/6408Unicasting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L2001/0092Error control systems characterised by the topology of the transmission link
    • H04L2001/0093Point-to-multipoint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L5/00Arrangements affording multiple use of the transmission path
    • H04L5/02Channels characterised by the type of signal
    • H04L5/023Multiplexing of multicarrier modulation signals

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Engineering & Computer Science (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

계층적 코딩을 이용하여 시그널링 정보를 전송하는 기술들이 설명된다. 계층적 코딩을 이용하여, 사용자들을 위한 개별 메시지들이, (1) 각각의 사용자를 위한 메시지가 그 사용자에 대해 적합한 데이터 레이트로 전송되고, (2) 모든 사용자들에 대한 메시지들을 위해 단일 멀티캐스트 메시지가 생성되도록, 다수의 상호접속된 인코더들을 이용하여 인코딩된다. 기지국은 사용자들에 의해 지원되는 데이터 레이트들 및 이들 데이터 레이트들을 달성하기 위한 코드 레이트들을 결정한다. 각각의 데이터 레이트는 하나 이상의 코드 레이트들에 의해 결정된다. 사용자들에 대한 시그널링 정보는 상이한 데이터 레이트들로 전송될 데이터 블록들로 맵핑된다. 그 다음, 각각의 데이터 블록은 그 데이터 블록에 대한 데이터 레이트와 연관된 코드 레이트(들)에 따라 인코딩된다. 최종 코딩된 블록이 모든 사용자들을 위해 생성되고, 송신된다. 각각의 사용자는 그 사용자에게 전송된 메시지를 복원하기 위해 상보적인 디코딩을 수행한다.
Figure R1020087016421
멀티캐스트 메시지, 계층적 코딩, 데이터 레이트, 코드 레이트, 인코딩, 디코딩

Description

멀티캐스트 메시지들에 대한 계층적 코딩{HIERARCHICAL CODING FOR MULTICAST MESSAGES}
본 출원은 본 양수인에게 양도되고 참조에 의해 본원에 통합된, 2005년 12월 5일 출원된 "Hierarchical Coding for Multicast Control Messages" 라는 제목의 미국 가출원 제 60/742,678 호, 및 2006년 2월 17일 출원된 "Hierarchical Coding For Multicast Messages" 라는 제목의 미국 가출원 제 60/774,789 호에 기초하여 우선권을 주장한다.
배경
Ⅰ. 분야
본 명세서는 일반적으로 통신에 관한 것이고, 더욱 구체적으로는 데이터 인코딩 및 디코딩을 위한 기술들에 관한 것이다.
Ⅱ. 배경
다중-접속 통신 시스템은 가용 시스템 자원을 공유함으로써 다수의 사용자들에 대한 통신을 지원할 수 있다. 사용자들에게 할당되는 자원은 시스템에 의해 구현되는 다중-접속 방식에 의존한다. 예를 들어, 시스템은 시간, 주파수, 코드 공간, 및/또는 송신 전력에 기초하여 자원을 할당할 수도 있다. 사용자는 할당된 자원을 이용하여 시스템으로 접속 요청을 전송하고 접속 승인을 수신함으로써 시스템과의 링크를 확립할 수도 있다. 그 다음, 사용자는 그 확립된 링크를 통해 시스템과 통신할 수도 있다.
다중-접속 시스템은 통상적으로 사용자들로의 시그널링 송신을 위해 일부 자원을 보존한다. 시그널링은 접속 승인과 같은, 적절한 시스템 동작을 위해 필요한 다양한 타입들의 정보에 대한 것일 수도 있다. 시그널링은 종종, 오버헤드 채널, 제어 채널, 또는 브로드캐스트 채널이라고도 불릴 수도 있는, 시그널링 채널을 통해 전송된다.
시그널링 채널은 통상적으로 유니캐스트 채널 또는 브로드캐스트 채널 중 어느 하나로서 전송된다. 유니캐스트 시그널링 채널에서, 개별 사용자들에 대한 시그널링 메시지들은 따로따로 분리되어 인코딩된 다음, 이들 사용자들에게로 특정하여 시그널링 채널을 통해 전송된다. 각각의 메시지를 따로따로 인코딩하는 것은 열악한 코딩 효율을 초래한다. 브로드캐스트 시그널링 채널에서, 모든 사용자들에 대한 메시지들이 함께 인코딩된 다음, 모든 사용자들에게로 시그널링 채널을 통해 전송된다. 모든 메시지들을 함께 인코딩하는 것은 코딩 효율을 향상시킨다. 그러나, 브로드캐스트 시그널링 채널은 통상적으로, 최악의 채널 상태를 가진 사용자를 포함하여 모든 사용자들이 신뢰성 있게 이 시그널링 채널을 디코딩할 수 있도록 하는 방식으로 동작된다. 이는 브로드캐스트 시그널링 채널에 대해 낮은 코드 레이트 및/또는 높은 송신 전력을 이용함으로써 달성될 수도 있다. 최악의 경우의 사용자를 만족시키도록 브로드캐스트 시그널링 채널을 동작시키는 것은 종종 시그널링 채널에 대해 할당된 자원의 비효율적인 사용을 초래한다.
따라서, 다중-접속 시스템에서 더욱 효율적으로 시그널링 메시지를 송신하기 위한 기술들이 당해 기술분야에서 필요하다.
요약
계층적 코딩을 이용하여 시그널링 및/또는 다른 정보를 효율적으로 전송하기 위한 기술이 본원에 설명된다. 계층적 코딩을 이용하여, (1) 각각의 사용자에 대한 메시지가 그 사용자에 대해 적합한 데이터 레이트로 전송될 수도 있고, (2) 단일 멀티캐스트 메시지가 모든 사용자들에 대한 메시지를 위해 생성될 수도 있도록, 사용자들에 대한 개별 메시지들이 다수의 상호접속된 인코더들을 이용하여 인코딩될 수도 있다. 계층적 코딩(hierarchical coding)은 병렬 아키텍쳐(architecture), 직렬 아키텍쳐, 및 혼합된 아키텍쳐와 같은 다양한 코딩 아키텍쳐들로 구현될 수도 있다.
일 실시형태에서, 송신기 (예를 들어, 기지국) 는 예를 들어 사용자들에 대한 채널 상태 정보에 기초하여 사용자들에 의해 지원되는 데이터 레이트들을 결정한다. 송신기는 또한 예를 들어 병렬 또는 직렬 계층적 코딩 아키텍쳐에 기초하여, 사용자들에 대한 데이터 레이트들을 달성하기 위한 코드 레이트들을 결정한다. 각각의 데이터 레이트는 하나 이상의 코드 레이트들에 의해 결정된다. 사용자들에 대한 시그널링 정보는 입력 데이터의 블록들로 맵핑된다. 각각의 입력 데이터 블록은 상이한 데이터 레이트로 전송되고, 그 데이터 레이트와 연관된 코드 레이트(들)에 따라 인코딩된다. 일 실시형태에서, (예를 들어, 하나의 블록으로부터의) 제 1 입력 데이터가 제 1 코드 레이트에 따라 인코딩되어 제 1 코딩된 데이터를 생성한다. 그 다음, (예를 들어, 또 다른 블록으로부터의) 제 2 입력 데이터 및 제 1 코딩된 데이터는 제 2 코드 레이트에 따라 함께(jointly) 또는 따로따로(separately) 인코딩되어 제 2 코딩된 데이터를 생성한다. 나머지 입력 데이터가 하나 이상의 코드 레이트들에 따라, 가능하다면 코딩된 데이터와 함께, 인코딩된다. 최종 코딩된 데이터가 모든 사용자들을 위해 생성되고, 추가적으로 프로세싱되어 송신된다. 각각의 사용자는 그 사용자에게 전송된 메시지를 복원(recover)하기 위해 상보적인 디코딩을 수행한다.
본 발명의 다양한 양태들 및 실시형태들이 이하 더 자세히 설명된다.
도면의 간단한 설명
본 발명의 특징들 및 성질은, 동일한 참조 부호들이 전체를 통해 대응되게 식별하는 도면과 함께 이하에서 전개되는 상세한 설명으로부터 더욱 분명해질 것이다.
도 1 은 무선 다중-접속 통신 시스템을 나타낸다.
도 2 는 기지국 및 단말기의 블록도를 나타낸다.
도 3a 는 병렬 아키텍쳐에 대한 계층적 인코더를 나타낸다.
도 3b 는 직렬 아키텍쳐에 대한 계층적 인코더를 나타낸다.
도 3c 는 혼합된 아키텍쳐에 대한 계층적 인코더를 나타낸다.
도 4 는 계층적 인코더 내부의 인코더를 나타낸다.
도 5 는 순차적 계층적 디코더를 나타낸다.
도 6a 는 2-스테이지 계층적 인코더를 나타낸다.
도 6b 는 반복적 계층적 디코더를 나타낸다.
도 7 은 공유 시그널링 채널에 대한 시간-주파수도를 나타낸다.
도 8 은 계층적 코딩을 수행하기 위한 프로세스를 나타낸다.
도 9 는 계층적 코딩을 수행하기 위한 장치를 나타낸다.
도 10 은 계층적 디코딩을 수행하기 위한 프로세스를 나타낸다.
도 11 은 계층적 디코딩을 수행하기 위한 장치를 나타낸다.
상세한 설명
본원에서 "예시적(exemplary)" 이라는 말은 "예, 실례, 또는 예시로서 기능하는" 을 의미하기 위해 사용된다. "예시적" 으로 본원에서 설명된 임의의 실시형태 또는 설계는 다른 실시형태들 또는 설계들에 비해 바람직하다거나 이로운 것으로 반드시 해석될 필요는 없다.
도 1 은 다수의 기지국들 (110) 및 다수의 단말기들 (120) 을 갖는 무선 다중-접속 통신 시스템 (100) 을 나타낸다. 기지국은 단말기들과 통신하는 국이다. 기지국은 액세스 포인트, 노드 B, 베이스 트랜시버 서브시스템 (BTS), 및/또는 몇몇 다른 네트워크 엔티티로 불릴 수도 있고, 이들의 기능의 일부 또는 전부를 포함할 수도 있다. 각각의 기지국 (110) 은 특정 지리적 영역 (102) 에 대한 통신 커버리지를 제공한다.
단말기들 (120) 은 통상적으로 시스템 전체에 걸쳐 분포되어 있고, 각각의 단말기는 고정형 또는 이동형일 수도 있다. 단말기는 또한, 이동국, 사용자 장비, 및/또는 몇몇 다른 디바이스로 불릴 수도 있고, 이들 기능의 일부 또는 전부를 포함할 수도 있다. 단말기는 무선 디바이스, 셀룰러 폰, PDA, 무선 모뎀 카드 등일 수도 있다. 이하의 설명에서, "단말기(terminal)" 및 "사용자(user)" 라는 용어는 상호 교환가능하게 사용된다.
중앙 집중화된 아키텍쳐에서, 시스템 제어기 (130) 는 기지국들 (110) 에 연결되어, 이들 기지국들에 대한 조정 및 제어를 제공한다. 시스템 제어기 (130) 는 단일 네트워크 엔티티일 수도 있고, 또는 네트워크 엔티티들의 집합일 수도 있다. 분산된 아키텍쳐에서, 기지국 (110) 은 시스템 제어기 (130) 의 사용 없이도 필요에 따라 서로 통신할 수도 있다.
본원에 설명된 코딩 기술들은, 코드 분할 다중 접속 (CDMA) 시스템들, 시간 분할 다중 접속 (TDMA) 시스템들, 주파수 분할 다중 접속 (FDMA) 시스템들, 직교 FDMA (OFDMA) 시스템들, 단일-캐리어 FDMA (SC-FDMA) 시스템들, 공간 분할 다중 접속 (SDMA) 시스템들 등과 같은 다양한 다중-접속 통신 시스템들에 대해 이용될 수도 있다. OFDMA 시스템은 직교 주파수 분할 멀티플렉싱 (OFDM) 을 이용한다. SC-FDMA 시스템은 단일-캐리어 주파수 분할 멀티플렉싱 (SC-FDM) 을 이용한다. OFDM 및 SC-FDM 은 주파수 대역 (예를 들어, 전체 시스템 대역폭) 을 다수 (K 개) 의 직교 서브캐리어들 (이들은 톤, 빈 등으로 불리기도 한다) 로 분할한다. 각각의 서브캐리어는 데이터와 함께 변조될 수도 있다. 일반적으로, 변조 심볼들은 OFDM 을 이용하여 주파수 도메인에서 전송되고, SC-FDM 을 이용하여 시간 도메인에서 전송된다.
도 2 는 도 1 의 기지국 (110) 및 단말기 (120) 의 일 실시형태의 블록도를 나타낸다. 기지국 (110) 에서, 송신 (TX) 데이터 및 시그널링 프로세서 (210) 는 하나 이상의 단말기들에 대한 트래픽 데이터를 수신하고, 그 단말기에 대해 선택된 하나 이상의 패킷 포맷들에 따라 각각의 단말기에 대한 트래픽 데이터를 프로세싱 (예를 들어, 포맷팅, 인코딩, 인터리빙, 및 심볼 맵핑) 하여, 데이터 심볼들을 제공한다. 프로세서 (210) 는 또한 단말기들에 대한 시그널링을 수신하고, 이하 설명되는 바와 같이 그 시그널링을 프로세싱하여, 시그널링 심볼들을 제공한다. 프로세서 (210) 는 또한 파일럿 심볼들을 생성한다. 본원에서 사용된 바와 같이, 데이터 심볼은 트래픽 데이터에 대한 심볼이고, 시그널링 심볼은 시그널링을 위한 심볼이며, 파일럿 심볼은 기지국 및 단말기들에 의해 선험적으로 알려지는 데이터인 파일럿을 위한 심볼이고, 심볼은 일반적으로 복소 값이다. 변조기 (MOD) (212) 는 데이터, 시그널링 및 파일럿 심볼들에 대한 변조를 수행하여, 출력 칩들을 생성한다. 변조기 (212) 는 OFDM, SC-FDM, CDMA 등을 위한 변조를 수행할 수도 있다. 따라서, 출력 칩들은 OFDM 심볼들, SC-FDM 심볼들, 및/또는 스펙트럼 확산 데이터에 대한 것일 수도 있다. 송신기 (TMTR) (214) 는 출력 칩들을 컨디셔닝 (예를 들어, 아날로그로 변환, 필터링, 증폭, 및 상향변환) 하여, 순방향 링크 신호를 생성하는데, 이는 안테나 (216) 로부터 송신된다.
단말기 (120) 에서, 안테나 (252) 는 기지국 (110) 및 가능하다면 다른 기지국들로부터 순방향 링크 신호를 수신하여, 수신기 (RCVR) (254) 에 수신된 신호를 제공한다. 수신기 (254) 는 그 수신된 신호를 프로세싱 (예를 들어, 컨디셔닝 및 디지털화) 하여, 입력 샘플들을 제공한다. 복조기 (DEMOD) (256) 는 입력 샘플들에 대해 복조를 수행하고, 기지국 (110) 에 의해 단말기 (120) 로 전송된 데이터 및 시그널링 심볼들의 추정치들인, 심볼 추정치들을 제공한다. 수신기 (RX) 데이터 및 시그널링 프로세서 (260) 는 그 심볼 추정치들을 프로세싱 (예를 들어, 심볼 디맵핑, 디인터리빙, 및 디코딩) 하여, 단말기 (120) 에 대해 디코딩된 데이터 및 시그널링을 제공한다.
역방향 링크 상에서, 단말기 (120) 에서, 기지국 (110) 으로 전송되는 트래픽 데이터 및 시그널링은 TX 데이터 및 시그널링 프로세서 (262) 에 의해 프로세싱되고, 변조기 (264) 에 의해 변조되며, 송신기 (266) 에 의해 컨디셔닝되어, 안테나 (252) 로부터 송신된다. 기지국 (110) 에서, 단말기 (120) 및 다른 단말기들로부터의 역방향 링크 신호들은 안테나 (216) 에 의해 수신되고, 수신기 (220) 에 의해 컨디셔닝되고 디지털화되며, 복조기 (222) 에 의해 복조되고, RX 데이터 및 시그널링 프로세서 (224) 에 의해 프로세싱되어, 단말기들에 의해 전송된 트래픽 데이터 및 시그널링을 복원하게 된다.
제어기들/프로세서들 (230 및 270) 은 각각 기지국 (110) 및 단말기 (120) 에서 다양한 프로세싱 유닛들의 동작을 지시한다. 메모리들 (232 및 272) 은 각각 기지국 (110) 및 단말기 (120) 를 위한 프로그램 코드들 및 데이터를 저장한다.
기지국은 그 커버리지 영역 내에 있는 단말기들 또는 사용자들에게로 시그널링 메시지들을 전송할 수도 있다. 이들 시그널링 메시지들은 자원의 할당 및/또는 할당 해제(de-allocation), 사용자들로부터 수신된 데이터 패킷들에 대한 긍정 확인응답 (ACK) 및/또는 부정 확인응답 (NAK), 및 전력 정보 등과 같은 다양한 목적들을 위해 전송될 수도 있다.
각각의 사용자는 기지국 커버리지 영역 내의 임의의 위치에 위치될 수도 있고, 기지국으로부터의 송신에 대해 특정 수신된 신호 품질을 달성할 수도 있다. 수신된 신호 품질은, 신호-대-잡음 비 (SNR), 신호-대-잡음-및-간섭 비 (SNIR), 심볼-당-에너지-대-총-잡음 비 (Ec/Io) 등에 의해 정량화될 수도 있다. 기지국은 사용자가 신뢰성 있게 메시지들을 수신할 수 있도록 적당한 데이터 레이트로 각각의 사용자에게 메시지들을 전송할 수도 있다. 데이터 레이트는 또한 패킷 포맷, 전송 레이트, 레이트 등으로 불릴 수도 있다.
사용자에게로 전송되는 메시지에 대한 데이터 레이트는
Figure 112008048610720-pct00001
와 같이 표현될 수도 있고, 여기서,
Ci 는 사용자 i 에게 전송되는 메시지에 대해 사용되는 코드 레이트,
Si 는 사용자 i 에 대해 사용된 변조 방식의 스펙트럼 효율이고,
fsym 은 사용자 i 에 대해 적용가능한 심볼 레이트이며,
Ri 는 사용자 i 에 대한 데이터 레이트이다.
코드 레이트 Ci 는 주어진 수의 정보 비트들에 대해 인코더에 의해 생성되는 코드 비트들의 수를 결정한다. 예를 들어, Ci = 5/8 의 코드 레이트는 매 5 개의 정보 비트들에 대해 8 개의 코드 비트들이 인코더에 의해 생성된다는 것을 의미한다. 보다 낮은 코드 레이트는 더 많은 리던던시(redundancy)를 생성하고, 열악한 채널 상태들에 대해서 더욱 견고하지만, 주어진 수의 정보 비트들에 대해 더 많은 코드 비트들이 전송되기 때문에 보다 낮은 효율을 가진다. 보다 높은 코드 레이트에 대해서는 그 역이 성립한다.
스펙트럼 효율 Si 는 각각의 변조 심볼에서 전송되는 코드 비트들의 수를 나타낸다. Si 는 사용을 위해 선택된 변조 방식에 의해 결정된다. 예를 들어, BPSK 에 대해 Si 는 1.0 과 같고, QPSK 에 대해 Si 는 2.0, 8-PSK 에 대해서는 Si 는 3.0, 16-QAM 에 대해서 Si 는 4.0 등이다. 동일한 변조 방식 및 심볼 레이트가 모든 사용자들에 대해 사용된다면, Si 및 fsym 은 고정이고, 각각의 사용자에 대한 데이터 레이트 Ri 는 적절한 코드 레이트 Ci 를 선택함으로써 획득될 수도 있다.
사용자들에 대한 데이터 레이트들은 예를 들어 이들 사용자들에 대해 이용가능한 채널 상태 정보에 기초하여 결정될 수도 있다. 다수의 사용자들이 동일한 데이터 레이트를 가질 수도 있고, 이들 사용자들을 위한 메시지들은 동일한 방식으로 인코딩될 수도 있다. 모든 사용자들에 대해 고유한 데이터 레이트들은
Figure 112008048610720-pct00002
와 같이 내림차순으로 식별되고 정렬될 수도 있고, 여기서, R1 은 가장 높은 데이터 레이트이고, RN 은 가장 낮은 데이터 레이트이다. 전술한 바와 같이, 주어진 데이터 레이트는 다수의 사용자들에 대해 적용될 수도 있다.
사용자들을 위한 메시지들은, (1) 각각의 사용자에 대한 메시지가 그 사용자에 대한 데이터 레이트를 달성하는 적합한 전체 코드 레이트로 인코딩되고, (2) 단일 코딩된 메시지가 모든 사용자들에 대한 메시지들을 위해 생성되도록, 다수의 상호접속된 인코더들을 이용하여 인코딩될 수도 있다. 인코딩은, 병렬 아키텍쳐, 직렬 또는 캐스케이드된(cascaded) 아키텍쳐, 및 혼합된 아키텍쳐와 같은 다양한 코딩 아키텍쳐들을 이용하여 수행될 수도 있다. 코딩 아키텍쳐는 또한 코딩 구조(coding structure), 코딩 방식(coding scheme) 등으로 불릴 수도 있다.
도 3a 는 병렬 아키텍쳐에 대한 계층적 인코더 (310) 를 나타낸다. 이 실시형태에서, 가장 높은 데이터 레이트 R1 로 전송될 메시지들은 인코더 (320a) 로 제공되고, 두 번째로 높은 데이터 레이트 R2 로 전송될 메시지들은 인코더 (320b) 로 제공되고, 세 번째로 높은 데이터 레이트 R3 으로 전송될 메시지들은 인코더 (320c) 로 제공되는 등이고, 가장 낮은 데이터 레이트 RN 으로 전송될 메시지들은 인코더 (320n) 로 제공된다. 인코더들 (320b 내지 320n) 은 병렬로 연결되고, 그들의 출력들을 인코더 (320a) 로 제공한다. 채널 인터리버 (370) 는 인코더 (320a) 로부터 코드 비트들을 수신하고, 시간 및/또는 주파수 다이버시티(diversity)를 제공하기 위해 인터리빙 방식에 따라 이들 코드 비트들을 인터리빙 또는 리오더링한다. 심볼 맵퍼 (380) 는 이 인터리빙된 비트들을 사용을 위해 선택된 변조 방식에 따라 변조 심볼들로 맵핑한다.
각각의 인코더 (320) 는 그들의 입력 메시지들을 멀티플렉싱하고, 그 멀티플렉싱된 메시지들을 그 인코더에 대해 선택된 코드 레이트에 따라 인코딩하여, 하나 이상의 코딩된 메시지들을 제공한다. 코딩된 메시지들은 또한, 코딩된 블록, 코드워드, 코딩된 패킷, 코드 비트 시퀀스 등으로 불릴 수도 있다. 메시지는 임의의 사이즈의 것일 수도 있다. 각각의 인코더 (320) 는 양호한 성능을 제공하기 위해 설계된 특정 맵핑에 기초하여 일 세트의 입력 비트들을 일 세트의 출력 비트들로 필수적으로 맵핑한다. 각각의 인코더 (320) 는 (a) 모든 입력 메시지들을 함께 인코딩하여 하나의 코딩된 메시지를 제공하고, (b) 각각의 입력 메시지를 따로따로 인코딩하여 대응하는 코딩된 메시지를 제공하며, (c) 일부 입력 메시지들은 함께 인코딩하고 다른 입력 메시지(들)는 따로따로 인코딩할 수도 있다.
인코더 (320a) 는 그것의 입력 메시지들을 코드 레이트 C1 로 인코딩하는데, 이는 심볼 맵퍼 (380) 에 의해 사용된 변조 방식을 이용하여 가장 높은 데이터 레이트 R1 을 달성하도록 선택된다. 인코더 (320a) 에 대한 코드 레이트는
Figure 112008048610720-pct00003
와 같이 표현될 수도 있고, 여기서, Q = 1/(S·fsym) 이다. 식 (3) 에서, Q 는 심볼 맵퍼 (380) 에 의해 사용되는 변조 방식의 심볼 레이트 fsym 및 스펙트럼 효율 S 에 의해 결정되는 상수이다. 인코더 (320b) 는 그 입력 메시지들을 코드 레이트 C2 = R2/R1 로 인코딩하고, 이 C2 는 코드 레이트들 C1 및 C2 의 조합이 두 번째로 높은 데이터 레이트 R2 를 달성하도록, 또는 C1·C2 = Q·R2 이도록 선택된 것이다.
일반적으로, 병렬 아키텍쳐에서, 데이터 레이트 Ri 로 전송될 메시지들을 위한 인코더 (320) 는 그 입력 메시지들을 코드 레이트 Ci 로 인코딩하고, Ci
Figure 112008048610720-pct00004
와 같이 결정될 수도 있다.
코드 레이트들 C1 및 Ci 의 조합은 데이터 레이트 Ri 를 달성하고, 이는
Figure 112008048610720-pct00005
로서 주어질 수도 있다.
도 3b 는 직렬 아키텍쳐에 대한 계층적 인코더 (330) 의 일 실시형태를 나타낸다. 이 실시형태에서, 가장 높은 데이터 레이트 R1 로 전송될 메시지들은 인코더 (340a) 로 제공되고, 두 번째로 높은 데이터 레이트 R2 로 전송될 메시지들은 인코더 (340b) 로 제공되고, 세 번째로 높은 데이터 레이트 R3 으로 전송될 메시지들은 인코더 (340c) 로 제공되는 등이고, 가장 낮은 데이터 레이트 RN 으로 전송될 메시지들은 인코더 (340n) 로 제공된다. 인코더들 (340a 내지 340n) 은 직렬로 연결된다. 제 1 인코더 (340a) 를 제외한, 각각의 인코더 (340) 는 그 출력을 후속하는 다음의 인코더로 제공한다. 마지막 인코더 (340n) 을 제외한, 각각의 인코더 (340) 는 또한 이전 인코더의 출력을 수신한다. 채널 인터리버 (370) 는 인코더 (340a) 로부터 코드 비트들을 인터리빙한다. 심볼 맵퍼 (380) 는 인터리빙된 비트들을 선택된 변조 방식에 따라 변조 심볼들로 맵핑한다.
각각의 인코더 (340) 는 그 입력 메시지들을 멀티플렉싱하고, 그 멀티플렉싱된 메시지들을 그 인코더에 대해 선택된 코드 레이트에 따라 인코딩하여, 하나 이상의 코딩된 메시지들을 제공한다. 각각의 인코더 (340) 는 모든 입력 메시지들을 함께 인코딩하여 하나의 코딩된 메시지를 제공할 수도 있고, 각각의 입력 메시지를 따로따로 인코딩하여 대응하는 코딩된 메시지를 제공할 수도 있으며, 또는, 일부 입력 메시지들을 함께 인코딩하고 다른 입력 메시지(들)는 따로따로 인코딩할 수도 있다. 인코더 (340a) 는 그 입력 메시지들을 코드 레이트 C1' 로 인코딩하고, 여기서, C1' 는 C1' = Q·R1 로서 결정될 수도 있다. 인코더 (340b) 는 그 입력 메시지들을 코드 레이트 C2' = R2/R1 로 인코딩하고, 여기서, C2' 는 코드 레이트들 C1' 및 C2' 의 조합이 두 번째로 높은 데이터 레이트 R2 를 달성하도록, 또는, C1'·C2' = Q·R2 가 되도록 선택된다. 도 3b 의 인코더들 (340a 및 340b) 은 도 3a 의 인코더들 (320a 및 320b) 과 동일한 방식으로 연결된다. 따라서, C1' = C1 및 C2' = C2 이다. 인코더 (340c) 는 그 입력 메시지들을 코드 레이트 C3' = R3/R2 로 인코딩하고, 여기서, C3' 는 코드 레이트들 C1', C2' 및 C3' 의 조합이 세 번째로 높은 데이터 레이트 R3 을 달성하도록, 또는, C1'·C2'·C3' = Q·R3 이 되도록 선택된다.
일반적으로, 직렬 아키텍쳐에서, 데이터 레이트 Ri 로 전송될 메시지들에 대한 인코더 (340) 는 그 입력 메시지들을 코드 레이트 Ci' 으로 인코딩하고, 여기서, Ci' 는
Figure 112008048610720-pct00006
와 같이 결정될 수도 있다.
코드 레이트 C1' 내지 Ck' 의 조합은 Ri 의 데이터 레이트를 달성하고, 이는
Figure 112008048610720-pct00007
와 같이 주어질 수도 있으며, 여기서, "Π" 는 곱(product) 연산을 나타낸다.
도 3c 는 혼합된 아키텍쳐에 대한 계층적 인코더 (350) 의 일 실시형태를 나타낸다. 이 실시형태에서, 계층적 인코더 (350) 는 P 개의 스테이지들의 인코더들 (360) 을 포함하고, 여기서, 통상적으로 P ≥ 2 이다. 각각의 스테이지는 또한 레이어(layer), 라운드(round) 등으로 칭해질 수도 있다. 제 1 스테이지를 제외한, 각각의 스테이지는 하나 이상의 인코더들 (360) 을 포함할 수도 있다. 스테이지 p (p = 1, ... , P) 는 Kp 개의 인코더들 (360) 을 포함하고, 여기서, Kp 는 스테이지 p 의 인코더들의 수이며, 통상적으로 Kp ≥ 1 이다. 도 3c 에서, 인코더 (p,q) 는 스테이지 p 의 q-번째 인코더를 나타내고, 여기서, p = 1, ... , P 및 q = 1, ... , Kp 이다.
도 3c 에 나타낸 실시형태에서, 가장 높은 데이터 레이트 R1 로 전송될 메시지들은 제 1 스테이지의 인코더 (360a) 에 제공되고, 두 번째로 높은 데이터 레이트 R2 로 전송될 메시지들은 제 2 스테이지의 제 1 인코더 (360ba) 에 제공되는 등이고, 가장 낮은 데이터 레이트 RN 으로 전송될 메시지들은 마지막 스테이지 P 의 마지막 인코더 (360pk) 에 제공된다. 일반적으로, 각각의 데이터 레이트에 대한 메시지들은 임의의 스테이지의 임의의 인코더에 제공될 수도 있다. 제 1 스테이지의 인코더 (360a) 를 제외한, 각각의 인코더 (360) 는 그 출력을 후속하는 다음의 스테이지의 인코더에 제공하고, 이 후속하는 스테이지는 하나 또는 다수의 스테이지들에 걸쳐 있을 수도 있다. 마지막 스테이지의 인코더들 (360pa 내지 360pk) 을 제외한, 각각의 인코더 (360) 는 또한 적어도 하나의 이전 스테이지의 적어도 하나의 인코더의 출력을 수신한다. 채널 인터리버 (370) 는 인코더 (360a) 로부터의 코드 비트들을 인터리빙한다. 심볼 맵퍼 (380) 는 그 인터리빙된 비트들을 변조 심볼들로 맵핑한다.
각각의 인코더 (360) 는 그 입력 메시지들을 멀티플렉싱하고, 그 멀티플렉싱된 메시지들을 그 인코더에 대해 선택된 코드 레이트에 따라 인코딩하여, 하나 이상의 코딩된 메시지들을 제공한다. 각각의 인코더 (360) 는 모든 입력 메시지들을 함께 인코딩하여 하나의 코딩된 메시지를 제공할 수도 있고, 각각의 입력 데이터를 따로따로 인코딩하여 대응하는 코딩된 메시지를 제공할 수도 있으며, 또는, 일부 입력 메시지들은 함께 인코딩하고, 다른 입력 메시지(들)는 따로따로 인코딩할 수도 있다. 인코더 (360a) 는 그 입력 메시지들을 코드 레이트 C1 로 인코딩하고, 이 C1 은 C1 = Q·R1 로서 결정될 수도 있다. 인코더 (360ba) 는 그 입력 메시지들을 코드 레이트 C2 = R2/R1 로 인코딩하고, 이 C2 는 코드 레이트들 C1 및 C2 의 조합이 두 번째로 높은 데이터 레이트 R2 를 달성하도록, 또는 C1·C2 = Q·R2 이도록 선택된다.
세 번째로 높은 데이터 레이트 R3 으로 전송될 메시지들은 몇몇 방식들 중 하나로 인코딩될 수도 있다. 일 실시형태에서, 이들 메시지들은 제 2 스테이지의 제 2 인코더 (예를 들어, K2 = 2 로 가정하면 도 3c 의 인코더 (360bk)) 로 제공되고, 이 제 2 스테이지의 제 2 인코더는 그 입력 메시지들을 코드 레이트 C3 = R3/R1 로 인코딩한다. 또 다른 실시형태에서, 이들 메시지들은 제 3 스테이지의 하나의 인코더로 제공되고 (도 3c 에는 나타내지 않았다), 이 인코더는 그 입력 메시지들을 C3' = R3/R2 로 인코딩하여 그것의 출력을 제 2 스테이지의 인코더 (360ba) 로 제공한다. 각각의 나머지 데이터 레이트 Ri (i = 4, ... , N) 에 대한 메시지들도 마찬가지로 몇몇 방식들 중 하나로 인코딩될 수도 있다. 데이터 레이트 Ri 로 전송될 메시지들은 데이터 레이트 Ri-1 로 전송된 메시지들에 대해 이용되는 인코더와 동일한 스테이지의 또 다른 인코더에 제공될 수도 있다. 다른 대안으로는, 이들 메시지들은 다음 스테이지의 하나의 인코더에 제공될 수도 있다.
일반적으로, 각각의 데이터 레이트에 대한 메시지들은 임의의 스테이지의 임의의 인코더로 제공될 수도 있다. 각각의 데이터 레이트에 대한 메시지들은 하나 이상의 스테이지들의 하나 이상의 인코더들에 의해 인코딩될 수도 있다.
계층적 인코더 (350) 는 도 3a 의 계층적 인코더 (310) 또는 도 3b 의 계층적 인코더 (330) 를 구현할 수도 있다. P = 2 및 K2 = N-1 이면, 계층적 인코더 (350) 는 2 개의 스테이지들을 포함하고, 제 2 스테이지는 N-1 개의 인코더들을 포함한다. 그러면, 계층적 인코더 (350) 는 도 3a 의 계층적 인코더 (310) 와 동등하다. P =N 및 K2 = ... = Kp = 1 이면, 계층적 인코더 (350) 는 N 개의 스테이지들을 포함하고, 각각의 스테이지는 하나의 인코더를 포함한다. 그러면, 계층적 인코더 (350) 는 도 3b 의 계층적 인코더 (330) 와 동등하다. 2 개를 초과하는 스테이지들과 적어도 하나의 스테이지의 다수의 인코더들을 갖는 혼합된 아키텍쳐는 상이한 인코더들에 대해 코드 레이트들을 선택함에 있어 더욱 유연성을 제공할 수도 있다.
도 3a, 도 3b, 및 도 3c 의 인코더들 (320a, 340a, 및 360a) 은 각각 동일한 코드 레이트 C1 을 가지며, 동일 또는 유사한 설계들로 구현될 수도 있다.
계층적 인코더들 (310, 330, 및 350) 은 상이한 네스트된(nested) 또는 계층적 코딩 아키텍쳐들을 형성한다. 일반적으로, 계층적 코딩 아키텍쳐는 적어도 2 개의 데이터 레이트들을 지원하기 위한 방식으로 연결된 적어도 2 개의 인코더들에 의해 특징지어진다. 가장 간단한 계층적 인코더는 도 6a 에 나타낸 바와 같이 2 개의 스테이지들에 대해 2 개의 인코더들을 포함할 수도 있고, 여기서, 제 2 스테이지의 인코더는 그것의 출력을 제 1 스테이지의 인코더에 제공한다. 상이한 데이터 레이트들은 상이한 인코더 세트들을 이용하여 달성될 수도 있고, 각각의 세트는 적어도 하나의 인코더를 포함한다.
식 (1) 내지 식 (7) 은 도 3a, 도 3b, 및 도 3c 의 계층적 인코더들에서 각각의 인코더에 대한 입력 메시지들이 따로따로 인코딩되는 경우, 그 계층적 인코더들에 대한 데이터 레이트들 및 코드 레이트들을 설명한다. 각각의 인코더에 대한 입력 메시지들이 함께 인코딩되는 경우 계층적 인코더들에 대해 상이한 식들이 적용될 수도 있다. 공동 인코딩(joint encoding)에 대한 식들은, 예를 들어 함께 인코딩되는 상이한 입력 메시지들의 상대적인 사이즈들을 위해, 추가적인 파라미터들을 가질 수도 있다.
도 4 는 도 3a, 도 3b, 및 도 3c 의 인코더들 (320, 340, 및 360) 의 각각에 대해 각각 이용될 수도 있는 인코더 (400) 의 일 실시형태의 블록도를 나타낸다. 인코더 (400) 는 데이터 레이트 Ri 로 전송될 메시지들을 수신한다. 인코더 (400) 는 또한 Ri 보다 더 낮은 데이터 레이트로 전송될 메시지들을 위한, 하나 이상의 이전 스테이지들의 하나 이상의 다른 인코더들로부터의 출력을 수신할 수도 있다.
인코더 (400) 내부에서, 스크램블러 (410) 는 데이터 레이트 Ri 로 전송될 메시지들을 수신하고, 각각의 사용자에 대한 메시지를 그 사용자에 대한 스크램블링 코드를 이용하여 스크램블링한다. 사용자-특정 스크램블링은, 기지국에서 함께 인코딩되고 후속하여 각각의 수신 사용자(recipient user)에서 함께 디코딩되는 상이한 사용자들의 컨텐츠들을 분리하는데 적용될 수도 있다. 스크램블링은 사용자 메시지들의 분리가 필요하지 않은 경우에는 생략될 수도 있다. 멀티플렉서 (412) 는 스크램블러 (410) 의 출력과 다른 인코더(들)로부터의 코딩된 메시지들을 멀티플렉싱하고, 인코딩을 위한 입력 비트 시퀀스를 제공한다.
도 4 에서 나타낸 실시형태에서, 입력 비트들은 고정된 베이스 코드를 이용하여 인코딩되고, 그 결과로서 나오는 코드 비트들은 소망하는 코드 레이트를 달성하기 위해 적절한 펑쳐링(puncturing) 패턴을 이용하여 펑쳐링된다. 베이스 인코더 (420) 는 입력 비트들을 고정된 베이스 코드를 이용하여 인코딩하고, 이 베이스 코드는 컨볼루셔널 코드, 직렬-연결(serial-concatenated) 터보 코드, 병렬 연결(parallel-concatenated) 터보 코드 등일 수도 있다. 베이스 코드는 고정된 코드 레이트 (예를 들어, 1/2 또는 1/3 의 코드 레이트) 를 가질 수도 있고, 주어진 입력 비트 시퀀스 길이에 대해 소정의 수의 코드 비트들을 생성할 수도 있다. 펑쳐링 유닛 (422) 은 베이스 인코더 (420) 로부터 코드 비트들을 수신하고 그 코드 비트들 중에서 선택된 것들을 펑쳐링 또는 삭제하여, 펑쳐링된 코드 비트 또는 미삭제 코드 비트들을 제공한다. 펑쳐링은 인코더 (400) 에 대한 코드 레이트에 기초하여 선택된 펑쳐링 패턴에 따라 수행된다. 인터리버 (430) 는 펑쳐링된 코드 비트들을 수신하고, 이들 비트들을 인터리빙 방식에 따라 인터리빙하여, 그 인터리빙된 비트들을 다음 스테이지 또는 계층적 인코더의 출력 중 어느 하나에 대한 코드 비트들로서 제공한다. 인터리버 (430) 는 또한 생략될 수도 있고, 인터리빙은 도 3a 내지 도 3c 의 채널 인터리버 (370) 에 의해 수행될 수도 있다.
도 4 는 계층적 인코더에서 사용될 수도 있는 인코더의 일 실시형태를 나타낸다. 다른 설계들의 인코더들이 또한 계층적 인코더에서 사용될 수도 있다. 또 다른 실시형태에서, 베이스 인코더 (420) 는, 리드-솔로몬 코드(Reed-Solomon code), 저밀도 패리티 체크 (LDPC) 코드 등과 같은 블록 코드에 기초하여 입력 비트들의 블록을 출력 비트들의 블록으로 맵핑하는 블록 인코더일 수도 있다. 다른 실시형태들에서, 스크램블러 (410) 는 생략될 수도 있고, 인터리버 (430) 는 생략될 수도 있으며, 다른 프로세싱 블록들이 포함될 수도 있는 등이다.
기지국은 상이한 사용자들에 대한 개별적 메시지들에 대해 계층적 코딩을 수행하고, 이들 사용자들에 대해 단일 멀티캐스트 메시지를 생성하고, 그 멀티캐스트 메시지를 사용자에게로 송신한다. 멀티캐스트 메시지는 다수의 사용자들에게 전송되는 메시지이며, 브로드캐스트 메시지로 불릴 수도 있다. 사용자들은 멀티캐스트 메시지를 수신하고, 그들의 개별 메시지들을 복원하기 위해 상보적인 디코딩을 수행한다. 가장 높은 데이터 레이트 R1 로 전송되고, 단일 인코더 (320a, 340a, 또는 360a) 에 의해 인코딩된 메시지에 대해, 이 메시지는 이 단일 인코더에 대한 디코딩을 수행하고 관심 대상의 메시지를 추출함으로써 복원될 수도 있다. R1 보다 더 낮은 데이터 레이트로 전송되고 다수의 인코더들에 의해 인코딩된 메시지에 대해, 이 계층적으로 코딩된 메시지는 그 메시지에 대해 이용되는 인코더들의 각각에 대한 디코딩을 수행하고 관심 대상의 메시지를 추출함으로써 복원될 수도 있다. 계층적으로 코딩된 메시지의 디코딩은 다양한 방식으로 수행될 수도 있다.
도 5 는 계층적으로 코딩된 메시지 M 에 대해 순차적인 디코딩을 수행하는 계층적 디코더 (530) 의 일 실시형태의 블록도를 나타낸다. 심볼 디맵퍼 (510) 는 도 2 의 복조기 (256) 로부터 심볼 추정치들을 수신하고, 그 심볼 추정치들의 심볼 디맵핑을 수행하여, 예를 들어 LLR (log-likelihood ratio) 의 형태의 디맵핑된 심볼들을 제공한다. 채널 디인터리버 (520) 는 그 디맵핑된 심볼들을, 채널 인터리버 (370) 에 의해 수행된 인터리빙에 상보적인 방식으로 디인터리빙한다. 채널 디인터리버 (520) 는 그 디인터리빙된 심볼들을 계층적 디코더 (530) 에 대한 입력 심볼들로서 제공한다.
도 5 에 나타낸 실시형태에서, 계층적 디코더 (530) 는 메시지 M 에 의해 관찰되는 L (L ≥ 2) 개의 코딩 스테이지들에 대한 L 개의 디코딩 스테이지들을 포함한다. 각각의 디코딩 스테이지는 디코더 (540) 및 선택기 (542) 를 포함한다. 제 1 디코딩 스테이지에서, 디코더 (540a) 는 입력 심볼들을 제 1 인코더 (320a, 340a, 또는 360a) 에 의해 수행되는 인코딩에 대해 상보적인 방식으로 디코딩하여 디코딩된 심볼들을 제공한다. 선택기 (542a) 는 제 2 스테이지에서의 메시지 M 에 대해 이용되는 인코더의 출력에 대응하는 디코딩된 심볼들을 선택하고, 다른 심볼들은 폐기한다. 예를 들어, 메시지 M 이 도 3c 의 인코더 (360ba) 에 의해 인코딩되면, 선택기 (542a) 는 인코더 (360ba) 의 출력에 대응하는 디코딩된 심볼들을 유지한다. 각각의 후속하는 디코딩 스테이지 ℓ에서, 그 스테이지에 대한 디코더 (540) 는 이전 스테이지 ℓ-1 의 선택기 (542) 로부터 심볼들을 수신하고, 스테이지 ℓ에서의 메시지 M 에 대해 이용되는 인코더에 의해 수행되는 인코딩에 대해 상보적인 방식으로 이들 심볼들을 디코딩한다. 그 다음, 스테이지 ℓ 에 대한 선택기 (542) 는 스테이지 ℓ+1 에서의 메시지 M 에 대해 이용되는 인코더의 출력에 대응하는 디코딩된 심볼들을 선택한다. 마지막 스테이지 L 에 대한 선택기 (542) 는 메시지 M 에 대해 디코딩된 데이터를 제공한다.
도 5 에 나타낸 실시형태에서, 각각의 스테이지 ℓ의 디코더는 스테이지 ℓ에서의 메시지 M 에 대해 이용된 인코더에 의해 결정된다. 각각의 스테이지 ℓ의 선택기는 스테이지 ℓ의 인코더에 의해 수행된 입력 메시지들의 멀티플렉싱에 대해 상보적인 방식으로 소망하는 심볼들을 추출한다.
또 다른 실시형태에서, 계층적으로 코딩된 메시지 M 은 반복 디코딩(iterative decoding)을 수행함으로써 복원된다. 반복 디코딩을 이용하여, 디코더의 출력은 피드백되고, 디코딩된 심볼들의 신뢰도를 향상시키기 위해 또 다른 디코더에 의해 이용된다. 일반적으로, 반복 디코딩은 메시지 M 에 대해 적용가능한 디코더들의 전부 또는 일 서브세트에 대해 수행될 수도 있다. 명확함을 위해, 반복 디코딩을 간단한 2-스테이지 계층적 인코더에 대해 이하 설명하였다.
도 6a 는 인코더들 (620a 및 620b) 로 이루어진 2-스테이지 계층적 인코더 (610) 를 나타낸다. 인코더 (620b) 는 데이터 블록 X 를 수신하여 코드 레이트 Cb 에 따라 인코딩하고, 코딩된 블록 Y 를 생성한다. 인코더 (620a) 는 코딩된 블록 Y 및 더 높은 데이터 레이트로 전송될 데이터 블록 W 를 수신한다. 인코더 (620a) 는 코드 레이트 Ca 에 따라 블록들 W 및 Y 를 인코딩하여, 코딩된 블록 Z 를 생성하며, 이 코딩된 블록 Z 는 추가로 프로세싱되어 송신된다. 인코더들 (620a 및 620b) 은 직렬 연결 컨볼루셔널 코드 또는 몇몇 다른 코드를 구현할 수도 있다.
도 6b 는 도 6a 의 계층적 인코더 (610) 에 대한 계층적 디코더 (630) 를 나타낸다. 계층적 디코더 (630) 는 인코더 (620a) 로부터의 코드 비트들 Z 의 초기 추정치들인 입력 심볼들
Figure 112008048610720-pct00008
을 수신한다. 입력 심볼들
Figure 112008048610720-pct00009
은 LLR 또는 몇몇 다른 형태로 주어질 수도 있다.
제 1 반복에서, 디코더 (640a) 는 인코더 (620a) 에 의해 이용된 코드 레이트 Ca 에 따라 입력 심볼들
Figure 112010045410076-pct00010
을 디코딩하여, 인코더 (620b) 로부터의 코드 비트들 Y 의 초기 추정치들인 디코딩된 심볼들
Figure 112010045410076-pct00011
을 제공한다. 디코더 (640b) 는 인코더 (620b) 에 의해 이용된 코드 레이트 Cb 에 따라 심볼들
Figure 112010045410076-pct00012
을 디코딩하여, 인코더 (620b) 에 대한 입력 비트들 X 의 초기 추정치들인 디코딩된 심볼들
Figure 112010045410076-pct00013
을 제공한다. 디코더 (640b) 는 또한 디코더 (640a) 로부터의 심볼들
Figure 112010045410076-pct00014
의 추정치들인 심볼들
Figure 112010045410076-pct00015
를 도출한다. 유닛 (642) 은 심볼들
Figure 112010045410076-pct00016
Figure 112010045410076-pct00017
간의 차이를 계산하고, 그 차이를 외인성 정보(extrinsic information)로서 디코더 (640a) 에 제공한다.
각각의 후속하는 반복에서, 디코더 (640a) 는 코드 레이트 Ca 에 따라 입력 심볼들
Figure 112010045410076-pct00018
및 유닛 (642) 으로부터의 외인성 정보를 디코딩하고, 인코더 (620b) 로부터의 코드 비트들 Y 의 개선된 추정치들을 제공한다. 디코더 (640b) 는 코드 레이트 Cb 에 따라 디코더 (640a) 로부터의 심볼들
Figure 112010045410076-pct00019
을 디코딩하고, 디코더 (640a) 로부터의 심볼들
Figure 112010045410076-pct00020
의 개선된 추정치들 및 입력 비트들 X 의 개선된 추정치들을 제공한다. 유닛 (642) 은 심볼들
Figure 112010045410076-pct00021
Figure 112010045410076-pct00022
간의 차이를 계산하고, 디코더 (640a) 에 외인성 정보를 제공한다. 임의의 횟수의 반복이 수행될 수도 있다. 마지막 반복을 완료한 후에, 디코더 (640b) 는 송신된 데이터 블록 X 의 최종 추정치인 디코딩된 블록을 제공한다.
또 다른 실시형태에서, 계층적으로 코딩된 메시지 M 은 공동 디코딩을 수행함으로써 복원된다. 간단한 2-스테이지 계층적 인코더에서, 제 1 세트의 심볼들은 제 2 스테이지에서의 메시지 M 에 대해 이용되는 인코더에 대한 입력들의 전부에 대해서 정의될 수도 있다. 제 2 세트의 심볼들은 제 2 스테이지에서의 메시지 M 에 대해 이용되는 인코더의 출력을 제외하고 제 1 스테이지에서의 인코더에 대한 모든 입력들에 대해 정의될 수도 있다. 도 6a 에서 나타낸 계층적 인코더 (610) 에서, 제 1 세트의 심볼들은 X 에 대응할 수도 있고, 제 2 세트의 심볼들은 W 에 대응할 수도 있다. 그러면, 공동 디코딩이 X 의 추정치를 획득하기 위해 제 1 및 제 2 세트의 심볼들에 대해 수행될 수도 있다. 공동 디코딩은 또한 2 개를 초과하는 인코더들에 대해 수행될 수도 있다.
공동 디코딩은 함께 디코딩되는 모든 코드들 (예를 들어 도 6a 의 인코더 (620a 및 620b) 에 의해 이용되는 코드들) 의 구조를 활용한다. 공동 디코딩은 몇 가지 방식들로 수행될 수도 있다. 일 실시형태에서, 공동 디코딩은 최대 우도(maximal likelihood; ML) 디코딩을 이용하여 수행된다. ML 디코딩은 송신되었을 수도 있는 비트들의 모든 가능한 조합들을 검사하고, 입력 심볼들, 채널 추정치들 등과 같은 모든 이용가능한 정보에 기초하여, 송신되었을 가능성이 가장 큰 비트 조합을 식별한다. ML 디코딩은 계산적으로 집약적이고, 많은 적용들에 대해, 특히 큰 데이터 블록 사이즈들에 대해 금지될 수도 있다. 또 다른 실시형태에서, 공동 디코딩은 예를 들어 도 6b 에 나타낸 것과 같이 반복적으로 디코딩함으로써 수행된다. 적절한 코드 설계를 이용한 최선의 공동 디코딩은, 예를 들어 총 가용 송신 전력이 상이한 사용자들 간에 동등하게 분포되는 경우, 기지국과 이 상이한 사용자들 사이의 무선 채널들의 용량에 매칭되는 스펙트럼 효율을 달성하는 것이 가능하다는 것을 볼 수 있다.
본원에 설명된 코딩 기술들은 사용자-특정 메시지들을 개별 사용자들에게 전송하거나, 상이한 커버리지 영역들을 갖는 메시지들을 브로드캐스트하는 등에 이용될 수도 있다. 사용자-특정 메시지들은 자원의 할당 및/또는 할당 해제, ACK 및/또는 NAK, 전력 정보 등과 같은 다양한 타입들의 시그널링을 위해 이용될 수도 있다. 코딩 기술들은 또한 다양한 시그널링 채널 구조들과 함께 이용될 수도 있다.
도 7 은 계층적 코딩을 이용하여 생성된 멀티캐스트 메시지들을 전송하는데 이용될 수도 있는 공유 시그널링 채널 (SSCH) 의 일 실시형태의 시간-주파수도 (700) 를 나타낸다. 본 실시형태에서, 시스템은 OFDM, SC-FDM, 또는 몇몇 다른 변조 기술을 이용하여 획득될 수도 있는 다수의 서브캐리어들을 갖는다.
시간-주파수도 (700) 는 2 개의 연속적인 프레임들 (710 및 720) 에 대한 SSCH 의 서브캐리어들로의 일 예시적인 맵핑을 나타낸다. 프레임들 (710 및 720) 은 주파수 분할 듀플렉싱된 (FDD) 시스템의 2 개의 연속적인 프레임들을 나타낼 수도 있다. 프레임들 (710 및 720) 은 또한 시간 분할 듀플렉싱된 (TDD) 시스템에서의 순방향 링크에 대한 2 개의 연속적인 프레임들을 나타낼 수도 있다. 이 경우, 역방향 링크에 대한 하나 이상의 삽입된 프레임들이 프레임들 (710 및 720) 사이에 위치될 수도 있다 (도 7 에 미도시). 프레임들 (710 및 720) 은 각각 임의의 지속기간을 가질 수도 있다.
SSCH 는 다양한 방식으로 서브캐리어들을 할당받는다. 일 실시형태에서, SSCH 는 프레임의 전체 지속기간에 대해 특정 서브캐리어들을 할당받고, 서브캐리어 할당은 프레임 경계에서 변화될 수도 있다. 도 7 에 나타낸 실시형태에서, SSCH 는 프레임 (710) 에서 3 개 세트의 서브캐리어들 (712a, 712b, 및 712c) 을 할당받고, 프레임 (720) 에서 3 개 세트의 서브캐리어들 (722a, 722b, 및 722c) 을 할당받는다. 또 다른 실시형태에서, SSCH 는 프레임 진행 동안 변화할 수도 있는 서브캐리어들을 할당받는다. 모든 실시형태들에서, SSCH 에게 할당된 서브캐리어들은 정적일 수도 있고, 또는 미리 결정된 패턴 또는 의사-랜덤 주파수-호핑 패턴에 기초하여 동적으로 선택될 수도 있다. 각각의 패턴은, 하나 또는 다수의 심볼 주기들에 걸칠 수도 있는 각각의 시간 간격의 SSCH 에 대해 이용하기 위한 특정 서브캐리어들을 나타낸다.
SSCH 는 다양한 방식들로 서브캐리어들을 할당받을 수도 있다. 일 실시형태에서, SSCH 에 할당된 서브캐리어들의 수는 예를 들어 총 시스템 대역폭의 어떤 백분율로 미리 결정되고 고정된다. 또 다른 실시형태에서, SSCH 에 할당된 서브캐리어들의 수는 가변적이고, 시스템 제어 메시지에 의해 운반될 수도 있다. 통상적으로, SSCH 에 할당된 서브캐리어들의 수는 변한다 하더라도 느린 속도로 변화한다. 양 실시형태들에서, SSCH 에 할당된 서브캐리어들의 수는 SSCH 에 대한 기대되는 또는 실제의 시그널링 로드에 기초하여 결정될 수도 있다.
SSCH 는 본원에서 설명된 코딩 기술들에 기초하여 생성된 멀티캐스트 메시지들을 전달할 수도 있다. SSCH 는 할당된 서브캐리어들의 전부 또는 서브세트를 통해 전송될 수도 있다.
도 7 은 멀티캐스트 메시지들을 전송하는데 이용될 수도 있는 특정 시그널링 채널을 나타낸다. 이들 멀티캐스트 메시지들은 또한 다른 구조들을 갖는, 및/또는 다른 무선 기술들 (예를 들어, CDMA) 로 구현되는 다른 시그널링 채널들에서 전송될 수도 있다.
도 8 은 송신기에서 계층적 코딩을 수행하기 위한 프로세스 (800) 의 일 실시형태를 나타낸다. 예를 들어 사용자들에 대한 채널 상태 정보에 기초하여, 사용자들을 위한 데이터 레이트들이 결정된다 (블록 812). 예를 들어 식 (4) 또는 식 (6) 에 나타낸 바와 같이, 사용자들을 위한 데이터 레이트들을 달성하기 위한 코드 레이트들이 결정된다 (블록 814). 각각의 데이터 레이트는 하나 이상의 코드 레이트들에 의해 결정된다. 사용자들에 대한 시그널링 정보 및/또는 다른 정보가 입력 데이터의 블록들로 맵핑된다 (각 입력 데이터 블록은 상이한 데이터 레이트로 전송됨) (블록 816). 각각의 사용자에 대한 시그널링 정보는 또한 입력 데이터 블록으로 맵핑되기 전에 스크램블링 코드를 이용하여 스크램블링될 수도 있다.
(하나의 블록으로부터의) 제 1 입력 데이터가 제 1 코드 레이트에 따라 인코딩되어 제 1 코딩된 데이터를 획득한다 (블록 818). (또 다른 블록으로부터의) 제 2 입력 데이터 및 제 1 코딩된 데이터가 제 2 코드 레이트에 따라 인코딩되어 제 2 코딩된 데이터를 획득한다 (블록 820). 제 2 입력 데이터 및 제 1 코딩된 데이터는 (a) 함께 인코딩되어 하나의 블록의 제 2 코딩된 데이터를 획득할 수도 있고, 또는 (b) 따로따로 인코딩되어 2 개의 블록의 제 2 코딩된 데이터를 획득할 수도 있다. 제 1 입력 데이터는 제 1 및 제 2 코드 레이트에 의해 결정되는 제 1 데이터 레이트로 전송될 수도 있다. 제 2 입력 데이터는 제 2 코드 레이트에 의해 결정된 제 2 데이터 레이트로 전송될 수도 있다.
(만약 있다면) 나머지 입력 데이터는 하나 이상의 코드 레이트들에 따라, 가능하다면 코딩된 데이터와 함께 인코딩된다 (블록 822). 도 3a 에 나타낸 병렬 아키텍쳐에서, (예를 들어, 또 다른 블록으로부터의) 제 3 입력 데이터가 제 3 코드 레이트에 따라 인코딩되어 제 3 코딩된 데이터를 획득할 수도 있다. 그 다음, 제 3 코딩된 데이터는 제 2 입력 데이터 및 제 1 코딩된 데이터와 함께 공동으로 또는 따로따로 인코딩되어 제 2 코딩된 데이터를 획득할 수도 있다. 도 3b 에 나타낸 직렬 아키텍쳐에서, 제 3 입력 데이터 및 제 2 코딩된 데이터가 제 3 코드 레이트에 따라 인코딩되어 제 3 코딩된 데이터를 획득할 수도 있다. 통상적으로, 각각의 입력 데이터 블록에 대한 데이터 레이트는 그 입력 데이터 블록에 의해 관찰되는 모든 코드 레이트(들)에 의해 결정된다. 최종 코딩된 데이터는 모든 사용자들을 위해 생성되고, 추가적으로 프로세싱되어 송신된다 (블록 824).
도 9 는 계층적 코딩을 수행하기 위한 장치 (900) 의 일 실시형태를 나타낸다. 장치 (900) 는, 예를 들어 사용자들에 대한 채널 상태 정보에 기초하여 사용자들에 대한 데이터 레이트들을 결정하는 프로세서 (912), 사용자들에 대한 데이터 레이트들을 달성하기 위한 코드 레이트들을 결정하는 프로세서 (914), 사용자들에 대한 시그널링 정보를 상이한 데이터 레이트들로 전송될 입력 데이터의 블록들로 맵핑하는 프로세서 (916), 제 1 입력 데이터를 제 1 코드 레이트에 따라 인코딩 하여 제 1 코딩된 데이터를 획득하는 프로세서 (918), 제 2 입력 데이터 및 제 1 코딩된 데이터를 제 2 코드 레이트에 따라 인코딩하여 제 2 코딩된 데이터를 획득하는 프로세서 (920), (만약 있다면) 나머지 입력 데이터를 하나 이상의 코드 레이트들에 따라, 가능하다면 코딩된 데이터와 함께 인코딩하는 프로세서 (922), 및 모든 사용자들을 위해 생성된 최종 코딩된 데이터를 프로세싱 및 송신하는 프로세서 (924) 를 포함한다.
도 9 에서, 각각의 프로세서는 하나 이상의 프로세서를 포함할 수도 있다. 각각의 프로세서에 대해 설명된 기능들은 인코딩에 관해 상기 도 1 내지 도 8 의 임의의 것을 이용하여 전술한 것들의 조합들일 수도 있다.
도 10 은 수신기에서 계층적 디코딩을 수행하기 위한 프로세스 (1000) 의 일 실시형태를 나타낸다. (예를 들어, 멀티캐스트 메시지에 대한) 입력 데이터가 제 1 코드 레이트에 따라 디코딩되어 제 1 디코딩된 데이터를 획득한다 (블록 1012). 제 1 코드 레이트에 의해 결정된 데이터 레이트로 전송된 정보에 대응하는 제 1 디코딩된 데이터의 일부분이 폐기된다 (블록 1014). 제 1 디코딩된 데이터의 나머지 부분은 제 2 코드 레이트에 따라 디코딩되어 제 2 디코딩된 데이터를 획득한다 (블록 1016). 폐기(discarding) 및 디코딩은 필요하다면 하나 이상의 추가적인 스테이지들에 대해 반복될 수도 있다 (블록 1018). 소망하는 메시지가 최종 디코딩된 데이터로부터 획득된다 (블록 1020). 이 메시지는 제 1 디코딩된 데이터에서부터 최종 디코딩된 데이터까지, 모든 코드 레이트들에 의해 결정된 데이터 레이트로 전송된다. 도 3a 에 나타낸 병렬 아키텍쳐에서, 제 1 및 제 2 코드 레이트에 의해 결정된 데이터 레이트로 전송된 소망하는 메시지가 제 2 디코딩된 데이터로부터 획득될 수도 있다. 도 3b 에 나타낸 직렬 아키텍쳐에서, 제 2 디코딩된 데이터의 일부분이 제 3 코드 레이트에 따라 디코딩되어 제 3 디코딩된 데이터를 획득할 수도 있고, 제 3 디코딩된 데이터의 일부분은 추가로 디코딩될 수도 있다. 반복 디코딩 또는 공동 디코딩이 또한 수행되어 소망하는 메시지를 복원할 수도 있다.
도 11 은 계층적 디코딩을 수행하는 장치 (1100) 의 일 실시형태를 나타낸다. 장치 (1100) 는, (예를 들어, 멀티캐스트 메시지에 대한) 입력 데이터를 제 1 코드 레이트에 따라 디코딩하여 제 1 디코딩된 데이터를 획득하는 프로세서 (1112), 제 1 코드 레이트에 의해 결정된 데이터 레이트로 전송된 정보에 대응하는 제 1 디코딩된 데이터의 일부분을 폐기하는 프로세서 (1114), 제 1 디코딩된 데이터의 나머지 부분을 제 2 코드 레이트에 따라 디코딩하여 제 2 디코딩된 데이터를 획득하는 프로세서 (1116), 만약 필요하다면, 하나 이상의 추가적인 스테이지들에 대해 폐기 및 디코딩을 반복하는 프로세서 (1118), 및 최종 디코딩된 데이터로부터 소망하는 메시지를 획득하는 프로세서 (1120) 를 포함한다.
도 11 에서, 각각의 프로세서는 하나 이상의 프로세서들을 포함할 수도 있다. 각각의 프로세서에 대해 설명된 기능들은 디코딩에 관해 상기 도 1 내지 도 8 의 임의의 것을 이용하여 전술한 것들의 조합들일 수도 있다.
본원에 설명된 코딩 기술들은 다양한 이점을 제공할 수도 있다. 본 기술들은 유연한 자원 할당 및 레이트 적응으로 상이한 사용자들을 위해 의도된 개별 메시지들의 단일 멀티캐스트 메시지로의 효율적인 패킹(packing)을 가능하게 한다. 각각의 사용자에 대한 메시지는 그 사용자에 대한 소망하는 데이터 레이트를 달성하도록 인코딩될 수도 있다. 특히 개별 메시지들이 짧은 경우, 멀티캐스트 메시지에 대해 더 높은 코딩 게인들이 달성될 수도 있다. 멀티캐스트 메시지의 송신을 위해 할당된 시스템 자원 (예를 들어, 대역폭) 이 모든 사용자들에 의해 공유된다. 이는 통계적 멀티플렉싱 게인들로 인해 자원 사용효율(utilization)을 향상시킬 수도 있고, 각각의 사용자에 의해 관찰되는 다이버시티를 더 향상시킬 수도 있다. 각각의 사용자는 그 사용자에게 전송할 데이터의 양에 기초하여 멀티캐스트 메시지에 이용되는 자원의 일부분을 할당받는다. 따라서, 자원은 모든 사용자들을 위한 메시지들의 집합으로 인해 보다 미세한 정밀도(granularity)로 사용자들에게 할당될 수도 있다. 사용자들 사이의 간섭 또한 감소될 수도 있다. 각각의 사용자는 멀티캐스트 메시지를 디코딩하고, 그 사용자를 위해 의도된 메시지를 추출할 수도 있다.
본원에 설명된 코딩 기술들은 다양한 수단에 의해 구현될 수도 있다. 예를 들어, 이들 기술들은 하드웨어, 펌웨어, 소프트웨어, 또는 이들의 조합으로 구현될 수도 있다. 하드웨어 구현에서, 송신기에서 인코딩을 수행하기 위해 이용되는 프로세싱 유닛들 (예를 들어, 계층적 인코더 (예를 들어, 도 3a, 도 3b, 또는 도 3c 의 310, 330, 또는 350) 은 하나 이상의 주문형 집적 회로 (ASIC), 디지털 신호 프로세서 (DSP), 디지털 신호 처리 디바이스 (DSPD), 프로그래머블 로직 디바이스 (PLD), 필드 프로그래머블 게이트 어레이 (FPGA), 프로세서, 제어기, 마이크로-제어기, 마이크로프로세서, 전자 디바이스, 본원에 설명된 기능들을 수행하기 위해 설계된 다른 전자 유닛들, 또는 이들의 조합 내부에서 구현될 수도 있다. 수신기에서 디코딩을 수행하기 위해 이용되는 프로세싱 유닛들 (예를 들어, 도 5 또는 도 6b 의 계층적 디코더 (530 또는 630)) 은 또한 하나 이상의 ASIC, DSP, 프로세서 등 내부에서 구현될 수도 있다. 프로세싱 유닛들 (예를 들어, 프로세서들) 은 데이터 및/또는 프로그램 코드들을 저장할 수도 있는 하나 이상의 메모리들 (예를 들어, 고체 상태 메모리들) 에 연결될 수도 있다.
펌웨어 및/또는 소프트웨어 구현에서, 코딩 기술들은 하나 이상의 프로세서들이 본원에 설명된 기능들을 수행하도록 하는 코드들 (예를 들어, 절차들, 함수들 등) 을 이용하여 구현될 수도 있다. 펌웨어 및/또는 소프트웨어 코드들은 메모리 (예를 들어, 도 2 의 메모리 (232 또는 272) 에 저장될 수도 있고, 프로세서 (예를 들어, 프로세서 (230 또는 270)) 에 의해 실행될 수도 있다. 메모리는 프로세서 내부에 구현될 수도 있고, 프로세서 외부에 구현될 수도 있다.
또한, 소프트웨어 구현들에서, 함수들은 하나 이상의 명령들 또는 코드로서 컴퓨터 판독가능 매체상에 저장될 수도 있고, 또는 컴퓨터 판독가능 매체를 통해 송신될 수도 있다. 컴퓨터 판독가능 매체는 컴퓨터 프로그램을 한 장소에서 다른 장소로 이송하는 것을 용이하게 하는 임의의 매체를 포함하는 컴퓨터 저장 매체 및 통신 매체 양자 모두를 포함한다. 저장 매체는 범용 컴퓨터 또는 특별한 목적의 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수도 있다. 한정적 목적이 아닌, 예시로서, 이러한 컴퓨터 판독가능 매체는, RAM, ROM, EEPROM, CD-ROM, 또는 다른 광학 디스크 저장 디바이스, 자기 디스크 저장 디바이스 또는 다른 자기 저장 디바이스들, 또는, 명령들 또는 데이터 구조들의 형태로 소망하는 프로그램 코드 수단을 전달 또는 저장하기 위해 사용될 수 있고, 범용 컴퓨터 또는 특별한 목적의 컴퓨터, 또는, 범용 또는 특별한 목적의 프로세서에 의해 액세스될 수 있는, 임의의 다른 매체를 포함할 수 있다. 또한, 임의의 접속이 컴퓨터 판독가능 매체의 용어의 범주에 적절하게 포함된다. 예를 들어, 소프트웨어가 동축 케이블, 광섬유 케이블, 연선(twisted pair; TP), DSL(digital subscriber line), 또는 적외선, 무선, 및 마이크로파와 같은 무선 기술들을 이용하여 웹사이트, 서버, 또는 다른 원격 소스로부터 송신된다면, 그 동축 케이블, 광섬유 케이블, 연선, DSL, 또는 적외선, 무선, 및 마이크로파와 같은 무선 기술들이 매체의 정의에 포함된다. 본원에 사용된 바와 같은 디스크(disk) 및 디스크(disc)는 컴팩트 디스크 (CD), 레이저 디스크, 광학 디스크, DVD (Digital Versatile Disc), 플로피 디스크, 및 블루-레이 디스크를 포함하고, 여기서, 디스크(disk)들은 통상적으로 데이터를 자기적으로 재생하는 반면, 디스크(disc)들은 데이터를 레이저를 이용하여 광학적으로 재생한다. 상기 언급한 것들의 조합들 또한 컴퓨터-판독가능 매체의 범위 내에 포함되어야 한다.
개시된 실시형태들에 관한 상기 설명들은 당업자가 본 발명을 실시 또는 이용할 수 있도록 제공된 것이다. 이들 실시형태들에 대한 다양한 변형들이 당업자에게 있어 자명할 것이며, 본원에서 정의된 일반적인 원리들은 본 발명의 사상 또는 범위로부터 벗어남 없이 다른 실시형태들에 적용될 수도 있다. 따라서, 본 발명은 본원에서 나타낸 실시형태들로 한정되지 아니하며, 본원에 개시된 신규한 특징들 및 원리들에 부합하는 최광의 범위에 따르는 것이다.

Claims (40)

  1. 제 1 입력 데이터를 제 1 코드 레이트에 따라 인코딩하여 제 1 코딩된 데이터를 획득하고,
    제 2 입력 데이터 및 상기 제 1 코딩된 데이터를 제 2 코드 레이트에 따라 인코딩하여 제 2 코딩된 데이터를 획득하도록 구성된 적어도 하나의 프로세서; 및
    상기 적어도 하나의 프로세서에 연결된 메모리를 포함하는, 장치.
  2. 제 1 항에 있어서,
    상기 제 1 입력 데이터는 상기 제 1 및 제 2 코드 레이트에 의해 결정된 제 1 데이터 레이트로 전송되고, 상기 제 2 입력 데이터는 상기 제 2 코드 레이트에 의해 결정된 제 2 데이터 레이트로 전송되는, 장치
  3. 제 1 항에 있어서,
    상기 적어도 하나의 프로세서는,
    상기 제 1 코딩된 데이터를 상기 제 2 코드 레이트에 따라 인코딩하여 제 1 블록의 제 2 코딩된 데이터를 획득하고,
    상기 제 2 입력 데이터를 상기 제 2 코드 레이트에 따라 인코딩하여 제 2 블록의 제 2 코딩된 데이터를 획득하도록 구성된, 장치.
  4. 제 1 항에 있어서,
    상기 적어도 하나의 프로세서는,
    상기 제 2 코드 레이트에 따라 상기 제 2 입력 데이터 및 상기 제 1 코딩된 데이터를 함께(jointly) 인코딩하여 하나의 블록의 제 2 코딩된 데이터를 획득하도록 구성된, 장치.
  5. 제 1 항에 있어서,
    상기 적어도 하나의 프로세서는,
    제 3 입력 데이터 및 상기 제 2 코딩된 데이터를 제 3 코드 레이트에 따라 인코딩하여 제 3 코딩된 데이터를 획득하도록 구성된, 장치.
  6. 제 5 항에 있어서,
    상기 제 1 입력 데이터는 상기 제 1, 제 2, 및 제 3 코드 레이트에 의해 결정된 제 1 데이터 레이트로 전송되고, 상기 제 2 입력 데이터는 상기 제 2 및 제 3 코드 레이트에 의해 결정된 제 2 데이터 레이트로 전송되며, 상기 제 3 입력 데이터는 상기 제 3 코드 레이트에 의해 결정된 제 3 데이터 레이트로 전송되는, 장치.
  7. 제 1 항에 있어서,
    상기 적어도 하나의 프로세서는,
    제 3 입력 데이터를 제 3 코드 레이트에 따라 인코딩하여 제 3 코딩된 데이 터를 획득하고,
    상기 제 2 입력 데이터 및 상기 제 1 및 제 3 코딩된 데이터를 상기 제 2 코드 레이트에 따라 인코딩하여 상기 제 2 코딩된 데이터를 획득하도록 구성된, 장치.
  8. 제 7 항에 있어서,
    상기 제 1 입력 데이터는 상기 제 1 및 제 2 코드 레이트에 의해 결정된 제 1 데이터 레이트로 전송되고, 상기 제 2 입력 데이터는 상기 제 2 코드 레이트에 의해 결정된 제 2 데이터 레이트로 전송되며, 상기 제 3 입력 데이터는 상기 제 2 및 제 3 코드 레이트에 의해 결정된 제 3 데이터 레이트로 전송되는, 장치.
  9. 제 1 항에 있어서,
    상기 적어도 하나의 프로세서는,
    상기 제 1 입력 데이터를 베이스 코드를 이용하여 인코딩하고,
    상기 제 1 코드 레이트에 대한 펑쳐(puncture) 패턴을 이용하여 상기 베이스 코드의 출력을 펑쳐링하여 상기 제 1 코딩된 데이터를 획득하도록 구성된, 장치.
  10. 제 9 항에 있어서,
    상기 베이스 코드는 컨볼루셔널 코드, 터보 코드, 또는 블록 코드를 포함하 는, 장치.
  11. 제 1 항에 있어서,
    상기 적어도 하나의 프로세서는,
    복수의 사용자들에 대한 시그널링 정보를 상기 제 1 및 제 2 입력 데이터로 맵핑하도록 구성되며,
    상기 제 1 및 제 2 입력 데이터 각각은 상기 복수의 사용자들 중 적어도 하나에 대한 시그널링 정보를 포함하는, 장치.
  12. 제 11 항에 있어서,
    상기 시그널링 정보는 상기 복수의 사용자들로의 자원의 할당을 나타내는, 장치.
  13. 제 11 항에 있어서,
    상기 적어도 하나의 프로세서는,
    각각의 사용자에 대한 상기 시그널링 정보를 상기 사용자에 대한 스크램블링 코드를 이용하여 스크램블링하도록 구성된, 장치.
  14. 제 1 항에 있어서,
    상기 적어도 하나의 프로세서는,
    복수의 사용자들에 대한 복수의 데이터 레이트들을 결정하고,
    상기 복수의 데이터 레이트들을 달성하기 위한 복수의 코드 레이트들을 결정하도록 구성되며,
    상기 복수의 코드 레이트들은 상기 제 1 및 제 2 코드 레이트들을 포함하는, 장치.
  15. 제 14 항에 있어서,
    상기 적어도 하나의 프로세서는,
    상기 복수의 사용자들에 대한 채널 상태 정보에 기초하여 상기 복수의 데이터 레이트들을 결정하고,
    각각의 사용자에 대한 시그널링 정보를 상기 사용자에 대한 데이터 레이트에 기초하여 복수의 입력 데이터 블록들 중 하나로 맵핑하도록 구성되며,
    상기 복수의 입력 데이터 블록들은 상기 제 1 및 제 2 입력 데이터를 포함하는, 장치.
  16. 제 1 코딩된 데이터를 획득하기 위해 제 1 코드 레이트에 따라 제 1 입력 데이터를 인코딩하는 단계; 및
    제 2 코딩된 데이터를 획득하기 위해 제 2 코드 레이트에 따라 제 2 입력 데이터 및 상기 제 1 코딩된 데이터를 인코딩하는 단계를 포함하는, 방법.
  17. 제 16 항에 있어서,
    상기 제 1 입력 데이터를 인코딩하는 단계는,
    상기 제 1 입력 데이터를 베이스 코드를 이용하여 인코딩하는 단계, 및
    상기 제 1 코딩된 데이터를 획득하기 위해 상기 제 1 코드 레이트에 대한 펑쳐(puncture) 패턴을 이용하여 상기 베이스 코드의 출력을 펑쳐링하는 단계를 포함하는, 방법.
  18. 제 16 항에 있어서,
    복수의 사용자들에 대한 복수의 데이터 레이트들을 결정하는 단계; 및
    상기 복수의 데이터 레이트들을 달성하기 위한 복수의 코드 레이트들을 결정하는 단계를 더 포함하며,
    상기 복수의 코드 레이트들은 상기 제 1 및 제 2 코드 레이트들을 포함하는, 방법.
  19. 제 16 항에 있어서,
    복수의 사용자들에 대한 시그널링 정보를 상기 제 1 및 제 2 입력 데이터로 맵핑하는 단계를 더 포함하며,
    상기 제 1 및 제 2 입력 데이터 각각은 상기 복수의 사용자들 중 적어도 하나에 대한 시그널링 정보를 포함하는, 방법.
  20. 제 1 코딩된 데이터를 획득하기 위해 제 1 코드 레이트에 따라 제 1 입력 데이터를 인코딩하는 수단; 및
    제 2 코딩된 데이터를 획득하기 위해 제 2 코드 레이트에 따라 제 2 입력 데이터 및 상기 제 1 코딩된 데이터를 인코딩하는 수단을 포함하는, 장치.
  21. 제 20 항에 있어서,
    상기 제 1 입력 데이터를 인코딩하는 수단은,
    상기 제 1 입력 데이터를 베이스 코드를 이용하여 인코딩하는 수단, 및
    상기 제 1 코딩된 데이터를 획득하기 위해 상기 제 1 코드 레이트에 대한 펑쳐(puncture) 패턴을 이용하여 상기 베이스 코드의 출력을 펑쳐링하는 수단을 포함하는, 장치.
  22. 제 20 항에 있어서,
    복수의 사용자들에 대한 복수의 데이터 레이트들을 결정하는 수단; 및
    상기 복수의 데이터 레이트들을 달성하기 위한 복수의 코드 레이트들을 결정하는 수단을 더 포함하며,
    상기 복수의 코드 레이트들은 상기 제 1 및 제 2 코드 레이트들을 포함하는, 장치.
  23. 제 20 항에 있어서,
    복수의 사용자들에 대한 시그널링 정보를 상기 제 1 및 제 2 입력 데이터로 맵핑하는 수단을 더 포함하며,
    상기 제 1 및 제 2 입력 데이터 각각은 상기 복수의 사용자들 중 적어도 하나에 대한 시그널링 정보를 포함하는, 장치.
  24. 제 1 코딩된 데이터를 획득하기 위해 제 1 코드 레이트에 따라 제 1 입력 데이터를 인코딩하는 코드; 및
    제 2 코딩된 데이터를 획득하기 위해 제 2 코드 레이트에 따라 제 2 입력 데이터 및 상기 제 1 코딩된 데이터를 인코딩하는 코드를 포함하는, 컴퓨터 판독가능 매체.
  25. 입력 데이터를 제 1 코드 레이트에 따라 디코딩하여 제 1 디코딩된 데이터를 획득하고,
    상기 제 1 디코딩된 데이터의 일부분을 제 2 코드 레이트에 따라 디코딩하여 제 2 디코딩된 데이터를 획득하도록 구성된 적어도 하나의 프로세서; 및
    상기 적어도 하나의 프로세서에 연결된 메모리를 포함하는, 장치.
  26. 제 25 항에 있어서,
    상기 적어도 하나의 프로세서는,
    상기 제 1 코드 레이트에 의해 결정된 데이터 레이트로 전송된 정보에 대해 상기 제 1 디코딩된 데이터의 일부(fraction)를 폐기(discard)하고,
    상기 제 1 디코딩된 데이터의 미폐기된 일부를 디코딩될 상기 제 1 디코딩된 데이터의 일부분으로서 제공하도록 구성된, 장치.
  27. 제 25 항에 있어서,
    상기 제 1 디코딩된 데이터는 다수의 디코딩된 블록들을 포함하고,
    상기 적어도 하나의 프로세서는,
    상기 다수의 디코딩된 블록들 중 하나를 상기 제 2 코드 레이트에 따라 디코딩하여 상기 제 2 디코딩된 데이터를 획득하도록 구성된, 장치.
  28. 제 25 항에 있어서,
    상기 제 1 디코딩된 데이터는 하나의 디코딩된 블록을 포함하고,
    상기 적어도 하나의 프로세서는,
    상기 디코딩된 블록의 일부분을 상기 제 2 코드 레이트에 따라 디코딩하여 상기 제 2 디코딩된 데이터를 획득하도록 구성된, 장치.
  29. 제 25 항에 있어서,
    상기 적어도 하나의 프로세서는,
    상기 제 2 디코딩된 데이터로부터, 상기 제 1 및 제 2 코드 레이트에 의해 결정된 데이터 레이트로 전송된 메시지를 획득하도록 구성된, 장치.
  30. 제 25 항에 있어서,
    상기 적어도 하나의 프로세서는,
    상기 제 2 디코딩된 데이터의 일부분을 제 3 코드 레이트에 따라 디코딩하여 제 3 디코딩된 데이터를 획득하고,
    상기 제 3 디코딩된 데이터로부터, 상기 제 1, 제 2, 및 제 3 코드 레이트에 의해 결정된 데이터 레이트로 전송된 메시지를 획득하도록 구성된, 장치.
  31. 제 25 항에 있어서,
    상기 적어도 하나의 프로세서는,
    상기 입력 데이터를 컨볼루셔널 코드, 터보 코드, 또는 블록 코드에 따라 디코딩하도록 구성된, 장치.
  32. 제 25 항에 있어서,
    상기 적어도 하나의 프로세서는,
    상기 입력 데이터를 상기 제 1 및 제 2 코드 레이트에 대해 다수의 반복 횟수 동안 반복적으로(iteratively) 디코딩하도록 구성된, 장치.
  33. 제 25 항에 있어서,
    상기 적어도 하나의 프로세서는,
    상기 제 1 및 제 2 코드 레이트에 대해 상기 입력 데이터를 함께(jointly) 디코딩하도록 구성된, 장치.
  34. 제 1 디코딩된 데이터를 획득하기 위해 제 1 코드 레이트에 따라 입력 데이터를 디코딩하는 단계; 및
    제 2 디코딩된 데이터를 획득하기 위해 제 2 코드 레이트에 따라 상기 제 1 디코딩된 데이터의 일부분을 디코딩하는 단계를 포함하는, 방법.
  35. 제 34 항에 있어서,
    상기 제 1 코드 레이트에 의해 결정된 데이터 레이트로 전송된 정보에 대해 상기 제 1 디코딩된 데이터의 일부(fraction)를 폐기(discard)하는 단계; 및
    상기 제 1 디코딩된 데이터의 미폐기된 일부를 디코딩될 상기 제 1 디코딩된 데이터의 일부분으로서 제공하는 단계를 더 포함하는, 방법.
  36. 제 34 항에 있어서,
    상기 제 2 디코딩된 데이터로부터, 상기 제 1 및 제 2 코드 레이트에 의해 결정된 데이터 레이트로 전송된 메시지를 획득하는 단계를 더 포함하는, 방법.
  37. 제 1 디코딩된 데이터를 획득하기 위해 제 1 코드 레이트에 따라 입력 데이터를 디코딩하는 수단; 및
    제 2 디코딩된 데이터를 획득하기 위해 제 2 코드 레이트에 따라 상기 제 1 디코딩된 데이터의 일부분을 디코딩하는 수단을 포함하는, 장치.
  38. 제 37 항에 있어서,
    상기 제 1 코드 레이트에 의해 결정된 데이터 레이트로 전송된 정보에 대해 상기 제 1 디코딩된 데이터의 일부(fraction)를 폐기(discard)하는 수단; 및
    상기 제 1 디코딩된 데이터의 미폐기된 일부를 디코딩될 상기 제 1 디코딩된 데이터의 일부분으로서 제공하는 수단을 더 포함하는, 장치.
  39. 제 37 항에 있어서,
    상기 제 2 디코딩된 데이터로부터, 상기 제 1 및 제 2 코드 레이트에 의해 결정된 데이터 레이트로 전송된 메시지를 획득하는 수단을 더 포함하는, 장치.
  40. 제 1 디코딩된 데이터를 획득하기 위해 제 1 코드 레이트에 따라 입력 데이터를 디코딩하는 코드; 및
    제 2 디코딩된 데이터를 획득하기 위해 제 2 코드 레이트에 따라 상기 제 1 디코딩된 데이터의 일부분을 디코딩하는 코드를 포함하는, 컴퓨터 판독가능 매체.
KR1020087016421A 2005-12-05 2006-12-05 멀티캐스트 메시지들에 대한 계층적 코딩 KR101018611B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US74267805P 2005-12-05 2005-12-05
US60/742,678 2005-12-05
US77478906P 2006-02-17 2006-02-17
US60/774,789 2006-02-17

Publications (2)

Publication Number Publication Date
KR20080089383A KR20080089383A (ko) 2008-10-06
KR101018611B1 true KR101018611B1 (ko) 2011-03-02

Family

ID=38609998

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020087016421A KR101018611B1 (ko) 2005-12-05 2006-12-05 멀티캐스트 메시지들에 대한 계층적 코딩

Country Status (7)

Country Link
US (2) US8102923B2 (ko)
EP (1) EP1958366B1 (ko)
JP (1) JP5074411B2 (ko)
KR (1) KR101018611B1 (ko)
CN (1) CN101390292B (ko)
TW (1) TWI353130B (ko)
WO (1) WO2007120314A2 (ko)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7715460B2 (en) 2005-04-22 2010-05-11 Interdigital Technology Corporation Hybrid orthogonal frequency division multiple access system and method
US8363738B2 (en) 2005-12-05 2013-01-29 Qualcomm Incorporated Hierarchical coding for multicast messages
WO2007120314A2 (en) * 2005-12-05 2007-10-25 Qualcomm Incorporated Hierarchical coding for multicast messages
US8738019B2 (en) * 2006-03-07 2014-05-27 Qualcomm Incorporated Method and system for deassignment of resources in a wireless communication system
US20080095050A1 (en) * 2006-03-07 2008-04-24 Qualcomm Incorporated Method and system for de-assignment of resources in a wireless communication system
EP1936900A1 (de) * 2006-12-18 2008-06-25 Nokia Siemens Networks Gmbh & Co. Kg Verfahren bzw. OFDM-Vorrichtung zur SC-FDMA-Datenübertragung
US8116412B1 (en) 2006-12-30 2012-02-14 Rockstar Bidco, LP Modulation division multiple access
WO2009005326A2 (en) * 2007-07-04 2009-01-08 Lg Electronics Inc. Digital broadcasting system and method of processing data
JP4674226B2 (ja) * 2007-08-22 2011-04-20 日本電信電話株式会社 通信路符号化方法及び通信路符号化システム及び階層的通信路符号化プログラム及び階層的通信路復号プログラム
US20110026480A1 (en) * 2008-03-28 2011-02-03 Electronics And Telecommunications Research Institute Hierarchical transmission system and method for variable quality service on cellular system
US8494082B2 (en) * 2008-05-06 2013-07-23 Electronics And Telecommunications Research Institute Apparatus for transmitting layered data
EP2136520A1 (en) * 2008-06-20 2009-12-23 Nokia Siemens Networks Oy Method and device for processing data and communication system comprising such device
ATE511286T1 (de) * 2009-01-13 2011-06-15 Alcatel Lucent Sendeverfahren und empfangsverfahren für einen modulierten datenstrom
KR20100095759A (ko) 2009-02-23 2010-09-01 삼성전자주식회사 디지털 송수신 장치 및 방법
JP5565082B2 (ja) * 2009-07-31 2014-08-06 ソニー株式会社 送信電力決定方法、通信装置及びプログラム
JP5531767B2 (ja) 2009-07-31 2014-06-25 ソニー株式会社 送信電力制御方法、通信装置及びプログラム
JP5429036B2 (ja) 2009-08-06 2014-02-26 ソニー株式会社 通信装置、送信電力制御方法、及びプログラム
US9313770B2 (en) * 2009-08-25 2016-04-12 Idtp Holdings, Inc. Multicast channel control information
CN102668384B (zh) * 2009-12-21 2015-10-07 索尼公司 具有通过单播系统传送的递增冗余的广播系统
US9036567B2 (en) * 2010-02-03 2015-05-19 Qualcomm Incorporated Logical channel mapping for increased utilization of transmission resources
FR2981781A1 (fr) * 2011-10-19 2013-04-26 France Telecom Codage hierarchique perfectionne
US9520898B2 (en) * 2014-02-13 2016-12-13 Electronics And Telecommunications Research Institute Modulator and modulation method using non-uniform 16-symbol signal constellation for low-density parity check codeword having 3/15 code rate
CA3043836C (en) * 2014-02-13 2020-10-20 Electronics And Telecommunications Research Institute Modulator and modulation method using non-uniform 16-symbol signal constellation for low-density parity check codeword having 4/15 code rate
KR101853669B1 (ko) 2014-09-25 2018-05-02 엘지전자 주식회사 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
JP6317696B2 (ja) * 2015-03-16 2018-04-25 株式会社東芝 通信装置および通信システム
CN109672453A (zh) * 2018-12-17 2019-04-23 上海沿芯微电子科技有限公司 Rs编码器串并混用编码电路、编码方法及rs编码器
CN110611508B (zh) * 2019-09-02 2020-07-03 中国石油天然气集团有限公司 一种用于石油钻井的基于组合码的编码和解码方法
US11728843B2 (en) * 2021-10-19 2023-08-15 L3Harris Technologies, Inc. Frequency hopping interference detection using decoder codeword metrics

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5602589A (en) 1994-08-19 1997-02-11 Xerox Corporation Video image compression using weighted wavelet hierarchical vector quantization
KR20040035297A (ko) * 2002-10-19 2004-04-29 삼성전자주식회사 복합적 오류정정 부호화 기능을 갖는 디지털방송 시스템의전송장치 및 방법
US7290135B2 (en) 2001-05-29 2007-10-30 Siemens Aktiengesellschaft Method and arrangement for data communication in a cryptographic system containing a plurality of entities

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4425713C1 (de) 1994-07-20 1995-04-20 Inst Rundfunktechnik Gmbh Verfahren zur Vielträger Modulation und Demodulation von digital codierten Daten
JP3934712B2 (ja) * 1996-09-27 2007-06-20 日本ビクター株式会社 映像信号符号化方法及び装置
US5946357A (en) 1997-01-17 1999-08-31 Telefonaktiebolaget L M Ericsson Apparatus, and associated method, for transmitting and receiving a multi-stage, encoded and interleaved digital communication signal
US5852630A (en) * 1997-07-17 1998-12-22 Globespan Semiconductor, Inc. Method and apparatus for a RADSL transceiver warm start activation procedure with precoding
US6161180A (en) 1997-08-29 2000-12-12 International Business Machines Corporation Authentication for secure devices with limited cryptography
US6131180A (en) * 1997-11-03 2000-10-10 Ericsson, Inc. Trellis coded modulation system
US6088387A (en) * 1997-12-31 2000-07-11 At&T Corp. Multi-channel parallel/serial concatenated convolutional codes and trellis coded modulation encoder/decoder
DE69839625D1 (de) * 1998-08-21 2008-07-31 Lucent Technologies Inc Mehrfachkode CDMA-System unter Verwendung von iterativer Dekodierung
US6014411A (en) * 1998-10-29 2000-01-11 The Aerospace Corporation Repetitive turbo coding communication method
US6553540B1 (en) 1998-12-07 2003-04-22 Telefonaktiebolaget Lm Ericsson Efficient system and method for forward error correction
EP1065855A1 (en) 1999-06-29 2001-01-03 Sony International (Europe) GmbH Adaptation of cyclic extensions in an OFDM communication system
JP3549788B2 (ja) * 1999-11-05 2004-08-04 三菱電機株式会社 多段符号化方法、多段復号方法、多段符号化装置、多段復号装置およびこれらを用いた情報伝送システム
US7073116B1 (en) * 1999-11-23 2006-07-04 Thomson Licensing Error detection/correction coding for hierarchical QAM transmission systems
US6505320B1 (en) * 2000-03-09 2003-01-07 Cirrus Logic, Incorporated Multiple-rate channel ENDEC in a commuted read/write channel for disk storage systems
JP2001274698A (ja) * 2000-03-24 2001-10-05 Sony Corp 符号化装置、符号化方法及び符号化プログラムが記録された記録媒体、並びに、復号装置、復号方法及び復号プログラムが記録された記録媒体
US7032154B2 (en) * 2000-06-05 2006-04-18 Tyco Telecommunications (Us) Inc. Concatenated forward error correction decoder
KR100763378B1 (ko) * 2001-07-27 2007-10-05 엘지전자 주식회사 다수의 안테나를 이용한 신호 송수신 방법 및 이를 위한시스템
US6839004B2 (en) * 2001-11-27 2005-01-04 Seagate Technology Llc High rate run length limited code
KR20040011653A (ko) 2002-07-29 2004-02-11 삼성전자주식회사 채널 특성에 적응적인 직교 주파수 분할 다중 통신 방법및 장치
US8190163B2 (en) 2002-08-08 2012-05-29 Qualcomm Incorporated Methods and apparatus of enhanced coding in multi-user communication systems
US7724838B2 (en) 2003-09-25 2010-05-25 Qualcomm Incorporated Hierarchical coding with multiple antennas in a wireless communication system
US7409001B2 (en) * 2004-08-12 2008-08-05 Nokia Corporation Method and apparatus using coordinate interleaving to increase diversity in a MIMO system
US8031793B2 (en) * 2005-01-19 2011-10-04 Dumitru Mihai Ionescu Apparatus using concatenations of signal-space codes for jointly encoding across multiple transmit antennas, and employing coordinate interleaving
US7539261B2 (en) 2005-08-22 2009-05-26 Nec Laboratories America, Inc. Multi-layer coded modulation for non-ergodic block fading channels
US8363738B2 (en) 2005-12-05 2013-01-29 Qualcomm Incorporated Hierarchical coding for multicast messages
WO2007120314A2 (en) * 2005-12-05 2007-10-25 Qualcomm Incorporated Hierarchical coding for multicast messages

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5602589A (en) 1994-08-19 1997-02-11 Xerox Corporation Video image compression using weighted wavelet hierarchical vector quantization
US7290135B2 (en) 2001-05-29 2007-10-30 Siemens Aktiengesellschaft Method and arrangement for data communication in a cryptographic system containing a plurality of entities
KR20040035297A (ko) * 2002-10-19 2004-04-29 삼성전자주식회사 복합적 오류정정 부호화 기능을 갖는 디지털방송 시스템의전송장치 및 방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
연구보고서,계층적 코딩을 이용한 적응형 비디오 전달 기술연구*

Also Published As

Publication number Publication date
JP5074411B2 (ja) 2012-11-14
CN101390292A (zh) 2009-03-18
US8542752B2 (en) 2013-09-24
WO2007120314A3 (en) 2008-10-09
EP1958366B1 (en) 2018-01-17
TWI353130B (en) 2011-11-21
CN101390292B (zh) 2014-03-26
EP1958366A2 (en) 2008-08-20
US20070147539A1 (en) 2007-06-28
TW200737793A (en) 2007-10-01
WO2007120314A2 (en) 2007-10-25
US8102923B2 (en) 2012-01-24
JP2009518969A (ja) 2009-05-07
KR20080089383A (ko) 2008-10-06
US20120257687A1 (en) 2012-10-11

Similar Documents

Publication Publication Date Title
KR101018611B1 (ko) 멀티캐스트 메시지들에 대한 계층적 코딩
US10804929B2 (en) Communication of user specific control information in a wireless network
RU2371858C2 (ru) Кодирование и модуляция для услуг широковещательной передачи и групповой передачи в беспроводной системе связи
RU2407176C2 (ru) Способ и устройство для посылки сигнализации для передачи данных в системе беспроводной связи
US9184874B2 (en) Storing log likelihood ratios in interleaved form to reduce hardware memory
KR100866237B1 (ko) 고속 무선 데이터 시스템을 위한 변조 차수 결정 장치 및 방법과 그 데이터 수신 장치 및 방법
JP5607203B2 (ja) 通信システムにおけるサブパケットのリソースへのマッピング
KR101102396B1 (ko) 이동통신 시스템에서의 코드워드 크기 정합 방법 및 송신장치
US20050135308A1 (en) Frequency division multiplexing of multiple data streams in a wireless multi-carrier communication system
KR101421413B1 (ko) 트렐리스 코딩된 변조(tcm), 다중 레벨 코딩된 변조(tlcm) 및 비트 인터리빙된 mlcm(bimlcm)을 이용한 단일 캐리어 블록 전송
US8363738B2 (en) Hierarchical coding for multicast messages
JP2005503692A (ja) 部分チェイス合成を使用するデータの送受信のための装置及び方法
JP2003244257A (ja) 多値変調に適した符号語マッピング方法
WO2005043854A1 (en) Apparatus and method for assigning subchannels in an ofdma communication system
KR20100050579A (ko) 무선 통신 시스템에 대한 멀티플렉싱된 비컨 심벌들
JP2007306469A (ja) 無線通信装置および変調信号生成方法
Deka et al. Joint source channel coding with MC-CDMA in capacity approach
JP2007324699A (ja) 通信システム、通信方法および通信装置
Madhukumar et al. Incorporating incremental redundancy and link adaptation in communication systems using residue number systems

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20140129

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150129

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20151230

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20161229

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20190107

Year of fee payment: 9