説明

シリアルデータ転送装置およびシリアルクロック転送装置

【課題】物理遅延を利用する高速シリアル転送において、プロセスばらつきや温度特性の影響によりバスマスタからバススレイブへの遅延値がずれる。
【解決手段】複数のセレクタ4a〜4eがシリーズに接続され、それぞれの入力がデータバス1に接続されている。フィードバック選択セレクタ4hは最終段のセレクタ4eの出力に接続の転送ゲート4fの出力データを最前段のセレクタ4aにフィードバックする。送信イネーブル信号Ssenをアサートして複数のセレクタおよび転送ゲートをシリーズに接続し、データ転送速度の通常選択状態でデータバスからの転送データをセレクタ間遅延時間による遅延作用を利用してシリアルに転送するとともに、データ転送速度の低速選択状態でフィードバック選択セレクタからのフィードバックデータをセレクタ間遅延時間よりも長い遷移時間でシリアルに転送する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、システムLSI内部の回路間でのシリアルデータ転送を高速に行うためのシリアルデータ転送装置およびシリアルクロック転送装置に関するものである。
【背景技術】
【0002】
近年、システムLSIが大規模化し、内蔵する機能が増大するのに伴い、システムLSI内部の回路間でのデータ転送に使用する回路および配線が増大してきている。この中でも特に配線に関しては、実際にシステムLSIの内部を接続しているため、システムLSI内の配線リソースの多くを占めることになり、システムLSIのサイズの増大すなわちコストの上昇を引き起している。
【0003】
そこで、システムLSI内部の回路間をシリーズに接続する方法が提案されている。そのような従来のシリアルデータ転送装置を図9(a)に示す。これは、送信用のデータバス90、フリップフロップ91a〜91e、セレクタ92a〜92d、出力バッファ93、逓倍器(PLL)94などから構成され、図9(b)に示すように動作する。すなわち、逓倍器94によりシステムクロックCLKを逓倍して高速の送信イネーブル信号Ssenを生成し、フリップフロップ91a〜91dのクロック入力に印加する。データセット信号DSが“L”のアサート状態にあるとき、セレクタ92a〜92dは“L”入力を選択してデータバス90上の各ビットA3〜A0を出力する。ただし、最終段の転送ゲート91eが閉じているため、出力バッファ93からは“L”の連続信号が出力されることになる。
【0004】
データセット信号DSが“H”になるとシリアル転送状態に移行し、フリップフロップ91a〜91dとセレクタ92a〜92dがシリーズに接続される。また、転送ゲート91eに対する転送クロックStrを“L”から“H”に立ち上げる。これにより、逓倍器94からの送信イネーブル信号Ssenが立ち上がるたびに各ビットの値が転送ゲート91eおよび出力バッファ93からシリアルに出力される(例えば、特許文献1参照。)。ただしこの技術によると、高速転送を実現するためにシステムクロックの逓倍器(PLL)が必須で、面積増大を招くとともに、超高速クロックを供給するためのクロックラインの増強が必要であり、物理設計を非常に困難なものとしているとともに、消費電力の増大を招いている。
【0005】
そこで、上記の課題を解決するためにシリアル転送をクロックに同期させるのでなく、シリアル転送経路自身が有する遅延時間を利用し、遅延時間毎にデータを転送させ、また、転送データ受信に関してもデータ送信と同様にシリアル受信経路自身が有する遅延時間を利用し、遅延時間毎にデータを取り込むことでシリアル転送を実現する。
【0006】
図10(a)は本出願人にかかわるシリアルデータ転送装置におけるシリアル送信回路部の構成を示す回路図である。図10(a)において、10はシリアル送信回路、1は複数ビットラインの送信用のデータバス、3は出力バッファ、4a〜4dはセレクタ、4eは転送ゲートとしてのセレクタ、6a〜6eはデータ保持回路としてのラッチ、DSはデータセット信号、Ssen′は送信イネーブル信号である。複数のセレクタ4a〜4eと複数のラッチ6a〜6eとが交互に並ぶ状態でシリーズに接続されている。データバス1の各ビットC0〜C3がセレクタ4a〜4dの“H”入力に接続され、セレクタ4a〜4dの各出力がそれぞれラッチ6a〜6dを介して次段のセレクタ4b〜4eの“L”入力に接続されている。データバス1の各ビットは、転送ビットの並び順にセレクタ4a〜4dに接続されている。初段のセレクタ4aの“L”入力および転送ゲートセレクタ4eの“H”入力はグランドの“L”に接続され、転送ゲートセレクタ4eの出力はラッチ6eを介して出力バッファ3に接続されている。ラッチ6a〜6dの各出力がそれぞれ次段のセレクタ4b〜4eの“L”入力に接続され、最終段のラッチ6eの出力が出力バッファ3に接続されている。転送ゲートセレクタ4eを除いてセレクタ4a〜4dの総数は、データバス1のビットC0〜C4の総数と同じである。これらのセレクタ4a〜4eがそれぞれの間にラッチ6a〜6dを介在する状態でシリーズに接続されている。ロウアクティブの送信イネーブル信号Ssen′がラッチ6a〜6eのゲート入力のそれぞれに与えられている。
【0007】
セレクタ4a〜4eは、データセット信号DSが“H”のアサート状態のときは上側の“H”入力の信号を選択して出力し、データセット信号DSが“L”のネゲート状態のときは下側の“L”入力の信号を選択して出力する。すなわち、データセット信号DSがアサート状態のとき、セレクタ4a〜4dはデータバス1側を選択するとともに、転送ゲートセレクタ4eはグランドの“L”を選択し、データセット信号DSがネゲート状態のとき、初段のセレクタ4aはグランドの“L”を選択するとともに、セレクタ4b〜4eは前段のラッチ6a〜6dの出力を選択する。
【0008】
次に、以上のように構成されたシリアルデータ転送装置におけるシリアル送信回路10の動作を図10(b)のタイミングチャートに基づいて説明する。
【0009】
データセット信号DSが“H”のアサート状態では、セレクタ4a〜4dはデータバス1の各ビットC0〜C3を選択している。そして、セレクタ4a〜4dの出力すなわちデータバス1の各ビットC0〜C3がラッチ6a〜6dに保持されている。しかし、転送ゲートセレクタ4eにおいては、データセット信号DSが“H”のアサート状態の期間はグランドの“L”を選択しているため、出力バッファ3から出力されるシリアル転送データSoutは、ビットC0〜C3の値がどのようなものであれ、それには無関係に“L”の連続データとなっている。
【0010】
次に、データセット信号DSを“L”のネゲート状態に遷移させ、次いで送信イネーブル信号Ssen′を“L”のアサート状態に遷移させると、シリアル転送状態に移行する。その結果、セレクタ4a〜4dは、それまでデータバス1側に接続されていた状態から、セレクタ4a〜4eおよびラッチ6a〜6eをシリーズに接続した状態へ切り替わる。この切り替わり直後の瞬間では、各ラッチ6a〜6dの出力には、まだそれぞれ接続されているビットC0〜C3の値が保持されている。
【0011】
以下、シリアル転送状態の動作を説明する。セレクタとセレクタとの間には、1つのセレクタおよび1つのラッチの遅延を含む遅延が存在し、この遅延時間をセレクタ間遅延時間τ2とする。
【0012】
送信イネーブル信号Ssen′のアサート後、セレクタ間遅延時間τ2が経過したタイミングt1において、初段のラッチ6aに保持されていたビットC0の値は次段のセレクタ4bを介して次段のラッチ6bへ転送され、ラッチ6bに保持されていたビットC1の値は次段のセレクタ4cを介して次段のラッチ6cへ転送され、ラッチ6cに保持されていたビットC2の値は次段のセレクタ4dを介して次段のラッチ6dへ転送され、ラッチ6dに保持されていたビットC3の値は転送ゲートセレクタ4eを介して次段のラッチ6eへ転送され、ラッチ6eに保持されていた値“L”は出力バッファ3を介して、シリアル転送データSoutの1ビット目として出力される。ただし、この出力は、出力バッファ3の遅延時間Tbだけ遅れる(以下同様)。この期間では、初段のセレクタ4aはグランドの“L”を選択し、その出力は“L”となる。
【0013】
タイミングt1からさらにセレクタ間遅延時間τ2が経過したタイミングt2において、ラッチ6bの出力のビットC0の値は次段のラッチ6cへ転送され、ラッチ6cの出力のビットC1の値は次段のラッチ6dへ転送され、ラッチ6dの出力のビットC2の値は最終段のラッチ6eへ転送され、さらに出力バッファ3を介してビットC2の値が出力され、シリアル転送データSoutはビットC3からビットC2へと転送データが変化する。この期間でも、初段のセレクタ4aは“L”を選択し、セレクタ4a,4bの出力は“L”レベルとなる。
【0014】
タイミングt2からさらにセレクタ間遅延時間τ2が経過したタイミングt3において、ビットC0の値はラッチ6dへ転送され、ラッチ6dの出力のビットC1の値は最終段のラッチ6eへ転送され、さらに出力バッファ3を介してビットC1の値が出力され、シリアル転送データSoutはビットC2からビットC1へと転送データが変化する。この期間でも、初段のセレクタ4aは“L”を選択し、ラッチ6a〜6cの出力は“L”レベルとなる。
【0015】
タイミングt3からさらにセレクタ間遅延時間τ2が経過したタイミングt4において、ビットC0の値は最終段のラッチ6eへ転送され、さらに出力バッファ3を介してビットC0の値が出力され、シリアル転送データSoutはビットC1からビットC0へと転送データが変化する。この期間でも、初段のセレクタ4aは“L”を選択し、ラッチ6a〜6dの出力は“L”レベルとなる。この期間でも、初段のセレクタ4aは“L”を選択し、ラッチ6a〜6dの出力は“L”レベルとなる。
【0016】
さらに時間が経過すると、最終段のラッチ6eの出力は“L”レベルとなり、以降、次のデータセット信号DSの立ち上がりがあるまで、“L”の連続データとなる。すなわち、当初、ラッチ6aに存在したビットC0がシリアル転送データSoutの最終データとして転送が終了すると、最終的に“L”の連続データの出力に切り替わり、シリアル転送が完了する。
【0017】
このようにセレクタ4a〜4eがシリーズに接続されたことに伴うデータのシリアル転送は、セレクタ間遅延時間τ2よる遅延作用に基づいて実現されている。転送用クロックを用いてのシリアル転送ではなく、シリアル送信回路自身が有する遅延作用を利用してのシリアル転送となっている。
【0018】
その後、再びデータセット信号DSが“H”に変化すると、ラッチ6a〜6dはデータバス1側を選択し、それに伴って、ラッチ6a〜6dには新たにデータバス1上に新たにセットされたビットC0′〜C3′の値が取り込まれる。
【特許文献1】特開平5−274260号公報(第2−3頁、第1−2図)
【発明の開示】
【発明が解決しようとする課題】
【0019】
これまで高速シリアル転送において、イネーブル信号をネゲート状態にすることにより入力されたデータを保持し、イネーブル信号をアサート状態にすることにより保持されたデータを出力する機能を持つセレクタおよびデータ保持回路が接続され、隣接するセレクタ間に存在する遅延時間による遅延作用を利用してシリアル転送を実現する。ただし、シリアル転送データおよびシリアル受信回路に対して転送データの開始および終了を知らせるシリアル転送用クロック信号を同じ配線長に配線し、遅延時間を合わせる必要があった。
【0020】
特に命令を他ブロックに供給し、他ブロックを動作させるバスマスタと、バスマスタから命令を受けデータ処理等を行うバススレイブにおいて、多数のバススレイブと1つのバスマスタが接続されたとき、プロセスばらつきや温度特性の影響によりバスマスタからバススレイブへの遅延値がずれ、遅延値の管理が難しくなるため、各送受信器にバスマスタ、バススレイブ間のシリアルデータ転送が正確に実行されたかを管理するためのシリアル転送コントロールを準備する必要があった。また、遅延値が正しく設定されデータ転送が正確に行われたことを確認するためのアクノリッジ信号も必要であった。
【課題を解決するための手段】
【0021】
本発明は、上記の課題を解決する手段として次のような手段を講じる。その基本的な考えは、シリアルデータ転送装置およびシリアルクロック転送装置は、通常のシリアル転送よりも低速なクロックおよびそのクロック幅に合わせたデータを生成する低速転送モードをもつ構成とする。このような構成により、バスマスタからバススレイブへの遅延差が影響することなく、1つのコントロール回路を用いてそれぞれのバススレイブにシリアル転送することになる。
【0022】
本発明によるシリアルデータ転送装置は、
複数のセレクタの各一方の入力がデータバスの各ラインに転送ビットの並び順に個別的に接続され、他方の入力が前記並び順で他のセレクタの出力に接続され、
最終段のセレクタの出力には転送ゲートが接続され、
前記転送ゲートの出力データを最前段のセレクタにフィードバックするフィードバック選択セレクタを有し、
最前段のセレクタの入力には前記フィードバック選択セレクタが接続され、
送信イネーブル信号をアサートすることにより前記複数のセレクタおよび前記転送ゲートをシリーズに接続し、データ転送速度の通常選択状態で前記データバスからの転送データを隣接するセレクタ間に存在するセレクタ間遅延時間による遅延作用を利用してシリアルに転送するとともに、前記データ転送速度の低速選択状態で前記フィードバック選択セレクタからのフィードバックデータを前記セレクタ間遅延時間よりも長い遷移時間でシリアルに転送するように構成されている。
【0023】
この構成によれば、データ転送速度の設定によりセレクタ間遅延時間よりも長い遷移時間でシリアル転送する低速転送モードが選択可能であるので、シリアル転送が正確に行われたかを確認するためのコントロール回路を各バスマスタ、バススレイブに準備するのではなく、バスマスタに1つだけのコントロール回路を準備するのみで、シリアル送信回路においてバスマスタからバススレイブへの遅延時間を整合性をもって確実に設定することが可能となる。その結果として、セレクタの物理遅延を利用したシリアル転送を実効あるものにすることができる。
【0024】
また、本発明によるシリアルデータ転送装置は、
複数のセレクタの各一方の入力がデータバスの各ラインに転送ビットの並び順に個別的に接続され、他方の入力が前記並び順でデータ保持回路を介して他のセレクタの出力に接続され、
最終段のセレクタの出力には転送ゲートが接続され、
前記転送ゲートの出力データを最前段のセレクタにフィードバックするフィードバック選択セレクタを有し、
最前段のセレクタの入力には前記フィードバック選択セレクタが接続され、
送信イネーブル信号をアサートすることにより前記複数のセレクタ、データ保持回路および前記転送ゲートをシリーズに接続し、データ転送速度の通常選択状態で前記データバスからの転送データを隣接するセレクタ間に存在するセレクタ間遅延時間による遅延作用を利用してシリアルに転送するとともに、前記データ転送速度の低速選択状態で前記フィードバック選択セレクタからのフィードバックデータを前記セレクタ間遅延時間よりも長い遷移時間でシリアルに転送するように構成されている。
【0025】
この構成によれば、上記と同様に、セレクタ間遅延時間よりも長い遷移時間でシリアル転送することが選択可能であるので、バスマスタからバススレイブへの遅延時間を整合性をもって確実に設定することが可能となる。
【0026】
以下は、シリアルクロック転送装置についての発明に関するものである。
【0027】
本発明によるシリアルクロック転送装置は、
クロック転送速度の通常選択状態で複数のセレクタに転送期間にわたって論理がセレクタ並び順で交互となるデータを選択し、クロック転送速度の低速選択状態で連続同一論理が前記並び順で交互となるデータを選択するクロック選択セレクタを有し、
複数のセレクタの各一方の入力が前記クロック選択セレクタの出力に転送ビットの並び順に個別的に接続され、他方の入力が前記並び順で他のセレクタの出力に接続され、
最終段のセレクタの出力には転送ゲートが接続され、
送信イネーブル信号をアサートすることにより前記複数のセレクタおよび前記転送ゲートをシリーズに接続し、前記クロック転送速度の通常選択状態で前記クロック選択セレクタからの前記論理がセレクタ並び順で交互となるデータを転送同期クロックとして隣接するセレクタ間に存在するセレクタ間遅延時間による遅延作用を利用してシリアルに転送するとともに、前記クロック転送速度の低速選択状態で前記クロック選択セレクタからの前記連続同一論理がセレクタ並び順で交互となるデータを転送同期クロックとして前記セレクタ間遅延時間よりも長い遷移時間でシリアルに転送するように構成されている。
【0028】
この構成によれば、通常転送モードでも低速転送モードでも、転送データが出力されている期間に正確に対応した転送同期クロックを同期生成して出力することができる。この転送同期クロックを転送データとともに受信側に送信すると、受信側では受信のシリアル/パラレル変換処理を有利に進めることができる。
【0029】
また、本発明によるシリアルクロック転送装置は、
クロック転送速度の通常選択状態で複数のセレクタに転送期間にわたって論理がセレクタ並び順で交互となるデータを選択し、クロック転送速度の低速選択状態で連続同一論理が前記並び順で交互となるデータを選択するクロック選択セレクタを有し、
複数のセレクタの各一方の入力が前記クロック選択セレクタの出力に転送ビットの並び順に個別的に接続され、他方の入力が前記並び順でデータ保持回路を介して他のセレクタの出力に接続され、
最終段のセレクタの出力には転送ゲートが接続され、
送信イネーブル信号をアサートすることにより前記複数のセレクタ、データ保持回路および前記転送ゲートをシリーズに接続し、前記クロック転送速度の通常選択状態で前記クロック選択セレクタからの前記論理がセレクタ並び順で交互となるデータを転送同期クロックとして隣接するセレクタ間に存在するセレクタ間遅延時間による遅延作用を利用してシリアルに転送するとともに、前記クロック転送速度の低速選択状態で前記クロック選択セレクタからの前記連続同一論理がセレクタ並び順で交互となるデータを転送同期クロックとして前記セレクタ間遅延時間よりも長い遷移時間でシリアルに転送するように構成されている。
【0030】
この構成によれば、上記と同様に、通常転送モードでも低速転送モードでも、転送データが出力されている期間に正確に対応した転送同期クロックを同期生成して出力することができる。
【発明の効果】
【0031】
本発明によれば、データ転送速度の設定によりセレクタ間遅延時間よりも長い遷移時間でシリアル転送する低速転送モードが選択可能であるので、シリアル送信回路においてバスマスタからバススレイブへの遅延時間を整合性をもって確実に設定することが可能となる。その結果として、セレクタの物理遅延を利用したシリアル転送を実効あるものにすることができる。また、シリアル転送のためのコントロール回路については、バスマスタ、バススレイブ個々にではなく、1つだけ準備するのでよい。その結果、ゲート規模を削減し、半導体素子のサイズを小さくすることが可能で、安価なLSIを実現できる。
【発明を実施するための最良の形態】
【0032】
以下、本発明にかかわるシリアルデータ転送装置の実施の形態を図面に基づいて詳細に説明する。
【0033】
(実施の形態1)
図1(a)は本発明の実施の形態1のシリアルデータ転送装置の構成を示す回路図である。
【0034】
図1(a)において、10はシリアル送信回路、1は複数ビットラインの送信用のデータバス、2はフリップフロップ、3は出力バッファ、4a〜4eはシリアル転送用のセレクタ、4fは転送ゲートとしてのセレクタ(転送ゲートセレクタ)、4gは低速転送データを選択するための転送データ選択セレクタ、4hはデータバス1のデータとシリアル転送データSoutのフィードバックデータを選択するためのフィードバック選択セレクタ、5a〜5eは増幅用のバッファ、Ssenは送信イネーブル信号、Soutはシリアル転送データ、Siは転送開始命令信号、SSはデータ転送速度(通常転送モード/低速転送モード)を選択するデータ転送速度選択信号、FBSはデータバス1のデータと出力されるシリアル転送データSoutのフィードバックデータとを選択するデータ選択信号である。
【0035】
複数のセレクタ4a〜4fと複数のバッファ5a〜5eとが交互に並ぶ状態でシリーズに接続されている。送信用のデータバス1の各ビットB0がセレクタ4a〜4eの“H”入力に接続され、セレクタ4a〜4eの各出力がそれぞれバッファ5a〜5eを介して次段のセレクタ4b〜4fの“L”入力に接続されている。転送ゲートセレクタ4fの“H”入力はグランドの“L”に接続され、転送ゲートセレクタ4fの出力は出力バッファ3に接続されている。これらのセレクタ4a〜4fがそれぞれの間にバッファ5a〜5eを介在する状態でシリーズに接続されている。送信イネーブル信号Ssenはセレクタ4a〜4fのそれぞれの選択制御入力に与えられている。送信イネーブル信号Ssenはロウアクティブである。転送データ選択セレクタ4gはデータ転送速度選択信号SSが“H”のときはグランドの“L”に接続され、“L”のときはフィードバック選択セレクタ4hの出力が選択される。フィードバック選択セレクタ4hはデータ選択信号FBSが“L”のときはデータバス1からの低速シリアル転送データが接続され、データ選択信号FBSが“H”のときには、シリアル転送データSoutのフィードバックデータが入力されている。
【0036】
次に、以上のように構成された本実施の形態のシリアルデータ転送装置におけるシリアル送信回路の動作を説明する。
【0037】
通常転送モード時の動作を図1(b)のタイミングチャートに基づいて説明する。
【0038】
通常転送モード時には、データ転送速度選択信号SSは論理“H”であり、転送データ選択セレクタ4gはグランドの“L”を選択し、この“L”が初段のセレクタ4aの“L”入力に印加されている。送信イネーブル信号Ssenが“H”のネゲート状態では、セレクタ4a〜4eはデータバス1の各ビットB0〜B4を選択し、転送ゲートセレクタ4fはグランドの“L”を選択している。そして、セレクタ4a〜4eの出力がバッファ5a〜5eを介して次段のセレクタ4b〜4fへ伝播されている。しかし、転送ゲートセレクタ4fにおいては、送信イネーブル信号Ssenが“H”のネゲート状態の期間は、グランドの“L”を選択しているため、出力バッファ3から出力されるシリアル転送データSoutは、ビットB0〜B4の値がどのようなものであれ、それには無関係に“L”の連続データとなっている。
【0039】
次に、フリップフロップ2にロウアクティブの転送開始指令信号Siが入力され、システムクロックCLKが立ち上がると、フリップフロップ2のセットアップ時間Tsの経過後、送信イネーブル信号Ssenが“L”レベルに遷移しアサート状態となる。これによってシリアル転送状態に移行することになる。その結果、セレクタ4a〜4eは、それまでデータバス1側に接続されていた状態から、セレクタ4a〜4fをシリーズに接続した状態へ切り替わる。この切り替わり直後の瞬間では、各セレクタ4a〜4eの出力およびバッファ5a〜5eの出力には、まだそれぞれ接続されているビットB0〜B4の値が保持されている。
【0040】
以下、シリアル転送状態の動作を説明する。セレクタとセレクタとの間には、1つのバッファの遅延を含む遅延が存在し、この遅延時間をセレクタ間遅延時間τ1とする。
【0041】
送信イネーブル信号Ssenのアサート後、セレクタ間遅延時間τ1が経過したタイミングt1において、初段のセレクタ4a・バッファ5aの出力にあったビットB0の値は次段のセレクタ4b・バッファ5bの出力へ転送され、セレクタ4b・バッファ5bの出力にあったビットB1の値は次段のセレクタ4c・バッファ5cの出力へ転送され、セレクタ4c・バッファ5cの出力にあったビットB2の値は次段のセレクタ4d・バッファ5dの出力へ転送され、セレクタ4d・バッファ5dの出力にあったビットB3の値は次段のセレクタ4e・バッファ5eの出力へ転送され、セレクタ4e・バッファ5eの出力にあったビットB4の値は転送ゲートセレクタ4fへ転送され、さらに出力バッファ3を介してビットB4の値がシリアル転送データSoutの1ビット目として出力される。このシリアル転送において、転送ゲートセレクタ4fでは、直前でグランドの“L”を選択していたところ、セレクタ4e・バッファ5eの出力にあったビットB4が転送されてきて、シリアル転送データSoutの1ビット目として出力される。ただし、この出力は、出力バッファ3の遅延時間Tbだけ遅れる(以下同様)。この期間では、初段のセレクタ4aは転送データ選択セレクタ4gを介してグランドの“L”を選択し、その出力は“L”となる。
【0042】
タイミングt1からさらにセレクタ間遅延時間τ1が経過したタイミングt2において、セレクタ4bの出力のビットB0の値は次段のセレクタ4cの出力へ転送され、セレクタ4cの出力のビットB1の値は次段のセレクタ4dの出力へ転送され、セレクタ4dの出力のビットB2の値は次段のセレクタ4eの出力へ転送され、セレクタ4eの出力のビットB3の値は転送ゲートセレクタ4fの出力へ転送され、さらに出力バッファ3を介してビットB3の値が出力され、シリアル転送データSoutはビットB4からビットB3へと転送データが変化する。この期間でも、初段のセレクタ4aは“L”を選択し、セレクタ4a,4bの出力は“L”レベルとなる。
【0043】
タイミングt2からさらにセレクタ間遅延時間τ1が経過したタイミングt3において、ビットB0の値はセレクタ4dの出力へ転送され、ビットB1の値はセレクタ4eの出力へ転送され、ビットB2の値は転送ゲートセレクタ4fの出力へ転送され、さらに出力バッファ3を介してビットB2の値が出力され、シリアル転送データSoutはビットB3からビットB2へと転送データが変化する。この期間でも、初段のセレクタ4aは“L”を選択し、セレクタ4a〜4cの出力は“L”レベルとなる。
【0044】
タイミングt3からさらにセレクタ間遅延時間τ1が経過したタイミングt4において、ビットB0の値はセレクタ4eの出力へ転送され、ビットB1の値は転送ゲートセレクタ4fの出力へ転送され、シリアル転送データSoutはビットB2からビットB1へと転送データが変化する。この期間でも、初段のセレクタ4aは“L”を選択し、セレクタ4a〜4dの出力は“L”レベルとなる。
【0045】
タイミングt4からさらにセレクタ間遅延時間τ1が経過したタイミングt5において、ビットB0の値は転送ゲートセレクタ4fの出力へ転送され、シリアル転送データSoutはビットB1からビットB0へと転送データが変化する。この期間でも、初段のセレクタ4aは“L”を選択し、セレクタ4a〜4eの出力は“L”レベルとなる。
【0046】
以上のタイミングt1からt5にかけて、シリアル転送データSoutは、B4,B3,B2,B1,B0のように推移する。
【0047】
さらに時間が経過すると、転送ゲートセレクタ4fの出力は“L”レベルとなり、以降、次の転送開始指令信号Siの入力があるまで、“L”の連続データとなる。すなわち、当初、セレクタ4aに存在したビットB0がシリアル転送データSoutの最終データとして転送が終了すると、最終的に“L”の連続データの出力に切り替わり、シリアル転送が完了する。
【0048】
このようにセレクタ4a〜4fがシリーズに接続されたことに伴うデータのシリアル転送は、セレクタ間遅延時間τ1による遅延作用に基づいて実現されている。転送用クロックを用いてのシリアル転送ではなく、シリアル送信回路自身が有する遅延作用を利用してのシリアル転送となっている。
【0049】
その後、再び転送開始指令信号Siが“H”に変化すると、セレクタ4a〜4eはデータバス1側を選択し、それに伴って、セレクタ4a〜4eには新たにデータバス1上に新たにセットされたビットB0′〜B4′の値が取り込まれる。
【0050】
次に、低速転送モード時の動作を図2のタイミングチャートに基づいて説明する。図2においては、システムクロックCLKの1周期が図1(b)よりずいぶん短く表示されている。これは、動作速度が低速であることに対応している。低速転送モードにおいては、データ転送速度選択信号SSは論理“L”にされており、転送データ選択セレクタ4gはフィードバック選択セレクタ4hの出力信号を選択している。
【0051】
送信イネーブル信号Ssenが“H”のネゲート状態では、セレクタ4a〜4eの“H”入力にはデータバス1において全ビット一律にされた低速シリアル転送データB0が印加され、転送ゲートセレクタ4fはグランドの“L”に接続されるため、出力バッファ3から出力されるシリアル転送データSoutは“L”の連続データとなっている。
【0052】
次に、フリップフロップ2にロウアクティブの転送開始指令信号Siが入力され、システムクロックCLKが立ち上がると、フリップフロップ2のセットアップ時間Tsの経過後、送信イネーブル信号Ssenが“L”レベルに遷移しアサート状態となる。これによって低速シリアル転送状態に移行することになる。その結果、セレクタ4a〜4eは、それまでデータバス1側に接続されていた状態から、セレクタ4a〜4fをシリーズに接続した状態へ切り替わる。この切り替わり直後の瞬間では、各セレクタ4a〜4eの出力およびバッファ5a〜5eの出力には、全ビット一律に転送データB0の値が保持されている。送信イネーブル信号Ssenの“L”レベル遷移に同期してデータ選択信号FBSが論理“H”となり、フィードバック選択セレクタ4hはシリアル転送データSoutのフィードバックデータを選択するようになる。
【0053】
送信イネーブル信号Ssenのアサート後、フリップフロップ2のセットアップ時間Tsと転送ゲートセレクタ4fの遅延時間τ1および出力バッファ3の遅延時間Tbが経過したタイミングT1において、セレクタ4e・バッファ5eの出力にあったビットB0の値は転送ゲートセレクタ4fへ転送され、さらに出力バッファ3を介してシリアル転送データSoutとして出力される。
【0054】
タイミングT1から転送データB0がシリアル転送データSoutとして出力され、巡回してフィードバック選択セレクタ4hの“L”入力に入るまでの時間をτaとする。この時間τaの経過のタイミングにおいてデータ選択信号FBSを“L”にすることにより、フィードバック選択セレクタ4hはシリアル転送データSoutのフィードバックデータB0を選択することになる。ただし、τaまでの入力は“H”で転送データB0が選択されており、フィードバック選択セレクタ4hの出力はB0である。転送データ選択セレクタ4gの“L”入力に入力された転送データB0は転送データ選択セレクタ4gの出力となり、初段のセレクタ4aの“L”入力に入力される。このときシリアル転送データSoutとしては引き続きデータB0が出力される。
【0055】
また、τaにおいてセレクタ4a〜4eの“H”入力には次の全ビット一律の低速シリアル転送データB1を入力する。
【0056】
タイミングT1からさらに低速転送時間τbが経過したタイミングT2において送信イネーブル信号Ssenが“H”のネゲート状態にする。セレクタ4a〜4eの“H”入力には全ビット一律に低速シリアル転送データB1が印加され、転送ゲートセレクタ4fはグランドの“L”に接続される。転送ゲートセレクタ4fはグランドの“L”を選択するため、シリアル転送データSoutは“L”の連続データとなる。
【0057】
次に、送信イネーブル信号Ssenが“L”レベルに遷移しアサート状態となると、再びシリアル転送状態に移行することになる。
【0058】
以上のタイミングT1からT5にかけて、シリアル転送データSoutは、B0、B1、B2、B3、B4となり、低速シリアル転送が完了する。
【0059】
低速転送時間τbはコマンドによりユーザーが設定することが可能で、セレクタ間遅延時間τ1より長い時間に設定するものとする。
【0060】
上記において、送信イネーブル信号Ssenが“H”のネゲート状態のときに転送ゲートセレクタ4fが選択するのが“L”であり、これに合わせて、送信イネーブル信号Ssenが“L”のアサート状態のときに初段のセレクタ4aが選択するのを“L”としている。このようにするのは、データ転送を行わない期間のシリアル転送データSoutを“L”の連続データとするためである。すなわち、データ列を固定化している。非転送期間で誤ったデータを転送させないためである。
【0061】
なお、固定のデータ列としては“H”の連続データでもよく、その場合には、送信イネーブル信号Ssenがネゲート状態のときに転送ゲートセレクタ4fが選択するのを“H”とし、これに合わせて、送信イネーブル信号Ssenがアサート状態のときに初段のセレクタ4aが選択するのを“H”とすればよい。また、送信イネーブル信号Ssenについても、これをロウアクティブに代えて、ハイアクティブとしてもよい。
【0062】
このようにシリアル転送データSoutをフィードバックすることにより、低速転送時間τbを限りなく長い時間設定することが可能になり、長い時間でもバスマスタとバススレイブ間の遅延時間の差を吸収することが可能である。
【0063】
本実施の形態によれば、シリアル転送が正確に行われたかを確認するためのコントロール回路を各バスマスタ、バススレイブに準備するのではなく、コントロール回路をバスマスタに1つだけ準備することにより、転送シリアルデータおよびシリアル転送用クロックの遅延時間を調整することが可能であり、ゲート規模が小さくできるため、半導体素子のサイズを小さくすることが可能となり、安価なLSIを実現できるものである。
【0064】
(実施の形態2)
本発明の実施の形態2のシリアルデータ転送装置は、実施の形態1の変形の態様であって、データ保持回路としてのラッチを追加したものに相当する。
【0065】
図3(a)は本発明の実施の形態2のシリアルデータ転送装置の構成を示す回路図である。図3(a)において、実施の形態1の図1(a)におけるのと同じ符号は同一構成要素を指しているので、詳しい説明は省略する。図1(a)における転送ゲートセレクタ4fおよびバッファ5a〜5eがなく、代わりに4eが転送ゲートセレクタになっているとともに、データ保持回路としてのラッチ6a〜6eが追加されている。DSはデータセット信号、Ssen′は送信イネーブル信号である。転送ゲートセレクタ4eの"H"入力はグランドの"L"に接続され、転送ゲートセレクタ4eの出力はラッチ6eを介して出力バッファ3に接続されている。ラッチ6a〜6dの各出力がそれぞれ次段のセレクタ4b〜4eの"L"入力に接続されている。ロウアクティブの送信イネーブル信号Ssen′がラッチ6a〜6eのゲート入力のそれぞれに与えられている。セレクタ4a〜4eは、データセット信号DSが"H"のアサート状態のときは上側の"H"入力の信号を選択して出力し、データセット信号DSが"L"のネゲート状態のときは下側の"L"入力の信号を選択して出力する。
【0066】
次に、以上のように構成された本実施の形態のシリアルデータ転送装置におけるシリアル送信回路10の動作を説明する。
【0067】
通常転送モード時の動作を図3(b)のタイミングチャートに基づいて説明する。
【0068】
通常転送モード時には、データ転送速度選択信号SSは論理“H”であり、転送データ選択セレクタ4gはグランドの“L”を選択している。データセット信号DSが“H”のアサート状態では、セレクタ4a〜4dはデータバス1の各ビットC0〜C3を選択している。そして、セレクタ4a〜4dの出力すなわちデータバス1の各ビットC0〜C3がラッチ6a〜6dに保持されている。しかし、転送ゲートセレクタ4eはグランドの“L”を選択しているため、出力バッファ3から出力されるシリアル転送データSoutは、ビットC0〜C3の値がどのようなものであれ、それには無関係に“L”の連続データとなっている。
【0069】
次に、データセット信号DSを“L”のネゲート状態に遷移させ、次いで送信イネーブル信号Ssen′を“L”のアサート状態に遷移させると、シリアル転送状態に移行する。その結果、セレクタ4a〜4dは、それまでデータバス1側に接続されていた状態から、セレクタ4a〜4eおよびラッチ6a〜6eをシリーズに接続した状態へ切り替わる。この切り替わり直後の瞬間では、各ラッチ6a〜6dの出力には、まだそれぞれ接続されているビットC0〜C3の値が保持されている。
【0070】
以下、シリアル転送状態の動作を説明する。セレクタとセレクタとの間には、1つのセレクタおよび1つのラッチの遅延を含む遅延が存在し、この遅延時間をセレクタ間遅延時間τ2とする。
【0071】
送信イネーブル信号Ssen′のアサート後、セレクタ間遅延時間τ2が経過したタイミングt1において、初段のラッチ6aに保持されていたビットC0の値は次段のセレクタ4bを介して次段のラッチ6bへ転送され、ラッチ6bに保持されていたビットC1の値は次段のセレクタ4cを介して次段のラッチ6cへ転送され、ラッチ6cに保持されていたビットC2の値は次段のセレクタ4dを介して次段のラッチ6dへ転送され、ラッチ6dに保持されていたビットC3の値は転送ゲートセレクタ4eを介して次段のラッチ6eへ転送され、ラッチ6eに保持されていた値“L”は出力バッファ3を介して、シリアル転送データSoutの1ビット目として出力される。ただし、この出力は、出力バッファ3の遅延時間だけ遅れる(以下同様)。この期間では、初段のセレクタ4aは“L”を選択し、その出力は“L”となる。
【0072】
タイミングt1からさらにセレクタ間遅延時間τ2が経過したタイミングt2において、ラッチ6bの出力のビットC0の値は次段のラッチ6cへ転送され、ラッチ6cの出力のビットC1の値は次段のラッチ6dへ転送され、ラッチ6dの出力のビットC2の値は最終段のラッチ6eへ転送され、さらに出力バッファ3を介してビットC2の値が出力され、シリアル転送データSoutはビットC3からビットC2へと転送データが変化する。この期間でも、初段のセレクタ4aは“L”を選択し、セレクタ4a,4bの出力は“L”レベルとなる。
【0073】
タイミングt2からさらにセレクタ間遅延時間τ2が経過したタイミングt3において、ビットC0の値はラッチ6dへ転送され、ラッチ6dの出力のビットC1の値は最終段のラッチ6eへ転送され、さらに出力バッファ3を介してビットC1の値が出力され、シリアル転送データSoutはビットC2からビットC1へと転送データが変化する。この期間でも、初段のセレクタ4aは“L”を選択し、ラッチ6a〜6cの出力は“L”レベルとなる。
【0074】
タイミングt3からさらにセレクタ間遅延時間τ2が経過したタイミングt4において、ビットC0の値は最終段のラッチ6eへ転送され、さらに出力バッファ3を介してビットC0の値が出力され、シリアル転送データSoutはビットC1からビットC0へと転送データが変化する。この期間でも、初段のセレクタ4aは“L”を選択し、ラッチ6a〜6dの出力は“L”レベルとなる。この期間でも、初段のセレクタ4aは“L”を選択し、ラッチ6a〜6dの出力は“L”レベルとなる。
【0075】
さらに時間が経過すると、最終段のラッチ6eの出力は“L”レベルとなり、以降、次のデータセット信号DSの立ち上がりがあるまで、“L”の連続データとなる。すなわち、当初、ラッチ6aに存在したビットC0がシリアル転送データSoutの最終データとして転送が終了すると、最終的に“L”の連続データの出力に切り替わり、シリアル転送が完了する。
【0076】
このようにセレクタ4a〜4eがシリーズに接続されたことに伴うデータのシリアル転送は、セレクタ間遅延時間τ2よる遅延作用に基づいて実現されている。転送用クロックを用いてのシリアル転送ではなく、シリアル送信回路自身が有する遅延作用を利用してのシリアル転送となっている。
【0077】
その後、再びデータセット信号DSが“H”に変化すると、ラッチ6a〜6dはデータバス1側を選択し、それに伴って、ラッチ6a〜6dには新たにデータバス1上に新たにセットされたビットC0′〜C3′の値が取り込まれる。
【0078】
次に、低速転送モード時の動作を図4のタイミングチャートに基づいて説明する。
【0079】
低速転送モードにおいては、データ転送速度選択信号SSは論理“L”にされており、転送データ選択セレクタ4gはフィードバック選択セレクタ4hの出力信号を選択している。データセット信号DSが“H”のアサート状態では、セレクタ4a〜4dは一律にデータバス1のビットC0を選択している。そして、ビットC0が一律にラッチ6a〜6dに保持されている。しかし、転送ゲートセレクタ4eはグランドの“L”を選択しているため、シリアル転送データSoutは“L”の連続データとなっている。
【0080】
次に、データセット信号DSを“L”のネゲート状態に遷移させ、次いで送信イネーブル信号Ssen′を“L”のアサート状態に遷移させると、シリアル転送状態に移行する。その結果、セレクタ4a〜4dは、それまでデータバス1側に接続されていた状態から、セレクタ4a〜4eおよびラッチ6a〜6eをシリーズに接続した状態へ切り替わる。この切り替わり直後の瞬間では、各ラッチ6a〜6dの出力には、まだそれぞれ接続されているC0の値が保持されている。
【0081】
送信イネーブル信号Ssen′のアサート後、出力バッファ3の遅延時間Tb、セレクタ4eとラッチ6eのセレクタ間遅延時間τ2が経過したタイミングT1において、セレクタ4d・ラッチ6dの出力にあったビットC0の値は出力バッファ3へ転送され、さらに出力バッファ3を介してビットC0の値がシリアル転送データSoutとして出力される。
【0082】
タイミングT1からC0のデータがシリアル転送データSoutとして出力され、フィードバック選択セレクタ4hの“L”入力に入るまでの時間をτa′とする。このτa′においてデータ選択信号FBSを“L”にすることによりフィードバック選択セレクタ4hはシリアル転送データSoutとして出力されているC0を選択することになる。ただし、フィードバック選択セレクタ4hの出力はC0のままである。転送データ選択セレクタ4gの“L”入力に入力されたC0は転送データ選択セレクタ4gの出力となり、セレクタ4aの“L”入力に入力される。このときシリアル転送データSoutは引き続きC0が出力される。
【0083】
また、τa′においてセレクタ4a〜4eの“H”入力には低速シリアル転送データのC1を入力する。以下、上記と同様の動作を繰り返す。タイミングT1からT5にかけて、シリアル転送データSoutは、C0、C1、C2、C3となり、低速シリアル転送が完了する。
【0084】
本実施の形態によれば、シリアル転送が正確に行われたかを確認するためのコントロール回路を各バスマスタ、バススレイブに準備するのではなく、コントロール回路をバスマスタに1つだけ準備することにより、転送シリアルデータおよびシリアル転送用クロックの遅延時間を調整することが可能であり、ゲート規模が小さくできるため、半導体素子のサイズを小さくすることが可能となり、安価なLSIを実現できるものである。
【0085】
(実施の形態3)
図5(a)は本発明の実施の形態5のシリアルクロック転送装置の構成を示す回路図である。
【0086】
シリアル送信回路20は、次のように構成されている。すなわち、セレクタ4Aの“H”入力に接続のクロック選択セレクタ4Hにおいては、その左側の“H”入力にグランドの“L”が接続され、右側の“L”入力にもグランドの“L”が接続されている。セレクタ4Bの“H”入力に接続のクロック選択セレクタ4Iにおいては、その左側の“H”入力に電源電位の“H”が接続され、右側の“L”入力にグランドの“L”が接続されている。セレクタ4Cの“H”入力に接続のクロック選択セレクタ4Jにおいては、その左側の“H”入力にグランドの“L”が接続され、右側の“L”入力にもグランドの“L”が接続されている。セレクタ4Dの“H”入力に接続のクロック選択セレクタ4Kにおいては、その左側の“H”入力に電源電位の“H”が接続され、右側の“L”入力にも電源電位の“H”が接続されている。セレクタ4Eの“H”入力に接続のクロック選択セレクタ4Lにおいては、その左側の“H”入力にグランドの“L”が接続され、右側の“L”入力に電源電位の“H”が接続されている。セレクタ4Fの“H”入力に接続のクロック選択セレクタ4Mにおいては、その左側の“H”入力に電源電位の“H”が接続され、右側の“L”入力にも電源電位の“H”が接続されている。
【0087】
以上をまとめると、
(“L”,“L”)、(“H”,“L”)、(“L”,“L”)、(“H”,“H”)、(“L”,“H”)、(“H”,“H”)
となっている。このうち左側のみを抽出すると、
“L”,“H”,“L”,“H”,“L”,“H”
となっており、右側のみを抽出すると、
“L”,“L”,“L”,“H”,“H”,“H”
となっている。
【0088】
セレクタ4A〜4Eの各出力はそれぞれ次段のセレクタ4B〜4Fの“L”入力に接続されている。初段のセレクタ4Aの“L”入力はグランドの“L”に接続され、転送ゲートセレクタ4Gの出力は出力バッファ8に接続されている。SS′はクロックの速度を選択するクロック転送速度選択信号である。
【0089】
通常転送モード時の動作を図5(b)のタイミングチャートに基づいて説明する。
【0090】
通常転送モードのときは、クロック転送速度選択信号SS′を論理“H”に設定する。これにより、クロック選択セレクタ4H〜4Mは、左側の“H”入力を選択し、それらの出力の論理は、“L”,“H”,“L”,“H”,“L”,“H”となる。送信イネーブル信号Ssenが“H”のネゲート状態のとき、セレクタ4A〜4Fは上側の“H”入力を選択する(データセット状態)。したがって、セレクタ4A〜4Fの出力は、“L”,“H”,“L”,“H”,“L”,“H”となる。ただし、転送ゲートセレクタ4Gはグランドの“L”を選択しているので、出力バッファ8を介しての転送同期クロックSclkは連続“L”となる。この状態は、送信イネーブル信号Ssenが“L”となってアサートした後、セレクタ間遅延時間τ3が経過したタイミングt1の直前まで維持される。
【0091】
送信イネーブル信号Ssenがアサートされて論理“L”になると、セレクタ4A〜4Gは“L”入力を選択する。すなわち、セレクタ4A〜4Gがシリーズに接続され、シリアル転送状態に移行する。システムクロックCLKのほぼ1周期に相当する送信イネーブル信号Ssenの“L”レベル期間において、セレクタ4A〜4Fの“L”,“H”,“L”,“H”,“L”,“H”が伝播され、転送同期クロックSclkとして出力される。この“L”,“H”の時間間隔はセレクタ間遅延時間τ3となっている。このときの転送同期クロックSclkは、シリアル送信回路10において通常転送モードで、出力バッファ3から出力される転送データB0〜B4に正確に同期することになる。
【0092】
次に、低速転送モード時の動作を図6のタイミングチャートに基づいて説明する。図6においては、システムクロックCLKの1周期が図5(b)よりずいぶん短く表示されている。これは、動作速度が低速であることに対応している。
【0093】
低速転送モードのときは、クロック転送速度選択信号SS′を論理“L”に設定する。これにより、クロック選択セレクタ4H〜4Mは、右側の“L”入力を選択し、それらの出力の論理は、“L”,“L”,“L”,“H”,“H”,“H”となる。送信イネーブル信号Ssenが“H”のネゲート状態のとき、セレクタ4A〜4Fは上側の“H”入力を選択し、その出力は、“L”,“L”,“L”,“H”,“H”,“H”となる。ただし、転送ゲートセレクタ4Gはグランドの“L”を選択しているので、出力バッファ8を介しての転送同期クロックSclkは連続“L”となる。この状態は、送信イネーブル信号Ssenが“L”となってアサートした後、セレクタ間遅延時間τ3および出力バッファ8の遅延時間Tbが経過したタイミングT1の直前まで維持される。
【0094】
送信イネーブル信号Ssenがアサートされて論理“L”になると、セレクタ4A〜4Gは“L”入力を選択する。すなわち、セレクタ4A〜4Gがシリーズに接続され、シリアル転送状態に移行する。送信イネーブル信号Ssenの“L”レベル期間において、転送ゲートセレクタ4Gに、セレクタ4F,4E,4Dの “H”,“H”,“H”が連続“H”の状態で伝播され、セレクタ4C,4B,4Aの“L”,“L”,“L”が連続“L”の状態で伝播される(タイミングT1〜T3)。
【0095】
次に、タイミングT3で、システムクロックCLKの“H”状態で転送開始指令信号Siが変化して送信イネーブル信号Ssenが“H”のネゲート状態になると、セレクタ4A〜4Fは再びデータセット状態になり、“L”,“L”,“L”,“H”,“H”,“H”にセットされる。そして、送信イネーブル信号Ssenがアサートされ、再びシリアル転送状態に移行すると、転送ゲートセレクタ4Gに、セレクタ4F,4E,4Dの “H”,“H”,“H”が連続“H”の状態で伝播され、セレクタ4C,4B,4Aの“L”,“L”,“L”が連続“L”の状態で伝播される(タイミングT3〜T5)。
【0096】
以上の動作を繰り返すことにより、出力バッファ8から連続“H”、連続“L”の繰り返しが転送同期クロックSclkとして出力される。このときの転送同期クロックSclkは、シリアル送信回路10において低速転送モードで、出力バッファ3から出力される転送データB0〜B4に正確に同期することになる。
【0097】
なお、上記の実施の形態においては、連続“H”用のセレクタ段数と連続“L”用のセレクタ段数とが同数となっているが、これは同数でなくてもかまわない。
【0098】
本実施の形態によれば、通常転送モードでも低速転送モードでも、シリアル送信回路10において転送データB0〜B4が出力されている期間に正確に対応する状態で、シリアル送信回路20において転送同期クロックSclkを同期生成して出力することができる。この転送同期クロックSclkを転送データB0〜B4とともに受信側に送信すると、受信側では受信のシリアル/パラレル変換処理を有利に進めることができる。
【0099】
(実施の形態4)
本発明の実施の形態4のシリアルクロック転送装置は、実施の形態3の変形の態様であって、データ保持回路としてのラッチを追加したものに相当する。
【0100】
図7(a)は本発明の実施の形態4のシリアルクロック転送装置の構成を示す回路図である。図7(a)において、実施の形態3の図5(a)におけるのと同じ符号は同一構成要素を指しているので、詳しい説明は省略する。図5(a)におけるバッファ5A〜5Fがなく、代わりにデータ保持回路としてのラッチ6A〜6Fが追加されている。DSはデータセット信号、Ssen′は送信イネーブル信号である。ラッチ6A〜6Fの各出力がそれぞれ次段のセレクタ4B〜4Gの"L"入力に接続されている。ロウアクティブの送信イネーブル信号Ssen′がラッチ6A〜6Fのゲート入力のそれぞれに与えられている。セレクタ4A〜4Gは、データセット信号DSが"H"のアサート状態のときは上側の"H"入力の信号を選択して出力し、データセット信号DSが"L"のネゲート状態のときは下側の"L"入力の信号を選択して出力する。
【0101】
次に、以上のように構成された本実施の形態のシリアルデータ転送装置におけるシリアル送信回路10の動作を説明する。
【0102】
通常転送モード時の動作を図7(b)のタイミングチャートに基づいて説明する。
【0103】
通常転送モードのときは、クロック転送速度選択信号SS′を論理“H”に設定する。これにより、クロック選択セレクタ4H〜4Mは、左側の“H”入力を選択し、それらの出力の論理は、“L”,“H”,“L”,“H”,“L”,“H”となる。データセット信号DSが“H”のアサート状態のとき、セレクタ4A〜4Fは上側の“H”入力を選択し、その出力は、“L”,“H”,“L”,“H”,“L”,“H”となる。ただし、転送ゲートセレクタ4Gはグランドの“L”を選択しているので、出力バッファ8を介しての転送同期クロックSclkは連続“L”となる。この状態は、送信イネーブル信号Ssen′が“L”となってアサートした後、セレクタ間遅延時間τ3が経過したタイミングt1の直前まで維持される。
【0104】
次に、データセット信号DSを“L”のネゲート状態に遷移させると、セレクタ4A〜4Gは“L”入力を選択し、セレクタ4A〜4Fおよびラッチ6A〜6Fをシリーズに接続した状態へ切り替わり、シリアル転送状態に移行する。セレクタ4A〜4Fの“L”,“H”,“L”,“H”,“L”,“H”が伝播され、転送同期クロックSclkとして出力される。この“L”,“H”の時間間隔はセレクタ間遅延時間τ3となっている。このときの転送同期クロックSclkは、シリアル送信回路10において通常転送モードで、出力バッファ3から出力される転送データC0〜C4に正確に同期することになる。
【0105】
次に、低速転送モード時の動作を図8のタイミングチャートに基づいて説明する。
【0106】
低速転送モードのときは、クロック転送速度選択信号SS′を論理“L”に設定する。これにより、クロック選択セレクタ4H〜4Mは、右側の“L”入力を選択し、それらの出力の論理は、“L”,“L”,“L”,“H”,“H”,“H”となる。データセット信号DSが“H”のアサート状態のとき、セレクタ4A〜4Fは上側の“H”入力を選択し、その出力は、“L”,“L”,“L”,“H”,“H”,“H”となる。ただし、転送ゲートセレクタ4Gはグランドの“L”を選択しているので、出力バッファ8を介しての転送同期クロックSclkは連続“L”となる。
【0107】
次に、データセット信号DSがネゲートされて論理“L”になると、セレクタ4A〜4Gは“L”入力を選択し、セレクタ4A〜4Gがシリーズに接続され、シリアル転送状態に移行する。ロウアクティブの送信イネーブル信号Ssen′の“L”レベル期間において、転送ゲートセレクタ4Gに、セレクタ4F,4E,4Dの “H”,“H”,“H”が連続“H”の状態で伝播され、セレクタ4C,4B,4Aの“L”,“L”,“L”が連続“L”の状態で伝播される(タイミングT1〜T3)。
【0108】
次に、タイミングT3で、データセット信号DSがアサートされて論理“H”になり、送信イネーブル信号Ssen′がネゲートされて論理“H”になると、セレクタ4A〜4Fは再びデータセット状態になり、“L”,“L”,“L”,“H”,“H”,“H”にセットされる。そして、データセット信号DSがネゲートされて論理“L”になり、送信イネーブル信号Ssen′がアサートされて論理“L”になって、再びシリアル転送状態に移行すると、転送ゲートセレクタ4Gに、セレクタ4F,4E,4Dの “H”,“H”,“H”が連続“H”の状態で伝播され、セレクタ4C,4B,4Aの“L”,“L”,“L”が連続“L”の状態で伝播される(タイミングT3〜T5)。
【0109】
以上の動作を繰り返すことにより、出力バッファ8から連続“H”、連続“L”の繰り返しが転送同期クロックSclkとして出力される。このときの転送同期クロックSclkは、シリアル送信回路10において低速転送モードで、出力バッファ3から出力される転送データC0〜C4に正確に同期することになる。
【0110】
なお、上記の実施の形態においては、連続“H”用のセレクタ段数と連続“L”用のセレクタ段数とが同数となっているが、これは同数でなくてもかまわない。
【0111】
本実施の形態によれば、通常転送モードでも低速転送モードでも、シリアル送信回路10において転送データC0〜C4が出力されている期間に正確に対応する状態で、シリアル送信回路20において転送同期クロックSclkを同期生成して出力することができる。この転送同期クロックSclkを転送データC0〜C4とともに受信側に送信すると、受信側では受信のシリアル/パラレル変換処理を有利に進めることができる。
【産業上の利用可能性】
【0112】
本発明は、ゲート規模や配線リソースの削減の効果を有し、システムLSI内部の回路間での高速シリアル転送等の技術として有用である。
【図面の簡単な説明】
【0113】
【図1】(a)は本発明の実施の形態1のシリアルデータ転送装置の構成を示す回路図、(b)は通常転送モード時の動作を示すタイミングチャート
【図2】本発明の実施の形態1のシリアルデータ転送装置の低速転送モード時の動作を示すタイミングチャート
【図3】(a)は本発明の実施の形態2のシリアルデータ転送装置の構成を示す回路図、(b)は通常転送モード時の動作を示すタイミングチャート
【図4】本発明の実施の形態2のシリアルデータ転送装置の低速転送モード時の動作を示すタイミングチャート
【図5】(a)は本発明の実施の形態3のシリアルクロック転送装置の構成を示す回路図、(b)は通常転送モード時の動作を示すタイミングチャート
【図6】本発明の実施の形態3のシリアルクロック転送装置の低速転送モード時の動作を示すタイミングチャート
【図7】(a)は本発明の実施の形態4のシリアルクロック転送装置の構成を示す回路図、(b)は通常転送モード時の動作を示すタイミングチャート
【図8】本発明の実施の形態4のシリアルクロック転送装置の低速転送モード時の動作を示すタイミングチャート
【図9】(a)は従来の技術のシリアルデータ転送装置の構成を示す回路図、(b)はその動作を示すタイミングチャート
【図10】(a)は先行技術のシリアルデータ転送装置の構成を示す回路図、(b)はその動作を示すタイミングチャート
【符号の説明】
【0114】
1 送信用のデータバス
2 フリップフロップ
3 出力バッファ
4a〜4e、4A〜4F セレクタ
4f、4G 転送ゲートセレクタ
4g 転送データ選択セレクタ
4h フィードバック選択セレクタ
4H〜4M クロック選択セレクタ
5a〜5e バッファ
6a〜6e、6A〜6F ラッチ(データ保持回路)
8 出力バッファ
10,20 シリアル送信回路
CLK システムクロック
DS データセット信号
FBS データ選択信号
Ssen,Ssen′ 送信イネーブル信号
Si 転送開始指令信号
Sout シリアル転送データ
SS データ転送速度選択信号
SS′ クロック転送速度選択信号
Sclk 転送同期クロック

