JP2005078523A - シリアル転送装置 - Google Patents

シリアル転送装置 Download PDF

Info

Publication number
JP2005078523A
JP2005078523A JP2003310460A JP2003310460A JP2005078523A JP 2005078523 A JP2005078523 A JP 2005078523A JP 2003310460 A JP2003310460 A JP 2003310460A JP 2003310460 A JP2003310460 A JP 2003310460A JP 2005078523 A JP2005078523 A JP 2005078523A
Authority
JP
Japan
Prior art keywords
data
serial
transfer
selectors
selector
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.)
Pending
Application number
JP2003310460A
Other languages
English (en)
Inventor
Mitsuhiro Imaizumi
光博 今泉
Yoichiro Ishida
洋一郎 石田
Chie Toyoshima
千栄 豊島
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2003310460A priority Critical patent/JP2005078523A/ja
Priority to US10/926,103 priority patent/US7213090B2/en
Priority to CNB2004100769551A priority patent/CN1322442C/zh
Publication of JP2005078523A publication Critical patent/JP2005078523A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M9/00Parallel/series conversion or vice versa
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2207/00Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
    • G11C2207/10Aspects relating to interfaces of memory device to external buses
    • G11C2207/107Serial-parallel conversion of data or prefetch

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Information Transfer Systems (AREA)
  • Bus Control (AREA)

Abstract

【課題】 高速転送を実現するためにシステムクロックの逓倍器(PLL)が必須で、面積増大を招くとともに、超高速クロックを供給するためのクロックラインの増強が必要であり、物理設計を非常に困難なものとしているとともに、消費電力の増大を招いている。
【解決手段】 シリアルデータ転送をクロックに同期させるのでなく、シリアル転送装置自身が有する遅延時間を利用し、遅延時間毎にデータを転送させる。また、シリアルデータ受信に関してもデータ送信と同様にシリアル受信装置自身が有する遅延時間を利用し、遅延時間毎にデータを取り込むことで、シリアル転送用の高速クロックを生成する逓倍器(PLL)の必要性をなくすことができる。加えて、クロックを用いないことから、従来技術に比べて、ゲート規模を小さくすることができる。
【選択図】 図1

Description

