(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0011】
以下では、まず、本発明の技術的意義の理解を容易にするために、2つの通信装置の間で双方向通信を、クロック信号を伝達する配線とは別の、同じ2本のデータ用信号配線を用いて行う場合に起こり得る問題について説明する。
【0012】
図1Aは、双方向通信システムの構成例を示すブロック回路図である。ここでは、一例として、MIPI−DSI規格を満たすマスター側通信装置およびスレーブ側通信装置を含む構成例について説明する。
【0013】
図1Aに示した双方向通信システムの構成要素について説明する。
図1Aに示した双方向通信システムは、マスター側通信装置10と、信号バス群20−0〜20−Nと、クロックバス30と、スレーブ側通信装置40とを含んでいる。
【0014】
信号バス群20−0〜20−Nは、第0の信号バス20−0〜第Nの信号バス20−Nを含んでいる。ここで、Nは0から3までの整数である。このうち、第0の信号バス20−0だけは、マスター側通信装置10およびスレーブ側通信装置40の間で双方向のデータ通信が可能である。その他の、第1の信号バス20−1〜第Nの信号バス20−Nについては、マスター側通信装置10からスレーブ側通信装置40に向けた一方向のデータ通信が出来れば良い。
【0015】
0乃至Nの範囲に含まれる任意の整数iにおいて、第iの信号バス20−iは、第iのプラス側信号バス線21−iと、第iのマイナス側信号バス線22−iとを含んでいる。
【0016】
クロックバス30は、プラス側クロックバス線31と、マイナス側クロックバス線32とを含んでいる。
【0017】
図1Aに示した各構成要素の接続関係について説明する。信号バス群20−0〜20−Nおよびクロックバス30のそれぞれは、マスター側通信装置10およびスレーブ側通信装置40の双方を接続している。
【0018】
図1Aに示した各構成要素の動作について説明する。
【0019】
マスター側通信装置10は、制御命令やデータを乗せた差動信号を生成し、信号バス群20−0〜20−Nを介してスレーブ側通信装置40に向けて送信する。信号バス群20−0〜20−Nは、この差動信号を伝達する。ここで、0乃至Nの範囲に含まれる任意の整数iにおいて、第iのプラス側信号バス線21−iは、第iの信号バス20−iが伝達する差動信号の一方の信号を伝達する。また、第iのマイナス側信号バス線22−iは、第iの信号バス20−iが伝達する差動信号の他方の信号を伝達する。スレーブ側通信装置40は、信号バス群20−0〜20−Nを介して各種の信号またはデータを乗せた差動信号を受信する。
【0020】
スレーブ側通信装置40は、制御命令やデータなどを乗せた差動信号を生成し、第0信号バス20−0を介してマスター側通信装置10に向けて送信する。第0信号バス20−0は、この差動信号を伝達する。ここで、第0のプラス側信号バス線21−0は、この差動信号の一方の信号を伝達する。また、第0のマイナス側信号バス線22−0は、この差動信号の他方の信号を伝達する。マスター側通信装置10は、第0信号バス20−0を介して各種の信号又はデータを乗せた差動信号を受信する。
【0021】
マスター側通信装置10は、クロック信号を生成し、クロックバス30を介してスレーブ側通信装置40に向けて送信する。クロックバス30は、クロック信号を伝達する。ここで、プラス側クロックバス線31は、クロックバス30が伝達するクロック信号のプラス側電圧を伝達する。また、マイナス側クロックバス線32は、クロックバス30が伝達するクロック信号のマイナス側電圧を伝達する。スレーブ側通信装置40は、クロックバス30を介してクロック信号を受信する。
【0022】
このように、
図1Aに示した双方向通信システムでは、各種データ信号と、クロック信号とが、異なるバスを介して別々に伝達される。また、マスター側通信装置10と、スレーブ側通信装置40との間で、MIPI−DSI規格のLPモードを用いた双方向通信は、第0信号バス20−0に含まれる2本のバス線21−0、22−0だけを介して行われる。
【0023】
図1Bは、従来例による双方向通信システムの構成例を示すブロック回路図である。
【0024】
図1Bに示した従来例による双方向通信システムの構成要素について説明する。
図1Bに示した双方向通信システムは、マスター側通信装置110と、信号バス120と、クロックバス130と、スレーブ側通信装置140とを含んでいる。
【0025】
図1Bに示したマスター側通信装置110は、マスター側送信回路111と、マスター側受信回路112と、クロック信号送信回路113とを含んでいる。
【0026】
図1Bに示した信号バス120は、プラス側信号バス線121と、マイナス側信号バス線122とを含んでいる。
【0027】
図1Bに示したクロックバス130は、プラス側クロックバス線131と、マイナス側クロックバス線132とを含んでいる。
【0028】
図1Bに示したスレーブ側通信装置140は、スレーブ側受信回路141と、スレーブ側送信回路142と、クロック信号受信回路143と、コマンドレジスタ1455と、スレーブ側送信信号用クロック信号生成回路146と、スレーブ側送信信号生成回路147とを含んでいる。
【0029】
図1Bに示した各構成要素の接続関係について説明する。マスター側送信回路111の出力端群は、プラス側信号バス線121およびマイナス側信号バス線122を介して、スレーブ側受信回路141の受信端群に接続されている。スレーブ側送信回路142の送信端群も、プラス側信号バス線121およびマイナス側信号バス線122を介して、マスター側受信回路112の入力端群に接続されている。クロック信号送信回路113は、プラス側クロックバス線131およびマイナス側クロックバス線132を介して、クロック信号受信回路143の入力端群に接続されている。コマンドレジスタ1455の出力部は、スレーブ側送信信号用クロック信号生成回路146の入力端に接続されている。クロック信号受信回路143の出力端は、スレーブ側送信信号用クロック信号生成回路146の他の入力端に接続されている。スレーブ側送信信号用クロック信号生成回路146の出力端は、スレーブ側送信信号生成回路147の入力端に接続されている。スレーブ側送信信号生成回路147の出力端は、スレーブ側送信回路142の入力端に接続されている。
【0030】
図1Bに示した各構成要素の動作について説明する。
【0031】
マスター側送信回路111は、マスター側送信信号ST11を入力し、信号バス120を介してスレーブ側受信回路141に向けて送信する。信号バス120は、マスター側送信信号ST11を伝達する。スレーブ側受信回路141は、マスター側送信信号ST11を、信号バス120を介して受信し、スレーブ側受信信号SR12として図示しない他の回路に供給する。
【0032】
クロック信号送信回路113は、クロック信号SC11を入力し、クロックバス130を介してクロック信号受信回路143に向けて送信する。クロックバス130は、クロック信号SC11を伝達する。クロック信号受信回路143は、クロックバス130を介してクロック信号SC11を受信し、スレーブ側送信信号用クロック信号生成回路146および図示しない他の回路に供給する。
【0033】
コマンドレジスタ1455は、デフォルト周期調整係数を表すデータを予め格納している。コマンドレジスタ1455は、デフォルト周期調整係数を表すデフォルト周期調整信号SS15をスレーブ側送信信号用クロック信号生成回路146に供給する。スレーブ側送信信号用クロック信号生成回路146は、デフォルト周期調整信号SS15と、クロック信号SC11とを入力する。スレーブ側送信信号用クロック信号生成回路146は、デフォルト周期調整信号SS15が示すデフォルト周期調整係数で、クロック信号SC11を分周または逓倍してスレーブ側送信信号用クロック信号SC13を生成し、スレーブ側送信信号生成回路147に供給する。スレーブ側送信信号生成回路147は、スレーブ側送信信号用クロック信号生成回路146からはスレーブ側送信信号用クロック信号SC13を入力し、図示しない他の回路からは送信データを入力し、スレーブ側送信信号ST12を生成する。
【0034】
スレーブ側送信信号生成回路147は、信号バス120を介してスレーブ側送信信号ST12をマスター側受信回路112に向けて送信する。信号バス120は、スレーブ側送信信号ST12を伝達する。マスター側受信回路112は、信号バス120を介してスレーブ側送信信号ST12を受信し、マスター側受信信号SR11として図示しない他の回路に供給する。
【0035】
以上に説明したように、
図1Bに示した従来例の場合は、スレーブ側通信装置140が送信するスレーブ側送信信号ST12の周期は、マスター側通信装置110から供給されるクロック信号SC11と、スレーブ側通信装置140の内部に予め格納されているデフォルト周期調整係数とに基づいて決定される。
【0036】
このとき、コマンドレジスタ1455に格納されているデフォルト周期調整係数は、その結果として決定される周期を有するスレーブ側送信信号ST12がマスター側受信回路112によって許容される範囲に収まるように、予め設定されている必要がある。しかしながら、例えば、温度などの環境パラメータが変動し、この変動に伴って
図1Bに示した各構成要素の特性も変動した場合などに、デフォルト周期調整係数が実際に許容される範囲から外れてしまい、すなわち、スレーブ側送信信号ST12の周期が、マスター側通信装置110が許容する範囲から外れてしまう可能性がある。
【0037】
ここで、スレーブ側送信信号ST12の周期が、マスター側通信装置110が許容する範囲から外れてしまった場合に、双方向通信の一例として、MIPI−DSI規格におけるBTA処理が失敗する場合について、より詳細に説明する。
【0038】
図2は、MIPI−DSI規格によるBTA動作の一例を各種信号の時間経過で示すタイムチャートである。
図2に示したタイムチャートは、第1のグラフ(a)〜第4のグラフ(d)を含んでいる。ここで、第1のグラフ(a)と、第2のグラフ(b)とは、マスター側送信信号ST1のうち、プラス側信号バス線21と、マイナス側信号バス線22によって伝達される電圧の時間変化をそれぞれ示している。また、第3のグラフ(c)と、第4のグラフ(d)とは、スレーブ側送信信号ST2のうち、プラス側信号バス線21と、マイナス側信号バス線22によって伝達される電圧の時間変化をそれぞれ示している。これら4本のグラフのそれぞれにおいて、横軸は時間の経過を示し、縦軸は信号強度である電圧の時間変化を示している。
【0039】
図2に示した例では、まず、時刻t0において、マスター側通信装置110からスレーブ側通信装置140へのBTA動作が開始する。このとき、マスター側通信装置110は、時刻t0〜t6の期間で、スレーブ側通信装置140に向けて5ビットのBTA要求信号を送信する。このBTA要求信号の具体的な内容は、LP−11、LP−10、LP−00、LP−10、LP−00である。ここで、「LP−xy」のように表したビットにおいて、xおよびyは、それぞれ、プラス側信号バス線21およびマイナス側信号バス線22を介して伝達される信号の状態が、1ならハイ状態で、0ならロー状態であることを示している。
【0040】
このとき、BTA要求信号の周期は、
図2に示したTLPX1であり、後述するマスター側信号周期SP1に等しい。その後、マスター側通信装置110は、マスター側送信信号ST11の両方の成分をともにロー状態に保ったまま、スレーブ側通信装置140からの返答信号を待つ。
【0041】
図2に示した例では、BTA要求信号を受信したスレーブ側通信装置140は、時刻t8において、これに対する返答信号の送信動作を開始する。スレーブ側通信装置140は、時刻t8〜t10の期間で、マスター側通信装置110に向けて2ビットの返答信号を送信する。この返答信号の具体的な内容は、LP−10、LP−11である。
【0042】
このとき、返答信号の周期は、
図2に示したTLPX2であり、後述するスレーブ側信号周期SP2に等しい。その後、スレーブ側通信装置140からマスター側通信装置110に向けて、信号の送信を行う。スレーブ側通信装置140からマスター側通信装置110への送信動作が完了した際には、BTA動作が上記の説明とは反対方向に行われる。これらの動作を繰り返すことで、MIPI−DSIのLPモードによる双方向通信は、2本の信号バス線21、22からなる信号バス20を介して実現される。
【0043】
上記に説明したマスター側通信装置110からスレーブ側通信装置140へのBTA動作において、返答信号の周期と、BTA要求信号の周期との比率は、2/3〜3/2の間に含まれることが、MIPI−DSIの規格で定められている。したがって、この規格に則って設計されたマスター側通信装置110は、返答信号の周期が定められた範囲から逸脱していた場合には、この返答信号を正常に受信できず、その結果、BTA動作が失敗に終わる場合がある。このような課題を解決するために。本実施形態による双方向通信システムを提案する。
【0044】
添付図面を参照して、本発明による通信装置および双方向通信システムを実施するための形態を以下に説明する。
【0045】
(第1の実施形態)
図3は、本発明の一実施形態による双方向通信システムの構成を示すブロック回路図である。
【0046】
図3に示した双方向通信システムの構成要素について説明する。この双方向通信システムは、マスター側通信装置10と、信号バス20と、クロックバス30と、スレーブ側通信装置40とを含んでいる。
【0047】
図3に示したマスター側通信装置10は、マスター側送信回路11と、マスター側受信回路12と、クロック信号送信回路13とを含んでいる。
【0048】
図3に示した信号バス20は、プラス側信号バス線21と、マイナス側信号バス線22とを含んでいる。
【0049】
図3に示したクロックバス30は、プラス側クロックバス線31と、マイナス側クロックバス線32とを含んでいる。
【0050】
図3に示したスレーブ側通信装置40は、スレーブ側受信回路41と、スレーブ側送信回路42と、クロック信号受信回路43と、受信信号周期検出部44と、信号周期比較回路45と、スレーブ側送信信号用クロック信号生成回路46と、スレーブ側送信信号生成回路47と、送信信号周期検出部48と、スレーブ側内部クロック信号生成回路49とを含んでいる。
【0051】
図3に示した受信信号周期検出部44は、受信信号幅検出回路441と、受信信号周期検出回路442とを含んでいる。
【0052】
図3に示した信号周期比較回路45は、受信信号周期記憶回路451と、送信信号周期記憶回路452と、比較回路453と、分周比率設定記憶回路454と、コマンドレジスタ455と、セレクタ456とを含んでいる。
【0053】
図3に示した双方向通信システムの各構成要素の接続関係について説明する。
【0054】
プラス側信号バス線21は、マスター側送信回路11の一方の出力端と、スレーブ側受信回路41の一方の入力端とに接続されている。プラス側信号バス線21は、さらに、スレーブ側送信回路42の一方の出力端と、マスター側受信回路12の一方の入力端とにも接続されている。
【0055】
マイナス側信号バス線22は、マスター側送信回路11の他方の出力端と、スレーブ側受信回路41の他方の入力端とに接続されている。マイナス側信号バス線22は、さらに、スレーブ側送信回路42の他方の出力端と、マスター側受信回路12の他方の入力端とにも接続されている。
【0056】
プラス側クロックバス線31は、クロック信号送信回路13の一方の出力端と、クロック信号受信回路43の一方の入力端とに接続されている。
【0057】
マイナス側クロックバス線32は、クロック信号送信回路13の他方の出力端と、クロック信号受信回路43の他方の入力端とに接続されている。
【0058】
スレーブ側受信回路41の出力端は、受信信号幅検出回路441の第1入力端に接続されている。受信信号幅検出回路441の出力端は、受信信号周期検出回路442の第1入力端に接続されている。受信信号周期検出回路442の出力端は、受信信号周期記憶回路451の入力端に接続されている。受信信号周期記憶回路451の出力端は、比較回路453の第1入力端に接続されている。
【0059】
比較回路453の出力端は、分周比率設定記憶回路454の入力部に接続されている。分周比率設定記憶回路454の出力端は、セレクタ456の第1入力端に接続されている。コマンドレジスタ455の出力端は、セレクタ456の第2入力端に接続されている。セレクタ456の出力端は、スレーブ側送信信号用クロック信号生成回路46の第1入力端に接続されている。
【0060】
クロック信号受信回路143の出力端は、スレーブ側送信信号用クロック信号生成回路46の第2入力端に接続されている。スレーブ側送信信号用クロック信号生成回路46の出力端は、スレーブ側送信信号生成回路47の入力端と、送信信号幅検出回路481の第1入力端とに接続されている。スレーブ側送信信号生成回路47の出力端は、スレーブ側送信回路42の入力端に接続されている。
【0061】
送信信号幅検出回路481の出力端は、送信信号周期検出回路482の第1入力端に接続されている。送信信号周期検出回路482の出力端は、送信信号周期記憶回路452の入力端に接続されている。送信信号周期記憶回路452の出力端は、比較回路453の第2入力端に接続されている。
【0062】
比較回路453の他の出力端は、受信信号幅検出回路441の第2入力端と、受信信号周期検出回路442の第2入力端と、送信信号幅検出回路481の第2入力端と、送信信号周期検出回路482の第2入力端とに接続されている。
【0063】
スレーブ側内部クロック信号生成回路49の出力端は、送信信号幅検出回路481の第3入力端と、送信信号周期検出回路482の第3入力端とに接続されている。
【0064】
図3に示した各構成要素の動作について説明する。
【0065】
マスター側送信回路11は、マスター側送信信号ST1を入力し、信号バス20を介してスレーブ側受信回路41に向けて送信する。信号バス20は、マスター側送信信号ST1を伝達する。スレーブ側受信回路41は、マスター側送信信号ST1を、信号バス20を介して受信し、スレーブ側受信信号SR2として受信信号幅検出回路441と、図示しない他の回路とに供給する。
【0066】
クロック信号送信回路13は、マスター側クロック信号SC1を入力し、クロックバス30を介してクロック信号受信回路43に向けて送信する。クロックバス30は、マスター側クロック信号SC1を伝達する。クロック信号受信回路43は、クロックバス30を介してマスター側クロック信号SC1を受信し、スレーブ側送信信号用クロック信号生成回路46および図示しない他の回路に供給する。
【0067】
受信信号幅検出回路441は、所定ビット数分のスレーブ側受信信号SR2を受信する毎に、出力信号を生成して受信信号周期検出回路442に向けて出力する。この動作は、後述する周期の検出精度を上げるために行うものである。ここでは、一例として、所定ビット数は8ビットである。
【0068】
スレーブ側内部クロック信号生成回路49は、所定の周期を有するスレーブ側内部クロック信号SC2を生成し、受信信号周期検出回路442および送信信号周期検出回路482に向けて出力する。
【0069】
受信信号周期検出回路442は、受信信号幅検出回路441から供給される出力信号と、スレーブ側内部クロック信号SC2とを入力する。受信信号周期検出回路442は、受信信号幅検出回路441から供給される出力信号の周期を、スレーブ側内部クロック信号SC2を利用して検出する。すなわち、受信信号周期検出回路442は、受信信号幅検出回路441から供給される出力信号の周期が、スレーブ側内部クロック信号SC2の周期の何倍であるかを計測する。この検出または計測の精度を高めるためには、受信信号幅検出回路441から供給される出力信号の周期がスレーブ側内部クロック信号SC2の周期より十分に大きい方が有利である。なお、ここで得られる結果は、スレーブ側受信信号SR2の周期、すなわちマスター側信号周期SP1の、約所定ビット数倍である。受信信号周期検出回路442は、このようにして検出したマスター側信号周期SP1(または本来の値の約所定ビット数倍の値)を受信信号周期記憶回路451に向けて出力する。
【0070】
受信信号周期記憶回路451は、検出されたマスター側信号周期SP1(または本来の値の約所定ビット数倍の値)を入力して記憶する。過去の数値が記憶されている場合は、これを上書きして新しい数値を記憶しても良い。受信信号周期記憶回路451は、記憶しているマスター側信号周期SP1(または本来の値の約所定ビット数倍の値)を比較回路453に向けて出力する。
【0071】
その一方で、送信信号幅検出回路481は、スレーブ側送信信号用クロック信号生成回路46から供給されるスレーブ側送信信号用クロック信号SC3を入力する。送信信号幅検出回路481は、所定ビット数分のスレーブ側送信信号用クロック信号SC3を受信する毎に、出力信号を生成して送信信号周期検出回路482に向けて出力する。この動作は、受信信号幅検出回路441の場合と同様に、周期の検出精度を上げるために行うものである。ここでは、一例として、所定ビット数は同じく8ビットである。
【0072】
送信信号周期検出回路482は、送信信号幅検出回路481から供給される出力信号と、スレーブ側内部クロック信号SC2とを入力する。送信信号周期検出回路482は、受信信号周期検出回路442の場合と同様に、送信信号幅検出回路481から供給される出力信号の周期を、スレーブ側内部クロック信号SC2を利用して検出する。送信信号周期検出回路482は、このようにして検出したスレーブ側信号周期SP2(または本来の値の約所定ビット数倍の値)を送信信号周期記憶回路452に向けて出力する。
【0073】
送信信号周期記憶回路452は、検出されたスレーブ側信号周期SP2(または本来の値の約所定ビット数倍の値)を入力して記憶する。過去の数値が記憶されている場合は、これを上書きして新しい数値を記憶しても良い。送信信号周期記憶回路452は、記憶しているスレーブ側信号周期SP2(または本来の値の約所定ビット数倍の値)を比較回路453に向けて出力する。
【0074】
比較回路453は、マスター側信号周期SP1およびスレーブ側信号周期SP2(またはそれぞれ本来の値の約所定ビット数倍の値)を比較する。この比較動作の目的は、スレーブ側信号周期SP2を、マスター側信号周期SP1に十分近づけるために用いる係数を求め、この係数を表す周期比較結果信号SS3を生成出力することにある。なお、スレーブ側信号周期SP2がマスター側信号周期SP1に十分近いことは、例えば、MIPI−DSIのLPモードのBTA動作に適合する範囲内にスレーブ側信号周期SP2が含まれており、かつ、なるべくこの範囲の両端から離れていて、すなわち理想的にはマスター側信号周期SP1に等しいことを意味する。
【0075】
そこで、この例では、比較回路453は単なる大小比較のみならず、入力したスレーブ側信号周期SP2が、予め用意した複数の基準値のどれに最も近いのかを検出する。ここで、予め用意される複数の基準値は、入力したマスター側信号周期SP1に、現在の周期比較結果信号SS3が表す係数に応じて所定の係数群を乗算するなどして生成しても良い。例えば、周期比較結果信号SS3が表す係数が2(倍)であった場合には、マスター側信号周期SP1の2倍と4倍の中間値(すなわち3倍値)、同じく4倍と8倍の中間値(すなわち6倍値)および同じく8倍と16倍の中間値(すなわち12倍値)からなる3つの基準値を用意する。比較回路453は、これら3つの基準値のそれぞれと比較することで、スレーブ側信号周期SP2が、マスター側信号周期SP1の3倍以下、3倍以上かつ6倍以下、6倍以上かつ12倍以下、または12倍以上、の4種類の範囲のうち、いずれに含まれているかを検出する。なお、この比較方法はあくまでも一例であって、本実施形態を限定するものではない。
【0076】
比較回路453は、今回の比較または検出の結果を表す新しい周期比較結果信号SS3を生成し、分周比率設定記憶回路454に向けて出力する。なお、比較回路453が、前回の比較動作後に自身が出力した周期比較結果信号SS3を、今回の比較動作の前に参照するためには、これを記憶するレジスタを内部に設けても良いし、出力した周期比較結果信号SS3を入力する入力端を設けても良い。
【0077】
分周比率設定記憶回路454は、周期比較結果信号SS3を入力して記憶する。過去の数値が記憶されている場合は、これを上書きして新しい数値を記憶しても良い。分周比率設定記憶回路454は、記憶している周期比較結果信号SS3をセレクタ456に向けて出力する。
【0078】
その一方で、コマンドレジスタ455は、デフォルト周期調整係数を表すデータを予め格納している。コマンドレジスタ455は、デフォルト周期調整係数を表すデフォルト周期調整信号SS5をセレクタ456に供給する。
【0079】
セレクタ456は、分周比率設定記憶回路454から周期比較結果信号SS3を入力し、これを送信信号周期調整信号SS4としてスレーブ側送信信号用クロック信号生成回路46に向けて出力する。ただし、スレーブ側通信装置40が動作を開始した直後など、分周比率設定記憶回路454から周期比較結果信号SS3が供給されない場合は、コマンドレジスタ455からデフォルト周期調整信号SS5を入力し、これを送信信号周期調整信号SS4としてスレーブ側送信信号用クロック信号生成回路46に向けて出力する。
【0080】
スレーブ側送信信号用クロック信号生成回路46は、送信信号周期調整信号SS4と、マスター側クロック信号SC1とを入力する。スレーブ側送信信号用クロック信号生成回路46は、送信信号周期調整信号SS4が示す周期調整係数で、マスター側クロック信号SC1を分周または逓倍してスレーブ側送信信号用クロック信号SC3を生成し、スレーブ側送信信号生成回路47と、送信信号幅検出回路481とに供給する。
【0081】
スレーブ側送信信号生成回路47は、スレーブ側送信信号用クロック信号生成回路46からはスレーブ側送信信号用クロック信号SC3を入力し、図示しない他の回路からは送信データを入力し、スレーブ側送信信号ST2を生成する。スレーブ側送信信号生成回路47は、スレーブ側送信信号ST2をスレーブ側送信回路42に向けて出力する。
【0082】
スレーブ側送信信号生成回路47は、信号バス20を介してスレーブ側送信信号ST2をマスター側受信回路12に向けて送信する。信号バス20は、スレーブ側送信信号ST2を伝達する。マスター側受信回路12は、信号バス20を介してスレーブ側送信信号ST2を受信し、マスター側受信信号SR1として図示しない他の回路に供給する。
【0083】
このように、
図3に示した本実施形態による双方向通信システムでは、スレーブ側通信装置40が、一方ではマスター側通信装置10が送信したマスター側送信信号ST1からマスター側信号周期SP1を検出する。また、スレーブ側通信装置40は、他方ではスレーブ側送信信号用クロック信号SC3からスレーブ側信号周期SP2を検出する。そして、スレーブ側通信装置40は、これら2つの検出結果の比較結果に基づいて、スレーブ側信号周期SP2を調整する。
【0084】
図4は、
図3に示したスレーブ側通信装置40の、スレーブ側送信信号用クロック信号SC3の周期調整に係る動作の一例を示すタイムチャートである。
図4は、第1のグラフ(A)〜第11のグラフ(K)を含んでいる。これらのグラフのそれぞれにおいて、横軸は時間の経過を示し、縦軸は各信号の各種状態などを示している。
【0085】
図4に示した各グラフにおいて、時刻t00〜t01の期間は停止期間であり、時刻t01〜t10の期間は規定ビット数のウェイト期間であり、時刻t10〜t50の期間はLPデータ送信期間である。
【0086】
図4に示した第1のグラフ(A)は、スレーブ側受信信号SR2のうち、プラス側信号バス線21を介して伝達された信号の一例を示している。
図4に示した第2のグラフ(B)は、スレーブ側受信信号SR2のうち、マイナス側信号バス線22を介して伝達された信号の時間変化を示している。時刻t10〜t50のLPデータ送信期間におけるスレーブ側受信信号SR2の特徴として、プラス側およびマイナス側の2つの信号のうちどちらか一方でビットの立ち上がり及び立下りが常時発生している。
【0087】
図4に示した第3のグラフ(C)は、受信信号幅検出回路441が、第1のグラフ(A)および第2のグラフ(B)に示したスレーブ側受信信号SR2と、後述する第7のグラフ(G)に示す周期更新通知信号SS1とを入力した結果として出力する信号の一例を示している。この例では、受信信号幅検出回路441の出力信号は、8ビット分の、すなわち1バイト分のスレーブ側受信信号SR2を入力するたび、時刻t10、t20、t30およびt40のそれぞれにおいて、8ビット目を示す立ち上がりを発生させている。
【0088】
図4に示した第4のグラフ(D)は、スレーブ側内部クロック信号生成回路49が出力するスレーブ側内部クロック信号SC2の一例を示している。この例では、スレーブ側内部クロック信号SC2は同一の周期で立ち上がりおよび立ち下がりを繰り返している。
【0089】
図4に示した第5のグラフ(E)は、受信信号周期検出回路442が、第3のグラフ(C)に示した受信信号幅検出回路441の出力信号と、第4のグラフ(D)に示したスレーブ側内部クロック信号SC2と、後述する第7のグラフ(G)に示す周期更新通知信号SS1とを入力した結果として出力するマスター側信号周期SP1を表す信号の一例を示している。この例では、時刻t20、t30、t40およびt50において信号の出力が発生している。なお、受信信号周期検出回路442として、実際には2つ以上のカウンタが時間差でカウント動作および信号出力動作を行っても良い。
【0090】
図4に示した第6のグラフ(F)は、比較回路453が、受信信号周期記憶回路451の出力信号と、送信信号周期記憶回路452の出力信号とを入力した結果として生成出力する周期比較結果信号SS3の一例を示している。この例では、時刻t21まではデフォルトの初期値が出力され、その後は比較結果である周期比較結果信号SS3が出力されている。
【0091】
図4に示した第7のグラフ(G)は、比較回路453が、周期比較結果信号SS3を生成出力する際に、受信信号幅検出回路441と、受信信号周期検出回路442と、送信信号幅検出回路481と、送信信号周期検出回路482とに向けて出力する周期更新通知信号SS1の一例を示している。この例では、時刻t21に周期更新通知信号SS1が出力されている。
【0092】
図4に示した第8のグラフ(H)は、マスター側クロック信号SC1の一例を示している。この例では、常に一定の周期でマスター側クロック信号SC1の立ち上がりおよび立ち下がりが発生している。
【0093】
図4に示した第9のグラフ(I)は、スレーブ側送信信号用クロック信号生成回路46が、周期更新通知信号SS1と、マスター側クロック信号SC1とを入力した結果として出力するスレーブ側送信信号用クロック信号SC3の一例を示している。この例では、スレーブ側送信信号用クロック信号SC3の周期が、時刻t22を境に変更されている。なお、マスター側クロック信号SC1の周期および位相と、スレーブ側内部クロック信号SC2の周期および位相と、スレーブ側送信信号用クロック信号SC3の周期および位相とは、それぞれ異なっていても構わない。
【0094】
図4に示した第10のグラフ(J)は、送信信号幅検出回路481が、第9のグラフ(I)に示したスレーブ側送信信号用クロック信号SC3と、第7のグラフ(G)に示した周期更新通知信号SS1とを入力した結果として出力する信号の一例を示している。この例では、時刻t11、t22、t31およびt41において信号の出力が発生している。
【0095】
図4に示した第11のグラフ(K)は、送信信号周期検出回路482が、第10のグラフ(J)に示した送信信号幅検出回路481の出力信号と、第4のグラフ(D)に示したスレーブ側内部クロック信号SC2と、後述する第7のグラフ(G)に示す周期更新通知信号SS1とを入力した結果として出力するスレーブ側信号周期SP2を表す信号の一例を示している。この例では、時刻t11、t31およびt41において信号の出力が発生している。
【0096】
図3および
図4を参照して、本実施形態による双方向通信システムの全体的な動作について説明する。
【0097】
まず、
図4に示した時刻t00において、マスター側通信装置10と、スレーブ側通信装置40とがそれぞれに動作を開始する。特に、スレーブ側通信装置40の送信信号幅検出回路481が、スレーブ側送信信号用クロック信号生成回路46から供給されるスレーブ側送信信号用クロック信号SC3のビット数を数え始める。なお、この時点において、スレーブ側通信装置40ではマスター側通信装置10から送信されるマスター側送信信号ST1を十分に受信出来ていないので、グラフ(I)に示したスレーブ側送信信号用クロック信号SC3はコマンドレジスタ455に格納されているデフォルト値に基づく周期を有している。
【0098】
図4に示した時刻t01において、マスター側通信装置10のマスター側送信回路11が、スレーブ側通信装置40のスレーブ側受信回路41に向けて、所定ビット数の信号を送信する。この例では、グラフ(A)および(B)に示したように、MIPI−DSIのLPモード規格に則って、所定ビット数は2ビットであり、その具体的な内容はLP−10およびLP−00である。スレーブ側通信装置40は、この信号を受信すると、続いて送信されるLPデータの受信を開始する。
【0099】
図4に示した時刻t10において、マスター側通信装置10が、スレーブ側通信装置40に向けて、マスター側送信信号ST1として、LPデータの送信を開始する。この例では、グラフ(A)および(B)に示したように、送信されるLPデータは、8ビット幅の信号が4回繰り返されたものであり、各信号の具体的な内容は、LP−01、LP−10、LP−10、LP−01、LP−01、LP−01、LP−10、LP−01である。
【0100】
図4に示した時刻t10において、スレーブ側通信装置40のスレーブ側受信回路41は、マスター側送信信号ST1をスレーブ側受信信号SR2として受信し始める。スレーブ側通信装置40の受信信号幅検出回路441は、スレーブ側受信信号SR2のビット数を数え始める。
【0101】
図4に示した時刻t11において、送信信号幅検出回路481が、スレーブ側送信信号用クロック信号SC3の8ビット目を受信し、グラフ(J)に示したように、このことを示す信号を送信信号周期検出回路482に向けて出力する。すると、送信信号周期検出回路482が、グラフ(K)に示したように、スレーブ側信号周期SP2を示す信号を送信信号周期記憶回路452に向けて出力する。送信信号周期記憶回路452は、受信した信号が示すスレーブ側信号周期SP2の値を記憶し、比較回路453に向けて出力する。なお、この時点では、マスター側信号周期SP1の値が受信信号周期記憶回路451まで届いていないので、比較回路453はまだ比較処理を行わない。
【0102】
図4に示した時刻t20において、受信信号幅検出回路441がスレーブ側受信信号SR2の8ビット目を受信し、このことを示す信号の出力を行う。この信号を受信した受信信号周期検出回路442は、マスター側信号周期SP1を示す信号を受信信号周期記憶回路451に向けて、グラフ(E)に示すように出力する。受信信号周期記憶回路451は、受信した信号が示すマスター側信号周期SP1の値を記憶し、比較回路453に向けて出力する。ここで、マスター側信号周期SP1の値と、スレーブ側信号周期SP2の値とが両方とも入力されて、比較回路453が2つの値の比較動作を行う。比較回路453が比較の結果として周期比較結果信号SS3を出力すると、分周比率設定記憶回路454がこの信号を受信して記憶し、セレクタ456に向けて出力する。セレクタ456は、受信した周期比較結果信号SS3を送信信号周期調整信号SS4としてスレーブ側送信信号用クロック信号生成回路46に向けて出力する。
【0103】
時刻t22において、スレーブ側送信信号用クロック信号生成回路46は、出力していたスレーブ側送信信号用クロック信号SC3の周期を、受信した送信信号周期調整信号SS4に基づいて修正する。その結果、グラフ(I)に示したように、スレーブ側送信信号用クロック信号SC3の周期が変更される。
【0104】
その後も同様に、スレーブ側通信装置40は、マスター側信号周期SP1およびスレーブ側信号周期SP2を検出して比較し続け、その結果に応じてスレーブ側信号周期SP2の調整をし続ける。したがって、環境パラメータの変動などによってマスター側信号周期SP1およびスレーブ側信号周期SP2の一方または両方に変動が生じて、その差が規格上定められた範囲から外れたとしても、すぐにスレーブ側信号周期SP2が調整される。その結果、例えばMIPI−DSIのLPモードにおけるBTAが、マスター側信号周期SP1およびスレーブ側信号周期SP2の差が原因で失敗することを防止することが可能となる。
【0105】
以上、発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。また、前記実施の形態に説明したそれぞれの特徴は、技術的に矛盾しない範囲で自由に組み合わせることが可能である。