(57)【要約】【課題】ラッチタイミングを任意に変化させることにより、スレーブデバイスの汎用性を高める。【解決手段】スレーブデバイス１０２は、データ転送バスによりマスタデバイス１０１と接続され、マスタデバイス１０１が制御する動作制御信号に従い、マスタデバイス１０１とデータ転送を行ない、スレーブデバイス１０２の起動時にマスタデバイス１０１から送信される基準データをラッチするまでの時間を測定することにより、データ転送バスのデータをラッチするラッチタイミングに対応する遅延値を生成するラッチタイミング自動設定装置１０７と、ラッチタイミング自動設定装置１０７で生成された遅延値に基づき、動作制御信号のラッチタイミングを調整するラッチタイミング調整装置１０５とを備える。【選択図】  図３
2005352936.tif 000002
【特許請求の範囲】
【請求項１】
データ転送バスを介して接続されたマスタデバイスとの間でデータ転送を行うスレーブデバイスであって、
前記マスタデバイスが前記スレーブデバイスの動作を制御する動作制御信号に基づいて前記データ転送バス上のデータをラッチするタイミングを調整するラッチタイミング調整手段と、
前記ラッチタイミング調整手段で調整されるラッチタイミングを前記マスタデバイスからの設定により遅延させるパラメータを記憶する記憶手段と、
を備えるスレーブデバイス。
【請求項２】
データ転送バスを介して接続されたマスタデバイスとの間でデータ転送を行うスレーブデバイスであって、
前記マスタデバイスが前記スレーブデバイスの動作を制御する動作制御信号に基づいて前記データ転送バス上のデータをラッチするタイミングを調整するラッチタイミング調整手段と、
前記ラッチタイミング調整手段で調整されるラッチタイミングを前記スレーブデバイスの起動時に測定した基準データのラッチ時間に基づいて遅延させるパラメータを設定するラッチタイミング設定手段と、
を備えるスレーブデバイス。
【請求項３】
前記ラッチタイミング調整手段は、少なくとも１つのフリップフロップを介して前記制御信号を遅延させる第1のパスと、前記第1のパスをバイパスする第2のパスと、前記第1のパスと前記第2のパスとを切り替えるセレクタとを備える請求項１または２記載のスレーブデバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ転送バスを介して接続されたマスタデバイスとの間でデータ転送を行うスレーブデバイスに関する。
【背景技術】
【０００２】
図９は、マスタデバイスとスレーブデバイス間でデータ転送を行なう場合の従来の一般的なインターフェースシステムの概略構成図である。図９に示すように、従来の一般的なデバイス間インターフェースでは、ＣＰＵ等のマスタデバイス９０１がデータ転送バス上のデータを確定させ、動作制御信号（例えば、書込み動作制御信号）を制御して、スレーブデバイス９０２（例えば、メモリ装置、コンパニオンチップ等）に動作指示を行ない、スレーブデバイス９０２が動作制御信号の指示に従いデータ転送バス上のデータを内部にラッチすることによりデータの転送を実現する方法が知られている。
【０００３】
このような従来のデバイス間インターフェースにおいて、スレーブデバイス９０２は、インターフェース回路９０３、内部回路９０４によって構成され、例えば、マスタデバイス９０１からスレーブデバイス９０２へのデータ転送を行なう場合、インターフェース回路９０３で動作制御信号をラッチタイミングとしてデータ転送バスのデータをラッチし内部回路９０４にラッチしたデータを格納する（例えば、特許文献１参照）。
【特許文献１】特開平１１−３４１００１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
このような従来のデバイス間インターフェースにおいて使用されているマスタデバイス９０１には、図１０に示すように、動作制御信号（ＣＳ，ＷＥ）の立ち上がり時にデータ転送バスのデータＤＡＴＡ，ＡＤＲを保障する方式と、図１１に示すように、動作制御信号（ＣＳ，ＷＥ）の立ち下がり時にデータ転送バスのデータＤＡＴＡ，ＡＤＲを保障する方式が存在する。
【０００５】
このため、スレーブデバイス９０２がマスタデバイス９０１のデータ保障期間内にデータ転送バスのデータを正しくラッチする為には、デバイスの設計の際に、マスタデバイス９０１の方式を意識してラッチタイミングを設計する必要がある。
【０００６】
また同じ方式のマスタデバイス９０１であっても動作制御信号を制御するタイミングとデータ転送バスのデータを保障する期間が異なっていると、正しくデータをラッチすることができるラッチタイミングが異なる。
【０００７】
マスタデバイス９０１毎にスレーブデバイス９０２を特注して開発する場合はマスタデバイス９０１毎にラッチタイミングを設計すればよいが、一つのスレーブデバイス９０２を複数の品種で使用する場合、マスタデバイス９０１がデータ転送バス９２０のデータを保障する期間とスレーブデバイス９０２のデータをラッチするタイミングが一致しなければ両デバイスは接続できない。その為、スレーブデバイス９０２のラッチタイミングがスレーブデバイス９０２の汎用性を低下させる大きな要因となっている。
【０００８】
本発明は、ラッチタイミングを任意に変化させることにより、スレーブデバイスの汎用性を高めることができるスレーブデバイスを提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明のスレーブデバイスは、データ転送バスを介して接続されたマスタデバイスとの間でデータ転送を行うスレーブデバイスであって、前記マスタデバイスが前記スレーブデバイスの動作を制御する動作制御信号に基づいて前記データ転送バス上のデータをラッチするタイミングを調整するラッチタイミング調整手段と、前記ラッチタイミング調整手段で調整されるラッチタイミングを前記マスタデバイスからの設定により遅延させるパラメータを記憶する記憶手段とを備える。
【００１０】
上記構成によれば、マスタデバイスからの設定によりデータのラッチタイミングを遅延させることで、ラッチタイミングを任意に変化させることができ、スレーブデバイスの汎用性を高めることができる。
【００１１】
また、本発明のスレーブデバイスは、データ転送バスを介して接続されたマスタデバイスとの間でデータ転送を行うスレーブデバイスであって、前記マスタデバイスが前記スレーブデバイスの動作を制御する動作制御信号に基づいて前記データ転送バス上のデータをラッチするタイミングを調整するラッチタイミング調整手段と、前記ラッチタイミング調整手段で調整されるラッチタイミングを前記スレーブデバイスの起動時に測定した基準データのラッチ時間に基づいて遅延させるパラメータを設定するラッチタイミング設定手段とを備える。
【００１２】
上記構成によれば、スレーブデバイスの起動時にマスタデバイスから送信される基準データのラッチ時間に基づいてラッチタイミングを調整することで、ラッチタイミングを任意に変化させることができ、スレーブデバイスの汎用性を高めることができる。
【００１３】
本発明において、前記ラッチタイミング調整手段は、少なくとも１つのフリップフロップを介して前記制御信号を遅延させる第1のパスと、前記第1のパスをバイパスする第2のパスと、前記第1のパスと前記第2のパスとを切り替えるセレクタとを備える。
【００１４】
上記構成によれば、デコーダや遅延回路を用いることなくラッチタイミング調整手段を構成することができ、スレーブデバイスのコストダウンを図ることができる。
【発明の効果】
【００１５】
本発明によれば、接続するマスタデバイス毎にスレーブデバイスのインターフェースを設計する必要がなく、スレーブデバイスの汎用性を高めることができる。
【発明を実施するための最良の形態】
【００１６】
図1は、本発明の第1の実施形態を説明するためのインターフェースシステムの概略構成を示すブロック図である。本実施形態のスレーブデバイスを含むインターフェースシステムは、ＣＰＵ等のマスタデバイス１０１と、メモリ装置、コンパニオンチップ等のスレーブデバイス１０２で構成され、スレーブデバイス１０２は、ラッチタイミング調整装置１０５、内部メモリ装置１０６、インターフェース回路１０３、内部回路１０４を含む。
【００１７】
ラッチタイミング調整装置１０５は、動作制御信号（例えば、書込み動作制御信号）と内部メモリ装置１０６に格納されたパラメータから、データ転送バスのデータをラッチするラッチタイミングを生成してインターフェース回路１０３に伝える。この時、内部メモリ装置１０６に格納されたパラメータは、パラメータ設定信号を介して予め設定される。インターフェース回路１０３は、ラッチタイミング調整装置１０５で生成されたラッチタイミングでデータ転送バスのデータをラッチし内部回路１０４に格納する。
【００１８】
図２は、動作制御信号の立下りを基準としてラッチタイミングを変化させた場合の例を示す。図２に示すように、本実施形態では、動作制御信号ＣＳ，ＷＥの立下りを基準として、内部メモリ装置１０６に格納される内部パラメータを変化させることでラッチタイミングを可変させる。これにより、データ転送バスのＤＡＴＡ，ＡＤＲを安定的にラッチし、スレーブデバイス１０２の内部回路１０４に取り込むことができる。
【００１９】
本実施形態によれば、スレーブデバイスのラッチタイミングをデバイス設計時ではなくデバイスの接続時に設定することが可能となり、スレーブデバイスの汎用性を高めることができる。
【００２０】
図３は、本発明の第２の実施形態を説明するためのインターフェースシステムの概略構成を示すブロック図である。本実施形態のスレーブデバイスを含むインターフェースシステムは、ＣＰＵ等のマスタデバイス３０１と、メモリ装置、コンパニオンチップ等のスレーブデバイス３０２で構成され、スレーブデバイス３０２は、ラッチタイミング調整装置３０５、ラッチタイミング自動設定装置３０７、インターフェース回路３０３、内部回路３０４を含む。
【００２１】
本実施形態のスレーブデバイス３０２は、実施形態１において内部メモリ装置１０６に設定されていたラッチタイミング調整のパラメータをラッチタイミング自動設定装置３０７によって自動的に決定している。
【００２２】
すなわち、本実施形態のスレーブデバイス３０２は、データ転送バスによりマスタデバイス３０１と接続され、マスタデバイス３０１が制御する動作制御信号に従い、マスタデバイス３０１とデータ転送を行なうとともに、スレーブデバイス３０２の起動時にマスタデバイス３０１から送信される基準データをラッチするまでの時間を測定することにより、データ転送バスのデータをラッチするラッチタイミングに対応する遅延値を生成するラッチタイミング自動設定装置３０７と、ラッチタイミング自動設定装置３０７で生成された遅延値に基づき、動作制御信号のラッチタイミングを調整するラッチタイミング調整装置３０５とを備える。
【００２３】
本実施形態によれば、スレーブデバイスの起動時にマスタデバイスから送信される基準データをラッチするまでの時間を測定し、データ転送バスのデータをラッチするラッチタイミングに対応する遅延値を生成し、その遅延値に基づいて動作制御信号のラッチタイミングを調整するので、システム設計者がマスタデバイス、スレーブデバイス間のアクセスタイミングを意識せずにインターフェースを設計することができる。
【００２４】
図４は、本実施形態におけるラッチタイミング調整装置の構成例を示す。図４に示すように、ラッチタイミング調整装置４００は、動作制御信号のエッジを検出する立下りエッジ検出ブロック４０２と、パラメータ４１０〜４２４の設定をデコードするデコーダ４０４と、デコーダ４０４でデコードされた遅延値に従いエッジを遅延させる遅延回路４０３と、各信号のタイミングを同期させるフリップフロップ４５１,４５２,４５３とを備える。
【００２５】
ラッチタイミング調整装置４００は、立下りエッジ検出ブロック４０２で動作制御信号のエッジを検出し、遅延回路４０３でパラメータ４１０〜４２４の設定をデコードした遅延値に従いエッジを遅延させることで動作制御信号をラッチするラッチタイミングを調整する。
【００２６】
図５は、図４に示したラッチタイミング調整装置４００の回路を実際にフリップフロップとセレクタにて構成したラッチタイミング調整装置５００を示している。ラッチタイミング調整装置５００は、図４の遅延回路４０３、デコーダ４０４に代えて、フリップフロップ５５４,５５５等が直列接続された１６段フリップフロップ５１０と、１６段フリップフロップ５１０を通過する信号パスと１６段フリップフロップ５１０をバイパスする信号パスを選択信号によって選択するセレクタ５５６と、フリップフロップ５５７,５５８等が直列接続された８段フリップフロップ５１１と、８段フリップフロップ５１１を通過する信号パスと８段フリップフロップ５１１をバイパスする信号パスを選択信号によって選択するセレクタ５５９と、フリップフロップ５６０,５６１等が直列接続された４段フリップフロップ５１２と、４段フリップフロップ５１２を通過する信号パスと４段フリップフロップ５１２をバイパスする信号パスを選択信号によって選択するセレクタ５６２と、フリップフロップ５６３,５６４が直列接続された２段フリップフロップ５１３と、２段フリップフロップ５５１３を通過する信号パスと２段フリップフロップ５１３をバイパスする信号パスを選択信号によって選択するセレクタ５６５と、フリップフロップ５６６による1段フリップフロップ５１４と、1段フリップフロップ５１４を通過する信号パスと1段フリップフロップ５１４をバイパスする信号パスを選択信号によって選択するセレクタ５６７とを備える。
【００２７】
図５に示すラッチタイミング調整装置では、選択信号の各ビットに対応させて多段のフリップフロップ等の遅延時間を設定することにより、デコーダや遅延回路を用いることなく単純にタイミング調整装置を構成することができる。
【００２８】
図６は、本実施形態のラッチタイミング自動設定装置６００の構成例を示す。ラッチタイミング自動設定装置６００は、データ転送バスが接続される入力データ比較ブロック６１０、マージン確保用遅延ブロック６２０、ラッチタイミング設定パラメータ出力ブロック（遅延値出力ブロック）６３０、動作制御信号が入力されるカウンタブロック６４０から構成される。
【００２９】
入力データ比較ブロック６１０は、データ転送バスのデータを逐次ラッチして、予め決めてあるデータがラッチされるとマージン確保用遅延ブロック６２０にデータラッチが可能であることを通知する。マージン確保用遅延ブロック６２０は、データを安定してラッチできるタイミングを確保する為、ラッチ可能タイミングを遅延させてラッチタイミング設定パラメータ出力ブロック６３０に通知する。ラッチタイミング設定パラメータ出力ブロック６３０は、マージン確保用遅延ブロック６２０よりラッチ可能通知を受けるとカウンタブロック６４０のカウンタ値を読み込み、そのカウンタ値をラッチタイミング設定パラメータとして出力する。カウンタブロック６４０は、動作制御信号のエッジをリセットしてラッチタイミング自動設定装置３０７の動作中は常時カウントを行なっている。
【００３０】
上記動作によってラッチタイミング自動設定装置３０７は、動作制御信号を基準として、データ転送バスからラッチしたデータが予め定められたデータと一致するまでの時間を測定し、その結果をラッチタイミング設定パラメータとして出力する。
【００３１】
図７は、ラッチタイミング自動設定装置(８ビットデータ)の構成例を示す。本実施形態のラッチタイミング自動設定装置７００において、入力データ比較ブロック７１０は、データ転送バスから供給されるデータをラッチするフリップフロップ７１１a〜７１１hと、フリップフロップ７１１a〜７１１hが所定のデータをラッチするとゲートを開くＡＮＤ回路７１２a,７１２bとを含み、マージン確保用遅延回路７２０は、ラッチ可能タイミングを遅延させるフリップフロップ７２１a〜７２１d、ＡＮＤ回路７２２、フリップフロップ７２３a〜７２３d、ＡＮＤ回路７２４を含む。
【００３２】
また、ラッチタイミング設定パラメータ出力ブロック７３０は、フリップフロップ７３１、７３２、遅延値１レジスタ７３３、遅延値２レジスタ７３４、比較器７３５、遅延レジスタ７３６を含み、比較器７３５は、遅延値１レジスタ７３３と遅延値２レジスタ７３４の値を比較し、遅延値１＜遅延値２の場合は、遅延値２レジスタ７３４の値を遅延レジスタ336に格納し、遅延値１≧遅延値２の場合は、遅延値１レジスタ７３３の値を遅延レジスタ７３６に格納する。遅延レジスタ７３６に格納されたデータはラッチタイミング設定パラメータ７０２として出力される。
【００３３】
図８は、ラッチタイミング自動設定装置７００によるラッチタイミング自動設定シーケンスの例である。図８に示すように、ラッチタイミング自動設定シーケンスでは、まず、マスタデバイスからスレーブデバイスへ、ラッチタイミング自動設定回路ONが通知される（ステップS1）。次に、マージン確保のための設定用予備入力(0x55)が通知され（ステップS2）、さらに、設定用入力１(0xAA)（ステップS3）、設定用入力２（0x55）（ステップS4）が通知され、その後、ラッチタイミング自動設定回路OFFが通知される（ステップS5）。以降、ラッチタイミングは、自動設定回路によって決定したラッチタイミングでデータをラッチする。
【００３４】
本実施形態によれば、スレーブデバイスの起動時にマスタデバイスから送信される基準データをラッチするまでの時間を測定し、データ転送バスのデータをラッチするラッチタイミングに対応する遅延値を生成し、その遅延値に基づいて動作制御信号のラッチタイミングを調整するので、システム設計者がマスタデバイス、スレーブデバイス間のアクセスタイミングを意識せずにインターフェースを設計することができる。
【産業上の利用可能性】
【００３５】
本発明のスレーブデバイスは、動作制御信号とデータ転送バスのデータ保障期間の関係が異なる仕様のマスタデバイスからの入力に対しても対応できるインターフェース方式であり、汎用性の高いスレーブデバイス（コンパニオンチップ）のインターフェース方式として有用である。
【図面の簡単な説明】
【００３６】
【図１】本発明の第1の実施形態を説明するためのインターフェースシステムの概略構成を示すブロック図
【図２】本発明の第1の実施形態において動作制御信号の立下りを基準としてラッチタイミングを変化させた場合を示す図
【図３】本発明の第２の実施形態を説明するためのインターフェースシステムの概略構成を示すブロック図
【図４】本発明の第2の実施形態におけるラッチタイミング調整装置の構成を示す図
【図５】本発明の第2の実施形態においてフリップフロップとセレクタのみで構成したラッチタイミング調整装置の構成を示す図
【図６】本発明の第2の実施形態におけるラッチタイミング自動設定装置のブロック図
【図７】本発明の第2の実施形態におけるラッチタイミング自動設定装置(８ビットデータ) のブロック図
【図８】本発明の第2の実施形態に係るインターフェースシステムにおけるラッチタイミング自動設定シーケンスを示す図
【図９】従来の一般的なインターフェースの構成を示す図
【図１０】動作制御信号の立ち上がりでデータをラッチするタイミングチャート
【図１１】動作制御信号の立ち下がりでデータをラッチするタイミングチャート
【符号の説明】
【００３７】
１０１，３０１  マスタデバイス
１０２，３０２  スレーブデバイス
１０３  インターフェース回路
１０４  内部回路
１０５  ラッチタイミング調整装置
１０６  内部メモリ装置
１０７  ラッチタイミング自動設定装置
４０２  立下りエッジ検出ブロック
４０３  遅延回路
４０４  デコーダ
６１０  入力データ比較ブロック
６２０  マージン確保用遅延ブロック
６３０  ラッチタイミング設定パラメータ出力ブロック
【図１】
2005352936.tif 000003
【図２】
2005352936.tif 000004
【図３】
2005352936.tif 000005
【図４】
2005352936.tif 000006
【図５】
2005352936.tif 000007
【図６】
2005352936.tif 000008
【図７】
2005352936.tif 000009
【図８】
2005352936.tif 000010
【図９】
2005352936.tif 000011
【図１０】
2005352936.tif 000012
【図１１】
2005352936.tif 000013