(57)【特許請求の範囲】
【請求項１】
シリアルＡＴＡにおけるＯＯＢパターンを検出するＯＯＢ検出回路であって、
前記ＯＯＢパターンのスケルチ区間とバースト区間とを判定するための振幅判定回路と、
前記スケルチ区間の時間を判定するための時間判定回路と、
前記時間判定回路の回路特性を調整するための調整機構と、その出力を検出して前記調整機構を制御するフィードバック機構とを有した自己調整機構を備え、
前記自己調整機構は、
前記時間判定回路内に設けられ、前記スケルチ区間の前記時間を測定するスケルチ時間測定回路での反応時間を調整するデータを格納したレジスタを含み、
前記フィードバック機構は、
自己調整動作時には、通常通信動作時の入力信号の代わりに、電位がローまたはハイの既知の第１の期間を有するパルスパターンを生成して前記時間判定回路に与えるパターン生成回路と、
前記スケルチ時間測定回路の出力信号を受け、前記パルスパターンの前記第１の期間に前記スケルチ時間測定回路の回路特性で決まる反応時間が加わった前記第１の期間と同じ電位の第２の期間を測定する時間測定回路と、
前記時間測定回路で測定された前記第２の期間と、予め準備された前記シリアルＡＴＡの規格に適合する規格値とを比較する比較回路とを有し、
前記第２の期間が、前記規格値に適合していない場合には、前記レジスタの前記データを変化させて前記反応時間を調整し、前記第２の期間が前記規格値に適合した時点で前記レジスタの前記データを固定する、ＯＯＢ検出回路。
【請求項２】
請求項１記載のＯＯＢ検出回路を有するシリアルＡＴＡシステムであって、
演算処理装置が、前記自己調整機構での自己調整動作を制御し、該自己調整動作の終了を確認して通常通信動作を開始する、シリアルＡＴＡシステム。
【請求項３】
請求項１記載のＯＯＢ検出回路を有するシリアルＡＴＡシステムであって、
演算処理装置が、通常通信動作の開始を設定した後、前記自己調整機構が自己調整動作を実行し、その終了を確認することで前記通常通信動作が開始される、シリアルＡＴＡシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、シリアルＡＴＡ（SATA：Serial Advanced Technology Attachment）を用いるシステムの、ホストとデバイスにおけるＯＯＢ（Out Of Band）検出回路に関する。
【背景技術】
【０００２】
コンピュータのホストとデバイスの通信規格であるシリアルＡＴＡ（以下ＳＡＴＡと呼称）において、ホストとデバイスが消費電力を低減したパワーマネージメント（以下ＰＭと呼称）状態から復帰をするとき、およびリセットを行うときに、ホストとデバイスのどちらかから相手側に対して特定のパターン（ＯＯＢパターン）を送信する。そして、受信側は送られてきたパターンがＯＯＢパターンであることを認識する必要がある。
【０００３】
ＯＯＢ信号の検出は、そのバースト期間とスペース期間（スケルチ期間）とを検出することにより行われる。なお、従来のＯＯＢ検出回路の構成については、特許文献１の図７に開示されている。
【０００４】
【特許文献１】特開２００７−４５８７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
特許文献１に示されるように、ＯＯＢ信号検出回路はアナログ回路で構成されるが、アナログ回路はウエハープロセスのばらつき、温度、電源電圧の変動により、特性が変動し、ＳＡＴＡで定められた信号判定のための規格を満たさない場合があり、製品の歩留まりを低下させる原因となる。
【０００６】
本発明は、上記のような問題点を解決するためになされたものであり、アナログ回路に特性変動が生じた場合でも、正確な信号判定を可能とし、製品の歩留まりを低下させないＯＯＢ検出回路を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明に係る１の実施の形態においては、ＯＯＢ検出回路内において、振幅判定回路、時間判定回路のそれぞれの特性を調整するための調整機構と、振幅判定回路および時間判定回路のそれぞれの出力を検出して、それぞれの調整機構を制御するフィードバック機構とを有した自己調整機構を備え、自己調整機構は、時間判定回路内に設けられ、スケルチ区間の時間を測定するスケルチ時間測定回路での反応時間を調整するデータを格納したレジスタを含み、フィードバック機構は、自己調整動作時には、通常通信動作時の入力信号の代わりに、電位がローまたはハイの既知の第１の期間を有するパルスパターンを生成して時間判定回路に与えるパターン生成回路と、スケルチ時間測定回路の出力信号を受け、パルスパターンの第１の期間にスケルチ時間測定回路の回路特性で決まる反応時間が加わった第１の期間と同じ電位の第２の期間を測定する時間測定回路と、時間測定回路で測定された第２の期間と、予め準備されたシリアルＡＴＡの規格に適合する規格値とを比較する比較回路とを有し、第２の期間が、規格値に適合していない場合には、レジスタのデータを変化させて反応時間を調整し、第２の期間が規格値に適合した時点でレジスタのデータを固定する。
【発明の効果】
【０００８】
上記実施の形態によれば、自己調整機構により、アナログ回路である振幅判定回路および時間判定回路に特性変動が生じている場合であっても、フィードバック制御により変動を吸収した閾値および反応時間に設定することができ、正確な信号判定を可能とし、製品の歩留まりを低下させないＯＯＢ検出回路を得ることができる。
【発明を実施するための最良の形態】
【０００９】
＜前提技術の説明＞
本発明の説明に先立って、図１〜図６を用いて、ＳＡＴＡにおけるＯＯＢ信号の検出についての前提技術を説明する。
【００１０】
図１は、ホストＨＳとデバイスＤＶとの接続関係を示す図であり、ホストＨＳからデバイスＤＶにＯＯＢパターンを出力している状態を模式的に示している。ホストＨＳはコンピュータのマザーボード等に相当し、デバイスＤＶはハードウエアディスクドライブ（ＨＤＤ）やＤＶＤ（digital versatile disc）のドライブに相当する。
【００１１】
ＳＡＴＡは＋／−の差動信号で通信を行い、ホストＨＳ、デバイスＤＶＴそれぞれが、Ｔｘ＋ポート、Ｔｘ−ポート、Ｒｘ＋ポート、Ｒｘ−ポートの４つのポートを有し、Ｔｘ＋ポート、Ｔｘ−ポートが送信側ポートとなり、Ｒｘ＋ポート、Ｒｘ−ポートが受信側ポートとなる。
【００１２】
図２は、ＯＯＢパターンを示す図であり、差動信号の振幅が小さいスケルチ区間（時間Ｔ２）と、振幅が大きいバースト区間（時間Ｔ１）とが交互に繰り返す。
【００１３】
図３には、バースト区間およびスケルチ区間のそれぞれの時間Ｔ１およびＴ２の規格を、各種ＯＯＢパターンごとに示している。
【００１４】
すなわち、ＯＯＢパターンには、ＣＯＭＷＡＫＥ、ＣＯＭＩＮＩＴおよびＣＯＭＲＥＳＥＴの３種類があり、ホストあるいはデバイスから相手に対してＰＭモードから復帰したい場合にＣＯＭＷＡＫＥを出力し、デバイスからホストに対してハードウエアリセットをかけたい場合にＣＯＭＩＮＩＴを出力し、ホストがデバイスに対してハードウエアリセットをかけたい場合にＣＯＭＲＥＳＥＴを出力する。
【００１５】
図３に示されるように、ＣＯＭＷＡＫＥの場合、Ｔ１およびＴ２の時間は１０６．７ｎｓであり、ＣＯＭＩＮＩＴおよびＣＯＭＲＥＳＥＴでは、Ｔ１の時間は１０６．７ｎｓ、Ｔ２の時間は３２０ｎｓである。
【００１６】
図４には、受信側においてＯＯＢパターンを認識するＯＯＢ検知回路の構成を示しており、スケルチ区間とバースト区間とを判定するための振幅判定回路１と、スケルチ区間の時間を判定するための時間判定回路２とを備えている。
【００１７】
図４に示されるように、振幅判定回路１には、Ｒｘ＋ポートおよびＲｘ−ポートを介してＯＯＢパターンが入力され、振幅判定を行った後、時間判定回路２を介すことで、ＣＯＭＷＡＫＥあるいはＣＯＭＩＮＩＴおよびＣＯＭＲＥＳＥＴの何れであるかの判定がなされる。
【００１８】
振幅判定回路１および時間判定回路２には、それぞれＯＯＢパターンを判定するための規格値が存在しており、それぞれの規格値を図５および図６に示す。
【００１９】
図５に示すように、バーストと判定しなければならない振幅範囲は２００ｍＶｐｐｄ以上、バースト、スケルチのどちらに判定しても良い振幅範囲は７５ｍＶ以上、２００ｍＶ未満、スケルチと判定しなければならない振幅範囲は７５ｍＶｐｐｄ未満である。なお、ｐｐｄとは、peak to peak differentialを表し、差動信号の信号振幅の単位である。
【００２０】
図６に示すように、ＣＯＭＷＡＫＥのスケルチ時間規格では、ＣＯＭＷＡＫＥと判定しても良いスケルチ時間は３５ｎｓ以上１７５ｎｓ未満であり、ＣＯＭＷＡＫＥと判定しなければならないスケルチ時間は１０１．３ｎｓ以上１１２ｎｓ未満であり、ＣＯＭＷＡＫＥと判定してはならないスケルチ時間は３５ｎｓ未満、１７５ｎｓ以上である。
【００２１】
また、ＣＯＭＩＮＩＴおよびＣＯＭＲＥＳＥＴのスケルチ時間規格では、ＣＯＭＩＮＩＴ／ＣＯＭＲＥＳＥＴと判定しても良いスケルチ時間は１７５ｎｓ以上５２５ｎｓ未満であり、ＣＯＭＩＮＩＴ／ＣＯＭＲＥＳＥＴと判定しなければならないスケルチ時間は３０４ｎｓ以上３３６ｎｓ未満であり、ＣＯＭＩＮＩＴ／ＣＯＭＲＥＳＥＴと判定してはならないスケルチ時間は１７５ｎｓ未満、５２５ｎｓ以上である。
【００２２】
デバイスＤＶは、ＰＭ状態では基準クロックも停止する場合があるため、振幅判定回路１および時間判定回路２はいずれも基準クロックを必要としないアナログ回路で構成する必要がある。
【００２３】
＜発明の技術思想＞
以上説明したように、振幅判定回路１および時間判定回路２はいずれも基準クロックを必要としないアナログ回路で構成する必要があるので、特性変動により、ＳＡＴＡで定められた信号判定のための規格を満たさなくなる場合がある。本発明は、振幅判定回路１および時間判定回路２のそれぞれの回路特性を調整するための調整機構（以下調整レジスタ）をＯＯＢ検出回路内に設け、さらに回路内に、振幅判定回路１および時間判定回路２のそれぞれの出力を検出して、その結果に基づいて上記調整機構を制御するフィードバック機構を設けることで、回路特性が規格内に収まるように調整レジスタを自動調整するという技術思想に基づいている。以下、実施の形態について説明する。
【００２４】
＜Ａ．実施の形態１＞
＜Ａ−１．振幅判定回路の自己調整機構＞
図７は、本発明に係る実施の形態１のＯＯＢ検出回路１００の構成を示すブロック図であり、特に、振幅判定回路１の自己調整機構を示す図である。
【００２５】
図７に示すように、Ｒｘ＋ポートおよびＲｘ−ポートは、それぞれ信号経路Ｐ１およびＰ２を介して振幅判定回路１に接続されるが、信号経路Ｐ１と接地との間には、スイッチＳＷ１Ａおよび終端抵抗ＲＴＡが介挿され、また、信号経路Ｐ２とグランドＧＮＤとの間には、スイッチＳＷ１Ｂおよび終端抵抗ＲＴＢが介挿されている。
【００２６】
また、信号経路Ｐ１およびＰ２は、それぞれスイッチＳＷ２ＡおよびＳＷ２Ｂを介して、ＤＣ振幅生成回路１０に接続されている。
【００２７】
ＤＣ振幅生成回路１０は、電源ＶＣＣとグランドＧＮＤとの間を複数の抵抗Ｒ１で分圧し、種々の電圧を生成する電圧生成部ＶＧと、電圧生成部ＶＧで生成されたどの電圧を信号経路Ｐ１およびＰ２に出力するかを選択するセレクタスイッチＳＬとを有している。そして、当該セレクタスイッチＳＬの設定は、ＤＣ振幅調整レジスタ１１に格納されたデータによって決められている。
【００２８】
また、振幅判定回路１には、振幅判定回路１に設けられているバーストとスケルチを区別するための振幅閾値調整機構の設定を変える特性調整レジスタ１２（調整機構）が接続されている。すなわち、振幅閾値調整機構は、Ｒｘ＋ポートおよびＲｘ−ポートから入力される信号の振幅と比較するためのＤＣリファレンス電圧をスイッチによって切り替えることで、振幅判定の閾値を調整する構成であるが、そのスイッチの設定データが特性調整レジスタ１２に格納されている。なお、特性調整レジスタ１２は、デジタル回路で構成される自己判定回路１３（フィードバック機構）によって制御される構成となっている。
【００２９】
そして、振幅判定回路１の出力は時間判定回路２に与えられるとともに、自己判定回路１３にも与えられ、自己判定回路１３は、振幅判定回路１の出力に基づいて、特性調整レジスタ１２を制御する構成となっている。
【００３０】
次に、動作について説明する。通常のＳＡＴＡ通信動作時はスイッチＳＷ１ＡおよびＳＷ１Ｂがオン状態にあり、スイッチＳＷ２ＡおよびＳＷ２Ｂがオフ状態となっているので、ＤＣ振幅生成回路１０の出力は振幅判定回路１には与えられない。
【００３１】
自己調整を行うに際しては、スイッチＳＷ１ＡおよびＳＷ１Ｂをオフ状態とし、スイッチＳＷ２ＡおよびＳＷ２Ｂがオン状態とすることで、Ｒｘ＋ポートおよびＲｘ−ポートからの信号の代わりに、ＤＣ振幅生成回路１０から出力されるＤＣ電圧が差動電圧として振幅判定回路１に入力される。
【００３２】
通常動作時に入力されるＯＯＢパターンのバースト区間は１．５Ｇｂｐｓのスピードでハイ、ローするデータパターンであるが、自己調整で用いるのは単純なＤＣ信号であり、例えばＲｘ＋側に１００ｍＶ、Ｒｘ−側に０ｍＶなどのように出力するため、振幅判定回路１が判定するバーストとスケルチの閾値とＤＣ信号の振幅の大きいものと小さいものの閾値とには差がある。
【００３３】
すなわち、振幅判定回路１のバーストとスケルチの閾値を１２５ｍＶｐｐｄとなるようにした場合、ＤＣ振幅での閾値が何ｍＶｐｐｄになるかを予め評価しておき、そのＤＣ振幅になるようにＤＣ振幅調整レジスタ１１を設定する。通常の場合、バーストとスケルチの閾値を１２５ｍＶｐｐｄとすれば、ＤＣ信号の振幅の大きいものと小さいものとを判定する閾値は７５ｍＶｐｐｄ程度になる。
【００３４】
振幅判定回路１は、例えば入力振幅が閾値よりも小さい場合はハイを出力し、大きい場合はローを出力するように構成されているが、自己調整を行うときは、ＤＣ振幅生成回路１０が出力するＤＣ電圧の振幅が、例えば７５ｍＶｐｐｄになるようにＤＣ振幅調整レジスタ１１を設定した状態で、スイッチＳＷ１ＡおよびＳＷ１Ｂをオフし、スイッチＳＷ２ＡおよびＳＷ２Ｂをオンして、ＤＣ電圧を振幅判定回路１に入力する。
【００３５】
自己判定回路１３は、特性調整レジスタ１２を制御して、まず振幅判定回路１におけるＤＣ信号の判定閾値を最低になるように設定する。そして、振幅判定回路１の出力を受けて、それがハイかローかを判定する。
【００３６】
最初は、判定閾値を最低にしているので、振幅判定回路１の出力はローになるが、自己判定回路１３は、振幅判定回路１の出力がハイになるまで段階的に特性調整レジスタ１２の設定を上げていき、振幅判定回路１の出力がローからハイに転じたレジスタ値で設定の変更をストップする。
【００３７】
この時のレジスタ値によって設定される振幅判定回路１におけるＤＣ信号の判定閾値が、バーストとスケルチの閾値を１２５ｍＶｐｐｄとする場合の実際の閾値となる。この値は、振幅判定回路１の特性変動を吸収した値であるので、この時の特性調整レジスタ１２のレジスタ値を通常通信動作時に使用する。これにより、バーストとスケルチの閾値を目標とする１２５ｍＶｐｐｄ付近に設定することができる。
【００３８】
このように、ＯＯＢ検出回路１００内に、ＤＣ電圧により任意の振幅を有するＤＣ信号を生成する振幅生成回路１０を備え、そこで生成したＤＣ信号をテスト信号として振幅判定回路１に入力し、フィードバックにより判定閾値を調整することで、振幅判定回路１の回路特性が変動している場合であっても、その変動を吸収した閾値を得ることができる。
【００３９】
なお、上記においては特性調整レジスタ１２の設定値を、ＤＣ信号の判定閾値が最低になるように設定して、そこから段階的に特性調整レジスタ１２の設定を上げる例を示したが、ＤＣ信号の判定閾値が最高になるように設定し、そこから段階的に特性調整レジスタ１２の設定を下げるようにしても良い。また、ＤＣ信号の判定閾値が最高と最低の中間値になるように設定し、そこから段階的に特性調整レジスタ１２の設定を上げる、または下げるようにしても良い。
【００４０】
＜Ａ−２．時間判定回路の自己調整機構＞
図８は、本発明に係るＯＯＢ検出回路１００のうち、時間判定回路２の自己調整機構を示すブロック図である。
【００４１】
図８に示すように、振幅判定回路１からの出力信号は入力セレクタＳＬ１を介して時間判定回路２に与えられる。時間判定回路２内にはアナログ回路で構成されたスケルチ時間測定回路２１とデジタル回路で構成されたスケルチ区間カウント回路２２を有している。
【００４２】
スケルチ時間測定回路２１は、振幅判定回路１からの出力信号を受けて、ＷＡＫＥ＿ＳＨＯＲＴ信号、ＷＡＫＥ＿ＬＯＮＧ信号、ＩＮＩＴ＿ＳＨＯＲＴ信号およびＩＮＩＴ＿ＬＯＮＧ信号の何れかをハイにしてスケルチ区間カウント回路２２に与えるとともに、自己判定回路１５（フィードバック機構）の時間測定カウント回路１５４にも与える。このスケルチ時間測定回路２１での反応時間は、例えば内部のＲＣ回路の時定数を規定する抵抗の抵抗値、もしくは容量の容量値を特性調整レジスタ１４（調整機構）の設定値を変更することで変更できるように構成することで、調整可能となっている。
【００４３】
スケルチ区間カウント回路２２は、規定の時間のスケルチ区間が３回以上入力されたことをカウントするデジタル回路であり、スケルチ区間が３回以上入力された信号を、ＣＯＭＷＡＫＥ、ＣＯＭＩＮＩＴおよびＣＯＭＲＥＳＥＴの何れかと判定して所定のロジック回路に与える。なお、スケルチ区間カウント回路２２には、入力セレクタＳＬ１の出力が直接与えられる構成となっている。
【００４４】
自己判定回路１５は、ＷＡＫＥ＿ＳＨＯＲＴ信号、ＷＡＫＥ＿ＬＯＮＧ信号、ＩＮＩＴ＿ＳＨＯＲＴ信号およびＩＮＩＴ＿ＬＯＮＧ信号を受け、クロックを用いて、各信号のロー期間を測定する時間測定カウント回路１５４と、時間測定カウント回路１５４のカウント値と、比較用カウント値レジスタ１５１に格納された比較用カウント値とを比較するカウント値比較回路１５３と、自己判定用入力パターン（パルスパターン）を生成するパターン生成回路１５２とを有している。パターン生成回路１５２から出力される自己判定用入力パターンは、入力セレクタＳＬ１に与えられるが、通常動作時には選択されることはない。
【００４５】
そして、カウント値比較回路１５３での比較結果に基づいて特性調整レジスタの値を設定する構成となっている。
【００４６】
次に、動作について説明する。
ＯＯＢ検出回路１００では、Ｒｘ＋ポートおよびＲｘ−ポートから入力されたＯＯＢパターンを、ＣＯＭＷＡＫＥ、ＣＯＭＩＮＩＴおよびＣＯＭＲＥＳＥＴの何れであるかを判定しなければならないが、判定すべきパターンのスケルチ区間の長さには、短い側と長い側にそれぞれ規格が設定されている。
【００４７】
すなわち、ＯＯＢパターンは図６を用いて説明したように、ＣＯＭＷＡＫＥであれば、入力されたパターンがＣＯＭＷＡＫＥであるか否かの判断をするスケルチ時間の閾値は、短い側は３５ｎｓ以上１０１．３ｎｓ未満の領域にある必要があり、長い側は１１２ｎｓ以上１７５ｎｓ未満の領域にある必要がある。
【００４８】
スケルチ時間測定回路２１から出力されるＷＡＫＥ＿ＳＨＯＲＴ信号は、ローの場合は、短い側の閾値までスケルチ時間が到達していないことを表し、ハイになった場合は、短い側の閾値をスケルチ時間が越えたことを表している。従って、ＷＡＫＥ＿ＳＨＯＲＴ信号は、スケルチ区間が始まってから（入力がハイになってから）、３５ｎｓ以上１０１．３ｎｓ未満の時間でハイになるべき信号である。
【００４９】
また、ＷＡＫＥ＿ＬＯＮＧ信号は、ローの場合は、長い側の閾値までスケルチ時間が到達していないことを表し、ハイになった場合は、長い側の閾値をスケルチ時間が越えたことを表している。従って、ＷＡＫＥ＿ＬＯＮＧ信号は、スケルチが始まってから１１２ｎｓ以上１７５ｎｓ未満にハイになるべき信号である。
【００５０】
従って、ＷＡＫＥ＿ＳＨＯＲＴ信号がハイであり、かつ、ＷＡＫＥ＿ＬＯＮＧ信号がローの場合は、入力されているパターンがＣＯＭＷＡＫＥであるということになる。
【００５１】
スケルチ時間測定回路２１から出力されるＩＮＩＴ＿ＳＨＯＲＴ信号およびＩＮＩＴ＿ＬＯＮＧ信号は、ＣＯＭＩＮＩＴおよびＣＯＭＲＥＳＥＴの判定に使用され、入力されたパターンが、ＣＯＭＩＮＩＴ／ＣＯＭＲＥＳＥＴであるか否かの判断をするスケルチ時間の閾値は、短い側は１７５ｎｓ以上３０４ｎｓ未満の領域にある必要があり、長い側は３３６ｎｓ以上５２５ｎｓ未満の領域にある必要がある。
【００５２】
ＩＮＩＴ＿ＳＨＯＲＴ信号は、ローの場合は、短い側の閾値までスケルチ時間が到達していないことを表し、ハイになった場合は、短い側の閾値をスケルチ時間が越えたことを表している。従って、ＩＮＩＴ＿ＳＨＯＲＴ信号は、スケルチ区間が始まってから（入力がハイになってから）、１７５ｎｓ以上３０４ｎｓ未満の時間でハイになるべき信号である。
【００５３】
また、ＩＮＩＴ＿ＬＯＮＧ信号は、ローの場合は、長い側の閾値までスケルチ時間が到達していないことを表し、ハイになった場合は、長い側の閾値をスケルチ時間が越えたことを表している。従って、ＩＮＩＴ＿ＬＯＮＧ信号は、スケルチが始まってから３３６ｎｓ以上５２５ｎｓ未満の時間でハイになるべき信号である。
【００５４】
従って、ＩＮＩＴ＿ＳＨＯＲＴ信号がハイであり、かつ、ＩＮＩＴ＿ＬＯＮＧ信号がローの場合は、入力されているパターンがＣＯＭＩＮＩＴまたはＣＯＭＲＥＳＥＴであるということになる。
【００５５】
ただし、スケルチ時間測定回路２１はアナログ回路であるので、プロセス、温度、電圧で動作が変動し、何れの信号も規格内に収まらない場合がある。この回路特性の変動による影響を吸収する構成が、自己調整機構である。
【００５６】
自己調整を行なう場合には、自己判定回路１５のパターン生成回路１５２で生成された自己判定用入力パターンが入力セレクタＳＬ１で選択されてスケルチ時間測定回路２１に入力される。
【００５７】
図９には、自己判定用入力パターンとスケルチ時間測定回路２１から出力される４種類の出力信号の信号波形の一例を示す。
【００５８】
図９において、自己判定用入力パターンは、既知の時間Ｔ３の期間（第１の期間）がローとなったパターンであり、ＷＡＫＥ＿ＳＨＯＲＴ信号は、時間Ｔ４の期間（第２の期間）がローとなったパターンであり、ＷＡＫＥ＿ＬＯＮＧ信号は、時間Ｔ５の期間（第２の期間）がローとなったパターンであり、ＩＮＩＴ＿ＳＨＯＲＴ信号は、時間Ｔ６（第２の期間）の期間がローとなったパターンであり、およびＩＮＩＴ＿ＬＯＮＧ信号は、時間Ｔ７の期間（第２の期間）がローとなったパターンであり、時間Ｔ３が最も短く、時間Ｔ７が最も長くなっている。なお、上記では時間Ｔ３〜Ｔ７は信号の電位がローの期間を示すものとしたが、時間Ｔ３〜Ｔ７をハイの期間で示しても良い。
【００５９】
時間測定カウント回路では図９に示す時間Ｔ４〜Ｔ７をクロックでカウントして時間測定を行う。
【００６０】
例えばＷＡＫＥ＿ＳＨＯＲＴ信号であれば、時間Ｔ４には、自己判定用入力パターンで与えられる既知の時間Ｔ３と、スケルチ時間測定回路２１の回路特性で決まる時間（３５ｎｓ以上１０１．３ｎｓ未満）が足された時間になっている。時間Ｔ４がこれよりも長くなるということは、スケルチ時間測定回路２１の回路特性が変化し、反応時間が長くなって、規格に適合していないことを意味している。
【００６１】
そこで、規格に適合する場合の時間Ｔ４〜Ｔ７のカウント値を、予め比較用カウント値レジスタ１５１に格納しておき、カウント値比較回路１５３において時間測定カウント回路１５４でのカウント値と比較用カウント値レジスタ１５１に格納された値とを比較することで、規格に適合しているか否かを確認し、適合していない場合には、特性調整レジスタ１４の設定値を変更して、スケルチ時間測定回路２１の反応時間を調整する。
【００６２】
具体的には、まず、特性調整レジスタ１４をスケルチ時間測定回路２１の反応時間が最短となるように設定にした状態で、パターン生成回路１５２から自己判定用入力パターンをスケルチ時間測定回路２１に入力する。
【００６３】
そして、スケルチ時間測定回路２１から出力された４つの信号（ＷＡＫＥ−ＳＨＯＲＴ、ＷＡＫＥ−ＬＯＮＧ、ＩＮＩＴ−ＳＨＯＲＴおよびＩＮＩＴ−ＬＯＮＧ）のＴ４〜Ｔ７の時間を時間測定カウント回路１５４でカウントする。
【００６４】
なお、実際には、４つの信号の全てをカウントせずとも、ＷＡＫＥ−ＬＯＮＧの時間Ｔ５およびＩＮＩＴ−ＬＯＮＧの時間Ｔ７をカウントすれば良い。
【００６５】
そして、カウント比較回路１５３において、カウント結果を比較用カウント値レジスタ１５１の値と比較する。
【００６６】
スケルチ時間測定回路２１の反応時間を最短に設定しているため、カウント値はレジスタ値よりも小さくなる。この場合は特性調整レジスタ１４の設定を変更して、スケルチ時間測定回路２１の反応時間を一段階長くするというフィードバック制御を行う。
【００６７】
ここで、スケルチ時間測定回路２１の反応時間の一段階は、時間Ｔ４〜Ｔ７でそれぞれ異なり、例えば、時間Ｔ４について３ｎｓ程度、時間Ｔ５については８ｎｓ程度、時間Ｔ６について１２ｎｓ程度、時間Ｔ７については２５ｎｓ程度となる。
【００６８】
なお上述したように、時間Ｔ５および時間Ｔ７のみをカウントする場合には、時間Ｔ５について一段階設定を変えれば、時間Ｔ４についても一段階設定が変わり、時間Ｔ７について一段階設定を変えれば、時間Ｔ６についても一段階設定が変わるように、特性調整レジスタ１４を構成すれば、特性調整レジスタ１４の構成を簡略化できる。
【００６９】
特性調整レジスタ１４の設定を変更した後、再び自己判定用パターンをスケルチ時間測定回路２１に与え、スケルチ時間測定回路２１から出力された４つの信号の時間Ｔ５〜Ｔ７のカウントと、カウント値比較を繰り返し、カウント値がレジスタ値を越えた時のレジスタ値で設定の変更をストップする。この時のレジスタ値によって設定されるスケルチ時間測定回路２１の反応時間が、回路特性の変動による影響を吸収した反応時間となる。
【００７０】
従って、この時の特性調整レジスタ１４の設定値を通常通信動作時に使用することで、スケルチ時間測定回路２１からの４つの出力信号（ＷＡＫＥ−ＳＨＯＲＴ、ＷＡＫＥ−ＬＯＮＧ、ＩＮＩＴ−ＳＨＯＲＴ、ＩＮＩＴ−ＬＯＮＧ）はいずれも規格に適合する反応時間に設定することができる。
【００７１】
このように、ＯＯＢ検出回路１００内で自己判定用入力パターンを生成し、該自己判定用入力パターンを時間判定回路２のスケルチ時間測定回路２１に与え、フィードバック制御によりスケルチ時間測定回路２１の反応時間を調整することで、時間判定回路２の回路特性が変動している場合であっても、その変動を吸収した反応時間を設定することができる。
【００７２】
なお、上記においては特性調整レジスタ１４の設定値をスケルチ時間測定回路２１の反応時間が最短となるように設定し、そこから段階的に特性調整レジスタ１４の設定を変える例を示したが、スケルチ時間測定回路２１の反応時間が最長となるように設定し、そこから段階的に特性調整レジスタ１４の設定を変えるようにしても良い。スケルチ時間測定回路２１の反応時間が最短と最長の中間値になるように設定し、そこから段階的に特性調整レジスタ１４の設定を変えるようにしても良い。
【００７３】
なお、スケルチ時間測定回路の後段のスケルチ区間カウント回路２２は、規定の時間のスケルチ区間が３回以上入力されたことをカウントする従来からのデジタル回路であり、今回の自己調整の対象ではないので、説明は省略する。
【００７４】
＜Ａ−３．効果＞
以上説明したように本発明に係る実施の形態１のＯＯＢ検出回路１００によれば、振幅判定回路１および時間判定回路２にそれぞれ自己調整機構を付加することで、アナログ回路である振幅判定回路１および時間判定回路２に特性変動が生じている場合であっても、フィードバック制御により変動を吸収した閾値および反応時間に設定することができ、正確な信号判定を可能とし、製品の歩留まりを低下させないＯＯＢ検出回路を得ることができる。
【００７５】
なお、以上の説明では、振幅判定回路１および時間判定回路２がそれぞれ自己調整機構有するものとして説明したが、どちらか一方だけに自己調整機構が付加された構成であっても良い。より、特性変動の生じやすい方に自己調整機構を設けることで、上記と同様の効果を奏することができる。
【００７６】
なお、ＯＯＢ検出回路の自己調整動作は、ＬＳＩの動作開始時や動作中の適切なタイミングで実施すれば良い。
【００７７】
＜Ｂ．実施の形態２＞
実施の形態１において説明したＯＯＢ検出回路１００を有するＳＡＴＡシステムにおいて、ＯＯＢ検出回路１００の振幅判定回路１および時間判定回路２の自己調整を行い、ＣＰＵ（Central Processing Unit）が自己調整結果を確認してＳＡＴＡ通信を開始する構成を、本発明に係る実施の形態２として説明する。
【００７８】
図１０は、ＯＯＢ検出回路１００を有するＳＡＴＡシステムの一例として、マイクロコンピュータ２００の構成を示すブロック図である。
【００７９】
図１０に示すように、マイクロコンピュータ２００はＭＰＵ（Micro Processing Unit）モジュールＭＰと、ＭＰＵモジュールＭＰ内のバス制御部５２を介して、ＣＰＵ５１との間で所定の設定値を授受するレジスタ群ＲＳと、バス制御部５２に対するプログラムを格納するコードメモリ（ＲＡＭやＲＯＭで構成）ＣＭと、ＳＡＴＡモジュールＳＭとを有している。
【００８０】
図７および図８を用いて説明したＯＯＢ検出回路１００の自己判定回路１３（１５）は、ＳＡＴＡモジュールＳＭに含まれ、自己判定回路１３（１５）とレジスタ群ＲＳとが接続されている。レジスタＲＳ群には、ＳＡＴＡ通信開始ビットレジスタＲＳ１と、自己調整実行フラグレジスタＲＳ２と、図７および図８に示した特性調整レジスタ１２および１４が含まれ、これらはバス制御部５２を介してＣＰＵ５１からアクセス可能である。
【００８１】
また、ＳＡＴＡモジュールＳＭには、Ｔｘ＋ポート、Ｔｘ−ポートに対して、ＳＡＴＡ＿Ｔｘ信号を出力するためのＴｘドライバ１６を示している。
【００８２】
また、ＭＰＵモジュールＭＰには、自己判定回路１３（１５）から出力される自己調整完了割り込みパルス信号ＰＳを受ける割り込みポートＰ１が設けられている。
【００８３】
次に、マイクロコンピュータ２００における自己調整結果確認動作について、図１０を参照しつつ、図１１に示すタイミングチャートを用いて説明する。
【００８４】
ＣＰＵ５１がＳＡＴＡ通信開始ビットレジスタＲＳ１にＳＡＴＡ通信開始ビットをセットするまでは、Ｒｘ＋ポートおよびＲｘ−ポートからＳＡＴＡ＿Ｒｘ信号を受けても応答しないようにＳＡＴＡモジュールＳＭが構成されているので、ＳＡＴＡ通信は開始されない。
【００８５】
一方、ＳＡＴＡ通信開始ビットレジスタＲＳ１をセットすると、Ｔｘ＋ポート、Ｔｘ−ポートに対してＳＡＴＡ＿Ｔｘ信号としてＣＯＭＲＥＳＥＴ／ＣＯＭＩＮＩＴを送信し、ＳＡＴＡ通信を開始するようにＳＡＴＡモジュールＳＭが構成されている。
【００８６】
従って、ＳＡＴＡ通信開始ビットレジスタＲＳ１にＳＡＴＡ通信開始ビットをセットする前に自己調整作業を実行することで、ＳＡＴＡ通信開始前にＯＯＢ検知回路１００を調整することができる。
【００８７】
すなわち、ＳＡＴＡ通信開始ビットをセットする前に、ＣＰＵ５１がプログラムに基づいて、自己調整実行フラグレジスタＲＳ２に自己調整実行フラグをセットすることで、図７および図８を用いて説明した自己判定回路１３および１５が、それぞれ振幅判定回路１および時間判定回路２を調整する。自己調整の実行中は特性調整レジスタ１２および１４の設定値は処理の進行に伴って刻々と変わり、例えば、自己調整前は設定値ａであったものが、設定値ｂからｃに、さらにｄに変わり、最終的に設定値ｅとなる。
【００８８】
自己判定回路１３および１５には、自己調整シーケンスがデジタル回路で組まれており、当該シーケンスが最後の処理に達することで自己調整が完了するので、自己判定回路１３および１５が自動的に自己調整実行フラグレジスタＲＳ２の自己調整実行フラグをクリアすると共に、ＭＰＵモジュールＭＰに対して、自己調整完了割り込みパルスＰＳを出力する。
【００８９】
ＣＰＵ５１は自己調整完了割り込みパルスＰＳを検出した後、自己調整結果である特性調整レジスタ１２（１４）の設定値ｅを確認することができ、問題がないと判断した場合は、ＳＡＴＡ通信開始ビットレジスタＲＳ１のＳＡＴＡ通信開始ビットをセットしてＣＯＭＲＥＳＥＴ／ＣＯＭＩＮＩＴを送信し、ＳＡＴＡ通信を開始する。
【００９０】
なお、調整結果に問題がある場合、ＣＰＵ５１が特性調整レジスタ１２（１４）の設定値を書き換えることも可能である。
【００９１】
以上説明したように、ＯＯＢ検出回路１００の振幅判定回路１および時間判定回路２の自己調整を行い、ＣＰＵ５１が自己調整結果を確認してＳＡＴＡ通信を開始する構成を採ることで、ＳＡＴＡ通信に先だって、自己調整を自動的に行うことが可能となり、振幅判定回路１および時間判定回路２の特性変動に起因して通信不具合が発生することを防止できる。
【００９２】
＜Ｃ．実施の形態３＞
実施の形態２において説明したマイクロコンピュータ２００においては、ＣＰＵが自己調整結果を確認してＳＡＴＡ通信を開始する構成を採用していたが、実施の形態３においては、ＣＰＵが自己調整結果を確認することなく、ＳＡＴＡ通信を開始することが可能な構成について説明する。
【００９３】
図１２は、実施の形態３に係るマイクロコンピュータ３００の構成を示すブロック図である。なお、図１０に示したマイクロコンピュータ２００と同一の構成については同一の符号を付し、重複する説明は省略する。
【００９４】
図１２に示すように、マイクロコンピュータ３００においては、ＣＰＵ５１からアクセス可能なレジスタとしてＳＡＴＡ通信開始ビットレジスタＲＳ１を有している。また、図７および図８を用いて説明したＯＯＢ検出回路１００の自己判定回路１３（１５）には、自己調整実行フラグレジスタＲＳ２と、図７および図８に示した特性調整レジスタ１２（１４）を有している。なお、特性調整レジスタ１２（１４）は、図７および図８に示したように、自己判定回路１３（１５）の外部に設けていても良い。
【００９５】
また、ＣＰＵ５１からＳＡＴＡ通信開始ビットレジスタＲＳ１への設定を受けて、自己調整実行フラグレジスタＲＳ２に自己調整実行フラグをセットするＳＡＴＡロジック回路ＬＧを有している。
【００９６】
次に、マイクロコンピュータ３００における自己調整動作について、図１２を参照しつつ、図１３に示すタイミングチャートを用いて説明する。
【００９７】
ＣＰＵ５１が、ＳＡＴＡ通信開始ビットレジスタＲＳ１にＳＡＴＡ通信開始ビットをセットすると、ハードウエアで構成されるＳＡＴＡロジック回路ＬＧが、自動的に自己調整実行フラグレジスタＲＳ２に自己調整実行フラグをセットすることで、図７および図８を用いて説明した自己判定回路１３および１５が、それぞれ振幅判定回路１および時間判定回路２を調整する。自己調整の実行中は特性調整レジスタ１２および１４の設定値は処理の進行に伴って刻々と変わり、例えば、自己調整前は設定値ａであったものが、設定値ｂからｃに、さらにｄに変わり、最終的に設定値ｅとなる。
【００９８】
なお、自己調整実行フラグレジスタＲＳ２の自己調整実行フラグがクリアされるまでは、Ｒｘ＋ポートおよびＲｘ−ポートからＳＡＴＡ＿Ｒｘ信号を受けても応答しないようにＳＡＴＡモジュールＳＭが構成されているので、ＳＡＴＡ通信は開始されない。
【００９９】
ＳＡＴＡロジック回路ＬＧは、自己判定回路１３および１５での自己調整シーケンスが終了したことを受けて、自動的に自己調整実行フラグレジスタＲＳ２の自己調整実行フラグをクリアする機能を有し、自己調整実行フラグをクリアした後に、Ｔｘ＋ポート、Ｔｘ−ポートに対してＳＡＴＡ＿Ｔｘ信号としてＣＯＭＲＥＳＥＴ／ＣＯＭＩＮＩＴを送信するように構成されている。
【０１００】
このように、マイクロコンピュータ３００においては、ＣＰＵ５１はＳＡＴＡ通信開始ビットをセットした後は、自己調整作業には関わらず、所定期間の間に、ＳＡＴＡモジュールＳＭ内で自己調整作業の終了を判断し、自己調整が終わり次第ＳＡＴＡ通信を開始するので、コードメモリＣＭに格納するプログラムには、自己調整作業に関連したプログラムを含ませる必要がなく、ユーザにとってプログラム開発が容易となる。
【図面の簡単な説明】
【０１０１】
【図１】ホストとデバイスとの接続関係を示す図である。
【図２】ＯＯＢパターンの信号波形を示す図である。
【図３】ＯＯＢパターンのスケルチ区間の時間の規格を示す図である。
【図４】ＯＯＢ検出回路の構成を示すブロック図である。
【図５】ＯＯＢ検出回路の信号振幅に関する規格を示す図である。
【図６】ＯＯＢ検出回路のスケルチ区間の時間に関する規格を示す図である。
【図７】本発明に係る実施の形態１の自己調整機構を有した振幅判定回路の構成を示すブロック図である。
【図８】本発明に係る実施の形態１の自己調整機構を有した時間判定回路の構成を示すブロック図である。
【図９】本発明に係る実施の形態１の自己調整機構を有した時間判定回路の信号波形を示す図である。
【図１０】本発明に係る実施の形態２のＳＡＴＡシステムの構成を示すブロック図である。
【図１１】本発明に係る実施の形態２のＳＡＴＡシステムの動作を説明するタイミングチャートである。
【図１２】本発明に係る実施の形態３のＳＡＴＡシステムの構成を示すブロック図である。
【図１３】本発明に係る実施の形態３のＳＡＴＡシステムの動作を説明するタイミングチャートである
【図１】
0005207720.tif 000002
【図２】
0005207720.tif 000003
【図３】
0005207720.tif 000004
【図４】
0005207720.tif 000005
【図５】
0005207720.tif 000006
【図６】
0005207720.tif 000007
【図７】
0005207720.tif 000008
【図８】
0005207720.tif 000009
【図９】
0005207720.tif 000010
【図１０】
0005207720.tif 000011
【図１１】
0005207720.tif 000012
【図１２】
0005207720.tif 000013
【図１３】
0005207720.tif 000014