JP6260965B2 - Spi通信を用いたマスター回路及びスレーブ回路 - Google Patents

Spi通信を用いたマスター回路及びスレーブ回路 Download PDF

Info

Publication number
JP6260965B2
JP6260965B2 JP2013167567A JP2013167567A JP6260965B2 JP 6260965 B2 JP6260965 B2 JP 6260965B2 JP 2013167567 A JP2013167567 A JP 2013167567A JP 2013167567 A JP2013167567 A JP 2013167567A JP 6260965 B2 JP6260965 B2 JP 6260965B2
Authority
JP
Japan
Prior art keywords
data
response data
unit
response
bit value
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.)
Expired - Fee Related
Application number
JP2013167567A
Other languages
English (en)
Other versions
JP2015037211A (ja
Inventor
勝紀 渡辺
勝紀 渡辺
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
L E Tech CO Ltd
Original Assignee
L E Tech CO Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by L E Tech CO Ltd filed Critical L E Tech CO Ltd
Priority to JP2013167567A priority Critical patent/JP6260965B2/ja
Publication of JP2015037211A publication Critical patent/JP2015037211A/ja
Application granted granted Critical
Publication of JP6260965B2 publication Critical patent/JP6260965B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Systems (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Description

本発明は、Serial Peripheral Interface(SPI)通信を用いたマスター回路及びスレーブ回路に関する。
従来、SPI通信において、マスター回路及びスレーブ回路は、データ通信エラーを回避するために、巡回冗長検査(Cyclic Redundancy Check, CRC)などを用いてデータの整合性を判定していた。
しなしながら、送信対象のデータが1バイト程度である場合であっても、CRCでは、整合性の判定のために、送信対象のデータより大きいデータが必要となっていた。これにより、通信全体で必要となるデータ量が多くなり、通信速度の低下が生じていた。
本発明の実施例は、SPI通信において、より少ないデータ量で実現でき、より簡単なデータ整合性の判定を採用することにより、通信データを削減し、通信速度を向上させる。
本発明の実施例によるSerial Peripheral Interface通信を用いたマスター回路は、コマンドデータを生成及び送信するコマンドデータ生成部と、第1の応答データ部及び第2の応答データ部を含み、コマンドデータに対応する応答データをスレーブ回路から受信するデータ受信部と、第1の応答データ部と第2の応答データ部とが所定の規則で関連付けされている否かを判定するデータ処理部と、を備えることができる。
本発明の実施例によるSerial Peripheral Interface通信を用いたマスター回路は、データ処理部が、第1の応答データ部及び第2の応答データ部それぞれが予め定められたビット値からなるデータである否か、第2の応答データ部のビットが第1の応答データ部のビット値を反転させたビット値であるか否か、又は、第2の応答データ部が第1の応答データ部を所定のビット数分シフトさせたビット値であるか否かを判定することによって、所定の規則で関連付けされている否かを判定することができる。
本発明の実施例によるSerial Peripheral Interface通信を用いたマスター回路は、第2の応答データ部のデータ量が、第1の応答データ部のデータ量及び/又はコマンドデータのデータ量と同程度又は同じであるようにすることができる。
本発明の実施例によるSerial Peripheral Interface通信を用いたスレーブ回路は、マスター回路からコマンドデータを受信するコマンドデータ受信部と、第1の応答データ部と第2の応答データ部とを所定の規則で関連付けすることによって、第1の応答データ部及び第2の応答データ部を含み、コマンドデータに対応する応答データを生成する応答データ生成部と、応答データをマスター回路に送信する送信部と、を備えることができる。
本発明の実施例によるSerial Peripheral Interface通信を用いたスレーブ回路は、応答データ生成部が、第1の応答データ部及び第2の応答データ部それぞれが予め定められたビット値からなるデータとし、第2の応答データ部のビット値が第1の応答データ部のビット値を反転させたビット値とし、又は、第2の応答データ部のビット値が第1の応答データ部を所定のビット数分シフトさせたビット値とすることによって、第1の応答データ部と第2の応答データ部とを所定の規則で関連付けして応答データを生成することができる。
本発明の実施例によるSerial Peripheral Interface通信を用いたスレーブ回路は、第2の応答データ部のデータ量が、第1の応答データ部のデータ量及び/又はコマンドデータのデータ量と同程度又は同じであるようにすることができる。
図1は、本発明の実施例に係る装置100を示した図である。 図2は、マスター回路が生成するコマンドデータの例を示した図である。 図3は、スレーブ回路が生成する応答データの例を示した図である。
図1は、本発明の実施例に係る装置100を示した図である。装置100は、マスター回路105及びスレーブ回路130を含む。マスター回路105及びスレーブ回路130は、3つの信号線165、170、175を介して接続されている。マスター回路105とスレーブ回路130との接続方式には、例えば、シリアル・ペリフェラル・インタフェース(Serial Peripheral Interface, SPI)が用いられる。
マスター回路105は、クロック信号生成部110、コマンドデータ生成部115、データ受信部120及びデータ処理部122を含む。クロック信号生成部110、コマンドデータ生成部115、データ受信部120及びデータ処理部122は、バス125介して、それぞれが互いに接続されている。
スレーブ回路130は、クロック信号受信部135、コマンドデータ受信部140、応答データ生成部145、処理対象データ生成部150及びデータ送信部155を含む。クロック信号受信部135、コマンドデータ受信部140、応答データ生成部145、処理対象データ生成部150及びデータ送信部155は、バス160介して、それぞれが互いに接続されている。
クロック信号生成部110とクロック信号受信部135とは、信号線165を介して接続されている。例えば、SPIにおいて、信号線165は、Serial Clock(SCLK又はSCK)線として知られている。
コマンドデータ生成部115とコマンドデータ受信部140とは、信号線170を介して接続されている。例えば、SPIにおいて、信号線170は、Master Out Slave In(MOSI)線として知られている。
データ受信部120とデータ送信部155とは、信号線175を介して接続されている。例えば、SPIにおいて、信号線175は、Master In Slave Out(MISO)線として知られている。
図2は、マスター回路105が生成するコマンドデータの例を示した図である。クロック信号生成部110は、SCLK165で示されるように、210の間隔を1クロックとしてクロック信号を発生させる。クロック信号生成部110は、クロック信号をSCLK165を介してスレーブ回路130のクロック信号受信部135に送信する。本実施例において、クロック信号生成部110は、クロック信号を送信するが、他の実施例において、マスター回路105は、クロック信号生成部110が生成したクロック信号を送信する送信部を有していてもよい。
コマンドデータ生成部115は、1クロック信号間隔210に含まれるデータを1ビットとして、コマンドデータを生成する。コマンドデータ生成部115は、コマンドデータをMOSI170を介してスレーブ回路130のコマンドデータ受信部140に送信する。本実施例において、コマンドデータ生成部115は、コマンドデータを送信するが、他の実施例において、マスター回路105は、コマンドデータ生成部165が生成したコマンドデータを送信する送信部を有していてもよい。
コマンドデータ生成部165が生成するコマンドの処理に対応したコマンドデータは、装置100において予め定められている所定のビット値、例えば、“10100101”、“11110000”などとすることができる。
本実施例において、コマンドデータは、1ビットから8ビットまでの1バイトのデータとして説明している。しかしながら、当業者にとって明らかなように、コマンドデータは、他のデータ長(7ビット、2バイト、3バイトなど)も用いることができる。
図3は、スレーブ回路130が生成する応答データの例を示した図である。応答データ生成部145は、コマンドデータ受信部140がマスター回路105(又はクロック信号生成部110)からコマンドデータを受信すると、そのコマンドデータに対応する応答データを生成する。
応答データ生成部145は、1クロック信号間隔210に含まれるデータを1ビットとして、応答データを生成する。応答データ生成部145は、応答データをデータ送信部155に送信する。データ送信部155は、応答データをMISO175を介してマスター回路105のデータ受信部120に送信する。
応答データは、第1の応答データ部310と第2の応答データ部320とを含み、第1の応答データ部310と第2の応答データ部320とは、所定の規則で関連付けされている。応答データ生成部145は、第1の応答データ部310と第2の応答データ部320とを関連付けして、応答データを生成する。
一実施例において、第2の応答データ部320のデータ量は、第1の応答データ部310のデータ量及び/又はコマンドデータのデータ量と同程度又は同じとすることができる。同程度の例としては、第2の応答データ部320のデータ量は、第1の応答データ部310のデータ量及び/又はコマンドデータのデータ量の2倍以内が好ましい。
一実施例において、応答データ生成部145は、第1の応答データ部310及び第2の応答データ部320が、例えば、それぞれが予め定められたビット値からなるデータであるようにすることによって、第1の応答データ部310と第2の応答データ部320とを関連付けしてもよい。
他の実施例において、応答データ生成部145は、第2の応答データ部320のビット値が第1の応答データ部310のビット値を反転させたビット値とすることによって、第1の応答データ部310と第2の応答データ部320とを関連付けすることができる。例えば、第1の応答データ部310のビット値が“10100101”である場合、第2の応答データ部320のビットは、“01011010”とすることができる。
他の実施例において、応答データ生成部145は、第2の応答データ部320のビット値が第1の応答データ部310を所定のビット数分シフトさせたビット値とすることによって、第1の応答データ部310と第2の応答データ部320とを関連付けすることができる。例えば、第2の応答データ部320が第1の応答データ部310を1ビット分シフト(8ビット目の値を1ビット目にシフト)させたデータである場合、第1の応答データ部310のビット値が“11110000”であるとき、第2の応答データ部320のビット値は、“01111000”となる。
上記の第1の応答データ部310と第2の応答データ部320とを所定の規則で関連付けする例は、例示であり、第1の応答データ部310と第2の応答データ部320は、上記例の二以上の組み合わせによる規則又は他の規則に基づいて、関連付けされていてもよい。
応答データ生成部145が応答データを生成した後、処理対象データ生成部150は、1クロック信号間隔210に含まれるデータを1ビットとして、コマンドデータに応じた処理対象データを生成する。例えば、処理対象データ生成部150は、コマンドデータの指示に基づいて計算を実行し、処理対象データを生成する。また、処理対象データ生成部150は、コマンドデータの指示に基づいて、それが有する又はそれの外部にある記録部(図示せず)からデータを取得し処理対象データを生成することもできる。
処理対象データ生成部145は、生成した処理対象データをデータ送信部155に送信する。データ送信部155は、応答データを送った後、処理対象データをMISO175を介してマスター回路105のデータ受信部120に送信する。
他の実施例において、応答データ生成部145及び処理対象データ生成部150それぞれは、生成したデータをマスター回路105に送信する送信部を有していてもよい。この場合、必要に応じて、データ送信部155を排除することができる。
他の実施例において、応答データ生成部145と処理対象データ生成部150とは、組み合わせて一つの生成部とすることができる。
マスター回路105のデータ受信部120は、MISO175を介して送信された応答データを受信する。データ処理部122は、応答データに含まれる第1の応答データ部310と第2の応答データ部320とが所定の規則で関連付けされているか否かを判定する。
例えば、データ処理部122は、第1の応答データ部310及び第2の応答データ部320それぞれが予め定められたビット値からなるデータであるか否か、第2の応答データ部320のビットが第1の応答データ部310のビット値を反転させたビット値であるか否か、又は、第2の応答データ部320が第1の応答データ部310を所定のビット数分シフトさせたビット値であるか否かを判定することができる。
データ処理部122が、第1の応答データ部310と第2の応答データ部320とが所定の規則で関連付けされていると判定した場合、データ受信部120は、応答データの後に送られる処理対象データを受信する。マスター回路105は、その処理対象データに応じて処理を行う。
データ処理部122が、第1の応答データ部310と第2の応答データ部320とが所定の規則で関連付けされていないと判定した場合、マスター回路105は、スレーブ回路130との処理を中止することや、処理対象データの破棄などが行える。これにより、マスター回路105は、スレーブ回路130が生成した応答データの整合性を判定することができる。すなわち、マスター回路105は、スレーブ回路130が正しい動作を行っている否か、又は、マスター回路105とスレーブ回路130との信号線の通信が正しく行えているか否かを判定することができる。
また、従来技術において、CRCなどを用いて、応答データの整合性が判定されていたが、CRCを用いた場合、冗長データが2バイト以上必要であり、すなわち、冗長データのデータ量がコマンドデータのデータ量及び/又は応答データのデータ量より大きくなっていた。しなしながら、本発明の実施例は、整合性を判定するためのデータは、第2の応答データ部320のみであることから、整合性を判定するためのデータを削減することができる。したがって、本発明の実施例は、整合性を判定するためのデータを削減することができることから、通信対象のデータが削減される。これにより、本発明の実施例は、通信全体の通信速度の向上を実現することができる。
他の従来技術において、応答データの整合性の判定のためにパリティチェックが用いられていた。この場合、データの削減は行えるが、パリティチェックを用いた技術は、整合しないビット箇所を特定することができなかった。本発明の実施例において、第2の応答データ部320のビットが第1の応答データ部310のビット値を反転させたビット値であること、又は、第2の応答データ部320が第1の応答データ部310を所定のビット数分シフトさせたビット値であることが所定の規則として用いられた、本発明の実施例は、第1の応答データ部310と第2の応答データ部320とで整合しないビットの箇所を特定することができる。
本発明の実施例の整合性の判定のロジックは、比較的簡単なため、従来技術に比べて処理速度の向上を実現することができる。また、整合性の判定のロジックが比較的簡単であるため、データ処理部122をハードウエアで実現することができる。これにより、本発明の実施例は、さらなる処理速度の向上を実現することができる。
メカトロニクス、ロボット、パチンコ及びパチスロなどを含む遊技機、アーケードゲームなどを含むゲーム機器、エンジンのコントロール、車両ブレーキのコントロール、エレベーターのコントロールなどの分野において、装置100を用いることができる。
上記の実施例において、ハードウエアで実現するよう説明されたいくつかの要素の一部又は全ては、ソフトウェアで実現することができ、そして、ソフトウェアで実現するよう説明されたいくつかの要素の一部又は全ては、ハードウエアで実現することができることは理解されるであろう。
上記の実施例において、SPI通信を行うマスター回路及びスレーブ回路を説明したが、当業者であれば理解されるように、必要に応じて他の通信方式にも本発明の実施例を適用することができる。
以上に説明した処理又は動作において、あるステップにおいて、そのステップではまだ利用することができないはずのデータを利用しているなどの処理又は動作上の矛盾が生じない限りにおいて、処理又は動作を自由に変更することができる。
以上に説明してきた各実施例は、本発明を説明するための例示であり、本発明はこれらの実施例に限定されるものではない。本発明は、その要旨を逸脱しない限り、種々の形態で実施することができる。
105 マスター回路
110 クロック信号生成部
115 コマンドデータ生成部
120 データ受信部
125、160 バス
135 クロック信号受信部
140 コマンドデータ受信部
145 応答データ生成部
150 処理対象データ生成部
155 データ送信部
160、165、170 信号線

Claims (6)

  1. コマンドデータを生成及び送信するコマンドデータ生成部と、
    第1の応答データ部及び第2の応答データ部を含み、コマンドデータに対応する応答データをスレーブ回路から受信するデータ受信部と、
    前記第1の応答データ部と前記第2の応答データ部とが所定の規則で関連付けされているか否かを判定するデータ処理部と、
    を備えており、
    前記データ受信部は、前記データ処理部が、前記第1の応答データ部及び前記第2の応答データ部が前記所定の規則で関連付けされていることを判定したことに応じて、前記スレーブ回路において前記コマンドデータに基づいて生成される処理対象データを前記応答データを受信した後に受信する、Serial Peripheral Interface通信を用いた遊技機用マスター回路。
  2. 前記データ処理部は、前記第1の応答データ部及び前記第2の応答データ部それぞれが予め定められたビット値からなるデータであるか否か、前記第2の応答データ部のビットが前記第1の応答データ部のビット値を反転させたビット値であるか否か、又は、前記第2の応答データ部が前記第1の応答データ部を所定のビット数分シフトさせたビット値であるか否かを判定することによって、前記所定の規則で関連付けされているか否かを判定する、請求項1に記載の遊技機用マスター回路。
  3. 前記第2の応答データ部のデータ量は、前記第1の応答データ部のデータ量及び/又は前記コマンドデータのデータ量と同程度又は同じである、請求項1又は2に記載の遊技機用マスター回路。
  4. マスター回路からコマンドデータを受信するコマンドデータ受信部と、
    第1の応答データ部と第2の応答データ部とを所定の規則で関連付けすることによって、前記第1の応答データ部及び前記第2の応答データ部を含み、前記コマンドデータに対応する応答データを生成する応答データ生成部と、
    前記応答データを前記マスター回路に送信する送信部と、
    前記応答データを送信した後、前記コマンドデータに基づいて処理対象データを生成する処理対象データ生成部と、
    を備えているSerial Peripheral Interface通信を用いた遊技機用スレーブ回路。
  5. 前記応答データ生成部は、前記第1の応答データ部及び前記第2の応答データ部それぞれが予め定められたビット値からなるデータとし、前記第2の応答データ部のビット値が前記第1の応答データ部のビット値を反転させたビット値とし、又は、前記第2の応答データ部のビット値が前記第1の応答データ部を所定のビット数分シフトさせたビット値とすることによって、前記第1の応答データ部と前記第2の応答データ部とを所定の規則で関連付けして応答データを生成する、請求項4に記載の遊技機用スレーブ回路。
  6. 前記第2の応答データ部のデータ量は、前記第1の応答データ部のデータ量及び/又は前記コマンドデータのデータ量と同程度又は同じである、請求項4又は5に記載の遊技機用スレーブ回路。
JP2013167567A 2013-08-12 2013-08-12 Spi通信を用いたマスター回路及びスレーブ回路 Expired - Fee Related JP6260965B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013167567A JP6260965B2 (ja) 2013-08-12 2013-08-12 Spi通信を用いたマスター回路及びスレーブ回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013167567A JP6260965B2 (ja) 2013-08-12 2013-08-12 Spi通信を用いたマスター回路及びスレーブ回路

Publications (2)

Publication Number Publication Date
JP2015037211A JP2015037211A (ja) 2015-02-23
JP6260965B2 true JP6260965B2 (ja) 2018-01-17

Family

ID=52687532

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013167567A Expired - Fee Related JP6260965B2 (ja) 2013-08-12 2013-08-12 Spi通信を用いたマスター回路及びスレーブ回路

Country Status (1)

Country Link
JP (1) JP6260965B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110304505B (zh) * 2018-03-20 2021-10-01 上海新时达电气股份有限公司 电梯控制交互装置、机器人及电梯控制交互系统

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57108994A (en) * 1980-12-25 1982-07-07 Mitsubishi Electric Corp Centralized automatic gage examination device
JP2005202643A (ja) * 2004-01-15 2005-07-28 Ricoh Co Ltd シリアルデータ通信装置および画像形成装置
JP2007330479A (ja) * 2006-06-14 2007-12-27 Sophia Co Ltd 遊技機

Also Published As

Publication number Publication date
JP2015037211A (ja) 2015-02-23

Similar Documents

Publication Publication Date Title
JP4917671B2 (ja) マスタ装置とスレーブ装置との間でのデータ伝送方法
US9602487B2 (en) Method for the protected transmission of data
US10097203B2 (en) Lane-striped computation of packet CRC to maintain burst error properties
WO2013175633A1 (ja) 通信装置、通信システム及び通信方法
US20110099411A1 (en) USB Device and Correction Method Thereof
AU2014274576B2 (en) Serial link fault detection system and method
CN107341083B (zh) 一种接口控制器的验证方法和验证系统
US8738990B2 (en) Cyclic redundancy check generation via distributed time multiplexed linear feedback shift registers
JP6260965B2 (ja) Spi通信を用いたマスター回路及びスレーブ回路
JP2021528932A (ja) 高速ハードウェア送信等化
WO2020199724A1 (zh) 一种数据处理方法及服务器、设备
EP1814234B1 (en) Concurrent code checker and hardware efficient high- speed I/O having built- in self- test and debug features
US20170109545A1 (en) Electronic device and data verification method
JP2008301210A (ja) パケット送信装置およびパケット送信方法
CN105190337B (zh) 自测试集成电路
CN117155782A (zh) 一种自动解析通信参数的方法
Szecówka et al. USB receiver/transmitter for FPGA implementation
KR20070116678A (ko) 에러 검출을 위한 장치, 물품, 시스템 및 방법
CN109948378A (zh) 主机控制器、安全元件和串行外设接口通信系统
CN111308919B (zh) 轮速信号传送方法、装置、终端和计算机可读存储介质
CN114650138A (zh) 一种i2c通信方法、系统、设备以及介质
TWI762842B (zh) 積體電路開發系統、積體電路開發方法以及積體電路
TWI254520B (en) Device and method for retraining a receiver, and a transmitter
JP2016146605A (ja) 車載通信装置
KR102058495B1 (ko) 오류 검출 회로 및 이를 이용하는 반도체 집적회로

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160809

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170426

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170501

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170626

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170906

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171102

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: 20171115

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171205

R150 Certificate of patent or registration of utility model

Ref document number: 6260965

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees