KR20110005645A - 디지털 방송 신호 전송 방법 및 송신 시스템 - Google Patents

디지털 방송 신호 전송 방법 및 송신 시스템 Download PDF

Info

Publication number
KR20110005645A
KR20110005645A KR1020100064723A KR20100064723A KR20110005645A KR 20110005645 A KR20110005645 A KR 20110005645A KR 1020100064723 A KR1020100064723 A KR 1020100064723A KR 20100064723 A KR20100064723 A KR 20100064723A KR 20110005645 A KR20110005645 A KR 20110005645A
Authority
KR
South Korea
Prior art keywords
data
region
mobile service
service data
group
Prior art date
Application number
KR1020100064723A
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 엘지전자 주식회사
Priority to US12/831,911 priority Critical patent/US8385238B2/en
Publication of KR20110005645A publication Critical patent/KR20110005645A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H20/00Arrangements for broadcast or for distribution combined with broadcast
    • H04H20/42Arrangements for resource management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H20/00Arrangements for broadcast or for distribution combined with broadcast
    • H04H20/65Arrangements characterised by transmission systems for broadcast
    • H04H20/71Wireless systems
    • H04H20/72Wireless systems of terrestrial networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H40/00Arrangements specially adapted for receiving broadcast information
    • H04H40/18Arrangements characterised by circuits or components specially adapted for receiving
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/015High-definition television systems

Landscapes

  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

본 발명은 방송 신호를 처리하여 전송하는 방법 및 장치에 관한 것이다.
본 발명의 일 실시예에 따른 방송 송신기에서 방송 신호를 송신하는 방법은 고정된 개수의 모바일(mobile) 데이터 패킷(packet), 제 1 가변 개수의 모바일 데이터 패킷과 제 2 가변 개수의 메인(main) 데이터 패킷을 다중화하는 단계, 상기 모바일 데이터 패킷에 포함된 모바일 데이터와 상기 메인 데이터 패킷에 포함된 메인 데이터를 인터리빙(interleaving)하는 단계, 상기 인터리빙된 모바일 데이터를 포함하는 데이터 그룹과 상기 인터리빙된 메인 데이터를 슬롯(slot) 동안 전송하는 단계를 포함하고, 여기서, 상기 데이터 그룹은 다수의 영역을 포함하고, 다수의 영역은 다수의 데이터 블록(block)을 포함하고, 각각의 데이터 블록은 다수의 데이터 세그먼트(segment)를 포함하며, 상기 데이터 그룹에 포함되는 제 1 영역과 제 2 영역은 프라이머리 앙상블(primary ensemble), 기지데이터, 모바일 데이터의 시그널링을 위한 시그널링 바이트(signaling bytes)를 포함하고, 제 3 영역, 제 4 영역 및 제 5 영역은 세컨더리 앙상블(secondary ensemble)을 포함하고, 상기 제 5 영역은 제 1 가변 개수의 모바일 데이터 패킷을 포함하는 것을 특징으로 한다.

Description

