JP6378966B2 - 調歩同期式シリアルデータ取得装置及び調歩同期式シリアルデータ取得方法 - Google Patents

調歩同期式シリアルデータ取得装置及び調歩同期式シリアルデータ取得方法 Download PDF

Info

Publication number
JP6378966B2
JP6378966B2 JP2014164837A JP2014164837A JP6378966B2 JP 6378966 B2 JP6378966 B2 JP 6378966B2 JP 2014164837 A JP2014164837 A JP 2014164837A JP 2014164837 A JP2014164837 A JP 2014164837A JP 6378966 B2 JP6378966 B2 JP 6378966B2
Authority
JP
Japan
Prior art keywords
clock
start bit
input
circuit
serial 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.)
Active
Application number
JP2014164837A
Other languages
English (en)
Other versions
JP2016040892A (ja
Inventor
啓介 清水
啓介 清水
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.)
Lapis Semiconductor Co Ltd
Original Assignee
Lapis Semiconductor Co Ltd
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 Lapis Semiconductor Co Ltd filed Critical Lapis Semiconductor Co Ltd
Priority to JP2014164837A priority Critical patent/JP6378966B2/ja
Priority to CN201510486514.7A priority patent/CN105376041B/zh
Priority to US14/821,899 priority patent/US9660795B2/en
Publication of JP2016040892A publication Critical patent/JP2016040892A/ja
Application granted granted Critical
Publication of JP6378966B2 publication Critical patent/JP6378966B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L5/00Arrangements affording multiple use of the transmission path
    • H04L5/22Arrangements affording multiple use of the transmission path using time-division multiplexing
    • H04L5/24Arrangements affording multiple use of the transmission path using time-division multiplexing with start-stop synchronous converters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/04Speed or phase control by synchronisation signals
    • H04L7/041Speed or phase control by synchronisation signals using special codes as synchronising signal
    • H04L7/044Speed or phase control by synchronisation signals using special codes as synchronising signal using a single bit, e.g. start stop bit

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Dc Digital Transmission (AREA)

Description

