JPH1040399A - 描画装置、斜線描画データ生成装置、斜線描画アドレス生成装置、及び破線パターン生成装置 - Google Patents
描画装置、斜線描画データ生成装置、斜線描画アドレス生成装置、及び破線パターン生成装置Info
- Publication number
- JPH1040399A JPH1040399A JP20767796A JP20767796A JPH1040399A JP H1040399 A JPH1040399 A JP H1040399A JP 20767796 A JP20767796 A JP 20767796A JP 20767796 A JP20767796 A JP 20767796A JP H1040399 A JPH1040399 A JP H1040399A
- Authority
- JP
- Japan
- Prior art keywords
- data
- register
- address
- output
- selector
- 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
Links
Landscapes
- Dot-Matrix Printers And Others (AREA)
- Image Generation (AREA)
Abstract
(57)【要約】
【課題】 ハードウェアにより斜線を描画するようにし
て、描画時間を短縮し且つオブジェクトIDの不足を防
ぐことができる描画装置を提供する。 【解決手段】 ビットマップメモリ領域を有するメモリ
107と、斜線を描画するための描画アドレスと描画デ
ータを生成する斜線回路120と、破線パターンを生成
する破線回路120と、前記描画アドレスに基づき、前
記ビットマップメモリ領域からデータを獲得するDMA
コントローラ105と、前記描画データと前記破線パタ
ーンとを重ね合わせ、斜め破線描画データを生成する論
理回路103と、前記DMAコントローラ105からの
前記データと前記斜め破線描画データとの論理演算を行
い、その演算結果を前記メモリのビットマップメモリ領
域の前記描画アドレスに格納する論理演算部104とを
備えた。
て、描画時間を短縮し且つオブジェクトIDの不足を防
ぐことができる描画装置を提供する。 【解決手段】 ビットマップメモリ領域を有するメモリ
107と、斜線を描画するための描画アドレスと描画デ
ータを生成する斜線回路120と、破線パターンを生成
する破線回路120と、前記描画アドレスに基づき、前
記ビットマップメモリ領域からデータを獲得するDMA
コントローラ105と、前記描画データと前記破線パタ
ーンとを重ね合わせ、斜め破線描画データを生成する論
理回路103と、前記DMAコントローラ105からの
前記データと前記斜め破線描画データとの論理演算を行
い、その演算結果を前記メモリのビットマップメモリ領
域の前記描画アドレスに格納する論理演算部104とを
備えた。
Description
【0001】
【発明の属する技術分野】本発明は、ページプリンタの
コントローラ等に用いられ、斜め破線等を描画する機能
を有する描画装置、この描画装置に使用され斜線を描画
するための描画データを生成する斜線描画データ生成装
置、描画装置に使用され斜線を描画するための描画アド
レスを生成する斜線描画アドレス生成装置、及び前記描
画装置に使用され破線パターンを生成する破線パターン
生成装置に関する。
コントローラ等に用いられ、斜め破線等を描画する機能
を有する描画装置、この描画装置に使用され斜線を描画
するための描画データを生成する斜線描画データ生成装
置、描画装置に使用され斜線を描画するための描画アド
レスを生成する斜線描画アドレス生成装置、及び前記描
画装置に使用され破線パターンを生成する破線パターン
生成装置に関する。
【0002】
【従来の技術】従来、斜線の描画は、ソフトウェアによ
り小数点以下数桁の精度で座標計算を行ない、ソフトウ
ェアもしくはランレングス描画装置等を用いて描画され
る。さらに斜線が破線の場合は、斜線が複数の線分に分
けられ、各線分を描画することにより、破線描画が実現
されてきた。
り小数点以下数桁の精度で座標計算を行ない、ソフトウ
ェアもしくはランレングス描画装置等を用いて描画され
る。さらに斜線が破線の場合は、斜線が複数の線分に分
けられ、各線分を描画することにより、破線描画が実現
されてきた。
【0003】
【発明が解決しようとする課題】しかしながら、上記従
来例では、単純な斜線についても精度の高い座標計算を
行なうことや、ソフトウェアもしくはランレングス描画
装置等により描画を行なうために描画時間が長いといっ
た問題と、さらに斜め破線では描画オブジェクトが増加
してオブジェクトIDが足らなくなるといった問題や、
処理時間が分割した線分の数に比して増加するといった
問題がある。
来例では、単純な斜線についても精度の高い座標計算を
行なうことや、ソフトウェアもしくはランレングス描画
装置等により描画を行なうために描画時間が長いといっ
た問題と、さらに斜め破線では描画オブジェクトが増加
してオブジェクトIDが足らなくなるといった問題や、
処理時間が分割した線分の数に比して増加するといった
問題がある。
【0004】本発明は上記従来の問題点に鑑み、ハード
ウェアにより斜線を描画するようにして、描画時間を短
縮し且つオブジェクトIDの不足を防ぐことができる描
画装置を提供することを目的とする。さらに、この描画
装置に使用される斜線描画データ生成装置、斜線描画ア
ドレス生成装置、及び破線パターン生成装置を提供する
ことを目的とする。
ウェアにより斜線を描画するようにして、描画時間を短
縮し且つオブジェクトIDの不足を防ぐことができる描
画装置を提供することを目的とする。さらに、この描画
装置に使用される斜線描画データ生成装置、斜線描画ア
ドレス生成装置、及び破線パターン生成装置を提供する
ことを目的とする。
【0005】
【課題を解決するための手段】上記目的を達成するため
に、第1の発明である描画装置は、ビットマップメモリ
領域を有するメモリと、斜線を描画するための描画アド
レスと描画データを生成する斜線回路と、破線パターン
を生成する破線パターン生成回路と、前記描画アドレス
に基づき、前記ビットマップメモリ領域からデータを獲
得するDMAコントローラと、前記描画データと前記破
線パターンとを重ね合わせ、斜め破線描画データを生成
する重ね合わせ回路と、前記DMAコントローラからの
前記データと前記斜め破線描画データとの論理演算を行
い、その演算結果を前記メモリのビットマップメモリ領
域の前記描画アドレスに格納する論理演算部とを備えた
ものである。
に、第1の発明である描画装置は、ビットマップメモリ
領域を有するメモリと、斜線を描画するための描画アド
レスと描画データを生成する斜線回路と、破線パターン
を生成する破線パターン生成回路と、前記描画アドレス
に基づき、前記ビットマップメモリ領域からデータを獲
得するDMAコントローラと、前記描画データと前記破
線パターンとを重ね合わせ、斜め破線描画データを生成
する重ね合わせ回路と、前記DMAコントローラからの
前記データと前記斜め破線描画データとの論理演算を行
い、その演算結果を前記メモリのビットマップメモリ領
域の前記描画アドレスに格納する論理演算部とを備えた
ものである。
【0006】第2の発明である描画装置は、上記第1の
発明において、前記メモリに格納されたデータを出力す
る出力手段を設けたものである。
発明において、前記メモリに格納されたデータを出力す
る出力手段を設けたものである。
【0007】第3の発明である描画装置は、上記第2の
発明において、前記出力手段は、プリンタで構成したも
のである。
発明において、前記出力手段は、プリンタで構成したも
のである。
【0008】第4の発明である描画装置は、上記第2の
発明において、前記出力手段は、ディスプレイで構成し
たものである。
発明において、前記出力手段は、ディスプレイで構成し
たものである。
【0009】第5の発明である描画装置は、上記第1乃
至第4の発明において、斜線の始点、幅、傾き及び高さ
を設定する設定手段を設け、前記斜線回路は、前記設定
手段の設定に基づいて、前記描画アドレス及び前記描画
データを生成する構成にしたものである。
至第4の発明において、斜線の始点、幅、傾き及び高さ
を設定する設定手段を設け、前記斜線回路は、前記設定
手段の設定に基づいて、前記描画アドレス及び前記描画
データを生成する構成にしたものである。
【0010】第6の発明である斜線描画データ生成装置
は、斜線を描画する描画装置に備えられ、前記斜線を描
画するための描画データを生成する斜線描画データ生成
装置であって、オフセット位置情報を保持するオフセッ
トレジスタと、線幅情報を保持する線幅レジスタと、傾
き情報を保持する傾きレジスタと、前記オフセット情報
と前記線幅情報あるいは前記傾き情報との演算を行なう
演算器と、右エッジ位置情報と左エッジ位置情報の切替
えを行う第1のセレクタと、前記第1のセレクタの切り
替え結果を前記描画データに変換するデコーダと、前記
線幅情報を初期値とするカウンタと、前記カウンタのカ
ウント結果に基づいて、前記第1のセレクタの切り替え
制御を含む装置全体のデータの流れを制御するシーケン
サとを有するものである。
は、斜線を描画する描画装置に備えられ、前記斜線を描
画するための描画データを生成する斜線描画データ生成
装置であって、オフセット位置情報を保持するオフセッ
トレジスタと、線幅情報を保持する線幅レジスタと、傾
き情報を保持する傾きレジスタと、前記オフセット情報
と前記線幅情報あるいは前記傾き情報との演算を行なう
演算器と、右エッジ位置情報と左エッジ位置情報の切替
えを行う第1のセレクタと、前記第1のセレクタの切り
替え結果を前記描画データに変換するデコーダと、前記
線幅情報を初期値とするカウンタと、前記カウンタのカ
ウント結果に基づいて、前記第1のセレクタの切り替え
制御を含む装置全体のデータの流れを制御するシーケン
サとを有するものである。
【0011】第7の発明である斜線描画データ生成装置
は、上記第6の発明において、前記描画データを保持す
るデータラッチと、前記デコーダ及び前記データラッチ
の出力を受け、左エッジを含む描画データと右エッジを
含む描画データを重ねる論理積と、前記デコーダの出力
と前記論理積の出力を切替え、その切替え結果を前記デ
ータラッチへ出力する第2のセレクタとを設けたもので
ある。
は、上記第6の発明において、前記描画データを保持す
るデータラッチと、前記デコーダ及び前記データラッチ
の出力を受け、左エッジを含む描画データと右エッジを
含む描画データを重ねる論理積と、前記デコーダの出力
と前記論理積の出力を切替え、その切替え結果を前記デ
ータラッチへ出力する第2のセレクタとを設けたもので
ある。
【0012】第8の発明である斜線描画アドレス生成装
置は、斜線を描画するための描画データを生成してビッ
トマップメモリに格納する描画装置に設けられ、前記描
画データを前記ビットマップメモリの描画位置に格納す
るための描画アドレスを生成する斜線描画アドレス生成
装置であって、オフセット位置情報を保持するオフセッ
トレジスタと、前記ビットマッブメモリのメモリ幅を保
持する幅レジスタと、描画先頭ラインアドレスを保持す
る先頭レジスタと、前記先頭レジスタの出力と前記オフ
セットレジスタあるいは幅レジスタの出力とにより描画
アドレスを演算する演算器と、描画高さを保持する高さ
レジスタと、前記高さレジスタの出力を受けて描画ライ
ン数をカウントするカウンタと、前記カウンタのカウン
ト結果に基づいて装置全体のデータの流れを制御するシ
ーケンサとを有するものである。
置は、斜線を描画するための描画データを生成してビッ
トマップメモリに格納する描画装置に設けられ、前記描
画データを前記ビットマップメモリの描画位置に格納す
るための描画アドレスを生成する斜線描画アドレス生成
装置であって、オフセット位置情報を保持するオフセッ
トレジスタと、前記ビットマッブメモリのメモリ幅を保
持する幅レジスタと、描画先頭ラインアドレスを保持す
る先頭レジスタと、前記先頭レジスタの出力と前記オフ
セットレジスタあるいは幅レジスタの出力とにより描画
アドレスを演算する演算器と、描画高さを保持する高さ
レジスタと、前記高さレジスタの出力を受けて描画ライ
ン数をカウントするカウンタと、前記カウンタのカウン
ト結果に基づいて装置全体のデータの流れを制御するシ
ーケンサとを有するものである。
【0013】第9の発明である斜線描画アドレス生成装
置は、上記第8の発明において、描画アドレスを保持す
るアドレスラッチと、前記アドレスラッチ中の描画アド
レスを1ワード進めるインクリメンタと、前記演算器か
ら出力される描画アドレスと前記インクリメンタの出力
とを切替えその切替え結果を前記アドレスラッチへ出力
するるセレクタとを設けたものである。
置は、上記第8の発明において、描画アドレスを保持す
るアドレスラッチと、前記アドレスラッチ中の描画アド
レスを1ワード進めるインクリメンタと、前記演算器か
ら出力される描画アドレスと前記インクリメンタの出力
とを切替えその切替え結果を前記アドレスラッチへ出力
するるセレクタとを設けたものである。
【0014】第10の発明である破線パターン生成装置
は、請求項6の斜線描画データ生成回路に同期して破線
パターンを生成する破線パターン生成装置であって、破
線パターンを保持するパターンレジスタと、前記破線パ
ターンを主走査方向に投影するバレルシフタと、前記破
線パターンを副走査方向に投影するビットセレクタと、
前記バレルシフタの出力と前記ビットセレクタの出力を
切替えるセレクタと、前記セレクタの切替え制御を含む
装置全体のデータの流れを制御するシーケンサと、前記
シーケンサの動作モードを保持するモードレジスタとを
有するものである。
は、請求項6の斜線描画データ生成回路に同期して破線
パターンを生成する破線パターン生成装置であって、破
線パターンを保持するパターンレジスタと、前記破線パ
ターンを主走査方向に投影するバレルシフタと、前記破
線パターンを副走査方向に投影するビットセレクタと、
前記バレルシフタの出力と前記ビットセレクタの出力を
切替えるセレクタと、前記セレクタの切替え制御を含む
装置全体のデータの流れを制御するシーケンサと、前記
シーケンサの動作モードを保持するモードレジスタとを
有するものである。
【0015】第11の発明である破線パターン生成装置
は、上記第10の発明において、破線の変化点間の幅情
報を保持する複数の幅レジスタと、前記幅レジスタを選
択する幅選択セレクタと、前記幅選択セレクタの出力を
初期値とする幅カウンタと、前記幅カウンタのキャリ出
力によって出力を反転させるトグルフリップフロップ
と、前記トグルフリップフロップの出力を前記パターン
レジスタの各ビットに割り振るマルチプレクサと、前記
マルチプレクサの出力を切替えるビットカウンタと、前
記幅レジスタの繰り返し数を保持する繰り返し数レジス
タと、前記繰り返し数レジスタの値を初期値としカウン
ト状態に応じて前記幅選択セレクタを切り替える繰り返
しカウンタとを設けたものである。
は、上記第10の発明において、破線の変化点間の幅情
報を保持する複数の幅レジスタと、前記幅レジスタを選
択する幅選択セレクタと、前記幅選択セレクタの出力を
初期値とする幅カウンタと、前記幅カウンタのキャリ出
力によって出力を反転させるトグルフリップフロップ
と、前記トグルフリップフロップの出力を前記パターン
レジスタの各ビットに割り振るマルチプレクサと、前記
マルチプレクサの出力を切替えるビットカウンタと、前
記幅レジスタの繰り返し数を保持する繰り返し数レジス
タと、前記繰り返し数レジスタの値を初期値としカウン
ト状態に応じて前記幅選択セレクタを切り替える繰り返
しカウンタとを設けたものである。
【0016】
【発明の実施の形態】以下、図面を参照して本発明の実
施の形態を説明する。
施の形態を説明する。
【0017】図1は、本発明の第1実施形態に係る描画
装置のシステム構成を示したブロック図である。
装置のシステム構成を示したブロック図である。
【0018】CPU101が、描画先頭ライン位置情
報、オフセット位置情報、線幅情報、描画高さ情報、及
び傾き情報を斜線回路120内の斜線アドレス生成装置
121及び斜線データ生成装置122に設定する。さら
に、CPU101が破線回路102にモードを設定した
後、斜線回路120を起動すると、斜線アドレス生成回
路121が初めのアドレスを生成してDMAコントロー
ラ105に転送する。
報、オフセット位置情報、線幅情報、描画高さ情報、及
び傾き情報を斜線回路120内の斜線アドレス生成装置
121及び斜線データ生成装置122に設定する。さら
に、CPU101が破線回路102にモードを設定した
後、斜線回路120を起動すると、斜線アドレス生成回
路121が初めのアドレスを生成してDMAコントロー
ラ105に転送する。
【0019】アドレスが与えられたDMAコントローラ
105はメモリコントローラ106を起動してメモリ1
07内のビットマップメモリ領域から描画位置のディス
ティネーションデータを獲得し、論理演算回路104に
ディスティネーションデータを渡す。これと並行して斜
線データ生成回路122と破線回路102は描画データ
を生成し、論理積103により斜線描画データ126を
破線パターン125でマスクした斜め破線描画データ1
27を論理演算装置104に転送する。
105はメモリコントローラ106を起動してメモリ1
07内のビットマップメモリ領域から描画位置のディス
ティネーションデータを獲得し、論理演算回路104に
ディスティネーションデータを渡す。これと並行して斜
線データ生成回路122と破線回路102は描画データ
を生成し、論理積103により斜線描画データ126を
破線パターン125でマスクした斜め破線描画データ1
27を論理演算装置104に転送する。
【0020】論理演算装置104は、ディスティネーシ
ョンデータ118と描画データ127の論理演算を行な
い、その結果をDMAコントローラ105、及びメモリ
コントローラ106経由でメモリ107のビットマップ
メモリ領域の描画位置アドレスへ格納する。1ワードの
処理が終ると、斜線アドレス生成回路121は次のアド
レスを生成し、描画する全てのアドレスに対して上記シ
ーケンスを繰り返す。
ョンデータ118と描画データ127の論理演算を行な
い、その結果をDMAコントローラ105、及びメモリ
コントローラ106経由でメモリ107のビットマップ
メモリ領域の描画位置アドレスへ格納する。1ワードの
処理が終ると、斜線アドレス生成回路121は次のアド
レスを生成し、描画する全てのアドレスに対して上記シ
ーケンスを繰り返す。
【0021】図2は、メモリ107内のビットマップメ
モリ領域の様子を示す模式図である。
モリ領域の様子を示す模式図である。
【0022】斜線回路に設定する各情報は、ビットマッ
プメモリ上で図に示す位置情報である。
プメモリ上で図に示す位置情報である。
【0023】図3は、斜線データ生成回路122の構成
を示したブロック図である。
を示したブロック図である。
【0024】初めにCPUデータバス111を経由して
オフセット情報がオフセットレジスタ302に、傾き情
報が傾き変位レジスタ314に、線幅情報が線幅レジス
タ304にそれぞれ格納され、シーケンサ313が起動
する。
オフセット情報がオフセットレジスタ302に、傾き情
報が傾き変位レジスタ314に、線幅情報が線幅レジス
タ304にそれぞれ格納され、シーケンサ313が起動
する。
【0025】シーケンサ313は、初めにセレクタ30
6を切替えてオフセットレジスタ302のデータをデコ
ーダ307に転送する。デコーダ307はセレクタ30
7からの入力データと、シーケンサ313から与えられ
るモードにより、初めに主走査方向の左エッジを含むワ
ード(以下、左ワードと呼ぶ)を生成し、セレクタ30
8に転送する。シーケンサ313はセレクタ308を切
替え、デコーダ307の出力をデータラッチ309に転
送する。シーケンサ313は主走査方向のワード数をカ
ウントするカウンタ312のキャリ出力を参照し、1ワ
ード内に線幅が納まらなければ論理積310にイネーブ
ル信号を出して左ワードの描画データをデータバス12
6に送出する。
6を切替えてオフセットレジスタ302のデータをデコ
ーダ307に転送する。デコーダ307はセレクタ30
7からの入力データと、シーケンサ313から与えられ
るモードにより、初めに主走査方向の左エッジを含むワ
ード(以下、左ワードと呼ぶ)を生成し、セレクタ30
8に転送する。シーケンサ313はセレクタ308を切
替え、デコーダ307の出力をデータラッチ309に転
送する。シーケンサ313は主走査方向のワード数をカ
ウントするカウンタ312のキャリ出力を参照し、1ワ
ード内に線幅が納まらなければ論理積310にイネーブ
ル信号を出して左ワードの描画データをデータバス12
6に送出する。
【0026】次にシーケンサ313はカウンタ312を
カウントダウンし、キャリの出力されなかったことから
次のワードが右エッジを含まないとすると、デコーダ3
07に黒出力モードを指定し、左ワードと同様セレクタ
308を経由してデータラッチ309に黒データをラッ
チし、論理積310を開けて描画データをデータバス1
26に乗せる。
カウントダウンし、キャリの出力されなかったことから
次のワードが右エッジを含まないとすると、デコーダ3
07に黒出力モードを指定し、左ワードと同様セレクタ
308を経由してデータラッチ309に黒データをラッ
チし、論理積310を開けて描画データをデータバス1
26に乗せる。
【0027】次にシーケンサ313は、カウンタ312
をカウントダウンし、キャリが出力されて次のワードが
右エッジを含むとすると、セレクタ303を切替えて線
幅データを線幅レジスタ304からALU305に供給
し、セレクタ306を切替えてオフセットと線幅の加算
結果をデコーダ307に供給する。シーケンサ313か
ら右エッジを含むワード(以下、右ワードと呼ぶ)のモ
ードを指定されたデコーダ307は入力データから右ワ
ードのデータをデコードし、セレクタ308経由でデー
タラッチ309に供給する。シーケンサ313は右ワー
ドをデータラッチ309でラッチし、論理積310から
データバス126に右ワード描画データを乗せる。
をカウントダウンし、キャリが出力されて次のワードが
右エッジを含むとすると、セレクタ303を切替えて線
幅データを線幅レジスタ304からALU305に供給
し、セレクタ306を切替えてオフセットと線幅の加算
結果をデコーダ307に供給する。シーケンサ313か
ら右エッジを含むワード(以下、右ワードと呼ぶ)のモ
ードを指定されたデコーダ307は入力データから右ワ
ードのデータをデコードし、セレクタ308経由でデー
タラッチ309に供給する。シーケンサ313は右ワー
ドをデータラッチ309でラッチし、論理積310から
データバス126に右ワード描画データを乗せる。
【0028】次にシーケンサ313は改ライン動作とし
てセレクタ303を切替え、傾き変位レジスタ314か
ら傾きデータをALU305に供給し、セレクタ301
を切替えてオフセットデータと傾き変位の和をオフセッ
トレジスタ302にラッチする。同時に改行信号を斜線
アドレス生成回路121に送り、斜線アドレス生成回路
121に改行動作を行なわせる。もし、左エッジと右エ
ッジが1ワード内に納まる場合は、左ワードをデータラ
ッチ309にラッチした後、描画データをデータバス1
26に乗せずに左ワードをデコーダ307に出力させ、
セレクタ308を切替えて左ワードと右ワードを311
で論理積をとり、この結果をデータラッチ309にラッ
チしてから描画データをデータバス126に乗せる様に
動作する。
てセレクタ303を切替え、傾き変位レジスタ314か
ら傾きデータをALU305に供給し、セレクタ301
を切替えてオフセットデータと傾き変位の和をオフセッ
トレジスタ302にラッチする。同時に改行信号を斜線
アドレス生成回路121に送り、斜線アドレス生成回路
121に改行動作を行なわせる。もし、左エッジと右エ
ッジが1ワード内に納まる場合は、左ワードをデータラ
ッチ309にラッチした後、描画データをデータバス1
26に乗せずに左ワードをデコーダ307に出力させ、
セレクタ308を切替えて左ワードと右ワードを311
で論理積をとり、この結果をデータラッチ309にラッ
チしてから描画データをデータバス126に乗せる様に
動作する。
【0029】図4は、斜線アドレス生成回路121の構
成を示したブロック図である。
成を示したブロック図である。
【0030】初めにCPU101がオフセットデータを
オフセットレジスタ401に、ビットマップメモリの幅
を幅レジスタ402に、描画先頭ラインのアドレスを先
頭レジスタ406にそれぞれ設定した後、シーケンサ4
10を起動する。シーケンサ410は初めにセレクタ4
03を切替えて、オフセットレジスタ401の出力をA
LU404に転送し、先頭ラインアドレスにオフセット
を加えて最初の描画アドレスをアドレスラッチ408に
ラッチする。
オフセットレジスタ401に、ビットマップメモリの幅
を幅レジスタ402に、描画先頭ラインのアドレスを先
頭レジスタ406にそれぞれ設定した後、シーケンサ4
10を起動する。シーケンサ410は初めにセレクタ4
03を切替えて、オフセットレジスタ401の出力をA
LU404に転送し、先頭ラインアドレスにオフセット
を加えて最初の描画アドレスをアドレスラッチ408に
ラッチする。
【0031】次にシーケンサ410は改ライン信号が来
るまでセレクタ407を切替え、インクリメンタ409
を用いて1ワード分ずつアドレスを増加してアドレスバ
ス116に乗せる。改ライン信号が来たならば、シーケ
ンサ410はカウンタ412をカウントダウンすると共
に、セレクタ403を切替えてビットマップメモリ幅を
先頭アドレスに加算し、セレクタ405を切替えて加算
結果を先頭レジスタ406にラッチする。
るまでセレクタ407を切替え、インクリメンタ409
を用いて1ワード分ずつアドレスを増加してアドレスバ
ス116に乗せる。改ライン信号が来たならば、シーケ
ンサ410はカウンタ412をカウントダウンすると共
に、セレクタ403を切替えてビットマップメモリ幅を
先頭アドレスに加算し、セレクタ405を切替えて加算
結果を先頭レジスタ406にラッチする。
【0032】さらに、改ライン時のALU305のフラ
グ情報から、左エッジを含むワードのアドレスが右もし
くは左にずれる場合を判断した場合には、シーケンサ4
10はALU404にインクリメントもしくはデクリメ
ントのモードを指定し、先頭レジスタ406に再度ラッ
チする。先頭レジスタ406にラッチすると同時に、セ
レクタ407を切替えて次のラインの先顔アドレスをア
ドレスレジスタ408にラッチし、上記動作を繰り返
す。カウンタ412が描画高さ分をカウントダウンして
キャリを発生した場合には、シーケンサ410は動作を
停止し、描画を終了する。
グ情報から、左エッジを含むワードのアドレスが右もし
くは左にずれる場合を判断した場合には、シーケンサ4
10はALU404にインクリメントもしくはデクリメ
ントのモードを指定し、先頭レジスタ406に再度ラッ
チする。先頭レジスタ406にラッチすると同時に、セ
レクタ407を切替えて次のラインの先顔アドレスをア
ドレスレジスタ408にラッチし、上記動作を繰り返
す。カウンタ412が描画高さ分をカウントダウンして
キャリを発生した場合には、シーケンサ410は動作を
停止し、描画を終了する。
【0033】図5は、斜線描画回路120がビットマッ
プメモリ上でアクセスするワードを示した摸式図であ
り、改ラインの際に左ワードのアドレスがインクリメン
ト(傾きによってはデクリメント)される様子を表す。
プメモリ上でアクセスするワードを示した摸式図であ
り、改ラインの際に左ワードのアドレスがインクリメン
ト(傾きによってはデクリメント)される様子を表す。
【0034】図6は、破線回路102の構成を示したブ
ロック図である。
ロック図である。
【0035】CPU101がモードレジスタ609にモ
ードを設定し起動をかけると、シーケンサ608はDM
Aによってメモリ107の作業領域から破線パターンデ
ータを取得し、パターンレジスタ601,602,60
3,604に破線パターンをラッチする。
ードを設定し起動をかけると、シーケンサ608はDM
Aによってメモリ107の作業領域から破線パターンデ
ータを取得し、パターンレジスタ601,602,60
3,604に破線パターンをラッチする。
【0036】モードが主走査方向パターン投影モードで
あった場合は、シーケンサ608はバレルシフタ606
にオフセット情報から得られたシフト情報を与え、パタ
ーンレジスタ601,602,603,604にラッチ
されたデータをシフトし、セレクタ607を切替えてシ
フトしたワードをデータバス125に乗せる。
あった場合は、シーケンサ608はバレルシフタ606
にオフセット情報から得られたシフト情報を与え、パタ
ーンレジスタ601,602,603,604にラッチ
されたデータをシフトし、セレクタ607を切替えてシ
フトしたワードをデータバス125に乗せる。
【0037】線幅が広く、ラッチしたパターンデータを
越えた場合は、シーケンサ608がDMA転送により、
続くパターンデータをメモリ107の作業領域から獲得
してパターンレジスタ601〜604にラッチし、続き
の破線パターンをデータバス125に乗せる。改ライン
の際にはまた破線パターンの先頭からDMA転送により
パターンレジスタ601〜604にデータをラッチす
る。
越えた場合は、シーケンサ608がDMA転送により、
続くパターンデータをメモリ107の作業領域から獲得
してパターンレジスタ601〜604にラッチし、続き
の破線パターンをデータバス125に乗せる。改ライン
の際にはまた破線パターンの先頭からDMA転送により
パターンレジスタ601〜604にデータをラッチす
る。
【0038】また、モードが副走査方向パターン投影モ
ードであった場合は、シーケンサ608はビットセレク
タ605にセレクト信号を送ることによって順次1ビッ
トを選択し、セレクタ607を切替えて選択されたビッ
トの値でデータバス125をドライブする。改ラインの
際にビットセレクタ605のセレクト信号を更新し、次
のビットを出力し、これを描画終了まで繰り返す。
ードであった場合は、シーケンサ608はビットセレク
タ605にセレクト信号を送ることによって順次1ビッ
トを選択し、セレクタ607を切替えて選択されたビッ
トの値でデータバス125をドライブする。改ラインの
際にビットセレクタ605のセレクト信号を更新し、次
のビットを出力し、これを描画終了まで繰り返す。
【0039】また、モードが非破線モードであった場合
は、セレクタ607を切替え、黒データをデータバス1
25に出力する。
は、セレクタ607を切替え、黒データをデータバス1
25に出力する。
【0040】図7は、破線回路102の主走査方向パタ
ーン投影モード時の、破線パターンと描画データの関係
を示した摸式図である。図8は破線回路102の副走査
方向パターン投影モード時の、破線パターンと描画デー
タの関係を示した摸式図である。
ーン投影モード時の、破線パターンと描画データの関係
を示した摸式図である。図8は破線回路102の副走査
方向パターン投影モード時の、破線パターンと描画デー
タの関係を示した摸式図である。
【0041】次に、本発明の第2実施形態を説明する。
【0042】破線パターンが周期的に変化する場合に限
れば、破線回路102を図9のブロック図の様に構成す
ることにより、メモリ107の作業領域の容量を節約す
ることができる。初めにパターン幅レジスタ911〜9
16に破線パターンのオン及びオフの幅を設定し、パタ
ーン幅レジスタ911〜916の何処までを繰り返すか
を繰り返しレジスタ901に設定し、シーケンサ920
を起動する。
れば、破線回路102を図9のブロック図の様に構成す
ることにより、メモリ107の作業領域の容量を節約す
ることができる。初めにパターン幅レジスタ911〜9
16に破線パターンのオン及びオフの幅を設定し、パタ
ーン幅レジスタ911〜916の何処までを繰り返すか
を繰り返しレジスタ901に設定し、シーケンサ920
を起動する。
【0043】初めにカウンタ902の出力が0であり、
セレクタ903によってパターン幅レジスタ911の値
がカウンタ904に初期値としてロードされる。次にシ
ーケンサ920がカウンタ904,906をカウントダ
ウンする。トグルフリップフロップ905はカウンタ9
04がキャリを発生させるまで値を保持する。トグルフ
リップフロップ905の出力は、マルチプレクサ907
によってカウンタ906の状態値に対応する破線パター
ンレジスタ601の各ビットに割り振られ、ラッチされ
る。
セレクタ903によってパターン幅レジスタ911の値
がカウンタ904に初期値としてロードされる。次にシ
ーケンサ920がカウンタ904,906をカウントダ
ウンする。トグルフリップフロップ905はカウンタ9
04がキャリを発生させるまで値を保持する。トグルフ
リップフロップ905の出力は、マルチプレクサ907
によってカウンタ906の状態値に対応する破線パター
ンレジスタ601の各ビットに割り振られ、ラッチされ
る。
【0044】カウンタ904にキャリが発生するとトグ
ルフリップフロップ905は値を反転させ、シーケンサ
920はカウンタ902をカウントアップさせてセレク
タ903を切替え、パターン幅レジスタ912の値をカ
ウンタ904にロードし、上記動作を繰り返す。
ルフリップフロップ905は値を反転させ、シーケンサ
920はカウンタ902をカウントアップさせてセレク
タ903を切替え、パターン幅レジスタ912の値をカ
ウンタ904にロードし、上記動作を繰り返す。
【0045】カウンタ902の状態値が繰り返しレジス
タ901と同じになった場合は、カウンタがクリアされ
てセレクタ903が切り替わり、パターン幅レジスタ9
11の値がカウンタ904にロードされる。カウンタ9
06にキャリが発生した場合は、破線パターンレジスタ
601,602,603,604に全て破線パターンが
ラッチされたこととなり、その後は破線パターンレジス
タ601〜604のパターンを使い切るまで上記第1実
施形態と同様の動作をする。
タ901と同じになった場合は、カウンタがクリアされ
てセレクタ903が切り替わり、パターン幅レジスタ9
11の値がカウンタ904にロードされる。カウンタ9
06にキャリが発生した場合は、破線パターンレジスタ
601,602,603,604に全て破線パターンが
ラッチされたこととなり、その後は破線パターンレジス
タ601〜604のパターンを使い切るまで上記第1実
施形態と同様の動作をする。
【0046】図10は、パターン幅レジスタ911〜9
16及び繰り返しレジスタ901に設定する情報の関係
を示した摸式図である。当然ながら本実施形態の場合は
繰り返しレジスタ901に設定する値は0よりも大きく
5以下の整数である。本実施形態の場合は2点破線真で
の繰り返し破線パターンが可能なようにパターン幅レジ
スタを6個で構成した。なお、メモリに描画されたパタ
ーンは、不図示のプリンタやディスプレイにより出力さ
れる。
16及び繰り返しレジスタ901に設定する情報の関係
を示した摸式図である。当然ながら本実施形態の場合は
繰り返しレジスタ901に設定する値は0よりも大きく
5以下の整数である。本実施形態の場合は2点破線真で
の繰り返し破線パターンが可能なようにパターン幅レジ
スタを6個で構成した。なお、メモリに描画されたパタ
ーンは、不図示のプリンタやディスプレイにより出力さ
れる。
【0047】
【発明の効果】以上詳述したように、第1の発明である
描画装置によれば、ハードウェアにより斜線を描画する
ことが可能になり、斜め破線を1つの描画オブジェクト
として扱えることにより、描画時間が短縮され、オブジ
ェクトIDの不足を防ぐことができる。
描画装置によれば、ハードウェアにより斜線を描画する
ことが可能になり、斜め破線を1つの描画オブジェクト
として扱えることにより、描画時間が短縮され、オブジ
ェクトIDの不足を防ぐことができる。
【0048】第2の発明である描画装置によれば、出力
手段を備えた構成において、第1の発明の効果を享受す
ることができる。
手段を備えた構成において、第1の発明の効果を享受す
ることができる。
【0049】第3の発明である描画装置によれば、出力
手段としてプリンタを備えた構成において、第1の発明
の効果を享受することができる。
手段としてプリンタを備えた構成において、第1の発明
の効果を享受することができる。
【0050】第4の発明である描画装置によれば、出力
手段としてディスプレイを備えた構成において、第1の
発明の効果を享受することができる。
手段としてディスプレイを備えた構成において、第1の
発明の効果を享受することができる。
【0051】第5の発明である描画装置によれば、上記
第1の発明と同様の効果を得ることができるほかに、斜
線の始点、幅、傾き及び高さを自在に設定することがで
きる。
第1の発明と同様の効果を得ることができるほかに、斜
線の始点、幅、傾き及び高さを自在に設定することがで
きる。
【0052】第6の発明である斜線描画データ生成装置
は、描画装置に用いる斜線描画データ生成装置を簡単か
つ的確にハード構成することができる。
は、描画装置に用いる斜線描画データ生成装置を簡単か
つ的確にハード構成することができる。
【0053】第7の発明である斜線描画データ生成装置
によれば、描画装置に用いる斜線描画データ生成装置を
より簡単かつ的確にハード構成することができる。
によれば、描画装置に用いる斜線描画データ生成装置を
より簡単かつ的確にハード構成することができる。
【0054】第8の発明である斜線描画アドレス生成装
置は、描画装置に用いる斜線描画アドレス生成装置をよ
り簡単かつ的確にハード構成することができる。
置は、描画装置に用いる斜線描画アドレス生成装置をよ
り簡単かつ的確にハード構成することができる。
【0055】第9の発明である斜線描画アドレス生成装
置によれば、描画装置に用いる斜線描画アドレス生成装
置をより簡単かつ的確にハード構成することができる。
置によれば、描画装置に用いる斜線描画アドレス生成装
置をより簡単かつ的確にハード構成することができる。
【0056】第10の発明である破線パターン生成装置
によれば、描画装置に用いる破線パターン生成装置をよ
り簡単かつ的確にハード構成することができる。
によれば、描画装置に用いる破線パターン生成装置をよ
り簡単かつ的確にハード構成することができる。
【0057】第11の発明である破線パターン生成装置
によれば、描画装置に用いる破線パターン生成装置をよ
り簡単かつ的確にハード構成することができる。
によれば、描画装置に用いる破線パターン生成装置をよ
り簡単かつ的確にハード構成することができる。
【図1】本発明の第1実施形態に係る描画装置のシステ
ム構成を示したブロック図である。
ム構成を示したブロック図である。
【図2】メモリ内のビットマップメモリ領域の様子を示
す模式図である。
す模式図である。
【図3】斜線データ生成回路の構成を示したブロック図
である。
である。
【図4】斜線アドレス生成回路の構成を示したブロック
図である。
図である。
【図5】斜線回路がビットマップメモリ上でアクセスす
るワードを示した摸式図である。
るワードを示した摸式図である。
【図6】破線回路の構成を示したブロック図である。
【図7】破線回路の主走査方向パターン投影モード時に
おける破線パターンと描画データの関係を示した摸式図
である。
おける破線パターンと描画データの関係を示した摸式図
である。
【図8】破線回路の副走査方向パターン投影モード時に
おける破線パターンと描画データの関係を示した摸式図
である。
おける破線パターンと描画データの関係を示した摸式図
である。
【図9】第2実施形態の破線回路の構成を示すブロック
図である。
図である。
【図10】第2実施形態の破線回路に設定されるデータ
と破線パターンとの対応を示す摸式図である。
と破線パターンとの対応を示す摸式図である。
101 CPU 102 破線回路 103 論理積 104 論理演算回路 105 DMAコントローラ 106 メモリコントローラ 107 メモリ 111 CPUデータバス 112 CPUアドレスバス 113 メモリバス 114 DMAデータバス 115 DMAアドレスバス 116 斜線アドレスバス 118 ディスティネーションデータバス 120 斜線回路 121 斜線アドレス生成回路 122 斜線データ生成回路 126 斜線データバス 127 斜め破線データバス 301 セレクタ 302 オフセットレジスタ 303 セレクタ 304 幅レジスタ 305 ALU 306 セレクタ 307 デコーダ 308 セレクタ 309 斜線データラッチ 310 論理積 311 論理積 312 カウンタ 313 シーケンサ 314 傾き変位レジスタ 401 オフセットレジスタ 402 幅レジスタ 403 セレクタ 404 ALU 405 セレクタ 406 先頭レジスタ 407 セレクタ 408 アドレスラッチ 409 インクリメンタ 410 シーケンサ 411 描画高さレジスタ 412 カウンタ 601〜604 破線パターンレジスタ 605 ビットセレクタ 606 バレルシフタ 607 セレクタ 608 シーケンサ 609 モードレジスタ 901 繰り返しレジスタ 902 カウンタ 903 セレクタ 904 カウンタ 905 トグルフリップフロップ 906 カウンタ 907 マルチプレクサ 911,912,913,914,915,916 幅
レジスタ
レジスタ
Claims (11)
- 【請求項1】 ビットマップメモリ領域を有するメモリ
と、 斜線を描画するための描画アドレスと描画データを生成
する斜線回路と、 破線パターンを生成する破線パターン生成回路と、 前記描画アドレスに基づき、前記ビットマップメモリ領
域からデータを獲得するDMAコントローラと、 前記描画データと前記破線パターンとを重ね合わせ、斜
め破線描画データを生成する重ね合わせ回路と、 前記DMAコントローラからの前記データと前記斜め破
線描画データとの論理演算を行い、その演算結果を前記
メモリのビットマップメモリ領域の前記描画アドレスに
格納する論理演算部とを備えたことを特徴とする描画装
置。 - 【請求項2】 前記メモリに格納されたデータを出力す
る出力手段を設けたことを特徴とする請求項1記載の描
画装置。 - 【請求項3】 前記出力手段は、プリンタで構成したこ
とを特徴とする請求項2記載の描画装置。 - 【請求項4】 前記出力手段は、ディスプレイで構成し
たことを特徴とする請求項2記載の描画装置。 - 【請求項5】 斜線の始点、幅、傾き及び高さを設定す
る設定手段を設け、 前記斜線回路は、前記設定手段の設定に基づいて、前記
描画アドレス及び前記描画データを生成する構成にした
ことを特徴とする請求項1乃至4記載の描画装置。 - 【請求項6】 斜線を描画する描画装置に備えられ、前
記斜線を描画するための描画データを生成する斜線描画
データ生成装置であって、 オフセット位置情報を保持するオフセットレジスタと、
線幅情報を保持する線幅レジスタと、傾き情報を保持す
る傾きレジスタと、前記オフセット情報と前記線幅情報
あるいは前記傾き情報との演算を行なう演算器と、右エ
ッジ位置情報と左エッジ位置情報の切替えを行う第1の
セレクタと、前記第1のセレクタの切り替え結果を前記
描画データに変換するデコーダと、前記線幅情報を初期
値とするカウンタと、前記カウンタのカウント結果に基
づいて、前記第1のセレクタの切り替え制御を含む装置
全体のデータの流れを制御するシーケンサとを有するこ
とを特徴とする斜線描画データ生成装置。 - 【請求項7】 前記描画データを保持するデータラッチ
と、前記デコーダ及び前記データラッチの出力を受け、
左エッジを含む描画データと右エッジを含む描画データ
を重ねる論理積と、前記デコーダの出力と前記論理積の
出力を切替え、その切替え結果を前記データラッチへ出
力する第2のセレクタとを設けたことを特徴とする請求
項6記載の斜線描画データ生成装置。 - 【請求項8】 斜線を描画するための描画データを生成
してビットマップメモリに格納する描画装置に設けら
れ、前記描画データを前記ビットマップメモリの描画位
置に格納するための描画アドレスを生成する斜線描画ア
ドレス生成装置であって、 オフセット位置情報を保持するオフセットレジスタと、
前記ビットマッブメモリのメモリ幅を保持する幅レジス
タと、描画先頭ラインアドレスを保持する先頭レジスタ
と、前記先頭レジスタの出力と前記オフセットレジスタ
あるいは幅レジスタの出力とにより描画アドレスを演算
する演算器と、描画高さを保持する高さレジスタと、前
記高さレジスタの出力を受けて描画ライン数をカウント
するカウンタと、前記カウンタのカウント結果に基づい
て装置全体のデータの流れを制御するシーケンサとを有
することを特徴とする斜線描画アドレス生成装置。 - 【請求項9】 描画アドレスを保持するアドレスラッチ
と、前記アドレスラッチ中の描画アドレスを1ワード進
めるインクリメンタと、前記演算器から出力される描画
アドレスと前記インクリメンタの出力とを切替えその切
替え結果を前記アドレスラッチへ出力するるセレクタと
を設けたことを特徴とする請求項8の斜線描画アドレス
生成装置。 - 【請求項10】 請求項6の斜線描画データ生成回路に
同期して破線パターンを生成する破線パターン生成装置
であって、 破線パターンを保持するパターンレジスタと、前記破線
パターンを主走査方向に投影するバレルシフタと、前記
破線パターンを副走査方向に投影するビットセレクタ
と、前記バレルシフタの出力と前記ビットセレクタの出
力を切替えるセレクタと、前記セレクタの切替え制御を
含む装置全体のデータの流れを制御するシーケンサと、
前記シーケンサの動作モードを保持するモードレジスタ
とを有することを特徴とする破線パターン生成装置。 - 【請求項11】 破線の変化点間の幅情報を保持する複
数の幅レジスタと、前記幅レジスタを選択する幅選択セ
レクタと、前記幅選択セレクタの出力を初期値とする幅
カウンタと、前記幅カウンタのキャリ出力によって出力
を反転させるトグルフリップフロップと、前記トグルフ
リップフロップの出力を前記パターンレジスタの各ビッ
トに割り振るマルチプレクサと、前記マルチプレクサの
出力を切替えるビットカウンタと、前記幅レジスタの繰
り返し数を保持する繰り返し数レジスタと、前記繰り返
し数レジスタの値を初期値としカウント状態に応じて前
記幅選択セレクタを切り替える繰り返しカウンタとを設
けたことを特徴する請求項10の破線パターン生成装
置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP20767796A JPH1040399A (ja) | 1996-07-19 | 1996-07-19 | 描画装置、斜線描画データ生成装置、斜線描画アドレス生成装置、及び破線パターン生成装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP20767796A JPH1040399A (ja) | 1996-07-19 | 1996-07-19 | 描画装置、斜線描画データ生成装置、斜線描画アドレス生成装置、及び破線パターン生成装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH1040399A true JPH1040399A (ja) | 1998-02-13 |
Family
ID=16543749
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP20767796A Pending JPH1040399A (ja) | 1996-07-19 | 1996-07-19 | 描画装置、斜線描画データ生成装置、斜線描画アドレス生成装置、及び破線パターン生成装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH1040399A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6731776B1 (en) | 2000-02-02 | 2004-05-04 | Fuji Xerox Co., Ltd. | Image recording apparatus |
WO2008105494A1 (ja) | 2007-02-28 | 2008-09-04 | Nec Corporation | Dma転送装置及び方法 |
-
1996
- 1996-07-19 JP JP20767796A patent/JPH1040399A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6731776B1 (en) | 2000-02-02 | 2004-05-04 | Fuji Xerox Co., Ltd. | Image recording apparatus |
WO2008105494A1 (ja) | 2007-02-28 | 2008-09-04 | Nec Corporation | Dma転送装置及び方法 |
US9367496B2 (en) | 2007-02-28 | 2016-06-14 | Nec Corporation | DMA transfer device and method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0095618B1 (en) | Memory system | |
EP0164880A2 (en) | A circuit for modifying data in a display memory | |
JPS63198174A (ja) | 図形処理装置 | |
EP0377976B1 (en) | Microcode control apparatus utilizing programmable logic array circuits | |
JP2863933B2 (ja) | グラフイツク・コンピユータ装置 | |
JP2549642B2 (ja) | 画像処理装置 | |
JPH0570187B2 (ja) | ||
JPH1040399A (ja) | 描画装置、斜線描画データ生成装置、斜線描画アドレス生成装置、及び破線パターン生成装置 | |
JPH0640259B2 (ja) | デ−タ処理装置 | |
US6628289B1 (en) | Rendering apparatus and method, and storage medium | |
JPH02123470A (ja) | ブールラスター演算を実行する装置 | |
JP3546527B2 (ja) | 画像データ回転処理装置 | |
EP0676721A2 (en) | Styled vector generator | |
JP2003316722A (ja) | Dmaコントローラ | |
JPH1011388A (ja) | ダイレクトメモリアクセス制御装置 | |
JP3238202B2 (ja) | 文字・図形発生装置および情報処理装置 | |
JPS6249570A (ja) | 画像処理装置 | |
JPH07152357A (ja) | データ変換方法及び装置 | |
JPH02153392A (ja) | ベクトル図形表示方法 | |
JPH06100904B2 (ja) | メモリアクセス装置 | |
JPS62160867A (ja) | コンピユ−タ・フアクシミリ通信接続装置 | |
JPH0785014A (ja) | 罫線発生方式 | |
JPH01239584A (ja) | 文字図形描画装置 | |
JPS62271186A (ja) | 図形発生装置 | |
JPH10315548A (ja) | データ処理装置および方法ならびに、印刷装置 |