JPH05181785A - データ転送方式 - Google Patents
データ転送方式Info
- Publication number
- JPH05181785A JPH05181785A JP35948391A JP35948391A JPH05181785A JP H05181785 A JPH05181785 A JP H05181785A JP 35948391 A JP35948391 A JP 35948391A JP 35948391 A JP35948391 A JP 35948391A JP H05181785 A JPH05181785 A JP H05181785A
- Authority
- JP
- Japan
- Prior art keywords
- data
- transfer
- burst
- shared bus
- port
- 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.)
- Granted
Links
Landscapes
- Bus Control (AREA)
- Information Transfer Systems (AREA)
Abstract
(57)【要約】
【目的】 ポート幅が異なるマスター装置とスレーブ装
置との間でも、共有バスを介してのバースト転送が出来
るデータ転送方式を提供すること。 【構成】 マスター装置やスレーブ装置を共有バスに接
続し、バースト転送によりデータを転送するデータ転送
方式において、マスター装置やスレーブ装置内に、レジ
スタセルを行列形式に構成した転送用インターフェース
バッファを具える。そして、そのレジスタセルに書き込
まれたデータを、行方向および列方向に自在にシフト出
来る構成とする。共有バスとの間でデータの授受を行う
際には、バーストサイクル毎に列方向のシフトを行う。
マスターデバイスやスレーブデバイスとの間でデータの
授受を行う際には、行方向のシフトを行う。これによ
り、連続する番地のデータを、転送先のポート幅と等し
い任意のバイト幅で、転送用インターフェースバッファ
の列方向に配列させることが出来る。そのため、ポート
幅が異なる装置との間でも、バースト転送をすることが
出来るようになる。
置との間でも、共有バスを介してのバースト転送が出来
るデータ転送方式を提供すること。 【構成】 マスター装置やスレーブ装置を共有バスに接
続し、バースト転送によりデータを転送するデータ転送
方式において、マスター装置やスレーブ装置内に、レジ
スタセルを行列形式に構成した転送用インターフェース
バッファを具える。そして、そのレジスタセルに書き込
まれたデータを、行方向および列方向に自在にシフト出
来る構成とする。共有バスとの間でデータの授受を行う
際には、バーストサイクル毎に列方向のシフトを行う。
マスターデバイスやスレーブデバイスとの間でデータの
授受を行う際には、行方向のシフトを行う。これによ
り、連続する番地のデータを、転送先のポート幅と等し
い任意のバイト幅で、転送用インターフェースバッファ
の列方向に配列させることが出来る。そのため、ポート
幅が異なる装置との間でも、バースト転送をすることが
出来るようになる。
Description
【0001】
【産業上の利用分野】本発明は、共有バスを介してデー
タをバースト転送するデータ転送方式に関するものであ
る。
タをバースト転送するデータ転送方式に関するものであ
る。
【0002】
【従来の技術】複数のマスター装置と複数のスレーブ装
置との個々の間で、相互にデータ転送を行う場合、それ
らの装置を共有バスに接続し、その共有バスを時分割多
重で使用して行う、いわゆる共有バス方式が採用されて
いる。図11に、そのような共有バス方式の構成を示
す。図11において、1はマスター装置、2はスレーブ
装置、3は共有バスである。
置との個々の間で、相互にデータ転送を行う場合、それ
らの装置を共有バスに接続し、その共有バスを時分割多
重で使用して行う、いわゆる共有バス方式が採用されて
いる。図11に、そのような共有バス方式の構成を示
す。図11において、1はマスター装置、2はスレーブ
装置、3は共有バスである。
【0003】近年では、画像処理におけるように、大量
のデータを高速で転送してリアルタイムで処理すること
が要求される用途が多くなって来ているが、そのような
要求に対応するための1つの方策として、共有バス3の
バス幅を広げることが考えられる。共有バス3のバス幅
を広げれば、言うまでもなく、単位時間に運び得るデー
タ量を大とする。
のデータを高速で転送してリアルタイムで処理すること
が要求される用途が多くなって来ているが、そのような
要求に対応するための1つの方策として、共有バス3の
バス幅を広げることが考えられる。共有バス3のバス幅
を広げれば、言うまでもなく、単位時間に運び得るデー
タ量を大とする。
【0004】しかし、プリント基板上で共有バス3のみ
があまり広い面積を占めることは出来ないから、まず面
積の点で制約を受ける。また、共有バス3にはASIC
(Application Specific IC )によって接続するのであ
るが、それに設け得るピンの数は、ASICのパッケー
ジの形式および大きさから、やはり制約を受ける。この
ような事情により、共有バス3のバス幅を広げることに
は限界がある。
があまり広い面積を占めることは出来ないから、まず面
積の点で制約を受ける。また、共有バス3にはASIC
(Application Specific IC )によって接続するのであ
るが、それに設け得るピンの数は、ASICのパッケー
ジの形式および大きさから、やはり制約を受ける。この
ような事情により、共有バス3のバス幅を広げることに
は限界がある。
【0005】そこで、他の方策として、データの転送
を、シングル転送ではなくバースト転送で行うことが考
えられている。図12は、シングル転送およびバースト
転送を説明する図である。図12において、Tは時間
軸、5はアドレス指定時間、6はデータ転送時間、7は
アービトレーション時間である。
を、シングル転送ではなくバースト転送で行うことが考
えられている。図12は、シングル転送およびバースト
転送を説明する図である。図12において、Tは時間
軸、5はアドレス指定時間、6はデータ転送時間、7は
アービトレーション時間である。
【0006】図12(イ)はシングル転送を説明する図
であるが、シングル転送では、バス幅に相当するビット
数のデータを一回転送するに先立ち、そのデータの送り
先であるアドレスを指定する。そして、送り終えた後、
バスのアービトレーションが行われ、再びバスを確保し
た後、次のデータ転送が行われる。従って、バス幅に相
当するビット数のデータを一回転送するのに要する時間
は、アドレス指定時間5とデータ転送時間6とアービト
レーション時間7を合計したものとなる。
であるが、シングル転送では、バス幅に相当するビット
数のデータを一回転送するに先立ち、そのデータの送り
先であるアドレスを指定する。そして、送り終えた後、
バスのアービトレーションが行われ、再びバスを確保し
た後、次のデータ転送が行われる。従って、バス幅に相
当するビット数のデータを一回転送するのに要する時間
は、アドレス指定時間5とデータ転送時間6とアービト
レーション時間7を合計したものとなる。
【0007】図12(ロ)はバースト転送を説明する図
である。バースト転送では、アドレスを指定した後、そ
のアドレスを先頭位置にして、バス幅に相当するビット
数のデータを何回か連続して転送してしまう。その回数
(バーストサイクル数)は、予め1つに定められていた
り(例、4サイクルでのみ)、あるいは幾つか定められ
ているものの中から1つを選択するようにされていたり
する(例、4サイクル,8サイクル,16サイクルと3
つ定められていて、その中から8サイクルを選択)。図
12(ロ)は、4回連続して転送する場合(4サイクル
の場合)の例を示している。次の転送の為のアービトレ
ーションは、その後に行われる。バースト転送では、ア
ドレス指定およびアービトレーションの回数が少なくな
るから、それらに費やす時間が少なくなり、データが高
速に送られることになる。
である。バースト転送では、アドレスを指定した後、そ
のアドレスを先頭位置にして、バス幅に相当するビット
数のデータを何回か連続して転送してしまう。その回数
(バーストサイクル数)は、予め1つに定められていた
り(例、4サイクルでのみ)、あるいは幾つか定められ
ているものの中から1つを選択するようにされていたり
する(例、4サイクル,8サイクル,16サイクルと3
つ定められていて、その中から8サイクルを選択)。図
12(ロ)は、4回連続して転送する場合(4サイクル
の場合)の例を示している。次の転送の為のアービトレ
ーションは、その後に行われる。バースト転送では、ア
ドレス指定およびアービトレーションの回数が少なくな
るから、それらに費やす時間が少なくなり、データが高
速に送られることになる。
【0008】図13は、共有バスを介して行う従来のデ
ータ転送方式を示す図である。符号は図11のものに対
応し、1−1はマスターデバイス、1−2は転送制御回
路、2−1はスレーブデバイス、2−2は転送制御回
路、4は矢印、H1 〜H4 は転送ブロックである。マス
ターデバイス1−1は例えばCPUとかDMA(ダイレ
クトメモリアクセス)コントローラであり、スレーブデ
バイス2−1は例えばメモリである。マスターデバイス
1−1,スレーブデバイス2−1内に記してある
「0」,「1」,…「F」は、それぞれ1バイトのデー
タのアドレスを表している。
ータ転送方式を示す図である。符号は図11のものに対
応し、1−1はマスターデバイス、1−2は転送制御回
路、2−1はスレーブデバイス、2−2は転送制御回
路、4は矢印、H1 〜H4 は転送ブロックである。マス
ターデバイス1−1は例えばCPUとかDMA(ダイレ
クトメモリアクセス)コントローラであり、スレーブデ
バイス2−1は例えばメモリである。マスターデバイス
1−1,スレーブデバイス2−1内に記してある
「0」,「1」,…「F」は、それぞれ1バイトのデー
タのアドレスを表している。
【0009】従来のバースト転送では、データ幅が共有
バス3のデータ幅(つまり共有バス3の物理的信号線
数)に固定されており、マスター装置1のポート幅もス
レーブ装置2のポート幅も、共有バス3のデータ幅に等
しいものでなければならなかった。図13の場合、共有
バス3は4バイトのデータ幅(32ビット)を有するも
のとしているので、マスター装置1,スレーブ装置2と
しては、ポート幅が4バイトのものを使用している。
バス3のデータ幅(つまり共有バス3の物理的信号線
数)に固定されており、マスター装置1のポート幅もス
レーブ装置2のポート幅も、共有バス3のデータ幅に等
しいものでなければならなかった。図13の場合、共有
バス3は4バイトのデータ幅(32ビット)を有するも
のとしているので、マスター装置1,スレーブ装置2と
しては、ポート幅が4バイトのものを使用している。
【0010】バーストサイクル数を4とすると、バース
ト転送時には、指定した転送開始アドレス(図12
(ロ)のアドレス指定時間5で指定したアドレス)か
ら、連続する4バイトを1つの転送ブロックとして、つ
づけて4回の転送が行われる。図13では、転送開始ア
ドレスを「0」番地とし、そこから4バイトづつの転送
ブロックH1 〜H4 が、矢印4のようにスレーブ装置2
へ向かって転送される(書き込み動作)。スレーブデバ
イス2−1に記した「0」〜「F」は、転送された結果
を示している。なお、転送制御回路1−2,2−2は、
バースト転送時に必要とされる種々の制御信号(例、バ
ーストサイクル信号,アクノリッジ信号)をやり取りす
る回路である。
ト転送時には、指定した転送開始アドレス(図12
(ロ)のアドレス指定時間5で指定したアドレス)か
ら、連続する4バイトを1つの転送ブロックとして、つ
づけて4回の転送が行われる。図13では、転送開始ア
ドレスを「0」番地とし、そこから4バイトづつの転送
ブロックH1 〜H4 が、矢印4のようにスレーブ装置2
へ向かって転送される(書き込み動作)。スレーブデバ
イス2−1に記した「0」〜「F」は、転送された結果
を示している。なお、転送制御回路1−2,2−2は、
バースト転送時に必要とされる種々の制御信号(例、バ
ーストサイクル信号,アクノリッジ信号)をやり取りす
る回路である。
【0011】なお、以上のようなデータ転送方式に関す
る従来の文献としては、例えば特開昭56−110125号公
報, 特開昭57− 64834号公報, 特開昭64− 36147号公
報, 特開平2−253362号公報,特開平3−135647号公報
等がある。
る従来の文献としては、例えば特開昭56−110125号公
報, 特開昭57− 64834号公報, 特開昭64− 36147号公
報, 特開平2−253362号公報,特開平3−135647号公報
等がある。
【0012】
(問題点)しかしながら、従来のデータ転送方式では、
マスター装置のポート幅,スレーブ装置のポート幅およ
び共有バスのバス幅とが、全て等しいという条件が満た
されている場合にのみしか、バースト転送は行えないと
いう問題点があった。
マスター装置のポート幅,スレーブ装置のポート幅およ
び共有バスのバス幅とが、全て等しいという条件が満た
されている場合にのみしか、バースト転送は行えないと
いう問題点があった。
【0013】(問題点の説明)共有バスに接続されるマ
スター装置やスレーブ装置の数が多くなるにつれ、ポー
ト幅が共有バスのバス幅に等しくないものも接続できれ
ば、非常に好都合であるというような要望が出されるよ
うになった。しかしながら、従来のデータ転送方式で
は、このような要望に応えることが出来ない。
スター装置やスレーブ装置の数が多くなるにつれ、ポー
ト幅が共有バスのバス幅に等しくないものも接続できれ
ば、非常に好都合であるというような要望が出されるよ
うになった。しかしながら、従来のデータ転送方式で
は、このような要望に応えることが出来ない。
【0014】本発明は、マスター装置およびスレーブ装
置のポート幅が、共有バスのバス幅以下でありさえすれ
ば、たとえポート幅が互いに異なっていようとも、バー
スト転送が出来るようにすることを課題とするものであ
る。
置のポート幅が、共有バスのバス幅以下でありさえすれ
ば、たとえポート幅が互いに異なっていようとも、バー
スト転送が出来るようにすることを課題とするものであ
る。
【0015】
【課題を解決するための手段】前記課題を解決するた
め、本発明では、共有バスを介して接続されたマスター
装置とスレーブ装置との間で、データ幅MバイトでN回
のバーストサイクルにより、アドレスa番地からの連続
したM×Nバイトのデータをバースト転送するデータ転
送方式において、n回目のバーストサイクルでは、a+
(n−1),a+N+(n−1),…,a+(m−1)
N+(n−1),…,a+(M−1)N+(n−1)の
各番地のデータを転送(但し1≦m≦Mの整数)するこ
ととした。
め、本発明では、共有バスを介して接続されたマスター
装置とスレーブ装置との間で、データ幅MバイトでN回
のバーストサイクルにより、アドレスa番地からの連続
したM×Nバイトのデータをバースト転送するデータ転
送方式において、n回目のバーストサイクルでは、a+
(n−1),a+N+(n−1),…,a+(m−1)
N+(n−1),…,a+(M−1)N+(n−1)の
各番地のデータを転送(但し1≦m≦Mの整数)するこ
ととした。
【0016】また、本発明では、共有バスを介して接続
されたマスター装置とスレーブ装置との間でバースト転
送によりデータを転送するデータ転送方式において、レ
ジスタセルが行列形式に構成され、該レジスタセルに書
き込まれたデータは行方向および列方向へシフト自在に
されると共に、行方向の端部はマスターデバイスとの間
でデータの授受を行うマスターポートに接続され、列方
向の端部は共有バスポートに接続された第1の転送用イ
ンターフェースバッファを有するマスター装置と、レジ
スタセルが行列に構成され、該レジスタセルに書き込ま
れたデータは行方向および列方向へシフト自在にされる
と共に、行方向の端部はスレーブデバイスとの間でデー
タの授受を行うスレーブポートに接続され、列方向の端
部は共有バスポートに接続された第2の転送用インター
フェースバッファを有するスレーブ装置とを具え、第1
の転送用インターフェースバッファが前記マスターデバ
イスとの間でデータを授受する際、または第2の転送用
インターフェースバッファが前記スレーブデバイスとの
間でデータを授受する際には、行方向のシフトを行いつ
つ授受し、前記共有バスポートを介して共有バスとの間
でデータを授受する際には、バーストサイクル毎に列方
向のシフトを行いつつ授受することとした。
されたマスター装置とスレーブ装置との間でバースト転
送によりデータを転送するデータ転送方式において、レ
ジスタセルが行列形式に構成され、該レジスタセルに書
き込まれたデータは行方向および列方向へシフト自在に
されると共に、行方向の端部はマスターデバイスとの間
でデータの授受を行うマスターポートに接続され、列方
向の端部は共有バスポートに接続された第1の転送用イ
ンターフェースバッファを有するマスター装置と、レジ
スタセルが行列に構成され、該レジスタセルに書き込ま
れたデータは行方向および列方向へシフト自在にされる
と共に、行方向の端部はスレーブデバイスとの間でデー
タの授受を行うスレーブポートに接続され、列方向の端
部は共有バスポートに接続された第2の転送用インター
フェースバッファを有するスレーブ装置とを具え、第1
の転送用インターフェースバッファが前記マスターデバ
イスとの間でデータを授受する際、または第2の転送用
インターフェースバッファが前記スレーブデバイスとの
間でデータを授受する際には、行方向のシフトを行いつ
つ授受し、前記共有バスポートを介して共有バスとの間
でデータを授受する際には、バーストサイクル毎に列方
向のシフトを行いつつ授受することとした。
【0017】なお、前記転送用インターフェースバッフ
ァの共有バスポート幅が共有バスのバス幅より小である
場合には、該共有バスポートを共有バスのアドレス下位
側またはアドレス上位側のいずれか一方に詰めて接続す
ることとする。
ァの共有バスポート幅が共有バスのバス幅より小である
場合には、該共有バスポートを共有バスのアドレス下位
側またはアドレス上位側のいずれか一方に詰めて接続す
ることとする。
【0018】
【作 用】マスター装置やスレーブ装置を共有バスに
接続し、バースト転送によりデータを転送するデータ転
送方式において、マスター装置やスレーブ装置内に、レ
ジスタセルを行列形式に構成した転送用インターフェー
スバッファを具え、そのレジスタセルに書き込まれたデ
ータは、行方向および列方向にシフト自在とする。共有
バスとの間でデータの授受を行う際には、バーストサイ
クル毎に列方向のシフトを行う。そして、マスターデバ
イスやスレーブデバイスとの間でデータの授受を行う際
には、行方向のシフトを行う。これにより、連続する番
地のデータを、転送先のポート幅と等しい任意のバイト
幅で、転送用インターフェースバッファの列方向に配列
させることが出来る。そのため、ポート幅が異なる相手
との間でも、バースト転送をすることが出来るようにな
る。
接続し、バースト転送によりデータを転送するデータ転
送方式において、マスター装置やスレーブ装置内に、レ
ジスタセルを行列形式に構成した転送用インターフェー
スバッファを具え、そのレジスタセルに書き込まれたデ
ータは、行方向および列方向にシフト自在とする。共有
バスとの間でデータの授受を行う際には、バーストサイ
クル毎に列方向のシフトを行う。そして、マスターデバ
イスやスレーブデバイスとの間でデータの授受を行う際
には、行方向のシフトを行う。これにより、連続する番
地のデータを、転送先のポート幅と等しい任意のバイト
幅で、転送用インターフェースバッファの列方向に配列
させることが出来る。そのため、ポート幅が異なる相手
との間でも、バースト転送をすることが出来るようにな
る。
【0019】
【実施例】以下、本発明の実施例を図面に基づいて詳細
に説明する。図1は、本発明のデータ転送方式の実施例
を示す図である。符号は図13のものに対応し、1−
3,2−3は転送用インターフェースバッファ、8はマ
スターポート、9,10は共有バスポート、11はスレ
ーブポート、12,13は矢印、H5 〜H8 は転送ブロ
ックである。
に説明する。図1は、本発明のデータ転送方式の実施例
を示す図である。符号は図13のものに対応し、1−
3,2−3は転送用インターフェースバッファ、8はマ
スターポート、9,10は共有バスポート、11はスレ
ーブポート、12,13は矢印、H5 〜H8 は転送ブロ
ックである。
【0020】本発明では、マスター装置1の内部に転送
用インターフェースバッファ1−3を設ける。そして、
マスターデバイス1−1とのデータのやり取りは、マス
ターポート8を介して行い、共有バス3とのデータのや
り取りは、共有バスポート9を介して行う。同様に、ス
レーブ装置2の内部にも転送用インターフェースバッフ
ァ2−3を設け、スレーブデバイス2−1とのデータの
やり取りはスレーブポート11を介して行い、共有バス
3とのデータのやり取りは、共有バスポート10を介し
て行う。
用インターフェースバッファ1−3を設ける。そして、
マスターデバイス1−1とのデータのやり取りは、マス
ターポート8を介して行い、共有バス3とのデータのや
り取りは、共有バスポート9を介して行う。同様に、ス
レーブ装置2の内部にも転送用インターフェースバッフ
ァ2−3を設け、スレーブデバイス2−1とのデータの
やり取りはスレーブポート11を介して行い、共有バス
3とのデータのやり取りは、共有バスポート10を介し
て行う。
【0021】マスターポート8のポート幅と、スレーブ
ポート11のポート幅とは等しくされ、図1の例では4
バイトである。しかし、共有バスポート9のポート幅
(これがマスター装置1のポート幅)と、共有バスポー
ト10のポート幅(これがスレーブ装置2のポート幅)
とは、相違している。図1の例では、マスター装置1の
ポート幅は4バイトであり、スレーブ装置2のポート幅
は2バイトである。なお、共有バス3のバス幅は、大な
る方のポート幅である4バイト以上あるものとし、各共
有バスポート9,10は、共有バス3のバス幅のいずれ
か一方の側(例、アドレス下位側)に詰めて接続する。
ポート11のポート幅とは等しくされ、図1の例では4
バイトである。しかし、共有バスポート9のポート幅
(これがマスター装置1のポート幅)と、共有バスポー
ト10のポート幅(これがスレーブ装置2のポート幅)
とは、相違している。図1の例では、マスター装置1の
ポート幅は4バイトであり、スレーブ装置2のポート幅
は2バイトである。なお、共有バス3のバス幅は、大な
る方のポート幅である4バイト以上あるものとし、各共
有バスポート9,10は、共有バス3のバス幅のいずれ
か一方の側(例、アドレス下位側)に詰めて接続する。
【0022】図2は、転送用インターフェースバッファ
1−3の構成を示す図である。符号は図1のものに対応
し、14−1〜14−16はレジスタセル、15は右方
データパス、16は上方データパス、17は左方データ
パス、18は下方データパスである。各レジスタセル
は、1バイトのデータを記録することが出来るものであ
り、各データパスは1バイトのデータを転送し得るもの
である。この例は、4×4の行列になるよう構成されて
おり、行列構成の行方向の端部はマスターポート8に接
続され、列方向の端部は共有バスポート9に接続されて
いる。
1−3の構成を示す図である。符号は図1のものに対応
し、14−1〜14−16はレジスタセル、15は右方
データパス、16は上方データパス、17は左方データ
パス、18は下方データパスである。各レジスタセル
は、1バイトのデータを記録することが出来るものであ
り、各データパスは1バイトのデータを転送し得るもの
である。この例は、4×4の行列になるよう構成されて
おり、行列構成の行方向の端部はマスターポート8に接
続され、列方向の端部は共有バスポート9に接続されて
いる。
【0023】この転送用インターフェースバッファ1−
3では、同時に4バイトのデータを、上下または左右に
シフトできる(転送用インターフェースバッファ2−3
の場合なら、2×4に構成される)。そのシフトは、ク
ロック信号でタイミングを取りつつ、図1の転送制御回
路1−2からの指令に従って行われる。
3では、同時に4バイトのデータを、上下または左右に
シフトできる(転送用インターフェースバッファ2−3
の場合なら、2×4に構成される)。そのシフトは、ク
ロック信号でタイミングを取りつつ、図1の転送制御回
路1−2からの指令に従って行われる。
【0024】例えば、或るクロックでマスターポート8
からレジスタセル14−1〜14−4に送られて来た4
バイトのデータは、次のクロックでレジスタセル14−
5〜14−8へシフトされ、以後クロックの度に1段づ
つ右へシフトされて行く。逆に、転送用インターフェー
スバッファ1−3からマスターポート8へデータを送り
出す場合には、シフト方向が右→左にされ、レジスタセ
ル14−1〜14−4からマスターポート8へ送られ
る。また、シフト方向を左→右にして、レジスタセル1
4−13〜14−16から、それぞれの右方データパス
15を通ってマスターポート8へ送ることも出来る。転
送用インターフェースバッファ1−3内での上下方向の
シフト、および共有バスポート9との間のデータの授受
も、同様にして行われる。
からレジスタセル14−1〜14−4に送られて来た4
バイトのデータは、次のクロックでレジスタセル14−
5〜14−8へシフトされ、以後クロックの度に1段づ
つ右へシフトされて行く。逆に、転送用インターフェー
スバッファ1−3からマスターポート8へデータを送り
出す場合には、シフト方向が右→左にされ、レジスタセ
ル14−1〜14−4からマスターポート8へ送られ
る。また、シフト方向を左→右にして、レジスタセル1
4−13〜14−16から、それぞれの右方データパス
15を通ってマスターポート8へ送ることも出来る。転
送用インターフェースバッファ1−3内での上下方向の
シフト、および共有バスポート9との間のデータの授受
も、同様にして行われる。
【0025】図3は、転送用インターフェースバッファ
の構成要素であるレジスタセルの構成を示す図である。
符号は図2のものに対応し、14はレジスタセル、19
〜22はイネーブル制御信号、24はフリップフロッ
プ、25はセレクタ、26,28,29,30は制御ゲ
ート、Sはセレクト信号である。イネーブル制御信号や
セレクト信号等は、図1の転送制御回路1−2(2−
2)から供給される。各制御ゲートは、イネーブル制御
信号がロー(L)の時にオンとなり、データを通過させ
る。セレクタ25は、複数の入力端子(0,1,2)の
データの中から1つだけを選択して、フリップフロップ
24へ送る。フリップフロップ24は、1バイトのデー
タを記録することができるフリップフロップである。
の構成要素であるレジスタセルの構成を示す図である。
符号は図2のものに対応し、14はレジスタセル、19
〜22はイネーブル制御信号、24はフリップフロッ
プ、25はセレクタ、26,28,29,30は制御ゲ
ート、Sはセレクト信号である。イネーブル制御信号や
セレクト信号等は、図1の転送制御回路1−2(2−
2)から供給される。各制御ゲートは、イネーブル制御
信号がロー(L)の時にオンとなり、データを通過させ
る。セレクタ25は、複数の入力端子(0,1,2)の
データの中から1つだけを選択して、フリップフロップ
24へ送る。フリップフロップ24は、1バイトのデー
タを記録することができるフリップフロップである。
【0026】図4は、レジスタセル14でのデータの流
れと制御信号との関係を示す図である。イ〜ニは、レジ
スタセル14で行い得るデータの流し方を種類分けした
ものである。例えば「イ」の場合は、データを上→下
(つまり上方データパス16→下方データパス18)へ
流そうとする場合である。この時には、セレクタ25で
は上方データパス16に接続されている「1」の入力端
子が選択され、上方データパス16からのデータは、ま
ずフリップフロップ24に送られる。そして、「イ」の
場合、イネーブル制御信号の中ではイネーブル制御信号
21のみがロー(L)であるので、制御ゲートの中では
制御ゲート29のみがオンとなる。その結果、フリップ
フロップ24のデータは、制御ゲート29を通って下方
データパス18へと送り出され、首尾よく上→下へのデ
ータの伝達が達成される。
れと制御信号との関係を示す図である。イ〜ニは、レジ
スタセル14で行い得るデータの流し方を種類分けした
ものである。例えば「イ」の場合は、データを上→下
(つまり上方データパス16→下方データパス18)へ
流そうとする場合である。この時には、セレクタ25で
は上方データパス16に接続されている「1」の入力端
子が選択され、上方データパス16からのデータは、ま
ずフリップフロップ24に送られる。そして、「イ」の
場合、イネーブル制御信号の中ではイネーブル制御信号
21のみがロー(L)であるので、制御ゲートの中では
制御ゲート29のみがオンとなる。その結果、フリップ
フロップ24のデータは、制御ゲート29を通って下方
データパス18へと送り出され、首尾よく上→下へのデ
ータの伝達が達成される。
【0027】次に図4の「ニ」の場合(右→左)につい
て説明すると、セレクタ25で「2」の入力端子が選択
されるから、それに接続されている右方データパス15
からのデータが、フリップフロップ24へ送られる。一
方、イネーブル制御信号19,21がローとされるか
ら、フリップフロップ24のデータは、制御ゲート29
→制御ゲート28→左方データパス17へと送られ、右
→左へのデータの伝達が達成される。
て説明すると、セレクタ25で「2」の入力端子が選択
されるから、それに接続されている右方データパス15
からのデータが、フリップフロップ24へ送られる。一
方、イネーブル制御信号19,21がローとされるか
ら、フリップフロップ24のデータは、制御ゲート29
→制御ゲート28→左方データパス17へと送られ、右
→左へのデータの伝達が達成される。
【0028】なお、制御ゲート28は場合によっては省
略して、ただの配線だけにしてもよい。これを省略した
時に心配されるのは、左方データパス17からデータが
入力される図4「ハ」の場合に、データが下方データパ
ス18を経て、下方のレジスタセル(図示せず)にも伝
達されてしまわないかということである。しかし、次に
述べるように、そのような心配はない。左方データパス
17からデータが入力されると、セレクタ25に伝えら
れる(「0」の入力端子へ)と共に、下方データパス1
8にも伝えられる。下方データパス18は下段のレジス
タセルにとって見れば上方データパス16であるから、
データは下段のレジスタセルのセレクタ25(図示せ
ず)の入力端子「1」に伝えられる。ところが、「ハ」
の場合、セレクタ25では一斉に「0」が選択されるか
ら、下段に伝えられたデータが選択されることはなく、
そこで消滅する。従って、上記のような心配はない。
略して、ただの配線だけにしてもよい。これを省略した
時に心配されるのは、左方データパス17からデータが
入力される図4「ハ」の場合に、データが下方データパ
ス18を経て、下方のレジスタセル(図示せず)にも伝
達されてしまわないかということである。しかし、次に
述べるように、そのような心配はない。左方データパス
17からデータが入力されると、セレクタ25に伝えら
れる(「0」の入力端子へ)と共に、下方データパス1
8にも伝えられる。下方データパス18は下段のレジス
タセルにとって見れば上方データパス16であるから、
データは下段のレジスタセルのセレクタ25(図示せ
ず)の入力端子「1」に伝えられる。ところが、「ハ」
の場合、セレクタ25では一斉に「0」が選択されるか
ら、下段に伝えられたデータが選択されることはなく、
そこで消滅する。従って、上記のような心配はない。
【0029】(転送の具体的動作例)次に、図1の如く
4バイトのポート幅を持つマスター装置1から、2バイ
トのポート幅を持つスレーブ装置2へデータを転送する
場合の具体的動作例を説明する。なお、各共有バスポー
トは、共有バス3のバス幅のアドレス下位側に詰めて接
続されているものとする。バーストサイクル数が4のバ
ースト転送を採用するとすれば、転送用インターフェー
スバッファ1−3は、レジスタセルを4(ポート幅)×
4(バーストサイクル数)の行列となるよう配置した構
成とされる。一方、転送用インターフェースバッファ2
−3は、レジスタセルを2(ポート幅)×4(バースト
サイクル数)のレジスタセルの行列となるよう配置した
構成とされる。今、マスターデバイス1−1の0からF
までの連続した番地にあるデータを、スレーブ装置2へ
転送しようとしている。
4バイトのポート幅を持つマスター装置1から、2バイ
トのポート幅を持つスレーブ装置2へデータを転送する
場合の具体的動作例を説明する。なお、各共有バスポー
トは、共有バス3のバス幅のアドレス下位側に詰めて接
続されているものとする。バーストサイクル数が4のバ
ースト転送を採用するとすれば、転送用インターフェー
スバッファ1−3は、レジスタセルを4(ポート幅)×
4(バーストサイクル数)の行列となるよう配置した構
成とされる。一方、転送用インターフェースバッファ2
−3は、レジスタセルを2(ポート幅)×4(バースト
サイクル数)のレジスタセルの行列となるよう配置した
構成とされる。今、マスターデバイス1−1の0からF
までの連続した番地にあるデータを、スレーブ装置2へ
転送しようとしている。
【0030】ポート幅の大なる装置からポート幅が小な
る装置へ転送する場合には、転送元の転送用インターフ
ェースバッファにある全部のデータは、1回のバースト
転送では転送先の転送用インターフェースバッファに入
りきらないから、何回かのバースト転送を行わねばなら
ない。図1の例では、転送元のポート幅が転送先のポー
ト幅の2倍であるので、転送用インターフェースバッフ
ァ1−3にある全部のデータを転送するには、2回のバ
ースト転送を行わねばならない。その転送過程を、図5
によって説明する。
る装置へ転送する場合には、転送元の転送用インターフ
ェースバッファにある全部のデータは、1回のバースト
転送では転送先の転送用インターフェースバッファに入
りきらないから、何回かのバースト転送を行わねばなら
ない。図1の例では、転送元のポート幅が転送先のポー
ト幅の2倍であるので、転送用インターフェースバッフ
ァ1−3にある全部のデータを転送するには、2回のバ
ースト転送を行わねばならない。その転送過程を、図5
によって説明する。
【0031】図5は、ポート幅が大なる装置(4バイ
ト)から、小なる装置(2バイト)への転送過程を示す
図である。図5(イ)は前半の過程を示し、図5(ハ)
は後半の過程を示す。図5(ロ)は、後半の過程を実行
するに際しての準備過程を示す。なお、図1中に記され
ているデータの状況は、前半の転送過程での状況である
ので、これも併せて参照しつつ、まず前半の転送過程を
説明する。
ト)から、小なる装置(2バイト)への転送過程を示す
図である。図5(イ)は前半の過程を示し、図5(ハ)
は後半の過程を示す。図5(ロ)は、後半の過程を実行
するに際しての準備過程を示す。なお、図1中に記され
ているデータの状況は、前半の転送過程での状況である
ので、これも併せて参照しつつ、まず前半の転送過程を
説明する。
【0032】〔前半の転送過程〕 マスターデバイス1−1→転送用インターフェースバ
ッファ1−3へ まず、マスターデバイス1−1から、0〜3番地の連続
する4バイトのデータが、転送用インターフェースバッ
ファ1−3へ送られる。転送用インターフェースバッフ
ァ1−3は、次のデータを受け取る毎に、前に受け取っ
た4バイトのデータを右方へシフトして行く(図4の
「ハ」の動作)。やがて、0番地からF番地までのデー
タが、図1(または図5(イ))の転送用インターフェ
ースバッファ1−3に示すように格納される。マスター
デバイス1−1と転送用インターフェースバッファ1−
3との間でのデータやり取りは、共有バス3とは関係な
く行うことが出来るから、この場合の動作クロックは、
共有バス3の動作クロックと同期したものでなくともよ
い(周波数が異なってもよい)。後で述べるの場合
も、事情は同じであるので同様である。
ッファ1−3へ まず、マスターデバイス1−1から、0〜3番地の連続
する4バイトのデータが、転送用インターフェースバッ
ファ1−3へ送られる。転送用インターフェースバッフ
ァ1−3は、次のデータを受け取る毎に、前に受け取っ
た4バイトのデータを右方へシフトして行く(図4の
「ハ」の動作)。やがて、0番地からF番地までのデー
タが、図1(または図5(イ))の転送用インターフェ
ースバッファ1−3に示すように格納される。マスター
デバイス1−1と転送用インターフェースバッファ1−
3との間でのデータやり取りは、共有バス3とは関係な
く行うことが出来るから、この場合の動作クロックは、
共有バス3の動作クロックと同期したものでなくともよ
い(周波数が異なってもよい)。後で述べるの場合
も、事情は同じであるので同様である。
【0033】転送用インターフェースバッファ1−3
→共有バス3へ 次にバースト転送により共有バス3へ送出するが、その
送出の仕方は、マスターデバイス1−1よりデータを受
け取った際のシフト方向(左右方向)に対して、直角の
方向(上下方向)にシフトさせ、共有バスポート9から
4バイトを1つの転送ブロックとして送出する。その結
果、最初に送出されるデータの転送ブロックH5 は、0
番地,4番地,8番地,C番地のデータであり、連続す
る番地のデータとはなっていない。その理由は、左右方
向にシフトして受け取ったものを、上下方向にシフトし
て送出するからである。バーストサイクル数は4サイク
ルとしているから、以後、それに続いて3回、図1に示
すような内容のデータの転送ブロックH6 〜H8 が送出
され、矢印12の方向に転送される。転送用インターフ
ェースバッファ1−3と共有バス3との間でのデータの
やり取りは、共有バス3の動作クロックと同期して行わ
れる。次に述べるの場合も、事情は同じであるので同
様である。
→共有バス3へ 次にバースト転送により共有バス3へ送出するが、その
送出の仕方は、マスターデバイス1−1よりデータを受
け取った際のシフト方向(左右方向)に対して、直角の
方向(上下方向)にシフトさせ、共有バスポート9から
4バイトを1つの転送ブロックとして送出する。その結
果、最初に送出されるデータの転送ブロックH5 は、0
番地,4番地,8番地,C番地のデータであり、連続す
る番地のデータとはなっていない。その理由は、左右方
向にシフトして受け取ったものを、上下方向にシフトし
て送出するからである。バーストサイクル数は4サイク
ルとしているから、以後、それに続いて3回、図1に示
すような内容のデータの転送ブロックH6 〜H8 が送出
され、矢印12の方向に転送される。転送用インターフ
ェースバッファ1−3と共有バス3との間でのデータの
やり取りは、共有バス3の動作クロックと同期して行わ
れる。次に述べるの場合も、事情は同じであるので同
様である。
【0034】共有バス3→転送用インターフェースバ
ッファ2−3へ 共有バス3から図1の矢印13のように転送されて来た
転送ブロックH5 〜H8 の内、まず転送ブロックH
5 が、共有バスポート10を経て転送用インターフェー
スバッファ2−3に取り込まれる。しかし、共有バスポ
ート10のポート幅は2バイトしかなく、しかも共有バ
ス3のバス幅のアドレス下位側に詰めて接続されている
としているから、0番地,4番地のデータのみが取り込
まれる。次の転送ブロックH6 が取り込まれる時には、
先程取り込まれた0番地,4番地のデータは上方へシフ
トされる。以後も同様である。その結果、4サイクルか
ら成る最初のバースト転送を終えた段階では、図1(ま
たは図5(イ))の転送用インターフェースバッファ2
−3に示すような各番地のデータが取り込まれている。
ッファ2−3へ 共有バス3から図1の矢印13のように転送されて来た
転送ブロックH5 〜H8 の内、まず転送ブロックH
5 が、共有バスポート10を経て転送用インターフェー
スバッファ2−3に取り込まれる。しかし、共有バスポ
ート10のポート幅は2バイトしかなく、しかも共有バ
ス3のバス幅のアドレス下位側に詰めて接続されている
としているから、0番地,4番地のデータのみが取り込
まれる。次の転送ブロックH6 が取り込まれる時には、
先程取り込まれた0番地,4番地のデータは上方へシフ
トされる。以後も同様である。その結果、4サイクルか
ら成る最初のバースト転送を終えた段階では、図1(ま
たは図5(イ))の転送用インターフェースバッファ2
−3に示すような各番地のデータが取り込まれている。
【0035】転送用インターフェースバッファ2−3
→スレーブデバイス2−1へ 転送用インターフェースバッファ2−3では、共有バス
3からデータを受け取る度にシフトした方向に対して、
直角の方向にデータをシフトして、スレーブポート11
より送出する。バーストサイクル数が4であったから4
バイトが送出されるが、これは、マスターデバイス1−
1にあった当初の連続する4バイト(例、0番地〜3番
地)となる。これらが、スレーブデバイス2−1内の指
定された番地へ格納される。ついで、転送用インターフ
ェースバッファ2−3内の4番地〜7番地のデータが右
方(スレーブポート11側)へシフトされ、同様にして
スレーブデバイス2−1に格納される。かくして、転送
しようとしている全データの半分である0番地〜7番地
のデータの転送が完了する。
→スレーブデバイス2−1へ 転送用インターフェースバッファ2−3では、共有バス
3からデータを受け取る度にシフトした方向に対して、
直角の方向にデータをシフトして、スレーブポート11
より送出する。バーストサイクル数が4であったから4
バイトが送出されるが、これは、マスターデバイス1−
1にあった当初の連続する4バイト(例、0番地〜3番
地)となる。これらが、スレーブデバイス2−1内の指
定された番地へ格納される。ついで、転送用インターフ
ェースバッファ2−3内の4番地〜7番地のデータが右
方(スレーブポート11側)へシフトされ、同様にして
スレーブデバイス2−1に格納される。かくして、転送
しようとしている全データの半分である0番地〜7番地
のデータの転送が完了する。
【0036】〔後半の転送のための準備過程〕前記項
での転送を終えた段階で、転送先であるスレーブ装置2
の転送制御回路2−2より、転送元であるマスター装置
1の転送制御回路1−2へ、自らのポート幅(2バイ
ト)を示すアクノリッジ信号を送る。これを受けた転送
元は、今回送り込めなかった8番地〜F番地のデータを
転送するため、図5(ロ)に示すように、転送用インタ
ーフェースバッファ1−3の中で、共有バスポート9の
アドレス下位側に向かって2クロックだけシフトされ
る。
での転送を終えた段階で、転送先であるスレーブ装置2
の転送制御回路2−2より、転送元であるマスター装置
1の転送制御回路1−2へ、自らのポート幅(2バイ
ト)を示すアクノリッジ信号を送る。これを受けた転送
元は、今回送り込めなかった8番地〜F番地のデータを
転送するため、図5(ロ)に示すように、転送用インタ
ーフェースバッファ1−3の中で、共有バスポート9の
アドレス下位側に向かって2クロックだけシフトされ
る。
【0037】〔後半の転送過程〕そのようにしておい
て、図5(ハ)に示すように、前半の転送時と同様に
〜の過程を経て、第2回目のバースト転送を行う。こ
のようにして、スレーブデバイス2−1には、転送しよ
うとしていたマスター装置1の全データが転送される。
て、図5(ハ)に示すように、前半の転送時と同様に
〜の過程を経て、第2回目のバースト転送を行う。こ
のようにして、スレーブデバイス2−1には、転送しよ
うとしていたマスター装置1の全データが転送される。
【0038】以上説明したように、本発明では、バス幅
の内、小さいポート幅(上例では2バイト)に対応する
分を実質的に使って、それより大なるポート幅を持つ装
置より、データをバースト転送し得る。図7は、ポート
幅の小なる装置への最初のバースト転送で、転送先のデ
バイス(例、スレーブデバイス)に送られた状態の一般
表現を示している。
の内、小さいポート幅(上例では2バイト)に対応する
分を実質的に使って、それより大なるポート幅を持つ装
置より、データをバースト転送し得る。図7は、ポート
幅の小なる装置への最初のバースト転送で、転送先のデ
バイス(例、スレーブデバイス)に送られた状態の一般
表現を示している。
【0039】図7において、aは転送開始アドレス、N
はバーストサイクル数、Mは転送元のポート幅、M1 は
転送先のポート幅、nは任意の回数目のバーストサイク
ル(1≦n≦N)、m1 はポート幅M1 のアドレス下位
側から数えた任意番目のバイト(1≦m1 ≦M1 )であ
る。バースト転送の各バーストサイクルで送られて来る
M1 バイトのデータは、次の通りである。 1回目→a,a+N,…,a+(m1 −1)N,…,a
+(M1 −1)N 2回目→a+1,a+N+1,…,a+(m1 −1)N
+1,…,a+(M1 −1)N+1 n回目→a+(n−1),a+N+(n−1),…,a
+(m1 −1)N+(n−1),…,a+(M1 −1)
N+(n−1) N回目→a+(N−1),a+N+(N−1),…,a
+(m1 −1)N+(N−1),…,a+(M1 −1)
N+(N−1) 最初のバースト転送が終わった段階では、転送先のポー
ト幅がM1 バイトしかないので、ポート幅Mとポート幅
M1 との差のデータ(図7の斜線部に格納されるべきデ
ータ)は、最初のバースト転送では送られて来ない。
はバーストサイクル数、Mは転送元のポート幅、M1 は
転送先のポート幅、nは任意の回数目のバーストサイク
ル(1≦n≦N)、m1 はポート幅M1 のアドレス下位
側から数えた任意番目のバイト(1≦m1 ≦M1 )であ
る。バースト転送の各バーストサイクルで送られて来る
M1 バイトのデータは、次の通りである。 1回目→a,a+N,…,a+(m1 −1)N,…,a
+(M1 −1)N 2回目→a+1,a+N+1,…,a+(m1 −1)N
+1,…,a+(M1 −1)N+1 n回目→a+(n−1),a+N+(n−1),…,a
+(m1 −1)N+(n−1),…,a+(M1 −1)
N+(n−1) N回目→a+(N−1),a+N+(N−1),…,a
+(m1 −1)N+(N−1),…,a+(M1 −1)
N+(N−1) 最初のバースト転送が終わった段階では、転送先のポー
ト幅がM1 バイトしかないので、ポート幅Mとポート幅
M1 との差のデータ(図7の斜線部に格納されるべきデ
ータ)は、最初のバースト転送では送られて来ない。
【0040】図6は、ポート幅が小なる装置(2バイ
ト)から大なる装置(4バイト)への転送過程を示す図
である。但し、共有バス3は、大なるポート幅(4バイ
ト)以上のバス幅を有しているものとする。各ポート
は、共有バス3のバス幅の一方の側(例、アドレス下位
側)に詰めて接続される。また、バースト転送のバース
トサイクルは、4であるとする。図6の例は、図1の例
で、スレーブデバイス2−1のデータを、マスターデバ
イス1−1にバースト転送する場合に相当している。図
6(イ)は前半の過程を示し、図6(ハ)は後半の過程
を示す。図6(ロ)は、後半の過程を実行するに際して
の準備過程を示す。
ト)から大なる装置(4バイト)への転送過程を示す図
である。但し、共有バス3は、大なるポート幅(4バイ
ト)以上のバス幅を有しているものとする。各ポート
は、共有バス3のバス幅の一方の側(例、アドレス下位
側)に詰めて接続される。また、バースト転送のバース
トサイクルは、4であるとする。図6の例は、図1の例
で、スレーブデバイス2−1のデータを、マスターデバ
イス1−1にバースト転送する場合に相当している。図
6(イ)は前半の過程を示し、図6(ハ)は後半の過程
を示す。図6(ロ)は、後半の過程を実行するに際して
の準備過程を示す。
【0041】図6(イ)では、スレーブデバイス2−1
から、連続する番地のデータがバーストサイクル数4に
相当する4バイトだけ(0番地〜3番地のデータ)、転
送用インターフェースバッファ2−3にまず送られる。
次に、転送用インターフェースバッファ2−3に送られ
たデータが左方へシフトされると同時に、その跡へ次の
連続する4つの番地(4番地〜7番地)のデータが送ら
れる。これでポート幅2バイトの転送用インターフェー
スバッファ2−3は満杯になるので、転送用インターフ
ェースバッファ1−3へ向けてバースト転送を行う。そ
の場合、スレーブデバイス2−1からデータを受け取る
時に行ったシフト方向に対して、直角の方向にシフトし
つつ送出する。H10は、そのようにして送出される転送
ブロックの例である。転送先である転送用インターフェ
ースバッファ1−3では、ポート幅のアドレス下位側の
2バイト分のところで受け取る。そして、転送ブロック
を受け取る毎に、上方へシフトして行く。
から、連続する番地のデータがバーストサイクル数4に
相当する4バイトだけ(0番地〜3番地のデータ)、転
送用インターフェースバッファ2−3にまず送られる。
次に、転送用インターフェースバッファ2−3に送られ
たデータが左方へシフトされると同時に、その跡へ次の
連続する4つの番地(4番地〜7番地)のデータが送ら
れる。これでポート幅2バイトの転送用インターフェー
スバッファ2−3は満杯になるので、転送用インターフ
ェースバッファ1−3へ向けてバースト転送を行う。そ
の場合、スレーブデバイス2−1からデータを受け取る
時に行ったシフト方向に対して、直角の方向にシフトし
つつ送出する。H10は、そのようにして送出される転送
ブロックの例である。転送先である転送用インターフェ
ースバッファ1−3では、ポート幅のアドレス下位側の
2バイト分のところで受け取る。そして、転送ブロック
を受け取る毎に、上方へシフトして行く。
【0042】図6(ロ)は、最初のバースト転送で受け
取ったデータを、受け取る際に行ったシフトの方向に対
して直角の方向に2バイト分シフトする過程を示す。こ
れにより、ポート幅2バイトの転送元からのバースト転
送を受け入れる準備が整ったことになる。このような状
態で、残っているデータ(8番地〜F番地のデータ)
を、同様の手順によってバースト転送する後半の過程が
行われる。図6(ハ)は、それを示している。かくし
て、スレーブデバイス2−1の全データは、転送用イン
ターフェースバッファ1−3に転送されたことなるが、
転送用インターフェースバッファ1−3では、データを
受け取る時に行なったシフトの方向に対して直角の方向
(太い矢印の方向)にシフトしながら、マスターデバイ
ス1−1(図1参照)の指定された位置に格納する。
取ったデータを、受け取る際に行ったシフトの方向に対
して直角の方向に2バイト分シフトする過程を示す。こ
れにより、ポート幅2バイトの転送元からのバースト転
送を受け入れる準備が整ったことになる。このような状
態で、残っているデータ(8番地〜F番地のデータ)
を、同様の手順によってバースト転送する後半の過程が
行われる。図6(ハ)は、それを示している。かくし
て、スレーブデバイス2−1の全データは、転送用イン
ターフェースバッファ1−3に転送されたことなるが、
転送用インターフェースバッファ1−3では、データを
受け取る時に行なったシフトの方向に対して直角の方向
(太い矢印の方向)にシフトしながら、マスターデバイ
ス1−1(図1参照)の指定された位置に格納する。
【0043】以上は、バス幅の一部を使い、ポート幅の
異なる装置間でバースト転送を行う場合についてである
が、ポート幅が同じ装置間で、しかもバス幅全体を使っ
て行うと、最も高効率でバースト転送が行われる。図8
は、ポート幅が等しい装置へのバースト転送の1例を示
す図であり、ポート幅4バイトの転送用インターフェー
スバッファ間で、4サイクルのバースト転送を行った状
態を示している。
異なる装置間でバースト転送を行う場合についてである
が、ポート幅が同じ装置間で、しかもバス幅全体を使っ
て行うと、最も高効率でバースト転送が行われる。図8
は、ポート幅が等しい装置へのバースト転送の1例を示
す図であり、ポート幅4バイトの転送用インターフェー
スバッファ間で、4サイクルのバースト転送を行った状
態を示している。
【0044】図9は、ポート幅が等しい装置へのバース
ト転送で、転送先のデバイスに送られた状態の一般表現
の図である。符号は図7のものに対応している。N回の
バーストサイクルの内、 1回目→a,a+N,…,a+(m−1)N,…,a+
(M−1)N 2回目→a+1,a+N+1,…,a+(m−1)N+
1,…,a+(M−1)×N+1 n回目→a+(n−1),a+N+(n−1),…,a
+(m−1)N+(n−1),…,a+(M−1)N+
(n−1) N回目→a+(N−1),a+N+(N−1),…,a
+(m−1)N+(N−1),…,a+(M−1)N+
(N−1) というような各番地のデータが転送されて来る。但し、
1≦n≦N,1≦m≦Mである。
ト転送で、転送先のデバイスに送られた状態の一般表現
の図である。符号は図7のものに対応している。N回の
バーストサイクルの内、 1回目→a,a+N,…,a+(m−1)N,…,a+
(M−1)N 2回目→a+1,a+N+1,…,a+(m−1)N+
1,…,a+(M−1)×N+1 n回目→a+(n−1),a+N+(n−1),…,a
+(m−1)N+(n−1),…,a+(M−1)N+
(n−1) N回目→a+(N−1),a+N+(N−1),…,a
+(m−1)N+(N−1),…,a+(M−1)N+
(N−1) というような各番地のデータが転送されて来る。但し、
1≦n≦N,1≦m≦Mである。
【0045】図10は、ポート幅がバーストサイクル数
と一致しない場合の転送過程を示す図である。符号は図
1のものに対応し、H12〜H15は転送ブロックである。
マスターデバイス1−1のポート幅は2バイトなのに、
バースト転送はバーストサイクル数4で行われていると
いうように、ポート幅とバーストサイクル数とが一致し
なくとも、次に述べるように、本発明ではバースト転送
をすることが出来る。ここでは、転送用インターフェー
スバッファ1−3として、4×4の行列に構成されたも
のを用いている。
と一致しない場合の転送過程を示す図である。符号は図
1のものに対応し、H12〜H15は転送ブロックである。
マスターデバイス1−1のポート幅は2バイトなのに、
バースト転送はバーストサイクル数4で行われていると
いうように、ポート幅とバーストサイクル数とが一致し
なくとも、次に述べるように、本発明ではバースト転送
をすることが出来る。ここでは、転送用インターフェー
スバッファ1−3として、4×4の行列に構成されたも
のを用いている。
【0046】図10(イ)で、まずマスターデバイス1
−1より、2バイトのデータを4回に渡って転送用イン
ターフェースバッファ1−3に送出する。ドットが付さ
れた部分がそれを示す。次に図10(ロ)に示すよう
に、転送用インターフェースバッファ1−3に転送され
て来たデータを、下方へ(データを受け取った時に行っ
たシフト方向に対して直角の方向へ)2バイトだけシフ
トする。このシフトにより空いた領域に、再びマスター
デバイス1−1よりデータを送り込む(図10
(ハ))。これで、バーストサイクル数である4サイク
ル分のデータが揃ったから、図10(ニ)のように、そ
れらを転送ブロックH12〜H15に分けてバースト転送す
る。転送ブロックは、転送用インターフェースバッファ
1−3がマスターデバイス1−1からデータを受け取っ
た時に行ったシフト方向に対して、直角の方向へシフト
することによって得られる。
−1より、2バイトのデータを4回に渡って転送用イン
ターフェースバッファ1−3に送出する。ドットが付さ
れた部分がそれを示す。次に図10(ロ)に示すよう
に、転送用インターフェースバッファ1−3に転送され
て来たデータを、下方へ(データを受け取った時に行っ
たシフト方向に対して直角の方向へ)2バイトだけシフ
トする。このシフトにより空いた領域に、再びマスター
デバイス1−1よりデータを送り込む(図10
(ハ))。これで、バーストサイクル数である4サイク
ル分のデータが揃ったから、図10(ニ)のように、そ
れらを転送ブロックH12〜H15に分けてバースト転送す
る。転送ブロックは、転送用インターフェースバッファ
1−3がマスターデバイス1−1からデータを受け取っ
た時に行ったシフト方向に対して、直角の方向へシフト
することによって得られる。
【0047】
【発明の効果】以上述べた如く、本発明のデータ転送方
式によれば、次のような効果を奏する。 共有バスを介して接続されているマスター装置および
スレーブ装置間でバースト転送をするに際し、共有バス
のバス幅以下であれば、任意幅のポート幅を有する装置
間や、あるいは互いに異なるポート幅を有する装置間で
あっても、バースト転送をすることが出来る。 共有バスのバス幅と異なるポート幅であってもバース
ト転送が可能となるので、共有バスと接続するためのバ
スインターフェース回路をASIC(Application Spec
ific IC)等で設計する場合、バス幅に対応したピン数に
しなければならないといった制約を受けることがなくな
り、それより少ないピン数にすることが出来る。 転送用インターフェースバッファでは、バースト転送
で送出するデータ幅を、データを送出するために行うシ
フトの方向(列方向)に対して直角の方向(行方向)へ
のシフトにより、任意のバイト幅にすることが出来るの
で、ポート幅の異なる装置間でバースト転送をする際、
転送するデータ幅を容易に小さい方のポート幅に合わせ
ることが出来る。即ち、バスサイジング機能を果たして
いる。そのため、いわゆるバスサイジング機構を、特別
に設ける必要がない。
式によれば、次のような効果を奏する。 共有バスを介して接続されているマスター装置および
スレーブ装置間でバースト転送をするに際し、共有バス
のバス幅以下であれば、任意幅のポート幅を有する装置
間や、あるいは互いに異なるポート幅を有する装置間で
あっても、バースト転送をすることが出来る。 共有バスのバス幅と異なるポート幅であってもバース
ト転送が可能となるので、共有バスと接続するためのバ
スインターフェース回路をASIC(Application Spec
ific IC)等で設計する場合、バス幅に対応したピン数に
しなければならないといった制約を受けることがなくな
り、それより少ないピン数にすることが出来る。 転送用インターフェースバッファでは、バースト転送
で送出するデータ幅を、データを送出するために行うシ
フトの方向(列方向)に対して直角の方向(行方向)へ
のシフトにより、任意のバイト幅にすることが出来るの
で、ポート幅の異なる装置間でバースト転送をする際、
転送するデータ幅を容易に小さい方のポート幅に合わせ
ることが出来る。即ち、バスサイジング機能を果たして
いる。そのため、いわゆるバスサイジング機構を、特別
に設ける必要がない。
【図1】 本発明のデータ転送方式の実施例を示す図
【図2】 転送用インターフェースバッファ1−3の構
成を示す図
成を示す図
【図3】 転送用インターフェースバッファの構成要素
であるレジスタセルの構成を示す図
であるレジスタセルの構成を示す図
【図4】 レジスタセルでのデータの流れと制御信号と
の関係を示す図
の関係を示す図
【図5】 ポート幅が大なる装置(4バイト)から小な
る装置(2バイト)への転送過程を示す図
る装置(2バイト)への転送過程を示す図
【図6】 ポート幅が小なる装置(2バイト)から大な
る装置(4バイト)への転送過程を示す図
る装置(4バイト)への転送過程を示す図
【図7】 ポート幅が小なる装置への最初のバースト転
送で、転送先のデバイスに送られた状態の一般表現の図
送で、転送先のデバイスに送られた状態の一般表現の図
【図8】 ポート幅が等しい装置へのバースト転送の1
例を示す図
例を示す図
【図9】 ポート幅が等しい装置へのバースト転送で、
転送先のデバイスに送られた状態の一般表現の図
転送先のデバイスに送られた状態の一般表現の図
【図10】 ポート幅がバーストサイクル数と一致しな
い場合の転送過程を示す図
い場合の転送過程を示す図
【図11】 共有バス方式の構成図
【図12】 シングル転送およびバースト転送を説明す
る図
る図
【図13】共有バスを介して行う従来のデータ転送方式
を示す図
を示す図
1…マスター装置、1−1…マスターデバイス、1−2
…転送制御回路、1−3…転送用インターフェースバッ
ファ、2…スレーブ装置、2−1…スレーブデバイス、
2−2…転送制御回路、2−3…転送用インターフェー
スバッファ、3…共有バス、4…矢印、5…アドレス指
定時間、6…データ転送時間、7…アービトレーション
時間、8…マスターポート、9,10…共有バスポー
ト、11…スレーブポート、12,13…矢印、14…
レジスタセル、15…右方データパス、16…上方デー
タパス、17…左方データパス、18…下方データパ
ス、19〜22…イネーブル制御信号、24…フリップ
フロップ、25…セレクタ、26〜30…制御ゲート、
H1 〜H15…転送ブロック
…転送制御回路、1−3…転送用インターフェースバッ
ファ、2…スレーブ装置、2−1…スレーブデバイス、
2−2…転送制御回路、2−3…転送用インターフェー
スバッファ、3…共有バス、4…矢印、5…アドレス指
定時間、6…データ転送時間、7…アービトレーション
時間、8…マスターポート、9,10…共有バスポー
ト、11…スレーブポート、12,13…矢印、14…
レジスタセル、15…右方データパス、16…上方デー
タパス、17…左方データパス、18…下方データパ
ス、19〜22…イネーブル制御信号、24…フリップ
フロップ、25…セレクタ、26〜30…制御ゲート、
H1 〜H15…転送ブロック
Claims (2)
- 【請求項1】 共有バスを介して接続されたマスター装
置とスレーブ装置との間で、データ幅MバイトでN回の
バーストサイクルにより、アドレスa番地からの連続し
たM×Nバイトのデータをバースト転送するデータ転送
方式において、n回目のバーストサイクルでは、a+
(n−1),a+N+(n−1),…,a+(m−1)
N+(n−1),…,a+(M−1)N+(n−1)の
各番地のデータを転送(但し1≦m≦Mの整数)するこ
とを特徴とするデータ転送方式。 - 【請求項2】 共有バスを介して接続されたマスター装
置とスレーブ装置との間でバースト転送によりデータを
転送するデータ転送方式において、レジスタセルが行列
形式に構成され、該レジスタセルに書き込まれたデータ
は行方向および列方向へシフト自在にされると共に、行
方向の端部はマスターデバイスとの間でデータの授受を
行うマスターポートに接続され、列方向の端部は共有バ
スポートに接続された第1の転送用インターフェースバ
ッファを有するマスター装置と、レジスタセルが行列に
構成され、該レジスタセルに書き込まれたデータは行方
向および列方向へシフト自在にされると共に、行方向の
端部はスレーブデバイスとの間でデータの授受を行うス
レーブポートに接続され、列方向の端部は共有バスポー
トに接続された第2の転送用インターフェースバッファ
を有するスレーブ装置とを具え、第1の転送用インター
フェースバッファが前記マスターデバイスとの間でデー
タを授受する際、または第2の転送用インターフェース
バッファが前記スレーブデバイスとの間でデータを授受
する際には、行方向のシフトを行いつつ授受し、前記共
有バスポートを介して共有バスとの間でデータを授受す
る際には、バーストサイクル毎に列方向のシフトを行い
つつ授受することを特徴とするデータ転送方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP35948391A JP3336623B2 (ja) | 1991-12-27 | 1991-12-27 | データ転送方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP35948391A JP3336623B2 (ja) | 1991-12-27 | 1991-12-27 | データ転送方式 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH05181785A true JPH05181785A (ja) | 1993-07-23 |
JP3336623B2 JP3336623B2 (ja) | 2002-10-21 |
Family
ID=18464736
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP35948391A Expired - Fee Related JP3336623B2 (ja) | 1991-12-27 | 1991-12-27 | データ転送方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3336623B2 (ja) |
-
1991
- 1991-12-27 JP JP35948391A patent/JP3336623B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP3336623B2 (ja) | 2002-10-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3241045B2 (ja) | マルチポート共有メモリインタフェースおよび関連の方法 | |
KR100188990B1 (ko) | 데이타 중계 장치 및 이것을 이용한 비디오 게임 장치 | |
EP0908827B1 (en) | Memory interface device and memory address generation device | |
CN1121249A (zh) | 输出串行数据的视频ram和方法 | |
JPH0792779B2 (ja) | データ転送制御装置 | |
US5349561A (en) | Multiport memory and method of operation thereof | |
JP3336623B2 (ja) | データ転送方式 | |
KR100438736B1 (ko) | 어드레스 라인을 이용해 데이터 쓰기를 수행하는 메모리제어 장치 | |
US7817651B2 (en) | Method and apparatus for controlling storage of data | |
JPH01162294A (ja) | ダイナミックram | |
JP3544146B2 (ja) | Dma制御付fifo、並びに、それを用いたdma転送システム | |
JPH0750950B2 (ja) | 時分割スイッチ | |
JP2684368B2 (ja) | 半導体記憶装置 | |
CA1293329C (en) | Computer with interface for fast and slow memory cycles | |
KR100238179B1 (ko) | 범용성을 갖는 데이터경로 제어장치 | |
KR950001074B1 (ko) | 시리얼 입출력 메모리 장치 | |
JP2645462B2 (ja) | データ処理システム | |
JPH02211571A (ja) | 情報処理装置 | |
JPS63245756A (ja) | デ−タ転送装置 | |
JPS6118988A (ja) | 表示同期化回路 | |
JPH02252186A (ja) | 先入れ先出しメモリ | |
JPH07152683A (ja) | バッファメモリ回路 | |
JPH05181812A (ja) | Mpu間通信回路 | |
JPH10289202A (ja) | マイコン回路 | |
JPH04253440A (ja) | シフタ装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20070809 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080809 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |