JPH06332436A - ビットマップデータ転送装置 - Google Patents

ビットマップデータ転送装置

Info

Publication number
JPH06332436A
JPH06332436A JP5119891A JP11989193A JPH06332436A JP H06332436 A JPH06332436 A JP H06332436A JP 5119891 A JP5119891 A JP 5119891A JP 11989193 A JP11989193 A JP 11989193A JP H06332436 A JPH06332436 A JP H06332436A
Authority
JP
Japan
Prior art keywords
memory
bit
data
shift
section
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.)
Pending
Application number
JP5119891A
Other languages
English (en)
Inventor
Tatsuhiko Sakamoto
辰彦 坂本
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.)
Sharp Corp
Original Assignee
Sharp 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 Sharp Corp filed Critical Sharp Corp
Priority to JP5119891A priority Critical patent/JPH06332436A/ja
Publication of JPH06332436A publication Critical patent/JPH06332436A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Digital Computer Display Output (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

(57)【要約】 【目的】 ビットのずれがあるメモリ間のデータ転送、
特に文字描画処理を高速、かつ低価格で処理できるコス
トパフォーマンスに富んだシステムを提供する。 【構成】 表示用メモリコントローラ14は、制御デー
タを記憶するための制御レジスタ部1と、データのビッ
トシフトを実行するためのビットシフト部2と、メモリ
9に供給するマスクデータを作成するためのマスクデー
タ発生部3と、メモリアドレスを切り換えるためのアド
レス変換部4と、CPU11から制御レジスタ1または
メモリ9がアクセスされたかどうかを判断を行うための
アドレスデコーダ部5と、表示データをメモリ9から表
示装置16に出力するための要求信号と処理調停を行う
アービトレーション部6と、メモリ9に対して与えるた
めのアドレスを発生させるメモリアドレス発生部7と、
表示装置16のライン走査に合わせてメモリ9から表示
データを出力する要求信号を発生するための表示タイミ
ング発生部8と、表示データを記憶するためのメモリ9
と、前記メモリ9に制御信号を供給するためのメモリ制
御信号発生部10とで構成される。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、メモリ間のデータコピ
ー処理において、特にドットイメージに展開された文字
データを表示用メモリに転送し、文字描画を行うビット
マップデータ転送装置に関するものである。
【0002】
【従来の技術】従来より用いられているコンピュータ上
でのフォントの格納方法としては、ビットマップ方式と
アウトライン方式の二つの方式に大別される。
【0003】ビットマップ方式は、文字図形をドットの
集まりとして表現する簡便な方式であり、アウトライン
方式は、文字輪郭の座標を読み込み、それらを線分や曲
線で補間することにより、文字図形を表現する方法であ
る。
【0004】現在、一般にはビットマップ方式が多く用
いられている。
【0005】図1に、従来の文字描画装置の構成図を示
す。
【0006】文字描画装置は、描画処理を行うためのC
PU11と、前記CPU11が動作するためのプログラ
ムおよびデータを格納するためのメインメモリ12と、
前記CPU11からの指示を受けメインメモリ12への
アクセスを制御するメインメモリコントローラ13と、
前記CPU11からの指示を受け表示用メモリ15への
アクセスを制御するための表示メモリコントローラ14
と、データを画面上に表示を行うための表示装置16
と、前記表示装置16に出力すべきデータを格納するた
めの表示用メモリ15と、印刷装置20に出力すべきデ
ータを格納(展開)するための印刷展開用メモリ17
と、前記CPU11から印刷展開用メモリ18に対する
アクセスを制御するための印刷展開用メモリコントロー
ラ18と、ドットイメージとして格納された文字データ
を格納しておく領域であるCGROM19と、出力デー
タの印刷を行うための印刷装置20と、アウトラインフ
ォントを生成し文字データを供給するアウトラインフォ
ントプロセッサ21と、アウトラインフォントを生成す
るためのデータを格納しておくためのアウトラインフォ
ント部22とで構成される。
【0007】以下、各部について詳述していく。
【0008】メインメモリ12は、CPU11が動作す
るためのプログラムおよびデータを格納するためのメモ
リである。
【0009】メインメモリコントローラ13は、CPU
11の指示により、メインメモリ12へのアクセスを制
御するためのものである。表示メモリコントローラ14
は、CPU11から表示用メモリ15へのアクセスを制
御するためのものである。
【0010】表示用メモリ15は、表示装置16に出力
するデータを格納するためのメモリである。
【0011】表示装置16は、画面上に出力データの表
示を行うもので、ディスプレイ等が用いられる。印刷展
開用メモリ17は、印刷装置20に出力するための印刷
用データを格納するためのものである。
【0012】印刷展開用メモリコントローラ18は、C
PU11からの指示をうけ印刷展開用メモリ18に対す
るアクセスを制御するものである。
【0013】CGROM19は、ドットイメージとして
文字データを格納しておくための領域である。
【0014】印刷装置20は、出力データの印刷を行う
もので、プリンタ等が用いられる。
【0015】アウトラインフォントプロセッサ21は、
CPU11からアウトラインフォント生成要求を受ける
と、アウトラインフォントデータを利用してアウトライ
ンフォントを生成し、CPU11にドットイメージに展
開された文字データを与える。
【0016】アウトラインフォント部22は、アウトラ
インフォントを生成するためのデータを格納しておくた
めの領域である。
【0017】以下、従来例により文字描画を行う方法に
ついて詳述していく。
【0018】まず、予めドットイメージに展開されたド
ットフォントを用いて描画する方法について説明を行う
(アウトラインフォントを用いる時には、CPU11か
らアウトラインプロセッサ21に対しアウトラインフォ
ントを発生させる指示を出せば、後はドットフォントと
同じ処理となる)。
【0019】まず最初に、描画を行う文字が格納されて
いるフォントアドレスを得ることが必要となる。ここ
で、フォントアドレスは、表1に示す様な対照テーブル
を検索する事によって求められる。
【0020】
【表1】
【0021】表1は、文字の大きさと文字コードとか
ら、格納アドレスが求められる対照テーブルを表す。例
えば、文字の大きさが12ドット×12ドットで文字コ
ードが“い”の文字に対しては、格納アドレス0018
が得られる。また、文字の大きさが16ドット×16ド
ットで文字コードが“え”の文字に対しては、格納アド
レスとして1060が得られる。
【0022】上記で得られたフォントアドレスを用い
て、CGROM19からドットフォントデータを取り出
し、描画すべき領域(表示用メモリまたは印刷展開用メ
モリ)に書き込むことにより描画が行われる。
【0023】なお、表1には平仮名のみを示したが、漢
字、記号等のデータの場合にも同様に行われることは言
うまでもない。
【0024】CGROM19とメモリ(表示メモリ15
または印刷展開用メモリ18)間で行われるデータの処
理方法について以下に説明する。
【0025】通常、文字データは図3に示すように格納
されている。図3は大きさが16ドット×16ドットで
文字コードが“あ”の文字について示したものである。
図3(b)は、文字“あ”がどのようにCGROM19
に格納されているか、つまり、アドレスの並び方を表し
ている。前記のデータがCGROM19から描画を行う
メモリのアドレスに書き込まれて、文字描画が行われ
る。
【0026】ここで、メモリ間でのコピーを高速にする
ために、描画すべきメモリのアドレスをCGROM19
のアドレスの並び方と同様にして高速化する方法が行わ
れている(特許公報 特公昭63−30632)。
【0027】しかし、表示装置16がキャラクタ端末で
はなく、グラフィック(ビットマップ)端末の場合に
は、図2に示すようにCGROM19のデータと描画す
べきメモリとの間でビットのずれが起こってしまうこと
がある(バイト境界に文字が書かれるとは限らないた
め)。
【0028】この場合、従来より、ビット単位に転送処
理を行うBITBLT(BIT Boundary B
lock Transfer)機能を、ハード的にサポ
ートするか、またはソフトウェアによりすべて処理する
かのいずれかの方法により達成し、ビットのズレに対処
している。
【0029】このBITBLT機能をハードウェアでサ
ポートした場合、処理速度は速くなるものの、膨大なハ
ードウェアが必要となり高価となるため、低価格のシス
テムには利用困難である。
【0030】一方、このBITBLT機能をソフトウェ
アで処理した場合には、処理速度が非常に遅くなってし
まう。これを改善するためにメモリ周辺にビットシフト
機能をもった制御回路を追加し、ソフトウェアによる処
理負荷を低減させる方法等が提案されている(特許公報
特公昭63−52392)。
【0031】
【発明が解決しようとする課題】上記方法において、メ
モリ周辺に単に1ビットずつシフトを行い、メモリのア
クセス制御を行う回路を付加すると、シフトビット数に
比例して、多くの処理時間が必要となってしまうため、
処理速度の面から好ましくない。
【0032】一方、このビットシフト処理回路を1度に
必要数分のビットシフトが可能な回路構成にすると、処
理速度は速くなるが回路規模が非常に大きなものとな
り、高価なものになってしまう。
【0033】本発明は上記の点に鑑みなされたもので、
回路規模と、処理速度の両面から最適となるビットマッ
プデータ転送装置を提供するものである。
【0034】
【課題を解決するための手段】上記した本発明の目的
は、本発明においては、CPUからメモリへのアクセス
を制御し、メモリ間でビットマップデータの転送を行う
ビットマップデータ転送装置であって、該転送装置は、
第1のメモリから読みだしたビットマップデータを予め
設定しておいたビットシフト数に基づきビットシフト
し、第2のメモリに供給する手段を備えることを特徴と
するビットマップデータ転送装置によって達成される。
【0035】前記供給手段がビットシフト処理を複数段
組み合わせて実行するビットシフト手段を備えているこ
とが特に望ましい。
【0036】また、前記転送手段がラスターオペレーシ
ョン処理方法と与えられたビットマスク条件とを考慮
し、メモリに書き込むデータを決定するためのマスクデ
ータ発生手段を備えることも、同様に望ましい。
【0037】更に、転送装置が、メモリのアドレス系を
複数種類に対応可能とし、データ転送時にメモリアドレ
ス系を切換可能としたアドレス変換手段を具備してもよ
い。
【0038】
【作用】上記の構成によれば、CPUからメモリへのア
クセスを制御するメモリコントローラ内のビット対応処
理機能を内蔵していることで、ドット単位で描画制御を
行うようなグラフィック端末を用いたシステムにおける
文字描画処理を高速に行うことが出来る。
【0039】また、ビット対応処理部のみをメモリコン
トローラ内に組み込んだため、回路規模が小さく、コス
トパフォーマンスに優れたシステムを構成出来る。
【0040】また、元のメモリの内容と、書き込むデー
タとのラスターオペレーション(AND,OR等)を行
う部分もメモリ制御回路内にあるため、ラスターオペレ
ーションを伴ったメモリ間のデータ転送処理も高速に行
う事が出来る。
【0041】
【実施例】本実施例では、メモリ間のデータ転送(特に
文字データの転送)時において、ビット対応を行う処理
部分をメモリ制御回路内に組み込む事により、コストパ
フォーマンスに優れた描画処理システムを構築してい
る。
【0042】本発明に係わる文字描画装置は、従来例と
同じ図1に示され、描画処理を行うCPU11と、前記
CPU11が動作するためのプログラムおよびデータを
格納するためのメインメモリ12と、前記CPU11か
らメインメモリ12へのアクセスを制御するメインメモ
リコントローラ13と、前記CPU11から表示用メモ
リ15へのアクセスを制御するための表示メモリコント
ローラ14と、データを画面上に表示を行う表示装置1
6と、前記表示装置16に出力すべきデータを格納する
ための表示用メモリ15と、データの印刷を行うための
印刷装置20と、前記印刷装置20に出力すべきデータ
を格納(展開)するための印刷展開用メモリ17と、前
記CPU11から指示を受け印刷展開用メモリ18に対
するアクセスを制御するための印刷展開用メモリコント
ローラ18と、ドットイメージに格納された文字データ
を格納しておく領域であるCGROM19と、アウトラ
インフォントを生成し文字データを供給するアウトライ
ンフォントプロセッサ21と、アウトラインフォントを
生成するためのデータを格納しておくための領域である
アウトラインフォント部22とで構成される。
【0043】従来例と異なる部分は、ビットマップデー
タ転送装置としての表示用メモリコントローラ14(及
び印刷展開用メモリコントローラ18)の部分であり、
この表示用メモリコントローラ14の詳細なブロック構
成図を、図6に示す。本表示用メモリコントローラ14
は、ビットシフト数、マスクビット情報等の制御データ
を記憶するための制御レジスタ部1と、データのビット
シフトを実行するビットシフト部2と、メモリ9に供給
するマスクデータを作成するマスクデータ発生部3と、
メモリアドレスを切り換えるアドレス変換部4と、CP
U11から制御レジスタ1またはメモリ9がアクセスさ
れたかどうかを判断を行うアドレスデコーダ部5と、表
示データをメモリ9から表示装置16に出力する要求信
号と処理調停を行うアービトレーション部6と、メモリ
9に対して与えるアドレスを発生させるメモリアドレス
発生部7と、表示装置16のライン走査に合わせてメモ
リ9から表示データを出力する要求信号を発生する表示
タイミング発生部8と、表示データを記憶するためのメ
モリ9と、前記メモリ9に制御信号を供給するメモリ制
御信号発生部10とで構成される。
【0044】従来方式に対して追加された部分は、制御
レジスタ部1、ビットシフト部2、マスクデータ発生部
3、アドレス変換部4である。
【0045】制御レジスタ部1は、ビットシフト数、マ
スクビット情報等を記憶するためのレジスタ群で構成さ
れる。
【0046】ビットシフト回路2は、前記制御レジスタ
部から供給されるビットシフト数に基づき、CPUから
与えられたデータのビットシフト処理を行うものであ
る。
【0047】マスクデータ発生部3は、前記制御レジス
タ部から供給されたマスクビット情報とラスターオペレ
ーションモードによりメモリ9に供給するマスクデータ
を作成する部分である。
【0048】アドレス変換部4は、前記制御レジスタ部
1から供給されるアドレス情報により、文字描画を行う
時とそれ以外の時とで別のメモリアドレス系に切り換え
るように、CPU11からのアドレスを変換しメモリ9
に対するアドレスとして与えるものである。メモリアド
レス発生部7は、前記アドレス変換部4から供給される
変換アドレス情報により、メモリ9に対して与えるアド
レスを発生させる。
【0049】表示タイミング発生部8は、アービトレー
ション部6から供給される表示要求信号を受けて、表示
装置16のライン走査に合わせてメモリから表示データ
を出力する要求信号を発生し、メモリアドレス発生部7
に供給する。
【0050】メモリ制御信号発生部10は、メモリ9に
供給するための制御信号を発生させる。アドレスデコー
ダ部5は、前記CPU11から前記制御レジスタ1また
は前記メモリ9がアクセスされたかどうかの判断を行
い、制御レジスタ部1がアクセスされた時にはレジスタ
セレクト信号を発生させて制御レジスタ部1へ供給し、
メモリがアクセスされた時には、メモリリクエスト信号
を発生させ、アービトレーション部6へ供給する。
【0051】ここで、CPU11から与えられたデータ
が、レジスタセレクト信号のタイミングによって、制御
レジスタ1に書き込まれる。
【0052】図6におけるアドレスバス、データバスは
図1における共通バス部分に相当するものである。
【0053】アービトレーション回路6は、アドレスデ
コーダ部からメモリリクエスト信号を供給されると、表
示データをメモリ9から表示装置16に出力するための
要求信号(表示要求信号)を出力するとともに、処理調
停を行う。
【0054】処理調停とは、表示要求を実行中のため、
CPU11からのメモリアクセス要求が待たされる場合
に、CPU11にウェイトをかける操作である。また、
アービトレーション部6は、アドレスデコーダ部5から
メモリアクセス要求信号を供給されると、このタイミン
グが各種回路部に与えられ、必要なタイミングで制御信
号を発生する。
【0055】表示タイミング発生部8は、メモリ9から
表示データを表示装置16のライン走査に合わせて表示
装置16へ出力するための要求信号を、メモリアドレス
発生部7へ供給する。
【0056】以下、ビットシフト部2について、詳細に
説明していく。
【0057】ビットシフト部2の実施例の一例を、図7
に示す。
【0058】図7において、BF40〜BF43の部分
でまず4ビット単位のビットシフトを行う。SD0〜S
D15がCPU11からのデータであり、それを4ビッ
ト単位でビットシフトしたものが、信号名TD0〜TD
27に対応する。
【0059】つまり、ビットシフトしないときにはBF
40を導通状態とし、4ビットのシフトを行うときには
BF41を導通状態に、8ビットシフトを行うときには
BF42を導通状態に、12ビットのシフトを行う時に
はBF43を導通状態とする。
【0060】G40〜G43は、それぞれBF40〜B
F43の開閉状態を制御する制御信号である。つまり、
G40がアクティブであるとBF40が導通状態とな
る。
【0061】これらのG40〜G43の信号は予め設定
されているビットシフトデータから作成する事ができ
る。
【0062】これらの信号発生部を、図8に示す。
【0063】図8において、シフトビットレジスタ部2
3は、CPU11から与えられたシフトビットデータを
格納しておくためのものである。シフトビットデータの
書き込みタイミングでCPU11からのデータを書き込
む(この書き込みタイミングは第6図におけるアドレス
デコーダ部5で作成される)。このシフトレジストのデ
ータの上位2ビットをデコードする事によってG40〜
G43信号を作成する事ができる。
【0064】同様に下位2ビットをデコードする事によ
って1ビット単位のビットシフト信号G10〜G13を
作成する事ができる。このとき、CPUからは4ビット
データ(SD3〜SD0)を用いて0〜15ビットまで
のビットシフト数を表しているものとする。
【0065】次に4ビット単位にビットシフトされたデ
ータTD0〜TD27(このうち1部のデータはフロー
ティング状態となっている)をさらに1ビット単位に
(0〜3ビットの間で)シフトさせる。BF10がビッ
トシフト数0のとき導通状態となり、1ビットシフトの
ときにBF11が導通状態となり、2ビットシフトの時
にBF12が導通状態となり、3ビットシフトの時にB
F13が導通状態になる。G10〜G13はそれぞれB
F10〜BF13の開閉状態を制御するものである。
【0066】このように2段階に分けてビットシフトが
行われ、シフトされた後のデータが信号名BD0〜BD
30になる(SD0〜SD15を0〜15ビットの間で
シフトしたデータ)。
【0067】この図において、例えば、CPU11から
与えられたデータを2ビットシフトさせる時には、BF
40とBF12が導通状態となり、SD0〜SD15の
データがBD2〜BD17に接続される事になる。もう
一つの例として、9ビットのシフトを行う時にはBF4
2とBF11が導通状態となり、SD0〜SD15がB
D9〜BD24に接続される事になる。
【0068】上記した様に、2段階に分けてビットシフ
トを行う。
【0069】これは、以下に述べる2つの理由による。
【0070】1.図4に示す様に1ビットずつのシフト
をシフトビット数と同数分だけ繰り返して行う方法を採
用すると、必要な回路の規模は小さくなるため安価にて
製造可能となる反面、処理速度が非常に低速になってし
まう。
【0071】図4において、SD0〜SD15がCPU
11から与えられたデータを、BD0〜BD15がシフ
トされたデータを表している。CLK信号はシフトクロ
ック信号を表し、シフト回路1とシフト回路2に供給さ
れる。
【0072】このCLK信号をシフトビット数と同じ回
数与える事により、所定のビットシフトが行われる。
【0073】シフト回路2には、シフト回路1からシフ
トした結果オーバーフローしたビットデータが入力され
る(シフト回路1のSOUT端子から出力されたデータ
がシフト回路2のSIN端子に入力される)。シフト回
路1はパラレルイン/パラレルアウト型のシフト回路、
シフト回路2はシリアルイン/シリアルアウト型のシフ
ト回路である。
【0074】2.また逆に、図5に示す様に、全てのビ
ットシフトの組み合わせに対応する様に各々バッファを
用意した場合には、処理速度は速くなるが、必要となる
回路の規模が非常に大きなものとなるため、高価なもの
になってしまう。
【0075】図5にその実施例を示すが、ビットシフト
数が0の時にはBFS0が導通状態に、ビットシフト数
が1の時にはBFS1が導通状態に、…、ビットシフト
数が15の時にはBFS15が導通状態になり、いずれ
の場合も一段のみでビットシフト処理が完了する。
【0076】上記の2つの理由を考慮して、本実施例で
は、複数段に分けてビットシフトを行っている。
【0077】複数段に分けてシフト処理を行うには、例
えば、16ビットのデータの場合には、上記した例に示
す4ビット・1ビットの2段階方式に他に、まず第1段
階として8ビット単位のシフトを行い、次に4ビット単
位のシフトを行う、さらに2ビット単位でのシフトを行
い、最後に1ビット単位のシフトを行う方法等がある。
この場合には4段階でビットシフト処理が行われる事に
なる。
【0078】一般的にnビット(n=2k ,kは自然数
とする)のデータをビットシフトさせる時には、n/
2、n/22 、n/23 、…、2、1ビット単位のビッ
トシフトを行うか否か(最後の1ビット単位のビットシ
フトは必ず必要)の2logn通り(ここで、logの底は
2である)の組み合わせが存在する。これらについて、
必要となる回路規模を算出し最適なものを選べば良い。
【0079】nビットデータに対してn1 、n2 、n3
、…、nm-1 、nm (=1)ビット単位のデータシフ
トを行う時には、図9に示すような組み合わせでビット
シフトを行わなければならないので、まずn1 ビット単
位にシフトさせるためにn×n/n1 =n2 /n1 ビッ
トのバッファが必要となる。次にn2 ビットをシフトさ
せるためには(2n−n1 )×n1 /n2 ビットのバッ
ファが必要となる。同様にしてnm ビット単位のビット
シフトを行うためには、(n−nm-1 )×nm-1/nm
ビットのバッファが必要となる。そのため、合計では2
nΣ(ni-1 /n1 )−Σ(ni-1 2 /n1 )ビット分
のバッファが必要となる(ただし、n0 =nとする)。
【0080】この式でn1 を順次変えながら最適な組み
合わせを選ぶ事ができる。
【0081】例えば16ビットデータの時には、表2に
示すようなビットシフトの状態とゲート数となる。表2
から第1段階として4ビット単位のビットシフトを行
い、次に1ビット単位のシフトを行った場合が1番小さ
な回路規模(176ビット分のバッファ)で済む事が分
かる。
【0082】
【表2】
【0083】このようにして求められた回路規模と処理
段数(処理時間)との対比から最適な処理方法を選択す
る。
【0084】一例として、処理段数については1段当た
り10の倍率とし、必要回路を1ビットバッファ当たり
1の倍率とし、各処理方法についてその値を計算し、こ
の値の1番小さいものを最適な処理方法として求めてい
くと、最初に4ビット単位のシフトを行い、次に1ビッ
ト単位のシフトを行う方法が最小な値となり、最適な処
理となる。
【0085】別の倍率として1ビットバッファ=1、処
理1段=100を与えた場合には、16ビットデータす
べてのシフトの組み合わせバッファを設け、1段で処理
を行う方法が、最小な値となり、最適な処理となる。
【0086】同様に8ビットデータのときの必要回路規
模について表3に示す。データが8ビットの時には各処
理方法で必要回路規模があまり違わないため、1段で処
理する方が良いという結果が得られやすい。
【0087】
【表3】
【0088】上記の様に、本実施例では、最適な複数段
数の組み合わせによってビットシフト処理を実現する。
【0089】実際の処理では、上述した処理の他にフロ
ーティング状態となったデータの制御を行う必要がある
が、この部分は全体を占める割合が小さいものと考え、
ここでは計算対象には含めない事とした。
【0090】次に、メモリへのライト時に、元のデータ
とAND,OR等のラスターオペレーションを行う場合
の、マスクデータの作成方法について説明する。
【0091】ラスターオペレーションモードとマスクビ
ット情報から、メモリに対して与えるマスクビットデー
タを作成する法則を表4に示す。
【0092】また、マスクビットデータ作成例(上書き
モードの時)を図10に示す。
【0093】ここで、メモリは以下の機能が持つものと
する。
【0094】・マスクビットデータに0が与えられた時
は、ライトデータを書き込まれず、元のメモリデータを
そのまま残す。
【0095】・マスクビットデータに1が与えられた時
は、ライトデータが書き込まれ、元のメモリデータは失
われる。
【0096】ラスターオペレーションを選択しない時に
は(単純な上書きの時)、与えられたマスクビット情報
をそのままメモリへのマスクビット情報として用いる。
ラスターオペレーションがORの時には、メモリに書き
込むべきデータが0の部分を新たにマスクビットとして
追加する。
【0097】これは、ラスターオペレーションがORの
時にはマスクビットとして指定されなかった部分につい
ては、CPUから与えられたデータが0の部分はメモリ
の元のデータを残し、データが1の部分だけ上書きすれ
ば良いという性質による。
【0098】同様に、ANDの時には、メモリへ書き込
むべきデータが1の部分を新たにマスクビットとして追
加する(データが1のビットに対しては元のメモリデー
タを残せば良いという性質によるため)。
【0099】このようにしてメモリに対するマスクデー
タを作成する事ができる。AND,OR以外のラスター
オペレーション、例えばXOR等については元のメモリ
のデータが分からなければマスクデータを作成する事が
できないため、別の方法が必要となる。
【0100】マスクデータ発生部3の構成図を、図11
に示す。
【0101】図11において、BFM1は上書きモード
の時に導通状態となるバッファである。この時には予め
与えられたマスクビットデータをメモリに対するマスク
データとしてメモリに与える。BFM2はラスターオペ
レーションがORの時に導通状態となるものである。こ
の時、マスクデータ作成部1は、上記で説明したラスタ
ーオペレーションがORの時のマスクデータの作成を行
う。BFM3はラスターオペレーションがANDの時に
導通状態となるものである。マスクデータ作成部2は上
記のラスターオペレーションがANDの時のマスクデー
タの作成を行うものである。
【0102】このように、メモリ9に対するマスクデー
タを作成する事ができる。
【0103】
【表4】
【0104】さらに、上記した従来例(特許公報 昭6
3−30632)と同様なアドレス変換回路を設けるこ
とにより、文字描画処理の高速化が可能となる。
【0105】以下、アドレス変換部4の動作を説明す
る。
【0106】図12に示すように、アドレス変換部4
は、CPU11から見たメモリ9のアドレスを2つのア
ドレス系に対応させるためのものである。
【0107】図12はそれぞれ表示画面(装置)に対応
したメモリ空間のアドレスを表している。通常の状態で
は(a)のアドレス系に対応させているものとし、文字
描画を行うときには、CPU11からみたメモリアドレ
スを(b)の状態にするものとする。このため、アドレ
ス変換部4では、(b)の状態から(a)の状態にアド
レス変換する必要がある。
【0108】この処理を図13に示す。CPU11から
与えられたアドレスをSA16〜SA0、変換後のアド
レスをMA16〜MA0とする。この時のアドレスの対
応状態を示したものが図13である。図13に示したよ
うに、図12の(1)のモードではSA16〜SA0を
そのままMA16〜MA0に対応する。図12の(2)
のモードではSA16〜SA11をMA6〜MA0に対
応、SA10〜SA0をMA16〜MA7に対応させ
る。このようにアドレスのモードの状態によってアドレ
スの接続状態を変えることでアドレス変換が行える。
【0109】上記のようにCPU11からみたメモリア
ドレスを複数のアドレス系に対応させることにより、そ
れぞれのメモリ転送の性質に応じたアドレス系が選択可
能となる。そのため、より効率の良いメモリ間転送が可
能となる。
【0110】
【発明の効果】上記説明してきたように、本発明によっ
て、 1.ビットのずれがあるメモリ間のデータ転送を高速に
行う事ができる。
【0111】2.データ書き込み時にAND,OR等の
ラスターオペレーションを伴った場合でも高速に処理す
ることができる。
【0112】3.複数のメモリアドレス系に対応するこ
とにより、メモリデータの格納性質に応じた高速転送が
可能となる。
【図面の簡単な説明】
【図1】文字描画装置の一例の構成図を示す。
【図2】ビットのずれがあるときの文字描画を説明する
ための図を示す。
【図3】ドットフォントのデータ格納方法の説明に供す
る図を示す。
【図4】1ビット単位にビットシフト処理を行う回路の
一例を示す。
【図5】全てのビットシフト処理を一度に行う回路の一
例を示す。
【図6】本発明における一実施例に用いる表示用メモリ
コントローラの構成図を示す。
【図7】本発明における一実施例に用いるビットシフト
処理部の構成図を示す。
【図8】ビットシフトデータからのシフト制御信号の生
成を説明するための図を示す。
【図9】本発明の一実施例におけるビットシフト動作を
説明するための図を示す。
【図10】本発明の一実施例におけるメモリに与えるマ
スクデータの作成方法を説明するための図を示す。
【図11】本発明の一実施例におけるマスクデータ作成
部の内部構成図を示す。
【図12】本発明の一実施例におけるメモリアドレス構
成を説明するための図を示す。
【図13】本発明の一実施例におけるアドレス変換方法
を説明するための図を示す。
【符号の説明】
1. 制御レジスタ部 2. ビットシフト回路部 3. マスクデータ発生部 4. アドレス変換部 5. アドレスデコーダ部 6. アービトレーション部 7. メモリアドレス発生部 8. 表示タイミング部 9. メモリ 10. メモリ制御信号発生部 11. CPU 12. メインメモリ 13. メインメモリ発生部 14. 表示用メモリコントローラ 15. 表示用メモリ 16. 表示装置 17. 印刷展開用メモリ 18. 印刷展開用メモリコントローラ 19. CGROM 20. 印刷装置 21. アウトラインフォントプロセッサ 22. アウトラインフォント部 23. シフトビットレジスタ部

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 CPUからメモリへのアクセスを制御
    し、メモリ間でビットマップデータの転送を行うビット
    マップデータ転送装置であって、 該転送装置が、第1のメモリから読み出したビットマッ
    プデータを予め設定しておいたビットシフト数に基づき
    ビットシフトし、第二のメモリに転送する手段を備える
    ことを特徴とするビットマップデータ転送装置。
  2. 【請求項2】 前記転送装置がビットシフト処理を複数
    段組み合わせて実行するビットシフト手段を具備するこ
    とを特徴とする請求項1に記載のビットマップデータ転
    送装置。
  3. 【請求項3】 ラスターオペレーション処理方法と与え
    られたビットマスク条件とを考慮し、メモリに書き込む
    データを決定するためのマスクデータ発生手段を具備し
    た請求項1に記載のビットマップデータ転送装置。
  4. 【請求項4】 メモリのアドレス系を複数種類に対応可
    能とし、データ転送時にメモリアドレス系を切替可能と
    したアドレス変換手段を具備した請求項1に記載のビッ
    トマップデータ転送装置。
JP5119891A 1993-05-21 1993-05-21 ビットマップデータ転送装置 Pending JPH06332436A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5119891A JPH06332436A (ja) 1993-05-21 1993-05-21 ビットマップデータ転送装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5119891A JPH06332436A (ja) 1993-05-21 1993-05-21 ビットマップデータ転送装置

Publications (1)

Publication Number Publication Date
JPH06332436A true JPH06332436A (ja) 1994-12-02

Family

ID=14772792

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5119891A Pending JPH06332436A (ja) 1993-05-21 1993-05-21 ビットマップデータ転送装置

Country Status (1)

Country Link
JP (1) JPH06332436A (ja)

Similar Documents

Publication Publication Date Title
JPH0126072B2 (ja)
JP2761890B2 (ja) 線発生装置及びディスプレイ装置
JPH06332436A (ja) ビットマップデータ転送装置
US6628289B1 (en) Rendering apparatus and method, and storage medium
JP2647348B2 (ja) クリッピング・プレーン・データ記憶システム及び方法
JP2608275B2 (ja) 画像処理装置
JP2806679B2 (ja) 文字発生装置
JP3365068B2 (ja) 画像処理装置
JP2710350B2 (ja) 画像処理装置および画像処理装置の画像処理方法
JP2967861B2 (ja) 出力装置
KR890001867B1 (ko) 문자 이미지 변환 방법 및 장치
JP2803746B2 (ja) 文字処理方法及びその装置
JPH11224331A (ja) ラスタ画像生成装置およびラスタ画像生成方法
JP2871881B2 (ja) 画像処理装置
JP2854434B2 (ja) ドットイメージデータシフト書き込み装置
JPH05173539A (ja) 印刷制御装置
JPS5944088A (ja) 複合デイスプレイ装置
JPS61264377A (ja) 文字パタ−ン発生装置
JPH10214077A (ja) 合成描画データの生成方法および合成描画装置
JPH02196296A (ja) 文字発生器
JPS61292674A (ja) 文字パタ−ン発生装置
JPS60229766A (ja) 補間ドツトパタ−ンの出力制御方式
JPH1039852A (ja) スケーラブルフォントの高速表示処理装置
JPS60231275A (ja) 下線・傍線生成装置
JP2000092315A (ja) 画像処理装置