KR100234653B1 - 비디오 디스플레이 시스템 및 영상 이미지 디스플레이 방법 - Google Patents

비디오 디스플레이 시스템 및 영상 이미지 디스플레이 방법 Download PDF

Info

Publication number
KR100234653B1
KR100234653B1 KR1019960054315A KR19960054315A KR100234653B1 KR 100234653 B1 KR100234653 B1 KR 100234653B1 KR 1019960054315 A KR1019960054315 A KR 1019960054315A KR 19960054315 A KR19960054315 A KR 19960054315A KR 100234653 B1 KR100234653 B1 KR 100234653B1
Authority
KR
South Korea
Prior art keywords
video
analog
output
multiplexer
composite video
Prior art date
Application number
KR1019960054315A
Other languages
English (en)
Other versions
KR970064204A (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 KR970064204A publication Critical patent/KR970064204A/ko
Application granted granted Critical
Publication of KR100234653B1 publication Critical patent/KR100234653B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/66Transforming electric information into light information
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0338Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of limited linear or angular displacement of an operating part of the device from a neutral position, e.g. isotonic or isometric joysticks
    • 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/4104Peripherals receiving signals from specially adapted client devices
    • H04N21/4135Peripherals receiving signals from specially adapted client devices external recorder
    • 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/422Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
    • H04N21/42204User interfaces specially adapted for controlling a client device through a remote control device; Remote control devices therefor
    • H04N21/42206User interfaces specially adapted for controlling a client device through a remote control device; Remote control devices therefor characterized by hardware details
    • 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/422Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
    • H04N21/4223Cameras
    • 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/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/4263Internal components of the client ; Characteristics thereof for processing the incoming bitstream involving specific tuning arrangements, e.g. two tuners
    • 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/42653Internal components of the client ; Characteristics thereof for processing graphics
    • 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/42692Internal components of the client ; Characteristics thereof for reading from or writing on a volatile storage medium, e.g. Random Access Memory [RAM]
    • 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/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4312Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
    • H04N21/4316Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations for displaying supplemental content in a region of the screen, e.g. an advertisement in a separate window
    • 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/4622Retrieving content or additional data from different sources, e.g. from a broadcast channel and the Internet
    • 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/47End-user applications
    • H04N21/482End-user interface for program selection
    • 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
    • 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/42646Internal components of the client ; Characteristics thereof for reading from or writing on a non-volatile solid state storage medium, e.g. DVD, CD-ROM

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Graphics (AREA)
  • Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Studio Circuits (AREA)

Abstract

사용자에게 디스플레이되는 두 개의 아날로그 복합 비디오 신호를 프로세싱하는 방법 및 장치가 개시되어 있다. 이 시스템은 제 1 및 제 2 아날로그 복합 비디오 신호를 각각 발생시키기 위해 적어도 제 1 및 제 2 비디오 소스와, 제 1 및 제 2 비디오 소스에 결합되는 선택기를 포함한다. 선택기는, 비디오 프로세서의 하나의 입력으로 제 1 또는 제 2 아날로그 복합 비디오 신호를 공급하고, 이와 동시에 독립적으로 비디오 프로세서의 제 2 입력으로 제 1 또는 제 2 아날로그 복합 비디오 신호를 공급하도록 동작가능하다. 비디오 프로세서는, 비디오 프로세서의 제 1 입력으로 공급되는 아날로그 비디오 신호의 일부와, 비디오 프로세서의 제 2 입력으로 공급되는 아날로그 복합 비디오 신호의 일부를 포함하는 출력 아날로그 복합 비디오 신호를 발생시키기 위해 CPU의 제어하에 동작가능하다.

Description

비디오 디스플레이 시스템 및 시각 이미지 디스플레이 방법
본 발명은, 소위 "텔리비전 공간(television space)"의 소비자에 의한 사용에 관한 것이다. 즉, 종래에서와 같이, 비디오/오디오 신호 스트림의 사용은, 무선 주파수 밴드(radio frequency bands)를 통한 방송 또는 케이블 배포(cable distribution)에 의해 분배되었거나, 또는 카셋트 레코더(cassette recorders) 또는 비디오 디스크 플레이어(video disc player)와 같은 비디오 레코더/플레이어 장치, 또는 카메라, 게임 시스템 또는 컴퓨터와 같은 직접적인 라이브 소스(live sources)로부터 이용가능하였다. 이러한 비디오/오디오 신호 스트림은, 아날로그 정보를 전송하든지 또는 디지털로 인코딩된 정보를 전송하든지 간에, 대부분의 소비자에게 정보 및 엔터테인먼트(entertainment)의 중요한 자원으로 나타나게 되었다.
종래에, 텔레비전 공간으로의 액세스는 텔레비전 수신기의 사용에 의해 달성되었다. 그 후, 분배의 방법에 변화가 왔으며, 아날로그 신호 스트림용 케이블 박스, 레코더/플레이어, 게임 머신(machine), 홈 카메라 등과 같은 여러 가지 셋 탑 장치(set top devices)를 사용하게 되었다. 텔레비전 공간 기법이 현재 "가정 극장(home theater)"으로 알려진 것에 접근함에 따라, 상호 접속된 7개 이상의 구성 소자를 갖는 시스템이 가능해졌다. 이러한 시스템에서 여러 개, 또는 심지어 구성 시스템 모두가 각기 원격 제어 장치를 가질 수 있으며, 이에 의해 사용자(human observer)는 사용가능한 제어 단자를 시스템의 정면에서 직접 조작할 필요가 없이 각각의 구성 시스템의 기능을 제어할 수 있다. 시스템이 확산됨에 따라, 사용자는 빈번하게 원격 제어 장치의 확산과 대면하게 된다.
또한, 텔레비전 공간을 사용하는 전술한 장치 및 소자가 확산됨에 따라, 예를 들어 TV, 비디오 레코더/플레이어(VCR) 장치, 케이블 박스, 카메라, 게임 시스템 등과 같은 장치 및 구성 요소를 접속할 때 해결해야 할 많은 문제점이 또한 발생되었다. 이들 문제점은 구성 요소들간에 복잡한 상호접속 케이블링(cabling)을 포함하여, VCR, 다수의 원격 제어 장치 및 이들 TV에 접속되는 관련 하드웨어를 프로그래밍하는데 있어서의 어려움을 포함한다.
본 발명은 VCR, 케이블 박스, 정보 서비스, CD-ROM, 게임, 카메라, 튜너(tuner)를 단일 시스템으로 결합시키는 고도로 집적된 시스템을 제공하므로써 이들 문제점을 해결할 수 있는 방안을 제안한다. 본 발명에 따른 시스템은 다수의 시청(viewing) 및 레코드 옵션을 선택하기 위한 아날로그 멀티플렉서를 포함한다. 또한, 시스템, 비디오, 그래픽, 전자 프로그램 안내(electronic program guide, EPG) 정보를 위한 단일 메모리 인터페이스가 제공된다. 또한, 전체 시스템의 자원들로 액세스할 수 있는 단일 원격 제어 장치가 제공된다. 이 원격 제어 장치는 그 자원들과 관련되어, 사용자에 의해 작동되는 최소한의 버튼을 갖고 있다.
전술한 바와 같이, 획득된 시각 이미지를 디스플레이하는 시스템을 통해 액세스되는 서비스 또는 기능을 선택하는데 있어서, 텔레비전 공간, 또는 임의의 유사한 디스플레이에서 사용가능한 사용자의 프로그래밍을 돕는 것이 본 발명의 하나의 목적이다. 이 목적을 달성하기 위해, 본 발명은 사용자에게 디스플레이되는 두 개의 아날로그 복합 비디오 신호를 프로세싱하는 방법 및 장치를 제시한다. 특히, 본 발명은, 제 1 및 제 2 아날로그 복합 비디오 신호를 각각 발생시키기 위한 적어도 제 1 및 제 2 비디오 소스와, 제 1 및 제 2 비디오 소스에 결합되는 선택기를 포함한다. 선택기는, 비디오 프로세서의 하나의 입력으로 제 1 또는 제 2 아날로그 복합 비디오 신호를 제공하고, 이와 동시에 독립적으로 비디오 프로세서의 제 2 입력으로 제 1 또는 제 2 아날로그 복합 비디오 신호를 제공하도록 동작한다. 비디오 프로세서는 비디오 프로세서의 제 1 입력으로 공급된 아날로그 복합 비디오 신호의 일부와, 비디오 프로세서의 제 2 입력으로 공급된 아날로그 복합 비디오 신호의 일부를 포함하는 출력 아날로그 복합 비디오 신호를 발생시키도록 동작한다.
제1도는 텔레비전 수신기, 셋 탑 장치, 원격 제어 장치를 포함하는 본 발명의 하나의 실시예의 사시도.
제2도는 제1도의 원격 제어 장치의 확대 사시도.
제3도는 제1도의 셋 탑 장치의 소정의 엘리먼트의 개략적인 블럭도.
제4도는 제1도 및 제3도의 셋 탑 장치의 소정의 엘리먼트의 개략적인 블럭도.
제5도는 제1도, 제3도, 제4도의 셋 탑 장치의 소정의 엘리먼트의 개략적인 블록도.
제6도는 텔레비전 수신기 및 원격 제어 장치를 포함하는 본 발명의 다른 실시예의 사시도.
제7도는 퍼스널 컴퓨터 시스템 및 부속 입/출력 장치를 포함하는 본 발명의 또다른 실시예의 사시도.
제8도는 제7도의 퍼스널 컴퓨터의 소정의 엘리먼트의 분해 사시도.
제9도는 제8도의 퍼스널 컴퓨터의 소정의 엘리먼트의 개략적인 사시도.
제10도는 본 발명에 따른 제1도 내지 제9도의 시스템을 갖는 제어 프로그램 기능의 구조를 도시하는 도면.
제11도는 제10도에 도시된 구조를 사용하여 구축되는 제어 프로그램의 코딩을 도시한 도면.
제12도 내지 제18도는 본 발명에 따라 동작하는, 제1도 또는 제6도의 텔레비전 수신기 또는 제7도의 퍼스널 컴퓨터 시스템의 디스플레이 스크린을 도시한 도면.
〈도면의 주요부분에 대한 부호의 설명〉
10 : 텔리비전 수신기 11 : 캐비넷
12 : 디스플레이 장치 30 : 셋 탑 장치
20 : 원격 제어 장치 21 : 하우징
22 : 입력 장치
본 발명의 몇몇 목적이 기술되었으며, 그 밖의 다른 목적은 첨부된 도면과 관련하여 설명이 진행됨에 따라 제시될 것이다.
본 발명은 본 발명의 바람직한 실시예가 도시된 첨부 도면을 참조로 이하 더 상세히 기술되며, 설명을 시작하기에 앞서, 본 기술 분야에 통상의 지식을 가진 자는, 본 발명의 바람직한 결과를 달성할 수 있는 한, 본 명세서에 개시된 발명을 변경할 수 있음을 주지해야 한다. 따라서, 이하의 설명은, 본 발명을 한정하는 것이 아니라, 본 기술 분야에 통상의 지식을 가진 자에게 넓은 의미의 개시물로 제시됨을 주지해야 한다.
본 발명의 특정 실시예를 상세히 설명하기에 앞서, 본 발명이 실용화되는 환경에 대해 약간의 설명을 제시하는 것이 유용하리라 생각된다.
좀 더 확장된 형태에 있어서, 본 발명은 비디오 디스플레이 장치, 비디오 디스플레이 장치에 의해 시각 이미지의 디스플레이를 구동시키기 위한 회로, 디스플레이 제어기, 원격 제어 장치를 갖는 시스템을 사용하여 실행된다. 가장 단순화된 형태에 있어서, 본 발명은 원격 제어 장치 및 디스플레이 제어기의 사용을 통해 실행될 수 있다.
본 명세서에 개시된 본 발명의 실행에 유용한 비디오 디스플레이 장치는 텔레비전 수신기와 같은 소비자 전자 시스템 및 퍼스널 컴퓨터 시스템에서 종래의 사용된 것과 같은 글래스 엔벨로프(glass envelope) 음극선과(CRT), 다수의 청중을 위한 디스플레이에서 사용되는 것과 같은 텔레비전 프로젝터, 유사하게 사용되는 액정 디스플레이(LCD), 가스 플라즈마 디스플레이(gas plasma display), 그 밖의 다른 평판 디스플레이(flat panel displays)를 포함하는 것으로 생각한다. 나열된 장치의 유형은 예시로서만 제시하였으며, 본 발명에서 유용한 디스플레이 유형은, 통상적으로 사용되는 것이 아니거나, 또는 이 설명을 기술하는 시점에서는 알려지지 않은 그 밖의 다른 유형의 디스플레이 장치로서 나열된 장치에 의해 제시되는 디스플레이와 유사한 방식으로 사용자에게 시각 이미지를 디스플레이할 수 있는 장치를 포함하도록 확장될 수 있다고 생각한다.
어떤 경우에도, 디스플레이는 비디오 신호를 비디오 디스플레이 장치로 전송 할 수 있는 회로에 결합한다. 이러한 비디오 신호를 비디오 디스플레이를 구동시켜 시각 이미지를 디스플레이하게 한다. 이러한 회로는, 사용자에 의해 직접 센싱되는 주파수 범위 밖이고 적절한 프로세싱 후 영상 디스플레이를 발생시킬 데이터를 전송하는 주파수에서, 전송되거나 분배되는 비디오 신호 스트림을 수신하기 위한 아날로그 또는 디지털 튜너를 포함할 수 있다. 이러한 회로의 특정 예는 이하 제시될 것이다. 그러나, 회로는 텔레비전 수신기에 대한 부속물로서 사용되는 셋 탑 장치, 텔레비전 수신기, 퍼스널 컴퓨터 시스템, 또는 소비자 전자 시스템의 그 밖의 다른 유형에서 전형적으로 발견되는 것들을 포함할 수 있다.
이러한 회로로 전달되며, 이러한 회로를 통과하는 비디오 신호 스트림은 여러 가지 특성을 가질 수 있다. 이 스트림은, 전송 또는 저장을 용이하게 하기 위해 프로세싱에 의해 몇몇 정보가 밀집되거나 압축되어 있는 압축된 신호일 수 있다. 이러한 압축 기법중 하나는 MPEG(Moving Picture Expert Group)에 의해 특정화되는 것이다. 이러한 경우, 회로는 비디오 신호 스트림의 압축복원을 위한 설비(provision)를 포함할 수 있다. 스트림은 압축되지 않은 신호일 수도 있다. 스트림은 종래의 NTSC 또는 PAL 방송 텔레비전 특성과 같은 아날로그 정보일 수 있으며, 또한 아날로그 정보를 디지털화하거나 직접적으로 원래 디지털에 의한 디지탈 정보를 포함할 수 있다. 스트림은 표현되거나, 기록되는 이벤트의 발생과 동시에 전송되고, 수신되어 디스플레이된다는 의미에서 "라이브(live)"일 수 있다. 신호의 분배는 방송, 또는 케이블, 광섬유 등과 같은 몇몇 광대역(brodband) 분배 방법에 의해 이루어질 수 있다.
본 발명의 상세한 설명에 개시될 본 발명의 모든 실시예에서, 비디오 신호 스트림은 디스플레이 제어기의 제어하에 비디오 디스플레이 장치로 전송된다. 이하 더 상세히 기술되는 바와 같이, 디스플레이 제어기는 이하 기술될 여러 가지 상이한 환경에서 이용될 수 있다.
이러한 환경중 하나는, 본 발명에 의해 고려되는 바와 같이, 케이블 분배 네트워크에 의해 비디오 스트림이 전송되는 많은 가정에서 사용되는 바와 같은, 케이블 튜너 시스템의 형태일 수 있는 셋 탑 장치에 의해 제공된다. 셋 탑 장치는 인공위성 전송, 또는 암호화(encryption)되거나 암호화되지 않고 디지털 형태로 분배되는 비디오 신호 스트림을 디코딩할 수 있는 능력을 갖는다. 셋 탑 장치는 또한 VHS 테이프 또는 비디오 디스크와 같은, 기록/재생 능력을 구비하는 장치의 형태일 수 있다. 셋 탑 장치는 또한 게임 머신으로 알려진 형태일 수 있으며, 이러한 형태로는 닌텐도(Nintendo) 및 세가(Sega)에 의해 제공되는 시스템이 가장 널리 알려진 것이다. 셋 탑 장치는 백 채널(back channel) 능력을 구비할 수 있어서, 분배 링크를 직접 통하거나 또는 종래의 전화선과 같은 변형 채널을 통해 분배 시스템으로 신호를 복귀시킬 수 있게 된다. 셋 탑 장치는 본 발명의 상세한 설명에서 상세히 제시되지 않은 다른 것뿐만 아니라, 간략하게 전술된 시스템의 몇몇 또는 모든 능력을 포함할 수 있다.
이러한 셋 탑 장치중 하나가 도 1에 특별히 도시되어 있으며, 여기에는 텔레비전 수신기(10), 원격 제어 장치(20), 셋 탑 장치(30)가 도시되어 있다. 텔레비전 수신기(10)는 바람직하게, 텔레비전 수신기의 임의의 공급자로부터 임의의 소비자에게 이용가능한 유형의 장치이며, 내부에 비디오 디스플레이 장치(12)가 구성된 하우징 또는 캐비넷(11)을 갖는다. 전술한 바와 같이, 디스플레이 장치(12)는 다수의 형태중 임의의 하나의 형태를 취할 수 있다. 또한 사용자에 의해 직접 센싱되는 주파수 범위 밖의 주파수에서 전송되는 신호를 수신하고, 사용자에 의해 인식 가능한 시각 이미지를 디스플레이하기 위해 비디오 디스플레이 장치를 구동시키는 비디오 신호를 비디오 디스플레이 장치로 전송하기 위해, 비디오 디스플레이 장치에 결합된 비디오 수신 회로(도 1에 도시되지 않음)가 하우징 또는 캐비넷(11)내에 하우징된다. 텔레비전 수신기는 NTSC 또는 PAL 표준의 방송 신호를 수신하도록 구성된 것일 수 있으며, 또는 케이블 서비스 제공자에 의해 분배되는 것과 같은 다수의 아날로그 신호 채널을 직접 수신할 수 있는 디자인을 구현하는 "케이블 레디(cable ready)" 수신기일 수 있다. 본 발명의 상세한 설명을 기록하는 시점에서 이러한 세트가 소비자 제품으로서 상업적으로 용이하게 이용가능하지 않을 수 있지만, 텔레비전 수신기는 디지털 데이터 스트림을 수신하도록 구성된 것일 수 있다. 이러한 수신기에 대한 회로의 상세한 설명은 다수의 기술적 참조 문헌에서 발견될 수 있다.
비디오 수신 회로는, 디스플레이되는 시각 이미지를 정의하는 아날로그 정보와, 이러한 시각 이미지를 정의하는 디지털로 부호화된 정보, 또는 이러한 시각 이미지를 정의하며 디지털로 부호화되어 압축된 정보를 전송하는 신호를 수신할 수 있는 것으로 고려된다. 이러한 신호는 방송 전송 또는 케이블 전송 또는 인공위성 전송 또는 원격 통신 네트워크를 통한 전송에 의해 전송되는 것으로 고려된다.
원격 제어 장치(20)의 한 형태가 도 1 및 도 2의 20에 도시되어 있다. 바람직하게, 제어 장치(20)는 텔레비전 수신기(10)로부터 다소 떨어진 거리에서 사용 가능한 3 축 원격 제어 장치이다. "3 축"이라는 말의 의미는 이하의 상세한 설명으로부터 더 명확해질 것이다. 제어 장치(20)는 디스플레이 장치상에서 디스플레이되는 이미지를 시청하는 사용자의 손에 들어갈 크기로 된 하우징(21)을 갖는다. 하우징은, 사용자의 손에 편리하게 들어가도록 특별히 구성된 것으로 도시되었지만, 합리적으로 손에 쥘 수 있으면 어떠한 구성이라도 취할 수 있다. 또한, 제어 장치(20)는 사용자에 의한 조작을 위해 하우징(21)내에 장착되어 수동으로 작동가능한 입력 장치(22), 하우징내에 장착되고 입력 장치(22)에 결합되어 사용자에 의해 직접 센싱되는 주파수 범위 밖의 주파수에서 사전설정된 방식으로 구축된(coordinated) 명령 신호를 사용자에 의한 입력 장치(22)의 조작으로 전송하기 위한 제어 전송 회로(도 2에 도시되지 않음)을 구비한다. 도시되지 않았지만, 이러한 회로는, 텔레비전 수신기 및 오디오 시스템과 같은 소비자 전자 시스템에 의해 널리 사용된 것과 같은 보다 전형적인, 손에 쥘 수 있는 원격 제어 장치에서 사용된 것일 수 있다. 이와같이, 이 회로는 이러한 장치의 제조 기법을 따를 수 있다.
입력 장치의 "3 축" 특성은 "눌러서 선택(press to select)" 특성으로 또한 알려질 수 있다. 다르게 기술되는 바와 같이(그리고, 이 설명이 진행됨에 따라 더욱 명백해지는 바와 같이), 입력 장치는 측면에서 측면으로, 사용자의 손으로 향하거나 멀어지며, 장치(22)상의 중앙에 위치한 원(circle)주위의 임의의 지점을 향하여 조작될 수 있다. 이러한 조작을 방위도(compass rose)의 개념에 의해 설명하면, 측면 대 측면 동작은 동서방향으로의 이동이며, 사용자의 손으로 향하거나, 멀어지는 동작은 남북방향으로의 이동일 수 있다. 이 분석에서, 장치(22)는 컴퍼스(compass)의 360°중 임의의 한 지점으로 향하는 이동을 지시할 수 있다.
이런 식으로 조작될 때, 입력 장치(22)는, 본 발명에서, 커서(cursor) 또는 포인터(pointer) 디스플레이 엘리먼트가, 디스플레이 장치(12)에 의해 제공되는 화면을 가로지르는 이동을 실행하도록 하는 신호를 발생시킬 것이다. (이하의 설명으로부터 더 명백해지는 바와 같이) 이러한 조작이 디스플레이된 시각 이미지의 적절한 부분으로 포인터를 위치지정하게 되면, 이러한 엘리먼트에 의해 지시되는 동작은 입력 장치(22)를 누르므로써 선택될 수 있다. 따라서, (전술한 바와 같은) 방위도의 지점으로의 이동은 2 축상의 이동이며, 입력 장치(22)를 누르는 것은 세 번째 축에 따른 이동이다. "3 축" 원격 제어 장치라는 용어를 발생시키는 것은 포인터 위치지정을 위한 두 개의 축과 동작 선택을 위한 세 번째 축이다.
입력 장치(22)는, 비록 하나의 형태로 도시되었지만, 여러가지 형태를 취할 수 있다. 특히, 장치(22)는 본 명세서에서 "위글 스틱(wiggle stick)"으로 일컬어지는 것으로 도시된다. 본 발명에서, 위글 스틱은 원격 제어 장치(20)의 하우징(21)내에 피봇(pivot)되며, 이로부터 돌출하는 가늘고 긴 부재(elongate member)이다. 스트레인 게이지(strain gauge) 유형 장치 또는 다른 전자기계적 센서일 수 있는 적절한 센서에 의해, 위글 스틱상에 가해진 압력 또는 이에 대한 물리적 이동은 사용자에 의한 조작을 지시하는 전기 신호로 변환된다. 입력 장치(22)의 다른 형태는, (텔레비전 수신기를 위한 게임 기계 부속물에 사용되는, 상업적으로 이용가능한 게임 제어기에는 발견되는 장치와 유사한) 와블 플레이트(wobble plate), 트랙볼, 마우스, 또는 관성(inertial) 마우스일 수 있다. 후자의 두 개의 장치에서, 종래의 개인용 컴퓨터 시스템에서 사용된 마우스는 디스플레이 장치에 의해 제공되는 화면에 따라 커서 또는 포인터 디스플레이 엘리먼트를 이동시키는 신호를 발생시키기 위해 사용자에 의해 이동되는 표면상에 놓이는 반면, 관성 마우스는 자체에 포함된 관성 플랫폼을 참조하여, 공기중에서와 같이 표면이 없는 상태에서 조작될 수 있다는 점에서 두 장치는 다르다. 이러한 관성 마우스는 에어(air) 마우스로 또한 알려져 있다.
원격 제어 장치(20)는 여러 가지 방식중 하나의 방식으로 (이하 더 상세히 설명될) 디스플레이 제어기에 결합된다. 도 1 내지 도 6에 도시된 형태에서, 원격 제어 장치(20)는 하우징(21)내에 장착된 명령 전송기 회로에 의해 결합되며, 사용자에 의해 직접 센싱할 수 있는 주파수 범위 밖의 주파수에서 사전설정된 방식으로 구축된 명령 신호를 사용자에 의한 입력 장치의 조작으로 전송하기 위해 입력 장치(22)에 결합된다. 다른 포인터 제어 장치와 관련된 본 기술 분야에 통상의 지식을 가진 자에게 알려진 바와 같이, 이러한 명령 신호는 적외선 방사상 방출기, 무선 주파수 방출기, 또는 초음파 방출기에 의해 방출될 수 있다. 다른 형태에서, 도 7 내지 도 8의 퍼스널 컴퓨터 시스템과 연관되어 이하 기술될 명령 신호는 가늘고 긴 유연성의 전도체를 통해 전송될 수 있다.
셋 탑 장치(30)중 하나의 형태는 도 3 내지 도 5에 특별히 도시되어 있으며, 이들 도면을 참조로 상세히 기술될 것이다. 그러나, 본 명세서에 기술된 특정 장치는 전술한 바와 같은 다수의 여러 가지 장치중 하나일 뿐임을 주지해야 한다. 기술될 실시예는 바람직하게 도 3에 도시된 장치(30)의 엘리먼트중에서 많은 신호가 통과하는 아날로그 멀티플렉서(31)를 갖는다. 아날로그 멀티플렉서(31)에 도달하는 신호는 제 1 또는 제 2 튜너(34, 35) 또는 케이블 인터페이스(36)를 통해 안테나 또는 케이블 커넥션(32)으로부터 올 수 있다. 케이블 인터페이스는 단일 사용("시청 횟수별로 지불(pay per view)") 또는 타이밍된 간격(예약) 단위로 보안상 인코딩된 신호 스트림의 복호화(decryption)를 허용할 수 있다. 아날로그 멀티플렉서(31)는 또한 MPEG 프로세서(38), 비디오 프로세서(39), VHS 비디오 카셋트 레코더/플레이어 또는 비디오 디스크 플레이어와 같은 비디오 기록/재생 장치(40), 및 카메라 보조 포트(42)를 통한 카메라(도시되지 않음) 또는 게임 보조 포트(44)를 통한 게임 머신(도시되지 않음)과 같은 보조 장치의 출력으로부터 도관(conduct)으로서 가능한다.
비디오 프로세서(39)는 셋 탑 장치의 중심적인 엘리먼트이다. 전술한 엘리먼트 이외에도, 프로세서(39)는 시스템 메모리(45), 아날로그 오디오 제어 장치(46), 중앙 처리 장치 또는 CPU로서 동작하는 마이크로프로세서(48), 플래쉬 메모리(flash memory)(49), 적외선 수신기/블라스터(blaster)를 포함하는 I/O 프로세서(50), 확장 버스(50), 케이블 또는 전화 모뎀(52), 컴팩트 디스크(또는 CD) 드라이브(54)와 동작하도록 접속된다. 이들 엘리먼트 각각은 이하 충분히 설명될 기능을 실행한다.
비디오 프로세서(39)는 도 5에 관해 설명하는 부분에서 상세히 설명될 것이다. 비디오 프로세서(39)는 이중(dual) VBI 디코더, 동기 추출기(sync extract), 젠록(genlock) 및 타이밍 장치, 메모리 리프레셔(refresher), 비디오 제어기, 브리터(blitter) 그래픽 코프로세서, CD 드라이브 제어기, 디지털 신호 프로세서(DSP) 사운드 코프로세서, 6 개의 가능한 버스 마스터(CPU, 브리터, DSP, 메모리 리프레셔, 비디오 제어기, 및 CD 드라이브 제어기)간의 시스템 메모리에 대한 액세스를 중재하기 위한 중재자(arbitrator)의 기능 블록을 포함한다고 하면 충분할 것이다. 중재자는 본 명세서에서 기술되는 바와 같이, 장치의 우선 순위 변경을 제어하며, 비디오 프로세서(39)내의 모든 장치와 전기적 회로 통신을 한다. 예를 들면, CPU(48)는 인터럽트가 발생할 때까지 모든 버스 마스터중 우선 순위가 가능 낮다. 따라서, 중재자는 CPU에 대한 인터페이스 및 인터럽트 제어기 양쪽과 전기적 회로 통신 상태에 있다.
시스템(30)의 두 개의 튜너(34, 35)는 표준 방송 또는 (안테나 또는 케이블 접속(32)으로부터 수신되는) 케이블 기반 입력을 지원하며, 표준 아날로그 복합 비디오 출력을 제공하도록 구성될 수 있다. 튜너(34, 35)는 모두 안테나(32)로부터 완전한 RF 방송 스펙트럼을 수신하나, 각 튜너는 전형적으로 상이한 주파수로 튜닝된다. (본 발명의 상세한 설명에서 사용되는 "복합" 비디오라는 용어는 단일 선상의 동화상 모두를 디스플레이하는데 필요한 모든 정보를 함유하는 진폭 변조된 신호를 일컫는다. 이는 수평 및 수직 동기 펄스(타이밍0, 칼라 동기 펄스(크로미넌스(crominance)) 및 개별적인 픽셀 강도(휘도)(luminance)와 각 디스플레이 라인에 대한 칼라는 포함한다.) 채널 선택 및 다른 튜너 파라미터를 소비자 제품에 대한 잘 알려진 프로토콜 IIC(I2C) 직렬 인터페이스를 통해 제어된다. 튜너(34, 35)는 필립스(Philips)(P/N F 11236) 및 그 밖의 다른 공급자들로부터 이용가능하다. 필립스는 또한 단일 튜너 출력을 취하며, 이를 왼쪽 및 오른쪽으로 분리된 오디오 신호로 변환시키는 TFA5582 스테리오 디코더를 공급한다.
튜너 출력은 케이블 작동자에 의해 공급될 수 있는 선택에 의한 케이블 인터페이스 모듈(36)에 접속된다. 각 케이블 회사는, 후속되는 프로세상 및 디스플레이를 위해 표준 복합 비디오로 신호를 재구성하는 고유의 하드웨어 세트를 필요로 하는 프리미엄 채널을 스크램블링(scrambling)하기 위한 고유의 시스템을 가질 수 있다. 케이블 인터페이스(36)는 두 비디오 신호의 디스크램블링(descrambling)을 지원할 수 있어서, 사용자는 두 개의 프리미엄 채널을 동시에 시청 및/또는 기록할 수 있다.
시스템(30)내에 구성될 수 있는 비디오 기록/재생 장치(40)(예를 들면, VCR 또는 비디오 디스크)는 복합 비디오 및 오디오의 입력 소스를 제공한다. VCR(40)의 재생, 기록, 되감기, 정지, 고속 진행, 프레임 진행(frame advance), 그 밖의 다른 기능은 IIC 또는 임의의 다른 저가(low cost) 프로토콜일 수 있는 직렬 인터페이스를 통해 제어된다. 직렬 인터페이스 제어형 VCR은 금성(Goldstar), JVC, 파나소닉(Panasonic) 및 그 밖의 다른 공급자들로부터 이용가능하다.
선택에 의한 MPEG 답축복원 모듈(38)은 복합비디오 및 오디오 신호를 또한 제공하는 시스템(30)에 부가될 수 있다. MPEG 압축복원 칩은 IBM, 텍사스 인스트루먼트(TI), SGS, 톰슨(Thompson), C-Cube, 및 그 밖의 다른 공급자로부터 이용가능하다.
복합 오디오 및 오디오 RCA 입력 잭(jacks)은 AUX1 커넥션(42)을 통해 시스템(30)으로 공급될 수 있는 캠코더, 카메라 또는 그 밖의 다른 입력 소스의 재생을 편리하게 지원한다. 또한, 복합 비디오 및 오디오 RCA 입력 잭은 AUX2 커넥션(44)를 통해 시스템(30)으로 공급될 수 있는 게임 플레이어, 레이저 디스크 플레이어 또는 그 밖의 다른 소스를 또한 지원한다.
아날로그 비디오 멀티플렉서(31)는 시스템(30)에서의 복합 비디오 및 스테레오 오디오의 프로세싱을 위한 중심적인 스위칭 포인트이다. 멀티플렉서(31)의 세 개의 출력 각각은 완전하게 독립적이며, 도 3에 도시된 7 개의 입력중 임의의 것을 선택될 수 있다. 이 선택은 오퍼레이팅 시스템 및 사용자 인터페이스의 제어하에 제어 마이크로프로세서(48)를 통해 달성된다. 이하 상세히 기술되듯이, 이 선택은 원격 제어 장치(20)를 통해 사용자에 의해 달성될 수 있다. 사용자는 사용자의 비디오 옵션(options)의 그래픽 표현을 볼 수 있으며, 7 개의 소스중 어느 것이 3 개의 목적지(풀 스크린(full screen), PIP, VCR)중 어디로 입력되는지를 결정하기 위해 지시하며 선택할 수 있다. 예를 들어, 사용자가 채널 8에 중첩하여 PIP로 채널 5를 시청하고자 할 때, 사용자 인터페이스 코드는, 멀티플렉서(31)의 풀스크린 출력이 (채널 8로 설정된) 튜너(34)로부터 출력되도록 프로그래밍하며, 멀티플렉서(31)의 PIP출력이 (채널 5로 설정된) 튜너(35)로부터 출력되도록 설정될 것이다.
멀티플렉서(31)의 하나의 출력은 비디오 프로세서(39)로 전송되며, 풀 스크린 화상으로 프로세싱될 것이다. 이 신호는 비디오 프로세서(39)내에 아날로그 복합 비디오 포맷으로 보관된다. 이 신호들, 즉 수평 동기, 수직 동기, 크로마(chroma) 부반송파는, 비디오 프로세서(39)내에서 그래픽을 젠록(genlock)하고 픽처 인 픽처(PIP)를 중첩하는 데 있어 하나의 기준 신호로서 사용된다. 멀티플렉서의 두 번째 출력은 비디오 프로세서(39)로 또한 전송되나, 디지털로 변환되고 다른 채널의 소형(예를 들어, 풀 스크린의 1/9 내지 1/4)라이브 비디오 윈도우로 스케일되는 비디오 신호로서 풀 스크린 비디오 신호상에 중첩된다. 멀티플렉서(31)의 세 번째 출력은 VCR(40)을 구동시켜서, VCR(40)이 7 개의 입력중 임의의 하나를 기록할 수 있게 한다. 프로세서(39)의 복합 비디오 출력은, 시스템의 의해 생성된 그래픽 오버레이 및 PIP를 기록하기 위해 (멀티플렉서(31)를 통해) 내부 VCR(40)로의 입력으로서 또한 이용가능하다.
CPU(48)는 관련 SYSTEM 버스를 갖는다. SYSTEM 버스는 DATA 버스, ADDRESS버스, CONTROL 버스를 포함한다. 비디오 프로세서(39)는 시스템 메모리(45)에 대한 중재자이며, 따라서 SYSTEM 버스는 비디오 프로세서(39)에 의해 (DATA' 버스, ADDRESS' 버스, CONTROL' 버스를 포함하는)SYSTEM' 버스로 변경된다.
시스템 메모리(45)는 스크린 RAM, 시스템 RAM, 부트스트랩(bootstrap) ROM을 포함한다. 시스템 메모리(45)는 시스템 프로세서(48) 및 비디오 메모리의 요구 조건을 지원하는 확장가능한 단일 메모리 뱅크이다. 단일 메모리(45)는 시스템 데이터, 비디오 데이터, 그래픽 데이터, 전자 프로그램 안내 데이터를 포함하여, 시스템(30)에 의해 사용되는 모든 데이터를 지원한다. 단일 메모리 모델은 시스템 프로세서(48)와 비디오 프로세서(39)간의 메모리의 다이나믹 밸런싱(dynamic balancing)을 가능하게 한다. 시스템 메모리(45)는 도 5에 대해 설명하는 부분에서 더욱 상세히 기술될 것이다.
플래쉬 메모리(49)는 오퍼레이팅 시스템, 사용자 인터페이스 코드, 애플리케이션 프로그램, 사용자 데이터를 저장하는 데 사용된다. 플래쉬 메모리(49)는 1메가 바이트(Mbyte)까지 확장될 수 있는 적어도 512 킬로 바이트(Kbytes)의 플래쉬를 포함한다. 플래쉬 메모리(49)는 새로운 오퍼레이팅 시스템, 사용자 인터페이스, 애플리케이션이 중앙 서버로부터 다운로딩되도록 PROM 또는 EPROM인 것이 바람직하다.
I/O 프로세서(50)는 CPU(48)와, 원격 제어 장치(20), 키보드, 디지타이저(digitizer), 프린터, 또는 터치패드(touchpad)와 같은 여러 가지 I/O 장치간을 인터페이싱한다. 바람직한 실시예에서, I/O 프로세서 2 MHz에서 작동하는, 모토롤라사(Motorola Corp.)에 의해 제조되는 사전프로그래밍된 MC68HC705C8(이하 "68HC705"라 칭함)이다. 68HC705 I/O 프로세서는 주변 장치로서 68HC705를 구성(configuring)하므로써 CPU(48)와 인터페이싱하며 (1) PAO-PA7은 DATA 버스의 D0-D7에 접속되고, (2) PB7, PB1, PB2는 ADDRESS 버스 및 CONTROL 버스의 (비디오 프로세서(39)에 의해 디코딩되는 32-바이트 어드레스 범위인) GPI01, A1, A2에 각각 접속되며, (3) PB3, PB4, PB5는 CONTROL 버스의 ADS, READY, W/R에 각각 접속된다. 따라서, I/O 프로세서는 (본 명세서에서 AS0, AS2, AS4, AS6으로 일컬어지는) I/O 공간에서의 4 개의 16-비트 어드레스를 갖도록 디코딩된다. I/O 프로세서는 또한 원격 제어 장치(20)로부터 방출되는 신호 패킷을 검출하고 수신할 수 있는 적절한 수신기 회로와 인터페이싱한다. I/O 프로세서(50)는 또한 단일 사용자 인터페이스가 사용자에 대한 다른 비디오 및 오디오 장비를 구동하도록 다른 적외선 장치로 커맨드를 전송한다.
68HC705의 내부 프로그램은 이하와 같이 CPU(48)와 인터페이싱한다. 68HC705는 프로세서 버스에 직접 결합되도록 설계되며, CPU(48)에 대한 I/O 포트로서 동작한다. 내부 래치쌍은 다른 프로세서가 이를 수신하는 것이 준비될 때까지 각 프로세서간에 통과하는 데이터를 포함한다. 각 프로세서에 대한 상태 비트는 데이터 래치의 상태를 나타낸다. 각 프로세서는 상태 비트를 체크함으로써, 이전의 데이터가 판독되었는지와, 임의의 새로운 데이터가 판독되기를 기다리고 있는지를 알 수 있다.
I/O 프로세서(50)는 (1) 50 ms 타이머, (2) 입력 장치에 대한 직렬 제어기링크, (3) 시스템 리셋, (4) CD 드라이브(54)에 대한 데이터/스트로브/승인(DSA)제어 통신 링크로서의 기능을 구비한다.
50ms 타이머는 68HC705 I/O 프로세서의 워치도그(watchdog) 타이머를 사용하여 구현된다. 위치도그 타이머가 종료되면, I/O 프로세서(50)는 비디오 프로세서(39)의 아날로그 인터럽트 1(AI1)을 사용하여 CPU(48)를 인터럽트한다. CPU(48)는 비디오 프로세서(39)가 I/O 프로세서(50)를 동작시키게 하는 전술한 16-비트 I/O 포트 AS0를 판독하므로써 이에 응답하여, 이로 인해 CPU(48) 및 I/O 프로세서(50)간에 데이터가 전송된다.
입력 장치는 직렬 제어기 링크 및 제어기를 통해 I/O 프로세서(50)에 접속된다. 제어기는 제어 장치의 신호화된 움직임을 아날로그 직렬 링크를 전송하기에 적당한 포맷으로 변환시킨다. 제어기는 제어기 직렬 데이터 링크를 통해 데이터 패킷을 시스템 유닛으로 전송한다. 데이터 패킷은 I/O 장치의 유형에 따라 상이하다. (위글 스틱, 와블 플레이트, 마우스, 조이스틱 등을 포함하여 본 발명과 관련된 것과 같은) 코디네이트(co-ordinate) 유형 장치는 스위치 폐쇄 유형 장치(키보드, 디지털 조이스틱, 스위치 패드 등)과는 상이한 데이터 패킷을 갖는다. 제어기는, 적외선 수신기, 라디오 수신기 등과 같이 원격 제어 장치(20)에 의해 출력되는 임의의 신호에 대해 적절한 수신기를 포함한다.
직렬 제어기 링크는 데이터 수신 라인, VCC(+5V DC) 라인, 접지 라인의 3가지 라인으로 구성된다. 68HC705는 PD0/RDI 핀을 사용하여 직렬 제어기 링크의 데이터 수신 라인을 구현한다. 이 핀은 잘 알려진 비동기 포맷을 사용하는 직렬 장치에 대한 인터페이스로서 사용되도록 설계된다. 클럭형 동기 포맷이 이와 달리 사용될 수 있다.
확장 버스(51)는 엔트리(entry) 레벨 제품을 위한 버퍼형 16 비트 마이크로 프로세서 로컬 버스이거나, 고성능 시스템을 위한 32 비트 주변 소자 상호접속(PCI) 버스일 수 있다. 확장 버스(51)는 시스템(30)의 코스트(cost)를 감소시키면서, 동시에 부가적인 특징(feature)에 대한 확장 경로를 가능하게 한다.
시스템(30)은 또한 정보 서비스 및 소프트웨어 갱신에 필요한 양방향 통신을 제공하는 모뎀(52)을 구비한다. 모뎀(52)은 비디오 프로세서(39)내에 내장된 디지털 신호 프로세서 및 부가적인 아날로그 로직을 사용하는 전화 모뎀일 수 있다. 이와 달리, 모뎀(52)은 양방향 케이블 지원을 위한 (64 QAM 또는 16VSB과 같은)케이블 모뎀일 수 있다.
시스템(30)은 오디오, 디지털 MPEG 영화. 데이터 CD를 작동시키는데 사용되는 선택에 의한 CD-ROM 드라이브(54)를 포함할 수 있다. CD 드라이브(54)는 직렬 데이터 스트림을 비디오 프로세서(39)로 제공하며, 비디오 프로세서(39)는 직렬 데이터 스트림을 디코딩하며, 프로세싱한다. CD 드라이브(54)는 비디오 프로세싱과 완전히 동시에 동작된다. CD 드라이브(54)에 대한 제어는 IIC 인터페이스 또는 다른 직렬 프로토콜을 통해 제공된다.
전술한 바와 같이, CPU(48)는 본 기술분야에 잘 알려진 DATA 버스, ADDRESS 버스, CONTROL 버스와 같은 다수의 버스를 발생시킨다. 이들 3 개의 버스는 통칭하여 SYSTEM 버스로 일컬어진다. 바람직한 실시예에서, CPU(48)는 캘리포니아 95051 산타 클라라 보워스 애비뉴 3065에 위치한 인텔사(Intel Corp.)에 의해 제조되는 80376이다. 이 80376은 본 기술분야에 잘 알려져 있으며, 인텔사로부터 이용가능한 잘 알려진 80386SX의 변형이다. 80376은 16-비트 모드가 아니라 32-비트 모드에서 기동(start up)된다는 점에서 80386SX와 상이하다. 특히, CR0 레지스터에는 0011H(16진 기수법으로 0011) 상태가 인가되고, 비트 0은 논리 "1"로 되어, 실질적으로 32-비트 메모리 모드에서 376이 동작하도록 한다. 가상 386 동작을 허용하기 위해 페이징(paging)이 인에이블된다.
본 발명은, CPU(48)가 예를 들어, 셋 탑 장치 시스템 메모리(45)에 저장된 제어 프로그램을 액세스하여, 상기 비디오 디스플레이 장치(12)에 의해 시각 이미지의 디스플레이를 제어하기 위해, 프로세서로의 액세스가 가능하게 됨을 고려한다. 프로그램 제어형 디지털 장치의 설계분야에 통상의 지식을 가진 자라면, 이러한 제어 프로그램을 액세스하는 프로세서는 제어 프로그램을 로딩할 수 있으며, 제어 프로그램의 제어하에 동작할 수 있어서, 프로그램의 작성자에 의해 설정된 기능을 달성할 수 있게 된다는 점을 당연히 이해할 것이다. 예를 들어, 본 발명의 상세한 설명에서 이러한 제어 프로그램은, 원격 제어 장치(20)의 커맨드 전송 회로로부터 커맨드 신호를 수신하는 I/O 프로세서(50)와 관련되거나 이에 내장된 커맨드 수신 회로로 하여금, 수신된 커맨드 신호로부터 디스플레이 장치상에 디스플레이되는 시각 이미지의 변경을 지시하는 이미지 지시 신호를 추출하도록 할 수 있다. 또한, 제어 프로그램은, 커맨드 수신 회로 및 텔레비전 수신기(10)내의 비디오 수신 회로에 결합되는 비디오 프로세서(39)에서의 커맨드 프로세서 회로로 하여금, 이미지 지시 신호를 수신하고, 사용자에 의한 원격 제어 장치의 조작에 의해 지시되는 바와 같이, 장치(12)상에 디스플레이되는 시각 이미지를 변경시키도록 한다.
제어 프로그램을 실행하는 데 있어서, 본 명세서에 개시된 시스템은 메모리 장치에서 디지털로 인코딩된 데이터를 수신하고, 저장하고, 전송하며, 메모리 장치에 결합된 마이크로프로세서에서, 메모리 장치내에 저장된 디지털로 인코딩된 제어 프로그램을 실행한다. 제어 프로그램은 원격 제어 장치(20)의 조작으로부터 획득되는 사전결정된 이미지 지시 신호에 따라, 사전설정된 방식으로 비디오 신호를 변경하는 마이크로프로세서에 의해 실행될 것이다. 제어 프로그램의 이러한 실행은, 오퍼레이팅 시스템 프로그램을 실행하므로써 텔레비전 비디오 디스플레이 장치의 동작 자원으로의 마이크로프로세서 액세스를 제어하는 단계 및/또는 애플리케이션 프로그램을 실행하므로써 비디오 신호의 변경을 제어하는 단계를 포함한다. 즉, 실행되는 제어는, 자원 액세스의 오퍼레이팅 시스템 할당 및 액세스된 자원의 애플리케이션 프로그램의 양쪽 모두에 기초한다.
셋 탑 장치(30)와 관련되는 부가적인 회로(56)가 도 4에 도시되어 있다. 도 4를 참조하면, 부가적인 회로는 RF 변조기(58)와, 오디오 아날로그-디지탈 컨버터/디지탈-아날로그 컨버터/압축기/압축복원기(ADC/DAC/CODEC)(59)를 포함한다.
비디오 프로세서(39)는 도 5에 대해 설명하는 부분에서 더 상세히 기술될 다수의 기능 블록을 갖는다. 이러한 두 개의 블럭은 비디오 제어기(60)와, 디지털 신호 프로세서(DSP)(61)임을 알아두기로 하자.
RF 변조기(58)는 비디오 프로세서(39)로부터의 복합 비디오 신호와 오디오 ADC/DAC/CODEC(59)으로부터의 좌우 오디오 라인 출력 신호를 반송 주파수상으로 합체시켜, RF 비디오에 의해 지시되며, 텔레비전 수신기(10)로 직접 입력되기에 적당한 RF 비디오 신호를 발생시킨다. RF 비디오 신호는, 본 기술 분야에 잘 알려진 바와 같이, 단일 암 유형 F 동축 커넥터(female Type coaxial connector)에 의해 외부 장치와 접속된다.
오디오 ADC/DAC/CODEC(59)는 잘 알려진 필립스 I2S 프로토콜에 따라 직렬 링크에 의해 DSP(61)와 결합된다. ADC/DAC/CODEC(59)는 아날로그 데이터를 디지털 데이터로 변환시키고, 디지털 데이터를 아날로그 데이터로 변환시키며, 디지털 데이터를 압축 및 압축복원시킨다. ADC/DAC/CODEC(59)는 선택에 의한 마이크로폰으로부터의 외부 스테레오 아날로그 데이터와 비디오 프로세서(39)를 인터페이싱한다. 오디오 입력은 표준 스테레오 1/4'' 커넥터에 의해 외부 장치에 접속된다. 오디오 ADC/DAC/CODEC(59)는 또한 좌우 오디오 라인 출력 신호를 발생시키므로써 비디오 프로세서로부터의 디지털 데이터와 외부 장치의 인터페이싱시킨다. 이들 신호는, 본 기술 분야에 잘 알려진 바와 같이, 두 개의 암 RCA 폰 잭(jacks)에 의해 선택에 의한 스피커와 같은 외부 장치에 접속된다. 또한, 전술한 바와 같이, 오디오 라인 신호는 RF 비디오 신호에 부가된다.
바람직한 실시예에서, ADC/DAC/CODEC(59)는 크리스탈 세미컨덕터사(Crystal Semiconductor)에 의해 제조되는 CS4216이다. 이 부품은 프로그램가능한 이득(programmable gains)을 갖는 마이크로폰 입력과, 프로그램가능한 감쇠기(attenuators)를 갖는 출력은 구비한다. 이득 및 감쇠는 모두 DSP(61)에 의해 프로그램을 통해 제어된다.
이와 다른 실시예에서, ADC/DAC/CODEC(59)는 필립스사에 의해 제조되는 TDA1311 DAC로 대체될 수 있다. 이 칩이 사용될 경우, ADC 및 CODEC 기능은 사용 가능하지 않을 것이다.
도 3 내지 도 5를 참조하면, 비디오 프로세서(39) 전자 장치는 주로 ASIC(응용 주문형 집적 회로)으로 알려진 하나의 대형 커스텀 로직 칩(massive custom logic chip)내에 포함된다. 도 5에 도시된 바와 같이, 비디오 프로세서는 프로세서 인터페이스(62), 프로세서 캐시(64), 메모리 인터페이스/리프레시(66), 비디오 제어기(60), 인터럽트 제어기(70), 비디오 블리터(72), CD 드라이브 제어기(74), 디지털 신호 프로세서(DSP)(61), DSP 메모리(76), 2 개의 VBI 디코더(80, 81), 다중-표준형 디코더(82), 스케일러(83), 동기 추출 회로(84), 젠록 및 타이밍 장치(85), 다중-표준 인코더(86), 복합 비디오 멀티플렉서(88)를 구비한다. 프로세서 인터페이스(62), 메모리 인터페이스/리프레시(66)(DRAM 제어기), 비디오 제어기(60)는 통칭하여 비디오/메모리 제어기(78)로 일컬어진다. 시스템 메모리(45), 중앙 프로세싱 유닛(48), 및 그 밖의 다른 장치는 비디오 프로세서(39)의 외부에 배치된다.
SYSTEM' 버스는 여러 가지 장치를 시스템 메모리(45)에 전기적으로 접속시킨다. 6 개의 가능한 버스 마스터가 SYSTEM' 버스를 공유하며, 이들은 (각각 높은 우선순위부터 낮은 우선순위로)메모리 리프레시(66), 비디오 제어기(60), CD 드라이브 제어기(54), DSP(61), 블리터(72), (프로세서 인터페이스(62)를 통한 CPU(48)의 6 개이다. 한번에 버스 마스터중 하나만이 SYSTEM' 버스(비디오 프로세서(39)와 시스템 메모리(45) 사이의 DATA' 버스, ADDRESS' 버스, CONTROL' 버스)를 제어할 수 있다.
본 기술 분야에 잘 알려진 바와 같이, 비디오/메모리 제어기(78)는 SYSTEM' 버스를 제어하며, SYSTEM' 버스에 접속된 메모리 장치에 메모리 타이밍 신호(예를 들면, CAS, RAS, 기록 인에이블 등)를 제공한다. 전술한 바와 같이, 비디오/메모리 제어기(78)는 또한 메모리 사이클을 요구하며(비디오 메모리 사이클을 시스템 RAM으로부터의 비디오 데이터를 판독하는 데 필요하며, 비디오는 이 프로세서에 의해 실시간으로 발생되기 때문에, 비디오 로직은 비디오 데이터가 요구될 때 메모리 액세르를 가져야 한다), 실질적으로 SYSTEM' 버스상에서 가장 높은 우선순위를 갖는다. 비디오/메모리 제어기(78)는 임의의 비디오 디스플레이 데이터를 인출(fetch)하고, 다이나믹 RAM(DRAM)을 리프레시하기 위해 짧은 주기 동안의 비디오 라인동안 버스 마스터 동작을 중지시킨다. 비디오/메모리 제어기(78)는 또한 CPU(40)와의 인터페이스를 제어한다.
비디오 프로세서(39)는 멀티플렉서(31)로부터 두 개까지의 아날로그 복합 비디오 신호(FULL SCREEN 및 PIP)를 수신한다. FULL SCREEN 이미지는 아날로그 복합 비디오로서 유지되고, 풀 스크린 이미지로서 프로세싱되며, PIP 아날로그 복합 비디오 신호는 풀 스크린 이미지로서 비디오 프로세서(39)에 입력되고, 프로세서(39)에 의해 픽처 인 픽처(picture in picture) 이미지로서 풀 스크린상에 중첩된다. 비디오 프로세서(39)는 또한 시스템에 의해 발생된 그래픽을 비디오상으로 중첩시키며, 복합 신호를 디스플레이 장치(12)로 출력한다.
비디오 프로세서(39)는 또한 CD 드라이브(54)로부터 CD 데이터 스트림을 수신할 수 있으며, CD 데이터 스트림은 디코딩되어, DRAM(45)내에 배치된다. CD 데이터는 MPEG으로 인코딩된 영화, 포토 CD, 데이터 CD, 오디오 또는 프로그램 데이터일 수 있다. DSP(61)는 1200 보(baud) 전송 또는 2400 보 수신 FAX 모뎀을 구현할 수 있다. 고속 블리터(72)는 DRAM(45)의 일부로부터 다른 부분으로의 비디오 스프라이트(sprite)의 신속한 전송을 지원하며, 이를 통해 사용자 인터페이스 및 애플리케이션의 외양(appearance)을 향상시키고 CD 제어기(54)으로부터 데이터 이동을 보조한다. DRAM 버스 대역폭에는 그래픽 및 라이브 비디오 액세스가 과도하게 로딩되기 때문에, 캐시 제어기(64)는 호스트 마이크로프로세서(48)에 대한 시스템 성능을 향상시킨다.
동기 추출 회로(84)는 멀티플렉서(31)로부터 FULL SCREEN 복합 비디오 입력 신호를 수신하고, FULL SCREEN 복합 비디오 입력으로부터 크로마 부반송파뿐만 아니라 수평(HSYNC) 및 수직(VSYNC) 동기 신호를 추출하며, 라인(89)을 통해 젠록 회로(85)로 HSYNC 신호, VSYNC 신호, 크로파 부반송파를 제공한다. 또한, 동기 추출 회로(84)는 라인(87)을 통해 원래의 FULL SCREEN 복합 비디오 입력을 멀티플렉서(88)로 인가한다. 비디오 프로세서(39)로 입력되는 FULL SCREEN 복합 비디오상에 신호가 존재하지 않을 경우, 동기 및 고정된 칼라(예를 들어, 파란색) 스크린은, 크리스탈 기반형 로컬 오실레이터 및 젠록 회로(85)내의 타이밍 회로에 의해 자동적으로 발생된다.
젠록 및 타이밍 회로(85)는 (이하 기술되는 바와 같은) 수평 및 수직 동기를 사용하며, PIP에 대한 칼라 기준이 풀 스크린 이미지와 동일하도록 인코더(86)에 크로마 부반송파를 전달한다. 젠록 및 타이밍 발생기(85)는 풀 스크린 수평 동기에 대해 위상 동기(phase synchronous)인 비디오 제어기(60)에 대한 도트(dot) 클럭을 구성한다. 이는 (동기 추출 회로(84)에 의해)풀 스크린 비디오 신호로부터 추출되는 15.734 Khz 수평 동기를 위상 동기 루프(phase locked loop)의 기준 입력으로 공급하므로써 달성된다. 위상 동기 루프로의 비교기 입력은 3185로 분할되는 (젠록(85)내의) 전압 제어 발진기(VC0)의 출력이 된다. VC0의 출력은 또한 크로마 부반송파(3.57954545 Mhz)의 주파수의 14배인 비디오 제어기(60)에 대한 도트클럭을 형성한다. 비디오 제어기(60)에 대한 수직 동기는 비디오 제어기의 수직 라인 카운터를 재설정하므로써 소프트웨어 제어하에 설정된다.
제 1 및 제 2 수직 블랭킹 기간(vertical blanking interval, VBI) 디코더(80, 81)는 NTSC 프로토콜의 10 내지 21 라인의 1 및 2 필드상의 수직 귀선 소거 기간으로부터 전자 프로그램 안내 데이터, 채널 바이오런스 레이팅(channel violence ratings), 잔여 시간, 청각 장애자를 위한 클로즈 캡셔닝(close captioning) 및 그 밖의 다른 디지털 데이터를 추출한다. 이 데이터는 개별적으로 또는 동시에, 마이크로프로세서(48)의 제어에 의해 제 1 VBI 디코더(80)에 의해 FULL SCREEN 복합 비디오 입력으로부터 추출되거나, 제 2 VBI 디코더(81)에 의해 PIP 복합 비디오 입력으로부터 추출될 수 있다. 디지털 데이터는 시스템의 오퍼 레이팅 시스템 제어하에 선택되고 디코딩되며, 비디오 및 그래픽 공유 DRAM(45)에 저장된다. 클로즈 캡션 디스플레이에 대한 표준 사용이외에도, 시스템은 키 워드에 대해 채널의 클로즈된 캡션 텍스트를 스캐닝하여, 관심있는 항목이 발견될 경우 사용자에게 알려주거나 프로그램을 기록하기 위해 VBI 디코더(80, 81)중 하나 또는 둘다를 사용하도록 구성될 수 있다.
다중-표준(NTSC/PAL)("PAL"은 잘 알려진 유럽 텔레비전 신호 표준을 일컫는다) 비디오 디코더(82)는, 비디오 디코더(82)에서 25-30Mhz 샘플링 A/D 디코더를 통해 처음에 디지털화된 다음 YUV 칼라 공간로 변환될 경우, PIP 복합 비디오 입력을 수신한다. 디코더(82)는 각 픽셀에 대한 칼라 위상 차 신호를 추출하며, 이들을 1/4(Quarter) CIF(176×144)해상도를 갖는YUN 값으로 변화시킨다. 제한된 해상도로 인해 프레임((frame) 저장에 요구되는 메모리는 감소하지만, 사용자에 의해 요구되는 최소한의 기능을 제공한다.
스케일러(scaler)(83)는 디코더(82)에 의해 출력되는 디지털 비디오 신호를 수신하고, PIP 비디오 신호의 사이즈를 풀 스크린의 1/4 내지 1/9로 감소시키며, 이 감소된 디지털 비디오 신호를 비디오/메모리 제어기(78)를 통해 시스템, 비디오, 그래픽 공유 DRAM(45)으로 전송한다.
(이하 상세히 설명될) DRAM 제어기(66)는 표준 DRAM을 지원하는 데 필요한 디코딩 신호, 인터페이스 신호, 리프레시 신호를 제공한다. DRAM 제어기(66)는 또한 비디오 프로세서(39) 기능중 DRAM 액세스에 대한 요구를 중재한다. 비디오 제어기(60)는 가장 높은 우선순위를 가지며, 스케일러(83)는 두 번째 우선순위를 갖는다.
비디오 제어기(60)는, 다중-표준 복합 비디오 인코더(86)로의 출력을 위해 DRAM(45)으로부터 그래픽 및 PIP 이미지를 래스터라이징(rasterizing)한다. 특히, 비디오 제어기(60)는 DRAM(45)에서 이미지의 디지털 표현(digital representation)을 얻어서, 한번에 하나의 픽셀의 이미지를 인코더(86)로 페인팅(painting)한다. 비디오 제어기(60)는 정확한 시간에 픽셀을 인코더(86)로 페인팅해서, PIP 이미지가 적절한 순간에 풀 스크린상에 중첩되게 한다. 비디오 제어기(60)는 인터레이스(interlace)형 혹은 비-인터레이스형으로 픽셀당 16비트로 640×480까지 해상도를 지원한다. DRAM 제어기(66) 및 비디오 제어기(60)는 비디오/메모리 제어기(78)에 대한 이하의 설명에서 더 상세히 설명될 것이다.
다중-표준 인코더(86)는 비디오 제어기(60)로부터 레드, 그린, 블루(RGB) 정보를 수신하고, 젠록 및 타이밍 회로(85)로부터 동기 정보(HSYNC, VSYNC, 크로마부반송파)를 수신하며, 이 데이터를 멀티플렉서(88)로 출력하기 위해 PIP 복합 비디오 데이터로 변환시킨다. 다중-표준 인코더(86)는 비디오 디지털-아날로그 컨버터(비디오 DAC) 및 NTSC/PAL 인코더를 포함한다. 비디오 프로세서(39)의 비디오 제어기(60)는 비디오 DAC에 접속되며, 이 비디오 DAC는 비디오 제어기(60)로부터의 18 비트의 픽셀 정보(레드, 그린, 블루의 각 6 비트)를 본 기술분야에 잘 알려진 RGB 신호로 변환시킨다. 비디오 DAC의 각 칼라 채널(R, G, B)은 R2R 저항 트리 및 2N2222 트랜지스터로 구현된다. RGB 신호는 NTSC/PAL 인코더에 의해 복합 비디오로 변환된다. 인코더는 젠록(85)으로부터 크로마 부반송파, HSYNC, VSYNC를 수신하며, 비디오 제어기(60)의 RGB 출력으로부터 NTSC 복합 비디오 신호를 발생한다. 이와 달리, 잘 알려진 PAL(유럽 텔레비전 신호 표준) 포맷이 발생 될 수 있다. 인코더(86)로부터의 복합 비디오 신호는 멀티플렉서(88)로 공급된다. PIP 및 그래픽 이미지의 칼라의 일관성을 보장하기 위해, 인코더(86)에 대한 크로마 부반송파는 전술한 바와 같이 풀 스크린 이미지로부터 추출된다. 바람직한 실시예에서, NTSC/PAL 인코더(56)는 모토롤라사에 의해 제조되는 MC1377이다.
DSP(61)는 음성 합성을 위한 간단하고 초고속인 프로세서이며, 최고 3천3백만 인스트럭션(instructions)초(MIPs)으로 동작한다. DSP(61)는, 바이트 또는 워드를 시스템 메모리(45)로부터/로 판독/기록할 수 있게 해주는 DSP DMA 제어기(도시되지 않음)를 통해 SYSTEM' 버스로 액세스한다. 이들 전송은 짧은 버스트로 발생되며 DSP 프로그램 제어하에 실행된다. DSP(61)는 실질적으로 프로그램을 실행하며, 자신의 전용(private) 고속 메모리(76)에 데이터를 저장한다.
CD 제어기(54)의 콤팩트 디스크 판독 DMA 채널은, 시스템으로 하여금 임의의 소프트웨어 오버헤드가 없이 CD 판독 데이터를 시스템 메모리(45)로 전송하게 한다. 이는 데이터를 직접 전송할 수 있으며, 이는 또한 CD 블록 디코더를 포함한다.
인터럽트 제어기(70)는 6 개의 내부 인터럽트를 CPU(48)와 인터페이싱시키며, 6 개의 내부 인터럽트는 비디오 인터럽트(가장 높은 우선순위), 아날로그 인터럽트1(AI1), 아날로그 인터럽트 2(AI2), 아날로그 인터럽트 3(AI3), CD 블록 디코더 인터럽트, DSP 인터럽트(가장 낮은 우선순위)이다. 인터럽트 제어기는 CPU(48)가 인터럽트 승인 사이클(interrupt acknowledge cycle)을 수행할 때, 인터럽트를 클리어한다. 각 인터럽트에 대해 마스크 비트가 이용가능하다.
블리터(72)는 고속 스크린 갱신 및 애니메이션을 위한 그래픽 프로세서이며, CPU(48) 또는 DSP(61)에 대한 하드웨어 그래픽 서브루틴으로 작동한다. 이는 블리터 프로그램 동작을 통해 버스 마스터가 될 것이며, 따라서 상당한 주기동안 SYSTEM' 버스를 소유할 수 있다. 그러나, CPU(48)에 대한 우선순위는 절대적이 아니며, 인터럽트가 발생될 때, CPU(48)에 대해 SYSTEM' 버스를 포기하도록 요구될 수 있다. CPU(48)는 시스템 레벨에서 가장 낮은 우선순위를 갖는 버스 마스터이나, 다른 하드웨어에 대해 완벽한 제어를 가지며, 따라서, SYSTEM' 버스의 사용은 거의 CPU(48) 프로그램 제어하에 있게 된다.
비디오 프로세서(39)는 여러개의 주요 블록을 갖는데, 즉 비디오/메모리 제어기(78), 동기 추출 장치(84), 젠록 및 타이밍 장치(85), 컴팩트 디스크 제어기(54), 블리터 그래픽 코프로세서(72), DSP 오디오 코프로세서(61)를 갖는다. CPU(48)의 어드레스 공간은 비디오 프로세서(39)내의 다수의 8-비트 레지스터로 디코딩된다. 모든 내부 로케이션은 짝수 어드레스 경계상에 있으며, 워드-폭 단위의(word-wide) I/O 판독 및 기록은 적절한 곳에서 수행될 수 있다. 이 특정 실시예에서, 바이트-폭 단위의(byte-wide) 기록은 워드-폭 레지스터상에서 수행되지 않을 수 있으며, I/O 사이클은 홀수 어드레스를 액세스하는데 사용되지 않을 수 있다.
전술한 레지스터외에도, 비디오 프로세서(39)는 SYSTEM' 버스로부터 3 개의 여분의 범용 I/O 디코더 라인(GPI01, GPI02, GPI03)을 발생시키며, 각각은 32-비트 I/O 어드레스 범위를 제공한다. 범용 디코더는 비디오 프로세서(39)의 외부 장치로 3개의 액티브-로우인 칩 인에이블을 제공하는데 사용될 수 있다.
비디오/메모리 제어기(78)는 몇 가지의 기능을 수행하는데, 즉 비디오 타이밍, 인터럽터 처리, 비디오 디스플레이 발생, 메모리 구성, 리프레시 및 타이밍(후자의 3 가지 기능은 DRAM 제어기(66)에 의해 수행된다)을 수행한다.
비디오/메모리 제어기(78)는 상이한 TV 표준 및 모니터를 최고 640×480 VGA 표준에 맞도록 프로그래밍될 수 있는 플렉서블(flexible) 비디오 타이밍 발생기를 갖는다. (비디오 프로세서(39)가 메모리로부터 데이터를 인출할 때) 동기화 펄스, 블랭킹(blanking), 디스플레이 영역 및 활성 비디오의 위치는 수평 차원의 클럭 사이클과, 수직 방향의 라인 수로 프로그래밍 된다. 비디오 타이밍은 2 개의 부분으로 나누어진다. 수평 타이밍은 클럭 사이클에 의해 정의되며, 다수의 11-비트 레지스터에 의해 결정된다. 수직 타이밍은 디스플레이 라인에 의해 정의되며, 다수의 10-비트 레지스터에 의해 결정된다.
수평 주기, 수평 동기, 수평 블랭킹 종료, 수평 블랭킹 개시, 수평 디스플레이 개시, 수평 디스플레이 종료, 수평 인출 개시, 수평 인출 종료, 수평 수직 동기의 9 개의 수평 레지스터가 있다. 수평 주기 레지스터에 기록되는 값은 클럭 사이클에서의 수평 라인 길이를 결정한다. 하나의 실시에에서, 라인 길이는 수평 주기 레지스터에 기록된 수보다 하나만큼 큰 것이다. 요구된 수에 대한 공식은 다음과 같다: 수평 주기=(라인 길이×클럭 주파수)-1.
수평 동기 레지스터에 기록되는 값은 수평 동기 펄스의 폭을 결정한다. 클럭 사이클에서의 수평 동기의 폭은, 수평 주기 레지스터와 수평 동기 레지스터간의 차이에 의해 주어진다. 요구된 수에 대한 공식은 다음과 같다. 즉, 수평 동기=수평 주기-(수평 동기 폭×클럭 주파수). 수평 블랭킹 종료 레지스터는 수평 블랭킹이 종료하는 시기를 결정하며, 클럭 사이클에서 백 포치(back proch)의 폭이다. 수평 블랭킹 개시 레지스터는 수평 블랭킹이 개시되는 곳을 결정한다. 요구된 수에 대한 공식은 다음과 같다. 즉, 수평 블랭킹 개시=수평 주기-((수평 동기 폭+프론트 포치 폭)×클럭 주파수).
수평 디스플레이 개시 레지스터는, 클럭 사이클에서 수평 동기의 트레일링(trailing) 에지 후에 얼마나 빨리 비디오가 발생되는지를 명시한다. 수평 디스플레이 개시 레지스터가 수평 블랭킹 종료 레지스터보다 클 경우, 비디오/메모리 제어기(78)는 중간 경계(border) 칼라를 출력한다. 이 레지스터에 기록된 값은 통상적으로, 화상이 텔레비전 스크린의 중앙에 놓이도록 선택되어야 한다. 이를 행하기 위한 레지스터 수에 대한 공식은 다음과 같다. 즉, 수평 디스플레이 개시=(수평 블랭킹 종료+수평 블랭킹 개시-(활성 디스플레이 폭×클럭 주파수))/2.
수평 디스플레이 종료 레지스터는 디스플레이가 종료되는 곳을 명시하며, 이에 따라 픽셀 단위로 비디오 디스플레이의 폭이 결정된다. 이는 이하의 수로 프로그래밍되어야 한다. 즉, 수평 디스플레이 종료=수평 디스플레이 개시+픽셀의 수×픽셀당 클럭). 수평 블랭킹 개시가 수평 디스플레이 종료보다 클 경우, 경계 칼라는 블랭킹이 개시될 때까지 출력될 것이다.
수평 인출 개시 레지스터는 비디오 인출이 처음에 라인 상의 어디에서 개시되는지를 판단한다. 이는, 디스플레이가 개시될 때, 16 바이트 픽셀 버퍼가 충만되도록 프로그래밍 되어야 한다. 실제로, 이것은 수평 인출 개시 레지스터의 값이 디스플레이 모드에 따른 상수만큼 수평 디스플레이 개시값보다 작도록 제공됨을 의미한다. 이하의 테이블은 픽셀 당 비트 및 픽셀 당 클럭의 여러 가지 조합을 위한 상수를 나타낸다. 예를 들면, 픽셀당 4 비트 및 픽셀당 5 클럭일 경우, 상수는 160이 된다. 마찬가지로, 픽셀당 4 비트 및 픽셀 당 1 클럭 일 경우, 상수는 32가 된다. 픽셀당 16 비트 및 픽셀 당 1 클럭이 존재할 경우, 적용할 수 있는 상수가 없음을 유의해야 한다.
수평 인출 종료 레지스터는 비디오 인출이 라인 상의 어디에서 종료하는지를 판단한다. 원칙적으로, 이는, 수평 디스플레이 종료의 값에서 전술한 상수를 뺀 것이다. 그러나, 수평 인출 개시는 수평 인출 종료 레지스터에서 수평 인출 개시 레지스터를 뺀 값이 전술한 상수의 배수(multiple)가 되도록, 반올림(round up)되어야 한다.
수평 수직 동기는 다수의 라인상에서 발생하는 와이더 동기 펄스로서 식별된다. 이들 펄스의 폭은 다음과 같이 프로그래밍되는 수평 수직 동기 레지스터에 의해 결정된다. 즉, 수평 수직 동기=수평 주기-(수직 동기 폭×클럭 주파수).
비디오/메모리 제어기(78)는 또한 다수의 수직 레지스터를 갖는데, 즉 수직 주기 레지스터, 수직 동기 레지스터, 수직 블랭킹 종료 레지스터, 수직 블랭킹 개시 레지스터, 수직 디스플레이 개시 레지스터, 수직 디스플레이 종료 레지스터, 비디오 인터럽트 레지스터, 라이트 펜(light pen) 레지스터를 갖는다. 수직 주기 레지스터는 필드당 비디오 라인의 수를 명시한다. 수직 동기 레지스터는 수직 동기가 발생되는 라인의 수를 결정한다. 이는 다음과 같이 프로그래밍되어야 한다. 즉, 수직 동기=수직 주기-수직 동기의 라인의 수.
수직 블랭킹 종료 레지스터는 수직 동기후에 얼마나 많은 라인이 블랭킹되는지를 결정한다. 수직 블랭킹 개시 레지스터는 수직 동기전에 얼마나 많은 라인이 블랭킹되는 지를 결정한다. 이는 다음과 같이 프로그래밍 되어야 한다. 즉, 수직 블랭킹 개시=수직 동기-수직 동기 이전의 블랭킹의 수.
수직 디스플레이 개시 레지스터는 활성 비디오의 첫 번째 라인을 결정한다. 이 레지스터가 수직 블랭킹 종료 레지스터보다 클 경우, 라인과 라인 사이는 경계 칼라(border color)를 나타낸다. 스크린의 중간에 활성 영역을 위치지정하기 위해, 이 레지스터는 다음과 같이 프로그래밍 되어야 한다. 즉, 수직 디스플레이 개시=(수직 블랭킹 종료+수직 블랭킹 개시-활성 라인의 수)/2. 수직 디스플레이 종료 레지스터는 활성 비디오의 마지막 라인을 결정한다. 이 레지스터가 수직 블랭킹 개시 레지스터 미만일 경우, 라인과 라인 사이는 경계 칼라를 나타낼 것이다. 스크린의 중앙에서 활성 영역을 위치지정하기 위해, 이 레지스터는 다음과 같이 프로그래밍 되어야 한다. 즉, 수직 디스플레이 종료=(수직 블랭킹 종료+수직 블랭킹 개시+활성 라인의 수)/2.
비디오 인터럽트 레지스터는 비디오 인터럽트가 발생된 비디오 라인을 결정한다. 이 인터럽트는 INT 레지스터를 통해 인에이블되거나 디스에이블될 수 있다. 비디오 메카니즘이 디스플레이 라인의 끝에서 정지될 때, 인터럽트가 발생한다. 이는 디스플레이 모드를 변경시키거나, 빔(beam) 동기 애니메이션을 수행하기 위해 프로세서에 의해 사용될 수 있다. 이 레지스터는 각각의 필드에 대해 여러번의 인터럽트를 제공하기 위해 소정의 필드내에서 재프로그래밍될 수 있다.
이하의 표 1은 도시된 여러 가지 디스플레이 포맷에 대해 전술한 레지스터의 전형적인 값을 제공한다. 레지스터에 이하의 값을 로딩시킨 후, 비디오 타이밍 발생기는 레지스터 MODE2에 VIDEN 비트를 세팅시키므로써 인에이블된다.
비디오/메모리 제어기(78)는 이용가능한 3 가지 칼라 해상도를 갖는데, 즉 픽셀당 4 비트, 픽셀당 8 비트, 픽셀 당 16 비트의 해상도를 갖는다. 4 및 8 비트 모드에서, 픽셀은 팔레트(palette)에 저장된 18-비트 물리적 칼라를 인텍싱하는 논리적 칼라이다. 16-비트 모드에서, 픽셀은 0 비트에서 4 비트까지는 블루이고, 5 비트에서 10 비트까지는 그린이며, 11 비트에서 15 비트까지는 레드인 물리적 칼라이다. 6 비트의 그린이 존재하나, 블루 및 레드에는 5 비트만이 존재하기 때문에, 칩으로부터 출력된 블루 및 레드의 최하우 비트(least significant bit)는 16-비트 모드에서 항상 논리 ZERO이다. 경계 칼라는 16-비트 픽셀로 디스플레이되는 16-비트 레지스터이다.
8-비트 모드에서, 픽셀은 전체 256×18 팔레트를 어드레싱한다. 4-비트 모드에서, 픽셀은 팔레트로부터 16 엔트리를 어드레싱하며, 이 경우 어드레스의 상위 4 비트는 인덱스 레지스터로부터 공급된다.
8-비트 모드에서 2 개의 변형이 이용가능하다. 칼라 홀드 모드(color hold mode)에서, 픽셀이 제로 값을 취할 경우, 이전 픽셀의 칼라가 디스플레이된다. 이는 가장 좌측 픽셀을 단순히 세팅시키므로써 칼라의 대부분의 영역을 채우는데 사용될 수 있다.
가변 해상도 모드(variable resolution mode)에서, 최상위 픽셀은, 픽셀이 하나의 7-비트 픽셀 또는 두 개의 3-비트 픽셀로서 디스플레이될지를 결정한다. 비트가 클리어된 경우, 픽셀은 하나의 7-비트 픽셀로 디스플레이되며, 비트가 세트된 경우, 비트 0에서 2가 먼저 디스플레이되고 비트 4에서 6이 다음으로 디스플레이된다. 이와 같은 경우, 두 개의 고해상도 픽셀은 팔레트로부터 8 엔트리를 어드레싱한다. 어드레스의 상위 5 비트는 인덱스 레지스터로부터 공급된다. 가변 해상도 모드는, 저해상도 가운데에 작은 영역의 고해상 텍스트를 디스플레이하는데 유용하지만, 좀 더 화려한 배경을 갖는다. 이 모드는 픽셀당 하나의 클럭 해상도에서 사용이 불가능하다.
8-비트 모드에서, 임의의 비트는 희생될 수 있으며, 다른 목적으로 사용될 수 있다. 예를 들면, 비트는 충돌 검출을 위해 "핫 스팟(hot spot)"을 식별하는 데 사용될 수 있다. 이와 달리, 비트는 이미지 "깊이(depth)"를 인코딩하는데 사용될 수 있어서, 하나의 이미지는 다른 이미지의 앞쪽 또는 뒤쪽으로 이동될 수 있다. 비트를 희생시키기 위해, 마스킹된 레지스터에서의 동일 비트는 세트되며, 그 비트는 인덱스 레지스터에서의 대응 비트로 대체될 것이다.
제 1 클럭, 제 2 클럭, 제 3 클럭, 제 4 클럭, 제 5 클럭의 5 개의 픽셀 폭이 있다. 이들은 24MHz, 12MHz, 및 6MHz 정도의 도트 클럭에 대응한다. 가장 높은 도트 클럭은 픽셀당 16 비트 디스플레이 모드에서, 사용되지 않을 수 있다. 32-비트 DRAM이 채용될 경우, 두 개의 다른 조합, 즉 하나의 클럭 8-비트 및 두 개의 클럭 16-비트만이 사용될 수 있다. 발명의 상세한 설명에서 이후 기술되는 바와 같이, 외부 하드웨어가 채용될 경우, 비디오 프로세서(39)는 외부 비디오 소스로 젠-록 할 수 있으며, 로컬 비디오를 각각의 픽셀 단위로 외부 비디오와 혼합할 수 있다(그 위에 입힐 수 있다). 이는, 이하 상세히 설명되는 바와 같이, 본 발명에 따라 발생될 소정의 디스플레이에 대해 중요하다.
스크린의 메모리 맵은 비디오 디스플레이 폭에 의해 제한되지 않으며, 독립적으로 정의된다. 스크린의 베이스 어드레스는 시스템 메모리(45)의 임의의 장소일 수 있다. 스크린 메모리의 폭은 2의 급수(power)로서 128에서 2048 바이트까지이다. 스크린의 높이는 2의 급수로서 32 킬로 바이트에서 2 메가 바이트까지이다. 동일 라인상의 비디오 어드레스는 더 작은 경계내에 랩핑(wrapping)한다. 이 구성은 스크린으로 하여금 더 큰 가상 스크린내에 배치되게 하며, 이 안에서 패닝(panning)되며, 스크롤링(scrolling)되게 한다.
여러 가지 레지스터는 전술한 비디오 모드를 제어한다.
비디오 모드 레지스터는 전술한 특성을 제어한다. 비트 0 및 1은 픽셀당 비트의 수를 결정한다. 비트 2 및 3은 클럭 사이클에서의 픽셀 폭을 결정한다. 비트 4 내지 6은 비디오 어드레스에서 첫 번째 브레이크(break)를 결정하며, 이에 의해, 바이트 단위로 디스플레이 폭을 결정하게 된다. 비트 7 내지 9는 비디오 어드레스에서 두 번째 브레이크를 결정하며, 이에 의해 바이트 단위로 디스플레이 높이를 결정하게 된다. 비트 10은 동기 출력을 외부 비디오 소스로 신속하게 로킹(locking)하기 위해 수평 및 수직 타이머를 리셋시킬 수 있는 입력을 변환시킨다. 비트 11은 외부 비디오 멀티플렉서를 사용하여 외부 비디오 소스를 중첩시키는 입히기(encrustation)를 제어한다. 멀티플렉서 A/V/CD 제어기/코프로세서의 "INC" 핀에 의해 제어된다. 선택된 칼라 비트는 입히기를 제어하는데 사용된다. 비트 12는 비트 11과 동일하나 경계 칼라에만 적용되는 경게 입히기를 제어한다. 비트 13은 가변 해상도 모드를 세트시킨다. 비트 14는 칼라 홀드 모드를 세트시키며, 여기서, 칼라 0은 현재의 스캔 라인에서 이전의 논-제로(non-zero) 칼라로 대체된다. 비트 15는 이하의 표 2에서 도시되는 바와 같이, 비트 2, 3, 15에 기초한 3 및 4의 픽셀 클럭 폭을 인에이블시킨다.
비디오/메모리 제어기(78)는 또한 픽셀 마스트 레지스터 및 팔레트 인덱스 레지스터를 갖는다. 마스크 레지스터에서 세트된 모든 비트에 대해, 픽셀에서의 대응 비트는 인덱스 레지스터로부터의 비트로 대체된다. 인덱스 레지스터에서의 상위 비트는 4-비트 픽셀에 대한 팔레트 어드레스의 상위 부분을 형성한다. 경계 칼라 레지스터는 경계 칼라를 정의하는 16-비트 레지스터이다. 이 칼라는 16-비트 픽셀과 동일한 방식으로 디스플레이되는데, 즉 비트 0에서 4까지는 블루, 비트 5에서 10까지는 그린, 비트 11에서 15까지는 레드이다.
비디오/메모리 제어기(78)는 또한 시스템 메모리(45)에서 스크린의 24-비트 베이스 어드레스를 정의하는 두 개의 스크린 어드레스 레지스터를 갖는다. 이는 스크린상에서 가장 좌측 최상이 픽셀의 어드레스이다.
비디오/메모리 제어기(78)는 또한 비디오 및 여러 가지 테시트 로직에 대한 부가적인 제어를 하는 보조 비디오 모드 레지스터 MODE2를 갖는다. 비트 0은 라이트-펜 레지스터를 인에이블시켜서, 수평 및 수직 카운터가 판독되게 한다. 비트 2는 비디오 타이머를 인에이블시키고, 비트 3 및 4는 리프레시 주파수를 결정하는데, 하나의 클럭/128의 리프레시 주파수를 가리키고, 두 번째는 클럭/256의 리프레시 주파수를 가리키며, 세 번째는 컬럭/512의 리프레시 주파수를 가리킨다. 대부분의 DRAM은 64 KHz 또는 그 이상의 리프레시 주파수를 필요로 한다. 리프레시 제어기는 8 또는 그 이상의 리프레시 사이클이 요구될 때까지 기다리고, 그 후 SYSTEM' 버스를 요구하며, RAS 사이클 전에 필요한 수 만큼의 CAS를 생성한다. 비트 6이 세트될 때, 비디오 모드는 이중(double) 버퍼링되며, 블랭킹동안만 변화될 수 있다. CPU(48)는, 스크린 분할 동작(split screen operation)에서의 모드 변화를 클린(clean)시키기 위해 이 비트를 세트시킨다. 비트 7은 수직 동기의 극성을 인버팅시킨다. 비트 8은 수평 동기의 극성을 인버팅시키며, 비트 9는 사용되지 않는다.
팔레트는 F10000H-F103FFH에서 256×18 비트 RAM 블록이다. 각 엔트리는 각각 그린, 레드, 그린 및 블루인 6 비트를 포함한다. 각 엔트리는 2 워드를 넘어 확장된다. 블루 및 그린 비트는 상위 워드에서 나타난다. 레드 비트는 하위 워드에서 나타난다. 상위 워드의 비트 2 내지 7은 블루이고, 상위 워드의 비트 10 내지 15는 그린이며, 하위 워드의 비트 2 내지 7은 레드이다. 팔레트에서 엔트리에 기록하기 위해, CPU(48)는 하위 워드에 레드 비트를 먼저 기록해야 하며, 그 후 그린 및 블루 비트를 상위 워드에 기록해야 한다. CPU(48)는 경계 또는 블랭킹 동안 팔레트를 기록해야만 하며, 그렇지 않으면 반점이 비디오 상에 나타나게 될 것이다.
캐시 제어기(64)는 시스템 성능을 향상시키기 의해 마이크로프로세서(48)에 대한 커맨드 및 데이터를 유지한다. 라이트 백(write back)을 구비한 1K 바이트 커맨드 및 2K 데이터 캐시가 지원된다.
비디오/메모리 제어기(78)는 6 개의 인터럽트 소스를 지원하는데, 즉 비디오 입력 인터럽트, 3 개의 아날로그 인터럽트, CD 블록 디코더 인터럽트, DSP(61) 인터럽트를 지원한다. 아날로그 인터럽트는 단순한 아날로그-디지탈 컨버터가 구현되도록 한다. 단안정 바이브레이터(monostable vibrator)는 다이오드, 캐패시터, 포텐시오미터(potentiometer)로부터 구현된다. 캐패시터는 수직 동기에 의해 방전되며, 포텐시오미터 셋팅에 따른 비율로 충전되기 시작한다. 캐패시터상의 전압이 비디오 프로세서(39)로의 압력이 임계값에 도달될 때 인터럽트가 발생된다. 그 후, 프로세서는 얼마나 빨리 캐패시터가 충전되었는지를 측정하기 위해 수직 카운터를 판독할 수 있으며, 이에 따라 포텐시오미터가 세팅된다.
비디오/메모리 제어기(78)는 또한 6 개의 인터럽트 모두가 독립적으로 인에이블되거나 디스에이블되는 것을 허용하는 인터럽트 인에이블 레지스터를 갖는다. 논리 "1"을, 인터럽트 인식 기록 레지스터의 임의의 비트에 기록하므로써, 대응 인터럽트가 클리어된다. 인터럽트 판독 레지스터는 모든 계속중인 인터럽트를 반영한다.
비디오/메모리 제어기(78)는 80376 CPU(48)의 16 메가바이트 어드레스 범위를 이하의 메모리 맵으로 디코딩하는데, 즉 8 메가 바이트의 DRAMO(OH-7FFFFFH), 7 메가 바이트의 DRAM1(800000H-EFFFFFH), 64 킬로 바이트의 ROM1(F200000H-FOFFFFH), 64 K의 내부 메모리(F10000H-F1FFFFH), 896 K 블록의 ROM1(F20000H-FFFFFFH)으로 디코딩된다. 내부 메모리의 64 킬로바이트는 팔레트 RAM, 블리터 레지스터, DSP 레지스터 및 메모리를 포함한다. 팔레트 어드레스 범위는 전술되었다. 블리터 레지스터는 F10400H에서 F107FFH의 범위로 확장된다. DSP 메모리는 F10800H로부터 F18000H로 확장된다.
온-보드(on-board) 스크린 RAM 및 시스템 RAM은 512 K의 DRAM이다. 스크린/시스템 RAM을 포함하는 온-보드 DRAM은 16-비트 또는 32-비트 폭을 가질 수 있다. 적절한 DRAM은 도시바(Toshiba)에 의해 제조되는 TCS14170BJ 256 킬로 바이트×16-비트 메모리 칩이다. DRAM의 사이즈는 리셋동안 비디오 프로세서(39)에 의해 결정되나, CPU(48)에 직접 영향을 주지는 않는다. 대신에, 이는 비디오/메모리 제어기(78)가 다른 버스 마스터 후보자에 대해 유용한 더 많은 대역폭을 남김으로써 보다 신속히 동작하도록 한다. 소정의 디스플레이 및 블리터 모드는 32-비트 메모리에서만 가능하다. DRAM의 2개의 뱅크는 전술한 바와 같이 부착될 수 있다. 작은 양의 DRAM이 부착될 경우, 전술한 메모리 맵을 통해 반복될 것이다.
부트스트랩 ROM은 항상 16 비트 폭을 가진다. 부트스트랩 ROM은 여러 제조자에 의해 제조되는 2 개의 27C512 이레이저블 프로그래머블 판독-전용 메모리(erasable programmable read only memory)를 포함하며, 따라서 128 K의 부트스트랩 ROM을 제공하게 된다. 리셋후에, ROM 및 내부 메모리를 구비하는 F20000H으로부터 FFFFFFH까지의 1 메가바이트 윈도우는 16 메가바이트 어드레스 범위동안 반복된다. 이는 여러 가지 프로세서가 비디오 프로세서(39)로 부팅되는 것을 허용한다. 전술한 메모리 맵은 처음에 채택되며, 메모리 타입 레지스터는 CPU(48)에 의해 기록된다. 비디오/메모리 제어기(78)는, 어디에서나 가능한 시스템 메모리(45)상의 페이지 모드 사이클을 수행한다. 이들은 통상 메모리 사이클보다 빠르며, 연속적인 판독 및 기록이 동일 페이지내에 있을 경우 발생된다. 비디오/메모리 제어기(78)는, 메모리 타입 레지스터내에서 프로그래밍되는 DRAM에서의 칼럼의 수를 알 필요가 있다. 메모리 타입 레지스터에서, 비트 0 및 1은 DRAM에서의 칼럼의 수를 결정하며, 0은 256 칼럼을 가리키며, 1은 512 칼럼을 가리키고, 2는 1024칼럼을 가리키며, 3은 2048 칼럼을 가리킨다.
비디오/메모리 제어기(78)는 7 가지 타입의 전송을 지원하는데, 즉 통상 DRAM 사이클(4 사이클), 페이지 모드 DRAM 사이클(2 클럭), ROM 사이클(6 클럭), 내부 메모리(2클럭), 외부 I/O(6 클럭), 인터럽트 승인(2 클럭), 내부 I/O(2 클럭)을 지원한다. CPU(48)는 실질적인 전송에서보다 하나 많은 클럭 사이클에서 사이클링할 것이다. 내부 버스 마스터는 전송 시간에 사이클링할 수 있다.
비디오/메모리 제어기(78)는, CPU(48)에 대해 2X(2배속) 클럭이면서, 텔레비전 크로미넌스(크로마) 부반송파의 배수인 크리스탈에 대한 크리스탈 오실레이터를 사용한다. 이 크리스탈 클럭은 버퍼링되며, CPU(48)로 출력된다. 동일 클럭은 2 분할(divide by 2)로 되어, 이는 메인 시스템 클럭으로서 출력된다. 이 클럭은 별개의 핀을 통해 비디오 프로세서(39)로 입력된다. 클럭을 출력하거나 입력하는 이유는 CPU 2X와 메인 시스템 클럭사이의 상대적인 스큐(skew)가 작은 딜레이를 다른 경로에 첨가하므로써 하나의 방식 또는 다른 방식에 적응될 수 있기 때문이다. 크리스탈 주파수는 또한 1과 15 사이의 수에 의해 크리스탈 주파수를 분할할 수 있는 프로그램가능한 분할기에 의해 분할될 수 있으며, 공간 비율에 대한 짝수 마크를 갖는 출력 파형을 제공한다. 이는 텔레비전 칼라 부반송파로 사용된다.
크로마 분할기 레지스터 2X 크리스탈 주파수에 대한 텔레비전 칼라 부반송파(크로마)의 비율을 정의하는 4-비트 레지스터이다. 이는 다음과 같이 프로그래밍되어야 한다. 즉, 크로마=2×크리스탈 주파수/크로마 주파수-1.
비디오/메모리 제어기(78)는 또한 상태 레지스터를 갖는다. 상태 레지스터 비트 0이 세트될 경우, 비디오 타이밍은 PAL(유럽 텔레비전 신호 표준)에 대해 설정되어야 한다. 상태 레지스터의 비트 0이 클리어될 경우, 비디오 타이밍은 NTSC 에 대해 설정되어야 한다. 상태 레지스터의 비트 1이 세트되었을 경우, 현재의 필드에는 라이트-펜 입력이 존재한다. 이 비트는 라이트-펜에 의해 세트되며, 수직 동기에 의해 클리어된다.
비디오/메모리 제어기(78)는 리셋동안 하나의 모드에 놓여질 수 있으며, 이후, 이는 2 개의 워드 폭을 갖는 I/O 로케이션 및 64 K 메모리 로케이션에만 응답한다. I/O 로케이션의 실질적인 로케이션은 칩 선택 입력에 의해 결정되어서, 로케이션은 외부적으로 결정될 수 있게 된다. 이 "핍홀(peephole)" 모드는 비디오 프로세서(39)로 하여금 I/O 에서의 작은 갭 및 시스템(30)에서의 어드레스 메모리 맵만을 차지하도록 한다.
레지스터는 32-비트 폭을 기자며, 따라서 두 개의 16-비트 액세스로서 액세스되어야 한다. 비디오 프로세서(39)내의 모든 I/O 레지스터를 어드레싱하기 위해, 요구되는 레지스터의 통상의 I/O 어드레스는 처음에 보다 하위 워드(a[1] 로우)에 기록되며, 그 레지스터는 상위 워드(a[1] 하이)에서 판독되거나 기록될 수 있다. 비디오 프로세서(39)의 내부 및 외부의 모든 메모리를 어드레싱하기 위해, 64K 윈도우는 뱅크 레지스터에 기록하므로써 비디오/메모리 제어기(78)에 의해 통상적으로 디코딩되는 16 M 어드레스 공간내의 임의의 64K 경계(boundary)로 이동될 수 있다. 뱅크 레지스터는 어드레싱 메모리가 핍홀 모드에 있을 때 8 개의 최상위 비트를 제공하는 8-비트 레지스터이다. 예를 들면, 원래 F10000H에 있는 팔레트를 액세스하기 위해 CPU(48)는 뱅크 레지스터에 OF1H를 기록해야 하며, 그 후 외부 칩 선택에 의해 결정되는 핍홀 로케이션의 하부에 판독 및 기록해야 한다.
블리터(72)는 가능한 신속히 그래픽 생성 및 애니메이션을 수행하기 위한(메모리 대역폭에 의해 제한되는)그래픽 코프로세서이다. 이는 CPU(48) 및 DSP(61)에 의해 메모리로 기록되는 커맨드를 수행한다. 이는 시스템 메모리(45)로부터 새로운 커맨드 세트를 판독하므로써 긴 시퀀스의 그래픽 동작을 임의로 수행할 수 있다. 블리터(72)가 그래픽 동작을 수행하는 동안, 블리터(72)는 SYSTEM' 버스 마스터가 되며, CPU(48)가 임의의 어떤 버스 동작도 못하게 한다. 이것은 합리적인데 그 이유는 블리터(72)는 CPU(48)가 수행했을 동작을 수행하는데 사용되며, 따라서 프로그램 동작을 고속으로 하기 때문이다. 이는 또한 동작을 블리팅(blitting) 하기 위해 임의의 동기 제어 프로그래밍에 대한 필요를 제거하며, 블리터(72)에서의 임의의 인터럽트 발생 하드웨어에 대한 필요를 제거한다. 그러나, 다른 두 프로세서(DSP(61) 및 콤팩트 디스크 DMA)의 실시간 프로그래밍을 허용 하기 위해, DMA 전송이 요구될 경우, 블리터(72)는 동작을 중지하며, SYSTEM' 버스를 DSP(61) 또는 콤팩트 디스크 DMA 채널에 양도한다. 이는, 또한 인터럽트가 발생될 경우 동작을 중지하며, CPU(48)에 대한 SYSTEM' 버스를 포기한다. 임의의 이들 전송동안, 현재 동작은 중지되나, 인터럽트 신호가 비활성화되거나, DSP(61)가 DMA 액세스를 완료할 때 재동작될 것이다.
블러터(72)의 동작은 이하의 간단한 프로그램으로 잘 나타난다:
커맨드 및 오퍼랜드는 CPU(48) 또는 DSP(61) 의해 메모리로 기록된다.
블리터(72)는 비디오 프로세서(39) I/O 공간내에 여러개의 레지스터를 갖는데, 즉 (1) 두 개의 판독가능한 블리터 목적지 레지스터로서 동일 I/O 어드레스를 공유하는 두 개의 기록가능한 블리터 프로그램 어드레스 레지스터, (2) 제 1 판독 가능한 블리터 소스 어드레스 레지스터로서 동일 I/O 어드레스를 공유하는 기록가능한 블리터 커맨드 레지스터, (3) 제 2 판독가능한 블리터 소스 어드레스 레지스터로서 동일 I/O 어드레스를 공유하는 기록가능한 블리터 제어 레지스터, (4) 판독 가능한 내부 카운터 레지스터, (5) 판독가능한 블리터 외부 카운트 레지스터로서 동일 I/O 어드레스를 공유하는 제 1 기록가능한 블리터 진단 레지스터, (6) 판독가능한 블리터 상태 레지스터로서 동일 I/O 어드레스를 공유하는 제 2 기록가능한 블리터 진단 레지스터, (7) 제 3 기록가능한 블리터 진단 레지스터를 갖는다.
블리터(72)는 그래픽 및 블록 이동 동작을 실행하기 위해 여러 가지 모드에서 동작될 수 있다. 블리터(72)는 데이터 경로, 어드레스 발생기, 시퀀서의 세 개의 분리 블록으로 크게 분리되는 내부 아키텍처를 갖는다. 데이터 경로는 소스 데이터 레지스터, 목적지 데이터 레지스터, 패턴 데이터 레지스터의 세 개의 데이터 레지스터를 포함한다. 데이터 경로는 또한 지능적인 블리팅 동작을 하는 다능의 비교기와, 출력 데이터를 발생시키기 위한 논리 기능 유닛(LFU)을 포함한다.
어드레스 발생기는 3 개의 어드레스 레지스터를 포함하며, 이들은 블리터 커맨드를 인출하는데 사용되는 프로그램 어드레스 레지스터, 소스 레지스터 및 목적지 어드레스 레지스터이다. 이는 또한 어드레스를 갱신하기 위해 관련 스텝 레지스터를 갖는 연산 로직 유닉(ALU), 출력 어드레스를 발생하기 위한 멀티플렉서를 포함한다.
전술한 짧고 간단한 프로그램에서 예시된 바와 같이, 시퀀서는 블리터(72)가 동작하는 두 개의 루프(내부 루프 및 외부 루프) 및 여러 개의 과정으로 된 프로그램으로서 소프트웨어적으로 동작된다. 이 동작의 여러가지 부분이 블리터 커맨드 레지스터내의 플래그(flags)에 종속적이며, 또한, 루프 카운트가 커맨드의 부분이지만, 이 프로그램은 고정된다.
데이타 경로는 세 개의 데이타 레지스터 및 두 개의 데이타 조작 블럭을 포함하는데, 즉 출력 데이타를 제공하기 위해 다수의 유용한 방안으로 데이타 레지스터의 내용을 조합할 수 있는 논리 기능 유닛과, 기록 동작을 금지하고 선택사양적으로 블리터 동작을 중지시키기 위해 데이타상의 소정의 비교를 수행할 수 있는 비교기를 포함한다.
데이타 경로는 32-비트, 16-비트, 8-비트, 4-비트의 4 개의 사이즈를 데이타를 조정할 수 있다. 장 워드(32-비트 폭을 가짐)는 빠른 블럭 움직임 및 블럭 채우기(fill)를 수행할 때 사용된다. 픽셀(4-, 8-, 또는 16-비트 폭을 갖는)은 라인-드로잉(line-drawing), 다중 플레인(plane) 동작, 문자 페인팅 등과 같이 모드 블리터 모드를 사용하여 조작될 수 있다.
데이타 경로의 대부분은 16-비트 폭을 가지며, 이는 최대 스크린 픽셀 사이즈이다. 그러나, 소스 데이타 레지스터는 32-비트 폭을 가지며, 소스 데이타 레지스터의 상위 16-비트는 논리 기능 유닛의 모드에 관계없이 32-비트 모드로 기록된 데이타의 상위 16-비트를 제공하는데 사용된다. 따라서, 두 개의 16-비트 폭의 레지스터(패턴 데이타 및 목적지 데이타) 및 하나의 32-비트 폭의 데이타 레지스터(소스 데이타 레지스터)가 있다. 소스 및 목적지 데이타 레지스터는 대응하는 판독 사이클이 내부 루프에서 인에이블될 때, 시스템 메모리(45)의 소스 및 목적지 어드레스로부터 로딩된다. 그러나, 세 개의 데이타 레지스터 모두는 패턴 데이타를 갖는 블리터 동작의 개시에서 로딩되며, 이는 출력 데이타를 제공하거나, 비교기에서 데이타의 부가적인 소스로서 사용될 수 있다. 예를 들면, 패턴 데이타 레지스터의 데이타를 예를 들어, 마스크, 기록용 패턴, 또는 참조 값일 수 있다. 패턴 데이타는 소스 데이타 레지스터의 양쪽 워드로 로딩된다.
논리 기능 유닛은 시스템 메모리(45)의 목적지로 기록되는 출력 데이타를 발생시킨다. 논리 기능 유닛은 임의의 소스 및 목적지 레지스터 픽셀의 논리적 조합을 수행할 수 있다. "소스 데이타 픽셀"은 소스 데이타 레지스터 또는 데이타 패턴 데이타 레지스터로부터 선택될 수 있다. LFU는 데이타 레지스터로부터 입력 데이타의 두 개의 세트의 4 개의 부울 민텀(Boolean minterms)(A&B,&B, A&,&)중 임의의 것을 선택하며, 두 개의 선택된 민텀의 논리 OR를 발생시킨다. 이는 입력 데이타의 임의의 논리 조합을 허용하며, 이로 인해 16가지의 기능적 가능성이 존재하게 된다.
32-비트 모드에서, 통상적으로, LFU는 소스 데이타를 생성하도록 세트되는데, 그 이유는 이는 16-비트 폭을 갖기 때문이다. 장 워드 기록동안 기록된 상위 16 비트는 항상 소스 레지스터의 상위 16 비트로부터 추출된다.
비교기는 소스, 목적지, 패턴 데이타 레지스터에서의 데이타에 대한 여러가지 비교를 수행할 수 있다. 이 비교 조건이 충족되는 경우, 이는 금지 신호(inhibit signal)를 발생한다. 금지 신호는 기록 동작을 금지시키는 데 사용되며, 선택적으로 블리팅 동작을 중지시키는데 사용된다. 비교기는 또한 충돌 검출 및 시스템 메모리(45) 서치 동작에 대해 투명한 칼라를 제공하고, 문자 페인팅을 돕기 위해 픽셀 플레인 효과를 제공하는데 사용될 수 있다.
다중 플레인 동작은 플레인 번호를 모든 픽셀에 할당하므로써 지원된다. 이 모드는 4 및 8-비트 픽셀에만 적용가능하다. 8-비트 픽셀 모드에서, 8-비트중 2 개(비트 6 및 7)는 두 개 또는 네 개의 플레인을 제공하는데 사용되며, 4-비트(니블(nibble))픽셀 모드에서, 4 비트 중 하나(두 -니블 바이트의 비트 3 및 비트 7)는 두 개의 플레인을 제공하는 데 사용된다. 목적지 데이타의 플레인 번호가 소스 데이타 또는 이들의 임의의 조합의 플레인 번호와 동일하지 않거나 이보다 클 경우, 비교기는 금지 출력을 제공할 수 있다. 이는 스크린상으로 기록된 데이타가 상이한 플레인에 이미 존재하는 데이타에 의해 마스킹될 수 있음을 의미한다.
전체 소스 픽셀이 목적지 픽셀과 동일하거나 또는 동일하지 않을 경우, 비교기는 출력을 제공하거나, 금지시킬 수 있다. 이는 예컨대, 특정 값을 위해 시스템 메모리(45)를 탐색하는 데 사용되며, 특히 소정의 칼라를 투명한 것으로 지정하고 그 투명한 칼라 값을 데이타 레지스터에 보관하는 데 사용될 수 있다. 이는 16-, 8-, 또는 4-비트 픽셀에 적용된다.
블리터(72)는 또한 비교기의 비트에서 픽셀로의 확장 모드 동작을 구비한다. 이러한 비교기 동작은 예컨대, 문자 페인팅에 사용되는 데이타의 비트에서 픽셀로의 확장을 가능하게 한다. 이 모드에서, 비교기는 내부 카운터 값에 기초하여 소스 바이트의 소정의 비트를 선택하며, 이 비트가 논리 ZERO일 경우 기록 동작을 금지시킨다.
블리터(72)는 3 개의 픽셀 해상도 모드를 처리할 수 있다. 즉, 각 워드가 하나의 픽셀에 대응하는 16-비트 모드, 각 바이트가 하나의 픽셀에 대응하는 8-비트 모드, 각 바이트가 두 개의 픽셀에 대응하는 4-비트 모드가 있다. 8- 및 16-비트 픽셀 모드에서, 데이타 경로는 한번에 하나의 픽셀을 처리하며, 그 동작은 직관적으로 이해할 수 있는 것이다. 하지만, 4-비트 픽셀 모드에서는, 시스템 메모리로부터 판독되거나 기록되는 바이트의 반만이 현재의 픽셀이기 때문에, 소정의 추가의 요구 조건들이 데이타 경로상에 놓이게 된다. 4-비트 모드 기록 동작에서, 변경되지 않은 목적지 데이타는 현재의 픽셀에 대응되지 않는 데이타 바이트의 반에 기록된다. 따라서, 목적지 판독은 4-비트 모드에서 항상 인에이블되어야 한다(제어 비트 DSTEN을 세트). 이는 1 바이트 미만을 메인 메모리에 기록하기 위한 설비가 없기 때문에, 실행되어야 한다.
소스 4-비트 픽셀 어드레스 및 목적지 4-비트 픽셀 어드레스가 RAM의 대응 바이트의 상이한 반을 지시하는 것도 또한 가능하다. 이러한 경우, 시프터(shifter)는 소스 데이타의 두 개의 반을 교환(스와핑(swapping))한다. 4-비트 모드에서, 패턴 바이트의 두 개의 니블(반 바이트, 4 비트)은 동일 값으로 통상 세트되어야 한다. 블리터(72)에서의 프로그램을 갖는 픽셀은 디스플레이 폭과 반드시 일치할 필요는 없고, 대량의 데이타를 이동시키는 가장 효과적인 방법은 32-비트 모드임을 주지해야 한다. 이러한 모드 전송은 정렬형 장-워드(long-word aligned)이어야 하며, 시스템은 32-비트 RAM으로 맞춰져야 함을 다시 한번 상기해야 한다.
블리터(72)는 또한 어드레스 발생기를 갖는다. 어드레스 발생기는 3 개의 어드레스 레지스터로서, 증가 또는 스텝 레지스터, 어드레스 가산기, 어드레스 출력 멀티플렉서를 포함한다. 3 개의 어드레스 레지스터는 소스 어드레스, 목적지 어드레스, 프로그램 어드레스를 보유한다. 이들 레지스터의 각각은 블리터(72)로 하여금 16 메가바이트까지 어드레싱하는 것을 가능하게 하는 24-비트 레지스터이다. 또한 소스 및 목적지 어드레스 레지스터는 4-비트 픽셀 모드에서 사용되는 니블 비트를 포함한다. 프로그램 어드레스 레지스터는 프로그램이 인출될 어드레스를 보유하며, 이것을 사용하여 메모리 사이클이 수행될 때마다 한 워드씩 증가한다. 이 레지스터는 항상 짝수이며, 따라서 비트 0은 항상 논리 ZERO이어야 한다.
소스 및 목적지 어드레스 레지스터는 각각의 사이클 후에 갱신되며, 이들이 참조하는 객체(object)에서 상당한 유연성을 가능하게 하는 가산기를 사용하며, 다른 시간에 갱신된다. 모든 소스 및 목적지 어드레스 갱신은 선택적으로, 어드레스 레지스터의 하위 16 내지 19 비트 상에서만 수행될 수 있다. 이들 블리터(72)가 효과적으로 64K, 128K, 256K 또는 512K 페이지에 동작됨을 의미한다. 이 모드에서 어드레스가 페이지내에서 오버플로(overflows)할 경우, 이는 랩핑(wrapping)하고, 오버플로우 또는 언더플로우는 상실하게 될 것이다.
블리터(72)는 어드레스를 갱신하는데 사용되는 25-비트 폭을 갖는 가산기인 어드레스 가신기를 또한 갖는다. 어드레스 가신기는 0.5, 1 혹은 2와 같은 상수값 또는 스텝 레지스터중 하나에 저장된 변수값이 어드레스 값에 가산되도록 한다. 어드레스 가산기는 어드레스 값으로부터 그 동일한 값을 감산할 수 있다. 25번째 비트는 전술한 바와 같이 어드레스의 니블 부분이다. 한 픽셀 증가시키면, 스크린 해상도의 현재의 셋팅 상태에 따라 어드레스상에 상이한 효과가 발생한다.
모든 어드레스 레지스터는 해당 메모리 사이클의 종료시 자동적으로 갱신된다. 즉, 소스 판독시 소스 어드레스 레지스터가, 목적지 기록시 목적지 어드레스 레지스터가자동적으로 갱신된다. 어드레스는 블리터 커맨드에서 SWRAP 및 DWRAP 비트를 사용하므로써 수직적으로 랩핑되며, 블리터 제어 레지스터 SLWRAP 및 DLWRAP 비트를 사용하므로써 수평적으로 랩핑될 수 있다.
어드레스 출력 멀티플렉서는 시스템 메모리(45)에 외부 어드레스를 제공한다. 어드레스 출력 멀티플렉서는 소스 어드레스, 목적지 어드레스, 프로그램 어드레스의 3 가지 유형의 어드레스를 제공한다. 이들은 대응 어드레스 레지스터로부터 직접 전달된다.
블리터(72)가 라인을 그리고 있을 때(drawing line), 어드레스 레지스터는 통상의 방식과는 상이한 방식으로 사용된다. 목적지 어드레스 레지스터는 라인드로우 어드레스로서 사용되며, 소스 어드레스 레지스터 및 스텝 레지스터는 각각 델타(delta) 1 및 델타 2로서 사용된다. 라인 그리기 동안, 델타 2는 델타 1로부터 감산되며, 발생된 빌림 출력(borrow output)은 무엇이 목적지 어드레스 레지스터에 가산되는지를 결정하는 데 사용된다. 더 상세한 설명에 대해서는, 이하의 라인 드로잉 섹션에서 하기로 한다.
블리터(72)는 또한 블리터(72)의 동작을 제어하는 시퀀서를 갖는다. 제어의 흐름은 두 레벨에서 가장 잘 이해된다. 제어의 전반적인 흐름을 통제하는 외부 루프와, 실질적인 블리팅 또는 라인 드로잉 동작을 수행하는 내부 루프가 존재한다. 외부 루프의 3 개의 섹션은 커맨드 판독 과정, 파라미터 판독 과정, 내부 루프이다.
내부 루프는 실질적인 블리팅 또는 라인 드로잉 동작을 수행한다. 내부 루프 사이클은 3 개의 메모리 사이클까지 포함할 수 있다. 이들은 소스 어드레스로 부터 판독, 목적지 어드레스로부터 판독, 목적지 어드레스로의 기록이다. 3 개의 사이클은 모두 선택사양이다. 루프가 소스 판독, 또는 소스 판독 및 목적지 판독을 포함할 경우, 비교기 금지 메카니즘은 목적지 기록이 발생되기 전에 테스트된다. 이는 비교기 금지 조건이 일치될 때, 기록 사이클이 바이패싱되는 것을 가능하게 한다. 비교기 금지 조건이 일치될 때, 현재 동작을 중지하고 CPU(48)로 제어를 복귀시키도록 하는 것이 가능하다. 그 후, 프로그램은 금지가 어디에서 발생된 지를 결정하기 위해 어드레스 레지스터를 검색할 수 있으며, 이로 인해 충돌 검출이 수행될 수 있다. 그 후, CPU(48)는 동작을 재개시할 지 또는 중단할 지를 결정할 수 있다. 내부 루프는 내부 루프 카운터가 제로에 도달될 때까지 동작을 수행한다. 내부 루프 카운터는 10-비트 카운터이며, 따라서 내부 루프는 1부터 1024까지의 임의의 횟수를 반복할 수 있다.
블리터(72)는 비교기 기록 금지가 발생될 때 동작이 중단될 수 있게 함으로써, 충돌 검출에 대비한다. 이것이 발생될 때, 제어가 CPU(48)로 복귀되며, CPU(48)는 내부 상태를 조사하여 충돌의 원인이 무엇인지를 판정할 수 있다. 이 시점에서, CPU(48)는 블리터(72)로 하여금 실행중이었던 동작을 재개할 수 있게 하거나, 블리터(72)를 유휴 상태(idle state)로 다시 리셋시킬 수 있다. 리셋 또는 재개 커맨드는 블리터(72)가 다른 동작을 위해 사용되기 전에 송출되어야 한다. 블리터(72)가 중지된 상태에 있을 동안, 새로운 값은 커맨드 레지스터로 기록될 수 있어서, 충돌 중지 매카니즘이 디스에이블될 수 있음을 유의하자.
파라미터 판독 프로시쥬어는 새로운 파라미터 세트를 내부 루프에 로딩시키는 매우 직관적(straightforward)인 시퀀스이다. 이는 메모리로부터 순서대로 내부 루프 카운터 값, 스텝 레지스터 값 및 패턴 값을 판독하며, 이들 값은 데이타 레지스터를 사전설정(preset)하는 데 사용된다. 내부 카운트는 실질적으로 내부 루프가 실행되는 횟수가 된다. 스텝 레지스터는 어드레스 증가에 사용되며, 패턴 레지스터는 데이타 조작에 사용된다.
파라미터 판독 프로시쥬어는 블리팅 동작의 개시시에 커맨드 판독 과정의 일부로서 호출되며, PARRD 제어 비트에 의해 결정되는 바와 같이 블리팅 동작에 의해 요구될 경우에도 또한 호출된다. 여분의 파라미터 판독은, 내부 루프를 통해 패스들 사이에서 발생하며 파라미터가 변경될 수 있도록 하며, 이에 의해 불규칙한 형상의 페인팅(irregular shape painting) 및 런-길이 인코딩형 데이타 압축복원(run-length encoded data decompression)과 같은 동작이 가능하게 된다.
커맨드 판독 과정은 새로운 블리팅 동작을 개시하는 데 사용된다. 블리터(72)는 블리터(72)의 정규의 비활성 상태를 나타내는 비활성 리셋 상태에서 개시된다. 이 상태로부터, 커맨드 레지스터 기록이 블리터(72)를 개시하기 위해 실행되며, 통상 이러한 기록에 앞서 프로그램 어드레스 레지스터로의 기록이 행해진다. 동작 파라미터의 완전한 세트는 자동적으로 증가되는 프로그램 카운트 어드레스로부터 로딩되며, 제어는 커맨드 판독 루프를 벗어나 진행한다. 블리팅 동작이 완료될 때, 새로운 커맨드는 프로그램 카운트 어드레스로부터 판독되며, 이 커맨드가 블리터(72)를 실행 모드(run mode)에 있게 할 경우, 새로운 파라미터의 세트는 로딩되며, 다른 동작이 개시된다. 그렇지 않을 경우, 블리터(72)는 정지된 상태로 들어가며, SYSTEM' 버스를 CPU(48)에 복귀시킨다. 전술한 메카니즘에 의해 블리터(72)는 임의의 프로세서 개입이 없이 그래픽 커맨드의 긴 시퀀스를 임의로 수행할 수 있게 된다. 이는 프로세서 I/O 기록 사이클이 블리터 메모리 판독에 비해 비교적 느리기 때문에 매우 유용하다.
외부 루프의 정규의 동작은 커맨드 판독 루프로부터 빠져 나오는 순간 개시된다. 그 후, 제 1 파라미터 세트를 판독하기 위해 파라미터 판독 루프에 진입되며, 동작 개시전에 내부 카운터가 초기 값으로 로딩된 상태로 내부 루프에 진입한다. 그후, 외부 카운터는 감소되며, 제로일 경우, 커맨드 판독 루프로 진입한다. 그 후, 레지스터에 기록된 소스 어드레스 및 목적지 어드레스중 하나 또는 둘다는 스텝 레지스터의 내용으로 갱신될 수 있다. 그 후, 파라미터 판독 루프는, 내부 루프로 다시 진입하기 전에, 여러가지 내부 루프 파라미터를 갱신하기 위해 선택적으로 진입될 수 있다. 두 개의 루프에 의해, 블리터(72)는 2 차원 스크린 구조에서 동작을 계속 수행할 수 있게 되며, 외부 루프 어드레스 레지스터는 다음 라인상의 구조의 시작점으로의 스크린 어드레스 포인터의 이동을 갱신한다. 파라미터 판독 루프는 유연성을 부가하면서, 동시에 스크린 구조 파라미터가 라인 단위로 변경될 수 있게 한다.
블리터(72)는 또한 사이클 타이밍 발생 및 모든 메모리 사이클의 버스 중재를 제어하는 메모리 인터페이스 상태 머신을 갖는다. 블리터(72)는 블리터 커맨드 시퀀스이 지속되는 동안 CPU(48)로부터 SYSTEM' 버스에 대한 제어를 넘겨 받는다. 이는 전술한 버스 양도 지연(bus handover latency)을 겪게 되나, 블리터(72)가 SYSTEM' 버스를 허여받자 마자, 이 동작이 개시될 것이다.
메모리 인터페이스는 DSP(61) 또는 콤팩트 디스크 판독 채널 중 어느 하나가 SYSTEM' 버스를 요구하자 마자, 이들 장치에 SYSTEM' 버스를 양도할 것이며, 임의의 현재의 메모리 사이클을 완료하기 위해서만 정지된다.
인터럽트는 블리터 제어 레지스터에서 마스킹되어 있지 않을 경우, 블리터(72)로 하여금 동작을 또한 중지하게 할 것이다. 블리터(72)는 인터럽트 라인 자체의 상태를 검출하며, 이를 사용하여 동작을 중지시킨다. 인터럽트 라인이 이전의 상태를 재개하는 즉시 동작이 개시될 것인대, 이는 확인 포트(acknowledge port)로의 CPU(48) 기록이 발생할 때 발생한다. 이것은 반드시 인터럽트 서비스 루틴의 종료일 필요는 없으며, 따라서 프로그래머는 스택 크롤(crawl)을 주의해야 하며, 통상적으로 서비스 루틴동안 인터럽트를 디스에이블되게 유지해야 한다. 블리터(72)는 인터럽트 라인이 CPU(48)로부터의 개입이 없이 클리어되는 즉시 동작을 재개한다. 블리터(72)는 내부 인터럽트 소스(비디오 인터럽트, 아날로그 입력 인터럽트, 콤팩트 디스크 인터럽트)에만 응답한다. 임의의 외부 CPU 인터럽트 소스는 블리터(72)에 영향을 주지 못한다.
블리터(72)는 많은 동작 모드를 갖는다. 블리터(72)에 의해 수행되는 가장 간단한 동작은 시스템 메모리(45)의 하나의 블럭을 다른 블럭에 카피하고, 시스템 메모리(45)의 블럭에 사전정의된 값을 채워넣는 것이다. 이들 동작은 시스템 메모리(45)의 선형 부분 및 임의의 직사각형 스크린상에서 수행될 수 있다. 목적지 데이타 레지스터는 변경될 시스템 메모리(45)의 어드레스로서 사용되며, 소스 어드레스 레지스터는 카피 동작일 경우, 카피 중인 데이타의 어드레스로서 사용된다.
동작이 메모리의 선형 영역상에서 수행될 때, 대부분의 어드레스 제어 비트는 제로로 세트된다. 스텝 레지스터는 사용되지 않으며, 유일한 요구 조건은 카피가, DSIGN 및 SSIGN을 적절히 셋팅하는데 있어서, 어드레스를 증가 또는 감소시키면서 이루어지는지 여부를 판단하는 것이다. 어드레스 레지스터에 배치된 초기 값은 부호 비트가 세트되지 않을 경우 동작이 수행되는 영역의 하부이며, 세트될 경우 상부임을 주지해야 한다. 양 경우에 있어서, 판독 또는 기록되는 첫번째 픽셀이 첫번째 어드레스가 될 것이다. 동작의 길이는 내부 카운터에 배치되며, 외부 카운터는 1로 세트된다.
동작이 이루어지고 있는 블럭이 매우 클 경우, 내부 루프 및 외부 루프 카운터가 모드 사용되어야 할 수도 있으며, 동작이 이루어지고 있는 픽셀의 수는 내부 및 외부 카운터 값의 곱(product)에 의해 주어진다. 소스 및 목적지 데이타중 하나 또는 모두가 선형 영역이 아니고 직사각형일 때, 내부 루프 카운터는 직사각형폭을 포함하고, 외부 루프 카운터는 직사각형 높이를 포함할 것이다.
적절한 스텝 레지스터는 직사각형 주위의 우측으로부터 다음 라인 상의 좌측으로의 어드레스 증가분으로 세트된다. SRCUP 및 DSTUP 비트는 소스 또는 목적지가 직사각형인지에 따라 세트된다. 픽셀당 8-비트 또는 그 이상의 비트 모드에 있어서, 메모리 채움에는 SRCEN 및 DSTEN는 사용되지 않으며, 비트 SCRCEN은 메모리 카피를 위해 세트되어야 한다. 4-비트 픽셀 모드에서, DSTEN은 또한 항상 세트되어야 하며, 따라서 목적지 판독은 다른 픽셀의 훼손을 막기 위해 수행된다. 이 방법을 사용하는 경우는 그렇지 않은 경우 보다 느림을 주지해야 한다.
블리터(72)는 잘 알려진 디지탈 차동 분석기(DDA) 알고리즘에 따라 라인을 그린다. 주어진 라인에 대해, X 어드레스 또는 Y 어드레스중 하나는 각 픽셀이 그려질 때 마다 항상 증가하는데 비해, 다른 하나는 적절한 산술 조건이 충족될 경우 또한 증가되는 것이 이 알고리즘의 기본이다. 블리터(72)에 의해 사용되는 알고리즘은, 소정의 작업값(a working value)으로부터 dx 혹은 dy중 보다 작은 값을 감산하고 언더플로우가 발생할 경우에는 dx 혹은 dy중 보다 큰 값을 다시 더해주는 방식으로 조건부 증가를 유발하는 연산 조건을 측정한다. 이 알고리즘은 실질적으로 나눗셈 연산을 이용하여 그레디언트를 계산한다 기호 "dx"는 그 라인이 대응하는 X 축 방향의 거리를 칭하고, X1 및 X2가 X 축상의 2 점인 경우 │(X1-X2)│로 주어지며, 수직 바(bar) 표시는 이들 차의 크기 또는 절대값을 의미한다. 따라서, 라인이 (X1, Y1)에서 (X2, Y2)로 그려질 경우, dx=│(X1-X2)│ 및 dy=│(Y1-Y2)│가 된다. 이들로부터, (위에서 "델타 1"로 지칭되는) D1은 dx 및 dy중 보다 큰 값으로 주어지며, (위에서 "델타 2"로 지칭되는) D2는 dx 및 dy중 보다 작은 값으로 주어진다. 다음에, 그려진 각각의 픽셀에 대해, D2는 초기에 D1/2로 세트된 작업값으로부터 감산되며, (언더플로우를 가리키는) 그 감산 결과의 부호는 스크린 어드레스 갱신의 조건부 부분에 대한 연산 조건이다. 이 언더플로우가 발생된 경우, D1의 원래 값은 작업값에 재가산된다. dx 대 dy의 비는 이러한 언더플로우 및 재가산이 발생하는 빈도를 나타낼 것이다. 이들 사이의 비는 물론 라인의 그레디언트이다.
라인 드로우를 생성하는데 사용되는 값은 이하와 같은 블리터 커맨드내에 세트되는데, 즉 라인의 시작점은 목적지 어드레스이고, D1은 소스 어드레스 레지스터의 비트 10 내지 19에 배치되며, D1/2는 비트 0 내지 9에 배치된다. 라인의 양끝점이 그려져야 될 경우, D1에 1을 더한 값이 사용되어야 하지만, D1은 또한 내부 카운터 값이 된다. D2는 목적지 스텝 레지스터에 배치된다. dx가 dy보다 클 경우, YFRAC 플래그는 세트되며, 그렇지 않을 경우 클리어된다. SSIGN은 X-어드레스 갱신의 부호를 제공하며, DSIGN은 Y-어드레스 갱신의 부호를 제공한다.
라인을 그리는 동안, 어드레스 섹션내의 모든 레지스터는 라인 어드레스를 계산하는데 할애되며, 따라서 블리터는 라인을 그리는 때 데이타를 소정의 장소로 부터 이동시킬 수 없다. 따라서, 라인 어드레스에 기록된 데이타는 패턴 데이타에 의해 직접 주어지거나 또는 논리 기능 유닛에 따라 패턴 레지스터 및 이미 거기에 존재하는 데이타의 조합에 의해 주어진다. 즉, SRCEN은 세트되지 않아야 하며, 그렇지 않을 경우 블리터는 아마 랜덤 데이타를 생성할 것이다. 라인을 그리는 동안, 내부 카운터는 라인의 길이로 세트되며, 외부 카운터는 1로 세트된다. 픽셀당 8 또는 그 이상의 비트 모드에서, 판독-변경-기록 동작을 위해 사용되지 않을 경우, DSTEN은 세트될 필요가 없다. 픽셀당 4-비트 모드에서, DSTEN은 목적지 판독이 다른 픽셀을 훼손시키지 않으면서 실행되도록 항상 세트된다.
블리터(72)는 또한 단일 동작으로 스크린상에 문자를 페인팅하는 능력을 갖는다. 블리터(72)에 관한 한, 한 문자 페인팅은 폭이 최고 8 픽셀이고 높이가 임의의 값인 직사각형 영역을 페인팅한다. 이 영역내의 픽셀은 비트 패턴에 따라 기록되거나, 변경되지 않고 남게 된다. 이 모드는 문자 페인팅으로 제한되지 않으나, 저장된 임의의 그래픽을 모노크롬 비트 플레인으로서 확장시키는데 또한 사용될 수 있다.
문자 페인팅 동안, 소스 레지스터는 통상적으로 폰트(font)의 일부인 비트 패턴을 어드레싱하는데, 여기서 각각의 바이트는 그 문자의 하나의 행(row)에 대응한다. 따라서, 블리터 폰트는 폭이 최고 8 픽셀이지만, 더 넓은 폰트가 사용될 수 있으며, 이 경우에는 문자를 페인팅하기 위해 1 이상의 블리터 페인트 동작을 요구할 것이다. 문자 페인팅은 근본적으로 시스템 메모리(45)에 위치한 문자 폰트로부터 목적지 어드레스로의 블럭 이동이다.
데이타는 최하위 비트내에서 가장 좌측의 픽셀에 대응하는 비트 및 가장 낮은 어드레스에서의 문자의 최상부에 따라 정렬된다. 데이타가 8 픽셀 폭보다 작을 경우, 폰트 데이타의 최하위 비트는 사용되지 않는다.
목적지 어드레스 레지스터는 문자가 페인팅될 스크린의 소정 영역을 어드레싱하는 데 사용된다. 통상적으로, 이 영역은 이전의 블리터 동작에 의해 필요한 배경 칼라로 클리어되었다. 목적지 어드레스는 문자의 상부 좌측 코너로 초기화된다. 페인팅될 문자는 직사각형이며, 따라서, 목적지 어드레스는 이에 따라 프로그래밍된다. 내부 카운터는 문자 폭으로 전송되며, 외부 카운터는 문자 높이로 전송된다. 목적지 스텝 레지스터는 문자 폭보다 적은 스크린 폭으로 세트된다. DSTUP 비트는 목적지 어드레스가 내부 루프를 통해 패스들 사이에서 갱신될 수 있게 하는 데 사용된다.
내부 루프 제어 비트 DSTEN 및 SRCENF는 세트되며, 문자 페인팅은 SRCENF의 존재에 대한 이유이다. 이에 의해, 각 행에 대한 폰트 바이트는 단지 한번 판독 될 수 있다. 비교기는 픽셀의 페인팅을 제어하는 데 사용되며, 따라서 바이트 확장 메카니즘에 대한 비트를 인에이블 시키기 위해, CMPBIT 제어 비트가 세트된다.
페인팅될 칼라는 패턴으로서 세트되며, 이는 통상적으로 패턴 데이타 레지스터내에 유지될 것이다. 4-비트 픽셀 모드에서, DSTEN은 세트될 것이고, 목적지 데이타 레지스터는 판독 값을 유지해서, 바이트의 다른 반이 방해받지 않고서 다시 기록될 수 있도록 해준다. 전술한 바와 같이, 소스 데이타 레지스터는 폰트 패턴을 유지한다.
블리터 순환 및 스케일링 모드는 세이딩(shading) ALU를 사용하나, 3 개의 DDA-기반 데이타 값을 생성하는 대신에, 이는 2 개의 DDA-기반 어드레스 값, 즉 X 및 Y 를 생성한다. 통상적으로, 이들 값은 임의의 각 및 레이트(rate)에서 소스 데이타 필드를 가로지르는 데 사용되어서, 목적지 데이타가 이들의 스케일링되고/되거나 순환된 버전에 대응하게 된다.
레드 값 발생기는 X 값을 제공하며, 그린 값 발생기는 Y 값을 제공한다. 블루 값 발생기는 사용되지 않으며, 명백히 셰이딩은 이 모드와 함께 사용될 수 없다. 순환이 셰이딩보다 더 높은 정확도를 요구할 때, 4 개의 여분의 정수 비트가 X 및 Y 값에 가산된다. 이들은 순환 레지스터에서 0 및 1로 설정된다. 모든 측정은 10 포인트 비트 정확도로 수행된다.
셰이딩함에 따라, 각 픽셀이 내부 루프에 그려진 후에, 델타 값은 X 및 Y 에 가산된다. 스텝 값은 외부 루프내에 가산되며, SRCUP 및 DSTUP 플래그는 이들이 가산되기 위해 설정되어야 한다. 델타 및 스텝 값은 포지티브 또는 네가티브이며, 셰이딩 모드에서와는 달리, 가산 또는 포화(saturation)가 발생되지 않는다.
통상적으로, 순환 및 스케일링은, 직사각형 목적지상에 통상적인 래스터 스캔을 수행하기 위해 목적지 어드레스 포인터를 세트시키므로서 수행되며, 소스 포인터는 적절한 그레디언트 및 레이트로 소스 데이타 위를 가로지른다. 이는 목적지 데이타가 연속적이며, 불필요한 블리트(블리터 동작)는 요구되지 않게 한다. 목표 영역이 직사각형이 아닐 경우, 소스 데이타는 적절한 투명한 칼라로 둘러싸여야 한다.
블리터 커맨드는 메모리내의 데이터의 테이블로서 주어진다. 블리터(72)는 레지스터에 테이블의 내용을 로딩시키며, 특정 동작을 수행한다. 블리터(72)는 커맨드 레지스터에 STOP 인스트럭션이 판독될 때까지 연속적인 커맨드 세트를 수신할 것이다.
블리터 프로그램 어드레스는 커맨드 워드가 송출되기 전에 설정되어야 한다. 블리터 프로그램 어드레스는 동시에 전체 24-비트 어드레스를 형성하는 프로그램 어드레스 레지스터에 의해 주어진다. 프로그램은 워드 경계상에 있어야 한다.
블리터 커맨드 데이타의 전체 테이블은 커맨드 워드로 시작된다. 그러나, 시퀀스에서의 제 1 블리터 커맨드은, CPU(48)의 I/O 사이클에 의해 커맨드 레지스터로 기록되는 커맨드 워드를 가지며, 따라서 블리터 커맨드는 제 2 워드로부터 커맨드 데이타를 판독하는 것부터 시작한다. 마찬가지로, 마지막 블리터 커맨드는 단지 실행 비트 클리어를 갖는 커맨드 워드로 구성되는 것만을 필요로 한다.
블리터 커맨드는 다수의 커맨드 비트 및 제어 비트, 24-비트 소스 어드레스, 24-비트 목적지 어드레스, 10-비트 외부 카운트 값, 10-비트 내부 카운트 값, 12-비트 부호화된 소스 스텝, 12-비트 부호화된 목적지 스텝, 15-비트 패턴 값의 형태를 취한다. SHADE 비트가 세트될 경우, 9 개의 부가적인 워드, 즉 레드, 그린, 블루 초기화 값(6 정수 비트 및 10 소수 비트), 레드, 그린, 블루 델타 값(동일), 레드, 그린 및 블루 스텝 값(동일)이 인출된다.
커맨드 비트는 이하와 같다. RUN 비트를 셋팅시키므로써, 블리터(72)가 동작을 개시하게 된다. 이는 I/O 포트로서 커맨드 레지스터에 기록할 때 블리터(72)로 하여금 커맨드를 판독하도록 개시시키는데 사용된다. 블리터(72)가 커맨드 판독의 일부로서 RUN 비트가 클리어된 커맨드를 로딩할 경우, 동작은 중지한다. COLST 비트를 셋팅시키므로써, 충돌(기록 금지)이 이렁날 경우 동작이 중지된다. 이 시점으로부터, 인쇄 동작은 CPU(48)에 의해 재개되거나, 취소될 수 있으며, 여러가지 내부 레지스터가 판독될 수 있다. PARRD 비트를 셋팅시키는 것은, 블리터(72)가 프로그램 카운터 어드레스로부터 새로운 파라미터 세트를 판독할 것을 요구하며, 매시간 내부 루프로부터 빠져나오며, 외부 루프는 제로에 도달하지 않는다. SRCUP 비트를 셋팅시키는 것은, 외부 카운트가 제로에 도달하지 않았을 경우, 스텝 레지스터의 내용이 내부 루프로부터 빠져 나오는 순간 소스 어드레스에 가산될 것이 요구된다. DSTUP 비트를 셋팅시키는 것은, 외부 카운트가 제로에 도달하지 않았을 경우, 스텝 레지스터의 내용이 내부 루프로부터 빠져나오는 순간 목적지 어드레스에 가산될 것이 요구된다. SRCEN 비트를 셋팅시키므로써, 내부 루프에서 소스 어드레스 판독이 가능하게 된다. 이는 또한 소스 어드레스 레지스터가 픽셀 사이즈에 따라 증가되도록 한다. DSTEN 비트를 셋팅시키므로써, 내부 루프에서의 목적지 어드레스 판독이 가능하게 된다. 이는 목적지 기록 사이클의 부분으로서 증가되는 목적지 어드레스 레지스터에 영향을 주지 않는다. SRCENF 비트를 셋팅시키므로써, 내부 루프가 처음에 진입될 때 소스 어드레스가 판독되지만, 순차적으로 진입되지 않는다. 전술한 바와 같이, 이는 SRCEN의 특별한 경우이며, 문자 페인트 모드와 관련된다. SRCENF는 SRCEN이 세트될 경우, 효력을 발생하지 않는다. 두 개의 비트 PSIZE0 및 PSIZE1는 각각 4, 8, 16, 32 비트에 대응하는 0 내지 3의 픽셀 사이즈를 선택한다. 전술한 바와 같이, 32-비트는 오직 32-비트 시스템에서의 데이타 이동만을 위한 것이다. 2-비트 WIDTHO와 WIDTH1은 바이트 단위로 각각 256, 512, 1024, 2048 바이트에 대응하는 0 내지 3의 스크린 폭을 선택한다. LINDR을 셋팅시키므로써, 블리터(72)는 라인 그리기 모드에 진입하게 된다. 이 모드는, 판독 및 기록 모두에 사용될 수 있는 라인-드로우 어드레스를 발생시키도록 소스와 목적지 어드레스 레지스터 모두를 사용한다. YFRAC 비트를 셋팅시키므로써, 블리터(72)에게 X 및 Y 어드레스중 어느 것이 라인 그리기 모드에서 비율적으로(fractionlly) 증가됨을 지시하게 된다. 이는 Y 어드레스가 비율적으로 증가될 때, 세트된다. PATSEL 비트를 셋팅시키므로써, 소스 데이타 레지스터가 논리 기능 유닛으로의 소스 입력으로 대체되도록 패턴 데이타 레지스터가 선택된다. 이 비트는, 소스 데이타 레지스터가 폰트(font) 데이타를 포함하고, 패턴 데이타 레지스터가 잉크(ink) 칼라를 포함할 경우, 문자 페인팅과 관련된다. 셰이드 비트를 셋팅시키므로써, 기록 데이타로서 셰이딩 ALU로부터의 출력이 가능하게 된다. 이 비트는 8- 및 16-비트 픽셀에서만 유효하다.
블리터(72)는 제어 비트의 여러가지 유형, 즉 소스 제어 비트, 목적지 제어 비트, 논리 기능 유닛 제어 비트, 비교기 제어 비트를 갖는다. 블리터(72)는 여러가지 소스 제어 비트를 갖는다. SWRAP 비트를 셋팅시키므로써, 메모리를 통해 선형적으로 실행되는 것과 상반되게, 소스 어드레스 갱신이 프로그램가능한 경게상에서 랩핑된다. 비트 SWRAP0와 SWRAP1은 각각 64K, 128K, 256K, 512K 스크린에 대응하는 0 내지 3으로 소스 어드레스 포인터가 수직으로 랩핑되도록 하는 SWRAP 함수의 사이즈를 제어한다. SRCCMP 비트를 셋팅시키므로써, 소스 데이타 레지스터가 비교기로 입력되는 소스로서 선택된다. SRCCMP 비트가 클리어될 경우, 패턴 데이타 레지스터가 사용된다. SLWRAP 레지스터를 셋팅함에 의해, 소스 포인터가 내부 루프 갱신에 대한 라인 폭내에 랩핑되게 한다. SSIGN 비트를 셋팅시키므로써, 소스 어드레스를 갱신할 때 사용되는 부호가 세트된다. 부호를 셋팅시키므로써, 소스 어드레스가 증가하는 대신 감소된다. 이 비트는 라인-드로잉에서 X가 네가티브가 되도록 한다.
블리터(72)는 또한 여러가지 목적지 제어 비트를 갖는다. DWRAP 비트를 셋팅시키므로써, 메모리를 통해 선형적으로 실행되는 것과 달리, 목적지 어드레스 갱신이 프로그램가능한 경계상에서 랩핑된다. 비트 DWRAP0 및 DWRAP1은 각각 64K, 128K, 256K, 512K 스크린에 대응하는 0 내지 3으로 소스 어드레스 포인터가 수직으로 랩핑되도록 하는 DWRAP 함수의 사이즈를 제어한다. DSTCMP 비트를 셋팅시키므로써, 소스 데이타 레지스터가 비교기로 입력되는 소스로서 선택한다. DSTCMP 비트가 클리어될 경우, 패턴 데이타 레지스터가 사용된다. DLWRAP 레지스터를 셋팅함에 의해, 소스 포인터는 내부 루프 갱신을 위한 라인 폭내에 랩핑되게 된다. DSIGN 비트를 셋팅시키므로써, 소스 어드레스를 갱신할 때 사용되는 부호가 세트된다. 부호를 셋팅시키므로써, 소스 어드레스가 증가하는 대신 감소된다. 이 비트는 라인-드로잉에서 Y를 네가티브가 되도록 한다.
블리터(72)는 또한 논리 기능 유닛 제어 비트를 갖는다. 논리 기능 유닛(LFU)은 목적지 기록 사이클에 기록되는 데이타를 제어한다. LFU는 소스 및 목적지 데이타의 임의의 논리 조합을 허용한다. 이는 민텀중 하나를 선택하는 LFU0 에서 LFU3까지의 LFU 비트 각각에 의해 달성되며, 그 출력은 선택된 텀의 논리 OR에 의해 주어진다. 0 값은 NOT 소스 및 NOT 목적지에 대응하고, 1은 NOT 소스 및 목적지에 대응하고, 2는 소스 및 NOT 목적지에 대응하며, 3은 소스 및 목적지에 대응한다. 따라서, 16 가지의 가능성이 존재한다.
블리터(72)는 또한 여러 가지 비교기 제어 비트를 갖는다. CMPPLN을 셋팅 시키므로써 플레인 모드가 인에이블되며, 플레인 모드에서는 전체 픽셀이 아닌 플레인 번호 비트 상에서 비교기 기능이 동작한다. CMPEQ 비트를 셋팅시키므로써, 플레인 모드에서 목적지 픽셀의 우선순위가 소스 픽셀의 플레인 우선순위와 동일하거나, 플레인 모드가 아닐 경우라고 전체 픽셀이 동일할 때, 비교기가 내부 루프 기록을 금지시키게 된다. CMPNE 비트를 셋팅시키므로써, 플레인 모드에서 목적지 픽셀의 우선순위가 소스 픽셀의 플레인 우선순위와 동일하지 않거나, 플레인 모드가 아닐 경우라고 전체 픽셀이 동일하지 않을 때, 비교기가 내부 루프 기록을 금지시키게 된다. CMPGT 비트를 셋팅시키므로써, 플레인 모드에서만 동작하게 되며, 목적지 픽셀의 플레인 우선순위가 소스 픽셀의 플레인 우선순위보다 클 경우, 비교기가 기록을 금지시키게 된다. CMPBIT를 셋팅시키므로써, 비트에서 바이트로의 확장 방안이 제공된다. 이는, 내부 카운터를 사용하여 소스 데이타 레지스터의 비트를 선택하고, 선택된 비트가 제로일 경우 금지를 발생시키므로써, 비교기가 금지를 발생시키게 된다. 내부 카운터에서 비트 0을 선택함으로써 8이 선택되며, 비트 1을 선택하며 7이 선택되고, 비트 2를 선택하면 6이 선택되는 등과 같이 된다.
프로그램 어드레스 레지스터는 블리팅 동작 커맨드의 소스를 지시한다. 데이타는 메모리를 통해 위쪽 방향으로 순차적으로 이로부터 판독된다. 이는 항상 짝수이어야 한다(즉, 블리터 동작은 워드 경계상에 있어야 한다). 레지스터 0는 어드레스 비트 0 내지 15에 대응하며, 레지스터 1은 어드레스 비트 16 내지 23 및 비트 0 내지 7에 대응한다.
전술한 블리터 레지스터중 일부는 CPU(48)의 I/O 공간에서 가시적이다. 또한, 몇몇 블리터 상태 및 제어 비트는 CPU(48)로 액세스가 가능하다. 전술한 바와 같이, 블리터(72)는 7 워드-폭 판독 레지스터 및 4 워드-폭 기록 레지스터를 갖는다. 기록 레지스터에서 사용되지 않은 임의의 비트는 0으로 기록되어야 한다. I/O 레지스터는 I/O 어드레스 40H로부터 시작하는 것으로 인식된다. 이들 레지스터는 또한 메모리 맵에서 이용가능하며, 주로 DSP(61)는 I/O로서 동일 오프셋에서, 그러나 베이스 어드레스 F10400H(즉, 메모리 어드레스를 얻기 위한 감산 40H 및 가산 F10400H)에서 출발하는 레지스터 등을 액세스할 수 있게 된다. 제 1 블리터 목적지 레지스터는 목적지 어드레스 레지스터의 비트 0 내지 15에 대응한다. 제 2 블리터 목적지 레지스터의 비트 0 내지 7은 목적지 어드레스 레지스터의 비트 16 내지 23에 대응한다. 제 2 블리터 목적지 레지스터의 비트 15는 목적지 어드레스의 레지스터의 목적지 어드레스 니블 부분에 대응한다. 제 1 블리터 소스 레지스터는 소스 어드레스 레지스터의 비트 0 내지 15에 대응한다. 제 2 블리터 소스 레지스터의 비트 0 내지 7은 소스 어드레스 레지스터의 비트 16 내지 23에 대응하며, 제 2 블리터 소스 레지스터의 비트 15는 소스 어드레스 니블 부분에 대응한다. 블리터 내부 카운터의 비트 0 내지 9는 내부 카운터 값에 대응한다. 블리터 외부 카운터의 비트 0 내지 9는 외부 카운터 값에 대응한다. 블리터 상태 레지스터는 여러가지 블리터 상태 정보를 제공한다. 비트 0은 비교기 플레인 우선 순위의 "보다 큰(greater than)" 조건이 만족함을 나타낸다. 비트 1은 비교기 플레인 우선순위의 "동일(equal)" 조건이 만족함을 나타낸다. 비트 2는 비교기 플레인 우선순위의 "동일하지 않음(not equal)" 조건이 만족함을 나타낸다. 비트 3은 비교기 픽셀의 "동일(equal)" 조건이 만족함을 나타낸다. 비트 4는 비교기 픽셀의 "동일하지 않음(not equal)" 조건이 만족함을 나타낸다. 비트 5는 비교기 비트 대 픽셀 조건이 만족됨을 나타낸다. 비트 13은 실행 비트에 해당하며, 블리터가 현재 동작중이거나, CPU 인터럽트 도는 충돌 중지에 의해 동작이 중지(suspend)된 것을 나타낸다. 비트 14는, 블리터가 CPU 인터럽트를 위해 정지(stop)했음을 나타낸다. 비트 15는, 블리터가 충돌 검출로 인해 정지했음을 나타낸다. 블리터 프로그램 어드레스 레지스터는 블리터 프로그램 어드레스의 비트 0 내지 15로 로딩된다. 레지스터의 비트 0은, 블리터 프로그램이 워드 경계상에 있어야 하기 때문에 항상 0임을 상기해야 한다. 제 2 블리터 프로그램 어드레스 레지스터는 비트 0 내지 비트 7에서 블리터 프로그램 어드레스의 비트 16 내지 23으로 로딩된다. 나머지 8 비트는 0이다. 블리터 커맨드 레지스터는 블리터 커맨드의 워드 0에 대응하며, 블리터가 개시될 때 커맨드를 설정하는데 사용된다. 그후, 블리터 DMA는 커맨드의 워드 1로부터 개시될 것이다.
블리터 제어 레지스터는 3 개의 비트를 갖는데, 인터럽트 정지 마스크인 비트 0은 세트될 때 블리터의 버스 제어 유닛으로부터 인터럽트를 마스킹하며, 이 결과 블리터는 인터럽트가 발생될 때 중지하지 않게 된다. 비트 1은, 충돌 후, 블리터가 동작을 재개하도록 하며, 충돌이 검출된 후 블리터를 재개시키는데 사용된다. 충돌은 COLST 비트가 세트될 때 검출됨을 상기해야 한다. 블리터는 중지된 동작을 재개할 것이다. 블리터가 충돌 정지 상태에 있을 동안 다른 것중 COLST 비트가 변화될 수 있도록, 블리터 커맨드 레지스터를 다시 프로그래밍하는 것이 가능하며, 비트 2는 충돌후에 블리터를 정지 상태로 리셋시키며, 충돌 정지가 발생했을 때 블리터가 수행했던 동작을 취소시키는데 사용됨을 주지해야 한다. 블리터 충돌 정지가 발생된 후, 재개시 또는 리셋이 블리터로 송출되어야 함을 주지해야 한다. 블리터(72)는 또한 3 개의 순환 레지스터를 갖는다. 비트 0 내지 3은 X 어드레스의 정수 부분의 상위 4 비트에 대응하며, 10-비트 값의 하위 6 비트는 레드 값의 정수 부분이다. 비트 4 내지 7은 X 증가의 정수 부분의 상위 4 비트이며, 이 10-비트 값의 하위 6 비트는 레드 정수 값의 정수 부분이다. 비트 8 내지 11은 X 스텝의 정수 부분의 상위 4 비트이며, 10-비트 값의 하위 6 비트는 레드 정수 값의 정수 부분이다. 제 2 순환 레지스터 비트 0 내지 3은 Y 어드레스의 정수 부분의 상위 4 비트에 대응하며, 이 10-비트 값의 하위 6 비트는 그린 정수 값의 정수 부분이다. 비트 4 내지 7은 Y 증가의 정수 부분의 상위 4 비트에 대응하며, 10-비트 값의 하위 6 비트는 그린 정수 값의 정수 부분이다. 비트 8 내지 11은 Y 스텝의 정수 부분의 상위 4 비트에 대응하며, 10-비트 값의 하위 6 비트는 그린 정수 값의 정수 부분이다. 제 3 순환 레지스터에서, 비트 0을 셋팅시키므로써, 순환 어드레스가 목적지를 대체하게 된다. 비트 1을 셋팅시키므로써, 순환 어드레스가 소스 어드레스를 대체하게 된다. 비트 2를 셋팅시키므로써, 셰이딩 모드와 상반되게, 순환 모드를 세트시킨다. 비트 10 내지 15는 순환 어드레스의 상위 비트에 대응한다.
DSP(61) 오디오 코프로세서는 고성능 뮤직 합성기를 실행시키기에 충분한 전력을 갖는 범용 연산 코프로세서이다. 동기 직렬 출력은 16 비트 정밀도를 갖는 스테레오 오디오 신호의 발생을 위해 제공되며, 통상적으로 콤팩트 디스크 기법과 통상적으로 관련된 사운드 음질을 제공한다. DSP(61)는 호스트 CPU(48)로부터 마이크로프로그램가능하며, 인스트럭션 세트는 "뮤직 합성기"의 기능과 상당히 상이한 많은 다른 기능을 채우기 위해 사용자가 장치를 프로그래밍할 수 있도록 충분히 플렉서블하다. 이러한 애플리케이션은 알고리즘 스피치 발생, 고속 퓨리에(Fourier) 변환 기법을 사용하는 오디오 분석, 3-차원 그래픽 순환을 포함할 수 있다. DSP(61)는 최대의 데이타 산출을 위해 하바드(Havard) 아키텍처(분리 프로그램 및 데이타 버스)를 사용한다. DSP(61)는 연산 논리 유닛(ALU)을 갖는다.
ALU는 가산, 감산, 논리 기능 뿐만 아니라 곱셈/누산을 행하는 하드웨어 16-비트×16-비트 하드웨어의 특징을 갖는다. 또한, 틱(tick)당 하나의 몫 비트를 발생하는 직렬 분할 유닛이 있다. 가산기/감산기로부터의 캐리(carry) 비트는 분리 래치에 저장되며, 다수의 정밀 연산 동작을 위해 캐리를 전송하는데 사용될 수 있거나, 조건부의 인스트럭션에 사용될 수 있다. 모든 인스트럭션은 이 비트의 세트 여부에 따라 종속적일 수 있다. 승산기/누산기내의 내부 트랜잭션을 제외한 장치내의 데이타 전송은 모두 16 비트 폭이다.
DSP(61)는 주로 사운드 합성을 위한 매우 간단하며, 매우 빠른 프로세서이나, 또한 전술한 바와 같은 다른 컴퓨터 작업을 수행할 수 있다. DSP(61)는 한 프로세서 사이클에 모든 인스트럭션을 수행하며, 이들 인스트럭션은 시스템 클럭 속도(전형적으로 20 내지 33 메가헤르쯔)로 실행된다. 사운드 합성 동안, DSP(61)는 오디오 디지탈-아날로그 컨버터(DAC) 인터페이스내의 타이머에 의해 제어되는 타이밍을 갖는다. 이들 DAC는 더블-버퍼링되며, DAC 기록이 오버플로우를 유발할 경우, 버퍼가 빌 때까지 동작이 중지된다. 샘플 속도로 소프트웨어가 루프를 실행하고, 평균 루프 타임이 샘플 주기보다 짧은 한, 임시 루프(occasional loop)가 두 배까지 될 수 있다. 루프는 프로그램 RAM에 공급되는 것보다 많은 인스트럭션을 포함할 수 있기 때문에, DSP(61)는 코드의 동일 부분이 여러 개의 음성으로 동작할 수 있게 하는 인덱스형 어드레싱 모드를 갖는다.
DSP(61)는 하바드 아키텍처 장치이며, 따라서 프로그램 RAM 및 데이타 RAM은 분리되며, 사이클은 동일 시간에 RAM 블럭 둘다에서 발생한다. 1-사이클 파이프 라인이 사용되며, 따라서 각 클럭 사이클 동안 두 개의 이벤트, 즉 인스트럭션이 인출되고, 이전의 인스트럭션과 연관된 데이타 전이가 발생된다. 이는 점프 이후의 인스트럭션이 실행되는 특이한 효과를 갖는다. DSP(61)는 전형적인 ALU 및 승산/누산 ALU의 두개의 연산 논리 유닛(ALU, 도시되지 않음)을 가지며, X 오퍼랜드 레지스터, 제 2 오퍼랜드 레지스터, ALU로부터의 결과를 포함하는 AZ 레지스터, 승산/가산 레지스터로부터의 결과를 포함하는 MZ 레지스터와 같은 여러 개의 레지스터를 갖는다. DSP(61)는 또한 DMA 채널 및 분할기를 갖는다.
DSP(61)의 동작은 매우 간단하다. 인스트럭션의 실행의 첫 번째 틱에서, 연산 코드(opcode)는 프로그램 RAM으로부터 인스트럭션 디코더로 판독된다. 두번째 틱에서, 다음 인스트럭션이 프로그램 RAM으로부터 판독되는 동안, 첫 번째 인스트럭션에 따라, 데이타 전송이 시스템 메모리(45)로부터 레지스터로, 또는 레지스터로부터 시스템 메모리(45)로 수행된다.
DSP(61)내의 ALU는 텍사스 인스트루먼트사(Texas Instruments)의 74181과 동일 기능을 갖는 16-비트 연산 논리 유닛이며, 이는 본 기술 분야에 잘 알려져 있다. 통상적인 연산 동작은 인스트럭션으로 인코딩되며, 통상적이지 않은 인스트럭션은 범용 연산 인스트럭션(GAI)을 갖는 ALU 모드 비트를 직접 설정하므로써 수행될 수 있다.
DSP(61)는 32 비트 결과를 제공하기 위해 16×16 부호화/비부호화 승산을 수행하기 위한 제 2 ALU인 승산기/누산기를 또한 갖는다. 이외에도, 승산의 출력이 이전의 결과에 가산될 경우, 이는 승산/누산 동작을 또한 수행할 수 있다. 결과는 오버플로우를 허용하기 위해 36 비트로 누산된다. 승산기 동작은, 승산 인스트럭션이 하나의 틱내로 완료한다 해도, 실질적으로 2 개의 틱을 취한다. 이는 승산 또는 승산 누산에 후속하는 인스트럭션이 MZ 레지스터 또는 X 레지스터를 포함하지 않음을 의미한다.
DSP(61)는 또한 제산기를 갖는다. 제산 유닛은 내부 DSP(61) 공간내의 레지스터의 세트로서 나타난다. 이는 16- 또는 32-비트 오퍼랜드상의 비부호 제산이 가능하며, 몫과 나머지를 제공한다.
DSP(61)는 또한 DMA 채널을 갖는다. DMA 채널은 DSP(61) 데이타 메모리 공간내의 레지스터 세트로서 나타난다. 이들은 두 개의 어드레스 레지스터 및 데이타 레지스터이다. 어드레스를 두 개의 어드레스 레지스터중 제 1 레지스터에 기록하므로써 DMA 전송이 개시된다. DMA 전송은 더 이상의 DMA를 수행하기 전에 경과될 수 있어야만 하는 대기시간 주기를 갖는다. DMA 상태 머신은 SYSTEM' 버스를 요구하여야 하는 책임이 있으며, SYSTEM' 버스가 허여될 때, 전송을 수행하고, 그 이후에 SYSTEM' 버스를 해제한다.
이와 달리, 워드는 홀드 비트가 세트된 상태에서 두 개의 어드레스 레지스터 중 제 2의 레지스터로 기록될 수 있다. 이는 SYSTEM' 버스를 요구할 것이며, 홀드 비트가 클리어될 때까지 이를 보유할 것이다. 이러한 DMA 전송은 연속적인 다중 전송을 수행할 때 효과적이나, DSP(61) 프로그램은 SYSTEM' 버스가 허여될 때를 결정할 수 없기 때문에 단일 전송에 대해서는 일반적으로 효과적이지 않으며, 따라서 가능한 최대 대기 시간을 기다려야 한다. DSP(61) 메모리는 DSP의 내부 데이타 어드레스 베이스 및 호스트 어드레스 베이스내에서 모두 일반적으로 볼 수 있다.
DSP(61)는 관련 DSP 메모리(76)를 갖는다. DSP 메모리(76)는 프로그램 RAM, 데이타 RAM, 레지스터/상수 테이블, 사인(sine) ROM(모두 도시되지 않음)을 포함한다. 일반적으로, DSP 메모리(76)는 시스템 메모리(45)의 어드레스 공간뿐만 아니라 DSP의 내부 어드레스 공간에서도 액세스가능하다. DSP 프로그램 RAM은 512 개의 18-비트 워드이다. 이들 로케이션은 CPU(48)에 의해서만 기록될 수 있으며, DSP(61)에 있어서는 프로그램 판독-전용이다. 프로그램 RAM은 DSP 내부 어드레스 공간에서 나타나지 않는다. 프로그램 RAM은 DSP(61)가 실행중일 때 호스트가 액세스할 수 없다. 각 DSP 인스트럭션은 7-비트 연산코드 및 11-비트 어드레스 벡터를 갖는다. (승산 또는 승산/누산 동작을 제외하고) 모든 마이크로코드화된 인스트럭션은 185 나노세컨드(nanosecond) 사이클에서 종료된다. 모든 인스트럭션은 시스템 메모리(45) 대 레지스터 전송 또는 레지스터 대 레지스터 전송이며, 수치의 직접적인 전송은 허용되지 않는다. 따라서, 주어진 인스트럭션에 대해 상수가 요구될 경우, 이는 상수 테이블에서 사용할 수 없고, 소정의 데이타 RAM 로케이션이 그 값에 할당되어야 한다. DSP(61)는 또한 조건부 인스트럭션 및 인덱스형 어드레싱을 허용한다. 인스트럭션 코드의 비트 12가 세트될 경우, 인스트럭션은 ALU의 캐리 비트가 또한 세트될 경우에만 실행된다. 인스트럭션 코드에서 비트 11이 세트될 경우, 인스트럭션 코드에서의 9-비트 어드레스 벡터는 인스트럭션에 의해 동작되고 있는 어드레스 및 데이타 메모리를 제공하기 위해 인덱스 레지스터에서의 9-비트 값에 가산된다. 추가 2 비트는 그 값을 추가 비트 레지스터로 로딩시킨 후 워드를 바람직한 로케이션에 기록하므로써 프로그래밍된다.
DSP(61)는 데이타를 메모리와 레지스터 사이로 이동시키는 많은 이동 커맨드를 갖는다. 가산, 감산, 논리곱, 논리합, 캐리부 가산(adding with carry), NOP, 전술한 GAI, DSP 메모리(76)로 하여금 CPU(48)에 의해 액세스되게 하는 INTRUDE 커맨드를 포함하여 그 밖의 다른 여러가지 커맨드가 이용가능하다.
사인 ROM은 256 개의 16 비트 워드이며, 전체 사인 파형의 2의 보수 사인 값을 포함한다.
데이타 RAM은 512 개의 16-비트 워드이다.
데이타 DSP(61) 또는 호스트 CPU(48)의 제어하에 CPU(48) 및 DSP(61) 사이에 전송될 수 있다.
DMA 전송 메카니즘은 SYSTEM' 버스상의 버스 마스터가 되어, 시스템 메모리(45)를 액세스하는 DSP(61)에 기초한다. DSP(61)는 가장 높은 우선순위를 갖는 버스 마스터중 하나이며, 따라서 현재의 버스 마스터가 SYSTEM' 버스를 포기할 수 있는 즉시 현재의 버스 마스터에 의해 SYSTEM' 버스를 허여받을 수 있다. SYSTEM' 버스를 포기하는 최악의 경우는 CPU(48)가 버스 마스터일 경우의 상황이며, 그 이유는 80376 또는 80386X 프로세서는 SYSTEM' 버스를 해제하는 데에 상당한 시간을 허비할 수 있기 때문이다. DMA 전송은 전술한 바와 같이 , 제 1 DMA 어드레스 레지스터에 기록하므로써 개시된다. 상태 정보 및 어드레스의 상위 부분의 전송은 제 2 DMA 어드레스 레지스터로 이미 기록되었으며, 마찬가지로 기록 데이타는 기록 전송의 경우에서 DMA 데이타 레지스터로 이미 기록되었다. 전송이 개시될 때, DSP(61)는 SYSTEM' 버스를 요구하며, SYSTEM' 버스가 DSP(61)에 허여될 때, DSP(61)는 전송을 수행한 후 SYSTEM' 버스를 해제한다. 이 동작의 종료는 폴링(polling) 될 수 있거나, 프로그래머는 최대 가능한 대기시간이 판독 데이타를 사용하고/하거나 다른 전송을 개시하기 전에 경과하도록 선택할 수 있다.
두 번째 버스 획득 기법은 SYSTEM' 버스를 요구하기 위해 두 개의 DMA 어드레스 레지스터중 제 2의 레지스터에서 홀드 비트를 사용하여 수행될 수 있다. 이는 DSP(61)가 다수의 전송을 연속적으로 수행하기를 원할 경우 더욱 효과적일 수 있는데, 그 이유는 SYSTEM' 버스가 전송사이에 해제되지 않기 때문이다. 제 2 DMA 어드레스 레지스터에서의 홀드 비트는, DSP(61)가 SYSTEM' 버스를 해제하기 전에 클리어되어야 한다. 이 메카니즘은 일반적으로 추천되지 않는데, 그 이유는 DSP(61)는 아무런 동작없이 상당한 시간동안 SYSTEM' 버스에 대한 제어를 갖고 있을 것이나, 이것은 전체적으로 메모리 버스 대역폭의 낭비이며 강제적으로 CD DMA 전송을 방해할 수 있기 때문이다. 두번째 기법을 사용할 경우, DSP(61)는 SYSTEM' 버스를 획득했다는 것을 검출할 수단을 가지고 있지 않으며, 따라서 최대수의 버스 인스트럭션 동안 기다려야 한다. DSP(61)가 SYSTEM' 버스의 소유권을 획득하면, 버스 사이클을 수행하도록 진행될 수 있다. DSP(61) 는 임의의 시퀀스의 판독 및/ 또는 기록 사이클을 수행할 수 있으며, 이들의 종료시 SYSTEM' 버스의 제어를 포기해야 한다.
데이타 전송은 호스트 CPU(48)의 제어하에 CPU(48)와 DSP(61) 사이에 또한 수행될 수 있다. DSP(61)의 모든 내부 메모리는 호스트 어드레스 공간으로 매핑된다. DSP(61)가 정지 모드에 있을 때, 호스트는 이들이 정상 시스템 메모리(45)에 있는 것처럼, 프로그램 메모리 로케이션에 기록할 수 있다. 그러나, DSP(61)가 동작중일 때, 프로그램 메모리는 호스트에 이용가능하지 않다. DSP(61) 데이타 메모리는 INTRUDE 메카니즘에 의해서만 이용가능하다. DSP(61)동작이 어떠한 방법으로든지 방해받지 않기 위해, DSP(61)가 INTRUDE 인스트럭션을 수행하고 있을때, 데이타 트랜잭션은 데이타에서만 계속 실행하는 것으로 생각할 수 있다.
DSP 프로그램 RAM(76)으로의 CPU(48)의 전송은 DSP(61)가 동작하지 않을 때만 블리터(72)를 사용하여 수행 될 수 있다. 마찬가지로, 블리터(72)는, DSP(61)가 실행되고 있는 동안에는 DSP 데이타 RAM을 액세스 할 수 없다. 요약하면, 블리커(72) 및 CPU(48)는 모두, DSP(61)가 INTRUDE 인스트럭션을 수행하고 있는 동안만 DSP 프로그램 RAM(72)을 변경시킬 수 있다.
DSP(61)는 블리터(72)로 하여금 시스템RAM 에서 DSP프로그램 RAM으로의 DSP의 매우 빠른 블럭 이동을 수행하게 한다. 따라서, DSP(61) 및 블리터(72)는 실질적으로 이용가능한 것보다 더 많은 프로그램 RAM을 DSP(61)에 효과적으로 제공하기 위해 협력한다.
DSP(61)는 또한 직렬 오디오 디지탈-아날로그 컨버터(DAC) 인터페이스를 갖는다. 직렬 DAC 인터페이스는 DSP(61)로 하여금 동기 직렬 ( I2S 또는 유사) DAC 둘다를 구동하도록 하며, CD 드라이브와 같은 동기 직렬 데이타 소스로부터의 데이타를 입력하도록 한다. 인터페이스 타이밍은, 입력 장치가 부착되지 않을 경우 내부적으로 발생될 수 있지만, 데이타 소스가 존재할 경우에는 이것이 타이밍을 결정하는데 사용되어야 한다. 내부 오버플로우 검출기는, 이전의 출력 데이타가 충분히 출력되기 전에, DSP(61)로 하여금 DAC로 기록하는 것을 못하게 한다. 이는 두개의 DAC레지스터중 제 1 레지스터에 대한 기록에 의해 통제된다. 따라서, DAC 전송은 제 1 DAC 레지스터로의 기록, 제 2 DAC 레지스터로의 기록, 판독 입력값과 같은 형태를 취해야 한다. 이들은 (16 인스트럭션 미만으로) 연속적으로 수행되어야 한다. 언더 플로우의 검출은 존재하지 않으며, 이것이 발생될 경우, 이전의 출력 값은 다시 출력되어야 한다. DAC 값은 더블 버퍼링되어서, 오디오 코드가 샘플 주기보다 작거나 동일한 평균 비율로 루핑되어도, 두 개의 샘플 주기까지 취하기 위해 임시적으로 루프를 통과하는 것은 가능하다. 이는 예외 프로세싱에 대해 유용하다.
DSP(61)는 텍사스 인스트루먼트사의 74181 장치와 호환성이 있는 연산 로직유닛(ALU)을 포함한다.
비디오 프로세서(39)는 또한 콤팩트 디스크 DMA 제어기(54)를 갖는다. 이 CD 제어기는 (I2S 등을 위한) 단순한 동기 직렬 인터페이스, CD ROM 블럭 디코더, DMA 채널과 같은 기능 블럭을 포함한다. 이 메카니즘은 직렬 데이타 스트림으로 하여금 직접, 또는 처음에 블럭 디코더를 토하므로써 시스템 메모리(45)로 전송되게 한다. 이는, 내부 블럭 디코더에 문제 혹은 작동 불능이 발생한 경우, 외부블럭 디코더가 사용될 수 있게 해준다. 전송 길이 카운터가 제로에 도달해서 전송이 완료되면 인터럽트가 발생될 수 있다.
콤팩트 디스크 제어기 동기 직렬 인터페이스는 본 기술 분야에 잘 알려진 필립스 데이타 포맷을 지원한다. 필립스 데이타 포맷은 클럭, 워드 선택, 라인, 데이타 라인을 갖는다. 워드 선택은 클럭의 하나의 틱에 의해 데이타를 추출하며, 데이타는 32-비트 데이타의 최상위 비트(MSB)와 반대로 정렬된다. 워드 선택 라인의 하부는 좌측 데이타를 가리키며, 워드 선택 라인의 상부는 우측 데이타를 가리킨다. 동기 직렬 인터페이스는 또한 필립스 블럭 디코더 출력 정형을 지원한다. 비트 순서는 바뀌며, 제 1 비트는 데이타의 제 1 비트와 반대로 정렬된다. 워드 선택 포맷은 필립스 데이타 포맷, 소니(Sony) 데이타 포맷, 또는 마쓰시타(Matsushita) 데이타 포맷일 수 있다.
CD 드라이브 제어기(54)는 또한 블럭 디코더를 갖는다. 블럭 디코더는 2352-바이트 섹터의 개시와 동기되고, 디스크램블링(descrambling)을 수행하며, 에러를 검출하기 위해 EDC(에러 검출 코드)를 측정한다. 이는 2048 데이타 바이트가 헤더후에 전송되는 경우 큰 모드에서 동작하거나, 동기 패턴 후에 2340 바이트가 전송되는 경우 장 모드에서 동작한다. 이는 헤더 및 에러 정정 데이타로 하여금 소망될 경우 판독되게 한다. 헤더 사이즈는 CD 드라이브 모드 1 및 CDI/XA 모드 2 형태 1을 지원하기 위해 4 또는 12 바이트로 프로그램가능하나, 헤더 매칭은 메인 4-바이트 헤더에서만 수행된다. 모드 2 형태는 장 모드에서 동작하고, 요구된 데이타를 추출하므로써 지원될 수 있다. 헤더 매칭은 정정 데이타가 판독되도록 하기 위해 전송의 제 1 섹터에서 수행된다. 바람직한 헤더 값은 헤더 레지스터로 프로그래밍되어야 한다. 멀티섹터 전송이 수행될 경우, 제 1 섹터후에 더이상의 매칭이 발생되지 않는다.
전형적으로, 통상적인 전동은 단 모드에서 수행되며, 에러가 검출될 때 장모드가 사용되어서, 오퍼레이팅 소프트웨어는 이를 정정할 수 있게 된다. 다중섹터 전송은 전송될 장 워드의 전체 수의 카운트를 제공하므로써 지원된다. 에러가 발생되면 다중 섹터 전송이 중지될 것이다. 에러는 신뢰할 수 없는 데이타, EDC 에러, 및 동기하지 않음의 형태를 취할 수 있다. 현재의 상태를 결정하기 위해 디코더를 폴링하는 것이 가능하다. CD 드라이브 제어기(54)는 또한 DMA 인터페이스를 갖는다. DMA인터페이스는 한번에 2개의 16-비트 워드를 시스템 메모리 (45)로 전송할 수 있다. 이는 내부 블럭 디코더로부터의 출력 또는 동기 직렬 인터페이스로부터의 출력을 취할 수 있다. 이는 시스템 메모리(45)를 통해 증가되게 동작하는 어드레스 카운터를 갖는다. DMA 인터페이스는 직렬 인터페이스로 부터의 직접 전송을 위한 전송 길이 카운터를 갖는다. "포레버(forever) 모드"에서, DMA 어드레스 레지스터는 32 킬로바이트 버퍼내에서 랩핑하며, 카운터는 무시된다. 이는 CD 오디오 데이타, 또는 실시간 및 "폴-모션(full-motion) 비디오"압축 복원과 같은 데이타 조정에서 이용가능할 수 있다. CPU(48) 인터럽트는 매시간 발생되며, 어드레스 포인터는 버퍼 주위를 랩핑한다.
마찬가지로, 본 발명에서, 텔레비전 수신기의 부속품으로서 사용되는 셋 탑 장치에 지금가지 제공된 많은 특성은 본 명세서에서 지능 텔레비전 수신기로 지칭되는 것에 직접 합체될 수 있다. 이러한 지능 텔레비전 수신기중 하나는 도 6에 도시되며, 여기서 참조 부호 10'로 식별된다. 도 3 내지 도 5를 참조로 전술된 회로는, 본 명세서에서 기술된 바와 같이, 수신기가 원격 제어 장치(20)에 응답하고, 이와 협력되도록 하기 위해, 지능 수신기(10')의 하우징 또는 캐비넷(11')내에 합체될 수 있다. 이러한 회로는 이미 상세히 설명하였으므로, 이하 더 이상 반복 하지 않기로 한다.
마찬가지로, 본 발명에서, 이들 발명의 이점이 개인용 컴퓨터 시스템의 사용을 통해 획득될 수 있음이 고려된다. 이러한 개인용 컴퓨터 시스템중 하나가 도 7에 도시되어 있다.
첨부한 도 7 내지 도 9를 참조로 하면, 본 발명을 구현하는 개인용 컴퓨터시스템이 도시되어 있으며, 이는 일반적으로 참조 부호 90으로 지시된다(도 7). 컴퓨터(90)는 관련 모니터(91), 키보드(92), 프린터 또는 플로터(plotter)(94)를 구비할 수 있다. 모니터(91)는 시각 이미지를 사용자에게 디스플레이하는 디스플레이 장치로서 동작하며, 도 1 및 도 6에 도시된 텔레비전 수신기의 CRT(12, 12')와 유사하다. 도 8 에 도시된 바와 같이, 컴퓨터(90)는 전기적으로 전원이 공급되는 데이타 프로세싱 및 저장 소자를 수신하고, 디지탈 데이타를 프로세싱하며, 저장하기 위한 페쇄되고, 봉합된 볼륨을 한정하고 있는 섀시(98)와 협력하는 커버(96)를 갖는다. 적어도, 소저의 이들 소자는 다중층 플레이너(100), 또는 섀시(98)상에 장착되고, 위에서 설명한 것과, 플로피 디스크 드라이브, 직접 액세스 저장 장치의 여러가지 형태, 부속 카드 또는 보드, 등등과 같은 것을 포함하는 컴퓨터(90)의 소자를 전기적으로 상호접속시키기 위한 수단을 제공하는 마더보드상에 장착된다.
섀시 (98)는 베이스 및 후부 패널(도 8)을 가지며, 마그네틱 또는 광 디스크를 위한 디스크 드라이브, 테이프 백업(backup) 드라이브 등과 같은 데이타 저장장치를 수신하기 위한 적어도 하나의 개방 베이(bay)를 정의한다. 도시된 형태에서, 상부 베이(101)는 (3.5인치 드라이브와 같은) 제 1 사이즈의 주변장치 드라이브를 수신하도록 채택된다. 제거기능한 매체에 대한 직접 액세스 정장 장치인 플로피 디스크 드라이브는 삽입된 디스켓을 수납할 수 있고, 일반적으로 알려진 바와 같은 데이타를 수신, 저장, 전송하기 위해 디스켓을 사용할 수 있으며, 상부 베이(101)에 제공될 수 있다.
전술한 구조를 본 발명에 연관시키기 전에, 개인용 컴퓨터 시스템(90)의 일반적인 동작의 용약을 재검토하는 것이 바람직하다. 도 9를 참조하면, 본 발명에 따른 시스템(90)과 같은 컴퓨터 시스템의 여러가지 소자를 도시하는 개인용 컴퓨터 시스템의 블럭도가 도시되어 있으며, 플레이너(100)에 장착된 소자 및 플레이너를 I/O 슬롯과 개인용 컴퓨터 시스템의 다른 하드웨어에 접속시키는 커넥션을 포함한다. 시스템 프로세서(102)가 플레이너에 접속된다. 임의의 적절한 마이크로프로세서가 CPU(102)로 사용될 수 있지만, 적절한 마이크로프로세서중 하나는 INTEL에 의해 판매되는 80386이다. CPU(102)는 고속의 CPU 로컬 버스(104)에 의해 , 버스 인터페이스 제어 유닛(105), 본 명세서에서 단일 인라인 메로리 모듈(Single Inline Memory Module, SIMM)로 나타낸 휘발성 랜덤 액세스 메모리(RAM)(106), CPU(102)에 대한 기초적인 입/출력 동작을 위한 인스트럭션이 저장되는 BIOS ROM에 접속된다. BIOS ROM(108)은 I/O 장치 및 마이크로프로세서(102)의 오퍼레이팅 시스템간의 인터페이스에 사용되는 BIOS를 포함한다. ROM(108)에 저장되는 인스트럭션은 BIOS의 실행시간을 감소시키기 위해 RAM(106)으로 복사될 수 있다.
본 발명이 이하 특별히 도 9의 시스템 블럭도를 참조로 하여 설명되지만 , 상세한 설명의 처음부분에서, 본 발명에 따른 장치 및 방법은 플레이너 보드의 다른 하드웨어 구성과 함께 사용되는 것을 고려하는 것은 당연하다. 예를 들면, 시스템 프로세서는 인텔 80376 또는 80486 마이크로프로세서일 수 있다.
도 9를 참조하면, (데이타 , 어드레스 및 제어 소자를 포함하는) CPU 로컬 버스(104)는 또한 마이크로프로세서(102)의 접속을 위해 수치 코프로세서(109) 및 SCSI( Small Computer Systems Interface, 소형 컴퓨터 시스템 인터페이스)제어기(110)를 제공한다. 컴퓨터 설계 및 동작의 분야에 통상의 지식을 가진 자에게 잘 알려진 바와 같이, SCSI 제어기(110)는 ROM(111), RAM(112), 도면에서 정확히 지시되는 I/O 접속에 의해 유용화되는 것과 같은 여러가지 타입의 적절한 외부 장치에 접속되거나, 접속가능하다. SCSI 제어기(110)는 (하드 및 플로피 디스크 드라이브로 잘 알려진) 고정되거나 제거가능한 매체에 대한 전자기 저장 장치, 전기 광학, 테이프, 그 밖의 다른 저장 장치와 같은 저장 메모리 장치를 제어하는 저장 제어기로서 동작한다.
버스 인터페이스 제어기(BIC)(105)는 CPU 로컬 버스(104)에 I/O 버스(114)를 결합시킨다. 버스(114)에 의해, BIC(105)는 ISA(Industry Standard Architecture, 산업 표준 구조), 마이크로 채널(MICRO CHANNEL), EISA, PCI, 또는 I/O 장치 또는 메모리(도시되지 않음)에 또한 접속될 수 있는 어댑터 카드(115)를 수신하기 위한 다수의 I/O 슬롯을 갖는 그 밖의 버스와 같은 선택에 의한 기능 버스에 결합된다. I/O 버스(114)는 어드레스, 데이타, 제어 소자를 포함한다.(118로 지시되는) 그래픽 정보를 저장하고, (119로 지시되는) 이미지 정보를 저장하기 위한 비디오 RAM(VRAM)과 연관된 비디오 신호 처리기(116)와 같은 여러가지 I/O 소자가 I/O 버스(114)를 따라 결합된다. 프로세서(116)와 상호교환되는 비디오 신호는 디지탈 대 아날로그 컨버터(DAC)(120)를 통해 모니터 또는 그 밖의 다른 디스플레이 장치로 입력될 수 있다. 비디오 레코더/플레이어, 카메라 등의 형태를 취할 수 있는, 자연 이미지 입력/출력으로 본 명세서에서 언급되는 것과 VSP(116)가 직접적으로 접속된다. VSP는 비디오 프로세서(39)및 도 3 내지 도 5를 참조로 전술한 관련 회로의 형태를 취할 수 있으며, 여기서 CPU(102)는 전술한 CPU(48)와 유사한 비디오 제어로서 동작될 수 있다.
I/O 버스(114)는 DSP(121)에 의해 신호를 프로세싱하기 위한 소프트웨어 인스트럭션 및 이러한 프로세싱에 포함된 데이타를 저장하는데 유용한 관련 인스트럭션 RAM(122)및 데이타 RAM(124)을 갖는 디지탈 신호 처리기(DSP)에 또한 결합된다. DSP(121)는 오디오 제어기(125)의 제공으로 인해 오디오 입력 및 출력을 프로세싱하며, 아날로그 인터페이스 제어기(126)의 제공을 통해 다른 신호를 처리한다.
마지막으로, I/O 버스(114)는 관련 전기적으로 소거가능한 프로그래머블 판독 전용 메모리(EEPROM)(129)를 갖는 입력/출력 제어기(128)와 결합되며, 이로 인해 입력 및 출력은 플로피 디스크 드라이브, 프린터(94), 키보드(92), 장치(20)와 같은 원격 제어를 포함하는 마우스 또는 포인팅 장치, 직렬 포트 수단을 포함하는 종래의 주변장치와 상호교환된다. 이하에서 설명된 형태에서 포인팅 장치는 길고 유연한 전도체(131)에 의해 컴퓨터 시스템에 접속되는 마우스(130)의 형태를 취한다.
모든 경우에서, 이들 발명을 실시하는 개인용 컴퓨터 시스템은 원격 제어 장치를 가질 것이다. 이러한 시스템에서, "원격" 제어는 연관된 비디오 디스플레이 장치로부터 다소 떨어진 거리에서 사용가능한 원격 제어 장치에 의해 특징지워진다. 이 떨어진 거리는, 이하의 설명으로부터 더 명백해지는 바와 같이, 인치(inches)의 스케일과 같이 매우 작을 수도 있으며, 피트(feets), 미터, 야드 또는 그 이상의 스케일과 같이 비교적 클 수도 있다.
전술한 바와 같이, 원격 제어 장치는 3 축 장치 또는, 몇몇 경우에서, 2 축 장치 일 수 있다. 이하의 설명으로부터 더 명백해지는 바와 같이, 이 두 개의 장치는 구별되며, 상호교환이 불가능하다. 본 명세서에서 사용된 전문 용어인 "3 축"에서, 사용자가 관련 비디오 디스플레이 장치상에 디스플레이되는 시각 이미지의 변경을 지시하는데 효과적일 수 있는 제어 신호를 발생시키기 위해 3 차원에서 제어 엘리먼트를 조작할 수 있다. "2 축" 장치는 2 차원에서만 작동될 수 있다.
3 축 장치는 "눌러서 선택"으로 설명되었던 유형의 동작을 허용한다. 즉, 제어 엘리먼트의 조작은 커서와 같은 선택 디스플레이 엘리먼트의 이동을, 디스플레이된 시각 이미지의 필드를 통해 측면에서 측면으로, 위에서 아래로 직접 지시할수 있으며, 그 후 디스플레이 특성을 또 선택하기 위해 사용된다. 예를 들어, 사이드간의 이동은 한쪽 측면 또는 다른 측면에 대한 엄지 손가락 압력(thumb pressure)과 연관되고, 조작기로부터 멀어지거나 조작기로 향하는 압력과 상하로 연관될 수 있다. 그 후, 선택은 제어 엘리먼트에 대하여 아래 방향으로 누르므로써, 제 3 축을 따라 엄지 손가락(thumb) 누름에 결합된다. 종래의 예는 1991년 11 월 12일에 허여된 가렛(Garrett)의 미국 특허 제 5,065,146 호에 개시되어 있다.
이와 달리, 두 개의 축 장치는, 전형적으로 섹션에 대한 분리 제어 엘리먼트를 제공한다. 예는 마우스로 알려진 것과 같은 종래의 퍼스널 컴퓨터 포인팅 장치와, 텔레비젼 수신기, 비디오 카셋트 레코더, 오디오 증폭기, 콤팩트 디스크 플레이어, 비디오 디스크 플레이어 등과 같은 사용자 전자 장치에 전형적으로 설치된 종래의 원격 제어 장치에서 발견될 수 있다. 이들 예에서, 하나의 제어 엘리먼트(업-다운 또는 왼쪽-오른쪽 로커(rockre) 스위치의 경우에서 롤링 볼(rolling ball) 또는 종래의 원격 제어의 경우에서 스테핑 키(stepping keys))는 디스플레이 된 비디오 이미지를 가로질러, 강조된 밴드와 같은 선택 디스플레이 엘리먼트의 직접적인 이동일 수 있으며, 그 후 제 2 제어 엘리먼트(마우스의 경우, 버튼이며, 종래의 원격 제어의 경우 푸시 스위치)는 디스플레이 특성의 선택을 위해 작동된다.
원격 제어 장치의 두 가지 타입은 무엇보다도 상호교환가능하다.
원격 제어 장치의 두 가지 유형의 각각은 사용자에 의해 원격 엘리먼트의 조작으로 사전설정된 방식으로 구축된 커맨드 신호를 전송할 수 있는 것과 같은 본발명에 의해 고려된다. 각각은, 사용자가 볼 수 없는 주파수에서, 또는 무선 주파수에서의 빛의 파장(적외선 또는 자외선)를 포함하는 여러가지 방식으로 사용자에 의한 직접 센싱되는 주파수 범위 밖의 주파수에서 전송하기 위해 디스플레이 제어기에 결합될 수 있다. 각각은, 퍼스널 컴퓨터 포인팅 장치에서의 통상적인 경우처럼, 플렉서블 전도체에 의해 결합될 수 있다.
사용자에 의해 작동 가능한 제어 엘리먼트는 여러가지 형태로 고려된다. 하나는, 전술한 바와 같이, "위글 스틱"으로 알려질 수 있으며, 사용자의 엄지 손가락으로 사용하기 위해 곧바로 서 있는 길고 가는 엘리먼트의 형태를 취할 수 있다. 다른 하나는 비교적 자유롭게 중앙 포인트 부근의 피봇에 장착되며, 스프링과 같은 탄력적인 바이어스에 의해 중간 위치에서 전형적으로 유지되는 전형적으로 둥근 구성을 갖는 다소 편평하며, 평면 또는 앝은 접시형(dished)의 부재인 "워블 플레이트(wobble plate)"일 수 있으며, 이는 적어도 4 개의 선택된 방향중 임의의 하나에서 사용자의 엄지 손가락에 의해 눌려질 수 있다. 그러나, 다른 것은 인버팅된 퍼스널 컴퓨터 시스템 마우스와 다소 유사한 트랙볼일 수 있으며, 여기서 신호가 마운트의 볼의 회전을 가리키며 발생되는 것을 가능하게 하는 방식으로 자유롭게 회전가능한 엘리먼트 또는 볼이 제공되며, 지원된다. 또다른 것은, 관성 또는 "에어(air)" 마우스일 수 있다. 이러한 장치는 전형적으로, 공간에서 마우스의 이동을 지시하는 신호를 발생할 수 있는 관성 플렛폼 및 센서를 갖는다.
본 발명은, (오퍼레이팅 시스템 및 애플리케이션 프로그랜을 포함하는) 제어 프로그램이 시스템 RAM(45) 또는 플레시 ROM(49)에 저장되며, 디스플레이 제어기에서 실행될 것을 고려한다. 본 발명에 따라, 이러한 제어 프로그램은 이하 설명될 콤팩트한 프로그래밍 언어를 특별히 사용한다. 이하 설명될 언어 및 프로그래밍은 메모리 비용이 판매가의 중요한 요소를 차지하는 사용자 제품에 제공되어야 할 메모리의 양을 제한하는데 특히 유용하다. 그러나, 보다 덜 콤팩트한 프로그래밍 언어 및 이에 따른 제어 프로그램이, (고정된 디스크 직접 액세스 저장 장치의 하드파일(hardfile)의 포함을 포함하는 것까지의) 부가적인 메모리의 용량의 비용이 발생될 수 있을 경우 유용할 수 있음을 주지해야 한다.
본 명세서에 개시된 컴퓨팅 시스템은 "개방(open)", 즉 현재 정의되지 않은 미래의 애플리케이션을 가동시킬 시스템이다. 시스템은 애플리케이션에 대한 제한된 장치를 갖는다. 따라서, 시스템상에서 가동되는 애플리케이션의 사이즈를 최소화하여 작은 양으로 저장될 수 있는 것이 중요하다.
두 작업은 애플리케이션 소프트웨어의 사이즈를 더욱 늘어나게 할 수 있다. 하나는 (본 명세서에서 UI로 식별되는) 사용자 인터페이스이다. 이러한 소프트웨어 부분은, 디스플레이, 스피커, 키보드, 또는 마우스와 같이, 사용자와 상호작용하는 하드웨어를 구동시킨다. 다른 하나는 다른 시스템으로부터의 자신의 저장 장치 및 정보로부터의 정보로의 시스템 액세스인 (본 명세서에서 EI로 식별되는) 외부 인터페이스이다. 이러한 소프트웨어 부분은 디스크 드라이브 또는 모뎀과 같은 하드웨어를 구동시킨다.
애플리케이션 프로그램 데이타의 사이즈를 감소시키는 제 1 단계는 사용자 인터페이스 및 외부 인터페이스에 대한 소프트웨어를 애플리케이션으로부터 제거하는 것이다. 본 발명은, 이들 두 작업에 대한 소프트웨어가 애플리케이션이 아닌 시스템내에 구축되기를 기대한다. 도 10을 참조하면, 제 1 박스 사용자 인터페이스(UI) 하드웨어(디스플레이, 키보드, 등)가 도면의 상부에 도시된다. 제 2 박스 UI 엔진은 사용자 인터페이스를 핸들링하는 시스템 ROM 내의 영구적인 소프트웨어이다. 예를 들면, UI 엔진(제 2 박스)은 (제 3 박스에서의) 애플리케이션의 요구에 따라 스크린(제 1 박스의 파트)상에 정보를 디스플레이할 수 있다. 사운드, 키보드 활동, 그 밖의 다른 사용자 입력/출력은 UI 엔진에 의해 핸들링될 수 있다. UI 엔진이 UI 하드웨어 및 애플리케이션과 함께 상호작용함을 나타내는 화살표를 주시해야 한다. 본 발명에 의해 달성되는 하나의 목적은 UI 엔진을 작게 만들어서, 더 작은 시스템 ROM을 필요로 하게 하는 것이다. 제 3 박스 도면의 중간에 있는 흐린 박스는 애플리케이션 프로그램 데이타 저장 장치를 나타낸다. 애플리케이션은 (판독가능하며, 기록가능한) 시스템 RAM에 저장되어서, 애플리케이션이 부가되며, 제거되거나, 변경될 수 있게 한다. 본 발명에 의해 달성되는 하나의 목적은 어플리케이션을 작게 만들어서, 더 많은 애플리케이션이 주어진 저장 공간에 알맞게 저장되게 하는 것이다. 도 10에서, 애플리케이션의 사이즈는 잠재적으로 감소되는데, 그 이유는 사용자 인터페이스 및 인터페이스가 애플리케이션의 외부에서 처리되기 때문이다. 제 4 박스 EI 루틴은 또한, 시스템 ROM에서 영구 소프트웨어이며, 이들 루틴은 외부 인터페이스 하드웨어를 처리한다. 예를 들면, EI 루틴은 애플리케이션의 요구에 따라 모뎀상에서 전화 번호를 다이얼링할 수 있다. (몇몇 EI 루틴은 ROM 대신에 RAM내에 있으며, 따라서 부가적인 하드웨어 지원이 앞으로 부가될 수 있다.) 제 5 박스 외부 인터페이스(EI) 하드웨어(디스크 드라이브, 모뎀, 등)가 도면의 하부에 도시된다.
이와 같은 구성을 다른 컴퓨터 시스템에서도 찾을 수 있다. 예를 들면, DOS 오퍼레이팅 시스템은 모든 애플리케이션에 대해 화일(file) 입력/출력 기능을 전역적으로(global) 만들며, 이들은 EI 루틴이다. 마이크로 윈도우 환경은 모든 애플리케이션에 대한 공통 UI를 제공한다. 그러나, 이들 시스템의 주요 목적은 공간을 절약하는 것이 아니라, 애플리케이션을 표준에 일치시키도록 하는 것이다.
본 발명은 "레벨"에 기초한 사용자 인터페이스를 제공한다. 주어진 레벨에서, 사용자는 정보를 보며, 선택을 한다. 이 선택은 현재의 레벨 이하의 새로운 레벨을 생성하도록 유발할 수 있으며, 또는 이 선택은 현재의 레벨이 파괴되도록 하여서, 이전의 레벨로 돌아가게 할 수 있다,
바람직한 실시예에서, 사용자 인터페이스에서의 각 레벨은 스크린상에 그려진 페이퍼 인덱스 카드와 유사한 그래픽 및 텍스트 디스플레이에 의해 나타난다. 페이퍼의조각("메뉴 카드")은 도 12에 도시된 바와 같이, 스크린상에 캐스케이드 된다. 도시된 바와 같이, 사용자는 현재 레벨 2에 있다. 레벨 2로의 이동은 도 10, 11, 12에 의해 도시되는 시퀀스와 관련된다. 도 10으로부터, 텔레비전 방송과 같은 비디오/오디오 스트림 소스로부터 수신된 바와 같은 풀 모션 비디오 이미지의 디스플레이에서, 사용자는, 원격 제어 장치(20)상에 제공된 선택 기능을 작동 하므로써, 비디오 스트림상에 중첩되게 제 1 레벨의 메뉴를 나타나게 할 수 있다. 따라서, 사용자는, "날씨"에 대한 아이템 1과 같은, 지시된 아이템상에 커서 또는 포인터가 위치되도록 작동할 수 있으며, 또한 원격 제어 장치(20)의 선택 기능을 동작시킬 수 있다. 그 결과, 사용자 인터페이스는, 도 12에 도시된 바와 같이, 다음 레벨, 레벨 2를 생성하므로써 응답할 것이다. 비디오/오디오 스트림 이미지만으로의 복귀는 이미지의 필드내에 커서/포인터를 위치시키고, 앞면 "정보 하이웨이"위의 커서를 위치시켜서 메뉴 레벨 1로 처음에 복귀하므로써 선택 기능 또는 단계 이동을 동작시키며, 원격 제어의 선택 기능을 동작시키므로써 실행될 수 있다.
이는 사용자 인터페이스의 단순한 예이며, 전형적인 상황은 좀 더 복잡하다. 예를 들면, 몇몇 메뉴 카드는 정보만을 제공하며, 정보를 본 후 이전의 레벨로 빠져나가는 것을 제외하고는 임의의 동작을 허용하지 않는다. 그 밖의 다른 메뉴카드는 아이템의 조합의 선택을 허용한다. 사용자 인터페이스는 이들 및 그 밖의 다른 유형의 메뉴를 지원한다. 임의의 메뉴는 (도 12에서 도시된 카드의 하부 오른쪽 구석에서 "페이지 넘김(turn the page)"에 의해 지시되는 바와 같이) 하나 이상의 페이지를 가지며, 페이지를 넘기는 것은 다른 레벨로의 이동을 의미하진 않는다.
본 발명에 따르면, 레벨에 기초한 UI 엔진에서, 각 레벨은 메뉴 객체 또는 플로우 객체이다. 이들 객체의 두가지 유형은 바람직한 실시예에서 "카드"로 칭해진다.
1. "메뉴 카드"는 UI 레벨을 실행한다. 예를 들면, 도 12의 두 개의 "페이퍼의 피스" 각각은 메뉴 카드이다.
2. "플로우 카드"는 소정의 프로그래밍 언어로 소정의 루팅을 구현한다. 이 카드의 유형은 UI 레벨로서 디스플레이 스크린상에 나타나지 않으며, 따라서 다른 사용자에게 보여지지 않는다. 메뉴 카드가 사용자에게 동작의 리스트를 제공하는 반면에, 플로우 카드는 브랜치, 루프, 등에 의해 결정된 "제어의 플로우"로 동작의 리스트를 프로세싱한다.
이들 카드 각각은 다른 유형의 카드를 착수(launch)할 수 있다. 메뉴는 사용자 선택에 따라 또다른 메뉴 또는 플로우를 착수할 수 있다. 플로우는 또다른 플로우 또는 메뉴를 착수할 수 있다. 또한, 카드 타입 각각은, 외부 인터페이스 하드웨어를 사용할 필요가 있을 때, EI 루틴을 불러올 수 있다. 각각 카드는 또다른 UI 엔진 애플리케이션을 유발할 수 있으며, 이 전이는 레벨의 시퀀스가 인터럽트되지 않기 때문에 끊이지 않는다.
이들 포인트를 예시하기 위해, 언어의 바람직한 실시예로부터 하나의 예를 고려하기로 한다. 도 11은 샘플 애플리케이션의 개시를 도시한다.
언어에서 각 라인은 두 개의 부분으로 구성된다.
1. "묘사(description)", 원으로 둘러싸인 A 또는 "at" 시볼("@")전의 텍스트.
2. "액션(action", 원으로 둘러싸인 A("@")로 시작되는 텍스트.
각 카드는 "레벨 1 @ 카드 1 메뉴"와 같은 타이틀 라인으로 시작된다. 이 라인의 묘사 부분은 카드의 타이틀이며,액션은 카드의 라벨(label)이다. 각 카드는 "@"만을 포함하는 라인에서 종료한다. 따라서, 세 개의 카드는 도 12의 예에서 도시된다.
애플리케이션은 카드 1을 디스플레이하므로써 시작한다. 카드의 타이틀은 "레벨 1"이며, 선택가능한 아이템은 "선택 A" 및 "선택 B"이다. "선택 A"가 선택될 경우, 이는 "선택 A" 라인에서의 액션이기 때문에, 카드 2를 생성한다. 카드 2는 상태 "1==1"이 참이기 때문에, 즉시 카드3을 디스플레이하는 플로우 카드이다.
도 12는 세 개의 카드를 도시한다. 카드 2는 사용자에게 보여지지 않는 플로우 카드이다. 카드 1과 카드 3만이 디스플레이된다.
두 개의 카드 유형이 유사하지만, 중요한 차이점이 있다. 이하의 표는 메뉴와 플로우간의 대칭을 나타낸다.
변수 및 파일 스트림과 같은 자원을 할당할 때, 레벨을 갖는 각 자원을 지정하는 것은 유용하다. 자원은, 레벨이 파괴될 때, 자동적으로 재할당된다. 예를 들면, 변수가 그 언어에서 생겨날 때, 레벨을 할당한다. 변수는 모든 레벨에 대해 글로벌하며, 즉 카드는 이를 변수에 놓으므로써 다른 카드로 정보를 전송할 수 있다. 그러나, 변수는 UI 엔진 내부의 레벨 이하로 갈때, 파괴된다. 다시 말하면, 변수가 생겨난 카드가 파괴될 때, 변수는 이와 함께 파괴된다. 변수는, 레벨이 파괴될때, "범주를 벗어난다". 이는 그 언어가 카드로 할당될 수 있는 모든 자원을 어떻게 조종하는가이다.
본 발명은 세 가지 문제점에 대한 해결책을 제공한다. 첫 째, 애플리케이션의 사이즈는 현저하게 감소된다. 샘플 애플리케이션이 완전히 필수요소로 스트리핑되는 도 11에서의 예로부터 관찰하기로 한다. 애플리케이션의 내용의 대부분은 프로그래밍이 아니라 텍스트이다. 텍스트는, 표준 압축 기법을 사용하여 원래의 사이즈의 반으로 압축될 수 있다. 프로그래밍의 사이즈는 편집에 의해 감소될 수 있으며, 그러나, 이는, 텍스트에 사용된 압축 알고리즘이 프로그래밍을 압축하는데 또한 채택될 경우, 필요가 없을 것이다. 결과 애플리케이션은 압축된 텍스트의 사이즈인 이론적인 최소 사이즈에 접근한다. 다음에, UI 엔진의 사이즈는 감소된다. 메뉴 카드 및 플로우 카드가 식별 신텍스(syntax)를 가짐으로 관찰하기로 한다. 카드의 두 유형은 묘사 및 액션을 갖는 라인으로 구성된다. 메뉴가 수행할 수 있는 액션은, 플로우가 수행할 수 있는 액션과 동일하다. (하나의 예외는, 이들 액션이 메뉴에서 무의미할 때, 플로우가 플로우에서의 주위를 점프하는 액션을 허용하는 것이다) 변수 해결 및 다른 파싱(parsing) 동작은 카드의 두 유형에서 동일하다. 따라서, UI 엔진에서의 동일 소프트웨어는 메뉴 카드 및 플로우 카드 둘다에서 프로세싱한다. 마지막으로, 이 언어를 실행하는 UI 엔진은 메뉴 레벨에 기초한 임의의 오퍼레이팅 환경으로 이동될 수 있다. 이는, 언어가 레벨의 체제에 대한 사용자 입력 및 출력을 제한하기 때문이다. 동일 애플리케이션은 여러가지 상이한 환경에서 동작될 수 있다.
메뉴 시스템은 객체의 "메뉴" 유형으로 공통적으로 수행된다. 예를 들면, 마이크로소프트 윈도우 소프트웨어 개발 키트(Microsoft Windows Software Development Kit)는 윈도우의 메뉴의 레벨을 구성하는 "대화 박스 편집기(Dialog Box Editor)"를 포함한다. 각 레벨에서의 객체는 다른 하나를 생성하는 메뉴와 유사한, 다음 레벨에서의 객체를 생성할 수 있다.
또한, 프로그래밍 언어는 객체의 "플로우" 유형을 통상적으로 사용한다. 예를 들면, C++ 언어에서의 객체는, 하나의 플로우가 또다른 플로우를 생성하는 것과 유사하게, 다른 객체의 인스탄스를 생성할 수 있다.
본 명세서에서 기술된 프로그래밍 언어의 독창성은 단일의 통합 언어에서의 객체의 두 유형을 혼합하는 것이다.
본 명세서에서 이 포인트로 기술된 시스템에 대해 계획된 메뉴 구성 및 디스플레이 능력의 범위를 돌이켜보면, 전술한 커맨드 프로세서 회로는 비디오 이미지 위에 디스플레이된 커서 이미지를 메뉴 아이템으로 사용자가 이동할 수 있게 하고, 커서 이미지에 의해 중첩된 메뉴 아이템을 실행하기 위해 선택할 수 있도록 하므로써 원격 제어 장치(20)의 조작에 응답한다. 또한, 소정의 퍼스널 컴퓨터 시스템 소프트웨어의 "드래그(drag) 및 드롭(drop)" 기능과 유사한 방식으로, 커맨드 프로세서 회로는 사용자가, 메뉴 아이템으로 커서 이미지를 이동하고, 커서 이미지에 의해 중첩된 메뉴 아이템을 이동시키기 위해 선택하며, 영상 디스플레이 장치에 의해 디스플레이된 시각 이미지를 가로질러 선택된 메뉴 아이템을 이동시킬 수 있게 하므로써 상기 원격 제어 장치의 조작에 응답한다. 디스플레이 필드 부분의 상이한 특성을 사용자가 구별하는 것을 돕기 위해, 커서 이미지 신호는 입력 장치의 조작이 디스플레이된 커서로 하여금 디스플레이된 시각 이미지의 상이한 영역으로 이동되도록 함에 따라, 디스플레이의 소정의 필드 위일 때, 커서를 더 크게 만들므로써 디스플레이된 커서의 영상 특성을 변화시킬 수 있다.
도 13 내지 도 15에 도시된 바와 같이, 디스플레이 제어기는 라이브 비디오 이미지의 일부분 위에, 사용자가 상기 시각 이미지의 또다른 변경을 선택할 수 있는 메뉴 디스플레이를 디스플레이하므로써, 디스플레이된 시각 이미지를 변경한다. 따라서, 도 13에서, 이용가능한 필드의 대부분은 (중첩된 메뉴 및 정보 텍스트에 의해 도 14 내지 도 15에서 부분적으로 어두운 날씨 지도의 이미지인) 비디오 스트림 이미지에 의해 점유되며, 나머지 부분은 디스플레이된 메뉴에 의해 점유된다. 도 14에서와 같이, 제공된 메뉴는 풀 다운(pull down) 디스플레이를 포함할 수 있으며, 여기서, 시각 이미지의 다른 가능한 변경 및/또는 액세스가능한 정보 디스플레이가 타이틀된 윈도우 또는 중첩된 윈도우 또는 캐스케이드된 윈도우로서 디스플레이된다. 아이템 4 "피자"와 같은, 소정의 액세스가능한 정보 선택은, 바람직하게 시스템에 합체된 모뎀과 같은 백 채널 통신을 통해 음식의 주문과 같은 원격 서비스에 대한 액세스를 제공한다. 그 밖의 다른 것, 아이템 1 "날씨"와 같은 것은 지역 날씨 관철과 같은 데이타 서비스로부터 이용가능한 정보를 액세스할 것이다. 또다른 것, 아이템 5 "TV 안내"는 시청을 위한 프로그래밍의 선택부로 이끌 것이다.
디스플레이 제어기는 비디오 스트림 이미지를 이용가능한 필드의 적은 부분으로서 디스플레이함으로써 디스플레이된 시각 이미지를 또한 변경시킬 수 있다. 이러한 디스플레이로의 액세스는 도 16 내지 도 18의 시퀀스에 의해 도시된다. 도 16의 오른쪽 부분에서 지시된 바와 같이(여기서, 메뉴 선택 엘리먼트는 비디오 스트림 이미지상에 중첩된 상태로 디스플레이된다.), 메뉴 디스플레이는 종래의 텔레비전 수신기 또는 비디오 카셋트 레코더/플레이어에서 원격 제어 기능으로서 제공된 기능 제어를 흉내낼 수 있다. 원격 제어 기능의 선택은 프로그래밍 선택 사항들 사이에서의 네비게이션(navigation)를 위해 원격 제어 기능에서 발견되는 "채널 업" 또는 "채널 다운"의 아이콘 표현과 같은 구현된 아이콘의 사용을 가능하게 한다. 그러나, "리스트" 또는 "메뉴"를 선택하므로써, 그 밖의 다른 서비스가 액세스될 수 있다. 도 16의 스크린으로부터, "메뉴"를 선택하면, 사용자에게 도 17의 스크린이 디스플레이될 것이며, 여기서 비디오 스트림 이미지는, 소위 거의 "픽처 인 픽처"인 것처럼, 이용가능한 스크린 영역의 작은 부분(오른쪽 상부 코너)에 디스플레이되며, 화면 필드의 나머지 부분은 이용가능한 선택의 리스팅(listing)에 의해 점유된다. 원하는 시청 옵션의 리스트는, 기능 "리스트"를 선택하여 현재의 시청 신호 스트림을 부가하고, 다음에 점진적으로 그 리스트에 부가된 다른 선택 사항을 선택함으로써, 생성될 수 있다. 시청된 채널 또는 신호 소스가 이와 같이 하나의 리스트로 구축되면, 리스트는 (저녁에 방영되는 좋아하는 프로그램에 대한 "Fri Night" 또는 특별히 어린이들을 위하여, 어린이들에 의해 선택되는 프로그래밍에 대한 "Kids" 와 같이) 명명되어, 시스템내에 저장될 수 있다. 그 후, 이전에 시청되고 구축된 리스트는 사전 선택된 프로그래밍의 범위 내에서 "채널 서핑(surfing)" 준비를 위해 재호출(recall)될 수 있다. 리스트의 생성이 완료되면, "종료" 기능이 선택되어 그 프로세스를 종료하게 된다.
도면 및 명세서에서, 본 발명의 바람직한 실시예를 제시했으며, 특정 용어가 사용되었지만, 이에 의해 주어진 설명은 일반적이며, 서술적인 의미에서의 전문용어를 사용하였고 이를 제한할 목적은 아니다.
본 발명은 획득된 시각 이미지를 디스플레이하는 시스템을 통해 액세스되는 서비스 또는 기능을 선택하는데 있어서, 텔레비전 공간, 또는 임의의 장소에서 발견되는 유사한 디스플레이에서 이용가능한 사용자의 프로그래밍을 돕는 효과를 갖는다.

Claims (27)

  1. 비디오 디스플레이 시스템(a video display system)에 있어서, 중앙 처리 유닛(CPU)과, 제 1, 제 2 및 제 3 아날로그 복합 비디오 신호를 각기 발생시키기 위한 적어도 제 1, 제 2 및 제 3 비디오 소스와, 상기 제 1, 제 2 및 제 3 비디오 소스에 접속되고, 제 1, 제 2 및 제 3 독립적 아날로그 비디오 출력을 갖는 아날로그 멀티플렉서(an analog multiplexer) - 상기 제 3 독립적 아날로그 비디오 출력은 상기 제 3 비디오 소스에 접속되고, 상기 아날로그 멀티플렉서는 상기 CPU의 제어 하에 동작하여, 상기 제 1, 제 2 및 제 3 아날로그 복합 비디오 신호를 수신하고, (1) 상기 제 1, 제 2 또는 제 3 아날로그 복합 비디오 신호 중 어느 한 신호를 상기 제 1 아날로그 출력으로 공급하며, 이와 독립적으로, 동시에 (2) 상기 제 1, 제 2 또는 제 3 아날로그 복합 비디오 신호 중 어느 한 신호를 상기 제 2 아날로그 출력으로 공급하며, 이와 독립적으로 동시에 (3) 상기 제 1, 제 2 또는 제 3 아날로그 복합 비디오 신호 중 어느 한 신호를 상기 제 3 아날로그 비디오 출력으로 공급함 -와, 시각 이미지를 사용자에게 디스플레이하기 위한 비디오 디스플레이 장치와 상기 CPU와, 상기 제 1 및 제 2 아날로그 비디오 출력과, 상기 비디오 디스플레이 장치에 동작가능하게 접속되어, 상기 멀티플렉서로부터 상기 제 1 및 제 2 아날로그 비디오 출력 신호를 수신하고, 소정의 출력 아날로그 복합 비디오 신호(an output analog composite video signal)를 생성하는 비디오 프로세서 - 상기 비디오 프로세서는, 상기 CPU의 제어 하에 동작하여, 상기 비디오 디스플레이 장치로, 상기 출력 아날로그 복합 비디오 신호를 전송하는데, 상기 출력 아날로그 복합 비디오 신호는 상기 멀티플렉서의 제 1 비디오 출력 상의 소정의 아날로그 복합 비디오 신호로 이루어진 풀 스크린 이미지(a full screen image)를 상기 디스플레이 장치 상에 생성하고, 상기 멀티플렉서의 제 2 비디오 출력상의 소정의 아날로그 복합 비디오 신호로 이루어진 픽처-인-픽처(a picture-in-picture)(PIP) 이미지를 상기 디스플레이 장치 상에 생성될 것이며, 상기 PIP 이미지는 상기 풀 스크린 이미지에 중첩됨 - 와, 상기 CPU 및 상기 비디오 프로세서에 접속되어, 시스템 데이터 및 비디오 데이터를 수신하고, 저장하며, 전송하는 시스템 랜덤 액세스 메모리(a system random access memory)를 포함하는 비디오 디스플레이 시스템.
  2. 제1항에 있어서, 상기 제 3 비디오 소스는 비디오 카셋트 레코더/플레이어 장치인 비디오 디스플레이 시스템.
  3. 제1항에 있어서,상기 아날로그 멀티플렉서에 접속되어, 상기 아날로그 멀티플렉서에 제 4 아날로그 복합 비디오 신호를 제공하는 제 4 비디오 소스를 더 포함하되, 상기 아날로그 멀티플렉서는 상기 CPU의 제어 하에 동작하여, 상기 제 1, 제 2, 제 3, 제 4 아날로그 복합 비디오 신호를 수신하고, (1) 상기 제 1, 제 2, 제 3 또는 제 4 아날로그 복합 비디오 중 어느 한 신호를 상기 제 1 아날로그 출력으로 공급하고, 이와 독립적으로, 동시에 (2) 상기 제 1, 제 2, 제 3 또는 제 4 아날로그 복합 비디오 신호 중 어느 한 신호를 상기 제 2 아날로그 출력으로 공급하는 비디오 디스플레이 시스템.
  4. 제3항에 있어서, 상기 아날로그 멀티플렉서에 접속되어, 상기 아날로그 멀티플렉서에 제 5 아날로그 복합 비디오 신호를 제공하는 제 5 비디오 소스를 더 포함하되, 상기 아날로그 멀티플렉서는 상기 CPU의 제어 하에 동작하여, 상기 제 1, 제 2, 제 3, 제 4, 제 5 아날로그 복합 비디오 신호를 수신하고, (1) 상기 제 1, 제 2, 제 3, 제 4 또는 제 5 아날로그 복합 비디오 신호 중 어느 한 신호를 상기 제 1 아날로그 출력으로 공급하며, 이와 독립적으로, 동시에 (2) 상기 제 1, 제 2, 제 3, 제 4 또는 제 5 아날로그 복합 비디오 신호 중 어느 한 신호를 상기 제 2 아날로그 출력으로 공급하는 비디오 디스플레이 시스템.
  5. 제4항에 있어서, 상기 아날로그 멀티플렉서에 접속되어, 상기 아날로그 멀티플렉서에 제 6 아날로그 복합 비디오 신호를 제공하는 제 6 비디오 소스를 더 포함하되, 상기 아날로그 멀티플렉서는 상기 CPU의 제어 하에 동작하여, 상기 제 1, 제 2, 제 3, 제 4, 제 5, 제 6 아날로그 복합 비디오 신호를 수신하고, (1)상기 제 1, 제 2, 제 3, 제 4, 제 5 또는 제 6 아날로그 복합 비디오 신호 중 어느 한 신호를 상기 제 1 아날로그 출력으로 공급하며, 이와 독립적으로, 동시에 (2) 상기 제 1, 제 2, 제 3, 제 4, 제 5 또는 제 6 아날로그 복합 비디오 신호 중 어느 한 신호를 상기 제 2 아날로그 출력으로 공급하는 비디오 디스플레이 시스템.
  6. 제5항에 있어서, 상기 아날로그 멀티플렉서에 접속되어, 상기 아날로그 멀티플렉서에 제 7 아날로그 복합 비디오 신호를 제공하는 제 7 비디오 소스를 더 포함하되, 상기 아날로그 멀티플렉서는 상기 CPU의 제어 하에 동작하여, 상기 제 1, 제 2, 제 3, 제 4, 제 5, 제 6, 제 7 아날로그 복합 비디오 신호를 수신하고, (1) 상기 제 1, 제 2, 제 3, 제 4, 제 5, 제 6 또는 제 7 아날로그 복합 비디오 신호 중 어느 한 신호를 상기 제 1 아날로그 출력으로 공급하며, 이와 독립적으로, 동시에 (2) 상기 제 1, 제 2, 제 3, 제 4, 제 5, 제 6 또는 제 7 아날로그 복합 비디오 신호 중 어느 한 신호를 상기 제 2 아날로그 출력으로 공급하는 비디오 디스플레이 시스템.
  7. 제6항에 있어서, 상기 아날로그 멀티플렉서는 상기 제 3 비디오 소스에 접속되는 독립적인 제 3 아날로그 비디오 출력을 더 포함하되, 상기 아날로그 멀티플렉서는 상기 CPU의 제어 하에 동작하여, 상기 제 1, 제 2, 제 3, 제 4, 제 5, 제 6, 제 7 아날로그 복합 비디오 신호를 수신하고, (1) 상기 제 1, 제 2, 제 3, 제 4, 제 5, 제 6 또는 제 7 아날로그 복합 비디오 신호 중 어느 한 신호를 상기 제 1 아날로그 출력으로 공급하고, 이와 독립적으로, 동시에 (2) 상기 제 1, 제 2, 제 3, 제 4, 제 5, 제 6 또는 제 7 아날로그 복합 비디오 신호 중 어느 한 신호를 상기 제 2 아날로그 출력으로 공급하며, (3) 상기 제 1, 제 2, 제 3, 제 4, 제 5, 제 6 또는 제 7 아날로그 복합 비디오 신호 중 어느 한 신호를 상기 제 3 아날로그 출력으로 공급하는 비디오 디스플레이 시스템.
  8. 제7항에 있어서, 상기 제 1 비디오 소스는 제 1 튜너(a first tuner)이고, 상기 제 2 비디오 소스는 제 2 튜너이고, 상기 제 3 비디오 소스는 카셋트 레코더/플레이어 장치이고, 상기 제 4 비디오 소스는 MPEG 압축복원 모듈(an MREG decompression module)이고, 상기 제 5 비디오 소스는 상기 비디오 프로세서로부터의 출력 아날로그 복합 비디오 신호이고, 상기 제 6 소스는 카메라 장치이며, 상기 제 7 비디오 소스는 게임 장치인 비디오 디스플레이 시스템.
  9. 제1항에 있어서, ① 상기 비디오 디스플레이 장치로부터 다소 떨어진 거리에서 사용가능하며, 사용자의 손에 쥘 수 있는 정도의 크기의 하우징(a housing)과, 사용자에 의한 조작을 위해 상기 하우징내에 장착된 수동 조작 가능한 입력 장치와, 상기 하우징내에 장착되고 상기 입력 장치에 접속되어,사용자에 의해 직접 센싱되는 주파수 범위 밖의 소정 주파수에서 사용자에 의한 상기 입력 장치의 조작에 따라 사전 설정된 방식으로 구축되는 커맨드 신호를 전송하는 제어 전송 회로(control transmitter circuitry)를 구비하는 원격 제어 장치와, ② 상기 CPU 및 상기 비디오 프로세서에 접속되어, 상기 제어 전송 회로로부터 커맨드 신호를 수신하고, 상기 수신된 커맨드 신호로부터 상기 시각 이미지의 변경을 지시하는 이미지 지시 신호를 유도하는 커맨드 수신 회로를 더 포함하되, 상기 비디오 프로세서는 상기 커맨드 수신 회로에 접속되어, 상기 이미지 지시 신호를 수신하고, 사용자에 의해 상기 원격 제어 장치의 조작에 의해 지시되는 바에 따라 상기 시각 이미지를 변경시키는 커맨드 프로세서 회로를 더 포함하는 비디오 디스플레이 시스템.
  10. 제1항에 있어서, ① 상기 비디오 디스플레이 장치로부터 다소 떨어진 거리에서 사용가능하며, 사용자의 손에 쥘 수 있는 정도의 크기의 하우징(a housing)과, 사용자에 의한 조작을 위해 상기 하우징내에 장착된 수동 조작가능한 입력 장치와, 상기 하우징내에 장착되고 상기 입력 장치에 접속되어, 사용자에 의해 직접 센싱되는 주파수 범위 밖의 소정 주파수에서 사용자에 의한 상기 입력 장치의 조작에 따라 사전설정된 방식으로 구축되는 커맨드 신호를 전송하는 제어 전송 회로(control transmitter circuitry)를 구비하는 원격 제어 장치와, ② 상기 CPU 및 상기 비디오 프로세서에 접속되어, 상기 제어 전송 회로로부터 커맨드 신호를 수신하고, 상기 제 1 및 제 2 아날로그 복합 비디오 신호중 어떤 하나의 신호가 상기 멀티플렉서의 제 1 출력으로 공급되고, 상기 제 1 및 제 2 아날로그 복합 비디오 신호중 어떤 하나의 신호가 상기 멀티플렉서의 제 2 출력으로 공급될 것인지를 상기 수신된 커맨드 신호로부터 유도하는 커맨드 수신 회로 를 더 포함하는 비디오 디스플레이 시스템.
  11. 비디오 디스 플레이 시스템에 있어서, 중앙 처리 유닛(CPU)과, 각기 제 1 및 제 2 아날로그 복합 비디오 신호를 생성하는 적어도 제 1 및 제 2 비디오 소스와, 상기 제 1 및 제 2 비디오 소스에 접속되며, 독립적인 제 1 및 제 2 아날로그 비디오 출력을 갖는 아날로그 멀티플렉서 - 상기 아날로그 멀티플렉서는 상기 CPU의 제어 하에 동작하여, 상기 제 1 및 제 2 아날로그 복합 비디오 신호를 수신하고, (1) 상기 제 1 또는 제 2 아날로그 복합 비디오 신호 중 어느 한 신호를 상기 제 1 아날로그 출력으로 공급하며, 이와 독립적으로, 동시에 (2) 상기 제 1 또는 제 2 아날로그 복합 비디오 신호 중 어느 한 신호를 상기 제 2 아날로그 비디오 출력으로 공급함 - 와, 시각 이미지를 사용자에게 디스플레이하는 비디오 디스플레이 장치와, 상기 CPU와, 상기 제 1 및 제 2 아날로그 비디오 출력과, 상기 비디오 디스플레이 장치에 동작가능하게 접속되어, 상기 멀티플렉서로부터 상기 제 1 및 제 2 아날로그 비디오 출력 신호를 수신하고, 소정의 출력 아날로그 복합 비디오 신호(an output analog composite video signal)를 생성하는 비디오 프로세서 - 상기 비디오 프로세서는, 상기 CPU의 제어 하에 동작하여, 상기 비디오 디스플레이 장치로, 상기 출력 아날로그 복합 비디오 신호를 전송하는데, 상기 출력 아날로그 복합 비디오 신호는 상기 멀티플렉서의 제 1 비디오 출력 상의 소정의 아날로그 복합 비디오 신호로 이루어진 풀 스크린 이미지(a full screen image)를 상기 디스플레이 장치 상에 생성하고, 상기 멀티플렉서의 제 2 비디오 출력상의 소정의 아날로그 복합 비디오 신호로 이루어진 픽처-인-픽처(a picture-in-picture)(PIP) 이미지를 상기 디스플레이 장치 상에 생성할 것이며, 상기 PIP 이미지는 상기 풀 스크린 이미지에 중첩됨 - 와, 상기 비디오 프로세서에 접속되어, 디지털 데이터 스트림을 상기 비디오 프로세서에 제공하는 콤팩트 디스크 제어기(a compact disc controller)와, 상기 CPU 및 상기 비디오 프로세서에 접속되어, 시스템 데이터와 비디오 데이터를 수신하고, 저장하고 전송하는 시스템 랜덤 액서스 메모리를 포함하는 비디오 디스플레이 시스템.
  12. 제11항에 있어서, 상기 디지털 데이터 스트림은 오디오 성분을 포함하는 비디오 디스플레이 시스템.
  13. 제12항에 있어서, 상기 디지털 데이터 스트림은 비디오 성분을 포함하되, 상기 비디오 프로세서는, 상기 CPU의 제어 하에 동작하여, 상기 멀티플렉서로부터 상기 제 1 아날로그 비디오 출력과, 상기 멀티플렉서로부터 상기 제 2 아날로그 비디오 출력과, 상기 디지털 데이터 스트림을 수신하고, 상기 출력 아날로그 복합 비디오 신호를 상기 비디오 디스플레이 장치로 전송하며, 상기 출력 아날로그 복합 비디오 신호는, 상기 제 1 아날로그 비디오 출력, 상기 제 2 아날로그 비디오 출력 또는 상기 디지털 데이터 스트림 중 어느 하나로 이루어진 풀 스크린 이미지를 상기 디스플레이 장치 상에 생성하고, 상기 제 1 아날로그 비디오 출력, 상기 제 2 아날로그 비디오 출력, 상기 디지털 데이터 스트림 중 어느 하나로 이루어진 픽처-인-픽처(PIP) 이미지를 상기 디스플레이 장치 상에 생성하는 비디오 디스플레이 시스템.
  14. 중앙 처리 유닛(CPU)과, 각기 제 1 및 제 2 아날로그 복합 비디오 신호를 생성하는 적어도 제 1 및 제 2 비디오 소스와, 상기 제 1 및 제 2 비디오 소스에 접속되며, 독립적인 제 1 및 제 2 아날로그 비디오 출력을 갖는 아날로그 멀티플랙서 - 상기 아날로그 멀티플랙서는 상기 CPU의 제어 하에 동작하여, 상기 제 1 및 제 2 아날로그 복합 비디오 신호를 수신하고, (1) 상기 제 1 또는 상기 제 2 아날로그 복합 비디오 신호 중 어느 한 신호를 상기 제 1 아날로그 출력으로 공급하며, 이와 독립적으로, 동시에 (2) 상기 제 1 또는 제 2 아날로그 복합 비디오 신호 중 어느 한 신호를 상기 제 2 아날로그 비디오 출력으로 공급함 - 와, 시각 이미지를 사용자에게 디스플레이하는 비디오 디스플레이 장치와, 상기 CPU와, 상기 제 1 및 2 아날로그 비디오 출력과,상기 비디오 디스플레이 장치에 동작가능하게 접속되어, 상기 멀티플렉서로부터 상기 제 1 및 제 2 아날로그 비디오 출력 신호를 수신하고, 소정의 출력 아날로그 복합 비디오 신호(an output analog composite video signal)를 생성하는 비디오 프로세서 - 상기 비디오 프로세서는, 상기 CPU의 제어 하에 동작하여, 상기 비디오 디스플레이 장치로, 상기 출력 아날로그 복합 비디오 신호를 전송하는데, 상기 출력 아날로그 복합 비디오 신호는 상기 멀티플렉서의 제 1 비디오 출력 상의 소정의 아날로그 복합 비디오 신호로 이루어진 풀 스크린 이미지(a full screen image)를 상기 디스플레이 장치 상에 생성하고, 상기 멀티플렉서의 제 2 비디오 출력상의 소정의 아날로그 복합 비디오 신호로 이루어진 픽처-인-픽처(a picture-in-picture)(PIP) 이미지를 상기 디스플레이 장치 상에 생성할 것이며, 상기 PIP 이미지는 상기 풀 스크린 이미지에 중첩됨 - 와, 상기 CPU 및 상기 비디오 프로세서에 접속되어, 시스템 데이터와 비디오 데이터를 수신하고, 저장하고, 전송하는 시스템 랜덤 액세스 메모리를 포함하되, 상기 제 1 비디오 소스는, 상기 사용자에 의해 직접 생성되는 주파수 범위 밖의 주파수들에서 전송되는 신호들을 수신하는 비디오 수신 회로에 접속된 제 1 튜너를 포함하고, 상기 제 1 튜너는 상기 신호들을 각기 상기 제 1 아날로그 복합 비디오 신호로 변환하는 동작을 수행하며, 상기 제 2 비디오 소스는 제 2 튜너, 비디오 카세트 레코더/플레이어 장치, MPEG 압축복원 모듈, 상기 비디오 프로세서로부터의 상기 출력 아날로그 복합 비디오 신호, 카메라 장치 및 게임 장치로 이루어진 그룹으로부터 선택된 소스인 비디오 디스플레이 시스템.
  15. 제14항에 있어서, 상기 제 2 비디오 소스는, 상기 사용자에 의해 직접 센싱되는 주파수 범위 밖의 주파수들에서 전송되는 신호들을 수신하는 비디오 수신회로에 접속된 제 2 튜너를 포함하고, 상기 제 2 튜너는 상기 신호들을 각기 상기 제 2 아날로그 복합 비디오 신호로 변환하는 동작을 수행하는 비디오 디스플레이 시스템.
  16. 비디오 디스플레이 장치를 사용하여 사용자에게 시각 이미지를 디스플레이 하는 방법에 있어서, 제 1, 제 2 및 제 3 아날로그 복합 비디오 신호를 아날로그 비디오 멀티플렉서로 제공하는 단계 - 상기 멀티플렉서는 독립적인 제 1, 제 2 및 제 3 출력을 구비하고, 상기 독립적인 제 3 출력은 상기 제 3 아날로그 복합 비디오 신호에 접속됨 - 와, 상기 멀티플렉서의 제 1 출력으로 공급될, 상기 제 1, 제 2 및 제 3 아날로그 복합 비디오 신호중 하나를 선택하는 제 1 선택 단계와, 상기 제 1 선택 단계와 독립적으로, 동시에, 상기 멀티플렉서의 제 2 출력으로 공급될, 상기 제 1, 제 2 및 제 3 아날로그 복합 비디오 신호중 하나를 선택하는 제 2 선택 단계와, 상기 제 1 및 2 선택 단계와 독립적으로, 동시에, 상기 멀티플렉서의 제 3 출력으로 공급될, 상기 제 1, 제 2 및 제 3 아날로그 복합 비디오 신호 중 하나를 선택하는 단계와, 비디오 프로세서에서 상기 멀티플렉서의 제 1 및 제 2 출력을 수신하는 단계와, CPU의 제어 하에 상기 비디오 프로세서를 이용하여, 상기 멀티플렉서의 제 1 비디오 출력 상의 상기 아날로그 복합 비디오 신호의 일부와 상기 멀티플렉서의 제 2 비디오 출력상의 상기 아날로그 복합 비디오 신호의 일부로 이루어진 이미지를 상기 비디오 디스플레이 장치 상에 제공할 출력 아날로그 복합 비디오 신호를 생성하는 단계를 포함하는 시각 이미지 디스플레이 방법.
  17. 제16항에 있어서, 출력 아날로그 복합 비디오 신호를 생성하는 상기 단계는, 상기 디스플레이 장치 상에 상기 멀티플렉서의 제 1 비디오 출력상의 아날로그 복합 비디오 신호의 풀 스크린 이미지를 제공하고, 상기 디스플레이 장치 상에 상기 멀티플렉서의 제 2 비디오 출력상의 아날로그 복합 비디오 신호의 픽처-인-픽처(PIP) 이미지를 제공하되, 상기 PIP 이미지는 상기 풀 스크린 이미지에 중첩되는 단계를 포함하는 시각 이미지 디스플레이 방법.
  18. 제16항에 있어서, 상기 아날로그 멀티플렉서로 제 4 아날로그 복합 비디오 신호를 제공하는 단계를 더 포함하고, 상기 제 1 선택 단계는 상기 멀티플렉서의 제 1 출력으로 공급될, 상기 제 1, 제 2, 제 3 또는 제 4 아날로그 복합 비디오 신호중 하나를 선택하는 단계를 포함하며, 상기 제 2 선택 단계는, 상기 제 1 선택 단계와 독립적으로, 동시에, 상기 멀티플렉서의 제 2 출력으로 공급될, 상기 제 1, 제 2, 제 3 또는 제 4 아날로그 복합 비디오 신호중 하나를 선택하는 단계를 포함하는 시각 이미지 디스플레이 방법.
  19. 제18항에 있어서, 상기 아날로그 멀티플렉서로 제 5, 제 6, 제 7 아날로그 복합 비디오 신호를 제공하는 단계를 더 포함하고, 상기 제 1 선택 단계는 상기 멀티플렉서의 제 1 출력으로 공급될, 상기 제 1, 제 2, 제 3, 제 4, 제 5, 제 6 또는 제 7 아날로그 복합 비디오 신호중 하나를 선택하는 단계를 포함하며, 상기 제 2 선택 단계는, 상기 제 1 선택 단계와 독립적으로, 동시에, 상기 멀티플렉서의 제 2 출력으로 공급될, 상기 제 1, 제 2, 제 3, 제 4, 제 5, 제 6 또는 제 7 아날로그 복합 비디오 신호중 하나를 선택하는 단계를 포함하는 시각 이미지 디스플레이 방법.
  20. 제19항에 있어서, 상기 아날로그 멀티플렉서는 상기 제 3 비디오 소스에 접속되는 독립적인 제 3 아날로그 비디오 출력을 포함하며, 상기 제 1 선택 단계는 상기 멀티플렉서의 제 1 출력으로 공급될, 상기 제 1, 제 2, 제 3, 제 4, 제 5, 제 6 또는 제 7 아날로그 복합 비디오 신호중 하나를 선택하는 단계를 포함하고, 상기 제 2 선택 단계는, 상기 제 1 선택 단계와 독립적으로, 동시에, 상기 멀티플렉서의 제 2 출력으로 공급될, 상기 제 1, 제 2, 제 3, 제 4, 제 5, 제 6 또는 제 7 아날로그 복합 비디오 신호중 하나를 선택하는 단계를 포함하며, 상기 제 1 및 제 2 선택 단계와 독립적으로, 동시에, 상기 제 3 멀티플렉서 출력으로 공급될, 상기 제 1, 제 2, 제 3, 제 4, 제 5, 제 6 또는 제 7 아날로그 복합 비디오 신호중 하나를 선택하는 단계를 더 포함하는 시각 이미지 디스플레이 방법.
  21. 제16항에 있어서, 비디오 디스플레이 장치로부터 떨어진 거리에서 수동으로 조작가능하고, 사용자에 의해 조작가능한 입력 장치를 이용하여, 상기 디스플레이된 시각 이미지의 원하는 변경을 지시하는 커맨드 신호를 생성하고, 상기 생성된 신호를 커맨드 전송기로 전송하는 단계와 상기 커맨드 전송기로부터, 사용자에 의해 직접 센싱되는 주파수 범위 밖의 소정의 주파수에서, 상기 사용자에 의한 상기 입력 장치의 조작에 따라 사전설정된 방식으로 구축된 상기 커맨드 신호를 전송하는 단계와 상기 커맨드 전송기로부터 상기 커맨드 신호를 수신하고, 상기 수신된 커맨드 신호로부터 상기 시각 이미지의 변경을 지시하는 이미지 지시 신호를 유도하는 단계와 상기 이미지 신호를 수신하고, 사용자에 의해 상기 원격 제어 장치의 조작에 의해 지시되는 바와 같이 상기 시각 이미지를 변경하는 단계를 더 포함하는 시각 이미지 디스플레이 방법.
  22. 제16항에 있어서, 비디오 디스플레이 장치로부터 떨어진 거리에서 수동으로 조작가능하고, 사용자에 의해 조작가능한 입력 장치를 이용하여, 상기 디스플레이된 시각 이미지의 원하는 변경을 지시하는 커맨드 신호를 생성하고, 상기 생성된 신호를 커맨드 전송기로 전송하는 단계와, 상기 커맨드 전송기로부터, 사용자에 의해 직접 센싱되는 주파수 범위 밖의 소정의 주파수에서, 상기 사용자에 의한 상기 입력 장치의 조작에 따라 사전설정된 방식으로 구축된 상기 커맨드 신호를 전송하는 단계와 상기 커맨드 전송기로부터 상기 커맨드 신호를 수신하고, 상기 제 1 및 제 2 아날로그 복합 비디오 신호중 어떤 하나의 신호가 멀티플렉서의 제 1 출력으로 공급되고, 상기 제 1 및 제 2 아날로그 복합 비디오 신호중 어떤 하나의 신호가 멀티플렉서의 제 2 출력으로 공급되는지를 상기 수신된 커맨드 신호로부터 유도하는 단계를 더 포함하는 시각 이미지 디스플레이 방법.
  23. 제22항에 있어서, 상기 CPU 및 상기 비디오 프로세서에 접속되는 단일 시스템 랜덤 액세스 메모리를 사용하여 시스템 데이터, 비디오 데이터, 그래픽 데이터, 전자 프로그램 안내 데이터를 수신하고, 저장하며, 전송하는 단계를 더 포함하는 시각 이미지 디스플레이 방법.
  24. 중앙 처리 유닛(CPU)과, 각기 제 1 및 제 2 아날로그 복합 비디오 신호를 생성하는 적어도 제 1 및 제 2 비디오 소스와, 상기 제 1 및 제 2 비디오 소스에 접속되며, 독립적인 제 1 및 제 2 아날로그 비디오 출력을 갖는 아날로그 멀티플렉서 - 상기 아날로그 멀티플렉서는 상기 CPU의 제어 하에 동작하여, 상기 제 1 및 제 2 아날로그 복합 비디오 신호를 수신하고, (1) 상기 제 1 또는 상기 제 2 아날로그 복합 비디오 신호 중 어느 한 신호를 상기 제 1 아날로그 출력으로 공급하며, 이와 독립적으로, 동시에 (2) 상기 제 1 또는 제 2 아날로그 복합 비디오 신호 중 어느 한 신호를 상기 제 2 아날로그 비디오 출력으로 공급함 - 와, 시각 이미지를 사용자에게 디스플레이하는 비디오 디스플레이 장치와, 상기 CPU와, 상기 제 1 및 제 2 아날로그 비디오 출력과, 상기 비디오 디스플레이 장치에 동작가능하게 접속되어, 상기 멀티플렉서로부터 상기 제 1 및 제 2 아날로그 비디오 출력 신호를 수신하고, 소정의 출력 아날로그 복합 비디오 신호(an output analog composite video signal)를 생성하는 비디오 프로세서 - 상기 비디오 프로세서는, 상기 CPU의 제어 하에 동작하여, 상기 비디오 디스플레이 장치로, 상기 출력 아날로그 복합 비디오 신호를 전송하는데, 상기 출력 아날로그 복합 비디오 신호는 상기 멀티플렉서의 제 1 비디오 출력 상의 소정의 아날로그 복합 비디오 신호로 이루어진 풀 스크린 이미지(a full screen image)를 상기 디스플레이 장치 상에 생성하고, 상기 멀티플렉서의 제 2 비디오 츨력상의 소정의 아날로그 복합 비디오 신호로 이루어진 픽처-인-픽처(a picture-in-picture)(PIP) 이미지를 상기 디스플레이 장치 상에 생성할 것이며, 상기 PIP 이미지는 상기 풀 스크린 이미지에 중첩됨 - 와, 상기 CPU 및 상기 비디오 프로세서에 접속되어, 시스팀 데이터와 비디오 데이터를 수신하고, 저장하고 전송하는 시스템 랜덤 액세스 메모리를 포함하되, 상기 비디오 프로세서는 상기 시스템 랜덤 액세스 메모리에 저장되어, 상기 비디오 프로세서에 의해 출력된 상기 출력 아날로그 복합 비디오 신호 상으로 중첩되는 시스템 그래픽을 생성하도록 동작하는 비디오 디스플레이 시스템.
  25. 중앙 처리 유닛(CPU)과, 각기 제 1 및 제 2 아날로그 복합 비디오 신호를 생성하는 적어도 제 1 및 제 2 비디오 소스와, 상기 제 1 및 제 2 비디오 소스에 접속되며, 독립적인 제 1 및 제 2 아날로그 비디오 출력을 갖는 아날로그 멀티플렉서 - 상기 아날로그 멀티플렉서는 상기 CPU의 제어 하에 동작하여, 상기 제 1 및 제 2 아날로그 복합 비디오 신호를 수신하고, (1) 상기 제 1 또는 상기 제 2 아날로그 복합 비디오 신호 중 어느 한 신호를 상기 제 1 아날로그 출력으로 공급하며, 이와 독립적으로, 동시에 (2) 상기 제 1 또는 제 2 아날로그 복합 비디오 신호 중 어느 한 신호를 상기 제 2 아날로그 비디오 출력으로 공급함 - 와, 시각 이미지를 사용자에게 디스플레이하는 비디오 디스플레이 장치와, 상기 CPU와, 상기 제 1 및 제 2 아날로그 비디오 출력과, 상기 비디오 디스플레이 장치에 동작가능하게 접속되어, 상기 멀티플렉서로부터 상기 제 1 및 제 2 아날로그 비디오 출력 신호를 수신하고, 소정의 출력 아날로그 복합 비디오 신호(an output analog composite video signal)를 생성하는 비디오 프로세서 - 상기 비디오 프로세서는, 상기 CPU의 제어 하에 동작하여, 상기 비디오 디스플레이 장치로, 상기 출력 아날로그 복합 비디오 신호를 전송하는데, 상기 출력 아날로그 복합 비디오 신호는 상기 멀티플렉서의 제 1 비디오 출력 상의 소정의 아날로그 복합 비디오 신호로 이루어진 풀 스크린 이미지(a full screen image)를 상기 디스플레이 장치 상에 생성하고, 상기 멀티플렉서의 제 2 비디오 출력상의 소정의 아날로그 복합 비디오 신호로 이루어진 픽처-인-픽처(a picture-in-picture)(PIP) 이미지를 상기 디스플레이 장치 상에 생성할 것이며, 상기 PIP 이미지는 상기 풀 스크린 이미지에 중첩됨 - 와, 상기 CPU 및 상기 비디오 프로세서에 접속되어, 시스템 데이터와 비디오 데이터를 수신하고, 저장하고 전송하는 시스템 랜덤 액세스 메모리를 포함하되, 상기 비디오 프로세서는 상기 멀티플렉서로부터 출력된 상기 제 1 또는 제 2 아날로그 복합 비디오 신호 중 어느 한 신호로부터 전자 프로그램 안내(electronic program guide:EPG) 데이터를 추출하고, 상기 시스템 랜덤 액세스 메모리내에 상기 EPG 데이터를 저장하며, 상기 EPG 데이터를 상기 비디오 프로세서에 의해 출력된 상기 출력된 아날로그 복합 비디오 신호 상으로 중첩시키는 동작을 수행하는 비디오 디스플레이 시스템.
  26. 비디오 디스플레이 장치를 사용하여 사용자에게 시각 이미지를 디스플레이하는 방법에 있어서, 제 1 및 제 2 아날로그 복합 비디오 신호를 아날로그 비디오 멀티플렉서로 제공하는 단계 - 상기 멀티플렉서는 제 1 및 제 2 출력을 구비함 - 와, 상기 멀티플렉서의 제 1 출력으로 공급될, 상기 제 1 및 제 2 아날로그 복합 비디오 신호중 하나를 선택하는 제 1 선택 단계와, 상기 제 1 선택 단계와 독립적으로, 동시에, 상기 멀티플렉서의 제 2 출력으로 공급될, 상기 제 1 및 제 2 아날로그 복합 비디오 신호중 하나를 선택하는 제 2 선택 단계와, 비디오 프로세서에서 상기 멀티플렉서의 제 1 및 제 2 출력을 수신하는 단계와, 디지털 데이터 스트림을 상기 콤팩트 디스크 제어기로부터 상기 비디오 프로세서로 제공하는 단계와, CPU의 제어하에 상기 비디오 프로세서를 이용하여, 상기 멀티플렉서의 제 1 비디오 출력 상의 상기 아날로그 복합 비디오 신호의 일부와 상기 멀티플렉서의 제 2 비디오 출력상의 상기 아날로그 복합 비디오 신호의 일부로 이루어진 이미지를 상기 비디오 디스플레이 장치 상에 제공할 출력 아날로그 복합 비디오 신호를 생성하는 단계를 포함하는 시각 이미지 디스플레이 방법.
  27. 제26항에 있어서, 출력 아날로그 복합 비디오 신호를 생성하는 상기 단계는 상기 멀티플렉서의 제 1 출력, 상기 멀티플렉서의 제 2 출력 또는 상기 디지털 데이터 스트림 중 어느 하나로 이루어진 풀 스크린 이미지를 상기 디스플레이 장치 상에 생성하고, 상기 멀티플렉서의 제 1 출력, 상기 멀티플렉서의 제 2 출력 또는 상기 디지털 데이터 스트림 중 어느 하나로 이루어진 픽처-인-픽처(PIP) 이미지를 상기 디스플레이 장치 상에 생성하는 시각 이미지 디스플레이 방법.
KR1019960054315A 1996-02-13 1996-11-15 비디오 디스플레이 시스템 및 영상 이미지 디스플레이 방법 KR100234653B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US08/600,711 1996-02-13
US08/600,711 US5801785A (en) 1996-02-13 1996-02-13 Method and system for processing two analog composite video signals
US8/600,711 1996-02-13

Publications (2)

Publication Number Publication Date
KR970064204A KR970064204A (ko) 1997-09-12
KR100234653B1 true KR100234653B1 (ko) 1999-12-15

Family

ID=24404766

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019960054315A KR100234653B1 (ko) 1996-02-13 1996-11-15 비디오 디스플레이 시스템 및 영상 이미지 디스플레이 방법

Country Status (4)

Country Link
US (1) US5801785A (ko)
KR (1) KR100234653B1 (ko)
CA (1) CA2191631C (ko)
GB (1) GB2310558A (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100579326B1 (ko) * 1998-07-27 2006-08-03 엘지전자 주식회사 다입력비디오신호합성방법및장치
KR100796752B1 (ko) * 2001-08-31 2008-01-22 삼성전자주식회사 영상 디스플레이 장치
US8176517B2 (en) 2003-11-07 2012-05-08 Thomson Licensing Automatic display of new program information during current program viewing

Families Citing this family (131)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6239794B1 (en) 1994-08-31 2001-05-29 E Guide, Inc. Method and system for simultaneously displaying a television program and information about the program
US8793738B2 (en) 1994-05-04 2014-07-29 Starsight Telecast Incorporated Television system with downloadable features
US6769128B1 (en) 1995-06-07 2004-07-27 United Video Properties, Inc. Electronic television program guide schedule system and method with data feed access
AU703492B2 (en) * 1995-09-14 1999-03-25 Matsushita Electric Industrial Co., Ltd. Data broadcast receiving apparatus
US8850477B2 (en) 1995-10-02 2014-09-30 Starsight Telecast, Inc. Systems and methods for linking television viewers with advertisers and broadcasters
US6323911B1 (en) 1995-10-02 2001-11-27 Starsight Telecast, Inc. System and method for using television schedule information
US6732369B1 (en) 1995-10-02 2004-05-04 Starsight Telecast, Inc. Systems and methods for contextually linking television program information
BR9708196B1 (pt) * 1996-03-15 2010-05-18 método de buscar por canais com um aparelho de televisão e método para navegar entre o modo de visualização de televisão normal e um guia de programa eletrÈnico (epg).
US5940073A (en) 1996-05-03 1999-08-17 Starsight Telecast Inc. Method and system for displaying other information in a TV program guide
US6558049B1 (en) * 1996-06-13 2003-05-06 Texas Instruments Incorporated System for processing video in computing devices that multiplexes multiple video streams into a single video stream which is input to a graphics controller
JPH1023377A (ja) * 1996-07-05 1998-01-23 Toshiba Corp テレビジョン受信機を利用したテキストデータ処理装置
KR100205072B1 (ko) * 1996-12-05 1999-06-15 정선종 디스크 어레이 제어기에서의 vram 기판 패리티 엔진
US6687906B1 (en) 1996-12-19 2004-02-03 Index Systems, Inc. EPG with advertising inserts
US8635649B2 (en) 1996-12-19 2014-01-21 Gemstar Development Corporation System and method for modifying advertisement responsive to EPG information
US6246443B1 (en) * 1997-02-26 2001-06-12 U.S. Philips Corporation Signal processing device for adjusting differences in signal parameters
US5982456A (en) * 1997-03-25 1999-11-09 Echolab, Inc. Digital video switcher including a general purpose processor and a control processor
US5995161A (en) * 1997-04-02 1999-11-30 Sony Corporation Digital video processor with subvideo processor
US6061097A (en) * 1997-05-22 2000-05-09 United Video Properties, Inc. Interactive television program guide with selectable non-program options
KR100233410B1 (ko) * 1997-06-24 1999-12-01 윤종용 디지털 텔레비젼 수상기에서 전자 프로그램 가이드 정보 갱신방법 및 장치
US6144402A (en) * 1997-07-08 2000-11-07 Microtune, Inc. Internet transaction acceleration
AU733993B2 (en) 1997-07-21 2001-05-31 Rovi Guides, Inc. Systems and methods for displaying and recording control interfaces
US6604240B2 (en) 1997-10-06 2003-08-05 United Video Properties, Inc. Interactive television program guide system with operator showcase
JP4200393B2 (ja) * 1997-11-25 2008-12-24 ソニー株式会社 情報処理装置および情報処理方法
US20030237088A1 (en) * 1998-01-30 2003-12-25 Gemstar Development Corporation Use of two remote controllers in parental control
EP0935385A3 (en) * 1998-02-04 2002-06-19 Hitachi, Ltd. Decoder device and receiver using the same
US6330285B1 (en) * 1998-02-11 2001-12-11 Tektronix, Inc. Video clock and framing signal extraction by transport stream “snooping”
JP4221624B2 (ja) * 1998-02-12 2009-02-12 ソニー株式会社 Epg送信装置および方法、epg受信装置および方法、並びに記録媒体
ES2197627T3 (es) * 1998-03-04 2004-01-01 United Video Properties, Inc. Sistema de guia de programas con publicidad orientada a objetivos.
US7185355B1 (en) 1998-03-04 2007-02-27 United Video Properties, Inc. Program guide system with preference profiles
US6366359B1 (en) * 1998-04-09 2002-04-02 Canon Kabushiki Kaisha Integrated digital television and video printer
US6564379B1 (en) 1998-04-30 2003-05-13 United Video Properties, Inc. Program guide system with flip and browse advertisements
US20020095676A1 (en) 1998-05-15 2002-07-18 Robert A. Knee Interactive television program guide system for determining user values for demographic categories
US6442755B1 (en) 1998-07-07 2002-08-27 United Video Properties, Inc. Electronic program guide using markup language
CN1867068A (zh) 1998-07-14 2006-11-22 联合视频制品公司 交互式电视节目导视系统及其方法
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
US6233389B1 (en) 1998-07-30 2001-05-15 Tivo, Inc. Multimedia time warping system
US7558472B2 (en) 2000-08-22 2009-07-07 Tivo Inc. Multimedia signal processing system
US6898762B2 (en) 1998-08-21 2005-05-24 United Video Properties, Inc. Client-server electronic program guide
TW463503B (en) 1998-08-26 2001-11-11 United Video Properties Inc Television chat system
TW447221B (en) 1998-08-26 2001-07-21 United Video Properties Inc Television message system
US6563506B1 (en) * 1998-12-14 2003-05-13 Ati International Srl Method and apparatus for memory bandwith allocation and control in a video graphics system
US6317164B1 (en) * 1999-01-28 2001-11-13 International Business Machines Corporation System for creating multiple scaled videos from encoded video sources
KR100375806B1 (ko) * 1999-02-01 2003-03-15 가부시끼가이샤 도시바 색 얼룩 보정 장치 및 휘도 얼룩 보정 장치
US6330247B1 (en) * 1999-02-08 2001-12-11 Qualcomm Incorporated Communication protocol between a communication device and an external accessory
KR100311468B1 (ko) * 1999-03-25 2001-11-02 구자홍 티브이의 방송정보 안내장치 및 방법
US6754271B1 (en) 1999-04-15 2004-06-22 Diva Systems Corporation Temporal slice persistence method and apparatus for delivery of interactive program guide
US6904610B1 (en) 1999-04-15 2005-06-07 Sedna Patent Services, Llc Server-centric customized interactive program guide in an interactive television environment
US7096487B1 (en) 1999-10-27 2006-08-22 Sedna Patent Services, Llc Apparatus and method for combining realtime and non-realtime encoded content
MXPA01013446A (es) 1999-06-28 2002-08-06 Index Systems Inc Sistema y metodo para utilizar bases de datos de guia electronica de programas para modificar anuncios.
WO2001001689A1 (en) 1999-06-29 2001-01-04 United Video Properties, Inc. Method and system for a video-on-demand-related interactive display within an interactive television application
KR20020025220A (ko) * 1999-08-12 2002-04-03 추후제출 디지털 튜너를 구비한 화면 안내 발생기
US6441825B1 (en) * 1999-10-04 2002-08-27 Intel Corporation Video token tracking system for animation
CA2388606C (en) 1999-10-27 2009-12-29 Diva Systems Corporation Picture-in-picture and multiple video streams using slice-based encoding
KR100351816B1 (ko) * 2000-03-24 2002-09-11 엘지전자 주식회사 포맷 변환 장치
US20020056083A1 (en) * 2000-03-29 2002-05-09 Istvan Anthony F. System and method for picture-in-browser scaling
KR20030036149A (ko) 2000-03-31 2003-05-09 유나이티드 비디오 프로퍼티즈, 인크. 시청자수를 측정하는 개선된 시스템 및 방법
EP2309440A1 (en) 2000-03-31 2011-04-13 United Video Properties, Inc. System and method for metadata-linked advertisements
US6469734B1 (en) * 2000-04-29 2002-10-22 Cognex Corporation Video safety detector with shadow elimination
US7167575B1 (en) 2000-04-29 2007-01-23 Cognex Corporation Video safety detector with projected pattern
EP1352351A2 (en) * 2000-10-11 2003-10-15 United Video Properties, Inc. Systems and methods for providing targeted advertisements based on current activity
CN100397899C (zh) 2000-10-11 2008-06-25 联合视频制品公司 提供数据存储到点播媒体传递系统中服务器上的系统和方法
GB2369232B (en) * 2000-11-18 2005-01-12 Talksign Ltd Display signs
US7034791B1 (en) 2000-12-14 2006-04-25 Gary Odom Digital video display employing minimal visual conveyance
DE10104440A1 (de) * 2001-02-01 2002-08-08 Grundig Ag Vorrichtung mit mehreren Transportstrompfaden zum Empfang von digitalen Rundfunksignalen
US6622007B2 (en) * 2001-02-05 2003-09-16 Command Audio Corporation Datacast bandwidth in wireless broadcast system
US6956541B2 (en) * 2001-10-08 2005-10-18 Imagearray, Ltd. Integrated electronic display
WO2003032290A1 (en) * 2001-10-08 2003-04-17 Imagearray, Ltd. Electronic information display system
US6956545B2 (en) * 2001-10-08 2005-10-18 Imagearray, Ltd. Digital playback device
US20030097478A1 (en) * 2001-10-08 2003-05-22 Imagearray, Ltd. Method and system for synchronizing a presentation
JP2003250154A (ja) * 2002-02-22 2003-09-05 Canon Inc 画像処理装置及びその制御方法
US20030184679A1 (en) * 2002-03-29 2003-10-02 Meehan Joseph Patrick Method, apparatus, and program for providing slow motion advertisements in video information
US6825780B2 (en) * 2002-04-19 2004-11-30 Droplet Technology, Inc. Multiple codec-imager system and method
EP1383317A1 (en) * 2002-07-17 2004-01-21 Thomson Licensing S.A. Video apparatus
GB0229245D0 (en) * 2002-12-13 2003-01-22 Koninkl Philips Electronics Nv Television display unit
US7493646B2 (en) 2003-01-30 2009-02-17 United Video Properties, Inc. Interactive television systems with digital video recording and adjustable reminders
US7098868B2 (en) * 2003-04-08 2006-08-29 Microsoft Corporation Display source divider
US7034776B1 (en) * 2003-04-08 2006-04-25 Microsoft Corporation Video division detection methods and systems
US20040212737A1 (en) * 2003-04-22 2004-10-28 Thp Technology Co., Ltd. System simultaneously showing TV images and video camera images and its method
US20040268033A1 (en) * 2003-06-24 2004-12-30 Seagate Technology Llc Refreshing data in a data storage device
US7724279B2 (en) * 2003-09-22 2010-05-25 Broadcom Corporation O/S application based multiple device access windowing display
US8400568B2 (en) * 2003-09-22 2013-03-19 Broadcom Corporation Multiple device access windowing display
US7706777B2 (en) * 2003-09-23 2010-04-27 Broadcom Corporation Secure user interface in a shared resource environment
US8821285B2 (en) * 2003-11-03 2014-09-02 Intel Corporation Gaming interface techniques for media centers
US7984468B2 (en) 2003-11-06 2011-07-19 United Video Properties, Inc. Systems and methods for providing program suggestions in an interactive television program guide
KR100612200B1 (ko) 2004-03-08 2006-08-16 삼성전자주식회사 콤보시스템
US7525600B2 (en) * 2005-01-14 2009-04-28 Broadcom Corporation Single integrated high definition television (HDTV) chip for analog and digital reception
FR2881602B1 (fr) * 2005-02-01 2007-07-13 Awox Sa Procede et dispositif d'edition de programme audiovisuel
US7788266B2 (en) 2005-08-26 2010-08-31 Veveo, Inc. Method and system for processing ambiguous, multi-term search queries
US9113107B2 (en) 2005-11-08 2015-08-18 Rovi Guides, Inc. Interactive advertising and program promotion in an interactive television system
US20070120949A1 (en) * 2005-11-22 2007-05-31 Inventec Multimedia & Telecom Corporation Video, sound, and voice over IP integration system
US8613024B2 (en) 2005-12-13 2013-12-17 United Video Properties, Inc. Cross-platform predictive popularity ratings for use in interactive television applications
US20070156521A1 (en) 2005-12-29 2007-07-05 United Video Properties, Inc. Systems and methods for commerce in media program related merchandise
US7774294B2 (en) 2006-03-06 2010-08-10 Veveo, Inc. Methods and systems for selecting and presenting content based on learned periodicity of user content selection
US8316394B2 (en) 2006-03-24 2012-11-20 United Video Properties, Inc. Interactive media guidance application with intelligent navigation and display features
KR101234156B1 (ko) * 2006-06-14 2013-02-15 삼성전자주식회사 항목 그룹화를 이용한 외부입력 리스트 제공방법 및 이를적용한 영상기기
TWI359614B (en) * 2006-06-20 2012-03-01 Via Tech Inc Pip processing apparatus and processing method the
TW200805016A (en) * 2006-07-11 2008-01-16 Teco Elec & Machinery Co Ltd A method and system for adjusting audio/video effect and mode in DTV
US8832742B2 (en) 2006-10-06 2014-09-09 United Video Properties, Inc. Systems and methods for acquiring, categorizing and delivering media in interactive media guidance applications
KR101316748B1 (ko) * 2007-01-15 2013-10-08 삼성전자주식회사 방송신호처리장치 및 그 제어방법
US7801888B2 (en) 2007-03-09 2010-09-21 Microsoft Corporation Media content search results ranked by popularity
US20090174728A1 (en) * 2008-01-04 2009-07-09 Vuzix Corporation Methods of and systems for displaying selected portions of split screen displays
US8671429B1 (en) 2008-09-30 2014-03-11 The Directv Group, Inc. Method and system for dynamically changing a user interface for added or removed resources
US9710055B1 (en) 2008-09-30 2017-07-18 The Directv Group, Inc. Method and system for abstracting external devices via a high level communications protocol
US8291247B1 (en) 2008-09-30 2012-10-16 The Directv Group, Inc. Method and system for predicting use of an external device and removing the external device from a low power mode
US9494986B1 (en) 2008-09-30 2016-11-15 The Directv Group, Inc. Method and system for controlling a low power mode for external devices
US9049473B1 (en) * 2008-09-30 2015-06-02 The Directv Group, Inc. Method and system of processing multiple playback streams via a single playback channel
US9426497B1 (en) 2008-09-30 2016-08-23 The Directv Group, Inc. Method and system for bandwidth shaping to optimize utilization of bandwidth
US9148693B1 (en) 2008-09-30 2015-09-29 The Directv Group, Inc. Method and system of scaling external resources for a receiving device
US10063934B2 (en) 2008-11-25 2018-08-28 Rovi Technologies Corporation Reducing unicast session duration with restart TV
KR101562676B1 (ko) * 2009-03-31 2015-10-22 주식회사 알티캐스트 멀티디코더 기반 채널 서핑 서비스 제공 방법 및 시스템
KR101570696B1 (ko) * 2009-05-29 2015-11-20 엘지전자 주식회사 영상표시장치 및 그 동작방법
US9237296B2 (en) * 2009-06-01 2016-01-12 Lg Electronics Inc. Image display apparatus and operating method thereof
KR101551212B1 (ko) * 2009-06-02 2015-09-18 엘지전자 주식회사 영상표시장치 및 그 동작방법
US9166714B2 (en) 2009-09-11 2015-10-20 Veveo, Inc. Method of and system for presenting enriched video viewing analytics
US8359616B2 (en) 2009-09-30 2013-01-22 United Video Properties, Inc. Systems and methods for automatically generating advertisements using a media guidance application
KR101190748B1 (ko) * 2010-02-03 2012-10-12 엘지전자 주식회사 태양전지 모듈의 모니터링 기능을 갖는 방송신호수신기
US9122701B2 (en) 2010-05-13 2015-09-01 Rovi Guides, Inc. Systems and methods for providing media content listings according to points of interest
KR101727317B1 (ko) * 2010-12-27 2017-04-14 삼성전자 주식회사 디스플레이장치 및 그 제어방법
WO2012094564A1 (en) 2011-01-06 2012-07-12 Veveo, Inc. Methods of and systems for content search based on environment sampling
JP5923815B2 (ja) * 2011-02-07 2016-05-25 Nltテクノロジー株式会社 映像信号処理回路、該処理回路に用いられる映像信号処理方法、及び画像表示装置
US9154813B2 (en) 2011-06-09 2015-10-06 Comcast Cable Communications, Llc Multiple video content in a composite video stream
US8526609B1 (en) 2011-06-23 2013-09-03 Bby Solutions, Inc. Method for real-time compositing of encrypted video streams without decryption
KR101271996B1 (ko) 2011-09-02 2013-06-05 엘지전자 주식회사 외부기기 리스트 제공방법 및 그를 이용한 영상 표시 기기
US8805418B2 (en) 2011-12-23 2014-08-12 United Video Properties, Inc. Methods and systems for performing actions based on location-based rules
KR20130096948A (ko) * 2012-02-23 2013-09-02 한국전자통신연구원 이동 단말기 화면의 실시간 압축 장치 및 그 방법
US20140195334A1 (en) 2013-01-10 2014-07-10 United Video Properties, Inc. Systems and methods for optimizing data driven media placement
US9848276B2 (en) 2013-03-11 2017-12-19 Rovi Guides, Inc. Systems and methods for auto-configuring a user equipment device with content consumption material
US9794496B2 (en) * 2014-08-12 2017-10-17 High Sec Labs Ltd Meeting room power and multimedia center device
CN105530444B (zh) * 2014-09-30 2019-08-23 三亚中兴软件有限责任公司 检测相同制式的视频信号的方法、装置及视频会议系统
US10091549B1 (en) 2017-03-30 2018-10-02 Rovi Guides, Inc. Methods and systems for recommending media assets based on the geographic location at which the media assets are frequently consumed

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR940005016Y1 (ko) * 1991-03-13 1994-07-25 삼성전자 주식회사 비디오테이프 장치의 기록/재생 신호 동시표시회로
JPH0638128A (ja) * 1992-06-19 1994-02-10 Sony Corp 映像表示装置
JP3158364B2 (ja) * 1992-10-13 2001-04-23 ソニー株式会社 電子機器
EP0603535A1 (en) * 1992-11-23 1994-06-29 Thomson Consumer Electronics, Inc. Tuner signal switching apparatus
JPH06311449A (ja) * 1993-02-26 1994-11-04 Sony Corp テレビジョン受像機
JPH06292148A (ja) * 1993-03-30 1994-10-18 Sony Corp 倍速映像表示装置
JPH0799616A (ja) * 1993-09-27 1995-04-11 Sony Corp テレビ受像機
US5563665A (en) * 1993-12-29 1996-10-08 Chang; Darwin Video signal controller for use with a multi-sync monitor for displaying a plurality of different types of video signals
MY114897A (en) * 1994-10-25 2003-02-28 Thomson Consumer Electronics Use of audio processing channel in a television receiver during a multipicture mode of operation
US5604544A (en) * 1995-05-31 1997-02-18 International Business Machines Corporation Video receiver display of cursor overlaying video
US5539478A (en) * 1995-05-31 1996-07-23 International Business Machines Corporation Video receiver display and three axis remote control
US5548340A (en) * 1995-05-31 1996-08-20 International Business Machines Corporation Intelligent television receivers combinations including video displays, and methods for diversion of television viewers by visual image modification
US5539479A (en) * 1995-05-31 1996-07-23 International Business Machines Corporation Video receiver display of cursor and menu overlaying video

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100579326B1 (ko) * 1998-07-27 2006-08-03 엘지전자 주식회사 다입력비디오신호합성방법및장치
KR100796752B1 (ko) * 2001-08-31 2008-01-22 삼성전자주식회사 영상 디스플레이 장치
US8176517B2 (en) 2003-11-07 2012-05-08 Thomson Licensing Automatic display of new program information during current program viewing

Also Published As

Publication number Publication date
CA2191631A1 (en) 1997-08-14
GB2310558A (en) 1997-08-27
KR970064204A (ko) 1997-09-12
CA2191631C (en) 2001-01-30
US5801785A (en) 1998-09-01
GB9702455D0 (en) 1997-03-26

Similar Documents

Publication Publication Date Title
KR100234653B1 (ko) 비디오 디스플레이 시스템 및 영상 이미지 디스플레이 방법
EP0746149B1 (en) Diversions for television viewers
US5737028A (en) Previous channel listing with cursor controlled user interface for television video displays
EP0746153B1 (en) Video receiver display of video overlaying menu
US5539479A (en) Video receiver display of cursor and menu overlaying video
US5652630A (en) Video receiver display, three axis remote control, and microcontroller for executing programs
US5604544A (en) Video receiver display of cursor overlaying video
US5539478A (en) Video receiver display and three axis remote control
US5606374A (en) Video receiver display of menu overlaying video
US5657091A (en) Video display controller, user interface and programming structure for such interface
US6011546A (en) Programming structure for user interfaces
US5566290A (en) Multi-media device
EP1094664B1 (en) Content programmer control of video and data display using associated data
US5765197A (en) Method and system for authentication of a memory unit for a computer system
US20070143789A1 (en) Display processing device
GB2310335A (en) Video display system with picture-in-picture facility
CA2176630C (en) Video receiver display of cursor and menu overlaying video
JPH06105248A (ja) 電子機器

Legal Events

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

Payment date: 20070827

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee