JP2007279920A - インターフェース回路 - Google Patents

インターフェース回路 Download PDF

Info

Publication number
JP2007279920A
JP2007279920A JP2006103546A JP2006103546A JP2007279920A JP 2007279920 A JP2007279920 A JP 2007279920A JP 2006103546 A JP2006103546 A JP 2006103546A JP 2006103546 A JP2006103546 A JP 2006103546A JP 2007279920 A JP2007279920 A JP 2007279920A
Authority
JP
Japan
Prior art keywords
data
shift clock
output
interface circuit
shift
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
JP2006103546A
Other languages
English (en)
Other versions
JP4917341B2 (ja
Inventor
Toshiyuki Kumagai
敏幸 熊谷
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.)
NEC Electronics Corp
Original Assignee
NEC Electronics 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 NEC Electronics Corp filed Critical NEC Electronics Corp
Priority to JP2006103546A priority Critical patent/JP4917341B2/ja
Priority to US11/730,685 priority patent/US8023603B2/en
Publication of JP2007279920A publication Critical patent/JP2007279920A/ja
Application granted granted Critical
Publication of JP4917341B2 publication Critical patent/JP4917341B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/08Clock generators with changeable or programmable clock frequency

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

【課題】送信側において、通信状況や受信側に合わせて補正したデータ出力を行なうことで、出力データを正確に受信させること。
【解決手段】インターフェース回路1は、出力データの並びから特定パタンを検出する検出部30と、検出結果に応じて、シフトクロックの周期を変更するシフトクロック生成部120と、シフトクロックによりデータ出力幅を変更して駆動データとして出力するシフトレジスタ部10と、駆動データにより駆動されるNチャンネルトランジスタ15a及びプルアップ抵抗15bからなるオープンドレインの出力部15とを有する。検出部30は、現在が0、次が1の出力データの並びを検出し、シフトクロック生成部120は、0、1に対応するシフトクロックの周期をそれぞれ短縮及び延長する。
【選択図】図1

Description

