JPH06175980A - データ交換装置 - Google Patents

データ交換装置

Info

Publication number
JPH06175980A
JPH06175980A JP32317092A JP32317092A JPH06175980A JP H06175980 A JPH06175980 A JP H06175980A JP 32317092 A JP32317092 A JP 32317092A JP 32317092 A JP32317092 A JP 32317092A JP H06175980 A JPH06175980 A JP H06175980A
Authority
JP
Japan
Prior art keywords
data
cpu
bit
cpus
exchange
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
JP32317092A
Other languages
English (en)
Inventor
Kazuhiko Tomatsuri
和彦 戸祭
Yusuke Ushio
裕介 牛尾
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP32317092A priority Critical patent/JPH06175980A/ja
Publication of JPH06175980A publication Critical patent/JPH06175980A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Abstract

(57)【要約】 【目的】 各々のCPUのプログラムが他方のCPUの
処理を考慮する必要がなく、プログラム作成の容易化、
及びデータ交換の高速化を実現する。 【構成】 CPU1,2間に接続された所要データビッ
ト長を有するCPU間データ交換用下位8ビット用メモ
リ3、CPU間データ交換用上位8ビット用メモリ4
と、CPU間データ交換用下位8ビット用メモリ3、C
PU間データ交換用上位8ビット用メモリ4とCPU
1,2との間に設けられたデータを一時的に保持するデ
ータ一時保持用フリップフロップ5,6,7,8と、デ
ータ一時保持用フリップフロップ5,6,7,8とそれ
らの動作順序を制御するシーケンス回路9,10とを具
備するものである。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、複数のCPUを用い
て1つの目的を実行するようなマルチCPUシステムに
おけるCPU間のデータ交換装置に関するものである。
【0002】
【従来の技術】図4は、従来におけるデータ交換回路の
概略構成を示すブロック図であり、図において、10
1,102は8ビットCPU、103はCPU間データ
交換用8ビットメモリ、104はCPU101がCPU
102へ割込み信号を与えるためのシステム出力用フリ
ップフロップ、105はCPU102がCPU101へ
割込み信号を与えるためのシステム出力用フリップフロ
ップ、106はCPU101の8ビットデータバス、1
07はCPU102の8ビットデータバス、108はC
PU102がCPU101に対して割込み処理を要求す
るための割込み信号、109はCPU101に対して割
込み処理を要求するための割込み信号である。
【0003】次に、動作を説明する。CPU101が1
6ビットデータをCPU102へ送る場合、1回の書込
みサイクルでは8ビット幅でしかCPU間データ交換用
8ビットメモリ103に書込むことができないため、下
位8ビット、上位8ビットを2回の書込みサイクルを使
用して書込む必要がある。このときCPU101,10
2は非同期に動作しているため、CPU102がCPU
間データ交換用8ビットメモリ103における同一アド
レスの16ビットデータを下位8ビット、上位8ビット
の2回の読出しサイクルを使用して読出している可能性
がある。
【0004】このため、CPU101の下位8ビット、
上位8ビットの書込みサイクル直前にCPU102の下
位8ビットの読出しサイクルがあり、直後にCPU10
2の上位8ビットの読出しサイクルがきたような場合、
CPU102は16ビットデータのうち下位8ビットが
CPU101のデータ更新前の古いデータを、上位8ビ
ットがCPU101のデータ更新後の新しいデータを各
々取り込んだことになる。
【0005】このような不具合を防止するため、従来か
らCPU101が16ビットデータをCPU間データ交
換用8ビットメモリ103へ書込む際、CPU102が
CPU間データ交換用8ビットメモリ103をアクセス
しないように、CPU101は割込み信号発生用のシス
テム出力フリップフロップ104を使用してCPU10
2へ割込み要求を出力し、CPU102がCPU間デー
タ交換用8ビットメモリ103を読出さないような処理
をしたうえでCPU間データ交換用8ビットメモリ10
3へ書込み処理を実行していた。ここでは、CPU10
1がCPU102に対して16ビットデータを送る場合
について説明したが、CPU102がCPU101に対
して16ビットデータを送る場合についても同様であ
る。
【0006】なお、8ビットデータと16ビットデータ
とを相互に交換して転送する技術に関しては、特開平4
−177553号公報の「パラレルビットデータ変換装
置」、実開昭62−18759号公報の「DMA転送装
置」に各々開示されているが、いずれも単にデータ長を
交換して転送するのみであり、8ビット幅でデータの入
出力ができる2つのCPU間で16ビット幅のデータを
データ交換用メモリを介して授受する場合などにおいて
発生する上述したような問題点を何ら解決するものでは
ない。
【0007】その他、この発明に関連する参考技術文献
としては、特開平3−152644号公報に開示されて
いる「誤出力防止回路」、特開平4−10144号公報
に開示されている「データ転送回路」がある。
【0008】
【発明が解決しようとする課題】上記に示した従来にお
ける回路では、各々のCPUのプログラムを作成する
際、他方のCPUのプログラム処理を考慮する必要があ
り、プログラムが複雑になりプログラム作成が難しく、
且つ、データ転送に要する割込み要求、割込み要求に対
する応答処理等の前処理、後処理に時間を要するためデ
ータ転送の高速化を阻害するという問題点があった。
【0009】この発明は、上記のような問題を解決する
ためになされたもので、各々のCPUのプログラムが他
方のCPUの処理を考慮する必要がなく、プログラム作
成の容易化、及びデータ交換の高速化を実現することを
目的とする。
【0010】
【課題を解決するための手段】この発明に係るデータ交
換装置は、CPU間に接続された所要データビット長を
有するデータ交換用記憶手段と、前記データ交換用記憶
手段とCPUとの間に設けられたデータを一時的に保持
するデータ保持手段と、前記データ交換用記憶手段とデ
ータ保持手段の動作順序を制御する制御手段とを具備す
るものである。
【0011】また、CPU間に接続された所要データビ
ット長を有するデータ交換用記憶手段と、前記データ交
換用記憶手段とCPUとの間にデータを一時的に保持す
るデータ保持手段と、前記データ交換用記憶手段とデー
タ保持手段の動作順序を制御する制御手段とを具備し、
一括してCPUの1サイクルで読出し、書込み可能なデ
ータビット長より大きなデータビット長を前記データ交
換用記憶手段より読出すことができ、且つ、データ交換
用記憶手段に書込むことができる。
【0012】
【作用】この発明において、CPUが複数の書込みサイ
クルを使用して所要ビット長のデータを転送する際、最
後の書込みサイクルが終了するまでの前書込みサイクル
でのデータは一時的にデータを保持するフリップフロッ
プに記憶しておき、最後の書込みサイクルにて一括して
所要ビット長のデータをCPU間データ交換用メモリへ
書込む。また、CPUが複数の読出しサイクルを使用し
て所要ビット長のデータを受領する際、最初の読出しサ
イクルで一括して所要ビット長のデータをCPU間デー
タ交換用メモリより読出し、次の読出しサイクルでのデ
ータは一時的にデータを保持するフリップフロップに保
持しておき、次の読出しサイクルでは一時的にデータを
保持するフリップフロップよりデータを読出す。これら
の動作により、他方のCPUの動作に関係なく所要ビッ
ト長のデータの転送、受領が可能となる。
【0013】
【実施例】図1は、この発明に係るデータ交換装置の概
略構成を示すブロック図であり、図1において、1,2
は8ビットCPU、3は16ビットデータを交換する
際、下位8ビット分を交換するためのCPU間データ交
換用下位8ビット用メモリ、4は同様に上位8ビット分
を交換するためのCPU間データ交換用上位8ビット用
メモリ、5はCPU1が16ビットデータをCPU間デ
ータ交換用下位8ビット用メモリ3、CPU間データ交
換用上位8ビット用メモリ4へ転送する際、下位8ビッ
トのデータを一時的に保持するためのデータ一時保持用
フリップフロップ、6はCPU1が16ビットデータを
受領しようとした際、CPU間データ交換用下位8ビッ
ト用メモリ3、CPU間データ交換用上位8ビット用メ
モリ4より読出したデータの上位8ビットのデータを一
時的に保持するためのデータ一時保持用フリップフロッ
プである。
【0014】また、7はCPU2が16ビットデータを
CPU間データ交換用下位8ビット用メモリ3、CPU
間データ交換用上位8ビット用メモリ4へ転送する際、
下位8ビットのデータを一時的に保持するためのデータ
一時保持用フリップフロップ、8はCPU2が16ビッ
トデータを受領しようとした際、CPU間データ交換用
下位8ビット用メモリ3、CPU間データ交換用上位8
ビット用メモリ4より読出したデータの上位8ビットの
データを一時的に保持するためのデータ一時保持用フリ
ップフロップである。
【0015】また、9はCPU1がデータの交換を行う
ため、CPU間データ交換用下位8ビット用メモリ3、
CPU間データ交換用上位8ビット用メモリ4を使用す
る際、CPU間データ交換用下位8ビット用メモリ3、
CPU間データ交換用上位8ビット用メモリ4、データ
一時保持用フリップフロップ5、データ一時保持用フリ
ップフロップ6、データバッファ16(後述する)、デ
ータバッファ17(後述する)、データバッファ18
(後述する)、データバッファ19(後述する)の動作
順序を制御するためのシーケンス回路である。
【0016】また、10はCPU2がデータの交換を行
うため、CPU間データ交換用下位8ビット用メモリ
3、CPU間データ交換用上位8ビット用メモリ4を使
用する際、CPU間データ交換用下位8ビット用メモリ
3、CPU間データ交換用上位8ビット用メモリ4、デ
ータ一時保持用フリップフロップ7、データ一時保持用
フリップフロップ8、データバッファ36(後述す
る)、データバッファ37(後述する)、データバッフ
ァ38(後述する)、データバッファ39(後述する)
の動作順序を制御するためのシーケンス回路である。
【0017】また、11はCPU1に接続されている8
ビットのデータバス、12はCPU間データ交換用下位
8ビット用メモリ3に接続されているCPU1側の8ビ
ットのデータバス、13はデータ一時保持用フリップフ
ロップ5より出力される8ビットのデータバス、14は
CPU間データ交換用上位8ビット用メモリ4に接続さ
れているCPU1側の8ビットのデータバス、15はデ
ータ一時保持用フリップフロップ6より出力される8ビ
ットのデータバスである。
【0018】また、16はデータバス12のデータをデ
ータバス11へ必要なときのみ出力するためのデータバ
ッファ、17はデータ一時保持用フリップフロップ5よ
り出力される一時的に保持したデータをデータバス12
へ必要なときのみ出力するためのデータバッファ、18
はデータバス11のデータをデータバス14へ必要なと
きのみ出力するためのデータバッファ、19はデータ一
時保持用フリップフロップ6より出力される一時的に保
持したデータをデータバス11へ必要なときのみ出力す
るためのデータバッファである。
【0019】また、20はCPU1が下位8ビット或い
は上位8ビットをアクセスしているか否かを示す制御信
号であり、本実施例ではアドレス信号の最下位ビットで
ある。21はCPU1が読出しを行っていることを示す
信号、22はCPU1が書込みを行っていることを示す
信号、23はデータバッファ19にデータを出力するこ
とを許可する信号、24はデータ一時保持用フリップフ
ロップ5にデータラッチを指令する信号、25はデータ
バッファ16にデータを出力することを許可する信号、
26はデータバッファ18を出力することを許可する信
号、27はデータバッファ17を出力することを許可す
る信号である。
【0020】また、28はデータ一時保持用フリップフ
ロップ6にデータラッチを指令する信号、29はCPU
間データ交換用下位8ビット用メモリ3、CPU間デー
タ交換用上位8ビット用メモリ4へのCPU1側の書込
み指令信号、30はCPU間データ交換用下位8ビット
用メモリ3、CPU間データ交換用上位8ビット用メモ
リ4へのCPU1側の読出し指令信号、20aはCPU
間データ交換用下位8ビット用メモリ3、CPU間デー
タ交換用上位8ビット用メモリ4へのCPU1より出力
されたアドレスの最下位ビット以外のアドレスである。
【0021】また、31はCPU2に接続されている8
ビットのデータバス、32はCPU間データ交換用下位
8ビット用メモリ3に接続されているCPU2側の8ビ
ットのデータバス、33はデータ一時保持用フリップフ
ロップ7より出力される8ビットのデータバス、34は
CPU間データ交換用上位8ビット用メモリ4に接続さ
れているCPU2側の8ビットのデータバス、35はデ
ータ一時保持用フリップフロップ8より出力される8ビ
ットのデータバスである。
【0022】また、36はデータバス32のデータをデ
ータバス31へ必要なときのみ出力するためのデータバ
ッファ、37はデータ一時保持用フリップフロップ7よ
り出力される一時的に保持したデータをデータバス32
へ必要なときのみ出力するためのデータバッファ、38
はデータバス31のデータをデータバス34へ必要なと
きのみ出力するためのデータバッファ、39はデータ一
時保持用フリップフロップ8より出力される一時的に保
持したデータをデータバス31へ必要なときのみ出力す
るためのデータバッファである。
【0023】また、40はCPU2が下位8ビット或い
は上位8ビットをアクセスしているか否かを示す制御信
号であり、本実施例ではアドレス信号の最下位ビットで
ある。41はCPU2が読出しを行っていることを示す
信号、42はCPU2が書込みを行っていることを示す
信号、43はデータバッファ39にデータを出力するこ
とを許可する信号、44はデータ一時保持用フリップフ
ロップ7にデータラッチを指令する信号、45はデータ
バッファ36にデータを出力することを許可する信号、
46はデータバッファ38を出力することを許可する信
号、47はデータバッファ37を出力することを許可す
る信号である。
【0024】また、48はデータ一時保持用フリップフ
ロップ8にデータラッチを指令する信号、49はCPU
間データ交換用下位8ビット用メモリ3、CPU間デー
タ交換用上位8ビット用メモリ4へのCPU2側の書込
み指令信号、50はCPU間データ交換用下位8ビット
用メモリ3、CPU間データ交換用上位8ビット用メモ
リ4へのCPU2側の読出し指令信号、40aはCPU
間データ交換用下位8ビット用メモリ3、CPU間デー
タ交換用上位8ビット用メモリ4へのCPU2より出力
されたアドレスの最下位ビット以外のアドレスである。
【0025】図2,図3は、この発明に係るデータ交換
装置の動作を示すタイミングチャートである。図2にお
いて、横軸は時間、縦軸は各部分の動作を示す。図中同
一符号は図1と同一のものを示す。斜線は不定を示し、
CPU1が16ビットデータを転送、受領する際におけ
る各部分の動作順序を示す。図3において、横軸は時
間、縦軸は各部分の動作を示す。図中同一符号は図1と
同一のものを示す。斜線は不定を示し、CPU2が16
ビットデータを転送、受領する際における各部分の動作
順序を示す。
【0026】次に、動作について説明する。8ビットC
PU1が16ビットデータをCPU2へ送る場合の動作
を例にとって説明すると、CPU1は2回の書込みサイ
クルを使用して16ビットデータを転送するが、下位8
ビットのデータを書込むサイクルでは図1に示したデー
タ保持用フリップフロップ5にデータの書込みが行われ
るだけで、CPU間データ交換用下位8ビット用メモリ
3、CPU間データ交換用上位8ビット用メモリ4への
書込みは行わない。
【0027】次に、上位8ビットデータを書込むサイク
ルでは、図1に示したデータバッファ18を通してCP
U1からのデータはCPU間データ交換用上位8ビット
用メモリ4へ上位8ビットのデータが供給され、下位8
ビットのデータについてはデータバッファ17を通して
CPU間データ交換用下位8ビット用メモリ3へ供給さ
れ、また、CPU間データ交換用下位8ビット用メモリ
3、CPU間データ交換用上位8ビット用メモリ4へ書
込み指令が送られる。このことにより、CPU間データ
交換用下位8ビット用メモリ3、CPU間データ交換用
上位8ビット用メモリ4へは16ビットのデータが一括
して書込まれる。
【0028】次に、8ビットCPU1が16ビットデー
タをCPU2より受領する場合の動作を例にとって説明
すると、CPU1は2回の読出しサイクルを使用して1
6ビットデータを受領するが、下位8ビットのデータを
読出すサイクルではCPU間データ交換用下位8ビット
用メモリ3、CPU間データ交換用上位8ビット用メモ
リ4へ読出し指令が送られ、CPU間データ交換用下位
8ビット用メモリ3、CPU間データ交換用上位8ビッ
ト用メモリ4より16ビットのデータが一括して読出さ
れる。
【0029】下位8ビットのデータについては、データ
バッファ16を通してCPU1へデータが送られ、CP
U1にデータが取り込まれる。上位8ビットのデータに
ついてはデータ一時保持用フリップフロップ6に書込み
が行われる。次の上位8ビットの読出しサイクルでは、
CPU間データ交換用下位8ビット用メモリ3、CPU
間データ交換用上位8ビット用メモリ4よりの読出しは
行われず、データバッファ19を通して先のサイクルで
データ一時保持用フリップフロップ6で保持されていた
上位8ビットのデータがCPU1へ送られ、読み取られ
る。
【0030】以上説明してきたことをタイミングチャー
トにより示すと図2に示すようになる。CPU2の16
ビットデータの転送、受領についても同様の動作を行
う。その動作タイミングを図3に示す。
【0031】以上説明してきたように、CPU間データ
交換用下位8ビット用メモリ3、CPU間データ交換用
上位8ビット用メモリ4のデータ幅を16ビットデータ
長とし、メモリへの読出し、書込みを一括して行うこと
により、従来において問題となった下位8ビット、上位
8ビットの読出し或いは書込みの時間差分に起因するデ
ータの取り込み誤りを防止することができ、CPU1,
2は特別なソフトウエア処理を行わず、単に2回の読出
し、書込みサイクルを行うだけで16ビットデータの転
送、受領が可能となる。
【0032】上記実施例では8ビットCPUが16ビッ
トデータを交換する場合を例にとって説明したが、16
ビットCPUが32ビットデータを交換する際について
も同様である。また、上記実施例にあっては、8ビット
CPUが2サイクルを使用して16ビットデータを交換
する例について説明したが、8ビットCPUが4サイク
ルを使用して32ビットデータを交換するような用途に
ついても、最後のサイクルでデータ交換用メモリに一括
書込み、最初のサイクルでデータ交換用メモリより一括
読出しするようにすればよい。
【0033】
【発明の効果】以上のように、この発明によれば、CP
Uが複数の書込みサイクルを使用して所要ビット長のデ
ータを転送する際は、最後の書込みサイクルが終了する
までの前書込みサイクルでのデータは一時的にデータを
保持するフリップフロップに記憶しておき、最後の書込
みサイクルにて一括して所要ビット長のデータをCPU
間データ交換用メモリへ書込み、また、CPUが複数の
読出しサイクルを使用して所要ビット長のデータを受領
する際は、最初の読出しサイクルで一括して所要ビット
長のデータをCPU間データ交換用メモリより読出し、
次の読出しサイクルでのデータは一時的にデータを保持
するフリップフロップに保持しておき、次の読出しサイ
クルでは一時的にデータを保持するフリップフロップよ
りデータを読出すため、他方のCPUの動作に関係なく
いつでもデータの書込み、読出しが実行でき、余分なプ
ログラム処理が不要となり、プログラム作成の容易化、
データ交換の高速化を実現することができる。
【図面の簡単な説明】
【図1】この発明によるデータ交換装置の概略構成を示
すブロック図である。
【図2】この発明によるデータ交換装置の動作を示すタ
イミングチャートである。
【図3】この発明によるデータ交換装置の動作を示すタ
イミングチャートである。
【図4】従来におけるデータ交換回路の概略構成を示す
ブロック図である。
【符号の説明】
1 CPU 2 CPU 3 CPU間データ交換用下位8ビット用メモリ 4 CPU間データ交換用上位8ビット用メモリ 5 フリップフロップ 6 フリップフロップ 7 フリップフロップ 8 フリップフロップ 9 シーケンス回路 10 シーケンス回路

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 CPU間に接続された所要データビット
    長を有するデータ交換用記憶手段と、前記データ交換用
    記憶手段とCPUとの間に設けられたデータを一時的に
    保持するデータ保持手段と、前記データ交換用記憶手段
    とデータ保持手段の動作順序を制御する制御手段とを具
    備することを特徴とするデータ交換装置。
  2. 【請求項2】 CPU間に接続された所要データビット
    長を有するデータ交換用記憶手段と、前記データ交換用
    記憶手段とCPUとの間にデータを一時的に保持するデ
    ータ保持手段と、前記データ交換用記憶手段とデータ保
    持手段の動作順序を制御する制御手段とを具備し、一括
    してCPUの1サイクルで読出し、書込み可能なデータ
    ビット長より大きなデータビット長を前記データ交換用
    記憶手段より読出すことができ、且つ、データ交換用記
    憶手段に書込むことができることを特徴とするデータ交
    換装置。
