KR100384212B1 - Conditional Access information arrangement - Google Patents

Conditional Access information arrangement Download PDF

Info

Publication number
KR100384212B1
KR100384212B1 KR1019960706068A KR19960706068A KR100384212B1 KR 100384212 B1 KR100384212 B1 KR 100384212B1 KR 1019960706068 A KR1019960706068 A KR 1019960706068A KR 19960706068 A KR19960706068 A KR 19960706068A KR 100384212 B1 KR100384212 B1 KR 100384212B1
Authority
KR
South Korea
Prior art keywords
conditional access
byte
data
code
entitlement
Prior art date
Application number
KR1019960706068A
Other languages
Korean (ko)
Other versions
KR970703083A (en
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 KR10-2002-7016014A priority Critical patent/KR100400800B1/en
Publication of KR970703083A publication Critical patent/KR970703083A/en
Application granted granted Critical
Publication of KR100384212B1 publication Critical patent/KR100384212B1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • 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
    • H04N21/42607Internal components of the client ; Characteristics thereof for processing the incoming bitstream
    • H04N21/42623Internal components of the client ; Characteristics thereof for processing the incoming bitstream involving specific decryption arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/26606Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel for generating or managing entitlement messages, e.g. Entitlement Control Message [ECM] or Entitlement Management Message [EMM]
    • 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/418External card to be used in combination with the client device, e.g. for conditional access
    • H04N21/4181External card to be used in combination with the client device, e.g. for conditional access for conditional access
    • 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
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/4405Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving video 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/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4623Processing of entitlement messages, e.g. ECM [Entitlement Control Message] or EMM [Entitlement Management Message]
    • 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
    • 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/165Centralised control of user terminal ; Registering at central
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/167Systems rendering the television signal unintelligible and subsequently intelligible
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/167Systems rendering the television signal unintelligible and subsequently intelligible
    • H04N7/1675Providing digital key or authorisation information for generation or regeneration of the scrambling sequence

Abstract

전송된 인타이틀먼트 제어 정보를 처리하기 위한, 수신기내의 장치는 조건부 액세스 페이로드 헤더를 포함하는 페이로드들 및 인타이틀먼트 데이타의 나머지 페이로드를 갖는 신호 패킷들을 선택하기 위한 패킷 트랜스포트 처리기(13-15, 19)를 포함한다. 각각의 페이로드 헤더들은 각각의 수신기가 인타이틀먼트 데이타를 처리하게 하거나 또는 처리하지 못하게 하도록 하는 방식으로 코딩된 바이트들의 그룹들을 포함한다. 가입자 특정 조건부 액세스 코드워드로 사전 프로그램된 조건부 액세스 필터(30)는 가입자 특정 조건부 액세스 코드워드와의 정합을 위하여 조건부 액세스 헤더의 바이트 그룹들을 검사한다. 정합이 발생한 경우에만, 처리기는 인타이틀먼트 데이타를 프로세스(17, 18, 21-24)하도록 허용된다. 그후에, 인타이틀먼트 데이타는 전송된 신호의 부분들을 디스크램블(16)하기 위한 암호 해독 키들을 생성(31)하는데 이용된다.For processing the transmitted entitlement control information, an apparatus in the receiver may include a packet transport processor 13 for selecting signal packets having payloads including a conditional access payload header and the remaining payload of the entitlement data. -15, 19). Each payload header includes groups of bytes coded in a manner that allows each receiver to process or disallow entitlement data. Conditional access filter 30 preprogrammed with a subscriber specific conditional access codeword checks the byte groups in the conditional access header for matching with the subscriber specific conditional access codeword. Only when a match occurs, the processor is allowed to process the entitlement data (17, 18, 21-24). The entitlement data is then used to generate 31 decryption keys for descramble 16 portions of the transmitted signal.

Description

조건부 액세스 정보 장치{Conditional Access information arrangement}Conditional Access Information Arrangement

예를 들어, 미국 특허 제 5,168,356 호 및 미국 특허 제 5,289,276 호에는 압축된 비디오 신호를, 에러 방지/보정의 수단을 보유한 패킷으로 전송하는 것이 바람직하다고 공지되어 있다. 상술한 특허들에서의 시스템들은, 각각의 전송 채널들로부터 다수의 프로그램 성분들을 갖지만, 단일 텔레비젼 프로그램을 전송 및 처리한다. 이들 시스템들은 역 트랜스포트 처리기들(inverse transport processors)을 이용하여 각각의 프로그램들의 비디오 신호 성분을 추출하여 재생을 위해 비디오 성분을 조정하도록 더 처리한다.For example, US Pat. No. 5,168,356 and US Pat. No. 5,289,276 are known to transmit compressed video signals in packets with means of error prevention / correction. The systems in the aforementioned patents have multiple program components from respective transport channels, but transmit and process a single television program. These systems use inverse transport processors to further extract the video signal component of each program and adjust the video component for playback.

예를 들어, 영국, 크릭클레이드, 피트스필드 17에서 스위프트 텔레비젼 출판된 "THE SATELLITE BOOK, A COMPLETE GUIDE 70 SATELLITE TV THEORY AND PRACTICE"에는, 전송된 텔레비젼 신호 수신이, 신호를 스크램블링 함으로써, 특정 가입자들에 제한될 수 있는 점이 공지되어 있다. 이러한 제한들은 서로 다른 인타이틀먼트데이타(entitlement data)를 주기적으로 전송함으로써 방송사의 의지대로 변경될 수 있다. 인타이틀먼트 데이타는 각각의 수신기들에 위치한 스마트 카드들에 의해 처리되어 암호 해독 또는 디스크램블링 키들(decryption or descrambling keys)을 생성하는데, 이 키들은 연관된 프로그램 자료를 재생하도록 인타이틀된 단지 그들의 수신기들내의 암호 해독 또는 디스크램블링 장치들에 의해 사용된다. 상술한 형태의 패킷 비디오 시스템에 있어서, 인타이틀먼트 데이타는 스마트 카드 회로에 의한 용이한 액세스를 위해 그와 같은 데이타를 포함하는 것으로 인식될 수 있는 특정 패킷들에 포함될 수 있다.For example, in "THE SATELLITE BOOK, A COMPLETE GUIDE 70 SATELLITE TV THEORY AND PRACTICE" published by Swift TV in Crickclade, Pittsfield 17, UK, the transmitted television signal reception scrambles the signal, It is known that these may be limited. These restrictions can be changed at will of the broadcaster by periodically transmitting different entitlement data. Entitlement data is processed by smart cards located at the respective receivers to generate decryption or descrambling keys, which are just their receivers entitled to play associated program material. Used by decryption or descrambling devices. In a packet video system of the type described above, entitlement data may be included in certain packets that can be recognized as containing such data for easy access by a smart card circuit.

북미에서 사용되는 직접 방송 위성 시스템과 같은 광역 방송 시스템은 매우 많은 수의 가입자들을 갖고 있다. 이들 가입자의 수가 너무 많아 매우 짧은 시간(very short notice)에 특정 수신기들의 인타이틀먼트 데이타를 변경할 수 없다. 예를 들어, 스포츠 이벤트용 티켓들이 팔리지 않은 경우에, 방송국은 스포츠 스타디움에 국한된 지역에 대해 방송을 중지할 필요가 있다고 간주하자. 이러한 정보는 이벤트 직전까지 이용될 수 없는 경우가 있다. 물론, 방송국은 해당 지역에 방송을 중지한다는 결정을 하기 전에 가능한 최종 몇 분까지 기다리기를 원할 것이다. 본 발명은, 프로그램 자료를 수신하기 위한 인타이틀먼트들을 짧은 시간에 부정하기 위하여 인타이틀먼트 데이타를 계층화하는 방법 및 장치를 제공한다.Wide area broadcast systems, such as direct broadcast satellite systems used in North America, have a very large number of subscribers. The number of these subscribers is too large to change the entitlement data of certain receivers in a very short notice. For example, if tickets for sporting events are not sold, assume that the station needs to stop broadcasting for the area confined to the sports stadium. Such information may not be available until just before the event. Of course, the station will want to wait for the last few minutes possible before making a decision to stop broadcasting in the area. The present invention provides a method and apparatus for stratifying entitlement data to negate entitlements for receiving program material in a short time.

본 발명은 패킷 비디오 신호로부터 프로그램 성분 데이타의 패킷들을 처리하기 위한 장치에 관한 것으로, 특히 가입자가 인타이틀먼트 정보(entitlement information)에 대한 조건부 액세스을 갖는 패킷 페이로드들(packet payloads)을 검출하기 위한 회로에 관한 것이다.FIELD OF THE INVENTION The present invention relates to an apparatus for processing packets of program component data from a packet video signal, in particular circuitry for detecting packet payloads in which a subscriber has conditional access to entitlement information. It is about.

도1은 시분할 다중화된 패킷 텔레비젼 신호를 도시한 도면.1 shows a time division multiplexed packet television signal;

도2는 각각의 신호 패킷들을 도시한 도면.2 shows respective signal packets.

도3은 본 발명을 구체화한 다중화된 성분 신호들의 패킷들을 선택 및 처리하기 위한 수신기를 도시한 블럭도.Figure 3 is a block diagram illustrating a receiver for selecting and processing packets of multiplexed component signals embodying the present invention.

도4는 조건부 액세스 필터/시작 코드 검출기를 도시한 블럭도.4 is a block diagram illustrating a conditional access filter / start code detector.

도5는 조건부 액세스 필터 동작을 도시한 흐름도.5 is a flow diagram illustrating conditional access filter operation.

도6은 대안의 조건부 액세스 필터의 블럭도.6 is a block diagram of an alternative conditional access filter.

도7은 도3의 소자(17)에 대해 구현될 수 있는 전형적인 메모리 관리 회로를 도시한 블럭도.FIG. 7 is a block diagram illustrating an exemplary memory management circuit that may be implemented for the element 17 of FIG.

도8은 서비스 채널 데이타를 위한 메모리 어드레스 정보를 도시한 도면.Fig. 8 shows memory address information for service channel data.

도9는 메모리 어드레스 제어의 동작을 도시한 흐름도.Fig. 9 is a flowchart showing the operation of memory address control.

본 발명은 계층화된 인타이틀먼트 데이타를 전송/수신하기 위한 시스템 및 방법에 관한 것이다. 한 실시예에 있어서, 수신기는, 조건부 액세스 페이로드 헤더를 포함하는 페이로드들 및, 인타이틀먼트 데이타의 나머지 페이로드를 갖는 패킷들을 선택하기 위한 패킷 트랜스포트 처리기를 포함한다. 각각의 페이로드 헤더들은 각각의 수신기가 인타이틀먼트 데이타를 처리하도록 하거나 처리하지 않도록하는 방식으로 코딩된 바이트들의 그룹들을 포함한다. 가입자 특정 조건부 액세스 코드워드로 미리 프로그램된 조건부 액세스 필터는, 가입자 특정 조건부 액세스 코드 워드와 정합을 위한 조건부 액세스 헤더의 각각의 바이트 그룹화들(groupings)을 검사한다. 정합이 발생한 경우에만, 처리기는 인타이틀먼트 데이타를 처리하도록 허용된다.The present invention relates to a system and method for transmitting / receiving layered entitlement data. In one embodiment, the receiver comprises a packet transport processor for selecting packets having payloads comprising a conditional access payload header and a remaining payload of entitlement data. Each payload header includes groups of bytes coded in such a way as to allow or not process each receiver's entitlement data. The conditional access filter, preprogrammed with the subscriber specific conditional access codeword, checks each byte groupings of the conditional access header for matching with the subscriber specific conditional access codeword. Only when a match occurs, the processor is allowed to process the entitlement data.

도 1은 신호 패킷들을 나타내는 일련의 박스들로 이루어진 패킷 신호 스트림을 도시하는데, 상기 신호 패킷들은 다수의 서로 다른 텔레비젼 프로그램 또는 상호 대화식 텔레비젼 프로그램들(interactive television programs)의 성분들을 포함한다. 이들 프로그램 성분들은 압축된 데이타로 형성되어 있다고 가정하고, 각각의 영상들에 대한 비디오 데이타양은 가변될 수 있다. 이 패킷들은 고정된 길이로 이루어져 있다. 동일한 첨자들을 갖은 문자들을 지닌 패킷들은 단일 프로그램 성분들을 나타낸다. 예를 들어, Vi, Ai, Di는 비디오, 오디오 및 데이타 패킷들을 나타내고, V1, A1, D1으로 지정된 패킷들은 프로그램 1에 대한 비디오, 오디오 및 데이타 성분들을 나타내며, V3, A31, A32, D3는 프로그램 3의 비디오, 오디오1, 오디오2 및 데이타 성분들을 나타낸다. 데이타 패킷들 Di은 예를 들어, 수신기내의 어떤 액션을 초기화하기 위한 제어 데이타를 포함할 수 있고, 또한, 예를 들어 수신기내에 위치하거나 이 수신기와 연관된 마이크로프로세서에 의해 실행될 어플리케이션(application)을 형성하는 실행 가능한 코드를 포함할 수 있다.1 shows a packet signal stream consisting of a series of boxes representing signal packets, the signal packets comprising components of a number of different television programs or interactive television programs. It is assumed that these program components are formed of compressed data, and the amount of video data for each image can be varied. These packets are of fixed length. Packets with characters with the same subscripts represent single program components. For example, V i , A i , D i represent video, audio and data packets, and packets designated V 1 , A 1 , D 1 represent video, audio and data components for program 1, and V 3 , A 31 , A 32 , and D 3 represent the video, audio1, audio2 and data components of program 3. The data packets D i may comprise control data for initiating some action in the receiver, for example, and also form an application to be executed by a microprocessor located in or associated with the receiver, for example. May contain executable code.

패킷들의 열의 상부 라인에는, 특정 프로그램의 각각의 성분들이 함께 그룹화되어 도시되어 있다. 그러나, 패킷들의 전체 열로 표시된 바와같이 동일한 프로그램의 패킷들이 반드시 그룹화될 필요는 없다. 또한, 각각의 성분들의 생성에 대한 시퀀스가 어떤 특정한 순서로 될 필요는 없다.In the upper line of the row of packets, the respective components of a particular program are shown grouped together. However, packets of the same program do not necessarily have to be grouped as indicated by the entire row of packets. In addition, the sequence for the generation of the individual components need not be in any particular order.

각각의 패킷들은 도 2에 도시된 바와같이 프리픽스(prefix) 및페이로드(payload)를 포함하도록 배열된다. 본 예의 프리픽스는 5개의 필드를 포함하는 두개의 8-비트 바이트들을 포함하는데, 상기 5개의 필드 중 4개의 필드(P, BB, CF, CS)는 1-비트 필드들이고, 나머지 한 필드(SCID)는 12-비트 필드이다. SCID 필드는 신호 성분 식별자이다. 필드(CF)는 패킷의 페이로드가 스크램블되는지를 나타내기 위한 플래그를 포함하고, 필드(CS)는 두 개의 대안 언스크램블링 키들(two alternative unscrambling keys) 중 어느 키가 스크램블된 패킷들을 언스크램블하도록 이용되어야 하는지를 나타내는 플래그를 포함한다. 모든 패킷의 프리픽스는 패킷 정렬되어 있고, 그로 인해, 각각의 필드들의 위치는 용이하게 식별될 수 있다.Each packet is arranged to include a prefix and a payload as shown in FIG. The prefix of this example includes two 8-bit bytes containing five fields, where four of the five fields (P, BB, CF, CS) are 1-bit fields and the other one (SCID) Is a 12-bit field. The SCID field is a signal component identifier. The field CF includes a flag to indicate whether the payload of the packet is scrambled, and the field CS is used to unscramble packets with which of two alternative unscrambling keys is scrambled. Contains a flag indicating whether it should be. The prefix of all packets is packet aligned, whereby the location of each field can be easily identified.

모든 페이로드내에는 프로그램 성분 특성인 연속 카운트 CC, 모듈로 16 및 TOGGLE 플래그 비트를 포함하는 헤더가 있다. 연속 카운트는 동일한 프로그램 성분의 순차적인 패킷들의 연속적인 넘버링(numbering)이다. TOGGLE 플래그 비트는 MPEG 압축된 비디오 성분에서 화상층 시작 코드(picture layer start code)가 발생하면 논리 레벨을 변경하거나 토글하는 1비트 신호이다.Within every payload is a header that contains the program component properties, continuous count CC, modulo 16, and TOGGLE flag bits. Consecutive count is the successive numbering of sequential packets of the same program component. The TOGGLE flag bit is a 1-bit signal that changes or toggles the logic level when a picture layer start code occurs in the MPEG compressed video component.

도 3은 인버스 트랜스포트 처리기의 소자들을 포함하는 디지탈 텔레비젼 신호 수신기의 일부를 블럭 형태로 도시한 것이다. 안테나(10)에 의해 검출된 신호는 튜너 검출기(11)에 인가되는데, 이 검출기는 수신된 신호들의 특정 주파수 대역을 추출하고, 베이스밴드 압축된 신호를 2진 포맷으로 제공한다. 주파수 대역은 종래의 방법들에 의해 마이크로프로세서(19)를 통해 사용자에 의해 선택된다. 통상적으로, 방송 디지탈 신호들은, 예를 들어 리드 솔로몬 순방향 에러 보정(FEC) 코딩을이용하여 에러 엔코딩되었다. 그로 인해, 대역 신호들은 FEC 디코더(12)에 인가될 것이다. FEC 디코더(12)는 수신된 비디오를 동기화하고, 도 1에 도시된 형태의 신호 패킷들의 에러 보정된 스트림을 제공한다. FEC(12)는, 예를 들어 메모리 제어기(17)에 의해, 규칙적인 간격으로 또는 필요에 따라 패킷들을 제공할 수 있다. 어떤 경우든 간에, 패킷 프레밍(framing) 또는 동기화 신호는 FEC 회로에 의해 제공되고, 이 신호는 각각의 패킷 정보가 FEC(12)로부터 전송되는 회수를 나타낸다.3 shows in block form a portion of a digital television signal receiver including elements of an inverse transport processor. The signal detected by the antenna 10 is applied to the tuner detector 11, which extracts a particular frequency band of the received signals and provides a baseband compressed signal in binary format. The frequency band is selected by the user through the microprocessor 19 by conventional methods. Typically, broadcast digital signals have been error encoded using Reed Solomon Forward Error Correction (FEC) coding, for example. As such, band signals will be applied to the FEC decoder 12. The FEC decoder 12 synchronizes the received video and provides an error corrected stream of signal packets of the type shown in FIG. FEC 12 may provide packets at regular intervals or as needed, for example by memory controller 17. In any case, a packet framing or synchronization signal is provided by the FEC circuit, which indicates the number of times each packet information is transmitted from the FEC 12.

검출된 주파수 대역은 다수의 시분할 다중화된 프로그램들을 패킷 형태로 포함할 수 있다. 유용성을 위하여, 단일 프로그램으로부터의 패킷들만이 다른 회로 소자들로 통과되어야만 된다. 본 예에 있어서, 사용자는 선택할 패킷들을 모른다고 가정한다. 이러한 정보는 프로그램 안내(program guide)에 포함되는데, 이 프로그램 안내 자체는 SCID들을 통해 프로그램 신호 성분들을 상관시키는 데이타를 포함하는 프로그램이고, 예를 들어, 가입자 인타이틀먼트들에 관계하는 정보를 포함할 수 있다. 프로그램 안내는 각각의 프로그램에 대한 SCID들의 리스트(listing)로, 이 SCID들은 오디오, 비디오, 데이타 등의 각각의 프로그램들의 성분들에 대한 것이다. 프로그램 안내(도 1의 패킷들 D4)에는 고정된 SCID가 할당된다. 수신기에 전원이 인가될 때, 마이크로프로세서(19)는 프로그램 안내와 연관된 SCID를, 한 뱅크의 유사한 프로그램 가능한 SCID 레지스터들(13) 중 하나의 레지스터에 로딩하도록 프로그램된다. FEC(12)로부터의 신호의 각각 검출된 패킷들의 프리픽스부의 SCID 필드들은 다른 SCID 레지스터(14)에 연속적으로 로딩된다. 상기 프로그램 가능한레지스터들 및 상기 수신된 SCID 레지스터는 비교기 회로(15)의 각각의 입력 포트들에 결합되고, 수신된 SCID는 프로그램 안내 SCID와 비교된다. 패킷용 SCID가 프로그램 안내 SCID와 정합하는 경우에, 비교기(15)는 메모리 제어기(17)를 조절하여, 마이크로프로세서에 의해 이용을 위한 메모리(18)의 미리 결정된 위치에 상기 패킷을 루팅한다. 수신된 SCID가 프로그램 안내 SCID와 정합하지 않는 경우, 대응하는 패킷이 단지 덤핑(dumping)된다.The detected frequency band may include a plurality of time division multiplexed programs in a packet form. For usability, only packets from a single program must be passed to other circuit elements. In this example, it is assumed that the user does not know the packets to select. This information is included in a program guide, which is itself a program that contains data that correlates program signal components via SCIDs, and may include, for example, information relating to subscriber entitlements. Can be. The program guide is a listing of SCIDs for each program, which are for the components of each program, such as audio, video, data, and so on. The program guide (packets D4 of FIG. 1) is assigned a fixed SCID. When the receiver is powered up, the microprocessor 19 is programmed to load the SCID associated with the program guide into one of the banks of similar programmable SCID registers 13. SCID fields of the prefix portion of each detected packets of the signal from FEC 12 are successively loaded into the other SCID register 14. The programmable registers and the received SCID register are coupled to respective input ports of comparator circuit 15 and the received SCID is compared with the program guide SCID. If the SCID for the packet matches the program guide SCID, the comparator 15 adjusts the memory controller 17 to route the packet to a predetermined location in the memory 18 for use by the microprocessor. If the received SCID does not match the program guide SCID, the corresponding packet is only dumped.

마이크로프로세서는, 컴퓨터 키보드로서 도시되었지만 종래의 원격 제어기 또는 수신기 프론트 패널 스위치들이 될 수 있는 인터페이스(20)를 통해, 사용자로부터의 프로그래밍 명령을 대기한다. 사용자는 채널 4에 제공된 프로그램(아날로그 TV 시스템들의 자국어로)을 시청하기 위하여 요청할 수 있다. 마이크로프로세서(19)는 채널 4 프로그램 성분들의 각각의 SCID들에 대해 메모리(18)에 로딩되었던 프로그램 안내 리스트를 주사하고, 레지스터들(13)의 뱅크의 프로그램 가능한 레지스터들 중 대응하는 성분 신호 처리 경로들과 연관되는 다른 레지스터들 각각에 이들 SCID를 로딩하도록 프로그램된다.The microprocessor waits for programming instructions from the user through the interface 20, which is shown as a computer keyboard but can be a conventional remote controller or receiver front panel switches. The user may request to watch the program provided on channel 4 (in the native language of analog TV systems). The microprocessor 19 scans the program guide list that has been loaded into the memory 18 for each SCID of the channel 4 program components, and the corresponding component signal processing path of the programmable registers of the bank of registers 13. Are programmed to load these SCIDs into each of the other registers associated with them.

결과적으로, 원하는 프로그램에 대한 오디오, 비디오 또는 데이타 프로그램 성분들의 수신된 패킷들은 오디오(23), 비디오(22) 또는 보조 데이터(21, 24), 신호 처리기들 각각에 루팅되어야만 된다. 데이타는 비교적 일정한 속도로 수신되지만, 신호 처리기들은 통상(예를 들어, 압축 해제의 형태에 따라) 버스트들(bursts)로 입력 데이타를 요구한다. 도 3의 전형적인 시스템은 우선 각각의 패킷들을 공통 메모리(18)의 미리 결정된 메모리 위치들에 루팅한다. 그후에, 각각의 처리기들(21내지 24)은 메모리(18)로부터 성분 패킷들을 요구한다. 공통 메모리를 통해 성분들을 루팅하는 것은, 원하는 신호 데이타 속도 버퍼링 또는 드로틀링(throttling)의 수단을 제공한다.As a result, received packets of audio, video or data program components for the desired program must be routed to audio 23, video 22 or auxiliary data 21 and 24, signal processors respectively. Data is received at a relatively constant rate, but signal processors typically require input data in bursts (eg, depending on the type of decompression). The exemplary system of FIG. 3 first routes each packet to predetermined memory locations in common memory 18. Thereafter, each of the processors 21 to 24 requests component packets from the memory 18. Routing components through common memory provides a means of buffering or throttling the desired signal data rate.

오디오, 비디오 및 데이타 패킷들은, 신호 처리기들에 의해 성분 데이타에 대한 용이한 버퍼링된 액세스 할 수 있도록, 각각의 미리 결정된 메모리 위치들로 로딩된다. 각각의 성분 패킷들의 페이로드들이 적절한 메모리 영역들에 로딩되기 위해서, 각각의 SCID 비교기들은 그들 메모리 영역들과 연관된다. 이러한 연관은 메모리 제어기(17)에서 배선에 의해 연결될 수 있거나, 그 연관은 프로그램 가능하게 될 수 있다. 전자의 경우에, 프로그램 가능한 레지스터들(13) 중 특정한 레지스터들에는 항상 오디오, 비디오 및 데이타 SCID들이 각각 할당될 것이다. 후자의 경우에, 오디오, 비디오 및 데이타 SCID들은 프로그램 가능한 레지스터들(13) 중 어느 하나에 로딩될 수 있고, 각각의 SCID들이 프로그램 가능한 레지스터들에 로딩될 때 적절한 연관이 메모리 제어기(17)에 프로그램될 것이다.Audio, video and data packets are loaded into respective predetermined memory locations for easy buffered access to component data by signal processors. In order for the payloads of each component packet to be loaded into the appropriate memory regions, each SCID comparators are associated with those memory regions. This association may be connected by wiring at the memory controller 17 or the association may be programmable. In the former case, certain of the programmable registers 13 will always be assigned audio, video and data SCIDs, respectively. In the latter case, the audio, video and data SCIDs can be loaded into any of the programmable registers 13 and an appropriate association is programmed into the memory controller 17 when each SCID is loaded into the programmable registers. Will be.

정상 상태에 있어서, 프로그램의 SCID들이 프로그램 가능한 레지스터들(13)에 저장된 후에, 수신된 신호 패킷들의 SCID들은 프로그램 가능한 SCID 레지스터들 내의 모든 SCID들과 비교된다. 저장된 오디오, 비디오 또는 데이타 SCID 중 어느 하나와 정합을 이루면, 대응하는 패킷 페이로드는 오디오, 비디오 또는 데이타 메모리 영역 또는 블록에 각각 저장될 것이다.In the normal state, after the SCIDs of the program are stored in the programmable registers 13, the SCIDs of the received signal packets are compared with all SCIDs in the programmable SCID registers. Upon matching with any of the stored audio, video or data SCIDs, the corresponding packet payload will be stored in an audio, video or data memory area or block respectively.

각각의 신호 패킷들은 신호 암호 해독기(16)를 통해 FEC(12)로부터 메모리 제어기(17)로 결합된다. 신호 페이로드들만이 스크램블되고, 패킷 헤더들은 변경없이 암호 해독기를 통과된다. 패킷이 디스크램블될 것인지 여부는 패킷 프리픽스내의 CF 플래그에 의해 결정되고, 패킷이 어떻게 디스크램블(두 개의 대안 디스크램블링 키들 중 하나)되는지는 CS 플래그에 의해 결정된다. 각각의 패킷에 대해 어떠한 SCID 정합이 이루어지지 않은 경우에, 암호 해독기는 모든 데이타를 통과시키 않도록 간단히 디스에이블될 수 있다.Each signal packet is coupled from the FEC 12 to the memory controller 17 via a signal decryptor 16. Only signal payloads are scrambled, and packet headers are passed through the decryptor without modification. Whether the packet is to be descrambled is determined by the CF flag in the packet prefix, and how the packet is descrambled (one of two alternative descrambling keys) by the CS flag. If no SCID matching is done for each packet, the decryptor can simply be disabled to not pass all the data.

암호 해독기는 스마트 카드 장치(31)에 의해 제공된 암호 해독 키들로 프로그램된다. 스마트 카드는 프로그램 안내의 특정 패킷들내에 포함된 인타이틀먼트 정보에 응답하여 적절한 암호 해독 키들을 생성한다. 본 예의 시스템은 2 레벨의 암호화 또는 프로그램 액세스, 즉 인타이틀먼트 제어 메시지들(ECM들) 및 인타이틀먼트 관리 메시지들(EMM들)을 포함한다. 프로그램 인타이틀먼트 제어 및 관리 정보는 프로그램 안내를 포함하는 패킷 스트림 내에 포함된 특정한 SCID들로 식별될 수 있는 패킷들내에 규칙적으로 전송된다. 이들 패킷들내에 포함된 ECM 정보는 스마트 카드에 의해 사용되어, 암호 해독기에 의해 이용되는 암호 해독 키들을 생성한다. 이들 패킷들내에 포함된 EMM 정보는 가입자의 특정 스마트 카드에 의해 사용되어, 가입자가 인타이틀먼트되는 프로그램 자료를 결정한다. 이들 패킷들내의 EMM 인타이틀먼트 정보는 지리적으로 특정될 수 있거나, 또는 그룹에 또는 가입자에 특정될 수 있다. 예를 들면, 본 시스템은 스마트 카드로부터 프로그램 제공자, 예를 들면 위성 방송국으로 요금 정보를 통신시키기 위한 모뎀(도시하지 않음)을 포함할 것이다. 스마트 카드는, 예를 들어 수신기 위치의 지역 코드 및 전화 교환으로 프로그램될 수 있다. EMM은, 스마트 카드에 의해 처리될 때, 특정 영역 코드들로 특정 프로그램들의 수신을 인타이틀 또는 거부하는 데이타를 포함 할 수 있다.The decryptor is programmed with decryption keys provided by the smart card device 31. The smart card generates appropriate decryption keys in response to the entitlement information contained in the particular packets of the program announcement. The system of this example includes two levels of encryption or program access, namely entitlement control messages (ECMs) and entitlement management messages (EMMs). Program entitlement control and management information is transmitted regularly in packets that can be identified with specific SCIDs included in the packet stream containing the program announcement. The ECM information contained in these packets is used by the smart card to generate decryption keys for use by the decryptor. The EMM information contained in these packets is used by the subscriber's specific smart card to determine the program material to which the subscriber is entitled. The EMM entitlement information in these packets may be geographically specific, or may be group specific or subscriber specific. For example, the system may include a modem (not shown) for communicating toll information from a smart card to a program provider, such as a satellite station. Smart cards can be programmed, for example, with area codes and telephone exchanges of receiver locations. The EMM, when processed by a smart card, may contain data that entitles or denies reception of certain programs with specific area codes.

프로그램 제공자는, 예를 들어, 시청당 지불하는 프로그램들(pay-per view program)과 같은 매우 짧은 리드 시간(lead time)에 어떤 가입자들에게 인타이틀할 수 있는 능력을 원할 수 있다. 특정 가입자들의 식별은 특정 프로그램의 방송 직전까지 이용되지 못할 수 있다. 이와 같은 짧은 리드 시간으로, 가입자를 토대로 EMM들을 프로그램하는 것은 불가능할 수 있다. 코딩의 다른 층은, EMM 및 ECM 데이타의 수신을 허가/금지하는 조건부 액세스 코드를 각각의 패킷들내에 포함함으로써 인타이틀먼트 정보상에 순간적으로 제공될 수 있고, 이에 의해, 어떤 프로그램들에대한 실질적으로 순간적인 허가/금지를 가능케 한다.The program provider may want the ability to entitle to some subscribers in a very short lead time, such as, for example, a pay-per view program. Identification of certain subscribers may not be available until immediately before the broadcast of a particular program. With such a short lead time, it may not be possible to program EMMs on a subscriber basis. Another layer of coding can be instantaneously provided on entitlement information by including in each packet a conditional access code that allows / prohibit the receipt of EMM and ECM data, thereby substantially eliminating certain programs. Enables instant permission / prohibition

EMM 및 ECM 인타이틀먼트 데이타를 포함하는 패킷 페이로드들은 특정하게 코딩된 32 비트들의 4개의 그룹들에 배열된 128 비트들의 페이로드 헤더를 포함한다. 그룹들의 각각은 조건부 액세스 코드로 코딩되고, 각각의 조건부 액세스 코드는 다르게 코딩될 수 있다. 각각의 가입자에게는 특정 조건부 액세스 코드가 할당된다. 정합된 필터 또는 E-코드 디코더(30)는 128 비트 헤더내의 가입자 특정 비트 패턴을 검출하도록 배열된다. 정합이 검출되면, 디코더는 메모리 제어기(17) 및 스마트 카드(31)와 통신하여, 인타이틀먼트 페이로드의 나머지를 스마트 카드[메모리(18)를 통해]에 활용되도록 한다. 정합이 검출되지 않으면, 페이로드는 특정한 수신기에 의해 수용되지 않는다. 조건부 액세스 코드들은, 정합된 필터(30)가 프로그램 가능하게 된 경우에, 주기적으로 변경될 수 있다. 이들 코드들은 스마트 카드에 의해 주기적으로 제공될 수 있다. 시청자 인타이틀먼트들에 관계된 스마트 카드 동작에 관한 보다 상세한 설명은 "THE SATELLITE BOOK, A COMPLETE GUIDE TO SATELLITE THEORY AND PRACTICE"의 제 25 절을 참조한다.Packet payloads containing EMM and ECM entitlement data include a 128-bit payload header arranged in four groups of specifically coded 32 bits. Each of the groups is coded with a conditional access code, and each conditional access code can be coded differently. Each subscriber is assigned a specific conditional access code. The matched filter or E-code decoder 30 is arranged to detect the subscriber specific bit pattern in the 128 bit header. If a match is detected, the decoder communicates with the memory controller 17 and the smart card 31 so that the remainder of the entitlement payload is utilized for the smart card (via memory 18). If no match is detected, the payload is not accepted by the particular receiver. Conditional access codes can be changed periodically if the matched filter 30 becomes programmable. These codes may be provided periodically by the smart card. See section 25 of "THE SATELLITE BOOK, A COMPLETE GUIDE TO SATELLITE THEORY AND PRACTICE" for a more detailed description of smart card operation related to viewer entitlements.

정합된 필터 또는 E-코드 디코더는, 특정 MPEG 비디오 헤더들을 검출하는 제 2 기능을 수행하도록 배열된다. 이들 헤더는 32비트의 시작 코드들이다(이것이 인타이틀먼트 페이로드들의 헤더들이 32비트 그룹들로 코딩되는 이유이다). 비디오 데이타가 손실된 경우에, MPEG 비디오 디코더는 특정한 데이타 엔트리 지점들에서 비디오 데이타의 압축 해제를 다시 시작할 수 있을 뿐이다. 이들 엔트리 지점들은 MPEG 시작 코드들과 일치한다. 디코더는, 비디오 패킷이 손실된 이후에 비디오 데이타가 메모리로 흐르지 못하게 하고, 디코더(30)에 의해 다음 MPEG 시작 코드가 검출된 이후에만 메모리에 비디오 페이로드 기입을 다시 시작하기 위해, 메모리 제어기(17)와 통신하도록 배열될 수 있다.The matched filter or E-code decoder is arranged to perform a second function of detecting certain MPEG video headers. These headers are 32 bits of start codes (this is why the headers of entitlement payloads are coded into 32 bit groups). In the case where video data is lost, the MPEG video decoder can only resume decompression of the video data at certain data entry points. These entry points match the MPEG start codes. The decoder controls the memory controller 17 to prevent video data from flowing into the memory after the video packet is lost and to resume writing the video payload into the memory only after the next MPEG start code is detected by the decoder 30. May be arranged to communicate.

도 4는 조건부 액세스 정보 또는 MPEG 시작 코드들을 포함하는 패킷들을 검출하기 위한 전형적인 장치의 예를 도시한 것이다[도 3의 디코더(30)]. 디코더(30)가 인타이틀먼트 페이로드들 또는 MPEG 시작 코드들을 검출하도록 조절되었는지 여부는 현재 수신되는 SCID의 함수이다. 도 4에 있어서, 암호 해독기(16)로부터 제공된 데이타가 8비트 바이트들이고 패킷 정렬된 것이라 가정한다. 즉, 인타이틀먼트 페이로드의 제 1 바이트 또는 MPEG 시작 코드의 제 1 바이트는 특정 바이트 위치, 예를 들면 패킷 페이로드의 시작과 정확하게 정렬되어, 특정 헤더 또는 시작 코드 워드들을 검출하기 위하여, 비트/바이트 스트림내의 이들의 위치를 정확하게 알게된다. 암호 해독기(16)로부터의 데이타는 8 비트 레지스터(250)에 인가되는데, 이레지스터는 비교기(254)의 각각의 제 1 입력 접속부들에 결합된 8 비트 병렬 출력 포트를 가지며, 상기 비교기는, AND 게이트 및 래치에 결합된 각각의 출력 접속부들을 갖는 예를 들어, 8개의 2-입력 배타 NOR(XNOR)의 회로들의 뱅크로 구성될 수 있다. 래치는 각각의 바이트 간격에서 AND 게이트의 결과들을 래치하도록 배열된 데이타 래치일 수 있다.4 shows an example of an exemplary apparatus for detecting packets containing conditional access information or MPEG start codes (decoder 30 of FIG. 3). Whether decoder 30 has been adjusted to detect entitlement payloads or MPEG start codes is a function of the currently received SCID. In FIG. 4, it is assumed that the data provided from the decryptor 16 is 8-bit bytes and is packet aligned. That is, the first byte of the entitlement payload or the first byte of the MPEG start code is aligned precisely with a specific byte position, e.g., the beginning of the packet payload, to detect specific header or start code words. Know exactly where they are in the byte stream. Data from the decryptor 16 is applied to an 8 bit register 250, which has an 8 bit parallel output port coupled to respective first input connections of the comparator 254, the comparator being AND For example, it may consist of a bank of circuits of eight two-input exclusive NOR (XNOR) with respective output connections coupled to the gate and latch. The latch may be a data latch arranged to latch the results of the AND gate at each byte interval.

32비트 MPEG 시작 코드는 8비트 레지스터 뱅크(265)내에 4 바이트들로서 저장된다. 조건부 액세스 코드들은 16개의 8-비트 레지스터들(251)의 뱅크에 8-비트 바이트들로서 저장된다. 레지스터 뱅크들(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) 회로에 의해 참 신호(true signal)가 생성된다.The 32 bit MPEG start code is stored as 4 bytes in the 8 bit register bank 265. Conditional access codes are stored as 8-bit bytes in a bank of sixteen 8-bit registers 251. The loading of register banks 251 and 265 is controlled by microprocessor 19 and / or smart card. Start code registers 265 are coupled to a 4 to 1 multiplexer 266, and conditional access code registers are coupled to a 16 to 1 multiplexer 257. Output ports of the multiplexers 257 and 266 are coupled to a two-to-one multiplexer 249. Respective output connections of multiplexer 249 are coupled to respective corresponding second input terminals of comparator 254. [Note that the input and output connections of the multiplexers 249, 257 and 266 are 8 bit buses]. If the respective values appearing at the respective output connections of register 250 are correspondingly identical to the output values represented by the respective output connections of multiplexer 249, then the comparator 254 circuit is then updated for the corresponding data byte. This produces a true signal.

시작 코드 검출을 위하여, 멀티플렉서(266)는 카운터(258)에 의해 주사되어, 암호 해독기(16)로부터 제 1의 4개의 페이로드 데이타 바이트들의 생성과 동시에 4개의 상이한 레지스터들(265)을 비교기에 순차적으로 결합한다. 대안으로, 조건부 액세스 코드 검출을 위하여, 멀티플렉서(257)는 카운터(258)에 의해 주사되어 레지스터들(265) 중 상이한 레지스터들을 비교기 회로(254)에 순차적으로 결합한다.For start code detection, multiplexer 266 is scanned by counter 258 to write four different registers 265 to the comparator concurrently with the generation of the first four payload data bytes from decryptor 16. Combine sequentially. Alternatively, for conditional access code detection, multiplexer 257 is scanned by counter 258 to sequentially combine different ones of registers 265 into comparator circuit 254.

비교기 회로의 출력은 누산 및 테스트 회로(255)에 인가된다. 이 회로(255)는 어떤 미리 결정된 수의 바이트 정합 조건들이 생성되었는지를 결정하고, 그 조건들이 생성된 경우에, 검사하의 특정 페이로드의 나머지 부분에서 인타이틀먼트 데이타에 대해 기입 인에이블 신호를 발생한다. 본 시스템에 있어서, 인타이틀먼트 페이로드 헤더는 4개의 32비트 조건부 액세스 코드들로 배열된 128 비트들을 포함한다. 서로 다른 가입자들의 조건부 액세스 필터들(30)은 128 비트들의 서로 다른 바이트 조합들을 찾도록 배열될 것이다. 예를 들어, 한 가입자 장치는 조건부 액세스 코드들의 제1의 4 바이트들을 정합하도록 배열될 수 있다. 다른 가입자 장치는 조건부 액세스 코드들 등의 제 2의 4 바이트들을 정합하도록 배열될 수 있다. 이들 전형적인 경우들 중 어느 경우에서, 회로(255)는 적절한 4개의 연속된 바이트들에 대해 정합이 발생하였는지의 여부를 결정할 것이다.The output of the comparator circuit is applied to the accumulation and test circuit 255. This circuit 255 determines what predetermined number of byte matching conditions have been generated and, if those conditions are generated, generates a write enable signal for the entitlement data in the remainder of the particular payload under inspection. do. In the present system, the entitlement payload header includes 128 bits arranged in four 32-bit conditional access codes. Conditional access filters 30 of different subscribers will be arranged to find different byte combinations of 128 bits. For example, one subscriber device may be arranged to match the first 4 bytes of conditional access codes. Another subscriber device may be arranged to match a second four bytes, such as conditional access codes. In any of these typical cases, circuit 255 will determine whether a match has occurred for the appropriate four consecutive bytes.

가입자 특정 조건부 액세스 코드들에 대하여 뱅크내 16개의 레지스터들의 사용은 회로 구조를 간단화시킨다. 각각의 가입자가 4 바이트 조건부 액세스 코드를 갖기 때문에, 이 코드는 16개의 레지스터들의 세트에 4번 로딩될 수 있다. 그로인해, 송신기에서, 방송국은 4바이트들의 4개 그룹들에 대하여, 전송되는 조건부 액세스 코드들의 상대 위치에 대해 염려하지 않아도 된다. 대안의 장치는 가입자 특정 조건부 액세스 코드를 보유하는 4개의 레지스터들의 단일 그룹만을 포함할 수있으며, 이들 레지스터들은 인타이틀먼트 페이로드 헤더의 128비트들을 통해, 모듈로 4로, 반복적으로 조사될 수 있다.The use of 16 registers in the bank for subscriber specific conditional access codes simplifies the circuit structure. Since each subscriber has a four byte conditional access code, this code can be loaded four times in a set of sixteen registers. As such, at the transmitter, the broadcaster does not have to worry about the relative location of the conditional access codes transmitted for four groups of 4 bytes. An alternative apparatus may include only a single group of four registers holding a subscriber specific conditional access code, which registers may be repeatedly examined modulo 4, through the 128 bits of the entitlement payload header. .

모든 기능에 대해 232가능한 인타이틀먼트 코드들 각각을 전송하는 것은 비 실용적인데, 이것은 다른 서비스들에 대해 시스템 대역폭을 바람직하지 못하게 한정하고, 또한 너무 많은 시간이 걸리기 때문이다. 이러한 제한은 일부 논리적인 그룹화들에 따라 조건부 액세스 코드를 배열함으로써 다소 경감될 수 있는데, 여기서 그룹화들은 각각의 4 바이트 조건부 액세스 코드들의 3 바이트들로 정의된다. 이러한 방식으로, 그룹내의 모든 가입자들은 4 바이트 조건부 액세스 코드의 1 바이트를 무시하도록 그룹의 각각의 수신기들을 조절함으로써 어드레스될 수 있다 본 예에 있어서, 각각의 4 바이트 액세스 코드는 256 가입자들을 나타낼 것이다. 필터 조절은 예를 들어, 제 1의 4 바이트 위치들에서 모든 제로들을 전송하고, 이 조건을 검출하도록 조건부 액세스 필터를 배열함으로써, 실행된다. 이 조건이 만족되면, 조건부 액세스 필터는 4 바이트들의 각각의 그룹들의 단지 3 바이트들의 정합을 검출하도록 전기적으로 재구성된다.Sending each of the 2 32 possible entitlement codes for all functions is impractical, because it undesirably limits the system bandwidth for other services and also takes too much time. This restriction can be somewhat mitigated by arranging the conditional access code according to some logical groupings, where groupings are defined as 3 bytes of each 4 byte conditional access codes. In this way, all subscribers in the group can be addressed by adjusting the respective receivers of the group to ignore one byte of the four byte conditional access code. In this example, each four byte access code will represent 256 subscribers. Filter adjustment is performed, for example, by sending all zeros at the first four byte positions and arranging the conditional access filter to detect this condition. If this condition is met, the conditional access filter is electrically reconfigured to detect a match of only 3 bytes of each group of 4 bytes.

제 3 변형안이 모든 가입자들의 조건부 액세스를 허용하도록 제공된다. 이는, 인타이틀먼트 페이로드 헤더를 모두 제로들(또는 모든 1)로 코딩함으로써 실행된다. 그러므로, 조건부 액세스 필터는 모두 제로 검출기(all zero detector)[소자들(261 내지 263)]를 포함하도록 또한 배열된다.A third variant is provided to allow conditional access of all subscribers. This is done by coding the entitlement payload header all zeros (or all 1s). Therefore, the conditional access filter is also arranged to include all zero detectors (elements 261 to 263).

데이타의 각각의 도달 바이트들의 비트들은 8 비트 OR 게이트(263)의 각각의단자들에 결합된다. 비트들 중 어느 한 비트가 논리 1이면, OR 게이트(263)는 논리 1의 출력을 발생한다. OR 게이트(263)의 출력은 D-형 래치(261)의 데이타-입력 및 Q-출력 단자들에 각각 결합되는 출력 및 제 2 입력을 갖는 2 입력 OR 게이트(262)의 제 1 입력에 결합된다. D-형 래치는 들어오는 데이타 바이트들의 도달과 동시에 타이밍 회로(259)에 의해 클럭된다. 래치가 리셋된 후에 발생하는 어떤 데이타 바이트들에서 어떤 비트가 논리 1이면, 래치(261)는 다음 리셋 펄스까지 Q-출력에서 논리 1을 나타낼 것이다. 래치(261)의 Q-출력은, 래치가 1 출력 레벨을 나타낼 때마다 제로 출력 레벨을 나타내는 인버터에 결합된다. 따라서, 헤더의 128 비트들(16 바이트들)이 레지스터(250)를 통해 통과한 후에, 인버터의 출력이 하이로 되면, 128 비트들은 제로 값으로 된다. 래치는 각각의 새로운 페이로드의 수신에 앞서 리셋된다. 인타이틀먼트 페이로드 헤더의 통과 후에 인버터로부터 하이 출력 레벨의 검출에 응답하여, 회로(255)는 데이타 기입 인에이블 신호를 발생할 것이다.The bits of each arriving byte of data are coupled to respective terminals of the 8 bit OR gate 263. If any one of the bits is logic one, OR gate 263 generates the output of logic one. An output of the OR gate 263 is coupled to a first input of a two input OR gate 262 having an output and a second input coupled to the data-input and Q-output terminals of the D-type latch 261, respectively. . The D-type latch is clocked by the timing circuit 259 simultaneously with the arrival of incoming data bytes. If any bit in any data bytes that occur after the latch is reset, latch 261 will indicate logic 1 at the Q-output until the next reset pulse. The Q-output of latch 261 is coupled to an inverter representing zero output level whenever the latch represents one output level. Thus, after the 128 bits (16 bytes) of the header pass through the register 250, if the output of the inverter goes high, the 128 bits become zero values. The latch is reset prior to the receipt of each new payload. In response to detection of the high output level from the inverter after passing the entitlement payload header, circuit 255 will generate a data write enable signal.

도 5는 조건부 액세스 필터(30)의 동작에 대한 흐름도이다. 이 프로세스는 연관된 SCID의 검출에 의해 시작된다. 일단 적절한 SCID가 검출되면, 페이로드는 필터(30)에 인가된다{300}. 가입자 특정 조건부 액세스 코드와 헤더의 제1의 4 바이트들의 비교가 행해진다{302}. 정합이 발생하면, 인타이틀먼트 데이타 기입 인에이블이 발생된다{310}. 그렇지 않으면, 제1의 4바이트들이 모두 제로들인지 검사된다{306}. 모두 제로들로 검출되지 않으면, 헤더의 제2의 4 바이트들은 가입자 특정 조건부 액세스 코드와 비교된다{308}. 이들이 정합하면{312}, 기입 인에이블이 발생된다{310}. 그렇지 않으면, 4 바이트들의 제 3 세트는 가입자 특정 조건부 액세스 코드와 비교된다{314}. 이들이 정합하면{316}, 기입 인에이블이 발생된다{310}. 그렇지 않으면, 4 바이트들의 제 4 세트는 가입자 특정 조건부 액세스 코드와 비교 된다{317}. 이들이 정합하면(318), 기입 인에이블이 발생된다{310}. 그렇지 않으면, 헤더의 최종 12 바이트들이 모두 제로인지 검사된다{320}. 최종 12 바이트들이 모두 제로들로 검출되면, 기입 인에이블이 발생되고{310}, 그렇지 않으면, 기입 인에이블이 발생되지 않으며, 프로세스는 다음 패킷을 대기한다{300}. 대안의 장치에 있어서, 단계{320}에서, 시스템은 헤더의 모든 16 바이트들이 모두 제로들인지 검사하도록 프로그램될 수 있다. 또한, 모두 제로들 이외의 어떤 다른 고정된 패턴, 예를 들어 모두 1, 또는 제로와 1이 교대하는 패턴이 이용될 수 있음을 알 수 있다.5 is a flowchart of the operation of conditional access filter 30. This process is started by the detection of the associated SCID. Once the appropriate SCID is detected, the payload is applied to the filter 30 {300}. A comparison of the subscriber specific conditional access code and the first 4 bytes of the header is made {302}. If a match occurs, an entitlement data write enable is generated (310). Otherwise, the first 4 bytes are all checked for zero (306). If all are not detected as zeros, the second 4 bytes of the header are compared with the subscriber specific conditional access code {308}. If they match {312}, write enable is generated {310}. Otherwise, the third set of 4 bytes is compared with the subscriber specific conditional access code {314}. If they match {316}, a write enable occurs {310}. Otherwise, the fourth set of 4 bytes is compared with the subscriber specific conditional access code {317}. If they match 318, a write enable occurs {310}. Otherwise, the last 12 bytes of the header are all checked for zero (320). If the last 12 bytes are all detected as zeros, a write enable is generated (310), otherwise no write enable is generated, and the process waits for the next packet (300). In an alternative apparatus, at step 320, the system may be programmed to check that all 16 bytes of the header are all zeros. It can also be seen that any other fixed pattern other than zeros, for example all 1's, or patterns with alternating zeros and ones, may be used.

단계{306}에서, 제1의 4 바이트들이 모두 제로이면, 헤더의 제2의 4바이트들 중 3개가 가입자 특정 조건부 액세스 코드와 비교된다{354}. 도 4의 장치에 있어서, 4 바이트들의 배타적인 그룹들에 대한 3개의 정합들을 찾도록 소자(255)를 배열함으로써 달성될 수 있다. 4 바이트들 중 3개가 정합하면{326}, 기입 인에이블이 발생되고{322}, 그렇지 않으면, 제 3 세트의 4개의 헤더 바이트들 중 3개가 가입자 특정 조건부 액세스 코드와 비교된다{330}. 4 바이트들 중 3개가 정합하면{332}, 기입 인에이블이 발생되고{322}, 그렇지 않으면, 최종 4바이트들 중 3개가 가입자 특정 조건부 액세스 코드와 비교된다{336}. 이들이 정합하면, 기입 인에이블이 발생되고{322}, 그렇지 않으면, 모두 제로 조건이 검사된다{320}.In step 306, if the first four bytes are all zero, three of the second four bytes of the header are compared with the subscriber specific conditional access code {354}. In the apparatus of FIG. 4, this can be accomplished by arranging element 255 to find three matches for exclusive groups of four bytes. If three of the four bytes match {326}, a write enable is generated {322}, otherwise three of the four sets of four header bytes are compared with a subscriber specific conditional access code {330}. If three of the four bytes match {332}, a write enable is generated {322}, otherwise three of the last four bytes are compared with a subscriber specific conditional access code {336}. If they match, write enable is generated (322), otherwise all zero conditions are checked (320).

4 바이트들의 각각의 그룹들 중 단지 2개의 그룹만이 정합되는 단계들 {324-340}과 유사한 검출의 다른 레벨이 포함될 수 있다는 것을 주목한다. 이는, 예를 들어 제 1의 8바이트들을 모두 제로가 되도록 배열하거나, 제 1의 4바이트들을 모두 1이 되도록 배열함으로써, 조절될 수 있다. 본 예에 있어서, 조건부 액세스 코드들에 의해 인에이블되는 각각의 그룹들은 훨씬 크게 된다.Note that other levels of detection may be included, similar to steps {324-340} where only two of each group of 4 bytes are matched. This can be adjusted, for example, by arranging the first eight bytes to be all zeros or by arranging the first four bytes to be all ones. In this example, the respective groups enabled by the conditional access codes are much larger.

메모리(18)에 인타이틀먼트 페이로드들을 저장하는 것에 관하여, 시스템은 조건부 액세스 코드들에 대해 수신 및 검사될 때, 페이로드 헤더를 메모리에 기입한다. 조건부 액세스 코드가 검출되면, 검출된 기입 인에이블은 메모리 제어로 하여금 페이로드를 계속해서 기입하도록 한다. 역으로, 조건부 액세스 코드가 페이로드의 제 1의 16 바이트들 내에서 검출되지 않은 경우에, 나머지의 페이로드는 메모리에 기입되지 않고, 조건부 액세스 페이로드에 대한 메모리 어드레스는 페이로드 조건부 액세스 헤더의 16 바이트들을 덮어쓰도록 리셋된다.Regarding storing the entitlement payloads in memory 18, the system writes the payload header into the memory when received and checked for conditional access codes. If a conditional access code is detected, the detected write enable causes memory control to continue writing the payload. Conversely, if a conditional access code is not detected within the first 16 bytes of the payload, the remaining payload is not written to the memory and the memory address for the conditional access payload is set to the payload conditional access header. Reset to overwrite 16 bytes.

