説明

半導体装置

【課題】半導体装置の消費電力を低減しつつ、高速に動作させる。
【解決手段】半導体装置の回路が複数の回路ブロックに分割され、各前記回路ブロック毎に電源電圧を供給し、前記電源電圧を電圧調整回路により切り替える電圧供給回路を有し、前記電圧調整回路を切り替える電圧制御信号を記憶する電源電圧制御メモリを有する電圧設定回路を有し、前記半導体装置の回路の複数箇所に回路の電圧を検出する電圧検出スイッチを有し、前記電圧検出スイッチを指定することで電圧を検出する回路の位置を切り替え、且つ、前記電源電圧制御メモリにアドレスを指定して値を書き込む制御を行う回路スイッチ制御回路を有する半導体装置を用いる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、半導体装置に関し、特に、電源電圧を低くして消費電力を低減する半導体装置に関する。
【背景技術】
【0002】
近年、システムの省電力化のために、LSIの電源電圧が低下してきている。現状では、1.0Vまで低下しているが、近い将来は、電源電圧が0.5V、消費電力は現状の10分の1にする要求も出てきている。特に、メモリセルが縦横にマトリックス状に配列されたメモリセルアレイを有する半導体チップから成る半導体記憶装置では、低電圧化すると、動作不良を起こし、また、読み出し速度が悪化するので低電圧化は困難な状況である。
【0003】
メモリのなかでも、最も良く使用されており、必要不可欠なメモリはSRAMであるが、プロセスのばらつきにセンシティブであり、低電圧化には最も弱いメモリである。すなわち、電源電圧を下げて、それに合わせてトランジスタのしきい値(閾値)を出来るだけ低くして動作マージンを稼いでいるが、トランジスタの閾値はオフリーク(トランジスタのゲート電圧が0Vでも、トランジスタにリーク電流が流れてしまう現象)を低減するために、ある程度以上小さくすることはできず、電源ノードVDDの電圧が0.5Vであっても、閾値は0.3Vは必要となる。ゲート端子に加えてトランジスタを駆動する駆動電圧は、この閾値以上の電圧で、かつ、電源電圧以下の電圧を加える必要があるので、電源電圧が低くなると、駆動電圧のマージンが大幅に減少してしまう問題があった。このように、現状では、メモリのトランジスタの閾値を出来るだけ低くして動作マージンを稼いでいるが、オフリークが発生するため、十分には下げることが出来ない。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2008−181329号公報
【特許文献2】特開2002−350511号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
そのため、特許文献1等の技術では、図23のように、半導体装置1のチップの回路群を、機能別にまとめ、それぞれの機能の回路に異なる電圧の電源供給回路を接続する。例えば、アナログ回路やメモリは低電圧化が厳しいので、0.5Vの電圧を供給することが望ましい。ロジック回路は、シンプルな回路であれば、低電圧化のマージンが広いので、0.4Vを供給する。NOR回路やNAND回路など、特殊回路は低電圧化が厳しいので、0.5Vとか0.6Vを供給する。また、無線回路(RF回路)は高い電圧が必要であるが、常に電波を飛ばしているのではないので、必要なときに、スイッチをオンして回路を動作させることが望ましい。特許文献1では、この電源供給において、いずれかの回路が電源供給を不要とする場合は電源供給回路から切り離し、あるいは、電圧の低い電源供給回路に回路の接続を切り替えることで半導体装置1の消費電力を低減する技術が提案されている。
【0006】
特許文献1の機能ブロックのロジック回路に、特許文献2等で提案されているように図24のインバータチェーンで構成したリングオシレータを形成して機能ブロックをテストできる。ここで、比較的動作マージンの広いロジック回路においても、一部の回路(インバータチェーンで構成したリングオシレータの回路中の1つのインバータ)が動作不能に
なることにより、チップ全部が不良となる。図24のようなインバータチェーンで構成したリングオシレータで回路の動作を評価すると、電源電圧を限界まで低くすると、トランジスタのばらつきにより、特定のインバータが不良となる場合にリングオシレータの動作が停止することで不良トランジスタの存在を検知できる。
【0007】
しかし、機能ブロックのうちの記憶回路では、電源電圧を限界まで低くする場合の記憶回路の動作は、電源供給回路のトランジスタのばらつきにより電源電圧の供給にバラツキを生じるので、記憶回路の正常な動作を保障するには、その電源供給回路の供給する実際の電圧を検出する必要があった。
【0008】
ロジック回路においては、図24のリングオシレータでは、極低電圧のときに不良となるのは、局所的なトランジスタの特性のばらつき等で特定のインバータが不良となりリングオシレータが止まってしまうが、他のインバータは動作可能な状態になっている。このため、この対策として、この特定のインバータ(細分化すれば、不良トランジスタ)に関する回路へ供給する電源のみを改善することができれば、それ以外の回路部分は更に低電圧化できると考えられる。
【0009】
また、半導体回路の機能ブロック毎に電圧降下に違いがあるため、半導体装置のレイアウト設計を行う基礎データとするために、電圧降下の実態を正確に把握したい課題もあった。
【0010】
そのため、本発明は、半導体装置を、機能ブロック毎に、その機能ブロックに供給する電源電圧を正確に測定しつつ、その電源電圧を半導体装置が正常に動作し得る最小限界の電圧に調整して、半導体装置の消費電力を低減しつつ、高速に動作させることを課題とする。
【課題を解決するための手段】
【0011】
本発明は、上記課題を解決するために、半導体装置の回路が複数の回路ブロックに分割され、各前記回路ブロック毎に電源電圧を供給し、前記電源電圧を電圧調整回路により切り替える電圧供給回路を有し、前記電圧調整回路を切り替える電圧制御信号を記憶する電源電圧制御メモリを有する電圧設定回路を有し、前記半導体装置の回路の複数箇所に回路の電圧を検出する電圧検出スイッチを有し、前記電圧検出スイッチを指定することで電圧を検出する回路の位置を切り替え、且つ、前記電源電圧制御メモリにアドレスを指定して値を書き込む制御を行う回路スイッチ制御回路を有することを特徴とする半導体装置である。
【0012】
また、本発明は、上記の半導体装置であって、制御信号入力端子から制御信号を入力することにより、前記回路スイッチ制御回路の動作モードが、各前記電圧検出スイッチを指定する動作モードと、前記電源電圧制御メモリのアドレスを指定する動作モードとに切り替えられ、クロック端子からクロック信号を入力することにより、前記電圧検出スイッチの指定を切り替え、また、前記電源電圧制御メモリのアドレスの指定を切り替えることを特徴とする半導体装置である。
【0013】
また、本発明は、上記の半導体装置であって、前記電源電圧制御メモリのアドレスを指定する動作モードにおいて、前記電源電圧制御メモリに、前記制御信号入力端子から入力した信号の値を記憶させることを特徴とする半導体装置である。
【0014】
また、本発明は、上記の半導体装置であって、一部の前記電圧検出スイッチを、回路の領域の複数箇所の電源ノード又は接地ノードに設置したことを特徴とする半導体装置である。
【0015】
また、本発明は、上記の半導体装置であって、前記回路ブロック毎に、前記回路ブロックの動作を検査する回路ブロックテスト回路を具備することを特徴とする半導体装置である。
【0016】
また、本発明は、上記の半導体装置であって、前記回路ブロックの1つである記憶回路に設置した前記回路ブロックテスト回路が、前記電圧検出スイッチをメモリセルの回路に接続して電圧を検出することで前記記憶回路の動作を検査することを特徴とする半導体装置である。
【0017】
また、本発明は、上記の半導体装置であって、前記回路ブロックの1つであるロジック回路に設置した前記回路ブロックテスト回路が、前記ロジック回路の領域の各部分のインバータを複数接続したインバータチェーンで構成したリングオシレータで構成されていることを特徴とする半導体装置である。
【0018】
また、本発明は、上記の半導体装置であって、前記回路ブロックが更に細分化された複数の機能小ブロックに細分化され、細分化された前記機能小ブロック毎に前記複数の電圧供給回路を設置して電源電圧を供給することを特徴とする半導体装置である。
【発明の効果】
【0019】
本発明は、半導体装置において、その回路が複数の回路ブロックに分割され、各前記回路ブロック毎に電源電圧を供給する複数の電圧供給回路を有し、各前記回路ブロックに電源電圧を供給する複数の電圧供給回路を有し、前記電源供給回路の出力電圧を電圧調整回路で切り替える電圧制御信号を記憶する電源電圧制御メモリを有し、前記半導体装置の回路の複数箇所に回路の電圧を検出する電圧検出スイッチを設置し、各前記電圧検出スイッチのスイッチ開閉を制御し、且つ、前記電圧調整回路を制御する回路スイッチ制御回路を具備することで、回路の各部分の電圧を検出しながら、回路を機能ブロック毎に、その機能ブロックに供給する電源電圧を半導体装置が正常に動作し得る最小限界の電圧に調整することで、半導体装置の消費電力を低減しつつ、高速に動作させることができる効果がある。
【図面の簡単な説明】
【0020】
【図1】本発明の第1の実施形態の半導体装置の回路のブロック図である。
【図2】本発明の半導体装置の回路の電圧を検出する電圧検出スイッチの回路を示す図である。
【図3】本発明の回路スイッチ制御回路のブロック図である。
【図4】本発明の半導体装置を検査システムにより検査・調整する構成を示すブロック図である。
【図5】本発明の電圧設定回路のブロック図である。
【図6】本発明の電圧供給回路の回路図である。
【図7】本発明の半導体装置の回路ブロックの1つである記憶回路のブロック図である。
【図8】本発明の第1の実施形態の記憶回路のレイアウト図である。
【図9】本発明の記憶回路内の1つのメモリセルの回路図である。
【図10】本発明の第1の実施形態の、記憶回路に設置する回路ブロックテスト回路の1つであるテスト用メモリセルの回路図である。
【図11】本発明の第1の実施形態の記憶回路のメモリセルのスタティックノイズマージン特性のグラフを示す図である。
【図12】本発明の第1の実施形態の変形例1の、テスト用メモリセルの回路図である。
【図13】本発明の第1の実施形態の記憶回路用の電圧供給回路の出力電圧を調整する電源電圧調整処理の手順を示すフローチャートである。
【図14】本発明の第1の実施形態の変形例2の記憶回路へ電圧検出スイッチを設置する位置を示すレイアウト図である。
【図15】本発明の第1の実施形態の、ロジック回路に設置する回路ブロックテスト回路の1つであるインバータチェーンで構成したリングオシレータの回路図である。
【図16】本発明の第1の実施形態のロジック回路用の電圧供給回路の出力電圧を調整する電源電圧調整処理の手順を示すフローチャートである。
【図17】本発明の第1の実施形態のリングオシレータの出力電圧の振幅を示すグラフである。
【図18】本発明の第1の実施形態の変形例3の、リングオシレータを用いた回路ブロックテスト回路の回路図である。
【図19】本発明の第1の実施形態の変形例3の、ロジック回路用の電圧供給回路の出力電圧を調整する電源電圧調整処理の手順を示すフローチャートである。
【図20】本発明の第1の実施形態の変形例3の、リングオシレータの発振周波数を示すグラフである。
【図21】本発明の第1の実施形態の電圧供給回路の出力電圧を調整する電源電圧調整処理の手順を示すその他の方法のフローチャートである。
【図22】本発明の第2の実施形態の半導体装置の回路のブロック図である。
【図23】従来の半導体装置の回路のブロック図である。
【図24】従来の、半導体装置のロジック回路に設置する回路ブロックテスト回路の1つであるインバータチェーンで構成したリングオシレータの回路図である。
【発明を実施するための形態】
【0021】
<第1の実施形態>
以下、本発明の第1の実施形態を図面に基づいて詳細に説明する。図1に第1の実施形態の半導体装置1の回路のブロック図を示す。図2に、図1の回路の各箇所に接続した電圧検出スイッチSWr(r=1〜u)の回路図を示す。図3に、電圧検出スイッチSWrを選択し、電圧設定回路100の電圧切替制御用のメモリを選択する回路スイッチ制御回路400のブロック図を示す。図4に、この半導体装置1を外部から設定する検査システム2を示し、図5に半導体装置1の電圧設定回路100を示し、図6に電圧供給回路200を示す。図7に、図1の半導体装置1の回路の回路ブロック300のうち、記憶回路320のブロック図を示す。
【0022】
図1のように、半導体装置1は、アナログ回路310、記憶回路(メモリ)320、ロジック回路330、デジタル無線回路340とRF回路350とから構成される各回路ブロック300を有する。更に、半導体装置1は、電源端子Vextから入力された電圧を昇圧回路で昇圧し、その電圧を適宜低下させた電圧を発生させて、その電圧を各回路ブロック300に供給する電圧供給回路200と、各電圧供給回路200の電圧を指定する電圧設定回路100と、電圧設定回路100の専用メモリへの書き込み制御信号を発生する書込制御回路120を有する。回路スイッチ制御回路400は、電圧設定回路100を介して複数の電圧供給回路200(電源1〜4で示す)を制御する。
【0023】
p個の電圧供給回路200の出力端子は、個々の電源ノードVDDq(q=1〜p)に電圧供給回路200の個別の電源を供給する。そして、各回路ブロック300を接続する電源ノードVDDqの電圧を調整して必要な電圧を供給する。この電圧供給回路200は、例えば図1のように、
(1)RF回路350に1V±αの電圧を供給する電圧供給回路200の電源1と、
(2)ロジック回路330に0.6V±βの電圧を供給する電圧供給回路200の電源2と、
(3)アナログ回路310と記憶回路320とロジック回路330とデジタル無線回路340に0.5V±γの電圧を供給する電圧供給回路200の電源3と、
(4)ロジック回路330に0.4V±δの電圧を供給する電圧供給回路200の電源4と、で構成する。
【0024】
(電圧検出スイッチ)
半導体装置1の回路の、回路ブロック300の記憶回路(メモリ)320、その他の回路の測定点に、図2のような電圧検出スイッチSWr(r=1〜u)を接続してその回路の電圧を検出する。電圧検出スイッチSWrは、回路の電圧を測定する必要に応じて、ロジック回路330、電源ノードVDDq、接地ノードVSSに接続することができる。回路スイッチ制御回路400が、それらの電圧検出スイッチSWrのオン/オフを制御し、半導体装置1の回路の各箇所の電圧を外部出力端子であるモニター用端子MONに伝送する。
【0025】
図1のように、回路スイッチ制御回路400が電圧供給回路200(電源1〜4で示す)を制御して電圧を発生させ、電源ノードVDDqに電源電圧を供給するが、配線の抵抗による電圧降下により、半導体装置の回路のレイアウトの位置に依存して電圧が変わる。そのため、回路の各箇所に発生する実際の電圧を正確に測定するために、電圧検出スイッチSWrを回路に接続して電圧を検出する。また、電圧検出スイッチSWrは、回路の電圧を測定する必要に応じて、回路のあらゆる箇所に設置することができる。例えば、電源ノードVDDqに限らず、接地ノードVSS、及び、その他の回路の配線に電圧検出スイッチSWrを接続して電圧を検出することができる。
【0026】
図2のように、各電圧検出スイッチSWr(r=1〜u)は、Nチャネル型のトランジスタとPチャネル型のトランジスタから成るCMOSスイッチで構成する。回路スイッチ制御回路400の電圧検出スイッチアドレスデコーダ411から、スイッチ選択信号SELArと、その信号のハイレベルとロウレベルとを反転させたスイッチ選択信号SELArBを出力する。そのスイッチ選択信号SELArを、電圧検出スイッチSWr(r=1〜u)のNチャネル型のトランジスタのゲート電極に入力し、スイッチ選択信号SELArBをPチャネル型のトランジスタのゲート電極に入力することで、電圧検出スイッチSWrのゲートを開き、電圧検出スイッチSWrのオン/オフを制御する。こうして、電圧検出スイッチSWrのゲートを開くことで、電圧検出スイッチSWrの電圧測定端子が接続した回路(測定点)の電圧をモニター用端子MONに伝送することができる。
【0027】
(回路スイッチ制御回路)
以下で図3を用いて、半導体装置1の回路スイッチ制御回路400の構成を詳しく説明する。回路スイッチ制御回路400は、半導体装置1の動作モードを切り替える制御信号やその他の制御信号を入力する制御信号入力端子MODE_P(複数端子)と、モニター用カウンタを進めるためのクロック信号CLKを入力するクロック入力端子CLK_Pを有する。回路スイッチ制御回路400の回路ブロックは、電圧検出スイッチSWrの選択アドレスを生成する電圧検出スイッチアドレスカウンタ(レジスタ)410と、電圧検出スイッチアドレスデコーダ411と、電圧設定回路100の電源電圧制御メモリのアドレス番号信号SELB[t:0]を発生する電源アドレスカウンタ(レジスタ)420を備える。電圧設定回路100の電源電圧制御メモリは、それが記憶したデータを電圧制御信号SELCxとして各電圧供給回路200へ送信することでその出力電圧を制御する。
【0028】
図3のように、回路スイッチ制御回路400は、電圧検出スイッチアドレスカウンタ(レジスタ)410と電源アドレスカウンタ(レジスタ)420をカウンタで構成し、回路スイッチ制御回路400に接続する少数の制御信号入力端子MODE_P(複数端子)とクロック入力端子CLK_Pを半導体装置1の入出力端子として増設する。この構成により、図4のように、少数の制御信号入力端子MODE_P(複数端子)とクロック入力端子CLK_Pのみを半導体装置1に増設して半導体装置1の外部の検査システム2から制御することで、各電圧供給回路200を制御でき、また、半導体装置1内の多数の電圧検出スイッチSWrを制御できる効果がある。このように、この回路スイッチ制御回路400は、その回路を半導体装置1の回路に組み込む場合に、その回路の組み込みに伴い半導体装置1に増設する外部端子の数と、その外部端子用のインターフェース回路の増加が最小限に抑えられる効果がある。
【0029】
回路スイッチ制御回路400の制御信号入力端子MODE_P(複数端子)から入力する制御信号MODEnは、半導体装置1を以下の様に制御する制御信号として用いる。
(1)半導体装置1の電圧検出スイッチSWrを選択する電圧検出スイッチアドレスカウンタ(レジスタ)410の値を、クロック端子CLK_Pから加えるクロック信号CLKにより順にカウントアップすることで、電圧検出スイッチSWrを指定する動作モード(電圧検出スイッチ切り替えモード)を指令する制御信号。
(2)電源アドレスカウンタ(レジスタ)420の値のアドレス番号信号SELBtを、クロック端子CLK_Pから加えるクロック信号CLKにより順にカウントアップすることで、電圧設定回路100の電源電圧制御メモリのアドレスを指定する動作モード(電圧設定回路切り替えモード)を指令する制御信号。また、その制御信号と同時に加える制御信号であって、その電源アドレスカウンタ(レジスタ)420の値のアドレス番号信号SELBtが指定するアドレス番号の1ビット単位の電圧設定回路100の電源電圧制御メモリに書き込む”0”又は”1”のデータの指定を制御信号MODEnにより指定する。電圧設定回路100の1ビット単位の電源電圧制御メモリには、不揮発性メモリNVMと、揮発性メモリである電源電圧テスト用レジスタ110の1ビット単位の記憶回路とがある。
【0030】
(電圧検出スイッチの選定動作)
半導体装置1の内部の電圧検出スイッチSWrの選定と、その電圧検出スイッチSWrのゲートを開かせる動作は以下のように行う。図4のように、半導体装置1の外部の検査システム2から、半導体装置1の制御信号入力端子MODE_P(複数端子)に、電圧検出スイッチ切り替えモードを指令する制御信号MODEnを入力する。そのようにモードを切り替えた後に、クロック入力端子CLK_Pからクロック信号CLKを入力させることで、図3の電圧検出スイッチアドレスカウンタ(レジスタ)410の値を順にカウントアップする。そして、電圧検出スイッチアドレスカウンタ410の値を電圧検出スイッチアドレスデコーダ411が変換することで所定の電圧検出スイッチSWrのゲートを開かせるスイッチ選択信号SELArとSELArBを発生させる。
【0031】
(電圧設定回路)
図5には、電圧設定回路100を示す。電圧設定回路100は、恒久的にデータを記憶するEEPROM等の不揮発性メモリNVMと、一時的にテスト用のデータを記憶する揮発性メモリである電源電圧テスト用レジスタ110とから構成される電源電圧制御メモリを有し、また、電圧制御信号SELCxを記憶するラッチ160と、電圧設定回路100のレジスタとラッチへのデータの読み書きを制御する書込制御回路120を有する。電圧設定回路100は、これらの電源電圧制御メモリのアドレス番号信号SELBtを電源アドレスカウンタ(レジスタ)420から受信し、その値をアドレスデコーダ170が変換して1ビットのメモリセルを選択し、そのメモリセルに制御信号MODEnの書き込みデータビットが指定するデータを書き込む。電源電圧制御メモリのメモリセルに記憶したデータは論理素子で構成する回路で演算し、演算結果をラッチ160が記憶し、その値を電圧制御信号SELCxとして各電圧供給回路200に出力する。
【0032】
電圧設定回路100の1ビット単位の電源電圧制御メモリが、不揮発性メモリNVMと、揮発性メモリである電源電圧テスト用レジスタ110の1ビット単位の記憶セルとからなる。それらの電源電圧制御メモリを1ビット単位でアドレスデコーダ170が指定してそれらの電源電圧制御メモリに書き込む。不揮発性メモリNVMへのデータの読み書きは、制御回路130と、プリセット信号Preで駆動されるPMOSトランジスタTr1とセル選択トランジスタTr3と、トランジスタTr2とインバータ140で行う。不揮発性メモリNVMから読み出した値と揮発性メモリである電源電圧テスト用レジスタ110の1ビット単位の記憶セルから読み出した値をNAND回路150で合成して、その結果をラッチ回路160で記憶して出力信号SELCxとして各電圧供給回路200に出力する。
【0033】
(電圧設定回路の電源電圧制御用メモリへのデータの書き込み)
電源電圧制御用メモリのうち、不揮発性メモリNVMは恒久的にデータを記憶し、また、揮発性メモリである電源電圧テスト用レジスタ110は一時的データを記憶するが、それらの電源電圧制御用メモリの指定と、そのメモリへのデータの書き込みは以下のようにして行う。すなわち、先ず、図4のように、半導体装置1の外部の検査システム2から、半導体装置1の制御信号入力端子MODE_P(複数端子)に、電源アドレスカウンタ(レジスタ)420の値をカウントアップする動作モード(電圧設定回路切り替えモード)を指令する制御信号MODEnを入力する。そのようにモードを切り替えた後に、クロック入力端子CLK_Pからクロック信号CLKを入力させることで、図3の電源アドレスカウンタ(レジスタ)420の値を順にカウントアップする。電源アドレスカウンタ(レジスタ)420の値のアドレス番号信号SELBtを電圧設定回路100のアドレスデコーダ170がデコードして1ビットの電源電圧制御用メモリを選定する。そして、その1ビットの電源電圧制御用メモリに、制御信号MODEnの書き込みデータビットのデータを書き込む。
【0034】
(電圧設定回路の不揮発性メモリNVMの動作)
電圧設定回路100の不揮発性メモリNVMは、以下のように読み書きする。すなわち、図5の電圧設定回路100のように、Tr1のドレイン端子が電源ノードVDDに接続され、ソース端子が、不揮発性メモリNVMへの書き込み時に書き込み制御回路から出力される書き込み信号PRNが制御回路130を介して選択的に出力される書き込み信号線PRN0に接続されている。電圧設定回路100の各回路ユニットは、制御回路130が、セル選択トランジスタTr3のゲートを開くとともに、不揮発性メモリNVMのゲート端子に不揮発性メモリ選択信号Nstを送信する。ここで、書き込み信号PRN0は書き込み時のみ出力される信号であり、読み出し時は制御回路と切り離される。
【0035】
(不揮発性メモリNVMが消去状態のときの回路の動作)
不揮発性メモリNVMの読み出し時は、まず、プリチャージ信号Preが一定期間Lowレベルとなり、プリチャージトランジスタTr1がオンし、書き込み信号線PRN0がVDDにプリチャージされる。もし、不揮発性メモリNVMが消去状態のときは、不揮発性メモリNVMはオン状態である。そのため、不揮発性メモリNVMのドレイン端子の電位は接地ノードVSSの電位(0V)に低下し、その電位がインバータ140で反転されて、インバータ140の出力に信号”1”が出力され、その信号がNAND回路150に入力される。NAND回路150の他方の入力端子には、電源電圧テスト用レジスタ110の出力端子が接続され、電源電圧テスト用レジスタ110のデータが反転された信号が出力されラッチ回路160で記憶される。そのラッチ回路160が記憶したデータが出力信号SELCxとして各電圧供給回路200に出力され、その出力する電源電圧を制御する。
【0036】
(不揮発性メモリNVMにデータが書き込まれている状態のときの回路の動作)
一方、もし、不揮発性メモリNVMにデータが書き込まれている状態のときは、不揮発性メモリNVMはオフ状態である。その状態で制御回路130から、不揮発性メモリ選択信号Nstが不揮発性メモリNVMのゲート端子に送信されても、不揮発性メモリNVM
はオフ状態であり、不揮発性メモリNVMのドレイン端子の電位は電源ノードVDDの電位になり、その電位がインバータ140で反転されて、インバータ140の出力に信号”0”が出力され、その信号がNAND回路150に入力される。このときは、NAND回路150の他方の入力端子に入力されている電源電圧テスト用レジスタ110のデータの値にかかわらず、不揮発性メモリNVMのデータに由来するインバータ140の出力信号”0”が反転された”1”信号がNAND回路150から出力されてラッチ回路160で記憶される。これにより、ラッチ回路160の出力信号SELCxに"1"が出力される。この出力信号SELCxは、各電圧供給回路200の電圧調整回路210へ入力され、電圧レギュレータ220の出力電圧を設定値に調整する。
【0037】
(電圧供給回路の電圧の微調整)
図6に電圧供給回路200の回路を示す。電圧供給回路200は、電圧調整回路210と、電圧レギュレータ220と電圧トリミングデコーダ230からなり、電圧レギュレータ220は、オペアンプ221が、その出力端子の電源ノードVDDqに電圧を出力し、オペアンプ221の正の入力端子に基準電圧VREFを入力する。電圧調整回路210にNMOSトランジスタTrVxを設置し、そのゲート端子に電圧設定回路100の出力信号SELCxを入力する。電圧調整回路210に分割抵抗を設置し、電圧レギュレータ220のオペアンプ221が出力端子の電源ノードVDDqに発生する電圧を、その分割抵抗で分圧する。分割抵抗の所定位置にNMOSトランジスタTrVxのドレイン端子を接続し、NMOSトランジスタTrVxのソース端子を電圧レギュレータ220のオペアンプ221の負の入力端子に接続する。
【0038】
こうして、電圧設定回路100の出力信号SELCxによって電圧調整回路210が切り替えられ、電圧調整回路210が電圧レギュレータ220のオペアンプ221の出力端子の電源ノードVDDqの電圧を分圧させてオペアンプ221の負の入力端子にフィードバックさせる。オペアンプ221が、電圧調整回路210によって切り替えられて負の入力端子にフィードバックされた電圧と、正の入力端子に入力された基準電圧VREFとを比較して、オペアンプ221の出力端子に電源ノードVDDqに供給する電圧を出力する。例えば、基準電圧VREFが0.2Vで、電圧設定回路100の出力信号SELCxの数本の信号線を入力端子に接続した電圧トリミングデコーダ230が信号SELCxに応じて、電源ノードVDDqの電圧を1/2に分圧した位置にドレイン端子を接続したNMOSトランジスタTrV1のゲートを開き、そのドレイン端子の位置の電圧をNMOSトランジスタTrV1のソース端子を接続したオペアンプ221の負の入力端子にフィードバックさせる。この状態の場合は、オペアンプ221の出力端子の電源ノードVDDqに、基準電圧VREFの電圧の2倍の0.4Vの電圧が出力される。
【0039】
(回路ブロック)
回路ブロック300には、図1のように、アナログ回路310、記憶回路320、ロジック回路330、デジタル無線回路340とRF回路350がある。RF回路350は、半導体装置1の外部と無線信号を送受するアンテナ351に接続されている。それぞれの回路ブロック300には、回路ブロックテスト回路301を設ける。それぞれの回路ブロック300の回路ブロックテスト回路301が、その回路ブロック300の機能毎に、回路ブロック300の動作をチェックする回路を構成する。回路ブロックテスト回路301としては、回路ブロックテスト信号入力端子TESTより検査システム2からテスト信号を受信することで動作する回路を構成することができる。回路ブロックテスト回路301の他の構成として、その回路ブロック300の回路の電圧を電圧検出スイッチSWrでモニター用端子MONまで伝送して、検査システム2の電圧測定装置21がその電圧を測定することで回路ブロック300の動作をチェックすることができるようにする回路構成にもできる。また、回路ブロックテスト回路301が、回路ブロック300の動作を能動的にチェックして、その能動的チェック動作による動作の良否の判定結果を回路ブロック動作確認パッドRESより出力して検査システム2に通知する回路構成にもできる。
【0040】
(記憶回路)
以下で、図7から図13を参照して、記憶回路320の回路ブロックテスト回路301の動作を説明する。図7に、半導体チップの一部をなす記憶回路320の例として、SRAMの記憶回路320の回路図を示す。この記憶回路320は1ビットの記憶単位の回路を示す。図7に示すように、記憶回路320は、回路ブロックテスト回路301と、メモリセルアレイ321、行デコーダ322、列デコーダ323、列ゲート324、センスアンプ325、メモリセルから読出したデータを出力する出力バッファ326、アドレス入力回路327から構成されている。図8に、記憶回路320の回路ブロックのレイアウトを示す。図8の記憶回路320の領域に、回路ブロックテスト回路301として、複数のテスト用メモリセルMtestを設置する。
【0041】
図7のように、記憶回路320が、メモリセルアレイ321から読み出したデータの信号を出力バッファ326の出力端子Doutに出力する。記憶回路320の外部から入力されたメモリアドレス信号A0、A1〜A23をアドレス入力回路327が一時的に格納し、そのメモリアドレスを行デコーダ322と列デコーダ323が変換して、メモリセルアレイ321のメモリセルMhk(h=0〜m、k=0〜n)を選択する行選択信号と列選択信号を生成する。
【0042】
記憶回路320の集積回路チップの領域に記憶の最小単位であるメモリセルM00からM2nが規則正しく縦横にマトリックス状に並べられてメモリセルアレイ321を構成している。行方向に配列されるメモリセルM00からM0nのゲートに共通に行線ノードWL0が接続され、行方向に配列されるメモリセルM10からM1nのゲートには共通に行線ノードWL1が接続され、メモリセルM20からM2nのゲートには共通に行線ノードWL2が接続される。これらの行線ノードWLhに行デコーダ322から行選択信号が送信されることによりメモリセルの行が選択される。
【0043】
アドレス入力回路327から行デコーダ322に行アドレスが入力され、行デコーダ322が行選択信号を行線ノードWLhに出力することでメモリ素子Mh0〜Mhn(h=0〜m)が配列されたメモリセルアレイ321の第h行が選択される。
【0044】
また、列方向に配列されるメモリセルM00からM20のドレイン端子には共通に、列ゲート324の列線ノードBL0が接続される。列線ノードBL0は、列ゲート324の列選択トランジスタCG0のソース端子に接続する。列選択トランジスタCG0のゲートには列デコーダ323の列選択ノードCOL0が接続され、その列選択ノードCOL0には列デコーダ323から列選択信号が送信されて列選択トランジスタCG0が駆動される。列ゲート324の列選択トランジスタCG0からCGnのドレインをセンスアンプ325の共通ノードに接続する。列方向に配列されるメモリセルM0nからM2nのドレインには共通に列ゲート324の列線ノードBLnを接続し、列線ノードBLnは、列デコーダ323の列選択ノードCOLnにゲートが接続されている列選択トランジスタCGnのソース端子に接続する。同様に、列線ノードBL0Bも、メモリセルM00からM20に接続される。
【0045】
図9は、図7に示すSRAMのメモリセルMhk(h=0〜m、k=0〜n)の回路図を示す。図9のメモリセルMhkは、フルCMOSシングルポートSRAMセルの回路構成を有する。図9において、メモリセルMhkは、ハイ側電源ノードVDDとストレージノードV0(IN)との間に接続されかつそのゲートがストレージノードV1(OUT)に接続されるPチャネルMOSトランジスタ(絶縁ゲート型電界効果トランジスタ)P1と、ストレージノードV0とロー側電源ノードVSSの間に接続されかつそのゲートがス
トレージノードV1に接続されるNチャネルMOSトランジスタN1と、ハイ側電源ノードVDDとストレージノードV1の間に接続されかつそのゲートがストレージノードV0に接続されるPチャネルMOSトランジスタP2と、ストレージノードV1とロー側電源ノードVSSとの間に接続されかつそのゲートがストレージノードV0に接続されるNチャネルMOSトランジスタN2と行線ノードWLh上の電圧に従ってストレージノードV0およびV1を、それぞれ、列線ノードBLおよびBLBに結合するNチャネルMOSトランジスタTa1およびTa2を含む。
【0046】
この図9に示すメモリセルMhkの構成においては、PMOSトランジスタP1およびNMOSトランジスタN1がCMOSインバータを構成し、また、PMOSトランジスタP2およびNMOSトランジスタN2が、CMOSインバータを構成し、これらのインバータの入力および出力が交差結合されて、インバータラッチ(フリップフロップ)を構成する。ストレージノードV0(IN)およびV1(OUT)には、互いに相補なデータが保持される。このインバータラッチのデータ保持力に応じて、データ書込/読出時のマージンが決定される。
【0047】
SRAMの動作のばらつきの要因としては、SRAMを構成するトランジスタのバラツキが主要因となり、
(1)PMOSトランジスタ、P1,P2、NMOSトランジスタN1、N2、トランスファートランジスタTa1、Ta2の閾値Vt、コンダクタンスgm、モービリティμのばらつきが影響する。
(2)トランスファートランジスタTa1、Ta2に関しては、バックバイアス特性のばらつきも影響する。
また、SRAMの回路動作としては、インバータを構成する特性の第1のベータレシオ
β1∝β(N1)/β(Ta1)
β2∝β(N2)/β(Ta2)
が大きくなると、図11に示す眼鏡状を成すスタティックノイズマージンの電圧のグラフの、眼鏡状のグラフの低電圧側の眼鏡の幅が広くなり、スタティックノイズマージンが増す。
一方、第2のベータレシオ
β3∝β(P1)/β(N1)
β4∝β(P2)/β(N2)
が大きくなると、スタティックノイズマージンの電圧のグラフの、眼鏡状のグラフの高電圧側の眼鏡の幅が広くなり、スタティックノイズマージンが増す。
SRAMを構成するトランジスタのバラツキにより、第1のベータレシオと第2のベータレシオがばらつき、その結果、図11に示すスタティックノイズマージンの大きさがばらつく影響があらわれる。
【0048】
(回路ブロックテスト回路)
図7に示す記憶回路320の回路ブロック300における回路ブロックテスト回路301は、図10のようなテスト用メモリセルMtestを複数用いて構成することができる。すなわち、半導体装置1の集積回路チップにおける、図8のような記憶回路320の回路ブロック300の領域に、複数のテスト用メモリセルMtestを設置する。各テスト用メモリセルMtestは、図10のように、第1のテスト用メモリセルMt1と第2のテスト用メモリセルMt2とで構成する。検査システム2の測定装置21がこのテスト用メモリセルMtestを測定することにより、SRAMのメモリセルMhk(h=0〜m、k=0〜n)の動作マージンを検査し、また、その動作マージンの位置によるバラツキを検査する。
【0049】
図10のように、テスト用メモリセルMtestの第1のテスト用メモリセルMt1の
ストレージノードV0(IN)に接続するトランスファートランジスタTa1と、第2のテスト用メモリセルMt2のストレージノードV1(OUT)に接続するトランスファートランジスタTa2に回路ブロックテスト信号入力端子TESTを接続する。そして、第1のテスト用メモリセルMt1のストレージノードV1に電圧検出スイッチSW1を接続し、第2のテスト用メモリセルMt2のストレージノードV0に電圧検出スイッチSW2を接続する。回路スイッチ制御回路400が、電圧検出スイッチアドレスカウンタ(レジスタ)410のアドレス値でテスト用メモリセルMtestを選択して、選択されたテスト用メモリセルMtestの電圧検出スイッチSW1をオンにしてストレージノードV1の電圧をモニター用端子MON1に伝送するとともに、電圧検出スイッチSW2をオンにしてストレージノードV0の電圧をモニター用端子MON2に伝送する。なお、第1のテスト用メモリセルMt1のストレージノードV0と第2のテスト用メモリセルMt2のストレージノードV1は、回路ブロックテスト信号入力端子TESTの電位とほとんど同じ電位であるが、それらのストレージノードの電位も正確に測定するために、それらのストレージノードにも、新たな電圧検出スイッチを接続して、それらの位置の電位を別のモニター用端子に伝送する回路構成にしても良い。
【0050】
(メモリセルの動作マージン検査処理)
メモリセルの動作マージンの検査は、図4のような検査システム2が、外部から半導体装置1の内部の電圧を測定することで、半導体装置1の記憶回路320の回路ブロック300のメモリセルの動作マージンを検査する。検査システム2は、図4のように、電圧測定回路21と駆動電圧走査回路22と検査システム記憶回路23と検査システム演算回路24で構成する。この検査システム2から半導体装置1の制御信号入力端子MODE_P(複数端子)に制御信号MODEnが入力され、クロック入力端子CLK_Pにクロック信号CLKのパルスが所定数入力されることにより電源アドレスカウンタ(レジスタ)420の値をカウントアップする。
【0051】
半導体装置1の電源アドレスカウンタ(レジスタ)420の値が電源電圧制御用メモリのメモリセルを選定するアドレス番号信号SELBtとなる。そのアドレス番号信号SELBtにより、電源電圧テスト用レジスタ110のメモリセルを指定して、検査システム2が、制御信号MODEnの値を、半導体装置1の制御信号入力端子MODE_Pから入力してそのメモリセルに書き込む。こうして電源電圧テスト用レジスタ110に所定のデータを記憶する。そのデータによって、電圧設定回路100が各電圧供給回路200に信号SELCxを出力する。その信号SELCxにより各電圧供給回路200の出力する電圧が制御される。
【0052】
そして、以下のように、検査システム2の電圧測定回路21がメモリセルの電圧を測定してメモリセルのスタティックノイズマージン(SNM)を検査しつつ、記憶回路320に電源を供給する最小限の電圧の電圧供給回路200を探索する。すなわち、検査システム2は、記憶回路320の回路ブロック300に電源を供給する電圧供給回路200を、電圧が高い電圧供給回路200から電圧が低い電圧供給回路200に順次に切り替えて、その電圧の適否を検査システム2が検査する。それにより、記憶回路320の回路ブロック300毎に、その回路ブロック300に供給する最小限度の電源電圧を探索して設定する。
【0053】
(メモリに供給する電圧の適否の判定処理)
検査システム2が、半導体装置1の回路スイッチ制御回路400を制御することで、半導体装置1のチップのレイアウト中の図8のような記憶回路320の回路ブロック300中の複数箇所に設けたテスト用メモリセルMtest毎に、メモリセルの動作マージンを検査する。すなわち、以下のように、スタティックノイズマージン(SNM)のデータを計算し、半導体装置1の記憶回路320のメモリセルの動作マージンを検査する。
【0054】
以下のようにして、半導体装置1の記憶回路320の1つの回路ブロック300の回路ブロックテスト回路301の所定位置に図8のように設置したテスト用メモリセルMtestの、図10のような回路の位置のストレージノードV1(OUT)とV0(IN)の電圧を測定する。先ず、電圧検出スイッチアドレスカウンタ(レジスタ)410の値を電圧検出スイッチアドレスデコーダ411が変換した出力信号が選択した電圧検出スイッチSWrのゲートを開く。すなわち、テスト用メモリセルMtestの回路のストレージノードV1(OUT)とV0(IN)に接続する電圧検出スイッチSWrのゲートを開く。そして、そのストレージノードV1(OUT)とV0(IN)の電圧をモニター用端子MON1とMON2に伝送する。図4のように、検査システム2が、駆動電圧走査回路22が、半導体装置1の回路ブロックテスト信号入力端子TESTに電圧を加えつつ、電圧測定装置21が、モニター用端子MON1とMON2の電圧を測定する。
【0055】
検査システム2の駆動電圧走査回路22は、半導体装置1の回路ブロックテスト信号入力端子TESTに0Vから電源ノードVDDの電圧(1V)までの電圧を順次に切り替えて加えることで、その電圧を図10のテスト用メモリセルMtestの回路に加える。これにより、半導体装置1のテスト用メモリセルMtestが回路ブロックテスト信号入力端子TESTから加えられた電圧に応答して発生した電圧を、モニター用端子MON1とMON2から取り出して検査システム2の電圧測定装置21で測定する。こうして、検査システム2が、駆動電圧走査回路22により回路ブロックテスト信号入力端子TESTに加える電圧を走査しつつ、モニター用端子MON1およびモニター用端子MON2の電圧を電圧測定装置21で測定することで、第1のテスト用メモリセルMt1のストレージノードV1の電圧と第2のテスト用メモリセルMt2のストレージノードV0の電圧の変化を測定する。そして、検査システム演算回路24が、以下に説明するスタティックノイズマージン特性のグラフのデータを作成し、そのグラフからスタティックノイズマージン(SNM)を計算し、メモリセルの動作マージンを判定する検査処理を実施する。
【0056】
(スタティックノイズマージンの計算処理)
以下で、検査システム2による、スタティックノイズマージン(SNM)の計算処理の手順を詳しく説明する。先ず、検査システム2の駆動電圧走査回路22が、半導体装置1の回路ブロックテスト信号入力端子TESTに電圧を加え、その電圧を0Vから電源ノードVDDの電圧(1V)まで順次に切り替えつつ、検査システム2が半導体装置1の記憶回路320の動作を検査する。目標の動作電圧は、0.5Vであるが、ここで、1Vまで電圧を上げるのは、動作範囲を確認するためである。
【0057】
この回路ブロックテスト信号入力端子TESTに加えた電圧が第1のテスト用メモリセルMt1に、トランスファートランジスタTa1を介してストレージノードV0(IN)に入力する電圧を変化させるので、第1のテスト用メモリセルMt1のストレージノードV1(OUT)の電圧がそれに応じて変化する。このストレージノードV1(OUT)の電圧をモニター用端子MON1に伝送し、その電圧を検査システム2の電圧測定装置21が測定して、ストレージノードV1(OUT)の電圧を、回路ブロックテスト信号入力端子TESTに加えた電圧(その電圧をストレージノードV0(IN)の電圧とみなす)の関数として検査システム記憶回路23に記憶する。すなわち、検査システム2が、第1のテスト用メモリセルMt1のストレージノードV0(IN)に入力した電圧の関数のストレージノードV1(OUT)の電圧を検査システム記憶回路23が記憶する。
【0058】
検査システム2の駆動電圧走査回路22が半導体装置1の回路ブロックテスト信号入力端子TESTに加えて0Vから電源ノードVDDの電圧(1V)まで変化させた電圧は、同時に第2のテスト用メモリセルMt2に、トランスファートランジスタTa2を介してストレージノードV1(OUT)に入力されるので、第2のテスト用メモリセルMt2の
ストレージノードV0(IN)の電圧がそれに応じて変化する。このストレージノードV0(IN)の電圧をモニター用端子MON2に伝送し、その電圧を検査システム2の電圧測定装置21が測定して、ストレージノードV0(IN)の電圧を、回路ブロックテスト信号入力端子TESTに加えた電圧(その電圧をストレージノードV1(OUT)の電圧とみなす)の関数として検査システム記憶回路23に記憶する。すなわち、第2のテスト用メモリセルMt2のストレージノードV1(OUT)に入力した電圧の関数のストレージノードV0(IN)の電圧を検査システム記憶回路23が記憶する。
【0059】
次に、図11のように、検査システム演算回路24が、検査システム記憶回路23に記憶した、第1のテスト用メモリセルMt1のストレージノードV0の電圧の関数としてのストレージノードV1の電圧のグラフ(スタティックノイズマージン特性)のデータと、第2のテスト用メモリセルMt2のストレージノードV1の電圧の関数としてのストレージノードV0の電圧のグラフ(スタティックノイズマージン特性)のデータを比較する演算処理を行う。図11のスタティックノイズマージン特性のグラフは、全て、選択行線ノードWLhの電圧レベルが電源ノードVDDの電圧の場合のグラフを示すが、実線で示される曲線V0およびV1が、それぞれストレージノードV0およびV1のスタティックノイズマージン特性をあらわす。図11(a)と(c)は電源ノードVDDの電圧が1.0Vの場合のグラフであり、図11(b)と(d)は電源ノードVDDの電圧が0.5Vの場合のグラフである。
【0060】
図11(a)に、SRAMのメモリセルMhkを構成するCMOSインバータのスタティックノイズマージン特性を示す。スタティックノイズマージンSNMは、図11(a)の曲線V0およびV1の間の2つの、二重枠の正方形の対角線で示される。この対角線の長さが長いほど、ノイズに対してマージンがあることを示す。検査システム演算回路24が、この特性図における、曲線V0およびV1の間の2つの正方形の対角線の長さ(2つ)を計算して、スタティックノイズマージンSNMとして検査システム記憶回路23に記憶する。
【0061】
プロセスが微細化されてメモリセルMhkを構成する2つのCMOSインバータのトランジスタの特性がばらつくと、このスタティックノイズマージン特性がアンバランスになり、例えば、図11(c)のように、1つの正方形の対角線が短くなる特性図が得られ、動作マージンが悪化する。また、図11(a)と(c)は電源ノードVDDの電圧が1.0Vの例であるが、今後、低電圧化の要求により、メモリセルMhkに供給される電源ノードVDDの電圧が0.5Vになると、図11(b)と(d)のように、更に動作マージンが悪化し、最悪、図11(d)のようになると、1つの正方形の対角線の長さがほとんどゼロになるので、記憶回路320が動作不良を起こす。
【0062】
以上のように、検査システム演算回路24が、テスト用メモリセルMtestの第1のテスト用メモリセルMt1のストレージノードV0(IN)に入力した電圧を横軸にし、ストレージノードV1(OUT)の電圧を縦軸にしたグラフと、第2のテスト用メモリセルMt2のストレージノードV1(OUT)に入力した電圧を横軸にし、ストレージノードV0(IN)の電圧を縦軸にしたグラフを重ね合わせたグラフのデータを作成して、図11(a)の曲線V0およびV1の間の二重枠の正方形の対角線の長さで定義されるスタティックノイズマージンSNMを計算する。そして、検査システム演算回路24は、スタティックノイズマージンSNMが所定範囲内にある場合に、メモリセルが正常に機能すると判定する。
【0063】
このようにして、検査システム2は、半導体装置1の記憶回路320の全部のテスト用メモリセルMtestを検査し、それらのメモリセルMtestのスタティックノイズマージンSNMが所定範囲内にある場合に、記憶回路320が正常に機能すると判定する演算を行う。検査システム2は、こうして、記憶回路320が正常に機能する最小限度の、記憶回路320に供給する電源電圧の値を探索する。そして、その電源電圧を半導体装置1に記憶させ、半導体装置1が最小限度の消費電力で動作し得るように設定する。
【0064】
(変形例1)
記憶回路320における回路ブロックテスト回路301のテスト用メモリセルMtestとしては、図10の構成以外に、図12の構成のテスト用メモリセルMtestを用いることができる。図12のテスト用メモリセルMtestは、記憶回路320で実働するメモリセルMhkに周辺回路を追加することで、そのメモリセルMhkのスタティックノイズマージンSNMを直に測定する回路ブロックテスト回路301としたものである。図12のメモリセルMtestは、実働するメモリセルMhkに周辺回路を追加することで構成するので、記憶回路320の全部のメモリセルMhkに周辺回路を追加してテスト用メモリセルMtestにすることができる。そうすることで、全てのメモリセルMhkのタティックノイズマージンSNMを測定する回路を構成することもできる。
【0065】
図12のテスト用メモリセルMtestは、電圧検出スイッチアドレスデコーダ411が電圧検出スイッチアドレスカウンタ(レジスタ)410の値をデコードすることで検査すべきメモリセルMhkを選択するとともに、1つのメモリセルに対して2つのメモリ検査モードを選ぶ。すなわち、電圧検出スイッチアドレスデコーダ411は、回路ブロックテスト信号入力端子TESTに接続して電圧信号を入力する電圧入力スイッチSWIrとSWI(r+1)と、モニター用端子MONに接続して電圧信号を出力する電圧検出スイッチSWrとSW(r+1)を開閉することで、1つのメモリセルMhkに対して2つのメモリ検査モードを切り替えて検査用回路を構成する。
【0066】
(1つ目のメモリ検査モード)
1つ目のメモリ検査モードは、回路ブロックテスト信号入力端子TESTに加えた電圧を、メモリセルMhk用の電圧入力スイッチSWIrを通じて、トランスファートランジスタTa1を介してストレージノードV0(IN)に接続し、メモリセルMhkのストレージノードV1(OUT)の電圧を電圧検出スイッチSWrを通じてモニター用端子MON(MON1)に出力する検査回路を構成する。ここで、回路ブロックテスト信号入力端子TESTの電位がトランスファートランジスタTa1を介して加えられたストレージノードV0の電位は回路ブロックテスト信号入力端子TESTの電位とほとんど同じ電位であるが、そのストレージノードV0の電位も正確に測定するために、このメモリ検査モードにおいて、ストレージノードV0にも、新たな電圧検出スイッチを接続して、その位置の電位を別のモニター用端子MON(MON2)に伝送する回路構成にしても良い。
【0067】
(2つ目のメモリ検査モード)
2つ目のメモリ検査モードは、回路ブロックテスト信号入力端子TESTに加えた電圧を、メモリセルMhk用の電圧入力スイッチSWI(r+1)を通じて、トランスファートランジスタTa2を介してストレージノードV1(OUT)に接続し、メモリセルMhkのストレージノードV0(IN)の電圧を電圧検出スイッチSW(r+1)を通じてモニター用端子MON(MON1)に出力する検査回路を構成する。ここで、1つ目のメモリ検査モード用の回路の場合と同様にして、回路ブロックテスト信号入力端子TESTの電位がトランスファートランジスタTa2を介して加えられたストレージノードV1の電位も正確に測定するために、このメモリ検査モードにおいて、ストレージノードV1にも、新たな電圧検出スイッチを接続して、その位置の電位を別のモニター用端子MON(MON2)に伝送する回路構成にしても良い。
【0068】
電圧検出スイッチアドレスデコーダ411が、テスト用メモリセルMtest毎にこの2つのメモリ検査モード用の2つの指令を、電圧検出スイッチアドレスカウンタ(レジス
タ)410から与えられ、その指令をデコードして電圧入力スイッチSWIr、SWI(r+1)と電圧検出スイッチSWr、SW(r+1)を制御する。なお、その電圧検出スイッチアドレスカウンタ(レジスタ)410の値は、検査システム2が、半導体装置1の回路スイッチ制御回路400を電圧検出スイッチ切り替えモードに設定した後に、クロック端子CLK_Pからクロック信号を入力することで電圧検出スイッチアドレスカウンタ(レジスタ)410をカウントアップすることで設定する。
【0069】
1つ目のメモリ検査モードにより、検査システム2の駆動電圧走査回路22が半導体装置1の回路ブロックテスト信号入力端子TESTに加える電圧を変化させ、モニター用端子MONの電圧を検査システム2の電圧測定装置21が測定することで、回路ブロックテスト信号入力端子TESTからトランスファートランジスタTa1を介してストレージノードV0(IN)に入力した電圧の関数として、ストレージノードV1(OUT)の電圧を検査システム記憶回路23が記憶する。同様にして2つ目のメモリ検査モードにより、検査システム2の駆動電圧走査回路22が半導体装置1の回路ブロックテスト信号入力端子TESTに加える電圧を変化させ、モニター用端子MONの電圧を検査システム2の電圧測定装置21が測定することで、回路ブロックテスト信号入力端子TESTからトランスファートランジスタTa2を介してストレージノードV1(OUT)に入力した電圧の関数として、ストレージノードV0(IN)の電圧を検査システム記憶回路23が記憶する。
【0070】
次に、図11のように、検査システム演算回路24が、検査システム記憶回路23に記憶した、ストレージノードV0の電圧の関数としてのストレージノードV1の電圧のグラフ(スタティックノイズマージン特性)のデータと、ストレージノードV1の電圧の関数としてのストレージノードV0の電圧のグラフ(スタティックノイズマージン特性)を重ね合わせたグラフのデータを作成して、図11(a)の曲線V0およびV1の間の二重枠の正方形の対角線の長さで定義されるスタティックノイズマージンSNMを計算する。そして、検査システム演算回路24は、スタティックノイズマージンSNMが所定範囲内にある場合に、メモリセルが正常に機能すると判定する演算を行う。検査システム2は、こうして、記憶回路320が正常に機能する最小限度の、記憶回路320に供給する電源電圧の値を探索する。そして、その電源電圧を半導体装置1に記憶させ、半導体装置1が最小限度の消費電力で動作し得るように設定する。
【0071】
(メモリ用回路ブロックに接続する電圧供給回路の出力電圧の調整手順)
図13のフローチャートに、検査システム2が半導体装置1の記憶回路320に、その回路ブロック300に最小限度の電圧を供給する電圧供給回路200の出力電圧を探索して調整する、電源電圧調整処理の手順を示す。
(ステップS1)
半導体装置1の外部の検査システム2が、半導体装置1の回路スイッチ制御回路400の制御信号入力端子MODE_P(複数端子)から、半導体装置1を電圧設定回路切り替えモードで動作させる制御信号MODEnを入力する。
【0072】
(ステップS2:メモリ用の電源電圧テスト用レジスタの設定)
次に、半導体装置1の外部の検査システム2が、クロック信号CLKをクロック入力端子CLK_Pから入力することで、電源アドレスカウンタ(レジスタ)420の値のアドレス番号信号SELBtをカウントアップする。電源アドレスカウンタ(レジスタ)420は、その値により、電圧設定回路100に、記憶回路320用の電源ノードVDDqに供給する電圧を記憶する電源電圧テスト用レジスタ110の各ビットのアドレスを指定する。そして、電源アドレスカウンタ(レジスタ)420が制御信号SELBtとして送信したそのアドレスの電源電圧テスト用レジスタ110の1ビット毎に、検査システム2が半導体装置1の制御信号入力端子MODE_Pから入力した制御信号MODEnのデータ
を書き込む。
【0073】
電源切替回路100が、電源電圧テスト用レジスタ110の記憶データを不揮発性メモリNVMの記憶データと論理演算して信号SELCxを出力端子から出力し、電圧供給回路200が、それにより指定された電圧を記憶回路320用の電源ノードVDDqに出力する。この処理で電源電圧テスト用レジスタ110が指定する電圧は、高い電圧から低い電圧に順次に切り替えつつ、以下の処理を実行する。
【0074】
(ステップS3)
次に、検査システム2が、半導体装置1の制御信号入力端子MODE_P(複数端子)から、半導体装置1を電圧検出スイッチ切り替えモードで動作させる制御信号MODEnを入力する。
【0075】
(ステップS4:テスト用メモリセルMtestの検査)
次に、半導体装置1の外部の検査システム2が、クロック信号CLKをクロック入力端子CLK_Pから入力することで、電圧検出スイッチアドレスカウンタ(レジスタ)410をカウントアップする。電圧検出スイッチアドレスデコーダ411が、電圧検出スイッチアドレスカウンタ(レジスタ)410の値を変換して、図10のテスト用メモリセルMtestのストレージノードV1とV0の電圧を測定するスイッチSW1とSW2を同時に選択してオンにするスイッチ選択信号SELArとSELArBを出力する。そして、ストレージノードV1とV0の電圧をモニター用端子MON1とMON2に伝送する。そのモニター用端子MON1とMON2の電圧を検査システム2の電圧測定装置21が測定する。
【0076】
(ステップS5)
次に、検査システム2の駆動電圧走査回路22を、回路ブロックテスト信号入力端子TESTに接続して、駆動電圧走査回路22が、回路ブロックテスト信号入力端子TESTに、0Vから電源ノードVDDの電圧(1V)まで順次に増加する電圧を印加する。このように、駆動電圧走査回路22が回路ブロックテスト信号入力端子TESTに加える電圧を増加させつつ、その各電圧における、モニター用端子MON1およびモニター用端子MON2の電圧を電圧測定装置21で測定して検査システム記憶回路23で記憶する。これにより、検査システム2が、回路ブロックテスト信号入力端子TESTに加えた電圧の関数として、第1のテスト用メモリセルMt1のストレージノードV1の電圧と第2のテスト用メモリセルMt2のストレージノードV0の電圧の変化を検査システム記憶回路23に記録する。そして、検査システム演算回路24が、その記録したデータを用いてスタティックノイズマージン(SNM)を計算し、その大きさを判定することで、メモリセルの動作マージンを判定する。
【0077】
(ステップS6)
以上のステップS5で、検査システム演算回路24が、メモリセルの動作マージンを不良であると判定した場合は、検査システム2が、記憶回路320用の電源ノードVDDqの電圧の低電圧化の限界を検出したことになる。この場合は、検査システム2は、その処理をステップS7に進める。一方、メモリセルの動作マージンに問題が無かった場合は、更に、ステップS3に戻り、検査システム2が、図8の記憶回路320の複数箇所に設置した回路ブロックテスト回路301の、残りのテスト用メモリセルMtestのうちの1つのテスト用メモリセルMtestを選んで、その電圧を測定する電圧検出スイッチSWrを指定してステップS5までの処理を実行し、記憶回路320の全ての箇所のテスト用メモリセルMtestについて処理を実施する。記憶回路320の全ての箇所のテスト用メモリセルMtestの動作マージンに問題が無かった場合は、検査システム2は、更にステップS1に戻って、記憶回路320用の電源ノードVDDqの電圧を更に下げて、
ステップS1からステップS6までの処理を繰り返す。
【0078】
(ステップS7)
検査システム2は、半導体装置1の記憶回路320用の電圧供給回路200の供給電圧VDDqを1段階戻して供給電圧を上げ、その供給電圧の値を設定する指令を電圧設定回路100の不揮発性メモリNVMに書き込む。これにより、半導体装置1の記憶回路320用の電圧設定回路100の不揮発性メモリNVMの設定が終了する。
【0079】
(変形例2)
図14のように、半導体装置1の記憶回路320の電源ノードVDDは、配線幅が太い主幹配線(縦配線)から枝配線(横配線)を分岐させ、その枝配線に図9のような各メモリセルMhkのPMOSトランジスタP1、P2のソース端子を接続させている。ここで、本実施形態の変形例2として、半導体装置1の記憶回路320の各メモリセルが接続する電源ノードVDDの枝配線の位置に電圧検出スイッチSWrを設置することができる。
【0080】
この変形例2の構成の半導体装置1の記憶回路320は以下のように検査することができる。すなわち、記憶回路320用の電圧供給回路200の電圧を下げる都度、全部のメモリセルMhkの位置の電圧検出スイッチSWrを順次に開いて各位置のメモリセルMhkの電源ノードVDDの電圧をモニター用端子MONに伝送し、その電圧を検査システム2の電圧測定装置21で測定して、検査システム記憶回路23で記憶する。その電圧検出スイッチSWrの選択のために、電圧検出スイッチアドレスカウンタ(レジスタ)410を順次にカウントアップする。こうして、記憶回路320の各位置のメモリセルMhkを動作させつつ、メモリセルMhkの位置の電源ノードVDDの電圧を検査システム記憶回路23で記憶し、その電源ノードVDDの電圧の分布(面分布)を得る。その電圧の面分布を解析することで、メモリセルMhkの動作異常を検出する。こうして、回路ブロック300内の全てのメモリセルMhkを正常に動作させることができる電圧供給回路200の最小の電圧を探索する。
【0081】
また、検査システム2から、記憶回路320のアドレス入力回路327にメモリアドレス信号A0、A1〜A23を入力することで、記憶回路320に特定のメモリセルMhkを読み出させ、その読出し動作の際のそのメモリセルMhkの位置の電源ノードVDDの電位や接地ノードVSSの電位の変化を電圧検出スイッチSWrで検出させることにより、メモリセルMhkの動作の良否を詳細に判定することもできる。
【0082】
この変形例2は、記憶回路320の場合に限らず、一般的に、回路の領域の複数箇所の電源ノードVDD又は接地ノードVSSに、電圧検出スイッチSWrを設置することで回路の各位置の回路動作時の電圧の分布(面分布)あるいはその電圧の変動値の分布を検査システム記憶回路23で記憶し、回路の各位置の回路動作時の電圧の分布から半導体装置1の動作を判定することも可能である。
【0083】
(ロジック回路用電圧供給回路の出力電圧の調整手順)
次に、ロジック回路330の動作を回路ブロックテスト回路301で検査しつつ、ロジック回路330に電源電圧を供給する電圧供給回路200の出力電圧を調整する。ロジック回路330の回路ブロックテスト回路301は、半導体チップ上のロジック回路330の領域に形成したインバータ回路を接続した図15のようなインバータチェーンで構成したリングオシレータを用いる。このリングオシレータは、ロジック回路330の領域の各部分を代表するインバータをつないで、ロジック回路330の全領域にわたるリングオシレータを回路ブロックテスト回路301として形成することができる。
【0084】
図16のフローチャートに、ロジック回路330の回路ブロック300へ接続する電圧
供給回路200の選択の処理手順を示す。
(ステップS8)
半導体装置1の外部の検査システム2が、半導体装置1の制御信号入力端子MODE_P(複数端子)から、半導体装置1を電圧検出スイッチ切り替えモードで動作させる制御信号MODEnを入力する。
【0085】
(ステップS9:ロジック回路の検査)
次に、半導体装置1の外部の検査システム2が、クロック信号CLKをクロック入力端子CLK_Pから入力することで、電圧検出スイッチアドレスカウンタ(レジスタ)410をカウントアップする。その値を電圧検出スイッチアドレスデコーダ411が変換して、ロジック回路330の回路ブロックテスト回路301である図16のリングオシレータの出力電圧Voutを測定する電圧検出スイッチSW3に、そのスイッチをオンにするスイッチ選択信号SELArとSELArBを出力して、リングオシレータの出力電圧Voutをモニター用端子MON1に伝送させる。そして、モニター用端子MON1の電圧を検査システム2の電圧測定装置21が測定することで、図17のように発振しているリングオシレータの出力電圧Voutの振幅を測定する。
【0086】
(ステップS10)
半導体装置1の外部の検査システム2が、半導体装置1の制御信号入力端子MODE_P(複数端子)から、半導体装置1を電圧設定回路切り替えモードで動作させる制御信号MODEnを入力する。
【0087】
(ステップS11:ロジック回路用の電源電圧テスト用レジスタの設定)
次に、半導体装置1の外部の検査システム2が、クロック信号CLKをクロック入力端子CLK_Pから入力することで、電源アドレスカウンタ(レジスタ)420の値のアドレス番号信号SELBtをカウントアップする。電源アドレスカウンタ(レジスタ)420は、それにより、電圧設定回路100に、ロジック回路330の回路ブロック300に接続する電圧供給回路200が電源ノードVDDqに供給する電圧を記憶する電源電圧テスト用レジスタ110の1ビットづつを指定するアドレス番号信号SELBtを送信し、そのアドレスの電源電圧テスト用レジスタ110の1ビットに、制御信号MODEnが指定した値のデータを書き込む。電源電圧テスト用レジスタ110は、電圧設定回路100の出力端子から、電圧供給回路200に出力信号SELCxを出力する。この信号SELCxで指令された電圧供給回路200が指定された電圧を電源ノードVDDqに出力する。この処理で電源電圧テスト用レジスタ110が指定するロジック回路330用の電圧供給回路200の供給電圧は、高い電圧から低い電圧に順次に切り替えつつ、以下の処理を実行する。
【0088】
(ステップS12:リングオシレータの検査)
次に、電圧測定装置21が、ロジック回路330のインバータチェーンで構成したリングオシレータの出力電圧Voutの振幅を測定し、検査システム演算回路24が、図17のように、出力電圧Voutの振幅を回路ブロック300に接続する電圧供給回路200の供給電圧VDDと比較する。検査システム演算回路24は、電圧供給回路200の電圧VDDに比べリングオシレータの出力電圧Voutの振幅が大幅に小さくなる場合を検出し、その場合にロジック回路330の動作を不良と判定する。
【0089】
(ステップS13)
以上のステップS12で、検査システム演算回路24が、ロジック回路330の動作を不良と判定した場合は、検査システム2が、ロジック回路330用の電源ノードVDDqの電圧の低電圧化の限界を検出したことになる。この場合は、検査システム2は、その処理をステップS14に進める。一方、ロジック回路330の動作に問題が無かった場合は
、更に、ステップS10に戻り、ロジック回路330用の電源ノードVDDqの電圧を更に下げて、ステップS10からステップS13までの処理を実行する。
【0090】
(ステップS14)
検査システム2は、半導体装置1のロジック回路330用の電圧供給回路200の電源ノードVDDqへの供給電圧を1段階戻して供給電圧を上げ、その供給電圧の値を、ロジック回路330用の電圧設定回路100の不揮発性メモリNVMに書き込む。これで、半導体装置1のロジック回路330用の電圧設定回路100の設定が終了する。
【0091】
(変形例3)
次に、変形例3として、図18のように、ロジック回路330の回路ブロックテスト回路301を、半導体チップ上のロジック回路330を形成する領域の各部に形成したインバータ回路を接続したインバータチェーンで構成したリングオシレータと、その出力電圧Voutを入力してリングオシレータの発振周波数を判定する発振周波数判定手段331で構成する。図19のフローチャートに、そのロジック回路330の回路ブロック300へ接続する電圧供給回路200の選択の処理手順を示す。
【0092】
(ステップS15)
半導体装置1の外部の検査システム2が、半導体装置1の制御信号入力端子MODE_P(複数端子)から、半導体装置1を電圧検出スイッチ切り替えモードで動作させる制御信号MODEnを入力する。
【0093】
(ステップS16)
次に、半導体装置1の外部の検査システム2が、クロック信号CLKをクロック入力端子CLK_Pから入力することで、電圧検出スイッチアドレスカウンタ(レジスタ)410をカウントアップする。その値を電圧検出スイッチアドレスデコーダ411が変換して、ロジック回路330へ電圧を供給する電圧供給回路200の供給電圧VDDの電圧を測定する電圧検出スイッチSW4に対してスイッチ選択信号SELArとSELArBを送信することで、電圧検出スイッチSW4をオンにして、その供給電圧VDDの電圧をモニター用端子MON1に伝送させる。そして、モニター用端子MON1の電圧を検査システム2の電圧測定装置21が測定することで、電圧供給回路200が設定した供給電圧VDDの実際の値を正確に測定する。
【0094】
(ステップS17)
半導体装置1の外部の検査システム2が、半導体装置1の制御信号入力端子MODE_P(複数端子)から、半導体装置1を電圧設定回路切り替えモードで動作させる制御信号MODEnを入力する。
【0095】
(ステップS18)
次に、半導体装置1の外部の検査システム2が、クロック信号CLKをクロック入力端子CLK_Pから入力することで、電源アドレスカウンタ(レジスタ)420の値のアドレス番号信号SELBtをカウントアップする。電源アドレスカウンタ(レジスタ)420は、それにより、電圧設定回路100に、ロジック回路330に接続する電圧供給回路200の電圧情報を記憶する電源電圧テスト用レジスタ110の1ビットづつを指定するアドレス番号信号SELBtを送信し、そのアドレスの電源電圧テスト用レジスタ110の1ビットに、制御信号MODEnが指定した値のデータを書き込む。電圧設定回路100の出力端子から電源電圧テスト用レジスタ110が指定する信号SELCxを電圧供給回路200に出力する。この信号SELCxで指令された電圧を電圧供給回路200がロジック回路330用の電源ノードVDDqに出力する。この処理で電源電圧テスト用レジスタ110が指定するロジック回路330用の電圧供給回路200の供給電圧は、高い電圧から低い電圧に順次に切り替えつつ、以下の処理を実行する。
【0096】
(ステップS19:変形例3のリングオシレータの検査)
図20に示すように、リングオシレータの発振周波数は、電圧供給回路200がロジック回路330に供給する電圧VDDが低下するのにともない発振周波数が低下し、終には発振停止に至る。そのリングオシレータの発振周波数の良否を、ロジック回路330の回路ブロックテスト回路301に組み込んで動作する発振周波数判定手段331が判定する。
【0097】
(ステップS20)
以上のステップS19で、発振周波数判定手段331が、ロジック回路330の動作を不良と判定した場合は、ロジック回路330の回路ブロックテスト回路301が、ロジック回路330用の電圧供給回路200が電源ノードVDDqに供給する電源電圧の低電圧化の限界を検出したことになる。この場合は、発振周波数判定手段331は、ロジック回路330の動作の良否の判定結果を回路ブロック動作確認パッドRESより出力する。検査システム2は、その回路ブロック動作確認パッドRESの出力を読み取って、判定結果が、動作不良と判定された場合は、処理をステップS21に進める。一方、ロジック回路330の動作に問題が無かった場合は、検査システム2が、処理を、更にステップS17に戻し、ロジック回路330用の電源ノードVDDqの電圧を更に下げて、ステップS17からステップS20までの処理を指令する。
【0098】
(ステップS21)
検査システム2は、半導体装置1のロジック回路330用の電圧供給回路200の電源ノードVDDqへ供給する電源電圧を1段階戻して供給電圧を上げ、その供給電圧の値を、ロジック回路330用の電圧設定回路100の不揮発性メモリNVMに書き込む。これで、半導体装置1のロジック回路330用の電圧設定回路100の設定が終了する。
【0099】
(電圧設定回路の総合設定)
以上の処理で、各回路ブロック300毎に、電圧設定回路100が設定すべき各電圧供給回路200の最低電圧を検出したら、各電圧供給回路200毎に、それが電圧を出力する電源ノードVDDqに接続する全ての回路ブロック300が正常に機能する電圧を求め、その電圧をその電圧供給回路200が出力するように電圧設定回路100を設定する。すなわち、その電圧供給回路200に設定するべき最低電圧を各回路ブロック300毎に得た場合は、その最低電圧の中で一番高い電圧をその電圧供給回路200が出力するように電圧設定回路100の不揮発性メモリNVMに値を書き込む。以上のように、検査システム2が、個々の回路ブロック300毎に電圧供給回路200の最低電圧を求めてから、その電圧供給回路200に接続する全ての回路ブロック300に対する結果から、電圧供給回路200に設定すべき最適な電圧を計算して電圧設定回路100を設定しても良い。
【0100】
(電圧設定回路の総合設定方式の第二の例)
図21に、電源供給回路の出力を調整するためのその他のフローチャートを示す。
機能ブロック毎に、機能ブロックそのものの動作電圧を確認し、それぞれ、最低動作電圧に設定する動作シーケンスである。
(ステップF1)
検査システム2がMODE_Pに電圧設定切り換えモードの制御信号を送信する。
【0101】
(ステップF2)
クロック入力信号CLK_Pから、クロック信号を入力し、電源アドレスカウンターを駆動し、SELA[r:0]により、電圧検出スイッチSWrを選択する。
【0102】
(ステップF3)
電圧検出スイッチ選択信号SELA[i]が選択され、モニター用端子MONに電源1の電圧が出力される。この値を検査システム2の記憶回路23に記憶する。
【0103】
(ステップF4)
MODE_P端子より、電圧設定モードに設定し、電源電圧制御メモリのアドレス信号SELB[t:0]により電源1を指定して、さらに電圧制御信号SELCxを一つ低い電圧に設定する。この場合、まだ確定ではないので、電圧設定情報は電源電圧テスト用レジスタ110に格納する。
【0104】
(ステップF5)
低電圧側に再設定された電源1にて、検査システム2により、選択された機能ブロックが正常動作をするか、不良動作となるかの動作確認を行なう。
【0105】
(ステップF6:機能ブロックの動作マージンの判定)
設定された電源電圧で正常動作をすれば(動作OKであれば)、F3に戻り、これを繰り返す。
動作NGであれば、低電圧化の限界ということで、F7に進む。
【0106】
(ステップF7)
電圧設定回路の電圧制御信号SELxを一つ戻して設定電圧を上げて、正常動作電圧の情報を、不揮発性メモリに記憶させる。この状態で、電源1の電圧設定が終了する。
電源1の設定が終了後、次の電源2の設定に進む。
以上を繰り返して、全ての電源の設定を行う。
上記フローチャートでは、各電源の設定をそれぞれ、順番に行なったが、設定効率(設定時間)を考慮して、各工程をまとめて行っても良い。
【0107】
(さらに別の電圧設定フロー)
(1)最初に、各電源の出力を全て、モニターし、検査システム2の記憶回路23に記憶させる。
(2)次に、各トリミング回路の設定を全て、一つ低電圧側に下げて、各機能ブロックの動作を確認する。
(3)次に、機能ブロックの中で、低電圧のために動作不良となったブロックがある場合には、その機能ブロックを除いて、このシーケンスを繰り返す。
(4)全ての機能ブロックの確認が終了したら、各機能ブロックの電圧設定回路のトリミング設定を一つ戻し、この設定を、不揮発性メモリに書き込み、設定終了とする。
【0108】
<第2の実施形態>
図22に第2の実施形態を示す。第2の実施形態が第1の実施形態と相違する点は、個々の回路ブロック300を細分化して、細分化した小回路ブロックそれぞれに、異なる電圧供給回路200から電源電圧を供給し、それぞれの電圧供給回路200の電圧を異ならせることで、細分化された小回路ブロック毎に異なる電圧の電源電圧を供給できるようにすることである。すなわち、アナログ回路310は、1〜n個に分割、記憶回路320はm個、ロジック回路330はk個に細分化し、それぞれに電源給回路200を設けて、それぞれの小回路ブロック毎に最適な電源電圧を設定する。
【0109】
例えば、図15のように、ロジック回路330の各部分を代表するインバータをつないで、ロジック回路330の全領域にわたるリングオシレータを回路ブロックテスト回路301として形成し、一方、ロジック回路330の領域はk個の小回路ブロックに細分化し、それぞれの小回路ブロックに電源給回路200を設ける。回路ブロックテスト回路301である図15のリングオシレータでは、ごく一部の回路のみが動作マージンが小さく電源電圧を低下させることができないが、その部分以外の回路のほとんどの部分は電源電圧を下げることができる。これにより、ロジック回路330の領域の全体で見て、更なる低電圧化、低消費電力化が達成できる。記憶回路320も、その領域をm個の小回路ブロックに細分化し、その細分化した各領域毎にテスト用メモリセルMtestを設置し、それぞれに電源給回路200を設ける。そして、テスト用メモリセルMtestが正常動作する限界まで、それぞれの電圧供給回路200の電圧を低下させる。これにより、記憶回路320の領域の全体として、更なる低電圧化、低消費電力化が達成できる。
【符号の説明】
【0110】
1・・・半導体装置
2・・・検査システム
21・・・電圧測定装置
22・・・駆動電圧走査回路
23・・・検査システム記憶回路
24・・・検査システム演算回路
100・・・電圧設定回路
110・・・電源電圧テスト用レジスタ
120・・・書込制御回路
130・・・制御回路
140・・・インバータ
150・・・NAND回路
160・・・ラッチ
170・・・アドレスデコーダ
200・・・電圧供給回路
210・・・電圧調整回路
220・・・電圧レギュレータ
221・・・オペアンプ
230・・・電圧トリミングデコーダ
300・・・回路ブロック
301・・・回路ブロックテスト回路
310・・・アナログ回路
320・・・記憶回路(メモリ)
321・・・メモリセルアレイ
322・・・行デコーダ
323・・・列デコーダ
324・・・列ゲート
325・・・センスアンプ
326・・・出力バッファ
327・・・アドレス入力回路
330・・・ロジック回路
331・・・発振周波数判定手段
340・・・デジタル無線回路
350・・・RF回路
351・・・アンテナ
400・・・回路スイッチ制御回路
410・・・電圧検出スイッチアドレスカウンタ(レジスタ)
411・・・電圧検出スイッチアドレスデコーダ
420・・・電源アドレスカウンタ(レジスタ)
A0、A1、A23・・・メモリアドレス信号
BL0、BLB0、BLn、BLBn・・・列線ノード
CG0、CGn・・・列選択トランジスタ
CLK・・・クロック信号
CLK_P・・・クロック入力端子
COL0、COLn・・・列選択ノード
Dout・・・出力端子
Mhk、M00、M0n、M10,M1n,M20,M2n・・・メモリセル
MON、MON1、MON2・・・モニター用端子
MODE_P・・・制御信号入力端子
MODEn・・・制御信号
Mtest・・・テスト用メモリセル
Mt1・・・第1のテスト用メモリセル
Mt2・・・第2のテスト用メモリセル
Nst・・・不揮発性メモリ選択信号
NVM・・・不揮発性メモリ
N1、N2・・・NMOSトランジスタ
P1、P2・・・PMOSトランジスタ
Pre・・・プリセット信号
PRN・・・書き込み信号
PRN0,PRNx・・・書き込み信号線
RES・・・回路ブロック動作確認パッド
SELAr、SELArB・・・スイッチ選択信号
SELBt・・・アドレス番号信号
SELC0、SELCx・・・電圧制御信号
SWr、SW1、SW2、SW3、SW4・・・電圧検出スイッチ
Ta1、Ta2・・・トランスファートランジスタ
TEST・・・回路ブロックテスト信号入力端子
Tr1、Tr2・・・PMOSトランジスタ
Tr3・・・セル選択トランジスタ
V0、V0’、V1・・・ストレージノード
VDD、VDDq・・・電源ノード
Vext・・・電源端子
Vout・・・リングオシレータの出力電圧
VREF・・・基準電圧
VSS・・・接地ノード
WL0、WL1、WLh・・・行線ノード

【特許請求の範囲】
【請求項1】
半導体装置の回路が複数の回路ブロックに分割され、各前記回路ブロック毎に電源電圧を供給し、前記電源電圧を電圧調整回路により切り替える電圧供給回路を有し、前記電圧調整回路を切り替える電圧制御信号を記憶する電源電圧制御メモリを有する電圧設定回路を有し、前記半導体装置の回路の複数箇所に回路の電圧を検出する電圧検出スイッチを有し、前記電圧検出スイッチを指定することで電圧を検出する回路の位置を切り替え、且つ、前記電源電圧制御メモリにアドレスを指定して値を書き込む制御を行う回路スイッチ制御回路を有することを特徴とする半導体装置。
【請求項2】
請求項1記載の半導体装置であって、制御信号入力端子から制御信号を入力することにより、前記回路スイッチ制御回路の動作モードが、各前記電圧検出スイッチを指定する動作モードと、前記電源電圧制御メモリのアドレスを指定する動作モードとに切り替えられ、クロック端子からクロック信号を入力することにより、前記電圧検出スイッチの指定を切り替え、また、前記電源電圧制御メモリのアドレスの指定を切り替えることを特徴とする半導体装置。
【請求項3】
請求項2記載の半導体装置であって、前記電源電圧制御メモリのアドレスを指定する動作モードにおいて、前記電源電圧制御メモリに、前記制御信号入力端子から入力した信号の値を記憶させることを特徴とする半導体装置。
【請求項4】
請求項1記載の半導体装置であって、一部の前記電圧検出スイッチを、回路の領域の複数箇所の電源ノード又は接地ノードに設置したことを特徴とする半導体装置。
【請求項5】
請求項1記載の半導体装置であって、前記回路ブロック毎に、前記回路ブロックの動作を検査する回路ブロックテスト回路を具備することを特徴とする半導体装置。
【請求項6】
請求項5記載の半導体装置であって、前記回路ブロックの1つである記憶回路に設置した前記回路ブロックテスト回路が、前記電圧検出スイッチをメモリセルの回路に接続して電圧を検出することで前記記憶回路の動作を検査することを特徴とする半導体装置。
【請求項7】
請求項5記載の半導体装置であって、前記回路ブロックの1つであるロジック回路に設置した前記回路ブロックテスト回路が、前記ロジック回路の領域の各部分のインバータを複数接続したインバータチェーンで構成したリングオシレータで構成されていることを特徴とする半導体装置。
【請求項8】
請求項1〜請求項4記載の半導体装置であって、前記回路ブロックが更に細分化された複数の機能小ブロックに細分化され、細分化された前記機能小ブロック毎に前記複数の電圧供給回路を設置して電源電圧を供給することを特徴とする半導体装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate


【公開番号】特開2012−84210(P2012−84210A)
【公開日】平成24年4月26日(2012.4.26)
【国際特許分類】
【出願番号】特願2010−231482(P2010−231482)
【出願日】平成22年10月14日(2010.10.14)
【出願人】(000003193)凸版印刷株式会社 (10,630)
【Fターム(参考)】