(57)【要約】【課題】並列処理が可能な低消費電力半導体装置を提供する。【解決手段】プロセッサは、ＣＰＵ、ＧＰＵが設けられたチップを有する。ＣＰＵ、ＧＰＵそれぞれは、１又は複数のパワーゲーティングが可能なパワードメインを有する。ＣＰＵには、バックアップ回路が電気的に接続されているフリップフロップ、および第１メモリセルを有する第１メモリ装置が設けられている。ＧＰＵには、行列状に配置された複数の乗算器、および第２メモリセルを有する第２メモリ装置が設けられている。バックアップ回路、第１メモリセル、第２メモリセル、および乗算器それぞれには、チャネルに金属酸化物を有するトランジスタが用いられている。【選択図】図１
2019046199.tif 000002
【特許請求の範囲】
【請求項１】
ＣＰＵ、ＧＰＵが設けられたチップを有するプロセッサであり、
前記ＣＰＵ、前記ＧＰＵそれぞれは、１又は複数のパワーゲーティングが可能なパワードメインを有し、
前記ＣＰＵには、バックアップ回路が電気的に接続されているフリップフロップが設けられ、
前記ＧＰＵには、行列状に配置された複数の乗算器が設けられ、
前記乗算器は、第１トランジスタ、第２トランジスタ、容量素子および保持ノードを有し、
前記第２トランジスタのゲート、および前記容量素子の端子は前記保持ノードにそれぞれ電気的に接続され、
前記第１トランジスタは、前記保持ノードへのデータの書き込みを制御する機能をもち、
前記バックアップ回路のトランジスタ、前記乗算器の前記第１トランジスタそれぞれにおいて、チャネル形成領域は金属酸化物を有することを特徴とするプロセッサ。
【請求項２】
請求項１において、
前記バックアップ回路は、前記フリップフロップに積層されていることを特徴とするプロセッサ。
【請求項３】
請求項１又は２において、
前記乗算器の前記保持ノードに書き込まれるデータは、アナログデータであることを特徴とするプロセッサ。
【請求項４】
請求項１乃至３の何れか１項において、
前記ＣＰＵには、更に第１メモリ装置が設けられ、
前記第１メモリ装置のメモリセルにおいて、書込みトランジスタのチャネル形成領域は金属酸化物で形成されていることを特徴とするプロセッサ。
【請求項５】
請求項１乃至４の何れか１項において、
前記ＣＰＵには、更に第２メモリ装置が設けられ、
前記第２メモリ装置のメモリセルには、バックアップ回路が設けられ、
前記バックアップのトランジスタにおいて、チャネル形成領域は金属酸化物を有することを特徴とするプロセッサ。
【請求項６】
請求項１乃至５の何れか１項において、
更に第３メモリ装置が前記チップに設けられ、
前記第３メモリ装置は、前記ＣＰＵまたは前記ＧＰＵがアクセス可能であり、
前記第３メモリ装置のメモリセルにおいて、書込みトランジスタのチャネル形成領域は金属酸化物で形成されていることを特徴とするプロセッサ。
【請求項７】
請求項１乃至６の何れか１項において、
前記ＣＰＵは複数のＣＰＵコアを備えることを特徴とするプロセッサ。
【請求項８】
請求項１乃至７の何れか１項に記載のプロセッサが組み込まれている電子機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願の明細書、図面、および特許請求の範囲（以下、「本明細書等」と呼ぶ。）は、半導体装置とその動作方法などに関する。なお、本発明の一形態は、例示した技術分野に限定されるものではない。
【０００２】
本明細書等において、半導体装置とは、半導体特性を利用した装置であり、半導体素子（トランジスタ、ダイオード、フォトダイオード等）を含む回路、同回路を有する装置等をいう。また、半導体特性を利用することで機能しうる装置全般をいう。例えば、集積回路、集積回路を備えたチップや、パッケージにチップを収納した電子部品は半導体装置の一例である。また、記憶装置、表示装置、発光装置、照明装置、電子部品及び電子機器等は、それ自体が半導体装置である場合があり、また、半導体装置を有している場合がある。
【背景技術】
【０００３】
電子機器の低消費電力化が重視されている。そのため、ＣＰＵ等の集積回路（ＩＣ）の低消費電力化は回路設計の大きな課題となっている。ＩＣの消費電力は大きく分けると、動作時の消費電力（ダイナミック電力）と、動作していない時（スタンバイ時）の消費電力（スタティック電力）との２つになる。高性能化のため動作周波数を高めることで、ダイナミック電力が増大する。スタティック電力の大部分はトランジスタのリーク電流によって消費される電力である。リーク電流には、サブシュレッシュルド・リーク電流、ゲート・トンネル・リーク電流、ゲート誘導ドレインリーク（ＧＩＤＬ：Ｇａｔｅ−ｉｎｄｕｃｅｄ  ｄｒａｉｎ  ｌｅａｋａｇｅ）電流、ジャンクション・トンネル・リーク電流がある。これらのリーク電流は、トランジスタの微細化によって増大するので、消費電力の増大が、ＩＣの高性能化や高集積化の大きな壁となっている。
【０００４】
半導体装置の消費電力低減のため、パワーゲーティングやクロックゲーティングにより、動作させる必要のない回路を停止させることが行われている。パワーゲーティングでは電源供給を停止するため、スタンバイ電力を無くす効果がある。ＣＰＵのパワーゲーティングを可能にするには、レジスタやキャッシュメモリの記憶内容を不揮発性メモリ装置にバックアップすることが必要となる。
【０００５】
チャネル形成領域が金属酸化物で形成されているトランジスタ（以下、「酸化物半導体トランジスタ」。「金属酸化物トランジスタ」または「ｏｘトランジスタ」と呼ぶ場合がある）が知られている。ｏｘランジスタのオフ電流が極めて小さいという特性を利用して、パワーオフ状態でもデータを保持することが可能なバックアップ回路が提案されている（例えば、特許文献１を参照）。
【０００６】
近年、人工知能（ＡＩ）分野の技術発展が著しい。例えば、特許文献２には、ｏｘトランジスタが用いられ、ニューラルネットワークを構成することが可能な半導体装置が記載されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１６−４２３５２号公報
【特許文献２】特開２０１６−２１９０１１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
近年、ＩｏＴ（Ｉｎｔｅｒｎｅｔ  ｏｆ  Ｔｈｉｎｇｓ）及びＡＩなど技術の発展に伴い、多量のデータが発生している。多量のデータを低エネルギーで処理できるコンピューティングシステムが求められている。
【０００９】
そこで、本発明の一形態の課題は、新規な半導体装置を提供すること、または低消費電力な半導体装置を提供することである。
【００１０】
なお、複数の課題の記載は、互いの課題の存在を妨げるものではない。本発明の一形態は、これらの課題の全て解決する必要はない。また、列記した以外の課題が本明細書等の記載から、自ずと明らかとなるものであり、これらの課題も本発明の一形態の課題となり得る。
【課題を解決するための手段】
【００１１】
（１）本発明の一形態は、ＣＰＵ、ＧＰＵが設けられたチップを有するプロセッサであり、ＣＰＵ、ＧＰＵそれぞれは、１又は複数のパワーゲーティングが可能なパワードメインを有し、ＣＰＵには、バックアップ回路が電気的に接続されているフリップフロップが設けられ、ＧＰＵには、行列状に配置された複数の乗算器が設けられ、乗算器は、第１トランジスタ、第２トランジスタ、容量素子および保持ノードを有し、第２トランジスタのゲート、および容量素子の端子は保持ノードにそれぞれ電気的に接続され、第１トランジスタは、保持ノードへのデータの書き込みを制御する機能をもち、バックアップ回路のトランジスタ、乗算器の第１トランジスタそれぞれにおいて、チャネル形成領域は金属酸化物を有する。
【００１２】
（２）上掲形態（１）において、バックアップ回路は、フリップフロップに積層されている。
【００１３】
（３）上掲形態（１）または（２）において、乗算器の保持ノードに書き込まれるデータは、アナログデータである。
【００１４】
（４）上掲形態（１）乃至（３）の何れか１において、ＣＰＵには、更に第１メモリ装置が設けられ、第１メモリ装置のメモリセルにおいて、書込みトランジスタのチャネル形成領域は金属酸化物で形成されている。
【００１５】
（５）上掲形態（１）乃至（４）の何れか１において、ＣＰＵには、更に第２メモリ装置が設けられ、第２メモリ装置のメモリセルには、バックアップ回路が設けられ、バックアップのトランジスタにおいて、チャネル形成領域は金属酸化物を有する。
【００１６】
（６）上掲形態（１）乃至（５）の何れか１において、第３メモリ装置が更にチップに設けられ、第３メモリ装置はＣＰＵまたはＧＰＵがアクセス可能に設けられ、第３メモリ装置のメモリセルにおいて、書込みトランジスタのチャネル形成領域は金属酸化物で形成されている。
【００１７】
本明細書等において、「第１」、「第２」、「第３」などの序数詞は、順序を表すために使用される場合がある。または、構成要素の混同を避けるために使用する場合がある。これらの場合、序数詞の使用は構成要素の個数を限定するものではない。例えば、「第１」を「第２」または「第３」に置き換えて、本発明の一形態を説明することができる。
【００１８】
本明細書等において、ＸとＹとが接続されていると記載されている場合は、ＸとＹとが電気的に接続されている場合と、ＸとＹとが機能的に接続されている場合と、ＸとＹとが直接接続されている場合とが、本明細書等に開示されているものとする。したがって、所定の接続関係、例えば、図または文章に示された接続関係に限定されず、図または文章に示された接続関係以外のものも、図または文章に記載されているものとする。Ｘ、Ｙは、対象物（例えば、装置、素子、回路、配線、電極、端子、導電膜、層など）であるとする。
【００１９】
トランジスタは、ゲート、ソース、およびドレインと呼ばれる３個の端子を有する。ゲートは、トランジスタの導通状態を制御する制御端子である。ソースまたはドレインとして機能する２個の端子は、トランジスタの入出力端子である。２つの入出力端子は、トランジスタの導電型（ｎチャネル型、ｐチャネル型）及びトランジスタの３個の端子に与えられる電位の高低によって、一方がソースとなり他方がドレインとなる。このため、本明細書等においては、ソースやドレインの用語は、入れ替えて用いることができるものとする。また、本明細書等では、ゲート以外の２個の入出力端子を第１端子、第２端子等と呼ぶ場合がある。
【００２０】
ノードは、回路構成やデバイス構造等に応じて、端子、配線、電極、導電層、導電体、不純物領域等と言い換えることが可能である。また、端子、配線等をノードと言い換えることが可能である。
【００２１】
電圧は、ある電位と、基準の電位（例えば接地電位（ＧＮＤ）またはソース電位）との電位差のことを示す場合が多い。よって、電圧を電位と言い換えることが可能である。なお、電位とは相対的なものである。よって、ＧＮＤと記載されていても、必ずしも０Ｖを意味しない場合もある。
【００２２】
本明細書において、「上に」、「下に」などの配置を示す語句は、構成同士の位置関係を、図面を参照して説明するために、便宜上用いている場合がある。また、構成同士の位置関係は、各構成を描写する方向に応じて適宜変化するものである。従って、明細書で説明した語句に限定されず、状況に応じて適切に言い換えることができる。
【００２３】
本明細書等において、「膜」という言葉と「層」という言葉とは、場合によっては、または、状況に応じて、互いに入れ替えることが可能である。例えば、「導電層」という用語を「導電膜」という用語に変更することが可能な場合がある。例えば、「絶縁膜」という用語を「絶縁層」という用語に変更することが可能な場合がある。
【発明の効果】
【００２４】
本発明の一形態によって、ｏｘトランジスタを有する新規な半導体装置の提供、または低消費電力な半導体装置の提供が可能になる。
【００２５】
複数の効果の記載は、他の効果の存在を妨げるものではない。また、本発明の一形態は、必ずしも、例示した効果の全てを有する必要はない。また、本発明の一形態について、上記以外の課題、効果、および新規な特徴については、本明細書の記載および図面から自ずと明らかになるものである。
【図面の簡単な説明】
【００２６】
【図１】プロセッサの構成例を示すブロック図。
【図２】ＣＰＵのパワーゲーティング機構の例を示すブロック図。
【図３】Ａ：フリップフロップの構成例を示す回路図。Ｂ：フリップフロップの積層構造例を示す図。
【図４】フリップフロップの動作例を示すタイミングチャート。
【図５】Ａ：ＮＯＳＲＡＭの構成例を示す機能ブロック図。Ｂ：メモリセルの構成例を示す回路図。
【図６】Ａ：メモリセルアレイの構成例を示す回路図。Ｂ、Ｃ：メモリセルの構成例を示す回路図。
【図７】ＮＯＳＲＡＭの動作例を示すタイミングチャート。
【図８】ＯＳＳＲＡＭの構成例を示す機能ブロック図。
【図９】Ａ：メモリセルの構成例を示す回路図。Ｂ：ＯＳＳＲＡＭの動作例を示すタイミングチャート。
【図１０】ＣＰＵの構成例を示すブロック図。
【図１１】Ａ：ＤＯＳＲＡＭのメモリセルの構成例を示す回路図。Ｂ：ＤＯＳＲＡＭの積層構造例を示す図。
【図１２】ＧＰＵの構成例を示すブロック図。
【図１３】積和演算（ＭＡＣ）ユニットの構成例を示すブロック図。
【図１４】ＭＡＣアレイの構成例を示す回路図。
【図１５】電子機器を例示する図。
【発明を実施するための形態】
【００２７】
以下に、本発明の実施の形態および実施例を説明する。ただし、本発明の一形態は、以下の説明に限定されず、本発明の趣旨およびその範囲から逸脱することなくその形態および詳細を様々に変更し得ることは、当業者であれば容易に理解される。したがって、本発明の一形態は、以下に示す実施の形態および実施例の記載内容に限定して解釈されるものではない。
【００２８】
以下に示される複数の実施の形態は適宜組み合わせることが可能である。また１の実施の形態に複数の構成例（作製方法例、動作方法例等も含む。）が示される場合は、互い構成例を適宜組み合わせること、および他の実施の形態に記載されている１または複数の構成例と適宜組み合わせることが可能である。
【００２９】
図面において、大きさ、層の厚さ、および領域等は、明瞭化のために誇張されている場合がある。よって、必ずしもそのスケールに限定されない。図面は、理想的な例を模式的に示したものであり、図面に示す形状又は値などに限定されない。例えば、ノイズによる信号、電圧、若しくは電流のばらつき、又は、タイミングのずれによる信号、電圧、若しくは電流のばらつきなどを含むことが可能である。
【００３０】
本明細書において、「上に」、「下に」などの配置を示す語句は、構成同士の位置関係を、図面を参照して説明するために、便宜上用いている場合がある。また、構成同士の位置関係は、各構成を描写する方向に応じて適宜変化するものである。従って、明細書で説明した語句に限定されず、状況に応じて適切に言い換えることができる。
【００３１】
〔実施の形態１〕
本実施の形態では、半導体装置の一例として、パワーゲーティングが可能な半導体装置について説明する。
【００３２】
＜＜プロセッサ１００＞＞
図１に示すプロセッサ１００は、アーキテクチャが異なるプロセッサコアを備えるヘテロジニアス（異種混合）なプロセッサであり、ＣＰＵ（中央演算装置）１１０、ＧＰＵ（グラフィック演算装置）１１２、ＰＭＵ（電力管理装置）１１３、メモリ装置１１４、バス１１５、インターフェース部１１６、メモリ制御部１２１、オーディオ処理部１２２、ビデオ処理部１２３、ディスプレイ制御部１２４を有する。これら集積回路は１のダイに設けられている。つまり、プロセッサ１００は、システムオンチップで構成されている。図１に示すように、ＣＰＵ１１０、ＧＰＵ１１２等の各半導体装置が相互にデータの授受が可能に構成されている。
【００３３】
ＰＭＵ１１３は、クロック信号、電源電圧を管理する。例えば、ＰＭＵ１１３はＣＰＵ１１０のクロックゲーティング、およびパワーゲーティングを制御する。
【００３４】
プロセッサ１００は、アプリケーションプロセッサとして用いることができる。そのため、プロセッサ１００に様々な機能回路を設けて、各種の周辺デバイスをプロセッサ１００で制御できるようにしている。例えば、メモリ制御部１２１には、ＤＲＡＭ用コントローラ、フラッシュメモリ用コントローラが設けられる。オーディオ処理部１２２は、音声データ等を処理する。ビデオ処理部１２３には、ビデオデコーダ、ビデオエンコーダ、カメラ用画像処理回路などが設けられる。ディスプレイ制御部１２４には、ディスプレイコントローラ、マルチモニタコントローラが設けられる。
【００３５】
また、周辺デバイスに応じて、各種のインターフェース回路がインターフェース部１１６に設けられる。例えば、ｅＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ  Ｅｘｐｒｅｓｓ）、Ｉ２Ｃ（Ｉ−ｓｑｕａｒｅｄ−Ｃ、Ｉｎｔｅｒ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）、ＭＩＰＩ（Ｍｏｂｉｌｅ  Ｉｎｄｕｓｔｒｙ  Ｐｒｏｃｅｓｓｏｒ  Ｉｎｔｅｒｆａｃｅ）、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）、ＳＰＩ（Ｓｅｒｉａｌ  Ｐｅｒｉｐｈｅｒａｌ  Ｉｎｔｅｒｆａｃｅ）、ＨＤＭＩ（登録商標）／ＤＰ（Ｈｉｇｈ−Ｄｅｆｉｎｉｔｉｏｎ  Ｍｕｌｔｉｍｅｄｉａ  Ｉｎｔｅｒｆａｃｅ／ＤｉｓｐｌａｙＰｏｒｔ）、ｅＤＰ（ｅｍｂｅｄｄｅｄ  ＤｉｓｐｌａｙＰｏｒｔ）、ＤＳＩ（Ｄｉｓｐｌａｙ  Ｓｅｒｉａｌ  Ｉｎｔｅｒｆａｃｅ）などの規格に対応する回路が設けられる。
【００３６】
なお、機能回路、インターフェース回路は、プロセッサ１００の用途等に応じて適宜取捨される。
【００３７】
プロセッサ１００には、Ｓｉトランジスタ、およびｏｘトランジスタが用いられる。プロセッサ１００にパワーゲーティング機能を持たせるため、ｏｘトランジスタが用いられたメモリ回路（以下、「ｏｘメモリ回路」と呼ぶ）が用いられる。
【００３８】
金属酸化物のバンドギャップは２．５ｅＶ以上あるため、ｏｘトランジスタは極小のオフ電流をもつ。一例として、ソースとドレイン間の電圧が３．５Ｖ、室温（２５℃）下において、チャネル幅１μｍ当たりのオフ電流を１×１０−２０Ａ未満、１×１０−２２Ａ未満、あるいは１×１０−２４Ａ未満とすることができる。すなわち、ドレイン電流のオン／オフ電流比を２０桁以上１５０桁以下とすることができる。そのため、ｏｘメモリデバイスは、ｏｘトランジスタを介して保持ノードからリークする電荷量が極めて少ない。従って、ｏｘメモリデバイスは不揮発性メモリ回路として機能できるため、プロセッサ１００のパワーゲーティングが可能となる。
【００３９】
ｏｘトランジスタに適用される金属酸化物は、Ｚｎ酸化物、Ｚｎ‐Ｓｎ酸化物、Ｇａ‐Ｓｎ酸化物、Ｉｎ‐Ｇａ酸化物、Ｉｎ‐Ｚｎ酸化物、Ｉｎ‐Ｍ‐Ｚｎ酸化物（Ｍは、Ｔｉ、Ｇａ、Ｙ、Ｚｒ、Ｌａ、Ｃｅ、Ｎｄ、ＳｎまたはＨｆ）などがある。また、インジウムおよび亜鉛を含む酸化物に、アルミニウム、ガリウム、イットリウム、銅、バナジウム、ベリリウム、ホウ素、シリコン、チタン、鉄、ニッケル、ゲルマニウム、ジルコニウム、モリブデン、ランタン、セリウム、ネオジム、ハフニウム、タンタル、タングステン、またはマグネシウムなどから選ばれた一種、または複数種が含まれていてもよい。
【００４０】
ｏｘトランジスタの信頼性、電気特性の向上のため、半導体層に適用される金属酸化物は、ＣＡＡＣ‐ＯＳ、ＣＡＣ−ＯＳ、ｎｃ‐ＯＳなどの結晶部を有する金属酸化物であることが好ましい。ＣＡＡＣ‐ＯＳとは、ｃ‐ａｘｉｓ‐ａｌｉｇｎｅｄ  ｃｒｙｓｔａｌｌｉｎｅ  ｍｅｔａｌ  ｏｘｉｄｅ  ｓｅｍｉｃｏｎｄｕｃｔｏｒの略称である。ＣＡＣ‐ＯＳとは、Ｃｌｏｕｄ‐Ａｌｉｇｎｅｄ  Ｃｏｍｐｏｓｉｔｅ  ｍｅｔａｌ  ｏｘｉｄｅ  ｓｅｍｉｃｏｎｄｕｃｔｏｒの略称である。ｎｃ‐ＯＳとは、ｎａｎｏｃｒｙｓｔａｌｌｉｎｅ  ｍｅｔａｌ  ｏｘｉｄｅ  ｓｅｍｉｃｏｎｄｕｃｔｏｒの略称である。
【００４１】
ＣＡＡＣ‐ＯＳは、ｃ軸配向性を有し、かつａ‐ｂ面方向において複数のナノ結晶が連結し、歪みを有した結晶構造となっている。なお、歪みとは、複数のナノ結晶が連結する領域において、格子配列の揃った領域と、別の格子配列の揃った領域との間で格子配列の向きが変化している箇所を指す。
【００４２】
ＣＡＣ‐ＯＳは、キャリアとなる電子（または正孔）を流す機能と、キャリアとなる電子を流さない機能とを有する。電子を流す機能と、電子を流さない機能とを分離させることで、双方の機能を最大限に高めることができる。つまり、ＣＡＣ‐ＯＳをｏｘトランジスタのチャネル形成領域に用いることで、高いオン電流と、極めて低いオフ電流との双方を実現できる。
【００４３】
金属酸化物は、エネルギーギャップが大きく、電子が励起されにくいこと、ホールの有効質量が大きいことなどから、ｏｘトランジスタは、一般的なＳｉトランジスタと比較して、アバランシェ崩壊等が生じにくい場合がある。従って、例えばアバランシェ崩壊に起因するホットキャリア劣化等を抑制できる場合がある。ホットキャリア劣化を抑制できることで、高いドレイン電圧でｏｘトランジスタを駆動することができる。
【００４４】
ｏｘトランジスタは、電子を多数キャリアとする蓄積型トランジスタである。そのため、ｐｎ接合を有する反転型トランジスタ（代表的には、Ｓｉトランジスタ）と比較して短チャネル効果の一つであるＤＩＢＬ（Ｄｒａｉｎ‐Ｉｎｄｕｃｅｄ  Ｂａｒｒｉｅｒ  Ｌｏｗｅｒｉｎｇ）の影響が小さい。つまり、ｏｘランジスタは、Ｓｉトランジスタよりも短チャネル効果に対する高い耐性を有する。
【００４５】
ｏｘトランジスタは、短チャネル効果に対する耐性が高いために、ｏｘトランジスタの信頼性を劣化させずに、チャネル長を縮小できるので、ｏｘトランジスタを用いることで回路の集積度を高めることができる。チャネル長が微細化するのに伴いドレイン電界が強まるが、上掲したように、ｏｘトランジスタはＳｉトランジスタよりもアバランシェ崩壊が起きにくい。
【００４６】
また、ｏｘトランジスタは、短チャネル効果に対する耐性が高いために、Ｓｉシリコン等トランジスタよりもゲート絶縁物を厚くすることが可能となる。例えば、チャネル長及びチャネル幅が５０ｎｍ以下の微細なトランジスタにおいても、１０ｎｍ程度の厚いゲート絶縁物を設けることが可能な場合がある。ゲート絶縁物を厚くすることで、寄生容量を低減することができるので、回路の動作速度を向上できる。またゲート絶縁物を厚くすることにで、リーク電流が低減されるため、静的消費電流の低減につながる。
【００４７】
＜＜ＣＰＵ１１０＞＞
図２に、ＣＰＵ１１０の構成例を示す。ＣＰＵ１１０は、ＣＰＵコア２００、Ｌ１（レベル１）キャッシュメモリ装置２０２、Ｌ２キャッシュメモリ装置２０３、バスインターフェース部２０５、パワースイッチ２１０〜２１２、レベルシフタ（ＬＳ）２１４を有する。ＣＰＵコア２００はフリップフロップ２２０を有する。
【００４８】
バスインターフェース部２０５によって、ＣＰＵコア２００、Ｌ１（レベル１）キャッシュメモリ装置２０２、Ｌ２キャッシュメモリ装置２０３が相互に電気的に接続される。
【００４９】
外部から入力される割り込み信号、ＣＰＵ１００が発行する信号ＳＬＥＥＰ１等に信号に応じて、ＰＭＵ１１３はクロック信号ＧＣＬＫ１、各種のＰＧ（パワーゲーティング）制御信号の生成を行う。クロック信号ＧＣＬＫ１、ＰＧ制御信号はＣＰＵ１１０に入力される。ＰＧ制御信号は、パワースイッチ２１０〜２１２、フリップフロップ２２０を制御する。
【００５０】
パワースイッチ２１０、２１１は、仮想電圧線Ｖ＿ＶＤＤ（以下、Ｖ＿ＶＤＤ線と呼ぶ）への電圧ＶＤＤＤ、ＶＤＤ１の供給をそれぞれ制御する。パワースイッチ２１２は、仮想電圧線Ｖ＿ＶＤＨ（以下、Ｖ＿ＶＤＨ線と呼ぶ。）への電圧ＶＤＨの供給を制御する。ＣＰＵ１１０、ＰＭＵ１１３には、パワースイッチを介さずに電圧ＶＳＳＳが入力される。ＰＭＵ１１３には、パワースイッチを介さずに電圧ＶＤＤＤが入力される。
【００５１】
電圧ＶＤＤＤ、ＶＤＤ１はＣＭＯＳ回路用の駆動電圧である。電圧ＶＤＤ１はＶＤＤＤよりも低く、スリープ状態での駆動電圧である。電圧ＶＤＤＨはｏｘトランジスタ用の駆動電圧であり、ＶＤＤＤよりも高い。
【００５２】
Ｌ１キャッシュメモリ装置２０２、Ｌ２キャッシュメモリ装置２０３、バスインターフェース部２０５それぞれは、少なくとも１つパワーゲーティング可能なパワードメインを有する。パワーゲーティング可能なパワードメインには、１または複数のパワースイッチが設けられている。これらのパワースイッチは、ＰＧ制御信号によって制御される。
【００５３】
フリップフロップ２２０は、レジスタに用いられる。フリップフロップ２２０には、バックアップ回路が設けられている。バックアップ回路、ならびにキャッシュメモリ装置２０２、２０３のメモリセルは、ｏｘメモリ回路で構成されている。以下、フリップフロップ２２０、キャッシュメモリ装置２０２、２０３について説明する。
【００５４】
＜フリップフロップ２２０＞
図３にフリップフロップ２２０の回路構成例を示す。フリップフロップ２２０はスキャンフリップフロップ２２１、バックアップ回路２２２を有する。
【００５５】
スキャンフリップフロップ２２１は、ノードＤ１、Ｑ１、ＳＤ、ＳＥ、ＲＴ、ＣＫ、クロックバッファ回路２２１Ａを有する。
【００５６】
ノードＤ１はデータ入力ノードであり、ノードＱ１はデータ出力ノードであり、ノードＳＤはスキャンテスト用データの入力ノードである。ノードＳＥは信号ＳＣＥの入力ノードである。ノードＣＫはクロック信号ＧＣＬＫの入力ノードである。クロック信号ＧＣＬＫはクロックバッファ回路２２１Ａに入力される。スキャンフリップフロップ２２１のアナログスイッチは、クロックバッファ回路２２１ＡのノードＣＫ１、ＣＫＢ１に電気的に接続される。ノードＲＴはリセット信号の入力ノードである。
【００５７】
信号ＳＣＥは、スキャンイネーブル信号であり、ＰＭＵ１１３で生成される。ＰＭＵ１１３は信号ＢＫ、ＲＣを生成する。レベルシフタ２１４は信号ＢＫ、ＲＣをレベルシフトし、信号ＢＫＨ、ＲＥＨを生成する。信号ＢＫ、ＲＣはバックアップ信号、リカバリ信号である。
【００５８】
スキャンフリップフロップ２２１は、ノードＤ１、Ｑ１、ＳＤ、ＳＥ、ＲＴ、ＣＫ、クロックバッファ回路２２１Ａを有する。ノードＤ１はデータ入力ノードであり、ノードＱ１はデータ出力ノードであり、ノードＳＤはスキャンテスト用データの入力ノードである。ノードＳＥは信号ＳＣＥの入力ノードである。信号ＳＣＥはスキャンイネーブル信号であり、ＰＭＵ１１３の出力信号である。ノードＣＫはクロック信号ＧＣＬＫ１の入力ノードである。クロック信号ＧＣＬＫ１はクロックバッファ回路２２１Ａに入力される。スキャンフリップフロップ２２１のアナログスイッチは、クロックバッファ回路２２１ＡのノードＣＫ１、ＣＫＢ１に電気的に接続される。ノードＲＴはリセット信号の入力ノードである。
【００５９】
スキャンフリップフロップ２２１の回路構成は、図３に限定されない。標準的な回路ライブラリに用意されているフリップフロップを適用することができる。
【００６０】
（バックアップ回路２２２）
バックアップ回路２２２は、ノードＳＤ＿ＩＮ、ＳＮ１１、トランジスタＭ１１〜Ｍ１３、容量素子Ｃ１１を有する。
【００６１】
ノードＳＤ＿ＩＮは、スキャンテストデータの入力ノードであり、他のスキャンフリップフロップ２２１のノードＱ１に電気的に接続される。ノードＳＮ１１は、バックアップ回路２２２の保持ノードである。容量素子Ｃ１１はノードＳＮ１１の電圧を保持するための保持容量である。
【００６２】
トランジスタＭ１１はノードＱ１とノードＳＮ１１間の導通状態を制御する。トランジスタＭ１２はノードＳＮ１１とノードＳＤ間の導通状態を制御する。トランジスタＭ１３はノードＳＤ＿ＩＮとノードＳＤ間の導通状態を制御する。トランジスタＭ１１、Ｍ１３のオンオフは信号ＢＫＨで制御され、トランジスタＭ１２のオンオフは信号ＲＣＨで制御される。
【００６３】
トランジスタＭ１１〜Ｍ１３はトランジスタＭ１と同様に、バックゲートを有するｏｘトランジスタである。トランジスタＭ１１〜Ｍ１３のバックゲートは、電圧ＶＢＧ１を供給する電源線に電気的に接続されている。
【００６４】
少なくともトランジスタＭ１１、Ｍ１２がｏｘトランジスタであることが好ましい。オフ電流が極めて小さいというｏｘトランジスタの特長によって、ノードＳＮ１１の電圧の低下を抑えることができること、データの保持に電力を殆んど消費しないことから、バックアップ回路２２２は不揮発性の特性をもつ。容量素子Ｃ１１の充放電によってデータを書き換えるため、バックアップ回路２２２は原理的には書き換え回数に制約はなく、低エネルギーで、データの書き込みおよび読み出しが可能である。
【００６５】
バックアップ回路２２２の全てのトランジスタはｏｘトランジスタであることが非常に好ましい。図３Ｂに示すように、シリコンＣＭＯＳ回路で構成されるスキャンフリップフロップ２２１上にバックアップ回路２２２を積層することができる。
【００６６】
バックアップ回路２２２は、スキャンフリップフロップ２２１と比較して素子数が非常に少ないので、バックアップ回路２２２を積層するためにスキャンフリップフロップ２２１の回路構成およびレイアウトの変更が必要ない。つまり、バックアップ回路２２２は、汎用性が非常に高いバックアップ回路である。また、スキャンフリップフロップ２２１が形成されている領域内にバックアップ回路２２２を設けることができるので、バックアップ回路２２２を組み込んでも、フリップフロップ２２０の面積オーバーヘッドはゼロにすることが可能である。よって、バックアップ回路２２２をフリップフロップ２２０に設けることで、ＣＰＵコア２００のパワーゲーティングを可能となる。パワーゲーティングに必要なエネルギーが少ないため、ＣＰＵコア２００を高効率にパワーゲーティングすることが可能である。
【００６７】
バックアップ回路２２２を設けたことによって、トランジスタＭ１１による寄生容量がノードＱ１に付加することになるが、ノードＱ１に接続される論理回路による寄生容量と比較して小さいので、スキャンフリップフロップ２２１の動作に影響はない。つまり、バックアップ回路２２２を設けても、フリップフロップ２２０の性能は実質的に低下しない。
【００６８】
＜低消費電力状態＞
ＣＰＵコア２００の低消費電力状態として、例えば、クロックゲーティング状態、パワーゲーティング状態、休止状態を設定することができる。ＰＭＵ１１３は、割り込み信号、信号ＳＬＥＥＰ１等に基づき、ＣＰＵコア２００の低消費電力モードを選択する。例えば、通常動作状態からクロックゲーティング状態に移行する場合、ＰＭＵ１１３はクロック信号ＧＣＬＫ１の生成を停止する。
【００６９】
例えば、通常動作状態から休止状態に移行する場合は、ＰＭＵ１１３は、電圧および／または周波数スケーリングを行う。例えば、電圧スケーリングを行う場合、ＰＭＵ１１３は、電圧ＶＤＤ１をＣＰＵコア２００に入力するため、パワースイッチ２１０をオフにし、パワースイッチ２１１をオンにする。電圧ＶＤＤ１は、スキャンフリップフロップ２２１のデータを消失させない電圧である。周波数スケーリングを行う場合、ＰＭＵ１１３はクロック信号ＧＣＬＫ１の周波数を低下させる。
【００７０】
ＣＰＵコア２００を通常動作状態からパワーゲーティング状態に移行する場合には、スキャンフリップフロップ２２１のデータをバックアップ回路２２２にバックアップする動作が行われる。ＣＰＵコア２００をパワーゲーティング状態から通常動作状態に復帰する際には、バックアップ回路２２２のデータをスキャンフリップフロップ２２１に書き戻すリカバリ動作が行われる。
【００７１】
図４に、ＣＰＵコア２００のパワーゲーティングシーケンスの一例を示す。なお、図４において、ｔ１等は時刻を表している。信号ＰＳＥ０〜ＰＳＥ２は、パワースイッチ２１０〜２１２の制御信号であり、ＰＭＵ１１３で生成される。信号ＰＳＥ０が“Ｈ”／“Ｌ”のとき、パワースイッチ２１０はオン／オフである。信号ＰＳＥ１、ＰＳＥ２についても同様である。
【００７２】
（通常動作）
ｔ１以前は、通常動作状態である。パワースイッチ２１０はそれぞれオンであり、ＣＰＵコア２００には電圧ＶＤＤＤが入力される。スキャンフリップフロップ２２１は通常動作を行う。このとき、レベルシフタ２１４は動作させる必要がないため、パワースイッチ２１２はオフであり、信号ＳＣＥ、ＢＫ、ＲＣは“Ｌ”である。ノードＳＥが“Ｌ”であるため、スキャンフリップフロップ２２１はノードＤ１のデータを記憶する。なお、図４の例では、ｔ１において、バックアップ回路２２２のノードＳＮ１１は“Ｌ”である。
【００７３】
（バックアップ）
ｔ１で、ＰＭＵ１１３はクロック信号ＧＣＬＫ１を停止し、信号ＰＳＥ２、ＢＫを“Ｈ”にする。レベルシフタ２１４はアクティブになり、“Ｈ”の信号ＢＫＨをバックアップ回路２２２に出力する。
【００７４】
バックアップ回路２２２のトランジスタＭ１１がオンになり、スキャンフリップフロップ２２１のノードＱ１のデータがバックアップ回路２２２のノードＳＮ１１に書き込まれる。スキャンフリップフロップ２２１のノードＱ１が“Ｌ”であれば、ノードＳＮ１１は“Ｌ”のままであり、ノードＱ１が“Ｈ”であれば、ノードＳＮ１１は“Ｈ”になる。
【００７５】
ＰＭＵ１１３は、ｔ２で信号ＰＳＥ２、ＢＫを“Ｌ”にし、ｔ３で信号ＰＳＥ０を“Ｌにする。ｔ３で、ＣＰＵコア２００の状態はパワーゲーティング状態に移行する。なお、信号ＢＫを立ち下げるタイミングで信号ＰＳＥ０を立ち下げてもよい。
【００７６】
（パワーゲーティング）
信号ＰＳＥ０が“Ｌになることで、Ｖ＿ＶＤＤ線の電圧が低下するため、ノードＱ１のデータは失われる。ノードＳＮ１１は、時刻ｔ１でのノードＱ１のデータを保持し続ける。
【００７７】
（リカバリ）
ｔ４で、ＰＭＵ１１３が信号ＰＳＥ０を“Ｈ”にすることで、パワーゲーティング状態からリカバリ状態に移行する。Ｖ＿ＶＤＤ線の充電が開始され、Ｖ＿ＶＤＤ線の電圧がＶＤＤＤになった状態（時刻ｔ５）で、ＰＭＵ１１３は信号ＰＳＥ２、ＲＣ、ＳＣＥを“Ｈ”にする。
【００７８】
トランジスタＭ１２はオンになり、容量素子Ｃ１１の電荷がノードＳＮ１１とノードＳＤとに分配される。ノードＳＮ１１が“Ｈ”であれば、ノードＳＤの電圧は上昇する。ノードＳＥは“Ｈ”であるので、スキャンフリップフロップ２２１の入力側ラッチ回路にノードＳＤのデータが書き込まれる。ｔ６でノードＣＫにクロック信号ＧＣＬＫ１が入力されると、入力側ラッチ回路のデータがノードＱ１に書き込まれる。つまり、ノードＳＮ１１のデータがノードＱ１に書き込まれたことになる。
【００７９】
ｔ７で、ＰＭＵ１１３は信号ＰＳＥ２、ＳＣＥ、ＲＣを“Ｌ”にし、リカバリ動作が終了する。
【００８０】
ｏｘトランジスタを用いたバックアップ回路２２２は、動的および静的低消費電力双方が小さいため、ノーマリオフ・コンピューティングに非常に好適である。フリップフロップ２２０を搭載しても、ＣＰＵコア２００の性能低下、動的電力の増加をほとんど発生させないようにできる。
【００８１】
なお、ＣＰＵコア２００は複数のパワーゲーティング可能なパワードメインを有してもよい。複数のパワードメインには、電圧の入力を制御するための１または複数のパワースイッチが設けられる。また、ＣＰＵコア２００は、１または複数のパワーゲーティングが行われないパワードメインを有していてもよい。例えば、パワーゲーティングが行われないパワードメインに、フリップフロップ２２０、パワースイッチ２１０〜２１２のバックアップ回路２２２制御を行うためのパワーゲーティング制御回路を設けてもよい。
【００８２】
なお、フリップフロップ２２０の適用はＣＰＵ１１０に限定されない。プロセッサ１００において、パワーゲーティング可能なパワードメインに設けられるレジスタに、フリップフロップ２２０を適用できる。
【００８３】
＜＜キャッシュメモリ装置２０２、２０３＞＞
キャッシュメモリ装置２０２、２０３は、ｏｘメモリ装置で構成される。ｏｘメモリ装置とは、メモリセルにｏｘトランジスタが用いられているメモリ装置のことを指す。例えば、キャッシュメモリ装置２０２、２０３は、ＮＯＳＲＡＭ（登録商標）、またはＯＳＳＲＡＭで構成される。
【００８４】
ＮＯＳＲＡＭとは、メモリセルの書き込みトランジスタがｏｘトランジスタで構成されているゲインセル型ＤＲＡＭのことである。ＮＯＳＲＡＭはＮｏｎｖｏｌａｔｉｌｅ  Ｏｘｉｄｅ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ  ＲＡＭの略称である。ＯＳＳＲＡＭとは、ｏｘトランジスタで構成されるバックアップ回路がメモリセル設けられているＳＲＡＭのことである。以下に、ＮＯＳＲＡＭ、ＯＳＳＲＡＭの構成例を示す。
【００８５】
＜ＮＯＳＲＡＭ＞
図５ＡはＮＯＳＲＡＭの構成例を示すブロック図である。ＮＯＳＲＡＭ２４０には、パワードメイン２４２、２４３、パワースイッチ２４５〜２４７が設けられている。パワードメイン２４２には、メモリセルアレイ２５０が設けられ、パワードメイン２４３にはＮＯＳＲＡＭ２４０の周辺回路が設けられている。周辺回路は、制御回路２５１、行回路２５２、列回路２５３を有する。
【００８６】
外部からＮＯＳＲＡＭ２４０に電圧ＶＤＤＤ、ＶＳＳＳ、ＶＤＨＷ、ＶＤＨＲ、ＶＢＧ２、クロック信号ＧＣＬＫ２、アドレス信号、信号ＣＥ、ＷＥ、ＰＳＥ５が入力される。信号ＣＥ、ＷＥはチップイネーブル信号、書き込みイネーブル信号である。信号ＰＳＥ５はＰＭＵ１１３で生成され、パワースイッチ２４５〜２４７のオンオフを制御する。パワースイッチ２４５〜２４７は、パワードメイン２４３への電圧ＶＤＤＤ、ＶＤＨＷ、ＶＤＨＲの入力をそれぞれ制御する。
【００８７】
なお、ＮＯＳＲＡＭ２４０に入力される電圧、信号等は、ＮＯＳＲＡＭ２４０の回路構成、動作方法に応じて適宜取捨される。例えば、ＮＯＳＲＡＭ２４０にパワーゲーティングされないパワードメインを設け、信号ＰＳＥ５を生成するパワーゲーティング制御回路を設けてもよい。
【００８８】
メモリセルアレイ２５０は、メモリセル１０、書込みワード線ＷＷＬ、読出しワード線ＲＷＬ、書込みビット線ＷＢＬ、読出しビット線ＲＢＬ、ソース線ＳＬを有する。
【００８９】
図５Ｂに示すように、メモリセル１０は２Ｔ１Ｃ（２トランジスタ１容量）型のゲインセルであり、ノードＳＮ１、トランジスタＭ１、Ｍ２、容量素子Ｃ１を有する。トランジスタＭ１は書き込みトランジスタであり、バックゲートを有するｏｘトランジスタである。トランジスタＭ１のバックゲートは、電圧ＶＢＧ２を供給する配線ＢＧＬ２に電気的に接続されている。トランジスタＭ２は読出しトランジスタであり、ｐチャネル型Ｓｉトランジスタである。容量素子Ｃ１はノードＳＮ１の電圧を保持する保持容量である。
【００９０】
電圧ＶＤＤＤ、ＶＳＳＳはデータ“１”、“０”を表す電圧である。なお、書込みワード線ＷＷＬ、ＲＷＬの高レベル電圧は、ＶＤＨＷ、ＶＨＤＲである。
【００９１】
図６Ａにメモリセルアレイ２５０の構成例を示す。図６Ａに示すメモリセルアレイ２５０では、隣接する２行で１本のソース線が供給されている。
【００９２】
メモリセル１０は原理的に書き換え回数に制限はなく、データの書き換えを低エネルギーで行え、データの保持に電力を消費しない。トランジスタＭ１が極小オフ電流のｏｘトランジスタであるため、メモリセル１０は長時間データを保持することが可能である。よって、ＮＯＳＲＡＭ２４０で、キャッシュメモリ装置２０２、２０２で構成することで、キャッシュメモリ装置２０２、２０３を、不揮発性の低消費電力なメモリ装置とすることができる。
【００９３】
メモリセル１０の回路構成は、図５Ｂの回路構成に限定されない。例えば、読出しトランジスタＭ２を、バックゲートを有するｏｘトランジスタ、またはｎチャネル型Ｓｉトランジスタでもよい。或いは、メモリセル１０は３Ｔ型ゲインセルでもよい。例えば、図６Ｂ、図６Ｃに３Ｔ型ゲインセルの例を示す。図６Ｂに示すメモリセル１２は、トランジスタＭ３〜Ｍ５、容量素子Ｃ３、ノードＳＮ３を有する。トランジスタＭ３〜Ｍ５は、書込みトランジスタ、読出しトランジスタ、選択トランジスタである。トランジスタＭ３はバックゲートを有するｏｘトランジスタであり、トランジスタＭ４、Ｍ５はｐチャネル型Ｓｉトランジスタである。トランジスタＭ４、Ｍ５を、ｎチャネル型Ｓｉトランジスタまたはバックゲートを有するｏｘトランジスタで構成してもよい。図６Ｃに示すメモリセル１３では、３個のトランジスタはバックゲートを有するｏｘトランジスタで構成されている。
【００９４】
ノードＳＮ３は保持ノードである。容量素子Ｃ３はノードＳＮ３の電圧を保持するための保持容量である。容量素子Ｃ３を意図的に設けず、トランジスタＭ４のゲート容量などで保持容量を構成してもよい。配線ＰＤＬには固定電圧（例えば、ＶＤＤＤ）が入力される。配線ＰＤＬはソース線ＳＬに代わる配線であり、例えば、電圧ＶＤＤＤが入力される。
【００９５】
制御回路２５１は、ＮＯＳＲＡＭ２４０の動作全般を制御する機能を有する。例えば、制御回路２５１は、信号ＣＥ、ＷＥを論理演算して、外部からのアクセスが書き込みアクセスであるか読み出しアクセスであるかを判断する。
【００９６】
行回路２５２は、アドレス信号が指定する選択された行の書込みワード線ＷＷＬ、読出しワード線を選択する機能をもつ。列回路２５３は、アドレス信号が指定する列の書込みビット線にデータを書き込む機能、および当該列の読出しビット線ＷＢＬからデータを読み出す機能をもつ。
【００９７】
＜動作例＞
図７を参照して、ＮＯＳＲＡＭ２４０の動作例を説明する。図７は、ＮＯＳＲＡＭ２４０の動作例を示すタイミングチャートである。書込み動作状態、読出し動作状態、およびスタンバイ状態において、パワースイッチ２４５〜２４７はオンであり、パワードメイン２４３には電圧ＶＤＤＤ、ＶＤＨＷ、ＶＤＨＲが入力される。
【００９８】
＜書き込み＞
“Ｈ”の信号ＣＥと、“Ｈ”の信号ＷＥとが入力されると、ＮＯＳＲＡＭ２４０は書き込み動作を行う。行回路２５２によって選択された行のワード線ＷＷＬは“Ｈ”に、ワード線ＲＷＬは“Ｌ”である。列回路２５３によって選択されたビット線ＷＢＬには、データに応じた電圧が入力される。選択されたメモリセル１０のノードＳＮ１の電圧は、データ“１”が書き込まれた場合ＶＤＤＤとなり、データ“０”が書き込まれた場合ＶＳＳＳとなる。
【００９９】
＜読み出し＞
“Ｈ”の信号ＣＥと、“Ｌ”の信号ＷＥとが入力されると、ＮＯＳＲＡＭ２４０は読み出し動作を行う。列回路２５３は、ビット線ＲＢＬを電圧ＶＳＳＳにプリチャージし、次に、ソース線ＳＬを“Ｈ”にする。次いで、行回路２５２によって選択された行のワード線ＲＷＬは“Ｌ”となる。選択行のメモリセル１０がデータ“０”を保持している場合、トランジスタＭ２のゲートには電圧ＶＳＳＳが入力されているため、トランジスタＭ２のソースードレイン間には大きな電流が流れる。したがって、ビット線ＲＢＬは速やかに充電され、ビット線ＲＢＬの電位は上昇する。選択行のメモリセル１０がデータ“１”を保持している場合、トランジスタＭ２のゲートには電位ＶＤＤＤが入力されているため、トランジスタＭ２はドレイン電流を殆んど流さない。そのため、ビット線ＲＢＬはプリチャージ電圧（ＶＳＳＳ）を維持する。
【０１００】
＜スタンバイ＞
書込みワード線ＷＷＬ、ソース線ＳＬは“Ｌ”であり、読出しワード線ＲＷＬは“Ｈ”である。メモリセル１０のトランジスタＭ１はオフ状態である。
【０１０１】
例えば、ＮＯＳＲＡＭ２４０がスタンバイ状態である時間が一定時間を超えると、ＰＭＵ１１３はパワースイッチ２４５〜２４７をオフ状態にし、かつクロック信号ＧＣＬＫ２の入力を停止する。これにより、パワードメイン２４３はパワーゲーティングされ、ＮＯＳＲＡＭ２４０の待機電力を低減できる。
【０１０２】
＜ＯＳＳＲＡＭ＞
次に、図８、図９を参照して、ＯＳＳＲＡＭについて説明する。
【０１０３】
図８に示すように、ＯＳＳＲＡＭ３００には、パワードメイン３０１〜３０３、パワースイッチ３１０〜３１４が設けられている。パワードメイン３０１はパワーゲーティングされないパワードメインであり、パワーゲーティング制御回路３３０が設けられる。パワードメイン３０２、３０３はパワーゲーティング可能なパワードメインである。パワードメイン３０２には、メモリセルアレイ３２０が設けられ、パワードメイン３０３には、制御回路３３１、行回路３３２、列回路３３３、バックアップ及びリカバリドライバ３３５が設けられている。
【０１０４】
メモリセルアレイ３２０は、セル２０、ワード線ＷＬ、ビット線ＢＬ、ＢＬＢ、ゲート線ＯＧＬを有する。なお、ビット線ＢＬ、ＢＬＢはローカルビット線と呼ぶこともできる。同じ列に設けられているビット線ＢＬとビット線ＢＬＢとでなる配線対をビット線対（ＢＬ、ＢＬＢ）と呼ぶ場合がある。
【０１０５】
ＯＳＳＲＡＭ３００には、電圧ＶＤＤＤ、ＶＳＳＳ、ＶＤＤＭ、ＶＤＭＬ、ＶＳＳＭ、ＶＤＨＢ、ＶＢＧ３、クロック信号ＧＣＬＫ３、アドドレス信号、信号ＲＳＴ、ＣＥ、ＧＷ、ＢＷが入力される。
【０１０６】
信号ＲＳＴ、ＣＥ、ＧＷ、ＢＷ、はそれぞれ、リセット信号、チップイネーブル信号、グローバル書き込みイネーブル信号、バイト書き込みイネーブル信号である。これら信号に基づき、制御回路３３１はＯＳＳＲＡＭ３００を制御する。制御回路３３１に、入力信号を一時的に格納するレジスタを設けてもよい。
【０１０７】
行回路３３２は、アドレス信号が指定する選択された行のワード線ＷＬ、選択する機能をもつ。列回路３３３は、アドレス信号が指定する列のビット線対（ＢＬ、ＢＬＢ）にデータを書き込む機能、および当該ビット線対（ＢＬ、ＢＬＢ）からデータを読み出す機能をもつ。
【０１０８】
ＯＳＳＲＡＭ３００において、各回路、各信号および各電圧は、必要に応じて、適宜取捨することができる。あるいは、他の回路または他の信号を追加してもよい。また、ＯＳＳＲＡＭ３００の入力信号および出力信号の構造は、ＯＳＳＲＡＭ３００の動作モード、およびメモリセルアレイ３２０の構成等に基づいて設定される。
【０１０９】
パワーゲーティング制御回路３３０は、ＰＭＵ１１３が生成するＰＧ制御信号に基づき、信号ＰＳＥ１１〜ＰＳＥ１３、行回路３３２、列回路３３３、バックアップ及びリカバリドライバ３３５の制御信号を生成する。信号ＰＳＥ１１〜ＰＳＥ１３は、パワースイッチ３１０〜３１４のオンオフを制御する。パワースイッチ３１０、３１１は、電圧ＶＤＤＤ、ＶＤＨＢのパワードメイン３０３への入力を制御する。パワースイッチ３１２〜３１４はそれぞれ電圧ＶＤＤＭ、ＶＤＭＬ、ＶＳＳＭのパワードメイン３０２への入力を制御する。
【０１１０】
（セル２０）
図９Ａにセル２０の回路構成例を示す。セル２０は、メモリセル２１、バックアップ回路２２を有する。メモリセル２１は、標準的な６Ｔ（トランジスタ）ＳＲＡＭセルと同じ回路構成であり、双安定回路２５、トランジスタＭＴ１、ＭＴ２を有する。双安定回路２５は、ワード線ＷＬ、ビット線ＢＬ、ＢＬＢ、Ｖ＿ＶＤＭ線、Ｖ＿ＶＳＭ線に電気的に接続されている。なお、Ｖ＿ＶＤＭ線は、パワースイッチ３１２、３１３によって、電圧の入力が制御されるバーチャル電源電であり、Ｖ＿ＶＳＭ線は、パワースイッチ３１４によって、電圧の入力が制御されるバーチャル電源電である。電圧ＶＤＨＢは、ゲート線ＯＧＬの高レベル電圧であり、ＶＤＤＭよりも高い電圧である。
【０１１１】
図２Ａの例では、双安定回路２５は、２個のＣＭＯＳインバータ回路でなるラッチ回路である。ノードＱ、Ｑｂは、２個のＣＭＯＳインバータの入力端子と出力端子との２個の接続部であり、相補データの保持ノードである。ノードＱ／Ｑｂが“Ｈ”／“Ｌ”になる、またはノードＱ／Ｑｂが“Ｌ”／“Ｈ”になることで、双安定回路２５は安定状態となる。トランジスタＭＴ１、ＭＴ２は転送トランジスタである。トランジスタＭＴ１によって、ビット線ＢＬとノードＱ間の導通状態が制御され、トランジスタＭＴ２によってビット線ＢＬＢとノードＱｂ間の導通状態が制御される。
【０１１２】
バックアップ回路２２は、メモリセル２１のデータをバックアップするための回路である。各セル２０にバックアップ回路２２を設けることで、パワードメイン３０２のパワーゲーティングが可能になる。
【０１１３】
バックアップ回路２２は、トランジスタＭ２１、Ｍ２２、容量素子Ｃ２１、Ｃ２２を有する。つまり、バックアップ回路２２は２個の１Ｔ１Ｃ型メモリセルを有しており、これらメモリセルの保持ノードが、ノードＳＮ２１、ＳＮ２２である。
【０１１４】
トランジスタＭ２１、Ｍ２２はバックゲート付きのｏｘトランジスタであり、これらバックゲートには電圧ＶＢＧ３が入力される。トランジスタＭ２１、Ｍ２２がｏｘトランジスタであるので、バックアップ回路２２はデータを長時間保持することが可能である。トランジスタＭ２１、Ｍ２２がｏｘトランジスタであることで、Ｓｉトランジスタでなるメモリセル２１にバックアップ回路２２を積層して設けることができるので、バックアップ回路２２を設けたことによるセル２０の面積オーバーヘッドを抑えることができる。
【０１１５】
＜低消費電力状態＞
ＯＳＳＲＡＭ３００には４種類の低消費電力状態がある。（１）ビット線フローティングモ状態、（２）休止状態（３）セルアレイドメインＰＧ状態、（４）全ドメインＰＧ状態。パワーゲーティング制御回路３３０は、ＰＭＵ１１３のＰＧ信号等にもとづき、低消費電力状態でのＯＳＳＲＡＭ３００の動作を管理する。
【０１１６】
（ビット線フローティング）ビット線フローティングモードでは、ビット線対（ＢＬ、ＢＬＢ）をフローティング状態にする。メモリセル２１のデータは消失しない。
【０１１７】
（スリープ）スリープモードでは、パワードメイン３０２に電圧ＶＤＤＭよりも低い電圧ＶＤＭＬを供給する。電圧ＶＤＭＬは、メモリセル２１のデータが消失しない大きさである。ビット線対（ＢＬ、ＢＬＢ）はフローティング状態である。
【０１１８】
（セルアレイドメインＰＧ）パワースイッチ３１２〜３１４をオフにして、パワードメイン３０２への電圧ＶＤＤＭ、ＶＤＭＬ、ＶＳＳＭの供給を停止する。ビット線対（ＢＬ、ＢＬＢ）をフローティング状態であり。メモリセル２１のデータは消失する。
【０１１９】
（全ドメインＰＧ）全ドメインＰＧモードとは、パワーゲーティング可能な全てのドメインをパワーゲーティングする状態ある。パワースイッチ３１０〜３１４はオフである。
【０１２０】
４の低消費電力状態は消費電力削減効果が得られる損益分岐時間（ＢＥＴ）が異なりＢＥＴの異なる複数の低消費電力状態を有することで、ＯＳＳＲＡＭ３００の消費電力を効率良く低減することができる。
【０１２１】
＜パワーゲーティングシーケンス＞
図９Ｂに、パワードメイン３０２に対するパワーゲーティングシーケンスの一例を示す。図９Ｂにおいて、ｔ１、ｔ２等は期間を表している。
【０１２２】
（通常動作）
時刻ｔ１以前では、ＯＳＳＲＡＭ３００の状態は、通常動作状態（書き込み状態または読み出し状態）である。ＯＳＳＲＡＭ３００はシングルポートＳＲＡＭと同様の通常動作を行う。パワースイッチ３１０〜３１２、３１４はオンであり、パワースイッチ３１３はオフである。
【０１２３】
（バックアップ）
パワーゲーティング制御回路３３０の制御信号基づき、パワーゲーティングシーケンスが実行される。時刻ｔ１でバックアップ動作が開始する。バックアップ及びリカバリドライバ３３５は、“全て配線ＯＧＬを“Ｈ”にする。ここでは、時刻ｔ１でノードＱ／Ｑｂは“Ｈ”／“Ｌ”であり、ノードＳＮ２１／ＳＮ２２は“Ｌ”／“Ｈ”であるので、トランジスタＭ２１、Ｍ２２がオンになると、ノードＳＮ２１の電圧はＶＳＭからＶＤＭに上昇し、ノードＳＮ２２の電圧はＶＤＭからＶＳＭに低下する。ｔ２で信号ＰＧＭが“Ｌ”となることで、バックアップ動作が終了する。ノードＳＮ２１／ＳＮ２２には、ｔ１でのノードＱ／Ｑｂのデータが書き込まれる。
【０１２４】
（パワーゲーティング）
ｔ２で、信号ＰＳＥ２を“Ｌ”にしてパワースイッチ３１２、３１４をオフすることで、パワードメイン３０２のパワーゲーティングが開始する。Ｖ＿ＶＤＭ線とＶ＿ＶＳＭ線の電圧差が低下することで、メモリセル２１は非アクティブになる。メモリセル２１のデータは消失するが、バックアップ回路２２はデータを保持し続ける。
【０１２５】
例えば、パワードメイン３０２が電源オフである間、ビット線対（ＢＬ、ＢＬＢ）をフローティング状態にする。そのための制御信号を、パワーゲーティング制御回路３３０は列回路３３３に送信する。
【０１２６】
（リカバリ）
行回路３３２、列回路３３３、バックアップおよびリカバリドライバ３３５は、パワーゲーティング制御回路３３０の制御信号に従い、リカバリ動作を行う。リカバリ動作では、双安定回路２５は、ノードＱ／Ｑｂのデータを検知するためのセンスアンプとして機能する。まず、ノードＱ、Ｑｂのリセット動作が行われる。ｔ３で、列回路３３３は、全ビット線対（ＢＬ、ＢＬＢ）のプリチャージ動作を行う。全ビット線対（ＢＬ、ＢＬＢ）は電圧Ｖｐｒ２にプリチャージされる。行回路３３２は、全ワード線ＷＬを選択状態にする。Ｖ＿ＶＤＭ線、Ｖ＿ＶＳＭ線は電圧Ｖｐｒ２にプリチャージされ、ノードＱ、Ｑｂの電圧はＶｐｒ２に固定される。
【０１２７】
ｔ４で、バックアップ及びリカバリドライバ３３５は、“全て配線ＯＧＬを“Ｈ”にする。
トランジスタＭ２１、Ｍ２２がオンになる。容量素子Ｃ２１の電荷がノードＱ、ノードＳＮ２１に分配され、容量素子Ｃ２２の電荷がノードＱｂ、ノードＳＮ２２に分配され、ノードＱとノードＱｂとに電圧差が生じる。
【０１２８】
ｔ５で、パワースイッチ３１２、３１４をオンにして、パワードメイン３０２への電圧ＶＤＤＭ、ＶＳＳＭの入力を再開する。双安定回路２５はアクティブになると、ノードＱとノードＱｂの電圧差を増幅する。最終的にノードＱ、ＳＮ２１の電圧はＶＤＤＭとなり、ノードＱｂ、ＳＮ２２の電圧はＶＳＳＭとなる。つまり、ノードＱ／Ｑｂの状態は、ｔ１での状態（“Ｈ”／“Ｌ”）に復帰する。ｔ７でリカバリ動作が終了する。
【０１２９】
Ｌ１キャッシュメモリ装置２０２と、Ｌ２キャッシュメモリ装置２０３の構成は異なっていてもよい。例えば、Ｌ１キャッシュメモリ装置２０２にはＯＳＳＲＡＭを用い、Ｌ２キャッシュメモリ装置２０３にはＮＯＳＲＡＭを用いる。または、Ｌ１キャッシュメモリ装置２０２には、メモリセル１０で構成されるＮＯＳＲＡＭを用い、Ｌ２キャッシュメモリ装置２０３には、メモリセル１３で構成されるＮＯＳＲＡＭを用いる。この場合、Ｌ２キャッシュメモリ装置２０３において、メモリセルアレイは、周辺回路上に積層することが可能となるので、Ｌ２キャッシュメモリ装置２０３の面積を小さくでき、大容量化に有利である。メモリセル１０は読出しトランジスタがＳｉトランジスタであるので読み出し速度が速いため、Ｌ１キャッシュメモリ装置２０２に好適である。
【０１３０】
＜マルチコアＣＰＵ＞
複数のコアを有するマルチコアＣＰＵをプロセッサ１００に設けてもよい。図１０に、マルチコアＣＰＵの一例を示す。図１０に示すＣＰＵ１１１は、複数のＣＰＵコア２００、複数のＬ１キャッシュメモリ装置２０２、Ｌ２キャッシュメモリ装置２０３、バスインターフェース部２０５を有する。図示していないが、ＣＰＵ１１１は、ＣＰＵ１１０と同様のパワーゲーティング機構を備える。
【０１３１】
Ｌ１キャッシュメモリ装置２０２はＣＰＵコア２００ごとに設けられ、Ｌ２キャッシュメモリ装置２０３は、複数のＣＰＵコア２００で共有される。例えば、少なくとも１個のＣＰＵコア２００は、アーキテクチャが異なっていてもよい。
【０１３２】
＜＜メモリ装置１１４＞＞
メモリ装置１１４は、ＣＰＵ１１０および／又はＧＰＵ１１２がアクセス可能に設けられている。メモリ装置１１４は適宜取捨される。プロセッサ１００にメモリ装置１１４を設けることで、外部メモリ装置にアクセスする場合よりも、データ転送に要する時間およびエネルギーを低減できる。
【０１３３】
メモリ装置１１４には、ｏｘメモリ装置が適用される。例えば、上掲のＮＯＳＲＡＭ、ＯＳＳＲＡＭ、またはＤＯＳＲＡＭ（登録商標）を適用することができる。ＤＯＳＲＡＭとは、１Ｔ１Ｃ型のメモリセルを有するＲＡＭのことであり、Ｄｙｎａｍｉｃ  Ｏｘｉｄｅ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ  ＲＡＭの略称である。以下、図１１を参照して、ＤＯＳＲＡＭについて説明する。
【０１３４】
＜ＤＯＳＲＡＭ＞
図１１Ａに示すように、ＤＯＳＲＡＭ３５０のメモリセル１６は、ビット線ＢＬ（またはＢＬＢ）、ワード線ＷＬ、配線ＢＧＬ６、ＰＬに電気的に接続される。ビット線ＢＬＢは、反転ビット線である、例えば、配線ＢＧＬ６、ＰＬには、電圧ＶＢＧ６、ＶＳＳＳが入力される。トランジスタＭ６、および容量素子Ｃ６を有する。トランジスタＭ６はバックゲートを有するｏｘトランジスタである。
【０１３５】
容量素子Ｃ６の充放電によってデータを書き換えるため、ＤＯＳＲＡＭ３５０には原理的には書き換え回数に制約はなく、かつ、低エネルギーで、データの書き込みおよび読み出しが可能である。また、メモリセル１６の回路構成が単純であるため、大容量化が容易である。メモリセル１６の書込みトランジスタがｏｘトランジスタであるので、ＤＯＳＲＡＭ３５０の保持時間はＤＲＡＭに比べて非常に長い。したがってリフレッシュの頻度を低減できる、あるいは、リフレッシュ動作を不要にすることができるため、リフレッシュ動作に要する電力を削減できる。
【０１３６】
図１１Ｂに示すように、ＤＯＳＲＡＭ３５０において、メモリセルアレイ３６０は、周辺回路３６５上に積層することができる。これは、メモリセル１６のトランジスタＭ６がｏｘトランジスタであるからである。
【０１３７】
メモリセルアレイ３６０には、複数のメモリセル１６が行列状に配置され、メモリセル１６の配列に応じて、ビット線ＢＬ、ＢＬＢ、ワード線ＷＬ、配線ＢＧＬ６、ＰＬが設けられている。周辺回路３６５には、制御回路、行回路、列回路が設けられる。行回路は、アクセス対象のワード線ＷＬの選択等を行う。列回路は、ＢＬとＢＬＢとでなるビット線対に対して、データの書き込みおよび読出し等を行う。
【０１３８】
周辺回路３６５をパワーゲーティングするために、パワースイッチ３７１、３７２が設けられている。パワースイッチ３７１、３７２は、周辺回路３６５への電圧ＶＤＤＤ、ＶＤＨＷ６の入力をそれぞれ制御する。なお、電圧ＶＤＨＷ６はワード線ＷＬの高レベル電圧である。パワースイッチ３７１、３７２のオンオフは、信号ＰＳＥ６で制御される。例えば、信号ＰＳＥ６はＰＭＵ１１３で生成される。
【０１３９】
＜＜ＧＰＵ１１２＞＞
ＧＰＵ１１２は、多量の計算を並列に実行できる並列演算装置である。例えば、プロセッサ１００において、ＧＰＵ１１２は、ＣＰＵ１１０のアクセラレータまたはコプロセッサとして機能させることができる。
【０１４０】
図１２にＧＰＵ１１２の構成例を示す。ＧＰＵ１１２は、制御回路２６０、複数の演算ユニット（ＡＵ；Ａｒｉｔｈｍｅｔｉｃ  ｕｎｉｔ）２６１、複数のＬ１キャッシュメモリ装置２６３、Ｌ２キャッシュメモリ装置２６４、インターフェース部２６５を有する。なお、演算コア２６１の数は１でもよい。演算コア２６１毎にＬ１キャッシュメモリ装置２６３が設けられ、複数の演算コア２６１は、Ｌ２キャッシュメモリ装置２６４を共有する。例えば、キャッシュメモリ装置２６３、２６４は、上掲のＮＯＳＲＡＭで構成される。
【０１４１】
ＧＰＵ１１２はパワーゲーティングが可能である。制御回路２６０、キャッシュメモリ装置２６３、２６４、インターフェース部２６５それぞれは、少なくとも１つパワーゲーティング可能なパワードメインを有する。パワーゲーティング可能なパワードメインには、１または複数のパワースイッチが設けられている。これらのパワースイッチは、ＰＧ制御信号によって制御される。
【０１４２】
制御回路２６０は、ＧＰＵ１１２を統括的に制御する。例えば、制御回路２６０は、複数の演算コア２６１のスケジューリングを行う。
【０１４３】
ＧＰＵ１１２は、パワーゲーティングを制御するための信号ＳＬＥＥＰ３を生成し、ＰＭＵ１１３に出力する。ＰＭＵ１１３は、信号ＳＬＥＥＰ１、ＳＬＥＥＰ３、および外部割り込み信号に基づき、ＧＰＵ１１２のためのＰＧ制御信号、およびクロック信号ＧＣＬＫ３、ＧＣＬＫ４を生成する。クロック信号ＧＣＬＫ３、ＧＣＬＫ４はそれぞれ、デジタル回路用、アナログ回路用の信号である。なお、ＧＰＵ１１２は信号ＳＬＥＥＰ３を生成しない構成でもよいこの場合、ＣＰＵ１１０において、ＧＰＵ１１２の低消費電力状態を設定するための信号が生成され、ＰＭＵ１１３に出力される。
【０１４４】
＜演算ユニット＞
演算コア２６１には、複数の演算ユニットが設けられる。例えば、１または複数の積和演算（ＭＡＣ）ユニット２８０を備える。図１３に示すように、ＭＡＣユニット２８０は、ＭＡＣアレイ２８１〜２８３、ドライバ２８５〜２８７、出力回路２８９を有する。なお、ＭＡＣアレイの数は３に限定されない、１または複数のＭＡＣアレイがＭＡＣユニット２８０に設けられる。
【０１４５】
後述するように、ＭＡＣアレイ２８１〜２８３それぞれには、複数の乗算器が行列状に配置されている。ドライバ２８５は、データを書き込む乗算器を選択する機能をもつ。ドライバ２８６、２８７は、ＭＡＣアレイ２８１にアナログデータを書き込むためのデータドライバである。ドライバ２８６、２８７は、入力されるデジタルデータを一時的に保持するためのレジスタ、デジタルデータをアナログデータに変換するデジタル―アナログ変換器（ＤＡＣ）を有する。出力回路２８９は、ＭＡＣアレイ２８３から出力されるアナログデータをデジタルデータに変換するためのアナログ―デジタル変換器（ＡＤＣ）、デジタルデータを一時的に保持するレジスタを有する。ドライバ２８５、２８６ならびに出力回路２８９のレジスタには、ｏｘトランジスタで構成されるバックアップ回路が適宜設けられている。
【０１４６】
ＭＡＣアレイ２８１〜２８３は同様の回路構成である。ここでは、代表的に、参照して、ＭＡＣアレイ２８１の回路構成を説明する。図１４に示すようにＭＡＣアレイ２８１は、乗算器アレイ２９０、電流源２９２、差分部２９３、増幅部２９４を有する。
【０１４７】
乗算器アレイ２９０において、乗算器８０が行列状に設けられ、ゲート線ＧＬ、データ線ＲＸ、ＷＤ、ＲＤが乗算器８０の配列に応じて設けられている。乗算器８０は、トランジスタＭ７、Ｍ８、容量素子Ｃ７、ノードＳＮ７を有する。トランジスタＭ７、Ｍ８は、バックゲート付きのｏｘトランジスタ、ｎチャネル型Ｓｉトランジスタである。乗算器８０は２Ｔ型ゲインセルと同じ回路構成である。つまり、乗算器８０は、演算回路と、データを記憶する不揮発性ローカルメモリ回路双方の機能を持つ。よって、演算コア２６１がパワーオフ状態であっても、乗算器８０の保持データは消失しない。したがって、パワーオフ状態から通常動作状態に直ちに復帰する際に、乗算器８０へのデータの再書き込みは必要ない。つまり、パワーオフ状態から通常状態に復帰するために要する時間的およびエネルギーオーバヘッドが少ない。
【０１４８】
電流源２９２は、データ線ＲＤに電気的に接続された電流源回路８２を有する。電流源回路８２は参照電流Ｉｒｅｆを生成する。差分部２９３は、データ線ＲＤに電気的に接続された差分回路８３を有する。増幅部２９４は、データ線ＲＤに電気的に接続された増幅回路８４を有する。
【０１４９】
データ線ＷＤには、ドライバ２８７からアナログデータが入力される。ゲート線ＧＬはドライバ２８５によって駆動される。ゲート線ＧＬによって選択された乗算器８０には、データ線ＷＤに書き込まれたアナログデータが入力される。例えば、データｗ０が書き込まれることで、ノードＳＮ７の電圧はＶｗ０となる。データ線ＲＸには、ドライバ２８６からアナログデータが入力される。データ線ＲＤには、乗算器８０の演算結果が出力される。
【０１５０】
乗算器８０は、ノードＳＮ７の電圧とデータ線ＲＤの電圧との積に応じた電流を出力する。例えば、電流Ｉ０は電圧Ｖｗ０と電圧Ｖｘ０との積の関数ｆ（Ｖｗ０×Ｖｘ０）で表される。同様に、電流Ｉ１は関数ｆ（Ｖｗ１×Ｖｘ１）で表される。
【０１５１】
電流Ｉｏｕｔは、差分回路８３に入力される電流であり、参照電流Ｉｒｅｆと電流Ｉｍａｃとの差分である。例えば、データ線ＲＤあたりＮ個の乗算器８０が電気的に接続されている場合、電流Ｉｍａｃは、Ｎ個の乗算器８０を流れる電流の総和であり、保持データと入力データとの積和の値を表す。ＩｒｅｆとＩｍａｃとの差分ととることでＩｏｕｔのノイズ成分を低減できる。
【０１５２】
差分回路８３は、電流Ｉｏｕｔを電圧Ｖｏｕｔに変換し、参照電圧Ｖｒｅｆと電圧Ｖｏｕｔとの差分をとる。これにより、電圧Ｖｏｕｔのノイズ成分が低減される。増幅回路８４は、差分回路８３の出力電圧を増幅し、ＭＡＣアレイ２８２に出力する。ＭＡＣアレイ２８１の増幅部２９４から出力されるアナログデータは、ＭＡＣアレイ２８２のデータ線ＲＸに入力され、ＭＡＣアレイ２８２の増幅部２９４から出力されるアナログデータは、ＭＡＣアレイ２８３のデータ線ＲＸに入力される。
【０１５３】
ＧＰＵ１１２は、アナログ演算を利用した超並列計算が可能であり、人工知能（Ａ）の演算、科学技術計算に好適である。なお、人工知能の演算とは、例えば、機械学習、ニューラルネットワークなどのＡＩに関する数理モデルに基づく演算である。例えば、ＭＡＣユニット２８０は、全結合型ニューラルネットワーク（ＦＣＮＮ）回路として機能させることができる。なお、演算コア２６１には、構成が異なる複数のＭＡＣユニット２８０を設けてもよい。または、浮動小数点演算ユニットなどのデジタル演算ユニットを設けてもよい。
【０１５４】
市販のＧＰＵの演算コアはＣＭＯＳデジタル回路で構成され、演算コアとメモリとのデータ授受が演算効率のボトルネックとされている。これに対して、ＧＰＵ１１２ではこのような問題は生じにくい。乗算器８０は、乗算機能と、データの保持機能双方を備えるため、演算時にデータを読み込む必要がない場合がある。例えば、ＭＡＣユニット２８０でＡＩの演算処理を行わせる場合、乗算器８０に重み係数データを予め記憶させておくことで、乗算器８０では、重み係数データの授受の時間および電力ペナルティーは実質的に生じない。
【０１５５】
乗算器８０は、少ないトランジスタ数によって、アナログデータの掛け算を行うことができる。また、ＭＡＣアレイ２８１〜２８３の入力および出力データはアナログデータであるので、入出力データがデジタルデータである場合と比較し、ＭＡＣアレイ２８１〜２８３の配線数を大幅に低減することができる。よって、演算コア２６１は、ＣＭＯＳデジタル回路のみで構成される演算コアと比べて非常に少ないトランジスタ、配線によって、超並列演算が可能である。演算コア２６１のトランジスタ、配線の低減は、プロセッサ１００の小型化、並びに消費エネルギーおよび発熱の低減に有効である。
【０１５６】
例えば、市販ＧＰＵにおいて、動作周波数が３ＧＨｚ、乗算の並列処理数が１０３である場合、演算性能は３×１０１２ＯＰＳ（Ｏｐｅｒａｔｉｏｎｓ  Ｐｅｒ  Ｓｅｃｏｎｄ）＝３Ｔｅｒａ  ＯＰＳ（ＴＯＰＳ）である。ＧＰＵ１１２に１０６乃至１０８個程度のアナログ演算乗算器を設けることで、乗算の並列処理数を１０６乃至１０８とすることができる。この場合、動作周波数を３ＭＨｚ又は３０ＭＨｚに低下しても、ＧＰＵ１１２の演算性能は市販ＧＰＵと同程度である。動作周波数の低減は、プロセッサ１００の動的消費電力の削減に非常に有効である。
【０１５７】
市販ＧＰＵでは、演算性能の向上と、省電力化および発熱抑制との関係はトレードオフの関係である。これに対して、ｏｘトランジスタを用いたＧＰＵ１１２は、動作周波数を低減しても演算性能の劣化を少なくできる。ＡＩの演算処理のように超並列演算が必要になる場合、市販ＧＰＵは高い周波数で駆動され、大電力を消費し、高温なる。これに対して、ＧＰＵ１１２は、アナログ演算ユニットの動作周波数を低減することが可能であり、ＧＰＵ１１２の発熱が抑えられる。よって、プロセッサ１００の放熱機構は市販ＧＰＵのものよりも簡素にできる。
【０１５８】
以上述べたように、ｏｘトランジスタを用いることで、プロセッサ１００は、高効率の超並列演算処理、および高効率のパワーゲーティングが可能である。つまり、本実施の形態により、超並列処理が可能な低消費電力プロセッサを提供することができる。例えば、本実施の形態により、低消費電力なＡＩプロセッサチップの提供が可能になる。
【０１５９】
＜＜電子機器＞＞
プロセッサ１００は、ノーマリオフコンピューティングシステムに好適である。プロセッサ１００を組み込むことで、電子機器の消費電力を低減できる。図１５に、プロセッサ１００が組み込まれた電子機器の幾つかの例を示す。例えば、各電子機器において、プロセッサ１００はＡＩプロセッサとして機能させることができる。もちろん。プロセッサ１００の処理はＡＩの演算処理に限定されない、アプリケーションプロセッサとして用いることが可能である。
【０１６０】
図１５に示すロボット７１００は、演算装置、照度センサ、マイクロフォン、カメラ、スピーカ、ディスプレイ、各種センサ（赤外線センサ、超音波センサ、加速度センサ、ピエゾセンサ、光センサ、ジャイロセンサなど）、および移動機構などを備える。演算装置の少なくともプロセッサ１００を使用することができる。
【０１６１】
マイクロフォンは、使用者の音声および環境音などの音響信号を検知する機能を有する。また、スピーカは、音声および警告音などのオーディオ信号を発する機能を有する。ロボット７１００は、マイクロフォンを介して入力されたオーディオ信号をプロセッサ１００で解析し、必要なオーディオ信号をスピーカから発することができる。ロボット７１００は、マイクロフォン、演算装置、およびスピーカを用いて、使用者とコミュニケーションをとることが可能である。
【０１６２】
カメラは、ロボット７１００の周囲を撮像する機能を有する。また、ロボット７１００は、移動機構を用いて移動する機能を有する。ロボット７１００は、カメラを用いて周囲の画像を撮像し、ＡＩを用いて画像を解析して移動する際の障害物の有無などを察知することができる。
【０１６３】
図１５に示す飛行体７１２０は、演算装置、プロペラ、カメラ、およびバッテリなどを有し、自立して飛行する機能を有する。演算装置の少なくとも一部にプロセッサ１００を使用することができる。
【０１６４】
例えば、飛行体７１２０は、カメラを用いて周囲の画像を撮像し、プロセッサ１００を用いて画像を解析し、移動する際の障害物の有無などを察知することができる。また、ＡＩによってバッテリの蓄電容量の変化から、バッテリ残量を推定することができる。
【０１６５】
図１５に示す掃除ロボット７１４０は、演算装置、上面に配置されたディスプレイ、側面に配置された複数のカメラ、ブラシ、操作ボタン、各種センサなどを有する。演算装置の少なくとも一部にプロセッサ１００を使用することができる。図示されていないが、掃除ロボット７３００には、タイヤ、吸い込み口等が備えられている。掃除ロボット７３００は自走し、ゴミを検知し、下面に設けられた吸い込み口からゴミを吸引することができる。
【０１６６】
例えば、掃除ロボット７１４０はカメラが撮影したプロセッサ１００で解析し、壁、家具または段差などの障害物の有無を判断することができる。また、画像解析により、配線などブラシに絡まりそうな物体を検知した場合は、ブラシの回転を止めることができる。
【０１６７】
掃除ロボット７１４０は、プロセッサ１００を用いて、バッテリの残量や吸引したゴミの量などから動作可能な残り時間などを推測することができる。また、掃除ロボット７１４０は、走行を繰り返すことで走行の軌跡を学習し、効率の良い走行経路を導き出すことができる。
【０１６８】
図１５に示す自動車７１６０は、エンジン、タイヤ、ブレーキ、操舵装置などの他に、演算装置、各種センサなどを有する。演算装置の少なくとも一部にプロセッサ１００を使用することができる。例えば、プロセッサ１００は、ナビゲーション情報、速度、エンジンの状態、ギアの選択状態、ブレーキの使用頻度などの情報を用いて学習することで、自動車７１６０の走行状態を最適化するための制御を行う。
【０１６９】
自動車７１６０に進行方向を撮影するカメラを設け、撮影した画像をプロセッサ１００で解析して障害物の有無を判断し、安全性を高めることができる。
【０１７０】
図１５に示すように、プロセッサ１００は、ＴＶ（テレビジョン受像）装置７２００、スマートフォン７２１０、ＰＣ（パーソナルコンピュータ）７２２０、７２３０、ゲーム機７２４０、７２６０等に組み込むことができる。
【０１７１】
例えば、ＴＶ装置７２００に内蔵されたプロセッサ１００は、ＡＩのアルゴリズムを利用した画像エンジンとして機能させることができる。プロセッサ１００は、ノイズ除去、解像度アップコンバージョンなどの画像処理を行う。
【０１７２】
例えば、図１５に示すスマートフォン７２１０は、携帯情報端末の一例である。スマートフォン７２１０は、マイクロフォン、カメラ、スピーカ、各種センサ、および表示部を有する。
【０１７３】
プロセッサ１００において、各種のＡＩの演算を行うことができる。例えば、スマートフォン７２１０の使用頻度、使用方法などを基に学習し、バッテリ残量などを推定する。また、使用者の使用方法などを学習して使用者の動作を予測し、使い易さを高めることができる。プロセッサ１００は、マイクロフォンで取得した音声データを処理して、音声認識、翻訳などを行う。また、タブレット型情報端末にプロセッサ１００を組み、プロセッサ１００に同様の処理を行わせることができる。
【０１７４】
ＰＣ７２２０、７２３０はそれぞれノート型ＰＣ、据え置き型ＰＣの例である。ＰＣ７２３０には、キーボード７２３２、およびモニタ装置７２３３が無線又は有線により接続可能である。
【０１７５】
ゲーム機７２４０は携帯型ゲーム機の例である。ゲーム機７２６０は据え置き型ゲーム機の例である。ゲーム機７２６０には、無線または有線でコントローラ７２６２が接続されている。コントローラ７２６２にプロセッサ１００を組み込むこともできる。コントローラ７２６２をＰＣ７２３０に接続して、ＰＣ７２３０をゲーミングＰＣとして用いることができる。ゲーム機７２４０にプロセッサ１００が組み込まれているので、例えば、ＡＩを用いることで、ユーザを楽しませるようにゲームを展開させることが可能である。ゲーム機７２６０についても同様である。
【０１７６】
物体認識、音声認識、翻訳など、ＡＩが成果を上げている分野が広がっている。例えば、スマートフォンで音声認識を行う場合、通常、スマートフォンは音声データを取得するだけで、ＡＩを用いた音声認識処理はクラウド側のコンピューティングシステムが行う。つまり、クラウド側のコンピューティングシステムの処理が終わらないと、スマートフォンでの処理を行えない。よって、プロセッサ１００を組み込むことで、スマートフォンにおいて、ＡＩによって音声データをリアルタイムで処理することが可能になる。このように、プロセッサ１００は、エッジコンピューティングの発展に寄与することができる。
【０１７７】
また、多数のプロセッサ１００を用いて、大型並列計算機、スーパーコンピュータ、およびサーバなど大規模な並列演算を行うコンピューティングシステムを構築することができる。プロセッサ１００は低消費電力であり、発熱が少ないため、コンピューティングシステムの冷却設備の電力を削減することができる。
【符号の説明】
【０１７８】
１０、１２、１３、１６：メモリセル、
２０：セル、  ２１：メモリセル、  ２２：バックアップ回路、  ２５：双安定回路、
８０：乗算器、  ８２：電流源回路、  ８３：差分回路、  ８４：増幅回路、
１００：プロセッサ、  １１０、  １１１：ＣＰＵ、  １１２：ＧＰＵ、  １１３：ＰＭＵ、  １１５：バス、  １１６：インターフェース部、  １２１：メモリ制御部、  １２２：オーディオ処理部、  １２３：ビデオ処理部、  １２４：ディスプレイ制御部、
２００：ＣＰＵコア、  ２０２：Ｌ１キャッシュメモリ装置、  ２０３：Ｌ２キャッシュメモリ装置、  ２０５：バスインターフェース部、  ２１０、２１１、２１２：パワースイッチ、  ２１４：レベルシフタ、  ２２０：フリップフロップ、  ２２１：スキャンフリップフロップ、  ２２１Ａ：クロックバッファ回路、  ２２２：バックアップ回路、
２４０：ＮＯＳＲＡＭ、  ２４２、２４３：パワードメイン、  ２４５、２４６、２４７：パワースイッチ、  ２５０：メモリセルアレイ、  ２５１：制御回路、  ２５２：行回路、  ２５３：列回路、
２６０：制御回路、  ２６１：演算コア、  ２６３：Ｌ１キャッシュメモリ装置、  ２６４：Ｌ２キャッシュメモリ装置、  ２６５：インターフェース部、  ２８０：ＭＡＣ（積和演算）ユニット、  ２８１、２８２、２８３：ＭＡＣアレイ、  ２８５、２８６、２８７：ドライバ、  ２８９：出力回路、  ２９０：乗算器アレイ、  ２９２：電流源、  ２９３：差分部、  ２９４：増幅部、
３００：ＯＳＳＲＡＭ、  ３０１、３０２、３０３：パワードメイン、３１０、３１１、３１２、３１３、３１４：パワースイッチ、    
３２０：メモリセルアレイ、  ３３０：パワーゲーティング制御回路、  ３３１：制御回路、  ３３２：行回路、  ３３３：列回路、  ３３５：バックアップ及びリカバリドライバ、
３５０：ＤＯＳＲＡＭ、  ３６０：メモリセルアレイ、  ３６５：周辺回路、  ３７１、：パワースイッチ、    
３７２：パワースイッチ、
７１００：ロボット、  ７１２０：飛行体、  ７１４０：掃除ロボット、  ７１６０：自動車、  ７２００：ＴＶ装置、  ７２１０：スマートフォン、  ７２２０、７２３０：ＰＣ、  ７２３２：キーボード、  ７２３３：モニタ装置、  ７２４０、７２６０：ゲーム機、  ７２６２：コントローラ
【図１】
2019046199.tif 000003
【図２】
2019046199.tif 000004
【図３】
2019046199.tif 000005
【図４】
2019046199.tif 000006
【図５】
2019046199.tif 000007
【図６】
2019046199.tif 000008
【図７】
2019046199.tif 000009
【図８】
2019046199.tif 000010
【図９】
2019046199.tif 000011
【図１０】
2019046199.tif 000012
【図１１】
2019046199.tif 000013
【図１２】
2019046199.tif 000014
【図１３】
2019046199.tif 000015
【図１４】
2019046199.tif 000016
【図１５】
2019046199.tif 000017