디지털 방송 신호 전송 방법 및 송신 시스템{TRANSMITTING SYSTEM AND METHOD OF TRANSMITTING DIGITAL BROADCAST SIGNAL IN TRANSMITTING SYSTEM}
본 발명은 디지털 방송 신호를 송수신하는 디지털 방송 시스템에 관한 것이다. 보다 상세하게는, 디지털 방송 신호를 처리하고 송신하는 송신 시스템과 송신 시스템과 수신 시스템에서 방송 신호를 처리하는 방법에 관한 것이다.
북미와 대한민국에서 채택된 VSB 전송 모드는 싱글 케리어 방식을 사용하는 시스템이다. 그래서, 디지털 방송 수신 시스템의 수신 성능은 불완전한 채널 환경에서 매우 열악하다. 특히, 휴대용 또는 모바일용 방송 수신기를 사용하는 경우 채널과 노이즈 환경의 변화에 대한 높은 적응력이 필요한데, VSB 전송 모드를 사용하여 모바일 서비스 데이터를 전송하는 경우에는 수신 성능은 더욱 악화될 것이다.
본 발명의 일 목적은 기존의 디지털 방송 신호 송신 시스템과 호환성을 유지하면서 추가적인 모바일 서비스 데이터를 송신할 수 있는 송신 시스템 및 방송 신호 처리 방법을 제공함에 있다.
본 발명의 또 다른 목적은 추가되는 모바일 서비스 데이터 및 기존의 모바일 서비스 데이터 영역에 송/수신측이 약속에 의해 알고있는 기지데이터(known data)를 추가적으로 삽입하여 수신측에서의 모바일 서비스 데이터의 수신 성능을 향상 시키는 송신 시스템 및 방송 신호 처리 방법을 제공함에 있다.
본 발명의 또 다른 목적은 인접한 데이터 그룹들 간의 연접을 통하여, 각 데이터 그룹 내의 불연속적인 기지데이터를 연결하여 연속적인 기지데이터 열(Known data sequence)을 형성하여 수신측에서의 방송 신호 수신 성능을 향상시키는 송신 시스템 및 방송 신호 처리 방법을 제공함에 있다.
본 발명의 또 다른 목적은 시그널링 정보를 확장하여, 추가되는 모바일 서비스 데이터에 대한 정보를 송신측이 생성하고 수신측에 전송하여 송/수신측 간에 원활한 시그널링이 가능한 송신 시스템 및 방송 신호 처리 방법을 제공함에 있다.
본 발명의 또 다른 목적은 기지 데이터를 이용하여 반송파 복구 및 채널 등화를 수행함으로써, 수신 시스템의 수신 성능을 향상시키도록 하는 수신 시스템 및 방송 신호 처리 방법을 제공함에 있다.
전술한 기술적 과제를 해결하기 위한 본 발명의 일 실시예에 따른 방송 신호 송신 방법은 고정된 개수의 모바일(mobile) 데이터 패킷(packet), 제 1 가변 개수의 모바일 데이터 패킷과 제 2 가변 개수의 메인(main) 데이터 패킷을 다중화하는 단계, 상기 모바일 데이터 패킷에 포함된 모바일 데이터와 상기 메인 데이터 패킷에 포함된 메인 데이터를 인터리빙(interleaving)하는 단계, 상기 인터리빙된 모바일 데이터를 포함하는 데이터 그룹과 상기 인터리빙된 메인 데이터를 슬롯(slot) 동안 전송하는 단계를 포함하고, 여기서, 상기 데이터 그룹은 다수의 영역을 포함하고, 다수의 영역은 다수의 데이터 블록(block)을 포함하고, 각각의 데이터 블록은 다수의 데이터 세그먼트(segment)를 포함하며, 상기 데이터 그룹에 포함되는 제 1 영역과 제 2 영역은 프라이머리 앙상블(primary ensemble), 기지데이터, 모바일 데이터의 시그널링을 위한 시그널링 바이트(signaling bytes)를 포함하고, 제 3 영역, 제 4 영역 및 제 5 영역은 세컨더리 앙상블(secondary ensemble)을 포함하고, 상기 제 5 영역은 제 1 가변 개수의 모바일 데이터 패킷을 포함하는 것을 특징으로 한다.
또한, 상기 제 1 가변 개수와 제 2 가변 개수의 합은 고정되어 있으며, 상기 제 1 가변 개수는 38까지 확장 가능한 것을 특징으로 한다.
또한, 상기 제 1 가변 개수는 11, 20, 29, 38 중 어느 하나인 것을 특징으로 한다.
또한, 제 1 가변 개수가 38인 경우, 상기 데이터 그룹 내의 RS 패러티(Reed Solomon parity)와 MPEG 헤더(MPEG header)를 위한 영역을 모바일 데이터를 위한 영역으로 할당하는 것을 특징으로 한다.
또한, 상기 프라이머리 앙상블과 세컨더리 앙상블은 서로 다른 FEC(Forward Error Correction) 부호화율로 부호화된 모바일 데이터의 집합인 것으로 특징으로 한다.
또한, 상기 제 3 영역, 제 4 영역 및 제 5 영역은 기지데이터 열을 포함하는 것을 특징으로 하고, 제 3 영역과 제 4 영역에 포함된 기지데이터 열은 상기 데이터 그룹에 인접하는 데이터 그룹의 제 5 영역에 포함된 기지데이터 열과 동일한 세그먼트에서 연결되는 것을 특징으로 한다.
본 발명에 따른 송신 시스템, 수신 시스템, 및 방송 신호 처리 방법은 채널을 통하여 모바일 서비스 데이터를 송신할 때 에러에 강하고 또한 기존의 수신기와도 호환성이 가능한 이점이 있다.
본 발명은 하나의 slot에서 모바일 서비스 데이터를 위한 영역을 확장하여 보다 많은 모바일 서비스 데이터를 전송할 수 있는 이점이 있다.
본 발명는 데이터 그룹의 C, D 또는 E 영역에 추가적인 Known data를 삽입하여 수신측에서 모바일 서비스 데이터의 수신 능력을 향상시키는 이점이 있다.
본 발명은 고스트와 잡음이 심한 채널에서도 모바일 서비스 데이터를 에러없이 수신할 수 있는 이점이 있다.
본 발명은 데이터 영역의 특정 위치에 기지 데이터를 삽입하여 전송함으로써, 채널 변화가 심한 환경에서 수신 시스템의 수신 성능을 향상시킬 수 있다.
본 발명은 터보 복호된 FIC 데이터의 블록 디인터리빙시, 슬롯 정보와 데이터 그룹 정보를 이용하여 TNoG 정보를 획득함으로써, TPC 데이터 복호를 통해 현재 sub frame의 TNoG 정보를 얻지 못하는 경우에도 FIC 데이터를 복호할 수 있게 된다. 따라서 FIC 데이터의 복호 성능을 향상시킬 수 있다.
본 발명은 RS frame에 대해 CRC-RS 복호를 수행한 후, 상기 RS frame에 대해 CRC 신드롬 체크를 다시 수행하고, 그 결과를 상기 RS frame의 페이로드를 구성하는 M/H 서비스 데이터 패킷들의 error_indicator 필드에 표시하여 출력한다. 이렇게 함으로써, 상기 M/H 서비스 데이터 패킷을 입력받아 처리하는 블록의 오동작 확률을 줄일 수 있고, 이로 인해 수신 시스템의 전체 성능을 향상시킬 수 있게 된다.
이러한 본 발명은 채널 변화가 심하고 노이즈에 대한 강건성이 요구되는 휴대용 및 이동 수신기에 적용하면 더욱 효과적이다.
도 1은 본 발명의 일실시예에 따른 송신 시스템의 블록들을 나타낸 도면이다.
도 2는 본 발명의 일실시예에 따른 모바일 서비스 데이터를 송수신하기 위한 DATA frame 구조를 나타낸 도면이다.
도 3은 본 발명의 일실시예에 따른 데이터 그룹이 118개의 모바일 서비스 데이터 패킷을 포함하는 경우, 데이터 그룹이 인터리빙되기 전의 구조를 나타낸 도면이다.
도 4는 본 발명의 일실시예에 따른 데이터 그룹이 118개의 모바일 서비스 데이터 패킷을 포함하는 경우, 데이터 그룹이 인터리빙된 이후의 구조를 나타낸 도면이다.
도 5는 본 발명의 일실시예에 따른 118개의 모바일 서비스 데이터 패킷을 가지는 데이터 그룹의 영역을 나타낸 도면이다.
도 6은 본 발명의 일실시예에 따른 118 + M개의 모바일 서비스 데이터 패킷을 가지는 데이터 그룹을 나타낸 도면이다.
도 7은 본 발명의 일실시예에 따른 퍼레이드 타입에 따른 데이터 그룹 내의 영역 구분, 각 Ensemble이 전송되는 영역, 호환성, 하나의 slot내에 포함되는 모바일 서비스 데이터 패킷의 수 등의 테이블을 나타낸 도면이다.
도 8은 본 발명의 일실시예에 따른 데이터 그룹이 118 + M개의 모바일 서비스 데이터 패킷을 포함하는 경우, 데이터 그룹이 인터리빙되기 전의 구조를 나타낸 도면이다.
도 9는 본 발명의 일실시예에 따른 데이터 그룹이 118 + M개의 모바일 서비스 데이터 패킷으을 포함하는 경우, 데이터 그룹이 인터리빙된 후의 구조를 나타낸 도면이다.
도 10은 본 발명의 일실시예에 따른 데이터 그룹이 118 + M개의 모바일 서비스 데이터 패킷을 포함하는 경우, 데이터 그룹이 인터리빙되기 전의 구조를 나타낸 도면이다.
도 11는 본 발명의 일실시예에 따른 데이터 그룹이 118 + M개의 모바일 서비스 데이터 패킷을 포함하는는 경우, 데이터 그룹이 인터리빙된 후의 구조를 나타낸 도면이다.
도 12는 본 발명의 일실시예에 따른 데이터 그룹이 118 + 38개의 모바일 서비스 데이터 패킷을 포함하는되는 경우, 데이터 그룹이 인터리빙되기 전의 구조를 나타낸 도면이다.
도 13은 본 발명의 일실시예에 따른 데이터 그룹이 118 + 38개의 모바일 서비스 데이터 패킷을 포함하는되는 경우, 데이터 그룹이 인터리빙된 후의 구조를 나타낸 도면이다.
도 14는 본 발명의 일실시예에 따른 데이터 그룹이 118 + 38개의 모바일 서비스 데이터 패킷을 포함하는 경우, 데이터 그룹이 인터리빙되기 전의 구조를 나타낸 도면이다.
도 15은 본 발명의 일실시예에 따른 데이터 그룹이 118 + 38개의 모바일 서비스 데이터 패킷을 포함하는 경우, 데이터 그룹이 인터리빙된 후의 구조를 나타낸 도면이다.
도 16는 본 발명의 일실시예에 따른 데이터 그룹이 118 + 38개의 모바일 서비스 데이터 패킷을 포함하는 경우, 데이터 그룹이 인터리빙되기 전의 구조를 나타낸 도면이다.
도 17은 본 발명의 일실시예에 따른 데이터 그룹이 118 + 38개의 모바일 서비스 데이터 패킷을 포함하는되는 경우, 데이터 그룹이 인터리빙된 후의 구조를 나타낸 도면이다.
도 18은 본 발명의 일실시예에 따른 디지털 방송의 시그널링을 위한 데이터 필드의 syntax 구조를 나타낸 도면이다.
도 19는 본 발명의 일실시예에 따른 디지털 방송 데이터 처리 및 송신 방법을 나타낸 순서도이다.
도 20은 본 발명의 일실시예에 따른 데이터 그룹 내에 추가적인 모바일 서비스 데이터가 포함되는 경우에 있어서, 데이터 그룹 내의 C, D 영역에 Known data를 삽입하는 디지털 방송 데이터 처리 및 송신 방법을 나타낸 순서도이다.
도 21은 본 발명의 일실시예에 따른 데이터 그룹이 156개의 모바일 서비스 데이터 패킷을 포함하는 경우에 있어서, 데이터 그룹 내의 RS parity와 MPEG header를 위한 데이터 영역(data area)에 모바일 서비스 데이터를 삽입하는 디지털 방송 데이터 처리 및 송신 방법을 나타낸 순서도이다.
도 22는 본 발명의 일 실시예에 따른 수신 시스템의 구성 블록도이다.
도 23은 본 발명에 따른 채널 동기화부(1301) 내 복조기의 일 실시예를 보인 상세 블록도이다.
도 24는 본 발명의 일실시예에 따른 기지데이터 심볼열과 부분 상관기(Partial Correlate unit)를 나타낸 도면이다.
도 25은 본 발명에 따른 제2 기지 데이터 열을 8개의 파트로 나누어 부분 상관을 구함으로써, 대략적인(rough) 초기 주파수 옵셋을 추정하는 예를 보인 것이다.
도 26은 본 발명에 따른 Maximum-likelihood 알고리즘에 의해 미세 주파수 옵셋을 추정하는 예를 보인 것이다.
도 27은 선형 보간의 일례를 보인 도면이다.
도 28는 선형 외삽의 일례를 보인 도면이다.
도 29은 본 발명에 따른 채널 등화기의 일 실시예이다.
도 30은 본 발명의 일실시예에 따른 SCCC 부호화 처리를 나타낸 도면이다.
도 31은 본 발명에 따른 블록 복호기(1303)의 일 실시예를 보인 상세 블록도이다.
도 32는 본 발명의 일실시예에 따른 심볼 인터리버의 패턴 발생부를 나타낸 도면이다.
도 33은 본 발명에 따른 옵셋 값이 0일 때 발생된 심볼 인터리빙 패턴의 일 예이다.
도 34는 본 발명의 일실시예에 따른 심볼 인터리빙 패턴 P(i) 만을 사용하여 심볼 인터리빙을 수행하는 과정을 나타낸 도면이다.
도 35는 본 발명의 일실시예에 따른 RS frame 복호기를 나타낸 도면이다.
도 36은 RS frame 모드 값이 00일 때, 즉 하나의 퍼레이드로 전송되는 복수개의 포션을 모아 하나의 RS frame과 RS frame 신용 맵(Reliability Map)을 형성하는 과정을 나타낸 도면이다.
도 37은 본 발명에 따른 에러 정정 복호 과정의 일 실시예를 보인 것이다
도 38은 본 발명에 따른 에러 정정 복호 과정의 일 실시예를 보인 것이다
도 39는 본 발명에 따른 시그널링 복호기(1306)의 일 실시예를 보인 블록도이다.
도 40은 회귀적 터보 복호기(7111)의 일 실시예를 보인 상세 블록도이다.
도 41은 본 발명의 일실시예에 따른 이븐 콤포넌트 부호기에 트렐리스 부호기가 시리얼로 연접된 모습과 오드 콤포넌트 부호기에 트렐리스 부호기가 시리얼로 연접된 모습을 나타낸 도면이다.
도 42은 이븐 콤포넌트 복호기에 대해 시작 스테이트가 00000일 때 도달가능 한 스테이트를 포함한 트렐리스 다이어그램이다.
도 43는 오드 콤포넌트 복호기에 대해 시작 스테이트가 00000일 때 도달가능 한 스테이트를 포함한 트렐리스 다이어그램이다.
도 44은 본 발명에 따른 TNoG 추출 과정의 구체적인 실시예를 보이고 있다.
이하 상기의 목적을 구체적으로 실현할 수 있는 본 발명의 바람직한 실시예를 첨부한 도면을 참조하여 설명한다. 이때 도면에 도시되고 또 이것에 의해서 설명되는 본 발명의 구성과 작용은 적어도 하나의 실시예로서 설명되는 것이며, 이것에 의해서 본 발명의 기술적 사상과 그 핵심 구성 및 작용이 제한되지는 않는다.
본 발명에서 사용되는 용어는 본 발명에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어를 선택하였으나, 이는 당분야에 종사하는 기술자의 의도 또는 관례 또는 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 발명에서 사용되는 용어는 단순한 용어의 명칭이 아닌 그 용어가 가지는 의미와 본 발명의 전반에 걸친 내용을 토대로 정의되어야 함을 밝혀두고자 한다.
설명의 편의를 위하여 본 발명에서 사용되는 약어 및 용어를 정의한다.
메인 서비스 데이터 - 고정형 수신 시스템에서 수신할 수 있는 데이터로서, 오디오/비디오(A/V) 데이터를 포함할 수 있다. 즉, 상기 메인 서비스 데이터에는 HD(High Definition) 또는 SD(Standard Definition)급의 A/V 데이터가 포함될 수 있으며, 데이터 방송을 위한 각종 데이터가 포함될 수도 있다..
M/H(또는 MH라 함) - 모바일(Mobile), 핸드헬드(Handheld) 각각의 첫 글자이며, 고정형에 반대되는 개념이다. 그리고 M/H 서비스 데이터는 모바일(Mobile) 서비스 데이터, 핸드헬드(Handheld) 서비스 데이터 중 적어도 하나를 포함하며, 설명의 편의를 위해 본 발명에서는 M/H 서비스 데이터를 모바일 서비스 데이터라 하기도 한다. 이때 상기 모바일 서비스 데이터에는 M/H 서비스 데이터뿐만 아니라, 이동이나 휴대를 의미하는 서비스 데이터는 어느 것이나 포함될 수 있으며, 따라서 상기 모바일 서비스 데이터는 상기 M/H 서비스 데이터로 제한되지 않을 것이다. 또한 모바일 서비스를 위해 필요한 데이터도 모바일 서비스 데이터라 하기로 한다..
모바일 서비스 데이터 - 모바일 서비스 데이터는 프로그램 실행 파일, 주식 정보 등과 같이 정보를 갖는 데이터일 수도 있고, A/V 데이터일 수도 있다. 특히 상기 모바일 서비스 데이터는 휴대용이나 이동형 단말기(또는 방송 수신기)를 위한 서비스 데이터로서 메인 서비스 데이터에 비해서 작은 해상도와 작은 데이터 율을 가지는 A/V 데이터가 될 수도 있다. 예를 들어, 기존 메인 서비스를 위해 사용하는 A/V 코덱(Codec)이 MPEG-2 코덱(Codec)이라면, 모바일 서비스를 위한 A/V 코덱(Codec)으로는 보다 영상 압축 효율이 좋은 MPEG-4 AVC(Advanced Video Coding), SVC(Scalable Video Coding) 등의 방식이 사용될 수도 있다. 또한 상기 모바일 서비스 데이터로 어떠한 종류의 데이터라도 전송될 수 있다. 일례로 실시간으로 교통 정보를 방송하기 위한 TPEG(Transport Protocol Expert Group) 데이터가 모바일 서비스 데이터로 전송될 수 있다.
또한 상기 모바일 서비스 데이터를 이용한 데이터 서비스로는 날씨 서비스, 교통 서비스, 증권 서비스, 시청자 참여 퀴즈 프로그램, 실시간 여론 조사, 대화형 교육 방송, 게임 서비스, 드라마의 줄거리, 등장인물, 배경음악, 촬영장소 등에 대한 정보 제공 서비스, 스포츠의 과거 경기 전적, 선수의 프로필 및 성적에 대한 정보 제공 서비스, 상품 정보 및 이에 대한 주문 등이 가능하도록 하는 서비스별, 매체별, 시간별, 또는 주제별로 프로그램에 대한 정보 제공 서비스 등이 될 수 있으며, 본 발명은 이에 한정하지는 않는다.
기지(Known) 데이터 - 송/수신측의 약속에 의해 미리 알고 있는 데이터이다. 수신측에서 채널 등화(channel equalization)등에 사용한다.
FEC - Forward error correction의 약자이다. 송신측으로부터 수신측에 전송되어 온 디지털 신호의 오류를 송신측의 해당 신호에 대한 재전송이 없어도 수신측에서 자발적으로 정정할 수 있는 기술들을 통칭한다.
TPC - Transmission Parameter Channel의 약자이다. 각각의 데이터 그룹에 포함되어 전송된다. 수신측에 Data frame, Group에 대한 정보를 제공하여 시그널링을 하는 역할을 한다.
TS - Transport Stream의 약자이다.
RS - Reed-Solomon의 약자이다.
CRC - Cyclic Redundancy Check의 약자이다.
SCCC - Serial concatenated convolutional code의 약자이다.
PCCC - Parallel concatenated convolutional code의 약자이다.
FIC - Fast information channel의 약자이다. FIC는 계층간의 교차 정보를 전송한다. 이 정보는 주로 Ensemble과 서비스 사이의 채널 결합 정보를 포함한다.
이하에서는 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명한다.
송신시스템
도 1은 본 발명의 일실시예에 따른 송신 시스템의 블록들을 나타낸 도면이다.
도 1의 송신 시스템은 Packet adjustment(101), Pre-processor(102), DATA frame encoder(103), Block processor(104), Signaling encoder(105), Group formatter(106), Packet formatter(107), Packet mux(108), Post-processor(109), Modified data randomizer(110), Systematic/non-systematic RS encoder(111), Data interleaver(112), Non-systematic RS encoder(113), Parity replacer(114), Modified trellis encoder(115), Sync mux(116), Pilot inserter(117), 8-VSB modulator(118) 및 RF up-converter(119)를 포함한다. 이에 추가로 Pre-equalizer filter(120)을 더 포함할 수 있다.
Packet adjustment (101)는 모바일 서비스 데이터 패킷과 메인 서비스 데이터 패킷을 다중화하는 과정에서 모바일 서비스 스트림(stream)을 포함하는 서비스 스트림 패킷은 모바일 서비스 스트림을 포함하지 않는 서비스 스트림과 비교할 때, 변위가 발생할수 있는데, 이 변위를 보상하는 역할을 한다.
Pre-processor(102)는 모바일 서비스 데이터를 전송을 위한 모바일 데이터 스트럭쳐(structure)로 만든다. 또한, Pre-processor(102)는 모바일 서비스 데이터에 대하여 추가적인 FEC 코딩을 한다. 또한, Pre-processor(102)는 기지데이터(Known data)를 삽입한다. 즉, Pre-processor(102)는 이동환경에서 모바일 서비스 데이터의 전송 및 수신 상의 안정성을 강화하는 역할을 한다.
이러한 Pre-processor(102)는 DATA frame encoder(103), Block processor(104), Signaling encoder(105), Group formatter(106), Packet formatter(107) 및 Packet mux(108)를 포함할 수 있다. 즉, 이러한 각각의 구성은 Pre-processor(102) 내에 포함될 수도 있으며 Pre-processor(102)와는 별도로 구성될 수도 있다.
DATA frame encoder(103)는 모바일 서비스 데이터에 대하여 랜더마이징(randomizing), RS encoding 및 CRC encoding을 수행한다.
Block processor(104)는 RS frame portion을 SCCC block으로 변환한다. Block processor(104)는 변환된 SCCC block내의 모바일 서비스 데이터 바이트를 비트 단위로 변환한다. Block processor(104)는 비트 단위로 변환된 모바일 서비스 데이터에 대하여 1/2, 1/3, 1/4 rate의 컨볼루션 부호화(convolution encoding)을 수행한다. 이때, 1/2, 1/3, 1/4 rate는 1개의 비트가 입력될 때 각각 2개, 3개, 4개의 비트가 출력되도록 부호화하는 것을 뜻한다. 출력되는 비트들은 심볼(symbol)에 포함한다. Block processor(104)는 컨볼루션 부호화된 출력 심볼에 대하여 인터리빙(interleaving)을 수행한다. Block processor(104)는 인터리빙된 심볼을 바이트 단위로 변환하고, SCCC block를 DATA block으로 변환한다. DATA block에 대하여는 이하에서 상세히 설명한다.
Signaling encoder(105)는 수신측에서의 시그널링(signaling)을 위하여 시그널링 정보를 생성하여 FEC 부호화 및 PCCC 부호화를 수행한 후, 데이터 그룹 내의 일부 영역에 시그널링 정보를 삽입한다. 시그널링 정보의 일실시예로는 TPC, FIC 데이터가 될 수 있다.
Group formatter(106)는 Block processor(104)에 출력되는 데이터로 데이터 그룹을 형성하는 역할을 한다. Group formatter(106)는 인터리빙된 후의 데이터 그룹의 형태에 FEC 부호화된 모바일 서비스 데이터를 맵핑한다. 이 때, 맵핑은 Block processor(104)에서 출력되는 각각의 FEC 부호화된 모바일 서비스 데이터의 부호화율에 따라 이에 상응하는(corresponding) 그룹 내의 DATA Block 또는 그룹 영역(Region)에 FEC 부호화된 모바일 서비스 데이터를 삽입하는 것을 특징으로 한다. 또한, Group formatter(106)는 시그널링 데이터, trellis encoder의 초기화에 사용되는 데이터 바이트 및 기지데이터 열을 삽입한다. 또한, Group formatter(106)는 메인 서비스 데이터, MPEG-2 header 및 non-systematic RS parity를 위한 위치 홀더(place-holder)를 삽입한다. 또한, Group formatter(106)는 원하는 형태의 데이터 그룹을 생성하기 위하여 더미 데이터(dummy data)를 삽입할 수 있다. Group formatter(106)는 각종 데이터를 삽입한 후 형성된 인터리빙된 후의 형태의 데이터 그룹의 데이터에 대하여 디인터리빙(deinterleaving)을 수행한다. 디인터리빙이 수행된 후 데이터 그룹은 인터리빙되기 전의 그룹 형태가 된다.
Packet formatter(107)는 Group formatter(106)의 출력 데이터를 TS 패킷화한다. 이때 출력되는 TS 패킷은 모바일 서비스 데이터 패킷이다. 또한, 본 발명의 일실시예에 따른 Packet formatter(107)의 출력은 하나의 데이터 그룹 내에 118 + M 개의 모바일 서비스 데이터 패킷이 포함되도록 하는 것을 특징으로 한다. 이때, M는 38개 이하의 값을 가진다.
Packet Mux(108)는 Pre-processor(102)에서 처리된 모바일 서비스 데이터를 포함하는 패킷과 Packet adjustment(101)에서 출력되는 메인 서비스 데이터를 포함하는 패킷을 다중화한다. 이때, 다중화 되는 패킷은 118 + M개의 모바일 서비스 데이터 패킷과 L개의 메인 서비스 데이터 패킷을 포함할 수 있다. 여기서 M은 0 이상 38이하의 정수이며, M과 L의 합은 38인 것을 하나의 실시예로 한다. 즉, Packet Mux(108)는 모바일 서비스 데이터 패킷과 메인 서비스 데이터 패킷을 다중화하는 역할을 할 수 있으나, 입력되는 메인 서비스 데이터 패킷의 개수가 0인 경우(즉, L=0)에는 모바일 서비스 데이터 패킷만 처리하여 출력한다.
Post-processor(109)는 본 발명에 의하여 생성되는 모바일 서비스 데이터가 기존의 방송 시스템과 역호환성(backward compatibility)을 가지도록 모바일 서비스 데이터를 처리(processing)하는 역할을 한다. 본 발명의 일실시예에 따른 Post-processor(109)는 Modified data randomizer(110), Systematic/non-systematic RS encoder(111), Data interleaver(112), Non-systematic RS encoder(113), Parity replacer(114) 및 Modified trellis encoder(115)를 포함할 수 있다. 즉, 설계자에 따라서는 위의 각 구성이 Post-processor(109) 외부에 구성되도록 할 수 있다.
Modified data randomizer(110)는 모바일 서비스 TS 패킷에 대하여는 랜더마이징을 수행하지 않고 바이패스(by-pass)하고, 메인 서비스 TS 패킷에 대하여 랜더마이징을 수행한다. 따라서, 전 처리기에서 생성된 데이터 그룹이 메인 서비스 데이터를 전혀 포함하고 있지 않은 경우에는 랜더마이징을 수행하지 않는 것을 본 발명의 일실시예로 한다.
Systematic/non-systematic RS encoder(111)는 입력되는 데이터가 메인 서비스 데이터 패킷인 경우에는 systematic RS encoding을 수행하여 RS FEC 데이터를 생성하고, 입력되는 데이터가 모바일 서비스 데이터 패킷인 경우에는 non-systematic RS encoding을 수행하여 RS FEC 데이터를 생성한다. 본 발명의 일실시예로 Systematic/non-systematic RS encoder(111)는 systematic/non-systematic RS encoding 과정에서 20 바이트의 크기의 RS FEC 데이터를 생성하고, systematic RS encoding과정에서 생성되는 RS FEC 데이터는 187바이트의 패킷의 말단에 추가하고, non-systematic RS encoding 과정에서 생성되는 RS FEC 데이터는 각각의 모바일 서비스 데이터 패킷 내에 미리 결정된 RS parity 바이트 위치에 삽입된다. 따라서, 전 처리기에서 생성된 데이터 그룹이 메인 서비스 데이터를 전혀 포함하고 있지 않은 경우에는 메인 서비스 데이터를 위한 Systematic RS encoder(111)는 RS encoding을 수행하지 않는 것을 본 발명의 일실시예로 한다. 또한, 이 경우에는 Non-systematic RS Encoder(111)는 역호환성(backward-compatibility)을 위한 Non-systematic RS parity를 생성하지 않는 것을 본 발명의 일실시예로 한다.
Data interleaver(112)는 메인 서비스 데이터와 모바일 서비스 데이터를 포함하는 데이터에 대하여 바이트 단위의 인터리빙을 수행한다.
Non-systematic RS encoder(113)는 Modified trellis encoder(115)의 초기화가 필요한 경우 Modified trellis encoder(115) 내부의 메모리값을 입력받고, Data interleaver(112)로부터 모바일 서비스 데이터를 입력받아, 모바일 서비스 데이터의 초기화 데이터를 메모리값으로 변경한다. 변경된 모바일 서비스 데이터에 대하여 non-systematic RS 부호화를 수행하고 생성된 RS parity를 parity replacer로 출력한다.
Parity replacer(114)는 Modified trellis encoder(115)의 초기화가 필요한 경우Data interleaver(112)에서 출력되는 모바일 서비스 데이터를 입력받아, 모바일 서비스 데이터의 RS parity를 non-systematic RS encoder(113)에서 생성된 RS parity로 치환한다.
전 처리기에서 생성된 데이터 그룹이 메인 서비스 데이터를 전혀 포함하고 있지 않은 경우에는 역호환성 위한 RS parity를 데이터 그룹이 가지고 있을 필요가 없으므로, Non-systematic RS encoder(113)와 Parity replacer(114)는 상기 데이터 그룹에 대하여는 위에서 설명한 각각의 동작을 수행하지 않고 해당 데이터를 바이패스(bypass)하는 것을 본 발명의 일실시예로 한다.
Modified trellis encoder(115)는 Data interleaver(112)의 출력 데이터에 대하여 trellis encoding을 수행한다. 이 경우, trellis encoding후의 데이터가 수신측과 송신측이 미리 약속된 기지데이터를 포함하기 위하여는 trellis encoding을 시작하기 전에 Modified trellis encoder(115) 내의 메모리를 초기화시켜야 한다. 위 초기화는 데이터 그룹 내의 trellis initialize data에 의하여 시작된다.
Sync Mux(116)는 Modified trellis encoder(115)의 출력 데이터에 필드 동기와 세그먼트 동기를 삽입하여 다중화한다.
Pilot inserter(117)는 동기 신호가 다중화된 데이터에 수신측에서 채널 신호의 복조를 위한 반송파(carrier) 위상 동기로 사용되는 파일럿 신호를 삽입한다.
VSB-modulator(118)는 데이터를 전송하기 위하여 VSB 방식으로 변조한다.
Transmission unit(119)은 신호를 전송하기 위하여 변조된 신호의 주파수를 업컨버젼(up-conversion) 하여 신호의 전송을 수행한다..
본 발명의 송신 시스템은 기존 수신 시스템에서 메인 서비스 데이터를 수신하는데 전혀 영향을 주지 않으면서, 동일한 물리적 채널에 메인 서비스 데이터와 모바일 서비스 데이터를 다중화하여 전송할 수 있도록 한다.
본 발명의 송신 시스템은 모바일 서비스 데이터에 대해 추가적인 부호화를 수행하고, 송/수신측 모두가 미리 알고 있는 데이터 즉, 기지(known) 데이터를 삽입하여 전송할 수 있도록 한다.
이러한 본 발명에 따른 송신 시스템을 사용하면 수신 시스템에서는 이동 환경에서 모바일 서비스 데이터의 수신 성능의 향상이 가능하다. 또한 채널에서 발생하는 각종 왜곡과 노이즈에도 모바일 서비스 데이터의 안정적인 수신이 가능하다.
도2는 본 발명의 일실시예에 따른 모바일 서비스 데이터를 송수신하기 위한 DATA frame 구조를 나타낸 도면이다.
본 발명의 모바일 서비스 데이터는 DATA frame 단위로 메인 서비스 데이터와 다중화된 후 VSB 방식으로 변조되어 수신 시스템으로 전송되는 것을 일 실시예로 한다.
본 발명의 일실시예에 따른 DATA frame은 메인 서비스 데이터와 모바일 서비스 데이터를 전송하는 시간의 개념으로 정의할 수 있다. 예를 들면, 하나의 DATA frame은 20개의 VSB 데이터 frame을 전송하는데 걸리는 시간한 시간으로 정의할 수 있다.
이때 하나의 DATA frame은 K1개의 sub frame을 포함하고, 하나의 sub frame은 K2개의 슬롯을 포함할 수 있다. 또한 하나의 슬롯은 K3개의 데이터 패킷을 포함할 수 있다. 본 발명에서 K1은 5, K2는 16, K3은 156으로 설정하는 것을 일 실시예로 한다. 본 발명에서 제시하는 K1,K2,K3의 값은 바람직한 실시예이거나 단순한 예시이며, 상기 수치들에 본 발명의 권리범위가 제한되지는 않는다.
도 2는 하나의 DATA frame이 5개의 sub frame을 포하하고, 하나의 sub frame이 16개의 슬롯을 포함하는 예를 보이고 있다. 이 경우 하나의 DATA frame은 5개의 sub frame, 80개의 슬롯을 포함함을 의미한다.
그리고 하나의 슬롯은 패킷 레벨에서는 156개의 데이터 패킷(즉, 트랜스포트 스트림 패킷)을, 심볼 레벨에서는 156개의 데이터 세그먼트을 포함한다. 또는 VSB 필드의 반에 해당되는 크기를 갖는다. 즉, 207 바이트의 한 데이터 패킷이 한 개의 데이터 세그먼트와 동일한 페이로드 데이터 양을 가지므로 데이터 인터리빙되기 전의 데이터 패킷이 데이터 세그먼트의 개념으로 사용될 수 있다.
Slot이 포함하는 156개의 데이터 패킷은 156개의 메인 서비스 데이터패킷, 또는 118개의 모바일 서비스 데이터 패킷과 38개의 메인 서비스 데이터 패킷으로 이루어 질 수 있으며, 또는 118개 + M개의 모바일 서비스 데이터 패킷과 L개의 메인 서비스 데이터 패킷으로 이루어 질 수 있다. 이때, M과 L의 합은 38개인 것을 본 발명의 일실시예로 한다. 또한, M는 0또는 38이하의 자연수가 될 수 있다.
하나의 slot 동안에 하나의 데이터 그룹이 전송된다. 이때 전송되는 데이터 그룹은 118개 모바일 서비스 데이터 패킷을 포함하거나, 118개 + M 개의 모바일 서비스 데이터 패킷을 포함한다.
즉, 데이터 그룹은 하나의 slot 내에 존재하는 모바일 서비스 데이터를포함하는 데이터의 집합으로 정의할 수 있다. 이 때 모바일 서비스 데이터는 순수한 모바일 서비스 데이터로 정의될 수 있으며, 또는 시그널링 데이터, 기지데이터 등의 모바일 서비스 데이터 전송을 위한 데이터를 포함하는 개념으로 정의할 수 있다.
도 3은 본 발명의 일실시예에 따른 데이터 그룹이 118개의 모바일 서비스 데이터 패킷을 포함하는 경우, 데이터 그룹이 인터리빙되기 전의 구조를 나타낸 도면이다.
도 3에 따른 데이터 그룹은 FEC 부호화된 모바일 서비스 데이터, MPEG header, Trellis initialize data, Known data, Signaling data, RS parity data 및 Dummy data중 적어도 하나를 포함하는 118개의 TS 패킷을 포함한다. 본 발명에서는 설명의 편의를 위하여 데이터 그룹 내의 TS 패킷을 모바일 서비스 데이터 패킷으로 정의한다.
도 3에 도시된 데이터 그룹은 118개의 모바일 서비스 데이터 패킷을 포함하고 있으므로, 위 데이터 그룹이 전송되는 slot에는 38개의 메인 서비스 데이터 패킷이 전송됨을 알 수 있다.
도 4는 본 발명의 일실시예에 따른 데이터 그룹이 118개의 모바일 서비스 데이터 패킷을 포함하는 경우, 데이터 그룹이 인터리빙된 이후의 구조를 나타낸 도면이다.
도 4에 따르면, 118개의 모바일 서비스 데이터 패킷을 가진 데이터 그룹이 인터리빙되어 170개의 세그먼트를 가지는 데이터 그룹을 형성하였다.
여기서, 118개의 모바일 서비스 데이터 패킷이 170개의 세그먼트로 분산되는 것은 하나의 실시예에 불과하며, 인터리빙의 정도에 따라 데이터 그룹이 인터리빙된 후 형성하는 데이터 세그먼트의 숫자는 달라질 수 있다.
도 4는 데이터 인터리빙 후의 데이터 구성에서 데이터 그룹이 10개의 DATA 블록(MH 블록 B1~B10)을 포함하는 예를 보이고 있다. 그리고 각 DATA 블록은 16 세그먼트의 길이를 갖는 것을 일 실시예로 한다. 즉, DATA 블록은 모바일 서비스 데이터 세그먼트 또는 메인 서비스 데이터 세그먼트와 모바일 서비스 데이터 세그먼트를 전송하는 단위로 정의될 수 있다. 도 4에서 DATA 블록 B1의 앞 5 세그먼트와 DATA 블록 B10 뒤의 5 세그먼트는 일부에 RS 패리티 데이터만 할당하며, 데이터 그룹의 A 영역 내지 D 영역에서 제외하는 것을 일 실시예로 한다.
즉, 하나의 데이터 그룹이 적어도 A,B,C,D 영역을 포함한다고 가정하면, 데이터 그룹 내 각 DATA 블록의 특성에 따라 각 DATA 블록을 A 영역 내지 D 영역 중 어느 하나의 영역에 포함시킬 수 있다. 이때 메인 서비스 데이터의 간섭 정도에 따라 각 DATA 블록을 A 영역 내지 D 영역 중 어느 하나의 영역에 포함시키는 것을 일 실시예로 한다
여기서, 상기 데이터 그룹을 다수개의 영역으로 구분하여 사용하는 이유는 각각의 용도를 달리하기 위해서이다. 즉, 메인 서비스 데이터의 간섭이 없거나 적은 영역은 그렇지 않은 영역보다 강인한 수신 성능을 보일 수 있기 때문이다. 또한, 송/수신측의 약속에 의해 알고 있는 기지(known) 데이터를 데이터 그룹에 삽입하여 전송하는 시스템을 적용하는 경우, 모바일 서비스 데이터에 연속적으로 긴 기지 데이터를 주기적으로 삽입하고자 할 때, 메인 서비스 데이터의 간섭이 없는 영역(즉, 메인 서비스 데이터가 섞이지 않는 영역)에는 일정 길이의 기지 데이터를 주기적으로 삽입하는 것이 가능하다. 그러나 메인 서비스 데이터의 간섭이 있는 영역에는 메인 서비스 데이터의 간섭으로 기지 데이터를 주기적으로 삽입하는 것이 곤란하고 연속적으로 긴 기지 데이터를 삽입하는 것도 곤란하다.
도 4의 데이터 그룹 내 DATA 블록 B4 내지 DATA 블록 B7은 메인 서비스 데이터의 간섭이 없는 영역으로서 각 DATA 블록의 앞뒤에 긴 기지 데이터 열이 삽입된 예를 보이고 있다. 본 발명에서는 상기 DATA 블록 B4 내지 DATA 블록 B7을 포함하여 A 영역(=B4+B5+B6+B7)이라 하기로 한다. 상기와 같이 각 DATA 블록마다 앞뒤로 기지 데이터 열을 갖는 A 영역의 경우, 수신 시스템에서는 기지 데이터로부터 얻을 수 있는 채널 정보를 이용하여 등화를 수행할 수 있으므로, A 영역 내지 D 영역 중 가장 강인한 등화 성능을 얻을 수가 있다.
도 4의 데이터 그룹 내 DATA 블록 B3과 DATA 블록 B8은 메인 서비스 데이터의 간섭이 적은 영역으로서, 두 DATA 블록 모두 한쪽에만 긴 기지 데이터 열이 삽입된 예를 보이고 있다. 즉, 메인 서비스 데이터의 간섭으로 인해 DATA 블록 B3은 해당 DATA 블록의 뒤에만 긴 기지 데이터 열이 삽입되고, DATA 블록 B8은 해당 DATA 블록의 앞에만 긴 기지 데이터 열이 삽입될 수 있다. 본 발명에서는 상기 DATA 블록 B3과 DATA 블록 B8을 포함하여 B 영역(=B3+B8)이라 하기로 한다. 상기와 같이 각 DATA 블록마다 어느 한쪽에만 기지 데이터 열을 갖는 B 영역의 경우, 수신 시스템에서는 기지 데이터로부터 얻을 수 있는 채널 정보를 이용하여 등화를 수행할 수 있으므로, C/D 영역보다 더 강인한 등화 성능을 얻을 수가 있다.
도 4의 데이터 그룹 내 DATA 블록 B2과 DATA 블록 B9은 메인 서비스 데이터의 간섭이 B 영역보다 더 많으며, 두 DATA 블록 모두 앞뒤로 긴 기지 데이터 열을 삽입할 수 없다. 본 발명에서는 상기 DATA 블록 B2와 DATA 블록 B9을 포함하여 C 영역(=B2+B9)이라 하기로 한다.
도 4의 데이터 그룹 내 DATA 블록 B1과 DATA 블록 B10은 메인 서비스 데이터의 간섭이 C 영역보다 더 많으며, 마찬가지로 두 DATA 블록 모두 앞뒤로 긴 기지 데이터 열을 삽입할 수 없다. 본 발명에서는 상기 DATA 블록 B1과 DATA 블록 B10을 포함하여 D 영역(=B1+B10)이라 하기로 한다. 상기 C/D 영역은 기지 데이터 열로부터 많이 떨어져 있기 때문에 채널이 빠르게 변하는 경우에는 수신 성능이 좋지 않을 수 있다.
도 4를 참조하면, 데이터 그룹의 A, B 영역에 수신측의 시그널링에 사용되는 시그널링 데이터가 포함될 수 있음을 알 수 있다.
도 5는 본 발명의 일실시예에 따른 118개의 모바일 서비스 데이터 패킷을 가지는 데이터 그룹의 영역을 나타낸 도면이다.
도 5는 도 4에서 설명한 데이터 그룹의 각 영역에 대한 이해를 돕기위한 것이다.
도 5에서 알 수 있듯이, 118개의 모바일 서비스 데이터 패킷을 포함하는 데이터 그룹은 A, B, C, D의 4개의 영역으로 나뉠 수 있다. A영역은 데이터 그룹의 중앙에 위치하고 있으며, B영역은 A 영역을 중심으로 A 영역 외곽에 위치한다. C 영역은 A와 B 영역을 중심으로 B 영역 외곽에 위치한다. D 영역은 A, B 와 C 영역을 중심으로 C 영역 외곽에 위치한다.
도 6은 본 발명의 일실시예에 따른 118 + M개의 모바일 서비스 데이터 패킷을 가지는 데이터 그룹을 나타낸 도면이다.
도 6의 (a)을 참조하면, 데이터 그룹은 A, B, C, D, E 영역을 포함한다. 이러한 데이터 그룹은 156개의 패킷을 포함하는 slot에 포함된다. 즉, 하나의 slot 내의 특정 개수의 패킷이 데이터 그룹을 형성하는데, 이러한 패킷은 모바일 서비스 데이터를 포함한다.
데이터 그룹 내에 고정적인 118개의 모바일 서비스 데이터 패킷은 인터리빙이 된 후, 도 4에서 설명한 바와 같이 A, B, C, D 영역으로 나뉘게 된다.
한편, 데이터 그룹 내에 포함될 수 있는 가변적인 M개의 모바일 서비스 데이터 패킷은 별도의 E 영역에 포함 된다. E 영역은 하나의 slot 내에서 데이터 그룹이 118개의 모바일 서비스 데이터 패킷으로 구성되었던 경우에 있어서, 메인 서비스 데이터 패킷만으로 구성되었던 영역 내에서 모바일 서비스 데이터 패킷이 추가된 특정 영역으로 정의할 수 있다. 즉, E 영역은 하나의 slot 내에서 모바일 서비스 데이터 패킷이 가변적인 개수로 포함되는 영역이다.
E 영역의 모바일 서비스 데이터 패킷의 맵핑 형태는 설계자에 따라 달라 질 수 있다. 즉, 본 발명의 일실시예로 도 6의 (a)에 도시된 바와 같이 모바일 서비스 데이터 패킷이 38개 미만인 경우(즉, M<38), 하나의 slot 내에서 특정 패킷 영역을 메인 서비스 데이터 패킷 영역으로 비워두고 모바일 서비스 데이터 패킷을 맵핑할 수 있다. 또 다른 실시예로 E 영역이 포함하는 M 개의 가변적인 모바일 서비스 데이터 패킷이 일정한 간격을 가지도록 모바일 서비스 데이터 패킷을 데이터 그룹에 맵핑할 수 있다.
도 6의 (b)는 E 영역을 포함하는 도 6의 (a)의 데이터 그룹이 인터리빙된 후의 형태를 나타낸다.
도 6의 (b)에 도시된 바와 같이, 데이터 그룹 내의 10개의 블록(B1 ~ B10)은 도 5에 도시된 데이터 그룹과 동일한 패턴으로 A, B, C, D 영역을 형성한다. 그러나, 가변적인 M개의 모바일 서비스 데이터 패킷을 포함하는 E 영역은 별도의 추가적인 블록으로 형성된다.
도 6의 (b)에서, 데이터 그룹내의 E 영역은 복수의 블록들에 포함될 수있는데, 각 블록은 가변 수의 VSB 세그먼트들에 해당할 수 있다. E 영역을 통하여 추가적으로 전송되는 모바일 서비스 데이터는 4개 또는 5개의 블록에 걸쳐 분포하는 것을 일실시예로 한다..
한편, E 영역으로 분류되는 블록에는, 데이터 그룹이 메인 서비스 데이터를 포함하지 않는 경우, 기존의 디지털 방송 시스템과의 역호환성을 위한 RS Parity와 MPEG header의 위치 홀더가 존재하는 영역이 포함된다. 즉, 데이터 그룹이 메인 서비스 데이터를 포함하지 않는 경우에는 역호환성을 위한 RS Parity와 MPEG header가 필요 없으므로, 이 데이터를 위하여 예약된(reserved) 영역은 모바일 서비스 데이터를 위한 영역으로 할당되고, E 영역에 포함되는 블록을 형성한다.
도 6의 (b)에서는 5개의 블록이 E 영역에 포함되는것으로 도시하였으나, 이에 한정하지 않는다. 즉, E 영역을 구성하는 블록 내에 포함되는 세그먼트의 개수는 달라질 수 있고, 이에 따라 E 영역에 포함되는 블록의 개수도 달라질 수 있다.
한편, 본 발명에 따르면, 데이터 그룹 내의 E 영역은 가변적인 M 개의 모바일 서비스 데이터 패킷에 의하여 결정되므로, 전송하여야 하는 모바일 서비스 데이터의 양에 따라 적정한 수의 모바일 서비스 데이터 패킷을 전송할 수 있어 전송 효율을 높일 수 있는 효과를 가진다.
또한, 데이터 그룹 내의 E 영역을 통하여 추가적인 모바일 서비스 데이터 패킷을 전송함으로써, 많은 데이터를 필요로 하는 고품질의 모바일 서비스를 원하는 수요자의 요구를 충족시킬 수 있는 효과가 있다.
도 7은 본 발명의 일실시예에 따른 퍼레이드 타입에 따른 데이터 그룹 내의 영역 구분, 각 Ensemble이 전송되는 영역, 호환성, 하나의 slot내에 포함되는 모바일 서비스 데이터 패킷의 수 등의 테이블을 나타낸 도면이다.
설명의 편의를 위하여 하나의 slot 내에 포함되는 모바일 서비스 데이터 패킷의 수를 나타내는 정보를 scalable mode라고 정의한다. 또한 하나의 slot 동안에 모바일 서비스 데이터를 포함하는 데이터 그룹이 전송되므로, scalable mode는 데이터 그룹이 가지는 모바일 서비스 데이터 패킷의 수를 나타내는 정보가 될 수 있다. 즉, slot에 포함되는 데이터 그룹이 118 + M 개의 모바일 서비스 데이터 패킷을 가지고 slot이 나머지 패킷 개수 인 L개의 메인 서비스 데이터 패킷을 포함하는 경우, scalable mode는 M 또는 L의 정보를 포함하는 것으로 볼 수 있다. 즉, scalable mode는 M개에 대한 정보 또는 156-(118+M)개(이하에서는 156-(118+M)개를 L개라 표시할 수 있다.)에 대한 정보 중 적어도 하나의 정보를 가리키는 정보로 볼 수 있다.
본 발명의 실시예에 따르면, M은 0 보다 크거나 같고, 38보다 작거나 같은 정수가 될 수 있다. 예를 들면, M은 11, 20, 29, 38의 값을 가질 수 있다.
한편, 본 실시예에서는 Ensemble 개념을 도입하여, 서비스의 집합을 정의한다. 하나의 Ensemble은 동일한 QoS를 가지며, 동일한 FEC 코드로 코딩된다. 또한 Ensemble은 고유 식별자(즉, ensemble id)를 가지며, 같은 FEC 코드를 갖는 연속적인 RS frame들의 집합이다. 즉, 연속적인 RS frame의 set는 논리적으로 ensemble을 형성한다.
한편, 본 실시예에서는 RS frame은 2차원의 데이터 frame으로 정의된다. 모바일 서비스 데이터는 RS frame을 통하여 전송된다.
도 7에 따른, 본 발명의 일실시예에 따른 디지털 방송 신호를 전송하는 처리 및 전송하는 방식에 있어서, 첫 번째 타입의 경우, scalable mode가 M값이 0임을 가리키고 있다. 즉, 데이터 그룹 내에 포함된 모바일 서비스 데이터 패킷의 개수가 118개인 경우이다. 하나의 Ensemble은 A, B, C, D 영역 전체를 통하여 전송될 수 있는데, 이 경우 하나의 Ensemble을 Primary Ensemble로 정의한다.
두 번째 타입의 경우, 첫 번째 타입과 동일하게 scalable mode가 M 값이 0임을 가리키는 경우이다. 그러나, 두 개의 Ensemble이 A, B, C, D 영역을 통하여 전송된다. 이 때, A, B 영역을 통하여 전송되는 Ensemble을 Primary Ensemble이라 하고, C, D 영역을 통하여 전송되는 Ensemble을 Secondary Ensemble이라 한다. Primary Ensemble과 Secondary Ensemble은 서로 다른 QOS(Quality of Service), FEC 코드를 가진다. Primary Ensemble과 Secondary Ensemble이 서로 다른 QOS와 FEC 코드를 가지므로, Primary Ensemble과 Secondary Ensemble은 서로 다른 용도의 모바일 서비스 데이터를 전송하는 것을 본 발명의 일실시예로 한다.
세 번째 타입의 경우, scalable mode는 M 값이 0이 아닌 경우를 가리킨다. 즉, 세 번째 타입은 데이터 그룹 내에 118개 모바일 서비스 데이터 패킷 이외에 추가적인 모바일 서비스 데이터 패킷이 포함된 경우를 나타낸다. 본 실시예에서는 M값이 30인 경우를 예를 들었으나, 전술한 바와 같이 M 값은 38 이하의 가변적인 수이므로 본 실시예에 한정하지 않는다. primary Ensemble은 A, B, C, D 영역을 통하여 전송되고, M 값에 따라 데이터 그룹에 추가된 E 영역을 통하여 Secondary Ensemble이 전송되는 일실시예를 나타낸다.
네 번째 타입의 경우, scalable mode는 세 번째 타입과 동일하다. 그러나 Primary Ensemble은 A, B 영역을 통하여 전송되고, Secondary Ensemble은 C, D, E 영역을 통하여 전송된다. 이 경우 A, B 영역은 현재의 디지털 모바일 방송 시스템과의 호환성을 유지하는 한편, C, D, E 영역은 모바일 서비스 데이터에 대하여 추가적인 페이로드를 지원한다.
다섯 번째 타입의 경우, scalable mode는 세 번째, 네 번째 타입과 동일하다. 그러나, Primary Ensemble이 A, B, C, D, E 전체 영역을 통하여 전송된다.
여섯 번째 타입의 경우, scalable mode가 M 값이 38인 경우를 가리킨다. 즉, 하나의 slot 내에서 156개의 모바일 서비스 데이터 패킷을 포함하는 데이터 그룹이 전송된다. Primary Ensemble이 A, B, C, D 영역을 통하여 전송되고, Secondary Ensemble은 E 영역을 통하여 전송된다.
일곱 번째 타입의 경우, scalable mode가 여섯 번째 타입과 동일한 경우이다. 그러나 Primary Ensemble은 A, B 영역을 통하여 전송되고, Secondary Ensemble은 C, D, E 영역을 통하여 전송된다. 따라서, A, B 영역은 현재의 디지털 모바일 방송 시스템과 호환성을 제공하는 한편, C, D, E 영역은 모바일 서비스 데이터에 대하여 추가적인 페이로드를 지원한다.
여덟 번째 타입의 경우, scalable mode가 여섯 번째 타입 및 일곱 번째 타입과 동일한 경우이다. 그러나, Primary Ensemble이 A, B, C, D, E 전체 영역을 통하여 전송된다.
본 발명은 Primary Ensemble과 Secondary Ensemble이 전송되는 영역이 RS frame mode로 정의된 정보에 의하여 수신측에서 식별되는 것을 일실시예로 한다. 즉, RS frame mode는 Primary Ensemble이 A, B 영역을 통하여 전송되고 Secondary Ensemble이 C, D, E 영역을 통하여 전송되는 경우 또는 Primary Ensemble이 A, B, C, D, E 전체 영역을 통하여 전송되는 경우 등을 나타내는 정보로 정의할 수 있다.
본 발명의 일실시예로 scalable mode가 M값이 38인 것을 가리키는 경우, 즉 데이터 그룹 내이 포함하는 모바일 서비스 데이터 패킷이 156개인 경우에는 메인 서비스 데이터 패킷이 slot 내에 전혀 포함되지 않는다. 따라서, 역호환성을 위한 RS parity와 MPEG header는 데이터 그룹에 삽입될 필요가 없다. 이 경우, 역호환성을 위한 RS parity와 MPEG header를 위하여 예약된 데이터 영역(data area)에 모바일 서비스 데이터를 삽입할 수 있다. 이 경우, 디지털 방송 송신기는 보다 많은 모바일 서비스 데이터를 전송할 수 있다.
본 발명에 따른 또 다른 실시예로, 하나의 sub-frame내의 16개의 slot 각각을 통하여 전송되는 데이터 그룹의 scalable mode는 각각 다를 수 있다. 따라서 하나의 sub-frame 내에 특정 slot에 위치하는 데이터 그룹의 scalable mode가 M 값이 38임을 가리키는 경우에도, 나머지 slot에 위치하는 데이터 그룹 중 일부의 scalable mode가 M 값이 38이 아닌 것을 가리킨다면 해당 sub-frame은 메인 서비스 데이터를 포함하고 있으므로, 해당 sub-frmae내의 각 데이터 그룹은 RS parity와 MPEG header를 포함하고 있어야 한다. 즉, 이 경우에는 역호환성을 위한 RS parity와 MPEG header를 위하여 예약된 데이터 영역(data area)에 모바일 서비스 데이터를 삽입할 수 없다. 그러나, 이 경우, 기존의 디지털 방송 시스템과 호환성을 유지할 수 있다.
도 8은 본 발명의 일실시예에 따른 데이터 그룹이 118 + M개의 모바일 서비스 데이터 패킷을 포함하는 경우, 데이터 그룹이 인터리빙되기 전의 구조를 나타낸 도면이다.
도 8의 데이터 그룹은 A, B 영역의 모바일 서비스 데이터, C, D 영역의 모바일 서비스 데이터, E 영역의 모바일 서비스 데이터, MPEG header, Trellis initialize data, Known data, Signaling data, RS parity data, Dummy data를 포함한다.
도 8의 데이터 그룹을 참조하면, M는 0보다는 크고 38 보다는 작은 정수이다. 즉, 데이터 그룹 내에 포함되는 모바일 서비스 데이터 패킷의 수는 118개 보다는 크고, 156개 보다는 작다. 도 8에서는 M 값이 30 인 경우를 도시하였으나, 이에 한정하지 않는다.
도 8에 도시된 바와 같이, 하나의 slot 내의 156개의 TS 패킷 중 모바일 서비스 데이터 패킷에 할당되지 않는 TS 패킷 영역은 메인 서비스 데이터를 위하여 예약(reserved)된 것이다.
도 9는 본 발명의 일실시예에 따른 데이터 그룹이 118 + M개의 모바일 서비스 데이터 패킷으을 포함하는 경우, 데이터 그룹이 인터리빙된 후의 구조를 나타낸 도면이다.
도 9는 도 8의 데이터 그룹이 인터리빙 된 후의 구조와 동일하다.
도 9에 따른 데이터 그룹은 Primary Ensemble을 데이터 그룹의 A, B, C, D 영역을 통하여 전송하고, Secondary Ensemble은 데이터 그룹의 E 영역을 통하여 전송한다. A, B, C, D 영역의 모바일 서비스 데이터는 기존의 디지털 모바일 방송 시스템과의 호환성을 제공한다.
도 9에서는 데이터 그룹을 A, B, C, D 영역에 포함되는 10개의 Block과 E 영역에 포함되는 2개의 추가적인 Block으로 나누어 도시하였으나, E 영역에 포함되는Block의 개수는 2개로 한정하지 않고, 설계자에 따라 달라 질 수 있다.
도 9에 도시된 바와 같이, Known data가 E 영역에 삽입되었다. 따라서 E 영역에 대한 수신측의 수신 성능이 향상되는 효과가 있다.
여기서, 기지데이터(Known data)는 송신측과 수신측이 약속에 의하여 서로 알고 있는 데이터이다. 송신측에서는 약속된 내용의 데이터를 기지데이터(Known data)로 수신측으로 전송한다. 데이터를 전송하는 과정에서 신호에 대한 왜곡이 일어날 수 있다. 이 경우, 수신측은 송신측에서 전송한 기지데이터의 왜곡의 정도를 참조하여 채널 등화 등을 수행할 수 있다. 즉, 기지데이터는 수신측에 있어서 방송 신호의 수신 성능을 높이기 위하여 사용되는 데이터이다.
도 10은 본 발명의 일실시예에 따른 데이터 그룹이 118 + M개의 모바일 서비스 데이터 패킷을 포함하는 경우, 데이터 그룹이 인터리빙되기 전의 구조를 나타낸 도면이다.
도 10의 데이터 그룹은 A, B 영역의 모바일 서비스 데이터, C, D 영역의 모바일 서비스 데이터, E 영역의 모바일 서비스 데이터, MPEG header, Trellis initialize data, Known data, Signaling data, RS parity data, Dummy data를 포함한다.
도 10의 데이터 그룹을 참조하면, M는 0보다는 크고 38 보다는 작은 정수이다. 즉, 데이터 그룹 내에 포함되는 모바일 서비스 데이터 패킷의 수는 118개 보다는 크고, 156개 보다는 작다. 도 10에서는 M 값이 30 인 경우를 도시하였으나, 이에 한정하지 않는다.
도 11는 본 발명의 일실시예에 따른 데이터 그룹이 118 + K개의 모바일 서비스 데이터 패킷을 포함하는 경우, 데이터 그룹이 인터리빙된 후의 구조를 나타낸 도면이다.
도 11는 도 10의 데이터 그룹이 인터리빙 된 후의 구조와 동일하다.
도 11에 따른 데이터 그룹은 Primary Ensemble을 데이터 그룹의 A, B 영역을 통하여 전송하고, Secondary Ensemble은 데이터 그룹의 C, D, E 영역을 통하여 전송한다. A, B 영역의 모바일 서비스 데이터는 기존의 디지털 모바일 방송 시스템과의 호환성을 제공한다.
또한, A, B, C, D, E 영역 전체를 통하여 Primary Ensemble을 전송할 수 도 있다.
도 11에서는 데이터 그룹을 A, B, C, D 영역에 포함되는 10개의 Block과 E 영역에 포함되는 2개의 추가적인 Block으로 나누어 도시하였으나, E 영역을 구성하는 Block의 개수는 2개로 한정하지 않고, 설계자에 따라 달라 질 수 있다.
도 11에 도시된 바와 같이, A, B 영역 이외에 C, D영역에 추가적으로 Known data(1101)가 삽입되었다. 도 4 또는 도 9에 도시된 데이터 그룹과 달리, C, D 영역에 추가적인 Known data를 삽입하여, C, D 영역을 통하여 전송되는 모바일 서비스 데이터의 수신 성능을 향상 시킬 수 있다.
도 12는 본 발명의 일실시예에 따른 데이터 그룹이 118 + 38개의 모바일 서비스 데이터 패킷을 포함하는 경우, 데이터 그룹이 인터리빙되기 전의 구조를 나타낸 도면이다.
도 12의 데이터 그룹은 A, B 영역의 모바일 서비스 데이터, C, D 영역의 모바일 서비스 데이터, E 영역의 모바일 서비스 데이터, MPEG header, Trellis initialize data, Known data, Signaling data, RS parity data, Dummy data를 포함한다.
도 12에 도시된 바와 같이 E 영역은 메인 서비스 데이터 패킷을 포함하지 않으므로 RS parity, MPEG header를 위한 영역이 없다. 따라서 위 영역들을 모바일 서비스 데이터를 전송하는 데 사용할 수 있어, 보다 많은 모바일 서비스 데이터를 전송할 수 있다.
도 13은 본 발명의 일실시예에 따른 데이터 그룹이 118 + 38개의 모바일 서비스 데이터 패킷을 포함하는 경우, 데이터 그룹이 인터리빙된 후의 구조를 나타낸 도면이다.
도 13는 도 12의 데이터 그룹이 인터리빙 된 후의 구조와 동일하다.
도 13에 따른 데이터 그룹은 Primary Ensemble을 데이터 그룹의 A, B, C, D 영역을 통하여 전송하고, Secondary Ensemble은 데이터 그룹의 E 영역을 통하여 전송한다. A, B, C, D 영역은 기존의 데이터 그룹의 구조와 동일하기 때문에 기존의 디지털 모바일 방송 시스템과의 호환성을 제공한다. 또한, E 영역을 통하여 추가적인 모바일 서비스 데이터를 전송할 수 있다.
도 13에서는 데이터 그룹을 A, B, C, D 영역에 포함되는 10개의 Block과 E 영역에 포함되는 2개의 추가적인 Block으로 나누어 도시하였으나, E 영역에 포함되는 Block의 개수는 2개로 한정하지 않고, 설계자에 따라 달라 질 수 있다.
도 13에 도시된 바와 같이, Known data가 E 영역에 삽입되었다. 따라서 E 영역에 대한 수신측의 수신 성능이 향상되는 효과가 있다. 또한, 전술한 바와 같이, E 영역 내에 존재하는 RS parity와 MPEG header를 위하여 예약된 영역(reserved area)에 모바일 서비스 데이터를 삽입하여 보다 많은 모바일 서비스 데이터를 전송할 수 있다.
도 14는 본 발명의 일실시예에 따른 데이터 그룹이 118 + 38개의 모바일 서비스 데이터 패킷을 포함하는 경우, 데이터 그룹이 인터리빙되기 전의 구조를 나타낸 도면이다.
도 14의 데이터 그룹은 A, B 영역의 모바일 서비스 데이터, C, D 영역의 모바일 서비스 데이터, E 영역의 모바일 서비스 데이터, MPEG header, Trellis initialize data, Known data, Signaling data, RS parity data, Dummy data를 포함한다.
도 14에 도시된 바와 같이 C, D, E 영역에는 메인 서비스 데이터 패킷, RS parity과 MPEG header를 위한 영역이 없다. 따라서 위 영역들을 모바일 서비스 데이터를 전송하는 데 사용할 수 있어, 보다 많은 모바일 서비스 데이터를 전송할 수 있다.
도 15은 본 발명의 일실시예에 따른 데이터 그룹이 118 + 38개의 모바일 서비스 데이터 패킷을 포함하는 경우, 데이터 그룹이 인터리빙된 후의 구조를 나타낸 도면이다.
도 15는 도 14의 데이터 그룹이 인터리빙 된 후의 구조와 동일하다.
도 15에 따른 데이터 그룹은 Primary Ensemble을 데이터 그룹의 A, B 영역을 통하여 전송하고, Secondary Ensemble은 데이터 그룹의 C, D, E 영역을 통하여 전송한다. A, B 영역은 RS parity와 MPEG header를 포함하므로 기존의 디지털 모바일 방송 시스템과의 호환성을 유지할 수 있다.
도 15에서는 데이터 그룹을 A, B, C, D 영역에 포함되는 10개의 Block과 E 영역에 포함되는 2개의 추가적인 Block으로 나누어 도시하였으나, E 영역에 포함되는 Block의 개수는 2개로 한정하지 않고, 설계자에 따라 달라 질 수 있다.
도 15에 도시된 바와 같이, A, B 영역 이외에 C, D 영역에도 추가적인 Known data(15001)가 삽입되었다. 도 15에 도시된 데이터 그룹은 메인 서비스 데이터의 간섭을 받지 않으므로 도 11에 도시된 데이터 그룹과 다르게, C, D 영역에 연속적인 Known data sequence를 가질 수 있게 되었다. 따라서 수신측에서의 C, D 영역을 통하여 전송되는 모바일 서비스 데이터에 대한 수신 성능을 크게 향상 시킬 수 있다.
본 발명에서는 C, D 영역에 삽입되는 Known data sequence의 개수를 한정하지 않는다. 따라서, 설계자에 따라서 수신측에서 수신 성능 향상을 위하여 필요한 정도의 Known data sequence를 삽입할 수 있다. 본 발명에서는 C 영역에 3개의 Known data sequence가 삽입되고, D 영역에 2개의 Known data sequence가 삽입되는 것을 일실시예로 한다.
또한, 전술한 바와 같이, C, D, E 영역에 RS parity와 MPEG header를 위하여 예약된 영역(reserved area)에 모바일 서비스 데이터를 삽입하여 보다 많은 모바일 서비스 데이터를 전송할 수 있다.
도 16는 본 발명의 일실시예에 따른 데이터 그룹이 118 + 38개의 모바일 서비스 데이터 패킷을 포함하는 경우, 데이터 그룹이 인터리빙되기 전의 구조를 나타낸 도면이다.
도 16과 같은 데이터 그룹은 하나의 sub-frame내에 존재하는 16개의 slot이 모두 156개의 모바일 서비스 데이터 패킷을 포함하는 데이터 그룹을 전송하는 경우에 있어서, 어느 하나의 데이터 그룹의 형태인 것을 일실시예로 한다.
도 16의 데이터 그룹은 A, B 영역의 모바일 서비스 데이터, C, D 영역의 모바일 서비스 데이터, E 영역의 모바일 서비스 데이터, Trellis initialize data, Known data, Signaling data, Dummy data를 포함한다. 즉, 데이터 그룹은 데이터 그룹 내의 전 영역에서 RS parity와 MPEG header를 포함하지 않는다.
도 16에 도시된 바와 같이 A, B, C, D, E 영역에는 RS parity과 MPEG header를 위한 영역이 없다. 따라서 위 영역들을 모바일 서비스 데이터를 전송하는 데 사용할 수 있어, 보다 많은 모바일 서비스 데이터를 전송할 수 있다.
도 17은 본 발명의 일실시예에 따른 데이터 그룹이 118 + 38개의 모바일 서비스 데이터 패킷을 포함하는 경우, 데이터 그룹이 인터리빙된 후의 구조를 나타낸 도면이다.
도 17는 도 16의 데이터 그룹이 인터리빙 된 후의 구조와 동일하다.
도 17에서는 데이터 그룹을 A, B, C, D 영역에 포함되는 10개의 Block과 E 영역에 포함되는 2개의 추가적인 Block으로 나누어 도시하였으나, E 영역에 포함되는 Block의 개수는 2개로 한정하지 않고, 설계자에 따라 달라 질 수 있다.
도 17에 도시된 바와 같이, A, B 영역 이외에 C, D 영역에도 추가적인 Known data가 삽입되었다. 도 17에 도시된 데이터 그룹은 메인 서비스 데이터의 간섭을 받지 않으므로 도 11에 도시된 데이터 그룹과 다르게, C, D 영역에 연속적인 Known data sequence를 가질 수 있게 되었다. 따라서 수신측에서의 C, D 영역을 통하여 전송되는 모바일 서비스 데이터에 대한 수신 성능을 크게 향상 시킬 수 있다.
또한, 제 1 데이터 그룹의 E 영역에 존재하는 제 1 Known data와 제 1 데이터 그룹과 연접하는(adjacent) 제 2 데이터 그룹의 상위 C, D 영역에 존재하는 제 2 Known data가 연결될 수 있다. 이 경우 데이터 그룹은 데이터 그룹의 전체 영역에서 Known data sequence를 가질 수 있게 된다. 따라서 데이터 그룹 전체 영역에서 기존의 데이터 그룹의 전송 시 보다 뛰어난 모바일 서비스 데이터 수신 성능을 가지게 된다.
본 발명에 따른 다른 실시예로, 제 1 데이터 그룹의 Known data와 제 1 데이터 그룹에 연접하는 제 2 데이터 그룹의 Known data가 연결되는 경우에는 각 Known data의 전단에 삽입되는 trellis initialize data 대신에 Known data를 추가적으로 삽입할 수 있다. 이 경우, 연결된 Known data sequence의 전단에 위치할 trellis initialize data는 데이터 그룹 내에 포함되어 있어야 할 것이다.
또한, 도 17에 도시된 바와 같이 A, B, C, D, E 영역에 RS parity와 MPEG header를 위하여 예약된 영역(reserved area)에 모바일 서비스 데이터를 삽입하여, 하나의 데이터 그룹 내에서 보다 많은 모바일 서비스 데이터가 전송될 수 있다.
도 18은 본 발명의 일실시예에 따른 디지털 방송의 시그널링을 위한 데이터 필드의 syntax 구조를 나타낸 도면이다.
본 발명에서는 설명의 편의를 위하여 위 데이터 필드를 TPC(Transmission Parameter Channel) 데이터라고 명명한다.
TPC 데이터는 Sub-Frame_number 필드, Slot_number 필드, Parade_id 필드, starting_Group_number (SGN) 필드, number_of_Group (NoG) 필드, Parade_repetition_cycle (PRC) 필드, RS_Frame_mode 필드, RS_code_mode_primary 필드, RS_code_mode_secondary 필드, SCCC_Block_mode 필드, SCCC_outer_code_mode_A 필드, SCCC_outer_code_mode_B 필드, SCCC_outer_code_mode_C 필드, SCCC_outer_code_mode_D 필드, FIC_version 필드, Parade_continuity_counter 필드, TNoG 필드, TPC_protocol_version 필드 등을 포함할 수 있다.
상기 Sub-frame_number 필드는 해당 DATA frame 내 현재 sub frame의 개수를 표시하며, DATA frame 동기화를 위해 전송된다. 상기 Sub-frame_number 필드 값은 0~4 사이의 값을 가질 수 있다.
상기 Slot_number 필드는 해당 sub frame 내 현재 슬롯의 개수를 표시하며, DATA frame 동기화를 위해 전송된다. 상기 Slot_number 필드 값은 0~15 사이의 값을 가질 수 있다.
상기 Parade_id 필드는 해당 데이터 그룹이 속한 퍼레이드를 식별하기 위한 식별자를 표시한다. 상기 Parade_id 필드값은 7비트로 표시할 수 있다. 하나의 DATA 전송에서 각 퍼레이드는 유일한 Parade_id을 갖는다. 이때 물리 계층과 상위 계층 사이에서 Parade_id 의 통신은 상기 Parade_id 의 왼쪽에 1비트를 추가함에 의해 형성되는 Ensemble_id에 의해 이루어진다. 상기 퍼레이드를 통해 전송되는 Ensemble을 구분하기 위한 Ensemble_id는 상기 추가된 MSB에 0을 표시하여 형성되고, Secondary Ensemble을 구분하기 위한 Ensemble_id는 상기 추가된 MSB에 1을 표시하여 형성될 수 있다.
상기 SGN 필드는 상기 데이터 그룹이 속한 퍼레이드에 대한 첫 번째 슬롯 번호를 표시한다.
상기 NoG 필드는 상기 데이터 그룹이 속한 퍼레이드에 할당된 그룹들의 번호를 표시한다.
상기 PRC 필드는 DATA frame 단위로 전송되는 퍼레이드의 반복 주기를 지시한다.
상기 RS_Frame_mode 필드는 하나의 퍼레이드로 하나의 RS frame을 전송하는지, 2개의 RS frame을 전송하는지를 표시한다.
상기 RS_code_mode_primary 필드는 RS frame에 대한 RS 코드 모드를 표시한다.
상기 RS_code_mode_secondary 필드는 Secondary RS frame에 대한 RS 코드 모드를 표시한다.
상기 SCCC_Block_mode는 데이터 그룹 내 DATA 블록들이 SCCC 블록에 어떻게 할당되는지를 표시한다.
상기 SCCC_outer_code_mode_A 필드는 데이터 그룹 내 영역 A에 대한 SCCC 아웃터 코드 모드를 표시한다.
상기 SCCC_outer_code_mode_B 필드는 데이터 그룹 내 영역 B에 대한 SCCC 아웃터 코드 모드를 표시한다.
상기 SCCC_outer_code_mode_C 필드는 데이터 그룹 내 영역 C에 대한 SCCC 아웃터 코드 모드를 표시한다.
상기 SCCC_outer_code_mode_D 필드는 데이터 그룹 내 영역 D에 대한 SCCC 아웃터 코드 모드를 표시한다.
상기 FIC_version 필드는 FIC 데이터의 버전을 표시한다.
상기 Parade_continuity_counter 필드는 0~15까지 증가하며, (PRC+1) DATA frame마다 1씩 증가한다. 예를 들어, PRC = 011라면, 상기 Parade_continuity_counter 필드는 4번째 DATA frame마다 증가한다.
상기 TNoG 필드는 하나의 sub frame 내에 할당되는 전체 데이터 그룹의 개수를 표시한다.
상기 tpc_protocol_version 필드는 5비트의 무부호 정수 필드로서, TPC syntax 구조의 버전을 표시한다.
본 발명에 따른 TPC 데이터는 추가되는 E 영역의 모바일 서비스 데이터에 대한 정보를 포함하도록 확장될 수 있다. 이 경우 tpc_protocol_version 필드가 나타내는 TPC syntax 구조의 버젼도 변경될 것이다.
TPC 데이터는 시그널링을 위한 정보로서, 데이터 그룹 내에 E 영역이 모바일 서비스 데이터를 전송하는 영역으로 할당될 경우 이에 대한 정보도 포함할 수 있다. scalable mode 정보를 TPC 데이터에 포함하는 것을 본 발명의 일실시예로 한다. 즉, 데이터 그룹 내에 포함되는 118 + M 개의 모바일 서비스 데이터 패킷에 대한 정보 중 M 값을 나타내는 scalable 정보가 TPC 데이터에 포함되어 수신측에서 데이터 그룹의 구조에 대한 정보를 받을 수 있다. 예를 들어, scalable mode가 000인 경우, M값은 11를 가리키고, scalable mode가 001인 경우, M값은 20를 가리키고, scalable mode가 010인 경우, M값은 29를 가리키고, scalable mode가 011인 경우, M값은 38를 가리키고, scalable mode가 111인 경우, 위 slot이 속하는 sub frame의 전체 data group에서 M값이 38인 것을 가리킨다.
본 발명에 따른 또 다른 실시예로, TPC 데이터에 포함되는 scalable mode 정보는 현재의 frame 또는 다음 frame에 대한 scalable mode 정보로 세분될 수 있다. 즉, 현재 전송되는 frame 내에 포함된 TPC 데이터에서 다음 frame의 scalable mode 정보를 통하여 수신측에서 수신될 데이터에 대한 예측 가능성을 제공하여, 수신기에서 안정정신 데이터 수신이 가능하다.
상기 TPC 데이터에 포함되는 정보들은 본 발명의 이해를 돕기 위한 일 실시예 일 뿐이며, 상기 TPC 데이터에 포함되는 정보들의 추가 및 삭제는 당업자에 의해 용이하게 변경될 수 있으므로 본 발명은 상기 실시예로 한정되지 않을 것이다.
도 19는 본 발명의 일실시예에 따른 디지털 방송 데이터 처리 및 송신 방법을 나타낸 순서도이다.
도 19에 따르면, 가변적인 개수의 모바일 서비스 데이터 패킷과 가변적인 개수의 메인 서비스 데이터 패킷을 다중화한다(S1910). 일실시예로, 모바일 서비스 데이터는 118 + M 개의 가변적인 개수의 데이터 패킷에 포함되고, 메인 서비스 데이터는 156-(118 + M) 개의 가변적인 개수의 데이터 패킷에 포함된다. 일실시예로, M은 38이하의 숫자이다.
다중화된 데이터 패킷 내에 있는 데이터에 대하여 인터리빙을 한다(S1920). 인터리빙 된 후에는 156개의 패킷을 가질 수 있는 데이터 그룹이 208개의 데이터 세그먼트에 걸쳐 분산된다.
인터리빙된 메인 데이터와 하나의 데이터 그룹 내의 모바일 서비스 데이터는 slot 단위로 전송된다(S1930). 이때 전송되는 데이터 그룹 내의 모바일 서비스 데이터는 5개로 나뉘어진 데이터 그룹 내의 각각의 영역을 통하여 전송된다. 일실시예로 하나의 데이터 그룹이 A, B, C, D, E 영역으로 나누어 질 수 있다. 이 때, E 영역은 가변적인 개수의 모바일 서비스 데이터 패킷을 포함한다.
전송되는 데이터 그룹은 도 3, 4, 8 내지 17에 도시된 데이터 그룹 중어느 하나의 구조를 가질 수 있다. 또한, 도시된 데이터 구조와 완전히 일치하지는 않더라도 본 발명의 기술적 특징을 포함하는 형태의 데이터 그룹의 구조를 가질 수 있다.
전송 방식에 따라, A, B 영역과 C, D, E 영역을 통하여 전송되는 데이터는 각각 다른 FEC 코드로 부호화될 수 있고, 이에 따라 각각 다른 QOS를 가질 수 있다. 또한, 같은 FEC 코드로 부호화된 데이터가 A, B, C, D, E 영역 전체를 통하여 전송될 수도 있다.
본 발명에서는 A, B 영역에 시그널링 바이트(signaling bytes)가 삽입되는 것을 일실시예로 한다.
본 발명에서는 A, B 영역에는 고정된 수의 Known data sequence가 삽입되고, C, D 또는 E 영역에는 scalable mode에 따라 다수의 Known data가 삽입될 수 있다.
도 20은 본 발명의 일실시예에 따른 데이터 그룹 내에 추가적인 모바일 서비스 데이터가 포함되는 경우에 있어서, 데이터 그룹 내의 C, D 영역에 Known data를 삽입하는 디지털 방송 데이터 처리 및 송신 방법을 나타낸 순서도이다.
고정적인 개수(예를 들면, 118개)의 모바일 서비스 데이터 패킷과 가변적인 개수(예를 들면, M개)의 모바일 서비스 데이터 패킷이 데이터 그룹에 포함될 때, 가변적인 개수의 모바일 서비스 데이터 패킷이 적어도 하나라도 포함되는 경우에는 C, D 영역에 추가적인 Known data를 삽입할 수 있다(S2010, S2020).
C, D 영역에 삽입된 Known data를 포함하는 고정 및 가변 개수를 가지는 모바일 서비스 데이터 패킷과 가변적인 개수의 메인 서비스 패킷을 다중화한다(S2030).
다중화된 데이터 패킷 내의 데이터를 인터리빙한다(S2040).
인터리빙된 메인 데이터와 하나의 데이터 그룹 내의 모바일 서비스 데이터는 slot 단위로 전송된다(S2050). 이때 전송되는 데이터 그룹 내의 모바일 서비스 데이터는 5개로 나뉘어진 데이터 그룹 내의 각각의 영역을 통하여 전송된다. 일실시예로 하나의 데이터 그룹이 A, B, C, D, E 영역으로 나누어 질 수 있다. 이 때, E 영역은 가변적인 개수의 모바일 서비스 데이터 패킷을 포함한다. C, D 영역에 추가적인 Known data를 삽입하게 됨으로써, C, D 영역을 통하여 전송되는 모바일 서비스 데이터의 수신 성능을 향상시킬 수 있다.
도 21은 본 발명의 일실시예에 따른 데이터 그룹이 156개의 모바일 서비스 데이터 패킷을 포함하는 경우에 있어서, 데이터 그룹 내의 RS parity와 MPEG header를 위한 데이터 영역(data area)에 모바일 서비스 데이터를 삽입하는 디지털 방송 데이터 처리 및 송신 방법을 나타낸 순서도이다.
하나의 slot이 모바일 서비스 데이터만 전송하는 경우, 해당 slot에 는 메인 서비스 데이터가 없으므로, 역호환성을 위한 RS parity와 MPEG header를 데이터 그룹이 가지고 있어야 할 이유가 없다.
따라서, 데이터 그룹 내에 포함되는 모바일 서비스 데이터 패킷이 156개(i.e. M=38)인지 판단한다(S2110).
118 + 38개, 즉 156개의 모바일 서비스 데이터 패킷이 데이터 그룹에 포함되어 있다면, 데이터 그룹 내의 RS parity와 MPEG header를 위하여 예약된 데이터 영역에 모바일 서비스 데이터를 할당한다(S2120).
메인 서비스 데이터 패킷과 RS parity와 MPEG header를 위하여 예약된 데이터 영역이 모바일 서비스 데이터를 위하여 할당된 데이터 그룹의 모바일 서비스 데이터 패킷을 다중화한다(S2130).
다중화된 데이터 패킷 내의 데이터를 인터리빙한다(S2140).
인터리빙된 메인 데이터와 하나의 데이터 그룹 내의 모바일 서비스 데이터는 slot 단위로 전송된다(S2150). 이때 전송되는 데이터 그룹 내의 모바일 서비스 데이터는 5개로 나뉘어진 데이터 그룹 내의 각각의 영역을 통하여 전송된다. 일실시예로 하나의 데이터 그룹이 A, B, C, D, E 영역으로 나누어 질 수 있다. 이 때, E 영역은 가변적인 개수의 모바일 서비스 데이터 패킷을 포함한다.
데이터 그룹 내의 RS parity와 MPEG header를 위하여 예약된 데이터 영역을 모바일 서비스 데이터를 위한 영역을 할당함으로써, 하나의 데이터 그룹 내에서 보다 많은 양의 모바일 서비스 데이터를 전송할 수 있는 효과가 있다.
수신시스템
도 22은 본 발명의 일 실시예에 따른 수신 시스템의 구성 블록도이다.
도 22의 수신 시스템은 안테나(1300), 채널 동기화부(1301), 채널 등화기(1302), 채널 복호기(1303), RS frame 복호기(1304), M/H TP 인터페이스부(1305), 시그널링 복호기(1306), 오퍼레이션 제어기(1307), FIC 처리기(1308), 커먼 IP 프로토콜 스택(1309), 인터랙션(Interaction) 채널부(1310), A/V 처리기(1311), 서비스 시그널링 채널(SSC) 처리기(1312), 제1 저장부(1313), 서비스 가이드(SG) 처리기(1314), 및 제2 저장부(1315)를 포함한다. 상기 수신 시스템은 RME (Rich Media Environment) 처리기(1316), SP(Service Protection) 처리기(1317), 및 NRT(Non-Real Time) 처리기(1318)를 더 포함할 수 있다. 또한 수신 시스템은 메인 서비스 데이터 처리부를 더 포함할 수 있다. 상기 메인 서비스 데이터 처리부는 데이터 디인터리버, RS 복호기, 및 데이터 디랜더마이저를 포함할 수 있다.
상기 제1 저장부(1313)는 서비스 맵 데이터베이스(DB)이고, 제2 저장부(1315)는 서비스 가이드 데이터베이스(DB)인 것을 일 실시예로 한다.
상기 채널 동기화부(1301)는 튜너와 복조기를 포함한다. 상기 튜너는 안테나(1300)를 통해 특정 채널의 주파수를 튜닝하여 중간 주파수(IF) 신호로 다운 컨버전한 후 복조기로 출력한다. 상기 튜너에서 출력되는 신호는 패스밴드 디지털 IF 신호이다.
상기 채널 동기화부(1301) 내 복조기는 송신 시스템에서 데이터 그룹에 포함하여 전송하는 기지 데이터 열을 이용하여, 캐리어 복구, 타이밍 복구 등을 수행함으로써, 입력되는 패스밴드 디지털 신호를 베이스밴드 디지털 신호로 변환한다.
상기 채널 등화기(1302)는 상기 기지 데이터 열 예를 들어, 제1, 제3 내지 제 6 기지 데이터 열을 이용하여 다중 경로(multi path), 도플러 효과(Doppler effect) 등에 의해 야기된(cause) 수신 신호의 왜곡을 보상한다. 이때 상기 채널 등화기(1302)는 상기 채널 복호기(1303)의 출력을 피드백받아 등화 성능을 향상시킬 수 있다.
상기 시그널링 복호기(1306)는 수신 신호로부터 시그널링 데이터(예를 들어, TPC 데이터와 FIC 데이터)를 추출하여 복호한다. 상기 복호된 TPC 데이터는 오퍼레이션 제어기(1307)로 출력되고, 상기 복호된 FIC 데이터는 FIC 처리기(1308)로 출력된다. 일 실시예로, 상기 시그널링 복호기(1306)는 시그널링 부호기의 역과정으로 시그널링 복호를 수행하여 수신 신호로부터 TPC 데이터와 FIC 데이터를 추출한다. 예를 들면, 상기 시그널링 복호기(1306)는 입력되는 데이터 중 시그널링 정보 영역의 데이터에 대해 parallel concatenated convolution code (PCCC) 방식의 회귀적 터보 복호를 수행하고, 터보 복호된 시그널링 데이터에 대해 디랜더마이징을 수행한 후 디랜더마이징된 시그널링 데이터로부터 FIC 데이터와 TPC 데이터를 분리한다. 또한 상기 시그널링 복호기(1306)는 상기 분리된 TPC 데이터에 대해 송신측의 역으로 RS 복호를 수행하여 오퍼레이션 제어기(1307)로 출력한다.
여기서 TPC 데이터는 RS frame 정보, SCCC 정보, M/H frame 정보 등을 포함할 수 있다. 상기 RS frame 정보는 RS frame 모드 정보와 RS 코드 모드 정보를 포함할 수 있다. 상기 SCCC 정보는 SCCC 블록 모드 정보와 SCCC 아웃터 코드 모드 정보를 포함할 수 있다. 상기 M/H frame 정보는 M/H frame 인덱스 정보를 포함할 수 있다. 또한 상기 TPC 데이터는 sub frame 카운트 정보, 슬롯 카운트 정보, parade_id 정보, SGN 정보, NOG 정보 등을 포함할 수 있다.
그리고 상기 시그널링 복호기(1306)는 상기 분리된 FIC 데이터에 대해 sub frame 단위로 디인터리빙을 수행하고, 송신측의 역으로 RS 복호를 수행한 후 FIC 처리기(1308)로 출력한다. 상기 시그널링 복호기(1306)에서 디인터리빙 및 RS 복호되어 FIC 처리기(1308)로 출력되는 FIC 데이터의 전송 단위는 FIC 세그먼트이다.
상기 채널 복호기(1303)는 블록 복호기라고도 하며, 상기 수신 신호로부터 의미있는(meaningful) 데이터(예를 들어, 모바일 서비스 데이터)를 복구(recovery)하기 위해, 포워드 에러 정정(forward error correction)을 수행한다. 이를 위해 상기 채널 복호기(1303)는 상기 시그널링 데이터 중 SCCC 관련 정보(예를 들면, SCCC 블록 정보, SCCC 아웃터 코드 모드)를 이용하는 것을 일 실시예로 한다. 일 실시예로, 상기 채널 복호기(1303)는 채널 등화기(1302)에서 채널 등화된 후 입력되는 데이터가 송신 측에서 serial concatenated convolution code (SCCC) 방식의 블록 부호화와 트렐리스 부호화가 모두 수행된 데이터(즉, RS frame 내 데이터, 시그널링 데이터)이면 송신 측의 역으로 트렐리스 복호 및 블록 복호를 수행하고, 블록 부호화는 수행되지 않고 트렐리스 부호화만 수행된 데이터 (즉, 메인 서비스 데이터)이면 트렐리스 복호만을 수행한다.
상기 RS frame 복호기(1304)는 수신된 데이터에 대해 RS-CRC 복호를 수행함으로써 RS frame을 복구(recovery)한다. 즉, RS frame을 복구하기 위해 포워드 에러 정정을 수행한다. 이를 위해 상기 RS frame 복호기(1304)는 상기 시그널링 데이터 중 RS 관련 정보(예를 들어, RS 코드 모드)를 이용하는 것을 일 실시예로 한다.
상기 M/H TP 인터페이스부(1305)는 상기 RS frame으로부터 M/H TP 패킷들을 추출하여 IP 데이터그램을 복원한 후 커먼 IP 프로토콜 스택(1309)으로 출력한다. 여기서 상기 M/H TP 패킷들은 IP 데이터그램을 인캡슐레이션한다. 즉, 각 M/H TP 패킷의 헤더를 분석하여 해당 M/H TP 패킷의 페이로드로부터 IP 데이터그램을 복원한다.
상기 오퍼레이션 제어기(1307)는 상기 복호된 TPC 데이터 구조를 이용하여 여러가지 베이스밴드 과정들의 동작(operations)을 제어한다. 즉, 상기 오퍼레이션 제어기(1307)는 상기 TPC 데이터를 입력받아 M/H frame 시간 정보, 선택된 퍼레이드(Parade)의 데이터 그룹 존재 유무, 데이터 그룹 내의 기지 데이터의 위치 정보, 전력 제어 정보 등을 필요한 각 블록에 전달한다.
상기 FIC 처리기(1308)는 입력되는 FIC 세그먼트들을 모아 FIC 청크를 복원한 후 제1 저장부(1313)에 저장한다. 상기 FIC 청크는 Ensemble 선택 과정과 모바일(또는 M/H) 서비스 스캔 과정에 필요한 시그널링 정보를 포함한다.
상기 서비스 시그널링 채널 처리기(1312)는 지정된 IP 멀티캐스트 스트림으로부터 서비스 시그널링 채널 테이블 섹션들을 추출하여 제1 저장부(1313)에 저장한다. 상기 서비스 시그널링 채널은 M/H 서비스 선택과 스캔 과정에 필요한 IP 레벨 시그널링 정보를 포함한다. 본 발명에 따른 서비스 시그널링 채널은 SMT, GAT, RRT, CIT, SLT 중 적어도 하나를 전송한다. 이때 상기 서비스 시그널링 채널을 전송하는 IP 데이터그램의 접속 정보는 well-known 데스티네이션(destination) IP 어드레스와 well-known 데스티네이션 (destination) UDP 포트 번호인 것을 일 실시예로 한다. 따라서, 상기 서비스 시그널링 채널 처리기(1312)는 well-known 데스티네이션 IP 어드레스와 well-known 데스티네이션 UDP 포트 번호를 가지면서, 서비스 시그널링 채널을 전송하는 IP 스트림 즉, 서비스 시그널링 데이터를 추출한다. 그리고 추출된 서비스 시그널링 데이터로부터 SMT, GAT, RRT, CIT, SLT 중 적어도 하나를 복원하여 제1 저장부(1313)에 저장한다. 일 예로, 상기 제1 저장부(1313)는 FIC 처리기(1308)과 서비스 시그널링 채널 처리기(1312)에서 수집한 시그널링 정보로부터 구성된 서비스 맵을 저장한다.
상기 A/V 처리기(1311)는 상기 커먼 IP 프토토콜 스택(1309)을 통해 입력되는 IP 데이터그램으로부터 비디오 데이터와 오디오 데이터를 분리하여 각각의 복호 알고리즘으로 복호한 후 화면에 표시한다. 일 예로, 오디오 복호 알고리즘은 AC-3 복호 알고리즘, MPEG 2 audio 복호 알고리즘, MPEG 4 audio 복호 알고리즘, AAC 복호 알고리즘, AAC+ 복호 알고리즘, HE AAC 복호 알고리즘, AAC SBR 복호 알고리즘, MPEG surround 복호 알고리즘, BSAC 복호 알고리즘중 적어도 하나를 적용하고, 비디오 복호 알고리즘은 MPEG 2 video 복호 알고리즘, MPEG 4 video 복호 알고리즘, H.264 복호 알고리즘, SVC 복호 알고리즘, VC-1 복호 알고리즘 중 적어도 하나를 적용할 수 있다.
상기 SG 처리기(1314)는 어나운스먼트 데이터를 복원하여 제2 저장부(1315)에 저장한 후, 시청자에게 서비스 가이드를 제공한다.
상기 인터랙션(또는 리턴) 채널부(1310)는 커먼 IP 프로토콜 스택(1309)를 통해 수신 시스템으로부터 업링크를 제공한다. 이때 인터랙션 채널은 IP-호환(IP-compatible)이 되어야 한다.
상기 RME 처리기(1316)는 M/H 방송 또는 인터랙션 채널을 통해 전송(delivered)되는 RME 데이터를 커먼 IP 프로토콜 스택(1309)을 통해 입력받아 복원한 후 처리한다.
상기 SP 처리기(1317)는 상기 커먼 IP 프로토콜 스택(1309)를 통해 입력받은 서비스 프로텍션 관련 데이터를 복원하여 처리한다. 그리고 시청자의 가입 상태에 따라 상기 M/H 서비스에 프로텍션을 제공한다.
상기 NRT 처리기(1318)는 파일 어플리케이션들과 같은 비실시간 데이터를 복원하여 처리한다.
도 23는 본 발명에 따른 채널 동기화부(1301) 내 복조기의 일 실시예를 보인 상세 블록도이다.
도 23의 채널 동기화부(1301)는 위상 분리기(phase splitter)(1501), 제1 곱셈기(1502), 리샘플러(1503), 정합 필터(Matched Filter)(1504), 타이밍 복구부(Timing Recovery block)(1505), 기지 데이터 검출기(Group Position Synchrozation & Initial Frequency offset estimator)(1506), 캐리어 복구부(Carrier Recovery block)(1507), DC 제거부(DC remover)(1508)를 포함할 수 있다. 본 발명은 위상 분리기(1501) 전단에 통과대역 아날로그 신호를 통과대역 디지털 신호로 변환하는 아날로그/디지털 변환기(도시되지 않음)를 구비하는 것을 일 실시예로 한다. 또한 캐리어 복구와 타이밍 복구 전에 자동 게인 제어(Automatic Gain Control; AGC)가 수행되는 것을 일 실시예로 한다.
상기 캐리어 복구부(1507)는 지연기(1601), 콘쥬게이터(1602), 제2 곱셈기(1603), 캐리어 주파수 옵셋 검출부(1604), 멀티플렉서(1605), 루프 필터(1606), 및 수치 제어 발진기(Numerically Controlled Oscillator; NCO)(1607)를 포함한다.
이와 같이 구성된 도 23에서, 위상 분리기(1501)는 패스밴드 디지털 신호를 입력받아 위상이 서로 90도가 되는 실수 성분과 허수 성분의 패스밴드 디지털 신호 즉, 복소 신호로 분리한 후 제1 곱셈기(1502)로 출력한다. 여기서, 설명의 편의를 위해 상기 위상 분리기(1501)에서 출력되는 실수 성분의 신호를 I 신호라 하고, 허수 성분의 신호를 Q 신호라 한다.
본 발명의 튜너에서 출력되는 신호는 44 MHz의 중간 주파수(IF) 신호라고 가정한다. 본 발명은 다른 실시예로 튜너에서 출력되는 신호는 제로 IF 신호(즉 복소 베이스밴드 신호)가 될 수도 있다. 이 경우 제로 IF 신호는 위상 분리기(1501)를 바이패스하여 제1 곱셈기(1502)로 입력된다.
상기 제1 곱셈기(1502)는 캐리어 복구부(1507)의 NCO(1607)로부터 출력되는 복소 신호에 상기 위상 분리기(1501)에서 출력되는 패스밴드 디지털 복소 신호(I,Q)를 곱하여, 상기 패스밴드 디지털 복소신호(I,Q)를 베이스밴드 디지털 복소신호로 다운 컨버젼한다. 이때 상기 캐리어 복구부(1507)에서 출력되는 캐리어 주파수 옵셋이 상기 위상 분리기(1501)의 출력과 곱해짐으로써, 상기 위상 분리기(1501)의 출력 신호에 포함된 캐리어 주파수 옵셋이 보상된다. 상기 제1 곱셈기(1502)의 베이스밴드 디지털 신호는 리샘플러(1503)로 입력된다.
상기 리샘플러(1503)는 제1 곱셈기(1502)에서 출력되는 신호에 타이밍 복구부(1505)에서 제공하는 샘플링 클럭을 곱하여 심볼 타이밍 에러를 보상한 후 정합 필터(1504)와 타이밍 복구부(1505)로 출력한다.
상기 정합 필터(1504)는 상기 리샘플러(1503)의 출력 신호를 정합 필터링한 후 기지 데이터 검출기(1506), 캐리어 복구부(1507), 및 DC 제거부(1508)로 출력한다.
상기 기지 데이터 검출기(1506)는 데이터 그룹에 포함되어 수신되는 기지 데이터 열의 위치를 검출함과 동시에 상기 기지 데이터 검출 과정에서 초기 주파수 옵셋(initial frequency offset)을 추정한다. 이 경우 상기 캐리어 복구부(1507)는 상기 기지 데이터 열 위치 정보와 초기 주파수 옵셋 값을 이용하여 캐리어 주파수 옵셋을 보다 정밀하게 추정하여 보상할 수 있다. 또한 상기 기지 데이터 검출기(1506)는 그룹 위치(position) 동기화를 수행한다. 즉, 각 데이터 그룹의 시작 위치를 추출한다.
일 예로, 상기 기지 데이터 검출기(1506)는 도 5와 같이 데이터 그룹에 포함된 기지 데이터 열의 위치를 검출하고, 검출된 기지 데이터 열 위치 지시 신호 (Known Sequence Position Indicating signal)를 캐리어 복구부(1607)의 멀티플렉서(1604)와 채널 등화기(1302)로 출력한다. 또한 상기 기지 데이터 검출기(1506)는 데이터 그룹 내 제2 기지 데이터 열을 이용하여 초기 주파수 옵셋(Initial Frequency Offset)을 추정한 후 캐리어 복구부(1507)의 루프 필터(1606)로 출력한다.
상기 타이밍 복구부(1505)는 상기 리샘플러(1503)의 출력을 입력받아 타이밍 에러를 검출하고, 검출된 타이밍 에러에 비례하는 샘플링 클럭을 리샘플러(1503)로 출력하여 리샘플러(1503)의 리샘플링을 제어한다.
상기 DC 제거부(1508)는 상기 정합 필터(1504)에서 정합 필터링된 신호로부터 송신측에서 삽입된 파일럿 톤(즉, DC 옵셋)을 제거한 후 채널 등화기(1302)로 출력한다.
본 발명은 데이터 그룹에 포함된 기지 데이터 열들 중 제2 기지 데이터 열의 반복되는 기지 데이터 패턴의 상관성을 이용하여 데이터 그룹 내 기지 데이터 열의 위치를 검출하고, 초기 주파수 옵셋을 추정하는 것을 일 실시예로 한다. 특히 본 발명은 부분 상관을 이용하여 기지 데이터 열의 위치를 검출하고 초기 주파수 옵셋을 추정하는 것을 일 실시예로 한다.
상기 초기 주파수 옵셋은 대략적인(rough) 주파수 옵셋과 미세(finer) 주파수 옵셋을 포함한다. 즉, 캐리어 주파수 동기 획득시에, 처음에는 대략적인 주파수 옵셋을 이용하여 주파수 풀-인 레인지(frequence pull-in range)를 줄인 후, 다시 한번 미세 주파수 옵셋을 이용하여 주파수 풀-인 레인지를 줄인다.
본 발명에서 데이터 그룹 내 제2 기지 데이터 열은 동일한 패턴을 갖는 제1 528 심볼열과 제2 528 심볼열로 구성된다. 즉, 상기 528 심볼열은 4 심볼의 데이터 세그먼트 동기 신호 후 반복된다.
본 발명에서 상기 제 2 기지 데이터 열은 획득 트레이닝 시퀀스(acquisition training sequence)라 하기도 한다.
상기 기지 데이터 검출기(1506)에서는 상기 제2 기지 데이터 열의 반복되는 기지 데이터 패턴을 이용하여 그룹 위치 동기와 초기 주파수 옵셋 추정을 수행한다. 예를 들어, 수신된 신호와 송/수신측에 의해 미리 알고 있는 제2 기지 데이터 열과의 상관을 구하고, 이 중 최대 상관값을 찾음으로써, 그룹 위치 동기화를 수행할 수 있다. 하지만, 수신된 신호에 주파수 옵셋이 존재한다면, 제2 기지 데이터 열 전체를 이용하여 하나의 상관값을 구하는 일반적인 상관 방법은 신뢰성이 낮아질 수 있다. 즉, 상관을 위한 기지 데이터 패턴이 길수록 상관 피크 값의 신뢰성이 낮아질 가능성은 더욱 높아진다.
따라서 본 발명은 부분 상관 방법을 이용하여, 큰 주파수 옵셋이 존재하는 경우에도 신뢰성 높은 상관 피크 값을 검출하는 것을 일 실시예로 한다. 즉, 부분 상관 방법을 이용하면 노이즈를 줄일 수 있게 된다.
이와 같이 본 발명에서는 제2 기지 데이터 열을 2개 이상의 파트로 구분하여 부분 상관을 구함으로써, 파트의 개수에 해당하는 상관값의 피크를 얻을 수 있다. 그리고 각 파트의 상관값의 피크를 모두 더하여 평균을 취하면 수신된 신호에 포함되 노이즈가 상쇄됨으로서, 노이즈를 줄일 수 있게 된다.
이를 위해 본 발명은 제2 기지 데이터 열을 복수개의 파트로 나누고(segment), 각 파트의 기지 데이터 열(즉, 수신측에서 발생시킨 해당 파트의 기준 기지 데이터 열)과 수신된 신호와의 상관을 각 파트별로 구한 후, 각 파트에서 구한 부분 상관 값을 모두 더한다. 이때 각 파트에서 구한 상관값은 위상 정보가 없는 제곱값(즉, magnitude square)이다.
도 24의 (a)는 제2 기지 데이터 심볼열을 L개의 파트로 나누었을 때, 각 파트는 N개의 심볼로 구성되는 예를 보이고 있다. 즉, 도 24의 (a)에서 L은 제2 기지 데이터 심볼열로부터 세그멘트되는 파트의 개수이고, N은 각 파트의 길이이다. 그리고 *는 복소 콘쥬게이트(complex conjugate)를 나타낸다. 다시 말해, 제2 기지 데이터 열을 N 심볼 길이를 갖는 L개의 파트로 나눈 후, 각 파트별로 수신 신호와 부분 상관을 취한다.
도 24의 (b)는 본 발명에 따른 부분 상관기의 일 실시예를 보인 개념도로서, 수신된 신호에 해당 파트의 기지 데이터 열을 이동시키면서 복소 콘쥬게이트 곱셈을 수행하는 곱셈기(1701), 상기 곱셈기(1701)의 출력을 N 심볼 동안 누산하는 제1 누산기(1702), 상기 제1 누산기(1702)의 출력에 제곱을 취하는 제곱기(1703), 및 상기 제곱기(1703)의 출력을 일정 기간 누산하는 나누어 평균 상관값을 출력하는 제2 누산기(1704)로 구성된다.
즉, 상기 곱셈기(1701)는 수신된 신호에 맞추어 해당 파트의 기지 데이터 열을 이동시키면서 복소 콘쥬게이트 곱하여 제1 누산기(1702)로 출력한다. 상기 제1 누산기(1702)는 N 심볼 동안 곱셈기(1701)의 출력을 누산한 후 제곱기(1703)로 출력한다. 상기 제1 누산기(1702)의 출력은 위상과 크기를 가지는 상관값이다. 상기 제곱기(1703)는 제1 누산기(1702)의 출력에 제곱을 취한 후 제2 누산기(1704)로 출력한다. 즉, 상기 제곱기(1703)에서 상기 제1 누산기(1702)의 출력에 제곱을 취하면, 상관값의 크기가 구해진다. 상기 제2 누산기(1704)는 상기 제곱기(1703)의 출력을 L 구간동안 누산한 후 다시 L로 나누어 해당 파트의 평균 상관값을 출력한다. 다음의 수학식 1은 도 24의 (b)를 수식으로 정리한 것이다.
Figure pat00001
즉, 상기 기지 데이터 검출기(1506)는 데이터 그룹 주기(group period)동안 최대 상관 값을 찾음으로써, 그룹 동기 위치와 기지 데이터 열의 위치를 결정한다. 또한 상기 부분 상관 방식을 이용하여 초기 주파수 옵셋을 추정한다.
도 25은 본 발명에 따른 제2 기지 데이터 열을 8개의 파트로 나누어 부분 상관을 구함으로써, 대략적인(rough) 초기 주파수 옵셋을 추정하는 예를 보인 것이다. 이를 도 24에 적용하면, L은 8이 되고, N은 132 심볼이 된다. 도 25의 경우, 8개의 부분 상관기를 필요로 하며, 8개의 상관값의 피크를 얻게 된다. 이 경우 상기 기지 데이터 검출기(1506)는 최대 상관 위치에서, 연속하는(successive) 각 파트의 상관 값들 사이의 위상 차(phase differences)를 계산한다. 그리고 가산기(1801)를 이용하여 각 파트의 모든 위상 차를 더하여 평균 위상 차 를 출력한다. 이어 상기 평균 위상 차( )와 각 파트의 길이(N)을 이용하여 하기 수학식 2과 같이 ω0을 계산한다.
Figure pat00002
상기 수학식 2에서, N은 132인 것을 일 실시예로 한다.
이때 상기 수학식 2을 적용하여 ω0로부터 구한 대략적인 주파수 옵셋 f0은 ±80kHz의 주파수 풀-인 레인지(frequency pull-in range)를 제공한다. 상기 주파수 풀 인 레인지와 상기 파트의 길이에 관련된 추정 에러의 편차(variance) 사이에는 트레이드 오프(trade-off)가 있다. 즉, 상관을 위한 기지 데이터 패턴 길이가 짧으면 주파수 풀-인 레인지가 커지면서 지터도 커지게 되고, 기지 데이터 패턴 길이가 길어지면 주파수 풀-인 레인지도 작아지면서 지터도 작아진다.
한편 본 발명은 제2 기지 데이터 열의 반복 패턴을 이용하여 미세(finer) 주파수 옵셋을 추정하는 것을 일 실시예로 한다. 상기 제2 기지 데이터 열은 2개의 파트로 구성된다. 즉, 제2 기지 데이터 열은 제1 528 심볼열을 포함하는 파트와 제2 528 심볼열을 포함하는 파트로 구성된다. 상기 제1 528 심볼열과 제2 528 심볼열 사이에는 4 심볼의 데이터 세그먼트 동기 신호가 존재한다. 이 구조는 Maximum-likelihood 알고리즘으로 미세 주파수 옵셋을 추정할 수 있게 한다.
도 26은 본 발명에 따른 Maximum-likelihood 알고리즘에 의해 미세 주파수 옵셋을 추정하는 예를 보인 것이다.
이때 수신된 신호 r[k]는 하기의 수학식 3와 같이 표시할 수 있다.
Figure pat00003
상기 수학식 3에서 fo가 미세 주파수 옵셋이다.
그리고 532(=528+4) 심볼에 의해 분리된(separated) 수신 신호들 사이의 상관은 하기의 수학식 4을 적용하여 구할 수 있다.
Figure pat00004
즉, 532 심볼만큼 떨어진 두개의 파트(즉, 528 심볼 길이)의 부분 상관을 구하여 평균하고, 편각(argument)을 취하면, 미세 주파수 옵셋을 얻게 된다. 상기 수학식 4을 적용하여 구한 미세 주파수 옵셋은 ±10kHz의 주파수 풀-인 레인지(frequency pull-in range)를 제공한다.
본 발명에서는 대략적인 주파수 옵셋과 미세 주파수 옵셋을 포함하여 초기 주파수 옵셋이라 한다. 상기 초기 주파수 옵셋은 캐리어 복구부(1507)의 루프 필터(1606)로 출력된다.
본 발명은 초기 동기 획득시에 대략적인 주파수 옵셋과 미세 주파수 옵셋을 추정하여 이용함으로써, 초기 주파수 옵셋의 추정 성능을 향상시킬 수 있다. 상기 초기 주파수 옵셋은 캐리어 복구부(1507)의 루프 필터(1606)로 출력된다.
한편, 상기 캐리어 복구부(1507)는 도 23에서와 같이 Maximum-likelihood 캐리어 주파수 트랙킹 루프를 적용하는 것을 일 실시예로 한다.
상기 캐리어 복구부(1507)는 상기 기지 데이터 검출기(1506)에서 추정된 초기 주파수 옵셋의 로딩 후, 잔류 캐리어 주파수 옵셋을 트랙(track)한다.
즉, 상기 캐리어 복구부(1507)는 Maximum-likelihood 알고리즘을 사용하여, 수신된 연속하는(successive) 기지 데이터 열의 상관(correlation)을 구함으로써, 초기 주파수 옵셋 추정과 유사한 방식으로 캐리어 주파수 옵셋(또는 에러)을 추정한다.
이를 위해 상기 캐리어 복구부(1507)의 지연기(1601)는 상기 정합 필터(1504)의 출력 데이터를 심볼 단위로 입력받아 K 심볼 지연한 후 제2 곱셈기(1603)로 출력된다.
또한 상기 정합 필터(1504)의 출력 데이터는 콘쥬게이터(1602)에서 콘쥬게이트(conjugate; 공액)되어 제2 곱셈기(1603)로 입력된다.
상기 제2 곱셈기(1603)는 상기 지연기(1601)에서 K 심볼 지연되어 출력되는 기지 데이터 열과 콘쥬게이터(1602)에서 콘쥬게이트된 기지 데이터 열과의 상관값을 구하여 캐리어 주파수 옵셋 검출기(1604)로 출력한다.
여기서, K 심볼은 13312 심볼(=832*16)인 것을 일 실시예로 한다. 이는 데이터 그룹 내 제1, 제3 내지 제6 기지 데이터 열이 16 세그먼트 간격으로 삽입되어 수신되고, 하나의 세그먼트는 832 심볼로 구성되기 때문이다.
일 실시예로, 13312 심볼만큼 떨어진 기지 데이터 열 사이의 상관값은 하기의 수학식 5을 적용하여 구할 수 있다.
Figure pat00005
상기 수학식 5에서 fo가 트랙킹을 위한 캐리어 주파수 옵셋이다.
상기 캐리어 주파수 옵셋 검출기(1604)는 상기 제2 곱셈기(1603)에서 출력되는 상관값으로부터 수학식 5과 같이 캐리어 주파수 옵셋을 추출하여 멀티플렉서(1605)로 출력한다.
상기 멀티플렉서(1605)는 상기 기지 데이터 검출기(1506)의 기지 데이터 열 위치 지시 신호에 따라 상기 캐리어 주파수 옵셋 검출기(1604)의 출력 또는 '0'을 선택하여 최종 캐리어 주파수 옵셋 값으로 출력한다.
즉, 상기 기지 데이터 열 위치 지시 신호로부터 상기 캐리어 주파수 옵셋 검출기(1604)에서 출력되는 캐리어 주파수 옵셋 값이 유효한지 여부를 알 수 있다. 상기 멀티플렉서(1605)는 캐리어 주파수 옵셋 값이 유효하면 상기 캐리어 주파수 옵셋 검출기(1604)의 출력을 선택하고, 유효하지 않으면 '0'을 선택하여 루프 필터(1606)로 출력한다.
상기 루프 필터(1606)는 상기 추정된 초기 주파수 옵셋에 상기 멀티플렉서(1605)의 출력을 더한 후 저역 통과 필터링하여 NCO(1607)로 출력한다.
상기 NCO(1607)는 저역 통과 필터링된 캐리어 주파수 옵셋에 해당하는 복소 신호를 생성하여 제1 곱셈기(1502)로 출력한다.
한편 상기 채널 동기화부(1301)는 일 실시예로, 수신을 원하는 모바일 서비스를 포함하는 퍼레이드의 데이터 그룹이 할당된 슬롯에서만 전원을 온함으로써, 수신 시스템의 소모 전력을 줄일 수 있다. 이를 위해 수신 시스템은 복조기의 전원 공급을 제어하는 전원 제어기(도시되지 않음)을 더 포함할 수 있다.
상기 채널 동기화부(1301)에서 기지 데이터를 이용하여 복조된 데이터는 채널 등화기(1302)로 입력된다. 또한 상기 복조된 데이터는 기지 데이터 검출기(1506)로 입력될 수도 있다.
이때 등화를 위해 입력된 하나의 데이터 그룹은 도 4와 같이, A 내지 D 영역으로 구분되고, A 영역은 M/H 블록 B4 내지 M/H 블록 B7을, B 영역은 M/H 블록 B3과 M/H 블록 B8을, C 영역은 M/H 블록 B2과 M/H 블록 B9을, D 영역은 M/H 블록 B1과 M/H 블록 B10을 포함하는 것을 일 실시예로 한다. 즉, 하나의 데이터 그룹은 B1부터 B10까지 각 16 세그먼트 길이의 M/H 블록으로 구분되며 M/H 블록 B4~B8의 시작 부분에 긴 트레이닝 시퀀스(long training sequence, 즉, 기지 데이터 시퀀스)가 삽입된다. 또한 1개의 VSB 필드에는 2개의 데이터 그룹이 할당될 수 있으며, 이때 두 데이터 그룹 중 하나는 데이터 그룹의 37번째 세그먼트 다음에 필드 동기가 위치한다.
본 발명은 송/수신측의 약속에 의해 위치와 내용을 알고 있는 기지 데이터 및/또는 필드 동기를 채널 등화에 이용할 수 있다.
상기 채널 등화기(1302)는 다양한 방법으로 채널 등화를 수행할 수 있는데, 본 발명에서는 기지 데이터 및/또는 필드 동기를 이용하여 채널 임펄스 응답(Channel Impulse Response; CIR)을 추정하여 채널 등화를 수행하는 것을 일 실시예로 설명한다.
특히 본 발명에서는 송신 시스템에서 계층화되어 전송된 데이터 그룹 내 각 영역에 따라 채널 임펄스 응답(CIR)의 추정 및 적용을 다르게 하는 것을 일 실시예로 설명한다.
이때 데이터 그룹은 하나의 VSB frame에 최대 4개까지 할당되어 전송될 수 있으므로, 이 경우 모든 데이터 그룹이 필드 동기를 포함하지는 않는다. 본 발명은 필드 동기를 포함하는 데이터 그룹은 필드 동기와 기지 데이터를 이용하여 CIR을 추정하고, 필드 동기를 포함하지 않는 데이터 그룹은 기지 데이터만을 이용하여 CIR을 추정하는 것을 일 실시예로 한다.
일 예로, 필드 동기를 포함하는 데이터 그룹의 경우 M/H 블록 B3의 데이터는 필드 동기로부터 구한 CIR과 제1 기지 데이터 영역의 기지 데이터로부터 구한 CIR을 이용해서 채널 등화할 수 있다. 또한 M/H 블록 B1, B2의 데이터도 필드 동기로부터 구한 CIR과 제1 기지 데이터 영역의 기지 데이터로부터 구한 CIR을 이용하여 채널 왜곡을 보상할 수 있다. 그러나 필드 동기를 포함하지 않는 데이터 그룹의 경우 필드 동기로부터 CIR을 구할 수 없으므로, M/H 블록 B1~B3의 데이터는 제1 기지 데이터 영역과 제3 기지 데이터 영역에서 구한 CIR을 이용하여 채널 왜곡을 보상할 수 있다.
본 발명은 상기 기지 데이터 영역에서 추정된 CIR을 이용하여 데이터 그룹 내 데이터에 대해 채널 등화를 수행하는데, 이때 데이터 그룹의 각 영역의 특징에 따라 상기 추정된 CIR들 중 하나를 그대로 사용하기도 하고, 적어도 복수개 이상의 CIR을 보간(interpolation)하거나, 외삽(extrapolation)하여 생성된 CIR을 사용하기도 한다.
여기서 보간(interpolation)은 어떤 함수 F(x)에 대해 시점 Q에서의 함수값 F(Q)와 시점 S에서의 함수값 F(S)를 알고 있을 때 Q와 S 사이의 어떤 시점에서의 함수값을 추정하는 것을 의미하며, 상기 보간의 가장 간단한 예로 선형 보간(Linear Interpolation)이 있다. 도 27은 선형 보간의 일례를 보인 도면이다.
즉, 임의의 함수 F(x)에서 x=Q의 함수값 F(Q)와 x=S의 함수값 F(S)가 주어졌을 경우 x=P에서의 함수값의 추정치는 다음의 수학식 6와 같이 추정할 수 있다. 다시 말해, 시점 Q, S에서의 함수값 F(Q), F(S)를 알고 있으므로 두 지점을 지나는 직선을 구해서 P시점에서의 함수값의 근사값을 구할 수 있다. 이때, (Q,F(Q)), (S,F(S))를 지나는 직선의 수식은 다음의 수학식 6와 같다.
Figure pat00006
따라서 상기 수학식 6의 x에 P를 대입하여, P 시점에서의 함수값의 근사값을 구하면 다음의 수학식 7과 같다.
Figure pat00007
상기 수학식 7의 선형 보간 기법은 수많은 보간 기법 중 가장 간단한 예이며 상기한 방법 외에 여러 가지 다양한 보간 기법을 사용할 수 있으므로 본 발명은 상기된 예로 제한되지 않을 것이다.
또한 외삽(extrapolation)은 어떤 함수 F(x)에 대해 시점 Q에서의 함수값 F(Q)와 시점 S에서의 함수값 F(S)를 알고 있을 때 Q와 S 사이의 구간이 아닌 바깥쪽의 시점에서의 함수값을 추정하는 것을 의미한다. 상기 외삽의 가장 간단한 예로 선형 외삽(Linear Extrapolation)이 있다.
도 28는 선형 외삽의 일례를 보인 도면이다. 상기 선형 보간의 예와 마찬가지로, 상기 선형 외삽의 경우에도 임의의 함수 F(x)에서 시점 Q, S에서의 함수값 F(Q), F(S)를 알고 있다면 두 지점을 지나는 직선을 구해서 P시점에서의 함수값의 근사값을 구할 수 있다.
상기 선형 외삽 기법은 수많은 외삽 기법 중 가장 간단한 예이며 상기한 방법 외에 여러 가지 다양한 외삽 기법을 사용할 수 있으므로 본 발명은 상기된 예로 제한되지 않을 것이다.
도 29은 본 발명에 따른 채널 등화기의 일 실시예이다.
도 29은 본 발명에 따른 채널 등화기의 일 실시예를 보인 구성 블록도로서, 제1 주파수 영역 변환부(4100), 채널 추정부(4110), 제2 주파수 영역 변환부(4121), 계수 계산부(4122), 왜곡 보상부(4130), 및 시간 영역 변환부(4140)를 포함하여 구성된다.
상기 채널 등화기는 잔류 캐리어 위상 에러 제거부, 잡음 제거부(Noise Canceller ; NC), 및 결정(Decision)부를 더 포함할 수 있다.
상기 제1 주파수 영역 변환부(4100)는 입력 데이터를 중첩하는 중첩(overlap)부(4101), 및 중첩부(4101)의 출력 데이터를 주파수 영역으로 변환하는 FFT(Fast Fourier Transform)부(4102)를 포함하여 구성된다.
상기 채널 추정부(4110)는 입력 데이터로부터 채널 임펄스 응답(Channel Impulse Response ; CIR)을 추정하는 CIR 추정기(4111), 제1 클리너(Pre-CIR Cleaner)(4112), 멀티플렉서(4113), CIR 연산기(4114), 제2 클리너(Post-CIR Cleaner)(4115), 및 제로 패딩(zero-padding)부(4116)를 포함할 수 있다.
상기 채널 추정부(4110)는 상기 CIR 추정기(4111)에서 추정된 CIR의 위상을 보상하는 위상 보상기를 더 포함할 수 있다.
상기 제2 주파수 영역 변환부(4121)는 상기 채널 추정부(4110)에서 출력되는 CIR을 주파수 영역으로 변환하는 FFT부를 포함하여 구성된다.
상기 시간 영역 변환부(4140)는 상기 왜곡 보상부(4130)에서 왜곡이 보상된 데이터를 시간 영역으로 변환하는 IFFT부(4141), 및 상기 IFFT부(4141)의 출력 데이터로부터 유효 데이터만을 추출하는 세이브(save)부(4142)를 포함하여 구성된다. 상기 세이브부(4142)의 출력 데이터가 채널 등화된 데이터다.
이때 상기 시간 영역 변환부(4140)의 출력단에 잔류 캐리어 위상 에러 제거부를 더 구비하여, 채널 등화된 데이터에 포함된 잔류 캐리어 위상 에러를 추정하여 제거할 수 있다.
또한 상기 시간 영역 변환부(4140)의 출력단에 잡음 제거부를 더 구비하여, 채널 등화된 데이터에 포함된 잡음을 추정하여 제거할 수 있다.
즉, 도 29을 보면, 복조되어 입력되는 데이터는 제1 주파수 영역 변환부(4100)의 중첩부(4101)에서 기 설정된 중첩 비율로 중첩되어 FFT부(4102)로 출력된다. 상기 FFT부(4102)는 FFT를 통해 시간 영역의 중첩 데이터를 주파수 영역의 중첩 데이터로 변환하여 왜곡 보상부(4130)로 출력된다.
상기 왜곡 보상부(4130)는 상기 제1 주파수 영역 변환부(4100)의 FFT부(4102)에서 출력되는 주파수 영역의 중첩 데이터에 계수 계산부(4122)에서 계산된 등화 계수를 복소곱하여 상기 FFT부(4102)에서 출력되는 중첩 데이터의 채널 왜곡을 보상한 후 시간 영역 변환부(4140)의 IFFT부(4141)로 출력한다. 상기 IFFT부(4141)는 채널의 왜곡이 보상된 중첩 데이터를 IFFT하여 시간 영역으로 변환하여 세이브부(4142)로 출력한다. 상기 세이브부(4142)는 채널 등화된 시간 영역의 중첩된 데이터로부터 유효 데이터만을 추출하여 출력한다.
한편 복조된 수신 데이터는 채널 등화기 내 제1 주파수 영역 변환부(4100)의 중첩부(4101)로 입력됨과 동시에 채널 추정부(4110)의 CIR 추정기(4111)로도 입력된다.
상기 CIR 추정기(4111)는 트레이닝 시퀀스를 이용하여 CIR을 추정한다. 만일 채널 등화할 데이터가 필드 동기를 포함하는 데이터 그룹 내 데이터라면 상기 CIR 추정기(4111)에서 이용되는 트레이닝 시퀀스는 필드 동기 데이터와 기지 데이터가 될 수 있다. 하지만 채널 등화할 데이터가 필드 동기를 포함하지 않는 데이터 그룹 내 데이터라면 상기 트레이닝 시퀀스는 기지 데이터만 될 수 있다.
일 예로, 상기 CIR 추정기(4111)는 기지 데이터 구간 동안 수신되는 데이터와 상기 송/수신측의 약속에 의해 수신측에서 발생한 기준 기지 데이터를 이용하여 채널 임펄스 응답(CIR)을 추정한다. 이를 위해 상기 CIR 추정기(4111)는 상기 기지 데이터 검출기(1506)로부터 기지 데이터열 위치 신호(Known Sequence Position Indicating Signal)를 제공받는다.
또한 상기 CIR 추정기(4111)는 필드 동기가 포함되는 데이터 그룹이라면 필드 동기 구간 동안 수신되는 데이터와 상기 송/수신측의 약속에 의해 수신측에서 발생한 기준 필드 동기 데이터를 이용하여 채널의 임펄스 응답(CIR_FS)을 추정할 수 있다. 이를 위해 상기 CIR 추정기(4111)는 상기 기지 데이터 검출기(1506)로부터 필드 동기 위치 정보(Field Sync Position Information)를 제공받을 수도 있다. 상기 CIR 추정기(4111)는 잘 알려진 최소 자승(Least Square; LS) 방식으로 채널 임펄스 응답(Channel Impulse Response; CIR)을 추정할 수 있다.
상기 LS 추정 방식은 기지 데이터 구간 동안 채널을 거쳐 온 기지 데이터와 수신단에서 이미 알고있는 기지 데이터와의 상호 상관값(Cross Correlation Value) p를 구하고, 상기 기지 데이터의 자기 상관행렬 R을 구한다. 그리고 나서 수신 데이터와 원 기지 데이터와의 상호 상관값인 p속에 존재하는 자기 상관 부분을 제거하도록 의 행렬 연산을 하여 전송 채널의 임펄스 응답(CIR)을 추정하는 방법이다.
본 발명의 다른 실시예로, 최소 평균 자승(Least Mean Square; LMS) 방식으로 CIR을 추정할 수도 있다. 예를 들어, 데이터 그룹 내 A,B 영역에서는 최소 자승(Least Square ; LS) 방식으로 채널 임펄스 응답(Channel Impulse Response ; CIR)을 추정한 후 채널 등화를 수행하고, C,D 영역에서는 최소 평균 자승(Least Mean Square ; LMS) 방식으로 CIR을 추정한 후 채널 등화를 수행할 수 있다.
상기와 같이 추정된 CIR은 제1 클리너(4112)와 멀티플렉서(4113)로 출력된다. 상기 멀티플렉서(4113)는 상기 CIR 연산기(4114)가 추정된 CIR에 대해 보간을 하는지, 외삽을 하는지에 따라 제1 클리너(4113)의 출력을 선택할 수도 있고, CIR 추정기(4111)의 출력을 선택할 수도 있다. 예를 들어, 추정된 CIR에 대해 보간을 수행하면 CIR 추정기(4111)의 출력을 선택하고, 추정된 CIR에 대해 외삽을 수행하면 제1 클리너(4112)의 출력을 선택하여 CIR 연산기(4114)로 출력한다.
상기 CIR 연산기(4114)는 추정된 CIR에 대해 보간 또는 외삽하여 제2 클리너(4115)로 출력한다.
즉, 기지 데이터로부터 추정된 CIR에는 구하고자 하는 채널 성분뿐만 아니라 잡음에 의한 지터(jitter) 성분도 포함된다. 이러한 지터 성분은 등화기 성능을 저하하는 요인이 되므로 계수 계산부(4122)에서 CIR을 사용하기 전에 제거하는 것이 좋다. 따라서 상기 제1, 제2 클리너(4112,4115)에서는 입력되는 CIR 성분 중 파워(power)가 기 설정된 임계값(threshold) 이하인 부분을 제거(즉, '0'으로 만듦)하는 것을 일 실시예로 한다. 그리고 이러한 제거 과정을 CIR cleaning이라 한다.
즉, 상기 CIR 연산기(4114)에서 CIR 보간(interpolation)은, 상기 CIR 추정기(4111)에서 추정된 두 개의 CIR에 각각 계수를 곱하고 더하여 이루어진다. 이때 CIR의 잡음 성분 중 일부는 서로 더해져 상쇄된다. 따라서 상기 CIR 연산기(4114)에서 CIR 보간을 하는 경우에는 잡음 성분이 남아있는 원래의 CIR을 사용한다. 즉, 상기 CIR 연산기(4114)에서 CIR 보간을 하는 경우, 상기 추정된 CIR은 제1 클리너(4112)를 바이패스하여 CIR 연산기(4114)로 입력된다. 그리고 상기 CIR 연산기(4114)에서 보간된 CIR은 제2 클리너(4115)에서 클리닝한다.
반면 상기 CIR 연산기(4114)에서 CIR 외삽은, 상기 CIR 추정기(4111) 에서 추정된 두 CIR의 차를 이용해 두 CIR 바깥에 위치한 CIR을 추정하여 이루어진다. 그러므로 이때는 CIR의 잡음 성분이 오히려 증폭된다. 따라서 상기 CIR 연산기(4114)에서 CIR 외삽을 하는 경우에는 상기 제1 클리너(4112)에서 클리닝된 CIR를 사용한다. 즉, 상기 CIR 연산기(4114)에서 CIR 외삽을 하는 경우, 상기 외삽된 CIR은 제2 클리너(4115)를 거쳐 제로 패딩부(4116)로 입력된다.
한편 상기 제2 클리너(4115)에서 클링닝되어 출력되는 CIR을 상기 제2 주파수 영역 변환부(4121)에서 주파수 영역으로 변환할 때 입력되는 CIR의 길이와 FFT 사이즈(Size)가 일치하지 않는 경우가 발생할 수 있다. 즉, CIR의 길이가 FFT 사이즈보다 작은 경우가 발생할 수 있다. 이 경우 제로 패딩부(4116)에서는 FFT 사이즈와 입력되는 CIR 길이의 차이만큼 CIR에 '0'을 첨가하여 상기 제2 주파수 영역 변환부(4121)로 출력한다. 여기서 제로 패딩되는 CIR은 보간된 CIR, 외삽된 CIR, 기지 데이터 구간에서 추정된 CIR 중 하나가 될 수 있다.
상기 제2 주파수 영역 변환부(4121)는 입력되는 시간 영역의 CIR를 FFT하여 주파수 영역의 CIR로 변환한 후 계수 계산부(4122)로 출력한다.
상기 계수 계산부(4122)는 상기 제2 주파수 영역 변환부(4121)에서 출력되는 주파수 영역의 CIR을 이용하여 등화 계수를 계산한 후 왜곡 보상부(4130)로 출력한다. 이때 상기 계수 계산부(4122)는 일 실시예로, 상기 주파수 영역의 CIR로부터 평균 자승 에러를 최소화(Minimum Mean Square Error: MMSE)하는 주파수 영역의 등화 계수를 구하여 왜곡 보상부(4130)로 출력한다.
상기 왜곡 보상부(4130)는 상기 제1 주파수 영역 변환부(4100)의 FFT부(4102)에서 출력되는 주파수 영역의 중첩 데이터에 계수 계산부(4122)에서 계산된 등화 계수를 복소곱하여 상기 FFT부(4102)에서 출력되는 중첩 데이터의 채널 왜곡을 보상한다. 즉, 수신된 신호에 포함된 틸트, 고스트와 같은 채널 왜곡이 보상된다.
한편 상기 채널 등화기(1302)에서 채널 등화된 후 블록 복호기(또는 채널 복호기라 함)(1303)로 입력되는 데이터가 송신측에서 블록 부호화와 트렐리스 부호화가 모두 수행된 데이터(예를 들어, RS frame 내 데이터)이면 송신측의 역으로 트렐리스 복호 및 블록 복호가 수행되고, 블록 부호화는 수행되지 않고 트렐리스 부호화만 수행된 데이터(예를 들어, 메인 서비스 데이터)이면 트렐리스 복호만 수행된다.
상기 블록 복호기(1303)에서 트렐리스 복호 및 블록 복호된 데이터는 RS frame 복호기(1304)로 출력된다. 즉, 상기 블록 복호기(1303)는 데이터 그룹 내 데이터들 중 기지 데이터, 트렐리스 초기화에 이용된 데이터, 시그널링 정보 데이터, MPEG 헤더 그리고 송신 시스템의 RS 부호기/비체계적 RS 부호기 또는 비체계적 RS 부호기에서 부가된 RS 패리티 데이터들을 제거하고 RS frame 복호기(1304)로 출력한다. 여기서 데이터 제거는 블록 복호전에 이루어질 수도 있고, 블록 복호 중이나 블록 복호 후에 이루어질 수도 있다.
한편 상기 블록 복호기(1303)에서 트렐리스 복호된 데이터는 메인 서비스 데이터 처리부의 데이터 디인터리버로 출력된다. 이때 상기 블록 복호기(1303)에서 트렐리스 복호되어 데이터 디인터리버로 출력되는 데이터는 메인 서비스 데이터뿐만 아니라, RS frame 내 데이터, 시그널링 정보도 포함될 수 있다. 또한 송신측에서 전처리기 이후에 부가되는 RS 패리티 데이터도 상기 데이터 디인터리버로 출력되는 데이터에 포함될 수 있다.
다른 실시예로, 송신측에서 블록 부호화는 수행되지 않고, 트렐리스 부호화만 수행된 데이터는 상기 블록 복호기(1303)에서 그대로 바이패스되어 데이터 디인터리버로 출력될 수도 있다. 이 경우 상기 데이터 디인터리버 전단에 트렐리스 복호기를 더 구비하여야 한다.
상기 블록 복호기(1303)는 입력되는 데이터가 송신측에서 블록 부호화는 수행되지 않고 트렐리스 부호화만 수행된 데이터라면, 입력 데이터에 대해 비터비(또는 트렐리스) 복호를 수행하여 하드 판정값을 출력하거나, 또는 소프트 판정값을 하드 판정하고 그 결과를 출력할 수도 있다.
상기 블록 복호기(1303)는 입력되는 데이터가 송신측에서 블록 부호화와 트렐리스 부호화가 모두 수행된 데이터라면, 입력 데이터에 대하여 소프트 판정값을 출력한다.
즉, 상기 블록 복호기(1303)는 입력되는 데이터가 송신측의 블록 처리기에서 블록 부호화가 수행되고, 트렐리스 부호화부에서 트렐리스 부호화가 수행된 데이터라면, 송신측의 역으로 트렐리스 복호와 블록 복호를 수행한다. 이때 송신측의 블록 처리기는 외부 부호기로 볼 수 있고, 트렐리스 부호화부는 내부 부호기로 볼 수 있다.
이러한 연접 부호의 복호시에 외부 부호의 복호 성능을 최대한 발휘하기 위해서는 내부 부호의 복호기에서 소프트 판정값을 출력하는 것이 좋다.
도 30은 본 발명의 일실시예에 따른 SCCC 부호화 처리를 나타낸 도면이다.
SCCC 부호화 과정에서는 컨볼루션 부호기(30010), 심볼 인터리버(30020), 심볼-바이트 변환기(30030), 데이터 다중화기(30040) 및 트렐리스 부호화 모듈(30050)이 관여한다.
SCCC 복호기는 도 30의 도시된 바와 같은, 메인 트렐리스 코드와 M/H 컨볼루션 코드를 복호하는데, 이러한 코드들이 심볼 인터리버(30020)와 데이터 다중화기(30040)을 통하여 효과적으로 연관되어 있는 상태를 고려하여 복호를 수행하게 된다. 데이터 다중화기(30040)는 블록 프로세세로부터 트렐리스 부호기까지의 복합적인 과정이 결합된 과정을 나타낸다. 실제로, 데이터 다중화기(30040)는 그룹 포맷터, 패킷 포맷터, 패킷 다중화기, RS 부호기, 데이터 인터리버, 바이트-심볼 변환기와 트렐리스 부호기 내의 심볼 디멀티플렉서의 역할이 결합된 과정을 나타낸다.
도 31은 본 발명에 따른 블록 복호기(1303)의 일 실시예를 보인 상세 블록도로서, 입력 버퍼(5011), TCM(Trellis Code Modulation) 복호부(5012), 데이터 디멀티플렉서(5013), 심볼 디인터리버(5014), 심볼 복호기(5015), 심볼 인터리버(5016), 데이터 멀티플렉서(5017)를 포함한다. 상기 TCM복호부(5012)는 내부 복호기라 하고, 심볼 복호기(5015)는 외부 복호기 또는 트렐리스 복호기라 하기도 한다. 본 발명에 따른 심볼 복호기(1303)는 SCCC 블록 단위로 입력 데이터에 대해 SCCC 복호를 수행한다. 도 31에서, TCM 복호부(5012)와 심볼 복호기(5015)에 붙은 ‘U’와 ‘C’는 4개 포트의 소프트 입력 소프트 출력(SISO)을 나타낸다.
상기 입력 버퍼(5011)는 채널 등화기(1302)에서 채널 등화되어 출력되는 모바일 서비스 데이터 심볼(즉, RS frame 부호화시 부가된 RS 패리티 데이터 심볼, CRC 데이터 심볼들을 포함)값들을 SCCC 블록 단위로 일시 저장한 후 반복적으로 TCM 복호기(5012)로 출력한다.
또한 상기 입력 버퍼(5011)는 채널 등화기(1302)에서 채널 등화되어 출력되는 심볼값 중에 모바일 서비스 데이터 심볼(즉, RS frame 부호화시 부가된 RS 패리티 데이터 심볼, CRC 데이터 심볼들을 포함)값이 전혀 포함되지 않은 구간에서의 입력 심볼값들은 저장하지 않고 바이패스한다. 즉, SCCC 블록 부호화가 수행되지 않았던 구간의 입력 심볼값에 대해서는 트렐리스 복호만 수행하므로 입력 버퍼(5011)는 상기 입력에 대해 저장 및 반복 출력 과정을 수행하지 않고 그대로 TCM 복호부(5012)로 입력시킨다.
상기 입력 버퍼(5011)는 오퍼레이션 제어기(1307) 또는 시그널링 복호부(1306)에서 출력되는 SCCC 관련 정보 예를 들어, SCCC 블록 모드와 SCCC 아웃터 코드 모드를 참조하여 입력 데이터의 저장 및 출력을 제어한다.
상기 TCM 복호부(5012)는 12-way 트렐리스 부호기와 대응하기 위해서 12-way TCM(Trellis Coded Modulation) 복호기를 포함한다. 그리고 상기 12-way 트렐리스 부호기의 역과정으로 입력 심볼값에 대해 12-way 트렐리스 복호를 수행한다.
즉, 상기 TCM 복호부(5012)는 입력 버퍼(5011)의 출력 심볼값과 데이터 멀티플렉서(5017)를 통해 피드백되는 소프트 판정값(soft-decision value)을 각각 SCCC 블록만큼 입력받아 각 심볼의 TCM 복호를 수행한다.
이때, 상기 피드백되는 소프트 판정값들은 상기 데이터 멀티플렉서(5017)의 제어에 의해 상기 입력 버퍼(5011)에서 출력되는 SCCC 블록만큼의 심볼 위치와 일대일로 매칭되어 TCM 복호부(5012)로 입력된다. 즉, 상기 입력 버퍼(5011)에서 출력되는 심볼값과 터보 복호되어 입력되는 데이터는 해당 SCCC 블록 내 같은 위치끼리 매칭되어 TCM 복호부(5012)로 출력된다. 예를 들어, 상기 터보 복호된 데이터가 SCCC 블록 내 세 번째 심볼값이라면 상기 입력 버퍼(5011)에서 출력되는 SCCC 블록 내 세 번째 심볼값과 매칭되어 TCM 복호부(5012)로 출력된다.
이를 위해 상기 데이터 멀티플렉서(5017)는 회귀적인 터보 복호가 이루어지는 동안 상기 입력 버퍼(5011)에서 해당 SCCC 블록 데이터를 저장하도록 제어하며, 지연 등을 통해 심볼 인터리버(5016)의 출력 심볼의 소프트 판정값(예를 들어, LLR)과 상기 출력 심볼의 블록 내 같은 위치에 해당하는 입력 버퍼(5011)의 심볼값이 일대일 매칭되어 해당 경로(way)의 TCM 복호기로 입력될 수 있도록 제어한다. 이때 블록 부호화된 심볼값이 아닌 경우, 터보 복호되지 않기 때문에 매칭되는 출력 위치에 널(null)가 삽입된다.
이러한 과정이 터보 복호의 기 설정된 반복 횟수동안 진행되고 나면, 다음 SCCC 블록의 데이터가 입력 버퍼(5011)에 저장된 후 출력되어 상기 터보 복호 과정을 반복한다.
상기 TCM 복호부(5012)의 출력은 전송된 심볼들에 대해서 송신측 트렐리스 부호기에 입력된 심볼들의 신뢰도를 의미한다. 예를 들어 송신측의 트렐리스 부호화부의 입력은 두 비트가 한 심볼이므로 한 비트의 '1'일 확률과 '0'일 확률간의 로그비(Log Likelihood Ratio; LLR)를 상위비트와 하위비트에 대해 각각 출력(비트단위 출력)할 수 있다. 상기 LLR(Log Likelihood Ratio)이란 입력 비트가 1일 확률값과 0일 확률값의 비율에 대한 로그값을 의미한다. 또는 2비트 즉, 한 심볼이 "00", "01", "10", "11"이 될 확률값의 로그비(LLR)를 4개의 조합(00,01,10,11)에 대해 모두 출력(심볼단위 출력)할 수 있다. 이것은 결국 수신한 심볼에 대한 소프트 판정값으로서, 트레릴스 부호기에 입력되었던 비트들의 신뢰도를 나타낸다. 상기 TCM 복호부(5012) 내 각 TCM 복호기의 복호 알고리즘으로는 MAP(Maximum A posteriori Probability), SOVA(Soft-Out Viterbi Algorithm)등이 사용될 수 있다.
상기 데이터 디멀티플렉서(5013)는 상기 TCM 복호부(5012)의 출력 중 모바일 서비스 데이터 심볼(즉, RS frame 부호화시 부가된 RS 패리티 데이터, CRC 데이터 심볼들을 포함)에 해당하는 소프트 판정값들을 구분하여 심볼 디인터리버(5014)로 출력한다. 이때 상기 데이터 디멀티플렉서(5013)는 송신측의 블록 처리기의 출력 심볼이 트렐리스 부호화부로 입력되는 중간 과정(예를 들어, 그룹 포맷터, 데이터 디인터리버, 패킷 포맷터, 데이터 인터리버)에서 발생하는 모바일 서비스 데이터 심볼의 처리 순서 변화의 역과정을 수행하여 상기 TCM 복호부(5012)에서 출력되는 모바일 서비스 데이터 심볼의 소프트 판정 값의 처리 순서를 변경(reordering)한 후 심볼 디인터리버(5014)로 출력한다. 이는 송신측의 블록 처리기(302)의 트렐리스 부호화부 사이에 다수의 블록이 존재하며, 이 블록들로 인해 블록 처리기에서 출력되는 모바일 서비스 데이터 심볼의 순서와 트렐리스 부호화부로 입력되는 모바일 서비스 데이터 심볼의 순서가 달라지기 때문이다. 즉, 상기 데이터 디멀티플렉서(5013)는 상기 심볼 디인터리버(5014)로 입력되는 모바일 서비스 데이터 심볼의 순서가 송신측의 블록 처리기의 출력 순서와 일치하도록 상기 TCM 복호부(5012)에서 출력되는 모바일 서비스 데이터 심볼의 순서를 재배열(reordering)한다. 이러한 재배열(reordering) 과정은 소프트웨어, 하드웨어, 미들웨어 중 적어도 하나로 구현될 수 있다.
상기 심볼 디인터리버(5014)는 송신측의 심볼 인터리버의 심볼 인터리빙의 역과정으로, 상기 데이터 디멀티플렉서(5013)에서 순서가 변경되어 출력되는 데이터 심볼의 소프트 판정값에 대해 심볼 디인터리빙을 수행한다. 상기 심볼 디인터리버(5014)에서 심볼 디인터리빙시 사용되는 SCCC 블록의 크기는 송신측의 심볼 인터리버의 실제 심볼의 인터리빙 크기(즉, B)와 동일하며 이것은 터보 복호가 TCM 복호부(5012)와 심볼 복호기(5015) 간에 이루어지기 때문이다.
상기 심볼 디인터리버(5014)의 입력과 출력은 모두 소프트 판정값이며, 상기 디인터리빙된 소프트 판정값은 상기 심볼 복호기(5015)로 출력된다.
상기 심볼 복호기(5015)는 4개의 메모리 상태를 가진다. 만일 1/2 부호율 모드라면, 상기 메모리 상태들은 하나의 심볼에 대응하는 하나의 입력 LLR 셋트에 따라 천이된다. 즉, 상기 심볼 부호기에서 1/2 부호화되어 전송된 데이터라면 상기 심볼 디인터리버(5014)의 출력 LLR이 그대로 심볼 복호기(5015)로 출력된다.
하지만, 1/4 부호율 모드라면, 즉, 상기 송신측의 심볼 부호기에서 1/4 부호율로 부호화되어 전송된 데이타라면, 상기 메모리 상태들은 2개의 연속적인 심볼들에 대응하는 2개의 입력 LLR 셋트에 따라 천이된다. 그러므로, 2개의 입력 LLR 셋트는 심볼 복호기(5015)의 입력 단계(stage)에서 하나의 LLR 셋트로 머지(merge)되어야 한다. 본 발명에서 상기 머지(merge)된 LLR 셋트는 제1 입력 LLR들과 제2 입력 LLR들을 더함으로써 얻을 수 있다. 만일 Li(x)가 ‘x’ 조건의 입력 LLR 값으로 정의된다면, 상기 머지(merge)된 LLR 셋트는 하기의 수학식 8과 같이 표시할 수 있다.
Figure pat00008
한편 입력 LLR의 처리와 반대로, 상기 심볼 복호기(5015)로부터 출력될 LLR의 처리는 1/4 부호율 모드에서 하기의 수학식 9와 같이 2개의 심볼 LLR로 구분된 후 출력된다.
Figure pat00009
여기서, X와 Y는 0 또는 1의 임의적인 수이다. 그리고 'Delta' 의 값은 IETF RFC 3926 "FLUTE - File Delivery over Unidirectional Transport"로부터 구하는 것을 일 실시예로 한다.
이때 상기 심볼 복호기(5015)에서는 2가지 소프트 판정값이 출력된다. 하나는 심볼 부호기의 출력 심볼과 매칭되는 소프트 판정 값(이하, 제1 소프트 판정값이라 함)이고 다른 하나는 심볼 부호기의 입력 비트와 매칭되는 소프트 판정 값(이하, 제2 소프트 판정값이라 함)이다. 상기 제1 소프트 판정값은 심볼 부호기의 출력 심볼 즉, 두 비트의 신뢰도를 의미하며, 한 비트의 '1'일 확률과 '0'일 확률간의 로그비(LLR)를 심볼을 구성하는 상위비트와 하위비트에 대해 각각 출력(비트단위 출력)하거나, 2비트가 "00", "01", "10", "11"이 될 확률값의 로그비(LLR)를 모든 조합에 대해 출력(심볼단위 출력)할 수 있다. 상기 제1 소프트 판정값은 심볼 인터리버(5016)와 데이터 멀티플렉서(5017)를 통해 TCM 복호부(5012)로 피드백된다. 상기 제2 소프트 판정값은 송신측의 심볼 부호기의 입력 비트의 신뢰도를 의미하며, 한 비트의 '1'일 확률과 '0'일 확률간의 로그비(LLR)로 표현되어 RS frame 복호기(1304)로 출력된다. 상기 심볼 복호기(5015)의 복호 알고리즘으로는 MAP(Maximum A posteriori Probability), SOVA(Soft-Out Viterbi Algorithm)등이 사용될 수 있다.
이때 상기 심볼 복호기(5015)에서 출력되는 제1 소프트 판정값은 1/4 부호율 모드인 경우, 수학식 9에서와 같이 2개의 심볼 LLR로 구분되어 심볼 인터리버(5016)로 출력된다.
예를 들어, 상기 심볼 복호기(5015)의 입/출력 단위가 심볼 단위라면, 상기 심볼 복호기(5015)로 입력되는 소프트 판정값(LLR)은 16가지(24 = 16)이다. 이때 상기 심볼 복호기(5015)로 입력되는 16가지(24 = 16)의 소프트 판정값(즉, LLR)은 해당 제1 입력 LLR과 제2 입력 LLR을 합한 결과이다.
만일 상기 심볼 부호기에서 1/4 부호화가 이루어진 경우, 상기 심볼 복호기(5015)는 16가지 심볼에 대한 LLR을 입력받아 심볼 복호 후 16가지 심볼에 대한 LLR을 제1 소프트 판정값으로 출력할 수 있다. 또는 4 비트에 대한 LLR을 입력받아 심볼 복호 후 4 비트에 대한 LLR을 제1 소프트 판정값으로 출력할 수 있다.
그리고 상기 심볼 부호기에서 1/2 부호화가 이루어진 경우, 상기 심볼 복호기(5015)는 4가지 심볼에 대한 LLR을 입력받아 심볼 복호 후 4가지 심볼에 대한 LLR을 제1 소프트 판정값으로 출력할 수 있다. 또는 2 비트에 대한 LLR을 입력받아 심볼 복호 후 2 비트에 대한 LLR을 제1 소프트 판정값으로 출력할 수 있다.
상기 심볼 인터리버(5016)는 일 실시예로, 상기 심볼 복호기(5015)에서 출력되는 제1 소프트 판정값에 대해 도 32과 같이 심볼 인터리빙하여 데이터 멀티플렉서(5017)로 출력할 수 있다. 상기 심볼 인터리버(5020)의 출력도 소프트 판정값이 된다. 다른 실시예로서, 상기 심볼 인터리버(5016)는 상기 심볼 복호기(5015)에서 출력되는 제1 소프트 판정값에 대해 도 32에서와 같이 심볼 인터리빙하여 상기 데이터 멀티플렉서(5017)로 출력할 수 있다.
만일 SCCC 블록 모드가 ‘00’이면 하나의 데이터 그룹은 10개의 SCCC 블록으로 구성되고, ‘01’이면 하나의 데이터 그룹은 5개의 SCCC 블록으로 구성된다. 이때 15개의 SCCC 블록의 심볼 인터리빙 패턴은 다르다. 따라서 모든 심볼 인터리빙 패턴을 저장하려면 매우 큰 용량의 메모리(예를 들어, ROM)이 필요하게 된다. 도 32는 롬과 같은 메모리를 필요로 하지 않으면서 심볼 인터리빙을 수행하기 위한 본 발명에 따른 심볼 인터리버의 구성 블록도이다. 즉, SCCC 블록이 입력되었을 때 롬과 같은 메모리를 사용하지 않고도 심볼 인터리빙된 데이터를 바로 출력하기 위한 것이다.
도 32의 심볼 인터리버(5016)는 패턴 발생부(5110)와 패턴 출력부(5220)를 포함한다. 상기 패턴 발생부(5110)는 모듈로 카운터(5111), 멀티플렉서(5113), 가산기(5114), 곱셈기(5115), 및 모듈로 연산기(5116)를 포함할 수 있다. 상기 패턴 출력부(5220)는 데이터 제거부(5221)와 버퍼(5222)를 포함할 수 있다. 상기 가산기(5114)와 곱셈기(5114) 사이에 모듈로 연산기를 더 포함할 수 있다. 또한 상기 곱셈기(5115)는 복수개의 가산기(또는 쉬프터)로 구현할 수 있다.
도 32에서, B는 심볼 인터리빙을 위해 입력되는 심볼 단위의 블록 길이(Block length in symbols, 예를 들어 SCCC 블록 길이)이고, L은 심볼 인터리버(5016)에서 실제로 인터리빙이 되는 심볼 단위의 블록 길이이다. 이때 L = 2m(여기서 m은 자연수)이면서 L ≥ B 조건을 만족하여야 한다.
상기 모듈로 카운터(5111)는 0부터 L까지 순차적으로 카운트를 수행한다. 상기 가산기(5114)는 0부터 시작하는 모듈로 카운터(5111)의 카운트 값을 입력받는다. 상기 멀티플렉서(5113)는 하나의 SCCC 블록에 대한 심볼 인터리빙 시작시에는 상수 0을 선택하고, 그 다음부터는 가산기(5114)의 출력을 피드백받아 가산기(5114)로 출력한다. 이 경우 심볼 인터리빙의 초기 옵셋 값은 0이 된다.
상기 가산기(5114)는 상기 모듈로 카운터(5111)의 출력과 상기 멀티플렉서(5113)의 출력을 더하여 곱셈기(5115)로 출력된다.
상기 곱셈기(5115)는 가산기(5114)의 출력에 상수 89를 곱하여 모듈로 연산기(5116)로 출력한다. 상기 모듈로 연산기(5116)는 상기 곱셈기(5115)의 출력에 대해 모듈로 L 연산을 수행하여 패턴 출력부(5220)로 출력한다. 본 발명에서 모듈로 연산기(5116)는 비트와이즈 마스크 기능을 이용하여 수행되는 것을 일 실시예로 한다. 일 예로, 상기 L 값이 210이라면, 상기 모듈로 연산기(5116)에서 상기 곱셈기(5115)의 출력 중 하위 10비트만 패턴 출력부(5220)로 출력하면, 모듈로 L 연산이 수행된다.
상기 패턴 출력부(5220)의 데이터 제거부(5221)는 입력 값이 B와 같거나 크면 입력 값을 버린 후 버퍼(5222)로 출력한다. 상기 버퍼(5222)는 FIFO(First Input First Output) 구조인 것을 일 실시예로 한다. 상기 버퍼(5222)는 상기 데이터 제거부(5221)에서 버려지지 않고 남아 있는 값을 응축(condense)하여 저장한 후, 저장된 순서대로 출력한다. 그러므로, 상기 버퍼(5222)로부터 처음 B 출력은 심볼 인터리빙 패턴 P(i)이다. 이때 상기 심볼 인터리빙 패턴 P(i)의 인덱스 i 값은 0부터 B-1까지 증가한다. 만일, 모듈로 카운터(5111)가 계속해서 동작하고, 다음 B 출력이 상기 버퍼(5222)로부터 모아진다면, 이때의 심볼 인터리빙 패턴은 상기 심볼 인터리빙 패턴 P(i)의 역순이 된다. 즉, 상기 심볼 인터리빙 패턴 P(i)의 인덱스 i 값은 B-1부터 0까지 감소한다.
그러므로, 초기 옵셋을 0이 아닌 L/2 값으로 셋팅하고, 심볼 인터리빙을 시작하면, 처음 B 출력은 상기 인터리빙 패턴 P(i)의 역순이다. 이 경우 심볼 인터리빙의 초기 옵셋 값은 L/2 값이 된다.
만일, 초기 옵셋 값으로 0을 사용하면, 가산기(5114)로부터 피드백되는 L번째 값은 (L-1)*L/2이고, 피드백 값의 모듈로 L은 L/2이다.
예를 들어, 초기 옵셋 값을 0을 셋팅하면 심볼 인터리빙 패턴 P(i)을 얻을 수 있고, 초기 옵셋 값으로 L/2 값을 셋팅하면, 처음부터 인터리빙 패턴 P(i)의 역순 즉, 심볼 디인터리빙 패턴 P(i)-1을 얻을 수 있게 된다. 예를 들어, 심볼 디인터리버(5014)에서는 초기 옵셋 값으로 L/2 값을 셋팅하고, 심볼 인터리버(5016)에서는 초기 옵셋 값으로 0값을 셋팅하면, 하나의 심볼 인터리빙 패턴 P(i)만을 사용하여 심볼 디인터리빙과 심볼 인터리빙 동작을 모두 수행할 수 있다.
또는 하나의 초기 옵셋만을 셋팅하고, 모듈로 연산기(5111)에서 2L까지 카운트를 수행하게 하면, 하나의 초기 옵셋만으로 심볼 인터리빙 패턴과 디인터리빙 패턴을 발생할 수 있다.
도 33은 본 발명에 따른 옵셋 값이 0일 때 발생된 심볼 인터리빙 패턴의 일 예를 보인 것으로서, L은 12000, SCCC 블록 길이는 16384인 예를 보이고 있다. 이때 12000부터 23999까지의 인덱스에서 출력 패턴은 0부터 11999까지의 인덱스에서 출력 패턴의 역순이다.
그리고 인터리빙과 디인터리빙은 서로 역과정이기 때문에, 인터리빙 패턴 P(i)과 디인터리빙 패턴 P(i)-1은 상기 블록 복호기(1303)에서 별도로 생성할 필요는 없다. 즉, 상기 심볼 인터리빙 패턴 P(i)만을 사용하여 심볼 인터리빙과 디인터리빙 동작을 모두 수행할 수 있다.
도 34의 (a)는 상기 심볼 인터리빙 패턴 P(i)만을 사용하여 심볼 인터리빙을 수행하는 과정의 일 예를 보이고 있고, 도 34의 (b)는 상기 심볼 인터리빙 패턴 P(i)만을 사용하여 심볼 디인터리빙을 수행하는 과정의 일 예를 보이고 있다.
도 34의 (a)에서 심볼 인터리빙 과정은 다음과 같다.
1a. 인터리빙 패턴 P(i)를 발생한다.
1b. i번째 입력 데이터 심볼을 메모리의 P(i) 위치(location)에 쓴다.
1c. 상기 메모리의 i위치로부터 i번째 출력 데이터 심볼을 읽어낸다.
상기 1a 내지 1c 과정이 0부터 B-1까지 수행되면, 하나의 SCCC 블록에 대한 심볼 인터리빙 과정이 완료된다. 상기 메모리는 버퍼(5222)가 될 수 있다.
도 34의 (b)에서 심볼 디인터리빙 과정은 다음과 같다.
2a. 인터리빙 패턴 P(i)를 발생한다.
2b. i번째 입력 데이터 심볼을 메모리의 i위치에 쓴다.
2c. 상기 메모리의 P(i) 위치로부터 i번째 출력 데이터 심볼을 읽어낸다.
상기 2a 내지 2c 과정이 0부터 B-1까지 수행되면, 하나의 SCCC 블록에 대한 심볼 디인터리빙 과정이 완료된다. 여기서, i의 범위는 0부터 B-1까지이다.
즉, 도 34의 (a),(b)에서, 스텝 1b와 스텝 2c는 상기 메모리의 같은 어드레스를 억세스하고, 스텝 1c와 스텝 2b는 상기 메모리의 같은 어드레스를 억세스한다.
그러므로, 상기 메모리의 특정 위치로부터 이전 데이터를 읽어낸 후 그 위치에 현재 데이터를 쓴다면, 상기 심볼 인터리버(5016)와 심볼 디인터리버(5014)는 싱글 퍼뮤테이션 메모리(single permutation memory)를 이용하여 심볼 인터리빙과 심볼 디인터리빙을 수행할 수 있다. 즉, 심볼 인터리빙과 디인터리빙 과정에서 상기 메모리의 어드레스를 공유(share)할 수 있으므로, 메모리 사이즈를 줄일 수 있게 된다.
이와 같이 본 발명은 하나의 심볼 인터리빙 패턴만을 사용하여 심볼 인터리빙과 심볼 디인터리빙을 수행하고, 메모리 사이즈를 줄이는 효과가 있다.
한편 상기 블록 복호기(1303) 내 데이터 멀티플렉서(5017)는 송신측의 블록 처리기의 출력 심볼이 트렐리스 부호화부에 입력되는 중간과정(예를 들어, 그룹 포맷터, 데이터 디인터리버, 패킷 포맷터, 데이터 인터리버)에서 발생하는 심볼의 처리 순서 변화에 맞춰 상기 심볼 인터리버(5016)의 출력 값들의 순서를 변경한 후 TCM 복호부(5012)로 출력한다. 상기 데이터 멀티플렉서(5017)의 재배열(reordering) 과정도 소프트웨어, 하드웨어, 미들웨어 중 적어도 하나로 구현될 수 있다.
상기 심볼 인터리버(5016)에서 출력되는 소프트 판정 값들은 입력 버퍼(5011)에서 출력되는 SCCC 블록만큼의 모바일 서비스 데이터 심볼 위치와 일대일로 매칭되어 TCM 복호부(5012)로 입력된다. 이때 메인 서비스 데이터 심볼이나 메인 서비스 데이터의 RS 패리티 심볼, 기지 데이터 심볼, 시그널링 정보 데이터 등은 모바일 서비스 데이터 심볼이 아니므로, 상기 데이터 멀티플렉서(5017)는 해당 위치에 널 데이터를 삽입하여 TCM 복호부(5012)로 출력한다. 또한 상기 SCCC 블록의 심볼들을 터보 복호할 때마다 첫번째 복호 시작시에서는 상기 심볼 인터리버(5016)로 부터 피드백되는 값이 없으므로, 상기 데이터 멀티플렉서(5017)는 모바일 서비스 데이터 심볼을 포함한 모든 심볼 위치에 널 데이터를 삽입하여 TCM 복호부(5012)로 출력한다.
상기 심볼 복호기(5015)에서 출력되는 제2 소프트 판정값은 RS frame 복호기(1304)로 입력된다. 일 예로, 상기 심볼 복호기(5015)는 기 설정된 반복 횟수(예를 들어, M번)만큼 터보 복호가 수행될 때까지는 제2 소프트 판정값을 출력하지 않는다. 그러다가 하나의 SCCC 블록에 대해 M번의 터보 복호가 모두 수행되면, 그때의 제2 소프트 판정값을 RS frame 복호기(1304)로 출력한다. 즉, 기 설정된 반복 횟수동안 터보 복호가 이루어지고 나면, 심볼 복호기(5015)의 제2 소프트 판정값은 RS frame 복호기(1304)로 출력되고, 한 SCCC 블록에 대한 블록 복호 과정이 완료된다.
이를 본 발명에서는 설명의 편의를 위해 회귀적인 터보 복호 과정이라 한다.
이때 상기 TCM 복호부(5012)와 심볼 복호기(5015) 사이의 회귀적인 터보 복호 횟수는 하드웨어 복잡도와 에러정정 성능을 고려하여 정의할 수 있는데 횟수가 증가하면 에러 정정 능력은 우수해지지만 하드웨어는 복잡해지는 단점이 있다.
도 35는 본 발명의 일실시예에 따른 RS frame 복호기를 나타낸 도면이다.(FIG. 35 illustrates a structure of an RS frame decoder according to an embodiment of the present invention.)
RS frame 복호기는 RS frame 빌더(6111), RS-CRC 복호기(6112) 및 M/H TP 인터페이스부(1305)를 포함한다.(RS frame decoder includes RS Frame builder 6111, RS-CRC Decoder 6112 and M/H TP Interface block 1305.)
도 35에 도시된 바와 같이, RS frame 복호기는 상위 계층의 요구에 의하여 선택된 특정 Ensemble에 대한 처리를 수행한다. 이 경우, RS frame 빌더(6111)은 선택된 Ensemble의 데이터를 수집하고, 선택된 Ensemble에 상응하는 RS frame을 생성한다. RS-CRC 복호기(6112)는 생성된 RS frame의 에러를 감지하고 에러들을 수집한다. M/H TP 인터페이스부(1305)는 M/H 랜더마이저의 역으로 디랜더마이징을 수행하고, M/H TP 를 출력한다. 즉, RS frame 복호기는 RS frame을 생성하고, CRC 복호를 수행함으로써, RS frame의 각 로우(row)의 에러를 감지하고, RS frame의 각 칼럼(column)에 대하여 CRC 복호와 SCCC 복호를 수행하여 생성된 정보로부터 에러를 정정한다. 그리고 에러 지정 필드 마킹(marking)이된 M/H TP 를 출력하는 역할을 한다.
도 36은 RS frame 모드 값이 00일 때, 즉 하나의 퍼레이드로 전송되는 복수개의 포션을 모아 하나의 RS frame과 RS frame 신용 맵(Reliability Map)을 형성하는 과정을 도시하고 있다.
즉, 상기 RS frame 복호기(1304)는 블록 복호기(1303)로부터 입력받은 모바일 서비스 데이터들을 모아서 RS frame을 구성한다. 상기 모바일 서비스 데이터는 송신 시스템에서 RS frame 단위로 RS 부호화된 데이터인 것을 일 실시예로 한다. 이때 에러 정정 부호화 예를 들어, CRC 부호화는 수행되어 있을 수도 있고, 생략되어 있을 수도 있다.
만일, 송신 시스템에서 (N+2)x(187+P) 바이트 크기의 RS frame을 M개의 포션으로 구분하고, M개의 포션의 모바일 서비스 데이터를 대응하는 M개의 데이터 그룹의 A/B/C/D 영역에 할당하여 전송하였다고 가정하면, 수신 시스템에서도 도 36의 (a)와 같이 각 포션의 모바일 서비스 데이터를 모아 (N+2)x(187+P) 바이트 크기의 RS frame을 구성한다.
이때 해당 RS frame을 구성하는 적어도 하나의 포션에 스터핑 바이트(S)가 추가되어 전송되었다면 상기 스터핑 바이트는 제거되고 RS frame과 RS frame 신용 맵이 구성된다. 예를 들어, 도 27에서와 같이 S개의 스터핑 바이트가 추가되었다면 S개의 스터핑 바이트가 제거된 후 RS frame과 RS frame 신용 맵이 구성된다.
그리고 상기 블록 복호기(1303)에서 복호 결과를 소프트 판정값으로 출력한다고 가정하면, 상기 RS frame 복호기(1304)는 상기 소프트 판정값의 부호로 해당 비트의 0과 1을 결정할 수 있으며, 이렇게 결정된 비트를 8개 모아서 한 바이트를 구성하게 된다. 이러한 과정을 하나의 퍼레이드 내 복수개의 포션(또는 데이터 그룹)의 소프트 판정값에 대해 모두 수행하면 (N+2)x(187+P) 바이트 크기의 RS frame을 구성할 수가 있게 된다.
또한 본 발명은 소프트 판정값을 RS frame을 구성하는데 이용할 뿐만 아니라, 신용 맵(Reliability Map)을 구성하는데 이용한다.
상기 신용 맵은 상기 소프트 판정값의 부호로 결정된 비트를 8개 모아 구성한 해당 바이트가 믿을만한지 여부를 나타낸다.
일 실시예로, 소프트 판정값의 절대값이 기 설정된 문턱값을 넘을 경우에는 해당 소프트 판정값의 부호로 판단한 해당 비트 값은 믿을만하다고 판단하고, 넘지 못할 경우에는 믿을만하지 못하다고 판단한다. 그리고 나서, 소프트 판정값의 부호로 판단한 비트를 8개 모아 구성한 한 바이트 내 한 비트라도 믿을만하지 못하다고 판단된 경우에는 신용 맵에 해당 바이트를 믿을 수 없다고 표시한다. 여기서 한 비트는 하나의 실시예이며, 복수개 예를 들어, 4개의 이상의 비트가 믿을만하지 못하다고 판단된 경우에 신용 맵에 해당 바이트를 믿을 수 없다고 표시할 수도 있다.
반대로 한 바이트 내 모든 비트가 믿을만하다고 판단된 경우 즉, 한 바이트의 모든 비트의 소프트 판정값의 절대값이 기 설정된 문턱값을 넘는 경우에는 신용 맵에 해당 바이트를 믿을만하다고 표시한다. 마찬가지로, 한 바이트 내 복수개 예를 들어, 4개 이상의 비트가 믿을만하다고 판단된 경우에는 신용 맵에 해당 바이트를 믿을만하다고 표시한다.
상기 예시한 수치는 일 예에 불과하며, 상기 수치로 본 발명의 권리범위가 제한되는 것은 아니다.
상기 소프트 판정값을 이용한 RS frame의 구성과 신용 맵의 구성은 동시에 이루어질 수 있다. 이때 상기 신용 맵 내 신용 정보는 상기 RS frame 내 각 바이트에 1:1로 대응한다. 예를 들어, 하나의 RS frame이 (N+2) x (187+P) 바이트 크기를 가진다면, 상기 신용 맵은 (N+2) x (187+P) 비트 크기를 가진다. 도 36의 (a'),(b')는 본 발명에 따른 신용 맵 형성 과정을 보이고 있다.
이어 상기 RS frame에 대해 RS frame 신용 맵 정보를 이용하여 에러 정정을 수행한다.
도 37내지 도 38은 본 발명에 따른 에러 정정 복호 과정의 일 실시예를 보인 것이다.
도 37의 경우, CRC-RS 복호가 수행된 RS frame에 대해 CRC 신드롬 체크를 한번 더 수행하고, 그 결과를 상기 RS frame의 페이로드를 구성하는 각 M/H 서비스 데이터 패킷 내 error_indicator 필드에 표시한 후 A/V 복호를 위해 출력하는 것을 일 실시예로 한다. 예를 들어, 에러가 있는 M/H 서비스 데이터 패킷의 error_indicator 필드에는 ‘1’을 표시하고, 에러가 없는 M/H 서비스 데이터 패킷의 error_indicator 필드에는 ‘0’을 표시한다. 만일 상기 송신측에서 RS frame 페이로드의 모든 M/H 서비스 데이터 패킷의 error_indicator 필드를 모두 ‘0’으로 설정하여 전송한 경우라면, 상기 CRC 신드롬 체크 결과, 에러가 있다고 판단된 로우의 M/H 서비스 데이터 패킷의 error_indicator 필드에만 ‘1’을 표시하는 것을 일 실시예로 한다.
이렇게 함으로써, 이후로 M/H 서비스 데이터 패킷을 입력받아 처리하는 블록(예를 들어, M/H TP 인터페이스부(1305))의 오동작 확률을 줄일 수 있다. 예를 들어, 상기 M/H TP 인터페이스부(1305)에서는 error_indicator 필드가 ‘1’로 표시되어 있는 M/H 서비스 데이터 패킷은 사용하지 않고 버릴 수 있다. 이렇게 하면 상기 M/H TP 인터페이스부(1305)의 오동작 확률을 줄일 수 있으므로, 수신 시스템의 전체 성능을 향상시킬 수 있게 된다.
즉, 도 37의 (a),(a')와 같이 (N+2)x(187+P) 바이트 크기의 RS frame과 (N+2)x(187+P) 비트 크기의 RS frame 신용 맵이 구성되면, 이 RS frame에 대해 CRC 신드롬 체크를 수행하여 각 로우의 에러 발생여부를 검사한다. 이어 도 37의 (b)와 같이 각 로우에 대응하는 CRC 에러 플래그에 에러 여부를 표시한다. 이때 신용 맵 중 CRC 체크섬에 해당하는 부분은 활용도가 없으므로, 이 부분을 제거하여 도 37의 (b')와 같이 Nx(187+P)개의 신용 정보만을 남긴다.
상기와 같이 CRC 신드롬 체크가 수행되고 나면, N개의 컬럼에 대해서 (187+P, 187)-RS 복호를 수행한다. 이때 전체 N+2개의 컬럼(Column)중에서 마지막 2개를 제외한 N개의 컬럼에 대해서만 RS 복호를 수행하는 이유는, 마지막 2개의 컬럼은 CRC 체크섬으로만 이루어져있으며, 송신측에서 RS 부호화가 수행되지 않았기 때문이다.
이때 상기 CRC 에러 플래그에 표시된 에러의 개수에 따라 RS 이레이저(erasure) 복호를 수행하거나 일반적인 RS 복호를 수행한다.
예를 들어, CRC 에러를 가진 로우의 개수가 RS 이레이저 복호(decoding)로 수정 가능한 최대 에러 개수(실시예에 따르면 48)보다 작거나 같다면 도 37의 (d)와 같이 (187+P) 즉, 235개의 N 바이트 로우를 갖는 RS frame에 대해서 컬럼 방향으로 (235,187)-RS 이레이저 복호를 수행한다. 그런데, CRC 에러를 가진 로우의 개수가 RS 이레이저 복호로 수정 가능한 최대 에러 개수(즉, 48)보다 크다면 RS 이레이저 복호를 수행할 수가 없다. 이러한 경우 일반적인 RS 복호를 통해서 에러 정정을 수행할 수 있다. 이때 본 발명은 소프트 판정값으로부터 RS frame을 구성할 때 함께 생성한 신용 맵을 이용하여 에러 정정 능력을 더욱 높일 수 있다.
즉, 상기 RS frame 복호기에서는 블록 복호기(1303)의 소프트 판정값의 절대값을 기 설정된 임계값과 비교하여 해당 소프트 판정값의 부호로 결정되는 비트 값의 신용을 판단하였다. 그리고 소프트 판정값의 부호로 판단한 비트를 8개 모아 구성한 해당 바이트에 대한 신용 정보를 신용 맵에 표시하였다.
따라서 본 발명은 도 37의 (c)와 같이 특정 로우의 CRC 신드롬 체크 결과, 그 로우에 CRC 에러가 있다고 판단되더라도 그 로우의 모든 바이트가 에러가 있는 것이라고 가정하는 것이 아니라, 신용 맵의 신용 정보를 참조하여 믿을만하지 못하다고 판단된 바이트에 대해서만 에러로 설정한다. 즉, 해당 로우의 CRC 에러 여부에 상관없이 신용 맵의 신용 정보에서 믿을만하지 못하다고 판단되는 바이트만을 이레이저 포인트(erasure point)로 설정한다.
또 다른 방법으로 CRC 신드롬 체크 결과 해당 로우에 CRC 에러가 있다고 판단되면서 신용 맵의 신용 정보가 믿을만 하지 못한다고 판단된 바이트에 대해서만 에러로 설정한다. 즉, 해당 로우에 CRC 에러가 있으면서 신용 맵의 신용 정보에서 믿을만 하지 못하다고 판단이 되는 바이트만을 이레이저 포인트(erasure point)로 설정한다.
그리고 나서, 각 컬럼별로 에러 포인트의 수가 RS 이레이저 복호로 수정 가능한 최대 에러 개수(즉, 48)보다 작거나 같다면 그 컬럼에 대해서는 RS 이레이저 복호를 수행한다. 반대로 에러 포인트의 수가 RS 이레이저 복호로 수정 가능한 최대 개수(즉, 48)보다 크다면 그 컬럼에 대해서는 일반적인 RS 복호를 수행한다.
즉, CRC 에러를 가진 로우의 개수가 RS 이레이저 복호로 수정 가능한 최대 에러 개수(예를 들면, 48)보다 크면, 신용 맵의 신용 정보에 의해 결정된 해당 컬럼 내 이레이저 포인트 수에 따라 그 컬럼에 대해서 RS 이레이저 복호를 수행하거나, 일반적인 RS 복호를 수행한다.
예를 들어, 상기 RS frame 내에서 CRC 에러를 가진 로우의 개수가 48보다 크고, 신용 맵의 신용 정보에 의해 결정된 이레이저 포인트 수가 첫 번째 컬럼에서는 40개가 표시되고, 두 번째 컬럼에서는 50개가 표시되었다고 가정하자. 그러면, 상기 첫 번째 컬럼에 대해서는 (235,187)-RS 이레이저 복호를 수행하고, 두 번째 컬럼에 대해서는 (235,187)-RS 복호를 수행한다.
이와 같이 본 발명은 도 37의 (d) 또는 (d’) 과정을 적용하여, RS frame 내 마지막 2개를 제외한 N개의 컬럼에 대한 에러 정정 복호를 수행한다. N개의 컬럼에 대한 에러 정정 복호가 수행되고 나면, 도 38의 (e)에서와 같이 RS 에러의 개수를 카운트한다.
이때 한 개의 컬럼에서도 에러가 발생하지 않았거나, 또는 도 37의 (d) 또는 도 37의 (d’) 과정에 의해 에러가 모두 정정이 되었다면, 즉 RS 에러의 개수가 0이면, 해당 RS frame 중에서 M/H 서비스 데이터 패킷을 구성하는 (N+187) 바이트의 RS frame 페이로드에 에러가 없음을 의미한다. 이때는 도 38의 (f)와 같이 상기 (N+187) 바이트의 RS frame 페이로드에 대해 송신측의 역으로 디랜더마이징을 수행한다. 그리고 상기 디랜더마이징된 RS frame 페이로드의 각 M/H 서비스 데이터 패킷(즉, M/H TP 패킷)을 M/H TP 인터페이스부(1305)로 출력할 때, 도 38의 (g)와 같이 상기 M/H 서비스 데이터 패킷 내 error_indicator 필드 값을 ‘0’(즉, 에러 없음)으로 셋트하여 출력한다. 즉, 상기 RS frame 페이로드를 구성하는 M/H 서비스 데이터 패킷들 내 error_indicator 필드 값은 모두 ‘0’으로 셋트된다.
한편, RS 복호가 수행되어도 N개의 컬럼에 있는 에러가 모두 정정되지 않고 남아 있을 수도 있다. 이 경우 RS 에러의 개수는 0이 아니다.
이때는 도 38의 (h)에서와 같이 RS 복호를 수행한 RS frame에 대해 CRC 신드롬 체크를 다시 수행하여, 187 로우의 에러 여부를 다시 검사한다.
도 38의 (h)에서 CRC 신드롬 체크를 다시 수행하는 이유는, 상기 RS frame의 마지막 2 컬럼(즉, CRC 체크섬 데이터)에 대해서는 RS 복호가 이루어지지 않았으나, M/H 서비스 데이터 패킷을 포함하는 N개의 컬럼에 대해서는 RS 복호가 이루어졌으므로, RS 복호에 의해서 정정된 에러에 대한 영향을 확인하여 반영할 수 있기 때문이다.
즉, 본 발명은 CRC-RS 복호를 수행한 후에 도 38의 (h)와 같이 각 로우마다 CRC 신드롬 체크를 다시 수행하고, 도 38의 (i)와 같이 CRC 신드롬 체크가 수행된 RS frame 페이로드를 디랜더마징하여 출력할 때, 도 38의 (j)와 같이 상기 CRC 신드롬 체크 결과를 해당 로우를 구성하는 M/H 서비스 데이터 패킷의 error_indicator 필드에 표시(marking)하여 출력한다.
예를 들어, 상기 CRC 신드롬 체크를 다시 수행하였을 때에, 상기 RS frame에 CRC 에러가 하나도 없다고 판명되면, 디랜더마이징된 RS frame 페이로드의 M/H 서비스 데이터 패킷들 내 error_indicator 필드 값은 모두 ‘0’으로 표시된다.만일, 상기 CRC 신드롬 체크를 다시 수행하였을 때에, 상기 RS frame의 특정 로우 예를 들어, 두번째, 세번째 로우에 CRC 에러가 있다고 판명되면, 디랜더마이징된 RS frame 페이로드의 두번째, 세번째 M/H 서비스 데이터 패킷 내 error_indicator 필드 값은 ‘1’로 표시되고, 나머지 M/H 서비스 데이터 패킷 내 error_indicator 필드 값은 모두 ‘0’으로 표시된다.
본 발명은 RS frame 복호기를 하나의 M/H frame 내 퍼레이드의 수(=M)만큼 병렬로 구비하고, M개의 RS frame 복호기의 입력단에는 복수의 포션들을 다중화하는 다중화기를, M개의 RS frame 복호기의 출력단에는 역다중화기를 구비하여 RS frame 복호기를 구성할 수도 있다.
상기 시그널링 복호기(1306)는 입력되는 데이터로부터 송신측에서 삽입하여 전송한 시그널링 정보(예를 들어, TPC와 FIC 정보)를 추출하여 복호한 후, 복호된 시그널링 정보를 필요한 블록으로 제공한다.
즉, 상기 시그널링 복호기(1306)는 상기 등화된 데이터로부터 송신측에서 삽입하여 전송한 TPC 데이터와 FIC 데이터를 추출하고 복호하여 TPC 데이터는 오퍼레이션 제어기(1307)로 출력하고, FIC 데이터는 FIC 처리기(1308)로 출력한다. 일 예로, 상기TPC 데이터와 FIC 데이터는 각 데이터 그룹의 시그널링 정보 영역에 삽입되어 수신된다.
이때 상기 기지 데이터 검출기(1506)에서 출력되는 기지 데이터 위치 정보를 이용하면 데이터 그룹 내 시그널링 정보 영역을 알 수 있다. 상기 시그널링 정보 영역(area)은 도 4와 같이 데이터 그룹 내 M/H 블록 B4의 첫 번째 세그먼트부터 두 번째 세그먼트의 일부까지이다. 즉, 본 발명에서는 각 데이터 그룹의 M/H 블록 B4의 276(=207+69) 바이트가 시그널링 정보를 삽입하기 위한 영역으로 할당된다. 다시 말해, 상기 시그널링 정보 영역은 M/H 블록 B4의 첫 번째 세그먼트인 207 바이트와 두 번째 세그먼트의 처음 69 바이트로 구성된다. 그리고, 제1 기지 데이터 열(즉, 제1 트레이닝 시퀀스)는 M/H 블록 B3의 마지막 2 세그먼트에 삽입되고, 제2 기지 데이터 열(즉, 제2 트레이닝 시퀀스)는 M/H 블록 B4의 두 번째와 세 번째 세그먼트에 삽입된다. 이때 제2 기지 데이터 열은 시그널링 정보 영역 다음에 삽입되어 수신되므로, 상기 시그널링 복호기(1306)는 채널 동기화부(1301) 또는 채널 등화기(1302)에서 출력되는 데이터로부터 시그널링 정보 영역의 시그널링 정보를 추출하여 복호할 수 있다.
도 39는 본 발명에 따른 시그널링 복호기(1306)의 일 실시예를 보인 블록도이다.
상기 시그널링 복호기(1306)는 등화된 데이터 중 시그널링 정보 영역의 데이터에 대해 회귀적 터보 복호(iterative turbo decoding) 및 RS 복호를 수행한다. 그리고 그 결과로 얻어진 전송 파라미터(즉, TPC 데이터)는 오퍼레이션 제어기(1307)로 출력하고, FIC 데이터는 상위 계층으로 출력한다.
이를 위해 상기 시그널링 복호기(1306)는 회귀적 터보 복호기(7111), 디랜더마이저(7112), 역다중화기(7113), RS 복호기(7114), 블록 디인터리버(7115), 및 RS 복호기(7116)를 포함할 수 있다.
도 40은 회귀적 터보 복호기(7111)의 일 실시예를 보인 상세 블록도이다. 먼저 역다중화기(7200)는 등화된 데이터 중 시그널링 정보 영역의 데이터에 대해서, 송신측의 시그널링 부호기의 각 가지(branch)에 해당하는 심볼을 구분하여 각각의 버퍼(7201,7401)로 출력한다.
각 버퍼(7201,7401)는 시그널링 정보 영역에 해당하는 입력 데이터를 저장하여 터보 복호 과정이 진행되는 동안 반복적으로 역다중화기(7202,7402)로 출력한다.
일 실시예로, 송신측의 시그널링 부호기에서 이븐 부호기(573)의 출력 데이터는 0,2,..10번(짝수번, even number) 트렐리스 부호기에, 오드 부호기의 출력 데이터는 1,3,…,11번(홀수번, odd number) 트렐리스 부호기에 입력되도록 처리하였다고 하자. 이때 상기 역다중화기(7202)는 버퍼(7201)의 출력 데이터를 짝수번 트렐리스 부호기에 해당하는 트렐리스 복호기(TCM decoder)로 출력한다. 또한 상기 역다중화기(7202)는 블록 디인터리버(7507)에서 피드백되는 데이터도 짝수번 트렐리스 부호기의 동일한 트렐리스 복호기(즉, TCM decoder)로 출력한다.
이때 트렐리스 복호기의 출력은 소프트 판정 값에 로그를 취한 LLR(Log Likelihood Ratio) 값을 사용한다. 상기 LLR은 입력 비트가 1일 확률값과 0일 확률값의 비율에 대한 로그값을 의미한다. 여기서, 상기 LLR 의 초기 값은 0으로 설정된다(The initial value of LLR is set to zero). 상기 LLR 값은 송신측의 시그널링 부호기의 이븐 콤포넌트 부호기에 해당하는 이븐 콤포넌트 복호기로 전달된다. 상기 이븐 콤포넌트 복호기의 입/출력도 역시 LLR 값을 사용한다. 이 경우, 하나의 짝수번 트렐리스 복호기(즉, TCM decoder)는 하나의 이븐 콤포넌트 복호기(even component decoder)와 연동된다. 그러므로, 이븐 콤포넌트 부호기와 짝수번(even number) 트렐리스 부호기를 연결된 하나의 부호기로 보고 이에 대응하여 짝수번 트렐리스 복호기(즉, TCM decoder)와 이븐 콤포넌트 복호기(even component decoder)를 하나의 이펙티브 콤포넌트 복호기(single effective component decoder)로 구성할 수 있다. 하나의 복호기로 구성할 경우, state의 수가 늘어나 복잡도가 증가하지만 복호 성능 또한 향상될 것이다.
각 짝수부 복호기들(7300~7305)의 출력은 순차적으로 다중화기(7306)로 전달되고, 이 출력은 다시 블록 인터리버(7307)로 전달된다. 상기 블록 인터리버(7307)는 송신측의 시그널링 부호기에서 사용된 블록 인터리버와 동일한 형태를 가진다.
상기 블록 인터리버(7307)에서 블록 인터리빙된 LLR 값은 역다중화기(7402)로 피드백되고, 상기 역다중화기(7402)는 상기 LLR 값을 6개의 트렐리스 복호기(즉, TCM decoder) 중 해당 트렐리스 복호기(즉, TCM decoder)로 출력한다. 동시에 상기 역다중화기(7402)는 버퍼(7401)에서 출력되는 데이터도 상기 트렐리스 복호기로 출력한다. 예를 들어, 블록 인터리버(7507)에서 피드백되는 LLR 값이 첫번째 복호기(7500)의 LLR 값이라면, 상기 역다중화기(7402)는 피드백되는 LLR 값과 버퍼(7401)의 출력 데이터를 첫번째 복호기(7500)의 트렐리스 복호기로 출력한다.
이러한 규칙은 역다중화기(7202)에서도 동일하게 적용된다. 그리고, 홀수번 트렐리스 복호기 및 오드 콤포넌트 복호기(odd component decoder)는 짝수부와 동일한 논리로 진행되며, 마찬가지로 홀수번 트렐리스 복호기 및 오드 콤포넌트 복호기(odd component decoder)를 하나의 이펙티브 콤포넌트 복호기(single effective component decoder)로 구현할 수 있다.
각 홀수부 복호기들(7500~7505)의 출력은 순차적으로 다중화기(7506)로 전달되고, 이 출력은 다시 블록 디인터리버(7507)로 전달된다. 상기 블록 디인터리버(7507)는 블록 인터리버(7307)의 역변환이다. 상기 블록 디인터리버(7507)에서 블록 디인터리빙된 LLR 값은 역다중화기(7202)로 입력되어 회귀적인 터보 복호가 이루어지게 된다.
회귀적인 터보 복호가 일정 수준으로 반복 수행된 후, 그 결과는 디랜더마이저(7112)로 출력된다.
이때 상기 회귀적 터보 복호 과정에서 이븐 및 오드 콤포넌트 복호기는 해당 부호기의 트렐리스 다이어그램 정보를 갖고 있어야 한다. 도 41의 (a)와 (b)에서 보인 부호기의 경우, 각각 5개의 메모리(D1~D5)를 가지므로, 32(즉, 25)개의 스테이트를 갖는다. 하지만, 모든 시그널링 정보 영역의 시작 스테이트가 일정할 경우 도달할 수 있는 스테이트는 전체 32개 스테이트 중 일부로 한정 될 수 있다. 즉, 이펙티브 콤포넌트 부호기의 시작 스테이트가 특정 상태로 제한되면, 상기 이펙티브 콤포넌트 부호기는 32 스테이트보다 작은 개수의 스테이트를 갖는다.
일례로 하나의 데이터 그룹 내 시그널링 정보 영역의 시작에서 회귀적 터보 부호기(즉, PCCC 부호기)의 이븐/오드 콤포넌트 부호기들의 모든 메모리가 0이 되도록 설정하고, 시그널링 정보 영역이 제1 기지 데이터 열의 바로 뒤에 위치하므로 상기 제1 기지 데이터 열의 끝에서 12개의 트렐리스 부호기의 모든 메모리가 모두 0이 되도록 기지 데이터 열을 설계한다. 그러면, 시그널링 정보 영역에서 이펙티브 콤포넌트 부호기의 각 메모리들은 언제나 00000 스테이트에서 시작된다. 즉, 이펙티브 콤포넌트 부호기의 모든 메모리들은 시그널링 정보 영역의 시작에서 0이 된다. 이와 같이 시그널링 정보 영역에서 이펙티브 콤포넌트 부호기들의 모든 메모리들이 00000 스테이트에서 시작하면, 시그널링 정보 영역의 데이터가 랜덤하더라도 32개의 스테이트 중 특정 스테이트만 사용되어 부호화가 이루어진다.
상기 시그널링 정보 영역(area)은 데이터 그룹 내 M/H 블록 B4의 첫 번째 세그먼트부터 두 번째 세그먼트의 일부까지이다. 즉, 본 발명에서는 각 데이터 그룹의 M/H 블록 B4의 276(=207+69) 바이트가 시그널링 정보를 삽입하기 위한 영역으로 할당된다. 다시 말해, 상기 시그널링 정보 영역은 M/H 블록 B4의 첫 번째 세그먼트인 207 바이트와 두 번째 세그먼트의 처음 69 바이트로 구성된다. 그리고, 제1 기지 데이터 열(즉, 제1 트레이닝 시퀀스)는 M/H 블록 B3의 마지막 2 세그먼트에 삽입되고, 제2 기지 데이터 열(즉, 제2 트레이닝 시퀀스)는 M/H 블록 B4의 두 번째와 세 번째 세그먼트에 삽입된다. 이때 상기 제2 기지 데이터 열은 시그널링 정보 영역 다음에 위치한다. 제3 내지 제6 기지 데이터 열(즉, 제3 내지 제6 트레이닝 시퀀스)는 M/H 블록 B4,B5,B6,B7의 마지막 2 세그먼트에 각각 삽입된다.
도 41의 (a)는 이븐 콤포넌트 부호기에 트렐리스 부호기가 시리얼로 연접된 모습의 일 예를 보이고 있다. 실제로 상기 이븐 콤포넌트 부호기와 트렐리스 부호기 사이에 다수의 블록이 존재하지만, 수신 시스템에서는 두 블록이 연접된 것으로 간주하여 복호를 수행하게 된다. 즉, 트렐리스 부호기는 이븐 콤포넌트 부호기에서 출력되는 상위 비트 X2는 프리코딩시켜 최상위 출력 비트 Z2로 출력하고, 하위 비트 X1는 트렐리스 부호화하여 두 개의 출력 비트 Z1, Z0으로 출력한다.
도 41의 (b)는 오드 콤포넌트 부호기에 트렐리스 부호기가 시리얼로 연접된 모습의 일 예를 보이고 있다.
실제로 상기 오드 콤포넌트 부호기와 트렐리스 부호기 사이에 다수의 블록이 존재하지만, 수신 시스템에서는 두 블록이 연접된 것으로 간주하여 복호를 수행하게 된다. 마찬가지로, 트렐리스 부호기는 오드 콤포넌트 부호기에서 출력되는 상위 비트 X2는 프리코딩시켜 최상위 출력 비트 Z2로 출력하고, 하위 비트 X1는 트렐리스 부호화하여 두 개의 출력 비트 Z1, Z0으로 출력한다.
도 42은 이븐 콤포넌트 복호기에 대해 시작 스테이트가 00000일 때 도달가능 한 스테이트를 포함한 트렐리스 다이어그램이다. 도 43는 오드 콤포넌트 복호기에 대해 시작 스테이트가 00000일 때 도달가능 한 스테이트를 포함한 트렐리스 다이어그램이다.
예를 들어, 도 41의 (a)와 같이 이븐 콤포넌트 부호기와 트렐리스 부호기를 하나의 부호기(즉, 하나의 이펙티브 콤포넌트 부호기)로 간주할 경우, 도 42와 같이 32개 중 16개의 스테이트만 유효하다. 또한, 도 41의 (b)와 같이 오드 콤포넌트 부호기와 트렐리스 부호기를 하나의 부호기(즉, 하나의 이펙티브 콤포넌트 부호기)로 간주할 경우, 도 43에서와 같이 8개의 스테이트만 유효하다.
이와 같이 콤포넌트 부호기와 트렐리스 부호기를 하나로 이펙티브 콤포넌트 부호기로 간주하여 부호화하는 경우, 32개의 스테이트 중 몇 개의 스테이트를 사용하여 부호화할지는 콤포넌트 부호기의 구조에 따라 달라진다. 이때, 부호화에 이용될 스테이트들은 어떤 스테이트에서 시작하는냐에 따라 달라진다.
예를 들어, 도 41의 (b)와 같이 오드 콤포넌트 부호기와 트렐리스 부호기를 하나의 이펙티브 콤포넌트 부호기로 간주한다면, 부호화에 사용될 스테이트 개수는 8개가 된다. 그리고, 시그널링 정보 영역에서 도 41의 (b)의 이펙티브 콤포넌트 부호기의 메모리들은 언제나 00000 스테이트에서 시작되도록 설계되었다면, 상기 8개의 스테이트는 00000,00111,01010,01101,10001,10110,11011,11100가 된다.
이와 같이 송신 시스템에서 시그널링 정보 영역의 데이터를 부호화할 때 일부 스테이트만 이용되므로, 시그널링 복호기(1306)의 회귀적 터보 복호기(7111)에서는 유효한 스테이트만 사용하여 터보 복호를 수행할 수 있으며, 이로 인해 회귀적 터보 복호기(7111)의 복잡도를 줄일 수 있다.
한편, 상기 디랜더마이저(7112)는 회귀적인 터보 복호가 수행되어 입력된 데이터를 디랜더마이징하여 역다중화기(7113)로 출력하고, 상기 역다중화기(7113)는 디랜더마이징된 데이터로부터 18 바이트의 TPC 데이터와 51 바이트의 FIC 데이터를 구분한다.
이 중 TPC 데이터는 GF(256)의 RS(18, 10)에 대응하는 RS 복호기(7114)로 출력된다. 상기 RS 복호기(7114)는 회귀적 터보 복호기(7111)로부터 하드 판정값을 입력받아 일반적인 RS 복호를 수행할 수도 있고, 소프트 판정값을 입력받아 이레이저 복호(erasure decoding)을 수행할 수도 있다. 상기 RS 복호기(7114)에서 에러 정정된 TPC 데이터 즉, 전송 파라미터 정보는 Operation Controller(1307)로 출력된다. 이때 RS 복호기(7114)는 판정 결과를 operation controller(1307)에 함께 전달하여 전송 파라미터의 오판으로 인해 발생할 수 있는 동작 이상을 방지할 수 있도록 한다.
또한 상기 TPC 데이터의 일부 정보는 각 그룹에 반복되어 전송되므로 이러한 특징을 이용하여 복호 성능을 향상 시킬 수 있다. 예를 들어, SCCC나 RS와 같은 FEC 모드 정보의 경우, 하나의 M/H frame에서 뒤쪽 세 개의 sub frame에는 다음 M/H frame에 대한 정보가 반복되어 전송되므로, 세 sub frame 내에서 한 번만 복호에 성공해도 다음 M/H frame의 수신에 문제가 없다.
상기 역다중화기(7113)에서 구분된 FIC 데이터는 (TNoG x 51) 블록 디인터리버(7115)로 출력된다. 상기 블록 디인터리버(7115)는 송신측의 시그널링 부호기의 (TNoG x 51) 블록 인터리버의 역변환이다.
일 예로, 송신측의 (TNoG x 51) 블록 인터리버는 가변 길이 블록 인터리버이며, 각 sub frame 내 FIC 데이터를 TNoG (column) x 51 (row) 블록 단위로 인터리빙한다. 여기서 상기 TNoG는 하나의 M/H frame 내 하나의 sub frame에 할당되는 전체 데이터 그룹의 개수이다.
상기 블록 디인터리버(7115)에서 블록 디인터리빙된 FIC 데이터는 GF(256)의 RS(51,37)에 대응하는 RS 복호기(7116)로 입력된다. 이 역시 TPC 데이터의 RS 복호기(7114)와 마찬가지로 하드 판정값 또는 소프트 판정값을 모두 이용할 수 있으며, RS 복호기(7116)에서 에러 정정된 FIC 데이터는 FIC 처리기(1308)로 출력된다.
한편 상기 블록 디인터리버(7115)에서 필요한 TNoG 값은 상기 RS 복호기(7114)에서 출력되는 TPC 데이터로부터 획득할 수 있다. 이를 위해 상기 블록 디인터리버(7115)는 제어기를 포함한다.
그러나 하나의 M/H frame에서 뒤쪽 세 개의 sub frame에는 다음 M/H frame에 대한 TNoG를 전송하므로, TPC 데이터 복호를 통해 현재 sub frame의 TNoG에 대한 정보를 얻지 못할 수도 있다. 예를 들어 수신기가 세 번째 sub frame(sub-frame #2)에서 켜져서 채널 정보를 얻기 위해 FIC 복호를 시작할 경우, TPC 내의 TNoG를 이용해 FIC 블록 디인터리빙을 수행한다면 다음 M/H frame이 되어서야 FIC 데이터를 복호할 수 있게 된다.
따라서 본 발명은 RS 복호된 TPC 데이터를 이용하지 않고도 TNoG를 획득하여 FIC 데이터를 복호하는 방법을 제안한다.
도 44은 본 발명에 따른 TNoG 추출 과정의 구체적인 실시예를 보이고 있다.
본 발명에 따른 TNoG 획득 과정은 시그널링 복호기(1306)에서 수행될 수도 있고, 오퍼레이션 제어기(1307)에서 수행될 수도 있다. 본 발명은 시그널링 복호기(1306)에서 TNoG를 획득하는 것을 일 실시예로 설명한다. 특히 본 발명은 시그널링 복호기(1306) 내 블록 디인터리버(7115)에 제어기를 구비하고, 상기 제어기에서 TNoG를 획득하는 것을 일 실시예로 한다. 이는 하나의 실시예이며, 상기 제어기는 상기 블록 디인터리버(7115)의 외부에 구성될 수도 있다.
즉, FIC 복호를 시작하라는 명령이 입력되면, 상기 시그널링 복호기(1306)는 다음 sub frame의 시작을 찾는다. 예를 들어, 도 44의 (a)에서와 같이 하나의 M/H frame 내 n-1번째 sub frame의 중간에서 FIC 복호를 시작하라는 명령이 입력되었다고 가정하자. 이 경우 n번째 sub frame의 시작을 찾는다.
즉, 상기 FIC 복호를 시작하라는 명령이 입력되면, sub frame의 시작을 추출하기 위하여, 해당 슬롯에 데이터 그룹이 존재하는지를 확인한다. 일 예로, 하나의 sub frame에는 16개의 슬롯이 할당된다. 이때 상기 데이터 그룹에는 기지 데이터가 존재하기 때문에, 미리 알고 있는 기지 데이터의 패턴과 수신 데이터와의 상관(correlation)을 취하면 도 44의 (b)에서와 같이 해당 슬롯에 데이터 그룹이 존재하는지 알 수 있다. 다른 실시예로, 해당 슬롯에 데이터 그룹이 존재하는지에 대한 정보는 상기 오퍼레이션 제어기(1307)에서 제공받을 수도 있다.
이때 해당 슬롯에 데이터 그룹이 존재한다고 확인되면, 상기 시그널링 복호기(1306)는 상기 데이터 그룹 내 시그널린 정보 영역의 데이터에 대해 터보 복호, 시그널링 디랜더마이징, 및 역다중화를 수행하여 TPC 데이터를 분리하고, 분리된 TPC 데이터에 대한 RS 복호를 수행한다. 그리고 RS 복호된 TPC 데이터로부터 도 44의 (d)와 같이 슬롯 번호(slot number)를 획득한다.
상기 슬롯 번호는 매 sub frame의 시작 슬롯에서 0이 되고, 해당 sub frame의 마지막 슬롯에서 15의 값을 갖는다. 그러므로 상기 슬롯 번호를 이용하면, sub frame의 시작을 알 수 있다.
즉, 상기 TPC 데이터로부터 0의 값을 갖는 슬롯 번호가 검출될 때까지 상기 시그널링 복호 과정을 반복 수행한다. 도 44의 (a)와 같이 sub frame 내 데이터 그룹이 할당되어 전송되고, n-1번째 sub frame의 중간에서 FIC 복호 시작 명령이 입력되었다면, 상기 시그널링 복호 과정을 통해 n번째 sub frame의 시작이 검출된다. 그리고 sub frame의 시작이 검출되면 그룹 카운터 값을 0으로 리셋한다.
상기 과정을 통해 n번째 sub frame의 시작이 검출되면, n번째 sub frame에서 데이터 그룹을 검출한다.
데이터 그룹의 존재 유무는 상기와 같이 기지 데이터 패턴과 수신 신호와의 상관을 이용하여 알 수도 있고, 오퍼레이션 제어기(1307)로부터 제공받을 수도 있다.
만일 상기 데이터 그룹이 검출되면 도 44의 (f)와 같이 그룹 카운터 값을 1 증가시킨다. 그리고 상기 터보 복호기(7111)와 디랜더마이저(7112)를 이용하여 상기 데이터 그룹 내 시그널린 정보 영역의 데이터에 대해 터보 복호와 디랜더마이징을 수행한다. 이어 상기 역다중화기(7113)에서 디랜더마이징된 데이터에 대해 역다중화를 수행하여 TPC 데이터와 FIC 데이터를 분리하고, RS 복호기(7114)를 이용하여 분리된 TPC 데이터에 대한 RS 복호를 수행한다. 상기 RS 복호된 TPC 데이터로부터 슬롯 번호(slot number)를 획득한다. 또한 분리된 FIC 데이터(즉, 51 바이트)는 블록 디인터리버(7115)의 버퍼(도시되지 않음)에 저장한다.
상기 sub frame에서 데이터 그룹이 검출될 때마다 상기 단계들을 수행하여, 그룹 카운터 값을 1씩 증가시키고 역다중화기(7113)에서 분리된 FIC 데이터를 블록 디인터리버(7115)의 버퍼에 저장한다. 이러한 과정은 sub frame의 끝이 검출될 때까지 수행된다. 본 발명은 일 실시예로, 도 44의 (d)와 같은 슬롯 번호를 이용하여 sub frame의 끝을 검출한다. 본 발명은 다른 실시예로, 도 44의 (e)와 같은 필드 동기 카운터 값을 이용하여 sub frame의 끝을 검출한다.
상기 sub frame의 끝이 확인되면, 상기 그룹 카운터 값을 이용하여 TNoG를 계산한다.
그리고 상기 블록 디인터리버(7115)의 버퍼에 저장된 FIC 데이터에 상기 TNoG 값을 적용하여 블록 디인터리빙을 수행한다. 상기 블록 디인터리빙된 FIC 데이터는 RS 복호기(7116)로 입력되어 RS 복호된다. 도 44의 (g)와 (h)를 예로 들면, n번째 sub frame 구간 동안에는 n번째 sub frame의 각 데이터 그룹에 포함된 FIC 데이터에 대해 터보 복호 및 디랜더마이징을 수행하여 블록 디인터리버(7115)의 버퍼에 저장한다. 그리고 n+1번째 sub frame 구간 동안에는 상기 블록 디인터리버(7115)의 버퍼에 저장된 n번째 sub frame의 FIC 데이터에 대해 상기 단계에서 계산된 TNoG를 적용하여 블록 디인터리빙을 수행하고, 블록 디인터리빙된 FIC 데이터에 대해 RS 복호를 수행한다.
한편, 본 발명에 따른 sub frame의 끝은 도 44의 (d)와 같은 슬롯 번호를 이용하여 검출할 수도 있고, 도 44의 (e)와 같은 필드 동기 카운터 값을 이용하여 검출할 수도 있다.
즉, 상기 단계들을 수행하여, RS 복호된 TPC 데이터로부터 획득한 슬롯 번호가 0이 되면, 새로운 sub frame이 시작된 것이므로, 슬롯 번호가 0이 되면 이전 sub frame이 끝났다고 판단한다. 이때는 이미 그룹 카운터 값을 1 증가시킨 경우이므로, 상기 그룹 카운터 값에서 1을 뺀 값이 TNoG 값이 된다.
그런데, 다음 sub frame이 새로운 M/H frame의 첫번째 sub frame이고 PRC로 인해 다음 M/H frame에 데이터 그룹이 존재하지 않을 수도 있다. 이와 같은 상황에서 상기 슬롯 번호를 이용하여 sub frame의 끝을 검출하게 되면, 데이터 그룹이 존재하는 M/H frame이 나타날 때까지 TNoG를 알 수 없어 FIC 복호 시간이 지연될 수 있다. 이 경우에는 새로운 슬롯 번호를 이용해 sub frame의 시작을 판단하고, 필드 동기의 수를 카운트하여 sub frame의 끝을 알 수도 있다. 하나의 sub frame에는 8개의 필드 동기가 존재하며 필드 동기는 데이터 그룹 존재 유무와 상관없이 전송되기 때문이다. 예를 들어, 필드 동기 카운터 값이 8이 되면, 그 sub frame의 끝이라고 판단한다. 이 경우 그룹 카운터 값이 TNoG 값이 된다. 상기 필드 동기도 상관을 통해 검출할 수 있다.
지금까지 설명한 본 발명은 상술한 실시예에 한정되지 않으며, 첨부된 청구범위에서 알 수 있는 바와 같이 본 발명이 속한 분야의 통상의 지식을 가지 자에 의해 변형이 가능하고 이러한 변형은 본 발명의 범위에 속한다.

Claims (12)

  1. 방송 송신기에서 방송 신호를 전송하는 방법에 있어서,
    고정된 개수의 모바일(mobile) 데이터 패킷(packet), 제 1 가변 개수의 모바일 데이터 패킷과 제 2 가변 개수의 메인(main) 데이터 패킷을 다중화하는 단계;
    상기 모바일 데이터 패킷에 포함된 모바일 데이터와 상기 메인 데이터 패킷에 포함된 메인 데이터를 인터리빙(interleaving)하는 단계;
    상기 인터리빙된 모바일 데이터를 포함하는 데이터 그룹과 상기 인터리빙된 메인 데이터를 슬롯(slot) 동안 전송하는 단계;를 포함하고,
    여기서, 상기 데이터 그룹은 다수의 영역을 포함하고, 다수의 영역은 다수의 데이터 블록(block)을 포함하고, 각각의 데이터 블록은 다수의 데이터 세그먼트(segment)를 포함하며, 상기 데이터 그룹에 포함되는 제 1 영역과 제 2 영역은 프라이머리 앙상블(primary ensemble), 기지데이터, 모바일 데이터의 시그널링을 위한 시그널링 바이트(signaling bytes)를 포함하고, 제 3 영역, 제 4 영역 및 제 5 영역은 세컨더리 앙상블(secondary ensemble)을 포함하고, 상기 제 5 영역은 제 1 가변 개수의 모바일 데이터 패킷을 포함하는 것을 특징으로 하는 방송 송신기에서 방송 신호를 전송하는 방법.
  2. 제 1 항에 있어서,
    상기 제 1 가변 개수와 제 2 가변 개수의 합은 고정되어 있으며, 상기 제 1 가변 개수는 38까지 확장 가능한 것을 특징으로 하는 방송 송신기에서 방송 신호를 전송하는 방법.
  3. 제 1 항에 있어서,
    상기 제 1 가변 개수는 11, 20, 29, 38 중 어느 하나인 것을 특징으로 하는 방송 송신기에서 방송 신호를 전송하는 방법.
  4. 제 1 항에 있어서,
    제 1 가변 개수가 38인 경우, 상기 데이터 그룹 내의 RS 패러티(Reed Solomon parity)와 MPEG 헤더(MPEG header)를 위한 영역을 모바일 데이터를 위한 영역으로 할당하는 것을 특징으로 하는 방송 송신기에서 방송 신호를 전송하는 방법.
  5. 제 1 항에 있어서,
    상기 프라이머리 앙상블과 세컨더리 앙상블은 서로 다른 FEC(Forward Error Correction) 부호화율로 부호화된 모바일 데이터의 집합인 것으로 특징으로 하는 방송 송신기에서 방송 신호를 전송하는 방법.
  6. 제 1 항에 있어서,
    상기 제 3 영역, 제 4 영역 및 제 5 영역은 기지데이터 열을 포함하는 것을 특징으로 하고, 제 3 영역과 제 4 영역에 포함된 기지데이터 열은 상기 데이터 그룹에 인접하는 데이터 그룹의 제 5 영역에 포함된 기지데이터 열과 동일한 세그먼트에서 연결되는 것을 특징으로 하는 방송 송신기에서 방송 신호를 전송하는 방법.
  7. 고정된 개수의 모바일(mobile) 데이터 패킷(packet), 제 1 가변 개수의 모바일 데이터 패킷과 제 2 가변 개수의 메인(main) 데이터 패킷을 다중화하는 다중화기;
    상기 모바일 데이터 패킷에 포함된 모바일 데이터와 상기 메인 데이터 패킷에 포함된 메인 데이터를 인터리빙(interleaving)하는 인터리버;
    상기 인터리빙된 모바일 데이터를 포함하는 데이터 그룹과 상기 인터리빙된 메인 데이터를 슬롯(slot) 동안 전송하는 전송부;를 포함하고,
    여기서, 상기 데이터 그룹은 다수의 영역을 포함하고, 다수의 영역은 다수의 데이터 블록(block)을 포함하고, 각각의 데이터 블록은 다수의 데이터 세그먼트(segment)를 포함하며, 상기 데이터 그룹에 포함되는 제 1 영역과 제 2 영역은 프라이머리 앙상블(primary ensemble), 기지데이터, 모바일 데이터의 시그널링을 위한 시그널링 바이트(signaling bytes)를 포함하고, 제 3 영역, 제 4 영역 및 제 5 영역은 세컨더리 앙상블(secondary ensemble)을 포함하고, 상기 제 5 영역은 제 1 가변 개수의 모바일 데이터 패킷을 포함하는 것을 특징으로 하는 방송 송신기.
  8. 제 7 항에 있어서,
    상기 제 1 가변 개수와 제 2 가변 개수의 합은 고정되어 있으며, 상기 제 1 가변 개수는 38까지 확장 가능한 것을 특징으로 하는 방송 송신기.
  9. 제 7 항에 있어서,
    상기 제 1 가변 개수는 11, 20, 29, 38 중 어느 하나인 것을 특징으로 하는 방송 송신기.
  10. 제 7 항에 있어서,
    제 1 가변 개수가 38인 경우, 상기 데이터 그룹 내의 RS 패러티(Reed Solomon parity)와 MPEG 헤더(MPEG header)를 위한 영역을 모바일 데이터를 위한 영역으로 할당하는 것을 특징으로 하는 방송 송신기.
  11. 제 7 항에 있어서,
    상기 프라이머리 앙상블과 세컨더리 앙상블은 서로 다른 FEC(Forward Error Correction) 부호화율로 부호화된 모바일 데이터의 집합인 것으로 특징으로 하는 방송 송신기.
  12. 제 7 항에 있어서,
    상기 제 3 영역, 제 4 영역 및 제 5 영역은 기지데이터 열을 포함하는 것을 특징으로 하고, 제 3 영역과 제 4 영역에 포함된 기지데이터 열은 상기 데이터 그룹에 인접하는 데이터 그룹의 제 5 영역에 포함된 기지데이터 열과 동일한 세그먼트에서 연결되는 것을 특징으로 하는 방송 송신기.
KR1020100064723A 2009-07-10 2010-07-06 디지털 방송 신호 전송 방법 및 송신 시스템 KR20110005645A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US12/831,911 US8385238B2 (en) 2009-07-10 2010-07-07 Transmitting system and method of processing digital broadcast signal in transmitting system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US22447809P 2009-07-10 2009-07-10
US61/224,478 2009-07-10

Publications (1)

Publication Number Publication Date
KR20110005645A true KR20110005645A (ko) 2011-01-18

Family

ID=43612757

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100064723A KR20110005645A (ko) 2009-07-10 2010-07-06 디지털 방송 신호 전송 방법 및 송신 시스템

Country Status (1)

Country Link
KR (1) KR20110005645A (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012138180A2 (ko) * 2011-04-08 2012-10-11 삼성전자 주식회사 오디오 패킷을 포함하는 전송 스트림을 전송하는 디지털 방송 송신기, 이를 수신하는 디지털 방송 수신기 및 그 방법들
US9548765B2 (en) 2013-06-25 2017-01-17 Samsung Electronics Co., Ltd. Transmitting apparatus and receiving apparatus and control method thereof
KR20200095092A (ko) * 2019-01-31 2020-08-10 한국전자통신연구원 방송 신호 수신 및 재송신 장치 및 방법

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012138180A2 (ko) * 2011-04-08 2012-10-11 삼성전자 주식회사 오디오 패킷을 포함하는 전송 스트림을 전송하는 디지털 방송 송신기, 이를 수신하는 디지털 방송 수신기 및 그 방법들
WO2012138180A3 (ko) * 2011-04-08 2013-01-10 삼성전자 주식회사 오디오 패킷을 포함하는 전송 스트림을 전송하는 디지털 방송 송신기, 이를 수신하는 디지털 방송 수신기 및 그 방법들
US9548765B2 (en) 2013-06-25 2017-01-17 Samsung Electronics Co., Ltd. Transmitting apparatus and receiving apparatus and control method thereof
KR20200095092A (ko) * 2019-01-31 2020-08-10 한국전자통신연구원 방송 신호 수신 및 재송신 장치 및 방법

Similar Documents

Publication Publication Date Title
US11223850B2 (en) Receiving system and method for processing digital broadcast signal in the receiving system
US11652572B2 (en) Transmitting system and method of processing digital broadcast signal in transmitting system, receiving system and method of receiving digital broadcast signal in receiving system
KR101285888B1 (ko) 디지털 방송 시스템 및 데이터 처리 방법
US8438449B2 (en) Method and apparatus for transmitting broadcast signal in transmitter
US8385238B2 (en) Transmitting system and method of processing digital broadcast signal in transmitting system
US20110085487A1 (en) Transmitting system and method of processing digital broadcast signal in transmitting system, receiving system and method of receiving digital boradcast signal in receiving system
KR20110005645A (ko) 디지털 방송 신호 전송 방법 및 송신 시스템
KR101725248B1 (ko) 송/수신 시스템 및 방송 신호 처리 방법
KR101617266B1 (ko) 송/수신 시스템 및 방송 신호 처리 방법
KR101709513B1 (ko) 송/수신 시스템 및 방송 신호 처리 방법
KR101520714B1 (ko) 송/수신 시스템 및 방송 신호 처리 방법
KR20110069926A (ko) 송/수신 시스템 및 방송 신호 처리 방법
KR20110072624A (ko) 송/수신 시스템 및 방송 신호 처리 방법

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination