(58)【調査した分野】(Int.Cl.,DB名)
前記各スレーブデバイスは、前記マスタデバイス側から受信した信号をパリティチェックし、パリティエラーが発生した場合に前記マスタデバイス側にエラー信号を送信する、ことを特徴とする請求項1に記載のパラレル通信機器。
前記各スレーブデバイスは、前記マスタデバイス側から受信した信号をパリティチェックし、パリティエラーが発生した場合に前記マスタデバイス側にエラー信号を送信する、ことを特徴とする請求項3に記載のパラレル通信方法。
【発明の概要】
【発明が解決しようとする課題】
【0005】
これらのパラレル通信方式は、確実なデータ伝送・転送を保証する規格であるが、例えば、SCSI規格での通信距離が最大25mで、しかも、規格化された高価なケーブルを要する、という欠点を有する。また、コマンド体系が複雑で汎用性・万能性が低く、高速通信や複雑な制御を必要としない機器には不向きであった。
【0006】
そこで本発明は、簡易な構成で確実なデータ伝送を可能にするパラレル通信機器およびパラレル通信方法を提供することを目的とする。
【課題を解決するための手段】
【0007】
上記課題を解決するために、請求項1に記載の発明は、マスタデバイスと複数のスレーブデバイスとの間で信号を伝送するパラレル通信機器であって、
アクセスする送信メモリまたは受信メモリのアドレスと、
リードかライトかを識別するモード情報と、送受信先のスレーブデバイスを識別するブロック情報と、を含む送受信情報を設定し、
タイミング信号に基づいてデータ回線を制御するバス信号制御手段を備え、
前記マスタデバイス側に、クロックを2つに分配して、一方のクロックを遅延させて、それぞれの立下りおよび立上がりエッジをタイミング信号として該2つのタイミング信号を周期的に生成して前記各スレーブデバイスに送信するとともに、
マスタデバイスから各スレーブデバイスへの送信の場合は、
マスタデバイスにおいて所定のタイミングで、データアドレスと、リードモードに設定されモード情報と、送受信先のスレーブデバイスを識別するブロック情報を設定し、
第1のタイミング信号の立下りタイミングで、マスタデバイスにおいて、データのデータ回線を送信方向に設定し、
これと同時に、各スレーブデバイスにおいて、アドレスとモード情報とブロック情報を確定、受信して、
第2のタイミング信号の立下りタイミングにおいて、ブロック情報に該当するスレーブデバイスが、データを確定、受信して、
第1のタイミング信号の立上がりタイミングにおいて、当該スレーブデバイスが、送信メモリのアドレスからデータ回線を介してデータを読み取って、自己のメモリに書き込み記憶して、
第2のタイミング信号の立上がりタイミングで、送信メモリに対する各スレーブデバイスからの読み取りがないタイミングにおいて、データ回線を遮断するとともに、
各スレーブデバイスからマスタデバイスへの送信の場合は、
マスタデバイスにおいて所定のタイミングで、データアドレスと、ライトモードに設定されモード情報と、送受信先のスレーブデバイスを識別するブロック情報を設定し、
第1のタイミング信号の立下りタイミングで、マスタデバイスにおいて、データのデータ回線を受信方向に設定し、
これと同時に、各スレーブデバイスにおいて、アドレスとモード情報とブロック情報を確定、受信して、
第2のタイミング信号の立下りタイミングにおいて、ブロック情報に該当するスレーブデバイスが、自己のメモリに記憶されているデータを、データ回線を介して受信メモリのアドレスに書き込み、
これと同時に、第2のタイミング信号の立下りタイミングでマスタデバイスにおいて、受信したデータを確定して、
第2のタイミング信号の立上がりタイミングで、つまり、受信メモリに対する各スレーブデバイスからの書き込みがないタイミングにおいて、データ回線を遮断する、
ことを特徴とする。
【0008】
この発明によれば、マスタデバイス側のバス信号制御手段によって、タイミング信号が周期的に生成されて各スレーブデバイスに送信されるとともに、送受信情報が設定され、各スレーブデバイスによって、タイミング信号に基づいて送受信情報が受信される。そして、送受信情報中のブロック情報に該当するスレーブデバイスが、タイミング信号に基づいて、モード情報がリードの場合には、送信メモリの所定アドレスからデータを読み取り、モード情報がライトの場合には、受信メモリの所定アドレスに先に読み取ったデータを書き込む。
【0009】
請求項2に記載の発明は、請求項1に記載のパラレル通信機器において、前記各スレーブデバイスは、前記マスタデバイス側から受信した信号をパリティチェックし、パリティエラーが発生した場合に前記マスタデバイス側にエラー信号を送信する、ことを特徴とする。
【0010】
請求項3に記載の発明は、
マスタデバイスと複数のスレーブデバイスとの間で信号を伝送するパラレル通信方法であって、
前記マスタデバイス側に、クロックを2つに分配して、一方のクロックを遅延させて、それぞれの立下りおよび立上がりエッジをタイミング信号として該2つのタイミング信号を周期的に生成して前記各スレーブデバイスに送信するとともに、
マスタデバイスから各スレーブデバイスへの送信の場合は、
マスタデバイスにおいて所定のタイミングで、データアドレスと、リードモードに設定されモード情報と、送受信先のスレーブデバイスを識別するブロック情報を設定し(ステップS1)、
第1のタイミング信号の立下りタイミングで、マスタデバイスにおいて、データのデータ回線を送信方向に設定し(ステップS2)、
これと同時に、各スレーブデバイスにおいて、アドレスとモード情報とブロック情報を確定、受信して(ステップS3)、
第2のタイミング信号の立下りタイミングにおいて、ブロック情報に該当するスレーブデバイスが、データを確定、受信して(ステップS4)、
第1のタイミング信号の立上がりタイミングにおいて、当該スレーブデバイスが、送信メモリのアドレスからデータ回線を介してデータを読み取って、自己のメモリに書き込み記憶して(ステップS5)、
第2のタイミング信号の立上がりタイミングで、送信メモリに対する各スレーブデバイスからの読み取りがないタイミングにおいて、データ回線を遮断するとともに(ステップS6)、
各スレーブデバイスからマスタデバイスへの送信の場合は、
マスタデバイスにおいて所定のタイミングで、データアドレスと、ライトモードに設定されモード情報と、送受信先のスレーブデバイスを識別するブロック情報を設定し(ステップS11)、
第1のタイミング信号の立下りタイミングで、マスタデバイスにおいて、データのデータ回線を受信方向に設定し(ステップS12)、
これと同時に、各スレーブデバイスにおいて、アドレスとモード情報とブロック情報を確定、受信して(ステップS13)、
第2のタイミング信号の立下りタイミングで、ブロック情報に該当するスレーブデバイスが、自己のメモリに記憶されているデータを、データ回線を介して受信メモリのアドレスに書き込み(ステップS14)、
これと同時に、マスタデバイスにおいて、受信したデータを確定して(ステップS15)、
第2のタイミング信号の立上がりタイミングで、つまり、受信メモリに対する各スレーブデバイスからの書き込みがないタイミングにおいて、データ回線を遮断する(ステップS16)、
ことを特徴とする。
【0011】
請求項4に記載の発明は、請求項3に記載のパラレル通信方法において、前記各スレーブデバイスは、前記マスタデバイス側から受信した信号をパリティチェックし、パリティエラーが発生した場合に前記マスタデバイス側にエラー信号を送信する、ことを特徴とする。
【発明の効果】
【0012】
請求項1および請求項3の発明によれば、各スレーブデバイスで、送信メモリからデータを読み取り、この読み取ったデータを受信メモリに書き込むため、マスタデバイス側においてデータが確実に伝送されたか否かを確認することが可能となり、この結果、確実なデータ伝送が可能となる。しかも、送信メモリおよび受信メモリに対する各スレーブデバイスからの読み書きがない期間(
第2のタイミング信号の立上がりタイミングから第1のタイミング信号の立下りタイミングまでの間)においては、データ回線が遮断されるため、データ衝突が回避されて、より確実なデータ伝送が可能となる。
【0013】
また、マスタデバイス側においてタイミング信号を生成したり送受信情報を設定したりする、ハードロジックのみで構成することが可能で、ソフトウエア処理を不要にすることが可能となる。この結果、簡易な構成とすることが可能となり、かつ、信頼性が高まりより確実なデータ伝送が可能となる。
【0014】
請求項2および請求項4の発明によれば、マスタデバイス側から受信した信号を各スレーブデバイスでパリティチェックするため、信頼性がより高い確実なデータ伝送が可能となる。しかも、パリティエラーが発生した場合には、マスタデバイス側にエラー信号が送信されるため、マスタデバイス側において適正なエラー処理を行うことが可能となる。
【発明を実施するための形態】
【0016】
以下、この発明を図示の実施の形態に基づいて説明する。
【0017】
図1〜
図4は、この発明の実施の形態を示し、
図1は、この実施の形態に係るパラレル通信機器1を示す概略構成ブロック図である。このパラレル通信機器1は、マスタデバイス2と複数のスレーブデバイス3
1〜3
4との間で信号・データを伝送・転送する機器であり、マスタデバイス2側に、バス信号制御回路(バス信号制御手段)4と、送信メモリ5と、受信メモリ6とを備え、各スレーブデバイス3
1〜3
4はメモリを備えている。ここで、この実施の形態では、スレーブデバイス3が4つの場合について説明するが、4つの以外の数であってもよいことは勿論である。
【0018】
まず、各信号の構成について説明すると、8ビットのデータ構成で、1つのスレーブデバイス3
1〜3
4当たりのビット数が512ビット、全スレーブデバイス3
1〜3
4で2048ビットであり、次のような信号(ビット)内容となっている。
【0019】
ADR5〜ADR0:データのアドレス(アクセスする送信メモリ5または受信メモリ6のアドレス)
MOD2〜MOD0:リードライト信号(リードかライトかを識別するモード情報)、スレーブ基準で送信モードまたは受信モードを設定し、例えば、MOD0のみが「1」の場合にリードモード(送信モード)、MOD2のみが「1」の場合にライトモード(受信モード)
BLK1〜BLK0:データを送受信するスレーブデバイスのブロック番号(送受信先のスレーブデバイス3
1〜3
4を識別するブロック情報)、例えば、2進数で「00」の場合にはスレーブデバイス3
1を通信先に選択し、「01」の場合にはスレーブデバイス3
2を通信先に選択する、などとする。
PRTY:ADR5〜ADR0とMOD2〜MOD0とのパリティ信号、
以上のADR5〜ADR0と、MOD2〜MOD0と、BLK1〜BLK0と、PRTYと、を送受信情報とする。
DAT6〜DAT0:データ
DATP:データパリティ(DAT6〜DAT0のパリティ信号)
STB1、STB2:データ送受信制御(タイミング信号)、デューティー50%のクロックを2つに分配して、一方のクロックを遅延させて、それぞれの立下りおよび立上がりエッジ(タイミング信号)を用いて、バス通信を制御する。
ERR:PRTYとDATPのパリティ信号に対するパリティチェックで、パリティエラーが発生した場合にスレーブデバイス3
1〜3
4からマスタデバイス2に送信するエラー信号
【0020】
これらの信号の方向性は、マスタデバイス2を基準とし、DAT6〜DAT0とDATPとERRとを除く信号は、マスタデバイス2からスレーブデバイス3
1〜3
4への一方向である。また、DAT6〜DAT0とDATPは、マスタデバイス2とスレーブデバイス3
1〜3
4との間で双方向であり、双方向信号を用いる。一方、ERRは、スレーブデバイス3
1〜3
4からマスタデバイス2への一方向であり、専用線を介して送信される。また、これらの信号の信号線(データ回線を含む)は、ディファレンシャル信号となっている。
【0021】
バス信号制御回路4は、STB1、STB2(タイミング信号)を周期的に生成して各スレーブデバイス3
1〜3
4に送信するとともに、ADR5〜ADR0とMOD2〜MOD0とBLK1〜BLK0とPRTY(送受信情報)を設定し、STB1、STB2に基づいてデータ回線を制御するものである。
【0022】
そして、各スレーブデバイス3
1〜3
4は、STB1、STB2に基づいて送受信情報を受信し、この送受信情報中のBLK1〜BLK0(ブロック情報)に該当するスレーブデバイス3
1〜3
4は、STB1、STB2に基づいて、MOD2〜MOD0(モード情報)がリードの場合に送信メモリ5のADR5〜ADR0(所定アドレス)からデータ回線を介してデータを読み取り、MOD2〜MOD0がライトの場合に受信メモリ6のADR5〜ADR0にデータ回線を介して先に読み取ったデータを書き込む。また、バス信号制御回路4は、送信メモリ5および受信メモリ6に対する各スレーブデバイス3
1〜3
4からのアクセスがない、STB1、STB2間(タイミング信号)間においてデータ回線を遮断する。一方、各スレーブデバイス3
1〜3
4は、マスタデバイス2側から受信した信号をパリティチェックし、つまり、PRTYとDATPのパリティ信号に対してパリティチェックし、パリティエラーが発生した場合にマスタデバイス2にERR(エラー信号)を送信するものである。
【0023】
次に、このようなパラレル通信機器1の作用およびパラレル通信機器1によるパラレル通信方法について、
図2〜
図4に従って具体的に説明する。
【0024】
図2、
図3に示すように、マスタデバイス2において、STB1、STB2を周期的に生成して各スレーブデバイス3
1〜3
4に送信する。この状態で、マスタデバイス2から各スレーブデバイス3
1〜3
4への送信の場合、まず、マスタデバイス2において所定のタイミングで、ADR5〜ADR0とMOD2〜MOD0とBLK1〜BLK0とPRTYを設定する(ステップS1)。ここで、MOD2〜MOD0はリードモードに設定されている。次に、STB1の立下りタイミングで、マスタデバイス2において、DAT6〜DAT0およびDATPのデータ回線を送信方向に設定する(ステップS2)。これと同時に、各スレーブデバイス3
1〜3
4において、ADR5〜ADR0とMOD2〜MOD0とBLK1〜BLK0とPRTYを確定、受信する(ステップS3)。
【0025】
続いて、STB2の立下りタイミングにおいて、BLK1〜BLK0に該当するスレーブデバイス3
1〜3
4が、DAT6〜DAT0とDATPを確定、受信する(ステップS4)。さらに、STB1の立上がりタイミングにおいて、当該スレーブデバイス3
1〜3
4が、送信メモリ5のADR5〜ADR0からデータ回線を介してデータを読み取って、自己のメモリに書き込み記憶する(ステップS5)。これと同時に、該スレーブデバイス3
1〜3
4において、PRTYとDATPのパリティ信号に対してパリティチェックし、パリティエラーが発生した場合には、マスタデバイス2にERR(エラー信号)を送信する。
【0026】
そして、STB2の立上がりタイミング、つまり、送信メモリ5に対する各スレーブデバイス3
1〜3
4からの読み取りがないタイミングにおいて、データ回線を遮断・開放する(ステップS6)ものである。
【0027】
一方、各スレーブデバイス3
1〜3
4からマスタデバイス2への送信の場合(マスタデバイス2が各スレーブデバイス3
1〜3
4から受信する場合)、まず、
図3に示すように、マスタデバイス2において所定のタイミングで、ADR5〜ADR0とMOD2〜MOD0とBLK1〜BLK0とPRTYを設定する(ステップS11)。ここで、MOD2〜MOD0はライトモードに設定されている。次に、STB1の立下りタイミングで、マスタデバイス2において、DAT6〜DAT0およびDATPのデータ回線を受信方向に設定する(ステップS12)。これと同時に、各スレーブデバイス3
1〜3
4において、ADR5〜ADR0とMOD2〜MOD0とBLK1〜BLK0とPRTYを確定、受信する(ステップS13)。
【0028】
続いて、STB2の立下りタイミングにおいて、BLK1〜BLK0に該当するスレーブデバイス3
1〜3
4が、自己のメモリに記憶されているデータ(ステップS5で読み取ったデータ)を、データ回線を介して受信メモリ6のADR5〜ADR0に書き込む(ステップS14)。さらに、当該スレーブデバイス3
1〜3
4において、PRTYのパリティ信号に対してパリティチェックし、パリティエラーが発生した場合には、マスタデバイス2にERR(エラー信号)を送信する(ステップS14)。
【0029】
これと同時に、STB2の立下りタイミングでマスタデバイス2において、受信したDAT6〜DAT0およびDATPを確定する(ステップS15)。続いて、STB2の立上がりタイミング、つまり、受信メモリ6に対する各スレーブデバイス3
1〜3
4からの書き込みがないタイミングにおいて、データ回線を遮断・開放する(ステップS16)ものである。
【0030】
このような読み取り、書き込みを、マスタデバイス2と各スレーブデバイス3
1〜3
4との間で順次行う。すなわち、
図4に示すように、まず、第1のスレーブデバイス3
1による、送信メモリ5からのデータの読み取りと受信メモリ6へのデータの書き込みとを行う(ステップS21)。同様にして、順次、第2のスレーブデバイス3
2、第3のスレーブデバイス3
3および第4のスレーブデバイス3
4による、送信メモリ5からのデータの読み取りと受信メモリ6へのデータの書き込みとを行う(ステップS22〜S24)。続いて、ステップS21に戻り、同様の送受信を繰り返し行うものである。
【0031】
以上のように、このパラレル通信機器1およびパラレル通信方法によれば、各スレーブデバイス3
1〜3
4で、送信メモリ5からデータを読み取り、この読み取ったデータを受信メモリ6に書き込むため、マスタデバイス2側においてデータが確実に伝送されたか否かを確認することが可能となり、この結果、確実なデータ伝送が可能となる。しかも、送信メモリ5および受信メモリ6に対する各スレーブデバイス3
1〜3
4からの読み書きがない期間(STB2の立上がりタイミングからSTB1の立下りタイミングまでの間)においては、データ回線が遮断・開放されるため、データ衝突が回避されて、より確実なデータ伝送が可能となる。
【0032】
また、バス通信の制御は、マスタデバイス2側(バス信号制御回路4)ですべて行い、各スレーブデバイス3
1〜3
4では行わない。しかも、マスタデバイス2側においてSTB1、STB2を生成したり、ADR5〜ADR0やMOD2〜MOD0などの送受信情報を設定したりする、ハードロジックのみで構成することが可能で、ソフトウエア処理を不要にすることが可能となる。そして、単純なロジック構成でソフトウエアを介さないため、コマンド制御が不要となる。これらの結果、簡易、安価な構成とすることが可能となり、かつ、信頼性が高まりより確実なデータ伝送が可能となる。一方、信号線がディファレンシャル信号であるため、ノイズに強く、パラレル通信に比べて長距離通信が可能となる。
【0033】
また、マスタデバイス2から受信した信号、つまり、ADR5〜ADR0とMOD2〜MOD0およびDAT6〜DAT0を、各スレーブデバイス3
1〜3
4でパリティチェックするため、信頼性がより高い確実なデータ伝送が可能となる。しかも、パリティエラーが発生した場合には、マスタデバイス2にERRが送信されるため、マスタデバイス2において適正なエラー処理を行うことが可能となる。
【0034】
このようにして簡易、安価な構成で確実なデータ伝送が可能になるため、規格化されたシリアル通信やパラレル通信で制御する程ではないが、ディスクリート信号やセンサ信号などの入出力信号を少ない電線・通信線で通信したい器材(カメラ制御や温度センサの遠隔操作等)を、安価に実現することが可能となる。また、確実な制御、監視を複数の器材に対して行いたい器材に適用できるように、バス通信をハード的に停止させることができるERRを備えているため、信頼性が高いデータ通信と合わせて危険を伴う器材に用いることが可能となる。
【0035】
以上、この発明の実施の形態について説明したが、具体的な構成は、上記の実施の形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計の変更等があっても、この発明に含まれる。例えば、上記の実施の形態では、1つのスレーブデバイス3
1〜3
4による、送信メモリ5からのデータの読み取りと受信メモリ6へのデータの書き込みとを行った後に、次のスレーブデバイス3
1〜3
4による同処理を行っているが、すべてのスレーブデバイス3
1〜3
4による送信メモリ5からのデータの読み取りを行った後に、すべてのスレーブデバイス3
1〜3
4による受信メモリ6へのデータの書き込みを行ってもよい。