JP3114209B2 - 情報処理装置および表示部の高速化方法および表示制御ワンチップic - Google Patents

情報処理装置および表示部の高速化方法および表示制御ワンチップic

Info

Publication number
JP3114209B2
JP3114209B2 JP03007806A JP780691A JP3114209B2 JP 3114209 B2 JP3114209 B2 JP 3114209B2 JP 03007806 A JP03007806 A JP 03007806A JP 780691 A JP780691 A JP 780691A JP 3114209 B2 JP3114209 B2 JP 3114209B2
Authority
JP
Japan
Prior art keywords
memory
display
video memory
data
read
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Lifetime
Application number
JP03007806A
Other languages
English (en)
Other versions
JPH04211293A (ja
Inventor
幸二 竹田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP03007806A priority Critical patent/JP3114209B2/ja
Publication of JPH04211293A publication Critical patent/JPH04211293A/ja
Application granted granted Critical
Publication of JP3114209B2 publication Critical patent/JP3114209B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Memory System (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Dram (AREA)
  • Image Input (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は情報処理装置の表示部に
関するものであり、さらに詳しく言えばビデオメモリの
アクセスの高速化に関するものである。
【0002】本発明は既存のいかなる表示回路に対して
も適用されるものであり、その利用分野は非常に広い。
新たな表示回路を設計するのではなく、既存の表示回路
をほとんどそのまま利用し、これに簡単な回路(これを
ビデオアクセレータと呼ぶことによする)を追加するだ
けで、既存の表示回路の高速化を実現できる。
【0003】
【従来の技術】従来の最も一般的な情報処理装置の表示
部の構成を図2に示す。なお、本明細書の情報処理装置
においては、本発明を説明するの必要な部分のみにとど
め、本発明に直接関係しない部分については省略する。
【0004】図2の従来の情報処理装置において、中央
演算処理装置(以下、CPUと記す)10は表示部30
に接続されている。コマンドデコーダ20は、CPU1
0の実行するバスサイクルの種類を示す信号12をデコ
ードし、又アドレス情報も一緒にデコードして、情報処
理装置の各部に対するリードライト信号を作っている。
図2では、表示部30に対するリードライト信号(21
および22)以外は省略してある。CPU10のバス1
1はアドレスバスとデータバスを含んでいる。図2では
バス11には表示部30のみが接続されているが、実際
にはこの他に、数多くのメモリ装置や入出力装置が接続
されている。表示部30はビデオコントローラ40、表
示用VRAMアクセス調停回路50、表示用ビデオメモ
リ(以下表示用VRAMと記す)60およびディスプレ
イ装置70から構成されている。ビデオコントローラ4
0は表示用VRAM60からデータを取り出し、これを
表示すべきフォーマットに変換して表示制御信号42と
してディスプレイ装置70へ送る。表示制御信号42に
は、ディスプレイ装置70に写し出される画面情報の他
に、ディスプレイ装置70のタイミングを制御する信号
も含まれている。ビデオコントローラ40が表示用VR
AM60からデータを読み出す場合、表示用VRAMア
クセス調停回路50に対してリード信号(図2には示さ
れていない)を出す。調停回路50は、ビデオコントロ
ーラ40から表示用VRAM60へのアクセス要求(リ
ード信号)と、CPU10からの表示用VRAM60へ
のアクセス要求(リード信号、ライト信号)との調停を
取り、両者が衝突しないように調整している。CPU1
0とビデオコントローラ40からのアクセス要求が同時
に起こった場合、表示用VRAMアクセス調停回路50
はビデオコントローラ40を優先させ、ビデオコントロ
ーラ40が表示用VRAM60からデータを読み出すま
での間、CPU10を待たせている。
【0005】これは、ディスプレイ装置70上で一瞬な
りともゴミ(正しくないデータ)を表示させたくないた
めである。調停回路の種類によっては、CPUからのア
クセス(VRAMへのリード、ライト)を高速にするた
めにCPU側を優先させる方式もあるが、この方式で
は、両者のアクセス要求が同時に起こった場合にCPU
にアクセス権を与え、CPUがアクセス中はビデオコン
トローラは待たされて表示すべきデータが読みさせない
ため、その間ディスプレイ装置上にゴミがでてしまう。
最近はディスプレイ装置などのユーザーインターフェー
スの部分を重視する傾向が強く、ビデオコントローラ側
を優先する調停方式が非常に多い。図2の表示用VRA
Mアクセス調停回路50もこの方式を採用している。
【0006】したがって、図2において、CPU10が
表示用VRAM60に対してメモリリード又はメモリラ
イトコマンドを実行した場合、CPU10のバスサイク
ルにはいくつかのウェイトサイクルが挿入され、CPU
10のビデオメモリに対するアクセスは低速になってし
まう。
【0007】又、別の調停方式として、表示用VRAM
に対するアクセスの時間をあらかじめ割り当てておくと
いうものがある。たとえば、ビデオコントローラに4サ
イクル割り当て、次にCPUに1サイクル割り当てこれ
を繰り返す。この方式でも、やはりCPUは表示用VR
AMに対してアクセス(メモリリードおよびメモリライ
ト)を開始してから、CPUに割り当てられた時間まで
待たされるわけであり、アクセスは低速になってしま
う。
【0008】図2の説明にもどる。ビデオコントローラ
40のバス41はアドレスバスとデータバスを含んでい
る。表示用VRAM60のバス51には、CPUバス1
1と、ビデオコントローラバス41のうちの調停回路5
0によってアクセス権が与えられた方のバスが接続され
る。
【0009】次に、CPU10からの表示用VRAM6
0に対するアクセス(リードライト)について説明す
る。なお、本発明のポイントはこの点に関係している。
【0010】表示用VRAM60はCPU10から見た
とき、CPU10のメモリ空間上に置かれている。本構
成例では、このVRAM60のメモリアドレスを0A0
00H〜0BFFFFH(Hは16進数表示であること
を示す記号である)の128KBとしよう。信号21は
VRAM60へのメモリリード信号であり、信号22は
VRAM60へのメモリライト信号である。すなわち、
信号21はCPU10がアドレス0A0000H〜0B
FFFFHに対するメモリリード命令を実行したときア
クティブとなり、信号22はCPU10がアドレス0A
0000H〜0BFFFFHに対するメモリライト命令
を実行したときにアクティブとなる。
【0011】CPU10がVRAM60からデータをリ
ードしたり、又はVRAM60へデータをライトしたり
する場合、調停回路50に対して、VRAMリード信号
21又はVRAMライト信号22を出す。すると、調停
回路50はビデオコントローラ40からのアクセス要求
を調べ、ビデオコントローラ40からのVRAM60に
対するアクセスが終わり、CPU10にアクセス権が渡
されるまでCPU10を待たせる。これは調停回路50
がCPU10に対してウェイト信号を出すことによって
行なわれる(ウェイト信号は図には示していない)。調
停回路50はビデオコントローラ40側に優先権をもた
せており、又ビデオコントローラ40のVRAM60に
対するアクセス頻度はかなり高いため(高解像ビデオほ
どこの傾向が強い)、VRAM60へのアクセスはほと
んどビテオコントローラ40が占めており、CPU10
がアクセスできるのは、一定の周期の中で、あらかじめ
決められた一定の期間だけである。したがって、CPU
10からのVRAMアクセスの際に、CPU10にはか
なりのウェイト(数ウェイトから、場合によっては10
ウェイトをこえることもある)が入ってしまう。このた
め、情報処理装置内の表示の処理速度が低速になってし
まう。
【0012】次に、従来の情報処理装置の別の構成例を
図4に示す。これは図2の情報処理装置の表示部に対し
て、ライトバッファ155を追加して、ビデオメモリへ
のライトを高速化したものである。
【0013】図4の従来の情報処理装置において、中央
演算処理装置(CPU)110は表示部135に接続さ
れている。コマンドデコーダ120は、CPU110の
実行するバスサイクルの種類を示す信号112をデコー
ドし、又アドレス情報も一緒にデコードして、情報処理
装置の各部に対するリードライト信号を作り出してい
る。図4では、表示部135に対するリードライト信号
(121および122)以外は省略してある。バス11
3はCPU110のアドレスバスであり、バス114は
CPU110のデータバスである。図4ではバス11
3,114に表示部135のみが接続されているが、実
際にはこの他に、数多くのメモリ装置や入出力装置が接
続されている。表示部135はビデオコントローラ14
0、表示用アクセス調停回路150、ライトバッファ1
55、表示用VRAM160およびディスプレイ装置1
70から構成されている。ビデオコントローラ140は
表示用VRAM160からデータを取り出して、これを
表示すべきフォーマットに変換して、表示制御信号14
2としてディスプレイ装置170へ送る。表示制御信号
142にはディスプレイ装置170に移し出される画像
情報の他に、ディスプレイ装置170のタイミングを制
御する信号も含まれている。ビデオコントローラ140
が表示用VRAM160からデータを読み出す場合、調
停回路150に対してリード信号(図4には示されてい
ない)を出す。調停回路150はビデオコントローラ1
40からの表示用VRAM160へのアクセス要求(リ
ード信号)と、CPU110からのライトバッファ15
5を介しての表示用VRAM160へのアクセス要求
(リード要求156、ライト信号157)との調停を取
り、両者が衝突しないように調停している。ライトバッ
ファ155を介してCPU110とビデオコントローラ
140からのアクセス要求が同時に起こった場合、調停
回路150はビテオコントローラ140を優先させ、ビ
デオコントローラ140が表示用VRAM60からデー
タを読み出すまでの間、CPU110又はライトバッフ
ァ155を待たせている。これは、ディスプレイ装置1
70上に一瞬なりともゴミ(正しくはデータ)を表示さ
せたくないためである。調停回路の種類によっては、C
PUからのアクセス(VRAMへのリード、ライト)を
高速にするために、CPU側を優先させる方式もある
が、この方式では、両者のアクセス要求が同時に起こっ
た場合、CPUにVRAMへのアクセス権を与え、CP
Uがアクセス中はビデオコントローラは待たされ表示す
べきデータが読み出せないため、その間、ディスプレイ
装置上にゴミがでてしまう。最近はディスプレイ装置な
どのユーザーインターフェースの部分を重視する傾向が
強く、ビデオコントローラ側を優先する調停方式が非常
に多い。調停回路150もこの方式を採用している。バ
ス143はビデオコンテローラ140のアドレスバスで
あり、バス144はビデオコントローラ140のデータ
バスであり、バス144はビデオコントローラ140の
データバスである。ライトバッファ155はリード信号
出力156と、ライト信号出力157を持つ。バス15
8はライトバッファ155のアドレスバスであり、バス
159はライトバッファ155のデータバスである。
【0014】ライトバッファ155の機能を簡単に説明
しておく。CPU110が表示用VRAM160からデ
ータを読み出す場合、VRAM160のアドレスがバス
113に出力され、VRAMリード信号121がアクテ
ィブになる。バス113上のVRAMアドレス及びVR
AMリード信号121は、ライトバッファ155をその
まま通り抜けて、ライトバッファ155のアドレスバス
158及びライトバッファ155からのVRAMリード
信号出力156に至る。すなわち、VRAMリード時に
は、バス113とバス158及び、信号線121と信号
線156は直接接続されているのと同じである。信号1
56により調停回路150に対して、CPU110から
のVRAMアクセス要求(リード要求)を出してから、
これが調停回路150に許可され、表示用VRAM16
0のデータが読み出され、これがデータバス154とデ
ータバス159を通って、ライトバッファ155を通り
抜け(VRAMリード時にはデータバス159とデータ
バス114は直接に接続される)CPU110のデータ
バス114にたどりつくまでの間、CPU110にはウ
ェィトがかけられている。又、CPU110がデータを
表示用VRAM160に書き込む場合には、VRAMの
アドレスがバス113に出力され、VRAMに書き込む
べきデータがデータバス114に出力され、VRAMラ
イト信号122がアクティブになる。ライトバッファ1
55の中にはファーストインファーストアウトのバッフ
ァ(以下FIFOバッファと記す)があり、アドレスバ
ス113及びデータバス114上のVRAMアドレス及
びVRAMデータは、いったんこのFIFOバッファに
書き込まれる。CPU110からFIFOバッファへ書
き込みは、FIFOバッファがフルでない限りゼロウェ
ィトでよい。すなわち、ライトバッファ155の働きに
より、VRAMライト時にはCPU110にはウェィト
がかけられず、ゼロウェィトでFIFOバッファにデー
タを書き込み、そのあとCPU110はただちに次のコ
マンドを実行し始めることができる。ライトバッファ1
55にいったん書き込まれたVRAMアドレス及びVR
AMデータは、その後、ライトバッファのアドレスバス
158及びデータバス159に出力され、それと同時に
ライト信号157もアクティブになり、調停回路150
に対してアクセス要求(表示用VRAM160へのライ
ト要求)が出される。調停回路150はビデオコントロ
ーラ140側のVRAMアクセスが終るまでの間、ライ
トバッファ155からのVRAMライト要求を待たせ、
ビデオコントローラ140からのアクセスが終りしだ
い、データバス159上のデータをデータバス154を
介して表示用VRAM160へ書き込む。すなわち、ラ
イトバッファ155の機能は、CPU110からのVR
AMライト時に、アドレス及びデータをいったんライト
バッファ155中のFIFOバッファに取り込むことに
よって、CPU110にウェィトをかけないことであ
り、VRAMリード時は何の機能もしない。バス153
及びバス154は表示用VRAM160のアドレスバス
及びデータバスであり、ライトバッファ155のバス1
58,159とビデオコントローラバス143,144
のうちの、調停回路150によってVRAM160への
アクセス権が与えられた方のバスがこれに接続される。
【0015】次に、CPU110からの表示用VRAM
160に対するアクセス(リードとライト)について、
順を追って説明する。なお、本発明のポイントは、この
点にも関係している。
【0016】表示用VRAM160はCPU110から
見たとき、CPU110のメモリ空間上に置かれてい
る。本構成例では、このVRAM160のメモリアドレ
スを0A0000H〜0BFFFFHの128KBとし
よう。信号121はVRAM160へのメモリリード信
号であり、信号122はVRAM160へのメモリライ
ト信号である。すなわち、信号121はCPU110が
アドレス0A0000H〜0BFFFFHに対するメモ
リリード命令を実行したときアクティブとなり、又信号
122はCPU110がアドレス0A0000H〜0B
FFFFHに対するメモリライト命令を実行したときに
アクティブとなる。
【0017】CPU110がVRAM160へデータを
ライトする場合、CPU110はいったんデータをライ
トバッファ155の中のFIFOバッファに書き込む。
この場合、CPU110はFIFOバッファがフルでな
いかぎりゼロウェィトでライトバッファ155への書き
込みができ、ライトバッファ155に書き込まれたデー
タが実際に表示用VRAM160に書き込まれるのを待
たずに、次の命令に進むことができる。いったんライト
バッファ155の制御のもとに表示用VRAM160へ
書き込まれる。この場合、ライトバッファ155はライ
ト信号157によって調停回路150にライト要求を出
す。すると調停回路150はビデオコントローラ140
からのアクセス要求を調べ、ビデオコントローラ140
からのVRAMアクセスが終るまでライトバッファ15
5を待させ、ビデオコントローラ140からのアクセス
が終りしだい、ライトバッファ155のデータを表示用
VRAM160へ書き込む。
【0018】又、CPU110がVRAM160からデ
ータをリードする場合は、ライトバッファ155はアド
レスバス113と158を、又データバス114と15
9を、又VRAMリード信号121と156をそれぞれ
接続してやるだけであり、ライトバッファ155自身は
何ら機能をもたない。CPU110がVRAM160を
リードするとき、VRAMリード信号121がアクティ
ブとなり、これがライトバッファ155を通ってVRA
Mリード信号156となり、調停回路150に対してV
RAMリード要求が出される。すると調停回路150は
ビデオコントローラ140からのアクセス要求を調べ、
ビデオコントローラ140からのVRAM160に対す
るアクセスが終り、CPU側にアクセス権が渡されるま
で、CPU110を待たせる。これは、調停回路150
がCPU110に対してウェィト信号を出すことによっ
て行なわれる(ウェィト信号は図には示していない)。
調停回路150はビデオコントローラ140側に優先権
をもたせており、又ビデオコントローラ140のVRA
M160に対するアクセス頻度はかなり高いため、VR
AM160のアクセスはほとんどビデオコントローラ1
40側が占めており、CPU110側がアクセスできる
のは、一定の周期の中であらかじめ決められた一定の期
間だけである。したがって、CPU110がVRAM1
60からデータをリードする場合には、CPU110に
はかなりのウェィト(数ウェィトから、場合によっては
10ウェィトをこえることもある)が入ってしまう。
【0019】すなわち、図4の情報処理装置は図2の情
報処理装置と比較して、ライトバッファを付加すること
によりビデオメモリへのライトのスピードは大幅に改善
されたわけであるが、リードに関しては一切改善されて
いない。ビデオメモリからのリードのスピードの改善が
本発明の目的である。
【0020】次に、従来の情報処理装置のもう一つの例
を図8に示す。これは、本発明の第3の実施例(図5〜
図7)を説明するため従来例である。本発明の第3の実
施例については「実施例」の項で説明するが、これはメ
モリの有効利用に関するものであり、以下の図8の説明
では特にメモリのマッピングに注意されたい。図8の従
来の情報処理装置において、中央演算処理装置(CP
U)210は表示部230に接続されている。メモリ2
90はランダムアクセスメモリ(RAM)であり、メモ
リ291は読出し専用メモリ(ROM)である。コマン
ドデコーダ220は、CPU210の実行するバスサイ
クルの種類を示す信号212をデコードし、又アドレス
情報もいっしょにデコードして、情報処理装置の各部に
対するリードライト信号を作り出している。図8では、
表示部230に対するリードライト信号(221および
222)と、RAM290に対するリードライト信号
(292および293)と、ROM291に対するリー
ド信号294のみが示してある。CPU210のバス2
11は、アドレスバスとデータバスを含んでいる。図8
ではバス211には表示部230とRAM290とRO
M291が接続されているが、実際にはこの他に、数多
くのメモリ装置や入出力装置が接続されている。表示部
230はビデオコントローラ240、表示用VRAMア
クセス調停回路250、表示用VRAM260およびデ
ィスプレイ装置270から構成されている。ビデオコン
トローラ240は表示用VRAM260からデータを取
り出して、これを表示すべきフォーマットに変換して、
表示制御信号242としてディスプレイ装置270へ送
る。表示制御信号242には、ディスプレイ装置270
に写し出される画面情報の他に、ディスプレイ装置のタ
イミングを制御する信号も含まれている。ビデオコント
ローラ240が表示用VRAM260からデータを読み
出す場合、調停回路250に対してリード信号(図8に
は示されていない)を出す。調停回路250はビデオコ
ントローラ240からの表示用VRAM260へのアク
セス要求(リード信号)と、CPU210からの表示用
VRM260へのアクセス要求(リード信号、ライト信
号)との調停を取り、両者が衝突しないように調整して
いる。CPU210とビデオコントローラ240からの
アクセス要求が同時に起こった場合、調停回路250は
ビデオコントローラ240を優先させ、ビデオコントロ
ーラ240が表示用VRAM260からデータを読み出
すまでの間、CPU210を待たせている。
【0021】このように、ビデオコントローラ240側
を優先させるのは、ディスプレイ装置270上に一瞬な
りともゴミを表示させたくないためである。調停回路の
種類によっては、CPUからのアクセス(VRAMへの
リード、ライト)を高速にするために、CPU側を優先
させる方式もあるが、この方式では、両者のアクセス要
求が同時に起こった場合、CPUにVRAMへのアクセ
ス権を与え、CPUがアクセス中はビデオコントローラ
は待たされ、その間、表示すべきデータが読み出させな
いため、その間、ディスプレイ装置上にゴミがでてしま
う。最近はディスプレイ装置などのユーザインターフェ
ースの部分を重視する傾向が強く、ビデオコントローラ
側を優先する調停方式が多用されている。調停回路25
0もこの方式を採用している。ビデオコントローラ24
0のバス241はアドレスバスとデータバスを含んでい
る。251は表示用VRAM260のバス251には、
CPUバス211とビデオコントローラバス241のう
ちの、調停回路250によってアクセス権が与えられた
方が接続される。ROM291にはBIOS(Basic In
put Output System )が格納されている。ROM291
の容量は128KBであり、CPU210のメモリアド
レス空間上の0E0000H〜0FFFFFHに置かれ
ている。信号294はROMリード信号であり、CPU
210がアドレス0E0000H〜0FFFFFHに対
するメモリリード命令を実行したときにアクティブとな
る。信号294はコマンドデコーダ220でデコードさ
れている。RAM290はCPU210のメインメモリ
であり、容量は640KBで、アドレスは000000
H〜09FFFFHである。信号292はRAMリード
信号であり、又信号293はRAMライト信号であり、
ともにコマンドデコーダ220でデコードされている。
信号292および293は、CPU210がアドレス0
00000H〜09FFFFHに対してメモリリード命
令又はメモリライト命令を実行したときに、それぞれア
クティブとなる。
【0022】次に、CPU210からの表示用VRAM
260に対するアクセス(リード、ライト)について説
明する。本発明のポイントは、この点にも関係してい
る。
【0023】表示用VRAM260はCPU210から
見たとき、CPU210のメモリ空間上に置かれてい
る。本構成例では、このVRAM260のメモリアドレ
スを0A0000H〜0BFFFFHの128KBとし
よう。信号221はVRAM260へのメモリリード信
号であり、信号222はVRAM260へのメモリライ
ト信号である。すなわち、信号221はCPU210が
アドレス0A0000H〜0BFFFFHに対するメモ
リリード命令を実行したときアクティブとなり、又信号
222はCPU210がアドレス0A0000H〜0B
FFFFHに対するメモリライト命令を実行したときに
アクティブとなる。
【0024】CPU210はVRAM260からデータ
をリードしたり、又はVRAM260へデータをライト
したりする場合、調停回路250に対して、VRAMラ
イト信号222を出す。すると、調停回路250はビデ
オコントローラ240からのアクセス要求を調べ、ビデ
オコントローラ240からのVRAM260に対するア
クセスが終り、CPU210にアクセス権が渡されるま
で、CPU210を待たせる。これは、調停回路250
がCPU210に対してウェィト信号を出すことによっ
て行なわれる(ウェィト信号は図にて示していない)。
そして、ビデオコントローラ240のアクセスが終りし
だい、CPU210のアクセスが実行される。調停回路
250はビデオコントローラ240側に優先権をもたせ
ており、又ビデオコントローラ240のVRAM260
に対するアクセス頻度はかなり高いため、RAM260
へのアクセスはほとんどビデオコントローラ240が占
めており、CPU210がアクセスできるのは、一定の
周期の中であらかじめ決められた一定の期間だけであ
る。したがって、CPU210からのVRAMアクセス
の際に、CPU210にはかなりのウェィト(数ウェィ
トから、場合によっては10ウェィトをこえこともあ
る)が入ってしまう。
【0025】
【発明が解決しようとする課題】CPUやメモリは年々
高速化されてきており、パーソナルコンピュータ等の情
報処理装置の処理速度もどんどん上がってきている。図
2の情報処理装置においても、CPU10及びバス11
に接続されるメインメモリはかなり高速であり、CPU
10からのメインメモリに対するアクセスはゼロウェィ
トとなっている。しかしながら、CPUからVRAM6
0へのアクセスのときには、ビデオコントローラとの調
停のためにかなり多くのウェィトが入ってしまい、この
ときだけ極端に遅くなってしまう。CPUやメインメモ
リが高速になっても表示部が低速だと情報処理装置全体
としてはあまり高速にはできず、表示部の高速化が大き
な課題となってきている。特に表示部をかなり頻繁に使
うプログラムにとっては大きな問題である。
【0026】表示部のメモリ(ビデオメモリと呼ぶ)に
対するアクセスのうち、メモリライトについてはライト
バッファ技術によって(図4参照)処理速度の高速化が
実現されてきているが、メモリリードについては適当な
高速化技術がかなった。
【0027】本発明の目的は表示部の高速化、特にRA
Mからのデター読み出しを高速にするメモリリードの高
速化技術を提供することである。
【0028】
【課題を解決するための手段】本発明の情報処理装置
は、中央演算処理装置と、ビデオコントローラと、表示
用ビデオメモリと、アクセス用ビデオメモリと、前記表
示用ビデオメモリ用のファーストインファーストアウト
バッファを含むライトバッファとを構成要素として有す
る情報処理装置であって、前記中央演算処理装置がビデ
オメモリにデータを書き込む際には、前記ライトバッフ
ァと前記アクセス用ビデオメモリの両者に同時に同一の
データを書き込み、前記中央演算処理装置がビデオメモ
リからデータを読み出す際には前記アクセス用ビデオメ
モリからデータを読み出し、そのことによって上記目的
を達成する。好ましくは、前記中央演算処理装置が前記
表示用ビデオメモリと前記アクセス用ビデオメモリに同
時に同一のデータを書き込む際に、前記中央演算処理装
置のバスサイクルに挿入されるウェイト数は前記ライト
バッファの状態に依存する。さらに好ましくは、前記中
央演算処理装置が前記アクセス用ビデオメモリからデー
タを読み出す際に中央演算処理装置に挿入されるウェイ
ト数は、前記アクセス用ビデオメモリを構成するメモリ
素子のデータ読み出し時間に依存し、前記ライトバッフ
ァの状態には依存しない。本発明の情報処理装置は、中
央演算装置処理と、表示用ビデオメモリと、アクセス用
ビデオメモリとを構成要素として有する情報処理装置で
あって、該情報処理装置は2つの動作モードを有し、動
作モード1においては(1−a)前記アクセス用ビデオ
メモリは前記表示用ビデオメモリと同一のアドレス上に
重複してマッピングされ、(1−b)前記中央演算処理
装置がビデオメモリにデータを書き込む際には、前記表
示用ビデオメモリと前記アクセス用ビデオメモリの両者
に同時に書き込み、(1−c)前記中央演算処理装置が
ビデオメモリからデータを読み出す際には前記アクセス
用ビデオメモリからデータを読み出し、動作モード2に
おいては(2−a)前記アクセス用ビデオメモリは前記
表示用ビデオメモリと異なるアドレス上にマッピングさ
れて、(2−b)前記中央演算処理装置がビデオメモリ
にデータを書き込む際には前記表示用ビデオメモリに書
き込み、(2−c)前記中央演算処理装置がビデオメモ
リからデータを読み出す際には、前記表示用ビデオメモ
リからデータを読み出し、そのことによって上記目的を
達成する。
【0029】本発明の情報処理装置は、中央演算処理装
置と表示部とを有する情報処理装置において、前記表示
部の中の表示用ビデオメモリが前記中央演算処理装置の
メモリアドレス空間上におかれ、前記中央演算処理装置
が前記表示用ビデオメモリにデータを書き込む際、CP
Uデータと前記表示部内のレジスタデータとを演算処理
した結果を前記表示用ビデオメモリに書き込む機能を有
し、又前記中央演算処理装置が前記表示用ビデオメモリ
からデータを読み出す際、この表示用ビデオメモリから
読み出されたデータが前記表示部内のレジスタデータと
比較されその比較結果が前記中央演算処理装置に読み出
される機能を有するとき、該情報処理装置に、前記表示
用ビデオメモリと同一アドレスの2次メモリと、前記2
次メモリのリードライトを制御する2次メモリリードラ
イト制御回路を付加し、前記2次メモリリードライト制
御回路の中に、前記表示部の中のライト時の演算回路と
リード時の比較回路を組み込み、前記中央演算処理装置
が表示部へデータを書き込む際には前記表示用ビデオメ
モリと前記2次メモリにともにそれぞれ演算回路を通し
て同一データを書き込み、前記中央演算処理装置が表示
部からデータを読み出す際には前記2次メモリから比較
回路を通してデータを読み出すことにより、ビデオメモ
リのリード時間を短縮して、そのことによって上記目的
を達成する。さらに、本発明の表示部の高速化方法は、
中央演算処理装置と表示用ビデオメモリを内部に有する
表示部とを構成要素とする情報処理装置に対して、前記
表示用ビデオメモリと同一アドレスの2次メモリと、前
記表示部の中の表示用ビデオメモリのリードライトに関
係する部分を抽出してできた2次メモリリードライト制
御回路を付加し、前記中央演算処理装置からのライトの
際には前記表示用ビデオメモリと前記2次メモリに対し
て、データを書き込み、前記中央演算処理装置へのリー
ドの際には前記2次メモリからデータを読み出すことに
より、ビデオメモリのリード時間を短縮して、そのこと
によって上記目的を達成する。好ましくは、前記表示部
の中にライトバッファを有する。ある実施の形態では、
前記2次メモリの容量が前記表示用ビデオメモリの容量
より小さく、前記2次メモリは前記表示用ビデオメモリ
の一部分の2重化のために使われ、ビデオメモリのうち
の2重化された部分が高速である。さらに他の実施の形
態では、前記2次メモリはモードによって2つの使われ
方をし、モード1では前記表示用ビデオメモリの2重化
のために使われ、モード2では前記中央演算処理装置の
メインメモリの一部として使われる。
【0030】本発明の表示部の高速化方法は、中央演算
処理装置と表示用ビデオメモリを内部に有し、キャラク
タモードとグラッフィックスモードをもつ表示部とを構
成要素とする情報処理装置に対して前記表示用ビデオメ
モリのうちのキャラクタモードで使用する領域を2重化
してこれを2次メモリとし、前記表示部がキャラクタモ
ードのとき、前記中央演算処理装置からのライトの際に
は前記表示用ビデオメモリと前記2次メモリに対してデ
ータを書き込み、前記中央演算処理装置へのリードの際
には前記2次メモリからデータを読み出すことにより、
キャラクタモード時のビデオメモリリード時間を短縮し
て、そのことによって上記目的を達成する。さらに本発
明の表示部の高速化方法は、中央演算処理装置と表示用
ビデオメモリを内部に有し、前記中央演算処理装置のメ
モリアドレスとビデオメモリとが1対1に対応した表示
モードと1対1に対応しない表示モードを共にもつ表示
部とを構成要素とする情報処理装置に対して、前記表示
用ビデオメモリのうちの前記1対1対応表示モードで使
用する領域を2重化してこれを2次メモリとし、前記表
示部が前記1対1対応表示モードのとき、前記中央演算
処理装置からのライトの際には前記表示用ビデオメモリ
と前記2次メモリに対してデータを書き込み、前記中央
演算処理装置へのリードの際には前記2次メモリからデ
ータを読み出すことにより、前記1対1対応表示モード
時のビデオメモリリード時間を短縮して、そのことによ
って上記目的を達成する。本発明の表示制御ワンチップ
ICは、表示用ビデオメモリと2次メモリの2つのメモ
リを制御可能な表示制御ワンチップICであって、前記
表示用ビデオメモリをビデオメモリとして利用し、前記
2次メモリを中央演算処理装置のメインメモリの一部と
して利用する第1のメモリモードと、前記表示用ビデオ
メモリと前記2次メモリとを中央演算処理装置の同一メ
モリアドレス空間上に重複してマッピングし、ともにビ
デオメモリとして利用する第2のメモリモードと、前記
表示用ビデオメモリと前記2次メモリとをたし合わせ、
ビデオメモリとして利用する第3のメモリモードとを制
御可能であり、そのことによって上記目的を達成する。
好ましくは、第1、第2および第3のメモリモードのう
ちのいずれか2つのメモリモードを制御可能である。本
発明の情報処理装置は、ディスプレイ装置への描画機能
をオフし、ビデオメモリへのアクセス権の全てを中央演
算処理装置に与えることのできるスクリーンオフ機能を
有する第1および第2表示制御部を並列に並べ、ディス
プレイ装置は前記第1表示制御部に接続し、前記第1、
第2表示制御部にそれぞれ同一容量のメモリとして表示
用VRAMと2次メモリを接続し、この2つのメモリを
前記中央演算処理装置の同一アドレス空間上に重複して
マッピングし、前記第1表示制御部のスクリーンオフ機
能を無効に設定し、前記第2表示制御部のスクリーンオ
フ機能を有効に設定しておき、前記中央演算処理装置が
ビデオメモリへデータをライトする際には前記表示用ビ
デオメモリと前記2次メモリに同一のデータを同時に書
き込み、前記中央演算処理装置がビデオメモリよりデー
タをリードする場合には、前記2次メモリよりデータを
読み出すことによりビデオメモリのリード時間を短縮し
て、そのことによって上記目的を達成する。本発明は、
既存の表示回路の高速化をねらいとするものである、既
存の表示回路にはほとんど変更を加えず、これにVRA
MとVRAMのアクセスを制御する簡単な回路(これを
ビデオアクセレータと呼ぶことにする)を追加するだけ
で既存の表示回路を高速化しようとするものである。本
発明による高速化の手法は既存の表示回路の内部の構成
に無関係に、いずれの表示回路に対しても適用できるも
のである。
【0031】
【実施例】本発明の第1の実施例について説明してい
く。図1が本発明による情報処理装置の実施例であり、
これに対応する従来技術は図2である。
【0032】図1のCPU10、コマンドデコーダ2
0、表示部30は図2と全く同じものである。VRAM
リード信号21およびVRAMライト信号22も図2と
全く同じものである(結線は一部ちがっている)。図1
が図2とちがっている点は、アクセス用VRAM80が
付加された点と、表示用VRAMアクセス調停回路50
のRD端子が図2ではVRAMリード信号21に接続さ
れていたのに対し、図1ではグランドに接続されている
点の、2点のみである。
【0033】アクセス用VRAM80はCPUバス11
に接続されており、そのRD端子、WR端子にはVRA
Mリード信号21およびVRAMライト信号22がそれ
ぞれ接続されている。
【0034】CPU10がアドレス0A0000H〜0
BFFFFHに対してメモリライトコマンドを実行した
とき(すなわちビデオメモリへライトしたとき)VRA
Mライト信号22がアクティブとなり、表示用VRAM
60とアクセス用VRAM80に同一のデータが同時に
書き込まれる。CPU10がアクセス用VRAM80の
みにデータを書き込むのであれば、CPU10は非常に
少ないウェィト数(アクセス用VRAM80の素子のス
ピードに依存する)でデータを書き込めるわけである
が、VRAM60と80へ同時に書き込む場合、CPU
10のウェィト数は遅い方のウェィト数、すなわちVR
AM60側のウェィト数にせざるを得ない。したがっ
て、VRAMライトの際のウェィト数は従来(図2)と
同じである。
【0035】アクセス用VRAM80と表示用VRAM
60へ書き込みタイミングを別々に制御してライトを高
速化する手法はいろいろあるが、本実施例では同一のラ
イトタイミングを使っている。これによって、複雑な回
路が一切不要となるからである。なお、VRAMライト
の際のウェィト信号(図には示されていない)は調停回
路50が出している。
【0036】アクセス用VRAM80と表示用VRAM
60に対しては、常に同一のデータが同時に書き込まれ
ているため、これらの内容は常に同じであるといえる。
ただし、電源ONから、VRAMがイニシャライズされ
て、VRAMの全領域に初期データが書き込まれるまで
の間は、同一であるという保証はない。したがって、V
RAMのデータを読み出したいときは、表示用VRAM
60から読み出してもよいし、アクセス用VRAM80
から読み出してもよいわけである。となると、当然アク
セス用VRAM80から読み出した方がよい。なぜなら
高速に読み出せるからである。このため、VRAMリー
ド信号21がアクセス用VRAM80のRD端子に接続
され、調停回路50のRD端子がグランドに接続されて
いる。
【0037】CPU10がアドレス0A0000H〜0
BFFFFHに対してリードコマンドを実行したとき
(すなわちビデオメモリをリードしたとき)、VRAM
リード信号21がアクティブとなり、アクセス用VRA
M80がリードされる。このときのCPU10のウェィ
ト数は、アクセス用VRAM80の素子のスピードによ
り決まるわけであるが、図2の調停回路50を介しての
表示用VRAM60へのリードのときのウェィト数に比
べて非常に少なくなる。ちなみに、CPU10に米国イ
ンテル社製の80286の10MHz バージョンを使
い、VRAMをアクセスタイム100nsのDRAMで
構成した場合、ゼロウェィトとなる。
【0038】以上に説明したように、図1の本発明に係
る実施例による情報処理装置では、VRAMを2重化す
ることにより、従来に比べて、VRAMリードを画期的
に高速化することができた。
【0039】図2の既存の表示回路に対して、図1の実
施例は単にアクセス用VRAM80を追加したのみであ
り、他はほとんど修正していない。特に新たな制御回路
等の追加は一切ない。にもかかわらず、ビデオメモリの
リード時間は非常に短縮され、この技術は容易に応用で
きる。しかも、図1の表示部30の内部構造については
特に限定するものではなく、一般的な表示回路に対し
て、この技術は広く適用できる。ただし、次の点にだけ
は注意されたい。というのは、図1の表示部30におい
て、ビデオメモリはCPUのメモリアドレス空間上にお
かれており、かつCPUのメモリアドレスとビデオメモ
リとが一対一に対応しており、あるアドレスに書込んだ
データは必ず同一アドレスをリードすることによって、
書き込んだデータそのものが読み出されるという関係が
成りたっているということである。すなわち、簡単にい
うと、図1のビデオメモリはCPUから見てデータのリ
ードライトに関してはメインメモリと全く同じであると
いうことである。
【0040】表示回路の種類によっては、このような関
係が成りたたないものがある。たとえば、ビデオメモリ
へのライトの際に、CPUのデータと他のデータ(例え
ば、ビデオコントローラ内のI/Oレジスタのデータと
か、ビデオメモリから前もって読み出されて表示回路内
に格納されているデータ等)とを論理演算してから書き
込むようなものがある。又、ビデオメモリからデータを
リードする際、ビデオメモリのデータとビデオコントロ
ーラ内の他のデータとを比較し、その比較結果をリード
データとするようなものもある。このような場合には、
ビデオメモリはCPUから見てリードライトに関してメ
インメモリと同じではなく、図1の回路をそのままは適
用できず多少修正が必要となる。ただし、基本的な考え
方は図1と同様であり、これについては後述する。
【0041】次に、本発明の第2の実施例を図3に示
し、これについて説明していく。第2の実施例(図3)
に対応する従来技術は図4である。表示部内にライトバ
ッファを有する情報処理装置に対して、改善を加えたも
のが図3の情報処理装置であり、以下順に説明してい
く。
【0042】図3のCPU110、コマンドデコーダ1
20、表示部135は図4と全く同じものである。VR
AMリード信号121およびVRAMライト信号122
も、図4と全く同じものである(結線は一部ちがってい
る)。図3が図4とちがっている点は、アクセス用VR
AM180が付加された点と、ライトバッファ155の
RD入力端子が図4ではVRAMリード信号121に接
続されていたのに対し、図3ではグランドに接続されて
いる点の、2点のみである。
【0043】アクセス用VRAM180はCPUバス1
13、114に接続されており、そのRD端子、WR端
子にはVRAMリード信号121およびVRAMライト
信号122がそれぞれ接続されている。
【0044】CPU110がアドレス0A0000H〜
0BFFFFHに対してメモリライトコマンドを実行し
たとき(すなわちVRAMへライトしたとき)VRAM
ライト信号122がアクティブとなり、ライトバッファ
155とアクセス用VRAM180に同一のデータが同
時に書き込まれる。アクセス用VRAM180へはゼロ
ウェィトでの書き込みが可能であるため、CPU110
からのVRAMライトはゼロウェィトで実行できる。こ
れは図4と同様である。ライトバッファ155へ書き込
まれデータは、その後、調停回路150を介して表示用
VRAM160へ書き込まれる。これも図4の場合と同
じである。
【0045】アクセス用VRAM180と表示用VRA
M160に対しては常に同一のデータが書き込まれてい
るため、これらの内容は同じであるといえる。ただし、
電源ONから、VRAMがイニシャライズされて、VR
AMの全領域に初期データが書き込まれるまでの間は、
同一であるという保証はない。したがって、VRAMの
データを読み出したいときは、表示用VRAM160か
ら読み出してもよいし、アクセス用VRAM180から
読み出してもよいわけである。となると、当然に高速に
読み出させるVRAM180から読み出した方がよい。
VRAMリード信号121がアクセス用VRAM180
のRD端子に接続され、ライトバッファ155のRD端
子がグランドに接続されているのはこのためである。
【0046】CPU110がアドレス0A0000H〜
0BFFFFHに対してリードコマンドを実行したとき
(すなわちVRAMをリードしたとき)、VRAMリー
ド信号121がアクティブとなり、アクセス用VRAM
180がリードされる。このときのCPU110のウェ
ィト数はアクセス用VRAM180の素子のスピードに
より決まるわけであるが、図4の調停回路150を介し
ての表示用VRAM160へのリードのときのウェィト
数に比べて非常に少なくなる。ちなみに、CPU110
に前述のインテル社製の80286の10MHz バージ
ョン品を使い、VRAM180をアクセスタイム100
nsのDRAMで構成した場合、ゼロウェィトとなる。
【0047】以上に説明したように、図3の本発明によ
る情報処理装置(第2の実施例)では、VRAMを2重
化することにより、従来に比べてVRAMリードを画期
的に高速化することができた。
【0048】図4の既存の情報処理装置(表示部にライ
トバッファを有する一般的な情報処理装置)に対して、
図3は単にアクセス用VRAM180を追加したのみで
あり、他はほとんど修正していない。すなわち、新たな
制御回路等は一切追加していない。にもかかわらず、ビ
デオメモリのリード時間は非常に短縮され、この技術は
簡単かつ有効であり、広く応用できるものである。
【0049】次に本発明の第3の実施例を図5〜図7に
示し、これについて説明していく。図5〜図7は図8
(従来の技術)を改善したものであり、ビデオメモリを
2重化して、ビデオメモリのリードを高速化すると共
に、2重化のために追加したアクセス用VRAMを有効
活用する方法を提供するものである。
【0050】図5のCPU210、表示部230、RA
M290、ROM291は図8と全く同じものである。
ちがう点は、コマンドデコーダ220Aがコマンドデコ
ーダ220に比べて一部かわっている点と、アクセス用
VRAM280、動作モード指示手段300および動作
モード切換回路310が追加された点である。
【0051】コマンドデコーダ220Aから出力される
信号221、222、292、294は、図8のコマン
ドデコーダ220から出力される信号と全く同じであ
る。コマンドデコーダ220Aには、この他に拡張メモ
リリード信号223(CPU210がアドレス1000
00H〜11FFFFHに対するメモリリード命令を実
行したときアクティブとなる)と、拡張メモリライト信
号224(CPU210がアドレス100000H〜1
1FFFFHに対するメモリライト命令を実行したとき
アクティブとなる)が追加されている。コマンドデコー
ダの各出力信号は図9にまとめておく。
【0052】図5の情報処理装置は、メモリのアドレス
マッピングに関して2つの動作モード(動作モード1と
動作モード2)を持っている。動作モードの指示は動作
モード指示手段300が行っている。動作モード指示手
段300はスイッチ又はレジスタ等で構成されることが
多い。この指示手段300の出力がHighのとき動作
モード1となり、Lowのとき動作モード2となる。動
作モード切換回路310は3つのセレクト手段311、
312、313から構成されており、動作モードによっ
てメモリ素子(表示用VRAM260とアクセス用VR
AM280)のアドレスマッピングを切換えている。R
OM291、RAM290は動作モードに関係なく、ア
ドレスマッピングは常に定まっている。図5の情報処理
装置の動作モード1のときの回路を図6に示す。又、図
5に示す情報処理装置の動作モード2のときの回路を図
7に示す。
【0053】アクセス用VRAM280は表示用VRA
M260と同一容量(128KB)のメモリであり、動
作モード1では表示用VRAM260と同じアドレス
(0A0000H〜0BFFFFH)上にマッピングさ
れ、VRAMとして機能する。また動作モード2におい
ては、VRAMとは別のアドレス(100000H〜1
1FFFFH)にマッピングされ、汎用のリードライト
メモリとして機能する。CPU210からみたRAM2
90がメインメモリであり、アクセス用VRAM280
は動作モード2の時、拡張メモリとなる。
【0054】以下、動作モード1および2における各部
の働きを図5および図7を使って順に説明していく。
【0055】まず、動作モード1のときの動作説明をす
る。図6が動作モード1のときの回路である。図6を図
8と比べると、アクセス用VRAM280が付加された
点と、調停回路250のRD端子が図8ではVRAMリ
ード信号221に接続されていたのに対し、図6ではグ
ランドに接続されているという点が異なっている。
【0056】アクセス用VRAM280はCPUバス2
11にに接続されており、そのRD端子にはVRAMリ
ード信号221およびVRAMライト信号222がそれ
ぞれ接続されている。
【0057】CPU210がアドレス0A0000H〜
0BFFFFHに対してメモリライトコマンドを実行し
たとき(すなわちVRAMへライトしたとき)、VRA
Mライト信号222がアクティブとなり、表示用VRA
M260とアクセス用VRAM280に同一のデータが
同時に書き込まれる。CPU210がアクセス用VRA
M280のみにデータを書き込むのであれば、CPU2
10は非常に少ないウェィト数(アクセス用VRAM2
80の素子のスピードに依存する)でデータを書き込め
るわけであるが、VRAM260と280へ同時に書き
込む場合、CPU210のウェィト数は遅い方のウェィ
ト数、すなわちVRAM260側のウェィト数にせざる
を得ない。したがって、VRAMライトの際のウェィト
数は図8の従来例と同じである。なお、VRAMライト
の際のウェィト信号は調停回路250がCPU210に
対して出力している(図には示されていない)。
【0058】アクセス用VRAM280と表示用VRA
M260に対しては、常に同一のデータが同時に書き込
まれているため、これらの内容は常に同じであるといえ
る。ただし、電源ONから、VRAMがイニシャライズ
されて、VRAMの全領域に初期データが書き込まれる
までの間は同一であるという保証はない。したがって、
VRAMのデータを読み出したいときは、表示用VRA
M260から読出してもよいし、アクセス用VRAM2
80から読み出してもよいわけである。となると、当然
アクセス用VRAM280から読み出した方がよい。な
ぜなら、表示用VRAM260からの読み出しは調停回
路250を介するために低速なのに対して、アクセス用
VRAM280からは高速に読み出せるからである。V
RAMリード信号221がアクセス用VRAM280の
RD端子に接続され、調停回路250のRD端子がグラ
ンドに接続されているのはこのためである。
【0059】CPU210がアドレス0A0000H〜
0BFFFFHに対してリードコマンドを実行したとき
(すなわちVRAMをリードしたとき)、VRAMリー
ド信号221がアクティブとなり、アクセス用VRAM
280がリードされる。このときのCPU210のウェ
ィト数はアクセス用VRAM280の素子のスピードに
より決まるわけであるが、図8の調停回路250を介し
ての表示用VRAM260へのリードのときのウェィト
数に比べて非常に少なくなる。ちなみに、CPU210
に前述のインテル社製の80286の10MHz バージ
ョン品を使い、VRAMをアクセスタイム100nsの
DRAMで構成した場合、ゼロウェィトとなる。
【0060】以上に説明したように、図5の情報処理装
置ではVRAMを2重化することにより、図8の従来例
に比べてVRAMリードを画期的に高速化することがで
き、したがって、情報処理装置全体のパフォーマンスも
高くすることができる。
【0061】次に動作モード2の時の動作説明をする。
図7が動作モード2のときの回路である。図7を図8と
比べると、表示部230に関しては全く同じである。す
なわち、図7においてはVRAMは2重化されておら
ず、したがって、CPU210からの表示用VRAM2
60へのアクセス(リードおよびライト)は、どちらも
調停回路250を介さなければならないため、図8と同
様に低速になる。一方、アクセス用VRAM280(図
6の動作モード1の回路では、VRAMの高速化のため
に、表示用VRAM260と2重化されていた)はVR
AMとは別のアドレス(100000H〜11FFFF
H)に置かれ、汎用のリードライトメモリとなってい
る。すなわち、図7ではアクセス用VRAM280はメ
インメモリ(RAN290)に追加された拡張メモリと
なり、図7のリードライトメモリの総容量は768KB
(RAM290が640KB、アクセス用VRAM28
0が128KB)となり、図8に比べて128KB増加
している。
【0062】以上まとめると、本発明の第3の実施例に
よる情報処理装置は、動作モード1ではVRAMの2重
化により表示部の高速化が達成され、又動作モード2で
はVRAMを2重化しないことにより、メモリ総容量を
その分だけ大きくすることができた。図10および図1
1に、各メモリの動作モードによる機能のちがい、及び
アドレスマッピングのちがいを整理して示す。
【0063】図1の情報処理装置(本発明の第1の実施
例)では、ビデオメモリのアクセスを高速にするために
128KBのメモリを追加したわけであり、これによっ
て装置のパフォーマンスは向上するものの、メモリのコ
ストがアップするという欠点があった。これを補うため
に、図5の情報処理装置(本発明の第3の実施例)では
追加したメモリをメインメモリの一部としても使えるよ
うにした。これは見方を変えると、メインメモリ(76
8KB)の一部(128KB)をVRAMの2重化のた
めに使えるようにしたということであり、768KBの
メインメモリをもつ情報処理装置をベースに考えると、
コストアップはないということである。メインメモリが
768KBで、表示部が低速の情報処理装置として使う
か、又はメインメモリが640KBで表示部が高速の情
報処理装置として使うかは、ユーザーがその都度選択で
きる。ユーザーはアプリケーションプログラムに合わせ
て効果的な使い方ができ、非常に便利である。
【0064】次に本発明の第4の実施例を図12に示
し、これについて説明していく。
【0065】これまで説明してきた第1〜第3の実施例
(図1、図2、図5)では、CPUのメモリアドレスと
ビデオメモリとが1対1に対応するものについて考え
た。ここで、CPUがビデオメモリのあるアドレスA番
地にデータDを書き込んだ場合、その後CPUがビデオ
メモリのA番地をリードすると書き込んだデータDがそ
のまま読み出されるとき、CPUのメモリアドレスとビ
デオメモリとが1対1に対応していると定義することに
する。しかし、1対1対応でない表示部もある。第4の
実施例はこのような1対1対応でない表示部に対応し
て、ビデオメモリのリードを高速化する方法を開示する
ものである。なお、表示部がいくつかの表示モードを有
し、ある表示モードは1対1対応であるが、ある表示モ
ードは1対1対応でないというものもあるが、これも第
4の実施例が適用できる。
【0066】1対1対応でない表示部の代表的なものと
しては、最近、表示部の世界標準となりつつあるIBM
社のVGA(Video graphics Array, VGAはIBM社
の登録商標である。)がある。これを使った情報処理装
置の例が図13である。表示部530がVGAに相当す
る。回路565はライト演算回路であり、CPU510
よりライトされたデータ(データバス514上のデー
タ)に対してデータの回転(rotate)が行なわれたり、
又表示用VRAM560より前もって読み出されたデー
タ(直近のメモリリードコマンドにより、あるレジスタ
に格納されている)と論理演算され、その演算結果がバ
ス567、551を介して表示用VRAM560に書き
込まれる。論理演算には論理積(AND)、論理和(O
R)、排他的論理和(Exclusive OR)等がある。CP
U510のデータ(データバス514上のデータ)がそ
のまま表示用VRAM560に書き込まれることもあ
る。表示用VRAM560より前もって読み出されたデ
ータを、CPUデータのかわりに表示用VRAM560
に書きもどすこともできる。CPUデータ(回転および
演算処理されたデータ)か、又は表示用VRAMより前
もって読みだされたデータかの選択は、ビット単位で行
なうことができる。すなわち、ビット単位でのデータの
変更が可能となっている。なお、表示部530において
は、ライトバッファ(図3で記述したライトバッファと
同等の機能を有するもの)については特に記述していな
いが、ライトバッファの有無しは第4の実施例(図1
2)には直接関係しない。ここでは、ライトバッファは
ないものとして説明を進めるが、ライトバッファのある
場合もほとんど同様の議論がなり立つ。ライトバッファ
がある表示部とない表示部の機能の差については、図1
(第1の実施例)と図3(第2の実施例)を参照された
い。
【0067】図13にもどって説明する。回路566は
リード比較回路であり、表示用VRAM560よりリー
ドされたデータ(バス551,567を介してリード比
較回路566に至る)がリード比較回路566内のレジ
スタ(CPUからのI/Oライトコマンドによりデータ
が設定されている)の値と比較され、その比較結果がバ
ス514を介してCPU510にリードされる。表示用
VRAM560より読み出されたデータが、そのままC
PU510にリードされることもある。このように、図
13の表示部530においては必ずしもCPUデータそ
のものが表示用VRAM560に書き込まれるわけでは
なく、又、必らずしも表示用VRAM560より読み出
されたデータそのものがCPU510にリードされるわ
けでもない。すなわち、CPUのメモリアドレスとビデ
オメモリとが1対1に対応していない。この点が図2の
表示部30(こちらは1対1に対応している)とちがっ
ている。
【0068】表示用VRAMへのリードライト時に演算
および比較という処理が入るという点が、図2の表示部
30と異なっているものの、CPUから表示用VRAM
へのアクセスのスピードという点では図13の表示部5
30と図2の表示部30とはほとんど同じである。すな
わち、調停回路550は図2の調停回路50とほとんど
同様の調停を行なっており、ビデオコントローラ540
側のアクセスを優先させており、CPU510からのビ
デオメモリへのリードライトサイクルには数多くウェィ
トが挿入され、CPUからのアクセスが低速になってし
まっている。(表示部530の中に図4のライトバッフ
ァ155と同様のライトバッファを設けた場合、ビデオ
メモリへのライトは高速になるが、ビデオメモリからの
リードはやはり低速になってしまう。)図12の情報処
理装置(第4の実施例)が図13に示す従来例の欠点を
解決したものであり、ビデオメモリからのリードの高速
化を実現したものである。その基本的な考え方は図1
(第1の実施例)と同様であり、ビデオメモリを2重化
し、2重化されたメモリ(図12では、2次メモリ58
0)からビデオデータをリードすることにより、ビデオ
メモリリードを高速にしようというものである。2次メ
モリ580は表示用VRAM560と同一メモリ容量を
有し、又CPU上のメモリアドレスも同じである。しか
しながら、図12では2次メモリ580とCPU510
との間に2次メモリリードライト制御回路585が挿入
されている。これは、CPUのメモリアドレスとビデオ
メモリとが1対1対応でないために必要なものである。
CPU510がライト演算回路565を介して表示用V
RAM560にライトするデータと全く同一のデータを
2次メモリ580にライトするために、ライト演算回路
565と全く同一の機能を有するライト演算回路586
が挿入されている。又、CPU510が表示用VRAM
560のデータをリード比較回路566を介してリード
したときCPU510に返されるデータと全く同一のデ
ータが、2次メモリ580をリードしたときも返される
ように、リード比較回路566と全く同一の機能を有す
るリード比較回路587が挿入されている。
【0069】CPU510がビデオメモリ手段にデータ
を書き込む際には、表示用VRAM560と2次メモリ
580にそれぞれライト演算回路565,586を介し
てライトが行なわれる。メモリライト信号522のライ
ンは表示部530と2次メモリリードライト制御回路5
85の両方に接続されている。又、NORゲート591
の出力がハイレベルで、NORゲート592の出力がロ
ーレベルである、双方向バッファ590は信号522が
アクティブのとき、AからBの方向に向いてイネーブル
となっている。双方向バッファ590のDIRは方向を
示す信号であり、DIRがハイのとき、AからBへ向か
い、DIRがローのときBからAへ向かう。Gはイネー
ブル信号であり、ローのときイネーブル、ハイのときデ
ィスエーブルである。)すなわち、表示用VRAM56
0と2次メモリ580には必ず同一のデータが書き込ま
れるので、2次メモリ560と表示用VRAM580の
内容は常に同じであるといえる。メモリライトの時間は
表示部530の表示用VRAM560への書込み時間で
決まり、これは調停回路550を介して書込みが行なわ
れるため低速である。すなわち、ライトについては図1
3と同じであり、スピードの改善はされていない。ライ
トについては、従来のライトバッファの技術により、高
速化が可能である。
【0070】CPU510がビデオメモリからデータを
読み出す際には、メモリリード信号521がアクティブ
となり、これが2次メモリリードライト制御回路585
に接続されているため、2次メモリ580のデータがリ
ード比較回路587を通ってCPU510に返される。
ここで、2次メモリ580より読み出されたデータが比
較回路587の中であるレジスタと比較され、その比較
結果がCPU510に返される。又、モードによっては
2次メモリ580のデータがそのままCPU510に返
されることもある。この際のリード時間は、2次メモリ
580を構成するメモリ素子のスピードとリード比較回
路587の処理時間によって決まるが、これは図13の
調停回路550を介してのリードに比べ、画期的に高速
になる。図13の場合には、ビデオコントローラ540
のアクセスとの調停のためにかなり低速である。すなわ
ち、図12の情報処理装置に2次メモリを追加し、メモ
リリードの際には、2次メモリからのデータをCPUに
返してやることによってリードの高速化を達成したもの
である。その際、表示用VRAM560と2次メモリ5
80の内容を常に同一としておくために、表示部530
の中の表示用VRAM560へのリード及びライトに関
する回路(ライト演算回路565およびリード比較回路
566を含む)をすべて抽出し、これを2次メモリリー
ドライト制御回路585として、この回路で2次メモリ
580を制御させている。
【0071】ここで、ひとつ注意すべき点がある。それ
は、メモリリード信号521が表示部530にも接続さ
れているということである。したがって、メモリリード
のとき表示部530はメモリリード動作を実行し、調停
回路550を介して表示用VRAM560のデータを読
み出し、リード比較回路566を通って、データバス5
31にCPU510へ返すべきデータを返している。し
かしこのとき、双方向バッファ590はディスエーブル
状態(NOR回路592の出力がハイである)であり、
CPU510のデータバス514へはデータを送っては
いない。CPU510に対しては2次メモリ580のデ
ータが返されており、表示用VRAM560のデータは
返されていない。すなわち、CPU510に対しては表
示用VRAM560のデータは必要ではないのに、なぜ
表示部530がメモリリード動作を実行するかという
と、それは、表示用VRAM560から読み出されたデ
ータは表示部の中のレジスタにも格納され、これが次の
ライト時に使われるからである。すなわち、VRAMに
対するライト時に、CPUデータと直近のVRAMリー
ドによってレジスタに格納されていたデータとの演算を
行ない、その演算結果をVRAMへ書き込むからであ
る。もし、CPU510がビデオメモリに対するリード
コマンドを実行したとき、2次メモリリードライト制御
回路585のみにメモリリード信号を入れて、表示部5
30にメモリリード信号を入れなかったとすると、次の
ビデオメモリに対するライトの際に、2次メモリ580
と表示用VRAM560には異なったデータが書き込ま
れてしまう。これを防ぐために、メモリリード信号52
1が表示部530にも接続されている。CPU510が
ビデオメモリに対してリードコマンドを実行したとき、
2次メモリリードライト制御回路585はCPU510
に返すべきデータが準備できると、すぐにCPU510
に対してレディ信号を出し、CPUは2次メモリリード
ライト制御回路585からデータを読み出し、次のコマ
ンドの実行へと進んでいってしまう。このとき、表示部
530は、同時にリード動作を開始はしても、調停回路
550を介してのリードのため、多くの時間を要し、C
PU510が2次メモリ580からデータをリードし終
って次のコマンドに進んでも、なお表示部530はメモ
リリード動作中である。逆に言うと、表示部530がリ
ード動作中であるにもかかわらず、2次メモリリードラ
イト制御回路585は高速に2次メモリ580からデー
タを読み出すことができるために、図12の情報処理装
置は従来装置(図13)に比べて画期的にスピードが上
がるわけである。
【0072】以上が第4の実施例の説明であるが、図1
2において、表示部530の中のメモリリードライトに
関係する部分(ライト演算回路565およびリード比較
回路566を中心とする部分)というのは、IBM社製
のVGAの中のグラフィックスコントローラと呼ばれる
部分に対応するものである。又、図12の2次メモリ5
80は表示用VRAM560と同一容量であるが、2次
メモリ580の容量を表示用VRAM560の容量より
小さくしてもよい。たとえば、表示用VRAM560の
容量を256KBとしたとき、2次メモリ580の容量
を32KBとして表示用VRAM560の一部(この場
合32KB分だけ)だけを2重化することもできる。こ
の場合、ビデオメモリのうちの2重化された領域(32
KB分)だけは高速になるが、その他の2重化されない
領域のスピードは低速のままである。
【0073】なお、図12において、I/Oライト信号
524が2次メモリリードライト制御回路585へも接
続されているが、これはI/Oライトコマンドによって
書き込まれたI/Oレジスタのデータがビデオメモリの
リードライトに関係するために、2次メモリリードライ
ト制御回路585においても必要である。又、I/Oリ
ード信号523は2次メモリリードライト制御回路58
5には接続されていないが、これはI/Oリードコマン
ドがビデオメモリのリードライト動作に全く関係がない
ため、制御回路585には必要とされないためである。
もし、I/Oリードコマンドが後のビデオメモリリード
ライト動作に関係する場合には、2次メモリリードライ
ト制御回路585にもI/Oリード信号523が必要と
なる。
【0074】又、図12の2次メモリ580は表示用V
RAM560の2重化のためのメモリとして使われたわ
けであるが、これをモードによってはCPU510のメ
インメモリの一部としても使えるようにすると、より便
利である。すなわち、あるモードでは2次メモリ580
はビデオメモリの2重化メモリとして使われ、ビデオメ
モリのリードの高速化に寄与し、又あるモードでは2次
メモリ580はメインメモリの一部として使われ、メイ
ンメモリの容量増大に寄与する。
【0075】次に、本発明の第5の実施例を図14に示
し、これについて説明していく。
【0076】第4の実施例(図12)は特にIBM社製
のVGAとコンパチブルな表示部に対して、その高速化
技術を開示はしたものであったが、第5の実施例(図1
4)はより一般的な表示部に対して、その高速化技術を
開示するものである。
【0077】図15は従来の一般的な表示部430を有
する情報処理装置であり、これを改善して表示部を高速
化したものが図14(本発明の第5の実施例)である。
図15において、表示部430の中の回路465がCP
Uデータ処理回路であり、これが表示用VRAM460
へのライト時の処理(回転、演算等、CPUからのデー
タに対して行なわれる全ての処理を行なって、その処理
結果を表示用VRAM460へ書き込む)およびリード
時の処理(表示用VRAM460からリードされたデー
タに対して行なわれる回転、演算、比較等の全ての処理
を行なって、その処理結果をCPUに送る)を全て行な
っている。データ処理回路465の処理内容は任意であ
り、特に限定はない。
【0078】図15に対して、図14では2次メモリリ
ードライト制御回路485と2次メモリ480および双
方向バッファ490,491が追加されている。2次メ
モリ480は表示用VRAM460と同一容量でかつ、
CPU410同一メモリアドレス領域上にマッピングさ
れている。2次メモリリードライト制御回路485はC
PUデータ処理回路465と全く同一の機能を有してい
る。CPU410からのビデオメモリに対するリードラ
イト時の動作については、図12とほとんど同様であり
説明は省略する。図12との大きなちがいは、図14で
はI/Oリード信号423が2次メモリリードライト制
御回路485にも接続されているという点である。これ
は、I/Oリードコマンドが後のビデオメモリのリード
ライト動作に関係があるため、CPUデータ処理回路4
65と2次メモリリードライト制御回路485の状態を
常に同じにしておくために必要である。すなわち、I/
Oリードコマンドによって、CPUデータ処理回路46
5および2次メモリリードライト制御回路485のメモ
リリードライトに関係するレジスタが変化するわけであ
る。I/Oリード時、制御回路485の出力487はC
PU410には送られない。それは、I/Oリード時に
双方向バッファ491がディスエーブルとなっているか
らである。
【0079】図14においては、表示部430と2次メ
モリリードライト制御回路485に対して、メモリリー
ドライト、およびI/Oリードライトのすべてのコマン
ド(421,422,432,424)が送られ、これ
に対して処理回路465と制御回路485が常に同じ状
態となっている。そして、メモリリード時には実際には
2次メモリ480のデータがCPU410に送られ、非
常に高速である。又、I/Oリード時には表示部430
がCPU410にデータを送っている。
【0080】なお、IORコマンドが後のビデオメモリ
リードライト動作に関係がないときは、2次メモリリー
ドライト制御回路485はI/Oリード信号423を必
要としない。又、IOWコマンドが後のビデオメモリリ
ードライト動作に関係がないときは、2次メモリリード
ライト制御回路485はI/Oライト信号424を必要
としない。又、メモリリードコマンドが後のビデオメモ
リリードライト動作に関係がないときは、表示部430
はメモリリード信号421を必要としない。メモリライ
ト信号422は、表示部430にとっても2次メモリリ
ードライト制御回路485にとっても必要である。
【0081】CPUデータ処理回路465の性質(特に
メモリリードライトおよびIOリードライトに対する処
理の性質)によって信号421,422,423,42
4の各信号線の結線が多少異なってくるものの、基本的
な動作は図14と図12とで同じであり、図14の情報
処理装置もビデオメモリのリード動作が図15に比べて
画期的に高速になっている。
【0082】ライトバッファに関する件、2次メモリの
容量の件、および2次メモリのメインメモリとしての使
われ方の件についても、第4の実施例のところで説明し
た内容と同じである。
【0083】次に、本発明の第6の実施例を図16に示
し、これについて説明していく。
【0084】図16は図1(第1の実施例)と比べて、
アクセス用VRAM81の容量が表示用VRAM60の
容量より小さい点が異なっている。すなわち図1では、
アクセス用VRAM80の容量が表示用VRAM60の
容量と同じであり、ビデオメモリの全領域が2重化され
ていたのに対して、図16ではアクセス用VRAM81
の容量が表示用VRAM60の容量より小さく、ビデオ
メモリの一部の領域のみが2重化されている。ANDゲ
ート82は、2重化された領域に対してCPUがメモリ
リードコマンドを実行したとき、メモリリード信号が表
示部30に入力されないようにしている。これは、表示
部30のビデオメモリがCPU10のメモリアドレスと
1対1対応であるためであり、ビデオメモリが1対1対
応でない場合には別の結線が必要である。
【0085】図16の情報処理装置では、2重化された
ビデオメモリ領域からのメモリリードは高速化される
が、それ以外のメモリ領域からのメモリリードは低速の
ままである。しかし、図16の利点はアクセス用VRA
M81のメモリ容量が小さいために、コストが安いとい
うことである。表示部によっては特定の領域を頻繁に使
うものもあり、そのような場合、頻繁に使う部分のみを
2重化することにより、低コストでかつ、効率よく高速
化が可能である。すなわち、ビデオメモリ領域に対して
使用頻度のバラツキが大きい場合、使用頻度の大きい部
分のみ2重化しても、全領域を2重化したのと比べて平
均のメモリリードスピードはあまりちがわない。
【0086】次に、本発明の第7の実施例を図17に示
し、これについて説明していく。
【0087】図17は図15の従来の情報処理装置に対
して改善したものであり、表示部430がキャラクタモ
ードのときのビデオメモリのリードを高速化したもので
ある。図15において、表示部430にはキャラクタモ
ードとグラフィックスモードがあり、キャラクタモード
では表示部VRAM460のうちの一部の領域(この場
合、32KBとする)のみを使用しており、又キャラク
タモードのときにはCPU410のメモリアドレスとビ
デオメモリとは1対1に対応している。すなわち、キャ
ラクタモードのとき使用するメモリ領域は非常に小さ
く、表示用VRAM460のごく一部分である。又キャ
ラクタモードではライトの際にはCPU410のデータ
が、CPUデータ処理回路465で何ら処理されずに、
そのままの形で表示用VRAM460に書き込まれ、又
リードの際には表示用VRAM460より読み出された
データが、データ処理回路465で何ら処理されずに、
そのままの形でCPU410に送られている。図17で
は、表示用VRAM460のうちのキャラクタモードで
使用する部分(32KB)のみを2次メモリ680とし
て2重化している。すなわち、2次メモリ680の容量
は32KBであり、表示用VRAM460の容量のl/
8である。
【0088】信号684はキャラクタモード信号であ
り、これがハイのとき、表示部430がキャラクタモー
ドであることを示し、又信号684がローのとき表示部
430がキャラクタモードでないことを示している。ゲ
ート681,682,683はANDゲートであり、メ
モリリードライト信号のON/OFF制御をしている。
表示部430がキャラクタモードでないときは、キャラ
クタモード信号684はローとなり、ANDゲート68
1,682の出力はローとなり、又ANDゲート683
の出力はメモリリード信号となる。すなわち、このとき
2次メモリ680に対してはメモリリード信号421
も、メモリライト信号422も出力されず、2次メモリ
680は何ら作用しない(または、しないのと同じであ
る)。又、このとき表示部430に対してはメモリリー
ド信号、メモリライト信号がともに出力され、キャラク
タモードでないときは、図17の情報処理装置は図15
の情報処理装置と全く同じ動作をする。すなわち、図1
5に比べて何ら改善はされない。一方、表示部430が
キャラクタモードのときにはキャラクタモード信号68
4はハイとなり、このとき2次メモリ680にはメモリ
リードライト信号がともに出力されるが、表示部430
に対してはメモリライト信号のみでメモリリード信号は
出力されない。すなわち、表示部430がキャラクタモ
ードのときには、CPU410がビデオメモリに対して
ライトコマンドを実行すると、表示用VRAM460と
2次メモリ680の両方に同じデータが書き込まれ、又
CPU410がビデオメモリに対してリードコマンドを
実行すると、2次メモリ680のみからデータが読み出
される。2次メモリ680からのリードは高速に実行で
きるために、表示部430がキャラクタモードのときに
はビデオメモリのリードの高速化が達成される。表示部
は特にキャラクタモードで使われることが非常に多く、
図17の実施例は非常に有効である。2次メモリ680
の容量が非常に小さく安価であるにもかかわらず、実質
的な効果は非常に大きいからである。なお、図17にお
いて、CPU410と2次メモリ680の間に図14の
2次メモリリードライト制御回路485のようなものが
一切ないが、これはキャラクタモードにおいてはCPU
410のメモリアドレスとビデオメモリとが1対1に対
応しているためである。
【0089】図17の2次メモリ680は、表示用VR
AM460のうちのキャラクタモードで使う部分を2重
化したものであるが、そのかわりに表示用VRAM46
0のうちの、1対1対応の表示モードで使う部分を2重
化してやり、又キャラクタモードであることを示す信号
684のかわりに、1対1対応の表示モードであること
を示す信号を使うことによって、図17の情報処理装置
を1対1対応でないモードでも利用できるようになる。
【0090】次に、本発明の第8の実施例を図18に示
し、これについて説明していく。
【0091】図18は図14の表示部430のうちのビ
デオコントーラ440,調停回路450,CPUデータ
処理回路465の部分と、2次メモリリードライト制御
回路485とを、ひとつのIC(集積回路)にまとめた
ものである。IC700が本発明による表示制御ワンチ
ップICである。セレクタ795は2次メモリ780を
制御する回路を選択するものである。第1メモリモード
においてはセレクタ795はメインメモリリードライト
制御回路790を選択し、このとき、2次メモリ780
はCPUのメインメモリの一部として働く。又、表示用
VRAM760は表示制御部730によって制御され、
CPUからのメモリリードおよびメモリライトはともに
表示用VRAM760に対して実行される。このとき、
ビデオメモリのリードは図15と同様に低速のままであ
る。
【0092】第2メモリモードにおいては、セレクタ7
95は2次メモリリードライト制御回路785を選択
し、このとき2次メモリ780は表示用VRAM760
と同一アドレス上にマッピングされる。すなわち、2次
メモリ780は表示用VRAM760と2重化される。
ビデオメモリへのライトの際には、2次メモリ780と
表示用VRAM760の両方に同一のデータが同時に書
き込まれ、又ビデオメモリからのリードの際には2次メ
モリ780からデータが読み出され、したがってこのと
き、ビデオメモリのリードは図14と同様に高速にな
る。
【0093】第3メモリモードでは、セレクタ795は
表示制御部730を選択し、このとき、表示制御部73
0のビデオメモリは表示用VRAM760と2次メモリ
780をたし合わせたものとなる。このときの表示モー
ドを拡張ビデオモードと呼び、ビデオメモリが表示用V
RAM760のみであるときを標準ビデオモードと呼ぶ
ことにする。
【0094】次に、本発明の第9の実施例を図19に示
し、これについて説明していく。
【0095】図19は図14の2次メモリリードライト
制御回路485のかわりに、表示部をそっくり2重化し
て、図14と同様の機能をもたせたものである。図19
において、第1表示制御部830と第2表示制御部93
0は全く同じものであり、又表示用VRAM860と2
次メモリ960も全く同じものである。ちがうのは、ス
クリーンオフ制御信号841と941の設定のみであ
る。制御信号841はローレベル(0)に設定されてお
り、第1表示制御部830のスクリーンオフ機能はディ
スエーブルされている。一方、スクリーンオフ制御信号
941はハイレベル(1)に設定されており、第2表示
制御部930のスクリーンオフ信号941がハイのとき
はビデオコントローラ940の動作はすべて停止し、デ
ィスプレイ装置へ送るデータは作成されない。この状態
をスクリーンオフと呼ぶ。このとき、調停回路950は
2次メモリ960へのアクセス権をすべてCPU810
側に与える。したがって、スクリーンオフ信号941が
アクティブ(ハイ)のとき、第2表示制御部930は図
14の2次メモリリードライト制御回路485とほとん
ど同じになり(アクセスのタイミングまで含めてほとん
ど同じになり)、したがって、図19は図14とほとん
ど同様の動作をし、ビデオメモリのリードの高速化が達
成される。詳細は図14の説明を参照されたい。
【0096】
【発明の効果】以上のように本発明によれば、ビデオメ
モリ(VRAM)の2重化により、VRAMからのデー
タリードを画期的に高速化することができ、これにより
情報処理装置全体のスピードを大幅に上げることができ
た。特に、表示部を頻繁に使うプログラムにおいては非
常に効果がある。
【0097】又、そのための手段は、VRAMの1セッ
トと、VRAMに対する簡単なリードライト回路(VR
AMとそのリードライト回路を合わせてビデオアクセレ
ータと呼ぶことにする。)を追加するだけであり、非常
に簡単である。既存のビデオコントローラに対して何も
修正を加えず、上記のビデオアクセレータを追加するだ
けで、既存のビデオコントローラのスピードを大幅に上
げることができ、その応用範囲は非常に広いといえる。
【0098】又、追加されるアクセス用VRAMは特に
単体である必要はなく、例えばメインメモリと一体化に
してもよい。最近はメモリの価格も非常に安く、メイン
メモリの容量も非常に大きくなってきているので、メイ
ンメモリの一部をアクセス用VRAMとして使えば、ほ
とんどコストアップすることもなく高速化が実現でき
る。
【0099】又、追加したアクセス用VRAMをメイン
メモリとしても使える機能を考案した。アプリケーショ
ンプログラムによっては表示部のスピードはあまり重要
ではなく、むしろプログラムで使えるメモリ容量の大き
さが重要であるというものもある。そのような場合は、
アクセス用VRAMをメインメモリとして使い、メイン
メモリの総容量を大きくすればよい。コーザーはメイン
メモリの総容量と表示部の処理速度のいずれか都合のよ
い方を、アプリケーションプログラムを合わせて、その
都度自由に選ぶことができ非常に便利である。
【図面の簡単な説明】
【図1】本発明の第1の実施例に係る情報処理装置の構
成図である。
【図2】図1に対応する従来技術に係る情報処理装置の
構成図である。
【図3】本発明の第2の実施例に係る情報処理装置の構
成図である。
【図4】図3に対応する従来例に係る情報処理装置の構
成図である。
【図5】本発明の第3の実施例に係る情報処理装置の構
成図である。
【図6】図5の動作モード1のときの等価的な回路構成
を示した図である。
【図7】図5の動作モード2のときの等価的な回路構成
を示した図である。
【図8】図5〜図7に対応する従来技術に係る情報処理
装置の構成図である。
【図9】デコード信号をまとめた図である。
【図10】図5の情報処理装置の中の各メモリの機能を
動作モードごとにまとめた図である。
【図11】図5の情報処理装置のメモリアドレスマッピ
ングを動作モードごとにまとめた図である。
【図12】本発明の第4の実施例に係る情報処理装置の
構成図である。
【図13】図12に対応する従来技術に係る情報処理装
置の構成図である。
【図14】本発明の第5の実施例に係る情報処理装置の
構成図である。
【図15】図14に対応する従来技術に係る情報処理装
置の構成図である。
【図16】本発明の第6の実施例に係る情報処理装置の
構成図である。
【図17】本発明の第7の実施例に係る情報処理装置の
構成図である。
【図18】本発明の第8の実施例に係る情報処理装置の
構成図である。
【図19】本発明の第9の実施例に係る情報処理装置の
構成図である。
【符号の説明】
10…中央演算処理装置(CPU) 20…コマンドデコーダ 30…表示部 40…ビデオコントローラ 50…表示用VRAMアクセス調停回路 60…表示用VRAM 70…ディスプレイ装置 80,81…アクセス用VRAM 11…CPUのバス(アドレスバス及びデータバス) 12…CPUの実行するバスサイクルの種類を示す信号 21…VRAMリード信号(0A0000H〜0BFF
FFHに対するメモリリード信号) 22…VRAMライト信号(0A0000H〜0BFF
FFHに対するメモリリード信号) 41…ビデオコントローラのバス(アドレスバス及びデ
ータバス) 42…表示制御信号 51…表示用VRAMのバス(アドレスバス及びデータ
バス) 82…ANDゲート 110…中央演算処理装置(CPU) 120…コマンドデータ 135…表示部 140…ビデオコントローラ 150…表示用VRAMアクセス調停回路 155…ライトバッファ 160…表示用VRAM、 170…ディスプレイ装置 180…アクセス用VRAM 113…CPUのアドレスバス 114…CPUのデータバス 112…CPUの実行するバスサイクルの種類を示す信
号 121…VRAMリード信号(0A0000H〜0BF
FFFHに対するメモリリード信号) 122…VRAMライト信号(0A0000H〜0BF
FFFHに対するメモリライト信号) 143…ビデオコントローラのアドレスバス 144…ビデオコントローラのデータバス 142…表示制御信号 153…表示用VRAMのアドレスバス 154…表示用VRAMのデータバス 156…ライトバッファから出力されるリード信号 157…ライトバッファから出力されるVRAMライト
信号 158…ライトバッファのアドレスバス 159…ライトバッファのデータバス 210…中央演算処理装置(CPU) 220…コマンドデコーダ(従来例) 220A…コマンドデコーダ(本発明の実施例)230
…表示部 240…ビデオコントローラ 250…表示用VRAMアクセス調停回路 260…表示用VRAM 270…ディスプレイ装置 280…アクセス用VRAM 211…CPUのバス(アドレスバス及びデータバス) 212…CPUの実行するバスサイクルの種類を示す信
号) 221…VRAMリード信号(0A0000H〜0BF
FFFHに対するメモリリード信号) 222…VRAMライト信号(0A0000H〜0BF
FFFHに対するメモリライト信号) 241…ビデオコントローラのバス(アドレスバス及び
データバス) 242…表示制御信号 251…表示用VRAMのバス(アドレスバス及びデー
タバス) 291…読み出し専用メモリ(ROM) 290…ランダムアクセスメモリ(RAM) 223…拡張メモリリード信号(100000H〜11
FFFFHに対するメモリリード信号) 224…拡張メモリリード信号(100000H〜11
FFFFHに対するメモリライト信号) 300…動作モード指示手段 310…動作モード切換回路 311,112,113…セレクタ 292…RAMリード信号(000000H〜09FF
FFHに対するメモリリード信号) 293…RAMライト信号(000000H〜09FF
FFHに対するメモリライト信号) 294…ROMリード信号(0E0000H〜0FFF
FHに対するメモリリード信号) 410…中央処理装置(CPU) 420…コマンドデコーダ 430…表示部 440…ビデオコントローラ 450…調停回路 460…表示用VRAM 465…CPUデータ処理回路 470…ディスプレイ装置 480…2次メモリ 413…CPUのアドレスバス 414…CPUのデータバス 412…CPUの実行するバスサイクルの種類を示す信
号 421…VRAMリード信号(0A0000H〜0BF
FFFHに対するメモリリード信号) 422…VRAMライト信号(0A0000H〜0BF
FFFHに対するメモリライト信号) 423…表示部に対するIOリード信号 424…表示部に対するIOライト信号 441…ビデオコントローラのバス(アドレスバス及び
データバス) 442…表示制御信号 451…表示用VRAMのバス(アドレスバス及びデー
タバス) 466…CPUデータ処理回路のバス(アドレスバス及
びデータバス) 485…2次メモリリードライト制御回路 486…2次メモリのバス 487…2次メモリリードライト制御回路のバス 490,491…双方向バッファ 492,493,494…NORゲート 510…中央演算処理装置(CPU) 520…コマンドデコーダ 530…表示部 540…ビデオコントローラ 550…調停回路 560…表示用VRAM 565…ライト時の演算回路 566…リード時の比較回路 570…ディスプレイ装置 580…2次メモリ 513…CPUのアドレスバス 514…CPUKデータバス 512…CPUの実行するバスサイクルの種類を示す信
号 521…VRAMリード信号(0A0000H〜0BF
FFFHに対するメモリリード信号) 522…VRAMライト信号(0A0000H〜0BF
FFFHに対するメモリリード信号) 523…表示部に対するIOリード信号 524…表示部に対するIOライト信号 531…表示部のデータバス 541…ビデオコントローラのバス(アドレスバス及び
データバス) 542…表示制御信号 551…表示用VRAMのバス(アドレスバス及びデー
タバス) 567…CPUアクセス側のバス(アドレスバス及びデ
ータバス) 581…2次メモリのバス 585…2次メモリリードライト制御回路 586…2次メモリに対するライト演算回路 587…2次メモリに対するリード比較回路 590…双方向バッファ 591,592…NORゲート 680…2次メモリ 681,682,683…ANDゲート 684…キャラクタモード信号 700…本発明による表示制御ワンチップIC 730…表示制御部 740…ビデオコントローラ 750…調停回路 760…表示用VRAM 765…CPUデータ処理回路 770…ディスプレイ装置 780…2次メモリ 785…2次メモリリードライト制御回路 790…メインメモリリードライト制御回路 795…セレクタ 810…中央演算処理装置(CPU) 820…コマンドデコーダ 830…第1表示制御部 930…第2表示制御部 840,940…ビデオコントローラ 841,941…スクリーンオフ制御信号 850,950…調停回路 860…表示用VRAM 960…2次メモリ 865,965…CPUデータ処理回路 870…ディスプレイ装置 890,990…双方向バッファ
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) G09G 5/00 G06F 13/18 G09G 5/39 G06T 1/60

Claims (17)

    (57)【特許請求の範囲】
  1. 【請求項1】 中央演算処理装置と、ビデオコントロー
    ラと、表示用ビデオメモリと、アクセス用ビデオメモリ
    と、前記表示用ビデオメモリ用のファーストインファー
    ストアウトバッファを含むライトバッファとを構成要素
    として有する情報処理装置であって、 前記中央演算処理装置がビデオメモリにデータを書き込
    む際には、前記ライトバッファと前記アクセス用ビデオ
    メモリの両者に同時に同一のデータを書き込み、前記中
    央演算処理装置がビデオメモリからデータを読み出す際
    には前記アクセス用ビデオメモリからデータを読み出す
    ことを特徴とする情報処理装置。
  2. 【請求項2】 前記中央演算処理装置が前記表示用ビデ
    オメモリと前記アクセス用ビデオメモリに同時に同一の
    データを書き込む際に、前記中央演算処理装置のバスサ
    イクルに挿入されるウェイト数は前記ライトバッファの
    状態に依存することを特徴とする請求項1記載の情報処
    理装置。
  3. 【請求項3】 前記中央演算処理装置が前記アクセス用
    ビデオメモリからデータを読み出す際に中央演算処理装
    置に挿入されるウェイト数は、前記アクセス用ビデオメ
    モリを構成するメモリ素子のデータ読み出し時間に依存
    し、前記ライトバッファの状態には依存しないことを特
    徴とする請求項1記載の情報処理装置。
  4. 【請求項4】 中央演算装置処理と、表示用ビデオメモ
    リと、アクセス用ビデオメモリとを構成要素として有す
    る情報処理装置であって、該情報処理装置は2つの動作
    モードを有し、 動作モード1においては (1−a)前記アクセス用ビデオメモリは前記表示用ビ
    デオメモリと同一のアドレス上に重複してマッピングさ
    れ、 (1−b)前記中央演算処理装置がビデオメモリにデー
    タを書き込む際には、前記表示用ビデオメモリと前記ア
    クセス用ビデオメモリの両者に同時に書き込み、 (1−c)前記中央演算処理装置がビデオメモリからデ
    ータを読み出す際には前記アクセス用ビデオメモリから
    データを読み出し、 動作モード2においては (2−a)前記アクセス用ビデオメモリは前記表示用ビ
    デオメモリと異なるアドレス上にマッピングされて、 (2−b)前記中央演算処理装置がビデオメモリにデー
    タを書き込む際には前記表示用ビデオメモリに書き込
    み、 (2−c)前記中央演算処理装置がビデオメモリからデ
    ータを読み出す際には、前記表示用ビデオメモリからデ
    ータを読み出すことを特徴とする情報処理装置。
  5. 【請求項5】 中央演算処理装置と表示部とを有する
    情報処理装置において、前記表示部の中の表示用ビデオ
    メモリが前記中央演算処理装置のメモリアドレス空間上
    におかれ、前記中央演算処理装置が前記表示用ビデオメ
    モリにデータを書き込む際、CPUデータと前記表示部
    内のレジスタデータとを演算処理した結果を前記表示用
    ビデオメモリに書き込む機能を有し、又前記中央演算処
    理装置が前記表示用ビデオメモリからデータを読み出す
    際、この表示用ビデオメモリから読み出されたデータが
    前記表示部内のレジスタデータと比較されその比較結果
    が前記中央演算処理装置に読み出される機能を有すると
    き、 該情報処理装置に、前記表示用ビデオメモリと同一アド
    レスの2次メモリと、前記2次メモリのリードライトを
    制御する2次メモリリードライト制御回路を付加し、前
    記2次メモリリードライト制御回路の中に、前記表示部
    の中のライト時の演算回路とリード時の比較回路を組み
    込み、前記中央演算処理装置が表示部へデータを書き込
    む際には前記表示用ビデオメモリと前記2次メモリにと
    もにそれぞれ演算回路を通して同一データを書き込み、
    前記中央演算処理装置が表示部からデータを読み出す際
    には前記2次メモリから比較回路を通してデータを読み
    出すことにより、ビデオメモリのリード時間を短縮した
    ことを特徴とする表示部の高速化方法。
  6. 【請求項6】 中央演算処理装置と表示用ビデオメモリ
    を内部に有する表示部とを構成要素とする情報処理装置
    に対して、 前記表示用ビデオメモリと同一アドレスの2次メモリ
    と、前記表示部の中の表示用ビデオメモリのリードライ
    トに関係する部分を抽出してできた2次メモリリードラ
    イト制御回路を付加し、前記中央演算処理装置からのラ
    イトの際には前記表示用ビデオメモリと前記2次メモリ
    に対して、データを書き込み、前記中央演算処理装置へ
    のリードの際には前記2次メモリからデータを読み出す
    ことにより、ビデオメモリのリード時間を短縮したこと
    を特徴とする表示部の高速化方法。
  7. 【請求項7】 前記表示部の中にライトバッファを有す
    ることを特徴とする請求項5記載の表示部の高速化方
    法。
  8. 【請求項8】 前記2次メモリの容量が前記表示用ビデ
    オメモリの容量より小さく、前記2次メモリは前記表示
    用ビデオメモリの一部分の2重化のために使われ、ビデ
    オメモリのうちの2重化された部分が高速であることを
    特徴とする請求項5記載の表示部の高速化方法。
  9. 【請求項9】 前記2次メモリはモードによって2つの
    使われ方をし、モード1では前記表示用ビデオメモリの
    2重化のために使われ、モード2では前記中央演算処理
    装置のメインメモリの一部として使われることを特徴と
    する請求項5記載の表示部の高速化方法。
  10. 【請求項10】 前記表示部の中にライトバッファを有
    することを特徴とする請求項6記載の表示部の高速化方
    法。
  11. 【請求項11】 前記2次メモリの容量が前記表示用ビ
    デオメモリの容量よりも小さく、前記2次メモリは前記
    表示用ビデオメモリの一部分の2重化のために使われ、
    ビデオメモリのうちの2重化された部分が高速であるこ
    とを特徴とする請求項6記載の表示部の高速化方法。
  12. 【請求項12】 前記2次メモリはモードによって2通
    りの使われ方をし、モード1では前記表示用ビデオメモ
    リの2重化のために使われ、モード2では前記中央演算
    処理装置のメインメモリの一部として使われることを特
    徴とする請求項6記載の表示の高速化方法。
  13. 【請求項13】 中央演算処理装置と表示用ビデオメモ
    リを内部に有し、キャラクタモードとグラッフィックス
    モードをもつ表示部とを構成要素とする情報処理装置に
    対して前記表示用ビデオメモリのうちのキャラクタモー
    ドで使用する領域を2重化してこれを2次メモリとし、 前記表示部がキャラクタモードのとき、前記中央演算処
    理装置からのライトの際には前記表示用ビデオメモリと
    前記2次メモリに対してデータを書き込み、前記中央演
    算処理装置へのリードの際には前記2次メモリからデー
    タを読み出すことにより、キャラクタモード時のビデオ
    メモリリード時間を短縮したことを特徴とする表示部の
    高速化方法。
  14. 【請求項14】 中央演算処理装置と表示用ビデオメモ
    リを内部に有し、前記中央演算処理装置のメモリアドレ
    スとビデオメモリとが1対1に対応した表示モードと1
    対1に対応しない表示モードを共にもつ表示部とを構成
    要素とする情報処理装置に対して、 前記表示用ビデオメモリのうちの前記1対1対応表示モ
    ードで使用する領域を2重化してこれを2次メモリと
    し、 前記表示部が前記1対1対応表示モードのとき、前記中
    央演算処理装置からのライトの際には前記表示用ビデオ
    メモリと前記2次メモリに対してデータを書き込み、前
    記中央演算処理装置へのリードの際には前記2次メモリ
    からデータを読み出すことにより、前記1対1対応表示
    モード時のビデオメモリリード時間を短縮したことを特
    徴とする表示部の高速化方法。
  15. 【請求項15】 表示用ビデオメモリと2次メモリの2
    つのメモリを制御可能な表示制御ワンチップICであっ
    て、 前記表示用ビデオメモリをビデオメモリとして利用し、
    前記2次メモリを中央演算処理装置のメインメモリの一
    部として利用する第1のメモリモードと、 前記表示用ビデオメモリと前記2次メモリとを中央演算
    処理装置の同一メモリアドレス空間上に重複してマッピ
    ングし、ともにビデオメモリとして利用する第2のメモ
    リモードと、 前記表示用ビデオメモリと前記2次メモリとをたし合わ
    せ、ビデオメモリとして利用する第3のメモリモードと
    を制御可能なことを特徴とする表示制御ワンチップI
    C。
  16. 【請求項16】 第1、第2および第3のメモリモード
    のうちのいずれか2つのメモリモードを制御可能である
    ことを特徴とする請求項15記載の表示制御ワンチップ
    IC。
  17. 【請求項17】 ディスプレイ装置への描画機能をオフ
    し、ビデオメモリへのアクセス権の全てを中央演算処理
    装置に与えることのできるスクリーンオフ機能を有する
    第1および第2表示制御部を並列に並べ、ディスプレイ
    装置は前記第1表示制御部に接続し、前記第1、第2表
    示制御部にそれぞれ同一容量のメモリとして表示用VR
    AMと2次メモリを接続し、この2つのメモリを前記中
    央演算処理装置の同一アドレス空間上に重複してマッピ
    ングし、前記第1表示制御部のスクリーンオフ機能を無
    効に設定し、前記第2表示制御部のスクリーンオフ機能
    を有効に設定しておき、 前記中央演算処理装置がビデオメモリへデータをライト
    する際には前記表示用ビデオメモリと前記2次メモリに
    同一のデータを同時に書き込み、前記中央演算処理装置
    がビデオメモリよりデータをリードする場合には、前記
    2次メモリよりデータを読み出すことによりビデオメモ
    リのリード時間を短縮したことを特徴とする情報処理装
    置。
JP03007806A 1990-01-25 1991-01-25 情報処理装置および表示部の高速化方法および表示制御ワンチップic Expired - Lifetime JP3114209B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP03007806A JP3114209B2 (ja) 1990-01-25 1991-01-25 情報処理装置および表示部の高速化方法および表示制御ワンチップic

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
JP2-15303 1990-01-25
JP1530390 1990-01-25
JP7286890 1990-03-22
JP7286990 1990-03-22
JP2-72868 1990-03-22
JP2-72869 1990-03-22
JP03007806A JP3114209B2 (ja) 1990-01-25 1991-01-25 情報処理装置および表示部の高速化方法および表示制御ワンチップic

Publications (2)

Publication Number Publication Date
JPH04211293A JPH04211293A (ja) 1992-08-03
JP3114209B2 true JP3114209B2 (ja) 2000-12-04

Family

ID=27454801

Family Applications (1)

Application Number Title Priority Date Filing Date
JP03007806A Expired - Lifetime JP3114209B2 (ja) 1990-01-25 1991-01-25 情報処理装置および表示部の高速化方法および表示制御ワンチップic

Country Status (1)

Country Link
JP (1) JP3114209B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08224224A (ja) * 1995-02-21 1996-09-03 Anima Kk 重心動揺計

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5712664A (en) * 1993-10-14 1998-01-27 Alliance Semiconductor Corporation Shared memory graphics accelerator system
WO1995035572A1 (en) 1994-06-20 1995-12-28 Neomagic Corporation Graphics controller integrated circuit without memory interface
US7831780B2 (en) * 2005-06-24 2010-11-09 Nvidia Corporation Operating system supplemental disk caching system and method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08224224A (ja) * 1995-02-21 1996-09-03 Anima Kk 重心動揺計

Also Published As

Publication number Publication date
JPH04211293A (ja) 1992-08-03

Similar Documents

Publication Publication Date Title
US5642489A (en) Bridge between two buses of a computer system with a direct memory access controller with accessible registers to support power management
EP0392657B1 (en) System providing cache coherent direct memory access between dissimilar bus systems
US6112303A (en) Computer system with system ROM including serial-access PROM coupled to an auto-configuring memory controller and method of shadowing BIOS code from PROM
US5533204A (en) Split transaction protocol for the peripheral component interconnect bus
US6493803B1 (en) Direct memory access controller with channel width configurability support
US5986677A (en) Accelerated graphics port read transaction merging
JP3403284B2 (ja) 情報処理システム及びその制御方法
US20010019331A1 (en) Unified memory architecture for use in computer system
US20020013880A1 (en) Integrated circuit with flash bridge and autoload
JPH06509199A (ja) コンピュータ・ワークステーション拡張シャシー
KR100501052B1 (ko) 메모리 제어기 허브
JPH11238030A (ja) Pci−pciブリッジおよびそのための先入れ先出しメモリ
US5448742A (en) Method and apparatus for local memory and system bus refreshing with single-port memory controller and rotating arbitration priority
US5283889A (en) Hardware based interface for mode switching to access memory above one megabyte
US6279065B1 (en) Computer system with improved memory access
US5088028A (en) Lock converting bus-to-bus interface system
US5363500A (en) System for improving access time to video display data using shadow memory sized differently from a display memory
JP2002132701A (ja) メモリ制御装置
US5577214A (en) Programmable hold delay
US5428760A (en) Circuitry and method for sharing internal microcontroller memory with an external processor
EP3270293B1 (en) Two stage command buffers to overlap iommu map and second tier memory reads
JPH04213144A (ja) 高速データ・アクセス・システム
JPH08255107A (ja) ディスプレイコントローラ
US5860113A (en) System for using a dirty bit with a cache memory
JP3114209B2 (ja) 情報処理装置および表示部の高速化方法および表示制御ワンチップic

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080929

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080929

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090929

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090929

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100929

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100929

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110929

Year of fee payment: 11

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110929

Year of fee payment: 11