JP2007166179A - シリアル通信装置 - Google Patents

シリアル通信装置 Download PDF

Info

Publication number
JP2007166179A
JP2007166179A JP2005359218A JP2005359218A JP2007166179A JP 2007166179 A JP2007166179 A JP 2007166179A JP 2005359218 A JP2005359218 A JP 2005359218A JP 2005359218 A JP2005359218 A JP 2005359218A JP 2007166179 A JP2007166179 A JP 2007166179A
Authority
JP
Japan
Prior art keywords
bit
bit length
bits
count
remainder
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.)
Granted
Application number
JP2005359218A
Other languages
English (en)
Other versions
JP4736775B2 (ja
Inventor
Susumu Ueda
進 上田
Tadatoshi Asada
忠利 浅田
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.)
Denso Corp
Original Assignee
Denso Corp
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 Denso Corp filed Critical Denso Corp
Priority to JP2005359218A priority Critical patent/JP4736775B2/ja
Publication of JP2007166179A publication Critical patent/JP2007166179A/ja
Application granted granted Critical
Publication of JP4736775B2 publication Critical patent/JP4736775B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】カウントパルスの周波数を上げることなく、誤った符号判定を抑制し得るシリアル通信装置を提供する。
【解決手段】カウントパルス発生部21によりシンクフィールドSFを構成するビット列の1ビット区間よりも十分に短いパルス幅のカウントパルスCpを発生させ、シンクフィールドSFのスタートビットからストップビットまでの間で発生したカウントパルスCpの数をビット長カウント部23によりカウントする。そして、ビット長決定部30よって、ビット長カウント部23によりカウントされたカウントパルスCpの数をビット列のビット数2で除した商Qおよびその余りSに基づいて1ビット区間の1ビット長を決定し、ビット長決定部30により決定された1ビット長に従った所定タイミングで同期クロック生成部27により同期クロックSynCLK を生成する。
【選択図】図3

Description

本発明は、データ伝送媒体を介して受信される所定のデータに基づいて同期クロックを生成し、この同期クロックに同期してその後に送受信される送受信データのビットごとの符号を判定するシリアル通信装置に関し、例えばUART(Universal Asynchronous Receiver Transmitter )に関するものである。
UARTに関する技術として、例えば、下記、特許文献1や非特許文献1に開示されるLIN(Local Interconnect Network)プロトコルに従うものがある。その一例として、例えば、図9(A) に示すように、LINプロトコルでは、シンクフィールド(Synch Field )と称される同期ビットの符号を、「0」と「1」とが交互に現れる「0101…」のパターン(0x55)に設定することで、このシンクフィールドの受信可能期間において1ビット区間の長さ(1ビット長)を計測しこれに基づいて同期クロックを生成している。
即ち、シンクフィールド10ビットのうち、前後の1ビット(スタートビットとストップビット)を除いた8ビットについて着目した例では、通常、1ビット区間において、この1ビット区間よりも十分に短いパルス幅のカウントパルスがNカウント(例えば100カウント)されたとすると、図9(B) に示すように、スタートビットからストップビットまでの間の8ビット分をカウントすれば8Nカウント(例えば800カウント)になる。そのため、この8Nをビット数の8で除すると(8N/8=N)、1ビット区間にカウントされたカウントパルス数Nが得られるので、カウントパルスのパルス幅にこのNを乗じると1ビット長が算出される。これにより、例えば、この半分(1ビット長のほぼ中心)のタイミングで受信データの各ビットごとの符号を判定すれば、ほぼ安定したデータの受信が可能になるとされている。
特開2005−25440号公報 株式会社サニー技研、"HOME>製品情報>LINツール>LINとは>基準クロックの調整"、[online]、[平成17年12月13日検索]、インターネット<URL:http://www.sunnygiken.co.jp/lintool-aboutex/lintool_clock.htm>
しかしながら、上記、特許文献1や非特許文献1に開示される技術によると、例えば、データ伝送媒体から受信されるデータに「ジッタ」や「ゆらぎ」といった同期ビットの波形に歪み等を与える現象が発生した場合には、シンクフィールド中の所定のデータも波形歪み等を生じ得る。このような場合には、例えば、図9(C) に示すように、8ビット中の最後の1ビットにおいて1パルス分不足してカウントされるので、本来、8ビット分で8Nカウント(例えば800カウント)されるべきものが、8N−1(例えば800−1=799)しかカウントされないことがある。
このため、この(8N−1)をビット数の8で除すると((8N−1)/8)、1パルス分不足したことによる剰余(余り)が切り捨てられて、演算結果は(N−1)となる。先の例では、799/8=99の余り7で、剰余7が切り捨てられる結果、全てのビットに対する1ビット長に1パルス分の誤差が生じる。つまり「2(nは正の整数)で除する」という情報処理は、カウントレジスタの値を下位ビット側にnビットシフトさせることに相当するので、カウントレジスタの最下位側から溢れ出たnビット分の消失により切り捨て処理が行われて、1ビット長に誤差を与えることになる。
したがって、このような場合には、1ビット区間の長さに誤差が含まれたまま、これに基づいて同期クロックが生成されることから、このような誤差が蓄積されると、受信データの符号判定に誤りが生じ得るという問題がある。例えば、本来の1ビット長が100パルス分に相当する場合には、そのほぼ半分にあたる50パルス分のタイミングで、受信データの符号判定が行われるが、このような誤差が50パルス近く蓄積されると、データ波形の符号変位タイミングの前後で判定することになるので、誤った符号判定を招来する。
このような問題は、カウントパルスの周波数を上げて1ビット区間内でカウントするパルス数を桁違い(例えば1000パルス)に増加させれば、解決し得るものではあるが、このようなカウントパルスの高周波化は、ラジオノイズとしてラジオ受信機や無線通信機器等に影響を与えるおそれがあるため、新たな技術的問題の発生につながる。
また、LINプロトコル等を処理するハードウェアモジュールは、いわゆるLINトランシーバとしてLSI化されていることが多く、カウントパルスの発生は主にCR発振回路で行われる。そのため、カウントパルスの高周波化に伴って要求される発振周波数の高精度化に対応するためには、発振周波数を決めるコンデンサや抵抗の値を高精度に管理し、また温度特性係数も管理する必要があることから、このようなコンデンサや抵抗が製品コストの上昇という新たな問題を招き得る。
本発明は、上述した課題を解決するためになされたものであり、その目的とするところは、カウントパルスの周波数を上げることなく、誤った符号判定を抑制し得るシリアル通信装置を提供することにある。
上記目的を達成するため、特許請求の範囲に記載の請求項1のシリアル通信装置では、データ伝送媒体から受信する所定のデータに基づいて同期クロックを生成し、この同期クロックに同期してその後に受信される受信データのビットごとの符号を判定するシリアル通信装置であって、前記所定のデータを構成するビット列の1ビット区間よりも十分に短いパルス幅のカウントパルスを発生するカウントパルス発生手段と、前記所定のデータの始端から終端までの間で発生した前記カウントパルスの数をカウントするカウント手段と、前記カウント手段によりカウントされた前記カウントパルス数を前記ビット列のビット数2(nは正の整数)で除した商Qおよびその余りSに基づいて前記1ビット区間の1ビット長を決定するビット長決定手段と、前記ビット長決定手段により決定された1ビット長に従った所定タイミングで前記同期クロックを生成する同期クロック生成手段と、を備えることを技術的特徴とする。
特許請求の範囲に記載の請求項2のシリアル通信装置では、請求項1記載のシリアル通信装置において、前記余りSの最大値を表現可能なビット数がmである場合において、前記ビット長決定手段は、前記余りSを表す前記mビットのうちの最上位ビットの符号が「0」であるときには、前記商Qを前記1ビット区間の1ビット長として決定し、前記余りSを表す前記mビットのうちの最上位ビットの符号が「1」であるときには、前記商Qに1を加算した値を前記1ビット区間の1ビット長として決定することを技術的特徴とする。
特許請求の範囲に記載の請求項3のシリアル通信装置では、請求項1記載のシリアル通信装置において、前記余りSの最大値を表現可能なビット数がmであり、また前記受信データのビット数が2(nは正の整数)である場合において、前記ビット長決定手段は、前記受信データの上位(2−m)ビットに対しては、前記商Qを前記1ビット区間の1ビット長として決定し、前記受信データの下位mビットに対しては、前記商Qから1を減算した値を前記1ビット区間の1ビット長として決定することを技術的特徴とする。
請求項1の発明では、カウントパルス発生手段により所定のデータを構成するビット列の1ビット区間よりも十分に短いパルス幅のカウントパルスを発生させ、所定のデータの始端から終端までの間で発生したカウントパルスの数をカウント手段によりカウントする。そして、ビット長決定手段よって、カウント手段によりカウントされたカウントパルス数をビット列のビット数2で除した商Qおよびその余りSに基づいて1ビット区間の1ビット長を決定し、このビット長決定手段により決定された1ビット長に従った所定タイミングで同期クロック生成手段により同期クロックを生成する。これにより、1ビット区間の1ビット長は、カウントパルス数をビット列のビット数2で除した商Qに加えてその余りSも含めたものに基づいて決定されるので、当該余りSを切り捨てた場合に比べて1ビット長の演算精度を上げることが可能となる。したがって、このような演算精度の高い1ビット長に基づいて同期クロックが生成されるので、カウントパルスの周波数を上げなくても、誤った符号判定を抑制することができる。
請求項2の発明では、このような余りSも含めたものに基づいて決定される第1の具体例として、余りSの最大値を表現可能なビット数がmである場合において、ビット長決定手段は、余りSを表すmビットのうちの最上位ビットの符号が「0」であるときには、商Qを1ビット区間の1ビット長として決定し、余りSを表すmビットのうちの最上位ビットの符号が「1」であるときには、商Qに1を加算した値を1ビット区間の1ビット長として決定する。これにより、余りSを表すmビットのうちの最上位ビットの符号が「0」のときには当該余りSを切り捨て、最上位ビットの符号が「1」のときには当該余りSを切り上げて1ビット長を決定する。つまり、0〜2−1の範囲の間で値をとる余りSのうち、0以上(2(m−1)−1)以下の余りは切り捨てて1ビット長を商Q−1とし、2(m−1)以上(2−1)以下の余りは切り上げて1ビット長を商Qとする。したがって、従来のようにこのような余りSを全て切り捨てて1ビット長を商Qとしていた場合に比べて1ビット長の演算精度を上げることが可能となる。
請求項3の発明では、このような余りSも含めたものに基づいて決定される第2の具体例として、余りSの最大値を表現可能なビット数がmであり、また受信データのビット数が2(nは正の整数)である場合において、ビット長決定手段は、受信データの上位(2−m)ビットに対しては、商Qを1ビット区間の1ビット長として決定し、受信データの下位mビットに対しては、商Qから1を減算した値を1ビット区間の1ビット長として決定する。これにより、受信データの上位(2−m)ビットに対しては1ビット長を商Q+1とし、受信データの下位mビットに対しては商Qとする。したがって、従来のようにこのような余りSを全て切り捨てて1ビット長を商Qとしていた場合や、前述の第1の具体例に比べて1ビット長の演算精度を上げることが可能となる。
以下、本発明のシリアル通信装置を、LINプロトコルによる車載LAN(Local Area Network)システムのLINトランシーバに適用した実施形態を図に基づいて説明する。まず、本実施形態に係る車載LANシステムの構成を図1を参照して説明する。図1には車載LANシステムの構成概要を示すブロック図が示されている。
図1に示すように、車載LANシステムは、マスタノードMnと、これに従属する1以上のスレーブノードSnとを含んで構成されるネットワークシステムで、通信プロトコルとして、LINプロトコルを採用している。なお、LINプロトコルは、OSI(Open Systems Interconnection)の基本参照モデルにおけるレイヤ1〜3に対応しており、マスタノードMnやスレーブノードSnは、LINバスケーブル100を介して最大19.2kbpsのボーレートで通信可能に構成されている。
マスタノードMnは、例えば、車両のボディー系を制御するECU(Electronic Control Unit)で、MPU10、LINトランシーバ20等を備えている。また、スレーブノードSnは、例えば、車両の計器パネル等を制御するECUで、マスタノードMnとほぼ同様に、MPU12、LINトランシーバ20等を備えている。MPU10、12は、通信機能部としてLINコントローラを内蔵しているマイクロコンピュータで、図略のメモリ、インターフェース等を備えている。
マスタノードMnは、マスタノードおよびスレーブノードのいずれとしても機能する必要上、そのMPU10は、マスタノードの機能を実現するマスタタスクMtとスレーブノードの機能を実現するスレーブタスクStの双方を備えている。これに対し、スレーブノードSnのMPU12は、専らスレーブノードとして機能するので、そのMPU12は、スレーブノードの機能を実現するスレーブタスクStを備えている。
LINトランシーバ20は、ISO9141に準拠したLIN用のインターフェースで、MPU10、12とLINバスケーブル100との間に介在することで、両者間における信号電圧の違い等を変換可能なドライバ機能を有し、後述するように、物理層におけるビットタイミングやビット同期の確立を可能にしている。
なお、前述したMPU10、12によるLINコントローラは、例えば、OSIのネットワーク層、データリンク層および物理層の一部の機能、例えば、ネットワークコンフィグレーション、タイムトリガースケジューリング、通信方式、同期方式、リカバリ管理、メッセージ確認、誤り検出/報告方法等の各機能を提供するもので、ソフトウェア的には、マスタタスクMtやスレーブタスクStとして機能し得る。
次に、マスタノードMnとスレーブノードSnとの間で伝送されるメッセージフレームの構成を図2を参照して説明する。LINプロトコルでは、マスタノードMnの指示がない限りスレーブノードSnがデータを送信しない「シングルマスタ方式」を採る。例えば、メッセージフレームとして、マスタノードMnからスレーブノードSnに送信されるヘッダと、スレーブノードSnからマスタノードMnに送信されるレスポンスとが存在し、スレーブノードSnは、自分のアドレスに対応したアドレス情報を含むヘッダを受信した場合に限りレスポンスをマスタノードMnに送信する。
ここで、マスタノードMnからスレーブノードSnに送信されるヘッダについて説明する。ヘッダは、前述したマスタノードMnのマスタタスクMtによって生成されるメッセージフレームで、図2に示すように、シンクブレークSB(Sync Break)、シンクフィールドSF(Sync Field)、アイデントフィールドIF(Ident Field)という3種類のフィールドで構成されている。
シンクブレークSBは、13ビットで構成されており、ヘッダの始まりを表す情報である。シンクフィールドSFは、「0」と「1」とが交互に現れる「0101…」のパターン(0x55)の10ビットで構成されており、LINトランシーバ20では、このシンクフィールドSFの受信可能期間において1ビット区間の長さ(1ビット長)を計測しこれに基づいて同期クロックSynCLK を生成したり、同期クロックSynCLK に生じ得る周波数の誤差を調整可能にしている。
アイデントフィールドIFは、10ビットで構成されており、ID、データ長およびパリティビットから構成される。アイデントフィールドIFのIDは、マスタノードMnの指示によってレスポンスを送信することができるスレーブノードSnの識別情報、つまりアドレス情報のことで、4ビット分割り当てられている。
一方、スレーブノードSnからマスタノードMnに送信されるレスポンスは、スレーブノードSnのスレーブタスクStやマスタノードMnのスレーブタスクStによって生成されるメッセージフレームで、データフィールドDF(Data Field)、チェックサムCS(CheckSum)という2種類のフィールドで構成されている。
データフィールドDFは、スタートビットとストップビットとを含めて10ビットで構成されており、1バイト分のデータを格納している。このデータフィールドDFは、前述したアイデントフィールドIFのデータ長によりマスタノードMnから指示されたバイトに相当するだけ用意されている。チェックサムCSは、データフィールドDFに対する誤り検出用のビット列で、例えばモジュロ256の計算式の演算結果をビット反転したものに相当する。
次に、図2で参照したシンクフィールドSFの同期ビットに基づいて同期クロックSynCLK を生成するLINトランシーバ20の同期処理部の構成等を、図3〜図5を参照して説明する。なお、図3には、LINトランシーバ20による同期処理部の構成を示すブロック図が示されており、また図4には、同期処理部のビット長決定部30の一構成例等が図示されている。さらに、図5には、ビット長決定部30の処理内容を示す説明図が示されている。
図3に示すように、LINトランシーバ20の同期処理部は、主に、カウントパルス発生部21、ビット長カウント部23、ビット長決定部30、同期クロック生成部27、シフトレジスタ29により構成されている。なお、カウントパルス発生部21は特許請求の範囲に記載の「カウントパルス発生手段」、ビット長カウント部23は特許請求の範囲に記載の「カウント手段」、ビット長決定部30は特許請求の範囲に記載の「ビット長決定手段」、同期クロック生成部27は特許請求の範囲に記載の「同期クロック生成」、にそれぞれ相当し得るものである。
即ち、LINバスケーブル100が接続される通信端子Ctには、受信されたデータRdtを順次格納するシフトレジスタ29と、シンクフィールドSFを構成する同期ビット8ビット分の長さをカウントするビット長カウント部23と、がそれぞれ接続されており、またこのビット長カウント部23には、同期ビットの1ビット区間よりも十分に短いパルス幅(例えば同期ビットの1ビット区間の50分の1〜1000分の1)のカウントパルスCpを発生させるカウントパルス発生部21が接続されている。これにより、ビット長カウント部23では、カウントパルス発生部21から入力されるカウントパルスCpに基づいて、8ビット分の同期ビットのスタートビット(始端)からストップビット(終端)までの間で発生したカウントパルスCpの数をカウントする。なお、カウントパルスCpは、[背景技術]の欄で説明したカウントパルス(図9(A) )に相当する。また、同期ビットは、特許請求の範囲に記載の「所定のデータ」に相当し得るものである。
ビット長カウント部23の出力には、ビット長決定部30が接続されている。このビット長決定部30は、ビット長カウント部23によりカウントされたカウントパルス数を同期ビットのビット数2(nは正の整数)で除した商Qおよびその余りSに基づいて1ビット区間の1ビット長を決定するものである。本実施形態では、スタートビットとストップビットとを除いた同期ビットのビット数は8ビット(2(n=3))であるので、ビット長決定部30では、ビット長カウント部23によりカウントされたカウントパルス数を8で除する(割る)演算処理を行う。ここで、ビット長決定部30の一構成例を図4を参照して説明する。
図4に示すように、ビット長決定部30は、7つの全加算器FAa、FAb、FAc、FAd、FAe、FAf、FAgを直列に接続して構成される7桁(ビット)の全加算部31で構成されており、ビット長カウント部23のカウントレジスタ23aに対して次のように接続されている。なお、カウントレジスタ23aには、ビット長カウント部23によりカウントされたカウントパルス数がセットされている。
即ち、ビット長決定部30は、全加算部31の最下位桁に当たるFAgの一方の入力を、ビット長カウント部23のカウントレジスタ23aのLSBから3ビット目、つまり余りSの最上位ビットに接続し、またこのFAgの他方の入力を、同LSBから4ビット目、つまり商Qの最下位ビットに接続している。そして、このFAgの桁上がり出力を、その上位桁のFAfの一方の入力に接続し、このFAfの他方の入力を、カウントレジスタ23aのLSBから5ビット目に接続している。また、このFAfの桁上がり出力を、次の上位桁のFAeの一方の入力に接続し、このFAeの他方の入力を、カウントレジスタ23aのLSBから6ビット目に接続している。
以下同様に、FAd、FAc、FAb、FAaについても、下桁からの桁上がり出力を一方の入力に接続し、他方の入力には、カウントレジスタ23aのLSBから7ビット目、8ビット目、9ビット目、10ビット目を、それぞれ順番に接続している。そして、FAg、FAf、FAe、FAd、FAc、FAb、FAaによる7ビットの出力を、同期クロック生成部27のビット長レジスタ(7ビット)27aのLSBからMSBに向かって順番に接続している。なお、ビット長カウント部23のカウントレジスタ23aの最下位ビットであるLSBとその上位ビットであるLSBから2ビット目には、ビット長決定部30が接続されていない。
このようにビット長決定部30をビット長カウント部23のカウントレジスタ23aに接続することで、カウントレジスタ23aの下位3ビットについては、FAgに入力される値が「1」でない限り無視される。このため、結果的にカウントレジスタ23aを3(=n)ビット分LSB側にシフトしたこと、つまり同期ビットのビット数8(=2)で除したこととなり、その余りSに相当する下位3ビットのうちの最上位ビット(図4に示す斜線部分)が「1」である場合に限って「1」を加算する演算処理が可能となる。
即ち、図5(A) に示すように、ビット長決定部30は、カウントレジスタ23aにセットされるカウントパルス数の余りSを表す3ビットのうちの最上位ビットの符号が「0」であるときには、商Qを1ビット区間の1ビット長として決定し、余りSを表す3ビットのうちの最上位ビットの符号が「1」であるときには、商Qに1を加算した値を1ビット区間の1ビット長として決定する。つまり、余りSを表す3ビットのうちの最上位ビットの符号が「0」のときには当該余りSを切り捨て、最上位ビットの符号が「1」のときには当該余りSを切り上げて1ビット長を決定する。
これにより、図5(B) に示すように、例えば、余り(剰余)Sが3ビットで表現され、0(000B)〜7(111B)の範囲で値をとる場合には、そのうち、0以上3以下(000B〜011B)の余りSは切り捨てて1ビット長を商Q−1とし、4以上7以下(100B〜111B)の余りSは切り上げて1ビット長を商Qとするので(括弧内の「xxxB」は2進数表現を示す)、本来、ビット長カウント部23により1ビット区間で100カウントされるものであれば(N=100)、ジッタ等によりカウントパルスCpが1〜4パルス分不足してシンクフィールドSFの長さが8N−1〜8N−4になっても、その商Q+1にあたるN=100(=99+1)が1ビット長として決定される。
このため、このような余りSを全て切り捨ててしまう従来方式の演算処理に比べると、従来の誤差が最大7/8であったものを本実施形態では最大4/8まで減少させることが可能となる。なお、このようにビット長決定部30によって決定される同期ビットの1ビット長は、ビット長決定部30から同期クロック生成部27のビット長レジスタ27aに出力される。
図4に示すように、同期クロック生成部27は、ビット長決定部30の出力に接続されており、ビット長レジスタ27aにセットされている値に従って所定のタイミングで立ち上がりエッジを形成するクロックパルスを生成する。例えば、本実施形態の場合、ビット長レジスタ27aにセットされている値のほぼ半分、例えば100がセットされている場合には100/2=50のタイミングで、立ち上がりエッジを形成するクロックパルスを生成して同期クロックSynCLK としてシフトレジスタ29に出力する。これにより、シフトレジスタ29では、順次格納した受信データRdtをこの同期クロックSynCLK の立ち上がりエッジに従って順次取り出すことで、受信データRdtのビットごとの符号を判定することが可能となる。
このように本実施形態に係るLINトランシーバ20では、第1の具体例として、余りSの最大値を表現可能なビット数がm(mは正の整数)である場合において、ビット長決定部30は、余りSを表すmビットのうちの最上位ビットの符号が「0」であるときには、商Qを1ビット区間の1ビット長として決定し、余りSを表すmビットのうちの最上位ビットの符号が「1」であるときには、商Qに1を加算した値を1ビット区間の1ビット長として決定する。これにより、余りSを表すmビットのうちの最上位ビットの符号が「0」のときには当該余りSを切り捨て、最上位ビットの符号が「1」のときには当該余りSを切り上げて1ビット長を決定する。
つまり、ビット長決定部30では、0〜2−1の範囲の間で値をとる余りSのうち、0以上(2(m−1)−1)以下の余りは切り捨てて1ビット長を商Q−1とし、2(m−1)以上(2−1)以下の余りは切り上げて1ビット長を商Qとする。このため、従来のようにこのような余りSを全て切り捨てて1ビット長を商Qとしていた場合に比べるとビット長決定部30による1ビット長の演算精度を上げることが可能となり、同期クロック生成部27では、このような演算精度の高い1ビット長に基づいて同期クロックSynCLK を生成することが可能になる。したがって、カウントパルスCpの周波数を上げなくても、誤った符号判定を抑制することができる。
次に、上述した同期処理部を構成するビット長決定部30の他の構成例(第2の具体例)について、図6〜図8を参照して説明する。なお、上述した構成例(第1の具体例)と実質的に同一の構成部分については同一符号を付し説明を省略する。図6には、同期処理部のビット長決定部30の他の構成例等が図示されており、また図7には、図6に示すビット長決定部30’の動作を補足説明するタイミングチャートが図示されている。さらに図8には、ビット長決定部30’の処理内容を示す説明図が示されている。
図6に示すように、ビット長決定部30’は、加算部33、セレクタ部35、ビットカウント部37から構成されており、カウントレジスタ23aの商Qにあたる各ビットに対して加算部33およびセレクタ部35がそれぞれ接続されているほか、余りSにあたる各ビットに対してビットカウント部37が接続されている。これにより、前述したビット長決定部30に比べて余りSの値に従った柔軟な演算処理を可能にしている。
ビット長決定部30’の加算部33は、入力された値に「1」を加算する加算回路を7回路並列に備えて構成されるもので、これら7ビット分の入力には、カウントレジスタ23aのLSBから4ビット目、5ビット目、6ビット目、7ビット目、8ビット目、9ビット目、10ビット目、つまり商Qに相当する各ビットがそれぞれ接続されている。
セレクタ部35は、外部から入力される選択信号の値(H/L)に従って、一方の入力と他方の入力とを排他的に選択可能なセレクタ回路を7回路並列(SELa、SELb、SELc、SELd、SELe、SELf、SELg)に備えて構成されるものである。これらセレクタ回路(SELa〜SELg)の一方の入力には、7ビット分の加算部33の出力がそれぞれ接続されており、また他方の入力には、商Qの各ビット(カウントレジスタ23aのLSBから4ビット目〜10ビット目)がそれぞれ接続されている。さらに、これらセレクタ回路(SELa〜SELg)の各出力は、同期クロック生成部27のビット長レジスタ27aのMSBからLSBに向かって順番に接続されている。
ビットカウント部37は、3ビット入力のデータ値を外部入力されるビット信号のタイミングに同期してカウント可能なビットカウンタで、カウントの完了をHレベルの信号で出力するものである。このビットカウント部37の3ビット入力には、カウントレジスタ23aのLSBから1ビット目〜3ビット目が接続されており、またこのビットカウント部37の出力は、セレクタ部35の各セレクタ回路(SELa〜SELg)の選択信号入力に接続されている。これにより、ビットカウント部37の出力からHレベルの信号がセレクタ部35の選択信号として出力されると、各セレクタ回路(SELa〜SELg)では、同出力からLレベルの信号が出力されていたときに選択していた一方の入力から他方の入力に出力を切り替える。
このようにビット長決定部30’を構成することで、例えば、図7に示すように、通信端子Ctから入力される受信データRdt(図7(A) )のエッジ検出のタイミングで生成されるビット信号(図7(B) )に同期してカウントレジスタ23aの余りS(カウントレジスタ23aのLSBから1ビット目〜3ビット目)をビットカウント部37がカウントする。すると、セレクタ部35は、ビットカウント部37が余りSの値をカウントしている間は、加算部33を介して入力される商Qの各ビット(カウントレジスタ23aのLSBから4ビット目〜10ビット目)を出力し、カウントが完了した後は、加算部33を介することなく直接セレクタ部35に入力される商Qの各ビットを出力する。
例えば、余りSに5(101B)がセットされていた場合、ビットカウント部37は、ビット信号に同期して1,2,3,4,5をカウントしている間は、Lレベルの出力信号をセレクタ部35の各セレクタ回路(SELa〜SELg)に出力するので(図7(C) )、この期間中はセレクタ部35から加算部33を介して商Q+1(=N)が同期クロック生成部27のビット長レジスタ27aに出力される(図7(D) )。そして、このカウントが完了すると、それまでLレベルの信号を出力していたビットカウント部37はHレベルの信号をセレクタ部35の各セレクタ回路(SELa〜SELg)に出力するので(図7(C) )、この後はセレクタ部35から加算部33を介することなく商Q(=N−1)が同期クロック生成部27のビット長レジスタ27aに出力される(図7(D) )。
即ち、図8(A) に示すように、シンクフィールドSFにおいて、ジッタ等によりカウントパルスCpの不足する同期ビットが複数箇所に発生しても、1ビット長=(8N−3)/8=N−1+余り5カウントというように、カウントパルスCpが不足しない同期ビットNが5ビット、カウントパルスCpが不足する同期ビットN−1が3ビット、としてわかるので、余りSをビットカウント部37でカウントしこのカウント期間中だけ商Q+1(=N)をビット長レジスタ27aに出力し、カウント完了後は商Q(=N−1)をビット長レジスタ27aに出力するようにビット長決定部30’を構成する。これにより、データフィールドDFの前5ビットにおいては、同期クロック生成部27のビット長レジスタ27aにN(例えば100)がセットされ、データフィールドDFの後3ビットにおいては、ビット長レジスタ27aにN−1(例えば100−1=99)がセットされる。
このため、図8(B) に示すように、同期クロック生成部27では、データフィールドDFの前5ビットにおいてN(例えば100)のほぼ半分のタイミングで立ち上がりエッジを形成するクロックパルスを生成し、データフィールドDFの後3ビットにおいてN−1(例えば99)のほぼ半分のタイミングで立ち上がりエッジを形成するクロックパルスを生成して同期クロックSynCLK としてシフトレジスタ29に出力することができる。これにより、カウントパルスCpの不足する同期ビットが複数箇所に発生していても、この複数箇所分のタイミングのずれを当該箇所数に対応して調整し吸収するので、シフトレジスタ29では、順次格納した受信データRdtをこのように調整される同期クロックSynCLK の立ち上がりエッジに従って順次取り出すことで、受信データRdtのビットごとの符号を安定して判定することが可能となる。
このように本実施形態に係るLINトランシーバ20では、第2の具体例として、余りSの最大値を表現可能なビット数がm(mは正の整数)であり、また受信データRdtのビット数が2(nは正の整数)である場合において、ビット長決定部30’は、受信データRdtの上位(2−m)ビットに対しては、商Qを1ビット区間の1ビット長として決定し、受信データRdtの下位mビットに対しては、商Qから1を減算した値を1ビット区間の1ビット長として決定する。これにより、受信データRdtの上位(2−m)ビットに対しては1ビット長を商Q+1とし、受信データRdtの下位mビットに対しては商Qとする。したがって、従来のようにこのような余りSを全て切り捨てて1ビット長を商Qとしていた場合や前述の第1の具体例に比べて余りSの値に対応して柔軟に1ビット長の演算精度を上げることが可能になるので、カウントパルスCpの周波数を上げなくても、誤った符号判定をより一層抑制することができる。
本発明の一実施形態に係るLINトランシーバに接続される車載LANの構成概要を示すブロック図である。 本実施形態に係るLINトランシーバにより伝送されるメッセージフレーム(ヘッダおよびレスポンス)のデータフォーマットを示すデータ構成図である。 本実施形態に係るLINトランシーバによる同期処理部の構成を示すブロック図である。 図3に示す同期処理部のビット長決定部の一構成例を中心にその周辺構成も含めて表したブロック図である。 図4に示すビット長決定部の処理内容を示す説明図で、図5(A) はビット長カウント部のレジスタにおける除算結果(商Q、剰余S)の例、図5(B) は従来方式と図4に示すビット長決定部とによりそれぞれ決定されるビット長の比較例、を示す。 図3に示す同期処理部のビット長決定部の他の構成例を中心にその周辺構成も含めて表したブロック図である。 図6に示すビット長決定部の動作を補足説明するタイミングチャートで、図7(A) はLINバスから通信端子に入力される受信データの波形図、図7(B) はビットカウンタに入力されるビット信号の波形図、図7(C) はビットカウンタから出力されるカウント出力の波形図、図7(D) はビット長決定部から出力されるビット長出力の波形図、それぞれを示す。 図6に示すビット長決定部の処理内容を示す説明図で、図8(A) はビット長カウント部のレジスタにおける除算結果(商Q、剰余S)の例、図8(B) は図6に示すビット長決定部からビット長出力に基づいて生成される同期クロックの例、を示す。 図9(A) はシリアル通信における同期ビットの1ビット長(1ビット区間)とこの1ビット長を測定するカウントパルスの例を示す説明図、図9(B) は8ビットの同期ビットで構成されるシンクフィールドの全体長(8N)をカウントした例を示す説明図で、図9(C) は同シンクフィールドの全体長(8N)をカウントしたところ1ビット不足している例(8N−1)を示す説明図である。
符号の説明
10、12…MPU
20…LINトランシーバ(シリアル通信装置)
21…カウントパルス発生部(カウントパルス発生手段)
23…ビット長カウント部(カウント手段)
23a…カウントレジスタ
27…同期クロック生成部
27a…ビット長レジスタ
27b…クロック生成部(同期クロック発生手段)
29…シフトレジスタ
30…ビット長決定部(ビット長決定手段)
31…全加算部
33…加算部
35…セレクタ部
37…ビットカウント部
100…LINバスケーブル(データ伝送媒体)
Cp…カウントパルス
DF…データフィールド
Mn…マスタノード
Q…商
Rdt…受信データ
S…余り
SF…シンクフィールド(所定のデータ)
Sn…スレーブノード
SynCLK …同期クロック

Claims (3)

  1. データ伝送媒体から受信する所定のデータに基づいて同期クロックを生成し、この同期クロックに同期してその後に受信される受信データのビットごとの符号を判定するシリアル通信装置であって、
    前記所定のデータを構成するビット列の1ビット区間よりも十分に短いパルス幅のカウントパルスを発生するカウントパルス発生手段と、
    前記所定のデータの始端から終端までの間で発生した前記カウントパルスの数をカウントするカウント手段と、
    前記カウント手段によりカウントされた前記カウントパルス数を前記ビット列のビット数2(nは正の整数)で除した商Qおよびその余りSに基づいて前記1ビット区間の1ビット長を決定するビット長決定手段と、
    前記ビット長決定手段により決定された1ビット長に従った所定タイミングで前記同期クロックを生成する同期クロック生成手段と、
    を備えることを特徴とするシリアル通信装置。
  2. 前記余りSの最大値を表現可能なビット数がmである場合において、
    前記ビット長決定手段は、
    前記余りSを表す前記mビットのうちの最上位ビットの符号が「0」であるときには、前記商Qを前記1ビット区間の1ビット長として決定し、
    前記余りSを表す前記mビットのうちの最上位ビットの符号が「1」であるときには、
    前記商Qに1を加算した値を前記1ビット区間の1ビット長として決定することを特徴とする請求項1記載のシリアル通信装置。
  3. 前記余りSの最大値を表現可能なビット数がmであり、また前記受信データのビット数が2(nは正の整数)である場合において、
    前記ビット長決定手段は、
    前記受信データの上位(2−m)ビットに対しては、前記商Qを前記1ビット区間の1ビット長として決定し、
    前記受信データの下位mビットに対しては、前記商Qから1を減算した値を前記1ビット区間の1ビット長として決定することを特徴とする請求項1記載のシリアル通信装置。
JP2005359218A 2005-12-13 2005-12-13 シリアル通信装置 Expired - Fee Related JP4736775B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005359218A JP4736775B2 (ja) 2005-12-13 2005-12-13 シリアル通信装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005359218A JP4736775B2 (ja) 2005-12-13 2005-12-13 シリアル通信装置

Publications (2)

Publication Number Publication Date
JP2007166179A true JP2007166179A (ja) 2007-06-28
JP4736775B2 JP4736775B2 (ja) 2011-07-27

Family

ID=38248578

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005359218A Expired - Fee Related JP4736775B2 (ja) 2005-12-13 2005-12-13 シリアル通信装置

Country Status (1)

Country Link
JP (1) JP4736775B2 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007166176A (ja) * 2005-12-13 2007-06-28 Fuji Xerox Co Ltd ジョブログ管理方法、ジョブログ管理プログラム、画像処理装置および画像処理システム
JP2007166177A (ja) * 2005-12-13 2007-06-28 Fuji Xerox Co Ltd 画像処理プログラム、画像処理方法、画像処理装置および画像処理システム
JP2007166175A (ja) * 2005-12-13 2007-06-28 Fuji Xerox Co Ltd 画像処理プログラム、画像処理方法、画像処理装置および画像処理システム
JP2011234128A (ja) * 2010-04-27 2011-11-17 Yazaki Corp シリアル通信用ボーレート検出装置およびシリアル通信用ボーレート補正装置ならびにシリアル通信用ボーレート検出方法
JP2014082696A (ja) * 2012-10-18 2014-05-08 New Japan Radio Co Ltd シリアル通信装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS613544A (ja) * 1984-06-15 1986-01-09 Sony Corp 同期クロツク再生装置
JP2002101079A (ja) * 2000-09-26 2002-04-05 New Japan Radio Co Ltd クロック信号生成回路
JP2003134098A (ja) * 2001-10-24 2003-05-09 Matsushita Electric Ind Co Ltd シリアル受信装置
JP2005020308A (ja) * 2003-06-25 2005-01-20 Matsushita Electric Ind Co Ltd シリアル通信方法、およびシリアル通信装置
JP2005025440A (ja) * 2003-07-01 2005-01-27 Hitachi Ltd 情報処理装置及びマイクロコンピュータ

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS613544A (ja) * 1984-06-15 1986-01-09 Sony Corp 同期クロツク再生装置
JP2002101079A (ja) * 2000-09-26 2002-04-05 New Japan Radio Co Ltd クロック信号生成回路
JP2003134098A (ja) * 2001-10-24 2003-05-09 Matsushita Electric Ind Co Ltd シリアル受信装置
JP2005020308A (ja) * 2003-06-25 2005-01-20 Matsushita Electric Ind Co Ltd シリアル通信方法、およびシリアル通信装置
JP2005025440A (ja) * 2003-07-01 2005-01-27 Hitachi Ltd 情報処理装置及びマイクロコンピュータ

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007166176A (ja) * 2005-12-13 2007-06-28 Fuji Xerox Co Ltd ジョブログ管理方法、ジョブログ管理プログラム、画像処理装置および画像処理システム
JP2007166177A (ja) * 2005-12-13 2007-06-28 Fuji Xerox Co Ltd 画像処理プログラム、画像処理方法、画像処理装置および画像処理システム
JP2007166175A (ja) * 2005-12-13 2007-06-28 Fuji Xerox Co Ltd 画像処理プログラム、画像処理方法、画像処理装置および画像処理システム
JP4725726B2 (ja) * 2005-12-13 2011-07-13 富士ゼロックス株式会社 画像処理装置、ジョブログ管理プログラムおよび画像処理システム
JP4736774B2 (ja) * 2005-12-13 2011-07-27 富士ゼロックス株式会社 画像処理プログラム、画像処理方法、画像処理装置および画像処理システム
US8233173B2 (en) 2005-12-13 2012-07-31 Fuji Xerox Co., Ltd. Computer readable medium for image processing, image processing method, image processing device, and image processing system
US8498003B2 (en) 2005-12-13 2013-07-30 Fuji Xerox Co., Ltd. Job log control method, computer readable medium for the same, image processing device, and image processing system
JP2011234128A (ja) * 2010-04-27 2011-11-17 Yazaki Corp シリアル通信用ボーレート検出装置およびシリアル通信用ボーレート補正装置ならびにシリアル通信用ボーレート検出方法
JP2014082696A (ja) * 2012-10-18 2014-05-08 New Japan Radio Co Ltd シリアル通信装置

