KR100340622B1 - 프레임버퍼내에고속멀티-컬러저장장소를제공하기위한방법및장치 - Google Patents

프레임버퍼내에고속멀티-컬러저장장소를제공하기위한방법및장치 Download PDF

Info

Publication number
KR100340622B1
KR100340622B1 KR1019950702535A KR19950702535A KR100340622B1 KR 100340622 B1 KR100340622 B1 KR 100340622B1 KR 1019950702535 A KR1019950702535 A KR 1019950702535A KR 19950702535 A KR19950702535 A KR 19950702535A KR 100340622 B1 KR100340622 B1 KR 100340622B1
Authority
KR
South Korea
Prior art keywords
color value
color
array
data
registers
Prior art date
Application number
KR1019950702535A
Other languages
English (en)
Other versions
KR950704744A (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 KR950704744A publication Critical patent/KR950704744A/ko
Application granted granted Critical
Publication of KR100340622B1 publication Critical patent/KR100340622B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/02Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the way in which colour is displayed
    • G09G5/022Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the way in which colour is displayed using memory planes
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/39Control of the bit-mapped memory
    • G09G5/393Arrangements for updating the contents of the bit-mapped memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Image Input (AREA)

Abstract

출력 디스플레이 장치상에서 그래픽 데이타의 디스플레이를 가속시키기 위한 프레임 버퍼는 각각의 컬러 값 레지스터가 프레임 버퍼로 기록되기 전에 컬러 값으로 로드되는 한쌍의 컬러 값 레지스터를 갖는다. 버스로 부터, 제 1컬러 값 레지스터로 부터, 제 2컬러 값 레지스터로 부터 혹은 제 1 및 제 2컬러 값 레지스터로 부터 동시에 픽셀 데이타를 선택하기 위한 선택수단이 제공된다. 데이타가 컬러 값 레지스터로 부터 프레임 버퍼로 기록되었을때, 데이타는 다수의 픽셀 위치로 동시에 기록될 수 있다.

Description

프레임 버퍼내에 고속 멀티- 컬러 저장장소를 제공하기 위한 방법 및 장치
제 1도는 본발명을 포함하는 컴퓨터 시스템을 도시하는 블록도,
제 2도는 종래기술에 따라 구성된 프레임 버퍼를 도시하는 블록도,
제 3도는 본발명에 의해 성취된 가속을 이해하는데 유용한 일련의 타이밍도,
제 4도는 본발명을 구현하도록 설계된 프레임 버퍼회로의 더욱 상세한 블록도,
제 5도는 제 4도의 프레임 버퍼회로에서 픽셀위치를 선택하는 배열의 일부를 도시하는 도,
제 6도는 본발명의 동작을 도시하는 일련의 타이밍 도,
제 7도는 본발명의 실행방법을 도시하는 흐름도.
(발명의 배경)
(발명의 분야)
본발명은 컴퓨터 시스템에 관한 것이며, 더욱 상세히는 프레임 버퍼내의 저장장소로의 데이타 기록을 가속시키기 위한 방법 및 장치에 관한 것이다.
(종래기술의 역사)
데스크 탑 컴퓨터의 성능을 증가시키는데 있어서 수반된 중요한 문제점 중의 하나는 출력 디스플레이장치로 전송되는 데이타의 속도를 증가시키는 방법을 모색해 왔다는 것이다. 현재 이용가능한 데이타 표현의 다수의 다양한 형태는 대량의 데이타가 전송되어지는 것을 필요로 한다. 예를들면, 컴퓨터 출력 디스플레이 모니터가 1024 x 780 픽셀이 스크린상에서 디스플레이되며 각각의 픽셀을 정의하기 위해 32비트가 사용되는 컬러 모드에서 동작한다면, 2500만 비트를 초과하는 전체정보가 디스플레이되는 각각의 정보프레임으로써 스크린에 전송되어져야 한다. 전형적으로, 매초마다 60개 프레임이 디스플레이되며 따라서 15억 비트가 매초 디스플레이로 전송되어져야 한다. 이것은 매우 상당한 양의 처리능력은 필요로 한다. 일반적으로, 디스플레이로의 이러한 데이타 전송은 전체적으로 컴퓨터의 동작을 느리게한다.
디스플레이의 데이타 전송처리 속도를 증가시키기 위해, 다양한 가속회로가 발명되어 왔다. 일반적으로, 이 회로는 데이타를 디스플레이로 전송하는데 필요한 다양한 기능을 성취하기 위해 컴퓨터의 중앙처리기와 필요를 경감시키도록 응용되어 졌다.
본질적으로, 이 가속기는 중앙처리기가 수행하는데 일반적으로 필요한 다양한 동작을 갖는다. 예를들면, 스크린상의 한 위치로 부터 다른 위치로의 데이타의 블록전송은 스크린상에 전송되어지는 픽셀데이타와 각각의 라인이 판독되고 새로운 라인으로 재기록 되어질 것이 요구된다. 디스플레이의 윈도우 영역에 정보를 저장하는 것은 각각의 윈도우 부분을 위해 이용가능한 데이타가 이 윈도우 부분내에서적합하게 되도록 클립되어지고 디스플레이의 다른 부분에 중복기록되지 않을 것이 요구된다.
그 밖의 다수의 기능들은 디스플레이상의 윈도우내의 화상(image) 이 클리어되거나 약간 이동되어질때 다양한 벡터의 발생이 요구된다. 중앙처리장치에 의해 수행되어졌을 때, 이러한 모든 동작들은 중앙처리장치가 이용할 수 있는 시간의 상당부분을 필요로 한다. 이러한 반복적인 정렬(sort) 기능은 그래픽 가속기에 성취될 수 있음으로써 중앙처리기의 부담을 경감시킨다. 일반적으로, 다수와 픽셀을 한번에 취급하는 동작이 그래픽 가속기에 의해 기계적으로 행해진다면, 디스플레이 속도면에서 가장 큰 증가를 얻을 수 있음이 알려졌다.
전형적인 프레임 버퍼는 이후에 정규모드로 참조되는 모드에서 기록된다. 정규모드에서, 프레임 버퍼내의 각각의 픽셀위치는 개별적으로 주소지정되고 검색되며; 각각의 픽셀 데이타는 데이타 버스에 의해 개별적으로 주소지정된 위치로 전송된다. 예를들면, 32 컨덕터 데이타 버스를 사용하여, 한 픽셀을 정의하는 32비트가 버스에 위치되어 프레임버퍼 메모리내의 위치로 전송될 수 있다. 만일 컴퓨터가 32비트 컬러 모드에서 기능한다면, 이 데이타는 한개 픽셀을 정의하며; 16비트 컬러 모드에서 기능한다면 2개의 픽셀을; 8비트 컬러 모드에서 기능한다면 4개의 픽셀을 정의한다.
만일 프레임 버퍼내에 한번에 한개 (혹은 두개, 혹은 4개) 픽셀이 주소지정된다면, 프레임 버퍼내의 각각의 픽셀은 상이한 개별적인 컬러에 의해 표현될 수 있다. 그러나, 이 동작 정규모드는 매우 느리다.
텍스트가 사용자에 의해 서류(document)에 기록되거나 스크린에 기록될때, 각각의 픽셀은 키의 조작에 의해 영향을 받으며 따라서 픽셀 정보가 프레임 버퍼내에 위치되는 속도는 제한되지 않는다. 그러나, 기록 정규모드를 개별적으로 사용하여 각각의 픽셀을 표현할 필요가 있는 그래픽 렌더링장치에 의해 수행되는 많은 조작은 동작을 매우 느리게 한다. 예를들면, 텍스트 파일이 디스플레이의 윈도우내에서 먼저 개방되어질 때, 개별적인 픽셀의 기록은 동작을 매우 느리게 한다. 동일하게 텍스트가 스크롤 되었을 때, 개별적인 픽셀 기록은 동작을 매우 느리게 한다.
이러한 이유로 인해, 프레임 버퍼를 위한 기록 컬러 블록모드가 발명되어 왔다. 이 컬러 블록 모드에서, 데이타 버스에 전송되는 데이타는 픽셀 값을 나타내는 것이 아니라 픽셀이 기록되어져야 하는 것인지 아닌지를 의미하는 제어신호를 나타낸다. 프레임 버퍼의 일부분인 컬러 값 레지스터는 픽셀 위치가 제어신호에 의해 인에이블 되었다면 픽셀 위치로 기록되는 컬러 값을 저장한다. 인에이블 되지 않은 픽셀 위치에는 아무것도 기록되지 않는다. 이 동작 컬러 블록모드는 컬러 값 레지스터에 저장된 한개 컬러를 데이타 버스상의 컨덕터와 동일한 수 만큼의 픽셀 위치로 동시 기록을 허용한다.
컬러 값 레지스터를 가지고 이 동작 컬러 블록모드를 사용하는 것은 속도가 모자라는 가장 명확한 다수와 조건하에서도 프레임 버퍼로의 기록 속도를 증가시킨다.
불행히도, 이 동작모드는 다수의 제한사항을 가진다. 예를들면, 디스플레이의 임의의 윈도우에 있는 데이타로 수행되는 전형적인 동작은 단지 두개 컬러의 조작만을 필요로 한다. 예를들면, 텍스트가 스크린에 기록되었을 때, 각각의 문자의 컬러 및 이 문자를 둘러싸는 배경 컬러는 디스플레이상의 화상을 표현하기 위해 프레임 버퍼내에 저장된 픽셀을 변화시키는 것에 의해 조작된다. 이 두개의 컬러가 기록되지 않는다면, 덱스트를 위한 어떠한 윤곽도 제공되지 않는다. 디스플레이를 위한 데이타를 제공하는 소프트웨어 및 이 데이타의 조작을 가속하는 다양한 그래픽 렌더링장치 양자는 한번에 두개 컬러를 조작할 수 있으며 일반적으로 그렇게 조작한다. 그러나, 데스크 탑 컴퓨터에서 이용가능한 프레임 버퍼는 다수의 픽셀이 동시에 주소지정될 수 있는 컬러 블록 모드에서 한번에 단지 한개 컬러만을 변화시킬 수 있을 뿐이다.
따라서, 현대의 렌더링장치가 데이타 조작 속도를 증가시킬지라도, 이 동작 블록모드에서 데이타가 표현되어졌을 때 한번에 한개 컬러만을 수용할 수 있는 프레임 버퍼에서 데이타 표현은 느리다. 이러한 문제는 각각의 시간에 상이한 컬러가 픽셀 그룹을 위해 사용되고, 컬러 값 레지스터는 뉴 컬러가 사용될 수 있기 전에 시간을 소비하는 동작에서 올드 컬러 값으로 부터 뉴컬러 값으로 갱신되어져야 하기 때문에 특히 중요하다. 따라서, 배경 컬러가 디스플레이의 제 1행을 위한 일 동작에서 맨 먼저 컬러 값 레지스터에 위치되어져야 한다. 이 컬러의 픽셀은 프레임 버퍼로 기록되어져야 한다. 그후, 컬러는 레지스터내에서 변화되어져야 하며, 전경 컬러의 픽셀은 제 2기록동작에서 표현된다. 픽셀의 다음 행이 프레임 버퍼에 기록되어졌을 때, 전체 동작이 또다시 반복되어져야 한다. 프레임 버퍼의 각각의 행을 위한 동일한 동작이 반복되어져야 하는 필요는 픽셀 데이타가 기록될 수 있는 속도를 상당히 느리게 한다.
(발명의 요약)
그러므로 본발명의 목적은 적어도 2개 컬러를 프레임 버퍼로 동시에 기록될 수 있도록 하는 것이다.
본발명의 더욱 상세한 또다른 목적은 프레임 버퍼상에 컬러 값 레지스터를 재로드할 필요없이 다수의 컬러를 나타내는 데이타가 기록되어질 수 있는 개선된 프레임 버퍼를 제공하는 것이다.
본발명의 이러한 목적 및 다른 목적은 출력 디스플레이 장치상에 그래픽 데이타의 디스플레이를 가속시키는 프레임 버퍼내에서 실현되며 이 프레임 버퍼는 각각의 컬러 값 레지스터가 컬러 값이 프레임 버퍼에 기록되기 전에 로드될 수 있는 한쌍의 컬러 값 레지스터를 포함한다. 버스로 부터, 제 1컬러 값 레지스터로 부터, 제 2컬러 값 레지스터로 부터, 혹은 제 1 및 제 2컬러 값 레지스터로 부터 동시에 픽셀 데이타를 선택하는 선택수단이 제공된다. 데이타가 컬러 값 레지스터로 부터 기록되어 졌을때, 데이타는 동시에 다수의 픽셀 위치로 기록되어질 수 있다.
본발명의 이러한 목적 및 다른 목적과 특징들은 여러 관점을 통한 명칭들과 같은 것에 의해 구성요소들이 참조되는 도면을 따르는 상세한 설명과 함께 더욱 잘 이해될 것이다.
(주석 및 표기)
후술되는 상세한 설명의 일부는 컴퓨터 메모리내의 데이타 비트의 작동에 대한 기호 표시로 기술된다. 이들 설명이나 표현들은 정보처리 기술분야의 전문가들이 자기들의 작업내용을 다른 분야의 사람들에게 효과적으로 전달하기 위해 사용되는 수단이다. 이 동작들은 물리적인 양의 물리적 조작을 필요로 한다. 반드시는 아니지만 일반적으로 이들 양은 저장, 전달, 결합, 비교 또는 다른 조작이 가능한 전기 또는 자기신호의 형태를 취한다. 때때로 공통적인 사용을 위해 이들 신호를 비트, 값, 원소, 기호, 문자, 용어, 수자등으로 나타내는 것이 편리하다는 것이 알려져 있다. 그러나 이들 또는 유사한 용어들은 적당한 물리량과 연관되며, 이들 물리량에 적용되는 편의적인 레이블에 불과하다는 것을 알아야 한다. 더욱이, 수행되는 조작은 종종 가산, 비교등의 용어로 나타내며, 이것들은 조작자에 의해 수행되는 정신적 조작과 연관된다. 그러나, 조작자의 그러한 능력은 본발명의 일부를 구성하는 설명될 작동의 모든 경우에 있어서 필요하지도 바람직하지도 않다. 작동은 기계작동이다. 본발명의 작동을 수행하는 유용한 기계는 범용 디지탈 컴퓨터 또는 이와 유사한 장치를 포함한다. 모든 경우에서 컴퓨터를 작동하는 것의 방법 작동과 계산방법 그 자체는 구별되어야 한다. 본발명은 다른 원하는 물리신호를 발생시키기 위해 전기 또는 다른 (예를들면, 기계적, 화학적) 물리신호를 처리하는 컴퓨터와 작동을 위한 장치 및 방법에 관한 것이다.
(발명의 상세한 설명)
제 1도를 참조하면, 컴퓨터 시스템(10)이 도시되어 있다. 시스템(10)은 중앙처리기(11)의 동작을 위해 컴퓨터(10)에 제공된 다양한 명령어를 실행하는 중앙처리기(11)를 포함한다. 중앙처리기(11)는 컴퓨터(10)의 여러 구성성분으로 정보를 전달하도록 응용된 버스(12)에 결합된다. 본 명세서의 목적을 위해 버스(12)는 데이타 버스 및 어드레스 버스 모두를 나타내는 것으로 여겨진다. 또한 버스(12)에 연결된 주메모리(13)는 전원이 시스템(10)에 제공되는 주기동안 중앙처리기에 의해 사용되는 정보를 저장하기 위해 당업자에게 잘 알려진 방법으로 배열된 전형적인 동적랜덤 액세스 메모리로 구성된다. 시스템(10)에 전원이 없을 경우에 메모리 상태를 유지하기 위해 응용되어진 당업자에게 잘 알려진 다양한 메모리장치 (예를들어 전기적으로 프로그램 가능한 판독 전용 메모리장치(EPROM장치))를 포함하는 판독전용 메모리(14)도 버스(12)상에서 정보를 제공하기 위해 접속된다. 판독전용 메모리(14)는 전형적으로 기본적인 입력/출력 및 개시(start up) 프로세스와 같은 처리기(11)에 의해 사용되는 다양한 기본적인 기능들을 저장한다.
또한 장기(long term) 메모리(16)와 같은 다양한 주변 구성성분들이 버스(12)에 접속된다. 장기 메모리(16) (전형적으로, 전기 기계적 하드 디스크 드라이브) 의 구성 및 동작은 당업자에게 잘 알려져 있다. 프레임 버퍼(17)도 또한 버스(12)에 연결된다.
프레임 버퍼(17)는 출력장치상에서 픽셀위치를 정의하기 위해 모니터(18)와 같은 출력장치로 전달되는 데이타를 저장한다. 본 설명의 목적을 위해 프레임 버퍼(17)는 정보를 저장하기 위해 필요한 메모리셀의 여러 평면에 부가하여 주소지정회로, 감지(sensing) 증폭기, 컬러 조사(lookup) 테이블 (컬러색인이 사용되는), 디지털에서 아날로그로의 변환기 회로 및 출력 디스플레이로의 정보의 주사를 제어하는 회로와 같은 당업자에게 잘 알려진 다양한 회로를 포함하는 것으로 여겨질 수 있다. 제 1도에서, 프레임 버퍼(17)는 프레임 버퍼(17)에 설비되어져야 하는 그래픽 데이타와 고속 렌더링을 제공하기 위해 사용되는 그래픽 가속회로(15)와 같은 회로를 통하여 버스(12)에 접속된 것으로 도시되어 있다. 그래픽 가속회로(15)는 전형적으로 컴퓨터 시스템이 더욱 고속으로 동작하도록 다수의 시간소비 동작에 대한 중앙처리기의 부담을 경감한다.
제 2도는 종래기술에 따라 구성된 프레임 버퍼(17)를 도시한다. 전형적으로 이 프레임 버퍼는 출력 디스플레이상에서의 픽셀을 정의하는 정보를 저장하도록 설계된 동적 랜덤 액세스 메모리(24)를 포함한다. 상기 개괄된 바와 같이, 프레임 버퍼(17)로써 사용되는 랜덤 액세스 메모리가 자신의 정규모드 동작에서 액세스될때, 데이타는 데이타 버스(19)와 컨덕터 상에서 프레임 버퍼(17)로 또는 프레임 버퍼(17)로 부터 기록되거나 판독된다. 프레임 버퍼(17)가 기록되었을 때, 모든 데이타 컨덕터는 2진수 형식으로 전송된다. 32비트 데이타 버스(19)를 가진 전형적인 컴퓨터 시스템에서, 정보의 32비트는 프레임 버퍼 메모리로 기록되어질 수 있으며 32개 입력핀에 존재한다.
이 데이타는 동작의 특정 컬러모드에서 픽셀을 정의하기 위해 필요한 다수의 비트에 종속되는 하나 이상의 픽셀을 정의할 수 있다. 예를들면, 만일 이 동작모드가 8비트 컬러이면, 디스플레이되는 각각의 픽셀은 8비트 데이타를 필요로하며, 데이타 컨덕터상의 32비트 데이타는 각각의 기록 액세스에서 4개 픽셀을 정의할 수 있다.
이것은 디스플레이로 기록되어져야 할 픽셀 데이타로 프레임 버퍼를 채우는 비교적 느린 방법이다. 그러나 이것은 프레임 버퍼에 기록하는 전형적인 방법 (정규모드)이다.
이것은 프레임 버퍼로의 기록속도가 제한되지 않는 대부분의 사용자 데이타 엔트리 목록(entries) 을 위해 유용하다. 또한 다중색 화상(multicolored image)을 포함하는 페인트 파일이 먼저 개방되어 디스플레이로 이동되어질때와 같은, 윈도우가 다수와 픽셀을 조작하기 위한 2개 이상의 상이한 컬러를 포함하는 경우에도 유용하다.
그러나, 매우 많은 수와 픽셀을 조작하고 이 픽셀들이 상이한 컬러 값으로 개별적으로 기록되어질 필요가 없으며 디스플레이에 영향을 미치는 많은 동작들이 있다.
이러한 동작들은 예를들면 전체 디스플레이 또는 디스플레이의 한 윈도우를 클리어하는 것과 파일을 윈도우에 기록하는것 및 이와 유사한 동작들을 포함한다. 각각의 픽셀(혹은 2 혹은 4개 픽셀) 이 기록 정규모드에서와 같이 데이타 컨덕터를 사용하여 프레임 버퍼로 개별적으로 기록될때 프레임 버퍼 (혹은 프레임 버퍼의 일부)를 채우는 것은 느리기 때문에, 몇몇 프레임 버퍼는 또한 픽셀의 한개 크기(size)를 나타내는 모든 비트에 대한 액세스를 각각의 데이타 컨덕터가 제어하는 동작모드("컬러 블록모드" 로써 참조됨)를 허용하는 회로를 갖는다. 이 컬러블록 모드는 종래기술에서 16개의 상이한 컬러가 표현되어지는 것을 허용하는 4개 비트에 의해 각각의 픽셀이 전형적으로 나타내어지는 프레임 버퍼 어레이와 함께 사용되어 왔다. 이 모드는 레지스터에 저장된 한개 컬러 값이 프레임 버퍼 메모리내의 다수의 개별적인 픽셀 위치로 동시에 기록되어지게 한다. 이 블록기록 모드에서, 어레이에 기록된 데이타 컨덕터상의 정보는 특정 픽셀 위치를 나타내는 메모리 위치로의 기록을 인에이블 시키는데 사용된다.
이 컬러 값은 프레임 버퍼상의 컬러 값 레지스터에 저장되고 인에이블된 위치로 기록된다. 이것은 최대 데이타 버스상의 데이타 컨덕터의 수만큼의 픽셀 갯수가 한개 컬러로써 동시에 기록되어지게 한다.
제 2도는 프레임 버퍼(17), 다수의 데이타 입력 컨덕터를 갖는 데이타 버스(19) 및 컬러 값 레지스터(20)를 도시한다. 메모리 어레이(24)의 메모리셀에 픽셀 데이타로써 저장되는 4비트 컬러 값은 데이타 버스(19)의 컨덕터에 의해 컬러 값 레지스터(20)에 기록된다. 어드레스 버스상에 있는 행 디코드회로(21) 및 열 디코드회로(22)에 대한 어드레스는 기록되어질 픽셀의 특정 그룹을 선택한다. 블록 기록모드에서, 데이타 버스(19)의 데이타 컨덕터에 의해 프레임 버퍼(17)로 전송된 데이타는 기록되어질 픽셀의 위치를 나타낸다. 데이타 컨덕터상의 이러한 제어신호는 선택된 주소지정된 픽셀위치 중의 하나를 인에이블시키기 위해 열 디코드회로(22)로 전송된다. 데이타 버스(19)의 특정 데이타 컨덕터가 0 값을 전송한다면, 특정 픽셀 위치는 기록되지 않는다.
데이타 버스(19)의 데이타 컨덕터가 1 값을 전송한다면, 컬러 값 레지스터(20)로 부터의 4 비트 컬러 값은 픽셀 위치로 기록된다. 이러한 방식으로, 선택된 다수의 개별적인 픽셀중에서 선택된 픽셀은 컬러 값 레지스터(20)에 저장된 컬러 값을 사용하여 한번에 기록된다. 이 방식은 만일 동일 컬러를 사용하여 큰 영역의 조작을 수행하는 것이 바람직하다면 매우 유용한 조작이다. 예를 들면, 32비트 데이타 버스에 의해, 한번에 32개 픽셀을 액세스하는 데 있어서 디스플레이의 전체 윈도우에 배경 컬러를 기록하는 것에 의해 윈도우를 신속히 클리어시킬 수 있다. 이 모드는 또한 픽셀데이타 윈도우내에 적합하게 되도록 클립되어져야 한다. 이 방식은 또한 윈도우 외부의 픽셀 위치를 디스에이블 시키면서 윈도우내에 컬러를 기록시키기 위한 픽셀위치를 인에이블 시킴으로써 수행될 수 있다.
동작의 이러한 컬러블록 모드에 의한 중요한 문제점은 하나의 컬러로써 하나 이상의 픽셀이 동시에 기록되어질 수 있을지라도 프레임 버퍼가 단지 한번에 하나와 컬러만을 처리할 수 있을 뿐이라는 것이다. 상기한 바와 같이, 윈도우는 임의의 특정 응용을 디스플레이 하기 위해 두개 컬러를 사용한다. 픽셀 정보를 프레임 버퍼(17)로 공급하는 그래픽 가속장치 및 소프트웨어는 디스플레이의 동작속도를 증가시키기 위해 전형적으로 한번에 두개 컬러를 조작한다. 동작의 컬러블록 모드가 특히 픽셀 데이타가 디스플레이로 기록되어지는 속도를 증가시키기 위해 발명되어졌더라도, 이 모드는 한번에 한개 컬러에만 영향을 미칠 수 있다. 결과적으로, 전체 스크린이 이 컬러블록 모드를 사용하여 고속으로 클리어될 수 있는 반면에, 더욱 개선된 조작이 시스템 동작을 감소시킨다. 예를들면, 임의의 정보가 컬러블록 모드를 사용하여 프레임 버퍼에 기록될때, 제 1배경 컬러는 컬러 값 레지스터에 위치되며; 특정 윈도우의 전체 제 1열은 그후 버스폭과 동일한 수의 픽셀 그룹에 배경 컬러를 기록함으로써 클리어된다.
그후 전경 컬러 (전형적으로 정보를 전송하는)가 컬러 값 레지스터에 위치되며, 전경 픽셀은 동일한 방식으로 제 1행에 기록된다. 그후 배경 컬러가 또다시 컬러 값 레지스터에 위치되며, 특정 윈도우의 전체 제 2행이 클리어된다. 그후 배경 컬러는 컬러 값 레지스터내에서 전경컬러로 대치되며, 전경픽셀이 제 2행에 기록된다.
이러한 방식은 윈도우의 모든 행이 기록될때까지 계속된다. 이 방식은 시간을 소비하는 동작이긴 하지만 정규모드에서 픽셀을 표시하는 각각의 위치를 개별적으로 기록하는 것 보다 고속이다. 이 방식이 느린 커다란 이유는 디스플레이의 각 행에서 사용되는 전경 및 배경 컬러를 컬러 값 레지스터로 계속해서 재로드시킬 필요가 있기 때문이다.
제 3도는 제 2도의 종래기술에 의한 프레임 버퍼의 동작을 도시하는 타이밍도이다. 종래기술의 프레임 버퍼에서, 프레임 버퍼의 각각의 액세스는 전형적으로 120 나노초를 필요로 하는 행 어드레스 스트로브(RAS) 사이클 및 전형적으로 20나노초를 필요로 하는 열어드레스 스트로브(CAS) 사이클 모두가 수행되어질 것을 필요로 한다. 이 신호들은 제 3도의 상부에 2개 선으로 도시되어 있다. 제 1의 열 주소 스트로브 사이클은 단지 한개 열어드레스 스트로브 사이클을 필요로 하는 임의의 개별적인 액세스를 위한 시간이 120나노초가 되도록 행 어드레스 스트로브를 중첩할 수 있다.
이 두개 사이클은 프레임 버퍼내의 메모리 위치를 액세스할 뿐만아니라 컬러 값 레지스터를 로드하는 것과 같은 프레임 버퍼에 대한 다른 액세스를 하는데 필요하다.
결과적으로, 2개 컬러를 블록 기입모드를 사용하여 32픽셀 위치로 기록하는것은 다수의 시간 소비단계를 필요로 한다. 제 3도의 하부의 2개 라인은 이러한 단계를 도시한다. 배경 컬러를 컬러 값 레지스터에 로드하는 것은 전형적으로 120나노초의 제 1액세스를 필요로 한다. 이것은 또다른 (기록) 동작이 발생되어져야 할때 120나노초의 제 2의 조합 RAS/CAS 사이클이 이어져야 한다. 따라서, 컬러 값 레지스터에 저장된 배경 컬러를 기록하는 것은 32픽셀을 위해 최소한 120나노초의 RAS/CAS 사이클을 필요로 한다. 전경 컬러를 컬러 값 레지스터에 재로드시키는 것은 또다른 120나노초를 필요로 하며 전경 컬러를 기록하는 것은 또다른 120나노초를 필요로 한다.
따라서, 32픽셀을 기록하기 위한 전체 동작은 적어도 480나노초를 필요로 한다. 물론, 전체 행이 기록되어졌을 때, 블록기록 모드를 사용하여 기록하는 픽셀당 시간은 단축된다. 왜냐하면 각각의 행 및 동일 행에서 동일 컬러의 각각의 32개 픽셀 그룹에 대해 단지 두번 로드될 필요가 있는 컬러 값 레지스터는 기록을 위해 단지 20나노초의 추가를 필요로 한다. 한 행을 기록하는 것은 각각의 컬러로 기록된 각각의 32픽셀에 대해 단지 추가의 20나노초를 필요로 하기 때문에, 컬러가 로드되어지면 약 1240나노초 이상의 시간이 1024픽셀인 행을 기록하는데 필요하다.
각각의 행에 컬러 값 레지스터를 두번씩 재로드시키는데 필요한 시간 및 각각의 행 내의 각각의 32비트 위치로 두번씩 기록할 필요는 동작을 상당히 느리게 한다.
예를들면, 정규모드에서 32개와 8비트 픽셀을 기록하는 것은 기록된 각각의 4개 픽셀에 대해 120나노초를 필요로 하며 총 960나노초를 필요로 한다. 따라서,32개의 4비트 픽셀을 기록하기 위한 컬러블록 모드 동작은 정규모드에서 32개의 개별적인 4비트 픽셀을 기록하는 것보다, 30나노초/픽셀, 단지 약간 빠를 뿐이다. 정규모드에서의 전체 행을 기록하는 것은 각각의 픽셀이 여전히 동일한 30나노초를 필요로 하기 때문에 훨씬 느리다.
본발명은 적어도 두개의 개별적인 컬러 값 레지스터를 제공하는 개선된 프레임 버퍼 메모리를 제공한다. 본발명은 액세스 동안 다수의 픽셀을 나타내는 데이타를 포함하여 두개 컬러를 동시에 기록할 수 있다. 두개 컬러 값 레지스터가 이용가능하기 때문에, 본발명은 윈도우의 각 행의 기록동안 컬러 값 레지스터를 재로드시킬 필요를 제거한다. 사실상, 본발명은 전경 및 배경 컬러를 일정 불변하게 이용할 수 있기 때문에 윈도우가 기록되어지는 시간동안 컬러 값 레지스터를 재기록할 실제적인 어떠한 필요도 제거한다. 본발명은 동작의 컬러블록 모드를 사용하여 다른 조작들이 한개 기록 액세스에서 수행되어지고 또한 텍스트와 행이 기록되어지게 한다.
이용가능한 하나 이상의 컬러를 가짐으로써, 행에서 전경 및 배경컬러를 기록하기 위한 개별적인 액세스가 윈도우의 클립되지 않은 영역에서 필요하지 않도록 하기 위해 두개 컬러가 동시에 기록되어질 수 있다. 윈도우의 클립된 영역으로 기록할 때, 두개 액세스가 필요하지만 두개 컬러의 기록을 수행하기 위해 종래기술에서 요구되는 컬러 값 레지스터의 로딩은 제거된다. 적어도 두개 컬러 값 레지스터의 사용은 픽셀 데이타의 커다란 블록이 프레임 버퍼로 로드되는 속도를 상당히 증가시킨다. 더 많은 컬러 값 레지스터를 부가시키는 것에 의해, 디스플레이 동작 동안 이러한 레지스터를 재기록하기 위한 필요는 거와 완전히 제거된다.
제 4도를 참조하면, 본발명을 이해하는데 유용한 도면이 도시되어 있다. 제 4도는 프레임 버퍼(30)의 다양한 구성성분이 갖추어진 회로기판을 도시한다. 프레임 버퍼(30)는 동적 랜덤 액세스 메모리 어레이(32)를 제공하도록 배열된 전계효과 트랜지스터와 같은 장치를 포함할 수 있는 다수의 메모리셀을 포함한다. 어레이(32)를 구성하는 메모리셀의 배열은 당업자에게 잘 알려진 이론에 따라 발전되었다. 이 배열은 동작의 특정 모드에서 출력 디스플레이 장치상에서 표현되어져야 할 다수의 픽셀을 나타내기 위해 충분한 수의 주소지정 가능한 메모리셀을 제공하는데 응용된다. 예를들면, 어레이(32)에서 각각의 플레인은 256 행을 포함하며, 각각의 행은 1024 메모리셀을 포함하는 32플레인 (오직 제 1의 플레인만이 상세히 도시되어 있다) 을 포함할 수 있다.
이러한 배열은 컬러 출력 디스플레이 터미널상에서 512 × 512 모드의 32비트 컬러를 디스플레이 하기에 충분한 컬러데이타의 저장을 허용한다.
어레이(32)에 부가하여, 프레임버퍼(30)는 중앙처리기와 같은 제어기에 의해 제공되는 어드레스를 해독하고 출력 디스플레이상에서 표현되어질 수 있는 다양한 픽셀을 정의하도록 어레이(32)의 각각의 플레인내의 개별적인 셀(33)을 선택하기 위해 행 및 열 디코드회로(34 및 36)을 포함한다. 또한 프레임버퍼(30)의 일부분으로 포함되는 것으로는 어레이(32)에서 이용되어지는 데이타를 제공하도록 응용된 데이타 버스의 일부분이 되는 데이타 컨덕터(38)가 있다. 전형적으로, 32 데이타 컨덕터(38)가 제공되는데 이 숫자는 특정 컴퓨터 시스템에서 변경될 수 있다.
동작의 정규모드에서 프레임 버퍼(30)로 데이타가 기록되어졌을 때, 각각의 32비트 그룹은 출력 디스플레이상의 하나 이상의 픽셀위치에서 디스플레이 되는 하나 이상의 컬러 값을 정의한다. 따라서, 출력 디스플레이가 8비트 컬러모드에서 데이타를 디스플레이할때, 데이타 컨덕터(38)에 의해 전송되는 32비트는 정규 기록모드에서 디스플레이상에 4픽셀 위치를 정의한다. 반면에, 디스플레이가 32비트 컬러모드에서 데이타를 디스플레이할때, 데이타 컨덕터(38)의 32비트는 디스플레이상에서 한개 픽셀 위치를 정의하는 정보를 전송한다. 알수 있는 바와 같이, 버스의 데이타 컨덕터(38)중의 하나는 데이타 컨덕터(38)에 전송되는 데이타 비트가 어레이(32)의 플레인내의 적절한 메모리셀에 위치되어질 수 있도록 어레이의 각각의 플레인에서 전체 8개 멀티플렉서(42)에 접속된다. 각각의 멀티플렉서(42)는 선택된 동작의 모드에 종속하여 어레이(32)에 전송되어야 할 각각의 플레인내의 데이타의 소스를 선택한다. 따라서, 모드가 정규이면, 데이타 비트는 어레이의 플레인에 관한 데이타 컨덕터(38)로 부터 직접적으로 선택된다.
이 데이타 비트는 선택된 특정 열에 전송되며 이 특정 열 및 선택된 행에 기록된다. 한개 비트가 어레이의 32플레인의 각각에 기록될 수 있으므로, 컬러동작 모드에 종속되어 32비트가 한개의 32비트 픽셀, 2개의 16비트 픽셀, 혹은 4개와 8 비트 픽셀로써 버스 컨덕터(38) (각각의 플레인에 대해 하나)로 부터 기록될 수 있다.
제 4도에 도시된 실시예는 8 비트 컬러모드를 이용하는 시스템에서 사용되도록 특별히 응용된 본발명의 바람직한 실시예이다. 알수 있는 바와 같이, 이 시스템은 8 비트 컬러 동작을 위한 임의의 특정 모드를 제공하도록 응용되었다. 설명되는 바와 같이, 각각의 16 및 32비트 컬러 모드를 위한 특정모드의 추가는 본 명세서에 설명된 간단한 수정에 의해 제공되어질 수 있다. 이러한 목적을 위해, 이 시스템은 특정 기록 입력데이타를 선택하는 프레임 버퍼(30)의 각각의 플레인에서 8개의 개별적인 멀티플렉서(42)를 이용한다. 이 멀티플렉서(42)와 각각은 자신의 출력을 어레이의 특정 플레인의 8번째 컬럼 마다에 접속된 컨덕터의 전송 게이트(51)와 같은 스위치를 경유하여 출력신호를 제공하는 3상태 기록 드라이버(53)에 접속된다.
동작의 정규기록 모드에서, 특정 어드레스가 특정 행 및 열을 선택하기 위해 어드레스 버스에 전송된다. 어드레스 버스상의 이 신호는 RAS 신호의 하강에지에서 특정 행을 선택하며 어레이의 각각의 플레인내의 선택된 특정 행의 모든 메모리셀이 각각의 열내의 감지 증폭기(43)에 접속되어지게 한다. 이 동작은 감지증폭기(43)가 선택된 행의 각각의 메모리셀을 리프레시 시키는 원인이 된다. CAS 신호의 하강 에지에서, 열 디코드회로(37)의 적절한 스위치(47)에 인가된 열 주소는 기록되어질 각각의 플레인의 적절한 열을 선택한다.
본발명의 바람직한 실시예에서, 열 주소는 10비트이다. 10비트 열 주소 중에서 상위 값을 갖는 7개 비트는 8개와 인접한 열의 그룹을 선택하는데 사용된다.
각각의 멀티플렉서(42)에서 정규모드 제어신호는 플레인과 관련된 특정 컨덕터(38)상의 데이타 신호가 각각의 8개 멀티플렉서(42)에 의해 전송되어지게 한다. 멀티플렉서(42)에 의해 산출된 신호중의 하나는 증폭기(53)중의 하나에 의해 증폭되며 주소 지정된 메모리셀(33)에 전송된다. 열어드레스 신호의 하위 3 비트는 데이타 비트를 열중의 하나에 전송하는 증폭기(53)중의 하나를 선택한다. 각각의 데이타 컨덕터(38)는 선택된 행 및 열에서 메모리셀을 위한 개별적인 비트를 전송하기 때문에, 어레이의 각각의 플레인내의 적절한 열 및 행으로 픽셀 값 (혹은 값들)이 전송되어 진다.
동작의 컬러 블록 모드가 제어신호에 의해 지시되었을때, 데이타 컨덕터(38)는 픽셀 데이타를 전송하기 보단 래지스터(CO 및 C1)에 유지된 컬러 값이 기록되어져야 하는 어레이(32)내의 픽셀위치를 지시하는 인에이블 신호를 전송한다. 이 컬러 값은 로드 컬러 값 레지스터(LCR) 제어신호에 응답하여 프레임버퍼의 각각의 어레이 플레인의 데이타 컨덕터(38)로 부터 로드된다. 바람직한 본 실시예에서 두개 컬러 값 레지스터(CO 및 C1) 이 제공되었으므로, 전체 4개의 동작 컬러블록 모드가 가능하다. 이 모드들은 컬러 0, 모드, 컬러 1모드, 컬러 0 & 1모드, 컬러 1 & 0 모드로써 참조된다. 제 6도는 이 컬러 블록모드중의 임의의 모드를 사용하여 프레임 버퍼로 픽셀의 행을 기록하는 데 필요한 RAS 및 CAS 신호와 응용은 도시하는 타이밍도이다. 알수 있는 바와 같이, 디스플레이의 각행으로의 기록을 위해 컬러 값 레지스터를 로드할 필요를 단순히 감소시킴으로써 동작의 이러한 임의와 컬러블록 모드에 의해 실제적인 시간이 절약된다.
제 7도는 본발명에 따른 방법의 단계를 도시한다. 본 방법은 다음의 상세한 설명에서 논의된다.
동작의 컬러 0 모드에서, 만일 제어신호 값 1이 특정 데이타 컨덕터(38)에 전송된다면, 컬러 값 레지스터(CO)내의 1 값은 그 컨덕터(38)에 대한 주소 지정된픽셀을 정의하는 저장 위치에 기록된다. 컬러 값 레지스터(CO)내의 1 값은 또한 데이타 컨덕터(38)에 의해 1 제어 값이 전송되는 주소인 모든 다른 저장위치에 전송된다. 반면에 어떠한 컬러 값도 데이타 컨덕터(38)에 의해 0 제어 값이 전송되는 픽셀 위치로 기록되지 않는다. 따라서, 32개의 상이한 픽셀 위치는 한번의 동시 전송에 의해 영향을 받을 수 있으며, 0 값을 수신하는 픽셀위치는 변화되지 않는 반면에 1 값을 수신하는 픽셀 위치는 컬러 값 레지스터(CO)내의 값을 수신하기 위해 인에이블된다.
이것이 수행된 방법이 8 비트 컬러인 경우에 도시될 것이다. 컬러 값 레지스터(CO)가 이 레지스터에 제공된 32비트내에서 4번 반복되는 8 비트의 패턴으로 로드되어졌고 컬러 값 레지스터(C1)가 이 레지스터에 제공된 32비트내에서 4번 반복되는 8 비트의 또다른 패턴으로 로드되어졌다고 가정하면, 하나의 행 및 8개의 열이 상기한 방법으로 행 및 열 어드레스 디코드회로(34 및 36)를 통하여 어드레스 버스상의 어드레스에 의해 선택되어진다. 컬러블록 모드 0 이 선택되어졌다고 가정하면, 각각의 플레인상의 모든 8개 멀티플렉서(42)는 어레이에 대한 컬러 데이타의 소스로써 레지스터(CO)를 선택한다. 그후 특정 기록 드라이버(53)가 데이타 버스의 컨덕터(34)상에 존재하는 인에이블 신호에 따라 인에이블 된다.
이것이 수행된 방법이 제 5도에 도시되어 있다. 컨덕터(38)상에 존재하는 데이타는 픽셀 마스크 레지스터(55)로 전송된다. 이 픽셀 마스크 레지스터는 특정 픽셀로의 데이타 전송을 제어하는 모든 구동기(53)를 제어하는 데 사용된다. 이 예는 8 비트 컬러를 포함하는 것으로 여겨지고 제 1의 8개 열이 열 어드레스에 의해 선택되어지는 것으로 가정되기 때문에, 비트는 선택된 행의 제 1열 (열 0으로 표시됨)에 있으며 이 열의 제 1의 8개 플레인에 있는 제 1픽셀을 정의한다. 픽셀 마스크 레지스터(55)내의 제 1픽셀(P1)은 컬러를 컬러 값 레지스터(CO)로 부터 어레이내의 이 비트위치로 전송하도록 구동기(53)를 제어한다. 컨덕터(38)중의 제 2컨덕터가 0 값을 전송하고 이 값이 픽셀 마스크 레지스터(55)내에 저장되었다고 가정할때, 열 0의 다음 8개 플레인에 있는 비트 위치에 접속된 구동기(53)는 컬러값 레지스터(CO)에 있는 값이 이 비트 위치로 전송되지 않도록 디스에이블된다. 다른 비트 위치에 대한 제어도 제 5도에 도시된 바와 같은 동일한 방법으로 발생한다. 결과적으로, 하나의 행 및 8개 열이 선택됨으로써, 전체 32개의 8비트 컬러 픽셀이 컬러 값 레지스터(CO)에 저장된 값으로 동시에 기록될 수 있다.
이것은 종래기술의 프레임 버퍼에 사용되는 컬러블록 모드와 유사한 동작의 최고속 모드이며 스크린을 매우 고속으로 클리어시키는 데 사용되거나 혹은 윈도우 영역에 한개 컬러를 제공하는 데 사용될 수 있다. 예를들면, 폭이 8 비트이고, 1024×780 픽셀인 디스플레이를 위한 프레임 버퍼(30)는 개별적인 픽셀이 하나씩 차례를 프레임 버퍼(30)에 기록되는것 보다 약 32배 고속으로 클리어될 수 있다. 이 모드는 또한 컬러 값이 윈도우 영역내부와 픽셀 위치에 기록되어질 수 있고 윈도우 영역 외부의 픽셀위치가 무시되기 때문에 클리핑하는데 유용하다.
컬러 1 모드는 만일 1 값이 특정 데이타 컨덕터(38)상에서 전송된다면 컬러 값 레지스터(C1)에 있는 값이 이 특정 데이타 컨덕터(38)를 위해 주소 지정된 픽셀을 정의하는 저장위치로 기록되어지는 것을 제외하고는 컬러 0 모드와 동일하다.컬러 값 레지스터(C1)에 있는 값은 또한 데이타 컨덕터(38)에 전송된 1 값에 의해 인에이블된 주소들인 모든 다른 저장 위치에 전송된다. 반면에 데이타 컨덕터(38)상에서 0 이 전송되는 픽셀위치로 어떠한 컬러 값도 기록되지 않는다. 반복해서, 32개의 상이한 픽셀 위치가 한번의 동시 전송으로 영향을 받을 수 있으며 1 값을 수신하는 픽셀위치는 컬러 값 레지스터에 있는 값을 수신하도록 인에이블되는 반면에 0 값을 수신하는 픽셀 위치는 변화되지 않는다. 컬러 값 레지스터(C1)로 부터 데이타를 기록하는 방법은 컬러 값 레지스터(CO)에 대해 설명된 것과 본질적으로 동일하며 제 5도를 재검토함으로써 이해될 것이다.
알수 있는 바와 같이, 윈도우의 임의의 부분을 조작하기 전에 로드될 수 있는 두개 컬러 값 레지스터(CO 및 C1)는 항상 이용가능하기 때문에, 일련의 픽셀 (예를 들면, 32)은 컬러 값 레지스터를 재로드할 어떠한 필요도 없이 두번의 액세스로 기록될 수 있다. 배경 컬러는 제 1액세스에 의해 기록될 수 있으며 전경컬러는 제 2액세스에 의해 기록될 수 있다. 이해되는 바와 같이, 이것은 클립된 부분이 윈도우 영역내의 몇몇 부분에 제 1컬러가 기록되는 동안에 무시되고 그후 동일한 클립된 부분이 윈도우 영역내의 다른 부분에 제 2컬러가 기록되는 동안에 무시되어질 수 있기 때문에 클리핑 및 두개 컬러가 두번의 액세스로 윈도우 에지에 기록되어지게 한다.
그러나, 클리핑이 불필요한 디스플레이의 부분에 컬러 모드 0 & 1 및 1 & 0을 사용하여 더욱 고속의 기록이 가능하다. 상기 지적한 바와 같이, 디스플레이로 기록하는 데 포함되는 대부분의 동작은 두개 컬러를 이용한다.
전형적으로, 렌더링 칩 (그래픽 가속기) 혹은 중앙처리장치는 클리핑이 필요한 곳을 지시하는 제어신호를 제공한다. 이 제어신호가 없는 경우에, 모드 0 & 1의 사용은 두개 컬러가 프레임 버퍼로 동시에 기록되어지게 한다. 이 모드에서, 데이타 컨덕터(38)상의 1 값은 컬러 값이 컬러 값 레지스터(C1)로 부터 제어된 픽셀로 기록되어지도록 지시하는 반면에 데이타 컨덕터(38)상의 0 값은 컬러 값이 컬러 값 레지스터(CO)로 부터 제어된 픽셀로 기록되어지도록 지시한다.
이것은 각각의 플레인을 위해 데이타 컨덕터(34)상에서 전송된 값과 특정 컬러 값 레지스터로 부터의 컬러 값이 멀티플렉서(42)에 의해 전송되는 특정 컬러 값 레지스터를 선택하기 위해 컬러 모드 제어 신호로써 픽셀 마스크 레지스터(55)에 저장된 값의 조합에 의해 성취된다. 예를들면, 컬러 모드 0 & 1 일때, 픽셀 마스크 레지스터(55) 내의 한 비트 위치에 있는 0 은 멀티플렉서(42)가 컬러 값 레지스터(CO)에 저장된 컬러 값을 선택하도록 하는 반면에 픽셀 마스크 레지스터(55)내의 한 비트 위치에 있는 1은 멀티플렉서(42)가 컬러 값 레지스터(C1)에 저장된 컬러 값을 선택하게 한다. 그후, 모드 0 & 1을 지시하는 컬러 모드 제어 신호는 어레이에 기록되어지도록 선택된 모든 픽셀을 제어한다. 이것은 전경 및 배경을 나타내는 두개 컬러가 클리핑을 필요로 하지않는 윈도우 영역의 부분으로 동시에 기록되어지는 것을 허용한다. 동일한 방법으로, 컬러 1 & 0 모드는 레지스터(C0 및 C1)내의 두개 컬러가 0 & 1 모드와는 반대위치로 어레이에 동시에 기록되어지게 하며, 이제 0 은 멀티플렉서(42)가 레지스터(C1)을 선택하게 하는 반면에 1 은 레지스터(C0)를 선택하게 한다.
프레임 버퍼로의 기록동작을 종래기술에 비해 훨씬 고속으로 실행하기 위해, 본발명은 훨씬 많은 다수의 추가 컬러 값 레지스터를 포함할 수 있다. 컬러 값 레지스터를 로드하지 않고 상이한 컬러를 갖는 다수의 상이한 윈도우가 기록되어지도록 이러한 레지스터는 추가의 컬러 값을 저장하도록 이용될 수 있다.
본발명의 바람직한 실시예는 출력 디스플레이상에서 8 비트 컬러 표현이 개시를 위해 최적화된다. 일련번호가 _________ 이고, 발명의 명칭이 "윈도우 동작을 위해 설계된 프레임 버퍼 시스템(FRAME BUFFER SYSTEM DESIGNED FOR WINDOWING OPERATIONS)"인 프림(Priem)씨등에 의해 본 명세서와 동일자로 출원된 특허출원에서 알수 있는 바와 같이, 예시된 실시예는 한개 혹은 두개 컬러가 멀티플렉서(42)의 수를 증가시키고 다른 구성성분들을 열선택라인에 접속시키는 것에 의해 각각 16비트 픽셀 및 32비트 픽셀로, 32개의 16비트 픽셀 혹은 32개의 32비트 픽셀이 동시에 기록되어지는 것을 허용하도록 확장된다.
결과적으로, 열 디코드회로에 의해 선택된 열의 수는 각각 16 및 32로 증가되며, 제어 신호의 다양한 상세 사항은 각각 더 많은 수의 비트를 갖는 32개의 열을 선택하도록 수정된다. 예를 들면, 픽셀 마스크 레지스터(55)는 컬러 표현의 상이한 각각의 유형에서 더 많은 수의 비트를 선택적으로 제어한다. 픽셀 마스크 레지스터(55)내의 각각의 비트에 의해 제어되는 비트 위치의 수는 또한 16비트 컬러 모드를 위해 16으로 증가되어져야 한다.
또한 CAS 신호 하강동안 픽셀의 8개 컬럼의 제 1그룹으로의 기록 및 CAS 신호 상승 동안 픽셀의 8개 컬럼인 제 2그룹으로의 기록에 의해 컬러 값 레지스터로부터 열 선택 라인으로의 경로의 수를 2배로 하지않고 16비트 컬러의 32비트 기록을 이용할 수 있다는 것을 주목해야 한다. 본발명에서 사용되는 두개 이상의 컬러 값 레지스터는 따라서 컬러 값 레지스터내 컬러 값을 변경시킬 필요성을 제거하며 또한 데이타 컨덕터상에 지정된 픽셀 위치에 대한 각각의 동작에서 전경 및 배경 컬러를 프레임 버퍼로 기록할 필요를 제거한다. 따라서, 고속 렌더링 칩의 사용에 의해 획득된 가속 비율은 컴퓨터의 프레임 버퍼 단계에 의해 유지될 수 있다.
본발명의 바람직한 실시예를 기초로 설명되었을지라도, 당업자에 의해 본발명의 범위 및 정신으로 부터 벗어남이 없이 다양한 수정 및 변경이 이루어질 수 있음이 인식될 수 있다. 그러므로 본발명은 다음의 특허청구범위를 기초로 판단되어야 한다.

Claims (19)

  1. 중앙처리장치,
    주 메모리,
    데이타 버스를 포함하는 버스 시스템,
    출력 디스플레이, 와
    버스 시스템을 출력 디스플레이에 접속시키는 프레임 버퍼로 구성되며,
    이 프레임 버퍼는,
    출력 디스플레이상에서 디스플레이되어져야 할 픽셀을 표시하는 데이타를 저장하는 메모리셀의 어레이,
    어레이내의 메모리셀을 선택하는 액세스 회로,
    제 1 컬러 값 레지스터,
    제 2 컬러 값 레지스터 및
    컬러 값 데이타를 제 1 컬러 값 레지스터 및 제 2 컬러 값 레지스터로부터 메모리 셀의 어레이내의 다수의 저장위치로 동시에 기록하는 회로로 이루어지는 것을 특징으로 하는 컴퓨터 시스템.
  2. 제1항에 있어서, 컬러 값 데이타를 제 1 및 제 2 컬러 값 레지스터로부터 어레이 내의 다수의 저장위치로 동시에 기록하는 회로는, 제 1 및 제 2 컬러 값 레지스터의 각각 및 데이타 버스에 접속된 다수의 멀티플렉서와,
    멀티플렉서가 제 1 및 제 2 컬러 값 레지스터 및 데이타 버스로부터 컬러 값을 선택하게 하는 제어신호의 소스로 구성되는 것을 특징으로 하는 컴퓨터 시스템.
  3. 제2항에 있어서, 멀티플렉서가 제 1 및 제 2 컬러 값 레지스터 및 데이타 버스로부터 컬러 값을 선택하게 하는 회로는 데이타 버스상에 제어신호를 전송하는 회로를 포함하는 것을 특징으로 하는 컴퓨터 시스템.
  4. 제1항에 있어서, 컬러 값 데이타를 제 1 및 제 2 컬러 값 레지스터로부터 어레이 내의 다수의 저장위치로 동시에 기록하는 회로는 제 1 및 제 2 컬러 값 레지스터중 하나로부터 어레이내의 다수의 저장위치로 동시에 기록하기 위해 접속된 회로를 포함하는 것을 특징으로 하는 컴퓨터 시스템.
  5. 제4항에 있어서, 제 1 및 제 2 컬러 값 레지스터중 한개의 컬러 값 레지스터로부터 어레이내의 다수의 저장위치로 기록하기 위해 접속된 회로는, 제 1 및 제 2 컬러 값 레지스터의 각각 및 데이타 버스에 접속된 다수의 멀티플렉서와,
    멀티플레서가 컬러 값 레지스터 및 데이타 버스로부터 컬러 값을 선택하게 하는 제어신호를 전송하는 회로로 구성되는 것을 특징으로 하는 컴퓨터 시스템.
  6. 제1항에 있어서, 컬러 값 데이타를 컬러 값 레지스터로부터 어레이내의 다수의 저장위치로 동시에 기록하는 회로는, 제 1 및 제 2 컬러 값 레지스터 모두로부터 어레이 내의 다수의 저장위치로 동시에 기록하기 위해 접속된 회로를 포함하는 것을 특징으로 하는 컴퓨터 시스템.
  7. 제6항에 있어서, 제 1 및 제 2 컬러 값 레지스터 모두로부터 어레이내의 다수의 저장위치로 동시에 기록하기 위해 접속된 회로는,
    제 1 및 제 2 컬러 값 레지스터의 각각 및 데이타 버스에 접속된 다수의 멀티플렉서와, 멀티플렉서가 컬러 값 레지스터 및 데이타 버스로부터 컬러 값을 선택하게 하는 제어신호를 전송하는 회로를 포함하는 것을 특징으로 하는 컴퓨터 시스템.
  8. 제1항에 있어서, 컬러 값 데이타를 제 1 및 제 2 컬러 값 레지스터로부터 어레이 내의 다수의 저장위치로 동시에 기록하기 위한 회로는 제 1 및 제 2 컬러 값 레지스터중 한개의 컬러 값 레지스터로부터 어레이내의 다수의 저장위치로 동시에 기록하는 수단과,
    제 1 및 제 2 컬러 값 레지스터 모두로부터 어레이내의 다수의 저장위치로 컬러 값이 동시에 기록되어지게 하는 제어신호를 전송하는 회로로 구성되는 것을 특징으로 하는 컴퓨터 시스템.
  9. 컴퓨터 시스템내의 데이타 버스 및 출력버스에 접속되도록 설계된 프레임 버퍼에 있어서, 출력 디스플레이상에서 디스플레이되어져야 할 픽셀을 표시하는 데이타를 저장하는 메모리셀의 어레이, 어레이내의 메모리셀을 선택하는 액세스 회로, 제 1 및 제 2 컬러 값 레지스터 및, 컬러 값 데이타를 컬러 값 레지스터로부터 어레이내의 다수의 저장위치로 동시에 기록하는 회로로 이루어지는 것을 특징으로 하는 프레임 버퍼.
  10. 제9항에 있어서, 제 1 및 제 2 컬러 값 데이타를 컬러 값 레지스터로부터 어레이내의 다수의 저장위치로 동시에 기록하는 회로는, 제 1 및 제 2 컬러 값 레지스터의 각각 및 데이타 버스에 접속된 다수의 멀티플렉서와,
    멀티플렉서가 컬러 값 레지스터 및 데이타 버스로부터 컬러 값을 선택하게 하는 제어신호의 소스로 구성되는 것을 특징으로 하는 프레임 버퍼.
  11. 제10항에 있어서, 멀티플렉서가 제 1 및 제 2 컬러 값 레지스터 및 데이타 버스로부터 컬러 값을 선택하게 하는 수단은 데이타 버스상에 제어신호를 전송하는 회로로 이루어진 것을 특징으로 하는 프레임 버퍼.
  12. 제9항에 있어서, 컬러 값 데이타를 제 1 및 제 2 컬러 값 레지스터로부터 어레이내의 다수의 저장위치로 동시에 기록하는 회로는 제 1 및 제 2 컬러 값 레지스터중 한개의 컬러 값 레지스터로부터 어레이내의 다수의 저장위치로 기록하기 위해 접속된 회로를 포함하는 것을 특징으로 하는 프레임 버퍼.
  13. 제12항에 있어서, 제 1 및 제 2 컬러 값 레지스터중 한개의 컬러 값 레지스터로부터 어레이내의 다수의 저장위치로 기록하기 위해 접속된 회로는, 제 1 및 제 2 컬러 값 레지스터의 각각 및 데이타 버스에 접속된 다수의 멀티플렉서와,
    멀티플레서가 제 1 및 제 2 컬러 값 레지스터 및 데이타 버스로부터 컬러 값을 선택하게 하는 제어신호를 전송하는 회로로 구성되는 것을 특징으로 하는 프레임 버퍼.
  14. 제9항에 있어서, 컬러 값 데이타를 제 1 및 제 2 컬러 값 레지스터로부터 어레이내의 다수의 저장위치로 동시에 기록하는 회로는, 제 1 및 제 2 컬러 값 레지스터 모두로부터 어레이내의 다수의 저장위치로 동시에 기록하기 위해 접속된 회로를 포함하는 것을 특징으로 하는 프레임 버퍼.
  15. 제14항에 있어서, 제 1 및 제 2 컬러 값 레지스터 모두로부터 어레이내의 다수의 저장위치로 동시에 기록하기 위해 접속된 회로는, 제 1 및 제 2 컬러 값 레지스터의 각각 및 데이타 버스에 접속된 다수의 멀티플렉서와, 멀티플렉서가 제 1 및 제 2 컬러 값 레지스터 및 데이타 버스로부터 컬러 값을 선택하게 하는 제어신호를 전송하는 회로를 포함하는 것을 특징으로 하는 프레임 버퍼.
  16. 제9항에 있어서, 컬러 값 레지스터로부터 어레이내의 다수의 저장위치로 컬러 값 데이타를 동시에 기록하기 위한 회로는, 제 1 및 제 2 컬러 값 레지스터중한개의 컬러 값 레지스터로부터 어레이내의 다수의 저장위치로 동시에 기록하는 수단과, 제 1 및 제 2 컬러 값 레지스터 모두로부터 어레이내의 다수의 저장위치로 동시에 기록하는 수단을 포함하는 것을 특징으로 하는 프레임 버퍼.
  17. 메모리셀의 어레이를 포함하는 프레임 버퍼로 기록하는 방법에 있어서,
    제 1 컬러 값을 프레임 버퍼의 제 1 컬러 값 레지스터로 기록하는 단계;
    제 2 컬러 값을 프레임 버퍼의 제 2 컬러 값 레지스터로 기록하는 단계; 및
    다수의 메모리셀에 동시에 기록하기 위하여 컬러 값을 선택하는 단계로 구성되는 것을 특징으로 하는 프레임 버퍼로 기록하는 방법.
  18. 제17항에 있어서, 제 1 및 제 2 컬러 값 레지스터를 재로드할 필요없이 다수의 메모리셀에 동시에 기록하기 위하여 또다른 컬러 값을 선택하는 단계를 더 포함하는 것을 특징으로 하는 프레임 버퍼로 기록하는 방법.
  19. 제17항에 있어서, 다수의 메모리셀에 동시에 기록하기 위하여 컬러 값을 선택하는 단계는 다수의 메모리셀중 상이한 메모리셀에 동시에 기록하기 위하여 두개의 컬러 값을 선택하는 단계로 이루어진 것을 특징으로 하는 프레임 버퍼로 기록하는 방법.
KR1019950702535A 1993-10-29 1994-10-27 프레임버퍼내에고속멀티-컬러저장장소를제공하기위한방법및장치 KR100340622B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US08/145,756 US5504855A (en) 1993-10-29 1993-10-29 Method and apparatus for providing fast multi-color storage in a frame buffer
US08/145756 1993-10-29
PCT/US1994/012361 WO1995012167A1 (en) 1993-10-29 1994-10-27 Method and apparatus for providing fast multicolor storage in a frame buffer

Publications (2)

Publication Number Publication Date
KR950704744A KR950704744A (ko) 1995-11-20
KR100340622B1 true KR100340622B1 (ko) 2002-10-11

Family

ID=22514400

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019950702535A KR100340622B1 (ko) 1993-10-29 1994-10-27 프레임버퍼내에고속멀티-컬러저장장소를제공하기위한방법및장치

Country Status (5)

Country Link
US (1) US5504855A (ko)
EP (1) EP0677193A4 (ko)
JP (1) JPH08505481A (ko)
KR (1) KR100340622B1 (ko)
WO (1) WO1995012167A1 (ko)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5539430A (en) * 1993-10-29 1996-07-23 Sun Microsystems, Inc. Pipelined read write operations in a high speed frame buffer system
DE69430296T2 (de) * 1993-10-29 2002-11-07 Samsung Semiconductor, Inc. Verschiebungsgeschwindigkeitserhöhung in einem rasterpuffer
DE69521741T2 (de) * 1994-05-03 2002-05-23 Sun Microsystems Inc Direktzugriffspeicher und System für Rasterpuffer
US5577193A (en) * 1994-09-28 1996-11-19 International Business Machines Corporation Multiple data registers and addressing technique therefore for block/flash writing main memory of a DRAM/VRAM
JPH08123953A (ja) * 1994-10-21 1996-05-17 Mitsubishi Electric Corp 画像処理装置
US5805175A (en) * 1995-04-14 1998-09-08 Nvidia Corporation Method and apparatus for providing a plurality of color formats from a single frame buffer
US5559749A (en) * 1995-05-11 1996-09-24 Micron Technology, Inc. Multi-bit block write in a random access memory
US5764963A (en) * 1995-07-07 1998-06-09 Rambus, Inc. Method and apparatus for performing maskable multiple color block writes
US6011727A (en) * 1998-08-26 2000-01-04 Micron Technology, Inc. Block write circuit and method for wide data path memory devices
JP2001051657A (ja) 1999-08-10 2001-02-23 Nec Saitama Ltd カラー液晶ディスプレイ
US6452600B1 (en) * 1999-10-28 2002-09-17 Nintendo Co., Ltd. Graphics system interface
JP4545294B2 (ja) * 2000-08-28 2010-09-15 株式会社サトー 2色プリンタ
US7133036B2 (en) * 2003-10-02 2006-11-07 Hewlett-Packard Development Company, L.P. Display with data group comparison
US8959452B2 (en) * 2011-10-11 2015-02-17 Texas Instruments Incorporated Method, system and computer program product for receiving information from a user

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4823302A (en) * 1987-01-30 1989-04-18 Rca Licensing Corporation Block oriented random access memory able to perform a data read, a data write and a data refresh operation in one block-access time

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4648077A (en) * 1985-01-22 1987-03-03 Texas Instruments Incorporated Video serial accessed memory with midline load
GB2180729B (en) * 1985-09-13 1989-10-11 Sun Microsystems Inc Method and apparatus for dma window display
US4752893A (en) * 1985-11-06 1988-06-21 Texas Instruments Incorporated Graphics data processing apparatus having image operations with transparent color having a selectable number of bits
US5046023A (en) * 1987-10-06 1991-09-03 Hitachi, Ltd. Graphic processing system having bus connection control capable of high-speed parallel drawing processing in a frame buffer and a system memory
JPS63204595A (ja) * 1987-02-20 1988-08-24 Fujitsu Ltd マルチプレ−ンビデオram構成方式
US4807189A (en) * 1987-08-05 1989-02-21 Texas Instruments Incorporated Read/write memory having a multiple column select mode
US5282177A (en) * 1992-04-08 1994-01-25 Micron Technology, Inc. Multiple register block write method and circuit for video DRAMs
US5319606A (en) * 1992-12-14 1994-06-07 International Business Machines Corporation Blocked flash write in dynamic RAM devices

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4823302A (en) * 1987-01-30 1989-04-18 Rca Licensing Corporation Block oriented random access memory able to perform a data read, a data write and a data refresh operation in one block-access time

Also Published As

Publication number Publication date
JPH08505481A (ja) 1996-06-11
US5504855A (en) 1996-04-02
EP0677193A1 (en) 1995-10-18
KR950704744A (ko) 1995-11-20
EP0677193A4 (en) 1996-07-31
WO1995012167A1 (en) 1995-05-04

Similar Documents

Publication Publication Date Title
KR970005392B1 (ko) 다중 열 선택모우드를 갖고 있는 해독/기입 메모리
KR100346357B1 (ko) 프레임버퍼용출력스위칭회로의구조
KR970011222B1 (ko) 비데오 랜덤 액세스 메모리(vram) 액서스 회로 및 방법
KR100340622B1 (ko) 프레임버퍼내에고속멀티-컬러저장장소를제공하기위한방법및장치
EP0677190B1 (en) Frame buffer system designed for windowing operations
JPH10505935A (ja) 改善されたメモリアーキテクチャ、及びこれを利用するデバイス、システム及び方法
JPH06138856A (ja) 出力ディスプレイ・システム
KR860002872A (ko) 화상메모리 주변장치
US5420609A (en) Frame buffer, systems and methods
KR100355070B1 (ko) 행방향 주소 스트로브 사이클을 갖지 않고 프레임버퍼에 영향을 미치는 동작을 제공하기 위한 방법 및 장치
US5539430A (en) Pipelined read write operations in a high speed frame buffer system
US5533187A (en) Multiple block mode operations in a frame buffer system designed for windowing operations
US5805133A (en) Method and apparatus for increasing the rate of scrolling in a frame buffer system designed for windowing operations
JP2794481B2 (ja) 表示システム
KR970000273B1 (ko) 퍼스널 컴퓨터에서의 한글처리장치
JPH07199907A (ja) 表示制御装置
JPH09204353A (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
LAPS Lapse due to unpaid annual fee