(57)【特許請求の範囲】
【請求項１】
複数の通信装置（１００）が共通の通信線を介して通信信号を送受信する通信システムを構築する前記通信装置内に設けられ通信制御のための処理を行う通信制御装置（１１０）と前記通信線との間のインタフェースとして機能する受信装置（１４０）であって、
前記通信線を介して受信される通信信号をデジタル信号に変換して出力するように構成されたＡＤ変換部（１４２）と、
所定の通信信号が受信されて前記ＡＤ変換部により変換されたときのデジタル信号の波形である受信波形と、前記所定の通信信号に対応する理想的なデジタル信号の波形を表す所与の理想波形とを比較し、前記受信波形と前記理想波形との差に関する情報である波形補正情報を作成し、作成された波形補正情報を記憶部（１４５）に保存するように構成された学習部（１４４）と、
前記波形補正情報が記憶された後に前記ＡＤ変換部により変換されたデジタル信号の波形を前記記憶部に記憶された波形補正情報を用いて補正した信号である補正信号を生成し、その生成された補正信号を前記通信制御装置に出力するように構成された補正部（１４４）と、
を備える受信装置。
【請求項２】
請求項１に記載の受信装置において、
前記通信線を介して受信される通信信号は、データ転送レートが比較的遅い調停領域と、前記調停領域のデータ転送レートより高速のデータ転送レートを設定可能なデータ領域とを順に備えるフレームを構成するものであり、
前記学習部は、前記調停領域の通信信号が前記ＡＤ変換部により変換されたときのデジタル信号の波形である受信波形と、前記調停領域の通信信号に対応する理想的なデジタル信号の波形を表す所与の理想波形とを比較して前記波形補正情報を作成するように構成されており、
前記補正部は、前記データ領域の通信信号が前記ＡＤ変換部により変換されたデジタル信号の波形を前記波形補正情報を用いて補正した信号である補正信号を生成するように構成されている、受信装置。
【請求項３】
請求項２に記載の受信装置において、
前記通信線を介して受信される通信信号の前記調停領域は、当該通信信号を識別する情報であるＩＤ領域と、当該通信信号に関する情報である制御領域とを順に備えるように構成されており、
前記学習部は、前記調停領域のうち前記制御領域の通信信号が前記ＡＤ変換部により変換されたときのデジタル信号の波形である受信波形と、前記制御領域の通信信号に対応する理想的なデジタル信号の波形を表す所与の理想波形とを比較して前記波形補正情報を作成するように構成されている、受信装置。
【請求項４】
請求項１ないし請求項３の何れか１項に記載の受信装置において、
前記学習部は、前記受信波形において信号レベルがローレベルからハイレベルに立上がる局面である立上がり局面と、前記立上がり局面に対応する前記理想波形との間で信号レベルを比較して、前記立上がり局面に関する前記波形補正情報を作成し、また、前記受信波形において信号レベルがハイレベルからローレベルに立下がる局面である立下り局面と、前記立下り局面に対応する前記理想波形との間で信号レベルを比較して、前記立下がり局面に関する前記波形補正情報を作成するように構成されており、
前記補正部は、前記ＡＤ変換部により変換されたデジタル信号について、前記立上がり局面の波形を前記立上がり局面に関する波形補正情報を用いて補正した補正信号を生成し、前記立下り局面の波形を前記立下がり局面に関する波形補正情報を用いて補正した補正信号を生成するように構成されている、受信装置。
【請求項５】
請求項１ないし請求項４の何れか１項に記載の受信装置において、
前記学習部は、前記受信波形を構成する複数の符号に対応する波形について複数の前記波形補正情報を作成し、前記複数の波形補正情報の平均値を前記補正部による補正に用いる波形補正情報として前記記憶部に保存するように構成されている、受信装置。
【請求項６】
請求項１ないし請求項５の何れか１項に記載の受信装置において、
前記学習部は、前記受信波形の信号レベルがローレベルからハイレベルに立上がる局面である立上がり局面について前記波形補正情報を作成するように構成されているものであって、前記信号レベルの立上がりが検知された後、前記受信波形の符号１ビット分の時間間隔におけるサンプリングポイント相当する局面において、前記信号レベルがローレベルになっている場合、当該立上がり局面に関する前記波形補正情報を棄却するように構成されている、受信装置。
【請求項７】
請求項１ないし請求項６の何れか１項に記載の受信装置において、
前記学習部は、前記受信波形の信号レベルがハイレベルからローレベルに立下がる局面である立下がり局面について前記波形補正情報を作成するように構成されているものであって、前記信号レベルの立上がりが検知された後、前記受信波形の符号１ビット分の時間間隔におけるサンプリングポイント相当する局面から当該時間間隔の終端までの期間に信号レベルがハイレベルからローレベルに立下がった場合、当該立上がり局面に関する前記波形補正情報を棄却するように構成されている、受信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の通信装置が共通の伝送路を介して通信信号を送受信する通信システムで用いられる受信装置に関する。
【背景技術】
【０００２】
従来、複数の通信装置が共通の通信線を介して通信信号を送受信するバス接続型の通信システムが知られている。この種の通信システムでは、各通信装置が接続される支線と通信線との分岐点や通信装置の入出力点において、インピーダンスの不整合により信号の反射が生じて信号波形が劣化する。このような反射波により信号波形に乱れを生じる現象をリンギングという。
【０００３】
上記問題に対して、特許文献１には、信号がドミナントからレセッシブへ遷移するときに、一定時間の間は受信される通信信号に関係なくハイレベルの信号を出力することにより、リンギングにより乱された出力をマスクする技術が記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１１−１３５２８３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１に記載の技術は、リンギングによる波形の乱れが符号１ビット分の通信期間内に収束することを前提としている。すなわち、符号１ビット分の通信時間長をＴD、リンギングによる波形の乱れが生じる時間長をＴRINGとすると、特許文献１に記載の技術を適用できるのは、ＴD＞ＴRINGとなる状況下に限定される。ＴD≦ＴRINGとなる状況下で波形の乱れをマスクしようとすると、符号１ビット分の信号が全てマスクされてしまうため、特許文献１に記載の技術は適用できない。
【０００６】
近年、従来よりも高速な通信が可能なＣＡＮ  ＦＤ（登録商標）等の通信規格が提案されている。なお、ＣＡＮ  ＦＤは、Controller Area Network with Flexible Data-rateの略称である。このＣＡＮ  ＦＤにおいては、従来のＣＡＮ（登録商標）ならば５００kbpsであった通信速度が最大５Mbpsまで高速化される。つまり、符号１ビットあたりの時間長が１／１０まで縮小される。一方、リンギングにより波形に乱れが生じる時間長は通信速度に拠らず同程度であるため、特許文献１に記載の技術の適用は困難になる。
【０００７】
本開示はこうした課題を解決するためになされたものである。本開示は、リンギングによる波形乱れを適切に自己補正し、高速なバス通信を実現するための技術を提供する。
【課題を解決するための手段】
【０００８】
本開示の一態様に係る受信装置（１４０）は、複数の通信装置（１００）が共通の通信線を介して通信信号を送受信する通信システムを構築する通信装置内に設けられた通信制御装置（１１０）と通信線との間のインタフェースとして機能するものである。この受信装置は、ＡＤ変換部（１４２）と、学習部（１４４）と、補正部（１４４）とを備える。なお、この欄及び特許請求の範囲に記載した括弧内の符号は、一つの態様として後述する実施形態に記載の具体的手段との対応関係を示すものであって、本開示の技術的範囲を限定するものではない。
【０００９】
ＡＤ変換部は、通信線を介して受信される通信信号をデジタル信号に変換して出力するように構成されている。学習部は、所定の通信信号が受信されてＡＤ変換部により変換されたときのデジタル信号の波形である受信波形と、当該通信信号に対応する理想的なデジタル信号の波形を表す所与の理想波形とを比較することにより波形補正情報を作成するように構成されている。この波形補正情報は、受信波形と理想波形との差に関する情報である。学習部は、作成された波形補正情報を記憶部に保存するように構成されている。補正部は、波形補正情報が記憶された後にＡＤ変換部により変換されたデジタル信号の波形を、記憶部に記憶された波形補正情報を用いて補正した信号である補正信号を生成し、その生成された補正信号を通信制御装置に出力するように構成されている。
【００１０】
本開示に係る受信装置は、受信された通信信号をデジタル変換した受信波形と所与の理想波形との差分に基づいて波形補正情報を算出することで、短時間に小規模な回路で波形補正量を学習できる。このような学習により取得された波形補正情報を用いることで、リンギングによる波形乱れを適切に自己補正し、高速なバス通信を実現できる。
【図面の簡単な説明】
【００１１】
【図１】通信システムの概略構成を表すブロック図。
【図２】ＥＣＵの回路構成を表す図。
【図３】レシーバの回路構成を表す図。
【図４】ＣＡＮ  ＦＤの通信フレームの構成を表す図。
【図５】レシーバに関する動作波形図。
【図６】出力信号の波形と理想波形との比較の一例を表す図。
【図７】レシーバに関する動作波形図。
【図８】学習処理の手順を表すフローチャート。
【図９】ＣＡＮ  ＦＤに関するビットタイム区分を表す図。
【図１０】出力信号における立上がりノイズを表す図。
【図１１】出力信号における立下がりノイズを表す図。
【図１２】補正処理の手順を表すフローチャート。
【発明を実施するための形態】
【００１２】
以下、本発明の実施形態を図面に基づいて説明する。なお、本発明は下記の実施形態に限定されるものではなく様々な態様にて実施することが可能である。
［通信システムの構成の説明］
実施形態の通信システムの構成について、図１を参照しながら説明する。この通信システムは、複数のＥＣＵ１００が共通の通信線であるバス１０を介して通信信号を送受信するように構成されたものである。この通信システムにおいて送受信される通信信号は、Dominant／Recessiveの２値で表されるビット単位の信号列で構成される。なお、ＥＣＵは、Electronic Control Unitの略称である。
【００１３】
この通信システムは、各ＥＣＵ１００が本開示における通信装置として機能する。本実施形態では、各ＥＣＵ１００間の通信プロトコルとして、周知の規格であるＣＡＮ  ＦＤを用いることを前提とする。本実施形態の通信システムにおいて用いられるバス１０は、第１通信線１１及び第２通信線１２からなる２線式のものである。図２に例示されるとおり、第１通信線１１の電位と第２通信線１２の電位との電位差によってDominant／Recessiveが表現される。以下、第１通信線１１の電位を「Ｓｉｇ−Ｈ」とし、第２通信線１２の電位を「Ｓｉｇ−Ｌ」とする。なお、この通信システムは、幹線としてのバス１０から複数の支線が分岐し、各支線にＥＣＵ１００が接続されている、いわゆるバス接続型のネットワーク形態である。
【００１４】
［ＥＣＵの構成の説明］
各ＥＣＵ１００に共通する構成について、図２を参照しながら説明する。図２に例示されるとおり、ＥＣＵ１００は、通信コントローラ１１０と、トランシーバ１２０とを備える。
【００１５】
通信コントローラ１１０は、ＣＰＵ、ＲＯＭ、ＲＡＭ等を備える情報処理装置である。通信コントローラ１１０は、例えば、コンピュータシステムとしての機能が集約されたマイクロコントローラ等により具現化される。この通信コントローラ１１０は、通信制御のための処理を実行する。また、この通信コントローラ１１０は、通信端子としてのＴｘ端子及びＲｘ端子を備え、それぞれの端子がトランシーバ１２０の通信端子と接続されている。なお、通信コントローラ１１０は、本開示における通信制御装置に相当する。
【００１６】
トランシーバ１２０は、バス１０と通信コントローラ１１０との間のインタフェースとして機能する装置であり、トランスミッタ１３０及びレシーバ１４０とを備える。トランスミッタ１３０及びレシーバ１４０は、それぞれが第１通信線１１及び第２通信線１２の両方に接続されている。
【００１７】
トランスミッタ１３０は、通信コントローラ１１０のＴｘ端子から出力される送信信号を通信信号に変換して第１通信線１１及び第２通信線１２へ送出する機能を有する。通信コントローラ１１０のＴｘ端子から出力される送信信号を、「Ｔｘ信号」という。具体的には、Ｔｘ信号がRecessiveの状態では、第１通信線１１への電流の流し出し及び第２通信線１２からの電流の引き込みを行わず、第１通信線１１と第２通信線１２との電位差をほぼゼロにすることにより、Recessiveを表す通信信号を送出する。一方、Ｔｘ信号がDominantレベルの状態では、第１通信線１１への電流の流し出し及び第２通信線１２からの電流の引き込みを行い、第１通信線１１と第２通信線１２との間に電位差を生じさせることにより、Dominantを表す通信信号を送出する。このようにして生成される通信信号が第１通信線１１及び第２通信線１２を介して他のＥＣＵ１００のレシーバ１４０へ伝わることで通信が成立する。
【００１８】
レシーバ１４０は、本開示における受信装置に相当する電子回路であり、デジタル信号処理に特化したマイクロプロセッサ等により具現化される。レシーバ１４０は、第１通信線１１及び第２通信線１２から受信した通信信号を復調して通信コントローラ１１０のＲｘ端子へ受信信号を出力する。レシーバ１０４から通信コントローラ１１０のＲｘ端子へ出力される受信信号を、「Ｒｘ信号」という。このレシーバ１４０は、バス１０に接続される支線と本線との分岐点やＥＣＵ１００の入出力点において発生する反射波による通信信号の波形の歪みを補正する機能を有する。
【００１９】
［レシーバの構成の説明］
レシーバ１４０の構成について、図３を参照しながら説明する。図３に例示されるとおり、レシーバ１４０は、アンチエイリアシングフィルタ（以下、ＡＡＦ）１４１と、アナログデジタルコンバータ（以下、ＡＤＣ）１４２と、学習判定部１４３と、補正処理部１４４とを備える。
【００２０】
ＡＡＦ１４１は、ＡＤＣ１４２に入力される通信信号の帯域制限を行い、折り返し雑音の発生を防ぐローパスフィルタである。ＡＤＣ１４２は、ＡＡＦ１４１から出力された通信信号を所定のサンプリング周波数（例えば、５MHz）でサンプリングしたデジタル信号に変換する電子回路である。
【００２１】
学習判定部１４３は、ＡＤＣ１４２から出力されたデジタル信号で表されるＣＡＮ  ＦＤの通信フレームの符号を監視し、当該通信フレームについて学習区間と補正区間とを判別するための信号を補正処理部１４４に出力する電子回路である。学習区間とは、受信された通信フレームのうち、信号波形の歪みを補正するための補正量を学習する区間である。また、補正区間とは、受信された通信フレームのうち、学習区間において取得された補正量を用いて信号波形の補正を行う区間である。
【００２２】
図４を参照して、ＣＡＮ  ＦＤプロトコルで用いられる通信フレームを対象とする学習区間及び補正区間の具体例について説明する。図４に例示されるとおり、ＣＡＮ  ＦＤプロトコルで用いられる通信フレームには、ＳＯＦ，Identifier，ＲＲＳ，ＩＤＥ，ＦＤＦ，ｒｅｓ，ＢＲＳ，ＥＳＩ，ＤＬＣ，Data，ＣＲＣ等の符号領域が含まれる。
【００２３】
ＣＡＮ  ＦＤプロトコルの通信フレームは、アービトレーションフェーズとデータフェーズの２つの局面で構成されている。このうち、アービトレーションフェーズは、従来のＣＡＮと同等のビットレート（例えば、５００kbps）に設定されている。一方、データフェーズは、アービトレーションフェーズよりも高速の最大５Mbpsまでのビットレートを設定可能である。
【００２４】
なお、ＣＡＮ  ＦＤは、ＣＤＭＡ／ＣＡに則した通信方式であり、他のＥＣＵ１００との通信タイミングの調停をIdentifierを用いて行うように構成されている。つまり、アービトレーションフェーズのうちIdentifierの区間は複数のＥＣＵ１００からの通信信号の衝突により通信信号の波形が乱れるため、この間はリンギングによる波形の歪みを学習するには適していない。そこで、本実施形態では、アービトレーションフェーズのうち、ＲＲＳからＢＲＳまでの区間を学習区間として利用する。そして、高速側のデータフェーズを構成するＢＲＳからＣＲＣまでの区間を補正区間とする。
【００２５】
本実施形態では、学習判定部１４３は、ＡＤＣ１４２の出力信号の中からＲＲＳに該当する符号を検知した場合、学習区間を表す信号である学習信号ＴＲｅｎをLowレベルからHighレベルに切換えて出力する。つぎに、学習判定部１４３は、ＡＤＣ１４２の出力信号の中からＢＲＳに該当する符号を検知した場合、補正区間を表す信号である補正信号ＣＲｅｎをLowレベルからHighレベルに切換えて出力する。そして、学習判定部１４３は、ＡＤＣ１４２の出力信号の中からＣＲＣに該当する符号を検知した場合、学習信号ＴＲｅｎ及び補正信号ＣＲｅｎをLowレベルに切換える。
【００２６】
図３の説明に戻る。補正処理部１４４は、ＡＤＣ１４２からの出力信号の歪みを補正するための補正量を学習する学習処理と、学習処理によって補正量に基づいて出力信号の歪みを補正する補正処理とを選択的に行う電子回路である。補正処理部１４４は、記憶装置としてのメモリ１４５を備える。なお、補正処理部１４４が各機能を実現する手法はソフトウェアに限るものではなく、その一部又は全部の要素を論理回路やアナログ回路等を組合せたハードウェアを用いて実現してもよい。
【００２７】
補正処理部１４４は、学習判定部１４３から出力される学習信号ＴＲｅｎがHighレベルを表している場合、すなわち学習区間が有効である場合、ＡＤＣ１４２からの出力信号の波形と理想波形との比較に基づいて補正量を学習する。ここでいう補正量は、本開示における波形補正情報に相当する。補正量を学習する学習処理の具体例について、図５，６を参照しながら説明する。
【００２８】
図５のグラフは、レシーバ１４０において受信された通信フレームのアービトレーションフェーズにおける符号１ビット分の信号波形の一例を表すグラフである。これらのグラフのうち、上段はＡＤＣ１４２への入力信号の波形であり、下段はＡＤＣ１４２からの出力信号の波形を表す。
【００２９】
図５に例示されるとおり、入力信号の波形において、振幅レベルの立上がりと立下がりの直後において、リンギングによる波形の乱れが生じている。この入力信号における波形の乱れがＡＤＣ１４２からの出力信号に反映されることで、出力信号が正確な矩形波を形成せず、立上がりと立下りの直後において歪な形状となっている。
【００３０】
そこで、図６に例示されるとおり、補正処理部１４４は、ＡＤＣ１４２からの出力信号の波形と、アービトレーションフェーズにおける符号１ビット分の正確な信号波形を模した理想波形とを比較し、出力信号の波形と理想波形との電圧差を補正量として算出する。なお、図６のグラフにおいて破線で表される矩形波は、アービトレーションフェーズに対応する５００kbpsの理想波形である。このような理想波形を表す情報が、補正処理部１４４が備えるメモリ１４５に予め登録されているものとする。
【００３１】
図６に例示されるとおり、補正処理部１４４は、出力信号の振幅レベルが閾値Ｖth（例えば、１V）を越えて上昇した直後における出力信号と理想波形との振幅レベルの差を測定し、その測定値を立上がり補正量Ｖriseとして取得する。また、補正処理部１４４は、出力信号の振幅レベルが閾値Ｖthを越えて下降した直後における出力信号と理想波形との振幅レベルの差を測定し、その測定値を立下がり補正量Ｖfallとして取得する。補正処理部１４４は、取得されたＶrise及びＶfallの各補正量をメモリ１４５に保存する。
【００３２】
なお、補正量を学習する方法として、複数ビットから測定された補正量の平均値を取得する構成であってもよい。具体的には、補正処理部１４４は、図４に例示される学習区間に相当するＲＲＳ〜ＢＲＳの領域に含まれる複数の符号からそれぞれＶrise及びＶfallを測定し、その平均値を補正量としてメモリ１４５に保存する。
【００３３】
一方、補正処理部１４４は、学習判定部１４３から出力される補正信号ＣＲｅｎがHighレベルを表している場合、すなわち補正区間が有効である場合、メモリ１４５に記憶されている補正量を用いてＡＤＣ１４２からの出力信号の波形を補正する。この補正処理の具体例について、図７を参照しながら説明する。
【００３４】
図７のグラフは、レシーバ１４０において受信された通信フレームのアービトレーションフェーズ（すなわち、５００kbps）からデータフェーズ（すなわち、５Mbps）に移行する過程における信号波形の一例を表すグラフである。図７に例示されるとおり、補正処理部１４４は、通信フレームがデータフェーズに入り補正信号ＣＲｅｎがHighレベルになることで、Ｖrise及びＶfallの補正量を用いて出力信号の振幅レベルの補正を開始する。
【００３５】
具体的には、図７の中段のグラフに例示されるとおり、補正処理部１４４は、ＡＤＣ１４２の出力信号の振幅レベルが閾値Ｖthを越えて上昇したときに、Ｖriseの分だけ振幅レベルを加算して補正する。また、ＡＤＣ１４２の出力信号の振幅レベルが閾値Ｖthを越えて下降したときに、Ｖfallの分だけ振幅レベルを減算して補正する。アービトレーションフェーズとデータフェーズにおいて、ＡＤＣ１４２のサンプリングクロックの位相が通信フレームに正しく同期されている状態であれば、５００kbpsのアービトレーションフェーズで学習された補正量を、５Mbpsのデータフェーズに対して適用することが可能である。これは、リンギングによる信号波形の歪みがデータ速度に依存しないからである。
【００３６】
その結果、図７の下段のグラフに例示されるとおり、補正後の出力信号においてはリンギングによる波形の歪みの影響の大部分を取除くことができ、閾値Ｖthに対して十分なノイズマージンを持ったデジタル信号の波形を生成することができる。なお、ＣＡＮ  ＦＤにおいては、通信信号がRecessiveのときとDominantときで、トランシーバ１２０のインピーダンスが変化する。このため、通信信号の立上がりと立下りでリンギングを起す反射の状態が変化する。そのため、本実施形態のようにＶrise及びＶfallをそれぞれ学習することで、精度の高い補正を実現できる。
【００３７】
［学習処理の手順の説明］
レシーバ１４０の補正処理部１４４が実行する学習処理の手順について、図８のフローチャートを参照しながら説明する。この学習処理は、レシーバ１４０において通信フレームが受信される度に実行される。
【００３８】
Ｓ１００では、補正処理部１４４は、学習判定部１４３から出力されている学習信号ＴＲｅｎがHighレベルであるか否かを判定する。学習信号ＴＲｅｎがLowレベルである場合（すなわち、Ｓ１００：ＮＯ）、補正処理部１４４はＳ１００を繰返す。一方、学習信号ＴＲｅｎがHighレベルである場合（すなわち、Ｓ１００：ＹＥＳ）、補正処理部１４４はＳ１０２に移る。
【００３９】
Ｓ１０２では、補正処理部１４４は、ＡＤＣ１４２からの出力信号（以下、出力信号）の振幅レベルが閾値Ｖthを超えて上昇する立上がりを検知したか否かを判定する。出力信号の立上がりが検知されていない場合（すなわち、Ｓ１０２：ＮＯ）、補正処理部１４４はＳ１０２を繰返す。一方、出力信号の立上がりが検知された場合（すなわち、Ｓ１０２：ＹＥＳ）場合、補正処理部１４４はＳ１０４に移る。Ｓ１０４では、補正処理部１４４は、出力信号の立上がり直後における振幅レベルと、理想波形の立上がり直後における振幅レベルとの差を測定し、その測定値を立上がり補正量Ｖriseとして取得する。
【００４０】
Ｓ１０６では、補正処理部１４４は、ＣＡＮ  ＦＤの仕様で規定されているビットタイミングのサンプリングポイントにおいて、出力信号がHighレベルを維持しているか否かを判定する。ＣＡＮ  ＦＤの仕様においては、図９に例示されるとおり、符号１ビット分の時間長が、ＳＹＮＣ＿ＳＥＧ，ＰＲＯＰ＿ＳＥＧ，ＰＨＡＳＥ＿ＳＥＧ１，ＰＨＡＳＥ＿ＳＥＧ２の４つのセグメントに区分されている。そして、符号１ビット分の時間長のうち、ＰＨＡＳＥ＿ＳＥＧ１とＰＨＡＳＥ＿ＳＥＧ２との境界に相当するサンプリングポイントにおいて認識された出力信号の振幅レベルが、当該出力信号が表す符号として認識されるようになっている。
【００４１】
図８のフローチャートの説明に戻る。Ｓ１０６において、サンプリングポイントで出力信号がHighレベルを維持していると判定された場合（すなわち、Ｓ１０６：ＹＥＳ）、補正処理部１４４はＳ１０８に移る。Ｓ１０８では、補正処理部１４４は、Ｓ１０４において取得された立上がり補正量Ｖriseをメモリ１４５に保存する。一方、Ｓ１０６において、サンプリングポイントで出力信号がLowレベルに変わっていると判定された場合（すなわち、Ｓ１０６：ＮＯ）、補正処理部１４４はＳ１１０に移る。
【００４２】
Ｓ１１０では、補正処理部１４４は、Ｓ１０４において取得された立上がり補正量Ｖriseを保存せずに棄却する。Ｓ１１０の後、補正処理部１４４はＳ１０２に戻る。このＳ１１０における処理について、図１０を参照しながら詳しく説明する。
【００４３】
図１０に例示されるとおり、出力信号が閾値Ｖthを越えて立上がったにも関わらず、当該ビットタイム区分のサンプルポイントに相当する時刻において振幅レベルがLowレベルに下がっている場合、先の立上がりはノイズである可能性が高い。そのため、出力信号の立上がりが検出された後、サンプリングポイントにおいて出力信号がLowレベルであった場合には、その学習結果を棄却するように構成されている。
【００４４】
図８のフローチャートの説明に戻る。Ｓ１１２では、補正処理部１４４は、出力信号の振幅レベルが閾値Ｖthを超えて下降する立下がりを検知したか否かを判定する。出力信号の立下りが検知されていない場合（すなわち、Ｓ１１２：ＮＯ）、補正処理部１４４はＳ１１２を繰返す。一方、出力信号の立下がりが検知された場合（すなわち、Ｓ１１２：ＹＥＳ）場合、補正処理部１４４はＳ１１４に移る。Ｓ１１４では、補正処理部１４４は、出力信号の立下がり直後における振幅レベルと、理想波形の下がり直後における振幅レベルとの差を測定し、その測定値を立下がり補正量Ｖfallとして取得する。
【００４５】
Ｓ１１６では、補正処理部１４４は、Ｓ１１２において立下がりが検知されたタイミングが、図９に例示されるビットタイミングのＰＨＡＳＥ＿ＳＥＧ２の区間内に含まれているか否かを判定する。立下りが検知されたタイミングがＰＨＡＳＥ＿ＳＥＧ２の区間内に含まれていない場合（すなわち、Ｓ１１６：ＮＯ）、補正処理部１４４はＳ１１８に移る。Ｓ１１８では、補正処理部１４４は、Ｓ１１４において取得された立下がり補正量Ｖfallをメモリ１４５に保存する。
【００４６】
一方、Ｓ１１６において、立下りが検知されたタイミングがＰＨＡＳＥ＿ＳＥＧ２の区間内に含まれていると判定された場合（すなわち、Ｓ１１６：ＹＥＳ）、補正処理部１４４はＳ１２０に移る。Ｓ１２０では、補正処理部１４４は、Ｓ１１４において取得された立上がり補正量Ｖfallを保存せずに棄却する。Ｓ１２０の後、補正処理部１４４はＳ１１２に戻る。
【００４７】
このＳ１２０の処理について、図１１を参照しながら詳しく説明する。レシーバ１４０において受信される通信フレームは、送信側のタイミングよりも遅れて入力される。そのため、符号１ビット分の通信信号の終端は、通常、受信側のビットタイミングのＰＨＡＳＥ＿ＳＥＧ２よりも遅れて検出される。したがって、図１１に例示されるとおり、ビットタイミングのＰＨＡＳＥ＿ＳＥＧ２の区間内において立下がりが検知された場合、その検知された立下りはノイズである可能性が高い。そのため、出力信号の立上がりが検出された後、ＰＨＡＳＥ＿ＳＥＧ２の区間内において立下りが検出された場合には、その立下りに関する学習結果を棄却するように構成されている。
【００４８】
図８のフローチャートの説明に戻る。Ｓ１２２では、補正処理部１４４は、学習判定部１４３から出力されている補正信号ＣＲｅｎがHighレベルであるか否かを判定する。補正信号ＣＲｅｎがLowレベルである場合（すなわち、Ｓ１２２：ＮＯ）、補正処理部１４４はＳ１０２に戻り、次の符号についてＶrise及びＶfallの取得を繰返す。一方、補正信号ＣＲｅｎがHighレベルである場合（すなわち、Ｓ１２２：ＹＥＳ）、補正処理部１４４はＳ１２４に移る。
【００４９】
Ｓ１２４では、補正処理部１４４は、Ｓ１０８及びＳ１１８においてメモリ１４５に保存された立上がり補正量Ｖrise及び立下がり補正量Ｖfallそれぞれについて平均値を算出し、算出された立上がり補正量Ｖriseの平均値及び立下がり補正量Ｖfallの平均値をメモリ１４５に保存する。Ｓ１２４の後、補正処理部１４４は、図１２に例示される補正処理に移行する。
【００５０】
ところで、図８に例示されるフローチャートは、出力信号の振幅レベルがLowレベルからHighレベルに立上がる局面から始まる符合を対象に、ＶriseとＶfallとを学習することを想定したものである。一方、出力信号の振幅レベルがHighレベルからLowレベルに立下がる局面から始まる符合を対象にＶfallとＶriseとを学習する構成であってもよい。
【００５１】
その場合、符号の開始に相当するタイミングにおいて立上がりを検知したか立下りを検知したかに応じて、立上がりから始まる符合を対象に学習を行うシーケンスと、立下りから始まる符合を対象に学習を行うシーケンスとを分岐することが考えられる。なお、立下りから開始する符合を学習の対象とする場合にも、図８に例示されるフローチャートと類似の手順により学習を行うことができる。具体的には図８のフローチャートの内容を次のように読替える。
【００５２】
補正処理部１４４は、Ｓ１０２において立下がりを検知したことを条件に、Ｓ１０４において立下がり補正量Ｖfallを取得する。そして、補正処理部１４４は、Ｓ１０６においてサンプリングポイントにおける振幅レベルがLowレベルであることを条件に、Ｓ１０８において立下がり補正量Ｖfallをメモリ１４５に保存する。一方、Ｓ１０６においてサンプリングポイントにおける振幅レベルがHighレベルである場合、補正処理部１４４は、補正量Ｖfallを棄却する。
【００５３】
また、補正処理部１４４は、Ｓ１１２において立上がりを検知したことを条件に、Ｓ１１４において立上がり補正量Ｖriseを取得する。そして、補正処理部１４４は、立上がりが検知されたタイミングがＰＨＡＳＥ＿ＳＥＧ２の区間内に含まれていないことを条件に、立上がり補正量Ｖriseをメモリ１４５に保存する。一方、Ｓ１１２において立上がりのタイミングがＰＨＡＳＥ＿ＳＥＧ２の区間内に含まれている場合、補正処理部１４４は、立上がり補正量Ｖriseを棄却する。
【００５４】
［補正処理の手順の説明］
レシーバ１４０の補正処理部１４４が実行する補正処理の手順について、図１２のフローチャートを参照しながら説明する。この補正処理は、上述の学習処理に続けて実行される。
【００５５】
Ｓ２００では、補正処理部１４４は、ＡＤＣ１４２の出力信号の振幅レベルが閾値Ｖthを超えて上昇する立上がりを検知したか否かを判定する。出力信号の立上がりが検知されていない場合（すなわち、Ｓ２００：ＮＯ）、補正処理部１４４はＳ２００を繰返す。一方、出力信号の立上がりが検知された場合（すなわち、Ｓ２００：ＹＥＳ）、補正処理部１４４はＳ２０２に移る。
【００５６】
Ｓ２０２では、補正処理部１４４は、上述の補正処理のＳ１２４においてメモリ１４５に保存された立上がり補正量Ｖriseを用いて、立上がり直後の出力信号の波形を補正する。具体的には、補正処理部１４４は、ＡＤＣ１４２の出力信号の振幅レベルを立上がり補正量Ｖriseの分だけ加算してＲｘ信号を出力する。
【００５７】
Ｓ２０４では、補正処理部１４４は、出力信号の振幅レベルが閾値Ｖthを超えて下降する立下がりを検知したか否かを判定する。出力信号の立下りが検知されていない場合（すなわち、Ｓ２０４：ＮＯ）、補正処理部１４４はＳ２０４を繰返す。一方、出力信号の立下がりが検知された場合（すなわち、Ｓ２０４：ＹＥＳ）場合、補正処理部１４４はＳ２０６に移る。
【００５８】
Ｓ２０６では、補正処理部１４４は、上述の補正処理のＳ１２４においてメモリ１４５に保存された立下がり補正量Ｖfallを用いて、立下がり直後の出力信号の波形を補正する。具体的には、補正処理部１４４は、ＡＤＣ１４２の出力信号の振幅レベルを立下がり補正量Ｖfallの分だけ減算してＲｘ信号を出力する。
【００５９】
Ｓ２０８では、補正処理部１４４は、学習判定部１４３から出力されている補正信号ＣＲｅｎがLowレベルであるか否かを判定する。補正信号ＣＲｅｎがHighレベルである場合（すなわち、Ｓ２０８：ＮＯ）、補正処理部１４４はＳ２００に戻り、出力信号の補正を繰返す。一方、補正信号ＣＲｅｎがLowレベルである場合（すなわち、Ｓ２０８：ＹＥＳ）、補正処理部１４４はＳ２１０に移る。
【００６０】
Ｓ２１０では、補正処理部１４４は、メモリ１４５に保存されている立上がり補正量Ｖrise及び立下り補正量Ｖfallに関するデータをクリアする。Ｓ２１０の後、補正処理部１４４は補正処理を終了する。
【００６１】
ところで、図１２に例示されるフローチャートは、出力信号の振幅レベルがLowレベルからHighレベルに立上がる局面から始まる符合を対象に、出力信号の波形を補正することを想定したものである。一方、出力信号の振幅レベルがHighレベルからLowレベルに立下がる局面から始まる符合を対象に出力信号の波形を補正する構成であってもよい。
【００６２】
その場合、符号の開始に相当するタイミングにおいて立上がりを検知したか立下りを検知したかに応じて、立上がりから始まる符合を対象に補正を行うシーケンスと、立下りから始まる符合を対象に補正を行うシーケンスとを分岐することが考えられる。なお、立下りから開始する符合を補正の対象とする場合にも、図１２に例示されるフローチャートと類似の手順により学習を行うことができる。具体的には図１２のフローチャートの内容を次のように読替える。
【００６３】
補正処理部１４４は、Ｓ２００において立下がりを検知したことを条件に、Ｓ２０２において立下がり補正量Ｖfallを用いて立下がり直後の出力信号の波形を補正する。そして補正処理部１４４は、Ｓ２０４において立上がりを検知したことを条件に、Ｓ２０６において立上がり補正量Ｖriseを用いて立上がり直後の出力信号の波形を補正する。
【００６４】
［効果］
実施形態の通信システムによれば、以下の効果を奏する。
レシーバ１４０の補正処理部１４４は、ＣＡＮ  ＦＤの通信フレームにおけるアービトレーションフェーズの間に、ＡＤＣ１４２の出力信号と理想波形との差分に基づいて、立上がり補正量Ｖrise及び立下り補正量Ｖfallを学習することができる。そして、データフェーズにおいて、補正処理部１４４が、学習により取得された立上がり補正量Ｖrise及び立下り補正量Ｖfallを用いて、出力信号を補正することで、リンギングによる波形乱れを適切に自己補正し、高速なバス通信を実現できる。
【００６５】
信号波形を整形する回路としては、ＤＦＥのような比較的な大規模デジタル回路が知られている。なお、ＤＦＥは、Decision Feedback Equalizerの略語である。一般的に、ＤＦＥは複数の掛算器を有することで回路規模が大きいため、トランシーバを含む通信装置の価格が高くなってしまうという欠点がある。また、ＤＦＥは、ＬＭＳアルゴリズムによって補正量を調節する仕組みであるため、補正量の習得に時間がかかる。このため、ＣＡＮ  ＦＤの通信フレームにおけるＲＳＳ〜ＢＲＳの区間のような短時間に学習を終えることができない。なお、ＬＭＳは、Least Mean Squareの略語である。
【００６６】
これに対し、本実施形態では、レシーバ１４０の補正処理部１４４の内部に格納した理想波形と、ＡＤＣ１４２の出力信号の波形との比較により補正量を算出することで、小規模な回路でかつ短期間に補正量を学習することができる。
【００６７】
［特許請求の範囲に記載の構成との対応］
実施形態の各構成と、特許請求の範囲に記載の構成との対応は次のとおりである。
ＡＤＣ１４２が、ＡＤ変換部に相当する。補正処理部１４４が、学習部及び補正部に相当する。メモリ１４５が、記憶部に相当する。
【００６８】
［変形例］
上記各実施形態における１つの構成要素が有する機能を複数の構成要素に分担させたり、複数の構成要素が有する機能を１つの構成要素に発揮させたりしてもよい。また、上記各実施形態の構成の一部を、課題を解決できる限りにおいて省略してもよい。また、上記各実施形態の構成の少なくとも一部を、他の上記実施形態の構成に対して付加、置換等してもよい。なお、特許請求の範囲に記載の文言から特定される技術思想に含まれるあらゆる態様が本開示の実施形態である。
【００６９】
上述したレシーバ１４０を備えるトランシーバ１２０を構成要件とするシステム、補正処理部１４４としてコンピュータを機能させるためのプログラム、プログラムを記録した半導体メモリ等の非遷移的実態的記録媒体、プログラムに対応する信号波形補正方法等の種々の形態で本開示を実現することもできる。
【符号の説明】
【００７０】
１０…バス、１１…第１通信線、１２…第２通信線、１００…ＥＣＵ、１１０…通信コントローラ、１２０…トランシーバ、１３０…トランスミッタ、１４０…レシーバ、１４１…アンチエイリアシングフィルタ、１４２…アナログデジタルコンバータ、１４３…学習判定部、１４４…補正処理部、１４５…メモリ。
【図１】
0006524969.tif 000002
【図２】
0006524969.tif 000003
【図３】
0006524969.tif 000004
【図４】
0006524969.tif 000005
【図５】
0006524969.tif 000006
【図６】
0006524969.tif 000007
【図７】
0006524969.tif 000008
【図８】
0006524969.tif 000009
【図９】
0006524969.tif 000010
【図１０】
0006524969.tif 000011
【図１１】
0006524969.tif 000012
【図１２】
0006524969.tif 000013