KR20010049698A - 적응 트랜스포트 프로토콜 디코더 - Google Patents

적응 트랜스포트 프로토콜 디코더 Download PDF

Info

Publication number
KR20010049698A
KR20010049698A KR1020000037727A KR20000037727A KR20010049698A KR 20010049698 A KR20010049698 A KR 20010049698A KR 1020000037727 A KR1020000037727 A KR 1020000037727A KR 20000037727 A KR20000037727 A KR 20000037727A KR 20010049698 A KR20010049698 A KR 20010049698A
Authority
KR
South Korea
Prior art keywords
packet
protocol decoder
payload
interrupt
memory
Prior art date
Application number
KR1020000037727A
Other languages
English (en)
Other versions
KR100708371B1 (ko
Inventor
그림스케빈로이드
브리지워터케빈엘리엇
테이머그레고리조지
홀랜더토마스에드워드
구스만토드
로크리지테리웨인
Original Assignee
데니스 에이치. 얼백
톰슨 라이센싱 소시에떼 아노님
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 데니스 에이치. 얼백, 톰슨 라이센싱 소시에떼 아노님 filed Critical 데니스 에이치. 얼백
Publication of KR20010049698A publication Critical patent/KR20010049698A/ko
Application granted granted Critical
Publication of KR100708371B1 publication Critical patent/KR100708371B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/06Answer-back mechanisms or circuits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/764Media network packet handling at the destination 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Communication Control (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

적응 트랜스포트 프로토콜 디코더는, 각각이 페이로드를 포함하고, 제 1 트랜스포트 프로토콜을 구비하는 패킷 스트림의 소스(12)와, 각각이 페이로드를 포함하고, 제 2 트랜스포트 프로토콜을 구비하는 패킷 스트림의 소스(14)를 포함한다. 제 1 및 제 2 패킷 스트림 소스에 접속된(20) 프로토콜 디코더(30)는 제 1 및 제 2 패킷 스트림 소스 중 선택된 소스의 패킷으로부터 각 페이로드를 추출한다.

Description

적응 트랜스포트 프로토콜 디코더{AN ADAPTIVE TRANSPORT PROTOCOL DECODER}
본 발명은, 다른 트랜스포트 프로토콜을 갖는 패킷을 적응적으로 디코드하는 트랜스포트 패킷 디코더에 관한 것이다.
현재, 비디오/오디오/데이터 프로그래밍과 같은 프로그래밍을 수행하는 디지털 신호는 다른 공급자로부터 프로토콜로 불리는 각기 다른 포맷으로 소비자에게 공급된다. 예컨대, 직접 위성 시스템(DSS : direct satellite system) 신호는 Direct TV사가 소유한 독점적인 포맷으로 포맷팅되고, DSS 위성을 통해 공급되는 프로그래밍을 수행하는 모든 신호는 상기 프로토콜을 사용하여 포맷팅된다. 마찬가지로, 국부적인 지상 고선명 텔레비전(HDTV) 신호는 선진 텔레비전 표준 위원회(ATSC : Advanced Television Standard Committee)에 의해 최초로 제안되었고 미국 연방 통신 위원회(FCC)에 의해 인가된 표준에 따라 포맷팅되고, HDTV 프로그래밍을 수행하는 모든 신호는 상기 표준 프로토콜을 사용하여 포맷팅된다.
소비자는, 프로그래밍을 수행하는 디지털 신호가 전달되는 이들 및 임의의 다른 프로토콜의 디지털 신호를 수신하기를 원할 것이다. 현재, 이것은 각각의 원하는 프로토콜에 대해 셋톱 박스와 같은 별도의 엔클로저(enclosure)로 각각이 구현되는 별도의 디코더를 필요로 할 것이다. 이것은 소비자에 대해 값비싸고, 다양한 셋톱 박스에 대한 큰 양의 공간을 필요로 하고, 사용하기에 불편하다. 예컨대, 각 셋톱 박스는, 다른 셋톱 박스에 대한 원격 제어 장치와 호환되지 않을 수 있는 자신의 원격 제어 장치를 가질 수 있다. 따라서, 다른 프로토콜을 디코드할 수 있는 트랜스포트 프로토콜 디코더가 바람직하다.
본 발명자는, 각각이 예컨대 다른 크기, 다른 프레이밍(framing), 다른 비트 배열 등을 갖는 다른 포맷의 트랜스포트 패킷의 한 스트림을 명기하는 상술한 바와 같은 프로토콜을 실현시켰다. 더욱이, 트랜스포트 패킷 각각은, 엔코드된 비디오 또는 오디오, 또는 데이터와 같은 다른 형태의 신호를 나타내는 디지털 데이터를 함유하는 페이로드(payload)를 전달한다. 그러나, 본 발명자 또한 각 신호 형태에 대한 각 페이로드 내의 데이터에 의해 표시되는 신호가 모든 프로토콜에 대해 동일하게 실현하였다. 즉, DSS 및 ATSC 프로토콜 모두에 대해, 엔코드된 비디오 및 오디오 신호는 MPEG 엔코드된 신호이다. 결과적으로, 수신된 트랜스포트 패킷으로부터 일단 페이로드가 추출되면, 이러한 신호에 대한 나머지 신호 처리는 수신된 패킷의 프로토콜과는 무관하게 동일하다.
본 발명의 원리에 따라, 적응 트랜스포트 프로토콜 디코더는, 각각이 페이로드를 포함하고 제 1 트랜스포트 프로토콜을 갖는 패킷 스트림의 소스와, 각각이 페이로드를 포함하고 제 2 트랜스포트 프로토콜을 갖는 패킷 스트림의 소스를 포함한다. 제 1 및 제 2 패킷 스트림 소스에 연결된 프로토콜 디코더는, 제 1 및 제 2 패킷 스트림 소스 중 선택된 소스의 패킷으로부터 각 페이로드를 추출한다.
도 1은 본 발명에 따라 적응 트랜스포트 디코더를 포함하는 시스템의 블록도.
도 2는 도 1의 적응 트랜스포트 디코더의 동작을 이해하는데 유용한 다른 프로토콜을 갖는 두 개의 패킷의 포맷을 도시하는 도면.
도 3은 도 1에 도시된 시스템에서 사용될 수 있는 적응 트랜스포트 프로토콜 디코더의 보다 상세한 블록도.
도 4는 도 3에 도시된 적응 트랜스포트 프로토콜 디코더의 실시예에서 사용될 수 있는 다양한 소프트웨어 요소를 도시하는 메모리 배치도.
도 5는 DSS 트랜스포트 프로토콜 패킷을 처리하기 위하여 배치된 도 4에 도시된 다양한 소프트웨어 요소를 도시하는 메모리 배치도.
도 6은 ATSC 트랜스포트 프로토콜 패킷을 처리하기 위해 배치된 도 4에 도시된 다양한 소프트웨어 요소를 도시하는 메모리 배치도.
도 7은 DSS 트랜스포트 패킷을 디코딩하는 것과 ATSC 트랜스포트 패킷을 디코딩하는 것 사이의 스위칭 모드 처리를 도시하는 흐름도.
〈도면 주요 부분에 대한 부호의 설명〉
10 : 다수의 패킷 스트림 소스 20 : 선택기
30 : 적응 트랜스포트 프로토콜 디코더 31 : 서비스 검출기
32 : 제어기 33 : 암호 번역기
34 : 메모리 34': 외부 메모리
37 : 버퍼 메모리 39 : 응용 제어 회로
40 : 페이로드 프로세서 50 : 사용자 인터페이스
도 1은 본 발명에 따른 적응 트랜스포트 디코더를 포함하는 시스템의 블록도이다. 도 1에 있어서, 다수의 패킷 스트림 소스(10)의 출력 단자 각각은 선택기(20)의 대응하는 입력 단자에 연결된다. 선택기(20)의 출력 단자는 적응 트랜스포트 프로토콜 디코더(30)의 입력 단자에 연결된다. 적응 트랜스포트 프로토콜 디코더(30)의 출력 단자는 페이로드 프로세서(40)의 입력 단자에 연결된다. 페이로드 프로세서(40)의 출력 단자는 사용자 인터페이스(50)의 입력 단자에 연결된다.
동작시, 패킷 스트림 소스(12)는 각각이 페이로드(이하에서 보다 상세하게 기술)를 포함하고 제 1 트랜스포트 프로토콜을 구비하는 패킷 스트림을 생성하고, 패킷 스트림 소스(14)는 각각이 페이로드를 포함하고 제 2 트랜스포트 프로토콜을 구비하는 패킷 스트림을 생성한다. 다수의 패킷 스트림 소스(10)는 부가적인 패킷 스트림 소스, 예컨대 각각이 페이로드를 포함하고 각 다른 트랜스포트 프로토콜을 구비하는 각 패킷 스트림을 생성하는 패킷 스트림 소스(1N)를 포함할 수 있다.
예컨대, 패킷 스트림 소스(12)는, 수신 안테나, RF 및 IF 수신기 회로, 튜너, 순방향 에러 정정(FEC : forward error correction) 회로, 패킷 에러 검출 및/또는 정정 회로{비터비(Viterbi) 또는 리드-솔로몬(Reed-Solomon) 디코딩, 등}, 번역기 등등을 포함하는 DSS 위성 신호 수신기의 전단이 될 수 있데, 이들은 본 발명과 밀접한 관계가 없으므로, 도시되거나 상세하게 기술되지 않는다. 패킷 스트림 소스(12)의 출력은 각각이 DSS 트랜스포트 패킷 프로토콜(포맷)을 갖는 DSS 신호를 나타내는 패킷 스트림이다. 마찬가지로, 패킷 스트림 소스(14)는 안테나 또는 케이블 접속부, RF 및 IF 수신기 회로, 에러 검출 및/또는 정정 회로 등등(미도시)을 포함하는 지상 HDTV 신호 수신기의 전단이 될 수 있다. 패킷 스트림 소스(14)의 출력은 각각이 ATSC 트랜스포트 패킷 프로토콜을 구비하는 HDTV 신호를 나타내는 패킷 스트림이다.
선택기(20)는 공지된 방법으로, 제어기(미도시)로부터의 제어 신호에 따라 다수의 패킷 스트림 소스(10) 중 하나를 선택하고, 선택된 패킷 스트림 소스로부터의 패킷 스트림을 적응 트랜스포트 프로토콜 디코더(30)에 공급한다. 적응 트랜스포트 프로토콜 디코더(30)는, 이하에서 보다 상세하게 설명되는 방법으로 패킷으로부터 페이로드 데이터를 추출하기 위하여, 수신된 대로 각 패킷을 분석하고, 패킷의 트랜스포트 프로토콜에 따라 패킷의 적절한 처리를 수행한다. 추출된 페이로드 데이터는 페이로드 프로세서(40)에 제공된다.
페이로드 프로세서(40)는 상기 데이터에 상응하는 신호를 생성하기 위하여 페이로드 데이터를 처리하고, 상기 신호를 사용자 인터페이스(50)에 공급한다. 예컨대, 적응 트랜스포트 프로토콜 디코더(30)로부터 추출된 페이로드 데이터가 MPEG2 엔코드된 디지털 비디오 데이터라면, 페이로드 프로세서(40)는 표준 비디오 신호(예컨대 미국에서의 NTSC 비디오 신호)를 생성하기 위하여 MPEG 표준에 따라 MPEG2 비디오 데이터를 디코드하는 공지된 MPEG 디코더를 포함한다. 그 후 비디오 신호는 사용자 인터페이스(50)에 공급되는데, 이 경우 상기 인터페이스는 비디오 모니터가 될 것이고, 이는 비디오 신호에 의해 표시되는 영상을 디스플레이한다.
도 2는 다른 프로토콜을 갖는 두 개의 패킷의 포맷을 도시하는 도면이다. 도 2에 도시된 패킷은 예시적일 뿐이고, 임의의 공지된 프로토콜의 패킷을 표시하려는 것은 아니다. 도 2에 있어서, 제 1 프로토콜을 갖는 패킷은 A)로 표시된 직사각형으로 도시되었고, 제 2 프로토콜을 갖는 패킷은 B)로 표시된 직사각형으로 도시되었다. 직사각형의 길이는 패킷의 상대적인 크기(비트 수) 표시이고, 마찬가지로 패킷 내의 소부분의 길이는 상기 소부분의 상대적인 크기(비트 수)의 표시이다. 도 2에 도시된 바와 같이, 각 패킷 A) 및 B)는 미리 정해진 고정된 수의 비트를 포함하는데, 패킷 A) 내에서의 비트 수는 패킷 B)에서의 비트수와 다르다(예컨대 이보다 적다). 패킷 A) 및 B) 모두 제어 정보(아래에서 보다 상세하게 기술)를 포함하는 헤더와 패킷에 의해 전달되는 데이터를 포함하는 페이로드로 구성된다. 또한 도 2에 도시된 바와 같이, 패킷 A) 및 B)의 페이로드는 미리 정해진 고정된 수의 비트를 포함하는데, 패킷 A) 내의 페이로드의 비트 수는 패킷 B) 내의 페이로드의 비트 수와 다르다(예컨대 이보다 적다).
헤더 내의 제어 정보는, 무엇보다도 패킷 페이로드 내에 포함된 데이터의 내용을 확인하고, 상기 데이터를 발송하기(route) 위하여 사용된다. 도 2에 있어서, 헤더 정보의 포맷은 패킷 A) 및 B)에 대하여 신장된 형태로 디스플레이된다. 예컨대, 각 페이로드는 특정 형태의 신호를 나타내는 데이터 예컨대, 다른 형태와 다르게 처리되어야만 하는 비디오, 오디오, 데이터를 전달한다. 패킷 페이로드 내의 데이터의 형태를 나타내는 제어 정보(형태)는 패킷 A) 및 B)의 패킷 헤더 내에 포함된다. 또한 패킷 스트림에 있어서, 데이터 스트림은 단일 신호를 나타내는 데이터를 전달하고, 상기 데이터 스트림을 전달하는 패킷의 페이로드를 연결함으로써 형성된다. 예컨대, 텔레비전 프로그램을 전달하는 DSS 채널에 있어서, 다른 언어를 나타내는 수 개의 오디오 신호, 또는 다른 언어의 클로스드 캡션(closed caption)을 나타내는 수 개의 데이터 채널, 또는 다른 카메라 각도 또는 부모 승인 레벨로부터의 영상을 나타내는 수 개의 비디오 채널 존재할 수 있다. 이러한 데이터 스트림 각각은 고유한 패킷 식별자(PID)에 의해 확인되는데, 상기 식별자는 패킷 A) 및 B)에 대한 패킷 헤더 내에 포함된다. 더욱이, 페이-퍼-뷰(pay-per-view) 채널을 용이하게 하기 위하여, 패킷 내의 페이로드 데이터는 암호화 될 수 있거나, 되지 않을 수 있다. 패킷 A) 및 B)의 헤더 각각은, 상기 패킷 내의 페이로드 데이터가 암호 번역을 필요로 하는 지 여부를 나타내기 위한 제어 정보(E)를 포함한다.
도 3은 도 1에 도시된 시스템에서 사용될 수 있는 적응 트랜스포트 프로토콜 디코더(30)의 보다 상세한 블록도이다. 도 3의 적응 트랜스포트 프로토콜 디코더(30)는 선택기(20)(도 1)의 출력 단자에 접속된 입력 단자를 포함한다. 적응 트랜스포트 프로토콜 디코더(30)의 입력 단자는 서비스 검출기(31), 번역기(33), 트랜스포트 디코더(35), 버퍼 메모리(37) 및 응용 제어 회로(39)의 직렬 연결에 접속된다. 마이크로프로세서(미도시)를 포함할 수 있는 제어기(32)는 서비스 검출기(31), 번역기(33), 트랜스포트 디코더(35), 버퍼 메모리(37) 및 응용 제어 회로(39)의 각 제어 입력 단자에 접속된 제어 신호 출력 단자를 구비한다. 메모리 버스는 제어기(32)와 내부 메모리(34){판독/기록 메모리(RAM)와 판독 전용 메모리(ROM) 모두를 포함할 수 있는}와 외부 메모리(34') 사이에 접속된다. 서비스 검출기(31), 번역기(33), 트랜스포트 디코더(35), 버퍼 메모리(37) 및 응용 제어 회로(39), 제어기(32) 및 내부 메모리(34)는 하나의 집적 회로(IC) 칩 내에서 구현될 수 있는 반면, 외부 메모리(34')는 IC 칩 외부에 존재한다.
동작시, 서비스 검출기(31)는 선택기(20)(상술한 바와 같이)로부터 선택된 패킷 스트림을 수신한다. 서비스 검출기(31)는 공지된 방법으로 모든 패킷의 시작과 끝을 검출한다. 예컨대 ATSC 엔코드된 MPEG2 패킷 스트림에 대해, 패킷은 패킷 스트림의 미리 정해진 위치에서 미리 정해진 값 예컨대 47h를 갖는 동기화 바이트에 의해 제한된다. 도 2를 참조하면, 이러한 동기화 바이트(SB)는 패킷 A) 내에서 점선으로 표시되는데, 왜냐하면 동기화 바이트(SB)가 패킷 자체의 한 부분이 아니기 때문이다. 서비스 검출기(31)는 동기화 바이트를 사용하여 패킷의 시작과 끝을 검출할 수 있다. 그러나, DSS 패킷 스트림에 있어서, 동기화 바이트는 전혀 존재하지 않는다. DSS 패킷 스트림에 대해, 패킷의 시작과 끝은, 각 패킷의 시작을 나타내기 위한 신호를 생성하는 선택된 패킷 스트림 소스(10) 내의 동기화 검출기를 통해 모두가 공지된 방법으로 검출된다. 이러한 패킷 스트림에 대해, 서비스 검출기(31)는 패킷의 시작과 끝을 검출하기 위하여 이러한 신호를 사용할 수 있다. 도시된 실시예에 있어서, 동기화 바이트(47h)는 서비스 검출기(31)에 의해 DSS 패킷 사이에 삽입된다. 모든 패킷이 동기화 바이트에 의해 분리되기 때문에, 후단(downstream)의 처리는 다른 프로토콜에 대해 보다 더 균등할 것이다.
각 패킷이 분리되었을 때, 서비스 검출기(31)는 수신된 패킷이 현재 수신되는 데이터 스트림에 속하는 지의 여부를 결정한다. 예컨대, 선택된 패킷 스트림 내에 수 개의 오디오 데이터 스트림이 존재할 수 있지만, 주로 하나 또는 두 개의 스트림만이 수신되어 추가로 처리될 것이다. 특히, 도시된 실시예에 있어서, 8개까지의 데이터 스트림이 수신될 수 있다. 그러나, 당업자는 동시에 수신될 수 있는 데이터 스트림의 수에는 고유한 제한이 존재하지 않음을 이해할 것이다. 상술한 바와 같이, 각 패킷의 헤더 내의 PID는 패킷이 속한 데이터 스트림을 확인한다. 수신기 시스템은 현재 수신되거나 처리되는 데이터 스트림의 PID를 포함하는 한 세트의 레지스터를 유지한다. 각 수신된 패킷에 대해, 서비스 검출기(31)는 PID를 추출한다. 상술한 바와 같이, PID는 다른 위치에 위치할 수 있고, 다른 길이를 가질 수 있으며, 다른 프로토콜에서 다른 방법으로 엔코드될 수 있다. 아래에서 보다 상세하게 기술될 방법에 있어서, 서비스 검출기(31)는 제어기(32)로부터의 제어 신호에 따라, 패킷의 프로토콜에 적절한 헤더 위치로부터 PID를 추출한다. 추출된 PID는 적응 트랜스포트 프로토콜 디코더(30) 내의 레지스터에 저장된다. 이것은 패킷 A) 및 B) 내의 PID의 위치로부터 PID 레지스터까지의 곡선에 의해 도 2에 도시되었다. 이러한 패킷에 의해 전달된 데이터 스트림이 추가로 처리될 지의 여부를 결정하기 위한 처리의 나머지는 PID 레지스터 내의 데이터 상에서 동작한다. 예컨대, PID 레지스터 내의 PID는 수신기 시스템 내의 레지스터 세트 내의 PID와 비교될 수 있다. 부합되는 PID가 존재한다면, 패킷은 추가로 처리되는 패킷이고, 번역기(33)에 의해 처리되며, 그렇지 않을 경우, 상기 패킷은 무시되고, 수신된 다음 패킷이 상술한 바와 같이 처리된다.
번역기(33)는 본 패킷의 페이로드가 암호화되었는 지의 여부를 나타내는 헤더 정보를 추출한다. 상술한 바와 같이, 암호화 정보(E)는, 다른 위치에 위치될 수 있고, 다른 길이를 가질 수 있고, 다른 프로토콜에서의 다른 방법으로 엔코드될 수 있다. 아래에서 보다 상세하게 기술될 방법에 있어서, 번역기(33)는 제어기(32)로부터의 제어 신호에 따라, 패킷의 프로토콜을 위해 적절한 헤더 위치로부터 암호화 정보(E)를 추출한다. 서비스 검출기(31)와 유사하게, 추출된 암호화 정보(E)는, 패킷 A) 및 B) 내의 암호화 정보(E)의 위치로부터 E 레지스터까지의 곡선으로 도시된 바와 같이, 적응 트랜스포트 프로토콜 디코더(30) 내의 레지스터에 저장된다. 패킷이 암호 번역될 필요가 있는 지의 여부를 결정하기 위한 처리의 나머지는 E 레지스터 내의 데이터 상에서 수행된다. 암호화 정보(E)가 패킷이 암호 번역을 필요로 함을 나타낸다면, 번역기(33)는 추가로 처리될 수 있는 평문(plain-text) 패킷을 생성하기 위하여, 패킷을 암호 번역한다. 그렇지 않을 경우, 번역기(33)는 변경시키지 않고 패킷을 트랜스포트 디코더(35)로 통과시킨다.
트랜스포트 디코더(35)는, 수신된 패킷으로부터, 수신된 패킷 내의 그 위치로부터 페이로드를 추출한다. 상술한 바와 같이, 페이로드는 다른 위치에 위치될 수 있고, 다른 프로토콜 내에서 다른 길이를 가질 수 있다. 트랜스포트 디코더(35)는 추출된 페이로드를 버퍼 메모리(37)에 위치시킨다. 응용 제어 회로(39)는 그 후 버퍼 메모리로부터의 버퍼링된 페이로드를 검색하고, 이들을 적절한 페이로드 처리 회로에 발송(route)한다. 아래에서 보다 상세하게 기술될 방법에 있어서, 응용 제어 회로(39)는 제어기(32)로부터의 제어 신호에 따라, 패킷의 프로토콜을 위해 적절한 헤더 위치로부터 데이터 스트림 형태 정보(형태)를 추출한다. 추출된 데이터 스트림 형태 정보(형태)는, 패킷 A) 및 B) 내의 데이터 스트림 형태 정보(형태)의 위치로부터 형태 레지스터까지의 곡선에 의해 도시된 바와 같이, 적응 트랜스포트 프로토콜 디코더(30) 내의 레지스터에 저장된다. 본 패킷의 페이로드가 발송되어야만 하는 지의 여부를 결정하기 위한 처리의 나머지는 형태 레지스터 내의 데이터 상에서 수행된다. 특별히, 형태 레지스터 내의 데이터가 판독되고 평가되며, 응용 제어 회로(39)는 페이로드를 페이로드 프로세서(40)(도 3) 내의 적절한 프로세서에 발송한다. 예컨대, 페이로드가 MPEG 엔코드된 비디오 데이터를 전달한다면, 페이로드는 MPEG 디코더에 공급된다. 페이로드가 클로스드 캡션 정보를 전달한다면, 페이로드는 온-스크린 디스플레이 생성기, 등에 공급된다.
도 3은 수신된 트랜스포트 패킷을 처리하기 위한 예시적이고 최소한의 회로 세트만을 도시한다. 그러나, 당업자라면 다른 처리가 트랜스포트 패킷을 적절하게 디코드하기 위하여 필요할 수 있음을 이해할 것이다. 예컨대, 패킷 스트림은 보조 데이터를 전달하는 트랜스포트 패킷을 포함할 수 있다. 보조 데이터는 테이터 스트림의 페이로드 데이터 부분은 아니지만, 대신에 수신기 시스템 자체에 의한 사용을 위한 상태 및 제어 정보를 전달한다. 덧붙여, 일부 프로토콜은 단일 트랜스포트 패킷 내에서의 페이로드와 보조 데이터의 조합을 허용할 수 있다. 더욱이, 다른 프로토콜은 헤더 내의 다른 정보를 포함할 수 있고, 각각 다른 방법으로 데이터를 전달할 수 있어, 대응하는 다른 처리를 필요로 한다. 이들 프로토콜 내의 트랜스포트 패킷을 디코딩하는 분야의 당업자는, 이들 프로토콜에 의해 다른 어떤 처리가 필요한지, 상기 처리를 제공하기 위하여 다른 어떤 요소가 필요한 지, 또한 이들 처리 요소를 어떻게 설계하고 실현해야 할지를 이해할 것이다.
도 4는, 다양한 소프트웨어 요소(저장장치 및 코드)를 도시하는 도 3에 도시된 적응 트랜스포트 프로토콜 디코더(30) 내의 메모리(34/34')에 대한 배치도이다. 도 4에서의 배치는 도시적일 뿐이고, 도시된 요소의 상대적 또는 절대적인 위치 또는 크기를 나타내지 않을 뿐만 아니라, 메모리(34 또는 34')에서의 이들의 위치를 나타내는 것도 아니다. 도 4에 있어서, 적응 트랜스포트 프로토콜 디코더(30)의 동작은, 패킷이 유용할 때 선택된 패킷 스트림 소스(10)에 의해 생성된 외부의, 하드웨어 생성의 인터럽트 요구(INT REQ) 신호에 의해 호출된다. 인터럽트 요구 신호(INT REQ)는 선택기(20)를 통해 적응 트랜스포트 프로토콜 디코더(30)에 공급된다. 이러한 인터럽트 요구 신호(INT REQ)는 제어기(32) 내에서 실현된 마이크로프로세서(미도시)의 인터럽트 메커니즘에 의해 처리된다. 인터럽트 요구 신호(INT REQ)는 모두 공지된 방법으로, 마이크로프로세서로 하여금 그 처리를 중단하고, 메모리 내의 미리 정해진 고정된 위치에 저장된 인터럽트 벡터(102) 내의 외부 하드웨어 인터럽트 요구 신호(INT REQ)와 관련된 인터럽트 포인터{PNTR(0)}에 의해 지시된 메모리 위치에서 패킷 처리기(104)의 처리를 곧바로 시작하게 한다. 인터럽트 포인터{PNTR(0)}는, 이러한 인터럽트를 처리하도록 지정된 패킷(인터럽트) 처리기(104)의 메모리 위치를 포함한다. 인터럽트 처리기(104)는, 상술한 바와 같이, 유용한 패킷이 추가로 처리될지의 여부를 결정하고, 필요하다면 패킷의 암호를 번역하고, 페이로드를 추출하고, 상기 추출된 페이로드를 추가로 처리될 수 있을 때까지 버퍼에 저장하기 위하여 필요한 처리 (및 임의의 다른 필요한 처리)를 수행한다. 마이크로프로세서에 의한 상태 폴링(status polling)에 의해 개시될 새롭게 유용한 패킷의 처리, 또는 임의의 다른 공지된 방법도 가능할 것이다.
마이크로프로세서(미도시)가 이러한 방법으로 인터럽트될 때, 마이크로프로세서 프로그램 실행의 현재의 상태(프로그램 카운터, 레지스터, 플래그, 등등)는 스택(110)에 푸쉬(push)되고, 인터럽트 벡터(102) 내의 인터럽트 포인터{PNTR(0)}에 의해 지시된 인터럽트 루틴(104)은 포인터{PNTR(0)} 내의 어드레스에서 시작하여 실행된다. 이것은 프로그램 환경을 전환하는 신속한 방법이므로, 상술된 인터럽트 프로세스는 시간이 중요한 응용에 있어서 소프트웨어 인터럽트로 불리는 소프트웨어 지령을 통해 호출될 수도 있다. 예컨대, 루틴{DVR(1)}은 인터럽트 포인터{PNTR(1)}에 의해 지시되는 루틴을 호출하는 소프트웨어 인터럽트에 의해 호출될 수 있고, 루틴{DVR(2)}은 인터럽트 포인터{PNTR(2)}에 의해 지시되는 루틴을 호출하는 소프트웨어 인터럽트에 의해 호출될 수 있고, 그 다음도 동일하다. 도 4에 있어서, 인터럽트 처리기(104)는 인터럽트 벡터(102) 내의 적절한 인터럽트 포인터{PNTR(x)}를 가르키는 소프트웨어 인터럽트를 통해 다양한 드라이버 루틴(106)을 호출할 수 있다. 이것은, 인터럽트 처리기(104)로부터 인터럽트 벡터(102)까지의 굵은 화살표로 도 4에 도시되었다. (도면을 단순화하기 위하여 도 4에는 도시되지 않았지만) 드라이버 루틴{DVR(x)}이 원하는 드라이버 루틴{DVR(x)}의 인터럽트 벡터(102) 내의 인터럽트 포인터{PNTR(x)}를 지정하는 소프트웨어 인터럽트를 통해 다른 드라이버 루틴{DVR(x)}을 호출하는 것도 가능하다.
도 4에 있어서, 버퍼 메모리(37)는 추출된 4개의 페이로드를 위한 충분한 메모리{BUFFER(1) 내지 BUFFER(4)}를 포함한다. 하나의 페이로드는 하나의 패킷으로부터 추출되므로, 페이로드는 다음의 유용한 버퍼에 저장되고, 상기 페이로드를 위해 적합한 페이로드 프로세서(40)는 페이로드의 버퍼 메모리(37) 내의 위치를 통보 받는다. 이에 따라, 페이로드 프로세서(40)는 버퍼로부터 페이로드를 검색하고, 이를 적절한 방법으로 처리한다.
도시된 예에 있어서, 적응 트랜스포트 프로토콜 디코더(30)와 그 메모리(34/34')는 DSS 트랜스포트 프로토콜 패킷 또는 ATSC 트랜스포트 프로토콜 패킷을 처리하도록 구성될 수 있다. DSS 프로토콜 패킷을 처리하기 위해 필요한 인터럽트 처리기(104)와 드라이버 루틴(106)의 설계 및 실현, 인터럽트 처리기(104)와 드라이버 루틴(106)을 구성하는 지령, 및 인터럽트 벡터(102)를 위한 인터럽트 처리기(104)와 드라이버 루틴(106)의 어드레스는 모두 공지된 것이고, 상세하게 기술되지는 않을 것이다. 덧붙여, 버퍼 메모리(37) 내의 버퍼의 크기 또한 공지된 것이고, DSS 트랜스포트 패킷의 페이로드는 그 길이가 127 바이트이다. 마찬가지로, ATSC 프로토콜 패킷을 처리하기 위해 필요한 특정 루틴, 인터럽트 처리기(104)와 드라이버 루틴(106)을 구성하는 지령, 인터럽트 벡터(102)를 위한 인터럽트 처리기(104)와 드라이버 루틴(106)의 어드레스는 모두 공지된 것이고 상세하게 기술되지는 않을 것이다. 덧붙여, 버퍼 메모리(37)의 크기 또한 공지된 것이고, ATSC 트랜스포트 패킷의 페이로드는 그 길이가 184 바이트이다.
도 5는 DSS 트랜스포트 프로토콜 패킷을 처리하기 위하여 배치된 도 4의 다양한 소프트웨어 요소를 도시하는 메모리 배치도이다. 도 5에 있어서, 도 4에 도시된 것과 동일한 요소들은 동일한 참조 번호로 지정되었고, 상세하게 기술되지 않는다. 도 4에서와 같이, 도 5의 장치는 도식적일 뿐이고, 도시된 요소의 상대적 또는 절대적 위치 또는 크기를 나타내는 것은 아니다.
적응 트랜스포트 프로토콜 디코더(30) IC 칩 내에는 제한된 양의 메모리(34)가 존재한다. 따라서, 소프트웨어 요소의 일부는 외부 메모리(34')에 위치해야만 한다. 도 5에 있어서, DSS 드라이버 루틴{DRV(1) 내지 DRV(N)}은 내부 메모리(34)의 제어 ROM(342) 내에 위치한다. DSS 벡터 테이블(102), 스택(110) 및 페이로드 버퍼(37)는 완전히 내부 메모리(34)의 내부 RAM(344)에 위치한다. 그러나, 메모리 크기 제한 때문에, DSS 인터럽트 처리기{104(1)}의 일부만이 내부 RAM(344)에 위치한다. DSS 인터럽트 처리기{104(2)}의 나머지는 외부 다이내믹 RAM(DRAM)(34')에 위치한다. 상술한 바와 같이, DSS 프로토콜 트랜스포트 패킷을 처리하기 위한 DSS 소프트웨어 요소의 설계, 실현 및 동작은 공지된 것이고, 여기에서는 상세하게 설명되지 않는다.
도 5에 있어서, ATSC 트랜스포트 패킷을 디코딩할 때 적응 트랜스포트 프로토콜 디코더(30)의 동작을 제어하기 위한 ATSC 인터럽트 벡터(102'), 소프트웨어 인터럽트 드라이버(106') 및 인터럽트 처리기(104')가 외부 DRAM(34')에 저장되지만, 사용되지 않음을 볼 수 있다.
동작시, DSS 인터럽트 처리기(104)는 외부 인터럽트 신호(미도시)에 의해 호출된다. DSS 인터럽트 처리기(104)는, 상술한 바와 같이 모두가 공지된 방법으로, 수신된 트랜스포트 패킷을 처리하기 위하여 적절한 DSS 드라이버 루틴(106)을 호출하는데, 헤더로부터 데이터를 추출하고, 필요하다면 페이로드의 암호를 번역하며, 버퍼(37) 중 하나에 페이로드를 저장하고, 제어기(32)의 제어 하에서 적절한 페이로드 프로세서(40)에 통보한다.
도 6은 ATSC 트랜스포트 프로토콜 패킷을 처리하기 위하여 배치된 도 4의 다양한 소프트웨어 요소를 도시하는 메모리 배치도이다. 도 6에 있어서, 도 4 및 도 5에 도시된 것과 동일한 요소들은 동일한 참조 번호로 지정되었고, 상세하게 기술되지 않는다. 도 4 및 도 5에서와 같이, 도 6의 장치는 도식적일 뿐이고, 도시된 요소의 상대적 또는 절대적 위치 또는 크기를 나타내는 것은 아니다.
도 5에서와 같이, 소프트웨어 요소의 일부는 외부 메모리(34')에 위치해야만 한다. 도 6에 있어서, 인터럽트 벡터(102') 및 페이로드 버퍼(37)는 완전히 내부 메모리(34)의 내부 RAM(344)에 위치한다. 그러나, 메모리 크기 제한 때문에, 스택{110(1)}의 일부만이 내부 RAM(344)에 위치한다. 스택{110(2)}의 나머지는 외부 DRAM(34')에 위치한다. ATSC 인터럽트 처리기(104') 및 ATSC 드라이버 루틴(106')은 완전히 외부 DRAM(34')에 위치한다. 상술한 바와 같이, ATSC 프로토콜 트랜스포트 패킷을 처리하기 위한 ATSC 소프트웨어 요소의 설계, 실현 및 동작은 공지된 것이고, 여기에서는 상세하게 설명되지 않을 것이다.
도 6에 있어서, DSS 인터럽트 벡터 드라이버(106)는 내부 메모리(34)의 제어 ROM(342) 내에 위치하여 유지됨을 볼 수 있다. DSS 인터럽트 벡터(102)와 인터럽트 처리기(104)는 외부 DRAM(34')에 저장된다. 이들은 전혀 사용되지 않는다.
동작시, ATSC 인터럽트 처리기(104)는 외부 인터럽트 신호(미도시)에 의해 호출된다. ATSC 인터럽트 처리기(104)는, 상술한 바와 같이 모두가 공지된 방법으로, 수신된 트랜스포트 패킷을 처리하기 위하여 적절한 인터럽트 드라이버를 호출하고, 헤더로부터 데이터를 추출하고, 필요하다면 페이로드의 암호를 번역하며, 버퍼(37) 중 하나에 페이로드를 저장하고, 제어기(32)의 제어 하에서 적절한 페이로드 프로세서(40)에 통보한다.
내부 메모리(34)의 제어 ROM(342) 내의 DSS 인터럽트 드라이버(106) 내의 인터럽트 드라이버가, ATSC 트랜스포트 패킷을 디코딩할 때 필요한 기능을 수행하는 것 역시 가능하다. 도 6에 있어서, ATSC 인터럽트 포인터{PNTR(2)}는 DSS 인터럽트 드라이버 세트(106) 내의 인터럽트 드라이버{DVR(2)}를 지시한다. 이러한 드라이버의 기능은 결과적으로 ATSC 인터럽트 드라이버 세트(106') 내에서 재생성될 필요는 없다. 예컨대, 상술한 바와 같이, 정보는 패킷의 헤더로부터 추출되고, 다른 처리를 위하여 레지스터 내에 위치한다. 인터럽트 드라이버{DVR(n)}는 정보가 헤더 내의 어느 곳으로부터 오는 지에 관계없이 상기 레지스터를 억세스함으로써 페이로드 형태를 처리할 수 있다. 이러한 인터럽트 드라이버{DVR(n)}는 적응 트랜스포트 프로토콜 디코더(30)가 처리하려고 하는 모든 프로토콜 상에 공유될 수 있다. 보다 명확하게는, 상술한 바와 같이, PID가 패킷의 헤더로부터 추출되어, PID 레지스터에 위치한다. 그후 상기 레지스터의 내용은 현재 수신되는 데이터 스트림을 확인하는 PID의 테이블과 비교된다. 일단 PID가 패킷의 헤더로부터 추출되어 레지스터내에 위치하게 되면, 레지스터 내의 PID를 PID의 테이블과 비교하는 인터럽트 드라이버는 모든 트랜스포트 패킷 프로토콜 제어 프로그램 사이에서 공유될 수 있다.
도 7은 DSS 트랜스포트 패킷을 디코딩하는 것으로부터 ATSC 트랜스포트 패킷을 디코딩하는 것으로의 스위칭 모드의 처리를 도시하는 흐름도이다. DSS 트랜스포트 패킷과 ATSC 트랜스포트 패킷의 디코딩 사이의 스위치는 다양한 공지된 방법 중 임의의 방법에 의해 개시된다. 예컨대, 도 1을 참조하면, 사용자의 제어 하에서 사용자는 패킷 스트림을 선택하는데, 상기 패킷 스트림의 프로그래밍은 감시가 요구되는 프로그래밍이다. 패킷 스트림 소스(12)가 DSS 프로토콜의 패킷을 생성한다면, 패킷 스트림 소스(12)가 선택기(20)에 의해 적응 트랜스포트 프로토콜 디코더(30)에 접속될 때, 적응 트랜스포트 프로토콜 디코더는 DSS 트랜스포트 패킷을 디코드하기 위하여 동시에 구성된다. 패킷 스트림 소스(14)가 ATSC 프로토콜의 패킷을 생성한다면, 패킷 스트림 소스(14)가 선택기(20)에 의해 적응 트랜스포트 프로토콜 디코더(30)에 접속될 때, 적응 트랜스포트 프로토콜 디코더(30)는 ATSC 트랜스포트 패킷을 디코드하기 위하여 동시에 구성된다. 선택적으로, 수 개의 온-라인 프로그램 디렉토리가 존재하는데, 이는 나열된 프로그램의 프로토콜을 전달할 수 있다. 프로그램이 선택될 때, 디렉토리가 고려되고, 적응 트랜스포트 프로토콜 디코더(30)는 적절하게 구성된다. 적응 트랜스포트 프로토콜 디코더(30)를 구성하기 위하여 다른 방법이 또한 유용하다.
도 7에 있어서, 프로토콜의 스위치가 단계(202)에서 개시된다. 단계(204)에서, 메모리는 페이로드 버퍼(37)를 위하여 재할당된다. 예컨대, DSS 페이로드 버퍼는 127 바이트를 포함하고, ATSC 페이로드 버퍼는 184 바이트를 포함한다. 단계(206)에서, 소프트웨어(S/W) 포인터가 조정된다. 도시된 실시예에 있어서, 적응 트랜스포트 프로토콜 디코더(30)가 DSS 패킷을 디코드하도록 구성될 때, {적응 트랜스포트 프로토콜 디코더(30)가 ATSC 트랜스포트 패킷을 처리하도록 구성되는 동안 외부 DRAM(34')에 저장된} DSS 인터럽트 벡터(102)는 내부 메모리(34)의 내부 RAM(344)로 이동하는 반면, ATSC 인터럽트 벡터(102')는 내부 메모리(34)의 내부 RAM(344)으로부터 외부 DRAM(34')으로 동시에 이동한다. 그후, 메모리는 스택(110)을 위하여 할당된다. 최종적으로, 내부 메모리(34)의 내부 RAM(344)에 위치할 DSS 인터럽트 처리기{104(1)}의 부분은 할당된 위치로 이동한다.
역으로, 적응 트랜스포트 프로토콜 디코더(30)가 ATSC 패킷을 디코드하도록 구성될 때, {적응 트랜스포트 프로토콜 디코더(30)가 DSS 트랜스포트 패킷을 처리하도록 구성되는 동안 외부 DRAM(34')에 저장된} ATSC 인터럽트 벡터(102')는 내부 메모리(34)의 내부 RAM(344)로 이동하는 반면, DSS 인터럽트 벡터(102)는 내부 메모리(34)의 내부 RAM(344)으로부터 외부 DRAM(34')으로 동시에 이동한다. 그후 메모리는 내부 메모리(34)의 내부 RAM(344)에 위치할 스택{110(1)}을 위해 할당된다.
단계(208)에 있어서, 수신된 패킷의 헤더로부터 추출된 다양한 정보를 보유한 레지스터(도 1)는 소거된다. 단계(210)에서 스위치 처리는 종료되고, 적응 트랜스포트 프로토콜 디코더(30)는 새롭게 선택된 프로토콜로 패킷을 디코드할 준비가 된다.
적응 트랜스포트 프로토콜 디코더(30)가 두 개의 트랜스포트 프로토콜(DSS 및 ATSC)에 대해서 기술되었다. 당업자라면, 부가적인 프로토콜 역시, 헤더를 처리하고 이들 프로토콜의 패킷으로부터 페이로드를 추출하기 위하여 인터럽트 처리기(104)와 인터럽트 드라이버(106)를 적절히 설계 및 코딩하고, 그후 상기 프로토콜을 위한 인터럽트 벡터(102)의 코딩을 통해 적절한 인터럽트 처리기(104) 및 인터럽트 드라이버(106)를 사용하기 위하여 적응 트랜스포트 프로토콜 디코더(30)를 재구성함으로써, 실현될 수 있음을 이해할 것이다. 요구되는 처리를 수행하기 위한 소프트웨어 인터럽트의 사용은 빠른 환경 스위칭, 및 적응 트랜스포트 프로토콜 디코더(30)의 빠르고 쉬운 재구성을 야기한다.

Claims (12)

  1. 적응 트랜스포트(adaptive transport) 프로토콜 디코더에 있어서,
    각각이 페이로드(payload)를 포함하고, 제 1 트랜스포트 프로토콜을 구비하는, 패킷 스트림의 소스(12)와,
    각각이 페이로드를 포함하고, 제 2 트랜스포트 프로토콜을 구비하는, 패킷 스트림의 소스(14)와,
    상기 제 1 및 제 2 패킷 스트림 소스 중 선택된(20) 소스의 패킷으로부터 각 페이로드를 추출하기 위하여, 상기 제 1 및 제 2 패킷 스트림 소스에 접속된 프로토콜 디코더(30)를 특징으로 하는, 적응 트랜스포트 프로토콜 디코더.
  2. 제 1항에 있어서, 상기 제 1 및 제 2 패킷 스트림 소스에 접속된 각 입력 단자와, 상기 프로토콜 디코더에 접속된 출력 단자를 구비하고, 상기 제 1 및 제 2 패킷 스트림 소스 중 하나의 소스를 상기 프로토콜 디코더에 접속시키기 위한 선택 신호에 응답하는, 선택기를 더 특징으로 하는, 적응 트랜스포트 프로토콜 디코더.
  3. 제 1항에 있어서, 상기 프로토콜 디코더는, 상기 각 페이로드를 추출하기 위하여 상기 제 1 패킷 스트림 소스로부터 상기 패킷을 처리하기 위한 제 1 제어 프로그램과, 상기 각 패이로드를 추출하기 위하여 상기 제 2 패킷 스트림 소스로부터 상기 패킷을 처리하기 위한 제 2 제어 프로그램과, 상기 제 1 제어 프로그램과 상기 제 2 제어 프로그램 사이를 스위칭하기 위한 제 3의 제어 프로그램에 응답하는 프로세서를 포함하는, 적응 트랜스포트 프로토콜 디코더.
  4. 제 3항에 있어서, 상기 프로세서는, 상기 제 1, 제 2, 및 제 3 프로그램을 저장하기 위한 메모리를 포함하고,
    상기 제 1 및 제 2 제어 프로그램 모두는,
    각 수신된 패킷에 따라 수행되는 패킷 처리기와,
    메모리 내의 각 위치에 저장되고, 소프트웨어 인터럽트에 의해 호출되는, 다수의 인터럽트 드라이버(interrupt driver)와,
    메모리 내에서 고정되고, 미리 결정된 위치에 저장되고, 다수의 입력 데이터를 포함하는 인터럽트 벡터로서, 각각이 인터럽트 드라이버의 각 위치에 대한 포인터(pointer)를 포함하는, 인터럽트 벡터를 포함하는 것을 특징으로 하는, 적응 트랜스포트 프로토콜 디코더.
  5. 제 4항에 있어서, 상기 제 3 제어 프로그램은, 상기 제 1 및 제 2 제어 프로그램 중 하나의 인터럽트 벡터를 상기 메모리 내의 고정되고 미리 결정된 위치로 이동시키고, 동시에 상기 제 1 및 제 2 제어 프로그램 중 다른 하나의 인터럽트 벡터를 상기 메모리 내의 다른 위치로 이동시킴으로써, 상기 제 1 및 제 2 제어 프로그램 사이를 스위칭하는 것을 특징으로 하는, 적응 트랜스포트 프로토콜 디코더.
  6. 제 4항에 있어서, 상기 제 1 및 제 2 제어 프로그램 모두, 각 추출된 페이로드를 상기 메모리 내의 한 위치에 저장하기 위한 버퍼를 더 포함하는 것을 특징으로 하는 적응 트랜스포트 프로토콜 디코더.
  7. 제 6항에 있어서, 상기 제 3 제어 프로그램은,
    상기 제 1 및 제 2 제어 프로그램 중 하나의 인터럽트 벡터를 상기 메모리 내의 고정되고 미리 결정된 위치로 이동시키고, 동시에 상기 제 1 및 제 2 제어 프로그램 중 다른 하나의 인터럽트 벡터를 상기 메모리 내의 다른 위치로 동시에 이동시키고,
    상기 버퍼를 상기 메모리 내의 한 위치에 재할당함으로써, 상기 제 1 및 제 2 제어 프로그램 사이를 스위칭하는 것을 특징으로 하는, 적응 트랜스포트 프로토콜 디코더.
  8. 제 4항에 있어서, 상기 패킷 처리기는 상기 메모리의 한 위치에 저장된 인터럽트 처리기이고,
    상기 인터럽트 벡터의 입력 데이터 중 하나는 상기 패킷 처리기의 상기 위치를 지시하는 것을 특징으로 하는, 적응 트랜스포트 프로토콜 디코더.
  9. 제 8항에 있어서, 상기 제 1 및 제 2 패킷 스트림 소스 각각은 패킷이 유용할 때 인터럽트 요구 신호를 생성하고,
    상기 패킷 처리기의 상기 위치를 지시하는 상기 인터럽트 벡터 내의 입력 데이터는 상기 선택된 패킷 스트림 소스로부터의 상기 인터럽트 신호에 응답하는 것을 특징으로 하는, 적응 트랜스포트 프로토콜 디코더.
  10. 제 3항에 있어서, 상기 제 1 및 제 2 패킷 스트림 소스에 접속된 각 입력 단자와, 상기 프로토콜 디코더에 접속된 출력 단자를 구비하고, 상기 제 1 및 제 2 패킷 스트림 소스 중 하나의 소스를 상기 프로토콜 디코더에 접속시키기 위한 선택 신호에 응답하는, 선택기로서,
    상기 제 3 제어 프로그램은, 상기 제 1 패킷 스트림 소스가 상기 프로토콜 디코더에 접속될 때 상기 제 1 제어 프로그램에 스위칭하고, 상기 제 2 패킷 스트림 소스가 상기 프로토콜 디코더에 접속될 때 상기 제 2 제어 프로그램에 스위칭하기 위한 상기 선택 신호에 응답하는, 선택기를 더 특징으로 하는, 적응 트랜스포트 프로토콜 디코더.
  11. 제 1항에 있어서, 상기 수신된 패킷으로부터 추출된 상기 각 페이로드를 처리하기 위하여 상기 프로토콜 디코더에 접속된 페이로드 프로세서를 더 특징으로 하는, 적응 트랜스포트 프로토콜 디코더.
  12. 제 1항에 있어서, 상기 제 1 및 제 2 패킷 스트림 내의 각 패킷은 상기 페이로드에 관련된 정보를 포함하는 헤더를 더 포함하고,
    상기 프로토콜 디코더는 수신된 패킷의 헤더로부터의 정보를 저장하기 위한 레지스터를 포함하고,
    상기 프로토콜 디코더는 상기 정보를 얻기 위하여 상기 레지스터를 억세스하는 것을 특징으로 하는, 적응 트랜스포트 프로토콜 디코더.
KR1020000037727A 1999-07-08 2000-07-03 적응 트랜스포트 프로토콜 디코더 KR100708371B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US14284999P 1999-07-08 1999-07-08
US60/142,849 1999-07-08
US09/427,388 US7668189B1 (en) 1999-07-08 1999-10-26 Adaptive transport protocol
US9/427,388 1999-10-26
US09/427,388 1999-10-26

Publications (2)

Publication Number Publication Date
KR20010049698A true KR20010049698A (ko) 2001-06-15
KR100708371B1 KR100708371B1 (ko) 2007-04-18

Family

ID=26840475

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020000037727A KR100708371B1 (ko) 1999-07-08 2000-07-03 적응 트랜스포트 프로토콜 디코더

Country Status (8)

Country Link
US (1) US7668189B1 (ko)
EP (1) EP1089522B1 (ko)
JP (2) JP4842423B2 (ko)
KR (1) KR100708371B1 (ko)
CN (1) CN1178499C (ko)
DE (1) DE60036588T2 (ko)
MX (1) MXPA00006725A (ko)
TW (1) TW477139B (ko)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7668189B1 (en) * 1999-07-08 2010-02-23 Thomson Licensing Adaptive transport protocol
CN1586073A (zh) 2001-11-14 2005-02-23 罗瑟姆公司 利用数字电视广播信号提供gps辅助信息
EP1605687B1 (en) 2004-06-03 2012-11-28 STMicroelectronics (Research & Development) Limited System for receiving packet streams
US7876777B2 (en) 2004-12-30 2011-01-25 Honeywell International Inc. Multiple protocol decoder
US8910233B2 (en) 2008-12-22 2014-12-09 Mediatek Inc. Signal processing apparatuses capable of processing initially reproduced packets prior to buffering the initially reproduced packets
US8730251B2 (en) * 2010-06-07 2014-05-20 Apple Inc. Switching video streams for a display without a visible interruption
CN103517088A (zh) * 2012-06-14 2014-01-15 浙江大华技术股份有限公司 一种传输视频数据的方法、装置和终端
US9733847B2 (en) * 2014-06-02 2017-08-15 Micron Technology, Inc. Systems and methods for transmitting packets in a scalable memory system protocol
WO2018164355A1 (ko) * 2017-03-10 2018-09-13 엘지전자 주식회사 멀티캐스트 신호 송수신 방법 및 장치
CN115336258A (zh) * 2020-03-30 2022-11-11 索尼集团公司 信号处理装置及信号处理方法
CN112583818B (zh) * 2020-12-08 2021-12-24 清华大学 针对移动Web服务的自适应传输协议选择方法和装置

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4586128A (en) * 1983-04-14 1986-04-29 Burroughs Corporation Arbitrator circuit and technique for use in a digital computing system having multiple bus controllers
EP0491068A1 (en) * 1990-12-18 1992-06-24 International Business Machines Corporation Selective data broadcasting receiver adapter for personal computers
FR2678121B1 (fr) 1991-06-18 1994-04-29 Matra Communication Dispositif d'insertion de paquets numeriques dans un canal de transmission.
US5826017A (en) * 1992-02-10 1998-10-20 Lucent Technologies Apparatus and method for communicating data between elements of a distributed system using a general protocol
JPH066720A (ja) * 1992-06-16 1994-01-14 Toshiba Corp 画像信号処理装置
US5410709A (en) * 1992-12-17 1995-04-25 Bull Hn Information System Inc. Mechanism for rerouting and dispatching interrupts in a hybrid system environment
US5537417A (en) 1993-01-29 1996-07-16 International Business Machines Corporation Kernel socket structure for concurrent multiple protocol access
FR2705804B1 (fr) * 1993-05-27 1995-08-11 Sgs Thomson Microelectronics Architecture de processeur multi-tâches.
FR2705805B1 (fr) * 1993-05-27 1996-06-28 Sgs Thomson Microelectronics Système de traitement d'images.
US5768539A (en) 1994-05-27 1998-06-16 Bell Atlantic Network Services, Inc. Downloading applications software through a broadcast channel
US5649318A (en) 1995-03-24 1997-07-15 Terrastar, Inc. Apparatus for converting an analog c-band broadcast receiver into a system for simultaneously receiving analog and digital c-band broadcast television signals
US5497401A (en) 1994-11-18 1996-03-05 Thomson Consumer Electronics, Inc. Branch metric computer for a Viterbi decoder of a punctured and pragmatic trellis code convolutional decoder suitable for use in a multi-channel receiver of satellite, terrestrial and cable transmitted FEC compressed-digital television data
US5666487A (en) 1995-06-28 1997-09-09 Bell Atlantic Network Services, Inc. Network providing signals of different formats to a user by multplexing compressed broadband data with data of a different format into MPEG encoded data stream
US5671253A (en) 1995-07-12 1997-09-23 Thomson Consumer Electronics, Inc. Apparatus for demodulating and decoding video signals encoded in different formats
US5737495A (en) 1995-09-29 1998-04-07 Intel Corporation Method and apparatus for managing multimedia data files in a computer network by streaming data files into separate streams based on file attributes
US5724410A (en) * 1995-12-18 1998-03-03 Sony Corporation Two-way voice messaging terminal having a speech to text converter
US6172988B1 (en) 1996-01-31 2001-01-09 Tiernan Communications, Inc. Method for universal messaging and multiplexing of video, audio, and data streams
US6172972B1 (en) 1996-05-28 2001-01-09 Microsoft Corporation Multi-packet transport structure and method for sending network data over satellite network
US5933500A (en) * 1996-05-31 1999-08-03 Thomson Consumer Electronics, Inc. Adaptive decoding system for processing encrypted and non-encrypted broadcast, cable or satellite video data
US5936962A (en) * 1996-07-02 1999-08-10 Extreme Networks, Inc. Method and apparatus for predicting and controlling data transmission in a CSMA/CD LAN
US5982411A (en) * 1996-12-18 1999-11-09 General Instrument Corporation Navigation among grouped television channels
US6157673A (en) * 1996-12-26 2000-12-05 Philips Electronics North America Corp. Fast extraction of program specific information from multiple transport streams
JP4346114B2 (ja) 1997-03-12 2009-10-21 パナソニック株式会社 複数の標準的な出力信号を提供するmpegデコーダ
TR199902479T2 (xx) * 1997-04-14 2000-04-21 Thomson Consumer Electronics, Inc. MPEG uyumlu veriler ve internet bilgilerinin işlenmesi ve dekodifikasyonu için bir sistem.
JPH1127660A (ja) * 1997-07-01 1999-01-29 Sony Corp 信号処理装置および復号化装置
JPH11112958A (ja) * 1997-10-07 1999-04-23 Toshiba Corp ディジタル放送受信端末装置
JPH11196348A (ja) * 1997-12-26 1999-07-21 Funai Electric Co Ltd デジタル放送受信機
US6233389B1 (en) * 1998-07-30 2001-05-15 Tivo, Inc. Multimedia time warping system
US6356950B1 (en) * 1999-01-11 2002-03-12 Novilit, Inc. Method for encoding and decoding data according to a protocol specification
US7668189B1 (en) * 1999-07-08 2010-02-23 Thomson Licensing Adaptive transport protocol
KR100325023B1 (ko) * 2000-05-18 2002-02-25 이 용 국 다중 채널 수신 장치 및 그 방법
US6577640B2 (en) * 2001-08-01 2003-06-10 Motorola, Inc. Format programmable hardware packetizer
US9728652B2 (en) * 2012-01-25 2017-08-08 Infineon Technologies Ag Sensor device and method

Also Published As

Publication number Publication date
EP1089522A2 (en) 2001-04-04
CN1178499C (zh) 2004-12-01
MXPA00006725A (es) 2004-10-28
EP1089522A3 (en) 2004-04-14
JP2012005144A (ja) 2012-01-05
JP4842423B2 (ja) 2011-12-21
JP5313309B2 (ja) 2013-10-09
DE60036588T2 (de) 2008-07-03
CN1280444A (zh) 2001-01-17
KR100708371B1 (ko) 2007-04-18
TW477139B (en) 2002-02-21
EP1089522B1 (en) 2007-10-03
US7668189B1 (en) 2010-02-23
DE60036588D1 (de) 2007-11-15
JP2001053825A (ja) 2001-02-23

Similar Documents

Publication Publication Date Title
JP5313309B2 (ja) 適応トランスポートプロトコル復号器
AU771588B2 (en) Remote display control of video/graphics data
KR100382432B1 (ko) 스마트카드에기초한보안성이개선된액세스제어시스템
US8144174B2 (en) Display processing method and display processing apparatus
US5613003A (en) Packet video signal inverse transport processor memory address circuitry
MXPA96001816A (en) Method and apparatus for operating a decorrient transportation packet for data representing a plurality of signals decomposes
JP2012075194A (ja) 現在番組視聴中における新たな番組情報の自動表示
US5475688A (en) Media error code generation as for a video inverse transport processor
EP1154642B1 (en) A method for using a single osd pixmap across mulitple video raster sizes by chaining osd headers
US6826776B1 (en) Method and apparatus for determining signal path
US20020175895A1 (en) OSD (on screen display) cursor display method and OSD image display apparatus
US20100066909A1 (en) Video Processing Apparatus and Video Processing Method
US20050259751A1 (en) System and a method for controlling audio/video presentation on a sink device
AU781388B2 (en) An adaptive transport protocol decoder
KR100343385B1 (ko) 온 스크린 디스플레이 커서 표시방법 및 오에스디 영상표시장치
JP4813655B2 (ja) ディジタル・ビデオ処理装置を動作させる方法、ディジタル・テレビジョン、およびディジタル・ビデオ・ディスク・プレーヤを動作させる方法
JP4303884B2 (ja) モデム制御
US20030149977A1 (en) Transferring large bitmap data using analog switching
KR20000049170A (ko) 1-비트 픽셀을 이용하여 온스크린 디스플레이 메시지를 생성하는장치 및 그 방법
US20020057371A1 (en) Signal transmission method and apparatus
KR100870403B1 (ko) 부가정보 표시 방법 및 그 장치
US8416348B2 (en) Digital TV and method for processing data signal in digital TV
KR20070040455A (ko) 디지털 tv 수신기에서 하나의 채널맵 생성 및 채널 전환방법
US20090110057A1 (en) Processing apparatus and processing method for a digital television
KR20000046168A (ko) 아날로그/디지털 티브이의 오에스디 발생장치 및방법

Legal Events

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

Payment date: 20130318

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140320

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20160318

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20170317

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20190401

Year of fee payment: 13