(57)【要約】【課題】  性能を最大にするように負荷サイクル回路を自動的に較正するための装置及び方法を提供する。【解決手段】  各々のチップについて負荷サイクル補正（ＤＣＣ）回路の設定値を自動的に較正するチップ・レベルの組込み回路が提供される。このチップ・レベルの組込み回路は、クロック生成マクロ・ユニットと、単純負荷サイクル補正（ＤＣＣ）回路と、アレイ・スライス及び組込み自己テスト・ユニットと、ＤＣＣ回路コントローラとを含む。アレイの組込み自己テストの結果、即ち合格又は不合格が、ＤＣＣ回路コントローラに与えられる。組込み自己テストの結果が合格の場合には、現在のＤＣＣ回路コントローラのＤＣＣ制御ビット設定値が、そのチップの設定値として設定される。組込み自己テストの結果が不合格の場合には、現在のＤＣＣ回路コントローラのＤＣＣ制御ビット設定値は、次の設定値に増分され、再度、自己テストが実行される。【選択図】  図１
2009510793.tif 000002
【特許請求の範囲】
【請求項１】
負荷サイクル補正（ＤＣＣ）回路と、
前記ＤＣＣ回路に結合されたＤＣＣ回路コントローラと、
前記ＤＣＣ回路に結合されたアレイと、
前記アレイ及び前記ＤＣＣ回路コントローラに結合された組込み自己テスト回路と、
を含み、
前記組込み自己テスト回路は、前記ＤＣＣ回路の現在の設定値を用いて前記アレイの自己テストを実行し、前記ＤＣＣ回路コントローラは、前記アレイの不合格を示す前記組込み自己テスト回路からの結果に応答して、前記ＤＣＣ回路の設定値を次の増分設定値に増分し、前記ＤＣＣ回路コントローラは、前記アレイの合格を示す前記組込み自己テスト回路からの結果に応答して、前記ＤＣＣ回路の前記現在の設定値をチップのＤＣＣ設定値として設定する、装置。
【請求項２】
前記ＤＣＣ回路は複数のステージを含み、前記複数のステージにおける各々のステージは、有効なときに前記アレイの負荷サイクルに増分変化を与え、前記複数のステージにおける各々のステージは、前記ＤＣＣ回路コントローラからの入力に基づいて個別に有効にすることができる、請求項１に記載の装置。
【請求項３】
前記複数のステージにおける各々のステージは、
少なくとも１つの増幅器と、
前記少なくとも１つの増幅器に結合された少なくとも１つのスイッチと、
を含み、前記少なくとも１つのスイッチは、前記ＤＣＣ回路コントローラからの前記入力によって制御される、請求項２に記載の装置。
【請求項４】
前記ＤＣＣ回路コントローラは、
カウンタと、
前記カウンタに結合されたデコーダと、
を含み、
前記カウンタは、前記自己テストの結果が合格であったか不合格であったかを示す信号を入力として受信し、前記自己テストが不合格であったことを前記入力信号が示しているときには増分し、カウンタ値信号を前記デコーダに出力し、
前記デコーダは、前記カウンタから前記カウンタ値信号を受信し、該カウンタ値信号に基づいて制御信号を生成し、前記制御信号を前記ＤＣＣ回路に出力する、
前記請求項のいずれか１つの請求項に記載の装置。
【請求項５】
前記ＤＣＣ回路コントローラは、前記自己テストが合格であったか不合格であったかを示す前記組込み自己テスト回路からの第１の信号と前記カウンタを駆動するクロック信号である第２の信号とを入力として受信するＡＮＤゲートをさらに含む、請求項４に記載の装置。
【請求項６】
前記ＤＣＣ回路コントローラは、前記カウンタに結合されたカウンタ・オーバーフロー検出器をさらに含み、前記カウンタ・オーバーフロー検出器は、カウンタ・オーバーフロー条件が生じたときにそれを検出し、前記カウンタ・オーバーフロー条件が生じたときには前記カウンタを再初期化する、請求項４又は請求項５に記載の装置。
【請求項７】
前記ＤＣＣ回路コントローラは、前記カウンタ・オーバーフロー検出器に結合されたチップ動作特性セレクタをさらに含み、前記カウンタ・オーバーフロー検出器は、前記カウンタ・オーバーフロー条件が生じたときにオーバーフロー信号を前記チップ動作特性セレクタに送信し、前記チップ動作特性セレクタは、前記オーバーフロー信号を受信したことに応答して前記チップの新たな動作特性を選択する、請求項６に記載の装置。
【請求項８】
前記新たな動作特性は、動作電圧又は動作周波数の少なくとも一方であり、新たな動作特性を選択することは、前記動作電圧を次のより高い動作電圧に増分することか又は前記動作周波数を次のより低い動作周波数に増分することの少なくとも一方を含む、請求項７に記載の装置。
【請求項９】
前記ＤＣＣ回路は、最初に最も低い設定値に設定され、前記ＤＣＣ回路の設定値が、動作電圧又は動作周波数の少なくとも一方が修正され前記ＤＣＣ回路が再初期化される最大設定値に達するまで、前記組込み自己テスト回路が前記アレイに適用された自己テストの不合格を示すごとに、次のより高い設定値に増分される、前記請求項のいずれか１つの請求項に記載の装置。
【請求項１０】
カウンタと、
前記カウンタに結合されたデコーダと、
を含み、
前記カウンタは、自己テストが合格又は不合格であったことを前記自己テストの結果が示しているかどうかを示す入力信号を受信し、前記自己テストが不合格であったことを前記入力信号が示しているときには増分し、カウンタ値信号を前記デコーダに出力し、
前記デコーダは、前記カウンタから前記カウンタ値信号を受信し、前記カウンタ値信号に基づいて制御信号を生成し、前記制御信号を負荷サイクル補正（ＤＣＣ）回路に出力し、
前記ＤＣＣ回路は、前記デコーダによる前記制御信号出力に基づいて負荷サイクルを増分変化させる、
負荷サイクル補正（ＤＣＣ）回路コントローラ。
【請求項１１】
前記自己テストが合格であったか不合格であったかを示す前記組込み自己テスト回路からの第１の信号と前記カウンタを駆動するクロック信号である第２の信号とを入力として受信するＡＮＤゲートをさらに含む、請求項１０に記載のＤＣＣ回路コントローラ。
【請求項１２】
前記カウンタに結合されたカウンタ・オーバーフロー検出器をさらに含み、前記カウンタ・オーバーフロー検出器は、カウンタ・オーバーフロー条件が生じたときにそれを検出し、前記カウンタ・オーバーフロー条件が生じたときには前記カウンタを再初期化する、請求項１０又は請求項１１に記載のＤＣＣ回路コントローラ。
【請求項１３】
前記カウンタ・オーバーフロー検出器に結合されたチップ動作特性セレクタをさらに含み、前記カウンタ・オーバーフロー検出器は、カウンタ・オーバーフロー条件が生じたときにオーバーフロー信号を前記チップ動作特性セレクタに送信し、前記チップ動作特性セレクタは、前記オーバーフロー信号を受信したことに応答してチップの新たな動作特性を選択する、請求項１２に記載のＤＣＣ回路コントローラ。
【請求項１４】
前記新たな動作特性は、動作電圧又は動作周波数の少なくとも一方であり、新たな動作特性を選択することは、前記動作電圧を次のより高い動作電圧に増分することか又は前記動作周波数を次のより低い動作周波数に増分することの少なくとも一方を含む、請求項１３に記載のＤＣＣ回路コントローラ。
【請求項１５】
データ処理デバイスにおける方法であって、
前記データ処理デバイスの初期動作周波数を選択するステップと、
前記データ処理デバイスの動作電圧を可能な最も低い電圧値に初期化するステップと、
負荷サイクル補正（ＤＣＣ）デバイス設定値を最も低いＤＣＣ設定値に初期化するステップと、
前記データ処理デバイスの要素のテストを実行するステップと、
前記テストの実行結果に基づいて前記ＤＣＣデバイス設定値を修正するかどうかを判定するステップと、
前記ＤＣＣデバイス設定値が修正されるべきであると判定された場合には前記ＤＣＣデバイス設定値を修正するステップと、
を含む方法。
【請求項１６】
前記データ処理デバイスは集積回路デバイスであり、前記方法はオンチップ負荷サイクル補正デバイスに実装される、請求項１５に記載の方法。
【請求項１７】
前記データ処理デバイスの前記要素は、前記集積回路デバイス上のアレイの一部である、請求項１６に記載の方法。
【請求項１８】
前記データ処理デバイスの要素のテストを実行する前記ステップは、現在の動作電圧、動作周波数、及びＤＣＣ設定値で前記アレイの前記一部の自己テストを実行するために、前記アレイの前記一部に結合された組込み自己テスト回路を用いるステップを含む、請求項１７に記載の方法。
【請求項１９】
前記テストの実行結果に基づいて前記ＤＣＣデバイス設定値を修正するかどうかを判定する前記ステップは、
テストが合格又は不合格であったことを前記テストの実行結果が示しているかどうかを判定するステップと、
前記テストが不合格であったことを前記テストの実行結果が示している場合には、前記ＤＣＣデバイス設定値を前記ＤＣＣデバイスの次の増分設定値に増分するステップと、
を含む、請求項１５から請求項１８までのいずれか１つの請求項に記載の方法。
【請求項２０】
前記テストが合格であったことを前記テストの実行結果が示している場合には、前記ＤＣＣデバイスの現在の設定値が、前記データ処理デバイスにおける負荷サイクル補正のための設定値として用いられる、請求項１９に記載の方法。
【請求項２１】
前記ＤＣＣデバイス設定値を修正する前記ステップによってオーバーフロー条件が生じるかどうかを判定するステップと、
前記ＤＣＣデバイス設定値の修正によってオーバーフロー条件が生じた場合には、前記動作電圧及び前記動作周波数の一方又は両方を増分するステップと、
をさらに含む、請求項１５から請求項２０までのいずれか１つの請求項に記載の方法。
【請求項２２】
負荷サイクル補正（ＤＣＣ）回路を準備するステップと、
前記ＤＣＣ回路に結合されたＤＣＣ回路コントローラを準備するステップと、
前記ＤＣＣ回路に結合されたアレイを準備するステップと、
前記アレイ及び前記ＤＣＣ回路コントローラに結合された組込み自己テスト回路を準備するステップと、
を含み、
前記組込み自己テスト回路は、前記ＤＣＣ回路の現在の設定値を用いて前記アレイの自己テストを実行し、前記ＤＣＣ回路コントローラは、前記アレイの不合格を示す前記組込み自己テスト回路からの結果に応答して、前記ＤＣＣ回路の設定値を次の増分設定値に増分し、前記ＤＣＣ回路コントローラは、前記アレイの合格を示す前記組込み自己テスト回路からの結果に応答して、前記ＤＣＣ回路の前記現在の設定値をチップのＤＣＣ設定値として設定する、方法。
【請求項２３】
前記ＤＣＣ回路は複数のステージを含み、前記複数のステージにおける各々のステージは、有効なときに前記アレイの負荷サイクルに増分変化を与え、前記複数のステージにおける各々のステージは、前記ＤＣＣ回路コントローラからの入力に基づいて個別に有効にすることができる、請求項２２に記載の方法。
【請求項２４】
前記複数のステージにおける各々のステージは、
少なくとも１つの増幅器と、
前記少なくとも１つの増幅器に結合された少なくとも１つのスイッチと、
を含み、前記少なくとも１つのスイッチは、前記ＤＣＣ回路コントローラからの前記入力によって制御される、請求項２３に記載の方法。
【請求項２５】
前記ＤＣＣ回路コントローラは、
カウンタと、
前記カウンタに結合されたデコーダと、
を含み、
前記カウンタは、前記自己テストの結果が合格であったか不合格であったかを示す信号を入力として受信し、前記自己テストが不合格であったことを前記入力信号が示しているときには増分し、カウンタ値信号を前記デコーダに出力し、
前記デコーダは、前記カウンタから前記カウンタ値信号を受信し、該カウンタ値信号に基づく制御信号を生成し、前記制御信号を前記ＤＣＣ回路に出力する、
請求項２２から請求項２４のいずれか１つの請求項に記載の方法。
【請求項２６】
前記ＤＣＣ回路コントローラは、前記自己テストが合格であったか不合格であったかを示す前記組込み自己テスト回路からの第１の信号と前記カウンタを駆動するクロック信号である第２の信号とを入力として受信するＡＮＤゲートをさらに含む、請求項２５に記載の方法。
【請求項２７】
前記ＤＣＣ回路コントローラは、前記カウンタに結合されたカウンタ・オーバーフロー検出器をさらに含み、前記カウンタ・オーバーフロー検出器は、カウンタ・オーバーフロー条件が生じたときにそれを検出し、前記カウンタ・オーバーフロー条件が生じたときには前記カウンタを再初期化する、請求項２５又は請求項２６に記載の方法。
【請求項２８】
前記ＤＣＣ回路コントローラは、前記カウンタ・オーバーフロー検出器に結合されたチップ動作特性セレクタをさらに含み、前記カウンタ・オーバーフロー検出器は、前記カウンタ・オーバーフロー条件が生じたときにオーバーフロー信号を前記チップ動作特性セレクタに送信し、前記チップ動作特性セレクタは、前記オーバーフロー信号を受信したことに応答して前記チップの新たな動作特性を選択する、請求項２７に記載の方法。
【請求項２９】
前記新たな動作特性は、動作電圧又は動作周波数の少なくとも一方であり、新たな動作特性を選択することは、前記動作電圧を次のより高い動作電圧に増分することか又は前記動作周波数を次のより低い動作周波数に増分することの少なくとも一方を含む、請求項２８に記載の方法。
【請求項３０】
前記ＤＣＣ回路は、最初に最も低い設定値に設定され、前記ＤＣＣ回路の設定値が、動作電圧又は動作周波数の少なくとも一方が修正され前記ＤＣＣ回路が再初期化される最大設定値に達するまで、前記組込み自己テスト回路が前記アレイに適用された自己テストの不合格を示すごとに、次のより高い設定値に増分される、請求項２２から請求項２９までのいずれか１つの請求項に記載の方法。
【請求項３１】
カウンタを準備するステップと、
前記カウンタに結合されたデコーダを準備するステップと、
を含み、
前記カウンタは、自己テストが合格又は不合格であったことを前記自己テストの結果が示しているかどうかを示す入力信号を受信し、前記自己テストが不合格であったことを前記入力信号が示しているときには増分し、カウンタ値信号を前記デコーダに出力し、
前記デコーダは、前記カウンタから前記カウンタ値信号を受信し、前記カウンタ値信号に基づいて制御信号を生成し、前記制御信号を負荷サイクル補正（ＤＣＣ）回路に出力し、
前記ＤＣＣ回路は、前記デコーダによる前記制御信号出力に基づいて負荷サイクルを増分変化させる、
方法。
【請求項３２】
前記自己テストが合格であったか不合格であったかを示す前記組込み自己テスト回路からの第１の信号と前記カウンタを駆動するクロック信号である第２の信号とを入力として受信するＡＮＤゲートを準備するステップをさらに含む、請求項３１に記載の方法。
【請求項３３】
前記カウンタに結合されたカウンタ・オーバーフロー検出器を準備するステップをさらに含み、前記カウンタ・オーバーフロー検出器は、カウンタ・オーバーフロー条件が生じたときにそれを検出し、前記カウンタ・オーバーフロー条件が生じたときには前記カウンタを再初期化する、請求項３１又は請求項３２に記載の方法。
【請求項３４】
前記カウンタ・オーバーフロー検出器に結合されたチップ動作特性セレクタを準備するステップをさらに含み、前記カウンタ・オーバーフロー検出器は、カウンタ・オーバーフロー条件が生じたときにオーバーフロー信号を前記チップ動作特性セレクタに送信し、前記チップ動作特性セレクタは、前記オーバーフロー信号を受信したことに応答してチップの新たな動作特性を選択する、請求項３３に記載の方法。
【請求項３５】
前記新たな動作特性は、動作電圧又は動作周波数の少なくとも一方であり、新たな動作特性を選択することは、前記動作電圧を次のより高い動作電圧に増分することか又は前記動作周波数を次のより低い動作周波数に増分することの少なくとも一方を含む、請求項３４に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に、改善された集積回路装置及び方法に関する。より具体的には、本発明は、チップ性能を最大にするように負荷サイクル回路を自動的に自己較正するための装置及び方法を対象とする。
【背景技術】
【０００２】
今日の集積回路デバイスが動作する速度は、近年、非常に増大した。このような高速の集積回路デバイスは、負荷サイクル、即ちパルス周期に対するパルス持続時間の比が約５０％（５０／５０負荷サイクル）であるシステム・クロック信号と同期させて動作させることが必要な場合が多い。したがって、５０％より大きいか又は小さい負荷サイクルを有するクロック信号が入力として与えられたときには、集積回路デバイスは十分に機能しないことがある。この問題に対処するために、負荷サイクル補正回路が開発されてきた。
【０００３】
負荷サイクル補正回路を提供するために、種々の機構が考えられてきた。例えば、特許文献１、特許文献２、特許文献３、特許文献４、特許文献５、特許文献６、特許文献７、特許文献８、特許文献９、特許文献１０、特許文献１１、及び特許文献１２は、すべて、負荷サイクル補正のための様々な回路を説明する。さらに、特許文献１３、特許文献１４、及び特許文献１５は、他のタイプの負荷サイクル補正回路を説明する。しかしながら、これらの回路はいずれも、すべての条件において固定された負荷サイクル値、例えば５０％負荷サイクルを達成することを目的としている。
【０００４】
固定された負荷サイクルを有することが、集積回路デバイスにとって必ずしも最適な動作条件をもたらすとは限らない。例えば、低い電圧における最適性能のためには、アレイは、５０％ではない負荷サイクルを必要とする場合があり、実際には可変負荷サイクルを必要とする場合がある。即ち、例えばプロセス（単一のウェハ又は多数のウェハにわたるドーピング、閾電圧、移動度、ゲート酸化物の厚さなどの変動）、電圧、温度、周波数などの動作条件が変化することがあるため、固定された負荷サイクルは、すべての条件の下で集積回路デバイスの性能を最適化することには繋がらない場合がある。
【０００５】
【特許文献１】米国特許公開２００２／０１４０４７８
【特許文献２】米国特許公開２００４／０１８９３６４
【特許文献３】米国特許公開２００４／０１０８８７８
【特許文献４】米国特許公開２００４／００７５４６２
【特許文献５】米国特許公開２００５／０００７１６８
【特許文献６】米国特許６，８４４，７６６
【特許文献７】米国特許６，７５０，６８９
【特許文献８】米国特許６，６８０，６３７
【特許文献９】米国特許６，５８３，６５７
【特許文献１０】米国特許６，４６６，０７１
【特許文献１１】米国特許６，４２６，６６０
【特許文献１２】米国特許５，７５７，２１８
【特許文献１３】欧州特許ＥＰ１１３９５６９Ｂ１
【特許文献１４】欧州特許ＥＰ１１４６６４４Ａ２
【特許文献１５】米国特許出願１０／９７０，２８４
【発明の開示】
【発明が解決しようとする課題】
【０００６】
本発明は、性能を最大にするように負荷サイクル回路を自動的に較正するための機構を提供する。本発明の機構は、種々の動作条件の下で負荷サイクルを動的に較正することができる負荷サイクル回路の自動自己較正を提供する。
【課題を解決するための手段】
【０００７】
負荷サイクル補正（ＤＣＣ）回路は、設計上、チップを製造するのに用いられるプロセス、チップが動作する電圧、及びチップが動作する温度の影響を受けやすい。従来の機構の下では、チップの各々、又は同一のプロセス・ロットからの幾つかのチップを、プロセス・ロット全体について最良のＤＣＣ回路設定値を取得するように特性決定することが必要であった。その結果として、ＤＣＣ回路は、特定のチップの特定の動作条件に拘わりなく同一の設定値で動作し、結果として、チップの最適な動作が達成できないことがある。
【０００８】
これに対し、本発明の機構は、各々のチップについて負荷サイクル補正（ＤＣＣ）回路の設定値を自動的に較正するチップ・レベルの組込み回路を提供する。このチップ・レベルの組込み回路は、クロック生成マクロ・ユニットと、単純負荷サイクル補正（ＤＣＣ）回路と、アレイ・スライス及び組込み自己テスト・ユニットと、ＤＣＣ回路コントローラとを含む。ＤＣＣ回路は、所与の動作周波数についての負荷サイクルを増加的に変化させるための複数のステージからなるものとすることができる。ＤＣＣ回路コントローラは、アレイ・スライス及び組込み自己テスト・ユニットの組込み自己テストの結果をＡＮＤ演算するためのＡＮＤゲートと、カウンタと、温度デコーダと、カウンタ・オーバーフロー検出器と、動作特性セレクタ・ユニットとを含む。
【０００９】
動作の際には、初期動作周波数が選択され、チップ・コア電圧は、可能な最も低い値に初期化される。ＤＣＣ補正回路は最も低い設定値に初期化され、アレイ回路の代表的なスライス、即ち、アレイ・スライス及び組込み自己テスト・ユニットに対して、所与の電圧、周波数、温度、プロセス、及びＤＣＣ設定値で自己テストが実行される。組込み自己テストの結果、即ち合格又は不合格は、ＤＣＣ回路コントローラに与えられる。組込み自己テストの結果が合格の場合には、現在のＤＣＣ回路コントローラのＤＣＣ制御ビット設定値が、そのチップの設定値として設定される。ＤＣＣ制御ビットは、ＤＣＣ回路のどのステージが有効であるか、したがってそのチップの負荷サイクルが何であるかを特定する。
【００１０】
組込み自己テストの結果が不合格の場合には、ＤＣＣ回路コントローラのＤＣＣ制御ビット設定値、したがってＤＣＣ回路の設定値は、次の設定値に増分され、再度、自己テストが実行される。このプロセスは、組込み自己テストの結果が合格を示すまで繰り返される。ＤＣＣ回路コントローラ設定値のオーバーフローが生じた場合、即ち、ＤＣＣ回路コントローラがすべての設定値にわたって増分を行ったが、組込み自己テストの結果が依然として不合格を示す場合には、チップ・コア電圧が次のより高い増分値に増分されるか、若しくは、動作周波数が次のより低い増分値に減少されるか、又はその両方が行われる。このような場合においては、ＤＣＣ回路は再初期化され、新たなチップ・コア電圧及び／又は動作周波数について上述の処理が繰り返される。
【００１１】
この処理は、定期的に、連続的に、又は、例えば電源投入イベント、電圧や温度などの動作特性の変更といった特定のイベントが生じたときに、実行させることができる。本発明の処理及び機構は、所与のプロセス、電圧、及び温度（ＰＶＴ）条件でチップが最適な性能を有するように、負荷サイクル補正回路について最良の負荷サイクル設定値を自動的に選択する。本発明の処理及び機構は、特性決定を行うのに外部テスト環境を用いる必要がなくなるため、最良のＤＣＣ回路設定値を決定するのに必要なテスト及び特性決定の時間及びコストを大幅に低減する。回路の動的性質によって、作業負荷の変動及びＰＶＴの変動が原因でチップ・レベルの動作環境が変化するときでも、チップが最良の負荷サイクル設定値を選択できるようにもなる。
【００１２】
本発明の１つの例示的な実施形態においては、負荷サイクル補正（ＤＣＣ）回路と、ＤＣＣ回路に結合されたＤＣＣ回路コントローラと、ＤＣＣ回路に結合されたアレイと、アレイ及びＤＣＣ回路に結合された組込み自己テスト回路と、を含むものとすることができる装置が提供される。組込み自己テスト回路は、ＤＣＣ回路の現在の設定値を用いてアレイの自己テストを実行することができる。ＤＣＣ回路コントローラは、アレイの不合格を示す組込み自己テスト回路の結果に応答して、ＤＣＣ回路の設定値を次の増分設定値に増分することができる。ＤＣＣ回路コントローラは、アレイの合格を示す組込み自己テスト回路の結果に応答して、ＤＣＣ回路の現在の設定値をチップのＤＣＣ設定値として設定することができる。
【００１３】
ＤＣＣ回路は複数のステージを含むものとすることができ、複数のステージにおける各々のステージは、有効なときにアレイの負荷サイクルに増分変化を与える。複数のステージにおける各々のステージは、ＤＣＣ回路コントローラからの入力に基づいて個別に有効にすることができる。複数のステージにおける各々のステージは、少なくとも１つの増幅器と、少なくとも１つの増幅器に結合された少なくとも１つのスイッチとを含むものとすることができる。少なくとも１つのスイッチは、ＤＣＣ回路コントローラからの入力によって制御することができる。
【００１４】
ＤＣＣ回路コントローラは、カウンタと、カウンタに結合されたデコーダとを含むものとすることができる。カウンタは、自己テストの結果が合格であったか不合格であったかを示す信号を入力として受信し、自己テストが不合格であったことを入力信号が示しているときには増分することができる。カウンタ値信号をデコーダに出力することができる。デコーダは、カウンタからカウンタ値信号を受信し、カウンタ値信号に基づいて制御信号を生成し、制御信号をＤＣＣ回路に出力することができる。さらに、デコーダは、温度デコーダ（Thermometric decoder）とすることができる。
【００１５】
ＤＣＣ回路コントローラは、さらに、自己テストが合格であったか不合格であったかを示す組込み自己テスト回路からの第１の信号とカウンタを駆動するクロック信号である第２の信号とを入力として受信するＡＮＤゲートを含むものとすることができる。ＤＣＣ回路コントローラはまた、Ｎビット・カウンタに結合されたカウンタ・オーバーフロー検出器を含むものとすることができる。カウンタ・オーバーフロー検出器は、カウンタ・オーバーフロー条件が生じたときにそれを検出することができ、カウンタ・オーバーフロー条件が生じたときにはカウンタを再初期化する。
【００１６】
ＤＣＣ回路コントローラはまた、カウンタ・オーバーフロー検出器に結合されたチップ動作特性セレクタを含むものとすることができる。カウンタ・オーバーフロー検出器は、カウンタ・オーバーフロー条件が生じたときにオーバーフロー信号をチップ動作特性セレクタに送信することができる。チップ動作特性セレクタは、オーバーフロー信号を受信したことに応答して、チップの新たな動作特性を選択することができる。新たな動作特性は、動作電圧又は動作周波数の少なくとも一方とすることができる。新たな動作特性を選択することは、動作電圧を次のより高い動作電圧に増分することか又は動作周波数を次のより低い動作周波数に増分することの少なくとも一方を含むことができる。
【００１７】
ＤＣＣ回路は、最初に最も低い設定値に設定し、ＤＣＣ回路の設定値が、動作電圧又は動作周波数の少なくとも一方が修正されＤＣＣ回路が再初期化される最大設定値に達するまで、組込み自己テスト回路がアレイに適用された自己テストの不合格を示すごとに、次のより高い設定値に増分することができる。
【００１８】
本装置は、システム・オン・チップの一部とすることができる。システム・オン・チップは、データ処理システムの一部とすることができる。データ処理システムは、デスクトップ型データ処理システム、サーバ、携帯型データ処理システム、ラップトップ型データ処理システム、ノートブック型データ処理システム、個人用携帯情報端末、ゲーム用装置、ゲーム機、携帯電話装置、又は通信装置のうちの１つとすることができる。本装置は、少なくとも２つの異種プロセッサを有するマルチプロセッサ型システム・オン・チップの一部とすることができる。
【００１９】
本発明の更なる実施形態においては、負荷サイクル補正（ＤＣＣ）回路コントローラが提供される。ＤＣＣ回路コントローラは、カウンタと、カウンタに結合されたデコーダとを含むものとすることができる。カウンタは、自己テストが合格又は不合格であったことを自己テストの結果が示しているかどうかを示す入力信号を受信し、自己テストが不合格であったことを入力信号が示しているときには増分し、カウンタ値信号をデコーダに出力することができる。デコーダは、カウンタからカウンタ値信号を受信し、カウンタ値信号に基づいて制御信号を生成し、制御信号を負荷サイクル補正（ＤＣＣ）回路に出力することができる。ＤＣＣ回路は、デコーダによる制御信号出力に基づいて負荷サイクルを増分変化させることができる。デコーダは、温度デコーダとすることができる。
【００２０】
ＤＣＣ回路コントローラは、さらに、自己テストが合格であったか不合格であったかを示す組込み自己テスト回路からの第１の信号とカウンタを駆動するクロック信号である第２の信号とを入力として受信するＡＮＤゲートを含むものとすることができる。ＤＣＣ回路コントローラはまた、Ｎビット・カウンタに結合されたカウンタ・オーバーフロー検出器を含むものとすることができ、カウンタ・オーバーフロー検出器は、カウンタ・オーバーフロー条件が生じたときにそれを検出し、カウンタ・オーバーフロー条件が生じたときにはカウンタを再初期化する。
【００２１】
ＤＣＣ回路コントローラはまた、カウンタ・オーバーフロー検出器に結合されたチップ動作特性セレクタを含むものとすることができる。カウンタ・オーバーフロー条件が生じたときに、カウンタ・オーバーフロー検出器は、オーバーフロー信号をチップ動作特性セレクタに送信することができる。チップ動作特性セレクタは、オーバーフロー信号を受信したことに応答してチップの新たな動作特性を選択することができる。新たな動作特性は、動作電圧又は動作周波数の少なくとも一方とすることができ、新たな動作特性を選択することは、動作電圧を次のより高い動作電圧に増分することか又は動作周波数を次のより低い動作周波数に増分することの少なくとも一方を含む。
【００２２】
ＤＣＣ回路コントローラは、システム・オン・チップの一部とすることができる。システム・オン・チップは、データ処理システムの一部とすることができる。データ処理システムは、デスクトップ型データ処理システム、サーバ、携帯型データ処理システム、ラップトップ型データ処理システム、ノートブック型データ処理システム、個人用携帯情報端末、ゲーム用装置、ゲーム機、携帯電話装置、又は通信装置のうちの１つとすることができる。ＤＣＣ回路コントローラは、少なくとも２つの異種プロセッサを有するマルチプロセッサ型システム・オン・チップの一部とすることができる。
【００２３】
上記に加えて、本発明は、データ処理デバイスにおいて、データ処理デバイスの初期動作周波数を選択するステップと、データ処理デバイスの動作電圧を可能な最も低い電圧値に初期化するステップと、負荷サイクル補正（ＤＣＣ）デバイス設定値を最も低いＤＣＣ設定値に初期化するステップとを含む方法を提供する。本方法は、さらに、データ処理デバイスの要素のテストを実行するステップと、テストの実行結果に基づいて、ＤＣＣデバイス設定値を修正するかどうかを判定するステップと、ＤＣＣデバイス設定値が修正されるべきであると判定された場合にはＤＣＣデバイス設定値を修正するステップとを含むことができる。
【００２４】
データ処理デバイスは集積回路デバイスとすることができ、本方法はオンチップ負荷サイクル補正デバイスに実装することができる。データ処理デバイスの要素は、集積回路デバイス上のアレイの一部とすることができる。
【００２５】
データ処理デバイスの要素にテストを実行するステップは、現在の動作電圧、動作周波数、及びＤＣＣデバイス設定値でアレイの一部の自己テストを実行するために、アレイの一部に結合された組込み自己テスト回路を用いるステップを含むことができる。テストの実行結果に基づいてＤＣＣデバイス設定値を修正するかどうかを判定するステップは、テストが合格又は不合格であったことをテストの実行結果が示しているかどうかを判定するステップと、テストが不合格であったことをテストの実行結果が示している場合には、ＤＣＣデバイス設定値をＤＣＣデバイスの次の増分設定値に増分するステップとを含むことができる。テストが合格であったことをテストの実行結果が示している場合には、ＤＣＣデバイスの現在の設定値を、データ処理デバイスにおける負荷サイクル補正のための設定として用いることができる。
【００２６】
本方法は、さらに、ＤＣＣデバイス設定値を修正するステップがオーバーフロー条件をもたらすかどうかを判定するステップを含むことができる。ＤＣＣデバイス設定値の修正がオーバーフロー条件をもたらした場合には、動作電圧及び動作周波数の一方又は両方を増分することができる。
【００２７】
さらに、本発明は、負荷サイクル補正（ＤＣＣ）回路と、ＤＣＣ回路に結合されたＤＣＣ回路コントローラと、ＤＣＣ回路に結合されたアレイと、アレイ及びＤＣＣ回路コントローラに結合された組込み自己テスト回路とが設けられた負荷サイクル補正デバイスを提供するための方法を与えるものである。組込み自己テスト回路は、ＤＣＣ回路の現在の設定値を用いてアレイの自己テストを実行することができる。ＤＣＣ回路コントローラは、アレイの不合格を示す組込み自己テスト回路の結果に応答して、ＤＣＣ回路の設定値を次の増分設定値に増分することができる。ＤＣＣ回路コントローラは、アレイの合格を示す組込み自己テスト回路からの結果に応答して、ＤＣＣ回路の現在の設定値をチップのＤＣＣ設定値として設定することができる。
【００２８】
さらに、本発明は、カウンタとカウンタに結合されたデコーダとが設けられたＤＣＣ制御回路を提供するための方法を与えるものである。カウンタは、自己テストが合格又は不合格であったことを自己テストの結果が示しているかどうかを示す入力信号を受信し、自己テストが不合格であったことを入力信号が示しているときには増分し、カウンタ値信号をデコーダに出力することができる。デコーダは、カウンタからカウンタ値信号を受信し、カウンタ値信号に基づいて制御信号を生成し、制御信号を負荷サイクル補正（ＤＣＣ）回路に出力することができる。ＤＣＣ回路は、デコーダによる制御信号出力に基づいて、負荷サイクルを増分変化させることができる。
【００２９】
本発明のこれらの及び他の特徴及び利点は、本発明の例示的な実施形態の以下の詳細な説明において説明されるか、又は、本発明の例示的な実施形態の以下の詳細な説明を考慮して当業者に明らかとなるであろう。
【発明を実施するための最良の形態】
【００３０】
本発明の特性と考えられる新規な特徴が、特許請求の範囲に記載される。しかしながら、本発明自体、並びに、その好ましい使用形態、更なる利点は、添付図面と併せて読むとき、例示的な実施形態に関する以下の詳細な説明を参照することによって最も良く理解されるであろう。
【００３１】
本発明は、種々の動作条件の下でチップの最適な動作を達成するために、負荷サイクル補正回路を自動的に制御するためのオンチップ集積回路装置及び方法を提供する。チップ性能の総合的な目標は、電力を低減するために、可能な最も低い動作電圧において可能な最も高い動作周波数を有することである。本発明は、負荷サイクル補正回路の自動的なオンチップ制御を通じて、このような最適なチップ性能を達成することを目指す。
【００３２】
図１は、本発明の１つの例示的な実施形態による回路アーキテクチャの例示的なブロック図である。図１に示されるように、回路アーキテクチャは、クロック生成マクロ・ユニット１１０と、単純負荷サイクル補正（ＤＣＣ）回路１２０と、アレイ・スライス及び組込み自己テスト・ユニット１３０と、ＤＣＣ回路コントローラ１４０とを含む。１つの例示的な実施形態においては所望の周波数のクロック信号を出力するように制御可能な位相ロック・ループ（ＰＬＬ）回路である、クロック生成マクロ・ユニット１１０は、ＤＣＣ回路１２０への入力クロック信号を生成する。ＤＣＣ回路１２０は、入力クロック信号のサンプリングを行い、ＤＣＣ回路の現在の設定値に従って、クロック信号の負荷サイクル補正を実行する。ＤＣＣ回路の現在の設定値は、ＤＣＣ回路コントローラ１４０からのＤＣＣ制御ビット出力によって制御される。
【００３３】
ＤＣＣ回路１２０は、ＤＣＣ回路１２０の現在の設定値に基づいて、入力クロック信号に増分変化を与える。例えば、本発明の１つの例示的な実施形態においては、ＤＣＣ回路１２０は、各々の有効なステージによって入力クロック信号が増幅される複数のステージを備える。したがって、各々のステージは、入力クロック信号に増分増幅を与え、結果として、アレイ・スライス及び組込み自己テスト・ユニット１３０に出力クロック信号ｎｃｋｌが与えられる。
【００３４】
アレイ・スライス及び組込み自己テスト・ユニット１３０は、メイン・アレイ・ブロックを代表するものである小アレイ・グリッドと、組込み自己テスト回路とで構成される。アレイについての組込み自己テスト回路は当該技術分野において一般に公知であり、したがって、ここでは詳細な説明は行わない。組込み自己テスト回路は、アレイ・スライスを自己テスト条件にかけて、テストの結果を出力する。例えば、組込み自己テスト回路は、データをアレイ・スライスに書き込み、アレイ・スライスからデータを読み出し、両者を比較して、アレイ・スライスに書き込まれたデータがアレイ・スライスから読み出されたデータと一致するかどうかを判定することができる。一致した場合には、テストは合格である。一致しなかった場合には、テストは不合格である。出力クロック信号ｎｃｌｋの負荷サイクルが適切に調整されていない場合には、アレイ・スライスに書き込まれたデータはアレイ・スライスから読み出されたデータと一致せず、テスト不合格という結果になる。
【００３５】
別の言い方をすれば、簡単なアレイ・テストが以下のように提供される。所定の値の組が、所与の電圧、周波数、温度などで代表的なアレイ・スライスに書き込まれる。次いで、この格納された値の組は、アレイ・スライスから読み出される。アレイ・スライスから読み出された値が、アレイ・スライスに書き込まれるべき値と異なっていた場合には、テストは不合格である。このような場合には、アレイが機能するように、即ち読み出された値が書き込まれた値と等しくなるように、回路の動作条件を変更しなければならない。
【００３６】
アレイ・スライス及び組込み自己テスト・ユニット１３０の組込み自己テスト回路によって生成された結果、即ち「合格」又は「不合格」は、ＤＣＣ回路コントローラ１４０に出力される。ＤＣＣ回路コントローラ１４０は、ＤＣＣ制御ビットを設定するように動作し、ＤＣＣ制御ビットは、ＤＣＣ回路１２０に出力されて、ＤＣＣ回路１２０の動作を制御する、例えばＤＣＣ回路１２０のどのステージを有効とすべきかを特定する。ＤＣＣ回路コントローラ１４０への信号入力が「合格」の結果を示した場合には、そのチップの設定値として現在のＤＣＣ設定値が用いられる。即ち、それ以上のテスト及びＤＣＣ回路１２０の修正は不要であり、ＤＣＣ回路１２０の動作は、現在の設定値から修正されない。ＤＣＣ回路コントローラ１４０への信号入力が「不合格」の結果を示した場合には、ＤＣＣ回路コントローラは、ＤＣＣ回路１２０の設定値を次の設定値に増分するためのＤＣＣ制御ビットを生成し、次いで上述のテスト動作が繰り返される。
【００３７】
特定の条件下では、ＤＣＣ回路コントローラ１４０がＤＣＣ回路１２０の設定値のすべてを増分させ、それでもなおアレイ・スライス及び組込み自己テスト・ユニット１３０から得られる信号が「不合格」の結果を示す場合がある。このような場合においては、ＤＣＣ回路コントローラ１４０は、チップ・コア電圧を次のより高い増分に増分するための制御信号、若しくは、動作周波数を次のより低い増分に低減するための制御信号、又はその両方を行うための制御信号を与える。次いで、ＤＣＣ回路１２０を再初期化し、新たなチップ・コア電圧、周波数、又はその両方を用いて、上述のテスト動作を開始することができる。
【００３８】
本発明の１つの例示的な実施形態においては、ＤＣＣ回路コントローラ１４０は、動作電圧と動作周波数とを選択するセレクタ機構を用いて、チップ・コア電圧を増分するか又は動作周波数を低減する。周波数は、回路の出力周波数制御を選択することができるクロック生成マクロ・ユニット１１０に関連付けることができる。電圧は、例えば、チップの電圧レギュレータの設定値を選択することによって、選択することができる。動作電圧はまた、クロック周波数に間接的に影響を与えることもある。このような相互依存性は、セレクタ機構の設計と、ＤＣＣ回路コントローラ１４０のセレクタ機構が選択することができる設定値とによって、償われる。
【００３９】
図２は、本発明の１つの例示的な実施形態による負荷サイクル補正（ＤＣＣ）回路の例示的な図である。図２に示されるように、「ｎ」を負荷サイクルを修正するための増分の数とすると、ＤＣＣ回路２００は、複数のステージ、例えば１から２ｎ／２個のステージを含む。各々のステージは、２つの小型電源２１０及び２２０と、２つの増幅器２３０及び２４０と、２つのスイッチ２５０及び２６０とを含む。ＤＣＣ回路コントローラからＤＣＣ回路に入力されたＤＣＣ制御ビットの設定値に基づいて、ＤＣＣ回路の各々のステージにおける種々のスイッチ２５０及び２６０が閉じられ、それにより、ステージが有効になる。ステージが有効になると、ステージの増幅器２３０及び２４０は、入力クロック信号の負荷サイクルを増分量ごとに増加させるように機能する。ステージが直列で設けられているため、複数のステージを直列で有効にすることによって、負荷サイクルの累積的な増分増加が行われる。
【００４０】
このように、ＤＣＣ回路２００は、ステージごとにインバータのプルダウン／プルアップ強度を変えることによって動作する。このようにして、クロックの上昇／下降時間を制御することができる。これによって、望ましい負荷サイクル出力が得られる。図２はＤＣＣ回路２００の１つの構成を示すが、この構成は例示的なものに過ぎず、本発明を実装することができるＤＣＣ回路のタイプに関して、いかなる限定を述べることも示唆することも意図されていない。逆に、多くの異なるタイプのＤＣＣ回路が知られており、本発明の機構は、本発明の範囲を逸脱することなく、いずれかの公知の又は後に開発されるＤＣＣ回路と共に用いることができる。
【００４１】
図３は、本発明の１つの例示的な実施形態による負荷サイクル補正（ＤＣＣ）回路コントローラの例示的な図である。図３に示されるように、ＤＣＣ回路コントローラ３００は、Ｎから２Ｎ個の温度デコーダ３１０と、Ｎビット・カウンタ３２０と、カウンタ・オーバーフロー検出器３３０と、チップ動作特性セレクタ３４０と、ＡＮＤゲート３５０とを含む。ＡＮＤゲート３５０は、入力として、アレイ・スライス及び組込み自己テスト・ユニット１３０からの結果と、クロック生成マクロ・ユニット１１０によって生成されたクロック信号とを受信する。これらの２つの信号はＡＮＤ演算され、その結果がＮビット・カウンタ３２０に入力される。その効果は、組込み自己テストが不合格を示したときに、ＡＮＤゲート３５０の出力が次のクロック遷移において０になることである。その結果として、Ｎビット・カウンタ３２０は、次のカウントに増分し、温度デコーダ３１０及びカウンタ・オーバーフロー検出器３３０にカウンタ値を出力する。
【００４２】
温度デコーダ３１０は、Ｎビット・カウンタによって生成されたＮビット・カウンタ値を、単純負荷サイクル補正回路１２０に入力として与えられる２ＮのＤＣＣ制御ビット信号に変換する。単純負荷サイクル補正回路１２０は、負荷サイクル補正を実行し、メイン・クロック・グリッド及び回路１５０とアレイ・スライス及び組込み自己テスト・ユニット１３０とに出力を与える。
【００４３】
温度デコーダ３１０の動作は当該技術分野において一般に知られており、したがって、ここでは詳細な説明は行わない。原則的には、Ｎビット・カウンタ値信号によって特定される、現在の制御ビットまでのすべてのＤＣＣ制御ビットは、設定済みである。結果として、ＤＣＣ回路がＤＣＣ制御ビットを受信したときに、設定済みのＤＣＣ制御ビットによって特定されるステージにおけるスイッチのすべてが閉じられ、それによって入力クロック信号に関するそのステージの動作が有効になる。Ｎビット・カウンタ３２０が増分されるごとに、ＤＣＣ回路における一連のステージの中の別のステージが有効になる。
【００４４】
カウンタ・オーバーフロー検出器３３０はまた、Ｎビット・カウンタ３２０からのカウンタ値出力信号を受信し、カウンタ・オーバーフロー条件が発生したかどうかを判定する。カウンタ・オーバーフロー条件は、例えば、カウンタが最大値まで増分して初期カウンタ値に戻ったときに、例えば最大カウンタ値１６から初期カウンタ値１になったときに、検出することができる。このような場合には、カウンタ・オーバーフロー検出器３３０は、オーバーフロー信号をチップ動作特性セレクタ３４０に出力し、カウンタ初期化信号をＮビット・カウンタ３２０に出力する。このカウンタ初期化信号を受信したことに応答して、Ｎビット・カウンタ３２０は、自分自身を最も低いカウント値に再初期化する。
【００４５】
オーバーフロー信号を受信したことに応答して、チップ動作特性セレクタ３４０は、使用されるチップの動作特性の次の設定値を選択する。例えば、チップ動作特性セレクタ３４０は、電圧を次のより高い電圧に増分するか、動作周波数を次のより低い周波数に増分するか、又はその両方を行う。次いで、この新たな動作特性は、アレイ・スライス及び組込み自己テスト・ユニットで用いられ、電圧、動作周波数、及び負荷サイクルの最適な組み合わせを判定するための次の一連のテストが実行される。即ち、新たな動作特性の選択及びＮビット・カウンタ３２０の再初期化により、ＤＣＣ回路の制御は新たな動作特性のために再初期化され、適切な負荷サイクルを判定するための上述の動作が繰り返される。
【００４６】
したがって、動作の際に、例えばチップの電源投入の際に、Ｎビット・カウンタ３２０は所定の値（例えば、最も低いカウント設定値）に初期化される。Ｎビット・カウンタ３２０は、クロック入力ｃｌｋにおいて遷移が存在するときに、その値を増分する。次いで、チップは、既知の動作電圧及び周波数の値で開始される。次いで、組込み自己テストの結果は、Ｎビット・カウンタ３２０を駆動するクロックとＡＮＤ演算される。組込み自己テストの結果が「不合格」、即ち信号が低いか又は０であった場合には、Ｎビット・カウンタ３２０のｃｌｋ入力の次の遷移の際に、Ｎビット・カウンタ３２０は、その値を次のレベルに増分する。次いで、このカウンタ値は、ＤＣＣ回路設定値として温度デコーダ３１０に送信される。温度デコーダ３１０は、そのカウンタ値に基づいて、ＤＣＣ回路を制御するためのＤＣＣ制御ビットを生成する。ＤＣＣ制御ビットは、所与の電圧及び周波数でチップについて利用可能な負荷サイクルに関して増分変化を与えることになる。
【００４７】
次いで、この新たな負荷サイクル設定値を用いて、再び、組込み自己テストが行われる。組込み自己テストの結果が「不合格」であった場合には、カウンタは再び増分され、その値を用いて上述のように負荷サイクルが修正される。このプロセスは、組込み自己テストが「合格」になるまで続く。合格の場合には、Ｎビット・カウンタ３２０はそれ以上値を増分せず、ＤＣＣ回路は現在の設定値を保持することになる。
【００４８】
上述のように、厳しい動作条件の下では、Ｎビット・カウンタ３２０が全範囲にわたってカウントし、組込み自己テストがそのＤＣＣ設定値のすべてについて不合格となることがある。この場合には、カウンタ・オーバーフロー検出器３３０は、オーバーフローを検出し、電圧、周波数、又はその両方を増分するようにセレクタ３４０に命令するために、セレクタ３４０に信号を出力する。次いで、最適なチップ性能のための最適なＤＣＣ設定値を見出すために、上述のプロセスが繰り返される。
【００４９】
図４は、本発明の１つの例示的な実施形態による負荷サイクル補正回路の設定値を制御するための例示的な動作の概要を示すフローチャートである。図４に示されるように、動作は初期動作周波数を選択することで開始し、チップ・コア電圧は可能な最も低い値に初期化され、付加サイクル補正回路設定値は最も低い設定値に初期化される（ステップ４１０）。次いで、所与の電圧、周波数、温度、プロセス、及びＤＣＣ設定値で、アレイ回路の代表的なスライスの自己テストが実行される（ステップ４２０）。自己テストの結果が受信され（ステップ４３０）、結果が「合格」を示しているかどうかに関して判定が行われる（ステップ４４０）。結果が「合格」を示している場合には、ＤＣＣ回路の現在の設定値がチップの負荷サイクル補正のための設定値として用いられ（ステップ４５０）、動作は終了する。
【００５０】
自己テストの結果が「合格」を示していない場合、即ち結果が「不合格」の場合には、ＤＣＣ回路設定値は、次のより高い設定値に増分される（ステップ４６０）。ＤＣＣ回路設定値のこの増分によってオーバーフローが生じるかどうかに関して、判定が行われる（ステップ４７０）。オーバーフローが生じない場合には、動作はステップ４２０に戻る。オーバーフローが生じた場合には、そのチップについて次の電圧、周波数、又はその両方が選択される（ステップ４８０）。次いで、ＤＣＣ設定値は最も低い設定値に再初期化され（ステップ４９０）、動作はステップ４２０に戻る。
【００５１】
このように、本発明は、所与のプロセス、電圧、及び温度（ＰＶＴ）条件でチップが最適な性能を有することが可能なように、負荷サイクル補正回路について最適な負荷サイクル設定値を自動的に選択することができる機構を提供する。本発明の機構は、外部テスト環境で最良の設定値を特性決定する場合に必要なテスト／特性決定の時間及びコストを大幅に低減する。本発明の機構の動的性質によって、作業負荷の変動及びＰＶＴの変動が原因でチップ・レベルの動作環境が変化するときでも、チップが最適な負荷サイクル設定値を選択できるようにもなる。
【００５２】
上述の回路は、集積回路チップについての設計の一部である。チップ設計は、グラフィカル・コンピュータ・プログラミング言語で作成され、（ディスク、テープ、物理ハード・ドライブ、又は、ストレージ・アクセス・ネットワークにおけるような仮想ハード・ドライブといった）コンピュータのストレージ媒体に格納される。設計者が、チップ又はチップの製造に用いられるフォトリソグラフィ・マスクを製造しない場合には、設計者は、結果として得られた設計を、物理的な手段によって（例えば、設計を格納しているストレージ媒体のコピーを提供することによって）又は電子的に（例えば、インターネットを通じて）、チップ又はマスクを製造するエンティティに直接的に又は間接的に送る。次いで、格納された設計は、典型的にはウェハ上に形成される当該チップ設計の多数のコピーを含むフォトリソグラフィ・マスクの製造のための適切なフォーマット（例えば、ＧＤＳＩＩ）に変換される。フォトリソグラフィ・マスクは、エッチングされるか又は別の方法で処理されるウェハ（及び／又は、その上の層）の領域を定めるのに用いられる。
【００５３】
結果として得られた集積回路チップは、製造者により、未加工のウェハの形態で（即ち、多数のパッケージ化されていないチップを有する単一のウェハとして）、裸のダイとして、又はパッケージ化された形態で、流通させることができる。後者の場合には、チップは、（リード線でマザーボード又は他の高位レベルの支持体に取り付けられたプラスチック支持体などの）シングル・チップ・パッケージ、又は、（片面又は両面に相互接続体又は埋め込み相互接続体を有するセラミック支持体などの）マルチチップ・パッケージに取り付けられる。いずれの場合においても、次に、チップは、（ａ）マザーボードなどの中間製品の一部として又は（ｂ）最終製品の一部として、他のチップ、個別の回路要素、及び／又は他の信号処理デバイスと一体化される。最終製品は、玩具及び他の低性能用途から、ゲーム機、ハンドヘルド型又は携帯型コンピュータ装置、及び、ディスプレイ、キーボード、又は他の入力装置と中央処理装置とを有する他の高性能な非携帯型コンピュータ製品までの範囲にわたる、集積回路チップを含むいかなる製品であってもよい。
【００５４】
図５は、本発明の負荷サイクル補正回路コントローラを実装することができるデータ処理システムの例示的なブロック図である。図５に示されるように、負荷サイクル補正回路コントローラ５２０は、データ処理デバイス５１０上に又はその中に、負荷サイクル補正回路５３０、クロック生成マクロ５４０、アレイ・スライス及び組込み自己テスト・ユニット５５０、及びメイン・クロック・グリッド及び回路５６０と関連付けて設けられる。データ処理デバイス５１０は、他の要素５３０〜５６０に結合された単一の負荷サイクル補正回路コントローラ５２０を有するものとして示されているが、本発明は、そのようなものに限定されないことに留意すべきである。むしろ、本発明によるデータ処理デバイス５１０において、要素５２０〜５６０の多数の具体例を提供することができる。
【００５５】
上述のように、データ処理デバイス５１０は、多数の異なるタイプのデータ処理デバイスのいずれかとすることができる。このようなデータ処理デバイスは、集積回路チップ、マルチチップ・パッケージ、マザーボードなどを含むが、これらに限定されるものではない。データ処理デバイス５１０は、より大きなデータ処理システム又はデバイス５００の一部とすることができる。このより大きなデータ処理システム又はデバイス５００は、玩具及び他の低性能用途から、ゲーム用装置、ゲーム機、ハンドヘルド型又は携帯型コンピュータ装置、ラップトップ型コンピュータ装置、個人用携帯情報端末、電話装置又は他の通信装置、及び、デスクトップ・コンピュータ、サーバなどといった他の高性能な非携帯型コンピュータ装置までの範囲にわたる、データ処理デバイス５１０を用いるいずれかのタイプの装置とすることができる。
【００５６】
１つの例示的な実施形態においては、図５に示されるデータ処理システムは、例えば、システム・オン・チップとすることができる。本発明の１つの例示的な実施形態においては、本発明を実装することができるデータ処理システムは、ニューヨーク州アーモンク所在のＩＢＭ社から入手可能なＣＥＬＬ  Ｂｒｏａｄｂａｎｄ  Ｅｎｇｉｎｅ（ＣＢＥ）アーキテクチャベースのデータ処理システムである。シングル・チップに実装されたＣＥＬＬ  Ｂｒｏａｄｂａｎｄ  Ｅｎｇｉｎｅ（ＣＢＥ）アーキテクチャは、共通のメモリ及びバスを共有する異なる命令セットを有する複数の異種プロセッサを含む。例えば、１つの異種プロセッサを、同一のメモリ空間を共有するベクトル命令セットを有するｓｙｎｅｒｇｉｓｔｉｃ  ｐｒｏｃｅｓｓｉｎｇ  ｕｎｉｔ（ＳＰＵ）とし、他の異種プロセッサを、同一のメモリ空間を共有する縮小命令セット・コンピュータ（ＲＩＳＣ）又は他のタイプの命令セットを有するＰｏｗｅｒＰＣプロセッサとすることができる。
【００５７】
本発明の説明は、例示及び説明を目的として提示されており、網羅的であることも、開示された形態の発明に限定されることも、意図されていない。当業者には、多数の修正及び変形が明らかであろう。本実施形態は、本発明の原理及び実際の用途を最も良く説明するために、並びに、考慮される特定の用途に適した種々の修正を伴う種々の実施形態について当業者以外が本発明を理解できるように、選択され説明された。
【図面の簡単な説明】
【００５８】
【図１】本発明の１つの例示的な実施形態による回路アーキテクチャの例示的なブロック図である。
【図２】本発明の１つの例示的な実施形態による負荷サイクル補正回路の例示的な図である。
【図３】本発明の１つの例示的な実施形態による負荷サイクル補正回路コントローラの例示的な図である。
【図４】本発明の１つの例示的な実施形態による負荷サイクル補正回路の設定値を制御するための例示的な動作を概略的に示すフローチャートである。
【図５】本発明の負荷サイクル補正回路コントローラを実装することができるデータ処理システムの例示的なブロック図である。
【図１】
2009510793.tif 000003
【図２】
2009510793.tif 000004
【図３】
2009510793.tif 000005
【図４】
2009510793.tif 000006
【図５】
2009510793.tif 000007
【国際調査報告】
2009510793.tif 000008
2009510793.tif 000009