(57)【要約】【課題】  通常のデータ送受信を停止させることなく、遅延量を自動調整することができるデータ信号位相調整装置を提供する。【解決手段】  クロック信号に基づいてシリアルデータを取り込むフリップフロップ回路３ａ〜３ｃと、シリアルデータ信号の位相を移相させ、フリップフロップ回路３ａへ出力する移相回路１ａと、シリアルデータ信号の位相を移相させ、フリップフロップ回路３ｂへ出力する移相回路１ｂと、シリアルデータ信号の位相を移相させ、フリップフロップ回路３ｃへ出力する移相回路１ｃと、フリップフロップ回路３ａ及び３ｂにより取り込まれたシリアルデータ中の冗長データに基づいて、タイミングエラーの有無を判定するエラー判定回路４と、エラー判定回路４による判定結果に基づいて移相回路１ａ及び１ｂを制御し、移相回路１ａ及び１ｂの各移相量に基づいて移相回路１ｃの移相量を調整する移相量調整回路５により構成される。【選択図】  図３
2007258995.tif 000002
【特許請求の範囲】
【請求項１】
クロック信号及びシリアルデータ信号が入力され、上記シリアルデータ信号の位相調整を行うデータ信号位相調整装置において、
いずれも上記クロック信号及び上記シリアルデータ信号が入力され、当該クロック信号に基づいてシリアルデータを取り込む第１、第２及び第３のデータ取り込み手段と、
上記クロック信号に対する上記シリアルデータ信号の位相を調整し、上記第１のデータ取り込み手段へ出力する第１の位相調整手段と、
上記クロック信号に対する上記シリアルデータ信号の位相を調整し、上記第２のデータ取り込み手段へ出力する第２の位相調整手段と、
上記シリアルデータ信号の位相を所定量移相させ、上記第３のデータ取り込み手段へ出力する移相手段と、
上記第１及び第２のデータ取り込み手段により取り込まれたシリアルデータ中の冗長データに基づいて、タイミングエラーの有無を判定するエラー判定手段と、
上記エラー判定手段による判定結果に基づいて上記第１及び第２の位相調整手段を制御し、上記第１及び第２の位相調整手段による位相の各調整量に基づいて上記移相手段による移相量を調整するシリアルデータ信号移相量調整手段とを備えたことを特徴とするデータ信号位相調整装置。
【請求項２】
上記シリアルデータ信号移相量調整手段は、上記調整量の差が上記クロック信号の一周期の範囲内となるように上記第１及び第２の位相調整手段を制御し、上記第１又は第２のデータ取り込み手段により取り込まれたシリアルデータに上記タイミングエラーがあった場合、タイミングエラーが生じた側の位相の調整量を上記調整量の差が小さくなるように変化させることを特徴とする請求項１に記載のデータ信号位相調整装置。
【請求項３】
上記シリアルデータ信号移相量調整手段は、移相量調整の開始時、上記第１及び第２の位相調整手段による位相の各調整量について、一方の調整量を上限値とし、他方の調整量を下限値とすることを特徴とする請求項２に記載のデータ信号位相調整装置。
【請求項４】
上記シリアルデータ信号移相量調整手段は、上記第１及び第２のデータ取り込み手段により取り込まれたシリアルデータの両方に上記タイミングエラーがなければ、上記第１及び第２の位相調整手段による位相の各調整量の平均を上記移相手段による移相量とすることを特徴とする請求項１に記載のデータ信号位相調整装置。
【請求項５】
上記第１及び第２の位相調整手段が、いずれも上記シリアルデータ信号の位相を移相させることを特徴とする請求項１に記載のデータ信号位相調整装置。
【請求項６】
他の半導体装置から入力されたシリアルデータ信号の位相調整を行うデータ入力回路と、このデータ入力回路により取り込まれたシリアルデータを処理する処理回路とを有する半導体装置において、
上記データ入力回路は、いずれも上記クロック信号及び上記シリアルデータ信号が入力され、当該クロック信号に基づいてシリアルデータを取り込む第１、第２及び第３のデータ取り込み手段と、
上記クロック信号に対する上記シリアルデータ信号の位相を調整し、上記第１のデータ取り込み手段へ出力する第１の位相調整手段と、
上記クロック信号に対する上記シリアルデータ信号の位相を調整し、上記第２のデータ取り込み手段へ出力する第２の位相調整手段と、
上記シリアルデータ信号の位相を所定量移相させ、上記第３のデータ取り込み手段へ出力する移相手段と、
上記第１及び第２のデータ取り込み手段により取り込まれたシリアルデータ中の冗長データに基づいて、タイミングエラーの有無を判定するエラー判定手段と、
上記エラー判定手段による判定結果に基づいて上記第１及び第２の位相調整手段を制御し、上記第１及び第２の位相調整手段による位相の各調整量に基づいて上記移相手段による移相量を調整するシリアルデータ信号移相量調整手段とからなることを特徴とする半導体装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ信号位相調整装置及び半導体装置に係り、さらに詳しくは、シリアルデータ信号の位相調整を行うデータ信号位相調整装置の改良に関する。
【背景技術】
【０００２】
一般に、独立した半導体回路からなる複数の機能ブロックにより構成された半導体装置では、機能ブロック間でシリアルデータを送受信する際、データを正しくやり取りするために、同期を取る必要がある。このため、ある機能ブロックから送信されるデータの出力と、当該データを受信する他の機能ブロックへのデータの入力とは、共通のクロック信号に基づいて行われる。この様な半導体装置では、半導体回路の個体バラツキ、プリント基板上の配線長、他の半導体装置からのノイズの混入、温度変化、動作電圧の変化などを原因とする信号遅延が生じる場合があった。機能ブロック間のデータ伝送において、この様な信号遅延が生じると、データを正しく取り込めなくなってしまう（いわゆるタイミングエラー）。そこで、半導体回路間で送受信される信号について位相調整し、タイミングエラーの発生を抑制させる技術が提案されている（例えば、特許文献１及び２）。
【０００３】
特許文献１に記載の半導体装置は、テスト信号を出力する前段の出力回路と、テスト信号が入力される後段の入力回路により構成される。この半導体装置では、出力回路により出力されたテスト信号から得られる期待値と、入力回路に取り込まれたテスト信号から得られる期待値とが比較され、比較結果に基づいてデータ信号の位相が調整される。
【０００４】
特許文献２に記載の半導体装置では、外部装置から入力されたクロック信号を分周して内部クロック信号が生成され、この内部クロック信号の位相を調整してデータ信号が取り込まれる。内部クロック信号の位相を調整する位相調整手段は、ＣＰＵなどの外部装置によって制御され、位相の調整量が外部装置から指示される。
【特許文献１】特開２００５−２３４６４８号公報
【特許文献２】特開２００４−７８６６０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上述した特許文献１の方法では、位相調整させる際には必ずテスト信号を送受信させなければならないので、位相調整しようとすると、通常のデータ送受信を一旦停止させなければならなかった。このため、通常のデータ送受信を停止させることのできない装置には適用することができないという問題があった。また、上述した特許文献２の方法では、位相調整手段が外部装置によって制御されることから、外部装置の指示が遅れると、正しく動作しなくなると考えられる。さらに、特許文献２の方法では、内部クロック信号を生成するのにＰＬＬ（Phase Locked Loop）などの回路を用いていることから、消費電力や回路規模が増大してしまうという問題もあった。
【０００６】
本発明は、上記事情に鑑みてなされたものであり、通常のデータ送受信を停止させることなく、遅延量を自動調整することができるデータ信号位相調整装置及び半導体装置を提供することを目的としている。また、消費電力や回路規模を増大させることなく、シリアルデータ信号の移相量を適切に調整することができるデータ信号位相調整装置を提供することを目的としている。
【課題を解決するための手段】
【０００７】
第１の本発明によるデータ信号位相調整装置は、クロック信号及びシリアルデータ信号が入力され、上記シリアルデータ信号の位相調整を行うデータ信号位相調整装置であって、いずれも上記クロック信号及び上記シリアルデータ信号が入力され、当該クロック信号に基づいてシリアルデータを取り込む第１、第２及び第３のデータ取り込み手段と、上記クロック信号に対する上記シリアルデータ信号の位相を調整し、上記第１のデータ取り込み手段へ出力する第１の位相調整手段と、上記クロック信号に対する上記シリアルデータ信号の位相を調整し、上記第２のデータ取り込み手段へ出力する第２の位相調整手段と、上記シリアルデータ信号の位相を所定量移相させ、上記第３のデータ取り込み手段へ出力する移相手段と、上記第１及び第２のデータ取り込み手段により取り込まれたシリアルデータ中の冗長データに基づいて、タイミングエラーの有無を判定するエラー判定手段と、上記エラー判定手段による判定結果に基づいて上記第１及び第２の位相調整手段を制御し、上記第１及び第２の位相調整手段による位相の各調整量に基づいて上記移相手段による移相量を調整するシリアルデータ信号移相量調整手段とを備えて構成される。
【０００８】
このデータ信号位相調整装置では、第１及び第２のデータ取り込み手段により取り込まれたシリアルデータ中の冗長データに基づいて、タイミングエラーの有無が判定され、この判定結果に基づいて第１及び第２の位相調整手段が制御される。その際、第１及び第２の位相調整手段による位相の各調整量に基づいて移相手段による移相量が調整される。この様な構成により、シリアルデータ中の冗長データによるタイミングエラーの判定結果に基づいて、移相手段による移相量が調整されるので、通常のデータ送受信を停止させることなくデータ信号の遅延量を自動的に調整させることができる。
【０００９】
第２の本発明によるデータ信号位相調整装置は、上記構成に加え、上記シリアルデータ信号移相量調整手段が、上記調整量の差が上記クロック信号の一周期の範囲内となるように上記第１及び第２の位相調整手段を制御し、上記第１又は第２のデータ取り込み手段により取り込まれたシリアルデータに上記タイミングエラーがあった場合、タイミングエラーが生じた側の位相の調整量を上記調整量の差が小さくなるように変化させるように構成される。
【００１０】
第３の本発明によるデータ信号位相調整装置は、上記構成に加え、上記シリアルデータ信号移相量調整手段が、移相量調整の開始時、上記第１及び第２の位相調整手段による位相の各調整量について、一方の調整量を上限値とし、他方の調整量を下限値とするように構成される。
【００１１】
第４の本発明によるデータ信号位相調整装置は、上記構成に加え、上記シリアルデータ信号移相量調整手段が、上記第１及び第２のデータ取り込み手段により取り込まれたシリアルデータの両方に上記タイミングエラーがなければ、上記第１及び第２の位相調整手段による位相の各調整量の平均を上記移相手段による移相量とするように構成される。
【００１２】
第５の本発明によるデータ信号位相調整装置は、上記構成に加え、上記第１及び第２の位相調整手段が、いずれも上記シリアルデータ信号の位相を移相させるように構成される。
【００１３】
第６の本発明による半導体装置は、他の半導体装置から入力されたシリアルデータ信号の位相調整を行うデータ入力回路と、このデータ入力回路により取り込まれたシリアルデータを処理する処理回路とを有する半導体装置であって、上記データ入力回路が、いずれも上記クロック信号及び上記シリアルデータ信号が入力され、当該クロック信号に基づいてシリアルデータを取り込む第１、第２及び第３のデータ取り込み手段と、上記クロック信号に対する上記シリアルデータ信号の位相を調整し、上記第１のデータ取り込み手段へ出力する第１の位相調整手段と、上記クロック信号に対する上記シリアルデータ信号の位相を調整し、上記第２のデータ取り込み手段へ出力する第２の位相調整手段と、上記シリアルデータ信号の位相を所定量移相させ、上記第３のデータ取り込み手段へ出力する移相手段と、上記第１及び第２のデータ取り込み手段により取り込まれたシリアルデータ中の冗長データに基づいて、タイミングエラーの有無を判定するエラー判定手段と、上記エラー判定手段による判定結果に基づいて上記第１及び第２の位相調整手段を制御し、上記第１及び第２の位相調整手段による位相の各調整量に基づいて上記移相手段による移相量を調整するシリアルデータ信号移相量調整手段とからなる。
【発明の効果】
【００１４】
本発明によるデータ信号位相調整装置及び半導体装置によれば、シリアルデータ中の冗長データによるタイミングエラーの判定結果に基づいて、移相手段による移相量が調整されるので、通常のデータ送受信を停止させることなくデータ信号の遅延量を自動的に調整させることができる。また、従来の半導体装置に比べ、消費電力や回路規模を増大させることなく、シリアルデータ信号の移相量を適切に調整することができる。
【発明を実施するための最良の形態】
【００１５】
実施の形態１．
図１は、本発明の実施の形態１による半導体装置２０を含む同期システム１００の概略構成の一例を示したブロック図である。この同期システム１００は、信号線により互いに接続された２つの半導体装置１０及び２０と、外部入力装置３０と、移相量記憶装置４０からなり、一方の半導体装置１０から他方の半導体装置２０にシリアルデータ信号及びクロック信号が伝送される。
【００１６】
半導体装置１０は、入力回路１１、処理回路１２及び出力回路１３からなり、また、半導体装置２０は、入力回路２１、処理回路２２及び出力回路２３からなる。この様な同期システム１００は、例えば、携帯通信端末内部における通信処理システムを構成し、クロック信号に基づいてシリアルデータ信号の送受信が行われる。その際、各半導体装置１０及び２０は、それぞれ集積化された半導体回路により構成され、独立した機能ブロックとして機能する。半導体装置１０及び２０間で送受信されるシリアルデータ信号は、クロック信号に同期させた信号となっている。
【００１７】
具体的には、入力回路１１により出力されたデータが処理回路１２において処理され、その処理結果に基づいて出力回路１３からシリアルデータ信号が出力される。このシリアルデータ信号は、入力回路２１に入力され、クロック信号に基づいてシリアルデータが取り込まれる。入力回路２１によって取り込まれたシリアルデータは、処理回路２２で処理され、その処理結果が出力回路２３から出力される。
【００１８】
外部入力装置３０は、入力信号を生成する生成手段であり、例えば、ユーザ操作、半導体装置２０の周囲温度、湿度、動作電圧を検出し、その検出結果に基づいて入力信号を生成する動作を行っている。ここでは、入力回路２１が、外部入力装置３０からの入力信号に基づいて、シリアルデータ信号に対する移相量の調整処理を開始し、その調整結果を移相量記憶装置４０に書き込むものとする。つまり、半導体装置２０の入力回路２１は、半導体装置１０の出力回路１３から入力されたシリアルデータ信号について、位相調整を行うデータ信号位相調整装置となっている。移相量の調整処理は、シリアルデータを取り込む際に生じるタイミングエラーの有無に基づいて行われる。
【００１９】
図２は、図１の同期システム１００の要部における構成例を示したブロック図であり、出力回路１３から入力されたデータ信号をクロック信号に基づいて取り込む入力回路２１が示されている。この入力回路２１は、入力バッファ２１１及び２１２と、データ信号位相調整回路２１３と、補正制御回路２１４からなる。
【００２０】
補正制御回路２１４は、外部入力装置３０からの入力信号に基づいて、移相量の調整処理を開始させるための制御信号を生成する動作を行っている。データ信号位相調整回路２１３は、出力回路１３から入力バッファ２１１を介して入力されたデータ信号の位相を調整し、入力バッファ２１２を介して入力されたクロック信号に基づいてシリアルデータを取り込む動作を行っている。
【００２１】
ここでは、補正制御回路２１４からの制御信号に基づいてデータ信号に対する移相量の調整処理が開始され、その調整結果が補正制御回路２１４及び移相量記憶装置４０へ出力されるものとする。この様なデータ信号位相調整回路２１３は、独立したデータ信号線ごとに設けられ、各データ信号位相調整回路２１３では、共通のクロック信号に基づいてシリアルデータが取り込まれる。
【００２２】
ここで、出力回路１３から出力されるシリアルデータには、通信データやヘッダ情報の他に、冗長データが含まれているものとする。この冗長データは、シリアルデータの取り込みに際して取り込みエラーの発生を検知するためのデータ、例えば、チェックサムコードである。この冗長データは、冗長データ付加回路１３１によって処理回路１２からの入力データに付加され、出力バッファ１３２へ出力される。各データ信号位相調整回路２１３では、取り込んだシリアルデータ中に含まれている冗長データに基づいて、信号遅延に伴って生じるタイミングエラーの有無が検知される。
【００２３】
図３は、図２の入力回路２１の要部における構成例を示したブロック図であり、データ信号位相調整回路２１３が示されている。このデータ信号位相調整回路２１３は、移相回路１ａ〜１ｃ，２、フリップフロップ回路３ａ〜３ｃ、エラー判定回路４及び移相量調整回路５により構成される。
【００２４】
フリップフロップ回路３ａ〜３ｃは、いずれもデータ信号及びクロック信号が入力され、当該クロック信号に基づいてシリアルデータを取り込むデータ取り込み手段であり、ここでは、ハイ（high）状態及びロー（low）状態の２つの出力状態を取り込んだデータに応じて切り替える電子回路により構成されるものとする。具体的には、クロック信号に基づいてラッチするシフトレジスタや、クロック信号の立ち上がり又は立ち下がりを計数するカウンタにより構成され、所定のビット数からなるデータが出力される。
【００２５】
移相回路１ａ〜１ｃは、クロック信号に対するシリアルデータ信号の位相を調整する位相調整手段であり、ここでは、データ信号の位相が所定量移相されるものとする。移相回路２は、クロック信号の位相を所定量移相させる位相調整手段である。
【００２６】
各移相回路１ａ〜１ｃには、共通のデータ信号が入力され、移相後のデータ信号がそれぞれ後段のフリップフロップ回路３ａ〜３ｃへ出力される。各フリップフロップ回路３ａ〜３ｃには、移相回路２による移相後のクロック信号が共通に入力される。フリップフロップ回路３ｃにより取り込まれたシリアルデータは、処理回路２２へ出力される。
【００２７】
エラー判定回路４は、フリップフロップ回路３ａ及び３ｂにより取り込まれたデータに基づいて、タイミングエラーの有無を判定する処理を行っている。このタイミングエラーの判定処理は、フリップフロップ回路３ａ及び３ｂごとに行われ、シリアルデータから抽出した冗長データに基づいてタイミングエラーの有無が判定される。例えば、通信データから求められる期待値と、冗長データが示す期待値とを比較し、両者が一致していれば、タイミングエラーは生じていないものと判定され、両者が一致していなければ、タイミングエラーが生じているものと判定される。
【００２８】
移相量調整回路５は、エラー判定回路４による判定結果に基づいて移相回路１ａ及び１ｂを制御し、移相回路１ａ及び１ｂによる各移相量（位相の調整量）に基づいて移相回路１ｃによる移相量を調整する処理を行っている。具体的には、移相量の差がクロック信号の一周期の範囲内となるように移相回路１ａ及び１ｂを制御し、フリップフロップ回路３ａ及び３ｂにより取り込まれたシリアルデータのいずれか一方又は両方にタイミングエラーがあった場合、タイミングエラーが生じた側の移相量を上記移相量の差が小さくなるように変化させる。一方、フリップフロップ回路３ａ及び３ｂにより取り込まれたシリアルデータの両方にタイミングエラーがなければ、移相回路１ａ及び１ｂによる移相量の平均が移相回路１ｃによる移相量とされる。
【００２９】
ここでは、この様な移相量の調整処理が、補正制御回路２１４からの制御信号に基づいて開始され、フリップフロップ回路３ａ及び３ｂによるシリアルデータの取り込みにタイミングエラーの発生がなくなれば、終了されるものとする。また、移相量調整処理の開始時における各移相回路１ａ及び１ｂの移相量は、移相量記憶装置４０から読み出された移相量が基準値として定められるものとする。
【００３０】
具体的には、移相量記憶装置４０から読み出された移相量をＰＨとすると、移相量調整処理の開始時における移相回路１ａによる移相量の初期値ＰＨ（Ｓ０）は、ＰＨ（Ｓ０）＝ＰＨ＋αと定められ、移相回路１ｂによる移相量の初期値ＰＨ（Ｆ０）は、ＰＨ（Ｆ０）＝ＰＨ−αと定められる。ただし、移相回路１ａ及び１ｂ間の移相量の差ＰＨ（Ｓ０）−ＰＨ（Ｆ０）＝２α（α>０）は、クロック信号の一周期の範囲内、すなわち、３６０度以下であるものとする。また、移相量の調整量αは、各移相回路１ａ及び１ｂが調整可能な範囲内で定められるものとする。
【００３１】
ここで、移相量の調整量αは、同期システム１００の設定データとして予め定められるパラメータであり、例えば、データの完全性が求められるシステムにおいては、小さな値が指定され、そうでない場合には、大きな値が指定される。αとして小さな値を指定すれば、タイミング補正を行う範囲が狭くなるので、位相調整処理を終了するまでに要する時間を短縮することができる。一方、αとして大きな値を指定すれば、タイミング補正の対象範囲を広くして位相調整が行われるので、余裕度の大きな移相量を求めることができる。
【００３２】
このとき、フリップフロップ回路３ａ側にタイミングエラーが生じていれば、移相回路１ａの移相量がＰＨ（Ｓ１）＝ＰＨ（Ｓ０）−βに変更され、フリップフロップ回路３ｂ側にタイミングエラーが生じていれば、移相回路１ｂの移相量がＰＨ（Ｆ１）＝ＰＨ（Ｆ０）＋βに変更される。ただし、０<β<αであるものとする。移相量の変更後に取り込まれたシリアルデータに再度、タイミングエラーがあれば、タイミングエラーが生じた側の移相量が同様に変更される。例えば、フリップフロップ回路３ａ側にタイミングエラーが生じていれば、移相回路１ａの移相量がＰＨ（Ｓ２）＝ＰＨ（Ｓ１）−β＝ＰＨ（Ｓ０）−２βに変更される。
【００３３】
この様に、移相量差ＰＨ（Ｓ）−ＰＨ（Ｆ）が小さくなるようにタイミングエラーが生じた側の移相量が変更される。そして、タイミングエラーの発生がなくなった時点での各移相量ＰＨ（Ｓ）及びＰＨ（Ｆ）に基づいて、移相回路１ｃによる移相量ＰＨ（Ｍ）が決定され、移相量ＰＨ（Ｍ）が移相回路１ｃに設定される。具体的には、ＰＨ（Ｍ）＝｛ＰＨ（Ｓ）＋ＰＨ（Ｆ）｝／２と決定される。
【００３４】
移相量の調整処理が完了すると、移相量ＰＨ（Ｍ）が次回の移相量調整時における基準値として移相量記憶装置４０に書き込まれる。
【００３５】
図４は、図３のデータ信号位相調整回路２１３における移相回路１ａ〜１ｃ，２の構成例を示した図である。この移相回路１ａ〜１ｃ，２は、Ｎ個の遅延素子ａ１〜ａＮからなる遅延素子群５１及びセレクタ５２により構成される。遅延素子ａ１〜ａＮは、入力信号を遅延させる回路素子、例えば、バッファであり、各遅延素子は、直列に接続されている。
【００３６】
セレクタ５２は、移相量調整回路５からの指示に基づいてＮ＋１本の信号線の中から１つを選択し、信号出力を行う信号線の切り替え手段である。このセレクタ５２が信号線を切り替えることにより、各遅延素子ａ１〜ａＮの接続数が切り替えられ、入力信号の移相量をＮ＋１通りに変更することができる。ただし、切り替え可能な移相量の上限値及び下限値の差は、３６０度以下であるものとする。
【００３７】
図５は、図２の入力回路２１における動作の一例を示した図であり、データ信号位相調整回路２１３のフリップフロップ回路３ａ及び３ｂにより取り込まれたシリアルデータの様子が示されている。この例では、データサイズが３２ビットのヘッダ情報と、１２８ビットの通信データと、８ビットの冗長データからシリアルデータが構成されている。
【００３８】
この冗長データは、送信時に通信データに基づいて付加される符号誤り検出用の情報（ここでは、この様な情報を期待値情報と呼ぶことにする）であり、例えば、チェックサムコードが用いられている。具体的には、通信データにおける各ビットの論理値１の数の補数がチェックサムコードとして付加される。例えば、論理値１の数が５２個（１６進数表記で０×３４）であれば、その補数０×ＣＢがチェックサムコードとなる。
【００３９】
従って、受信データから期待値情報を求め、チェックサムコードと比較すれば、当該シリアルデータの取り込みに際し、タイミングエラーが生じたか否かを判別することができる。つまり、フリップフロップ回路３ａ及び３ｂにより取り込まれたシリアルデータについて、通信データに基づいて期待値情報を算出し、算出した期待値情報と、チェックサムコードが示す期待値情報とが一致すれば、タイミングエラーが生じることなくデータが取り込まれたと判定される。一方、期待値情報が一致していなければ、タイミングエラーが生じていると判定される。
【００４０】
図６は、図２の入力回路２１における動作の一例を示したタイミングチャートであり、一定周期で信号レベルが切り替わるクロック信号及び移相量の異なる各データ信号Ａ１〜Ａ６が示されている。クロック信号は、所定の周期Ｂで信号レベルが切り替わる矩形波として示されている。ここでは、クロック信号の立ち上がりエッジ６１〜６３に基づいて、データ信号が取り込まれるものとする。
【００４１】
データ信号Ａ１は、データの変化点がクロック信号の立ち上がりエッジ６１〜６３の位置から最も離れているデータ信号であり、データを取り込ませるのに最適な入力タイミングとなっている。しかし、実際に入力されるデータ信号は、前段の半導体装置１０の特性や伝送路上の遅延などにより、データ信号Ａ２のような入力タイミングで入力される場合が少なくない。この場合、データの変化点とクロック信号の立ち上がりエッジ６１の位置とが重なることから、「データ１」が正しく取り込めず、タイミングエラーが生じることとなる。
【００４２】
そこで、データ信号Ａ２の位相を移相量ゼロ（データ信号Ａ２）から移相量Ｃ４＝３６０度（データ信号Ａ６）までの範囲内でタイミングエラーが生じなくなるまで変化させることにより、適切な移相量が決定され、入力タイミングが補正される。
【００４３】
図７のステップＳ１０１〜Ｓ１０９は、図２の入力回路２１における動作の一例を示したフローチャートであり、位相調整の処理手順が示されている。まず、移相量調整回路５は、補正制御回路２１４からの制御信号によってタイミング補正が指示されると、位相の調整処理を開始する（ステップＳ１０１）。このとき、移相量記憶装置４０から前回の移相量ＰＨが読み出され、各移相回路１ａ及び１ｂに対して、移相量の初期値ＰＨ（Ｓ）及びＰＨ（Ｆ）が指示される（ステップＳ１０２，Ｓ１０３）。
【００４４】
次に、エラー判定回路４は、移相量の調整後に取り込まれたシリアルデータに基づいて、タイミングエラーの有無を判定する（ステップＳ１０４）。このとき、移相量調整回路５は、タイミングエラーが生じていれば、エラーが生じている側の移相量を変更する（ステップＳ１０５，Ｓ１０９）。
【００４５】
タイミングエラーの発生がなければ、タイミングエラーが生じなくなった時点での移相回路１ａ及び１ｂの各移相量に基づいて、移相回路１ｃの移相量が決定される（ステップＳ１０６）。このとき、エラー判定回路４は、タイミング補正の完了を補正制御回路２１４に通知し、移相量調整回路５は、移相量記憶装置４０に今回の移相回路１ｃの移相量を書き込む（ステップＳ１０７，Ｓ１０８）。
【００４６】
本実施の形態によれば、シリアルデータ中の冗長データによるタイミングエラーの判定結果に基づいて、移相回路１ｃによる移相量が調整されるので、通常時における有意な通信データの送受信を停止させることなくデータ信号の遅延量を自動的に調整させることができる。また、従来の半導体装置に比べ、消費電力や回路規模を増大させることなく、シリアルデータ信号の移相量を適切に調整することができ、高速シリアル通信を実現することができる。
【００４７】
なお、本実施の形態では、外部入力装置３０からの入力信号に基づいてシリアルデータ信号に対する移相量の調整処理が開始される場合の例について説明したが、本発明はこれに限られるものではない。例えば、一定時間ごとに移相量の調整処理を行ったり、タイミングエラーが検出された時点で移相量の調整処理を開始するようにしても良い。
【００４８】
実施の形態２．
実施の形態１では、各移相回路１ａ及び１ｂによる移相量の初期値が移相量記憶装置４０から読み出された移相量を基準として定められる場合の例について説明した。これに対し、本実施の形態では、移相量の上限値及び下限値を初期値とする場合について説明する。
【００４９】
図８のステップＳ２０１〜Ｓ２０７は、本発明の実施の形態２によるデータ信号位相調整装置における動作の一例を示したフローチャートである。まず、移相量調整回路５は、補正制御回路２１４からの制御信号によってタイミング補正が指示されると、位相の調整処理を開始する（ステップＳ２０１）。このとき、各移相回路１ａ及び１ｂに対して、移相量の初期値ＰＨ（Ｓ）及びＰＨ（Ｆ）が指示される（ステップＳ２０２）。
【００５０】
具体的には、移相量の上限値をＰＨ（ＭＡＸ）とし、下限値をＰＨ（ＭＩＮ）とすると、移相量調整処理の開始時における移相回路１ａによる移相量の初期値ＰＨ（Ｓ）は、ＰＨ（Ｓ）＝ＰＨ（ＭＡＸ）と定められ、移相回路１ｂによる移相量の初期値ＰＨ（Ｆ）は、ＰＨ（Ｆ）＝ＰＨ（ＭＩＮ）と定められる。つまり、各移相回路１ａ及び１ｂにおいて調整可能な範囲の最大値及び最小値が初期値として定められる。
【００５１】
次に、エラー判定回路４は、移相量の調整後に取り込まれたシリアルデータに基づいて、タイミングエラーの有無を判定する（ステップＳ２０３）。このとき、移相量調整回路５は、タイミングエラーが生じていれば、エラーが生じている側の移相量を変更する（ステップＳ２０４，Ｓ２０７）。
【００５２】
タイミングエラーの発生がなければ、タイミングエラーが生じなくなった時点での移相回路１ａ及び１ｂの各移相量に基づいて、移相回路１ｃの移相量が決定される（ステップＳ２０５）。このとき、エラー判定回路４は、タイミング補正の完了を補正制御回路２１４に通知する（ステップＳ２０６）。
【００５３】
本実施の形態によれば、タイミング補正の対象範囲を最大限広くして位相調整が行われるので、データ信号の入力タイミングの調整幅を可能な範囲で広くすることができ、データ信号の入力タイミングを常に正しく補正することができる。
【００５４】
なお、実施の形態１及び２では、フリップフロップ回路３ａ及び３ｂに入力されるデータ信号の位相をそれぞれ調整し、当該位相の各調整量に基づいてフリップフロップ回路３ｃに入力されるデータ信号の移相量が決定される場合の例について説明したが、本発明はこれに限られるものではない。例えば、フリップフロップ回路３ａ及び３ｂに入力されるクロック信号の位相をそれぞれ調整し、当該位相の各調整量に基づいてフリップフロップ回路３ｃに入力されるデータ信号の移相量を決定しても良い。或いは、フリップフロップ回路３ａ及び３ｂに入力されるシリアルデータ信号及びクロック信号の各位相をそれぞれ調整し、当該各位相の調整量に基づいてフリップフロップ回路３ｃに入力されるデータ信号の移相量を決定しても良い。
【００５５】
図９は、本発明のその他の実施形態によるデータ信号位相調整装置２１３ａの構成例を示したブロック図である。このデータ信号位相調整回路２１３ａは、移相回路７１ａ，７１ｂ，１ｃ、フリップフロップ回路３ａ〜３ｃ、エラー判定回路４及び移相量調整回路５により構成される。移相回路７１ａ及び７１ｂは、クロック信号の位相を所定量移相させる移相手段である。各移相回路７１ａ及び７１ｂには、共通のクロック信号が入力され、移相後のクロック信号がそれぞれ後段のフリップフロップ回路３ａ及び３ｂへ出力される。
【００５６】
移相量調整回路５では、エラー判定回路４による判定結果に基づいて移相回路７１ａ及び７１ｂを制御し、移相回路７１ａ及び７１ｂによる各移相量に基づいて移相回路１ｃによる移相量を調整する処理が行われる。
【００５７】
具体的には、タイミングエラーの発生がなくなった時点での各移相回路７１ａ及び７１ｂによる移相量をそれぞれＰＨＣＬＫ（Ｓ）及びＰＨＣＬＫ（Ｆ）とすると、移相回路１ｃによる移相量ＰＨ（Ｍ）は、ＰＨ（Ｍ）＝３６０度−｛ＰＨＣＬＫ（Ｓ）＋ＰＨＣＬＫ（Ｆ）｝／２と決定される。
【図面の簡単な説明】
【００５８】
【図１】本発明の実施の形態１による半導体装置２０を含む同期システム１００の概略構成の一例を示したブロック図である。
【図２】図１の同期システム１００の要部における構成例を示したブロック図であり、入力回路２１が示されている。
【図３】図２の入力回路２１の要部における構成例を示したブロック図であり、データ信号位相調整回路２１３が示されている。
【図４】図３のデータ信号位相調整回路２１３における移相回路１ａ〜１ｃ，２の構成例を示した図である。
【図５】図２の入力回路２１における動作の一例を示した図であり、フリップフロップ回路３ａ及び３ｂにより取り込まれたシリアルデータの様子が示されている。
【図６】図２の入力回路２１における動作の一例を示したタイミングチャートであり、クロック信号及び移相量の異なる各データ信号Ａ１〜Ａ６が示されている。
【図７】図２の入力回路２１における動作の一例を示したフローチャートであり、位相調整の処理手順が示されている。
【図８】本発明の実施の形態２によるデータ信号位相調整装置における動作の一例を示したフローチャートである。
【図９】本発明のその他の実施形態によるデータ信号位相調整装置２１３ａの構成例を示したブロック図である。
【符号の説明】
【００５９】
１ａ〜１ｃ，２  移相回路
３ａ〜３ｃ  フリップフロップ回路
４  エラー判定回路
５  移相量調整回路
１０，２０  半導体装置
１１，２１  入力回路
１２，２２  処理回路
１３，２３  出力回路
３０  外部入力装置
４０  移相量記憶装置
５１  遅延素子群
５２  セレクタ
７１ａ，７１ｂ  移相回路
１００  同期システム
１３１  冗長データ付加回路
１３２，１３３  出力バッファ
２１１，２１２  入力バッファ
２１３，２１３ａ  データ信号位相調整回路
２１４  補正制御回路
【図１】
2007258995.tif 000003
【図２】
2007258995.tif 000004
【図３】
2007258995.tif 000005
【図４】
2007258995.tif 000006
【図５】
2007258995.tif 000007
【図６】
2007258995.tif 000008
【図７】
2007258995.tif 000009
【図８】
2007258995.tif 000010
【図９】
2007258995.tif 000011