JP32317092A 1992-12-02 1992-12-02 データ交換装置 Pending JPH06175980A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP32317092A JPH06175980A (ja) 1992-12-02 1992-12-02 データ交換装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP32317092A JPH06175980A (ja) 1992-12-02 1992-12-02 データ交換装置

Publications (1)

Publication Number Publication Date
JPH06175980A true JPH06175980A (ja) 1994-06-24

Family

ID=18151863

Family Applications (1)

Application Number Title Priority Date Filing Date
JP32317092A Pending JPH06175980A (ja) 1992-12-02 1992-12-02 データ交換装置

Country Status (1)

Country Link
JP (1) JPH06175980A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6907480B2 (en) 2001-07-11 2005-06-14 Seiko Epson Corporation Data processing apparatus and data input/output apparatus and data input/output method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6907480B2 (en) 2001-07-11 2005-06-14 Seiko Epson Corporation Data processing apparatus and data input/output apparatus and data input/output method

Similar Documents

Publication Publication Date Title
KR900004006B1 (ko) 마이크로 프로세서 시스템
JPH0258649B2 (ja)
US4835684A (en) Microcomputer capable of transferring data from one location to another within a memory without an intermediary data bus
JPH06175980A (ja) データ交換装置
JPH09231164A (ja) バスブリッジおよびそれを備えた計算機システム
JPH0238968B2 (ja)
JP2577071B2 (ja) ディジタル信号処理プロセッサ
JP2581144B2 (ja) バス制御装置
JPS6019816B2 (ja) マイクロプログラム制御アダプタ
JPH09305530A (ja) Dmaコントローラ
JPH06301641A (ja) 電子計算機
JPH0553976A (ja) コンピユータ間パラレルデータ転送方法及びバスアダプタ
JPH0330899B2 (ja)
JP3217815B2 (ja) アドレス変換方式
JPS63103342A (ja) 主記憶制御装置
JPH03228163A (ja) データ転送装置
JPH01144151A (ja) 情報処理装置
JPH01286055A (ja) メモリアクセス制御装置
JPH04112251A (ja) マイクロコンピュータ
JPS63126057A (ja) デ−タ転送方式
JPH03164962A (ja) メモリ制御方式
JPH03220654A (ja) マイクロコンピュータ
JPH01261763A (ja) Dma転送制御装置
JPS6336030B2 (ja)
JPS6139291A (ja) 磁気バブル制御装置