本発明は、調歩同期式シリアルデータ取得装置及び調歩同期式シリアルデータ取得方法に関する。
調歩同期式シリアル通信では、クロックを伝送する信号線のように、常にシリアルデータの同期をとるための制御用信号線が存在しない。そのため、各通信回路内で通信用のクロックに基づいてボーレートを生成して通信を行っている。当然、各信号回路内で生成されるボーレートには誤差が生じる。ボーレートの誤差は、シリアルデータの取得タイミングの誤差となって現れる。
従来の調歩同期式シリアル通信では、一例として図7に示すように、受信データが受信回路内で生成されたボーレートの立ち上がりエッジ(固定化されたタイミング)でサンプリングされる。そして、各通信回路間のボーレートの誤差は、ストップビット検出時に受信回路内で生成されたボーレートのハイレベル区間が調整されることによって補正される。
また、特許文献1には、ボーレートの誤差を抑制するため技術として、受信データを同期化する同期クロックの出力を制御する同期回路が開示されている。この同期回路では、受信データの開始位置が検出クロックの立ち上がりエッジと立ち下がりエッジで検出され、立ち上がりエッジ及び立ち下がりエッジのうち開始位置の検出に近い方の同期クロックが出力される。
特開2000−216834号公報
数十kHzオーダのクロックである低速のクロックでサンプリングする方式を採用した場合、一例として図9(図9に示す例では、38.4kHzのクロック)に示すように、スタートビットが入力されるタイミングによっては、スタートビットの検出が最大で1クロック分遅れてしまうという問題点がある。
一方、特許文献1に記載の技術では、立ち上がりエッジで動作する回路と立ち下がりエッジで動作する回路とが必要になるため、ボーレートを生成するカウンタの回路規模が倍増してしまう。
また、シリアルデータの取得タイミングの誤差を抑制する技術として、クロックの何れかのエッジで検出されたかによって全ての動作クロックエッジを動的に切り替えるサンプリング方式も考えられる。しかし、この方式は、現在の主流であるRTL(Register Transfer Level)による同期設計(例えば、クロックの立ち上がりでデータを取得することを前提とした設計)や、同期設計を前提とした静的タイミング解析(STA)で推奨されていない。その上、難易度の高い設計や検証が必要になる。
本発明は上記問題点を解決するために成されたものであり、シリアルデータの取得タイミングの誤差を簡易な構成で抑制することができる調歩同期式シリアルデータ取得装置及び調歩同期式シリアルデータ取得方法を提供することを目的とする。
上記目的を達成するために、請求項1に記載の調歩同期式シリアルデータ取得装置は、スタートビットを含むシリアルデータの取得タイミングを規定するクロックが入力される回数をカウントするカウンタと、前記スタートビットが入力されたタイミングでの前記クロックの遷移に応じて、前記スタートビットに対応する期間内に、前記カウンタによりカウントされるカウント値の上限値を変更する変更部と、を含む。
上記目的を達成するために、請求項5に記載の調歩同期式シリアルデータ取得方法は、スタートビットを含むシリアルデータの取得タイミングを規定するクロックが入力される回数をカウントし、前記スタートビットが入力されたタイミングでの前記クロックの遷移に応じて、前記スタートビットに対応する期間内に、カウントしたカウント値の上限値を変更することを含む。
本発明によれば、シリアルデータの取得タイミングの誤差を簡易な構成で抑制することができる、という効果が得られる。
実施形態に係る調歩同期式シリアルデータ取得装置の構成の一例を示すブロック図である。 実施形態に係る調歩同期式シリアルデータ取得装置に含まれるスタートビット検出回路及び検出タイミング判別回路の構成の一例を示す回路図である。 実施形態に係る調歩同期式シリアルデータ取得装置においてクロックの立ち上がりエッジよりも先にクロックの立ち下がりエッジでスタートビットが検出される場合の信号の遷移状態の一例を示すタイムチャートである。 実施形態に係る調歩同期式シリアルデータ取得装置においてクロックの立ち下がりエッジよりも先にクロックの立ち上がりエッジでスタートビットが検出される場合の信号の遷移状態の一例を示すタイムチャートである。 実施形態に係る調歩同期式シリアルデータ取得装置で実行されるカウント処理の流れの一例を示すフローチャートである。 実施形態に係る調歩同期式シリアルデータ取得装置の構成の変形例を示すブロック図である。 受信回路内のボーレートの誤差をストップビット検出時に補正される場合の受信データ、送信回路内のボーレート、及び受信回路内のボーレートの遷移状態の一例を示すタイムチャートである。 高速のクロックと受信データとの対応関係の一例を示すタイムチャートである。 低速のクロックと受信データとの対応関係の一例を示すタイムチャートである。
以下、図面を参照して、本発明を実施するための形態例について詳細に説明する。
一例として図1に示すように、調歩同期式シリアルデータ取得装置10は、調歩同期式でシリアルデータを1フレーム毎に取得する装置であり、低速発振回路12、カウンタ14、変更部16、及び受信データ取得部18を含む。なお、1フレーム分のシリアルデータとは、例えば、Mビットのスタートビット、N(≧M)ビットのデータビット、Mビットのパリティビット、及びMビットのストップビットを含むデータを指す。
低速発振回路12は、シリアルデータの取得タイミングを規定するクロックとして38.4kHzのクロックを生成して出力する。
カウンタ14は、低速発振回路12に接続されており、低速発振回路12からクロックが入力される回数をカウントする。なお、本実施形態では、1クロック毎にカウント値が1加算され、カウンタ14により“0”から“2”又は“3”までカウントアップされる。
変更部16は、スタートビットが入力されたタイミングでのクロックの遷移に応じて、カウンタ14によりカウントされるスタートビットに対応するカウント値の上限値を変更する。なお、クロックの遷移とは、クロックの立ち上がり及び立ち下がりを指す。また、本実施形態では、スタートビットが入力されたタイミングでのクロックの遷移に応じて、カウント値の上限値として“2”と“3”が選択的に採用される。
変更部16は、スタートビット検出回路20、検出タイミング判別回路22、及び減算回路24を含む。スタートビット検出回路20及び検出タイミング判別回路22は、低速発振回路12に接続されており、クロックが入力される。
スタートビット検出回路20には、受信データが入力される。ここで、受信データとは、例えば、調歩同期式シリアルデータ取得装置10の入力ポート(図示省略)に入力されたシリアルデータを指す。スタートビット検出回路20は、低速発振回路12に接続されており、クロックの立ち上がりエッジと立ち下がりエッジとのうちのスタートビットが入力されたタイミングで先に入力されたエッジでスタートビットを検出する。そして、スタートビット検出回路20は、検出タイミング判別回路22に接続されており、スタートビットを検出すると、スタートビットを検出したことを示すスタートビット検出信号を検出タイミング判別回路22に出力する。
また、スタートビット検出回路20は、カウンタ14に接続されており、立ち上がりエッジでスタートビットを検出すると、カウントの開始を指示するカウントスタート信号をカウンタ14に出力する。カウンタ14は、カウントスタート信号が入力されると、カウントを“0”から開始する。
なお、本実施形態において、クロックの立ち上がりは本発明に係る第1遷移の一例であり、クロックの立ち下がりは本発明に係る第2遷移の一例である。
検出タイミング判別回路22は、クロックの立ち上がりエッジ及び立ち下がりエッジのうちの立ち下がりエッジで先にスタートビットが検出されたか否かを判別する。検出タイミング判別回路22は、カウンタ14及び減算回路24に接続されており、立ち下がりエッジで先にスタートビットが検出されたと判別した場合に、減算指示信号を減算回路24に出力する。減算指示信号は、カウント値の上限値を1減算することを指示する信号である。
減算回路24は、カウンタ14に接続されており、カウント値が入力される。減算回路24は、入力された減算指示信号及びカウント値に基づいて、カウンタ14のカウント値をクリアする(カウント値を“0”に戻す)ことを指示するカウントクリア信号をカウンタ14及び検出タイミング判別回路22に出力する。カウンタ14は、カウントクリア信号が入力されると、カウント値をクリアする。検出タイミング判別回路22は、カウントクリア信号が入力されると、減算指示信号をクリアする。なお、カウントクリア信号は、減算指示信号が入力された状態の減算回路24に対してカウント値の上限値(例えば、“3”)を1減算したカウント値(例えば、“2”)が入力された場合に、減算回路24によって出力される。また、カウントクリア信号は、減算指示信号がクリアされると、これ以降、カウンタ14から減算回路24にカウント値の上限値(例えば、“3”)が入力される毎に減算回路24によって出力される。
受信データ取得部18は、シフトレジスタ26及び受信レジスタ28を含む。シフトレジスタ26は、低速発振回路12、カウンタ14、及び受信レジスタ28に接続されており、カウント値の上限値である“3”が入力されると、受信データを取得する。そして、シフトレジスタ26は、取得した受信データをクロックに応じて受信レジスタ28に出力する。受信レジスタ28は、シフトレジスタ26から入力された受信データを保持する。
一例として図2に示すように、スタートビット検出回路20は、インバータ30、第1フリップフロップ32、及び第2フリップフロップ34を含む。また、検出タイミング判別回路22は、第1AND回路36、第2AND回路38、OR回路40、及び第3フリップフロップ42を含む。なお、第1フリップフロップ32、第2フリップフロップ34、及び第3フリップフロップ42は、D型のフリップフロップである。
インバータ30には、受信データが入力される。インバータ30は、入力された受信データを反転して出力する。
第1フリップフロップ32の一方の入力端子には、インバータ30の出力端子が接続されており、インバータ30によって反転された受信データが入力される。第1フリップフロップ32の他方の入力端子には、反転されたクロックが入力される。第1フリップフロップ32の出力端子には、第1AND回路36の一方の入力端子が接続されている。第1フリップフロップ32は、クロックの立ち下がりエッジで受信データのスタートビットを検出し、スタートビット信号を第1AND回路36の一方の入力端子に出力する。
第2フリップフロップ34の一方の入力端子には、インバータ30の出力端子が接続されており、インバータ30によって反転された受信データが入力される。第2フリップフロップ32の他方の入力端子には、クロックが入力される。第2フリップフロップ34の出力端子には、第1AND回路36の他方の入力端子が接続されるとともにカウンタ14が接続されている。第2フリップフロップ34は、クロックの立ち上がりエッジで受信データのスタートビットを検出し、スタートビット信号を第2AND回路36の他方の入力端子に出力するとともに、カウンタ14にカウントスタート信号を出力する。
第2AND回路36の一方の入力端子には、第1フリップフロップ34からスタートビット信号が入力される。第2AND回路36の他方の入力端子には、第2フリップフロップ34から、反転されたスタートビット信号が入力される。第2AND回路36の出力端子には、OR回路40の一方の入力端子が接続されている。
第2AND回路36は、クロックの立ち上がりエッジ及び立ち下がりエッジのうちの立ち下がりエッジで先にスタートビットが検出された場合に判別信号を出力する。また、第2AND回路36は、クロックの立ち上がりエッジ及び立ち下がりエッジのうちの立ち上がりエッジで先にスタートビットが検出された場合に判別信号を出力しない。なお、ここで、判別信号とは、クロックの立ち上がりエッジ及び立ち下がりエッジのうちの立ち下がりエッジで先にスタートビットが検出されたと判別したことを示す信号を指す。
OR回路40の出力端子には、第2AND回路38の一方の入力端子が接続されている。第2AND回路38の他方の入力端子には、反転されたカウントクリア信号が入力される。第2AND回路38の出力端子には、第3フリップフロップ42の一方の入力端子が接続されている。第3フリップフロップ42の他方の入力端子には、クロックが入力される。第3フリップフロップ42の出力端子には、OR回路40の他方の入力端子及び減算回路24が接続されている。
第3フリップフロップ42は、OR回路40の第1入力端子に判別信号が入力されると、減算指示信号を減算回路24(図1参照)に出力し、反転されたカウントクリア信号が第2AND回路38に入力されると、減算指示信号をクリアする。
次に、調歩同期式シリアルデータ取得装置10の動作について説明する。
なお、以下では、説明の便宜上、1フレーム分のシリアルデータである受信データが調歩同期式シリアルデータ取得装置10によって取得される場合について説明する。また、以下では、説明の便宜上、受信データの取得がクロックの立ち上がりエッジで行われることを前提として説明する。また、以下では、受信データが9600bpsで受信されたシリアルデータである場合について説明する。この場合、各ビットの幅は約0.104ミリ秒(1s/9600b)であり、38.4kHz(0.026ミリ秒)の4クロック分に相当する。更に、以下では、説明の便宜上、信号レベルがハイレベルの信号をH信号と称し、信号レベルがローレベルの信号をL信号と称する。
先ず、図3を参照して、スタートビット検出回路20によりクロックの立ち上がりエッジよりも先にクロックの立ち下がりエッジでスタートビットが検出される場合について説明する。
一例として図3に示すように、入力された受信データに含まれるスタートビットが第1フリップフロップ32によってクロックの立ち下がりエッジで検出されると、第1フリップフロップ32の出力がローレベルからハイレベルに遷移し、H信号であるスタートビット検出信号が第1フリップフロップ32により出力される。
第2フリップフロップ34によりスタートビット検出信号が出力されていない状態で第1フリップフロップ32から第1AND回路36にスタートビット検出信号が入力されると、第1AND回路36により半クロック分のH信号である判別信号が出力される。判別信号がOR回路40に入力されると、OR回路40により半クロック分のH信号が出力され、OR回路40から第2AND回路38にH信号が入力されると、第2AND回路38により半クロック分のH信号が出力される。
ここで、第2フリップフロップ34によってクロックの立ち上がりエッジでスタートビットが検出されると、第2フリップフロップ34の出力がローレベルからハイレベルに遷移し、H信号であるスタートビット検出信号が第2フリップフロップ34により出力される。
第2フリップフロップ34からカウンタ14にスタートビット検出信号がカウントスタート信号として入力されると、カウンタ14によるカウントが“0”から開始される。カウンタ14のカウント値は1クロックにつき1加算され、減算回路24及びシフトレジスタ26に出力される。
第2AND回路38から第3フリップフロップ42にH信号が入力されると、3クロック分のH信号である減算指示信号が減算回路24に出力される。
減算指示信号が入力された状態の減算回路24にカウント値の“2”が入力されると、減算回路24により1クロック分のH信号であるカウントクリア信号がカウンタ14及び第2AND回路38に出力される。減算回路24からカウンタ14にカウントクリア信号が入力されると、カウント値の“2”がクリアされてカウント値が“0”にリセットされる。また、減算回路24から第2AND回路38にカウントクリア信号が入力されると、第3フリップフロップ42の出力がハイレベルからローレベルに遷移して減算指示信号がクリアされる。減算指示信号がクリアされると、これ以降のデータ取得(例えば、データビットの取得)では、カウント値の上限値が“2”から“3”に復帰する。
減算指示信号がクリアされると、これ以降、カウンタ14によりクロックの入力に応じて“0”からカウントが開始され、カウント値が減算回路24及びシフトレジスタ26に出力される。カウント値の上限値である“3”がシフトレジスタ26に入力されると、シフトレジスタ26により受信データが取得される。シフトレジスタ26によって取得された受信データは、クロックに同期して受信レジスタ28に出力される。シフトレジスタ26から受信レジスタ28に入力された受信データは、受信レジスタ28によって保持される。
減算回路24にカウント値の“3”が入力されると、減算回路24によりカウントクリア信号がカウンタ14に出力される。減算回路24からカウンタ14にカウントクリア信号が入力されると、カウント値の“3”がクリアされ、再び“0”からカウントが開始される。
次に、図4を参照して、スタートビット検出回路20によりクロックの立ち下がりエッジよりも先にクロックの立ち上がりエッジでスタートビットが検出される場合について説明する。
一例として図4に示すように、入力された受信データに含まれるスタートビットが第2フリップフロップ34によってクロックの立ち上がりでエッジが検出されると、第2フリップフロップ34によりスタートビット信号が出力される。
第2フリップフロップ34によってスタートビットが検出されてから半クロックが経過して第1フリップフロップ32によってクロックの立ち下がりエッジでスタートビットが検出されると、第1フリップフロップ32によりスタートビット信号が出力される。
このように、クロックの立ち下がりエッジよりも先にクロックの立ち上がりエッジでスタートビットが検出されると、第1AND回路36により判別信号が出力されない。そのため、第3フリップフロップ42により減算指示信号も出力されない。
第2フリップフロップ34からカウンタ14にスタートビット検出信号がカウントスタート信号として入力されると、カウンタ14によるカウントが“0”から開始される。カウンタ14のカウント値は減算回路24及びシフトレジスタ26に出力される。
減算指示信号が入力されていない状態の減算回路24にカウント値の上限値である“3”が入力されると、減算回路24によりカウントクリア信号がカウンタ14に出力される。減算回路24からカウンタ14にカウントクリア信号が入力されると、カウント値の“3”がクリアされてカウント値が“0”にリセットされる。
これ以降、カウンタ14によりクロックの入力に応じてカウントされ、カウント値が減算回路24及びシフトレジスタ26に出力される。カウント値の上限値である“3”がシフトレジスタ26に入力されると、シフトレジスタ26により受信データが取得される。シフトレジスタ26によって取得された受信データは、クロックに同期して受信レジスタ28に出力される。シフトレジスタ26から受信レジスタ28に入力された受信データは、受信レジスタ28によって保持される。また、減算回路24にカウント値の“3”が入力されると、減算回路24からカウンタ14にカウントクリア信号が入力され、カウント値の“3”クリアされてカウント値が“0”にリセットされる。
次に、調歩同期式シリアルデータ取得装置10によって実行されるカウント処理について図5を参照して説明する。
図5に示すカウント処理では、先ず、ステップ100で、変更部16は、スタートビットが入力されたか否かを判定する。ステップ100において、スタートビットが入力されていない場合は、判定が否定されて、ステップ100の判定が再び行われる。ステップ100において、スタートビットが入力された場合は、判定が肯定されて、ステップ102へ移行する。
ステップ102で、変更部16は、ステップ100にてスタートビットがクロックの立ち上がりエッジで入力されたか否かを判定する。ステップ102において、ステップ100にてスタートビットがクロックの立ち下がりエッジで入力された場合は、判定が否定されて、ステップ104へ移行する。ステップ102において、ステップ100にてスタートビットがクロックの立ち上がりエッジで入力された場合は、判定が肯定されて、ステップ108へ移行する。
ステップ104で、変更部16は、減算指示信号を生成することでカウンタ14のカウント値の上限値を“3”から“2”に変更し、その後、ステップ106へ移行する。
ステップ106で、変更部16は、クロックの立ち上がりエッジが入力されたか否かを判定する。ステップ106において、クロックの立ち上がりエッジが入力されていない場合は、判定が否定されて、ステップ106の判定が再び行われる。ステップ106において、クロックの立ち上がりエッジが入力された場合は、判定が肯定されて、ステップ108へ移行する。
ステップ108で、カウンタ14は、カウントを“0”から開始し、その後、ステップ110へ移行する。
ステップ110で、カウンタ14は、クロックの立ち上がりエッジが入力されたか否かを判定する。ステップ110において、クロックの立ち上がりエッジが入力されていない場合は、判定が否定されて、ステップ110の判定が再び行われる。ステップ110において、クロックの立ち上がりエッジが入力された場合は、判定が肯定されて、ステップ112へ移行する。
ステップ112で、カウンタ14は、カウント値に1を加算し、その後、ステップ114へ移行する。
ステップ114で、変更部16は、カウンタ14のカウント値が上限値に達したか否かを判定する。ステップ114において、カウンタ14のカウント値が上限値に達していない場合は、判定が否定されて、ステップ110へ移行する。ステップ114において、カウンタ14のカウント値が上限値に達した場合は、判定が肯定されて、ステップ116へ移行する。
ステップ116で、変更部16は、現時点でのカウンタ14のカウント値の上限値がステップ104の処理で変更された後の上限値(=2)か否かを判定する。ステップ116において、現時点でのカウンタ14のカウント値の上限値がステップ104の処理で変更された後の上限値の場合(上限値=2の場合)は、判定が肯定されて、ステップ118へ移行する。ステップ116において、現時点でのカウンタ14のカウント値の上限値がステップ104の処理で変更された後の上限値でない場合(上限値=3の場合)は、判定が否定されて、ステップ120へ移行する。
ステップ118で、変更部16は、減算指示信号をクリアすることでカウンタ14のカウント値の上限値(=2)を元の値(=3)に戻し、その後、ステップ120へ移行する。
ステップ120で、変更部16は、カウントクリア信号をカウンタ14に出力し、その後、ステップ122へ移行する。ステップ120の処理が実行されることによってカウントクリア信号がカウンタ14に入力されると、カウント値がクリアされる。
ステップ122で、変更部16は、ストップビットが入力されたか否かを判定する。ステップ122において、スタートビットが入力されていない場合は、判定が否定されて、ステップ106へ移行する。ステップ122において、スタートビットが入力された場合は、判定が肯定されて、本カウント処理を終了する。
以上説明したように、調歩同期式シリアルデータ取得装置10では、変更部16により、受信データに含まれるスタートビットが入力されたタイミングでのクロックの遷移に応じて、スタートビットに対応するカウント値の上限値が変更される。すなわち、スタートビットが入力されたタイミングでのクロックの遷移が立ち上がりの場合は、スタートビットに対応するカウント値の上限値が“3”となり、スタートビットが入力されたタイミングでのクロックの遷移が立ち下がりの場合は、スタートビットに対応するカウント値の上限値が“2”となる。これにより、スタートビットの検出遅れが半クロック分抑制され、結果的に、1フレーム分の受信データの取得タイミングの誤差が半クロック分の誤差に抑制される。
ところで、仮に、1フレーム分のサンプリングに要するクロック数が44クロックから45クロックになると、45/44*100=102.27となり、受信データの取得タイミングの誤差として約2.27%の誤差が生じる。つまり、これが1クロック分の誤差である。一般的に調歩同期式シリアル通信では、1フレーム当たり約3%が許容される誤差の上限とされているため、約2.27%の誤差が生じると、通信相手に許容される誤差は0.73%(=3−2.27)になってしまう。
これに対し、調歩同期式シリアルデータ取得装置10によれば、受信データの取得タイミングの誤差が半クロック分の誤差である約1.13%の誤差に抑制されるので、1クロック分の誤差が生じる場合に比べ、通信相手の誤差の許容範囲が拡がる。
一方、従来の調歩同期式シリアル通信では、受信データの先頭のデータであるスタートビットの検出精度を高くするために、一例として図8に示すように、数MHzオーダのクロックである高速化されたクロックでサンプリングする方式が多く採用されている。
しかし、高速化されたクロックでサンプリングする方式を採用した場合、高周波数でクロックが生成されるため、電流を無駄に消費してしまうという問題点がある。
これに対し、調歩同期式シリアルデータ取得装置10によれば、受信データの取得タイミングの誤差を抑制するにあたって、高周波数でクロックを生成する必要がないので、高速化されたクロックでサンプリングする方式を採用した場合に比べ、消費電流の増加が抑制される。
また、調歩同期式シリアルデータ取得装置10によれば、1フレーム分の受信データのうちのスタートビットに関してのみカウント値の上限値が変更されるようにすれば良い。よって、調歩同期式シリアルデータ取得装置10は、RTLによる同期設計を前提としている場合において、クロックの何れのエッジでサンプリングしたかによって全ての動作クロックエッジを動的に切り替えるという従来技術に比べ、RTLによる同期設計の難易度を低くすることができる。
また、調歩同期式シリアルデータ取得装置10は、クロックの立ち上がりエッジで動作する回路及びクロックの立ち上がりエッジで動作する回路により制御される出力段でクロックをセレクトするという従来技術に比べ、回路規模の増大を抑制することができる。
このように、調歩同期式シリアルデータ取得装置10は、受信データの取得タイミングの誤差を簡易な構成で抑制することができる。
また、調歩同期式シリアルデータ取得装置10では、クロックの立ち上がりエッジと立ち下がりエッジとでスタートビットが検出される。そして、クロックの立ち上がりエッジで先にスタートビットが検出された場合、クロックの立ち上がりエッジに対して半クロック以内にスタートビットが検出されたと判断され、カウント値の上限値が減算されない。また、クロックの立ち下がりエッジで先にスタートビットが検出された場合、スタートビットの検出が半クロック以上遅れたと判断され、カウント値の上限値が1減算される。すなわち、クロックの立ち下がりエッジで先にスタートビットが検出された場合、スタートビット区間を−1クロックすることで0.5(=1−0.5)クロックの誤差が抑制される。
これにより、調歩同期式シリアルデータ取得装置10では、1フレーム分の受信データのうちのスタートビットの検出のみに対して2倍の周波数のクロックを適用した場合と同様の効果が得られる。
また、調歩同期式シリアルデータ取得装置10では、実際に2倍の周波数のクロックが生成されるわけではなく、クロックの立ち上がりエッジと立ち下がりエッジとでスタートビットが検出される。よって、実際に2倍の周波数のクロックが生成される場合に比べ、少ない消費電流で受信データの取得タイミングの誤差が抑制され、回路規模の増大も抑制される。
また、調歩同期式シリアルデータ取得装置10では、減算された上限値である“2”がカウンタ14によりカウントされた場合に、カウンタ14のカウント値がリセットされ、かつ、上限値が、減算される前の値である“3”に戻される。これにより、調歩同期式シリアルデータ取得装置10は、カウント値の上限値が減算された場合であっても、上限値が減算されない場合と同様の構成でデータビットを取得することができる。
また、調歩同期式シリアルデータ取得装置10では、カウンタ14によるカウントがクロックの立ち上がりエッジで行われる。これにより、調歩同期式シリアルデータ取得装置10は、カウント値の上限値が変更された場合であっても、カウント値の上限値がカウントされるタイミングをスタートビットの終了位置に合わせることができる。
なお、上記実施形態では、変更部16を有する調歩同期式シリアルデータ取得装置10を例示したが、これに限らず、例えば、図6に示すように、調歩同期式シリアルデータ取得装置50であっても本発明は成立する。
ここで、図6を参照して、調歩同期式シリアルデータ取得装置10と調歩同期式シリアルデータ取得装置50との相違点について説明する。調歩同期式シリアルデータ取得装置50は、調歩同期式シリアルデータ取得装置10に比べ、変更部16に代えてサンプリング部52を有する点、カウンタ部54を有する点、及び受信データ取得部18に代えて受信データ取得部56を有する点が異なる。
サンプリング部52は、スタートビット検出回路58及び検出タイミング判別回路60を有する。サンプリング部52には、受信データ及びクロックが入力される。サンプリング部52に入力された受信データ及びクロックは、スタートビット検出回路58に入力される。スタートビット検出回路58は、スタートビット検出信号を検出タイミング判別回路60に出力すると共に、カウントスタート信号を生成する。検出タイミング判別回路60は、減算指示信号を生成する。サンプリング部52は、カウントスタート信号及び減算指示信号をカウンタ部54に出力する。
カウンタ部54は、クロックが入力される回数をカウントするカウント回路であるカウンタ62、及び減算回路64を有する。カウンタ部54は、減算回路64によって生成されたカウントクリア信号をサンプリング部52に出力する。減算回路64は、カウントクリア信号をカウンタ62に出力する。カウンタ部54にカウントスタート信号が入力されると、カウンタ62はカウントを開始する。カウンタ62は、カウント値を減算回路に出力する。カウンタ部54は、カウンタ62のカウント値を受信データ取得部56に出力する。
受信データ取得部56は、シフトレジスタ66及び受信レジスタ68を有する。受信データ取得部56には、カウント値、受信データ、及びクロックが入力される。受信データ取得部56にカウント値がシフトレジスタ66に入力されると、シフトレジスタ66は、受信データを取得し、取得した受信データをクロックに同期して受信レジスタ68に出力する。受信レジスタ68は、入力された受信データを保持する。
また、上記実施形態では、受信データがクロックの立ち上がりで取得されることを前提として、クロックの立ち上がりエッジよりも先にクロックの立ち下がりエッジでスタートビットが検出された場合にカウント値の上限値が減算される場合を例示したが、本発明はこれに限定されるものではない。例えば、受信データがクロックの立ち下がりで取得されることを前提として、クロックの立ち下がりエッジよりも先にクロックの立ち上がりエッジでスタートビットが検出された場合にカウント値の上限値が減算されるようにしてもよい。但し、この場合、クロックの立ち下がりエッジよりも先にクロックの立ち下がりエッジでスタートビットが検出された場合にカウント値の上限値が減算されないようにする。
また、上記実施形態では、4クロック毎にカウント値がリセットされる場合を例示したが、4クロック未満又は5クロック以上のクロック数毎にカウント値がリセットされるようにしてもよい。
また、上記実施形態では、シリアルデータの取得がクロックの立ち上がりエッジで行われることを前提としているため、カウンタ14によるカウントがクロックの立ち上がりエッジで行われる場合を例示したが、本発明はこれに限定されるものではない。すなわち、シリアルデータの取得がクロックの立ち下がりエッジで行われる場合には、カウンタ14によるカウントがクロックの立ち下がりエッジで行われるようにすればよい。
また、上記実施形態では、低速のクロックを例示したが、本発明は高速のクロックであっても成立することは言うまでもない。
以上の実施形態に関し、更に以下の付記を開示する。
(付記1)
スタートビットを含むシリアルデータと前記シリアルデータの取得タイミングを規定するクロックとが入力される調歩同期式シリアルデータ取得装置であって、
前記クロックが入力される回数をカウントするカウンタ部と、
前記カウンタ部によりカウントされる前記スタートビットに対応するカウント値の上限値を変更する減算回路と、を含む調歩同期式シリアルデータ取得装置。
(付記2)
前記カウンタ部は、前記減算回路を有する付記1に記載の調歩同期式シリアルデータ取得装置。
(付記3)
前記クロックの第1遷移と第2遷移とで前記スタートビットを検出すると共に、前記スタートビットを検出した際の前記クロックの遷移に応じて、前記上限値の減算を指示する減算指示信号を前記減算回路に出力するサンプリング部を更に含み、
前記減算回路は、前記サンプリング部から前記減算指示信号が入力された場合に、前記上限値を減算することで前記上限値を変更する付記1又は付記2に記載の調歩同期式シリアルデータ取得装置。
(付記4)
前記サンプリング部は、前記スタートビットを前記第1遷移で先に検出した場合に前記減算指示信号を出力せず、前記スタートビットを前記第2遷移で先に検出した場合に前記減算指示信号を出力する付記3に記載の調歩同期式シリアルデータ取得装置。
(付記5)
前記カウンタ部は、前記回数をカウントするカウント回路を有し、
前記減算回路は、前記カウント値をクリアすることを指示するカウントクリア信号を前記カウント回路及び前記サンプリング部に出力し、
前記カウント回路は、前記減算回路から前記カウントクリア信号が入力された場合に前記カウント値をクリアし、
前記サンプリング部は、前記減算回路から前記カウントクリア信号が入力された場合に前記減算指示信号をクリアする付記3又は付記4に記載の調歩同期式シリアルデータ取得装置。
(付記6)
前記サンプリング部は、前記第1遷移と前記第2遷移とで前記スタートビットを検出するスタートビット検出回路と、前記スタートビット検出回路によって前記第1遷移と前記第2遷移との何れで先に前記スタートビットが検出されたかを判別し、前記スタートビット検出回路によって前記スタートビットが前記第1遷移で先に検出された場合に前記減算指示信号を出力せず、前記スタートビット検出回路によって前記スタートビットが前記第2遷移で先に検出された場合に前記減算指示信号を出力する検出タイミング判別回路と、を有する付記3から付記5の何れか1つに記載の調歩同期式シリアルデータ取得装置。
(付記7)
前記スタートビット検出回路は、前記第1遷移で前記スタートビットを検出した場合に、前記カウンタ部による前記回数のカウントの開始を指示するカウントスタート信号を前記カウンタ部に出力し、前記カウンタ部は、前記カウントスタート信号が入力された場合に、前記カウントを開始する付記6に記載の調歩同期式シリアルデータ取得装置。
(付記8)
前記減算指示信号は、前記上限値を1減算することを指示する信号である付記3から付記7の何れか1つに記載の調歩同期式シリアルデータ取得装置。
10 調歩同期式シリアルデータ取得装置
14,62 カウンタ
16,52 変更部

Claims (5)

  1. スタートビットを含むシリアルデータの取得タイミングを規定するクロックが入力される回数をカウントするカウンタと、
    前記スタートビットが入力されたタイミングでの前記クロックの遷移に応じて、前記スタートビットに対応する期間内に、前記カウンタによりカウントされるカウント値の上限値を変更する変更部と、
    を含む調歩同期式シリアルデータ取得装置。
  2. 前記変更部は、前記クロックの第1遷移と第2遷移とで前記スタートビットを検出し、前記スタートビットを前記第1遷移で先に検出した場合に前記上限値を減算せず、前記スタートビットを前記第2遷移で先に検出した場合に前記上限値を減算する請求項1に記載の調歩同期式シリアルデータ取得装置。
  3. 前記変更部により減算された前記上限値が前記カウンタによりカウントされた場合に、前記カウンタのカウント値はリセットされ、かつ、前記上限値は減算前の値に復帰する請求項2に記載の調歩同期式シリアルデータ取得装置。
  4. 前記カウンタは、前記第1遷移でカウントする請求項2又は請求項3に記載の調歩同期式シリアルデータ取得装置。
  5. スタートビットを含むシリアルデータの取得タイミングを規定するクロックが入力される回数をカウントし、
    前記スタートビットが入力されたタイミングでの前記クロックの遷移に応じて、前記スタートビットに対応する期間内に、カウントしたカウント値の上限値を変更することを含む調歩同期式シリアルデータ取得方法。
