JPH0668760B2 - 画像編集装置用dmaコントロ−ラ - Google Patents
画像編集装置用dmaコントロ−ラInfo
- Publication number
- JPH0668760B2 JPH0668760B2 JP61196934A JP19693486A JPH0668760B2 JP H0668760 B2 JPH0668760 B2 JP H0668760B2 JP 61196934 A JP61196934 A JP 61196934A JP 19693486 A JP19693486 A JP 19693486A JP H0668760 B2 JPH0668760 B2 JP H0668760B2
- Authority
- JP
- Japan
- Prior art keywords
- transfer
- address
- register
- image
- memory
- 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 - Fee Related
Links
- 230000015654 memory Effects 0.000 claims description 37
- 238000000034 method Methods 0.000 claims description 11
- 238000010586 diagram Methods 0.000 description 3
- 101000699844 Homo sapiens Retrotransposon Gag-like protein 9 Proteins 0.000 description 2
- 102100029440 Retrotransposon Gag-like protein 9 Human genes 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 2
- 101000979001 Homo sapiens Methionine aminopeptidase 2 Proteins 0.000 description 1
- 101000969087 Homo sapiens Microtubule-associated protein 2 Proteins 0.000 description 1
- 102100023174 Methionine aminopeptidase 2 Human genes 0.000 description 1
- 108090000192 Methionyl aminopeptidases Proteins 0.000 description 1
- 102100021118 Microtubule-associated protein 2 Human genes 0.000 description 1
- 101150076678 SETMAR gene Proteins 0.000 description 1
- 239000013256 coordination polymer Substances 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
Landscapes
- Image Input (AREA)
- Bus Control (AREA)
Description
【発明の詳細な説明】 〔産業上の利用分野〕 本発明はデジタル的に画像を合成、切り出し、回転、拡
大/縮小等を行う画像編集装置において、簡単な構成で
メモリデータの転送の高速化を図る画像編集装置用DM
Aコントローラに関する。
大/縮小等を行う画像編集装置において、簡単な構成で
メモリデータの転送の高速化を図る画像編集装置用DM
Aコントローラに関する。
従来の画像編集装置用DMAコントローラとして、例え
ば、情報処理学会第23回(昭和56年後期)全国大会の
「文書管理システムにおける文書イメージ処理方式」に
発表されたものがある。第9図はこのDMAコントロー
ラを示し、ホストCPU(図示せず)からのコマンドに
よってDMAコントローラの動作を決定して各部を制御
する制御回路1と、転送元および転送先の各アドレスを
セットするアドレスカウンタ31、32と、転送元および転
送先の各データ間隔(データの切り出し領域の1つのラ
インの最終ワードのアドレスから次ラインの先頭ワード
のアドレスまでのアドレス間隔)をセットするデータ間
隔レジスタ33、34と、転送元のアドレス計算を実施する
演算装置(ALU)37と、転送先のアドレス計算を実施
するALU38と、アドレスカウンタ31、32へアドレスを
セットするマルチプレクサ35、36と、転送ワード数をセ
ットするワードレジスタ11、13と、前記ワードレジスタ
11、13にセットされたワード数をロードして減算カウン
トするワードカウンタ12、14と、アドレスカウンタ31又
は、アドレスカウンタ32の内容をロードするメモリアド
レスレジスタ9(MAR)と、ホストCPUからコマン
ド、アドレス、カウント値等をDMAコントローラへ設
定する際に使用する制御データバス15と、MAR9のア
ドレスを画像メモリへ出力するアドレスバス16と、画像
メモリ17を有している。
ば、情報処理学会第23回(昭和56年後期)全国大会の
「文書管理システムにおける文書イメージ処理方式」に
発表されたものがある。第9図はこのDMAコントロー
ラを示し、ホストCPU(図示せず)からのコマンドに
よってDMAコントローラの動作を決定して各部を制御
する制御回路1と、転送元および転送先の各アドレスを
セットするアドレスカウンタ31、32と、転送元および転
送先の各データ間隔(データの切り出し領域の1つのラ
インの最終ワードのアドレスから次ラインの先頭ワード
のアドレスまでのアドレス間隔)をセットするデータ間
隔レジスタ33、34と、転送元のアドレス計算を実施する
演算装置(ALU)37と、転送先のアドレス計算を実施
するALU38と、アドレスカウンタ31、32へアドレスを
セットするマルチプレクサ35、36と、転送ワード数をセ
ットするワードレジスタ11、13と、前記ワードレジスタ
11、13にセットされたワード数をロードして減算カウン
トするワードカウンタ12、14と、アドレスカウンタ31又
は、アドレスカウンタ32の内容をロードするメモリアド
レスレジスタ9(MAR)と、ホストCPUからコマン
ド、アドレス、カウント値等をDMAコントローラへ設
定する際に使用する制御データバス15と、MAR9のア
ドレスを画像メモリへ出力するアドレスバス16と、画像
メモリ17を有している。
以上の構成において、第10図(イ)の転送元のメモリ17a
(N1×M1)の矩形領域(W×H)を切り出して第10
図(ロ)の転送先のメモリ17b(N2×M2)へ転送する場
合を例にして作用を説明する。
(N1×M1)の矩形領域(W×H)を切り出して第10
図(ロ)の転送先のメモリ17b(N2×M2)へ転送する場
合を例にして作用を説明する。
まず初期値として次の6つのパラメータを指定する。
a)転送元スタートアドレス(S1:3N+2) b)転送元データ間隔(I1=N1−W) c)転送先スタートアドレス(S2:5N+5) d)転送元データ間隔(I2=N2−W) e)矩形領域の横ワード数(W) f)矩形領域の縦ワード数(H) パラメータは次の手順で設定される。転送元スタートア
ドレスS1(3N+2)はマルチプレクサ35を介してアド
レスカウンタ31へセットされ、転送先スタートアドレス
S2(5N+5)はマルチプレクサ36を介してアドレスカ
ウンタ32へセットされる。転送元データ間隔I1がデー
タ間隔レジスタ33へ、転送先データ間隔I2がデータ間
隔レジスタ34へそれぞれセットされる。さらに画像の切
り出し幅Wがワードレジスタ11へ、画像の縦方向のライ
ン数Hがワードレジスタ13へセットされる。
ドレスS1(3N+2)はマルチプレクサ35を介してアド
レスカウンタ31へセットされ、転送先スタートアドレス
S2(5N+5)はマルチプレクサ36を介してアドレスカ
ウンタ32へセットされる。転送元データ間隔I1がデー
タ間隔レジスタ33へ、転送先データ間隔I2がデータ間
隔レジスタ34へそれぞれセットされる。さらに画像の切
り出し幅Wがワードレジスタ11へ、画像の縦方向のライ
ン数Hがワードレジスタ13へセットされる。
次に、CPUが制御回路1に転送モードを指定するコマ
ンドコードを送る。コマンドコードを受けた制御回路1
はDMA転送を開始する。手順は次のようになる。まず
ワードレジスタ11の内容W(切り出し幅)をワードカウ
ンタ12へロードし、ワードレジスタ13の内容H(縦のラ
イン数)をワードカウンタ14へロードする。アドレスカ
ウンタ31の内容(3N+2)をMAR9へロードし、メ
モリ17aをリードすると同時にアドレスカウンタ31(3
N+2)に+1をする。
ンドコードを送る。コマンドコードを受けた制御回路1
はDMA転送を開始する。手順は次のようになる。まず
ワードレジスタ11の内容W(切り出し幅)をワードカウ
ンタ12へロードし、ワードレジスタ13の内容H(縦のラ
イン数)をワードカウンタ14へロードする。アドレスカ
ウンタ31の内容(3N+2)をMAR9へロードし、メ
モリ17aをリードすると同時にアドレスカウンタ31(3
N+2)に+1をする。
リードデータはデータレジスタ(図示せず)に一時記録
する。更にワードカウンタ12の内容Wを−1する。次に
アドレスカウンタ32の内容(5N+5)をMAR9へロ
ードし、メモリレジスタの内容をメモリ17aへライトす
ると同時にアドレスカウンタ32(5N+5)を+1す
る。更にワードカウンタ12の出力が0かどうか判断す
る。0でないならば、もう一度アドレスカウンタ31の内
容(3N+3)をMAR9へロードし、操作を繰り返
す。ここでワードカウンタ12の内容が0であれば、換言
すれば1ラインの転送が終了していれば、ワードカウン
タ14の内容Hを−1する。ここでワードカウンタ14の内
容が0かどうか、全てのラインの転送が終了したかどう
か判定する。0でないならば、ALU37でアドレスカウ
ンタ31の内容(最初のラインの転送が終了した時点で3
N+5になっている)にデータ間隔レジスタ33の内容
(I1)を加えて、マルチプレクサ35を介してアドレス
カウンタ31へセットする。同時にALU38でアドレスカ
ウンタ32の内容(この時点で5N+8)にデータ間隔レ
ジスタ34の内容(I2)を加えて、マルチプレクサ36を
介してアドレスカウンタ32へセットする。
する。更にワードカウンタ12の内容Wを−1する。次に
アドレスカウンタ32の内容(5N+5)をMAR9へロ
ードし、メモリレジスタの内容をメモリ17aへライトす
ると同時にアドレスカウンタ32(5N+5)を+1す
る。更にワードカウンタ12の出力が0かどうか判断す
る。0でないならば、もう一度アドレスカウンタ31の内
容(3N+3)をMAR9へロードし、操作を繰り返
す。ここでワードカウンタ12の内容が0であれば、換言
すれば1ラインの転送が終了していれば、ワードカウン
タ14の内容Hを−1する。ここでワードカウンタ14の内
容が0かどうか、全てのラインの転送が終了したかどう
か判定する。0でないならば、ALU37でアドレスカウ
ンタ31の内容(最初のラインの転送が終了した時点で3
N+5になっている)にデータ間隔レジスタ33の内容
(I1)を加えて、マルチプレクサ35を介してアドレス
カウンタ31へセットする。同時にALU38でアドレスカ
ウンタ32の内容(この時点で5N+8)にデータ間隔レ
ジスタ34の内容(I2)を加えて、マルチプレクサ36を
介してアドレスカウンタ32へセットする。
この計算によって、アドレスカウンタ31とアドレスカウ
ンタ32には、それぞれ転送元、転送先の矩形領域の次の
ラインの先頭アドレスがセットされる。次のラインの先
頭アドレスがセットされるともう一度アドレスカウンタ
31(この次点で4N+2となっている)の内容をMAR
9へロードし、同様の操作を繰り返す。この操作の繰り
返しによってワードカウンタ14が0になると、いいかえ
ると全てのラインの処理が終了すると、転送操作を終了
する。
ンタ32には、それぞれ転送元、転送先の矩形領域の次の
ラインの先頭アドレスがセットされる。次のラインの先
頭アドレスがセットされるともう一度アドレスカウンタ
31(この次点で4N+2となっている)の内容をMAR
9へロードし、同様の操作を繰り返す。この操作の繰り
返しによってワードカウンタ14が0になると、いいかえ
ると全てのラインの処理が終了すると、転送操作を終了
する。
このDMAコントローラでは、データ間隔レジスタを設
けているので、横方向アクセスだけでなく縦方向アクセ
ス又は両方を組み合せたアクセスが可能になり、また、
CPUによってメモリアクセスを行う方式に比較すると
メモリアクセスの高速化が図れる。
けているので、横方向アクセスだけでなく縦方向アクセ
ス又は両方を組み合せたアクセスが可能になり、また、
CPUによってメモリアクセスを行う方式に比較すると
メモリアクセスの高速化が図れる。
しかし、従来の画像編集装置用DMAコントローラによ
れば、転送元、転送先のアドレス計算を別回路で行って
いるため、ハード構成が複雑であり、切り出し領域の大
きさが変る度にデータ間隔が変化するため、その値を設
定しなければならないと言う不都合がある。また、水平
方向のアドレス計算をカウンタで行っているため、例え
ば、このカウンタにカウントアップカウンタを使用する
とアドレスが減少する方向でアクセスが行えず、更に、
カウントダウンカウンタを使用するとアドレスが増加す
る方向でのアクセスが行えないと言う不都合がある。更
に、1ラインごとにデータ転送をするため、拡大縮小等
の画像編集時間を短縮するのに限界があると言う欠点が
あった。
れば、転送元、転送先のアドレス計算を別回路で行って
いるため、ハード構成が複雑であり、切り出し領域の大
きさが変る度にデータ間隔が変化するため、その値を設
定しなければならないと言う不都合がある。また、水平
方向のアドレス計算をカウンタで行っているため、例え
ば、このカウンタにカウントアップカウンタを使用する
とアドレスが減少する方向でアクセスが行えず、更に、
カウントダウンカウンタを使用するとアドレスが増加す
る方向でのアクセスが行えないと言う不都合がある。更
に、1ラインごとにデータ転送をするため、拡大縮小等
の画像編集時間を短縮するのに限界があると言う欠点が
あった。
本発明は上記に鑑みてなされたものであり、転送元,転
送先画像メモリの一方向のワード数を記憶した第1の記
憶手段と、画像データの転送元,及び転送先の転送ライ
ンの次の転送ラインの先頭アドレスを保持する第1のレ
ジスタと、転送する画像データの転送元,及び転送先の
転送アドレスを保持する第2のレジスタと、転送ライン
の先頭アドレスに一方向のワード数を加算,或いは減算
することにより次の転送ラインの先頭アドレスを求めて
第1のレジスタに保持させる第1の演算手段と、転送中
の画像データの転送元,及び転送先の転送アドレスに1
を加算,或いは減算することにより次に転送する転送ア
ドレスを求めて第2のレジスタに保持させる第2の演算
を行う演算手段と、第2のレジスタに保持される転送ア
ドレスに基づいて転送元の画像メモリ,及び転送先の画
像メモリをアクセスする制御手段を備えた画像編集装置
用DMAコントローラを提供するものである。
送先画像メモリの一方向のワード数を記憶した第1の記
憶手段と、画像データの転送元,及び転送先の転送ライ
ンの次の転送ラインの先頭アドレスを保持する第1のレ
ジスタと、転送する画像データの転送元,及び転送先の
転送アドレスを保持する第2のレジスタと、転送ライン
の先頭アドレスに一方向のワード数を加算,或いは減算
することにより次の転送ラインの先頭アドレスを求めて
第1のレジスタに保持させる第1の演算手段と、転送中
の画像データの転送元,及び転送先の転送アドレスに1
を加算,或いは減算することにより次に転送する転送ア
ドレスを求めて第2のレジスタに保持させる第2の演算
を行う演算手段と、第2のレジスタに保持される転送ア
ドレスに基づいて転送元の画像メモリ,及び転送先の画
像メモリをアクセスする制御手段を備えた画像編集装置
用DMAコントローラを提供するものである。
さらに、拡大縮小回路を並列に設けて並列処理すること
によって拡大縮小時間を短縮するために、複数ラインを
同時に高速DMA転送できるDMAコントローラを提供
するものである。
によって拡大縮小時間を短縮するために、複数ラインを
同時に高速DMA転送できるDMAコントローラを提供
するものである。
以下、本発明の画像編集装置用DMAコントローラを説
明する。
明する。
第1図は本発明の第1の実施例を示すものである。本実
施例はホストCPU(図示せず)からのコマンドによっ
てDMAコントローラの動作を決定し各部を制御する制
御回路1と、画像メモリ上の横幅(第2図(イ)ではNに
相当する)を設定するMAPレジスタ(Memory Address Pi
tchレジスタ)2と、転送元および転送先のアドレス計
算をするALU10と、前記ALU10へゼロを入力するた
めのゼロドライバー3と、後述するアドレスをセットす
るためのアドレスレジスタ5〜8と、前記アドレスレジ
スタ5〜8へCPUからのアドレス情報をセットするゲ
ート4と、前記アドレスレジスタ5〜8のいずれかの情
報をアドレスバス16へ出力する際にロードするメモリア
ドレスレジスタ(MAR)9と、切り出し領域の横およ
び縦の転送ワード数をセットするワードレジスタ11及び
13と、前記ワードレジスタ11及びワードレジスタ13にセ
ットされた値をロードして減算カウントし、カウント値
が0になったか、ならないかを制御回路へ出力するワー
ドカウンタ12及び14と、ホストCPUからコマンド、ア
ドレス、カウント値等をDMAコントローラへ設定する
際に使用する制御データバス15(通常のデータバスと共
通にしてもよい)と、画像メモリ17を有する。前述した
ALU10の動作はインストラクションによって、クリア
ー、B+A、B−A等の演算を行う。即ち、A入力、キ
ャリー入力の制御によって最低次の演算が可能となって
いる。クリアー、−1、−MAP、+0、+
MAP、+1、これらは全て同一サイクルで行うこと
が可能であり、これによって画像編集の際に必要な全て
のアクセス方法が可能である。ALU10のBポートへの
アドレス入力はゲート4、アドレスレジスタ5〜8のい
ずれからも可能である。ALU10の出力は、アドレスレ
ジスタ5〜8のどれかにロードされる。
施例はホストCPU(図示せず)からのコマンドによっ
てDMAコントローラの動作を決定し各部を制御する制
御回路1と、画像メモリ上の横幅(第2図(イ)ではNに
相当する)を設定するMAPレジスタ(Memory Address Pi
tchレジスタ)2と、転送元および転送先のアドレス計
算をするALU10と、前記ALU10へゼロを入力するた
めのゼロドライバー3と、後述するアドレスをセットす
るためのアドレスレジスタ5〜8と、前記アドレスレジ
スタ5〜8へCPUからのアドレス情報をセットするゲ
ート4と、前記アドレスレジスタ5〜8のいずれかの情
報をアドレスバス16へ出力する際にロードするメモリア
ドレスレジスタ(MAR)9と、切り出し領域の横およ
び縦の転送ワード数をセットするワードレジスタ11及び
13と、前記ワードレジスタ11及びワードレジスタ13にセ
ットされた値をロードして減算カウントし、カウント値
が0になったか、ならないかを制御回路へ出力するワー
ドカウンタ12及び14と、ホストCPUからコマンド、ア
ドレス、カウント値等をDMAコントローラへ設定する
際に使用する制御データバス15(通常のデータバスと共
通にしてもよい)と、画像メモリ17を有する。前述した
ALU10の動作はインストラクションによって、クリア
ー、B+A、B−A等の演算を行う。即ち、A入力、キ
ャリー入力の制御によって最低次の演算が可能となって
いる。クリアー、−1、−MAP、+0、+
MAP、+1、これらは全て同一サイクルで行うこと
が可能であり、これによって画像編集の際に必要な全て
のアクセス方法が可能である。ALU10のBポートへの
アドレス入力はゲート4、アドレスレジスタ5〜8のい
ずれからも可能である。ALU10の出力は、アドレスレ
ジスタ5〜8のどれかにロードされる。
以上の構成において、第3図のフローチャートにより、
画像を切り出して別のメモリ領域に転送する場合を例に
動作を説明する。第2図(イ)の矩形領域の切り出しを例
とする。まず、転送元のスタートアドレスをアドレスレ
ジスタ5に、転送先のスタートアドレスをアドレスカウ
ンタ7にロードする。この場合データの流れは、データ
バス15からゲート4を通り、ALU10で+0の演算を受
け、アドレスレジスタ5、7に入力される。第2図の例
ではアドレスレジスタ5には2N+2が入り、アドレス
レジスタ7には10N+5(転送先スタートアドレス)が
入る。次に画像の切り出し幅(第2図(イ)では4)をワ
ードレジスタ11に、画像の縦方向のライン数(第2図
(イ)では5)をワードレジスタ13に設定する。次にCP
UはDMAコントローラの制御回路1に転送モードを指
定するコマンドコードを送る。コマンドコードを受けた
制御回路1はDMA転送を開始する。
画像を切り出して別のメモリ領域に転送する場合を例に
動作を説明する。第2図(イ)の矩形領域の切り出しを例
とする。まず、転送元のスタートアドレスをアドレスレ
ジスタ5に、転送先のスタートアドレスをアドレスカウ
ンタ7にロードする。この場合データの流れは、データ
バス15からゲート4を通り、ALU10で+0の演算を受
け、アドレスレジスタ5、7に入力される。第2図の例
ではアドレスレジスタ5には2N+2が入り、アドレス
レジスタ7には10N+5(転送先スタートアドレス)が
入る。次に画像の切り出し幅(第2図(イ)では4)をワ
ードレジスタ11に、画像の縦方向のライン数(第2図
(イ)では5)をワードレジスタ13に設定する。次にCP
UはDMAコントローラの制御回路1に転送モードを指
定するコマンドコードを送る。コマンドコードを受けた
制御回路1はDMA転送を開始する。
まず、最初に、ワードレジスタ13の内容(5)をワードカ
ウンタ14へロードし、ワードレジスタ11の内容(4)をワ
ードカウンタ12へロードする。先頭アドレス2N+2を
アドレスレジスタ5からアドレスレジスタ6へ転送し、
ALU10でアドレスレジスタ5とMAPを計算し(ここ
では2N+2とN)、次のラインの先頭アドレス3N+
2としてアドレスレジスタ5へセットする。転送先の先
頭アドレス10N+5をアドレスレジスタ7からアドレス
レジスタ8へ転送し、ALU10でアドレスレジスタ7と
MAP(ここでは10N+5とN)を計算し、転送先の次
のラインの先頭アドレス11N+5をアドレスレジスタ7
へセットする。次にアドレスレジスタ6の内容をMAR
9へロードし、メモリをリードし、データレジスタ(図
示せず)に一時記録する。同時にALU10でアドレスレ
ジスタ6の内容に+1を行い、アドレスレジスタ6へセ
ットする。この時点でアドレスレジスタ6の内容は2N
+3となり、次のアドレスがセットされたことになる。
更にワードカウンタ12の内容を−1とする。次にアドレ
スレジスタ8の内容をMAR9へロードし、メモリにデ
ータレジスタの内容をライトすると同時にALU10でア
ドレスレジスタ8の内容に+1を行いアドレスレジスタ
8へセットする。この時点でアドレスレジスタ8の内容
は10N+6となり、次の転送先のアドレスがセットされ
たことになる。ここでワードカウンタ12の出力が0かど
うか判定する。0であれば矩形領域の横ワード数分の転
送(第2図(イ)では4)を行ったことになるので、1ラ
インの転送終了となる。一方、0でなければ、1ライン
の転送が終了していないので、アドレスレジスタ6の内
容(2N+3)をMAR9へロードし、メモリをリード
し、データレジスタに一時記録し、操作をくり返す。ワ
ードカウンタ12の出力が0になって1ラインの転送が終
了したら、ワードカウンタ14の内容を−1し、出力が0
かどうか判定する。0ならば矩形領域の縦のライン数
(第2図(イ)では5)を転送したことになり、操作を終
了する。一方、0でなければワードレジスタ11の内容を
ワードカウンタ12へロードし、アドレスレジスタ5の内
容3N+2をアドレスレジスタ6へコピーし、操作を繰
り返す。
ウンタ14へロードし、ワードレジスタ11の内容(4)をワ
ードカウンタ12へロードする。先頭アドレス2N+2を
アドレスレジスタ5からアドレスレジスタ6へ転送し、
ALU10でアドレスレジスタ5とMAPを計算し(ここ
では2N+2とN)、次のラインの先頭アドレス3N+
2としてアドレスレジスタ5へセットする。転送先の先
頭アドレス10N+5をアドレスレジスタ7からアドレス
レジスタ8へ転送し、ALU10でアドレスレジスタ7と
MAP(ここでは10N+5とN)を計算し、転送先の次
のラインの先頭アドレス11N+5をアドレスレジスタ7
へセットする。次にアドレスレジスタ6の内容をMAR
9へロードし、メモリをリードし、データレジスタ(図
示せず)に一時記録する。同時にALU10でアドレスレ
ジスタ6の内容に+1を行い、アドレスレジスタ6へセ
ットする。この時点でアドレスレジスタ6の内容は2N
+3となり、次のアドレスがセットされたことになる。
更にワードカウンタ12の内容を−1とする。次にアドレ
スレジスタ8の内容をMAR9へロードし、メモリにデ
ータレジスタの内容をライトすると同時にALU10でア
ドレスレジスタ8の内容に+1を行いアドレスレジスタ
8へセットする。この時点でアドレスレジスタ8の内容
は10N+6となり、次の転送先のアドレスがセットされ
たことになる。ここでワードカウンタ12の出力が0かど
うか判定する。0であれば矩形領域の横ワード数分の転
送(第2図(イ)では4)を行ったことになるので、1ラ
インの転送終了となる。一方、0でなければ、1ライン
の転送が終了していないので、アドレスレジスタ6の内
容(2N+3)をMAR9へロードし、メモリをリード
し、データレジスタに一時記録し、操作をくり返す。ワ
ードカウンタ12の出力が0になって1ラインの転送が終
了したら、ワードカウンタ14の内容を−1し、出力が0
かどうか判定する。0ならば矩形領域の縦のライン数
(第2図(イ)では5)を転送したことになり、操作を終
了する。一方、0でなければワードレジスタ11の内容を
ワードカウンタ12へロードし、アドレスレジスタ5の内
容3N+2をアドレスレジスタ6へコピーし、操作を繰
り返す。
以上のように、本実施例では全てのアドレス計算をAL
U10で行っている。また本実施例では、アドレスを増加
する場合のアクセスを用いているが、アドレスが減少す
る場合もスタートアドレスの設定を変え、ALU10にお
いて−1の減算を行うことにより実施することができ
る。更に、MAPレジスタを2個設けることで、横幅
(N)の異なる画像メモリ間の転送も当然可能である。
U10で行っている。また本実施例では、アドレスを増加
する場合のアクセスを用いているが、アドレスが減少す
る場合もスタートアドレスの設定を変え、ALU10にお
いて−1の減算を行うことにより実施することができ
る。更に、MAPレジスタを2個設けることで、横幅
(N)の異なる画像メモリ間の転送も当然可能である。
第4図は本発明の第2の実施例を示し、転送する複数ラ
インのアドレスを設定するRAM18と、RAM18の出力
をラッチするラッチ回路19と、RAM18のアドレスを発
生するカウンタ20を有する。このカウンタ20は、クリ
ア、カウントアップ等が可能である。その他の構成につ
いては第1図と同様につき説明を省略する。
インのアドレスを設定するRAM18と、RAM18の出力
をラッチするラッチ回路19と、RAM18のアドレスを発
生するカウンタ20を有する。このカウンタ20は、クリ
ア、カウントアップ等が可能である。その他の構成につ
いては第1図と同様につき説明を省略する。
以上の構成において、ALU10の動作はインストラクシ
ョンによって、クリア、B+A、B−A、その他が指定
できる。即ち、A入力、キャリー入力の制御により、
クリア、−1、−MAP、+0、+MAP、
+1の演算ができる。これらは全て同一サイクルで行う
ことが可能であり、画像編集の際に必要な全てのアドレ
ス演算が可能である。ALU10のBポートへは、アドレ
スレジスタ5、アドレスレジスタ6及びRAM18のいず
れの内容も入力可能である。ALU10の出力はアドレス
レジスタ5、アドレスレジスタ6及びRAM18のいずれ
にも出力可能である。また、RAM18はカウンタ20で示
されたアドレスがアクセスされる。RAM18は拡大縮小
処理される並列ライン数以上のワード数を有する。ここ
で拡大縮小回路は16ラインの並列処理ができる構成にな
っているものとすると、RAM18は16ワードの容量を有
し、カウンタ20は4bitカウンタ(0〜15までカウント
可能)になっている。
ョンによって、クリア、B+A、B−A、その他が指定
できる。即ち、A入力、キャリー入力の制御により、
クリア、−1、−MAP、+0、+MAP、
+1の演算ができる。これらは全て同一サイクルで行う
ことが可能であり、画像編集の際に必要な全てのアドレ
ス演算が可能である。ALU10のBポートへは、アドレ
スレジスタ5、アドレスレジスタ6及びRAM18のいず
れの内容も入力可能である。ALU10の出力はアドレス
レジスタ5、アドレスレジスタ6及びRAM18のいずれ
にも出力可能である。また、RAM18はカウンタ20で示
されたアドレスがアクセスされる。RAM18は拡大縮小
処理される並列ライン数以上のワード数を有する。ここ
で拡大縮小回路は16ラインの並列処理ができる構成にな
っているものとすると、RAM18は16ワードの容量を有
し、カウンタ20は4bitカウンタ(0〜15までカウント
可能)になっている。
ラッチ回路19は通常トランスペアレントになっており、
RAM18にデータを書き込む時のみデータをラッチする
ものとする。これはRAM18のデータにアドレス演算を
行い再度RAM18に書き込む時、元のデータが変わるの
を防ぐ為である。
RAM18にデータを書き込む時のみデータをラッチする
ものとする。これはRAM18のデータにアドレス演算を
行い再度RAM18に書き込む時、元のデータが変わるの
を防ぐ為である。
以上の構成において、矩形領域の画像データを間引いて
拡大縮小回路へDMA転送する場合を例に取って動作を
説明する。まず、カウンタ20をクリアしておき、原画の
スタートアドレスをCPUからDMAコントローラのア
ドレスレジスタ5へロードする。データの流れは、デー
タバス15からゲート4を通りALU10で+0の演算を受
けアドレスレジスタ5に入力される。次に、CPUは縮
小率からそのラインを間引くか否か判定し、間引かない
場合はA5の内容をRAM18へコピーする。ここでカウ
ンタ20を+1とする。次にアドレスレジスタ5の内容に
MAP2の内容を加算してアドレスレジスタ5へロード
する(ここでアドレスレジスタ5には次のラインの先頭
アドレスが入っていることになる)。そして、このライ
ン(Aアドレスレジスタの示すアドレス)を間引くか否
かを判定する。間引く場合は、アドレスレジスタ5の内
容をRAM18へコピーしないで、アドレスレジスタ5の
内容にMAP2の内容を加算してアドレスレジスタ5へ
ロードする。この手順をカウンタ20が0になるまでくり
返す。第5図(イ)は縮小処理の対象となる2N+2、3
N+2…のラインを示し、第6図のフローチャートによ
る処理を受けることにより16ラインに間引かれて第5図
(ロ)のRAM18にコピーされる。この時点でカウンタ20
は0となる。一方、縮小する画像の横のワード数をワー
ドレジスタ13へ、RAM18のワード数をワードレジスタ
11へロードする。各制御パラメータの設定が終了した所
でCPUはDMAコントローラの制御回路へ転送モード
を指定するコマンドコードを送る。コマンドコードを受
けた制御回路1はDMA転送を開始する。手順は次の様
になる(第7図のフローを参照)。
拡大縮小回路へDMA転送する場合を例に取って動作を
説明する。まず、カウンタ20をクリアしておき、原画の
スタートアドレスをCPUからDMAコントローラのア
ドレスレジスタ5へロードする。データの流れは、デー
タバス15からゲート4を通りALU10で+0の演算を受
けアドレスレジスタ5に入力される。次に、CPUは縮
小率からそのラインを間引くか否か判定し、間引かない
場合はA5の内容をRAM18へコピーする。ここでカウ
ンタ20を+1とする。次にアドレスレジスタ5の内容に
MAP2の内容を加算してアドレスレジスタ5へロード
する(ここでアドレスレジスタ5には次のラインの先頭
アドレスが入っていることになる)。そして、このライ
ン(Aアドレスレジスタの示すアドレス)を間引くか否
かを判定する。間引く場合は、アドレスレジスタ5の内
容をRAM18へコピーしないで、アドレスレジスタ5の
内容にMAP2の内容を加算してアドレスレジスタ5へ
ロードする。この手順をカウンタ20が0になるまでくり
返す。第5図(イ)は縮小処理の対象となる2N+2、3
N+2…のラインを示し、第6図のフローチャートによ
る処理を受けることにより16ラインに間引かれて第5図
(ロ)のRAM18にコピーされる。この時点でカウンタ20
は0となる。一方、縮小する画像の横のワード数をワー
ドレジスタ13へ、RAM18のワード数をワードレジスタ
11へロードする。各制御パラメータの設定が終了した所
でCPUはDMAコントローラの制御回路へ転送モード
を指定するコマンドコードを送る。コマンドコードを受
けた制御回路1はDMA転送を開始する。手順は次の様
になる(第7図のフローを参照)。
まず、最初にワードレジスタ13の内容をワードカウンタ
14へロードし、ワードレジスタ11の内容をワードカウン
タ12へロードする。次にカウンタ20をクリアする。ここ
までの準備が出来たら、DMA転送が可能かどうか、21
0、211、……2115の16個の並列拡大縮小回路21(第5図
(ロ))が入力可能状態か否かのチェックをする。可能で
ないなら待つ。最初に、カウンタ20が示すライン0のR
AM18の内容をMAR9へロードすると同時に、ALU
10でそのRAM18の内容に+1を行ってRAM18へセッ
トする。前記MAR9の示すアドレスのメモリの内容を
並列拡大縮小回路へロードし、ワードカウンタ12を−1
する。つづいて、カウンタ20を+1して、ワードカウン
タ12の内容が0か否か判定する。0でないなら、RAM
18のワード数分(本実施例では16ワード)の転送が済ん
でいないことになり、再度カウンタ20の示すRAM18の
内容をMAR9へロードし、上記の操作をくり返す。0
であれば、RAM18にセットされた16個の先頭アドレス
がすべて転送済みであるため、縦1行の転送が終了した
ことになる。ここでワードカウンタ14を−1し、ワード
カウンタ14の出力が0か否か判定する。0でないならワ
ードレジスタ11の内容をワードカウンタ12へロードし、
カウンタ20をクリアして上記の操作を繰り返す。ワード
カウンタ14が0であれば、転送する矩形領域の横ワード
数の回数分、縦列の転送を行ったことになり、これで並
列処理可能なライン数のDMA転送を終了する。CPU
はDMAの終了を検知した時点でまだ全矩形エリアの処
理が終了していなければ再度転送ラインの先頭アドレス
を求めDMAコントローラに駆動を掛ければ良い。
14へロードし、ワードレジスタ11の内容をワードカウン
タ12へロードする。次にカウンタ20をクリアする。ここ
までの準備が出来たら、DMA転送が可能かどうか、21
0、211、……2115の16個の並列拡大縮小回路21(第5図
(ロ))が入力可能状態か否かのチェックをする。可能で
ないなら待つ。最初に、カウンタ20が示すライン0のR
AM18の内容をMAR9へロードすると同時に、ALU
10でそのRAM18の内容に+1を行ってRAM18へセッ
トする。前記MAR9の示すアドレスのメモリの内容を
並列拡大縮小回路へロードし、ワードカウンタ12を−1
する。つづいて、カウンタ20を+1して、ワードカウン
タ12の内容が0か否か判定する。0でないなら、RAM
18のワード数分(本実施例では16ワード)の転送が済ん
でいないことになり、再度カウンタ20の示すRAM18の
内容をMAR9へロードし、上記の操作をくり返す。0
であれば、RAM18にセットされた16個の先頭アドレス
がすべて転送済みであるため、縦1行の転送が終了した
ことになる。ここでワードカウンタ14を−1し、ワード
カウンタ14の出力が0か否か判定する。0でないならワ
ードレジスタ11の内容をワードカウンタ12へロードし、
カウンタ20をクリアして上記の操作を繰り返す。ワード
カウンタ14が0であれば、転送する矩形領域の横ワード
数の回数分、縦列の転送を行ったことになり、これで並
列処理可能なライン数のDMA転送を終了する。CPU
はDMAの終了を検知した時点でまだ全矩形エリアの処
理が終了していなければ再度転送ラインの先頭アドレス
を求めDMAコントローラに駆動を掛ければ良い。
本実施例では、画像編集のうち縮小についてのみ説明し
たが、他の編集、例えば、切り出し移動、回転、拡大
等、また画像処理のフィルタリング、補間等において数
ライン同時のデータが同時に必要な場合等にも使用可能
である。また、転送の方法に応じてアドレスレジスタ、
転送ワードレジスタ、カウンタ等の数を増減させること
により最適化することができる。
たが、他の編集、例えば、切り出し移動、回転、拡大
等、また画像処理のフィルタリング、補間等において数
ライン同時のデータが同時に必要な場合等にも使用可能
である。また、転送の方法に応じてアドレスレジスタ、
転送ワードレジスタ、カウンタ等の数を増減させること
により最適化することができる。
第8図は本発明の第3の実施例を示すものであり、共通
する部分は共通の引用数字で示したので重複する説明は
省略するが、第1の実施例と第2の実施例を併合したも
のであり、横方向のアクセス、縦方向のアクセス、及び
両方を組み合せたアクセスが可能である。
する部分は共通の引用数字で示したので重複する説明は
省略するが、第1の実施例と第2の実施例を併合したも
のであり、横方向のアクセス、縦方向のアクセス、及び
両方を組み合せたアクセスが可能である。
以上説明した通り、本発明の画像編集装置用DMAコン
トローラによると、転送中のラインの次のラインの先頭
アドレスを保持する第1のレジスタと、転送中のアドレ
スを保持する第2のレジスタを設けたため、全てのアド
レス計算を1つのALUで短時間で行うことができ、ハ
ード構成を簡単にして転送操作におけるデータ設定を容
易にすることができる。
トローラによると、転送中のラインの次のラインの先頭
アドレスを保持する第1のレジスタと、転送中のアドレ
スを保持する第2のレジスタを設けたため、全てのアド
レス計算を1つのALUで短時間で行うことができ、ハ
ード構成を簡単にして転送操作におけるデータ設定を容
易にすることができる。
また、拡大縮小回路を並列に設けて並列処理するように
すると、複数ラインを同時に高速DMA転送でき、拡大
縮小時間を短縮することができる。
すると、複数ラインを同時に高速DMA転送でき、拡大
縮小時間を短縮することができる。
第1図より第3図は本発明の第1の実施例を示し、第1
図はブロック図、第2図(イ)、(ロ)はメモリの説明図、第
3図は制御用フローチャート図、第4図より第7図は本
発明の第2の実施例を示し、第4図はブロック図、第5
図(イ)、(ロ)はメモリの説明図、第6図および第7図は制
御用フローチャート図、第8図は本発明の第3の実施例
を示す説明図。第9図および第10図(イ)、(ロ)は従来の画
像編集装置用DMAコントローラを示し、第9図はブロ
ック図、第10図(イ)、(ロ)はメモリの説明図。 符号の説明 1……制御回路、2……MAPレジスタ 3……ゼロドライバー、4……ゲート 5……アドレスレジスタ(A5) 6……アドレスレジスタ(A6) 7……アドレスレジスタ(A7) 8……アドレスレジスタ(A8) 9……メモリアドレスレジスタ(MAR) 10……ALU 11……ワードレジスタ(WDREG11) 12……ワードカウンタ(WDCNT12) 13……ワードレジスタ(WDREG13) 14……ワードカウンタ(WDCNT14) 15……制御データバス 16……アドレスバス 17……画像メモリ(IMM) 18……RAM、19……ラッチ(LATCH) 20……カウンタ 31……アドレスカウンタ(A31) 32……アドレスカウンタ(A32) 33……データ間隔レジスタ(I33) 34……データ間隔レジスタ(I34) 35……マルチプレクサ、36……マルチプレクサ 37……ALU、38……ALU
図はブロック図、第2図(イ)、(ロ)はメモリの説明図、第
3図は制御用フローチャート図、第4図より第7図は本
発明の第2の実施例を示し、第4図はブロック図、第5
図(イ)、(ロ)はメモリの説明図、第6図および第7図は制
御用フローチャート図、第8図は本発明の第3の実施例
を示す説明図。第9図および第10図(イ)、(ロ)は従来の画
像編集装置用DMAコントローラを示し、第9図はブロ
ック図、第10図(イ)、(ロ)はメモリの説明図。 符号の説明 1……制御回路、2……MAPレジスタ 3……ゼロドライバー、4……ゲート 5……アドレスレジスタ(A5) 6……アドレスレジスタ(A6) 7……アドレスレジスタ(A7) 8……アドレスレジスタ(A8) 9……メモリアドレスレジスタ(MAR) 10……ALU 11……ワードレジスタ(WDREG11) 12……ワードカウンタ(WDCNT12) 13……ワードレジスタ(WDREG13) 14……ワードカウンタ(WDCNT14) 15……制御データバス 16……アドレスバス 17……画像メモリ(IMM) 18……RAM、19……ラッチ(LATCH) 20……カウンタ 31……アドレスカウンタ(A31) 32……アドレスカウンタ(A32) 33……データ間隔レジスタ(I33) 34……データ間隔レジスタ(I34) 35……マルチプレクサ、36……マルチプレクサ 37……ALU、38……ALU
Claims (2)
- 【請求項1】転送元の画像メモリの指定された領域の画
像データに編集,加工等を施して転送先の画像メモリの
指定された領域へ転送するDMAコントローラにおい
て、 前記転送元,転送先画像メモリの一方向のワード数を記
憶した第1の記憶手段(2)と、 画像データの転送元,及び転送先の転送ラインの次の転
送ラインの先頭アドレスを保持する第1のレジスタ
(5),(7)と、 転送する画像データの転送元、及び転送先の転送アドレ
スを保持する第2のレジスタ(6),(8)と、 前記転送ラインの先頭アドレスに前記一方向のワード数
を加算,或いは減算することにより前記次の転送ライン
の先頭アドレスを求めて前記第1のレジスタ(5),
(7)に保持させる第1の演算と、転送中の画像データ
の転送元,及び転送先の転送アドレスに1を加算,或い
は減算することにより次に転送する転送アドレスを求め
て前記第2のレジスタ(6),(8)に保持させる第2
の演算を行う演算手段(10)と、 前記第2のレジスタ(6),(8)に保持される前記転
送アドレスに基づいて 前記転送元の画像メモリ及び前記転送先の画像メモリを
アクセスする制御手段(1)を備えたことを特徴とする
画像編集装置用DMAコントローラ。 - 【請求項2】複数のデータの並列処理可能な画像編集処
理装置におけるDMAコントローラにおいて、 転送元の画像メモリの一方向のワード数を記憶した第1
の記憶手段(2)と、 画像データの転送元の転送ラインの次の転送ラインの先
頭アドレスを保持する第1のレジスタ(5)と、 前記第1のレジスタ(5)に順次保持される複数の先頭
アドレスを処理して得られる画像編集処理用の複数のア
ドレスを順次記憶する第2の記憶手段(18)と、 前記第1のレジスタ(5)に保持される転送ラインの先
頭アドレスに前記第1の記憶手段(2)に記憶した一方
向のワード数を加算,或いは減算することにより前記次
の転送ラインの先頭アドレスを求めて前記第1のレジス
タ(5)に保持させる第1の演算と、前記第2の記憶手
段(18)に記憶された前記複数の先頭アドレスに前記
画像編集処理の進行に応じて順次1を加算,或いは減算
した演算結果を前記画像編集処理用の複数のアドレスと
して前記第2の記憶手段(18)に記憶させる第2の演
算を行う演算手段(10)と、 前記第2の記憶手段(18)に記憶されている前記画像
編集処理用のアドレスに基づいて転送元のメモリをアク
セスして画像編集処理手段に該メモリの画像に編集処理
を実行させる制御手段(1)を備えたことを特徴とする
画像編集装置用DMAコントローラ。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP61196934A JPH0668760B2 (ja) | 1986-08-22 | 1986-08-22 | 画像編集装置用dmaコントロ−ラ |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP61196934A JPH0668760B2 (ja) | 1986-08-22 | 1986-08-22 | 画像編集装置用dmaコントロ−ラ |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS6353681A JPS6353681A (ja) | 1988-03-07 |
| JPH0668760B2 true JPH0668760B2 (ja) | 1994-08-31 |
Family
ID=16366087
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP61196934A Expired - Fee Related JPH0668760B2 (ja) | 1986-08-22 | 1986-08-22 | 画像編集装置用dmaコントロ−ラ |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0668760B2 (ja) |
Families Citing this family (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2803258B2 (ja) * | 1989-01-27 | 1998-09-24 | セイコーエプソン株式会社 | ワイヤドット型印字ヘッドの駆動回路 |
| JP3614714B2 (ja) | 1999-06-16 | 2005-01-26 | Necマイクロシステム株式会社 | Dma制御装置 |
| JP4677581B2 (ja) * | 2000-12-15 | 2011-04-27 | 株式会社メガチップス | データ転送制御装置およびデータ転送方法 |
| JP5017601B2 (ja) * | 2010-11-29 | 2012-09-05 | 株式会社メガチップス | データ転送制御装置およびデータ転送方法 |
Family Cites Families (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS62115563A (ja) * | 1985-11-14 | 1987-05-27 | Sharp Corp | Dmaコントロ−ラ |
-
1986
- 1986-08-22 JP JP61196934A patent/JPH0668760B2/ja not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JPS6353681A (ja) | 1988-03-07 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH0668760B2 (ja) | 画像編集装置用dmaコントロ−ラ | |
| JPS5971564A (ja) | 画像デ−タメモリ制御方式 | |
| JPH0572625B2 (ja) | ||
| JPS647393Y2 (ja) | ||
| JPS6382530A (ja) | 半導体記憶装置 | |
| JP2772027B2 (ja) | 画像再構成方式 | |
| JP2852050B2 (ja) | 画像処理装置 | |
| JP2854433B2 (ja) | ラインメモリ制御回路 | |
| JPS62123571A (ja) | 画像信号処理装置 | |
| JP3088956B2 (ja) | 演算装置 | |
| JP3069384B2 (ja) | 文書処理装置及び方法 | |
| JP2982129B2 (ja) | マイクロプログラム制御装置 | |
| JPH06162067A (ja) | ベクトル命令制御装置および制御方法 | |
| JP3304370B2 (ja) | マージ処理方法 | |
| JP2549838B2 (ja) | デ−タ制御装置 | |
| JPH01237766A (ja) | データ処理装置およびそれを用いた画像データ処理システム | |
| JPH0520140U (ja) | 情報処理装置 | |
| JPH01195581A (ja) | イメージ・データ処理システム | |
| JPS58109932A (ja) | 電子計算機の比較演算器 | |
| JPH04205678A (ja) | 画像情報処理装置 | |
| WO1987007411A1 (fr) | Systeme de memorisation de donnees d'image | |
| JPS58203562A (ja) | メモリ管理方式 | |
| JPH0465777A (ja) | 画像データ転送方式 | |
| JPH06110773A (ja) | メモリ制御装置 | |
| JPH0540685A (ja) | アドレスデコーダ |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| LAPS | Cancellation because of no payment of annual fees |