도 6은 한 번에 32 비트들(4 바이트들)만큼 비교하는 대안의 조건부 액세스 필터이다. 이는 시작 코드의 바이트 위치에 대한 사전 지식 없이 시작 코드들을 검출할 수 있게 한다. 시작 코드는 8-비트 레지스터들(265)에 저장된다. (8비트 레지스터들이 사용되는데, 그 이유는 8비트 μPC 버스가 사용되기 때문이다.) 레지스터들의 출력 포트들은 멀티플렉서(298)의 제 1 세트의 입력들에 결합된다. 가입자 특정 조건부 액세스 코드는, 멀티플렉서(298)의 제 2 세트의 입력들에 결합된 각각의 출력 포트들을 갖는 제 2 레지스터 뱅크(299)에 저장된다. 멀티플렉서(298)는 비교기들(270-273)의 각각의 제 1의 8-비트 입력 포트들에 접속된 한 세트의 출력들을갖는다. 레지스터들(265 또는 299)의 출력 포트들이 비교기들에 결합되었는지 여부는 μPC에 응답하는 누산 및 테스트 회로(297)에 의해 제어된다.6 is an alternative conditional access filter comparing 32 bits (4 bytes) at a time. This makes it possible to detect start codes without prior knowledge of the byte position of the start code. The start code is stored in 8-bit registers 265. (8-bit registers are used because an 8-bit μPC bus is used.) The output ports of the registers are coupled to the inputs of the first set of multiplexer 298. The subscriber specific conditional access code is stored in a second register bank 299 having respective output ports coupled to inputs of the second set of multiplexer 298. Multiplexer 298 has a set of outputs connected to each of the first 8-bit input ports of comparators 270-273. Whether the output ports of registers 265 or 299 are coupled to the comparators is controlled by the accumulation and test circuit 297 responsive to μPC.

암호 해독기(16)로부터의 입력 바이트들은 병렬/직렬 레지스터들(274-277)에 결합된다. 각각의 레지스터들(274-277)은 비교기들(270-273)의 제 2의 8-비트 입력 포트들에 각각 결합되는 병렬 출력 포트들을 갖는다. 본 시스템은, 입력 신호의 4개의 연속적인 바이트들이 레지스터들(274-277)에 현재 로딩되도록, 시간이 맞추어진다. 비교기들의 출력 단자들은 각각의 OR 게이트들(278-281)을 통해 누산 및 테스트 회로(297)에 결합된다. OR 회로들의 제2 입력 단자들은 누산 및 테스트 회로(297)의 각각의 제어 출력 접속부들에 결합된다.Input bytes from decryptor 16 are coupled to parallel / serial registers 274-277. Each register 274-277 has parallel output ports coupled to the second 8-bit input ports of the comparators 270-273, respectively. The system is timed such that four consecutive bytes of the input signal are currently loaded into registers 274-277. Output terminals of the comparators are coupled to the accumulation and test circuit 297 through respective OR gates 278-281. Second input terminals of the OR circuits are coupled to respective control output connections of the accumulation and test circuit 297.

도 4의 장치와 같이, 도 6의 장치는 제 1의 4 바이트들 및 모든 16 바이트들이 모두 제로인 것을 검출하기 위한 모두 제로 검출기(261-263)를 포함한다.Like the apparatus of FIG. 4, the apparatus of FIG. 6 includes an all zero detector 261-263 for detecting that the first 4 bytes and all 16 bytes are all zero.

4바이트 조건부 액세스 코드 검출을 위해, 4바이트들의 연속적인 배타적인 그룹들은 레지스터들(274-277)에 로딩되고, 레지스터들(299)에 포함된 가입자 특정 조건부 액세스 코드에 대해 테스트된다. 모든 4개의 비교기들이 정합을 검출하면, AND 게이트(283)는 정합을 표시하는 논리 1을 발생한다. 비교기들 중 하나의 비교기가 정합을 검출하는데 실패하면, AND 게이트는 논리 제로를 발생한다. 4개의 입력 바이트 조건부 액세스 코드 세트들 중 3개를 검출하기 위하여, 누산 및 테스트 회로(297)는 논리 1값을, OR 게이트들에 결합된 제어 라인들 중 하나의 라인에 인가한다. 이것은 상기 OR 게이트의 출력을 논리 1로 되게 하여, 연관된 비교기로부터 정합을 효율적으로 강제한다. 그로 인해, 조건부 액세스 코드 검출은 4 바이트검출과 같이 연속적인 배타적 4 바이트 그룹들에 대해 수행된다.For four byte conditional access code detection, consecutive exclusive groups of four bytes are loaded into registers 274-277 and tested for subscriber specific conditional access code included in registers 299. If all four comparators detect a match, AND gate 283 generates a logic one indicating the match. If one of the comparators fails to detect a match, the AND gate generates a logic zero. To detect three of the four input byte conditional access code sets, the accumulation and test circuit 297 applies a logic 1 value to one of the control lines coupled to the OR gates. This causes the output of the OR gate to be logic 1, effectively forcing matching from the associated comparator. As such, conditional access code detection is performed on successive exclusive 4-byte groups such as 4-byte detection.

시작 코드 검출을 위하여, 모든 OR 게이트들의 제어 라인들은 논리 제로로 유지된다. 입력 바이트들은 레지스터(274-277)의 캐스케이드 접속부(cascade connection)에 순차적으로 인가되고, 레지스터들(265)에 저장된 시작 코드와 정합하기 위한 테스트는 4 입력 바이트들의 연속적인 포괄적 세트 각각에 대해 행해진다.For start code detection, the control lines of all OR gates remain at logic zero. Input bytes are applied sequentially to the cascade connection of registers 274-277, and a test to match the start code stored in registers 265 is performed for each successive comprehensive set of 4 input bytes. .

도7은 도3에 도시된 메모리 제어기(17)에 대한 전형적인 장치를 도시한 것이다. 각각의 프로그램 성분은 메모리(18)의 서로 다른 인접한 블록에 저장된다. 게다가, 마이크로프로세서(19) 또는 스마트 카드(도시하지 않음)에 의해 발생된 데이타와 같은 다른 데이타가 메모리(18)에 저장될 수 있다.FIG. 7 shows a typical device for the memory controller 17 shown in FIG. Each program component is stored in a different contiguous block of memory 18. In addition, other data such as data generated by the microprocessor 19 or a smart card (not shown) may be stored in the memory 18.

어드레스들은 멀티플렉서(105)에 의해 메모리(18)에 인가되고, 입력 데이타는 멀티플렉서(99)에 의해 메모리(18)에 인가된다. 메모리 관리 회로로부터의 출력 데이타는 다른 멀티플렉서(104)에 의해 신호 처리기들에 제공된다. 멀티플렉서(104)에 의해 제공된 출력 데이타는 마이크로프로세서(19), 메모리(18) 또는 멀티플렉서(99)로부터 직접 유도된다. 프로그램 데이타는 표준 화상 해상도 및 품질이고, 특정 데이타 속도로 발생하는 것으로 가정한다. 한편, 상기 수신기에 의해 제공될 수 있는 고품위 텔레비전 신호, HDTV는 상당히 높은 데이타 속도로 발생한다. 실질적으로, FEC에 의해 제공된 모든 데이타는, 멀티플렉서(99)에서 멀티플렉서(104)로 직접 루팅될 수 있는 보다 높은 속도의 HDTV 신호를 제외하고, 멀티플렉서(99) 및 메모리 I/O 회로(102)를 경유하여 메모리(18)를 통해 루팅될 것이다. 데이타는 암호 해독기(16), 스마트 카드 회로, 마이크로프로세서(19) 및 매체 에러 코드들의 소스(100)로부터 멀티플렉서(99)에 제공된다. 본 명세서에 사용된 용어 "매체 에러 코드들(media error codes)"는, 데이타 스트림 내에 삽입될 특수 코드워드들을 의미하는 것으로, 각각의 신호 처리기(압축 해제기)를 조절하여 시작 코드와 같은 미리 결정된 코드 워드를 검출할 때까지 처리를 중지하고, 그후에, 예를 들어 시작 코드에 따라 처리를 다시 시작하도록 하기 위한 것이다.Addresses are applied to the memory 18 by the multiplexer 105 and input data is applied to the memory 18 by the multiplexer 99. Output data from the memory management circuitry is provided to signal processors by another multiplexer 104. Output data provided by the multiplexer 104 is derived directly from the microprocessor 19, memory 18, or multiplexer 99. Program data is assumed to be at standard image resolution and quality, and occur at a particular data rate. On the other hand, high-definition television signals, HDTVs, which can be provided by the receiver, occur at significantly higher data rates. Substantially, all data provided by the FEC is coupled to the multiplexer 99 and the memory I / O circuit 102, except for higher speed HDTV signals that can be routed directly from the multiplexer 99 to the multiplexer 104. It will be routed through the memory 18 via it. Data is provided to the multiplexer 99 from the decryptor 16, the smart card circuit, the microprocessor 19, and the source 100 of media error codes. As used herein, the term "media error codes" refers to special codewords to be inserted into a data stream, by adjusting each signal processor (decompressor) to determine a predetermined code such as a start code. The processing is stopped until a code word is detected, after which the processing is restarted according to, for example, a start code.

메모리 어드레스들은 프로그램 어드레싱 회로(79-97)로부터, 마이크로프로세서(19)로부터, 스마트 카드 장치(31)로부터, 그리고 보조 패킷 어드레스 카운터(78)로부터 멀티플렉서(105)에 제공된다. 어떤 특정 시간 구간에서 특정 어드레스의 선택은 직접 메모리 액세스(DMA) 회로(98)에 의해 제어된다. 비교기(15)로부터의 SCID 제어 신호들과 각각의 신호 처리기들로부터의 "요구된 데이타(data needed)" 신호들이 DMA(98)에 인가되고, 이에 응답하여, 메모리 액세스 경쟁(memory access contention)이 중재된다. DMA(98)는 서비스 포인터 제어기(93)와 협동하여 각각의 프로그램 신호 성분들에 대해 적절한 판독 또는 기입 어드레스들을 제공한다.Memory addresses are provided to the multiplexer 105 from the program addressing circuit 79-97, from the microprocessor 19, from the smart card device 31, and from the auxiliary packet address counter 78. The selection of a particular address at any particular time interval is controlled by the direct memory access (DMA) circuit 98. SCID control signals from comparator 15 and " data needed " signals from respective signal processors are applied to DMA 98, and in response, memory access contention is established. Mediated. DMA 98 cooperates with service pointer controller 93 to provide appropriate read or write addresses for each program signal component.

여러 신호 성분 메모리 블록들을 위한 각각의 어드레스들은 4 그룹의 프로그램 성분 또는 서비스 포인터 레지스터들(83, 87, 88 및 92)에 의해 발생된다. 각각의 신호 성분들이 저장되는 메모리의 각각의 블록들에 대한 시작 포인터들은 각각의 신호 성분들에 대하여 레지스터들에 포함된다. 시작 포인터들은 고정된 값들이 될 수 있거나, 마이크로프로세서(19)에서 종래의 메모리 관리 방법들에 의해 계산될 수 있다.Respective addresses for the various signal component memory blocks are generated by four groups of program component or service pointer registers 83, 87, 88 and 92. Start pointers for the respective blocks of the memory where the respective signal components are stored are included in registers for the respective signal components. The start pointers may be fixed values or may be calculated by conventional memory management methods in the microprocessor 19.

각각의 블록들의 최종 어드레스에 대한 포인터들은 서비스 레지스터들(88)의 뱅크에 저장되는데, 하나의 포인터는 각각의 포텐셜 프로그램 성분을 위한 것이다. 시작 어드레스들과 유사하게, 종료 또는 최종 어드레스들은 고정된 값들이 될 수 있거나, 마이크로프로세서(19)에 의해 제공된 계산된 값들이 될 수 있다. 시작 및 종료 포인터들에 대해 계산된 값들을 사용하는 것이 바람직한데, 그 이유는 메모리를 덜 차지하면서 보다 다용도의 시스템을 제공하기 때문이다.Pointers to the final address of each block are stored in a bank of service registers 88, one pointer for each potential program component. Similar to the start addresses, the end or final addresses may be fixed values or may be calculated values provided by the microprocessor 19. It is desirable to use calculated values for the start and end pointers, because it provides a more versatile system while using less memory.

메모리 기입 포인터 또는 헤드 포인터들은 가산기(80) 및 서비스 헤드 레지스터들(83)에 의해 발생된다. 각각의 포텐셜 프로그램 성분을 위한 서비스 헤드 레지스터가 존재한다. 기입 또는 헤드 포인터 값은 레지스터(83)내에 저장되며, 메모리 기입 사이클 동안 어드레스 멀티플렉서(105)에 제공된다. 헤드 포인터는 또한 가산기(80)에 결합되는데, 여기서, 헤드 포인트는 1 단위 씩 증분되고, 증분된 포인터는 다음 기입 사이클 동안 적절한 레지스터(83)에 저장된다. 레지스터(83)는 현재 서비스되는 적절한 프로그램 성분을 위하여 서비스 포인터 제어기(93)에 의해 선택된다.Memory write pointers or head pointers are generated by adder 80 and service head registers 83. There is a service head register for each potential program component. The write or head pointer value is stored in register 83 and provided to address multiplexer 105 during a memory write cycle. The head pointer is also coupled to the adder 80, where the head point is incremented by one unit and the incremented pointer is stored in the appropriate register 83 for the next write cycle. Register 83 is selected by service pointer controller 93 for the appropriate program component that is currently being serviced.

본 예에 있어서, 시작 및 종료 포인터들은 16-비트 포인터들로 가정한다. 레지스터들(83)은 16 비트 기입 또는 헤드 포인터들을 제공한다. 16 비트 포인터들은 레지스터들(87 및 88)에 시작 및 종료 포인터들을 로딩하기 위한 16-비트 또는 8-비트 버스들의 사용을 용이하게 하기 위해 선택된다. 다른 한편, 메모리(18)는 18-비트 어드레스들을 갖는다. 18-비트 기입 어드레스들은 시작 포인터들의 2개의 최상위 비트들을 16-비트 헤드 포인터들에 연결함으로써 형성되며, 이 시작 포인터 비트들은 결합된 18-비트 기입 어드레스의 최상위 비트 위치들에 존재한다. 시작 포인터들은 각각의 레지스터들(87)에 의해 서비스 포인터 제어기(93)에 제공된다. 서비스 포인터 제어기는 레지스터들(87)내에 저장된 시작 포인트들로부터 상위의 시작 포인터 비트들을 분석(parse)하고, 이들 비트들을 16-비트 헤드 포인터 버스와 연관시킨다. 이는, 도 8에서 굵은 화살표들로 표시한 것으로, 멀티플렉서(85)로 빠져나가는 헤드 포인터 버스와 조합된 것으로 도시된 버스(96)로 도시되어 있다.In this example, the start and end pointers are assumed to be 16-bit pointers. Registers 83 provide 16 bit write or head pointers. Sixteen bit pointers are selected to facilitate the use of 16-bit or 8-bit buses for loading start and end pointers into registers 87 and 88. On the other hand, memory 18 has 18-bit addresses. The 18-bit write addresses are formed by concatenating the two most significant bits of the start pointers to the 16-bit head pointers, which start pointer bits are at the most significant bit positions of the combined 18-bit write address. Start pointers are provided to the service pointer controller 93 by respective registers 87. The service pointer controller parses the upper start pointer bits from the start points stored in registers 87 and associates these bits with the 16-bit head pointer bus. This is illustrated by the bold arrows in FIG. 8, shown as bus 96 shown in combination with a head pointer bus exiting to multiplexer 85.

도 8에 있어서, 박스들의 위, 중간 및 바닥 행들은 시작 포인터, 어드레스 및 헤드 또는 테일 포인터(tail pointer)의 비트들을 각각 나타낸다. 보다 큰 번호가 매겨진 박스들은 보다 상위인 비트 위치들을 나타낸다. 화살표들은 시작 또는 헤드/테일 포인터들의 비트 위치들로부터 어드레스의 각각의 비트들이 유도되는 것을 나타낸다. 이러한 유도에 있어서, 굵은 화살표들은 정상 상태 동작을 나타낸다.In Figure 8, the top, middle and bottom rows of boxes represent the bits of the start pointer, address and head or tail pointer, respectively. Larger numbered boxes indicate higher bit positions. The arrows indicate that each bit of the address is derived from the bit positions of the start or head / tail pointers. In this derivation, the bold arrows indicate steady state operation.

유사하게, 메모리 판독 포인터들 또는 테일 포인터들은 가산기(79) 및 서비스 테일 레지스터들(92)에 의해 발생된다. 각각의 포텐셜 프로그램 성분을 위한 서비스 테일 레지스터가 존재한다. 판독 또는 테일 포인터 값은 레지스터(92)에 저장되고, 메모리 판독 사이클 동안 어드레스 멀티플렉서(105)에 제공된다. 테일 포인터는 가산기(79)에 또한 결합되고, 1 단위 씩 증분되며, 증분된 포인터는 다음의 판독 사이클 동안 적절한 레지스터(92)에 저장된다. 레지스터들(92)은 현재 서비스되는 적절한 프로그램 성분을 위하여 서비스 포인터 제어기(93)에 의해 선택된다.Similarly, memory read pointers or tail pointers are generated by adder 79 and service tail registers 92. There is a service tail register for each potential program component. The read or tail pointer value is stored in register 92 and provided to address multiplexer 105 during a memory read cycle. The tail pointer is also coupled to the adder 79, incremented by one unit, and the incremented pointer is stored in the appropriate register 92 for the next read cycle. Registers 92 are selected by the service pointer controller 93 for the appropriate program component that is currently being serviced.

레지스터들(92)은 16 비트 테일 포인터들을 제공한다. 18-비트 판독 어드레스들은 시작 포인터들의 2개의 최상위 비트들을 16-비트 테일 포인터들에 연결함으로써 형성되는데, 이 시작 포인터 비트들은 결합된 18-비트 기입 어드레스의 최상위 비트 위치들 내에 존재한다. 서비스 포인터 제어기는 레지스터들(87)내에 저장된 시작 포인터들로부터 상위의 시작 포인터 비트들을 분석하고, 이들 비트들을 16 비트 테일 포인터 버스와 연관시킨다. 이는 멀티플렉서(90)로 빠져나가는 테일 포인터 버스와 조합되어 도시된 버스(94)로 도시되어 있다.Registers 92 provide 16 bit tail pointers. The 18-bit read addresses are formed by concatenating the two most significant bits of the start pointers to the 16-bit tail pointers, which are within the most significant bit positions of the combined 18-bit write address. The service pointer controller analyzes the upper start pointer bits from the start pointers stored in registers 87 and associates these bits with the 16-bit tail pointer bus. This is illustrated by the bus 94 shown in combination with a tail pointer bus that exits to the multiplexer 90.

데이타는 계산된 어드레스에서 메모리(18)에 저장된다. 한 바이트의 데이타를 저장한 후에, 헤드 포인터는 1 씩 증분되고, 이 프로그램 성분에 대한 종료 포인터와 비교되며, 이들이 동일하면, 헤드 포인터의 보다 상위의 비트들은 시작 포인터의 보다 하위의 14 비트로 대체되고, 제로들은 이 어드레스의 헤드 포인터 부분의 보다 하위의 2비트 위치들에 배치된다. 이는 시작 포인터들과 어드레스 사이의 해칭된 화살표와 관련하여 도 8에 도시되어 있다. 이 동작은 서비스 포인터 제어기(93)에서 멀티플렉서(85)로부터의 헤드 포인터 버스로 포인팅하는 화살표(97)로 도시된다. 보다 하위의 14 시작 포인터 비트들의 인가(application)는 헤드 포인터 비트를 무시한다고 가정한다. 1 기입 사이클 동안 어드레스에서 헤드 포인터 비트들을 하위의 시작 포인터 비트로 대체함으로서, 메모리는 상위의 두 개의 시작 포인터 비트들로 지정된 메모리 블록을 통해 스크롤(scroll)하고, 그로 인해, 각각의 패킷의 시작에서 기입 어드레스들을 한 블록 내의 고유의 메모리 위치에 재프로그램하는 것을 방지한다.The data is stored in memory 18 at the calculated address. After storing one byte of data, the head pointer is incremented by 1 and compared to the end pointer for this program element, and if they are the same, the upper bits of the head pointer are replaced by the lower 14 bits of the start pointer. The zeros are placed in the lower two bit positions of the head pointer portion of this address. This is illustrated in FIG. 8 with respect to the hatched arrows between the start pointers and the address. This operation is illustrated by arrow 97 pointing at the service pointer controller 93 to the head pointer bus from the multiplexer 85. It is assumed that the application of the lower 14 start pointer bits ignores the head pointer bit. By replacing the head pointer bits at the address with the lower start pointer bits for one write cycle, the memory scrolls through the memory block designated by the upper two start pointer bits, thereby writing at the beginning of each packet. Prevents reprogramming of addresses into unique memory locations within a block.

헤드 포인터가 테일 포인터[메모리(18)로부터 데이타를 판독하는 위치를 나타내기 위해 이용]와 항상 동일하면, 마이크로프로세서의 인터럽트 섹션으로 한 신호가 전송되어, 헤드-테일 크래쉬(head-tail crash)가 발생되었음을 나타낸다. 이 프로그램 채널로부터 메모리(18)에 더 기입하는 것은 마이크로프로세서가 채널을 다시 인에이블 할때까지 디스에이블된다. 이 경우는 매우 드문 것으로, 정상적인 동작에서는 발생하지 않는다.If the head pointer is always the same as the tail pointer (used to indicate the position to read data from memory 18), a signal is sent to the interrupt section of the microprocessor, so that a head-tail crash Indicates that it occurred. Further writing from this program channel to memory 18 is disabled until the microprocessor enables the channel again. This is very rare and does not occur in normal operation.

데이타는 가산기(79) 및 레지스터들(92)에 의해 계산된 어드레스들에서, 각각의 신호 처리기들의 요청으로 메모리(18)로부터 데이타가 검색된다. 1 바이트의 저장된 데이타를 판독한 후에, 테일 포인터는 1 단위 씩 증분되어 서비스 포인터 제어기(93)에서 논리 채널에 대한 종료 포인터와 비교된다. 테일 및 종료 포인터들이 동일하면, 테일 포인터의 상위 비트들은 시작 포인터의 하위 14 비트들로 대체되고, 제로들은 어드레스의 테일 포인터 부분의 하위의 2개의 비트 위치들에 배치된다. 이는, 제어기(93)로부터 나와서 멀티플렉서(90)로부터의 테일 포인터 버스에 포인팅하는 화살표(95)로 도시된다. 테일 포인터가 현재 헤드 포인터와 동일하다면, 각각의 메모리 블록은 비어있는 것으로 정의되고, 보다 많은 데이타가 이 프로그램 채널에 대한 FEC로부터 수신될 때까지는 더 이상의 바이트가 연관된 신호 처리기로 전송되지 않을 것이다. 기입 또는 판독 어드레스 각각의 헤드 또는 테일 포인터 부분들을 시작 포인터의 하위의 14 비트로 실제적으로 대체하는 것은 적절한 멀티플렉싱에 의해, 또는 3 상태 상호 접속들의 사용에 의해 성취될 수 있다.Data is retrieved from memory 18 at the request of respective signal processors at the addresses computed by adder 79 and registers 92. After reading one byte of stored data, the tail pointer is incremented by one and compared with the end pointer for the logical channel in the service pointer controller 93. If the tail and end pointers are the same, the upper bits of the tail pointer are replaced by the lower 14 bits of the start pointer, and the zeros are placed at the two bit positions below the tail pointer portion of the address. This is illustrated by arrow 95 coming out of controller 93 and pointing to tail pointer bus from multiplexer 90. If the tail pointer is identical to the current head pointer, each memory block is defined as empty and no more bytes will be sent to the associated signal processor until more data is received from the FEC for this program channel. Substantially replacing the head or tail pointer portions of each of the write or read addresses with the lower 14 bits of the start pointer can be accomplished by proper multiplexing or by the use of three state interconnections.

메모리 판독/기입 제어는 서비스 포인터 제어기 및 직접 메모리 액세스, 즉 DMA 소자들(93 및 94)에 의해 수행된다. DMA는 판독 및 기입 사이클들을 스케쥴하도록 프로그램된다. 스케쥴링은 FEC(12)가 메모리에 기입될 데이타를 제공하는지 여부에 의존한다. FEC 데이타 기입 동작들은 어떠한 인입 신호 성분 데이타도 손실하지 않도록 보다 우선하여 실행된다. 도 7에 도시된 전형적인 장치에 있어서, 메모리를 액세스할 수 있는 4가지 형태들이 있다. 이들은 스마트 카드, FEC(12)[보다 정확하게는 암호 해독기(16)], 마이크로프로세서(19) 및 오디오 및 비디오 처리기들과 같은 응용 디바이스들이 있다. 메모리 경쟁은 다음과 같은 방식으로 취급된다. DMA는, 상기 열거한 여러 처리 소자들로부터의 데이타 요청에 응답하여, 각각의 프로그램 성분들을 위한 메모리 블록들을 할당한다. 메모리에 대한 액세스는 95nS 시간 슬롯들내에 제공되는데, 이 동안에는 1 바이트의 데이타가 메모리(18)로부터 판독되거나 그 메모리에 기입된다. "데이타를 제공하는 FEC(FEC Providing Data)", 또는 "데이타를 제공하지 않는 FEC(FEC Not Providing Data)"로 각각 정의된 두 개의 주요한 액세스 할당 모드가 있다. 이들 모드들 각각에 대해서, 시간 슬롯들이 할당되고, 다음과 같은 우선 순위화 되는데, 최대 FEC 데이타 속도를 5M 바이트/초, 또는 각각의 200nS당 1 바이트라고 가정한다. 이들은:Memory read / write control is performed by the service pointer controller and direct memory access, ie DMA elements 93 and 94. The DMA is programmed to schedule read and write cycles. Scheduling depends on whether the FEC 12 provides data to be written to memory. FEC data write operations are prioritized so that no incoming signal component data is lost. In the typical device shown in FIG. 7, there are four forms in which the memory can be accessed. These are application devices such as smart cards, FEC 12 (more precisely decryptor 16), microprocessor 19 and audio and video processors. Memory contention is handled in the following manner. The DMA allocates memory blocks for the respective program components in response to data requests from the various processing elements listed above. Access to the memory is provided in 95 nS time slots, during which one byte of data is read from or written to memory 18. There are two main access assignment modes, each defined as "FEC Providing Data (FEC) that provides data" or "FEC Not Providing Data (FEC) that does not provide data". For each of these modes, time slots are allocated and prioritized as follows, assuming the maximum FEC data rate is 5M bytes / second, or 1 byte for each 200 nS. These are:

데이타를 제공하는 FECFEC provides data

1) FEC 데이타 기입;1) write FEC data;

2) 응용 디바이스 판독/마이크로프로세서 판독/기입;2) application device read / microprocessor read / write;

3) FEC 데이타 기입;3) write FEC data;

4) 마이크로프로세서 판독/기입.4) Read / write microprocessor.

데이타를 제공하지 않는 FECFEC not providing data

1) 스마트 카드 판독/기입;1) smart card read / write;

2) 응용 디바이스 판독/마이크로프로세서 판독/기입;2) application device read / microprocessor read / write;

3) 스마트 카드 판독/기입;3) smart card read / write;

4) 마이크로프로세서 판독/기입.4) Read / write microprocessor.

FEC 데이타 기입은 지연될 수 없기 때문에, FEC(보다 정확하게는 암호 해독기)는, 데이타를 제공할 때 각각의 200 nS 간격 동안 메모리 액세스를 보증해야 된다. 교번 시간 슬롯들은 응용 디바이스들 및 마이크로프로세서에 의해 공유된다. 요청하는 디바이스들에 이용 가능한 데이타가 존재하지 않을 때, 마이크로프로세서는 응용 시간 슬롯들을 사용한다.Since FEC data writes cannot be delayed, the FEC (more precisely the decryptor) must guarantee memory access for each 200 nS interval when providing the data. Alternate time slots are shared by application devices and microprocessors. When there is no data available to the requesting devices, the microprocessor uses application time slots.

제어기(93)는 SCID 검출기와 통신하여 메모리 기입 동작들에 대한 액세스를 위해 각각의 시작, 헤드 및 종료 포인터 레지스터들 중 어느 것을 결정한다. 제어기(93)는 DMA와 통신하여 메모리 판독 동작들에 대한 액세스를 위해 시작, 종료 및 테일 레지스터들 중 어느 것을 결정한다. DMA(98)는 멀티플렉서들(99, 104 및 105)에 의해 대응하는 어드레스들 및 데이타의 선택을 제어한다.Controller 93 communicates with the SCID detector to determine which of the respective start, head and end pointer registers for access to memory write operations. The controller 93 communicates with the DMA to determine which of the start, end and tail registers for access to the memory read operations. DMA 98 controls the selection of corresponding addresses and data by multiplexers 99, 104 and 105.

도 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}. 이는 종래의 인터럽트 루틴에 의해서, 또는 대안적으로, 데이타를 요청하는 프로그램 처리기들의 임의의 순서로 순차적인 한 바이트의 서비스에 의해 달성될 것이다. 예를 들어, 액세스 우선 순위의 임의의 순서가 비디오, 오디오 I, 오디오 II, 스마트 카드 및 μPC라고 가정한다. 또한, 단지 비디오, 오디도 II 및 μPC만이 메모리 액세스를 요청한다고 가정한다. 단계 {203}의 현재 동작 동안, 한 바이트의 비디오가 메모리로부터 판독될 것이다. 단계 {203}의 다음 동작 동안, 한 바이트의 오디오 II는 메모리로부터 판독될 것이며, 다음에 이어서 발생하는 단계{203}의 동작 동안, 한 바이트의 μPC 데이타는 메모리(18) 등에 기입 또는 그 메모리로로부터 판독될 것이다. 스마트 카드 및 μPC 액세스를 위한 어드레스들은 스마트 카드 및 μPC 각각에 의해 제공되지만, 비디오, 오디오 및 프로그램 가이드를 위한 어드레스들은 어드레스 포인터 장치(80-93)으로부터 이용될 수 있음을 주목한다.9 shows an exemplary flow diagram of a memory access process of the DMA 98. The DMA responds to the detection or non-detection of the received packet via detection of SCIDs {200}. If the SCID is detected to indicate the presence of data from the decryptor 16 to be written to the memory, one byte of program data from the decryptor is written to the buffer memory 18 {201}. The block of memory to be written is determined by the processor 93 in response to the current SCID. The DMA then determines which of the program component processors, including the smart card and [mu] PC, requests data or read / write (R / W) access to the memory 18 (202). If no data request is made for the DMA, the process returns to step 200. When the data R / W request is executed, the DMA determines the request priority {203}. This may be accomplished by conventional interrupt routines or, alternatively, by one byte of service sequentially in any order of program processors requesting data. For example, assume that any order of access priority is video, audio I, audio II, smart card and μPC. In addition, assume that only video, Audido II and μPC require memory access. During the current operation of step {203}, one byte of video will be read from the memory. During the next operation of step {203}, one byte of Audio II will be read from the memory, and during the next operation of step {203}, one byte of μPC data is written to or written to memory 18 or the like. Will be read from. Note that addresses for smart card and μPC access are provided by the smart card and μPC respectively, but addresses for video, audio and program guides may be available from the address pointer device 80-93.

일단, 우선 순위 액세스가 설정되면{203}, 필요한 프로그램 처리기에는 메모리(18)에 기입 또는 그 메모리로부터 판독된 한 바이트의 데이타가 서비스된다{204}. 다음에, 암호 해독기(16)로부터의 한 바이트의 데이타가 메모리에 기입된다{205}. μPC가 액세스를 요청하고 있는지 여부를 결정하는 검사가 행해진다{206}. μPC가 액세스를 요청하면, 1 바이트의 데이타가 서비스된다{207}.μPC가 액세스를 요청하지 않으면, 프로세스는 단계{202}로 점프하여 프로그램 처리기들 중 어떤 처리기가 액세스를 요청하고 있는지 여부를 결정한다. 이 방식으로, 인입 데이타는 모든 다른 메모리 액세스 기간에 액세스되도록 항상 보장되며, 중재 메모리 액세스 기간들은 프로그램 처리기들 사이에 확산된다.Once priority access is established {203}, the necessary program processor is serviced with one byte of data written to or read from memory 18 (204). Next, one byte of data from the decryptor 16 is written into the memory {205}. A check is made to determine whether the μPC is requesting access {206}. If the μPC requests access, one byte of data is served {207}. If the μPC does not request access, the process jumps to step {202} to determine which of the program processors is requesting access. do. In this way, incoming data is always guaranteed to be accessed in all other memory access periods, and arbitration memory access periods are spread between program processors.

데이타가 암호 해독기(16)로부터 현재 이용되지 않으면, 즉, SCID가 현재 검출되지 않으면, 프로세스{208-216}가 이어진다. 우선, 스마트 카드가 검사되어 {208}, 메모리 액세스를 요청하고 있는지 여부를 결정한다. 그렇다면, 1 바이트의 메모리 액세스가 제공되며{209}, 그렇지 않다면, 프로그램 처리기들 중 어떤 처리기가 메모리 액세스를 요청하고 있는지를 결정하는 검사가 행해진다{210}. 데이타 R/W 요청이 행해지면, DMA는 요청의 우선 순위를 결정한다{211}. 적절한 처리기에는 1 바이트의 메모리 판독 또는 기입 액세스가 서비스된다. 데이타 R/W 요청이 프로그램 처리기들에 의해 행해지지 않으면, 이 프로세스는 단계{203}로 점프하는데, 여기서는 스마트 카드가 메모리 액세스를 요청하는지를 결정하는 테스트가 수행된다. 그렇다면, 1 바이트의 메모리 액세스가 서비스되고{216}, 그렇지 않다면, 프로세스는 단계{200}로 점프한다.If data is not currently used from decryptor 16, that is, no SCID is currently detected, process {208-216} follows. First, the smart card is checked to determine whether it is requesting memory access {208}. If so, one byte of memory access is provided {209}, otherwise a check is made to determine which of the program processors is requesting the memory access {210}. When a data R / W request is made, the DMA determines the priority of the request {211}. Appropriate processors are serviced with one byte of memory read or write access. If a data R / W request is not made by the program processors, the process jumps to step 203, where a test is performed to determine if the smart card requests memory access. If so, one byte of memory access is served {216}, otherwise the process jumps to step {200}.

본 예에 있어서, "데이타를 제공하지 않는 FEC(FEC Not Providing Data)" 모드일 때, 스마트 카드에는 모든 다른 프로그램 처리기들에 대해 2 대 1의 액세스 우선(two-to-one access precedence)이 제공된다는 것을 인지해야 한다. 이러한 우선 순위는 DMA 장치 내의 프로그램 가능한 상태 머신으로 프로그램되며, μPC에 의해 변경된다. 서두에 언급한 바와같이, 본 시스템은 상호 작용 서비스들을 제공하기 위해 의도되고, μPC(19)는 적어도 부분적으로 상호 작용 동작을 수행하도록 상호 작용 데이타에 응답할 것이다. 이러한 역할에 있어서, μPC(19)는 응용 저장 및 작업 메모리용으로 메모리(18)를 사용할 것이다. 이들의 예들에 있어서, 시스템 운영자는 μPC에 보다 많은 회수의 메모리 액세스를 제공하도록 메모리 액세스 우선 순위를 변경할 수 있다. 메모리 액세스 우선 순위를 재프로그램하는 것은 상호 작용 응용 명령들의 서브세트로서 포함될 수 있다.In this example, when in FEC Not Providing Data (FEC) mode, the smart card is provided with two-to-one access precedence for all other program processors. It should be recognized. This priority is programmed into a programmable state machine in the DMA device and changed by μPC. As mentioned at the outset, the present system is intended to provide interaction services, and the μPC 19 will respond to the interaction data to perform at least partially interactive operations. In this role, μPC 19 will use memory 18 for application storage and working memory. In these examples, the system operator can change the memory access priority to provide more number of memory accesses to μPC. Reprogramming the memory access priority may be included as a subset of interactive application instructions.

패킷들이 손실되었을 때 비디오 성분 신호 스트림에 매체 에러 코드들을 삽입하여, 특정 신호 엔트리 포인트가 데이타 스트림에서 발생할 때까지 압축 해제를 중지시키도록 비디오 신호 압축 해제기를 조절하는 이점이 있다. 비디오 패킷 어디에서 다음의 엔트리 포인트가 발생할지를 예측한다는 것은 비실용적이다. 가능한 고속으로 다음의 엔트리 포인트를 발견하기 위하여, 패킷이 손실되었다는 것을 검출한 후에 제 1 비디오 패킷의 시작에서 매체 에러 코드를 포함하는 것이 필요하다. 도 7의 회로는 모든 비디오 패킷의 시작에서 매체 에러 코드를 배치하고, 선행하는 어떠한 패킷도 손실되지 않은 경우 각각의 패킷들에서 매체 에러 코드를 삭제한다. 매체 에러 코드는, 암호 해독기로부터 도달하는 비디오 페이로드에 앞서 M 기입 사이클들 동안 메모리(18)에 기입함으로써, 현재의 비디오 패킷 페이로드용으로 보유된 제 1의 M 메모리 어드레스 위치들에 삽입된다. 동시에, 멀티플렉서(99)는 DMA(98)에 의해서 조절되어, 소스(100)로부터 메모리(18) I/O에 매체 에러 코드를 인가한다. M은 단지 매체 에러 코드를 저장하는데 필요한 메모리 장소들의 정수이다. 메모리가 8-비트 바이트들을 저장하고, 매체 에러 코드가 32비트라고 가정하면, M은 4와 같게 될 것이다.There is an advantage to inserting media error codes into the video component signal stream when packets are lost, thereby adjusting the video signal decompressor to stop decompression until a particular signal entry point occurs in the data stream. It is impractical to predict where the next entry point will occur in the video packet. In order to find the next entry point as fast as possible, it is necessary to include a media error code at the beginning of the first video packet after detecting that the packet has been lost. The circuit of Figure 7 places a media error code at the beginning of every video packet and deletes the media error code from each packet if no preceding packet is lost. The media error code is inserted in the first M memory address locations held for the current video packet payload by writing to memory 18 during M write cycles prior to the video payload arriving from the decryptor. At the same time, the multiplexer 99 is adjusted by the DMA 98 to apply a media error code from the source 100 to the memory 18 I / O. M is just an integer of the memory locations needed to store the media error code. Assuming the memory stores 8-bit bytes and the media error code is 32 bits, M will be equal to four.

메모리에 매체 에러 코드를 로딩하기 위한 어드레스들은 멀티플렉서(82) 및 멀티플렉서(85)를 통해 각각의 비디오 성분 서비스 레지스터(83)에 의해 제공된다. 메모리 장소들에 매체 에러 코드를 로딩(그렇지 않으면, 비디오 성분 데이타가 로딩)하기 위한 포인터 레지스터(83)로부터 제공된 제 1의 M개의 어드레스들은 통상적으로 비디오 헤드 포인터에 의해 생성되는 다음의 M개의 순차적인 어드레스들이 될 것이라는 것을 알 수 있을 것이다. 이들 동일한 어드레스들은 M-스테이지 지연 소자(84)에 결합되어, 매체 에러 코드의 최종 바이트가 메모리(18)에 저장된 이후에 바로, M개의 어드레스들 중 제1의 어드레스는 지연 소자(84)의 출력에서 이용될 수 있도록 한다.Addresses for loading the media error code into memory are provided by the respective video component service registers 83 through multiplexer 82 and multiplexer 85. The first M addresses provided from the pointer register 83 for loading the media error code into memory locations (otherwise the video component data) are typically the next M sequential generated by the video head pointer. It will be appreciated that the addresses will be. These same addresses are coupled to the M-stage delay element 84 such that immediately after the last byte of the media error code is stored in the memory 18, the first of the M addresses is the output of the delay element 84. To be used in.

메모리에 매체 에러 코드를 로딩하는 타이밍은 손실된 패킷의 결정과 일치한다. 패킷 에러 또는 손실 검출은, 현재의 패킷의 CC 및 HD 데이타에 응답하는 에러 검출기(101)에 의해 수행된다.The timing of loading the medium error code into memory is consistent with the determination of the lost packet. Packet error or loss detection is performed by the error detector 101 responsive to the CC and HD data of the current packet.

패킷 상실이 검출되면, 현재 패킷의 비디오 성분은, 다음 또는 (M+1)번째 어드레스 장소에서 시작하는 메모리(18)에 저장된다. 이는 적절한 레지스터(83)로부터 지연되지 않은 헤드 포인터들을 계속 통과시키도록 멀티플렉서(85)를 조절함으로써 달성된다. 대안으로, 패킷 손실이 검출되지 않으면, 현재 패킷의 비디오 성분의 제 1의 M 바이트들은 매체 에러 코드가 바로 이전에 저장되었던 메모리 장소들에 저장된다.If a packet loss is detected, the video component of the current packet is stored in memory 18 starting at the next or (M + 1) th address location. This is accomplished by adjusting the multiplexer 85 to continue passing non-delayed head pointers from the appropriate register 83. Alternatively, if no packet loss is detected, the first M bytes of the video component of the current packet are stored in memory locations where the media error code was stored just before.

패킷 에러 또는 손실 검출은 현재의 패킷의 CC 및 HD 데이타에 응답하는 에러 검출기(101)에 의해 수행된다. 검출기(101)는 1 단위 씩 이전 패킷의 CC와 다른지를 결정하기 위해 현재의 패킷에서 연속성 카운트 CC를 검사한다. 부가적으로, 현재 패킷의 TOGGLE 비트가 각각의 비디오 프레임에 대한 적절한 상태를 나타내는지를 결정하기 위해 검사된다. CC 값이 정확하지 않다면, 토글 비트의 상태는 검사된다. CC 및 TOGGLE 비트 중 하나 또는 이들 모두가 에러 상태인지에 따라, 제 1 또는 제 2 모드의 에러 정정이 각각 실행된다. CC 및 TOGGLE 비트 모두 에러가 있는 것으로 시작되는 제 2 모드에 있어서, 시스템은 화상층 헤더를 포함하는 패킷으로 리셋하도록 조절된다. 단지 CC만이 에러가 있는 경우의 제 1 모드에 있어서, 시스템은 슬라이스층 헤드를 포함하는 패킷으로 리셋하도록 조절된다. (슬라이스층은 프레임내의 압축된 데이타의 서브셋트이다.) 제 1 및 제 2 모드 모두에 있어서, 메모리에 기입된 매체 에러 코드는 각각의 페이로드에 보유되어 압축 해제기에 정정 동작을 실행할 것을 알려준다.Packet error or loss detection is performed by the error detector 101 responsive to the CC and HD data of the current packet. Detector 101 checks the continuity count CC in the current packet by one unit to determine if it is different from the CC of the previous packet. In addition, it is checked to determine if the TOGGLE bit of the current packet indicates an appropriate state for each video frame. If the CC value is not correct, the state of the toggle bit is checked. Depending on whether one or both of the CC and TOGGLE bits are in error state, error correction in the first or second mode is performed respectively. In a second mode in which both the CC and TOGGLE bits begin with an error, the system is adjusted to reset to a packet containing a picture layer header. In the first mode where only CC has an error, the system is adjusted to reset to the packet containing the slice layer head. (The slice layer is a subset of the compressed data in the frame.) In both the first and second modes, media error codes written to the memory are held in each payload to inform the decompressor to perform a corrective operation.

SCID 검출기, 암호 해독기, 어드레싱 회로, 조건부 액세스 필터 및 스마트 카드 인터페이스가 단일의 집적 회로에 모두 포함되도록 시스템을 분할하는 것이 특히 효율적이라는 것이 발견되었다. 이는 중요한 타이밍 제한을 초래할 수 있는 외부 경로의 수를 제한한다.It has been found that it is particularly efficient to partition the system so that the SCID detector, decryptor, addressing circuitry, conditional access filter and smart card interface are all contained in a single integrated circuit. This limits the number of external paths that can lead to significant timing limitations.

Claims (7)

인타이틀먼트 관리 및 제어 데이타를 포함하는 조건부 액세스 정보를 전송하는 방법에 있어서,A method of transmitting conditional access information including entitlement management and control data, the method comprising: 동일한 타입의 다수의 N-바이트 조건부 액세스 코드들을 형성하는 단계로서, 상기 다수의 N-바이트 조건부 코드들a 각각은 MPEG 시작 코드와 길이가 동일한, 상기 조건부 액세스 코드 형성 단계와,Forming a plurality of N-byte conditional access codes of the same type, wherein each of the plurality of N-byte conditional codes a has the same length as the MPEG start code; 상기 N-바이트 조건부 액세스 코드들 중 M개(여기서, M 및 N은 1보다 큰 정수들)의 상이한 N-바이트 조건부 액세스 코드들을 연결하는 단계와,Concatenating M of the N-byte conditional access codes, wherein M and N are integers greater than 1, and concatenating different N-byte conditional access codes; 상기 N-바이트 조건부 액세스 코드들 또는 이미 결정된 논리 상태를 갖는 특정한 N-바이트 조건부 액세스 코드 중 하나의 코드를 선택하는 단계와,Selecting one of the N-byte conditional access codes or a particular N-byte conditional access code having an already determined logical state; a) 상기 N-바이트 조건부 액세스 코드들 또는 상기 특정한 N-바이트 코드 중 상기 선택된 하나의 코드를 포함하고, b) 상기 M개의 상이한 N-바이트 조건부 액세스 코드들의 연결에 상기 선택된 코드를 연결하여, M+1개의 N-바이트 조건부 액세스 코드들의 연결을 형성하며, c) 상기 연결된 코드들을 상기 인타이틀먼트 관리 및 제어 데이타에 연결하는, 페이로드를 형성하는 단계와,a) comprising the selected one of the N-byte conditional access codes or the specific N-byte code, b) concatenating the selected code to a concatenation of the M different N-byte conditional access codes, M Forming a concatenation of +1 N-byte conditional access codes, c) forming a payload, connecting the concatenated codes to the entitlement management and control data; a) 인타이틀먼트 데이타를 포함하는 것으로서 트랜스포트 패킷을 식별하는 헤더, 및 b) 상기 페이로드를 갖는 트랜스포트 패킷을 형성하는 단계를 포함하는 조건부 액세스 정보 전송 방법.a) a header identifying a transport packet as containing entitlement data, and b) forming a transport packet with the payload. 제 1 항에 있어서,The method of claim 1, N-바이트들의 R개의 그룹들 모두가 이미 결정된 논리 상태의 비트들을 갖는 (M + 1) x N 바이트 코드[R, M, N 모두는 정수들이고, R x N은 (M+1) x N보다 작거나 같음]를 제공하는 단계를 더 포함하며,All of the R groups of N-bytes have (M + 1) x N byte codes [R, M, N all being integers, with bits of logical state already determined, and R x N is greater than Less than or equal to], 상기 페이로드를 형성하는 단계는:Forming the payload is: a) 상기 N-바이트 조건부 액세스 코드들 또는 모두 1 논리 상태인 N-바이트 코드 중 하나의 코드를 선택하는 단계와,a) selecting one of said N-byte conditional access codes or an N-byte code that is all in one logical state; b) 상기 선택된 코드를 상기 M개의 상이한 N-바이트 조건부 액세스 코드들에 연결하는 단계와,b) connecting the selected code to the M different N-byte conditional access codes; c) 상기 (M + 1) x N 바이트 코드 또는 상기 연결된 코드를 선택하는 단계와,c) selecting the (M + 1) x N byte code or the concatenated code; d) 상기 인타이틀먼트 관리 및 제어 데이타와 최종 선택된 코드를 연결하는 단계를 포함하는, 조건부 액세스 정보 전송 방법.d) concatenating said entitlement management and control data with a last selected code. 인타이틀먼트 데이타를 포함하는 것으로서 패킷들을 식별하는 헤더 및 다수의 인접하게 연결된 N-바이트 조건부 액세스 코드들(N은 1보다 큰 정수)을 포함하는 페이로드 헤더와 상기 인타이틀먼트 데이타를 포함하는 페이로드를 갖는 신호 패킷들에 포함된 상기 인타이틀먼트 데이타를 포함하는 패킷 신호를 처리하기 위한 패킷 신호 수신기내의 장치에 있어서,A payload header comprising a header identifying the packets as containing entitlement data and a plurality of contiguously concatenated N-byte conditional access codes (where N is an integer greater than 1) and a payload containing the entitlement data An apparatus in a packet signal receiver for processing a packet signal comprising the entitlement data contained in signal packets having a load, the apparatus comprising: 상기 패킷 신호를 인가하는 수단과,Means for applying the packet signal; 상기 패킷 신호에 응답하여, 인타이틀먼트 데이타를 포함하는 신호 패킷들을 식별하고, 식별된 패킷들로부터 인타이틀먼트 데이타 페이로드들을 추출하는 트랜스포트 처리기와,A transport processor for responsive to the packet signal, identifying signal packets containing entitlement data, and extracting entitlement data payloads from the identified packets; 추출된 인타이틀먼트 데이타 페이로드들을 저장하는 메모리 수단과,Memory means for storing the extracted entitlement data payloads; 가입자 특정 또는 가입자 그룹 N-바이트 조건부 액세스 코드들에 대해 추출된 인타이틀먼트 데이타 페이로드들의 페이로드 헤더 데이타를 검사하도록 배열된 조건부 액세스 필터로서, 배타적인 N-바이트 데이타 그룹들에서, 상기 다수의 인접하게 연결된 N-바이트 조건부 액세스 코드들을 포함하는 상기 페이로드 헤더 데이터와 상기 수신기내에 저장된 N-바이트 조건부 액세스 코드를 비교하여, 상기 배타적인 N-바이트 그룹들 중 한 그룹과 상기 N-바이트 조건부 액세스 코드의 정합을 이루면, 상기 인타이틀먼트 데이타를 상기 메모리 수단에 기록하도록 인에이블 신호를 발생하는 비교기를 구비하는 상기 조건부 액세스 필터를 포함하는, 장치.A conditional access filter arranged to examine payload header data of extracted entitlement data payloads for subscriber specific or subscriber group N-byte conditional access codes, wherein, in exclusive N-byte data groups, the plurality of Comparing the payload header data including adjacently coupled N-byte conditional access codes with the N-byte conditional access code stored in the receiver, one of the exclusive N-byte groups and the N-byte conditional access And a conditional access filter having a comparator for generating an enable signal to write the entitlement data to the memory means once a code is matched. 제 3 항에 있어서,The method of claim 3, wherein 상기 조건부 액세스 필터는,The conditional access filter, N-바이트 조건부 액세스 코드를 저장하는 레지스터와,A register that stores an N-byte conditional access code, 비교기를 포함하는 수단을 포함하고,Means for including a comparator, 상기 비교기는,The comparator, a) 상기 인타이틀먼트 데이타 페이로드의 제 1의 N-바이트들이 모두 1 논리 상태인 조건부 액세스 코드를 포함하는지를 결정하고,a) determining whether the first N-bytes of the entitlement data payload include a conditional access code that is all in one logical state, b) 상기 제1의 N-바이트들이 모두 1 논리 상태인 코드를 포함하면, 상기 가입자 특정 조건부 액세스 코드의 N-1 바이트들을 배타적인 N-바이트 그룹들의 상기 인타이틀먼트 데이타 페이로드와 비교하고, 상기 가입자 특정 조건부 액세스 코드의 N-1 바이트들이 상기 배타적인 N-바이트 그룹들 중 어느 한 그룹의 N-1 바이트들과 정합을 이루면, 상기 인타이틀먼트 데이타를 상기 인타이틀먼트 데이타 처리기에 인가하도록 인에이블 신호를 발생하고,b) if the first N-bytes contain a code that is all in one logical state, compare the N-1 bytes of the subscriber specific conditional access code with the entitlement data payload of exclusive N-byte groups, If the N-1 bytes of the subscriber specific conditional access code match the N-1 bytes of any of the exclusive N-byte groups, apply the entitlement data to the entitlement data processor. Generate an enable signal, c) 그렇지 않으면, 배타적인 N-바이트 그룹들내의 상기 인타이틀먼트 데이타 페이로드를 상기 레지스터에 포함된 상기 N-바이트의 가입자 특정 조건부 액세스 코드와 비교하고, 상기 가입자 특정 조건부 액세스 코드가 상기 배타적인 N-바이트 그룹들 중 어느 한 그룹과 정합을 이루면, 상기 인타이틀먼트 데이타를 상기 인타이틀먼트 데이타 처리기에 인가하는 것을 특징으로 하는, 장치.c) otherwise, compare the entitlement data payload in exclusive N-byte groups with the N-byte subscriber specific conditional access code contained in the register, and wherein the subscriber specific conditional access code is And if the match is with any one of the N-byte groups, apply the entitlement data to the entitlement data processor. 제 4 항에 있어서,The method of claim 4, wherein 상기 조건부 액세스 필터는, 상기 인타이틀먼트 데이타 페이로드내의 상기 조건부 액세스 코드의 미리 결정된 수의 N-바이트 그룹들이 동일한 논리 상태인지를 검출하여, 동일한 논리 상태이면, 상기 인타이틀먼트 데이타 페이로드를 상기 인타이틀먼트 데이타 처리기에 인가하는 검출기를 포함하는 것을 특징으로 하는, 장치.The conditional access filter detects whether a predetermined number of N-byte groups of the conditional access code in the entitlement data payload are in the same logical state and, if the same logical state, recalls the entitlement data payload. And a detector for applying to an entitlement data processor. 제 4 항에 있어서,The method of claim 4, wherein 상기 조건부 액세스 필터는, 상기 인타이틀먼트 데이타 페이로드내의 상기 조건부 액세스 코드의 미리 결정된 수의 N-바이트 그룹들이 모두 0 논리 상태인지를 검출하여, 0 논리 상태이면, 상기 인타이틀먼트 데이타 페이로드를 상기 인타이틀먼트 데이타 처리기에 인가하는 검출기를 포함하는 것을 특징으로 하는, 장치.The conditional access filter detects whether a predetermined number of N-byte groups of the conditional access code in the entitlement data payload are all in a zero logical state and, if it is in a zero logical state, the entitlement data payload. And a detector for applying to the entitlement data processor. 제 4 항에 있어서,The method of claim 4, wherein N-바이트 가입자 특정 조건부 액세스 코드를 저장하는 상기 레지스터는 N개의 1 바이트 레지스터들을 포함하고,The register storing an N-byte subscriber specific conditional access code comprises N one byte registers, 상기 조건부 액세스 필터는,The conditional access filter, 상기 N개의 1바이트 레지스터들에 각각 결합된 N개의 입력 포트들을 갖는 멀티플렉서와,A multiplexer having N input ports each coupled to the N one byte registers, 자신의 입력 포트들을 주사하도록 상기 멀티플렉서를 조절하여 상기 N개의 1 바이트 레지스터들로부터 데이타를 상기 비교기에 순차적으로 제공하는 카운팅 회로를 더 포함하는, 장치.And a counting circuit that adjusts the multiplexer to scan its input ports to sequentially provide data to the comparator from the N one byte registers.
KR1019960706068A 1994-04-22 1995-03-15 Conditional Access information arrangement KR100384212B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2002-7016014A KR100400800B1 (en) 1994-04-22 1995-03-15 A method for processing a packetized transport stream

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/232,794 US5619501A (en) 1994-04-22 1994-04-22 Conditional access filter as for a packet video signal inverse transport system
US232,794 1994-04-22

Related Child Applications (2)

Application Number Title Priority Date Filing Date
KR10-2000-7002639A Division KR100392025B1 (en) 1994-04-22 1995-03-15 Conditional Access information arrangement
KR10-2002-7016014A Division KR100400800B1 (en) 1994-04-22 1995-03-15 A method for processing a packetized transport stream

Publications (2)

Publication Number Publication Date
KR970703083A KR970703083A (en) 1997-06-10
KR100384212B1 true KR100384212B1 (en) 2003-08-21

Family

ID=22874615

Family Applications (3)

Application Number Title Priority Date Filing Date
KR10-2000-7002639A KR100392025B1 (en) 1994-04-22 1995-03-15 Conditional Access information arrangement
KR1019960706068A KR100384212B1 (en) 1994-04-22 1995-03-15 Conditional Access information arrangement
KR10-2002-7016014A KR100400800B1 (en) 1994-04-22 1995-03-15 A method for processing a packetized transport stream

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR10-2000-7002639A KR100392025B1 (en) 1994-04-22 1995-03-15 Conditional Access information arrangement

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR10-2002-7016014A KR100400800B1 (en) 1994-04-22 1995-03-15 A method for processing a packetized transport stream

Country Status (14)

Country Link
US (4) US5619501A (en)
EP (2) EP0756801B1 (en)
JP (26) JP4316008B2 (en)
KR (3) KR100392025B1 (en)
CN (3) CN1158871C (en)
CA (1) CA2188127C (en)
DE (1) DE69505369T2 (en)
ES (2) ES2162397T3 (en)
HK (2) HK1005403A1 (en)
MX (1) MX9604992A (en)
MY (2) MY118737A (en)
SG (1) SG71707A1 (en)
TW (1) TW237582B (en)
WO (1) WO1995029560A1 (en)

Families Citing this family (132)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6292568B1 (en) 1966-12-16 2001-09-18 Scientific-Atlanta, Inc. Representing entitlements to service in a conditional access system
US7168084B1 (en) 1992-12-09 2007-01-23 Sedna Patent Services, Llc Method and apparatus for targeting virtual objects
US9286294B2 (en) 1992-12-09 2016-03-15 Comcast Ip Holdings I, Llc Video and digital multimedia aggregator content suggestion engine
US5619501A (en) * 1994-04-22 1997-04-08 Thomson Consumer Electronics, Inc. Conditional access filter as for a packet video signal inverse transport system
US5875303A (en) * 1994-10-11 1999-02-23 U.S. Philips Corporation Method and arrangement for transmitting an interactive audiovisual program
US6246767B1 (en) 1995-04-03 2001-06-12 Scientific-Atlanta, Inc. Source authentication of download information in a conditional access system
US6937729B2 (en) 1995-04-03 2005-08-30 Scientific-Atlanta, Inc. Representing entitlements to service in a conditional access system
US6560340B1 (en) 1995-04-03 2003-05-06 Scientific-Atlanta, Inc. Method and apparatus for geographically limiting service in a conditional access system
US7224798B2 (en) 1995-04-03 2007-05-29 Scientific-Atlanta, Inc. Methods and apparatus for providing a partial dual-encrypted stream in a conditional access overlay system
US6424717B1 (en) 1995-04-03 2002-07-23 Scientific-Atlanta, Inc. Encryption devices for use in a conditional access system
US6252964B1 (en) 1995-04-03 2001-06-26 Scientific-Atlanta, Inc. Authorization of services in a conditional access system
US8548166B2 (en) * 1995-04-03 2013-10-01 Anthony J. Wasilewski Method for partially encrypting program data
US5920572A (en) * 1995-06-30 1999-07-06 Divicom Inc. Transport stream decoder/demultiplexer for hierarchically organized audio-video streams
US7562392B1 (en) * 1999-05-19 2009-07-14 Digimarc Corporation Methods of interacting with audio and ambient music
FR2740636B1 (en) * 1995-10-31 1997-11-28 Thomson Multimedia Sa PROCESS ALLOWING THE CASCADE OF DETACHABLE CONDITIONAL ACCESS MODULES, CIRCUIT FOR INSERTING A PREDEFINED SEQUENCE AND DETECTION CIRCUIT OF THE SAID SEQUENCE FOR THE IMPLEMENTATION OF THE PROCEDURE
US5893132A (en) 1995-12-14 1999-04-06 Motorola, Inc. Method and system for encoding a book for reading using an electronic book
US5835493A (en) * 1996-01-02 1998-11-10 Divicom, Inc. MPEG transport stream remultiplexer
KR100192504B1 (en) * 1996-01-05 1999-06-15 구자홍 The data input-output apparatus of mpeg2 transport decoder
FR2751154B1 (en) * 1996-07-15 1998-09-11 Schlumberger Ind Sa INFORMATION DIVERSIFICATION SYSTEM IN A PRODUCT OR SERVICE DISTRIBUTION NETWORK
US6366326B1 (en) * 1996-08-01 2002-04-02 Thomson Consumer Electronics Inc. System for acquiring, processing, and storing video data and program guides transmitted in different coding formats
US5946045A (en) * 1996-08-01 1999-08-31 Thomson Consumer Electronics, Inc. System for forming program guides and video data for storage and transmission in different coding formats
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
DE19710972A1 (en) * 1997-03-17 1998-10-01 Ulrich Kretzschmar Method and device for data transmission
ID23380A (en) * 1997-03-21 2000-04-20 Canal & Siciete Anonyme METHODS AND APARATUS FOR PREVENTING CHEAT ACCESS IN REQUIRED ACCESS SYSTEMS
WO1998044683A1 (en) * 1997-04-01 1998-10-08 Matsushita Electric Industrial Co., Ltd. Digital communication system, transmitter, and data selector
BR9714607B1 (en) * 1997-04-14 2011-12-13 method for automatically forming a composite program guide for display from comparing data from multiple sources.
JP3356203B2 (en) * 1997-06-09 2002-12-16 日本電気株式会社 MPEG2 transport stream separation method and circuit
US6462791B1 (en) * 1997-06-30 2002-10-08 Intel Corporation Constrained motion estimation and compensation for packet loss resiliency in standard based codec
EP0893921A1 (en) * 1997-07-25 1999-01-27 Scientific Atlanta, Inc. Programmable two-level packet filter
US5948136A (en) * 1997-07-30 1999-09-07 Sony Corporation Hardware authentication mechanism for transmission of data between devices on an IEEE 1394-1995 serial bus network
JP2001513587A (en) * 1997-07-31 2001-09-04 サイエンティフィック−アトランタ・インコーポレーテッド Verification of source of information program in conditional access system
EP1189438A3 (en) * 1997-08-01 2009-04-22 Scientific-Atlanta, Inc. Method and apparatus for geographically limiting service in a conditional access system
AU8823698A (en) * 1997-08-01 1999-02-22 Scientific-Atlanta, Inc. Encryption devices for use in a conditional access system
JP2002506296A (en) * 1997-08-01 2002-02-26 サイエンティフィック−アトランタ・インコーポレーテッド Creating Services in the Conditional Access System
EP1193974A3 (en) * 1997-08-01 2009-04-08 Scientific-Atlanta, Inc. Representing entitlements to service in a conditional access system
JP2003521818A (en) * 1997-08-01 2003-07-15 サイエンティフィック−アトランタ, インコーポレイテッド Authentication of services in conditional access systems
US7515712B2 (en) 1997-08-01 2009-04-07 Cisco Technology, Inc. Mechanism and apparatus for encapsulation of entitlement authorization in conditional access system
AU8679898A (en) * 1997-08-01 1999-02-22 Scientific-Atlanta, Inc. Method and apparatus for geographically limiting service in a conditional accesssystem
US6275507B1 (en) 1997-09-26 2001-08-14 International Business Machines Corporation Transport demultiplexor for an MPEG-2 compliant data stream
US6091772A (en) * 1997-09-26 2000-07-18 International Business Machines, Corporation Black based filtering of MPEG-2 compliant table sections
US6072771A (en) * 1997-09-26 2000-06-06 International Business Machines Corporation Detection of errors in table data
US6115422A (en) * 1997-09-26 2000-09-05 International Business Machines Corporation Protocol and procedure for time base change in an MPEG-2 compliant datastream
US6356567B2 (en) 1997-09-26 2002-03-12 International Business Machines Corporation Embedded clock recovery and difference filtering for an MPEG-2 compliant transport stream
US6229801B1 (en) 1997-09-26 2001-05-08 International Business Machines Corporation Delivery of MPEG2 compliant table data
US6181706B1 (en) 1997-09-26 2001-01-30 International Business Machines Corporation Common buffer for multiple streams and control registers in an MPEG-2 compliant transport register
US6088357A (en) * 1997-09-26 2000-07-11 International Business Machines Corporation Auxiliary transport assist processor especially for an MPEG-2 compliant decoder
US6078594A (en) * 1997-09-26 2000-06-20 International Business Machines Corporation Protocol and procedure for automated channel change in an MPEG-2 compliant datastream
US6195403B1 (en) 1997-09-26 2001-02-27 International Business Machines Corporation Pulse generator for a voltage controlled oscillator
DE19745969C2 (en) * 1997-10-17 2002-03-07 Deutsche Telekom Ag Method and device for forwarding certain data, in particular reception rights in a pay TV terminal
JP3389843B2 (en) * 1997-10-17 2003-03-24 日本電気株式会社 Digital broadcast receiving system in information processing device
US6721329B1 (en) * 1997-11-04 2004-04-13 Koninklijke Philips Electronics N.V. Communication network using different transmission properties
KR100252972B1 (en) * 1997-12-31 2000-04-15 구자홍 Conditional access system
US6292490B1 (en) 1998-01-14 2001-09-18 Skystream Corporation Receipts and dispatch timing of transport packets in a video program bearing stream remultiplexer
US6351471B1 (en) 1998-01-14 2002-02-26 Skystream Networks Inc. Brandwidth optimization of video program bearing transport streams
US6195368B1 (en) 1998-01-14 2001-02-27 Skystream Corporation Re-timing of video program bearing streams transmitted by an asynchronous communication link
US6351474B1 (en) * 1998-01-14 2002-02-26 Skystream Networks Inc. Network distributed remultiplexer for video program bearing transport streams
US6246701B1 (en) 1998-01-14 2001-06-12 Skystream Corporation Reference time clock locking in a remultiplexer for video program bearing transport streams
US6263466B1 (en) * 1998-03-05 2001-07-17 Teledesic Llc System and method of separately coding the header and payload of a data packet for use in satellite data communication
EP0964572A1 (en) * 1998-06-08 1999-12-15 CANAL+ Société Anonyme Decoder and security module for a digital transmission system
US6535919B1 (en) 1998-06-29 2003-03-18 Canon Kabushiki Kaisha Verification of image data
FR2781324B1 (en) * 1998-07-20 2000-09-08 Sagem METHOD FOR TECHNICAL UPDATING OF A PACKET BROADCAST DATA RECEIVER AND REMOVABLE COMPUTER MEDIA FOR IMPLEMENTING THE METHOD
US9924234B2 (en) 1998-07-23 2018-03-20 Comcast Ip Holdings I, Llc Data structure and methods for providing an interactive program
US6754905B2 (en) 1998-07-23 2004-06-22 Diva Systems Corporation Data structure and methods for providing an interactive program guide
BR9912385A (en) 1998-07-23 2002-01-15 Diva Systems Corp User interface generated on a head end, interactive program guide, and processes for generating and distributing a user interface, and interacting with an interactive program guide
JP2000092118A (en) * 1998-09-08 2000-03-31 Hitachi Ltd Programmable network
FR2783335B1 (en) * 1998-09-11 2000-10-13 Thomson Multimedia Sa METHOD FOR LOADING CONDITIONAL ACCESS SYSTEM FEES AND DEVICE IMPLEMENTING THE METHOD
CN1295763B (en) * 1999-01-28 2010-06-23 爱迪德艾恩德霍芬公司 Transmission system
FI106593B (en) * 1999-02-15 2001-02-28 Valtion Teknillinen IP multicast service without return connection
JP4356131B2 (en) * 1999-02-19 2009-11-04 ソニー株式会社 Digital broadcast transmission method and digital broadcast transmission apparatus
JP2000295594A (en) * 1999-04-09 2000-10-20 Pioneer Electronic Corp Viewing control system for catv
US6711620B1 (en) * 1999-04-14 2004-03-23 Matsushita Electric Industrial Co. Event control device and digital broadcasting system
US7096487B1 (en) 1999-10-27 2006-08-22 Sedna Patent Services, Llc Apparatus and method for combining realtime and non-realtime encoded content
US6621870B1 (en) * 1999-04-15 2003-09-16 Diva Systems Corporation Method and apparatus for compressing video sequences
US6904610B1 (en) 1999-04-15 2005-06-07 Sedna Patent Services, Llc Server-centric customized interactive program guide in an interactive television environment
US6754271B1 (en) 1999-04-15 2004-06-22 Diva Systems Corporation Temporal slice persistence method and apparatus for delivery of interactive program guide
WO2000074385A2 (en) * 1999-05-27 2000-12-07 University Of Maryland, College Park 3d wavelet based video codec with human perceptual model
US6804782B1 (en) 1999-06-11 2004-10-12 General Instrument Corporation Countermeasure to power attack and timing attack on cryptographic operations
US6317463B1 (en) * 1999-06-14 2001-11-13 Mitsubishi Electric Research Laboratories, Inc. Method and apparatus for filtering data-streams
US6621817B1 (en) 1999-07-06 2003-09-16 Texas Instruments Incorporated Transport packet parser
UA69439C2 (en) * 1999-07-09 2004-09-15 Награвізьйон Са System for performing purchase being influenced by the impulse for pay television
US6715076B1 (en) * 1999-10-21 2004-03-30 Koninklijke Philips Electronics N.V. Video signal authentication system
CA2388606C (en) 1999-10-27 2009-12-29 Diva Systems Corporation Picture-in-picture and multiple video streams using slice-based encoding
US9668011B2 (en) * 2001-02-05 2017-05-30 Avago Technologies General Ip (Singapore) Pte. Ltd. Single chip set-top box system
US8284845B1 (en) * 2000-01-24 2012-10-09 Ati Technologies Ulc Method and system for handling data
JP2001251568A (en) * 2000-03-02 2001-09-14 Pioneer Electronic Corp Device and method for displaying program guide
US6898285B1 (en) * 2000-06-02 2005-05-24 General Instrument Corporation System to deliver encrypted access control information to support interoperability between digital information processing/control equipment
AU2001292816A1 (en) * 2000-09-21 2002-04-02 Aaron E. Zydonik Satellite television distribution system
FI111423B (en) * 2000-11-28 2003-07-15 Nokia Corp A system for securing post-handover communications
US8103877B2 (en) 2000-12-21 2012-01-24 Digimarc Corporation Content identification and electronic tickets, coupons and credits
JP2002247543A (en) * 2001-02-21 2002-08-30 Sony Corp Transmitting device and method, receiving device and method, recording medium and program
US7908628B2 (en) 2001-08-03 2011-03-15 Comcast Ip Holdings I, Llc Video and digital multimedia aggregator content coding and formatting
US7793326B2 (en) 2001-08-03 2010-09-07 Comcast Ip Holdings I, Llc Video and digital multimedia aggregator
US8880709B2 (en) * 2001-09-12 2014-11-04 Ericsson Television Inc. Method and system for scheduled streaming of best effort data
US7599369B2 (en) * 2001-09-27 2009-10-06 Broadcom Corporation Apparatus and methods for hardware payload header suppression, expansion, and verification in a DOCSIS network
EP1320006A1 (en) * 2001-12-12 2003-06-18 Canal+ Technologies Société Anonyme Processing data
FR2835371B1 (en) * 2002-01-31 2004-04-16 Viaccess Sa METHOD AND DEVICE FOR TRANSMITTING ACCESS MESSAGE MANAGEMENT MESSAGE
US20040199565A1 (en) * 2003-02-21 2004-10-07 Visharam Mohammed Zubair Method and apparatus for supporting advanced coding formats in media files
US20030163477A1 (en) * 2002-02-25 2003-08-28 Visharam Mohammed Zubair Method and apparatus for supporting advanced coding formats in media files
US7613727B2 (en) * 2002-02-25 2009-11-03 Sont Corporation Method and apparatus for supporting advanced coding formats in media files
US7552343B2 (en) * 2002-03-19 2009-06-23 Nxp B.V. Conditional access control
US20040006575A1 (en) * 2002-04-29 2004-01-08 Visharam Mohammed Zubair Method and apparatus for supporting advanced coding formats in media files
US7831990B2 (en) * 2002-04-29 2010-11-09 Sony Corporation Generic adaptation layer for JVT video
US20030208777A1 (en) * 2002-05-02 2003-11-06 Daniel Danker Addressed broadcast messaging
US20050068952A1 (en) * 2002-05-24 2005-03-31 Deiss Michael S. Conditional access filter as for a packet video signal inverse transport system
AU2003251491A1 (en) * 2002-06-07 2003-12-22 Yahoo. Inc. Method and system for controling and monitoring a web-cast
CA2473767C (en) 2002-11-20 2012-10-23 Matsushita Electric Industrial Co., Ltd. Moving picture prediction method, moving picture coding method and apparatus, and moving picture decoding method and apparatus
US7000241B2 (en) * 2002-11-21 2006-02-14 The Directv Group, Inc. Method and apparatus for minimizing conditional access information overhead while ensuring conditional access information reception in multi-tuner receivers
US20040193289A1 (en) * 2002-12-31 2004-09-30 Shi Chen Decoding system and method
US7930711B2 (en) * 2003-03-06 2011-04-19 Wegener Communications, Inc. Apparatus and method for addressing control in a network for distributed data
US7970056B2 (en) * 2003-06-26 2011-06-28 Lsi Corporation Method and/or apparatus for decoding an intra-only MPEG-2 stream composed of two separate fields encoded as a special frame picture
US7693222B2 (en) * 2003-08-13 2010-04-06 Ericsson Television Inc. Method and system for re-multiplexing of content-modified MPEG-2 transport streams using PCR interpolation
US8396216B2 (en) 2003-11-21 2013-03-12 Howard G. Pinder Partial dual-encryption using program map tables
JP4631289B2 (en) * 2004-02-23 2011-02-16 パナソニック株式会社 Communications system
US7447254B1 (en) * 2004-03-25 2008-11-04 Cypress Semiconductor Corp. Self-correlating pseudo-noise pairing
US7543317B2 (en) * 2004-08-17 2009-06-02 The Directv Group, Inc. Service activation of set-top box functionality using broadcast conditional access system
JP4690696B2 (en) * 2004-10-29 2011-06-01 株式会社東芝 Digital broadcast receiving apparatus and method
US20060098739A1 (en) * 2004-11-09 2006-05-11 Lsi Logic Corporation Video frame encoder driven by repeat decisions
US7420616B2 (en) * 2004-12-07 2008-09-02 Lsi Corporation Video encoder with repeat field to repeat frame conversion
DE102005015402A1 (en) * 2005-02-02 2006-08-03 Rohde & Schwarz Sit Gmbh Data container e.g. for telecommunications system, assigns useful data to equipment or system with identification data zone
US20070079342A1 (en) * 2005-09-30 2007-04-05 Guideworks, Llc Systems and methods for managing local storage of on-demand content
US7756194B1 (en) 2005-11-04 2010-07-13 Cypress Semiconductor Corporation Circuit and method for decoding code phase modulated signals
US7796694B1 (en) 2005-11-04 2010-09-14 Cypress Semiconductor Corporation Circuit and method or encoding DSSS signals
US8832773B2 (en) * 2006-01-17 2014-09-09 Broadcom Corporation System and method for transport PID broadcast scheme
US8775319B2 (en) 2006-05-15 2014-07-08 The Directv Group, Inc. Secure content transfer systems and methods to operate the same
EP2091256A1 (en) * 2008-02-18 2009-08-19 Nagravision S.A. Method for the removal of artefacts from a transmitted digital audio/video signal
US9414031B2 (en) 2008-11-26 2016-08-09 Echostar Technologies L.L.C. Account-specific encryption key
US8140792B2 (en) * 2009-02-25 2012-03-20 International Business Machines Corporation Indirectly-accessed, hardware-affine channel storage in transaction-oriented DMA-intensive environments
US8683095B1 (en) * 2010-06-02 2014-03-25 Marvell International Ltd Packet identification tracker
US9154813B2 (en) 2011-06-09 2015-10-06 Comcast Cable Communications, Llc Multiple video content in a composite video stream
GB2509759A (en) * 2013-01-14 2014-07-16 Sony Corp Receiving audio/visual content-related non-viewing information via unused transmission channels
DE102017208823A1 (en) * 2017-05-24 2018-11-29 Wago Verwaltungsgesellschaft Mbh Initialization of a local bus
CN113518259B (en) * 2021-05-25 2023-06-09 龙迅半导体(合肥)股份有限公司 Data processing method and device

Family Cites Families (83)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3970989A (en) * 1974-03-06 1976-07-20 Ontel Corporation Data transfer error check
DE3069762D1 (en) * 1980-08-26 1985-01-17 Ibm System for the retransmission of incorrectly received numbered frames in a data transmission system
US4371963A (en) * 1980-12-24 1983-02-01 Ncr Corporation Method and apparatus for detecting and correcting errors in a memory
US4965825A (en) * 1981-11-03 1990-10-23 The Personalized Mass Media Corporation Signal processing apparatus and methods
US4637023A (en) * 1983-02-14 1987-01-13 Prime Computer, Inc. Digital data error correction method and apparatus
US4547804A (en) * 1983-03-21 1985-10-15 Greenberg Burton L Method and apparatus for the automatic identification and verification of commercial broadcast programs
EP0151147B1 (en) * 1983-07-22 1988-04-20 Independent Broadcasting Authority Security system for television signal encryption
AU559311B2 (en) * 1984-02-15 1987-03-05 Matsushita Electric Industrial Co., Ltd. Pay tv charge/time data display
JPH0619913B2 (en) * 1984-03-30 1994-03-16 パイオニア株式会社 Error correction method for data carried in video format signal
JPH0691526B2 (en) * 1985-03-08 1994-11-14 株式会社東芝 Communications system
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
US4937866A (en) * 1986-08-13 1990-06-26 U.S. Philips Corporation System for decoding transmitted scrambled signals
US4829589A (en) * 1987-06-02 1989-05-09 Kabushiki Kaisha Toshiba Anti-tapping system
US5208856A (en) * 1988-12-23 1993-05-04 Laboratoire Europeen De Recherches Electroniques Avancees Scrambling and unscrambling method for composite video signals and implementing device
US5319453A (en) * 1989-06-22 1994-06-07 Airtrax Method and apparatus for video signal encoding, decoding and monitoring
US5335233A (en) * 1990-12-31 1994-08-02 International Business Machines Corporation Data packet format
US5430738A (en) * 1991-01-31 1995-07-04 Pioneer Electronic Corporation Information transmission system for transmitting a digital information signal divided into packets with an information signal error diagnosis and correction function
US5168356A (en) * 1991-02-27 1992-12-01 General Electric Company Apparatus for segmenting encoded video signal for transmission
TW237589B (en) * 1991-02-27 1995-01-01 Gen Electric
US5247363A (en) * 1992-03-02 1993-09-21 Rca Thomson Licensing Corporation Error concealment apparatus for hdtv receivers
US5289276A (en) * 1992-06-19 1994-02-22 General Electric Company Method and apparatus for conveying compressed video data over a noisy communication channel
EP0582122B1 (en) * 1992-07-21 1999-03-24 Matsushita Electric Industrial Co., Ltd. Scramble apparatus and descramble apparatus
ATE183352T1 (en) * 1992-12-09 1999-08-15 Discovery Communicat Inc IMPROVED TOP-UP TERMINAL FOR CABLE TELEVISION DISTRIBUTION SYSTEMS
US5333135A (en) * 1993-02-01 1994-07-26 North American Philips Corporation Identification of a data stream transmitted as a sequence of packets
US5414694A (en) * 1993-02-19 1995-05-09 Advanced Micro Devices, Inc. Address tracking over repeater based networks
US5406626A (en) * 1993-03-15 1995-04-11 Macrovision Corporation Radio receiver for information dissemenation using subcarrier
US5285497A (en) * 1993-04-01 1994-02-08 Scientific Atlanta Methods and apparatus for scrambling and unscrambling compressed data streams
US5381181A (en) * 1993-05-13 1995-01-10 Thomson Consumer Electronics, Inc. Clock recovery apparatus as for a compressed video signal
US5376969A (en) * 1993-11-15 1994-12-27 Rca Thomson Licensing Corporation Method and apparatus for conveying compressed video data over a noisy communication channel
US5583562A (en) * 1993-12-03 1996-12-10 Scientific-Atlanta, Inc. System and method for transmitting a plurality of digital services including imaging services
US5420866A (en) * 1994-03-29 1995-05-30 Scientific-Atlanta, Inc. Methods for providing conditional access information to decoders in a packet-based multiplexed communications system
US5475688A (en) * 1994-04-22 1995-12-12 Thomson Consumer Electronics, Inc. Media error code generation as for a video inverse transport processor
US5619501A (en) * 1994-04-22 1997-04-08 Thomson Consumer Electronics, Inc. Conditional access filter as for a packet video signal inverse transport system
US5521979A (en) * 1994-04-22 1996-05-28 Thomson Consumer Electronics, Inc. Packet video signal inverse transport system
US5473609A (en) * 1994-05-26 1995-12-05 Thomson Consumer Electronics, Inc. Method and apparatus for processing a conditional access program guide as for a satellite TV service
JP3437291B2 (en) * 1994-11-14 2003-08-18 キヤノン株式会社 Reproduction device and reproduction method
US5959659A (en) * 1995-11-06 1999-09-28 Stellar One Corporation MPEG-2 transport stream decoder having decoupled hardware architecture
US5838873A (en) * 1996-05-31 1998-11-17 Thomson Consumer Electronics, Inc. Packetized data formats for digital data storage media
WO1998000952A1 (en) * 1996-07-02 1998-01-08 Sony Corporation Information transmitter and information transmitting method
JP4147592B2 (en) * 1996-08-06 2008-09-10 ソニー株式会社 Packet processing method, recording method, and recording system
JPH10154373A (en) * 1996-09-27 1998-06-09 Sony Corp Data decoding system and method thereof, transmission unit and method thereof and receiver device and method thereof
US5878135A (en) * 1996-11-27 1999-03-02 Thomson Consumer Electronics, Inc. Decoding system for processing encrypted broadcast, cable or satellite video data
US6542518B1 (en) * 1997-03-25 2003-04-01 Sony Corporation Transport stream generating device and method, and program transmission device
JPH10290440A (en) * 1997-04-14 1998-10-27 Matsushita Electric Ind Co Ltd Method, device for transmitting digital broadcast and digital broadcast reproducing device
US6021440A (en) * 1997-05-08 2000-02-01 International Business Machines Corporation Method and apparatus for coalescing and packetizing data
KR100233244B1 (en) * 1997-07-10 1999-12-01 정선종 The transport stream multiplexing apparatus having multiple stream
US6229801B1 (en) * 1997-09-26 2001-05-08 International Business Machines Corporation Delivery of MPEG2 compliant table data
US6377588B1 (en) * 1997-11-25 2002-04-23 Nec Corporation Method and apparatus for reducing jitter of a program clock reference in a transport stream of MPEG over ATM, and MPEG decoder
GB2332345B (en) * 1997-12-09 2002-12-11 Sony Uk Ltd A digital video receiver a conditional access module and a method of transmitting data therebetween
US6456782B1 (en) * 1997-12-27 2002-09-24 Sony Corporation Data processing device and method for the same
JPH11205696A (en) * 1998-01-20 1999-07-30 Sony Corp Video transmitting device and video transmitting method
JPH11252550A (en) * 1998-03-02 1999-09-17 Sony Corp Digital signal coder, digital signal decoder, digital signal transmitter and its method
JP4277142B2 (en) * 1998-03-26 2009-06-10 ソニー株式会社 Receiver
US6466586B1 (en) * 1998-03-31 2002-10-15 Nortel Networks Limited Digital subscriber line framing structure supporting imbedded rate adaptive synchronous and asynchronous traffic
JP3183399B2 (en) * 1998-04-23 2001-07-09 日本電気株式会社 Image processing apparatus and image processing method
JP3262338B2 (en) * 1998-05-07 2002-03-04 株式会社東芝 Recorded content display device and recorded content display method
US7035278B2 (en) * 1998-07-31 2006-04-25 Sedna Patent Services, Llc Method and apparatus for forming and utilizing a slotted MPEG transport stream
US6671290B1 (en) * 1998-11-10 2003-12-30 Sony Corporation Receiving apparatus and recording/reproducing system for digital broadcasts
AU2692300A (en) * 1999-02-25 2000-09-14 Nippon Hoso Kyokai Digital broadcasting apparatus
US7058803B2 (en) * 2002-05-22 2006-06-06 Broadcom Corporation System and method for protecting transport stream content
US6909743B1 (en) * 1999-04-14 2005-06-21 Sarnoff Corporation Method for generating and processing transition streams
US6651252B1 (en) * 1999-10-27 2003-11-18 Diva Systems Corporation Method and apparatus for transmitting video and graphics in a compressed form
JP4269409B2 (en) * 1999-05-19 2009-05-27 ソニー株式会社 Receiving apparatus and method
US7000244B1 (en) * 1999-09-02 2006-02-14 Broadlogic Network Technologies, Inc. Multi-threaded direct memory access engine for broadcast data demultiplex operations
US6865616B1 (en) * 1999-09-02 2005-03-08 Broadlogic Network Technologies, Inc. Flexible media access control and section filter hardware engine for satellite data receiver
JP4129664B2 (en) * 1999-10-05 2008-08-06 ソニー株式会社 Data processing apparatus and data processing method
US7020195B1 (en) * 1999-12-10 2006-03-28 Microsoft Corporation Layered coding and decoding of image data
US7174084B2 (en) * 2000-03-14 2007-02-06 Sedna Patent Services, Llc Method and apparatus for performing sub-picture level splicing based on interrupts
JP4296676B2 (en) * 2000-03-14 2009-07-15 ソニー株式会社 Image recording apparatus and method, image reproducing apparatus and method, and recording medium
US6731657B1 (en) * 2000-03-14 2004-05-04 International Business Machines Corporation Multiformat transport stream demultiplexor
JP4457474B2 (en) * 2000-04-04 2010-04-28 ソニー株式会社 Information recording apparatus, information reproducing apparatus, information recording method, information reproducing method, information recording medium, and program providing medium
US6751713B1 (en) * 2000-06-05 2004-06-15 Sony Corporation Method and system for scheduled activation of system information tables in digital transport streams
JP5021114B2 (en) * 2000-09-07 2012-09-05 ソニー株式会社 Wireless relay system and method
GB0022952D0 (en) * 2000-09-19 2000-11-01 Sgs Thomson Microelectronics Monitoring interrupts
US7039048B1 (en) * 2000-09-22 2006-05-02 Terayon Communication Systems, Inc. Headend cherrypicker multiplexer with switched front end
JP2002204427A (en) * 2000-12-28 2002-07-19 Pioneer Electronic Corp Multiplex method for transport stream, transport stream multiplexer and information reproduction system
US7130316B2 (en) * 2001-04-11 2006-10-31 Ati Technologies, Inc. System for frame based audio synchronization and method thereof
US7035335B1 (en) * 2001-05-11 2006-04-25 Advanced Micro Devices, Inc. Transport stream parser
US6983370B2 (en) * 2001-11-27 2006-01-03 Motorola, Inc. System for providing continuity between messaging clients and method therefor
US7155012B2 (en) * 2002-01-02 2006-12-26 Sony Corporation Slice mask and moat pattern partial encryption
US6728241B2 (en) * 2002-02-27 2004-04-27 Nokia Corporation Boolean protocol filtering
US7149230B2 (en) * 2002-03-08 2006-12-12 Microsoft Corporation Transport processor for processing multiple transport streams
US6788690B2 (en) * 2002-06-27 2004-09-07 Nokia Corporation Packet identifier search filtering

Also Published As

Publication number Publication date
CN1110200C (en) 2003-05-28
JP5441139B2 (en) 2014-03-12
JP2011234405A (en) 2011-11-17
JP2010104032A (en) 2010-05-06
JP2010004566A (en) 2010-01-07
CN100377594C (en) 2008-03-26
KR970703083A (en) 1997-06-10
JP2014039328A (en) 2014-02-27
JP2008263637A (en) 2008-10-30
JP2014039325A (en) 2014-02-27
WO1995029560A1 (en) 1995-11-02
JP2008035571A (en) 2008-02-14
JP2014045502A (en) 2014-03-13
JP4953262B2 (en) 2012-06-13
US7334248B2 (en) 2008-02-19
SG71707A1 (en) 2000-04-18
JP2010004562A (en) 2010-01-07
JP2013055699A (en) 2013-03-21
ES2162397T3 (en) 2001-12-16
EP0756801A1 (en) 1997-02-05
EP0858222A1 (en) 1998-08-12
JP4404271B2 (en) 2010-01-27
US20030005434A1 (en) 2003-01-02
JP5441140B2 (en) 2014-03-12
CA2188127C (en) 2004-08-03
US5802063A (en) 1998-09-01
JP2014053934A (en) 2014-03-20
DE69505369T2 (en) 1999-04-15
JP2011101442A (en) 2011-05-19
JP4748623B2 (en) 2011-08-17
CA2188127A1 (en) 1995-11-02
MY113950A (en) 2002-06-29
JP2010166630A (en) 2010-07-29
CN1158871C (en) 2004-07-21
JP4420298B2 (en) 2010-02-24
JPH09512675A (en) 1997-12-16
MX9604992A (en) 1998-06-30
JP5182969B2 (en) 2013-04-17
US5619501A (en) 1997-04-08
US6671881B1 (en) 2003-12-30
JP4316008B2 (en) 2009-08-19
MY118737A (en) 2005-01-31
JP5182966B2 (en) 2013-04-17
JP2011142675A (en) 2011-07-21
HK1059522A1 (en) 2004-07-02
JP4863328B2 (en) 2012-01-25
JP2010004563A (en) 2010-01-07
EP0756801B1 (en) 1998-10-14
JP2011109716A (en) 2011-06-02
JP2014039327A (en) 2014-02-27
TW237582B (en) 1995-01-01
JP2011188506A (en) 2011-09-22
JP5574463B2 (en) 2014-08-20
CN1151233A (en) 1997-06-04
JP2014039326A (en) 2014-02-27
JP5182967B2 (en) 2013-04-17
JP4475475B2 (en) 2010-06-09
JP5331140B2 (en) 2013-10-30
JP2011193533A (en) 2011-09-29
JP2010063149A (en) 2010-03-18
JP4535344B2 (en) 2010-09-01
JP5441134B2 (en) 2014-03-12
HK1005403A1 (en) 1999-01-08
JP5574462B2 (en) 2014-08-20
JP2008206209A (en) 2008-09-04
DE69505369D1 (en) 1998-11-19
JP2009194935A (en) 2009-08-27
EP0858222B1 (en) 2001-10-10
JP5131874B2 (en) 2013-01-30
JP5131867B2 (en) 2013-01-30
JP5441138B2 (en) 2014-03-12
JP2010035204A (en) 2010-02-12
KR100392025B1 (en) 2003-07-23
KR100400800B1 (en) 2003-10-08
JP4475476B2 (en) 2010-06-09
ES2123243T3 (en) 1999-01-01
JP4582670B2 (en) 2010-11-17
CN1167405A (en) 1997-12-10
JP4122370B2 (en) 2008-07-23
JP4458438B2 (en) 2010-04-28
CN1447600A (en) 2003-10-08
JP2011160480A (en) 2011-08-18

Similar Documents

Publication Publication Date Title
KR100384212B1 (en) Conditional Access information arrangement
US5521979A (en) Packet video signal inverse transport system
EP0971538B1 (en) Inverse transport processor with memory address circuitry
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
E902 Notification of reason for refusal
A107 Divisional application of patent
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130419

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20140421

Year of fee payment: 12

EXPY Expiration of term