JP2014164837A 2014-08-13 2014-08-13 調歩同期式シリアルデータ取得装置及び調歩同期式シリアルデータ取得方法 Active JP6378966B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2014164837A JP6378966B2 (ja) 2014-08-13 2014-08-13 調歩同期式シリアルデータ取得装置及び調歩同期式シリアルデータ取得方法
CN201510486514.7A CN105376041B (zh) 2014-08-13 2015-08-10 异步串行数据采集装置以及异步串行数据采集方法
US14/821,899 US9660795B2 (en) 2014-08-13 2015-08-10 Start-stop synchronous type serial data acquisition device and start-stop synchronous type serial data acquisition method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014164837A JP6378966B2 (ja) 2014-08-13 2014-08-13 調歩同期式シリアルデータ取得装置及び調歩同期式シリアルデータ取得方法

Publications (2)

Publication Number Publication Date
JP2016040892A JP2016040892A (ja) 2016-03-24
JP6378966B2 true JP6378966B2 (ja) 2018-08-22

Family

ID=55302959

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014164837A Active JP6378966B2 (ja) 2014-08-13 2014-08-13 調歩同期式シリアルデータ取得装置及び調歩同期式シリアルデータ取得方法

Country Status (3)

Country Link
US (1) US9660795B2 (ja)
JP (1) JP6378966B2 (ja)
CN (1) CN105376041B (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2537856A (en) * 2015-04-28 2016-11-02 Nordic Semiconductor Asa Communication between intergrated circuits
JP6509155B2 (ja) * 2016-03-31 2019-05-08 キヤノン株式会社 撮像装置、アクセサリ装置および通信制御プログラム
CN112165525B (zh) * 2020-09-28 2023-12-08 北京视界恒通科技有限公司 一种串行数据透传方法及装置

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4408488A1 (de) * 1994-03-14 1995-09-21 Bosch Gmbh Robert Verfahren zur zyklischen Übertragung von Daten zwischen mindestens zwei verteilt arbeitenden Steuergeräten
JP3466738B2 (ja) * 1994-11-21 2003-11-17 ヤマハ株式会社 非同期シリアルデータ受信装置
JPH10126402A (ja) * 1996-10-18 1998-05-15 Hitachi Denshi Ltd データ伝送方式
JP3427761B2 (ja) 1999-01-21 2003-07-22 株式会社エヌ・イー・エフ 同期回路
JP4198089B2 (ja) * 2004-05-21 2008-12-17 富士通マイクロエレクトロニクス株式会社 通信システム
US7894561B1 (en) * 2007-06-21 2011-02-22 National Semiconductor Corporation Method and system for providing dynamic DC offset correction
JP5451309B2 (ja) * 2009-10-27 2014-03-26 ルネサスエレクトロニクス株式会社 雑音除去回路及び雑音除去回路を備えた半導体装置
US8326364B2 (en) * 2010-05-13 2012-12-04 Texas Instruments Incorporated High resolution, low power design for CPRI/OBSAI latency measurement
GB201015730D0 (en) * 2010-09-20 2010-10-27 Novelda As Continuous time cross-correlator
JP5541234B2 (ja) * 2011-06-08 2014-07-09 株式会社デンソー トランシーバ
US8472213B2 (en) * 2011-09-29 2013-06-25 Microchip Technology Incorporated Extending pulse width modulation phase offset
WO2013085695A1 (en) * 2011-12-05 2013-06-13 Rambus Inc. Event-driven clock duty cycle control
CN103684678A (zh) * 2012-11-01 2014-03-26 国网电力科学研究院 一种用于uart的波特率自适应方法、装置及uart
CN103634096B (zh) * 2013-11-27 2016-09-28 华为技术有限公司 一种时钟同步方法和装置

Also Published As

Publication number Publication date
JP2016040892A (ja) 2016-03-24
CN105376041A (zh) 2016-03-02
US9660795B2 (en) 2017-05-23
CN105376041B (zh) 2020-05-19
US20160050063A1 (en) 2016-02-18

Similar Documents

Publication Publication Date Title
JP5896602B2 (ja) 通信回路及びサンプリング調整方法
US9104345B2 (en) Rate controlled first in first out (FIFO) queues for clock domain crossing
JP6378966B2 (ja) 調歩同期式シリアルデータ取得装置及び調歩同期式シリアルデータ取得方法
JP5086014B2 (ja) データリカバリ方法およびデータリカバリ回路
JP2008066879A (ja) オーバーサンプリング回路及びオーバーサンプリング方法
JP2009239512A (ja) Cdr回路
JP5791828B2 (ja) 中継装置及び通信システム及び中継方法
US7936855B2 (en) Oversampling data recovery circuit and method for a receiver
JP5103940B2 (ja) クロック再生装置
JP6413585B2 (ja) 送信回路、集積回路及びパラレルシリアル変換方法
JP5704988B2 (ja) 通信装置
CN205247370U (zh) 随机数生成装置
US7321647B2 (en) Clock extracting circuit and clock extracting method
TW201822499A (zh) 非同步時脈域的讀寫資料轉譯技術
JP2018042032A (ja) 受信装置
JP5742456B2 (ja) シリアル・データ通信装置のdpll回路
JP6163895B2 (ja) 受信クロック抽出回路
JP5923730B2 (ja) クロックデータ復元装置
JP2008236178A (ja) シリアルデータ受信回路
JP2005142615A (ja) マンチェスタ符号データ受信装置
JP6037979B2 (ja) 受信装置及びノイズ除去方法
JP2017011426A (ja) クロックアンドデータリカバリ回路およびその信号処理方法
KR101214369B1 (ko) 인에이블 신호를 이용하여 동기화하는 칩 및 이에 적용되는 동기화 방법
JP2014003375A (ja) データ受信回路
JP5647180B2 (ja) カウント値伝播回路およびカウント値伝播方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170425

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180320

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180521

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180730

R150 Certificate of patent or registration of utility model

Ref document number: 6378966

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150