JPH04255013A - シリアルクロック発生回路 - Google Patents

シリアルクロック発生回路

Info

Publication number
JPH04255013A
JPH04255013A JP3016219A JP1621991A JPH04255013A JP H04255013 A JPH04255013 A JP H04255013A JP 3016219 A JP3016219 A JP 3016219A JP 1621991 A JP1621991 A JP 1621991A JP H04255013 A JPH04255013 A JP H04255013A
Authority
JP
Japan
Prior art keywords
signal
clock
serial
value
serial clock
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
JP3016219A
Other languages
English (en)
Other versions
JP2765245B2 (ja
Inventor
Takayoshi Sasaki
隆義 佐々木
Tsuyoshi Katayose
片寄 強
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 Corp
Original Assignee
NEC 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 Corp filed Critical NEC Corp
Priority to JP3016219A priority Critical patent/JP2765245B2/ja
Priority to US07/832,867 priority patent/US5220585A/en
Priority to EP19920102075 priority patent/EP0498450A3/en
Publication of JPH04255013A publication Critical patent/JPH04255013A/ja
Application granted granted Critical
Publication of JP2765245B2 publication Critical patent/JP2765245B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K5/00006Changing the frequency
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/02Speed or phase control by the received code signals, the signals containing no special synchronisation information
    • H04L7/033Speed or phase control by the received code signals, the signals containing no special synchronisation information using the transitions of the received signal to control the phase of the synchronising-signal-generating means, e.g. using a phase-locked loop
    • H04L7/0331Speed or phase control by the received code signals, the signals containing no special synchronisation information using the transitions of the received signal to control the phase of the synchronising-signal-generating means, e.g. using a phase-locked loop with a digital phase-locked loop [PLL] processing binary samples, e.g. add/subtract logic for correction of receiver clock

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はシリアルクロック発生回
路に関し、特にマイクロコンピュータ等に内蔵されるシ
リアルデータ転送回路において、シリアルデータ転送信
号線のレベルが一定の期間内に変化する場合に対応した
シリアルクロック発生回路に関する。
【0002】
【従来の技術】情報処理システムの周辺ハードウェアの
中でもシリアル転送回路は、パラレル転送回路に比べ、
データ転送に必要な信号線数が少なく経済的であるとい
う理由により広く普及している。
【0003】一方、情報処理システムは様々な周辺装置
及び他の情報処理システムとの通信をおこなう必要があ
るが、この時のシリアル転送周波数は情報処理システム
に接続された周辺装置及び機器により様々であるため、
情報処理システムに含まれるシリアル転送回路は、例え
ば中央処理装置からのソフトウェア制御等により、幅広
いシリアル転送周波数に柔軟に対応できることが望まれ
ている。
【0004】シリアルデータを送受するための転送回路
、特にシリアルクロックが送信されないシリアル転送回
路では、受信側でシリアルデータを取り込むためのシリ
アルクロックを発生する回路が必要となる。
【0005】受信側は、予め送信及び受信側で定めたシ
リアル転送周波数の例えば16倍、32倍等のN倍の周
波数の内部クロックを用意する。シリアルクロック発生
回路は、この内部クロックを分周して受信側のシリアル
クロックを発生する。更に、受信シリアルデータの信号
レベルの変化に合わせて、内部クロックの分周比を変更
することにより受信側のシリアルクロックの位相補正を
行い、送信側のシリアルクロックの位相と合わせた受信
側のシリアルクロックを発生する。
【0006】この受信シリアルデータと受信側のシリア
ルクロックの位相合わせは、シリアルデータ転送信号線
の信号レベルの変化検出毎に常に行われる。これは一度
同期がとれた後でも、シリアルデータ転送信号線のディ
レイ等や環境温度変化等により、送信側のシリアルクロ
ックと受信側のシリアルクロックとに位相ずれが発生す
るためである。
【0007】従来のシリアルクロック発生回路を図5に
示すが、伝送制御手順については説明の簡略化のためこ
こでは特に記述しない。
【0008】図5に示すように、シリアルクロック発生
回路は、受信シリアルデータ501のレベル変化を検出
しエッジ検出信号502を出力するエッジ検出回路50
3と、シリアル転送周波数の16倍の周波数のカウント
クロックφ504によりカウント動作を行う4ビットの
バイナリカウンタ505と、バイナリカウンタ505の
オーバーフロー状態の発生を示すオーバーフロー信号5
19と、バイナリカウンタ505の内容をクリアするカ
ウンタクリア回路506と、4ビットバイナリカウンタ
505のカウント値が”1〜3”,”4〜7”,”8〜
11”,”12〜15”のいずれの値であるかを検出し
、各々カウント値に対応した領域検出信号507,50
8,510を発生する領域検出回数511と,受信シリ
アルデータ501の信号レベルが変化しエッジ検出信号
502がアクティブの時に4ビットバイナリカウンタ5
05のカウンタ値が”1〜3”,”4〜7”,”8〜1
1”,”12〜15”のいずれの値であったかを各々記
憶するフラグ512,513,514,515と、バイ
ナリカウンタ505のビット0とフラグ513によって
セットされた値と比較動作を行い比較の結果一致すると
一致信号を発生するビット比較回路516とを備え、バ
イナリカウンタ505のビット3のインバータ517を
介した逆相出力信号によりシリアルクロック518を生
成している。
【0009】シリアル転送データは予め定められた転送
周波数で、正常に転送されており、シリアルクロック5
18との位相が完全に一致している時には以下のように
なる。カウントクロックφ504はシリアルデータの転
送周波数の16倍に設定してあり、図6に示すように、
4ビットのバイナリカウンタ505が”0”からカウン
トを開始して、フルカウントし”15”から”0”に戻
る間が1ビット分のシリアルデータの受信周期に相当す
る。さらに、バイナリカウンタ505のビット3の出力
をインバータ517を介して出力することにより、1ビ
ットの受信シリアルデータの中央で立ち下がるシリアル
クロック518を発生する。
【0010】受信シリアルデータの信号レベルが初期状
態の連続した”1”の状態から”0”に変化し、エッジ
検出回路503よりエッジ検出信号502が伝えられた
場合及び、シリアル転送データの転送周波数の微小変化
は発生した場合のシリアルクロック518の位相補正は
次のように行う。
【0011】受信シリアルデータ501の信号レベルが
変化した時、バイナリカウンタ505のカウント値が”
1〜3”であれば、図6に示す領域指定信号507が”
1”なのでフラグ512が”1”にセットされ、受信シ
リアルデータ501の信号レベルの変化タイミングが記
憶される。同様に受信シリアルデータ501の信号レベ
ルが変化した時、バイナリカウンタ505のカウント値
が”4〜7”の時には、領域指定信号508が”1”な
のでフラグ513が、”8〜11”の時には領域指定信
号509が”1”なのでフラグ514が、”12〜15
”の時には領域指定信号510が”1”なのでフラグ5
15が”1”にセットされる。
【0012】受信シリアルデータ501の信号レベルが
変化した時にバイナリカウンタ505のカウント値が”
0”であればいずれのフラグもセットされない。
【0013】受信シリアルデータ501の信号レベルが
バイナリカウンタ505のカウント値”1〜3”の時に
変化した場合にはフラグ512が”1”にセットされ、
受信シリアルデータ501の信号レベルの変化タイミン
グが記憶される。フラグ512が”1”にセットされて
いるとバイナリカウンタ505のオーバーフロー信号5
19の発生時にカウンタクリア回路506に信号を伝え
、このときフラグ512自身もリセットされる。
【0014】カウンタクリア回路506はフラグ512
から信号が伝えられると、バイナリカウンタ505のオ
ーバーフロー発生後バイナリカウンタ505が”0”か
ら”1”にインクリメントするタイミングでバイナリカ
ウンタ505を”0”にクリアする。
【0015】受信シリアルデータ501の信号レベルが
、バイナリカウンタ505のカウント値”4〜7”の時
に変化した場合にはフラグ513が”1”にセットされ
、受信シリアルデータ501の信号レベルの変化タイミ
ングが記憶される。フラグ513は”1”にセットされ
ると、比較回路516にバイナリカウンタ505のオー
バーフロー信号519の発生と同時にセット信号を伝え
た後、フラグ513自身はリセットされる。ビット比較
回路516はフラグ513からセット信号が伝えられ”
1”にセットされている時に、バイナリカウンタ505
がインクリメントされてビット0の内容が”1”になる
と、すなわちオーバーフロー発生後バイナリカウンタ5
05が”1”の時に一致信号をカウンタクリア回路50
6に伝える。
【0016】カウンタクリア回路506は一致信号が伝
えられると、バイナリカウンタ505の”1”から”2
”にインクリメントする次のタイミングでバイナリカウ
ンタ505を”0”にクリアする。
【0017】受信シリアルデータ501の信号レベルが
バイナリカウンタ505のカウント値が”8〜11”の
時に変化した場合にはフラグ514が”1”にセットさ
れ受信シリアルデータ501の信号レベルの変化タイミ
ングが記憶される。フラグ514が”1”にセットされ
ると、バイナリカウンタ505のオーバーフロー信号5
19の発生と同時に、バイナリカウンタ505のビット
1の内容を”1”にプリセットするとともに、自身もリ
セットされる。すなわちバイナリカウンタ505の次の
カウントは”2”より始まる。
【0018】また、受信シリアルデータ501の信号レ
ベルがバイナリカウンタ505のカウント値が”11〜
15”の時に変化した場合には、フラグ515は”1”
にセットされ、受信シリアルデータ501の信号レベル
の変化タイミングが記憶される。この時にはバイナリカ
ウンタ505のオーバーフロー信号の発生と同時に、バ
イナリカウンタ505のビット0の内容を”1”にプリ
セットするとともに、自身もリセットされる。すなわち
バイナリカウンタ505の次のカウントは”1”より始
まる。
【0019】以上説明したように、受信シリアルデータ
の信号レベルが初期状態の連続した”1”の状態から”
0”に変化しエッジ検出回路503よりエッジ検出信号
502が伝えられた場合及び、偶発的にシリアルデータ
の転送周波数の微小変化が発生して、受信シリアルデー
タ501の信号レベルの変化タイミングがバイナリカウ
ンタ505のカウント値=”0”のタイミングとずれた
場合には、受信シリアルデータ501の信号レベルの変
化タイミングがバイナリカウンタ505のカウント値=
”0”のタイミングから何カウント数分だけ外れたかを
検出し、次にバイナリカウンタ505がカウントするカ
ウント数を±1〜2の間で補正することにより、発生さ
せるシリアルクロック518の位相補正を行う。
【0020】また、受信シリアルデータ501の信号レ
ベルが変化したタイミングでバイナリカウンタ505の
カウント値が”0”であれば、いずれのフラグもセット
せずカウント数の補正を行わないので、シリアルクロッ
ク518の周期はカウントクロックφ504の周期の1
6倍となる。
【0021】受信シリアルデータ501の信号レベルが
変化したタイミングでバイナリカウンタ505のカウン
ト値が”1〜3”であれば、バイナリカウンタ505が
2度”0”をカウントしてから、再度カウント動作を始
めるのでバイナリカウンタ505のオーバーフローから
次のオーバーフローまでのカウント数はフルカウント数
(16)+1=17となる。従ってシリアルクロック5
18の周期はカウントクロックφ504の周期の17倍
となる。
【0022】受信シリアルデータ501の信号レベルが
変化したタイミングでバイナリカウンタ505のカウン
ト値が”4〜7”であれば、バイナリカウンタ505が
一度”1”にインクリメントされた後に”0”に戻り、
再度カウントを始めるのでバイナリカウンタ505のオ
ーバーフローから次のオーバーフローまでのカウント数
はフルカウント数+2=18となる。従ってシリアルク
ロック518の周期はカウントクロックφ504の周期
の18倍となる。
【0023】受信シリアルデータ501の信号レベルが
変化したタイミングでバイナリカウンタ505のカウン
ト値が”8〜11”であれば次のカウントは”2”にプ
リセットされた状態からカウントを始めるので、バイナ
リカウンタ505のオーバーフローから次のオーバーフ
ローまでのカウント数はフルカウント数−2=14とな
る。従ってシリアルクロック518の周期はカウントク
ロックφ504の周期の14倍となる。
【0024】同様に、受信シリアルデータ501の信号
レベルが変化したタイミングでバイナリカウンタ505
のカウント値が”12〜15”であれば、次のカウント
は”1”にプリセットされた状態からカウントを始める
ので、バイナリカウンタ505のオーバーフローから次
のオーバーフローまでのカウント数はフルカウント数−
1=15となる。従ってシリアルクロック518の周期
はカウントクロックφ504の周期の15倍となる。
【0025】一度補正されたシリアルクロック518と
受信シリアルデータ501の位相が再びずれている場合
には再びシリアルクロック518の補正をおこなう。
【0026】上記のバイナリカウンタ505におけるカ
ウント数の補正±1〜2の間で繰り返し、受信シリアル
データ501の信号レベルの変化タイミングがバイナリ
カウンタ505のカウント値=”0”のタイミングから
外れ無くなるまで行うことにより、シリアル転送データ
とシリアルクロック518との位相ずれを補正する。
【0027】以上説明したように従来のシリアルクロッ
ク発生回路は固定ビット長のバイナリカウンタ回路の出
力信号をシリアルクロック発生に使用しているため、カ
ウントクロックが固定の場合、シリアルクロックも固定
となる。
【0028】
【発明が解決しようする課題】上述した従来のシリアル
クロック発生回路を使用して、複数の任意の転送周波数
のシリアルデータ転送を実現する必要がある場合には、
一つの方法として周波数の異なる複数の水晶発振器を用
意し、これらのうちから適切な水晶発振器をソフトウェ
ア処理で選択し、所定のカウントクロックをシリアルク
ロック発生回路に供給する必要があるが、複数の水晶発
振器を用意することは、部品数が増加するという問題が
ある。
【0029】さらに、分周回路をシリアルクロック発生
回路と別に設け1つの水晶発振器のクロックを分周、選
択して、カウントクロックを供給する別な方法では、通
常分周回路はバイナリカウンタで構成されるので、シリ
アルクロック発生回路の分解能を落とさぬように複数の
任意の周波数のカウントクロックを供給するためには、
できる限り高周波数の水晶発振器を用いねばならない。 しかし、発振周波数が高くなると水晶発振器は一般に経
済的に高額となり、また回路の消費電力が周波数に比例
して大きくなる、といった問題がある。
【0030】また、ビット長の変更及び、カウント数の
変更をソフトウェア処理で可能とする変形も容易でない
【0031】更には、シリアルクロック発生クロックを
含む情報処理システムに接続された周辺装置及び機器に
よってはシリアル転送周波数の微小変化の大きさが異な
る場合もあり、その場合受信シリアルデータと受信シリ
アルクロックの位相ずれ対する補正値の変更を変更する
必要があるが、その変更も容易ではない。
【0032】本発明の目的は、複数の任意の転送速度に
応じたシリアルクロックの発生が可能で、しかも任意の
補正値を設定できるシリアルクロック発生回路を提供す
ることにある。
【0033】
【課題を解決するための手段】本発明のシリアルクロッ
ク発生回路は、シリアルデータ転送レートの所定倍の入
力クロックを分周して、受信シリアルデータとの位相を
合せたシリアルクロックを発生するシリアルクロック発
生回路において、前記受信シリアルデータのレベル変化
を検出する手段と、複数の所定の設定値を記憶する第一
の記憶手段と、複数の第一の記憶手段から1つの所定の
設定を選択する手段と、前記選択する手段で選択された
前記所定の設定値を、前記入力クロックで計数する手段
と、複数の所定の設定値を記憶する第二の記憶手段と、
第二の記憶手段の複数の所定の設定値と前記入力クロッ
クで計数する手段の計数値とを前記入力クロックの1カ
ウント動作毎に比較をおこない、一致した時に、一致番
号を出力する比較手段と、前記レベル変化検出信号と、
前記一致信号とで、前記受信シリアルデータのレベル変
化位置を判別し、前記選択する手段の選択条件とする手
段と、前記計数する手段の結果で、シリアルクロックを
発生することを特徴とする。
【0034】
【実施例】次に、本発明のシリアルクロック発生回路の
一実施例を図1を用いて説明する。図1はシリアルクロ
ック発生回路を示すブロック図で、カウントクロックφ
101でラッチ102の内容をデクリメントし、”0”
になったことで、オーバーフロー信号(以下、信号OV
Fと呼ぶ)104を発生する3ビットのデクリメンタ1
03と、外部より(図示せず)のバス105を介して値
が設定できる4ビットのレジスタ106と、レジスタ1
06の設定値とラッチ102の値をコンペアし、両方の
値が一致したことで、一致信号(以下、信号COMPと
呼ぶ)107を出力するコンペア回路135と、外部よ
り(図示せず)バス105を介して値を設定し、かつ各
々セット指示信号108、セット指示信号109、セッ
ト指示信号110、によってラッチ102に設定値をセ
ットする4ビットのレジスタ111、レジスタ112、
レジスタ113と、信号OVF104によりトグル動作
をし、シリアルクロック134を生成するフリップフロ
ップ(以下F/F114と呼ぶ)と、信号COMP10
7でセットされ、信号OVF104でリセットされるフ
リップフリップ(以下F/F115と呼ぶ)と、シリア
ルクロック134が”1”、F/F115の出力が”0
”のとき、判定信号116を”1”に、シリアルクロッ
ク134が”1”、F/F115の出力が”1”のとき
、判定信号117を”1”に、シリアルクロック134
が”0”、F/F115の出力が”0”のとき、判定信
号118を”1”に、シリアルクロック134が”0”
、F/F115の出力が”1”のとき、判定信号119
を”1”にする領域判定回路120と、受信シリアルデ
ータ121のレベル変化を検出しエッジ検出信号122
を出力するエッジ検出回路123と、判定信号116を
入力し、エッジ検出信号122に同期してセット、信号
OVF104によってリセットするフラグ124と、判
定信号117を入力し、エッジ検出信号122に同期し
てセット、信号OVF104を2回カウントしてリセッ
トするフラグ125と、判定信号118を入力し、エッ
ジ検出信号122に同期してセット、信号OVF104
を2回カウントしてリセットするフラグ126と、判定
信号119を入力し、エッジ検出信号122に同期して
セット、信号OVF104によってリセットするフラグ
127と、フラグ124とフラグ125の論理和をとる
ゲート128と、フラグ126とフラグ127の論理和
をとるゲート129と、ゲート128の出力が”0”、
ゲート129の出力が”0”のとき”1”を出力するゲ
ート130と、信号OVF104とゲート128の出力
の論理和をとり、セット指示信号108を出力するゲー
ト131と、信号OVF104とゲート129の出力の
論理和をとり、セット指示信号109を出力する132
と、信号OVF104とゲート130の出力の論理和を
とり、セット指示信号110を出力するゲート133と
、からなる。
【0035】レジスタ106、レジスタ111、レジス
タ112、レジスタ113は図示しないが、本実施例の
シリアルクロック発生回路を含む情報処理システムのマ
イクロコンピュータ等のCPUからソフトウェア処理で
、バス105を介して、値を設定することができる。
【0036】レジスタ113には、受信シリアルデータ
121の転送周波数に対して、発生するシリアルクロッ
ク134の周期が同じようになるような値を設定する。 ここで受信シリアルデータ121の転送周期がカウント
クロックφ101の周期の16倍とすると、レジスタ1
13の設定値は、以下のように”7”となる。
【0037】     (転送レート/2・カウントクロック)−1=
(16φ/2φ)−1=7レジスタ111はシリアルク
ロック134と受信シリアルデータ121の位相がずれ
た時にシリアルクロック134の周期を延ばす値を設定
する。ここでは、”8”を設定する。
【0038】レジスタ112はシリアルクロック134
と受信シリアルデータ121の位相がずれた時にシリア
ルクロック134の周期を縮める値を設定する。ここで
は、”6”を設定する。
【0039】レジスタ106には、受信シリアルデータ
121とシリアルクロック134との位相ずれを検出し
た後、位相ずれに対して補正量を決めるための位相ずれ
の判定領域の設定をおこなう値を設定する。ここでは、
”3”を設定する。
【0040】以下、図2を参照しながら動作を説明する
。始めにラッチ102にはレジスタ113の値(”7”
)が設定されているものとする。F/F114は”1”
、F/F115は”0”とする。デクリメンタ103は
カウントクロックφ101が”0”で−1の減算をおこ
ない、カウントクロックφ101が”1”で、ラッチ1
02に減算した結果を書き戻す。
【0041】カウンタクロックφ101によりデクリメ
ンタ103は、ラッチ102設定されている設定値”7
”からデクリメントを続け、この値がラッチ102の設
定値”3”と一致すると、コンペア回路102は信号C
OMP107をカウントクロックφ101の”1”に同
期して1クロックの期間出力する。信号COMP107
はF/F115をセットする。デクリメンタ103は更
に計数を続け、ラッチ102の値が”0”になると、カ
ウントクロックφ101の”0”に同期して、カウント
クロックφ107の1クロックの期間、信号OVF10
4を出力する。
【0042】信号OVF104はカウントクロックφ1
01の”1”同期で、F/F114をリセットし、シリ
アルクロック134を”0”にする。ここまでで、シリ
アルクロック134が、半周期出力されたことになる。
【0043】又、信号OVF104はカウントクロック
φ101の”1”同期で、F/F115をリセットする
【0044】ラッチ102の内容が”7”〜”4”の間
、F/F114とF/F115より領域判定回路120
は、判定信号116を”1”とする。
【0045】ラッチ102の値が”5”の時に、受信シ
リアルデータ121が変化すると、エッジ検出回路12
3はエッジ検出信号122を、カウントクロックφ10
1が”0”の期間、生成する。このとき、判定信号11
6は”1”となっている。エッジ検出信号122により
、フラグ124は判定信号116が”1”なので、セッ
トされる。このときフラグ125、フラグ126、フラ
グ127はセットされない。
【0046】デクリメンタ103が計数を続けて”0”
を計数すると、信号OVF104が出力され、フラグ1
24、ゲート128、が”1”なので、ゲート131が
”1”となり、信号OVF104と同じタイミングで、
セット指示信号108が”1”となる。カウントクロッ
クφ101が”1”のとき、ラッチ102には、セット
指示信号108によってレジスタ111の値”8”がセ
ットされる。
【0047】信号OVF104は、F/F114をリセ
ットし、シリアルクロック134を”0”にする。信号
OVF104の立ち上がりで、フラグ124はリセット
される。
【0048】ラッチ102には、”8”がセットされた
ので、次のシリアルクロックの半周期つまりシリアルク
ロック134の”0”の周期がカウントクロックφ10
1の9クロックの長さとなる。
【0049】以上の動作は、受信シリアルデータ121
の変化点が、シリアルクロック134が”1”で、かつ
ラッチ102の内容が”5”で起こった場合であるが、
受信シリアルデータ121の変化点が、シリアルクロッ
ク134が”1”で、かつラッチ102の内容が”7”
〜”4”の範囲で起こった場合も同様で、シリアルクロ
ック134の周期はカウントクロックφ101の17ク
ロックの長さとなり、受信シリアルデータ121とシリ
アルクロック134の位相ずれが、カウントクロックφ
101の1クロックだけ補正される。
【0050】次に、受信シリアルデータ121の変化点
が、シリアルクロック134が”1”で、かつラッチ1
02の内容が”3”〜”0”の範囲で起こった場合につ
いて、図3を参照して説明する。なお、ラッチ102の
初期値、F/F等の変化するタイミングは同じなので、
説明を省略する。受信シリアルデータ121の変化点が
、シリアルクロック134が”1”で、かつラッチ10
2の内容が”2”で起こったとすると、F/F115は
ラッチ102の内容が”3”のときセットされ、領域判
定回路120で判定信号117は”1”なので、フラグ
125がセットされる。デクリメンタ103はカウント
を続けて”0”を計数すると信号OVF104を発生す
る。
【0051】信号OVF104は、F/F114をリセ
ットし、シリアルクロック134を”0”にする。フラ
グ125、ゲート128、が”1”なので、ゲート13
1が”1”となり、信号OVF104と同じタイミング
で、セット指示信号108が”1”となる。ラッチ10
2は、セット指示信号108によってレジスタ111の
値”8”がセットされる。
【0052】フラグ125は、信号OVF104の立ち
上がりが2度起こったことで、リセットするので、今は
セットされたままである。デクリメンタ103は”8”
から減算を続け、”0”を計数すると信号OVF104
を発生する。フラグ125は、受信シリアルデータ12
1が変化しないので、セットされたままとなり、ゲート
128、ゲート131が”1”、セット指示信号108
が”1”になることにより、ラッチ102にはもう一度
レジスタ111の値”8”がセットされる。
【0053】信号OVF104は、F/F114をセッ
トし、シリアルクロック134を”1”にする。フラグ
125は信号OVF104の立ち上がりが2度起こった
ことでリセットされる。デクリメンタは計数を続け、”
0”を計数すると信号OVF104を発生し、F/F1
14をリセットさせシリアルクロック134を”0”に
する。
【0054】従って、デクリメンタ103は2度、”8
”を計数するので、シリアルクロック134の周期はカ
ウントクロックφ101の18クロックの長さとなり、
受信シリアルデータ121とシリアルクロック134の
位相ずれが、カウントクロックφ101の2クロックだ
け補正される。
【0055】次に、受信シリアルデータ121の変化点
が、シリアルクロック134が”0”で、かつ  ラッ
チ102の内容が”7”〜”4”の範囲で起こった場合
について説明する。
【0056】受信シリアルデータ121の変化点が、シ
リアルクロック134が”0”で、かつラッチ102の
内容が”6”で起こったとすると、F/F115はリセ
ットされ、領域判定回路120の判定信号118は”1
”なので、フラグ126がセットされる。デクリメンタ
はカウントを続けて”0”を計数すると信号OVF10
4を発生する。
【0057】信号OVF104は、F/F114をセッ
トし、シリアルクロック134を”1”にする。フラグ
126、ゲート129が”1”なので、ゲート132が
”1”となり、信号OVF104と同じタイミングで、
セット指示信号109が”1”となる。カウントクロッ
クφ101が”1”のとき、ラッチ102は、セット指
示信号109によってレジスタ112の値”6”がセッ
トされる。
【0058】フラグ126は、信号OVF104の立ち
下がりが2度起こったことで、リセットするので、今は
セットされたままである。デクリメンタ103は”6”
から減算を続け、”0”を計数すると信号OVF104
を発生する。フラグ126は、受信シリアルデータ12
1が変化しないので、セットされたままとなり、ゲート
129、ゲート132が”1”、セット指示信号109
が”1”になることにより、ラッチ102にはもう一度
レジスタ112の値”7”がセットされる。
【0059】信号OVF104は、F/F114をリセ
ットし、シリアルクロック134を”0”にする。フラ
グ126は信号OVF104の立ち下がりが2度起こっ
たことでリセットされる。デクリメンタは計数を続け、
”0”を計数すると信号OVF104を発生し、F/F
114をセットしシリアルクロック134を”1”にす
る。
【0060】従って、デクリメンタ103は2度、”6
”を計数するので、シリアルクロック134の周期はカ
ウントクロックφ101の14クロックとなり、受信シ
リアルデータ121とシリアルクロック134の位相ず
れが、カウントクロックφ101の2クロックだけ補正
される。
【0061】次に、受信シリアルデータ121の変化点
が、シリアルクロック134が”1”で、かつラッチ1
02の内容が”3”〜”0”の範囲で起こった場合につ
いて説明する。受信シリアルデータ121の変化点が、
シリアルクロック134が”0”で、かつラッチ102
の内容が”2”で起こったとすると、F/F115はラ
ッチ102の内容が”3”のときセットされ、領域判定
回路120で判定信号119は”1”なので、フラグ1
27がセットされる。デクリメンタはカウントを続けて
”0”を計数すると信号OVF104を発生する。信号
OVF104は、F/F114をリセットし、シリアル
クロック134を”0”にする。
【0062】フラグ127、ゲート129が”1”なの
で、ゲート132が”1”となり、信号OVF104と
同じタイミングで、セット指示信号109が”1”とな
る。ラッチ102は、セット指示信号109によってレ
ジスタ112の値”6”がセットされる。
【0063】フラグ127は、信号OVF104の立ち
下がりで、リセットする。デクリメンタ103は”6”
から減算を続け、”0”を計数すると信号OVF104
を発生する。信号OVF104は、F/F114をセッ
トし、シリアルクロック134を”1”にする。
【0064】従って、デクリメンタ103は、”6”を
計数するので、シリアルクロック134の周期はカウン
トクロックφ101の15クロックの長さとなり、受信
シリアルデータ121とシリアルクロック134の位相
ずれが、カウントクロックφ101の1クロックだけ補
正される。
【0065】受信シリアルデータ121が、シリアルク
ロック134の半周期中に変化がない場合を説明する。 フラグ124、フラグ125、フラグ126、フラグ1
27は、受信シリアルデータ121の変化がないのでゲ
ート128、ゲート129は”0”、ゲート、ゲート1
30は”1”となっている。
【0066】デクリメンタ103が”0”を計数して、
信号OVF104を発生すると、ゲート133が”1”
、セット指示信号110が”1”となるので、ラッチ1
02にはレジスタ113の設定値”7”がセットされる
。次のシリアルクロック134の半周期はカウントクロ
ックφ101の8クロックの長さとなる。
【0067】以上動作をまとめると、ラッチ102のレ
ジスタ群の値がセットされてから、シリアルクロック1
34が”1”で、レジスタ106にセットされた値で信
号COMP107が出力される以前までの間に、受信シ
リアルデータ121に変化があった場合、次のシリアル
クロック134の半周期はレジスタ111にセットされ
た値となる。
【0068】ラッチ102にレジスタ群の値がセットさ
れてから、シリアルクロック134が”0”で、レジス
タ106にセットされた値で信号COMP107が出力
される以前から、シリアルクロック134が”0”にな
る間に、受信シリアルデータ121に変化があった場合
、次のシリアルクロック134の半周期はレジスタ11
2にセットされた値となる。フラグ126はリセットさ
れないので、更に次の次のシリアルクロック134の半
周期もレジスタ112にセットされた値となる。
【0069】ラッチ102にレジスタ群の値がセットさ
れてから、シリアルクロック134が”0”で、レジス
タ106にセットされた値で信号COMP107出力さ
れた以降から、シリアルクロック134が”1”になる
までの間に、受信シリアルデータ121に変化があった
場合、次のシリアルクロック134の半周期はレジスタ
112にセットされた値となる。
【0070】更に、連続した動作を説明する。ラッチ1
02の値が”5”の時に、受信シリアルデータ121が
変化すると、次の半周期はカウントクロックφ101の
9クロックとなり補正されるが、受信シリアルデータの
周波数が変化しないとすると、次の受信データ121の
変化点は、ラッチ102の値が”6”でシリアルクロッ
ク114が”1”の時なので、次の半周期はまた9クロ
ックとなり補正される。次の受信データ121の変化点
は、ラッチ102の値が”7”でシリアルクロック11
4が”1”の時なので、次の半周期はまた9クロックと
なり補正される。次の受信データ121の変化点は、ラ
ッチ102の値が”0”でシリアルクロック114が”
0”の時なので、次の半周期は7クロックとなり補正さ
れる。次の受信データ121の変化点は、ラッチ102
の値が”7”でシリアルクロック114が”1”の時な
ので、次の半周期はまた9クロックとなり補正される。
【0071】受信シリアルデータ101の周波数変化が
ない場合には、上述したように本実施例で発生するシリ
アルクロック134の周期は、カウントクロックφ10
1に換算して、17クロックと15クロックを交互に繰
り返し、受信シリアルデータ101を確実に情報機器に
取り込めるような受信シリアルクロック104を発生す
る。
【0072】以上の説明ではデクリメンタ103、ラッ
チ102、コンペア回路135、レジスタ106、レジ
スタ111、レジスタ112、レジスタ113のビット
長はすべて4ビットとしたが、各レジスタへの設定デー
タは説明したようにソフトウェアで設定する値であるか
ら、必要とする最大のシリアル転送周波数と供給可能な
カウントクロックの周波数から任意のビット長(例えば
8ビット)を選択することができる。
【0073】またカウントクロックφ101はシリアル
転送周波数の16倍の周波数としてあるが、シリアル転
送周波数より高い整数倍の周波数であれば同様の効果を
得る事ができる。
【0074】次に、本発明のシリアルクロック発生回路
の第2の実施例を図4を用いて説明する。図4はシリア
ルクロック発生回路を示すブロック図である。この回路
はカウントクロックφ101でラッチ102の内容をデ
クリメントし、”0”になったことで、信号OVF10
4を発生する3ビットのデクリメンタ103と、外部よ
り(図示せず)バス105を介して値を設定し、かつ各
々がセット指示信号108、セット指示信号109、セ
ット指示信号110、によってラッチ102に設定値を
セットする。各々が4ビットのレジスタ111、レジス
タ112、レジスタ113と、レジスタ113の上位側
3ビットとの値とラッチ102の値をコンペアし、両方
の値が一致したことで、信号COMP107を出力する
コンペア回路136と、信号OVF103によりトグル
動作をし、シリアルクロック134を生成するF/F1
14と、信号COMP107でセットし、信号OVF1
04でリセットするF/F115と、F/F114の出
力が”1”、F/F115の出力が”0”のとき、判定
信号116を”1”に、F/F114の出力が”1”、
F/F115の出力が”1”のとき、判定信号117を
”1”に、F/F114の出力が”0”、F/F115
の出力が”0”のとき、判定信号118”1”に、F/
F114の出力が”0”、F/F115の出力が”1”
のとき判定信号119を”1”にする領域判定回路12
0と、受信シリアルデータ121のレベル変化を検出し
エッジ検出信号122を出力するエッジ検出回路123
と、判定信号116を入力し、エッジ検出信号122に
同期してセット、信号OVF104によってリセットす
るフラグ124と、判定信号117を入力し、エッジ検
出信号112に同期してセット、信号OVF104を2
回カウントしてリセットするフラグ125と、判定信号
118を入力し、エッジ検出信号112に同期してセッ
ト、信号OVF104を2回カウントしてリセットする
フラグ126と、判定信号119を入力し、エッジ検出
信号112に同期してセット、信号OVF104によっ
てリセットするフラグ127と、フラグ124とフラグ
125の論理和をとるゲート128と、フラグ126と
フラグ127の論理和をとるゲート129と、ゲート1
27の出力が”0”、ゲート128の出力が”0”のと
き”1”を出力するゲート130と、信号OVF104
とゲート128の出力の論理和をとり、セット指示信号
108を出力するゲート131と、信号OVF104と
ゲート129の出力の論理和をとり、セット指示信号1
09を出力するゲート132と、信号OVF104とゲ
ート130の出力の論理和をとり、セット指示信号11
0を出力するゲート133とからなる。
【0075】レジスタ111、レジスタ112、レジス
タ113は図示しないが、本実施例のシリアルクロック
発生回路を含む情報処理システムのマイクロコンピュー
タ等のCPUからソフトウェア処理で、バス105を介
して値を設定することができる。
【0076】図1に示した第1の実施例と異なる部分だ
けを説明する。図1に示したレジスタ106が削除され
、レジスタ106を入力としていたコンペア回路135
が、レジスタ113の上位3ビットを入力としたコンペ
ア回路136に変更されている。
【0077】第1の実施例では、受信シリアルデータ1
21に対して、シリアルクロック134の位相ずれに対
する補正量の判別点が、レジスタ106に設定した値で
おこなわれていたが、本実施例では、レジスタ113の
上位側3ビットの値でおこなわれる。レジスタ113の
上位側3ビットをコンペア回路136に入力すると、ラ
ッチ102とコンペアされる値はレジスタ113に設定
された値の1/2となる。
【0078】従って、本実施例は、第1の実施例におい
てレジスタ106にレジスタ113の1/2の値を設定
した場合の動作とまったく同じであるので、動作の説明
は省略する。つまり本実施例でも、第1の実施例とほぼ
同様な動作が可能で、レジスタ106に値を設定するソ
フトウェアのステップを省くことができる。
【0079】
【発明の効果】以上、説明したように本発明のシリアル
クロック発生回路は、従来のシリアルクロック発生回路
に比して、カウントクロックが固定であっても、カウン
タにセットするレジスタの値をソフトウェアにより設定
することで、カウンタ回路の最大カウント数以下であれ
ば複数の任意の転送速度に応じたシリアルクロックの発
生が可能である。
【0080】このため、シリアル転送速度に対応した周
波数の異なる複数の水晶発振器を用意したり、複数の転
送速度の公倍数にあたる周波数の高い水晶発振器を用い
る必要はなく、様々な転送速度に対応したシリアル通信
を必要とするマイクロコンピュータ等に内蔵されるシリ
アル転送回路のシリアルクロック発生回路として適して
いる。
【0081】更に、シリアル転送データと受信シリアル
クロックの位相ずれに対する補正値もソフトウェアによ
ってレジスタにセットする値で定まるので、任意の補正
値を設定することが可能である。
【図面の簡単な説明】
【図1】本発明の第1の実施例のシリアルクロック発生
回路のブロック図である。
【図2】本発明の動作を示すタイミング図である。
【図3】本発明の動作を示すタイミング図である。
【図4】本発明の第2の実施例を示すシリアルクロック
発生回路のブロック図である。
【図5】従来のシリアルクロック発生回路のブロック図
である。
【図6】従来のシリアルクロック発生回路の動作を示す
タイミング図である。
【符号の説明】
101    カウントクロックφ 102    ラッチ 103    デクリメンタ 104    オーバーフロー信号(信号OVF)10
5    バス 106    レジスタ 107    コンペア信号(信号COMP)108、
109、110    セット指示信号111、112
、113    レジスタ114、115    フリ
ップフロップ116、117、118、119    
判定信号120    領域判定回路 121    受信シリアルデータ 122    エッジ検出信号 123    エッジ検出回路 124、125、126、127    フラグ128
、129、130、131、132、133    ゲ
ート 134    シリアルクロック 135    コンペア回路 501    受信シリアルデータ 502    エッジ検出信号 503    エッジ検出回路 504    カウントクロックφ 505    4ビットバイナリカウンタ506   
 カウンタクリア回路 507、508、509、510    領域判定信号
511    領域検出回路 512、513、514、515    フラグ516
    ビット比較回路 517    インバータ 518    シリアルクロック 519    オーバーフロー信号

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】  シリアルデータ転送レートの所定倍の
    入力クロックを分周して受信シリアルデータとの位相を
    合せたシリアルクロックを発生するシリアルクロック発
    生回路において、前記受信シリアルデータのレベル変化
    を検出する手段と、任意の複数の設定値を記憶する第1
    の記憶手段と、前記第1の記憶手段から1つの前記任意
    の設定値を選択する手段と、前記選択する手段により選
    択された前記任意の設定値を前記入力クロックで計数す
    る手段と、任意の値を記憶する第2の記憶手段と、前記
    第2の記憶手段に記憶された値と前記入力クロックで計
    数する手段の計数値とを前記入力クロックの1カウント
    動作毎に比較をおこない一致した時に一致信号を出力す
    る比較手段と、前記レベル変化検出信号と前記一致信号
    に対応して前記受信シリアルデータのレベル変化位置を
    判別し前記選択する手段の選択条件とする手段と、前記
    計数する手段の結果に応じてシリアルクロックを発生す
    る手段とを有することを特徴とするシリアルクロック発
    生回路。
  2. 【請求項2】  前記第1の記憶手段が第1、第2及び
    第3のレジスタから成っていることを特徴とする請求項
    1記載のシリアルクロック発生回路。
JP3016219A 1991-02-07 1991-02-07 シリアルクロック発生回路 Expired - Fee Related JP2765245B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP3016219A JP2765245B2 (ja) 1991-02-07 1991-02-07 シリアルクロック発生回路
US07/832,867 US5220585A (en) 1991-02-07 1992-02-06 Serial clock generating circuit
EP19920102075 EP0498450A3 (en) 1991-02-07 1992-02-07 Serial clock generating circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3016219A JP2765245B2 (ja) 1991-02-07 1991-02-07 シリアルクロック発生回路

Publications (2)

Publication Number Publication Date
JPH04255013A true JPH04255013A (ja) 1992-09-10
JP2765245B2 JP2765245B2 (ja) 1998-06-11

Family

ID=11910420

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3016219A Expired - Fee Related JP2765245B2 (ja) 1991-02-07 1991-02-07 シリアルクロック発生回路

Country Status (3)

Country Link
US (1) US5220585A (ja)
EP (1) EP0498450A3 (ja)
JP (1) JP2765245B2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0785101B2 (ja) * 1991-03-20 1995-09-13 株式会社東芝 論理信号検査方法及び検査装置
JPH06177940A (ja) * 1992-12-08 1994-06-24 Mitsubishi Electric Corp Uartおよびこれを用いたシステム
US5359635A (en) * 1993-04-19 1994-10-25 Codex, Corp. Programmable frequency divider in a phase lock loop
US5471607A (en) * 1993-04-22 1995-11-28 Analog Devices, Inc. Multi-phase multi-access pipeline memory system
JPH08161259A (ja) * 1994-11-30 1996-06-21 Mitsubishi Electric Corp 直列データ受信装置及び直列データ転送装置
US5930311A (en) * 1996-10-10 1999-07-27 Alcatel Usa Sourcing, L.P. Circuitry for retiming a received data signal
US10340904B2 (en) 2016-06-28 2019-07-02 Altera Corporation Method and apparatus for phase-aligned 2X frequency clock generation
CN116340241B (zh) * 2023-05-19 2023-08-01 无锡国芯微高新技术有限公司 串行通信保护方法、装置、设备及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02216513A (ja) * 1988-11-25 1990-08-29 Nec Corp シリアルクロック発生回路

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5941338B2 (ja) * 1976-05-10 1984-10-06 日本電気株式会社 クロツクパルス再生回路
US4896337A (en) * 1988-04-08 1990-01-23 Ampex Corporation Adjustable frequency signal generator system with incremental control
JP2512786B2 (ja) * 1988-07-18 1996-07-03 富士通株式会社 位相整合回路
EP0370528B1 (en) * 1988-11-25 1995-03-01 Nec Corporation Serial clock generating circuit
US4931986A (en) * 1989-03-03 1990-06-05 Ncr Corporation Computer system clock generator for generating tuned multiple clock signals

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02216513A (ja) * 1988-11-25 1990-08-29 Nec Corp シリアルクロック発生回路

Also Published As

Publication number Publication date
EP0498450A3 (en) 1994-06-01
EP0498450A2 (en) 1992-08-12
US5220585A (en) 1993-06-15
JP2765245B2 (ja) 1998-06-11

Similar Documents

Publication Publication Date Title
EP1133728B1 (en) Clock generation and distribution in an emulation system
US5506878A (en) Programmable clock having programmable delay and duty cycle based on a user-supplied reference clock
US5361290A (en) Clock generating circuit for use in single chip microcomputer
US5268656A (en) Programmable clock skew adjustment circuit
US4339722A (en) Digital frequency multiplier
US4989223A (en) Serial clock generating circuit
JP3619466B2 (ja) 半導体装置
JP4615089B2 (ja) 遅延ロックループ回路
US6556643B2 (en) Majority filter counter circuit
US5485602A (en) Integrated circuit having a control signal for identifying coinciding active edges of two clock signals
JPH04255013A (ja) シリアルクロック発生回路
JP2000091889A (ja) パルス信号発生装置及びパルス信号発生方法
EP1271786B1 (en) Improved delay locked loop circuit
GB2052815A (en) Digital frequency multiplier
US7170963B2 (en) Clock recovery method by phase selection
JPH03171945A (ja) ディジタルシステム
JP3121397B2 (ja) 同期タイミング生成回路
JPH02216513A (ja) シリアルクロック発生回路
JPH08149119A (ja) ビット位相同期回路
JP2575221B2 (ja) Pll回路
JPH03812B2 (ja)
JPH11298460A (ja) クロック切替回路
JPH08204524A (ja) クロック位相制御回路とこれを用いたデジタル信号処理回路
JPH03255743A (ja) ビット同期回路
JP2002051032A (ja) クロック補正回路

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19980303

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

Free format text: PAYMENT UNTIL: 20080403

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20090403

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20100403

Year of fee payment: 12

LAPS Cancellation because of no payment of annual fees