본 출원은 본 명세서 내에서 참조용으로 포함되고 2007년 3월 12일에 출원된, 미국 가 특허 출원 일련번호 60/906,382 로부터 35 U.S.C § 119(e)에 근거하여 우선권을 주장한다. 본 출원은 본 명세서 내에서 참조용으로 포함되고 본 출원과 동시에 출원된, '나머지 바이트들을 이용한 고 선명 비디오 데이터 처리 방법 및 시스템' 이라는 명칭의 미국 특허 출원(Attorney Docket Number: SAMINF.104A) 과도 관련된다.
특정 실시예들은 무선 채널 상으로 송신원에서 수신원까지 비압축 HD 비디오 정보를 전송하기 위한 방법 및 시스템을 제공한다.
무선 고 선명(High Definition: HD) 오디오/비디오(Audio/Video: AV) 시스템 내에서 실시예들의 예시 구현이 이하 기술될 것이다. 도 1은 특정 실시예에 따라, A/V 디바이스 조정자 및 A/V 스테이션들과 같은 A/V 디바이스들 간 비압축 HD 비디오 전송을 구현하는 무선 네트워크(100)의 기능 블록도를 나타낸다. 다른 실시예로, 하나 이상의 디바이스들은 PC와 같은 컴퓨터일 수 있다. 네트워크(100)는 디바이스 조정자(112) 및 복수의 A/V 스테이션들(114)(예. 디바이스 1, 디바이스 2, ..., 디바이스 N)을 포함한다. A/V 스테이션들(114)은 디바이스들 간 통신을 위해, 저율(Low Rate: 이하 LR) 무선 채널(116)(도 1에서 점선)을 이용하고, 고율(High Rate: 이하 HR) 채널(118) (도 1에서 실선)을 이용할 수 있다. 디바이스 조정자(112)는 스테이션들(114)과의 통신을 위해 LR 채널(116) 및 HR 무선 채널(118)을 이용한다.
각각의 스테이션(114)은 다른 스테이션들(114)과의 통신을 위해 LR 채널(116)을 이용한다. HR 채널(118)은 비압축 HD 비디오 전송을 지원하기 위해, 예를 들면, 수 Gbps(Gigabits per second) 대역폭을 갖는, 빔형성에 의해 설정된 방향성 빔으로 일방향 유니캐스트 전송을 지원한다. 예를 들면, 셋톱 박스는 고율 채널(118)로 HDTV에 비압축 비디오를 전송할 수 있다. 특정 실시예에서, LR 채 널(116)은 예를 들면, 40 Mbps까지의 처리율을 갖는 양방향 전송을 지원할 수 있다. LR 채널(116)은 수신확인 (Acknowledgement: 이하 ACK) 프레임들과 같은 제어 프레임들을 전송하는데 주로 사용된다. 예를 들면, LR 채널(116)은 HDTV에서 셋톱 박스로 ACK을 전송할 수 있다. 오디오 및 압축 비디오 같은 LR 데이터가 LR 채널 상으로, 두 디바이스 간에 직접 전송될 수도 있다. 시간 분할 이중화(Time Division Duplexing: TDD)가 HR 및 LR 채널에 적용된다. 특정 실시예에서, 특정 시점에 LR 및 HR 채널들이 전송을 위해 병렬적으로 사용될 수 없다. 빔형성 기술이 LR 및 HR 채널들 모두에 사용될 수 있다. LR 채널은 전방향 전송도 지원할 수 있다.
일 예로, 디바이스 조정자(112)는 비디오 정보의 수신원(이하 '수신원 112')이고, 스테이션(114)은 비디오 정보의 송신원(이하 '송신원 114')이다. 예를 들면, WLAN 유형인 홈 무선 네트워크 환경에서, HDTV 세트에서와 같이, 수신원(112)은 비디오 및/또는 오디오 데이터의 수신원일 수 있다. 또 다른 실시예로, 수신원(112)은 프로젝터일 수 있다. 송신원(114)은 비압축 비디오 또는 오디오 송신원일 수 있다. 예시 송신원(114)은 셋톱 박스, DVD 플레이어, 레코더, 디지털 카메라, 캠코더 및 다른 컴퓨팅 디바이스(예. 랩톱, 데스크톱, PDA 등) 등을 포함한다.
도 2는 예시 통신 시스템(200)의 기능 블록도를 도시한다. 시스템(200)은 무선 트랜스미터(202)와 무선 리시버(204)를 포함한다. 트랜스미터(202)는 물리(Physical: 이하 PHY) 계층(206), MAC 계층(208) 및 응용 계층(210)을 포함한다. 유사하게, 리시버(204)는 PHY 계층(214), MAC 계층(216) 및 응용 계층(218)을 포함한다. PHY 계층들은 무선 매체(201)를 통해 하나 이상의 안테나들을 거쳐 트랜스미터(202)와 리시버(204) 간에 무선 통신을 제공한다.
트랜스미터(202)의 응용 계층(210)은 A/V 전처리 모듈(211)과 오디오 비디오 제어(AV/C) 모듈(212)을 포함한다. A/V 전처리 모듈(211)은 비압축 비디오의 분할과 같은 A/V 전처리 기능을 수행할 수 있다. AV/C 모듈(212)은 A/V 능력 정보를 교환하기 위한 표준 방법을 제공한다. 연결 시작 전, AV/C 모듈은 사용될 A/V 형식을 협의하고, 연결할 필요가 없게 된 때, AV/C 명령들이 연결을 끊기 위해 사용된다.
트랜스미터(202)에서, PHY 계층(206)은 LR 채널(203) 및 HR 채널(205)을 포함하는데, 상기 채널들은 RF (Radio Frequency) 모듈(207) 및 MAC 계층(208)과 통신하기 위해 사용된다. 특정 실시예들에서, MAC 계층(208)은 패킷화 모듈(미도시)을 포함할 수 있다. 트랜스미터(202)의 PHY/MAC 계층들은 패킷들에 PHY 및 MAC 헤더들을 추가하여, 무선 채널(201)로 리시버(204)에게 패킷들을 전송한다.
무선 리시버(204)에서, PHY/MAC 계층들은(214, 216) 수신된 패킷들을 처리한다. PHY 계층(214)은 하나 이상의 안테나들에 연결된 RF 모듈(213)을 포함한다. LR 채널(215) 및 HR 채널(217)은 MAC 계층(216) 및 RF 모듈(213)과 통신하기 위해 사용된다. 리시버(204)의 응용 계층(218)은 A/V 후처리 모듈(219)과 AV/C 모듈(220)을 포함한다. A/V 후처리 모듈(219)은 예를 들면, 비압축 비디오를 재생성하기 위해 A/V 전처리 모듈(211)의 처리 방법을 역으로 수행할 수 있다. AV/C 모듈(220)은 트랜스미터(202)의 AV/C 모듈(212)과 상호보완적인 방식으로 동작한다.
프레임 기반의 버스티한 통신 시스템에서, 정보 바이트들은 전송 전에 패킷들/프레임들로 일반적으로 그룹핑된다. 정보 바이트들의 패킷화는 일반적으로 간단하다. 그러나, 패킷화가 적절하게 수행되지 않는 경우, 무시할 수 없는 효율 손실이 발생할 수 있다. 이는 각각의 프레임/패킷의 끝 부분으로 갈수록 특별히 사실이다.
무선 비디오 영역 네트워크(Wireless Video Area Network: WVAN)에 대한 전형적인 HD 비디오 데이터 트랜스미터에서, 패킷의 끝 부분으로 가면서 패킷화 작업은 간단하지 않은데, 이는 트랜스미터가 리드 솔로몬(Reed Solomon: RS) 코드들, 뒤이은 아우터 블록 인터리버 코드 및 직교 주파수 분할 다중 (Orthogonal Frequency Division Multiplexing: OFDM) 셋업에서 병렬적인 복수의 컨버루셔널 코드들을 일반적으로 이용하기 때문이다.
일 실시예로, 정수 OFDM 심볼들이 생성됨을 확실하게 하기 위해, 고율 PHY 계층(High Rate Physical Layer: HRP)은 들어오는 데이터에 어떤 연산을 수행하기에 앞서, 스터프 비트들이라고 일반적으로 불리는, 추가 비트들을 비트 스트림에 추가한다. 스터프 비트들을 비트스트림 끝에 추가하기 전에, 스터프 비트들은 전형적으로 '0'으로 설정된다. HRP는 PHY 계층 헤더 필드, MAC 헤더 필드 및 헤더 체크 시퀀스(Header Check Sequence: HCS) 필드 결합에 대한, 정수 OFDM 심볼들을 생성하기 위해 필요한 최소 개수의 스터프 비트들을 일반적으로 추가한다. 수신원은 이 러한 추가 비트들을 수신한 후 전형적으로 폐기한다. 또한, HRP 모드를 변경하는 각각의 서브패킷들과 마지막 서브패킷에 대한, 정수 OFDM 심볼들을 생성하기 위해 HRP는 최소 개수의 스터프 비트들을 일반적으로 추가한다. 이러한 추가 비트들은 MAC 프로토콜 데이터 유닛 (MAC Protocol Data Unit: MPDU) 길이 필드 계산에 포함되지 않고 수신원에 의해 수신된 후 폐기된다.
IEEE 802.11n 표준에서, 저밀도 패리티 체크(Low Density Parity Check: LDPC) 코드된 OFDM 시스템을 위한 인코딩 프로시져가 정의된다. 디자인은 코딩 성능과 패딩 효율성을 향상시키면서, 동시에 LDPC 코드워드 경계와 OFDM 심볼 경계 모두를 만족시키고자 한다. 무선 HD 비디오 데이터 트랜스미터에서, 802.11n 경우와 비교하면, 더 많은 제약이 있는데, 이는 무선 트랜스미터가 RS 코드워드 경계, 블록 아우터 인터리버 경계, 아우터 인터리버 후 컨버루셔널 코드에 대한 테일 비트들 패딩 및 OFDM 심볼 경계를 만족시킬 필요가 있기 때문이다. 따라서, WVAN 시스템에서, 디자인은 일반적으로 더 복잡하다.
컨버루셔널 코드와 결합된 RS 코드가 이용되는 DVB-T (Digital Video Broadcast - Terrestrial) 표준에서, 인코딩 프로시져는 무선 HD 트랜스미터보다 훨씬 간단하다. 이는 블록 인터리버 대신, DVB-T 시스템에서 컨버루셔널 아우터 인터리버가 사용되고, 하나의 컨버루셔널 코드만이 사용되기 때문이다.
짧은 영역에서 수 Gbps(Gigabits per second) 비디오/데이터 통신을 목적으로 하는 전형적인 WVAN 시스템에서, 정보 바이트들은 균등 분할되어 두 가지로 분 기되는데, 각각의 분기에 대해 다른 변조 및 코딩 방식이 이용될 있다. 이로써, 두 가지 분기 데이터가 서로 다른 수준의 에러 보호를 받는, 상이한 에러 보호 개념을 수용할 수 있다.
도 3은 본 발명의 일 실시예에 따른, 예시 HD 비디오 데이터 트랜스미터 시스템(300)을 도시한다. 시스템(300)의 특정 요소들은 생략되거나 시스템(300)의 다른 요소들과 결합될 수 있다. 또 다른 실시예로, 특정 요소는 복수의 부(sub) 요소들로 분해될 수 있다. 시스템(300)의 특정 요소들의 순서는 변경될 수 있다. 또한, 도 3에서 도시되지 않은 특정 요소들이 시스템(300)에 추가될 수 있다. 더욱이, 도 3에서 도시된 각각의 구성요소들의 특징들은 단지 예시들이고, 많은 다른 수정들도 가능하다. 일 예로, 도 3의 시스템(300)의 모든 요소들은 PHY 계층(206)(도 2)에 속한다. 일 예로, 데이터의 최상위 비트들(Most Significant Bit: MSB)과 최하위 비트들(Least Significant Bit: LSB)은 에러 코딩과 관련하여 동등하게 보호된다. 또 다른 실시예로, MSB들과 LSB들은 에러 코딩과 관련하여 동등하지 않게 보호된다. 일 실시예로, 도 3의 시스템(300)의 모든 요소들은 소프트웨어 또는 하드웨어 또는 이들의 결합으로 구체화될 수 있다.
일 실시예로, RS 인코더들(304, 306)을 이용하는 대신, BCH(Bose, Ray-Chaudhuri, Hocquenghem) 인코더와 같은 다른 아우터 인코더들이 이용될 수도 있다. 일 실시예로, 하나 이상의 컨버루셔널 인코더들(312)을 이용하는 대신, 선형 블록 인코더와 같은 다른 이너 인코더들이 이용될 수도 있다. 일 실시예로, 각각의 컨버루셔널 인코더들(312)은 복수의 입력 데이터 비트들을 인코드하는 병렬 컨버루셔널 인코더들을 복수 개 포함할 수 있다. 본 실시예에서, 시스템(300)은 각각의 아우터 인터리버들(308, 310) 및 각각의 컨버루셔널 인코더들(312) 사이에 일반적으로 위치한, 적어도 하나의 파서(미도시)를 더 포함할 수 있는데, 상기 파서는 아우터 인터리브된 데이터 비트들을 파스하여 컨버루셔널 인코더들(312) 중 하나에 대응시킨다. 그러나, 편의상, 도 3 시스템은 RS 인코더들과 컨버루셔널 인코더들에 기반하여 기술될 것이다.
또 다른 실시예로, RS 인코더(304, 306)와 아우터 인터리버(308, 310)를 한 쌍으로 이용하는 대신, 단일 RS(또는 아우터) 인코더와 단일 아우터 인터리버를 갖는 것도 가능하다. 또 다른 실시예로, 두 개 이상의 RS 인코더들, 아우터 인터리버들, 컨버루셔널 인코더들 및 멀티플렉서들을 갖는 것도 가능하다.
도 3을 참조하면, 시스템(300)은 MAC 계층(도 2의 208)으로부터 정보 패킷을 수신한다. 일 실시예로, 스크램블러(302)는 수신된 패킷을 스크램블하고, 최상위 비트들(MSBs)과 최하위 비트들(LSBs)을 제 1 및 제 2 RS 인코더들(304, 306)에 각각 출력한다.
RS 인코더들(304, 306)은 각각 MSB들과 LSB들을 인코드한다. 제 1 및 제 2 아우터 인터리버들은(308, 310)은 RS 인코드된 데이터를 각각 아우터인터리브한다. 일 실시예로, 각각의 아우터 인터리버들(308, 310)은 블록 인터리버이거나 컨버루셔널 인터리버이다. 또 다른 실시예로, 다른 형태의 인터리버들도 가능하다.
컨버루셔널 인코더(들)(312)은 아우터 인터리브된 데이터에 컨버루셔널 인코딩과 펑처링을 수행하고, 예를 들면, MSB들과 LSB들 각각에 대응하는 데이터 4 비트들을 멀티플렉서(314)에 출력한다. 일 실시예로, 컨버루셔널 인코더들(312)은 복수의 컨버루셔널(또는 이너) 인코더들을 포함할 수 있는데, 이 중 몇몇은 MSB들을 위한 것이고 다른 몇몇은 LSB들을 위한 것이다. 본 실시예에서, MSB 데이터에 대한 컨버루셔널 인코더들의 개수는 LSB 데이터에 대한 이너 인코더들의 개수와 동일(예. 4와 4)할 수 있다. 또 다른 실시예로, MSB 데이터에 대한 컨버루셔널 인코더들의 수는 LSB 데이터에 대한 컨버루셔널 인코더들의 수와 다를 수(예. 6과 2) 있다. 일 실시예로, 각각의 컨버루셔널 인코더들은 모든 입력 데이터 비트들에 대해 동등한 에러 보호(Equal Error Protection: EEP)를 제공할 수 있다. 또 다른 실시예로, 컨버루셔널 인코더들은 모든 입력 데이터 비트들에 대해 동등하지 않은 에러 보호 (Unequal Error Protection: UEP)를 제공할 수 있다.
멀티플렉서(314)는 컨버루셔널 인코더들(312)로부터의 비트 스트림 출력을 멀티플렉스하여, 멀티플렉스된 데이터 스트림을 비트 인터리버(316)에 제공한다. 비트 인터리버(316)는 멀티플렉스된 데이터 스트림을 비트 인터리브한다. 심볼 매퍼(318)는 비트 인터리브된 데이터에, 직교 진폭 변조 (Quadrature Amplitude Modulation: QAM) 매핑과 같은 심볼 매핑을 수행한다. 파일롯/DC 널 삽입 유닛(320)과 톤 인터리버(322)는 파일롯/DC 널 삽입과 톤 인터리빙을 각각 수행한다. 역 고속 푸리에 변환 (Inverse Fast Fourier Transform: IFFT) 유닛 (324)은 톤 인 터리버(322) 출력에 IFFT 처리를 수행한다. 가드 인터벌 유닛(326)과 심볼 쉐이핑 유닛(328)은 IFFT 처리된 데이터에 대해 가드 인터벌과 심볼 쉐이핑을 차례로 수행한다. 일 실시예로, IFFT 유닛(324)과 가드 인터벌 유닛(326)은 함께 직교 주파수 분할 다중(Orthogonal Frequency Division Multiplexing: OFDM) 변조를 수행한다. 데이터 패킷을 무선 채널(201) (도 2) 상으로 HD 비디오 데이터 리시버에게 전송하기 전, 업컨버전 유닛(330)은 심볼 쉐이핑 유닛(328)의 출력에 업컨버전을 수행한다. 일 실시예로, HD 비디오 데이터 리시버는 트랜스미터 시스템(300)의 컨버루셔널 인코더(들)에 대응하는, 단일 컨버루셔널 디코더 또는 복수의 컨버루셔널 디코더들을 포함할 수 있다.
일 실시예로, 도 3에 도시된 바와 같이, 각각의 분기는 RS 코드 (224, 216, t=4)에 의해 처음으로 인코드되고, 예를 들면 4 x 224 (깊이 4 아우터 인터리버) 크기의 블록 인터리버(308, 310)가 뒤따른다. 각각의 분기에 대해, 인터리브된 출력은, 예를 들면 M = 4인 병렬 컨버루셔널 인코더들(312)로 파스된다. 각각의 컨버루셔널 코드에 대해, RS 코드를 더 단축함으로써, 특정 길이의, 모두 '0'으로 된 테일 비트들이 아우터 인터리버(308, 310)의 출력으로 삽입된다. 테일 비트들의 삽입은 리시버 측에서 컨버루셔널 코드들을 디코딩하는 작업을 단순하게 한다.
일 실시예에 따라 테일 비트들을 삽입하는 단계를 더 기술하면, 정보 심볼들은 동일한 크기의 유닛들로 분할되고, 각각의 유닛은 동일한 4 x K 정보 심볼들을 포함하여, RS 인코딩 후의 각각의 유닛이 인터리버 크기와 대응되도록 한다. 본 실 시예에서, 종결 유닛 (또는 최종 유닛)은 0 ≤ q < 4 x K 심볼들을 가질 수 있고, q는 상기 범위 내에서 임의 값을 가질 수 있다.
일 실시예로, 종결 패킷은 4 x (K - M) 정보 심볼들을 포함하고, 각각의 심볼은 예를 들면, 8 비트 길이이다. 추가적인 '0'들이 데이터 패킷들에 추가될 수 있는데(이후 추가될 컨버루셔널 코드들에 대한 제로-테일-비트와 함께), 이는 전체 효율성을 떨어트릴 것이다. 각각의 유닛은 4K 심볼들(또는 32K 비트들)이기 때문에, 각각의 서브패킷(대략 50 ㎲ 길이)은 1080i(1080 인터레이스된 스캔)에 대해 10 유닛들까지만 포함할 수 있다. 따라서, RS 인코더와 블록 인터리버의 경계를 만족시키기 위해, 상기 패킷화는 1080i에 대해, 약 5%의 평균 효율성 감소와 약 10%의 최대 효율성 감소에 이른다.
본 발명의 일 실시예는 무선 HD 비디오 통신 시스템에 대한 정보 비트들을 패킷화하는 체계적인 방법을 제공하고, 디코딩 성능을 향상시키면서 더 높은 패딩 효율성(예. 훨씬 더 효율적인 패딩)을 제공한다.
도 3 시스템 동작을 요약하면, 데이터는 처음으로 RS 인코드되고 이후 예를 들면, 깊이 4 블록 인터리버를 이용하여 아우터 인터리브된다. 인터리브된 데이터는 예를 들면, 8 병렬 컨버루셔널 인코더들로 파스되고, 각각의 컨버루셔널 인코더는 종결 테일 비트들을 요구한다. 컨버루셔널 인코드된 데이터 비트들은 함께 멀티플렉스되고, OFDM 변조를 위해 인터리브되어 QAM 컨스틸레이션으로 매핑된다. 일 실시예로, 전송된 데이터 비트들은 이하 사항을 만족시킨다.: (1) 정수 RS 코드워 드, (2) 정수 아우터 인터리버 크기, (3) CC 인코딩 전에 테일 비트들이 삽입될 필요가 있고, (4) 추가 패딩 비트들이 정수 OFDM 심볼들을 확실하게 하기 위해 필요하다.
편의상, 상기 4가지 요구사항을 만족하는, 도 4 내지 도 11로 도시된 네 가지 인코딩 방식이 기술될 것이다. 전형적으로, 추가 패딩 비트들이 삽입되고 전송되면서, 더 많은 패딩 비트들이 추가되어 전송 효율성이 더 떨어진다. 따라서, 적어도 일 실시예는 코딩 성능과 시스템의 단순성을 유지하면서 효율성을 최대화한다. 네 가지 방식은 단지 예시이고 다른 방식도 가능할 수 있다. 일 실시예로, 네 가지 방식이 도 3 시스템과 함께 구현될 수 있다.
방식 1
도 4는 본 발명의 일 실시예에 따른, 무선 비디오 영역 네트워크 (Wireless Video Area Network: WVAN)를 위한 HD 비디오 데이터 트랜스미터의 인코딩 절차(500) (도 5)를 나타내는 개념도를 도시한다. 도 5는 본 발명의 일 실시예에 따른, 인코딩 절차(500)를 위한 예시 순서도이다.
일 실시예에 따라, 인코딩 절차(500)는 C 또는 C++ 또는 또 다른 적합한 프로그래밍 언어와 같은 전형적인 프로그래밍 언어로 구현된다. 본 발명의 일 실시예에 따라, 프로그램은 WVAN을 위한 HD 비디오 데이터 트랜스미터, 예를 들면 도 1로 도시된 바와 같은 디바이스 조정자(112) 또는 디바이스들 (1 내지 N) 에서, 컴퓨터로 접근 가능한 저장 매체 상에 저장된다. 또 다른 실시예로, 본 발명의 일 실시예 에 따라 전송 절차(500)를 수행할 수 있는 한, 프로그램은 다른 시스템 내에 저장될 수 있다. 저장 매체는 정보를 저장하기 위한 다양한 기술들 중 하나를 포함할 수 있다. 일 실시예로, 저장 매체는 랜덤 액세스 메모리(Random Access Memory: RAM), 하드디스크들, 플로피 디스크들, 디지털 비디오 디바이스들, 컴팩트 디스크들, 비디오 디스크들 및/또는 다른 광 저장 매체들 등을 포함한다. 또 다른 실시예로, 적어도 디바이스 조정자(112) 및 디바이스들 (1 내지 N) 중 하나는 전송 절차(900)를 수행하도록 프로그램되거나 구성된 프로세서(미도시)를 포함한다. 프로그램은 프로세서 또는 조정자(112) 및/또는 디바이스들(1 내지 N)의 메모리 내에 저장될 수 있다. 다양한 실시예들에 따라, 프로세서는 예를 들면, ⅰ) 개선된 RISC 머신 (ARM) 마이크로컨트롤러, ⅱ) 인텔 사의 마이크로프로세서들(예. 펜티엄 계열의 마이크로프로세서들) 및 ⅲ) 마이크로소프트 사의 윈도우 운영 체제들 (예. 윈도우 95, 윈도우 98, 윈도우 2000 또는 윈도우 NT) 에 기반한 구성을 가질 수 있다. 일 실시예로, 프로세서는 단일 칩 또는 멀티칩 마이크로 프로세서들, 디지털 신호 프로세서들, 임베디드 마이크로 프로세서들 및 마이크로컨트롤러들 등을 이용하는 다양한 컴퓨터 플랫폼들로 구현된다. 또 다른 실시예로, 프로세서는 유닉스, 리눅스, 마이크로소프트 DOS, 마이크로소프트 윈도우 2000/9x/ME/XP, 맥킨토시 OS, OS/2 등과 같은 다양한 운영 체제로 구현된다. 또 다른 실시예로, 전송 프로시저(500)는 임베디드 소프트웨어로 구현될 수 있다. 실시예들에 따라, 도 5에 추가 상태들이 추가되고, 다른 상태들이 제거되거나 상태들의 순서가 변경될 수 있다. 본 단락의 명세는 도 6 내지 11로 도시된 나머지 방식에 적용된다.
도 3 내지 5를 참조하여, 방식 1 인코딩 절차의 동작이 더 자세히 기술될 것이다. 편의상, 아우터 인코더는 RS 인코더이고 이너 인코더는 컨버루셔널 인코더라고 가정된다. 다른 아우터 인코더들 또는 다른 이너 인코더들(예를 들면 상기 기술된 바와 같은)이 사용될 수도 있다. 도 6 내지 11로 도시된 나머지 방식도 동일하다.
일 실시예로, 방식 1은 네 가지 방식 중, 가장 직접적인 인코딩 절차를 제공한다. 일 실시예로, 시스템(300)은 MAC 계층(502)으로부터 L 정보 바이트들(400)을 수신한다. 정보 바이트들(400)은 주 코드워드들(402)과 나머지 코드워드들(404)을 포함한다. 나머지 코드워드들(404)은 예를 들면, 4 코드워드들보다 적고 정보 패킷(400)의 마지막에 위치한다. 정보 바이트들(400)의 각각의 블록은 예를 들면, 1K 바이트 길이를 갖는 코드워드를 나타내고, K =1024 이다. 이는 도 6 내지 11로 도시된 나머지 방식에도 적용된다.
시스템 (300)은 정보 바이트들(402)을 RS 코드 (N, K, t)로 RS 인코드하는데, K는 정보 바이트들의 수이고, N은 코드워드 내의 바이트 수이고, t는 정정 능력이다(504). 도 4로 도시된 바와 같이, RS 인코딩 후, 2t(예. 8) 바이트의 패리티 비트들(408)이, 코드워드 당 추가되어 N 바이트 크기의 코드워드들을 구성한다. 세 가지 나머지 코드워드들 (412a 내지 412c) 중 마지막 코드워드(412c)는 예를 들면, (m+2t, m)으로 단축되고, m = mod (L, K) (506)이다. 이는 전송 시간을 줄이고자 하는 것인데, 마지막 코드워드(412c)의 성능을 더욱 향상시킬 것이다. 일 예로, 마지막 코드워드(412c) 단축은 적어도 RS 인코더들(304, 306) 중 하나에 의해 수행될 수 있다. 또 다른 실시예로, 마지막 코드워드(412c) 단축은 도 3 시스템의 또 다른 요소나 도 3에 도시되지 않은 별개 요소에 의해 수행될 수 있다. 이는 도 6 내지 11로 도시된 나머지 방식에도 적용된다.
일 실시예로, 예를 들면, ceil (L / 4K) x 4N (508) 하기 위해 특정 길이의 '0'(416)이 RS 인코드된 코드워드들에 채워진다. 일 실시예로, 각각의 아우터 인터리버들은 도 4로 도시된 바와 같이, 깊이 4(각각의 아우터 인터리버의 열의 수)를 갖는다. 아우터 인터리버는 4 x 224 바이트 크기를 가질 수 있다. 깊이 4 아우터 인터리버 요구사항을 만족하기 위해, 제로 패딩하는 하는 단계는 4 코드워드들의 집합(414)을 형성한다. 일 실시예로, 제로 패딩하는 단계는 아우터 인터리버들(308, 310) 중 적어도 하나에 의해 수행될 수 있다. 또 다른 실시예로, 제로 패딩하는 단계는 도 3 시스템의 또 다른 요소나 도 3에 도시되지 않은 별개 요소에 의해 수행될 수 있다. 이는 도 6 내지 11로 도시된 나머지 방식에도 적용된다.
RS 인코드된 코드워드들(410)과 제로 패드된 코드워드들(414)이 아우터 인터리브되고 파스된다(510). 본 실시예에서, 각각의 아우터 인터리버는 4 코드워드들(410 및 414)의 집합에 아우터 인터리빙을 수행한다. 이는 도 6 내지 11로 도시된 나머지 방식에도 적용된다.
테일 비트들(420)이 아우터 인터리브된 데이터에 더 삽입되고, 그 후 테일 비트들(420)을 갖는 데이터에 대해 컨버루셔널 인코딩이 수행된다(512). 테일 비트들 패딩(420)은 컨버루셔널 코드들을 종결하여, 수신측에서 디코딩이 적절하게 수행되도록 하기 위함이다. 일 실시예로, 1 바이트 테일 비트들(예. 1 바이트의 '0')이 컨버루셔널 인코더 당 추가된다. 예를 들면, 8 컨버루셔널 인코더들에 대해, 8 바이트의 테일 비트들이 추가된다. 일 실시예로, 상태 512에서 테일 비트들을 패딩하는 단계(420)는 아우터 인터리버들(308, 310) 중 적어도 하나에 의해 수행될 수 있다. 또 다른 실시예로, 테일 비트들을 패딩하는 단계는 도 3 시스템의 또 다른 요소나 도 3에 도시되지 않은 별개 요소에 의해 수행될 수 있다. 이는 도 6 내지 11로 도시된 나머지 방식에도 적용된다.
정수 OFDM 심볼들을 제공하기 위해, 더 스크램블된 '0'들(424)이 컨버루셔널 코드된 바이트들에 삽입된다(514). 스크램블된 '0'들(424)을 갖는 데이터를 멀티플렉싱하는 단계가 이후 수행된다. 일 실시예로, 스크램블된 '0'들(424)을 패딩하는 단계가 멀티플렉서(314)에 의해 수행될 수 있다. 또 다른 실시예로, 스크램블된 '0'들을 패딩하는 단계(424)는 도 3 시스템의 또 다른 요소나 도 3에 도시되지 않은 별개 요소에 의해 수행될 수 있다. 이는 도 6 내지 11로 도시된 나머지 방식에도 적용된다. 이후, OFDM 전송 절차의 나머지 단계가 도 3 시스템(516)의 나머지 요소들 (316 내지 330)에 의해 수행된다. 이는 도 6 내지 11로 도시된 나머지 방식에도 적용된다.
방식 2
도 6은 본 발명의 또 다른 실시예에 따른, WVAN을 위한 HD 비디오 데이터 트랜스미터의 인코딩 절차(600) (도 7)를 나타내는 개념도를 도시한다. 도 7은 본 발명의 일 실시예에 따른, 인코딩 절차(600)를 위한 예시 순서도이다. 도 3, 도 6 내지 7을 참조하여, 방식 2 인 코딩 절차의 동작이 더 자세히 기술될 것이다.
방식 1은 비교적 직접적인 방식을 제공한다. 그러나, 패딩 효율성은 낮을 수 있다. 방식 2는 방식 1에 비해 전송 효율에 있어 향상된 점을 제공한다. 시스템(300)은 MAC 계층(560)으로부터 L 정보 바이트들(520)을 수신한다. 정보 바이트들(520)은 주 코드워드들(522)과 나머지 코드워드들(524)을 포함할 수 있다.
시스템 (300)은 정보 바이트들(520)을 RS 코드 (N, K, t)로 RS 인코드하는데, K는 정보 바이트들의 수이고, N은 코드워드 내의 바이트 수이고, t는 정정 능력이다(562). 도 6으로 도시된 바와 같이 RS 인코딩 후, 2t 패리티 바이트들(526)이 추가되어 N 바이트 코드워드들을 구성한다.
RS 인코드된 나머지 코드워드들 중 마지막 코드워드 528 (경우 1) 또는 532 (경우 2)는 예를 들면, (m + 2t, m)으로 단축되고, m = mod (L, K) (564)이다. 마지막 코드워드(532)에 대한 mod(L, 4K)가 4K - 8 보다 큰지 여부가 결정된다(566). 그 결과가 4K - 8보다 큰 경우(경우 1), 4 코드워드들(536)의 집합을 구성하기 위해, 예를 들면 8 바이트보다 작은 일부 테일 비트들(538)이 RS 인코드된 코드워드들에 삽입되고, 이는 깊이 4 아우터 인터리버 요구사항을 만족시킨다(568). 일부 테일 비트들(538)이 추가된, RS 인코드된 코드워드들(536)은 아우터 인터리브되고 파스된다(570). 추가적인 테일 비트들(548), 예를 들면, 8 바이트에서 일부 테일 비트들의 수를 뺀 비트들이 아우터 인터리브된 데이터에 추가되어, 전체 추가된 테일 비트들이 8 바이트가 되도록 한다(572). 그 후 테일 비트들(일부 테일 비트들(538) + 추가 테일 비트들(548))을 갖는 아우터 인터리브된 데이터에 대해 컨버루셔널 인코딩이 수행된다(572).
상태(566)에서, 마지막 코드워드(532)에 대한 mod(L, 4K)가 4K - 8 보다 크지 않은 것으로 결정되는 경우(경우 2), 전체 테일 비트들(544) (예. 8 바이트)이 RS 인코드된 코드워드들에 추가된다(574). 이후, 4 코드워드들(540)의 집합을 구성하기 위해, 특정 길이의 '0'(542)이 RS 인코드된 코드워드들에 채워지고, 이는 깊이 4 아우터 인터리버 요구사항을 만족시킨다(576). 일 실시예로, 테일 비트들 (538 및 544) 패딩과 '0' 패딩(542)이 아우터 인터리버들(308, 310) 중 적어도 하나에 의해 수행될 수 있다. 또 다른 실시예로, 테일 비트들 (538 및 544) 과 '0' 패딩(542)은 도 3 시스템의 또 다른 요소나 도 3에 도시되지 않은 별개 요소에 의해 수행될 수 있다. 테일 비트들(544)과 '0'(542)이 추가된, RS 인코드된 코드워드들(540)이 아우터 인터리브되고 파스되고 컨버루셔널 인코드된다(578). 경우 2에서, 전체 테일 비트들(544)이 상태 574에서 추가되었기 때문에, 추가 테일 비트들이 경우 1과 달리 추가될 필요가 없을 수 있다(상태 568 및 572).
스크램블된 '0'들(550)이 컨버루셔널 코드된 바이트에 삽입되어, 정수 OFDM 심볼들을 제공한다(580). 스크램블된 '0'들(550)을 갖는 데이터를 멀티플렉싱하는 단계가 이후 수행된다. 단계 582에서, OFDM 전송의 나머지 절차가 수행된다.
방식 3
도 8은 본 발명의 또 다른 실시예에 따른, WVAN을 위한 HD 비디오 데이터 트랜스미터의 인코딩 절차(700) (도 9)를 나타내는 개념도를 도시한다. 도 9는 본 발명의 일 실시예에 따른, 인코딩 절차(700)를 위한 예시 순서도이다. 도 3, 도 8 내지 9를 참조하여, 방식 3 인코딩 절차의 동작이 더 자세히 기술될 것이다.
방식 1과 2는 아우터 인터리버의 크기를 유지하면서 다른 방식으로 '0'을 채운다. 그러나, 상대적으로 큰 아우터 인터리버의 크기(예. 4 x 224 바이트) 때문에, 효율성이 제한될 수 있다. 방식 3은 방식 1과 2에 비해, 효율성과 RS 코드 성능을 더 향상시킬 수 있다. 일 예로, 방식 3에서, 마지막 코드워드만을 단축하는 대신, 모든 마지막 4 코드워드들이 단축되고, 이는 RS 성능을 균등하게 향상시킬 수 있고, 동시에 단축된 아우터 인터리버의 사용을 가능하게 한다.
도 3, 도 8 내지 도 9를 참조하여, 방식 3 인코딩 절차의 동작이 더 자세히 기술될 것이다. 시스템(300)은 MAC 계층(702)으로부터 L 정보 바이트들(601)을 수신한다. 정보 바이트들(601)은 주 코드워드들(602)과 나머지 코드워드들(604)을 포함할 수 있다. 시스템(300)은 floor(L / 4K) x 4K 값을 계산하는데, K는 RS 코드 길이(704)를 나타낸다. 편의상, L = 4nK + A 바이트이고, n = 0, 1, 2, 3, ... 이고 n은 아우터 인터리버들의 수를 나타낸다. 또한 A = 1, 2, 3, ..., K-1 이고 A는 4nK 바이트에 관하여 나머지 바이트들의 수를 나타낸다. 각각의 아우터 인터리버는 4 코드워드들(606)의 집합에 대해 아우터 인터리빙을 수행한다. 각각의 코드워드는 2t 패리티 바이트들(예. 8 바이트)을 포함한다(608).
상태 704는 첫 번째 4nK 바이트들에 대한 인코딩 처리를 나머지 바이트들(A)에 대한 인코딩 처리와 분리한다. 첫 번째 4nK 정보 바이트들은 예를 들면, RS 코드 (N, K, t)로 RS 인코드되는데, t는 에러 정정 능력이고 N = K + 2t(706)이다. RS 인코드된 데이터는 아우터 인터리브되고, 파스되고 컨버루셔널 인코드된다(708).
나머지 바이트들(A)과 관련하여, 시스템(300)은 나머지 바이트들(A = L = L - floor(L / 4K) x 4K)을 4 RS 코드워드들(610a 내지 610d)로 균등하게 분배하는데, 처음 3 RS 코드들(610a 내지 610c)는 K1 정보 바이트들을 갖고 마지막 RS 코드워드(610d)는 K2 정보 바이트들을 갖는다(710). 일 실시예로, K1은 식 'ceil(L'/4)'을 이용하여 얻어지고 K2는 식 'L' - 3 x ceil(L'/4)'을 이용하여 얻어진다. 4 코드워드들(610a 내지 610d)은 RS 인코드되고, 처음 3 코드워드들(610a 내지 610c)에 대해서는 RS 코드 (K1+2t, K1, t)로 단축되고, 마지막 코드워드(610d)에 대해서는 RS 코드(K2+2t, K2, t)로 단축된다(712). 일 실시예로, 상태들 704, 710 및 712는 RS 인코더들(304, 306) 중 적어도 하나에 의해 수행될 수 있다. 또 다른 실시예로, 상태 704, 710 및 712는 도 3 시스템의 또 다른 요소나 도 3에 도시되지 않은 별개 요소에 의해 수행될 수 있다.
아우터 인코더 크기 요구사항을 만족시킬 필요가 있는 경우, 특정 길이의 '0'(예. 1 내지 3 바이트들)이 마지막 코드워드(610d)에 채워질 수 있다(714). RS 인코드된 데이터는 크기 4 x (K1 + 2t)를 갖는 단축된 아우터 인터리버를 이용하여 아우터 인터리브된다(714).
일 실시예로, 컨버루셔널 코드들을 종결하기 위해, 시스템(300)은 테일 비트들을(615) (예. 4 코드워드들에 대한 4 x 8 바이트들) 상태 708 및 714에서 아우터 인터리브된 데이터에 추가하고, 도 8로 도시된 바와 같이 아우터 인터리브된 데이터에 컨버루셔널 인코딩을 수행한다(716). 일 실시예로, 테일 비트들의 추가(615)는 아우터 인터리버들(308, 310) 외의 요소에 의해 수행될 수 있다. 또 다른 실시예로, 테일 비트들의 추가(615)는 아우터 인터리빙이 완료된 후, 아우터 인터리버들(308, 310)에 의해 수행될 수 있다.
일 실시예로, 멀티플렉싱 전에 OFDM 심볼에 대한 정수 요구사항을 만족시키기 위해, 추가 '0'들(618)이 컨버루셔널 인코드된 데이터에 추가될 수 있다. 이후, 나머지 OFDM 전송 절차가 수행된다(720).
일 실시예로, 나머지 코드워드들과 관련하여 RS 인코더들의 크기가 단축되면서, 나머지 코드워드들에 대한 아우터 인터리버의 크기도 단축된다. 예를 들면, 나머지 바이트들의 수(604)가 32 바이트이고, 상기 식을 이용하여 K1 = K2 = 8 인 경우, 각각의 코드워드는 8 바이트와 8 패리티 바이트를 가질 것이다. 이는 크기 4 x (K1 + 2t) = 4 x (8 + 8) = 4 x 16 바이트 크기를 갖는 아우터 인터리버로 구현될 수 있고, 4 x 224 바이트를 갖는 아우터 인터리버와 비교할 때 상당히 높은 효율성 을 제공한다.
또 다른 예로, 나머지 바이트들의 수(604)가 23 바이트인 경우, 상기 식을 이용하여 K1 = 6 이고 K2 = 5인 경우, 1 바이트 '0'이 마지막 코드워드에 추가되고 각각의 코드워드는 6 바이트와 8 패리티 바이트를 가질 것이다. 이는 4 x (K1 + 2t) = 4 x (6 + 8) = 4 x 14 바이트 크기를 갖는 아우터 인터리버로 구현될 수 있고, 4 x 224 바이트를 갖는 아우터 인터리버와 비교할 때 상당히 높은 효율성을 제공한다.
방식 4
도 10은 본 발명의 또 다른 실시예에 따른, WVAN을 위한 HD 비디오 데이터 트랜스미터의 인코딩 절차(900) (도 11)를 나타내는 개념도를 도시한다. 도 11은 본 발명의 또 다른 실시예에 따른, 인코딩 절차(900)를 위한 예시 순서도이다. 도 3, 도 10 내지 11을 참조하여, 방식 4 인코딩 절차의 동작이 더 자세히 기술될 것이다. 도 11의 상태 902 내지 908은 도 9의 상태 702 내지 708과 실질적으로 동일하다. 더욱이, 도 11의 상태 920 내지 922는 도 9의 상태 718 및 720과 실질적으로 동일하다.
시스템(300)은 'L' = L - floor(L / 4K) x 4K' 값을 계산하는데, K는 RS 코드 길이(910)를 나타낸다. 이 상태도 도 9의 상태 704의 일부로서 실질적으로 동일하다. L'(802)는 나머지 바이트들이거나 마지막 인터리버 블록에 대한 전체 정보 바이트들을 나타낸다.
시스템(300)은 예를 들면, 식 K2 = max(floor((L - 24) / 4),0) (912)을 이용하여, 마지막 RS 코드워드 바이트 K2(816)에 대한 RS 코드를 결정한다. 상태 914에서, 시스템(300)은 (L'-K2) 정보 바이트들을 나머지 3 RS 코드워드들 (812 내지 816)로 균등하게 분배하는데, K11은 처음 2 코드워드들 (812, 814)에 대한 것이고, K12는 세번 째 코드워드(816)에 대한 것이다. 일 실시예로, K11은 식 'K11 = ceil((L' - K2) / 3)'을 이용하여 획득되고, K12는 식 'K12 = floor((L' - K2) / 3)'이용하여 획득된다.
처음 2 코드워드들(812, 814)은 예를 들면, RS 코드 (K11+2t, K11, t)로 인코드되고, 세번 째 코드워드(816)은 예를 들면, RS 코드 (K12+2t, K11, t) (916)로 인코드된다. 마지막 코드워드(818)는 예를 들면, RS 코드 (K2+2t, K2, t) (916)로 인코드된다. 이후, 필요한 경우, RS 인코더(916)의 크기 요구사항을 만족시키기 위해, 테일 비트들(820)이 마지막 코드워드(818)에 추가될 수 있다.
아우터 인터리버의 크기 요구사항을 만족시키기 위해, 시스템(300)은 '0'바이트들을 아우터 인터리버에 추가하고, 4 x (K11 + 2t) 크기 (918)로 단축된 아우터 인터리버를 이용하여 RS 인코드된 데이터를 아우터 인터리브할 수 있다. 이후, 아우터 인터리브된 데이터를 컨버루셔널 인코더들에 대해 파스하기 위해, 파싱하는 단계가 수행된다. 일 실시예로, 상태 904 및 910 내지 914는 RS 인코더들(304, 306) 중 적어도 하나에 의해 수행될 수 있다. 또 다른 실시예로, 상태 904 및 910 내지 914는 도 3 시스템의 또 다른 요소나 도 3에 도시되지 않은 별개 요소에 의해 수행될 수 있다.
본 방식 4에서, 나머지 바이트들(802)은 4개의 단축된 코드워드들(812 내지 818)로 변환되는데, 도 10으로 도시한 바와 같이, 마지막 코드워드는(818) 예를 들면, 나머지 코드워드들(812 내지 816)보다 8 바이트 짧다. 예를 들면, L = 32인 경우, 깊이 4 아우터 인터리버에서, 마지막 코드워드에 대해 K2 = 2이고, 처음 3 코드워드들에 대해 K1 (= K11 = K12) = 10 이다. 따라서, K2와 K1 간의 차이는 8 바이트이다. 8 바이트 테일 비트들이 마지막 코드워드에 추가되고(818), 8 바이트 패리티 비트들이 제 1 내지 제 3 코드워드들(812 내지 816) 각각에 추가된다. 본 예시에서, 단축된 아우터 인터리버는 4 x (K11 + 2t) = 4 x (10 + 8) = 4 x 18 바이트 크기를 가질 것이고, 이는 4 x 224 바이트 크기를 갖는 아우터 인터리버와 비교하면 상당히 높은 효율성을 제공한다.
도 12A를 참조하여, 절차 900이 더 설명될 것이다. 도 12A는 일 실시예에 따른, 나머지 코드워드들에 대한 인터리버를 나타낸 개념도를 도시한다. 나머지 코드워드들의 수(L')는 23 바이트라고 가정된다. 상태 912에서, K2 = max (floor((L' - 24) / 4),0) = max (floor((23 - 24) / 4), 0) = 0 이다. 상태 914에서, K11 = ceil((L' - K2) / 3 = ceil (23 - 0) / 3 = 8 이다. 또한, K12 = floor((L' - K2) / 3 = floor(23 - 0) / 3 = 7 이다. 도 12A로 도시된 바와 같이, 제 1 내지 제 3 (정보) 코드워드들은 각각 8, 8 및 7이다. 도 12A로 도시된 바와 같이, 제 4 코드워드는 0이다. 도 12A로 도시된 바와 같이, 상태 916에서, 8 바이트 테일 비트들이 제 4 코드워드에 추가된다(상태 916). 도 12A로 도시된 바와 같이, 상태 918에서, 1 바이트 '0'이 제 3 코드워드에 채워지고, 8 바이트 '0'이 제 4 코드워드에 채워진다(상태 918). 본 예시에서, 단축된 아우터 인터리버는 도 12A로 도시된 바와 같이, 4 x 16 바이트 크기를 갖고, 4 x 224 바이트 크기를 갖는 아우터 인터리버와 비교하면 상당히 높은 효율성을 제공한다.
대체
실시예
(방식 4의 수정된 버전)
또 다른 실시예로, 도 12B로 도시된 바와 같이, K11과 K12를 계산하기 위해 ceil/floor 연산을 이용하는 대신, 정보 바이트들을 4의 배수로 채운다. 도 12B는 또 다른 실시예에 따른, 나머지 코드워드들에 대한 인터리버의 개념도를 도시한다. 본 실시예에서, 인코딩 단계는 이하와 같이 기술될 수 있다.
L2 = max {(depth - 1) x M, ceil (L1 / depth) x depth}를 획득하기 위해, '0'이 L1 정보 바이트에 채워진다. L1 = 23 바이트이고 깊이 = 4 이고 M = 8, L2 = max{(depth - 1) x M, ceil(L1 / depth) x depth} = max{(4 - 1) x 8, ceil(23 / 4) x 4} = max {24, 20} = 24 이다.
마지막 RS 코드워드의 길이 (K2)가 계산된다. K2 = max{[L2 - (depth -1) x M] / depth, 0} = max{[24 - (4 - 1) x 8] / 4, 0} = max {0, 0} = 0 이다. 나머지 RS 코드워드들의 길이 (K1 = K11 = K12)가 계산된다. K1 = (L2 - K2)/(depth - 1) = (24 - 0)/(4 - 1) = 8 이다. 이는 도 12B로 도시된다.
아우터 인터리버의 i = depth-1 열이 RS (K2 + 2 x t, K2, t=4) 코드로 단축 된다. 아우터 인터리버의 i = 0, 1, ..., depth-2 열이 단축된 RS (K1 + 2 x t, K2, t=4) 코드이다. b(depth - 1, K2 + 2 x t + 1), ..., b(depth - 1, K1 + 2 x t) 바이트가 '0'으로 채워진다. RS(K1 + 2 x t, K2, t=4)에 대한 단축된 블록 인터리버가 방식 4의 예제와 유사하게 이용된다. 도 12B는 8 바이트 '0'이 마지막 코드워드에 채워지고, 8 바이트 테일 비트들이 마지막 코드워드에 추가되고, 8 바이트 패리티 배트들이 제 1 내지 제 3 코드워드들 각각에 추가되는 것을 도시한다. 본 예시에서, 단축된 아우터 인터리버는 도 12B로 도시된 바와 같이 4 x 16 바이트 크기를 갖고, 4 x 224 바이트 크기를 갖는 아우터 인터리버와 비교하면 상당히 높은 효율성을 제공한다.
또 다른 실시예로, 정보 바이트들은 다른 시스템 요구사항, 예를 들면, 비트 인터리버 요구사항을 만족시키기 위해 더 채워질 수 있다. 정보 바이트들을 패드된 비트들과 함께 인코딩하는 방법은 상기 기술한 바와 동일한 방식을 따른다.
적어도 일 실시예에 따라, 정보 비트들을 인코딩하는 방법은 RS 코드워드 경계, 블록 아우터 인터리버 경계 및 OFDM 심볼 경계를 만족시키고자 한다. 서로 다른 방식들이 제공되어, 단순성, RS 코드워드 성능 및 패딩 효율성 간 서로 다른 트레이드 오프를 갖는다. 적어도 본 발명의 일 실시예는 디코딩 성능을 향상시키면서 훨씬 더 효율적인 패딩 방식을 제공한다. 더욱이, 본 발명의 적어도 일 실시예는 현재 디자인에 변화를 요구하지도 않는다. 본 발명의 적어도 일 실시예는 IEEE 802.15.3c와 같은 다른 무선 통신 표준에 적용될 수 있다.
상기 명세는 다양한 실시예에 적용될 수 있는. 본 발명의 신규한 측면을 지적했지만, 설명된 디바이스 또는 프로세스의 세부 사항 및 형식에 있어서의 변화, 다양한 생략 및 대체가 본 발명의 범위를 벗어나지 않고 가능하다. 예를 들면, 본 발명의 실시예가 비압축 비디오 데이터와 관련하여 기술되었을 지라도, 상기 실시예들은 압축 비디오 데이터에도 적용될 수 있다.
따라서, 본 발명의 범위는 상기 명세에 의해서가 아닌, 첨부된 청구항에 의해서 정의된다. 청구항과 균등한 의미 및 범위 내의 다양한 변형이 청구항 범위로 포함된다.