이하 첨부 도면들 및 첨부 도면들에 기재된 내용들을 참조하여 본 발명의 바람직한 실시예를 상세하게 설명하지만, 본 발명이 실시예에 의해 제한되거나 한정되는 것은 아니다.
도 1은 본 발명의 일실시예에 따른 다운로드 제한수신 시스템에서 셋탑박스의 다중 스트림 처리 장치의 구성을 도시한 블록도이다.
본 발명의 다운로드 제한 수신 시스템은 셋탑박스에 소프트웨어 모듈(본 발명에서는 CA 소프트웨어를 일예로 사용함)이 설치된 보안 모듈을 탑재하여 케이블 네트워크를 통하여 소프트웨어을 다운로드 받아 소프트웨어의 보안에 결함이 발생하거나 소프트웨어의 버전 업데이트 등과 같은 상황에서 용이하게 소프트웨어를 갱신할 수 있도록 하는 기술을 포함하고 있다.
또한, 본 발명의 셋탑박스에 탑재된 보안 모듈 칩은 복수의 CA 시스템을 처리할 수 있도록 범용의 구조를 가지기 때문에, 케이블 사업자는 특정 CAS 솔루션에 종속되지 않고 CAS업체를 선택할 수 있어 다양한 형태의 서비스를 제공할 수 있다.
이러한 본 발명의 다중 스트림 처리 장치(200)는 다중채널 처리 어플리케이션을 지원하기 위해 입력되는 다수개의 채널을 다중화하여 하나의 다중 스트림을 생성하고 처리된 다중 스트림을 역다중화 하여 각각의 채널로 출력하는 방법을 제 공하고 있으며, 본 발명의 일실시예에 따른 다중 스트림 처리 장치(200)의 구성을 상기 방법에 준하여 순차적으로 설명하도록 한다.
먼저, 케이블 모뎀(210)은 케이블 네트워크(100)를 통하여 연결된 방송사의 헤드엔드에 대한 하나 이상의 통신 채널을 할당한다.
이때, 복조기(220)는 케이블 네트워크(100)로부터 상기 할당된 통신 채널을 통하여 방송 정보를 수신하여 복조한다.
다음으로, 보안 모듈(230)는 상기 방송사의 헤드엔드로부터 다운로드된 어플리케이션을 이용하여 상기 복조된 방송 정보를 디스크램블 처리한다.
이때, 보안 모듈(230)은 방송 정보를 디스크램블 처리하기 이전에, 상기 할당된 통신 채널을 통하여 상기 헤드엔드에 대한 인증 절차를 수행한다.
본 발명의 보안 모듈(230)은 상기 인증 절차가 완료된 경우 상기 헤드엔드로부터 어플리케이션을 다운로드하며, 상기 다운로드된 어플리케이션 예를 들어 CA 어플리케이션을 이용하여 상기 방송 정보를 디스크램블 처리하며, 이는 아래에서 더욱 상세하게 설명하기로 한다.
이때, 보안 모듈(230)은 상기 다운로드된 어플리케이션을 이용하여 상기 복조된 방송 정보를 디스크램블 처리하는 트랜스포트 프로세서 모듈(231) 및 상기 트랜스포트 프로세서 모듈에 디스크램블 키 정보, 스크램블 알고리즘 또는 초기화 정보 중 어느 하나 이상을 제공하는 시큐어 마이크로 모듈(232)로 구성된다.
즉, 본 발명은 케이블 네트워크(100)에 연결되면 보안 모듈(230)의 시큐어 마이크로 모듈(232)에서 보안 모듈(230)의 인증 절차를 수행하며, 상기 인증 절차 는 다중 스트림 처리 장치(200)의 시큐어 마이크로 모듈(232)와 방송사의 헤드엔드에 구비된 인증 서버와 이루어 진다.
이때, 본 발명의 케이블 모뎀(210)은 앞서 언급한 바와 같이 헤드엔드와의 통신 채널을 제공하며, 본 발명의 일실시예에 따라 DCAS (Downloadable Conditional Access System) 소프트웨어가 내장된 소프트웨어 모듈(250)은 시큐어 마이크로 모듈(232)로부터 관련 메시지를 주고 받아 전달하는 기능을 수행한다.
즉, 소프트웨어 모듈(250)는 케이블 모뎀(210), 보안 모듈(230), 복조기(220) 및 디코더(240)를 제어하여 정보의 라우팅을 수행한다.
상기와 같이, 시큐어 마이크로 모듈(232)에서 구동된 상기 어플리케이션은 트랜스포트 프로세서 모듈(231)에서 방송 정보를 디스크램블하기 위해 요구되는 키 정보를 비롯한 스크램블 방식 및 초기화 정보 등을 제공하여 트랜스포트 프로세서 모듈(231)이 디스크램블을 수행하도록 한다.
최종적으로, 디코더(240)는 상기 디스크램블 처리된 방송 정보를 A/V 신호로 복원하여 기 연결된 장치로 전송하며, 본 발명을 이용하는 사용자는 소정의 단말기를 이용하여 상기 신호를 수신하여 유료 시청할 수 있다.
본 발명은 트랜스포트 프로세서 모듈(231)에 기본적인 디스크램블 기능 외에 다수개의 채널을 하나의 스트림으로 다중화하는 기능과 디스크램블된 스트림을 다시 각각의 채널로 역다중화하는 기능을 포함한다.
도 2는 본 발명의 일실시예에 따른 트랜스포트 프로세서 모듈의 상세한 구성을 도시한 블록도이다.
상기와 같이 본 발명은 다양한 기능을 포함하고 있으며, 이러한 기능 중 보안 모듈(230)의 트랜스포트 프로세서 모듈(231)의 구성을 이용하여 디스크램블 기능을 수행하는 방법을 다음과 같이 도 2를 참조하여 상세히 설명하기로 한다.
먼저, 본 발명의 시큐어 마이크로 모듈(232)에서 디스트램블링 초기화 정보가 소프트웨어 모듈(250)로 입력된 경우, 소프트웨어 모듈(250)은 상기 초기화 정보를 트랜스포트 프로세서 모듈(231)의 디스크램블 제어기(233)로 전달한다.
다음으로, 디스크램블링 초기화 정보를 수신한 디스크램블 제어기(233)는 상기정보를 분석하여 어떠한 디스크램블러(236)가 사용될지 여부를 결정하고, 해당 디스크램블러(236)를 초기화 한다.
이때, 본 발명에서는 디스크램블러(236)는 다양한 방식의 디스크램블 기능을 지원하기 위하여 다수의 디스크램블러(236)를 포함하고 있는데, 예를 들어 DVB-CSA(Common Scrambling Algorithm)를 지원하는 DVB-CSA 디스크램블러, DES(Data Encryption Standard)를 지원하는 DES 디스크램블러, Triple-DES를 지원하는 3-DES 디스크램블러 및 AES(Advanced Encryption Standard)를 지원하는 AES 디스크램블러 등을 들 수 있다.
상기와 같이 트랜스포트 프로세서 모듈(231)에 다수 개의 디스크램블러(236)가 포함되는 것은 특정 제한 수신 시스템에 제한 없이 범용으로 사용되기 위함이며, 일반적으로 각각의 제한수신 시스템은 해당 시스템에서 사용할 스크램블 알고리즘을 각각 다르게 사용할 수 있기 때문이다.
또한, 트랜스포트 프로세서 모듈(231)의 디스크램블 제어기(233)는 추후 설 명되는 트랜스포트 프로세서 모듈(231)의 각 구성 요소인 멀티플랙서(232), 방송 정보 필터(234), 키 메모리(235), 디스크램블러(236) 및 디멀티플랙서(238)를 각각 제어하고, 소프트웨어 모듈(250)과 통신을 통하여 정보 및 제어 메시지 등을 송수신 하여 다중 스트림 처리 장치(200)의 전체 제어 명령을 전달하는 기능을 수행한다.
다음으로, 멀티프랙서(232)는 케이블 네트워크(100)에 연결됨으로써, 다수의 통신 채널을 통하여 수신되는 상기 하나 이상의 방송 정보를 수신하여 상기 방송 정보의 스트림을 다중 스트림으로 다중화한다.
이때, 본 발명의 멀티플랙서(232)는 하나 이상의 변조기(220)에서 출력되는 방송정보의 스트림 중 하나인 MPEG-2 TS 스트림을 입력 받아 하나의 다중 스트림으로 다중화 하여 출력한다.
도 3은 본 발명의 일실시예에 따른 프리헤더의 구조를 도시한 도면이다.
본 발명에서는 다중화 과정의 일실시예로 각 채널 스트림을 구분 및 다중화로 인한 PCR(Program Clock Reference)의 지터를 보정하기 위해 도 3에 도시된 바와 같이 각 스트림 내 188바이트의 MPEG-2 TS 패킷들 앞에 4바이트의 프리헤더를 삽입하는 방법을 제공하고 있으나, 상기 방법에 국한하거나 제한하지 아니한다.
다음으로, 방송 정보 필터(234)는 상기 다중 스트림을 수신하여 상기 다중 스트림을 필터링한다.
이때, 상기 다중 스트림은 다양한 방송 관련 정보를 포함하는데, 예를 들어 MPEG-2 프로그램 관련 정보를 포함하고 있으며, 상기 방송 관련 정보는 특정 프로 그램 정보 테이블인 PSI(Program Specific Information) 테이블을 포함한다.
또한, 상기 특정 프로그램 정보 테이블은 전송 흐름 패킷(TS: Transport Stream)을 포함하고 있어, 상기 방송 관련 정보를 필터링 할 경우 상기 패킷에 준하여 적절하게 조정하여 필터링 할 수 있다.
본 발명에서는 방송 정보 필터(234)의 일실시예로 MPEG-2 TS 필터를 들 수 있으며, 방송 정보 필터(234)는 다중화된 다중 스트림을 입력 받아 그대로 출력하되, 각 채널 별 PSI 테이블 및 ECM(Entitlement Control Message)를 포함한 TS 패킷을 검출하여 그 복사본을 디스크램블 제어기(233)로 출력한다.
이때, TS 패킷 필터링 순서는 먼저 프리헤더을 보고 각 채널을 구분하고 해당 채널의 PAT(Program Associate Table) 테이블을 가진 패킷 즉 MPEG-2 TS 헤더의 PID가 0인 패킷을 필터링하여 디스크램블 제어기(233)로 전송한다.
또한, 디스크램블 제어기(233)에서는 해당 채널의 PAT로부터 PMT(Program Map Table)들에 대한 PID(Packet ID) 정보를 추출하여 방송 정보 필터(234)로 전송하고, 상기 PID 정보를 수신한 방송 정보 필터(234)는 제공 받은 PID 정보를 이용하여 PMT를 포함한 패킷 필터링하여 디스크램블 제어기(233)로 전달한다.
다음으로, 해당 채널의 PMT들을 받은 디스크램블 제어기(233)는 이로부터 ECM 패킷의 PID 정보를 추출하여 다시 방송 정보 필터(234)로 전송한다. 상기와 같은 과정으로 방송 정보 필터(234)는 ECM을 포함한 패킷을 필터링하여 디스크램블 제어기(233)로 전송한다.
다음으로, ECM 패킷을 받은 디스크램블 제어기(233)는 이를 소프트웨어 모 듈(250)로 전달하고 소프트웨어 모듈(250)는 이를 다시 시큐어 마이크로 모듈(232)로 전달한다.
다음으로, ECM을 받은 시큐어 마이크로 모듈(232)에서 ECM을 해석하여 디스크램블에 사용될 키 정보를 추출하고 이를 소프트웨어 모듈(250)를 통해 디스크램블 제어기(233)로 전달한다.
디스크램블 키 정보를 받은 디스크램블 제어기(233)는 이를 키 메모리(235)에 저장한다.
도 4는 본 발명의 일실시예에 따른 키 메모리의 구조를 도시한 도면이다.
즉, 키 메모리(235)는 상기 필터링된 다중 스트림의 디스크램블에 사용되는 키 정보를 도 4에 도시된 바와 같이 채널, PID, even/odd 키 등의 정보를 구분하여 저장한다.
이때, 스위치(237)는 상기 다중 스트림을 방송 정보 필터(234)로부터 상기 하나 이상의 디스크램블러(236) 중 어느 하나로 전달하며, 추후 상기 선택된 디스크램블러(236)로부터 디멀티플랙서(238)로 디스크램블된 다중 스트림을 전달한다.
다음으로, 디스크램블러(236)는 상기 필터링된 다중 스트림을 상기 키 정보를 이용하여 디스크램블 처리한다.
즉, 방송 정보 필터(234)를 통해 출력된 다중 스트림은 스위치(237)에 설정된 경로를 통해 디스크램블러(236) 중 어느 하나로 예를 들어 DVB-CSA 디스크램블러로, 입력되고 상기 DVB-CSA 디스크램블러는 다중 스트림의 각 패킷들에 대해 프리헤더의 채널 정보와 TS 헤더의 PID 정보 및 스크램블링 콘트 롤(Scrambling_Control) 필드 값을 추출하여 키 메모리(234)에서 해당 키 정보를 읽어와 디스크램블을 수행한다.
최종적으로, 디멀티플랙서(237)는 상기 디스크램블 처리된 상기 다중 스트림을 역다중화 하여 상기 하나 이상의 통신 채널로 출력한다.
즉, 상기 디스크램블된 다중 스트림은 스위치(237)을 통해 디멀티플랙서(238)로 입력되고, 입력된 다중 스트림의 각 패킷들에 대해 프리헤더의 채널 정보를 이용하여 해당 채널로 역다중화를 한다.
본 발명은 역다중화 과정에서 프리헤더 내 타이밍 정보를 이용하여 PCR 정보를 포함하는 TS 패킷을 찾아 PCR 지터를 보정하고, 최종적으로 프리헤더를 축출하여 출력할 수도 있다.
역다중화된 각 채널 스트림은 해당하는 경로를 통해 디코더(240) 에서 A/V 신호로 복원되거나 또는 하드 디스크 드라이브(260)에 저장된다.
본 발명은 다수의 통신 채널을 통하여 수신되는 방송 정보를 하나의 다중 스트림으로 다중화하는 방법을 제시하고 있으며, 이는 본 발명의 특징적인 요건이라 할 수 있다. 상기와 같이 다중 스트림으로 다중화 하는 방법에 대하여 일실시예에 따라 아래에서 자세히 설명하기로 한다.
본 발명에서 제공되는 4바이트 프리헤더는 도 3에 도시된 바와 같이 4비트의 로컬 TSID(Transport Stream ID)와 28비트의 로컬 타임 필드로 나누어 진다.
상기 로컬 TSID는 각 채널의 스트림이 하나의 다중 스트림으로 다중화 되더라도 스트림 내 각 패킷이 어떤 채널의 패킷인지를 구분하기 위한 필드이며, 로컬 타임 필드는 27MHz의 MPEG 클럭을 사용한 카운터 값으로 도 2의 멀티플랙서(232)에서 프리 해더를 붙일 때의 카운터 값이 기록된다.
상기 기록된 값 들은 디멀티플랙서(237)에서 PCR 지터를 보정하기 위해 사용되며, 디멀티플랙서(237)는 멀티플랙서(232)에서 생성되는 카운터 값을 입력 받게 된다.
즉, 본 발명은 디멀티플랙서(237)에서 PCR을 포함하는 TS 패킷이 검색되면 프리 헤더의 로컬 타임 필드 값과 현재의 카운터 값을 기록하고 다음에 검색되는 PCR 패킷에서 프리헤더의 로컬 타임 필드 값과 그 때의 카운터 값을 앞에 검색된 각각의 값과 차를 구하여 비교한다.
본 발명에서는 로컬 타임 필드 값의 차와 카운터 값의 차가 다른 경우 지터가 발생한 것에 해당되므로 로컬 시간의 차와 카운터 값의 차에 대해 다시 차를 구하여 이 값으로 PCR 값을 보정한다.
또한, 키 메모리(235)는 LTSID(Local TSID) 필드와 PID 필드, Even Key 필드, 및 Odd Key 필드로 구성되며, 트랜스포트 프로세서 모듈(231) 내의 각 디스크램블러(236) 들은 입력된 TS 패킷이 스크램블링 되었을 때 패킷의 LTSID와 PID 및 even/odd 키 정보를 추출하여 키 메모리(235)에서 해당 키를 읽어가게 된다.
도 5는 본 발명의 일실시예에 따른 멀티플랙서의 상세 구조를 도시한 블록도이다.
본 발명의 멀티플랙서(232)를 이용한 스트림의 다중화 방법을 도 5를 참조하여 보다 상세하게 알아보기로 하나, 다음 내용은 본 발명의 일실시예일 뿐 하기 내 용에 제한되거나 국한되지 아니한다.
먼저, 가입자가 선택한 채널들의 방송 스트림이 멀티플랙서(232)의 전송 흐름 수신부로 입력되면 요구되는 동작 클럭에 동기시켜 다시 MPEG-2 TS 패킷(188 바이트)의 데이터 블록 형태로 출력된다.
다음으로, 전송 흐름 수신부에서 통과된 각 TS 패킷은 각 프리 헤더 발진기에서 4 바이트의 프리 헤더가 부착되어 192 바이트의 패킷 형태로 출력된다.
이때, 프리 헤더의 로컬 타임 필더에 타임 스탬프 값을 시간 흐름 발진기(로컬 타임 스탬프 생성기)로부터 제공 받는다. 상기 시간 흐름 발진기는 28 비트 카운터로 구성되며 MPGE 기준 클럭인 27MHz에 따라 동작한다.
또한 생성된 타임 스템프(카운터) 값은 디멀티플렉서(238)에서 사용하기 위해 전달되며, 프리 헤더 발진기에서 출력되는 각 192 바이트의 패킷은 출력 FIFO 출력부로 입력된 후 순서에 따라 최종 출력된다.
이때, 상기 FIFO 출력부에서 출력되는 패킷이 충돌하지 않도록 FIFO 제어기로부터 제어 신호를 받아 출력하게 되며, 각 출력 FIFO 출력부들은 FIFO 제어기로 현재 저장된 데이터의 바이터 수를 매 클럭마다 전달하고, FIFO 제어기는 먼저 192 바이트가 저장된 출력 FIFO 출력부로 출력하라는 신호를 주고 192 클럭이 지난 후 다른 FIFO 출력부에 저장된 바이트 수가 192 이상인가를 확인하여 다음 FIFO 출력부에 출력하라는 신호를 주게 된다.
상기와 같은 과정을 통하여 각 출력 FIFO 출력부에서 출력되는 패킷들이 충돌되는 것을 막을 수 있다.
도 6은 본 발명의 일실시예에 따른 디멀티플랙서의 상세 구조를 도시한 블록도이다.
본 발명은 멀티플랙서(232)를 통하여 다중 스트림으로 다중화된 스트림을 디멀티플랙서(238)을 통하여 역다중화하는 방법 또한 제시하고 있으며, 이는 본 발명의 특징적인 요건이라 할 수 있다. 상기와 같이 다중 스트림을 역다중화 하는 방법에 대하여 일실시예에 따라 아래에서 자세히 설명하기로 한다.
또한, 본 발명의 디멀티플랙서(238)를 이용한 다중 스트림의 역다중화 방법을 도 6을 참조하여 보다 상세하게 알아보기로 하나, 다음 내용은 본 발명의 일실시예일 뿐 하기 내용에 제한되거나 국한되지 아니한다.
먼저, 디스크램블러(236)로부터 디스크램블링된 TS 스트림이 디멀티플렉서(238)로 입력되면 프리 헤더 확인부에서 입력되는 각 TS 패킷 프리 헤더의 Local TSID 필드를 조사하여 해당 입력 FIFO 입력부로 출력한다.
이때, 상기 FIFO 입력부에서는 입력되는 TS 스트림으로부터 프리 헤더를 포함한 TS 패킷의 시작을 찾고 패킷의 시작 바이트부터 FIFO에 저장한 후 192 TS 패킷(프리 헤더 포함함)이 저장되면 요구되는 동작 클럭에 동기시켜 다시 192 TS 패킷(프리 헤더 포함함)의 데이터 블록 형태로 출력한다.
그리고, 디멀티플렉서(238)에서 최종 출력되는 패킷들은 다중화, 디스크렘블링을 거치면서 패킷 타이밍이 흔들리게 되는데, 특히 PCR 정보를 싣고 있는 패킷의 타이밍이 흔들리면 PCR 지터(Jitter)가 발생하게 된다.
이때, MPEG 에서 허용하는 지터의 범위는 500 ns(nano-second)이므로, PCR의 지터가 허용범위에 있도록 PCR의 정정이 요구된다. 따라서 프로그램 클럭 레퍼런스 선택부(PCR 정정부) 에서는 최종 출력되는 패킷틀 중 PCR 정보를 가지는 패킷의 PCR 값을 정정하여 출력한다. 또한 프리 헤더 4 바이트도 여기서 삭제된다.
상기 프로그램 클럭 레퍼런스 선택부 에서 PCR의 정정 방법은 PCR을 포함하는 TS 패킷이 검색되면 프리 헤더의 로컬 타임 필드 값과 상기 시간 흐름 발진기으로부터 받은 카운터 값을 기록하고 다음에 검색되는 PCR 패킷에서 프리헤더의 로컬 타임 필드 값과 그 때의 카운터 값을 앞에 검색된 각각의 값과 차를 구하여 비교한다.
본 발명에서는 상기 로컬 타임 필드 값의 차와 카운터 값의 차가 다른 경우 지터가 발생한 것에 해당되므로 로컬 시간의 차와 카운터 값의 차에 대해 다시 차를 구하여 이 값으로 PCR 값을 보정할 수도 있다.
또한, 본 발명은 다운로드 제한수신 시스템에서 셋탑박스의 다중 스트림 처리 장치(200)를 이용하여 다수의 채널을 통하여 수신되는 스트림을 다중화하고 상기 다중 스트림을 디스크램블한 후 역다중화하는 과정을 통하여 다수의 채널이 서로 간섭없이 제공되는 방법을 제시하고 있으며, 상기 방법을 다운로드 제한수신 시스템에서 셋탑박스의 다중 스트림 처리 장치(200)의 구성의 기능적 측면을 고려하여 순차적으로 설명하도록 한다.
도 7은 본 발명의 일실시예에 다운로드 제한수신 시스템에서 셋탑박스의 다중 스트림 처리 방법을 도시한 흐름도이다.
이때, 상기 방법은 다운로드 제한수신 시스템에서 셋탑박스의 다중 스트림 처리 장치(200)를 이용하는 방법에 준하는 내용이므로, 상기 장치의 기능적 요소를 모두 포함하고 있기 때문에 그에 따른 상세한 설명은 생략하여 간략히 설명하기로 한다.
먼저, 케이블 모뎀(210)은 케이블 네트워크(100)를 통하여 연결된 방송사의 헤드엔드에 대한 하나 이상의 통신 채널을 할당한다(S710).
다음으로, 보안 모듈(230)은 상기 할당된 통신 채널을 통하여 상기 헤드엔드에 대한 인증 절차를 수행한다(S720).
이때, 보안 모듈(230)은 상기 인증 절차가 완료된 경우 상기 헤드엔드로부터 어플리케이션을 다운로드한다(S730).
다음으로, 복조기(220)는 케이블 네트워크(100)로부터 상기 할당된 통신 채널을 통하여 방송 정보를 수신하여 복조한다(S740).
다음으로, 상기 방송사의 헤드엔드로부터 다운로드된 어플리케이션을 이용하여 상기 복조된 방송 정보를 디스크램블 처리한다(S750).
마지막으로, 디코더(240)는 상기 디스크램블 처리된 방송 정보를 A/V 신호로 복원하여 기 연결된 장치로 전송한다(S760).
도 8은 본 발명의 일실시예에 따른 디스크램블 방법을 도시한 흐름도이다.
본 발명에서 제시되는 디스크램블 방법을 도 8을 참조하여 간략하게 설명하기로 한다.
먼저, 멀티플랙서(232)는 하나 이상의 통신 채널을 통하여 수신되는 상기 하나 이상의 방송 정보인 스트림을 다중 스트림으로 다중화 한다(S810).
본 단계(S810)는 상기 수신된 하나 이상의 스트림을 프리 헤더(Pre-Header) 부착 방식을 통하여 다중화 하는 단계이다.
다음으로, 방송 정보 필터(234)는 상기 다중 스트림을 수신하여 상기 다중 스트림을 필터링한다(S820).
다음으로, 키 메모리(235)는 상기 필터링된 다중 스트림의 디스크램블에 사용되는 키 정보를 저장한다(S830).
다음으로, 디스크램블러(235)는 상기 필터링된 다중 스트림을 상기 키 정보를 이용하여 디스크램블 처리한다(S840).
마지막으로, 디멀티플랙서(238)는 상기 디스크램블 처리된 상기 다중 스트림을 역다중화 하여 상기 하나 이상의 통신 채널로 출력한다(S850).
본 단계(S850)는 상기 디스크램블된 다중 스트림을 프로그램 클럭 레퍼런스(PCR: Program Clock Reference) 정정 방식을 통하여 역다중화 하는 단계이다.
본 발명에 따른 실시예들은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(Floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.