本発明は、例えば、オープンドレイン又はオープンコレクタなどのトランジスタを備えたインターフェース回路に関する。
図7は、従来のシリアルインターフェース回路の一例を示す図である。シリアルインターフェース回路201は、内部のバスからのデータをパラレルに受け取り、シリアルに受信側へ出力するシフトレジスタ部210と、シフトレジスタ部へシフトクロックを供給するボーレートジェネレータ220とを有する。シフトレジスタ部210は、送信時には、内部バスを介して制御部(CPU:Central Processing Unit)等からパラレルにデータを受け取り入出力端子216からシリアルに出力する。受信時には、受信側からシリアルに受信したデータを入出力端子216から入力バッファ219を介して受け取り、CPUへパラレルに送出する。このシフトレジスタ部210は、例えば8ビットシフトレジスタb0〜b7から構成され、8ビットごとに外部へシリアル出力する。シフトレジスタ部210の出力は、反転回路214を介して、出力部215のNチャンネルトランジスタ215aのゲートが接続される。Nチャンネルトランジスタ215aのドレインは入出力端子216に接続される。すなわち、出力部215はオープンドレイン構成となっている。
入出力端子216はバス配線217と接続され、バス配線217を介して他のシリアルインターフェース回路(図示せず)と接続される。バス配線217に接続されているいずれのシリアルインターフェース回路もロウレベルを出力しない場合、バス配線217の電位はプルアップ抵抗218を介して電源電圧まで引き上げられる。
ボーレートジェネレータ220は、基本クロックが与えられ、所定の周波数(ボーレート)のシフトクロックを生成する。このため、カウンタ221と、比較器222と、2分周回路223とを有する。基本クロックをカウンタでカウントし、比較器222の設定値に一致したタイミングで2分周回路223にクロックを出力し、2分周されたクロックをシフトクロックとして出力する。シフトレジスタ部210の各シフトレジスタ211は、この2分周されたシフトクロックに基づき順次データをシリアル出力する。
図8は、本シリアルインターフェース回路の波形図である。ボーレートジェネレータにより一定周期T0のシフトクロックが生成され、各シフトレジスタに格納されているデータを、このシフトクロックに同期して出力する。この場合、出力部215は、オープンドレインであるため、ハイの信号を出力する際には、送信側データ出力の波形が若干なまる。
受信側では、この送信側出力を所定の閾値により閾値判定することで、受信側判定結果に示すようなパルス信号に変換する。しかしながら、送信側シフトクロックの周期はT0で一定であるのに、プルアップ抵抗値によっては、データ線がハイレベルになりにくく、図8に示すようにハイレベルの信号の立ち上がりがなまるため、受信側判定結果が、データレートが一定幅ではないように見える。すなわち、ハイレベルになる前のロウレベルの期間が本来の周期T0より長いT2となり、ロウレベルからハイレベルに変化した場合のハイレベルの期間が本来の周期T0より短いT1となってしまう。
ところで、従来、送信側とのやりとりにおいて、パルス幅が変動した場合にも誤動作を防止することを目的としたリモートコントロール用受信器(以下、受信器という)が特許文献1に開示されている。この従来の受信器は、ハイ又はロウのパルス幅の違いでビットが0か1かを判定するもので、決められたパルス幅より狭く又は広く設定した設定値により受信信号を判定することで、パルス幅が変動した場合にも、ビット判定を可能とするものである。
特開平10−167009号公報
しかしながら特許文献1に記載の技術は、変動したパルス幅でも正確に判定できるような機能を受信側に設けるものであるため、送信側に比して受信装置が多数ある場合であっても、各受信装置すべてにその機能を設ける必要があり、システムが大型化し、コストも増大する。また、送信側からの受信信号を、変動を予測して補正するものであるため、変動の度合いによっては正しく判定できない場合がある。つまり、既に変動してしまったものを正確に判定する方式であるため所望の判定確度を得られない場合がある。
更に、上述したように、オープンドレイン出力の場合、受信側のハイレベルの期間が短くなるため、高速通信を行なう際に障害になる。すなわち、通信速度を上げると受信側にハイレベルの信号が送信できない場合が生じ、またその場合は受信側で補正するのも困難である。
本発明にかかるインターフェース回路は、データ列のデータ並びに応じて異なる周期のシフトクロックを生成するシフトクロック生成部と、前記データ列を保持するとともに、前記シフトクロックに応答して当該データ列をシリアル出力するデータ保持回路と、前記データ保持回路の出力を受けてバス配線を駆動するトランジスタとを有するものである。
本発明によれば、データ列の並びに応じてシフトクロックの周期を変更し、これに同期して当該データ列を出力するため、出力データの並びに応じて出力データのデータ幅を変更することができる。
本発明によれば、送信側において、通信状況や受信側に合わせて補正したデータ出力を行なうことができ、データを正確に受信させることができる。また、送信側にのみ補正したデータ出力を行なう機能を設ければよく、システムを簡単化することができる。
以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。この実施の形態は、本発明を、オープンドレイン出力を有するシリアルインターフェース回路に適用したものである。なお、本実施の形態においては、シリアルインターフェース回路として説明するが、パラレル出力をするものにも適用可能である。また、オープンドレイン出力を有するものとして説明するが、オープンコレクタ出力であってもよいことは勿論である。
図1は、本実施の形態にかかるシリアルインターフェース回路を示す図である。本実施の形態にかかるシリアルインターフェース回路1は、シフトクロックに同期したデータ信号を生成して出力するオープンドレイン型のインターフェース回路である。シフトレジスタ部10を構成する各シフトレジスタb0〜b7には、図示せぬCPU及びバスを介して各々データが入力される。シリアルインターフェース回路1は、シフトレジスタb0〜b7に格納されたデータの並びに応じて、シフトクロックの周期(周波数)を変更し、データ出力幅を変更して出力するものである。
このため、図1に示すように、シリアルインターフェース回路1は、データ並び検出部30と、シフトクロック生成部120と、シフトレジスタ部10と、オープンドレインからなる出力部15とを有する。データ並び検出部30は、出力データの時系列の並びから特定パタンを検出する。シフトクロック生成部120は、検出結果に応じて周期を変更(補正)したシフトクロックを生成する。シフトレジスタ部10は、シフトクロック生成部120にて生成されたシフトクロックに応答して駆動データとなるデータを出力する。出力部15は、シフトレジスタ部10のデータ出力から送信信号を生成して出力する。このシリアルインターフェース回路1は、出力回路、シフトレジスタ部、及びボーレートジェネレータからなる従来の構成に、データ並び検出部30及び設定値生成/選択部40を付加した構成となっている。
先ず、シフトレジスタ部10は、例えば8ビットシフトレジスタから構成され、バスを介してCPUからのデータが8ビットごとに格納され、これを8ビットごとに、出力部15へシリアル出力する。なお、シフトレジスタ部10の構成は本例に限らず、例えば16ビットシフトレジスタとしてもよい。また、図1に示すインターフェース回路1においては、第0ビットから第7ビットまでを格納する8つのシフトレジスタb0〜b7から構成されているものとして説明するが、後述するように、スタートビット用のシフトレジスタSBをシフトレジスタb0の前段に設けてもよい。また、ストップビット(エンドビット)用のシフトレジスタEBをシフトレジスタb7の後段に設けてもよい。
シフトレジスタ部10は、AND回路13及び反転回路14を介して出力部15に接続される。AND回路13の他方の入力には送信開始情報が入力される。この送信開始情報は、図示せぬCPUから送られるもので、シリアルインターフェース回路1が送信を開始する際にこれを通知する。すなわち、送信開始と共に"1"を入力することで、シフトレジスタ部10からの出力が反転回路14を介して出力部15に送出される。出力部15は、オープンドレイン出力となっており、入出力端子16にNチャンネルMOSトランジスタ15aのドレインが接続されている。なお、本実施の形態においては、NチャンネルMOSトランジスタとして説明するがバイポーラトランジスタとし、オープンコレクタであってもよいことは勿論である。
入出力端子16は、バス配線17に接続され、バス配線17を介して他のシリアルインターフェース回路(図示せず)と接続される。バス配線17は、プルアップ抵抗18を介して電源電位が印加される。バス配線17に接続されているいずれのシリアルインターフェース回路もロウレベルを出力しない場合、バス配線217の電位はプルアップ抵抗18を介して電源電圧まで引き上げられる。更に、入出力端子16は、入力バッファ19を介してシフトレジスタ部10のシリアル入力に接続される。シフトレジスタ部10は、入出力端子16を介してシリアルに受信したデータをパラレルに出力する。なお、本実施の形態においては、入出力端子16を有するものとして説明するが、入力端子、出力端子を個別に有する構成としてもよいことは勿論である。
データ並び検出部30は、シフトレジスタ部10に格納されているデータを参照し、現在が"0"、次が"1"であるデータ並び(特定パタン)を検出する。詳細は後述するが、上記出力部15による出力においては、ハイレベルからロウレベルへは急速に立下るが、ロウレベルからハイレベルへの立ち上がりに時間がかかる。このため、後述するシフトクロック生成部120にてロウレベルからハイレベルとなる期間のシフトクロックの周期を変更し、ハイレベルに対応するシフトクロックの周期を長くする。一方で、当該ハイレベルになる前のロウレベルの期間に対応するシフトクロックの周期をその分短くする。すなわち、シフトクロック生成部120は、データ並びに応じて異なる周期のシフトクロックを生成する。そこで、データ並び検出部30では、この期間(以下、補正対象区間という。)、すなわち現在のデータ"0"で次のデータが"1"となるデータ並びを検出する。
シフトクロック生成部120は設定値生成/選択部40と、ボーレートジェネレータ20とを有する。ボーレートジェネレータ20は、基本クロックが与えられると、所定の周波数(ボーレート)のシフトクロックを生成する。このため、カウンタ21と、比較器22と、2分周回路23とを有する。基本クロックをカウンタ21でカウントし、比較器22の設定値に一致したタイミングで2分周回路23にクロックを出力し、2分周されたデータをシフトクロックとして出力する。なお、このボーレートジェネレータ20の構成は、本例に限らず、基本クロックから所望の周波数のシフトクロックを生成できるものであればよい。
このシフトクロック生成部120は、上記補正対象区間におけるシフトクロックの周期を変更する。データ並び検出部30が補正対象区間を検出するとこれを設定値生成/選択部40に通知する。設定値生成/選択部40は、この通知に基づきシフトクロックを変更するための比較器22の設定値を生成又は選択し、比較器22に、生成又は選択した設定値を設定する。
シフトレジスタ部10は、8ビットシフトレジスタb0〜b7からなる。すなわち、第0ビットから第7ビットまでがそれぞれシフトレジスタb0〜b7に格納される。そして、シフトクロック生成部120にて生成されたシフトクロックに同期して、第0ビットからデータを順次出力する。ここで、シフトレジスタ部10、データ並び検出部30及びシフトクロック生成部120は、出力部15を駆動する駆動回路として機能する。
ところで、本実施の形態にかかるシリアルインターフェース回路1は、入出力端子16を介してデータの入出力が可能な入出力回路であるが、送信時の特定パタンにおけるデータの幅を補正することにより、受信側で正しくデータ受信を行なわせることを特長とする。すなわち出力動作に特長があるものであり、以下の説明においては、出力動作(送信動作)について説明する。
図2は、本実施の形態にかかるシリアルインターフェース回路にて出力される出力波形を説明する図である。データ並び検出部30にて補正対象区間として検出されるのは、現在のデータが"0"で、かつ、これに続く次のデータが"1"である補正対象期間である。この補正対象期間を検出されると、シフトクロック生成部120は、当該期間において、図2に示すように、データ"0"を出力する際のシフトクロックの周期をT0とし、データ"1"を出力する際のシフトクロックの周期をT1とする。周期T1は、通常の周期T0より短く、周期T2は通常の周期T0より長く設定される。このシフトクロックに基づき出力される出力データは、送信側データ出力に示すようになる。すなわち、ロウレベルに続くハイレベルの期間のみが延長され、当該ロウレベルの期間はその分短縮されたものとなっている。これを受信側において所定の閾値判定することで、受信側判定結果に示すように、いずれの期間もT0の等間隔なパルス信号を得ることができる。
このように、現在のデータ出力値がロウレベル、次のデータ出力値がハイレベルである状態を事前に検出し、現在のデータロウ出力期間を縮めて、続くハイ出力期間を長くするため、当該ロウレベルの間、ハイレベルの間に対応するシフトクロックについて、基本クロックの数を数えてその周期(時間)を決定する。
次に、図1に示すシフトクロック生成部120のシフトクロック生成動作について説明する。例えば、シフトクロックが基本クロック16周期から構成され、シフトクロックの周期を基本クロック6周期分の補正量で延長又は短縮(補正)する場合について説明する。図2に示すように、通常は、タイミングt1〜t2、t4〜t5などに示すように、基本クロック16周期分の周期T0のシフトクロックを生成する。そして、上記補正対象区間を検出したら、設定値生成/選択部40は、先ず、ロウレベル出力期間を、上記補正量で短縮した基本クロック10周期分とする(図2のタイミングt2〜t3、t5〜t6など:周期T1)。この場合、比較器22に設定値10が設定され、基本クロックを10回カウントしたタイミングでクロック(シフトクロック)が出力される。そして、続くデータハイレベル出力期間を、上記補正量で延長した基本クロック22周期分とする(図2のタイミングt3〜t4、t6〜t7など:周期T2)。この場合、比較器22に設定値22が設定され、基本クロックを22回カウントしたタイミングのシフトクロックが出力される。
補正対象期間において周期の異なるシフトクロックを生成することで、例えばタイミングt2〜t3においてデータ"0"を出力し、次のタイミングt3〜t4でデータ"1"を出力する場合、当該データ"1"の立ち上がりがなまる。これを受信側にて閾値判定すると、タイミングt3〜t4の周期T2よりも短いデータ幅となる。これに対し、本実施の形態においては、この周期T2は、通常周期T0より長く、受信側で閾値判定した場合にデータ"1"のデータ幅が周期T0となるよう補正することで、正確なデータ出力を可能とする。
なお、本実施の形態においては、シフトクロックは説明の簡単のため基本クロック16周期からなるものとして説明したが、基本クロックの数は256等、これに限るものではない。また、本例においては、6周期分の基本クロックにより周期を短縮したり延長したりするものして説明するが、シフトクロックの周期、すなわちデータ出力幅の延長又は短縮幅(補正量)は通信事情や、受信側の仕様等を考慮して決定されるようプログラマブルとすることができる。例えば外部からの指定により設定値生成/選択部40に、シフトクロックの周期を決定する比較器22の設定値に対する補正量を設定するなどすればよい。
次に、本実施の形態にかかるシリアルインターフェース回路について更に詳細に説明する。図3は、図1に示すシリアルインターフェース回路1の一具体例を示す回路図である。本具体例においては、データ並び検出部(以下、検出部)30及びシフトクロック生成部120の具体的な構成を示す。検出部30は、AND回路31、32、遅延回路33、及びOR回路34を有する。
AND回路31の一方の入力には、シフトレジスタb0に格納されているデータが反転入力され、他方の入力には、シフトレジスタb0に格納されているデータが入力される。AND回路32の一方の入力には、AND回路の出力が入力され、他方の入力には、現在の動作が送信か受信かを示す送信/受信情報が入力される。この送信/受信情報もCPUから送られる。AND回路32の出力aは、遅延回路33、OR回路の一方の入力、及びシフトクロック生成部120へ入力される。OR回路の他方の入力には遅延回路の出力bが入力される。
シフトクロック生成部120は、上述したカウンタ21、比較器22及び2分周回路23からなるボーレートジェネレータ20と、加算器24及びセレクタ25を有する設定値生成/選択部40とを有する。加算器24には、標準値Xと補正値Yとが入力され、AND回路32の出力aが例えば「1」のとき標準値Xから補正値Yを減算(X−Y)、「0」のとき加算(X+Y)する。標準値Xは、通常(補正なし)時のシフトクロックに含まれる基本クロック数を示し、補正値Yは、通常時のシフトクロック幅を短縮又は延長するための値であり、基本クロック数で指定することができる。加算器24は、この加減算の結果をセレクタ25に出力する。セレクタ25は、標準値Xと、加減算結果とが入力され、OR回路34の出力cが「1」のとき、加算器24の出力を選択出力し、「0」のとき、標準値Xを選択出力する。セレクタ25は、これらの値で比較器22の設定値を設定する。ここで、シフトクロック生成部120のカウンタ21には、AND回路13と同様に送信開始情報が供給され、送信開始と同時に基本クロックをカウントアップする。
次に、本具体例にかかるシリアルインターフェース回路1の動作について説明する。図4は、シリアルインターフェース回路1の動作を示すタイミングチャートである。また、図5は、シリアルインターフェース回路の動作を示すフローチャートである。通常、出力データは、その前後にスタートビット及びエンドビットを有する。また、上述したように、シフトレジスタ部は、図6のシフトレジスタ110のように構成することも可能である。すなわち、図6に示すように、シフトレジスタ部110は、第0ビット乃至第7ビットを格納するそれぞれシフトレジスタb0乃至b7の他に、シフトレジスタb0の前段に設けられるスタートビット用レジスタSB及びシフトレジスタb7の後段に設けられるエンドビット用レジスタEBが設けられている。以下の説明においては、スタートビット及びエンドビットを含めたデータ出力動作について説明する。
図4において、第0ビットから第7ビットは、シフトレジスタ部110のシフトレジスタb0〜b7に格納されているデータを示す。また、図6に示すように、スタートビット、エンドビットは、それぞれ"0"とする。ここでは、8ビットのデータとして"00100100"と、スタートビット及びエンドビットの10ビットを送信する場合の動作について説明する。すなわち、全10ビット=nとし、レジスタSBに格納されるデータn=0〜9を出力する動作について説明する。
図5に示すように、先ず、インターフェース回路1は、比較器22に設定値Xを設定する(ステップS1)。設定値Xの設定により、シフトクロック生成部120は、周期T0のシフトクロックを生成する。先ず、周期T0のシフトクロックでスタートビットを出力する(ステップS2)。シリアルインターフェース回路1の出力は常にハイレベルとなっており、通信開始時にスタートビット"0"を出力することで、受信側にデータの送信開始を伝えることができる。これにより、レジスタSBの格納データは、n=1の第0ビットとなる(ステップS3)。
次に、図3に示す検出部30がシフトレジスタb0、b1のデータに基づき、シフトレジスタb0の値が"0"で、シフトレジスタb1の値が"1"であるか否かを判断する(ステップS4)。b0=0かつb1=1ではない場合、設定値生成/選択部(以下、ボーレート設定部ともいう。)40は設定値Xを生成する(ステップS13)。これにより、ボーレートジェネレータ20は、標準幅のシフトクロックを生成することができる。先ず、シフトクロックが立ち上がると(ステップS14、図4のタイミングt1)、シフトレジスタのデータを下位に1ビットシフトさせ(ステップS15−1)、比較器22に設定値Xを設定する(ステップS15−2)。これにより、周期T0のシフトクロックが生成され、この周期T0でレジスタSBのデータが出力される(ステップS15−3、図4のタイミングt1〜t2)。そしてレジスタSBに格納されているデータがエンドビットではない場合(n<9)(ステップS16:Yes)、ステップS4に戻る。
ステップS4において、シフトレジスタb0、b1に格納されているデータがb0=0かつb1=1である場合(ステップS4:Yes)、ボーレート設定部が設定値(X−Y)を生成し(ステップS5)、シフトクロックが立ち上がるタイミング(図4のt2参照)でソフトレジスタのデータを下位に1ビットシフトさせ(ステップS7−1)、比較器22に設定値(X−Y)を設定し(ステップS7−2)、周期T1のシフトクロックでレジスタSBからデータ("0")を出力する(ステップS7−3)。
次にボーレート設定部が設定値(X+Y)を生成し、シフトクロックが立ち上がるタイミング(図4のt3参照)でシフトレジスタのデータを下位に1ビットシフトさせ(ステップS10−1)、比較器22に設定値(X+Y)を設定し(ステップS10−2)、
周期T2のシフトクロックでレジスタSBからデータ("1")を出力する(ステップS10−3)。そして、レジスタSBに格納されているデータがエンドビットではない場合(n<9)(ステップS16:Yes)、ステップS4に戻り、エンドビットであれば(n=9)処理を終了する。
このように、本実施の形態においては、シリアルクロックの1周期分の長さを、現在出力するデータ(論理レベル)と次のシフトクロックサイクルで出力するデータの並び次第で、標準値Xを補正するか否かを決定し、シフトクロックの周期を変更する。このことにより、シフトレジスタ部10から出力するデータ出力幅を変更し、ロウレベルからハイレベルとなる当該ハイレベル期間を長くすることができる。
出力するデータ幅に対応するシフトクロックの周期を変更することにより、通信プロトコルによって、データ出力端子(出力部)をNチャンネルオープンドレーン端子とプルアップ抵抗によって構成する場合、プルアップ抵抗値によっては、データ線がハイレベルになりにくく、受信側には、データレートが一定幅ではないように送信されてしまうことを防止することができる。さらに、補正値Yはプログラマブルなため、ハイレベルの長さは、通信事情に応じた値及び受信側の論理閾値に合わせて作ることができる。
なお、本発明は上述した実施の形態のみに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能であることは勿論である。例えば、本実施の形態においては、電源と接地との間に直列に接続されたプルアップ抵抗及びNチャンネルトランジスタからなるオープンドレインの場合について説明したが、オープンコレクタであっても同様の効果を奏する。また、プルアップ抵抗の付加方法はどのようであってもよい。更に、Pチャンネルトランジスタとプルダウン抵抗とから構成してもよい。
また、シリアルインターフェース回路について説明したが、パラレルインターフェース回路に適用することも可能である。その場合には、各出力の現在及び次のデータの並びを検出し、それに応じてそれぞれのシフトクロックを生成すればよい。
また、検出部30は、出力データの時系列の並び、すなわち、ロウレベルからハイレベルに変化する期間(補正対象区間)を検出するものであれば、上記構成に限るものではない。また、上記具体例においては、2つのシフトレジスタに格納されているデータを参照して、シフトクロックの補正対象区間を検出するものとしたが、2以上、例えば3つのシフトレジスタの値を参照して補正対象区間を検出するものとしてもよい。その場合は、時系列に前、現在、次のデータを"000"と表す場合、"001"、"101"の並びで、現在のシフトクロックの周期を(X−Y)の設定値とし、"010"、"011"で現在のシフトクロックの周期を(X+Y)の設定値とすればよい。
本発明の実施の形態にかかるシリアルインターフェース回路を示す図である。 本発明の実施の形態にかかるシリアルインターフェース回路にて出力される出力波形を説明する図である。 本発明の実施の形態にかかるシリアルインターフェース回路1の一具体例を示す回路図である。 上記具体例にかかるインターフェース回路1の動作を示すタイミングチャートである。 上記具体例にかかるインターフェース回路の動作を示すフローチャートである。 スタートビット用及びエンドビット用シフトレジスタを有するシフトレジスタ部を示す図である。 従来のシリアルインターフェース回路の一例を示す図である。 従来のシリアルインターフェース回路の波形図である。
符号の説明
1 シリアルインターフェース回路
10 シフトレジスタ部
11 シフトレジスタ
13,31,32 AND回路
14 反転回路
15 出力回路
15a Nチャンネルトランジスタ
15b プルアップ抵抗
20 ボーレートジェネレータ
21 カウンタ
22 比較器
23 分周回路
24 加算器
25 セレクタ
30 検出部
33 遅延回路
34 OR回路
35 セレクタ
40 設定値生成/選択部
120 シフトクロック生成部

Claims (8)

  1. データ列のデータ並びに応じて異なる周期のシフトクロックを生成するシフトクロック生成部と、
    前記データ列を保持するとともに、前記シフトクロックに応答して当該データ列をシリアル出力するデータ保持回路と、
    前記データ保持回路の出力を受けてバス配線を駆動するトランジスタとを有するインターフェース回路。
  2. 前記データ列のデータ並びを検出する検出部を有し、
    前記シフトクロック生成部は、前記検出部の検出結果に基づき前記シフトクロックの周期を変更する
    ことを特徴とする請求項1記載のインターフェース回路。
  3. 前記検出部は、前記データ並びのうち特定パタンを補正対象区間として検出し、
    前記シフトクロック生成部は、前記補正対象区間におけるシフトクロックの周期を変更する
    ことを特徴とする請求項2記載のインターフェース回路。
  4. 前記検出部は、現在の出力データがロウレベル、次の出力データがハイレベルとなる区間を補正対象区間として検出し、
    前記シフトクロック生成部は、前記ロウレベルの出力データに応答するシフトクロックの周期を短縮し、前記ハイレベルの出力データに応答するシフトクロックの周期を延長する
    ことを特徴とする請求項2記載のインターフェース回路。
  5. 前記シフトクロック生成部は、
    設定値に基づき基本クロックをカウントして所望の周期のシフトクロックを生成する生成部と、
    前記生成部が生成した前記設定値を設定する設定部とを有し、
    前記設定部は、前記補正対象区間における前記設定値を変更する
    ことを特徴とする請求項3又は4記載のインターフェース回路。
  6. 前記設定部が設定する設定値はプログラマブルである
    ことを特徴とする請求項5記載のインターフェース回路。
  7. 前記トランジスタは、オープンドレイントランジスタである
    ことを特徴とする請求項1記載の駆動回路。
  8. 前記出力データはシリアルデータである
    ことを特徴とする請求項1記載のインターフェース回路。
JP2006103546A 2006-04-04 2006-04-04 インターフェース回路 Expired - Fee Related JP4917341B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006103546A JP4917341B2 (ja) 2006-04-04 2006-04-04 インターフェース回路
US11/730,685 US8023603B2 (en) 2006-04-04 2007-04-03 Interface circuit including a shift clock generator to generate a shift clock having different cycles according to data sequence of data string

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006103546A JP4917341B2 (ja) 2006-04-04 2006-04-04 インターフェース回路

Publications (2)

Publication Number Publication Date
JP2007279920A true JP2007279920A (ja) 2007-10-25
JP4917341B2 JP4917341B2 (ja) 2012-04-18

Family

ID=38604350

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006103546A Expired - Fee Related JP4917341B2 (ja) 2006-04-04 2006-04-04 インターフェース回路

Country Status (2)

Country Link
US (1) US8023603B2 (ja)
JP (1) JP4917341B2 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10164148A (ja) * 1996-11-27 1998-06-19 Nec Corp デジタル信号識別方法とその方法を実施するための装置
JPH10247903A (ja) * 1997-03-04 1998-09-14 Oki Electric Ind Co Ltd ビット同期回路
JPH11250008A (ja) * 1998-02-27 1999-09-17 Mitsubishi Electric Corp シリアルi/o回路
JP2003016026A (ja) * 2001-06-28 2003-01-17 Mitsubishi Electric Corp シリアル通信回路

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10167009A (ja) 1996-12-13 1998-06-23 Toyota Autom Loom Works Ltd リモートコントロール用受信器
US6728894B2 (en) * 2001-02-16 2004-04-27 Maxtor Corporation System and method for clock adjustment by subsequently detecting a target bit of data stream, re-adjusting, and correcting clock based on difference in detected bit
JP2005329856A (ja) * 2004-05-21 2005-12-02 Nec Electronics Corp 監視装置、送受信システム及びその制御方法
JP4456432B2 (ja) * 2004-08-02 2010-04-28 富士通株式会社 基準信号を用いて同期伝送を行う装置および方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10164148A (ja) * 1996-11-27 1998-06-19 Nec Corp デジタル信号識別方法とその方法を実施するための装置
JPH10247903A (ja) * 1997-03-04 1998-09-14 Oki Electric Ind Co Ltd ビット同期回路
JPH11250008A (ja) * 1998-02-27 1999-09-17 Mitsubishi Electric Corp シリアルi/o回路
JP2003016026A (ja) * 2001-06-28 2003-01-17 Mitsubishi Electric Corp シリアル通信回路

