【解決手段】実施形態に係る半導体装置は、第1及び第2カプラ部と符号化回路と復調回路を備える。符号化回路は第1カプラ部を介して入力されたクロックに基づいてデジタルデータを差動マンチェスタ符号化して符号化データを出力する。復調回路は、第2カプラ部を介して入力された符号化データの周波数の2倍に設定されたサンプリング周波数に基づいて符号化データをサンプリングして第1サンプルデータを出力する第1サンプリング回路と、第1サンプリング回路よりも時間的に前のタイミングの符号化データをサンプリングして第2サンプルデータを出力する第2サンプリング回路と、第1及び第2サンプルデータが一致するか否か判定する判定回路と、第1サンプルデータの中から第1及び第2位相データのいずれか一方を選択する選択回路を含む。
前記復調回路は、前記第2サンプリング回路の前段に設けられ、前記サンプリング周波数の逆数であるサンプリング周期よりも短い遅延時間に設定された遅延回路を含む、請求項1に記載の半導体装置。
前記判定データが、前記第1サンプルデータと前記第2サンプルデータとの一致を示す場合に、前記選択回路は、前記フラグに設定された位相データを選択する、請求項4に記載の半導体装置。
外部から入力された外部クロックの周波数を前記サンプリング周波数に変換し、かつ、前記サンプリング周波数を分周して前記クロックを生成する周波数変換回路をさらに備える、請求項1から9のいずれかに記載の半導体装置。
【発明を実施するための形態】
【0007】
以下、図面を参照して本発明に係る実施形態を説明する。本実施形態は、本発明を限定するものではない。
【0008】
(第1実施形態)
図1は、第1実施形態に係る半導体装置1の概略的なブロック図である。また、
図2は、
図1に示す半導体装置1のタイミングチャートである。
【0009】
図1に示すように、本実施形態に係る半導体装置1は、周波数変換回路2と、第1フォトカプラ3と、ADC(Analog to Digital Converter)4と、符号化回路5と、第2フォトカプラ6と、復調回路7と、を備える。
【0010】
周波数変換回路2は、外部から入力されたクロックCk0の周波数を変換してクロックCk1およびクロックCk2を生成する。クロックCk1の周波数は、クロックCk0の周波数の2倍であり、クロックCk2の周波数は、クロックCk0の周波数の4倍である。周波数変換回路2は、例えば、先にクロックCk0からクロックCk2を生成し、その後、クロックCk2を分周してクロックCk1を生成する。
【0011】
第1フォトカプラ3は、第1発光素子31および第1受光素子32を有する。第1フォトカプラ3では、クロックCk1は、第1発光素子31から第1受光素子32へ光伝送される。第1受光素子32は、クロックCk1をADC4および符号化回路5へそれぞれ出力する。
【0012】
ADC4は、第1フォトカプラ3を介して入力されたクロックCk1に基づいて、アナログデータをデジタルデータD0に変換する。なお、デジタルデータD0が半導体装置1に直接入力される場合には、ADC4は不要である。
【0013】
符号化回路5は、第1フォトカプラ3を介して入力されたクロックCk1に基づいて、デジタルデータD0を差動マンチェスタ符号化した符号化データD1を生成する。符号化データD1の周波数は、クロックCk1の周波数と同じである。
【0014】
差動マンチェスタ符号化された符号化データD1では、
図2に示すように、デジタルデータD0のデータ値「0」は、1つ前のデータ値と同じ符号となる。一方、データ値「1」は、1つ前のデータ値と反対の符号となる。
【0015】
図1に戻って、第2フォトカプラ6は、第2発光素子61および第2受光素子62を有する。第2発光素子61は、符号化データD1を第2受光素子62へ光送信する。第2受光素子62は、光受信した符号化データD1である受光データD2を復調回路7へ出力する。受光データD2の位相は、
図2に示すように、符号化データD1の位相に対して時間tだけ遅延している。
【0016】
上述した第1発光素子31および第2発光素子61は、例えば発光ダイオードを用いて構成される。また、第1受光素子32および第2受光素子62は、例えばフォトダイオードを用いて構成される。第1フォトカプラ3および第2フォトカプラ6は、本実施形態のように互いに独立した光デバイスであってもよいし、一体化した光デバイスであってもよい。さらに、フォトカプラに替えて、コイル対による磁気結合、コンデンサによる容量結合、磁気抵抗素子を用いた磁気結合等ガルバニック結合素子でもよい。
【0017】
また、半導体装置1は、ADC4、符号化回路5、第1受光素子32、および第2発光素子61をデータ送信側(一次側)の半導体チップとして構成し、周波数変換回路2、第1発光素子31、第2受光素子62、および復調回路7をデータ受信側(二次側)の半導体チップとして構成してもよい。
【0018】
図3は、復調回路7の概略的なブロック図である。復調回路7は、エラー検出回路71と、選択回路72と、復号回路73と、を有する。まず、
図4を参照してエラー検出回路71について説明する。
【0019】
図4は、エラー検出回路71の概略的なブロック図である。エラー検出回路71は、第1サンプリング回路711と、遅延回路712と、第2サンプリング回路713と、判定回路714と、を有する。
【0020】
第1サンプリング回路711は、クロックCk2に基づいて受光データD2をオーバーサンプリングするフリップフロップを有する。クロックCk2の周波数は、受光データD2(符号化データD1)の周波数の2倍に設定されている。すなわち、第1サンプリング回路711のサンプリング周波数は、受光データD2の周波数の2倍である。
【0021】
遅延回路712は、第2サンプリング回路713の前段に設けられ、直列接続された偶数個のインバータ712aを有する。遅延回路712で設定された遅延時間τによって、第2サンプリング回路713は、第1サンプリング回路711よりも時間的に前のタイミングの受光データD2をオーバーサンプリングする。
【0022】
第2サンプリング回路713は、クロックCk2に基づいて遅延データD3をオーバーサンプリングするフリップフロップを有する。
図2に示すように、第2サンプリング回路713は、第1サンプリング回路711に対して遅延時間τだけ遅延した遅延データD3をオーバーサンプリングする。遅延データD3をオーバーサンプリングするため、遅延回路712の遅延時間τは、上記サンプリング周波数(クロックCk2の周波数)の逆数であるサンプリング周期Tsよりも短い時間に設定されている。
【0023】
図4に戻って、判定回路714は、第1サンプリング回路711から出力された第1サンプルデータQのレベルと第2サンプリング回路713から出力された第2サンプルデータRのレベルとが一致するか否か判定するXOR回路を含む。判定回路714の判定データAは、選択回路72へ入力される。
【0024】
以上説明したエラー検出回路71に続いて、
図3に示す選択回路72を説明する。選択回路72は、第1記憶回路721と、第2記憶回路722と、第3記憶回路723と、比較回路724と、を有する。第1記憶回路721は、複数のフリップフロップ721aを有する。これらのフリップフロップ721aには、サンプリングされた順番に従って複数の第1サンプルデータQが一時的に記憶される。
【0025】
第2記憶回路722は、上記判定回路714の判定データAを一時的に記憶するフリップフロップを有する。第3記憶回路723は、第1位相データと第2位相データとを識別するためのフラグを一時的に記憶するフリップフロップを有する。
【0026】
本実施形態では、第1サンプリング回路711の第1サンプルデータQは、
図2に示すように、互いに位相が異なる第1位相データQ0、Q2、Q4と第2位相データQ1、Q3、Q5とに分類される。換言すると、各第1位相データは、偶数番の第1サンプルデータQに相当し、各第2位相データは奇数番の第1サンプルデータQに相当する。
【0027】
同様に、第2サンプリング回路713の第2サンプルデータRも、第1位相データR0、R2、およびR4と、第2位相データR1、R3、およびR5とに分類される。
【0028】
第3記憶回路723に記憶されるフラグは、第1サンプルデータQの中で、選択回路72から出力される選択データが、第1位相データと第2位相データのどちらに設定されているかを示す。また、上述した判定回路714の判定データAが、第1サンプルデータQと第2サンプルデータRとの不一致を示した場合、このフラグは切り替わる。
【0029】
例えば、第1位相データが選択データに設定されているときに上記不一致を示す判定データAが第2記憶回路722に記憶されると、フラグの切り替えによって、選択データが第1位相データから第2位相データに切り替わる。
【0030】
比較回路724は、上記フラグが切り替わった時に、第1記憶回路721に記憶された第1サンプルデータQ同士を比較し、比較結果に基づいて復号回路73へQ1を出力するかどうかを決定する。
【0031】
復号回路73は、選択回路72で選択された選択データを復号することによって、デジタルデータD4を生成する。デジタルデータD4は、符号化回路5で差動マンチェスタ符号化される前のデジタルデータD0に相当する。なお、デジタルデータD4の出力タイミングを調整するために、不図示のFIFO(First In First Out)回路が、復号回路73の後段に設けられていてもよい。
【0032】
以下、本実施形態に係る半導体装置1の動作について説明する。
図5は、半導体装置1のフローチャートである。ここでは、データ処理に関する動作手順を説明する。
【0033】
まず、ADC4が、アナログデータをデジタル変換し、デジタルデータD0を符号化回路5へ出力する(ステップS1)。本実施形態では、デジタルデータD0は、周波数が25MHzに設定されたシリアルデータである。
【0034】
次に、符号化回路5が、デジタルデータD0を差動マンチェスタ符号化し、符号化データD1を第2フォトカプラ6へ出力する(ステップS2)。符号化データD1の周波数は、デジタルデータD0の周波数の2倍、すなわち50MHzである。
【0035】
次に、第2フォトカプラ6が符号化データD1を光伝送する(ステップS3)。その結果、この符号化データD1は、受光データD2に変換される。受光データD2の周波数は、符号化データD1の周波数と同じ、すなわち50MHzである。
【0036】
次に、第1サンプリング回路711および第2サンプリング回路713が、異なるタイミングで受光データD2をオーバーサンプリングする(ステップS4)。次に、判定回路714が、第1サンプルデータQのエラー判定を行う(ステップS5)。ここで、ステップS5の動作について
図2を参照して詳しく説明する。
【0037】
ステップS5において、判定回路714が、例えば、
図2に示す第2位相データQ1と第2位相データR1とを比較する場合を考える。この場合、
図2によれば両データは一致していないので、判定回路714は、第2位相データQ1がエラーであることを示す判定データAを選択回路72へ出力する。
【0038】
第2位相データQ1と第2位相データR1との比較の次に、判定回路714は、第1位相データQ0と第1位相データR0とを比較する。
図2によれば両データはハイレベルで一致している。これは、第1位相データQ0の直前(厳密には遅延時間τの前)に受光データD2のレベル遷移がないことを意味する。この場合、判定回路714は、第1位相データQ0はエラーでないことを示す判定データAを選択回路72へ出力する。
【0039】
本実施形態では、受光データD2は、差動マンチェスタ符号化されているので、そのレベルは短周期で遷移する。また、第1サンプリング回路711および第2サンプリング回路713のサンプリング周波数が、受光データD2の周波数の2倍に設定されている。そのため、第1サンプルデータQでは、第1位相データと第2位相データの少なくとも一方は、信頼性の高い正しいデータとなる。
【0040】
ステップS5において、判定回路714が判定データAを出力するたびに、選択回路72は、第1サンプルデータQの中で、第1位相データと第2位相データのいずれか一方を選択して復号回路73に出力するか、またはデータを出力しないか、いずれかの動作を行う。(ステップS6)。
【0041】
選択回路72の第1記憶回路721に設けられた各フリップフロップ721aには、第1サンプルデータQの第1位相データと第2位相データとが交互に記憶される。このとき、第3記憶回路723において、第1位相データを選択サンプルとするフラグが初期設定されていると、第1位相データのみが第1記憶回路721から復号回路73へ出力される。復号回路73は、この第1位相データを復号する(ステップS7)。
【0042】
なお、ステップS5で判定回路714が第1位相データだけでなく第2位相データもエラーでないと判定した場合にはどちらの位相データで復号してもよい。本実施形態では、フラグに設定された位相データが優先的に選択される。
【0043】
また、ステップS6では、選択回路72で選択される選択データ、換言すると正しい位相データが、受光データD2の受信中に、第1サンプルデータQの第1位相データと第2位データとの間で切り替わる事態が想定される。そこで、このような事態が起こった場合のデータ選択の切り替え動作について、
図6および
図7を参照して説明する。
【0044】
図6は、第1サンプルデータQの選択の切り替え動作手順を示すフローチャートである。
図7は、第1サンプルデータQの選択の切り替え動作内容を示す模式図である。
【0045】
例えば、判定回路714が、第1位相データQ0をエラーデータとして判定した場合、選択回路72の比較回路724は、第1位相データQ0の直前に第1記憶回路721に記憶された第2位相データQ1(第1記憶データ)と、第2位相データQ1の1つ前に第1記憶回路721に記憶された第1位相データQ2(第2記憶データ)とを比較する(ステップS61)。
【0046】
本実施形態では、サンプリング対象の受光データD2が差動マンチェスタ符号化されているので、これらが一致しない場合、第2位相データQ1と第1位相データQ2との境界がデータの区切りを示す。この場合、第1位相データQ0の直前にサンプリングされた第2位相データQ1が第1位相データQ0に代わる正しいデータとなるので、比較回路724は、第2位相データQ1を選択する(ステップS62)。
【0047】
ステップS61において、第2位相データQ1と第1位相データQ2とが一致する場合、比較回路724は、第1位相データQ2と、第1位相データQ2の1つ前に第1記憶回路721に記憶された第2位相データQ3(第3記憶データ)とを比較する(ステップS63)。これらが一致しない場合、第1位相データQ2と第2位相データQ3との境界がデータの区切りを示す。この場合、比較回路724は、第1位相データQ0の直後にサンプリングされる第2位相データQ11を、第1位相データQ0に代わるデータとして選択する(ステップS64)。
【0048】
ステップS64〜ステップS68では、上述したステップS61〜ステップS64と同様に、比較回路724は、第1位相データおよび第2位相データを順次に遡って比較し、その比較結果に応じて、第2位相データQ1または第2位相データQ11を選択する。例えば、第2位相データQ1が選択された場合、第2位相データQ1が、第1位相データQ0の代わりに復号回路73に送られる。また、第2位相データQ11が選択された場合、そのサイクルではいずれの位相データも復号回路73に送られない。そして、次のサイクルでサンプリングされる第2位相データQ11が、第1位相データQ0の代わりに復号回路73に送られる。
【0049】
なお、
図7(a)は、ステップS65およびステップS66の動作を模式的に示す。一方、
図7(b)は、ステップS67およびステップS68の動作を模式的に示す。また、本実施形態では、受光データD2は、差動マンチェスタ符号化され、さらに、その周波数の2倍のサンプリング周波数でオーバーサンプリングされている。そのため、受光データD2の受信中にエラーデータが生じても、そのエラーデータから少なくとも5つ前までの第1サンプルデータQを相互に比較すれば、エラーデータの直前または直後の位相データを正しいデータとして特定できる。
【0050】
以上説明した本実施形態によれば、データ送信側において、データは、短時間でレベル遷移する差動マンチェスタ符号化されて光送信される。一方、データ受信側において、光受信されたデータは、第1サンプリング回路711および第2サンプリング回路713でそれぞれ異なるタイミングで2倍のサンプリング周波数でオーバーサンプリングされる。その後、各サンプリング回路のサンプルデータは、判定回路714で判定される。
【0051】
判定回路714の判定データAは、第1サンプリング回路711のサンプルデータの直前における受光データD2のレベル遷移の有無、換言すると当該サンプルデータの信頼性に相当する。そのため、信頼性の高いサンプルデータを復号することによって、受信側でデータ誤りを起こりにくくすることが可能となる。
【0052】
(第2実施形態)
第2実施形態に係る半導体装置について、第1実施形態と異なる点を中心に説明する。本実施形態では、復調回路7が、エラー検出回路81を有する点で、第1実施形態と異なる。
【0053】
図8は、第2実施形態に係るエラー検出回路の概略的なブロック図である。また、
図9は、第2実施形態に係る半導体装置のタイミングチャートである。
【0054】
図8に示すエラー検出回路81は、第1サンプリング回路811と、第2サンプリング回路812と、判定回路813と、を有する。第1サンプリング回路811は、第1実施形態で説明した第1サンプリング回路711と同様であるので、ここでは説明を省略する。
【0055】
第2サンプリング回路812は、第1サンプリング回路811と同じサンプリング周波数で、受光データD2をオーバーサンプリングする。このとき、第2サンプリング回路812は、
図9に示すように、クロックCk2を反転したクロックCk3のタイミングに基づいて、受光データD2をオーバーサンプリングする。この場合、第2サンプリング回路812の第2サンプルデータRは、第1実施形態と同様に、第1サンプリング回路811の第1サンプルデータQよりも時間的に前のタイミングの波形がサンプリングされることとなる。
【0056】
判定回路813は、第1実施形態で説明した判定回路714と同様に、第1サンプルデータQと第2サンプルデータRとが一致するか否か判定し、判定データAを選択回路72へ出力する。なお、エラー検出回路81には、第1サンプルデータQおよび判定データAを選択回路72へ同じタイミングで入力させるために、第1サンプリング回路811の後段および判定回路813の後段に不図示のフリップフロップがそれぞれ設けられていてもよい。
【0057】
以上説明した本実施形態によれば、クロックCk3を用いることによって、第2サンプリング回路812は、第1サンプリング回路811よりも時間的に前のタイミングの受光データD2をオーバーサンプリングできる。その後は、第1実施形態と同様に、信頼性の高いデータが選択されて復号される。よって、受信側でデータ誤りを起こりにくくすることが可能となる。
【0058】
また、本実施形態では、第1実施形態で説明した遅延回路712が不要になる。この場合、遅延回路712の特性変動に起因する遅延時間のばらつきがなくなる。したがって、第2サンプリング回路812のサンプリング動作が安定するので、データ受信の信頼性をさらに向上させることが可能となる。
【0059】
(第3実施形態)
上述した第1実施形態および第2実施形態では、発光素子31、61からの光信号を、絶縁状態を維持したまま受光素子32、62で受信するカプラ部を信号伝送手段の一例として説明した。しかしながら、カプラ部は、光信号を送受信する光結合装置などの絶縁装置だけでなく、例えば磁気結合や容量結合のガルバニック結合素子により、非接触で信号を伝送する絶縁装置でも可能である。
【0060】
磁気結合で信号伝送を行う場合は、例えば送信チップ側のコイルと受信チップ側のコイルとが磁気結合するように配置すればよい。あるいは、送信チップ側にコイルを設けるとともに、受信チップ側には抵抗ブリッジ回路や磁気抵抗素子を設けてもよい。
【0061】
また、容量結合により信号伝送を行う場合は、例えば、送信チップと受信チップの間にコンデンサを設け、このコンデンサの一方の電極を送信チップに接続し、他方の電極を受信チップに接続してもよい。
【0062】
磁気結合や容量結合により信号伝送を行う絶縁装置であっても、データ送信側において、データは、短時間でレベル遷移する差動マンチェスタ符号化された信号、あるいは変調されたOOK(On-Off Keying)信号等によって送信される。一方、データ受信側において、受信されたデータは、第1サンプリング回路711および第2サンプリング回路713でそれぞれ異なるタイミングで2倍のサンプリング周波数でオーバーサンプリングされる。その後、各サンプリング回路のサンプルデータは、判定回路714で判定される。
【0063】
判定回路714の判定データAは、第1サンプリング回路711のサンプルデータの直前における受信データD2のレベル遷移の有無、換言すると当該サンプルデータの信頼性に相当する。そのため、信頼性の高いサンプルデータを復号することによって、受信側でデータ誤りを起こりにくくすることが可能となる。
【0064】
また、クロックCk3を用いることによって、第2サンプリング回路812は、第1サンプリング回路811よりも時間的に前のタイミングの受光データD2をオーバーサンプリングできる。その後は、第1実施形態と同様に、信頼性の高いデータが選択されて復号される。よって、受信側でデータ誤りを起こりにくくすることが可能となることは言うまでもない。
【0065】
図10は、第3実施形態に係る半導体装置の概略的なブロック図である。
図10では、上述した第1実施形態に係る半導体装置1と同様の構成要素には同じ符号を付し、詳細な説明を省略する。
【0066】
図10に示すように、本実施形態に係る半導体装置3は、第1フォトカプラ3および第2フォトカプラ6に替えて第1カプラ部130および第2カプラ部160を備える点で、第1実施形態に係る半導体装置1と異なる。ここで、
図11(a)〜
図11(c)を参照して第1カプラ部130および第2カプラ部160の回路例について説明する。
【0067】
図11(a)に示す第1カプラ部130には、送信コイル131aが第1フォトカプラ3の発光素子31の替わりに設けられ、かつ受信コイル132aが受光素子32の替わりに設けられている。また、
図11(a)に示す第2カプラ部160には、送信コイル161aが第2フォトカプラ6の発光素子61の替わりに設けられ、かつ受信コイル162aが受光素子62の替わりに設けられている。
【0068】
図11(b)に示す第1カプラ部130には、送信コイル131bが、発光素子31の替わりに設けられ、かつ磁気抵抗素子132bが受光素子32の替わりに設けられている。また、
図11(b)に示す第2カプラ部160には、送信コイル161bが発光素子61の替わりに設けられ、かつ磁気抵抗素子162bが受光素子62の替わりに設けられている。
【0069】
図11(c)に示す第1カプラ部130には、容量結合素子130cが発光素子31および受光素子32の替わりに設けられ、かつ第2カプラ部160には、容量結合素子160cが発光素子61および受光素子62の替わりに設けられている。
【0070】
図11(a)〜
図11(c)に示す第1カプラ部130および第2カプラ部160では、各コイル、各磁気抵抗素子、および各容量結合素子といった受動素子は、フレーム(不図示)上で絶縁され、符号化回路5、復調回路7、周波数変換回路2、およびADC4のいずれかに電気的に接続されている。また、これらの受動素子は、個別に配置されてもよいし、上記各回路に混載された半導体チップとして配置されてもよい。本実施形態に係る半導体装置3では、第1カプラ部130および第2カプラ部160を介して、データ送信側(1次側)の半導体チップとデータ受信側(2次側)の半導体チップとの間がガルバニックに絶縁されている構成となっている。
【0071】
さらに、第1カプラ部130および第2カプラ部160では、フレーム上に、送信回路を含む送信チップと受信回路を含む受信チップとが絶縁されて配置されている。受信チップ上または送信チップ上に、絶縁された上記コイルや上記容量結合素子等の受動素子の積層体が集積されている。また、第1カプラ部130および第2カプラ部160は、独立した素子として送受信チップと結合される場合も含まれる。さらに、これらの送受信チップはフレームとワイヤで結線され、樹脂で封止される。
【0072】
上記送受信チップは、例えば、シリコーンゲルやシリコーンゴムからなるエンキャップ樹脂で覆われる。さらに、エンキャップ樹脂に加えてモールド樹脂によっても封止され、半導体装置として構成される。このエンキャップ樹脂の厚さは、実質的に同じ量、厚さであることが送受信回路にそれぞれに設けられる基準電圧発生回路部などの回路の動作の同一性確保の観点からは望ましい。
【0073】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれる。