JP2006304011A - インタフェース回路 - Google Patents
インタフェース回路 Download PDFInfo
- Publication number
- JP2006304011A JP2006304011A JP2005124126A JP2005124126A JP2006304011A JP 2006304011 A JP2006304011 A JP 2006304011A JP 2005124126 A JP2005124126 A JP 2005124126A JP 2005124126 A JP2005124126 A JP 2005124126A JP 2006304011 A JP2006304011 A JP 2006304011A
- Authority
- JP
- Japan
- Prior art keywords
- spi
- data
- clock signal
- transmission
- frequency
- 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.)
- Withdrawn
Links
Images
Landscapes
- Information Transfer Systems (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
【課題】 複数のSPIデバイスと通信するためのクロック生成回路をハード回路のみの構成で組み立て、システム速度の改善を実現する。
【解決手段】SPIコントローラと外部SPIデバイスを、少なくとも1つ持つシステムにおいて、少なくとも1つの伝送周波数を送出するための発信器を有し、SPIデバイス毎に対応するクロック周波数を生成し、SPIデバイス毎に対応するクロック信号でデータ転送を行い、データ転送を高速に行い、更にバッファ回路やビジィー信号の発生を省略し、回路を簡略化することで回路規模を小さくしコストダウンも実現できるインタフェース回路である。
【選択図】図1
【解決手段】SPIコントローラと外部SPIデバイスを、少なくとも1つ持つシステムにおいて、少なくとも1つの伝送周波数を送出するための発信器を有し、SPIデバイス毎に対応するクロック周波数を生成し、SPIデバイス毎に対応するクロック信号でデータ転送を行い、データ転送を高速に行い、更にバッファ回路やビジィー信号の発生を省略し、回路を簡略化することで回路規模を小さくしコストダウンも実現できるインタフェース回路である。
【選択図】図1
Description
本発明は、複数のSPI(Serial Peripheral Interface)デバイスとの間でデータの授受を行うインタフェース回路に関する。
従来、複数のシリアルデバイスを1つのシリアルバスに接続するため、SPIが使用されている。このシステムでは、SPIに対応する複数のデバイスを、シリアルバスに直接接続し、チップセレクト信号(CS信号)によって選択したデバイスとの間で通信を行う。
例えば、図6に示す回路は従来のインタフェース回路であり、チップセレクト信号(CS1信号)がSPIデバイスAを選択する時、送信データ(TXD)をSPIデバイスAに出力し、受信データ(RXD)をSPIデバイスAから受信する。同様に、チップセレクト信号(CS2信号)がSPIデバイスBを選択する時、送信データ(TXD)をSPIデバイスBに出力し、受信データ(RXD)をSPIデバイスBから受信する。さらに、チップセレクト信号(CS3信号)がSPIデバイスCを選択する時、送信データ(TXD)をSPIデバイスCに出力し、受信データ(RXD)をSPIデバイスCから受信する。
一方、SPIクロック信号(SPICLK)は、SPIデバイスA〜Cごとに最大周波数が仕様として定められている。このような状況において、SPIデバイスA〜Cへのデータの送受信制御を行うためには、先ず接続されているSPIデバイスの中で、最も遅い周波数のSPIクロック信号に他のSPIデバイスをあわせて使用する。例えば、SPIデバイスAが1MHz、SPIデバイスBが5MHz、SPIデバイスCが10MHzの周波数で動作をする場合、最も遅いSPIデバイスAに合わせ、SPIコントローラは1MHzのSPIクロック信号で動作するように設定される。
一方、アクセスするSPIデバイスA〜Cごとに、最適となる周波数のSPIクロック信号を出力するように制御する方法もある。この場合、SPIデバイスA〜Cにアクセスする度にSPIクロック信号の周波数設定を行う。例えば、SPIデバイスAをアクセスする場合、SPIクロック信号の周波数を1MHzに設定し、次にSPIデバイスBにアクセスする場合には、先ずSPIクロック信号の周波数を5MHzに設定し直してからアクセスを行う。尚、この種のインタフェース回路として特許文献1の発明が開示されている。
特開平5−292148号公報
しかしながら、上記の方式では、以下のような問題がある。
先ず、最も遅いSPIデバイスにSPIクロック信号の周波数を合わせる場合、仮にSPIデバイスB、Cをアクセスする際の周波数が5MHz、又は10MHzの高速処理が可能であったとしても、SPIデバイスAの周波数が1MHzと低速であれば、SPIデバイスB、Cも1MHzでアクセスすることになり、効率の悪いシステムとなる。
先ず、最も遅いSPIデバイスにSPIクロック信号の周波数を合わせる場合、仮にSPIデバイスB、Cをアクセスする際の周波数が5MHz、又は10MHzの高速処理が可能であったとしても、SPIデバイスAの周波数が1MHzと低速であれば、SPIデバイスB、Cも1MHzでアクセスすることになり、効率の悪いシステムとなる。
次に、SPIデバイスにアクセスする度に最適なSPIクロック信号の周波数設定をソフト処理によって行う場合には、毎回ソフト制御が入り、システムスピードに影響を及ぼす。
そこで、本発明はソフト制御によらず、ハード回路構成によってSPIクロック信号の周波数制御を行うことで、アクセス速度を向上し、高速なデータの送受信が可能なインタフェース回路を提供するものである。
本発明は上記課題を解決するため、通信周波数の異なる複数のデバイスに接続され、データの送受信を行うインタフェース回路であり、前記複数のデバイスの中の一のデバイスを選択する選択手段と、送信データを保持する送信バッファ手段と、該送信バッファ手段に保持された送信データを前記選択手段によって選択されたデバイスに送信する送信手段と、該送信データを選択された前記デバイスに送信する際、該デバイスの通信周波数のクロック信号を生成し、該クロック信号によって前記送信データの送信を行わせるクロック信号生成手段とを有するインタフェース回路を備えることを特徴とする。
このように構成することにより、選択されたデバイスの通信速度に対応した周波数のクロック信号を生成し、最適な速度でデータ送信を行うことができ、実質的に高速なデータ送信を可能とするインタフェース回路が提供できる。
また、前記送信データは、例えば前記複数のデバイスの通信周波数の中の最も高い周波数のクロック信号を使用して前記送信バッファに保持する構成である。
また、前記送信バッファは、例えばシリアル・パラレル変換器をよってパラレルデータに変換された送信データを保持し、前記選択されたデバイスに出力される際、パラレル・シリアル変換器によってシリアルデータに変換されたデータが該デバイスに供給される構成である。
また、前記送信バッファは、例えばシリアル・パラレル変換器をよってパラレルデータに変換された送信データを保持し、前記選択されたデバイスに出力される際、パラレル・シリアル変換器によってシリアルデータに変換されたデータが該デバイスに供給される構成である。
さらに、前記選択手段によって選択されたデバイスから供給されるデータを受信バッファを介して受信する受信手段を備え、該データを受信する際、前記クロック信号生成手段によって生成された周波数のクロック信号を使用して該受信処理を行う構成である。
このように構成することにより、選択されたデバイスの通信速度に対応した周波数のクロック信号を生成し、更に最適な速度でデータの送受信を行うことができ、実質的に高速なデータの送受信を可能とするインタフェース回路が提供できる。
本発明により、複数のSPIデバイスと通信するためのクロック生成回路をハード構成のみで組み立てることができる。また、システム速度の改善を図ることができる。
以下、図面を参照しながら、本発明の実施の形態について詳細に説明する。
(第1の実施形態)
図1は本発明における実施形態1の回路ブロック図である。同図において、本例のインタフェース回路はSPIコントローラ1、SPIバッファ回路2、発信器3、及びSPIデバイスA〜Cで構成されている。SPIコントローラ1はチップセレクト信号(CS1信号〜CS3信号)によってSPIデバイスA〜Cの選択を行うと共に、SPIクロック信号(以下、SPIクロック信号1で示す)を出力し、この信号に同期して送信データ(TXD)をSPIバッファ回路2に出力する。
(第1の実施形態)
図1は本発明における実施形態1の回路ブロック図である。同図において、本例のインタフェース回路はSPIコントローラ1、SPIバッファ回路2、発信器3、及びSPIデバイスA〜Cで構成されている。SPIコントローラ1はチップセレクト信号(CS1信号〜CS3信号)によってSPIデバイスA〜Cの選択を行うと共に、SPIクロック信号(以下、SPIクロック信号1で示す)を出力し、この信号に同期して送信データ(TXD)をSPIバッファ回路2に出力する。
尚、受信データ(RXD)はSPIデバイスA〜Cから供給されるデータである。
SPIバッファ回路2はSPIコントローラ1から出力された送信データ(TXD)を保持し、所定のバイト入力に基づいて選択されたSPIデバイスA〜Cに出力する。また、発信器3はSPIバッファ回路2から送信データ(TXD)をSPIデバイスA〜Cに出力する際のクロック信号の発信源である。
SPIバッファ回路2はSPIコントローラ1から出力された送信データ(TXD)を保持し、所定のバイト入力に基づいて選択されたSPIデバイスA〜Cに出力する。また、発信器3はSPIバッファ回路2から送信データ(TXD)をSPIデバイスA〜Cに出力する際のクロック信号の発信源である。
SPIデバイスA〜Cは通信周波数の異なるデバイスであり、例えば印刷装置に対応させた場合、SPIデバイスAはクロック周波数の低いオペレーションパネルが対応し、SPIデバイスBはクロック周波数の中位のリアルタイムクロック発生装置が対応し、SPIデバイスCはクロック周波数の高いEEPROMが対応する。
図2は上記SPIバッファ回路2の具体的な回路図であり、分周セレクタ21、分周設定回路28、TXD側のシリアル・パラレル変換器22、送信バッファ23、パラレル・シリアル変換器24と、RXD側のシリアル・パラレル変換器25、受信バッファ26、パラレル・シリアル変換器27で構成されている。
分周設定回路28は、接続されているSPIデバイスに対応するSPIクロック信号(以下、SPIクロック信号2で示す)を生成するため、発信器3の出力を分周セレクタ21によって分周させる回路であり、前述のチップセレクト信号(CS信号)に基づいて分周比を設定する。例えば、CS1用の分周値、CS2用の分周値、CS3用の分周値をラッチする。
例えば、チップセレクト信号(CS1信号)がアクティブになると、対応する分周値が分周セレクタ21によって選択され、対応する周波数のSPIクロック信号が生成される。同様にして、チップセレクト信号(CS2、又は3信号)に対応する分周値が分周セレクタ21によって選択され、対応する周波数のSPIクロック信号が生成される。
SPIコントローラ1が、どのSPIデバイスA〜Cに対するアクセスであるかは、各SPIデバイスに設定されているチップセレクト(CS)の状態で自動的に判断できる。例えば、チップセレクト信号(CS1信号)がアクティブの時、SPIデバイスAが選択されていることが分かり、チップセレクト信号(CS2信号)がアクティブの時、SPIデバイスBが選択されていることが分かり、チップセレクト信号(CS3信号)がアクティブの時、SPIデバイスCが選択されていることが分かる。
図3は上記通信アクセス時のタイムチャートを示し、同図(a)は送信データ(TXD)をシリアル・パラレル変換器22を介して送信バッファ23に送信する処理を説明するタイムチャートであり、同図(b)は送信バッファ23から送信データ(TXD)を対応するSPIデバイスA〜Cに出力する際のタイムチャートを示す。
先ず、SPIコントローラ1は、SPIクロック信号1に同期して送信データ(TXD)をシリアル・パラレル変換器22に出力する(同図(a)に示す期間S1)。送信データ(TXD)はシリアル・パラレル変換器22によってパラレルデータに変換され、送信バッファ23に順次保持される。このとき、BUSY信号がアクティブであり、この間SPIコントローラ1は次の送信データ(TXD)の送出を禁止する。その後、送信データ(TXD)が所定バイト揃った時点で、BUSY信号はインアクティブとなり、送信データ(TXD)の送出が可能となる。
一方、送信バッファ23に送られた送信データ(TXD)は、パラレル・シリアル変換器24を介してシリアルデータに変換され、SPIデバイスAに送出される。この時、分周セレクタ21からパラレル・シリアル変換器24に対してSPIデバイスAの通信周波数に対応したSPIクロック信号2が出力される(同図(b)に示す期間S2)。例えば、前述のようにSPIデバイスAとしてオペレーションパネルが設定されている場合、250KHzのSPIクロック信号2がパラレル・シリアル変換器24に供給され、SPIデバイスAの通信速度に対応したデータ送信を行う。
また、送信データ(TXD)を転送する相手がSPIデバイスBである場合においても、送信バッファ23には前述と同様にしてSPIコントローラ1から送信データ(TXD)がSPIクロック信号1に同期して送信され(同図(a)に示す期間S1)、所定のバイトデータが保持されると、送信バッファ23からSPIデバイスBに送信データ(TXD)が出力される(同図(b)に示す期間S2)。この時、例えばSPIデバイスBがリアルタイムクロック発生装置である場合、1MHzのSPIクロック信号がパラレル・シリアル変換器24に供給され、SPIデバイスBの通信速度に対応した周波数でデータ送信を行う。
さらに、同様にして、送信データ(TXD)を転送する相手がSPIデバイスCである場合、送信バッファ23には前述と同様にしてSPIコントローラ1から送信データ(TXD)がSPIクロック信号1に同期して送信され(同図(a)に示す期間S1)、所定のバイトデータが保持されると、送信バッファ23からSPIデバイスBに送信データ(TXD)が出力される(同図(b)に示す期間S2)。この時、例えばSPIデバイスCがEEPROMである場合、2MHzのSPIクロック信号2がパラレル・シリアル変換器24に供給され、SPIデバイスCの通信速度に対応した周波数でデータ送信を行う。
以上のように、本例によればSPIバッファ回路2により最適なSPIクロック信号2を自動的に選択することができ、SPIコントローラ1はデータ転送先のSPIデバイスA〜Cに関係なく高速なSPIクロック信号を使用して送信データ(TXD)の送信を行うことができる。
尚、SPIデバイスA〜CからSPIコントローラ1に供給される受信データ(RXD)については、SPIクロック信号2に対してSPIクロック信号1は高速であり、受信バッファ26にデータが滞留することがないので、例えBUSY信号を使用しなくてもデータがオーバーフローすることはない。
(実施形態2)
次に、本発明の実施形態2について説明する。
(実施形態2)
次に、本発明の実施形態2について説明する。
図4は本実施形態2を説明する図であり、SPIバッファ回路2の具体例である。本例のSPIバッファ回路2は、分周セレクタ41、分周設定回路45、パラレル・シリアル変換器42、シリアル・パラレル変換器43で構成されている。本例では、通常LSIやマイコンの中に内蔵されているSPIコントローラ1に追加、即ち本例の回路をSPIコントローラ1に組み込むことによって、通常1つしかない分周設定用ラッチをチップセレクト信号(CS信号)分用意し、選択されたチップセレクト信号(CS信号)によって自動的にSPIクロック信号2の周波数を変更し、データ転送する回路である。
このように構成することにより、SPIクロック信号そのものが自動的に適切な周波数に切り替わるため、第1の実施形態にあるようなバッファやBUSY信号による制御は全く不要となる。また、同図の分周設定回路45は、接続されているSPIデバイスA〜Cに対応するSPIクロック信号2を生成する構成であり、前述と同様分周セレクタ41によって分周する値をSPIデバイスのCS毎に設定するための構成である。
図5は、本例の処理を説明するタイムチャートであり、例えば第1にCS1用の分周値、第2にCS2用の分周値をラッチし、前述と同様、適切なSPIクロック信号2を生成し、送信データ(TXD)を対応する周波数のSPIクロック信号2によってSPIデバイスA〜Cに送信することができる。
以上により、SPIデバイスA〜Cの通信周波数に対応するSPIクロック信号2が自動的に設定され、送信データ(TXD)を最適なSPIクロック信号2によって送信することができる。また、上記処理の際、実施形態1で使用した送信バッファ23やBUSY信号を使用する必要もない。
1・・・SPIコントローラ
2・・・SPIバッファ回路
3・・・発信器
21,41・・・分周セレクタ
22,25,43・・・シリアル・パラレル変換器
23・・・受信バッファ
24,27,42・・・パラレル・シリアル変換器
26・・・送信バッファ
28,45・・・分周設定回路
A〜C・・・SPIデバイス
2・・・SPIバッファ回路
3・・・発信器
21,41・・・分周セレクタ
22,25,43・・・シリアル・パラレル変換器
23・・・受信バッファ
24,27,42・・・パラレル・シリアル変換器
26・・・送信バッファ
28,45・・・分周設定回路
A〜C・・・SPIデバイス
Claims (4)
- 通信周波数の異なる複数のデバイスに接続され、データの送受信を行うインタフェース回路であり、
前記複数のデバイスの中の一のデバイスを選択する選択手段と、
送信データを保持する送信バッファ手段と、
該送信バッファ手段に保持された送信データを前記選択手段によって選択されたデバイスに送信する送信手段と、
該送信データを選択された前記デバイスに送信する際、該デバイスの通信周波数のクロック信号を生成し、該クロック信号によって前記送信データの送信を行わせるクロック信号生成手段と、
を有することを特徴とするインタフェース回路。 - 前記送信データは、前記複数のデバイスの通信周波数の中の最も高い周波数のクロック信号を使用して前記送信バッファに保持されたことを特徴とする請求項1記載のインタフェース回路。
- 前記送信バッファは、シリアル・パラレル変換器によってパラレルデータに変換された送信データを保持し、前記選択されたデバイスに出力される際、パラレル・シリアル変換器によってシリアルデータに変換されたデータが該デバイスに供給されることを特徴とする請求項1、又は2記載のインタフェース回路。
- 前記選択手段によって選択されたデバイスから供給されるデータを受信バッファを介して受信する受信手段を備え、該データを受信する際、前記クロック信号生成手段によって生成された周波数のクロック信号を使用して該受信処理を行うことを特徴とする請求項1、2、又は3記載のインタフェース回路。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2005124126A JP2006304011A (ja) | 2005-04-21 | 2005-04-21 | インタフェース回路 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2005124126A JP2006304011A (ja) | 2005-04-21 | 2005-04-21 | インタフェース回路 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2006304011A true JP2006304011A (ja) | 2006-11-02 |
Family
ID=37471755
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2005124126A Withdrawn JP2006304011A (ja) | 2005-04-21 | 2005-04-21 | インタフェース回路 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2006304011A (ja) |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2013037630A1 (de) * | 2011-09-12 | 2013-03-21 | Continental Automotive Gmbh | Schaltungsanordnung zur vermeidung von kollisionen beim datentransfer |
| US8719476B2 (en) | 2010-09-16 | 2014-05-06 | Ricoh Company, Ltd. | Communication system, master device and slave device, and communication method, configured to handle plural concurrent requests |
| US9081913B2 (en) | 2010-03-26 | 2015-07-14 | Nuvoton Technology Corporation | Integrated circuit and clock frequency control method of integrated circuit |
| JP6090873B1 (ja) * | 2015-11-11 | 2017-03-08 | Necプラットフォームズ株式会社 | 情報処理装置およびシリアル通信データ分離多重変換方法 |
-
2005
- 2005-04-21 JP JP2005124126A patent/JP2006304011A/ja not_active Withdrawn
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9081913B2 (en) | 2010-03-26 | 2015-07-14 | Nuvoton Technology Corporation | Integrated circuit and clock frequency control method of integrated circuit |
| US8719476B2 (en) | 2010-09-16 | 2014-05-06 | Ricoh Company, Ltd. | Communication system, master device and slave device, and communication method, configured to handle plural concurrent requests |
| WO2013037630A1 (de) * | 2011-09-12 | 2013-03-21 | Continental Automotive Gmbh | Schaltungsanordnung zur vermeidung von kollisionen beim datentransfer |
| JP6090873B1 (ja) * | 2015-11-11 | 2017-03-08 | Necプラットフォームズ株式会社 | 情報処理装置およびシリアル通信データ分離多重変換方法 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR20040076730A (ko) | 고속의 무선 통신에 적합한 하이브리드형 직렬 데이터전송 장치 및 그 방법 | |
| RU2007108068A (ru) | Диспетчер сообщений и способ управления доступом к данным в памяти сообщений коммуникационного компонента | |
| JP2006304011A (ja) | インタフェース回路 | |
| JP2001265716A (ja) | 情報伝達装置及び情報伝達方法 | |
| JP2021150732A (ja) | マスタスレーブ通信システム、電子デバイス、マスタスレーブ通信システムの制御方法、電子デバイスの制御方法 | |
| US20060031424A1 (en) | Packet signal processing architecture | |
| KR102474620B1 (ko) | 반도체 장치, 반도체 시스템 및 반도체 장치의 동작 방법 | |
| JP2000224205A (ja) | Hdlc伝送方式 | |
| JPH0916517A (ja) | バスインタフェース | |
| TWI802411B (zh) | 天線裝置以及波束控制方法 | |
| JP2001092804A (ja) | Eepromインターフェース内蔵マイクロコンピュータ | |
| JPH11122275A (ja) | シリアル通信システム | |
| JPH09293047A (ja) | マイクロコンピュータのデータ転送装置 | |
| JP2949118B1 (ja) | バス通信型エンコーダ装置のエンコーダデータ出力方法 | |
| KR100584583B1 (ko) | 직렬 버스 제어 장치 및 방법 | |
| JP3769538B2 (ja) | Atmセル送受信制御方式及びその方法並びに移動通信基地局装置 | |
| JP2012253555A (ja) | データ出力調整装置、データ出力調整方法、rgmiiネットワークシステム、及び、rgmiiネットワーク通信路切替方法 | |
| JPH10255170A (ja) | Posオーダエントリシステム | |
| KR100355040B1 (ko) | 데이터통신시스템에서의 프로세서간 고속통신장치 | |
| KR100427764B1 (ko) | 서로 다른 데이터 버스를 가지는 디바이스들의 정합 장치 | |
| JP3606957B2 (ja) | シリアルデータ伝送システム | |
| CN120803972A (zh) | 接口缓冲装置、集成电路通信系统和方法 | |
| JPH11327948A (ja) | シリアルバスインタフェースマクロ回路の動作テスト方法 | |
| TW201234776A (en) | I2C multi-slots circuit and method for transmitting I2C signals | |
| KR20010046914A (ko) | 데이터 인터페이스 회로 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20080701 |