KR20070104620A - 통신 시스템에서 복수의 데이터 스트림들을 위한 파서 및펑처링 - Google Patents

통신 시스템에서 복수의 데이터 스트림들을 위한 파서 및펑처링 Download PDF

Info

Publication number
KR20070104620A
KR20070104620A KR1020077019196A KR20077019196A KR20070104620A KR 20070104620 A KR20070104620 A KR 20070104620A KR 1020077019196 A KR1020077019196 A KR 1020077019196A KR 20077019196 A KR20077019196 A KR 20077019196A KR 20070104620 A KR20070104620 A KR 20070104620A
Authority
KR
South Korea
Prior art keywords
stream
streams
puncture cycles
puncture
sequence
Prior art date
Application number
KR1020077019196A
Other languages
English (en)
Other versions
KR100933375B1 (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 KR20070104620A publication Critical patent/KR20070104620A/ko
Application granted granted Critical
Publication of KR100933375B1 publication Critical patent/KR100933375B1/ko

Links

Images

Classifications

    • 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/0067Rate matching
    • H04L1/0068Rate matching by puncturing
    • H04L1/0069Puncturing patterns
    • 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/0059Convolutional codes

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Communication Control (AREA)

Abstract

선택가능한 데이터율들로써 데이터를 복수(M)의 스트림들로 파싱(parse)하기 위한 기술이 제시된다. 각각의 스트림에 대한 변조 방식 및 코드율은 상기 스트림에 대해 선택된 데이터율에 기초하여 결정된다. M개의 모든 스트림들에 대한 변조 방식들과 코드율들을 이용하여 파스 사이클 내의 각각의 스트림에 대한 펑처 사이클들의 개수와 파스 사이클을 결정한다. 펑처 사이클들의 시퀀스가 상기 M개의 스트림들에 대해 형성되어 각각의 스트림에 대한 상기 펑처 사이클(들)이 상기 시퀀스에 걸쳐 가능한 균일하게 분배된다. 인코더는 베이스 코드(base code)(예컨대, 레이트 1/2 이진 컨벌루션 코드(rate 1/2 binary convolutional code))에 따라 트래픽 데이터를 인코딩하고 코드 비트들을 발생시킨다. 그리고 나서 파서(parser)는 상기 펑처 사이클들의 시퀀스에 기초하여 코드 비트들을 M개의 스트림들로, 한 번에 하나의 펑처 사이클씩 그리고 상기 시퀀스에 의해 지시되는 순서로 파싱한다.

Description

통신 시스템에서 복수의 데이터 스트림들을 위한 파서 및 펑처링{PARSER AND PUNCTURING FOR MULTIPLE DATA STREAMS IN A COMMUNICATION SYSTEM}
본 발명은 일반적으로 통신, 더 상세하게는 통신 시스템에서 데이터를 복수의 스트림들로 파싱(parsing) (또는 역다중화(demultiplexing))하기 위한 기술들에 관련된 것이다.
다중-입력 다중-출력(multiple-input multiple-output, MIMO) 통신 시스템은 데이터 전송을 위해 송신 엔티티(entity)에서 복수(T)의 전송 안테나들을 그리고 수신 엔티티에서 복수(R)의 수신 안테나들을 채택한다. 상기 T개의 전송 안테나들과 R개의 수신 안테나들로 형성된 MIMO 채널은 S개의 공간 채널들로 분리될 수 있으며, 여기서 S≤min{T, R}. 상기 2개의 공간 채널들을 이용하여 더 높은 전체 스루풋(throughput) 및/또는 더 큰 신뢰성을 달성하기 위한 방법으로 데이터를 전송할 수 있다.
상기 S개의 공간 채널들은 상이한 채널 상태들(예컨대, 다른 페이딩(fading), 다중경로(multipath), 및 간섭 효과들)을 겪을 수 있으며 서로 다른 신호-대-잡음-및-간섭비(signal-to-noise-and-interference ratio, SNR)들을 달성할 수 있다. 각 공간 채널의 SNR은 그 전송 능력을 결정하며, 이는 일반적으로 상 기 공간 채널 상에서 신뢰성 있게 전송될 수 있는 특정 데이터율(data rate)로써 정량화된다. 상기 SNR이 공간 채널 사이에서 바뀐다면, 지원되는 데이터율도 공간 채널 간에 변한다. 또한, 상기 채널 상태들이 시간에 따라 변한다면, 상기 공간 채널들에 의해 지원되는 데이터율들도 시간에 따라 변화한다.
코딩된 MIMO 시스템에서의 주요 과제는 데이터를 복수의 스트림(stream)들로 파싱(parse)하여 우수한 성능이 모든 스트림들에 대해 달성될 수 있도록 하는 것이다. 이러한 파싱(parsing)은 상이한 데이터율들이 상이한 스트림들에 이용될 수 있고 이러한 스트림들이 특정 시간 인터벌에서 상이한 개수의 비트들을 반송할 수 있다면 복잡해 진다. 상기 파싱은 상이한 데이터율들이 이하에서 설명되는 바와 같이, 상이한 펑처(puncture) 패턴들과 관련된다면 더욱 복잡해진다.
그러므로 당해 기술분야에서 데이터를 상이한 데이터율들을 갖는 복수의 스트림들로 파싱하는 기술에 대한 수요가 존재한다.
데이터를 개별적으로 선택가능한 데이터율들을 갖는 복수의 스트림들로 파싱하기 위한 기술이 여기에 제시된다. 상이한 데이터율들은 변조 방식 및 코드율(code rate)의 서로 다른 조합들로써 이뤄질 수 있다. 상이한 코드율들은 베이스 코드(base code)를 이용하여 고정된 개수의 코드 비트들을 발생시키고 요구되는 코드율들을 이루기 위해 필요한 만큼의 코드 비트들을 펑처링(puncturing)(또는 삭제(deleting))함으로써 얻어질 수 있다. 그러면 각각의 코드율은 상기 코드 비트들을 펑처링하는데 이용되는 특정 펑처 패턴과 관련된다.
송신 엔티티에서, 인코더는 상기 베이스 코드(예컨대 레이트 1/2 이진 컨벌루션 코드(rate 1/2 binary convolution code))에 따라 트래픽 데이터를 인코딩하고 코드 비트들을 발생시킨다. 그리고 나서 파서(parser)는 상기 코드 비트들을 M개의 스트림들로 파싱하기 위한 순서를 지시하는 파싱 시퀀스에 기초하여 상기 코드 비트들을 복수(M)의 스트림들로 파싱한다. 상기 파싱 시퀀스가 형성되어 (1) 각 스트림에 대해 가장 짧은 가능한 코드 비트들의 런(run)을 달성하고 (2) 상기 코드 비트들의 런들을 상기 M개의 스트림들에 걸쳐 균일하게 또는 거의 균일하게 분배한다. 각 스트림에 대한 최단의 가능한 런들은 코딩 성능에 의해 지시되고 종종 상기 스트림에 이용되는 펑처 패턴에 의해 결정된다.
데이터를 파싱하는 일 실시예로, 각 스트림에 대한 변조 방식 및 코드율은 처음에 상기 스트림에 대해 선택되는 데이터율에 기초하여 결정된다. M개의 모든 스트림들에 대한 상기 변조 방식들과 코드율들을 이용하여 파스 사이클(parse cycle)을 결정하고 상기 파스 사이클에서 각 스트림에 대한 펑처 사이클들의 개수를 결정한다. 파스 사이클은 파싱이 수행되는 윈도우이고, 펑처 사이클은 펑처 패턴의 한 인스턴트(instant)이다. 펑처 사이클들의 시퀀스는 상기 M개의 스트림들에 대해 형성되어, 복수의 펑처 사이클들을 갖는 각 스트림에 대해, 상기 스트림에 대한 상기 복수의 펑처 사이클들이 상기 시퀀스에 걸쳐서 균일하게 또는 거의 균일하게 분배된다. 상기 시퀀스에 걸쳐 각 스트림에 대해 상기 펑처 사이클들을 분배하기 위한 몇가지 방식들이 이하에서 기술된다. 그리고 나서 상기 인코더로부터의 코드 비트들이 펑처 사이클들의 시퀀스에 기초하여, 한 번에 하나의 펑처 사이클씩 그리고 상기 시퀀스에 의해 지시되는 순서대로, M개의 스트림들로 파싱된다. 각 스트림 내의 코드 비트들은 그 스트림에 대한 펑처 패턴에 기초하여 추가로 펑처링된다. 그리고 나면 상기 M개의 스트림들이 복수의 전송 채널들(예컨대, 복수의 공간 채널들)을 통한 전송을 위해 처리(예컨대, 인터리빙(interleave), 심볼 매핑(symbol map) 등)된다.
수신 엔티티는 상기 송신 엔티티에 수행되는 파싱에 상보적인 방식으로 복수의 스트림들의 재조합(reassembly)를 수행한다. 본 발명의 다양한 특징들과 실시예들이 이하에서 더 자세히 기술된다.
도 1은 송신 엔티티 및 수신 엔티티의 블록도를 나타낸다.
도 2는 송신 엔티티의 전송(TX) 데이터 처리기를 나타낸다.
도 3A 및 3B는 두 개의 다른 파싱 방식들에 기초하여 발생되는 펑처 사이클들의 두 가지 시퀀스를 나타낸다.
도 4는 파스 사이클에 걸쳐 균일하게 분배된 각 스트림들에 대한 펑처 사이클들로써 파싱을 수행하기 위한 프로세스를 나타낸다.
도 5는 펑처 사이클들의 시퀀스를 형성하기 위한 실시예를 나타낸다.
도 6은 펑처 사이클들의 시퀀스를 형성하기 위한 다른 실시예를 나타낸다.
도 7은 수신 엔티티의 수신(RX) 데이터 처리기를 나타낸다.
용어 "예시적"은 여기서 "예, 보기 또는 예시로 기능하는 것"을 의미하는 것 으로 이용된다. "예시적"인 것으로 여기에 기술되는 임의의 실시예가 반드시 다른 실시예들에 비하여 바람직하거나 유리한 것으로 해석되어서는 안된다.
여기 기술되는 파싱 기술들은 동시에 복수의 데이터 스트림들을 전송할 수 있는 다양한 무선 및 유선 통신 시스템들에 이용될 수 있다. 예를 들어, 이러한 기술들은 MIMO 시스템, 직교주파수 분할다중화(OFDM) 시스템, OFDM을 이용하는 MIMO 시스템(즉, MIMO-OFDM 시스템) 등에 이용될 수 있다. OFDM은 전체 시스템 대역폭을, 톤(tone), 부반송파, 빈(bin), 및 주파수 채널들로도 불리우는 복수의 직교 주파수 부대역(subband)들로 효율적으로 분할하는 다중-반송파 변조 방식이다. OFDM에서, 각 부대역은 데이터로써 변조될 수 있는 각각의 부반송파(subcarrier)와 관련된다. 명확화를 위해, 상기 파싱 기술들은 이하에서 예시적인 MIMO 시스템에 대해 기술된다.
도 1은 MIMO 시스템(100) 내의 송신 엔티티(110) 및 수신 엔티티(150)의 블록도를 나타낸다. 송신 엔티티(110)는 액세스 포인트 또는 사용자 단말일 수 있다. 수신 엔티티(150)도 액세스 포인트 또는 사용자 단말일 수 있다.
송신 엔티티(110)에서, TX 데이터 처리기(120)는 데이터 소스(112)로부터 트래픽 데이터를 수신하고, 상기 트래픽 데이터를 인코딩하여 코드 비트들을 발생시키며, 상기 코드 비트들을 복수(M)의 스트림들로 파싱한다. TX 데이터 처리기(120)는 추가로 코드 비트들의 각 스트림을 처리(예컨대, 펑처링(puncture), 인터리빙(interleave), 및 심볼 매핑(symbol map))하여 상응하는 변조 심볼들의 스트림을 발생시킨다. TX 공간 처리기(122)는 TX 데이터 처리기(120)로부터 변조 심볼 들의 M개의 스트림들을 수신하고, 파일럿 심볼들로 다중화하고, 적절히 공간 처리를 수행하며, 전송 심볼들의 T개 스트림들을 T개의 송신기 유닛들(TMTR)(124a 내지 124t)에 제공한다. 각 송신기 유닛(124)은 OFDM 변조를(적용가능하다면) 수행하여 데이터 칩(chip)들을 발생시키며, 추가로 상기 데이터 칩들을 처리(예컨대, 아날로그로 변환, 증폭, 필터링, 및 주파수 상향변환)하여 변조된 신호를 발생시킨다. 송신기 유닛들(124a 내지 124t)은 전송을 위해 T개의 변조 신호들을, 각각 T개의 안테나들(126a 내지 126t)에 제공한다.
수신 엔티티(150)에서, R개의 안테나들(152a 내지 152r)은 상기 T개의 전송된 신호들을 수신하고, 각각의 안테나(152)는 수신된 신호를 각각의 수신기 유닛(RCVR)(154)에 제공한다. 각 수신기 유닛(154)은 그 수신된 신호를 처리하고 수신된 심볼들의 스트림을 RX 공간 처리기(156)에 제공한다. RX 공간 처리기(156)는 R개의 모든 수신기 유닛들(154)로부터 상기 수신된 심볼들에 수신기 공간 처리(또는 공간 정합 필터링(spatial matched filtering))을 수행하고 검출된 심볼들의 M개의 스트림들을 제공하는데, 이는 송신 엔티티(110)에 의해 전송된 상기 변조 심볼들의 추정(estimate)들이다. 그리고 나서 RX 데이터 처리기(160)는 검출된 심볼들의 M개의 스트림들을 처리하고 디코딩된 데이터를 데이터 싱크(162)에 제공한다.
제어기들(130 및 170)은 송신 엔티티(110) 및 수신 엔티티(150) 각각에서의 처리 유닛들의 동작을 제어한다. 메모리 유닛들(132 및 172)은 제어기들(130 및 170) 각각에 의해 이용되는 데이터 및/또는 프로그램 코드들을 저장한다.
도 2는 송신 엔티티(110)의 TX 데이터 처리기(120)의 실시예를 나타내는 블 록도이다. TX 데이터 처리기(120) 내에서, 인코더(210)는 인코딩 방식에 따라 트래픽 데이터를 인코딩하고 코드 비트들을 발생시킨다. 상기 인코딩 방식은 컨벌루션 코드(convolutional code), 터보 코드(Turbo code), 저밀도 패리티 체크(low density parity check, LDPC) 코드, 순환 잉여 검사(cyclic redundancy check, CRC) 코드, 블록 코드 등이나 또는 이들의 조합을 포함할 수 있다. 일 실시예로, 인코더(210)는 각 데이터 비트에 대해 두 개의 코드 비트를 발생시키는 레이트 1/2 이진 컨벌루션 인코더(rate 1/2 binary convolutional encoder)를 구현한다. 파서(220)는 인코더(210)로부터 상기 코드 비트들을 수신하고 상기 코드 비트들을, 이하에서 기술되는 바와 같이 M개의 스트림들로 파싱한다.
M개의 스트림 처리기들(230a 내지 230m)은 파서(220)로부터 상기 M개의 코드 비트 스트림들을 수신한다. 각 스트림 처리기(230)는 펑처링(puncturing) 유닛(232), 인터리버(interleaver)(234), 그리고 심볼 매핑 유닛(236)을 포함한다. 펑처링 유닛(232)은 상기 스트림에 대해서 요구되는 코드율을 달성하기 위해 필요한 만큼 많은 수의, 상기 스트림 내의 코드 비트들을 펑처링(또는 삭제)한다. 예를 들어, 인코더(210)가 레이트 1/2 컨벌루션 인코더라면, 1/2보다 큰 코드율들은 인코더(210)로부터의 상기 코드비트들 중 일부를 삭제함으로써 얻어질 수 있다. 인터리버(234)는 인터리빙 방식에 기초하여 펑처링 유닛(232)으로부터의 상기 코드 비트들을 인터리빙(또는 재정렬)한다. 상기 인터리빙은 상기 코드 비트들에 대해 시간, 주파수, 및/또는 공간 다이버시티(diversity)를 제공한다. 심볼 매핑 유닛(236)은 변조 방식에 따라 상기 인터리빙된 비트들을 매핑하고 변조 심볼들을 제 공한다. 상기 심볼 매핑은 (1) B 개의 비트들의 세트들을 그룹화하여 B-비트 값들을 형성하고(여기서 B≥1), (2) 각각의 B-비트 값을 신호 컨스털레이션(constellation) 내에서 상기 변조 방식에 상응하는 점(point)에 매핑함으로써 이뤄질 수 있다. 각각의 매핑된 신호점은 복소값이며 변조 심볼에 대응한다. M개의 스트림 처리기들(230a 내지 230m)은 변조 심볼들의 M개의 스트림들을 TX 공간 처리기(122)에 제공한다. 인코딩, 파싱, 펑처링, 인터리빙, 그리고 심볼 매핑은 제어기(130)가 제공하는 제어 신호들에 기초하여 수행될 수 있다.
시스템(100)은 데이터 전송을 위해 한 세트의 모드들을 지원할 수 있다. 표 1은 모드 인덱스 1내지 14로 식별되는 예시적인 14개의 모드들의 세트를 열거한다. 각 모드는 특정 데이터율 또는 주파수 효율(spectral efficiency, Spec Eff), 특정 코드율, 그리고 특정 변조(Mod) 방식과 관련된다. 표 1에서, BPSK는 이진 위상 편이 변조(binary phase shift keying)를 나타내고, QPSK는 직교 위상 편이 변조(quadrature phase shift keying)를 나타내며, QAM은 직교 진폭 변조(quadrature amplitude mudulation)를 나타낸다. 각 모드에 대한 데이터율은 그 모드에 대한 코드율 및 변조 방식에 의해 결정되며 변조 심볼 당 데이터 비트의 단위로 주어질 수 있다. 또한 변조 심볼 당 코드 비트의 개수(bits/sym)가 표 1의 각 모드에 대해 주어져 있다. 표 1의 각 모드에 대한 코드율 및 변조 방식은 특정한 설계에 대한 것이다.
표 1
모드 인덱스 Spec Eff 코드율 Mod 방식 Bits/ Sym 모드 인덱스 Spec Eff 코드율 Mod 방식 Bits/ Sym
1 0.5 1/2 BPSK 1 8 3.5 7/12 64-QAM 6
2 0.75 3/4 BPSK 1 9 4.0 2/3 64-QAM 6
3 1.0 1/2 QPSK 2 10 4.5 3/4 64-QAM 6
4 1.5 3/4 QPSK 2 11 5.0 5/6 64-QAM 6
5 2.0 1/2 16-QAM 4 12 5.0 5/8 256-QAM 8
6 2.5 5/8 16-QAM 4 13 6.0 3/4 256-QAM 8
7 3.0 3/4 16-QAM 4 14 7.0 7/8 256-QAM 8
표 1에 제시된 바와 같이, 7개의 상이한 코드율들이 지원되는 14개의 모드에 이용된다. 레이트 1/2 보다 높은 각각의 코드율은 특정 펑처 패턴에 기초하여 인코더(210)로부터의 레이트-1/2 코드 비트들 중 일부를 펑처링함으로써 얻어질 수 있다. 표 2는 특정한 제한 길이 k=7 컨벌루션 코드에 대해 표 1에 주어진 7개의 상이한 코드율들에 관한 예시적인 펑처 패턴들을 열거한다. 이러한 펑처 패턴들은 이러한 컨벌루션 코드에 대해 우수한 성능을 제공하며 컴퓨터 시뮬레이션에 기초하여 식별된다. 다른 펑처 패턴들도 이러한 컨벌루션 코드들과 또한 동일하거나 다른 제한 길이의 다른 컨벌루션 코드들에 대해 지원되는 코드율들을 위해 이용될 수 있다.
표 2
코드율 펑처 패턴 # 입력 비트 # 출력 비트
1/2 11 2 2
7/12 11111110111110 14 12
5/8 1110111011 10 8
2/3 1110 4 3
3/4 111001 6 4
5/6 1110011001 10 6
7/8 11101010011001 14 8
m/n 코드율에 대해, 매 m 데이터 비트들에 대해 n 개의 코드 비트들이 존재한다. 레이트 1/2 컨벌루션 인코더(210)는 매 m개의 데이터 비트들에 대해 2m개의 코드 비트들을 발생시킨다. m/n인 코드율을 얻기 위해, 펑처링 유닛(232)은 인코더(210)로부터의 2m 코드 비트들의 각각의 세트에 대해 n 개의 코드 비트들을 출력한다. 따라서, 펑처링 유닛(232)은 인코더(210)로부터의 2m 코드 비트들의 각 세트로부터 2m-n 개의 코드 비트들을 삭제하여 코드율 m/n에 대해 n개의 코드 비트들을 얻는다. 각 세트로부터 삭제되어야 하는 코드 비트들은 펑처링 패턴에서 영('0')으로 표시된다. 예를 들어, 7/12인 코드율을 얻기 위해, 두 개의 코드 비트들이 인코더(210)으로부터의 14개의 코드 비트들의 각 세트에서 삭제되며, 상기 삭제되는 비트들은 상기 세트 내의 8번째 및 14 번째 비트이고, 펑처링 패턴 '11111110111110'로 표시된다. 상기 요구되는 코드율이 1/2이면 펑처링이 수행되지 않는다.
각각의 스트림에 대해 선택되는 모드는 상기 스트림에 대한 코드율을 결정하며, 이어서 상기 스트림에 대한 펑처 패턴을 결정한다. 상이한 모드들이 상이한 스트림들에 대해 선택될 수 있으며, M개의 상이한 펑처 패턴들까지 상기 M개의 스트림들에 이용될 수 있다.
파서(220)는 인코더(210)로부터의 상기 코드 비트들을 이하의 목적을 달성하기 위한 방법으로 M개의 스트림들로 파싱한다:
M개의 스트림들에 걸쳐서 인코더(210)로부터의 코드 비트들을 가능한 많이 혼합하여 코드 비트들의 최소 가능한 런(run)(또는 클러스터(cluster))이 각 스트림으로 전송되도록 한다.
상기 M개의 스트림들에 대해 상이한 모드들을 지원한다.
파서(220)는 인코더(210)로부터의 코드 비트들의 그룹에서 파싱을 수행한다. 파스 사이클은 상기 파싱이 수행되는 가장 작은 윈도우이며 인코더(210)로부터의 코드 비트들의 하나의 그룹에 대응한다. 상기 파스 사이클 크기(또는 각 그룹 내의 코드 비트들의 개수)는 상기 M개의 스트림들에 이용되는 모드들에 의해 결정되며 동일한 수의 변조 심볼들이 상기 M개의 스트림들 각각에 대해 발생되도록 선택된다. 도 2에 도시된 바와 같이, 각 스트림에 대해 상이한 모드의 이용을 용이하게 지원하기 위해 펑처링은 파싱 이후에 수행된다. 따라서 상기 파스 사이클 크기는 추가로 상기 M개의 스트림들 각각에 대해 펑처 사이클들의 정수 개수를 포함하도록 선택되어, 펑처링이 각 스트림에 대해 적절하게 수행될 수 있다. 상기 파스 사이클은 M개의 스트림들 각각에 대해 적어도 하나의 펑처 사이클을 포함한다.
명확화를 위해, 특정 예시에 대한 파싱이 이하에서 기술된다. 본 예에서, M=4 이고 4개의 스트림들이 표 3에 주어진 모드들로써 전송된다. 본 예에서, 상기 파스 사이클은 충분한 수의 인코더(210)로부터의 코드 비트들을 포함하여 상기 4개의 스트림들 각각에 대해 2개의 변조 심볼들을 발생시킨다. 스트림 1에 대해, "1110111011"인 레이트 5/8 펑처 패턴에 대한 두 개의 펑처 사이클들을 이용하여 두 개의 256-QAM 변조 심볼들에 대해 16개의 코드 비트들을 얻는다. 스트림 2에 대해, "111001"인 레이트 3/4 펑처 패턴에 대한 3개의 펑처 사이클들을 이용하여 2개의 64-QAM 변조 심볼들에 대한 12개의 코드 비트들을 얻는다. 스트림 3에 대해, "1110"인 레이트 2/3 펑처 패턴에 대해 4개의 펑처 사이클들을 이용하여 2개의 64-QAM 변조 심볼들에 대한 12개의 코드 비트들을 얻는다. 스트림 4에 대해, "11"인 레이트 1/2 펑처 패턴에 대한 하나의 펑처 사이클을 이용하여 2개의 BPSK 변조 심볼들에 대한 2개의 코드 비트들을 얻는다. 상기 파스 사이클은 인코더(210)로부터의 56개의 코드 비트들을 포함한다.
표 3
스트림 Mod 방식 코드율 펑처링 전 # 코드 비트 펑처링 후 # 코드 비트 # 펑처 사이클들/파스 사이클
1 256-QAM 5/8 20 16 2
2 64-QAM 3/4 18 12 3
3 64-QAM 2/3 16 12 4
4 BPSK 1/2 2 2 1
도 3A는 스트림 인덱스에 기초하여 발생된 펑처 사이클들(300)의 시퀀스를 나타낸다. 시퀀스(300)에 대해, 파서(220)는 파스 사이클 내의 첫 번째 20개의 코드 비트들을 스트림 1에 제공하고, 다음 18개의 코드 비트들을 스트림 2에, 그 다음 16 코드 비트들을 스트림 3에, 그리고 상기 파스 사이클 내의 마지막 2개의 코드 비트들을 스트림 4에 제공한다. 시퀀스(300)는 발생시키기 쉽지만 상기 4개의 스트림들에 걸쳐서 코드 비트들의 우수한 혼합(mixing)을 제공하지 않는데 이는 상기 펑처 사이클들, 그리고 그에 따른 코드 비트들이, 각 스트림에 대해서 상기 파스 사이클 내에서 서로 이웃하기 때문이다.
개선된 혼합(mixing)은 상기 파스 사이클에 걸쳐서 각 스트림에 대해 가능한 균일하게 상기 펑처 사이클들을 분배함으로써 이뤄질 수 있다. 파스 사이클에 걸친 상기 펑처 사이클들의 분배는 다양한 방법으로 이뤄질 수 있다. 이하의 기술에서, 다양한 프로세스들이 개별적으로 선택가능한 모드들로써 M 개의 스트림들에 대해 먼저 일반적으로 기술되고 그리고 나서 표 3에 주어진 4개의 스트림들을 갖는 예시에 대해 특별히 기술된다.
도 4는 파스 사이클에 걸쳐 각 스트림에 대해 균일하게 분배된 펑처 사이클들로써 파싱을 수행하기 위한 프로세스(400)를 나타낸다. 처음에, M개의 스트림들에 대한 파스 사이클 크기는 M개의 스트림들에 대해 선택된 모드들에 기초하여 결정된다(블록(410)). 각 스트림에 대해 선택된 모드는 (1) 상기 스트림에 대한 펑처 패턴을 결정하는 상기 스트림에 대한 코드율, 그리고 (2) 변조 심볼 당 코드 비트들의 개수(bits/sym)를 결정하는 상기 스트림에 대한 변조 방식을 지시한다. 상기 파스 사이클 크기는 다음과 같이 결정될 수 있다. 먼저, 표 2에 도시된 바와 같이, 펑처 패턴 당 출력 코드 비트의 개수(bits/pc)가 상기 스트림에 대한 펑처 패턴에서 일('1')들의 개수를 계수(count)함으로써 각 스트림에 대해 결정된다. 다음에 변조 심볼 당 펑처 사이클의 개수(pc/sym)가 각각의 스트림에 대해 bits/pc 대비 bits/sym의 정수비로서 결정된다. 그리고 나서 각 스트림에 대한 pc/sym 비율이 감소되어 분모는 가능한 작은 정수가 된다. 이어서 M개의 모든 스트림들에 대한 상기 감소된 pc/sym 비율들에 관한 최소 공통 분모가 결정된다. 그리고 나서 각 스트림에 대한 pc/sym 비율이 상기 최소 공통 분모를 이용하여 표현된다. 그리고 나서 상기 M개의 비율들에 대한 분자들은 하나의 파스 사이클 동안 상기 M개의 스트림들에 대한 펑처 사이클들의 개수를 나타낸다. 파스 사이클을 결정하는 예시는 이하에 기술된다.
그리고서 M개의 스트림들이, 예컨대 가장 많은 수의 펑처 사이클들을 가진 상기 스트림으로부터 가장 적은 수의 펑처 사이클들을 갖는 스트림으로 내림 차순 으로, 각 스트림에 대한 펑처 사이클들의 개수에 기초하여 정렬된다. 상기 M개의 정렬된 스트림들은 각기 S1, S2,...,SM으로 표시되고 파스 사이클 당 N1, N2, ..., NM 펑처 사이클들을 가지며, 여기서 정렬 후 N1≥N2≥...≥NM 이다.
T개의 엘리먼트들을 갖는 어레이(array)(P)가 형성되며(블록(414)), 여기서 T는 상기 파스 사이클 내의 모든 M개의 스트림들에 대한 펑처 사이클들의 총 개수이다. T는 다음과 같이 계산될 수 있다:
Figure 112007060748589-PCT00001
등식(1)
어레이(P)의 상기 T개의 엘리먼트들은 각 엘리먼트를 영으로 세팅함으로써 초기화된다(또한 블록(414)). 인덱스 i는 첫 번째 스트림에 대해 1로 초기화된다(블록(416)).
그리고 나서 스트림 S i 에 대한 N i 펑처 사이클들이 어레이(P)의 N i 가용 엘리먼트들로 매핑되어 이러한 N i 엘리먼트들이 어레이(P)에 걸쳐 가능한 균일하게 분배된다(블록(418)). 이러한 매핑은 이하에서 기술되는 바와 같이, 다양한 방식으로 이뤄질 수 있다. 상기 N i 매핑된 엘리먼트들 각각은 스트림 S i 에 대한 하나의 펑처 사이클에 대응한다. 그리고 나서 M개의 모든 스트림들이 처리되었는지에 대한 결정이 내려진다(블록(420)). 만일 그 답이 '아니오'이면, 인덱스 i는 증가되고(블록(422)), 상기 프로세스는 블록(418)으로 복귀하여 다음 스트림을 처리한다. 그렇지 않고, 모든 M개의 스트림들이 처리되었으면, 어레이(P)는 상기 M개의 스트림 들에 대한 T개의 펑처 사이클들이 최종 배열된 시퀀스를 나타내며, 여기서 각각의 스트림 S i 에 대한 N i 펑처 사이클들은 상기 파스 사이클/시퀀스에 걸쳐 가능한 균일하게 분배된다. 그리고 나서 인코더(210)로부터의 코드 비트들은 이하에 기술되는 바와 같이, 상기 M개의 스트림들에 대한 T개의 정렬된 펑처 사이클들의 시퀀스에 기초하여 M개의 스트림들로 파싱된다(블록(424)). 그리고 나서 프로세스(400)는 종료된다.
도 5는 M개의 스트림들에 대한 펑처 사이클들의 시퀀스를 형성하기 위한 프로세스(500)를 나타낸다. 프로세스(500)는 도 4의 블록(416내지 422)의 일 실시예이다.
스트림 S1에 대한 N1 펑처 사이클들(가장 많은 수의 펑처 사이클들을 가짐) 이 먼저 가능한 균일하게 어레이(P)의 T개의 엘리먼트들에 분배된다(블록(510)). 이는 다음과 같이 계산되는 인덱스들을 갖는 N1 어레이 엘리먼트들 내의 S1을 저장함으로써 이뤄질 수 있다:
Figure 112007060748589-PCT00002
, j=0,...,N1-1, 등식(2)
여기서 ks1, j 는 스트림 S i j번째 펑처 사이클에 대한 어레이 엘리먼트의 인덱스이다. 정확히 1/2의 값들이 등식(2)에서 반올림될 수 있다.
그리고 나서 M-1 개의 나머지 스트림들 각각에 대한 N i 펑처 사이클들이 어 레이(P)의 T개의 엘리먼트들에 걸쳐서 가능한 균일하게, 한 번에 하나의 스트림씩 그리고 스트림 S2로부터 SM까지 내림차순으로 분배된다. 인덱스 i는 처리할 다음 스트림에 대해 2로 세팅된다(블록(512)). 스트림 S i 에 대한 제 1 펑처 사이클은 어레이(P)의 제 1 가용(또는 영이-아닌) 엘리먼트로 매핑된다(블록(514)). 가용 엘리먼트(available element)는 영(zero)을 포함하는 어레이이고 아직 스트림에 대한 펑처 사이클을 저장하고 있지 않다. 스트림 S i 에 대한 나머지 N i -1 펑처 사이클들에 대한 어레이(P) 내의 "요구되는(desired)" 위치들은 다음과 같이 계산될 수 있다(블록(516)):
Figure 112007060748589-PCT00003
, j=1,...,N i -1, 등식(3)
여기서 ks i,0은 스트림 S i 의 제 1 펑처 사이클에 대한 어레이 엘리먼트의 인덱스; 그리고
ks i,j는 스트림 S i j번째 펑처 사이클에 대한 어레이(P) 내의 요구되는 위치이다.
그리고 나서 스트림 S i 에 대한 N i -1 펑처 사이클들이 상기 N i -1 요구되는 위치들 또는 그에 가장 가까운 어레이(P)의 N i -1 가용 엘리먼트들로 매핑된다(블록(518)). 각각의 인덱스 j의 값에 대해, 여기서 j = 1, ..., N i -1이고, 스트림 S i 에 대한 j번째 펑처 사이클은 어레이(P)의 ks i,j번째 엘리먼트가 이용가능하다면 상기 엘리먼트에 저장된다. 상기 엘리먼트가 이용가능하지 않으면, 가용 엘리먼트가 발견될 때까지 상기 이용불가능한 엘리먼트의 양 쪽의 연속하는 엘리먼트들이 체크되며, 스트림 S i 에 대한 상기 j번째 펑처 사이클이 상기 이용가능한 엘리먼트에 저장된다. 상기 연속하는 엘리먼트들은 ks i,j 모듈로(modulo)(T)를 교대로 증가 및 감소시킴으로써 식별된다. 예를 들어, 인덱스 ks i,j, ks i,j+1, ks i,j-1, ks i,j+2 등을 갖는 엘리먼트들은 이들이 이용가능한지 알기 위해 연속적으로 체크된다.
상기 j번째 펑처 사이클에 대한 최종 위치는 N i 로 정수 나누기를 수행하고 만일 그 나머지가 [N i /2]보다 크거나 같으면 1을 더함으로써 정수 연산에서의 모호성 없이 결정될 수 있으며, 여기서 [χ]는 χ에 대한 그 다음으로 큰 정수값을 산출하는 상한 연산자이다. 예를 들어, T=10 이고 N i =3 이면, [N i /2]=2 이다. j=1에 대해, T/N i = 10/3 인 정수 나눗셈은 3인 몫과 1인 나머지를 산출하며, 이는 [N i /2]=2 보다 작아서 상기 몫 3이 요구되는 위치로서 제공된다. j=2에 대해, 2·T/N i = 20/3 인 정수 나눗셈은 몫 6과 나머지 2를 산출하며, 이는 [N i /2]=2 와 동일하여 상기 몫 6 더하기 1이 요구되는 위치로서 제공된다.
블록(518) 후에, 모든 M개의 스트림들이 처리되었는지 여부가 결정된다(블록(520). 그 답이 '아니오'이면, 인덱스 i는 증가되고(블록(522)), 상기 프로세스 는 블록(514)로 복귀하여 다음 스트림을 처리한다. 그렇지 않으면, 프로세스(500)는 종료된다.
프로세스(500)는 표 3에 주어진 4개의 스트림들을 갖는 예시에 대해 이하에서 설명된다. 상기 4개의 스트림들에 대한 파스 사이클은 다음과 같이 결정된다. 스트림 1,2,3 및 4에 대한 변조 방식들은 각기 8, 6, 6, 및 1 bits/sym를 갖는다. 스트림 1,2,3 및 4에 대한 코드율들은 각각 8, 4, 3 및 2 bits/pc를 제공하는 펑처 패턴들과 관련된다. 따라서 스트림 1,2,3 및 4는 각기 1, 3/2, 2 및 1/2의 pc/sym 비율들을 갖는다. 최소 공통 분모는 상기 4개의 pc/sym 비율들에 대해서 2이다. 따라서 스트림 1,2,3 및 4는, 상기 최소 공통 분모를 이용하여 각각 2/2, 3/2, 4/2 및 1/2인 pc/sym 비율들을 가지며, 따라서 각각 파스 사이클 당 2, 3, 4, 및 1 펑처 사이클을 갖는다.
상기 4개의 스트림들은 펑처 사이클들의 개수에 기초하여 내림차순으로 정렬되어 다음의 정렬된 순서를 얻는다: 스트림 3, 2, 1 및 4. 스트림 3은 S1(또는 S1=3)으로 표시되고 N1=4인 펑처 사이클들을 갖는다. 스트림 2는 S2(또는 S2=2)로 표시되고 N2=3 인 펑처 사이클들을 갖는다. 스트림 1은 S3(또는 S3=1)으로 표시되고 N3=2인 펑처 사이클들을 갖는다. 스트림 4는 S4(또는 S4=4)로 표시되고 N4=1 인 펑처 사이클을 갖는다. 두 개의 스트림들이 동일한 개수의 펑처 사이클들을 가지면, 더 낮은 인덱스를 갖는 스트림이 상기 정렬에 의해 선택될 수 있다. 상기 정렬은 N1≥N2≥N3≥N4, 즉 i<l에 대해 Ni≥Nl 인 순열 또는 매핑을 제공하며, 여기서 i∈{1, 2, 3, 4} 이고 l∈{1, 2, 3, 4}이다. 추가로 상기 정렬은 N i =N l 이라면 S i <S l 이다. 4개의 모든 스트림들에 대한 펑처 사이클들의 총 개수는 T=4+3+2+1=10 으로 계산된다. 어레이(P)는 0으로 초기화되는 10개의 엘리먼트들을 포함한다.
스트림 S1에 대한 N1=4개의 펑처 사이클들은 먼저 어레이(P)의 상기 10개 엘리먼트들에 걸쳐 가능한 균일하게 분배된다. 스트림 S1에 대한 상기 4개의 펑처 사이클들에 대한 어레이(P)의 4개의 엘리먼트들의 인덱스는 등식(2)에 제시된 바와 같이 계산되어 k=0, 3, 5 및 8을 산출한다. 이러한 인덱스들을 가진 상기 4개의 엘리먼트들은 S1으로 세팅된다.
스트림 S2에 대한 N2=3개의 펑처 사이클들이 다음에 어레이(P)의 상기 10개 엘리먼트들에 걸쳐 가능한 균일하게 분배된다. 이는 어레이(P)의 첫번째 이용가능한 엘리먼트에 S2를 저장함으로써 이뤄지며, 이는 인덱스 k=1을 갖는 엘리먼트이다. 스트림 S2에 대한 나머지 2개의 펑처 사이클들에 대해 요구되는 위치들은 등식(3)에 제시된 바와 같이 계산되며 k=4 및 8이 된다. S2는 인덱스 k=4를 갖는 엘리먼트에 저장되는데 이는 상기 엘리먼트가 이용가능하기 때문이다. 인덱스 k=8을 갖는 엘리먼트가 이용불가능하면, S2는 인덱스 k=9를 갖는 엘리먼트에 저장되는데 이는 k=8에 가장 근접한 가용 엘리먼트이기 때문이다.
다음에 스트림 S3에 대해 N3=2개의 펑처 사이클들이 가능한 균일하게 어레이(P)의 상기 10개 엘리먼트들에 걸쳐서 분배된다. 이는 어레이(P)의 첫번째 이용가능한 엘리먼트에 S3를 저장함으로써 이뤄지며, 이는 인덱스 k=2를 갖는 엘리먼트이다. 스트림 S3에 대한 나머지 펑처 사이클에 대해 요구되는 위치들은 등식(3)에 제시된 바와 같이 계산되며 k=7이다. 인덱스 k=7을 갖는 엘리먼트는 S3으로 세팅되는데 이는 상기 엘리먼트가 이용가능하기 때문이다.
그리고 나서 스트림 S4에 대한 N4=1개의 펑처 사이클이 어레이(P)에 남은 단일한 가용 엘리먼트에서 어레이(P)에 저장되며, 이는 인덱스 k=6을 갖는 엘리먼트이다.
도 3B는 표 3에 주어진 4개의 스트림들을 갖는 상기 예시에 대한 도 5의 프로세스(500)에 기초하여 발생되는 펑처 사이클들(310)의 시퀀스를 나타낸다. 프로세스(500)는 (1) 스트림 S1에 대한 4개의 펑처 사이클들을 어레이(P) 내부의 인덱스 k=0, 3, 5 및 8을 갖는 4개의 엘리먼트들로, (2) 스트림 S2에 대한 3개의 펑처 사이클들을 인덱스 k=1, 4 및 9를 갖는 3개의 엘리먼트들로, (3) 스트림 S3에 대한 2개의 펑처 사이클들을 인덱스 k=2 및 7을 갖는 2개의 엘리먼트들로, 그리고 (4) 스트림 S4에 대한 하나의 펑처 사이클을 인덱스 k=6을 갖는 하나의 엘리먼트로 매핑한다.
시퀀스(310)에 대해, 파서(220)는 파스 사이클 내의 첫 4개의 코드 비트들을 스트림 3에 제공하고, 다음 6개의 코드 비트들을 스트림 2에 제공하고, 그 다음 10개의 코드 비트들을 스트림 1에 제공하고, 그 다음 4개의 코드 비트들을 스트림 3에 제공하며,..., 그리고 상기 파스 사이클 내의 마지막 4개의 코드 비트들을 스트림 2에 제공한다. 시퀀스(310)는 인코더(210)로부터의 상기 코드 비트들의 양호한 혼합(mixing)을 상기 4개의 스트림들에 걸쳐 제공하는데 이는 각 스트림에 대한 펑처 사이클들이 상기 파스 사이클에 걸쳐서 거의 고르게 분배되기 때문이다.
도 6은 M개의 스트림들에 대해 펑처 사이클들의 시퀀스를 형성하기 위한 프로세스(600)를 나타낸다. 프로세스(600)는 도 4의 블록(412 내지 422)의 다른 실시예이다. 프로세스(600)에 대해, 각 스트림 i에 대해서 상기 파스 사이클 내의 펑처 사이클들 간의 이상적인 스페이싱(spacing)은 먼저 Δ i =T/N i , i=1,...M 으로서 계산된다(블록(610)). 각 스트림 i에 대한 변수 D i 는 예컨대, 상기 스트림에 대한 이상적인 스페이싱의 절반, 즉 D i = Δ i /2 i=1,...,M 으로 초기화된다(블록(612)). 어레이(P)의 T개의 엘리먼트들에 대한 인덱스 k는 0으로 초기화된다(블록(614)).
인덱스 k의 각 값에 대해, 어레이(P)의 k번째 엘리먼트는 M개의 스트림들 중에서 최소 D i 값을 갖는 스트림으로 세팅된다(블록(616)). 그리고 나서 상기 선택된 스트림에 대한 변수 D i 가 상기 변수에 Δ i 를 더함으로써, 즉 D i =D i i 로 갱신된다(블록(618)). 그리고 나서 어레이(P)의 모든 T개 엘리먼트들이 채워졌는지 여부가 결정된다(블록(620)). 상기 답이 '아니오'라면, 인덱스 k는 증가되고(블록(622)), 상기 프로세스는 블록(616)으로 복귀하여 어레이(P)의 다음 엘리먼트를 채운다. 그렇지 않으면, 프로세스(600)는 종료된다.
프로세스(600)는 표 3에 주어진 4개의 스트림들에 대한 예시에 대해 이하에서 기술된다. 각 스트림 i에 대한 펑처 사이클들 간의 이상적인 스페이싱은: Δ1=5, Δ2=10/3, Δ3=10/4, 그리고 Δ4=10 으로 계산된다. 상기 4개의 스트림들에 대한 변수 D i 는: D1=5/2, D2=5/3, D3=5/4, 그리고 D4=5로 초기화될 수 있다.
표 4는 인덱스 k의 각각의 값에 대한 처리 결과를 나타낸다. k=3에 대해, 스트림 3이 4개의 스트림들 중 가장 작은 Di값인, D3=5/4를 가지고, 인덱스 0을 갖는 엘리먼트가 스트림 3으로 세팅, 즉 P(0)=3이 되고, D3은 D3=5/4+5/2=15/4로 갱신된다. k=1에 대해, 스트림 2가 4개의 스트림들 중 가장 작은 Di값인, D2=5/3을 가지며, 인덱스 1을 갖는 엘리먼트가 스트림 2로 세트, 즉 P(1)=2가 되며, D2는 D2=5/3+10/3=5로 갱신된다. k=2에 대해, 스트림 1이 4개의 스트림들 중 가장 작은 Di값인, D1=5/2를 가지고, 인덱스 2를 갖는 엘리먼트가 스트림 1로 세트, 즉 P(2)=1로 되며, D1은 D1=5/2+5=15/2로 갱신된다. 인덱스 k의 나머지 값 각각에 대한 처리는 유사한 방법으로 수행된다. 인덱스 k의 값 각각에 대해, 가장 작은 Di값을 갖는 스트림이 표 4에서 회색 음영으로 강조되고 또한 어레이(P)의 k번째 엘리먼트에 대해 선택된다. 두 개의 엘리먼트들이 동일한 Di값을 가지면(표 4의 k=4에 관한 경우 처럼), 가장 작은 인덱스 i를 갖는 스트림이 먼저 선택될 수 있다.
표 4
스트림 1 2 3 4
Δi 5 3 1/3 2 1/2 10
D 1 D 2 D 3 D 4 P( k )
k=0 2 1/2 1 2/3 1 1/4 5 3
k=1 2 1/2 1 2/3 3 3/4 5 2
k=2 2 1/2 5 3 3/4 5 1
k=3 7 1/2 5 3 3/4 5 3
k=4 7 1/2 5 6 1/4 5 2
k=5 7 1/2 8 1/3 6 1/4 5 4
k=6 7 1/2 8 1/3 6 1/4 15 3
k=7 7 1/2 8 1/3 8 3/4 15 1
k=8 12 1/2 8 1/3 8 3/4 15 2
k=9 12 1/2 11 2/3 8 3/4 15 3
상이한 순서의 펑처 사이클들을 갖는 상이한 펑처 사이클 시퀀스들은 다른 방법으로 변수 D i 를 초기화함으로써 얻어질 수 있다. 예를 들어, 가장 많은 수의 펑처 사이클들과 그에 따라 가장 작은 이상적인 스페이싱을 갖는 스트림에 대한 변수 D i 가 0으로 초기화되어 파스 사이클에 걸쳐 펑처 사이클들을 고르게 분배하는데 있어서 상기 스트림에 더 많은 비중(weight)을 줄 수 있다. 만일 스트림 3에 대한 변수 D3가 표 4에서 0으로 초기화된다면, 프로세스(600)는 다음의 펑처 사이클 시퀀스를 발생시킬 것이다: 3, 2, 1, 3, 2, 3, 4, 1, 3, 2.
도 5 및 6은 상기 M 개의 스트림들 각각에 대한 펑처 사이클들이 상기 파스 사이클에 걸쳐 가능한 고르게 분배되도록 펑처 사이클들의 시퀀스들을 발생시키기 위한 두 가지 실시예들을 나타낸다. 또한 상기 펑처 사이클들은 다른 방법들로 고르게 또는 거의 균일하게 분배될 수 있으며, 이는 본 발명의 범위 내에 포함된다. 파서(220)는 인코더(210)로부터의 코드 비트들을 M개의 스트림들에, 한 번에 하나의 펑처 사이클씩, 상기 파스 사이클 내의 T개의 펑처 사이클들의 배열에 기초하여, 예컨대 도 3B에 도시되는 바와 같이 분배한다. 이러한 펑처 사이클 당 파싱은 일반적으로 우수한 성능을 제공하는데 이는 펑처링이 종종 인코더(210)로부터의 연속적인 코드 비트들을 위해 설계되기 때문이다.
또한 파서(220)는 인코더(210)로부터의 코드 비트들을 한 번에 하나의 코드씩, 파스 사이클 내의 코드 비트들의 특정한 배열에 기초하여 M개의 스트림들에 분배할 수 있다. 예를 들어, 도 6의 프로세스(600)는 스트림 i에 대한 펑처 사이클들의 개수 대신, 펑처링 전의 스트림 i에 대한 코드 비트들의 개수를 나타내는 N i 로써 구현될 수 있다. 그러면 어레이(P)는 M개의 스트림들에 대한 T 펑처 사이클들 내의 Tbit개의 입력 코드 비트들에 대한 Tbit개의 엘리먼트들을 포함할 것이다. 어레이(P)의 각 엘리먼트는 프로세스(600)에 의해 상기 M개의 스트림들 중 하나로 채워진다. 그러면 파서(220)는 인코더(210)로부터의 코드 비트들을 어레이(P)에 주어진 배열에 기초하여 M개의 스트림들에 분배한다.
표 3의 4개의 스트림들과 관련한 예를 들면, 각 스트림에 대한 펑처링 전의 코드 비트들의 개수는 제 4 행에 주어지며, 이는 Nbit ,1=20, Nbit ,2=18, Nbit ,3=16 그리고 Nbit ,4=2 이다. 파스 사이클 당 전체 코드 비트들의 개수는 Tbit=56 이다. 각 스트림 i에 대한 코드 비트들 간의 이상적인 스페이싱은 Δbit,i=Tbit/Nbit ,i로 계산된다. 각 스트림 i에 대한 변수 Dbit , i 는 이상적 스페이싱의 절반, 즉 Dbit ,ibit,i/2로 초기화될 수 있다. 어레이(P)의 Tbit개의 엘리먼트들 각각은, 예컨대 표 4에 제시된 처리와 유사하게, M개의 스트림들 중 하나로써 채워진다. 그러면 어레이(P)는 상기 파스 사이클에 대한 Tbit개의 정렬된 코드 비트들의 시퀀스를 나타낸다. 그리고 나면 파서(220)는 팡기 파스 사이클 내의 첫 번째 코드 비트를 어레이(P)의 첫 번째 엘리먼트가 지시하는 스트림에, 두 번째 코드 비트를 어레이(P)의 두 번째 엘리먼트가 지시하는 스트림에, 등과 같이 제공한다. 코드 비트 당 기반의(펑처 사이클 당 기반 대신) 파싱은 특정 환경 하에서는 우수한 성능을 제공한다(예컨대, 동일한 코드율이 모든 스트림들에 대해 이용된다면).
수신 엔티티(150)는 송신 엔티티(110)에 의해 수행되는 파싱에 상보적인 방법으로 M개의 수신된 스트림들의 재조합(reassembly)를 수행한다. 또한 수신 엔티티(150)에 의한 상기 처리는 송신 엔티티(110)에 의해 수행되는 처리에 의존적이며, 상보적이다.
도 7은 수신 엔티티(150)의 RX 데이터 처리기(160)의 실시예를 나타내는 블록도이다. RX 데이터 처리기(160) 내에서, M개의 스트림 처리기들(710a 내지 710m)은 RX 공간 처리기(156)로부터의 M개의 심볼 스트림들을 제공받는다. 각각의 스트림 처리기(710)는 심볼 디매핑(demapping) 유닛(712), 디인터리버(deinterleaver)(714), 그리고 소거(erasure) 삽입 유닛(716)을 포함한다. 심볼 디매핑 유닛(712)은 검출된 심볼들의 코드 비트들에 대한 로그-우도 비율(log- likelihood ratio, LLR)들 또는 다른 어떠한 표현들을 발생시킨다. 각 코드 비트에 대한 LLR은 일('1') 또는 영('0')인 코드 비트의 우도(likelihood)를 나타낸다. 디인터리버(714)는 송신 엔티티(110)에서 인터리버(234)에 의해 수행되는 인터리빙에 상보적인 방법으로 상기 코드 비트들에 대한 LLR들을 디인터리빙한다. 소거 삽입 유닛(716)은 송신 엔티티(110)의 펑처링 유닛(232)에 의해 펑처링된 코드 비트들에 대한 소거(erasure)를 삽입한다. 소거는 0인 LLR 값이며 영('0') 또는 일('1')인 펑처링된 코드 비트의 우도가 같음을 나타내는데 이는 전송되지 않은, 상기 펑처링된 코드 비트들에 대한 정보가 알려져 있지 않기 때문이다.
재조합 유닛(720)은 M개의 스트림 처리기들(710a 내지 710m)로부터의 출력을 수신하고, 이러한 출력들을 송신 엔티티(110)의 파서(220)에 의해 수행되는 파싱과 상보적인 방법으로 하나의 합성 스트림으로 재조합(reassemble) 또는 다중화(multiplex)하며, 상기 합성 스트림을 디코더(730)에 제공한다. 디코더(730)는 송신 엔티티(110)의 인코더(210)에 의해 수행되는 인코딩에 상보적인 방법으로 상기 합성 스트림 내의 LLR들을 디코딩하여 디코딩된 데이터를 제공한다. 디코더(730)는 인코더(210)가 컨벌루션 인코더라면 비텔비(Viterbi) 디코더를 구현할 수 있다.
명확화를 위해, 상기 파싱 기술들은 레이트 1/2 이진 컨벌루션 코드에 관하여 기술되었다. 또한 이러한 기술들은 터보 코드, LDPC 코드, 블록 코드 등과 같은 다른 다양한 코드들에도 이용될 수 있다.
또한 상기 파싱 기술들은 MIMO 시스템에 관하여 기술되었다. 이러한 기술들 은 다중 전송 채널들을 통해 복수의 스트림들을 전송할 수 있는 다른 통신 시스템들에 이용될 수도 있다. 전송 채널은 MIMO 시스템의 공간 채널, OFDM 시스템의 부대역들 세트, MIMO-OFDM시스템의 부대역들의 세트에 대한 공간 채널, 코드 채널 등일 수 있다.
상기 파싱 기술들은 다양한 수단으로써 구현될 수 있다. 예를 들어, 이러한 기술들은 하드웨어, 소프트웨어, 또는 이들의 조합으로 구현될 수 있다. 하드웨어 구현을 위해, 상기 송신 엔티티에서 파싱을 수행하는데 이용되는 처리 유닛들은 하나 이상의 주문형 반도체(ASIC)들, 디지털 신호 처리기(DSP)들, 디지털 신호 처리 장치(DSPD)들, 프로그래머블 로직 장치(PLD)들, 필더 프로그래머블 게이트 어레이(FPGA)들, 처리기들, 제어기들, 마이크로-제어기들, 마이크로프로세서들, 여기 기술된 기능들을 수행하도록 설계되는 다른 전자 유닛들, 또는 이들의 조합 내에서 구현될 수 있다. 수신 엔티티에서의 상보적인 재조합를 수행하는데 이용되는 처리 유닛들도 하나 이상의 ASIC들, DSP들 등 내부에서 구현될 수 있다.
소프트웨어 구현을 위해, 상기 파싱 기술들은 여기 기술된 기능들을 수행하는 모듈들(예컨대, 프로시저들, 기능들 등등)로써 구현될 수 있다. 상기 소프트웨어 코드들은 메모리 유닛(예컨대, 도 1의 메모리 유닛(132 또는 172))에 저장될 수 있으며 처리기(예컨대 제어기(130 또는 170))에 의해 실행될 수 있다. 상기 메모리 유닛은 상기 처리기 내부 또는 외부에서 구현될 수 있으며, 외부에 구현되는 경우 공지된 다양한 수단을 통해 상기 처리기에 통신상으로 접속될 수 있다.
상기 개시된 실시예들에 대한 상술내용은 임의의 당업자로 하여금 본 발명을 생산 또는 이용하게 하기 위하여 제시된다. 이러한 실시예들에 대하여 다양한 변형들이 당업자에게 용이하게 명백할 것이며, 여기 정의된 일반 원리들은 본 발명의 사상과 범위를 벗어나지 않고도 다른 실시예들에 적용될 수 있다. 따라서, 본 발명은 여기 제시된 실시예들에 제한하고자 하는 것이 아니라 여기 개시된 원리들과 신규한 특징들에 따라서 가장 광범위하게 해석되어야 한다.

Claims (35)

  1. 통신 시스템에서 데이터를 파싱(parse)하는 방법으로서:
    복수의 펑처(puncture) 사이클들을 갖는 각각의 스트림(stream)에 대해, 상기 스트림에 대한 상기 복수의 펑처 사이클들이 펑처 사이클들의 시퀀스에 걸쳐 균일하게 또는 거의 균일하게 분배되도록 복수의 스트림들에 대한 펑처 사이클들의 시퀀스를 형성하는 단계; 및
    상기 펑처 사이클들의 시퀀스에 기초하여 코드 비트(code bit)들을 상기 복수의 스트림들로 파싱하는 단계를 포함하는 데이터 파싱 방법.
  2. 제 1 항에 있어서,
    상기 복수의 스트림들에 이용되는 변조 방식들과 펑처 패턴들에 기초하여 상기 복수의 스트림들 각각에 대한 파스(parse) 사이클 내의 펑처 사이클들의 수를 결정하는 단계를 더 포함하는 데이터 파싱 방법.
  3. 제 1 항에 있어서,
    상기 펑처 사이클들의 시퀀스를 형성하는 단계는
    상기 복수의 스트림들 각각에 대한 펑처 사이클들의 개수에 기초하여 내림 차순으로 상기 복수의 스트림들을 배열하는 단계, 및
    상기 복수의 배열된 스트림들 각각에 대한 하나 이상의 펑처 사이클들을 상 기 펑처 사이클들의 시퀀스에 걸쳐 균일하게 또는 거의 균일하게 분배하는 단계를 포함하는, 데이터 파싱 방법.
  4. 제 3 항에 있어서,
    상기 복수의 배열된 스트림들 각각에 대한 상기 하나 이상의 펑처 사이클들을 분배하는 단계는:
    가장 많은 수의 펑처 사이클들을 갖는 스트림에 대한 펑처 사이클들을 상기 펑처 사이클들의 시퀀스에 걸쳐 균일하게 또는 거의 균일하게 분배하는 단계, 및
    상기 복수의 스트림들 내의 나머지 스트림 각각에 대해,
    상기 스트림에 대한 첫번째 펑처 사이클을 상기 시퀀스 내의 첫 번째 이용가능한 위치 안에 매핑(map)하는 단계,
    상기 스트림에 대하여, 만일 존재한다면, 나머지 펑처 사이클들에 대하여 요구되는 위치들을 결정하는 단계, 및
    만일 존재한다면, 상기 나머지 펑처 사이클들을 상기 요구되는 위치들에 있거나 또는 가장 가까운 시퀀스 내의 이용가능한 위치들로 매핑하는 단계를 포함하는 데이터 파싱 방법.
  5. 제 1 항에 있어서,
    상기 펑처 사이클들의 시퀀스를 형성하는 단계는
    상기 복수의 스트림들 각각에 대한 펑처 사이클들 사이의 스페이싱(spacing) 을 결정하는 단계, 및
    각각의 스트림에 대한 펑처 사이클들 사이의 상기 스페이싱에 기초하여 상기 복수의 스트림들에 대한 복수의 펑처 사이클들을 분배하는 단계를 포함하는 데이터 파싱 방법.
  6. 제 5 항에 있어서,
    상기 복수의 스트림들에 대한 상기 복수의 펑처 사이클들을 분배하는 단계는
    상기 스트림에 대한 상기 스페이싱에 기초하여 각각의 스트림에 대한 변수를 초기화하는 단계, 및
    상기 펑처 사이클들의 시퀀스 내의 각각의 위치에 대해,
    상기 복수의 스트림들 중 상기 변수에 대한 최소값을 갖는 스트림을 식별하는 단계,
    상기 식별된 스트림에 대한 펑처 사이클로써 상기 시퀀스 내의 상기 위치를 채우는 단계, 및
    상기 식별된 스트림에 대한 상기 스페이싱에 기초하여 상기 식별된 스트림에 대한 상기 변수를 갱신하는 단계를 포함하는 데이터 파싱 방법.
  7. 제 1 항에 있어서,
    상기 코드 비트들을 발생시키기 위해 레이트 1/2 컨벌루션 코드(rate 1/2 convolutional code)에 따라 트래픽 데이터를 인코딩하는 단계를 더 포함하는 데이 터 파싱 방법.
  8. 제 1 항에 있어서,
    상기 복수의 스트림들 각각에 대한 모드를 선택하는 단계를 더 포함하며, 각각의 스트림에 대한 상기 모드는 상기 스트림을 위해 이용하는 코드율(code rate) 및 변조 방식을 지시하고, 여기서 상이한 모드들이 상기 복수의 스트림들에 대하여 선택가능한, 데이터 파싱 방법.
  9. 제 1 항에 있어서,
    상기 스트림에 대한 펑처 패턴에 기초하여 각각의 스트림 내의 상기 코드 비트들을 펑처링(puncture)하는 단계를 더 포함하는 데이터 파싱 방법.
  10. 제 1 항에 있어서,
    복수의 공간 채널(spatial channel)들을 통한 전송을 위해 상기 복수의 스트림들을 처리하는 단계를 더 포함하는 데이터 파싱 방법.
  11. 복수의 펑처 사이클들을 갖는 각각의 스트림에 대해, 상기 스트림에 대한 상기 복수의 펑처 사이클들이 펑처 사이클들의 시퀀스에 걸쳐 균일하게 또는 거의 균일하게 분배되도록 복수의 스트림들에 대한 상기 펑처 사이클들의 시퀀스를 형성하도록 동작하는 제어기; 및
    상기 펑처 사이클들의 시퀀스에 기초하여 코드 비트들을 상기 복수의 스트림들로 파싱하도록 동작하는 파서(parser)를 포함하는, 통신 시스템 내의 장치.
  12. 제 11 항에 있어서,
    상기 제어기는 각각의 스트림에 대한 펑처 사이클들의 수에 기초하여 내림차순으로 상기 복수의 스트림들을 배렬하고, 그리고 각각의 스트림에 대한 하나 이상의 펑처 사이클들을 상기 펑처 사이클들의 시퀀스에 걸쳐 균일하게 또는 거의 균일하게 분배하도록 추가로 동작하는, 통신 시스템 내의 장치.
  13. 제 11 항에 있어서,
    상기 제어기는 상기 복수의 스트림들 각각에 대한 펑처 사이클들 간의 스페이싱을 결정하고, 그리고 각각의 스트림에 대한 펑처 사이클들 사이의 상기 스페이싱에 기초하여 상기 복수의 스트림들에 대한 복수의 펑처 사이클들을 분배하도록 추가로 동작하는, 통신 시스템 내의 장치.
  14. 제 11 항에 있어서,
    상기 코드 비트들을 발생시키기 위해 트래픽 데이터를 인코딩하도록 동작하는 인코더를 더 포함하는, 통신 시스템 내의 장치.
  15. 제 11 항에 있어서,
    상기 제어기는 상기 복수의 스트림들 각각에 대한 모드를 선택하도록 동작하고, 각각의 스트림에 대한 상기 모드는 상기 스트림에 이용하는 코드율 및 변조 방식을 지시하며, 여기서 상이한 모드들이 상기 복수의 스트림들에 대해 선택가능한, 통신 시스템 내의 장치.
  16. 복수의 펑처 사이클들을 갖는 각각의 스트림에 대해, 상기 스트림에 대한 상기 복수의 펑처 사이클들이 펑처 사이클들의 시퀀스에 걸쳐 균일하게 또는 거의 균일하게 분배되도록 복수의 스트림들에 대한 상기 펑처 사이클들의 시퀀스를 형성하기 위한 수단; 및
    상기 펑처 사이클들의 시퀀스에 기초하여 코드 비트들을 상기 복수의 스트림들로 파싱하기 위한 수단을 포함하는, 통신 시스템 내의 장치.
  17. 제 16 항에 있어서,
    상기 펑처 사이클들의 시퀀스를 형성하기 위한 수단은
    상기 복수의 스트림들 각각에 대한 펑처 사이클들의 수에 기초하여 내림 차순으로 상기 복수의 스트림들을 배열하기 위한 수단, 및
    상기 복수의 배열된 스트림들 각각에 대한 하나 이상의 펑처 사이클들을 상기 펑처 사이클들의 시퀀스에 걸쳐 균일하게 또는 거의 균일하게 분배하기 위한 수단을 포함하는, 통신 시스템 내의 장치.
  18. 제 16 항에 있어서,
    상기 펑처 사이클들의 시퀀스를 형성하기 위한 상기 수단은
    상기 복수의 스트림들 각각에 대한 펑처 사이클들 사이의 스페이싱을 결정하기 위한 수단, 및
    각각의 스트림에 대한 펑처 사이클들 사이의 상기 스페이싱에 기초하여 상기 복수의 스트림들에 대한 복수의 펑처 사이클들을 분배하기 위한 수단을 포함하는, 통신 시스템 내의 장치.
  19. 제 16 항에 있어서,
    상기 코드 비트들을 발생시키기 위해 트래픽 데이터를 인코딩하기 위한 수단을 더 포함하는, 통신 시스템 내의 장치.
  20. 제 16 항에 있어서,
    상기 복수의 스트림들 각각에 대한 모드를 선택하기 위한 수단을 더 포함하며, 각각의 스트림에 대한 상기 모드는 상기 스트림에 이용하는 코드율 및 변조 방식을 지시하고, 여기서 상이한 모드들이 상기 복수의 스트림들에 대해 선택가능한, 통신 시스템 내의 장치.
  21. 코드 비트들을 복수의 스트림들로 파싱하기 위한 순서(order)를 지시하는 파싱 시퀀스를 형성하는 단계; 및
    상기 파싱 시퀀스에 기초하여 상기 코드 비트들을 상기 복수의 스트림들로 파싱하는 단계를 포함하며, 상기 파싱 시퀀스는 코딩 성능(coding performance)에 기초하여 각각의 스트림에 대한 코드 비트들의 가장 짧은 가능한 런(run)들을 달성하고 추가로 각각의 스트림에 대한 코드 비트들의 상기 가장 짧은 런들을 상기 복수의 스트림들에 걸쳐 균일하게 또는 거의 균일하게 분배하도록 형성되는, 통신 시스템 내의 데이터 파싱 방법.
  22. 제 21 항에 있어서,
    각각의 스트림에 대한 펑처 패턴을 결정하는 단계; 및
    상기 각각의 스트림에 대한 상기 펑처 패턴 내의 출력 코드 비트들의 수에 기초하여 각각의 스트림에 대한 코드 비트들의 가장 짧은 가능한 런들을 결정하는 단계를 더 포함하는, 통신 시스템 내의 데이터 파싱 방법.
  23. 제 21 항에 있어서,
    각각의 스트림에 대한 코드 비트들의 상기 가장 짧은 런들은 1 코드 비트에 대한, 통신 시스템 내의 데이터 파싱 방법.
  24. 복수의 펑처 사이클들을 갖는 각각의 스트림에 대해, 상기 스트림에 대한 상기 복수의 펑처 사이클들이 펑처 사이클들의 시퀀스에 걸쳐 균일하게 또는 거의 균일하게 분배되도록, 상기 복수의 스트림들에 대한 펑처 사이클들의 시퀀스를 형성 하는 단계; 및
    심볼들의 출력 스트림을 형성하기 위해 상기 펑처 사이클들의 시퀀스에 기초하여 복수의 입력 스트림들 내의 심볼들을 재조합(reassemble)하는 단계를 포함하는, 통신 시스템 내의 데이터 재조합 방법.
  25. 제 24 항에 있어서,
    상기 펑처 사이클들의 시퀀스를 형성하는 단계는
    상기 복수의 스트림들 각각에 대한 펑처 사이클들의 수에 기초하여 내림 차순으로 상기 복수의 스트림들을 배열하는 단계, 및
    상기 복수의 배열된 스트림들 각각에 대한 하나 이상의 펑처 사이클들을 상기 펑처 사이클들의 시퀀스에 걸쳐 균일하게 또는 거의 균일하게 분배하는 단계를 포함하는, 통신 시스템 내의 데이터 재조합 방법.
  26. 제 24 항에 있어서,
    상기 펑처 사이클들의 시퀀스를 형성하는 단계는
    상기 복수의 스트림들 각각에 대한 펑처 사이클들 간의 스페이싱을 결정하는 단계, 및
    각각의 스트림에 대한 펑처 사이클들 간의 상기 스페이싱에 기초하여 상기 복수의 스트림들에 대한 복수의 펑처 사이클들을 분배하는 단계를 포함하는, 통신 시스템 내의 데이터 재조합 방법.
  27. 제 24 항에 있어서,
    상기 입력 스트림에 대한 펑처 패턴에 기초하여 각각의 입력 스트림 내에 소거(erasure)들을 삽입하는 단계를 더 포함하는, 통신 시스템 내의 데이터 재조합 방법.
  28. 제 24 항에 있어서,
    디코딩된 데이터를 얻기 위해 컨벌루션 코드(convolutional code)에 따라 상기 심볼들의 출력 스트림을 디코딩하는 단계를 더 포함하는, 통신 시스템 내의 데이터 재조합 방법.
  29. 복수의 펑처 사이클들을 갖는 각각의 스트림에 대해, 상기 스트림에 대한 상기 복수의 펑처 사이클들이 펑처 사이클들의 시퀀스에 걸쳐 균일하게 또는 거의 균일하게 분배되도록, 복수의 스트림들에 대한 펑처 사이클들의 시퀀스를 형성하도록 동작하는 제어기; 및
    심볼들의 출력 스트림을 형성하기 위해 상기 펑처 사이클들의 시퀀스에 기초하여 복수의 입력 스트림들 내의 심볼들을 재조합하도록 동작하는 재조합 유닛(reassembly unit)을 포함하는, 통신 시스템 내의 장치.
  30. 제 29 항에 있어서,
    상기 제어기는 각각의 스트림에 대한 펑처 사이클들의 수에 기초하여 내림 차순으로 상기 복수의 스트림들을 배열하고, 각각의 스트림에 대한 하나 이상의 사이클들을 상기 펑처 사이클들의 시퀀스에 걸쳐 균일하게 또는 거의 균일하게 분배하도록 동작하는, 통신 시스템 내의 장치.
  31. 제 29 항에 있어서,
    상기 제어기는 상기 복수의 스트림들 각각에 대한 펑처 사이클들 사이의 스페이싱을 결정하고, 각각의 스트림에 대한 펑처 사이클들 사이의 상기 스페이싱에 기초하여 상기 복수의 스트림들에 대한 복수의 펑처 사이클들을 분배하도록 동작하는, 통신 시스템 내의 장치.
  32. 제 29 항에 있어서,
    상기 입력 스트림에 대한 펑처 패턴에 기초하여 각각의 입력 스트림 내에 소거들을 삽입하도록 동작하는 적어도 하나의 소거 삽입 유닛(erasure insertion unit)을 더 포함하는, 통신 시스템 내의 장치.
  33. 복수의 펑처 사이클들을 갖는 각각의 스트림에 대해, 상기 스트림에 대한 상기 복수의 펑처 사이클들이 펑처 사이클들의 시퀀스에 걸쳐 균일하게 또는 거의 균일하게 분배되도록, 복수의 스트림들에 대한 상기 펑처 사이클들의 시퀀스를 형성하기 위한 수단; 및
    심볼들의 출력 스트림을 형성하기 위해 상기 펑처 사이클들의 시퀀스에 기초하여 복수의 입력 스트림들 내의 심볼들을 재조합하기 위한 수단을 포함하는, 통신 시스템 내의 장치.
  34. 제 33 항에 있어서,
    상기 입력 스트림에 대한 펑처 패턴에 기초하여 각각의 입력 스트림 내에 소거들을 삽입하기 위한 수단을 더 포함하는, 통신 시스템 내의 장치.
  35. 제 33 항에 있어서,
    디코딩된 데이터를 얻기 위해 레이트 1/2 컨벌루션 코드에 따라 상기 심볼들의 출력 스트림을 디코딩하기 위한 수단을 더 포함하는, 통신 시스템 내의 장치.
KR1020077019196A 2005-01-24 2006-01-24 통신 시스템에서 복수의 데이터 스트림들을 위한 파서 및펑처링 KR100933375B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/042,921 2005-01-24
US11/042,921 US7953047B2 (en) 2005-01-24 2005-01-24 Parser for multiple data streams in a communication system
PCT/US2006/002498 WO2006079081A1 (en) 2005-01-24 2006-01-24 Parser and puncturing for multiple data streams in a communication system

Publications (2)

Publication Number Publication Date
KR20070104620A true KR20070104620A (ko) 2007-10-26
KR100933375B1 KR100933375B1 (ko) 2009-12-22

Family

ID=36392700

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020077019196A KR100933375B1 (ko) 2005-01-24 2006-01-24 통신 시스템에서 복수의 데이터 스트림들을 위한 파서 및펑처링

Country Status (17)

Country Link
US (1) US7953047B2 (ko)
EP (2) EP1842310B1 (ko)
JP (1) JP4787272B2 (ko)
KR (1) KR100933375B1 (ko)
CN (1) CN101129012B (ko)
AR (1) AR052094A1 (ko)
AT (1) ATE521151T1 (ko)
AU (1) AU2006206148B2 (ko)
BR (1) BRPI0607375A2 (ko)
CA (1) CA2595888C (ko)
IL (1) IL184820A (ko)
MX (1) MX2007008978A (ko)
MY (1) MY145230A (ko)
RU (1) RU2392747C2 (ko)
TW (1) TW200644484A (ko)
UA (1) UA89217C2 (ko)
WO (1) WO2006079081A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2051530A2 (en) 2007-10-17 2009-04-22 Electronics and Telecommunications Research Institute Video encoding apparatus and method using pipeline technique with variable time slot

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7599281B1 (en) * 2004-02-17 2009-10-06 Qualcomm Incorporated Low rate MIMO
US7613243B2 (en) 2005-04-12 2009-11-03 Samsung Electronics Co., Ltd. Interleaver and parser for OFDM MIMO systems
US20070025463A1 (en) * 2005-07-29 2007-02-01 Aldana Carlos H Bit parser for interleaver in transmitter with multiple transmit antennas
US20070110180A1 (en) * 2005-11-11 2007-05-17 Broadcom Corporation, A California Corporation Configurable bit interleaving
US8155229B2 (en) * 2005-11-22 2012-04-10 Samsung Electronics Co., Ltd. Apparatus and method for transmitting/receiving a signal in a communication system
US7729438B2 (en) 2005-12-01 2010-06-01 Samsung Electronics Co., Ltd. Interleaver design for IEEE 802.11n standard
US7756004B2 (en) * 2005-12-20 2010-07-13 Samsung Electronics Co., Ltd. Interleaver design with column swap and bit circulation for multiple convolutional encoder MIMO OFDM system
US7660232B2 (en) * 2005-12-20 2010-02-09 Samsung Electronics Co., Ltd. Interleaver design with column skip for IEEE 802.11n standard
US7859987B2 (en) * 2005-12-20 2010-12-28 Samsung Electronic Co., Ltd. Interleaver for IEEE 802.11n standard
US7729447B2 (en) * 2005-12-22 2010-06-01 Samsung Electronics Co., Ltd. Interleaver design with multiple encoders for more than two transmit antennas in high throughput WLAN communication systems
JP4966141B2 (ja) * 2007-09-14 2012-07-04 パナソニック株式会社 情報伝送システム、および情報伝送方法
KR101502623B1 (ko) 2008-02-11 2015-03-16 삼성전자주식회사 저밀도 패리티 검사 부호를 사용하는 통신 시스템에서 채널부호/복호 방법 및 장치
PL2091156T3 (pl) 2008-02-18 2014-01-31 Samsung Electronics Co Ltd Urządzenie i sposób do kodowania i dekodowania kanału w systemie komunikacyjnym z wykorzystaniem kodów kontroli bitów parzystości o niskiej gęstości
SI2091156T1 (sl) * 2008-02-18 2013-12-31 Samsung Electronics Co., Ltd. Aparat in postopek za kodiranje in dekodiranje kanala v komunikacijskem sistemu z uporabo paritetnih kod z nizko gostoto
KR101503059B1 (ko) 2008-02-26 2015-03-19 삼성전자주식회사 저밀도 패리티 검사 부호를 사용하는 통신 시스템에서 채널 부호/복호 방법 및 장치
KR101503058B1 (ko) 2008-02-26 2015-03-18 삼성전자주식회사 저밀도 패리티 검사 부호를 사용하는 통신 시스템에서의 채널 부호화/복호화 방법 및 장치
US8548073B2 (en) 2008-03-14 2013-10-01 Qualcomm Incorporated Method, apparatus and system for using guard tones in OFDM systems for increasing data rates and improving robustness
US8266094B2 (en) * 2008-06-13 2012-09-11 Electronics And Telecommunications Research Institute Apparatus and method for parsing of extensible media
JP5149130B2 (ja) * 2008-11-20 2013-02-20 日本放送協会 Mimo送信装置、受信装置およびシステム
KR101922555B1 (ko) * 2011-08-30 2018-11-28 삼성전자주식회사 방송/통신시스템에서 정보 송수신 방법 및 장치
KR102091888B1 (ko) 2013-02-08 2020-04-14 소니 주식회사 데이터 처리 장치, 및 데이터 처리 방법
JPWO2014123016A1 (ja) * 2013-02-08 2017-02-02 サターン ライセンシング エルエルシーSaturn Licensing LLC データ処理装置、及びデータ処理方法
JPWO2014123015A1 (ja) * 2013-02-08 2017-02-02 サターン ライセンシング エルエルシーSaturn Licensing LLC データ処理装置、及びデータ処理方法
CA2881540C (en) * 2014-02-13 2017-08-01 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
KR102323765B1 (ko) * 2014-02-13 2021-11-11 한국전자통신연구원 부호율이 3/15인 ldpc 부호어를 위한 비균등 16-심볼 신호성상을 이용한 변조기 및 이를 이용한 변조 방법
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

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NL9201668A (nl) 1992-09-25 1994-04-18 Nederland Ptt Methode voor het converteren van een pollingfrequentietabel in een polling-volgordetabel.
JPH07221768A (ja) 1994-02-08 1995-08-18 Oki Electric Ind Co Ltd セル多重方法、セル多重装置及び交換スイッチ
RU2104583C1 (ru) 1994-09-20 1998-02-10 Денис Константинович Рунов Способ анализа грамматических конструкций
US5668820A (en) * 1995-01-23 1997-09-16 Ericsson Inc. Digital communication system having a punctured convolutional coding system and method
US5970049A (en) 1997-03-27 1999-10-19 Lucent Technologies Inc. Apparatus and method for template-based scheduling processes using regularity measures
US6131180A (en) * 1997-11-03 2000-10-10 Ericsson, Inc. Trellis coded modulation system
US5909454A (en) * 1998-01-20 1999-06-01 General Instrument Corporation Intermediate rate applications of punctured convolutional codes for 8PSK trellis modulation over satellite channels
JP2000004215A (ja) * 1998-06-16 2000-01-07 Matsushita Electric Ind Co Ltd 送受信システム
US6247158B1 (en) * 1998-11-30 2001-06-12 Itt Manufacturing Enterprises, Inc. Digital broadcasting system and method
US6804211B1 (en) * 1999-08-03 2004-10-12 Wi-Lan Inc. Frame structure for an adaptive modulation wireless communication system
US20010034782A1 (en) 2000-01-14 2001-10-25 Ian Kinkade Efficient web based proxy message method and apparatus for message queuing middleware resident on a server computer
US7173978B2 (en) * 2000-07-21 2007-02-06 Song Zhang Method and system for turbo encoding in ADSL
US6981202B2 (en) 2001-01-08 2005-12-27 Nokia Corporation Method and system for allocating convolutional encoded bits into symbols before modulation for wireless communication
CN1276588C (zh) 2001-02-07 2006-09-20 三星电子株式会社 在通信系统中生成代码的设备和方法
US7768978B2 (en) 2001-11-08 2010-08-03 Mitsubishi Denki Kabushiki Kaisha Wireless communication method and mobile terminal used therefor
JP3629241B2 (ja) 2002-01-30 2005-03-16 松下電器産業株式会社 レートマッチング装置及びレートマッチング方法
US6996114B2 (en) * 2002-10-25 2006-02-07 Nokia Corporation Method for rate matching to support incremental redundancy with flexible layer one
KR100526511B1 (ko) 2003-01-23 2005-11-08 삼성전자주식회사 시공간 트렐리스 코드를 사용하는 이동 통신 시스템에서파일럿 시퀀스 송수신 장치 및 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2051530A2 (en) 2007-10-17 2009-04-22 Electronics and Telecommunications Research Institute Video encoding apparatus and method using pipeline technique with variable time slot

Also Published As

Publication number Publication date
BRPI0607375A2 (pt) 2009-09-01
IL184820A (en) 2012-02-29
CN101129012A (zh) 2008-02-20
US7953047B2 (en) 2011-05-31
EP2259473A3 (en) 2012-07-18
MY145230A (en) 2012-01-13
IL184820A0 (en) 2007-12-03
UA89217C2 (ru) 2010-01-11
EP2259473B1 (en) 2014-10-15
AU2006206148B2 (en) 2010-09-16
EP1842310A1 (en) 2007-10-10
EP2259473A2 (en) 2010-12-08
ATE521151T1 (de) 2011-09-15
AU2006206148A1 (en) 2006-07-27
CN101129012B (zh) 2013-11-27
MX2007008978A (es) 2007-10-10
RU2007132009A (ru) 2009-02-27
US20060187815A1 (en) 2006-08-24
TW200644484A (en) 2006-12-16
JP4787272B2 (ja) 2011-10-05
KR100933375B1 (ko) 2009-12-22
AR052094A1 (es) 2007-02-28
JP2008529363A (ja) 2008-07-31
RU2392747C2 (ru) 2010-06-20
EP1842310B1 (en) 2011-08-17
WO2006079081A1 (en) 2006-07-27
CA2595888A1 (en) 2006-07-27
CA2595888C (en) 2012-11-06

Similar Documents

Publication Publication Date Title
KR100933375B1 (ko) 통신 시스템에서 복수의 데이터 스트림들을 위한 파서 및펑처링
CN1333541C (zh) 无线通信系统的编码方案
KR101299386B1 (ko) 개선된 다중 입력 다중 출력 인터리빙 방법 및 인터리버 시스템
CN104702376B (zh) 用于wlan发送的方法和装置
US9680616B2 (en) Tone reordering in a wireless communication system
AU2004303128B2 (en) Incremental redundancy transmission in a MIMO communication system
CN106160754B (zh) 交织方法和解交织方法
JP2004535694A5 (ko)
CN110199490B (zh) 一种概率成形操作的方法和装置
US20020101915A1 (en) Method and system for turbo encoding in ADSL
US8873652B2 (en) Parsing and encoding methods in a communication system
US20020150167A1 (en) Methods and apparatus for configurable or assymetric forward error correction
JP2003244257A (ja) 多値変調に適した符号語マッピング方法
CN101785222A (zh) 用于对无线通信系统进行多层成形的系统、方法和计算机可读介质
EP2880830A1 (en) Encoding parameters for a wireless communication system
EP2612460B1 (en) Optimum interleaver design for a communication system
KR20120025358A (ko) 선형 블록 부호를 사용하는 통신 시스템에서 데이터 송수신 장치 및 방법
Wang et al. Bandwidth efficient turbo trellis-coded unitary space-time modulation for non-coherent multiple-antenna Rayleigh fading channel

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: 20121129

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20131129

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20141128

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20150930

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20161125

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20170929

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20180928

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20190924

Year of fee payment: 11