(57)【要約】【課題】  量産テストの容易化を図るとともに量産テスト工数を削減できる半導体集積回路を提供する。【解決手段】  ＶＤＣ回路２０の出力電圧をチップ上のＡ／Ｄ変換器２２によってＡ／Ｄ変換するため、ＶＤＣ回路２０の出力電圧ＶＤＣｏｕｔをデジタル量として観測でき、測定が容易となる。好ましくは、端子６を削減することにより、チップサイズを削減することができる。また、電圧ＶＤＣｏｕｔを出力するために使用していた端子６を、他の用途のために使用することができる。【選択図】        図１
2005086108.tif 000002
【特許請求の範囲】
【請求項１】
外部から与えられる外部電源電圧を受ける第１の端子と、
前記外部電源電圧を降下させ内部電圧を発生する電圧発生回路と、
前記内部電圧に応じた電圧を使用する内部回路と、
前記内部電圧をアナログ値からデジタル値に変換して外部にデジタル信号を出力するＡ／Ｄ変換回路と、
前記デジタル信号を外部に出力するための第２の端子とを備える、半導体集積回路。
【請求項２】
前記内部電圧は、前記内部回路の動作電源電圧であり、
前記電圧発生回路は、
前記動作電源電圧の基準電圧を発生する基準電圧発生回路と、
前記動作電源電圧と前記基準電圧とを相補な２つの入力に受ける差動増幅回路と、
前記差動増幅回路の出力に応じて前記外部電源電圧を変換して前記動作電源電圧を出力する電圧変換回路とを含む、請求項１に記載の半導体集積回路。
【請求項３】
前記内部電圧は、前記内部回路の動作電源電圧の基準となる基準電圧であり、
前記電圧発生回路は、
前記基準電圧を発生する基準電圧発生回路と、
前記動作電源電圧と前記基準電圧とを相補な２つの入力に受ける差動増幅回路と、
前記差動増幅回路の出力に応じて前記外部電源電圧を変換して前記動作電源電圧を出力する電圧変換回路とを含む、請求項１に記載の半導体集積回路。
【請求項４】
前記半導体集積回路は、
アナログ電圧を入力する第３の端子と、
前記Ａ／Ｄ変換回路に対して、前記内部電圧と前記アナログ電圧のうちの一方を選択して与えるためのセレクタとをさらに備える、請求項１に記載の半導体集積回路。
【請求項５】
前記内部電圧は、
前記内部回路の動作電源電圧であり、
前記電圧発生回路は、
基準電圧を発生する基準電圧発生回路と、
前記動作電源電圧と前記基準電圧とを相補な２つの入力に受ける差動増幅回路と、
前記差動増幅回路の出力に応じて前記外部電源電圧を変換して前記動作電源電圧を出力する電圧変換回路とを含み、
前記Ａ／Ｄ変換回路は、前記動作電源電圧、前記基準電圧を第１、第２の入力ノードにそれぞれ受け、前記動作電源電圧、前記基準電圧をそれぞれ第１、第２のデジタル値に変換し、
前記内部回路は、
前記第１、第２のデジタル値を一時的に保持する第１、第２のレジスタと、
前記第１、第２のレジスタにそれぞれ保持された前記第１、第２のデジタル値の差を第３のデジタル値として出力する演算回路と、
前記第３のデジタル値を一時的に保持する第３のレジスタとを含み、
前記第１〜第３のレジスタの保持値は、前記第２の端子から出力される、請求項１に記載の半導体集積回路。
【請求項６】
前記電圧発生回路は、
第４のレジスタをさらに含み、
前記基準電圧発生回路は、前記第４のレジスタの保持値に応じて前記基準電圧を調整する、請求項５に記載の半導体集積回路。
【請求項７】
前記電圧発生回路は、
第４のレジスタをさらに含み、
前記電圧変換回路は、前記第４のレジスタの保持値に応じて前記内部電源電圧を出力するノードを駆動する駆動力を調整する、請求項５に記載の半導体集積回路。
【請求項８】
前記電圧発生回路は、
不揮発的に設定の変更が可能なヒューズ回路をさらに含み、
前記基準電圧発生回路は、前記ヒューズ回路の設定に応じて前記基準電圧を調整する、請求項５に記載の半導体集積回路。
【請求項９】
前記電圧発生回路は、
不揮発的に設定の変更が可能なヒューズ回路をさらに含み、
前記電圧変換回路は、前記ヒューズ回路の設定に応じて前記内部電源電圧を出力するノードを駆動する駆動力を調整する、請求項５に記載の半導体集積回路。
【請求項１０】
前記演算回路は、命令列に従って演算を行なう中央演算処理装置であり、
前記半導体集積回路は、
前記命令列を記憶する不揮発性メモリ回路をさらに備える、請求項５に記載の半導体集積回路。
【請求項１１】
前記電圧発生回路は、
発生する前記内部電圧の調整値を保持する第４レジスタをさらに含み、
前記不揮発性メモリ回路は、前記調整値の初期値をさらに保持し、
前記中央演算処理装置は、前記第３のレジスタの保持値に応じて前記第４レジスタの保持値を書きかえる、請求項１０に記載の半導体集積回路。
【請求項１２】
モード切換えのための設定を行なう入力端子をさらに備え、
前記中央演算処理装置は、動作モードとして、通常モードと、前記第１、第２のレジスタにそれぞれ保持された前記第１、第２のデジタル値の差を第３のデジタル値として出力する特殊モードとを有し、電源オン時の前記入力端子の設定にしたがって前記特殊モードに移行する、請求項１０に記載の半導体集積回路。
【請求項１３】
前記演算回路は、命令列に従って演算を行なう中央演算処理装置であり、
前記半導体集積回路は、
前記命令列および所定の情報を記憶する不揮発性メモリ回路と、
前記中央演算装置に接続され、前記命令列の一部であるブートプログラムによって前記所定の情報が前記不揮発性メモリ回路からロードされる揮発性メモリとをさらに備える、請求項５に記載の半導体集積回路。
【請求項１４】
電圧変換回路は、動作モードとして前記外部電源電圧を降下させる通常モードと前記外部電源電圧を変換することなく出力する特殊モードとを有し、
前記特殊モードにおいては、前記第１のデジタル値は、前記外部電源電圧に対応し、前記第２の端子から出力される、請求項５に記載の半導体集積回路。
【請求項１５】
前記内部回路は、
前記内部電源電圧の上限規格値を保持する第４のレジスタと、
前記内部電源電圧の下限規格値を保持する第５のレジスタとをさらに含み、
前記演算回路は、前記第１のレジスタの保持値が前記上限規格値と前記下限規格値との間に無い場合は、異常フラグを出力する、請求項５に記載の半導体集積回路。
【請求項１６】
前記演算回路は、命令列に従って演算を行なう中央演算処理装置であり、
前記半導体集積回路は、
前記命令列を記憶する不揮発性メモリ回路をさらに備える、請求項１５に記載の半導体集積回路。
【請求項１７】
前記演算回路は、命令列に従って演算を行なう中央演算処理装置であり、
前記半導体集積回路は、
前記命令列および所定の情報を記憶する不揮発性メモリ回路と、
前記中央演算装置に接続され、前記命令列の一部であるブートプログラムによって前記所定の情報が前記不揮発性メモリ回路からロードされる揮発性メモリとをさらに備える、請求項１５に記載の半導体集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路に関する。
【背景技術】
【０００２】
不揮発性メモリが内蔵する昇圧回路の電流供給能力は、極めて小さいので、発生した高電圧がノイズ等に弱いため、外部端子に発生した高電圧を出力することができない。このため、テスト用にＡＤ（アナログ／デジタル）変換機を内蔵し、発生した高電圧を分圧してＡ／Ｄ変換機によって変換して外部にデジタル信号を出力し、デジタル信号をモニタすることによって内部電圧を確認する技術が特開平５−３２５５８０号公報（特許文献１）に開示されている。
【特許文献１】特開平５−３２５５８０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、内部で発生する電圧を確認するために、テスト専用にＡ／Ｄ変換器をチップ上に集積するのはチップ面積が増加しコスト面では得策ではない。
【０００４】
一方近年では、システム・オン・チップ化の進展に伴う半導体集積回路の回路規模が増大し、これによる設計検証および量産出荷テスト工数の増加が問題となっている。
【０００５】
特に電圧降下回路（ＶＤＣ：Voltage Down Converter）やＡ／Ｄ変換器を集積した半導体集積回路においては、電圧降下回路、Ａ／Ｄ変換器およびその他の論理回路の設計評価、量産テストをそれぞれ個々の回路単位で行なっているのが現状である。
【０００６】
ＶＤＣ回路の出力電圧が設計値どおりか評価する場合や、量産時の出荷テストでＶＤＣ回路が出力する電圧に異常がないかテストする場合に、ＶＤＣ回路の出力電圧ＶＤＣｏｕｔを半導体集積回路の有する端子からアナログ量として出力しこれを測定する必要がある。したがって、測定系が複雑となる問題があった。
【０００７】
また、個々の回路の回路規模が増大しており、設計評価、量産テストの工数が増大している。さらには、これら半導体集積回路が有する入出力端子数が増大しており、半導体集積回路のチップサイズには、入出力パッドの配置領域も無視できない状況となっている。特に、入出力パッド数が多くなると、内部に配置する回路規模でチップサイズが定まるのではなく、周辺にパッドを配置することでチップサイズが定まってしまう。
【０００８】
本発明は、電圧降下回路、Ａ／Ｄ変換器およびその他の論理回路を集積した半導体集積回路において、集積された論理回路同士の機能を利用し合うことにより、設計評価を効率的に実施でき、量産テストの容易化を図るとともに量産テスト工数を削減できる半導体集積回路を提供することを目的とする。また併せて半導体集積回路の入出力端子数を抑制することを目的とする。
【０００９】
より具体的には、Ａ／Ｄ変換器の機能を利用して、電圧降下回路に関わる電圧をデジタル量として観測するとともに、その電圧降下回路に関連する電圧を判定もしくは適正な電圧となるように制御することを目的とし、これにより直接電圧降下回路に関係する電圧を観測するための端子を削減することを目的としている。
【課題を解決するための手段】
【００１０】
この発明は、要約すれば、半導体集積回路であって、外部から与えられる外部電源電圧を受ける第１の端子と、外部電源電圧を降下させ内部電圧を発生する電圧発生回路と、内部電圧に応じた電圧を使用する内部回路と、内部電圧をアナログ値からデジタル値に変換して外部にデジタル信号を出力するＡ／Ｄ変換回路と、デジタル信号を外部に出力するための第２の端子とを備える。
【発明の効果】
【００１１】
本発明によれば、チップ上に集積されたＡ／Ｄ変換器をもちいて内部電圧をデジタル信号にして出力するので、測定が簡単になるとともに、電圧モニタ用のテスト端子を削減することができる。
【発明を実施するための最良の形態】
【００１２】
以下において、本発明の実施の形態について図面を参照して詳しく説明する。なお、図中同一符号は同一または相当部分を示す。
【００１３】
［実施の形態１］
図１は、本発明の実施の形態１の半導体集積回路１の構成を示すブロック図である。
【００１４】
図１を参照して、半導体集積回路１は、端子２，４，６，８，１０，１２，１４，１６〜１８と、電圧降下変換（ＶＤＣ）回路２０と、Ａ／Ｄ変換器２２と、論理回路２４とを含む。
【００１５】
ＶＤＣ回路２０は、基準電圧発生回路２６と、差動増幅器２８と、電圧変換回路３０とを含む。Ａ／Ｄ変換器２２は、Ａ／Ｄ変換結果を格納するレジスタ３２を含む。
【００１６】
電源は、ＶＤＣ回路２０用に端子２から電源電圧ＶＣＣが供給される。また、Ａ／Ｄ変換器２２用に端子１２を介して電源電圧ＡＶＣＣが供給される。論理回路２４には、ＶＤＣ回路２０の出力である電圧ＶＤＣｏｕｔが供給される。つまりそれぞれの回路は別々の電源電圧を受けて動作する。なお、接地電圧ＶＳＳつまりグラウンドは、説明を簡単にするため各回路共通としている。
【００１７】
ＶＤＣ回路２０用の端子は、電源電圧ＶＣＣを受ける端子２と、基準電圧発生回路２６の出力電圧ＶＤＣｒｅｆを出力する端子４と、ＶＤＣ回路２０の出力電圧である電圧ＶＤＣｏｕｔを出力する端子６とがある。Ａ／Ｄ変換器用の端子は、電源電圧ＡＶＣＣを入力する端子１２と、Ａ／Ｄ変換用の参照電圧Ａｖｒｅｆを与えるための端子１４と、アナログ信号ＡＮ１を入力する端子１０とがある。論理回路２４用の端子は、外部との入出力信号をやり取りするための端子１６〜１８である。
【００１８】
なお、従来はＡ／Ｄ変換器２２のアナログ入力はすべて半導体集積回路の外部から入力されており、内部のＶＤＣ回路２０や論理回路２４から入力されるものはなかった。Ａ／Ｄ変換器は、ＬＳＩのアナログインターフェース部分に設けられるのが通常だからである。そしてＶＤＣ回路２０の出力電圧や基準電圧発生回路２６の出力電圧を確認する場合は、これらの電圧がそれぞれ出力される端子６や端子４を半導体集積回路外部からアナログ量として観測することによって行なわれていた。
【００１９】
実施の形態１では、ＶＤＣ回路２０の出力電圧ＶＤＣｏｕｔが、Ａ／Ｄ変換器２２の信号入力ノードＡＮ０′に接続される。これにより、電圧ＶＤＣｏｕｔは、Ａ／Ｄ変換器２２でアナログ信号からデジタル信号に変換され、変換後の値は、Ａ／Ｄ変換器２２の内部のＡ／Ｄ変換結果を格納するレジスタ３２に格納される。したがって、一般的には半導体集積回路が内蔵するＶＤＣ回路の出力電圧は電圧ＶＤＣｏｕｔを出力する端子の電圧をアナログ量として観測し、ＶＤＣ回路の動作が正常か、電圧値は適正かを判断する。これに対し本発明では、電圧ＶＤＣｏｕｔを、レジスタ３２に格納されたデジタル量として観測することができる。このレジスタ３２の値は、論理回路２４内の読出用論理回路により読出され、入出力用の端子１６〜１８のうちのデータ出力用の所定の端子から半導体集積回路１の外部へ出力することができる。
【００２０】
従来は、評価やテストをする場合に、ＶＤＣ回路の出力電圧ＶＤＣｏｕｔを半導体集積回路の有する端子からアナログ量として出力しこれを測定する必要があり、測定系が複雑になる問題があった。これに対し、実施の形態１の半導体集積回路１は、ＶＤＣ回路の出力電圧をチップ上のＡ／Ｄ変換器によってＡ／Ｄ変換するため、ＶＤＣ回路の出力電圧値をデジタル量として観測でき、測定が容易となる。
【００２１】
また、通常は、ＶＤＣ回路の出力を安定させるため、端子６にある程度の容量を付加する必要があるが、ＶＤＣ回路２０の出力で駆動される論理回路２４の消費電力が少なく半導体集積回路１内にＶＤＣ回路２０の出力を十分安定させることのできる負荷容量が確保できる場合には、端子６が不要となる。したがって、端子数によって半導体集積回路のチップサイズが定まってしまう場合には、端子６のスペースが削減されチップサイズを削減することができる。また、電圧ＶＤＣｏｕｔを出力するために使用していた端子６を、他の用途のために使用することができる。
【００２２】
［実施の形態２］
図２は、実施の形態２の半導体集積回路５０の構成を示したブロック図である。
【００２３】
図２を参照して、実施の形態２の半導体集積回路５０は、図１に示した半導体集積回路１の構成において論理回路２４に代えて論理回路５６を含み、さらに、端子５４とセレクタ５２とを含む。
【００２４】
論理回路５６は、Ａ／Ｄ変換器の入力を選択する信号ＡＤＳＥＬ０を出力する。端子５４は、アナログ入力信号ＡＮ０を入力するために設けられる。セレクタ５２は、信号ＡＮ０とＶＤＣ回路２０の出力する電圧ＶＤＣｏｕｔとを信号ＡＤＳＥＬ０に応じて選択してＡ／Ｄ変換器２２の入力ノードＡＮ０′に与える。
【００２５】
実施の形態２は、２つの入力を有し、出力がＡ／Ｄ変換器２２のアナログ入力ノードＡＮ０′に接続されるセレクタ５２を備える点が特徴である。
【００２６】
実施の形態１では、Ａ／Ｄ変換器２２のアナログ入力ノードＡＮ０′はＶＤＣ回路２０の出力電圧ＶＤＣｏｕｔに結合されていた。実施の形態２では電圧ＶＤＣｏｕｔは、セレクタ５２の一方の入力に接続され、セレクタ５２の他方の入力には端子５４から入力されるアナログ入力信号ＡＮ０が与えられる。論理回路５６は、セレクタ５２の２つの入力のどちらを選択するかを示す信号ＡＤＳＥＬ０を出力する。セレクタ５２の２つの入力のうち選択された入力信号がＡ／Ｄ変換器２２のアナログ入力ノードＡＮ０′に与えられる。
【００２７】
ＶＤＣ回路２０の出力電圧ＶＤＣｏｕｔが選択されてＡ／Ｄ変換器２２に入力された場合には、電圧ＶＤＣｏｕｔがＡ／Ｄ変換器２２でＡ／Ｄ変換される。変換後の値は、レジスタ３２に格納される。レジスタ３２の値は、論理回路５６内の図示しない読出用論理回路により読出され、入出力端子１６〜１８のうちデータ出力用の所定の端子から半導体集積回路５０の外部へ出力することができる。
【００２８】
ＶＤＣ回路の動作のテストと電圧値の測定をする場合には、一般的には半導体集積回路が有するＶＤＣ回路に接続される出力電圧端子から電圧ＶＤＣｏｕｔをアナログ量として出力して観測する。実施の形態２では、電圧ＶＤＣｏｕｔをセレクタ５２を介してチップ上に集積されたＡ／Ｄ変換器２２のアナログ入力ノードに与えることができる。したがって、電圧ＶＤＣｏｕｔの値をチップ内部でＡ／Ｄ変換でき、レジスタ３２に格納されたデジタル量として外部から観測することができる。
【００２９】
また、アナログ信号ＡＮ０が論理回路５６から出力される信号ＡＤＳＥＬ０に従ってセレクタ５２で選択され、信号ＡＮ０がＡ／Ｄ変換器２２の入力ノードＡＮ０′に与えられた場合には、アナログ信号ＡＮ０がＡ／Ｄ変換される。そしてレジスタ３２に変換結果が格納される。レジスタ３２に格納された信号ＡＮ０の変換結果も論理回路５６内の図示しない読出用論理回路により読出され、端子１６〜１８のうちのデータ出力用の所定の端子から半導体集積回路５０の外部に出力することができる。
【００３０】
実施の形態２によれば、セレクタ５２を備えることにより、Ａ／Ｄ変換器２２の入力ノードＡＮ０′をＶＤＣ回路２０の出力電圧計測用と外部から与えられるアナログ信号ＡＮ０の入力計測用とで共用できる。このため半導体集積回路５０が有するアナログ入力端子の有効端子数を減らすことなく、ＶＤＣ回路２０の動作判定や電圧ＶＤＣｏｕｔの電圧値の評価および観測をすることができる。
【００３１】
なお、実施の形態２では、２入力、１出力を有するセレクタを用いたが、入力数は２以上で、さらに多入力のセレクタを用いてもよい。この場合は、さらに他の信号を含めた信号からＶＤＣ回路の出力電圧ＶＤＣｏｕｔを選択でき、実施の形態２の発明と同様の効果が得られる。
【００３２】
［実施の形態３］
図３は、実施の形態３の半導体集積回路６０の構成を示したブロック図である。
【００３３】
図３を参照して、半導体集積回路６０は、図１に示した半導体集積回路１の構成において、端子４、６および１０は削除される一方、アナログ信号ＡＮ０を与えるための端子５４を備える。そして、Ａ／Ｄ変換器２２は、入力ノードＡＮ０′に端子５４を介して与えられるアナログ信号ＡＮ０を受け、入力ノードＡＮ１′には基準電圧発生回路２６の出力する基準電圧ＶＤＣｒｅｆを受ける。他の点については、図１で示した構成と同様であるので説明は繰返さない。
【００３４】
ＶＤＣ回路２０は、ＶＤＣ回路２０の出力電圧ＶＤＣｏｕｔと、基準電圧発生回路２６の出力電圧である基準電圧ＶＤＣｒｅｆとを差動増幅器２８に入力する。差動増幅器２８が、電圧の差分に応じて電圧変換回路３０を制御することで電圧ＶＤＣｏｕｔと電圧ＶＤＣｒｅｆとを同電圧に調整する。
【００３５】
一般的な構成では、チップ外部で基準電圧ＶＤＣｒｅｆが設計値どおり基準電圧発生回路２６によって発生されているか否かを評価するため、電圧ＶＤＣｒｅｆは端子を経由して外部に出力されている。
【００３６】
これに対し実施の形態３に係る半導体集積回路６０の構成においては、電圧ＶＤＣｒｅｆが、Ａ／Ｄ変換器２２の入力ノードＡＮ１′に結合される。電圧ＶＤＣｒｅｆは、チップ内部でＡ／Ｄ変換器２２によって変換され、変換後の値はレジスタ３２に格納される。したがって、電圧ＶＤＣｒｅｆは一般的には出力電圧端子を介して値外部でアナログ量として観測されていたが、実施の形態３では、電圧ＶＤＣｒｅｆをレジスタ３２に格納されたデジタル量として観測することができる。レジスタ３２の値は、論理回路２４内の読出用論理回路によって読出され、端子１６〜１８のうちのデータ出力用の所定の端子から半導体集積回路６０の外部へと出力することができる。
【００３７】
以上説明したように、従来は測定系が複雑になる問題があったのに対し、実施の形態３の半導体集積回路６０では、基準電圧発生回路２６の出力をＡ／Ｄ変換器２２により変換して電圧値をデジタル量として観測できるので、電圧ＶＤＣｒｅｆの測定が容易になるとともに検証および計測のコストが削減できる。
【００３８】
また、電圧ＶＤＣｒｅｆをチップ外部に出力するための端子を削減することができる。これにより、端子の物理的スペースが削減され、端子数によってチップサイズが定まっている場合には、チップサイズを削減することができる。そうでない場合においても、端子を他の用途の端子として使用することができる。
【００３９】
［実施の形態４］
図４は、実施の形態４の半導体集積回路７０の構成を示したブロック図である。
【００４０】
図４を参照して、半導体集積回路７０は、図３に示した半導体集積回路６０の構成において、論理回路２４に代えて論理回路７４を含み、さらにセレクタ７２と端子１０とを含む。他の構成は、図３の半導体集積回路６０と同様であるので説明は繰返さない。
【００４１】
セレクタ７２は、入力信号として、端子１０を介して与えられるアナログ入力信号ＡＮ１と、基準電圧発生回路２６が出力する基準電圧ＶＤＣｒｅｆとを受ける。セレクタ７２は、２つの入力のうちの１つを論理回路７４から出力される信号ＡＤＳＥＬ１に応じて選択して選択された信号をＡ／Ｄ変換器２２の入力ノードＡＮ１′に与える。
【００４２】
セレクタ７２において基準電圧ＶＤＣｒｅｆが選択されてＡ／Ｄ変換器２２に入力された場合には、基準電圧ＶＤＣｒｅｆがＡ／Ｄ変換され、変換後の値はレジスタ３２に格納される。レジスタ３２の値は、論理回路７４内の図示しない読出用論理回路により読出され、入出力用の端子１６〜１８のうちのデータ出力用の所定の端子から半導体集積回路７０の外部へ出力することができる。
【００４３】
ＶＤＣ回路の動作のテストと電圧値の測定とをする場合には、一般的には半導体集積回路が有する端子から基準電圧ＶＤＣｒｅｆをアナログ量として出力して観測する。これに対し、実施の形態４においては、基準電圧ＶＤＣｒｅｆをセレクタ７２を介してＡ／Ｄ変換器２２の入力ノードＡＮ１′に接続できるため、Ａ／Ｄ変換器２２によりチップ内部でＡ／Ｄ変換できる。これにより、基準電圧ＶＤＣｒｅｆをレジスタ３２に格納されたデジタル量として観測することができる。
【００４４】
実施の形態４によれば、セレクタ７２を備えることにより、Ａ／Ｄ変換器２２の入力ノードＡＮ１′をＶＤＣ回路２０の基準電圧計測用と外部から与えられるアナログ信号ＡＮ１の入力計測用とで共用できる。このため半導体集積回路７０が有するアナログ入力端子の有効端子数を減らすことなく、ＶＤＣ回路２０の動作判定や電圧ＶＤＣｒｅｆの電圧値の評価および観測をすることができる。
【００４５】
なお、実施の形態４では、２入力、１出力を有するセレクタを用いたが、入力数は２以上で、さらに多入力のセレクタを用いてもよい。この場合は、さらに他の信号を含めた信号からＶＤＣ回路の基準電圧ＶＤＣｒｅｆを選択でき、実施の形態４の発明と同様の効果が得られる。
【００４６】
［実施の形態５］
図５は、実施の形態５の半導体集積回路８０の構成を示したブロック図である。
【００４７】
図５を参照して、半導体集積回路８０は、ＶＤＣ回路２０、Ａ／Ｄ変換器２２、論理回路８２およびセレクタ５２，７２を１つの半導体チップ上に集積している。各回路には、それぞれ専用の入出力端子が設けられる。
【００４８】
電源に関連して、ＶＤＣ回路２０には電源電圧ＶＣＣを与えるための端子２が設けられ、Ａ／Ｄ変換器２２用には電源電圧ＡＶＣＣを与えるための端子１２が設けられる。論理回路８２には、ＶＤＣ回路２０の出力である電圧ＶＤＣｏｕｔが供給される。つまり、ＶＤＣ回路２０、Ａ／Ｄ変換器２２および論理回路８２は、別々の電源電圧を受けて動作する。一方、接地電圧ＶＳＳつまりグラウンドはこれら３つの回路ブロックに対して共通である。
【００４９】
Ａ／Ｄ変換器２２用の端子としては、さらに、Ａ／Ｄ変換用の参照電圧Ａｖｒｅｆを入力する端子１４と、アナログ入力信号ＡＮ０，ＡＮ１をそれぞれ入力するための端子５４，１０とが設けられる。Ａ／Ｄ変換器２２は、入力ノードＡＮ１′，ＡＮ０′の２入力を有するが、もっと多くのアナログ入力を持っていてもよい。セレクタ５２は、端子５４を介して与えられるアナログ信号ＡＮ０とＶＤＣ回路２０から出力される電圧ＶＤＣｏｕｔとを２つの入力信号として受け、論理回路８２から与えられる信号ＡＤＳＥＬ０に応じて一方を選択して、選択した信号をＡ／Ｄ変換器２２の入力ノードＡＮ０′に対して出力する。
【００５０】
セレクタ７２は、端子１０を介して与えられるアナログ入力信号ＡＮ１と基準電圧発生回路２６が出力する基準電圧ＶＤＣｒｅｆとを２つの入力信号として受け、論理回路８２から出力される信号ＡＤＳＥＬ１に従って一方を選択し、選択した信号をＡ／Ｄ変換器２２の入力ノードＡＮ１′に与える。
【００５１】
端子１６〜１８、１００〜１０２は、論理回路８２用に設けられる端子である。端子１６〜１８は半導体集積回路８０の外部と制御信号やデータとして信号Ｉ／Ｏ１〜Ｉ／Ｏｎを入出力するためのｎ個（ｎは自然数）の端子である。また、端子１００〜１０２は、論理回路８２内のレジスタ８４，８６，８８のデータを半導体集積回路８０の外部との間でデータＤ１〜Ｄｍとして入出力するために設けられるｍ個（ｍは自然数）の端子である。
【００５２】
ＶＤＣ回路２０は、基準電圧発生回路２６と、差動増幅器２８と、電圧変換回路３０とを含む。基準電圧発生回路２６は、ＶＤＣ回路２０の出力する電圧ＶＤＣｏｕｔの基準となる基準電圧ＶＤＣｒｅｆを生成する。差動増幅器２８は、電圧ＶＤＣｒｅｆと電圧ＶＤＣｏｕｔとを受けて、電圧ＶＤＣｏｕｔが電圧ＶＤＣｒｅｆを下回っていれば電圧ＶＤＣｏｕｔを上昇させるように信号を電圧変換回路３０に伝える。一方、差動増幅器２８は、電圧ＶＤＣｏｕｔが電圧ＶＤＣｒｅｆを上回っていれば、電圧ＶＤＣｏｕｔを上昇させないように出力信号を電圧変換回路３０に伝える。電圧変換回路３０は、差動増幅器２８からの出力信号を受けて、電源電圧ＶＣＣからこれより低い所定の電圧ＶＤＣｏｕｔを生成する。
【００５３】
Ａ／Ｄ変換器２２は、論理回路８２からの信号により動作の設定をすることができる。Ａ／Ｄ変換器２２は、入力ノードＡＮ０′，ＡＮ１′から入力されるアナログ信号をＡ／Ｄ変換し、変換結果をデジタル量としてレジスタ３２に保存する。
【００５４】
論理回路８２は、２入力のセレクタ５２，７２の入力をそれぞれ選択する信号ＡＳＤＥＬ０，ＡＤＳＥＬ１を出力する。また、Ａ／Ｄ変換器２２内のレジスタ３２の値を論理回路８２は読出すことができる。
【００５５】
論理回路８２は、第１レジスタ８４，第２レジスタ８６，第３レジスタ８８および演算器８９を含む。演算器８９は、第１レジスタ８４の値から第２レジスタ８６の値を引いた結果を第３レジスタ８８に格納することができる。
【００５６】
次に、実施の形態５の半導体集積回路８０の全体的な動作について説明する。
【００５７】
論理回路８２からの信号ＡＤＳＥＬ０，ＡＤＳＥＬ１に従って、セレクタ５２は、電圧変換回路３０の出力する電圧ＶＤＣｏｕｔを選択する。セレクタ７２は、信号ＡＤＳＥＬ１に従って基準電圧発生回路２６の出力する基準電圧ＶＤＣｒｅｆを選択する。電圧ＶＤＣｏｕｔは、チップ内部でＡ／Ｄ変換器２２によりＡ／Ｄ変換され、その結果がレジスタ３２に格納される。このレジスタ３２の値は論理回路８２によって読出され、電圧ＶＤＣｏｕｔのデジタル値は第１レジスタ８４に格納される。
【００５８】
さらに、基準電圧ＶＤＣｒｅｆがＡ／Ｄ変換器２２によってＡ／Ｄ変換され、レジスタ３２にその変換結果が格納される。レジスタ３２から基準電圧ＶＤＣｒｅｆのデジタル値が論理回路８２によって読出され、その値が第２レジスタ８６に格納される。
【００５９】
論理回路８２が有する演算器８９は、第１レジスタ８４と第２レジスタ８６の値を入力として受け、これらの差分すなわち（第１レジスタの値−第２レジスタ値）を第３レジスタ８８に格納することができる。
【００６０】
第１レジスタ８４、第２レジスタ８６および第３レジスタ８８の保持する値は、半導体集積回路８０の外部から端子１００〜１０２を介してデータＤ１〜Ｄｍとして読出すことができる。
【００６１】
実施の形態５においては、ＶＤＣ回路の出力電圧ＶＤＣｏｕｔのデジタル量および基準電圧ＶＤＣｒｅｆのデジタル量に加えて、これらの差分電圧のデジタル量も半導体集積回路８０の外部から観測することができる。したがって、外部からアナログ量としてこれらの電圧を観測する場合と比較して、ＶＤＣ回路の動作の評価を安易かつ容易に行なうことができる。つまり、ＶＤＣ回路の出力が、内部の論理回路の動作に最適な電圧になるように、入力電源電圧ＶＣＣの値や、基準電圧ＶＤＣｒｅｆを変更するための情報（入力電圧対出力電圧特性データ）を短期間で得ることができる。この情報をもとに、電源電圧ＶＣＣの入力値を定めたり、マスクレイアウトを変更してチップを再作成することにより、所望の出力電圧を得ることができる。
【００６２】
また、電圧ＶＤＣｏｕｔとその期待値である基準電圧ＶＤＣｒｅｆとの論理演算を行なうことができるため、論理回路８２が動作することにより、電圧ＶＤＣｏｕｔが異常な値になっていないかどうかの判定を容易に行なうことができる。
【００６３】
［実施の形態６］
図６は、実施の形態６の半導体集積回路９０の構成を示したブロック図である。
【００６４】
図６を参照して、半導体集積回路９０は、ＶＤＣ回路９２、Ａ／Ｄ変換器２２、論理回路９４およびセレクタ５２，７２を１つの半導体チップ上に集積しており、各回路は、それぞれ専用の入出力端子を有する。
【００６５】
電源は、ＶＤＣ回路９２用に端子２を介して電源電圧ＶＣＣが供給され、Ａ／Ｄ変換器２２用に端子１２を介して電源電圧ＡＶＣＣが供給される。また論理回路９４には、ＶＤＣ回路９２の出力である電圧ＶＤＣｏｕｔが供給される。つまり、ＶＤＣ回路９２、Ａ／Ｄ変換器２２および論理回路９４は、別々の電源電圧を受けて動作する。ここでは、接地電圧ＶＳＳつまりグラウンドは３つの回路で共通となっている。
【００６６】
ＶＤＣ回路９２は、電源電圧ＶＣＣを受けて内部で基準電圧ＶＤＣｒｅｆを発生し出力として電圧ＶＤＣｏｕｔを出力する。Ａ／Ｄ変換器２２は、入力ノードＡＮ０′，ＡＮ１′に入力される２つのアナログ入力信号をＡ／Ｄ変換用の参照電圧Ａｖｒｅｆを参照してＡ／Ｄ変換し、その結果をレジスタ３２に格納する。
【００６７】
セレクタ５２は、２入力のセレクタであり、出力がＡ／Ｄ変換器の入力ノードＡＮ０′に接続される。セレクタ７２も２入力のセレクタであり、その出力はＡ／Ｄ変換器２２の入力ノードＡＮ１′に接続される。
【００６８】
端子５４を介して与えられるアナログ信号ＡＮ０はセレクタ５２の一方の入力に与えられ、電圧変換回路３０の出力である電圧ＶＤＣｏｕｔが他方の入力に与えられる。さらに、端子１０を介して与えられるアナログ信号ＡＮ１は、セレクタ７２の一方の入力に与えられ、基準電圧発生回路９８の出力である基準電圧ＶＤＣｒｅｆがセレクタ７２の他方の入力に与えられる。
【００６９】
論理回路９４は、制御信号やデータとして信号Ｉ／Ｏ１〜Ｉ／Ｏｎをｎ個の端子１６〜１８を介してやり取りする。また、論理回路９４は、内蔵するレジスタのデータを端子１００〜１０２を介してデータＤ１〜Ｄｍとして入出力する。
【００７０】
ＶＤＣ回路９２は、基準電圧発生回路９８と、差動増幅器２８と、電圧変換回路３０とを含む。基準電圧発生回路９８は、ＶＤＣ回路９２の出力である電圧ＶＤＣｏｕｔの基準となる基準電圧ＶＤＣｒｅｆを生成する。差動増幅器２８は、電圧ＶＤＣｒｅｆと電圧ＶＤＣｏｕｔとを入力として受ける。差動増幅器２８は、電圧ＶＤＣｏｕｔが電圧ＶＤＣｒｅｆを下回っていれば電圧ＶＤＣｏｕｔを上昇させるように電圧変換回路３０に制御信号を出力する。
【００７１】
一方、差動増幅器２８は、電圧ＶＤＣｏｕｔが電圧ＶＤＣｒｅｆを上回っていれば電圧ＶＤＣｏｕｔを上昇させないように制御信号を電圧変換回路３０に出力する。電圧変換回路３０は、差動増幅器２８からの制御信号を受けて電源電圧ＶＣＣからこれより低い所定の電圧ＶＤＣｏｕｔを生成する。
【００７２】
Ａ／Ｄ変換器２２は、論理回路９４からの信号により動作の設定をすることができる。Ａ／Ｄ変換器２２は、入力ノードＡＮ０′，ＡＮ１′から入力されるアナログ信号をＡ／Ｄ変換する。Ａ／Ｄ変換器２２は、変換結果をデジタル量としてレジスタ３２に保存する。
【００７３】
論理回路９４は、セレクタ５２，７２の入力を選択する信号ＡＤＳＥＬ０，ＡＤＳＥＬ１を出力する。また、論理回路９４は、Ａ／Ｄ変換器２２内のレジスタ３２の値を読出すことができる。
【００７４】
論理回路９４は、第１レジスタ８４、第２レジスタ８６、第３レジスタ８８および演算器８９を含む。論理回路９４は、演算器８９により、第１レジスタ８４の値から第２レジスタ８６の値を差し引いた結果を第３レジスタ８８に格納することができる。
【００７５】
ＶＤＣ回路９２は、基準電圧発生回路９８を含む。基準電圧発生回路９８は、基準となる出力電圧とそれより高い１つまたは複数の電圧およびそれより低い１つまたは複数の電圧を出力することができる。
【００７６】
ＶＤＣ回路９２は、さらに、基準電圧を制御するためのレジスタ９６を含む。レジスタ９６の値により基準電圧発生回路９８が発生することができる複数の電圧のうちの１つを選択することができる。なお、図６では、レジスタ９６は、ＶＤＣ回路９２内に配置されているが、論理回路９４内もしくはそれ以外の領域に配置されていてもよい。
【００７７】
図７は、図６における基準電圧発生回路９８の構成を示した回路図である。
【００７８】
図７を参照して、基準電圧発生回路９８は、バンドギャップを使用して基準電圧を生成する基準電圧発生回路１１２と、論理回路からの制御信号Ｄｒｅｆによってセットされたレジスタ９６の出力をデコードしてゲート選択を制御する信号を出力するデコード＆ゲート選択回路１１４とを含む。デコード＆ゲート選択回路１１４は、制御信号として信号ＳＧ１〜ＳＧｎを出力する。
【００７９】
基準電圧発生回路９８は、さらに、信号ＳＧ１を反転するインバータ１１６と、信号ＳＧ２を反転するインバータ１２０と、信号ＳＧｎを反転するインバータ１２４とを含む。
【００８０】
基準電圧発生回路９８は、さらに、マイナス入力ノードに基準電圧発生回路１１２の出力を受け、プラス入力ノードにノードＮ４が接続されるアンプ１２８と、アンプ１２８の出力をゲートに受けソースが電源電圧ＶＣＣに結合されるＰチャネルＭＯＳトランジスタ１３０と、ＰチャネルＭＯＳトランジスタ１３０のドレインとノードＮ１との間に接続される抵抗１３２と、ノードＮ１とノードＮ２との間に接続される抵抗１３４と、ノードＮ３と接地ノードとの間に接続される抵抗１３６とを含む。ＰチャネルＭＯＳトランジスタ１３０のソースからは基準電圧ＶＤＣｒｅｆが出力される。なお、ノードＮ３とノードＮ２との間には所定数の直列に接続された抵抗が設けられている。
【００８１】
基準電圧発生回路９８は、さらに、ノードＮ１とノードＮ４とを信号ＳＧ１およびインバータ１１６の出力に応じて接続するトランスミッションゲート１１８と、ノードＮ２とノードＮ４とを信号ＳＧ２およびインバータ１２０の出力に応じて接続するトランスミッションゲート１２２と、ノードＮ３とノードＮ４とを信号ＳＧｎおよびインバータ１２４の出力に応じて接続するトランスミッションゲート１２６とを含む。
【００８２】
抵抗１３２、１３４、…、１３６によって電圧ＶＤＣｒｅｆは複数の分圧電圧に分割され、トランスミッションゲート１１８、１２２、…，１２６によって分圧電圧のうちの１つが選択されてノードＮ４に入力される。アンプ１２８は選択された分圧電圧を基準電圧発生回路１１２の出力と比較してＰチャネルＭＯＳトランジスタ１３０の導通を制御する。
【００８３】
再び図６を参照して、半導体集積回路９０の全体動作について説明する。
【００８４】
論理回路９４からの信号ＡＤＳＥＬ０に従ってセレクタ５２は電圧変換回路３０の出力する電圧ＶＤＣｏｕｔを選択する。セレクタ７２は、論理回路９４の出力する信号ＡＤＳＥＬ１に従って基準電圧ＶＤＣｒｅｆを選択する。
【００８５】
電圧ＶＤＣｏｕｔはＡ／Ｄ変換器２２によりＡ／Ｄ変換され、その結果はレジスタ３２に格納される。レジスタ３２の値は、論理回路９４によって読出され第１レジスタ８４にその値が格納される。
【００８６】
さらに、基準電圧ＶＤＣｒｅｆがＡ／Ｄ変換器２２によってＡ／Ｄ変換される。Ａ／Ｄ変換の結果はレジスタ３２に格納される。レジスタ３２の値は、論理回路９４によって読出され、第２レジスタ８６に格納される。論理回路９４内部の演算器８９は、第１レジスタ８４の値と第２レジスタ８６の値を参照してこれらの差分すなわち（第１レジスタの値−第２レジスタの値）を第３レジスタ８８に格納することができる。
【００８７】
論理回路９４内の第１レジスタ８４、第２レジスタ８６および第３レジスタ８８の内容は半導体集積回路９０の外部からデータＤ１〜Ｄｍとして端子１００〜１０２を介して読出すことができる。
【００８８】
半導体集積回路９０の外部から第１レジスタ８４、第２レジスタ８６および第３レジスタ８８の値を読出し、その結果基準電圧ＶＤＣｒｅｆに修正を加える必要がある場合には、第３レジスタ８８に現在の基準電圧ＶＤＣｒｅｆからの差分を示す数値を書込む。論理回路９４の制御により、第３レジスタ８８の内容をレジスタ９６に書込むことで、基準電圧発生回路９８の出力する基準電圧ＶＤＣｒｅｆを変更することができる。
【００８９】
実施の形態６では、第１レジスタ８４、第２レジスタ８６および第３レジスタ８８の値を半導体集積回路９０の外部に読出して動作条件に適した基準電圧を算定し、現在の基準電圧との差分をＶＤＣ回路９２が有するレジスタ９６に書込むことで基準電圧ＶＤＣｒｅｆを変更することができる。これにより、半導体集積回路９０に、よりマージンのある動作をさせることができるようになる。また、半導体集積回路に対する電源投入時など初期動作においては、半導体集積回路９０の外部にその設定動作を行なわせるためのブートプログラムを実行できる制御装置を配置することにより、使用の都度ＶＤＣ回路９２の基準電圧ＶＤＣｒｅｆを調整することができる。
【００９０】
［実施の形態７］
図８は、実施の形態７の半導体集積回路１４０の構成を示したブロック図である。
【００９１】
図８を参照して、半導体集積回路１４０は、ＶＤＣ回路１４１、Ａ／Ｄ変換器２２、論理回路１４２およびセレクタ５２，７２を１つの半導体チップ上に集積しており、各回路は、それぞれ専用の入出力端子を有する。
【００９２】
電源は、ＶＤＣ回路１４１用に端子２を介して電源電圧ＶＣＣが供給され、Ａ／Ｄ変換器２２用に端子１２を介して電源電圧ＡＶＣＣが供給される。また論理回路１４２には、ＶＤＣ回路１４１の出力である電圧ＶＤＣｏｕｔが供給される。つまり、ＶＤＣ回路１４１、Ａ／Ｄ変換器２２および論理回路１４２は、別々の電源電圧を受けて動作する。ここでは、接地電圧ＶＳＳつまりグラウンドは３つの回路で共通となっている。
【００９３】
ＶＤＣ回路１４１は、電源電圧ＶＣＣを受けて内部で基準電圧ＶＤＣｒｅｆを発生し出力として電圧ＶＤＣｏｕｔを出力する。Ａ／Ｄ変換器２２は、入力ノードＡＮ０′，ＡＮ１′に入力される２つのアナログ入力信号をＡ／Ｄ変換用の参照電圧Ａｖｒｅｆを参照してＡ／Ｄ変換し、その結果をレジスタ３２に格納する。
【００９４】
セレクタ５２は、２入力のセレクタであり、出力がＡ／Ｄ変換器の入力ノードＡＮ０′に接続される。セレクタ７２も２入力のセレクタであり、その出力はＡ／Ｄ変換器２２の入力ノードＡＮ１′に接続される。
【００９５】
端子５４を介して与えられるアナログ信号ＡＮ０はセレクタ５２の一方の入力に与えられ、電圧変換回路１４８の出力である電圧ＶＤＣｏｕｔが他方の入力に与えられる。さらに、端子１０を介して与えられるアナログ信号ＡＮ１は、セレクタ７２の一方の入力に与えられ、基準電圧発生回路２６の出力である基準電圧ＶＤＣｒｅｆがセレクタ７２の他方の入力に与えられる。
【００９６】
論理回路１４２は、制御信号やデータとして信号Ｉ／Ｏ１〜Ｉ／Ｏｎをｎ個の端子１６〜１８を介してやり取りする。また、論理回路１４２は、内蔵するレジスタのデータを端子１００〜１０２を介してデータＤ１〜Ｄｍとして入出力する。
【００９７】
ＶＤＣ回路１４１は、基準電圧発生回路２６と、差動増幅器１４７と、電圧変換回路１４８とを含む。基準電圧発生回路２６は、ＶＤＣ回路１４１の出力である電圧ＶＤＣｏｕｔの基準となる基準電圧ＶＤＣｒｅｆを生成する。
【００９８】
差動増幅器１４７は、電圧ＶＤＣｒｅｆと電圧ＶＤＣｏｕｔとを入力として受ける。差動増幅器１４７は、電圧ＶＤＣｏｕｔが電圧ＶＤＣｒｅｆを下回っていれば電圧ＶＤＣｏｕｔを上昇させるように電圧変換回路１４８に制御信号を出力する。
【００９９】
一方、差動増幅器１４７は、電圧ＶＤＣｏｕｔが電圧ＶＤＣｒｅｆを上回っていれば電圧ＶＤＣｏｕｔを上昇させないように制御信号を電圧変換回路１４８に出力する。電圧変換回路１４８は、差動増幅器１４７からの制御信号を受けて電源電圧ＶＣＣからこれより低い所定の電圧ＶＤＣｏｕｔを生成する。
【０１００】
Ａ／Ｄ変換器２２は、論理回路１４２からの信号により動作の設定をすることができる。Ａ／Ｄ変換器２２は、入力ノードＡＮ０′，ＡＮ１′から入力されるアナログ信号をＡ／Ｄ変換する。Ａ／Ｄ変換器２２は、変換結果をデジタル量としてレジスタ３２に保存する。
【０１０１】
論理回路１４２は、セレクタ５２，７２の入力を選択する信号ＡＤＳＥＬ０，ＡＤＳＥＬ１を出力する。また、論理回路１４２は、Ａ／Ｄ変換器２２内のレジスタ３２の値を読出すことができる。
【０１０２】
論理回路１４２は、第１レジスタ８４、第２レジスタ８６、第３レジスタ８８および演算器８９を含む。論理回路１４２は、演算器８９により、第１レジスタ８４の値から第２レジスタ８６の値を差し引いた結果を第３レジスタ８８に格納することができる。
【０１０３】
ＶＤＣ回路１４１の電圧変換回路１４８は、複数の電流駆動回路を含んでいる。通常は、基準となる個数の電流駆動回路が動作する。動作する電流駆動回路の個数は、レジスタ１４６の値により変更することができる。レジスタ１４６の値が負のときは、電流駆動回路の個数が増加する。レジスタ１４６の値が正のときは、電流駆動回路の個数が減少する。実施の形態７では、電流駆動能力を制御するためのレジスタ１４６は、ＶＤＣ回路１４１の内部に配置されているが、レジスタ１４６を論理回路１４２の内部もしくはそれ以外の領域に配置してもよい。論理回路１４２の制御により、第３レジスタ８８の値をレジスタ１４６に転送することができる。
【０１０４】
図９は、図８における差動増幅器１４７および電圧変換回路１４８の構成を示した回路図である。
【０１０５】
図９を参照して、差動増幅器１４７は、基準電圧ＶＤＣｒｅｆを各々のマイナス入力ノードに受け電圧ＶＤＣｏｕｔをプラス入力ノードに受ける比較回路１５２，１５４，…，１５６を含む。電圧変換回路１４８は、レジスタ１４６の出力をデコードして信号ＳＧ１１，ＳＧ１２，…，ＳＧ１ｎを出力するデコード＆ゲート選択回路１６２と、信号ＳＧ１１〜ＳＧ１ｎに応じて入力切換を行なう入力切換回路１６４と、入力切換回路１６４の出力に応じて駆動能力が変化する駆動回路１６６とを含む。駆動回路１６６は、複数の電流駆動回路であるＰチャネルＭＯＳトランジスタ１９７，１９８，１９９を含む。ＰチャネルＭＯＳトランジスタ１９７〜１９９は、電源ノードと電圧ＶＤＣｏｕｔを出力するノードとの間に並列に接続されている。
【０１０６】
入力切換回路１６４は、信号ＳＧ１１を受けて反転するインバータ１７２と、電源ノードとＰチャネルＭＯＳトランジスタ１９７のゲートとの間に接続されゲートに信号ＳＧ１１を受けるＰチャネルＭＯＳトランジスタ１７６と、信号ＳＧ１１とインバータ１７２の出力とに応じて比較回路１５２の出力をＰチャネルＭＯＳトランジスタ１９７のゲートに接続するトランスミッションゲート１７４とを含む。
【０１０７】
再び図８を参照して、半導体集積回路１４０の全体動作について説明する。
【０１０８】
論理回路１４２からの信号ＡＤＳＥＬ０に従ってセレクタ５２は電圧変換回路１４８の出力する電圧ＶＤＣｏｕｔを選択する。セレクタ７２は、論理回路１４２の出力する信号ＡＤＳＥＬ１に従って基準電圧ＶＤＣｒｅｆを選択する。
【０１０９】
電圧ＶＤＣｏｕｔはＡ／Ｄ変換器２２によりＡ／Ｄ変換され、その結果はレジスタ３２に格納される。レジスタ３２の値は、論理回路１４２によって読出され第１レジスタ８４にその値が格納される。
【０１１０】
さらに、基準電圧ＶＤＣｒｅｆがＡ／Ｄ変換器２２によってＡ／Ｄ変換される。Ａ／Ｄ変換の結果はレジスタ３２に格納される。レジスタ３２の値は、論理回路１４２によって読出され、第２レジスタ８６に格納される。論理回路１４２内部の演算器８９は、第１レジスタ８４の値と第２レジスタ８６の値を参照してこれらの差分すなわち（第１レジスタの値−第２レジスタの値）を第３レジスタ８８に格納することができる。
【０１１１】
論理回路１４２内の第１レジスタ８４、第２レジスタ８６および第３レジスタ８８の内容は半導体集積回路１４０の外部からデータＤ１〜Ｄｍとして端子１００〜１０２を介して読出すことができる。
【０１１２】
論理回路１４２が消費する電流が大きくなると、電圧ＶＤＣｏｕｔが低下する。これにより、Ａ／Ｄ変換された電圧ＶＤＣｏｕｔの値と電圧ＶＤＣｒｅｆの値の差分を格納した第３レジスタ８８の内容は負の値となる。そして論理回路１４２の制御により、レジスタ１４６に第３レジスタ８８の値が転送される。これにより図９の駆動回路１６６の中で動作するＰチャネルＭＯＳトランジスタの個数が増え、電圧の低下を抑止するように働く。
【０１１３】
また、半導体集積回路１４０の外部から第１レジスタ８４、第２レジスタ８６および第３レジスタ８８の保持値を読出した後、ＶＤＣ回路１４１の電流駆動能力に対して修正を加える場合には、外部から第３レジスタ８８に対して駆動回路１６６のＰチャネルＭＯＳトランジスタの標準動作個数からの動作させるべき個数の差分を示す数値を書込む。第３レジスタ８８の値が論理回路１４２によってＶＤＣ回路のレジスタ１４６に転送され、ＶＤＣ回路の電流駆動能力を変更することができる。
【０１１４】
実施の形態７では、第１レジスタ８４、第２レジスタ８６および第３レジスタ８８の値を半導体集積回路１４０の外部に読出して外部で動作条件に適した必要動作電流を判定し、現在の電圧変換回路１４８の電流駆動能力との差分をレジスタ１４６に書込むことで電圧変換回路１４８の電流駆動能力を変更できる。これにより、半導体集積回路１４０に、よりマージンのある動作をさせることができるようになる。
【０１１５】
また、半導体集積回路１４０の電源投入時など動作の初期において、半導体集積回路１４０の外部にレジスタ１４６の設定を行なわせるブートプログラムなどを実行できる制御装置を配置する。これにより使用の都度、ＶＤＣ回路１４１の電流駆動能力を調整することができるので、消費電流の最適化を図ることができる。
【０１１６】
さらに、半導体集積回路１４０の動作中においても、外部の制御回路により、第１レジスタ８４、第２レジスタ８６および第３レジスタ８８の内容を更新し、第３レジスタ８８の内容をレジスタ１４６に転送させることで、動的にＶＤＣ回路１４１の電流駆動能力を変更することが可能となる。
【０１１７】
［実施の形態８］
図１０は、実施の形態８の半導体集積回路２００の構成を示したブロック図である。
【０１１８】
図１０を参照して、半導体集積回路２００は、ＶＤＣ回路２０２と、Ａ／Ｄ変換器２２と、論理回路９４と、セレクタ５２，７２とを１つの半導体チップ上に集積している。各回路は、それぞれ専用の入出力端子を持っている。電源および各回路の入力信号の名称および機能は実施の形態６と同様であるので説明は繰返さない。
【０１１９】
ＶＤＣ回路２０２は、図６におけるＶＤＣ回路９２の構成において、レジスタ９６に代えてヒューズ回路２０４を含む。すなわち、ＶＤＣ回路２０２は、基準電圧発生回路９８と、差動増幅器２８と、電圧変換回路３０と、ヒューズ回路２０４とを含む。基準電圧発生回路９８は、ＶＤＣ回路２０２の出力である電圧ＶＤＣｏｕｔの基準となる基準電圧ＶＤＣｒｅｆを生成する。差動増幅器２８は、電圧ＶＤＣｒｅｆと電圧ＶＤＣｏｕｔとを入力として受ける。差動増幅器２８は、電圧ＶＤＣｏｕｔが電圧ＶＤＣｒｅｆを下回っていれば電圧ＶＤＣｏｕｔを上昇させるように電圧変換回路３０に制御信号を出力する。
【０１２０】
一方、差動増幅器２８は、電圧ＶＤＣｏｕｔが電圧ＶＤＣｒｅｆを上回っていれば電圧ＶＤＣｏｕｔを上昇させないように制御信号を電圧変換回路３０に出力する。電圧変換回路３０は、差動増幅器２８からの制御信号を受けて電源電圧ＶＣＣからこれより低い所定の電圧ＶＤＣｏｕｔを生成する。
【０１２１】
Ａ／Ｄ変換器２２は、論理回路９４からの信号により動作の設定をすることができる。Ａ／Ｄ変換器２２は、入力ノードＡＮ０′，ＡＮ１′から入力されるアナログ信号をＡ／Ｄ変換する。Ａ／Ｄ変換器２２は、変換結果をデジタル量としてレジスタ３２に保存する。
【０１２２】
論理回路９４は、セレクタ５２，７２の入力を選択する信号ＡＤＳＥＬ０，ＡＤＳＥＬ１を出力する。また、論理回路９４は、Ａ／Ｄ変換器２２内のレジスタ３２の値を読出すことができる。
【０１２３】
論理回路９４は、第１レジスタ８４、第２レジスタ８６、第３レジスタ８８および演算器８９を含む。論理回路９４は、演算器８９により、第１レジスタ８４の値から第２レジスタ８６の値を差し引いた結果を第３レジスタ８８に格納することができる。
【０１２４】
基準電圧発生回路９８は、基準となる出力電圧とそれより高い１つまたは複数の電圧およびそれより低い１つまたは複数の電圧を出力することができる。これらの電圧は、ヒューズ回路２０４のヒューズの設定により選択することができる。なお、図１０では、ヒューズ回路２０４は、ＶＤＣ回路２０２の内部に配置されているが、論理回路９４の内部もしくはそれ例外の領域に配置されていてもよい。
【０１２５】
図１１は、ヒューズ回路２０４の構成例を示した図である。
【０１２６】
図１１を参照して、ヒューズ回路２０４は、電源ノードと接地ノードとの間に直列に接続される抵抗Ｒとヒューズ素子ＦＵＳＥによって構成されるユニットを複数含む。複数のユニットからはそれぞれ制御信号ＳＩＧ１〜ＳＩＧｎが出力される。各ユニットにおいて、抵抗Ｒとヒューズ素子ＦＵＳＥの接続ノードから対応する制御信号が出力される。ヒューズ素子ＦＵＳＥが破壊され非導通状態となると制御信号はＨレベルとなり、ヒューズ素子がそのままであれば制御信号はＬレベルとなる。
【０１２７】
なお、抵抗とヒューズ素子の配置は逆でもよく、またヒューズ素子はアンチヒューズのように破壊後に両端が導通状態となるヒューズでもよい。
【０１２８】
再び図１０を参照して、半導体集積回路２００の全体動作について説明する。
【０１２９】
論理回路９４からの信号ＡＤＳＥＬ０に従ってセレクタ５２は電圧変換回路３０の出力する電圧ＶＤＣｏｕｔを選択する。セレクタ７２は、論理回路９４の出力する信号ＡＤＳＥＬ１に従って基準電圧ＶＤＣｒｅｆを選択する。
【０１３０】
電圧ＶＤＣｏｕｔはＡ／Ｄ変換器２２によりＡ／Ｄ変換され、その結果はレジスタ３２に格納される。レジスタ３２の値は、論理回路９４によって読出され第１レジスタ８４にその値が格納される。
【０１３１】
さらに、基準電圧ＶＤＣｒｅｆがＡ／Ｄ変換器２２によってＡ／Ｄ変換される。Ａ／Ｄ変換の結果はレジスタ３２に格納される。レジスタ３２の値は、論理回路９４によって読出され、第２レジスタ８６に格納される。論理回路９４内部の演算器８９は、第１レジスタ８４の値と第２レジスタ８６の値を参照してこれらの差分すなわち（第１レジスタの値−第２レジスタの値）を第３レジスタ８８に格納することができる。
【０１３２】
論理回路９４内の第１レジスタ８４、第２レジスタ８６および第３レジスタ８８の内容は半導体集積回路９０の外部からデータＤ１〜Ｄｍとして端子１００〜１０２を介して読出すことができる。
【０１３３】
半導体集積回路２００の外部から第１レジスタ８４、第２レジスタ８６および第３レジスタ８８の値を読出して基準電圧ＶＤＣｒｅｆの修正を加える必要があると判断された場合には、第３レジスタに、現在の基準電圧からの差分を示す数値を外部から書込む。そして、論理回路９４により第３レジスタ８８の内容をヒューズ回路２０４の内部のヒューズの設定として書込むことで基準電圧発生回路９８の出力電圧を変更することができる。
【０１３４】
実施の形態８では、第１レジスタ８４、第２レジスタ８６、第３レジスタ８８の値を半導体集積回路２００の外部から読出すことができる。そして、動作条件に適した基準電圧を判定することができる。判定した結果に応じて現在の基準電圧との差分をＶＤＣ回路２０２が有するヒューズ回路２０４の内部のヒューズの設定として書込むことで基準電圧ＶＤＣｒｅｆを半導体集積回路２００の使用条件に適した電圧に変更することができる。ヒューズに最適な値を書込むことで、以後、使用時は恒久的に最適値に修正された基準電圧を発生することができる。
【０１３５】
また、出荷テストにおいて第１〜第３レジスタに格納された値を読出し、各電圧値から判断される適正な値を算出した後、基準電圧修正値をヒューズに書込むことで、恒久的に基準電圧が調整された半導体集積回路を出荷することができる。
【０１３６】
［実施の形態９］
図１２は、実施の形態９の半導体集積回路２１０の構成を示したブロック図である。
【０１３７】
図１２を参照して、半導体集積回路２１０は、ＶＤＣ回路２１２と、Ａ／Ｄ変換器２２と、論理回路１４２とセレクタ５２，７２とを１つの半導体チップ上に集積している。各回路は、それぞれ専用の入出力端子を有する。電源および各回路の入力信号の名称および機能は実施の形態７と同様であるので説明は繰返さない。
【０１３８】
ＶＤＣ回路２１２は、基準電圧発生回路２６と、差動増幅器１４７と、電圧変換回路１４８とを含む。基準電圧発生回路２６は、ＶＤＣ回路２１２の出力である電圧ＶＤＣｏｕｔの基準となる基準電圧ＶＤＣｒｅｆを生成する。差動増幅器１４７は、電圧ＶＤＣｒｅｆと電圧ＶＤＣｏｕｔとを入力として受ける。差動増幅器１４７は、電圧ＶＤＣｏｕｔが電圧ＶＤＣｒｅｆを下回っていれば電圧ＶＤＣｏｕｔを上昇させるように電圧変換回路１４８に制御信号を出力する。
【０１３９】
一方、差動増幅器１４７は、電圧ＶＤＣｏｕｔが電圧ＶＤＣｒｅｆを上回っていれば電圧ＶＤＣｏｕｔを上昇させないように制御信号を電圧変換回路１４８に出力する。電圧変換回路１４８は、差動増幅器１４７からの制御信号を受けて電源電圧ＶＣＣからこれより低い所定の電圧ＶＤＣｏｕｔを生成する。
【０１４０】
Ａ／Ｄ変換器２２は、論理回路１４２からの信号により動作の設定をすることができる。Ａ／Ｄ変換器２２は、入力ノードＡＮ０′，ＡＮ１′から入力されるアナログ信号をＡ／Ｄ変換する。Ａ／Ｄ変換器２２は、変換結果をデジタル量としてレジスタ３２に保存する。
【０１４１】
論理回路１４２は、セレクタ５２，７２の入力を選択する信号ＡＤＳＥＬ０，ＡＤＳＥＬ１を出力する。また、論理回路１４２は、Ａ／Ｄ変換器２２内のレジスタ３２の値を読出すことができる。
【０１４２】
論理回路１４２は、第１レジスタ８４、第２レジスタ８６、第３レジスタ８８および演算器８９を含む。論理回路１４２は、演算器８９により、第１レジスタ８４の値から第２レジスタ８６の値を差し引いた結果を第３レジスタ８８に格納することができる。
【０１４３】
ＶＤＣ回路２１２は、図８に示したＶＤＣ回路１４１の構成において、レジスタ１４６に代えてヒューズ回路２１４を含む。他のＶＤＣ回路２１２の構成は、ＶＤＣ回路１４１と同様である。
【０１４４】
ＶＤＣ回路２１２の内部の電圧変換回路１４８は、複数の電流駆動用のトランジスタを含んでおり、通常は、基準となる個数の電流駆動用トランジスタが動作する。動作する電流駆動トランジスタの個数は、ヒューズ回路２１４のヒューズの設定により変更することができる。ヒューズにより設定される値が負のとき、駆動用トランジスタの個数が増加し、正のときは駆動用トランジスタの個数が減少するように電圧変換回路１４８は動作する。図１２では、ヒューズ回路２１４は、ＶＤＣ回路２１２内部に配置されているが、論理回路１４２の内部もしくはそれ以外の領域に配置されていてもよい。
【０１４５】
論理回路１４２の制御により、第３レジスタ８８の値をヒューズ回路２１４に書込むことができる。
【０１４６】
再び図１２を参照して、半導体集積回路２１０の全体動作について説明する。
【０１４７】
論理回路１４２からの信号ＡＤＳＥＬ０に従ってセレクタ５２は電圧変換回路３０の出力する電圧ＶＤＣｏｕｔを選択する。セレクタ７２は、論理回路１４２の出力する信号ＡＤＳＥＬ１に従って基準電圧ＶＤＣｒｅｆを選択する。
【０１４８】
電圧ＶＤＣｏｕｔはＡ／Ｄ変換器２２によりＡ／Ｄ変換され、その結果はレジスタ３２に格納される。レジスタ３２の値は、論理回路１４２によって読出され第１レジスタ８４にその値が格納される。
【０１４９】
さらに、基準電圧ＶＤＣｒｅｆがＡ／Ｄ変換器２２によってＡ／Ｄ変換される。Ａ／Ｄ変換の結果はレジスタ３２に格納される。レジスタ３２の値は、論理回路１４２によって読出され、第２レジスタ８６に格納される。論理回路１４２内部の演算器８９は、第１レジスタ８４の値と第２レジスタ８６の値を参照してこれらの差分すなわち（第１レジスタの値−第２レジスタの値）を第３レジスタ８８に格納することができる。
【０１５０】
論理回路１４２内の第１レジスタ８４、第２レジスタ８６および第３レジスタ８８の内容は半導体集積回路２１０の外部からデータＤ１〜Ｄｍとして端子１００〜１０２を介して読出すことができる。
【０１５１】
論理回路１４２が消費する電流が大きくなると、電圧ＶＤＣｏｕｔが低下する。これにより、Ａ／Ｄ変換された電圧ＶＤＣｏｕｔの値と電圧ＶＤＣｒｅｆの値の差分を格納した第３レジスタ８８の内容は負の値となる。そして論理回路１４２の制御により、レジスタ１４６に第３レジスタ８８の値が転送される。これにより図９の駆動回路１６６の中で動作するＰチャネルＭＯＳトランジスタの個数が増え、電圧の低下を抑止するように働く。
【０１５２】
つまり、半導体集積回路２１０の外部から第１レジスタ８４、第２レジスタ８６および第３レジスタ８８の値を読出して、ＶＤＣ回路２１２の電流駆動能力に対して修正を加える必要があるか否かを判断する。修正を加える必要がある場合には、第３レジスタ８８に駆動用トランジスタの標準動作個数からの差分を示す数値を書込むことで、論理回路１４２の制御によりＶＤＣ回路２１２の内部に配置されたヒューズ回路２１４に設定が書込まれ、ＶＤＣ回路の電流駆動能力が変更される。
【０１５３】
実施の形態９では、第１レジスタ８４、第２レジスタ８６および第３レジスタ８８の値を半導体集積回路２１０の外部に読出して動作条件に適した必要動作電流を判定することができる。そして現在の電圧変換回路１４８の電流駆動能力との差分をヒューズ回路２１４に書込むことで、動作に適した電圧変換回路１４８の駆動能力を恒久的に設定することができる。これにより、消費電力の最適化が図られたＶＤＣ回路を得ることができる。また、出荷テストにおいて、電流駆動能力に対する修正値をヒューズ回路に書込むことで、恒久的に適正な電流駆動能力に調整された半導体集積回路を出荷することができる。
【０１５４】
［実施の形態１０］
図１３は、実施の形態１０の半導体集積回路２２０の構成を示したブロック図である。
【０１５５】
図１３を参照して、半導体集積回路２２０は、ＶＤＣ回路２２２、Ａ／Ｄ変換器２２、論理回路２２６およびフラッシュメモリ２２４を１つの半導体チップ上に集積している。各回路は、それぞれ専用の入出力端子を有する。
【０１５６】
ＶＤＣ回路２２２には電源電圧ＶＣＣが供給され、Ａ／Ｄ変換器には電源電圧ＡＶＣＣが供給される。論理回路２２６にはＶＤＣ回路２２２の出力である電圧ＶＤＣｏｕｔが動作電源電圧として供給される。またフラッシュメモリ２２４には、外部から電源電圧ＦＶＣＣが供給されている。つまり、それぞれの回路のブロックは、別々の動作電源電圧を受けて動作する。なお、ここでは、接地電圧ＶＳＳつまりグラウンドは各ブロックに対して共通となっている。
【０１５７】
ＶＤＣ回路２２２は、基準電圧発生回路９８と、差動増幅器１４７と、電圧変換回路１４８と、レジスタ９６および１４６とを含む。ＶＤＣ回路２２２は、外部から電源電圧ＶＣＣを受けて、基準電圧発生回路９８の出力である基準電圧ＶＤＣｒｅｆと電圧変換回路１４８の出力である電圧ＶＤＣｏｕｔとを出力する。
【０１５８】
Ａ／Ｄ変換器２２は、電源電圧ＡＶＣＣを動作電源電圧として受ける。そしてＡ／Ｄ変換器２２は、Ａ／Ｄ変換用の参照電圧Ａｖｒｅｆを端子１４を介して受ける。
【０１５９】
セレクタ５２は、アナログ信号ＡＮ０と電圧ＶＤＣｏｕｔのいずれか一方を論理回路２２６から与えられる信号ＡＤＳＥＬ０に従って選択してＡ／Ｄ変換器２２の入力ノードＡＮ０′に与える。セレクタ７２は、基準電圧ＶＤＣｒｅｆとアナログ信号ＡＮ１のいずれか一方を信号ＡＤＳＥＬ１に従って選択してＡ／Ｄ変換器２２の入力ノードＡＮ１′に与える。
【０１６０】
論理回路２２６は、ＣＰＵ２２８と、第１レジスタ８４と、第２レジスタ８６と、第３レジスタ８８とを含む。論理回路２２６は、半導体集積回路２２０の外部と制御信号やデータの信号である信号Ｉ／Ｏ１〜Ｉ／Ｏｎをｎ個の端子１６〜１８を介して入出力する。また論理回路２２６は、レジスタのデータやＣＰＵ２２８が読出／書込を行なうデータをデータＤ１〜Ｄｍとしてｍ個の端子１００〜１０２を介してやり取りする。また、論理回路２２６は、ＣＰＵ２２８が出力するアドレス値Ａ１〜Ａｋを、端子２３０〜２３２を介して出力する。
【０１６１】
基準電圧発生回路９８は、ＶＤＣ回路２２２の出力電圧ＶＤＣｏｕｔの基準となる基準電圧ＶＤＣｒｅｆを生成する。差動増幅器１４７は、電圧ＶＤＣｒｅｆおよび電圧ＶＤＣｏｕｔを受けて比較する。
【０１６２】
差動増幅器１４７は電圧ＶＤＣｏｕｔが電圧ＶＤＣｒｅｆを下回っていれば、電圧ＶＤＣｏｕｔを上昇させるように制御信号を電圧変換回路１４８に伝える。一方、差動増幅器１４７は、電圧ＶＤＣｏｕｔが電圧ＶＤＣｒｅｆを上回っていれば、電圧ＶＤＣｏｕｔを上昇させないように制御信号を電圧変換回路１４８に伝達する。
【０１６３】
電圧変換回路１４８は、差動増幅器１４７からの制御信号に応じて電源電圧ＶＣＣからこれより低い所定の電圧ＶＤＣｏｕｔを生成する。
【０１６４】
Ａ／Ｄ変換器２２は、論理回路２２６からの信号により動作の設定をすることができる。Ａ／Ｄ変換器２２は、入力ノードＡＮ０′，ＡＮ１′から入力されるアナログ信号をＡ／Ｄ変換し、変換結果をデジタル量としてレジスタ３２に保存できる。
【０１６５】
論理回路２２６は、セレクタ５２，７２の入力を選択する信号ＡＤＳＥＬ０，ＡＤＳＥＬ１を出力する。また、論理回路２２６は、Ａ／Ｄ変換器２２の内部のレジスタ３２の値を読出すことができる。また、論理回路２２６は、第１レジスタ８４が保持する電圧ＶＤＣｏｕｔの値から第２レジスタが保持する基準電圧ＶＤＣｒｅｆの値を引いた結果を、第３レジスタ８８に格納することができる。この動作は、ＣＰＵ２２８が有する減算機能により行なうことができる。
【０１６６】
基準電圧発生回路９８および電圧変換回路１４８の構成は、図７および図９で説明したので説明は繰返さない。
【０１６７】
電圧変換回路１４８は、複数の駆動用トランジスタを含んでおり、通常は基準となる個数の駆動用トランジスタが動作する。動作する駆動用トランジスタの個数は、レジスタ１４６の値により変更することができる。レジスタ１４６の値が負のとき駆動用トランジスタの個数が増加し、正のときは駆動用トランジスタの個数が減少するように電圧変換回路１４８は動作する。なお、レジスタ１４６は、電流駆動用トランジスタの動作個数を格納し、レジスタ１４６で指定された個数のトランジスタが動作するように電圧変換回路１４８を構成してもよい。
【０１６８】
なお、図１３では、レジスタ１４６は、ＶＤＣ回路２２２の内部に配置されているが、論理回路２２６の内部もしくはそれ以外の領域に配置されていてもよい。また、レジスタ１４６に格納される値は、ＣＰＵ２２８を含む論理回路によって読出および書込をすることができる。
【０１６９】
基準電圧発生回路９８は、基準となる出力電圧と、それより高い１つまたは複数の電圧と、それより低い１つまたは複数の電圧とを出力することができる。これらの電圧は、レジスタ９６の値により選択することができる。図１３では、レジスタ９６はＶＤＣ回路２２２の内部に配置されているが、論理回路２２６の内部もしくはそれ以外の領域に配置されていてもよい。
【０１７０】
次に、半導体集積回路２２０の動作について説明する。
【０１７１】
フラッシュメモリ２２４には、ＣＰＵ２２８が実行する命令列およびその命令を実行する際に使用するデータが配置されている。実施の形態１０の動作を実行するためのＣＰＵ用命令列（プログラム）およびこれらの命令で使用するパラメータ（データ）もフラッシュメモリ２２４に格納されている。半導体集積回路２２０の電源立上時、リセット時または、ユーザが本プログラム以外のプログラムから本プログラムの起動を要求した際に、フラッシュメモリ２２４に格納されたプログラムを実行することができる。
【０１７２】
図１４は、ＣＰＵが行なう第１の処理を示したフローチャートである。
【０１７３】
図１４を参照して、ステップＳ１で処理が開始され、ステップＳ２でセレクタの設定が行なわれる。セレクタ５２は、電圧変換回路１４８が出力する電圧ＶＤＣｏｕｔを選択する。またセレクタ７２は、基準電圧発生回路９８の出力する電圧ＶＤＣｒｅｆを選択する。このような選択を行なうようにＣＰＵ２２８は信号ＡＤＳＥＬ０，ＡＤＳＥＬ１を制御する。
【０１７４】
続いてステップＳ３において、Ａ／Ｄ変換器２２をイネーブルに設定する。するとＡ／Ｄ変換器２２はまず電圧ＶＤＣｏｕｔをＡ／Ｄ変換し、その結果をレジスタ３２に格納する。この変換結果は、レジスタ３２からＣＰＵ２２８によって読出され、第１レジスタ８４に格納される。さらに、電圧ＶＤＣｒｅｆがＡ／Ｄ変換器によってＡ／Ｄ変換され、レジスタ３２に格納される。電圧ＶＤＣｒｅｆの変換結果は、ＣＰＵ２２８によって読出され、第２レジスタ８６に格納される（ステップＳ４）。
【０１７５】
続いてステップＳ５において演算処理が行なわれる。つまりＣＰＵは第１レジスタ８４と第２レジスタ８６の値を入力として、これらの差分（第１レジスタの値−第２レジスタの値）を第３レジスタ８８に格納する。
【０１７６】
続いてステップＳ６において第１レジスタから第３のレジスタの内容は、ＣＰＵ２２８が実行する転送命令により、この半導体集積回路２２０の外部へ端子１００〜１０２を介してデータＤ１〜Ｄｍとして出力することができる。
【０１７７】
図１５は、ＣＰＵ２２８の第２の処理を説明するためのフローチャートである。
【０１７８】
図１５では、ＣＰＵを含む論理回路２２６の消費する電流が大きくなった場合に電圧ＶＤＣｏｕｔが低下したときの電圧修正について説明する。電圧ＶＤＣｏｕｔが低下すると、Ａ／Ｄ変換された電圧ＶＤＣｏｕｔと電圧ＶＤＣｒｅｆの差分を格納した、第３レジスタ８８の内容は負の値となる。
【０１７９】
ステップＳ１１において処理が開始されステップＳ１２において第３レジスタ８８の値が読出される。続いてステップＳ１３において第３レジスタの値の正負判定が行なわれる。
【０１８０】
第３レジスタの値が負の場合には、ステップＳ１４に進み、第３レジスタ８８の値を電流駆動能力制御用のレジスタへＣＰＵ２２８が転送する。これにより電圧変換回路１４８の内部の駆動用トランジスタの個数が増えるので、電圧の低下を抑止するように電圧変換回路１４８は働く。
【０１８１】
一方、ステップＳ３において第３レジスタの値が正であると判定された場合にはステップＳ１４を行なわずにステップＳ１５に進み処理が終了する。
【０１８２】
また、フラッシュメモリ２２４に配置された目標電圧値（最高値、最低値）と電圧を比較することによって、電圧ＶＤＣｒｅｆおよび電圧ＶＤＣｏｕｔが適正か否かを判定し、データバスを介して端子１００〜１０２からデータＤ１〜Ｄｍとして出力してもよいし、入出力端子１６〜１８を介して信号Ｉ／Ｏ１〜Ｉ／Ｏｎとして半導体集積回路２２０の外部に通知してもよい。
【０１８３】
図１６は、ＣＰＵが行なう第３の処理を説明するためのフローチャートである。
【０１８４】
図１６を参照して、ＣＰＵ２２８が電圧ＶＤＣｏｕｔを修正する場合について説明する。
【０１８５】
ステップＳ２１において処理が開始されると、続いてステップＳ２２においてＣＰＵ２２８は、第３レジスタ８８の値を読出す。そして、続いてステップＳ２３においてフラッシュメモリ２２４に格納されていた目標の上限値を読出す。
【０１８６】
続いてステップＳ２４においてＣＰＵ２２８は、第３レジスタ８８の値が目標上限値を超えているか否かを判断する。目標上限値を超えていると判断した場合には、ステップＳ２５においてＣＰＵ２２８は、レジスタ９６の値を１つ小さくし基準電圧発生回路９８に対して電圧ＶＤＣｒｅｆを下げるように指示する。またステップＳ２４において第３レジスタの値が目標上限値を超えていない場合にはステップＳ２５は行なわずステップＳ２６に進む。
【０１８７】
ステップＳ２６では、フラッシュメモリ２２４に格納されている目標下限値を読出す。そしてステップＳ２７において第３レジスタの値が目標下限値よりも小さいか否かが判断される。そして目標下限値よりも小さい場合にはステップＳ２８に進み、基準電圧制御用のレジスタ９６の値を１つ大きくする。
【０１８８】
一方、第３レジスタの値が目標下限値よりも小さくなかった場合にはステップＳ２８は行なわれずステップＳ２９に進み処理が終了する。このように、ＣＰＵの動作によって第１レジスタ８４、第２レジスタ８６および第３レジスタ８８の保持する値を読出してフラッシュメモリ２２４に配置された目標値と比較する。そしてその比較結果によってレジスタ９６に修正値を書込むことで電圧ＶＤＣｒｅｆを修正することができる。修正した結果は電圧ＶＤＣｏｕｔをＡ／Ｄ変換した値を観測することにより修正が成功したか否かが確認できる。たとえば、ＣＰＵを含む論理回路の最高動作速度を上げるために動作電圧を上げる必要がある場合は、基準電圧を上昇させ、その一方ＣＰＵを含む論理回路の消費電流を低減する場合には基準電圧を低下させる。
【０１８９】
以上説明したように、実施の形態１０では、論理回路内にＣＰＵを持ち、フラッシュメモリにはＣＰＵ用のプログラムおよびデータを配置する。これによりプログラム制御によって電圧ＶＤＣｒｅｆおよび電圧ＶＤＣｏｕｔの管理を容易に行なうことができる。具体的には、ＣＰＵを含む論理回路の動作時の電圧低下を検知し、ＶＤＣ回路の電流駆動能力を変更したり、動作電圧を必要に応じ変更することができる。また、フラッシュメモリの制御プログラムおよびそのプログラムが使用するデータを書換えることにより、アプリケーションに応じたＶＤＣ回路の管理が個々の半導体集積回路ごとに行なうことができる。
【０１９０】
［実施の形態１１］
図１７は、実施の形態１１の半導体集積回路２４０の構成を示すブロック図である。
【０１９１】
図１７を参照して、半導体集積回路２４０は、図１３に示した半導体集積回路２２０の構成に加えてリセット信号を入力する端子２４２とモード信号を入力する端子２４４とを含む。
【０１９２】
電源投入時に端子２４２に入力するリセット信号ＲＥＳＥＴと同時に端子２４４に与えるモード信号ＭＯＤを活性化すると、実施の形態１０で説明したフラッシュメモリ内に配置された所定のプログラムが動作する。そして半導体集積回路２４０は、電圧ＶＤＣｒｅｆおよび電圧ＶＤＣｏｕｔをＡ／Ｄ変換し、その値をデジタル値として半導体集積回路の外部へデータＤ１〜Ｄｍとして出力することができる。他の構成や動作は、実施の形態１０の場合と同様であるので説明は繰返さない。
【０１９３】
デジタル値に変換された値とフラッシュメモリに格納された目標設定値とを比較することで、レジスタ９６，１４６の値を変更しＶＤＣ回路の電流駆動能力を変化させることや、ＶＤＣ回路の基準電圧ＶＤＣｒｅｆを変化させることができる。
【０１９４】
なお、実施の形態１１では、モード信号ＭＯＤは、リセット信号ＲＥＳＥＴと同時に活性化させて認識されることにしたが、モード信号ＭＯＤのみを有効にすることでＣＰＵにこれを認識させてもよい。
【０１９５】
また、モード信号を入力する端子を複数設け、図１４〜１６のフローチャートで示したような動作に別々の端子を対応付け、動作を限定的に行なわせてもよい。たとえば、モード端子を２つ設け信号ＭＯＤ１，ＭＯＤ２を与え、信号ＭＯＤ１を有効にした場合はレジスタ１４６を変更してＶＤＣ回路の電力駆動能力を変更し、また信号ＭＯＤ２を有効にした場合はレジスタ９６の値を変更して基準電圧を変更するようにしてもよい。
【０１９６】
以上説明したように、実施の形態１１では、モード端子を設けることにより、リセット時にＶＤＣ回路の電流駆動能力や基準電圧ＶＤＣｒｅｆを修正することができる。また、リセットとは無関係にモード端子を有効にする構成とすれば、半導体集積回路２４０の外部に配置したハードウェアからモード端子を有効すると即座に、ＶＤＣ回路の電流駆動能力や基準電圧ＶＤＣｒｅｆの修正をすることができる。
【０１９７】
［実施の形態１２］
図１８は、実施の形態１２の半導体集積回路２５０の構成を示したブロック図である。
【０１９８】
図１８を参照して、半導体集積回路２５０は、ＶＤＣ回路２２２と、Ａ／Ｄ変換器２２と、論理回路２５２と、セレクタ５２，７２とを１つの半導体チップ上に集積している。各回路は、それぞれ専用の入出力端子を有する。ＶＤＣ回路２２２は、基準電圧発生回路９８と、差動増幅器１４７と、電圧変換回路１４８と、レジスタ９６，１４６とを含む。
【０１９９】
Ａ／Ｄ変換器２２は、Ａ／Ｄ変換の結果を格納するレジスタ３２を含む。
【０２００】
論理回路２５２は、ＣＰＵ２２８と、ＳＲＡＭ２５４と、マスクＲＯＭ２５６と、第１レジスタ８４と、第２レジスタ８６と、第３レジスタ８８とを含む。
【０２０１】
電源について説明する。ＶＤＣ回路２２２は端子２を介して電源電圧ＶＣＣを受ける。Ａ／Ｄ変換器２２は、端子１２を介して電源電圧ＡＶＣＣを受ける。ＣＰＵ２２８を含む論理回路２５２は、ＶＤＣ回路２２２の出力である電圧ＶＤＣｏｕｔを電源電圧として受ける。つまり、それぞれの回路のブロックは、別々の電源電圧を受けて動作する。ここで、接地電圧ＶＳＳつまりグラウンドは各ブロックに対して共通である。
【０２０２】
ＶＤＣ回路２２２は、基準電圧発生回路９８と、差動増幅器１４７と、電圧変換回路１４８と、レジスタ９６および１４６とを含む。ＶＤＣ回路２２２は、外部から電源電圧ＶＣＣを受けて、基準電圧発生回路９８の出力である基準電圧ＶＤＣｒｅｆと電圧変換回路１４８の出力である電圧ＶＤＣｏｕｔとを出力する。
【０２０３】
Ａ／Ｄ変換器２２は、電源電圧ＡＶＣＣを動作電源電圧として受ける。そしてＡ／Ｄ変換器２２は、Ａ／Ｄ変換用の参照電圧Ａｖｒｅｆを端子１４を介して受ける。
【０２０４】
セレクタ５２は、アナログ信号ＡＮ０と電圧ＶＤＣｏｕｔのいずれか一方を論理回路２５２から与えられる信号ＡＤＳＥＬ０に従って選択してＡ／Ｄ変換器２２の入力ノードＡＮ０′に与える。セレクタ７２は、基準電圧ＶＤＣｒｅｆとアナログ信号ＡＮ１のいずれか一方を信号ＡＤＳＥＬ１に従って選択してＡ／Ｄ変換器２２の入力ノードＡＮ１′に与える。
【０２０５】
論理回路２５２は、ＣＰＵ２２８と、第１レジスタ８４と、第２レジスタ８６と、第３レジスタ８８と、ＳＲＡＭ２５４と、マスクＲＯＭとを含む。論理回路２５２は、半導体集積回路２５０の外部と制御信号やデータの信号である信号Ｉ／Ｏ１〜Ｉ／Ｏｎをｎ個の端子１６〜１８を介して入出力する。また論理回路２５２は、レジスタのデータやＣＰＵ２２８が読出／書込を行なうデータをデータＤ１〜Ｄｍとしてｍ個の端子１００〜１０２を介してやり取りする。また、論理回路２５２は、ＣＰＵ２２８が出力するアドレス値Ａ１〜Ａｋを、端子２３０〜２３２を介して出力する。
【０２０６】
基準電圧発生回路９８は、ＶＤＣ回路２２２の出力電圧ＶＤＣｏｕｔの基準となる基準電圧ＶＤＣｒｅｆを生成する。差動増幅器１４７は、電圧ＶＤＣｒｅｆおよび電圧ＶＤＣｏｕｔを受けて比較する。
【０２０７】
差動増幅器１４７は電圧ＶＤＣｏｕｔが電圧ＶＤＣｒｅｆを下回っていれば、電圧ＶＤＣｏｕｔを上昇させるように制御信号を電圧変換回路１４８に伝える。一方、差動増幅器１４７は、電圧ＶＤＣｏｕｔが電圧ＶＤＣｒｅｆを上回っていれば、電圧ＶＤＣｏｕｔを上昇させないように制御信号を電圧変換回路１４８に伝達する。
【０２０８】
電圧変換回路１４８は、差動増幅器１４７からの制御信号に応じて電源電圧ＶＣＣからこれより低い所定の電圧ＶＤＣｏｕｔを生成する。
【０２０９】
ＡＤＣ回路２２は、論理回路２５２からの信号により動作の設定をすることができる。Ａ／Ｄ変換器２２は、入力ノードＡＮ０′，ＡＮ１′から入力されるアナログ信号をＡ／Ｄ変換し、変換結果をデジタル量としてレジスタ３２に保存できる。
【０２１０】
論理回路２５２は、セレクタ５２，７２の入力を選択する信号ＡＤＳＥＬ０，ＡＤＳＥＬ１を出力する。また、論理回路２５２は、Ａ／Ｄ変換器２２の内部のレジスタ３２の値を読出すことができる。また、論理回路２５２は、第１レジスタ８４が保持する電圧ＶＤＣｏｕｔの値から第２レジスタが保持する基準電圧ＶＤＣｒｅｆの値を引いた結果を、第３レジスタ８８に格納することができる。この動作は、ＣＰＵ２２８が有する減算機能により行なうことができる。
【０２１１】
基準電圧発生回路９８および電圧変換回路１４８の構成は、図７および図９で説明したので説明は繰返さない。
【０２１２】
電圧変換回路１４８は、複数の駆動用トランジスタを含んでおり、通常は基準となる個数の駆動用トランジスタが動作する。動作する駆動用トランジスタの個数は、レジスタ１４６の値により変更することができる。レジスタ１４６の値が負のとき駆動用トランジスタの個数が増加し、正のときは駆動用トランジスタの個数が減少するように電圧変換回路１４８は動作する。なお、レジスタ１４６は、電流駆動用トランジスタの動作個数を格納し、レジスタ１４６で指定された個数のトランジスタが動作するように電圧変換回路１４８を構成してもよい。
【０２１３】
なお、図１８では、レジスタ１４６は、ＶＤＣ回路２２２の内部に配置されているが、論理回路２５２の内部もしくはそれ以外の領域に配置されていてもよい。また、レジスタ１４６に格納される値は、ＣＰＵ２２８を含む論理回路２５２によって読出および書込をすることができる。
【０２１４】
基準電圧発生回路９８は、基準となる出力電圧と、それより高い１つまたは複数の電圧と、それより低い１つまたは複数の電圧とを出力することができる。これらの電圧は、レジスタ９６の値により選択することができる。図１８では、レジスタ９６はＶＤＣ回路２２２の内部に配置されているが、論理回路２５２の内部もしくはそれ以外の領域に配置されていてもよい。
【０２１５】
次に、本発明の半導体集積回路２５０の全体動作について説明する。
【０２１６】
ＣＰＵ２２８が実行する命令列およびその命令を実行する際に使用するデータは、半導体集積回路２５０の外部に配置されたＥＥＰＲＯＭなどの記憶装置（図示せず）に格納されている。
【０２１７】
マスクＲＯＭ２５６には、上記記憶装置内の命令列およびデータをＳＲＡＭ２５４にロードし、ＣＰＵ２２８の動作をそのロードしたプログラムへ移すためのプログラム（ブートプログラム）が配置されている。
【０２１８】
このブートプログラムは、半導体集積回路２５０のリセット時もしくはマスクＲＯＭ内の他のプログラムがそのブートプログラムの起動を要求した際に動作する。以下に、リセット時にこのブートプログラムでＳＲＡＭ２５４内にブートされたプログラムによる動作を説明する。
【０２１９】
実施の形態１２でも、図１４、図１５、図１６で説明した動作と同様な動作が行われる。つまり、処理が開始され、セレクタの設定が行なわれる。セレクタ５２は、電圧変換回路１４８が出力する電圧ＶＤＣｏｕｔを選択する。またセレクタ７２は、基準電圧発生回路９８の出力する電圧ＶＤＣｒｅｆを選択する。このような選択を行なうようにＣＰＵ２２８は信号ＡＤＳＥＬ０，ＡＤＳＥＬ１を制御する。
【０２２０】
続いて、Ａ／Ｄ変換器２２がイネーブルに設定される。するとＡ／Ｄ変換器２２はまず電圧ＶＤＣｏｕｔをＡ／Ｄ変換し、その結果をレジスタ３２に格納する。この変換結果は、レジスタ３２からＣＰＵ２２８によって読出され、第１レジスタ８４に格納される。さらに、電圧ＶＤＣｒｅｆがＡ／Ｄ変換器によってＡ／Ｄ変換され、レジスタ３２に格納される。電圧ＶＤＣｒｅｆの変換結果は、ＣＰＵ２２８によって読出され、第２レジスタ８６に格納される。
【０２２１】
続いて、演算処理が行なわれる。つまりＣＰＵは第１レジスタ８４と第２レジスタ８６の値を入力として、これらの差分（第１レジスタの値−第２レジスタの値）を第３レジスタ８８に格納する。
【０２２２】
続いて、第１レジスタから第３のレジスタの内容は、ＣＰＵ２２８が実行する転送命令により、この半導体集積回路２５０の外部へ端子１００〜１０２を介してデータＤ１〜Ｄｍとして出力することができる。
【０２２３】
ＣＰＵを含む論理回路２５２の消費する電流が大きくなった場合に電圧ＶＤＣｏｕｔが低下したときの電圧修正について説明する。電圧ＶＤＣｏｕｔが低下すると、Ａ／Ｄ変換された電圧ＶＤＣｏｕｔと電圧ＶＤＣｒｅｆの差分を格納した、第３レジスタ８８の内容は負の値となる。
【０２２４】
第３レジスタ８８の値が読出され、続いて第３レジスタの値の正負判定が行なわれる。
【０２２５】
第３レジスタの値が負の場合には、第３レジスタ８８の値を電流駆動能力制御用のレジスタへＣＰＵ２２８が転送する。これにより電圧変換回路１４８の内部の駆動用トランジスタの個数が増えるので、電圧の低下を抑止するように電圧変換回路１４８は働く。
【０２２６】
一方、第３レジスタの値が正であると判定された場合には、第３レジスタ８８の値をレジスタへＣＰＵ２２８が転送することなく、処理が終了する。
【０２２７】
また、ブートによってＥＥＰＲＯＭなどの記憶装置（図示せず）からＳＲＡＭ内に配置された目標電圧値（最高値、最低値）と電圧を比較することによって、電圧ＶＤＣｒｅｆおよび電圧ＶＤＣｏｕｔが適正か否かを判定し、データバスを介して端子１００〜１０２からデータＤ１〜Ｄｍとして出力してもよいし、入出力端子１６〜１８を介して信号Ｉ／Ｏ１〜Ｉ／Ｏｎとして半導体集積回路２２０の外部に通知してもよい。
【０２２８】
また、ＣＰＵ２２８が電圧ＶＤＣｏｕｔを修正する場合には、ＣＰＵ２２８は、第３レジスタ８８の値を読出す。ＣＰＵ２２８は、第３レジスタ８８の値が目標上限値を超えているか否かを判断する。また、ＣＰＵ２２８は第３レジスタの値が目標下限値よりも小さいか否かを判断する。このように、ＣＰＵの動作によって第１レジスタ８４、第２レジスタ８６および第３レジスタ８８の保持する値を読出して、ブートによってＥＥＰＲＯＭなどの記憶装置（図示せず）からＳＲＡＭ内に配置された目標値と比較する。そしてその比較結果によってレジスタ９６に修正値を書込むことで電圧ＶＤＣｒｅｆを修正することができる。修正した結果は電圧ＶＤＣｏｕｔをＡ／Ｄ変換した値を観測することにより修正が成功したか否かが確認できる。
【０２２９】
たとえば、ＣＰＵを含む論理回路の最高動作速度を上げるために動作電圧を上げる必要がある場合は、基準電圧を上昇させ、その一方ＣＰＵを含む論理回路の消費電流を低減する場合には基準電圧を低下させる。
【０２３０】
実施の形態１２では、マスクＲＯＭ２５６上のブートプログラムによりＳＲＡＭ２５４にロードされたプログラムによって、ＶＤＣ回路２２２の電流駆動能力や基準電圧ＶＤＣｒｅｆを修正することができる。実施例１２では、フラッシュメモリを集積回路上に配置していないため、半導体集積回路のウェハプロセスの工程数がフラッシュメモリを搭載する場合と比較して削減できる。したがって半導体集積回路の製造コストを低減することができる。
【０２３１】
［実施の形態１３］
図１９は、実施の形態１３の半導体集積回路２６０の構成を示したブロック図である。
【０２３２】
図１９を参照して、半導体集積回路２６０は、ＶＤＣ回路２６２と、Ａ／Ｄ変換器２２と、論理回路２６４と、セレクタ５２，７２とを１つの半導体チップ上に集積している。各回路はそれぞれ専用の入出力端子を有する。
【０２３３】
ＶＤＣ回路２６２は、基準電圧発生回路２６と、差動増幅器２８と、電圧変換回路２６８と、レジスタ２６６とを含む。Ａ／Ｄ変換器２２はＡ／Ｄ変換の結果を格納するレジスタ３２を含む。
【０２３４】
論理回路２６４は、第１レジスタ８４と、第２レジスタ８６と、第３レジスタ８８と、演算器８９とを含む。
【０２３５】
電源は、ＶＤＣ回路２６２用に端子２を介して電源電圧ＶＣＣが供給され、Ａ／Ｄ変換器２２用に端子１２を介して電源電圧ＡＶＣＣが供給される。また論理回路２６４には、ＶＤＣ回路２６２の出力である電圧ＶＤＣｏｕｔが供給される。つまり、ＶＤＣ回路２６２、Ａ／Ｄ変換器２２および論理回路２６４は、別々の電源電圧を受けて動作する。ここでは、接地電圧ＶＳＳつまりグラウンドは３つの回路で共通となっている。
【０２３６】
ＶＤＣ回路２６２は、電源電圧ＶＣＣを受けて内部で基準電圧ＶＤＣｒｅｆを発生し出力として電圧ＶＤＣｏｕｔを出力する。Ａ／Ｄ変換器２２は、入力ノードＡＮ０′，ＡＮ１′に入力される２つのアナログ入力信号をＡ／Ｄ変換用の参照電圧Ａｖｒｅｆを参照してＡ／Ｄ変換し、その結果をレジスタ３２に格納する。
【０２３７】
セレクタ５２は、２入力のセレクタであり、出力がＡ／Ｄ変換器の入力ノードＡＮ０′に接続される。セレクタ７２も２入力のセレクタであり、その出力はＡ／Ｄ変換器２２の入力ノードＡＮ１′に接続される。
【０２３８】
端子５４を介して与えられるアナログ信号ＡＮ０はセレクタ５２の一方の入力に与えられ、電圧変換回路２６８の出力である電圧ＶＤＣｏｕｔが他方の入力に与えられる。さらに、端子１０を介して与えられるアナログ信号ＡＮ１は、セレクタ７２の一方の入力に与えられ、基準電圧発生回路９８の出力である基準電圧ＶＤＣｒｅｆがセレクタ７２の他方の入力に与えられる。
【０２３９】
論理回路２６４は、制御信号やデータとして信号Ｉ／Ｏ１〜Ｉ／Ｏｎをｎ個の端子１６〜１８を介してやり取りする。また、論理回路２６４は、内蔵するレジスタのデータを端子１００〜１０２を介してデータＤ１〜Ｄｍとして入出力する。
【０２４０】
ＶＤＣ回路２６２は、基準電圧発生回路９８と、差動増幅器２８と、電圧変換回路２６８とを含む。基準電圧発生回路９８は、ＶＤＣ回路２６２の出力である電圧ＶＤＣｏｕｔの基準となる基準電圧ＶＤＣｒｅｆを生成する。差動増幅器２８は、電圧ＶＤＣｒｅｆと電圧ＶＤＣｏｕｔとを入力として受ける。差動増幅器２８は、電圧ＶＤＣｏｕｔが電圧ＶＤＣｒｅｆを下回っていれば電圧ＶＤＣｏｕｔを上昇させるように電圧変換回路２６８に制御信号を出力する。
【０２４１】
一方、差動増幅器２８は、電圧ＶＤＣｏｕｔが電圧ＶＤＣｒｅｆを上回っていれば電圧ＶＤＣｏｕｔを上昇させないように制御信号を電圧変換回路２６８に出力する。電圧変換回路２６８は、差動増幅器２８からの制御信号を受けて電源電圧ＶＣＣからこれより低い所定の電圧ＶＤＣｏｕｔを生成する。
【０２４２】
Ａ／Ｄ変換器２２は、論理回路２６４からの信号により動作の設定をすることができる。Ａ／Ｄ変換器２２は、入力ノードＡＮ０′，ＡＮ１′から入力されるアナログ信号をＡ／Ｄ変換する。Ａ／Ｄ変換器２２は、変換結果をデジタル量としてレジスタ３２に保存する。
【０２４３】
論理回路２６４は、セレクタ５２，７２の入力を選択する信号ＡＤＳＥＬ０，ＡＤＳＥＬ１を出力する。また、論理回路２６４は、Ａ／Ｄ変換器２２内のレジスタ３２の値を読出すことができる。
【０２４４】
論理回路２６４は、第１レジスタ８４、第２レジスタ８６、第３レジスタ８８および演算器８９を含む。論理回路２６４は、演算器８９により、第１レジスタ８４の値から第２レジスタ８６の値を差し引いた結果を第３レジスタ８８に格納することができる。
【０２４５】
ＶＤＣ回路２６２に配置されているレジスタ２６６は、ＶＤＣ回路の動作モードを変更するための制御値を格納するレジスタである。レジスタ２６６に設定する値により、ＶＤＣ通常動作モードと、ＶＤＣスルーモードと、ＶＤＣ停止モードの３つのモードのうちの１つを選択することができる。ＶＤＣ通常動作モードでは、ＶＤＣ回路２６２は上述した通常動作を行なう。ＶＤＣスルーモードでは、基準電圧発生回路２６および差動増幅器２８は動作を停止し、電圧変換回路２６８は、入力された電源電圧ＶＣＣを電圧変換を行なわずにほぼそのままの電圧として出力する。ＶＤＣ停止モードでは、ＶＤＣ回路２６２は動作を停止し、電圧ＶＤＣｏｕｔは非活性化される。なお、図１９では、レジスタ２６６はＶＤＣ回路２６２の内部に配置されているが、論理回路２６４の内部に配置されていてもよい。
【０２４６】
図２０は、図１９における電圧変換回路２６８の構成を示した回路図である。
【０２４７】
図２０を参照して、電圧変換回路２６８は、電源ノードと電圧ＶＤＣｏｕｔを出力するノードとの間に接続されるＰチャネルＭＯＳトランジスタ２８２と、信号ＭＶＤＣoff，ＭＶＤＣthroughを受けるＮＯＲ回路２７４と、ＮＯＲ回路２７４の出力を受けて反転するインバータ２７２と、ＮＯＲ回路２７４の出力およびインバータ２７２の出力に応じて差動増幅器２８の出力をＰチャネルＭＯＳトランジスタ２８２のゲートに接続するトランスミッションゲート２７０とを含む。なお、信号ＭＶＤＣoffはＶＤＣ停止モード時に活性化される信号である。また信号ＭＶＤＣthroughはＶＤＣスルーモード時に活性化される信号である。図１９の論理回路２６４から出力されるモード設定信号ＭＶＤＣに応じてレジスタ２６６に設定が書込まれこの設定に応じて信号ＭＶＤＣoff，ＭＶＤＣthroughが活性化／非活性化される。
【０２４８】
電圧変換回路２６８は、さらに、信号ＭＶＤＣoffを受けて反転するインバータ２７６と、電源ノードとＰチャネルＭＯＳトランジスタ２８２のゲートとの間に接続されゲートにインバータ２７６の出力を受けるＰチャネルＭＯＳトランジスタ２７８と、ＰチャネルＭＯＳトランジスタ２８２のゲートと接地ノードとの間に接続されゲートに信号ＭＶＤＣthroughを受けるＮチャネルＭＯＳトランジスタ２８０とを含む。
【０２４９】
信号ＭＶＤＣoffが活性化されるとトランスミッションゲート２７０は非導通状態となり差動増幅器２８の出力とＰチャネルＭＯＳトランジスタ２８２のゲートとを分離する。そしてＰチャネルＭＯＳトランジスタ２７８が導通することによりＰチャネルＭＯＳトランジスタ２８２のゲートは電源電圧ＶＣＣに結合される。その結果ＰチャネルＭＯＳトランジスタ２８２は非導通状態となり電圧ＶＤＣｏｕｔは非活性化される。
【０２５０】
一方信号ＭＶＤＣthroughが活性化されるとトランスミッションゲート２７０は非導通状態となりＰチャネルＭＯＳトランジスタ２８２のゲートを差動増幅器２８の出力から分離する。そしてＮチャネルＭＯＳトランジスタ２８０が導通することによりＰチャネルＭＯＳトランジスタ２８２も導通状態となる。その結果電圧ＶＤＣｏｕｔとして電源電圧ＶＣＣがほぼそのまま出力されることになる。
【０２５１】
次に、再び図１９を参照して半導体集積回路２６０の全体動作について説明する。
【０２５２】
まず論理回路２６４から信号ＭＶＤＣが出力され、この信号によりレジスタ２６６に値が書込まれる。書込動作は、半導体集積回路２６０の外部から端子１６〜１８を介して信号Ｉ／Ｏ１〜Ｉ／Ｏｎのうちの一部を書込指示信号として入力し、端子１００〜１０２を介して書込データとしてデータＤ１〜Ｄｍを入力することにより行なわれる。
【０２５３】
まず、ＶＤＣ通常動作モード時には、ＶＤＣ回路２６２は実施の形態５等で説明した動作を行なう。
【０２５４】
次に、ＶＤＣスルーモードに設定された場合は、ＶＤＣ回路２６２は電圧ＶＤＣｏｕｔとして電源電圧ＶＣＣとほぼ等しい（若干低い）電圧が出力される。
【０２５５】
論理回路２６４からＡ／Ｄ変換器２２の入力を選択するための選択信号ＡＤＳＥＬ０が出力され、これに応じてセレクタ５２は電圧ＶＤＣｏｕｔをＡ／Ｄ変換器２２の入力ノードＡＮ０′に与える。電圧ＶＤＣｏｕｔは、Ａ／Ｄ変換器によりＡ／Ｄ変換され、その結果がレジスタ３２に格納される。レジスタ３２の値は論理回路２６４によって読出され、電圧ＶＤＣｏｕｔに対応するデジタル値が第１レジスタ８４に格納される。
【０２５６】
論理回路２６４の内部の第１レジスタ８４の内容は、半導体集積回路２６０の外部から端子１００〜１０２を介して読出すことができる。
【０２５７】
ＶＤＣ停止モードに設定した場合は、電圧変換回路２６８は電圧ＶＤＣｏｕｔを駆動しない。このため、論理回路２６４は動作できなくなる。この場合はリセット（図示せず）を入力するか、または電源電圧ＶＣＣを一度オフにしてから再度投入する。
【０２５８】
実施の形態１３によれば、ＶＤＣ回路２６２にＶＤＣスルーモードを設けることにより、半導体集積回路に入力される電源電圧ＶＣＣが期待される値かどうかを半導体集積回路の外部からデジタル信号として知ることができる。
【０２５９】
また、電源電圧ＶＣＣが低下した場合など、ＶＤＣ通常動作モードでは論理回路２６４の動作可能な電圧ＶＤＣｏｕｔが得られない場合には、ＶＤＣスルーモードに移行することができ、電源電圧ＶＣＣの変動に柔軟に対応できる半導体集積回路を得ることができる。
【０２６０】
［実施の形態１４］
図２１は、実施の形態１４の半導体集積回路２９０の構成を示したブロック図である。
【０２６１】
図２１を参照して、半導体集積回路２９０は、ＶＤＣ回路２６２と、Ａ／Ｄ変換器２２と、論理回路２９２とセレクタ５２，７２とを含み、これらが１つの半導体チップ上に集積されている。各回路は、それぞれ専用の入出力端子を有する。
【０２６２】
ＶＤＣ回路２６２は、基準電圧発生回路２６と、差動増幅器２８と、電圧変換回路２６８と、レジスタ２６６とを含む。Ａ／Ｄ変換器２２は、Ａ／Ｄ変換の結果を格納するレジスタ３２を含む。論理回路２９２は、第１レジスタ８４と、第２レジスタ８６と、第３レジスタ８８と、演算器８９とを含む。論理回路２９２は、さらに、第４レジスタ２９４と、第５レジスタ２９６と、ＮＧフラグレジスタ２９８とを含む。
【０２６３】
電源は、ＶＤＣ回路２６２用に端子２を介して電源電圧ＶＣＣが供給され、Ａ／Ｄ変換器２２用に端子１２を介して電源電圧ＡＶＣＣが供給される。また論理回路２９２には、ＶＤＣ回路２６２の出力である電圧ＶＤＣｏｕｔが供給される。つまり、ＶＤＣ回路２６２、Ａ／Ｄ変換器２２および論理回路２９２は、別々の電源電圧を受けて動作する。ここでは、接地電圧ＶＳＳつまりグラウンドは３つの回路で共通となっている。
【０２６４】
ＶＤＣ回路２６２は、電源電圧ＶＣＣを受けて内部で基準電圧ＶＤＣｒｅｆを発生し出力として電圧ＶＤＣｏｕｔを出力する。Ａ／Ｄ変換器２２は、入力ノードＡＮ０′，ＡＮ１′に入力される２つのアナログ入力信号をＡ／Ｄ変換用の参照電圧Ａｖｒｅｆを参照してＡ／Ｄ変換し、その結果をレジスタ３２に格納する。
【０２６５】
セレクタ５２は、２入力のセレクタであり、出力がＡ／Ｄ変換器の入力ノードＡＮ０′に接続される。セレクタ７２も２入力のセレクタであり、その出力はＡ／Ｄ変換器２２の入力ノードＡＮ１′に接続される。
【０２６６】
端子５４を介して与えられるアナログ信号ＡＮ０はセレクタ５２の一方の入力に与えられ、電圧変換回路２６８の出力である電圧ＶＤＣｏｕｔが他方の入力に与えられる。さらに、端子１０を介して与えられるアナログ信号ＡＮ１は、セレクタ７２の一方の入力に与えられ、基準電圧発生回路９８の出力である基準電圧ＶＤＣｒｅｆがセレクタ７２の他方の入力に与えられる。
【０２６７】
論理回路２９２は、制御信号やデータとして信号Ｉ／Ｏ１〜Ｉ／Ｏｎをｎ個の端子１６〜１８を介してやり取りする。また、論理回路２９２は、内蔵するレジスタのデータを端子１００〜１０２を介してデータＤ１〜Ｄｍとして入出力する。
【０２６８】
基準電圧発生回路９８は、ＶＤＣ回路２６２の出力である電圧ＶＤＣｏｕｔの基準となる基準電圧ＶＤＣｒｅｆを生成する。差動増幅器２８は、電圧ＶＤＣｒｅｆと電圧ＶＤＣｏｕｔとを入力として受ける。差動増幅器２８は、電圧ＶＤＣｏｕｔが電圧ＶＤＣｒｅｆを下回っていれば電圧ＶＤＣｏｕｔを上昇させるように電圧変換回路２６８に制御信号を出力する。
【０２６９】
一方、差動増幅器２８は、電圧ＶＤＣｏｕｔが電圧ＶＤＣｒｅｆを上回っていれば電圧ＶＤＣｏｕｔを上昇させないように制御信号を電圧変換回路２６８に出力する。電圧変換回路２６８は、差動増幅器２８からの制御信号を受けて電源電圧ＶＣＣからこれより低い所定の電圧ＶＤＣｏｕｔを生成する。
【０２７０】
Ａ／Ｄ変換器２２は、論理回路２９２からの信号により動作の設定をすることができる。Ａ／Ｄ変換器２２は、入力ノードＡＮ０′，ＡＮ１′から入力されるアナログ信号をＡ／Ｄ変換する。Ａ／Ｄ変換器２２は、変換結果をデジタル量としてレジスタ３２に保存する。
【０２７１】
論理回路２９２は、セレクタ５２，７２の入力を選択する信号ＡＤＳＥＬ０，ＡＤＳＥＬ１を出力する。また、論理回路２９２は、Ａ／Ｄ変換器２２内のレジスタ３２の値を読出すことができる。さらに、論理回路２９２は、演算器８９により、第１レジスタ８４の値から第２レジスタ８６の値を差し引いた結果を第３レジスタ８８に格納することができる。
【０２７２】
ＶＤＣ回路２６２に配置されているレジスタ２６６は、ＶＤＣ回路の動作モードを変更するための制御値を格納するレジスタである。レジスタ２６６に設定する値により、ＶＤＣ通常動作モードと、ＶＤＣスルーモードと、ＶＤＣ停止モードの３つのモードのうちの１つを選択することができる。ＶＤＣ通常動作モードでは、ＶＤＣ回路２６２は上述した通常動作を行なう。ＶＤＣスルーモードでは、基準電圧発生回路２６および差動増幅器２８は動作を停止し、電圧変換回路２６８は、入力された電源電圧ＶＣＣを電圧変換を行なわずにほぼそのまま電圧ＶＤＣｏｕｔとして出力する。ＶＤＣ停止モードでは、ＶＤＣ回路２６２は動作を停止し、電圧ＶＤＣｏｕｔは非活性化される。
【０２７３】
論理回路２９２が第１〜第３レジスタに加えて、第４レジスタ２９４と、第５レジスタ２９６とをさらに含んでいる点が、実施の形態１４の特徴の１つである。第４レジスタ２９４には電源電圧ＶＣＣの上限値が格納され、第５レジスタ２９６には電源電圧ＶＣＣの下限値が格納される。また、第１レジスタ８４に格納されている値が第４レジスタ２９４と第５レジスタ２９６とで指定された値の範囲内でなければ、論理回路２９２はＮＧフラグレジスタ２９８に格納されているフラグを有効にする。
【０２７４】
次に、半導体集積回路２９０の全体動作について説明する。
【０２７５】
まず論理回路２９２から信号ＭＶＤＣが出力され、この信号によりレジスタ２６６に値が書込まれる。書込動作は、半導体集積回路２９０の外部から端子１６〜１８を介して信号Ｉ／Ｏ１〜Ｉ／Ｏｎのうちの一部を書込指示信号として入力し、端子１００〜１０２を介して書込データとしてデータＤ１〜Ｄｍを入力することにより行なわれる。
【０２７６】
まず、ＶＤＣ通常動作モード時には、ＶＤＣ回路２６２は実施の形態５等で説明した動作を行なう。
【０２７７】
次に、ＶＤＣスルーモードに設定された場合は、ＶＤＣ回路２６２は電圧ＶＤＣｏｕｔとして電源電圧ＶＣＣとほぼ等しい（若干低い）電圧が出力される。
【０２７８】
論理回路２９２からＡ／Ｄ変換器２２の入力を選択するための選択信号ＡＤＳＥＬ０が出力され、これに応じてセレクタ５２は電圧ＶＤＣｏｕｔをＡ／Ｄ変換器２２の入力ノードＡＮ０′に与える。電圧ＶＤＣｏｕｔは、Ａ／Ｄ変換器によりＡ／Ｄ変換され、その結果がレジスタ３２に格納される。レジスタ３２の値は論理回路２９２によって読出され、電圧ＶＤＣｏｕｔに対応するデジタル値が第１レジスタ８４に格納される。
【０２７９】
論理回路２９２の内部の第１レジスタ８４の内容は、半導体集積回路２９０の外部から端子１００〜１０２を介して読出すことができる。
【０２８０】
第１レジスタ８４の値は、論理回路２９２の制御により、第４レジスタ２９４の値および第５レジスタ２９６の値と比較される。第１レジスタ８４の値が第４レジスタ２９４、第５レジスタ２９６で示す値の範囲内出なければ、論理回路２９２はＮＧフラグを有効とする。
【０２８１】
第５レジスタ２９４、第５レジスタ２９６の値は、半導体集積回路２９０の外部から読出および書込をすることができる。またＮＧフラグレジスタ２９８の値は、半導体集積回路２９０の外部から読出すことができまたクリアすることができる。
【０２８２】
実施の形態１４では、ＶＤＣスルーモード時において電源電圧ＶＣＣに対応する電圧ＶＤＣｏｕｔが出力される。この電圧ＶＤＣｏｕｔを予め規定された電圧範囲の中にあるか否かをフラグを読出すことによって確認できる。これにより、電源電圧ＶＣＣの監視を行なうことが可能となる。
【０２８３】
［実施の形態１５］
図２２は、実施の形態１５の半導体集積回路３００の構成を示すブロック図である。
【０２８４】
図２２を参照して、半導体集積回路３００は、ＶＤＣ回路３０２と、Ａ／Ｄ変換器２２と、論理回路３０４と、フラッシュメモリ２２４と、セレクタ５２および７２とを含み、これらが１つの半導体チップ上に集積されている。
【０２８５】
ＶＤＣ回路３０２は、基準電圧発生回路９８と、差動増幅器１４７と、電圧変換回路３０６と、レジスタ９６，１４６および２６６とを含む。
【０２８６】
Ａ／Ｄ変換器２２は、Ａ／Ｄ変換の結果を格納するレジスタ３２を含む。
【０２８７】
論理回路３０４は、ＣＰＵ３０８と、第１レジスタ８４と、第２レジスタ８６と、第３レジスタ８８と、第４レジスタ２９４と、第５レジスタ２９６と、ＮＧフラグレジスタ２９８とを含む。
【０２８８】
ＶＤＣ回路３０２には電源電圧ＶＣＣが供給され、Ａ／Ｄ変換器には電源電圧ＡＶＣＣが供給される。論理回路３０４にはＶＤＣ回路３０２の出力である電圧ＶＤＣｏｕｔが動作電源電圧として供給される。またフラッシュメモリ２２４には、外部から電源電圧ＦＶＣＣが供給されている。つまり、それぞれの回路のブロックは、別々の動作電源電圧を受けて動作する。なお、ここでは、接地電圧ＶＳＳつまりグラウンドは各ブロックに対して共通となっている。
【０２８９】
ＶＤＣ回路３０２は、基準電圧発生回路９８と、差動増幅器１４７と、電圧変換回路３０６と、レジスタ９６、１４６および２６６とを含む。ＶＤＣ回路３０２は、外部から電源電圧ＶＣＣを受けて、基準電圧発生回路９８の出力である基準電圧ＶＤＣｒｅｆと電圧変換回路３０６の出力である電圧ＶＤＣｏｕｔとを出力する。
【０２９０】
Ａ／Ｄ変換器２２は、電源電圧ＡＶＣＣを動作電源電圧として受ける。そしてＡ／Ｄ変換器２２は、Ａ／Ｄ変換用の参照電圧Ａｖｒｅｆを端子１４を介して受ける。
【０２９１】
セレクタ５２は、アナログ信号ＡＮ０と電圧ＶＤＣｏｕｔのいずれか一方を論理回路３０４から与えられる信号ＡＤＳＥＬ０に従って選択してＡ／Ｄ変換器２２の入力ノードＡＮ０′に与える。セレクタ７２は、基準電圧ＶＤＣｒｅｆとアナログ信号ＡＮ１のいずれか一方を信号ＡＤＳＥＬ１に従って選択してＡ／Ｄ変換器２２の入力ノードＡＮ１′に与える。
【０２９２】
論理回路３０４は、半導体集積回路２２０の外部と制御信号やデータの信号である信号Ｉ／Ｏ１〜Ｉ／Ｏｎをｎ個の端子１６〜１８を介して入出力する。また論理回路３０４は、レジスタのデータやＣＰＵ３０８が読出／書込を行なうデータをデータＤ１〜Ｄｍとしてｍ個の端子１００〜１０２を介してやり取りする。また、論理回路３０４は、ＣＰＵ３０８が出力するアドレス値Ａ１〜Ａｋを、端子２３０〜２３２を介して出力する。
【０２９３】
基準電圧発生回路９８は、ＶＤＣ回路３０２の出力電圧ＶＤＣｏｕｔの基準となる基準電圧ＶＤＣｒｅｆを生成する。差動増幅器１４７は、電圧ＶＤＣｒｅｆおよび電圧ＶＤＣｏｕｔを受けて比較する。
【０２９４】
差動増幅器１４７は電圧ＶＤＣｏｕｔが電圧ＶＤＣｒｅｆを下回っていれば、電圧ＶＤＣｏｕｔを上昇させるように制御信号を電圧変換回路３０６に伝える。一方、差動増幅器１４７は、電圧ＶＤＣｏｕｔが電圧ＶＤＣｒｅｆを上回っていれば、電圧ＶＤＣｏｕｔを上昇させないように制御信号を電圧変換回路３０６に伝達する。
【０２９５】
電圧変換回路３０６は、差動増幅器１４７からの制御信号に応じて電源電圧ＶＣＣからこれより低い所定の電圧ＶＤＣｏｕｔを生成する。
【０２９６】
ＡＤＣ回路２２は、論理回路３０４からの信号により動作の設定をすることができる。Ａ／Ｄ変換器２２は、入力ノードＡＮ０′，ＡＮ１′から入力されるアナログ信号をＡ／Ｄ変換し、変換結果をデジタル量としてレジスタ３２に保存できる。
【０２９７】
論理回路３０４は、セレクタ５２，７２の入力を選択する信号ＡＤＳＥＬ０，ＡＤＳＥＬ１を出力する。また、論理回路３０４は、Ａ／Ｄ変換器２２の内部のレジスタ３２の値を読出すことができる。また、論理回路３０４は、第１レジスタ８４が保持する電圧ＶＤＣｏｕｔの値から第２レジスタが保持する基準電圧ＶＤＣｒｅｆの値を引いた結果を、第３レジスタ８８に格納することができる。この動作は、ＣＰＵ３０８が有する減算機能により行なうことができる。
【０２９８】
基準電圧発生回路９８の構成は、図７で説明したので説明は繰返さない。
【０２９９】
図２３は、図２２における電圧変換回路３０６の構成を示した回路図である。
【０３００】
図２３を参照して、電圧変換回路３０６は、デコード＆ゲート選択回路１６２と、入力切換回路１６４と、入力固定回路３２０と、駆動回路１６６とを含む。デコード＆ゲート選択回路１６２、入力切換回路１６４および駆動回路１６６については、図９で説明したものと同じであるので説明は繰返さない。
【０３０１】
入力固定回路３２０は、レジスタ２６６から出力される信号ＭＶＤＣoffを受けて反転するインバータ３２２と、電源ノードとＰチャネルＭＯＳトランジスタ１９７のゲートとの間に接続されゲートにインバータ３２２の出力を受けるＰチャネルＭＯＳトランジスタ３２４と、電源ノードとＰチャネルＭＯＳトランジスタ１９８のゲートとの間に接続されゲートにインバータ３２２の出力を受けるＰチャネルＭＯＳトランジスタ３２６と、電源ノードとＰチャネルＭＯＳトランジスタ１９９のゲートとの間に接続されゲートにインバータ３２２の出力を受けるＰチャネルＭＯＳトランジスタ３２８とを含む。
【０３０２】
入力固定回路３２０は、さらに、ＰチャネルＭＯＳトランジスタ１９７のゲートと接地ノードとの間に接続されゲートに信号ＭＶＤＣthroughを受けるＮチャネルＭＯＳトランジスタ３３０と、ＰチャネルＭＯＳトランジスタ１９８のゲートと接地ノードとの間に接続されゲートに信号ＭＶＤＣthroughを受けるＮチャネルＭＯＳトランジスタ３３２と、ＰチャネルＭＯＳトランジスタ１９９と接地ノードとの間に接続されゲートに信号ＭＶＤＣthroughを受けるＮチャネルＭＯＳトランジスタ３３４とを含む。
【０３０３】
レジスタ９６に設定する値を変更することにより基準電圧ＶＤＣｒｅｆを変更することができ電圧ＶＤＣｏｕｔを調整することができる。またレジスタ１４６の設定を変更することにより駆動用のトランジスタ１９７〜１９９の使用する数を変更することができ、これにより負荷電流に応じた追従速度を調整することができる。
【０３０４】
さらに、レジスタ２６６の値を設定することによりＶＤＣ停止モードでは信号ＭＶＤＣoffをＨレベルに活性化しＰチャネルＭＯＳトランジスタ１９７〜１９９をすべて非導通状態に設定し電圧ＶＤＣｏｕｔを非活性化することができる。
【０３０５】
また、レジスタ２６６を設定することによりＶＤＣスルーモードに設定すれば信号ＭＶＤＣthroughがＨレベルに活性化しＰチャネルＭＯＳトランジスタ１９７〜１９９はすべて導通状態となり電圧ＶＤＣｏｕｔとして電源電圧ＶＣＣがそのまま出力される。
【０３０６】
再び、図２２を参照して、電圧変換回路３０６は、複数の駆動用トランジスタを含んでおり、通常は基準となる個数の駆動用トランジスタが動作する。動作する駆動用トランジスタの個数は、レジスタ１４６の値により変更することができる。レジスタ１４６の値が負のとき駆動用トランジスタの個数が増加し、正のときは駆動用トランジスタの個数が減少するように電圧変換回路３０６は動作する。なお、レジスタ１４６は、電流駆動用トランジスタの動作個数を格納し、レジスタ１４６で指定された個数のトランジスタが動作するように電圧変換回路３０６を構成してもよい。
【０３０７】
なお、図２２では、レジスタ１４６は、ＶＤＣ回路３０２の内部に配置されているが、論理回路３０４の内部もしくはそれ以外の領域に配置されていてもよい。また、レジスタ１４６に格納される値は、ＣＰＵ３０８を含む論理回路３０４によって読出および書込をすることができる。
【０３０８】
基準電圧発生回路９８は、基準となる出力電圧と、それより高い１つまたは複数の電圧と、それより低い１つまたは複数の電圧とを出力することができる。これらの電圧は、レジスタ９６の値により選択することができる。図２２では、レジスタ９６はＶＤＣ回路３０２の内部に配置されているが、論理回路３０４の内部もしくはそれ以外の領域に配置されていてもよい。
【０３０９】
ＶＤＣ回路３０２に配置されているレジスタ２６６は、ＶＤＣ回路の動作モードを変更するための制御値を格納するレジスタである。レジスタ２６６に設定する値により、ＶＤＣ通常動作モードと、ＶＤＣスルーモードと、ＶＤＣ停止モードの３つのモードのうちの１つを選択することができる。ＶＤＣ通常動作モードでは、ＶＤＣ回路３０２は上述した通常動作を行なう。ＶＤＣスルーモードでは、基準電圧発生回路２６および差動増幅器１４７は動作を停止し、電圧変換回路３０６は、入力された電源電圧ＶＣＣを電圧変換を行なわずにほぼそのまま電圧ＶＤＣｏｕｔとして出力する。ＶＤＣ停止モードでは、ＶＤＣ回路３０２は動作を停止し、電圧ＶＤＣｏｕｔは非活性化される。なお、図２２では、レジスタ２６６はＶＤＣ回路３０２の内部に配置されているが、論理回路３０４の内部に配置されていてもよい。
【０３１０】
論理回路３０４が第１〜第３レジスタに加えて、第４レジスタ２９４と、第５レジスタ２９６とをさらに含んでいる点が、実施の形態１５の特徴の１つである。第４レジスタ２９４には電源電圧ＶＣＣの上限値が格納され、第５レジスタ２９６には電源電圧ＶＣＣの下限値が格納される。また、第１レジスタ８４に格納されている値が第４レジスタ２９４と第５レジスタ２９６とで指定された値の範囲内でなければ、論理回路３０４はＮＧフラグレジスタ２９８に格納されているフラグを有効にする。
【０３１１】
次に半導体集積回路３００の全体動作について説明する。
【０３１２】
フラッシュメモリ２２４には、ＣＰＵ３０８が実行する命令列およびその命令を実行する際に使用するデータが配置されている。実施の形態１５の動作を実行するためのＣＰＵ用命令列（プログラム）およびこれらの命令で使用するパラメータ（データ）もフラッシュメモリ２２４に格納されている。半導体集積回路３００の電源立上時、リセット時または、ユーザが本プログラム以外のプログラムから本プログラムの起動を要求した際に、フラッシュメモリ２２４に格納されたプログラムを実行することができる。
【０３１３】
このようにして起動されたプログラムによって動作するＣＰＵ３０８の制御により、動作モードを制御するレジスタ２６６に値を書込む。
【０３１４】
まず、ＶＤＣ通常動作モード時には、ＶＤＣ回路３０２は実施の形態５等で説明した動作を行なう。
【０３１５】
次に、ＶＤＣスルーモードに設定された場合は、ＶＤＣ回路３０２は電圧ＶＤＣｏｕｔとして電源電圧ＶＣＣとほぼ等しい（若干低い）電圧が出力される。
【０３１６】
論理回路３０４からＡ／Ｄ変換器２２の入力を選択するための選択信号ＡＤＳＥＬ０が出力され、これに応じてセレクタ５２は電圧ＶＤＣｏｕｔをＡ／Ｄ変換器２２の入力ノードＡＮ０′に与える。電圧ＶＤＣｏｕｔは、Ａ／Ｄ変換器によりＡ／Ｄ変換され、その結果がレジスタ３２に格納される。レジスタ３２の値は論理回路３０４によって読出され、電圧ＶＤＣｏｕｔに対応するデジタル値が第１レジスタ８４に格納される。
【０３１７】
論理回路３０４の内部の第１レジスタ８４の内容は、半導体集積回路３００の外部から端子１００〜１０２を介して読出すことができる。
【０３１８】
ＶＤＣ停止モードに設定した場合は、電圧変換回路３０６は電圧ＶＤＣｏｕｔを駆動しない。このため、論理回路３０４は動作できなくなる。この場合はリセット（図示せず）を入力するか、または電源電圧ＶＣＣを一度オフにしてから再度投入する。
【０３１９】
ＶＤＣスルーモードで動作する場合には第１レジスタ８４の内容は、第４レジスタ２９４および第５レジスタ２９６の値と比較される。第１レジスタ８４の値が第４レジスタ２９４の値と第５レジスタ２９６の値の間の値ではない場合には、ＮＧフラグが有効となる。各レジスタの値やＮＧフラグの内容は入出力端子１６〜１８、もしくはデータバスが接続される端子１００〜１０２を通じて半導体集積回路３００の外部に出力される。
【０３２０】
以上説明したように、実施の形態１５では、ＶＤＣ回路３０２にＶＤＣスルーモードを設け電源電圧ＶＣＣをデジタル値として外部から観測可能にする。それとともに、フラッシュメモリに格納されたプログラムで動作するＣＰＵを搭載することで、電源電圧ＶＣＣの管理を容易に行なえる。つまり、フラッシュメモリ内のパラメータを変更することにより、システムに応じて電源電圧ＶＣＣの上限値、下限値を変更することができる。
【０３２１】
また、電源電圧ＶＣＣが低下してしまいＶＤＣ回路３０２を通常モードで動作させていると必要な電圧ＶＤＣｏｕｔが得られない場合には、ＶＤＣスルーモードに切換え、論理回路３０４への供給電圧をアップさせ、必要な情報をフラッシュメモリへ退避させることが可能となる。
【０３２２】
［実施の形態１６］
図２４は、実施の形態１６の半導体集積回路３５０の構成を示したブロック図である。
【０３２３】
図２４を参照して、半導体集積回路３５０は、ＶＤＣ回路３０２と、Ａ／Ｄ変換器２２と、論理回路３５２と、セレクタ５２，７２とを含み、これらの回路は１つの半導体チップ上に集積されている。各回路はそれぞれ専用の入出力端子を有する。
【０３２４】
電源について説明する。ＶＤＣ回路３０２は端子２を介して電源電圧ＶＣＣを受ける。Ａ／Ｄ変換器２２は、端子１２を介して電源電圧ＡＶＣＣを受ける。ＣＰＵ３５６を含む論理回路３５２は、ＶＤＣ回路３０２の出力である電圧ＶＤＣｏｕｔを電源電圧として受ける。つまり、それぞれの回路のブロックは、別々の電源電圧を受けて動作する。ここで、接地電圧ＶＳＳつまりグラウンドは各ブロックに対して共通である。
【０３２５】
ＶＤＣ回路３０２は、基準電圧発生回路９８と、差動増幅器１４７と、電圧変換回路３０６と、レジスタ９６，１４６、２６６とを含む。ＶＤＣ回路３０２は、外部から電源電圧ＶＣＣを受けて、基準電圧発生回路９８の出力である基準電圧ＶＤＣｒｅｆと電圧変換回路３０６の出力である電圧ＶＤＣｏｕｔとを出力する。
【０３２６】
Ａ／Ｄ変換器２２は、電源電圧ＡＶＣＣを動作電源電圧として受ける。そしてＡ／Ｄ変換器２２は、Ａ／Ｄ変換用の参照電圧Ａｖｒｅｆを端子１４を介して受ける。
【０３２７】
セレクタ５２は、アナログ信号ＡＮ０と電圧ＶＤＣｏｕｔのいずれか一方を論理回路３５２から与えられる信号ＡＤＳＥＬ０に従って選択してＡ／Ｄ変換器２２の入力ノードＡＮ０′に与える。セレクタ７２は、基準電圧ＶＤＣｒｅｆとアナログ信号ＡＮ１のいずれか一方を信号ＡＤＳＥＬ１に従って選択してＡ／Ｄ変換器２２の入力ノードＡＮ１′に与える。
【０３２８】
論理回路３５２は、ＣＰＵ３５６と、第１レジスタ８４と、第２レジスタ８６と、第３レジスタ８８と、ＳＲＡＭ２５４と、マスクＲＯＭ３５４とを含む。論理回路３５２は、半導体集積回路３５０の外部と制御信号やデータの信号である信号Ｉ／Ｏ１〜Ｉ／Ｏｎをｎ個の端子１６〜１８を介して入出力する。また論理回路３５２は、レジスタのデータやＣＰＵ３５６が読出／書込を行なうデータをデータＤ１〜Ｄｍとしてｍ個の端子１００〜１０２を介してやり取りする。また、論理回路３５２は、ＣＰＵ３５６が出力するアドレス値Ａ１〜Ａｋを、端子２３０〜２３２を介して出力する。
【０３２９】
基準電圧発生回路９８は、ＶＤＣ回路３０２の出力電圧ＶＤＣｏｕｔの基準となる基準電圧ＶＤＣｒｅｆを生成する。差動増幅器１４７は、電圧ＶＤＣｒｅｆおよび電圧ＶＤＣｏｕｔを受けて比較する。
【０３３０】
差動増幅器１４７は電圧ＶＤＣｏｕｔが電圧ＶＤＣｒｅｆを下回っていれば、電圧ＶＤＣｏｕｔを上昇させるように制御信号を電圧変換回路３０６に伝える。一方、差動増幅器１４７は、電圧ＶＤＣｏｕｔが電圧ＶＤＣｒｅｆを上回っていれば、電圧ＶＤＣｏｕｔを上昇させないように制御信号を電圧変換回路３０６に伝達する。
【０３３１】
電圧変換回路３０６は、差動増幅器１４７からの制御信号に応じて電源電圧ＶＣＣからこれより低い所定の電圧ＶＤＣｏｕｔを生成する。
【０３３２】
ＡＤＣ回路２２は、論理回路３５２からの信号により動作の設定をすることができる。Ａ／Ｄ変換器２２は、入力ノードＡＮ０′，ＡＮ１′から入力されるアナログ信号をＡ／Ｄ変換し、変換結果をデジタル量としてレジスタ３２に保存できる。
【０３３３】
論理回路３５２は、セレクタ５２，７２の入力を選択する信号ＡＤＳＥＬ０，ＡＤＳＥＬ１を出力する。また、論理回路３５２は、Ａ／Ｄ変換器２２の内部のレジスタ３２の値を読出すことができる。また、論理回路３５２は、第１レジスタ８４が保持する電圧ＶＤＣｏｕｔの値から第２レジスタが保持する基準電圧ＶＤＣｒｅｆの値を引いた結果を、第３レジスタ８８に格納することができる。この動作は、ＣＰＵ３５６が有する減算機能により行なうことができる。
【０３３４】
基準電圧発生回路９８および電圧変換回路３０６の構成は、図７および図２３で説明したので説明は繰返さない。
【０３３５】
電圧変換回路３０６は、複数の駆動用トランジスタを含んでおり、通常は基準となる個数の駆動用トランジスタが動作する。動作する駆動用トランジスタの個数は、レジスタ１４６の値により変更することができる。レジスタ１４６の値が負のとき駆動用トランジスタの個数が増加し、正のときは駆動用トランジスタの個数が減少するように電圧変換回路３０６は動作する。なお、レジスタ１４６は、電流駆動用トランジスタの動作個数を格納し、レジスタ１４６で指定された個数のトランジスタが動作するように電圧変換回路３０６を構成してもよい。
【０３３６】
なお、図２４では、レジスタ１４６は、ＶＤＣ回路３０２の内部に配置されているが、論理回路３５２の内部もしくはそれ以外の領域に配置されていてもよい。また、レジスタ１４６に格納される値は、ＣＰＵ３５６を含む論理回路３５２によって読出および書込をすることができる。
【０３３７】
ＶＤＣ回路３０２に配置されているレジスタ２６６は、ＶＤＣ回路の動作モードを変更するための制御値を格納するレジスタである。レジスタ２６６に設定する値により、ＶＤＣ通常動作モードと、ＶＤＣスルーモードと、ＶＤＣ停止モードの３つのモードのうちの１つを選択することができる。
【０３３８】
ＶＤＣ通常動作モードでは、ＶＤＣ回路３０２は上述した通常動作を行なう。ＶＤＣスルーモードでは、基準電圧発生回路２６および差動増幅器１４７は動作を停止し、電圧変換回路３０６は、入力された電源電圧ＶＣＣを電圧変換を行なわずにほぼそのまま電圧ＶＤＣｏｕｔとして出力する。ＶＤＣ停止モードでは、ＶＤＣ回路３０２は動作を停止し、電圧ＶＤＣｏｕｔは非活性化される。なお、図２４では、レジスタ２６６はＶＤＣ回路３０２の内部に配置されているが、論理回路３５２の内部に配置されていてもよい。
【０３３９】
論理回路３５２が第１〜第３レジスタに加えて、第４レジスタ２９４と、第５レジスタ２９６とをさらに含んでいる点が、実施の形態１５の特徴の１つである。第４レジスタ２９４には電源電圧ＶＣＣの上限値が格納され、第５レジスタ２９６には電源電圧ＶＣＣの下限値が格納される。また、第１レジスタ８４に格納されている値が第４レジスタ２９４と第５レジスタ２９６とで指定された値の範囲内でなければ、論理回路３５２はＮＧフラグレジスタ２９８に格納されているフラグを有効にする。
【０３４０】
次に半導体集積回路３５０の全体動作について説明する。
【０３４１】
ＣＰＵ３５６が実行する命令列およびその命令を実行する際に使用するデータは、半導体集積回路３５０の外部に配置されたＥＥＰＲＯＭなどの記憶装置（図示せず）に格納されている。
【０３４２】
マスクＲＯＭ３５４には、上記記憶装置内の命令列およびデータをＳＲＡＭ２５４にロードし、ＣＰＵ３５６の動作をそのロードしたプログラムへ移すためのプログラム（ブートプログラム）が配置されている。
【０３４３】
このブートプログラムは、半導体集積回路３５０のリセット時もしくはマスクＲＯＭ内の他のプログラムがそのブートプログラムの起動を要求した際に動作する。以下に、リセット時にこのブートプログラムでＳＲＡＭ２５４内にブートされたプログラムによる動作を説明する。
【０３４４】
このようにして起動されたプログラムによって動作するＣＰＵ３５６の制御により、モードを設定する情報をレジスタ２６６に書込む。
【０３４５】
まず、ＶＤＣ通常動作モード時には、ＶＤＣ回路３０２は実施の形態５等で説明した動作を行なう。
【０３４６】
次に、ＶＤＣスルーモードに設定された場合は、ＶＤＣ回路３０２は電圧ＶＤＣｏｕｔとして電源電圧ＶＣＣとほぼ等しい（若干低い）電圧が出力される。
【０３４７】
論理回路３５２からＡ／Ｄ変換器２２の入力を選択するための選択信号ＡＤＳＥＬ０が出力され、これに応じてセレクタ５２は電圧ＶＤＣｏｕｔをＡ／Ｄ変換器２２の入力ノードＡＮ０′に与える。電圧ＶＤＣｏｕｔは、Ａ／Ｄ変換器によりＡ／Ｄ変換され、その結果がレジスタ３２に格納される。レジスタ３２の値は論理回路３５２によって読出され、電圧ＶＤＣｏｕｔに対応するデジタル値が第１レジスタ８４に格納される。
【０３４８】
論理回路３５２の内部の第１レジスタ８４の内容は、半導体集積回路３５０の外部から端子１００〜１０２を介して読出すことができる。
【０３４９】
ＶＤＣ停止モードに設定した場合は、電圧変換回路３０６は電圧ＶＤＣｏｕｔを駆動しない。このため、論理回路３５２は動作できなくなる。この場合はリセット（図示せず）を入力するか、または電源電圧ＶＣＣを一度オフにしてから再度投入する。
【０３５０】
ＶＤＣスルーモードで動作する場合には第１レジスタ８４の内容は、第４レジスタ２９４および第５レジスタ２９６の値と比較される。第１レジスタ８４の値が第４レジスタ２９４の値と第５レジスタ２９６の値の間の値ではない場合には、ＮＧフラグが有効となる。各レジスタの値やＮＧフラグの内容は入出力端子１６〜１８、もしくはデータバスが接続される端子１００〜１０２を通じて半導体集積回路３５０の外部に出力される。
【０３５１】
以上説明したように、実施の形態１６では、ＶＤＣ回路３０２にＶＤＣスルーモードを設ける。これによりＶＤＣ回路に入力される電源電圧ＶＣＣをデジタル値として観測することが可能となる。これとともに、マスクＲＯＭ３５４上にブートプログラムを配置し、所定のプログラムをＳＲＡＭ２５４にロードする。このロードされたプログラムで動作するＣＰＵ３５６を搭載することで、電源電圧ＶＣＣの管理を容易に行なえる。つまり、電源電圧ＶＣＣの低下などの異常の検出ができ、また、半導体集積回路３５０の外部に配置されたＥＥＰＲＯＭ内のパラメータを変更することにより、電源電圧ＶＣＣの上限値および下限値をシステムに応じて変更することができる。
【０３５２】
また、実施の形態１６では、マスクＲＯＭ３５４上のブートプログラムによって外部に配置されたＥＥＰＲＯＭ等から内蔵するＳＲＡＭ２５４にプログラムをロードしてＣＰＵ３５６に実行させるので、フラッシュメモリを搭載する場合と比較してウェハプロセスの工程数が削減できる。よって、半導体集積回路の製造コストを低減することができる。
【０３５３】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【図面の簡単な説明】
【０３５４】
【図１】本発明の実施の形態１の半導体集積回路１の構成を示すブロック図である。
【図２】実施の形態２の半導体集積回路５０の構成を示したブロック図である。
【図３】実施の形態３の半導体集積回路６０の構成を示したブロック図である。
【図４】実施の形態４の半導体集積回路７０の構成を示したブロック図である。
【図５】実施の形態５の半導体集積回路８０の構成を示したブロック図である。
【図６】実施の形態６の半導体集積回路９０の構成を示したブロック図である。
【図７】図６における基準電圧発生回路９８の構成を示した回路図である。
【図８】実施の形態７の半導体集積回路１４０の構成を示したブロック図である。
【図９】図８における差動増幅器１４７および電圧変換回路１４８の構成を示した回路図である。
【図１０】実施の形態８の半導体集積回路２００の構成を示したブロック図である。
【図１１】ヒューズ回路２０４の構成例を示した図である。
【図１２】実施の形態９の半導体集積回路２１０の構成を示したブロック図である。
【図１３】実施の形態１０の半導体集積回路２２０の構成を示したブロック図である。
【図１４】ＣＰＵが行なう第１の処理を示したフローチャートである。
【図１５】ＣＰＵ２２８の第２の処理を説明するためのフローチャートである。
【図１６】ＣＰＵが行なう第３の処理を説明するためのフローチャートである。
【図１７】実施の形態１１の半導体集積回路２４０の構成を示すブロック図である。
【図１８】実施の形態１２の半導体集積回路２５０の構成を示したブロック図である。
【図１９】実施の形態１３の半導体集積回路２６０の構成を示したブロック図である。
【図２０】図１９における電圧変換回路２６８の構成を示した回路図である。
【図２１】実施の形態１４の半導体集積回路２９０の構成を示したブロック図である。
【図２２】実施の形態１５の半導体集積回路３００の構成を示すブロック図である。
【図２３】図２２における電圧変換回路３０６の構成を示した回路図である。
【図２４】実施の形態１６の半導体集積回路３５０の構成を示したブロック図である。
【符号の説明】
【０３５５】
１，５０，６０，７０，８０，９０，１４０，２００，２１０，２２０，２４０，２５０，２６０，２９０，３００，３５０  半導体集積回路、２，４，６，８，１０，１２，１４，１６〜１８，５４，１００，１０２，２３０〜２３２，２４２，２４４  端子、２０，９２，１４１，２０２，２１２，２２２，２６２，３０２  ＶＤＣ回路、２２  Ａ／Ｄ変換器、２４，５６，７４，８２，９４，１４２，２２６，２５２，２６４，２９２，３０４，３５２  論理回路、２６，９８，１１２  基準電圧発生回路、２８，１４７  差動増幅器、３０，１４８，２６８，３０６  電圧変換回路、３２，８４，８６，８８，９６，１４６，２６６，２９４，２９６  レジスタ、５２，７２  セレクタ、８９  演算器、１１４，１６２  デコード＆ゲート選択回路、１１８，１２２，１２６，１７４，２７０  トランスミッションゲート、１２８  アンプ、１３２，１３４，１３６  抵抗、１５２，１５４，１５６  比較回路、１６４  入力切換回路、１６６  駆動回路、２０４，２１４  ヒューズ回路、２２４  フラッシュメモリ、２２８，３０８，３５６  ＣＰＵ、２５４  ＳＲＡＭ、２５６，３５４  マスクＲＯＭ、２９８  ＮＧフラグレジスタ、３２０  入力固定回路、ＦＵＳＥ  ヒューズ素子、Ｒ  抵抗。
【図１】
2005086108.tif 000003
【図２】
2005086108.tif 000004
【図３】
2005086108.tif 000005
【図４】
2005086108.tif 000006
【図５】
2005086108.tif 000007
【図６】
2005086108.tif 000008
【図７】
2005086108.tif 000009
【図８】
2005086108.tif 000010
【図９】
2005086108.tif 000011
【図１０】
2005086108.tif 000012
【図１１】
2005086108.tif 000013
【図１２】
2005086108.tif 000014
【図１３】
2005086108.tif 000015
【図１４】
2005086108.tif 000016
【図１５】
2005086108.tif 000017
【図１６】
2005086108.tif 000018
【図１７】
2005086108.tif 000019
【図１８】
2005086108.tif 000020
【図１９】
2005086108.tif 000021
【図２０】
2005086108.tif 000022
【図２１】
2005086108.tif 000023
【図２２】
2005086108.tif 000024
【図２３】
2005086108.tif 000025
【図２４】
2005086108.tif 000026