【特許請求の範囲】
【請求項1】
複数のセレクタの各一方の入力がデータバスの各ラインに転送ビットの並び順に個別的に接続され、他方の入力が前記並び順で他のセレクタの出力に接続され、
最終段のセレクタの出力には転送ゲートが接続され、
前記転送ゲートの出力データを最前段のセレクタにフィードバックするフィードバック選択セレクタを有し、
最前段のセレクタの入力には前記フィードバック選択セレクタが接続され、
送信イネーブル信号をアサートすることにより前記複数のセレクタおよび前記転送ゲートをシリーズに接続し、データ転送速度の通常選択状態で前記データバスからの転送データを隣接するセレクタ間に存在するセレクタ間遅延時間による遅延作用を利用してシリアルに転送するとともに、前記データ転送速度の低速選択状態で前記フィードバック選択セレクタからのフィードバックデータを前記セレクタ間遅延時間よりも長い遷移時間でシリアルに転送するように構成されているシリアルデータ転送装置。
【請求項2】
複数のセレクタの各一方の入力がデータバスの各ラインに転送ビットの並び順に個別的に接続され、他方の入力が前記並び順でデータ保持回路を介して他のセレクタの出力に接続され、
最終段のセレクタの出力には転送ゲートが接続され、
前記転送ゲートの出力データを最前段のセレクタにフィードバックするフィードバック選択セレクタを有し、
最前段のセレクタの入力には前記フィードバック選択セレクタが接続され、
送信イネーブル信号をアサートすることにより前記複数のセレクタ、データ保持回路および前記転送ゲートをシリーズに接続し、データ転送速度の通常選択状態で前記データバスからの転送データを隣接するセレクタ間に存在するセレクタ間遅延時間による遅延作用を利用してシリアルに転送するとともに、前記データ転送速度の低速選択状態で前記フィードバック選択セレクタからのフィードバックデータを前記セレクタ間遅延時間よりも長い遷移時間でシリアルに転送するように構成されているシリアルデータ転送装置。
【請求項3】
クロック転送速度の通常選択状態で複数のセレクタに転送期間にわたって論理がセレクタ並び順で交互となるデータを選択し、クロック転送速度の低速選択状態で連続同一論理が前記並び順で交互となるデータを選択するクロック選択セレクタを有し、
複数のセレクタの各一方の入力が前記クロック選択セレクタの出力に転送ビットの並び順に個別的に接続され、他方の入力が前記並び順で他のセレクタの出力に接続され、
最終段のセレクタの出力には転送ゲートが接続され、
送信イネーブル信号をアサートすることにより前記複数のセレクタおよび前記転送ゲートをシリーズに接続し、前記クロック転送速度の通常選択状態で前記クロック選択セレクタからの前記論理がセレクタ並び順で交互となるデータを転送同期クロックとして隣接するセレクタ間に存在するセレクタ間遅延時間による遅延作用を利用してシリアルに転送するとともに、前記クロック転送速度の低速選択状態で前記クロック選択セレクタからの前記連続同一論理が交互となるデータを転送同期クロックとして前記セレクタ間遅延時間よりも長い遷移時間でシリアルに転送するように構成されているシリアルクロック転送装置。
【請求項4】
クロック転送速度の通常選択状態で複数のセレクタに転送期間にわたって論理がセレクタ並び順で交互となるデータを選択し、クロック転送速度の低速選択状態で連続同一論理が前記並び順で交互となるデータを選択するクロック選択セレクタを有し、
複数のセレクタの各一方の入力が前記クロック選択セレクタの出力に転送ビットの並び順に個別的に接続され、他方の入力が前記並び順でデータ保持回路を介して他のセレクタの出力に接続され、
最終段のセレクタの出力には転送ゲートが接続され、
送信イネーブル信号をアサートすることにより前記複数のセレクタ、データ保持回路および前記転送ゲートをシリーズに接続し、前記クロック転送速度の通常選択状態で前記クロック選択セレクタからの前記論理がセレクタ並び順で交互となるデータを転送同期クロックとして隣接するセレクタ間に存在するセレクタ間遅延時間による遅延作用を利用してシリアルに転送するとともに、前記クロック転送速度の低速選択状態で前記クロック選択セレクタからの前記連続同一論理が交互となるデータを転送同期クロックとして前記セレクタ間遅延時間よりも長い遷移時間でシリアルに転送するように構成されているシリアルクロック転送装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2006−243897(P2006−243897A)
【公開日】平成18年9月14日(2006.9.14)
【国際特許分類】
【出願番号】特願2005−55780(P2005−55780)
【出願日】平成17年3月1日(2005.3.1)
【出願人】(000005821)松下電器産業株式会社 (73,050)