KR100601689B1 - 섹션 데이터 필터링 방법 및 장치 - Google Patents

섹션 데이터 필터링 방법 및 장치 Download PDF

Info

Publication number
KR100601689B1
KR100601689B1 KR1020040049744A KR20040049744A KR100601689B1 KR 100601689 B1 KR100601689 B1 KR 100601689B1 KR 1020040049744 A KR1020040049744 A KR 1020040049744A KR 20040049744 A KR20040049744 A KR 20040049744A KR 100601689 B1 KR100601689 B1 KR 100601689B1
Authority
KR
South Korea
Prior art keywords
value
bit
section
mask
section number
Prior art date
Application number
KR1020040049744A
Other languages
English (en)
Other versions
KR20060000778A (ko
Inventor
홍경표
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020040049744A priority Critical patent/KR100601689B1/ko
Priority to JP2005188781A priority patent/JP4805616B2/ja
Priority to US11/169,061 priority patent/US20050286563A1/en
Priority to EP05254041A priority patent/EP1613057A1/en
Publication of KR20060000778A publication Critical patent/KR20060000778A/ko
Application granted granted Critical
Publication of KR100601689B1 publication Critical patent/KR100601689B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/454Content or additional data filtering, e.g. blocking advertisements

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Circuits Of Receivers In General (AREA)

Abstract

섹션 데이터 필터링 방법 및 장치가 개시된다. 본 발명에 의한 필터링 장치는, 디지털 방송 수신기에서 섹션 번호에 기초하여 섹션 데이터를 필터링하는데 사용하기 위한 마스크를 생성하는 마스크 생성부를 포함하며, 마스크 생성부는, 상기 수신기에 이미 저장된 섹션 번호의 각 비트 위치에서의 비트값 0 또는 비트값 1 의 누적값에 기초하여 상기 마스크의 생성 여부를 결정한다. 본 발명에 의하면, 이미 수신기에 수신되어 저장된 섹션 데이터의 섹션 번호를 그 다음 수신되는 섹션 번호와 직접 비교하지 않고, 수신된 비트값의 누적값을 이용하여 생성된 마스크를 이용하여 필터링을 수행함으로써, 필터링 처리 시간을 감소시킨다.

Description

섹션 데이터 필터링 방법 및 장치{Method and apparatus for filtering section data}
도 1a 은 ISO 13818-6 에 규정된 디지털 방송 데이터의 구조도를 나타내는 도면.
도 1b 는 종래의 디지털 방송 수신기를 나타내는 도면.
도 2 는 DDB 및 섹션 데이터의 내부 구조를 나타내는 도면.
도 3 은 본 발명에 의한 디지털 방송 수신기의 구조를 나타내는 도면.
도 4 는 본 발명의 일 실시예에 의한 도 3 의 마스크 생성부(360)의 내부 구조를 나타내는 도면.
도 5 는 필터부(330)의 내부 구성을 나타내는 도면.
도 6 은 섹션 번호 필터부의 필터링 동작을 설명하는 도면.
도 7 은 기준값이 --1- 이고 마스크가 0010 인 경우 통과되지 않고 버려지는 섹션 데이터를 나타내는 도면.
도 8 은 도 7 의 상태에서 기준값이 --10 이고 마스크가 0011 으로 변하였을 때 필터부에 의해 버려지는 섹션 데이터를 나타내는 도면.
도 9 은 본 발명에 따른 섹션 번호 필터링 방법을 나타내는 시간 흐름도이다.
본 발명은 디지털 방송의 섹션 데이터 필터링 방법 및 장치에 관한 것으로서, 보다 상세하게는 섹션 번호의 각 비트값의 누적값에 기초하여 생성된 마스크를 이용하여 섹션 데이터를 필터링하는 방법 및 장치에 관한 것이다.
최근 셋톱박스의 정보 처리 속도의 증가 및 인터넷의 보급 확산으로 인해, 디지털 미디어 방송(Digital Media Broadcasting)이 확산되고 있다. 디지털 미디어 방송은 제공되는 서비스의 질적 및 양적 증가 때문에 아날로그 방송에 비해 많은 장점을 가진다. 디지털 미디어 방송을 통해 사용자에게 전달되는 데이터는 오디오 데이터 및 비디오 데이터 이외에, 서비스 데이터를 포함한다. 서비스 데이터를 이용한 사용자로의 부가 서비스는 디지털 미디어 방송의 대표적 장점중의 하나이다.
서비스 데이터는 방송 제공자로부터 수신기로 제공된 후, 수신기의 마이크로 프로세서에서 수행됨으로써 전술한 부가 서비스를 수행하는데 이용된다. 서비스 데이터는 자바, HTML,MHEG 등을 이용하여 제작된 응용 프로그램 및 응용 프로그램의 수행에 필요한 데이터를 포함한다. 서비스 데이터는 양방향 채널을 이용하여 대화형 서비스 제공을 가능하게 한다. 이러한 대화형 서비스의 예로는 여론조사, 인기가요순위 투표, 시청률 조사 및 방영 인물에 대한 인기 투표, 설문 조사, 홈쇼핑 및 방영되고 있는 영화의 제작 정보 제공 등이 있다.
도 1a 은 ISO 13818-6 에 규정된 디지털 방송 데이터의 구조도를 나타내는 도면이다.
디지털 미디어 방송에 있어서, 데이터 전송 프로토콜의 종래 기술에는, ISO 13818-6 에 의해 규정된 DSM-CC 데이터 카루셀이 있다. 데이터 카루셀을 데이터를 모듈이라고하는 논리적인 단위로 그룹화하고, 이 모듈을 다시 블록이라고 하는 물리적인 전송단위로 분할한다. 방송 제공자는 블록을 반복하여 수신기에 전송한다. 즉 데이터 카루셀은 일정 주기로 전송채널을 통해 반복적으로 수신기로 전송된다. 수신기는 오디오, 비디오 및 서비스데이터를 블록 단위로 수신한 후 이것을 조립함으로써 모듈로 재구축한다. 모듈은 수신기내에서 전술한 서비스를 구현하기 위한 논리적 단위로 사용된다.
이러한 전송 방식을 실현하기 위해서, 데이터 카루셀은 다운로드 데이터 지시자(Download Data Indication,DDI) 및 다운로드 데이터 블록(Download Data Block)라는 2개의 테이블을 정의하고 있다. DII 는 모듈을 식별하는 모듈 ID 및 모듈의 실체를 운반하는 DDB 로의 포인터를 가진다. 전송되는 모듈은 일정한 크기의 로 분할된후 DDB 에 채워져 전송된다. DDB 는 하나이상의 섹션 데이터(Section Data)를 포함한다.
도 1b 는 종래의 디지털 방송 수신기를 나타내는 도면이다.
디지털 방송 수신기는 전송 채널을 통해 전송되는 방송 스트림중에서 사용자가 원하는 채널을 선택함으로써 소정의 채널의 전송 스트림을 추출하는 튜너부(110), 전송 스트림(Transport Stream)중에서 오디오/비디오 데이터를 포함하는 전송 스트림(122) 및 서비스 데이터를 포함하는 전송 스트림(124)을 분할하는 역다중화부(120), 서비스 데이터를 포함하는 전송 스트림으로부터 사용자가 원하는 섹션 데이터를 추출하는 필터부(140), 추출된 섹션 데이터(142)가 순차적으로 저장되는 버퍼부(150), 버퍼부에 저장된 섹션 데이터(152)를 읽어들여서 소정의 어플리케이션을 처리함으로써 서비스 출력 데이터(162)를 생성하는 데이터 처리부(160), 오디오/비디오 데이터를 포함하는 전송 스트림(122)을 처리함으로써 AV 출력 데이터(132)를 생성하는 AV 처리부(130) 및 AV 출력 데이터(132) 및 서비스 출력 데이터(162)를 사용자에게 출력하는 출력부(170)를 포함한다.
ISO 13818-6 에 의하면, 디지털 방송으로 전송되는 방송 데이터는 전송 스트림의 형태로 전송된다. 전송 스트림은 하나이상의 패킷을 포함하며, 하나의 패킷은 188Byte 의 고정된 크기를 가진다. 하나의 패킷마다 하나의 패킷 ID (PID)가 할당되어 있으며, 패킷은 오디오 패킷, 비디오 패킷, 데이터 패킷으로 분류된다.
필터부(140)는 , 패킷 ID 에 기초하여, 전송 스트림으로부터 원하는 패킷만을 추출한 후 이들을 조합함으로써 섹션 데이터를 생성한다. 섹션 데이터는 최대 4096 Byte 의 크기를 가진다. 하나의 카루셀 데이터를 형성하는 섹션 데이터는 하나이상이며, 다운로드 데이터 블록(DDB)이라는 고정된 크기의 블록을 단위로 수신기에 전송된다. 즉 DDB 는 하나이상의 섹션 데이터를 포함한다.
도 2 는 DDB 및 섹션 데이터의 내부 구조를 나타내는 도면이다.
도 2 에 따르면, DDB 는 섹션 0부터 섹션 L 까지의 L+1 개의 섹션을 포함한다. 섹션 데이터는 섹션 헤더와 패이로드 데이터를 포함한다.
섹션 헤더는 테이블 ID, 섹션 길이, 테이블 ID 확장자, 버전 번호, 섹션 번 호, 마지막 섹션 번호 등을 포함한다.
테이블 ID 는 DDB 을 특정하는 식별자이다. 테이블 ID 확장자는 테이블 ID 로 DDB를 특정하지 못할 때 추가되는 부가 정보이며, 예를 들면 모듈 ID 가 포함될 수 있다. 섹션 번호는 DDB 내에서의 섹션의 일련 번호를 나타낸다. 예를 들면 임의의 섹션 헤더로부터 추출된 테이블 ID가 0x3c 이고, 섹션 번호가 0003, 마지막 섹션 번호가 000f 라면, 해당 섹션 데이터는 테이블 ID 가 0x3c 인 DDB 내에 포함된 16개의 섹션 데이터 중에서, 4번째 섹션임을 나타낸다. 버전 번호는 해당 섹션 데이터의 버전을 나타낸다.
필터부(140)는 테이블 ID, 모듈 ID, 버전 번호 등에 기초하여 사용자가 원하는 섹션 데이터를 필터링한다. 여기서 사용자가 원하는 섹션 데이터의 테이블 ID 등은 방송 제공자가 수신기 측에 미리 전송하는 여러 종류의 테이블인 PMT, AIT, DSI, DDI 등을 이용하여 결정된다.
데이터 처리부(160)는 내부에 메모리(미도시)를 포함하고, 그 메모리에 버퍼로부터 전송된 섹션 데이터를 저장한다. 메모리에 저장된 섹션 데이터는 데이터 처리부내의 별도의 프로세서에 의해 어플리케이션을 수행에 사용된다.
그러나, 이러한 종래의 수신기에 따르면, 버퍼에서의 데이터 유실(loss)이 발생하여 새로운 주기의 카루셀 데이터를 받아야 하는 경우, 이전 주기에서 버퍼에 저장되었던 섹션 데이터가 다시 버퍼내에 중복 저장되는 문제점이 있다. 즉 예를 들면 0000부터 000f 까지 16개의 섹션 데이터를 포함하는 카루셀 데이터를 수신하고자 하는 경우, 첫 번째 주기에서 데이터 처리부(160)내의 메모리에 0001부터 0004 까지의 섹션 데이터가 저장된 후 두 번째 주기에서 동일한 카루셀 데이터를 수신하였을 때 0001부터 0004 까지의 섹션 데이터는 버퍼에 저장된후 데이터 처리부내의 메모리에 중복 저장된다. 이는 이전 주기에서 수신한 섹션 데이터인지 여부에 대한 판단은 데이터 처리부에 도달해서야 비로소 수행되기 때문이다.
이러한 데이터의 중복 저장은, 수신기의 제한된 성능으로 인해, 하나의 어플리케이션을 실행시키는데 필요한 카루젤 데이터의 완전한 전송에 소요되는 시간을 증가시키고, 또한 그 결과, 사용자가 방송 어플리케이션을 실행시킴에 있어서, 사용자 입력후 출력까지 상당 시간을 기다리게 하는 불편함을 초래한다.
또한 이러한 데이터의 중복 저장을 방지하기 위해 수신된 섹션 데이터의 섹션 번호를 이미 수신기에 저장된 섹션 데이터의 섹션 번호와 비교함으로써 섹션 데이터 필터링을 수행하는 방법도 있지만, 이러한 방법은 섹션 데이터가 수신될 때마다 섹션 번호의 모든 비트값을 비교해야 하기 때문에 처리 시간이 증가되어 결국 필터링에 소요되는 시간이 증가한다.
따라서 본 발명은 전술한 과제를 해결하기 위해 안출된 것으로서, 섹션 번호에 기초한 섹션 데이터 필터링에 있어서 이미 수신기에 저장된 섹션 번호의 각각의 비트 위치에서의 비트값의 누적값에 기초하여 생성된 마스크를 이용하여 섹션 데이터를 필터링함으로써, 필터링 시간이 감소된 섹션 데이터 필터링 방법 및 장치를 제공하고자 한다.
본 발명은, 디지털 방송 수신기에서 섹션 번호에 기초하여 섹션 데이터를 필터링하는데 사용하기 위한 마스크를 생성하는 장치에 있어서, 상기 수신기에 이미 저장된 섹션 번호의 각 비트 위치에서의 비트값 0 또는 비트값 1 의 누적값에 기초하여 상기 마스크의 생성 여부를 결정하는 것을 특징으로 한다.
또한 상기 장치는, 상기 섹션 번호의 소정의 비트 위치에서의 비트값 1 이 누적된 회수를 나타내는 1 누적값이 전체 섹션 데이터 개수/2 보다 크거나 같은 경우 또는 상기 섹션 번호의 소정의 비트 위치에서의 비트값 0 이 누적된 회수를 나타내는 0 누적값이 전체 섹션 데이터 개수/2 보다 크거나 같은 경우에 상기 마스크를 생성한다.
여기서, 상기 장치는, 상기 마스크와 동일한 비트수를 가지며, 상기 0 누적값 또는 상기 1 누적값이 상기 전체 섹션 데이터개수/2 보다 크거나 같은 비트 위치에서의 비트값이 1 인, 기준값을 생성하고, 상기 마스크의 비트값이 1 인 비트 위치에 대응하는 섹션 번호의 비트값이 상기 비트 위치에서의 상기 기준값의 비트값과 상이한 경우에만, 상기 섹션 번호를 가지는 섹션 데이터가 통과되는 필터링이 수행된다.
또한 본 발명은, 디지털 방송 수신기에서 섹션 번호에 기초하여 섹션 데이터를 필터링하는 장치에 있어서, a)상기 디지털 방송 수신기내에 이미 저장된 섹션 데이터의 섹션 번호 및 마지막 섹션 번호에 기초하여 상기 섹션 데이터를 필터링하는데 사용되는 마스크를 생성하는 마스크 생성부; 및 b)상기 마스크에 기초하여 상기 섹션 데이터를 필터링하는 필터부를 포함하고, 상기 마스크 생성부는 상기 섹션 번호의 각각의 비트 위치에서의 비트값이 누적된 회수를 나타내는 누적값 및 전체 섹션 데이터의 개수에 기초하여 상기 마스크를 생성할 것인지를 결정한다.
또한 본 발명은, 디지털 방송 수신기에서 섹션 번호에 기초하여 섹션 데이터를 필터링하는데 사용하기 위한 마스크를 생성하는 방법에 있어서, 상기 수신기에 이미 저장된 섹션 번호의 각 비트 위치에서의 비트값 0 또는 비트값 1 의 누적값에 기초하여 상기 마스크의 생성 여부가 결정된다.
또한 본 발명은, 디지털 방송 수신기에서 섹션 번호에 기초하여 섹션 데이터를 필터링하는 방법에 있어서, a)상기 디지털 방송 수신기내에 이미 저장된 섹션 데이터의 섹션 번호 및 마지막 섹션 번호에 기초하여 상기 섹션 데이터를 필터링하는데 사용되는 마스크를 생성하는 마스크 생성 단계; 및 b)상기 마스크에 기초하여 상기 섹션 데이터를 필터링하는 필터링 단계를 포함하고, 상기 마스크 생성 단계는 상기 섹션 번호의 각각의 비트 위치에서의 비트값이 누적된 회수를 나타내는 누적값 및 전체 섹션 데이터의 개수에 기초하여 상기 마스크를 생성할 것인지를 결정하는 단계를 포함한다.
이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일 실시예를 상세히 설명한다.
도 3 은 본 발명에 의한 디지털 방송 수신기의 구조를 나타내는 도면이다.
본 발명에 의한 디지털 방송 수신기는 전송 채널을 통해 전송되는 방송 스트림중에서 사용자가 원하는 채널을 선택함으로써 소정의 채널의 전송 스트림을 추출하는 튜너부(310), 전송 스트림(Transport Stream)중에서 오디오/비디오 데이터를 포함하는 전송 스트림(324) 및 서비스 데이터를 포함하는 전송 스트림(322)을 분할하는 역다중화부(320), 서비스 데이터를 포함하는 전송 스트림으로부터 사용자가 원하는 섹션 데이터를 추출하는 필터부(330), 추출된 섹션 데이터(332)가 순차적으로 저장되는 버퍼부(340), 버퍼부에 저장된 섹션 데이터(342)를 읽어들여서 소정의 어플리케이션을 처리함으로써 서비스 출력 데이터(352)를 생성하는 데이터 처리부(350), 오디오/비디오 데이터를 포함하는 전송 스트림(324)을 처리함으로써 AV 출력 데이터(372)를 생성하는 AV 처리부(370), AV 출력 데이터(372) 및 서비스 출력 데이터(352)를 출력 신호(382)로서 사용자에게 출력하는 출력부(380) 및 데이터 처리부(350)로부터 이전의 주기에 데이터 처리부(350)로 전송되었던 섹션 데이터의 섹션 번호(354)를 전송 받은 후 이를 기초로 기준값(362) 및 마스크값(364)을 생성하여 이를 필터부(330)에 전송하는 마스크 생성부(360)를 포함한다.
도 3 에 나타난 디지털 방송 수신 장치는 마스크 생성부(360)가 추가되었다는 점 및 필터부(330)가 마스크 생성부(360)가 생성한 기준값(362) 및 마스크값(364)에 기초하여 필터링을 수행한다는 점에서 특징을 가진다. 이하 도 4 및 도 5를 이용하여 이를 자세히 설명한다.
도 4 는 본 발명의 일 실시예에 의한 도 3 의 마스크 생성부(360)의 내부 구조를 나타내는 도면이다.
마스크 생성부(360)는 섹션 번호 추출부(410), 누적값 계산부(420), 초과여부 판단부(430) 및 섹션 번호 마스크 생성부(440)를 포함한다.
섹션 번호 추출부(410)는 데이터 처리부(350)로부터 데이터 처리부(350)에 이전의 주기에 전송되었던 카루젤 데이터의 섹션 데이터(354)를 전송 받아 이를 기초로 전송 받은 섹션 데이터의 섹션 번호 SN (412) 및 마지막 섹션 번호 LSN (414)를 추출한다.
누적값 계산부(420)는 섹션 번호 추출부(410)로부터 섹션 번호(412)를 전송 받고, 전송된 섹션 번호의 각 비트 위치에서의 0 및 1 의 개수의 누적값을 계산한다. 표 1 은 섹션 번호가 4비트인 경우 누적값 계산이 수행되는 과정을 나타내는 표이다.
[표 1]
섹션 번호 비트3 비트2 비트1 비트0
1 0 1 0 1 0 1 0
첫 번째 전송된 SN 1000 Y - - Y - Y - Y
두 번째 전송된 SN 1101 Y - Y - - Y Y -
. . .
각 비트별 누적값 2 0 1 1 0 2 1 1
표 1에 따르면, 누적값 계산부(420)는 데이터 처리부(350)에 저장된 섹션 번호가 누적값 계산부에 입력될때마다 각 비트 위치마다 '1' 이 누적되는 개수 즉 비트별 1누적값 및 '0' 이 누적되는 개수 즉 비트별 0 누적값을 계수함으로써 1 누적값(424) 및 0 누적값(422)을 생성한다. 표 1 의 예에서, 비트3의 1 누적값 C31 = 2, 비트3의 0 누적값 C30 = 0, 비트2의 1 누적값 C21 = 1, 비트2의 0 누적값 C31 = 1, 비트1의 1 누적값 C11 = 0, 비트1의 0 누적값 C10 = 2, 비트0의 1 누적값 C01 = 1, 비트0의 0 누적값 C00 = 1 이다.
초과 여부 판단부(430)는 섹션 번호 추출부(410)로부터 전송받은 마지막 섹 션 번호(414) 및 누적값 계산부(420)로부터의 각 비트별 0누적값(422) 및 1누적값(424)에 기초하여 더 이상 수신할 필요가 없는 섹션 데이터가 발생하였는지를 판단한 후, 만약 더 이상 수신할 필요가 없는 섹션 데이터가 발생하였다면, 마스크 생성부(44)로하여금 마스크를 생성하도록 지시하는 명령 신호를 나타내는 마스크 생성 명령 신호(432)를 섹션 번호 마스크 생성부(440)에 전송한다.
초과 여부 판단부(430)가 더 이상 수신할 필요가 없는 섹션 데이터가 발생하였는지를 판단하는 방법은 다음과 같다.
먼저, 마지막 섹션 번호에 기초하여 하나의 카루젤 데이터에 속하는 전체 섹션 데이터의 개수를 계산한다. 즉 전체 섹션 데이터의 개수 = 마지막 섹션 번호 + 1 이다.
그 다음, 누적값 계산부로부터 수신한 0 누적값(422) 또는 1 누적값(424) 및 위에서 계산한 전체 섹션 데이터의 개수에 기초하여 방송 수신 장치가 더 이상 수신할 필요가 없는 섹션 데이터의 섹션 번호가 존재하는지 검사한다. 이 단계는 0 누적값 또는 1 누적값이 전체 섹션 데이터 개수/2 = P/2 보다 크거나 같은 지를 검사함으로써 수행된다.
표 2 는 이진수로 나타낸 16 개의 4비트 섹션 번호를 나열한 것이다. 표 2에 따르면, 전체 섹션 번호의 개수가 16 개이면, 2진수로 나타낸 섹션 번호의 각 비트 위치마다의 비트값 0의 수는 8이고, 1의 수도 8 이다. 즉 이진수의 특성에 따라, 데이터 처리부(350)에 저장되어야할 모든 섹션 데이터는, 섹션 번호의 각 비트 위치에 존재하는 0 또는 1 의 개수 = 모두 전체 섹션 번호의 개수(전체 섹션 데이터 의 개수)/2 와 동일하다. 따라서 만약 어떤 비트 위치에서의 0 누적값이 전체 섹션 데이터의 개수/2 보다 동일하거나 크다면, 해당 비트 위치의 비트값이 0 인 섹션 번호에 대응하는 섹션 데이터는 더 이상 수신할 필요가 없다고 판단하는 것이 가능하다. 본 실시예는 이러한 이진수의 특성을 이용하여 전술한 방법으로 필터링할 섹션 번호를 결정한다.
[표 2]
섹션 번호_16진수 섹션 번호_2진수
0 0000
1 0001
2 0010
3 0011
4 0100
5 0101
6 0110
7 0111
8 1000
9 1001
A 1010
B 1011
C 1100
D 1101
E 1110
F 1111
마스크 생성 정보(432)는 0 누적값 또는 1 누적값이 초과한 비트 위치를 나타내는 초과 비트 번호 N 및 해당 비트 번호에서 초과한 비트값을 나타내는 초과 비트값 B 을 포함한다. 예를 들면, 비트 3에서 비트값 1 이 초과되었다면, N=3, B=1 이다. 초과 비트 번호 N 및 초과 비트값 B 는 섹션 번호(412), 0 누적값 및 1 누적값(422,424)에 기초하여 생성된다.
섹션 번호 마스크 생성부(440)는 초과 여부 판단부(430)로부터 수신한 마스크 생성 정보(432)에 기초하여 기준값(362) 및 마스크(364)를 생성한다. 전술한 바 와 같이, 마스크 생성 정보(432)는 0 누적값 또는 1 누적값이 초과한 비트 위치를 나타내는 초과 비트 번호 N 및 해당 비트 번호에서 초과한 비트값을 나타내는 초과 비트값 B 을 포함한다. 섹션 번호 마스크 생성부(400)는 다음과 같은 기준값 및 마스크의 정의에 따라 기준값 및 마스크를 생성한다.
기준값(362)은, 섹션 번호와 동일한 비트수를 가지며, 초과 비트 번호 N 에 대응되는 비트 위치에서 비트값이 초과 비트값 B 인 이진수이다. 다른 비트 위치에서의 비트값은 무관하다.
마스크(364)는 역시 섹션 번호와 동일한 비트수를 가지며, 초과 비트 번호 N 에 대응되는 비트 위치에만 비트값 1 을 가지고 그 외의 비트 위치에는 비트값 0을 가지는 이진수이다. 필터링 동작에 있어서의 마스크(364)의 역할은 도 5 및 6을 참조하여 추후 설명된다.
본 발명에서는, 필터부(520)가 데이터 처리부(350)에 저장된 섹션 데이터의 섹션 번호를 직접 수신되는 섹션 번호와 비교하지 않고, 마스크와 기준값을 이용하여 필터링을 수행함을 특징으로 한다.
이에 의해, 전술한 마스크 및 기준값의 특정 비트값은 0 누적값 또는 1 누적값이 전체 섹션 데이터 개수/2 의 이상이 될 때만 생성되기 때문에, 필터링이 필요할 때만 수행되므로, 전체 처리 시간을 감소시킨다.
또한, 필터링섹션 번호의 모든 비트값을 비교하는 대신에 마스크 및 기준값에 의해 결정된 특정 비트값만을 비교함으로써 필터링의 처리시간을 현저히 줄일 수 있다.
도 5 는 필터부(330)의 내부 구성을 나타내는 도면이다.
필터부는 섹션 데이터 생성부(510) 및 섹션 데이터 필터부(520)를 포함하며, 섹션 데이터 필터부(520)는 테이블 ID 필터부(530), 버전 필터부(540) 및 섹션 번호 필터부(550)를 포함한다.
섹션 데이터 생성부(510)는 하나이상의 패킷을 포함하는 트랜스포트 스트림(322)을 수신한 후, 패킷 ID 에 기초하여 패킷을 선택적으로 조합함으로써 섹션 데이터(512)를 생성한다. 생성된 섹션 데이터(512)는 도 2 에 나타난 구조를 가지고, 테이블 ID, 버전, 섹션 번호등을 포함한다.
섹션 데이터 필터부(520)는 미리결정된 필터링 정보에 기초하여 섹션 데이터를 필터링한다. 필터링 정보란 필터링의 기준이 되는 정보로서, 테이블 ID, 버전, 섹션 번호등이 될 수 있다. 섹션 데이터 필터부(520)는 전술한 필터링 정보에 따라 테이블 ID 필터부(530), 버전 필터부(540) 및 섹션 번호 필터부(550)를 포함한다.
본 발명의 특징에 따라, 섹션 번호 필터부(550)는 필터링 기준 정보로서 마스크 생성부(360)에 의해 생성된 기준값(362) 및 마스크(364)를 수신한다. 즉 섹션 번호 필터부(550)는 기준값(362) 및 마스크(364)에 의해 섹션 번호 필터링을 수행한다.
도 6 은 섹션 번호 필터부의 필터링 동작을 설명하는 도면이다.
기준값 R 및 마스크 M1,M2,M3 는 마스크 생성부(360)로부터 전송된 기준값(362) 및 마스크(364)이다. 섹션 번호 SN 는 필터부(330)로 입력되는 섹션 데이터 또는 섹션 데이터 필터부내의 다른 필터부(530,540)에 의해 필터링된 섹션 데이터의 섹션 번호이다. 비트 번호 BitNum 는 기준값, 섹션 번호 및 마스크의 비트 위치를 식별하는 식별자이다.
섹션 번호 필터부(550)는, 어떤 섹션 번호를 가지는 섹션 데이터가 수신되었을 때, 마스크(M1,M2,M3)의 비트값이 1 인 비트 위치에 존재하는 섹션 번호의 비트값이 그 섹션 번호의 비트값과 동일한 비트 위치에 존재하는 기준값 R 의 비트값과 상이한 경우에만, 해당 섹션 번호를 가지는 섹션 데이터를 통과시킨다. 만약 마스크의 비트값이 1 인 비트 위치가 둘이상이라면, 모든 비트 위치에서 기준값의 비트값과 섹션 번호의 비트값이 상이하여야 한다.
도 6의 예에서, 마스크 M1 의 경우, 마스크 M1 의 비트값이 1 인 비트 위치는 BitNum=2 이며, 이 비트 위치에서 기준값의 비트값은 1 이고, 섹션 번호의 비트값은 0 이다. 기준값의 비트값과 섹션 번호의 비트값이 상이하므로, 해당 섹션 번호 SN=1010 에 대응되는 섹션 데이터는 통과된다.
그러나 마스크 M2 의 경우, 마스크 M2 의 비트값이 1 인 비트 위치는 BitNum=3 이며, 이 비트 위치에서 기준값의 비트값은 1 이고, 섹션 번호의 비트값도 1 이다. 따라서 기준값의 비트값과 섹션 번호의 비트값이 동일하므로, 해당 섹션 번호 SN=1010 에 대응되는 섹션 데이터는 통과하지 못하고 버려진다.
마지막으로 마스크 M3 의 경우를 설명한다. 마스크 M3 는 비트값 1 인 비트 위치가 2개이다. M3 의 경우, 마스크 M3 의 비트값이 1 인 비트 위치는 BitNum=3,2 이며, 이 비트 위치에서 기준값의 비트값은 각각 1,1 이고, 섹션 번호의 비트값은 각각 1,0 이다. BitNum=2 인 비트 위치에서의 기준값의 비트값과 섹션 번호의 비트 값은 상이하지만, BitNum=3 인 비트 위치에서의 기준값의 비트값과 섹션 번호의 비트값이 동일하므로, 해당 섹션 번호 SN=1010 에 대응되는 섹션 데이터는 통과하지 못하고 버려진다.
마스크 M3 의 경우에 살펴본바 와 같이, 마스크의 비트값이 1 인 비트 위치가 증가할수록 통과하지 못하는 섹션 데이터가 증가한다. 데이터 처리부에 저장되는 섹션 데이터 수가 증가하면, 어느 시점에서 새로운 마스크가 생성되어 필터부로 전송되는데, 이때 새로운 마스크는 비트값이 1 인 비트 위치가 하나더 증가된 마스크이다. 여기서 어느 시점이란 특정 비트 위치에서의 0누적값 또는 1누적값이 섹션 데이터의 개수/2와 동일하게나 그 이상이 되는 시점이다.
도 7 및 도 8 은 마스크의 비트값이 1 인 비트 위치가 발생과 필터링되는 섹션 데이터 수의 변화와의 관계를 나타내는 도면이다.
도 7 은 기준값이 --1- 이고 마스크가 0010 인 경우 통과되지 않고 버려지는 섹션 데이터를 나타내는 도면이다. 마스크가 0010 이고 기준값이 --1- 인 것의 의미는, 비트번호=1 인 위치에서, 데이터 처리부에 저장된 섹션 데이터의 1 누적값이 8 이상이 되었다는 의미이다. 마스크에서 비트값이 1 인 비트 위치가 비트번호=1 이기 때문에, 도 7에서 블록으로 나타내어진 섹션 번호에 대응되는 섹션 데이터는 모두 버려진다. 즉 버려지는 섹션 데이터의 이진수 섹션 번호는 0010,0011,0110,0111,1010,1011,1110,1111 이고, 이에 대응되는 16진수 섹션 번호는 2,3,6,7,10,11,14,15 로서 8개이다.
도 8 은 도 7 의 상태에서 기준값이 --10 이고 마스크가 0011 으로 변하였을 때 필터부에 의해 버려지는 섹션 데이터를 나타내는 도면이다. 기준값이 --10 으로 변하고 마스크가 0010 으로 변하였다는 것의 의미는, 도 7 의 상태에서 추가적으로, 비트번호=0 인 위치에서, 데이터 처리부에 저장된 섹션 데이터의 0 누적값이 8 이상이 되었다는 의미이다.
마스크에서 비트값이 1 인 비트 위치가 비트번호=0 이기 때문에, 도 8 의 빗금친 섹션 번호에 대응되는 섹션 데이터는 모두 버려져야한다. 즉 도 8에서 추가된 마스크 및 기준값의 비트값에 의해 버려져야할 섹션 번호는 즉 0,2,4,6,8,10,12,14 (빗금친 부분)의 8 개다. 이중 섹션 번호 2,6,10,14 는 도 7의 기준값 및 마스크에 의해 버려지는 섹션 번호(블록 부분)와 중첩됨에 유의하라. 즉 도 8 의 기준값 및 마스크에 의해 추가적으로 버려지는 섹션 번호는 0,4,8,12 로서 4개뿐이다. 결국 도 8 에 따르면, 마스크에 비트값이 1 인 비트위치가 증가할 때마다 반드시 섹션 데이터의 개수/2 만큼의 섹션 데이터가 버려지는 것은 아님을 알 수 있다.
도 8 의 기준값 및 마스크에 따르면, 총 8+4 = 12 개의 섹션 데이터가 통과되지 못한다. 따라서 12개의 섹션 데이터가 데이터 처리부에 중복 저장되는 것을 방지할 수 있다.
도 9 은 본 발명에 따른 섹션 번호 필터링 방법을 나타내는 시간 흐름도이다.
단계 910에서, 섹션 번호 필터부(550)는 섹션 데이터 생성부(510)로부터 섹션 데이터가 수신되기를 대기한다.
단계 920에서, 섹션 번호 필터부(550)는 섹션 데이터를 수신한다. 수신된 섹션 데이터는 필터부(330)내의 다른 필터부(530,540)의 동작과의 조합에 의해 필터링된 섹션 데이터일 수도 있다.
단계 930에서, 섹션 번호 추출부(410)는 섹션 데이터의 섹션 헤더로부터 섹션 번호 SN 및 마지막 섹션 번호 LSN을 추출한다.
단계 940에서, 누적값 계산부(420)는 섹션 번호를 수신할 때마다 섹션 번호의 비트위치마다 비트값 1 및 비트값 0 의 개수를 계수함으로써 1누적값 및 0누적값을 계산한다.
단계 950에서, 초과 여부 판단부(430)는 단계 940에서 계산된 1누적값 또는 0 누적값이 섹션 데이터 개수/2=P/2 보다 크거나 같은지를 판단한다. 섹션 개수는 마지막 섹션 번호로부터 생성가능하다.
만약 크거나 같다면 단계 960 으로 진행하고, 그렇지 않으면 다시 단계 910 으로 진행하여 그 다음 섹션 데이터를 수신한다.
단계 960에서, 0누적값 또는 1누적값이 섹션 데이터 개수/2 보다 큰 비트 위치의 비트값을 결정함으로써 기준값 및 마스크를 설정한다.
기준값은, 0누적값 또는 1누적값이 섹션 데이터 개수/2 보다 큰 비트 위치의 비트값은 1(1누적값인 경우) 또는 0(0누적값인 경우)으로 설정되고, 그 외의 비트 위치의 비트값은 아무값으로 설정되어도 무관하다.
마스크는, 0누적값 또는 1누적값이 섹션 데이터 개수/2 보다 큰 비트 위치의 비트값은 1(1누적값 및 0 누적값인 경우 모두)로 설정되고, 그 외의 비트 위치의 비트값은 0 으로 설정된다. 여기서 설정된다함은 마스크 생성부(360)에 의해 기준값 및 마스크가 생성된 후, 생성된 마스크 및 기준값이 섹션 번호 필터부(550)에 필터링 정보로서 입력된다는 의미이다.
단계 970에서, 섹션 번호 필터부(550)는 단계 960에서 설정된 마스크 및 기준값에 기초하여 섹션 데이터를 필터링한다.
섹션 번호 필터부(550)는, 어떤 섹션 번호를 가지는 섹션 데이터가 수신되었을 때, 마스크내에서 비트값이 1 인 비트 위치에 존재하는 섹션 번호의 비트값이 그 섹션 번호의 비트값과 동일한 비트 위치에 존재하는 기준값의 비트값과 상이한 경우에만, 해당 섹션 번호를 가지는 섹션 데이터를 통과시킨다. 만약 마스크의 비트값이 1 인 비트 위치가 둘이상이라면, 모든 비트 위치에서 기준값의 비트값과 섹션 번호의 비트값이 상이하여야 한다.
방송 수신기가 첫 번째 주기의 카루젤 데이터를 수신할 때는, 하나의 카루젤 데이터에서는 중복되는 섹션 데이터가 발생하지 않기 때문에, 도 9 의 루프 즉 단계 910 내지 950 만이 수행될것이다. 그러나 버퍼와 데이터 처리부의 처리 속도차이 또는 기타 이유에 의해 섹션 데이터의 유실 때문에 방송 수신기가 새로운 주기의 카루젤 데이터를 수신할때는 중복된 섹션 데이터가 발생할 수 있고, 이때 이러한 섹션 데이터는 단계 960 내지 970 에 의해 필터링될 것이다.
한편, 본 발명에 따른 섹션 번호 필터링 방법은 컴퓨터 프로그램으로 작성 가능하다. 상기 프로그램을 구성하는 코드들 및 코드 세그먼트들은 당해 분야의 컴퓨터 프로그래머에 의하여 용이하게 추론될 수 있다. 또한, 상기 프로그램은 컴퓨 터가 읽을 수 있는 정보저장매체(computer readable media)에 저장되고, 컴퓨터에 의하여 읽혀지고 실행됨으로써 섹션 번호 필터링을 구현한다. 상기 정보저장매체는 자기 기록매체, 광 기록매체, 및 캐리어 웨이브 매체를 포함한다.
이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
전술한 바와 같이 본 발명에 따른 섹션 데이터 필터링 방법 및 장치에 의하면, 이미 수신기에 수신되어 저장된 섹션 데이터의 섹션 번호를 그 다음 수신되는 섹션 번호와 직접 비교하지 않고, 수신된 비트값의 누적값을 이용하여 생성된 마스크를 이용하여 필터링을 수행함으로써, 전체 처리 시간을 감소시킨다.
또한, 필터링시에 섹션 번호의 모든 비트값을 비교하는 대신에 마스크 및 기준값에 의해 결정된 특정 비트값만을 비교함으로써 필터링의 처리시간을 현저히 줄일 수 있다.

Claims (37)

  1. 디지털 방송 수신기에서 섹션 번호에 기초하여 섹션 데이터를 필터링하는데 사용하기 위한 마스크를 생성하는 장치에 있어서,
    상기 수신기에 이미 저장된 섹션 번호의 각 비트 위치에서의 비트값 0 또는 비트값 1 의 누적값에 기초하여 상기 마스크의 생성 여부를 결정하는 것을 특징으로 하는 장치.
  2. 제 1 항에 있어서, 상기 장치는,
    상기 섹션 번호의 소정의 비트 위치에서의 비트값 1 이 누적된 회수를 나타내는 1 누적값이 전체 섹션 데이터 개수/2 보다 크거나 같은 경우 또는
    상기 섹션 번호의 소정의 비트 위치에서의 비트값 0 이 누적된 회수를 나타내는 0 누적값이 전체 섹션 데이터 개수/2 보다 크거나 같은 경우
    에 상기 마스크를 생성하는 것을 특징으로 하는 장치.
  3. 제 2 항에 있어서, 상기 장치는, 상기 마스크와 동일한 비트수를 가지며, 상기 0 누적값 또는 상기 1 누적값이 상기 전체 섹션 데이터개수/2 보다 크거나 같은 비트 위치에서의 비트값이 1 인, 기준값을 생성하고,
    상기 마스크의 비트값이 1 인 비트 위치에 대응하는 섹션 번호의 비트값이 상기 비트 위치에서의 상기 기준값의 비트값과 상이한 경우에만, 상기 섹션 번호를 가지는 섹션 데이터가 통과되는 필터링이 수행되는 것을 특징으로 하는 장치.
  4. 제 3 항에 있어서, 상기 마스크의 비트값이 1 인 비트 위치가 둘이상이고,
    상기 마스크의 비트값이 1 인 모든 비트 위치에서 상기 기준값의 비트값과 상기 섹션 번호의 비트값이 상이한 경우에만, 상기 섹션 번호를 가지는 섹션 데이터가 통과되는 필터링이 수행되는 것을 특징으로 하는 장치.
  5. 제 1 항에 있어서, 상기 장치는,
    a)상기 디지털 방송 수신기내에서 이미 저장된 섹션 데이터로부터 섹션 번호 및 마지막 섹션 번호를 추출하는 섹션 번호 추출부;
    b)상기 섹션 번호를 수신하여 상기 섹션 번호의 각각의 비트 위치에서의 비트값 1 의 누적회수를 나타내는 값인 1 누적값 및 비트값 0 의 누적 회수를 나타내는 값인 0 누적값을 계산하는 누적값 계산부;
    c)상기 0 누적값 및 1 누적값에 기초하여 상기 마스크를 생성할 것인지 여부를 결정하는 초과 여부 판단부; 및
    d)마스크를 생성하는 것으로 결정된 경우, 상기 섹션 번호에서 상기 0 누적값 또는 상기 1 누적값이 초과한 비트 위치에 기초하여 마스크를 생성하는 섹션 번호 마스크 생성부
    를 포함하는 것을 특징으로 하는 장치.
  6. 제 4 항에 있어서, 상기 섹션 번호 마스크 생성부는,
    상기 초과한 비트 위치의 비트값은 1 이고 그 외의 비트값은 0 인 마스크를 생성하는 것을 특징으로 하는 장치.
  7. 제 5 항에 있어서, 상기 섹션 번호 마스크 생성부는, 상기 섹션 번호의 상기 초과한 비트 위치에서의 비트값이 1 인 경우, 상기 초과한 비트 위치에서의 비트값이 1 인 기준값을 더 생성하고,
    상기 마스크의 비트값이 1 인 비트 위치에 대응하는 섹션 번호의 비트값이 상기 비트 위치에서의 상기 기준값의 비트값과 상이한 경우에만, 상기 섹션 번호를 가지는 섹션 데이터가 통과되는 필터링이 수행되는 것을 특징으로 하는 장치.
  8. 디지털 방송 수신기에서 섹션 번호에 기초하여 섹션 데이터를 필터링하는 장치에 있어서,
    a)상기 디지털 방송 수신기내에 이미 저장된 섹션 데이터의 섹션 번호 및 마지막 섹션 번호에 기초하여 상기 섹션 데이터를 필터링하는데 사용되는 마스크를 생성하는 마스크 생성부; 및
    b)상기 마스크에 기초하여 상기 섹션 데이터를 필터링하는 필터부를 포함하고,
    상기 마스크 생성부는 상기 섹션 번호의 각각의 비트 위치에서의 비트값이 누적된 회수를 나타내는 누적값 및 전체 섹션 데이터의 개수에 기초하여 상기 마스크를 생성할 것인지를 결정하는 것을 특징으로 하는 장치.
  9. 제 8 항에 있어서, 상기 마스크 생성부는,
    상기 섹션 번호의 각각의 비트 위치에서의 비트값 1 이 누적된 회수를 나타내는 1 누적값이 전체 섹션 데이터 개수/2 보다 크거나 같은 경우
    또는 상기 섹션 번호의 각각의 비트 위치에서의 비트값 0 이 누적된 회수를 나타내는 0 누적값이 전체 섹션 데이터 개수/2 보다 크거나 같은 경우
    에 상기 마스크를 생성하는 것을 특징으로 하는 장치.
  10. 제 9 항에 있어서, 상기 마스크 생성부는, 상기 마스크와 동일한 비트수를 가지며, 상기 0 누적값 또는 상기 1 누적값이 상기 전체 섹션 데이터개수/2 보다 크거나 같은 비트 위치에서의 비트값이 1 인, 기준값을 생성하고,
    상기 필터부는, 상기 마스크의 비트값이 1 인 비트 위치에 대응하는 섹션 번호의 비트값이 상기 비트 위치에서의 상기 기준값의 비트값과 상이한 경우에만, 상기 섹션 번호를 가지는 섹션 데이터를 통과시키는 것을 특징으로 하는 장치.
  11. 제 10 항에 있어서, 상기 마스크의 비트값이 1 인 비트 위치가 둘이상이고,
    상기 필터부는, 상기 마스크의 비트값이 1 인 모든 비트 위치에서 상기 기준값의 비트값과 상기 섹션 번호의 비트값이 상이한 경우에만, 상기 섹션 번호를 가지는 섹션 데이터를 통과시키는 것을 특징으로 하는 장치.
  12. 제 8 항에 있어서, 상기 마스크 생성부는,
    a1)상기 디지털 방송 수신기내에서 이미 저장된 섹션 데이터로부터 섹션 번호 및 마지막 섹션 번호를 추출하는 섹션 번호 추출부;
    a2)상기 섹션 번호를 수신하여 상기 섹션 번호의 각각의 비트 위치에서의 비트값 1 의 누적값인 1 누적값 및 비트값 0 의 누적값인 0 누적값을 계산하는 누적값 계산부;
    a3)상기 0 누적값 및 1 누적값에 기초하여 상기 마스크를 생성할 것인지 여부를 결정하는 초과 여부 판단부; 및
    a4)마스크를 생성하는 것으로 결정된 경우, 상기 섹션 번호에서 0 누적값 또는 1 누적값이 초과한 비트 위치를 나타내는 초과 비트 번호 및 해당 비트 번호에서 초과한 비트값을 나타내는 초과 비트값에 기초하여 마스크를 생성하는 섹션 번호 마스크 생성부를 포함하는 것을 특징으로 하는 장치.
  13. 제 12 항에 있어서, 상기 섹션 번호 마스크 생성부는,
    상기 섹션 번호의 소정의 비트 위치에서의 비트값 1 이 누적된 회수를 나타내는 1 누적값이 전체 섹션 데이터 개수/2 보다 크거나 같은 경우
    또는 상기 섹션 번호의 소정의 비트 위치에서의 비트값 0 이 누적된 회수를 나타내는 0 누적값이 전체 섹션 데이터 개수/2 보다 크거나 같은 경우
    에 상기 마스크를 생성하는 것을 특징으로 하는 장치.
  14. 제 10 항에 있어서, 상기 필터부는,
    b1)상기 디지털 방송 수신기로 전송된 트랜스포트 스트림으로부터 상기 섹션 데이터를 생성하는 섹션 데이터 생성부; 및
    b2)사용자에 의해 요구된 어플리케이션의 수행에 필요한 섹션 데이터를 식별하는 필터링 정보에 기초하여 상기 섹션 데이터를 필터링하는 섹션 데이터 필터부
    를 포함하는 것을 특징으로 하는 장치.
  15. 제 14 항에 있어서, 상기 필터링 정보는 테이블 ID, 버전, 섹션 번호 중 어느 하나인 것을 특징으로 하는 장치.
  16. 제 14 항에 있어서, 상기 섹션 데이터 필터부는,
    b21)섹션 번호에 기초하여 상기 섹션 데이터를 필터링하는 섹션 번호 필터부를 포함하는 것을 특징으로 하는 장치.
  17. 제 16 항에 있어서, 상기 섹션 번호 필터부는, 상기 마스크의 비트값이 1 인 비트 위치에 대응하는 섹션 번호의 비트값이 상기 비트 위치에서의 상기 기준값의 비트값과 상이한 경우에만, 상기 섹션 번호를 가지는 섹션 데이터를 통과시키는 것을 특징으로 하는 장치.
  18. 제 17 항에 있어서, 상기 마스크의 비트값이 1 인 비트 위치가 둘이상이고, 상기 필터부는, 상기 마스크의 비트값이 1 인 모든 비트 위치에서 상기 기준값의 비트값과 상기 섹션 번호의 비트값이 상이한 경우에만, 상기 섹션 번호를 가지는 섹션 데이터를 통과시키는 것을 특징으로 하는 장치.
  19. 디지털 방송 수신기에서 섹션 번호에 기초하여 섹션 데이터를 필터링하는데 사용하기 위한 마스크를 생성하는 방법에 있어서,
    상기 수신기에 이미 저장된 섹션 번호의 각 비트 위치에서의 비트값 0 또는 비트값 1 의 누적값에 기초하여 상기 마스크의 생성 여부가 결정되는 것을 특징으로 하는 방법.
  20. 제 19 항에 있어서, 상기 방법은,
    상기 섹션 번호의 소정의 비트 위치에서의 비트값 1 이 누적된 회수를 나타내는 1 누적값이 전체 섹션 데이터 개수/2 보다 크거나 같은 경우 또는
    상기 섹션 번호의 소정의 비트 위치에서의 비트값 0 이 누적된 회수를 나타내는 0 누적값이 전체 섹션 데이터 개수/2 보다 크거나 같은 경우
    에 상기 마스크를 생성하는 것을 특징으로 하는 방법.
  21. 제 20 항에 있어서,
    상기 마스크와 동일한 비트수를 가지며, 상기 0 누적값 또는 상기 1 누적값이 상기 전체 섹션 데이터개수/2 보다 크거나 같은 비트 위치에서의 비트값이 1 인, 기준값을 생성하는 단계를 포함하고,
    상기 마스크의 비트값이 1 인 비트 위치에 대응하는 섹션 번호의 비트값이 상기 비트 위치에서의 상기 기준값의 비트값과 상이한 경우에만, 상기 섹션 번호를 가지는 섹션 데이터가 통과되는 필터링이 수행되는 것을 특징으로 하는 방법.
  22. 제 21 항에 있어서, 상기 마스크의 비트값이 1 인 비트 위치가 둘이상이고,
    상기 마스크의 비트값이 1 인 모든 비트 위치에서 상기 기준값의 비트값과 상기 섹션 번호의 비트값이 상이한 경우에만, 상기 섹션 번호를 가지는 섹션 데이터가 통과되는 필터링이 수행되는 것을 특징으로 하는 방법.
  23. 제 19 항에 있어서, 상기 방법은,
    a)상기 디지털 방송 수신기내에서 이미 저장된 섹션 데이터로부터 섹션 번호 및 마지막 섹션 번호를 추출하는 섹션 번호 추출 단계;
    b)상기 섹션 번호를 수신하여 상기 섹션 번호의 각각의 비트 위치에서의 비트값 1 의 누적회수를 나타내는 값인 1 누적값 및 비트값 0 의 누적 회수를 나타내는 값인 0 누적값을 계산하는 누적값 계산 단계;
    c)상기 0 누적값 및 1 누적값에 기초하여 상기 마스크를 생성할 것인지 여부를 결정하는 초과 여부 판단 단계; 및
    d)마스크를 생성하는 것으로 결정된 경우, 상기 섹션 번호에서 상기 0 누적값 또는 상기 1 누적값이 초과한 비트 위치에 기초하여 마스크를 생성하는 섹션 번호 마스크 생성 단계
    를 포함하는 것을 특징으로 하는 방법.
  24. 제 22 항에 있어서, 상기 섹션 번호 마스크 생성 단계는,
    상기 초과한 비트 위치의 비트값은 1 이고 그 외의 비트값은 0 인 마스크를 생성하는 단계를 포함하는 것을 특징으로 하는 방법.
  25. 제 23 항에 있어서, 상기 섹션 번호 마스크 생성 단계는, 상기 섹션 번호의 상기 초과한 비트 위치에서의 비트값이 1 인 경우, 상기 초과한 비트 위치에서의 비트값이 1 인 기준값을 생성하는 단계를 더 포함하고,
    상기 마스크의 비트값이 1 인 비트 위치에 대응하는 섹션 번호의 비트값이 상기 비트 위치에서의 상기 기준값의 비트값과 상이한 경우에만, 상기 섹션 번호를 가지는 섹션 데이터가 통과되는 필터링이 수행되는 것을 특징으로 하는 방법.
  26. 디지털 방송 수신기에서 섹션 번호에 기초하여 섹션 데이터를 필터링하는 방법에 있어서,
    a)상기 디지털 방송 수신기내에 이미 저장된 섹션 데이터의 섹션 번호 및 마지막 섹션 번호에 기초하여 상기 섹션 데이터를 필터링하는데 사용되는 마스크를 생성하는 마스크 생성 단계; 및
    b)상기 마스크에 기초하여 상기 섹션 데이터를 필터링하는 필터링 단계를 포함하고,
    상기 마스크 생성 단계는 상기 섹션 번호의 각각의 비트 위치에서의 비트값이 누적된 회수를 나타내는 누적값 및 전체 섹션 데이터의 개수에 기초하여 상기 마스크를 생성할 것인지를 결정하는 단계를 포함하는 것을 특징으로 하는 방법.
  27. 제 26 항에 있어서, 상기 마스크 생성 단계는,
    상기 섹션 번호의 각각의 비트 위치에서의 비트값 1 이 누적된 회수를 나타내는 1 누적값이 전체 섹션 데이터 개수/2 보다 크거나 같은 경우
    또는 상기 섹션 번호의 각각의 비트 위치에서의 비트값 0 이 누적된 회수를 나타내는 0 누적값이 전체 섹션 데이터 개수/2 보다 크거나 같은 경우
    에 상기 마스크를 생성하는 단계를 포함하는 것을 특징으로 하는 방법.
  28. 제 27 항에 있어서, 상기 마스크 생성 단계는, 상기 마스크와 동일한 비트수를 가지며, 상기 0 누적값 또는 상기 1 누적값이 상기 전체 섹션 데이터개수/2 보다 크거나 같은 비트 위치에서의 비트값이 1 인, 기준값을 생성하는 단계를 더 포함하고,
    상기 필터링 단계는, 상기 마스크의 비트값이 1 인 비트 위치에 대응하는 섹션 번호의 비트값이 상기 비트 위치에서의 상기 기준값의 비트값과 상이한 경우에만, 상기 섹션 번호를 가지는 섹션 데이터를 통과시키는 단계를 포함하는 것을 특징으로 하는 방법.
  29. 제 28 항에 있어서, 상기 마스크의 비트값이 1 인 비트 위치가 둘이상이고,
    상기 필터링 단계는, 상기 마스크의 비트값이 1 인 모든 비트 위치에서 상기 기준값의 비트값과 상기 섹션 번호의 비트값이 상이한 경우에만, 상기 섹션 번호를 가지는 섹션 데이터를 통과시키는 단계를 더 포함하는 것을 특징으로 하는 방법.
  30. 제 26 항에 있어서, 상기 마스크 생성 단계는,
    a1)상기 디지털 방송 수신기내에서 이미 저장된 섹션 데이터로부터 섹션 번호 및 마지막 섹션 번호를 추출하는 섹션 번호 추출 단계;
    a2)상기 섹션 번호를 수신하여 상기 섹션 번호의 각각의 비트 위치에서의 비트값 1 의 누적 회수를 나타내는 1 누적값 및 비트값 0 의 누적 회수를 나타내는 0 누적값을 계산하는 누적값 계산 단계;
    a3)상기 0 누적값 및 1 누적값에 기초하여 상기 마스크를 생성할 것인지 여부를 결정하는 초과 여부 판단 단계; 및
    a4)마스크를 생성하는 것으로 결정된 경우, 상기 섹션 번호에서 0 누적값 또는 1 누적값이 초과한 비트 위치를 나타내는 초과 비트 번호 및 해당 비트 번호에서 초과한 비트값을 나타내는 초과 비트값에 기초하여 마스크를 생성하는 섹션 번호 마스크 생성 단계를 포함하는 것을 특징으로 하는 방법.
  31. 제 30 항에 있어서, 상기 섹션 번호 마스크 생성 단계는,
    상기 섹션 번호의 소정의 비트 위치에서의 비트값 1 이 누적된 회수를 나타 내는 1 누적값이 전체 섹션 데이터 개수/2 보다 크거나 같은 경우
    또는 상기 섹션 번호의 소정의 비트 위치에서의 비트값 0 이 누적된 회수를 나타내는 0 누적값이 전체 섹션 데이터 개수/2 보다 크거나 같은 경우
    에 상기 마스크를 생성하는 단계를 포함하는 것을 특징으로 하는 방법.
  32. 제 28 항에 있어서, 상기 필터링 단계는,
    b1)상기 디지털 방송 수신기로 전송된 트랜스포트 스트림으로부터 상기 섹션 데이터를 생성하는 섹션 데이터 생성 단계; 및
    b2)사용자에 의해 요구된 어플리케이션의 수행에 필요한 섹션 데이터를 식별하는 필터링 정보에 기초하여 상기 섹션 데이터를 필터링하는 섹션 데이터 필터링 단계
    를 포함하는 것을 특징으로 하는 방법.
  33. 제 32 항에 있어서, 상기 필터링 정보는 테이블 ID, 버전, 섹션 번호 중 어느 하나인 것을 특징으로 하는 방법.
  34. 제 32 항에 있어서, 상기 섹션 데이터 필터링 단계는,
    b21)섹션 번호에 기초하여 상기 섹션 데이터를 필터링하는 섹션 번호 필터링 단계를 포함하는 것을 특징으로 하는 방법.
  35. 제 34 항에 있어서, 상기 섹션 번호 필터링 단계는, 상기 마스크의 비트값이 1 인 비트 위치에 대응하는 섹션 번호의 비트값이 상기 비트 위치에서의 상기 기준값의 비트값과 상이한 경우에만, 상기 섹션 번호를 가지는 섹션 데이터를 통과시키는 단계를 포함하는 것을 특징으로 하는 방법.
  36. 제 35 항에 있어서, 상기 마스크의 비트값이 1 인 비트 위치가 둘이상인 경우, 상기 섹션 번호 필터링 단계는, 상기 마스크의 비트값이 1 인 모든 비트 위치에서 상기 기준값의 비트값과 상기 섹션 번호의 비트값이 상이한 경우에만, 상기 섹션 번호를 가지는 섹션 데이터를 통과시키는 단계를 포함하는 것을 특징으로 하는 방법.
  37. 제 19 항에 기재된 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR1020040049744A 2004-06-29 2004-06-29 섹션 데이터 필터링 방법 및 장치 KR100601689B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020040049744A KR100601689B1 (ko) 2004-06-29 2004-06-29 섹션 데이터 필터링 방법 및 장치
