図面 (/)

技術 送信装置、受信装置、シリアル通信装置、及び、その装置を備えた記録装置

出願人 キヤノン株式会社
発明者 小野隆
出願日 2012年6月4日 (9年6ヶ月経過) 出願番号 2012-127536
公開日 2013年1月24日 (8年11ヶ月経過) 公開番号 2013-017162
状態 特許登録済
技術分野 付属装置、全体制御 直流方式デジタル伝送 デジタル伝送方式における同期
主要キーワード サンプリングカウント Pビット 挿入条件 最長周期 サンプルカウンタ サンプリングクロック周期 多機能プリンタ装置 電磁雑音
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(2013年1月24日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (16)

課題

受信側の1ビット分のサンプリングクロック周期に対して送信クロックの周期が変動すると受信エラーが発生する。

解決手段

受信データ列の中で、サンプリングデータが反転する毎にサンプリングクロックを再同期をとる。更に、同じデータが所定数連続する場合は、反転するダミービットを挿入して再同期をとれるように構成する。

概要

背景

従来より、調歩同期式を採用したシリアル通信では、送信側の送信クロックと受信側の受信クロックの間に周波数偏差があるため、例えば、特許文献1に示される方法によってデータの受信をより確実なものにするとともに、通信同期補正を行っている。

概要

受信側の1ビット分のサンプリングクロック周期に対して送信クロックの周期が変動すると受信エラーが発生する。受信データ列の中で、サンプリングデータが反転する毎にサンプリングクロックを再同期をとる。更に、同じデータが所定数連続する場合は、反転するダミービットを挿入して再同期をとれるように構成する。

目的

本発明は上記従来例に鑑みてなされたもので、1フレーム中のデータビット数に制限がなく送信と受信クロックの間の大きな周波数偏差にも対応可能な送信装置受信装置通信装置、及び、その装置を用いた記録装置を提供する

効果

実績

技術文献被引用数
1件
牽制数
0件

この技術が所属する分野

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

調歩同期シリアル通信によりデータを受信する受信装置であって、 前記データを所定の周期で受信する受信手段と、記憶手段と、前記受信手段によって1つ前の周期と同じデータが受信された場合に、更新される受信カウンタと、前記受信カウンタの値が第1の値に達した場合には、前記受信手段によって受信されたデータを前記記憶手段に格納し、前記受信手段によって受信されたデータが1つ前の周期に受信されたデータと異なる場合には、前記1つ前の周期に受信されたデータを前記記憶手段に格納するよう制御する記憶制御手段と、前記受信手段によって受信されたデータが1つ前の周期に受信されたデータと異なる場合には、前記受信カウンタに前記第1の値と異なる第2の値を設定する設定手段とを有することを特徴とする受信装置。

請求項2

送信装置は、前記受信手段がデータを受信する周期より大きい周期で、前記受信装置に対してデータを送信することを特徴とする請求項1に記載の受信装置。

請求項3

前記設定手段は、前記受信カウンタの値が前記第1の値に達した場合には、前記受信カウンタに初期値を設定することを特徴とする請求項1に記載の受信装置。

請求項4

前記記憶制御手段が前記記憶手段に同じ値が格納するよう制御する場合に、更新されるデータカウンタをさらに有し、前記データカウンタの値が第3の値に達すれば、前記記憶制御手段は、前記記憶手段へのデータを格納しないことを特徴とする請求項1に記載の受信装置。

請求項5

前記受信手段は、1ビットの単位でデータを受信し、前記受信手段は、2ビットのシフトレジスタを有することを特徴とする請求項1に記載の受信装置。

請求項6

調歩同期でシリアル通信によりデータを受信する受信装置であって、 前記データの1ビットを所定の周期で受信する受信手段と、記憶手段と、前記受信手段によって受信された1ビットのデータが、1つ前の周期で受信した1ビットのデータと同じ値である場合に、更新される受信カウンタと、前記受信カウンタの値が第1の値に達した場合には、前記受信手段によって受信された1ビットのデータを前記記憶手段に格納し、前記受信手段によって受信された1ビットのデータが1つ前の周期に受信されたデータと異なる場合には、前記1つ前の周期に受信された1ビットのデータを前記記憶手段に格納するよう制御する記憶制御手段と、前記記憶手段に同じ値の1ビットのデータが格納される場合に、更新されるカウンタとを有し、前記カウンタの値が第3の値に達すれば、前記記憶制御手段は、前記記憶手段へのデータを格納しないよう制御することを特徴とする受信装置。

請求項7

請求項6に記載の受信装置に調歩同期のシリアル通信によりデータを送信する送信装置であって、データを生成する生成手段と、前記生成手段により生成されたデータにおいて、1ビットのデータがすぐ前に生成された1ビットのデータと同じであれば、ビット数インクリメントし、該インクリメントされたビット数が予め定められた条件を満たしたならば、前記1ビットのデータと同じでないビットデータをダミービットのデータとして付加する付加手段と、前記生成手段により生成されたデータ或いは前記付加手段により付加されたダミービットのデータを、前記所定の周期とは別の所定の周期で送信する送信手段とを有し、前記別の所定の周期の最大周期(T)と前記所定の周期(SCLK)の間には、SCLK=T/n(nは3以上の自然数)の関係があり、前記予め定められた条件は、前記ダミービットのデータを付加する条件となるビット数(m)がm≦n−1であることを特徴とする送信装置。

請求項8

請求項6に記載の受信装置と請求項7に記載の送信装置とを含むシリアル通信装置

請求項9

請求項8に記載のシリアル通信装置を含む記録装置であって、前記シリアル通信装置に含まれる送信装置は、ユーザが前記記録装置を操作する操作部に設けられ、前記シリアル通信装置に含まれる受信装置は、前記ユーザによる指示を前記操作部から受信し、前記記録装置の動作を制御する制御部に設けられることを特徴とする記録装置。

技術分野

0001

本発明は、特に、調歩同期式を採用した送信装置受信装置シリアル通信装置、その装置を備えた記録装置に関する。

背景技術

0002

従来より、調歩同期式を採用したシリアル通信では、送信側の送信クロックと受信側の受信クロックの間に周波数偏差があるため、例えば、特許文献1に示される方法によってデータの受信をより確実なものにするとともに、通信同期補正を行っている。

先行技術

0003

特開2007−336190号公報

発明が解決しようとする課題

0004

しかしながら上記従来例は、通信クロックより速い周波数サンプリングクロックによって受信データをサンプリングし、1ビット長分のサンプリング結果から、“0”又は“1”の成分の多い方を受信データと判定している。このため、原理上、周波数偏差によって生じた誤差は、後続ビットに累積されていってしまう。つまり後続のビットほど、サンプリング結果に含まれる誤差の割合が増えていってしまうことになる。

0005

そのため、1つの通信単位(例えば、スタートビット/データ/パリティビットストップビットで構成された単位など)を1フレームと定義した時、1フレーム受信中に1/2ビット長以上の誤差が累積された場合は正しく受信できないと言う課題があった。

0006

図15調歩同期シリアル通信における1フレームの構成を示す図である。

0007

図15に示すように1フレームを、STARTビット(1ビット)、データ(8ビット)、パリティビット(1ビット)、STOPビット(1ビット)と定義しているので、±5%未満の偏差までしか正しく受信することができない。さらに、1フレーム中のデータのビット数が増えれば、当然許容される偏差はさらに小さくなってしまう。

0008

また、EMI電磁雑音対策として、SSCGスペクトラム拡散クロックジェネレータ)技術によって、送信クロックに揺らぎを持たせて送信信号から発生する放射ノイズの低減を図ることも提案されている。しかしながら、その場合にも前記の許容可能な偏差の制約によってあまりクロックを揺らすことが出来ないため、十分なノイズ低減効果が得られない。

0009

本発明は上記従来例に鑑みてなされたもので、1フレーム中のデータビット数に制限がなく送信と受信クロックの間の大きな周波数偏差にも対応可能な送信装置、受信装置、通信装置、及び、その装置を用いた記録装置を提供することを目的とする。

課題を解決するための手段

0010

上記目的を達成するために本発明の受信装置は次のような構成からなる。

0011

即ち、調歩同期でシリアル通信によりデータを受信する受信装置であって、 前記データを所定の周期で受信する受信手段と、記憶手段と、前記受信手段によって1つ前の周期と同じデータが受信された場合に、更新される受信カウンタと、前記受信カウンタの値が第1の値に達した場合には、前記受信手段によって受信されたデータを前記記憶手段に格納し、前記受信手段によって受信されたデータが1つ前の周期に受信されたデータと異なる場合には、前記1つ前の周期に受信されたデータを前記記憶手段に格納するよう制御する記憶制御手段と、前記受信手段によって受信されたデータが1つ前の周期に受信されたデータと異なる場合には、前記受信カウンタに前記第1の値と異なる第2の値を設定する設定手段とを有することを特徴とする。

0012

本発明を別の側面から見れば、調歩同期でシリアル通信によりデータを受信する受信装置であって、 前記データの1ビットを所定の周期で受信する受信手段と、記憶手段と、前記受信手段によって受信された1ビットのデータが、1つ前の周期で受信した1ビットのデータと同じ値である場合に、更新される受信カウンタと、前記受信カウンタの値が第1の値に達した場合には、前記受信手段によって受信された1ビットのデータを前記記憶手段に格納し、前記受信手段によって受信された1ビットのデータが1つ前の周期に受信されたデータと異なる場合には、前記1つ前の周期に受信された1ビットのデータを前記記憶手段に格納するよう制御する記憶制御手段と、前記記憶手段に同じ値の1ビットのデータが格納される場合に、更新されるカウンタとを有し、前記カウンタの値が第3の値に達すれば、前記記憶制御手段は、前記記憶手段へのデータを格納しないよう制御することを特徴とする受信装置を備えても良い。

0013

本発明をさらに別の側面から見れば、上記構成の受信装置に調歩同期のシリアル通信によりデータを送信する送信装置であって、データを生成する生成手段と、前記生成手段により生成されたデータにおいて、1ビットのデータがすぐ前に生成された1ビットのデータと同じであれば、ビット数をインクリメントし、該インクリメントされたビット数が予め定められた条件を満たしたならば、前記1ビットのデータと同じでないビットデータをダミービットのデータとして付加する付加手段と、前記生成手段により生成されたデータ或いは前記付加手段により付加されたダミービットのデータを、前記所定の周期とは別の所定の周期で送信する送信手段とを有し、前記別の所定の周期の最大周期(T)と前記所定の周期(SCLK)の間には、SCLK=T/n(nは3以上の自然数)の関係があり、前記予め定められた条件は、前記ダミービットのデータを付加する条件となるビット数(m)がm≦n−1であることを特徴とする送信装置を備える。

0014

本発明をまたさらに別の側面から見れば、上記受信装置と上記送信装置とを有するシリアル通信装置を備える。

0015

本発明をまたさらに別の側面から見れば、上記のシリアル通信装置を含む記録装置であって、前記シリアル通信装置に含まれる送信装置は、ユーザが前記記録装置を操作する操作部に設けられ、前記シリアル通信装置に含まれる受信装置は、前記ユーザによる指示を前記操作部から受信し、前記記録装置の動作を制御する制御部に設けられることを特徴とする記録装置を備える。

発明の効果

0016

従って本発明によれば、1フレーム中のデータのビット数に関係なく、受信側の1ビット分のサンプリングクロック周期を基準と考えれば相対的に送信クロックの周期が最大で、例えば、0〜−33%変動しても正確に通信できるという効果がある。

図面の簡単な説明

0017

本発明の代表的な実施例であるインクジェット記録装置の要部の斜視図である。
記録装置100における制御回路の構成を示すブロック図である。
本発明の特徴を強調した記録装置の構成を示すブロック図である。
調歩同期送信部250と調歩同期受信部240の構成とその接続形態を示すブロック図である。
調歩同期受信器243の詳細な構成を示すブロック図である。
図5に示した調歩同期受信器のさらに詳細な構成を示すブロック図である。
図6に示す調歩同期受信器の動作を示すフローチャートである。
図6に示す調歩同期受信器の動作を説明する図である。
調歩同期受信器の別の実施例を示すブロック図である。
図9に示す構成の調歩同期受信器の動作を示すフローチャートである。
図9に示す調歩同期受信器の動作を説明する図である。
調歩同期送信器253の詳細な構成を示すブロック図である。
調歩同期送信器の動作を示すフローチャートである。
具体的な調歩同期シリアル通信の例を示す図である。
調歩同期シリアル通信における1フレームの構成を示す図である。

実施例

0018

以下に、図面を参照しながら本発明の実施例について詳細に説明する
なお、この明細書において、「記録」(以下、「プリント」とも称する)とは、文字、図形等有意の情報を形成する場合のみならず、有意無意を問わず、広く記録媒体上に画像、模様パターン等を形成する、又は媒体の加工を行う場合も表すものとする。また、人間が視覚知覚し得るように顕在化したものであるか否かを問わない。

0019

また、「記録媒体」とは、一般的な記録装置で用いられる紙のみならず、広く、布、プラスチックフィルム金属板ガラスセラミックス、木材、皮革等、インク受容可能なものも表すものとする。

0020

また、「インク」とは、上記「記録」の定義と同様広く解釈されるべきもので、記録媒体上に付与されることによって、画像、模様、パターン等の形成又は記録媒体の加工、或いはインクの処理に供され得る液体を表すものとする。インクの処理としては、例えば記録媒体に付与されるインク中の色剤凝固又は不溶化させることが挙げられる。

0021

またさらに、「記録素子」(「ノズル」という場合もある)とは、特にことわらない限りインク吐出口乃至これに連通する液路及びインク吐出に利用されるエネルギーを発生する素子総括して言うものとする。

0022

[記録装置の構成]
図1は本発明の代表的な実施例であるインクジェット記録装置(以下、記録装置)の要部の斜視図である。

0023

図1において、10は4つのインクカートリッジであり、それらはインクタンクと複数の記録素子が集積配列されたインクジェット記録ヘッド(以下、記録ヘッド)11とより構成されている。それらのインクタンクには、ブラック(K)、シアン(C)、マゼンタ(M)、イエロ(Y)のインクが収容される。記録ヘッド11は、インクタンクと別体に構成されるものであってもよい。記録ヘッド11が備える記録素子は、インク吐出口と、それに対応する吐出エネルギー発生素子とを含み、その吐出エネルギー発生素子としては、ヒータ発熱抵抗素子)やピエゾ素子などが用いられる。以下においては、このようなインク吐出口と吐出エネルギー発生素子とを含む部分を「ノズル」ともいう。

0024

搬送ローラ103は補助ローラ104と共に記録紙(記録媒体)Pを抑えながら矢印方向に回転することにより、記録媒体Pを矢印Y方向(副走査方向)に間欠的に搬送する。給紙ローラ105により記録媒体Pの給紙が行われると共に、搬送ローラ103および104と同様に、記録媒体Pを抑える役割も果たす。106は、4つのインクカートリッジ10はキャリッジで106に搭載され、矢印X方向(主走査方向)に往復移動する。以下、−Xの方向を往路方向X1、+Xの方向を復路方向X2という。主走査方向と副走査方向は互いに交差し、この実施例の場合は、互いに直交する。キャリッジ106は、記録を行っていないとき、あるいは記録ヘッド11の回復処理などを行うときには、図中点線の位置のホームポジション(h)に移動して待機する。

0025

[記録装置の制御構成概要
図2は、記録装置100における制御回路の構成を示すブロック図である。記録装置100において、201はCPU、202はCPU201が実行する制御プログラムを格納するROMである。ホスト200から受信したラスタ単位の画像データは、まず受信バッファ203に格納される。受信バッファ203に格納された画像データは、ホスト200からの送信データ量を減らす為に、圧縮されている。このため、CPU201或いは不図示の圧縮データ展開回路により画像データの展開が行われ、記録バッファ204に格納される。記録バッファ204は、例えばDRAMである。記録バッファ204に格納されるデータの形式は、ラスタ形式のデータである。記録バッファ204の容量は、1回の走査で記録する幅に対応したラスタ数のデータを格納できる容量を備えている。

0026

記録バッファ204に格納された画像データは、HV変換回路205によってHV変換処理が行われ、ASIC206に備えられた、例えば、SRAMのノズルバッファ(不図示)に格納される。即ち、ノズルバッファにはカラム形式のデータが格納される。このデータの形式は、ノズルの配置に対応している。なお、記録装置100にはユーザが種々の操作を行なうためのキーや記録装置の状態を表示するLEDランプ、LCDなどからなる操作部が備えられている。

0027

図3は本発明の特徴を強調した記録装置の構成を示すブロック図である。

0028

図3に示されるように、記録装置100は機能的には、記録装置を操作する操作部210と、記録装置全体を制御するメイン制御部220と、記録を行う記録部230とに分けられる。メイン制御部220には調歩同期受信部240を内蔵し、操作部210には調歩同期送信部250を内蔵し、ユーザのキー操作によるキー入力情報データ化してメイン制御部に調歩同期式シリアル通信方式に従って送信する。

0029

図3からも分かるように、操作部210とメイン制御部220とは調歩同期式シリアル通信に従って接続されている。なお、この例では、記録装置の操作部210とメイン制御部220との間の通信に調歩同期シリアル通信方式を用いたが、本発明の適用はこれに限定されるものではない。例えば、スキャナ部を備えた多機能プリンタ装置MFP)であれば、スキャナ部が読み取った画像データをメイン制御部に送信する際の通信に用いてもよい。

0030

図4は調歩同期送信部250と調歩同期受信部240の構成とその接続形態を示すブロック図である。

0031

図4に示されるように、調歩同期送信部250は、送信クロック(TCLK)を生成するクロック生成部251と、そのクロック信号によって同期してデータを送信する調歩同期送信器253とから構成される。一方、調歩同期受信部240は、サンプリングクロック(SCLK)を生成するサンプルクロック生成部241と、そのクロック信号によって送信されるデータをサンプリングして受信する調歩同期受信器243とから構成される。

0032

図5は調歩同期受信器243の詳細な構成を示すブロック図である。

0033

図5が示すように、データ受信部211は調歩同期送信器253から送られてくる信号(以下、受信信号)をサンプリングクロック(SCLK)によってサンプリングし、その結果をデータ制御部221に転送する。データ制御部221は受け取ったサンプルデータを解析し、有効な受信データと判定すると受信レジスタ231の該当するビット位置に受信データを書き込むことで受信を行う。

0034

図6は、図5に示した調歩同期受信器243のさらに詳細な構成を示すブロック図である。

0035

図6に示すように、データ受信部211は受信データを一時的に格納する2ビットのシフトレジスタ212を含み、受信信号をサンプリングする毎にサンプルデータを、レジスタ内アドレスdからアドレスd−1にシフトしてゆく。従って、アドレスdにはサンプリングした最新データが、アドレスd−1には1クロック前にサンプリングしたデータが格納される。サンプル制御部222は、サンプリングカウント数や連続するデータ数などの条件によって、シフトレジスタ212に保持されているサンプルデータから有効なデータを受信レジスタ231に出力させる。サンプリングカウント数は、サンプルカウンタ224に保持される。サンプルカウンタ224は、別の表現をすれば受信カウンタである。

0036

データ制御部221に備えられたセレクタ223では、サンプル制御部222の指示に応じて、アドレスdに保持されているデータまたはアドレスd−1に保持されているデータを受信レジスタ231に出力する。このとき、サンプルカウンタ224は、サンプリングクロック(SCLK)のパルス所定数カウントするとサンプル制御部222に通知する。

0037

まず、この実施例に従うシリアル通信の基本動作について説明する。なお、調歩同期送信器を含む装置を送信装置、調歩同期受信器を含む装置を受信装置という。そして、その送信装置とその受信装置とを含む装置をシリアル通信装置という。

0038

調歩同期送信器253の送信クロック(TCLK)の最大周期をTとすると、T/n(nは3以上の自然数で第1の値ともいう)の関係となるように調歩同期受信器243のサンプリングクロック(SCLK)を設定する。送信クロック1の周期を最大周期Tとし、送信クロック2を送信クロック1の周期の−25%とする。

0039

送信クロック(TCLK)とサンプリングクロック(SCLK)に偏差がない場合、つまりサンプリングクロックをn回カウントした時間が必ずTになる場合は、受信信号をサンプリングクロック(SCLK)によってサンプリングする。そして、サンプリングクロックをn回カウントする毎に、シフトレジスタ212のdのデータを受信レジスタの該当するビット位置に記憶し、サンプルカウンタ224のカウント値リセットする。

0040

次に、送信クロック(TCLK)とサンプリングクロック(SCLK)に偏差がある場合(例えば、サンプリングクロックをn回カウントした時間とTの間に誤差がある)やサンプリングクロックを基準にしたときにTが変動する場合の動作について説明する。

0041

図7は、調歩同期受信器243が行う処理を示すフローチャートである。このフローチャートに沿って調歩同期受信器243の動作の詳細を説明する。ここで、n=4である。

0042

信号受信に先立ち、ステップS1ではサンプルカウンタ224のカウント値をリセットする(0をセットする)。ステップS2では受信信号のサンプリングを開始し、サンプリングする毎にシフトレジスタ212に入力する。サンプル制御部222はサンプリングしたデータ(アドレスdに入力されたデータ)を監視して、ステップS3でデータが反転したかどうかを検査する。つまり、アドレスdのデータ≠アドレスd−1のデータかどうかを調べる。ここで、データが反転していなければ(同じ値であれば)、処理はステップS4に進み、サンプルカウンタ224のカウント値(SCNT)を“+1”インクリメントする。

0043

次に、ステップS5ではサンプルカウンタ224のカウント値がnと等しいかどうかを調べる。ここで、SCNT≠nであれば、処理はステップS2に戻り、次のデータサンプリングを行なう。これに対して、SCNT=nであれば、1ビット分のデータを受信したことになり、処理はステップS6に進む。そして、サンプル制御部222からの指示によりセレクタ223を通じてアドレスdに保持されているデータを受信レジスタ231の該当するビット位置に記憶するよう記憶制御する。続いて、ステップS7ではサンプルカウンタ224のカウント値をリセットする(初期値0をセットする)。その後、処理はステップS2に戻り、次のデータサンプリングを行なう。

0044

また、ステップS3において、データが反転していたと判断された場合は、処理はステップS11に進み、サンプルカウンタ224のカウント値(SCNT)が“0”か否かを確認する。ここで、SCNT=0であれば、n回のサンプリング途中のデータ反転ではないので、処理はステップS12に進み、サンプルカウンタ224のカウント値を“+1”インクリメントする。その後、処理はステップS2に戻り、次のデータサンプリングを行なう。これに対して、SCNT≠0であれば、処理はステップS13に進む。

0045

ステップS13では、シフトレジスタ212のアドレスd−1に保持されているデータを、サンプル制御部222からの指示によりセレクタ223を通じて受信レジスタ231の該当するビット位置に記憶させるよう記憶制御する。

0046

次に、ステップS14でサンプルカウンタ224に初期値の次の値である“1”をセットする。これは第2の値ともいう。このように、サンプルカウンタ224にデータを予め定めた値をセットすることにより、サンプリングタイミング再同期をとる。その後、処理はステップS2に戻り、次のデータサンプリングを行なう。

0047

図8図7に示すフローチャートで動作する調歩同期受信器243の動作を説明する図である。図8は、図7に示すフローチャートにおいてn=4の場合の処理を示している。つまり、送信クロック1の4分の1の周期のサンプリングクロックで、同じデータを4回サンプリングすると、これを有効データとして受信レジスタに記憶する。

0048

調歩同期送信器253は、最長周期Tの送信クロック1でなく、周期が−25%である送信クロック2で送信している。このため、送信クロック1を想定した受信クロックで動作しているために、調歩同期受信器243は、実際には、1ビットの時間的な長さが、サンプリングクロック3回分の長さしかない。

0049

図8では、受信クロックの立下りエッジを基準にデータがシフトレジスタに入力されることを表している。例えば、受信クロックの最初の立下りエッジでアドレスdに“0”が入力される。受信クロックの2つ目の立下りエッジでアドレスdに保持されたデータはアドレスd−1にセットされ、アドレスdに“0”が入力される。また、受信クロックの7つ目の立下りエッジで、アドレスdに“1”が入力される。

0050

図8は、図7のステップS3の判定結果(YESかNOか)、サンプルカウンタ(受信カウンタ)224に値を設定する様子や、図7のステップS4でのサンプルカウンタ224の値の更新や、図7のステップS7、S12、S14での設定を示している。更に図8は、受信レジスタへデータを格納する様子を示している。例えば、ステップS4でサンプルカウンタ224がカウントアップされ、サンプルカウンタ224の値が所定の値(n=4)となる。このため、ステップS5の判定でYESと判定され、ステップS6の処理が行われる。図8はまた、図7のステップS6で、シフトレジスタ212のアドレスdに保持されたデータ“0”(斜線で示した)が、受信レジスタの1ビット目に格納されることを示している。

0051

また、図8には、図7のステップS3でデータが反転したと判定した結果(YESの判定)、図7のステップS13でアドレスd−1に保持されたデータ“0”(斜線で示した)が受信レジスタの2ビット目に格納されることを示している。そして、ステップS14で、データのサンプリングの再同期を行うために、初期値“0”の次の値である“1”をサンプルカウンタ224にセットしていることを示している。

0052

以上のような構成により、送信クロック(TCLK)とサンプリングクロック(SCLK)に偏差がある場合でも、適切にデータを受信することができる。

0053

しかしながら、送信クロック(TCLK)とサンプリングクロック(SCLK)に偏差が大きい場合やデータのビット数が大きい場合には、適切にデータを受信することができない場合がある、そこで、以下に別の実施例を説明する。

0054

この実施例では、調歩同期送信器253は、調歩同期受信器243に送信するデータに予め定めた規則に従ってダミーデータを付加し、このデータを調歩同期受信器243へ送信する。具体的には、nに対して、m≦(n−1)となるように、ダミービットの挿入条件mを決定する。ここで、mとはダミービットが挿入されるビット間隔である。

0055

調歩同期送信器253は、同じデータがm個連続した場合に、反転したダミーデータ1ビットをデータ列に挿入し(例えば、“1”がm個連続したら、“0”をダミービットとしてデータ列に挿入する)。つまり、調歩同期送信器253は、同じデータがm個連続した場合に、このデータと異なる値をダミーデータ1ビットとしてデータ列に付加する。一方、調歩同期受信器243は、同じデータがm個連続した後に続く、反転したデータ1ビットは無効データとして破棄する(例えば、“1”がm個連続した後に続く、“0”はダミービットとして無効とする。このようなことを調歩同期送受信器間通信プロトコルとして取り決める。なお、mの決め方は送信クロックとサンプリングクロックの間の偏差とサンプリング数nによって決まるので後述する。この場合の調歩同期受信器の構成と動作の概要は次のようになる。

0056

調歩同期受信器243は、図9に示すように、図7の構成にデータカウンタ225を追加された構成である。調歩同期受信器243は、前記の周波数誤差が無い場合と同様に、受信信号をサンプリングクロック(SCLK)をn回カウントするごとにシフトレジスタ212のアドレスdのデータを受信レジスタ231の該当するビット位置に記憶してゆく。もし、1ビット分のサンプリングの途中、つまりn回のサンプリングの途中にデータの反転があった場合は、1クロック前のデータ、つまりシフトレジスタ212のアドレス(d−1)のデータを受信レジスタ231の該当するビット位置に記憶する。そして、これと同時にサンプルカウンタ224を1にセットする。この動作によって、受信データが反転する毎に、サンプリングタイミングの再同期をとることができる。また、同じデータがm個連続した後のデータ反転だった場合は、その反転したデータはダミービットと判定して無効データとする。調歩同期受信器243は、この無効データは受信レジスタ231に格納しない。

0057

要するに、調歩同期受信器では反転データを検出する毎にサンプリングタイミングの再同期をとれるよう動作する。一方、同じデータが何ビットも連続してしまうと再同期をとることができずにデータを取りこぼしてしまうため、同じデータがmビット連続した場合ダミービットを挿入して再同期をとれるようにしている。

0058

図10シリアル通信方法の受信側の処理を示すフローチャートである。

0059

ここで、このフローチャートに沿って調歩同期受信器の動作の詳細を説明する。

0060

信号受信に先立ち、ステップS101ではサンプルカウンタ(受信カウンタ)224及びデータカウンタ225のカウント値をリセットする。ステップS102では受信信号のサンプリングを開始し、サンプリングする毎にシフトレジスタ212に入力する。サンプル制御部222はサンプリングしたデータ(シフトレジスタのdのデータ)を監視して、ステップS103でデータが反転したかどうかを(つまり、d≠d−1か?)検査する。ここで、反転していなければ、処理はステップS104に進み、サンプルカウンタ224のカウント値(SCNT)を“+1”インクリメントする。

0061

次に、ステップS105ではサンプルカウンタ224のカウント値がnと等しいかを調べる。ここで、SCNT≠nであれば、処理はステップS102に戻り、次のデータサンプリングを行なう。これに対して、SCNT=nであれば、1ビット分のデータを受信したことになり、処理はステップS106に進み、データカウンタ225のカウント値(DCNT)がm(第3の値)と等しいかを調べる。ここで、DCNT≠mであれば、有効なデータであるので、処理はステップS107に進み、サンプル制御部222からの指示によりセレクタ223を通じてdのデータを受信レジスタ231の該当するビット位置に記憶するよう記憶制御する。続いてステップS108でデータカウンタ225のカウント値を“+1”インクリメントし、ステップS109でサンプルカウンタ224のカウント値をリセットする。その後、処理はステップS102に戻り、次のデータサンプリングを行なう。

0062

さて、ステップS106において、DCNT=mである場合は、受信したデータはダミーデータであり無効なデータであるので、受信レジスタ231にはこれを記憶せずに、処理はステップS110においてデータカウンタ225に“1”をセットする。その後、処理はステップS109でサンプルカウンタ224のカウント値のリセットを行い、ステップS102に戻り、次のデータサンプリングを行なう。

0063

また、ステップS103において、データが反転していたと判断された場合は、処理はステップS111でサンプルカウンタ224のカウント値が“0”か否かを確認する。ここで、SCNT=0であれば、n回のサンプリング途中のデータ反転ではないので、処理はステップS112でサンプルカウンタ224のカウント値を“+1”インクリメントし、その後、処理はステップS102に戻り。次のデータサンプリングを行なう。これに対して、SCNT≠0であれば、処理はステップS113に進み、データカウンタ225のカウント値がmと等しいかどうか、つまり同じデータがm個連続した後のダミービットなのか否かを確認する。

0064

ここで、DCNT≠mであれば、処理はステップS114に進む。そして、1クロック前にサンプリングしたデータ、つまりシフトレジスタ212のアドレス(d−1)のデータを、サンプル制御部222からの指示によりセレクタ223を通じて受信レジスタ231の該当するビット位置に記憶させるよう記憶制御する。さらにステップS115でデータカウンタ225のカウント値を“+1”インクリメントする。

0065

次に、ステップS116でサンプルカウンタ224に“1”をセットすることによりサンプリングタイミングの再同期をとる。その後、処理はステップS102に戻り、次のデータサンプリングを行なう。なお、ステップS113でDCNT=mであった場合は、直前のサンプリングデータはダミービットであるので、データの記憶は行わずに、ステップS117において、データカウンタ225のカウント値をリセットする。さらに、ステップS116ではサンプルカウンタ224に“1”をセットしてサンプリングタイミングの再同期をとり、その後、処理はステップS102に戻り、次のデータサンプリングを行なう。

0066

図11は、図10に示すフローチャートに従って動作する調歩同期受信器243の動作を説明する図である。なお、説明を簡単にするために、図8と同様に、送信クロック2に従って調歩同期送信器253から出力された6ビットのデータ“000110”を受信クロックに従って受信することを示す。図11には、図8と同様にシフトレジスタに入力されるデータの値、サンプルカウンタの値が更新される様子が示されている。図11には更に、データカウンタの値が更新される様子が示されている。図11には、図10のステップS108、S110、S115でデータカウンタの値が更新されることが示されている。

0067

次に調歩同期シリアル通信の送信側の処理について説明する。

0068

図12は調歩同期送信器253の詳細な構成を示すブロック図である。

0069

図12に示すように、送信データ生成部261は、送信したいデータに対して必要に応じてダミービットを付加して送信データを生成し、送信レジスタ262に記憶させる。データ送信部263は、送信レジスタ262に記憶された送信データを読出し、クロック生成部251が生成する送信クロック(TCLK)に同期して送信する。

0070

図13は調歩同期送信器の動作を示すフローチャートである。

0071

ここで、そのフローチャートに沿って送信側の処理について説明する。

0072

まず、スタートビットは必ず“0”なので、ステップS201でデータカウンタ(不図示)に“1”をセットする。次に、ステップS202で送信したいデータを1ビット、送信レジスタ262に記憶させるとともに、ステップS203で1クロック前のビットデータと比較する。即ち、データ反転が生じているかどうかを検査する。

0073

ここで、データが前のビットと同じであれば、処理はステップ204に進んでデータカウンタのカウント値(TDCNT)を“+1”インクリメントし、さらにステップS205でそのカウント値がmと等しいかを比較する。ここで、TDCNT≠mであれば、処理はステップS202に戻って、次のビットを送信レジスタ262に記憶させる。

0074

これに対して、TDCNT=mである場合は、処理はステップS206に進んで反転データ(例えば、ステップS202で記憶したデータが“0”だった場合は“1”)をダミーデータとして送信レジスタ262に記憶する。そして、ステップS207でデータカウンタに“1”をセットし、処理はステップS202に戻る。

0075

さて、ステップS203において、データが前のビットから反転していたと判断された場合、処理はステップS207に進んでデータカウンタに“1”をセットし、その後、処理はステップS202に戻り、次のビットを送信レジスタ262に記憶する。

0076

以上の処理を繰り返すことでデータの送信を行う。

0077

次に、ダミービットの挿入条件mの決め方について説明する。

0078

対象となる通信システムに於いて、同じデータが連続し得るビット数分の伝送時間の最大値(即ち、最大周期Tで送信したとき)と最小値(即ち、送信クロックの周期が最小値で変動したときの伝送時間)の差分を最大周期Tから差し引いた値(TS)を調べる。つまり、TS<T/nである場合、m≦n−1の条件でダミービットの挿入が必要となる。

0079

説明を簡単のために数式で説明すると、送信クロック(TCLK)の周期の変動量が−A%、同じデータが連続し得るビット数がCであった場合、Cビット分の伝送時間の最大値と最小値の差分をΔdとすると、Δdは次のように表わされる。即ち、
Δd=C×T−C×T(1−A/100)
と表わされる。

0080

ここで、TS=(T−Δd)<T/nである場合、ダミービットの挿入が必要となる。

0081

図14は具体的な調歩同期シリアル通信の例を示す図である。この例ではダミービットの挿入条件をm=3としている。図14において、(a)は調歩同期送信器側の動作を示しており、(b)は調歩同期受信器側の動作を示している。

0082

まず、送信側に動作を説明する。

0083

図14(a)の一番上に調歩同期送信器が送りたいデータを示し、その下がダミービットの挿入条件m=3に従ってダミービットを付加した、実際に送信されるデータ列を示している。この例では、送信器が送りたいデータは、Startビット等のオーバーヘッドビットを含めて“00011110100”であるが、m=3としているので、実際に送信されるデータは“0001110110100”となる。その下はデータ送信部263から送信される送信信号と送信クロック(TCLK)を示していて、送信データが送信クロック(TCLK)に同期して送信される様子を示している。

0084

次に、受信器側の動作を説明する。

0085

図14(b)には、送信クロックの最大周期Tに対して、25%少ない周期の送信クロック(周波数としては1.33倍)で送信された場合を示しており、受信器サンプル数をn=4としている。図14(b)の一番上の矢印がサンプリングタイミングを示しており、その上の数字がサンプリング時のサンプルカウンタのカウンタ値を示している。次が参考のために最長周期Tの場合の1フレームのデータ列の長さを示していて、その下が実際に通信ラインを転送された受信信号を示している。

0086

当然ながらこの受信信号は、図14(a)に示している送信器にとっての送信信号と同じものである。さらにその下が、その受信信号をサンプリング制御して受信レジスタ231に記憶された受信データを示している。

0087

この図を参照して再度受信動作の概要を説明すると、図中のタイミングAでn=4となるので、その時サンプリングした“0”のデータを受信レジスタ231の1ビット目の位置に記憶する。タイミングBも同様にn=4となるので、その時サンプリングした“0”のデータを受信レジスタ231の2ビット目の位置に記憶する。タイミングCでサンプリングしたデータが反転したので(図10のステップS103におけるYESの判定)、1クロック前にサンプリングした“0”のデータを受信レジスタの3ビット目の位置に記憶する(図10のステップS114)。これとともに、サンプルカウンタのカウント値を“1”に戻す(図10のステップS116)ことで再同期をとる。タイミングDでn=4となるが(図10のステップS105におけるYESの判定)、これは“0”のデータが3回連続したあとの“1”のデータである(即ち、m=3であり、これが図10のステップS106におけるYESの判定を示唆する)。従って、これをダミービットと判定して、処理はステップS110を経てステップS109に進む。つまり、ステップS107の処理は実行しない。このため、受信レジスタ231にはデータを記憶せずに破棄する。タイミングEでもサンプリングしたデータの反転を検出する。しかしながら、1クロック前にサンプリングしたデータがダミービットを含めて“1”のデータを3回連続した後の“0”なので、タイミングDの場合と同様にダミービットと判定し、受信レジスタ231には記憶せずに破棄する。

0088

以上説明した動作を繰り返すことでデータの受信を行い、結果として受信レジスタに記憶されるデータは“00011110100”となり、送信器が送りたいデータと一致する。

0089

従って、この実施例に従えば、データのシリアル転送において、たとえ送信クロックにずれが発生しても、ダミーデータの挿入と検出により、クロックの再同期を行なうので、正確なデータ伝送を行なうことができる。

0090

なお、本発明は、受信信号の反転を検出する毎にサンプリングクロックの再同期をとることが重要であるので、ダミービットの挿入ではなく、同じデータがm個連続しないように符号化して通信を行うようにしてもよい。

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

関連する公募課題

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

関連する挑戦したい社会課題一覧

この 技術と関連する公募課題

関連する公募課題一覧

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