本発明は、システムLSI内部の回路間でのシリアルデータ転送を高速に行うためのシリアル転送装置に関するものである。
近年、システムLSIが大規模化し、内蔵する機能が増大するのに伴い、システムLSI内部の回路間でのデータ転送に使用する回路および配線が増大してきている。この中でも特に配線に関しては、実際にシステムLSIの内部を接続しているため、システムLSI内の配線リソースの多くを占めることになり、システムLSIのサイズの増大すなわちコストの上昇を引き起している。
そこで、システムLSI内部の回路間の接続をシリアル接続する方法が提案されている。そのような従来のシリアル転送装置を図17(a)に示す。これは、送信用のデータバス90、フリップフロップ91a〜91e、セレクタ92a〜92d、出力バッファ93、逓倍器(PLL)94などから構成され、図17(b)に示すように動作する。すなわち、逓倍器94によりシステムクロックCLKを逓倍して高速の送信イネーブル信号Ssenを生成し、フリップフロップ91a〜91dのクロック入力に印加する。データセット信号DSが“L”のアサート状態にあるとき、セレクタ92a〜92dは“L”入力を選択して送信用のデータバス90上の各ビットA3〜A0を出力している。ただし、最終段の転送ゲート91eが閉じているため、出力バッファ93からは“L”の連続信号が出力されることになる。
データセット信号DSが“H”になるとシリアル転送モードに移行し、フリップフロップ91a〜91dとセレクタ92a〜92dがシリアル接続される。また、転送ゲート91eに対する転送クロックStrを“L”から“H”に立ち上げる。これにより、逓倍器94からの送信イネーブル信号Ssenが立ち上がるたびに各ビットの値が転送ゲート91eおよび出力バッファ93からシリアルに出力される(例えば、特許文献1参照)。
特開平5−274260号公報(第2−3頁、第1−2図)
上記の従来技術は、シリアル転送をクロック信号で実現している。したがって、高速転送を実現するためには、本来システムに必要なクロックより数倍から数十倍も高速なクロックを必要とし、逓倍器(PLL)によるクロック生成が必須となっている。しかし、逓倍器を搭載するために、面積増大を招くとともに、超高速クロックを供給するためのクロックラインの増強が必要であり、物理設計を非常に困難なものとしている。
また、データ転送のパフォーマンスを落とさないためには、高速クロックを常に使用する必要があり、消費電力が増大するという課題があった。
本発明は、上記の課題を解決するために次のような手段を講じる。その基本的考え方は、データのシリアル転送をクロックに同期させるのでなく、シリアル送信回路自身が有する遅延作用を利用してシリアル転送を行うことにある。
第1の解決手段として、本発明によるシリアル転送装置は、シリアル送信回路部に該当するものであって、複数のセレクタの各一方の入力がデータバスの各ラインに転送ビットの並び順に個別的に接続され、他方の入力が前記並び順で他のセレクタの出力に接続され、最終段のセレクタの出力には転送ゲートが接続され、送信イネーブル信号のネゲート状態で前記複数のセレクタに前記データバス上のデータをセットし、前記送信イネーブル信号をアサートすることにより前記複数のセレクタおよび前記転送ゲートをシリアル接続し、前記セットされたデータを隣接するセレクタ間に存在する遅延時間による遅延作用を利用してシリアルに転送することを特徴とするものである。上記の転送ゲートとしては、同様のセレクタを用いてもよい。セレクタ間に増幅用のバッファを挿入してもよい。
送信イネーブル信号がネゲート状態にあるとき、各セレクタの入力はデータバスの対応する各ビットラインに接続された状態にあり、各セレクタの出力にはデータバス上のデータがセットされている。ただし、次段のセレクタの入力とは切り離されているとともに、最終段のセレクタは転送ゲートの出力オフの状態のために、データ転送は起きないで、セットされたデータはその場に保持されている。このデータセット状態で、送信イネーブル信号をアサートすると、複数のセレクタおよび最終段のセレクタの出力側の転送ゲートがシリアル接続された状態に切り替わる。保持されていたデータは、次段のセレクタの出力側に転送することになる。このとき、転送用のクロックを用いてシリアル転送を行うのではなく、シリアル送信回路自身が有する遅延作用を利用してシリアル転送を行う。1ビット分の転送にかかる時間は、隣接するセレクタ間に存在する遅延時間(セレクタ間遅延時間)に対応したものとなる。
第2の解決手段として、本発明によるシリアル転送装置は、シリアル送信回路部に該当するものであって、複数のセレクタの各一方の入力がデータバスの各ラインに転送ビットの並び順に個別的に接続され、他方の入力が前記並び順でデータ保持回路を介して他のセレクタの出力に接続され、最終段のセレクタの出力には転送ゲートが接続され、データセット信号のアサート状態で前記複数のセレクタを介して、前記複数のデータ保持回路に前記データバス上のデータをセットし、前記データセット信号をネゲートすることにより前記各データ保持回路を前記複数のセレクタを介してシリアル接続しかつ前記転送ゲートもシリアル接続するとともに、送信イネーブル信号を前記データ保持回路に印加することにより、前記セットされたデータを隣接するセレクタ間に存在する遅延時間による遅延作用を利用してシリアルに転送することを特徴とするものである。
データセット信号がアサート状態にあるとき、各セレクタの入力はデータバスの対応する各ビットラインに接続された状態にあり、各セレクタの出力側のデータ保持回路にはデータバス上のデータがセットされている。ただし、次段のセレクタの入力とは切り離されているとともに、最終段のセレクタの出力側の転送ゲートは出力オフの状態のために、データ転送は起きない状態であり、セットされたデータはその場に保持されている。このデータセット状態で、データセット信号をネゲートするとともに、送信イネーブル信号をアサートすると、複数のセレクタおよび転送ゲートがシリアル接続された状態に切り替わる。また、送信イネーブル信号をアサートしてデータ保持回路に印加すると、データ保持回路はスルー状態となり、前段のセレクタを介してその前段のデータ保持回路のデータを取り込んで、さらに送り出す。この場合に、転送用のクロックを用いてシリアル転送を行うのではなく、シリアル送信回路自身が有する遅延作用を利用してシリアル転送を行う。1ビット分のデータ転送に要する時間は、隣接するセレクタ間に存在する遅延時間(セレクタ間遅延時間)に対応したものとなる。ラッチを追加することにより、第1の解決手段より安定したシリアル転送が可能となる。
第3の解決手段として、本発明によるシリアル転送装置は、シリアル送信回路部に該当するものであって、上記の第1の解決手段において、さらに、第1の解決手段のシリアル転送装置と同様の構成の第2のシリアル送信回路を有し、前記送信イネーブル信号のネゲート状態で前記第2のシリアル送信回路の複数のセレクタに前記データバス上のデータに代えて論理が固定された転送期間を示すデータをセットし、前記送信イネーブル信号をアサートすることにより前記第2のシリアル送信回路の複数のセレクタおよび転送ゲートをシリアル接続し、前記セットされた転送期間を示す同一論理が連続したデータを受信イネーブル信号として隣接するセレクタ間に存在する遅延時間による遅延作用を利用して転送することを特徴とするものである。
また、第3の解決手段の別態様は、上記の第2の解決手段において、さらに、第2の解決手段のシリアル送信回路と同様の構成の第2のシリアル送信回路を有し、前記データセット信号のアサート状態で前記第2のシリアル送信回路の複数のセレクタに前記データバス上のデータに代えて論理が固定された転送期間を示すデータをセットし、前記データセット信号をネゲートするとともに前記送信イネーブル信号をアサートすることにより前記第2のシリアル送信回路の複数のセレクタおよび転送ゲートをシリアル接続し、前記セットされた転送期間を示す同一論理が連続したデータを受信イネーブル信号として隣接するセレクタ間に存在する遅延時間による遅延作用を利用して転送することを特徴とするものである。ここで、論理の固定とは、すべてのセレクタが“0”を選択するか、あるいは、すべてのセレクタが“1”を選択するということである。
また、第3の解決手段のさらに別態様は、上記の第1の解決手段において、さらに、第1の解決手段のシリアル転送装置と同様の構成の第2のシリアル送信回路を有し、前記送信イネーブル信号のネゲート状態で前記第2のシリアル送信回路の複数のセレクタに前記データバス上のデータに代えて転送期間にわたって論理が前記並び順で交互となるデータをセットし、前記送信イネーブル信号をアサートすることにより前記第2のシリアル送信回路の複数のセレクタおよび転送ゲートをシリアル接続し、前記セットされた論理が交互のデータを受信イネーブル信号として隣接するセレクタ間に存在する遅延時間による遅延作用を利用して転送することを特徴とするものである。
また、第3の解決手段のさらに別態様は、上記の第2の解決手段において、さらに、第2の解決手段のシリアル転送装置と同様の構成の第2のシリアル送信回路を有し、前記データセット信号のアサート状態で前記第2のシリアル送信回路の複数のセレクタに前記データバス上のデータに代えて転送期間にわたって論理が前記並び順で交互となるデータをセットし、前記データセット信号をネゲートするとともに前記送信イネーブル信号をアサートすることにより前記第2のシリアル送信回路の複数のセレクタおよび転送ゲートをシリアル接続し、前記セットされた論理が交互のデータを受信イネーブル信号として隣接するセレクタ間に存在する遅延時間による遅延作用を利用して転送することを特徴とするものである。
これによれば、データバス上にあったデータをシリアル転送する際に、これと同期して、受信側でシリアル/パラレル変換するのに必要な受信イネーブル信号を生成出力することができる。さらに、この受信イネーブル信号の生成においても、クロックを用いるのではなく、第2のシリアル送信回路自身が有する遅延作用を利用して生成することができる。
なお、同一論理が連続した受信イネーブル信号は、シリアル受信回路がセレクタのシリアル接続またはセレクタおよびデータ保持回路のシリアル接続で構成されている場合に適しており、論理が交互となっているクロック形式の受信イネーブル信号は、シリアル受信回路がフリップフロップのシリアル接続で構成されている場合に適している。
以上はシリアル送信回路部に関する記述であったが、本発明はシリアル受信回路部について次のように展開可能である。その基本的考え方は、受信したシリアル転送データをパラレルデータに変換する前の受信データのシリアル転送において、これもクロックに同期させるのでなく、シリアル受信回路自身が有する遅延作用を利用してシリアル転送を行うことにある。
第1の解決手段として、本発明によるシリアル転送装置は、シリアル受信回路部に該当するものであって、複数のデータ保持回路は隣接間にセレクタをシリアル接続しており、前記複数のデータ保持回路のうち初段のデータ保持回路は受信したシリアル転送データを入力し、前記複数のセレクタの各一方の入力が論理を固定され、前記複数のデータ保持回路の出力は受信用のデータバスの各ラインに転送ビットの並び順に個別的に接続され、前記シリアル転送データと同期して受信する受信イネーブル信号を前記複数のセレクタおよび前記複数のデータ保持回路に印加するように構成し、前記受信イネーブル信号のネゲート状態で前記複数のセレクタが前記論理固定のデータを選択して次段のデータ保持回路にセットし、前記受信イネーブル信号がアサート状態になると前記複数のセレクタを前記各データ保持回路を介してシリアル接続するとともに、初段のデータ保持回路で受信したシリアル転送データを隣接するセレクタ間に存在する遅延時間による遅延作用を利用して順次に後段のデータ保持回路にシリアルに転送し、さらに、前記各データ保持回路から受信用のデータバスの各ラインに出力してパラレルデータに変換することを特徴とするものである。
送信側からシリアル転送データと受信イネーブル信号とが同期して送信され、これらをシリアル受信回路で受信する。受信イネーブル信号が未着でネゲート状態にあるときは、各セレクタは論理固定のデータを選択する。つまり、すべてのセレクタが“0”を選択するか、あるいは、すべてのセレクタが“1”を選択する。シリアル転送データの受信開始とともに受信イネーブル信号を受信すると、各セレクタは前段のデータ保持回路の出力を選択する状態に切り替わる。また、各データ保持回路はデータをスルーする状態となる。初段のデータ保持回路に入力されたデータは、順次、セレクタを介して次段のデータ保持回路に転送される。このようにして複数のデータ保持回路に保持されたシリアル転送データを一斉に出力すれば、シリアル/パラレル変換が行われ、シリアル転送データの受信が実現する。このとき、転送用のクロックを用いてシリアル転送を行うのではなく、シリアル受信回路自身が有する遅延作用を利用してシリアル転送を行う。データ保持回路間のシリアル転送に要する時間は、隣接するセレクタ間に存在する遅延時間(セレクタ間遅延時間)に対応したものとなる。
第2の解決手段として、本発明によるシリアル転送装置は、シリアル受信回路部に該当するものであって、複数のフリップフロップ型のデータ保持回路がシリアル接続されており、前記複数のデータ保持回路のうち初段のデータ保持回路は受信したシリアル転送データを入力し、前記複数のデータ保持回路の出力は受信用のデータバスの各ラインに転送ビットの並び順に個別的に接続され、前記シリアル転送データと同期して受信する論理が交互のクロック形式の受信イネーブル信号を前記複数のデータ保持回路に印加するように構成し、前記受信イネーブル信号が論理を交互することにより初段のデータ保持回路で受信したシリアル転送データを論理が交互の受信イネーブル信号の立ち上がりを利用して順次に後段のデータ保持回路にシリアルに転送し、さらに、前記各データ保持回路から受信用のデータバスの各ラインに出力してパラレルデータに変換することを特徴とするものである。
上記の第1の解決手段のシリアル受信回路部と比較して、データ保持回路としてフリップフロップ型のものを用いることと、それに合わせて受信イネーブル信号として論理が交互(“0”,“1”,“0”,“1”…または“1”,“0”,“1”,“0”…)のクロック形式のものを用いていることに特徴がある。この場合も上記と同様に、受信データのパラレル変換前のシリアル転送は、転送用のクロックを用いて行うのではなく、論理が交互の受信イネーブル回路が有する遅延作用を利用してシリアル転送を行う。受信イネーブル信号として論理が交互するクロック形式のものを必要とする反面、セレクタが不要化され、回路構成の簡素化の利点がある。
第3の解決手段として、本発明によるシリアル転送装置は、シリアル受信回路部に該当するものであって、上記第2の解決手段において、前記複数のフリップフロップ型のデータ保持回路は、並び順で1つ置きにシリアル接続されており、第2のシリアル接続のデータ保持回路群に対しては、第1のシリアル接続のデータ保持回路群に対して印加する前記受信イネーブル信号の論理反転の送信イネーブル信号を印加するように構成してある。
これも、データ保持回路としてフリップフロップ型のものを用い、それに合わせて受信イネーブル信号として論理が交互となるクロック形式のものを用いている。データ保持回路を1つ置きとしているので、受信イネーブル信号の周期は第2の解決手段の2倍であり、時間的マージンが増える。
上記のフリップフロップ型のデータ保持回路を有するシリアル受信回路において、さらに、データ転送の終了を検知する手段を有することが好ましい。それは、データ転送数をカウントするカウント手段であり、このカウント手段は、複数のデータ保持回路のシリアル接続で構成され、前記受信イネーブル信号をクロックとしてデータ転送数をカウントするものである。このカウント手段によるカウントアップ信号により前記シリアル転送での一斉の出力のトリガーとする。
受信し、順次シリアルに転送したデータの全ビットが受信用のデータバスの各ラインに出力された段階で、一斉に出力することにより、シリアル/パラレル変換が行われるが、この変換のタイミングを上記のカウント手段で決定する。
複数のシリアル受信回路にシリアル転送を行う場合には、シリアル送信回路を次のように構成することが好ましい。すなわち、前記第2のシリアル送信回路を、シリアル転送データのデータ長を異にする複数種類のデータ転送に共有のものとする。そして、前記データ長を管理するデータ長管理手段を備え、前記第2のシリアル送信回路を構成するセレクタ群にセットする論理を前記データ長管理手段の出力で調整するように構成する。
転送データのデータ長を異にするというのは、例えば、32ビットで転送する場合と16ビットで転送する場合などのことである。
第2のシリアル送信回路は、シリアル転送データと同期して送信すべき受信イネーブル信号を生成するものであるが、受信イネーブル信号の有効時間幅はデータ長に対応したものとする必要がある。データ長を異にするデータ転送のそれぞれに第2のシリアル送信回路を設けるとなると、回路構成の複雑化を招来する。そこで、第2のシリアル送信回路を共用にする。第2のシリアル送信回路を構成しているセレクタ群にセットする論理(値)をデータ長管理手段によって調整するのである。これにより、回路構成の複雑化を回避しながら、データ長変化に対応することができる。
複数のシリアル受信回路にシリアル転送を行う場合に、シリアル送信回路の好ましい別の態様として次のものがある。すなわち、前記シリアル送信回路の出力段と前記第2のシリアル送信回路の出力段とにそれぞれ遅延時間を異にする複数の遅延手段を有し、転送先の切り替えに伴って前記遅延手段を選択するように構成する。
同じシリアル送信回路から複数のシリアル受信回路にシリアル転送を行う場合、シリアル受信回路までの経路長などの差のために、シリアル受信回路ごとに遅延量が異なってしまい、安定したシリアル転送が難しくなる。そこで、遅延時間を異にする複数の遅延手段をパラレルに設け、転送先の切り替えに伴って遅延手段を切り替えるようにする。複数の遅延手段は、シリアル転送データの出力を行うシリアル送信回路にも受信イネーブル信号を出力する第2のシリアル送信回路にも設ける。シリアル送信回路の遅延手段と第2のシリアル送信回路の遅延手段の双方またはいずれか一方を切り替えるようにする。
シリアル受信回路部では、受信したシリアル転送データをパラレルデータに変換して出力する必要がある。シリアル転送データは順次に受信するものであるから、全ビットが貯まるまで一定の時間がかかる。データが意味をもつためには、メインのデータバスへ出力するのは、全ビットが貯まってからでないといけない。つまり、メインのデータバスに対して受信用のデータバスを設け、両データバスを転送ゲートを介して接続しておく。受信用のデータバスでシリアル転送データを受信し、そのシリアル転送データの転送完了を待って、転送ゲートを開いて、転送完了したシリアルデータを一斉にメインのデータバスに出力することでパラレルデータに変換する。
シリアル転送完了信号を利用し、そのアサートのタイミングで転送ゲートを開くのが原則である。しかし、送信側と受信側との間の遅延等のために、システムクロックとシリアル転送完了信号との間にずれが生じることがある。そのずれの状態で転送ゲートを開くと、正しい受信ができなくなるおそれがある。
そこで、受信用のデータバスからメインのデータバスへ受信データの一斉のパラレル出力を行う転送ゲートに対してシリアル転送完了信号を送出するのに、システムクロックの1クロック分以上遅らせてシリアル転送完了信号を送出する遅延手段を設けるのがよい。これによれば、データ受信を正確に行うことができる。
また、前記複数のデータ保持回路のうちの最終段のデータ保持回路をデータ先頭検出手段とし、シリアル転送データの先頭にデータ先頭を識別するためのヘッダービットを付加し、前記ヘッダービット前記データ先頭検出手段で検出した直後に他のデータ保持回路をリセットするように構成している。シリアル転送データの非転送状態でのデータバス状態が“L”の連続データのときはヘッダービットを“H”とし、“H”の連続データのときはヘッダービットを“L”とする。
これによれば、データ先頭のヘッダービットを利用してシリアルデータ転送の終了を認識でき、簡単な回路構成でデータ受信を正確に行うことができる。
本発明によれば、シリアル送信回路自身が有する遅延作用を利用してシリアル転送を行うのであり、転送用のクロックを用いてシリアル転送を行うものではないので、従来必要としたシリアル転送用の高速クロックを生成するための逓倍器を必要としないですみ、面積増大を抑制することができる。また、高速クロックを必要とせず、クロックラインを削減でき、これも面積抑制に寄与する。高速クロックを用いないので、消費電力の抑制にも寄与する。
本発明を実施することで、ゲート規模が小さく、且つ半導体素子の配線リソースを削減できるため、半導体素子のサイズを小さくすることが可能となり、安価なLSIを実現できるものである。
以下、本発明にかかわるシリアル転送装置の実施の形態を図面に基づいて詳細に説明する。実施の形態1から実施の形態6までは、シリアル転送装置のシリアル送信回路部に関するものである。
(実施の形態1)
図1(a)は本発明の実施の形態1のシリアル転送装置におけるシリアル送信回路部の構成を示す回路図である。図1(a)において、10はシリアル送信回路、1は複数ビットラインの送信用のデータバス、2はフリップフロップ、3は出力バッファ、4a〜4eはセレクタ、4fは転送ゲートとしてのセレクタ、5a〜5eは増幅用のバッファ、CLKはシステムLSIにおける基本のクロックであるシステムクロック、Siは転送開始指令信号、Ssenは送信イネーブル信号、Soutはシリアル転送データである。複数のセレクタ4a〜4fと複数のバッファ5a〜5eとが交互に並ぶ状態でシリアルに接続されている。送信用のデータバス1の各ビットB0〜B4がセレクタ4a〜4eの“H”入力に接続され、セレクタ4a〜4eの各出力がそれぞれバッファ5a〜5eを介して次段のセレクタ4b〜4fの“L”入力に接続されている。送信用のデータバス1の各ビットは、転送ビットの並び順にセレクタ4a〜4eに接続されている。初段のセレクタ4aの“L”入力はグランドの“L”に接続され、転送ゲートとしてのセレクタ4fの“H”入力もグランドの“L”に接続され、セレクタ4fの出力は出力バッファ3に接続されている。バッファ5a〜5eの各出力がそれぞれ次段のセレクタ4b〜4fの“L”入力に接続されている。転送ゲートとしてのセレクタ4fを除いてセレクタ4a〜4eの総数は、送信用のデータバス1のビットB0〜B4の総数と同じである。これらのセレクタ4a〜4fがそれぞれの間にバッファ5a〜5eを介在する状態でシリアルに接続されている。フリップフロップ2は、転送開始指令信号Siの入力に伴ってシステムクロックCLKに同期して送信イネーブル信号Ssenを生成出力するもので、送信イネーブル信号Ssenはセレクタ4a〜4fのそれぞれの選択制御入力に与えられている。転送開始指令信号Si、送信イネーブル信号Ssenはアクティブロウである。
セレクタ4a〜4fは、送信イネーブル信号Ssenが論理“H”のときは上側の“H”入力の信号を選択して出力し、送信イネーブル信号Ssenが論理“L”のときは下側の入力を選択して出力する。すなわち、送信イネーブル信号Ssenが“H”のとき、セレクタ4a〜4eは送信用のデータバス1側を選択するとともに、セレクタ4fはグランドの“L”を選択し、送信イネーブル信号Ssenが“L”のとき、セレクタ4aはグランドの“L”を選択するとともに、セレクタ4b〜4fは前段のバッファ5a〜5eの出力を選択する。
次に、以上のように構成された本実施の形態のシリアル転送装置におけるシリアル送信回路の動作を図1(b)のタイミングチャートに基づいて説明する。
送信イネーブル信号Ssenが“H”のネゲート状態では、セレクタ4a〜4eは送信用のデータバス1の各ビットB0〜B4を選択し、転送ゲートとしてのセレクタ4fはグランドの“L”を選択している。そして、セレクタ4a〜4eの出力がバッファ5a〜5eを介して次段のセレクタ4b〜4fへ伝播されている。しかし、転送ゲートとしてのセレクタ4fにおいては、送信イネーブル信号Ssenが“H”のネゲート状態の期間は、グランドの“L”を選択しているため、出力バッファ3から出力されるシリアル転送データSoutは、ビットB0〜B4の値がどのようなものであれ、それには無関係に必ず“L”の連続データとなっている。
次に、フリップフロップ2にアクティブロウの転送開始指令信号Siが入力され、システムクロックCLKが立ち上がると、フリップフロップ2のセットアップ時間Tsの経過後、送信イネーブル信号Ssenが“L”レベルに遷移しアサート状態となる。これによってシリアル転送モードに移行することになる。その結果、セレクタ4a〜4eは、それまで送信用のデータバス1側に接続されていた状態から、セレクタ4a〜4fをシリーズに接続した状態へ切り替わる。この切り替わり直後の瞬間では、各セレクタ4a〜4eの出力およびバッファ5a〜5eの出力には、まだそれぞれ接続されているビットB0〜B4の値が保持されている。
以下、シリアル転送モードの動作を説明する。セレクタとセレクタとの間には、1つのバッファの遅延を含む遅延が存在し、この遅延時間をセレクタ間遅延時間τ1とする。
送信イネーブル信号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の遅延時間τbだけ遅れる(以下同様)。この期間では、初段のセレクタ4aはグランドの“L”を選択し、その出力は“L”となる。
タイミング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”レベルとなる。
タイミングT2からさらにセレクタ間遅延時間τ1が経過したタイミングT3において、ビットB0の値はセレクタ4dの出力へ転送され、ビットB1の値はセレクタ4eの出力へ転送され、B2の値はセレクタ4fの出力へ転送され、さらに出力バッファ3を介してビットB2の値が出力され、シリアル転送データSoutはビットB3からビットB2へと転送データが変化する。この期間でも、初段のセレクタ4aはグランドの“L”を選択し、セレクタ4a〜4cの出力は“L”レベルとなる。
タイミングT3からさらにセレクタ間遅延時間τ1が経過したタイミングT4において、ビットB0の値はセレクタ4eの出力へ転送され、ビットB1の値はセレクタ4fの出力へ転送され、シリアル転送データSoutはビットB2からビットB1へと転送データが変化する。この期間でも、初段のセレクタ4aはグランドの“L”を選択し、セレクタ4a〜4dの出力は“L”レベルとなる。
タイミングT4からさらにセレクタ間遅延時間τ1が経過したタイミングT5において、ビットB0の値はセレクタ4fの出力へ転送され、シリアル転送データSoutはビットB1からビットB0へと転送データが変化する。この期間でも、初段のセレクタ4aはグランドの“L”を選択し、セレクタ4a〜4eの出力は“L”レベルとなる。
以上のタイミングT1からT5にかけて、シリアル転送データSoutは、B4,B3,B2,B1,B0のように推移する。
さらに時間が経過すると、セレクタ4fの出力は“L”レベルとなり、以降、次の転送開始指令信号Siの入力があるまで、“L”の連続データとなる。すなわち、当初、セレクタ4aに存在したビットB0がシリアル転送データSoutの最終データとして転送が終了すると、最終的に“L”の連続データの出力に切り替わり、シリアル転送が完了する。
このようにセレクタ4a〜4fがシリアル接続されたことに伴うデータのシリアル転送は、セレクタ間遅延時間τ1による遅延作用に基づいて実現されている。転送用クロックを用いてのシリアル転送ではなく、シリアル送信回路自身が有する遅延作用を利用してのシリアル転送となっている。
その後、再び転送開始指令信号Siが“H”に変化すると、セレクタ4a〜4eは送信用のデータバス1側を選択し、それに伴って、セレクタ4a〜4eには新たに送信用のデータバス1上に新たにセットされたビットB0′〜B4′の値が取り込まれる。
上記において、セレクタ間遅延時間τ1はシステムクロックCLKの周期に比べて充分に短いものであり、実質的に高速なシリアル転送を実現している。
上記において、送信イネーブル信号Ssenが“H”のネゲート状態のときに転送ゲートとしてのセレクタ4fが選択するのが“L”であり、これに合わせて、送信イネーブル信号Ssenが“L”のアサート状態のときに初段のセレクタ4aが選択するのを“L”としている。このようにするのは、データ転送を行わない期間のシリアル転送データSoutを“L”の連続データとするためである。すなわち、データ列を固定化している。非転送期間で誤ったデータを転送させないためである。
なお、固定のデータ列としては“H”の連続データでもよく、その場合には、送信イネーブル信号Ssenがネゲート状態のときに転送ゲートとしてのセレクタ4fが選択するのを“H”とし、これに合わせて、送信イネーブル信号Ssenがアサート状態のときに初段のセレクタ4aが選択するのを“H”とすればよい。また、転送開始指令信号Siや送信イネーブル信号Ssenについても、これをアクティブロウに代えて、アクティブハイとしてもよい。
以上のように、本実施の形態によれば、シリアルデータ転送をクロックに同期させるのでなく、セレクタ間遅延時間を利用し、遅延時間毎にデータを転送させるようにしているので、従来技術で必要としていたシリアル転送用の高速クロックを生成する逓倍器(PLL)については、その必要性をなくすことができる。加えて、クロックを用いないことから、従来技術に比べて、ゲート規模を小さくすることができる。このように、ゲート規模が小さく半導体素子のサイズを小さくできるとともに、半導体素子の配線リソースが削減されるため、LSIを安価に実現することができる。
(実施の形態2)
本発明の実施の形態2のシリアル転送装置は、実施の形態1の変形の態様であって、データ保持回路としてのラッチを追加したものに相当する。
図2(a)は本発明の実施の形態2のシリアル転送装置におけるシリアル送信回路部の構成を示す回路図である。図2(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のゲート入力のそれぞれに与えられている。
セレクタ4a〜4eは、データセット信号DSが“H”のアサート状態のときは上側の“H”入力の信号を選択して出力し、データセット信号DSが“L”のネゲート状態のときは下側の“L”入力の信号を選択して出力する。すなわち、データセット信号DSがアサート状態のとき、セレクタ4a〜4dは送信用のデータバス1側を選択するとともに、転送ゲートとしてのセレクタ4eはグランドの“L”を選択し、データセット信号DSがネゲート状態のとき、初段のセレクタ4aはグランドの“L”を選択するとともに、セレクタ4b〜4eは前段のラッチ6a〜6dの出力を選択する。
次に、以上のように構成された本実施の形態のシリアル転送装置におけるシリアル送信回路の動作を図2(b)のタイミングチャートに基づいて説明する。
データセット信号DSが“H”のアサート状態では、セレクタ4a〜4dは送信用のデータバス1の各ビットC0〜C3を選択している。そして、セレクタ4a〜4dの出力すなわち送信用のデータバス1の各ビットC0〜C3がラッチ6a〜6dに保持されている。しかし、転送ゲートとしてのセレクタ4eにおいては、データセット信号DSが“H”のアサート状態の期間は、グランドの“L”を選択しているため、出力バッファ3から出力されるシリアル転送データSoutは、ビットC0〜C3の値がどのようなものであれ、それには無関係に必ず“L”の連続データとなっている。
次に、データセット信号DSを“L”のネゲート状態に遷移させ、次いで送信イネーブル信号Ssen′を“L”のアサート状態に遷移させると、シリアル転送モードに移行する。その結果、セレクタ4a〜4dは、それまで送信用のデータバス1側に接続されていた状態から、セレクタ4a〜4eおよびラッチ6a〜6eをシリーズに接続した状態へ切り替わる。この切り替わり直後の瞬間では、各ラッチ6a〜6dの出力には、まだそれぞれ接続されているビットC0〜C3の値が保持されている。
以下、シリアル転送モードの動作を説明する。セレクタとセレクタとの間には、1つのセレクタおよび1つのラッチの遅延を含む遅延が存在し、この遅延時間をセレクタ間遅延時間τ2とする。
送信イネーブル信号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”となる。
タイミングT1からさらにセレクタ間遅延時間τ2が経過したタイミングT2において、ラッチ6bの出力のビットC0の値は次段のラッチ6cへ転送され、ラッチ6cの出力のビットC1の値は次段のラッチ6dへ転送され、ラッチ6dの出力のビットC2の値は最終段のラッチ6eへ転送され、さらに出力バッファ3を介してビットC2の値が出力され、シリアル転送データSoutはビットC3からビットC2へと転送データが変化する。この期間でも、初段のセレクタ4aは“L”を選択し、セレクタ4a,4bの出力は“L”レベルとなる。
タイミングT2からさらにセレクタ間遅延時間τ2が経過したタイミングT3において、ビットC0の値はラッチ6dへ転送され、ラッチ6dの出力のビットC1の値は最終段のラッチ6eへ転送され、さらに出力バッファ3を介してビットC1の値が出力され、シリアル転送データSoutはビットC2からビットC1へと転送データが変化する。この期間でも、初段のセレクタ4aは“L”を選択し、ラッチ6a〜6cの出力は“L”レベルとなる。
タイミングT3からさらにセレクタ間遅延時間τ2が経過したタイミングT4において、ビットC0の値は最終段のラッチ6eへ転送され、さらに出力バッファ3を介してビットC0の値が出力され、シリアル転送データSoutはビットC1からビットC0へと転送データが変化する。この期間でも、初段のセレクタ4aは“L”を選択し、ラッチ6a〜6dの出力は“L”レベルとなる。この期間でも、初段のセレクタ4aは“L”を選択し、ラッチ6a〜6dの出力は“L”レベルとなる。
さらに時間が経過すると、最終段のラッチ6eの出力は“L”レベルとなり、以降、次のデータセット信号DSの立ち上がりがあるまで、“L”の連続データとなる。すなわち、当初、ラッチ6aに存在したビットC0がシリアル転送データSoutの最終データとして転送が終了すると、最終的に“L”の連続データの出力に切り替わり、シリアル転送が完了する。
このようにセレクタ4a〜4eがシリアル接続されたことに伴うデータのシリアル転送は、セレクタ間遅延時間τ2よる遅延作用に基づいて実現されている。転送用クロックを用いてのシリアル転送ではなく、シリアル送信回路自身が有する遅延作用を利用してのシリアル転送となっている。
その後、再びデータセット信号DSが“H”に変化すると、ラッチ6a〜6dは送信用のデータバス1側を選択し、それに伴って、ラッチ6a〜6dには新たに送信用のデータバス1上に新たにセットされたビットC0′〜C3′の値が取り込まれる。
上記において、セレクタ間遅延時間τ2はシステムクロックCLKの周期に比べて充分に短いものであり、実質的に高速なシリアル転送を実現している。
上記において、データセット信号DSが“H”のアサート状態のときに転送ゲートとしてのセレクタ4eが選択するのが“L”であり、これに合わせて、データセット信号DSが“L”のときに初段のセレクタ4aが選択するのを“L”としている。このようにするのは、データ転送を行わない期間のシリアル転送データSoutを“L”の連続データに固定化するためと、非転送期間で誤ったデータを転送させないためである。
なお、固定のデータ列としては“H”の連続データでもよく、その場合には、データセット信号DSがアサート状態のときに転送ゲートとしてのセレクタ4eが選択するのを“H”とし、これに合わせて、送信イネーブル信号Ssen′がアサート状態のときに初段のセレクタ4aが選択するのを“H”とすればよい。また、データセット信号DSや送信イネーブル信号Ssen′についても、これらをアクティブロウに代えて、アクティブハイとしてもよい。
以上のように、本実施の形態によれば、シリアルデータ転送をクロックに同期させるのでなく、セレクタ間遅延時間を利用し、遅延時間毎にデータを転送させるようにしているので、従来技術で必要としていたシリアル転送用の高速クロックを生成する逓倍器(PLL)については、その必要性をなくすことができる。加えて、クロックを用いないことから、従来技術に比べて、ゲート規模を小さくすることができる。このように、ゲート規模が小さく半導体素子のサイズを小さくできるとともに、半導体素子の配線リソースが削減されるため、LSIを安価に実現することができる。
(実施の形態3)
本発明の実施の形態3のシリアル転送装置は、受信側に対してシリアル転送データとともに送信し、受信側がシリアル転送を行うのに必要となる受信イネーブル信号を生成する機能を併せ有している。
図3(a)は本発明の実施の形態3のシリアル転送装置におけるシリアル送信回路部の構成を示す回路図である。図3(a)において、10はシリアル送信回路、20は第2のシリアル送信回路、1は複数ビットラインのデータバス、2はフリップフロップ、3は出力バッファ、4a〜4eはセレクタ、4fは転送ゲートとしてのセレクタ、7a〜7eは第2のシリアル送信回路20を構成するセレクタ、7fは転送ゲートとしてのセレクタ、8は出力バッファ、CLKはシステムLSIにおける基本のクロックであるシステムクロック、Siは転送開始指令信号、Ssenは送信イネーブル信号である。シリアル送信回路10における複数のセレクタ4a〜4fがシリアルに接続されている。また、第2のシリアル送信回路20における複数のセレクタ7a〜7fもシリアルに接続されている。
まず、シリアル送信回路10の複数のセレクタ4a〜4fについて説明する。このブロックは、実施の形態1(図1)と比べて、バッファ5a〜5eが省略されている点を除いて、基本的に同様の構成となっている。送信用のデータバス1の各ビットD0〜D4がセレクタ4a〜4eの“H”入力に接続され、セレクタ4a〜4eの各出力がそれぞれ次段のセレクタ4b〜4fの“L”入力に接続されている。送信用のデータバス1の各ビットは、転送ビットの並び順にセレクタ4a〜4eに接続されている。初段のセレクタ4aの“L”入力および転送ゲートとしてのセレクタ4fの“H”入力はグランドの“L”に接続され、セレクタ4fの出力は出力バッファ3に接続されている。転送ゲートとしてのセレクタ4fを除いてセレクタ4a〜4eの総数は、送信用のデータバス1のビットD0〜D4の総数と同じである。フリップフロップ2から出力されるアクティブロウの送信イネーブル信号Ssenがセレクタ4a〜4fのそれぞれの選択制御入力に与えられている。
セレクタ4a〜4fは、送信イネーブル信号Ssenが“H”のときは上側の“H”入力の信号を選択して出力し、送信イネーブル信号Ssenが“L”のときは下側の“L”入力の信号を選択して出力する。すなわち、送信イネーブル信号Ssenが“H”のとき、セレクタ4a〜4eは送信用のデータバス1側を選択するとともに、セレクタ4fはグランドの“L”を選択し、送信イネーブル信号Ssenが“L”のとき、セレクタ4aはグランドの“L”を選択するとともに、セレクタ4b〜4fは前段のセレクタ4a〜4eの出力を選択する。
次に、第2のシリアル送信回路20の複数のセレクタ7a〜7fについて説明する。セレクタ7a〜7eの“H”入力には電源電位の“H”が接続され、セレクタ7a〜7eの各出力がそれぞれ次段のセレクタ7b〜7fの“L”入力に接続されている。初段のセレクタ7aの“L”入力および転送ゲートとしてのセレクタ7fの“H”入力はグランドの“L”に接続され、セレクタ7fの出力は出力バッファ8に接続されている。セレクタ7a〜7fの総数は、シリアル送信回路10の複数のセレクタ4a〜4fの総数と同じになっている。フリップフロップ2からの送信イネーブル信号Ssenがセレクタ7a〜7fのそれぞれにも与えられている。
セレクタ7a〜7fは、送信イネーブル信号Ssenが“H”のときは上側の“H”入力の信号を選択して出力し、送信イネーブル信号Ssenが“L”のときは下側の“L”入力の信号を選択して出力する。すなわち、送信イネーブル信号Ssenが“H”のとき、セレクタ7a〜7eは電源電位の“H”を選択するとともに、転送ゲートとしてのセレクタ7fはグランドの“L”を選択し、送信イネーブル信号Ssenが“L”のとき、セレクタ7aはグランドの“L”を選択するとともに、セレクタ7b〜7fは前段のセレクタ7a〜7eの出力を選択する。
次に、以上のように構成された本実施の形態のシリアル転送装置におけるシリアル送信回路の動作を図3(b)のタイミングチャートに基づいて説明する。
シリアル送信回路10の動作は基本的に実施の形態1の場合と同様である。送信イネーブル信号Ssenが“H”のネゲート状態では、出力バッファ3から出力されるシリアル転送データSoutは、ビットD0〜D4の値がどのようなものであれ、それには無関係に必ず“L”の連続データとなる。一方、第2のシリアル送信回路20では、送信イネーブル信号Ssenが“H”のネゲート状態にあるとき、セレクタ7a〜7fはいずれも電源電位の“H”を選択している。
次に、送信イネーブル信号Ssenが“L”のアサート状態に遷移する。これによってシリアル転送モードに移行することになるが、シリアル送信回路10の動作は基本的に実施の形態1の場合と同様である。時間の経過に従って、出力バッファ3からシリアル転送データSoutがD4,D3,D2,D1,D0の順でシリアルに出力される。このシリアル転送は、セレクタ間遅延時間τ3による遅延作用に基づいて行われる。図3(b)では、セレクタ4d,4eの出力状態は省略されている。
以下、シリアル転送モードにおける第2のシリアル送信回路20の動作を説明する。図3(b)では、セレクタ7a〜7fのうち初段のセレクタ7aの出力と受信イネーブル信号Srenのみが示されている。
送信イネーブル信号Ssenのアサートの直前までは、セレクタ7a〜7eは電源電位の“H”を選択しているため、セレクタ7a〜7eの出力はすべて“H”となっている。ただし、転送ゲートとしてのセレクタ7fがグランドの“L”を選択しているため、受信イネーブル信号Srenとしては“L”の連続データとなっている。
送信イネーブル信号Ssenのアサート後、セレクタ間遅延時間τ3が経過したタイミングT1において、初段のセレクタ7aの出力にあった“H”は次段のセレクタ7bの出力へ転送され、セレクタ7bの出力にあった“H”は次段のセレクタ7cの出力へ転送され、セレクタ7cの出力にあった“H”は次段のセレクタ7dの出力へ転送され、セレクタ7dの出力にあった“H”は次段のセレクタ7eの出力へ転送され、セレクタ7eの出力にあった“H”はセレクタ7fへ転送され、さらに出力バッファ8を介して“H”が受信イネーブル信号Srenとして出力される。このシリアル転送において、転送ゲートとしてのセレクタ7fでは、直前でグランドの“L”を選択していたところ、セレクタ7eの出力にあった“H”が転送されてきて、受信イネーブル信号Srenとして“H”を出力する。この期間では、初段のセレクタ7aはグランドの“L”を選択し、その出力は“L”となる。
タイミングT1からさらにセレクタ間遅延時間τ3が経過したタイミングT2において、セレクタ7aの出力にあった“L”は次段のセレクタ7bの出力へ転送され、セレクタ7b〜7eの出力にあった“H”はそれぞれ次段のセレクタ7c〜7fの出力へ転送され、受信イネーブル信号Srenは引き続き“H”を出力する。
タイミングT2からさらにセレクタ間遅延時間τ3が経過したタイミングT3において、セレクタ7a〜7bの出力にあった“L”は次段のセレクタ7b〜7cの出力へ転送され、セレクタ7c〜7eの出力にあった“H”はそれぞれ次段のセレクタ7d〜7fの出力へ転送され、受信イネーブル信号Srenは引き続き“H”を出力する。
タイミングT3からさらにセレクタ間遅延時間τ3が経過したタイミングT4において、セレクタ7a〜7cの出力にあった“L”は次段のセレクタ7b〜7dの出力へ転送され、セレクタ7d〜7eの出力にあった“H”はそれぞれ次段のセレクタ7e〜7fの出力へ転送され、受信イネーブル信号Srenは引き続き“H”を出力する。
タイミングT4からさらにセレクタ間遅延時間τ3が経過したタイミングT5において、セレクタ7a〜7dの出力にあった“L”は次段のセレクタ7b〜7eの出力へ転送され、セレクタ7eの出力にあった“H”は次段のセレクタ7fの出力へ転送され、受信イネーブル信号Srenは引き続き“H”を出力する。
タイミングT5からさらにセレクタ間遅延時間τ3が経過したタイミングT6において、セレクタ7a〜7eの出力にあった“L”は次段のセレクタ7b〜7fの出力へ転送され、受信イネーブル信号Srenは“H”から“L”へ遷移する。ただし、この出力は、出力バッファ8の遅延時間だけ遅れる。以降、次の転送開始指令信号Siの入力があるまで、受信イネーブル信号Srenは“L”の連続データとなる。
このようにセレクタ7a〜7fがシリアル接続されたことに伴う“H”のシリアル転送は、シリアル送信回路10でのデータ列D0〜D4のシリアル転送と同様に、セレクタ間遅延時間τ3による遅延作用に基づいて実現されている。転送用クロックを用いてのシリアル転送ではなく、シリアル送信回路自身が有する遅延作用を利用してのシリアル転送となっている。
以上の結果、受信イネーブル信号Srenは、出力バッファ8の遅延時間をτbとして、タイミングT1+τbで立ち上がり、タイミングT6+τbで立ち下がる所定幅の信号となる。この受信イネーブル信号Srenの“H”期間は、出力バッファ8からシリアルデータD0〜D4が出力されている期間に正確に対応している。
上記において、送信イネーブル信号Ssenが“H”のネゲート状態のときに転送ゲートとしてのセレクタ7fが選択するのが“L”であり、これに合わせて、送信イネーブル信号Ssenが“L”のアサート状態のときに初段のセレクタ7aが選択するのを“L”としている。このようにするのは、データ転送を行わない期間の受信イネーブル信号Srenを“L”の連続データに固定化するためと、非転送期間で誤ったデータを転送させないためである。
なお、受信イネーブル信号Srenについて、固定のデータ列としては“L”の連続データでもよく、その場合には、送信イネーブル信号Ssenがネゲート状態のときに転送ゲートとしてのセレクタ7fが選択するのを“H”とし、これに合わせて、送信イネーブル信号Ssenがアサート状態のときに初段のセレクタ7aが選択するのを“H”とすればよい。この場合に、シリアル送信回路10のセレクタ4a,4fの論理と第2のシリアル送信回路20のセレクタ7a,7fの論理が互いに逆になっていてもよい。セレクタ7a,7fについて、送信イネーブル信号Ssenがアサート状態のときに“H”を選択するように構成するときは、ネゲート状態のときに選択される上側の端子にはグランドの“L”を印加するものとする。送信イネーブル信号Ssenについて、これをアクティブハイに代えて、アクティブロウとしてもよい。
以上のように、本実施の形態によれば、上述の実施の形態1の場合の作用効果に加えて、シリアルデータD0〜D4が出力されている期間に正確に対応した受信イネーブル信号Srenを同期生成して出力することができる。この受信イネーブル信号SrenをシリアルデータD0〜D4とともに受信側に送信すると、受信側では受信のシリアル/パラレル変換処理を有利に進めることができる。
(実施の形態4)
本発明の実施の形態4のシリアル転送装置は、実施の形態3の変形の態様であって、データ保持回路としてのラッチを追加したものに相当する。
図4(a)は本発明の実施の形態4のシリアル転送装置におけるシリアル送信回路部の構成を示す回路図である。シリアル送信回路10は、図2に示す実施の形態2の場合と同様のものになっている。ただし、データ転送数が1ビット増えており、セレクタは4aから4fまであり、ラッチは6aから6fまである。
第2のシリアル送信回路20は、次のように構成されている。すなわち、複数のセレクタ7a〜7fと複数のラッチ9a〜9fとが交互に並ぶ状態でシリアルに接続されている。電源電位の“H”がセレクタ7a〜7eの“H”入力に接続され、セレクタ7a〜7eの各出力がそれぞれラッチ9a〜9eを介して次段のセレクタ7b〜7fの“L”入力に接続されている。初段のセレクタ7aの“L”入力および転送ゲートとしてのセレクタ7fの“H”入力はグランドの“L”に接続され、セレクタ7fの出力はラッチ9fを介して出力バッファ8に接続されている。ラッチ9a〜9eの各出力がそれぞれ次段のセレクタ7b〜7fの“L”入力に接続され、最終段のラッチ9fの出力が出力バッファ8に接続されている。セレクタ7a〜7fの総数は、シリアル送信回路10のセレクタ4a〜4fと同数である。これらのセレクタ7a〜7fがそれぞれの間にラッチ9a〜9eを介在する状態でシリアルに接続されている。アクティブロウの送信イネーブル信号Ssen′がラッチ9a〜9fのゲート入力のそれぞれに与えられている。
セレクタ7a〜7fは、データセット信号DSが“H”のアサート状態のときは上側の“H”入力の信号を選択して出力し、データセット信号DSが“L”のネゲート状態のときは下側の“L”入力の信号を選択して出力する。すなわち、データセット信号DSがアサート状態のとき、セレクタ7a〜7eは電源電位の“H”を選択するとともに、転送ゲートとしてのセレクタ7fはグランドの“L”を選択し、データセット信号DSがネゲート状態のとき、初段のセレクタ7aはグランドの“L”を選択するとともに、セレクタ7b〜7fは前段のラッチ9a〜9eの出力を選択する。
次に、以上のように構成された本実施の形態のシリアル転送装置におけるシリアル送信回路の動作は図4(b)のタイミングチャートに示すとおりである。これと図3(b)との比較対照で明かなように、シリアル送信回路10の動作は基本的に実施の形態1の場合と同様である。また、第2のシリアル送信回路20の動作は基本的に実施の形態3の場合と同様である。
このようにセレクタ7a〜7fおよびラッチ9a〜9fがシリアル接続されたことに伴う“H”のシリアル転送は、シリアル送信回路10でのデータ列D0〜D4のシリアル転送と同様に、セレクタ間遅延時間τ4による遅延作用に基づいて実現されている。転送用クロックを用いてのシリアル転送ではなく、第2のシリアル送信回路自身が有する遅延作用を利用してのシリアル転送となっている。
以上のように、本実施の形態によれば、上述の実施の形態2の場合の作用効果に加えて、シリアルデータD0〜D4が出力されている期間に正確に対応した受信イネーブル信号Srenを同期生成して出力することができる。この受信イネーブル信号SrenをシリアルデータD0〜D4とともに受信側に送信すると、受信側では受信のシリアル/パラレル変換処理を有利に進めることができる。
(実施の形態5)
本発明の実施の形態5のシリアル転送装置は、実施の形態3の変形の態様であって、受信イネーブル信号Sren′として、連続“H”のものに代えて、論理が“H”,“L”,“H”,“L”の交互となるクロック形式の受信イネーブル信号Sren′を生成するものである。
図5(a)は本発明の実施の形態5のシリアル転送装置におけるシリアル送信回路部の構成を示す回路図である。シリアル送信回路10は、図3に示す実施の形態3の場合と同様のものになっている。
第2のシリアル送信回路20は、次のように構成されている。すなわち、第1の1つ置きのセレクタ7a,7c,7eの“H”入力には電源電位の“H”が接続され、第2の1つ置きのセレクタ7b,7d,7fの“H”入力にはグランドの“L”が接続されている。セレクタ7a〜7eの各出力はそれぞれ次段のセレクタ7b〜7fの“L”入力に接続されている。初段のセレクタ7aの“L”入力はグランドの“L”に接続され、転送ゲートとしてのセレクタ7fの出力は出力バッファ8に接続されている。
セレクタ7a〜7fは、送信イネーブル信号Ssenが“H”のネゲート状態のときは上側の“H”入力の信号を選択して出力し、送信イネーブル信号Ssenが“L”のアサート状態のときは下側の“L”入力の信号を選択して出力する。すなわち、送信イネーブル信号Ssenがネゲート状態のとき、第1の1つ置きのセレクタ7a,7c,7eは電源電位の“H”を選択し、かつ第2の1つ置きのセレクタ7b,7d,7fはグランドの“L”を選択し、送信イネーブル信号Ssenがアサート状態のとき、初段のセレクタ7aはグランドの“L”を選択するとともに、セレクタ7b〜7fは前段のセレクタ7a〜7eの出力を選択する。
次に、以上のように構成された本実施の形態のシリアル転送装置におけるシリアル送信回路の動作を図5(b)のタイミングチャートに基づいて説明する。
シリアル送信回路10の動作は、実施の形態3(図3)の場合と同様であるので、説明を省略する。ここでは、下段の複数のセレクタ7a〜7fからなる第2のシリアル送信回路20の動作について説明する。
送信イネーブル信号Ssenのアサート後、セレクタ間遅延時間τ3が経過したタイミングT1の直前においては、初段のセレクタ7aの出力は電源電位の“H”に保持され、2番目のセレクタ7bの出力はグランドの“L”に保持され、3番目のセレクタ7cの出力は電源電位の“H”に保持され、4番目のセレクタ7dの出力はグランドの“L”に保持され、5番目のセレクタ7eの出力は電源電位の“H”に保持され、転送ゲートとしてのセレクタ4fの出力はグランドの“L”に保持されている。すなわち、論理が“H”,“L”,“H”,“L”の交互となっている。転送ゲートとしてのセレクタ4fの出力が“L”であるので、出力バッファ8から出力される受信イネーブル信号Sren′も“L”に保持されている。
送信イネーブル信号Ssenがアサートされ、シリアル転送モードに移行すると、タイミングT1において、セレクタ7eの“H”が転送ゲートとしてのセレクタ7fを介して出力バッファ8より、受信イネーブル信号Sren′として出力される。ただし、出力バッファ8の遅延時間τbだけ遅れる。これと並行して、初段のセレクタ7aの出力にあった“H”は次段のセレクタ7bの出力へ転送され、セレクタ7bの出力にあった“L”は次段のセレクタ7cの出力へ転送され、セレクタ7cの出力にあった“H”は次段のセレクタ7dの出力へ転送され、セレクタ7dの出力にあった“L”は次段のセレクタ7eの出力へ転送され、セレクタ7eの出力にあった“H”は転送ゲートとしてのセレクタ7fへ転送される。また、初段のセレクタ7aはグランドの“L”を選択し、その出力は“L”に遷移する。このタイミングT1でのシリアル転送においては、転送ゲートとしてのセレクタ7fは、直前で“L”を選択していたところ、セレクタ7eの出力にあった“H”が転送され、受信イネーブル信号Sren′を“H”にする。
タイミングT1からさらにセレクタ間遅延時間τ3が経過したタイミングT2において、遅延によるシリアル転送が引き続いて行われ、セレクタ7b,7c,7d,7e,7fの出力はそれぞれ“L”,“H”,“L”,“H”,“L”,“H”に遷移する。これに並行して、初段のセレクタ7aは引き続き“L”である。受信イネーブル信号Sren′は、“H”から“L”に遷移する。
以下、同様の動作を繰り返すことにより、受信イネーブル信号Sren′は、セレクタ間遅延時間τ3の時間間隔で“H”,“L”を繰り返す信号となり、出力バッファ3からのシリアルデータD0〜D4の出力に正確に同期している。
これ以降は、受信イネーブル信号Sren′は“L”を保つ。すなわち、次の送信イネーブル信号Ssenがアサートされるまで、“L”の連続データとなる。これにより、シリアル転送が完了する。
以上のように、本実施の形態によれば、上述の実施の形態3の場合の作用効果に加えて、シリアルデータD0〜D4の出力状態に正確に対応し、かつ論理が交互になるクロック形式の受信イネーブル信号Sren′を同期生成して出力することができる。
(実施の形態6)
本発明の実施の形態6のシリアル転送装置は、実施の形態4の変形の態様であって、受信イネーブル信号Sren′として、連続“H”のものに代えて、論理が“H”,“L”,“H”,“L”の交互となるクロック形式の受信イネーブル信号Sren′を生成するものである。
図6(a)は本発明の実施の形態6のシリアル転送装置におけるシリアル送信回路部の構成を示す回路図である。シリアル送信回路10は、図4に示す実施の形態4の場合と同様のものになっている。
第2のシリアル送信回路20は、次のように構成されている。すなわち、第1の1つ置きのセレクタ7a,7c,7eの“H”入力には電源電位の“H”が接続され、第2の1つ置きのセレクタ7b,7d,7fの“H”入力にはグランドの“L”が接続されている。セレクタ7a〜7eの各出力はそれぞれ次段のセレクタ7b〜7fの“L”入力に接続されている。初段のセレクタ7aの“L”入力はグランドの“L”に接続され、転送ゲートとしてのセレクタ7fの出力は出力バッファ8に接続されている。
セレクタ7a〜7fは、データセット信号DSが“H”のアサート状態のときは上側の“H”入力の信号を選択して出力し、データセット信号DSが“L”のネゲート状態のときは下側の“L”入力の信号を選択して出力する。すなわち、データセット信号DSがアサート状態のとき、第1の1つ置きのセレクタ7a,7c,7eは電源電位の“H”を選択し、かつ第2の1つ置きのセレクタ7b,7d,7fはグランドの“L”を選択し、データセット信号DSがネゲート状態のとき、初段のセレクタ7aはグランドの“L”を選択するとともに、セレクタ7b〜7fは前段のセレクタ7a〜7eの出力を選択する。
本実施の形態によれば、受信イネーブル信号Sren′は、セレクタ間遅延時間τ3の時間間隔で“H”,“L”を繰り返す信号となり、出力バッファ3からのシリアルデータD0〜D4の出力に正確に同期している。
以上のように、本実施の形態によれば、上述の実施の形態4の場合の作用効果に加えて、シリアルデータD0〜D4の出力状態に正確に対応し、かつ論理が交互になるクロック形式の受信イネーブル信号Sren′を同期生成して出力することができる。
以上は、シリアル転送装置におけるシリアル送信回路部の構成についての実施の形態の説明であったが、以下ではシリアル受信回路部の構成についての実施の形態を説明する。実施の形態7から実施の形態10まではシリアル転送装置におけるシリアル受信回路部に関するものである。シリアル受信回路部は、シリアル送信回路部から送信されてくるシリアルデータを受信しパラレルデータに変換するものである。
(実施の形態7)
図7(a)は本発明の実施の形態7のシリアル転送装置におけるシリアル受信回路部の構成を示す回路図である。図7(a)において、30はシリアル受信回路、11はシリアル転送データSoutの入力バッファ、12a〜12dはデータ保持回路としてのラッチ、13a〜13cはセレクタ、14は受信イネーブル信号Srenの入力バッファ、15は受信用のデータバス、16は転送ゲートとしてのフリップフロップ群、17はメインのデータバスである。
シリアル転送データSoutの入力バッファ11の出力は初段のラッチ12aのデータ入力に接続され、ラッチ12aのデータ出力は初段のセレクタ13aの“H”入力(下側)に接続されている。初段のセレクタ13aの出力はラッチ12bのデータ入力に接続され、ラッチ12bのデータ出力はセレクタ13bの“H”入力に接続されている。セレクタ13bの出力はラッチ12cのデータ入力に接続され、ラッチ12cのデータ出力はセレクタ13cの“H”入力に接続されている。セレクタ13cの出力はラッチ12dのデータ入力に接続されている。ラッチ12a〜12dの各データ出力は受信用のデータバス15の各ビットラインに接続されている。受信イネーブル信号Srenの入力バッファ14の出力はラッチ12a〜12dのクロック入力に接続されている。セレクタ13a〜13cの“L”入力はグランドの“L”に接続されている。セレクタ13a〜13cの選択端子は受信イネーブル信号Srenに接続されている。受信用のデータバス15の各ビットラインは転送ゲートとしてのフリップフロップ群16を介してメインのデータバス17に接続されている。セレクタ間遅延時間については、送信側と受信側とで同じとする。
次に、以上のように構成された本実施の形態のシリアル受信回路30の動作を図7(b)のタイミングチャートに従って説明する。
シリアル転送データSoutが受信イネーブル信号Srenとともに送信されてくる。シリアル転送データSoutを4ビットのP0〜P3とする。
受信直前までの状態では、受信イネーブル信号Srenは“L”であり、セレクタ13a〜13cは“L”入力にグランドの“L”を選択しており、ラッチ12a〜12dの出力のデータ列はすべて“L”となっている。
受信イネーブル信号Srenがアサートすると、シリアル受信モードに入り、セレクタ13a〜13cは“H”入力を選択する状態に切り替わる。次いで、入力バッファ14の遅延時間だけ遅れたタイミングT11で“H”の受信イネーブル信号Srenがラッチ12a〜12dのクロック入力に入力し、これに同期して初段のラッチ12aに先頭のビットP0の値が入力され、ビットP0の値がラッチ12aの出力に現れる。これと並行して、ラッチ12b〜12dの出力には引き続き“L”が現れる。すなわち、受信用のデータバス15の4ビットの値はP0,“L”,“L”,“L”となる。隣接するセレクタ間にある遅延時間をセレクタ間遅延時間τ4とする。
タイミングT11からさらにセレクタ間遅延時間τ4が経過したタイミングT12において、ラッチ12aの出力のビットP0の値はセレクタ13aを介して次段のラッチ12bへ転送され、ラッチ12aの出力に次のビットP1の値が現れる。これと並行して、ラッチ12c〜12dの出力には引き続き“L”が現れる。すなわち、受信用のデータバス15の4ビットの値はP1,P0,“L”,“L”となる。
タイミングT12からさらにセレクタ間遅延時間τ4が経過したタイミングT13において、ラッチ12bの出力のビットP0の値はセレクタ13bを介して次段のラッチ12cへ転送され、ラッチ12aの出力のビットP1の値はセレクタ13aを介して次段のラッチ12bへ転送され、ラッチ12aの出力に次のビットP2の値が現れる。これと並行して、ラッチ12dの出力には引き続き“L”が現れる。すなわち、受信用のデータバス15の4ビットの値はP2,P1,P0,“L”となる。
タイミングT13からさらにセレクタ間遅延時間τ4が経過したタイミングT14において、ラッチ12dの出力にビットP0の値が現れ、ラッチ12cの出力にビットP1の値が現れ、ラッチ12bの出力にビットP2の値が現れ、ラッチ12aの出力にビットP3の値が現れる。すなわち、受信用のデータバス15の4ビットの値はP3,P2,P1,P0となる。
次に、タイミングT15において、受信イネーブル信号Srenが“L”のネゲート状態に切り替わり、セレクタ13a〜13cはグランドの“L”を選択する状態に戻るとともに、少し遅れてラッチ12a〜12dのクロック入力が“L”の固定され、ラッチ12a〜12dの出力はP3,P2,P1,P0に保持される。
このようにラッチ12a〜12dとセレクタ13a〜13cがシリアル接続されたことに伴うデータのシリアル転送は、セレクタ間遅延時間τ4による遅延作用に基づいて実現されている。転送用クロックを用いてのシリアル転送ではなく、シリアル送信回路自身が有する遅延作用を利用してのシリアル転送となっている。
次いで、転送ゲートとしてのフリップフロップ群16のクロック入力をアサートすると、受信用のデータバス15上のデータ列P3,P2,P1,P0がメインのデータバス17に出力される。すなわち、受信データのシリアル/パラレル変換が行われる。
上記において、受信イネーブル信号Srenが“L”のネゲート状態のときにセレクタ13a〜13cが選択するのがグランドの“L”としている。このようにするのは、データ転送を行わない期間のパラレルデータを全ビット“L”データに固定化するためである。
なお、非転送期間の全ビット固定のデータとしては“H”データでもよく、その場合には、受信イネーブル信号Srenがネゲート状態のときにセレクタ13a〜13cが選択するのを電源電位の“H”とすればよい。このこととは別に、受信イネーブル信号Srenを、アクティブハイに代えて、アクティブロウとしてもよい。
以上のように、本実施の形態によれば、受信直後のシリアルデータ転送をクロックに同期させるのでなく、セレクタ間遅延時間を利用し、遅延時間毎にデータを転送させるようにしているので、従来技術で必要としていたシリアル転送用の高速クロックを生成する逓倍器(PLL)については、その必要性をなくすことができる。加えて、クロックを用いないことから、従来技術に比べて、ゲート規模を小さくすることができる。このように、ゲート規模が小さく半導体素子のサイズを小さくできるとともに、半導体素子の配線リソースが削減されるため、LSIを安価に実現することができる。
(実施の形態8)
本発明の実施の形態8は、受信イネーブル信号として“H”,“L”を交互に繰り返すクロック形式の受信イネーブル信号Sren′を用いる構成となっている。
図8(a)は本発明の実施の形態8のシリアル転送装置におけるシリアル受信回路部の構成を示す回路図である。図7に示す実施の形態7と相違する点を中心に説明すると、ラッチ12a〜12dとセレクタ13a〜13cの組み合わせに代えて、フリップフロップ18a〜18dを用いている。フリップフロップはデータ保持回路の一例である。
シリアル転送データSoutの入力バッファ11の出力は初段のフリップフロップ18aのデータ入力に接続され、フリップフロップ18a〜18dはシリアルに接続されている。フリップフロップ18a〜18dの各データ出力は受信用のデータバス15の各ビットラインに接続されている。“H”,“L”を交互に繰り返すクロック形式の受信イネーブル信号Sren′の入力バッファ14の出力はフリップフロップ18a〜18dのクロック入力に接続されている。受信用のデータバス15の各ビットラインは転送ゲートとしてのフリップフロップ群16を介してメインのデータバス17に接続されている。
次に、以上のように構成された本実施の形態のシリアル受信回路30の動作を図8(b)のタイミングチャートに従って説明する。
シリアル転送データSoutが受信イネーブル信号Sren′とともに送信されてくる。シリアル転送データSoutを4ビットのP0〜P3とする。
受信直前までの状態では、受信イネーブル信号Sren′は“L”固定であり、フリップフロップ18a〜18dの出力のデータ列はすべて“L”となっている。
受信イネーブル信号Sren′がアサートすると、シリアル受信モードに入る。受信イネーブル信号Sren′の立ち上がりに同期して、入力バッファ14の遅延時間だけ遅れたタイミングT11で初段のフリップフロップ18aに先頭のビットP0の値が入力され、ビットP0の値がフリップフロップ18aの出力に現れる。これと並行して、フリップフロップ18b〜18dの出力には引き続き“L”が現れる。すなわち、受信用のデータバス15の4ビットの値はP0,“L”,“L”,“L”となる。隣接するセレクタ間にある遅延時間をセレクタ間遅延時間τ5とする。
タイミングT11からさらに論理が交互の受信イネーブル信号の立ち上がり時間τ5が経過したタイミングT12において、フリップフロップ18aの出力のビットP0の値は次段のフリップフロップ18bへ転送され、フリップフロップ18aの出力に次のビットP1の値が現れる。これと並行して、フリップフロップ18c〜18dの出力には引き続き“L”が現れる。すなわち、受信用のデータバス15の4ビットの値はP1,P0,“L”,“L”となる。
タイミングT12からさらに論理が交互の受信イネーブル信号の立ち上がり時間τ5が経過したタイミングT13において、フリップフロップ18bの出力のビットP0の値は次段のフリップフロップ18cへ転送され、フリップフロップ18aの出力のビットP1の値は次段のフリップフロップ18bへ転送され、フリップフロップ18aの出力に次のビットP2の値が現れる。これと並行して、フリップフロップ18dの出力には引き続き“L”が現れる。すなわち、受信用のデータバス15の4ビットの値はP2,P1,P0,“L”となる。
タイミングT13からさらに論理が交互の受信イネーブル信号の立ち上がり時間τ5が経過したタイミングT14において、フリップフロップ18dの出力にビットP0の値が現れ、フリップフロップ18cの出力にビットP1の値が現れ、フリップフロップ18bの出力にビットP2の値が現れ、フリップフロップ18aの出力にビットP3の値が現れる。すなわち、受信用のデータバス15の4ビットの値はP3,P2,P1,P0となる。
次に、タイミングT15において、受信イネーブル信号Sren′がネゲート状態に切り替わって“L”固定となり、フリップフロップ18a〜18dの出力はP3,P2,P1,P0に保持される。
このように送信側から受け取った受信イネーブル信号Sren′をシリアル転送のためのクロック信号として利用しているので、シリアル受信回路30自体としては、シリアル転送用の高速クロックを生成する逓倍器(PLL)の必要性をなくすことができる。
次いで、転送ゲートとしてのフリップフロップ群16のクロック入力をアサートすると、受信用のデータバス15上のデータ列P3,P2,P1,P0がメインのデータバス17に出力される。すなわち、受信データのシリアル/パラレル変換が行われる。
以上のように、本実施の形態によれば、実施の形態7の場合と同様の作用効果が発揮される。
(実施の形態9)
本発明の実施の形態9は、上記の実施の形態8の変形に相当するものである。図9(a)は本発明の実施の形態9のシリアル転送装置におけるシリアル送信回路部の構成を示す回路図である。実施の形態8の場合のフリップフロップ18a〜18dが2つに分けられている。フリップフロップ18aとフリップフロップ18cをシリアル接続するとともに、フリップフロップ18bとフリップフロップ18dをシリアル接続している。“H”,“L”を交互に繰り返すクロック形式の受信イネーブル信号Sren′の入力バッファ14に対して論理が反転した反転入力バッファ14aの出力が接続されている。反転入力バッファ14aの遅延時間は入力バッファ14の遅延時間と同じになっている。フリップフロップ18b,18cには受信イネーブル信号Sren′の入力バッファ14の出力が接続され、フリップフロップ18a,18cには反転入力バッファ14aの出力が接続されている。受信用のデータバス15に対するフリップフロップ18a〜18dの接続は、18a,18b,18c,18dの順になっている。これは、転送ビットの並び順である。逆にいうと、転送ビットの並び順の1つ置きに対応させてフリップフロップをシリアル接続している。
次に、以上のように構成された本実施の形態のシリアル受信回路30の動作を図9(b)のタイミングチャートに従って説明する。
シリアル転送データSoutが受信イネーブル信号Sren′とともに送信されてくる。シリアル転送データSoutを4ビットのP0〜P3とする。
受信直前までの状態では、受信イネーブル信号Sren′は“L”固定であり、フリップフロップ18a〜18dの出力のデータ列はすべて“L”となっている。
受信イネーブル信号Sren′がアサートすると、シリアル受信モードに入る。受信イネーブル信号Sren′の立ち上がりに同期して、タイミングT11でフリップフロップ18bに先頭のビットP0の値が入力され、ビットP0の値がフリップフロップ18bの出力に現れる。これと並行して、フリップフロップ18a,18c,18dの出力には引き続き“L”が現れる。すなわち、受信用のデータバス15の4ビットの値は“L”,P0,“L”,“L”となる。
次のタイミングT12において、受信イネーブル信号Sren′の立ち下がりでフリップフロップ18aのクロック入力がアサートされ、フリップフロップ18aの出力にビットP1の値が現れる。受信用のデータバス15の4ビットの値はP1,P0,“L”,“L”となる。
次のタイミングT13において、受信イネーブル信号Sren′の立ち上がりで、フリップフロップ18bの出力にビットP2の値が現れ、フリップフロップ18dの出力にビットP0の値が現れる。受信用のデータバス15の4ビットの値はP1,P2,“L”,P0となる。
次のタイミングT14において、受信イネーブル信号Sren′の立ち下がりでフリップフロップ18aのクロック入力がアサートされ、フリップフロップ18aの出力にビットP3の値が現れ、フリップフロップ18cの出力にビットP1の値が現れる。受信用のデータバス15の4ビットの値はP3,P2,P1,P0となる。
このように送信側から受け取った受信イネーブル信号Sren′をシリアル転送のためのクロック信号として利用しているので、シリアル受信回路30自体としては、シリアル転送用の高速クロックを生成する逓倍器(PLL)の必要性をなくすことができる。
次いで、転送ゲートとしてのフリップフロップ群16のクロック入力をアサートすると、受信用のデータバス15上のデータ列P3,P2,P1,P0がメインのデータバス17に出力される。すなわち、受信データのシリアル/パラレル変換が行われる。
以上のように、本実施の形態によれば、実施の形態8の場合と同様の作用効果が発揮される。加えて、フリップフロップを1つ置きとしているので、受信イネーブル信号Sren′の周期は実施の形態8の場合の2倍であり、時間的マージンが増える。
(実施の形態10)
本発明の実施の形態10は、パラレル変換のためにシリアル転送終了直後のデータ出力タイミングを得るためのカウンタ回路を備え、そのカウンタ回路を受信イネーブル信号で駆動するように構成したものである。
図10(a)は本発明の実施の形態10のシリアル転送装置におけるシリアル受信回路部の構成を示す回路図である。これは、図8に示す実施の形態8の構成に、カウンタ回路40を追加したものに相当する。カウンタ回路40は、フリップフロップ19a〜19eをシリアル接続し、最終段出力を初段入力に帰還して、リングカウンタとしたものである。フリップフロップ19a〜19eの数はシリアル受信回路30のフリップフロップ18a〜18eと同数となっている。カウンタ回路40のフリップフロップ19a〜19eに対しても受信イネーブル信号Sren′の入力バッファ14の出力をクロック入力している。アクティブロウのリセット信号RSTをフリップフロップ19a〜19dのリセット入力に入力し、最終段のフリップフロップ19eのセット入力にもリセット信号RSTを入力している。最終段のフリップフロップ19eの出力はバッファ21を介して転送ゲートとしてのフリップフロップ群16のクロック入力に接続されている。
次に、以上のように構成された本実施の形態のシリアル転送装置の動作を図10(b)のタイミングチャートに従って説明する。
シリアル転送データSoutを受信し、パラレルデータに変換して出力する動作については、基本的に実施の形態8の場合と同様である。
シリアル転送データSoutの受信前の任意の段階で、リセット信号RSTをアサートする。これにより、最終段のフリップフロップ19eには“H”がセットされ、それ以外のフリップフロップ19a〜19dには“L”がセットされる。すなわち、フリップフロップ19a〜19eのセット状態は、“L”,“L”,“L”,“L”,“H”となる。
受信イネーブル信号Sren′の1回目の立ち上がりにより、最終段のフリップフロップ19eの出力が“H”から“L”に切り替わるとともに、初段のフリップフロップ19aには最終段のフリップフロップ19eの直前の“H”がセットされる。他のフリップフロップ19b〜19dは“L”を保つ。すなわち、フリップフロップ19a〜19eのセット状態は、“H”,“L”,“L”,“L”,“L”となる。最終段のフリップフロップ19eの出力であるカウントアップ信号Scntが“H”から反転して“L”となるので、転送ゲートとしてのフリップフロップ群16はOFF状態となる。
受信イネーブル信号Sren′の2回目の立ち上がりにより、2段目のフリップフロップ19bに、初段のフリップフロップ19aの直前の“H”がセットされる。他のフリップフロップ19a,19c〜19eは“L”となる。すなわち、フリップフロップ19a〜19eのセット状態は、“L”,“H”,“L”,“L”,“L”となる。転送ゲートとしてのフリップフロップ群16はOFF状態を保つ。
受信イネーブル信号Sren′の3回目の立ち上がりにより、3段目のフリップフロップ19cに、2段目のフリップフロップ19bの直前の“H”がセットされる。他のフリップフロップ19a,19b,19d〜19eは“L”となる。すなわち、フリップフロップ19a〜19eのセット状態は、“L”,“L”,“H”,“L”,“L”となる。転送ゲートとしてのフリップフロップ群16はOFF状態を保つ。
受信イネーブル信号Sren′の4回目の立ち上がりにより、4段目のフリップフロップ19dに、3段目のフリップフロップ19cの直前の“H”がセットされる。他のフリップフロップ19a〜19c,19eは“L”となる。すなわち、フリップフロップ19a〜19eのセット状態は、“L”,“L”,“L”,“H”,“L”となる。転送ゲートとしてのフリップフロップ群16はOFF状態を保つ。
受信イネーブル信号Sren′の5回目の立ち上がりにより、最終段のフリップフロップ19eに、4段目のフリップフロップ19dの直前の“H”がセットされる。他のフリップフロップ19a〜19dは“L”となる。すなわち、フリップフロップ19a〜19eのセット状態は、“L”,“L”,“L”,“L”,“H”となる。最終段のフリップフロップ19eの出力であるカウントアップ信号Scntが“H”になり、アサートすることで、シリアル転送の終了を検出することができる。
最終段のフリップフロップ19eの出力のカウントアップ信号Scntが“H”になったので、受信用のデータバス15における転送ゲートとしてのフリップフロップ群16にクロック入力が与えられ、受信用のデータバス15上のシリアル転送データSoutであるP0,P1,P2,P3,P4がメインのデータバス17に送信され、シリアル/パラレル変換が実行され、シリアル転送データSoutの受信が行われる。なお、バッファ21の遅延により、出力を安定化している。
(実施の形態11)
以下では、バスマスタ回路と複数のバススレーブ回路との間のシリアル転送を伴う送受信の構成について説明する。
図11(a)に示すように、上記で説明したいずれかのシリアル送信回路部とシリアル受信回路部を1つずつ持つバスマスタ回路100と、バスマスタ回路100と同様の構成を持つ複数のバススレーブ回路200があり、バスマスタ回路100のシリアル送信回路部は複数のバススレーブ回路200の各シリアル受信回路部に対して並列に接続され、複数のバススレーブ回路200のシリアル送信回路部はOR回路41を介してバスマスタ回路100のシリアル受信回路部に接続されている。複数のバススレーブ回路200は、それぞれの受信可能なデータ長が互いに異なっている。例えば、図11(b)の場合は、バススレーブ回路200(a)は8bit、バススレーブ回路200(b)は16bit、バススレーブ回路200(c)は32bitとなっている。もっとも、受信可能なビット数については、何bitであってもかまわない。
このように受信可能なビット数を異にする複数のバススレーブ回路200に共有されるバスマスタ回路100においては、それぞれの受信可能なビット数に合わせて送信イネーブル信号Ssenを生成する必要がある。本発明の実施の形態11は、このような要請に応えるものである。受信可能なデータ長を管理するデータ長管理手段を備える。
図12(a)は、図3に対応したものであり、“H”が連続する形態の受信イネーブル信号Srenを生成するものである。図12(b)は図5に対応したものであり、“H”,“L”を交互に繰り返すクロック形式の受信イネーブル信号Sren′を生成するものである。
X1〜X8は図3に示す第2のシリアル送信回路20と同様の構成の8ビット分のセレクタ、Y1〜Y8も同様の8ビット分のセレクタ、Z1〜Z16も同様の16ビット分のセレクタ、Y0はセレクタY1〜Y8の機能をオン/オフする制御セレクタ、Z0はセレクタZ1〜Z16の機能をオン/オフする制御セレクタである。51は転送ゲートとしてのセレクタ、52はデータ長管理手段としてのデータ長制御レジスタ、53はデータ長制御レジスタ52と制御セレクタY0,Z0を接続するフリップフロップである。セレクタX1〜X8、セレクタY1〜Y8、セレクタZ1〜Z16はそれぞれ個数省略形で図示されている。
8ビット分のセレクタX1〜X8は、その“H”入力が電源電位の“H”に接続され、“L”入力は前段のセレクタX2〜X8,B1に接続されている。このセレクタX1〜X8は、8ビットデータの転送のときの受信イネーブル信号Srenを生成するためのものである。
8ビット分のセレクタY1〜Y8は、その“H”入力が制御セレクタY0の出力に接続され、“L”入力は前段のセレクタY2〜B8,C1に接続されている。このセレクタY1〜Y8は、セレクタX1〜X8とともに機能し、合わせて16ビットデータの転送のときの受信イネーブル信号Srenを生成するためのものである。
16ビット分のセレクタZ1〜Z16は、その“H”入力が制御セレクタZ0の出力に接続され、“L”入力は前段のセレクタZ2〜Z15およびグランドの“L”に接続されている。このセレクタZ1〜Z16は、セレクタX1〜X8、セレクタY1〜Y8とともに機能し、合わせて32ビットデータの転送のときの受信イネーブル信号Srenを生成するためのものである。
次に、以上のように構成された本実施の形態の動作を説明する。
データ長制御レジスタ52には、8ビットデータ転送の場合と16ビットデータ転送の場合と32ビットデータ転送の場合を識別するコードがあらかじめセットされている。フリップフロップ53は、システムクロックCLKに同期してデータ長制御レジスタ52からのデータ長制御信号を順次に制御セレクタY0,Z0に出力する。
まず、8ビットデータ転送の場合を説明する。、ビットデータ転送の場合、フリップフロップ53は制御セレクタY0,Z0に対して“L”を出力する。その結果、制御セレクタY0,Z0はともに“L”入力を選択し、グランドの“L”を出力する状態になっている。送信イネーブル信号Ssenがネゲート状態のときは、セレクタX1〜X8は“H”入力を選択し、電源電位の“H”を出力する。また、セレクタY1〜Y8およびセレクタZ1〜Z16はそれぞれ制御セレクタY0,Z0からの“L”を出力する。しかし、送信イネーブル信号Ssenがネゲート状態のときは、転送ゲートとしてのセレクタ51がグランドの“L”を出力するため、出力バッファ8は“L”の連続信号を出力する。
送信イネーブル信号Ssenがアサート状態になると、すべてのセレクタX1〜X8,Y1〜Y8,Z1〜Z16がシリアル接続され、セレクタ間遅延時間による遅延作用に基づいてシリアル転送が行われる。すべてのセレクタX1〜X8,Y1〜Y8,Z1〜Z16の出力状態は、セレクタX1〜X8のすべてが“H”、セレクタY1〜Y8のすべておよびセレクタZ1〜Z16のすべてが“L”である。最終段のセレクタZ16はグランドの“L”を出力する。これが、セレクタ間遅延時間の1サイクル経過ごとに、転送ゲートとしてのセレクタ51を介して出力バッファ8から受信イネーブル信号Srenとして順次に出力されていく。最初は、1ビット目の“H”が出力される。次のサイクルでも引き続き“H”が出力される。これが8サイクル目まで続く。9サイクル目からは“L”が続く。その結果、最初の8サイクル分だけ“H”が連続する受信イネーブル信号Srenが生成出力されることになる。
次に、16ビットデータ転送の場合を説明する。16ビットデータ転送の場合、フリップフロップ53は制御セレクタY0に対して“H”を出力し、制御セレクタZ0に対しては“L”を出力する。その結果、制御セレクタY0は“H”入力の電源電位の“H”を出力する状態になる。制御セレクタZ0は“L”入力のグランドの“L”を出力する状態である。送信イネーブル信号Ssenがネゲート状態のときは、セレクタX1〜X8は“H”入力を選択し、電源電位の“H”を出力する。また、セレクタY1〜Y8は制御セレクタY0からの“H”を出力する。セレクタZ1〜Z16は制御セレクタZ0からの“L”を出力する。しかし、送信イネーブル信号Ssenがネゲート状態のときは、転送ゲートとしてのセレクタ51がグランドの“L”を出力するため、出力バッファ8は“L”の連続信号を出力する。
送信イネーブル信号Ssenがアサート状態になると、すべてのセレクタX1〜X8,Y1〜Y8,Z1〜Z16がシリアル接続され、セレクタ間遅延時間による遅延作用に基づいてシリアル転送が行われる。すべてのセレクタX1〜X8,Y1〜Y8,Z1〜Z16の出力状態は、セレクタX1〜X8およびセレクタY1〜Y8のすべてが“H”、セレクタZ1〜Z16のすべてが“L”である。これが、セレクタ間遅延時間の1サイクル経過ごとに、転送ゲートとしてのセレクタ51を介して出力バッファ8から受信イネーブル信号Srenとして順次に出力されていく。最初は、1ビット目の“H”が出力される。次のサイクルでも引き続き“H”が出力される。これが16サイクル目まで続く。17サイクル目からは“L”が続く。その結果、最初の16サイクル分だけ“H”が連続する受信イネーブル信号Srenが生成出力されることになる。
次に、32ビットデータ転送の場合を説明する。32ビットデータ転送の場合、フリップフロップ53は制御セレクタY0および制御セレクタZ0に対して“H”を出力する。その結果、制御セレクタY0,Z0はともに“H”入力の電源電位の“H”を出力する状態になる。
送信イネーブル信号Ssenがアサート状態になると、すべてのセレクタX1〜X8,Y1〜Y8,Z1〜Z16がシリアル接続され、セレクタ間遅延時間による遅延作用に基づいてシリアル転送が行われる。すべてのセレクタX1〜X8,Y1〜Y8,Z1〜Z16の出力状態は、セレクタX1〜X8およびセレクタY1〜Y8およびセレクタZ1〜Z15のすべてが“H”である。最終段のセレクタZ16はグランドの“L”を出力する。したがって、32サイクル分にわたり“H”が連続する受信イネーブル信号Srenが生成出力されることになる。
なお、上記において、セレクタに代えて、図4のようなセレクタとラッチの組み合わせとしてもよい。
次に、図12(b)の回路構成について説明する。これは、“H”,“L”を交互に繰り返すクロック形式の受信イネーブル信号Sren′を生成出力するものとなっている。シリアル送信回路部X10は図5(a)に示す第2のシリアル送信回路20と同様に、電源電位の“H”に接続されたセレクタとグランドの“L”に接続されたセレクタとが交互となっている。そのセレクタ数は8である。シリアル送信回路部Y10も同様の構成となっている。シリアル送信回路部Z10はセレクタ数が16であり、その他は上記同様である。
出力バッファ8とシリアル送信回路部X10との間に転送ゲートとしてのセレクタ54が介挿され、シリアル送信回路部X10とシリアル送信回路部Y10との間に転送ゲートとしてのセレクタ55が介挿され、シリアル送信回路部Y10とシリアル送信回路部Z10との間に転送ゲートとしてのセレクタ56が介挿されている。セレクタ55は制御セレクタY0によって制御され、セレクタ56は制御セレクタZ0によって制御されるように構成されている。
データ長制御レジスタ52が“L”,“L”を出力して8ビットデータ転送を指示するときは、8サイクル分の“H”,“L”を交互に繰り返すクロック形式の受信イネーブル信号Sren′が生成出力される。また、データ長制御レジスタ52が“H”,“L”を出力して16ビットデータ転送を指示するときは、16サイクル分の“H”,“L”を交互に繰り返すクロック形式の受信イネーブル信号Sren′が生成出力され、データ長制御レジスタ52が“H”,“H”を出力して32ビットデータ転送を指示するときは、32サイクル分の“H”,“L”を交互に繰り返すクロック形式の受信イネーブル信号Sren′が生成出力される。
以上のように、シリアル転送データSoutの出力と同期して受信イネーブル信号Sren,Sren′を生成出力する場合に、データ長を異にする複数種類のシリアル転送に共用することで回路構成の簡略化を図りながら、シリアル転送データSoutのデータ長に対応した時間幅の受信イネーブル信号Sren,Sren′を生成することができる。
(実施の形態12)
本発明の実施の形態12は、共通のバスマスタ回路100から複数のバススレーブ回路200にシリアル転送を行う場合に、経路長の差によって遅延時間に差が生じていることに対処するためのものである。バスマスタ回路とバススレーブ回路とが遠くに離れている場合、配線遅延などにより、バスマスタとバススレーブが等段に接続されている場合でも、シグナルインテグリティなどの影響によりシリアル転送信号が遅延する。そしてその結果、安定したシリアル転送の実現がむつかしくなることがある。各バススレーブの受信回路との遅延時間を管理するレジスタを用い、経路ごとに遅延値を変えるようにする。
図13(a)は図3に対応したものであり、図13(b)は図4に対応したものである。
図13(a)の場合、転送ゲートとしてのセレクタ4eの出力と出力バッファ3との間に遅延時間が互いに異なる複数の遅延素子d1,d2,d3の並列接続と遅延セレクタ61とが挿入されている。また、転送ゲートとしてのセレクタ7eの出力と出力バッファ8との間に遅延時間が互いに異なる複数の遅延素子d4,d5,d6の並列接続と遅延セレクタ62とが挿入されている。遅延素子d1,d2,d3の遅延時間と遅延素子d4,d5,d6の遅延時間とは互いに同一にするのを原則とするが、必要に応じて異ならせてもよい。
バスマスタ回路100と各バススレーブ回路200との間に存在する遅延時間を管理する遅延制御レジスタ63が遅延セレクタ61,62を制御するように構成されている。
これから送受信を行おうとする相手側のバススレーブ回路200がどれであるかに応じて、遅延制御レジスタ63から対応する遅延素子を選択するように遅延セレクタ61,62に選択信号が与えられる。これにより、複数の遅延素子d1,d2,d3のうちから最適の遅延素子が選択され、また、複数の遅延素子d4,d5,d6のうちから最適の遅延素子が選択され、該当のバススレーブ回路200との間でのシリアル転送を最も安定した状態で実行できる。
なお、遅延素子d1,d2,d3の選択と遅延素子d4,d5,d6の選択とは、常に同じ関係をもつようにするのを原則とするが、必要に応じて、任意の組み合わせで選択するように構成してもよい。例えば、遅延素子d1の選択時に遅延素子d4,d5,d6のいずれを選択してもよいようにするなどである。
(実施の形態13)
図14は本発明の実施の形態13のシリアル転送装置におけるシリアル送信回路部の構成を示す回路図である。これは、実施の形態4の図4において、送信イネーブル信号Ssenのラインからシリアル転送完了信号Sendを取り出して、受信側に送信することを前提としている。すなわち、シリアル転送データSoutと受信イネーブル信号Srenとシリアル転送完了信号Sendとの3信号を同期送信するように構成している。
図15は実施の形態13のシリアル受信回路部の構成を示す回路図である。これは、実施の形態8の図8において、転送ゲートとしてのフリップフロップ群16に代えてロードホールド付き転送ゲートとしてのフリップフロップ群16aを用いている。さらに、その前段に、1クロック遅延用のフリップフロップ71を配し、そのデータ入力にシリアル転送完了信号Sendを入力し、そのクロック入力にシステムクロックCLKを入力し、さらにそのデータ出力であるロード信号Sloadをロードホールド付き転送ゲートとしてのフリップフロップ群16aのロードホールド入力に接続している。
図15(b)の2行目、3行目はシリアル送信回路部の動作を示し、システムクロックCLKに同期してデータD0が送信され、さらに同期してシリアル転送完了信号Sendが送信されている。
図15(b)の4行目、5行目はシリアル受信回路部の動作を示し、送受信間の遅延のために、システムクロックCLKから遅延時間τsrだけ遅れていることが示されている。
タイミングT21でシステムクロックCLKが立ち上がるが、シリアル転送完了信号Sendの立ち上がりは遅延時間τsr遅れたタイミングT22である。したがって、このシリアル転送完了信号Sendの立ち上がりで転送ゲートとしてのフリップフロップ群16のクロック入力にシリアル転送完了信号Sendを与えると、受信したデータD0の取り込みに心配する可能性がある。つまり、誤まったデータを受信する可能性がある。
そこで、シリアル転送完了信号Sendをフリップフロップ71で1クロック分遅延させてロード信号Sloadを生成し、これをロードホールド付き転送ゲートとしてのフリップフロップ群16aに印加している。ロードホールド付き転送ゲートとしてのフリップフロップ群16aは、ロード信号Sloadの“L”でデータD0をロードし、次のタイミングT23でのシステムクロックCLKの立ち上がりタイミングでデータD0をホールドして、メインのデータバス17に出力する。
このように、受信用のデータバス15上に順次に現れてくる受信データの取り込みタイミングを1クロックずらすことにより、受信データを、その受信完了後に確実に取り込むことができる。すなわち、データ受信を正確に行わせることができる。
(実施の形態14)
図16(a)は本発明の実施の形態14のシリアル転送装置におけるシリアル受信回路部の構成を示す回路図である。これは、実施の形態8の図8において、後端のフリップフロップ18dをデータ先頭検出手段81に置き換え、データ先頭検出手段81のデータ出力をバッファ82を介して1つのフリップフロップ16Aのクロック入力に印加するように構成している。そして、フリップフロップ16Aのデータ出力をリセット信号RST1として、フリップフロップ18a〜18dのリセット入力に印加している。
一方、図16(b)に示すように、シリアル転送データSoutは、必ずその先頭に“H”の1ビットを付けるようにしている。
受信されたシリアル転送データSoutが順次に転送される過程で、データの先頭に付加している“H”のビットは、フリップフロップ18aから18b,18cを経て、後端のデータ先頭検出手段81に達する。このとき、シリアル転送データSoutの全ビットがすべてのフリップフロップ18a〜18cから受信用のデータバス15に出力されている。データ先頭の“H”がデータ先頭検出手段81から出力されると、バッファ82の遅延時間τ10だけ遅れてフリップフロップ16Aに印加される。その1クロック前にはフリップフロップ18cに先頭の“H”が保持されているから、フリップフロップ16Aのデータ入力は“H”となっており、クロック入力への“H”印加により、フリップフロップ16Aは“H”を出力する。これがリセット信号RST1であり、受信用のデータバス15の1ビット目以外のラインでは、フリップフロップ群16にクロックが印加されたタイミングでシリアル転送データSoutがメインのデータバス17へパラレルデータとして一斉に出力される。1ビット目のフリップフロップ16Aからのリセット信号RST1により、シリアル転送データSoutのパラレル出力の直後に、すべてのフリップフロップ18a〜18cがリセットされ、次のシリアル転送データSoutの受信待機状態となる。
このように、データ先頭の“H”を利用してシリアルデータ転送の終了を認識するので、データ受信を正確に行うことができる。
本発明のシリアル転送装置は、システムLSIの内部における回路間での高速なデータ転送等に有用である。
(a)は本発明の実施の形態1のシリアル転送装置におけるシリアル送信回路部の構成を示す回路図、(b)はその動作を説明するタイミングチャート (a)は本発明の実施の形態2のシリアル転送装置におけるシリアル送信回路部の構成を示す回路図、(b)はその動作を説明するタイミングチャート (a)は本発明の実施の形態3のシリアル転送装置におけるシリアル送信回路部の構成を示す回路図、(b)はその動作を説明するタイミングチャート (a)は本発明の実施の形態4のシリアル転送装置におけるシリアル送信回路部の構成を示す回路図、(b)はその動作を説明するタイミングチャート (a)は本発明の実施の形態5のシリアル転送装置におけるシリアル送信回路部の構成を示す回路図、(b)はその動作を説明するタイミングチャート (a)は本発明の実施の形態6のシリアル転送装置におけるシリアル送信回路部の構成を示す回路図、(b)はその動作を説明するタイミングチャート (a)は本発明の実施の形態7のシリアル転送装置におけるシリアル受信回路部の構成を示す回路図、(b)はその動作を説明するタイミングチャート (a)は本発明の実施の形態8のシリアル転送装置におけるシリアル受信回路部の構成を示す回路図、(b)はその動作を説明するタイミングチャート (a)は本発明の実施の形態9のシリアル転送装置におけるシリアル受信回路部の構成を示す回路図、(b)はその動作を説明するタイミングチャート (a)は本発明の実施の形態10のシリアル転送装置におけるシリアル受信回路部の構成を示す回路図、(b)はその動作を説明するタイミングチャート (a)は本発明の実施の形態11のシリアル転送装置におけるバスマスタ回路および複数のバススレーブ回路の構成を示す回路図、(b)は複数形式のデータの構造図 (a)は本発明の実施の形態11のシリアル転送装置におけるシリアル送信回路部の構成を示す回路図、(b)は実施の形態11の変形の形態のシリアル転送装置におけるシリアル送信回路部の構成を示す回路図 (a)は本発明の実施の形態12のシリアル転送装置におけるシリアル送信回路部の構成を示す回路図、(b)は実施の形態11の変形の形態のシリアル転送装置におけるシリアル送信回路部の構成を示す回路図 本発明の実施の形態13のシリアル転送装置におけるシリアル送信回路部の構成を示す回路図 (a)は本発明の実施の形態13のシリアル転送装置におけるシリアル受信回路部の構成を示す回路図、(b)はその動作を説明するタイミングチャート (a)は本発明の実施の形態14のシリアル転送装置におけるシリアル送信回路部の構成を示す回路図、(b)はそのデータの構造図、(c)はその動作を説明するタイミングチャート (a)は従来技術のシリアル転送装置の回路図、(b)はタイミングチャート
符号の説明
1 送信用のデータバス
2 フリップフロップ
3 出力バッファ
4 セレクタ
5 バッファ
6 ラッチ(データ保持回路)
7 セレクタ
8 出力バッファ
9 ラッチ
10 シリアル送信回路
11 入力バッファ
12 ラッチ
13 セレクタ
14 入力バッファ
14a 反転入力バッファ
15 受信用のデータバス
16 転送ゲートとしてのフリップフロップ群
17 メインのデータバス
18 ラッチ
19 ラッチ
20 第2のシリアル送信回路
21 バッファ
30 シリアル受信回路
40 カウンタ回路
51 転送ゲートとしてのセレクタ
52 データ長制御レジスタ
53 フリップフロップ
61,62 遅延セレクタ
63 遅延制御レジスタ
71 1クロック遅延用のフリップフロップ
81 データ先頭検出手段
82 バッファ
100 バスマスタ回路
200 バススレーブ回路
X1〜X8 8ビット分のセレクタ
Y1〜Y8 8ビット分のセレクタ
Z1〜Z16 16ビット分のセレクタ
Y0,Z0 制御セレクタ
X10,Y10,Z10 シリアル送信回路部
CLK システムクロック
Si 転送開始指令信号
Ssen,Ssen′ 送信イネーブル信号
Sout シリアル転送データ
DS データセット信号
Sren 受信イネーブル信号
Sren′ クロック形式の受信イネーブル信号
RST,RST1 リセット信号
1,d2,d3,d4,d5,d6 遅延素子
Send シリアル転送完了信号

Claims (14)

  1. 複数のセレクタの各一方の入力がデータバスの各ラインに転送ビットの並び順に個別的に接続され、他方の入力が前記並び順で他のセレクタの出力に接続され、最終段のセレクタの出力には転送ゲートが接続され、送信イネーブル信号のネゲート状態で前記複数のセレクタに前記データバス上のデータをセットし、前記送信イネーブル信号をアサートすることにより前記複数のセレクタおよび前記転送ゲートをシリアル接続し、前記セットされたデータを隣接するセレクタ間に存在する遅延時間による遅延作用を利用してシリアルに転送することを特徴とするシリアル転送装置。
  2. 複数のセレクタの各一方の入力がデータバスの各ラインに転送ビットの並び順に個別的に接続され、他方の入力が前記並び順でデータ保持回路を介して他のセレクタの出力に接続され、最終段のセレクタの出力には転送ゲートが接続され、データセット信号のアサート状態で前記複数のセレクタに前記データバス上のデータをセットし、前記データセット信号をネゲートすることにより前記複数のセレクタを前記各データ保持回路を介してシリアル接続しかつ前記転送ゲートもシリアル接続するとともに、送信イネーブル信号を前記データ保持回路に印加することにより、前記セットされたデータを隣接するセレクタ間に存在する遅延時間による遅延作用を利用してシリアルに転送することを特徴とするシリアル転送装置。
  3. 請求項1に記載のシリアル転送装置において、さらに、前記シリアル転送装置と同様の構成の第2のシリアル送信回路を有し、前記送信イネーブル信号のネゲート状態で前記第2のシリアル送信回路の複数のセレクタに前記データバス上のデータに代えて論理が固定された転送期間を示すデータをセットし、前記送信イネーブル信号をアサートすることにより前記第2のシリアル送信回路の複数のセレクタおよび転送ゲートをシリアル接続し、前記セットされた転送期間を示す同一論理が連続したデータを受信イネーブル信号として隣接するセレクタ間に存在する遅延時間による遅延作用を利用して転送することを特徴とするシリアル転送装置。
  4. 請求項2に記載のシリアル転送装置において、さらに、前記シリアル転送装置と同様の構成の第2のシリアル送信回路を有し、前記データセット信号のアサート状態で前記第2のシリアル送信回路の複数のセレクタに前記データバス上のデータに代えて論理が固定された転送期間を示すデータをセットし、前記データセット信号をネゲートするとともに前記送信イネーブル信号をアサートすることにより前記第2のシリアル送信回路の複数のセレクタおよび転送ゲートをシリアル接続し、前記セットされた転送期間を示す同一論理が連続したデータを受信イネーブル信号として隣接するセレクタ間に存在する遅延時間による遅延作用を利用して転送することを特徴とするシリアル転送装置。
  5. 請求項1に記載のシリアル転送装置において、さらに、前記シリアル転送装置と同様の構成の第2のシリアル送信回路を有し、前記送信イネーブル信号のネゲート状態で前記第2のシリアル送信回路の複数のセレクタに前記データバス上のデータに代えて転送期間にわたって論理が前記並び順で交互となるデータをセットし、前記送信イネーブル信号をアサートすることにより前記第2のシリアル送信回路の複数のセレクタおよび転送ゲートをシリアル接続し、前記セットされた論理が交互のデータを受信イネーブル信号として隣接するセレクタ間に存在する遅延時間による遅延作用を利用して転送することを特徴とするシリアル転送装置。
  6. 請求項2に記載のシリアル転送装置と同様の構成の第2のシリアル送信回路を有し、前記データセット信号のアサート状態で前記第2のシリアル送信回路の複数のセレクタに前記データバス上のデータに代えて転送期間にわたって論理が前記並び順で交互となるデータをセットし、前記データセット信号をネゲートするとともに前記送信イネーブル信号をアサートすることにより前記第2のシリアル送信回路の複数のセレクタおよび転送ゲートをシリアル接続し、前記セットされた論理が交互のデータを受信イネーブル信号として隣接するセレクタ間に存在する遅延時間による遅延作用を利用して転送することを特徴とする請求項2に記載のシリアル転送装置。
  7. 複数のデータ保持回路は隣接間にセレクタをシリアル接続しており、前記複数のデータ保持回路のうち初段のデータ保持回路は受信したシリアル転送データを入力し、前記複数のセレクタの各一方の入力が論理を固定され、前記複数のデータ保持回路の出力は受信用のデータバスの各ラインに転送ビットの並び順に個別的に接続され、前記シリアル転送データと同期して受信する受信イネーブル信号を前記複数のセレクタおよび前記複数のデータ保持回路に印加するように構成し、前記受信イネーブル信号のネゲート状態で前記複数のセレクタが前記論理固定のデータを選択して次段のデータ保持回路にセットし、前記受信イネーブル信号がアサート状態になると前記複数のセレクタを前記各データ保持回路を介してシリアル接続するとともに、初段のデータ保持回路で受信したシリアル転送データを隣接するセレクタ間に存在する遅延時間による遅延作用を利用して順次に後段のデータ保持回路にシリアルに転送し、さらに、前記各データ保持回路から受信用のデータバスの各ラインに出力してパラレルデータに変換することを特徴とするシリアル転送装置。
  8. 複数のフリップフロップ型のデータ保持回路がシリアル接続されており、前記複数のデータ保持回路のうち初段のデータ保持回路は受信したシリアル転送データを入力し、前記複数のデータ保持回路の出力は受信用のデータバスの各ラインに転送ビットの並び順に個別的に接続され、前記シリアル転送データと同期して受信する論理が交互の受信イネーブル信号を前記複数のデータ保持回路に印加するように構成し、前記受信イネーブル信号が論理を交互することにより初段のデータ保持回路で受信したシリアル転送データを順次に後段のデータ保持回路にシリアルに転送し、さらに、前記各データ保持回路から受信用のデータバスの各ラインに出力してパラレルデータに変換することを特徴とするシリアル転送装置。
  9. 前記複数のフリップフロップ型のデータ保持回路は、並び順で1つ置きにシリアル接続されており、第2のシリアル接続のデータ保持回路群に対しては、第1のシリアル接続のデータ保持回路群に対して印加する前記受信イネーブル信号の論理反転の送信イネーブル信号を印加するように構成してある請求項8に記載のシリアル転送装置。
  10. 請求項8または請求項9に記載のシリアル転送装置において、さらに、複数のデータ保持回路のシリアル接続で構成され、前記受信イネーブル信号をクロックとしてデータ転送数をカウントするカウント手段を備え、このカウント手段によるカウントアップ信号により前記シリアル転送での一斉の出力のトリガーとしていることを特徴とするシリアル転送装置。
  11. 前記第2のシリアル送信回路は、シリアル転送データのデータ長を異にする複数種類のデータ転送に共有のものであり、前記データ長を管理するデータ長管理手段を備え、前記第2のシリアル送信回路を構成するセレクタ群にセットする論理を前記データ長管理手段の出力で調整することを特徴とする請求項3から請求項6までのいずれかに記載のシリアル転送装置。
  12. 前記シリアル送信回路の出力段と前記第2のシリアル送信回路の出力段とにそれぞれ遅延時間を異にする複数の遅延手段を有し、転送先の切り替えに伴って前記遅延手段を選択するように構成してあることを特徴とする請求項3から請求項6までのいずれかに記載のシリアル転送装置。
  13. 前記受信用のデータバスからメインのデータバスへ受信データの一斉のパラレル出力を行う転送ゲートに対してシリアル転送完了信号をシステムクロックの1クロック分以上遅らせて送出する遅延手段を備えている請求項7から請求項9までのいずれかに記載のシリアル転送装置。
  14. 前記複数のデータ保持回路のうちの最終段のデータ保持回路をデータ先頭検出手段とし、シリアル転送データの先頭にデータ先頭を識別するためのヘッダービットを付加し、前記ヘッダービット前記データ先頭検出手段で検出した直後に他のデータ保持回路をリセットすることを特徴とする請求項7から請求項9までのいずれかに記載のシリアル転送装置。
JP2003310460A 2003-09-02 2003-09-02 シリアル転送装置 Pending JP2005078523A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2003310460A JP2005078523A (ja) 2003-09-02 2003-09-02 シリアル転送装置
US10/926,103 US7213090B2 (en) 2003-09-02 2004-08-26 Data transfer apparatus for serial data transfer in system LSI
CNB2004100769551A CN1322442C (zh) 2003-09-02 2004-09-02 用于在***lsi中串行数据传送的数据传送装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003310460A JP2005078523A (ja) 2003-09-02 2003-09-02 シリアル転送装置

Publications (1)

Publication Number Publication Date
JP2005078523A true JP2005078523A (ja) 2005-03-24

Family

ID=34308402

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003310460A Pending JP2005078523A (ja) 2003-09-02 2003-09-02 シリアル転送装置

Country Status (3)

Country Link
US (1) US7213090B2 (ja)
JP (1) JP2005078523A (ja)
CN (1) CN1322442C (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010002316A (ja) * 2008-06-20 2010-01-07 Yokogawa Electric Corp Icテスタ
JP2011150477A (ja) * 2010-01-20 2011-08-04 Fujitsu Ltd ストレージ装置,スイッチおよびストレージ装置の制御方法
US8654601B2 (en) 2005-09-30 2014-02-18 Mosaid Technologies Incorporated Memory with output control
US8743610B2 (en) 2005-09-30 2014-06-03 Conversant Intellectual Property Management Inc. Method and system for accessing a flash memory device
US9240227B2 (en) 2005-09-30 2016-01-19 Conversant Intellectual Property Management Inc. Daisy chain cascading devices

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103164376A (zh) * 2011-12-12 2013-06-19 扬智科技股份有限公司 用于平行总线的解偏移装置与方法
US9202590B2 (en) * 2013-07-29 2015-12-01 Broadcom Corporation Low power shift register
CN113992209B (zh) * 2021-12-24 2022-04-08 牛芯半导体(深圳)有限公司 转换电路以及串行解串器
CN116705132B (zh) * 2022-02-24 2024-05-14 长鑫存储技术有限公司 数据传输电路、数据传输方法和存储器

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5195055A (en) * 1987-11-30 1993-03-16 Mitsubishi Denki Kabushiki Kaisha Serial data input circuit for the shifting-in of variable length data
JP2778222B2 (ja) 1990-08-15 1998-07-23 日本電気株式会社 半導体集積回路装置
DE19733748C2 (de) 1997-08-04 1999-07-15 Bosch Gmbh Robert Datenübertragungsvorrichtung
FR2775091B1 (fr) 1998-02-16 2000-04-28 Matra Communication Procede de transfert de donnees en serie, et interface de bus serie synchrone mettant en oeuvre un tel procede
JP3068593B1 (ja) * 1999-02-22 2000-07-24 日本電気アイシーマイコンシステム株式会社 シリアル―パラレル変換回路
US6414528B1 (en) * 1999-04-27 2002-07-02 Seiko Epson Corporation Clock generation circuit, serial/parallel conversion device and parallel/serial conversion device together with semiconductor device
JP2001024518A (ja) * 1999-07-12 2001-01-26 Sharp Corp パラレル/シリアル変換回路
US6233294B1 (en) * 1999-08-17 2001-05-15 Richard Bowers Method and apparatus for accomplishing high bandwidth serial communication between semiconductor devices
JP4493164B2 (ja) * 2000-06-16 2010-06-30 富士通マイクロエレクトロニクス株式会社 データ・バースト転送回路、パラレル・シリアル変換回路およびシリアル・パラレル変換回路、発振回路
US6766505B1 (en) * 2002-03-25 2004-07-20 Altera Corporation Parallel programming of programmable logic using register chains

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8654601B2 (en) 2005-09-30 2014-02-18 Mosaid Technologies Incorporated Memory with output control
US8743610B2 (en) 2005-09-30 2014-06-03 Conversant Intellectual Property Management Inc. Method and system for accessing a flash memory device
US9230654B2 (en) 2005-09-30 2016-01-05 Conversant Intellectual Property Management Inc. Method and system for accessing a flash memory device
US9240227B2 (en) 2005-09-30 2016-01-19 Conversant Intellectual Property Management Inc. Daisy chain cascading devices
JP2010002316A (ja) * 2008-06-20 2010-01-07 Yokogawa Electric Corp Icテスタ
JP2011150477A (ja) * 2010-01-20 2011-08-04 Fujitsu Ltd ストレージ装置,スイッチおよびストレージ装置の制御方法
US9054948B2 (en) 2010-01-20 2015-06-09 Fujitsu Limited Storage apparatus, switch and storage apparatus control method

Also Published As

Publication number Publication date
CN1322442C (zh) 2007-06-20
US20050062501A1 (en) 2005-03-24
US7213090B2 (en) 2007-05-01
CN1591379A (zh) 2005-03-09

Similar Documents

Publication Publication Date Title
CN101599053B (zh) 支持多种传输协议的串行接口控制器及控制方法
US8199849B2 (en) Data transmitting device, data receiving device, data transmitting system, and data transmitting method
US7064690B2 (en) Sending and/or receiving serial data with bit timing and parallel data conversion
CN110912549B (zh) 一种串并转换电路及其驱动方法、显示面板
WO2005091543A1 (en) Architecture for bidirectional serializers and deserializer
JP2005078523A (ja) シリアル転送装置
US7590146B2 (en) Information processing unit
JP4387371B2 (ja) メモリ装置、その使用、および、データワードの同期方法
US20050207280A1 (en) Bit clock with embedded word clock boundary
US7796063B2 (en) Data transmission circuits and data transceiver systems
CN107947873A (zh) 具有多个传输通道的数据传输***及测试传输数据的方法
JP3846871B2 (ja) パラレル・シリアル変換回路、シリアルデータ生成回路、同期信号生成回路、クロック信号生成回路、シリアルデータ送信装置、シリアルデータ受信装置およびシリアルデータ伝送システム
JP2011066621A (ja) データ転送装置
JP2001236306A (ja) データ転送方法及び装置
CN112019194A (zh) 一种高速串化电路
WO2009110588A1 (ja) データ転送装置及び方法並びに半導体回路
US6418176B1 (en) Forwarded clock recovery with variable latency
US6920578B1 (en) Method and apparatus for transferring data between a slower clock domain and a faster clock domain in which one of the clock domains is bandwidth limited
US20100289677A1 (en) Circuit and method for parallel to serial conversion
JP2006221348A (ja) シリアルデータ転送装置およびシリアル転送システム
US7269681B1 (en) Arrangement for receiving and transmitting PCI-X data according to selected data modes
US20080055126A1 (en) Parallelization of serial digital input signals
WO2016027676A1 (ja) Pwm復調回路、ならびに受信装置および伝送システム
KR100873159B1 (ko) 전송선과 스위칭수를 줄이는 하이브리드 터너리 인코딩전송 방법 및 이 방법을 이용하는 래퍼 회로
EP2515443A1 (en) Data serializer