JPH03180957A - 情報処理装置 - Google Patents

情報処理装置

Info

Publication number
JPH03180957A
JPH03180957A JP31884189A JP31884189A JPH03180957A JP H03180957 A JPH03180957 A JP H03180957A JP 31884189 A JP31884189 A JP 31884189A JP 31884189 A JP31884189 A JP 31884189A JP H03180957 A JPH03180957 A JP H03180957A
Authority
JP
Japan
Prior art keywords
signal
output
cpu
dma
data
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
JP31884189A
Other languages
English (en)
Inventor
Izuru Haruhara
春原 出
Masao Tokokuni
雅夫 常国
Atsuyuki Seki
敬幸 関
Katsunori Kato
勝則 加藤
Yasuhisa Mobara
泰久 茂原
Fumio Kon
昆 文夫
Noboru Yokoyama
登 横山
Hiroshi Hosokawa
博司 細川
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP31884189A priority Critical patent/JPH03180957A/ja
Publication of JPH03180957A publication Critical patent/JPH03180957A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 この発明は、システムバスに接続されたCPUとダイレ
クトメモリアクセスコントローラとのバス権を調整しな
がら各デバイスのデータ処理を実行する情報処理装置に
関するものである。
〔従来の技術〕
従来、この種の装置においてDMA制御を行う場合には
、データ、アドレスの各バスをC,PUとDMA転送用
ハードウェアが共有して使用するため、そのバス権の調
整が必要となり、大別して下記(1) 、 (2)の転
送方式が採用されている。
(1)CPUがバスをアクセスしていない時を利用して
転送を行う方式(サイクル・スチール方式)。
(2)DMA制御回路が優先となり、CPUを止めて転
送を行う方式。
このうち、(2)の方式は、さらに細分化すると、転送
データを1バイト毎にCPUに制御を返ず方式(バイト
・モード)、I10装置からブタ要求がある間DMA制
御側が権利を持ち続ける方式(連続モード)、さらに、
必要なハイド数の転送が終了するまでDMA側が権利を
持つ方式(バーストモード)等に分かれる。
〔発明か解決しようとする課題〕
ところで、この種の装置で処理するデータバスの幅はC
PUの処理能力およびCPUファくりのデータバス幅に
よりまちまちとなっている。
そこで、CPUの扱うデータバスとDMAデバイスの扱
うデータバスの幅か合わなくなると、ブタ転送の際デー
タバスを遊ばせることとなり、結果として処理能力の向
上が期待できなくなるといった問題点があった。
この発明は、上記の問題点を解決するためになされたも
ので、DMAを通常のアクセスとは異なるバス幅で行い
DMA転送中においてCPUから各ダイレクトメモリア
クセスデバイスに要求される読出しまたは書込み信号を
禁止することにより、DMA転送中におけるCPUアク
セスに伴う各ダイレクトメモリアクセスデバイスの誤動
作を正確に防止てきる情報処理装置を得ることを目的と
する。
〔課題を解決するための手段〕
この発明に係る情報処理装置は、ダイレクトメモリアク
セスコントローラがアクセス可能な各ダイレクトメモリ
アクセスデバイスとの間にハス幅調整手段を設け、さら
にこのハス幅調整手段からの読出し信号または書込み信
号発生中にCPUから各ダイレクトメモリアクセスデバ
イスに対して要求される読出し信号または書込み信号を
禁止する禁止手段を設けたものである。
(作用) この発明においては、バス幅調整手段はダイレクトメモ
リアクセスコントローラまたはCPUからのバス幅を調
整し、ダイレクトメモリアクセスコントローラからのア
クセス処理時間を短縮し、バス幅調整手段が各ダイレク
トメモリアクセスデバイスにデータを書込みまたは読出
し処理中にCPUにバスを解放し、CPUの処理効率を
高める。その際、禁止手段がバス幅調整手段からの読出
し信号または書込み信号発生中にCPUから各ダイレク
トメモリアクセスデバイスに対して要求される読出し信
号または書込み信号を禁止し、DMA転送中におけるC
PUアクセスに伴う各ダイレクトメモリアクセスデバイ
スの誤動作を回避させることを可能とする。
〔実施例〕
第1図はこの発明の一実施例を示す情報処理装置の構成
を説明するシステムブロック図であり、1はスキャナで
、静止画像を入力する。2はプリンタて、印刷結果を出
力する。3はscs rコントローラで、スキャナ1お
よびプリンタ2とのブタの入出力を行う。4は高精細型
のCRTデイスプレィ、5はインタフェース、6はポイ
ンティングデバイスで、2キーを指示して座標情報、ア
イコン指示等を行う。7はインタフェース(I/F)で
、ポインティングデバイス6からの座標情報等を処理す
る。8はメモリ(スタティックRAM)で、サブCPU
9のプログラムデータを格納する。10はデュアルポー
トメモリ(デュアルボーl−RAM)11のシリアルボ
ート側でデータの人出力を行うシリアルインタフェース
で、ポインティングデバイス6の状態を定期的に参照す
るためのタイマを内蔵している。11はランダムホトと
シリアルボートを有するスキャナ、プリンタ用のデュア
ルポートメモリ、12は前記CRTデイスプレィ4用の
デュアルポートメモリ、13はメモリコントローラで、
デュアルポートメモリ11.12のリフレッシュ、シリ
アル読出し、シリアル書込み、疑似書込み転送タイくン
グ、CPUアクセスおよび二次元DMAを行う。14は
アビタ(調停器)で、サブCPU9.メインCPU33
、DMAコントローラ(DMAC)13のバス権の調整
を制御するとともに、サブCPU9メインCPU33の
割込みハンドシェークを行う。15は画像圧縮伸張デバ
イスで、イメージブタを圧縮・伸張する。16はバス幅
調整デバイスで、画像圧縮伸張デバイス15の圧縮コー
ドをバス44のバス幅に合せてデータを人出力する。
17はデバイスで、イメージデータをXY変換する。1
8はデバイスで、イメージデータの間弓・補間を処理す
る。19〜21はバッファで、バスを駆動する。
22はFROMで、電源ON時のブートプログラムや割
込みベクタを格納する。23は立上げ時に使用するスタ
ティックRAM、24はデバイスで、時間を管理し、シ
ステムの管理情報を電源OFF時も記憶している。25
はカウンタて、プロセスの切換えや時間測定を行う。2
6は割込みコントローラで、割込みが発生したときにベ
クタを出力する。27はインタフェースで、シリアル通
信をサポートする。28は公衆回線に接続されるモデム
、29はインタフェースで、キーボード30からのキー
人力をインタフェースする。31はダイナくツクRAM
 (DRAM)で、システム側のプログラムデータを格
納する。32はメモリコントローラ(DRAコントロー
ラ)で、DMAC32のリフレッシュおよびメモリと各
デバイスとのDMAをコントロールする。33はメイン
CPU、34はデバイスて、アドレスデコート、割込み
コントロール、各制御線のコントロールを行う。
35は各種書体のフォントや仮名漢字変換の辞書等を内
蔵したボード、36はインタフェースで、IEEE80
2.3の108ASE5(いわゆるETHRNET)を
サポートする。37はこの発明に係るバス幅調整手段を
構成するデバイスで、8ビット人出力のSCS Iイン
タフェース38(ダイレクトメモリアクセスデバイスを
構成する)と32ビツトのデータ幅のデータバス45と
のインタフェースを行う。39は5C3II/F付きの
ハードディスク、40はバス幅調整デバイス、41はイ
ンタフェースデバイスで、フロッピーディスクコントロ
ーラとバス45とのインタフェースを行う。42は3.
5インチのフロッピディスクドライブ、43は16ビツ
トのデータ幅を有するバス、44.45は32ビツトの
ブタ幅を有するバス、46は16ビツトのデータ幅を有
するバス、47は前記サブCPU9のみからアクセスで
きる16ビツトのデータ幅を有するバスであり、このア
ドレス線の最上位ビットの極性かサブCPU9から出る
アドレス線の極性に対して反転させることができるよう
に構成されている。
このように構成された情報処理装置において、バス幅調
整手段(デバイス37.40等)はダイレクトメモリア
クセスコントローラ(DMAC32)またはメインCP
U33からのバス幅を調整し、DMAC32からのアク
セス処理時間を短縮し、例えばデバイス37が各DMA
C32にデータを書込みまたは読出し処理中にメインC
PU33にバスを解放し、メインCPU33の処理効率
を高める。その際、禁止手段(例えば後述する第7図に
示すORゲート403.404およびANDゲート40
5,406等より構成される)がデバイス37からの読
出し信号または書込み信号発生中にメインCPU33か
ら各SCS Iインタフェース(SC3Iコントローラ
)38に対して要求される読出し信号または書込み信号
を禁止し、DMA転送中におけるCPUアクセスに伴う
各5CSIインタフエース38の誤動作を回避させるこ
とを可能とする。
第2図は、第1図に示したサブcpU9のアドレス線の
最上位ビットの極性反転処理の一例を示す回路ブロック
図であり、102はSRフリップフロップで、人力され
る最上位ビット反転信号に基づいて排他的論理和回路(
EX−OR回路)101にQ出力を送出する。
第3図(a)〜(h)は、第1図に示したアビタ14の
構成を説明する詳細ブロック図であり、同図中の同一符
号は同一部分を示し、■〜■はその接続先を示す。
これらの図において、201〜205はEXOR回路、
206はインバータ、207〜211はEX−OR回路
、212はインバータ、213214はNAND回路、
215はインバータ、216はAND回路、217はN
AND回路、218はAND回路、219はNAND回
路、220はAND回路、221〜223はリセット端
子付きJKフィリップフロップ(JKFF)、224は
NOR回路、225はインバタ、226.227はNO
R回路、228はインバータ、229〜232はNOR
回路、233はOR回路、234,235はDフリップ
フロップ(DFF>、236,237はインバータ、2
38はNOR回路、239はDFF、240はJKFF
、241はインバータ、242はNAND回路、243
はAND回路、244はインバータ、245〜247は
DFF、248はNAND回路、249はAND回路、
250はJKFF、251.252はDFF、253は
AND回路、254はインバータ、255〜257はD
FF。
258はNAND回路、259はAND回路、260は
JKFF、261,262はDFF、263.264は
DFF、265〜267はNAND回路、268はイン
バータ、269,270はNAND回路、271はイン
バータ、272゜273はNAND回路、274はイン
バータ、275.276はDFF、277〜279はN
AND回路、280はインバータ、281.282はA
ND回路、283はNOR回路、284は3ステートバ
ツフア、285はインバータ、286はNOR回路、2
86はNOR回路、287はインバータ、288はNO
R回路、289はインバタ、290.291はNOR回
路、292は3ステートバツフア、293はインバータ
、294はNOR回路、295はインバータ、296は
NOR回路、297はインバータ、298はNOR回路
、299はインバータ、300はNOR回路、301 
ハインハータ、302はNOR回路、3゜3はNOR回
路、304は3ステートバツフア、305.306はイ
ン、rc−タ、307〜31oはNOR回路、311は
AND回路、312.313はNOR回路、314は3
ステートバツフア、315〜326はOR回路、327
はAND回路、328は5RFF、329はNAND回
路、330はOR回路、331はNAND回路、332
はOR回路、333,334はNAND回路、335.
336はAND回路、337,338は5RFFである
。
第4図は、第1図に示したアービタ14の周辺回路構成
を説明するブロック図であり、350は3ステートバツ
フア、351は3ステートパストランシーバ、352は
3ステートバツフア、353は3ステートパストランシ
ーバである。
次に、第5図、第6図を参照しながら第1図に示したサ
ブCPU9等の立ち上げ処理動作について説明する。
第5図、第6図は、第1図に示したサブCPU9の立ち
上げ処理手順の一例を説明するフローチャートである。
なお、(1)〜(9) 、 (111〜(25)は各ス
テップを示す。
電源が投入されると、先ずメインCPU33が立ち上が
り、FROM22からリセット時のスタックポインタと
プログラムカウンタの値を人力し、立ち上げ処理を行う
。
この際、サブCPU9が行うことは、ボンディングデバ
イス6からの信号を基にデュアルポートRAMIIにカ
ーソルを表示すること、5csrコントローラ3を制御
してスキャナ1.プリンタ2と画像信号の転送を行うこ
と、アービタ14を介してメインCPU33と割込みハ
ンドシェークを行うこと等であるが、先ずステップ(1
)において、プログラムが全部含まれたサイズを調べ、
転送ワード数を設定する。次いで、デュアルポートメモ
リ12のメインcpu33からみたときの転送開始アド
レスをセットする(2)。
次いで、FROM22またはDRAM31からプログラ
ム等を含むデータをデュアルポートメモリ12に転送す
る(3)。続いて、データの値をあるレジスタまたはメ
モリに加算するデータサムを行い(4)、転送が終了し
たかどうかを、すなわち転送数が残り「O」かどうかを
判断しく5)、N。
ならばステップ(3)に戻り、YESならば加算された
データの値(チエツクサム)を転送する(6)。
次いで、アービタ14にJSTART信号を与え、今ま
でリセット信号がかかっていたサブCPU9がスタート
する(7)。
次いで、サブCPU9は、デュアルポートメモリ12か
らスタックポインタとプログラムカウンタを人力し、以
下、第6図に示すフローに従って、デュアルポートメモ
リ12にロードされているプログラムをスタティックR
AM8にロードし、サブCPU9の割込みベクタがスタ
ティックRAM (SRAM)8に切り換わるようにア
ドレスの最上位ビットを反転する。
次いで、ACK割込みが発生するのを待機しく8)、割
込みがかかったら、18Mレジスタに割込み応答コマン
ドJIQACKを書き込み(9)、処理を終了し、サブ
CPU9による処理に移る。
プログラムが全部台まれたサイズを調べ、転送ワード数
を設定する(11)。次いで、デュアルホトメモリ12
のメインcpu33からみたときの転送開始アドレスを
セットする(12)。
次いで、PROM22またはDRAM31からプログラ
ム等を含むデータをデュアルポートメモリ12に転送す
る(13)。続いて、データの値をあるレジスタまたは
メモリに加算するデータサムを行い(14)、転送が終
了したかどうかを、すなわち転送数か残り「0」かどう
かを判断しく15)、NOならばステップ(13)に戻
り、YESならばチエツクサムがOKかどうかを判断し
く16)、Noならばステップ(23)以降に進み、Y
ESならば反転レジスタにデータ書き込みを行い(17
)、SRAM8のチエツクサムがOKかどうかを判断し
く18)、N。
ならばステップ(23)以降に進み、YESならばVR
AMバッファに正常ステータスを書き込み(19)、1
8Mレジスタに割込みコマンドKIQACKを書き込み
(20)。ACK割込みが発生するのを待機しく21)
、割込みが発生したら、18Mレジスタに割込みクリア
コマンドKIQCLRを書き込み(22)、処理を終了
する。
一方、ステップ(15)、 (18)でNoの場合は、
VRAMバッファにエラーステータスを書き込み(23
)、18Mレジスタに割込みコマンドKIQACKを書
き込み(24)。ACK割込みが発生するのを待機しく
25)、割込みが発生したら、18Mレジスタに割込み
クリアコマンドKIQCLRを書き込み(26)、処理
を終了する。
具体的には第2図に示したEX−OR回路101の一方
にアドレスの最上位ビット、もう一方にフリップフロッ
プ102の出力を入力しておき、フリップフロップ10
2の出力を反転させることにより、アドレスの最上位ビ
ットの極性を切り換える。次いで、プログラムの転送が
終了したことをデュアルポートメモリ12に設けたメイ
ンCPU33とのコミュニケーションバッファに書き、
アービタ14にKIACK信号を与え、メインCpu3
3に割込み信号をかけることで行う。メインCPU33
はアービタ14からの割込み信号を受けてJIACKを
アービタ14に送りサブCPU9に割込みをかける。サ
ブCPU9はアービタ14に割込みクリア信号としてK
IQCLR信号を送出し、サブcpu9の初期動作は終
了する。
次いで、デュアルポートメモリ12にビットマツプデー
タを転送すればインタフェース5を通してCRTデイス
プレィ4にビットマツプイメージを表示することができ
る。
次に、O3(オペレーティングシステム)やアプリケー
ションプログラム(AP)をハードディスク39からダ
イナミックRAM31に転送するが、このシステムでは
DMAコントローラ(DMAC)32とバス幅調整デバ
イス37は通常はメインCPU33と5C3Iコントロ
ーラ3Bの間で8ビット幅のデータ転送を行っているが
、DMA転送命令が発行され、リクエスト要求が5C8
Iコントローラ3Bから出力され、バス幅調整用のデバ
イス37に入力されると、バス幅調整デバイス37はD
MA転送モードになり、ダイナミックRAM31のデー
タをハードディスク39に書き込む場合は、バス幅調整
デバイス37がDMAリクエストをDMAコントローラ
32に出力する。
DMAコントローラ32は、メインCPU33に対しバ
ス権を要求し、メインCPU33がバスを解放すると、
DMAコントローラ32はバス権を握り、バス幅調整デ
バイス37に32ビット幅のデータを書き込む。バス幅
調整デバイス37はDMAリクエストを取り下げ、それ
によりDMAコントローラ32もバスを解放し、メイン
CPU33が再びバス件を握る。
方、バス幅調整デバイス37はSC3Iコントローラ3
8に対し、32ビツト幅のデータを8ビツト幅のデータ
に分解し、リクエスト要求が出力されているときにデー
タを書き込む。4回の書き込みを終了すると、バス幅調
整デバイス37内にはデータがなくなるので、再びバス
幅調整デバイス37はDMAリクエストをDMAコント
ローラ32に出力し上記の動作を繰り返す。5C3Iコ
ントローラ38は、5C3Iの規格にそってハトディス
ク39にデータを転送する。一連の作業は、一定のブロ
ック長のデータを転送終了するまで行われる。バス幅調
整デバイス37は、DMAコントローラ32からDMA
転送終了信号り。
NEかまたは5C3Iコントローラ38から転送終了信
号が発生すると自動的にDMA転送モードを終了し、通
常モードになってscs rコントワラ3Bとメインc
pu33の通信を行うことができるようになる。また、
ハードディスク39のデータをダイナミックRAM31
に書き込む場合は、バス幅調整デバイス37に5C3I
コントロラ38のデータを4回書き込んでからバス幅調
整デバイス37がDMAリクエストをDMAコントロー
ラ32に出力することとデータの転送方向が反対になっ
ていることが異なるたけで、その他の動作はディスクに
書き込む動作と同様となる。
このように、バス幅調整デバイス37を設Cプることに
より、DMA転送中のデバイスがあってもメインCPU
33は、DMAコントローラ32に常にバスを握られる
ことなく、転送の合間にバス権を握ってプログラムを実
行することかできる。
ところが、DMAl10デバイス、この実施例ではsc
s rコントローラ38は、読み出し信号と書き込み信
号なCPUとバス幅調整デバイス37の2つからの単純
なOR4算lA理では不具合が発生する。ハス幅調整デ
バイス37から出力される読み出し信号と書き込み信号
はDMA中にしか発生しないが、CPUから出力される
読出し信号 9 と書込み信号は、DMA中においても、CPUがバス権
を握っているときには、他のIloのために出力される
。当然、これはバス幅調整デバイス37から発生する読
み出し信号、書込み信号とタイよングが異なるため、5
C3Iコントローラ38が誤動作する可能性がある。こ
れを防ぐには、DMA中を示す信号を設け、バス幅調整
デバイス37とCPUとの信号を切り換える方式と、C
PUから5C3Iコントローラ38に対してアクセスが
ある(チップセレクト中〉ときだけCPUからの読出し
/書込み信号を入れる方式があるが、タイ≧ングを満足
させるには、後者の方式が最適となる。
第7図はバス幅調整デバイスとDMAl10デバイスと
の接続関係を説明するブロック図であり・、401はバ
ス幅調整デバイス、402はDMAl10デバイス、4
03,404はOFtゲト、405.406はANDゲ
ートである。
DMAl10デバイス402とバス幅調整デバイス40
1のDMA転送は、REQ信号、ACK0 信号て行われる。通常CPUアクセスはチップセレクト
信号、読出し信号、書込み信号がDMA 110デバイ
ス402.バス幅調整デバイス401双方に入力されて
おり、DMAl10デバイス402への読出し、書込み
は8ビツトてアクセスされる。DMAコマンドが発行さ
れてDMAl10デバイス402からREQ信号が出力
されると、バス幅調整デバイス401はDMA転送モー
ドとなり、システムバスとは32ビツトてデータを転送
する。バス幅調整デバイス401は、REQ信号を受け
ると、ACK信号を返すが同時に転送方向によりDMA
RD信号またはDMAWR信号をLOWレベルにしてA
NDゲート405.406を介してDMAl10デバイ
ス402にRDB信号、WRB信号を送る6CPUはD
MACによりシステムバスを占有されていなければ各I
10のために読出し信号、書込み信号を出すこともあり
、読出し信号、書込み信号を単純にANDゲート405
,401でORしてDMAl10デバイス402のRD
Bイエ号、WRB信号に入力すると、DMA転送が正常
に行われない場合がある。
そのため、チップセレクト信号と読出し信号、書込み信
号をORゲート403,404でANDしてからAND
ゲー1−405.406でORすると誤動作することは
ない。もちろん、これらの各ゲトをバス幅調整デバイス
37に内蔵することもできる。
また、バス幅調整デバイス40.フロッピーディスクコ
ントローラ4135インチフロッピーディスクドライブ
の組の動作も略同様である。
DMAコントローラ32のDMAチャンネルは3組あり
、ハードディスクとフロッピーディスクの並列転送も可
能である。また、メインCPU33とサブcpu9は同
時にデュアルポートメモリ11.12にアクセス制御す
るアービタ14の動作について第3図(a)を参照しな
がら説明する。
EX−OR回路201〜205はサブCPU9からみた
ときのデュアルポートメモリlL12のアドレス選択に
、また、EX−OR回路207〜211はメインCPU
33からみたときのデュアルポートメモリ11.12の
アドレス選択に使用される。必要のないゲートは出力が
HIGHとなるように接続されている。
EX−OR回路201〜205のボートKLVL1〜5
およびEX−OR回路207〜211のボートJLVL
1〜5には選択されるべきアドレスの極性の逆極性のレ
ヘルを人力し、ボートKAA1〜5およびJAAI〜5
には選択されるべきアドレスを決定するビットが接続さ
れている。これにより、サブCPU9からデュアルポー
トメモリ11.12のアドレスが出力されると、EXO
R回路201〜205の出力がすべてHIGHになり、
また、アドレスストローブ信号KASBかLOWとなる
のて、インバータ206の出力がHIGHとなり、NA
ND回路213の出力がLOWになる。その結果、NO
R回路217の出力がHIGHになり、CLK信号の立
ち上がりでJKFF222のQ出力がHIGH1反転Q
出力がLOWになる。NOR回路217はまたメモリコ
ントローラ13を選択する信号KLC3BがLO3 WになってもHIGH出力になる。同様に、メインCP
U33からデュアルポートメモリ1112のアドレスが
出力されると、EX−OR回路207〜211の出力が
全てHIGHになり、また、アドレスストローブ信号J
ASBがLOWとなるので、インバータ212の出力が
HIGHになり、NAND回路219の出力がLOWに
なる。その結果、NAND回路219の出力がHIGH
になり、CLK信号の立ち上がりてJKFF223のQ
出力がHI GH,反転Q出力がLOWなる。NAND
回路219はまたメモリコントロラ13を選択する信号
J LC3BがLOWになってもHIGH出力になる。
また、メモリコントローラ13がDMA転送を行うため
にLBRB信号なLOWにした場合は、インバータ21
5がHIGHになり、CLK信号の立ち上がりでJKF
F221のQ出力がHIGH1反転Q出力がLOWにな
る。このように、JKFF221〜223の反転Q出力
S3,56Sllが同時にLOWになった場合には、N
OR4 回路227.232の出力S8と出力■がHIGHにな
り、その結果NOR回路224の出力■がLOW、NO
R回路229の出力■かLOWとなる。
つまり、出力■たげHIGHとなり、出力■出力■がL
OWとなる。同様に、出力S3.S6がLOW、出力S
llがHIGHの場合は、出力出力■だけHIGHとな
り、出力■、実出力がLOWとなる。
同様に、出力S3.SllがLOW、出力S6がHIG
Hの場合は、出力■だけHIGHとなり、出力■、出力
■がLOWとなる。
同様に、出力S6.SllかLOW、出力S3がHIG
Hの場合は、出力■だけHIGHとなり、出力■、出力
■がLOWとなる。また、出力S3が単独でLOWのと
きは、出力S6か単独でLOWの時、出力■だけLOW
となり、出力S11が単独でLOWのとき、出力■たけ
LOWとなる。
つまり、アービタ14は、優先順位が固定されており、
出力Sll>36>33のように規定されている。この
ように、出力■、■、■のいずれかの出力がHIGHに
なると、○R回路233の出力S14もHIGHとなり
、CLK信号の立ち下がりでインバータ236によりD
FF234が出力S14をラッチしQ出力となる出力S
15がHIGHになる。反転Q出力はLOWとなり、こ
れがDFF235の反転S人力に接続されているため、
DFF235の反転Q出力となる316は直ちにLOW
となる。これにより、NOR回路226の出力S7は出
力■と同じレベルになり、もし出力■がHIGHになっ
ている時は、出力s7もHI GHで、出力s6がLO
WになッテもN。
R回路227の出力S8がHIG)(にならないように
なる。すなわち、出力■がHIGHになってDFF23
5の反転Q出力S16がLOWl、?なると、出力S6
がLOWになってもNOR回路224により出力■をL
OWにすることがない。これにより、安定したアクセス
ができる。同様に、NOR回路231の出力S13はN
OR回路230により、出力■、出力@の何れかがHI
GHの場合、HIGHとなり、出力SllがLOWにな
ってもNOR回路232の出力■が)(IGHにならな
いようになる。ずなわち、出力■1出力■がHIGHに
なってDFF235の反転Q出力となる出力316がL
OWになると、出力SllかLOWになってもNOR回
路224.229により出力■、比出力をLOWにする
ことがない。このように、低い優先順位の実行サイクル
が一旦開始されると、この実行サイクルが終了するまで
は高い優先順位の人力で中断されることがない。JKF
F223の反転Q出力となる出力SllがLOWで出力
■がHIGHになり、DFF235の反転Q出力となる
出力S16がLOWになり、実行サイクルが始まると、
第3図(b)のインバータ254によりLJB出力もL
OWとなる。LJB出力には、メインCPυ33のアド
レスバッファ352のトライステート人力とデータバッ
ファ353のトライステート人力に接続されており、こ
れにより、バス43のバス権はメインCPU33に7 1屋られる。メモリコントローラ13はアドレスに従い
デュアルポートメモリ71.72をアクセスし、データ
アクノリッジ信号LDTKBをアービタ14に返す。ア
ービタ14では第3図(C)に示したインバータ271
.NAND回路269270を通してJDTAK信号と
して出力される。この信号はメインcpu33に返り、
メインCPU33はJAsB(i号をHIGHとしてサ
イクルは終了する。これにより、第3図(a)のAND
回路220の出力SIOがHIGHになり、NOR回路
238の出力S17がLOWとなり、DFF234のQ
出力S15がLOW、反転QがHIGHとなる。
ここで、CLK信号がLOWからHIGHになルト、J
KFF223の反転Q出力となる出力311がHIGH
となり、NOR回路232の出力■がLOW、第3図(
b)に示すAND回路259の出力LJASもLOWと
なり、イメージバスのバス権はメインCPU33から解
放される。CLK信号の立ち上がりではJKFF223
と同時 8 にDFF235の反転Q出力となる出力316もHIG
Hとなり、出力S3.S6.Sitの各信号の調整サイ
クルに入る。
ここで、出力S6のみまたは出力S3.S6がLOWな
らば前述のようにサブCPυ9がバス権を1屋り、メモ
リコントローラ13のデータアクノリッジ信号LDTK
Bにより同様にバスサイクルを終了させる。
方、アービタ14中には、第3図(b)のDFF251
 252.261.262があり、メインcpU33と
サブCPU9のアクセスか近接していた場合には、LA
SB信号、LDTKB信号が遅延時間等でメモリコント
ローラ13や各Cpu9.33に影響を与えないように
、DFF251.252,261,262によりLJA
S信号、LKAS信号が近接しないように分離している
。出力■がLOWになりすぐ出力■がHIGHになって
もLKAS信号は、DFF261のQ出力がLOWにな
り、DFF262の反転Q出力がHIGHになり始めて
LKAS信号がHIGHになる。LJAS信号も同様で
ある。なお、第3図(d)〜(f)に示したLASB信
号、LUDSB(g号、LLDSB信号、LRW信号、
LC3B信号の各信号と第3図(c)に示し?、:: 
J D T AK信号、KDTAK信号、JBER信号
、KBER信号の各信号は全てLJAS信号、LKAS
信号のいずれかがHIGHになっていなければ有効にな
らない。これにより、メインCPU33とサブCPU9
の単独のアクセスのときは高速に、また近接したアクセ
スは安全に行うことができる。
ところで、イメージバス上のDMAコントロラ13から
のバス権要求信号LBRB信号によりJKFF221の
反転Q出力となる出力S3がLOWになって出力@がH
IGHとなった場合、第3図(b)に示すようにJDT
AK信号、KDTAK信号、JBER信号、KBER信
号の各信号は全てLJAS信号とLKAS信号のどちら
かがHIGHになっていなければ有効にならない。これ
により、メインCPU33とサブCPU9の単独のアク
セスは高速にまたは近接したアクセスは安全に行うこと
かできる。
ところで、イメージバス上のDMAコントロラ13から
のバス権要求となるLBRB信号によりJKFF221
の反転Q出力となる出力S3がLOWになって出力■が
)(IG)(どなった場合、第3図(b)に示すように
、DFF239の反転Q出力がCLK信号の立ち上がり
でHIGHとなり、NAND回路242の出力となるL
BGB信号がLOWになる。これは、DMAコントロー
ラ13にバス権がわたったことを示し、DMAコントロ
ーラ13はLBGAKB信号をLOWとし、LBRB信
号をHIGHとする。これにより、インバータ241の
出力はHIGHとなり、JKFF240のQ出力はLO
Wとなる。これにより、LBGB信号はHIGHとなる
。DMAコントロラ13はデータ転送を開始し、データ
転送を終了するまで、LBGAK信号をLOWに保持す
る。データ転送が終了し、LBGAK信号をHIGHに
すると、第3図(a)に示したAND回路216の出力
S2がHIGHとなり、NOR回路1 238の出力S17がLOWとなり、DFF234のQ
出力となる出力S15をLOWとする。
CLK信号の立ち上がりでJKFF221の反転Q出力
となる出力S3がHIGHとなり、同時にDFF235
の反転Q出力となる出力S16もHIGHとなり、出力
■がLOWとなり、再ひアービトレーションサイクルに
入る。メインCPU33のアクセスは通常のサイクルで
はJASB信号がLOWになっていることで示されるが
メインCPU33とサブCPU9のソフトウェアの同期
のため、分割してはならない読み出しと書き込みサイク
ル、いわゆるリードモディファイライトサイクルがある
。その際、メインCPU33からJRMCBイ言号がL
OWになることで、このサイクルであることを認知する
。
このJRMCB信号は第3図(a)に示したANDゲー
トに人力されており、JASB信号がHIGHになり、
通常のサイクルでは出力10がHIGHになってサイク
ルを終了させるが、JRMC’B信号がLOWの場合に
はサイクルを終了させ3 2 ないようにしてリードモディファイライトサイクルをサ
ポートしている。一方、サブCPU9側はKKRMCB
信号を持たず、以下のような処理をサポートしている。
KRW信号がHIGH1すなわち読出しサイクルでKA
SB信号がLOWになり、その後KUDSB(g号また
はKLDSB信号かLOWになり、デュアルポートメモ
リ11またはデュアルポートメモリ12を言売み出し、
メモリコントローラ13はLDTAKB信号をLOWに
し、アービタ14からはKDTAK(g号として出力さ
れる。これにより、KUDSB信号またはKLDSB信
号がHIGHとなり、KASB信号かLOWのままてK
RW(g号がLOWになり、再びKLIDSB信号また
はKLDSBがHIGHとなり、デュアルポートメモリ
11またはデュアルポートメモリ12に書き込む。メモ
リコントローラ13は再びLDTAKB信号をLOWと
する。これにより、今度はKASB信号も含めてKUD
SB信号またはKLDSB信号がHIG)(となり、サ
イクルが終了す方、メモリコントローラ13は、サイク
ルを全てLASB信号がLOWの期間とし、メモリコン
トローラ13自体がリードモディファイライトサイクル
をサポートしてはいない。このため、DFF245ん2
47.JKFF25ONAND回路248により、1回
LDTAKB信号かLOWになり、KRW信号がHIG
HからLOWに切り換わると、LKAS信号が1回LO
W、すなわちLASB信号か1回HIGHに設定する。
LDTAKB信号がLOWになると、第3図(C)に示
したインバータ271のインバータ出力L/DTがHI
GHとなり、JKFF250のQ出力がHIGHとなる
。KRWがHIGHからLOWになると、DFF246
,247のQ出力がHIGHで、DFF245の反転Q
出力がHIGHとなるため、CLK信号の立ち上がりが
2回の間、LKAS信号がLOW、LASB信号が)(
IGHとなる。アービタ14は、このように2種類のリ
ードモディファイライトサイクルをサポートし、この間
イメージバスの権利を変更しない処理している。また、
LASB信号は必ず2回LOWとなる。
アービタ14はメインCPU33とサブCPU9の割込
みハントシェークもサポートしており、メインcpu3
3が第3図(g>に示した信号JD1をLOWとして信
号JRW、JC3BをLOWとすると、第3図(C)に
示したDFF263.264とNAND回路265によ
りCLK信号の立ち上がりから次の立ち上がりの間、J
JB信号がLOWとなり、第3図(g)のOR回路32
1315によりJIQACK信号がLOWとなる。その
結果、OR回路330の出力がLOWとなり、NAND
回路331の出力がHIGHとなり、NAND回路32
9の出力となるKINTB信号がLOWとなり、この信
号がサブCPU9への割込み信号となる。サブCPU9
は第3図(g)に示したKDI信号をLOWとしてKR
W信号、KCSB信号をLOWとすると、第3図(e)
に示したDFF275.276とNAND 5 回路279によりCLK信号の立ち上がりから次の立ち
上がりの間、KKB信号がLOWとなり、第3図(h)
のOR回路326.322により、KIQACK信号が
LOWとなる。この結果、OR回路332の出力がLO
Wとなり、NAND回路333の出力がHIGHとなり
、NAND回路334の出力となるJINTB信号がL
OWとなり、このJINTB信号がメインCPU33へ
の割込み信号となり、同時にNAND回路329の出力
となるKINTB信号をHIGHに戻し、割込み信号を
クリアする。相手のCPUに割込みをかけず、自分の割
込み信号のみをクリアするには、メインCPU33がJ
DI信号の代わりにJD2信号をLOW、サブCPU9
はKDI信号の代わりにKD2信号をLOWとすれば、
JIQCLR信号、KIQCLR信号がLOWとなり、
割込みをクリアする。また、割込みを発生させないよう
に信号JD3.信号KD3をLOWとして、JRW信号
、JC5B信号をLOW、KPW信号、KCSB信号を
LOWとすると、JMSKST信号、KMSKST信号
がLOWとなり、5RFF328.337のQ出力がH
IGHとなり、OR回路330.332の出力がLOW
になることがなくなり、割込み信号が発生しなくなる。
JD4信号、KD4信号をLOWとして、JRW信号、
JC3B信号をLOWとし、KRW信号、KCC3B信
号をLOWとすれば、割込みを解除することもできる。
また、メインCPU33からはJD5信号、JRW信号
、JCSB信号をLOWとすれば、KRESB信号をH
IGHにすることができ、これをサブCPU9のリセッ
ト信号とすればメインCPU33からサブcpU9の起
動を行うことができる。JD6信号、JRW信号、JC
SB信号をLOWとすれば(第8図参照)、再びサブC
PU9のリセットを行うことができる。
以下、デュアルポートメモリ12を使用してCRTデイ
スプレィ4にウィンドやカーソルを表示する場合を例と
してデータ転送処理について具体的に説明する。
デュアルポートメモリ12は全ての領域を表示に使用す
るわけではなく、一部領域は完全な自由なRAMとして
使用可能となっている。このデュアルポートメモリ12
はメインCPU33とサブCPU9の両方からアクセス
てきるため通信用のバッファとして最適である。アービ
タ14を使用して相手に割込みをかけ、そのときの命令
(コマンド)または応答の状態をこのデュアルポートメ
モリ12の空き領域の通信バッファでやり取りを行う。
このシステムではカーソルの表示はサブCPU9で行い
、ウィンドの作成やウィンドの内容の書き換えはメイン
cpU33が行うようにしている。そのため、メインC
PU33がVRAMを使用する時は、通信バッファ内に
ウィンド書@換えの要求命令とウィンドの座標を書いて
アービタ14に対してJIQACK信号の命令を発行し
、サブCPU9に割込みをかける。サブCPU9は割込
み信号となるKINTB信号により通信バッファからウ
ィンド書き換え要求命令を受は取り、ビジーフラグをO
Nとする。次に、ウィンドの4隅の座標を受は取り、カ
ーソルを表示しているウィンドでクリッピング演算を行
う。その結果、カーソルとメインCPU33が書@換え
ようとしているウィンドに重なりがあるときは、サブC
PU9はカーソルを消し、その部分にもとの画像を戻し
ておく。そして、アービタ14に対してKIQACK信
号を発行し、メインCPU33に割込み信号となるJI
NTB信号を発生させる。メインCPU33は、このウ
ィンド書き換えコマンドの応答の割込みを受けてウィン
ドを書き換える。もし、カーソルとウィンドとに重なり
がないときはカーソルを消さずに、KIQACK信号を
発心する。メインCPU33かウィンド書き換えを終了
すると、通信バッファ内に終了書き換えコマンドを書き
、JIQACK信号をアービタ14に対してJ I Q
ACK信号を発行して、サブCPU9に割込み信号とな
るKINTB信号を発生させる。
サブCPU9は、これにより、ビジーフラグを0FFL
/、アービタ14にKIQACK信号を発行し、発生し
たJINTB信号の割込みを、メインCPUは終了コマ
ンドに対する応答として受は取る。サブCPU9は割込
み処理だけでなく、別ルチンでカーソル表示を行ってお
り、インタフェース10で発生するタイマ割込み毎にポ
インティングデバイスの座標値を読み取り、前回と差が
あると、その座標値を保存し、先の割込みルーチンでO
N10 F Fするビジーフラグをみて、ONならば書
き換えウィンドをカーソルウィンドでクリッピングし、
もし重なりがある時はカーソル表示せず、重なりがない
時と、ビジーフラグがOFFのときはカーソルを表示す
る。カーソル表示とは、カーソルウィンド内の画像を退
避し、矢印等のカーソルを表示し、別の場所にカーソル
を移動する時は、退避した画像を戻し、移動した位置で
再び画像を退避して行う。
次に、第9図(a)〜(e)を参照しながらこの発明に
係る情報処理装置におけるカーソル/ウィンド処理動作
について説明する。
第9図(a)〜(c)はこの発明に係る情報処理装置に
おけるカーソル/ウィンド処理手順の例を説明するフロ
ーチャートである。なお、(1)〜(9) 、  (1
1)〜(19) 、  (21)〜(26)は各ステッ
プを示す。以下、同図(a)の処理から順次説明する。
サブCPU9はタイマ割込み処理が発生すると(1)、
ポインティングデバイス6からの座標値を読み取り(2
)、前回の座標値とに差があるかどうかを判断しく3)
 、 N Oならばステップ(1)に戻り、Y E S
 ftらば現在の座標値を保存する(4)。
次いで、ビジーフラグがONかどうかを判断しく5) 
、 NOならばステップ(9)以降に進み、YESなら
ば書換えウィンドの4隅の座標を受は取る(6)。次い
で、カーソルウィンドでクリッピングしく7)、重なり
かあるかどうかを判断しく8) 、 YESならばステ
ップ(1)に戻り、NOならばカソルを表示しく9)、
ステップ(1)に戻る。
方、通信割込みプロセスは、同図(b)に示すように、
ウィンド書換え要求が発生しているかどうかを判断しく
11)、YESならばビジーフラグをON シ(12)
、書換えウィンドの4隅の座標を受け取る(13)。次
いで、カーソルウィンドでクリッピングしく14)、重
なりがあるかどうかを判断しく15)、NOならばステ
ップ(17)以降に進み、YESならばカーソルを消去
しく16)、応答コマンドを発行しく17)、処理を終
了する。
方、ステップ(1工)の判断において、NOの場合はビ
ジーフラグをOF F L (18)、応答コマンドを
発行しく19)、処理を終了する。
方、メインCPU33は、同図(C)に示すように、書
換えウィンドの4隅の座標を通信バッファに送り(21
)、ウィンド書換え要求コマンドを発行しく22)、サ
ブCPU9等からのコマンド応答が発生するのを待機し
く23)、応答がなされたら、ウィンドを書き換え(2
4)、  ウィンド書換えを終了するコマンドを発行す
る(25)。次いて、サブCPU9等からのコマンド応
答が発生するのを待機しく26)、処理を終了する。
次に、第10図(a)、(b)を参照しながらサブCP
U9とメインCPU33によるドラッギング処理につい
て説明する。
第10図(a)、、(b)はこの発明に係る情報処理装
置に係るサブCPU9とメインCPU33によるドラッ
ギング処理手順の一例を説明するフローチャートである
。なお、(1)〜(18)、  (21)〜(29)は
各ステップを示す。
サブCPU9は、カーソル位置を通信バッファに送り(
1)、左キーONを示す割込みを発行しく2)、コマン
ド応答を待機する(3)。
次いで、ドラッギング命令かどうかを判断しく4)、N
Oならば別処理を行い、YESならはウィンド枠サイズ
位置を受は取り(5)、矢印カーソルを0FFL、(6
)、ウィンド枠の反転表示を行う(7)。次いで、タイ
マ割込みが発生するの待機しく8)、割込みがかかった
らポインティングデバイス6の座標値を読み取り(9)
、前回の座標値と差があるかどうかを判断しく10)、
Noならばステップ(8)に戻り、YESならば座標値
を保存しく11)、ウィンド枠位置変更する(12)。
次いで、ウィンド枠を表示しく13)、キーOFF状態
かどうかを判断しく14)、Noならばステップ(8)
に戻り、YESならばウィンド枠サイズ位置を転送しく
15)、左キーOFFを示す割込みを発行しく16)、
コマンド応答が発生するのを待機する(17)。次いで
、コマンド応答を発行しく18)、処理を終了する。
方、メインCPU33は第10図(b)に示すように、
上記ステップ(2)で割込みが発行されると、カーソル
位置のウィンドを調べ(21)、ドラッギング領域かど
うかを判断しく22)、ウィンド枠サイズ、位置等を通
信バッファに送り(23)、ドラッキンクコマンドを発
行する(24)。次いで、コマンド応答があったかどう
かを判断しく25)、YESならばウィンド枠サイズ、
位置を受は取る(26)。
次いで、ウィンドを書き換え(27)、ウィンド書換え
終了コマンドを発行する(28)。次いで、コマンド応
答がなされるのを待機しく29)、コマンド応答がなさ
れたら、処理を終了する。
次に、第11図(a)、(b)を参照しながらこの発明
にかかる情報処理装置にかかるポツプアップメニュー表
示処理動作について説明する。
第11図(a)、(b)はこの発明にかかる情報処理装
置にかかるポツプアップメニュー表示処理手順の一例を
説明するフローチャートである。
なお、(1)〜(29)、  (31)〜(48)は各
ステップを示す。
先ず、サブCPU9は、カーソル位置を通信バッファに
送り(1)、右キーONを示す割込みを発行する(2)
。次いで、コマンド応答がなされるのを待機しく3)、
YESならばポツプアップメニュー命令かどうかを判断
しく4)、YESならばポツプアップウィンド列を読み
出しく5)、矢印カーソルをOFFする(6)。次いで
、応答コマンドを発行しく7)、コマンド応答がなされ
るのを待機しく8)、YESならば矢印カーソルをON
しく9)、右キーOFFかどうかを判断しく10)、Y
ESならばステップ(24)以降に進み、矢印カーソル
をOFFし、セレクト領域かどうかを判断しく25)、
YESならば右キーをOFFし、実行割込みを発行する
(2B)。次いで、コマンド応答がなされるのを待機し
く28)、 Y E Sならば矢印カーソルをONし(
29)、処理を終了する。
方、ステップ(25)の判断でNoの場合は、右キーを
OFFし、不実行割込みを発行しく27)、ステップ(
28)に進む。
方、ステップ(10)の判断で、NOの場合はタイマ割
込みかかかるのを待機しく11)、YESならばポイン
ティングデバイス座標値を読み取り(12)、前回の座
標値と差かあるかどうかを判断しく13)、Noならば
ステップ(lO)に戻り、YESならば座標値を保存し
く14)、カーソルを表示する(15)。
次いで、セレクト領域かどうかを判断しく16)、YE
Sならばステップ(19)以降に進み、NOならばサブ
ウィンド作成領域かどうかを判断しく17)、NOなら
ばステップ(lO)に戻り、YESならばサブウィンド
を割り込ませ(18)、ステップ(3)に戻る。
方、ステップ(16)の判断で、YESの場合は別メニ
ューかどうかを判断しく19)、Noならばステップ(
10)に戻り、Y’E Sならば矢印カーソルな0 F
 F L (20)、セレクト変更割込みを発行しく2
1)、コマンド応答を待機しく22)、YESならば矢
印カーソルをON L (23)、ステップ(10)に
戻る。
方、メインCPU33は、第11図(b)に示すように
、カーソル位置のウィンドを調へ(31)、ウィンドが
あるかどうかを判断しく32)、NOならば別処理を実
行し、ポツプウィンド列を作成しく33)、YESなら
ばポツプアップメニューコマンド1を発行しく30、コ
マンド応答を待機する(35)。YESならばポツプア
ップウィンドを作威しく36)、ポツプアップメニュー
コマンド2を発行する(37)。次いで、セレクト変更
割込みがかかるのを待機しく38)、Noならばステッ
プ(41)以降に進み、YESならば色変更を実行しく
39)、応答コマンドを発行しく40)、ステップ(3
8)に戻る。
一方、ステップ(38)の判断でNOの場合は、サブウ
ィンド割込みが発生したかどうかを判断しく41)、 
Y E Sならばステップ(33)に戻り、Noならば
右キーOFFを示す実行割込みかどうかを判 8 断しく42)、YESならばポツプアップウィンドを消
去しく44)、応答コマンドを発行しく45)、コマン
ドを実行しく46)、処理を終了する。
方、ステップ(42)の判断で、NOの場合は右キーO
FFを示す不実行割込みかどうかを判断しく43)、N
Oならば別処理に移行し、YESならばポツプアップウ
ィンドを消去しく47)、応答コマンドを発行しく48
)、処理を終了する。
次に、SC5Iコントローラ3とデュアルホトメモリ1
1のシリアルインタフェース10の処理動作について説
明する。
デュアルポートメモリ11はプリンタ2.スキャナ1用
のためCRTデイスプレィ4用のデュアルポートメモリ
12に比べ格段に容量が大きくなっており、A4サイズ
1枚を出力するために1インチ当たり400ドツトのピ
クセルサイズで出力すると、約2Mバイトの容量が必要
となる。このため、現状では1Mビットのチップを用い
て16個のデュアルポートメモリが必要となる。256
にバイト×4構成でバス幅を16ビツトとすれば9 同時にアクセスすることのない4個のメモリブロックで
構成される。このため、B4サイズだと6個、A3サイ
ズだと8個のメモリブロックが必要となる。プリンタに
出力する際、scs rコントローラ3か先ず、データ
要求をシリアルインタフェース10に対して行う。シリ
アルインタフェース10はまだデータがないためメモリ
コントロラ13に読出し転送サイクルをするように要求
する。メモリコントローラ13はメモリリフレッシュ、
CPUアクセス等の間で読出し転送サイクルを行い、応
答信号をシリアルインタフェース10に返信する。デュ
アルポートメモリ11のシリアルボートにはデータが既
に存在しているため、シリアルインタフェース10はシ
リアルクロックとデータイネーブル信号を出力し、デュ
アルポートメモリ11のシリアルボートからデータを読
み出して蓄える。読み出したデータは16ビツトのため
、5C3Iコントローラ38には8ビツトずつデータを
分割して転送する。このようにしてデータを読み出して
いくと同時に、いくつ読み出した0 かをシリアルインタフェース10はカウントしていてデ
ュアルポートメモリ11のシリアルボートのデータをす
べて読み出したと同時に、メモリコントローラ13に対
して次のアドレスのデータをシリアルボートに転送する
ように読み出し転送サイクル要求を行う。メモリコント
ローラ13はシリアルバッファの数だけずらしてデュア
ルポートメモリ11に対し読み出し転送サイクルを行う
。
もし、1つのメモリブロックの範囲を越えれば次のメモ
リブロックに対して読み出し転送サイクルを行う。また
、スキャナ1からデータを書き込む際は、先ず、5CS
Iコントローラ3 シリアルインタフェース10.デュ
アルポートメモリ11とデータが流れるが、何もしない
と最初の1ライン目のバッファへの書き込みは読み出し
モードか書き込みモードか分からないため、すべての書
き込みの前にメモリブロック毎に擬似書込み転送サイク
ルをメモリコントローラ13が行う。これは、ローアド
レスストローブ信号(RAS信号)の立ち下がりで書込
みイネーブル信号(WE倍信号をLOW、DT信号、S
E信号をHIGHにして行う。通常の書込み転送サイク
ルはSE信号はLOWに設定する。また、読み出し転送
サイクルでは、ローアドレスストローブ信号(RA S
 信号)をLOW、書込みイネーブル信号(WE倍信号
をLOW、DT信号をLOWとする。こうして、デュア
ルポートメモリ11の準備ができてからデータ転送を行
い、シリアルボートのバッファかいっばいになったこと
をシリアルボート側のインタフェース10かカウントし
ていてメモリコントローラ13に通常の書込み転送サイ
クルを要求する。メモリコントローラ13は書込み転送
サイクルを行い、その後、次の書込み転送サイクルのア
ドレスを決め、もしメモリブロックの範囲を越えていれ
ば次のメモリブロックを先にイネーブルにしておく。こ
うして、複数のメモリブロックに画像データが読み込ま
れる。
次に、第1図に示した画像圧縮伸張デバイス15の動作
について説明する。
メモリコントローラ13は一方がメモリコントローラ1
3に接続され、他方がバス幅調整デバイス16に接続さ
れている。
メモリコントローラ13は、画像ピッチ、主走査数、副
走査数、左オフセット、転送開始アドレス、転送方向を
決定するレジスタを有し、メモリに対し主走査方向に1
ワードずつ順次データを読み書きしていく。画像はビッ
トイメージのkめ左端と右端では不必要なデータが発生
する場合がある。デュアルポートメモリ11への書込み
ではライトパービットの機能を用いてRAS信号の立ち
下がり時にマスクすべきデータビットをLOWにするこ
とで行う。左端のマスクデータは左オフセットレジスタ
で決定するが、右端のマスクデータは左オフセットレジ
スタと主走査数レジスタより合成する。画像の読書きが
右端に到達すると、自動的に次のラインの左端になるよ
うにする。また、デュアルポートメモリ11に対するア
ドレス系を8ビツトデータ毎に2系統もっており、偶数
バイトのアドレスは転送アドレスが奇数の時、奇数バイ
トのアドレスより「1」多くなるようになっており、ま
た、その際、データも奇数バイトと偶数バイトが反転す
るようになっていて転送開始アドレスやピッチが奇数バ
イトであっても1回の転送で1ワード16ビツトのデー
タを転送できるようになっている。このように、画像圧
縮伸張デバイス15がメモリコントローラ13とデータ
をやり取りするが画像圧縮伸張デバイス15内には主走
査数、副走査数、左オフセット数、圧縮または伸張を決
めるコマンドのレジスタ等がある。こうして、圧縮した
データはバス幅調整デバイス16に渡し、16ビツトデ
ータを32ビツトデータにしてDMAコントローラ付き
のメモリコントローラ32のDMA処理でDRAM31
に圧縮データを転送し、伸張の場合は逆方向でデュアル
ポートメモリ11に展開された画像データが書き込まれ
る。また、デュアルポートメモリ11として演算機能付
きのものを使用すれば、RAS信号の立ち下がり時にカ
ラムアドレスストロ−ブイ3号(CAS信号)、WE倍
信号LOWとし、演算モードをアドレス線で設定すれば
、書き込まれたデータに対し、AND、OR,EXCL
USIVE  OR等の演算処理を行うことが可能とな
っている。
(発明の効果) 以上説明したように、この発明はダイレクトメモリアク
セスコントローラがアクセス可能な各ダイレクトメモリ
アクセスデバイスとの間にバス幅調整手段を設け、この
バス幅調整手段から読出し信号または書込み信号発生中
にCPUから各ダイレクトメモリアクセスデバイスに対
して要求される読出し信号または書込み信号を禁止する
禁止手段を設けたので、DMA転送中におけるCPUP
t上スに伴う各ダイレクトメモリアクセスデバイスの誤
動作を未然に防止できる。従って、DMA転送中にもバ
ス権をCPUが獲得し、CPUアクセスが可能となり、
システム全体のデータ処理効率を高めることができる等
の優れた効果を奏する。
【図面の簡単な説明】
第1図はこの発明の一実施例を示す情報処理装置の構成
を説明するシステムブロック図、第2図は、第1図に示
したサブCPUのアドレス線の最上位ビットの反転処理
の一例を示す回路ブロック図、第3図(a)〜(h)は
、第1図に示したアビタの構成を説明する詳細ブロック
図、第4図は、第1図に示したアービタの周辺回路構成
を説明するブロック図、第5図、第6図は、第1図に示
したサブCPUの立ち上げ処理手順の一例を説明するフ
ローチャート、第7図はバス幅調整デバイスとDMAl
10デバイスとの接続関係を説明するブロック図、第8
図は、第3図(a)〜(h)の動作を説明するタイミン
グチャート、第9図(a)〜(C)はこの発明に係る情
報処理装置におけるカーソル/ウィンド処理手順の一例
を説明するフローチャート、第10図(a)、(b)は
この発明に係る情報処理装置におけるサブCPUとメイ
ンCPUによるドラッギング処理手順の一例を説明する
フローチャート、第11図(a)、(b)はこの発明に
係る情報処理装置におけるポツプアップメニュー表示処
理手順の一例を説明するフローチャートである。  5 図中、9はサブCPU、13はメモリコントロラ、14
はアービタ、16,37.40はハス幅調整デバイス、
31はDRAM、32はDMAC133はメインCPU
、38は5C3Iコントローラである。 (a) サブCPU カーソル表示プロセス 第 静 (b) サブcrt 通信割込ブ[ (C) メインCPU ウィンドウ 書換えプロセス (a) 第 0 図 (b)

Claims (1)

    【特許請求の範囲】
  1.  システムバス上にCPUとダイレクトメモリアクセス
    コントローラが接続され、ダイレクトメモリアクセスコ
    ントローラおよび前記CPUからの前記システムバスに
    対するバス権要求をアービタが調停しながら前記ダイレ
    クトメモリアクセスコントローラによる各ダイレクトメ
    モリアクセスデバイスとのダイレクトメモリアクセスま
    たはCPUによる各ダイレクトメモリアクセスデバイス
    間のアクセスを実行可能な情報処理装置において、前記
    ダイレクトメモリアクセスコントローラがアクセス可能
    な各ダイレクトメモリアクセスデバイスとの間にバス幅
    調整手段を設け、さらにこのバス幅調整手段からの読出
    し信号または書込み信号発生中に前記CPUから前記各
    ダイレクトメモリアクセスデバイスに対して要求される
    読出し信号または書込み信号を禁止する禁止手段を設け
    たことを特徴とする情報処理装置。
JP31884189A 1989-12-11 1989-12-11 情報処理装置 Pending JPH03180957A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP31884189A JPH03180957A (ja) 1989-12-11 1989-12-11 情報処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP31884189A JPH03180957A (ja) 1989-12-11 1989-12-11 情報処理装置

Publications (1)

Publication Number Publication Date
JPH03180957A true JPH03180957A (ja) 1991-08-06

Family

ID=18103557

Family Applications (1)

Application Number Title Priority Date Filing Date
JP31884189A Pending JPH03180957A (ja) 1989-12-11 1989-12-11 情報処理装置

Country Status (1)

Country Link
JP (1) JPH03180957A (ja)

Similar Documents

Publication Publication Date Title
US6185629B1 (en) Data transfer controller employing differing memory interface protocols dependent upon external input at predetermined time
US6104417A (en) Unified memory computer architecture with dynamic graphics memory allocation
US5845327A (en) Cache coherency where multiple processors may access the same data over independent access paths
US5724599A (en) Message passing and blast interrupt from processor
US6134625A (en) Method and apparatus for providing arbitration between multiple data streams
JPH0877347A (ja) 画像/グラフィックス処理用のデータ処理装置およびその操作方法
US5651127A (en) Guided transfers with variable stepping
US5493646A (en) Pixel block transfer with transparency
US5396597A (en) System for transferring data between processors via dual buffers within system memory with first and second processors accessing system memory directly and indirectly
US5289583A (en) Bus master with antilockup and no idle bus cycles
US6272583B1 (en) Microprocessor having built-in DRAM and internal data transfer paths wider and faster than independent external transfer paths
JP2634130B2 (ja) バスの使用を制御する方法及びコンピュータ・システム
US6795075B1 (en) Graphic processor having multiple geometric operation units and method of processing data thereby
JP2001184300A (ja) データ処理プロセッサ
JPH0792962A (ja) ポートアドレス入出力優先アーキテクチャー
KR940003631B1 (ko) 제어장치를 구비한 시스템
US6373493B1 (en) Hardware graphics accelerator having access to multiple types of memory including cached memory
JPH06214945A (ja) コンピュータシステム及び情報の高速転送方法
JPH0863587A (ja) 透過性検出データ転送制御装置を有するデータプロセッサおよびその操作方法
JPH03212753A (ja) 入出力装置に対するアトミックアクセス装置及び方法
JP3683657B2 (ja) グラフィックス表示装置およびグラフィックスプロセッサ
US20030140189A1 (en) Method and apparatus for resource sharing in a multi-processor system
JPH03180955A (ja) 情報処理装置
JPH03180958A (ja) 情報処理装置
JPH03180956A (ja) 情報処理装置