JP2005188781A JP4805616B2 (ja) 2004-06-29 2005-06-28 セクションデータフィルタリング方法及び装置
US11/169,061 US20050286563A1 (en) 2004-06-29 2005-06-29 Method and apparatus for filtering section data
EP05254041A EP1613057A1 (en) 2004-06-29 2005-06-29 Method and apparatus for filtering section data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040049744A KR100601689B1 (ko) 2004-06-29 2004-06-29 섹션 데이터 필터링 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20060000778A KR20060000778A (ko) 2006-01-06
KR100601689B1 true KR100601689B1 (ko) 2006-07-14

Family

ID=34941777

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040049744A KR100601689B1 (ko) 2004-06-29 2004-06-29 섹션 데이터 필터링 방법 및 장치

Country Status (4)

Country Link
US (1) US20050286563A1 (ko)
EP (1) EP1613057A1 (ko)
JP (1) JP4805616B2 (ko)
KR (1) KR100601689B1 (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4825460B2 (ja) 2005-06-29 2011-11-30 株式会社東芝 受信装置及び受信方法
WO2007052350A1 (ja) * 2005-11-02 2007-05-10 Mitsubishi Denki Kabushiki Kaisha デジタル放送受信機
US7826712B2 (en) * 2006-08-29 2010-11-02 Echostar Technologies Corporation Method and apparatus for receiving, storing, and presenting multimedia programming without indexing prior to storage
JP4912856B2 (ja) * 2006-12-15 2012-04-11 株式会社東芝 フィルタリング装置及びデジタル放送受信装置
US8645400B1 (en) * 2008-08-01 2014-02-04 Marvell International Ltd. Flexible bit field search method
US20110145837A1 (en) * 2009-12-14 2011-06-16 Bower Kenneth S Filtering Broadcast Recipients In A Multiprocessing Environment
CN102591791B (zh) * 2011-12-31 2016-08-03 深圳市中兴昆腾有限公司 一种定义策略减少数据存储量的系统及方法
WO2015173870A1 (ja) * 2014-05-12 2015-11-19 楽天株式会社 情報処理システム、情報処理方法およびプログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998043415A1 (en) * 1997-03-21 1998-10-01 Canal+ Societe Anonyme Extracting data sections from a transmitted data stream
KR20000050774A (ko) * 1999-01-14 2000-08-05 구자홍 부가 정보 필터링 방법
KR20010086911A (ko) * 2000-03-04 2001-09-15 구자홍 섹션 필터링 방법
KR20020014958A (ko) * 2000-08-19 2002-02-27 박종섭 엠피이지-2 시스템의 부가정보 데이터 필터링 장치 및 그제어방법

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4204193A (en) * 1978-11-03 1980-05-20 International Business Machines Corporation Adaptive alignment for pattern recognition system
US5127014A (en) * 1990-02-13 1992-06-30 Hewlett-Packard Company Dram on-chip error correction/detection
CN1272272A (zh) * 1998-05-13 2000-11-01 索尼株式会社 内容提供系统
JP3809278B2 (ja) * 1998-07-02 2006-08-16 松下電器産業株式会社 多重パケット分離装置
CN1133948C (zh) * 1999-01-18 2004-01-07 松下电器产业株式会社 二进制数据计数装置、面积信息取样装置和霍夫变换装置
JP2001053700A (ja) * 1999-08-05 2001-02-23 Matsushita Electric Ind Co Ltd データ選別装置,及びデータ処理装置
JP2001308812A (ja) * 2000-04-24 2001-11-02 Nec Microsystems Ltd デジタルテレビのTransportStreamの分離処理方法およびその記録媒体
EP1267579A3 (en) * 2001-06-11 2003-03-19 Canal+ Technologies Société Anonyme MPEG table structure
US7116663B2 (en) * 2001-07-20 2006-10-03 Pmc-Sierra Ltd. Multi-field classification using enhanced masked matching
US7025515B2 (en) * 2003-05-20 2006-04-11 Software 2000 Ltd. Bit mask generation system
JP4176044B2 (ja) * 2004-05-20 2008-11-05 株式会社東芝 フィルタリング装置及びデジタル放送受信装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998043415A1 (en) * 1997-03-21 1998-10-01 Canal+ Societe Anonyme Extracting data sections from a transmitted data stream
KR20000050774A (ko) * 1999-01-14 2000-08-05 구자홍 부가 정보 필터링 방법
KR20010086911A (ko) * 2000-03-04 2001-09-15 구자홍 섹션 필터링 방법
KR20020014958A (ko) * 2000-08-19 2002-02-27 박종섭 엠피이지-2 시스템의 부가정보 데이터 필터링 장치 및 그제어방법

Also Published As

Publication number Publication date
JP2006020310A (ja) 2006-01-19
JP4805616B2 (ja) 2011-11-02
KR20060000778A (ko) 2006-01-06
US20050286563A1 (en) 2005-12-29
EP1613057A1 (en) 2006-01-04

Similar Documents

Publication Publication Date Title
CN100431352C (zh) 用于组织表格的方法
KR100621677B1 (ko) 디지탈데이터 송수신 시스템 및 그 방법
JP4805616B2 (ja) セクションデータフィルタリング方法及び装置
CN102301703B (zh) 发送/接收系统以及在发送/接收系统中处理数据的方法
US20070253509A1 (en) Data transfer device
JPH06291780A (ja) データパケット送受信方法
CN102685562A (zh) 用于媒体信号的压缩域编码设备和方法
CN100367244C (zh) 数据收发系统及其方法
US8572644B2 (en) Data injection
WO2006077882A1 (ja) 放送受信装置
JP4349533B2 (ja) 柔軟性の有る多重化信号の送信システム
JP3382021B2 (ja) 番組探索装置および方式
US20040228414A1 (en) Posting status data in digital transport stream processing
CN105025352A (zh) 一种数字电视频道数据封装方法和快速搜索方法
CN102263647B (zh) 数据过滤装置和数据过滤方法
CN101253770B (zh) 修正广播ts的一部分的装置
US7664113B2 (en) Apparatus and methods for system multiplexing and program element identification
CN101213777A (zh) 修正规定分组的一部分的装置
KR101373013B1 (ko) 방송 서비스로의 효율적인 액세스를 위한 방송 전송 장치및 방법 및 방송 서비스 수신 장치 및 방법
US20050073606A1 (en) Processing instruction words
KR100698149B1 (ko) 섹션 데이터의 필터링 방법 및 장치
CN101098482B (zh) 一种节目成分复用和识别方法
KR101141644B1 (ko) Psi 변환 장치 및 방법
JP3188248B2 (ja) デジタルデータ送受信システムおよびその方法
KR101363847B1 (ko) 디지털 방송수신기용 psip 테이블 구조 및 그 저장제어장치

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130627

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140627

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20150629

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20160629

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20170629

Year of fee payment: 12

LAPS Lapse due to unpaid annual fee