JP4201375B2 - データ転送装置 - Google Patents
データ転送装置 Download PDFInfo
- Publication number
- JP4201375B2 JP4201375B2 JP04822298A JP4822298A JP4201375B2 JP 4201375 B2 JP4201375 B2 JP 4201375B2 JP 04822298 A JP04822298 A JP 04822298A JP 4822298 A JP4822298 A JP 4822298A JP 4201375 B2 JP4201375 B2 JP 4201375B2
- Authority
- JP
- Japan
- Prior art keywords
- serial
- clock
- line
- output
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Description
【発明の属する技術分野】
この発明はシリアルデータラインとシリアルクロックラインの2本のバスラインからなるI2 Cバスに接続されたデータ転送装置のシリアルI/O回路に関するものである。
【0002】
【従来の技術】
I2 Cバスは2線式双方向のシリアルバスラインで、シリアルクロックライン(以下、SCLラインと称する)とシリアルデータライン(以下、SDAラインと称する)のみで構成されている。
【0003】
以下、I2 Cバスの仕様について簡単に説明する。
I2 Cバスに接続されるユニットは、SDAライン、SCLラインの両方に対して、オープンドレイン出力を持たねばいけない。
【0004】
また、SDAライン、SCLラインともプルアップ抵抗によりプルアップされている。このようにしてSDAライン、SCLラインともワイヤードANDが設定されている。I2 Cバスが使用されていないとき、SCLライン、SDAラインともにHレベルである。データ転送時、SCLライン=Hの時はSDAラインが変化することは許されない。SCLライン=Lの時のみSDAラインは変化することが許される。
【0005】
この唯一の例外は、スタートコンディション発生とストップコンティション発生である。スタートコンディションはSCLライン=H時にSDAラインの立ち下がりで定義され、ストップコンディションはSCLライン=H時にSDAラインの立ち上がりで定義される。
【0006】
I2 Cバスでは、データは8ビット構成で転送され、各バイトはその終わりにアクノレッジが付く。受信側は各バイトの受信を9発目のSCLラインでSDAラインをLにすることで、アクノレッジを返す。1回の転送で伝送できるバイト数は制限がなく、何バイトでも伝送できる。
【0007】
I2 Cバスでの第一バイトは7ビットのスレーブアドレスであり、最下位ビットはデータの方向を示す方向ビットである。この方向ビットが0のとき、マスタはスレーブに書き込み、1のときはマスタはスレーブから読み込む。
【0008】
図8にI2 Cバスの転送例を示す。これは、スレーブアドレスの後に1バイトのデータを伝送した例である、I2 Cバスにおけるマスタはデータ伝送の主導を司る。よって、マスタはスレーブに対してクロックを生成し、スタートコンディションとストップコンディションを生成する。また、I2 Cバスはマルチマスタシステムなので、複数のマスタが同時に転送を開始しようとすることがある。このため、混乱をさけるため、アービトレーションがとられる。アービトレーションはSDAラインについて行われる。
【0009】
SDAラインについてのアービトレーションは以下の通りである。SCLラインがHであるとき、SDAライン上にHを出力しているマスタは、他のマスタがSDA上にLを出力していれば、自分のレベルがバスのレベルと一致しないためデータ出力段をオフにする。
【0010】
SCLラインについてはクロックの同期がとられる。図9を用いて説明する。クロック信号の同期はSCLラインと装置をAND接続する事によって実行される。これにより、SCLラインがHからLに変化すると、関連する装置はL期間のカウントを開始する。ある装置のクロックがLになると、その装置は自分のクロックがHになるまでSCLラインをLに保持する。しかし、この装置のクロックがLからHに変化しても、他の装置のクロックがまだL期間内にある場合、SCLラインは変化しない。
【0011】
よって、SCLラインのL期間はL期間の最も長い装置によって決定される。この間、L期間の短い装置はHのまま待状態となる。全ての装置がL期間を終了するとSCLラインは開放されてH状態になる。これで装置のクロックとSCLラインが同じ状態になり、どちらもH期間のカウントを開始する。SCLラインはH期間を最初に終了した装置によって再びLになる。
【0012】
アービトレーションとクロック同期化は複雑なので一般的には、I2 Cバスの専用ハードウエアが必要である。しかし、CPUの処理能力が高ければ、CPUが入出カポートを制御して実現することもできる。
【0013】
図5は、従来のシリアルI/Oを用いて、I2 Cバスに接続したデータ転送装置の構成を示すブロック図である。この例ではCPU11の処理能力が高く、CPU11が入出力ポートを制御してアービトレーション処理を実現する場合である。図中、1はSCL端子の入力バッファであり、リードするときはその値はデータバスに出力される。2はSCL端子への出力バッファである。3は出力バッファ2の入力を出力ラッチ4とスイッチ5のいずれかから選択するセレクタである。
【0014】
4はSCL端子の出力値を格納する出力ラッチであり、データバスを介してライトされる。5はシリアルI/O6のクロック端子の接続を入力バッファ1とセレクタ3のいずれかから選択するスイッチであり、シリアルI/O6が内部クロックモードの時はセレクタ3側に接続し、外部クロックモードの時は入カバッファ1側に接続する。7はSDA端子の入力バッファであり、リードするときはその値はデータバスに出力される。また、シリアルI/O6の入力端子にも接続される。
【0015】
8はSDA端子への出力バッファである。9は出力バッファ8の入力を出力ラッチ10とシリアルI/O6の出力端子OUTのいずれかから選択するセレクタであり、出力ラッチ10はSDA端子の出力値を格納し、データバスを介してライトされる。11はCPUであり、以上の各回路を制御する。
【0016】
図6は上記シリアルI/O6の構成を示すブロック図である。図中、60はクロック発生回路、61は内部クロックモードの時はクロック発生回路60側に接続し、外部クロックモード時はクロック端子側に接続されるスイッチである。62は内部クロックモード時に送信クロックをクロック端子に出力する出力バッファである。
【0017】
63は送信クロックや送信完了割り込み要求を出力し、送信を制御する送信制御回路である。64は受信クロックや受信完了割り込み要求を出力し、受信を制御する受信制御回路である。65は入力端子から入ってくる直列データを並列データに変換する受信シフトレジスタであり、受信クロックのタイミングで入力端子のデータを1ビットずつ受信シフトレジスタ65に格納する。66は受信バッファレジスタであり、受信シフトレジスタ65の受信が完了するたびに受信シフトレジスタ65の内容を取り込む。この受信バッファレジスタ66はデータバスに接続されており、CPU11はリードすることができる。
【0018】
67は送信シフトレジスタであり、送信クロックに同期して出力端子OUTへデータを転送する。68は送信バッファレジスタで、データバスに接続されており、CPU11はライトすることができる。送信条件が揃ったときに設定されたデータを送信シフトレジスタ67に移す。69は制御レジスタであり、シリアルI/O6の動作モードの設定を行う。
【0019】
次に図7のタイミング図を参照して図6のブロック図の動作を説明する。まず、送信動作について説明する。
CPU11は、制御レジスタ69に制御データを設定することにより、内部クロック/外部クロックの設定などを行う。例えば内部クロックの設定をしたとする。また、送信バッファレジスタ68に送信するデータを設定する。そうしておいて、CPU11は制御レジスタ69に送信の開始を指示する。そうすると送信制御回路63は送信シフトレジスタ67に対し送信クロックと送信データ書き込み信号を出力する。
【0020】
この結果、送信シフトレジスタ67は送信バッファレジスタ68に格納したデータを書き込み、送信クロックに同期して、書き込んだデータを1ビットずつ転送する。送信シフトレジスタ67のデータ全てを(このときは9ビットとする)出力し終えたら、送信制御回路63は、送信完了割り込み要求を発生する。クロック端子からは送信クロックが出力される。
【0021】
外部クロックの設定をした場合は、クロック端子CLKからのクロックが送信制御回路63に入力され、出力バッファ62がOFFするので、送信クロックは出力されない違いがあるだけで、それ以外は内部クロックの時と同様である。
【0022】
次に受信動作を説明する。
CPU11は、制御レジスタ69に制御データを設定することにより、内部クロックの設定をしたとする。そうしておいて、CPU11は制御レジスタ69に受信の開始を指示する。そうすると送信制御回路63は送信クロックを出力する。受信制御回路64は受信シフトレジスタ65に受信クロックを出力する。受信シフトレジスタ65は受信クロックに同期して入力端子INの入力データを1ビットずつ受信する。9ビット分受信し終えたら受信制御回路64は受信データ書き込み信号を受信バッファレジスタ66に出力する。このタイミングで受信シフトレジスタ65のデータは受信バッファレジスタ66に移される。また、9ビット分受信し終えたら受信制御回路64は受信完了割り込み要求を発生する。
【0023】
外部クロックの設定をした場合は、クロック端子からのクロックが送信制御回路63に入力され、出力バッファ62がOFFするので、送信クロックは出力されない違いがあるだけで、それ以外は内部クロック時と同様である。
【0024】
次に図8の回路でI2 Cバスを実現させたときを説明する。
I2 Cバスでは図8に示すように、スタートコンディション発生後、最初にスレーブアドレスが転送され、その後データが転送される。図5の回路を用い、マスターとして動作させる場合を考える。スタートコンディションの発生からスレーブアドレスの送信についてはCPUはSCL端子、SDA端子をポート入出力回路として制御することにより実現する。
【0025】
なぜなら、この時は複雑なアービトレーションの処理及びクロックの同期化の処理が必要であるからである。アービトレーションに勝ち残りスレーブアドレスの送信が終了すると、SCLラインがHの時にCPU11はセレクタ3、セレクタ9、スイッチ5を設定することによりSCL端子、SDA端子をシリアルI/Oに切り換える。そして、CPU11はシリアルI/O6を制御することによりデータの転送を行う。
【0026】
アービトレーションの処理が必要なのはスレーブアドレス送信時のみを前提とした場合、アービトレーションに勝ち残れば、マスタは自己だけなので以後のデータ転送に関してはアービトレーションの処理が不要になり、単純なシリアルI/Oで実現できる。この様子を図8に示す。すなわち、スレーブアドレスの転送が完了すれば、SCL端子、SDA端子を汎用入出力ポートからシリアルI/Oに切り替え、シリアルI/O6を用いてデータの送受信を行う。そして、全データの送受信が完了すると、SCL端子、SDA端子をシリアルI/Oから汎用入出力ポートに切り替え、ストップコンディションを発生する。
【0027】
今度はスレーブとして動作させる場合を考える。マスター時と同様に、スタートコンディションの検出からスレーブアドレスの受信についてはCPUはSCL端子、SDA端子をポート入出力回路として制御することにより実現する。スレーブアドレスを受信してアクノリッジを返した後、つまり出力ラッチ10にLを書き込みSDA端子にLを出力した後、SCLラインがHの時にCPU11はセレクタ3、セレクタ9、スイッチ5を設定することによりSCL端子、SDA端子をシリアルI/Oに切り換える。そして、CPU11はシリアルI/O6を制御することによりデータの転送を行う。
なお、上記の従来例に関連する先行技術としては、例えば、特開平8−202528号公報、特開平5−46551号公報記載のものがある。
【0028】
【発明が解決しようとする課題】
従来のI2 Cバス用シリアルI/O回路は以上のように構成されているので、ポート入出力回路と合わせてI2 Cバスシステムを実現しようとすると、クロック同期化はCPUがソフトウエアでポート入出力回路を制御して実現させるため、動作速度が遅くなる。そして、CPU11はこの間I2 Cバスの処理に専念する必要があるため、他の処理ができない。つまり、I2 Cバスよりも優先順位の高い処理の要求があっても、この間はその処理ができない。
【0029】
また、クロック同期化はCPUがソフトウエアでポート入出力回路を制御して実現させるスレーブアドレスの送信時しかできない。もちろん、データの送受信時にもCPUがソフトウエアでポート入出力回路を制御して実現させれば可能であるが、更に動作速度が遅くなり、CPUは他の処理ができなくなるという課題があった。
【0030】
この発明は上記のような課題を解決するためになされたもので、ポート入出力回路と合わせて、最低限のハードウエアを追加することでCPUの負荷を少なくしてI2 Cバスシステムに応用するI/O回路を実現することを目的とする。
【0031】
【課題を解決するための手段】
この発明に係るデータ転送装置は、シリアルクロックラインおよびシリアルデータラインに接続されたデータ転送装置であって、シリアルクロックラインにデータ転送装置を含む複数の装置が接続されている場合、複数の装置のうちの少なくともいずれか1つが第1の論理レベルを有する信号をシリアルクロックラインへ出力するとシリアルクロックラインの電圧レベルが第1の論理レベルとなり、複数の装置のすべてが第2の論理レベルを有する信号をシリアルクロックラインへ出力するとシリアルクロックラインの電圧レベルが第2の論理レベルとなり、データ転送装置は、シリアルクロックラインに接続されたSCL端子と、シリアルデータラインに接続されたSDA端子と、SCL端子およびSDA端子に結合されたシリアルI/O回路とを備え、シリアルI/O回路は、クロック用信号を生成してSCL端子へ出力し、かつ受けたカウント用クロックをカウントし、カウント値が所定値になるとクロック用信号の論理レベルを反転させるカウンタと、シリアルクロックラインの電圧レベルの第1の論理レベルへの遷移を検出し、遷移を検出した場合であってクロック用信号が第2の論理レベルを有するとき、カウンタのカウント値を所定値にリロードする第1の制御回路と、クロック用信号の第2の論理レベルへの遷移を検出し、遷移を検出した場合であって、シリアルクロックラインの電圧レベルが第1の論理レベルであるときには、カウンタのカウントを停止し、その後、シリアルクロックラインの電圧レベルが第2の論理レベルへ遷移するとカウントの停止を解除する第2の制御回路と、クロック用信号とシリアルクロックラインの電圧レベルとの論理積を出力するANDゲートと、ANDゲートの出力信号に基づいて、シリアルデータラインへのデータの出力およびシリアルデータラインからのデータの入力を行なうシフトレジスタとを含む。
【0032】
好ましくは、カウンタは、クロック用信号によってパルス群を間欠的にシリアルクロックラインへ出力するように制御され、シリアルI/O回路は、さらに、パルス群における最後のパルスが出力されるとシリアルクロックラインへ第1の論理レベルを有する信号を出力するLホールド回路を含む。
【0033】
好ましくは、Lホールド回路は、さらに、パルス群における最後のパルスが出力されるとカウンタのカウントを停止する。
【0034】
【発明の実施の形態】
以下、この発明の実施の一形態を説明する。
実施の形態1.
図1はこの発明におけるシリアルI/O回路の実施の形態を示すブロック図であり、図1において、601はクロック発生回路であり、送信制御回路63から送信クロックとCLKおよびLホールド回路621からの信号が入力されている。61は内部クロックモードの時はクロック発生回路601側に接続し、外部クロックモード時はクロック端子側に接続されるスイッチである。62は内部クロックモード時に送信クロックをクロック端子に出力する出力バッファである。
【0035】
621は送信クロックが最終の立ち下がりのタイミングでCLKラインをLにする手段としてのLホールド回路(Lホールド手段)であり、このLホールド回路621は、通常は送信制御回路63が出力するクロックを出力し、送信制御回路63が出力する最終クロックの立ち下がり信号でLを出力する。L出力が解除され通常に戻るのは、CPU11が制御レジスタ69に解除の設定をしたときである。上記送信制御回路63は送信クロックや送信完了割り込み要求を出力して送信を制御する。631は送信制御回路63の出力する送信クロックとCLKとのAND回路である。つまり、自分のクロックとシリアルクロックラインをANDしたものをシリアルI/Oの動作クロックとする手段を構成する。
【0036】
64は受信クロックや受信完了割り込み要求を出力し、受信を制御する受信制御回路である。65は入力端子から入ってくる直列データを並列データに変換する受信シフトレジスタであり、受信クロックのタイミングで入力端子のデータを1ビットずつ受信シフトレジスタ65に格納する。66は受信バッファレジスタであり、受信シフトレジスタ65の受信が完了するたびに受信シフトレジスタ65の内容を取り込む。データバスに接続されており、CPU11はリードすることができる。
【0037】
67は送信シフトレジスタであり、送信クロックに同期して出力端子へ転送する。68は送信バッファレジスタであり、データバスに接続されており、CPU11はライトすることができる。送信条件が揃ったときに設定されたデータを送信シフトレジスタ67に移す。69は制御レジスタであり、シリアルI/O6の動作モードの設定を行う。データバスに接続されており、CPU11はライトすることができる。
【0038】
図2は、上記クロック発生回路601の内部ブロック図である。図2において、602は送信クロックの立ち上がりを検出する立ち上がり検出回路であり、603,607はANDゲート、606はNANDゲート、604はインバータ、611はセットリセットフリップフロップ(以後、SRFFと称する)、608はリロード付きカウンタであり、リロード信号が入力されるかカウントがオーバーフローするとカウント値がリロードされ、同時に出力が反転されるものとする。605はCLKの立ち下がりを検出する立ち下がり検出回路である。
【0039】
そして、上記立ち下がり検出回路605、NANDゲート606は、自己のクロックがHの時にシリアルクロックラインの立ち下がりを検出するとクロック発生回路のカウント値をリロードすると共にクロックを初期化する手段を構成し、上記立ち上がり検出回路602、インバータ604、ANDゲート603と、SRFF611は、シリアルクロックラインがLの時に自己のクロックの立ち上がりを検出すると、クロック発生回路のカウントソースの供給を停止させる手段を構成している。
【0040】
なお、この発明におけるシリアルI/Oを用いて、I2 Cバスに接続するデータ転送装置の構成は前記図5と同様であるので説明を省略する。
【0041】
次に動作について説明する。
従来のI2 Cバスとの違いは、クロック同期化機能を付加したことと、SCL端子をL出力したことであるので、これについて述べる。その他、従来のI2 Cバスと同等部分は説明を省略する。初めに図3を参照して図1,図2のブロック図の動作を説明する。
【0042】
I2 Cバスではスタートコンディション発生後、最初にスレーブアドレスが転送され、その後データが転送される。マスターとして動作させる場合を考える。スタートコンディションの発生からスレーブアドレスの送信については従来ではSCL端子、SDA端子を入出力ポートとして動作させることで実現したが、この発明ではSCL端子、SDA端子をシリアルI/Oの端子として動作させることで実現する。クロックの同期化はハードウェアで行う。
【0043】
図3のAは、自己のクロックはH出力しているときに別の装置がLを出力した場合である。立ち下がり検出回路605はSCLラインの立ち下がりを検出してパルスを出力する。送信クロックはHなので、NANDゲート606はリロード信号をリロード付きカウンタ608に入力する。これによりリロード付きカウンタ608はカウント値nがリロードされると共に出力が反転し、Lを出力する。これによりSCL端子とAND回路631の出力はLになり、送信シフトレジスタ67と受信制御回路64にLのクロックを供給する。
【0044】
図3のBは、別の装置はL区間が終了しHを出力した時である。この時自己のクロックはL区間が終了していないので、Lを出力している。SCL端子はAND接続されているのでLのままである。SCL端子とAND回路631の出力はLのままであり、送信シフトレジスタ67と受信制御回路64に供給するクロックもLのままである。
【0045】
図3のCは、リロード付きカウンタ608がオーバーフローし、カウント値がリロードされ、出力が反転してHを出力することにより、自己のクロックのL区間が終了した場合である。これによりSCL端子とAND回路631の出力はHになり、送信シフトレジスタ67と受信制御回路64にHのクロックを供給する。
【0046】
図3のDは、Aと同様に自分のクロックはH出力しているときに別の装置がLを出力した場合であるので、説明を省略する。
【0047】
図3のEは、別の装置はLを出力しているときに、リロード付きカウンタ608がオーバーフローし、カウント値がリロードされ、出力が反転してHを出力することにより、自分のクロックのL区間が終了した場合である。立ち上がり検出回路602は送信クロックの立ち上がりを検出してパルスを出力する。SCL端子はLなので、ANDゲート603もパルスを出力する。SRFF611はリセットされ、これによりリロード付きカウンタ608はカウントソースの供給が停止する。SCL端子はAND接続されているのでLのままであり、AND回路631の出力もLのままである。
【0048】
図3のFは、別の装置のL区間が終了してHを出力した場合である。SCL端子はAND接続されているので、Hを出力する。SCL端子がHになるので、SRFF611はHを出力する。よってANDゲート607はリロード付きカウンタ608にカウントソースの供給を再開する。AND回路631の出力もHになる。送信シフトレジスタ67と受信制御回路64にHのクロックを供給する。
【0049】
このように、この発明によれば、CPU11がSCL端子、SDA端子を入出力ポートとして制御することなく、クロックの同期化が実現できる。
次にLホールド回路621について図4を参照して説明する。
送信制御回路63では送信クロックの最終立ち下がりのタイミング(図4のAのタイミング)で最終クロックの立ち下がり信号を出力する。Lホールド回路621はこのタイミングでSCL端子をLにする。最終クロックの立ち下がり信号は割り込み要求信号にもなっているので、CPU11はこのタイミングで受信データの確認やアクノリッジの処理等を実行することができる。この間はSCLラインがLであり、SCLラインはAND接続されているので、他の装置はクロックを発生させることができない。つまり、他の装置を待ち状態にしたうえで、CPU11は一連の処理を実行することができる。
【0050】
また、Lホールド回路621は、Lホールド期間信号を出力する。この信号は図3のANDゲート607に入力されており、この期間カウントソースの供給が停止する。そうして一連の処理が完了すると、CPU11は制御レジスタ69に解除の設定をすることにより、Lホールド回路621のL出力を解除する。そうしてSCL端子はHになり(図4のBのタイミング)、次の転送が可能な状態になる。
【0051】
以上のように、この実施の形態1によれば、クロック発生回路およびAND回路によって、CPUで最低限の制御をすることにより、I2 Cバスのクロック同期化機能を実現することができる。また、シリアルI/Oの動作クロックの最後の立ち下がりでシリアルクロックラインをLにすることにより、CPUの負荷を軽減することができる。
【0052】
【発明の効果】
以上のように、この発明によれば、シリアルI/O回路は、クロック用信号を生成してSCL端子へ出力し、かつ受けたカウント用クロックをカウントし、カウント値が所定値になるとクロック用信号の論理レベルを反転させるカウンタと、シリアルクロックラインの電圧レベルの第1の論理レベルへの遷移を検出し、遷移を検出した場合であってクロック用信号が第2の論理レベルを有するとき、カウンタのカウント値を所定値にリロードする第1の制御回路と、クロック用信号の第2の論理レベルへの遷移を検出し、遷移を検出した場合であって、シリアルクロックラインの電圧レベルが第1の論理レベルであるときには、カウンタのカウントを停止し、その後、シリアルクロックラインの電圧レベルが第2の論理レベルへ遷移するとカウントの停止を解除する第2の制御回路と、クロック用信号とシリアルクロックラインの電圧レベルとの論理積を出力するANDゲートと、ANDゲートの出力信号に基づいて、シリアルデータラインへのデータの出力およびシリアルデータラインからのデータの入力を行なうシフトレジスタとを含むように構成したので、専用ハードウエアのような大きな回路ではなく、ポート入出力回路とシリアルI/Oの組み合わせでシリアルI/O回路が実現できる。従って、チップ面積が小さくコストの低い製品が得られると共に、汎用性の高い製品が得れられる効果がある。
【0053】
この発明によれば、カウンタは、クロック用信号によってパルス群を間欠的にシリアルクロックラインへ出力するように制御され、パルス群における最後のパルスが出力されるとシリアルクロックラインへ第1の論理レベルを有する信号を出力するように構成したので、CPUの負荷を小さくすることができるという効果がある。
【図面の簡単な説明】
【図1】 この発明の実施の形態1によるI2 Cバス用シリアルI/O回路の構成を示すブロック図である。
【図2】 クロック発生回路の構成を示すブロック図である。
【図3】 クロック発生回路の動作状態とAND回路およびSCLラインの状態との関係を示すタイミング図である。
【図4】 Lホールド回路の動作を説明するタイミング図である。
【図5】 I2 Cバスの構成を示すブロック図である。
【図6】 I2 Cバス用シリアルI/O回路の構成を示すブロック図である。
【図7】 シリアルI/O回路の動作を説明するタイミング図である。
【図8】 I2 Cバスでのデータ転送を説明するタイミング図である。
【図9】 SCLラインについてのクロック同期について説明するタイミング図である。
【符号の説明】
602 立ち上がり検出回路(カウントソースの供給を停止させる手段)、603 ANDゲート(カウントソースの供給を停止させる手段)、604 インバータ(カウントソースの供給を停止させる手段)、605 立ち下がり検出回路(初期化する手段)、606 NANDゲート(初期化する手段)、611 SRFF(カウントソースの供給を停止させる手段)、621 Lホールド回路(Lホールド手段)、631 AND回路。
Claims (3)
- シリアルクロックラインおよびシリアルデータラインに接続されたデータ転送装置であって、
前記シリアルクロックラインに前記データ転送装置を含む複数の装置が接続されている場合、前記複数の装置のうちの少なくともいずれか1つが第1の論理レベルを有する信号を前記シリアルクロックラインへ出力すると前記シリアルクロックラインの電圧レベルが前記第1の論理レベルとなり、前記複数の装置のすべてが第2の論理レベルを有する信号を前記シリアルクロックラインへ出力すると前記シリアルクロックラインの電圧レベルが前記第2の論理レベルとなり、
前記データ転送装置は、
前記シリアルクロックラインに接続されたSCL端子と、
前記シリアルデータラインに接続されたSDA端子と、
前記SCL端子および前記SDA端子に結合されたシリアルI/O回路とを備え、
前記シリアルI/O回路は、
クロック用信号を生成して前記SCL端子へ出力し、かつ受けたカウント用クロックをカウントし、カウント値が所定値になると前記クロック用信号の論理レベルを反転させるカウンタと、
前記シリアルクロックラインの電圧レベルの前記第1の論理レベルへの遷移を検出し、前記遷移を検出した場合であって前記クロック用信号が前記第2の論理レベルを有するとき、前記カウンタのカウント値を前記所定値にリロードする第1の制御回路と、
前記クロック用信号の前記第2の論理レベルへの遷移を検出し、前記遷移を検出した場合であって、前記シリアルクロックラインの電圧レベルが前記第1の論理レベルであるときには、前記カウンタのカウントを停止し、その後、前記シリアルクロックラインの電圧レベルが前記第2の論理レベルへ遷移すると前記カウントの停止を解除する第2の制御回路と、
前記クロック用信号と前記シリアルクロックラインの電圧レベルとの論理積を出力するANDゲートと、
前記ANDゲートの出力信号に基づいて、前記シリアルデータラインへのデータの出力および前記シリアルデータラインからのデータの入力を行なうシフトレジスタとを含むデータ転送装置。 - 前記カウンタは、前記クロック用信号によってパルス群を間欠的に前記シリアルクロックラインへ出力するように制御され、
前記シリアルI/O回路は、さらに、
前記パルス群における最後のパルスが出力されると前記シリアルクロックラインへ前記第1の論理レベルを有する信号を出力するLホールド回路を含む請求項1記載のデータ転送装置。 - 前記Lホールド回路は、さらに、前記パルス群における最後のパルスが出力されると前記カウンタのカウントを停止する請求項2記載のデータ転送装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP04822298A JP4201375B2 (ja) | 1998-02-27 | 1998-02-27 | データ転送装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP04822298A JP4201375B2 (ja) | 1998-02-27 | 1998-02-27 | データ転送装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH11250008A JPH11250008A (ja) | 1999-09-17 |
JP4201375B2 true JP4201375B2 (ja) | 2008-12-24 |
Family
ID=12797401
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP04822298A Expired - Fee Related JP4201375B2 (ja) | 1998-02-27 | 1998-02-27 | データ転送装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4201375B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4917341B2 (ja) | 2006-04-04 | 2012-04-18 | ルネサスエレクトロニクス株式会社 | インターフェース回路 |
JP4367528B2 (ja) | 2007-05-25 | 2009-11-18 | トヨタ自動車株式会社 | シリアル通信装置 |
-
1998
- 1998-02-27 JP JP04822298A patent/JP4201375B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH11250008A (ja) | 1999-09-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0258872B1 (en) | Serial data transfer system | |
US5878234A (en) | Low power serial protocol translator for use in multi-circuit board electronic systems | |
EP0378426B1 (en) | Data transfer using bus address lines | |
US5587957A (en) | Circuit for sharing a memory of a microcontroller with an external device | |
US5761450A (en) | Bus bridge circuit flushing buffer to a bus during one acquire/relinquish cycle by providing empty address indications | |
KR100387980B1 (ko) | 서로다른두직렬데이터전송모드로동작가능한직렬인터페이스 | |
US20080086578A1 (en) | Integrated circuit device having send/receive macro for serial transfer bus | |
JPH0319741B2 (ja) | ||
EP0392565A2 (en) | System bus control system | |
JP2009535677A (ja) | I2cクロックの生成方法及びシステム | |
JP2778222B2 (ja) | 半導体集積回路装置 | |
US5884044A (en) | Dedicated DDC integrable multimode communications cell | |
JPH01133167A (ja) | データ転送ドライバ | |
JP4201375B2 (ja) | データ転送装置 | |
JPS6043546B2 (ja) | デ−タ転送異常処理方式 | |
US5960180A (en) | Host adapter integrated circuit having autoaccess pause | |
JPH11502643A (ja) | シリアルデータバスシステムにおけるエラーの認識及び除去 | |
US5617433A (en) | Serial data transfer apparatus | |
JPS61166647A (ja) | マイクロプロセツサ装置およびアドレス可能なメモリから情報を読出すためのアクセス方法 | |
JPH10207834A (ja) | シリアル入出力回路 | |
WO1999044142A2 (en) | Interfacing peripheral devices via a slave group interface device to a bus | |
JP2000299694A (ja) | デ−タ転送システムおよび転送エラー検出方法 | |
WO2003025769A1 (en) | Microcontroller having a transmission-bus-interface | |
JP2786732B2 (ja) | シリアル・パラレル変換回路 | |
JPH0338763A (ja) | シリアル・インタフェース回路 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050223 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20060123 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20071121 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20071101 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080115 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080314 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20080930 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20081007 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111017 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111017 Year of fee payment: 3 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111017 Year of fee payment: 3 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111017 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121017 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121017 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131017 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |