KR100343819B1 - 메모리어드레스회로를 구비한 역 트렌스포트 프로세서 - Google Patents

메모리어드레스회로를 구비한 역 트렌스포트 프로세서 Download PDF

Info

Publication number
KR100343819B1
KR100343819B1 KR1019950009190A KR19950009190A KR100343819B1 KR 100343819 B1 KR100343819 B1 KR 100343819B1 KR 1019950009190 A KR1019950009190 A KR 1019950009190A KR 19950009190 A KR19950009190 A KR 19950009190A KR 100343819 B1 KR100343819 B1 KR 100343819B1
Authority
KR
South Korea
Prior art keywords
data
packet
payload
memory
buffer memory
Prior art date
Application number
KR1019950009190A
Other languages
English (en)
Other versions
KR950035437A (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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=26926333&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=KR100343819(B1) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Priority claimed from US08/232,789 external-priority patent/US5521979A/en
Priority claimed from US08/232,787 external-priority patent/US5475754A/en
Application filed by 톰슨 콘슈머 일렉트로닉스, 인코포레이티드 filed Critical 톰슨 콘슈머 일렉트로닉스, 인코포레이티드
Publication of KR950035437A publication Critical patent/KR950035437A/ko
Application granted granted Critical
Publication of KR100343819B1 publication Critical patent/KR100343819B1/ko

Links

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/41Structure of client; Structure of client peripherals
    • H04N21/426Internal components of the client ; Characteristics thereof
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • 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
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/162Authorising the user terminal, e.g. by paying; Registering the use of a subscription channel, e.g. billing
    • H04N7/163Authorising the user terminal, e.g. by paying; Registering the use of a subscription channel, e.g. billing by receiver means only

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Television Systems (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Time-Division Multiplex Systems (AREA)
  • Television Signal Processing For Recording (AREA)
  • Storage Device Security (AREA)
  • Multi Processors (AREA)

Abstract

TDM 패킷 신호 TV 수상기용 역트랜스포트 프로세서 시스템은 프로그램 성분 데이타의 소망의 페이로드를 선택적으로 추출하고 그 데이타를 공통 버퍼 메모리의 데이타 입력 포트에 결합하기 위한 장치를 포함하고 있다. 역트랜스포트 프로세서 시스템과 관련된 마이크로프로세서(19)도 데이타를 공통 버퍼 메모리(18)의 데이타 입력 포트와 결합되어 있다. 각각의 성분 페이로드와 마이크로프로세서에 의해 생성된 데이타는 관련된 메모리 어드레스가 어드레스 멀티플렉서(17)에 의해 메모리 어드레스 입력 포트로 입력되면 공통 버퍼 메모리의 각각의 블록에 저장된다. 암호 해독 장치(16)를 포함하고 있고, 패킷 고유의 암호 해독 키에 따라 페이로드 데이타를 암호 해독한다. 또한, 등록 데이타를 포함하고 있는 페이로드를 검출하는 검출기(15)를 포함하고 있다. 등록 데이타를 포함하고 있는 패이로드는 공통 버퍼 메모리를 통해 패킷 고유의 암호 해독 키를 생성하는 스마트 카드로 이동된다. 메모리 데이타 출력 포트는 각각의 프로그램 성분 프로세서(21∼24)와 상호 접속된 버스에 결합되어 있다. 각각의 프로그램 성분 프로세서로부터의 데이타 요구와, 성분 페이로드 공급원으로부터의 데이타 기록 요구에 따라 판독 및 기록 기능을 위한 메모리 액세스가 조정됨에 따라서 유입되는 프로그램 데이타의 손실이 방지되고, 모든 성분의 프로세서가 제공된다.

Description

메모리 어드레스 회로를 구비한 역트랜스포트 프로세서
본 발명은 패킷 비디오 신호로부터의 프로그램 성분 데이타의 패킷을 처리하고 서로 상이한 프로그램 신호 성분의 대응하는 페이로드(payload)를 추출하기 위한 장치에 관한 것이다. 본 발명은 트랜스포트 버퍼 메모리를 어드레싱하는 장치를 포함함과 동시에, 공통 트랜스포트 버퍼 메모리를 이용하는 방법을 포함하고 있다.
예컨대, 미국 특허 제5,168,356호 및 미국 특허 제5,289,276호에는 압축된영상 신호를 패킷 단위로 전송하고, 각각의 패킷에 에러 보호/정정의 기능을 제공하는 이점을 개시하고 있다. 상기 문헌의 미국 특허의 시스템에서는 복수의 프로그램 성분(program component)을 가지고 있다 하더라도, 단일 텔레비젼 프로그램이 각각의 전송 채널로부터 전송되어 처리되고 있다. 이들 시스템에서는 역트랜스포트 프로세서(inverse transport processor)를 이용하여 각각의 프로그램의 영상 신호 성분을 추출하고, 추가의 처리에 의해 영상 성분이 재생되도록 하고 있다. 미국 특허 제5,289,276호에서는 영상 신호 성분을 처리하는 것만이 개시되고 있다. 또한, 미국 특허 제5,168,356호에서는 서로 다른 프로그램 성분을 분리하는 역트랜스포트 프로세서가 설명되어 있으며, 간단한 디멀티플렉서가 패킷 헤드 데이타에 따라 각각의 신호 성분을 구별하도록 되어 있다. 분리된 영상 성분은 버퍼 메모리와 결합되고, 나머지 신호 성분은 각각의 처리 회로에 직접 결합된 것이 도시되어 있다.
미국 특허 제5,233,654호에는 대화식 프로그래밍(interactive programming)을 제공하기 위해 코드를 텔레비젼 신호와 함께 전송되는 방법이 공지되어 있다. 이 코드는 텔레비젼 수상기와 결합된 컴퓨터에 의해 동작하거나 혹은 실행되는 것이 일반적이다.
대부분의 프로그램 성분이 압축되어 있는 응용 장치에 있어서, 전송 채널과 대부분의 각각의 성분 처리(압축 해제) 장치의 사이에는 소정의 버퍼링(buffering) 이 필요하게 되고, 그에 따라서 모든 성분은 아니라 하더라도 대부분을 버퍼 메모리와 결합되는 것이 바람직하다. 서로 상이한 프로그램 성분의 데이타 비율은 각각의 성분 내에서 뿐만 아니라 각각의 성분 내에서도 폭넓게 변화되는 경우가 있다.따라서, 각각의 성분을 독립적으로 버퍼링할 수 있는 이점이 있다. 압축된 프로그램 성분 데이타를 버퍼링하고 대화식 프로그램을 처리하기 위한 버퍼 메모리는 중요하다. 실제로, 버퍼 메모리는 수신 시스템의 비용에 상당한 영향을 줄 수 있다.
만일, 역트랜스포트 프로세서가 예컨대 셉 톱 박스(set top box) 내에 내장되어 있는 경우, 메모리 크기와 메모리 관리 회로는 이용자의 비용을 가능한 한 낮게 억제시키기 위해 최소한으로 유지할 필요가 있다. 따라서, 프로그램 성분의 버퍼링, 프로세서의 하우스 키핑(house keeping) 및 대화식 기능용으로서 동일한 메모리와 메모리 관리 회로를 사용하는 것이 경제적으로 바람직하다.
본 발명은 TDM 패킷 신호 수신기용의 역트랜스포트 프로세서 시스템에 관한 것이다. 이 시스템은 프로그램 성분 데이타의 소망의 페이로드를 선택적으로 추출하고, 그 데이타를 공통 버퍼 메모리의 데이타 입력 포트에 결합하기 위한 장치를 포함하고 있다. 마이크로프로세서는 데이타를 생성하여, 이 데이타도 공통 버퍼 데이타 입력 포트에 입력되고 있다. 각각의 성분 페이로드와 마이크로프로세서에 의해 생성된 데이타는 어드레스 멀티플렉서에 의해 메모리 어드레스 입력 포트에 입력되는 관련된 메모리 어드레스에 따라 공통 버퍼 메모리의 각각의 블록에 저장된다.
특정의 실시예에 있어서 각각의 프로그램 성분의 프로그램 성분 패킷 페이로드는 다중화되어 메모리 데이타 입력 포트로 입력되고, 복수의 개시 포인터(start pointer) 및 종료 포인터(end pointer)에 따라 랜덤 액세스 메모리(RAM)의 선택 영역을 전송된다. 개시 포인터 및 종료 포인터는 각 프로그램 성분용으로 하나씩 설치되어 있는 제1의 복수의 레지스터에 저장된다. 어드레스는 그 일부가 가산기와 다중화된 복수의 판독 포인터 레지스터(read pointer register)에 의해 생성되며, 각각의 프로그램 성분의 포인터를 연속적으로 증가시키도록 되어 있다. 개시 포인터는 메모리 어드레스의 판독 포인터와 관련되고, 이 판독 포인터는 각각의 프로그램 성분에 선택적으로 할당된 지정 메모리 블록을 통해 스크롤(scroll)해 간다.
다른 실시예에 있어서는, 패킷 고유의 암호 해독 키에 따라 페이로드 데이타를 해독하기 위해서 암호 해독 장치(decryption device)를 포함하고 있다.
또 다른 실시예에 있어서는, 등록 데이타(entitlement data)를 포함하는 페이로드를 검출하기 위해서 검출기를 포함하고 있다. 등록 데이타를 포함하는 페이로드는 공통 버퍼 메모리를 통해서 패킷 고유의 암호 해독 키를 생성하는 스마트카드로 전송된다.
메모리로부터의 데이타 출력은 각각의 프로그램 성분 프로세서와 상호 접속된 버스에 결합되어 있다. 각각의 프로그램 성분 프로세서로부터의 데이타 요구와, 성분 페이로드 공급원(component payload source)로부터의 데이타 기록 요구에 따라서 판독 기능과 기록 기능의 메모리 액세스가 조정되어, 유입되는 프로그램 데이타의 손실을 방지하고, 모든 성분 프로세서가 제공된다.
이하, 첨부 도면을 참조하여 본 발명을 상세히 설명한다.
제1도는 복수의 상이한 텔레비젼 또는 대화식 텔레비젼 프로그램의 성분인 신호 패킷을 나타내는 일련의 박스로 이루어진 신호 흐름을 나타내고 있다. 이들 프로그램 성분은 압축 데이타로 형성되는 것으로 가정하여, 각각의 화상(image)의영상 데이타량은 가변적이다. 패킷은 고정된 길이이다. 유사한 첨자를 갖는 문자가 부가된 패킷은 단일 프로그램의 성분을 나타내고 있다. 예컨대, Vi, Ai, Di는 영상, 음성 및 데이타 패킷을 나타내고, V1, A1, D1으로 명시된 패킷은 프로그램 1의 영상, 음성 및 데이타 성분을 나타내며, V3, A31, A32, D3는 프로그램 3의 영상, 음성 1, 음성 2 및 데이타 성분을 나타내고 있다. 데이타 패킷 Di에는 예컨대 수신기 내에서 특정 동작을 개시하기 위한 제어 데이타를 포함할 수도 있으며, 또한, 예를 들어 수신기내에 위치하거나 또는 수신기와 관련된 마이크로프로세서에 의해 실행되는 응용 장치를 구성하는 실행가능한 코드를 포함할 수도 있다.
일련의 패킷의 상부 라인에 도시된 바와 같이, 특정의 프로그램의 각각의 성분은 1개로 그룹화되어 나타내고 있다. 그러나, 동일 프로그램으로부터의 패킷은 일련의 패킷 전체로 나타낸 바와 같이, 그룹화할 필요는 없다. 또한, 각각의 성분이 발생되는 시퀀스에 대해서도 특정의 순서는 존재하지 않는다.
각각의 패킷은 제2도에 도시된 바와 같이, 프리픽스(PREFIX)와 페이로드를 포함하도록 배열된다. 이 예의 프리픽스는 5개의 필드를 구성하는 2개의 8비트 바이트로 구성되고, 그 중의 4개의 필드(P, BB, CF, CS)는 1 비트 필드이며, 1 필드(SCID)는 12 비트 필드로 이루어진다. SCID 필드는 신호 성분 식별자(identifier)이다. 필드 CF는 패킷의 페이로드가 스크렘블되어 있는지의 여부를 나타내는 플래그를 포함하고 있으며, 필드 CS는 2개의 대체 비스크램블키(unscrambling key) 중의 어느 하나를 사용해서 스크램블된 패킷을 언스크램블하는지를 나타내는 플래그를 포함하고 있다. 모든 패킷의 프리픽스는 패킷 단위로 할당되어 있기 때문에, 각각의 필드 위치는 용이하게 식별 가능하도록 되어 있다.
모든 페이로드 내에는 헤더가 있고, 헤더는 모듈로 16의 연속 카운트(CC)와, 프로그램 성분 고유의 TOGGLE 플래그 비트를 포함하고 있다. 연속 카운트는 동일 프로그램 성분의 연속하는 패킷에 간단히 연속 번호가 부가된 것이다. TOGGLE 플래그 비트는 1 비트 신호이며 , 이것은 영상 성분에 대해 논리 레벨을 변화시키거나 또는 패킷 내에서 토글하여 새로운 화상(프레임)의 개시, 즉 화상 층 헤더(picture layer header)를 포함하고 있는 패킷을 정의하고 있다.
제3도는 역트랜스포트 프로세서의 구성 요소를 포함하고 있는 디지털 텔레비젼 신호 수상기의 일부분을 블록 형태로 나타내고 있다. 신호는 안테나(10)에 의해 검출되어, 수신 신호의 고유의 주파수 대역을 추출하는 튜너 검출기(11)로 입력되며, 베이스밴드(baseband) 압축 신호를 이진 형태로 제공한다. 주파수 대역은 마이크로프로세서(19)를 통하여 이용자에 의해 종래의 방법과 동일하게 선택된다. 통상, 방송 디지털 신호는 예컨대 Reed-Solomon 전방 에러 정정(forward error correcting-FEC) 부호화를 사용하여 에러 부호화되고 있다. 따라서, 베이스밴드 신호는 FEC 디코더(12)로 입력된다. 이 FEC 디코더(12)는 수신된 영상 신호를 동기화하고, 제1도에 나타낸 타입의 신호 패킷의 흐름을 제공하고 있다. FEC(12)는 패킷을 규칙적인 간격으로 제공하거나 또는 예를 들어 메모리 콘트롤러(17)로부터의 요구에 따라 공급할 수도 있다. 어느 경우에서도, 패킷 플레밍(framing) 또는 동기화신호가 FEC 회로로부터 공급되며, 그 신호는 각각의 패킷 정보가 FEC 디코더(12)로부터 전송되는 타이밍을 나타내고 있다.
검출된 주파수 대역은 복수의 시분할 다중화 프로그램을 패킷 형태로 수용할 수 있다. 사용을 용이하게 하기 위해서는 하나의 프로그램으로부터 패킷만을 다른 회로 소자로 패스되어야 한다. 본 실시예에 있어서는 어느 패킷을 선택할지를 이용자가 알 부 없는 것으로 가정한다. 이 정보는 프로그램 가이드(program guide)에 포함되고 있고, 이 가이드 자체 내에서 SCID를 통하여 프로그램 신호 성분과 서로 관련된 데이타로 구성되어 있는 프로그램이며, 예컨대 가입자 등록(subscriber entitlement)과 관련된 정보를 포함할 수도 있다. 이 프로그램 가이드는 각각의 프로그램의 음성, 영상 및 데이타 성분의 SCID를 각 프로그램마다 리스트한 것이다. 프로그램 가이드(제1도의 패킷 D4)에는 고정된 SCID가 할당된다. 전원이 수신기에 인가되면, 마이크로프로세서(19)는 프로그램 가이드와 관련된 SCID를 유사한 프로그래머블 SCID 레지스터(13)의 뱅크중 하나로 로드하도록 프로그램된다. FEC 디코더(12)로부터의 신호의 각각의 검출 패킷의 프리픽스 부분의 SCID 필드는 다른 SCID 레지스터(14)로 연속해서 로드된다. 프로그래머블 레지스터와 수신된 SCID 레지스터는 비교 회로(15)의 각각의 입력 포트에 결합되어 있고, 수신된 SCID는 프로그램 가이드 SCID와 비교된다. 만일 패킷의 SCID가 프로그램 가이드 SCID와 일치하면, 비교기(15)는 메모리 콘트롤러(17)가 그 패킷을 메모리(18) 내의 소정 위치로 전송하여 마이크로프로세서가 사용될 수 있도록 한다. 만약 수신된 SCID가 프로그램 가이드 SCID와 일치하지 않으면, 대응하는 패킷은 간단히 파기된다.
마이크로프로세서는 인터페이스(20)를 통해 유저로부터의 프로그래밍 명령을 대기하게 되며, 이 인터페이스로서 컴퓨터 키보드가 도시되어 있지만, 종래의 리모트 콘트롤이거나 또는 수신기의 전면 패널 스위치일 수도 있다. 유저는 채널 4(아날로그 TV 시스템의 용어를 사용하면)에서 제공되는 프로그램온 시청하는 것을 요구할 수 있다. 마이크로프로세서(19)는 메모리(18)에 로드되고 있는 프로그램 가이드 리스트를 주사하여, 채널 4의 프로그램 성분의 각각의 SCID를 조사하고, 이들 SCID를 대응하는 성분 신호 처리 경로와 관련된 레지스터(13)의 뱅크중 프로그래머블 레지스터의 각각으로 로드하도록 프로그램된다.
음성, 영상 또는 데이타 프로그램 성분의 수신 패킷이 소망의 프로그램인 경우에는 최종적으로 각각의 음성 프로세서(23), 영상 프로세서(22) 또는 보조 데이타 신호 프로세서(21, 24)로 전송된다. 데이타는 비교적 일정한 속도로 수신되지만, 신호 프로세서는 통상 버스트(burst) 형태(예컨대, 각각의 압축 해제 형태에 따라서)의 입력 데이타를 요구하고 있다. 제3도의 시스템의 예에서는 먼저 각각의 패킷은 메모리(18) 내의 소정의 메모리 위치로 전송된다. 이후, 각각의 프로세서(21∼24)는 메모리(18)로부터 성분 패킷을 요구한다. 메모리를 통하여 성분을 전송함으로써, 바람직한 신호 데이타 비율의 버퍼링 또는 스로트링(throttling)의 방법이 제공된다.
음성, 영상 및 데이타 패킷이 각각의 소정의 메모리 위치에 로드되기 때문에, 신호 프로세서는 성분 데이타를 편리하게 버퍼링 액세스할 수 있다. 각각의 성분 패킷의 페이로드가 적절한 메모리 영역에 로드되도록 하기 위해서 각각의 SCID비교기는 이들 메모리 영역과 관련된다. 이 판련은 메모리 콘트롤러(17)에서 배선에 의한 것일 수도 있고, 혹은 프로그램에 의한 것일 수도 있다. 만일 전자의 경우라면, 특정의 하나의 프로그레머블 레지스터(13)는 각각 음성, 영상 및 데이타 SCID로 항상 할당되게 된다. 만일 후자의 경우라면, 음성, 영상 및 데이타 SCID는 프로그래머블 레지스터(13) 중의 어느 하나로도 로드될 수 있기 때문에, 적절한 관련은 각각의 SCID가 프로그래머블 레지스터로 로드될 때 메모리 콘트롤러(17)에 의해 프로그램될 것이다.
정상 상태에서는 프로그램 SCID가 프로그래머블 레지스터(13)에 저장된 이후에, 수신 신호 패킷의 SCID는 프로그래머블 SCID 레지스터에 입력되는 모든 SCID와 비교된다, 만일 저장된 음성, 영상 또는 데이타 SCID와 일치되면, 대응하는 패킷 페이로드는 각각의 음성, 영상 또는 데이타 메모리 영역 또는 블록에 저장되게 된다.
각각의 신호 패킷은 FEC 디코더(12)로부터 신호 암호 해독기(signal decryptor)(16)를 통해 메모리 콘트롤러(17)로 연결된다. 신호 페이로드만이 스크램블되고, 패킷 헤더는 불변의 암호 해독기에 의해 진행된다. 패킷이 디스크렘블 되는지의 여부는 패킷 프리픽스 내의 CF 플래그에 의해 판정되고, 패킷을 어떻게 디스크렘블할지는 CS 플래그에 의해 판정된다. 각각의 패킷에서 SCID가 일치하지 않으면, 암호 해독기는 데이타를 통과시키는 것을 간단히 금지시킬 수 있다. 다른 방법으로서, 패킷에서 SCID가 일치하지 않을 때, 암호 해독기는 그 최종의 설정 상태에 따라 암호 해독하는 것을 허가하고, 메모리 기록 제어는 각각의 패킷을 덤프하는 것을 금지시키는 것도 가능하다.
암호 해독기는 스마트 카드 장치(31)에 의해 제공된 암호 해독 키에 의해 프로그램된다. 스마트 카드는 프로그램 가이드의 특정 패킷에 포함된 등록 정보에 따라서 적절한 암호 해독 키를 생성한다. 이 예의 시스템은 2 레벨의 암호화 또는 프로그램 액세스, 등록 제어 메시지인 ECM(entitlement control message), 및 등록 관리 메시지인 EMM(entitlement management message)이 채용되고 있다. 프로그램 등록 제어와 관리 정보는 프로그램 가이드를 구성하는 패킷 스트림에 포함된 특정 SCID로 식별 가능한 패킷 내에 규칙적으로 전송된다. 이들 패킷에 포함된 ECM 정보는 암호 해독기에 의해 사용되는 암호 해독 키를 생성할 수 있도록 스마트 카드에 의해 사용된다. 또한, 이들 패킷에 포함된 EMM 정보는 가입자가 등록되어 있는 프로그램 자료를 판단하기 위해 가입자 고유의 스마트 카드에 의해 사용된다. 이들 패킷내의 EMM 등록 정보는 지리적으로 고유한 것과, 그룹이 고유한 것 또는 가입자가 고유한 것도 가능하다. 예컨대, 이 예의 시스템은 요금 청구(billing) 정보를 스마트 카드로부터 프로그램 공급자, 예컨대 위성 방송사로 전달하기 위한 모뎀(도시 생략됨)을 포함하고 있다. 스마트 카드는 예컨대 수신측 위치의 지역 코드와 전화 교환국을 갖도록 프로그램될 수도 있다. EMM에는 스마트 카드에 의해 처리되는 경우, 특정 지역 코드로 특정 프로그램을 수신하는 자격을 얻거나 또는 거부되는 데이타를 포함할 수도 있다.
프로그램 공급자는 특정 지역 또는 그룹을 매우 단시간의 리드 타임(lead time)으로 방송 정지(block out)할 수 있는 능력을 원하는 경우가 있다. 예컨대,방송사는 풋볼 게임의 티켓이 모두 팔리지 않았을 때, 경기장 내에 있는 로컬 영역으로 풋볼 경기를 중단시킬 것을 요구하는 경우가 있다. 이 정보는 게임 시간의 직전까지는 유용하지 않다. 이러한 단시간의 리드 타임으로는 로컬 영역을 정지시키도록 EMM을 프로그램하는 것은 불가능할 수도 있다. 순간적인 정지를 가능하게 하기 위해서 등록 정보를 다시 부호화하는 것이 등록 데이타의 페이로드 내에 포함되어 있다.
등록 데이타를 포함하고 있는 패킷은 특별히 부호화된 4개의 32 비트 그룹으로 배열된 128 비트의 페이로드 헤더를 포함하고 있다. 정합 필터 또는 E 코드 디코더(30)는 128 비트 헤더 내의 비트 패턴 중의 어느 조합을 검출하도록 배열된다. 만일 일치한 것이 검출되면, 디코더는 메모리 콘트롤러(17) 및 스마트 카드(31)와 통신하여 등록 페이로드의 나머지 부분을 메모리(18)를 통해 스마트 카드에 이용될 수 있도록 한다. 만일 일치하는 것이 검출되지 않으면, 페이로드는 특정의 수신기에 의해 수용되지 않는다. 특정한 코드는 정합 필터(30)가 프로그램 가능하게 되면 주기적으로 변화시키는 것도 가능하다. 이들 코드는 스마트 카드에 의해 주기적으로 공급될 수도 있다. 시청자 등록과 관련된 스마트 카드의 조작에 대한 세부 사항에 대해서는, THE SATELLITE BOOK, A COMPLITE GUIDE TO SATELLITE TV THEORY AND PRACTICE의 섹션 25(Swift Television Publications, 17 Pittsfild, Cricklade, Wilts, Eng1and)를 참고하기 바란다.
정합 필터 또는 E 코드 디코더는 제2 기능을 실행하도록 구성되며, 이 제2 기능은 특정 MPEG 영상 헤더를 검출하기 위한 것이다. 이들 헤더 또는 개시 코드는32 비트 길이이다(이 길이로 한 것은 등록 페이로드의 헤더가 32 비트 그룹으로 부호화되기 때문이다). 만일 영상 데이타가 손실되면, MPEG 영상 디코더는 압축 해제 영상 데이타의 복원(압축 해제)을 특정 데이타 엔트리 포인트(entry point)만으로부터 재개시할 수 있다. 이들 엔트리 포인트는 MPEG 개시 코드와 일치하고 있다. 디코더는 영상 패킷이 손실된 후에, 메모리 콘트롤러(17)와 통신을 취하여 영상 데이타가 메모리로 흐르는 것을 금지시키고, 다음의 MPEG 개시 코드가 디코더(30)에 의해 검출된 후에만 영상 페이로드를 메모리로 기록하는 것을 재개하도록 구성할 수도 있다.
제4도는 제3도에 도시된 메모리 콘트롤러(17)의 장치의 예를 설명하고 있다. 각 프로그램 성분은 메모리(18)의 상이한 연속 블록에 저장된다. 또한, 마이크로프로세서(19) 또는 스마트 카드(도시하지 않음)에 의해 생성된 데이타와 같은 다른 데이타도 메모리(18)에 저장할 수도 있다.
어드레스는 멀티플렉서(105)에 의해 메모리(18)에 입력되며, 입력 데이터는 멀티플렉서(99)에 의해 메모리(18)에 입력된다. 메모리 관리 회로로부터의 출력 데이타는 다른 멀티플렉서(104)에 의해 신호 프로세서에 공급된다. 멀티플렉서(104)에 의해 공급된 출력 데이타는 마이크로프로세서(19)와, 메모리(18)로부터 획득되거나 또는 멀티플렉서(99)로부터 직접 획득된다. 프로그램 데이타는 표준 화상 해상도 및 품질이고, 특정의 데이타 비율로 발생하는 것으로 가정하고 있다. 한편, 고화질 텔레비젼(high definition television) 신호인 HDTV는 보다 높은 데이타 비율로 발생하고 있다. 실제로 FEC에 의해 공급되는 거의 모든 데이타는멀티플렉서(99)와 메모리 I/0 회로(102)를 경유해서 메모리(18)를 통하여 전송되지만, 고비율의 HDTV 신호는 예외적으로 멀티플렉서(99)로부터 멀티플렉서(104)로 직접 전송이 가능하다. 데이타는 암호 해독기(16), 스마트 카드 회로, 마이크로프로세서(19) 및 미디어 에러 코드(100)의 공급원으로부터 멀티플렉서(99)로 공급된다. 여기서 사용되는 미디어 에러 코드(media error code)라는 용어는 각각의 신호 프로세서(decompressor)가 개시 코드와 같은 소정의 코드워드(codeword)를 검출할 때까지 처리를 일시 중지하고, 다음에 예컨대 개시 코드에 따라 처리를 다시 시작하도록 조건이 부가된 데이타 스트림에 삽입되는 특수한 코드워드를 의미한다.
메모리 어드레스는 프로그램 어드레싱 회로(79∼97)와, 마이크로프로세서(19), 스마트 카드 장치(31) 및 보조 패킷 어드레스 카운터(78)로부터 멀티플렉서(105)로 제공된다. 임의의 특정 시간에 특정의 어드레스를 선택하는 것은 DMA 회로(direct memory access)(98)에 의해 제어된다. 비교기(15)로부터의 SCID 제어신호와 각각의 신호 프로세서로부터의 요구된 데이타 신호는 DMA(98)로 입력되며, 이들 신호에 응답하여 메모리 액세스 경합이 조정된다, DMA(98)는 서비스 포인터 콘트롤러(93)와 협력하여 프로그램 신호 성분의 적절한 판독 또는 기록 어드레스를 제공한다.
여러 가지 신호 성분의 메모리 블록의 각각의 어드레스는 프로그램 성분 또는 서비스 포인터 레지스터(83, 87, 88, 92)의 4개의 그룹에 의해 생성된다. 각각의 신호 성분이 저장되는 각각의 메모리 블록의 개시 포인터는 각각의 신호 성분의 레지스터(87)에 포함된다. 개시 포인터는 고정된 값일 수도 있으며 혹은 종래의 메모리 관리 방법에 의해 마이크로프로세서(19)에서 계산될 수도 있다.
각각의 블록의 최종 어드레스 포인터는 발생 가능한 각각의 프로그램 성분마다 1개씩 설치되어 있는 서비스 레지스터(88)의 뱅크에 저장된다. 개시 어드레스와 유사하게 종료 어드레스는 고정된 값일 수 있으며, 또한 마이크로프로세서(19)에 의해 제공된 계산된 값일 수도 있다. 개시 포인터와 종료 포인터에 계산된 값을 사용하면, 보다 범용적인 시스템이 제공되며, 메모리가 저감되기 때문에 계산된 값을 사용하는 쪽이 바람직하다.
메모리 기록 포인터 또는 헤드 포인터는 가산기(80)와 서비스 헤드 레지스터(83)에 의해 생성된다. 서비스 헤드 레지스터는 발생가능한 각각의 프로그램 성분마다 설치되어 있다. 기록 또는 헤드 포인터값은 레지스터(83)에 저장되고, 메모리 기록 사이클 기간에 어드레스 멀티플렉서(105)로 공급된다. 헤드 포인터도 가산기(80)에 결합되고, 하나의 단위씩 증가되며, 증가된 포인터는 다음의 기록 사이클 기간에 적절한 레지스터(83)에 저장된다. 레지스터(83)는 현재 서비스되고 있는 적절한 프로그램 성분을 위해 서비스 포인터 콘트롤러(93)에 의해 선택된다.
이 예에 있어서, 개시 포인터와 종료 포인터는 16 비트 포인터인 것으로 가정한다. 레지스터(83)는 16 비트 기록 또는 헤드 포인터를 제공하고 있다. 16 비트 포인터를 선택한 것은 개시 포인터와 종료 포인터를 레지스터(87, 88)에 로드할 때 16 비트 또는 8 비트 버스의 사용이 용이하기 때문이다. 한편, 메모리(18)는 18 비트 어드레스를 가지고 있다. 18 비트 기록 어드레스는 개시 포인터 중 최상위의 2 비트를 16 비트 헤드 포인터와 결합시킴으로써 형성되고, 개시 포인터 비트는 조합된 18 비트 기록 어드레스의 최상위 비트 위치에 위치되어 있다. 개시 포인터는 각각의 레지스터(87)로부터 서비스 포인터 콘트롤러(93)로 공급된다. 서비스 포인터 콘트롤러는 레지스터(87)에 저장된 개시 포인터로부터의 상위 개시 포인터 비트를 해석(parse)하고, 이들 비트를 16 비트 헤드 포인터 버스와 연결시키고 있다. 이것을 구체적으로 도시하면, 버스(96)는 멀티플렉서(85)로부터 출력된 헤드 포인터 버스와 결합되고, 제5도에는 굵은 화살표로 도시되어 있다.
제5도에 도시된 바와 같이, 상단, 중단 및 하단의 박스행은 개시 포인터, 어드레스 및 헤드 또는 테일 포인터(tail pointer)의 비트를 각각 나타내고 있다. 큰 번호의 박스는 상위 비트 위치를 나타내고 있다. 화살표는 각각의 어드레스 비트가 개시 또는 헤드/테일 포인터 중의 어느 비트 위치로부터 유도되는가를 나타내고 있다. 이러한 어드레스 계산에서 윤곽이 뚜렷한 화살표는 정상 상태의 동작을 나타내고 있다.
유사하게, 메모리 판독 포인터 또는 테일 포인터는 가산기(79)와 서비스 테일 레지스터(92)에 의해 생성된다. 서비스 테일 레지스터는 발생가능한 각각의 위치 프로그램 성분마다 설치되어 있다. 판독 또는 테일 포인터값은 레지스터(92)에 저장되고, 메모리 판독 사이클 기간에 어드레스 멀티플렉서(105)로 공급된다. 테일 포인터 역시 가산기(79)에 결합되어 있고, 하나의 단위씩 증가되며, 증가된 포인터는 다음의 판독 사이클 기간에 적절한 레지스터(92)에 저장된다. 레지스터(92)는 현재 서비스되고 있는 적절한 프로그램 성분을 위해 서비스 포인터 콘트롤러(93)에 의해 선택된다.
레지스터(92)는 16비트 테일 포인터를 제공하고 있다. 18 비트 판독 어드레스는 개시 포인터의 최상위의 2 비트를 16 비트 테일 포인터로 연결함으로써 형성되고, 개시 포인터 비트는 조합된 18 비트 기록 어드레스의 최상위 비트에 위치된다. 서비스 포인터 콘트롤러는 레지스터(87)에 저장된 개시 포인터로부터 최상위 개시 포인터 비트를 해석하고, 이들 비트를 16 비트 테일 포인터 버스와 연결시키고 있다. 이것을 구체적으로 도시하면, 버스(94)는 멀티플렉서(90)로부터 출력된 테일 포인터 버스와 조합된다.
데이타는 계산된 어드레스에서 메모리(18)에 저장된다. 1 바이트의 데이타를 저장한 후에, 헤드 포인터는 1 만큼 증가되고, 이 프로그램 성분의 종료 포인터와 비교되며, 만일 이들이 일치하면, 헤드 포인터의 상위 비트는 개시 포인터의 하위 14 비트로 대체되고, 어드레스의 헤드 포인터 부분의 하위 2 비트 위치에 제로가 놓여진다. 이것은 제5도에 개시 포인터와 어드레스 사이에 가는선을 넣은 화살표로 나타내고 있다. 이 동작은 서비스 포인터 콘트롤러(93)로부터 멀티플렉서(85)로부터의 헤드 포인터로 향하는 화살표(97)에 의해 예시되 있다. 하위 14개의 개시 포인터 비트가 입력되면, 헤드 포인터 비트가 오버라이드되는 것으로 가정한다. 이 하나의 기록 사이클 기간에 헤드 포인터 비트를 어드레스의 하위 개시포인터 비트로 대체하면, 메모리는 상위 2개의 개시 포인터 비트로 지정된 메모리 블록을 스크롤해 감으로써, 각 패킷의 선두에 있는 기록 어드레스를 블록내의 고유의 메모리 위치로 재프로그램하는 것을 방지하고 있다.
만일 헤드 포인터가 테일 포인터[메모리(18)의 어디로부터 데이타를 판독할지를 나타내기 위해 사용됨]와 일치한다면, 헤드 테일 크래쉬(crash)가 발생함을 나타내기 위해 신호가 마이크로프로세서의 인터럽트 부분으로 전송된다. 이 프로그램 채널로부터 메모리(18)로의 기록을 연속시키는 것은 마이크로프로세서가 채널을 다시 사용 가능할 때까지 금지된다. 이 경우는 매우 드물며, 통상의 동작에서는 발생해서는 않된다.
데이타는 각각의 신호 프로세서의 요구를 수신해서 메모리(18)로부터 검색하지만, 그 검색은 가산기(79) 및 레지스터(92)에 의해 계산된 어드레스에서 행해진다. 저장된 데이타의 바이트가 판독된 후에, 테일 포인터는 1 단위씩 증가되고, 서비스 포인터 콘트롤러(93)에서 이 논리 채널의 종료 포인터와 비교된다. 만일 테일 포인터와 종료 포인터가 동일하다면, 다음에 테일 포인터의 상위 비트는 개시 포인터의 하위 14 비트로 대체되고, 어드레스의 테일 포인터 부분의 하위 2 비트 위치에 제로가 놓여진다. 이것은 콘트롤러(93)로부터 나와 멀티플렉서(90)로부터 테일 포인터 버스로 향하는 화살표(95)에 의해 예시되고 있다. 만일 테일 포인터가 헤드 포인터와 일치하고 있다면, 각각의 메모리 블록은 빈 것으로 정의되기 때문에, 이 프로그램 채널의 FEC로부터 추가의 데이타가 수신될 때까지는 그 이상의 바이트는 관련된 신호 프로세서로 전송되지 않을 것이다. 각각의 기록 또는 판독 어드레스의 헤드 또는 테일 포인터 부분을 개시 포인터의 하위 14 비트에 의해 실제로 치환하는 것은 적절한 다중화(multiplexing)에 의하거나 또는 3 상태의 상호 접속의 사용에 의해 달성될 수 있다.
보조 패킷에 전송되는 데이타는 디렉토리, 헤더 또는 제어 정보가 일반적이기 때문에, 프로그램 성분 데이타와는 다소 상이하게 처리된다. 보조 패킷에 입력된 데이타는 각각의 프로그램 성분과, 포함되어 있는 용용 장치에 대해 필수 메모리 저장 영역을 설정하는데 필요한 정보를 포함하고 있다. 따라서, 보조 패킷에는 우선적으로 제공된다. 2개의 서비스 블록은 각각의 성분을 위해 제공된다. 각 블록은 8비트 연속 어드레스 또는 256바이트의 데이터용의 저장 위치를 가지고 있다. 각 블록은 제6도에 나타낸 바와 같이 전체 18 비트의 어드레스를 가지고 있다. 어드레스의 최하위(LSB) 8비트는 순차 카운터에 의해 제공된다. 9번째 비트는 트랜스포트 프리픽스로부터의 CS 또는 스크렘블 키 비트에 의해 제공된다. 10 내지 12 번째 비트는 프로그램 검출을 위해 할당된 특정의 SCID에 따라 생성된다. 이 실시예에서는 시스템은 5개의 프로그램 성분(프로그램 가이드를 포함하는) 또는 서비스를 처리하고, 검출하는 기능을 가지고 있는 것으로 가정한다. 따라서, 각각의 프로그래머블 SCID 레지스터(13)와 5개의 SCID 비교기(15)에는 프로그램된 SCID가 5개가 존재하고 있다. 각각의 5개의 비교기는 출력 단자를 포함하고 있고, 이 단자에는 프로그램 성분이 할당된다. 5개의 비교기 출력 단자와 관련된 5개의 가능한 프로그램은 3 비트 코드가 할당되지만, 이것은 3 비트가 5개의 상태로 나타낼 수 있는 최소 수의 비트이기 때문이다. 3 비트 코드는 보조 패킷 어드레스의 10 내지 12번째 비트로서 삽입된다. 5개의 각각의 프로그램 성분의 SCID가 1-5의 임의의 번호가 붙여진 프로그래머블 레지스터로 할당된다고 가정하자. 프로그래머블레지스터 1-5로 지정된 성분에 할당된 3비트 코드는 각각 000, 001, 010, 011, 100이다. 어느 프로그램 성분이 현재 검출되고 있는 지에 따라서, 현재의 프로그램성분 SCID를 포함하고 있는 프로그래머블 레지스터와 관련된 3개의 비트 코드는 메모리 기록 어드레스의 10 내지 12번째 비트 위치로 삽입되게 될 것이다.
18 비트의 보조 어드레스의 6개의 최상위 비트는 종래의 메모리 관리 방법에 따라 마이크로프로세서에 의해 제공된다.
제7도는 보조 메모리 어드레스 생성 회로를 나타내고 있다. 제7도는 마이크로프로세서(19)에 입력되는 프리픽스 비트 CS를 검색하기 위해 사용되는 프리픽스레지스터(125)를 포함하고 있다. SCID 검출기(15)로부터의 5개의 제어 라인은 5개의 제어 라인에서 3 비트로 변환하는 컨버터(126)로 입력되지만, 이 컨버터는 간단한 부울 논리 연산기(Boolean logic operator)이다. 컨버터(126)에 의해 생성된 3비트는 마이크로프로세서(19)로 입력되고, 여기에서 보조 어드레스의 각각의 최상위 10 비트(MSB) 부분이 구성된다. 보조 패킷이 검출되면, 10-MSB 어드레스 부분은 레지스터(128)의 뱅크 중 하나의 MSB 부분에 입력된다. 각각의 레지스터(128)의 8-LSB 부분은 각 보조 패킷의 시작에서 소정의 값(제로가 일반적이다)으로 설정된다. 8-LSB 부분은 10-MSB 부분에 부가되고, 10 : 1 멀티플렉서(129)의 입력 포트에 입력된다. 멀티플렉서(129)에 의해 제공되는 각각의 어드레스의 8-LSB 부분은 가산기(130)로 연결되고, 8-LSB 어드레스 값은 1 단위씩 증가되고, 다른 멀티플렉서(127)에 의해 레지스터(128)의 8-LSB 부분으로 다시 연결된다. 증가된 LSB 부분(그 MSB 부분과 함께)은 각각의 보조 패킷의 다음의 연속 어드레스로서 사용된다. 멀티플렉서(127, 129)는 어드레스되는 현재의 메모리 블록을 선택하기 위한 DMA 콘트롤러(98)에 의해 제어된다. 또한, 다른 구성으로서, 마이크로프로세서(μPC)(19)는 보조 어드레스의 적어도 일부분을 설정하도록 구성될 수도 있다.
보조 패킷은 일반적으로 독립적으로 처리되고, 전체 보조 패킷 페이로드는 메모리에 로드된 이후에, 사용되는 것이 일반적이다. 이와 같이 해서, 현재의 보조 패킷을 기록하기 위해 어드레스되는 메모리 블록은 판독 및 기록 목적을 위해 동시에 어드레스되지 않는 것이 일반적이다. 그러므로 판독 및 기록 어드레싱을 위해 동일한 레지스터가 사용될 수도 있다. 일단 보조 패킷이 각각의 메모리 블록에 저장되면, 8-LSB 부분은 데이타 독출을 위해 구비되고, 소정의 개시 어드레스로 리세트된다. 다른 구성으로서, 소자(127∼130)와 유사한 레지스터, 멀티플렉서 및 가산기를 포함하는 병렬 뱅크로 구성하여, 판독 어드레스를 생성하는 것도 가능하다. 이들 판독 어드레스는 멀티플렉서(129)와 캐스케이드 접속된 다른 멀티플렉서를 사용하여, 시분할 다중화할 수도 있다.
메모리의 판독/기록 제어는 서비스 포인터 콘트롤러와 DMA(direct memory access) 소자(93, 94)에 의해 실행된다. DMA는 판독 및 기록 사이클을 스케쥴링하도록 프로그램된다. 스케줄링은 FEC 디코더(12)가 메모리에 기록될 데이타를 제공하고 있는지 여부에 의해 결정된다. FEC 데이타 기록 동작은 유입되는 신호 성분 데이타가 손실되지 않도록 우선적으로 행해진다. 제4도에 나타낸 장치의 예에서는, 4 종류의 장치가 메모리를 액세스할 수 있도록 되어 있다. 이 장치들은 스마트 카드(도시하지 않음), FEC(12)[정확하게는 암호 해독기(16)], 마이크로프로세서(19) 및 음성이나 영상 프로세서 등의 응용 장치이다. 메모리의 경합은 다음의 방법으로 처리된다. DMA는 위에서 나열된 여러 가지 처리 소자로부터의 데이타 요구에 따라서 각각의 프로그램 성분용으로 메모리 블록을 할당한다. 메모리로의 액세스는 95nS 타임 슬롯으로 행해지고, 그 기간에 데이타 바이트가 메모리(18)로부터 판독되거나 또는 메모리에 기록된다. 주요한 액세스 할당 모드가 2개가 있고, 이들은 "FEC는 데이타를 제공한다" 및 "FEC는 데이타를 제공하지 않는다"로 정의되고 있다. 이들 모드의 각각에 대해 타임 슬롯은 5 MB/초의 최대 FEC 데이타 비율, 즉 각 200nS 마다 1 바이트인 것으로 가정하여 다음과 같이 할당되고, 우선 순위가 매겨진다. 이들 모드는 다음과 같다.
FEC는 데이타를 제공한다
1) FEC 데이타 기록 ;
2) 응용 장치 판독/마이크로프로세서 판독/기록;
3) FEC 데이타 기록;
4) 마이크로프로세서 판독/기록;
FEC는 데이타를 제공하지 않는다
1) 스마트 카드 판독/기록;
2) 응용 장치 판독/마이크로프로세서 판독/기록;
3) 스마트 카드 판독/기록;
4) 마이크로프로세서 판독/기록;
FEC 데이타 기록은 연기될 수 없기 때문에, FEC(정화하게는 암호 해독기)는 데이타를 제공할 때 각각 200 nS 기간에 메모리 액세스가 보장되어야만 한다. 교대의 타임 슬롯은 응용 장치와 마이크로프로세서에 의해 공유되고 있다. 요구측 장치로 전송할 데이타가 없을 경우, 마이크로프로세서에는 응용 장치 타임 슬롯의 사용권이 제공된다. 콘트롤러(93)는 SCID 검출기와 통신하여, 메모리 기록 동작을 위해 각각의 개시 , 헤드 및 종료 포인터 레지스터 중의 어느 것을 액세스할지가 결정된다. 상기 콘트롤러(93)는 DMA와 통신하여 메모리 판독 동작을 위해 개시, 종료 및 테일 레지스터중 어느 것을 액세스할지가 결정된다. DMA(98)는 멀티플렉서(99, 104, 105)에 의해 대응하는 어드레스 및 데이터의 선택을 제어한다.
메모리 어드레스를 증가시키기 위한 바람직한 대체 회로를 제8도에 도시하고 있으며, 이 회로는 제4도 또는 제7도의 장치 전체 중에서 이용될 수도 있다. 제8도는 제4도에 따른 테일 포인터가 증가하는 것과 동일하도록 실현된 회로를 도시하고 있다. 패킷의 선두에서 관련 레지스터(92A)의 포인터는 가산기(79A)에 연결되고, 여기서 1씩 증가된다. 증가된 중간 테일 포인터를 제8도의 레지스터(92A)(제4도의 92)에 저장하기 보다 증가된 중간 포인터 값은 연속적로 작업 레지스터(107)에 저장된다. 최후의 포인터값이 신호의 패킷에 대해 생성된 후, 레지스터(107)내의 갱신된 포인터는 패킷 SCID와 관련된 레지스터(92A)로 전송된다.
메모리 버퍼내의 데이타가 생략할 필요가 있더라도 이것은 보편적인 것이다. 예컨대, 시스템 에러 또는 데이타 인터럽트가 발생될 때 부분적인 패킷이 저장되어 있는 것이다. 메모리 공간을 절감하기 위해 데이타를 생략하는 것은 부분적인 데이타 패킷을 오버라이팅하는 것만으로 간단히 수행된다. 이 데이타를 오버라이팅 하는 것은 적절한 포인터를 패킷의 선두에 나타낸 값으로 리셋팅함으로써 실행된다. 이러한 리세팅은 레지스터(107) 내의 값을 아무것도 행하지 않는 포인터 레지스터로 전송하지 않음으로써 달성된다.
패킷이 상실되는 경우, 미디어 에러 코드를 영상 성분 신호 스트림으로 삽입해 두면, 특정의 신호 엔트리 포인트가 데이타 스트림에 발생될 때까지 영상 신호 압축 해제기가 압축 해제를 일시 중지하는 이점이 있다. 다음의 엔트리 포인트가 어디서 발생하고 어느 영상 패킷에 나타날지를 예상하는 것은 실용적이지 않다. 다음의 엔트리 포인트를 가능한 한 발견하기 위해서는 패킷 손실을 검출한 이후에 최초의 영상 패킷의 선두에서 미디어 에러 코드를 삽입해 둘 필요가 있다. 제4도의 회로에서는 모든 영상 패킷의 선두에 미디어 에러 코드를 설치해 두고, 선행하는 패킷이 손상되지 않으면 각각의 패킷에 입력되는 미디어 에러 코드를 삭제한다. 미디어 에러 코드는 현재의 영상 패킷 페이로드용으로 예약된 최초의 M 메모리 어드레스 위치에 삽입되지만, 이것은 영상 페이로드가 암호 해독기로부터 도달하기 전의 M개의 기록 사이클 기간에 메모리(18)에 기록하는 것에 의해 행해진다. 동시에, 멀티플렉서(99)는 공급원(100)으로부터의 미디어 에러 코드를 메모리(18) I/0로 입력할 수 있도록 DMA(98)에 의해 결정된다. M은 단지 미디어 에러 코드를 저장하기 위해 필요한 정수개의 메모리 위치이다. 메모리에 8 비트 바이트를 저장하고, 미디어 에러 코드를 32 비트로 하면, M은 4가 된다.
미디어 에러 코드를 메모리에 로드하기 위한 어드레스는 멀티플렉서(82, 85)를 통해 각각의 영상 성분 서비스 레지스터(83)에 의해 공급된다. 그렇지 않다면 영상 성분 데이타와 함께 로드되는 미디어 에러 코드를 메모리 위치로 로드하기 위해 포인터 레지스터(83)로부터 제공된 최초의 M개의 어드레스는 단순히 다음의 M개의 순차 어드레스이고, 이것은 영상 헤드 포인터에 의해 생성될 수도 있음을 알 수 있다. 이들 동일한 어드레스는 M 상태 지연 소자(84)에 연결되고, 미디어 에러 코드의 최후의 바이트가 메모리(18)에 저장된 직후에 M개의 어드레스는 최초의 어드레스가 지연 소자(84)의 출력으로부터 얻을 수 있다.
미디어 에러 코드의 메모리 내부로의 로딩시의 타이밍은 패킷 손실의 결정과 일치하고 있다. 패킷 손실의 결정과 동시에 미디어 에러 코드를 로드하면, 부가적인 타이밍 제약을 받지 않고 신호 흐름 처리를 행할 수 있다.
만일 패킷 손실이 검출되면, 현재 패킷의 영상 성분은 그 성분용으로 설정된 메모리 블록의 다음의, 즉 (M+1) 번째 어드레스 위치에서 메모리(18)에 저장된다. 이것은 적절한 레지스터(83)로부터 비지연 헤드 포인터의 통과를 연속하도록 멀티플렉서(85)를 조건으로 함으로써 달성된다. 이와 반대로, 패킷 손실이 검출되지 않으면, 현재 패킷의 영상 성분의 최초의 M 바이트는 미디어 에러 코드가 사전에 저장된 메모리 위치에 저장된다. 이것은 서비스 포인터 콘트롤러가 지연 소자(84)로부터의 지연 헤드 포인터를 M 기록 사이클 기간에 통과되도록 멀티플렉서(85)를 조건으로 달성된다. M 기록 사이클의 종료시에 서비스 포인터 콘트롤러(93)는 비지연 헤드 포인터를 멀티플렉서가 통과시킬 것을 조건으로 하게 될 것이다. 멀티플렉서가 스위치되어 비지연 포인터로 복귀되면, 다음의 비지연 포인터는 (M+1) 번째의 어드레스에 대응하게 될 것이다.
패킷 에러 또는 손실의 검출은 현재의 패킷의 CC와 HD 데이타에 따라 에러 검출기(101)에 의해 수행된다. 검출기(101)는 현재의 패킷 내의연속 카운트 CC를조사하여, 그것이 이전 패킷의 CC와 1 단위 만큼 상이한지의 여부를 결정한다. 또한, 현재의 패킷 내의 TOGGLE 비트가 조사되고, 그것이 이전의 패킷으로부터 변경이 행해졌는지의 여부가 결정된다. 만일 CC값이 정확하지 않다면, TOGGLE 비트의 상태가 검사된다. CC 비트에 에러가 있거나 또는 TOGGLE 비트가 변경되어 있는지에 따라서 에러 재조정(remediation)의 제1 모드 또는 제2 모드가 개시된다. CC비트가 에러 상태에 있고 TOGGLE 비트가 변경됨으로써 개시되는 제2 모드에 있어서, 시스템은 화상층 헤더를 포함하고 있는 패킷에 대해 리세트할 것을 조건으로 한다. CC 만이 에러가 있는 경우의 제1 모드에 있어서, 시스템은 슬라이스 개시 코드를 포함하고 있는 패킷으로 리세트할 것을 조건으로 하고 있다(슬라이스층은 프레임 내의 압축된 데이타의 부분 집합이다). 제1 또는 제2 모드의 양쪽에 있어서 메모리에 기록된 미디어 에러 코드는 교정 동작을 시작할 수 있도록 압축 해제기에 경고하기 위해 각각의 페이로드에 유지된다.
제공된 수신기가 어떻게 설계되어 있는지에 따라서, 각각의 성분 트랜스포트 페킷이 손실되는 경우 신호 성분 중의 서로 상이한 미디어 에러 코드를 삽입해 두면, 바람직한 경우와 바람직하지 않은 경우가 있다. 또한, 신호 성분 포맷 또는 압축 처리가 상이할 때마다 서로 상이한 미디어 에러 코드를 이용하면, 바람직한 경우가 있다. 따라서, 하나 또는 그 이상의 미디어 에러 코드 공급원이 필요로 되는 경우가 있다.
제9도는 DMA(98)의 메모리 액세스 프로세스의 전형적인 흐름도를 나타내고 있다. DMA는 수신 패킷의 검출 또는 비검출 여부를 SCID의 검출을 통해판단한다{200}. 만일 SCID가 검출되고 메모리에 기록될 암호 해독기(16)로부터의 데이터가 존재하는 것을 표시하고 있으면, 암호 해독기로부터의 프로그램 데이타의 1 바이트가 버퍼 메모리(18)에 기록된다{201}. 그 바이트가 어느 메모리 블록에 기록될지는 현재의 SCID에 따라 프로세서(93)에 의해 결정된다. 다음에, DMA는 스마트 카드와 μPC를 포함하고 프로그램 성분 프로세서의 어느 것이 데이타를 요구하고 있는지 또는 메모리(18)로의 데이타 판독/기록(R/W) 액세스를 요구하고 있는지를 판정한다{202}. 만일 DMA에 대하여 데이타 요구를 행하고 있지 않다면, 프로세스는 단계 {200}으로 되돌아간다. 데이타 R/W 요구가 행해졌다면, DMA는 그 요구의 우선순위를 결정한다{203}. 이것은 데이타를 요구하는 프로그램 프로세서의 임의의 순서로 종래의 인터럽트 루틴에 의해 또는 다른 방법으로서 순차 1바이트 서비스에 의해 달성된다. 예컨대, 액세스 우선 순위의 임의의 순서가 영상, 음성 I, 음성 II, 스마트 카드 및 μPC인 것으로 가정한다. 또한, 영상, 음성 II 및 μPC 만이 메모리 액세스를 요구하고 있다고 가정하자. 단계 {203}의 현재의 동작 동안 1 바이트의 영상이 메모리로부터 판독되게 된다. 단계 {203}의 다음 동작 동안 1 바이트의 음성 II가 메모리로부터 판독되고, 단계 {203}의 다음 후속 발생 동작 동안 1바이트의 μPC 데이타가 메모리(18) 등에 기록되거나 또는 메모리(18)로부터 판독된다. 스마트 카드와 μPC가 액세스할 때의 어드레스는 각각 스마트 카드와 μPC에 의해 공급되지만, 영상, 음성 및 프로그램 가이드의 경우의 어드레스는 어드레스 포인터 구성(80∼93)으로부터 얻어진다.
일단 우선 순위 액세스(priority access)가 판단되면{203}, 필수 프로그램프로세서가 서비스{204}되고, 데이타의 1 바이트가 메모리(18)에 기록되거나 또는 메모리(18)로부터 판독된다. 다음에, 암호 해독기(16)로부터의 1 바이트 데이타는 매모리에 기록된다{205}. μPC가 액세스를 요구하고 있는지를 판정하기 위한 검사가 행해진다{206}. μPC가 액세스를 요구하고 있다면, 1 바이트 데이타에 의해 서비스된다{207}. μPC가 액세스를 요구하고 있지 않다면, 프로세스는 단계 {202}로 진행되어, 프로그램 프로세서중 어느 것이 액세스를 요구하고 있는지를 판정한다. 이런 방법에 있어서, 유입되는 데이타는 메모리 액세스 기간으로의 액세스가 항상 보장되고, 그 사이의 메모리 액세스 주기는 프로그램 프로세서 사이로 분산된다.
만일 암호 해독기(16)로부터 전송되어 온 데이타가 없다면, 즉 SCID가 현재 검출되지 않는다면, 다음의 처리{208~216}가 진행된다. 먼저, {208}에서, 스마트카드는 검사되고, 메모리 액세스를 요구하고 있는지를 판정한다. 만약 그렇다면 그것은 1 바이트의 메모리 액세스가 제공되고{209}, 그렇지 않으면, 프로그램 프로세서중 어느 것이 메모리 액세스를 요구하고 있는지를 판정하기 위한 검사가 행해진다{210}. 만약 데이타 R/W 요구가 행해지고 있다면, DMA는 그 요구의 우선 순위를 결정한다{211}. 적절한 프로세서가 서비스{212}되고, 1 바이트의 메모리 판독 또는 기록 액세스가 실행된다. 만약 데이타 R/W 요구가 프로그램 프로세서에 의해 행해지지 않았다면, 프로세스는 단계 (213)으로 진행되어, 거기에서 스마트 카드가 메모리 액세스를 요구하고 있는지를 판정하는 테스트가 수행된다. 만약 그렇다면, 서비스를 수신하여{216}, 1 바이트의 메모리 액세스가 수행되고, 그렇지 않다면, 프로세스는 단계 {200}으로 진행된다.
전술한 바람직한 실시예로부터 알 수 있는 바와 같이, 현재 설명되고 있는 실시예에 있어서, "FEC는 데이타를 제공하지 않는다" 모드인 경우, 스마트 카드에는 다른 모든 프로그램 프로세서에 대하여 2 : 1 액세스가 제공된다. 이 우선 순위는 DMA 장치 내의 프로그래머블 상태 머신으로 프로그램되며, μPC에 의해 변화된다. 전술한 바와 같이, 시스템의 목적은 대화식 서비스(interactive service)를 제공하기 위한 것이고, μPC(19)는 대화식 데이타에 응답하여 대화식 동작을 적어도 부분적으로 수행할 수 있도록 되어 있다. 이러한 역활에 있어서 μPC(19)는 응용 저장 장치와 작업 메모리의 양쪽을 위한 메모리(18)를 사용할 것이다. 이러한 경우에 있어서, 시스템 오퍼레이터는 보다 빈도가 큰 메모리 액세스로 μPC(19)를 공급하도록 하기 위해 메모리 액세스 우선 순위를 변화시킬 수도 있다. 메모리 액세스 우선 순위의 재프로그래밍은 대화식 응용 명령의 부분 집합으로서 포함될 수도 있다.
제10도는 조건 부가 액세스 정보 또는 MPEG 개시 코드를 포함하고 있는 패킷을 검출하기 위한 장치의 예를 도시하고 있다[제3도의 디코더(30)], 디코더(30)가 등록 페이로드 또는 MPEG 개시 코드를 검출하도록 조절되는지의 여부는 현재 수신되고 있는 SCID에 의해 결정된다. 제10도에 있어서 암호 해독기(16)로부터 제공된 데이타는 8 비트 바이트이며, 할당된 패킷인 것으로 가정한다. 즉, 등록 페이로드의 제1 바이트 또는 MPEG 개시 코드의 제1 바이트는 초기 패킷 페이로드의 선두와 정확하게 할당되기 때문에, 특정 헤더 또는 개시 코드워드를 검출하기 위해서 비트/바이트 스트림내의 위치는 정확히 알 수 있다. 암호 해독기(16)로부터의 데이타는 8 비트 레지스터(250)에 입력되고, 이 레지스터는 8 비트 병렬 출력 포트가 비교기(254)의 각각의 제1 입력 접속단에 결합되며 , 이 비교기는 예컨대 각각의 출력 접속단이 AND 게이트 및 래치에 연결된 8개의 배타적 NOR(XNOR) 회로의 뱅크를 구성할 수도 있다. 래치는 각 바이트 간격으로 AND 게이트의 결과를 래치할 수 있도록 구성된 데이타 래치로 할 수 있다.
32 비트 MPEG 개시 코드는 4 바이트로서 8 비트 레지스터 뱅크(265)에 저장된다. 등록 헤더 코드는 8 비트 바이트로서 16개의 8 비트 레지스터(257)에 저장된다. 레지스터 뱅크(251, 265)의 로딩은 마이크로 프로세서(19) 및/또는 스마트 카드에 의해 제어된다. 개시 코드 레지스터(265)는 4 : 1 멀티플렉서(266)에 결합되고, 등록 헤더 레지스터는 16 : 1 멀티플렉서(257)에 결합되어 있다. 멀티플렉서(257, 266)의 출력 포트는 2 : 1 멀티플렉서(249)에 결합된다. 이 멀티플렉서(249)의 각각의 출력 접속단은 비교기(254)의 대응하는 각각의 제2 입력 단자에 결합된다. 멀티플렉서(249, 257, 266)의 입력 접속단 및 출력 접속단은 8 비트 버스로 되어 있다. 레지스터(250)의 각각의 출력 접속단에 나타난 각각의 값이 멀티플렉서(249)의 각각의 출력 접속단에 나타난 각각의 출력값과 동일하다면, 실제의 신호는 대응하는 데이타 바이트에 대하여 비교 회로(254)에 의해 생성된다.
개시 코드가 검출된 때는 멀티플렉서(266)는 암호 해독기(16)로부터의 최초의 4개의 데이타 바이트의 발생과 동시에, 4개의 상이한 레지스터(265)를 XNOR과 순차적으로 접속할 수 있는 카운터(258)에 의해 스캔된다. 또한, 등록 페이로드 헤더가 검출되었을 때는, 멀티플렉서(257)는 레지스터(265)의 다른 하나를 연속적으로 비교 회로에 연결할 수 있는 카운터(258)에 의해 스캔된다.
비교 회로의 출력은 누산 및 테스트 회로(255)에 입력된다. 이 회로(255)는 소정 수의 바이트 일치 조건이 발생했는지를 판단하여, 만일 발생했다면 검사중인 특정 페이로드의 일 부분에 입력되어 있는 등록 데이타에 대하여 기록 허가 신호를 생성한다. 본 시스템에 있어서, 등록 페이로드 헤더는 4개의 32 비트 세그멘트로 배열된 128 비트를 포함하고 있다. 서로 상이한 가입자들은 128 비트의 상이한 바이트의 조합을 구할 수 있도록 구성되고 있다. 예컨대, 하나의 가입자 장치(subscriber apparatus)는 등록 페이로드 헤더의 최초의 4 바이트와 일치하도록 구성될 수 있다. 또한, 다른 가입자 장치는 등록 페이로드 헤더의 2번째 4 바이트와 일치하도록 구성하는 것이 가능하다. 이들 예의 어느 경우에도 회로(255)는 적절한 4개의 연속 바이트와 일치하는지가 발생되었는지를 결정한다.
제10도의 장치는 모두 제로의 등록 페이로드 헤더 조건을 검출하는 회로(소자 261∼263)를 포함하고 있다. 각각의 도달된 데이타 바이트의 비트는 8 비트 OR게이트(263)의 각각의 단자에 연결된다. 이들 비트중의 어느 한 비트가 논리 1이면, OR 게이트(263)는 논리 1의 출력을 생성한다. OR 게이트(263)의 출력은 2 입력 OR 게이트(262)의 한쪽 입력단에 접속되고, 이 게이트의 출력단과 제2 입력단은 각각 D 타입 래치(261)의 Q 출력 단자와 데이타 입력단과 출력단에 결합되어 있다. D 타입 래치는 유입되는 데이타 바이트의 도착과 동기하여 타이밍 회로(259)에 의해 클록된다. 만일 래치가 리세트된 이후에 발생하는 데이타 바이트중 어느 것에 논리 1인 비트가 있다면, 래치(261)는 다음의 리세트 펄스가 나타날 때까지 그 Q 출력단에서 논리 1을 출력한다. 래치(261)의 Q 출력단은 인버터에 결합되고, 인버터는 래치가 1의 출력 레벨을 출력하면, 제로의 출력 레벨을 출력한다. 따라서, 헤더의 128 비트(16 바이트)가 레지스터(250)를 통과한다면, 인버터의 출력은 하이(high)이고, 128 비트는 제로 값으로 평가된다. 등록 페이로드 헤더가 통과된 이후에 인버터로부터 하이 출력 레벨이 검출되면, 회로(255)는 데이타 기록 허가 신호를 생성한다.
본 발명의 시스템은 SCID 검출기, 암호 해독기, 어드레싱 회로, 조건적 액세스 필터 및 스마트 카드 인터페이스를 단일의 집적 회로상에 모두 실장하면, 특히 효율적임을 알 수 있다. 이와 같이 하면, 타이밍에 중대한 제약이 있는 외부 경로의 수가 제한될 수 있다.
제1도는 시분할 다중화 패킷 텔레비젼 신호를 나타낸 도면.
제2도는 각각의 신호 패킷을 나타낸 도면.
제3도는 본 발명을 구체화하는 다중화 성분 신호의 패킷을 선택하여 처리하는 수신기의 블록도.
제4도는 제3도의 메모리 콘트롤러(17)용으로서 실현될 수 있는 메모리 관리 회로의 예를 도시하는 블록도.
제5도는 서비스 채널 데이타의 메모리 어드레스가 어떻게 작성되는지를 도시하는 도면.
제6도는 보조 패킷 데이타의 메모리 어드레스가 어떻게 작성되는지를 도시하는 도면.
제7도는 보조 패킷의 메모리 어드레스를 생성하는 회로의 예를 도시하는 블록도.
제8도는 메모리 어드레스를 증가시키기 위한 다른 레지스터 회로의 블록도.
제9도는 메모리 어드레스 제어의 동작 흐름도.
제10도는 조건적 액세스 필터/개시 코드 검출기를 도시하는 블록도.
<도면의 주요 부분에 대한 부호의 설명>
10 : 안테나
11 : 튜너 검출기
12 : FEC 디코더
13 : 프로그래머블 SCID 레지스터
16 : 암호 해독기
17 : 메모리 콘트롤러
18 : 공통 버퍼 메모리
19 : 마이크로프로세서
20 : 유저 인터페이스
78 : 보조 어드레스 생성 회로
83, 87, 88, 92 : 레지스터
82, 85, 86, 89, 90, 99, 104, 105, 108, 128, 257, 266 : 멀티플렉서

Claims (14)

  1. 각각의 패킷이 프로그램 성분 페이로드와, 식별자 SCID를 내장한 헤더를 포함하고, 시분할 다중화 패킷 신호 프로그램 성분을 처리하기 위한 장치에 있어서,
    상기 시분할 다중화 패킷 신호의 공급원(11)과;
    공통 버퍼 메모리(18)와;
    각각의 입력 포트가 상기 공통 버퍼 메모리의 데이타 출력 포트에 결합된 복수개의 프로그램 성분 처리 장치(21∼24)와;
    상기 신호 공급원에 결합되어 사전 결정된 복수개의 SCID 중 하나에 의해 각각 식별된 패킷을 검출하는 SCID 검출기(13∼15)와;
    상기 사전 결정된 복수개의 SCID에 의해 식별된 패킷의 각각의 페이로드를 상기 공통 버퍼 메모리의 데이타 입력 포트에 입력하는 수단과;
    상기 사전 결정된 복수개의 SCID 중의 각각의 검출에 응답하여, 각각의 프로그램 성분 페이로드를 상기 공통 버퍼 메모리의 각각의 블록에 저장하기 위한 기록 어드레스를 생성하고, 상기 복수의 프로그램 성분 처리 장치로부터의 데이타 요구에 응답하여 대응하는 프로그램 성분 페이로드를 상기 공통 버퍼 메모리의 상기 각각의 블록으로부터 요구 처리 장치로 판독하는 어드레싱 회로(17)를 포함하는 것을 특징으로 하는 시분할 다중화 패킷 신호 프로그램 성분 처리 장치.
  2. 제1항에 있어서,
    상기 어드레싱 회로는 연속하는 메모리 액세스 동작 중에, 패킷 페이로드 데이타의 기록과, 상기 복수개의 프로그램 성분 처리 장치에 의해 요구된 판독/기록 기능을 교대로 실행하도록 구성된 것을 특징으로 하는 시분할 다중화 패킷 신호 프로그램 성분 처리 장치.
  3. 제 1항에 있어서,
    각각의 페이로드는 SCID 고유의 암호화 키를 사용해서 암호화되고,
    패킷의 각각의 페이로드를 상기 공통 버퍼 메모리의 데이타 입력 포트로 입력하는 수단은,
    사전 결정된 수신 패킷에 포함된 등록 데이터에 응답하여 SCID 고유의 암호 해독 키를 생성하도록 설계된 스마트 카드를 인터페이스하기 위한 스마트 카드 인터페이스와;
    상기 공통 버퍼 메모리의 상기 데이타 입력 포트에 결합된 출력 포트를 가지며, 대응하는 SCID 고유의 암호 해독 키에 따라 각각의 페이로드를 암호 해독하는 신호 암호 해독기를 포함하는 것을 특징으로 하는 시분할 다중화 패킷 신호 프로그램 성분 처리 장치.
  4. 제3항에 있어서,
    등록 데이타를 포함하고 있는 패킷은 페이로드 고유의 헤더를 갖춘 페이로드를 포함하고 있고,
    상기 페이로드 고유의 헤더를 인식하고, 상기 공통 버퍼 메모리의 스마트 카드 블록 내에 상기 등록 데이타의 로딩을 실행시키는 제어 신호를 생성하는 디코더를 더 포함하는 것을 특징으로 하는 시분할 다중화 패킷 신호 프로그램 성분 처리 장치.
  5. 제1항 또는 제4항에 있어서,
    적어도 시스템 제어 기능을 실행하는 마이크로프로세서를 더 포함하고,
    상기 마이크로프로세서는 응용 저장 장치와 작업 메모리용으로 상기 공통 버퍼 메모리를 사용하도록 구성된 것을 특징으로 하는 시분할 다중화 패킷 신호 프로그램 성분 처리 장치.
  6. 각각의 패킷이 프로그램 성분 페이로드와, 식별자 SCID를 내장한 헤더를 포함하고, 시분할 다중화 패킷 신호 프로그램 성분을 처리하기 위한 장치에 있어서,
    상기 시분할 다중화 패킷 신호의 공급원(11)과;
    적어도 시스템 제어 기능을 실행하는 마이크로프로세서(19)와;
    공통 버퍼 메모리(18)와;
    각각의 입력 포트가 상기 공통 버퍼 메모리의 데이타 출력 포트에 결합된 복수개의 프로그램 성분 처리 장치(21∼24)와:
    페이로드 데이타, 상기 마이크로프로세서에 의해 생성된 데이타 및 상기 복수개의 프로그램 성분 처리 장치의 각각에 의해 생성된 데이타를 상기 공통 버퍼메모리의 데이타 입력 포트에 선택적으로 결합하는 제1 멀티플렉서(99)와;
    적어도 각각의 프로그램 성분 페이로드를 위한 판독 어드레스 및 기록 어드레스를 생성하는 어드레스 생성 회로(78)와;
    상기 어드레스 생성 회로에 의해 생성되고, 상기 마이크로프로세서에 의해 생성되며, 상기 복수개의 프로그램 성분 처리 장치의 각각에 의해 생성되는 메모리 어드레스를 상기 공통 버퍼 메모리의 메모리 어드레스 포트에 선택적으로 입력하는 제2 멀티플렉서(105)를 포함하는 것을 특징으로 하는 시분할 다중화 패킷 신호 프로그램 성분 처리 장치.
  7. 제6항에 있어서,
    각각의 페이로드는 상기 마이크로프로세서에 의해 실행되는 응용 장치와 관련된 실행 가능한 코드를 포함하고 있고, 상기 공통 버퍼 메모리는 상기 실행 가능한 코드를 상기 마이크로프로세서에 의해 생성되는 데이타와 함께 저장하도록 조건이 부가된 것을 특징으로 하는 시분할 다중화 패킷 신호 프로그램 성분 처리 장치.
  8. 제6항에 있어서,
    각각의 입력 포트가 상기 제1 멀티플렉서의 출력 포트와 상기 시분할 다중화 패킷 신호의 공급원에 결합된 제3 멀티플레서(104)를 더 포함하고,
    상기 제3 멀티플렉서는 상기 공급원으로부터의 페이로드를 상기 공통 버퍼 메모리를 경유하지 않고 상기 처리 장치 중의 하나로 통과시키도록 선택적으로 조건이 부과된 것을 특징으로 하는 시분할 다중화 패킷 신호 프로그램 성분 처리 장치.
  9. 제8항에 있어서,
    각각의 페이로드는 SCID 고유의 암호화 키로 암호화되고,
    페이로드는,
    사전 결정된 수신 패킷에 포함된 등록 데이타에 응답하여 SCID 고유의 암호 해독 키를 생성하도록 설계된 스마트 카드를 인터페이스하기 위한 스마트 카드 인터페이스와;
    상기 제1 멀티플렉서의 상기 입력 포트에 결합된 출력 포트를 가지며, 대응하는 SCID 고유의 암호 해독 키에 따라 각각의 페이로드를 암호 해독하는 신호 암호 해독기를 구비한 장치에 의해 상기 제1 멀티플렉서의 입력 포트에 결합되는 것을 특징으로 하는 시분할 다중화 다중화 패킷 신호 프로그램 성분 처리 장치.
  10. 제9항에 있어서,
    각각의 패킷의 SCID에 응답하여 대응하는 패킷 페이로드를 상기 공통 버퍼 메모리의 지정된 영역으로 전송하는 장치를 더 포함하는 것을 특징으로 하는 시분할 다중화 패킷 프로그램 성분 처리 장치.
  11. 각각의 패킷이 프로그램 성분 데이타의 페이로드와, 프로그램 성분 식별자인SCID를 내장한 헤더를 포함하고, 각 페이로드가 버퍼 메모리에 저장되며, 프로그램 성분의 시분할 다중화 패킷을 포함하는 신호를 처리하는 음성/영상 신호 트랜스포트 프로세서 장치에 있어서,
    상기 버퍼 메모리를 어드레싱히기 위한 회로는,
    시분할 다중화 패킷의 공급원(12)과;
    각각의 헤더에 응답하여 사전 결정된 식별자를 갖는 패킷을 검출하는 검출기(15)와;
    복수의 N 비트(N은 정수) 개시 및 종료 포인터를 생성하고, 복수개의 프로그램 성분의 패킷 페이로드를 저장하기 위하여 상기 버퍼 메모리의 복수개의 블록을 할당하도록 프로그램된 제어 장치(19)와;
    상기 복수의 N 비트 개시 포인터와 N 비트 종료 포인터를 각각 저장하기 위한 유사한 제1 및 제2의 복수의 레지스터(87, 88)와;
    N 비트 헤드(기록) 포인터를 저장하기 위한 제3의 복수의 레지스터(83)를 포함하고,
    상기 제1, 제2 및 제3의 복수의 레지스터중 하나의 레지스터 세트가 각각의 프로그램 성분에 할당되는데, 각각의 레지스터 세트는, 상기 개시 포인터의 M 비트(M은 N 보다 작은 정수)를 상기 N 비트 헤드 포인터와 결합하여 N+M 비트 기록 어드레스를 형성하는 회로(93, 96)와;
    각각의 상기 기록 어드레스를 상기 버퍼 메모리의 어드레스 입력 포트에 입력하는 수단(82, 86, 89, 90)을 포함하는 것을 특징으로 하는 음성/영상 신호 트랜스포트 프로세서 장치.
  12. 제11항에 있어서,
    각각의 헤드 포인터가 대응하는 종료 포인터와 일치하는 경우를 검출하는 비교기와;
    상기 헤드 포인터와 종료 포인터가 일치하는 것이 검출되면, 상기 N 비트 개시 포인터가 상기 M+N 비트 기록 어드레스의 최상위 비트 위치에 위치되고 제로가 M의 최하위 비트 위치에 위치되는 다음의 기록 어드레스를 생성하는 수단을 더 포함하는 것을 특징으로 하는 음성/영상 신호 트랜스포트 프로세서 장치.
  13. 제11항에 있어서,
    상기 패킷은 기본과 보조의 2 종류로 구성되고, 보조 패킷 페이로드용의 버퍼 메모리 어드레스를 생성하는 회로는,
    각각의 프로그램 성분용으로 2개씩 구성되며, 보조 페이로드용으로 N+M 비트(판독/기록) 보조 어드레스 포인터를 저장하는 제4의 복수의 레지스터와;
    보조 페이로드의 발생을 판정하는 수단과;
    상기 보조 어드레서 포인터로부터 생성된 메모리 어드레스를 다중화하여 상기 버퍼 메모리의 어드레스 포트로 전송하는 수단을 포함하는 것을 특징으로 하는 음성/영상 신호 트랜스포트 프로세서 장치.
  14. 제13항에 있어서,
    각각의 보조 패킷 헤더는 스크렘블키 CS를 포함하고 있으며,
    보조 패킷 페이로드용 버퍼 메모리 어드레스를 생성하는 회로는,
    각각의 보조 패킷 내에서 상기 스크렘블키 CS를 검출하는 검출기와;
    각각의 보조 패킷이 관련되는 프로그램 성분의 타입과 관련된 W 비트 코드를 생성 하는 트랜슬레이터와;
    상기 W 비트 코드 및 상기 스크렘블키 CS와 결합되는 Z 비트 포인터를 생성하도록 배열된 제어 장치와;
    각각의 메모리 어드레스 사이클 마다 L 비트 값을 1 단위씩 증가시키는 누산회로와;
    상기 결합된 Z 비트 포인터와, W 비트 코드 및 상기 스크렘블키 CS에 L 비트값을 부가하여 N+M 비트 보조 패킷 메모리 어드레스를 형성하고, 각각의 N+M 어드레스를 상기 제4의 복수의 레지스터에 로드하기 위한 수단을 포함하는 것을 특징으로 하는 음성/영상 신호 트랜스포트 프로세서 장치.
KR1019950009190A 1994-04-22 1995-04-19 메모리어드레스회로를 구비한 역 트렌스포트 프로세서 KR100343819B1 (ko)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US8/232,787 1994-04-22
US08/232787 1994-04-22
US08/232789 1994-04-22
US08/232,789 US5521979A (en) 1994-04-22 1994-04-22 Packet video signal inverse transport system
US08/232,787 US5475754A (en) 1994-04-22 1994-04-22 Packet video signal inverse transport processor memory address circuitry
US8/232,789 1994-04-22

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020000020343A Division KR100343821B1 (ko) 1994-04-22 2000-04-18 음성/영상 신호 트랜스포트 프로세서 장치

Publications (2)

Publication Number Publication Date
KR950035437A KR950035437A (ko) 1995-12-30
KR100343819B1 true KR100343819B1 (ko) 2002-11-30

Family

ID=26926333

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1019950009190A KR100343819B1 (ko) 1994-04-22 1995-04-19 메모리어드레스회로를 구비한 역 트렌스포트 프로세서
KR1020000020343A KR100343821B1 (ko) 1994-04-22 2000-04-18 음성/영상 신호 트랜스포트 프로세서 장치

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020000020343A KR100343821B1 (ko) 1994-04-22 2000-04-18 음성/영상 신호 트랜스포트 프로세서 장치