Also Published As

Publication number Publication date
JP4736775B2 (ja) 2011-07-27

Similar Documents

Publication Publication Date Title
JP4327764B2 (ja) データ受信装置および同期信号検出方法ならびにプログラム
JP4736775B2 (ja) シリアル通信装置
JP2007324679A (ja) シリアル通信用ボーレートジェネレータ
JP2005160119A (ja) データ送信及び受信方法、データ送信及び受信装置
EP3576354B1 (en) Slave node for a can bus network
JP5936030B2 (ja) 情報処理装置、情報処理方法、及びプログラム
JP2011234128A (ja) シリアル通信用ボーレート検出装置およびシリアル通信用ボーレート補正装置ならびにシリアル通信用ボーレート検出方法
US6385319B1 (en) Encoding circuit and method of detecting block code boundary and establishing synchronization between scrambler and descrambler
US7177283B2 (en) Transmitting and receiving circuit and transmitting and receiving method
JP2011035473A (ja) ボーレートエラー検出回路、ボーレートエラー検出方法
US8331427B2 (en) Data processing apparatus
JP2010041567A (ja) シリアル通信ネットワークシステム
JP6205152B2 (ja) シリアル通信システム、受信装置およびシリアル通信方法
CN114265811B (zh) 基于fpga的数据采样时钟沿自适应系统和方法
JPWO2004059931A1 (ja) データ伝送システムおよびデータ伝送装置
JP2958601B2 (ja) データ通信方式
US20070234174A1 (en) Method and Device for Error Handling in the Transmission of Data Via a Communications System
CN107122325B (zh) 基于通用串行总线的数据传输系统及方法
CN112188446A (zh) 一种同步信号发送方法、终端及装置、存储介质
KR100966925B1 (ko) 패킷 신호 프로세싱 아키텍쳐
CN117675156B (en) Clock self-calibration circuit, data receiving system, controller and vehicle
US11341015B2 (en) UART receiver with adaptive sample timing control using a numerically-controlled oscillator
JP6806748B2 (ja) 通信システム、送信装置、通信方法、および、送信方法
JP2000101483A (ja) 通信システム,および通信装置
JP3911278B2 (ja) データ送信方法及びデータ送信装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071226

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100806

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100810

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101004

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: 20110405

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110418

R151 Written notification of patent or utility model registration

Ref document number: 4736775

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140513

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees