JP2007333538A - テスト回路、セレクタおよび半導体集積回路 - Google Patents

テスト回路、セレクタおよび半導体集積回路 Download PDF

Info

Publication number
JP2007333538A
JP2007333538A JP2006165248A JP2006165248A JP2007333538A JP 2007333538 A JP2007333538 A JP 2007333538A JP 2006165248 A JP2006165248 A JP 2006165248A JP 2006165248 A JP2006165248 A JP 2006165248A JP 2007333538 A JP2007333538 A JP 2007333538A
Authority
JP
Japan
Prior art keywords
output terminal
test
type transistor
data
terminal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP2006165248A
Other languages
English (en)
Inventor
Genichiro Inoue
源一郎 井上
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2006165248A priority Critical patent/JP2007333538A/ja
Priority to US11/743,854 priority patent/US7622953B2/en
Priority to CNA200710110005XA priority patent/CN101089644A/zh
Publication of JP2007333538A publication Critical patent/JP2007333538A/ja
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318522Test of Sequential circuits
    • G01R31/31853Test of registers

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Tests Of Electronic Circuits (AREA)

Abstract

【課題】複数のトライステート素子がアクティブとなりデータの衝突が発生する故障を検出する。
【解決手段】本発明に係るセレクタは、自身の故障を検出するテストモードを有するセレクタであって、データ出力端子121と、テスト出力端子122と、データ出力端子121に出力が接続される第1のトライステート素子131と、データ出力端子121に出力が接続される第2のトライステート素子132と、テストモード時に、データ出力端子121の電圧と閾値との大小に応じて、第1の論理値または第2の論理値をテスト出力端子122に出力するテスト部とを備え、テスト部は、テストモード時に、第1のトライステート素子131がHレベルの信号を出力しようとし、かつ、第2のトライステート素子132がLレベルの信号を出力しようとした場合に、データ出力端子121に現れる中間電位を第1の論理値に変換し、テスト出力端子122に出力する。
【選択図】図1

Description

本発明は、テスト回路、セレクタおよび半導体集積回路に関し、特に、出力が同一のノードに接続された複数のトライステート素子のテストを行うテスト回路、および、テスト回路を含むセレクタに関する。
近年の半導体集積回路は、年々高集積化・高速化が進んでおり、それに伴って、構成要素である個々の要素回路にも、容易に故障検出ができることを満たしつつ、高速動作を実現することが、強く求められている。
基本的な要素回路として、セレクタが挙げられるが、高速動作するセレクタとして、古くからトライステート素子を使用したものが知られている。しかしながら、トライステート素子を使用したセレクタには、故障検出が困難になることも同時に知られている。
トライステート素子を使用したセレクタの故障検出が困難になる故障として、構成するトライステート素子のうち、少なくとも1つのトライステート素子の制御信号が故障して、そのトライステート素子の出力が常にハイインピーダンス状態になってしまう故障が発生した場合(すなわち、無選択状態が発生する場合)、および、出力が常にハイインピーダンスでない状態になってしまう場合(すなわち、多重選択が発生する場合)の故障が考えられる。
この問題を解決するために、従来の解決方法としては、特許文献1に記載されている方法が知られている。特許文献1に記載の方法によれば、トライステート素子で構成されたセレクタの出力部分に、スキャンテスト時にのみ出力部分をプルアップまたはプルダウンする機能を有することで、通常動作時のセレクタの速度悪化を最小限に抑えつつ、制御信号が故障して無選択状態になっても、出力が論理「1」または「0」に固定されるため、正しく故障検出をすることができる構成になっている。
以下、図を用いて従来のトライステート素子を用いたセレクタについて説明する。
図7は、前述した特許文献1に示されている従来のセレクタの構成を示す図である。
図7に示すセレクタ1000は、トライステート素子1001および1002と、トランジスタ1003とを備える。
トライステート素子1001は、データ選択端子1021がアクティブ時に、データ入力端子1011の論理値をデータ出力端子1040に出力する。また、トライステート素子1001の出力は、データ選択端子1021がノンアクティブ時に、ハイインビーダンス状態となる。同様に、トライステート素子1002は、データ選択端子1022がアクティブ時に、データ入力端子1012の論理値を出力する。また、トライステート素子1002の出力は、データ選択端子1022がノンアクティブ時に、ハイインビーダンス状態となる。
トランジスタ1003は、NMOSFETであり、スキャンモード信号端子1031がアクティブの時、データ出力端子1040をプルダウンする機能を有する。トランジスタ1003は、トライステート素子1001および1002の駆動能力に比べて十分弱い駆動能力で形成されている。
このような構成を取ることで、データ選択端子1021および1022のうち少なくとも一方が故障しており、トライステート素子1001および1002が共にハイインピーダンスになる場合、スキャンテスト時にはスキャンモード信号端子1031がアクティブになっており、トランジスタ1003は、データ出力端子をプルダウンし、データ出力端子1040は論理値「0」を出力する。よって、データ選択端子1021および1022のうち少なくとも一方が故障した場合にも、スキャンテストによって、故障と判断することが可能となる。
また、通常動作時には、スキャンモード信号端子1031がノンアクティブになるので、動作速度への悪影響を最小限に抑えることができる構成になっている。
特開平11−52019号公報
しかしながら、特許文献1に記載のセレクタは、全てのトライステート素子の出力が、ハイインピーダンスとなり、データ出力端子がハイインピーダンスとなる故障は検出することができるが、複数のトライステート素子がアクティブとなりデータの衝突が発生する故障を検出することができない。
そこで、本発明は、複数のトライステート素子がアクティブとなりデータの衝突が発生する故障を検出することのできるテスト回路、セレクタまたは半導体集積回路を提供することを目的とする。
上記目的を達成するために、本発明に係るテスト回路は、出力が同一のノードに接続された第1のトライステート素子および第2のトライステート素子のテストを行うテスト回路であって、テスト出力端子と、前記ノードの電圧と閾値との大小に応じて、第1の論理値または第2の論理値を前記テスト出力端子に出力するテスト手段とを備え、前記テスト手段は、前記第1のトライステート素子がHレベルの信号を前記ノードに出力しようとし、かつ、前記第2のトライステート素子がLレベルの信号を前記ノードに出力しようとした場合に、前記ノードに現れる中間電位を第1の論理値に変換し、前記第1の論理値を前記テスト出力端子に出力する。
この構成によれば、故障により、複数のトライステート素子の出力が衝突し、中間電位が出力された場合に、第1の論理値が出力される。これにより、第1の論理値と異なる論理値が期待値となる入力パターンに対するテスト回路の出力から、複数のトライステート素子がアクティブとなりデータの衝突が発生する故障を検出することができる。
また、本発明に係るセレクタは、故障を検出するテストモードを有するセレクタであって、データ出力端子と、テスト出力端子と、前記データ出力端子に出力が接続される第1のトライステート素子と、前記データ出力端子に出力が接続される第2のトライステート素子と、テストモード時に、前記データ出力端子の電圧と閾値との大小に応じて、第1の論理値または第2の論理値を前記テスト出力端子に出力するテスト手段とを備え、前記テスト手段は、テストモード時に、前記第1のトライステート素子がHレベルの信号を前記データ出力端子に出力しようとし、かつ、前記第2のトライステート素子がLレベルの信号を前記データ出力端子に出力しようとした場合に、前記データ出力端子に現れる中間電位を第1の論理値に変換し、前記第1の論理値を前記テスト出力端子に出力する。
この構成によれば、故障により、第1のトライステート素子がHレベルを出力し、第2のトライステート素子がLレベルを出力し、データ出力端子が中間電位となった場合に、セレクタは、第1の論理値をテスト出力端子に出力する。これにより、第1の論理値と異なる論理値が期待値となる入力パターンに対するテスト出力端子に出力された論理値から、複数のトライステート素子がアクティブとなりデータの衝突が発生する故障を検出することができる。
また、前記テスト手段は、前記データ出力端子に一端が接続され、テストモード時にオンし、テストモード時以外はオフする半導体スイッチと、前記半導体スイッチの他端に入力が接続され、前記テスト出力端子に出力が接続されるインバータとを備えてもよい。
この構成によれば、通常動作時(テストモード時以外)は、半導体スイッチ(例えば、NMOSFET)がオフするので、データ出力端子に対する負荷容量の増加を低減することができる。すなわち、セレクタの動作速度の低減を抑えることができる。
また、前記第1の論理値は、論理値「1」であり、前記インバータは、ゲートに前記半導体スイッチの他端が接続され、ドレインに前記テスト出力端子が接続され、ソースに電源が接続される第1のp型トランジスタと、ゲートに前記半導体スイッチの他端が接続され、ドレインに前記テスト出力端子が接続され、ソースにGNDが接続される第1のn型トランジスタとを備え、前記第1のp型トランジスタの駆動能力は、前記第1のn型トランジスタの駆動能力より高くてもよい。
この構成によれば、インバータのスイッチング電位がVDD/2(ここで、VDDは電源電圧)より高くなる。これにより、故障により、第1のトライステート素子がHレベルを出力し、第2のトライステート素子がLレベルを出力し、データ出力端子が中間電位となった場合に、論理値「1」を出力することができる。
また、前記第1のトライステート素子および前記第2のトライステート素子は、前記データ出力端子にHレベルの電圧を供給する第2のp型トランジスタと、前記データ出力端子にLレベルの電圧を供給する第2のn型トランジスタとを備え、前記第2のn型トランジスタの駆動能力は、前記第2のp型トランジスタの駆動能力より高くてもよい。
この構成によれば、第1のトライステート素子がHレベルを出力し、第2のトライステート素子がLレベルを出力する時の、データ出力端子の電位は、VDD/2より低くなる。よって、インバータのスイッチング電位をVDD/2より必要以上に高くしなくても、故障時(第1のトライステート素子がHレベルを出力し、第2のトライステート素子がLレベルを出力する場合)に安定して論理値「1」を出力することができる。また、設計の幅を広げることができる。
また、前記第1の論理値は、論理値「0」であり、前記インバータは、ゲートに前記半導体スイッチの他端が接続され、ドレインに前記テスト出力端子が接続され、ソースに電源が接続される第1のp型トランジスタと、ゲートに前記半導体スイッチの他端が接続され、ドレインに前記テスト出力端子が接続され、ソースにGNDが接続される第1のn型トランジスタとを備え、前記第1のn型トランジスタの駆動能力は、前記第1のp型トランジスタの駆動能力より高くてもよい。
この構成によれば、インバータのスイッチング電位がVDD/2(ここで、VDDは電源電圧)より低くなる。これにより、故障により、第1のトライステート素子がHレベルを出力し、第2のトライステート素子がLレベルを出力し、データ出力端子が中間電位となった場合に、論理値「0」を出力することができる。
また、前記第1のトライステート素子および前記第2のトライステート素子は、前記データ出力端子にHレベルの電圧を供給する第2のp型トランジスタと、前記データ出力端子にLレベルの電圧を供給する第2のn型トランジスタとを備え、前記第2のp型トランジスタの駆動能力は、前記第2のn型トランジスタの駆動能力より高くてもよい。
この構成によれば、第1のトライステート素子がHレベルを出力し、第2のトライステート素子がLレベルを出力する時の、データ出力端子の電位は、VDD/2より高くなる。よって、インバータのスイッチング電位をVDD/2より必要以上に低くしなくても、故障時(第1のトライステート素子がHレベルを出力し、第2のトライステート素子がLレベルを出力する場合)に安定して論理値「1」を出力することができる。また、設計の幅を広げることができる。
また、前記第1の論理値は、論理値「1」であり、前記インバータは、ゲートに前記半導体スイッチの他端が接続され、ドレインに前記テスト出力端子が接続され、ソースに電源が接続される第1のp型トランジスタと、ゲートに前記半導体スイッチの他端が接続され、ドレインに前記テスト出力端子が接続され、ソースにGNDが接続される第1のn型トランジスタとを備え、前記第1のp型トランジスタのゲート幅は、前記第1のn型トランジスタのゲート幅の4.4倍以上であってもよい。
この構成によれば、第1のp型トランジスタの駆動能力は、第1のn型トランジスタの駆動能力の2倍以上になる。これにより、故障により、第1のトライステート素子がHレベルを出力し、第2のトライステート素子がLレベルを出力し、データ出力端子が中間電位となった場合に、論理値「1」を出力することができる。
また、前記第1のトライステート素子および前記第2のトライステート素子は、前記データ出力端子にHレベルの電圧を供給する第2のp型トランジスタと、前記データ出力端子にLレベルの電圧を供給する第2のn型トランジスタとを備え、前記第2のp型トランジスタのゲート幅は、前記第2のn型トランジスタのゲート幅の1.1倍以下であってもよい。
この構成によれば、第2のn型トランジスタの駆動能力は、第2のp型トランジスタの駆動能力の2倍以上になる。これにより、第1のトライステート素子がHレベルを出力し、第2のトライステート素子がLレベルを出力する時の、データ出力端子の電位は、VDD/2より低くなる。よって、インバータのスイッチング電位をVDD/2より必要以上に高くしなくても、故障時(第1のトライステート素子がHレベルを出力し、第2のトライステート素子がLレベルを出力する場合)に安定して論理値「1」を出力することができる。また、設計の幅を広げることができる。
また、前記第1の論理値は、論理値「0」であり、前記インバータは、ゲートに前記半導体スイッチの他端が接続され、ドレインに前記テスト出力端子が接続され、ソースに電源が接続される第1のp型トランジスタと、ゲートに前記半導体スイッチの他端が接続され、ドレインに前記テスト出力端子が接続され、ソースにGNDが接続される第1のn型トランジスタとを備え、前記第1のp型トランジスタのゲート幅は、前記第1のn型トランジスタのゲート幅の1.1倍以下であってもよい。
この構成によれば、第1のn型トランジスタの駆動能力は、第1のp型トランジスタの駆動能力の2倍以上になる。これにより、故障により、第1のトライステート素子がHレベルを出力し、第2のトライステート素子がLレベルを出力し、データ出力端子が中間電位となった場合に、論理値「0」を出力することができる。
また、前記第1のトライステート素子および前記第2のトライステート素子は、前記データ出力端子にHレベルの電圧を供給する第2のp型トランジスタと、前記データ出力端子にLレベルの電圧を供給する第2のn型トランジスタとを備え、前記第2のp型トランジスタのゲート幅は、前記第2のn型トランジスタのゲート幅の4.4倍以上であってもよい。
この構成によれば、第2のp型トランジスタの駆動能力は、第2のn型トランジスタの駆動能力の2倍以上になる。これにより、第1のトライステート素子がHレベルを出力し、第2のトライステート素子がLレベルを出力する時の、データ出力端子の電位は、VDD/2より高くなる。よって、インバータのスイッチング電位をVDD/2より必要以上に低くしなくても、故障時(第1のトライステート素子がHレベルを出力し、第2のトライステート素子がLレベルを出力する場合)に安定して論理値「1」を出力することができる。また、設計の幅を広げることができる。
また、前記テスト手段は、テストモード時に、前記第1のトライステート素子および前記第2のトライステート素子の出力がハイインピーダンスとなる場合に、前記第1の論理値を前記テスト出力端子に出力してもよい。
この構成によれば、テストモード時に、故障により第1のトライステート素子および第2のトライステート素子の出力がハイインビーダンス状態となった場合に、テスト出力端子に第1の論理値が出力される。これにより、第1の論理値と異なる論理値が期待値となる入力パターンに対するテスト出力端子に出力される論理値から、全てのトライステート素子が非選択となりデータ出力端子がハイインピーダンス状態となる故障を検出することができる。
また、前記テスト手段は、さらに、ゲートにテストモード時に論理値「1」となる信号が入力され、ドレインに前記半導体スイッチの他端が接続され、ソースにGNDが接続される第3のn型トランジスタを備えてもよい。
この構成によれば、テストモード時に、故障により第1のトライステート素子および第2のトライステート素子の出力がハイインビーダンス状態となった場合に、第3のn型トランジスタにより、データ出力端子およびインバータの入力はプルダウンされる。よって、テスト出力端子より論理値「1」が出力される。これにより、論理値「0」が期待値となる入力パターンに対するテスト出力端子に出力される論理値から、全てのトライステート素子が非選択となりデータ出力端子がハイインピーダンス状態となる故障を検出することができる。
また、前記テスト手段は、さらに、ゲートにテストモード時に論理値「0」となる信号が入力され、ドレインに前記半導体スイッチの他端が接続され、ソースに電源が接続される第3のp型トランジスタを備えてもよい。
この構成によれば、テストモード時に、故障により第1のトライステート素子および第2のトライステート素子の出力がハイインビーダンス状態となった場合に、第3のp型トランジスタにより、データ出力端子およびインバータの入力はプルアップされる。よって、テスト出力端子より論理値「0」が出力される。これにより、論理値「1」が期待値となる入力パターンに対するテスト出力端子に出力される論理値から、全てのトライステート素子が非選択となりデータ出力端子がハイインピーダンス状態となる故障を検出することができる。
また、本発明に係る半導体集積回路は、複数の前記セレクタと、前記複数のセレクタのうち1以上が前記テスト出力端子に前記第1の論理値を出力する場合に、第2の論理値を出力し、前記複数のセレクタ全てがテスト出力端子に前記第1の論理値と異なる第3の論理値を出力する場合に、前記第2の論理値と異なる第4の論理値を出力する論理回路とを備える。
この構成によれば、複数のセレクタのうち少なくとも1つが第1の論理値を出力した場合に、論理回路は、第2の論理値を出力する。これにより、全てのセレクタの出力が第1の論理値と異なる論理値となる入力パターンを入力し、論理回路の出力をモニタすることで、複数のセレクタに故障しているセレクタが含まれているか否かをテストすることができる。これにより、各セレクタのテスト出力端子を個別にモニタする必要がないので、テストを容易に行うことができる。
また、前記半導体集積回路は、さらに、データ入力端子が、前記論理回路の出力に接続された、スキャン対象のフリップフロップを備えてもよい。
この構成によれば、複数のセレクタに対して、1つのスキャン対象のフリップフロップを設けることで、全てのセレクタの故障を検出することができる。よって、各セレクタに対しスキャン対象のフリップフロップを設ける場合に比べ、スキャン対象のフリップフロップの数を大幅に減らすことができる。これにより、スキャンシフト回数の削減、面積の削減およびクロック負荷の低減を実現することができる。
本発明は、複数のトライステート素子がアクティブとなりデータの衝突が発生する故障を検出することのできるテスト回路、セレクタまたは半導体集積回路を提供することができる。
以下、本発明の実施の形態について図面を用いて説明する。
(第1の実施の形態)
本発明の第1の実施の形態に係るセレクタは、データ出力端子が中間電位となった場合に、論理値「1」を出力する回路を備えることで、複数のトライステート素子が同時にアクティブとなる故障を検出することができる。
まず、本発明の第1の実施の形態に係るセレクタの構成を説明する。
図1は本発明の第1の実施の形態に係るセレクタの構成を示す図である。図1に示すセレクタ100は、自身の故障を検出するテストモードを有する3入力のセレクタである。セレクタ100は、データ入力端子101〜103と、データ選択端子111〜113と、モード選択端子114と、データ出力端子121および122と、トライステートインバータ131、132および133と、トランジスタ134と、トランジスタ135と、インバータ141とを備える。
トライステートインバータ131〜133の出力は、データ出力端子121に接続される。トライステートインバータ131は、データ選択端子111が「1」の時に、データ入力端子101の論理値を反転しデータ出力端子121に出力する。また、トライステートインバータ131の出力は、データ選択端子111が「0」の時に、ハイインビーダンス状態となる。同様に、トライステートインバータ132は、データ選択端子112が「1」の時に、データ入力端子102の論理値を反転しデータ出力端子121に出力する。また、トライステートインバータ132の出力は、データ選択端子112が「0」の時に、ハイインビーダンス状態となる。トライステートインバータ133は、データ選択端子113が「1」の時に、データ入力端子103の論理値を反転しデータ出力端子121に出力する。また、トライステートインバータ133の出力は、データ選択端子113が「0」の時に、ハイインビーダンス状態となる。また、データ出力端子121は、通常動作時に用いられる次段の回路に接続される。
トランジスタ134は、NMOSFETであり、ゲートにモード選択端子114が接続され、ドレインおよびソースのうち一方がデータ出力端子121と接続され、ドレインおよびソースのうち他方はインバータ141の入力であるノード123に接続される。トランジスタ134は、テストモードであるか否かに応じてオン/オフが切り替わる。モード選択端子114は、テストモード時には「1」となり、通常動作時(テストモード時以外)には「0」となる。すなわち、トランジスタ134は、テストモード時にデータ出力端子121とノード123とが導通状態になり、通常動作時に切断状態になる。また、トランジスタ134は、ゲート幅が小さなトランジスタであり、データ出力端子121に接続されているドレイン容量が小さくなるようにしてある。
トランジスタ135は、PMOSFETであり、ゲートにモード選択端子114が接続され、ドレインがノード123に接続され、ソースが電源に接続される。トランジスタ135は、通常動作時にフローティングノードとなるノード123をプルアップする。
インバータ141は、ノード123に入力が接続され、テスト出力端子122に出力が接続される。インバータ141は、ノード123の論理を反転しテスト出力端子122に出力する。すなわち、インバータ141は、テストモード時に、データ出力端子121の電圧と閾値(インバータ141のスイッチング電位)との大小に応じて、論理値「1」または論理値「0」をテスト出力端子122に出力する。インバータ141は、トランジスタ136と、トランジスタ137とを備える。また、テスト出力端子122は、テストモード時に用いられる次段の回路に接続される。例えば、テスト出力端子122は、直接または1以上の論理回路を介して、スキャン対象のフリップフロップと接続される。
トランジスタ136は、PMOSFETであり、ゲートがノード123に接続され、ドレインがテスト出力端子122に接続され、ソースが電源に接続される。トランジスタ137は、NMOSFETであり、ゲートがノード123に接続され、ドレインがテスト出力端子122に接続され、ソースがGNDに接続される。また、トランジスタ136の駆動能力は、トランジスタ137の駆動能力より高く設定されている。例えば、トランジスタ136の駆動能力は、トランジスタ137の駆動能力の2倍以上に設定される。すなわち、インバータ141のスイッチング電位が1/2×VDD(ここで、VDDは電源電圧)よりも高く設定されている。さらに、インバータ141のスイッチング電位は、データ選択端子111〜113のうちいずれか2つが「1」となりデータ多重選択され、トライステートインバータ131〜133の出力データが衝突し、データ出力端子121が中間電位になる場合にとりうる最大の中間電位よりも高い電位に設定される。
また、トライステートインバータ131〜133は、「0」を駆動する駆動能力の方が、「1」を駆動する駆動能力より高く設定されている。すなわち、データ選択端子111〜113のうちいずれか2つが「1」となりデータ多重選択され、データ出力端子121の中間電位は、1/2×VDDより低くなる。例えば、トライステートインバータ131〜133は、データ出力端子121にHレベルの電圧(論理値「1」)を供給するPMOSFETと、データ出力端子121にLレベルの電圧(論理値「0」)を供給するNMOSFETとを備え、NMOSFETの駆動能力は、PMOSFETの駆動能力より高く設定される。例えば、NMOSFETの駆動能力は、PMOSFETの駆動能力の2倍以上に設定される。
ここで、インバータ141を構成するトランジスタ136および137の駆動能力の決定方法としては、トランジスタ136および137のゲート長Lを同一として、ゲート幅Lを変更する方法を用いることができる。一般に、ゲート長Lとゲート幅Wの比W/Lが同一の場合には、NMOSFETとPMOSFETとの駆動能力の比は、2.2:1程度となる。よって、PMOSFETであるトランジスタ136の駆動能力をNMOSFETであるトランジスタ137の2倍以上の駆動能力に設定するためには、トランジスタ136のゲート幅をトランジスタ137のゲート幅の4.4倍以上に設定すればよい。また、トライステートインバータ131〜133を構成するNMOSFETの駆動能力をPMOSFETの駆動能力の2倍以上にするためには、PMOSFETのゲート幅をNMOSFETゲート幅の1.1倍以下にすればよい。
以上の構成により、セレクタ100は、テストモード時に、故障により、トライステートインバータ131〜133のうちいずれか1つがHレベルの信号をデータ出力端子121に出力しようとし、かつ、トライステートインバータ131〜133のうちいずれか1つががLレベルの信号をデータ出力端子121に出力しようとした場合に、データ出力端子121に現れる中間電位を論理値「1」に変換し、テスト出力端子122に論理値「1」を出力する。
次に、図1に示すセレクタ100の動作を説明する。
通常動作時には、モード選択端子114は「0」が入力され、トランジスタ134がオフになり、トランジスタ135がオンになることでノード123は「1」になり、テスト出力端子122からは「0」が出力される。
検査動作時にはモード選択端子114は「1」が入力されることでアクティブになり、トランジスタ134がオンになり、トランジスタ135がオフになることで、データ出力端子121とノード123とがトランジスタ134を介して接続され、データ出力端子121の電位に対応した論理値がテスト出力端子122から出力される(対応状態に関しては後述する)。
このような構成要素からなるセレクタ100は、通常、データ選択端子111〜113のうちの1つの端子のみ「1」(アクティブ)が入力され、他の端子は「0」(ノンアクティブ)が入力される。1つの端子のみアクティブ(ワンホット)の場合には、ワンホットなデータ選択端子に対応したデータ入力端子の論理反転信号が、データ出力端子121から出力される。例えば、データ選択端子111がワンホットでアクティブな場合は、対応するデータ入力端子101の反転信号が選択されてデータ出力端子121から出力される。
このようなセクタ100は、あらかじめデータ選択端子111〜113の値が確定している場合には、データ入力端子101〜103からデータ出力端子121までにトライステートインバータ1段のみで信号が伝播するため、高速に動作することができる。
以下に、データ選択端子111〜113自身の1縮退故障、または、データ選択端子111〜113へ信号を供給する外部の制御回路の故障により、データ選択端子111〜113のいずれかが1縮退故障相当の故障が発生し、データ多重選択状態になった場合の動作について説明する。ここでは、データ選択端子111に1縮退故障が発生して、常にアクティブになってしまう場合について説明するが、データ選択端子112または113の場合も同様である。
データ入力端子101が選択される場合(場合1)、データ選択端子111に「1」が入力される。よって、データ選択端子111は1縮退故障している場合であっても、故障していない場合と同様に、データ入力端子101が選択される。具体的には、データ入力端子102および103の値にかかわらず、データ入力端子101が「1」の場合「0」、「0」の場合「1」がデータ出力端子121に出力される。
モード入力信号114が「1」であるテストモード時も同様に、あたかも故障していないかのような動作を行う。すなわち、データ入力端子101が「1」の場合は、テスト出力端子122に「0」が出力され、データ入力端子101が「0」の場合は、テスト出力端子122に「1」が出力される。よって、データ入力端子101が選択される場合のテスト出力端子122の論理値から、データ選択端子111は1縮退故障を検出することはできない。
データ入力端子102が選択される場合(場合2)、データ選択端子112は「1」であり、故障によりデータ選択端子111は「1」となるので、トライステートインバータ131と132とのデータ多重選択が発生する。以下に、さらに場合分けをして説明する。
データ入力端子102が選択され、データ入力端子101に「1」が入力され、かつ、データ入力端子102に「1」が入力される場合(場合2.1)、トライステートインバータ131および132は共に「0」を出力するため、データ出力端子121から「0」が出力される。よって、あたかも故障していないかのような動作をする。
モード入力信号114が「1」のテストモード時も同様に、あたかも故障していないかのような動作をする。すなわち、故障していない場合と同様に、テスト出力端子122から「1」が出力される。よって、データ入力端子102が選択され、データ入力端子101に「1」が入力され、かつ、データ入力端子102に「1」が入力される場合のテスト出力端子122の論理値から、データ選択端子111の1縮退故障を検出することはできない。
データ入力端子102が選択され、データ入力端子101に「0」が入力され、かつ、データ入力端子102に「0」が入力される場合(場合2.2)、トライステートインバータ131および132は共に「1」を出力するため、データ出力端子121から「1」が出力される。よって、あたかも故障していないかのような動作をする。
モード入力信号114が「1」のテストモード時も同様に、あたかも故障していないかのような動作をする。すなわち、故障していない場合と同様に、テスト出力端子122から「0」が出力される。よって、データ入力端子102が選択され、データ入力端子101に「0」が入力され、かつ、データ入力端子102に「0」が入力される場合のテスト出力端子122の論理値から、データ選択端子111の1縮退故障を検出することはできない。
データ入力端子102が選択され、データ入力端子101に「1」が入力され、かつ、データ入力端子102に「0」が入力される場合(場合2.3)、トライステートインバータ131は「0」を出力し、トライステートインバータ132は「1」を出力するため、データ出力端子121から中間電位が出力される。中間電位の信号は、次段の回路のスイッチング電位に依存し、論理値「0」または「1」として伝播する。すなわち、セレクタ自身では、論理値を確定することができない。
モード入力信号114が「1」のテストモード時には、トランジスタ134を介してインバータ141の入力へデータ出力端子121の中間電位が伝播される。インバータ141は、スイッチング電位がトライステートインバータ131〜133のうち、いずれか2つがデータ多重選択された場合に、一方が「1」を出力し、他方が「0」を出力しようとして、信号が衝突し中間電位になる場合にとりうる最大の中間電位よりも高い電位に設定されているため、テスト出力端子122に「1」を出力する。故障していな場合には、データ入力端子102が「0」であるので、データ出力端子121に「1」が出力され、テスト出力端子122にデータ出力端子121の信号の反転信号である「0」が出力される。よって、テスト出力端子122に出力される論理値は、故障していない場合と異なる。これにより、データ入力端子102が選択され、データ入力端子101に「1」が入力され、かつ、データ入力端子102に「0」が入力される場合のテスト出力端子122の論理値から、データ選択端子111の1縮退故障を検出することができる。
データ入力端子102が選択され、データ入力端子101に「0」が入力され、かつ、データ入力端子102に「1」が入力される場合(場合2.4)、トライステートインバータ131は「1」を出力し、トライステートインバータ132は「0」を出力するため、データ出力端子121から中間電位が出力される。中間電位の信号は、次段の回路のスイッチング電位に依存し、論理値「0」または「1」として伝播する。すなわち、セレクタ自身では、論理値を確定することができない。
モード入力信号114が「1」のテストモード時には、トランジスタ134を介してインバータ141の入力へデータ出力端子121の中間電位が伝播される。インバータ141は、スイッチング電位がトライステートインバータ131〜133のうち、いずれか2つがデータ多重選択された場合に、一方が「1」を出力し、他方が「0」を出力しようとして、信号が衝突し中間電位になる場合にとりうる最大の中間電位よりも高い電位に設定されているため、テスト出力端子122に「1」を出力する。故障していな場合には、データ入力端子102が「1」であるので、データ出力端子121に「0」が出力され、テスト出力端子122にデータ出力端子121の信号の反転信号である「1」が出力される。よって、テスト出力端子122に出力される論理値は、故障していない場合と同じである。これにより、データ入力端子102が選択され、データ入力端子101に「1」が入力され、かつ、データ入力端子102に「0」が入力される場合のテスト出力端子122の論理値から、データ選択端子111の1縮退故障を検出することができない。
以上のように、場合2.3(データ入力端子102が選択され、データ入力端子101に「1」が入力され、かつ、データ入力端子102に「0」が入力される場合)のテスト出力端子122の論理値から、データ選択端子111の1縮退故障を検出することができる。例えば、場合1、2.1、2.2、2.3および2.4のパターンを入力信号として与えて、場合2.3の時のみテスト出力端子122の出力が期待値と一致しないということで、データ入力端子111が1縮退故障を起こしていることを特定することができる。
なお、説明は省略するが、データ入力端子103が選択される場合も、上述したデータ入力端子102が選択される場合と同様の動作となる。
また、同様に、データ入力端子112および113の1縮退故障を特定することもできる。
以上より、本実施の形態に係るセレクタ100は、故障により中間電位が出力される場合、テストモード時に、中間電位を所定の論理値に確定させ、テスト出力端子122に出力することができる。よって、スキャンでテスト出力端子122の論理値が期待値と一致するか否かを判定することで、トライステート素子が複数選択される故障を検出することができる。すなわち、本発明に係るセレクタ100を用いることで、半導体集積回路の故障検出率を向上させることができる。
また、本実施の形態に係るセレクタ100は、通常動作時は、トランジスタ134がオフする。また、トランジスタ134は、例えば、ゲート幅を小さくすることで、データ出力端子121に対する負荷容量が最小になるように設定されている。これにより、通常動作時には、データ出力端子121に対する負荷容量の増加を低減することができる。よって、セレクタ100の動作速度の減少を抑えることができる。
また、本実施の形態に係るセレクタ100は、故障によりトライステートインバータ131〜133の出力が衝突した場合に出力される中間電位が、VDD/2より低くなるように設定されている。これにより、インバータ141のスイッチング電位をVDD/2より極端に高く設定する必要がないので、設計を容易に行うことができる。また、設計の幅を広げることができる。
また、本実施の形態に係るセレクタ100は、データ出力端子121とインバータ141の入力とのオン・オフを切り替えるスイッチをNMOSFETで形成している。これにより、データ出力端子121に低い電位(例えば、トランジスタの閾値付近または閾値以下の電位)が出力される場合でも、低い電位の信号をインバータ141の入力に伝播することができる。
なお、上記説明において、トライステートインバータ131〜133が3個の場合について説明したが、トライステートインバータの数は、2以上であればよい。
また、上記説明において、トライステート素子としてトライステートインバータを用いた例を示したが、これに限定されるものではない。例えば、トライステート素子としてトライステートバッファを用いてもよい。
また、上記説明において、トライステート素子は、制御信号が「1」の時にアクティブになる例を示したが、「0」の時にアクティブになるトライステート素子であってもよい。
また、スイッチとして用いているトランジスタ134は、NMOSFETとしたが、PMOSFETまたはアナログスイッチ等の半導体スイッチであってもよい。この場合、モード選択信号114の論理は、テストモード時にスイッチがオンし、通常動作時にオフするように設定すればよい。
また、上記説明において、セレクタ100は、MOSFETで構成されているが、バイポーラトランジスタ等の他のトランジスタで形成してもよい。
また、上記説明において、データ出力端子121から、データ入力端子の反転論理を出力する構成について説明したが、同じ論理を出力する構成にしてもよい。また、上記説明において、テスト出力端子122から、データ入力端子と同じ論理を出力する構成について説明したが、反転論理を出力する構成にしてもよい。
また、上記説明において、トライステートインバータ131〜133の駆動能力は、故障によりデータ出力端子121に中間電位を出力する場合に、VDD/2より低い値が出力されるように設定されるとしたが、インバータ141が故障によりデータ出力端子121に出力される中間電位を論理値「1」としてテスト出力端子122に出力する構成であれば、トライステートインバータ131〜133の駆動能力は任意の値でよい。これにより、セレクタ100の動作速度等を最適化することができる。
また、上記説明において、トライステートインバータ131〜133を複数備えるセレクタ100を例に説明したが、出力が同一のノードに接続された複数のトライステート素子のテストに本発明は適用することができる。例えば、トライステート素子の出力が複数接続されるバスの信号およびバスに接続されるトライステート素子をテストする回路にも本発明を応用することができる。
(第2の実施の形態)
上述した本発明の第1の実施の形態では、故障によりデータ出力端子121に中間電位が出力された場合に、論理値「1」を出力するセレクタ100について説明したが、本発明の第2の実施の形態では、故障によりデータ出力端子に中間電位が出力された場合に、論理値「0」を出力するセレクタについて説明する。
まず、本発明の第2の実施の形態に係るセレクタの構成を説明する。
図2は本発明の第2の実施の形態に係るセレクタの構成を示す図である。図2に示すセレクタ200は、自身の故障を検出するテストモードを有する3入力のセレクタである。セレクタ200は、データ入力端子201〜203と、データ選択端子211〜213と、モード選択端子214と、データ出力端子221および222と、トライステートインバータ231、232および233と、トランジスタ234と、トランジスタ235と、インバータ241とを備える。
第1の実施の形態と同様に、トライステートインバータ231〜233の出力は、データ出力端子221に接続される。トライステートインバータ231は、データ選択端子211が「1」の時に、データ入力端子201の論理値を反転しデータ出力端子221に出力する。また、トライステートインバータ231の出力は、データ選択端子211が「0」の時に、ハイインビーダンス状態となる。同様に、トライステートインバータ232は、データ選択端子212が「1」の時に、データ入力端子202の論理値を反転しデータ出力端子221に出力する。また、トライステートインバータ232の出力は、データ選択端子212が「0」の時に、ハイインビーダンス状態となる。トライステートインバータ233は、データ選択端子213が「1」の時に、データ入力端子203の論理値を反転しデータ出力端子221に出力する。また、トライステートインバータ233の出力は、データ選択端子213が「0」の時に、ハイインビーダンス状態となる。
トランジスタ234は、PMOSFETであり、ゲートにモード選択端子214が接続され、ドレインおよびソースのうち一方がデータ出力端子221と接続され、ドレインおよびソースのうち他方はインバータ241の入力であるノード223に接続される。トランジスタ234は、テストモードであるか否かに応じてオン/オフが切り替わる。モード選択端子214は、テストモード時には「0」となり、通常動作時(テストモード時以外)には「1」となる。すなわち、トランジスタ234は、テストモード時にデータ出力端子221とノード223とが導通状態になり、通常動作時に切断状態になる。また、トランジスタ234は、ゲート幅が小さなトランジスタであり、データ出力端子221に接続されているドレイン容量が小さくなるようにしてある。
トランジスタ235は、NMOSFETであり、ゲートにモード選択端子214が接続され、ドレインがノード223に接続され、ソースがGNDに接続される。トランジスタ235は、通常動作時にフローティングノードとなるノード223をプルダウンする。
インバータ241は、ノード223に入力が接続され、テスト出力端子222に出力が接続される。インバータ241は、ノード223の論理を反転しテスト出力端子222に出力する。すなわち、インバータ241は、テストモード時に、データ出力端子221の電圧と閾値(インバータ241のスイッチング電位)との大小に応じて、論理値「1」または論理値「0」をテスト出力端子222に出力する。インバータ241は、トランジスタ236と、トランジスタ237とを備える。
トランジスタ236は、PMOSFETであり、ゲートがノード223に接続され、ドレインがテスト出力端子222に接続され、ソースが電源に接続される。トランジスタ237は、NMOSFETであり、ゲートがノード223に接続され、ドレインがテスト出力端子222に接続され、ソースがGNDに接続される。また、トランジスタ237の駆動能力は、トランジスタ236の駆動能力より高く設定されている。例えば、トランジスタ237の駆動能力を、トランジスタ236の駆動能力の2倍以上に設定する。すなわち、インバータ241のスイッチング電位が1/2×VDD(ここで、VDDは電源電圧)よりも低く設定されている。さらに、インバータ241のスイッチング電位は、データ選択端子211〜213のうちいずれか2つが「1」となりデータ多重選択され、トライステートインバータ231〜233の出力データが衝突し、データ出力端子221が中間電位になる場合にとりうる最小の中間電位よりも低い電位に設定される。
また、トライステートインバータ231〜233は、「1」を駆動する駆動能力の方が、「0」を駆動する駆動能力より高く設定されている。すなわち、データ選択端子211〜213のうちいずれか2つが「1」となりデータ多重選択され、データ出力端子221の中間電位は、1/2×VDDより高くなる。例えば、トライステートインバータ231〜233は、データ出力端子221にHレベルの電圧(論理値「1」)を供給するPMOSFETと、データ出力端子221にLレベルの電圧(論理値「0」)を供給するNMOSFETとを備え、PMOSFETの駆動能力は、NMOSFETの駆動能力より高く設定される。例えば、PMOSFETの駆動能力は、NMOSFETの駆動能力の2倍以上に設定される。
ここで、インバータ241を構成するトランジスタ236および237の駆動能力の決定方法としては、トランジスタ236および237のゲート長Lを同一として、ゲート幅Lを変更する方法を用いることができる。一般に、ゲート長Lとゲート幅Wの比W/Lが同一の場合には、NMOSFETとPMOSFETとの駆動能力の比は、2.2:1程度となる。よって、NMOSFETであるトランジスタ237の駆動能力をPMOSFETであるトランジスタ236の2倍以上の駆動能力に設定するためには、トランジスタ236のゲート幅をトランジスタ237のゲート幅の1.1倍以下に設定すればよい。また、トライステートインバータ231〜233を構成するPMOSFETの駆動能力をNMOSFETの駆動能力の2倍以上にするためには、PMOSFETのゲート幅をNMOSFETゲート幅の4.4倍以上にすればよい。
以上の構成により、セレクタ200は、テストモード時において、故障により、トライステートインバータ231〜233のうちいずれか1つがHレベルの信号をデータ出力端子221に出力しようとし、かつ、トライステートインバータ131〜133のうちいずれか1つががLレベルの信号をデータ出力端子221に出力しようとした場合に、データ出力端子221に現れる中間電位を論理値「0」に変換し、テスト出力端子222に論理値「0」を出力する。
次に、図2に示すセレクタ200の動作を説明する。
通常動作時には、モード選択端子214は「1」が入力され、トランジスタ234がオフになり、トランジスタ235がオンになることでノード223は「0」になり、テスト出力端子222からは「1」が出力される。
検査動作時にはモード選択端子214は「0」が入力されることでアクティブになり、トランジスタ234がオンになり、トランジスタ235がオフになることで、データ出力端子221とノード223とがトランジスタ234を介して接続され、データ出力端子221の電位に対応した論理値がテスト出力端子222から出力される(対応状態に関しては後述する)。
このような構成要素からなるセレクタ200は、通常、データ選択端子211〜213のうちの1つの端子のみ「1」(アクティブ)が入力され、他の端子は「0」(ノンアクティブ)が入力される。1つの端子のみアクティブ(ワンホット)の場合には、ワンホットなデータ選択端子に対応したデータ入力端子の論理反転信号が、データ出力端子221から出力される。例えば、データ選択端子211がワンホットでアクティブな場合は、対応するデータ入力端子201の反転信号が選択されてデータ出力端子221から出力される。
このようなセクタ200は、あらかじめデータ選択端子211〜213の値が確定している場合には、データ入力端子201〜203からデータ出力端子221までにトライステートインバータ1段のみで信号が伝播するため、高速に動作することができる。
以下に、データ選択端子211〜213自身の1縮退故障、または、データ選択端子211〜213へ信号を供給する外部の制御回路の故障により、データ選択端子211〜213のいずれかが1縮退故障相当の故障が発生し、データ多重選択状態になった場合の動作について説明する。ここでは、データ選択端子211に1縮退故障が発生して、常にアクティブになってしまう場合について説明するが、データ選択端子212または213の場合も同様である。
データ入力端子201が選択される場合(場合1)、データ選択端子211に「1」が入力される。よって、データ選択端子211は1縮退故障している場合であっても、故障していない場合と同様に、データ入力端子201が選択される。具体的には、データ入力端子202および203の値にかかわらず、データ入力端子201が「1」の場合「0」、「0」の場合「1」がデータ出力端子221に出力される。
モード入力信号214が「0」であるテストモード時も同様に、あたかも故障していないかのような動作を行う。すなわち、データ入力端子201が「1」の場合は、テスト出力端子222に「0」が出力され、データ入力端子201が「0」の場合は、テスト出力端子222に「1」が出力される。よって、データ入力端子201が選択される場合のテスト出力端子222の論理値から、データ選択端子211は1縮退故障を検出することはできない。
データ入力端子202が選択される場合(場合2)、データ選択端子212は「1」であり、故障によりデータ選択端子211は「1」となるので、トライステートインバータ231と232とのデータ多重選択が発生する。以下に、さらに場合分けをして説明する。
データ入力端子202が選択され、データ入力端子201に「1」が入力され、かつ、データ入力端子202に「1」が入力される場合(場合2.1)、トライステートインバータ231および232は共に「0」を出力するため、データ出力端子221から「0」が出力される。よって、あたかも故障していないかのような動作をする。
モード入力信号214が「0」のテストモード時も同様に、あたかも故障していないかのような動作をする。すなわち、故障していない場合と同様に、テスト出力端子222から「1」が出力される。よって、データ入力端子202が選択され、データ入力端子201に「1」が入力され、かつ、データ入力端子202に「1」が入力される場合のテスト出力端子222の論理値から、データ選択端子211の1縮退故障を検出することはできない。
データ入力端子202が選択され、データ入力端子201に「0」が入力され、かつ、データ入力端子202に「0」が入力される場合(場合2.2)、トライステートインバータ231および232は共に「1」を出力するため、データ出力端子221から「1」が出力される。よって、あたかも故障していないかのような動作をする。
モード入力信号214が「0」のテストモード時も同様に、あたかも故障していないかのような動作をする。すなわち、故障していない場合と同様に、テスト出力端子222から「0」が出力される。よって、データ入力端子202が選択され、データ入力端子201に「0」が入力され、かつ、データ入力端子202に「0」が入力される場合のテスト出力端子222の論理値から、データ選択端子211の1縮退故障を検出することはできない。
データ入力端子202が選択され、データ入力端子201に「1」が入力され、かつ、データ入力端子202に「0」が入力される場合(場合2.3)、トライステートインバータ231は「0」を出力し、トライステートインバータ232は「1」を出力するため、データ出力端子221から中間電位が出力される。中間電位の信号は、次段の回路のスイッチング電位に依存し、論理値「0」または「1」として伝播する。すなわち、セレクタ自身では、論理値を確定することができない。
モード入力信号214が「0」のテストモード時には、トランジスタ234を介してインバータ241の入力へデータ出力端子221の中間電位が伝播される。インバータ241は、スイッチング電位がトライステートインバータ231〜233のうち、いずれか2つがデータ多重選択された場合に、一方が「1」を出力し、他方が「0」を出力しようとして、信号が衝突し中間電位になる場合にとりうる最小の中間電位よりも低い電位に設定されているため、テスト出力端子222に「0」を出力する。故障していな場合には、データ入力端子202が「0」であるので、データ出力端子221に「1」が出力され、テスト出力端子222にデータ出力端子221の信号の反転信号である「0」が出力される。よって、テスト出力端子222に出力される論理値は、故障していない場合と同じである。これにより、データ入力端子202が選択され、データ入力端子201に「0」が入力され、かつ、データ入力端子202に「1」が入力される場合のテスト出力端子222の論理値から、データ選択端子211の1縮退故障を検出することができない。
データ入力端子202が選択され、データ入力端子201に「0」が入力され、かつ、データ入力端子202に「1」が入力される場合(場合2.4)、トライステートインバータ231は「1」を出力し、トライステートインバータ232は「0」を出力するため、データ出力端子221から中間電位が出力される。中間電位の信号は、次段の回路のスイッチング電位に依存し、論理値「0」または「1」として伝播する。すなわち、セレクタ自身では、論理値を確定することができない。
モード入力信号214が「0」のテストモード時には、トランジスタ234を介してインバータ241の入力へデータ出力端子221の中間電位が伝播される。インバータ241は、スイッチング電位がトライステートインバータ231〜233のうち、いずれか2つがデータ多重選択された場合に、一方が「1」を出力し、他方が「0」を出力しようとして、信号が衝突し中間電位になる場合にとりうる最小の中間電位よりも低い電位に設定されているため、テスト出力端子222に「0」を出力する。故障していな場合には、データ入力端子202が「1」であるので、データ出力端子221に「0」が出力され、テスト出力端子222にデータ出力端子221の信号の反転信号である「1」が出力される。よって、テスト出力端子222に出力される論理値は、故障していない場合と異なる。これにより、データ入力端子202が選択され、データ入力端子201に「0」が入力され、かつ、データ入力端子202に「1」が入力される場合のテスト出力端子222の論理値から、データ選択端子211の1縮退故障を検出することができる。
以上のように、場合2.4(データ入力端子202が選択され、データ入力端子201に「0」が入力され、かつ、データ入力端子202に「1」が入力される場合)のテスト出力端子222の論理値から、データ選択端子211の1縮退故障を検出することができる。例えば、場合1、2.1、2.2、2.3および2.4のパターンを入力信号として与えて、場合2.4の時のみテスト出力端子222の出力が期待値と一致しないということで、データ入力端子211が1縮退故障を起こしていることを特定することができる。
なお、説明は省略するが、データ入力端子203が選択される場合も、上述したデータ入力端子202が選択される場合と同様の動作となる。
また、同様に、データ入力端子212および213の1縮退故障を特定することもできる。
以上より、本実施の形態に係るセレクタ200は、故障により中間電位が出力される場合、テストモード時に、中間電位を所定の論理値に確定させ、テスト出力端子222に出力することができる。よって、スキャンでテスト出力端子222の論理値が期待値と一致するか否かを判定することで、トライステート素子が複数選択される故障を検出することができる。すなわち、本発明に係るセレクタ200を用いることで、半導体集積回路の故障検出率を向上させることができる。
また、本実施の形態に係るセレクタ200は、通常動作時は、トランジスタ234がオフする。また、トランジスタ234は、例えば、ゲート幅を小さくすることで、データ出力端子221に対する負荷容量が最小になるように設定されている。これにより、通常動作時には、データ出力端子221に対する負荷容量の増加を低減することができる。よって、セレクタ200の動作速度の減少を抑えることができる。
また、本実施の形態に係るセレクタ200は、故障によりトライステートインバータ231〜233の出力が衝突した場合に出力される中間電位が、VDD/2より高くなるように設定されている。これにより、インバータ241のスイッチング電位をVDD/2より極端に低く設定する必要がないので、設計を容易に行うことができる。また、設計の幅を広げることができる。
また、本実施の形態に係るセレクタ200は、データ出力端子221とインバータ241の入力とのオン・オフを切り替えるスイッチをPMOSFETで形成している。これにより、データ出力端子221に高い電位(例えば、(VDD−トランジスタの閾値)付近または(VDD−トランジスタの閾値)以上の電位)が出力される場合でも、高い電位の信号をインバータ241の入力に伝播することができる。
なお、上記説明において、トライステートインバータ231〜233が3個の場合について説明したが、トライステートインバータの数は、2以上であればよい。
また、上記説明において、トライステート素子としてトライステートインバータを用いた例を示したが、これに限定されるものではない。例えば、トライステート素子としてトライステートバッファを用いてもよい。
また、上記説明において、トライステート素子は、制御信号が「1」の時にアクティブになる例を示したが、「0」の時にアクティブになるトライステート素子であってもよい。
また、スイッチとして用いているトランジスタ234は、PMOSFETとしたが、NMOSFETまたはアナログスイッチ等の半導体スイッチであってもよい。この場合、モード選択信号214の論理は、テストモード時にスイッチがオンし、通常動作時にオフするように設定すればよい。
また、上記説明において、セレクタ200は、MOSFETで構成されているが、バイポーラトランジスタ等の他のトランジスタで形成してもよい。
また、上記説明において、データ出力端子221から、データ入力端子の反転論理を出力する構成について説明したが、同じ論理を出力する構成にしてもよい。また、上記説明において、テスト出力端子222から、データ入力端子と同じ論理を出力する構成について説明したが、反転論理を出力する構成にしてもよい。
また、上記説明において、トライステートインバータ231〜233の駆動能力は、故障によりデータ出力端子221に中間電位を出力する場合に、VDD/2より高い値が出力されるように設定されるとしたが、インバータ241が故障によりデータ出力端子221に出力される中間電位を論理値「0」としてテスト出力端子222に出力する構成であれば、トライステートインバータ231〜233の駆動能力は任意の値でよい。これにより、セレクタ200の動作速度等を最適化することができる。
また、上記説明において、トライステートインバータ231〜233を複数備えるセレクタ200を例に説明したが、出力が同一のノードに接続された複数のトライステート素子のテストに本発明は適用することができる。例えば、トライステート素子の出力が複数接続されるバスの信号およびバスに接続されるトライステート素子をテストする回路にも本発明を応用することができる。
(第3の実施の形態)
上述した第1の実施の形態では、トライステートインバータが多重選択される不良を検出するセレクタ100について説明したが、第3の実施の形態では、トライステートインバータが多重選択される不良を検出する機能に加え、トライステートインバータが無選択となる不良を検出する機能を有するセレクタについて説明する。
図3は本発明の第3の実施の形態に係るセレクタの構成を示す図である。図3に示すセレクタ300は、図1に示すセレクタ100に加えて、モード選択端子315と、トランジスタ338とを備える。なお、図1と同様の要素には同一の符号を付しており詳細な説明は省略する。
トランジスタ338は、NMOSFETであり、ゲートにモード選択端子315が接続され、ドレインにノード123が接続され、ソースにGNDが接続される。モード選択端子315に印加される信号は、テストモード時に「1」となる信号である。トランジスタ338は、モード選択端子315が「1」の時に、ノード123をプルダウンし、「0」の時に、オフとなる動作を行う。すなわち、モード選択端子315が「0」の時には、第1の実施の形態とまったく同じ動作をすることになる。
ここで、トランジスタ338の駆動能力は、トライステートインバータ131〜133の駆動能力に比べて十分弱く設定されている。また、インバータ141は、トライステートインバータ131〜133のうち、いずれか2つがデータ多重選択された場合に、一方が「1」を出力し、他方が「0」を出力しようとして、信号が衝突した状態で、さらに、トランジスタ134およびトランジスタ338がオンした状態の、ノード123のとりうる最大の中間電位よりも高い電位に、スイッチング電位が設定されている。
モード選択端子315は、モード選択端子114が「1」の時にのみ「1」が印加されるように設定しておく。もし、モード選択端子114が「0」の時にモード選択端子315が「1」になると、同時にトランジスタ135とトランジスタ338がオンになり、貫通電流が流れ続けるからである。これを防止するために、例えば、モード選択端子114とモード選択端子315の論理積がトランジスタ338のゲートに入力する構成にしてもよい。
モード選択端子315が「1」であり、かつ、トライステートインバータ131〜133がワンホット状態、または、いずれか2つがデータ多重選択された場合の動作については、第1の実施の形態と同じ動作を行う。これは、インバータ141のスイッチング電位が、トライステートインバータ131〜133のうち、いずれか2つがデータ多重選択された場合に、一方が「1」を出力し、他方が「0」を出力し、さらに、トランジスタ338がオンの状態において、ノード123がとりうる最大の中間電位よりも高い電位に、設定されているからである。
すなわち、セレクタ300は、第1の実施の形態同様、データ選択端子111〜113の1縮退故障を検出することができるセレクタとなっている。
次に、データ選択端子111〜113自身の0縮退故障、または、データ選択端子111〜113へ信号を供給する外部の制御回路の故障により、データ選択端子111〜113のいずれかが0縮退故障相当の故障が発生し、データ出力端子121がハイインピーダンス状態になった場合の動作について述べる。
この場合には、モード選択端子114および315を共に「1」に設定することで、ノード123を駆動するのが、トランジスタ338のプルダウンのみとなるため、ノード123は「0」になり、テスト出力端子122から「1」が出力される。例えば、テスト出力端子122に「0」が出力されるパターンを入力することで、データ選択端子111〜113の0縮退故障を検出することができる。
以上のように、本実施の形態に係るセレクタ300は、テストモード時に、トライステートインバータ131〜133の出力が全てハイインピーダンスとなる場合に、論理値「1」をテスト出力端子122に出力する。すなわち、本実施の形態に係るセレクタ300は、データ選択端子111〜113のいずれかの0縮退故障時のテスト出力端子122の状態を定義することができる。よって、データ選択端子111〜113のいずれかの0縮退故障の故障検出を向上することができる。
また、第3の実施の形態に係るセレクタ300は、通常動作時には、トランジスタ134がオフとなる。これにより、通常動作時のデータ出力端子121に対する負荷容量は、第1の実施の形態に係るセレクタ100と同程度となる。よって、第3の実施の形態に係るセレクタ300は、データ出力端子121に対する負荷容量を増加させることなく、第1の実施の形態に係るセレクタ100の機能に加え、データ選択端子111〜113の0縮退故障を検出することができる。
なお、上記説明において、モード選択端子114および315が「1」の状態で、データ選択端子111〜113の1縮退故障を検出するとしたが、モード選択端子114および315が「1」の状態で、データ選択端子111〜113の0縮退故障を検出し、モード選択端子114が「1」およびモード選択端子315が「0」の状態で、データ選択端子111〜113の1縮退故障を検出してもよい。
(第4の実施の形態)
上述した第3の実施の形態では、データ選択端子が0縮退故障の場合に、論理値「1」を出力するセレクタについて説明した。本発明の第4の実施の形態では、データ選択端子が0縮退故障の場合に、論理値「0」を出力するセレクタについて説明する。
図4は本発明の第4の実施の形態に係るセレクタの構成を示す図である。図4に示すセレクタ400は、図2に示すセレクタ200に加えて、モード選択端子414と、トランジスタ438を備える。なお、図2と同様の要素には同一の符号を付しており詳細な説明は省略する。
トランジスタ438は、PMOSFETであり、ゲートにモード選択端子415が接続され、ドレインにノード223が接続され、ソースに電源が接続される。モード選択端子415に印加される信号は、テストモード時に「0」となる信号である。トランジスタ438は、モード選択端子415が「0」の時に、ノード223をプルアップし、「1」の時に、オフとなる動作を行う。すなわち、モード選択端子415が「1」の時には、第2の実施の形態とまったく同じ動作をすることになる。
ここで、トランジスタ438の駆動能力は、トライステートインバータ231〜233の駆動能力に比べて十分弱く設定されている。また、インバータ241は、トライステートインバータ231〜233のうち、いずれか2つがデータ多重選択された場合に、一方が「1」を出力し、他方が「0」を出力しようとして、信号が衝突した状態で、さらに、トランジスタ234およびトランジスタ438がオンした状態の、ノード223のとりうる最小の中間電位よりも低い電位に、スイッチング電位が設定されている。
モード選択端子415は、モード選択端子214が「0」の時にのみ「0」が印加されるように設定しておく。もし、モード選択端子214が「1」の時にモード選択端子415が「0」になると、同時にトランジスタ235とトランジスタ438がオンになり、貫通電流が流れ続けるからである。
これを防止するために、例えば、モード選択端子214とモード選択端子415の論理積がトランジスタ438のゲートに入力する構成にしてもよい。
モード選択端子415が「1」であり、かつ、トライステートインバータ231〜233がワンホット状態、または、いずれか2つがデータ多重選択された場合の動作については、第2の実施の形態と同じ動作を行う。これは、インバータ241のスイッチング電位が、トライステートインバータ231〜233のうち、いずれか2つがデータ多重選択された場合に、一方が「1」を出力し、他方が「0」を出力し、さらに、トランジスタ438がオンの状態において、ノード223がとりうる最小の中間電位よりも低い電位に、設定されているからである。
すなわち、セレクタ400は、第2の実施の形態同様、データ選択端子211〜213の1縮退故障を検出することができるセレクタとなっている。
次に、データ選択端子211〜213自身の0縮退故障、または、データ選択端子111〜113へ信号を供給する外部の制御回路の故障により、データ選択端子211〜213のいずれかが0縮退故障相当の故障が発生し、データ出力端子221がハイインピーダンス状態になった場合の動作について述べる。
この場合には、モード選択端子214および415を共に「0」に設定することで、ノード223を駆動するのが、トランジスタ438のプリスチャージのみとなるため、ノード223は「1」になり、テスト出力端子222から「0」が出力される。例えば、テスト出力端子222に「1」が出力されるパターンを入力することで、データ選択端子211〜213の0縮退故障を検出することができる。
以上のように、本実施の形態に係るセレクタ400は、テストモード時に、トライステートインバータ231〜233の出力が全てハイインピーダンスとなる場合に、論理値「0」をテスト出力端子222に出力する。すなわち、本実施の形態に係るセレクタ400は、データ選択端子211〜213のいずれかの0縮退故障時のテスト出力端子222の状態を定義することができる。よって、データ選択端子211〜213のいずれかの0縮退故障の故障検出を向上することができる。
また、第4の実施の形態に係るセレクタ400は、通常動作時には、トランジスタ234がオフとなる。これにより、通常動作時のデータ出力端子221に対する負荷容量は、第2の実施の形態に係るセレクタ200と同程度となる。よって、第4の実施の形態に係るセレクタ400は、データ出力端子221に対する負荷容量を増加させることなく、第2の実施の形態に係るセレクタ200の機能に加え、データ選択端子211〜213の0縮退故障を検出することができる。
なお、上記説明において、モード選択端子214および415が「0」の状態で、データ選択端子211〜213の1縮退故障を検出するとしたが、モード選択端子214および415が「0」の状態で、データ選択端子211〜213の0縮退故障を検出し、モード選択端子214が「0」およびモード選択端子415が「1」の状態で、データ選択端子211〜213の1縮退故障を検出してもよい。
(第5の実施の形態)
第5の実施の形態では、第1の実施の形態に係るセレクタ100を複数備える複数ビットのセレクタの故障を一括して検出する論理回路について説明する。
図5は、本発明の第5の実施の形態に係る論理回路の構成を示す図である。
図5に示す論理回路5000は、32個のセレクタ500〜531と、論理和回路541と、フリップフロップ542とを備える。
セレクタ500〜531は、それぞれ図1に示すセレクタ100である。セレクタ500〜531のデータ選択端子111には、データ選択信号551が供給され、データ選択端子112には、データ選択信号552が供給され、データ選択端子113には、データ選択信号553が供給される。また、セレクタ500〜531のモード選択端子114には、モード入力信号554が供給される。
また、セレクタ500〜531のデータ入力端子101は、それぞれデータ入力端子5100〜5131と接続され、データ入力端子102は、それぞれデータ入力端子5200〜5231と接続され、データ入力端子103は、それぞれデータ入力端子5300〜5331と接続される。また、セレクタ500〜531のデータ出力端子121は、それぞれデータ出力端子5000〜5031と接続される。すなわち、セレクタ500〜531は、共通の制御信号にて共通の動作をする32ビットのセレクタとして動作する。
論理和回路541は、32入力の論理和回路であり、入力にセレクタ500〜531のテスト出力端子122が接続される。すなわち、論理和回路541は、セレクタ500〜531のうち1以上がテスト出力端子122に論理値「1」を出力する場合に、論理値「1」を出力し、セレクタ500〜531の全てがテスト出力端子122に論理値「0」を出力する場合に、論理値「0」を出力する。
フリップフロップ542は、スキャン対象のフリップフロップであり、スキャンデータ入力端子SIが論理和回路541の出力に接続される。
個々のセレクタ500〜531の動作については第1の実施の形態で説明しているので、ここでは説明を省略するが、モード入力信号554が「0」の時は通常動作、すなわち、32ビットのセレクタとして動作し、それぞれテスト出力端子122からは「0」を出力する。
また、モード入力信号554が「1」の時はテスト動作、すなわち、32ビットのセレクタのデータ多重選択状態を検査することができるモードとなる。
第1の実施の形態において説明したように、テストモード時において、セレクタ500〜531は、データ選択端子111〜113のいずれかが1縮退故障しており、中間電位が出力される場合に、テスト出力端子122に論理値「1」を出力する。よって、故障していない場合には、テスト出力端子122に論理値「0」が出力されるパターンを入力することで、セレクタ500〜531の1縮退故障を検出することができる。また、各セレクタ500〜531のテスト出力端子122は、論理和回路541の入力と接続されている。よって、セレクタ500〜531のうち1以上のセレクタのデータ選択端子111が1縮退故障状態になっている場合、または、データ選択信号551が1縮退故障状態になっている場合には、論理和回路541は「1」を出力する。また、全てのセレクタ500〜531が正常に動作し、テスト出力端子122に「0」を出力した場合には、論理和回路541は、「0」を出力する。論理和回路541の出力信号は、フリップフロップ542のスキャンデータ入力端子SIからフリップフロップ542に取り込まれる。
以上により、第5の実施の形態に係る論理回路5000は、フリップフロップ542に保持されたデータから、32個のセレクタ500〜531のいずれか1以上が、1縮退故障状態であるか否かを判定することができる。
また、第5の実施の形態に係る論理回路5000は、32個のセレクタが1縮退故障しているか否かを論理輪回路541およびフリップフロップ542のみを配置することで実現している。すなわち、各セレクタ500〜531のテスト出力端子122それぞれに対してスキャン対応フリップフロップを配置する場合(32個のフリップフロップを配置する場合)に比べて、スキャン対応フリップフロップの数を大幅に減らすことができる。これにより、スキャンシフト回数の削減、面積の削減およびクロック負荷の低減等のメリットがある。
また、セレクタ500〜531のうちどのセレクタのデータ選択端子111が1縮退故障しているか、または、データ選択信号551自身が既に1縮退故障状況になっているかは、各セレクタへの入力信号の状態を変化させ、論理和回路541の出力状態をみることによって判断できる。よって、セレクタ500〜531のうちどのセレクタのデータ選択端子111が1縮退故障しているか、または、データ選択信号551自身が既に1縮退故障状況になっているかを、スキャン対応フリップフロップ542の値を確認することで、容易に判断することができる。
なお、上記説明においては、データ選択端子111が1縮退故障している場合について述べたが、同様にセレクタ500〜531のうちいずれかのセレクタのデータ選択端子112または113の1縮退故障を検出することができる。また、データ選択信号552または553が1縮退故障状態になっていることを容易に判断することができる。
また、上記説明において、論理回路5000は、論理和回路541を用いているが、この構成に限定されるものではない。例えば、論理和否定回路等を用いてもよい。また、セレクタ500〜531として第2の実施の形態に係るセレクタ200を用い論理積回路または論理積否定回路等を用いてもよい。
(第6の実施の形態)
第6の実施の形態では、第3の実施の形態に係るセレクタ300を複数備える複数ビットのセレクタの故障を一括して検出する論理回路について説明する。
図6は、本発明の第6の実施の形態に係る論理回路の構成を示す図である。
図6に示す論理回路6000は、32個のセレクタ600〜631と、論理和回路641と、フリップフロップ642とを備える。
セレクタ600〜631は、それぞれ図3に示すセレクタ300である。セレクタ600〜631のデータ選択端子111には、データ選択信号651が供給され、データ選択端子112には、データ選択信号652が供給され、データ選択端子113には、データ選択信号653が供給される。また、セレクタ600〜631のモード選択端子114には、モード入力信号654が供給され、モード選択端子315には、モード入力信号655が供給される。
また、セレクタ600〜631のデータ入力端子101は、それぞれデータ入力端子6100〜6131と接続され、データ入力端子102は、それぞれデータ入力端子6200〜6231と接続され、データ入力端子103は、それぞれデータ入力端子6300〜6331と接続される。また、セレクタ600〜631のデータ出力端子121は、それぞれデータ出力端子6000〜6031と接続される。すなわち、セレクタ600〜631は、共通の制御信号にて共通の動作をする32ビットのセレクタとして動作する。
論理和回路641は、32入力の論理和回路であり、入力にセレクタ600〜631のテスト出力端子122が接続される。すなわち、論理和回路641は、セレクタ600〜631のうち1以上がテスト出力端子122に論理値「1」を出力する場合に、論理値「1」を出力し、セレクタ600〜631の全てがテスト出力端子122に論理値「0」を出力する場合に、論理値「0」を出力する。
フリップフロップ642は、スキャン対象のフリップフロップであり、スキャンデータ入力端子SIが論理和回路641の出力に接続される。
また、セレクタ600〜631のそれぞれのテスト出力端子122は、32入力の論理和回路641の入力に接続される。論理和回路641の出力は、スキャン対応フリップフロップ642のスキャンデータ入力端子に接続される。
個々のセレクタ600〜631の動作については第3の実施の形態で説明しているので、ここでは説明を省略するが、モード入力信号654が「0」およびモード入力信号655が「0」の時は通常動作、すなわち、32ビットのセレクタとして動作し、それぞれテスト出力端子122からは「0」を出力する。
また、モード入力信号654が「1」およびモード入力信号655が「0」の時は、第5の実施の形態と同様に、テスト動作、すなわち、32ビットのセレクタのデータ多重選択状態を検査することができるモードとなる。
第5の実施の形態において説明したように、テスト動作モードにおいて、セレクタ600〜631は、データ選択端子111〜113のいずれかが1縮退故障しており、中間電位が出力される場合に、テスト出力端子122に論理値「1」を出力する。よって、故障していない場合には、テスト出力端子122に論理値「0」が出力されるパターンを入力することで、セレクタ600〜631の1縮退故障を検出することができる。また、各セレクタ600〜631のテスト出力端子122は、論理和回路641の入力と接続されている。よって、セレクタ600〜631のうち1以上のセレクタのデータ選択端子111が1縮退故障状態になっている場合、または、データ選択信号651が1縮退故障状態になっている場合には、論理和回路641は「1」を出力する。また、全てのセレクタ600〜631が正常に動作し、テスト出力端子122に「0」を出力した場合には、論理和回路641は、「0」を出力する。論理和回路641の出力信号は、フリップフロップ642のスキャンデータ入力端子SIからフリップフロップ642に取り込まれる。
また、第3の実施の形態で説明したように、モード入力信号654が「1」およびモード入力信号655が「1」の時はデータ無選択テスト動作、すなわち、32ビットのセレクタのデータ無選択状態を検査することができるモードとなる。
データ無選択テスト動作モードにおいて、セレクタ600〜631は、データ選択端子111が0縮退故障し、データ出力端子321がハイインピーダンス状態となる場合に、テスト出力端子122に論理値「1」を出力する。よって、故障していない場合には、テスト出力端子122に論理値「0」が出力されるパターンを入力することで、セレクタ600〜631の0縮退故障を検出することができる。また、各セレクタ600〜631のテスト出力端子122は、論理和回路641の入力と接続されている。よって、セレクタ600〜631のうち1以上のセレクタのデータ選択端子111が0縮退故障状態になっている場合、または、データ選択信号651が0縮退故障状態になっている場合には、論理和回路641は「1」を出力する。また、全てのセレクタ600〜631が正常に動作し、テスト出力端子122に「0」を出力した場合には、論理和回路641は、「0」を出力する。論理和回路641の出力信号は、フリップフロップ642のスキャンデータ入力端子SIからフリップフロップ642に取り込まれる。
以上により、第6の実施の形態に係る論理回路6000は、フリップフロップ642に保持されたデータから、32個のセレクタ600〜631のいずれか1以上が、1縮退故障状態であるか否かを判定することができる。さらに、第6の実施の形態に係る論理回路6000は、フリップフロップ642に保持されたデータから32個のセレクタ600〜631のいずれか1以上が、0縮退故障状態であるか否かを判定することができる。
また、第6の実施の形態に係る論理回路6000は、32個のセレクタが1縮退故障または0縮退故障しているか否かを論理輪回路641およびフリップフロップ642のみを配置することで実現している。すなわち、各セレクタ600〜631のテスト出力端子122それぞれに対してスキャン対応フリップフロップを配置する場合(32個のフリップフロップを配置する場合)に比べて、スキャン対応フリップフロップの数を大幅に減らすことができる。これにより、スキャンシフト回数の削減、面積の削減およびクロック負荷の低減等のメリットがある。
また、セレクタ600〜631のうちどのセレクタのデータ選択端子111が1縮退故障しているか、または、データ選択信号651自身が既に1縮退故障状況になっているかは、各セレクタへの入力信号の状態を変化させることで、論理和回路641の出力状態をみることによって判断できる。よって、セレクタ600〜631のうちいずれのセレクタのデータ選択端子111が1縮退故障しているか、または、データ選択信号651自身が既に1縮退故障状況になっているかを、スキャン対応フリップフロップ642の値を確認することで、容易に判断することができる。同様に、セレクタ600〜631のうちどのセレクタのデータ選択端子111が0縮退故障しているか、または、データ選択信号651自身が既に0縮退故障状況になっているかは、各セレクタへの入力信号の状態を変化させることで、論理和回路641の出力状態をみることによって判断できる。よって、セレクタ600〜631のうちどのセレクタのデータ選択端子111が0縮退故障しているか、または、データ選択信号651自身が既に0縮退故障状況になっているかを、スキャン対応フリップフロップ642の値を確認することで、容易に判断することができる。
なお、上記説明においては、データ選択端子111が1縮退故障または0縮退故障している場合について述べたが、同様にセレクタ600〜631のうちいずれかのセレクタのデータ選択端子112または113の1縮退故障または0縮退故障を検出することができる。また、データ選択信号652または653が1縮退故障または0縮退故障状態になっていることを容易に判断することができる。
また、上記説明において、論理回路6000は、論理和回路641を用いているが、この構成に限定されるものではない。例えば、論理和否定回路等を用いてもよい。また、セレクタ600〜631として第4の実施の形態に係るセレクタ400を用い論理積回路または論理積否定回路等を用いてもよい。
本発明は、テスト回路、セレクタおよび半導体集積回路に適用でき、特に、高集積・高速動作を要求される半導体集積回路に用いられるセレクタおよびテスト回路に適用できる。
第1の実施の形態に係るセレクタの構成を示す図である。 第2の実施の形態に係るセレクタの構成を示す図である。 第3の実施の形態に係るセレクタの構成を示す図である。 第4の実施の形態に係るセレクタの構成を示す図である。 第5の実施の形態に係る論理回路の構成を示す図である。 第6の実施の形態に係る論理回路の構成を示す図である。 従来のセレクタの構成を示す図である。
符号の説明
100、200、300、400、1000 セレクタ
101〜103、201〜203、1011、1012 データ入力端子
111〜113、211〜213、1021、1022 データ選択端子
114、214、315、415、1031 モード選択端子
121、221、1040 データ出力端子
122、222 テスト出力端子
123、223 ノード
131〜133、231〜233 トライステートインバータ
134〜137、234〜237、338、438、1003 トランジスタ
141、241 インバータ
1001、1002 トライステートバッファ
500〜531、600〜631 セレクタ
541、641 論理和回路
542、642 フリップフロップ
551〜553、651〜653 データ選択信号
554、654、655 モード選択信号
5000、6000 論理回路
5100〜5131、5200〜5231、5300〜5331、6100〜6131、6200〜6231、6300〜6331 データ入力端子
5400〜5431、6400〜6431 データ出力端子

Claims (21)

  1. 出力が同一のノードに接続された第1のトライステート素子および第2のトライステート素子のテストを行うテスト回路であって、
    テスト出力端子と、
    前記ノードの電圧と閾値との大小に応じて、第1の論理値または第2の論理値を前記テスト出力端子に出力するテスト手段とを備え、
    前記テスト手段は、前記第1のトライステート素子がHレベルの信号を前記ノードに出力しようとし、かつ、前記第2のトライステート素子がLレベルの信号を前記ノードに出力しようとした場合に、前記ノードに現れる中間電位を第1の論理値に変換し、前記第1の論理値を前記テスト出力端子に出力する
    ことを特徴とするテスト回路。
  2. 故障を検出するテストモードを有するセレクタであって、
    データ出力端子と、
    テスト出力端子と、
    前記データ出力端子に出力が接続される第1のトライステート素子と、
    前記データ出力端子に出力が接続される第2のトライステート素子と、
    テストモード時に、前記データ出力端子の電圧と閾値との大小に応じて、第1の論理値または第2の論理値を前記テスト出力端子に出力するテスト手段とを備え、
    前記テスト手段は、テストモード時に、前記第1のトライステート素子がHレベルの信号を前記データ出力端子に出力しようとし、かつ、前記第2のトライステート素子がLレベルの信号を前記データ出力端子に出力しようとした場合に、前記データ出力端子に現れる中間電位を第1の論理値に変換し、前記第1の論理値を前記テスト出力端子に出力する
    ことを特徴とするセレクタ。
  3. 前記テスト手段は、
    前記データ出力端子に一端が接続され、テストモード時にオンし、テストモード時以外はオフする半導体スイッチと、
    前記半導体スイッチの他端に入力が接続され、前記テスト出力端子に出力が接続されるインバータとを備える
    ことを特徴とする請求項2記載のセレクタ。
  4. 前記第1の論理値は、論理値「1」であり、
    前記インバータは、
    ゲートに前記半導体スイッチの他端が接続され、ドレインに前記テスト出力端子が接続され、ソースに電源が接続される第1のp型トランジスタと、
    ゲートに前記半導体スイッチの他端が接続され、ドレインに前記テスト出力端子が接続され、ソースにGNDが接続される第1のn型トランジスタとを備え、
    前記第1のp型トランジスタの駆動能力は、前記第1のn型トランジスタの駆動能力より高い
    ことを特徴とする請求項3記載のセレクタ。
  5. 前記第1のトライステート素子および前記第2のトライステート素子は、
    前記データ出力端子にHレベルの電圧を供給する第2のp型トランジスタと、
    前記データ出力端子にLレベルの電圧を供給する第2のn型トランジスタとを備え、
    前記第2のn型トランジスタの駆動能力は、前記第2のp型トランジスタの駆動能力より高い
    ことを特徴とする請求項4記載のセレクタ。
  6. 前記第1の論理値は、論理値「0」であり、
    前記インバータは、
    ゲートに前記半導体スイッチの他端が接続され、ドレインに前記テスト出力端子が接続され、ソースに電源が接続される第1のp型トランジスタと、
    ゲートに前記半導体スイッチの他端が接続され、ドレインに前記テスト出力端子が接続され、ソースにGNDが接続される第1のn型トランジスタとを備え、
    前記第1のn型トランジスタの駆動能力は、前記第1のp型トランジスタの駆動能力より高い
    ことを特徴とする請求項3記載のセレクタ。
  7. 前記第1のトライステート素子および前記第2のトライステート素子は、
    前記データ出力端子にHレベルの電圧を供給する第2のp型トランジスタと、
    前記データ出力端子にLレベルの電圧を供給する第2のn型トランジスタとを備え、
    前記第2のp型トランジスタの駆動能力は、前記第2のn型トランジスタの駆動能力より高い
    ことを特徴とする請求項6記載のセレクタ。
  8. 前記第1の論理値は、論理値「1」であり、
    前記インバータは、
    ゲートに前記半導体スイッチの他端が接続され、ドレインに前記テスト出力端子が接続され、ソースに電源が接続される第1のp型トランジスタと、
    ゲートに前記半導体スイッチの他端が接続され、ドレインに前記テスト出力端子が接続され、ソースにGNDが接続される第1のn型トランジスタとを備え、
    前記第1のp型トランジスタのゲート幅は、前記第1のn型トランジスタのゲート幅の4.4倍以上である
    ことを特徴とする請求項3記載のセレクタ。
  9. 前記第1のトライステート素子および前記第2のトライステート素子は、
    前記データ出力端子にHレベルの電圧を供給する第2のp型トランジスタと、
    前記データ出力端子にLレベルの電圧を供給する第2のn型トランジスタとを備え、
    前記第2のp型トランジスタのゲート幅は、前記第2のn型トランジスタのゲート幅の1.1倍以下である
    ことを特徴とする請求項8記載のセレクタ。
  10. 前記第1の論理値は、論理値「0」であり、
    前記インバータは、
    ゲートに前記半導体スイッチの他端が接続され、ドレインに前記テスト出力端子が接続され、ソースに電源が接続される第1のp型トランジスタと、
    ゲートに前記半導体スイッチの他端が接続され、ドレインに前記テスト出力端子が接続され、ソースにGNDが接続される第1のn型トランジスタとを備え、
    前記第1のp型トランジスタのゲート幅は、前記第1のn型トランジスタのゲート幅の1.1倍以下である
    ことを特徴とする請求項3記載のセレクタ。
  11. 前記第1のトライステート素子および前記第2のトライステート素子は、
    前記データ出力端子にHレベルの電圧を供給する第2のp型トランジスタと、
    前記データ出力端子にLレベルの電圧を供給する第2のn型トランジスタとを備え、
    前記第2のp型トランジスタのゲート幅は、前記第2のn型トランジスタのゲート幅の4.4倍以上である
    ことを特徴とする請求項10記載のセレクタ。
  12. 前記テスト手段は、テストモード時に、前記第1のトライステート素子および前記第2のトライステート素子の出力がハイインピーダンスとなる場合に、前記第1の論理値を前記テスト出力端子に出力する
    ことを特徴とする請求項2〜11のいずれか1項に記載のセレクタ。
  13. 前記テスト手段は、さらに、
    ゲートにテストモード時に論理値「1」となる信号が入力され、ドレインに前記半導体スイッチの他端が接続され、ソースにGNDが接続される第3のn型トランジスタを備える
    ことを特徴とする請求項4、5、8または9に記載のセレクタ。
  14. 前記テスト手段は、さらに、
    ゲートにテストモード時に論理値「0」となる信号が入力され、ドレインに前記半導体スイッチの他端が接続され、ソースに電源が接続される第3のp型トランジスタを備える
    ことを特徴とする請求項6、7、10または11に記載のセレクタ。
  15. 請求項2〜14のいずれか1項に記載の複数のセレクタと、
    前記複数のセレクタのうち1以上が前記テスト出力端子に前記第1の論理値を出力する場合に、第2の論理値を出力し、前記複数のセレクタ全てがテスト出力端子に前記第1の論理値と異なる第3の論理値を出力する場合に、前記第2の論理値と異なる第4の論理値を出力する論理回路とを備える
    ことを特徴とする半導体集積回路。
  16. 前記半導体集積回路は、さらに、
    データ入力端子が、前記論理回路の出力に接続された、スキャン対象のフリップフロップを備える
    ことを特徴とする請求項15記載の半導体集積回路。
  17. 故障を検出するテストモードを有するセレクタであって、
    データ出力端子と、
    テスト出力端子と、
    前記データ出力端子に出力が接続される第1のトライステート素子と、
    前記データ出力端子に出力が接続される第2のトライステート素子と、
    前記データ出力端子に一端が接続され、テストモードであるか否かに応じてオン/オフが切り替わる半導体スイッチと、
    前記半導体スイッチの他端に入力が接続され、前記テスト出力端子に出力が接続されるインバータとを備える
    ことを特徴とするセレクタ。
  18. 前記第1の論理値は、論理値「1」であり、
    前記インバータは、
    ゲートに前記半導体スイッチの他端が接続され、ドレインに前記テスト出力端子が接続され、ソースに電源が接続される第1のp型トランジスタと、
    ゲートに前記半導体スイッチの他端が接続され、ドレインに前記テスト出力端子が接続され、ソースにGNDが接続される第1のn型トランジスタとを備え、
    前記第1のp型トランジスタのゲート幅は、前記第1のn型トランジスタのゲート幅の4.4倍以上である
    ことを特徴とする請求項17記載のセレクタ。
  19. 前記第1のトライステート素子および前記第2のトライステート素子は、
    前記データ出力端子にHレベルの電圧を供給する第2のp型トランジスタと、
    前記データ出力端子にLレベルの電圧を供給する第2のn型トランジスタとを備え、
    前記第2のp型トランジスタのゲート幅は、前記第2のn型トランジスタのゲート幅の1.1倍以下である
    ことを特徴とする請求項18記載のセレクタ。
  20. 前記第1の論理値は、論理値「0」であり、
    前記インバータは、
    ゲートに前記半導体スイッチの他端が接続され、ドレインに前記テスト出力端子が接続され、ソースに電源が接続される第1のp型トランジスタと、
    ゲートに前記半導体スイッチの他端が接続され、ドレインに前記テスト出力端子が接続され、ソースにGNDが接続される第1のn型トランジスタとを備え、
    前記第1のp型トランジスタのゲート幅は、前記第1のn型トランジスタのゲート幅の1.1倍以下である
    ことを特徴とする請求項17記載のセレクタ。
  21. 前記第1のトライステート素子および前記第2のトライステート素子は、
    前記データ出力端子にHレベルの電圧を供給する第2のp型トランジスタと、
    前記データ出力端子にLレベルの電圧を供給する第2のn型トランジスタとを備え、
    前記第2のp型トランジスタのゲート幅は、前記第2のn型トランジスタのゲート幅の4.4倍以上である
    ことを特徴とする請求項20記載のセレクタ。
JP2006165248A 2006-06-14 2006-06-14 テスト回路、セレクタおよび半導体集積回路 Withdrawn JP2007333538A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2006165248A JP2007333538A (ja) 2006-06-14 2006-06-14 テスト回路、セレクタおよび半導体集積回路
US11/743,854 US7622953B2 (en) 2006-06-14 2007-05-03 Test circuit, selector, and semiconductor integrated circuit
CNA200710110005XA CN101089644A (zh) 2006-06-14 2007-06-14 测试电路、选择器和半导体集成电路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006165248A JP2007333538A (ja) 2006-06-14 2006-06-14 テスト回路、セレクタおよび半導体集積回路

Publications (1)

Publication Number Publication Date
JP2007333538A true JP2007333538A (ja) 2007-12-27

Family

ID=38878329

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006165248A Withdrawn JP2007333538A (ja) 2006-06-14 2006-06-14 テスト回路、セレクタおよび半導体集積回路

Country Status (3)

Country Link
US (1) US7622953B2 (ja)
JP (1) JP2007333538A (ja)
CN (1) CN101089644A (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4971998B2 (ja) * 2006-07-27 2012-07-11 パナソニック株式会社 半導体集積回路、プログラム変換装置及びマッピング装置
JP2008192841A (ja) * 2007-02-05 2008-08-21 Matsushita Electric Ind Co Ltd 半導体集積回路
US8680907B2 (en) * 2007-10-31 2014-03-25 Agere Systems Llc Delay circuit having reduced duty cycle distortion
JP2010164457A (ja) * 2009-01-16 2010-07-29 Panasonic Corp 半導体集積回路および電子情報機器
US20100283474A1 (en) * 2009-05-11 2010-11-11 Panasonic Corporation Test circuit and optical pickup device
US8775882B2 (en) * 2010-12-28 2014-07-08 Stmicroelectronics International N.V. Testing circuits
US9287062B2 (en) * 2012-05-02 2016-03-15 National Instruments Corporation Magnetic switching system
KR101979713B1 (ko) * 2012-11-12 2019-05-17 삼성전자 주식회사 반도체 장치의 테스트 방법 및 반도체 테스트 장비
EP3302282B1 (en) * 2015-06-01 2021-04-14 The Regents of the University of California Systems and methods for reducing radiation dose in ct
US11442106B2 (en) * 2020-12-14 2022-09-13 Western Digital Technologies, Inc. Method and apparatus for debugging integrated circuit systems using scan chain

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3226293B2 (ja) * 1991-04-24 2001-11-05 株式会社日立製作所 半導体集積回路
US5955912A (en) * 1995-10-25 1999-09-21 Texas Instruments Incorporated Multiplexer circuits
US6016564A (en) * 1996-08-28 2000-01-18 Matsushita Electric Industrial Co., Ltd. Method of design for testability, method of design for avoiding bus error and integrated circuit
JPH1152019A (ja) 1997-08-04 1999-02-26 Matsushita Electric Ind Co Ltd 半導体集積回路
US6232799B1 (en) * 1999-10-04 2001-05-15 International Business Machines Corporation Method and apparatus for selectively controlling weak feedback in regenerative pass gate logic circuits

Also Published As

Publication number Publication date
US20080005632A1 (en) 2008-01-03
US7622953B2 (en) 2009-11-24
CN101089644A (zh) 2007-12-19

Similar Documents

Publication Publication Date Title
JP2007333538A (ja) テスト回路、セレクタおよび半導体集積回路
US10361686B2 (en) Scan output flip-flops
JP4890180B2 (ja) クロック分配回路とテスト方法
JP2008066536A (ja) 半導体集積回路
JP2005033067A (ja) 半導体集積回路、その静電気耐圧試験方法及び装置
US7788565B2 (en) Semiconductor integrated circuit
JP2009264948A (ja) 半導体装置
US6507929B1 (en) System and method for diagnosing and repairing errors in complementary logic
US20040183581A1 (en) Semiconductor integrated circuit
JP4618598B2 (ja) 半導体装置
CN113676175B (zh) 触发器电路
US8111560B2 (en) Semiconductor memory device
JP6242183B2 (ja) 半導体集積回路及び該半導体集積回路の試験方法並びに該半導体集積回路におけるラッシュカレントの抑制方法
US7071704B1 (en) Circuit for improved diagnosability of defects in a fuse scan structure
JP2005252143A (ja) 半導体集積回路
JP2007328852A (ja) 半導体装置
JP2001296334A (ja) 集積回路および故障検出方法
KR20060053978A (ko) 반도체 집적회로
JP2006201005A (ja) 半導体装置とそのテスト装置及びテスト方法。
JP2004012399A (ja) スキャン機能付きフリップフロップ回路、スキャンテスト回路および半導体集積回路
JPH1152019A (ja) 半導体集積回路
JP4781729B2 (ja) 半導体装置およびその設計方法
JP5614354B2 (ja) 半導体装置及び出力回路
JP2012103205A (ja) 半導体集積回路及びその制御方法
JP2008185443A (ja) 半導体検査装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090305

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20110208