Country Status (13)

Country Link
EP (2) EP0971538B1 (ko)
JP (2) JP3495454B2 (ko)
KR (2) KR100343819B1 (ko)
CN (2) CN1100438C (ko)
BR (1) BR9501735A (ko)
CA (1) CA2146472C (ko)
DE (2) DE69529001T2 (ko)
ES (2) ES2146677T3 (ko)
HK (1) HK1018564A1 (ko)
MY (2) MY121258A (ko)
PT (2) PT679028E (ko)
RU (1) RU2145728C1 (ko)
TR (1) TR28547A (ko)

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR0166935B1 (ko) * 1994-11-23 1999-03-20 구자홍 엠펙2 트랜스포트 디코더 장치
KR100226528B1 (ko) * 1995-03-29 1999-10-15 가나이 쓰도무 다중화 압축화상/음성데이타의 복호장치
US5899578A (en) * 1995-12-25 1999-05-04 Sony Corporation Digital signal processor, processing method, digital signal recording/playback device and digital signal playback method
JP3269768B2 (ja) * 1996-01-16 2002-04-02 株式会社東芝 ディジタル信号受信装置
ES2333997T3 (es) * 1996-05-06 2010-03-03 Irdeto Eindhoven B.V. Acceso a informacion a traves de dispositivo de seguridad.
CA2204828C (en) * 1996-05-10 2004-11-23 Ray Nuber Error detection and recovery for high rate isochronous data in mpeg-2 data streams
FR2752350B1 (fr) * 1996-08-09 2001-06-08 Thomson Multimedia Sa Procede d'extraction de donnees dans un systeme de transmission cyclique et dispositif de mise en oeuvre
CA2216573C (en) * 1996-10-01 2006-03-14 Sony Corporation Digital tuner having ieee 1394 serial bus interface for providing a plurality of selected programs as a functional unit
US6226291B1 (en) * 1996-11-01 2001-05-01 Texas Instruments Incorporated Transport stream packet parser system
US6414726B1 (en) 1996-11-01 2002-07-02 Texas Instruments Incorporated Device for identifying packets of digital data and a receiver for digital television signals equipped with such a device
GB2329802B (en) * 1997-06-28 1999-08-18 United Microelectronics Corp Adaptive-selection method for memory access priority control in MPEG processor
EP0893913A1 (en) * 1997-07-24 1999-01-27 CANAL+ Société Anonyme Digital transport stream processing
EP1000510B1 (en) * 1997-08-01 2001-11-28 Scientific-Atlanta, Inc. Mechanism and apparatus for encapsulation of entitlement authorization in conditional access system
JP3578913B2 (ja) * 1997-09-29 2004-10-20 松下電器産業株式会社 データ一致検出装置,及びデータ選別装置
JP3389843B2 (ja) * 1997-10-17 2003-03-24 日本電気株式会社 情報処理装置におけるデジタル放送受信システム
NL1007453C2 (nl) * 1997-11-05 1999-05-07 United Microelectronics Corp Zich aanpassende kieswerkwijze voor het regelen van de geheugentoegangsprioriteit in een MPEG-processor.
US6621817B1 (en) 1999-07-06 2003-09-16 Texas Instruments Incorporated Transport packet parser
EP1096714A3 (en) * 1999-10-29 2003-04-09 Matsushita Electric Industrial Co., Ltd. Contents data conversion apparatus and method, and record medium storing contents data conversion program
WO2001037555A1 (fr) 1999-11-17 2001-05-25 Sony Corporation Procede et appareil pour le traitement de signaux numeriques et procede de creation d'une fonction d'extension
DE10035707A1 (de) * 2000-07-21 2002-01-31 Scm Microsystems Gmbh Digitales Aufnahme-und Weidergabeverfahren
DE60125297T2 (de) * 2000-09-27 2007-05-16 Texas Instruments Inc., Dallas Gerät und Verfahren für einen Sortierungmodus in einer Direktspeicherzugriffssteuerung von einer Einrichtung zur digitalen Signalverarbeitung
US6775254B1 (en) 2000-11-09 2004-08-10 Qualcomm Incorporated Method and apparatus for multiplexing high-speed packet data transmission with voice/data transmission
FR2819139B1 (fr) * 2001-01-03 2003-03-28 Canal Plus Technologies Procede et dispositif de gestion d'informations dans un systeme de communication interactif
US6868125B2 (en) * 2001-11-29 2005-03-15 Thomson Licensing S.A. Transport stream to program stream conversion
JP2003333024A (ja) * 2002-05-09 2003-11-21 Nec Corp 暗号化/復号化システム及びその暗号解読防止/改竄防止方法
US7213103B2 (en) 2004-04-22 2007-05-01 Apple Inc. Accessing data storage systems without waiting for read errors
US7366865B2 (en) * 2004-09-08 2008-04-29 Intel Corporation Enqueueing entries in a packet queue referencing packets
JP4667108B2 (ja) 2005-04-11 2011-04-06 パナソニック株式会社 データ処理装置
US7523146B2 (en) 2005-06-21 2009-04-21 Apple Inc. Apparatus and method for peer-to-peer N-way synchronization in a decentralized environment
US8495015B2 (en) 2005-06-21 2013-07-23 Apple Inc. Peer-to-peer syncing in a decentralized environment
JPWO2007099659A1 (ja) 2006-03-01 2009-07-16 パナソニック株式会社 データ転送装置及びデータ転送方法
US7797670B2 (en) 2006-04-14 2010-09-14 Apple Inc. Mirrored file system
US7860826B2 (en) 2006-08-04 2010-12-28 Apple Inc. Method and system for using global equivalency sets to identify data during peer-to-peer synchronization
US7657769B2 (en) 2007-01-08 2010-02-02 Marcy M Scott N-way synchronization of data
US7924456B1 (en) * 2007-01-12 2011-04-12 Broadbus Technologies, Inc. Data distribution and buffering
US7760562B2 (en) * 2008-03-13 2010-07-20 Qualcomm Incorporated Address multiplexing in pseudo-dual port memory
CN114595105B (zh) * 2022-05-09 2022-08-05 深圳佰维存储科技股份有限公司 Psn唯一性设计方法、装置、可读存储介质及电子设备

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4965825A (en) 1981-11-03 1990-10-23 The Personalized Mass Media Corporation Signal processing apparatus and methods
US4866770A (en) * 1986-07-08 1989-09-12 Scientific Atlanta, Inc. Method and apparatus for communication of video, audio, teletext, and data to groups of decoders in a communication system
US5168356A (en) 1991-02-27 1992-12-01 General Electric Company Apparatus for segmenting encoded video signal for transmission
US5289276A (en) 1992-06-19 1994-02-22 General Electric Company Method and apparatus for conveying compressed video data over a noisy communication channel
RU2153234C2 (ru) * 1992-12-09 2000-07-20 Дискавери Коммьюникейшнз, Инк. Устройство для использования в головной станции системы кабельного телевидения (варианты) и способ распределения программ абонентам в системе кабельного телевидения

Also Published As

Publication number Publication date
CA2146472C (en) 2007-10-09
TR28547A (tr) 1996-09-30
DE69529001T2 (de) 2003-10-09
JPH07297855A (ja) 1995-11-10
RU95106681A (ru) 1997-01-27
BR9501735A (pt) 1995-11-14
DE69529001D1 (de) 2003-01-09
HK1018564A1 (en) 1999-12-24
PT971538E (pt) 2003-03-31
DE69517240T2 (de) 2000-10-26
ES2146677T3 (es) 2000-08-16
KR950035437A (ko) 1995-12-30
JP3690737B2 (ja) 2005-08-31
EP0679028A3 (en) 1996-04-24
DE69517240D1 (de) 2000-07-06
JP2002135739A (ja) 2002-05-10
CA2146472A1 (en) 1995-10-23
CN1208307A (zh) 1999-02-17
EP0679028B1 (en) 2000-05-31
CN1100438C (zh) 2003-01-29
KR100343821B1 (ko) 2002-07-20
CN1111867A (zh) 1995-11-15
EP0679028A2 (en) 1995-10-25
CN1113534C (zh) 2003-07-02
PT679028E (pt) 2000-11-30
EP0971538B1 (en) 2002-11-27
ES2183468T3 (es) 2003-03-16
EP0971538A3 (en) 2000-07-19
EP0971538A2 (en) 2000-01-12
RU2145728C1 (ru) 2000-02-20
JP3495454B2 (ja) 2004-02-09
MY121258A (en) 2006-01-28
MY115173A (en) 2003-04-30

Similar Documents

Publication Publication Date Title
KR100343819B1 (ko) 메모리어드레스회로를 구비한 역 트렌스포트 프로세서
US5521979A (en) Packet video signal inverse transport system
JP5441134B2 (ja) パケット化データ・ストリームの処理方法
US20080134234A1 (en) Conditional access filter as for a packet video signal inverse transport system

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130603

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20140603

Year of fee payment: 13

EXPY Expiration of term