Also Published As

Publication number Publication date
US20070241947A1 (en) 2007-10-18
JP4917341B2 (ja) 2012-04-18
US8023603B2 (en) 2011-09-20

Similar Documents

Publication Publication Date Title
US9673968B2 (en) Multi-wire open-drain link with data symbol transition based clocking
TWI676042B (zh) 掃描輸出正反器
US10090828B2 (en) Duty-cycle correction circuit and method
US7808846B2 (en) Semiconductor memory device
JP4419067B2 (ja) ディジタルインターフェースを有する半導体装置、メモリ素子及びメモリモジュール
JP2018045409A (ja) データ送受信装置、データ送受信システム
US10361692B2 (en) Duty cycle detector and phase difference detector
JPH06241910A (ja) 集積回路における過程と温度の変動を検出する回路および方法
US7961000B1 (en) Impedance matching circuit and method
JP4917341B2 (ja) インターフェース回路
US20070124630A1 (en) Semiconductor device having adaptive power function
JP4364041B2 (ja) データ転送回路
US8311173B2 (en) Frame pulse signal latch circuit and phase adjustment method
JP3523858B2 (ja) シリアルデータ通信装置及びシリアルデータの送受信方法
JP4248074B2 (ja) 動作タイミング制御機能を有するシステム
JP6871509B2 (ja) 送信回路及び集積回路
US12038864B2 (en) Signal processing circuit and reception device
JP5533424B2 (ja) 集積回路装置及び集積回路装置のスキュー調整方法
KR101110114B1 (ko) 데이터 동기화 방법, 데이터 동기화 회로, 및 이를 포함하는 데이터 동기화 장치
US8270557B2 (en) Integrated circuit and method for driving the same
JP4945616B2 (ja) ディジタルインターフェースを有する半導体装置
JP3652032B2 (ja) 演算装置及びその制御方法
JP2008085519A (ja) クロック制御回路および半導体集積回路
KR20230050214A (ko) 듀티 사이클 보정 장치 및 방법
KR100920832B1 (ko) Dflop 회로

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090311

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110517

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110719

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120126

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

Free format text: PAYMENT UNTIL: 20150203

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees