KR20080092643A - 디지털 방송 시스템 및 데이터 처리 방법 - Google Patents

디지털 방송 시스템 및 데이터 처리 방법 Download PDF

Info

Publication number
KR20080092643A
KR20080092643A KR1020070036234A KR20070036234A KR20080092643A KR 20080092643 A KR20080092643 A KR 20080092643A KR 1020070036234 A KR1020070036234 A KR 1020070036234A KR 20070036234 A KR20070036234 A KR 20070036234A KR 20080092643 A KR20080092643 A KR 20080092643A
Authority
KR
South Korea
Prior art keywords
data
time
information
service data
broadcast
Prior art date
Application number
KR1020070036234A
Other languages
English (en)
Other versions
KR101351026B1 (ko
Inventor
송재형
최인환
곽국연
김병길
송원규
김진필
김진우
이형곤
김종문
Original Assignee
엘지전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority to KR1020070036234A priority Critical patent/KR101351026B1/ko
Application filed by 엘지전자 주식회사 filed Critical 엘지전자 주식회사
Priority to CA2683762A priority patent/CA2683762C/en
Priority to MX2009011085A priority patent/MX2009011085A/es
Priority to CN200880018229A priority patent/CN101682725A/zh
Priority to PCT/KR2008/001975 priority patent/WO2008127006A1/en
Priority to US12/100,573 priority patent/US7934243B2/en
Publication of KR20080092643A publication Critical patent/KR20080092643A/ko
Priority to US13/051,743 priority patent/US8443412B2/en
Application granted granted Critical
Publication of KR101351026B1 publication Critical patent/KR101351026B1/ko
Priority to US14/711,531 priority patent/USRE46676E1/en
Priority to US15/833,841 priority patent/USRE47958E1/en
Priority to US16/852,176 priority patent/USRE48776E1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H60/00Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
    • H04H60/35Arrangements for identifying or recognising characteristics with a direct linkage to broadcast information or to broadcast space-time, e.g. for identifying broadcast stations or for identifying users
    • H04H60/38Arrangements for identifying or recognising characteristics with a direct linkage to broadcast information or to broadcast space-time, e.g. for identifying broadcast stations or for identifying users for identifying broadcast time or space
    • H04H60/40Arrangements for identifying or recognising characteristics with a direct linkage to broadcast information or to broadcast space-time, e.g. for identifying broadcast stations or for identifying users for identifying broadcast time or space for identifying broadcast time
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/08Systems for the simultaneous or sequential transmission of more than one television signal, e.g. additional information signals, the signals occupying wholly or partially the same frequency band, e.g. by time division
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

본 발명은 모바일 서비스 데이터를 송신할 때 에러에 강한 디지털 전송 시스템 및 데이터 처리 방법에 관한 것이다. 이를 위해 본 발명은 모바일 서비스 데이터에 대해 추가의 부호화를 수행하여 전송한다. 이렇게 함으로써, 상기 모바일 서비스 데이터에 강건성을 부여하면서 빠른 채널 변화에 강력하게 대응할 수 있게 한다. 또한, 타임 존 식별자 정보를 방송 신호에 포함시켜 송수신하여 이동 수신에 따라 타임 존이 달라질 경우 발생하는 시간 오류에 대응할 수 있다.
Figure P1020070036234
디지털, 방송, VSB, 타이밍, 에러, 모바일, PSI, PSIP, 프로그램, STT

Description

디지털 방송 시스템 및 데이터 처리 방법{Digital broadcasting system and data processing method}
도 1은 디지털 전송 시스템의 일 실시예를 보인 개략도
도 2는 서비스 다중화기의 일 실시예를 보인 상세 블록도
도 3은 송신기의 구성 블록도
도 4는 도 3의 전처리기의 일 예를 보인 구성 블록도
도 5는 RS 프레임 부호화 과정의 일 예를 보인 도면
도 6a, 도 6b는 본 발명에 따른 디지털 방송 송신 시스템에서 데이터 디인터리버 전후단의 데이터 구성 예를 보인 도면
도 7은 RS 프레임의 분할 과정을 도시한 도면
도 8은 패킷 다중화된 예를 보인 도면
도 9는 블록 처리기의 일 예를 보인 상세 블록도
도 10은 심볼 부호기의 일 예를 보인 상세 블록도
도 11은 심볼 인터리버의 일 예를 보인 도면
도 12a는 블록 처리기의 일 예를 보인 상세 블록도
도 12b는 블록 처리기의 다른 예를 보인 상세 블록도
도 13는 심볼-바이트 변환기의 출력을 블록 내에서 일정 기준에 따라 배열한 예시도.
도 14는 트렐리스 부호화부의 예를 보인 상세 블록도
도 15a는 록 처리기와 트렐리스 부호화부가 연접(concatenation)된 모습을 도시한 예시도
도 15b는 블록 처리기와 트렐리스 부호화부의 다른 예시도
도 16은 1/N 부호율로 부호화를 수행하는 블록 처리기의 일 실시예를 보인 구성 블록도
도 17은 블록 처리기의 다른 실시예에를 보인 상세 블록도
도 18은 그룹 포맷터에서 전송 파라미터를 입력받아 데이터 그룹 내 바디 영역에 삽입하기 위한 개략도
도 19는 전송 파라미터를 입력받아 모바일 서비스 데이터와 동일한 과정으로 처리하는 블록 처리기의 일 예를 나타낸 블록도
도 20은 패킷 포맷터에 전송 파라미터를 삽입하기 위하여 패킷 포맷터를 확장한 실시예를 보인 구성 블록도
도 21은 전송 파라미터를 필드 동기 세그먼트 영역에 삽입하기 위해 동기 다중화기를 확장한 실시예를 보인 구성 블록도
도 22는 본 발명에 따른 디지털 방송 수신 시스템의 일 실시예를 보인 구성 블록도
도 23은 RS 프레임 복호기의 에러 정정 복호화 과정의 일 실시예를 순차적으로 보인 도면
도 24는 ATSC 시스템에서 사용될 수 있는 STT을 나타낸 도면
도 25는 방송 수신 시스템이 시간 정보를 얻는 예를 나타낸 도면
도 26은 지역에 따른 시간 정보를 포함하는 방송 신호의 시간 정보를 예시한 도면
도 27은 도 26에서 예시한 시간 정보를 구체적으로 예시한 도면
도 28은 이동 수신이 가능한 방송 수신 시스템이 방송 신호를 수신하는 예를 나타낸 개념도
도 29는 방송 신호로부터 시각 정보를 수신하는 예를 나타낸 흐름도
도 30은 방송 신호로부터 타임 존에 따른 시각 정보를 수신하여 현재 시간을 표출하는 예를 나타낸 도면
도 31은 방송 신호로부터 타임 존에 따른 시간 정보를 수신하여 방송 정보를 표출하는 예를 나타낸 도면
도 32는 방송 수신 시스템의 예를 개시한 도면
도 33은 방송 신호를 수신하는 예를 나타낸 흐름도
본 발명은 디지털 방송 시스템 및 데이터 처리 방법에 관한 것이다.
다양한 방송 콘텐츠가 전달될 수 있는 디지털 방송이 보급되고 있다. 예를 들어, 북미 및 국내에서 디지털 방송은 VSB (Vestigial Sideband) 전송 방식을 표 준으로 채택하였고, 이에 따라 사용자는 다양한 방송 프로그램을 송수신할 수 있게 되었다. 최근에는 이동 수신이 가능한 방송 송수신 시스템이 개발되고 있다. 북미 및 국내에서 디지털 방송 표준으로 채택된 VSB(Vestigial Sideband) 전송 방식은 싱글 캐리어 방식을 사용한다. 방송 수신 시스템은 방송 송신 시스템으로부터 프로그램 시스템 정보 프로토콜(Program and System Information Protocol)으로부터 방송 송수신에 필요한 시스템 정보를 얻는다.
따라서 본 발명은 채널 변화 및 노이즈에 강한 디지털 방송 시스템 및 데이터 처리 방법을 제공함에 있다.
본 발명은 모바일 서비스 데이터에 대해 추가의 부호화를 수행하여 수신 시스템으로 전송함으로써, 수신 시스템의 수신 성능을 향상시키도록 하는 디지털 방송 시스템 및 데이터 처리 방법을 제공함에 있다.
본 발명은 송/수신측의 약속에 의해 알고 있는 기지 데이터를 데이터 영역의 소정 영역에 삽입하여 전송함으로써, 수신 시스템의 수신 성능을 향상시키도록 하는 디지털 방송 시스템 및 데이터 처리 방법을 제공함에 있다.
본 발명의 목적은 이동 수신에 따른 시간 변화에 대응할 수 있는 디지털 방송 시스템 및 데이터 처리 방법을 제공함에 있다.
상기 목적을 달성하기 위하여, 본 발명의 일 실시예에 따른 전송 시스템은 서비스 다중화기와 송신기를 포함할 수 있다. 상기 서비스 다중화기는 모바일 서비 스 데이터와 메인 서비스 데이터를 기 설정된 데이터 율로 다중화하여 송신기로 전송할 수 있다. 상기 송신기는 서비스 다중화기에서 전송되는 모바일 서비스 데이터에 대해 추가의 부호화를 수행하고, 부호화가 수행된 다수개의 모바일 서비스 데이터 패킷을 모아 데이터 그룹을 형성할 수 있다. 상기 송신기는 모바일 서비스 데이터를 포함하는 모바일 서비스 데이터 패킷과 메인 서비스 데이터를 포함하는 메인 서비스 데이터 패킷을 패킷 단위로 다중화하여 수신 시스템으로 전송할 수 있다. 이때 상기 송신기는 데이터 그룹과 메인 서비스 데이터 패킷을 버스트 구조로 다중화할 수 있으며, 상기 버스트는 데이터 그룹이 포함되는 버스트 온 구간과 데이터 그룹이 포함되지 않는 버스트 오프 구간으로 구분할 수 있다.
상기 데이터 그룹은 메인 서비스 데이터의 간섭 정도에 따라 다수개의 영역으로 구분할 수 있다. 상기 메인 서비스 데이터의 간섭이 없는 영역에는 주기적으로 긴 기지 데이터 열을 삽입할 수 있다. 본 발명의 일 실시예에 따른 수신 시스템은 상기 기지 데이터 열을 복조 및 채널 등화에 이용할 수 있다. 상기 수신 시스템은 모바일 서비스 데이터만을 수신하는 경우, 버스트 온 구간에서만 전원을 온하여 모바일 서비스 데이터를 처리할 수 있다.
다른 관점에서 본 실시예는 방송 수신 시스템이 위치한 타임 존 식별자 정보가 설정된 프로그램 테이블 정보를 포함하는 방송 신호를 수신하고, 상기 프로그램 테이블 정보를 파싱하여 기준시와 상기 타임 존 식별자 정보를 얻는다. 그리고, 기준시와 상기 타임 존 식별자 정보로부터 로컬 시간을 얻을 수 있다.
또는 방송 수신 시스템이 위치한 타임 존에서 기준시에 대한 시차 정보가 설 정된 프로그램 테이블 정보를 포함하는 방송 신호를 수신하고, 프로그램 테이블 정보를 파싱하여 상기 기준시와 상기 타임 존의 기준시에 대한 시차 정보를 얻는다. 그리고, 상기 기준시와 상기 타임 존의 기준시에 대한 시차 정보로부터 로컬 시간을 얻을 수 있다.
본 발명의 다른 목적, 특징 및 잇점들은 첨부한 도면을 참조한 실시예들의 상세한 설명을 통해 명백해질 것이다.
이하 상기의 목적을 구체적으로 실현할 수 있는 본 발명의 바람직한 실시예를 첨부한 도면을 참조하여 설명한다. 이때 도면에 도시되고 또 이것에 의해서 설명되는 본 발명의 구성과 작용은 적어도 하나의 실시예로서 설명되는 것이며, 이것에 의해서 본 발명의 기술적 사상과 그 핵심 구성 및 작용이 제한되지는 않는다.
본 발명에서 사용되는 용어의 정의
본 발명에서 사용되는 용어는 본 발명에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어를 선택하였으나, 이는 당분야에 종사하는 기술자의 의도 또는 관례 또는 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 발명에서 사용되는 용어는 단순한 용어의 명칭이 아닌 그 용어가 가지는 의미와 본 발명의 전반에 걸친 내용을 토대로 정의되어야 함을 밝혀두고자 한다.
본 발명에서 사용되는 용어 중 메인 서비스 데이터는 고정형 수신 시스템에서 수신할 수 있는 데이터로서, 오디오/비디오(A/V) 데이터를 포함할 수 있다. 즉, 상기 메인 서비스 데이터에는 HD(High Definition) 또는 SD(Standard Definition)급의 A/V 데이터가 포함될 수 있으며, 데이터 방송을 위한 각종 데이터가 포함될 수도 있다. 그리고 기지(Known) 데이터는 송/수신측의 약속에 의해 미리 알고 있는 데이터이다.
또한 본 발명에서 모바일(mobile) 서비스 데이터는 모바일(Mobile) 서비스 데이터, 퍼데스트리언(Pedestrian) 서비스 데이터, 핸드헬드(Handheld) 서비스 데이터 중 적어도 하나를 포함하며, 설명의 편의를 위해 본 발명에서는 모바일 서비스 데이터라 한다. 이때 상기 모바일 서비스 데이터는 M/P/H(Mobile/Pedestrian/Handheld) 서비스 데이터뿐만 아니라, 이동이나 휴대를 의미하는 서비스 데이터는 어느 것이나 포함될 수 있으며, 따라서 상기 모바일 서비스 데이터는 상기 M/P/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) 데이터가 서비스될 수도 있다.
또한 상기 모바일 서비스 데이터를 이용한 데이터 서비스로는 날씨 서비스, 교통 서비스, 증권 서비스, 시청자 참여 퀴즈 프로그램, 실시간 여론 조사, 대화형 교육 방송, 게임 서비스, 드라마의 줄거리, 등장인물, 배경음악, 촬영장소 등에 대한 정보 제공 서비스, 스포츠의 과거 경기 전적, 선수의 프로필 및 성적에 대한 정보 제공 서비스, 상품 정보 및 이에 대한 주문 등이 가능하도록 하는 서비스별, 매체별, 시간별, 또는 주제별로 프로그램에 대한 정보 제공 서비스 등이 될 수 있으며, 본 발명은 이에 한정하지는 않는다.
본 발명의 전송 시스템은 기존 수신 시스템에서 메인 서비스 데이터를 수신하는데 전혀 영향을 주지 않으면서(backward compatible), 동일한 물리적 채널에 메인 서비스 데이터와 모바일 서비스 데이터를 다중화하여 전송할 수 있도록 한다.
본 발명의 전송 시스템은 모바일 서비스 데이터에 대해 추가적인 부호화를 수행하고, 송/수신측 모두가 미리 알고 있는 데이터 즉, 기지(known) 데이터를 삽입하여 전송할 수 있도록 한다.
이러한 본 발명에 따른 전송 시스템을 사용하면 수신 시스템에서는 모바일 서비스 데이터의 이동 수신이 가능하며, 또한 채널에서 발생하는 각종 왜곡과 노이즈에도 모바일 서비스 데이터의 안정적인 수신이 가능하다.
전송 시스템의 개략적인 설명
도 1은 이러한 본 발명을 적용하기 위한 전송 시스템의 일 실시예를 보인 개 략도로서, 서비스 다중화기(Service Multiplexer)(100)와 송신기(Transmitter)(200)를 포함할 수 있다.
여기서 상기 서비스 다중화기(100)는 각 방송국의 스튜디오에 위치하고, 송신기(200)는 스튜디오로부터 거리가 떨어진 지역(site)에 위치한다. 이때 상기 송신기(200)는 복수개의 서로 다른 지역에 위치할 수도 있다. 그리고 일 실시예로 상기 복수개의 송신기는 동일한 주파수를 공유할 수 있으며, 이 경우 복수개의 송신기는 모두 동일한 신호를 송신한다. 그러면 수신 시스템에서는 채널 등화기가 반사파로 인한 신호 왜곡을 보상하여 원 신호를 복원할 수가 있다. 다른 실시예로, 상기 복수개의 송신기는 동일 채널에 대해 서로 다른 주파수를 가질 수도 있다.
상기 서비스 다중화기와 원격지에 위치한 각 송신기간의 데이터 통신은 여러 가지 방법이 이용될 수 있으며, 일 실시예로 SMPTE-310M(Synchronous Serial Interface for transport of MPEG-2 data)과 같은 인터페이스 규격이 사용될 수도 있다. 상기 SMPTE-310M 인터페이스 규격에서는 서비스 다중화기의 출력 데이터 율이 일정한 데이터 율로 정해져 있다. 예를 들어, 8VSB의 경우 19.39 Mbps로 정해져 있고, 16VSB의 경우 38.78 Mbps로 정해져 있다. 또한 기존 8VSB 방식의 전송 시스템에서는 한 개의 물리적인 채널에 데이터 율이 약 19.39 Mbps인 트랜스포트 스트림(Transport Stream ; TS) 패킷을 전송할 수 있다. 기존 전송 시스템과 역방향 호환성을 가지는 본 발명에 따른 송신기에서도, 상기 모바일 서비스 데이터에 대하여 추가의 부호화를 수행한 후 이를 메인 서비스 데이터와 TS 패킷 형태로 다중화하여 전송하는데, 이때에도 다중화된 TS 패킷의 데이터 율은 약 19.39 Mbps가 된다.
이때 상기 서비스 다중화기(100)는 적어도 한 종류의 모바일 서비스 데이터와 각 모바일 서비스를 위한 PSI(Program Specific Information)/PSIP(Program and System Information Protocol) 테이블 데이터를 입력받아 각각 트랜스포트 스트림(TS) 패킷으로 인캡슐레이션(encapsulation)한다. 또한 상기 서비스 다중화기(100)는 적어도 한 종류의 메인 서비스 데이터와 각 메인 서비스를 위한 PSI/PSIP 테이블 데이터를 입력받아 TS 패킷으로 인캡슐레이션(encapsulation)한다. 이어 상기 TS 패킷들을 기 설정된 다중화 규칙에 따라 다중화하여 송신기(200)로 출력한다.
서비스 다중화기
도 2는 상기 서비스 다중화기의 일 실시예를 보인 상세 블록도로서, 상기 서비스 다중화기의 전반적인 동작을 제어하는 제어기(Controller)(110), 메인 서비스를 위한 PSI/PSIP 발생기(120), 모바일 서비스를 위한 PSI/PSIP 발생기(130), 널 패킷 발생기(140), 모바일 서비스 다중화기(150), 및 트랜스포트 다중화기(160)를 포함할 수 있다.
상기 트랜스포트 다중화기(160)는 메인 서비스 다중화기(161), 및 트랜스포트 스트림(Transport Stream ; TS) 패킷 다중화기(162)를 포함할 수 있다.
도 2를 보면, 적어도 한 종류의 압축 부호화된 메인 서비스 데이터와 상기 메인 서비스를 위해 PSI/PSIP 발생기(120)에서 발생된 PSI/PSIP 테이블 데이터는 트랜스포트 다중화기(160)의 메인 서비스 다중화기(161)로 입력된다. 상기 메인 서비스 다중화기(161)는 입력되는 메인 서비스 데이터와 PSI/PSIP 테이블 데이터를 각각 MPEG-2 TS 패킷 형태로 인캡슐레이션(encapsulation)하고, 이러한 TS 패킷들을 다중화하여 TS 패킷 다중화기(162)로 출력한다. 상기 메인 서비스 다중화기(161)에서 출력되는 데이터 패킷을 설명의 편의를 위해 메인 서비스 데이터 패킷이라 하기로 한다.
또한 적어도 한 종류의 압축 부호화된 모바일 서비스 데이터와 상기 모바일 서비스를 위해 PSI/PSIP 발생기(130)에서 발생된 PSI/PSIP 테이블 데이터는 모바일 서비스 다중화기(150)로 입력된다.
상기 모바일 서비스 다중화기(150)는 입력되는 모바일 서비스 데이터와 PSI/PSIP 테이블 데이터를 각각 MPEG-2 TS 패킷 형태로 인캡슐레이션(encapsulation)하고, 이러한 TS 패킷들을 다중화하여 TS 패킷 다중화기(162)로 출력한다. 상기 모바일 서비스 다중화기(150)에서 출력되는 데이터 패킷을 설명의 편의를 위해 모바일 서비스 데이터 패킷이라 하기로 한다.
이때, 상기 송신기(200)에서 상기 메인 서비스 데이터 패킷과 모바일 서비스 데이터 패킷을 구분하여 처리하기 위해서는 식별 정보가 필요하다. 상기 식별 정보는 송/수신측의 약속에 의해 미리 정해진 값을 이용할 수도 있고, 별도의 데이터로 구성할 수도 있으며, 해당 데이터 패킷 내 기 설정된 위치의 값을 변형시켜 이용할 수도 있다.
본 발명에서는 일 실시예로, 메인 서비스 데이터 패킷과 모바일 서비스 데이터 패킷에 각기 서로 다른 PID(Packet Identifier)를 할당하여 구분할 수 있다.
다른 실시예로, 모바일 서비스 데이터 패킷의 헤더 내 동기 바이트를 변형함 에 의해, 해당 서비스 데이터 패킷의 동기 바이트 값을 이용하여 구분할 수도 있다. 예를 들어, 메인 서비스 데이터 패킷의 동기 바이트는 ISO/IEC13818-1에서 규정한 값(예를 들어, 0x47)을 변형없이 그대로 출력하고, 모바일 서비스 데이터 패킷의 동기 바이트는 변형시켜 출력함에 의해 메인 서비스 데이터 패킷과 모바일 서비스 데이터 패킷을 구분할 수 있다. 반대로 메인 서비스 데이터 패킷의 동기 바이트를 변형하고, 모바일 서비스 데이터 패킷의 동기 바이트를 변형없이 그대로 출력함에 의해 메인 서비스 데이터 패킷과 모바일 서비스 데이터 패킷을 구분할 수 있다.
상기 동기 바이트를 변형하는 방법은 여러 가지가 있을 수 있다. 예를 들어, 동기 바이트를 비트별로 반전시키거나, 일부 비트만을 반전시킬 수도 있다.
이와 같이 상기 메인 서비스 데이터 패킷과 모바일 서비스 데이터 패킷을 구분할 수 있는 식별 정보는 어느 것이나 가능하므로, 본 발명은 상기된 실시예들로 한정되지 않을 것이다.
한편 상기 트랜스포트 다중화기(160)는 기존 디지털 방송 시스템에서 사용하는 트랜스포트 다중화기를 그대로 사용할 수 있다. 즉, 모바일 서비스 데이터를 메인 서비스 데이터와 다중화하여 전송하기 위하여 메인 서비스의 데이터 율을 (19.39-K) Mbps의 데이터 율로 제한하고, 나머지 데이터 율에 해당하는 K Mbps를 모바일 서비스에 할당하는 것이다. 이렇게 하면, 이미 사용되고 있는 트랜스포트 다중화기를 변경하지 않고 그대로 사용할 수 있다.
상기 트랜스포트 다중화기(160)는 메인 서비스 다중화기(161)에서 출력되는 메인 서비스 데이터 패킷과 모바일 서비스 다중화기(150)에서 출력되는 모바일 서비스 데이터 패킷을 다중화하여 송신기(200)로 전송한다.
그런데 상기 모바일 서비스 다중화기(150)의 출력 데이터 율이 K Mbps가 안되는 경우가 발생할 수 있다. 이 경우 상기 모바일 서비스 다중화기(150)는 출력 데이터 율이 K Mbps가 되도록 널 패킷 발생기(140)에서 발생된 널 데이터 패킷을 다중화하여 출력한다. 즉, 상기 널 패킷 발생기(140)는 모바일 서비스 다중화기(150)의 출력 데이터 율을 일정하게 맞추기 위하여 널 데이터 패킷을 발생하여 모바일 서비스 다중화기(150)로 출력한다.
예를 들어, 상기 서비스 다중화기(100)에서 19.39 Mbps 중 K Mbps를 모바일 서비스 데이터에 할당하고, 그 나머지인 (19.39-K) Mbps를 메인 서비스 데이터에 할당한다고 하면, 실제로 상기 서비스 다중화기(100)에서 다중화되는 모바일 서비스 데이터의 데이터 율은 K Mbps보다 작아진다. 이는 상기 모바일 서비스 데이터의 경우, 송신기의 전 처리기(pre-processor)에서 추가의 부호화를 수행하여 데이터 량이 늘리기 때문이다. 이로 인해 서비스 다중화기(100)에서 전송할 수 있는 모바일 서비스 데이터의 데이터 율(data rate)이 K Mbps보다 작아지게 된다.
일 예로, 상기 송신기의 전처리기에서는 모바일 서비스 데이터에 대해 적어도 1/2 부호율 이하의 부호화를 수행하므로, 전처리기의 출력 데이터의 양은 입력 데이터의 양보다 2배 이상 많게 된다. 따라서 서비스 다중화기(100)에서 다중화되는 메인 서비스 데이터의 데이터 율과 모바일 서비스 데이터의 데이터 율의 합은 항상 19.39 Mbps 보다 작거나 같게 된다.
따라서 상기 서비스 다중화기(100)에서 출력되는 최종 출력 데이터 율을 일정한 데이터 율(예를 들어, 19.39 Mbps)로 맞추기 위해, 상기 널 패킷 발생기(140)에서는 모자라는 데이터 율만큼 널 데이터 패킷을 생성하여 모바일 서비스 다중화기(150)로 출력한다.
그러면 상기 모바일 서비스 다중화기(150)에서는 입력되는 모바일 서비스 데이터와 PSI/PSIP 테이블 데이터를 각각 MPEG-2 TS 패킷 형태로 인캡슐레이션(encapsulation)하고, 이러한 TS 패킷들과 널 데이터 패킷을 다중화하여 TS 패킷 다중화기(162)로 출력한다.
상기 TS 패킷 다중화기(162)는 메인 서비스 다중화기(161)에서 출력되는 메인 서비스 데이터 패킷과 모바일 서비스 다중화기(150)에서 출력되는 모바일 서비스 데이터 패킷을 다중화하여 19.39 Mbps 데이터 율로 송신기(200)로 전송한다.
본 발명에서는 상기 모바일 서비스 다중화기(150)에서 널 데이터 패킷을 입력받는 것을 일 실시예로 한다. 이는 일 실시예일 뿐이며, 다른 실시예로 상기 TS 패킷 다중화기(162)에서 널 데이터 패킷을 입력받아 최종 데이터 율을 일정한 데이터 율로 맞출 수도 있다. 상기 널 데이터 패킷의 출력 경로 및 다중화 규칙은 제어부(110)의 제어에 의해 이루어진다. 상기 제어부(110)는 상기 모바일 서비스 다중화기(150), 트랜스포트 다중화기(160)의 메인 서비스 다중화기(161), TS 패킷 다중화기(162)에서의 다중화 및 널 패킷 발생기(140)에서의 널 데이터 패킷의 발생을 제어한다.
이때 상기 송신기(200)에서는 상기 서비스 다중화기(100)에서 전송하는 널 데이터 패킷을 수신 시스템으로 전송하지 않고 버린다.
그리고 상기 송신기(200)에서 상기 널 데이터 패킷을 전송하지 않고 버리기 위해서는 상기 널 데이터 패킷을 구분할 수 있는 식별 정보가 필요하다. 상기 널 데이터 패킷을 구분하기 위한 식별 정보는 송/수신측의 약속에 의해 미리 정해진 값을 이용할 수도 있고, 별도의 데이터로 구성할 수도 있다. 예를 들어, 상기 널 데이터 패킷의 헤더 내 동기 바이트 값을 변형시켜 식별 정보로 이용할 수도 있고, transport_error_indicator 플래그(flag)를 식별 정보로 이용할 수도 있다.
본 발명에서는 널 데이터 패킷 내 헤더의 transport_error_indicator 플래그를 널 데이터 패킷을 구분할 수 있는 식별 정보로 이용하는 것을 일 실시예로 설명한다. 이 경우, 상기 널 데이터 패킷의 transport_error_indicator 플래그는 1로 셋팅하고, 상기 널 데이터 패킷 이외의 모든 데이터 패킷들의 transport_error_indicator 플래그는 0으로 리셋시켜 상기 널 데이터 패킷을 구분하는 것을 일 실시예로 한다. 즉, 상기 널 패킷 발생기(140)에서 널 데이터 패킷을 발생시킬 때 널 데이터 패킷의 헤더의 필드 중에서 transport_error_indicator 플래그를 '1'로 세팅하여 전송한다면 송신기(200)에서 이를 구분하여 버릴 수 있다.
상기 널 데이터 패킷을 구분하기 위한 식별 정보는 널 데이터 패킷을 구분할 수 있는 것은 어느 것이나 가능하므로 본 발명은 상기된 실시예들로 한정되지 않을 것이다.
또한 본 발명은 다른 실시예로서, 상기 널 데이터 패킷의 적어도 일부, 또는 모바일 서비스를 위한 PSI/PSIP 테이블 중 적어도 하나의 테이블 또는 OM(Operations and Maintenance) 패킷(또는 OMP라 하기도 함.)에 전송 파라미터가 포함되어 있을 수 있다. 이 경우 송신기(200)에서는 상기 전송 파라미터를 추출하여 해당 블록으로 출력하며, 필요한 경우 수신 시스템으로도 전송한다.
즉, 전송 시스템의 동작 및 관리를 위한 목적으로 OMP(Operations and Maintenance Packet) 라는 패킷이 정의되어 있다. 일 예로, 상기 OMP는 MPEG-2 TS 패킷의 형식을 따르며 해당 PID는 0x1FFA의 값을 가진다. 상기 OMP은 4바이트의 헤더와 184바이트의 페이로드로 구성된다. 상기 184 바이트 중 첫번째 바이트는 OM_type 필드로서 OM 패킷의 유형을 의미한다.
본 발명에서는 상기 전송 파라미터를 OMP의 형식으로 전송할 수 있으며, 이 경우 OM_type 필드의 미사용 필드 값들 중에서 미리 약속된 값을 사용하여, 송신기(200)에 전송 파라미터가 OMP으로 전송됨을 알릴 수 있다. 즉, 송신기(200)에서는 PID를 보고 OMP를 찾을 수 있으며, 상기 OMP 내 OM_type 필드를 파싱하여 해당 패킷의 OM_type 필드 다음에 전송 파라미터가 포함되어 있는지 여부를 알 수 있다.
상기 전송 파라미터는 송/수신 시스템에서 모바일 서비스 데이터를 처리하는데 필요한 부가 정보들로서, 예를 들면 상기 전송 파라미터에는 데이터 그룹 정보, 데이터 그룹 내 영역(region) 정보, RS 프레임 정보, 수퍼 프레임 정보, 버스트 정보, 터보 코드 정보, RS 코드 정보 등이 포함될 수 있다. 또한 상기 버스트 정보에는 버스트 사이즈(size) 정보, 버스트 주기 정보, 다음 버스트까지의 시간 등이 포함될 수 있다. 상기 버스트 주기(period)는 동일한 종류의 모바일 서비스를 전송하는 버스트가 반복되는 주기(period)를 의미하고, 버스트 사이즈(size)는 하나의 버 스트에 포함되는 데이터 그룹의 개수를 의미한다. 상기 데이터 그룹은 다수개의 모바일 서비스 데이터 패킷들을 포함하며, 이러한 데이터 그룹이 다수개 모여서 하나의 버스트를 형성한다. 그리고 버스트 구간(section)은 현재 버스트의 시작에서 다음 버스트의 시작까지를 의미하며, 데이터 그룹이 포함되는 구간(또는 버스트 온 구간이라 하기도 함)과 데이터 그룹이 포함되지 않는 구간(또는 버스트 오프 구간이라 하기도 함)으로 구분된다. 하나의 버스트 구간은 다수개의 필드들로 구성되는데, 하나의 필드는 하나의 데이터 그룹을 포함한다.
또한 상기 전송 파라미터에는 모바일 서비스 데이터를 전송하기 위해서 심볼 영역의 신호들이 어떤 방법으로 부호화되는지에 대한 정보, 메인 서비스 데이터와 모바일 서비스 데이터 또는 여러 종류의 모바일 서비스 데이터 간에 어떻게 다중화되는지에 대한 다중화 정보 등이 포함될 수도 있다.
상기 전송 파라미터에 포함되는 정보들은 본 발명의 이해를 돕기 위한 일 실시예일 뿐이며, 상기 전송 파라미터에 포함되는 정보들의 추가 및 삭제는 당업자에 의해 용이하게 변경될 수 있으므로 본 발명은 상기 실시예로 한정되지 않을 것이다.
또한 상기 전송 파라미터들은 서비스 다중화기(100)에서 송신기(200)로 제공할 수도 있고, 송신기(200) 자체적으로 제어부(도시되지 않음)에서 설정하거나 외부에서 입력받을 수 있다.
송신기
도 3은 본 발명의 일 실시예에 따른 송신기(200)의 구성 블록도로서, 역다중 화기(210), 패킷 지터 경감기(Packet jitter mitigator)(220), 전 처리기(Pre-Processor)(230), 패킷 다중화기(240), 후처리기(Post-Processor)(250), 동기(Sync) 다중화기(260), 및 송신부(transmission unit)(270)를 포함할 수 있다.
상기 역다중화기(210)는 서비스 다중화기(100)로부터 데이터 패킷이 수신되면, 수신된 데이터 패킷이 메인 서비스 데이터 패킷인지, 모바일 서비스 데이터 패킷인지, 아니면 널 데이터 패킷인지를 구분하여야 한다.
일 실시예로, 상기 역다중화기(210)는 수신된 데이터 패킷 내 PID를 이용하여 모바일 서비스 데이터 패킷과 메인 서비스 데이터 패킷을 구분하고, transport_error_indicator 필드를 이용하여 널 데이터 패킷을 구분할 수 있다.
상기 역다중화기(210)에서 분리된 메인 서비스 데이터 패킷은 패킷 지터 경감기(220)로 출력되고, 모바일 서비스 데이터 패킷은 전처리기(230)로 출력되며, 널 데이터 패킷은 버려진다. 만일 상기 널 데이터 패킷에 전송 파라미터가 포함되어 있다면 전송 파라미터가 추출되어 해당 블록으로 출력된 후 널 데이터 패킷은 버려진다.
상기 전처리기(230)는 역다중화기(210)에서 역다중화되어 출력되는 모바일 서비스 데이터 패킷 내 모바일 서비스 데이터에 대해 추가의 부호화 및 전송 프레임 상에 전송하고자 하는 데이터들의 용도에 따라 어느 특정 위치에 위치할 수 있도록 하는 데이터 그룹 형성 과정을 수행한다. 이는 상기 모바일 서비스 데이터가 노이즈 및 채널 변화에 빠르고 강력하게 대응하도록 하기 위해서이다. 상기 전처리기(230)는 추가의 부호화시에 상기 전송 파라미터를 참조할 수도 있다. 또한 상기 전처리기(230)는 모바일 서비스 데이터 패킷을 다수개 모아 데이터 그룹을 형성하고, 상기 데이터 그룹 내 기 설정된 영역에 기지 데이터, 모바일 서비스 데이터, RS 패리티 데이터, MPEG 헤더 등을 할당한다.
송신기 내의 전처리기
도 4는 본 발명에 따른 전처리기(230)의 일 실시예를 보인 구성 블록도로서, 데이터 랜더마이저(301), RS 프레임 부호기(302), 블록 처리기(303), 그룹 포맷터(304), 데이터 디인터리버(305), 및 패킷 포맷터(306)를 포함할 수 있다.
이와 같이 구성된 전처리기(230) 내 데이터 랜더마이저(301)는 역다중화기(210)를 통해 입력되는 모바일 서비스 데이터를 포함하는 모바일 서비스 데이터 패킷을 랜더마이징시켜 RS 프레임 부호기(302)로 출력한다. 이때 상기 데이터 랜더마이저(301)에서 모바일 서비스 데이터에 대해 랜더마이징을 수행함으로써, 후처리기(250)의 데이터 랜더마이저(251)에서는 모바일 서비스 데이터에 대한 랜더마이징 과정을 생략할 수 있다.
상기 RS 프레임 부호기(302)는 랜더마이즈되어 입력되는 모바일 서비스 데이터 패킷을 복수개 모아 RS 프레임을 구성하고, RS 프레임 단위로 에러 정정 부호화(encoding) 과정, 에러 검출 부호화 과정 중 적어도 하나의 과정을 수행한다. 이렇게 하면 모바일 서비스 데이터에 강건성을 부여하면서 전파 환경 변화에 의해서 발생할 수 있는 군집 에러를 흐트림으로써 극심하게 열악하고 빠르게 변하는 전파 환경에도 대응할 수 있게 된다. 또한 복수개의 RS 프레임을 모아 수퍼 프레임(Super Frame)을 구성하고, 수퍼 프레임 단위로 인터리빙(interleaving or permutation)을 수행할 수도 있다. 즉, 상기 RS 프레임 부호기(302)에서 수퍼 프레임의 각 열을 기 설정된 규칙으로 섞는 인터리빙을 수행하면, 수퍼 프레임 내에서 인터리빙 전후의 로우의 위치가 달라진다. 상기 수퍼 프레임 단위의 인터리빙을 수행하면, 다량의 에러가 발생한 구간이 매우 길어 복호하려는 한 개의 RS 프레임 내에 정정 불가능할 만큼의 에러가 포함되더라도 수퍼 프레임 전체에서는 이 에러들이 분산되므로 단일 RS 프레임과 비교하여 복호 능력이 향상된다.
상기 RS 프레임 부호기(302)에서 에러 정정 부호화는 RS 부호화를 적용하고, 에러 검출 부호화는 CRC(Cyclic Redundancy Check) 부호화를 적용하는 것을 일 실시예로 한다. 상기 RS 부호화를 수행하면 에러 정정을 위해 사용될 패리티 데이터가 생성되고, CRC 부호화를 수행하면 에러 검출을 위해 사용될 CRC 데이터가 생성된다.
상기 RS 부호화는 FEC(Forward Error Correction) 중 하나이다. 상기 FEC는 전송 과정에서 발생하는 에러를 보정하기 위한 기술을 말한다. 상기 CRC 부호화에 의해 생성된 CRC 데이터는 모바일 서비스 데이터가 채널을 통해 전송되면서 에러에 의해서 손상되었는지 여부를 알려주기 위해 사용될 수 있다. 본 발명은 CRC 부호화 이외에 다른 에러 검출 부호화 방법들을 사용할 수도 있고, 또는 에러 정정 부호화 방법을 사용하여 수신측에서의 전체적인 에러 정정 능력을 높일 수도 있다.
여기서, 상기 RS 프레임 부호기(302)는 미리 설정된 전송 파라미터 및/또는 상기 서비스 다중화기(100)에서 제공하는 전송 파라미터를 참조하여 RS 프레임 구성, RS 부호화, CRC 부호화, 수퍼 프레임 구성, 수퍼 프레임 단위의 인터리빙 등을 수행할 수 있다.
전처리기 내 RS 프레임 부호기
도 5의 (a) 내지 (e)는 본 발명에 따른 RS 프레임 부호기(302)의 부호화 과정의 일 실시예를 보인 도면이다.
즉, 상기 RS 프레임 부호기(302)는 먼저, 입력되는 모바일 서비스 데이터를 일정 길이(A) 단위로 구분한다. 상기 일정 길이(A)는 시스템 설계자에 의해 결정되는 값으로서, 본 발명에서는 187을 일 실시예로 설명하며, 설명의 편의를 위해 상기 일정 길이(A)를 패킷이라 하기로 한다.
예를 들어, 도 5의 (a)와 같이 입력되는 모바일 서비스 데이터가 188바이트 단위로 구성된 MPEG 트랜스포트 스트림(TS) 패킷이라면 도 5의 (b)와 같이 첫 번째 MPEG 동기 바이트를 제거하여 187바이트로 한 패킷을 구성한다. 여기서 MPEG 동기 바이트를 제거하는 이유는 모든 모바일 서비스 패킷이 동일한 값을 갖기 때문이다. 여기서 상기 MPEG 동기 바이트 제거는 데이터 랜더마이저(301)에서 랜더마이징시 수행할 수도 있다. 이 경우 RS 프레임 부호기(302)에서 MPEG 동기 바이트 제거 과정은 생략되며, 수신 시스템에서 MPEG 동기 바이트를 부가할 때에 RS 프레임 복호기 대신 데이터 디랜더마이저에서 부가한다.
따라서 입력된 모바일 서비스 데이터에 제거 가능한 고정된 한 바이트가 존재하지 않거나 입력된 패킷의 길이가 187 바이트가 아닌 경우에는, 입력되는 모바일 서비스 데이터를 187 바이트 단위로 나누고, 나누어진 187 바이트 단위로 하나의 패킷을 구성한다.
이어, 도 5의 (c)와 같이 187바이트로 구성된 패킷을 N개 모아서 하나의 RS 프레임을 구성한다. 이때 하나의 RS 프레임의 구성은 187 * N 바이트의 크기를 갖는 RS 프레임에 187 바이트의 패킷을 차례대로 넣음으로써 이루어진다. 본 발명에서는 설명의 편의를 위해 이렇게 생성된 RS 프레임을 제1 RS 프레임이라 하기도 한다. 즉, 제1 RS 프레임에는 순수한 모바일 서비스 데이터만 포함되어 있으며, N 바이트로 된 로우가 187개 구성된 것과 같다.
그리고, 상기 RS 프레임 내 모바일 서비스 데이터를 일정 크기로 나눈 후, RS 프레임을 구성하기 위해 입력되는 순서와 동일한 순서로 전송을 하게 되면, 송/수신간에 특정 시점에서 에러가 발생했을 경우 RS 프레임 상에서도 에러가 모여있게 된다. 이러한 경우 수신 시스템에서 에러 정정 디코딩시에 RS 이레이저(erasure) 디코딩을 사용함으로써, 에러 정정 능력을 향상시킬 수 있게 된다.
상기 RS 프레임의 N개의 모든 컬럼(column)은 도 5의 (c)와 같이 187바이트를 포함하고 있다.
이때 각 컬럼에 대해서 (Nc,Kc)-RS 부호화를 수행하여 Nc-Kc개의 패리티 바이트를 생성하고, 해당 컬럼의 맨 마지막 바이트 다음에 추가하여 Nc 바이트의 한 컬럼을 만들 수가 있다. 여기서 Nc는 Kc보다 큰 수이며, 일 실시예로 Nc 값은 235, Kc 값은 187로 설정한다.
그러면 각 컬럼에 대해 (235,187)-RS 부호화가 수행되어 48개의 패리티 바이트가 생성된다.
그리고 도 5의 (c)의 N개의 모든 컬럼에 대해서 도 5의 (d)와 같이 (235,187)-RS 부호화를 수행하면, 235 * N 바이트의 크기를 갖는 RS 프레임을 만들 수가 있다. 본 발명에서는 설명의 편의를 위해 RS 패리티가 부가된 RS 프레임을 제2 RS 프레임이라 하기도 한다. 즉, 제2 RS 프레임은 N 바이트로 된 로우가 235개 구성된 것과 같다.
도 5의 (c) 또는 (d)에서와 같이 RS 프레임의 각 로우(row)는 N 바이트로 이루어져 있다. 그런데 송/수신간의 채널 상황에 따라서 상기 RS 프레임에 에러가 포함될 수가 있다. 이렇게 에러가 발생하는 경우에 각 로우 단위로 에러 여부를 검사하기 위하여 CRC 데이터(또는 CRC 코드 또는 CRC 체크섬이라고도 함)를 사용하는 것이 가능하다.
상기 RS 프레임 부호기(302)는 상기 CRC 코드를 생성하기 위하여 RS 부호화된 모바일 서비스 데이터에 대해 CRC 부호화를 수행한다. 상기 CRC 부호화에 의해 생성된 CRC 코드는 모바일 서비스 데이터가 채널을 통해 전송되면서 에러에 의해서 손상되었는지 여부를 알려주기 위해 사용될 수 있다.
본 발명은 CRC 부호화 이외에 다른 에러 검출 부호화 방법들을 사용할 수도 있고, 또는 에러 정정 부호화 방법을 사용하여 수신측에서의 전체적인 에러 정정 능력을 높일 수도 있다.
도 5의 (e)는 CRC 데이터로 2 바이트(즉, 16비트) CRC 체크섬(checksum)을 사용하는 예를 보인 것으로서, 각 로우의 N 바이트에 대한 2바이트 CRC 체크섬을 생성한 후 N 바이트 후단에 부가하고 있다. 이렇게 함으로써, 각 로우는 N+2 바이트로 확장이 된다.
하기의 수학식 1은 N 바이트로 된 각 로우에 대해 2바이트 CRC 체크섬을 생성하는 다항식의 예를 보이고 있다.
g(x) = x16 + x12 + x5 + 1
상기 각 로우마다 2바이트 CRC 체크섬을 부가하는 것은 하나의 실시예이므로, 본 발명은 상기된 예로 제한되지 않을 것이다.
본 발명에서는 설명의 편의를 위해 RS 패리티 및 CRC 체크섬이 부가된 RS 프레임을 제3 RS 프레임이라 하기도 한다. 즉, 제3 RS 프레임은 N+2 바이트로 된 로우가 235개 구성된 것과 같다.
지금까지 설명한 RS 부호화 및 CRC 부호화 과정을 모두 거치게 되면, 187 * N 바이트의 RS 프레임은 235 * (N+2) 바이트의 RS 프레임으로 확장하게 된다.
그리고 도 5의 (e)와 같이 확장된 RS 프레임은 블록 처리기(303)로 입력된다.
상기와 같이 RS 프레임 부호기(302)에서 부호화된 모바일 서비스 데이터는 블록 처리기(303)로 입력된다.
상기 블록 처리기(303)는 입력되는 모바일 서비스 데이터를 다시 G/H(여기서 G<H 임) 부호율로 부호화하여 그룹 포맷터(304)로 출력한다.
즉, 상기 블록 처리기(303)는 바이트 단위로 입력되는 모바일 서비스 데이터를 비트로 구분하고, 구분된 G 비트를 H 비트로 부호화한 후 바이트 단위로 변환하 여 출력한다. 일 예로 입력 데이터 1비트를 2비트로 부호화하여 출력한다면 G=1, H=2가 되고, 입력 데이터 1비트를 4비트로 부호화하여 출력한다면 G=1, H=4가 된다. 본 발명에서는 설명의 편의를 위해 전자를 1/2 부호율의 부호화(또는 1/2 부호화라 하기도 함)라 하고, 후자를 1/4 부호율의 부호화(또는 1/4 부호화라 하기도 함)라 한다.
여기서 1/4 부호화를 사용하는 경우는 1/2 부호화에 비해서 높은 부호율 때문에 높은 에러 정정 능력을 가질 수가 있다. 이런 이유 때문에 후단의 그룹 포맷터(304)에서 1/4 부호율로 부호화된 데이터는 수신 성능이 떨어질 수 있는 영역에 할당하고, 1/2 부호율로 부호화된 데이터는 더 우수한 성능을 가질 수 있는 영역에 할당한다고 가정하면, 그 성능의 차이를 줄이는 효과를 얻을 수가 있게 된다.
이때, 상기 블록 처리기(303)는 전송 파라미터를 담고 있는 시그널링(signaling) 정보도 입력받을 수 있는데, 이 시그널링 정보도 모바일 서비스 데이터 처리 과정과 동일하게 1/2 부호화 또는 1/4 부호화를 수행한다. 이후 상기 시그널링 정보도 모바일 서비스 데이터로 간주되어 처리된다.
한편 상기 그룹 포맷터(304)는 상기 블록 처리기(303)에서 출력되는 모바일 서비스 데이터를 기 정의된 규칙에 따라 형성되는 데이터 그룹 내 해당 영역에 삽입하고, 또한 데이터 디인터리빙과 관련하여 각종 위치 홀더나 기지 데이터(또는 기지 데이터 위치 홀더)도 상기 데이터 그룹 내 해당 영역에 삽입한다.
이때 상기 데이터 그룹은 적어도 하나 이상의 계층화된 영역으로 구분할 수 있고, 계층화된 각 영역의 특성에 따라 각 영역에 삽입되는 모바일 서비스 데이터 종류가 달라질 수 있다. 그리고 각 영역은 일 예로 데이터 그룹 내에서 수신 성능을 기준으로 분류할 수 있다. 또한 하나의 데이터 그룹은 필드 동기를 포함하도록 구성할 수 있다.
본 발명에서는 데이터 디인터리빙 전의 데이터 구성에서 하나의 데이터 그룹을 A,B,C 영역(Region)으로 구분하는 것을 일 실시예로 한다. 이때 상기 그룹 포맷터(304)는 RS 부호화 및 블록 부호화되어 입력되는 모바일 서비스 데이터를 상기 전송 파라미터를 참조하여 해당 영역에 할당할 수 있다.
도 6a는 데이터 인터리빙 후의 데이터들이 구분되어 나열된 형태이고, 도 6b는 데이터 인터리빙 전의 데이터들이 구분되어 나열된 형태를 보여준다. 즉, 도 6a와 같은 데이터 구조가 수신 시스템으로 전송된다.
그리고 도 6a와 같은 구조로 형성된 데이터 그룹이 데이터 디인터리버(305)로 입력된다.
도 6a는 데이터 디인터리빙 전의 데이터 구성에서 데이터 그룹을 크게 세 개의 영역(region) 예를 들어, A 영역(Region A), B 영역(Region B), C 영역(Region C)으로 구분하는 예를 보이고 있다.
또한 본 발명은 상기 A 내지 C 영역을 각각 복수개의 하위 영역으로 다시 구분하는 것을 일 실시예로 한다.
도 6a는 상기 A 영역이 5개의 하위 영역(A1~A5)으로 구분되고, B 영역이 2개의 하위 영역(B1,B2)으로 구분되며, C 영역이 3개의 하위 영역(C1~C3)으로 구분되는 예를 보이고 있다.
상기 A 내지 C 영역은 데이터 그룹 내에서 비슷한 수신 성능을 갖는 영역을 기준으로 분류하고 있다. 이때 각 영역의 특성에 따라 삽입되는 모바일 서비스 데이터 종류가 달라질 수 있다.
본 발명에서는 메인 서비스 데이터의 간섭 정도를 기준으로 A 내지 C 영역을 나누는 것을 일 실시예로 설명한다.
여기서, 상기 데이터 그룹을 다수개의 영역으로 구분하여 사용하는 이유는 각각의 용도를 달리하기 위해서이다. 즉, 메인 서비스 데이터의 간섭이 없거나 적은 영역은 그렇지 않은 영역보다 강인한 수신 성능을 보일 수 있기 때문이다. 또한, 기지 데이터를 데이터 그룹에 삽입하여 전송하는 시스템을 적용하는 경우, 모바일 서비스 데이터에 연속적으로 긴 기지 데이터를 주기적으로 삽입하고자 할 때, 메인 서비스 데이터의 간섭이 없는 영역(예를 들어, A 영역)에는 일정 길이의 기지 데이터를 주기적으로 삽입하는 것이 가능하다. 그러나 메인 서비스 데이터의 간섭이 있는 영역(예를 들어, B,C 영역)에는 서비스 메인 서비스 데이터의 간섭으로 기지 데이터를 주기적으로 삽입하는 것이 곤란하고 연속적으로 긴 기지 데이터를 삽입하는 것도 곤란하다.
다음은 도 6a를 참조하여 데이터 그룹 내에서 A(A1~A5), B(B1,B2), C(C1~C3) 영역이 할당되는 구체적인 예를 설명한다. 도 6a의 데이터 그룹의 크기, 데이터 그룹 내 계층화된 영역의 수와 각 영역의 크기, 계층화된 각 영역에 삽입 가능한 모바일 서비스 데이터 바이트 수 등은 본 발명을 기술하기 위한 하나의 실시예이다.
이때 상기 그룹 포맷터(304)에서는 필드 동기가 삽입될 위치를 포함하여 데 이터 그룹을 형성함으로써, 아래에 설명하는 것과 같이 데이터 그룹을 구성할 수가 있다.
즉, 상기 A 영역은 상기 데이터 그룹 내 긴 기지 데이터 열(sequence)이 주기적으로 삽입될 수 있는 영역이면서, 메인 서비스 데이터가 섞이지 않는 영역을 포함한다(예, A2~A5). 또한 상기 A 영역은 상기 데이터 그룹에 삽입될 필드 동기 영역과 첫 기지 데이터 열이 삽입될 영역 사이에 있는 영역(예, A1)을 포함한다. 상기 필드 동기 영역은 ATSC에 존재하는 한 세그먼트 길이(즉, 832 심볼)를 갖는다.
일 실시예로 도 6a에서 A1 영역에는 2428 바이트, A2 영역에는 2580 바이트, A3 영역에는 2772 바이트, A4 영역에는 2472 바이트, A5 영역에는 2772 바이트의 모바일 서비스 데이터를 삽입할 수 있다. 상기 모바일 서비스 데이터에서 트렐리스 초기화나 기지 데이터, MPEG 헤더, RS 패리티 등은 제외된다.
상기와 같이 앞뒤로 기지 데이터 열을 갖는 A 영역의 경우, 수신 시스템에서는 기지 데이터나 필드 동기로부터 얻을 수 있는 채널 정보를 이용하여 등화를 수행할 수 있으므로, 강인한 등화 성능을 얻을 수가 있다.
상기 B 영역은 상기 데이터 그룹 내 필드 동기 영역의 앞쪽 8 세그먼트 이내에 위치하는 영역(시간적으로 A1 영역의 앞에 위치함)(예, B1 영역)과, 상기 데이터 그룹에 삽입되는 가장 마지막 기지 데이터 열 다음 8 세그먼트 내에 위치하는 영역(시간적으로 A 영역의 뒤에 위치함)(예, B2 영역)을 포함한다. 예를 들어, 상기 B1 영역에는 930 바이트, B2 영역에는 1350 바이트의 모바일 서비스 데이터를 삽입할 수 있다. 마찬가지로, 상기 모바일 서비스 데이터에서 트렐리스 초기화나 기지 데이터, MPEG 헤더, RS 패리티 등은 제외된다.
상기 B 영역의 경우, 수신 시스템에서는 필드 동기 구간에서 얻어진 채널 정보를 사용하여 등화를 수행할 수 있고, 또한 상기 마지막 기지 데이터 열로부터 얻을 수 있는 채널 정보를 사용하여 등화를 수행할 수 있으므로, 채널의 변화에 대응할 수가 있다.
상기 C 영역은 필드 동기 영역의 앞쪽 9번째 세그먼트를 포함하여 그 앞쪽으로 30 세그먼트 내에 위치하는 영역(시간적으로 A 영역의 앞에 위치함)(예, C1 영역), 상기 데이터 그룹 내 마지막 기지 데이터 열 다음 9번째 세그먼트를 포함한 12 세그먼트 내에 위치하는 영역(시간적으로 A 영역의 뒤에 위치함)(예, C2 영역), 및 상기 C2 영역 다음에 오는 32 세그먼트 내에 위치하는 영역(예, C3 영역)을 포함한다.
예를 들어, 상기 C1 영역에는 1272 바이트, C22 영역에는 1560 바이트, C3 영역에는 1312 바이트의 모바일 서비스 데이터를 삽입할 수 있다. 마찬가지로, 상기 모바일 서비스 데이터에서 트렐리스 초기화나 기지 데이터, MPEG 헤더, RS 패리티 등은 제외된다.
이때 상기 A 영역보다 시간적으로 앞에 위치한 C 영역(예, C1 영역)은 제일 가까운 기지 데이터인 필드 동기에서도 꽤 멀리 떨어져 있기 때문에, 수신 시스템에서 채널 등화시에 필드 동기로부터 얻은 채널 정보를 사용할 수도 있고, 또는 이전 데이터 그룹의 가장 최근의 채널 정보를 사용할 수도 있다. 그리고 상기 A 영역 보다 시간적으로 뒤에 위치한 C 영역(예, C2,C3 영역)은 수신 시스템에서 채널 등화시에 상기 마지막 기지 데이터 열에서 얻은 채널 정보를 사용하여 등화를 하더라도 채널이 빠르게 변하는 경우에는 등화가 완벽하게 되지 않을 수가 있다. 그러므로 상기 C 영역은 B 영역보다 등화 성능이 떨어질 수가 있다.
상기와 같이 데이터 그룹을 다수개의 계층화된 영역으로 할당한다고 가정하면, 전술한 블록 처리기(303)에서는 계층화된 영역의 특성에 따라 각 영역에 삽입될 모바일 서비스 데이터를 다른 부호율로 부호화할 수도 있다.
예를 들어, 상기 A 영역 내 A1~A5 영역에 삽입될 모바일 서비스 데이터는 블록 처리기(303)에서 1/2 부호율로 부호화를 수행하도록 하고, 이렇게 부호화된 모바일 서비스 데이터를 상기 그룹 포맷터(304)에서 상기 A1~A5 영역에 삽입하도록 할 수 있다.
상기 B 영역 내 B1,B2 영역에 삽입될 모바일 서비스 데이터는 블록 처리기(303)에서 1/2 부호율보다 에러 정정 능력이 높은 1/4 부호율로 부호화를 수행하도록 하고, 이렇게 부호화된 모바일 서비스 데이터를 상기 그룹 포맷터(304)에서 상기 B1,B2 영역에 삽입하도록 할 수 있다.
상기 C 영역 내 C1~C3 영역에 삽입될 모바일 서비스 데이터는 블록 처리기(303)에서 1/4 부호율이나 또는 1/4 부호율보다 더 강력한 에러 정정 능력을 갖는 부호율로 부호화를 수행하도록 하고, 이렇게 부호화된 데이터를 상기 그룹 포맷터(304)에서 상기 C1~C3 영역에 삽입하도록 할 수도 있고, 추후의 사용을 위해서 미사용(reserve) 영역으로 남겨둘 수도 있다.
또한 상기 그룹 포맷터(304)에서는 모바일 서비스 데이터와는 별도로 전체적인 송신 정보를 알려주는 시그널링(signaling)과 같은 부가 정보 데이터도 상기 데이터 그룹 내에 삽입한다.
그리고 상기 그룹 포맷터(304)에서는 블록 처리기(303)에서 출력된 부호화된 모바일 서비스 데이터들 외에도 도 6a에서 보이는 것과 같이 후단의 데이터 디인터리빙과 관련하여 MPEG 헤더 위치 홀더, 비체계적 RS 패리티 위치 홀더, 메인 서비스 데이터 위치 홀더를 삽입한다. 여기서 메인 서비스 데이터 위치 홀더를 삽입하는 이유는 도 6a와 같이 데이터 디인터리버의 입력을 기준으로 B,C 영역에서는 모바일 서비스 데이터와 메인 서비스 데이터가 사이사이에 섞이게 되기 때문이다. 일 예로 상기 MPEG 헤더를 위한 위치 홀더는 상기 데이터 디인터리빙 후의 출력 데이터를 기준으로 볼 때, 각 패킷의 제일 앞에 할당될 수 있다.
또한 상기 그룹 포맷터(304)에서는 기 정해진 방법에 의해서 발생된 기지 데이터를 삽입하거나 기지 데이터를 추후에 삽입하기 위한 기지 데이터 위치 홀더를 삽입한다. 더불어서 트렐리스 부호화부(Trellis Encoding Module)(256)의 초기화를 위한 위치 홀더를 해당 영역에 삽입한다. 일 실시예로, 상기 초기화 데이터 위치 홀더는 상기 기지 데이터 열의 앞에 삽입할 수 있다.
이때 하나의 데이터 그룹에 삽입 가능한 모바일 서비스 데이터 사이즈는 해당 데이터 그룹에 삽입되는 트렐리스 초기화 위치 홀더나 기지 데이터(또는 기지 데이터 위치 홀더), MPEG 헤더 위치 홀더, RS 패리티 위치 홀더등의 사이즈에 의해 달라질 수 있다.
상기 그룹 포맷터(304)의 출력은 데이터 인터리버(305)로 입력되고, 상기 데이터 디인터리버(305)는 상기 그룹 포맷터(304)에서 출력되는 데이터 그룹 내 데이터 및 위치 홀더를 데이터 인터리빙의 역과정으로 디인터리빙하여 패킷 포맷터(306)로 출력한다. 즉, 도 6a와 같은 형태로 구성된 데이터 그룹 내 데이터 및 위치 홀더가 상기 데이터 디인터리버(305)에서 디인터리빙되면 패킷 포맷터(306)로 출력되는 데이터 그룹은 도 6b와 같은 구조를 갖게 된다.
상기 패킷 포맷터(306)는 디인터리빙되어 입력된 데이터 중에서 디인터리빙을 위해 할당되었던 메인 서비스 데이터 위치 홀더와 RS 패리티 위치 홀더를 제거하고, 나머지 부분들을 모은 후, 4바이트의 MPEG 헤더 위치 홀더에 널 패킷 PID(또는 메인 서비스 데이터 패킷에서 사용하지 않는 PID)를 갖는 MPEG 헤더를 대체하여 삽입한다.
또한 상기 패킷 포맷터(306)는 상기 그룹 포맷터(304)에서 기지 데이터 위치 홀더를 삽입한 경우 상기 기지 데이터 위치 홀더에 실제 기지 데이터를 삽입할 수도 있고, 또는 나중에 대체 삽입하기 위하여 상기 기지 데이터 위치 홀더를 조정없이 그대로 출력할 수도 있다.
그리고 나서 상기 패킷 포맷터(306)는 상기와 같이 패킷 포맷팅된 데이터 그룹 내 데이터들을 188바이트 단위의 모바일 서비스 데이터 패킷(즉, MPEG TS 패킷)으로 구분하여 패킷 다중화기(240)에 제공한다.
상기 패킷 다중화기(240)는 상기 전처리기(230)에서 출력되는 모바일 서비스 데이터 패킷과 패킷 지터 경감기(220)에서 출력되는 메인 서비스 데이터 패킷을 기 정의된 다중화 방법에 따라 다중화하여 후처리기(Post-Processor)(250)의 데이터 랜더마이저(251)로 출력한다. 상기 다중화 방법은 시스템 설계의 여러 변수들에 의해서 조정이 가능하다.
상기 패킷 다중화기(240)의 다중화 방법 중 하나로서, 시간축 상으로 버스트(burst) 구간을 두고, 버스트 구간 내 버스트 온 구간에서는 다수개의 데이터 그룹을 전송하고 버스트 오프 구간에서는 메인 서비스 데이터만을 전송하도록 할 수 있다. 여기서 버스트 구간은 현재 버스트의 시작에서 다음 버스트의 시작까지를 의미한다.
이때 상기 버스트 온 구간에서는 메인 서비스 데이터를 전송할 수도 있다. 상기 패킷 다중화기(240)는 상기 전송 파라미터 예를 들어, 버스트 사이즈나 버스트 주기 등의 정보를 참조하여 하나의 버스트에 포함되는 데이터 그룹의 개수, 주기 등을 알 수 있다.
이때 버스트 온 구간에서는 모바일 서비스 데이터 및 메인 서비스 데이터가 혼재할 수 있으며, 버스트 오프 구간에서는 메인 서비스 데이터만 존재한다. 따라서 메인 서비스 데이터를 전송하는 메인 서비스 데이터 구간은 버스트 온 구간과 버스트 오프 구간에 모두 존재할 수 있다. 이때 버스트 온 구간 내 메인 서비스 데이터 구간과 버스트 오프 구간에 포함되는 메인 서비스 데이터 패킷 수는 서로 다를 수도 있고, 같을 수도 있다.
상기와 같이 모바일 서비스 데이터를 버스트 구조로 전송하게 되면 모바일 서비스 데이터만을 수신하는 수신 시스템에서는 버스트 구간에서만 전원을 온시켜 데이터를 수신하고 그 외 메인 서비스 데이터만 전송되는 구간에서는 전원을 오프시켜 메인 서비스 데이터를 수신하지 않도록 함으로써, 수신 시스템의 소모 전력을 줄일 수가 있다.
RS 프레임 구성 및 패킷 다중화에 관련된 구체적인 실시예
다음은 전처리기(230)와 패킷 다중화기(240)의 구체적인 실시예에 대해서 설명한다.
본 발명에서는 일 실시예로, RS 프레임 부호기(302)에서 구성되는 RS 프레임의 한 로우의 길이인 N 값을 538로 설정한다.
그러면 상기 RS 프레임 부호기(302)는 538개의 트랜스포트 스트림(TS) 패킷을 입력받아 187 * 538 바이트 크기의 제1 RS 프레임을 구성할 수 있다. 이후 전술한 바와 같이 (235,187)-RS 부호화를 거쳐 235 * 538 바이트 크기의 제2 RS 프레임을 형성하고, 다시 16-비트 CRC 체크섬 생성 과정을 거쳐서 235 * 540 바이트 크기의 제3 RS 프레임을 형성하게 된다.
한편 도 6a에서와 같이 데이터 그룹 내 다수개의 영역들 중에서 1/2 부호화를 거친 모바일 서비스 데이터를 삽입하게 될 A 영역 내 A1-A5 영역의 바이트 수를 합치면 13024 바이트(=2428+2580+2772+2472+2772 바이트)이다. 이 경우 1/2 부호화 전의 바이트 수는 6512(=13024/2) 바이트이다.
그리고 1/4 부호화를 거친 모바일 서비스 데이터를 삽입하게 될 B 영역 내 B1,B2 영역의 바이트 수를 합치면 2280(=930+1350) 바이트가 된다. 이 경우 1/4 부호화 전의 바이트 수는 570(=2280/4) 바이트이다.
정리하면, 상기 블록 처리기(303)로 7082 바이트의 모바일 서비스 데이터가 입력되면, 이 중 6512 바이트는 1/2 부호화를 통해서 13024 바이트로 확장되고, 570 바이트는 1/4 부호화를 통해서 2280 바이트로 확장되게 한다. 그리고 상기 그룹 포맷터(304)는 13024 바이트로 확장된 모바일 서비스 데이터는 A 영역 내 A1~A5 영역에 삽입하고, 2280 바이트로 확장된 모바일 서비스 데이터는 B 영역 내 B1,B2 영역에 삽입한다.
이때 상기 블록 처리기(303)로 입력되는 7082 바이트의 모바일 서비스 데이터는 RS 프레임 부호기(302)의 출력과 시그널링 정보로 구분할 수가 있다. 본 발명에서는 7082 바이트 중 7050 바이트는 RS 프레임 부호기(302)의 출력에서 받아들이고, 나머지 32 바이트는 시그널링 정보 데이터를 입력받아 1/2 부호화 또는 1/4 부호화를 수행하는 것을 일 실시예로 한다.
한편 RS 프레임 부호기(302)에서 RS 부호화 및 CRC 부호화를 거친 한 개의 RS 프레임은 235 * 540 바이트 즉, 126900 바이트로 구성이 되어 있다. 이것을 시간축에 대해 7050 바이트 단위로 나누면, 18개의 7050 바이트로 구분된다.
그리고 상기 RS 프레임 부호기(302)에서 출력되는 7050 바이트 단위의 모바일 서비스 데이터는 32 바이트 단위의 부가 정보 데이터와 합쳐진 후 블록 처리기(303)에서 1/2 부호화 또는 1/4 부호화되어 그룹 포맷터(304)로 출력된다. 상기 그룹 포맷터(304)는 1/2 부호화된 데이터는 A 영역에 삽입하고, 1/4 부호화된 데이터는 B 영역에 삽입한다.
다음은 RS 프레임 부호기(302)에서 RS 프레임을 형성하는데 필요한 N 값을 결정하는 과정을 설명한다.
즉, 상기 RS 프레임 부호기(302)에서 RS 부호화 및 CRC 부호화된 최종 RS 프레임(즉, 제3 RS 프레임) 크기인 235 * (N+2) 바이트는 정수개의 그룹에 할당이 되어야 한다. 이때 단일 데이터 그룹에는 부호화 전을 기준으로 7050 바이트가 할당이 되기 때문에, 235 * (N+2)바이트를 7050(=235*30)으로 나누어 떨어지도록 하면, RS 프레임 부호기(302)의 출력 데이터를 효율적으로 데이터 그룹에 할당하게 할 수가 있다. 본 발명에서는 N+2가 30의 배수가 되도록 N 값을 결정하는 것을 일 실시예로 한다. 본 발명에서는 N 값으로 538을 결정하고, N+2(=540)를 30으로 나누면 18이 된다. 이것은 하나의 RS 프레임 내 모바일 서비스 데이터는 1/2 부호화 또는 1/4 부호화 과정을 거쳐 18개의 데이터 그룹에 나누어 할당됨을 의미한다.
도 7은 본 발명에 따른 RS 프레임의 분할 과정을 도시한 것이다. 즉, 235 * (N+2) 크기를 갖는 RS 프레임을 30*235 바이트 블록으로 나눈다. 그리고 나누어진 각 블록은 하나의 그룹에 매핑된다. 즉, 30*235 바이트 크기를 갖는 하나의 블록의 데이터는 1/2 부호화 또는 1/4 부호화 과정을 거쳐 하나의 데이터 그룹에 삽입된다.
그리고 상기와 같이 그룹 포맷터(304)에서 계층화된 각 영역에 해당 데이터 및 위치 홀더가 삽입된 데이터 그룹은 데이터 디인터리버(305)와 패킷 포맷터(306)를 거쳐 패킷 다중화기(240)로 입력된다.
도 8은 본 발명의 구체적인 실시예에 따른 패킷 다중화기(240)의 동작 예를 보인 것이다. 즉, 상기 패킷 다중화기(240)에서는 모바일 서비스 데이터와 메인 서비스 데이터가 섞여 있는 데이터 그룹이 포함된 필드와 메인 서비스 데이터만 있는 필드를 다중화하여 데이터 랜더마이저(251)로 출력한다.
이때, 235 * 540 바이트 크기를 갖는 한 개의 RS 프레임을 전송하기 위해서는 18개의 데이터 그룹을 전송해야 한다. 여기서 각 데이터 그룹은 도 6a와 같이 필드 동기를 포함한다. 그러므로 18개의 데이터 그룹은 18 필드 구간 동안 전송되며, 상기 18개의 데이터 그룹이 전송되는 구간을 버스트 온 구간이라 하기로 한다.
상기 버스트 온 구간 내 각 필드에서는 필드 동기를 포함하는 하나의 데이터 그룹과 메인 서비스 데이터가 다중화되어 출력된다. 일 실시예로 상기 버스트 온 구간 내 각 필드에서는 118 세그먼트 크기의 데이터 그룹과 194 세그먼트 크기의 메인 서비스 데이터가 다중화되어 출력된다.
도 8을 보면, 버스트(burst) 온 구간 동안 즉, 18 필드 구간 동안은 18개의 데이터 그룹이 포함된 필드를 전송하고, 그 다음 버스트 오프 구간 즉, 12 필드 구간 동안은 메인 서비스 데이터만으로 구성된 필드를 전송하게 된다. 이후 다시 버스트 온 구간에서는 18개의 데이터 그룹이 포함된 18 필드를 전송하고, 다음 버스트 오프 구간에서는 메인 서비스 데이터만으로 구성된 12 필드를 전송한다.
그리고 본 발명은 첫번째 18개의 데이터 그룹을 포함한 버스트 온 구간과 두 번째 18개의 데이터 그룹을 포함한 버스트 온 구간에서 같은 종류의 데이터 서비스를 제공할 수도 있고, 서로 다른 데이터 서비스를 전송할 수도 있다.
예를 들어, 도 8의 첫 번째 버스트 온 구간과 두 번째 버스트 온 구간에서 서로 다른 데이터 서비스를 전송하고, 수신 시스템에서는 하나의 데이터 서비스만 수신하기를 원한다고 가정하자. 이러한 경우 수신 시스템에서는 원하는 데이터 서비스를 포함하는 해당 버스트 온 구간에서만 전원을 온시켜 18개의 필드를 수신하고, 나머지 42개의 필드 구간 동안에는 전원을 오프시켜 수신하지 않도록 함으로써, 수신 시스템의 소모 전력을 줄일 수 있게 된다. 또한 수신 시스템에서는 하나의 버스트 온 구간에서 수신된 18개의 데이터 그룹으로부터 하나의 RS 프레임을 구성할 수 있으므로 디코딩이 용이해지는 잇점이 있다.
본 발명에서 하나의 버스트 온 구간에 포함되는 데이터 그룹의 수는 RS 프레임의 크기에 따라 달라지며, 상기 RS 프레임의 크기는 N 값에 따라 달라진다. 즉, N 값을 조정하여 버스트 내 데이터 그룹 수를 조정할 수 있다. 이때 (235,187)-RS 부호화는 고정된 상태에서 상기 N 값을 조정하는 것을 일 실시예로 한다.
또한 데이터 그룹 내 삽입 가능한 모바일 서비스 데이터 크기는 해당 데이터 그룹에 삽입되는 트렐리스 초기화나 기지 데이터, MPEG 헤더, RS 패리티 등의 크기에 의해 달라질 수 있다.
한편 상기 패킷 다중화 과정에서 메인 서비스 데이터 사이사이에 모바일 서비스 데이터를 포함하는 데이터 그룹이 다중화되기 때문에 메인 서비스 데이터 패킷의 시간적인 위치가 상대적으로 이동하게 된다. 그리고 수신 시스템의 메인 서비스 데이터 처리를 위한 시스템 목표 디코더(즉, MPEG 디코더)에서는 메인 서비스 데이터만을 수신하여 복호하고 모바일 서비스 데이터 패킷은 널 데이터 패킷으로 인식하여 버리게 된다.
따라서 수신 시스템의 시스템 목표 디코더가 데이터 그룹과 다중화된 메인 서비스 데이터 패킷을 수신할 경우 패킷 지터가 발생하게 된다.
이때 상기 시스템 목표 디코더에서는 비디오 데이터를 위한 여러 단계의 버퍼가 존재하고 그 사이즈가 상당히 크기 때문에 상기 패킷 다중화기(240)에서 발생시키는 패킷 지터는 비디오 데이터의 경우, 큰 문제가 되지 않는다. 그러나 시스템 목표 디코더가 가지는, 오디오 데이터를 위한 버퍼의 사이즈는 작기 때문에 문제가 될 수 있다.
즉, 상기 패킷 지터로 인해 수신 시스템의 메인 서비스 데이터를 위한 버퍼, 예를 들면 오디오 데이터를 위한 버퍼에서 오버플로우(overflow)나 언더플로우(underflow)가 발생할 수 있다.
따라서 패킷 지터 경감기(220)에서는 상기 시스템 목표 디코더의 버퍼에서 오버플로우 또는 언더플로우가 발생하지 않도록 메인 서비스 데이터 패킷의 상대적인 위치를 재조정한다.
본 발명에서는 오디오 버퍼의 동작에 주는 영향을 최소화하기 위하여 메인 서비스 데이터의 오디오 데이터 패킷의 위치를 재배치하는 실시예들을 설명한다. 상기 패킷 지터 경감기(220)는 메인 서비스의 오디오 데이터 패킷이 최대한 균일하게 위치할 수 있도록 메인 서비스 데이터 구간에서 오디오 데이터 패킷을 재배치한다.
상기 패킷 지터 경감기(220)에서 메인 서비스의 오디오 데이터 패킷을 재배치하는 기준은 다음과 같다. 이때 상기 패킷 지터 경감기(220)는 후단의 패킷 다중 화기(240)의 다중화 정보를 알고 있다고 가정한다.
첫번째, 버스트 온 구간 내 메인 서비스 데이터 구간, 예를 들어 두개의 데이터 그룹 사이에 위치하는 메인 서비스 데이터 구간에서 오디오 데이터 패킷이 한 개 존재하는 경우에는 오디오 데이터 패킷을 메인 서비스 데이터 구간의 제일 앞에 배치하고, 2개 존재하는 경우에는 제일 앞과 제일 뒤에 배치하며, 3개 이상 존재하는 경우에는 제일 앞과 제일 뒤에 배치하고 나머지를 그 사이에 균등한 간격으로 배치한다.
두번째, 버스트 온 구간 시작 전의 메인 서비스 데이터 구간 즉, 버스트 오프 구간에서는 제일 마지막 위치에 오디오 데이터 패킷을 배치한다.
세번째, 버스트 온 구간이 끝난 후 버스트 오프 구간의 메인 서비스 데이터 구간에서는 제일 앞에 오디오 데이터 패킷을 배치한다.
그리고 오디오 데이터가 아닌 패킷들은 입력되는 순서대로 오디오 데이터 패킷의 위치를 제외한 공간에 배치한다.
한편 상기와 같이 메인 서비스 데이터 패킷의 위치를 상대적으로 재조정하게 되면 그에 따른 PCR(Program Clock Reference) 값을 수정해 주어야 한다. PCR 값은 MPEG 디코더의 시간을 맞주기 위한 시간 기준값으로 TS 패킷의 특정 영역에 삽입되어 전송되어진다. 상기 패킷 지터 경감기(220)에서 PCR 값 수정의 기능도 수행하는 것을 일 실시예로 한다.
상기 패킷 지터 경감기(220)의 출력은 패킷 다중화기(240)로 입력된다. 상기 패킷 다중화기(240)는 전술한 바와 같이 패킷 지터 경감기(220)에서 출력되는 메인 서비스 데이터 패킷과 전처리기(230)에서 출력되는 모바일 서비스 데이터 패킷을 기 설정된 다중화 규칙에 따라 버스트 구조로 다중화하여 후 처리기(250)의 데이터 랜더마이저(251)로 출력한다.
상기 데이터 랜더마이저(251)는 입력된 데이터가 메인 서비스 데이터 패킷이면 기존의 랜더마이저와 동일하게 랜더마이징을 수행한다. 즉, 메인 서비스 데이터 패킷 내 동기 바이트를 버리고 나머지 187 바이트를 내부에서 발생시킨 의사랜덤(pseudo random) 바이트를 사용하여 랜덤하게 만든 후 RS 부호기/비체계적 RS 부호기(252)로 출력한다.
그러나 입력된 데이터가 모바일 서비스 데이터 패킷이면, 패킷의 일부만을 랜더마이징할 수도 있다. 예를 들어, 상기 전처리기(230)에서 모바일 서비스 데이터에 대해 미리 랜더마이징을 수행하였다고 가정하면, 상기 데이터 랜더마이저(251)는 상기 모바일 서비스 데이터 패킷에 포함된 4바이트의 MPEG 헤더 중 동기 바이트를 버리고 나머지 3바이트에 대해서만 랜더마이징을 수행하여 상기 RS 부호기/비체계적 RS 부호기(252)로 출력한다. 즉, 상기 MPEG 헤더를 제외한 나머지 모바일 서비스 데이터에 대해서는 랜더마이징을 수행하지 않고 상기 RS 부호기/비체계적 RS 부호기(252)로 출력한다. 상기 데이터 랜더마이저(251)는 모바일 서비스 데이터 패킷에 포함된 기지 데이터(또는 기지 데이터 위치 홀더)와 초기화 데이터 위치 홀더에 대해서는 랜더마이징을 수행할 수도 있고 수행하지 않을 수도 있다.
상기 RS 부호기/비체계적 RS 부호기(252)는 상기 데이터 랜더마이저(251)에서 랜더마이징되는 데이터 또는 바이패스되는 데이터에 대해 RS 부호화를 수행하여 20바이트의 RS 패리티를 부가한 후 데이터 인터리버(253)로 출력한다. 이때 상기 RS 부호기/비체계적 RS 부호기(252)는 입력된 데이터가 메인 서비스 데이터 패킷인 경우 기존 방송 시스템과 동일하게 체계적 RS 부호화를 수행하여 20바이트의 RS 패리티를 187바이트의 데이터 뒤에 부가한다. 그리고 모바일 서비스 데이터 패킷이면 비체계적 RS 부호화를 수행하고, 이때 얻은 20바이트의 RS 패리티를 패킷 내 미리 정해진 패리티 바이트 위치에 삽입한다.
상기 데이터 인터리버(253)는 바이트 단위의 길쌈(convolutional) 인터리버이다.
상기 데이터 인터리버(253)의 출력은 패리티 치환기(254)와 비체계적 RS 부호기(255)로 입력된다.
한편 상기 패리티 치환기(254)의 후단에 위치한 트렐리스 부호화부(256)의 출력 데이터를 송/수신측에서 약속에 의해 정의한 기지 데이터로 하기 위해 먼저 트렐리스 부호화부(256) 내의 메모리의 초기화가 필요하다. 즉 입력되는 기지 데이터 열이 트렐리스 부호화되기 전에 먼저 트렐리스 부호화부(256)의 메모리를 초기화시켜야 한다.
이때 입력되는 기지 데이터 열의 시작 부분은 실제 기지 데이터가 아니라 전처리기(230) 내 그룹 포맷터에서 삽입된 초기화 데이터 위치 홀더이다. 따라서 입력되는 기지 데이터 열이 트렐리스 부호화되기 직전에 초기화 데이터를 생성하여 해당 트렐리스 메모리 초기화 데이터 위치 홀더와 치환하는 과정이 필요하다.
그리고 상기 트렐리스 메모리 초기화 데이터는 상기 트렐리스 부호화부(256) 의 메모리 상태에 따라 그 값이 결정되어 생성된다. 또한 치환된 초기화 데이터에 의한 영향으로 RS 패리티를 다시 계산하여 상기 데이터 인터리버(253)에서 출력되는 RS 패리티와 치환하는 과정이 필요하다.
따라서 상기 비체계적 RS 부호기(255)에서는 상기 데이터 인터리버(253)로부터 초기화 데이터로 치환될 초기화 데이터 위치 홀더가 포함된 모바일 서비스 데이터 패킷을 입력받고, 트렐리스 부호화부(256)로부터 초기화 데이터를 입력받는다. 그리고 입력된 모바일 서비스 데이터 패킷 중 초기화 데이터 위치 홀더를 초기화 데이터로 치환하고 상기 모바일 서비스 데이터 패킷에 부가된 RS 패리티 데이터를 제거한 후 비체계적인 RS 부호화를 수행한다. 그리고 상기 비체계적 RS 부호화하여 얻은 RS 패리티를 상기 패리티 치환기(255)로 출력한다. 그러면 상기 패리티 치환기(255)는 모바일 서비스 데이터 패킷 내 데이터는 상기 데이터 인터리버(253)의 출력을 선택하고, RS 패리티는 비체계적 RS 부호기(255)의 출력을 선택하여 트렐리스 부호화부(256)로 출력한다.
한편 상기 패리티 치환기(254)는 메인 서비스 데이터 패킷이 입력되거나 또는 치환될 초기화 데이터 위치 홀더가 포함되지 않은 모바일 서비스 데이터 패킷이 입력되면 상기 데이터 인터리버(253)에서 출력되는 데이터와 RS 패리티를 선택하여 그대로 트렐리스 부호화부(256)로 출력한다.
상기 트렐리스 부호화부(256)는 바이트 단위의 데이터를 심볼 단위로 바꾸고 12-way 인터리빙하여 트렐리스 부호화한 후 동기 다중화기(260)로 출력한다.
상기 동기 다중화기(260)는 트렐리스 부호화부(256)의 출력에 필드 동기와 세그먼트 동기를 삽입하여 송신부(270)의 파일롯 삽입기(271)로 출력한다.
상기 파일롯 삽입기(271)에서 파일롯이 삽입된 데이터는 변조기(272)에서 기 설정된 변조 방식 예를 들어, VSB 방식으로 변조된 후 RF 업 컨버터(273)를 통해 각 수신 시스템으로 전송된다.
블록 처리기
도 9는 본 발명의 일 실시예에 따른 블록 처리기의 상세 블록도로서, 바이트-비트 변환기(401), 심볼 부호기(402), 심볼 인터리버(403), 및 심볼-바이트 변환기(404)를 포함할 수 있다.
상기 바이트-비트 변환기(401)는 상기 RS 프레임 부호기(112)에서 입력되는 모바일 서비스 데이터 바이트를 비트로 구분하여 심볼 부호기(402)로 출력한다.
상기 바이트-심볼 변환기(401)는 전송 파라미터 등을 담고있는 시그널링(signaling) 정보도 입력받을 수 있으며, 이 시그널링 정보 바이트들도 비트로 구분하여 심볼 부호기(402)로 출력한다. 여기서 상기 전송 파라미터를 담고 있는 시그널링 정보는 모바일 서비스 데이터 처리 과정과 동일하게 데이터 랜더마이저(301)와 RS 프레임 부호기(302)를 거쳐 블록 처리기(303)로 입력될 수도 있고, 또는 상기 데이터 랜더마이저(301)와 RS 프레임 부호기(302)를 거치지 않고 바로 블록 처리기(303)로 입력될 수도 있다.
상기 심볼 부호기(402)는 입력되는 데이터 G비트를 H비트로 부호화하여 출력하는 G/H 부호기이다.
본 발명에서는 일 실시예로, 상기 심볼 부호기(402)는 1/2 부호율의 부호화 (또는 1/2 부호화라 하기도 함) 또는 1/4 부호율의 부호화(또는 1/4 부호화라 하기도 함)를 수행한다고 가정한다. 상기 심볼 부호기(402)는 입력받은 모바일 서비스 데이터들과 시그널링 정보에 대해 1/2 부호화 또는 1/4 부호화를 수행한다. 이후 상기 시그널링 정보도 모바일 서비스 데이터로 간주되어 처리된다.
상기 심볼 부호기(402)에서는 1/2 부호화인 경우에는 1비트를 입력받아 2비트(즉, 1개의 심볼)로 부호화하여 출력하고, 1/4 부호화인 경우에는 1비트를 입력받아 4비트(즉, 2개의 심볼)로 부호화하여 출력한다.
도 10은 상기 심볼 부호기(402)의 일 실시예를 보인 상세 블록도로서, 2개의 지연기(501,503)와 3개의 가산기(502,504,505)로 구성되어, 입력 데이터 비트 U를 부호화하여 4비트(u0~u3)로 출력한다. 이때 상기 데이터 비트 U는 최상위 비트 u0로 그대로 출력됨과 동시에 부호화되어 하위 비트 u1u2u3로 출력된다.
즉, 입력 데이터 비트 U는 그대로 최상위 비트 u0로 출력됨과 동시에 제1,제3 가산기(502,505)로 출력된다. 상기 제1 가산기(502)는 입력 데이터 비트 U와 제1 지연기(501)의 출력을 더하여 제2 지연기(503)로 출력하며, 상기 제2 지연기(502)에서 일정 시간(예를 들어 1 클럭) 지연된 데이터는 하위 비트 u1로 출력됨과 동시에 제1 지연기(501)로 피드백된다. 상기 제1 지연기(501)는 상기 제2 지연기(502)에서 피드백되는 데이터를 일정 시간(예를 들어, 1 클럭) 지연시켜 제1 가산기(502)와 제 2 가산기(504)로 출력한다. 상기 제2 가산기(504)는 제1,제2 지연기(501,503)의 출력을 더하여 하위 비트 u2로 출력한다. 상기 제3 가산기(505)는 입력 데이터 비트 U와 제2 가산기(504)의 출력을 더하여 하위 비트 u3으로 출력한 다.
이때 상기 심볼 부호기(402)는 입력 데이터 비트 U가 1/2 부호율로 부호화될 데이터라면 4개의 출력 비트 u0u1u2u3 중 u0u1 비트로 한 심볼을 구성하여 출력하면 된다. 또한 1/4 부호율로 부호화될 데이터라면 u0u1 비트로 구성된 심볼을 출력하고, 이어 u2u3 비트로 된 또 다른 심볼을 출력하면 된다. 다른 실시예로, 1/4 부호율로 부호화될 데이터라면 u0u1 비트로 구성된 심볼을 두 번 반복하여 출력할 수도 있다.
또 다른 실시예로, 상기 심볼 부호기(402)에서는 4개의 출력 비트 u0u1u2u3을 모두 출력하고, 후단의 심볼 인터리버(403)에서 1/2 부호율인 경우에는 4개의 출력 비트 u0u1u2u3 중 u0u1 비트로 구성된 심볼만을 선택하고, 1/4 부호율인 경우에는 u0u1 비트로 구성된 심볼과 u2u3 비트로 구성된 또 다른 심볼을 모두 선택하도록 설계할 수도 있다. 또 다른 실시예로, 1/4 부호율인 경우에는 u0u1 비트로 구성된 심볼을 반복하여 선택하도록 할 수도 있다.
상기 심볼 부호기(402)의 출력은 심볼 인터리버(403)로 입력되고, 상기 심볼 인터리버(403)는 상기 심볼 부호기(402)의 출력 데이터에 대해 심볼 단위로 블록 인터리빙을 수행한다.
상기 심볼 인터리버(403)는 구조적으로 어떤 순서 재배열을 하는 인터리버이면 어느 인터리버라도 적용될 수 있다. 하지만, 본 발명에서는 순서를 재배열하려는 심볼의 길이가 다양한 경우에도 적용 가능한 가변 길이 심볼 인터리버를 사용하는 것을 일 실시예로 설명한다.
도 11은 본 발명에 따른 심볼 인터리버의 일 실시예를 보인 도면으로서, 순서를 재배열하려는 심볼의 길이가 다양한 경우에도 적용 가능한 가변 길이 심볼 인터리버이다.
특히 도 11은 K=6, L=8인 경우의 심볼 인터리버의 예를 보이고 있다. 상기 K는 심볼 부호기(402)에서 심볼 인터리빙을 위해 출력되는 심볼들의 개수이고, L은 심볼 인터리버(403)에서 실제로 인터리빙이 되는 심볼들의 개수이다.
본 발명의 심볼 인터리버(403)는 L = 2n(여기서 n은 자연수)이면서 L K 조건을 만족하여야 한다. 만일 K와 L의 값이 차이가 나게 되면, 차이나는 개수(=L-K)만큼 널(null 또는 dummy) 심볼이 추가되어 인터리빙 패턴이 만들어진다.
그러므로 상기 K는 인터리빙을 위해 상기 심볼 인터리버(403)로 입력되는 실제 심볼들의 블록 크기가 되고, L은 상기 심볼 인터리버(403)에서 생성된 인터리빙 패턴에 의해 인터리빙이 이루어지는 인터리빙 단위가 된다.
도 11은 그 예를 보인 것으로서, 인터리빙하기 위해 심볼 부호기(402)에서 출력되는 심볼의 수(=K)는 6 심볼이고, 실제 인터리빙 단위(L)는 8 심볼이 된다. 따라서 도 11의 (a)와 같이 2 심볼이 널 심볼로 추가되어 인터리빙 패턴이 만들어진다.
하기의 수학식 2는 상기 심볼 인터리버(403)에서 순서를 재배열하고자 하는 심볼 K개를 순서대로 입력받은 후, L = 2n이면서 L ≥ K 조건을 만족하는 L을 찾아 인터리빙 패턴을 만들어 재배열하는 과정을 수학식으로 표현한 것이다.
모든 위치 0 ≤ i ≤ L-1 에 대해서,
P(i) = S × i × (i+1) / 2 mod L
여기서 L ≥ K , L = 2n이고, n, S는 자연수이다. 도 11에서 S는 89, L은 8로 가정하고, 구현한 인터리빙 패턴 및 인터리빙 예이다.
상기 수학식 2, 도 11의 (b)와 같이 L 심볼 단위로 K개의 입력 심볼과 (L-K)개의 널 심볼의 순서를 재배열한 후 하기의 수학식 3, 도 11의 (c)와 같이 널 심볼의 위치를 제거하고 다시 정렬하며, 정렬된 순서대로 인터리빙된 심볼을 심볼-바이트 변환기(404)로 출력된다.
if P(i) > K-1, then P(i) 위치는 제거하고 정렬
상기 심볼-바이트 변환기(404)는 상기 심볼 인터리버(403)에서 순서 재배열이 완료되어 출력되는 모바일 서비스 데이터 심볼들을 바이트로 변환하여 그룹 포맷터(304)로 출력한다.
도 12a는 본 발명의 다른 실시예에 따른 블록 처리기의 상세 블록도로서, 인터리빙부(Interleaving nit)(610), 및 블록 포맷터(block formatter)(620)를 포함할 수 있다.
상기 인터리빙부(610)는 바이트-심볼 변환기(converter)(611), 심볼-바이트 변환기(612), 심볼 인터리버(613), 및 심볼-바이트 변환기(614)를 포함할 수 있다. 상기 심볼 인터리버는 블록 인터리버라 하기도 한다.
상기 인터리빙부(610)의 바이트- 심볼 변환기(611)는 상기 RS 프레임 부호기(302)에서 바이트 단위로 출력되는 모바일 서비스 데이터(X)를 심볼 단위로 변환하여 심볼-바이트 변환기(612)와 심볼 인터리버(613)로 출력한다. 즉, 상기 바이트- 심볼 변환기(611)는 입력되는 모바일 서비스 데이터 바이트(=8비트)의 2비트를 1개의 심볼로 하여 출력한다. 이는 트렐리스 부호화부(256)의 입력이 2비트로 된 심볼 단위이기 때문이다. 상기 블록 처리기(303)와 트렐리스 부호화부(256)와의 관계는 뒤에서 설명한다.
이때 상기 바이트-심볼 변환기(611)는 전송 파라미터 등을 담고 있는 시그널링(signaling) 정보도 입력받을 수 있으며, 이 시그널링 정보 바이트들도 심볼 단위로 구분하여 심볼-바이트 변환기(612)와 심볼 인터리버(613)로 출력한다.
상기 심볼-바이트 변환기(612)는 상기 바이트-심볼 변환기(611)에서 출력되는 4개의 심볼을 모아 바이트를 구성한 후 블록 포맷터(620)로 출력한다. 이때 상기 심볼-바이트 변환기(612)와 상기 바이트-심볼 변환기(611)는 서로 역의 과정이기 때문에 두 블록의 결과는 상쇄되어 도 12b에서와 같이 입력 데이터 X가 그대로 블록 포맷터(620)로 바이패스되는 효과가 있다. 즉, 도 12b의 인터리빙부(610)는 도 12a의 인터리빙부(610)와 등가적인 구조를 가지므로, 동일한 부호를 사용한다.
상기 심볼 인터리버(613)는 상기 바이트-심볼 변환기(611)에서 출력되는 데이터에 대해 심볼 단위로 블록 인터리빙을 수행하여 심볼-바이트 변환기(614)로 출력한다.
상기 심볼 인터리버(613)는 구조적으로 순서 재배열을 하는 인터리버이면 어떠한 인터리버라도 적용될 수 있다. 본 발명에서는 순서를 재배열하려는 심볼의 길이가 다양한 경우에도 적용 가능한 가변 길이 인터리버를 사용하는 것을 일 실시예로 한다. 예를 들면, 도 12a, 도 12b에서도 도 11의 심볼 인터리버를 적용할 수 있다.
상기 심볼-바이트 변환기(614)는 상기 심볼 인터리버(613)에서 순서 재배열이 완료되어 출력되는 모바일 서비스 데이터 심볼들을 모아 바이트를 구성한 후 블록 포맷터(620)로 출력한다. 즉, 상기 심볼-바이트 변환기(614)는 상기 심볼 인터리버(613)에서 출력되는 4개의 심볼을 모아 바이트를 구성한다.
상기 블록 포맷터(620)는 도 13과 같이 각 심볼-바이트 변환기(612,614)의 출력을 블록 내에서 일정 기준에 따라 배열하는 역할을 수행한다. 이때 상기 블록 포맷터(620)는 트렐리스 부호화부(256)와 관계되어 동작한다.
즉, 상기 블록 포맷터(620)는 상기 트렐리스 부호화부(256)로 입력되는 메인 서비스 데이터, 기지 데이터, RS 패리티 데이터, MPEG 헤더 데이터 등 모바일 서비스 데이터를 제외한 나머지 데이터들의 위치(또는 순서)를 고려하여 각 심볼-바이트 변환기(612,614)의 모바일 서비스 데이터 출력 순서를 결정한다.
상기 트렐리스 부호화부(256)는 일 실시예로서, 내부에 12개의 트렐리스 부호기를 구비하고 있다.
도 14는 본 발명의 일 실시예에 따른 트렐리스 부호화부(256)의 상세 블록도로서, 12개의 동일한 트렐리스 부호기가 노이즈 분산을 위해 인터리버로 결합되는 예를 보이고 있다. 상기 각 트렐리스 부호기는 프리코더(Pre coder)를 포함할 수 있다.
도 15a는 상기 블록 처리기(303)와 트렐리스 부호화부(256)가 연접(concatenation)된 모습을 도시하고 있다. 실제로 송신 시스템에서는 도 3과 같이 블록 처리기(303)를 포함하는 전처리기(230)와 트렐리스 부호화부(256) 사이에 다수의 블록이 존재하지만, 수신 시스템에서는 두 블록이 연접된 것으로 간주하여 복호를 수행하게 된다.
그런데 상기 트렐리스 부호화부(256)로 입력되는 메인 서비스 데이터, 기지 데이터, RS 패리티 데이터, MPEG 헤더 데이터 등 모바일 서비스 데이터를 제외한 데이터들은 상기 블록 처리기(303)와 트렐리스 부호화부(256) 사이에 존재하는 블록들에서 부가되는 데이터들이다. 도 15b는 이러한 상황을 고려하여 상기 블록 처리기(303)와 트렐리스 부호화부(256) 사이에 데이터 처리부(650)가 배치되는 예를 보이고 있다.
여기서 상기 블록 처리기(303)의 인터리빙부(610)는 1/2 부호율로 부호화를 수행하는 경우, 도 12a(또는 도 12b)와 같이 구성할 수 있다. 상기 데이터 처리부(650)는 도 3을 예로 들 경우, 그룹 포맷터(304), 데이터 인터리버(305), 패킷 포맷터(306), 패킷 다중화기(240), 후 처리기(250)의 데이터 랜더마이저(251), RS 부호기/비체계적 RS 부호기(252), 데이터 인터리버(253), 패리티 치환기(254), 비체계적 RS 부호기(255)를 포함할 수 있다.
이때 상기 트렐리스 부호화부(256)는 입력되는 데이터를 심볼화하여 기 정의 된 방식에 따라 각각의 트렐리스 부호기로 나누어 보낸다. 이때, 한 바이트는 2비트로 구성된 4개의 심볼로 변환되고, 하나의 바이트로부터 만들어진 심볼들은 모두 같은 트렐리스 부호기로 전송된다. 그러면 각 트렐리스 부호기는 입력 심볼 중 상위 비트는 프리코딩시켜 최상위 출력 비트 C2로 출력하고, 하위 비트는 트렐리스 부호화하여 두 개의 출력 비트 C1,C0으로 출력한다.
상기 블록 포맷터(620)는 각 심볼-바이트 변환기의 출력 바이트가 서로 다른 트렐리스 부호기로 전송될 수 있도록 제어한다.
다음은 도 9 내지 도 12를 참조하여 상기 블록 포맷터(620)의 상세 동작을 설명하기로 한다.
도 12a를 예로 들 경우, 심볼-바이트 변환기(612)의 출력 바이트와 심볼-바이트 변환기(614)의 출력 바이트는 상기 블록 포맷터(620)의 제어에 의해 트렐리스 부호화부(256)의 서로 다른 트렐리스 부호기로 입력된다.
본 발명에서는 설명의 편의를 위해, 상기 심볼-바이트 변환기(612)의 출력 바이트를 X라 하고, 상기 심볼-바이트 변환기(614)의 출력 바이트를 Y라 하기로 한다. 도 13의 (a)에서 각 숫자(0~11)는 트렐리스 부호화부(256)의 1번째부터 12번째까지의 트렐리스 부호기를 각각 지시한다.
그리고 상기 블록 포맷터(620)는 상기 심볼-바이트 변환기(612)의 출력 바이트들이 트렐리스 부호화부(256)의 0번부터 5번까지의 트렐리스 부호기(0~5)로 입력되고, 상기 심볼-바이트 변환기(614)의 출력 바이트들이 6번부터 11번까지의 트렐리스 부호기(6~11)로 입력되도록, 각 심볼-바이트 변환기(612,614)의 출력 순서를 배열하는 것을 일 실시예로 한다. 여기서 상기 심볼-바이트 변환기(612)의 출력 바이트들이 할당되는 트렐리스 부호기들 및 상기 심볼-바이트 변환기(614)의 출력 바이트들이 할당되는 트렐리스 부호기들은 본 발명의 이해를 돕기 위한 일 실시예일 뿐이다.
또한 상기 블록 처리기(303)의 입력이 12바이트로 구성된 블록이라고 가정할 때, 상기 심볼-바이트 변환기(612)에서는 X0~X11까지 12바이트가 출력되고, 상기 심볼-바이트 변환기(614)에서도 Y0~Y11까지 12바이트가 출력되는 것을 일 실시예로 한다.
도 13의 (b)는 트렐리스 부호화부(256)로 입력되는 데이터의 일 실시예를 보인 것으로서, 모바일 서비스 데이터뿐만 아니라 메인 서비스 데이터 및 RS 패리티 데이터가 트렐리스 부호화부(256)로 입력되어 각 트렐리스 부호기로 분배되는 예를 보이고 있다. 즉, 상기 블록 처리기(303)로부터 출력된 모바일 서비스 데이터가 그룹 포맷터(304)를 거치면서, 상기 모바일 서비스 데이터에 도 13의 (a)와 같이 메인 서비스 데이터, 그리고 RS 패리티 데이터가 섞인 형태로 출력된다고 할 때, 각 바이트들은 데이터 인터리빙 후의 데이터 그룹 내 위치에 따라 12개의 트렐리스 부호기로 입력된다.
여기에 앞서 언급한 원칙에 따라 심볼-바이트 변환기(612,614)의 출력 바이트들(X,Y)을 해당 트렐리스 부호기에 할당하면, 각 트렐리스 부호기의 입력은 도 13의 (b)와 같은 형태가 될 수 있다.
즉, 도 13의 (b)를 보면, 상기 심볼-바이트 변환기(612)에서 출력되는 6개의 모바일 서비스 데이터 바이트(X0~X5)는 상기 트렐리스 부호화부(256)의 1번째부터 6번째 트렐리스 부호기(0~5)에 순차적으로 할당(또는 분배)되고, 상기 심볼-바이트 변환기(614)에서 출력되는 2개의 모바일 서비스 데이터 바이트(Y0,Y1)는 7번째,8번째 트렐리스 부호기(6,7)에 순차적으로 할당된다. 그리고 5개의 메인 서비스 데이터 바이트 중 4개의 메인 서비스 데이터 바이트가 9번째부터 12번째 트렐리스 부호기(8~11)에 순차적으로 할당되고, 다음 1개의 메인 서비스 데이터 바이트가 다시 첫 번째 트렐리스 부호기(0)에 할당되는 예를 보이고 있다.
상기 도 13의 (b)와 같이 모바일 서비스 데이터, 메인 서비스 데이터, RS 패리티 데이터 등이 각 트렐리스 부호기에 할당된다고 가정하자. 그리고 전술한 바와 같이 상기 블록 처리기(303)의 입력이 12바이트로 구성된 블록이고, 상기 심볼-바이트 변환기(612)에서는 X0~X11까지 12바이트가 출력되고, 상기 심볼-바이트 변환기(614)에서도 Y0~Y11까지 12바이트가 출력된다고 가정하자. 이 경우 상기 블록 포맷터(620)는 도 13의 (c)와 같이 X0~X5,Y0,Y1,X6~X10,Y2~Y7,X11,Y8~Y11 순으로 상기 심볼-바이트 변환기(612,614)의 출력을 배열하여 출력한다.
즉, 각 데이터 바이트들이 전송 프레임 내의 어느 위치에 삽입되는가에 따라 각각 어떠한 트렐리스 부호기에서 부호화되는지가 결정된다. 이때 모바일 서비스 데이터뿐만 아니라 메인 서비스 데이터와 MPEG 헤더 데이터, RS 패리티 데이터 등도 트렐리스 부호화부(256)에 입력되므로, 상기와 같은 동작을 하기 위해서 블록 포맷터(620)는 데이터 인터리빙 이후의 데이터 그룹 포맷에 대한 정보를 알고 있다고 가정한다.
도 16은 본 발명에 따른 1/N 부호율로 부호화를 수행하는 블록 처리기의 일 실시예를 보인 구성 블록도로서, 병렬로 구성된 (N-1)개의 심볼 인터리버(741~74N-1)를 포함한다. 즉, 1/N 부호율을 갖는 블록 처리기는 원래의 입력 데이터가 그대로 블록 포맷터(730)로 전달되는 가지(branch or path)를 포함하여 총 N개의 가지를 갖는다. 그리고 각 가지의 심볼 인터리버(741~74N-1)는 서로 다른 형태의 심볼 인터리버로 구성될 수 있다. 상기 (N-1)개의 심볼 인터리버(741~74N-1)의 출력단에는 대응되는 (N-1)개의 심볼-바이트 변환기(751~75N-1)가 구성될 수 있다. 상기 (N-1)개의 심볼-바이트 변환기(751~75N-1)의 출력도 블록 포맷터(730)로 입력된다.
본 발명에서 N은 12보다 같거나 작은 것을 일 실시예로 한다.
만일 N이 12라면 상기 블록 포맷터(730)는 12번째 심볼-바이트 변환기(75N-1)의 출력 바이트는 12번째 트렐리스 부호기로 입력되도록 출력 데이터를 배열할 수 있다. 만일 N이 3이라면 상기 블록 포맷터(730)는 심볼-바이트 변환기(720)의 출력 바이트들은 트렐리스 부호화부(256)의 첫 번째부터 4번째 트렐리스 부호기로 입력되고, 심볼-바이트 변환기(751)의 출력 바이트들은 5번째부터 8번째 트렐리스 부호기로 입력되며, 심볼-바이트 변환기(752)의 출력 바이트들은 9번째부터 12번째 트렐리스 부호기로 입력되도록 제어할 수 있다.
이때 각 심볼-바이트 변환기의 출력 데이터 순서는 각 심볼-바이트 변환기에서 출력되는 모바일 서비스 데이터와 섞이게 되는 모바일 서비스 데이터 외의 데이터들의 데이터 그룹 내 위치에 따라 달라질 수 있다.
도 17은 본 발명의 또 다른 실시예에 블록 처리기의 상세 블록도를 보인 것 으로서, 블록 포맷터를 제거하고 블록 포맷터의 역할을 그룹 포맷터에서 수행하도록 하는 것이다. 즉, 도 17의 블록 처리기는 바이트-심볼 변환기(810), 심볼-바이트 변환기(820,840), 및 심볼 인터리버(830)를 포함할 수 있다. 이 경우 각 심볼-바이트 변환기(820,840)의 출력은 그룹 포맷터(850)로 입력된다.
또한 상기 블록 처리기는 심볼 인터리버와 심볼-바이트 변환기를 더 추가하여 원하는 부호율을 얻을 수 있다. 만일 1/N 부호율로 부호화를 원하면 원래의 입력 데이터가 그대로 그룹 포맷터(850)로 전달되는 가지(branch or path)를 포함하여 총 N개의 가지와, N-1개의 가지에 병렬로 구성되는 (N-1)개의 심볼 인터리버, 심볼-바이트 변환기를 구비하면 된다. 이때 상기 그룹 포맷터(850)는 MPEG 헤더, 비체계적 RS 패리티, 메인 서비스 데이터를 위한 위치를 확보하는 위치 홀더를 삽입하는 동시에 블록 처리기의 각 가지로부터 출력되는 바이트들을 정해진 위치에 배치한다.
본 발명에서 제시하는 트렐리스 부호기의 개수, 심볼-바이트 변환기의 개수, 심볼 인터리버의 개수들은 바람직한 실시예이거나 단순한 예시인 바, 상기 수치들에 본 발명의 권리범위가 제한되지는 않는다. 또한 트렐리스 부호화부(256)의 각 트렐리스 부호기로 할당되는 바이트 종류 및 위치는 데이터 그룹 포맷에 따라 다양하게 변화될 수 있음은 본 발명이 속한 기술 분야에서 통상의 지식을 가진 자에게 명백한 것이다. 따라서 본 발명은 상기된 실시예로 한정되지 않는 것으로 이해되어야 한다.
상기와 같이 블록 처리기(303)에서 1/N 부호율로 부호화되어 출력되는 모바 일 서비스 데이터는 그룹 포맷터(304)로 입력된다. 여기서는 상기 블록 처리기(303)의 블록 포맷터에서 출력 데이터 순서가 데이터 그룹 내 바이트 위치에 따라 배열되어 출력되는 것을 일 실시예로 설명한다.
시그널링 정보 처리
본 발명에 따른 송신기(200)에서는 전송 파라미터를 여러 가지 방법, 및 위치에서 삽입하여 수신 시스템으로 전송할 수 있다.
본 발명의 이해를 돕기 위해 송신기에서 수신 시스템으로 전송해야 할 전송 파라미터에 대해 정의하기로 한다. 상기 전송 파라미터는 데이터 그룹 정보, 데이터 그룹 내 영역 정보, 수퍼 프레임을 구성하는 RS 프레임의 개수(Super frame size :SFS), RS 프레임에서 한 개 컬럼당 RS 패리티 개수(P), RS 프레임의 로우 방향으로 에러 유무를 판단하기 위해 추가되는 체크섬의 사용유무, 사용되는 경우 그 종류와 크기(현재는 CRC로 2바이트 추가), 한 개의 RS 프레임을 구성하는 데이터 그룹의 개수- RS 프레임은 한 개의 버스트 구간에 전송되므로 한 버스트내의 데이터 그룹 개수(Burst size : BS)와 동일하다 - 그리고 터보 코드 모드, RS 코드 모드 등이 있다. 또한 버스트 수신시 필요한 전송 파라미터로는 버스트 주기(Burst Period :BP) - 한 버스트 주기는 한 버스트의 시작부터 다음 버스트의 시작까지를 필드 개수로 카운트한 값이다.- 그리고 현재 전송되는 RS 프레임이 한 개의 수퍼 프레임 내에서 차지하는 순서(Permuted Frame Index : PFI)나 한 개의 RS 프레임(버스트) 내에서 현재 전송되고 있는 그룹의 순서(Group Index :GI), 버스트 사이즈 등이 있다. 버스트 운용방법에 따라서는 다음 버스트 시작까지 남아있는 필드 개수(Time to Next Burst :TNB)가 있으며, 이러한 정보들을 전송 파라미터로서 전송함에 의해, 수신 시스템에 전송되는 각 데이터 그룹마다 다음 버스트 시작까지의 상대적인 거리(필드 개수)를 알려줄 수도 있다.
상기 전송 파라미터에 포함되는 정보들은 본 발명의 이해를 돕기 위한 일 실시예일 뿐이며, 상기 전송 파라미터에 포함되는 정보들의 추가 및 삭제는 당업자에 의해 용이하게 변경될 수 있으므로 본 발명은 상기 실시예로 한정되지 않을 것이다.
제1 실시예로서, 전송 파라미터는 모바일 서비스 데이터 패킷 또는 데이터 그룹의 일정 영역을 할당하여 삽입할 수 있다. 이 경우, 수신 시스템에서는 일단 수신 신호에 대해 동기와 등화가 이루어지고 심볼 단위의 복호가 이루어지고 난 후, 패킷 디포맷터에서 모바일 서비스 데이터와 전송 파라미터를 분리해 검출할 수 있다. 상기 제1 실시예의 경우, 상기 전송 파라미터는 그룹 포맷터(304)에서 삽입하여 전송할 수 있다.
제2 실시예로서, 전송 파라미터를 다른 데이터와 다중화하여 삽입할 수도 있다. 예를 들면, 기지 데이터를 모바일 서비스 데이터와 다중화할 때, 기지 데이터를 삽입할 수 있는 위치에 기지 데이터 대신 전송 파라미터를 삽입할 수 있으며 또는 기지 데이터와 혼합하여 삽입할 수도 있다. 상기 제2 실시예의 경우, 상기 전송 파라미터는 그룹 포맷터(304) 또는 패킷 포맷터(306)에서 삽입하여 전송할 수 있다.
제3 실시예로서, 전송 파라미터는 전송 프레임의 필드 동기 세그먼트 내에 미사용 영역의 일부를 할당하여 삽입할 수도 있다. 이 경우, 수신 시스템에서는 수신 신호에 대한 심볼 단위의 복호가 이루어지기 전에 상기 전송 파라미터를 검출할 수 있기 때문에, 상기 블록 처리기(303), 그룹 포맷터(304)의 처리 방법에 대한 정보를 갖는 전송 파라미터를 상기 필드 동기 신호의 미사용 영역에 삽입할 수 있다. 즉, 상기 수신 시스템에서는 필드 동기 세그먼트를 이용하여 필드 동기를 획득한 후 약속된 위치에서 전송 파라미터를 검출할 수 있다. 상기 제3 실시예의 경우, 상기 전송 파라미터는 동기 다중화기(260)에서 삽입하여 전송할 수 있다.
제4 실시예로서, 상기 전송 파라미터는 트랜스포트 스트림(Transport Stream) 패킷보다 높은 계층(layer)에서 삽입하여 전송할 수도 있다. 이 경우, 수신 시스템에서는 신호를 수신하여 TS 패킷 계층 이상으로 이미 만들 수 있어야 하고, 이때 전송 파라미터의 용도는 현재 수신한 신호의 전송 파라미터에 대한 검증 역할과 이 후에 수신될 신호의 전송 파라미터를 주는 역할을 수행할 수 있다.
본 발명에서는 전송 신호에 관련된 여러 가지의 전송 파라미터들을 상기된 실시예들의 방법을 통해 삽입하여 전송하는데, 이때 상기 전송 파라미터는 어느 한 실시예를 통해서만 삽입하여 전송할 수도 있고, 일부 실시예를 통해서 삽입하여 전송할 수도 있으며, 모든 실시예를 통해 삽입하여 전송할 수도 있다. 또한 전송 파라미터 내 정보는 각 실시예에서 중복되어 삽입될 수도 있고, 필요한 정보만 해당 실시예의 해당 위치에서 삽입되어 전송될 수도 있다.
그리고 상기 전송 파라미터는 강인성을 확보하기 위하여 짧은 주기의 블록 부호화를 수행한 후 해당 영역에 삽입될 수 있다. 상기 짧은 주기의 블록 부호화 방법으로는 예를 들면, 커독(Kerdock) 부호화, BCH 부호화, RS 부호화, 전송 파라미터의 반복 부호화 등이 있다. 또한, 여러 개의 블록 부호화의 조합도 가능하다.
상기 전송 파라미터들을 모아 작은 크기의 블록 부호를 만들어 데이터 그룹 내에 signaling용으로 할당해둔 바이트에 삽입하여 전송할 수 있다. 하지만 이 경우 수신 측면에서 블록 복호기를 통과하여 전송 파라미터 값이 얻어지므로 블록 복호시 필요한 터보 코드 모드, RS 코드 모드 등의 전송 파라미터는 먼저 얻어져야 한다. 이 때문에 모드에 관련된 전송 파라미터는 기지 데이터 영역의 일부 구간에 전송 파라미터를 삽입할 수 있으며, 이 경우 빠른 복호를 위해 심볼의 상관관계를 이용할 수 있다. 다시 말해 직교성이 우수한 시퀀스 8개(예, 표2의 8가지 모드를 나타냄)중에 한 개를 현재 모드에 맞춰 각 데이터 그룹마다 이 구간에 삽입한다. 수신 시스템은 각 시퀀스들과 현재 수신된 시퀀스간에 상관 관계를 보고 부호 모드와 조합 모드를 판단하게 된다.
한편 상기 전송 파라미터가 필드 동기 세그먼트 영역 또는 기지 데이터 영역에 삽입되어 전송되는 경우, 상기 전송 파라미터가 전송 채널을 거쳤을 때 그 신뢰도가 떨어지므로, 전송 파라미터에 따라 기 정의된 패턴들 중 하나를 삽입하는 것도 가능하다. 이때 수신 시스템에서는 수신된 신호와 기 정의된 패턴들과의 상관 연산을 수행하여 전송 파라미터를 인식할 수 있다.
예를 들어, 버스트 내의 그룹의 개수가 5개인 경우를 A 패턴으로 송/수신측의 약속에 의해 미리 정하였다고 가정하자. 그러면 송신측에서는 버스트 내의 그룹의 개수가 5개일 때는 A 패턴을 삽입하여 전송한다. 그리고 수신측에서는 수신 데 이터와 미리 생성한 A 패턴을 포함하는 여러 기준 패턴들과의 상관 연산을 수행한다. 이때 수신 데이터와 A 패턴과의 상관값이 제일 크면 상기 수신 데이터는 전송 파라미터 특히, 버스트 내의 그룹의 개수를 나타내며 이때 그 개수는 5개라고 인식할 수 있게 된다.
다음은 전송 파라미터 삽입 및 전송하는 과정을 제1 내지 제3 실시예로 나누어 설명한다.
제1 실시예
도 18은 그룹 포맷터(304)에서 전송 파라미터를 입력받아 데이터 그룹 내 A 영역에 삽입하기 위한 본 발명의 개략도이다.
이때, 상기 그룹 포맷터(304)는 블록 처리기(303)로부터 모바일 서비스 데이터를 입력받는다. 이에 반해 전송 파라미터는 데이터 랜더마이징 과정, RS 프레임 부호화 과정, 블록 처리 과정 중 적어도 하나의 과정을 거친 후 그룹 포맷터(304)로 입력될 수도 있고, 세 과정 모두를 거치지 않고 그룹 포맷터(304)로 입력될 수도 있다. 또한 상기 전송 파라미터는 서비스 다중화기(100)에서 제공될 수도 있고, 송신기(200) 내부에서 발생하여 제공될 수도 있다.
상기 전송 파라미터는 수신 시스템에서 상기 데이터 그룹에 포함되는 데이터를 수신하여 처리하는데 필요한 정보들을 포함할 수 있다. 예를 들면, 상기 전송 파라미터는 데이터 그룹 정보, 다중화 정보 등을 포함할 수 있다.
상기 그룹 포맷터(304)에서는 데이터 그룹을 형성하는 규칙에 따라 데이터 그룹 내 해당 영역에 입력되는 모바일 서비스 데이터와 전송 파라미터를 삽입한다.
일 실시예로, 상기 전송 파라미터는 짧은 주기의 블록 부호화를 거친 후 상기 데이터 그룹 내 A 영역에 삽입될 수 있다. 특히 상기 전송 파라미터는 A 영역 중 약속된 임의의 위치에 삽입될 수 있다.
만일 상기 전송 파라미터가 블록 처리기(303)에서 블록 처리 과정을 거쳤다고 가정하면, 상기 블록 처리기(303)에서는 전송 파라미터를 담고있는 시그널링 정보도 모바일 서비스 데이터 처리 과정과 동일하게 1/2 부호화 또는 1/4 부호화를 수행한 후 그룹 포맷터(304)로 출력한다. 이후 상기 시그널링 정보도 모바일 서비스 데이터로 간주되어 처리된다.
도 19는 전송 파라미터를 입력받아 모바일 서비스 데이터와 동일한 과정으로 처리하는 블록 처리기의 일 예를 나타낸 블록도로서, 도 9의 구성 요소에 시그널링 정보 제공부(411)와 다중화기(412)가 더 추가된 예를 보이고 있다.
즉, 시그널링 정보 제공부(411)에서는 전송 파라미터를 담고있는 시그널링 정보를 다중화기(412)로 출력한다. 상기 다중화기(412)는 시그널링 정보와 RS 프레임 부호기(302)의 출력을 다중화하여 바이트-비트 변환기(401)로 출력한다.
상기 바이트-비트 변환기(401)는 다중화기(412)에서 출력되는 모바일 서비스 데이터 바이트 또는 시그널링 정보 바이트를 비트로 구분하여 심볼 부호기(402)로 출력한다.
이후의 동작은 상기된 도 9를 참조하면 되므로, 상세 설명을 생략한다.
만일, 상기 블록 처리기(303)의 상세 구성이 도 12, 도 15 내지 도 17 중 적 어도 하나를 적용한다면 상기 시그널링 정보 제공부(411)와 다중화기(412)는 바이드-심볼 변환기 전단에 구비될 수 있다.
또한 상기 시그널링 정보 제공부(411)에서 제공되는 전송 파라미터가 심볼 단위라면 상기 시그널링 정보 제공부(411)와 다중화기(412)는 바이트-심볼 변환기 후단에 구비될 수 있다.
제2 실시예
한편 상기 그룹 포맷터(304)에서 기 정해진 방법에 의해서 발생된 기지 데이터를 데이터 그룹 내 해당 영역에 삽입할 경우, 기지 데이터를 삽입할 수 있는 영역의 적어도 일부에 기지 데이터 대신 전송 파라미터를 삽입할 수도 있다.
예를 들어, 데이터 그룹 내 A 영역의 시작 부분에 긴 기지 데이터 열을 삽입하는 경우, 이 중 일부에는 기지 데이터 대신 전송 파라미터를 삽입할 수도 있다. 이때 상기 전송 파라미터가 삽입되는 영역을 제외한 나머지 영역에 삽입되는 기지 데이터 열 중 일부는 수신 시스템에서 데이터 그룹의 시작점을 포착하는데 사용할 수 있고, 다른 일부는 수신 시스템에서 채널 등화를 위해 사용할 수 있다.
그리고 상기 기지 데이터 영역에 기지 데이터 대신 전송 파라미터를 삽입하는 경우, 전송 파라미터는 짧은 주기로 블록 부호화하여 삽입할 수도 있고, 전술한 바와 같이 전송 파라미터에 따라 기 정의된 패턴을 삽입할 수도 있다.
만일 상기 그룹 포맷터(304)에서 데이터 그룹 내 기지 데이터를 삽입할 수 있는 영역에 기지 데이터 대신 기지 데이터 위치 홀더를 삽입하는 경우, 상기 전송 파라미터는 패킷 포맷터(306)에서 삽입할 수도 있다.
즉, 상기 패킷 포맷터(306)는 상기 그룹 포맷터(304)에서 기지 데이터 위치 홀더를 삽입한 경우 상기 기지 데이터 위치 홀더에 기지 데이터를 대체하여 삽입할 수도 있고, 상기 그룹 포맷터(304)에서 기지 데이터를 삽입한 경우에는 그대로 출력할 수도 있다.
도 20은 상기 패킷 포맷터(306)에서 전송 파라미터를 삽입하기 위하여 패킷 포맷터를 확장한 실시예를 보인 구성 블록도로서, 상기 패킷 포맷터(306)에 기지 데이터 발생부(351)와 시그널링 다중화기(352)가 더 포함된 구조이다. 상기 시그널링 다중화기(352)로 입력되는 전송 파라미터는 현재 버스트의 길이에 대한 정보, 다음 버스트의 시점을 알려주는 정보, 버스트 내 그룹들이 존재하는 위치와 길이, 버스트 내에서 현재 그룹에서 다음 그룹까지의 시간, 기지 데이터에 대한 정보 등을 포함할 수 있다.
상기 시그널링 다중화기(352)는 전송 파라미터와 기지 데이터 발생부(351)에서 발생된 기지 데이터 중 하나를 선택하여 패킷 포맷터(306)로 출력한다. 상기 패킷 포맷터(306)는 상기 데이터 디인터리버(305)에서 출력되는 기지 데이터 위치 홀더에 상기 시그널링 다중화기(352)에서 출력되는 기지 데이터 또는 전송 파라미터를 삽입하여 출력한다. 즉 상기 패킷 포맷터(306)는 기지 데이터 영역의 적어도 일부에 기지 데이터 대신 전송 파라미터를 삽입하여 출력한다.
예를 들어, 데이터 그룹 내 A 영역의 시작 부분에 기지 데이터 위치 홀더를 삽입한 경우, 상기 기지 데이터 위치 홀더 중 일부에 기지 데이터 대신 전송 파라미터를 삽입할 수 있다.
그리고 상기 기지 데이터 위치 홀더에 기지 데이터 대신 전송 파라미터를 삽입하는 경우, 상기 전송 파라미터는 짧은 주기로 블록 부호화하여 삽입할 수도 있고, 전송 파라미터에 따라 기 정의된 패턴을 삽입할 수도 있다.
즉, 상기 시그널링 다중화기(352)에서는 기지 데이터와 전송 파라미터(또는 전송 파라미터에 따라 정의된 패턴)를 다중화하여 새로운 기지 데이터 열을 구성한 후 패킷 포맷터(306)로 출력한다. 상기 패킷 포맷터(306)는 데이터 디인터리버(305)의 출력으로부터 메인 서비스 데이터 위치 홀더, RS 패리티 위치 홀더를 제거하고, 모바일 서비스 데이터와 MPEG 헤더, 시그널링 다중화기(352)의 출력으로 188 바이트의 모바일 서비스 데이터 패킷을 생성하여 패킷 다중화기(240)로 출력한다.
이 경우 각 데이터 그룹 내 A 영역은 각기 다른 기지 데이터 패턴을 갖게 된다. 따라서 수신 시스템에서는 기지 데이터열 중에서 약속된 구간의 심볼만을 떼어 전송 파라미터로 인식하게 된다.
이때 상기 기지 데이터는 송신 시스템의 설계 방식에 따라 패킷 포맷터(306)나 그룹 포맷터(304) 또는 블록 처리기(303)등 다른 위치에서 삽입될 수 있으므로, 기지 데이터를 삽입하는 블록에서 상기 기지 데이터 대신 전송 파라미터를 삽입할 수 있다.
상기 제2 실시예에서는 기지 데이터 영역 중 일부에 블록 처리기(303)의 처리 방법을 포함하는 전송 파라미터를 삽입하여 전송할 수 있다. 이 경우 전송 파라미터 심볼 자체를 위한 심볼 처리 방법과 그 위치가 정해져 있으며, 복호할 다른 데이터 심볼보다 시간적으로 먼저 송수신하도록 위치시켜야 한다. 그러면 수신 시스템에서 상기 전송 파라미터 심볼을 데이터 심볼 복호 전에 검출하여 데이터 심볼을 위한 복호에 사용할 수 있다.
제3 실시예
한편 전송 파라미터는 상기 필드 동기 세그먼트 영역에 삽입하여 전송할 수도 있다.
도 21은 전송 파라미터를 필드 동기 세그먼트 영역에 삽입하기 위해 동기 다중화기를 확장한 실시예를 보인 구성 블록도로서, 상기 동기 다중화기(260)에 시그널링 다중화기(261)가 더 포함된 구조이다.
통상 VSB 방식의 전송 프레임은 2개의 필드로 구성되고, 각 필드는 하나의 필드 동기 세그먼트와 312개의 데이터 세그먼트로 이루어진다. 각 데이터 세그먼트는 총 832 심볼로 구성된다. 이때, 한 데이터 세그먼트에서 첫 번째 4 심볼은 세그먼트 동기 부분이고, 한 필드에서 첫 번째 데이터 세그먼트는 필드 동기 부분이 된다.
하나의 필드 동기 신호는 하나의 데이터 세그먼트 길이로 이루어지며, 처음 4개의 심볼(symbol)에 데이터 세그먼트 동기 패턴이 존재하고, 그 다음에 유사 랜덤 시퀀스(Pseudo Random Sequence)인 PN 511, PN 63, PN 63, PN 63이 존재하며 그 다음 24 심볼에는 VSB 모드 관련 정보가 존재한다. 그리고 상기 VSB 모드 관련 정보가 존재하는 24 심볼 다음의 나머지 104 심볼은 미사용(Reserved)인데, 상기 미사용 영역 중 마지막 12 심볼에는 이전 세그먼트의 마지막 12 심볼 데이터를 복사 하여 놓는다. 그러면 상기 필드 동기 세그먼트에서 92개 심볼이 실제적인 미사용 영역이 된다.
따라서 상기 시그널링 다중화기(261)는 전송 파라미터가 필드 동기 세그먼트의 미사용 영역에 삽입되도록 기존의 필드 동기 세그먼트 심볼과 다중화하여 동기 다중화기(260)로 출력한다. 상기 동기 다중화기(260)는 세그먼트 동기 심볼, 데이터 심볼들, 그리고 상기 시그널링 다중화기(261)에서 출력되는 새로운 필드 동기 세그먼트를 다중화하여 새로운 전송 프레임을 구성한다. 상기 전송 파라미터가 삽입된 필드 동기 세그먼트를 포함하는 전송 프레임은 송신부(270)로 입력된다.
이때, 상기 전송 파라미터를 삽입하기 위한 필드 동기 세그먼트 내의 미사용 영역은 92 심볼의 미사용 영역의 일부 또는 전체가 될 수도 있다.
상기 미사용 영역에 삽입하는 전송 파라미터는 일 예로, 메인 서비스 데이터인지 모바일 서비스 데이터인지 또는 다른 종류의 모바일 서비스 데이터인지 등을 구별하는 정보를 포함할 수 있다.
만일, 상기 블록 처리기(303)의 처리 방법에 대한 정보가 전송 파라미터의 일부로서 전송되는 경우, 수신 시스템에서 블록 처리기(303)에 해당하는 복호가 수행될 때 이 블록 처리 방법에 대한 정보를 알아야 복호가 가능하다. 그러므로 블록 처리기(303)의 처리 방법에 대한 정보는 블록 디코딩 전에 알 수 있어야 한다.
따라서 상기 제3 실시예에서와 같이 블록 처리기(303)(및/또는 그룹 포맷터(304))의 처리 방법에 대한 정보를 갖는 전송 파라미터를 상기 필드 동기 신호의 미사용 영역에 삽입하여 전송하면, 수신 시스템에서는 수신 신호에 대한 블록 디코 딩이 이루어지기 전에 상기 전송 파라미터를 검출할 수 있게 된다.
수신 시스템
도 22는 본 발명에 따른 디지털 방송 수신 시스템의 일 실시예를 보인 구성 블록도이다. 도 22의 디지털 방송 수신 시스템에서는 송신 시스템에서 모바일 서비스 데이터 구간에 삽입하여 전송하는 기지 데이터 정보를 이용하여 반송파 동기 복원, 프레임 동기 복원 및 채널 등화 등을 수행함으로써, 수신 성능을 향상시킬 수 있다.
이를 위한 본 발명에 따른 디지털 방송 수신 시스템은 튜너(901), 복조기(902), 등화기(903), 기지 데이터 검출부(904), 블록 복호기(905), 데이터 디포맷터(906), RS 프레임 복호기(907), 디랜더마이저(908), 데이터 디인터리버(909), RS 복호기(910), 및 데이터 디랜더마이저(911)를 포함하여 구성된다. 본 발명은 설명의 편의를 위해 데이터 디포맷터(906), RS 프레임 복호기(907), 및 디랜더마이저(908)를 모바일 서비스 데이터 처리부라 하고, 데이터 디인터리버(909), RS 복호기(910), 및 데이터 디랜더마이저(911)를 메인 서비스 데이터 처리부라 하기로 한다.
즉, 상기 튜너(901)는 특정 채널의 주파수를 튜닝하여 중간 주파수(IF) 신호로 다운 컨버전한 후 복조기(902)와 기지 데이터 검출부(904)로 출력한다.
상기 복조기(902)는 입력되는 IF 신호에 대해 자동 이득 제어, 반송파 복구 및 타이밍 복구 등을 수행하여 기저대역 신호로 만든 후 등화기(903)와 기지 데이터 검출부(904)로 출력한다.
상기 등화기(903)는 상기 복조된 신호에 포함된 채널 상의 왜곡을 보상한 후 블록 복호기(905)로 출력한다.
이때 상기 기지 데이터 검출부(904)는 상기 복조기(902)의 입/출력 데이터 즉, 복조가 이루어지기 전의 데이터 또는 복조가 이루어진 후의 데이터로부터 송신측에서 삽입한 기지 데이터 위치를 검출하고 위치 정보와 함께 그 위치에서 발생시킨 기지 데이터의 심볼 열(sequence)을 복조기(902)와 등화기(903)로 출력한다. 또한 상기 기지 데이터 검출부(904)는 송신측에서 추가적인 부호화를 거친 모바일 서비스 데이터와 추가적인 부호화를 거치지 않은 메인 서비스 데이터를 상기 블록 복호기(905)에 의해서 구분할 수 있도록 하기 위한 정보를 상기 블록 복호기(905)로 출력한다. 그리고 도 22의 도면에서 연결 상태를 도시하지는 않았지만 상기 기지 데이터 검출부(904)에서 검출된 정보는 수신 시스템에 전반적으로 사용이 가능하며, 데이터 디포맷터(906)와 RS 프레임 복호기(907) 등에서 사용할 수도 있다.
상기 복조기(902)는 타이밍 복원이나 반송파 복구시에 상기 기지 데이터 심볼열을 이용함으로써, 복조 성능을 향상시킬 수 있고, 등화기(903)에서도 마찬가지로 상기 기지 데이터를 사용하여 등화 성능을 향상시킬 수 있다. 또한 상기 블록 복호기(905)의 복호 결과를 상기 등화기(903)로 피드백하여 등화 성능을 향상시킬 수도 있다.
상기 등화기(903)는 다양한 방법으로 채널 등화를 수행할 수 있는데, 본 발명에서는 채널 임펄스 응답(Channel Impulse Response ; CIR)을 추정하여 채널 등화를 수행하는 것을 일 실시예로 설명한다.
특히 본 발명에서는 송신 시스템에서 계층화되어 전송된 데이터 그룹 내 각 영역에 따라 채널 임펄스 응답(CIR)의 추정 및 적용을 다르게 하는 것을 일 실시예로 설명한다. 또한 본 발명은 송/수신측의 약속에 의해 위치와 내용을 알고 있는 기지 데이터와 필드 동기를 이용하여 CIR을 추정함으로써, 채널 등화를 더욱 안정적으로 수행하도록 하는데 있다.
이때 등화를 위해 입력된 하나의 데이터 그룹은 도 6a와 같이, A 내지 C 영역으로 구분되고, 다시 A 영역은 A1~A5 영역으로, B 영역은 B1,B2 영역으로, C1 영역은 C1~C3 영역으로 구분되어 있는 것을 일 실시예로 한다.
도 6a와 같은 데이터 구조에서 필드 동기로부터 추정되는 CIR을 CIR_FS 라고 하고, A 영역에 존재하는 다섯 개의 기지 데이터 열(sequence)로부터 추정되는 CIR을 순서대로 CIR_N0, CIR_N1, CIR_N2, CIR_N3, CIR_N4 라고 하자.
본 발명은 상기 필드 동기와 기지 데이터 열로부터 추정된 CIR을 이용하여 데이터 그룹 내 데이터에 대해 채널 등화를 수행하는데, 이때 데이터 그룹의 각 영역의 특징에 따라 상기 추정된 CIR들 중 하나를 그대로 사용하기도 하고, 적어도 복수개 이상의 CIR을 보간(interpolation)하거나, 외삽(extrapolation)하여 생성된 CIR을 사용하기도 한다.
여기서 보간(interpolation)은 어떤 함수 F(x)에 대해 시점 A에서의 함수값 F(A)와 시점 B에서의 함수값 F(B)를 알고 있을 때 A와 B 사이의 어떤 시점에서의 함수값을 추정하는 것을 의미하며, 상기 보간의 가장 간단한 예로 선형 보간(Linear Interpolation)이 있다. 상기 선형 보간 기법은 수많은 보간 기법 중 가 장 간단한 예이며 상기한 방법 외에 여러 가지 다양한 보간 기법을 사용할 수 있으므로 본 발명은 상기된 예로 제한되지 않을 것이다.
또한 외삽(extrapolation)은 어떤 함수 F(x)에 대해 시점 A에서의 함수값 F(A)와 시점 B에서의 함수값 F(B)를 알고 있을 때 A와 B 사이의 구간이 아닌 바깥쪽의 시점에서의 함수값을 추정하는 것을 의미한다. 상기 외삽의 가장 간단한 예로 선형 외삽(Linear Extrapolation)이 있다. 상기 선형 외삽 기법은 수많은 외삽 기법 중 가장 간단한 예이며 상기한 방법 외에 여러 가지 다양한 외삽 기법을 사용할 수 있으므로 본 발명은 상기된 예로 제한되지 않을 것이다.
즉, 상기 C1 영역의 경우, 이전 데이터 그룹에서 추정한 CIR_N4, 채널 등화를 수행할 현재 데이터 그룹에서 추정한 CIR_FS, 또는 현재 데이터 그룹의 CIR_FS와 CIR_N0를 외삽하여 생성한 CIR 중 하나를 사용하여 채널 등화를 수행할 수 있다.
상기 B1 영역의 경우, C1 영역과 같이 여러 가지 방법이 적용 가능하다. 일 실시예로, 현재 데이터 그룹에서 추정한 CIR_FS와 CIR_N0를 선형 외삽(extrapolation)하여 생성한 CIR을 사용하여 채널 등화를 수행할 수 있다. 또는 현재 데이터 그룹에서 추정한 CIR_FS를 사용하여 채널 등화를 수행할 수도 있다.
상기 A1 영역의 경우, 현재 데이터 그룹에서 추정한 CIR_FS와 CIR_N0를 보간하여 생성한 CIR를 사용하여 채널 등화를 수행할 수 있다. 또는 현재 데이터 그룹에서 추정한 CIR_FS와 CIR_N0 중 어느 하나를 이용하여 채널 등화를 수행할 수도 있다.
상기 A2~A5 영역의 경우, 현재 데이터 그룹에서 추정한 CIR_N(i-1)과 CIR_N(i)를 보간하여 생성한 CIR을 사용하여 채널 등화를 수행할 수 있다. 또는 현재 데이터 그룹에서 추정한 CIR_N(i-1)과 CIR_N(i) 중 어느 하나를 이용하여 채널 등화를 수행할 수도 있다.
상기 B2,C2,C3 영역의 경우, 현재 데이터 그룹에서 추정한 CIR_N3와 CIR_N4를 외삽하여 생성한 CIR을 사용하여 채널 등화를 수행할 수 있다. 또는 현재 데이터 그룹에서 추정한 CIR_N4를 사용하여 채널 등화를 수행할 수도 있다.
이렇게 함으로써, 상기 데이터 그룹에 삽입된 데이터에 대해 채널 등화시에 최적의 성능을 얻을 수가 있다.
지금까지 본 발명에서 설명한 데이터 그룹 내 각 영역에서 채널 등화를 위해 CIR을 구하는 방법들은 본 발명의 이해를 돕기 위한 실시예들이며, 이러한 방법들은 보다 넓고 다양하게 응용될 수 있으므로 본 발명은 상기 실시예로 제시한 것에 제한되지 않을 것이다.
한편 상기 등화기(903)에서 채널 등화된 후 블록 복호기(905)로 입력되는 데이터가 송신측에서 추가적인 부호화와 트렐리스 부호화가 모두 수행된 모바일 서비스 데이터이면 송신측의 역으로 트렐리스 복호화 및 추가적 복호화가 수행되고, 추가적인 부호화는 수행되지 않고 트렐리스 부호화만 수행된 메인 서비스 데이터이면 트렐리스 복호화만 수행된다. 상기 블록 복호기(905)에서 복호화된 데이터 그룹은 데이터 디포맷터(906)로 입력되고, 메인 서비스 데이터 패킷은 데이터 디인터리버(909)로 입력된다.
즉 상기 블록 복호기(905)는 입력된 데이터가 메인 서비스 데이터이면 입력 데이터에 대해 비터비 복호를 수행하여 하드 판정값을 출력하거나 또는 소프트 판정값을 하드 판정하고 그 결과를 출력할 수도 있다.
한편 입력된 데이터가 모바일 서비스 데이터이면 상기 블록 복호기(905)는 입력된 모바일 서비스 데이터에 대하여 하드 판정값 또는 소프트 판정값을 출력한다.
즉, 상기 블록 복호기(905)는 입력된 데이터가 모바일 서비스 데이터이면 송신 시스템의 블록 처리기와 트렐리스 부호화부에서 부호화된 데이터에 대해서 복호를 수행한다. 이때 송신측의 전처리기의 RS 프레임 부호기는 외부 부호가 되고, 블록 처리기와 트렐리스 부호기는 하나의 내부 부호로 볼 수 있다.
이러한 연접 부호의 복호시에 외부 부호의 성능을 최대한 발휘하기 위해서는 내부 부호의 복호기에서 소프트 판정값을 출력해 주어야 한다.
따라서 상기 블록 복호기(905)는 모바일 서비스 데이터에 대해 하드 판정(hard decision) 값을 출력할 수도 있으나, 필요한 경우 소프트 판정값을 출력하는 것이 더 좋을 수 있다.
한편 상기 데이터 디인터리버(909), RS 복호기(910), 및 디랜더마이저(911)는 메인 서비스 데이터를 수신하기 위해 필요한 블록들로서, 오직 모바일 서비스 데이터만을 수신하기 위한 수신 시스템 구조에서는 필요하지 않을 수도 있다.
상기 데이터 디인터리버(909)는 송신측의 데이터 인터리버의 역과정으로 상기 블록 복호기(905)에서 출력되는 메인 서비스 데이터를 디인터리빙하여 RS 복호 기(910)로 출력한다.
상기 RS 복호기(910)는 디인터리빙된 데이터에 대해 체계적 RS 복호를 수행하여 디랜더마이저(911)로 출력한다.
상기 디랜더마이저(911)는 RS 복호기(910)의 출력을 입력받아서 송신기의 랜더마이저와 동일한 의사 랜덤(pseudo random) 바이트를 발생시켜 이를 bitwise XOR(exclusive OR)한 후 MPEG 동기 바이트를 매 패킷의 앞에 삽입하여 188 바이트 메인 서비스 데이터 패킷 단위로 출력한다.
한편 상기 블록 복호기(905)에서 데이터 디포맷터(906)로 출력되는 데이터의 형태는 데이터 그룹 형태이다. 이때 상기 데이터 디포맷터(906)에서는 입력 데이터 그룹의 구성을 이미 알고 있기 때문에 데이터 그룹 내에서 시스템 정보를 갖는 시그널링 정보와 모바일 서비스 데이터를 구분한다. 그리고 구분된 시그널링 정보는 시스템 정보를 위한 곳으로 전달하고, 모바일 서비스 데이터는 RS 프레임 복호기(907)로 출력한다. 이때 상기 데이터 디포맷터(906)에서는 메인 서비스 데이터 및 데이터 그룹에 삽입되었던 기지 데이터, 트렐리스 초기화 데이터, MPEG 헤더 그리고 송신 시스템의 RS 부호기/비체계적 RS 부호기 또는 비체계적 RS 부호기에서 부가된 RS 패리티를 제거하여 RS 프레임 복호기(907)로 출력한다.
즉, 상기 RS 프레임 복호기(907)는 상기 데이터 디포맷터(906)로부터 RS 부호화 및 CRC 부호화된 모바일 서비스 데이터만을 입력받는다.
상기 RS 프레임 복호기(907)에서는 송신 시스템의 RS 프레임 부호기에서의 역과정을 수행하여 RS 프레임 내 에러들을 정정한 후, 에러 정정된 모바일 서비스 데이터 패킷에 RS 프레임 부호화 과정에서 제거되었던 1 바이트의 MPEG 동기 바이트를 부가하여 디랜더마이저(908)로 출력한다. 상기 RS 프레임 복호기(907)의 상세한 동작은 뒤에서 설명한다.
상기 디랜더마이저(908)는 입력받은 모바일 서비스 데이터에 대해서 송신 시스템의 랜더마이저의 역과정에 해당하는 디랜더마이징을 수행하여 출력함으로써, 송신 시스템에서 송신한 모바일 서비스 데이터를 얻을 수가 있게 된다.
다음은 상기 RS 프레임 복호기(907)의 상세한 동작 설명이다.
도 23은 상기 RS 프레임 복호기(907)의 에러 정정 복호화 과정의 일 실시예를 순차적으로 보인 도면이다.
즉, 상기 RS 프레임 복호기(907)는 데이터 디포맷터(906)로부터 입력받은 모바일 서비스 데이터들을 모아서 RS 프레임을 구성한다. 상기 모바일 서비스 데이터는 송신 시스템에서 RS 부호화 및 CRC 부호화된 데이터이다.
도 23의 (a)는 RS 프레임을 구성하는 예를 보이고 있다. 즉, 송신 시스템에서 235 * (N+2) 크기의 RS 프레임을 30*235 바이트 블록으로 구분하고, 구분된 각 블록의 모바일 서비스 데이터를 각 데이터 그룹에 삽입시켜 전송하였다고 가정하면, 수신 시스템에서도 각 데이터 그룹에 삽입된 30*235 바이트 블록의 모바일 서비스 데이터를 모아 235 * (N+2) 크기의 RS 프레임을 구성한다. 예를 들어, RS 프레임이 18개의 30*235 바이트 블록으로 구분되어 하나의 버스트 구간에서 전송되었다고 가정하면, 수신 시스템에서도 해당 버스트 구간 내 18개의 데이터 그룹의 모바일 서비스 데이터를 모아 RS 프레임을 구성한다. 또한 N이 538이라고 가정하면, 상기 RS 프레임 복호기(907)는 하나의 버스트 안에 있는 18개의 데이터 그룹 내 모바일 서비스 데이터들을 모아서 235 * 540 바이트 크기의 RS 프레임을 구성할 수가 있다.
이때 상기 블록 복호기(905)에서 복호 결과를 소프트 판정값으로 출력한다고 가정하면, 상기 RS 프레임 복호기(907)는 상기 소프트 판정값의 부호로 해당 비트의 0과 1을 결정할 수 있으며, 이렇게 결정된 비트를 8개 모아서 한 바이트를 구성하게 된다. 이러한 과정을 하나의 버스트 안에 있는 18개의 데이터 그룹의 소프트 판정값에 대해 모두 수행하면 235 * 540 바이트 크기의 RS 프레임을 구성할 수가 있게 된다.
또한 본 발명은 소프트 판정값을 RS 프레임을 구성하는데 이용할 뿐만 아니라, 신용 맵(Reliability Map)을 구성하는데 이용한다.
상기 신용 맵은 상기 소프트 판정값의 부호로 결정된 비트를 8개 모아 구성한 해당 바이트가 믿을만하지 여부를 나타낸다.
일 실시예로, 소프트 판정값의 절대값이 기 설정된 문턱값을 넘을 경우에는 해당 소프트 판정값의 부호로 판단한 해당 비트 값은 믿을만하다고 판단하고, 넘지 못할 경우에는 믿을만하지 못하다고 판단한다. 그리고 나서, 소프트 판정값의 부호로 판단한 비트를 8개 모아 구성한 한 바이트 내 한 비트라도 믿을만하지 못하다고 판단된 경우에는 신용 맵에 해당 바이트를 믿을 수 없다고 표시한다. 여기서 한 비트는 하나의 실시예이며, 복수개 예를 들어, 4개의 이상의 비트가 믿을만하지 못하다고 판단된 경우에 신용 맵에 해당 바이트를 믿을 수 없다고 표시할 수도 있다.
반대로 한 바이트 내 모든 비트가 믿을만하다고 판단된 경우 즉, 한 바이트의 모든 비트의 소프트 판정값의 절대값이 기 설정된 문턱값을 넘는 경우에는 신용 맵에 해당 바이트를 믿을만하다고 표시한다. 마찬가지로, 한 바이트 내 복수개 예를 들어, 4개 이상의 비트가 믿을만하다고 판단된 경우에는 신용 맵에 해당 바이트를 믿을만하다고 표시한다.
상기 예시한 수치는 일 예에 불과하며, 상기 수치로 본 발명의 권리범위가 제한되는 것은 아니다.
상기 소프트 판정값을 이용한 RS 프레임의 구성과 신용 맵의 구성은 동시에 이루어질 수 있다. 이때 상기 신용 맵 내 신용 정보는 상기 RS 프레임 내 각 바이트에 1:1로 대응한다. 예를 들어, 하나의 RS 프레임이 235 * 540 바이트 크기를 가진다면, 상기 신용 맵은 235 * 540 비트 크기를 가진다. 도 23의 (a')는 본 발명에 따른 신용 맵 형성 과정을 보이고 있다.
한편 상기 RS 프레임 복호기(907)는 235 * (N+2) 바이트 크기의 RS 프레임이 구성되면, 이 RS 프레임에 대해 CRC 신드롬 체크를 수행하여 각 로우의 에러 발생여부를 검사한다. 이어 도 23의 (b)와 같이 2 바이트 CRC 체크섬을 제거하여 235 * N 바이트 크기의 RS 프레임을 구성하고, 각 로우에 대응하는 에러 플래그에 에러 여부를 표시한다. 마찬가지로 신용 맵 중 CRC 체크섬에 해당하는 부분은 활용도가 없으므로, 이 부분을 제거하여 도 23의 (b')와 같이 235 * N 개의 신용 정보만을 남긴다.
상기 RS 프레임 복호기(907)는 CRC 신드롬 체크가 수행되고 나면, 컬럼 방향 으로 RS 복호화(decoding)를 수행한다. 이때 상기 CRC 에러 플래그의 수에 따라 RS 이레이저(erasure) 정정을 수행할 수도 있다. 즉, 도 23의 (c)와 같이 상기 RS 프레임 내 각 로우에 대응하는 CRC 에러 플래그를 검사하여, 에러를 가진 로우의 개수가 컬럼 방향 RS 복호화를 할 때 RS 이레이저 정정을 수행할 수 있는 최대 에러 개수보다 같거나 작은지를 판단한다. 상기 최대 에러 개수는 RS 부호화시 삽입된 패리티 개수로서, 본 발명에서는 일 실시예로 각 컬럼마다 48개의 패리티 바이트가 부가되어 있다고 가정한다.
만일 CRC 에러를 가진 로우의 개수가 RS 이레이저 복호화(decoding)로 수정 가능한 최대 에러 개수(실시예에 따르면 48)보다 작거나 같다면 도 23의 (d)와 같이 235개의 N 바이트 로우를 갖는 RS 프레임에 대해서 컬럼 방향으로 (235,187)-RS 이레이저 복호화를 수행하고, 도 23의 (f)와 같이 각 컬럼의 마지막에 부가되었던 48바이트의 패리티 데이터를 제거한다.
그런데, CRC 에러를 가진 로우의 개수가 RS 이레이저 복호화로 수정 가능한 최대 에러 개수(즉, 48)보다 크다면 RS 이레이저 복호화를 수행할 수가 없다.
이러한 경우 일반적인 RS 복호화를 통해서 에러 정정을 수행할 수 있다. 또한 본 발명은 소프트 판정값으로부터 RS 프레임을 구성할 때 함께 생성한 신용 맵을 이용하여 에러 정정 능력을 더욱 높일 수 있다.
즉, 상기 RS 프레임 복호기(907)에서는 블록 복호기(905)의 소프트 판정값의 절대값을 기 설정된 임계값과 비교하여 해당 소프트 판정값의 부호로 결정되는 비트 값의 신용을 판단하였다. 그리고 소프트 판정값의 부호로 판단한 비트를 8개 모 아 구성한 해당 바이트에 대한 신용 정보를 신용 맵에 표시하였다.
따라서 본 발명은 도 23의 (e)와 같이 특정 로우의 CRC 신드롬 체크 결과 그 로우에 CRC 에러가 있다고 판단되더라도 그 로우의 모든 바이트가 에러가 있는 것이라고 가정하는 것이 아니라, 신용 맵의 신용 정보를 참조하여 믿을만하지 못하다고 판단된 바이트에 대해서만 에러로 설정한다. 즉, 해당 로우의 CRC 에러 여부에 상관없이 신용 맵의 신용 정보에서 믿을만하지 못하다고 판단되는 바이트만을 이레이저 포인트(erasure point)로 설정한다.
또 다른 방법으로 CRC 신드롬 체크 결과 해당 로우에 CRC 에러가 있다고 판단되면서 신용 맵의 신용 정보가 믿을만 하지 못한다고 판단된 바이트에 대해서만 에러로 설정한다. 즉, 해당 로우에 CRC 에러가 있으면서 신용 맵의 신용 정보에서 믿을만 하지 못하다고 판단이 되는 바이트만을 이레이저 포인트(erasure point)로 설정한다.
그리고 나서, 각 컬럼별로 에러 포인트의 수가 RS 이레이저 복호화로 수정 가능한 최대 에러 개수(즉, 48)보다 작거나 같다면 그 컬럼에 대해서는 RS 이레이저 복호화를 수행한다. 반대로 에러 포인트의 수가 RS 이레이저 복호화로 수정 가능한 최대 개수(즉, 48)보다 크다면 그 컬럼에 대해서는 일반적인 RS 복호화를 수행한다.
즉, CRC 에러를 가진 로우의 개수가 RS 이레이저 복호화로 수정 가능한 최대 에러 개수(예를 들면, 48)보다 크면, 신용 맵의 신용 정보에 의해 결정된 해당 컬럼 내 이레이저 포인트 수에 따라 그 컬럼에 대해서 RS 이레이저 복호화를 수행하 거나, 일반적인 RS 복호화를 수행한다.
예를 들어, 상기 RS 프레임 내에서 CRC 에러를 가진 로우의 개수가 48보다 크고, 신용 맵의 신용 정보에 의해 결정된 이레이저 포인트 수가 첫 번째 컬럼에서는 40개가 표시되고, 두 번째 컬럼에서는 50개가 표시되었다고 가정하자. 그러면, 상기 첫 번째 컬럼에 대해서는 (235,187)-RS 이레이저 복호화를 수행하고, 두 번째 컬럼에 대해서는 (235,187)-RS 복호화를 수행한다.
상기와 같은 과정을 수행하여 RS 프레임 내 모든 컬럼 방향으로 에러 정정 복호화가 수행되면 도 23의 (f)와 같이 각 컬럼의 마지막에 부가되었던 48바이트의 패리티 데이터를 제거한다.
이와 같이 본 발명은 RS 프레임 내 각 로우에 대응되는 전체 CRC 에러의 개수는 RS 이레이저 복호화로 정정 가능한 최대 에러 개수보다 크더라도, 특정 컬럼의 에러 정정 복호화시에 해당 컬럼의 신용 맵의 신용 정보에 의해 신용이 낮은 바이트의 수가 RS 이레이저 복호화로 정정 가능한 최대 에러 개수보다 같거나 작으면 그 컬럼에 대해서는 RS 이레이저 복호화를 수행할 수 있다.
여기서 일반적인 RS 복호화와 RS 이레이저 복호화의 차이는 정정 가능한 에러의 개수이다. 즉, 일반적인 RS 복호화를 수행하면 RS 부호화 과정에서 삽입된 (패리티의 개수)/2에 해당하는 개수(예를 들면, 24)만큼 에러를 정정할 수 있고, RS 이레이저 복호화를 수행하면 RS 부호화 과정에서 삽입된 패리티의 개수(예를 들면, 48)만큼 에러를 정정할 수 있다.
상기와 같이 에러 정정 복호화가 수행되고 나면, 도 23의 (f)와 같이 187개 의 N 바이트 로우(즉, 패킷)로 된 RS 프레임을 얻을 수 있다. 그리고 187 * N 바이트 크기의 RS 프레임은 순서대로 N개의 187 바이트의 크기로 출력이 되는데, 이때 도 23의 (g)와 같이 각 187 바이트의 패킷에 송신 시스템에서 삭제한 1 바이트의 MPEG 동기 바이트를 부가하여 188 바이트 단위의 모바일 서비스 데이터 패킷을 출력한다.
이하에서는 방송 수신 시스템의 실시예 중 수신 신호의 타이밍 에러를 제거할 수 있는 타이밍 복구부에 대해 상세히 예시한다.
도 6a의 신호 프레임 구조로부터 필드 동기 영역의 데이터(즉, 필드 싱크 데이터), 기지 데이터 영역의 데이터는 방송 수신 시스템이 이미 알고 있으므로 이러한 신호들임을 알기 위해 신뢰도 검사를 수행한 후 동기 영역의 데이터 및 기지 데이터임을 알 수 있다. 이 영역의 데이터들은 복조기(902)에서 이용될 수 있는데, 적어도 하나 이상의 타이밍 주파수 및 위상 오프셋 복구에 이용될 수 있다.
이하에서는 위에서 예시한 방송 송수신 시스템에 메인 서비스 데이터와 모바일 서비스 데이터를 다중화하여 전송할 경우, 메인 서비스 데이터와 모바일 서비스 데이터에 대한 시간 정보를 송수신하는 예를 개시한다. 여기서 시간 정보는 하나 이상의 섹션을 포함하는 테이블 형태로 제공될 수 있는데, 이하에서는 이러한 테이블 형태의 정보를 프로그램 테이블 정보라고 호칭한다. 예를 들어, 프로그램 테이블 정보는 PSI(program specific information)/PSIP(program and and system information protocol)의 형태를 따르는 정보가 될 수 있다. 그리고, 이하에서 고정 수신용 채널은 방송 시스템이 메인 서비스 데이터를 송수신할 수 있는 채널을 의미하고, 이동 수신용 채널은 방송 시스템이 모바일 서비스 데이터를 송수신할 수 있는 채널을 지칭한다.
이하에서는 위에서 개시한 방송 송수신 시스템이 시간 정보를 얻는 과정을 설명한다. 방송 수신 시스템은 방송 송신 시스템으로부터 시간 정보를 얻는다. 예를 들면, 위에서 예시한 바와 같이 ATSC 시스템을 기반으로 한 모바일 방송 송수신 시스템은 STT(System Time Table)를 통해 시간 정보를 얻는다.
도 24는 ATSC 시스템에서 사용될 수 있는 STT을 나타낸 도면이다. STT는 현재의 날짜와 정보를 전달하는데 사용된다. ATSC 시스템에서 STT를 전달하는 트랜스포트 스트림 패킷의 식별자(PID)는 0x1FFB이고, 패킷의 패이로드가 스크램블(scramble)되었는지 나타내는 transport_scrambling_control은 '00'이고, 어댑테이션 필드는 프로그램 테이블 정보에 설정되지 않으므로 adaptation_field_control은 '01'의 값을 가진다.
도 24에서 나타낸 바와 같이 STT의 table_id는 8비트 필드의 0xCD로 설정된다. section_syntax_indicator는 1 비트 필드로 MPEG long-form을 나타내는 1로 설정된다. private_indicator는 1로 설정되는 1비트 필드이고, section_length는 섹션의 길이를 나타내는 12 비트 필드이다. table_id_extension은 STT에서는 0으로 설정되고, 섹션의 버전 번호를 나타내는 5비트 필드의 version_number는 0으로 설정된다. 그리고, 현재 섹션에 적용 여부를 나타내는 current_next_indicator는 1비트 식별자로서, STT 섹션에 대해서는 1로 설정된다. section_number는 8비트 필드 로 STT는 한 섹션 길이를 가지므로 1의 값을 가진다. last_section_number는 8비트의 필드로서 0으로 설정된다. protocol_version은 8비트 필드로서 STT에서는 0으로 설정된다.
system_time은 32비트 필드로, 1980년 1월 6일 00시 00분 00초 UTC 이후로 GPS 초로 카운트된 수를 나타낸다. 따라서, system_time은 UTC(협정세계시)에 기초한 시간 정보가 된다.
GPS_UTC_offset은 GPS time과 UTC time의 차를 초 단위로 나타낸다. GPS time을 UTC로 변환시키기 위해서는 GPS_UTC_offset을 GPS time으로부터 뺀다.
daylight_savings은 한국에서 summer time으로 호칭되는 시간이 적용되는 기간을 고려하기 위해 사용되는 2 바이트 데이터이다. daylight_savings은 데이라이트 세이빙 타임(daylight saving time)이 적용되는지 스탠다드 타임(standard time) 적용되는지 나타내는 식별자(DS_status), daylight saving time이 적용되거나 해제되는 날을 나타내는 식별자(DS_day_of_month), daylight saving time이 적용되거나 해제되는 시간을 나타내는 식별자(DS_hour)를 포함한다.
그리고, STT는 가변 길이의 디스크립터를 포함할 수 있다.
방송 수신 시스템은 자체 내부에 OS(operating system)에 관리되는 시스템 시간 장치(system clock)를 구비한다. 시스템 시간 장치는 수동 모드일 경우 사용자로부터 수동으로 설정된 시간을 유지한다. 또는 자동 모드일 경우 자동으로 설정된 타임 존(time zone; 지방시가 적용되는 지역)과 데이라이트 세이빙(daylight saving) 등을 고려한 정보가 사용자로부터 설정되면, 그 설정된 정보들을 이용하여 방송국으로부터 송신한 시간, 예를 들면 UTC(협정세계시) 등을 이용해 시스템 시간을 유지한다. 예를 들면 방송 수신 시스템은 사용자가 설정한 타임 존으로부터 그 타임 존의 로컬 시간을 산출하고, 방송 신호로부터 수신한 UTC를 이용해 방송 수신 시스템의 로컬 시간을 산출하고 이를 시스템 시간으로 설정한다. 그러나, 방송 수신 시스템이 이동 수신이 가능할 경우 타임 존 사이를 이동하면서 방송을 수신하면, 방송 수신 시스템의 시스템 시간은 달라진다. 방송 수신 시스템은 위치한 지역의 방송국으로부터 UTC 등의 시간을 제공받고, 이로부터 시스템 시간을 산출하기 때문에 사용자는 방송 수신 시스템에 대해 이동에 따른 시간을 변경하거나 타임 존 정보를 변경하여 설정해야 한다. 만약 방송 수신 시스템이 유지하는 시스템 시간이 달라지는 경우 방송 수신 시스템은 방송을 정확한 시간에 표출하지 못하거나, EPG 등의 방송 정보를 정한 시간에 표출하지 못할 수 있다.
도 25는 방송 수신 시스템이 시간 정보를 얻는 예를 나타낸 도면이다. 예를 들어 방송 수신 시스템이 본래 뉴욕에 있었다고 가정한다. 뉴욕 지역은 이스턴 (eastern) 타임 존(동부 지역 시간)에 속하고, 이스턴 타임은 오전 10시 30분이라고 가정한다. 그리고, 이하에서 방송국으로부터 수신받은 시간 정보는 UTC( 세계협정시)라고 가정한다.
사용자는 이스턴 타임(eastern time) 존에 있을 경우, 방송 수신 시스템에 UTC(협정세계시)와 5시간의 적은 시간인 10시 30분의 로컬 타임을 설정한다. 방송 수신 시스템이 LA(Log Angeles)로 이동하면 방송 수신 시스템에 설정된 시간과 이동한 로컬 타임에 3시간의 시간차이가 발생한다. 즉, LA 지역의 시간은 퍼시픽 타 임 존(Pacific time zone)을 따르고, UTC와 8시간 차이가 발생하는 7시 30분이다. 따라서, 방송 수신 시스템이 LA에 있는 방송국으로부터 방송 신호를 수신하여 처리할 경우 사용자가 방송 수신 시스템의 시간을 재설정하지 않는다면 방송 신호 처리를 수행하는데 본래 설정된 시간과 LA 지역의 시간 차이만큼의 오류가 발생한다.
예를 들어 LA 지역에 방송 신호 중 현재 시간의 EIT에 2개의 방송 이벤트가 있다고 가정한다. 2개의 방송 이벤트는 LA 지역에 대한 UTC로 14시(지역시로 오전 6시)에 시간하는 "Prison Break"라는 프로그램과, UTC로 15시 30분(지역시로 오전 7시 30분)에 시간하는 "Rome"라는 프로그램이라고 가정한다.
방송 수신 시스템이 수신하는 EIT는 UTC에 따른 시간 정보가 포함되므로 방송 수신 시스템은 프로그램 정보에 대한 시간 오류를 발생시킬 수 있다. 예를 들면 방송 수신 시스템이 EIT 정보로부터 방송 프로그램에 관련된 정보를 추출하여 EPG(electronic program guide)을 표출할 경우 방송 수신 시스템은 "Prison Break"라는 프로그램을 이스턴 타임에 따라 오전 9시로, "Rome"라는 프로그램을 오전 10시 30분에 시작하는 것으로 표출한다. 따라서, 방송 수신 시스템이 LA 지역으로 이동한 경우에는 실제 수신하는 방송 신호에 포함된 시간 정보와 방송 수신 시스템이 가진 시간 정보가 일치하지 않으므로 방송 표출에 동작오류를 발생시킬 수 있다.
도 26은 지역에 따른 시간 정보를 포함하는 방송 신호의 시간 정보를 예시한다. 방송 송수신 시스템이 도 26의 예와 같은 방송 신호를 송수신하면, 방송 수신 시스템은 방송 신호를 이동 수신하더라도 방송 신호를 처리하는데 오류가 발생하지 않는다. 방송 송신측(방송국)은 해당 송신기가 포함되는 타임 존(tine zone) 식별 자 정보 및 그 타임 존 정보에 따른 시간과 기준시와의 시차 정보 중 적어도 하나의 정보를 방송 신호로 송신할 수 있다. 도 26는 방송 수신 시스템이 방송을 수신하는 지역이 달라지더라도 시간 정보를 정확하게 처리할 수 있도록 하는 정보를 디스크립터로 나타낸 예이다. 도 26에서 디스크립터는 도 24에서 나타낸 STT의 디스크립터에 포함될 수 있다(PSI/PSIP의 다른 디스크립터에 포함되는 것도 가능하다). 도 26의 디스크립터는 디스크립터를 식별하는 descriptor_tag, 디스크립터의 길이를 나타내는 descriptor_length를 포함한다. 도 26는 타임 존 명칭을 줄 수 있는 time_zone_name의 변수 길이인 time_zone_name_length와 타임 존 명칭인 time_zone_name을 포함하는 예를 나타낸다.
도 26에서 예시한 바와 같이 방송 수신 시스템은 방송국으로부터 타임 존 식별자(time_zone_id) 정보를 수신할 수 있다. 방송 수신 시스템이 방송 신호로부터 지역에 따른 시간 정보를 수신할 경우, 방송 수신 지역의 타임 존 시각 정보, 타임 존에 따른 로컬 시간으로부터 기준시와의 시차 정보(time_zone_offset) 및 그 시차가 기준시로부터 가산되는지 감산되는지(즉 기준시보다 느린지 빠른지)를 나타내는 폴라리티 정보(time_zone_offset_polarity)를 수신할 수 있다. 기준시는 UTC(협정세계시)가 될 수 있다.
방송 수신 시스템은 타임 존 식별자 정보(time_zone_id)만을 방송 신호로부터 수신하고, 기준시와의 시차 정보는, 예를 들어 테이블 형태로 저장하여 로컬 시간을 산출할 수 있다. 또 다른 예로서, 방송 수신 시스템은 기준시와의 시차 정보(time_zone_offset)와 방송 신호로부터 폴라리티 정보(time_zone_offset- _polarity)만을 수신하고 STT로부터 수신한 UTC로부터 로컬 타임을 산출할 수도 있다.
도 27은 도 26에서 예시한 시간 정보를 구체적으로 예시한 도면이다. 미국내에 분포하는 타임 존을 예를 들면, 이스턴(EST), 센트럴(CT), 마운틴(MT), 퍼시픽(PT), 알래스카(Alaska), 하와이(Hawaii)가 있다. 도 26의 예에 따라 타임 존 명칭을 각각의 타임 존의 명칭을 Eastern, Central, Mountain, Pacific, Alaska, Hawaii로 한다. 그리고, 도 27애서 각 타임 존에 대한 식별자(time_zone_id)는 위의 예시한 순서에 따라 0x00(Eastern), 0x01(Central), 0x02(Mountain), 0x03(Pacific), 0x04(Alaska), 0x05(Hawaii)로 한다. 타임 존의 시각이 기준시보다 느린지 빠른지를 나타내는 폴라리티 정보(time_zone_offset_polarity)는 "0"일 경우 타임 존의 시각이 기준시보다 빠르고, "1"일 경우 타임 존의 시각이 기준시보다 느린 것으로 한다. 따라서, 도 27에 예시한 타임 존들의 폴라리티 정보(time_zone_offset_polarity)가 1이고, 모두 기준시(UTC)보다 느리므로 기준시(UTC)로부터의 시차 정보(time_zone_offset)를 빼면 각 타임 존들의 시각을 산출할 수 있다. 타임 존의 기준시와의 시차 정보(time_zone_offset)는 이스턴(EST)에 대해 5시간, 센트럴(CT)에 대해 6시간, 마운틴(MT)에 대해 7시간, 퍼시픽(PT)에 대해 8시간, 알래스카(Alaska)에 대해 9시간, 하와이(Hawaii)에 대해 10시간이 된다.
도 28은 도 26에서 기술한 예에 따라 이동 수신이 가능한 방송 수신 시스템이 방송 신호를 수신하는 예를 나타낸 개념도이다. 도 28은 도 25의 예와 유사하지 만, STT 등의 프로그램 테이블 정보로부터 도 26과 같은 시간 정보를 수신한다고 가정한다.
이스턴 타임 존의 시간으로 오전 10시 30분이 설정된 방송 수신 시스템이 퍼시픽 타임 존으로 이동한다. 방송 수신 시스템은 퍼시픽 타임 존으로부터 STT 내의 기준시인 UTC를 수신받을 수 있다. 그리고, 도 27에서 나타낸 time_zone_descriptor에 따른 시간 정보를 수신할 수 있다. 방송 수신 시스템은 STT의 time_zone_descriptor로부터 현재 타임 존의 명칭(time_zone_name)으로 "Pacific Time"을, 타임 존 식별 정보로 "0x03"(PT)를 얻는다. 그리고, 폴라리티 정보(time_zone_offset_polarity)로 "1", 타임 존의 기준시와의 시간 차이 정보(time_zone_offset)로 "8"를 얻는다. 따라서, 방송 수신 시스템이 LA에 이동한 경우라도 방송 수신 시스템은 방송 신호로부터 현재 시간이 UTC로부터 8시간이 느린 오전 7시 30분이라고 설정할 수 있다. 그리고, 그에 따른 EPG 정보도 퍼시픽 타임 존에 따라 표출할 수 있다.
도 29는 방송 신호로부터 시각 정보를 수신하는 예를 나타낸 흐름도이다. 도 29를 참조하여 방송 신호로부터 지역에 따른 시각 정보를 수신하는 예를 설명하면 다음과 같다. 이동 수신이 가능한 방송 수신 시스템이 파워 온(on) 된다(S11).
방송 신호로부터 타임 존 식별자 정보 또는 방송 수신 시스템이 위치한 타임 존의 시간과 기준시와의 시차 정보가 설정된 프로그램 테이블 정보를 역다중화한다(S12). 예를 들어 프로그램 테이블 정보는 STT(system time table)일 수 있고, STT는 시스템에 따라 달라질 수 있지만 1초마다 수신될 수 있다.
STT로부터 타임 존 식별자 정보 또는 방송 수신 시스템이 위치한 타임 존의 시간과 기준시와의 시차 정보를 식별한다. 위의 예에 따르면 STT에 포함된 time_zone_descriptor로부터 위의 정보를 식별하여 파싱할 수 있다(S14).
time_zone_descriptor로부터 타임 존 식별자 정보 또는 방송 수신 시스템이 위치한 타임 존의 시간과 기준시와의 시차 정보를 추출하여 방송 수신 시스템이 위치한 지역의 로컬 시간을 산출하고, 산출한 시간에 따라 방송 정보를 처리한다(S16).
사용자가 선택하는 채널의 변환, 방송 수신 시스템의 파워 리셋(power reset) 및 방송 송수신 시스템이 규정하는 STT를 수신하는 시간이 초과한 경우 STT를 다시 수신하는 S12 단계로 돌아간다(S18).
도 30은 방송 신호로부터 타임 존에 따른 시각 정보를 수신하여 현재 시간을 표출하는 예를 나타낸 도면이다.
이동 수신이 가능한 방송 수신 시스템이 파워 온(on) 된다(S11).
사용자가 방송 수신 시스템에 시간 표출을 요청한다(S22).
방송 신호로부터 기준시와 타임 존에 따른 시간 정보를 추출한다(S24). 예를 들면, STT로부터 타임 존 식별자 정보 또는 방송 수신 시스템이 위치한 타임 존의 시간과 기준시와의 시차 정보를 추출할 수 있다.
그리고, 추출한 기준시와 타임 존에 따른 시간 정보를 이용하여 방송 수신 시스템이 위치한 지역의 로컬 시간을 산출한다(S26).
산출한 로컬 시간을 표출한다(S28). 따라서 방송 수신 시스템은 타임 존 간 을 이동하여도 타임 존에 따른 로컬 시간을 자동으로 산출하여 표출할 수 있다.
도 31은 방송 신호로부터 타임 존에 따른 시간 정보를 수신하여 방송 정보를 표출하는 예를 나타낸 도면이다. 도 31을 참조하여 방송 정보 중 EPG를 표출하는 예를 설명하면 다음과 같다.
이동 수신이 가능한 방송 수신 시스템이 파워 온(on) 된다(S11).
사용자가 방송 프로그램에 관련된 정보, 예를 들면 EPG 표출을 요청한다(S32).
방송 신호로부터 EIT를 얻고 EIT에 포함된 프로그램에 관련된 방송 정보, 예를 들면 프로그램 명, 그 프로그램의 시작, 종료 시간 등의 방송 정보를 추출한다(S34).
방송 신호로부터 STT를 얻고, STT에 포함된 기준시(UTC; 협정세계시)와 방송 수신 시스템이 위치한 타임 존의 시간과 기준시와의 시차 정보를 추출하고, 추출한 정보로부터 방송 수신 시스템이 위치한 로컬 시간을 산출한다(S38). S 38의 상세한 설명은 도 29에서 설명하였다. S 34와 S38 단계는 동시에 또는 도 31과 예시한 순서의 역순으로 구현될 수도 있다. 또한, S 38단계는 방송 수신 시스템이 이미 로컬 시간을 도 29의 과정으로 산출한 경우 생략될 수 있다.
산출한 로컬 시간 정보를 이용해 EPG에 포함된 프로그램 정보를 표출한다(S40).
도 32는 방송 수신 시스템의 예를 개시한 도면이다. 도 32를 참조하여 방송 수신 시스템의 예를 개시하면 다음과 같다. 개시한 방송 수신 시스템의 예는 튜너(1100), 복조부(1200), 역다중화부(1300), 프로그램테이블정보복호부(1400), 제어부(1500), 복호부(1600), 저장부(1700) 및 표출부(1800)를 포함한다.
튜너(1100)는 고정 수신용 채널이나 이동 수신용 채널 중 적어도 하나의 채널로 전송되는 방송 신호를 수신할 수 있다. 즉, 튜너(1100)가 수신하는 방송 신호는 그 신호 내에 메인 서비스 데이터와 모바일 서비스 데이터를 함께 포함할 수 있다. 튜너(1100)는 사용자가 선택한 채널을 튜닝하여 해당 채널에 대한 방송 신호를 출력한다. 고정 수신용 채널로부터 수신되는 방송 신호는 지상파/케이블 방송 신호를 포함할 수 있다. 그리고, 튜너(1100)는 타임 존 식별자 정보 또는 타임 존의 시간 기준시의 시차 정보를 포함하는 프로그램 테이블 정보, 예를 들면 STT를 수신할 수 있다.
복조부(1200)는 튜너(1100)가 출력하는 신호를 복조하여 출력한다. 복조부(1200)는 고정 수신용 채널의 방송 신호와 이동 수신용 채널로 전송되는 방송 신호 중 적어도 하나의 방송 신호를 복조할 수 있다. 예를 들어 복조부(1200)는 64VSB/256 VSB 변조 신호에 대해 복조하거나, 64QAM/256QAM 변조 신호에 대해 복조를 수행할 수 있다. 복조부(1200)는 고정 수신용 채널의 방송 신호와 이동 수신용 채널의 방송 신호를 복조할 수 있다. 모바일 서비스 데이터와 메인 서비스 데이터를 복조하는 예는 도 22(도 22에서 튜너를 뺀 나머지 동작도와 그 설명을 참조한다)에서 상세히 예시하였다. 복조부(1200)는 수신 신호 중 전송율을 맞추기 위해 전송되는 널 패킷에 따른 방송 신호에 대해서는 복조하지 않고 무시할 수 있다.
역다중화부(1300)는 복조부(1200)가 출력하는 신호를 역다중화하여 출력할 수 있다. 그리고, 역다중화부(1300)는 모바일 서비스 데이터 스트림이나 메인 서비스 데이터 스트림을 외부 기기로부터 직접 전송받을 수도 있다. 예를 들어 방송 수신 시스템이 digital VCR 등으로부터 방송 스트림을 수신받을 수 있는 경우에 역다중화부(1300)는 소정의 인터페이스, 예를 들면 IEEE 1394 형식의 인터페이스를 통해 직접 방송 스트림을 입력받고 이를 역다중화할 수도 있다. 역다중화부(1300)는 수신된 방송 스트림 중 비디오 스트림, 오디오 스트림, 프로그램 테이블 정보 등을 역다중화할 수 있다. 예를 들어 역다중화부(1300)는 도 26 내지 도 32의 예에 따른 프로그램 테이블 정보가 수신 신호에 포함될 경우, 그 프로그램 테이블 정보를 프로그램테이블정보복호부(1400)로 출력하도록 역다중화하고, 방송 신호 중 비디오, 오디오 신호는 복호부(1600)로 출력할 수 있다. 즉, 역다중화부(1300)는 메인 서비스 데이터 및 모바일 서비스 데이터에 대한 각각의 프로그램 테이블 정보와 방송 신호를 각각 역다중화하여 출력할 수 있다. 그리고, 역다중화부(1300)는 타임 존 식별자 정보 또는 타임 존의 시간 기준시의 시차 정보를 역다중화할 수 있다. 역다중화부(1300)는 제어부(1500)로부터 채널 선택 명령을 수신한 경우, 사용자가 선택한 채널의 비디오/오디오 PID에 따른 비디오/오디오 스트림을 복호부(1400)로 출력할 수 있다.
프로그램테이블정보복호부(1400)는 역다중화된 프로그램테이블정보를 복호하고 복호한 정보를 제어부(1500)로 출력할 수 있다. 프로그램테이블정보복호부(1400)는 모바일 서비스 데이터/메인 서비스 데이터에 대한 프로그램 테이블 정 보를 각각 복호할 수 있다. 이 경우에 모바일 서비스 데이터의 프로그램 테이블 정보와 메인 서비스 데이터에 대한 프로그램 테이블 정보는 각각 해당 서비스 데이터를 식별하는 식별 정보를 포함할 수 있다. 예를 들어 모바일 서비스 데이터의 프로그램 테이블 정보와 메인 서비스 데이터에 대한 프로그램 테이블 정보가 각각 별개의 PID를 가질 경우 이를 각각 복호할 수 있다. 또는 모바일 서비스 데이터의 프로그램 테이블 정보와 메인 서비스 데이터에 대한 프로그램 테이블 정보가 동일한 PID를 가지지만, 그 테이블 정보가 각각의 서비스를 구별하는 식별 정보를 포함할 경우, 이를 별개의 테이블로 인식하여 복호할 수 있다. 그리고, 프로그램테이블정보복호부(1400)는 복호한 모바일 서비스 데이터에 대한 프로그램 테이블 정보와 메인 서비스 데이터에 대한 프로그램 테이블 정보를 각각 구분하여 저장할 수 있다. 그리고, 프로그램 테이블 정보 중 타임 존 식별자 정보 또는 타임 존의 시간 기준시의 시차 정보를 포함하는 프로그램 테이블 정보를 파싱하고, 파싱한 정보를 제어부(1500)로 출력할 수 있다. 프로그램테이블정보복호부(1400)는 EIT 등 방송 프로그램 정보를 파싱하고 이를 저장할 수 있다.
제어부(1500)는 도 32에 예시된 각 구성요소 블록들을 제어하고, 수신한 프로그램 테이블 정보를 이용해 각 채널에 대한 정보들을 저장할 수 있다. 예를 들면, 제어부(1500)는 파싱된 프로그램 테이블 정보를 이용해 각 채널에 대한 비디오/오디오/데이터 스트림의 정보를 채널 맵 형태로 저장할 수 있다. 예를 들어 제어부(1500)는 모바일 서비스 데이터에 대한 채널 맵과 메인 서비스 데이터에 대한 채 널 맵을 각각 별개의 채널 맵 형태로 구분하여 저장할 수 있다.
제어부(1500)는 사용자 제어 신호를 사용자 인터페이스를 통해 수신할 수 있는데, 사용자가 채널 변경 등의 제어 신호를 송신하는 경우 제어부(1500)는 채널 맵 정보를 참조하여 사용자가 원하는 채널의 신호가 출력되도록 할 수 있다. 모바일 서비스 데이터에 대한 채널 정보와 메인 서비스에 대한 채널 정보가 하나의 채널 맵 형태로 저장되더라도 제어부(1500)는 각각의 서비스에 따른 채널 정보에 따라 각 채널로 전달되는 방송 신호가 출력되도록 할 수 있다. 즉, 제어부(1500)는 메인 서비스와 모바일 서비스를 제공하는 가상 채널 간의 채널 변환, 또는 모바일 서비스를 제공하는 가상 채널 간의 채널 변환이 된 경우 해당 채널의 방송 신호가 출력되도록 튜너(1100), 복조부(1200), 역다중화부(1300)을 제어할 수 있다. 예를 들어, 채널 변환 명령이 있을 경우 제어부(1500)는 채널 맵을 참조하여 튜너(1100)를 통해 변환된 채널이 선택되도록 할 수 있다. 그리고, 제어부(1500)는 사용자가 선택하는 채널의 신호가 복조되도록 복조부(1200)를 제어할 수 있다. 예를 들어, 사용자는 이동 수신용 채널을 선택한 경우 제어부(1500)는, 이동 수신용 채널의 모바일 서비스 데이터가 다중화된 버스트 구간만 방송 신호를 복조하도록 복조부(1200)를 제어할 수 있다(복조부의 복조 동작은 도 22를 참조할 수 있다). 그리고, 사용자가 고정 수신용 채널을 선택한 경우, 제어부(1500)는 메인 서비스 데이터만을 복조하도록 복조부(1200)를 제어할 수 있다. 제어부(1500)는 저장된 채널 맵에 따라 사용자가 선택한 채널의 방송 신호에 대한 패킷이 역다중화되도록 역다중화부(1300)를 제어할 수 있다.
제어부(1500)는 도 32에 예시된 블록의 전원(power)을 제어할 수 있다. 예를 들어 도 32에 예시된 방송 수신 시스템이 모바일 서비스 데이터를 수신하는 경우, 그 수신 채널의 모바일 서비스 데이터를 포함하는 버스트 구간에서만 신호를 수신하도록 방송 수신 시스템의 전원을 제어할 수 있다. 따라서, 예시한 방송 수신 시스템은 이동 수신용 채널을 수신하더라도 전력 소모를 줄일 수 있다. 제어부(1500)는 버스트 구간의 식별 정보를 시그널링 정보나 프로그램 테이블 정보의 디스크립터로부터 얻을 수 있는다. 따라서, 제어부(1500)는 사용자가 원하는 채널의 방송 신호가 어떤 버스트 구간으로 전송되는지 버스트에 대한 정보를 통해 복조부(1200)가 해당 버스트 구간만을 복조하도록 제어할 수 있다. 그리고, 사용자가 원하는 채널의 방송 스트림의 PID에 따른 방송 신호가 역다중화되도록 역다중화부(1300)를 제어할 수 있다.
한편, 제어부(1500)는 도 32의 방송 수신 시스템의 어플리케이션(application)이나 사용자 인터페이스를 제어할 수 있다. 제어부(1500)는 프로그램 테이블 정보를 통해 채널 맵을 갱신 및 관리하고 튜너(1100)와 프로그램테이블정보복호부(1400)를 제어하여 시청자의 채널 요구에 응하도록 채널 매니저를 구동시킬 수 있다. 채널 매니저는 채널 맵을 새로 수신하는 프로그램 테이블 정보을 이용해 갱신하고, 사용자가 원하는 채널의 비디오/오디오 스트림의 PID를 역다중화부(1300)가 선택하도록 제어할 수 있다.
제어부(1500)는 방송 수신 시스템이 위치한 지역의 타임 존에 따라 시스템의 로컬 시간을 변동시키고 유지시킬 수 있다. 제어부(1500)는 프로그램테이블정보복 호부(1400)가 복호한 타임 존 식별자 정보 또는 타임 존의 시간 기준시의 시차 정보를 수신하여 방송 수신 시스템이 위치한 지역의 로컬 시간을 산출할 수 있다. 제어부(1500)가 사용자의 요청에 따라 EPG 표출을 위한 어플리케이션을 구동시키는 경우, 제어부(1500)는 프로그램테이블정보복호부(1400)가 저장한 프로그램 정보, 예를 들면 EIT로부터 복호하여 저장한 프로그램 명, 프로그램 시작, 종료 시간에 대한 정보를 수신한다. 제어부(1500)가 구동시키는 어플리케이션은 수신한 프로그램 정보를 이용하여 사용자에게 방송 프로그램 정보 등을 표출할 수 있다. 이 경우 제어부(1500)는 프로그램테이블정보복호부(1400)가 출력하는 시간에 관련된 방송 정보를 로컬 시간을 고려하여 처리한 후, 처리한 정보를 EPG로 표출되도록 할 수 있다. 또는 제어부(1500)는 프로그램테이블정보복호부(1400)로부터 방송 정보를 수신받을 경우, 타임 존에 따라 산출한 로컬 시간이 적용된 프로그램 정보를 수신할 수도 있다. 이 경우 프로그램테이블정보복호부(1400)는 제어부(1500)가 산출한 로컬 시간을 복호한 프로그램 테이블 정보에 미리 반영하여 로컬 시간이 반영된 프로그램 테이블 정보를 저장한다. 예를 들어 프로그램테이블정보복호부(1400)는 EIT를 파싱하여 얻은 프로그램 시작/종료 시간 정보 등 시간에 관련된 정보를 로컬 시간으로 환산하여 저장할 수 있다. 그리고, 제어부(1500)로부터 사용자가 EPG 표출 명령이 있는 경우 프로그램테이블정보복호부(1400)는 로컬 시간으로 환산되어 저장된 방송 프로그램 정보를 제어부(1500)로 제공한다.
복호부(1600)는 역다중화부(1300)가 출력하는 비디오 또는/및 오디오 스트림을 복호하여 출력한다. 예를 들면, 복호부(1600)는 AC-3 방식에 따라 부호화된 오 디오 스트림을 복호하거나, MPEG-2 방식으로 부호화된 비디오 스트림을 복호할 수 있다. 복호부(1600)는 복호시 에러가 발생한 경우 에러 발생을 제어부(1700)로 전송할 수 있다.
표출부(1800)는 복호부(1600)가 출력하는 비디오/오디오 신호를 표출할 수 있다. 도 32의 예에서 표출부(1800)는 비디오 영상을 출력하는 디스플레이부와 오디오를 출력하는 스피커를 포함한다. 표출부는(1800)는 제어부(1700)가 생성하는 그래픽 신호를 화면에 표출되는 비디오 영상과 함께 디스플레이부상(on screen display)에서 표시할 수 있다. 표출부(1800)가 그래픽 신호로 표출하는 신호는 채널 번호, 방송 프로그램 정보, 방송국 정보, 방송 제목, 방송 시간, 캡션, 방송등급, 상세줄거리 등의 EPG 정보를 포함한다. 제어부(1500)가 타임 존 식별자 정보 또는 타임 존의 시간 기준시의 시차 정보를 이용하여 로컬 시간을 산출한 경우, 표출부(1800)는 사용자 요청에 따라 제어부(1500)가 산출한 로컬 시간 정보를 화면에 표출할 수도 있다.
저장부(1700)는 채널 맵에 따른 채널 정보나, 어플리케이션 등의 데이터를 저장할 수 있다. 예를 들어 저장부(1700)는 NVRAM(nonvolatile random access memory)이나 플래쉬 메모리일 수 있다.
도 33은 방송 신호를 수신하는 예를 나타낸 흐름도이다. 도 36를 참조하여 방송 신호를 수신하는 예를 개시하면 다음과 같다.
사용자가 방송 수신 시스템의 파워를 온(on)한다(S105).
사용자가 물리 채널을 선택하거나 기존의 튜닝하던 물리 채널을 변경한 다(S110). 채널 맵이 형성되거나, 수신 신호에 포함된 채널의 채널 맵이 이미 형성되어 있으면 채널 맵에 따라 선택된 채널의 주파수로 튜닝한다(S120). 튜너는 가장 좋은 튜닝 결과를 채널 맵이 저장된 제어부로 출력할 수 있다.
튜닝한 방송 신호를 복조한다(S130). 방송 신호를 복조할 경우 메인 서비스 데이터만을 수신할 수 있는 방송 수신 시스템은 모바일 서비스 데이터에 대해서는 복조하지 못하고 널 패킷으로 처리하여 무시할 수 있다. 반면에 모바일 서비스 데이터를 수신하는 방송 수신 시스템은 모바일 서비스 데이터가 변조된 방식을 고려하여 신호 복조를 수행한다. 상세한 복조 과정은 도 22에 대한 예를 참조할 수 있다.
복조된 신호로부터 프로그램 테이블 정보를 역다중화하여 파싱한다(S140). 예를 들면 PAT를 수신하여 파싱한 후, 각 프로그램의 PMT 정보를 파싱할 수 있다. 방송 신호 중 프로그램 테이블 정보는, 모바일 서비스 데이터에 대한 프로그램 테이블 정보와 메인 서비스 데이터에 대한 프로그램 테이블 정보가 각각 별개로 존재할 수 있다. 이 경우 메인 서비스 데이터/모바일 서비스 데이터에 대한 동일한 종류의 프로그램 테이블 정보는 서로 다른 패킷 식별자를 가질 수 있다. 또는 메인 서비스 데이터/모바일 서비스 데이터에 대한 동일한 종류의 프로그램 테이블 정보가 동일한 패킷 식별자를 가진다고 하더라도, 각각은 두 서비스를 구분할 수 있는 식별 정보를 포함할 수 있다. S140 단계에서 각각 메인 서비스/모바일 서비스를 구분하는 식별 정보를 포함하는 프로그램 테이블을 파싱하면 각각 파싱한 프로그램 테이블 정보를 구분하여 관리할 수 있다. S140에서 타임 존 식별자 정보 또는 타임 존에 따른 기준시에 대한 시차 정보를 포함하는 프로그램 테이블 정보를 역다중화하여 파싱할 수 있다.
파싱한 프로그램 테이블 정보로부터 채널에 대한 정보를 얻고, 각 채널에 대한 오디오/비디오/데이터 엘리먼터리 스트림(ES)의 PID 정보를 검출한다(S150). 예를 들어 VCT를 수신한 후 파싱하여 각 채널에 대한 정보를 얻을 수 있다. 이 경우 고정 수신용 채널에 대한 VCT와 이동 수신용 채널에 대한 VCT를 각각 파싱하고, 각각의 채널에 대한 정보를 얻을 수 있다.
S 150의 결과로부터 수신된 채널 정보는 채널 맵으로 저장되거나 갱신되고, 사용자가 선택한 채널에 따라 수신된 채널 정보의 오디오/비디오/데이터 엘리먼터리 스트림 등의 서비스가 수신 시스템에서 유효한 것인지 판단한다(S160). 만약 유효 채널이 아닌 경우(S160 no), 예를 들어 채널 없음(no channel), 신호 없음(no signal) 등 정해진 채널 운영에 따라 사용자에게 이를 알려줄 수 있다(S165). 그리고, 유효 채널의 채널 정보를 얻기 위해 새로운 프로그램 테이블 정보에 대해 수신 시도하도록 S140 단계로 돌아갈 수 있다(S167).
만약 출력한 채널 정보로부터 사용자가 선택한 채널이 유효 채널이면(S160 yes) 채널 맵에 따라 해당 가상 채널의 오디오/비디오/데이터 스트림의 PID를 선택한다(S170). 채널 맵에 따라 시청자가 선택한 채널이 고정 수신 채널인지 또는 이동 수신 채널인지에 따라 S 130 단계의 복조과정을 제어한다.
역다중화된 PID에 따른 오디오/비디오/데이터 스트림을 복호하여 방송이 출력되도록 할 수 있다.
고정 수신용 채널에 따른 메인 서비스가 제공되는 경우에는 메인 서비스 데이터가 출력되도록 해당 채널의 방송 신호에 대해 채널 튜닝, 복조, 역다중화를 연속하여 수행한다. 반면에 이동 수신용 채널에 따른 모바일 서비스가 제공되는 경우에는 사용자가 선택한 이동 수신 채널의 방송 신호가 포함된 버스트 구간의 신호만을 채널 튜닝을 하고, 복조하고, 역다중화되도록 방송 신호를 처리할 수 있다. 그리고, 방송이 출력되는 경우 OSD 등을 통해 선택된 채널 번호나 채널 정보를 화면에 선택적으로 표시할 수 있다(S175).
사용자가 선택한 채널의 방송을 출력한다(S180). 선택한 가상 채널로 전송되는 방송 신호의 비디오/오디오/데이터 스트림을 복호하여 표출한다. 사용자는 정상적인 방송을 시청하고 OSD 등을 통해 방송 수신을 제어할 수 있다.
방송 시청 중 물리 채널 또는 가상 채널을 변경할 수 있다(S190). 물리 채널이 변경된 경우 S110 단계를 수행하고, 가상 채널이 변경된 경우 S170 단계를 수행한다. 만약 이동 수신용 채널 간의 채널 변경이 있거나, 고정 수신용 채널로부터 이동 수신용 채널로 채널 변경될 경우, S170 단계를 수행하여 변경된 채널의 방송 신호가 포함된 버스트를 찾아, 그 버스트 구간에서만 방송 신호를 복조할 수 있다. 반면에, 고정 수신용 채널 간의 채널 변경이 있거나, 이동 수신용 채널로부터 고정수신용 채널로 채널 변경이 있는 경우에는 메인 서비스 데이터가 포함된 구간을 복조한다(메인 서비스 데이터가 버스트 구간에 포함될 경우에는 버스트 구간을 포함한 신호 구간을 복조할 수 있다).
만약 채널 변경이 없다면 채널 정보의 버전이 갱신되는지 판단할 수 있 다(S200). 채널 정보가 갱신된 경우 채널 맵의 정보를 갱신하고, 새로운 프로그램테이블 정보를 받기 위해 S140 단계를 수행하고, 채널 정보가 갱신되지 않으면 계속하여 S180단계를 수행할 수 있다.
방송 시청 중 사용자가 로컬 시간의 표출을 요청하거나, EPG 정보를 표출을 요청하는 경우에는 각각 도 30 및 도 31의 과정을 따라 시간이 표출되도록 할 수 있다.
지금까지 설명한 본 발명은 상술한 실시예에 한정되지 않으며, 첨부된 청구범위에서 알 수 있는 바와 같이 본 발명이 속한 분야의 통상의 지식을 가지 자에 의해 변형이 가능하고 이러한 변형은 본 발명의 범위에 속한다.
위에서 개시한 예에 따르면 채널 변화 및 노이즈에 강한 디지털 방송 시스템 및 데이터 처리 방법을 제공할 수 있다. 그리고, 모바일 서비스 데이터에 대해 추가의 부호화를 수행하여 수신 시스템으로 전송함으로써, 수신 시스템의 수신 성능을 향상시킬 수 있다. 그리고, 송/수신측의 약속에 의해 알고 있는 기지 데이터를 데이터 영역의 소정 영역에 삽입하여 전송함으로써, 수신 시스템의 수신 성능을 향상시킬 수 있다. 또한, 이동 수신에 따른 시간 변화에 대응하여 시간 정보 및 방송 정보를 표출할 수 있다.

Claims (6)

  1. 방송 수신 시스템이 데이터를 처리하는 방법에 있어서,
    상기 방송 수신 시스템이 위치한 타임 존 식별자 정보가 설정된 프로그램 테이블 정보를 포함하는 방송 신호를 수신하는 단계;
    상기 프로그램 테이블 정보를 파싱하여 기준시와 상기 타임 존 식별자 정보를 얻는 단계; 및
    상기 기준시와 상기 타임 존 식별자 정보로부터 로컬 시간을 얻는 단계를 포함하는 데이터 처리 방법.
  2. 제 1항에 있어서,
    상기 데이터 처리 방법은 상기 얻은 로컬 시간을 이용하여 상기 방송 신호에 포함된 방송 프로그램의 시간 관련 정보를 상기 로컬 시간에 따라 처리하는 데이터 처리 방법.
  3. 제 1 항에 있어서,
    상기 프로그램 테이블 정보는 STT(system time table)인 데이터 처리 방법.
  4. 방송 수신 시스템이 데이터를 처리하는 방법에 있어서,
    상기 방송 수신 시스템이 위치한 타임 존의 기준시에 대한 시차 정보가 설정 된 프로그램 테이블 정보를 포함하는 방송 신호를 수신하는 단계;
    상기 프로그램 테이블 정보를 파싱하여 상기 기준시와 상기 타임 존의 기준시에 대한 시차 정보를 얻는 단계; 및
    상기 기준시와 상기 타임 존의 기준시에 대한 시차 정보로부터 로컬 시간을 얻는 단계를 포함하는 데이터 처리 방법.
  5. 제 4항에 있어서,
    상기 타임 존의 기준시에 대한 시차 정보는 상기 기준시로부터 상기 타임 존의 시차인 시간 차이 정보 및 상기 기준시보다 빠른지 느린지를 나타내는 폴라리티(polarity) 정보를 포함하는 데이터 처리 방법.
  6. 타임 존 식별자 정보를 포함하는 방송 신호를 수신하고, 사용자가 선택한 채널을 출력하는 튜너;
    상기 출력한 방송 신호 중 모바일 서비스 데이터를 복조하여 복조한 방송 스트림을 출력하는 복조부;
    상기 복조부가 출력하는 방송 스트림을 역다중화하는 역다중화부;
    상기 역다중화부가 역다중화한 프로그램 테이블 정보로부터 상기 방송 신호에 포함된 프로그램 정보 및 상기 타임 존 식별자 정보를 복호하는 프로그램테이블정보복호부; 및
    상기 타임 존 식별자 정보를 이용하여 로컬 시간을 산출하고, 상기 로컬 시 간에 따라 상기 프로그램 정보를 처리하는 제어부를 포함하는 디지털 방송 시스템.
KR1020070036234A 2007-04-13 2007-04-13 방송 신호 송수신 장치 및 방송 신호 송수신 방법 KR101351026B1 (ko)

Priority Applications (10)

Application Number Priority Date Filing Date Title
KR1020070036234A KR101351026B1 (ko) 2007-04-13 2007-04-13 방송 신호 송수신 장치 및 방송 신호 송수신 방법
MX2009011085A MX2009011085A (es) 2007-04-13 2008-04-08 Sistema de difusion digital y metodo de procesamiento de datos.
CN200880018229A CN101682725A (zh) 2007-04-13 2008-04-08 数字广播系统和数据处理方法
PCT/KR2008/001975 WO2008127006A1 (en) 2007-04-13 2008-04-08 Digital broadcasting system and data processing method
CA2683762A CA2683762C (en) 2007-04-13 2008-04-08 Digital broadcasting system and data processing method
US12/100,573 US7934243B2 (en) 2007-04-13 2008-04-10 Digital broadcasting system and data processing method
US13/051,743 US8443412B2 (en) 2007-04-13 2011-03-18 Digital broadcasting system and data processing method
US14/711,531 USRE46676E1 (en) 2007-04-13 2015-05-13 Digital broadcasting system and data processing method
US15/833,841 USRE47958E1 (en) 2007-04-13 2017-12-06 Digital broadcasting system and data processing method
US16/852,176 USRE48776E1 (en) 2007-04-13 2020-04-17 Digital broadcasting system and data processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070036234A KR101351026B1 (ko) 2007-04-13 2007-04-13 방송 신호 송수신 장치 및 방송 신호 송수신 방법

Publications (2)

Publication Number Publication Date
KR20080092643A true KR20080092643A (ko) 2008-10-16
KR101351026B1 KR101351026B1 (ko) 2014-01-13

Family

ID=39864070

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070036234A KR101351026B1 (ko) 2007-04-13 2007-04-13 방송 신호 송수신 장치 및 방송 신호 송수신 방법

Country Status (3)

Country Link
US (5) US7934243B2 (ko)
KR (1) KR101351026B1 (ko)
WO (1) WO2008127006A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102592655B1 (ko) * 2022-07-20 2023-10-23 엘지전자 주식회사 멀티미디어 디바이스 및 그 제어 방법

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007091779A1 (en) 2006-02-10 2007-08-16 Lg Electronics Inc. Digital broadcasting receiver and method of processing data
WO2007100186A1 (en) * 2006-03-02 2007-09-07 Lg Electronics Inc. Digital broadcasting system and method of processing data
WO2007126196A1 (en) 2006-04-29 2007-11-08 Lg Electronics Inc. Digital broadcasting system and method of processing data
WO2007136166A1 (en) 2006-05-23 2007-11-29 Lg Electronics Inc. Digital broadcasting system and method of processing data
US7873104B2 (en) 2006-10-12 2011-01-18 Lg Electronics Inc. Digital television transmitting system and receiving system and method of processing broadcasting data
KR101253185B1 (ko) 2007-03-26 2013-04-10 엘지전자 주식회사 디지털 방송 시스템 및 데이터 처리 방법
KR101285887B1 (ko) 2007-03-26 2013-07-11 엘지전자 주식회사 디지털 방송 시스템 및 데이터 처리 방법
KR101285888B1 (ko) 2007-03-30 2013-07-11 엘지전자 주식회사 디지털 방송 시스템 및 데이터 처리 방법
KR20080092502A (ko) * 2007-04-12 2008-10-16 엘지전자 주식회사 모바일 서비스 데이터 수신 장치 및 제어 방법
US8433973B2 (en) 2007-07-04 2013-04-30 Lg Electronics Inc. Digital broadcasting system and method of processing data
WO2009005326A2 (en) 2007-07-04 2009-01-08 Lg Electronics Inc. Digital broadcasting system and method of processing data
KR20090012180A (ko) 2007-07-28 2009-02-02 엘지전자 주식회사 디지털 방송 시스템 및 데이터 처리 방법
WO2009028857A2 (en) 2007-08-24 2009-03-05 Lg Electronics Inc. Digital broadcasting system and method of processing data in digital broadcasting system
WO2010120735A2 (en) * 2009-04-16 2010-10-21 Thomson Licensing Apparatus and method for encoding a signal
CN103856805A (zh) * 2012-11-28 2014-06-11 上海聚音信息科技有限公司 一种跨时区节目单转换方法
KR101990903B1 (ko) * 2012-12-03 2019-06-19 한국전자통신연구원 저전력 옥외 광역 통신을 위한 코드분할다중화 정진폭 부호화 장치 및 방법
US20170055015A1 (en) * 2014-02-28 2017-02-23 Mitsubishi Electric Corporation Electronic-program-guide generation device and electronic-program-guide generation method
JP2016197814A (ja) * 2015-04-03 2016-11-24 アルパイン株式会社 電子番組表の時刻調整システムおよび時刻調整方法
US10659759B2 (en) * 2016-08-29 2020-05-19 Stratus Systems, Inc. Selective culling of multi-dimensional data sets
CN113766482B (zh) * 2021-09-15 2022-10-14 荣耀终端有限公司 查找蓝牙设备的方法、电子设备及存储介质

Family Cites Families (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5646284A (en) 1991-12-12 1997-07-08 Toyota Jidosha Kabushiki Kaisha Polarizable phenanthroline complex crystal having improved stability to heat and moisture
US5649284A (en) * 1993-12-17 1997-07-15 Sony Corporation Multiplex broadcasting system
US5634138A (en) * 1995-06-07 1997-05-27 Emulex Corporation Burst broadcasting on a peripheral component interconnect bus
US5797093A (en) * 1996-01-30 1998-08-18 Telefonaktiebolaget Lm Ericsson Routing of an emergency cellular telephone call
US6067457A (en) * 1996-04-30 2000-05-23 Motorola, Inc. Method for dynamically assigning priority to a call
US5930230A (en) * 1996-05-28 1999-07-27 Qualcomm Incorporated High data rate CDMA wireless communication system
US6678311B2 (en) * 1996-05-28 2004-01-13 Qualcomm Incorporated High data CDMA wireless communication system using variable sized channel codes
CA2261933A1 (en) * 1996-07-25 1998-02-05 Hybrid Networks, Inc. Two-way asymmetric communication system
US6201974B1 (en) * 1996-09-06 2001-03-13 Nokia Mobile Phones Limited Mobile station and network having hierarchical index for cell broadcast service
FI104680B (fi) * 1997-01-09 2000-04-14 Nokia Mobile Phones Ltd Menetelmä naapurisolutiedon määrittämiseksi solukkoverkossa ja matkaviestin
ATE540497T1 (de) * 1997-05-30 2012-01-15 Qualcomm Inc Fehlerschutzverfahren und vorrichtung für über- funk-dateiübertragung
US6243469B1 (en) * 1997-09-18 2001-06-05 Matsushita Electric Industrial Co., Ltd. Information transmission method and apparatus
US6735185B1 (en) * 1997-12-24 2004-05-11 Nokia Mobile Phones Ltd DS/CDMA reverse link structure for high data rate transmission
KR100304115B1 (ko) * 1998-12-18 2001-09-24 이계철 무선통신시스템에서동기용버스트를이용한사용자구별방법
US6378101B1 (en) * 1999-01-27 2002-04-23 Agere Systems Guardian Corp. Multiple program decoding for digital audio broadcasting and other applications
US6229824B1 (en) * 1999-05-26 2001-05-08 Xm Satellite Radio Inc. Method and apparatus for concatenated convolutional endcoding and interleaving
KR100747052B1 (ko) * 1999-07-13 2007-08-07 톰슨 라이센싱 패킷화된 프로그램 정보를 처리하고 디코딩하기 위한 방법
US6309066B1 (en) * 1999-12-29 2001-10-30 Kuo-Ying Kan Assembled eye-glasses
US6622005B1 (en) * 2000-03-03 2003-09-16 Ericsson Inc. Methods, systems and devices for cascaded communications
US6963588B1 (en) * 2000-11-21 2005-11-08 Cellco Partnership System and methodology for automatically setting a clock
US7111221B2 (en) * 2001-04-02 2006-09-19 Koninklijke Philips Electronics N.V. Digital transmission system for an enhanced ATSC 8-VSB system
US7565106B1 (en) * 2001-04-26 2009-07-21 Sprint Spectrum L.P. Wireless signal repeater with temperature and time display
JP2002353828A (ja) * 2001-05-28 2002-12-06 Funai Electric Co Ltd デジタル放送受信機
US7649829B2 (en) * 2001-10-12 2010-01-19 Qualcomm Incorporated Method and system for reduction of decoding complexity in a communication system
US20040203620A1 (en) * 2002-10-15 2004-10-14 Timothy Thome Method and apparatus for time stamp of electronic message
ATE504446T1 (de) * 2002-12-02 2011-04-15 Silverbrook Res Pty Ltd Totdüsenausgleich
US6977914B2 (en) * 2002-12-23 2005-12-20 Nokia Corporation Broadcast hand-over in a wireless network
KR100503091B1 (ko) * 2003-07-28 2005-07-21 삼성전자주식회사 디지털 텔레비전의 채널 스캔 방법
US7509556B2 (en) * 2003-11-20 2009-03-24 Seagate Technology Llc Method and apparatus for combining output of different type interleavers based on an input data sequence to obtain a combined output
KR100896684B1 (ko) * 2004-01-27 2009-05-14 삼성전자주식회사 수신 성능이 향상된 디지털 방송 송수신 시스템 및 그의신호처리방법
US20050168641A1 (en) * 2004-01-30 2005-08-04 Dong-Uk Seo Broadcast transceiver and method of operating tuner thereof
EP1603339A1 (en) * 2004-06-01 2005-12-07 STMicroelectronics S.r.l. Method and system for communicating video data in a packet-switched network, related network and computer program product therefor
KR100678936B1 (ko) * 2004-08-06 2007-02-07 삼성전자주식회사 디지털 방송 수신기에서의 복조 방식 선택 방법 및 그방법을 이용하는 디지털 방송 수신기
KR20060055959A (ko) * 2004-11-19 2006-05-24 주식회사 대우일렉트로닉스 시스템 시간 테이블 데이타 구조
KR100725388B1 (ko) 2004-12-16 2007-06-07 삼성전자주식회사 디지털 방송 수신 장치 및 이를 이용한 방송 프로그램검색 방법
KR100689479B1 (ko) 2005-02-15 2007-03-02 삼성전자주식회사 디지털 방송을 위한 전자 프로그램 가이드 제공 방법
KR100692591B1 (ko) * 2005-07-25 2007-03-13 삼성전자주식회사 디지털 영상표시장치 및 그의 시간 설정 방법
US20070071149A1 (en) * 2005-09-27 2007-03-29 Linbo Li Maximum ratio combining in broadcast OFDM systems based on multiple receive antennas
US7751466B2 (en) * 2006-02-10 2010-07-06 Broadcom Corporation Channel estimation for a high-speed data packet access rake receiver
WO2007123302A1 (en) * 2006-04-25 2007-11-01 Lg Electronics Inc. Digital broadcasting system and method of processing data
US7873104B2 (en) * 2006-10-12 2011-01-18 Lg Electronics Inc. Digital television transmitting system and receiving system and method of processing broadcasting data
WO2008097028A1 (en) * 2007-02-09 2008-08-14 Lg Electronics Inc. Digital broadcasting system and method of processing data
KR101253186B1 (ko) * 2007-03-26 2013-04-10 엘지전자 주식회사 디지털 방송 시스템 및 데이터 처리 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102592655B1 (ko) * 2022-07-20 2023-10-23 엘지전자 주식회사 멀티미디어 디바이스 및 그 제어 방법

Also Published As

Publication number Publication date
US7934243B2 (en) 2011-04-26
WO2008127006A1 (en) 2008-10-23
KR101351026B1 (ko) 2014-01-13
USRE46676E1 (en) 2018-01-16
US8443412B2 (en) 2013-05-14
USRE47958E1 (en) 2020-04-21
US20110167467A1 (en) 2011-07-07
US20090049497A1 (en) 2009-02-19
USRE48776E1 (en) 2021-10-12

Similar Documents

Publication Publication Date Title
KR101351026B1 (ko) 방송 신호 송수신 장치 및 방송 신호 송수신 방법
KR101351019B1 (ko) 방송 신호 송수신 장치 및 방송 신호 송수신 방법
KR101221914B1 (ko) 디지털 방송 신호 송신 장치 및 방법
KR101253187B1 (ko) 디지털 방송 시스템 및 데이터 처리 방법
KR101328949B1 (ko) 방송 신호 송수신 방법
KR101253186B1 (ko) 디지털 방송 시스템 및 데이터 처리 방법
KR101306715B1 (ko) 방송 신호 수신 장치 및 방송 신호 송수신 방법
KR101199387B1 (ko) 디지털 방송 시스템 및 데이터 처리 방법
KR20080092195A (ko) 디지털 방송 시스템 및 데이터 처리 방법
KR20080093001A (ko) 모바일 서비스 데이터 수신 장치 및 제어 방법
KR101666906B1 (ko) 디지털 방송 신호 송수신 장치 및 방법
CA2683762C (en) Digital broadcasting system and data processing method
KR101199386B1 (ko) 디지털 방송 시스템 및 데이터 처리 방법
KR20080069891A (ko) 디지털 방송 시스템 및 데이터 처리 방법
KR100921472B1 (ko) 디지털 방송 시스템 및 데이터 처리 방법
KR100930899B1 (ko) 수신 시스템 및 데이터 처리 방법
KR100917213B1 (ko) 수신 시스템 및 데이터 처리 방법
KR101314614B1 (ko) 디지털 방송 시스템 및 데이터 처리 방법
KR100921471B1 (ko) 디지털 방송 시스템 및 데이터 처리 방법
KR100914714B1 (ko) 디지털 방송 시스템 및 데이터 처리 방법
KR101295387B1 (ko) 디지털 방송 신호 송수신 장치 및 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee