JP2017091237A - 情報処理装置およびシリアル通信データ分離多重変換方法 - Google Patents
情報処理装置およびシリアル通信データ分離多重変換方法 Download PDFInfo
- Publication number
- JP2017091237A JP2017091237A JP2015220950A JP2015220950A JP2017091237A JP 2017091237 A JP2017091237 A JP 2017091237A JP 2015220950 A JP2015220950 A JP 2015220950A JP 2015220950 A JP2015220950 A JP 2015220950A JP 2017091237 A JP2017091237 A JP 2017091237A
- Authority
- JP
- Japan
- Prior art keywords
- spi
- slave
- circuit
- data
- speed
- 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
Images
Landscapes
- Bus Control (AREA)
- Information Transfer Systems (AREA)
Abstract
【課題】SPI(Serial Peripheral Interface)バスにてメイン制御ユニット側の高速のSPIマスタ回路とオプション制御ユニット側の低速のSPIスレーブ回路とを接続する情報処理装置においてSPI通信速度を高速のSPIマスタ回路に合わせた速度への設定が可能な情報処理装置を提供する。【解決手段】SPIマスタ回路11の通信速度をSPIスレーブ回路21,22に比してn倍(n:2以上の正の整数)とした場合、オプション制御ユニット2側に、SPIスレーブ回路21,…,22をn個搭載し、かつ、SPIマスタ回路11とn個のSPIスレーブ回路21,…,22それぞれとの間の接続を、SPIマスタ回路11からのデータをn個のデータに分離変換して出力するとともに、n個のSPIスレーブ回路21,…,22それぞれからのデータを1個のデータに多重化変換して出力するSPI分離多重変換回路3を介して接続する。【選択図】 図1
Description
本発明は、情報処理装置およびシリアル通信データ分離多重変換方法に関し、特に、メイン制御ユニットと1ないし複数のオプション制御ユニットを含んで構成される情報処理装置およびシリアル通信データ分離多重変換方法に関する。
近年、電話装置やデータ通信装置、ノートPC(Personal Computer)等の情報処理装置の分野においては、小型化・高機能化の進展が著しく、メイン制御ユニット(メインCPU(Central Processing Unit))に対して、目的に応じて実装される各種のオプション制御ユニット(サブCPU)を、シリアルバスを介して接続して、メイン制御ユニット(メインCPU)とオプション制御ユニット(サブCPU)との間でマスタ・スレーブ形式の同期シリアル通信を行う構成が、高速通信が可能な構成として、多数採用されるようになってきている。
ここで、同期シリアル通信のバスシステムについては、SPI(Serial Peripheral Interface)バス形式、I2C(Inter-Integrated Circuit)バス形式等の各種の形式が知られている。そして、これら同期シリアル通信のバスシステムのうちでは、特許文献1の特開平4−287150号公報「同期式シリアルバス方式」に記載されているように、より高速化が可能な4線式のSPIバス形式が、今後さらに普及していくものと想定されている。
同期シリアル通信のバスシステムとしてSPIバス形式を採用する場合、一般に、1つの情報処理装置内に1つだけ実装されるメイン制御ユニット側のメインCPUに関しては、高価で高速のシリアル通信デバイスすなわちSPIマスタ回路を採用することができるが、目的に応じて複数実装されなければならなくなるオプション制御ユニット側のサブCPUに関しては、装置価格を安くするために、高価で高速のシリアル通信デバイスを採用することはできず、安価で低速なシリアル通信デバイスすなわちSPIスレーブ回路しか採用することができない。
そして、メイン制御ユニット側に実装された高速シリアル通信デバイスすなわちSPIマスタ回路とオプション制御ユニット側に実装された低速シリアル通信デバイスすなわちSPIスレーブ回路との間でシリアルデータ通信すなわちSPI通信を行う場合、高速シリアル通信デバイスすなわちSPIマスタ回路における通信速度を、通信相手側の低速シリアル通信デバイスすなわちSPIスレーブ回路の通信速度に合わせた速度でシリアル通信データの送受信を行うようにしている。
前述したように、電話装置や通信装置、ノートPC等の情報処理装置の分野においては、1個のメイン制御ユニットと必要に応じて実装される複数個のオプション制御ユニットとから装置構成されることが多い。かくのごとき構成の情報処理装置においては、マスタ・スレーブ形式の同期式シリアル通信用のバスシステムの一つであるSPIバス形式のバスシステムを構成するために、前述したように、1個しか実装されないメイン制御ユニット側のメインCPUに関しては、一般に、高価で高速のプロセッサを採用することができるので、高速シリアル通信デバイスすなわちSPIマスタ回路の動作クロックとして、例えば数十MHzという高速のパフォーマンスを実現するものを適用することができる。一方、複数個の実装が必要になるオプション制御ユニット側のサブCPUに関しては、部品価格を安くするために、内部に搭載される低速シリアル通信デバイスすなわちSPIスレーブ回路の動作クロックとしては、例えば数MHzという低速の通信速度しか実現することができないデバイスを使用する場合が多い。
したがって、メイン制御ユニット側のメインCPU内部に搭載されたSPIマスタ回路とオプション制御ユニット側のサブCPU内部に搭載されたSPIスレーブ回路との間のシリアルデータ通信(SPI通信)においては、たとえ、SPIマスタ回路が高速通信可能なデバイスであったとしても、SPIマスタ回路のシリアル通信データ(SPIデータ)の通信速度が、通信相手のオプション制御ユニット側のSPIスレーブ回路のシリアル通信データの通信速度に制限されてしまい、情報処理装置全体のシステム内における単位時間当たりのデータ通信量が不十分になって、情報処理装置として十分なシステム動作パフォーマンスを実現することができなくなっている。
(本発明の目的)
本発明は、かくのごとき問題に鑑みてなされたものであり、マスタ・スレーブ形式の同期式シリアル通信用のバスシステムの一つであるSPI(Serial Peripheral Interface)バス形式のバスシステムを用いて、メイン制御ユニットに実装された高速のSPIマスタ回路と1ないし複数のオプション制御ユニットに実装された低速のSPIスレーブ回路それぞれとの間を相互に接続して構成する情報処理装置において、高速のSPIマスタ回路と低速のSPIスレーブ回路との間のSPI通信におけるSPI通信速度を、高速のSPIマスタ回路の通信速度に合わせた速度に設定することが可能な情報処理装置およびシリアル通信データ分離多重変換方法を提供することを、その目的としている。
本発明は、かくのごとき問題に鑑みてなされたものであり、マスタ・スレーブ形式の同期式シリアル通信用のバスシステムの一つであるSPI(Serial Peripheral Interface)バス形式のバスシステムを用いて、メイン制御ユニットに実装された高速のSPIマスタ回路と1ないし複数のオプション制御ユニットに実装された低速のSPIスレーブ回路それぞれとの間を相互に接続して構成する情報処理装置において、高速のSPIマスタ回路と低速のSPIスレーブ回路との間のSPI通信におけるSPI通信速度を、高速のSPIマスタ回路の通信速度に合わせた速度に設定することが可能な情報処理装置およびシリアル通信データ分離多重変換方法を提供することを、その目的としている。
前述の課題を解決するため、本発明による情報処理装置およびシリアル通信データ分離多重変換方法は、主に、次のような特徴的な構成を採用している。
(1)本発明による情報処理装置は、マスタ・スレーブ形式の同期式シリアル通信用のバスシステムの一つであるSPI(Serial Peripheral Interface)バス形式のバスシステムを用いて、メイン制御ユニットに実装された高速のSPIマスタ回路と1ないし複数のオプション制御ユニットに実装された低速のSPIスレーブ回路それぞれとの間を相互に接続して構成する情報処理装置において、前記SPIマスタ回路の通信速度が前記SPIスレーブ回路に比してn倍(n:2以上の正の整数)の速度であった場合、高速側の前記SPIマスタ回路と低速側の前記SPIスレーブ回路との速度比n:1に応じて、前記オプション制御ユニット側に、前記SPIスレーブ回路をn個搭載し、かつ、前記SPIマスタ回路とn個の前記SPIスレーブ回路それぞれとの間の接続を、前記SPIマスタ回路からのシリアル通信データをn個のデータに分離変換するとともに、n個の前記SPIスレーブ回路それぞれからのシリアル通信データを1個のデータに多重化変換するSPI分離多重変換回路を介して接続することを特徴とする。
(2)本発明によるSPI通信データ分離多重変換方法は、マスタ・スレーブ形式の同期式シリアル通信用のバスシステムの一つであるSPI(Serial Peripheral Interface)バス形式のバスシステムを用いて、メイン制御ユニットに実装された高速のSPIマスタ回路と1ないし複数のオプション制御ユニットに実装された低速のSPIスレーブ回路それぞれとの間を相互に接続して構成する情報処理装置において、前記SPIマスタ回路と前記SPIスレーブ回路との間で転送されるシリアル通信データの分離・多重化を行うシリアル通信データ分離多重変換方法であって、前記SPIマスタ回路の通信速度が前記SPIスレーブ回路に比してn倍(n:2以上の正の整数)の速度であった場合、高速側の前記SPIマスタ回路と低速側の前記SPIスレーブ回路との速度比n:1に応じて、前記オプション制御ユニット側に、前記SPIスレーブ回路をn個搭載し、かつ、前記SPIマスタ回路からのシリアル通信データをn個のデータに分離変換して、n個に分離したそれぞれのデータを、前記SPIスレーブ回路それぞれに対応する通信速度で、n個の前記SPIスレーブ回路それぞれに供給するとともに、n個の前記SPIスレーブ回路それぞれからのシリアル通信データを1個のデータに多重化変換して、前記SPIマスタ回路に対応する通信速度で、前記SPIマスタ回路に供給することを特徴とする。
本発明の情報処理装置およびシリアル通信データ分離多重変換方法によれば、以下のような効果を奏することができる。
本発明においては、マスタ・スレーブ形式の同期式シリアル通信用のバスシステムの一つであるSPI(Serial Peripheral Interface)バス形式のバスシステムを備えた情報処理装置において、高速通信が可能な高速シリアル通信デバイスすなわちSPIマスタ回路と低速通信しかできない低速シリアル通信デバイスすなわちSPIスレーブ回路との間のシリアルデータ通信(SPI通信)を行う際に、高速のシリアル通信デバイスすなわちSPIマスタ回路に合わせた速度で通信することが可能である。
したがって、高速シリアル通信デバイスすなわちSPIマスタ回路を実装して高速のシリアル通信が可能なメイン制御ユニットと、低速シリアル通信デバイスすなわちSPIスレーブ回路を実装して低速のシリアル通信しか実現できない1ないし複数のオプション制御ユニットとからなるような装置構成であっても、高速シリアル通信デバイスすなわちSPIマスタ回路側の通信速度を、低速シリアル通信デバイスすなわちSPIスレーブ回路側の低速な通信速度にまで低下させることを回避することができ、電話装置やデータ通信装置、ノートPC等の情報処理装置全体のシステム動作パフォーマンスを従来よりも大幅に改善することができる。
以下、本発明による情報処理装置およびシリアル通信データ分離多重変換方法の好適な実施形態について添付図を参照して説明する。なお、以下の各図面に付した図面参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、本発明を図示の態様に限定することを意図するものではないことも言うまでもない。
(本発明の特徴)
本発明の実施形態の説明に先立って、本発明の特徴についてその概要をまず説明する。本発明は、マスタ・スレーブ形式の同期式シリアル通信用のバスシステムの一つであるSPI(Serial Peripheral Interface)バス形式のバスシステムを備えた情報処理装置において、メイン制御ユニット側に実装された高速通信が可能な高速シリアル通信デバイスすなわちSPIマスタ回路と1ないし複数の各オプション制御ユニット側に実装された低速通信しかできない各低速シリアル通信デバイスすなわち各SPIスレーブ回路のうちのいずれかとの間のSPI通信を行う際に、次のような構成を適用することにより、高速のSPIマスタ回路に合わせた速度でシリアル通信を行うことを可能にし、而して、オプション制御ユニット側の各SPIスレーブ回路の最大通信速度のn倍のデータ量のシリアルデータ通信(SPI通信)を可能ならしめることを主要な特徴としている。
本発明の実施形態の説明に先立って、本発明の特徴についてその概要をまず説明する。本発明は、マスタ・スレーブ形式の同期式シリアル通信用のバスシステムの一つであるSPI(Serial Peripheral Interface)バス形式のバスシステムを備えた情報処理装置において、メイン制御ユニット側に実装された高速通信が可能な高速シリアル通信デバイスすなわちSPIマスタ回路と1ないし複数の各オプション制御ユニット側に実装された低速通信しかできない各低速シリアル通信デバイスすなわち各SPIスレーブ回路のうちのいずれかとの間のSPI通信を行う際に、次のような構成を適用することにより、高速のSPIマスタ回路に合わせた速度でシリアル通信を行うことを可能にし、而して、オプション制御ユニット側の各SPIスレーブ回路の最大通信速度のn倍のデータ量のシリアルデータ通信(SPI通信)を可能ならしめることを主要な特徴としている。
すなわち、適用する前記構成として、高速シリアル通信デバイスすなわちSPIマスタ回路と、該SPIマスタ回路と比較してデータ通信速度が1/n(n:2以上の正の整数)となる低速シリアル通信デバイスすなわちSPIスレーブ回路との間を、双方の間を転送すべきシリアル通信データ(SPIデータ)の分離・多重化変換を行うSPI分離多重変換回路を介して接続するとともに、当該オプション制御ユニット側には低速シリアル通信デバイスすなわちSPIスレーブ回路をn個(SPIマスタ回路の通信速度との速度比n:1に応じた個数)実装するという構成を採用する。
例えば、オプション制御ユニットが1個実装される場合であって、かつ、該オプション制御ユニットに、メイン制御ユニット側の高速シリアル通信デバイスすなわちSPIマスタ回路の通信速度の半分(1/n=1/2)のスピードの通信能力を有する低速シリアル通信デバイスすなわちSPIスレーブ回路を実装する場合には、当該オプション制御ユニットには、低速シリアル通信デバイスすなわちSPIスレーブ回路を2個(n=2)実装する。
そして、1個の高速シリアル通信デバイスすなわちSPIマスタ回路と2個の低速シリアル通信デバイスすなわちSPIスレーブ回路との間でシリアルデータ通信を行う際に、SPIマスタ回路から2個のSPIスレーブ回路へ向かう下り方向のシリアル通信データ(SPIデータ)に関しては、半分(1/n=1/2)ずつのデータ量の2つのデータに分離する変換を行って、データ量を半分ずつに低下させることにより、各SPIスレーブ回路それぞれに対応する通信速度で、各SPIスレーブ回路それぞれに配信する。一方、2個のSPIスレーブ回路から1個のSPIマスタ回路へ向かう上り方向のシリアル通信データ(SPIデータ)に関しては、2個のSPIスレーブ回路それぞれからのシリアル通信データ(SPIデータ)を1つのデータに多重化する変換を行って、データ量を2倍(n=2)に増加させることにより、SPIマスタ回路に対応する通信速度で、SPIマスタ回路に配信する。
而して、高速シリアル通信デバイスすなわちSPIマスタ回路と複数個(n個)の低速シリアル通信デバイスすなわちSPIスレーブ回路との間のシリアルデータ通信(SPI通信)において、高速シリアル通信デバイスすなわちSPIマスタ回路に合わせた速度でシリアル通信を行うことが可能になるので、高速シリアル通信デバイスすなわちSPIマスタ回路を実装して高速のシリアル通信が可能なメイン制御ユニットと、低速シリアル通信デバイスすなわちSPIスレーブ回路を実装して低速のシリアル通信しか実現できない複数のオプション制御ユニットとからなる装置構成においても、高速シリアル通信デバイスすなわちSPIマスタ回路側の通信速度を、低速シリアル通信デバイスすなわちSPIスレーブ回路側の低速な通信速度にまで低下させることを回避することができ、電話装置やデータ通信装置、ノートPC等の情報処理装置全体のシステム動作パフォーマンスを従来よりも大幅に改善することができる。
(本発明の実施形態の構成例)
次に、本発明に係る情報処理装置の装置構成例について、その一例を、図面を参照して詳細に説明する。まず、図1は、本発明に係る情報処理装置の装置構成の主要部の一例を示すブロック構成図であり、一例として、1個のメイン制御ユニット(メインCPU)と1個のオプション制御ユニット(サブCPU)とを実装している場合を示しているが、オプション制御ユニット(サブCPU)に関しては、必要に応じて、1ないし複数実装して構成することももちろん可能である。
次に、本発明に係る情報処理装置の装置構成例について、その一例を、図面を参照して詳細に説明する。まず、図1は、本発明に係る情報処理装置の装置構成の主要部の一例を示すブロック構成図であり、一例として、1個のメイン制御ユニット(メインCPU)と1個のオプション制御ユニット(サブCPU)とを実装している場合を示しているが、オプション制御ユニット(サブCPU)に関しては、必要に応じて、1ないし複数実装して構成することももちろん可能である。
また、図1のブロック構成図に示す本情報処理装置は、メイン制御ユニット1(メインCPU)とオプション制御ユニット2(サブCPU)とを接続するためのバスシステムとして、マスタ・スレーブ形式の同期式シリアル通信用のバスシステムの一つであるSPI(Serial Peripheral Interface)バス形式のバスシステムを備えている。つまり、図1のブロック構成図に示す情報処理装置は、前述のように、1個のメイン制御ユニット1(メインCPU)と1個のオプション制御ユニット2(サブCPU)とから構成されており、SPIバス形式のバスシステムを形成するために、メイン制御ユニット1内には、高速シリアル通信デバイスとしてSPIマスタ回路11が実装され、一方、オプション制御ユニット2内には、低速シリアル通信デバイスとしてSPIスレーブ回路21、SPIスレーブ回路22の2組が実装されている。
また、メイン制御ユニット1側のSPIマスタ回路11とオプション制御ユニット2側のSPIスレーブ回路21およびSPIスレーブ回路22それぞれとの間は、4本の信号線からなるシリアルバスを用いて、SPI分離多重変換回路3を介して接続している。SPI分離多重変換回路3は、SPIマスタ回路11から2つのSPIスレーブ回路21およびSPIスレーブ回路22それぞれへ向かう下り方向のシリアル通信データ(SPIデータ)に関しては、半分ずつのデータ量からなる2つのデータに分離する変換を行って、データ量を半分ずつに低下させて、SPIスレーブ回路21およびSPIスレーブ回路22それぞれに対応する通信速度で、SPIスレーブ回路21およびSPIスレーブ回路22それぞれに配信する。
一方、逆方向の2つのSPIスレーブ回路21およびSPIスレーブ回路22それぞれから1つのSPIマスタ回路11へ向かう上り方向のシリアル通信データ(SPIデータ)に関しては、SPI分離多重変換回路3は、2つのSPIスレーブ回路21およびSPIスレーブ回路22それぞれからのシリアル通信データ(SPIデータ)を1つのデータに多重化する変換を行って、データ量を2倍に増加させて、SPIマスタ回路11に対応する通信速度で、SPIマスタ回路11に配信する。ここで、SPI分離多重変換回路3は、簡易な回路構成で実現することが可能であり、CPLD(Complex Programmable Logic Device:複合プログラマブルロジックデバイス)やLOGIC IC(Logic Integrated Circuit:論理集積回路)によって構成することが可能である。
なお、図1に示す構成例においては、高速側のSPIマスタ装置11のSPIデータの通信速度は、低速側のSPIスレーブ回路21、SPIスレーブ回路22それぞれの通信速度の2倍の速度であるものと仮定している。したがって、メイン制御ユニット1側に実装する1個のSPIマスタ回路11に対して、オプション制御ユニット2側には、2個のSPIスレーブ回路21およびSPIスレーブ回路22を搭載している。
一般に、メイン制御ユニット1側に実装する高速側のSPIマスタ装置のSPIデータの通信速度が、オプション制御ユニット2側に実装する低速側のSPIスレーブ回路の通信速度のn倍(n:2以上の正の整数)であった場合には、メイン制御ユニット側に実装する1個のSPIマスタ回路11に対して、SPI通信相手のオプション制御ユニット側には、n個のSPIスレーブ回路を搭載するように構成する。そして、SPI分離多重変換回路3は、SPIマスタ回路11からn個のSPIスレーブ回路それぞれへ向かう下り方向のシリアル通信データ(SPIデータ)に関しては、n個のデータに分離する変換を行って、それぞれのデータ量を(1/n)ずつに低下させて、各SPIスレーブ回路それぞれに対応する通信速度で、n個の各SPIスレーブ回路それぞれに配信する。一方、逆方向のn個のSPIスレーブ回路それぞれから1個のSPIマスタ回路へ向かう上り方向のシリアル通信データ(SPIデータ)に関しては、n個のSPIスレーブ回路22それぞれからのシリアル通信データ(SPIデータ)を1つのデータに多重化する変換を行って、データ量をn倍に増加させて、SPIマスタ回路に対応する通信速度で、SPIマスタ回路に配信する。
次に、図1に示すSPI分離多重変換回路3の内部構成について説明する。図2は、図1に示したSPI分離多重変換回路3の内部構成の一例を示すブロック構成図である。図2に示すように、SPI分離多重変換回路3は、簡易な回路構成からなっており、SPIクロック分周回路31、SPI上りデータ多重化回路32、SPI下りデータシフト回路33、および、SPIイネーブルバッファ回路34を含んで構成される。
また、メイン制御ユニット1に実装される高速側のSPIマスタ回路11のSPIバスを形成するSPI信号線は、図2に示すように、SPIマスタ回路11のクロック信号であるマスタ側クロック信号SCK(Serial Clock)と、SPIスレーブ回路21,22側から送信されてくる上りデータを示すマスタ側上りデータ信号MISO(Master In Slave Out)と、SPIスレーブ回路21,22へ送信する下りデータを示すマスタ側下りデータ信号MOSI(Master Out Slave In)と、SPIスレーブ回路21,22に関するイネーブル情報を送信するマスタ側スレーブ選択信号SS(Slave Select:マスタ側SPIイネーブル信号)と、の4種類の信号を伝送する4本の信号線からなっている。
一方、オプション制御ユニット2に実装される低速側のSPIスレーブ回路21,22のSPIバスを形成する信号線は、それぞれ、マスタ側クロック信号SCKを半分(1/2)ずつに分周したSPIスレーブ回路21,22それぞれのクロック信号である第1、第2のスレーブ側クロック信号SCK1,SCK2と、SPIマスタ回路11へ送信する上りデータを示す第1、第2のスレーブ側上りデータ信号MISO1,MISO2と、SPIマスタ回路11側から送信されてくる下りデータを示す第1、第2のスレーブ側下りデータ信号MOSI1,MOSI2と、SPIマスタ回路11からイネーブル情報を受け取る第1、第2のスレーブ側スレーブ選択信号SS1,SS2(すなわちスレーブ側SPIイネーブル信号)との4種類ずつの信号を伝送する4本ずつの信号線からなっている。
SPIクロック分周回路31は、高速側のSPIマスタ回路11のマスタ側クロック信号を、低速側のSPIスレーブ回路21,…,22との速度比n:1に応じて、(1/n)のクロック信号に分周し、かつ、(1/n)に分周した該クロック信号を位相調整して、低速側のSPIスレーブ回路21,…,22それぞれに供給すべきスレーブ側クロック信号として生成する回路であり、本実施形態においては、SPIマスタの回路11からのマスタ側クロック信号SCKを半分(1/2)ずつに分周した第1、第2のスレーブ側クロック信号SCK1,SCK2を作成して、SPIスレーブ回路21,22それぞれに供給する回路である。
SPI上りデータ多重化回路32は、n個のSPIスレーブ回路21,…,22それぞれから各スレーブ側クロック信号それぞれに同期して送信されてくるSPI上りデータを1つのデータに多重化して、SPIマスタ回路11の通信速度に合わせた速度で、SPIマスタ回路11に供給する回路であり、本実施形態においては、SPIクロック分周回路31が作成した第1のスレーブ側クロック信号SCK1を用いて、SPIスレーブ回路21,22それぞれから送信されてくる第1、第2のスレーブ側上りデータ信号MISO1,MISO2を、1つのデータに多重化して、1つのマスタ側上りデータ信号MISO(第1、第2のスレーブ側上りデータ信号MISO1,MISO2双方のデータ量を合計したデータ量のデータ信号)を生成して、SPIマスタ回路11のデータ通信速度に合わせた速度でSPIマスタ回路11に供給する回路である。
また、SPI下りデータシフト回路33(SPI下りデータ分離回路)は、SPIマスタ回路11からマスタ側クロック信号に同期して送信されてくるSPI下りデータをn個のデータに分離して、n個の各SPIスレーブ回路21,…,22の通信速度に合わせた速度で、n個のSPIスレーブ回路21,…,22それぞれに供給する回路であるが、本実施形態においては、SPIマスタ回路11から送信されてくるマスタ側下りデータ信号MOSIを、SPIクロック分周回路31が(1/2)に分周した第1、第2のスレーブ側クロック信号SCK1,SCK2それぞれに同期させるように、1/2周期ずらして、または、そのまま、SPIスレーブ回路21,22それぞれに第1、第2のスレーブ側下りデータ信号MOSI1,MOSI2として供給する回路として構成している。
なお、本実施形態においては、詳細は後述するが、SPIスレーブ回路21,22それぞれにおいては、第1、第2のスレーブ側クロック信号SCK1,SCK2それぞれの立下りのタイミングで、SPI下りデータシフト回路33から供給されてきた第1、第2のスレーブ側下りデータ信号MOSI1,MOSI2それぞれを受信するようにしており、これにより、第1、第2のスレーブ側下りデータ信号MOSI1,MOSI2として、マスタ側下りデータ信号MOSIをビット順に交互に2つに分離したデータ信号(マスタ側下りデータ信号MOSIの半分ずつのデータ量のデータ信号)が受信されることになる。
また、SPIイネーブルバッファ回路34は、SPIマスタ回路11のイネーブル信号を、通信相手となるn個のSPIスレーブ回路それぞれに供給する回路であり、本実施形態においては、SPIマスタ回路11のマスタ側イネーブル信号すなわちマスタ側スレーブ選択信号SSを、第1、第2のスレーブ側イネーブル信号すなわち第1、第2のスレーブ側スレーブ選択信号SS1,SS2として、SPIスレーブ回路21,22それぞれに供給する回路である。
次に、図2に例示したSPI分離多重変換回路3の内部構成に関する具体的な回路構成の一例について、図3を参照して説明する。図3は、図2に例示したSPI分離多重変換回路3の内部構成に関する具体的な回路構成の一例を示す回路構成図である。なお、図3に示す回路構成例においては、前提として、SPI分離多重変換回路3からの第1、第2のSPIスレーブ側下りデータ信号MOSI1,MOSI2それぞれに関しては、全て、第1、第2のスレーブ側クロック信号SCK1,SCK2それぞれの立下りのタイミングでSPIスレーブ回路21,22それぞれにて受信され、一方、第1、第2のスレーブ側SPI上りデータ信号MISO1,MISO2それぞれに関しては、第1、第2のスレーブ側クロック信号SCK1,SCK2それぞれの立上りのタイミングに同期して出力されるものとしている。
図3の回路構成に示すように、SPIクロック分周回路31は、2つのDフィリップフロップ311,312を用いて構成される。まず、マスタ側クロック信号SCKをDフリップフロップ311にて(1/2)に分周したクロック信号を生成して、第1のスレーブ側クロック信号SCK1として、SPIスレーブ回路21に対して出力する。また、第1のスレーブ側クロック信号SCK1をさらにDフリップフロップ312に入力して、マスタ側クロック信号SCKの立下りのタイミングまでシフトした(1/2)分周クロック信号を生成して、第2のスレーブ側クロック信号SCK2として、SPIスレーブ回路22に対して出力する。
また、SPI上りデータ多重化回路32は、セレクタ321を用いて構成され、SPIクロック分周回路31のDフリップフロップ311から出力される第1のスレーブ側クロック信号SCK1を、セレクタ321の選択信号として入力して、スレーブ側クロック信号SCK1の‘1’(High Level)と‘0’(Low Level)とのタイミングでセレクタ321を切り替えるように構成している。つまり、第1、第2のスレーブ側クロック信号SCK1,SCK2それぞれの立上りのタイミングでSPIスレーブ回路21,22それぞれから送信されてくる第1、第2のスレーブ側上りデータ信号MISO1,MISO2のいずれかを、セレクタ321にて第1のスレーブ側クロック信号SCK1の‘1’ (High Level)と‘0’(Low Level)とのタイミングに応じてビットごとに交互に選択することにより多重化し、1つのマスタ側データ信号MISO(第1、第2のスレーブ側上りデータ信号MISO1,MISO2双方を合計したデータ量のデータ信号)として生成して、SPIマスタ回路11の通信速度に合わせた速度でSPIマスタ回路11に対して出力する。
また、SPI下りデータシフト回路33は、Dフリップフロップ331を用いて構成され、マスタ側クロック信号SCKの立上りのタイミングでSPIマスタ回路11から出力されたマスタ側データ信号MOSIをDフリップフロップ331にてマスタ側クロック信号SCKの立下り位置まで位相シフトした信号に変換して、SPIスレーブ回路21向けの第1のスレーブ側SPI下りデータ信号MOSI1として生成して、SPIスレーブ回路21に対して出力する。また、SPIスレーブ回路22向けの第2のスレーブ側SPI下りデータ信号MOSI2については、マスタ側データ信号MOSIをそのまま出力する。
ここで、前述したように、SPI分離多重変換回路3からの第1、第2のSPIスレーブ側下りデータ信号MOSI1,MOSI2それぞれは、第1、第2のスレーブ側クロック信号SCK1,SCK2の立下りのタイミングでSPIスレーブ回路21,22それぞれにて受信するように構成されている。したがって、詳細は後述するが、SPIスレーブ回路21,22それぞれにおいては、SPIマスタ回路11から出力されたマスタ側データ信号MOSIの互いに異なるビット位置のデータをビットごとに交互に選択することになる。その結果、SPIスレーブ回路21,22それぞれは、マスタ側データ信号MOSIの半分ずつのデータ量のデータを分離して受信することになり、SPIスレーブ回路21,22それぞれの通信速度で受信していることになる。
SPIイネーブルバッファ回路34は、マスタ側SPIイネーブル信号SSを、そのまま、SPIスレーブ回路21向けの第1のスレーブ側イネーブル信号SS1およびSPIスレーブ回路22向けの第2のスレーブ側イネーブル信号SS2として、それぞれ、SPIスレーブ回路21およびSPIスレーブ回路22に対して出力する。
(実施形態の動作の説明)
次に、図1〜図3に一実施形態の構成例として例示したSPI分離多重変換回路3の動作について詳細に説明する。図4は、図3に示したSPI分離多重変換回路3の動作の一例を示すタイミングチャートである。
次に、図1〜図3に一実施形態の構成例として例示したSPI分離多重変換回路3の動作について詳細に説明する。図4は、図3に示したSPI分離多重変換回路3の動作の一例を示すタイミングチャートである。
前述したように、SPI分離多重変換回路3、SPIマスタ回路11およびSPIスレーブ回路21,22それぞれにおける基本的な動作として、マスタ側SPI上りデータ信号MISO、第1、第2のスレーブ側SPI上りデータ信号MISO1,MISO2は、全て、それぞれ、マスタ側クロック信号SCK、第1、第2のスレーブ側クロック信号SCK1,SCK2の立上りに同期したタイミングで出力されるように動作する。
すなわち、SPI上りデータ信号の出力タイミングに関しては、図4のタイミングチャートに示すように、SPI分離多重変換回路3からSPIマスタ回路11に出力されるマスタ側SPI上りデータ信号MISO、SPIスレーブ回路21からSPI分離多重変換回路3に出力される第1のスレーブ側SPI上りデータ信号MISO1、SPIスレーブ回路22からSPI分離多重変換回路3に出力される第2のスレーブ側SPI上りデータ信号MISO2、のそれぞれは、マスタ側クロック信号SCK、第1、第2のスレーブ側クロック信号SCK1,SCK2の立上りに同期したタイミングで、SPI分離多重変換回路3、SPIスレーブ回路21、SPIスレーブ回路22のそれぞれから出力される。
なお、SPIマスタ回路11からSPI分離多重変換回路3に出力されるマスタ側SPI下りデータ信号MOSIの出力タイミングについても、同様であり、マスタ側クロック信号SCKの立上りに同期したタイミングで、SPIマスタ回路11から出力される。
一方、SPI下りデータ信号の受信タイミングに関しては、SPI分離多重変換回路3からSPIスレーブ回路21に出力される第1のスレーブ側SPI下りデータ信号MOSI1、SPI分離多重変換回路3からSPIスレーブ回路22に出力される第2のスレーブ側SPI下りデータ信号MOSI2は、それぞれ、第1、第2のスレーブ側クロック信号SCK1,SCK2の立下りに同期したタイミングでSPIスレーブ回路21,22それぞれにおいて受信されるように動作する。
すなわち、SPI下りデータ信号の受信タイミングに関しては、図4のタイミングチャートに示すように、SPIマスタ回路11からマスタ側クロックSCKの立上りのタイミングでSPI分離多重変換回路3に出力されるマスタ側SPI下りデータ信号MOSIが、SPI分離多重変換回路3において第1、第2のスレーブ側SPI下りデータ信号MOSI1,MOSI2それぞれに分離されて、SPIスレーブ回路21、SPIスレーブ回路22それぞれに出力される。しかる後、第1、第2のスレーブ側SPI下りデータ信号MOSI1,MOSI2それぞれは、第1、第2のスレーブ側クロック信号SCK1,SCK2の立下りにそれぞれ同期したタイミングで、SPIスレーブ回路21、SPIスレーブ回路22それぞれにおいて受信される。
なお、SPI分離多重変換回路3からSPIマスタ回路11に出力されるマスタ側SPI上りデータ信号MISOの受信タイミングについても、同様であり、SPIスレーブ回路21、SPIスレーブ回路22のそれぞれから第1、第2のスレーブ側クロック信号SCK1,SCK2それぞれの立上りのタイミングでSPI分離多重変換回路3に出力される第1、第2のスレーブ側SPI上りデータ信号MISO1,MISO2は、SPI分離多重変換回路3においてマスタ側SPI上りデータ信号MISOとして多重化され、しかる後、マスタ側クロック信号SCKの立下りに同期したタイミングで、SPIマスタ回路11において受信される。
また、マスタ側スレーブ選択信号SS、第1、第2のスレーブ側スレーブ選択信号SS1,SS2は、いずれも、‘0’(Low Level)がイネーブル状態であり、図4のタイミングチャートにおいては、マスタ側スレーブ選択信号SSが‘0’(Low Level)にあり、したがって、マスタ側スレーブ選択信号SSがそのままSPI分離多重変換回路3から出力される第1、第2のスレーブ側スレーブ選択信号SS1,SS2についても、‘0’(Low Level)にあって、SPIマスタ回路11および通信相手のSPIスレーブ回路21,22のいずれもイネーブル状態であることを示している。
また、図3において説明したように、SPIマスタ回路11から出力されたマスタ側クロック信号SCKは、SPIクロック分周回路31のDフリップフロップ311に入力されて、Dフリップフロップ311にて(1/2)に分周されて、第1のスレーブ側クロック信号SCK1として生成され、図4のタイミングチャートに示すように、立上りのタイミングがマスタ側クロック信号SCKの立上りのタイミングに一致した状態で、SPIスレーブ回路21に対して出力される。
また、Dフリップフロップ311から出力される第1のスレーブ側クロック信号SCK1は、さらに、Dフリップフロップ312に入力されて、Dフリップフロップ312にてマスタ側クロック信号SCKの(1/2)周期分だけ位相をシフトさせ、図4のタイミングチャートに示すように、立上りのタイミングがマスタ側クロック信号SCKの立下りのタイミングにシフトした(1/2)分周クロック信号を生成して、第2のスレーブ側クロック信号SCK2として、SPIスレーブ回路22に対して出力する。
また、SPIスレーブ回路21,22それぞれから出力される第1、第2のスレーブ側SPI上りデータ信号MISO1,MISO2は、図4のタイミングチャートに示すように、それぞれ、第1、第2のスレーブ側クロック信号SCK1,SCK2の立上りのタイミングにてSPI分離多重変換回路3のSPI上りデータ多重化回路32に対して出力される。ここで、SPI上りデータ多重化回路32においては、図3にて説明したように、Dフリップフロップ311から出力される第1のスレーブ側クロック信号SCK1の‘1’(High Level)と‘0’(Low Level)のタイミングでセレクタ321の選択動作が切り替わる。
したがって、第1のスレーブ側クロック信号SCK1が‘1’ (High Level)の間は、第1のスレーブ側SPI上りデータ信号MISO1がセレクタ321から出力され、第1のスレーブ側クロック信号SCK1が‘0’(Low Level)の間は、第2のスレーブ側SPI上りデータ信号MISO2がセレクタ321から出力されることになる。その結果、第1、第2のスレーブ側SPI上りデータ信号MISO1,MISO2の双方がビットごとに交互に多重化されて、SPIマスタ回路11へ送信すべきシリアル通信(SPI)上りデータが生成される。しかる後、図4のタイミングチャートに示すように、マスタ側上りデータ信号MISOとして、立上りのタイミングをマスタ側クロック信号SCKの立上りのタイミングに合わせて、SPIマスタ回路11に対して出力される。
また、SPIマスタ回路11から出力されるマスタ側SPI上りデータ信号MOSIは、図4のタイミングチャートに示すように、マスタ側クロック信号SCKの立上りのタイミングにてSPI分離多重変換回路3のSPI下りデータ多重化回路33に対して出力される。ここで、SPI下りデータ多重化回路33においては、図3にて説明したように、Dフリップフロップ331に入力されてマスタ側クロック信号SCKの立下りのタイミングまでシフトさせたデータ信号と、マスタ側SPI上りデータ信号MOSIをそのまま通過させたデータ信号と、の2つのデータ信号に分離される。
そして、SPI下りデータ多重化回路33においてマスタ側クロック信号SCKの立下りのタイミングまでシフトさせたデータ信号は、図4のタイミングチャートに示すように、第1のスレーブ側下りデータ信号MOSI1として、SPIスレーブ回路21に対して出力される。一方、SPI下りデータ多重化回路33においてそのまま通過したデータ信号は、図4のタイミングチャートに示すように、第2のスレーブ側下りデータ信号MOSI2として、SPIスレーブ回路22に対して出力される。
なお、マスタ側SPIイネーブル信号SSは、図3において説明したように、SPI分離多重変換回路3のSPIイネーブルバッファ回路34を経由して、そのまま、第1、第2のスレーブ側SPIイネーブル信号SS1,SS2として、SPIスレーブ回路21,22それぞれに対して出力される。
次に、図2、図3に示すようなSPI分離多重変換回路3を備えた情報処理装置におけるシリアル通信データ(SPIデータ)信号の変換動作について、図5の説明図を参照してさらに詳細に説明する。図5は、図3に示したSPI分離多重変換回路3を備えた情報処理装置におけるシリアル通信データ(SPIデータ)の変換動作の一例を説明するための説明図であり、マスタ側SPI下りデータ信号MOSIを第1、第2のスレーブ側SPI下りデータ信号MOSI1,MOSI2それぞれに分離するデータ変換例と、第1、第2のスレーブ側SPI上りデータ信号MISO1,MISO2それぞれを多重化してマスタ側上りデータ信号MISOに変換するデータ変換例と、について示している。
なお、図5に示す説明図においては、SPIマスタ回路11側が送受信するシリアル通信(SPI)データ信号のデータ長が、MSB(Most Significant Bit)側の第15ビット目(B15)からLSB(Least Significant Bit)側の第0ビット目(B0)までの16ビットであり、一方、SPIスレーブ回路21,22側が送受信するシリアル通信(SPI)データ信号のデータ長が、いずれも、SPIマスタ回路11側が送受信するSPIデータ信号のデータ長の半分(1/2)であり、MSB側の第7ビット目(B7)からLSB側の第0ビット目(B0)までの8ビットの場合のデータ例について表示している。なお、ここでは、図5に例示するように、分離変換対象となるマスタ側SPI下りデータ信号MOSIが、16進数表現で‘2C48h’の16ビットであり、多重化変換対象となる第1、第2のスレーブ側SPI上りデータ信号MISO1,MISO2が、それぞれ、16進数表現で‘55h’,‘55h’の8ビットずつであった場合について説明している。
まず、分離変換対象となるマスタ側SPI下りデータ信号MOSIの‘2C48h’の16ビットデータに関しては、図3、図4において説明したように、マスタ側クロック信号SCKの立上りタイミングで、SPI分離多重変換回路3に出力される。しかる後、SPI分離多重変換回路3のSPI下りデータシフト回路33において、マスタ側クロック信号SCKの立下りのタイミングまでシフトさせたデータ信号の第1のスレーブ側SPI下りデータ信号MOSI1と、そのまま通過したデータ信号の第2のスレーブ側SPI下りデータ信号MOSI2との2つに分離されて、SPIスレーブ回路21とSPIスレーブ回路22とにそれぞれ出力される。
マスタ側クロック信号SCKの(1/2)に分周された第1のスレーブ側クロック信号SCK1の立下りタイミングにて受信動作するSPIスレーブ回路21においては、第1のスレーブ側SPI下りデータ信号MOSI1として、マスタ側SPI下りデータ信号MOSIの‘2C48h’の16ビットデータをマスタ側クロック信号SCKの立下りのタイミングまでシフトさせたデータ信号を受信することになる。
したがって、図4のタイミングチャートに示したように、マスタ側SPI下りデータ信号MOSIの‘2C48h’の16ビットのデータのうち、第14ビット目(B14)の‘0’、第12ビット目(B12)の‘0’、第10ビット目(B10)の‘1’、…、第2ビット目(B2)の‘0’、第0ビット(B0)の‘0’と、1ビット飛びに受信し、その結果として、SPIスレーブ回路21は、図5の「MOSI1(スレーブ側SPI下りデータ1)」欄に示すように、第7ビット目(B7)〜第0ビット目(B0)まで、‘00101000b’すなわち16進数表示で‘28h’の8ビットのデータを受信する。
一方、マスタ側クロック信号SCKの(1/2)に分周され、かつ、マスタ側クロック信号SCKから(1/2)周期分だけ位相シフトされた第2のスレーブ側クロック信号SCK2の立下りタイミングにて受信動作するSPIスレーブ回路22においては、第2のスレーブ側SPI下りデータ信号MOSI2として、マスタ側SPI下りデータ信号MOSIの‘2C48h’の16ビットデータをそのまま受信することになる。
したがって、図4のタイミングチャートに示したように、マスタ側SPI下りデータ信号MOSIの‘2C48h’の16ビットのデータのうち、第15ビット目(B15)の‘0’、第13ビット目(B13)の‘1’、第11ビット目(B11)の‘1’、…、第3ビット目(B3)の‘1’、第1ビット(B1)の‘0’と、SPIスレーブ回路21側とは異なるビット位置において1ビット飛びに受信し、その結果として、SPIスレーブ回路22は、図5の「MOSI2(スレーブ側SPI下りデータ2)」欄に示すように、第7ビット目(B7)〜第0ビット目(B0)まで、‘01100010b’すなわち16進数表示で‘62h’の8ビットのデータを受信する。
しかる後、SPIスレーブ回路21,22を搭載しているオプション制御ユニット2においては、SPIスレーブ回路21が受信した‘28h’の8ビットのデータとSPIスレーブ回路22が受信した‘62h’の8ビットのデータとを、ビット単位の交互の再組み合わせを行うことにより、SPIマスタ回路11が出力した本来の‘2C48h’の16ビットのデータに復元する。
次に、多重化変換対象となる第1のスレーブ側SPI上りデータ信号MISO1の‘55h’と第2のスレーブ側SPI上りデータ信号MISO2の‘55h’とに関しては、図3、図4において説明したように、それぞれ、第1、第2のスレーブ側クロック信号SCK1,SCK2の立上りタイミングで、SPI分離多重変換回路3に出力される。しかる後、SPI分離多重変換回路3のSPI上りデータ多重化回路32においては、SPIスレーブ回路211のクロック信号である第1のスレーブ側クロック信号SCK1の‘1’(High Level)、‘0’(Low Level)に応じて選択動作を行うセレクタ321によって、第1、第2のスレーブ側SPI上りデータ信号MISO1,MISO2のうちいずれか一方がビット単位に交互に選択されることにより、多重化される。すなわち、第1のスレーブ側クロック信号SCK1が‘1’(High Level)の間は第1のスレーブ側SPI上りデータ信号MISO1を選択し、第1のスレーブ側クロック信号SCK1が‘0’(Low Level)の間は第2のスレーブ側SPI上りデータ信号MISO2を選択して、マスタ側上りデータ信号MISOとして、SPIマスタ回路11に出力する。SPIマスタ回路11は、マスタ側クロック信号SCKの立下りタイミングで、マスタ側SPI上りデータ信号MISOを受信する。
したがって、例えば、SPIマスタ回路11にて、マスタ側SPI上りデータ信号MISOとして、16進数表示で‘3333h’のデータを受信させようとする場合には、ビット単位に分離演算を実施することにより、SPIスレーブ回路21,22それぞれから、第1のスレーブ側SPI上りデータ信号MISO1として16進数表示で‘55h’のデータを、また、第2のスレーブ側SPI上りデータ信号MISO2としても同様に16進数表示で‘55hのデータを出力すれば良いことになる。すなわち、第1のスレーブ側SPI上りデータ信号MISO1の‘55h’と第2のスレーブ側SPI上りデータ信号MISO2の‘55h’との8ビットデータそれぞれをSPIスレーブ回路211、SPIスレーブ回路221それぞれから出力すれば良い。
該8ビットデータそれぞれを受信すると、SPI分離多重変換回路3は、SPI上りデータ多重化回路32から出力されるマスタ側SPI上りデータ信号MISOとして、図4のタイミングチャートに示したように、第1のスレーブ側SPI上りデータ信号MOSI1の‘55h’の第7ビット目(B7)の‘0’、第6ビット目(B6)の‘1’、第5ビット目(B5)の‘0’、…、第1ビット目(B1)の‘0’、第0ビット(B0)の‘1’と、第2のスレーブ側SPI上りデータ信号MOSI2の‘55h’の第7ビット目(B7)の‘0’、第6ビット目(B6)の‘1’、第5ビット目(B5)の‘0’、…、第1ビット目(B1)の‘0’、第0ビット(B0)の‘1’と、を各ビットごとに交互にSPIマスタ回路11に対して出力する。
その結果、SPIマスタ回路11は、図5の「MISO(マスタ側SPI上りデータ)」欄に示すように、第15ビット目(B15)〜第0ビット目(B0)まで、‘0011001100110011b’すなわち16進数表示で‘3333h’の16ビットのデータを受信することになる。
以上に詳細に説明したような動作を行うことによって、メイン制御ユニット1の高速のSPIマスタ回路11とオプション制御ユニット2の低速のSPIスレーブ回路21,22との間のSPI通信を、高速のSPIマスタ回路11に合わせた通信速度で実施することが可能になる。
なお、本実施形態においては、SPIマスタ回路11の通信速度がSPIスレーブ回路21,22の各通信速度の2倍の速度である場合について説明したが、本発明は、かかる場合のみに限るものではない。すなわち、例えば、高速シリアル通信デバイスすなわちSPIマスタ回路の通信速度が、オプション制御ユニット2側の低速シリアル通信デバイスすなわちSPIスレーブ回路の通信速度のn倍(n:2以上の正の整数)であった場合には、該オプション制御ユニット2側にはn個の低速シリアル通信デバイスすなわちSPIスレーブ回路を実装し、SPI分離多重変換回路3において、SPI下りデータに関してはn個のデータに分離変換し、SPI上りデータに関してはn個のデータを1つのデータに多重化変換するように構成すれば良い。
また、本実施形態においては、1個のメイン制御ユニットと1個のオプション制御ユニット2とから構成される情報処理装置を例にとって説明したが、1個のメイン制御ユニットと1ないし複数個のオプション制御ユニットとから構成される場合であっても、あるいは、任意の制御ユニット同士であっても、マスタ・スレーブ形式のクロック同期式のSPI回路(つまりSPIバスシステム)を備えた制御ユニットで構成されている限り、全く同様に、本実施形態を適用することができる。
(実施形態の効果の説明)
以上に詳細に説明したように、本実施形態によれば、次のような効果が得られる。すなわち、マスタ・スレーブ形式の同期式シリアル通信用のバスシステムの一つであるSPI(Serial Peripheral Interface)バス形式のバスシステムを備えた情報処理装置において、高速のSPIマスタ回路11と低速のSPIスレーブ回路21,22とのように、異なった通信速度を有する2つの制御ユニット(CPU)の内部周辺回路間をSPI回路/同期式シリアル通信にて通信を行う場合、通常の通信方法のままでは、通信速度の遅い低速側に通信速度が制限されてしまい、想定した設計通りのパフォーマンスを実現することができなくなる場合があった。
以上に詳細に説明したように、本実施形態によれば、次のような効果が得られる。すなわち、マスタ・スレーブ形式の同期式シリアル通信用のバスシステムの一つであるSPI(Serial Peripheral Interface)バス形式のバスシステムを備えた情報処理装置において、高速のSPIマスタ回路11と低速のSPIスレーブ回路21,22とのように、異なった通信速度を有する2つの制御ユニット(CPU)の内部周辺回路間をSPI回路/同期式シリアル通信にて通信を行う場合、通常の通信方法のままでは、通信速度の遅い低速側に通信速度が制限されてしまい、想定した設計通りのパフォーマンスを実現することができなくなる場合があった。
これに対して、本実施形態のごとく、異なった通信速度を有する2つの制御ユニット(CPU)の内部周辺回路間を、SPI分離多重変換回路3を介してバス接続するとともに、通信速度が低速の制御ユニット側には低速シリアル通信デバイスすなわちSPIスレーブ回路をn個(すなわち高速側の制御ユニットの通信速度との速度比n:1に応じた個数)実装して、シリアル通信データの分離/多重化変換を行う仕組みを採用することにより、高速側の通信速度でシリアル通信を実現することが可能になり、情報処理装置全体のシステム動作パフォーマンスを大幅に改善することができる。
また、SPI分離多重変換回路3は、簡易な回路構成で実現することができるので、論理集積回路(LOGIC IC)やCPLD(Complex Programmable Logic Device:複合プログラマブルロジックデバイス)を用いて簡単かつ安価に実現することができる。
以上、本発明の好適な実施形態の構成を説明した。しかし、かかる実施形態は、本発明の単なる例示に過ぎず、何ら本発明を限定するものではないことに留意されたい。本発明の要旨を逸脱することなく、特定用途に応じて種々の変形変更が可能であることが、当業者には容易に理解できよう。
1 メイン制御ユニット(メインCPU)
2 オプション制御ユニット(サブCPU)
3 SPI分離多重変換回路
31 SPIクロック分周回路
32 SPI上りデータ多重化回路
33 SPI下りデータシフト回路
34 SPIイネーブルバッファ回路
11 SPIマスタ回路
21 SPIスレーブ回路
22 SPIスレーブ回路
311 Dフリップフロップ
312 Dフリップフロップ
321 セレクタ
331 Dフリップフロップ
2 オプション制御ユニット(サブCPU)
3 SPI分離多重変換回路
31 SPIクロック分周回路
32 SPI上りデータ多重化回路
33 SPI下りデータシフト回路
34 SPIイネーブルバッファ回路
11 SPIマスタ回路
21 SPIスレーブ回路
22 SPIスレーブ回路
311 Dフリップフロップ
312 Dフリップフロップ
321 セレクタ
331 Dフリップフロップ
Claims (9)
- マスタ・スレーブ形式の同期式シリアル通信用のバスシステムの一つであるSPI(Serial Peripheral Interface)バス形式のバスシステムを用いて、メイン制御ユニットに実装された高速のSPIマスタ回路と1ないし複数のオプション制御ユニットに実装された低速のSPIスレーブ回路それぞれとの間を相互に接続して構成する情報処理装置において、前記SPIマスタ回路の通信速度が前記SPIスレーブ回路に比してn倍(n:2以上の正の整数)の速度であった場合、高速側の前記SPIマスタ回路と低速側の前記SPIスレーブ回路との速度比n:1に応じて、前記オプション制御ユニット側に、前記SPIスレーブ回路をn個搭載し、かつ、前記SPIマスタ回路とn個の前記SPIスレーブ回路それぞれとの間の接続を、前記SPIマスタ回路からのシリアル通信データをn個のデータに分離変換するとともに、n個の前記SPIスレーブ回路それぞれからのシリアル通信データを1個のデータに多重化変換するSPI分離多重変換回路を介して接続することを特徴とする情報処理装置。
- 前記SPI分離多重変換回路は、前記SPIマスタ回路からn個の前記SPIスレーブ回路それぞれへ向かう下り方向のシリアル通信データに関しては、n個のデータに分離する変換を行って、n個の前記SPIスレーブ回路それぞれに対応する通信速度で、前記SPIスレーブ回路それぞれに配信し、一方、n個の前記SPIスレーブ回路それぞれから前記SPIマスタ回路へ向かう上り方向のシリアル通信データに関しては、n個の前記SPIスレーブ回路それぞれからのシリアル通信データを1つのデータに多重化する変換を行って、前記SPIマスタ回路に対応する通信速度で、前記SPIマスタ回路に配信することを特徴とする請求項1に記載の情報処理装置。
- 前記SPI分離多重変換回路は、高速側の前記SPIマスタ回路のマスタ側クロック信号を、低速側の前記SPIスレーブ回路との速度比n:1に応じて、(1/n)のクロック信号に分周し、かつ、(1/n)に分周した該クロック信号を位相調整して、n個の前記SPIスレーブ回路それぞれに供給すべきスレーブ側クロック信号として生成するSPIクロック分周回路と、n個の前記SPIスレーブ回路それぞれから前記スレーブ側クロック信号それぞれに同期して送信されてくるシリアル通信上りデータを1つのデータに多重化して、前記SPIマスタ回路の通信速度に合わせた速度で、前記SPIマスタ回路に供給するSPI上りデータ多重化回路と、前記SPIマスタ回路から前記マスタ側クロック信号に同期して送信されてくるシリアル通信下りデータをn個のデータに分離して、n個の前記SPIスレーブ回路それぞれの通信速度に合わせた速度で、n個の前記SPIスレーブ回路それぞれに供給するSPI下りデータ分離回路と、前記SPIマスタ回路のイネーブル信号を、通信相手となるn個の前記SPIスレーブ回路それぞれに供給するSPIイネーブルバッファ回路と、を含んで構成されることを特徴とする請求項2に記載の情報処理装置。
- 高速側の前記SPIマスタ回路と低速側の前記SPIスレーブ回路との速度比n=2であった場合、前記SPI分離多重変換回路の前記SPIクロック分周回路は、前記SPIマスタ回路の前記マスタ側クロック信号を(1/2)に分周したクロック信号を第1のスレーブ側クロック信号として生成し、かつ、該第1のスレーブ側クロック信号を、前記マスタ側クロック信号の(1/2)周期分、位相をシフトしたクロック信号を第2のスレーブ側クロック信号として生成して、2個の前記SPIスレーブ回路それぞれの前記スレーブ側クロック信号として供給し、かつ、前記SPIマスタ回路は、前記マスタ側クロック信号の立上りに同期したタイミングで、シリアル通信下りデータを出力し、かつ、2個の前記SPIスレーブ回路それぞれは、それぞれの前記スレーブ側クロック信号の立上りに同期したタイミングで、シリアル通信上りデータを出力することを特徴とする請求項3に記載の情報処理装置。
- 前記SPI分離多重変換回路の前記SPI上りデータ多重化回路は、2個の前記SPIスレーブ回路それぞれから、それぞれの前記スレーブ側クロック信号の立上りに同期したタイミングで送信されてきた2個のシリアル通信上りデータのいずれかの一方のデータを、2つの前記スレーブ側クロック信号のうち前記第1のスレーブ側クロック信号の‘1’(High Level)と‘0’(Low Level)とに応じて切り替えて選択することにより多重化して、1個のシリアル通信データを生成して、前記SPIマスタ回路の通信速度に合わせた速度で、前記SPIマスタ回路に供給することを特徴とする請求項4に記載の情報処理装置。
- 前記SPI分離多重変換回路の前記SPI下りデータ分離回路は、前記SPIマスタ回路から出力されたシリアル通信下りデータを、前記マスタ側クロック信号の(1/2)周期分だけ位相をシフトしたデータを、第1のスレーブ側シリアル通信下りデータとして生成して、前記第1のスレーブ側クロック信号を供給している前記SPIスレーブ装置に対して出力し、かつ、前記SPIマスタ回路から出力されたシリアル通信下りデータをそのまま通過させたデータを、第2のスレーブ側シリアル通信下りデータとして、前記第2のスレーブ側クロック信号を供給している前記SPIスレーブ装置に対して出力し、かつ、2個の前記SPIスレーブ回路それぞれは、送信されてきた前記第1のスレーブ側シリアル通信下りデータ、前記第2のスレーブ側シリアル通信下りデータそれぞれを、前記第1のスレーブ側クロック信号、前記第2のスレーブ側クロック信号それぞれの立下りに同期したタイミングで受信することを特徴とする請求項4または5に記載の情報処理装置。
- 前記SPI分離多重変換回路は、論理集積回路(LOGIC IC)やCPLD(Complex Programmable Logic Device:複合プログラマブルロジックデバイス)により構成されることを特徴とする請求項1ないし6のいずれかに記載の情報処理装置。
- マスタ・スレーブ形式の同期式シリアル通信用のバスシステムの一つであるSPI(Serial Peripheral Interface)バス形式のバスシステムを用いて、メイン制御ユニットに実装された高速のSPIマスタ回路と1ないし複数のオプション制御ユニットに実装された低速のSPIスレーブ回路それぞれとの間を相互に接続して構成する情報処理装置において、前記SPIマスタ回路と前記SPIスレーブ回路との間で転送されるシリアル通信データの分離・多重化を行うシリアル通信データ分離多重変換方法であって、前記SPIマスタ回路の通信速度が前記SPIスレーブ回路に比してn倍(n:2以上の正の整数)の速度であった場合、高速側の前記SPIマスタ回路と低速側の前記SPIスレーブ回路との速度比n:1に応じて、前記オプション制御ユニット側に、前記SPIスレーブ回路をn個搭載し、かつ、前記SPIマスタ回路からのシリアル通信データをn個のデータに分離変換して、n個に分離したそれぞれのデータを、前記SPIスレーブ回路それぞれに対応する通信速度で、n個の前記SPIスレーブ回路それぞれに供給するとともに、n個の前記SPIスレーブ回路それぞれからのシリアル通信データを1個のデータに多重化変換して、前記SPIマスタ回路に対応する通信速度で、前記SPIマスタ回路に供給することを特徴とするシリアル通信データ分離多重変換方法。
- 高速側の前記SPIマスタ回路のマスタ側クロック信号を、低速側の前記SPIスレーブ回路との速度比n:1に応じて、(1/n)のクロック信号に分周し、かつ、(1/n)に分周した該クロック信号を位相調整して、n個の前記SPIスレーブ回路それぞれに供給すべきスレーブ側クロック信号として生成するSPIクロック分周ステップと、n個の前記SPIスレーブ回路それぞれから前記スレーブ側クロック信号に同期して送信されてくるシリアル通信上りデータを1つのデータに多重化して、前記SPIマスタ回路の通信速度に合わせた速度で、前記SPIマスタ回路に供給するSPI上りデータ多重化ステップと、前記SPIマスタ回路から前記マスタ側クロック信号に同期して送信されてくるシリアル通信下りデータをn個のデータに分離して、n個の前記SPIスレーブ回路それぞれの通信速度に合わせた速度で、n個の前記SPIスレーブ回路それぞれに供給するSPI下りデータ分離ステップと、前記SPIマスタ回路のイネーブル信号を、通信相手となるn個の前記SPIスレーブ回路それぞれに供給するSPIイネーブルバッファリングステップと、を含んで構成されることを特徴とする請求項8に記載のシリアル通信データ分離多重変換方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015220950A JP6090873B1 (ja) | 2015-11-11 | 2015-11-11 | 情報処理装置およびシリアル通信データ分離多重変換方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015220950A JP6090873B1 (ja) | 2015-11-11 | 2015-11-11 | 情報処理装置およびシリアル通信データ分離多重変換方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP6090873B1 JP6090873B1 (ja) | 2017-03-08 |
JP2017091237A true JP2017091237A (ja) | 2017-05-25 |
Family
ID=58261806
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015220950A Active JP6090873B1 (ja) | 2015-11-11 | 2015-11-11 | 情報処理装置およびシリアル通信データ分離多重変換方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6090873B1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111522769A (zh) * | 2020-03-26 | 2020-08-11 | 成都天箭科技股份有限公司 | 一种多线程spi通信数据传输方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4141373B2 (ja) * | 2003-11-05 | 2008-08-27 | 株式会社日立製作所 | 通信システム、リアルタイム制御装置及び情報処理システム |
US7782805B1 (en) * | 2005-02-08 | 2010-08-24 | Med Belhadj | High speed packet interface and method |
JP2006304011A (ja) * | 2005-04-21 | 2006-11-02 | Casio Electronics Co Ltd | インタフェース回路 |
JP5168020B2 (ja) * | 2008-08-06 | 2013-03-21 | 富士通株式会社 | インターフェース回路 |
JP5536023B2 (ja) * | 2011-12-13 | 2014-07-02 | Necインフロンティア株式会社 | バスシステムおよび情報処理機器 |
US9176919B2 (en) * | 2012-06-06 | 2015-11-03 | Honeywell International Inc. | Process controller having multi-channel serial communications link |
US9753487B2 (en) * | 2013-03-14 | 2017-09-05 | Micron Technology, Inc. | Serial peripheral interface and methods of operating same |
-
2015
- 2015-11-11 JP JP2015220950A patent/JP6090873B1/ja active Active
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111522769A (zh) * | 2020-03-26 | 2020-08-11 | 成都天箭科技股份有限公司 | 一种多线程spi通信数据传输方法 |
CN111522769B (zh) * | 2020-03-26 | 2023-05-26 | 成都天箭科技股份有限公司 | 一种多线程spi通信数据传输方法 |
Also Published As
Publication number | Publication date |
---|---|
JP6090873B1 (ja) | 2017-03-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR200289028Y1 (ko) | 하이브리드 병렬/직렬 버스 인터페이스를 구비하는 기지국 | |
US7657676B2 (en) | Integrated circuit device and signal transmission system | |
JPS63238714A (ja) | クロック供給システム | |
US8593313B2 (en) | Parallel-to-serial conversion circuit, information processing apparatus, information processing system, and parallel-to-serial conversion method | |
JP4681658B2 (ja) | クロック制御回路及び送信機 | |
JP6090873B1 (ja) | 情報処理装置およびシリアル通信データ分離多重変換方法 | |
CN103592594B (zh) | 电路测试系统及电路测试方法 | |
US20120306893A1 (en) | Pre-emphasis control circuit | |
US10892775B1 (en) | Transmitting system, apparatus and method for unifying parallel interfaces | |
JP5610540B2 (ja) | シリアル通信用インターフェース回路及びパラレルシリアル変換回路 | |
US9740235B1 (en) | Circuits and methods of TAF-DPS based interface adapter for heterogeneously clocked Network-on-Chip system | |
CN105306421A (zh) | 一种基于pci-e接口的信号处理方法及信号处理装置 | |
JP5536023B2 (ja) | バスシステムおよび情報処理機器 | |
CN218181513U (zh) | 一种i2s主从模式控制电路 | |
JP6503880B2 (ja) | 差動伝送回路、撮像装置、画像読取装置及び画像形成装置 | |
US6606675B1 (en) | Clock synchronization in systems with multi-channel high-speed bus subsystems | |
CN114020669A (zh) | 一种基于cpld的i2c链路系统及服务器 | |
JP6121690B2 (ja) | クロック並走型シリアライザ回路 | |
JP4464605B2 (ja) | 光送信装置及びそれに用いられる符号変換回路 | |
JP2007312321A (ja) | シリアル・パラレル変換用の半導体集積回路 | |
CN112292848A (zh) | 视频源扩展方法、装置、系统及视频源扩展器 | |
CN114556870B (zh) | 一种数据同步的方法以及装置 | |
CN108932210B (zh) | 串行周边接口的数据传送装置与数据接收装置 | |
CN105140746A (zh) | 一种插槽扩展装置 | |
JP2003273852A (ja) | 半導体集積回路装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20161208 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20170110 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170202 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6090873 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |