KR20110009232A - 프루닝된 비트-리버설 인터리버 - Google Patents

프루닝된 비트-리버설 인터리버 Download PDF

Info

Publication number
KR20110009232A
KR20110009232A KR1020107028017A KR20107028017A KR20110009232A KR 20110009232 A KR20110009232 A KR 20110009232A KR 1020107028017 A KR1020107028017 A KR 1020107028017A KR 20107028017 A KR20107028017 A KR 20107028017A KR 20110009232 A KR20110009232 A KR 20110009232A
Authority
KR
South Korea
Prior art keywords
bits
sequence
size
bit
interleaved
Prior art date
Application number
KR1020107028017A
Other languages
English (en)
Inventor
라비 팔란키
아모드 칸데카
Original Assignee
퀄컴 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 퀄컴 인코포레이티드 filed Critical 퀄컴 인코포레이티드
Publication of KR20110009232A publication Critical patent/KR20110009232A/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/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2789Interleaver providing variable interleaving, e.g. variable block sizes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2757Interleaver with an interleaving rule not provided for in the subgroups H03M13/2703 - H03M13/2753
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/276Interleaving address generation

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

프루닝된 비트-리버설 인터리버는 상이한 패킷 사이즈들 및 가변 코드 레이트들을 지원하고, 양호한 스프레딩 및 펑쳐링 특성들을 제공한다. 데이터를 인터리빙하기 위해, 제 1 사이즈의 입력 데이터의 패킷이 수신된다. 이 패킷은, 예를 들어, 패딩을 부가하거나 라이팅 어드레스들을 적절히 생성함으로써, 2 의 제곱승의 제 2 사이즈로 확장된다. 이 확장된 패킷은, 확장된 패킷을 그들의 표시자에 기초하여 리오더링하는, 제 2 사이즈의 비트-리버설 인터리버에 따라 인터리빙된다. 인터리빙된 데이터의 패킷은, 예를 들어, 패딩을 제거하거나 리딩 어드레스들을 적절히 생성함으로써 비트-리버설 인터리버의 출력을 프루닝함으로써 형성된다. 프루닝된 비트-리버설 인터리버는, 터보 코드, 컨볼루셔널 코드, 또는 LDPC (low density parity check) 코드와 같은 다양한 타입의 FEC 코드들과 함께 이용될 수도 있다.

Description

프루닝된 비트-리버설 인터리버{PRUNED BIT-REVERSAL INTERLEAVER}
본 발명은 일반적으로 통신에 관한 것이고, 더욱 구체적으로는, 통신 시스템에서 데이터를 인터리빙하는 기술에 관한 것이다.
통신 시스템에서, 송신기는 통상적으로 트래픽 데이터 패킷을 인코딩하여 코드 비트들의 패킷을 생성하고, 그 코드 비트들을 인터리빙 또는 리오더링하고, 그 인터리빙된 비트들을 변조하여 변조 심볼들을 생성한다. 그 다음, 송신기는 그 변조된 심볼들을 처리하여 통신 채널을 통해 송신한다. 데이터 송신은 열잡음, 간섭, 스푸리어스 신호 (spurious signal) 등과 같은 통신 채널에서의 감손에 의해 열화된다. 수신기는 송신된 변조 심볼들의 왜곡된 버전을 획득한다.
인코딩과 인터리빙은 수신된 심볼들의 열화가 존재하는 송신된 트래픽 데이터를 수신기가 복구할 수 있도록 한다. 인코딩은, 수신기가 수신된 트래픽 데이터의 에러들을 검출할 수 있도록 하는 에러 검출 코딩, 및/또는, 수신기가 수신된 트래픽 데이터의 에러들을 정정할 수 있도록 하는 FEC (forward error correction) 코딩을 포함한다. FEC 코딩은 코딩된 패킷에 리던던시를 생성한다. 이 리던던시는, 송신 동안 약간의 에러가 발생하더라도 수신기가 이 송신된 트래픽 데이터를 복구할 수 있도록 한다. 인터리빙은, 서로 가까운 코드 비트들이 송신 동안 시간, 주파수, 및/또는 공간으로 분리되도록 패킷의 코드 비트들을 리오더링하거나 셔플 (shuffle) 한다. 송신 동안 에러들의 버스트가 발생하면, 이들 에러들은 수신기에서 디-인터리빙 후에 떨어져 흩어지게 되어, 디코딩 성능을 향상시킨다.
인터리버는 종종 특정 사이즈의 패킷들에 대해 양호한 성능을 달성하도록 설계된다. (여기서, "사이즈" 와 "길이" 라는 용어는 동의어이고, 서로 바꾸어 사용될 수 있다.) 통신 시스템이 다중 패킷 사이즈들을 지원한다면, 각각의 패킷 사이즈에 대해 종종 상이한 인터리버가 설계되고 사용된다. 상이한 패킷 사이즈들에 대한 다중 인터리버들의 사용은, 특히 시스템이 넓은 범위의 패킷 사이즈들을 지원하면, 송신기에서의 인터리빙 및 수신기에서의 디-인터리빙을 복잡하게 만들 수 있다.
따라서, 상이한 사이즈들의 패킷들에 대한 인터리빙을 효율적으로 수행할 수 있는 기술들이 당해 기술분야에서 필요하다.
상이한 사이즈들의 패킷들에 대한 인터리빙을 효율적으로 수행할 수 있는 기술들을 제공하는 것이 목적이다.
프루닝된 비트-리버설 인터리버 (pruned bit-reversal interleaver) 를 이용한, 상이한 사이즈들의 패킷들에 대한 인터리빙 기술들이 여기에 개시된다. 비트-리버설 인터리버는 Nbr 입력 비트들의 패킷을 받아서, 이들 비트들을 그들의 인덱스들에 기초하여, 입력 패킷의 인덱스 i 에서의 비트가 인터리빙된 패킷의 인덱스 j 에 위치되도록 (여기서 j 는 i 의 비트-리버스된 값) 리오더링한다. 비트-리버설 인터리버는 2 의 제곱승 (powers of two) 의 패킷 사이즈들에 대해 작용한다. 프루닝된 비트-리버설 인터리버는 N 개의 입력 비트들의 패킷을 받아서 이들 비트들을 그들의 표시자에 기초하여, 비트-리버설 인터리버와 유사하게 리오더링한다. 그러나, N 은 임의의 값일 수도 있고, 2 의 제곱승에 한정되지 않는다. 프루닝된 비트-리버설 인터리버는 상이한 패킷 사이즈들 및 가변 코드 레이트들을 지원하고, 양호한 스프레딩 및 펑쳐링 (puncturing) 특성을 제공하여, 전술한 바와 같은 디코딩 성능을 향상시킬 수 있다.
인터리빙 데이터에 대한 일 실시형태에서, 제 1 사이즈의 입력 데이터의 패킷이 수신된다. 이 패킷은, 예를 들어, 패킷에 패딩을 부가하거나 패킷을 메모리에 라이팅하기 위한 어드레스들을 적절하게 생성함으로써, 2 의 제곱승의 제 2 사이즈로 확장된다. 확장된 패킷은 제 2 사이즈의 비트-리버설 인터리버에 따라 인터리빙된다. 그 다음, 예를 들어 패딩을 제거하거나 패킷을 메모리로부터 리딩하기 위한 어드레스들을 적절하게 생성함으로써, 비트-리버설 인터리버의 출력을 프루닝함으로써, 인터리빙된 데이터의 패킷이 형성된다.
프루닝된 비트-리버설 인터리버는, 터보 코드, 컨볼루셔널 코드, 저밀도 패리티 체크 코드 (LDPC) 등과 같은 다양한 타입의 FEC 코드들과 함께 사용될 수도 있다. 프루닝된 인터리빙 기술들은, 예를 들어, LCS (linear congruential sequence) 인터리버, 의사-랜덤 인터리버 등과 같은 다른 타입들의 인터리버로도 확장될 수도 있다. 이들 다른 타입들의 인터리버에 대해서, 인터리버 사이즈는 2 의 제곱승일 수도 있고 아닐 수도 있다.
이하, 본 발명의 다양한 양태 및 실시형태들을 설명한다.
상이한 사이즈들의 패킷들에 대한 인터리빙을 효율적으로 수행할 수 있는 기술들을 제공할 수 있다.
본 발명의 특징들 및 성질은 도면과 함께 설명된 상세한 설명을 통해 더욱 분명해질 것이며, 도면에서 동일 부호는 전체에 걸쳐 동일 구성요소를 나타낸다.
도 1 은 송신기의 블록도를 나타낸다.
도 2 는 수신기의 블록도를 나타낸다.
도 3 은 4-비트 리버설 인터리버의 동작을 나타낸다.
도 4 는 4-비트 프루닝된 리버설 인터리버의 동작을 나타낸다.
도 5 는 프루닝된 비트-리버설 인터리빙을 수행하는 프로세스를 나타낸다.
도 6 은 채널 인터리버의 블록도를 나타낸다.
도 7 은 프루닝된 비트-리버설 인터리버를 이용한 터보 인코더를 나타낸다.
도 8 은 프루닝된 비트-리버설 인터리버를 이용한 컨볼루셔널 인코더를 나타낸다.
도 9 는 프루닝된 비트-리버설 인터리버를 이용한 LDPC 인코더를 나타낸다.
"예시적" 이라는 표현은 여기서 "예, 예증, 또는 실례로서 기능하는" 의 의미로 사용된다. 여기에 설명된 임의의 실시형태 또는 디자인은 다른 실시형태들 또는 디자인들에 비해 더 바람직하거나 장점을 가진 것으로 해석될 필요는 없다.
통신 시스템은, 음성, 패킷 데이터 등과 같은 다양한 통신 서비스들을 제공하기 위해 폭넓게 활용된다. 이들 시스템은 가용 시스템 자원들을 나눔으로써 다중 이용자들이 동시에 통신할 수 있도록 지원할 수 있는 시간, 주파수, 및/또는 코드 분할 다중-액세스 시스템들일 수도 있다. 이러한 다중-액세스 시스템들의 예로서는, CDMA (Code Division Multiple Access) 시스템, MC-CDMA (Multiple-Carrier CDMA), W-CDMA (Wideband CDMA), HSDPA (High-Speed Downlink Packet Access), TDMA (Time Division Multiple Access) 시스템, FDMA (Frequency Division Multiple Access) 시스템, 및 OFDMA (Orthogonal frequency Division Multiple Access) 시스템 등을 들 수 있다.
도 1 은 무선 통신 시스템의 송신기 (110) 의 일 실시형태의 블록도를 나타낸다. 송신기 (110) 에서, 프레이밍 유닛 (114) 은 데이터 소스 (112) 로부터 트래픽 데이터 (또는 정보 비트들) 를 수신하고, 정보 비트들의 패킷을 형성하고, 그 각각의 정보 패킷을 포맷하여 대응하는 데이터 패킷을 생성한다. 각각의 패킷에 대한 포맷은, 예를 들어, (1) 정보 비트들에 대해 CRC (cyclic redundancy check) 값을 생성하고, (2) 정보 비트들에 대해 CRC 값, 헤더, 패딩, 테일 비트들 등을 부가하고, (3) 모든 비트들을 스크램블링 코드로 스크램블링하여 데이터 패킷을 생성하는 것을 포함할 수도 있다. 인코더 (116) 는 각각의 데이터 패킷을 코딩 방식 (coding scheme) 에 따라 인코딩하고, 대응하는 코딩된 패킷을 제공한다. 코딩 방식으로는, 터보 코드, 컨볼루셔널 코드, LDPC 코드, IRA (irregular repeat-accumulate) 코드 (이는 LDPC 코드의 분류로 간주될 수도 있다), 블록 코드, 일부 다른 FEC 코드, 또는 이들의 조합 등을 포함할 수도 있다. 인코딩은 코딩된 패킷에 리던던시를 생성하고, 이는 데이터 송신의 신뢰도를 증가시킨다.
채널 인터리버 (118) 는 인터리빙 방식에 기초하여 각각의 코딩된 패킷에 코드 비트들을 인터리빙 (즉, 리오더링 또는 셔플) 하고, 대응하는 인터리빙된 패킷을 제공한다. 인터리빙은 코딩된 패킷에 대해 시간, 주파수, 및/또는 공간 다이버시티를 제공하고, 이하 설명되는 바와 같이 수행될 수도 있다. 펑쳐링 유닛 (120) 은 각각의 인터리빙된 패킷에서 제로 또는 그 이상의 비트들을 펑쳐링 (즉, 삭제) 하여 패킷에 대해 원하는 수의 비트들을 획득한다. 인코더 (116) 는, 패킷에서 ND 데이터 비트들에 대해 NC 코드 비트들을 생성하는 베이스 코드를 구현할 수도 있다 (여기서, ND ≥1 이고, NC 는 ND 및 베이스 코드의 코드 레이트에 의존한다). 예를 들어, 베이스 코드가 Rbase = 1/5 의 레이트를 갖는다면, 인코더 (116) 는 각각의 데이터 비트에 대해 5 개의 코드 비트들을 생성하고, NC = 5ND 이다. NT 코드 비트들이 NT < NC 인 패킷에 대해 송신된다면, 펑쳐링 유닛 (120) 은 NC-NT 코드 비트들을 삭제하고, 패킷에 대해 나머지 NT 코드 비트들을 제공한다. 그러면, 패킷에 대한 실제 코드 레이트는 R = ND/NT 이고, 이는 베이스 코드 레이트 Rbase = 1/5 보다 더 높다. 펑쳐링 유닛 (120) 은 각각의 인터리빙된 패킷의 펑쳐링되지 않은 비트들을 포함하는 출력 패킷을 제공한다.
심볼 맵퍼 (symbol mapper; 122)는 변조 방식에 따라 각각의 출력 패킷의 비트들을 매핑한다. 심볼 매핑은, (1) B 비트들의 셋트들을 B-비트 바이너리 값들로 그룹핑하고 (여기서 B ≥ 1), (2) 각각의 B-비트 바이너리 값을 선택된 변조 방식에 대한 신호 무리의 포인트로 매핑함으로써 달성될 수도 있다. 각각의 변조 심볼은 B 비트들의 셋트에 대해 매핑된 신호 포인트에 대응하는 복소값이다. 심볼 맵퍼 (122) 는 각각의 출력 패킷에 대해 변조 심볼들의 패킷을 제공한다.
송신기 유닛 (TMTR) (124) 은 시스템의 설계에 따라 변조 심볼들을 처리하고, 데이터 샘플들을 생성한다. 예를 들어, 송신기 유닛 (124) 은 OFDM (orthogonal frequency division multiplexing) 변조, 스펙트럼 확산 등을 수행할 수도 있다. 송신기 유닛 (124) 은 데이터 샘플들을 추가적으로 컨디셔닝 (예를 들어, 아날로그 변환, 필터링, 증폭, 및 주파수 상향변환 등) 하여 변조된 신호를 생성하여, 이것은 안테나 (126) 를 통해 송신된다.
컨트롤러 (130) 는 송신기 (110) 에서의 다양한 프로세싱 유닛의 동작을 제어한다. 예를 들어, 컨트롤러 (130) 는 각각의 데이터 패킷에 대해 사용하기 위한 특정 포맷을 선택할 수도 있다. 선택된 포맷은, 예를 들어, 패킷의 사이즈, 패킷에 대한 사용을 위한 코딩 방식 또는 코드 레이트, 패킷에 대한 사용을 위한 변조 방식 등과 같은 데이터 패킷에 대한 다양한 파라미터들과 연관될 수도 있다. 그 다음, 컨트롤러 (130) 는 각각의 패킷에 대한 선택된 포맷에 기초하여 프레임밍 유닛 (114), 인코더 (116), 채널 인터리버 (118), 펑쳐링 유닛 (120), 및 심볼 디맵퍼 (122) 에 대한 다양한 제어들을 생성할 수도 있다. 메모리 유닛 (132) 은 컨트롤러 (130) 에 의해 사용되는 데이터 및 프로그램 코드들을 저장한다.
도 2 는 시스템의 수신기 (150) 의 일 실시형태의 블록도를 나타낸다. 수신기 (150) 에서, 안테나 (152) 는 송신기 (110) 로부터 송신된 신호를 수신하고, 수신된 신호를 수신기 유닛 (RCVR) (154) 에 제공한다. 수신기 유닛 (154) 은 그 수신된 신호를 송신기 유닛 (124) 에 의해 수행되는 프로세싱에 상보적인 방식으로 처리하여 수신된 심볼들을 제공한다. 심볼 디맵퍼 (156) 는 패킷에 대해 사용되는 변조 방식에 따라 각각의 패킷에 대해 수신된 심볼들을 복조하고, 복조된 데이터의 패킷을 제공한다. 이레이저 (erasure) 삽입 유닛 (158) 은 각각의 패킷의 펑쳐링된 코드 비트들에 대해 이레이저들을 삽입한다. 이레이저들은 디코딩 프로세스에서 적절한 웨이트 (weight) 로 주어지는 더미 값들이다.
채널 디인터리버 (160) 는 각각의 패킷의 복조된 데이터를 채널 인터리버 (118) 에 의해 수행되는 인터리빙에 상보적인 방식으로 디인터리빙하고, 디인터리빙된 데이터의 패킷을 제공한다. 디코더 (162) 는 디인터리빙된 데이터의 각각의 패킷을 디코딩하고, 디코딩된 데이터의 패킷을 CRC 체커 (164) 에 제공한다. 디코더 (162) 는 인코더 (116) 에 의해 수행되는 인코딩에 상보적인 방식으로 디코딩을 수행한다. 예를 들어, 디코더 (162) 는, 인코더 (116) 가 터보 인코딩을 수행하면 터보 디코더, 인코더 (116) 가 컨볼루셔널 인코딩을 수행하면 비터비 (Viterbi) 디코더, 또는 인코더 (116) 가 LDPC 인코딩을 수행하면 LDPC 디코더일 수도 있다. CRC 체커 (164) 는 부가된 CRC 값에 기초하여 각각의 디코딩된 패킷을 체크하고, 패킷의 디코딩이 정확한지 에러가 있는 지를 판정한다. CRC 체커 (164) 는 정확하게 디코딩된 패킷들을 데이터 싱크 (166) 에 제공한다.
컨트롤러 (170) 는 수신기 (150) 에서 다양한 프로세싱 유닛들의 동작을 제어한다. 예를 들어, 컨트롤러 (170) 는 각각의 패킷의 포맷에 대한 정보를 제공받을 수도 있고, 심볼 디맵퍼 (156), 이레이저 삽입 유닛 (158), 채널 디인터리버 (160), 및 디코더 (162) 에 대한 적절한 제어들을 생성할 수도 있다. 메모리 유닛 (172) 은 컨트롤러 (170) 들에 의해 이용되는 데이터 및 프로그램 코드들을 저장한다.
도 1 의 송신기 (110) 에서, 채널 인터리버 (118) 는, 패킷에 대해 수신기 (150) 에 의해 직면한 비트 에러들이 채널 디인터리버 (160) 에 의한 상보적인 디인터리빙 후에 패킷에 걸쳐 분산될 수 있도록 각각의 코딩된 패킷의 코드 비트들을 리오더링한다. 비트 에러들의 양호한 분산은 디코딩 성능을 향상시킬 수 있고, 따라서 데이터 송신 성능을 향상시킨다.
채널 인터리버 (118) 는 다음의 것들을 제공하여야 한다:
1. 채널 인터리빙 전에 서로 가까운 코드 비트들이 채널 인터리빙 후에 멀리 떨어지도록 이격되도록 하는 양호한 스프레딩 특성; 및
2. 인코더 (116) 로부터 균일하게 이격된 코드 비트들이 송신에 대해 선택되도록 하는 규칙적인 또는 대체로 규칙적인 펑쳐링 패턴들.
양호한 스프레딩 특성은 페이딩, 다중경로, 간섭 등과 같은 좋지 않은 경로 영향들을 극복할 수 있는 더 많은 다이버시티를 제공할 수 있다. 규칙적인 또는 대체로 규칙적인 펑쳐링 패턴들은 일부 코딩 방식들에 대해 성능을 향상시킬 수 있다. 규칙적인 펑쳐링 패턴은 송신을 위해 시퀀스에서 균일하게 이격된 비트들 (예를 들어, 매 k-번째 비트들) 을 선택한다. 의사-랜덤 펑쳐링 패턴과 같은 불규칙적인 펑쳐링 패턴은, 송신을 위해 시퀀스에서 균일하게 이격되지 않은 비트들을 선택한다. 터보 코드들과 같은 일부 코딩 스킨들은 불규칙적인 (예를 들어, 의사-랜덤) 펑쳐링 패턴들 대신에 규칙적인 펑쳐링 패턴들과 함께 이용될 때 더 양호한 성능을 제공할 수 있다.
일 실시형태에서, 채널 인터리버 (118) 는 상이한 패킷 사이즈들 및 코드 레이트들에 대해 전술한 바람직한 특성들의 양자를 모두 제공할 수 있는 프루닝된 비트-리버설 인터리버로서 구현된다. 프루닝된 비트-리버설 인터리버는, 이하 설명되는 바와 같이, Nbr 코드 비트들을 받아서 그들의 표시자들에 기초하여 이들 코드 비트들을 리오더링하는 컨볼루셔널 비트-리버설 인터리버에 기초한다. 비트-리버설 인터리버는 전술한 바와 같은 2 가지 특성들을 제공하지만, Nbr = 2L (L 은 양의 정수) 인 2 의 제곱승인 패킷 사이즈들에 대해서만 작용한다. 프루닝된 비트-리버설 인터리버는 N 개의 코드 비트들의 패킷을 받아서 그들의 표시자에 기초하여 그 코드 비트들을 리오더링하는데, 여기서 N 은 임의의 정수일 수도 있고, 2 의 제곱승에 한정되지 않는다. 프루닝된 비트-리버설 인터리버는 또한 전술한 2 가지 특성들도 갖는다.
도 3 은 16 코드 비트들을 갖는 코딩된 패킷에 대한 4-비트 리버설 인터리버의 동작을 도시한다. 코딩된 패킷 내의 16 비트 위치들에는 0 내지 15 의 인덱스들이 제공된다. 코딩된 패킷의 16 코드 비트들은 b0, b1, b2,…,b15 와 같이 표시되고, 여기서 코드 비트 bi 는 코딩된 패킷의 비트 인덱스 i 에 있다.
비트-리버설 인터리빙 방식은 다음과 같이 작용한다. 각각의 코드 비트 bi (여기서, i = 0, 1,…,15) 에 대해, 코드 비트 bi 의 비트 인덱스 i 는 4 개의 바이너리 비트들을 이용하여 바이너리 형태로 표현된다. 그 다음, 4 개의 바이너리 비트들은 인덱스 i 에 대해 제 1, 제 2, 제 3 및 제 4 바이너리 비트들이 각각 제 4, 제 3, 제 2 및 제 1 비트 위치들로 이동되도록 리버스된다. 4 개의 리버스된 비트들은 j = π(i) 의 비트-리버스된 값을 형성하고, 여기서 π(i)는 i 의 바이너리 표현에 대한 비트 리버스 작용을 나타낸다. 그 다음, 코드 비트 bi 는 인터리빙된 패킷의 비트 인덱스 j 에서 제공된다. 예를 들어, 비트 인덱스 i = 3 이 바이너리 형태 '0011' 과 같이 표현되고, 그 리버스된 비트들은 '1100' 이고, 그 비트-리버스된 값은 j = 12 이다. 그 다음, 코딩된 패킷의 코드 비트 b3 는 인터리빙된 패킷의 비트 인덱스 12 로 맵핑된다. 도 3 은 코딩된 패킷의 16 코드 비트들을 인터리빙된 패킷의 16 비트 위치들로 맵핑하는 것을 나타낸다.
L-비트 리버설 인터리버는 다음과 같은 스프레딩 특성을 만족한다:
|a-b|<2k 이면, |π(a)-π(b)|≥2L-k-1 식 (1)
여기서, a 와 b 는 코딩된 패킷에 대한 2 개의 비트 인덱스이고;
|a-b|는 비트 인덱스 a 와 b 사이의 거리를 나타내고;
π(a) 는 비트 인덱스 a 에 대한 비트-리버스된 값이며; 그리고
π(b) 는 비트 인덱스 b 에 대한 비트-리버스된 값이다.
식 (1) 은, 비트 표시자 a 와 b 가 적어도 그들의 k 최하위 비트들 중 하나 이상이 상이하면, π(a) 와 π(b) 는 그들의 k 최상위 비트들 중 하나 이상이 상이하다. 따라서, 코딩된 패킷에서 2 개의 코드 비트들이 2k 비트 위치보다 적게 이격된다면, 이들 2 개의 코드 비트들은 인터리빙된 패킷에서 적어도 2L-k-1 비트 위치만큼 이격된다. 예를 들어, L = 10 이고 k = 2 이면, 코딩된 패킷에서 서로 4 비트 위치보다 적게 떨어진 코드 비트들은, 인터리빙된 패킷에서는 적어도 128 비트 위치만큼 떨어진다.
L-비트 리버설 인터리버는 규칙적인 또는 대체로 규칙적인 펑쳐링 패턴들을 제공한다. 인터리빙 후에, 인터리빙된 패킷의 제 1 Nbr/2 코드 비트들은 2 로 나누어지는 인덱스를 갖는 것들이다. 유사하게, 인터리빙된 패킷의 제 1 Nbr/4 코드 비트들은 4 로 나누어지는 인덱스를 갖고, 제 1 Nbr/8 코드 비트들은 8 로 나누어지는 인덱스를 갖는 등이 된다. 인터리빙된 패킷의 코드 비트들은 코딩된 패킷에서 2 만큼 떨어진 코드 비트들의 송신을 초래한다. 일반적으로, 인터리빙된 패킷의 Nbr/2k 코드 비트들을 제외한 나머지 모두를 펑쳐링하는 것은 코딩된 패킷에서 2k 만큼 떨어진 코드 비트들의 송신을 초래할 것이다. 따라서, 규칙적인 펑쳐링 패턴들은 "펑쳐링 팩터" 가 2 의 제곱승 또는 2k 일 때 달성될 수도 있을 것이고, 코딩된 패킷의 Nbr 총 코드 비트들 중에서 오직 Nbr/2k 코드 비트들만이 보존된다. 2 의 제곱승이 아닌 다른 펑쳐링 팩터들에 대해, 비트-리버설 인터리버에 의해 대체로 규칙적인 펑쳐링 패턴들이 달성된다.
도 4 는 11 코드 비트들을 갖는 코딩된 패킷에 대한 프루닝된 4-비트 리버설 인터리버의 동작을 나타낸다. 코딩된 패킷 내의 11 비트 위치들은 0 내지 10 의 인덱스가 주어진다. 코딩된 패킷의 11 코드 비트들은 b0, b1, b2,…, b10 으로 표시되고, 코드 비트 bi 는 코딩된 패킷의 비트 인덱스 i 에 있다.
프루닝된 비트-리버설 인터리빙 방식은 다음과 같이 작용한다. 코딩된 패킷은, 코딩된 패킷 사이즈 11 보다 더 크면서 가장 근접한 2 의 제곱승인 길이 16 으로 확장된다. 패킷 확장은 16 비트들의 확장된 패킷을 형성하기 위해 11 개의 코딩된 비트들의 말단부에 e11, e12,…, e15 로서 표시되는 5 개의 패딩 비트들을 부가함으로써 이루어질 수도 있다. 그 다음, 도 3 에 설명된 바와 같이, 통상의 4-비트 리버설 인터리빙이 그 확장된 패킷의 비트들에 대해 수행되어 비트-리버스된 패킷을 획득한다. 따라서, 확장된 패킷의 인덱스 i 의 비트 bi 는 비트-리버스된 패킷의 비트 인덱스 j 로 맵핑되고, 여기서, j = π(i) 이고, π(i) 는 i 에 대한 비트 리버설 동작을 나타낸다. 그 다음, 비트-리버스된 패킷의 5 개의 패딩 비트들이 삭제되어 11 개의 코딩된 비트들을 포함하는 인터리빙된 패킷을 획득하게 된다.
프루닝된 (L+1)-비트 리버설 인터리버는 다음과 같은 스프레딩 특성을 만족한다:
|a-b|<2k 이면, |π(a)-π(b)|≥2L-k-1 식 (2)
식 (2) 는 코딩된 패킷에서 2 개의 코드 비트들이 2k 비트 위치보다 적게 이격된다면, 이들 2 개의 코드 비트들은 인터리빙된 패킷에서 적어도 2L-k-1 비트 위치만큼 이격된다는 것을 나타낸다. 프루닝된 비트 리버설 인터리버에 의해 달성되는 스프레딩 팩터들은 비트-리버설 인터리버에 의해 달성되는 것들과 거의 동일하다. 프루닝된 비트-리버설 인터리버의 추가적인 이점은 상이한 패킷 사이즈들에 대해서도 사용도리 수도 있다는 것이다.
프루닝된 비트 리버설 인터리버는 또한 규칙적인 또는 대체로 규칙적인 펑쳐링 패턴들을 제공한다. 인터리빙 후에, 인터리빙된 패킷의 제 1 N/2 코드 비트들은 2 로 나누어지는 표시자를 갖고, 인터리빙된 패킷의 제 1 N/4 코드 비트들은 4 로 나누어지는 표시자를 갖고, 제 1 N/8 코드 비트들은 8 로 나누어지는 표시자를 갖는 등이다. 인터리빙된 패킷의 코드 비트들이 순차적으로 펑쳐링되면, 인터리빙된 패킷의 N/2k 코드 비트들을 제외한 나머지 모두를 펑쳐링하는 것은 코딩된 패킷에서 2k 비트 위치만큼 떨어진 코드 비트들의 송신을 초래할 것이다. 따라서, 규칙적인 펑쳐링 패턴들은 펑쳐링 팩터가 2 의 제곱승일 때 획득되고, 대체로 규칙적인 펑쳐링 패턴들은 펑쳐링 팩터가 2 의 제곱승이 아닐 때 획득된다.
도 5 는 프루닝된 비트-리버설 인터리빙을 수행하는 프로세스 (500) 를 나타낸다. 초기에, N 입력 비트들을 포함하고, N 의 사이즈를 갖는 패킷이 수신된다 (블록 510). 패킷 사이즈가 2 의 제곱승이 아니라면 (즉, 2L<N<2L+1 이라면), 프루닝된 (L+1)-비트 리버설 인터리버가 패킷의 N 입력 비트들을 인터리빙하는데 사용된다. 프루닝된 비트-리버설 인터리빙을 수행하기 위해, 먼저 패킷은 길이 2L+1 로 확장된다 (블록 512). 이는 패킷의 말단부에 (2L+1-N) 패딩 비트들을 부가함으로써 달성될 수도 있다. 또는, 전술한 바와 같이 인터리빙에 이용되는 비트 어드레스들을 적절하게 생성함으로써 달성될 수도 있다. 어느 경우에도, 길이 2L+1 의 확장된 패킷은 (L+1)-비트 리버설 인터리버를 이용하여 인터리빙된다 (블록 514). 그 다음, 패딩 비트들이 패킷에 부가되어 있다면 (2L+1-N) 개의 패딩 비트들을 삭제함으로써 N 개의 인터리빙된 비트들을 포함하는 패킷이 형성된다 (블록 516).
도 6 은, 도 1 의 송신기 (110) 의 채널 인터리버 (118) 의 한 실시형태인 채널 인터리버 (118x) 의 블록도를 나타낸다. 채널 인터리버 (118x) 는 메모리 유닛 (610), 어드레스 생성기 (620), 및 룩-업 테이블 (630) 을 포함한다. 채널 인터리버 (118x) 는 (인코더 (116) 로부터의 코드 비트들인) 입력 비트들을 수신하고, 이 입력 비트들을 메모리 유닛 (610) 의, 어드레스 생성기 (620) 에 의해서 결정된 위치에 저장한다. 채널 인터리버 (118x) 는 어드레스 생성기 (620) 에 의해서 결정된 위치의 메모리 유닛 (610) 으로부터의 인터리빙된 비트들을 제공한다. 어드레스 생성기 (620) 는 각각의 들어오는 패킷의 시작 및 그것의 사이즈 N 의 표시를 수신하고, 메모리 유닛 (610) 으로 입력 비트들을 라이팅하기 위한 적절한 어드레스들을 생성한다. 어드레스 생성기 (620) 는 또한 메모리 유닛 (610) 으로부터 인터리빙된 비트들을 리딩 또는 복구하기 위한 적절한 어드레스들을 생성한다.
프루닝된 비트 리버설 인터리버에 대한 인터리빙은 몇 가지 방식으로 수행될 수도 있다. 제 1 실시형태에서, 패킷의 입력 비트들은 메모리 유닛 (610) 의 선형적인 순서로 저장되고, 메모리 유닛 (610) 으로부터 인터리빙되는 순서로 복구된다. 이 실시형태에서, 어드레스 생성기 (620) 는 들어오는 패킷의 시작부를 수신하고, 패킷에 대한 순차적인 어드레스들을 생성한다. 어드레스 생성기 (620) 는 또한 메모리 유닛 (610) 으로부터 인터리빙된 비트들을 리딩하기 위해 비트-리버스된 어드레스들을 생성한다. 제 2 실시형태에서, 패킷의 입력 비트들은 메모리 유닛 (610) 에 인터리빙되는 순서로 저장되고, 메모리 유닛 (610) 으로부터 선형적인 순서로 복구된다. 이 실시형태에서, 어드레스 생성기 (620) 는 들어오는 패킷의 시작부를 수신하고, 메모리 유닛 (610) 에 입력 비트들을 라이팅하기 위한 비트-리버스된 어드레스들을 생성한다. 어드레스 생성기 (620) 는 또한 메모리 유닛 (610) 으로부터 인터리빙된 비트들을 리딩하기 위한 순차적인 어드레스들을 생성한다.
이 양 실시형태에서, 어드레스 생성기 (620) 는 비트-리버스된 어드레스들을 생성할 수 있어, 입력 패킷의 패딩은 필요하지 않다. 비트-리버스된 어드레스들은 다음과 같이 생성될 수도 있다. 입력 패킷은 0 내지 N-1 의 표시자에서 N 개의 입력 비트들을 포함한다. 어드레스 생성기 (620) 는 먼저 비트-리버설 인터리버에 대해 비트 (L+1) 의 필요한 수를 결정하고, 여기서, (L+1) 은 N≤2L+1 을 만족하는 가장 작은 정수이다. 어드레스 생성기 (620) 내의 카운터는 제로로 초기화된다. 그 다음, 어드레스 생성기 (620) 는 j = π(i) 로서 임시의 비트-리버스된 어드레스 j 를 형성하고, 여기서, π(i) 는 현재의 카운터 값 i 에 대한 비트 리버설 작용이다. 비트-리버스된 어드레스 j 는 만약 그것이 N 보다 적다면 수용될 것이고, 그렇지 않다면 거절당할 것이다. 만약 그것이 수용된다면, 어드레스 생성기 (620) 는 비트-리버스된 어드레스 j 를 제공한다. 어느 경우에도, 카운터는 증가하고, 새로운 카운터 값이 다음 임시 비트-리버스된 어드레스를 생성하는데 이용된다. 어드레스 생성 프로세스는 모든 N 개의 유효한 비트-리버스된 어드레스들이 생성될 때까지 계속된다. 패딩 또는 길이 2L+1 로의 확장은 비트-리버스된 어드레스들을 적절하게 생성함으로써 효율적으로 달성된다.
어드레스 생성기 (620) 는 메모리 유닛 (610) 에 입력 비트들을 라이팅하거나 메모리 유닛 (610) 으로부터 인터리빙된 비트들을 리딩할 필요가 있으므로, 플라이 (fly) 상에 비트-리버스된 어드레스들을 생성할 수도 있다. 또는, 비트-리버스된 어드레스들은 룩-업 테이블 (630) 에 저장되어 필요할 때마다 액세스될 수도 있다.
도 6 은 다른 방식들로도 또한 구현될 수도 있는 채널 인터리버 (118) 의 일 실시형태를 나타낸다. 도 2 의 수신기 (150) 에서의 채널 디인터리버 (160) 는 도 6 에 나타낸 구조를 이용하여 구현될 수도 있다.
프루닝된 비트 리버설 인터리버는, 터보 코드, 컨볼루셔널 코드, LDPC 코드 등과같은 다양한 타입의 FEC 코드들과 함께 이용될 수도 있다. 상이한 FEC 코드들을 위한 인코더 (116), 채널 인터리버 (118), 및 펑쳐링 유닛 (120) 의 몇 가지 예시적인 실시형태들을 이하 설명한다.
도 7 은 각각 도 1 의 송신기 (110) 의 인코더 (116), 채널 인터리버 (118), 및 펑쳐링 유닛 (120) 의 일 실시형태인, 인코더 (116a), 채널 인터리버 (118a), 및 펑쳐링 유닛 (120a) 의 블록도를 나타낸다. 이 실시형태에서는, 인코더 (116a) 는 통상 터보 코드라고 불리는 레이트 1/5 병렬-연접 (parallel-concatenated) 컨볼류셔널 코드를 구현한다. 인코더 (116a) 는 각각의 데이터 비트에 대해 5 개의 코드 비트들을 제공한다.
인코더 (116a) 는 2 개의 구성 인코더 (constituent encoder) (712a, 712b), 2 개의 멀티플렉서 (Mux) (714a, 714b), 및 코드 인터리버 (716) 를 포함한다. 인코더 (116a) 는 {x} 로 표시되는, ND 데이터 비트들을 포함하는 데이터 패킷을 수신하고, ND 데이터 비트들을 코딩된 패킷에 대한 ND 구조화 비트들의 시퀀스로서 제공한다. 구성 인코더 (712a) 는 데이터 비트들 {x} 을 수신하고, 그 데이터 비트들을 제 1 생성기 다항식 G1(D) 에 따라 인코딩하고, {y1} 으로 표시되는 ND 패리티 비트들의 제 1 시퀀스를 생성한다. 구성 인코더 (712a) 는 또한 제 2 생성기 다항식 G2(D) 에 따라 동일 데이터 비트들을 인코딩하고, {z1} 으로 표시되는 ND 패리티 비트들의 제 2 시퀀스를 생성한다. 코드 인터리버 (716) 는 특정 인터리빙 방식에 따라 ND 데이터 비트들을 수신하고 인터리빙한다. 예를 들어, 코드 인터리버 (716) 는, 당업계에 공지된 바와 같이, LCS 인터리빙 방식, 의사-랜덤 인터리빙 방식 등을 구현할 수도 있다. 구성 인코더 (712b) 는 코드 인터리버 (716) 로부터 ND 인터리빙된 비트들을 수신하고, 제 1 생성기 다항식 G1(D) 에 따라 인터리빙된 비트들을 인코딩하고, {y2} 로 표시되는 ND 패리티 비트들의 제 3 시퀀스를 생성한다. 구성 인코더 (712b) 는 또한 제 2 생성기 다항식 G2(D) 에 다라 동일한 인터리빙된 비트들을 인코딩하고, {z2} 로 표시되는 ND 패리티 비트들의 제 4 시퀀스를 생성한다. 구성 인코더 (712a, 712b) 는 또한 테일 (tail) 패리티 비트들을 제공할 수도 있다.
멀티플렉서 (714a) 는 패리티 비트 시퀀스 {y1} 및 {y2} 를 수신하고, 이들 2 개의 시퀀스들을 함께 멀티플렉싱하고, 제 1 생성기 다항식 G1(D) 에 대해 패리티 비트 시퀀스 {y} 를 제공한다. 시퀀스 {y} 의 제 1 ND 패리티 비트들은 시퀀스 {y1} 으로부터의 것이고, 시퀀스 {y} 의 마지막 ND 패리티 비트들은 시퀀스 {y2} 로부터의 것이다. 유사하게, 멀티플렉서 (714b) 는 패리티 비트 시퀀스 {z1} 및 {z2} 를 수신하고, 이들 2 개의 시퀀스들을 함께 멀티플렉싱하고, 제 2 생성기 다항식 G2(D) 에 대해 패리티 비트 시퀀스 {z} 를 제공한다. 시퀀스 {z} 의 제 1 ND 패리티 비트들은 시퀀스 {z1} 으로부터의 것이고, 시퀀스 {z} 의 마지막 ND 패리티 비트들은 시퀀스 {Z2} 로부터의 것이다.
ND 입력 비트들을 갖는 데이터 패킷에 대해, 인코더 (116a) 는 (ND 입력 비트들과 동등한) ND 구조 비트들의 시퀀스, 제 1 생성기 다항식으로 생성된 2ND 패리티 비트들의 시퀀스 {y}, 및 제 2 생성기 다항식으로 생성된 2ND 패리티 비트들의 시퀀스 {z} 를 제공한다. 구조 비트들의 시퀀스와 패리티 비트들의 2 개의 시퀀스들은 데이터 패킷에 대해 인코더 (116a) 에 의해 생성된 코딩된 패킷의 5ND 코드 비트들을 함께 형성한다.
채널 인터리버 (118a) 는 프루닝된 비트-리버설 인터리버들 (722, 724a, 724b) 을 포함하고, 이들 각각은 도 6 에 나타낸 바와 같이 구현될 수도 있다. 인터리버 (722) 는 ND 구조 비트들 {x} 의 시퀀스에 대해 프루닝된 비트-리버설 인터리빙을 수행하고, 인터리빙된 시퀀스 {xint} 를 제공한다. 인터리버 (722) 는, ND 이상이면서 가장 근접한 2 의 제곱승의 사이즈 N'D 의 비트-리버설 인터리버를 활용한다. 인터리버 (724a) 는 2ND 패리티 비트들 {y} 의 시퀀스에 대해 프루닝된 비트-리버설 인터리빙을 수행하고, 인터리빙된 시퀀스 {yint} 를 제공한다. 인터리버 (724a) 는 2ND 이상이면서 가장 근접한 2 의 제곱승의 사이즈 2N'D 의 비트-리버설 인터리버를 활용한다. 유사하게, 인터리버 (724b) 는 2ND 패리티 비트들 {z} 의 시퀀스에 대해 프루닝된 비트-리버설 인터리빙을 수행하고, 인터리빙된 시퀀스 {zint} 를 제공한다. 인터리버 (724b) 는 또한 사이즈 2N'D 의 비트-리버설 인터리버를 활용한다. 시퀀스 {y} 는 시퀀스 {y1} 으로부터의 ND 패리티 비트들과 그 다음 시퀀스 {y2} 로부터의 ND 패리티 비트들을 포함하기 때문에, {yint} 의 짝수-인덱스된 패리티 비트들은 {y1} 으로부터의 것이고, {yint} 의 홀수-인덱스된 패리티 비트들은 {y2} 로부터의 것이다. 유사하게, {zint} 의 짝수-인덱스된 패리티 비트들은 {z1} 으로부터의 것이고, {zint} 의 홀수-인덱스된 패리티 비트들은 {z2} 로부터의 것이다. 3 개의 시퀀스 {xint}, {yint}, 및 {zint} 는 인터리빙된 패킷을 형성한다.
펑쳐링 유닛 (120a) 은 펑쳐링 유닛들 (732, 734, 736) 과 멀리플렉서 (738) 를 포함한다. 펑쳐링 유닛 (732) 은 시퀀스 {xint} 를 수신하고, 제로 또는 그 이상의 코드 비트들을 펑쳐링하고, 펑쳐링된 시퀀스 {xp} 를 제공한다. 펑쳐링 유닛 (734) 은 시퀀스 {yint} 를 수신하고, 시퀀스 {yint} 의 말단부에서 제로 또는 그 이상의 코드 비트들을 펑쳐링 또는 트렁케이트 (truncate) 하고, 펑쳐링된 시퀀스 {yp} 를 제공한다. 유사하게, 펑쳐링 유닛 (736) 은 시퀀스 {zint} 를 수신하고, 시퀀스 {zint} 의 말단부에서 제로 또는 그 이상의 코드 비트들을 펑쳐링하고, 펑쳐링된 시퀀스 {zp} 를 제공한다. 프루닝된 비트-리버설 인터리버 (734, 736) 에 대해, 각각의 시퀀스의 코드 비트들은 시퀀스의 말단부에서 시작하여 펑쳐링되고, 시퀀스의 시작부를 향해 가로지른다. 시퀀스 {xint} 의 인터리빙된 구조 비트들은 통상적으로 펑쳐링되지 않거나 마지막에 펑쳐링된다.
인코더 (116a) 는 패킷의 ND 데이터 비트들에 대해 NC = 5ND 코드 비트들을 생성하는 레이트 1/5 터보 코드를 구현한다. 펑쳐링할 코드 비트들의 수는 코딩된 패킷 사이즈 및 출력 패킷 사이즈에 의해 결정될 수도 있다. 원하는 출력 패킷 사이즈가 NP 이고, 코딩된 패킷 사이즈가 NC 이면, (ND-NP) 코드 비트들이 펑쳐링되어 사이즈 NP 의 출력 패킷을 획득하게 된다. 또는, 펑쳐링할 코드 비트들의 수는 코딩된 패킷의 사이즈와 원하는 코드 레이트에 의해 결정될 수도 있고, R = ND/NP 로서 주어진다. 코딩된 패킷 사이즈가 NC 이고, 원하는 코드 레이트가 R 이면, (NC-ND/R) 코드 비트들이 펑쳐링되어 원하는 코드 레이트를 획득한다. 예를 들어, 1/3 의 코드 레이트는 (NC-3ND) = 2ND 의 코드 비트들을 펑쳐링함으로써 획득될 수도 있다.
펑쳐링은 다양한 방식들로 수행될 수도 있다. 한 펑쳐링 방식에서, (NC-NP) 코드 비트들을 펑쳐링하여 NP 사이즈의 출력 패킷 사이즈를 생성하기 위해, 시퀀스 {zint} 의 코드 비트들이 먼저 펑쳐링되고, 그 다음, 필요하다면 시퀀스 {yint} 의 코드 비트들이 펑쳐링되고, 마지막으로, 필요하다면 시퀀스 {xint} 의 코드 비트들이 펑쳐링된다. 레이트 1/3 터보 코드는 시퀀스 {zint} 의 모든 2ND 코드 비트들이 펑쳐링될 때 획득된다. 또 다른 펑쳐링 방식에서, 시퀀스 {yint} 의 (NC-NP)/2 코드 비트들 및 시퀀스 {zint} 의 (NC-NP)/2 코드 비트들이 펑쳐링되어 사이즈 NP 의 출력 패킷을 획득한다. 어느 경우에도, 멀티플렉서 (738) 는 3 개의 시퀀스 {xp}, {yp}, 및 {zp} 를 수신하고, {s} 로 표시되는 출력 패킷을 위해 시퀀스 {xp}, 그 다음으로 시퀀스 {yp}, 마지막으로 시퀀스 {zp} 를 제공한다.
채널 인터리버 (118a) 는, 레이트 4/5, 2/3, 1/2, 1/3, 1/4 및 1/5 를 포함하는 많은 레이트들을 위해 패리티 비트들에 대해 규칙적인 펑쳐링 패턴들을 제공한다. 채널 인터리버 (118a) 는 다른 코드 레이트들을 위해 대체로 규칙적인 펑쳐링 패턴들을 제공한다. 채널 인터리버 (118a) 는 또한 전술한 바와 같이 양호한 스프레딩 특성을 제공한다. 터보 디코더는, 규칙적인 또는 대체로 규칙적인 펑쳐링 패턴들과 채널 인터리버 (118a) 에 의해 제공되는 양호한 스프레딩 팩터에 의해 향상된 성능을 달성할 수 있다.
펑쳐링은 또한 펑쳐링될 비트들이 메모리에 저장되지 않는 채널 인터리빙과 결합될 수도 있다. 소정의 프루닝된 비트-리버설 인터리버에서는, 인터리버로부터의 오직 K 인터리빙된 비트들만이 출력 패킷에 대해 제공된다면, 인터리빙된 시퀀스의 K 보다 더 큰 표시자를 갖는 코드 비트들은 인터리버에 의해 삭제될 수도 있다.
도 7 은 레이트 1/5 터보 코드를 구현하는 인코더 (118a) 를 나타낸다. 레이트 1/3 터보 코드에서, 구성 인코더 (712a) 는 단일 생성기 다항식 G(D) 에 기초하여 패리티 비트들 {y1} 의 단일 시퀀스를 생성하고, 구성 인코더 (712b) 는 또한 동일한 생성기 다항식 G(D) 에 기초하여 패리티 비트들 {y1} 의 단일 시퀀스를 생성한다. 멀티플렉서 (714a) 는 시퀀스들 {y1} 과 {y2} 를 단일 시퀀스 {y} 로 멀티플렉싱한다. 프루닝된 비트-리버설 인터리버 (724a) 는 시퀀스 {y} 의 패리티 비트들을 인터리빙하고, 인터리빙된 시퀀스 {yint} 를 제공한다. 멀리플렉서 (714b), 프루닝된 비트-리버설 인터리버 (724b), 및 펑쳐링 유닛 (736) 은 레이트 1/3 터보 코드에 대해 필요하지 않다.
도 8 은, 각각 송신기 (110) 의 인코더 (116), 채널 인터리버 (118), 및 펑쳐링 유닛 (120) 의 또 다른 실시형태인, 인코더 (116b), 채널 인터리버 (118b), 및 펑쳐링 유닛 (120b) 의 블록도를 나타낸다. 본 실시형태에서, 인코더 (116b) 는, 각각의 데이터 비트에 대해 M 코드 비트들을 제공하는, 레이트 1/M 컨볼루셔널 코드를 구현한다. 인코더 (116b) 는 컨볼루셔널 인코더 (812) 및 멀티플렉서 (814) 를 포함한다. 컨볼루셔널 인코더 (812) 는 데이터 비트들 {x} 을 수신하고, 그 데이터 비트들을 M 개의 상이한 생성기 다항식들에 따라 인코딩하고, {c1} 내지 {c4} 로 표시되는, 코드 비트들의 M 개의 시퀀스들을 생성한다. 멀티플렉서 (814) 는 M 개의 코드 비트 시퀀스들을 수신하고, {c} 로 표시되는 코딩된 패킷을 위해 시퀀스 {c1} 을 먼저 제공하고, 다음으로 {c2} 등을 제공하고, 그 다음, 마지막으로 시퀀스 {cM} 을 제공한다. 이러한 멀티플렉싱 방식은 각각의 생성기 다항식으로부터 대체로 동등한 수의 코드 비트들이 출력 패킷을 위해 선택되는 것을 보장한다.
채널 인터리버 (118b) 는 도 6 에 나타낸 바와 같이 구현될 수도 있는 프루닝된 비트-리버설 인터리버 (822) 를 포함한다. 인터리버 (822) 는 코드 비트 시퀀스 {c} 에 대해 프루닝된 비트-리버설 인터리빙을 수행하고, 인터리빙된 시퀀스 {cint} 를 제공한다. 인터리버 (822) 는, 입력 시퀀스 사이즈 이상이면서 가장 근접한 2 의 제곱승인 사이즈의 비트-리버설 인터리버를 활용한다. 인터리빙된 시퀀스 {cint} 는 인터리빙된 패킷을 형성한다. 펑쳐링 유닛 (120b) 은 (예를 들어, 시퀀스 {cint} 의 말단부로부터 시작하는), 인터리빙된 시퀀스 {cint} 에서 제로 또는 그 이상의 코드 비트들을 펑쳐링하는 펑쳐링 유닛 (832) 을 포함하고, 원하는 사이즈의 출력 패킷 {s} 을 제공한다.
도 9 는 송신기 (110) 의 인코더 (116), 채널 인터리버 (118), 및 펑쳐링 유닛 (120) 의 또 다른 실시형태인, 인코더 (116c), 채널 인터리버 (118c), 및 펑쳐링 유닛 (120c) 의 블록도를 나타낸다. 본 실시형태에서, 인코더 (116c) 는 LDPC 인코더 (912) 를 포함한다. LDPC 인코더 (912) 는 데이터 패킷 {x} 에 대한 데이터 비트들을 수신하고, 이 데이터 비트들을 생성기 매트릭스 G 에 따라 인코딩하고, 그 데이터 비트들을 구조 비트들의 시퀀스로서 제공하고, {q} 로 표시되는 패리티 비트들의 시퀀스를 제공한다. 생성기 매트릭스 G 는, 원하는 수의 코드 비트들이 생성되도록 패리티 체크 매트릭스 H 에 기초하여 형성된다. 시퀀스 {x} 및 {q} 는 코딩된 패킷을 형성한다.
채널 인터리버 (118c) 는 프루닝된 비트-리버설 인터리버 (922, 924) 를 포함하고, 이들 각각은 도 6 에 나타낸 바와 같이 구현될 수도 있다. 인터리버 (922) 는 구조 비트들의 시퀀스 {x} 에 기초하여 프루닝된 비트-리버설 인터리빙을 수행하고, 그 인터리빙된 시퀀스 {xint} 를 제공한다. 인터리버 (924) 는 패리티 비트들의 시퀀스 {q} 에 기초하여 프루닝된 비트-리버설 인터리빙을 수행하고, 인터리빙된 시퀀스 {qint} 를 제공한다. 인터리버들 (922, 924) 은 그들의 각각의 시퀀스들에 대해 가장 작은 가능한 사이즈의 비트-리버설 인터리버들을 활용한다. 시퀀스들 {xint} 및 {qint} 는 인터리빙된 패킷을 형성한다. 펑쳐링 유닛 (120c) 은 시퀀스들 {xint} 및 {qint} 를 수신하고 멀티플렉싱하는 멀티플렉서 (932) 를 포함하고, 원하는 사이즈의 출력 패킷 {s} 를 제공한다. 시퀀스들 {x} 및 {q} 가 집합적으로 원하는 사이즈이기 때문에, 펑쳐링은 필요하지 않다.
도 9 는 구조 비트들과 패리티 비트들 양자 모두 생성하는 LDPC 코드의 한 타입을 나타낸다. 다른 LDPC 코드들은 패리티 비트들만을 생성하고 구조 비트들은 생성하지 않을 수도 있다. 이 경우 채널 인터리빙은, 종래의 코드에 대해 도 8 에서 전술한 방식으로 하나의 프루닝된 비트-리버설 인터리버를 이용하여 수행될 수도 있다.
도 7, 도 8, 및 도 9 는 3 가지 상이한 타입들의 FEC 코드들과 함께 프루닝된 비트-리버설 인터리버의 이용을 나타낸다. 스프레딩 특성들 및/또는 규칙적인 펑쳐링 패턴들이 중요한 다른 코드들에 대해 유사한 인터리버들이 이용될 수도 있다. 프루닝된 비트-리버설 인터리버는, 비트-리버설 인터리버의 특성들이 소망되고, 그러나, 인터리버의 사이즈가 2 의 제곱승이지 않은 어떤 경우에도 이용될 수도 있다.
명확함을 위해, 인터리빙 기술들을 특별히, 2 의 제곱승인 사이즈를 갖는 비트-리버설 인터리버를 이용하는 프루닝된 비트-리버설 인터리버에 대해 설명하였다. 이들 기술들은 LCS-타입의 인터리버, 의사-랜덤 인터리버 등과 같은 다른 타입들의 인터리버에 대해서도 사용될 수도 있다. 예를 들어, 소정의 사이즈의 LCS-타입의 인터리버 또는 의사-랜덤 인터리버는 상이한 패킷 사이즈들을 지원하기 위해 프루닝 (pruning) 과 함께 이용될 수도 있다. 소정의 사이즈의 임의의 주어진 인터리버에 대해, 입력 패킷이 소정의 사이즈보다 더 작다면 (예를 들어, 패딩을 부가하거나 어드레스들을 적절히 생성함으로써) 인터리버 사이즈로 확장될 수도 있다. 그 다음에는, 인터리빙은 인터리버에 의해 통상의 방식으로 수행될 수도 있다. 그 다음, 프루닝함으로써 (예를 들어, 패딩을 제거하거나 어드레스들을 적절히 생성함으로써) 원래의 패킷 사이즈를 갖는 인터리빙된 패킷이 형성된다. 인터리빙 기술들은 2 의 제곱승이 아닌 다른 인터리버 사이즈들에 대해서도 사용될 수도 있다.
다시 도 1 을 참조하면, 펑쳐링 유닛 (120) 으로부터의 출력 비트들은 심볼 맵퍼 (122) 에 의해 변조 심볼들로 맵핑된다. OFDMA (Orthogonal Frequency Division Multiple Access) 시스템과 같은 OFDM-계 시스템에서, 하나의 변조 심볼은 각각의 OFDM 심볼 주기의 각각의 서브밴드 상으로 보내질 수도 있다. 주어진 변조 심볼들의 패킷은 다중 (T) OFDM 심볼 주기들의 다중 (S) 서브밴드들 상으로 보내질 수도 있다. 일부 시나리오에서, 변조 심볼들을 먼저 시간에 걸쳐, 그 다음 주파수에 걸쳐서 제공함으로써 향상된 성능이 달성될 수도 있다. 이 경우, T 변조 심볼들이 T 심볼 주기들에 대한 제 1 서브밴드로 제공되고, 다음 T 변조 심볼들이동일한 T 심볼 주기들에 대한 제 2 서브밴드로 제공되는 등이 될 수도 있다. 일부 다른 시나리오에서, 변조 심볼들을 먼저 주파수에 걸쳐, 그 다음 시간에 걸쳐서 제공함으로써 향상된 성능이 달성될 수도 있다. 이 경우, S 변조 심볼들이 제 1 OFDM 심볼 주기에 대해 S 서브밴드들로 제공되고, 그 다음, 다음 S 변조 심볼들이 제 2 OFDM 심볼 주기에 대해 S 서브밴드들로 제공되는 등이 될 수도 있다.
여기에 개시된 인터리빙 기술들은 다양한 수단에 의해 구현될 수도 있다. 예를 들어, 이들 기술들은 하드웨어, 소프트웨어, 또는 이들의 조합으로 구현될 수도 있다. 하드웨어 구현에서, 인터리빙 또는 디인터리빙을 수행하기 위해 이용되는 프로세싱 유닛들은 하나 이상의 ASIC (application specific integrated circuit), DSP (digital signal processor), DSPD (digital signal processing device), PLD (programmable logic device), FPGA (field programmable gate array), 프로세서, 마이크로-컨트롤러, 마이크로프로세서, 여기에 설명된 기능들을 수행하도록 설계된 다른 전자 유닛들, 또는 이들의 조합 내에서 구현될 수도 있다.
소프트웨어 구현에서, 인터리빙 기술들은 여기에 설명된 기능들을 수행하는 모듈들 (예를 들어, 절차들, 기능들 등) 로 구현될 수도 있다. 소프트웨어 코드들은 메모리 유닛 (예를 들어 도 1 의 메모리 유닛 (132), 또는 도 2 의 컨트롤러 (170)) 에 저장될 수도 있고, 프로세서 (예를 들어, 도 1 의 컨트롤러 (130) 또는 도 2 의 컨트롤러 (170)) 에 의해 실행될 수도 있다. 메모리 유닛은 프로세서 내부에 또는 프로세서 외부에 구현될 수도 있다.
개시된 실시형태들의 전술한 내용들은 당업자가 본 발명을 이용하고 실시할 수 있도록 제공된다. 이들 실시형태들의 다양한 변형들은 당업자에게 자명한 것일 것이고, 여기에 개시된 일반적인 원리들은 본 발명의 사상과 범위로부터 이탈함이 없이 다른 실시형태들에도 적용될 수도 있다. 따라서, 본 발명은 여기에 나타낸 실시형태들에 한정되지 아니하며, 여기에 개시된 원리들 및 신규한 특징들과 일치하는 가장 광범위한 범위와 일치된다.
110 : 송신기 112 : 데이터 소스
114 : 프레이밍 유닛 116 : 인코더
118 : 채널 인터리버 120 : 펑처링 유닛
122 : 심볼 맵퍼 124 : 송신기 유닛
126 : 안테나 130 : 컨트롤 유닛
132 : 메모리

Claims (9)

  1. 통신 시스템에서 데이터를 처리하는 방법으로서,
    제 1 사이즈의 구조 비트들의 시퀀스, 하나 이상의 제 2 사이즈의 패리티 비트들의 시퀀스를 발생시키기 위해, 터보 코드, 또는 LDPC (low density parity check) 코드에 따라 데이터 비트들의 시퀀스를 인코딩하는 단계;
    상기 구조 비트들의 시퀀스의 인터리빙된 정렬을 발생시키기 위해, 상기 구조 비트들의 시퀀스를 인터리빙하는 단계로서, 상기 구조 비트들의 시퀀스의 인터리빙된 정렬을 발생시키기 위해 상기 구조 비트들의 시퀀스를 제 1 수의 제 1 패딩 비트와 제 1 프로세싱하는, 제 1 L 비트-리버설 인터리빙 방식을 구현하는 단계를 포함하고, 상기 제 1 수의 제 1 패딩 비트는, 상기 제 1 사이즈보다 더 크면서 가장 근접한 2 의 제곱승 (powers of two) 인 제 3 사이즈 및 상기 제 1 사이즈의 차이와 동일한, 상기 구조 비트들의 시퀀스를 인터리빙하는 단계;
    상기 하나 이상의 패리티 비트들 시퀀스의 인터리빙된 정렬을 발생시키기 위해, 상기 하나 이상의 패리티 비트들 시퀀스를 인터리빙하는 단계로서, 상기 하나 이상의 패리티 비트들 시퀀스의 인터리빙된 정렬을 발생시키기 위해 상기 하나 이상의 패리티 비트들 시퀀스를 제 2 수의 제 2 패딩 비트와 제 2 프로세싱하는, 제 2 L 비트-리버설 인터리빙 방식을 구현하는 단계를 포함하고, 상기 제 2 수의 제 2 패딩 비트는, 상기 제 2 사이즈보다 더 크면서 가장 근접한 2 의 제곱승 (powers of two) 인 제 4 사이즈 및 상기 제 2 사이즈의 차이와 동일한, 상기 하나 이상의 패리티 비트들 시퀀스를 인터리빙하는 단계;
    상기 구조 비트들의 시퀀스의 인터리빙된 정렬 및 상기 하나 이상의 패리티 비트들 시퀀스의 인터리빙된 정렬을 갖는, 인터리빙된 데이터의 패킷을 형성하는 단계를 포함하고,
    상기 제 1 및 제 2 L 비트-리버설 인터리빙 방식을 구현하는 단계 중 하나는, 메모리 내의 위치를 다수의 패딩 비트에 대응되는 것에 제공하지 않으면서, 상기 메모리 내의 위치를 상기 비트들의 시퀀스에 대응되는 것에 제공하는 단계를 포함하는, 데이터 처리 방법.
  2. 제 1 항에 있어서,
    상기 데이터 비트들의 시퀀스를 인코딩하는 단계는,
    상기 구조 비트들의 시퀀스로서 상기 데이터 비트들의 시퀀스를 제공하는 단계; 및
    연관된 하나 이상의 생성기 다항식에 따라 하나 이상의 패리티 비트들의 시퀀스를 생성하는 단계를 포함하는, 데이터 처리 방법.
  3. 제 1 항에 있어서,
    상기 제공하는 단계는,
    메모리 내의 위치에 대한 후보 어드레스 값을 생성하는 단계;
    상기 후보 어드레스 값을 소정의 값과 비교하는 단계; 및
    상기 소정의 값과 소정의 관계를 갖는 (bear) 후보 어드레스 값만을, 상기 입력 데이터 비트와 연관된 어드레스 값으로서 선택하는 단계를 포함하는, 데이터 인터리빙 방법.
  4. 제 1 사이즈의 구조 비트들의 시퀀스, 하나 이상의 제 2 사이즈의 패리티 비트들의 시퀀스를 발생시키기 위해, 터보 코드, 또는 LDPC (low density parity check) 코드에 따라 데이터 비트들의 시퀀스를 인코딩하도록 동작하는 인코더;
    상기 구조 비트들의 시퀀스의 인터리빙된 정렬을 발생시키기 위해, 상기 구조 비트들의 시퀀스를 인터리빙하는 제 1 인터리버로서, 상기 구조 비트들의 시퀀스의 인터리빙된 정렬을 발생시키기 위해 상기 구조 비트들의 시퀀스를 제 1 수의 제 1 패딩 비트와 제 1 프로세싱하는, 제 1 L 비트-리버설 인터리빙 방식을 구현하고, 상기 제 1 수의 제 1 패딩 비트는, 상기 제 1 사이즈보다 더 크면서 가장 근접한 2 의 제곱승 (powers of two) 인 제 3 사이즈 및 상기 제 1 사이즈의 차이와 동일한, 제 1 인터리버;
    상기 하나 이상의 패리티 비트들 시퀀스의 인터리빙된 정렬을 발생시키기 위해, 상기 하나 이상의 패리티 비트들 시퀀스를 인터리빙하는 제 2 인터리버로서, 상기 하나 이상의 패리티 비트들 시퀀스의 인터리빙된 정렬을 발생시키기 위해 상기 하나 이상의 패리티 비트들 시퀀스를 제 2 수의 제 2 패딩 비트와 제 2 프로세싱하는, 제 2 L 비트-리버설 인터리빙 방식을 구현하며, 상기 제 2 수의 제 2 패딩 비트는, 상기 제 2 사이즈보다 더 크면서 가장 근접한 2 의 제곱승 (powers of two) 인 제 4 사이즈 및 상기 제 2 사이즈의 차이와 동일한, 제 2 인터리버;
    상기 구조 비트들의 시퀀스의 인터리빙된 정렬 및 상기 하나 이상의 패리티 비트들 시퀀스의 인터리빙된 정렬을 갖는, 인터리빙된 데이터의 패킷을 형성하도록 동작가능한 멀티플렉서를 포함하고,
    상기 제 1 및 제 2 인터리버 중 하나는, 상기 L 비트-리버설 인터리빙 방식을 구현할 때, 메모리 내의 위치를 다수의 패딩 비트에 대응되는 것에 제공하지 않으면서, 상기 메모리 내의 위치를 상기 비트들의 시퀀스에 대응되는 것에 제공하는, 통신 시스템 장치.
  5. 제 4 항에 있어서,
    상기 일 인터리버는, 메모리 내의 위치에 대한 후보 어드레스 값을 생성하고, 상기 후보 어드레스 값을 소정의 값과 비교하며, 상기 소정의 값과 소정의 관계를 갖는 (bear) 후보 어드레스 값만을, 상기 입력 데이터 비트와 연관된 어드레스 값으로서 선택하도록 구성되는, 통신 시스템 장치.
  6. 제 1 사이즈의 구조 비트들의 시퀀스, 하나 이상의 제 2 사이즈의 패리티 비트들의 시퀀스를 발생시키기 위해, 터보 코드, 또는 LDPC (low density parity check) 코드에 따라 데이터 비트들의 시퀀스를 인코딩하는 수단;
    상기 구조 비트들의 시퀀스의 인터리빙된 정렬을 발생시키기 위해, 상기 구조 비트들의 시퀀스를 인터리빙하는 수단으로서, 상기 구조 비트들의 시퀀스의 인터리빙된 정렬을 발생시키기 위해 상기 구조 비트들의 시퀀스를 제 1 수의 제 1 패딩 비트와 제 1 프로세싱하는, 제 1 L 비트-리버설 인터리빙 방식을 구현하는 수단을 포함하고, 상기 제 1 수의 제 1 패딩 비트는, 상기 제 1 사이즈보다 더 크면서 가장 근접한 2 의 제곱승 (powers of two) 인 제 3 사이즈 및 상기 제 1 사이즈의 차이와 동일한, 상기 구조 비트들의 시퀀스를 인터리빙하는 수단;
    상기 하나 이상의 패리티 비트들 시퀀스의 인터리빙된 정렬을 발생시키기 위해, 상기 하나 이상의 패리티 비트들 시퀀스를 인터리빙하는 수단으로서, 상기 하나 이상의 패리티 비트들 시퀀스의 인터리빙된 정렬을 발생시키기 위해 상기 하나 이상의 패리티 비트들 시퀀스를 제 2 수의 제 2 패딩 비트와 제 2 프로세싱하는, 제 2 L 비트-리버설 인터리빙 방식을 구현하는 수단을 포함하고, 상기 제 2 수의 제 2 패딩 비트는, 상기 제 2 사이즈보다 더 크면서 가장 근접한 2 의 제곱승 (powers of two) 인 제 4 사이즈 및 상기 제 2 사이즈의 차이와 동일한, 상기 하나 이상의 패리티 비트들 시퀀스를 인터리빙하는 수단;
    상기 구조 비트들의 시퀀스의 인터리빙된 정렬 및 상기 하나 이상의 패리티 비트들 시퀀스의 인터리빙된 정렬을 갖는, 인터리빙된 데이터의 패킷을 형성하는 수단을 포함하고,
    상기 제 1 및 제 2 L 비트-리버설 인터리빙 방식을 구현하는 수단 중 하나는, 메모리 내의 위치를 다수의 패딩 비트에 대응되는 것에 제공하지 않으면서, 상기 메모리 내의 위치를 상기 비트들의 시퀀스에 대응되는 것에 제공하는 수단을 포함하는, 무선 통신 시스템 장치.
  7. 제 6 에 있어서,
    상기 제공하는 수단은,
    메모리 내의 위치에 대한 후보 어드레스 값을 생성하는 수단;
    상기 후보 어드레스 값을 소정의 값과 비교하는 수단; 및
    상기 소정의 값과 소정의 관계를 갖는 (bear) 후보 어드레스 값만을, 상기 입력 데이터 비트와 연관된 어드레스 값으로서 선택하는 수단을 포함하는, 무선 통신 시스템 장치.
  8. 통신 시스템에서 데이터를 처리하는 방법으로서,
    제 1 사이즈의 구조 비트들의 시퀀스, 제 2 사이즈의 패리티 비트들의 제 1 시퀀스, 및 상기 제 2 사이즈의 패리티 비트들의 제 2 시퀀스를 발생시키기 위해, 데이터 비트들의 시퀀스를 터보 코드에 따라 인코딩하는 단계;
    상기 구조 비트들의 시퀀스의 인터리빙된 정렬을 발생시키기 위해, 상기 구조 비트들의 시퀀스를 인터리빙하는 단계로서, 상기 구조 비트들의 시퀀스의 인터리빙된 정렬을 발생시키기 위해 상기 구조 비트들의 시퀀스를 제 1 수의 제 1 패딩 비트와 제 1 프로세싱하는, 제 1 L 비트-리버설 인터리빙 방식을 구현하는 단계를 포함하고, 상기 제 1 수의 제 1 패딩 비트는, 상기 제 1 사이즈보다 더 크면서 가장 근접한 2 의 제곱승 (powers of two) 인 제 3 사이즈 및 상기 제 1 사이즈의 차이와 동일한, 상기 구조 비트들의 시퀀스를 인터리빙하는 단계;
    상기 패리티 비트들의 제 1 시퀀스의 인터리빙된 정렬을 발생하기 위해, 상기 패리티 비트들의 제 1 시퀀스를 인터리빙하는 단계로서, 상기 패리티 비트들의 제 1 시퀀스의 인터리빙된 정렬을 발생시키기 위해 상기 패리티 비트들의 제 1 시퀀스를 제 2 수의 제 2 패딩 비트와 제 2 프로세싱하는, 제 2 L 비트-리버설 인터리빙 방식을 구현하는 단계를 포함하고, 상기 제 2 수의 제 2 패딩 비트는, 상기 제 2 사이즈보다 더 크면서 가장 근접한 2 의 제곱승 (powers of two) 인 제 4 사이즈 및 상기 제 2 사이즈의 차이와 동일한, 상기 패리티 비트들의 제 1 시퀀스를 인터리빙하는 단계;
    상기 패리티 비트들의 제 2 시퀀스의 인터리빙된 정렬을 발생하기 위해, 상기 패리티 비트들의 제 2 시퀀스를 인터리빙하는 단계로서, 상기 패리티 비트들의 제 2 시퀀스의 인터리빙된 정렬을 발생시키기 위해 상기 패리티 비트들의 제 2 시퀀스를, 상기 제 2 수와 동일한, 다수의 제 3 패딩 비트와 제 3 프로세싱하는, 제 2 L 비트-리버설 인터리빙 방식을 더 구현하는 단계를 포함하는, 상기 패리티 비트들의 제 2 시퀀스를 인터리빙하는 단계; 및
    상기 구조 비트들의 시퀀스의 인터리빙된 정렬 및 상기 패리티 비트들의 제 1 및 제 2 시퀀스의 인터리빙된 정렬을 갖는, 인터리빙된 데이터의 패킷을 형성하는 단계를 포함하고,
    상기 제 1 및 제 2 L 비트-리버설 인터리빙 방식을 구현하는 단계 중 하나는, 메모리 내의 위치를 다수의 패딩 비트에 대응되는 것에 제공하지 않으면서, 상기 메모리 내의 위치를 상기 비트들의 시퀀스에 대응되는 것에 제공하는 단계를 포함하는, 데이터 처리 방법.
  9. 제 8 항에 있어서,
    상기 제공하는 단계는,
    메모리 내의 위치에 대한 후보 어드레스 값을 생성하는 단계;
    상기 후보 어드레스 값을 소정의 값과 비교하는 단계; 및
    상기 소정의 값과 소정의 관계를 갖는 (bear) 후보 어드레스 값만을, 상기 입력 데이터 비트와 연관된 어드레스 값으로서 선택하는 단계를 포함하는, 데이터 처리 방법.
KR1020107028017A 2004-12-22 2005-12-22 프루닝된 비트-리버설 인터리버 KR20110009232A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/022,485 US7543197B2 (en) 2004-12-22 2004-12-22 Pruned bit-reversal interleaver
US11/022,485 2004-12-22

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020107012051A Division KR20100082023A (ko) 2004-12-22 2005-12-22 프루닝된 비트-리버설 인터리버

Publications (1)

Publication Number Publication Date
KR20110009232A true KR20110009232A (ko) 2011-01-27

Family

ID=36228605

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020107028017A KR20110009232A (ko) 2004-12-22 2005-12-22 프루닝된 비트-리버설 인터리버
KR1020107012051A KR20100082023A (ko) 2004-12-22 2005-12-22 프루닝된 비트-리버설 인터리버
KR1020077016205A KR20070087100A (ko) 2004-12-22 2005-12-22 프루닝된 비트-리버설 인터리버

Family Applications After (2)

Application Number Title Priority Date Filing Date
KR1020107012051A KR20100082023A (ko) 2004-12-22 2005-12-22 프루닝된 비트-리버설 인터리버
KR1020077016205A KR20070087100A (ko) 2004-12-22 2005-12-22 프루닝된 비트-리버설 인터리버

Country Status (8)

Country Link
US (3) US7543197B2 (ko)
EP (1) EP1839395A1 (ko)
JP (1) JP4897703B2 (ko)
KR (3) KR20110009232A (ko)
CN (1) CN101124731B (ko)
CA (1) CA2590964C (ko)
TW (1) TWI389461B (ko)
WO (1) WO2006069392A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170130322A (ko) * 2015-03-02 2017-11-28 삼성전자주식회사 송신 장치 및 그의 패리티 퍼뮤테이션 방법
US10312938B2 (en) 2015-03-02 2019-06-04 Samsung Electronics Co., Ltd. Transmitter and parity permutation method thereof

Families Citing this family (126)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7295509B2 (en) 2000-09-13 2007-11-13 Qualcomm, Incorporated Signaling method in an OFDM multiple access system
US9130810B2 (en) 2000-09-13 2015-09-08 Qualcomm Incorporated OFDM communications methods and apparatus
US8179954B2 (en) 2007-10-30 2012-05-15 Sony Corporation Odd interleaving only of an odd-even interleaver when half or less data subcarriers are active in a digital video broadcasting (DVB) standard
GB2454193B (en) 2007-10-30 2012-07-18 Sony Corp Data processing apparatus and method
US8885761B2 (en) 2003-03-25 2014-11-11 Sony Corporation Data processing apparatus and method
KR100713528B1 (ko) * 2004-03-12 2007-05-02 삼성전자주식회사 직교 주파수 분할 다중 접속 방식을 사용하는 통신시스템에서 서브 채널 신호 송신 장치 및 방법
US7392464B1 (en) * 2004-04-30 2008-06-24 Marvell International Ltd. Universal parity encoder
US9137822B2 (en) 2004-07-21 2015-09-15 Qualcomm Incorporated Efficient signaling over access channel
US9148256B2 (en) 2004-07-21 2015-09-29 Qualcomm Incorporated Performance based rank prediction for MIMO design
US7567621B2 (en) * 2004-07-21 2009-07-28 Qualcomm Incorporated Capacity based rank prediction for MIMO design
US7206886B2 (en) * 2005-02-24 2007-04-17 International Business Machines Corporation Data ordering translation between linear and interleaved domains at a bus interface
US9246560B2 (en) 2005-03-10 2016-01-26 Qualcomm Incorporated Systems and methods for beamforming and rate control in a multi-input multi-output communication systems
US9154211B2 (en) 2005-03-11 2015-10-06 Qualcomm Incorporated Systems and methods for beamforming feedback in multi antenna communication systems
US8446892B2 (en) 2005-03-16 2013-05-21 Qualcomm Incorporated Channel structures for a quasi-orthogonal multiple-access communication system
US9461859B2 (en) 2005-03-17 2016-10-04 Qualcomm Incorporated Pilot signal transmission for an orthogonal frequency division wireless communication system
US9520972B2 (en) 2005-03-17 2016-12-13 Qualcomm Incorporated Pilot signal transmission for an orthogonal frequency division wireless communication system
US9143305B2 (en) 2005-03-17 2015-09-22 Qualcomm Incorporated Pilot signal transmission for an orthogonal frequency division wireless communication system
US9184870B2 (en) 2005-04-01 2015-11-10 Qualcomm Incorporated Systems and methods for control channel signaling
US9036538B2 (en) 2005-04-19 2015-05-19 Qualcomm Incorporated Frequency hopping design for single carrier FDMA systems
US9408220B2 (en) 2005-04-19 2016-08-02 Qualcomm Incorporated Channel quality reporting for adaptive sectorization
US7685495B2 (en) 2005-05-12 2010-03-23 Qualcomm Incorporated Apparatus and method for channel interleaving in communications system
US8879511B2 (en) 2005-10-27 2014-11-04 Qualcomm Incorporated Assignment acknowledgement for a wireless communication system
US8611284B2 (en) 2005-05-31 2013-12-17 Qualcomm Incorporated Use of supplemental assignments to decrement resources
US8565194B2 (en) 2005-10-27 2013-10-22 Qualcomm Incorporated Puncturing signaling channel for a wireless communication system
US8462859B2 (en) 2005-06-01 2013-06-11 Qualcomm Incorporated Sphere decoding apparatus
US9179319B2 (en) 2005-06-16 2015-11-03 Qualcomm Incorporated Adaptive sectorization in cellular systems
US8599945B2 (en) 2005-06-16 2013-12-03 Qualcomm Incorporated Robust rank prediction for a MIMO system
US8885628B2 (en) 2005-08-08 2014-11-11 Qualcomm Incorporated Code division multiplexing in a single-carrier frequency division multiple access system
US9209956B2 (en) 2005-08-22 2015-12-08 Qualcomm Incorporated Segment sensitive scheduling
US20070041457A1 (en) 2005-08-22 2007-02-22 Tamer Kadous Method and apparatus for providing antenna diversity in a wireless communication system
US8644292B2 (en) 2005-08-24 2014-02-04 Qualcomm Incorporated Varied transmission time intervals for wireless communication system
US9136974B2 (en) 2005-08-30 2015-09-15 Qualcomm Incorporated Precoding and SDMA support
US8477684B2 (en) 2005-10-27 2013-07-02 Qualcomm Incorporated Acknowledgement of control messages in a wireless communication system
US9144060B2 (en) 2005-10-27 2015-09-22 Qualcomm Incorporated Resource allocation for shared signaling channels
US7661037B2 (en) * 2005-10-27 2010-02-09 Samsung Electronics Co., Ltd. LDPC concatenation rules for IEEE 802.11n systems
US8693405B2 (en) 2005-10-27 2014-04-08 Qualcomm Incorporated SDMA resource management
US9210651B2 (en) 2005-10-27 2015-12-08 Qualcomm Incorporated Method and apparatus for bootstraping information in a communication system
US9172453B2 (en) 2005-10-27 2015-10-27 Qualcomm Incorporated Method and apparatus for pre-coding frequency division duplexing system
US9225416B2 (en) 2005-10-27 2015-12-29 Qualcomm Incorporated Varied signaling channels for a reverse link in a wireless communication system
US9225488B2 (en) 2005-10-27 2015-12-29 Qualcomm Incorporated Shared signaling channel
US8045512B2 (en) 2005-10-27 2011-10-25 Qualcomm Incorporated Scalable frequency band operation in wireless communication systems
US8582509B2 (en) 2005-10-27 2013-11-12 Qualcomm Incorporated Scalable frequency band operation in wireless communication systems
US9088384B2 (en) 2005-10-27 2015-07-21 Qualcomm Incorporated Pilot symbol transmission in wireless communication systems
US8582548B2 (en) 2005-11-18 2013-11-12 Qualcomm Incorporated Frequency division multiple access schemes for wireless communication
KR100739182B1 (ko) * 2005-12-08 2007-07-13 엘지전자 주식회사 시공간 harq 기법을 제공하는 이동 통신 단말기 및 그방법
US7707479B2 (en) 2005-12-13 2010-04-27 Samsung Electronics Co., Ltd. Method of generating structured irregular low density parity checkcodes for wireless systems
US8831607B2 (en) 2006-01-05 2014-09-09 Qualcomm Incorporated Reverse link other sector communication
KR20070074256A (ko) * 2006-01-09 2007-07-12 삼성전자주식회사 셀룰러 망에서 릴레이를 통한 데이터 중계방법 및 이를지원하는 셀룰러 이동통신시스템
KR20070080392A (ko) * 2006-02-07 2007-08-10 삼성전자주식회사 저밀도 패러티 검사 부호의 천공 방법
US20110173509A1 (en) * 2006-09-18 2011-07-14 Availink, Inc. Bit mapping scheme for an ldpc coded 16apsk system
US8369448B2 (en) * 2006-09-18 2013-02-05 Availink, Inc. Bit mapping scheme for an LDPC coded 32APSK system
US8340070B2 (en) * 2006-10-03 2012-12-25 Qualcomm Incorporated Resource partitioning for wireless communication systems
KR101165638B1 (ko) * 2006-10-24 2012-07-17 엘지전자 주식회사 연속적인 길이를 제공하는 인터리버 제공 방법, 인터리빙방법 및 이에 의한 터보 인코더
US8266508B2 (en) * 2007-06-08 2012-09-11 Telefonaktiebolaget L M Ericsson (Publ) Computational efficient convolutional coding with rate matching
US8683305B2 (en) * 2007-08-14 2014-03-25 Texas Instruments Incorporated Rate matching and scrambling techniques for control signaling
WO2009038350A1 (en) * 2007-09-21 2009-03-26 Lg Electronics Inc. Method of mapping physical resource to logical resource in wireless communication system
CN100589327C (zh) * 2007-09-25 2010-02-10 华为技术有限公司 编码、解码方法及编码器、解码器
CN101399554B (zh) * 2007-09-30 2012-03-21 华为技术有限公司 一种基于ldpc码的交织方法和解交织方法及其装置
DK2056510T3 (da) * 2007-10-30 2013-05-21 Sony Corp Anordning og fremgangsmåde til databehandling
WO2009056801A1 (en) 2007-10-30 2009-05-07 Sony Corporation Data processing apparatus and method
TWI442731B (zh) * 2007-10-30 2014-06-21 Sony Corp 資料處理設備及方法
JP5247355B2 (ja) * 2007-10-31 2013-07-24 パナソニック株式会社 送信装置
US8494072B2 (en) * 2007-11-06 2013-07-23 Qualcomm Incorporated Frequency diverse control mapping of channel elements to resource elements
KR101387257B1 (ko) * 2007-11-22 2014-04-21 삼성전자주식회사 무선통신망에서 음성패킷을 전송하기 위한 장치 및 방법
US8572332B2 (en) * 2008-03-28 2013-10-29 Qualcomm Incorporated De-interleaving mechanism involving a multi-banked LLR buffer
US20090245423A1 (en) * 2008-03-28 2009-10-01 Qualcomm Incorporated De-Interlever That Simultaneously Generates Multiple Reorder Indices
US8345794B2 (en) * 2008-04-29 2013-01-01 Qualcomm Incorporated Encoded control channel information interleaving
US8392786B2 (en) * 2008-05-07 2013-03-05 Broadcom Corporation LDPC coding systems for 60 GHz millimeter wave based physical layer extension
KR101558562B1 (ko) * 2008-05-26 2015-10-07 엘지전자 주식회사 터보코드를 이용한 데이터 전송장치 및 방법
GB2460459B (en) * 2008-05-30 2012-07-11 Sony Corp Data processing apparatus and method
US20100085607A1 (en) * 2008-10-02 2010-04-08 Silverbrook Research Pty Ltd Method of encoding coding pattern
US8127105B2 (en) * 2008-11-04 2012-02-28 Qualcomm Incorporated Parallel pruned bit-reversal interleaver
US20100111145A1 (en) * 2008-11-05 2010-05-06 Broadcom Corporation Baseband unit having bit repetitive encoded/decoding
US8255760B2 (en) * 2008-11-05 2012-08-28 Broadcom Corporation Header encoding for single carrier (SC) and/or orthogonal frequency division multiplexing (OFDM) using shortening, puncturing, and/or repetition
US8306064B2 (en) * 2009-01-12 2012-11-06 Trane International Inc. System and method for extending communication protocols
US8413010B1 (en) 2009-03-12 2013-04-02 Western Digital Technologies, Inc. Data storage device employing high quality metrics when decoding logical block address appended to a data sector
CN101510782B (zh) * 2009-03-20 2012-01-04 华为技术有限公司 译码方法和系统
US8560696B2 (en) * 2009-04-28 2013-10-15 Intel Corporation Transmission of advanced-MAP information elements in mobile networks
TWI427936B (zh) * 2009-05-29 2014-02-21 Sony Corp 接收設備,接收方法,程式,及接收系統
US8543884B2 (en) * 2009-06-16 2013-09-24 Qualcomm Incorporated Communications channel parallel interleaver and de-interleaver
US8638244B2 (en) 2009-08-31 2014-01-28 Freescale Semiconductor, Inc. Encoding module, apparatus and method for determining a position of a data bit within an interleaved data stream
US8397123B2 (en) * 2009-09-30 2013-03-12 Qualcomm Incorporated Recursive realization of polynomial permutation interleaving
CN102388539B (zh) * 2010-02-10 2015-04-01 松下电器产业株式会社 发送装置、接收装置、发送方法及接收方法
US8683555B2 (en) * 2010-02-10 2014-03-25 Raytheon Company Systems and methods to prevent denial of service attacks
CN102792597A (zh) * 2010-03-08 2012-11-21 日本电气株式会社 纠错码解码装置、纠错码解码方法以及纠错码解码程序
JP5521722B2 (ja) * 2010-04-14 2014-06-18 沖電気工業株式会社 符号化装置、復号化装置、符号化・復号化システム、及び、プログラム
EP2706667A1 (en) * 2010-09-13 2014-03-12 Hughes Network Systems, LLC Method and apparatus for a parameterized interleaver design process
US8817912B1 (en) * 2010-10-27 2014-08-26 Marvell International Ltd. Phase-rotated tone-grouping modulation
CN102136888B (zh) * 2011-04-20 2013-02-20 大唐移动通信设备有限公司 一种子块解交织输入数据处理方法及装置
US8532112B2 (en) * 2011-09-23 2013-09-10 Lsi Corporation Interleaving for wideband code division multiple access
US9300510B2 (en) * 2011-12-08 2016-03-29 Lg Electronics Inc. Method of transmitting and receiving data unit in wireless local area network system and apparatus for the same
KR102198773B1 (ko) * 2013-09-17 2021-01-05 삼성전자주식회사 송신 장치 및 그의 펑처링 방법
US9774352B2 (en) * 2013-09-17 2017-09-26 Samsung Electronics Co., Ltd. Transmitting apparatus, and puncturing method thereof
US20160197625A1 (en) * 2013-09-26 2016-07-07 Sony Corporation Data processing device and data processing method
KR20160064092A (ko) * 2013-09-26 2016-06-07 소니 주식회사 데이터 처리 장치 및 데이터 처리 방법
EP3051704A4 (en) * 2013-09-26 2017-06-21 Sony Corporation Data processing device and data processing method
CN105556855A (zh) * 2013-09-26 2016-05-04 索尼公司 数据处理装置和数据处理方法
MX2016003553A (es) * 2013-09-26 2016-07-21 Sony Corp Dispositivo de procesamiento de datos y metodo de procesamiento de datos.
MX2016003551A (es) * 2013-09-26 2016-07-21 Sony Corp Dispositivo de procesamiento de datos y metodo de procesamiento de datos.
US9954708B2 (en) * 2013-11-15 2018-04-24 Intel Corporation Method and apparatus for frequency interleaving
WO2015137712A1 (en) 2014-03-14 2015-09-17 Samsung Electronics Co., Ltd. Method and apparatus for controlling interleaving depth
EP3113398B1 (en) * 2014-03-19 2020-04-22 Huawei Technologies Co., Ltd. Polar code rate-matching method and rate-matching device
CN105850059B (zh) * 2014-03-21 2020-01-31 华为技术有限公司 极性码的速率匹配方法和速率匹配装置
WO2015143593A1 (zh) 2014-03-24 2015-10-01 华为技术有限公司 极性码的速率匹配方法和速率匹配装置
JP6686894B2 (ja) * 2014-10-27 2020-04-22 ソニー株式会社 装置
US9473177B2 (en) * 2014-11-26 2016-10-18 Freescale Semiconductor, Inc. Turbo decoder with a low-power input format and associated method
CN105811996B (zh) 2014-12-30 2019-12-06 华为技术有限公司 一种基于准循环ldpc的数据处理方法及系统
WO2016140516A2 (en) * 2015-03-02 2016-09-09 Samsung Electronics Co., Ltd. Transmitter and parity permutation method thereof
CN111865499B (zh) * 2015-03-02 2023-07-21 三星电子株式会社 接收设备和接收方法
FR3037746B1 (fr) 2015-06-19 2020-10-02 Inst Mines Telecom Procede de construction d'un entrelaceur pour turbo-encodeur
US10784901B2 (en) 2015-11-12 2020-09-22 Qualcomm Incorporated Puncturing for structured low density parity check (LDPC) codes
US11043966B2 (en) 2016-05-11 2021-06-22 Qualcomm Incorporated Methods and apparatus for efficiently generating multiple lifted low-density parity-check (LDPC) codes
US10454499B2 (en) 2016-05-12 2019-10-22 Qualcomm Incorporated Enhanced puncturing and low-density parity-check (LDPC) code structure
US9917675B2 (en) 2016-06-01 2018-03-13 Qualcomm Incorporated Enhanced polar code constructions by strategic placement of CRC bits
US10469104B2 (en) 2016-06-14 2019-11-05 Qualcomm Incorporated Methods and apparatus for compactly describing lifted low-density parity-check (LDPC) codes
RU2720444C1 (ru) * 2017-02-10 2020-04-29 Телефонактиеболагет Лм Эрикссон (Пабл) Согласование скорости кольцевого буфера для полярных кодов
FR3064138B1 (fr) 2017-03-20 2021-05-07 Orange Procedes et dispositifs de codage a rendement compatible
US10312939B2 (en) 2017-06-10 2019-06-04 Qualcomm Incorporated Communication techniques involving pairwise orthogonality of adjacent rows in LPDC code
US20180367245A1 (en) * 2017-06-19 2018-12-20 Qualcomm Incorporated COMMUNICATION TECHNIQUES WITH SELF-DECODABLE REDUNDANCY VERSIONS (RVs) USING SYSTEMATIC CODES
EP3667962B1 (en) 2017-08-08 2022-10-26 Vivo Mobile Communication Co., Ltd. Method and device for cyclic redundancy check
CN109391348B (zh) * 2017-08-08 2020-06-02 维沃移动通信有限公司 循环冗余校验的方法和设备
US10972219B2 (en) * 2018-09-24 2021-04-06 Qualcomm Incorporated LDPC interleaver design for improved error floor performance
JP2021164092A (ja) * 2020-04-01 2021-10-11 株式会社スマート・ソリューション・テクノロジー 通信システム、通信端末、通信方法及びプログラム
CN114337927A (zh) * 2021-12-31 2022-04-12 Oppo广东移动通信有限公司 解码方法、装置、设备、存储介质、程序产品及通信芯片
CN116318552B (zh) * 2023-03-15 2023-09-22 归芯科技(深圳)有限公司 Turbo码的交织或解交织方法及其器件、通信芯片和装置
CN116566404B (zh) * 2023-07-11 2023-09-19 北京谷数科技股份有限公司 删余Turbo码交织映射关系的确定方法及装置

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2173036B1 (en) * 1998-08-17 2014-05-14 Dtvg Licensing, Inc Turbo code interleaver with near optimal performance
US6871303B2 (en) * 1998-12-04 2005-03-22 Qualcomm Incorporated Random-access multi-directional CDMA2000 turbo code interleaver
US6304991B1 (en) 1998-12-04 2001-10-16 Qualcomm Incorporated Turbo code interleaver using linear congruential sequence
KR100346170B1 (ko) 1998-12-21 2002-11-30 삼성전자 주식회사 통신시스템의인터리빙/디인터리빙장치및방법
KR100350459B1 (ko) 1998-12-26 2002-12-26 삼성전자 주식회사 통신시스템의인터리빙/디인터리빙장치및방법
JP3515036B2 (ja) * 1999-02-19 2004-04-05 株式会社エヌ・ティ・ティ・ドコモ インターリービング方法、インターリービング装置、ターボ符号化方法及びターボ符号化装置
FR2790621B1 (fr) * 1999-03-05 2001-12-21 Canon Kk Dispositif et procede d'entrelacement pour turbocodage et turbodecodage
US6314534B1 (en) * 1999-03-31 2001-11-06 Qualcomm Incorporated Generalized address generation for bit reversed random interleaving
BR0112404A (pt) * 2000-07-13 2003-11-25 Qualcomm Inc Esquema de codificação em blocos de distância máxima
CN1120594C (zh) * 2000-11-17 2003-09-03 北京邮电大学 权位倒置交织器
US6845482B2 (en) * 2001-02-28 2005-01-18 Qualcomm Incorporated Interleaver for turbo decoder
US7170849B1 (en) * 2001-03-19 2007-01-30 Cisco Systems Wireless Networking (Australia) Pty Limited Interleaver, deinterleaver, interleaving method, and deinterleaving method for OFDM data
KR100539862B1 (ko) 2001-04-04 2005-12-28 삼성전자주식회사 부호분할다중접속 이동통신시스템에서 데이타 송/수신장치및 방법
US6885711B2 (en) * 2001-06-27 2005-04-26 Qualcomm Inc Turbo decoder with multiple scale selections
KR100860660B1 (ko) * 2002-01-09 2008-09-26 삼성전자주식회사 통신시스템의 인터리빙 장치 및 방법
CN100568745C (zh) 2002-02-06 2009-12-09 三星电子株式会社 通信系统中的交织器和交织方法
US6636568B2 (en) * 2002-03-01 2003-10-21 Qualcomm Data transmission with non-uniform distribution of data rates for a multiple-input multiple-output (MIMO) system
US8208364B2 (en) * 2002-10-25 2012-06-26 Qualcomm Incorporated MIMO system with multiple spatial multiplexing modes
EP1587217A1 (en) 2004-04-15 2005-10-19 Istituto superiore Mario Boella per le Tecnologie dell'Informazione e delle Telecomunicazioni Pruning methods for the generation of S-random interleavers
WO2006055718A2 (en) 2004-11-16 2006-05-26 Qualcomm Incorporated Closed-loop rate control for a mimo communication system

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170130322A (ko) * 2015-03-02 2017-11-28 삼성전자주식회사 송신 장치 및 그의 패리티 퍼뮤테이션 방법
KR20180103795A (ko) * 2015-03-02 2018-09-19 삼성전자주식회사 송신 장치 및 그의 패리티 퍼뮤테이션 방법
KR20190042518A (ko) * 2015-03-02 2019-04-24 삼성전자주식회사 송신 장치 및 그의 패리티 퍼뮤테이션 방법
US10312938B2 (en) 2015-03-02 2019-06-04 Samsung Electronics Co., Ltd. Transmitter and parity permutation method thereof
US10326474B2 (en) 2015-03-02 2019-06-18 Samsung Electronics Co., Ltd. Transmitter and parity permutation method thereof
KR20200056974A (ko) * 2015-03-02 2020-05-25 삼성전자주식회사 송신 장치 및 그의 패리티 퍼뮤테이션 방법
US11196448B2 (en) 2015-03-02 2021-12-07 Samsung Electronics Co., Ltd. Transmitter and parity permutation method thereof
US11777523B2 (en) 2015-03-02 2023-10-03 Samsung Electronics Co., Ltd. Transmitter and parity permutation method thereof

Also Published As

Publication number Publication date
US20060156199A1 (en) 2006-07-13
CA2590964C (en) 2014-05-13
CN101124731B (zh) 2011-12-07
KR20070087100A (ko) 2007-08-27
US8156390B2 (en) 2012-04-10
EP1839395A1 (en) 2007-10-03
JP4897703B2 (ja) 2012-03-14
US8156389B2 (en) 2012-04-10
CN101124731A (zh) 2008-02-13
TWI389461B (zh) 2013-03-11
US7543197B2 (en) 2009-06-02
WO2006069392A1 (en) 2006-06-29
US20090254795A1 (en) 2009-10-08
US20090327843A1 (en) 2009-12-31
KR20100082023A (ko) 2010-07-15
JP2008526134A (ja) 2008-07-17
TW200637172A (en) 2006-10-16
CA2590964A1 (en) 2006-06-29

Similar Documents

Publication Publication Date Title
KR20110009232A (ko) 프루닝된 비트-리버설 인터리버
JP3730238B2 (ja) 適用形チャネル符号化方法及び装置
US8543884B2 (en) Communications channel parallel interleaver and de-interleaver
EP1538757B1 (en) Rate matching and channel interleaving for a communications system
EP2165445B1 (en) Computationally efficient convolutional coding with rate-matching
KR101121284B1 (ko) 고속 데이터 레이트들을 위한 터보 인터리버
CA2337161C (en) Interleaving apparatus and method for use in serial concatenated convolutional code encoder in a mobile communication system
WO2000035103A9 (en) Turbo code interleaver using linear congruential sequences
CN101636914A (zh) 用于编码和解码数据的方法和装置
JP2003244257A (ja) 多値変調に適した符号語マッピング方法
EP2092652A2 (en) Quadratic permutation polynomial interleaver/de-interleaver for turbo codes
CA2366581C (en) Intra-row permutation for turbocode
US7873897B2 (en) Devices and methods for bit-level coding and decoding of turbo codes
Rashed et al. Transmission of voice signal: BER performance analysis of different FEC schemes based OFDM system over various channels
CN100463370C (zh) 输入控制装置及输入控制方法
WO2008105588A1 (en) Transmitting device and method and receiving device and method in communication system
Block Low-Rate FEC for $ M $-ary Orthogonal Modulation
KR20050003835A (ko) 다중접속 다중 캐리어 통신 시스템의 오류정정 장치

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
J201 Request for trial against refusal decision
AMND Amendment
B601 Maintenance of original decision after re-examination before a trial
J301 Trial decision

Free format text: TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20120215

Effective date: 20120921