特許第6243210号(P6243210)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ NECプラットフォームズ株式会社の特許一覧

特許6243210シリアルデータ送信装置、シリアルデータ受信装置、シリアルデータ送信方法、及び、シリアルデータ送信プログラム
<>
  • 特許6243210-シリアルデータ送信装置、シリアルデータ受信装置、シリアルデータ送信方法、及び、シリアルデータ送信プログラム 図000002
  • 特許6243210-シリアルデータ送信装置、シリアルデータ受信装置、シリアルデータ送信方法、及び、シリアルデータ送信プログラム 図000003
  • 特許6243210-シリアルデータ送信装置、シリアルデータ受信装置、シリアルデータ送信方法、及び、シリアルデータ送信プログラム 図000004
  • 特許6243210-シリアルデータ送信装置、シリアルデータ受信装置、シリアルデータ送信方法、及び、シリアルデータ送信プログラム 図000005
  • 特許6243210-シリアルデータ送信装置、シリアルデータ受信装置、シリアルデータ送信方法、及び、シリアルデータ送信プログラム 図000006
  • 特許6243210-シリアルデータ送信装置、シリアルデータ受信装置、シリアルデータ送信方法、及び、シリアルデータ送信プログラム 図000007
  • 特許6243210-シリアルデータ送信装置、シリアルデータ受信装置、シリアルデータ送信方法、及び、シリアルデータ送信プログラム 図000008
  • 特許6243210-シリアルデータ送信装置、シリアルデータ受信装置、シリアルデータ送信方法、及び、シリアルデータ送信プログラム 図000009
  • 特許6243210-シリアルデータ送信装置、シリアルデータ受信装置、シリアルデータ送信方法、及び、シリアルデータ送信プログラム 図000010
  • 特許6243210-シリアルデータ送信装置、シリアルデータ受信装置、シリアルデータ送信方法、及び、シリアルデータ送信プログラム 図000011
  • 特許6243210-シリアルデータ送信装置、シリアルデータ受信装置、シリアルデータ送信方法、及び、シリアルデータ送信プログラム 図000012
  • 特許6243210-シリアルデータ送信装置、シリアルデータ受信装置、シリアルデータ送信方法、及び、シリアルデータ送信プログラム 図000013
  • 特許6243210-シリアルデータ送信装置、シリアルデータ受信装置、シリアルデータ送信方法、及び、シリアルデータ送信プログラム 図000014
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6243210
(24)【登録日】2017年11月17日
(45)【発行日】2017年12月6日
(54)【発明の名称】シリアルデータ送信装置、シリアルデータ受信装置、シリアルデータ送信方法、及び、シリアルデータ送信プログラム
(51)【国際特許分類】
   H04L 7/08 20060101AFI20171127BHJP
   H04L 7/04 20060101ALI20171127BHJP
   H04L 25/38 20060101ALI20171127BHJP
   H04L 25/02 20060101ALI20171127BHJP
【FI】
   H04L7/08
   H04L7/04
   H04L25/38 A
   H04L25/02 J
【請求項の数】10
【全頁数】19
(21)【出願番号】特願2013-254320(P2013-254320)
(22)【出願日】2013年12月9日
(65)【公開番号】特開2015-115651(P2015-115651A)
(43)【公開日】2015年6月22日
【審査請求日】2016年11月15日
(73)【特許権者】
【識別番号】000227205
【氏名又は名称】NECプラットフォームズ株式会社
(74)【代理人】
【識別番号】100109313
【弁理士】
【氏名又は名称】机 昌彦
(74)【代理人】
【識別番号】100124154
【弁理士】
【氏名又は名称】下坂 直樹
(72)【発明者】
【氏名】永井 康太
【審査官】 北村 智彦
(56)【参考文献】
【文献】 特開平05−183526(JP,A)
【文献】 特開昭59−230343(JP,A)
【文献】 特開平04−216233(JP,A)
【文献】 特開昭61−131655(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 7/08
H04L 7/04
H04L 25/02
H04L 25/38
(57)【特許請求の範囲】
【請求項1】
同期して動作する複数のシリアルデータ通信路を使用してデータをシリアルデータ受信装置に送信する際に、前記複数のシリアルデータ通信路のいずれかを流れる前記データに対して、時系列な所定のビット間隔ごとに前記複数のシリアルデータ通信路間において分散するように、同期制御ビットを挿入する制御ビット挿入手段と、
前記シリアルデータ受信装置が、前記複数のシリアルデータ通信路を経由して第一のクロックタイミングに受信した複数のビットが示す値を基に所定の論理計算を行った結果を使用して前記複数のビットを取り込むタイミングを調整する場合に、第二のクロックタイミングに送信する前記同期制御ビット、及び、前記同期制御ビットを除く1以上のビットが示す値を基に前記所定の論理計算を行った結果が、前記第二のクロックタイミングの直前のクロックタイミングに送信する複数のビットを基に前記所定の論理計算を行った結果と反転するように、前記同期制御ビットを生成する生成手段と、
を備えるシリアルデータ送信装置。
【請求項2】
パラレルデータを複数のパラレルデータセットに分割したのち、前記複数のパラレルデータセットを、それぞれ、前記複数のシリアルデータ通信路を使用して送信するシリアルデータに変換する分割変換手段を、
さらに備える、請求項1に記載のシリアルデータ送信装置。
【請求項3】
前記複数のシリアルデータ通信路を使用して送信する前記データに対して、所定のタイミングに、前記データの先頭であることを示すフレーム先頭データを、所定の生成論理により生成して挿入するフレーム先頭挿入手段を、
さらに備える、請求項1または2に記載のシリアルデータ送信装置。
【請求項4】
前記フレーム先頭挿入手段は、前記複数のシリアルデータ通信路を使用して送信する前記フレーム先頭データについて、前記第二のクロックタイミングに送信する前記複数のビットが示す値を基に前記所定の論理計算を行った結果が、所定のビット間隔に亘って、値を維持した後に反転することを繰り返すように、前記フレーム先頭データを生成する、
請求項3に記載のシリアルデータ送信装置。
【請求項5】
前記生成手段は、前記所定の論理計算として、排他的論理和を行う、
請求項1乃至4のいずれかに記載のシリアルデータ送信装置。
【請求項6】
同期して動作する複数のシリアルデータ通信路を経由してデータをシリアルデータ送信装置から受信する際に、前記複数のシリアルデータ通信路を経由して同じクロックタイミングに受信した複数のビットが示す値を基に所定の論理計算を行った結果が反転したタイミングを基に、前記複数のビットを取り込むクロックタイミングを調整する信号を生成する同期タイミング検出手段、
を備えるシリアルデータ受信装置。
【請求項7】
前記複数のシリアルデータ通信路を経由して受信したシリアルデータを、それぞれ、パラレルデータセットに変換したのち、複数の前記パラレルデータセットを1つに統合する変換統合手段を、
さらに備える、請求項6に記載のシリアルデータ受信装置。
【請求項8】
前記複数のシリアルデータ通信路を経由して受信した、先頭であることを示すフレーム先頭データを包含する前記データから、前記フレーム先頭データを所定の検出論理に基づき検出するフレーム先頭検出手段を、
さらに備える、請求項6または7に記載のシリアルデータ受信装置。
【請求項9】
情報処理装置によって、
同期して動作する複数のシリアルデータ通信路を使用してデータをシリアルデータ受信装置に送信する際に、前記複数のシリアルデータ通信路のいずれかを流れる前記データに対して、時系列な所定のビット間隔ごとに前記複数のシリアルデータ通信路間において分散するように、同期制御ビットを挿入し、
前記シリアルデータ受信装置が、前記複数のシリアルデータ通信路を経由して第一のクロックタイミングに受信した複数のビットが示す値を基に所定の論理計算を行った結果を使用して前記複数のビットを取り込むタイミングを調整する場合に、第二のクロックタイミングに送信する前記同期制御ビット、及び、前記同期制御ビットを除く1以上のビットが示す値を基に前記所定の論理計算を行った結果が、前記第二のクロックタイミングの直前のクロックタイミングに送信する複数のビットを基に前記所定の論理計算を行った結果と反転するように、前記同期制御ビットを生成する、
シリアルデータ送信方法。
【請求項10】
同期して動作する複数のシリアルデータ通信路を使用してデータをシリアルデータ受信装置に送信する際に、前記複数のシリアルデータ通信路のいずれかを流れる前記データに対して、時系列な所定のビット間隔ごとに前記複数のシリアルデータ通信路間において分散するように、同期制御ビットを挿入する制御ビット挿入処理と、
前記シリアルデータ受信装置が、前記複数のシリアルデータ通信路を経由して第一のクロックタイミングに受信した複数のビットが示す値を基に所定の論理計算を行った結果を使用して前記複数のビットを取り込むタイミングを調整する場合に、第二のクロックタイミングに送信する前記同期制御ビット、及び、前記同期制御ビットを除く1以上のビットが示す値を基に前記所定の論理計算を行った結果が、前記第二のクロックタイミングの直前のクロックタイミングに送信する複数のビットを基に前記所定の論理計算を行った結果と反転するように、前記同期制御ビットを生成する生成処理と、
をコンピュータに実行させるシリアルデータ送信プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本願発明は、装置間でクロックに関する同期を取りながらシリアルデータ通信路を使用した通信を行うシステムにおいて、データを他の装置へ送信するシリアルデータ送信装置等に関する。
【背景技術】
【0002】
近年の大規模コンピータシステムは、多数の装置を備え、各装置が互いに通信することにより連携して動作する。装置間において通信を行う際の通信路としては、シリアルデータ通信路がよく利用されている。装置間においてシリアルデータ通信を行う際に、受信側装置が通信データを取りこぼすことが無いように、送信側装置及び受信側装置を動作させるクロックについて同期制御を行う必要がある。そして、係る同期制御を行うためには、送信側装置から受信側装置に、通信データ本体とともに、クロックに関係する信号を送信する必要がある。この際、例えば、I2C(Inter−Integrated Circuit)(登録商標)通信のように、通信データ本体を送信する通信路とは別に通信路を備えてクロックを送信する方法もある。しかしながら、この方式の場合、通信路あたりのデータ伝送効率は半減することになる。したがって、通信データ本体とクロックに関する信号とを多重化して、両者を同じ通信路により送信する技術に対する期待が高まってきている。また、装置間の通信距離が長くなるほど、あるいは、クロックが高速になるほど、信号のひずみなどによる通信エラーが発生しやすくなるため、高速シリアル通信の信頼性を向上させる技術に対する期待も高まってきている。
【0003】
上述した技術に関連する技術として、特許文献1には、送信側装置が異なる周波数情報を有する複数のデジタル信号をデータの内容に依存せずに束ねて高速伝送し、受信側装置が各周波数情報を維持した複数のデジタル信号を再生、分離するようにしたシステムが開示されている。
【0004】
また、特許文献2には、通信距離が長い装置間において高速シリアル通信を行う場合に、通信路を信号が通過する際に発生する挿入損失を回避して、データを正しく送受信できるようにしたシステムが開示されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2013-062687号公報
【特許文献2】特開2012-169946号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
特許文献1が開示した技術では、送信側装置が複数のデータブロックを多重化するマルチプレクサを備え、受信側装置が多重化されたデータから個々のデータブロックを分離するデマルチプレクサを備える必要があるため、ハードウェアが増大する問題がある。また、特許文献2が開示した技術では、通信を行う装置間に中継装置を備える必要があるため、特許文献1と同様にハードウェアが増大する問題がある。したがって、シリアルデータ通信を行う装置が、簡易な構成により、クロックに関する正確な同期制御を行うようにすることが課題となる。
【0007】
本願発明の主たる目的は、この課題を解決した、シリアルデータ送信装置、シリアルデータ受信装置、シリアルデータ送信方法、及び、シリアルデータ送信プログラムを提供することである。
【課題を解決するための手段】
【0008】
本願発明に係るシリアルデータ送信装置は、同期して動作する複数のシリアルデータ通信路を使用してデータをシリアルデータ受信装置に送信する際に、前記複数のシリアルデータ通信路のいずれかを流れる前記データに対して、時系列な所定のビット間隔ごとに前記複数のシリアルデータ通信路間において分散するように、同期制御ビットを挿入する制御ビット挿入手段と、前記シリアルデータ受信装置が、前記複数のシリアルデータ通信路を経由して第一のクロックタイミングに受信した複数のビットが示す値を基に所定の論理計算を行った結果を使用して前記複数のビットを取り込むタイミングを調整する場合に、第二のクロックタイミングに送信する前記同期制御ビット、及び、前記同期制御ビットを除く1以上のビットが示す値を基に前記所定の論理計算を行った結果が、前記第二のクロックタイミングの直前のクロックタイミングに送信する複数のビットを基に前記所定の論理計算を行った結果と反転するように、前記同期制御ビットを生成する生成手段と、備えることを特徴とする。
【0009】
本願発明に係るシリアルデータ受信装置は、同期して動作する複数のシリアルデータ通信路を経由してデータをシリアルデータ送信装置から受信する際に、前記複数のシリアルデータ通信路を経由して同じクロックタイミングに受信した複数のビットが示す値を基に所定の論理計算を行った結果が反転したタイミングを基に、前記複数のビットを取り込むクロックタイミングを調整する信号を生成する同期タイミング検出手段を備えることを特徴とする。
【0010】
上記目的を達成する他の見地において、本願発明のシリアルデータ送信方法は、情報処理装置によって、同期して動作する複数のシリアルデータ通信路を使用してデータをシリアルデータ受信装置に送信する際に、前記複数のシリアルデータ通信路のいずれかを流れる前記データに対して、時系列な所定のビット間隔ごとに前記複数のシリアルデータ通信路間において分散するように、同期制御ビットを挿入し、前記シリアルデータ受信装置が、前記複数のシリアルデータ通信路を経由して第一のクロックタイミングに受信した複数のビットが示す値を基に所定の論理計算を行った結果を使用して前記複数のビットを取り込むタイミングを調整する場合に、第二のクロックタイミングに送信する前記同期制御ビット、及び、前記同期制御ビットを除く1以上のビットが示す値を基に前記所定の論理計算を行った結果が、前記第二のクロックタイミングの直前のクロックタイミングに送信する複数のビットを基に前記所定の論理計算を行った結果と反転するように、前記同期制御ビットを生成することを特徴とする。
【0011】
また、上記目的を達成する更なる見地において、本願発明に係るシリアルデータ送信プログラムは、同期して動作する複数のシリアルデータ通信路を使用してデータをシリアルデータ受信装置に送信する際に、前記複数のシリアルデータ通信路のいずれかを流れる前記データに対して、時系列な所定のビット間隔ごとに前記複数のシリアルデータ通信路間において分散するように、同期制御ビットを挿入する制御ビット挿入処理と、前記シリアルデータ受信装置が、前記複数のシリアルデータ通信路を経由して第一のクロックタイミングに受信した複数のビットが示す値を基に所定の論理計算を行った結果を使用して前記複数のビットを取り込むタイミングを調整する場合に、第二のクロックタイミングに送信する前記同期制御ビット、及び、前記同期制御ビットを除く1以上のビットが示す値を基に前記所定の論理計算を行った結果が、前記第二のクロックタイミングの直前のクロックタイミングに送信する複数のビットを基に前記所定の論理計算を行った結果と反転するように、前記同期制御ビットを生成する生成処理と、をコンピュータに実行させることを特徴とする。
【0012】
更に、本発明は、係る情報読取プログラム(コンピュータプログラム)が格納された、コンピュータ読み取り可能な、不揮発性の記憶媒体によっても実現可能である。
【発明の効果】
【0013】
本願発明は、シリアルデータ通信を行う装置間におけるクロックに関する同期制御を、簡易な構成により正確に行うことを可能とする。
【図面の簡単な説明】
【0014】
図1】本願発明の第1の実施形態に係るシリアルデータ送受信システムの構成を示すブロック図である。
図2A】本願発明の第1の実施形態に係るシリアルデータ送受信システムの動作を示すフローチャート(1/2)である。
図2B】本願発明の第1の実施形態に係るシリアルデータ送受信システムの動作を示すフローチャート(2/2)である。
図3】本願発明の第1の実施形態に係る送信データ分割部及びP/S変換部の機能を例示する図である。
図4】本願発明の第1の実施形態に係る制御ビット挿入部により同期制御ビットが挿入されたシリアルデータを例示する図である。
図5】本願発明の第1の実施形態に係る生成部が生成する同期制御ビットに関する真理値表を例示する図である。
図6】本願発明の第1の実施形態に係る生成部が備える同期制御ビット生成回路を例示する図である。
図7】本願発明の第1の実施形態に係るフレーム先頭挿入部が挿入するフレーム先頭データを例示する図である。
図8】本願発明の第1の実施形態に係るS/P変換部の機能を例示する図である。
図9】本願発明の第1の実施形態に係る受信データ統合部の機能を例示する図である。
図10】本願発明の第1の実施形態がシリアルデータ通信路を3系統備えた場合における同期制御ビットが挿入されたシリアルデータを例示する図である。
図11】本願発明の第2の実施形態に係るシリアルデータ送受信装置の構成を示すブロック図である。
図12】本願発明の各実施形態のシリアルデータ送信装置を実行可能な情報処理装置の構成を示すブロック図である。
【発明を実施するための形態】
【0015】
以下、本願発明の実施の形態について図面を参照して詳細に説明する。
【0016】
<第1の実施形態>
図1は第1の実施形態のシリアルデータ送受信システム1の構成を概念的に示すブロック図である。本実施形態のシリアルデータ送受信システム1は、シリアルデータ送信装置10、及び、シリアルデータ受信装置20を有する。シリアルデータ送信装置10は、2本のシリアルデータ通信路108乃至109を介して、シリアルデータ受信装置20へ、シリアルデータを送信する。
【0017】
シリアルデータ送信装置10は、送信データ分割部11、P/S(パラレル/シリアル)変換部12、制御ビット挿入部13、生成部14、フレーム先頭挿入部15、送信用クロック1供給部16、及び、送信用クロック2供給部17を備えている。送信データ分割部11、P/S変換部12、制御ビット挿入部13、生成部14、及び、フレーム先頭挿入部15は、電子回路の場合もあれば、コンピュータプログラムとそのコンピュータプログラムに従って動作するプロセッサによって実現される場合もある。送信用クロック1供給部16、及び、送信用クロック2供給部17は、クロック発信器(不図示)を備えた電子デバイスである。
【0018】
送信データ分割部11及びP/S変換部12の機能を図3に示す。送信データ分割部11は、パラレルデータ通信路101を介して受信した16ビットパラレルデータが包含するビット111乃至126を、2系統の8ビットパラレルデータである、ビット111乃至119、及び、ビット120乃至126に分割する。送信データ分割部11は、ビット111乃至119、及び、ビット120乃至126を、それぞれ、パラレルデータ通信路102乃至103を介して、P/S変換部12へ入力する。
【0019】
P/S変換部12は、入力された2系統の8ビットパラレルデータである、ビット111乃至119、及び、ビット120乃至126をシリアルデータに変換する。P/S変換部12は、変換後の8ビットシリアルデータを、それぞれシリアルデータ通信路104乃至105を介して、制御ビット挿入部13、及び、生成部14へ入力する。
【0020】
制御ビット挿入部13は、P/S変換部12から入力された2系統の8ビットシリアルデータに対して、所定の位置に同期制御ビットを挿入し、その同期制御ビットを挿入したシリアルデータを、シリアルデータ通信路106乃至107を介して、フレーム先頭挿入部15へ入力する。係る同期制御ビットは、シリアルデータ受信装置20が、クロックに関するシリアルデータ送信装置20との同期制御を正確に行うことができるように、送信されるシリアルデータの中に挿入されるビットである。制御ビット挿入部13により、係る同期制御ビットが挿入されたシリアルデータの一例を図4に示す。
【0021】
図4(a)乃至図4(b)は、それぞれ、シリアルデータ通信路106を流れるシリアルデータ1060、及び、シリアルデータ通信路107を流れるシリアルデータ1070を示す。制御ビット挿入部13は、図4(a)に示す通り、8ビットシリアルデータであるビット111乃至118に対して、2ビットの同期制御ビットA及びBを挿入する。制御ビット挿入部13は、同様に、図4(b)に示す通り、8ビットシリアルデータであるビット119乃至126に対して、2ビットの同期制御ビットC及びDを挿入する。
【0022】
図4(a)乃至図4(b)に示すとおり、本実施形態に係るシリアルデータ通信装置10は、入力された16ビットパラレルデータに対して4ビットの同期制御ビットA乃至Dを付加した20ビットのシリアルデータを、シリアルデータ受信装置20へ送信する。この場合、送信用クロック1供給部から供給される、パラレルデータの処理に関係する送信用クロック1の周期は、送信用クロック2供給部から供給される、シリアルデータの処理に関係する送信用クロック2の周期の10倍となる。
【0023】
制御ビット挿入部13は、1系統目のシリアルデータを構成するビット111乃至118の先頭に同期制御ビットAを挿入し、同期制御ビットAから3ビット後の位置に、2系統目のシリアルデータを構成するビット119乃至126に同期制御ビットCを挿入する。制御ビット挿入部13は、同期制御ビットCから3ビット後の位置に、1系統目のシリアルデータを構成するビット111乃至118に同期制御ビットBを挿入する。制御ビット挿入部13は、同期制御ビットBから3ビット後の位置に、2系統目のシリアルデータを構成するビット119乃至126に同期制御ビットDを挿入する。すなわち、制御ビット挿入部13は、時系列における3ビットごとに、2系統のシリアルデータに対して、交互に同期制御ビットを挿入する。尚、制御ビット挿入部13は、同期制御ビットA乃至Dとして、“0”を挿入するか、あるいは、“1”を挿入するかに関する情報を、生成部14から入手する。
【0024】
生成部14は、P/S変換部12から入力された2系統の8ビットシリアルデータを基に、同期制御ビットを生成して、生成した同期制御ビットに関する情報を、制御ビット挿入部13へ入力する。
【0025】
本実施形態に係るシリアルデータ受信装置20は、2系統のシリアルデータにおけるビットごとにEXOR(排他的論理和)を算出し、算出したEXORが示す値が反転したタイミングを基に、シリアルデータ送信装置10との間で、クロックに関する同期制御を行う。尚、シリアルデータ受信装置20は、2系統のシリアルデータにおけるビットごとに、EXOR以外の論理計算を行ってもよい。図4(a)乃至図4(b)が示すシリアルデータについてEXORをとった結果である、シリアルデータ通信路106乃至107を流れるシリアルデータのEXORを取ったシリアルデータ1080を、図4(c)に示す。図4(c)におけるT乃至Zが示す値は、“0”あるいは“1”のいずれかである。図4(c)において、例えば、Yが示す値は、ビット111及びビット120のEXORが示す値であり、Xが示す値は、ビット112及びビット121のEXORが示す値である。
【0026】
図4(c)に示す通り、ビット113及び同期制御ビットCのEXORが示す値は、ビット112及び121のEXORが示す値であるXを反転した値である。ビット124及び同期制御ビットBのEXORが示す値は、ビット115及び123のEXORが示す値であるVを反転した値である。同様に、ビット118及び同期制御ビットDのEXORが示す値は、ビット117及び126のEXORが示す値であるTを反転した値である。すなわち、シリアルデータ通信路106乃至107を流れるシリアルデータのEXORを取ったシリアルデータ1080において、同期制御ビットに関わるビットが示す値は、直前のビットを反転させた値となる。
【0027】
生成部14は、シリアルデータ通信路106乃至107を流れるシリアルデータのEXORを取ったシリアルデータ1080が、上述した値となるように、各制御ビットを生成する。同期制御ビットCに関する真理値表1090を図5に示す。生成部14は、同期制御ビットCに関する真理値表1090が示す論理に従い、ビット113及びXが示す値を基に、同期制御ビットCを生成する。
【0028】
同期制御ビットCに関する真理値表1090が示す論理を実現する同期制御ビット生成回路140を図6に示す。同期制御ビット生成回路140は、EXORゲート141及びEXNOR(否定排他的論理和)ゲート142を備えている。EXORゲート141は、ビット112及び121のEXORが示す値であるXを生成する。EXNORゲート142は、X及びビット113のEXNORが示す値である同期制御ビットCを生成する。生成部14は、同期制御ビット生成回路140を備え、同様に、同期制御ビットA、B、及び、Dを生成する生成回路を備える。
【0029】
フレーム先頭挿入部15は、制御ビット挿入部13から入力された2系統のシリアルデータに対して、所定の一定間隔(例えば10ミリ秒間隔)で、フレーム先頭データを挿入する。フレーム先頭挿入部15は、所定の一定間隔ではなく、特定のタイミングにフレーム先頭データを挿入してもよい。フレーム先頭データは、シリアルデータ受信装置20が受信したデータに係る取り込み開始を決定することができるように、通常データとは識別可能に挿入されるデータである。
【0030】
フレーム先頭挿入部15が挿入するフレーム先頭データの例を図7に示す。図7(a)は、ビット111乃至118を包含するシリアルデータに挿入された、シリアルデータ通信路108を流れるフレーム先頭データ1100の一例である。図7(b)は、ビット119乃至126を包含するシリアルデータに挿入された、シリアルデータ通信路109を流れるフレーム先頭データ1110の一例である。本実施形態におけるフレーム先頭データは20ビットである。
【0031】
図7(c)は、シリアルデータ通信路108乃至109を流れるフレーム先頭データのEXORを取ったシリアルデータ1120の一例である。図7(C)に示す通り、シリアルデータ通信路108乃至109を流れるフレーム先頭データのEXORを取ったシリアルデータ1120は、時系列における3ビットごとに、反転を繰り返す。すなわち、フレーム先頭挿入部15は、シリアルデータ通信路108乃至109を流れるフレーム先頭データのEXORを取ったシリアルデータ1120が、時系列における3ビットごとに反転を繰り返すように、所定の論理によりフレーム先頭データを生成してシリアルデータに挿入する。
【0032】
図7(d)は、シリアルデータ通信路108乃至109を流れる通常データのEXORを取ったシリアルデータ1130の一例である。シリアルデータ通信路108乃至109を流れる通常データのEXORを取ったシリアルデータ1130は、図4(c)に示すシリアルデータを2個つなげた20ビットのデータである。図7(d)における“制御”と記載されたビットは、同期制御ビットに関係するビットであり、上述した通り、その値は直前のビットを反転させた値となる。
【0033】
図7(c)乃至図7(d)に示す通り、シリアルデータ通信路108乃至109を流れるフレーム先頭データのEXORを取ったシリアルデータ1120と、シリアルデータ通信路108乃至109を流れる通常データのEXORを取ったシリアルデータ1130とは、値が異なっている。
【0034】
フレーム先頭挿入部15は、フレーム先頭データを挿入した2系統のシリアルデータを、シリアルデータ通信路108乃至109を介して、シリアルデータ受信装置20における同期タイミング検出部24に送信する。
【0035】
シリアルデータ受信装置20は、受信データ統合部21、S/P変換部22、フレーム先頭検出部23、同期タイミング検出部24、受信用クロック1供給部25、及び、受信用クロック2供給部26を備えている。受信データ統合部21、S/P変換部22、フレーム先頭検出部23、及び、同期タイミング検出部24は、電子回路の場合もあれば、コンピュータプログラムとそのコンピュータプログラムに従って動作するプロセッサによって実現される場合もある。受信用クロック1供給部25、及び、受信用クロック2供給部26は、クロック発信器を備えた電子デバイスである。
【0036】
同期タイミング検出部24は、シリアルデータ送信装置10から受信した、2系統のシリアルデータを、シリアルデータ通信路206乃至207を介して、フレーム先頭検出部23へ入力する。同期タイミング検出部24は、受信した2系統のシリアルデータについて、同じクロックタイミングに受信した2ビットのEXORを算出する。同期タイミング検出部24は、2ビットのEXORが反転したタイミングを基に、シリアルデータを取り込むクロックタイミングを調整する同期制御信号を生成して、受信用クロック2供給部へ入力する。
【0037】
受信用クロック2供給部2は、PLL(Phase Locked Loop)回路を備え、同期タイミング検出部24から入力された同期制御信号を基に、PLL回路により受信用クロック2に関する同期制御を行う。尚、受信用クロック2の周期は、シリアルデータ送信装置10における送信用クロック2の周期と同等である。受信用クロック2供給部2は、同期制御した受信用クロック2を、同期タイミング検出部24、フレーム先頭検出部23、及び、S/P変換部22へ分配する。
【0038】
フレーム先頭検出部23は、同期タイミング検出部24から入力された2系統のシリアルデータのEXORが、連続する20ビットについて、図7(c)に示すパターンであるか否かを確認する。フレーム先頭検出部23は、2系統のシリアルデータのEXORが、図7(c)に示すパターンである場合、入力された20ビットのシリアルデータが、フレーム先頭データであると判定し、受信したシリアルデータに関する取り込み開始を決定する。フレーム先頭検出部23は、2系統のシリアルデータのEXORが、図7(c)に示すパターンでない場合、入力されたシリアルデータを、そのまま、シリアルデータ通信路204乃至205を介して、S/P変換部22へ入力する。
【0039】
S/P変換部22の機能を図8に示す。S/P変換部22は、入力された2系統のシリアルデータを、それぞれパラレルデータに変換する。図8に示す通り、S/P変換部22は、シリアルデータ通信路204を流れるシリアルデータ2040から、同期制御ビットA及びBを廃棄したのち、シリアルデータ2040をビット111乃至118を含む8ビットパラレルデータに変換する。S/P変換部22は、シリアルデータ通信路205を流れるシリアルデータについても、同様の手順により、ビット119乃至126を含む8ビットパラレルデータに変換する。
【0040】
尚、パラレルデータの処理に関係する受信用クロック1の周期は、シリアルデータの処理に関係する受信用クロック2の周期の10倍となる。すなわち、受信用クロック2の周期は、シリアルデータ送信装置10における送信用クロック1の周期と同等である。受信用クロック1は、受信用クロック1供給部25から分配されている。S/P変換部22は、2系統の8ビットシリアルデータを変換した、2系統の8ビットパラレルデータを、パラレルデータ通信路202乃至203を介して、受信データ統合部21へ入力する。
【0041】
受信データ統合部21の機能を図9に示す。受信データ統合部21は、入力された2系統の8ビットパラレルデータを、ビット111乃至126を含む16ビットパラレルデータに統合して、その16ビットパラレルデータを、パラレルデータ通信路201を介して、外部へ出力する。
【0042】
次に図2A乃至2Bのフローチャートを参照して、本実施形態に係るシリアルデータ送受信システム1の動作(処理)について詳細に説明する。
【0043】
送信データ分割部11は、外部から受信した16ビットパラレルデータを、2系統の8ビットパラレルデータに分割して、P/S変換部12へ入力する(ステップS101)。P/S変換部12は、2系統の8ビットパラレルデータを、それぞれシリアルデータに変換して、制御ビット挿入部13、及び、生成部14へ入力する(ステップS102)。生成部14は、2系統の8ビットパラレルデータから同期制御ビットを生成し、生成した同期制御ビットを、制御ビット挿入部13へ入力する(ステップS103)。制御ビット挿入部13は、2系統のシリアルデータにおける所定の位置に同期制御ビットを挿入し、同期制御ビットが挿入された2系統のシリアルデータを、フレーム先頭挿入部15へ入力する(ステップS104)。
【0044】
送信するシリアルデータが先頭のデータである場合(ステップS105でYes)、フレーム先頭挿入部15は、2系統のシリアルデータのそれぞれにフレーム先頭データを挿入し、2系統のシリアルデータを、同期タイミング検出部24へ送信する(ステップS106)。 送信するシリアルデータが先頭のデータでない場合(ステップS105でNo)、フレーム先頭挿入部15は、2系統のシリアルデータを、そのまま、同期タイミング検出部24へ送信する(ステップS107)。
【0045】
同期タイミング検出部24は、受信した2系統のシリアルデータにおける2ビットに関する排他的論理和が反転したタイミングで、同期制御信号を生成し、受信用クロック2供給部26へ入力する(ステップS108)。受信用クロック2供給部26は、同期制御信号を基に、PLL回路によりクロックに関する同期制御を行い、同期制御したクロックを、同期タイミング検出部24、フレーム先頭検出部23、及び、S/P変換部22へ分配する(ステップS109)。同期タイミング検出部24は、受信した2系統のシリアルデータを、そのまま、フレーム先頭検出部24へ入力する(ステップS110)。
【0046】
フレーム先頭検出部24は、シリアルデータが、フレーム先頭データであるかどうかを確認する(ステップS111)。シリアルデータがフレーム先頭データである場合(ステップS112でYes)、フレーム先頭検出部24は、シリアルデータに関する取り込み開始を決定する(ステップS113)。シリアルデータがフレーム先頭データでない場合(ステップS112でNo)、フレーム先頭検出部24は、シリアルデータを、そのまま、S/P変換部22へ入力する(ステップS114)。
【0047】
S/P変換部22は、受信した2系統のシリアルデータから同期制御ビットを廃棄した後、それぞれのシリアルデータを8ビットパラレルデータに変換して、受信データ統合部21へ入力する(ステップS115)。受信データ統合部21は、2系統の8ビットパラレルデータを、16ビットパラレルデータに統合して外部へ出力し(ステップS116)、全体の処理は終了する。
【0048】
本実施形態に係るシリアルデータ送受信システム1は、シリアルデータ通信を行う装置間におけるクロックに関する同期制御を、簡易な構成により正確に行うことができる。その理由は、生成部14が簡易な論理により生成した同期制御ビットを、制御ビット挿入部13が2系統のシリアルデータにおける所定の位置に挿入することにより、シリアルデータ受信装置20が、シリアルデータ送信装置10との間において、クロックに関する同期制御を正確に行うからである。
【0049】
2つの装置がシリアルデータ通信を行う場合、送信側装置及び受信側装置におけるクロックに関する同期がとれていないと、受信側装置が通信データを取りこぼす虞がある。送信側装置と受信側装置とがクロックに関する同期制御を行う方式としては、様々な方式が知られているが、簡易な構成により正確に同期制御を行うことが望ましい。
【0050】
本実施形態に係るシリアルデータ受信装置20における同期タイミング検出部24は、2本のシリアルデータ通信路を経由して同じクロックタイミングに受信したビットのEXORが反転した際に、受信用クロック2供給部26に対して同期制御を指示する信号を生成する。この際、例えば、同期タイミング検出部24は、2本のシリアルデータ通信路を経由して受信したデータが長期間にわたって同じ値が連続した場合、同じクロックタイミングに受信したビットのEXORが長期間にわたって反転せずに、長期間にわたって同期制御を指示する信号を生成できなくなる。したがって、この場合、シリアルデータ受信装置20は、長期間にわたってシリアルデータ送信装置10との間におけるクロックに関する同期制御を行うことができずに、通信データを取りこぼす可能性が高くなる。
【0051】
本実施形態に係るシリアルデータ送信装置10における制御ビット挿入部13は、複数のシリアルデータ通信路により送信する通信データに、時系列における3ビットごとに複数のシリアルデータ通信路間において均等に分散するように、同期制御ビットを挿入する。そして、生成部14は、複数のシリアルデータ通信路を経由して同じクロックタイミングに発信されるビットに関するEXORが示す値が、直前のクロックタイミングにおける値とは反転するように同期制御ビットを生成する。
【0052】
したがって、同期タイミング検出部24は、本実施形態において、3クロックタイミング以内に1回以上の頻度で、同期制御を指示する信号を生成することができる。一般的に、少なくとも3クロックタイミング以内に1回以上の頻度で同期制御を行うことが望ましいとされており、本実施形態に係る制御ビット挿入部13は、時系列における3ビットごとに同期制御ビットを挿入することによって、正確な同期制御を簡易な構成により行うことができる。尚、制御ビット挿入部13は、装置間の距離あるいはクロック周波数等の環境条件にしたがい、本実施形態より基準を厳しくして、時系列における2ビットごとに同期制御ビットを挿入してもよいし、あるいは、本実施形態より基準を緩くして、4ビット以上ごとに同期制御ビットを挿入してもよい。
【0053】
また、本実施形態に係るシリアルデータ送信装置10は、16ビットパラレルデータを分割して2系統のシリアルデータ通信路によりシリアルデータ受信装置20に送信し、シリアルデータ受信装置20は、2系統のシリアルデータ通信路を経由して受信したデータを、元の16ビットパラレルデータに統合する。この場合、シリアルデータ1系統あたりに挿入される同期制御ビットは6ビットごととなる。一方、16ビットパラレルデータを分割せずに1系統のシリアルデータ通信路により送信する場合は、シリアルデータ1系統あたりに挿入される同期制御ビットは3ビットごととなる。したがって、シリアルデータ送受信システム1は、装置間に関するクロック同期制御を行う際に、データ転送効率が大きく低下することを回避することができる。
【0054】
また、本実施形態に係るフレーム先頭部挿入部15は、通常データとは区別可能であるフレーム先頭データを挿入するため、シリアルデータ受信装置20は、受信したシリアルデータに関する取り込み開始を決定することができる。
【0055】
尚、本実施形態に係るシリアルデータ送受信システム1は、16ビットパラレルデータを入出力しているが、8ビット幅あるいは32幅等のパラレルデータについても、同様に処理することが可能である。また、シリアルデータ送受信システム1は、3系統以上のシリアルデータ通信路を使用して通信してもよい。シリアルデータ送受信システム1が3系統のシリアルデータ通信路を備えた場合における、同期制御ビットが挿入されたシリアルデータの一例を図10に示す。この場合、シリアルデータ送受信システム1は、ビット111乃至126に加えて、ビット127乃至134を送受信する。
【0056】
図10(a)は、1系統目のシリアルデータ通信路を流れるシリアルデータ1160の一例である。図10(b)は、2系統目のシリアルデータ通信路を流れるシリアルデータ1170の一例である。図10(c)は、3系統目のシリアルデータ通信路を流れるシリアルデータ1180の一例である。図10(d)は、3系統のシリアルデータ通信路を流れるシリアルデータのEXORを取ったシリアルデータ1190の一例である。同期制御ビットA乃至Cは、時系列における3ビットごとに、それぞれ、1系統目乃至3系統目のシリアルデータに挿入される。図10(d)に示す通り、ビット113、130、及び、同期制御ビットBのEXORが示す値は、ビット112、121、及び、129のEXORが示す値であるXを反転した値である。同様に、ビット116、124、及び、同期制御ビットCのEXORが示す値は、ビット115、123、及び、132のEXORが示す値であるVを反転した値である。この場合は、シリアルデータ送受信システム1が備えるシリアルデータ通信路が1本増加することになるが、シリアルデータ1系統あたりに挿入される同期制御ビットは9ビットごととなり、データ転送効率が低下する度合いを、さらに減少させることができる。
【0057】
<第2の実施形態>
図11は第2の実施形態のシリアルデータ送信装置30の構成を概念的に示すブロック図である。
【0058】
本実施形態のシリアルデータ送信装置30は、制御ビット挿入部33、及び、生成部34を備えている。
【0059】
制御ビット挿入部33は、同期して動作する複数、例えば2つのシリアルデータ通信路308乃至309を使用してデータをシリアルデータ受信装置40に送信する際に、シリアルデータ通信路308乃至309のいずれかを流れるデータに対して、時系列な所定のビット間隔ごとに、シリアルデータ通信路308乃至309間において分散するように、同期制御ビットを挿入する。
【0060】
生成部34は、シリアルデータ受信装置40が、シリアルデータ通信路308乃至309を経由して第一のクロックタイミングに受信した2ビットが示す値を基に所定の論理計算を行った結果を使用して前記複数のビットを取り込むタイミングを調整する場合に、第二のクロックタイミングに送信する同期制御ビット、及び、同期制御ビットを除く1以上のビットが示す値を基に所定の論理計算を行った結果が、第二のクロックタイミングの直前のクロックタイミングに送信する2ビットを基に所定の論理計算を行った結果と反転するように、同期制御ビットを生成する。
【0061】
本実施形態に係るシリアルデータ送信装置30は、シリアルデータ通信を行う装置間におけるクロックに関する同期制御を、簡易な構成により正確に行うことができる。その理由は、生成部34が簡易な論理により生成した同期制御ビットを、制御ビット挿入部33が2系統のシリアルデータにおける所定の位置に挿入することにより、シリアルデータ受信装置40が、シリアルデータ送信装置30との間において、クロックに関する同期制御を正確に行うからである。
【0062】
<ハードウェア構成例>
上述した各実施形態において図1、及び、図11に示したシリアルデータ送信装置10及び30の各部は、ソフトウェアプログラムの機能(処理)単位(ソフトウェアモジュール)と捉えることができる(ハードウェア構成を含む図1に示す送信データ分割部11、P/S変換部12、クレーム先頭挿入部15、送信用クロック1供給部16、及び、送信用クロック2供給部17を除く)。但し、これらの図面に示した各部の区分けは、説明の便宜上の構成であり、実装に際しては、様々な構成が想定され得る。この場合のハードウェア環境の一例を、図12を参照して説明する。
【0063】
図12は、本発明の模範的な実施形態に係るシリアルデータ送信装置を実行可能な情報処理装置900(コンピュータ)の構成を例示的に説明する図である。即ち、図12は、図1、及び、図11に示したシリアルデータ送信装置を実現可能なコンピュータ(情報処理装置)の構成であって、上述した実施形態における各機能を実現可能なハードウェア環境を表す。
【0064】
図12に示した情報処理装置900は、CPU901(Central_Processing_Unit)、ROM902(Read_Only_Memory)、RAM903(Random_Access_Memory)、ハードディスク904(記憶装置)、外部装置との通信インタフェース905(Interface:以降、「I/F」と称する)、CD−ROM(Compact_Disc_Read_Only_Memory)等の記憶媒体907に格納されたデータを読み書き可能なリーダライタ908、及び、入出力インタフェース909を備え、これらの構成がバス906(通信線)を介して接続された一般的なコンピュータである。
【0065】
そして、上述した実施形態を例に説明した本発明は、図12に示した情報処理装置900に対して、その実施形態の説明において参照したブロック構成図(図1、及び、図11)或いはフローチャート(図2A乃至2B)の機能を実現可能なコンピュータプログラムを供給した後、そのコンピュータプログラムを、当該ハードウェアのCPU901に読み出して解釈し実行することによって達成される。また、当該装置内に供給されたコンピュータプログラムは、読み書き可能な揮発性の記憶メモリ(RAM903)またはハードディスク904等の不揮発性の記憶デバイスに格納すれば良い。
【0066】
また、前記の場合において、当該ハードウェア内へのコンピュータプログラムの供給方法は、CD−ROM等の各種記憶媒体907を介して当該装置内にインストールする方法や、インターネット等の通信回線を介して外部よりダウンロードする方法等のように、現在では一般的な手順を採用することができる。そして、このような場合において、本発明は、係るコンピュータプログラムを構成するコード或いは、そのコードが格納された記憶媒体907によって構成されると捉えることができる。
【0067】
以上、上述した実施形態を模範的な例として本発明を説明した。しかしながら、本発明は、上述した実施形態には限定されない。即ち、本発明は、本発明のスコープ内において、当業者が理解し得る様々な態様を適用することができる。
【符号の説明】
【0068】
1 シリアルデータ送信システム
10 シリアルデータ送信装置
11 送信データ分割部
12 P/S変換部
13 制御ビット挿入部
14 生成部
140 同期制御ビット生成回路
141 EXORゲート
142 EXNORゲート
15 フレーム先頭挿入部
16 送信用クロック1供給部
17 送信用クロック2供給部
20 シリアルデータ受信装置
21 受信データ統合部
22 S/P変換部
23 フレーム先頭検出部
24 同期タイミング検出部
25 受信用クロック1供給部
26 受信用クロック2供給部
30 シリアルデータ送信装置
33 制御ビット挿入部
34 生成部
40 シリアルデータ受信装置
101 16ビットパラレルデータ通信路
102乃至103 8ビットパラレルデータ通信路
104乃至105 シリアルデータ通信路
106乃至107 シリアルデータ通信路
108乃至109 シリアルデータ通信路
111乃至126 ビット
127乃至134 ビット
201 16ビットパラレルデータ通信路
202乃至203 8ビットパラレルデータ通信路
204乃至205 シリアルデータ通信路
206乃至207 シリアルデータ通信路
308乃至309 シリアルデータ通信路
900 情報処理装置
901 CPU
902 ROM
903 RAM
904 ハードディスク
905 通信インタフェース
906 バス
907 記憶媒体
908 リーダライタ
909 入出力インタフェース
1060 シリアルデータ通信路106を流れるシリアルデータ
1070 シリアルデータ通信路107を流れるシリアルデータ
1080 シリアルデータ通信路106乃至107を流れるシリアルデータのEXORを取ったシリアルデータ
1090 同期制御ビットCに関する真理値表
1100 シリアルデータ通信路108を流れるフレーム先頭データ
1110 シリアルデータ通信路109を流れるフレーム先頭データ
1120 シリアルデータ通信路108乃至109を流れるフレーム先頭データのEXORを取ったシリアルデータ
1130 シリアルデータ通信路108乃至109を流れる通常データのEXORを取ったシリアルデータ
1160 1系統目のシリアルデータ通信路を流れるシリアルデータ
1170 2系統目のシリアルデータ通信路を流れるシリアルデータ
1180 3系統目のシリアルデータ通信路を流れるシリアルデータ
1190 3系統のシリアルデータ通信路を流れるシリアルデータのEXORを取ったシリアルデータ
2040 シリアルデータ通信路204を流れるシリアルデータ
図1
図2A
図2B
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12