KR100564610B1 - 다중 방송 채널 신호를 디멀티플렉싱하는 디지털 방송수신기의 디멀티플렉서 및 디멀티플렉싱 방법 - Google Patents

다중 방송 채널 신호를 디멀티플렉싱하는 디지털 방송수신기의 디멀티플렉서 및 디멀티플렉싱 방법 Download PDF

Info

Publication number
KR100564610B1
KR100564610B1 KR1020040007213A KR20040007213A KR100564610B1 KR 100564610 B1 KR100564610 B1 KR 100564610B1 KR 1020040007213 A KR1020040007213 A KR 1020040007213A KR 20040007213 A KR20040007213 A KR 20040007213A KR 100564610 B1 KR100564610 B1 KR 100564610B1
Authority
KR
South Korea
Prior art keywords
digital broadcast
word
buffer
stream
bytes
Prior art date
Application number
KR1020040007213A
Other languages
English (en)
Other versions
KR20050079094A (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 KR1020040007213A priority Critical patent/KR100564610B1/ko
Priority to US10/986,952 priority patent/US7804861B2/en
Priority to JP2005028146A priority patent/JP4843227B2/ja
Priority to CNB2005100717250A priority patent/CN100553323C/zh
Publication of KR20050079094A publication Critical patent/KR20050079094A/ko
Application granted granted Critical
Publication of KR100564610B1 publication Critical patent/KR100564610B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H20/00Arrangements for broadcast or for distribution combined with broadcast
    • H04H20/28Arrangements for simultaneous broadcast of plural pieces of information
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B09DISPOSAL OF SOLID WASTE; RECLAMATION OF CONTAMINATED SOIL
    • B09CRECLAMATION OF CONTAMINATED SOIL
    • B09C1/00Reclamation of contaminated soil
    • B09C1/02Extraction using liquids, e.g. washing, leaching, flotation
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B03SEPARATION OF SOLID MATERIALS USING LIQUIDS OR USING PNEUMATIC TABLES OR JIGS; MAGNETIC OR ELECTROSTATIC SEPARATION OF SOLID MATERIALS FROM SOLID MATERIALS OR FLUIDS; SEPARATION BY HIGH-VOLTAGE ELECTRIC FIELDS
    • B03BSEPARATING SOLID MATERIALS USING LIQUIDS OR USING PNEUMATIC TABLES OR JIGS
    • B03B11/00Feed or discharge devices integral with washing or wet-separating equipment
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B03SEPARATION OF SOLID MATERIALS USING LIQUIDS OR USING PNEUMATIC TABLES OR JIGS; MAGNETIC OR ELECTROSTATIC SEPARATION OF SOLID MATERIALS FROM SOLID MATERIALS OR FLUIDS; SEPARATION BY HIGH-VOLTAGE ELECTRIC FIELDS
    • B03BSEPARATING SOLID MATERIALS USING LIQUIDS OR USING PNEUMATIC TABLES OR JIGS
    • B03B9/00General arrangement of separating plant, e.g. flow sheets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H40/00Arrangements specially adapted for receiving broadcast information
    • H04H40/18Arrangements characterised by circuits or components specially adapted for receiving
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H60/00Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
    • H04H60/09Arrangements for device control with a direct linkage to broadcast information or to broadcast space-time; Arrangements for control of broadcast-related services
    • H04H60/14Arrangements for conditional access to broadcast information or to broadcast-related services
    • H04H60/17Arrangements for conditional access to broadcast information or to broadcast-related services on recording information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/04Distributors combined with modulators or demodulators
    • H04J3/047Distributors with transistors or integrated circuits
    • 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/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
    • H04N21/4341Demultiplexing of audio and video streams
    • 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/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving MPEG packets from an IP network
    • H04N21/4385Multiplex stream processing, e.g. multiplex stream decrypting
    • H04N21/43853Multiplex stream processing, e.g. multiplex stream decrypting involving multiplex stream decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • H04N21/6106Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
    • H04N21/6143Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving transmission via a satellite
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B03SEPARATION OF SOLID MATERIALS USING LIQUIDS OR USING PNEUMATIC TABLES OR JIGS; MAGNETIC OR ELECTROSTATIC SEPARATION OF SOLID MATERIALS FROM SOLID MATERIALS OR FLUIDS; SEPARATION BY HIGH-VOLTAGE ELECTRIC FIELDS
    • B03BSEPARATING SOLID MATERIALS USING LIQUIDS OR USING PNEUMATIC TABLES OR JIGS
    • B03B11/00Feed or discharge devices integral with washing or wet-separating equipment
    • B03B2011/008Screw dischargers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/24Time-division multiplex systems in which the allocation is indicated by an address the different channels being transmitted sequentially
    • H04J3/247ATM or packet multiplexing

Abstract

다중 방송 채널 신호를 디멀티플렉싱하는 디지털 방송 수신기의 디멀티플렉서 및 디멀티플렉싱 방법이 개시된다. 상기 디지털 방송 수신기의 디멀티플렉서에서는, PID 필터들이 입력되는 디지털 방송 스트림으로부터 다중 방송 채널들 각각에 해당하는 방송 스트림을 추출하여, 여러 방송 채널의 디지털 방송 스트림들을 출력한다. 이에 따라, CA 버퍼의 버스 점유를 중재하는 아비터의 그랜트 신호에 따라 상기 다중 방송 채널의 디지털 방송 스트림들 중 해당 워드가 FIFO 메모리들로부터 출력되어, CA 버퍼에 저장된다. CA 버퍼에는 콘트롤 워드를 포함하여 패킷 단위로 저장되며, 아비터의 중재를 받아 CA 버퍼에서 CA 모듈로 출력된 패킷은 디스크램블링된 후 디코더를 통해 시청 가능한 형태로 출력된다.

Description

다중 방송 채널 신호를 디멀티플렉싱하는 디지털 방송 수신기의 디멀티플렉서 및 디멀티플렉싱 방법{Demultiplexer and demultiplexing method of the digital broadcasting receiver capable of demultiplexing several broadcasting channel signals}
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 1은 본 발명의 일실시예에 따른 디멀티플렉서를 구비하는 디지털 방송 수신기를 나타내는 블록도이다.
도 2는 도 1의 디멀티플렉서를 나타내는 블록도이다.
도 3은 도 2의 제1 타입의 FIFO 메모리들을 나타내는 블록도이다.
도 4는 도 3의 레지스터부의 구조를 나타내는 블록도이다.
도 5는 도 3의 스테이트 머신의 PID 데이터의 바이트 단위 및 워드 단위 저장 동작 제어를 설명하기 위한 상태도이다.
도 6은 도 3의 스테이트 머신의 PID 데이터 출력동작 제어를 설명하기 위한 상태도이다.
도 7은 도 2의 제1 타입의 FIFO 메모리들의 동작 설명을 위한 타이밍도이다.
도 8은 도 2의 아비터를 나타내는 블록도이다.
도 9는 도 2 및 도 8의 CA 버퍼의 구조를 나타내는 블록도이다.
도 10은 도 2 및 도 8의 아비터, CA 버퍼, 및 CA 모듈 간의 CA 버퍼 인터페이싱 설명을 위한 타이밍도이다.
본 발명은 디지털 방송 수신기에 관한 것으로, 특히 다중 방송 채널들을 동시에 시청하거나 녹화하기 위하여 다중 방송 채널들의 디지털 방송 스트림(stream)들을 디멀티플렉싱(demultiplexing)하는 디지털 방송 수신기의 디멀티플렉싱 장치에 관한 것이다.
일반적인 디지털 방송 수신기는 RF(radio frequency) 모듈에서 무선 공중파로부터 TS(transport stream) 스트림 또는 DSS(direct satellite service) 스트림과 같은 디지털 방송 신호를 추출하고, 패킷 식별자(PID:packet identifier) 필터에서, 해당 방송 채널의 디지털 방송 스트림을 추출한다. 추출된 디지털 방송 스트림은 소정 디코더에서 디코딩 처리된다. 또한, 디지털 방송 수신기는 AV(audio and video) 출력 회로를 통하여 디코딩된 디지털 방송 스트림을 이용하여 디스플레이 및 오디오 구동 신호를 생성하고, 이에 따라, 유저는 디스플레이 장치 및 스피커를 통하여 표시되는 영상 및 소리를 시청한다.
이와 같은 일반적인 디지털 방송 수신기는 유저가 희망하는 방송 채널을 선택할 때, 하나의 PID 필터를 통하여, 선택된 방송 채널에 해당하는 디지털 방송 스 트림을 추출한다. 그러나, 일반적인 디지털 방송 수신기에서는, 2 개 이상의 방송 채널이 동시에 선택되어 여러개의 해당 디지털 방송 스트림들이 동시에 추출되거나 디코딩 처리될 수 없다. 유저는 2 개 이상의 방송 채널을 동시에 시청하면서, 다른 하나 이상의 방송 채널은 녹화하기를 희망하는 경우가 있다. 예를 들어, 유저는 TS 스트림 포맷을 가지는 ATSC(advanced television system committee) 방송 채널 두 개를 동시에 시청하면서, DSS 스트림 포맷을 가지는 Direc TV 방송 채널을 녹화하기를 희망하는 경우가 있다. 이와 같은 경우를 위하여 디지털 방송 수신기는 다수의 PID 필터들을 통하여 여러개의 해당 디지털 방송 스트림들을 추출하고 디코딩 처리하여야 한다.
선택된 하나의 방송 채널에 해당하는 디지털 방송 스트림을 처리하는 종래의 디지털 방송 수신기에서는, 여러 개의 디지털 방송 스트림들을 처리하지 않으므로, 해당 디지털 방송 스트림을 PID 필터에서 추출하여 디코더로 출력할 때의 버퍼 인터페이싱 방식도 간단하다. 하지만, 2 개 이상의 방송 채널들에 해당하는 디지털 방송 스트림들을 처리하기 위해서는 한정된 리소스인 접근 제한(CA:Conditional Access) 모듈(module)을 이용함에 있어 CA 버퍼 인터페이스를 위한 아비트레이션(arbitration)이 필요하다. 즉, 방송 채널마다 디지털 방송 스트림을 처리하기 위한 CA 방식이 다르며, 이에 따라, 각 디지털 방송 스트림을 패킷(packet) 단위로 CA 버퍼에 저장했다가 CA 모듈로 전송하는, CA 버퍼 인터페이스를 위한 다양한 아비트레이션 알고리즘이 개발되고 있다. 디지털 방송 스트림에 대한 종래의 단순한 아비트레이션 알고리즘에 대해서는, 미국 공개 특허, "US2002- 0146023"에 잘 나타나 있다.
그러나, 이와 같은 종래의 디멀티플렉서는, 같은 채널 소스에서 들어오는 디지털 방송 스트림 패킷에 CA 버퍼 인터페이싱하여 순서 변동없이 패킷을 전달하는 아비트레이션 수행에 있어서, CA 버퍼로서 이중 포트 SRAM(static random access memory) 등을 사용하므로 메모리 용량이 크고 아비트레이션이 효율적으로 이루어지지 않아 회로 면적이 크다는 문제점이 있다.
따라서, 본 발명이 이루고자하는 기술적 과제는, 다중 방송 채널 신호를 동시 처리하기 위하여, 최소의 CA 버퍼를 사용하고 버퍼 관리가 효율적으로 이루어지도록 CA 버퍼 인터페이스를 아비트레이션하는 디지털 방송 수신기의 디멀티플렉서를 제공하는 데 있다.
본 발명이 이루고자하는 다른 기술적 과제는, 다중 방송 채널 신호를 동시 처리하기 위하여 디지털 방송 스트림을 디멀티플렉싱하는 방법을 제공하는 데 있다.
상기의 기술적 과제를 달성하기 위한 본 발명에 따른 디지털 방송 수신기의 디멀티플렉서는, PID 필터들, 제1 메모리, 및 아비터를 구비하는 것을 특징으로 한다. 상기 PID 필터들은 입력되는 디지털 방송 스트림으로부터 다중 방송 채널들 각각에 해당하는 방송 스트림을 추출하여, 여러 방송 채널의 디지털 방송 스트림들을 출력한다. 상기 제1 메모리는 각 해당 방송 채널에 대하여, 상기 디지털 방송 스트 림을 바이트 단위로 수신하여 저장하고, 워드 단위로 저장이 완료되면, 해당 방송 채널의 워드에 대한 라이트 요청 신호를 생성하여, 상기 다중 방송 채널의 디지털 방송 스트림들 중 그랜트 신호에 따라 해당 워드를 출력한다. 상기 아비터는 리드 요청 신호, 및 상기 디지털 방송 스트림들의 해당 라이트 요청 신호들에 우선권을 결정하고 상기 그랜트 신호를 생성하여, 상기 디지털 방송 스트림에 대한 리드 억세스와 라이트 억세스에 대한 버스 점유를 중재한다.
상기 디멀티플렉서는, CA(conditional access) 버퍼, CA 모듈을 더 구비하는 것을 특징으로 한다. 상기 CA 버퍼는 상기 라이트 요청 신호들 각각에 대응한 그랜트 신호에 따라 상기 제1 메모리에서 출력되는 해당 디지털 방송 스트림을 소정 단위로 저장하고, 상기 리드 요청 신호에 대응한 그랜트 신호에 따라 해당 디지털 방송 스트림을 출력한다. 상기 CA 모듈은 상기 버스 점유의 중재를 받아 상기 CA 버퍼에서 출력되는 디지털 방송 스트림을 수신하여 패킷 단위로 디스크램블링하고, 상기 디스크램블링의 완료 시마다 버퍼 리드 요청 신호를 발생시킨다.
상기 아비터는, 상기 마지막 번지 워드가 상기 CA 버퍼에 저장될 때, 서비스 큐에 해당 어드레스를 저장하고, 상기 버퍼 리드 요청 신호를 이용하여 생성한 상기 리드 요청 신호에 따라 상기 CA 버퍼에 대한 해당 버스 점유의 우선권을 부여받을 때, 상기 서비스 큐가 가리키는 상기 CA 버퍼의 어드레스에 저장된 상기 소정 단위의 스트림 중 상기 콘트롤 워드를 먼저 출력시키고, 다음에 나머지 워드들을 바이트 단위로 출력시키는 것을 특징으로 한다. 상기 아비터는, 리드 요청 신호에는 최고 우선권, 및 상기 라이트 요청 신호들에는 라운드 로빈 방식에 의하여 순차 적으로 다음 순위의 우선권을 부여하는 것을 특징으로 한다.
상기의 다른 기술적 과제를 달성하기 위한 본 발명에 따른 디지털 방송 수신기의 디멀티플렉싱 방법은, 입력되는 디지털 방송 스트림으로부터 다중 방송 채널들 각각에 해당하는 방송 스트림을 추출하여, 여러 방송 채널의 디지털 방송 스트림들을 출력하는 단계; 각 해당 방송 채널에 대하여, 상기 디지털 방송 스트림을 바이트 단위로 수신하여 제1 메모리에 저장하고, 워드 단위로 저장이 완료되면, 해당 방송 채널의 워드에 대한 라이트 요청 신호를 생성하는 단계; 그랜트 신호에 따라 상기 다중 방송 채널의 디지털 방송 스트림들 중 해당 워드를 출력하는 단계; 및 상기 디지털 방송 스트림에 대한 리드 억세스와 라이트 억세스에 대한 버스 점유를 중재하는 아비터에 의하여, 리드 요청 신호, 및 상기 디지털 방송 스트림들의 해당 라이트 요청 신호들에 우선권을 결정하고 상기 그랜트 신호를 생성하는 단계를 구비하는 것을 특징으로 한다.
본 발명과 본 발명의 동작상의 이점 및 본 발명의 실시에 의하여 달성되는 목적을 충분히 이해하기 위해서는 본 발명의 바람직한 실시예를 예시하는 첨부 도면 및 첨부 도면에 기재된 내용을 참조하여야만 한다.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시예를 설명함으로써, 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.
도 1은 본 발명의 일실시예에 따른 디멀티플렉서(120)를 구비하는 디지털 방송 수신기(100)를 나타내는 블록도이다. 도 1을 참조하면, 본 발명의 일실시예에 따른 디지털 방송 수신기(100)는 RF(radio frequency) 모듈(110), 디멀티플렉서(demultiplexer)(120), 디코더(130), AV(audio and video) 출력 회로(140), 및 외부 메모리(150)를 구비한다. 상기 RF 모듈(110)은 무선 공중파로부터 디지털 방송 신호, 즉, TS(transport stream) 스트림 또는 DSS(direct satellite service) 스트림을 추출하여 출력한다. TS 스트림 및 DSS 스트림에는 다중 방송 채널들을 동시에 시청할 수 있게 하기 위하여, 여러 방송 채널들 각각에 해당하는 오디오 및 비디오 신호들이 다수 실려있다. 상기 디멀티플렉서(120)는 PID(packet identifier) 필터들(도 2의 131~134)을 통하여 여러 가지 방송 채널의 디지털 방송 스트림들을 추출하고, 추출된 스트림들을 아비트레이션(arbitration)하며, CA(conditional access) 모듈(도 2의 126)에서 디스크램블링(descrambling) 처리하여 출력한다. 이외에도, PID 필터들(131~134)을 거치면서 TS 스트림 및 DSS 스트림에는 해당 방송 채널별로 패킷(packet)을 식별할 수 있게 하는 콘트롤 워드가 부가된다. 외부 메모리(150)는 아비트레이션의 수행에서 이용되고, 상기 디멀티플렉서(120) 내에 구비될 수도 있다. 여기서, 유저가 2 개 이상의 방송 채널을 동시에 시청하거나 녹화하기를 원한다고 가정한다. 상기 디코더(130)는 상기 디멀티플렉서(120)에서 출력되는 TS 스트림 또는 DSS 스트림을 디코딩 처리하고, 상기 AV 출력 회로(140)는 디코딩된 디지털 방송 스트림을 이용하여 디스플레이 및 오디오 구동 신호를 생성한다. 이에 따라, 유저는 LCD(liquid crystal display)와 같은 디스플레이 장치 및 스피커를 통하여 표시되는 영상 및 소리를 시청한다.
그러나, 2 개 이상의 방송 채널들에 해당하는 디지털 방송 스트림들을 처리 하기 위해서는 한정된 리소스인 CA 모듈(도 2의 126)과 CA 버퍼(도 2의 125)를 이용해야하므로, 상기 디멀티플렉서(120)에서 버퍼 인터페이스를 위한 아비트레이션(arbitration)이 필요하다. 이는 방송 채널마다 디지털 방송 스트림을 처리하기 위한 CA 방식이 다르기 때문이며, 이에 따라, 각 디지털 방송 스트림을 소정 단위(192 바이트 또는 136 바이트 단위)로 버퍼에 저장했다가 CA 모듈(도 2의 126)로 전송하는, CA 버퍼 인터페이스를 위한 새로운 아비트레이션 알고리즘을 제안하였다.
도 2는 도 1의 디멀티플렉서(120)를 나타내는 블록도이다. 도 2를 참조하면, 도 1의 디멀티플렉서(120)는, PID 필터들(121), 제1 메모리(122), 제2 메모리(123), 아비터(124), CA 버퍼(125), 및 CA 모듈(126)을 구비한다.
상기 PID 필터들(121)은 입력되는 디지털 방송 스트림으로부터 다중 방송 채널들 각각에 해당하는 방송 스트림을 추출하여, 여러 방송 채널의 디지털 방송 스트림들을 출력한다. 상기 입력되는 디지털 방송 스트림이 TS 스트림인 경우에, 188 바이트의 패킷 단위로 데이터가 실린 디지털 방송 스트림과 함께 4 바이트의 콘트롤 워드가 출력된다. 상기 입력되는 디지털 방송 스트림이 DSS 스트림인 경우에, 130 바이트의 패킷 단위로 데이터가 실린 디지털 방송 스트림과 함께 더미 데이터 2바이트, 및 4 바이트의 콘트롤 워드가 출력된다. 즉, 상기 188 바이트 또는 130 바이트 패킷 단위의 디지털 방송 스트림에는 해당 방송 채널별로 패킷을 식별할 수 있게 하는 콘트롤 워드가 부가된다. 32 비트로 구성되는 콘트롤 워드는 [표 1]과 같이, PID 필터에서 패킷 식별을 위한 PID 인덱스(index), 암호화된 부분의 시작 위치를 알려주는 스크램블 시작 위치(scramble start position), TS 스트림인지 DSS 스트림인지를 알려주는 패킷 타입(packet type), 암호화시 사용된 키의 종류(odd key 또는 even key)를 알려주는 키 타입(key type), 시청 또는 녹화인지를 알려주는 디멀티플렉스 여부(dmx valid), 및 암호화 유형(3 DES, DES, DVB-CSA, 또는 AES 등)을 알려주는 CA 타입(type)의 정보를 포함한다. 이와 같은, 콘트롤 워드는 CA 모듈(126)에서 복호화하고 디스크램블링 하는데에도 이용된다.
[표 1]
[31:24] [23:16] [15] [14] [13] [12:11]
PID index (i_index[7:0]) scramble start position (i_scrm_start_byte[7:0]) packet type 1:DSS 0:TS (i_DSS or TS) key type 1:odd key 0:even key (i_odd_even_key) dmx valid (i_dmx_valid) ca type 00:des 01:3des 10:dvb 11:aes (i_ca_type[1:0])
여기서는, 유저가 4 개의 방송 채널을 동시에 시청하거나 녹화하기를 원한다고 가정하였다. 예를 들어, 제1 PID 필터(131)는 제1 방송 채널의 디지털 방송 스트림을 추출하여 출력한다. 여기서, 추출된 디지털 방송 스트림은 PID 데이터라고 하기로 한다. 제2 PID 필터(132)는 제2 방송 채널의 PID 데이터를 추출하여 출력한다. 제3 PID 필터(133)는 제3 방송 채널의 PID 데이터를 추출하여 출력한다. 제4 PID 필터(134)는 제4 방송 채널의 PID 데이터를 추출하여 출력한다. 이외에도, 더 많은 방송 채널을 동시에 시청하거나 녹화하고자 하는 유저의 요구에 부응하기 위하여, 다른 PID 필터가 더 구비될 수 있다.
상기 제1 메모리(122)는 각 해당 방송 채널에 대하여, 상기 디지털 방송 스 트림을 바이트(8비트) 단위로 수신하여 저장한다. 즉, 상기 제1 메모리(122)는 해당 방송 채널에 해당하는 디지털 방송 스트림들을 저장하는 제1 타입의 다수의 FIFO(first-in first-out) 메모리들(141~144)을 구비하고, FIFO 메모리들(141~144) 각각에서 워드 단위로 저장이 완료되면, 해당 방송 채널의 워드에 대한 라이트 요청 신호(REQ)를 생성하여, 아비터(124)의 그랜트 신호(GNT)에 따라 워드 단위로 저장된 상기 다중 방송 채널의 디지털 방송 스트림들 중 해당 워드를 출력한다. 제1 타입의 FIFO 메모리들(141~144)에 대해서는 도 3 내지 도 7에서 좀더 자세히 설명된다.
상기 아비터(124)는 CA 모듈(126)의 버퍼 리드 요청 신호(RDREQ)에 의하여 발생되는 리드 요청 신호(CAREQ), 및 상기 디지털 방송 스트림들의 해당 라이트 요청 신호들(REQ)에 우선권을 결정하고 상기 그랜트 신호(GNT)를 생성하여, 상기 디지털 방송 스트림에 대한 리드 억세스와 라이트 억세스에 대한 버스 점유를 중재한다. 상기 아비터(124)는 리드 요청 신호(RDREQ)에는 최고 우선권을 부여하고, 상기 라이트 요청 신호들(REQ)에는 라운드 로빈 방식에 의하여 순차적으로 다음 순위의 우선권을 부여한다. 상기 CA 버퍼(125)는 상기 라이트 요청 신호들(REQ) 각각에 대응한 그랜트 신호(GNT)에 따라 상기 제1 메모리(122)에서 출력되는 해당 디지털 방송 스트림을 소정 단위(192 바이트 또는 136 바이트 단위)로 저장하고, 상기 리드 요청 신호(CAREQ)에 대응한 그랜트에 따라 해당 디지털 방송 스트림을 출력한다. 상기 소정 단위는, 상기 입력되는 디지털 방송 스트림이 TS 스트림인 경우에, 콘트롤 워드 4 바이트를 포함한 192 바이트이고, 상기 입력되는 디지털 방송 스트림이 DSS 스트림인 경우에 더미 데이터 2 바이트 및 콘트롤 워드 4 바이트를 포함한 136 바이트이다. 상기 CA 모듈(126)은 상기 버스 점유의 중재를 받아 상기 CA 버퍼(125)에서 출력되는 디지털 방송 스트림을 수신하여 패킷 단위(188 또는 130 바이트 단위)로 디스크램블링하고, 상기 디스크램블링의 완료 시마다 버퍼 리드 요청 신호를 발생시킨다. 이와 같은 상기 아비터(124), 상기 CA 버퍼(125), 및 상기 CA 모듈(126)의 동작에 대해서는 도 8 내지 도 10의 설명에서 좀 더 자세히 기술된다.
도 1에서, 외부 메모리(150)는 상기 CA 버퍼(125)가 사용된 양이 일정 수준 이상이면, 상기 외부 메모리(150)에 접근을 위한 소정의 DMA(direct memory access) 제어를 받아, 상기 워드 단위로 저장이 완료된 디지털 방송 스트림을 상기 제1 메모리(122)의 해당 FIFO 메모리에서 바이패스시켜 임시 저장한다. 상기 바이패스된 워드(BYPD)를 출력한 해당 채널의 라이트 요청 신호는 상기 아비터(124)의 CA 버퍼(125)에 대한 버스 점유의 우선권 결정에서 제외된다. 이에 따라, 제2 타입의 FIFO 메모리인 상기 제2 메모리(123)는 상기 CA 버퍼(125)가 사용된 양이 일정 수준 이하이면, 상기 소정의 DMA 제어를 받아, 상기 바이패스된 워드(BYPD)를 상기 외부 메모리(150)로부터 다시 입력받아 저장을 완료한 후, 상기 라이트 억세스를 위한 라이트 요청 신호를 생성한다. 예를 들어, 상기 제2 메모리(123)는 32 비트의 워드를 8개 저장할 수 있는 저장소를 가진다. 상기 아비터(124)는 상기 제1 메모리(122)의 FIFO 메모리들(141~144)에서 발생되는 해당 채널들의 라이트 요청 신호들 이외에, 상기 제2 메모리(123)에서 발생된 라이트 요청 신호에 라운드 로빈 방식에 의하여 순차적으로 다음 순위의 우선권을 결정한다.
도 3은 도 2의 제1 타입의 FIFO 메모리들(141~144)을 나타내는 블록도이다. 도 3을 참조하면, 도 2의 제1 타입의 FIFO 메모리들(141~144) 각각은 레지스터부(151) 및 스테이트 머신(152)을 구비한다. 도 4는 도 3의 레지스터부(151)의 구조를 나타내는 블록도이다. 도 4를 참조하면, 상기 레지스터부(151)는 제1 레지스터(161), 제2 레지스터(162), 및 제3 레지스터(163)를 구비한다. 예를 들어, 상기 제1 레지스터(161)는 8 비트의 바이트 데이터를 3개 저장할 수 있는 저장소를 가진다. 상기 제2 레지스터(162) 및 상기 제3 레지스터(163) 각각은 8 비트의 바이트 데이터를 4개 저장할 수 있는 저장소를 가진다.
도 5는 도 3의 스테이트 머신(152)의 PID 데이터의 바이트 단위 및 워드 단위 저장 동작 제어를 설명하기 위한 상태도이다. 도 6은 도 3의 스테이트 머신(152)의 PID 데이터 출력동작 제어를 설명하기 위한 상태도이다. 도 7은 도 2의 제1 타입의 FIFO 메모리들(141~144)의 동작 설명을 위한 타이밍도이다. 이하, 도 3의 제1 타입의 FIFO 메모리들(141~144)의 동작을 도 5 내지 도 7을 참조하여 설명한다.
도 4에서, 상기 제1 레지스터(161)는 상기 수신되는 디지털 방송 스트림(PID 데이터)의 제1, 제2, 및 제3 바이트를 저장한다. 상기 제2 레지스터(162)는 스테이트 콘트롤 신호(미도시)에 응답하여, 상기 제1, 제2, 및 제3 바이트와 다음으로 수신되어 한 워드를 구성하는 제4 바이트를 저장하거나 이전에 저장했던 워드(WORD_O)를 출력한다. 상기 제3 레지스터(163)는 상기 스테이트 콘트롤 신호에 응답하여, 상기 제2 레지스터(162)의 출력 시에는 다음 워드를 구성하는 제1, 제2, 제3, 및 제4 바이트를 저장하고, 상기 제2 레지스터(162)의 저장 시에는 이전 워드(WORD_E)를 출력한다.
상기 스테이트 콘트롤 신호는 상기 스테이트 머신(152)에서 발생된다. 상기 스테이트 머신(152)은 아비터(124)에서 생성되는 그랜트 신호(GNT)를 이용하여 저장 기간과 출력 기간을 알리는 상기 스테이트 콘트롤 신호를 발생시키고, 해당 저장 레지스터에서 워드 단위로 저장이 완료되면 상기 라이트 요청 신호(REQ)를 생성한다.
예를 들어, 도 5를 참조하면, 먼저, 상기 제3 레지스터(163)가 출력 기간에 있고, 상기 제2 레지스터(162)가 저장 기간에 있는 경우에는, 상기 제1 레지스터(161)가 상태 ST_BYTE1_O, ST_BYTE2_O, 및 ST_BYTE3_O 각각에서 제1, 제2, 및 제3 바이트를 저장하고, 다음 상태 ST_WORD_O에서는 상기 제2 레지스터(162)가 상기 제1, 제2, 및 제3 바이트와 다음으로 수신되어 한 워드를 구성하는 제4 바이트를 저장한다. 마찬가지로, 상기 제2 레지스터(162)가 출력 기간에 있고, 상기 제3 레지스터(163)가 저장 기간에 있는 경우에는, 상기 제1 레지스터(161)가 상태 ST_BYTE1_E, ST_BYTE2_E, 및 ST_BYTE3_E 각각에서 제1, 제2, 및 제3 바이트를 저장하고, 다음 상태 ST_WORD_E에서는 상기 제3 레지스터(163)가 상기 제1, 제2, 및 제3 바이트와 다음으로 수신되어 한 워드를 구성하는 제4 바이트를 저장한다. 이와 같이, TS 스트림의 경우에, 188 바이트의 유효한(valid) 데이터 스트림 패킷이 상기 제2 레지스터(162) 또는 상기 제3 레지스터(163)에 저장되고, 워드 단위로 아비 터(124)로 출력된다. 도 7에서, I_SYNC, 및 I_END 각각은 주기적으로 입력되는 188 바이트의 데이터 스트림이 시작되는 시간과 끝나는 시간을 알려주는 동기 신호이다. 콘트롤 워드는 별도의 회로(미도시)를 통하여 발생된다.
DSS 스트림의 경우, 130 바이트의 데이터 스트림 중 마지막 후미 데이터는 2 바이트(129 및 130 번째 바이트)로 구성되어 있으므로, 상기 제1 레지스터(161)의 PID 데이터의 바이트 단위 저장에서 워드 단위 저장으로의 동작은 시스템 클럭의 2 싸이클 만에 이루어진다. 즉, 도 5에서, ST_WORD_E에서 상기 제3 레지스터(163)가 저장 동작을 완료하고, 마지막으로 다음 상태 ST_BYTE1_O에서 DSS 스트림의 후미 데이터 2 바이트를 받는 경우에, 상기 제1 레지스터(161)가 상태 ST_BYTE1_O, 및 ST_BYTE2_O 각각에서 제1 및 제2 바이트를 저장하고, 상기 제1 레지스터(161)에 저장된 후미 데이터 2 바이트가 다음 상태 ST_BYTE1_E에서는 상기 제2 레지스터(162)로 이동되어 저장된다. 이때, 상기 제2 레지스터(162)의 4 바이트 저장소 중 나머지 2 바이트에 의미없는 값인 더미 데이터 2바이트가 저장된다. 상기 제2 레지스터(162)가 후미 데이터 2 바이트와 더미 데이터 2바이트를 저장할 때, 상기 제3 레지스터(163)는 이전 워드를 출력한다. 마찬가지로, ST_WORD_O에서 상기 제2 레지스터(162)가 저장 동작을 완료하고, 마지막으로 다음 상태 ST_BYTE1_E에서 DSS 스트림의 후미 데이터 2 바이트(129 및 130 번째 바이트)를 받는 경우에, 상기 제1 레지스터(161)가 상태 ST_BYTE1_E, 및 ST_BYTE2_E 각각에서 제1 및 제2 바이트를 저장하고, 상기 제1 레지스터(161)에 저장된 후미 데이터 2 바이트가 다음 상태 ST_BYTE1_O에서는 상기 제3 레지스터(163)로 이동되어 저장된다. 이때, 상기 제3 레지스터(163)의 4 바이트 저장소 중 나머지 2 바이트에 의미없는 값인 더미 데이터 2바이트가 저장된다.
이와 같이, 제1 타입의 FIFO 메모리들(141~144)에 저장된 PID 데이터의 아비터(124)로의 출력 동작은, 도 6에 도시된 바와 같이, 상기 제2 레지스터(162) 또는 상기 제3 레지스터(163)에 한 워드의 저장이 완료된 경우에, 상태 ST_WR_O 또는 ST_WR_E에서 해당 라이트 요청 신호(REQ)(도 7 참조)가 발생되어 아비터(124)로부터 해당 그랜트 신호를 받으면, 상기 제2 레지스터(162) 또는 상기 제3 레지스터(163)에 저장된 PID 데이터는 아비터(124)로 전송되어 CA 버퍼(125)에 저장된다. 도 7에서, O_SYNC는 188 바이트 중 첫번째 워드가 아비터(124)로 전송되는 시간을 알려주는 동기 신호이다. 콘트롤 워드에 대한 라이트 요청 신호(REQ) 발생은 마지막 워드가 아비터(124)로 전송되는 시간을 알려주는 동기 신호 O_END에 동기되어 발생된다. 특히, DSS 스트림의 콘트롤 워드에 대한 라이트 억세스를 위하여, 도 6과 같이, PID 필터들(121)에서 발생되는 콘트롤 워드에 대한 라이트 요청 신호(REQ)가 상태 ST_WR_CO 및 ST_WR_CE 각각에서 발생된다.
도 8은 도 2의 아비터(124)를 나타내는 블록도이다. 도 8을 참조하면, 도 2의 아비터(124)는, 라이트 포인터 값을 부가하는 유니트(171), CA 인터페이스부(177), 리드 포인터(read pointer)(178), 먹스(multiplexer)(179), 서비스 큐(queue)(180), 순위 결정부(181), 및 그랜트 포인터(grant pointer)(182)를 구비한다. 상기 아비터(124)와 관련된 설명은 도 10의 타이밍도가 참조된다.
위에서 기술한 바와 같이, CA 모듈(126)은 상기 아비터(124)의 중재를 받아 상기 CA 버퍼(125)에서 출력되는 디지털 방송 스트림(DSSD 또는 TSD)을 수신하여 패킷 단위(188 또는 130 바이트)로 디스크램블링하고, 상기 디스크램블링의 완료 시마다 버퍼 리드 요청 신호(RDREQ)를 발생시킨다. 상기 CA 버퍼(125)에는 상기 아비터(124)의 중재를 받아 FIFO 메모리들(122, 123)로부터 전송받은 디지털 방송 스트림들(PID 데이터)이 저장된다. 상기 CA 버퍼(125)의 구조가 도 9에 도시되어 있다. 도 9를 참조하면, 콘트롤 워드 4 바이트를 포함하여 192 바이트로 구성된 TS 스트림은 시작 동기 신호 SYNC와 함께 0 번지부터 47 번지까지의 저장소에 48 워드가 저장되고, 특히, 콘트롤 워드는 마지막 패킷을 알리는 동기 신호 END와 함께 CA 버퍼(125)의 마지막 47 번지에 저장된다. 더미 데이터 2 바이트 및 콘트롤 워드 4 바이트를 포함하여 136 바이트로 구성된 DSS 스트림의 경우에는, 시작 동기 신호 SYNC와 함께 0 번지부터 내지 32 번지까지의 저장소에 33 워드가 저장되고, 콘트롤 워드 4바이트는 마지막 패킷을 알리는 동기 신호 END와 함께 CA 버퍼(125)의 마지막 47 번지에 저장된다. 이와 같은 48 개의 저장소로 이루어지는 버퍼는 8개 존재한다. 이와 같이, 상기 CA 버퍼(125)는 제1 타입의 FIFO 메모리들(141~144) 및 제2 타입의 FIFO 메모리(123)으로부터의 라이트 요청 신호들(F1REQ~F4REQ, RBREQ) 각각에 대응한 그랜트 신호(F1GNT~F2GNT, RBGNT)에 따라 상기 제1 타입의 FIFO 메모리들(141~144) 및 제2 타입의 FIFO 메모리(123)에서 출력되는 해당 디지털 방송 스트림을 소정 단위(192 바이트 또는 136 바이트)로 저장한다. 또한, 상기 CA 버퍼(125)는 상기 CA 모듈(126)로부터의 상기 버퍼 리드 요청 신호(RDREQ)를 이용하여 상기 CA 인터페이부(177)에서 발생시킨 리드 요청 신호(CAREQ)에 대응한 그랜 트에 따라 해당 디지털 방송 스트림(CABD)을 출력한다.
도 8에서, 상기 아비터(124)는, 순위 결정부(181)에서 리드 요청 신호(CAREQ), 및 FIFO 메모리들(141~144, 123)로부터의 해당 라이트 요청 신호들(F1REQ~F4REQ, RBREQ)에 우선권을 결정하고, 이에 대응하는 그랜트 신호들을 생성한다. 상기 아비터(124)는 순위 결정부(181)에서 리드 요청 신호(RDREQ)에는 최고 우선권을 부여하고, 상기 라이트 요청 신호들(REQ)에는 라운드 로빈 방식에 의하여 순차적으로 다음 순위의 우선권을 부여한다. 제1 타입의 FIFO 메모리들(141~144) 및 제2 타입의 FIFO 메모리(123)로의 그랜트 신호(F1GNT~F2GNT, RBGNT) 또는 리드 요청 신호(CAREQ)에 대응한 그랜트 신호의 발생 시에는 먹스(179)를 제어하는 신호(MCGNT)가 발생된다. 먹스 제어 신호(MCGNT)에 따라, 먹스(179)는 FIFO 메모리들(141~144, 123)로부터의 PID 데이터(F1D~F4D, RBD) 각각에, 라이트 포인터 부가부들(172~176)에 의하여 라이트 포인터 값(ADDR)이 부가된 데이터들 중에서 선택적으로 출력한다. 먹스(179)에서 출력되는 PID 데이터(FD)는, 라이트 포인터 값(ADDR)이 가리키는 CA 버퍼(125)의 어드레스에 저장된다. CA 모듈(126)의 버퍼 리드 요청 신호(RDREQ)에 대응한 리드 요청 신호(RDREQ)에 대해서는, 순위 결정부(181)에서 해당 그랜트를 받을 때 발생하는 먹스 제어 신호(MCGNT)에 따라, 먹스(179)를 통하여 리드 포인터 값(ADDR)이 출력된다. 그랜트 포인터(182)는 순위 결정부(181)에서 라운드 로빈 동작에 따른 다음 순위의 결정을 위하여, 그랜트 발생 시마다 포인터 값을 하나씩 증가시킨다. 마찬가지로, 라이트 포인터 부가부들(172~176) 및 리드 포인터(178) 각각은 그랜트 신호들 발생에 따른 해당 PID 데이터(F1D~F4D, RBD) 또는 리드 포인터 값이 먹스(179)를 통하여 출력될 때마다, 포인터 값을 하나씩 증가시킨다.
한편, 상기 아비터(124)는 마지막 번지의 콘트롤 워드가 상기 CA 버퍼(125)에 저장될 때, 서비스 큐(180)에 해당 어드레스를 저장한다. CA 인터페이스부(177)가 상기 버퍼 리드 요청 신호(RDREQ)를 이용하여 상기 리드 요청 신호(CAREQ)를 생성하고, 이에 따라 상기 순위 결정부(181)가 상기 CA 버퍼(125)에 대한 해당 버스 점유의 우선권을 부여할 때, 상기 서비스 큐(180)가 가리키는 상기 CA 버퍼(125)의 어드레스에 저장된 데이터 스트림(CABD)이 출력된다. 상기 CA 버퍼(125)에서 출력되는 데이터 스트림(CABD)은, 상기 CA 인터페이스부(177)를 거쳐 CA 모듈(126)로 전송된다. 이때, 상기 서비스 큐(180)가 가리키는 상기 CA 버퍼(125)의 어드레스에 저장된 192 바이트 또는 136 바이트의 데이터 스트림(CABD) 중 콘트롤 워드가 먼저 출력되고, 다음에 나머지 워드들이 바이트 단위로 출력된다. 위에서 기술한 바와 같이, 상기 CA 버퍼(125)의 마지막 번지에 저장되는 콘트롤 워드에는 PID(packet identifier) 인덱스, 스크램블 시작 위치, 패킷 타입, 키 타입, 디멀티플렉스 여부, 및 CA 타입의 정보가 포함되어 있다.
위에서 기술한 바와 같이, 본 발명의 일실시예에 따른 디지털 방송 수신기(100)의 디멀티플렉서(120)는, 각 다중 방송 채널에 해당하는 여러 방송의 디지털 방송 스트림들을 패킷 단위로 입력받아, 단일 포트 메모리(single port memory) 형태를 가지는 CA 버퍼(125)의 비어있는 임의의 저장소에 저장하고 출력 시 순서가 바뀌지 않도록 하여, 효율적인 CA 버퍼(125) 운용을 실현한다. 또한, CA 모듈(126)의 요청이 있을 시 순서대로 한 패킷씩 CA 버퍼(125)로부터 CA 모듈(126)로 전송하고, 이때 동시에 패킷 식별을 위한 PID 인덱스, 암호화된 부분의 시작 위치를 알려주는 스크램블 시작 위치, 패킷 타입, 키 타입, 시청 또는 녹화인지를 알려주는 디멀티플렉스 여부, 및 암호화 유형을 알려주는 CA 타입의 정보를 포함하는 콘트롤 워드도 전송함으로써, CA 모듈(126)에서는 이를 이용하여 현재 전송되고 있는 패킷을 복호화 하는데 이용할 수 있다.
이상에서와 같이 도면과 명세서에서 최적 실시예가 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.
상술한 바와 같이 본 발명에 따른 디지털 방송 수신기의 디멀티플렉서는, 패킷 순서가 뒤바뀌지 말아야 하는 방송 스트림의 특성을 만족시키면서, CA 버퍼로서 단일 포트 SRAM을 사용하여 CA 버퍼 인터페이스를 아비트레이션하므로, 이중 포트 SRAM을 사용하는 종래의 방식에 비하여 회로 면적을 줄일 수 있는 효과가 있다.

Claims (20)

  1. 입력되는 디지털 방송 스트림으로부터 다중 방송 채널들 각각에 해당하는 방송 스트림을 추출하여, 여러 방송 채널의 디지털 방송 스트림들을 출력하는 PID 필터들;
    상기 방송 채널들 중 대응되는 방송 채널에 대하여, 상기 디지털 방송 스트림을 바이트 단위로 수신하여 저장하고, 워드 단위로 저장이 완료되면, 해당 방송 채널의 워드에 대한 라이트 요청 신호를 생성하여, 상기 다중 방송 채널의 디지털 방송 스트림들 중 그랜트 신호에 따라 해당 워드를 출력하는 제1 메모리; 및
    리드 요청 신호 및 상기 디지털 방송 스트림들의 해당 라이트 요청 신호들에 우선권을 결정하고 상기 그랜트 신호를 생성하여, 상기 디지털 방송 스트림에 대한 리드 억세스와 라이트 억세스에 대한 버스 점유를 중재하는 아비터를 구비하는 것을 특징으로 하는 디지털 방송 수신기의 디멀티플렉서.
  2. 제 1항에 있어서, 상기 디멀티플렉서는,
    상기 라이트 요청 신호들 각각에 대응한 그랜트 신호에 따라 상기 제1 메모리에서 출력되는 해당 디지털 방송 스트림을 소정 단위로 저장하고, 상기 리드 요청 신호에 대응한 그랜트 신호에 따라 해당 디지털 방송 스트림을 출력하는 CA(conditional access) 버퍼; 및
    상기 버스 점유의 중재를 받아 상기 CA 버퍼에서 출력되는 디지털 방송 스트림을 수신하여 패킷 단위로 디스크램블링하고, 상기 디스크램블링의 완료 시마다 버퍼 리드 요청 신호를 발생시키는 CA 모듈을 더 구비하는 것을 특징으로 하는 디 지털 방송 수신기의 디멀티플렉서.
  3. 제 2항에 있어서, 상기 입력되는 디지털 방송 스트림이,
    TS(transport stream) 스트림인 경우에, 상기 소정 단위는 192 바이트이고, 상기 패킷 단위는 188 바이트인 것을 특징으로 하는 디지털 방송 수신기의 디멀티플렉서.
  4. 제 2항에 있어서, 상기 입력되는 디지털 방송 스트림이,
    DSS(direct satellite service) 스트림인 경우에, 상기 소정 단위는 136 바이트이고, 상기 패킷 단위는 130 바이트인 것을 특징으로 하는 디지털 방송 수신기의 디멀티플렉서.
  5. 제 3항 또는 제 4항에 있어서, 상기 소정 단위가 저장되는 상기 CA 버퍼의 마지막 번지 워드는,
    PID(packet identifier) 인덱스, 스크램블 시작 위치, 패킷 타입, 키 타입, 디멀티플렉스 여부, 및 CA 타입의 정보를 포함하는 콘트롤 워드인 것을 특징으로 하는 디지털 방송 수신기의 디멀티플렉서.
  6. 제 5항에 있어서, 상기 아비터는,
    상기 마지막 번지 워드가 상기 CA 버퍼에 저장될 때, 서비스 큐에 해당 어드 레스를 저장하고, 상기 버퍼 리드 요청 신호를 이용하여 생성한 상기 리드 요청 신호에 따라 상기 CA 버퍼에 대한 해당 버스 점유의 우선권을 부여받을 때, 상기 서비스 큐가 가리키는 상기 CA 버퍼의 어드레스에 저장된 상기 소정 단위의 스트림 중 상기 콘트롤 워드를 먼저 출력시키고, 다음에 나머지 워드들을 바이트 단위로 출력시키는 것을 특징으로 하는 디지털 방송 수신기의 디멀티플렉서.
  7. 제 2항에 있어서, 상기 디멀티플렉서는,
    상기 CA 버퍼가 사용된 양이 일정 수준 이상이면, 소정의 DMA(direct memory access) 제어를 받아, 상기 제1 메모리에 워드 단위로 저장이 완료된 디지털 방송 스트림을 바이패스시켜 임시 저장하는 외부 메모리를 더 구비하고,
    상기 아비터는,
    상기 우선권 결정에서 상기 바이패스된 워드를 출력한 해당 채널의 라이트 요청 신호를 제외시키는 것을 특징으로 하는 디지털 방송 수신기의 디멀티플렉서.
  8. 제 7항에 있어서, 상기 디멀티플렉서는,
    상기 CA 버퍼가 사용된 양이 일정 수준 이하이면, 상기 소정의 DMA 제어를 받아, 상기 외부 메모리로부터 상기 바이패스된 워드를 다시 입력받아 저장을 완료한 후, 상기 라이트 억세스를 위한 라이트 요청 신호를 생성하는 제2 메모리를 더 구비하고,
    상기 아비터는,
    상기 우선권 결정을 수행함에 있어 상기 제2 메모리에서 발생된 라이트 요청 신호를 라운드 로빈 방식에 의하여 상기 제2 메모리에 우선권을 부여하는 것을 특징으로 하는 디지털 방송 수신기의 디멀티플렉서.
  9. 제 1항에 있어서, 상기 제1 메모리는,
    각 해당 방송 채널에 해당하는 디지털 방송 스트림들을 저장하는 다수의 FIFO 메모리들을 구비하고, 상기 FIFO 메모리들 각각은,
    상기 수신되는 디지털 방송 스트림의 한 워드를 구성하는 제1, 제2, 및 제3 바이트를 저장하는 제1 레지스터;
    스테이트 콘트롤 신호에 응답하여, 상기 제1, 제2, 및 제3 바이트와 다음으로 수신되어 상기 워드를 구성하는 제4 바이트를 저장하거나 이전 워드를 출력하는 제2 레지스터;
    상기 스테이트 콘트롤 신호에 응답하여, 상기 제2 레지스터의 출력 시에는 다음 워드를 구성하는 제1, 제2, 제3, 및 제4 바이트를 저장하고, 상기 제2 레지스터의 저장 시에는 이전 워드를 출력하는 제3 레지스터; 및
    상기 그랜트 신호를 이용하여 상기 레지스터들의 저장 기간과 출력 기간을 알리는 상기 스테이트 콘트롤 신호를 발생시키고, 해당 저장 레지스터에서 워드 단위로 저장이 완료되면 상기 라이트 요청 신호를 생성하는 스테이트 머신을 구비하는 것을 특징으로 하는 디지털 방송 수신기의 디멀티플렉서.
  10. 제 1항에 있어서, 상기 아비터는,
    상기 리드 요청 신호에는 최고 우선권, 및 상기 라이트 요청 신호들에는 라 운드 로빈 방식에 의하여 순차적으로 다음 순위의 우선권을 부여하는 것을 특징으로 하는 디지털 방송 수신기의 디멀티플렉서.
  11. 입력되는 디지털 방송 스트림으로부터 다중 방송 채널들 각각에 해당하는 방송 스트림을 추출하여, 여러 방송 채널의 디지털 방송 스트림들을 출력하는 단계;
    각 해당 방송 채널에 대하여, 상기 디지털 방송 스트림을 바이트 단위로 수신하여 제1 메모리에 저장하고, 워드 단위로 저장이 완료되면, 해당 방송 채널의 워드에 대한 라이트 요청 신호를 생성하는 단계;
    그랜트 신호에 따라 상기 다중 방송 채널의 디지털 방송 스트림들 중 해당 워드를 출력하는 단계; 및
    상기 디지털 방송 스트림에 대한 리드 억세스와 라이트 억세스에 대한 버스 점유를 중재하는 아비터에 의하여, 리드 요청 신호, 및 상기 디지털 방송 스트림들의 해당 라이트 요청 신호들에 우선권을 결정하고 상기 그랜트 신호를 생성하는 단계를 구비하는 것을 특징으로 하는 디지털 방송 수신기의 디멀티플렉싱 방법.
  12. 제 11항에 있어서, 상기 디멀티플렉싱 방법은,
    상기 라이트 요청 신호들 각각에 대응한 그랜트 신호에 따라 상기 제1 메모리에서 출력되는 해당 디지털 방송 스트림을 소정 버퍼에 소정 단위로 저장하고, 상기 리드 요청 신호에 대응한 그랜트 신호에 따라 해당 디지털 방송 스트림을 출력하는 단계; 및
    상기 버스 점유의 중재를 받아 상기 소정 버퍼에서 출력되는 디지털 방송 스트림을 수신하여 패킷 단위로 디스크램블링하고, 상기 디스크램블링의 완료 시마다 버퍼 리드 요청 신호를 발생시키는 단계를 더 구비하는 것을 특징으로 하는 디지털 방송 수신기의 디멀티플렉싱 방법.
  13. 제 12항에 있어서, 상기 입력되는 디지털 방송 스트림이,
    TS 스트림인 경우에, 상기 소정 단위는 192 바이트이고, 상기 패킷 단위는 188 바이트인 것을 특징으로 하는 디지털 방송 수신기의 디멀티플렉싱 방법.
  14. 제 12항에 있어서, 상기 입력되는 디지털 방송 스트림이,
    DSS 스트림인 경우에, 상기 소정 단위는 136 바이트이고, 상기 패킷 단위는 130 바이트인 것을 특징으로 하는 디지털 방송 수신기의 디멀티플렉싱 방법.
  15. 제 13항 또는 제 14항에 있어서, 상기 소정 단위가 저장되는 상기 소정 버퍼의 마지막 번지 워드는,
    PID 인덱스, 스크램블 시작 위치, 패킷 타입, 키 타입, 디멀티플렉스 여부, 및 CA 타입의 정보를 포함하는 콘트롤 워드인 것을 특징으로 하는 디지털 방송 수신기의 디멀티플렉싱 방법.
  16. 제 15항에 있어서, 상기 그랜트 신호에 따라 해당 디지털 방송 스트림을 출 력하는 단계는,
    상기 마지막 번지 워드가 상기 소정 버퍼에 저장될 때, 서비스 큐에 해당 어드레스를 저장하는 단계;
    상기 버퍼 리드 요청 신호를 이용하여 상기 리드 요청 신호를 생성하는 단계;
    상기 리드 요청 신호에 응답하여 상기 소정 버퍼에 대한 해당 버스 점유의 우선권을 부여하여 해당 그랜트 신호를 생성하는 단계;
    상기 그랜트 신호에 따라, 상기 서비스 큐가 가리키는 상기 소정 버퍼의 어드레스에 저장된 상기 소정 단위의 스트림 중 상기 콘트롤 워드를 먼저 출력시키는 단계; 및
    상기 콘트롤 워드 이외의 나머지 워드들을 바이트 단위로 출력시키는 단계를 포함하는 것을 특징으로 하는 디지털 방송 수신기의 디멀티플렉싱 방법.
  17. 제 12항에 있어서, 상기 디멀티플렉싱 방법은,
    상기 소정 버퍼가 사용된 양이 일정 수준 이상이면, 소정의 DMA 제어를 받아, 상기 제1 메모리에 워드 단위로 저장이 완료된 디지털 방송 스트림을 바이패스시켜 외부 메모리에 임시 저장하는 단계를 더 구비하고,
    상기 바이패스된 워드를 출력한 해당 채널의 라이트 요청 신호는 상기 우선권 결정에서 제외되는 것을 특징으로 하는 디지털 방송 수신기의 디멀티플렉싱 방법.
  18. 제 17항에 있어서, 상기 디멀티플렉싱 방법은,
    상기 소정 버퍼가 사용된 양이 일정 수준 이하이면, 상기 소정의 DMA 제어를 받아, 상기 외부 메모리로부터 상기 바이패스된 워드를 다시 입력받아 제2 메모리에 저장하는 단계; 및
    상기 바이패스된 워드가 저장되면, 상기 제2 메모리에서 상기 라이트 억세스를 위한 라이트 요청 신호를 생성하는 단계를 더 구비하고,
    상기 해당 채널들의 라이트 요청 신호들 이외에, 상기 제2 메모리에서 발생된 라이트 요청 신호에 라운드 로빈 방식에 의하여 순차적으로 다음 순위의 우선권이 결정되는 것을 특징으로 하는 디지털 방송 수신기의 디멀티플렉싱 방법.
  19. 제 11항에 있어서, 상기 제1 메모리에 저장 단계는,
    각 해당 방송 채널에 해당하는 디지털 방송 스트림들을 다수의 FIFO 메모리들에 저장하고, 상기 FIFO 메모리들 각각에서,
    상기 수신되는 디지털 방송 스트림의 한 워드를 구성하는 제1, 제2, 및 제3 바이트를 제1 레지스터에 저장하는 단계;
    스테이트 콘트롤 신호에 응답하여, 상기 제1, 제2, 및 제3 바이트와 다음으로 수신되어 상기 워드를 구성하는 제4 바이트를 제2 레지스터에 저장하거나 상기 제2 레지스터에 저장된 이전 워드를 출력하는 단계;
    상기 스테이트 콘트롤 신호에 응답하여, 상기 제2 레지스터의 출력 시에는 다음 워드를 구성하는 제1, 제2, 제3, 및 제4 바이트를 제3 레지스터에 저장하고, 상기 제2 레지스터의 저장 시에는 상기 제3 레지스터에 저장된 이전 워드를 출력하는 단계; 및
    스테이트 머신에서, 상기 그랜트 신호를 이용하여 상기 레지스터들의 저장 기간과 출력 기간을 알리는 상기 스테이트 콘트롤 신호를 발생시키고, 해당 저장 레지스터에서 워드 단위로 저장이 완료되면 상기 라이트 요청 신호를 생성하는 단계를 구비하는 것을 특징으로 하는 디지털 방송 수신기의 디멀티플렉싱 방법.
  20. 제 11항에 있어서, 상기 우선권 결정은,
    상기 리드 요청 신호에는 최고 우선권, 및 상기 라이트 요청 신호들에는 라운드 로빈 방식에 의하여 순차적으로 다음 순위의 우선권을 부여하는 것을 특징으로 하는 디지털 방송 수신기의 디멀티플렉싱 방법.
KR1020040007213A 2004-02-04 2004-02-04 다중 방송 채널 신호를 디멀티플렉싱하는 디지털 방송수신기의 디멀티플렉서 및 디멀티플렉싱 방법 KR100564610B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020040007213A KR100564610B1 (ko) 2004-02-04 2004-02-04 다중 방송 채널 신호를 디멀티플렉싱하는 디지털 방송수신기의 디멀티플렉서 및 디멀티플렉싱 방법
US10/986,952 US7804861B2 (en) 2004-02-04 2004-11-15 Demultiplexer and demultiplexing methods for digital broadcasting receiver
JP2005028146A JP4843227B2 (ja) 2004-02-04 2005-02-03 多重放送チャンネル信号をデマルチプレックスするデジタル放送受信器のデマルチプレクサ及び、デマルチプレックス方法
CNB2005100717250A CN100553323C (zh) 2004-02-04 2005-02-04 数字广播接收机的多路分配器和多路信号分配方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040007213A KR100564610B1 (ko) 2004-02-04 2004-02-04 다중 방송 채널 신호를 디멀티플렉싱하는 디지털 방송수신기의 디멀티플렉서 및 디멀티플렉싱 방법

Publications (2)

Publication Number Publication Date
KR20050079094A KR20050079094A (ko) 2005-08-09
KR100564610B1 true KR100564610B1 (ko) 2006-03-28

Family

ID=34836685

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040007213A KR100564610B1 (ko) 2004-02-04 2004-02-04 다중 방송 채널 신호를 디멀티플렉싱하는 디지털 방송수신기의 디멀티플렉서 및 디멀티플렉싱 방법

Country Status (4)

Country Link
US (1) US7804861B2 (ko)
JP (1) JP4843227B2 (ko)
KR (1) KR100564610B1 (ko)
CN (1) CN100553323C (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100785968B1 (ko) 2006-06-28 2007-12-14 주식회사 대우일렉트로닉스 Dmb 수신기에서 효율적인 역다중화기

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9948882B2 (en) * 2005-08-11 2018-04-17 DISH Technologies L.L.C. Method and system for toasted video distribution
US20090165057A1 (en) * 2007-12-20 2009-06-25 Kerry Philip Miller Concurrent program content processing apparatus, systems, and methods
US20090225768A1 (en) * 2008-03-06 2009-09-10 Himax Technologies Limited Centralized ts packet buffer management in multiple transport stream mpeg-2 demux
CN102293029B (zh) * 2011-04-26 2014-01-01 华为技术有限公司 一种用户面缓冲器内存的恢复方法及装置
US8584167B2 (en) 2011-05-31 2013-11-12 Echostar Technologies L.L.C. Electronic programming guides combining stored content information and content provider schedule information
US8437622B2 (en) 2011-08-23 2013-05-07 Echostar Technologies L.L.C. Altering presentation of received content based on use of closed captioning elements as reference locations
US8959566B2 (en) 2011-08-23 2015-02-17 Echostar Technologies L.L.C. Storing and reading multiplexed content
US8447170B2 (en) 2011-08-23 2013-05-21 Echostar Technologies L.L.C. Automatically recording supplemental content
US8763027B2 (en) 2011-08-23 2014-06-24 Echostar Technologies L.L.C. Recording additional channels of a shared multi-channel transmitter
US8660412B2 (en) 2011-08-23 2014-02-25 Echostar Technologies L.L.C. System and method for dynamically adjusting recording parameters
US8606088B2 (en) 2011-08-23 2013-12-10 Echostar Technologies L.L.C. System and method for memory jumping within stored instances of content
US9185331B2 (en) 2011-08-23 2015-11-10 Echostar Technologies L.L.C. Storing multiple instances of content
US9621946B2 (en) 2011-08-23 2017-04-11 Echostar Technologies L.L.C. Frequency content sort
US8627349B2 (en) 2011-08-23 2014-01-07 Echostar Technologies L.L.C. User interface
US9357159B2 (en) 2011-08-23 2016-05-31 Echostar Technologies L.L.C. Grouping and presenting content
US8850476B2 (en) 2011-08-23 2014-09-30 Echostar Technologies L.L.C. Backwards guide
US8819722B2 (en) 2012-03-15 2014-08-26 Echostar Technologies L.L.C. Smartcard encryption cycling
US8989562B2 (en) 2012-03-15 2015-03-24 Echostar Technologies L.L.C. Facilitating concurrent recording of multiple television channels
US9489981B2 (en) 2012-03-15 2016-11-08 Echostar Technologies L.L.C. Successive initialization of television channel recording
US8959544B2 (en) 2012-03-15 2015-02-17 Echostar Technologies L.L.C. Descrambling of multiple television channels
US8793724B2 (en) 2012-11-08 2014-07-29 Eldon Technology Limited Image domain compliance
US9628838B2 (en) 2013-10-01 2017-04-18 Echostar Technologies L.L.C. Satellite-based content targeting
US9361258B2 (en) * 2013-10-21 2016-06-07 Rda Technologies Limited Common interface/conditional access module and method of transmitting data between common interface card and integrated circuit chip thereof
US9756378B2 (en) 2015-01-07 2017-09-05 Echostar Technologies L.L.C. Single file PVR per service ID
GB2546232A (en) * 2015-06-16 2017-07-19 Nordic Semiconductor Asa Integrated circuit inputs and outputs

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11331797A (ja) * 1998-05-15 1999-11-30 Nec Corp Caモジュールおよびデジタル放送受信機およびデジタル放送受信システム
JP2000083064A (ja) * 1998-06-30 2000-03-21 Matsushita Electric Ind Co Ltd トランスポ―トストリ―ム処理装置
JP2995177B1 (ja) 1998-07-10 1999-12-27 株式会社ディジタル・ビジョン・ラボラトリーズ ストリーム配信システム
US6720968B1 (en) * 1998-12-11 2004-04-13 National Instruments Corporation Video acquisition system including a virtual dual ported memory with adaptive bandwidth allocation
US6748481B1 (en) * 1999-04-06 2004-06-08 Microsoft Corporation Streaming information appliance with circular buffer for receiving and selectively reading blocks of streaming information
KR100327388B1 (ko) 2000-02-23 2002-03-13 구자홍 디지털 방송의 메모리 제어 장치
US7647619B2 (en) * 2000-04-26 2010-01-12 Sony Corporation Scalable filtering table
US6961781B1 (en) * 2000-08-31 2005-11-01 Hewlett-Packard Development Company, L.P. Priority rules for reducing network message routing latency
AU2001297592A1 (en) * 2000-11-12 2002-09-12 Bitboys, Inc. 3-d rendering engine with embedded memory
US20020146023A1 (en) * 2001-01-09 2002-10-10 Regan Myers Transport stream multiplexer utilizing smart FIFO-meters
KR20020096650A (ko) 2001-06-21 2002-12-31 엘지전자 주식회사 영상 처리기의 메모리 액세스 중재 장치 및 방법
JP4282258B2 (ja) 2001-09-19 2009-06-17 株式会社東芝 デジタル放送信号多重送出装置
US20030200548A1 (en) * 2001-12-27 2003-10-23 Paul Baran Method and apparatus for viewer control of digital TV program start time
JP2004228837A (ja) * 2003-01-22 2004-08-12 Matsushita Electric Ind Co Ltd デジタル放送の蓄積時間保証方法及び装置
KR100547810B1 (ko) * 2003-08-27 2006-01-31 삼성전자주식회사 디지털 멀티미디어 데이터의 재생이 가능한 디지털멀티미디어 방송 수신 장치 및 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100785968B1 (ko) 2006-06-28 2007-12-14 주식회사 대우일렉트로닉스 Dmb 수신기에서 효율적인 역다중화기

Also Published As

Publication number Publication date
CN100553323C (zh) 2009-10-21
CN1691774A (zh) 2005-11-02
US7804861B2 (en) 2010-09-28
JP4843227B2 (ja) 2011-12-21
JP2005223919A (ja) 2005-08-18
US20050180467A1 (en) 2005-08-18
KR20050079094A (ko) 2005-08-09

Similar Documents

Publication Publication Date Title
KR100564610B1 (ko) 다중 방송 채널 신호를 디멀티플렉싱하는 디지털 방송수신기의 디멀티플렉서 및 디멀티플렉싱 방법
US6859850B1 (en) Controller for controlling direct memory access
US9026790B2 (en) Processing packet streams
JP4863328B2 (ja) パケット化トランスポート・ストリームの処理方法
US7149230B2 (en) Transport processor for processing multiple transport streams
EP2204996B1 (en) Processing packet streams
US8032910B2 (en) System for receiving transport streams
EP0940756B1 (en) Shared memory access
US6715042B1 (en) Systems and methods for multiport memory access in a multimaster environment
US7730515B1 (en) Digital receiver demultiplexer
US20060184702A1 (en) Apparatus and related method for sharing address and data pins of a cryptocard module and external memory
KR101338977B1 (ko) 지상파 디지털 멀티미디어 방송의 동시시청 방법 및 장치
JP4435061B2 (ja) デジタル放送信号送出装置
US20110019827A1 (en) Information processing apparatus
JP2008042398A (ja) 情報処理装置
JP2008118175A (ja) トランスポートストリーム処理装置
JP2004289240A (ja) パケットデータ処理装置
Zheng et al. Design and implementation of twin transport stream demultiplexor in HDTV decoder
JP2005122463A (ja) ストリームデータバッファの調停装置

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: 20130228

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140228

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20150302

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20160229

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20170228

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20180228

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20190228

Year of fee payment: 14

FPAY Annual fee payment

Payment date: 20200228

Year of fee payment: 15