(57)【要約】  第1のラッチおよび第2のラッチのスキャンテストが、所与のスキャン値を第1のラッチの入力に結合して、第1のラッチを、スキャン値に対応する状態に切り替え、スキャン値を第1のラッチから解放して、第1のラッチをその状態にラッチし、第1のラッチの出力を、その状態にラッチされている間、第2のラッチの入力に結合して、第2のラッチをその状態に切り替え、第1のラッチの出力を第2のラッチの入力から解放して、第2のラッチをその状態にラッチする。
2013538358.tif 000002
【特許請求の範囲】
【請求項１】
複数の記憶セルを備えるスキャン可能レジスタであって、各記憶セルが、
スキャン入力およびスキャン出力と、
前記スキャン入力に結合され、ラッチ出力を有するラッチと、
前記ラッチ出力に結合され、スキャンクロックを受け取り、前記スキャンクロックに応答して、前記ラッチ出力を前記スキャン出力に切替え可能に結合し、前記ラッチ出力を前記スキャン出力から解放するためのスイッチ制御入力を有するスイッチゲートとを有し、
前記記憶セルの各々の前記スキャン出力が、前記記憶セルのうち対応する次の1つのセルの前記スキャン入力に結合される、スキャン可能レジスタ。
【請求項２】
前記スイッチゲートがパストランジスタを含む、請求項1に記載のスキャン可能レジスタ。
【請求項３】
前記スイッチゲートが、並列NMOSおよびPMOSトランジスタを有する送信ゲートを含む、請求項1に記載のスキャン可能レジスタ。
【請求項４】
前記スイッチゲートが、並列NMOSおよびPMOSトランジスタを有する送信ゲートを含む、請求項1に記載のスキャン可能レジスタ。
【請求項５】
前記スキャン可能記憶セルのうち少なくとも1つが読取り/書込み線に選択的に結合される、請求項1に記載のスキャン可能レジスタ。
【請求項６】
各記憶セルの前記ラッチが、前記記憶セルの前記スキャン入力に結合された所与の値に応答して、前記所与の信号値に切り替わる、請求項1に記載のスキャン可能レジスタ。
【請求項７】
各記憶セルの前記ラッチが、前記記憶セルの前記スキャン入力からの所与の値の解放に応答して、前記所与の値にラッチする、請求項6に記載のスキャン可能レジスタ。
【請求項８】
前記スキャンクロックが、前記記憶セルのうち第1のセルの前記スイッチゲートを切り替えて、そのラッチ出力を、それに対応する、前記記憶セルのうち次の1つのセルの前記スキャン入力に結合するのに応答して、第1のスキャン可能記憶セルの前記ラッチ入力からの所与の値の解放と実質的に同時に、前記第1の記憶セルの前記ラッチが、前記所与の値にラッチし、前記記憶セルのうち前記対応する次の1つのセルの前記ラッチが、前記所与の値にラッチスイッチするように構成されたスイッチゲートを含む、請求項7に記載のスキャン可能レジスタ。
【請求項９】
アップデートされた所与の値を、前記記憶セルのうち前記第1のセルの前記スキャン入力に結合するのに応答して、前記スキャンクロックが前記記憶セルのうち前記第1のセルの前記スイッチゲートをスイッチOFFして、そのラッチ出力を前記記憶セルのうち、前記対応する次の1つのセルの前記スキャン入力から解放するのと実質的に同時に、前記記憶セルのうち前記第1のセルの前記ラッチが、前記アップデートされた所与の値に切り替わり、前記記憶セルのうち、前記対応する次の1つのセルの前記ラッチが、前記記憶セルのうち前記第1のセルの前記スイッチゲートの前記スイッチOFFにおける、そのスキャン入力における前記所与の値でラッチする、請求項8に記載のスキャン可能レジスタ。
【請求項１０】
前記記憶セルのうち前記第1のセルがレジスタファイルの第1の記憶ラッチであり、前記記憶セルのうち、前記対応する次の1つのセルが前記レジスタファイルの第2の記憶ラッチであり、前記スキャンクロックを受け取らないことに応答して、前記第1および第2の記憶ラッチが、レジスタ読取り/書込み動作が可能である、請求項8に記載のスキャン可能レジスタ。
【請求項１１】
スキャンシフトサイクルを有するように前記スキャンクロックを生成するスキャンクロックジェネレータであって、前記スキャンシフトサイクルが、前記記憶セルのうち、それに対応する次の1つのセルの前記スイッチゲートをスイッチOFFするのと実質的に同時に、前記記憶セルのうち1つのセルの前記スイッチゲートをスイッチONする第1のクロックイベントと、それに続く、前記記憶セルのうち、前記対応する次の1つのセルの前記スイッチゲートをスイッチONするのと実質的に同時に、前記記憶セルのうち前記1つのセルの前記スイッチゲートをスイッチOFFする第2のクロックイベントとを有する、スキャンクロックジェネレータをさらに備える、請求項10に記載のスキャン可能レジスタ。
【請求項１２】
所与の値が、前記第1のスキャンシフトサイクルを通して前記記憶セルのうち前記1つのセルの前記スキャン入力上にあり、アップデートされた所与の値は、前記第2のスキャンシフトサイクルを通して前記スキャン入力上にある、一連の第1および第2の連続するスキャンシフトサイクルに応答して、前記第1のスキャンシフトサイクルの前記第1のクロックイベント時に、前記記憶セルのうち前記1つのセルの前記ラッチが、前記所与の値に切り替わり、前記第1のスキャンシフトサイクルの前記第2のクロックイベント時に、前記1つの記憶セルの前記ラッチが、前記所与の値でラッチし、前記記憶セルのうち、前記対応する次の1つのセルの前記ラッチが前記所与の値に切り替わり、前記第2のシフトサイクルの前記第1のクロックイベント時に、前記1つの記憶セルの前記ラッチが、前記アップデートされた所与の値に切り替わり、前記記憶セルのうち、前記対応する次の1つのセルの前記ラッチが、前記所与の値にラッチし、前記第2のスキャンシフトサイクルの前記第2のクロックイベント時に、前記記憶セルのうち前記1つのセルの前記ラッチが、前記アップデートされた所与の値にラッチし、前記記憶セルのうち、前記対応する次の1つのセルの前記ラッチが、前記アップデートされた所与の値に切り替わる、請求項11に記載のスキャン可能レジスタ。
【請求項１３】
前記スキャンクロックが、前記1つの記憶セルの前記スイッチゲートの前記制御入力に接続された第1のスキャンクロックと、前記記憶セルのうち、前記対応する次の1つのセルの前記スイッチゲートの前記制御入力に接続された第2のスキャンクロックとを含み、前記第1のスキャンクロックおよび前記第2のスキャンクロックの各々が、立上りおよび立下りエッジをもち、前記第1のクロックイベントが、前記第1のスキャンクロックの前記立上りエッジおよび前記立下りエッジの一方であり、前記第2のスキャンイベントが、前記第2のスキャンクロックの前記立上りおよび立下りエッジの一方である、請求項11に記載のスキャン可能レジスタ。
【請求項１４】
前記スキャンクロックが、前記1つの記憶セルの前記スイッチゲートの前記制御入力に接続された第1のスキャンクロックと、前記記憶セルのうち、前記対応する次の1つのセルの前記スイッチゲートの前記制御入力に接続された第2のスキャンクロックとを含み、前記第1のスキャンクロックおよび前記第2のスキャンクロックの各々が、立上りおよび立下りエッジをもち、前記第1のクロックイベントが、前記第1のスキャンクロックの前記立上りエッジおよび前記立下りエッジの一方であり、前記第2のスキャンイベントが、前記第2のスキャンクロックの前記立上りおよび立下りエッジの一方であり、前記第1のクロックイベントが、前記第1のクロックの前記立上りおよび立下りエッジの一方ならびに前記第2のクロックの前記立上りおよび立下りエッジの一方であり、前記第2のクロックイベントが、前記第1のクロックの立上りおよび立下りエッジの他方ならびに前記第2のクロックの立上りおよび立下りエッジの他方である、請求項12に記載のスキャン可能レジスタ。
【請求項１５】
前記第1のスキャンクロックの前記立上りおよび立下りエッジが、前記第2のスキャンクロックの前記立上りおよび立下りエッジと実質的に同時であり、第1のスイッチゲート、および前記第2のスイッチゲートの前記制御入力が、それぞれ、前記第1のスキャンクロックおよび前記第2のスキャンクロックを受け取るためであり、前記第2のスキャンクロック立下りエッジ遷移が、前記第1のスキャンクロック立上りエッジ遷移と実質的に時間整合され、前記第1のスキャンクロック立下りエッジ遷移が、前記第2のスキャンクロック立下りエッジ遷移と実質的に時間整合される、請求項14に記載のスキャン可能レジスタ。
【請求項１６】
入力および出力を有する第1のラッチと、入力および出力を有する第2のラッチとのスキャンテストのための方法であって、
所与のスキャンデータを前記第1のラッチの前記入力に結合して、前記第1のラッチを、前記所与のスキャンデータに対応する状態に切り替わるように切り替えるステップと、
前記所与のスキャンデータを前記第1のラッチの前記入力から解放して、前記第1のラッチを前記状態にラッチするステップと、
前記第1のラッチの前記出力を、前記状態でラッチされている間に、前記第2のラッチの前記入力に結合して、前記第2のラッチを前記状態に切り替えるステップと、
前記第1のラッチの前記出力を前記第2のラッチの前記入力から解放して、前記第2のラッチを前記状態にラッチするステップとを含む方法。
【請求項１７】
前記所与のスキャンデータを前記第1のラッチの前記入力から解放して、前記第1のラッチを前記状態にラッチする前記ステップが、前記第1のラッチの前記出力を、前記状態でラッチされている間に、前記第2のラッチの前記入力に結合して、前記第2のラッチを前記状態に切り替える前記ステップと実質的に同時に実施される、請求項16に記載の、第1のラッチおよび第2のラッチのスキャンテストのための方法。
【請求項１８】
所与のスキャンデータを前記第1のラッチの前記入力に結合して、前記第1のラッチを前記状態に切り替える前記ステップが、前記第1のラッチの前記入力と、前記所与のスキャンデータの所与のソースとの間のスイッチゲートをスイッチONするステップを含む、請求項16に記載の方法。
【請求項１９】
前記所与のスキャンデータを前記第1のラッチの前記入力から解放する前記ステップが、前記所与のスキャンデータの所与のソースと前記入力との間の第1のスイッチゲートをスイッチOFFすることによって実施され、前記第1のラッチの前記出力を、前記状態でラッチされている間に、前記第2のラッチの前記入力に結合する前記ステップが、前記第1のラッチの前記出力と前記第2のラッチの前記入力との間のスイッチゲートをスイッチONすることによって実施され、前記スイッチOFFが、前記スイッチONと実質的に同時に実施される、請求項17に記載の方法。
【請求項２０】
前記第1のラッチの前記出力を、前記状態にラッチされている間に、前記第2のラッチの前記入力に結合する前記ステップが、前記第1のラッチの前記出力と前記第2のラッチの前記入力との間のスイッチゲートをスイッチONすることによって実施される、請求項18に記載の方法。
【請求項２１】
前記第2のラッチの前記出力を、前記状態に切り替えられている間に、解放して、前記第2のものを前記状態にラッチする前記ステップが、前記第1のラッチの前記出力と前記第2のラッチの前記入力との間の前記スイッチゲートをスイッチOFFすることによって実施される、請求項20に記載の方法。
【請求項２２】
スキャンテストのための方法であって、
a)約N/2個の奇数記憶セルおよび約N/2個の偶数スキャン可能記憶セルを設けるステップであって、前記記憶セルの各々が、ラッチ入力およびラッチ出力を有するラッチを有し、各奇数記憶セルの前記ラッチ出力が、対応する次の偶数記憶セルの前記ラッチ入力に選択的に結合され、各偶数記憶セルの前記ラッチ出力が、対応する次の奇数記憶セルの前記ラッチ入力に選択的に結合されるステップと、
b)反復サイクルを有するスキャンクロックを生成するステップであって、各サイクルが、第1のクロックイベント、およびそれに続く第2のクロックイベントを有するステップと、
c)スキャンクロックサイクルの前記第1のクロックイベントに応答して、前記奇数記憶セルの各々の前記ラッチ出力を、それに対応する次の偶数記憶セルの前記ラッチ入力に結合して、それに対応する次の偶数記憶セルの前記ラッチの状態を、前記奇数記憶セルの前記ラッチの状態に切り替え、前記結合と実質的に同時に、前記偶数記憶セルの各々の前記ラッチ出力を、それに対応する次の奇数記憶セルの前記ラッチ入力から解放して、前記奇数記憶セルの前記ラッチの状態を、前記解放より前の前記ラッチの状態にラッチするステップと、
d)前記スキャンクロックサイクルの前記第2のクロックイベントに応答して、前記偶数記憶セルの各々の前記ラッチ出力を、それに対応する次の奇数記憶セルの前記ラッチ入力から解放して、それに対応する次の奇数記憶セルの前記ラッチの状態を、前記偶数記憶セルの前記ラッチの状態にラッチし、前記解放と実質的に同時に、前記奇数記憶セルの各々の前記ラッチ出力を、それに対応する次の偶数記憶セルの前記ラッチ入力に結合して、前記偶数記憶セルの前記ラッチの状態を、前記奇数記憶セルの前記ラッチの状態に切り替えるステップと含む方法。
【請求項２３】
約M個の前記スキャンクロックサイクルを生成して、c)およびd)を約M回繰り返すことによって、ラッチ状態を、前記記憶セルのうち第1のセルから、前記記憶セルの約M個のペアを通してさらに連続してシフトし、各ペアが、奇数記憶セルとそれに対応する次の偶数記憶セル、または偶数記憶セルとそれに対応する次の奇数記憶セルのうち任意のものである、請求項22に記載のスキャンテストのための方法。
【請求項２４】
前記約M個のクロックサイクルのうち少なくとも1つの後、前記N個の記憶セルのうち少なくとも1つを読み取るステップをさらに含む、請求項23に記載の方法。
【請求項２５】
前記読み取るステップが、前記N個の可読1ビット記憶セルのうち少なくとも1つを、マルチポートレジスタファイルのポートに結合するステップを含む、請求項24に記載の方法。
【請求項２６】
前記N個の記憶セルが、ポートを介してアクセス可能なレジスタファイルのNビットレジスタのN個の可読1ビット記憶セルであり、前記読み取るステップが、前記可読1ビット記憶セルのうち全N個を前記ポートに結合するステップを含む、請求項24に記載の方法。
【請求項２７】
ラッチ入力およびラッチ出力を有する第1のラッチと、ラッチ入力およびラッチ出力を有する第2のラッチとを有するスキャン可能レジスタであって、
所与のスキャンデータを前記第1のラッチの前記入力に結合して、前記第1のラッチを、前記所与のスキャンデータに対応する状態に切り替え、前記所与のスキャンデータを前記第1のラッチの前記入力から解放して、前記第1のラッチを前記状態にラッチするための手段と、
前記第1のラッチの前記出力を、前記状態でラッチされている間に、前記第2のラッチの前記入力に結合して、前記第2のラッチを前記状態に切り替え、前記第1のラッチの前記出力を、前記第2のラッチが前記状態にラッチされている間に、前記第2のラッチから解放して、前記第2のラッチを前記状態にラッチするための手段とを備えるスキャン可能レジスタ。
【請求項２８】
前記所与のスキャンデータを、前記第1のラッチの前記入力から解放して、前記第1のラッチを前記状態にラッチするための前記手段によって実施される前記解放が、前記第1のラッチの前記出力を前記第2のラッチの前記入力に結合して、前記第2のラッチを前記第1のラッチの前記状態に切り替えるための前記手段によって実施される前記結合と実質的に同時に実施される、請求項27に記載のスキャン可能レジスタ。
【請求項２９】
前記第1のラッチが前記状態でラッチされている間に、前記第1のラッチの前記状態を読み取るための手段をさらに備える、請求項27に記載のスキャン可能レジスタ。
【請求項３０】
前記第2のラッチが前記状態でラッチされている間に、前記第2のラッチの前記状態を読み取るための手段をさらに備える、請求項27に記載のスキャン可能レジスタ。
【請求項３１】
読み取るための前記手段が、前記第1および第2のラッチの少なくとも1つをマルチポートレジスタファイルのポートに結合する、請求項30に記載のスキャン可能レジスタ。
【請求項３２】
N個の1ビット記憶セルであって、前記記憶セルの各々が、ラッチ入力およびラッチ出力を有する1ビットラッチを有し、約N/2個の偶数記憶セルおよび約N/2個の奇数記憶セルとして配列され、各偶数記憶セルが、前記奇数記憶セルのうち、1つの対応する次の奇数記憶セルを有し、各奇数記憶セルが、前記偶数記憶セルのうち、対応する1つの次の偶数記憶セルを有する、N個の1ビット記憶セルと、
反復サイクルを有するスキャンクロックを生成するための手段であって、各サイクルが、第1のクロックイベント、およびそれに続く第2のクロックイベントを有する手段と、
前記スキャンクロックを受け取り、スキャンクロックサイクルの前記第1のクロックイベントに応答して、前記奇数記憶セルの各々の前記ラッチ出力を、それに対応する次の偶数記憶セルの前記ラッチ入力に結合して、それに対応する次の偶数記憶セルの前記ラッチの状態を、前記奇数記憶セルの前記ラッチの状態に切り替え、前記結合と実質的に同時に、前記偶数記憶セルの各々の前記ラッチ出力を、それに対応する次の奇数記憶セルの前記ラッチ入力から解放して、前記奇数記憶セルの前記ラッチの状態を、前記解放より前の前記ラッチの状態にラッチするための第1のシフト手段と、
前記スキャンクロックを受け取り、前記スキャンクロックサイクルの前記第2のクロックイベントに応答して、前記偶数記憶セルの各々の前記ラッチ出力を、それに対応する次の奇数記憶セルの前記ラッチ入力から解放して、それに対応する次の奇数記憶セルの前記ラッチの状態を、前記偶数記憶セルの前記ラッチの状態にラッチし、前記解放と実質的に同時に、前記奇数記憶セルの各々の前記ラッチ出力を、それに対応する次の偶数記憶セルの前記ラッチ入力に結合して、前記偶数記憶セルの前記ラッチの状態を、前記奇数記憶セルの前記ラッチの状態に切り替えるための第2のシフト手段とを備えるスキャン可能Nビットレジスタ。
【請求項３３】
前記スキャンクロックの、約M個の前記サイクルの受取りに応答して、前記第1のシフト手段および第2のシフト手段によって実施される前記結合および解放が、ラッチ状態を、前記記憶セルのうち第1のセルから、前記記憶セルの約M個のペアを通して連続してシフトし、各ペアが、奇数記憶セルとそれに対応する次の偶数記憶セルまたは偶数記憶セルとそれに対応する次の奇数記憶セルの任意のものである、請求項32に記載のスキャン可能Nビットレジスタ。
【請求項３４】
前記約M個のクロックサイクルのうち少なくとも1つの後、前記N個の記憶セルのうち少なくとも1つを読み取るための読取り手段をさらに備える、請求項33に記載のスキャン可能Nビットレジスタ。
【請求項３５】
前記読取り手段が、前記N個の可読1ビット記憶セルのうち少なくとも1つを、マルチポートレジスタファイルのポートに結合するための手段を含む、請求項34に記載のスキャン可能Nビットレジスタ。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は概して、集積回路チップの組込みテストに関し、より詳細には、組込みシリアルスキャンテストのための構造に関する。
【背景技術】
【０００２】
様々な機能クラスの集積回路が、動作モードと、通常は特定のテストビットパターンであるテストデータが回路内のテスト入力点に入力されるテストモードとを有するように設計され実装され得る。回路は、回路の内部セルに、テストデータに働きかけさせて結果を生成するようにクロック制御され、結果は、回路設計者が、対応するテスト出力点を通して観測可能にする。結果は次いで、正しい結果と比較される。結果が正しいことを比較が示す場合、テスト入力点とテスト出力点との間の回路部分には欠陥がない。
【０００３】
1つのよく知られているテスト方法は、レジスタファイルおよび他のスタティックランダムアクセスメモリ(SRAM)デバイスなど、多数の単一ビットラッチタイプ記憶セルを有する集積回路チップのテストにとって特に魅力的であり、スキャン試験と呼ばれる。スキャン試験は、制御信号に応答して、その内部構成を切り替え、互いと接続されて、指定された入力スキャンテストセルから、指定された出力スキャンテストセルまで延びる、単一ビットフリップフロップタイプラッチからなる、「スキャンチェーン」と呼ばれるチェーンを形成する個々の記憶セルの制御および観測を可能にする。この能力を有する記憶セルは、「スキャン可能」と呼ばれる。
【０００４】
理想としては、任意の所与のスキャンチェーンを形成するスキャン可能記憶セルすべてが、その通常動作において正しくスキャン動作する場合、再構成されるとともにスキャンチェーンに接続された後、入力スキャンテストセルに供給されたスキャンテストデータは、バケツリレー方式で、スキャンチェーン中の各記憶セルを通してシフトされ、したがって破損せずにスキャンテスト出力セルを出る。これは、記憶セルをスキャン可能にするのに必要な、各記憶セルに関連付けられた追加回路要素が、正しく動作することを仮定している。その同じ仮定に基づいて、出力スキャンテストセルが、入力スキャンテストセルに供給された同じスキャンテストシーケンスを出力するのに失敗した場合、そのスキャンチェーンの入力から出力に延びるスキャンチェーン中の記憶セルのいずれか1つについての故障が示される。
【０００５】
レジスタファイルの記憶セルを含む記憶セルをスキャン可能なように設計する、知られている方法は、各記憶セルとともに、記憶セルの回路要素の各回路要素のトポロジーを、通常レベルトリガ動作、すなわち、ラッチモードから、エッジトリガ動作、すなわち、フリップフロップモードに切り替え、その結果生じたフリップフロップモードセルを互いと接続し、1ビットフリップフロップからなるチェーンを形成する制御信号によってスキャン試験が実施されるような追加回路要素を必ず含む。記憶セルが形成するレジスタまたは他の回路は次いで、たとえば、その通常モードにおいて動作するとき、レジスタの最下位または最上位ビットの一方のための記憶セルであり得る、チェーンの第1の記憶セル/フリップフロップのデータ入力に単一ビットテストシーケンスを供給し、次いで、Nビットレジスタを想定し、スキャンチェーン中のN個の記憶セル/フリップフロップすべてをN回以上クロック制御し、各々を通して、スキャンテストシーケンスをバケツリレー方式でシフトし、次いで、通常動作におけるレジスタの最下位または最上位ビットのうち他方のための記憶セルであり得る、記憶セル/フリップフロップのうち最後のものの出力を観測することによって、スキャンテストされ得る。
【０００６】
スキャンテストの主な利益は、半導体メモリ業界では長い間知られているが、少なくとも理想としては、回路がテストモードに切り替えられたとき、スキャンチェーンの1つに切り替えられた各記憶セルを観測および制御するための手段を提供することである。
【０００７】
ただし、当業界において同等によく知られているのは、スキャン可能記憶セルを作る、知られている方法のコストである。これらのコストの1つは、大きいのだが、トランジスタ数の追加およびそれに対応する追加相互接続である。このコストに関連するのは、追加回路要素によって消費されるチップ面積のコストである。
【０００８】
そのようなコストの理由は、知られている方法が、スレーブラッチ回路要素を付加することによって、記憶セルをスキャン可能にするからであって、このスレーブラッチ回路要素は、スキャンテストモードに切り替えられると、そのラッチを、特別に活動化されたスレーブラッチに供給を行うマスターラッチに変換させる記憶セルラッチからの接続とともに活動化されて、当該分野において知られているように、マスタースレーブフリップフロップを達成する。
【０００９】
従来技術である図1は、マスタースレーブフリップフロップモードで動作するようにセルをイネーブルにするための、上で説明した回路要素の例を有するスキャン可能記憶セル100の例を示し、スキャン可能記憶セルを作るための知られている手段を例示する。ここで従来技術の図1を参照すると、例100は、レベル感応データラッチ102およびシャドースレーブラッチ104を備える。スレーブラッチ104は、セルへの読取りおよび書込みを行う通常モード動作中にどのような機能も実施しないので、一般に「シャドー」ラッチと呼ばれる。従来技術の図1の例100の構築および動作の詳細は、当業者にはよく知られているので、綿密な考察は省く。要約すると、通常動作モードにおいて、ワード線は、レベル感応データラッチ102に対して読取り/書込み動作をトリガするためのクロックとして作用する。スキャンモードでは、第1のクロックサイクル中に、スキャンインデータが、現在マスターであるレベル感応ラッチ102に書き込まれる。別個のスキャンクロックが、マスターからスレーブラッチ104にスキャンインデータを取り込むのに使われる。次のクロックサイクルの立上りエッジにおいて、スキャンインデータは、スキャンアウトデータとして出力され、スキャンアウトデータは、隣接するラッチ(図1には示さず)に供給され、やはり同様に、スキャン可能フリップフロップに変換される。
【００１０】
図1から理解することができるとともに、関連技術において知られているように、スレーブラッチ104は、レベル感応データラッチ102と実質的に同じ構成回路要素を有する。したがって、スレーブラッチ104に必要とされる面積は、レベル感応データラッチ102に必要とされる面積と実質的に同じである。たとえば、レジスタファイルの記憶セルなどの記憶セルをスキャン可能にするための従来の方法がこのように複雑である結果、レジスタファイルの面積がほぼ2倍になる。大規模レジスタファイルおよび他の大規模記憶セルアレイの場合、これはかなりのコストになる。さらに、スレーブラッチ104は通常、レベル感応データラッチ102(またはスキャンモードにあるマスターラッチ)と同じ技術および同じ処理ステップで製造されるので、スレーブラッチ104は、それ自体が欠陥源となる場合がある。
【発明の概要】
【課題を解決するための手段】
【００１１】
例示的な実施形態は、スキャン可能記憶セルおよびレジスタと、様々な実施形態による記憶セルおよびレジスタのスキャンテストのためのシステムおよび方法とを含む。
【００１２】
様々な実施形態のうち1つまたは複数によるスキャン可能レジスタの一例は、複数の記憶セルを含み、各記憶セルは、スキャン入力およびスキャン出力と、スキャン入力に結合されたラッチであって、ラッチ出力を有するラッチと、スキャンクロックを受け取り、スキャンクロックに応答して、ラッチ出力をスキャン出力に切替え可能に結合し、ラッチ出力をスキャン出力から解放するためのスイッチ制御入力を有する、ラッチ出力に結合されたスイッチゲートとを有し、記憶セルの各々のスキャン出力は、記憶セルのうち対応する次の1つのセルのスキャン入力に結合される。
【００１３】
一態様によると、様々な例示的実施形態のうち1つまたは複数による例示的スキャン可能レジスタは、スキャンクロックが、第1のスキャン可能記憶セルのラッチ入力からの所与の値の解放と実質的に同時に、記憶セルのうち第1のセルのスイッチゲートを切り替えて、そのラッチ出力を、それに対応する、記憶セルのうち次の1つのセルの入力に結合するのに応答して、第1の記憶セルのラッチが、所与の値にラッチし、記憶セルのうち対応する次の1つのセルのラッチが、所与の値にラッチスイッチするように構成されたスイッチゲートを含む。
【００１４】
様々な実施形態のうち1つまたは複数によるスキャン可能記憶装置の一例は、スキャン入力およびスキャン出力を各々がもち、スキャン入力に結合されたラッチを各々が含む第1の記憶セルおよび第2の記憶セルを含み、ラッチは、スキャンクロックを受け取り、スキャンクロックに応答して、ラッチをスキャン出力に切替え可能に結合するためのスイッチ制御入力を有するラッチ出力スイッチゲートに結合され、第1の記憶セルのスキャン出力は、第2の記憶セルのスキャン入力に結合される。
【００１５】
一態様によると、様々な例示的実施形態のうち1つまたは複数による例示的なスキャン可能記憶装置は、循環スキャンクロックに応答して、結合状態と解放状態との間で循環的に切り替わるように構成および配列された、第1の記憶セルのラッチ出力スイッチゲートと、第2の記憶セルのラッチ出力スイッチゲートとを含み、循環切替えは、第2の記憶セルのラッチ出力スイッチゲートが解放状態に切り替わるのと実質的に同時に、第1の記憶セルのラッチ出力スイッチゲートが結合状態に切り替わり、続いて、第1の記憶セルのラッチ出力スイッチゲートが解放状態に切り替わるのと実質的に同時に、第2の記憶セルのラッチ出力スイッチゲートが結合状態に切り替わることを含む。
【００１６】
一態様によると、様々な例示的実施形態のうち1つまたは複数による例示的なスキャン可能記憶装置は、第1および第2の記憶セルのうち少なくとも1つのセルのラッチ状態を選択的に読み取るように、外部の読取り線に選択的に結合されるラッチを含む。
【００１７】
様々な例示的実施形態のうち1つまたは複数による方法の一例は、約N/2個の奇数記憶セルおよび約N/2個の偶数記憶セルを設けるステップであって、記憶セルの各々が、入力および出力を有するとともにスイッチゲートを有するラッチを有するステップと、各奇数記憶セルのスイッチゲートが、セルのラッチ出力を、対応する次の偶数記憶セルのラッチの入力に選択的に結合するステップと、各偶数記憶セルのスイッチゲートが、セルのラッチ出力を、対応する次の奇数記憶セルのラッチの入力に選択的に結合するステップとを含み、a)奇数記憶セルの各々のラッチ出力を、それに対応する次の偶数記憶セルの入力から解放するのと実質的に同時に、偶数記憶セルの各々のラッチ出力を、それに対応する次の奇数記憶セルのラッチ入力に結合するように、記憶セルのスイッチゲートを制御するステップと、続いて、b)偶数記憶セルの各々のラッチ出力を、それに対応する次の奇数記憶セルの入力から解放するのと実質的に同時に、奇数記憶セルの各々のラッチ出力を、それに対応する次の偶数記憶セルのラッチ入力に結合するように、スイッチゲートを制御するステップとをさらに含む。
【００１８】
様々な例示的実施形態のうち1つまたは複数の形態の一態様による方法の一例は、a)およびb)を約M回繰り返すことによって、ラッチ状態を、記憶セルのうち第1のセルから、記憶セルの約M個のペアを通して連続してシフトするステップであって、各ペアが、奇数記憶セルとそれに対応する次の偶数記憶セルまたは偶数記憶セルとそれに対応する次の奇数記憶セルのうち任意のものであるステップをさらに含む。
【００１９】
様々な例示的実施形態のうち1つまたは複数による方法の一例は、約N/2個の奇数記憶セルおよび約N/2個の偶数記憶セルを設けるステップであって、記憶セルの各々が、入力および出力を有するとともにスイッチゲートを有するラッチを有するステップと、各奇数記憶セルのスイッチゲートが、セルのラッチ出力を、対応する次の偶数記憶セルのラッチの入力に選択的に結合するステップと、各偶数記憶セルのスイッチゲートが、セルのラッチ出力を、対応する次の奇数記憶セルのラッチの入力に選択的に結合するステップとを含み、a)立上りエッジおよび立下りエッジを有するスキャンクロックを生成するステップと、b)スキャンクロックサイクルの立上りおよび立下りエッジの一方に応答して、次の奇数記憶セルの各々のラッチ出力を、それに対応する偶数記憶セルのラッチ出力の状態にラッチするのと実質的に同時に、対応する次の偶数記憶セルの各々のラッチ出力を、それに対応する偶数記憶セルのラッチ出力の状態に切り替えるステップと、続いて、c)スキャンクロックサイクルの立上りまたは立下りエッジのうち後続のものに応答して、次の偶数記憶セルの各々のラッチ出力を、それに対応する奇数記憶セルのラッチ出力の状態にラッチするのと実質的に同時に、対応する次の奇数記憶セルの各々のラッチ出力を、それに対応する偶数記憶セルのラッチ出力の状態に切り替えるステップとをさらに含む。
【００２０】
様々な例示的実施形態のうち1つまたは複数の形態の一態様による方法の一例は、M個のスキャンクロックサイクルを生成し、各サイクルに応答して、b)およびc)を繰り返すことによって、ラッチ状態を、記憶セルのうち第1のセルから、記憶セルの約M個のペアを通して連続してシフトするステップであって、各ペアが、奇数記憶セルとそれに対応する次の偶数記憶セルまたは偶数記憶セルとそれに対応する次の奇数記憶セルのうち任意のものであるステップをさらに含む。
【００２１】
様々な例示的実施形態のうち1つまたは複数の形態の一態様による方法の一例は、連続シフティングの後の、記憶セルのうちR個のセルの読取りを含む。
【００２２】
様々な実施形態のうち1つまたは複数による1つの例示的なスキャン可能記憶装置は、ラッチ入力およびラッチ出力を有する第1のラッチを有する第1の記憶セルと、ラッチ入力およびラッチ出力を有する第2のラッチを有する第2の記憶セルと、第1のラッチのラッチ入力に所与のスキャンデータを結合して、第1のラッチを所与のスキャンデータに切り替えるための手段と、所与のスキャンデータを第1のラッチの入力から解放して、第1の可読ラッチを所与のスキャンデータにラッチするための手段と、所与のスキャンデータにラッチされている間に第1のラッチの出力を2のラッチの入力に結合して、第2のラッチを所与のスキャンデータに切り替えるための手段と、第1のラッチの出力を第2のラッチの入力から解放して、第2のラッチを、第2のラッチが所与のスキャンデータにラッチされている間に、所与のスキャンデータにラッチするための手段とを含む。
【００２３】
様々な実施形態のうち1つまたは複数による1つの例示的なスキャン可能Nビットレジスタは、N個の1ビット記憶セルであって、記憶セルの各々が、ラッチ入力およびラッチ出力を有する1ビットラッチを有し、約N/2個の偶数記憶セルおよび約N/2個の奇数記憶セルとして配列され、各偶数記憶セルが、奇数記憶セルのうち、1つの対応する次の奇数記憶セルを有し、各奇数記憶セルが、偶数記憶セルのうち、1つの対応する次の偶数記憶セルを有する、N個の1ビット記憶セルと、反復サイクルを有するスキャンクロックを生成するための手段であって、各サイクルが、第1のクロックイベント、およびそれに続く第2のクロックイベントを有する手段と、スキャンクロックを受け取り、スキャンクロックサイクルの第1のクロックイベントに応答して、奇数記憶セルの各々のラッチ出力を、それに対応する次の偶数記憶セルのラッチ入力に結合して、そのラッチの状態を奇数記憶セルのラッチの状態に切り替え、その結合と実質的に同時に、偶数記憶セルの各々のラッチ出力を、それに対応する次の奇数記憶セルのラッチ入力から解放して、その奇数記憶セルのラッチの状態を、解放より前の、そのラッチの状態にラッチするための第1のシフト手段と、スキャンクロックを受け取り、スキャンクロックサイクルの第2のクロックイベントに応答して、偶数記憶セルの各々のラッチ出力を、それに対応する次の奇数記憶セルのラッチ入力から解放して、そのラッチの状態を、解放より前のそのラッチの状態にラッチし、その解放と実質的に同時に、奇数記憶セルの各々のラッチ出力を、それに対応する次の偶数記憶セルのラッチ入力に結合して、そのラッチの状態を奇数記憶セルのラッチの状態に切り替えるための第2のシフト手段とを含む。
【００２４】
一態様によると、様々な例示的実施形態のうち1つまたは複数による例示的なスキャン可能Nビットスキャン可能レジスタは、第1のシフト手段および第2のシフト手段を含み、スキャンクロックのサイクルのうち約M個のサイクルの受取りに応答して、第1および第2のシフト手段は、それらのそれぞれの結合および解放を約M回実施して、記憶セルのうち第1のセルから、記憶セルの約M個のペアを通して、ラッチ状態を連続してシフトし、各ペアは、奇数記憶セルとそれに対応する次の偶数記憶セルまたは偶数記憶セルとそれに対応する次の奇数記憶セルのうち任意のものである。
【００２５】
上で要約した、様々な例示的実施形態の説明のための例、態様および特徴は、網羅的または限定的であることは意図しておらず、本開示を全部読むと、様々な例示的実施形態の他の態様、特徴、利点、変形および応用が、当業者には明らかであろう。
【００２６】
添付図面は、本発明の実施形態に関する説明において助けとなるように与えられており、本発明の限定ではなく、実施形態の例示のみのために提供されている。
【図面の簡単な説明】
【００２７】
【図１】通常ラッチ動作およびテストモードスキャン可能フリップフロップ動作を提供する、従来技術による記憶セルを示す図である。
【図２】例示的動作状態で示された、様々な例示的実施形態のうち1つまたは複数による1つの例示的なスキャン可能レジスタファイルを示す概略ブロック図である。
【図３Ａ】第1のスキャンシフト状態で示された、図2のスキャン可能レジスタファイルを示す概略ブロック図である。
【図３Ｂ】第2のスキャンシフト状態で示された、図2のスキャン可能レジスタファイルを示す概略ブロック図である。
【図４】図2の例示的スキャン可能レジスタファイルに関係した、一クロッキング態様による1つの例示的クロッキング方式、第1のスキャンシフト状態と第2のスキャンシフト状態との間の対応する切替え、ならびに対応する例示的スキャンシフトシーケンスを示す1つの例示的タイミング図である。
【図５】1つまたは複数の実施形態による、別の説明のための例示的なスキャン可能シフトレジスタを示す図である。
【図６】図5の例示的スキャン可能レジスタファイルに関係した、一クロッキング態様による1つの例示的クロッキング方式、および対応する例示的スキャンシフトシーケンスを示す1つの例示的タイミング図である。
【発明を実施するための形態】
【００２８】
本発明の特定の実施形態を対象とする以下の説明および関連する図面で本発明の態様を開示する。本発明の範囲から逸脱することなく、代替的な実施形態を考案することができる。さらに、本発明の関連する詳細を不明瞭にしないように、本発明のよく知られている要素については詳細に説明しないか、または省略する。
【００２９】
「例示的」という語は、「例、実例、または具体例としての役割を果たすこと」を意味するように本明細書において用いられている。「例示的」として本明細書で説明する任意の実施形態は、必ずしも他の実施形態よりも好ましいまたは有利であると解釈されない。同様に、「本発明の実施形態」という用語は、本発明のすべての実施形態が、論じられた特徴、利点または動作モードを含むことを必要としない。
【００３０】
本明細書で用いられる用語は、特定の実施形態の説明のための例を説明することを目的とするものであり、本発明の実施形態を限定することは意図されない。
【００３１】
本明細書で用いられる場合、単数形である「a」、「an」および「the」は、文脈によってそうでないと明確に示されない限り、複数形も含むように考えられている。さらに、本明細書で使用する「含む(comprises)」、「含んでいる(comprising)」、「含む(includes)」、および/または「含んでいる(including)」という用語は、述べられた特徴、整数、ステップ、動作、要素、および/または構成要素の存在を明示するが、1つまたは複数の他の特徴、整数、ステップ、動作、要素、構成要素、および/またはそれらのグループの存在または追加を排除しないことを理解されたい。
【００３２】
さらに、多くの実施形態が、たとえば、コンピューティングデバイスの要素によって実行すべき一連のアクションに関して説明される。本明細書で説明する様々なアクションは、特定の回路(たとえば、特定用途向け集積回路(ASIC))によって、1つもしくは複数のプロセッサによって実行されるプログラム命令によって、または両方の組合せによって実行できることが認識されよう。さらに、本明細書で説明する一連のアクションは、実行時に、関連するプロセッサに本明細書で説明する機能を実行させるコンピュータ命令の対応するセットを記憶した、任意の形式のコンピュータ可読記憶媒体内で完全に具現化されるものと見なすことができる。したがって、本発明の様々な態様は、すべてが特許請求される主題の範囲内に入ることが企図されている多数の異なる形式で具現化できる。さらに、本明細書で説明する実施形態ごとに、任意のそのような実施形態の対応する形式を、たとえば、記載のアクションを実行する「ように構成された論理」として本明細書で説明することがある。
【００３３】
さらに、情報および情報を符号化する信号は、多種多様な技術および技法のいずれかを使用して表すことができることを当業者は諒解されよう。上記説明を通して参照される場合がある情報およびそのような情報のビット、ならびに、たとえば、入力データ、オペランドデータ、パラメータデータ、命令、およびコマンドなどを具現する、それらの情報ビットを符号化するシンボルは、電圧、電流、電磁波、磁界もしくは磁性粒子、光場もしくは光学粒子、またはそれらの任意の組合せによって表され得る。
【００３４】
さらに、本明細書で開示する実施形態に関連して説明する様々な例示的な論理ブロック、モジュール、回路、およびアルゴリズムステップは、電子ハードウェア、コンピュータソフトウェア、または両方の組合せとして実装できることを、当業者は諒解されよう。ハードウェアとソフトウェアのこの互換性を明確に示すために、様々な例示的な構成要素、ブロック、モジュール、回路、およびステップを、概して、全体的にまたは部分的に、それらの機能に関して説明する場合がある。そのような機能をハードウェアとして実装するか、ソフトウェアとして実装するかは、特定の適用例および全体的なシステムに課される設計制約に依存する。当業者は、説明した機能を特定の適用例ごとに様々な方法で実装し得るが、そのような実装の決定は、本発明の範囲からの逸脱を生じるものと解釈すべきではない。
【００３５】
開示する実施形態と関連して説明した方法、シーケンス、および/またはアルゴリズムは、ハードウェアで、プロセッサによって実行されるソフトウェアモジュールで、またはその2つの組合せで直接実施され得る。ソフトウェアモジュールは、RAMメモリ、フラッシュメモリ、ROMメモリ、EPROMメモリ、EEPROMメモリ、レジスタ、ハードディスク、リムーバブルディスク、CD-ROM、または本開示に関係する技術分野で知られている任意の他の形態のコンピュータ可読記憶媒体中に常駐し得る。例示的な記憶媒体は、プロセッサが記憶媒体から情報を読み取り、記憶媒体に情報を書き込むことができるように、プロセッサに結合される。代替として、記憶媒体はプロセッサと一体であり得る。
【００３６】
したがって、本発明は図示の例に限定されず、本明細書で説明した機能を実行するためのいかなる手段も、本発明の実施形態中に含まれる。
【００３７】
「レジスタ」という用語は、本開示において、関連ビットデータストリングを記憶することが可能であり、スタンドアロンまたは単一ポートもしくはマルチレジスタファイル中のアドレス指定可能レジスタ、コンテンツアドレス指定可能レジスタ、スタックレジスタおよびプッシュポップレジスタなど、説明のための例示のうち任意の1つまたは複数を限定ではなく包含する、任意の技術の、単一ビットまたはマルチビットの読取り書込み記憶セルの任意の配列を意味するように定義されることが理解されよう。様々な例示的実施形態の説明において、具体的なタイプのレジスタにおける例示的動作への言及は、別段に記載され、またはコンテキストから別段に明らかにされない限り、説明する動作または態様を、その具体的レジスタタイプにおいて実施される実施形態に限定するものではない。この意味の範囲内でレジスタを形成する記憶セルは、アレイ方式で配列され得るが、必ずしもそうである必要はない。
【００３８】
図2は、1つまたは複数の例示的実施形態による1つのスキャン可能レジスタ200の1つの例示的モデルを示す。例200は、左から右の順で、L0、L1、L2〜LNと標示される複数のラッチセルを含み、各ラッチセルは、左から右の順で、S0、S1、S2〜SNと標示される、対応するスイッチゲートとともに配列される。偶数番号ゲートすべて、すなわち、ゲートS0、S2〜SN(Nは偶数であると仮定する)は、スキャンクロック線202を介してスキャンクロックSKによって制御され、奇数番号スイッチゲートはすべて、クロックSKの反転であり得るが必ずしもそうである必要はない第2のスキャンクロック、すなわちSK_bによって、第2のスキャンクロック線204を介して制御される。
【００３９】
図2の例200、および後で説明するその動作詳細を参照すると、SKの立上りエッジが、SK_bの立下りエッジと実質的に一致すること、および同様に、SKの立下りエッジが、SK_bの立上りエッジと実質的に一致することが好ましい場合がある。本開示を考察すると、当業者によって理解されるように、L0〜LNなどのラッチを実装するために選ばれた特定の内部回路要素に応じて、これらのそれぞれの立上りエッジと立下りエッジとの間の差分により、様々な回路構成要素が、高電流を発生させ、または沈降させる結果となり得る。
【００４０】
図2への参照を続けると、スイッチゲートS0の入力は、スキャンテスト入力端末206に結合されて示されている。一態様によると、スキャンテスト入力端末206は、後でより詳細に説明するスキャンテスト動作中に、SCAN_INビット列を受け取る。「スキャン入力端末」という用語は、スキャンテスト環境のコンテキストにおいて図2の例を説明する目的での参照点にすぎず、SCAN_INビット列をラッチL0に運ぶ任意のスキャンシフトチェーンまたは他のパス上の、ラッチL0に先行する所与の点を単に意味し、その点の物理構造または配置に対する限定は含意しないことが理解されよう。SCAN_INビット列の特定のビット値、ならびにSCAN_INビット列を生成するための構造および方法に関して、これらは、必ずしも実施形態に特有でなく、たとえば、どのビット列でもよく、当該分野において知られている、ビット列生成をスキャンするためのどの手段によっても生成され得ることが理解されよう。
【００４１】
図2は、後で説明するスキャンテスト状態とは反対に、通常レジスタ動作状態にある例示的スキャン可能レジスタ200を示す。通常レジスタ動作状態において、ラッチL0〜LNは、たとえば、図2に示されず、知られている技術によるものでよい読取り線、ワード線およびビット線の制御下で、互いに依存しないデータを受け取り、記憶し、出力する。
【００４２】
図2への参照を続けると、通常レジスタ動作状態では、スイッチゲートS0〜SNはすべて開であり、または各ラッチL1〜LNの出力をその後に続くラッチの入力から十分に絶縁する等価状態にある。図2が示す開状態は、たとえば、スキャンクロックSKおよびSK_bをスイッチOFFすることによって達成され得る。
【００４３】
図3Aおよび図3Bを参照すると、これらはそれぞれ、時間的に連続する、例示的スキャン可能レジスタ200を図3Aに示す状態に切り替えるSKクロック立上りエッジ、それに続く、例示的スキャン可能レジスタ200を図3Bに示す状態に切り替えるクロックSK_b立上りエッジから生じる図2の例の状態を示す。説明のための例示的スキャンシフト動作は、そのスナップショットが図3Aおよび図3Bの状態で表され、これらの状態がこの説明のために「スキャンシフト第1の状態」または「第1の状態」および「スキャンシフト第2の状態」または「第2の状態」とも呼ばれるが、図4に示す例示的スキャンシフトタイミング図をさらに参照して説明される。スキャンシフト状態に関する「第1」および「第2」という用語の選択は恣意的であることが理解されよう。
【００４４】
図3Aに示すスキャンシフト第1の状態を参照すると、例示的スキャン可能レジスタ200において、図示する状態は、偶数番号ラッチスイッチの入力に先行するスイッチゲートすべてを閉または結合位置に切り替える、クロックSKの立上りエッジと、偶数番号ゲートスイッチの出力を接続するスイッチゲートすべてを開または解放位置に切り替える、クロックSK_bの立下りエッジとの結果として生じる。偶数番号ラッチ入力の各々は、その結果、それに先行する奇数番号ラッチの出力に結合され、これらの偶数番号ラッチの各々は、その出力を開にさせるので、これらの出力の各々(第1のラッチL0を除く)は、それに先行する奇数番号ラッチのその出力における値に切り替わる。第1のラッチの出力L0は、その入力上にあったSCAN_IN値に切り替わる。
【００４５】
ここで図3Bを参照すると、この図示する第2のシフト状態は、SK_bの立上りエッジと、SKの(好ましくは、実質的に同時だが、必ずしもそうではない)立下りエッジとの結果として生じる。より具体的には、SK_bの立上りエッジは、奇数番号ラッチスイッチの入力に先行するスイッチゲートすべてを閉または結合位置に切り替え、SKの立下りエッジは、奇数番号ゲートスイッチの出力におけるスイッチゲートすべてを開または解放位置に切り替える。奇数番号ラッチの各々の入力は、その結果、それに先行する偶数番号ラッチの出力に結合され、これらの奇数番号ラッチの各々は、その出力を開かせるので、これらの出力の各々は、それに先行する偶数番号ラッチのその出力における値に切り替わる。
【００４６】
図4は、図2の例示的スキャン可能レジスタ200に関係して、一クロッキング態様による1つの例示的クロッキング方式、図3Aに示す第1のスキャンシフト状態と図3Bに示す第2のスキャンシフト状態との間の対応する切替え、ならびに対応する説明のための例示的スキャンシフトシーケンスの1つの例示的タイミング図を示す。図4を参照する説明および図3Aおよび図3Bに示す例示的動作との関係において、図4に示す波形は、高いおよび低い垂直位置からなる2状態であり、これらは任意の極性での任意の電圧への物理状態のマッピングを有することが理解されよう。さらに、説明のための例を説明する目的で、SKおよびSK_bクロックの高い値は、ONと呼ばれ、スイッチングゲートS0〜SNの結合状態はONと呼ばれ、図2、図3Aおよび図3Bに示すスイッチングゲートS0〜SNの解放状態はOFFと呼ばれ、SCAN_IN、B1〜BNの低い値は0と呼ばれ、これは論理0を意味し、SCAN_IN、B1〜BNの高い値は論理1と呼ばれ、これは論理1を意味し、WLおよびRL線の低いおよび高い値は、それぞれ、OFFおよびONと呼ばれる。
【００４７】
ここで図4のタイミング図を、図2および図3Aとともに参照すると、図示する開始状態は、SKの立上りエッジ402の受取りより前の状態であり、B0、B1、B2〜BNすべてが論理0である状態である。SKの立上りエッジ402において、偶数ラッチに供給するスイッチゲートの各々が、ON状態に切り替わり、すなわち、図3Aを参照すると、スイッチゲートS0、S2〜SNがスイッチONし、SK_bの立下りエッジ403が、奇数ラッチに供給するスイッチゲートの各々をスイッチOFFする(または、SKの立上りエッジ402より前のその状態に応じて、OFFを維持する)。SCAN_IN値はしたがって、ラッチL0の出力に結合され、ラッチL1の出力はしたがって、ラッチL2の出力に結合され、以下同様に続き、ラッチLN-1の出力はラッチLNの出力に結合される。ただし、クロックSKの立上りエッジ402においてSCAN_INが0なので、B0は0のままであり、連続偶数番号ラッチに現在供給している奇数番号ラッチの出力すべてがその初期0状態にあるので、他の偶数番号ラッチはどれも変わらない。
【００４８】
ここで図4を、図3Bとともに参照すると、次に、クロックSK_bの立上りエッジ405において、奇数ラッチに供給するスイッチゲートの各々、すなわち、スイッチゲートS1がスイッチONされ、クロックSKの立下りエッジ404が、偶数ラッチに供給するスイッチゲートの各々、すなわち、スイッチゲートS0、S2〜SNをスイッチOFFする。ラッチL0の出力はしたがって、ラッチL1の出力に結合され、以下同様である。ただし、ラッチL0の出力は0なので、ラッチL1の出力はその0の初期状態のままであり、同様に、偶数番号ラッチの出力すべてが依然として0なので、他の奇数番号ラッチの出力が変わる。
【００４９】
ただし、立上りエッジ418において、Scan_INは、0から1に切り替わる。クロックSKの次の立上りエッジ406およびクロックSK_bの立下りエッジ407において、例示的スキャン可能レジスタ200は、図3Aに示す第1のスキャンシフト状態に切り替え復帰される。1であるSCAN_IN値は今では、ラッチL0の出力に結合され、時間419で、B0を0から1に変える。クロックSKの立上りエッジ406と、遷移419との間の遅れは、図4に具体的には示さないが、当業者には容易に理解されるように、ラッチおよびスイッチゲートの特定の実装形態に依存する。図4に示すように、クロックSKの立上りエッジ406およびクロックSK_bの立下りエッジ407は、これらの瞬間に、偶数番号ラッチに供給する各奇数番号ラッチの出力が依然として0なので、他の偶数番号ラッチのうちどのラッチの出力状態も変えない。
【００５０】
図4への参照を、図3Bとともに続けると、クロックSK_bの立上りエッジ409およびクロックSKの立下りエッジ408において、例示的スキャン可能レジスタ200は、図3Bに示す第2のスキャンシフト状態に再度切り替わる。言い換えると、奇数番号ラッチに供給するスイッチゲートの各々は、クロックSKの立下りエッジ408が、偶数ラッチに供給するスイッチゲートの各々(すなわち、スイッチゲートS0、S2〜SN)をスイッチOFFするのと実質的に同時にスイッチONする。1であるSCAN_IN値がラッチL0から解放されるが、ラッチL0のラッチング機能により、その出力は1のままであり、その出力は今では、スイッチゲートS1を通して、およびレベル感応ラッチL1を通してラッチL1の出力に結合される。その結果、時間420で、B1は、0から1に変わる。前に、406を参照してB0における遅れに関して説明したように、エッジ409と遷移420との間の遅れは、図4に具体的には示していない。同様に、SK_bの立上りエッジ409は、ラッチL1の出力におけるB1において1に変わる結果となるが、スイッチゲートS2がOFFなので、B2の0状態を変えることはない。
【００５１】
依然として図4を参照すると、時間426で、SCAN_INは、0に戻るように示されている。この例では、図2の例示的スキャン可能レジスタ200に関して、SCAN_INが以前1に切り替わった立上りエッジ418に関係する時間426は、SKクロックの次の立上りエッジ410より前の任意の時間であり得る。一方、SCAN_INが、例示的スキャン可能レジスタ200に、2つの連続する1を供給するために選ばれた場合、SCAN_INは、少なくとも立上りエッジ410までは1値のままとなる。
【００５２】
次に、SKクロックの立上りエッジ410、およびそれと実質的に同時であるSK_bの立下りエッジ411において、例示的スキャン可能レジスタ200は、図3Aに示す第1のスキャンシフト状態に切り替え復帰する。0であるSCAN_IN値は今では、スイッチゲートS0を通して、およびレベル感応ラッチL0を通して、そのラッチL0の出力に結合される。B0は、その結果、時間423で、1から0に変わる。B0の現在の0状態は、スイッチゲートS1がOFFなので、B1の1値を変えるものではない。
【００５３】
次に、SK_bクロックの立上りエッジ413、および実質的に同時であるSKの立下りエッジ412において、例示的スキャン可能レジスタ200は、図3Bに示す第2のスキャンシフト状態に再度切り替わる。B0は、スイッチゲートS0およびラッチL0を通してSCAN_INに結合されてはいるが、SCAN_IN値が依然として0なので、0のままである。ただし、0のB0値は、今ではONスイッチゲートS1を通して、およびレベル感応ラッチL1を通して、L1出力に結合される。B1はしたがって、時間424で、1から0に変わる。0という新たなB1状態は、スイッチゲートS2がOFFなので、B2の1値を変えるものではない。
【００５４】
図4を続けると、SKクロックの立上りエッジ414、および実質的に同時であるSK_bの立下りエッジ415において、例示的スキャン可能レジスタ200は、図3Aに示す第1のスキャンシフト状態に再度切り替わる。B0は、スイッチゲートS0およびラッチL0を通してSCAN_INに結合されてはいるが、SCAN_IN値が依然として0なので、0のままである。B1は、L1のラッチ機能により、スイッチゲートS1が開であるとき、ゼロのままである。0というB1値は今では、ONスイッチゲートS2を通して、およびレベル感応ラッチL2を通して、L2出力に結合される。B2は、立上りエッジ421をもち、時間425で、1から0に変わる。
【００５５】
図2に示すようにN個のラッチL0を仮定すると、上で説明した、偶数および奇数スイッチゲートの交互切替えのN回の繰返し、すなわち、実質的同時エッジのスキャンクロックSKおよび相補クロックSK_bのNサイクルは、ラッチL0〜LNのラッチの全N個を介した、1である例示的SCAN_INビット値のスキャンシフトを実施することが容易に理解されよう。スキャンクロックがない場合、ラッチは、標準レジスタ記憶セルとして動作することも容易に理解されよう。さらに、本開示を考察すると、スキャンシフティングは、図1の例示的な従来技術スキャン可能記憶セル100のシャドーフリップフロップ104などのスレーブフリップフロップなしで提供されることが当業者には諒解されよう。そうではなく、スキャンシフティングは、実施形態によるスキャンクロック方式と組み合わせて、スイッチゲートのみを記憶セルの各々に独自に追加することによって提供される。
【００５６】
上記説明において、スキャンクロックSKおよびSK_bの相対タイミングおよび極性は、例示的スイッチゲートS0〜SNについて説明する特定の例示的スイッチ特性に対応し、すなわち、各々が、そのスキャンクロック(SKまたはSK_b)がONであることに応答して閉じ、そのスキャンクロックがOFFであることに応答して開くことが理解されよう。ただし、本開示を読むと当業者には理解されるように、これは、奇数スイッチゲートとの関係で、偶数スイッチゲートの、説明する開閉を取得するのに利用され得る、スキャンクロックと、S0〜SNなどの切替えゲートの切替え特性の1つの例示的組合せ、したがって、本実施形態のスキャンシフト特徴にすぎない。1つの説明のための例示的代替実施形態は、特定のスイッチゲートが、奇数番号スイッチゲート、すなわちS1とは反対の制御極性をもった状態で偶数番号スイッチゲートS0、S2〜SNを実装し、共通スキャンクロックをスイッチゲートすべてに接続する。
【００５７】
スイッチゲートS0〜SNは、たとえば、単一トランジスタパスゲートなど、様々な手段によって形成され得ることが理解されよう。いくつかのアプリケーションでは、当業者には理解されるように、通常はトランジスタパスゲートに関連付けられた、トランジスタ閾値に関連する電圧降下の一般的問題により、そのような実装が満足できないものになり得る。別の態様によると、スイッチゲートS0〜SNは、相補型金属酸化膜トランジスタ(CMOS)送信ゲート、もしくは等価物でよく、または単一トランジスタパスゲートとCMOS送信ゲートの混合物から形成され得る。スイッチゲートS0〜SNを形成するための他の回路および技法が、本開示を考察すると当業者には明らかであり得るので、これらは説明のための例にすぎない。
【００５８】
図5は、例示的な実施形態のうち1つまたは複数の実施形態の様々な態様による別のスキャン可能レジスタ500の、説明のための例の3セルセグメントを示す。例示的なスキャン可能レジスタ500は、3つの同一構造のスキャン可能記憶セル、すなわち502、504および506によって構築され、一例として最左スキャン可能記憶セルを参照すると、各々が、入力スイッチゲート508が伝送経路509を介してレベル感応ラッチ510に結合された、そのスキャン可能記憶セル502のローカル複製を有する。レベル感応ラッチ510は、フィードバックインバータ514と並列に配列されたフォワードインバータ512から構築される。インバータ512、514の最右接合、すなわち、フォワードインバータ512の出力とフィードバックインバータ514の入力の結合接合は、図6を参照してより詳細に説明するように、スキャンシフトモードで動作するとき、スキャン可能記憶セル502、504、506のそれぞれの状態によって表される、B0、B1、B2のスキャン状態のB0_b値を保持する。図5の例500の例示的態様および動作は、この例では出力インバータ516、534、536が使われるので、その補、すなわちB0_b、B1_b、およびB2_bの状態による、B0、B1、B2のスキャン状態を指す。
【００５９】
図5への参照を続けると、例500においてNFETによって実装されるように示される、フィードバックインバータイネーブルスイッチ518は、例500がスキャンシフトモードで動作するとき、フィードバックインバータ514を選択的にイネーブルおよびディセーブルにする。フィードバックインバータイネーブルスイッチ518は、図5の例500において、ラッチ510の外側にあるものとして示されるが、これは1つの例示的記述にすぎない。このフィードバックインバータは、代替として、ラッチ510の一部と見なされ得る。逆ドライバまたはインバータ516は、B0の反転を、次の記憶セル504のスイッチゲート532の入力に伝播する。本開示に基づいて、ラッチ510のインバータ516およびインバータ512、514のそれぞれの構築は、そのそれぞれのアプリケーション固有駆動要件に応じて、異なっても異ならなくてもよいことが当業者には理解されよう。
【００６０】
依然として図5を参照すると、WORD線に接続されたそれぞれのゲートを有するワードトランジスタ(別個に番号付けせず)は、スキャン可能記憶セル502、504、506の各々の、通常記憶ラッチ動作用である。
【００６１】
図5への参照を続けると、クロックSLK1およびSLK2によって影響されるスキャンシフトモードにおいて、インバータ526は、SCAN_INの反転を、第1の記憶セルのスイッチゲート508の入力に供給する。インバータ526は、記憶セル502に先行する別のスキャン可能記憶セル(図5には示さず)の構成要素であり得る。スキャン可能記憶セル502に先行するスキャン可能記憶セルがない場合、インバータ526は、本開示を鑑みて当業者には明らかであろう様々な手段のいずれによって実装してもよい。スイッチゲート528が、スキャン可能記憶セル506の出力インバータ(別個に番号付けせず)によって駆動されるものとして示され、このことは、スキャン可能記憶セル506の後に続く別のスキャン可能記憶セル(図5には示さず)のスイッチゲートを示すことを意図している。スキャン可能記憶セル506が、図5の例がスキャンシフトモードで動作するときに形成されるスキャンチェーンの最終記憶セルである場合、スイッチゲート528は省いてよい。
【００６２】
図5の例示的スキャン可能レジスタ500は、偶数番号スキャン可能記憶セルのスイッチゲート、すなわちスキャン可能記憶セル502のスイッチゲート508およびスキャン可能記憶セル506のスイッチゲート530を制御する1つの相補クロックペア、すなわちSLK1およびSLK1_bと、奇数番号スキャン可能記憶セルのスイッチゲート、すなわちスキャン可能記憶セル504のスイッチゲート532およびスキャン可能記憶セル506の後に続くスキャン可能記憶セル(図5には示さず)のスイッチゲート528を制御する別の相補クロックペア、すなわちSLK2およびSLK2_bとを有する1つの例示的スキャンクロック配列によって駆動されるように示されている。
【００６３】
図5の例示的スキャン可能レジスタ500の通常動作モードでは、スキャンクロックSLK1、SLK1_b、SLK2、SLK2_bすべてがOFFであることが理解されよう。これにより、スイッチゲート508、528、530、532すべてをスイッチOFFし、B0〜B2ノードの各々を互いから有効に絶縁する。
【００６４】
さらに、スキャンクロックSLK1、SLK1_bおよびSLK2、SLK2_bの相補ペア配列、ならびにクロック線によるそれらの分配は、スイッチゲート508、528、530および532の、図示するCMOS送信ゲート実装形態に対応し、単純パストランジスタ構築(図5には示さず)など、これらのスイッチゲートの代替実装形態は、相補クロックを必要としなくてよいことが理解されよう。さらに、図5の例示的スキャン可能レジスタにとって、クロックSLK1およびSLK2_bの立上りエッジは互いと、ならびにクロックSKL1_bおよびSLK2の立下りエッジと相互整列され、またはほぼ相互整列され、同様に、クロックSLK2およびSLK1_bの立上りエッジは互いと、およびクロックSKL1およびSLK2_bの立下りエッジと相互整列され、またはほぼ相互整列されることが好ましい場合があることが理解されよう。「ほぼ」の範囲は、たとえば、当業者が有する、集積回路における電流スパイクおよび時間遅延の従来の知識を、本開示の実施形態の特定の実装形態に適用することによって、当業者によって容易に判断される。同様に、本開示を鑑みて当業者には明らかなように、そのようなクロックエッジの厳密な整列からのいくつかの特定の変形を利用してもよい。
【００６５】
図5の例示的スキャン可能レジスタにおいて実施される1つの例示的スキャンシフトプロセスを、図5と、図6に示す例示的タイミング図とを参照してここで説明する。簡潔のため、ならびに実施形態の独特の態様および動作によりよく焦点を当てるために、SLK1およびSLK2のエッジは標示するが、そのそれぞれの相補スキャンクロックSLK1_bおよびSLK2_bの同時またはほぼ同時エッジは個々には標示しない。
【００６６】
図6を参照すると、スキャンクロックSLK1の立上りエッジ602より前に、ラッチ512、534、536はすべて、B0_b、B1_b、B2_bすべてが0であるような状態にある。SLK1の立上りエッジ602および実質的に同時のSLK2_bの立下りエッジにおいて、スイッチゲート508および530がスイッチONされ、実質的に同時のSLK2の立下りエッジ603およびその相補SLK2_bの立上りエッジが、スイッチゲート532、528をスイッチOFFする。これにより、SCAN_INが、第1のスキャン可能セル502内のラッチ510のB0ノードに結合されてはいるが0であり、ノードB1_bが、スキャン可能セル504の出力インバータ534を通し、スイッチゲート530を通してB2_bノードに結合されてはいるが0であるので、B0_b、B1_b、B2_bにおいて、0であるその初期状態からの何の変化も起きない。次に、SLK2の立上りエッジ605および実質的に同時であるSLK1の立下りエッジ604は、それらの補である立下りおよび立上りエッジとともに、それぞれ、スイッチゲート508、530をスイッチOFFし、スイッチゲート532、528をスイッチONする。これにより、ノードB0_bをSCAN_INから解放し、そうすることによって、B0_bを0に保持するようにラッチ510をラッチし、スキャン可能セル504の出力インバータ534からノードB1_bを解放し、B2_bを0にラッチする。B1_bは、今ではスキャン可能セル502の出力に結合され、B0_bの0値のままである。
【００６７】
図6への参照を続けると、次に、上で説明した切替えの後の620で、スキャンクロックのうち任意のクロックの次のエッジの前に、SCAN_INは1に変わる。次に、後続SLK1の立上りエッジ606、および実質的に同時である、その補であるSLK1_bの立下りエッジが、上述したように、502で同じクロックイベントによって引き起こされた同じ切替え動作をスイッチゲート508、530に対して実施する。SCAN_IN信号は再度、ラッチ510のB0_bノードに結合されるが、1であるので、時間621で、B0_bを1に変えさせる。時間621は、スキャンセル502、504、506を実装する技術に応じた分だけ遅れて、立上りエッジ606の後に続く。B2_0は、エッジ602を参照して説明したのと同じ理由により不変なままである。B0_bを1に変える606での切替え動作と実質的に同時に、SLK2の立下りエッジ607およびSLK2_bの対応する立上りエッジは、スイッチゲート532、528をスイッチOFFする。立下りエッジ607が、ノードB1_bに伝播する、621でのB0変化より前にスイッチゲート532の切替えが実施されるようなものであると仮定すると、B1_bは、0という以前のB0_b値でラッチする。ノードB2_bは、出力インバータ534およびスイッチゲート530を通してB1_bノードによって駆動され、0値のままである。
【００６８】
次に、クロックSLK1の立下りエッジ608、および実質的に同時である、その相補クロックSLK1_bの立上りエッジが、上述したように、同じ立下りエッジクロックイベント604によって引き起こされた同じ切替え動作をスイッチゲート508、530に対して実施する。SCAN_INは、依然として1値であり、そうであることによって、ラッチ510のB0_bノードから解放され、ラッチ510は、B0_bを1値にラッチする。B2_bは、0であるB1_bの以前の値でラッチする。SLK1立下りエッジ608でのこれらの切替え動作と実質的に同時に、SLK2の立上りエッジ609およびクロックSLK2_bの対応する立下りエッジは、スイッチゲート532、528をスイッチONする。1というB0_b値はしたがって、スイッチ532を通してB1_bノードに伝播し、時間622で、B1_bを1値に切り替える。SLK1立下りエッジ608を参照して上述した、0値へのB2_bのラッチングに関して、このラッチングは、立下りエッジ608が、B1_bが時間622で1に変わるより前にスイッチゲート530のスイッチOFFが実施されるようなものであると仮定する。
【００６９】
依然として図6を参照すると、次に、クロックSLK2の立下りエッジ611および実質的に同時である、その相補クロックSLK2_bの立上りエッジで、上述したように、607で同じクロックエッジによって引き起こされた、同じ切替え動作をスイッチゲート532、528において実施し、実質的に同時である、クロックSLK1の立上りエッジ610および実質的に同時である、その相補クロックSLK1_bの立下りエッジが、上述したように、606で同じクロックエッジによって引き起こされた同じ切替え動作をスイッチゲート508、530において実施する。スイッチゲート508のスイッチONは、今は0値であるSCAN_INを、B0_bノードに結合して、623でB0_bを0値にさせ、スイッチゲート530のスイッチONは、B1_bノードをB2_bノードに結合して、624でB2_bを1値にさせる。
【００７０】
次に、クロックSLK1の立下りエッジ612および実質的に同時である、その相補クロックSLK1_bの立上りエッジにおいて、スイッチゲート508、530がスイッチOFFされ、実質的に同時である、クロックSLK2の立上りエッジ613および実質的に同時である、その相補クロックSLK2_bの立下りエッジにおいて、スイッチゲート532、528がスイッチONされる。スイッチゲート532のスイッチONは、ノードB0_bをノードB1_bに結合して、時間625でB1_bを0値にさせる。スイッチゲート530のスイッチOFFは、B2_bノードに伝播する、時間625でのB1_bの0値への変化より前に実施されると仮定すると、B2_bを、1であるそれの前の値にラッチする。
【００７１】
依然として図6を参照すると、クロックSLK1の立下りエッジ612および実質的に同時である、その相補クロックSLK1_bの立上りエッジにおいて、スイッチゲート508、530がスイッチONされ、実質的に同時である、クロックSLK2の立下りエッジ615および実質的に同時である、その相補クロックSLK2_bの立上りエッジにおいて、スイッチゲート532、528がスイッチOFFされる。スイッチゲート508のスイッチONは、依然として0であるSCAN_IN値をノードB0_bに結合し、B0_bはしたがって、0にとどまる。スイッチゲート530のスイッチONは、今は0値であるB1_bノードをB2_bノードに結合し、時間627でB2_bを0値にさせる。また、図6において、613、614、617、626および628は、立上りエッジを指し、616および630は立下りエッジを指すことに留意されたい。
【００７２】
上で説明したスキャンクロックシーケンシングは、1というSCAN_INビットの、説明のための例示的スキャンシフトにおいて、3つの隣接するスキャン可能記憶セル502、504、506の連続を通って、左から右に実施される。別の言い方をすれば、説明するプロセスは、SCAN_INデータを、一連のラッチ512、534、536の中をウォークスルーさせ、SCAN_OUTデータとして出す。SCAN_OUTデータは、読み出され、たとえば、現在当業者にはよく知られている分析方法を使って、スキャンチェーン中の欠陥を分析するために、SCAN_INと比較され得る。
【００７３】
さらに、図に示すように、スキャン可能記憶セル502、504、506に結合されたポート(図5には示さず)の読取りトランジスタペア520、522、524を使って、記憶セル502、504、506の各セルに書き込まれたデータは、読取りポートをテストするために、上述したのと同様にして読み出すことができる。見るとわかるように、この技法は、マルチポートレジスタファイルの各ポートをテストするために別個の金属線が付加される従来技術技法と比較すると、複雑さを大幅に低下させる。さらに、本開示を鑑みて当業者には諒解されるように、実施形態により、他の特徴および利益の中でも、不備のあるメモリレジスタを有するダイを識別し、取り除く必要なく、メモリレジスタを素早くスキャン/テストすることができるようになる。当業者には容易に理解されるように、こうすることによって、時間および出費、ならびに本質的に、ポートおよびポート対話が網羅的にテストされなければならない場合に特に費用がかかり得るフルテスト時間を指揮しなければならないというペナルティを回避する。さらに、本開示を鑑みて当業者には諒解されるように、実施形態により、他の特徴および利益の中でも、たとえば、動的ノイズ結合、および切替えノイズなど、ポート関連問題から、メモリレジスタに関連付けられた問題を切り離し、または分離するための特徴および利益が与えられる。
【００７４】
前述の開示されたデバイスおよび方法は、通常、コンピュータ可読記憶媒体に保存されるGDSIIおよびGERBERコンピュータファイルとなるように、設計され構成される。次いでこれらのファイルは、これらのファイルに基づいてデバイスを製造する製造担当者に与えられる。得られる製品は半導体ウェハであり、このウェハは次いで、半導体ダイに切断され、半導体チップにパッケージングされる。そして、このチップが、上で説明されたデバイスで利用される。
【００７５】
様々な例示的実施形態による方法およびデバイスによって与えられる他の特徴、利益および利点の中でも、従来技術による、偽のスレーブラッチを追加する必要性をなくすことが際立っている。これにより、記憶セルをスキャン可能にする際のチップ面積コストをほぼ半分にすること、および不良スレーブラッチに起因する誤ったスキャンテスト読取り結果の大幅な削減を含む、多数の二次的利益および利点がもたらされる。本開示を読むと当業者にはさらに諒解されるように、説明した実施形態による方法およびデバイスは、偽のスレーブラッチがチェーンから取り除かれるので、従来技術技法と比較して、スキャンデータは、半分の数のラッチだけを通過させればよい。こうすることにより、他の利益および利点の中でも、少なくともスキャンチェーンを通してスキャンシーケンスをシフトするために必要とされる時間に関して、従来技術による方法、デバイスおよび技法でスキャン試験が実施され得る約2倍の速度でのスキャン試験が可能になる。
【００７６】
さらに、本開示を読むと当業者には諒解されるように、様々な例示的実施形態による実施により達成可能な設計が容易であることにより、レジスタファイルは、スキャンデータを、レジスタファイル中のすべてのラッチの中をウォークスルーさせることによって効率的にテストされ得るので、複数の読取りおよび書込みポートのテストを容易にするための複雑な金属線を導入する必要がなくなる。
【００７７】
様々な特徴、利益および利点のうち、説明した実施形態によって提供されるもう1つのものは、スキャン試験を低周波数で実施することができ、したがって、たとえば、図5の例示的スキャン可能レジスタ500のスイッチゲート508、528、530、532などのスイッチまたは送信ゲートは、低周波数動作をサポートするのに十分な駆動強度をちょうど提供するように、サイズを小さくすることができ、したがって面積をさらに節約することである。この特徴および利益によってさらに提供されるように、スイッチゲートのサイズを小さくし、より低周波数のスキャン試験を実施することによって、テストされているデバイスを、高周波数試験および大きい駆動強度の特性である高電力信号によってもち込まれ得る故障から守ることができる。
【００７８】
以上、本開示において説明したように、レジスタファイルを参照した様々な実施形態による具体例の説明は、本開示を読み、説明した実施形態に従って実施すると、当業者には明らかであるとともに諒解される様々なアプリケーションの説明のための一例を説明する目的にすぎない。たとえば、開示した実施形態は、レジスタファイルおよびメモリアレイに限定されない、スキャン試験を必要とする任意のラッチベースの設計によって実施され、その範囲内で実施され得る。
【００７９】
上記の開示は本発明の例示的な実施形態を示すが、添付の特許請求の範囲によって規定される本発明の範囲から逸脱することなく、本明細書において様々な変更および修正を行えることに留意されたい。本明細書で説明した本発明の実施形態による方法クレームの機能、ステップおよび/またはアクションは、特定の順序で実行されなくてもよい。さらに、本発明の要素は、単数形で説明または特許請求されていることがあるが、単数形に限定することが明示的に述べられていない限り、複数形が企図される。
【符号の説明】
【００８０】
200  スキャン可能レジスタ
202  スキャンクロック線
204  第2のスキャンクロック線
206  スキャンテスト入力端末
500  スキャン可能レジスタ
502  スキャン可能記憶セル、記憶セル、スキャン可能セル、スキャンセル
504  スキャン可能記憶セル、記憶セル、スキャン可能セル、スキャンセル
506  スキャン可能記憶セル、スキャンセル
508  スイッチゲート
509  伝送経路
510  レベル感応ラッチ、ラッチ
512  フォワードインバータ、インバータ、ラッチ
514  フィードバックインバータ、インバータ
516  逆ドライバ、インバータ
518  スイッチ
520  読取りトランジスタペア
522  読取りトランジスタペア
524  読取りトランジスタペア
526  インバータ
528  スイッチゲート
530  スイッチゲート
532  スイッチゲート、スイッチ
534  ラッチ、出力インバータ
536  ラッチ
【図１】
2013538358.tif 000003
【図２】
2013538358.tif 000004
【図３Ａ】
2013538358.tif 000005
【図３Ｂ】
2013538358.tif 000006
【図４】
2013538358.tif 000007
【図５】
2013538358.tif 000008
【図６】
2013538358.tif 000009
【手続補正書】
【提出日】平成24年7月23日(2012.7.23)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数の記憶セルを備えるスキャン可能レジスタであって、各記憶セルが、
スキャン入力およびスキャン出力と、
前記スキャン入力に結合され、ラッチ出力を有するラッチと、
前記ラッチ出力に結合され、スキャンクロックを受け取り、前記スキャンクロックに応答して、前記ラッチ出力を前記スキャン出力に切替え可能に結合し、前記ラッチ出力を前記スキャン出力から解放するためのスイッチ制御入力を有するスイッチゲートとを有し、
前記記憶セルの各々の前記スキャン出力が、前記記憶セルのうち対応する次の1つのセルの前記スキャン入力に結合され、
前記記憶セルのうち少なくとも1つが、そのスイッチゲートが前記スキャンクロックを受け取っていない間に、そのラッチに書き込むように構成される、スキャン可能レジスタ。
【請求項２】
前記スイッチゲートがパストランジスタを含む、請求項1に記載のスキャン可能レジスタ。
【請求項３】
前記スイッチゲートが、並列NMOSおよびPMOSトランジスタを有する送信ゲートを含む、請求項1に記載のスキャン可能レジスタ。
【請求項４】
前記スイッチゲートが、並列NMOSおよびPMOSトランジスタを有する送信ゲートを含む、請求項1に記載のスキャン可能レジスタ。
【請求項５】
前記スキャン可能記憶セルのうち少なくとも1つが読取り/書込み線に選択的に結合される、請求項1に記載のスキャン可能レジスタ。
【請求項６】
各記憶セルの前記ラッチが、前記スイッチゲートが、前記記憶セルの前記スキャン入力における所与の値を前記ラッチ入力に結合するのに応答して、前記所与の値に切り替わる、請求項1に記載のスキャン可能レジスタ。
【請求項７】
各記憶セルの前記ラッチが、前記記憶セルの前記スキャン入力からの所与の値の解放に応答して、前記所与の値にラッチする、請求項6に記載のスキャン可能レジスタ。
【請求項８】
前記スキャンクロックが、前記記憶セルのうち第1のセルの前記スイッチゲートを切り替えて、そのラッチ出力を、それに対応する、前記記憶セルのうち次の1つのセルの前記スキャン入力に結合するのに応答して、第1のスキャン可能記憶セルの前記ラッチ入力からの所与の値の解放と実質的に同時に、前記第1の記憶セルの前記ラッチが、前記所与の値にラッチし、前記記憶セルのうち前記対応する次の1つのセルの前記ラッチが、前記所与の値にラッチスイッチするように構成されたスイッチゲートを含む、請求項7に記載のスキャン可能レジスタ。
【請求項９】
アップデートされた所与の値を、前記記憶セルのうち前記第1のセルの前記スキャン入力に結合するのに応答して、前記スキャンクロックが前記記憶セルのうち前記第1のセルの前記スイッチゲートをスイッチOFFして、そのラッチ出力を前記記憶セルのうち、前記対応する次の1つのセルの前記スキャン入力から解放するのと実質的に同時に、前記記憶セルのうち前記第1のセルの前記ラッチが、前記アップデートされた所与の値に切り替わり、前記記憶セルのうち、前記対応する次の1つのセルの前記ラッチが、前記記憶セルのうち前記第1のセルの前記スイッチゲートの前記スイッチOFFにおける、そのスキャン入力における前記所与の値でラッチする、請求項8に記載のスキャン可能レジスタ。
【請求項１０】
前記記憶セルのうち前記第1のセルがレジスタファイルの第1の記憶ラッチであり、前記記憶セルのうち、前記対応する次の1つのセルが前記レジスタファイルの第2の記憶ラッチである、請求項8に記載のスキャン可能レジスタ。
【請求項１１】
スキャンシフトサイクルを有するように前記スキャンクロックを生成するスキャンクロックジェネレータであって、前記スキャンシフトサイクルが、前記記憶セルのうち、それに対応する次の1つのセルの前記スイッチゲートをスイッチOFFするのと実質的に同時に、前記記憶セルのうち1つのセルの前記スイッチゲートをスイッチONする第1のクロックイベントと、それに続く、前記記憶セルのうち、前記対応する次の1つのセルの前記スイッチゲートをスイッチONするのと実質的に同時に、前記記憶セルのうち前記1つのセルの前記スイッチゲートをスイッチOFFする第2のクロックイベントとを有する、スキャンクロックジェネレータをさらに備える、請求項10に記載のスキャン可能レジスタ。
【請求項１２】
所与の値が、前記第1のスキャンシフトサイクルを通して前記記憶セルのうち前記1つのセルの前記スキャン入力上にあり、アップデートされた所与の値は、前記第2のスキャンシフトサイクルを通して前記スキャン入力上にある、一連の第1および第2の連続するスキャンシフトサイクルに応答して、前記第1のスキャンシフトサイクルの前記第1のクロックイベント時に、前記記憶セルのうち前記1つのセルの前記ラッチが、前記所与の値に切り替わり、前記第1のスキャンシフトサイクルの前記第2のクロックイベント時に、前記1つの記憶セルの前記ラッチが、前記所与の値でラッチし、前記記憶セルのうち、前記対応する次の1つのセルの前記ラッチが前記所与の値に切り替わり、前記第2のシフトサイクルの前記第1のクロックイベント時に、前記1つの記憶セルの前記ラッチが、前記アップデートされた所与の値に切り替わり、前記記憶セルのうち、前記対応する次の1つのセルの前記ラッチが、前記所与の値にラッチし、前記第2のスキャンシフトサイクルの前記第2のクロックイベント時に、前記記憶セルのうち前記1つのセルの前記ラッチが、前記アップデートされた所与の値にラッチし、前記記憶セルのうち、前記対応する次の1つのセルの前記ラッチが、前記アップデートされた所与の値に切り替わる、請求項11に記載のスキャン可能レジスタ。
【請求項１３】
前記スキャンクロックが、前記1つの記憶セルの前記スイッチゲートの前記制御入力に接続された第1のスキャンクロックと、前記記憶セルのうち、前記対応する次の1つのセルの前記スイッチゲートの前記制御入力に接続された第2のスキャンクロックとを含み、前記第1のスキャンクロックおよび前記第2のスキャンクロックの各々が、立上りおよび立下りエッジをもち、前記第1のクロックイベントが、前記第1のスキャンクロックの前記立上りエッジおよび前記立下りエッジの一方であり、前記第2のスキャンイベントが、前記第2のスキャンクロックの前記立上りおよび立下りエッジの一方である、請求項11に記載のスキャン可能レジスタ。
【請求項１４】
前記スキャンクロックが、前記1つの記憶セルの前記スイッチゲートの前記制御入力に接続された第1のスキャンクロックと、前記記憶セルのうち、前記対応する次の1つのセルの前記スイッチゲートの前記制御入力に接続された第2のスキャンクロックとを含み、前記第1のスキャンクロックおよび前記第2のスキャンクロックの各々が、立上りおよび立下りエッジをもち、前記第1のクロックイベントが、前記第1のスキャンクロックの前記立上りエッジおよび前記立下りエッジの一方であり、前記第2のスキャンイベントが、前記第2のスキャンクロックの前記立上りおよび立下りエッジの一方であり、前記第1のクロックイベントが、前記第1のクロックの前記立上りおよび立下りエッジの一方ならびに前記第2のクロックの前記立上りおよび立下りエッジの一方であり、前記第2のクロックイベントが、前記第1のクロックの立上りおよび立下りエッジの他方ならびに前記第2のクロックの立上りおよび立下りエッジの他方である、請求項12に記載のスキャン可能レジスタ。
【請求項１５】
前記第1のスキャンクロックの前記立上りおよび立下りエッジが、前記第2のスキャンクロックの前記立上りおよび立下りエッジと実質的に同時であり、第1のスイッチゲート、および前記第2のスイッチゲートの前記制御入力が、それぞれ、前記第1のスキャンクロックおよび前記第2のスキャンクロックを受け取るためであり、前記第2のスキャンクロック立下りエッジ遷移が、前記第1のスキャンクロック立上りエッジ遷移と実質的に時間整合され、前記第1のスキャンクロック立下りエッジ遷移が、前記第2のスキャンクロック立下りエッジ遷移と実質的に時間整合される、請求項14に記載のスキャン可能レジスタ。
【請求項１６】
入力および出力を有する第1のラッチと、入力および出力を有する第2のラッチとのスキャンテストのための方法であって、
所与のスキャンデータを前記第1のラッチの前記入力に結合して、前記第1のラッチを、前記所与のスキャンデータに対応する状態に切り替えるステップと、
前記所与のスキャンデータを前記第1のラッチの前記入力から解放して、前記第1のラッチを前記状態にラッチするステップと、
前記第1のラッチの前記出力を、前記状態でラッチされている間に、前記第2のラッチの前記入力に結合して、前記第2のラッチを前記状態に切り替えるステップと、
前記第1のラッチの前記出力を前記第2のラッチの前記入力から解放して、前記第2のラッチを前記状態にラッチするステップと、
前記第1のラッチの前記出力を前記第2のラッチの前記入力から解放し、前記第2のラッチの前記入力が前記第1のラッチの前記出力から解放される間に、前記第2のラッチに対して書込み動作を実施するステップとを含む方法。
【請求項１７】
前記所与のスキャンデータを前記第1のラッチの前記入力から解放して、前記第1のラッチを前記状態にラッチする前記ステップが、前記第1のラッチの前記出力を、前記状態でラッチされている間に、前記第2のラッチの前記入力に結合して、前記第2のラッチを前記状態に切り替える前記ステップと実質的に同時に実施される、請求項16に記載の、第1のラッチおよび第2のラッチのスキャンテストのための方法。
【請求項１８】
所与のスキャンデータを前記第1のラッチの前記入力に結合して、前記第1のラッチを前記状態に切り替える前記ステップが、前記第1のラッチの前記入力と、前記所与のスキャンデータの所与のソースとの間のスイッチゲートをスイッチONするステップを含む、請求項16に記載の方法。
【請求項１９】
前記所与のスキャンデータを前記第1のラッチの前記入力から解放する前記ステップが、前記所与のスキャンデータの所与のソースと前記入力との間の第1のスイッチゲートをスイッチOFFすることによって実施され、前記第1のラッチの前記出力を、前記状態でラッチされている間に、前記第2のラッチの前記入力に結合する前記ステップが、前記第1のラッチの前記出力と前記第2のラッチの前記入力との間のスイッチゲートをスイッチONすることによって実施され、前記スイッチOFFが、前記スイッチONと実質的に同時に実施される、請求項17に記載の方法。
【請求項２０】
前記第1のラッチの前記出力を、前記状態にラッチされている間に、前記第2のラッチの前記入力に結合する前記ステップが、前記第1のラッチの前記出力と前記第2のラッチの前記入力との間のスイッチゲートをスイッチONすることによって実施される、請求項18に記載の方法。
【請求項２１】
前記第2のラッチの前記出力を、前記状態に切り替えられている間に解放して、前記第2のラッチを前記状態にラッチする前記ステップが、前記第1のラッチの前記出力と前記第2のラッチの前記入力との間の前記スイッチゲートをスイッチOFFすることによって実施される、請求項20に記載の方法。
【請求項２２】
スキャンテストのための方法であって、
a)約N/2個の奇数記憶セルおよび約N/2個の偶数スキャン可能記憶セルを設けるステップであって、前記記憶セルの各々が、ラッチ入力およびラッチ出力を有するラッチを有し、各奇数記憶セルの前記ラッチ出力が、対応する次の偶数記憶セルの前記ラッチ入力に選択的に結合され、各偶数記憶セルの前記ラッチ出力が、対応する次の奇数記憶セルの前記ラッチ入力に選択的に結合されるステップと、
b)反復サイクルを有するスキャンクロックを生成するステップであって、各サイクルが、第1のクロックイベント、およびそれに続く第2のクロックイベントを有するステップと、
c)スキャンクロックサイクルの前記第1のクロックイベントに応答して、前記奇数記憶セルの各々の前記ラッチ出力を、それに対応する次の偶数記憶セルの前記ラッチ入力に結合して、それに対応する次の偶数記憶セルの前記ラッチの状態を、前記奇数記憶セルの前記ラッチの状態に切り替え、前記結合と実質的に同時に、前記偶数記憶セルの各々の前記ラッチ出力を、それに対応する次の奇数記憶セルの前記ラッチ入力から解放して、前記奇数記憶セルの前記ラッチの状態を、前記解放より前の前記ラッチの状態にラッチするステップと、
d)前記スキャンクロックサイクルの前記第2のクロックイベントに応答して、前記偶数記憶セルの各々の前記ラッチ出力を、それに対応する次の奇数記憶セルの前記ラッチ入力から解放して、それに対応する次の奇数記憶セルの前記ラッチの状態を、前記解放より前の前記ラッチの状態にラッチし、前記解放と実質的に同時に、前記奇数記憶セルの各々の前記ラッチ出力を、それに対応する次の偶数記憶セルの前記ラッチの前記ラッチ入力に結合して、前記ラッチの状態を、前記奇数記憶セルの前記ラッチの状態に切り替えるステップと、
e)前記スキャンクロックがないことに応答して、前記約N/2個の奇数記憶セルおよび前記約N/2個の偶数スキャン可能記憶セルを通常ラッチ動作に変えるステップと、
f)前記通常ラッチ動作の間、前記奇数記憶セルまたは偶数記憶セルのうち少なくとも1つのセルの前記ラッチへのラッチ書込み動作を実施するステップとを含む方法。
【請求項２３】
約M個の前記スキャンクロックサイクルを生成して、c)およびd)を約M回繰り返すことによって、ラッチ状態を、前記記憶セルのうち第1のセルから、前記記憶セルの約M個のペアを通して連続してシフトするステップであって、各ペアが、奇数記憶セルとそれに対応する次の偶数記憶セル、または偶数記憶セルとそれに対応する次の奇数記憶セルのうち任意のものであるステップをさらに含む、請求項22に記載のスキャンテストのための方法。
【請求項２４】
前記約M個のクロックサイクルのうち少なくとも1つの後、前記N個の記憶セルのうち少なくとも1つを読み取るステップをさらに含む、請求項23に記載の方法。
【請求項２５】
前記読み取るステップが、前記N個の可読1ビット記憶セルのうち少なくとも1つを、マルチポートレジスタファイルのポートに結合するステップを含む、請求項24に記載の方法。
【請求項２６】
前記N個の記憶セルが、ポートを介してアクセス可能なレジスタファイルのNビットレジスタのN個の可読1ビット記憶セルであり、前記読み取るステップが、前記可読1ビット記憶セルのうち全N個を前記ポートに結合するステップを含む、請求項24に記載の方法。
【請求項２７】
ラッチ入力およびラッチ出力を有する第1のラッチと、ラッチ入力およびラッチ出力を有する第2のラッチとを有するスキャン可能レジスタであって、
所与のスキャンデータを前記第1のラッチの前記入力に結合して、前記第1のラッチを、前記所与のスキャンデータに対応する状態に切り替え、前記所与のスキャンデータを前記第1のラッチの前記入力から解放して、前記第1のラッチを前記状態にラッチするための手段と、
前記第1のラッチの前記出力を、前記状態でラッチされている間に、前記第2のラッチの前記入力に結合して、前記第2のラッチを前記状態に切り替え、前記第1のラッチの前記出力を、前記第2のラッチが前記状態にラッチされている間に、前記第2のラッチから解放して、前記第2のラッチを前記状態にラッチするための手段と、
前記第2のラッチの前記ラッチ入力が前記第1のラッチの前記ラッチ出力から解放される間に、前記第2のラッチを所与の記憶状態に書き込むための手段とを備えるスキャン可能レジスタ。
【請求項２８】
前記所与のスキャンデータを、前記第1のラッチの前記入力から解放して、前記第1のラッチを前記状態にラッチするための前記手段によって実施される前記解放が、前記第1のラッチの前記出力を前記第2のラッチの前記入力に結合して、前記第2のラッチを前記第1のラッチの前記状態に切り替えるための前記結合と実質的に同時に実施される、請求項27に記載のスキャン可能レジスタ。
【請求項２９】
前記第1のラッチが前記状態でラッチされている間に、前記第1のラッチの前記状態を読み取るための手段をさらに備える、請求項27に記載のスキャン可能レジスタ。
【請求項３０】
前記第2のラッチが前記状態でラッチされている間に、前記第2のラッチの前記状態を読み取るための手段をさらに備える、請求項27に記載のスキャン可能レジスタ。
【請求項３１】
読み取るための前記手段が、前記第1および第2のラッチの少なくとも1つをマルチポートレジスタファイルのポートに結合する、請求項30に記載のスキャン可能レジスタ。
【請求項３２】
N個の1ビット記憶セルであって、前記記憶セルの各々が、ラッチ入力およびラッチ出力を有する1ビットラッチを有し、約N/2個の偶数記憶セルおよび約N/2個の奇数記憶セルとして配列され、各偶数記憶セルが、前記奇数記憶セルのうち、対応する次の奇数記憶セルを有し、各奇数記憶セルが、前記偶数記憶セルのうち、対応する1つの次の偶数記憶セルを有する、N個の1ビット記憶セルと、
反復サイクルを有するスキャンクロックを生成するための手段であって、各サイクルが、第1のクロックイベント、およびそれに続く第2のクロックイベントを有する手段と、
前記スキャンクロックを受け取り、スキャンクロックサイクルの前記第1のクロックイベントに応答して、前記奇数記憶セルの各々の前記ラッチ出力を、それに対応する次の偶数記憶セルの前記ラッチ入力に結合して、それに対応する先行する次の偶数記憶セルの前記ラッチの状態を、前記奇数記憶セルの前記ラッチの状態に切り替え、前記結合と実質的に同時に、前記偶数記憶セルの各々の前記ラッチ出力を、それに対応する次の奇数記憶セルの前記ラッチ入力から解放して、前記奇数記憶セルの前記ラッチの状態を、前記解放より前の前記ラッチの状態にラッチするための第1のシフト手段と、
前記スキャンクロックを受け取り、前記スキャンクロックサイクルの前記第2のクロックイベントに応答して、前記偶数記憶セルの各々の前記ラッチ出力を、それに対応する次の奇数記憶セルの前記ラッチ入力から解放して、それに対応する次の奇数記憶セルの各偶数記憶セルの前記ラッチの状態を、前記偶数記憶セルの前記ラッチの状態にラッチし、前記解放と実質的に同時に、前記奇数記憶セルの各々の前記ラッチ出力を、それに対応する次の偶数記憶セルの前記ラッチ入力に結合して、前記偶数記憶セルの前記ラッチの状態を、前記奇数記憶セルの前記ラッチの状態に切り替えるための第2のシフト手段と、
前記少なくとも1つの偶数記憶セルが、前記対応する次の偶数記憶セルである、前記奇数記憶セルの前記ラッチ出力から前記ラッチの前記入力が解放される間に、少なくとも1つの偶数記憶セルの前記ラッチを所与の記憶状態に書き込むためのラッチ書込み手段とを備えるスキャン可能Nビットレジスタ。
【請求項３３】
前記スキャンクロックの、約M個の前記サイクルの受取りに応答して、前記第1のシフト手段および第2のシフト手段によって実施される前記結合および解放が、ラッチ状態を、前記記憶セルのうち第1のセルから、前記記憶セルの約M個のペアを通して連続してシフトし、各ペアが、奇数記憶セルとそれに対応する次の偶数記憶セルまたは偶数記憶セルとそれに対応する次の奇数記憶セルの任意のものである、請求項32に記載のスキャン可能Nビットレジスタ。
【請求項３４】
前記約M個のクロックサイクルのうち少なくとも1つの後、前記N個の記憶セルのうち少なくとも1つを読み取るための読取り手段をさらに備える、請求項33に記載のスキャン可能Nビットレジスタ。
【請求項３５】
前記読取り手段が、前記N個の可読1ビット記憶セルのうち少なくとも1つを、マルチポートレジスタファイルのポートに結合するための手段を含む、請求項34に記載のスキャン可能Nビットレジスタ。
【請求項３６】
スイッチゲートが前記スキャンクロックを受け取っていない間、そのラッチに書き込むように構成された前記少なくとも1つの記憶セルが、ワード線を受け取り、前記ワード線に応答して、前記ラッチに書き込むように構成されたワード線制御書込みトランジスタをさらに含む、請求項1に記載のスキャン可能レジスタ。
【請求項３７】
前記少なくとも1つの記憶セルが、読取り線を受け取り、前記線読取りに応答して、前記ラッチを読取り出力に結合するように構成された読取り回路をさらに備える、請求項1に記載のスキャン可能レジスタ。
【手続補正２】
【補正対象書類名】図面
【補正対象項目名】図５
【補正方法】変更
【補正の内容】
【図５】
2013538358.tif 000010
【国際調査報告】
2013538358.tif 000011
2013538358.tif 000012
2013538358.tif 000013