(57)【要約】【課題】アプリケーションの処理速度を高めることができ、低消費電力化を実現することができる、ＰＬＤを用いた半導体装置。【解決手段】プログラマブルロジックデバイスと、動的な再構成が行われないプロセッサとを有し、プログラマブルロジックデバイスのメモリエレメントには、スレッドに対応したコンフィギュレーションデータのうち、メモリモジュールにより使用頻度が高いと判断されたコンフィギュレーションデータが複数格納され、上記メモリエレメントは、記憶素子と、格納された複数の上記コンフィギュレーションデータによって定められた量の電荷を上記記憶素子に供給、保持、放出するためのスイッチとを、複数のメモリセルにそれぞれ有する半導体装置。【選択図】図１
2013251889.tif 000002
【特許請求の範囲】
【請求項１】
複数のアプリケーションプログラム、及び複数の前記アプリケーションプログラムにそれぞれ関連づけられた複数のコンフィギュレーションデータが記憶された記憶装置と、
複数の前記アプリケーションプログラムがそれぞれ有する第１スレッドを実行する機能を有するプロセッサと、プログラマブルロジックデバイスと、を有し、
前記プログラマブルロジックデバイスは、メモリモジュールと、複数の前記コンフィギュレーションデータのうち、前記メモリモジュールにより選択された複数のコンフィギュレーションデータを格納できるメモリエレメントと、前記メモリエレメントに格納された複数の前記コンフィギュレーションデータに従って論理回路の定義が行われ、なおかつ、前記複数の前記アプリケーションプログラムがそれぞれ有する第２スレッドを前記論理回路おいて実行する複数のロジックエレメントと、を有し、
前記メモリモジュールは、前記ロジックエレメントにおいて前記論理回路の定義が行われるのに用いられた回数を、前記コンフィギュレーションデータごとにカウントする機能と、前記回数のデータを用いて、複数の前記コンフィギュレーションデータの選択を行う機能と、を有し、
前記メモリエレメントは、記憶素子と、格納された複数の前記コンフィギュレーションデータによって定められた量の電荷を前記記憶素子に供給、保持、放出するためのスイッチとを、複数のメモリセルにそれぞれ有する半導体装置。
【請求項２】
複数のアプリケーションプログラム、及び複数の前記アプリケーションプログラムにそれぞれ関連づけられた複数のコンフィギュレーションデータが記憶された記憶装置と、
複数の前記アプリケーションプログラムがそれぞれ有する第１スレッドを実行する機能を有するプロセッサと、プログラマブルロジックデバイスと、を有し、
前記プログラマブルロジックデバイスは、メモリモジュールと、複数の前記コンフィギュレーションデータのうち、前記メモリモジュールにより選択された複数のコンフィギュレーションデータを格納できるメモリエレメントと、前記メモリエレメントに格納された複数の前記コンフィギュレーションデータに従って論理回路の定義が行われ、なおかつ、前記複数の前記アプリケーションプログラムがそれぞれ有する第２スレッドを前記論理回路おいて実行する複数のロジックエレメントと、を有し、
前記メモリモジュールは、前記ロジックエレメントにおいて前記論理回路の定義が行われた時間のデータを取得する機能と、前記データを用いて、複数の前記コンフィギュレーションデータの選択を行う機能と、を有し、
前記メモリエレメントは、記憶素子と、格納された複数の前記コンフィギュレーションデータによって定められた量の電荷を前記記憶素子に供給、保持、放出するためのスイッチとを、複数のメモリセルにそれぞれ有する半導体装置。
【請求項３】
請求項１または請求項２において、
前記記憶素子は、トランジスタまたは容量素子である半導体装置。
【請求項４】
請求項１乃至請求項３のいずれか１項において、
前記スイッチは、チャネル形成領域に酸化物半導体を含むトランジスタを有する半導体装置。
【請求項５】
請求項４において、
前記酸化物半導体は、Ｉｎ、Ｇａ、及びＺｎを含む半導体装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ハードウェアの構成を変更することができるプログラマブルロジックデバイスを有する、半導体装置に関する。
【背景技術】
【０００２】
ＰＤＡやスマートフォンなどのモバイル情報端末は、小型化、軽量化に対するユーザーニーズが強いため、筐体内の限られた容積の中に内蔵できるハードウェアの規模に限りがある。しかし、動画の再生、オンラインゲーム、音声認識、小型カメラによる画像の取り込みなど、モバイル情報端末には多くの機能が要求されているため、上記ハードウェアを用いて複数のアプリケーションプログラム（以下、アプリケーションと呼ぶ）を実行する必要がある。実行するアプリケーションの数が多いほど、また、ハードウェアの規模が小さいほど、緩衝記憶装置に十分な記憶領域を確保することができなくなるため、データの転送速度が律速となり、スレッドの実行、延いてはアプリケーションの実行に要する時間を、短縮化することが困難になる。
【０００３】
そこで、一つの解決策として、ハードウェアの一部をプログラマブルロジックデバイス（ＰＬＤ：Ｐｒｏｇｒａｍｍａｂｌｅ  Ｌｏｇｉｃ  Ｄｅｖｉｃｅ）とし、アプリケーションで実行される複数のスレッドの一部を、上記ＰＬＤにてハードウェア的に実行する技術が提案されている。ＰＬＤは、適当な規模のロジックエレメント（基本ブロック）の機能や、ロジックエレメント間の接続構造を、製造後において変更することで、所望の論理回路を構成できることを特徴とする。上記技術を用いることで、アプリケーションで実行されるスレッドの数を減らし、ハードウェアの規模に限りがある場合においても、アプリケーションの処理速度を高めることが可能となる。
【０００４】
下記の特許文献１では、同一の処理を実現する複数のハードウェアモジュールを蓄積手段に格納し、部分的書き換えを行うときに、プログラマブル論理回路の構成可能領域に適合するハードウェアモジュールを優先的に使用することで、処理時間を短縮化する、情報処理システムについて記載されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０００−２５２８１４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ＰＬＤは、各ロジックエレメントの機能やロジックエレメント間の接続構造についてのデータ（コンフィギュレーションデータ）を格納するための記憶装置（メモリエレメント）を、有する。そして、ＰＬＤを一部に有するハードウェアでは、アプリケーションで使用するＰＬＤのコンフィギュレーションデータを、アプリケーションの実行の際に、アプリケーションと共に、メインメモリ、キャッシュ、または外部記憶装置などから、上記メモリエレメントに転送する必要がある。
【０００７】
コンフィギュレーションデータの転送は、ハードウェアが有する、動的な再構成が行われずに回路構成が固定であるプロセッサによって実行されるか、ＤＭＡＣ（Ｄｉｒｅｃｔ  Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌｌｅｒ）により実行される。しかし、プロセッサによりコンフィギュレーションデータを転送する場合、プロセッサにおいて実行される各種の処理を中断せざるを得ない。また、ＤＭＡＣによりコンフィギュレーションデータを転送する場合も、プロセッサの処理に必要な他のデータの転送に対して割り込みを行うことになるので、プロセッサの処理が遅延する。
【０００８】
また、メモリエレメントには、ＳＲＡＭ、ＤＲＡＭ、ＥＥＰＲＯＭなどの記憶装置が一般的に用いられている。しかし、ＳＲＡＭは、トランジスタのオフ電流により、動作時のみならず非動作時にも少なからず電力が消費され、ＤＲＡＭはリフレッシュにより電力が消費されるため、メモリエレメントにおける消費電力を小さく抑えることが難しい。そして、ＳＲＡＭやＤＲＡＭは電源電圧が途絶えるとデータが保持できないため、例えばノーマリオフコンピューティングのような低消費電力化を目的とした駆動には対応できない。また、ＥＥＰＲＯＭは不揮発性であるが、データの書き込み速度が遅いためにＰＬＤのコンフィギュレーションに要する時間を短縮化することが難しく、そのことが、アプリケーションの高速処理を阻む一因となる。
【０００９】
上述したような技術的背景のもと、本発明の一態様は、アプリケーションの処理速度を高めることができる、ＰＬＤを用いた半導体装置の提供を、課題の一つとする。また、本発明の一態様は、アプリケーションの処理速度を高めることができ、低消費電力化を実現することができる、ＰＬＤを用いた半導体装置の提供を、課題の一つとする。
【課題を解決するための手段】
【００１０】
本発明の一態様では、メモリエレメントにおいて、各メモリセルが、記憶素子と、上記記憶素子にコンフィギュレーションデータによって定められた量の電荷を、供給、保持、放出するためのスイッチとを有することを特徴とする。さらに、本発明の一態様では、オフ電流の小さいトランジスタで、上記スイッチを構成する。上記トランジスタは、シリコンよりもバンドギャップが広く、真性キャリア密度がシリコンよりも低い半導体を、チャネル形成領域に含んでいる。このような半導体としては、例えば、シリコンの２倍以上の大きなバンドギャップを有する、酸化物半導体、炭化シリコン、窒化ガリウム、酸化ガリウムなどが挙げられる。上記半導体を有するトランジスタは、通常のシリコンやゲルマニウムなどの半導体で形成されたトランジスタに比べて、オフ電流を極めて小さくすることができる。よって、上記構成を有するトランジスタを、記憶素子に流入した電荷を保持するためのスイッチとして用いることで、記憶素子からの電荷のリークを防ぐことができる。
【００１１】
よって、上記構成を有するメモリエレメントは、ＳＲＡＭのようにトランジスタのオフ電流により電力が消費されることがなく、ＤＲＡＭよりもリフレッシュの頻度を削減することで、リフレッシュによる消費電力を大幅に削減することができる。また、データの書き込みに要する時間をＥＥＰＲＯＭよりも短くすることができるので、ＰＬＤのコンフィギュレーションに要する時間を短縮化し、アプリケーションの高速処理を実現することができる。
【００１２】
また、本発明の一態様に係る半導体装置は、プログラマブルロジックデバイス（ＰＬＤ）に加えて、動的な再構成（リコンフィギュレーション）が行われないプロセッサを有する。そして、アプリケーションが有する複数のスレッドのうち、少なくとも一つのスレッドをＰＬＤで構成された論理回路において実行し、残りのスレッドを、プロセッサを用いて実行するものとする。
【００１３】
そして、本発明の一態様では、メモリエレメントが複数のコンフィギュレーションデータを格納することができる記憶領域を有し、当該記憶領域へのコンフィギュレーションデータの書き込みは、ＰＬＤが有するメモリモジュールにより管理される。具体的に、メモリモジュールは、メモリエレメントに格納されたコンフィギュレーションデータの識別を行う機能と、識別されたコンフィギュレーションデータごとに、当該コンフィギュレーションデータがロジックエレメントに書き込まれた回数をカウントする機能とを、有する。また、ＰＬＤは、コンフィギュレーションデータの識別子と、識別子ごとにカウントされた書き込み回数とを記憶するための記憶装置を有する。
【００１４】
上記構成を有するメモリモジュールにより、ロジックエレメントに書き込まれた回数が多いコンフィギュレーションデータを、優先的にメモリエレメントに記憶させることができる。よって、本発明の一態様では、使用頻度が高いと見込まれるコンフィギュレーションデータをメモリエレメントに格納させておくことで、使用頻度の高いアプリケーションの実行に要する時間を短くすることができる。また、メインメモリ、緩衝記憶装置、外部記憶装置などからメモリエレメントに転送するデータ量を抑えることができ、それにより、複数のアプリケーションを実行させても、データ転送が律速となってプロセッサの処理が遅延するのを、防ぐことができる。
【００１５】
具体的に、本発明の一態様に係る半導体装置は、複数のアプリケーションプログラム、及び複数の上記アプリケーションプログラムにそれぞれ関連づけられた複数のコンフィギュレーションデータが記憶された記憶装置と、複数の上記アプリケーションプログラムがそれぞれ有する第１スレッドを実行する機能を有するプロセッサと、プログラマブルロジックデバイスと、を有し、上記プログラマブルロジックデバイスは、メモリモジュールと、複数の上記コンフィギュレーションデータのうち、上記メモリモジュールにより選択された複数のコンフィギュレーションデータを格納できるメモリエレメントと、上記メモリエレメントに格納された複数の上記コンフィギュレーションデータに従って論理回路の定義が行われ、なおかつ、上記複数の上記アプリケーションプログラムがそれぞれ有する第２スレッドを上記論理回路おいて実行する複数のロジックエレメントと、を有し、上記メモリモジュールは、上記ロジックエレメントにおいて上記論理回路の定義が行われるのに用いられた回数を、上記コンフィギュレーションデータごとにカウントする機能と、上記回数を用いて、複数の上記コンフィギュレーションデータの選択を行う機能と、を有し、上記メモリエレメントは、記憶素子と、格納された複数の上記コンフィギュレーションデータによって定められた量の電荷を上記記憶素子に供給、保持、放出するためのスイッチとを、複数のメモリセルにそれぞれ有する。
【発明の効果】
【００１６】
本発明の一態様により、アプリケーションの処理速度を高めることができる、ＰＬＤを用いた半導体装置を提供することができる。また、本発明の一態様により、アプリケーションの処理速度を高めることができ、低消費電力化を実現することができる、ＰＬＤを用いた半導体装置を提供することができる。
【図面の簡単な説明】
【００１７】
【図１】半導体装置の構成を示す図。
【図２】半導体装置の動作を示すフローチャート。
【図３】メモリモジュールの構成を示す図。
【図４】記憶装置のデータ構造を示す図。
【図５】複数のスレッドと、プロセッサまたはＰＬＤとの関係を模式的に示す図。
【図６】メモリセルの構造と、トランジスタの構造を示す図。
【図７】メモリセルの回路図。
【図８】メモリエレメントの構成を示すブロック図。
【図９】メモリセル、センスアンプ、プリチャージ回路、スイッチ回路、及びメインアンプの接続構造を示す図。
【図１０】プロセッサの構成を示す図。
【図１１】ロジックエレメントの構成を示す図。
【図１２】ルックアップテーブルの回路図。
【図１３】ロジックアレイとスイッチの構成を示す図。
【図１４】電子機器の図。
【発明を実施するための形態】
【００１８】
以下では、本発明の実施の形態について図面を用いて詳細に説明する。ただし、本発明は以下の説明に限定されず、本発明の趣旨及びその範囲から逸脱することなくその形態及び詳細を様々に変更し得ることは、当業者であれば容易に理解される。したがって、本発明は、以下に示す実施の形態の記載内容に限定して解釈されるものではない。
【００１９】
なお、本発明の半導体装置は、マイクロプロセッサ、画像処理回路、半導体表示装置用のコントローラ、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）、マイクロコントローラなどの、半導体素子を用いた各種半導体集積回路をその範疇に含む。また、本発明の半導体装置は、上記半導体集積回路を用いたＲＦタグ、半導体表示装置などの各種装置も、その範疇に含む。半導体表示装置には、液晶表示装置、有機発光素子（ＯＬＥＤ）に代表される発光素子を各画素に備えた発光装置、電子ペーパー、ＤＭＤ（Ｄｉｇｉｔａｌ  Ｍｉｃｒｏｍｉｒｒｏｒ  Ｄｅｖｉｃｅ）、ＰＤＰ（Ｐｌａｓｍａ  Ｄｉｓｐｌａｙ  Ｐａｎｅｌ）、ＦＥＤ（Ｆｉｅｌｄ  Ｅｍｉｓｓｉｏｎ  Ｄｉｓｐｌａｙ）等や、半導体素子を駆動回路に有しているその他の半導体表示装置が、その範疇に含まれる。
【００２０】
（実施の形態１）
図１に、本発明の一態様に係る半導体装置１００の構成を、ブロック図で例示する。なお、本明細書のブロック図では、回路を機能ごとに分類し、互いに独立したブロックとして示しているが、実際の回路は機能ごとに完全に切り分けることが難しく、一つの回路が複数の機能に係わることもあり得る。
【００２１】
図１に示す半導体装置１００は、プロセッサ１０１と、ＰＬＤ１０２と、記憶装置１０３とを有する。プロセッサ１０１は、その回路構成が固定されており、動的な再構成は行われない。ＰＬＤ１０２は、その回路構成が固定されておらず、動的な再構成が行われうる。
【００２２】
また、記憶装置１０３は、不揮発性であり、プロセッサ１０１で実行される複数のアプリケーション１０４と、複数のアプリケーション１０４にそれぞれ関連づけられた、複数のコンフィギュレーションデータ１０５とが記憶されている。記憶装置１０３として、例えばフラッシュメモリ、ハードディスクなどの外部記憶装置（補助記憶装置とも呼ばれる）を用いることができる。
【００２３】
プロセッサ１０１は、記憶装置１０３に記憶されているアプリケーション１０４を読み込み、当該アプリケーション１０４を実行する。具体的に、アプリケーション１０４には単数または複数のスレッドが含まれており、プロセッサ１０１は、上記スレッドに含まれる命令をデコードして実行することで、アプリケーション１０４を実行する。そして、プロセッサ１０１は、アプリケーション１０４に含まれる単数または複数のスレッドのうち、いずれか一つまたは複数のスレッドの実行を、ＰＬＤ１０２に要求することができる。
【００２４】
ＰＬＤ１０２は、複数のＬＥ（ロジックエレメント）１０６を有するロジックアレイ１０７と、メモリエレメント１０８と、メモリモジュール１０９とを有する。メモリエレメント１０８は、記憶装置１０３に記憶されている複数のコンフィギュレーションデータ１０５のうち、メモリモジュール１０９により選択された複数のコンフィギュレーションデータ１０５を、格納することができる。
【００２５】
ロジックアレイ１０７が有する各ＬＥ１０６は、メモリエレメント１０８に格納されたコンフィギュレーションデータ１０５に従って、論理回路の定義が行われる論理素子である。すなわち、各ＬＥ１０６は、コンフィギュレーションデータ１０５に従って、実行される論理演算、すなわち入力値に対する出力値の組み合わせが定義される論理素子であるといえる。コンフィギュレーションデータ１０５により、各ＬＥ１０６で行われる論理演算が定義されることで、ロジックアレイ１０７において構成される論理回路の定義（コンフィギュレーションとも呼ばれる）がなされる。
【００２６】
ＰＬＤ１０２にプロセッサ１０１からスレッドの実行が要求されると、ロジックアレイ１０７では、メモリエレメント１０８に格納されている、当該スレッドに対応したコンフィギュレーションデータ１０５に従って、論理回路の定義が行われる。スレッドに対応したコンフィギュレーションデータ１０５がメモリエレメント１０８に格納されていない場合、ＤＭＡ転送を用いて、或いはプロセッサ１０１を介して、記憶装置１０３からコンフィギュレーションデータ１０５をメモリエレメント１０８に転送しておく。なお、メインメモリや緩衝記憶装置などのプロセッサ１０１が有する記憶装置に、スレッドに対応したコンフィギュレーションデータ１０５が格納されている場合、プロセッサ１０１が有する上記記憶装置から、コンフィギュレーションデータ１０５をメモリエレメント１０８に転送しておく。プロセッサ１０１は、ＰＬＤ１０２において当該スレッドが実行されることで得られたデータを用い、アプリケーション１０４の実行を行うことができる。
【００２７】
メモリモジュール１０９は、メモリエレメント１０８が有する記憶領域への、コンフィギュレーションデータ１０５の書き込みを管理する機能を有する。具体的に、メモリモジュール１０９は、メモリエレメント１０８に格納されたコンフィギュレーションデータ１０５の識別を行う機能と、識別されたコンフィギュレーションデータ１０５ごとに、当該コンフィギュレーションデータ１０５がロジックアレイ１０７に書き込まれた回数をカウントする機能とを、有する。
【００２８】
コンフィギュレーションデータ１０５の識別は、コンフィギュレーションデータ１０５に含まれる識別子を用いて行うことができる。そして、ＰＬＤ１０２は、コンフィギュレーションデータ１０５の識別子と、識別子ごとに調べたコンフィギュレーションデータ１０５の使用状況に関する情報とを、管理情報として記憶する機能を有する。使用状況に関する情報として、例えば、カウントされた書き込み回数、最後にロジックアレイ１０７に書き込まれた時間などのデータを用いることができる。さらに、コンフィギュレーションデータのデータ量などを、管理情報として用いても良い。
【００２９】
例えば、ロジックアレイ１０７に書き込まれた回数が多いコンフィギュレーションデータ１０５は、使用頻度が高いと見込まれるため、次にロジックアレイ１０７に書き込まれるまでの期間が短いと予測される。そこで、本発明の一態様では、上記構成を有するメモリモジュール１０９により、使用頻度が高いと見込まれるコンフィギュレーションデータ１０５を、優先的にメモリエレメント１０８に記憶させる。使用頻度が高いと見込まれるコンフィギュレーションデータ１０５をメモリエレメント１０８に格納させておくことで、使用頻度の高いアプリケーション１０４の実行に要する時間を短くすることができる。また、記憶装置１０３から、ＤＭＡ転送を用いて、或いはプロセッサ１０１を介して、メモリエレメント１０８に転送するコンフィギュレーションデータ１０５のデータ量を、抑えることができる。それにより、複数のアプリケーション１０４を実行させても、データ転送が律速となってプロセッサ１０１の処理が遅延するのを、防ぐことができる。
【００３０】
次いで、図１に示したメモリモジュール１０９の具体的な構成を、図３にブロック図として例示する。図３に示すメモリモジュール１０９は、カウンタ１１０と、記憶装置１１１と、ＤＭＡＣ１１２とを有する。カウンタ１１０は、コンフィギュレーションデータ１０５がロジックアレイ１０７に書き込まれた回数を、コンフィギュレーションデータ１０５の識別子ごとにカウントする機能を有する。記憶装置１１１は、コンフィギュレーションデータ１０５の識別子と、識別子ごとにカウントされたロジックアレイ１０７への書き込み回数とを含む管理情報を、記憶する機能を有する。上述したように、最後にロジックアレイ１０７に書き込まれた時間や、コンフィギュレーションデータのデータ量などが、管理情報として記憶装置１１１に記憶させることも可能である。なお、最後にロジックアレイ１０７に書き込まれた時間を管理情報として取得する場合、プロセッサ１０１において時間を計測し、その時間のデータをメモリモジュール１０９の記憶装置１１１に記憶させておけば良い。
【００３１】
次いで、図２に示すフローチャートを用いて、ＰＬＤ１０２にプロセッサ１０１からスレッドの実行が要求されてから、当該スレッドの実行が終了するまでの、ＰＬＤ１０２の動作例について説明する。
【００３２】
図２に示すフローチャートでは、まず、プロセッサ１０１からＰＬＤ１０２に、スレッドＡの実行を要求する命令が送られる（Ａ０１：スレッドＡ実行の要求）。ＰＬＤ１０２では、メモリモジュール１０９が、スレッドＡに関連づけられたコンフィギュレーションデータＡの識別子と、コンフィギュレーションデータＡの使用状況のデータとを含む管理情報Ａを有するか否かが、判断される（Ａ０２：メモリモジュール１０９が管理情報Ａを有する）。
【００３３】
メモリモジュール１０９が管理情報Ａを有する場合、過去にコンフィギュレーションデータＡが少なくとも一回はメモリエレメント１０８に書き込まれたことがある、ということを意味する。この場合、ＰＬＤ１０２では、メモリエレメント１０８に、コンフィギュレーションデータＡが格納されているか否かが、判断される（Ａ０３：メモリエレメント１０８にコンフィギュレーションデータＡが格納されている）。
【００３４】
メモリエレメント１０８に、コンフィギュレーションデータＡが格納されている場合、当該コンフィギュレーションデータＡに従って、ロジックアレイ１０７において構成される論理回路の定義がなされる（Ａ０４：コンフィギュレーションＡの実行）。
【００３５】
一方、メモリモジュール１０９が管理情報Ａを有さない場合、過去にコンフィギュレーションデータＡがメモリエレメント１０８に書き込まれたことがない、ということを意味する。この場合、メモリモジュール１０９に格納されている管理情報に、管理情報Ａを追加する（Ａ０５：メモリモジュール１０９への管理情報Ａの追加）。そして、管理情報Ａがメモリモジュール１０９に追加されたら、メモリエレメント１０８に、コンフィギュレーションデータＡが格納できるだけの、空いている記憶領域があるか否かが、メモリモジュール１０９において判断される（Ａ０６：メモリエレメント１０８に空いている記憶領域がある）。
【００３６】
空いている記憶領域がある場合、コンフィギュレーションデータＡをメモリエレメント１０８に格納する（Ａ０７：コンフィギュレーションデータＡのメモリエレメント１０８への格納）。
【００３７】
空いている記憶領域がない場合、メモリモジュール１０９は、格納されている全ての管理情報を用いて、既にメモリエレメント１０８に格納されているコンフィギュレーションデータのうち、ロジックアレイ１０７に書き込まれた回数が少ない、すなわち上記回数の多さで並べたときの順位が下位であるコンフィギュレーションデータＢを、選択する。そして、メモリエレメント１０８において、下位のコンフィギュレーションデータＢが格納されている記憶領域を特定する（Ａ０８：下位のコンフィギュレーションデータＢの記憶領域の特定）。
【００３８】
なお、使用頻度が低いと見込まれるコンフィギュレーションデータＢの選択に、いずれの管理情報を用いるか、そして管理情報をどのように用いるのかは、設計者が適宜選ぶことができる。例えば、ロジックアレイ１０７への書き込み回数が少ないコンフィギュレーションデータほど、そして、ロジックアレイ１０７に書き込まれた時間が古いコンフィギュレーションデータほど、使用頻度が低いと見込まれるため、次にロジックアレイ１０７に書き込まれるまでの期間が長いと予測される。よって、ロジックアレイ１０７への書き込み回数が最も少ないコンフィギュレーションデータを、コンフィギュレーションデータＢとして選択することができる。或いは、最後にロジックアレイ１０７に書き込まれた時間が最も古いコンフィギュレーションデータを、コンフィギュレーションデータＢとして選択することができる。或いは、ロジックアレイ１０７への書き込み回数が上位Ｍ番以降（Ｍは、２以上の自然数）であり、なおかつ最後にロジックアレイ１０７に書き込まれた時間が最も古いコンフィギュレーションデータを、コンフィギュレーションデータＢとして選択することができる。
【００３９】
なお、データ量が小さいコンフィギュレーションデータであれば、再度メモリエレメント１０８に転送する必要が生じても、転送するデータ量を抑えることができる。よって、ロジックアレイ１０７への書き込み回数が上位Ｍ番以降であり、なおかつデータ量が最も小さいコンフィギュレーションデータを、コンフィギュレーションデータＢとして選択することで、転送するデータ量を抑えることができる。
【００４０】
下位のコンフィギュレーションデータＢが格納されている記憶領域を特定（Ａ０８：下位のコンフィギュレーションデータＢの記憶領域の特定）したら、コンフィギュレーションデータＡをメモリエレメント１０８の上記記憶領域に格納する（Ａ０７：コンフィギュレーションデータＡのメモリエレメント１０８への格納）。そして、当該コンフィギュレーションデータＡに従って、ロジックアレイ１０７において構成される論理回路の定義がなされる（Ａ０４：コンフィギュレーションＡの実行）。そして、定義された論理回路において、演算処理が行われることで、スレッドＡが実行される。
【００４１】
なお、ロジックアレイ１０７において構成される論理回路の定義がなされたら（Ａ０４：コンフィギュレーションＡの実行）、メモリモジュール１０９において、管理情報Ａを更新する（Ａ０９：メモリモジュール１０９における管理情報Ａの更新）。例えば、管理情報Ａに、ロジックアレイ１０７へ書き込み回数が含まれている場合は、回数を１回増やすように管理情報Ａを更新する。或いは、管理情報Ａに、最後にロジックアレイ１０７に書き込まれた時間が含まれている場合、上記時間が最新の時間になるように管理情報Ａを更新する。
【００４２】
管理情報Ａを更新したら（Ａ０９：メモリモジュール１０９における管理情報Ａの更新）、ＰＬＤ１０２において行われる処理が終了する（Ａ１０：終了）。
【００４３】
なお、図２に示すフローチャートでは、管理情報Ａの更新（Ａ０９：メモリモジュール１０９における管理情報Ａの更新）を、ロジックアレイ１０７において構成される論理回路の定義（Ａ０４：コンフィギュレーションＡの実行）が終了した後に行われているが、管理情報Ａの更新は、スレッドＡの実行を要求する命令をＰＬＤ１０２が受け取った後（Ａ０１：スレッドＡ実行の要求）であれば、いつでも可能である。
【００４４】
次いで、図１に示した記憶装置１０３に格納されている、アプリケーション１０４とコンフィギュレーションデータ１０５のデータ構造の模式図を、図４に示す。図４（Ａ）に示す記憶装置１０３では、１つのアプリケーション１０４に対し、２つのコンフィギュレーションデータ１０５が関連づけられている場合を例示している。なお、１つのアプリケーション１０４に関連づけられているコンフィギュレーションデータ１０５の数は、３つ以上であっても良い。
【００４５】
また、図４（Ｂ）に示す記憶装置１０３では、コンフィギュレーションデータ１０５が関連づけられていないアプリケーション１０４と、１つのコンフィギュレーションデータ１０５が関連づけられているアプリケーション１０４と、２つのコンフィギュレーションデータ１０５が関連づけられているアプリケーション１０４とが、混在している。
【００４６】
また、図４（Ｃ）に示す記憶装置１０３では、２つのアプリケーション１０４に対し、１つのコンフィギュレーションデータ１０５が共有するように関連づけられている場合を例示している。なお、１つのコンフィギュレーションデータ１０５を共有するように関連づけられているアプリケーション１０４の数は、３つ以上であっても良い。
【００４７】
次いで、アプリケーション１０４を構成する複数のスレッドと、各スレッドを実行するプロセッサ１０１またはＰＬＤ１０２との関係を、図５（Ａ）及び図５（Ｂ）に模式的に例示する。図５（Ａ）及び図５（Ｂ）では、アプリケーション１０４が、スレッド１２０Ａ、スレッド１２０Ｂ、スレッド１２０Ｃ、及びスレッド１２０Ｄを有している場合を例示している。そして、図５（Ａ）及び図５（Ｂ）では、スレッド１２０Ａ、スレッド１２０Ｂ、スレッド１２０Ｃ、スレッド１２０Ｂ、スレッド１２０Ｄの順番に、各スレッドを実行することで、アプリケーション１０４が実行される場合を、例示している。
【００４８】
そして、図５（Ａ）では、スレッド１２０Ａ、スレッド１２０Ｃ、及びスレッド１２０Ｄを、プロセッサ１０１においてソフトウェア的に実行し、スレッド１２０Ｂを、ＰＬＤ１０２においてハードウェア的に実行する場合を示している。図５（Ａ）に示したアプリケーション１０４を実行する場合、スレッド１２０ＢをＰＬＤ１０２において実行するのに必要なコンフィギュレーションデータ１０５が、アプリケーション１０４に関連づけられて、図１に示した記憶装置１０３に格納されていればよい。
【００４９】
また、図５（Ｂ）では、スレッド１２０Ａ及びスレッド１２０Ｂを、プロセッサ１０１においてソフトウェア的に実行し、スレッド１２０Ｃ及びスレッド１２０Ｄを、ＰＬＤ１０２においてハードウェア的に実行する場合を示している。図５（Ｂ）に示したアプリケーション１０４を実行する場合、スレッド１２０ＣをＰＬＤ１０２において実行するのに必要なコンフィギュレーションデータ１０５と、スレッド１２０ＤをＰＬＤ１０２において実行するのに必要なコンフィギュレーションデータ１０５とが、アプリケーション１０４に関連づけられて、図１に示した記憶装置１０３に格納されていればよい。
【００５０】
次いで、メモリエレメント１０８が有するメモリセルの構成例について、図６を用いて説明する。図６（Ａ）に、メモリセル１２０の回路図を一例として示す。メモリエレメント１０８には、メモリセル１２０が複数設けられており、各メモリセル１２０は、記憶素子１２１と、スイッチ１２２とを有する。
【００５１】
記憶素子１２１には、容量素子、トランジスタなどの半導体素子を用いることができる。そして、記憶素子１２１は、容量素子、或いは、トランジスタのゲート電極と活性層の間に形成されるゲート容量に、電荷を蓄積させることで、データを記憶する。また、記憶素子１２１への電荷の供給と、当該記憶素子１２１からの電荷の放出と、当該記憶素子１２１における電荷の保持とは、スイッチ１２２により制御する。
【００５２】
スイッチ１２２は、シリコンよりもバンドギャップが広く、真性キャリア密度がシリコンよりも低い半導体を、チャネル形成領域に含むトランジスタを用いる。このような半導体としては、例えば、シリコンの２倍以上の大きなバンドギャップを有する、酸化物半導体、炭化シリコン、窒化ガリウム、酸化ガリウムなどが挙げられる。上記半導体を有するトランジスタは、通常のシリコンやゲルマニウムなどの半導体で形成されたトランジスタに比べて、オフ電流を極めて小さくすることができる。よって、上記構成を有するトランジスタを、記憶素子１２１に流入した電荷を保持するためのスイッチ１２２として用いることで、記憶素子１２１からの電荷のリークを防ぐことができるので、データの保持期間を長く確保することができる。
【００５３】
なお、メモリセル１２０は、必要に応じて、トランジスタ、ダイオード、抵抗素子、インダクタンスなどのその他の回路素子を、さらに有していても良い。
【００５４】
なお、特に断りがない限り、本明細書でオフ電流とは、ｎチャネル型トランジスタにおいては、ドレイン端子をソース端子とゲート電極よりも高い電位とした状態において、ソース端子の電位を基準としたときのゲート電極の電位が０以下であるときに、ソース端子とドレイン端子の間に流れる電流のことを意味する。或いは、本明細書でオフ電流とは、ｐチャネル型トランジスタにおいては、ドレイン端子をソース端子とゲート電極よりも低い電位とした状態において、ソース端子の電位を基準としたときのゲート電極の電位が０以上であるときに、ソース端子とドレイン端子の間に流れる電流のことを意味する。
【００５５】
なお、スイッチ１２２は、一のトランジスタで構成されていても良いし、複数のトランジスタで構成されていても良い。例えば、複数の直列に接続されたトランジスタを用いることで、よりオフ電流の小さなスイッチ１２２を形成することができ、よって、記憶素子１２１からの電荷のリークをより防ぐことができる。
【００５６】
なお、本明細書において、トランジスタが直列に接続されている状態とは、第１のトランジスタのソース端子とドレイン端子のいずれか一方のみが、第２のトランジスタのソース端子とドレイン端子のいずれか一方のみに接続されている状態を意味する。また、トランジスタが並列に接続されている状態とは、第１のトランジスタのソース端子とドレイン端子のいずれか一方が、第２のトランジスタのソース端子とドレイン端子のいずれか一方に接続され、第１のトランジスタのソース端子とドレイン端子の他方が第２のトランジスタのソース端子とドレイン端子の他方に接続されている状態を意味する。
【００５７】
図６（Ｂ）に、スイッチ１２２に用いられるトランジスタ１２２ａの断面構造を、一例として示す。ただし、図６（Ｂ）では、活性層として酸化物半導体を用いたトランジスタ１２２ａを例示している。
【００５８】
トランジスタ１２２ａは、絶縁表面上に形成されたゲート電極１３０と、ゲート電極１３０上のゲート絶縁膜１３１と、ゲート絶縁膜１３１上の導電膜１３２、導電膜１３３と、ゲート絶縁膜１３１上においてゲート電極１３０と重なっており、なおかつ導電膜１３２、導電膜１３３上に形成された、活性層として機能する酸化物半導体膜１３４とを有する。さらに、トランジスタ１２２ａは、導電膜１３２、導電膜１３３、及び酸化物半導体膜１３４上に形成された絶縁膜１３５を、その構成要素に含めても良い。
【００５９】
なお、電子供与体（ドナー）となる水分または水素などの不純物が低減され、なおかつ酸素欠損が低減されることにより高純度化された酸化物半導体（ｐｕｒｉｆｉｅｄ  ＯＳ）は、ｉ型（真性半導体）又はｉ型に限りなく近い。そのため、水分または水素などの不純物濃度が十分に低減され、なおかつ酸素欠損が低減されることにより高純度化された酸化物半導体膜を用いることにより、トランジスタのオフ電流を小さくすることができる。よって、高純度化された酸化物半導体膜を用いたトランジスタを、スイッチ１２２に用いることで、記憶素子１２１からの電荷のリークを防ぎ、データの保持期間を長く確保するという効果を高めることができる。
【００６０】
具体的に、高純度化された酸化物半導体をチャネル形成領域に用いたトランジスタのオフ電流が小さいことは、いろいろな実験により証明できる。例えば、チャネル幅が１×１０６μｍでチャネル長が１０μｍの素子であっても、ソース電極とドレイン電極間の電圧（ドレイン電圧）が１Ｖから１０Ｖの範囲において、オフ電流が、半導体パラメータアナライザの測定限界以下、すなわち１×１０−１３Ａ以下という特性を得ることができる。この場合、オフ電流をトランジスタのチャネル幅で規格化したオフ電流は、１００ｚＡ／μｍ以下であることが分かる。また、容量素子とトランジスタとを接続して、容量素子に流入または容量素子から流出する電荷を当該トランジスタで制御する回路を用いて、オフ電流の測定を行った。当該測定では、高純度化された酸化物半導体膜を上記トランジスタのチャネル形成領域に用い、容量素子の単位時間あたりの電荷量の推移から当該トランジスタのオフ電流を測定した。その結果、トランジスタのソース電極とドレイン電極間の電圧が３Ｖの場合に、数十ｙＡ／μｍという、さらに小さいオフ電流が得られることが分かった。従って、高純度化された酸化物半導体膜をチャネル形成領域に用いたトランジスタは、オフ電流が、結晶性を有するシリコンを用いたトランジスタに比べて著しく小さい。
【００６１】
また、酸化物半導体の中でもＩｎ−Ｇａ−Ｚｎ系酸化物、Ｉｎ−Ｓｎ−Ｚｎ系酸化物などは、炭化シリコン、窒化ガリウム、または酸化ガリウムとは異なり、スパッタリング法や湿式法により電気的特性の優れたトランジスタを作製することが可能であり、量産性に優れるといった利点がある。また、炭化シリコン、窒化ガリウム、または酸化ガリウムとは異なり、上記酸化物半導体であるＩｎ−Ｇａ−Ｚｎ系酸化物は室温でも成膜が可能なため、ガラス基板上への成膜、或いはシリコンを用いた集積回路上に電気的特性の優れたトランジスタを作製することが可能である。また、基板の大型化にも対応が可能である。
【００６２】
なお、酸化物半導体としては、少なくともインジウム（Ｉｎ）あるいは亜鉛（Ｚｎ）を含むことが好ましい。また、該酸化物半導体を用いたトランジスタの電気的特性のばらつきを減らすためのスタビライザーとして、それらに加えてガリウム（Ｇａ）を有することが好ましい。また、スタビライザーとしてスズ（Ｓｎ）を有することが好ましい。また、スタビライザーとしてハフニウム（Ｈｆ）を有することが好ましい。また、スタビライザーとしてアルミニウム（Ａｌ）を有することが好ましい。また、スタビライザーとしてジルコニウム（Ｚｒ）を含むことが好ましい。
【００６３】
また、他のスタビライザーとして、ランタノイドである、ランタン（Ｌａ）、セリウム（Ｃｅ）、プラセオジム（Ｐｒ）、ネオジム（Ｎｄ）、サマリウム（Ｓｍ）、ユウロピウム（Ｅｕ）、ガドリニウム（Ｇｄ）、テルビウム（Ｔｂ）、ジスプロシウム（Ｄｙ）、ホルミウム（Ｈｏ）、エルビウム（Ｅｒ）、ツリウム（Ｔｍ）、イッテルビウム（Ｙｂ）、ルテチウム（Ｌｕ）のいずれか一種または複数種を含んでいてもよい。
【００６４】
例えば、酸化物半導体として、酸化インジウム、酸化ガリウム、酸化スズ、酸化亜鉛、二元系金属の酸化物であるＩｎ−Ｚｎ系酸化物、Ｓｎ−Ｚｎ系酸化物、Ａｌ−Ｚｎ系酸化物、Ｚｎ−Ｍｇ系酸化物、Ｓｎ−Ｍｇ系酸化物、Ｉｎ−Ｍｇ系酸化物、Ｉｎ−Ｇａ系酸化物、三元系金属の酸化物であるＩｎ−Ｇａ−Ｚｎ系酸化物（ＩＧＺＯとも表記する）、Ｉｎ−Ａｌ−Ｚｎ系酸化物、Ｉｎ−Ｓｎ−Ｚｎ系酸化物、Ｓｎ−Ｇａ−Ｚｎ系酸化物、Ａｌ−Ｇａ−Ｚｎ系酸化物、Ｓｎ−Ａｌ−Ｚｎ系酸化物、Ｉｎ−Ｈｆ−Ｚｎ系酸化物、Ｉｎ−Ｌａ−Ｚｎ系酸化物、Ｉｎ−Ｐｒ−Ｚｎ系酸化物、Ｉｎ−Ｎｄ−Ｚｎ系酸化物、Ｉｎ−Ｓｍ−Ｚｎ系酸化物、Ｉｎ−Ｅｕ−Ｚｎ系酸化物、Ｉｎ−Ｇｄ−Ｚｎ系酸化物、Ｉｎ−Ｔｂ−Ｚｎ系酸化物、Ｉｎ−Ｄｙ−Ｚｎ系酸化物、Ｉｎ−Ｈｏ−Ｚｎ系酸化物、Ｉｎ−Ｅｒ−Ｚｎ系酸化物、Ｉｎ−Ｔｍ−Ｚｎ系酸化物、Ｉｎ−Ｙｂ−Ｚｎ系酸化物、Ｉｎ−Ｌｕ−Ｚｎ系酸化物、四元系金属の酸化物であるＩｎ−Ｓｎ−Ｇａ−Ｚｎ系酸化物、Ｉｎ−Ｈｆ−Ｇａ−Ｚｎ系酸化物、Ｉｎ−Ａｌ−Ｇａ−Ｚｎ系酸化物、Ｉｎ−Ｓｎ−Ａｌ−Ｚｎ系酸化物、Ｉｎ−Ｓｎ−Ｈｆ−Ｚｎ系酸化物、Ｉｎ−Ｈｆ−Ａｌ−Ｚｎ系酸化物を用いることができる。
【００６５】
なお、例えば、Ｉｎ−Ｇａ−Ｚｎ系酸化物とは、ＩｎとＧａとＺｎを含む酸化物という意味であり、ＩｎとＧａとＺｎの比率は問わない。また、ＩｎとＧａとＺｎ以外の金属元素を含んでいてもよい。Ｉｎ−Ｇａ−Ｚｎ系酸化物は、無電界時の抵抗が十分に高くオフ電流を十分に小さくすることが可能であり、また、移動度も高い。
【００６６】
例えば、Ｉｎ：Ｇａ：Ｚｎ＝１：１：１（＝１／３：１／３：１／３）あるいはＩｎ：Ｇａ：Ｚｎ＝２：２：１（＝２／５：２／５：１／５）の原子比のＩｎ−Ｇａ−Ｚｎ系酸化物やその組成の近傍の酸化物を用いることができる。あるいは、Ｉｎ：Ｓｎ：Ｚｎ＝１：１：１（＝１／３：１／３：１／３）、Ｉｎ：Ｓｎ：Ｚｎ＝２：１：３（＝１／３：１／６：１／２）あるいはＩｎ：Ｓｎ：Ｚｎ＝２：１：５（＝１／４：１／８：５／８）の原子比のＩｎ−Ｓｎ−Ｚｎ系酸化物やその組成の近傍の酸化物を用いるとよい。
【００６７】
例えば、Ｉｎ−Ｓｎ−Ｚｎ系酸化物では比較的容易に高い移動度が得られる。しかしながら、Ｉｎ−Ｇａ−Ｚｎ系酸化物でも、バルク内欠陥密度を低減することにより移動度を上げることができる。
【００６８】
以下では、酸化物半導体膜の構造について説明する。
【００６９】
酸化物半導体膜は、単結晶酸化物半導体膜と非単結晶酸化物半導体膜とに大別される。非単結晶酸化物半導体膜とは、非晶質酸化物半導体膜、微結晶酸化物半導体膜、多結晶酸化物半導体膜、ＣＡＡＣ−ＯＳ（Ｃ  Ａｘｉｓ  Ａｌｉｇｎｅｄ  Ｃｒｙｓｔａｌｌｉｎｅ  Ｏｘｉｄｅ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ）膜などをいう。
【００７０】
非晶質酸化物半導体膜は、膜中における原子配列が不規則であり、結晶成分を有さない酸化物半導体膜である。微小領域においても結晶部を有さず、膜全体が完全な非晶質構造の酸化物半導体膜が典型である。
【００７１】
微結晶酸化物半導体膜は、例えば、１ｎｍ以上１０ｎｍ未満の大きさの微結晶（ナノ結晶ともいう。）を含む。従って、微結晶酸化物半導体膜は、非晶質酸化物半導体膜よりも原子配列の規則性が高い。そのため、微結晶酸化物半導体膜は、非晶質酸化物半導体膜よりも欠陥準位密度が低いという特徴がある。
【００７２】
ＣＡＡＣ−ＯＳ膜は、複数の結晶部を有する酸化物半導体膜の一つであり、ほとんどの結晶部は、一辺が１００ｎｍ未満の立方体内に収まる大きさである。従って、ＣＡＡＣ−ＯＳ膜に含まれる結晶部は、一辺が１０ｎｍ未満、５ｎｍ未満または３ｎｍ未満の立方体内に収まる大きさの場合も含まれる。ＣＡＡＣ−ＯＳ膜は、微結晶酸化物半導体膜よりも欠陥準位密度が低いという特徴がある。以下、ＣＡＡＣ−ＯＳ膜について詳細な説明を行う。
【００７３】
ＣＡＡＣ−ＯＳ膜を透過型電子顕微鏡（ＴＥＭ：Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｅｌｅｃｔｒｏｎ  Ｍｉｃｒｏｓｃｏｐｅ）によって観察すると、結晶部同士の明確な境界、即ち結晶粒界（グレインバウンダリーともいう。）を確認することができない。そのため、ＣＡＡＣ−ＯＳ膜は、結晶粒界に起因する電子移動度の低下が起こりにくいといえる。
【００７４】
ＣＡＡＣ−ＯＳ膜を、試料面と概略平行な方向からＴＥＭによって観察（断面ＴＥＭ観察）すると、結晶部において、金属原子が層状に配列していることを確認できる。金属原子の各層は、ＣＡＡＣ−ＯＳ膜の膜を形成する面（被形成面ともいう。）または上面の凹凸を反映した形状であり、ＣＡＡＣ−ＯＳ膜の被形成面または上面と平行に配列する。
【００７５】
なお、本明細書において、「平行」とは、二つの直線が−１０°以上１０°以下の角度で配置されている状態をいう。従って、−５°以上５°以下の場合も含まれる。また、「垂直」とは、二つの直線が８０°以上１００°以下の角度で配置されている状態をいう。従って、８５°以上９５°以下の場合も含まれる。
【００７６】
一方、ＣＡＡＣ−ＯＳ膜を、試料面と概略垂直な方向からＴＥＭによって観察（平面ＴＥＭ観察）すると、結晶部において、金属原子が三角形状または六角形状に配列していることを確認できる。しかしながら、異なる結晶部間で、金属原子の配列に規則性は見られない。
【００７７】
断面ＴＥＭ観察および平面ＴＥＭ観察より、ＣＡＡＣ−ＯＳ膜の結晶部は配向性を有していることがわかる。
【００７８】
ＣＡＡＣ−ＯＳ膜に対し、Ｘ線回折（ＸＲＤ：Ｘ−Ｒａｙ  Ｄｉｆｆｒａｃｔｉｏｎ）装置を用いて構造解析を行うと、例えばＩｎＧａＺｎＯ４の結晶を有するＣＡＡＣ−ＯＳ膜のｏｕｔ−ｏｆ−ｐｌａｎｅ法による解析では、回折角（２θ）が３１°近傍にピークが現れる場合がある。このピークは、ＩｎＧａＺｎＯ４の結晶の（００９）面に帰属されることから、ＣＡＡＣ−ＯＳ膜の結晶がｃ軸配向性を有し、ｃ軸が被形成面または上面に概略垂直な方向を向いていることが確認できる。
【００７９】
一方、ＣＡＡＣ−ＯＳ膜に対し、ｃ軸に概略垂直な方向からＸ線を入射させるｉｎ−ｐｌａｎｅ法による解析では、２θが５６°近傍にピークが現れる場合がある。このピークは、ＩｎＧａＺｎＯ４の結晶の（１１０）面に帰属される。ＩｎＧａＺｎＯ４の単結晶酸化物半導体膜であれば、２θを５６°近傍に固定し、試料面の法線ベクトルを軸（φ軸）として試料を回転させながら分析（φスキャン）を行うと、（１１０）面と等価な結晶面に帰属されるピークが６本観察される。これに対し、ＣＡＡＣ−ＯＳ膜の場合は、２θを５６°近傍に固定してφスキャンした場合でも、明瞭なピークが現れない。
【００８０】
以上のことから、ＣＡＡＣ−ＯＳ膜では、異なる結晶部間ではａ軸およびｂ軸の配向は不規則であるが、ｃ軸配向性を有し、かつｃ軸が被形成面または上面の法線ベクトルに平行な方向を向いていることがわかる。従って、前述の断面ＴＥＭ観察で確認された層状に配列した金属原子の各層は、結晶のａｂ面に平行な面である。
【００８１】
なお、結晶部は、ＣＡＡＣ−ＯＳ膜を成膜した際、または加熱処理などの結晶化処理を行った際に形成される。上述したように、結晶のｃ軸は、ＣＡＡＣ−ＯＳ膜の被形成面または上面の法線ベクトルに平行な方向に配向する。従って、例えば、ＣＡＡＣ−ＯＳ膜の形状をエッチングなどによって変化させた場合、結晶のｃ軸がＣＡＡＣ−ＯＳ膜の被形成面または上面の法線ベクトルと平行にならないこともある。
【００８２】
また、ＣＡＡＣ−ＯＳ膜中の結晶化度が均一でなくてもよい。例えば、ＣＡＡＣ−ＯＳ膜の結晶部が、ＣＡＡＣ−ＯＳ膜の上面近傍からの結晶成長によって形成される場合、上面近傍の領域は、被形成面近傍の領域よりも結晶化度が高くなることがある。また、ＣＡＡＣ−ＯＳ膜に不純物を添加する場合、不純物が添加された領域の結晶化度が変化し、部分的に結晶化度の異なる領域が形成されることもある。
【００８３】
なお、ＩｎＧａＺｎＯ４の結晶を有するＣＡＡＣ−ＯＳ膜のｏｕｔ−ｏｆ−ｐｌａｎｅ法による解析では、２θが３１°近傍のピークの他に、２θが３６°近傍にもピークが現れる場合がある。２θが３６°近傍のピークは、ＣＡＡＣ−ＯＳ膜中の一部に、ｃ軸配向性を有さない結晶が含まれることを示している。ＣＡＡＣ−ＯＳ膜は、２θが３１°近傍にピークを示し、２θが３６°近傍にピークを示さないことが好ましい。
【００８４】
ＣＡＡＣ−ＯＳ膜を用いたトランジスタは、可視光や紫外光の照射による電気的特性の変動が小さい。よって、当該トランジスタは、信頼性が高い。
【００８５】
なお、酸化物半導体膜は、例えば、非晶質酸化物半導体膜、微結晶酸化物半導体膜、ＣＡＡＣ−ＯＳ膜のうち、二種以上を有する積層膜であってもよい。
【００８６】
ＣＡＡＣ−ＯＳ膜は、例えば、多結晶である金属酸化物ターゲットを用い、スパッタリング法によって成膜する。当該ターゲットにイオンが衝突すると、ターゲットに含まれる結晶領域がａ−ｂ面から劈開し、ａ−ｂ面に平行な面を有する平板状またはペレット状のスパッタリング粒子として剥離することがある。この場合、当該平板状のスパッタリング粒子が、結晶状態を維持したまま基板に到達することで、ＣＡＡＣ−ＯＳ膜を成膜することができる。
【００８７】
また、ＣＡＡＣ−ＯＳ膜を成膜するために、以下の条件を適用することが好ましい。
【００８８】
成膜時の不純物混入を低減することで、不純物によって結晶状態が崩れることを抑制できる。例えば、処理室内に存在する不純物濃度（水素、水、二酸化炭素および窒素など）を低減すればよい。また、成膜ガス中の不純物濃度を低減すればよい。具体的には、露点が−８０℃以下、好ましくは−１００℃以下である成膜ガスを用いる。
【００８９】
また、成膜時の基板加熱温度を高めることで、基板到達後にスパッタリング粒子のマイグレーションが起こる。具体的には、基板加熱温度を１００℃以上７４０℃以下、好ましくは２００℃以上５００℃以下として成膜する。成膜時の基板加熱温度を高めることで、平板状のスパッタリング粒子が基板に到達した場合、基板上でマイグレーションが起こり、スパッタリング粒子の平らな面が基板に付着する。
【００９０】
また、成膜ガス中の酸素割合を高め、電力を最適化することで成膜時のプラズマダメージを軽減すると好ましい。成膜ガス中の酸素割合は、３０体積％以上、好ましくは１００体積％とする。
【００９１】
ターゲットの一例として、Ｉｎ−Ｇａ−Ｚｎ系酸化物ターゲットについて以下に示す。
【００９２】
ＩｎＯＸ粉末、ＧａＯＹ粉末およびＺｎＯＺ粉末を所定のｍｏｌ数比で混合し、加圧処理後、１０００℃以上１５００℃以下の温度で加熱処理をすることで多結晶であるＩｎ−Ｇａ−Ｚｎ系酸化物ターゲットとする。なお、Ｘ、ＹおよびＺは任意の正数である。ここで、所定のｍｏｌ数比は、例えば、ＩｎＯＸ粉末、ＧａＯＹ粉末およびＺｎＯＺ粉末が、２：２：１、８：４：３、３：１：１、１：１：１、４：２：３または３：１：２である。なお、粉末の種類、およびその混合するｍｏｌ数比は、作製するターゲットによって適宜変更すればよい。
【００９３】
また、図６（Ｂ）では、トランジスタ１２２ａが、一のゲート電極１３０に対応した一のチャネル形成領域を有する、シングルゲート構造である場合を例示している。しかし、トランジスタ１２２ａは、電気的に接続された複数のゲート電極を有することで、一の活性層にチャネル形成領域を複数有する、マルチゲート構造であっても良い。
【００９４】
また、トランジスタ１２２ａは、ゲート電極を活性層の片側において少なくとも有していれば良いが、活性層を間に挟んで存在する一対のゲート電極を有していても良い。トランジスタが、活性層を間に挟んで存在する一対のゲート電極を有している場合、一方のゲート電極にはスイッチングを制御するための信号が与えられ、他方のゲート電極は、電気的に絶縁されたフローティングの状態であっても良いし、電位が他から与えられている状態であっても良い。後者の場合、一対の電極に、同じ高さの電位が与えられていても良いし、他方のゲート電極にのみ接地電位などの固定の電位が与えられていても良い。他方のゲート電極に与える電位の高さを制御することで、トランジスタ１２２ａの閾値電圧を制御することができる。
【００９５】
なお、本明細書において接続とは電気的な接続を意味しており、電流、電圧または電位が、供給可能、或いは伝送可能な状態に相当する。従って、接続している状態とは、直接接続している状態を必ずしも指すわけではなく、電流、電圧または電位が、供給可能、或いは伝送可能であるように、抵抗素子、ダイオード、トランジスタ、容量素子などの回路素子を介して間接的に接続している状態も、その範疇に含む。
【００９６】
なお、図６（Ｂ）では、トランジスタ１２２ａとしてＭＯＳＦＥＴを例示しているが、スイッチ１２２に用いることができるトランジスタは、ＭＥＳＦＥＴ（Ｍｅｔａｌ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ  Ｆｉｅｌｄ  Ｅｆｆｅｃｔ  Ｔｒａｎｓｉｓｔｏｒ）であっても良い。
【００９７】
メモリエレメント１０８が上記構成のメモリセルを複数有することで、本発明の一態様に係る半導体装置１００では、ＰＬＤ１０２の有するメモリエレメント１０８において、ＳＲＡＭのようにトランジスタのオフ電流により電力が消費されることがない。また、上記構成を有するメモリエレメント１０８は、ＤＲＡＭよりもリフレッシュの頻度を低減することができるので、リフレッシュによる消費電力を大幅に削減することができる。また、データの書き込みに要する時間をＥＥＰＲＯＭよりも短くすることができるので、ＰＬＤ１０２のコンフィギュレーションに要する時間を短縮化し、アプリケーション１０４の高速処理を実現することができる。
【００９８】
次いで、メモリセルのより具体的な構成例について、図７を用いて説明する。なお、本明細書において、トランジスタのソース端子とは、活性層としての機能を有する半導体膜の一部であるソース領域、或いは活性層としての機能を有する半導体膜に接続されたソース電極を意味する。同様に、トランジスタのドレイン端子とは、活性層としての機能を有する半導体膜の一部であるドレイン領域、或いは活性層としての機能を有する半導体膜に接続されたドレイン電極を意味する。
【００９９】
また、トランジスタが有するソース端子とドレイン端子は、トランジスタのチャネル型及びソース端子とドレイン端子に与えられる電位の高低によって、その呼び方が入れ替わる。一般的に、ｎチャネル型のトランジスタでは、ソース端子とドレイン端子のうち、低い電位が与えられる方がソース端子と呼ばれ、高い電位が与えられる方がドレイン端子と呼ばれる。また、ｐチャネル型のトランジスタでは、ソース端子とドレイン端子のうち、低い電位が与えられる方がドレイン端子と呼ばれ、高い電位が与えられる方がソース端子と呼ばれる。本明細書では、便宜上、ソース端子とドレイン端子とが固定されているものと仮定して、トランジスタの接続関係を説明する場合があるが、実際には上記電位の関係に従ってソース端子とドレイン端子の呼び方が入れ替わる。
【０１００】
図７（Ａ）に示すメモリセル１５０は、スイッチ１２２として機能するトランジスタ１５１と、記憶素子１２１として機能する容量素子１５２とを有する。トランジスタ１５１のゲート電極は、ワード線ＷＬに接続されている。また、トランジスタ１５１は、そのソース端子及びドレイン端子の一方がデータ線ＤＬに接続されており、そのソース端子及びドレイン端子の他方が容量素子１５２の一方の電極に接続されている。容量素子１５２の他方の電極は、接地電位などの固定電位が与えられているノードに、接続されている。
【０１０１】
図７（Ａ）に示すメモリセル１５０では、データの書き込み時にトランジスタ１５１がオンになり、データ線ＤＬからデータを含む信号の電位が、トランジスタ１５１を介して容量素子１５２の一方の電極に与えられる。そして、上記信号の電位に従って、容量素子１５２に蓄積されている電荷量が制御されることで、容量素子１５２へのデータの書き込みが行われる。
【０１０２】
次いで、データの保持時には、トランジスタ１５１がオフになり、容量素子１５２において電荷が保持される。上述したように、トランジスタ１５１はオフ電流が極めて小さいという特性を有している。そのため、容量素子１５２に蓄積された電荷はリークしづらく、トランジスタ１５１にシリコンなどの半導体材料を用いた場合に比べ、長い期間に渡ってデータの保持を行うことができる。
【０１０３】
データの読み出し時には、トランジスタ１５１がオンになり、データ線ＤＬを介して容量素子１５２に蓄積された電荷が取り出される。そして、上記電荷量の違いを読み取ることにより、データを読み出すことができる。
【０１０４】
図７（Ｂ）に示すメモリセル１５３は、スイッチ１２２として機能するトランジスタ１５４と、記憶素子１２１として機能するトランジスタ１５５及び容量素子１５６とを有する。トランジスタ１５４のゲート電極は、第１ワード線ＷＬａに接続されている。また、トランジスタ１５４は、そのソース端子及びドレイン端子の一方が第１データ線ＤＬａに接続されており、そのソース端子及びドレイン端子の他方がトランジスタ１５５のゲート電極に接続されている。トランジスタ１５５は、そのソース端子及びドレイン端子の一方が、第２データ線ＤＬｂに接続されており、そのソース端子及びドレイン端子の他方が、所定の電位が与えられているノードに接続されている。容量素子１５６が有する一対の電極は、一方がトランジスタ１５５のゲート電極に接続され、他方が第２ワード線ＷＬｂに接続されている。
【０１０５】
図７（Ｂ）に示すメモリセル１５３では、データの書き込み時にトランジスタ１５４がオンになり、第１データ線ＤＬａからデータを含む信号の電位が、トランジスタ１５４を介してトランジスタ１５５のゲート電極に与えられる。そして、上記信号の電位に従って、トランジスタ１５５のゲート容量、及び容量素子１５６に蓄積される電荷量が制御されることで、トランジスタ１５５及び容量素子１５６へのデータの書き込みが行われる。
【０１０６】
次いで、データの保持時には、トランジスタ１５４がオフになり、トランジスタ１５５のゲート容量、及び容量素子１５６に蓄積された電荷が保持される。上述したように、トランジスタ１５４はオフ電流が極めて小さいという特性を有している。そのため、蓄積された上記電荷はリークしづらく、トランジスタ１５４にシリコンなどの半導体材料を用いた場合に比べ、長い期間に渡ってデータの保持を行うことができる。
【０１０７】
データの読み出し時には、第２ワード線ＷＬｂの電位を変化させる。容量素子１５６が有する一対の電極の電位差は、電荷保存則により維持されたままなので、第２ワード線ＷＬｂの電位の変化は、トランジスタ１５５のゲート電極に与えられる。トランジスタ１５５は、そのゲート容量に蓄積されている電荷量によって閾値電圧が変化している。よって、トランジスタ１５５のゲート電極の電位が変化することで得られるトランジスタ１５５のドレイン電流の大きさから、蓄積されている電荷量の違いを読み取ることにより、データを読み出すことができる。
【０１０８】
なお、記憶素子１２１として機能するトランジスタ１５５は、その活性層に、酸化物半導体膜が用いられていても良い。或いは、トランジスタ１５５の活性層に、酸化物半導体以外の、非晶質、微結晶、多結晶、または単結晶の、シリコン、またはゲルマニウムなどの半導体が用いられていても良い。メモリセル１５３内の全てのトランジスタの活性層に、酸化物半導体膜を用いることで、プロセスを簡略化することができる。また、記憶素子１２１として機能するトランジスタ１５５の活性層に、例えば、多結晶または単結晶のシリコンなどのように、酸化物半導体よりも高い移動度が得られる半導体材料を用いることで、メモリセル１５３からのデータの読み出しを高速で行うことができる。
【０１０９】
図７（Ｃ）に示すメモリセル１５７は、一つのデータ線ＤＬが、第１データ線ＤＬａと第２データ線ＤＬｂの機能を併せ持っている点において、図７（Ｂ）に示すメモリセル１５３と異なっている。具体的に、図７（Ｃ）に示すメモリセル１５７は、スイッチ１２２として機能するトランジスタ１５８と、記憶素子１２１として機能するトランジスタ１５９及び容量素子１６０とを有する。トランジスタ１５８のゲート電極は、第１ワード線ＷＬａに接続されている。また、トランジスタ１５８は、そのソース端子及びドレイン端子の一方がデータ線ＤＬに接続されており、そのソース端子及びドレイン端子の他方がトランジスタ１５９のゲート電極に接続されている。トランジスタ１５９は、そのソース端子及びドレイン端子の一方がデータ線ＤＬに接続されており、そのソース端子及びドレイン端子の他方が、所定の電位が与えられているノードに接続されている。容量素子１６０が有する一対の電極は、一方がトランジスタ１５９のゲート電極に接続され、他方が第２ワード線ＷＬｂに接続されている。
【０１１０】
図７（Ｃ）に示すメモリセル１５７は、データの書き込み、保持、読み出しなどの動作は、図７（Ｂ）に示すメモリセル１５７と同様に行うことができる。
【０１１１】
次いで、図１に示すメモリエレメント１０８の構成例について、説明する。図８に、メモリエレメント１０８の構成を、ブロック図で一例として示す。
【０１１２】
図８に示すメモリエレメント１０８は、メモリセル１７０を複数有するセルアレイ１７５と、駆動回路１６１とを有する。そして、駆動回路１６１は、入出力バッファ１６２と、メインアンプ１６３と、カラムデコーダ１６４と、ローデコーダ１６５と、スイッチ回路１６６と、プリチャージ回路１６７と、センスアンプ１６８と、書き込み回路１６９とを有する。
【０１１３】
入出力バッファ１６２は、駆動回路１６１またはセルアレイ１７５の駆動に用いる各種信号、及び、セルアレイ１７５に書き込まれるコンフィギュレーションデータの、メモリエレメント１０８への入力を制御する機能を有する。また、入出力バッファ１６２は、セルアレイ１７５からコンフィギュレーションデータを読み出す場合、当該読み出されたコンフィギュレーションデータの、メモリエレメント１０８からの出力を制御する機能を有する。
【０１１４】
ローデコーダ１６５は、例えばメモリセル１７０が、図７（Ａ）に示したメモリセル１５０と同じ構成を有している場合、ワード線ＷＬに与える電位を制御することで、セルアレイ１７５においてメモリセル１７０を、指定されたアドレスに従って行ごとに選択する機能を有する。カラムデコーダ１６４は、スイッチ回路１６６の動作を制御することで、コンフィギュレーションデータの書き込み時、または読み出し時の、列方向におけるメモリセル１７０の選択を、指定されたアドレスに従って行う機能を有する。
【０１１５】
スイッチ回路１６６は、例えばメモリセル１７０が、図７（Ａ）に示したメモリセル１５０と同じ構成を有している場合、データ線ＤＬとメインアンプ１６３の間の接続と、データ線ＤＬと書き込み回路１６９の間の接続とを行う機能を有する。書き込み回路１６９は、指定されたアドレスのメモリセル１７０に、スイッチ回路１６６を介してコンフィギュレーションデータを書き込む機能を有する。
【０１１６】
センスアンプ１６８は、メモリセル１７０からコンフィギュレーションデータを読み出すときに、データ線ＤＬの電位の変化を増幅させる機能を有する。また、センスアンプ１６８は、メモリセル１７０に書き込まれたコンフィギュレーションデータ、或いはメモリセル１７０から読み出されたコンフィギュレーションデータを、一時的に記憶する機能を有する。
【０１１７】
メインアンプ１６３は、センスアンプ１６８により増幅されたデータ線ＤＬの電位を用いて、コンフィギュレーションデータを読み出す機能を有する。プリチャージ回路１６７は、コンフィギュレーションデータの読み出し前に、データ線ＤＬの電位をリセットする機能を有する。
【０１１８】
なお、メモリエレメント１０８は、指定されたメモリセル１７０のアドレスを、一時的に記憶することができるアドレスバッファを、有していても良い。
【０１１９】
次いで、図９に、一列のメモリセル１７０に対応した、センスアンプ１６８、プリチャージ回路１６７、スイッチ回路１６６、及びメインアンプ１６３の接続構造を例示する。なお、図９では、メモリセル１７０が、図７（Ａ）に示したメモリセル１５０と同じ構成を有している場合を、例示している。
【０１２０】
メモリセル１７０はトランジスタ１５１と容量素子１５２とを有している。そして、メモリセル１７０は、データ線ＤＬａに接続されている。また、センスアンプ１６８、プリチャージ回路１６７、及びスイッチ回路１６６は、データ線ＤＬａ及びデータ線ＤＬｂに接続されている。データ線ＤＬａ及びデータ線ＤＬｂは、複数のメモリセル１７０にそれぞれ接続された複数のデータ線ＤＬの一つに、それぞれ相当するものとする。ただし、データ線ＤＬａ及びデータ線ＤＬｂに接続された全てのメモリセル１７０は、互いに異なるワード線ＷＬに接続されているものとする。
【０１２１】
具体的に、図９では、センスアンプ１６８がラッチ型である場合を例示している。センスアンプ１６８は、ｐチャネル型のトランジスタ５１５及びトランジスタ５１６と、ｎチャネル型のトランジスタ５１７及びトランジスタ５１８とを有している。トランジスタ５１５は、ソース端子及びドレイン端子の一方が端子ＳＰに接続され、他方がトランジスタ５１６及びトランジスタ５１８のゲート電極と、データ線ＤＬａとに接続されている。トランジスタ５１７は、ソース端子及びドレイン端子の一方がトランジスタ５１６及びトランジスタ５１８のゲート電極と、データ線ＤＬａとに接続され、他方が端子ＳＮに接続されている。トランジスタ５１６は、ソース端子及びドレイン端子の一方が端子ＳＰに接続され、他方がトランジスタ５１５及びトランジスタ５１７のゲート電極と、データ線ＤＬｂとに接続されている。トランジスタ５１８は、ソース端子及びレイン端子の一方がトランジスタ５１５及びトランジスタ５１７のゲート電極と、データ線ＤＬｂとに接続され、他方が端子ＳＮに接続されている。
【０１２２】
また、プリチャージ回路１６７は、ｎチャネル型のトランジスタ５１９乃至トランジスタ５２１を有している。トランジスタ５１９乃至トランジスタ５２１は、ｐチャネル型であっても良い。トランジスタ５１９のソース端子及びドレイン端子は、一方がデータ線ＤＬａに接続され、他方が端子Ｐｒｅに接続されている。トランジスタ５２０のソース端子及びドレイン端子は、一方がデータ線ＤＬｂに接続され、他方が端子Ｐｒｅに接続されている。トランジスタ５２１のソース端子及びドレイン端子は、一方がデータ線ＤＬａに接続され、他方がデータ線ＤＬｂに接続されている。そして、トランジスタ５１９乃至トランジスタ５２１は、それぞれのゲート電極が配線ＰＬに接続されている。
【０１２３】
スイッチ回路１６６は、ｎチャネル型のトランジスタ５２２及びトランジスタ５２３を有している。トランジスタ５２２及びトランジスタ５２３は、ｐチャネル型トランジスタであっても良い。トランジスタ５２２のソース端子及びドレイン端子は、一方がデータ線ＤＬａに接続され、他方が配線ＩＯａに接続されている。トランジスタ５２３のソース端子及びドレイン端子は、一方がデータ線ＤＬｂに接続され、他方が配線ＩＯｂに接続されている。そして、トランジスタ５２２及びトランジスタ５２３は、それぞれのゲート電極が端子ＣＳＬに接続されている。端子ＣＳＬの電位は、カラムデコーダ１６４によって制御される。
【０１２４】
配線ＩＯａ及び配線ＩＯｂは、メインアンプ１６３に接続されている。また、書き込み回路１６９は、コンフィギュレーションデータに従って、配線ＩＯａ及び配線ＩＯｂへの電位の供給を行う機能を有する。
【０１２５】
なお、センスアンプ１６８は上述したようなラッチ型に限定されず、カレントミラー型やシングルエンド型であっても良い。シングルエンド型のセンスアンプ１６８を用いる場合、データ線ＤＬｂの電位をリセットする必要がないので、プリチャージ回路１６７においてトランジスタ５２０及びトランジスタ５２１を省略することができる。
【０１２６】
また、データ線ＤＬａ及びデータ線ＤＬｂの組み合わせは、アレイ方式によって適宜決めることができる。本発明の一態様では、折り返し方式、クロスポイント方式、開放方式などのアレイ方式を用いることができ、これらのアレイ方式に合わせて、複数のメモリセル１７０にそれぞれ接続された複数のデータ線ＤＬのうち、いずれか２つのデータ線ＤＬと、メインアンプ１６３とを、スイッチ回路１６６により接続すれば良い。ただし、上述したように、データ線ＤＬａ及びデータ線ＤＬｂに接続された全てのメモリセル１７０は、互いに異なるワード線ＷＬに接続されているものとする。
【０１２７】
書き込み回路１６９からコンフィギュレーションデータをメモリセル１７０に書き込む場合、まず、端子ＳＰにハイレベルの電位ＶＨ＿ＳＰを与え、端子ＳＮにローレベルの電位ＶＬ＿ＳＰを与えることで、センスアンプ１６８をオンの状態とする。そして、書き込み回路１６９によって、配線ＩＯａ及び配線ＩＯｂの電位を、コンフィギュレーションデータに従った高さに制御し、スイッチ回路１６６においてトランジスタ５２２及びトランジスタ５２３をオンにする。上記構成により、データ線ＤＬａに配線ＩＯａの電位が与えられ、データ線ＤＬｂに配線ＩＯｂの電位が与えられる。次いで、ワード線ＷＬを選択し、トランジスタ１５１をオンにすることで、データ線ＤＬａと容量素子１５２を接続する。そして、データ線ＤＬａの電位に従い容量素子１５２に電荷が蓄積されることで、メモリセル１７０にコンフィギュレーションデータが書き込まれる。
【０１２８】
なお、データ線ＤＬａに配線ＩＯａの電位が与えられ、データ線ＤＬｂに配線ＩＯｂの電位が与えられた後は、スイッチ回路１６６においてトランジスタ５２２及びトランジスタ５２３をオフにしても、センスアンプ１６８がオンの状態にあるならば、データ線ＤＬａの電位とデータ線ＤＬｂの電位の高低の関係は、センスアンプ１６８により保持される。よって、スイッチ回路１６６においてトランジスタ５２２及びトランジスタ５２３をオンからオフに変更するタイミングは、ワード線ＷＬを選択する前であっても、後であっても、どちらでも良い。
【０１２９】
次いで、図１に示したプロセッサ１０１の、具体的な構成例について説明する。図１０に、プロセッサ１０１の構成をブロック図で一例として示す。
【０１３０】
図１０に示すプロセッサ１０１は、制御装置６０１と、演算装置６０２と、メインメモリ６０３と、入力装置６０４と、出力装置６０５、ＩＦ（インターフェース）６０６と、緩衝記憶装置６０７とを有する。
【０１３１】
制御装置６０１は、プロセッサ１０１が有する演算装置６０２、メインメモリ６０３、入力装置６０４、出力装置６０５、ＩＦ６０６、緩衝記憶装置６０７の動作を統括的に制御することで、入力されたアプリケーションなどのプログラムに含まれる命令をデコードし、実行する機能を有する。演算装置６０２は、四則演算、論理演算などの各種演算処理を行う機能を有する。
【０１３２】
なお、図１０では、制御装置６０１と演算装置６０２とを独立したブロックとしてそれぞれ図示しているが、プロセッサ１０１は、制御装置６０１の機能と、演算装置６０２の機能とを併せ持った中央演算処理装置を、制御装置６０１及び演算装置６０２の代わりに有していても良い。
【０１３３】
メインメモリ６０３には、制御装置６０１において実行される、複数の命令で構成されるアプリケーションなどのプログラムと、演算装置６０２における演算処理に用いられるデータとを、記憶する機能を有する。
【０１３４】
緩衝記憶装置６０７は、演算装置６０２の演算処理の途中で得られたデータ、或いは演算装置６０２の演算処理の結果得られたデータなどを記憶する機能を有する。また、アプリケーションなどのプログラムを一時的に記憶する機能を有していても良い。
【０１３５】
入力装置６０４は、半導体装置の外部から入力される命令を、プロセッサ１０１に送る機能を有する。入力装置６０４として、例えば、キーボード、マウス、タッチパネルなどを用いることができる。
【０１３６】
出力装置６０５は、プロセッサ１０１の動作状態、アプリケーションなどのプログラムの実行により得られた結果などを、情報として出力する機能を有する。出力装置６０５として、例えば、ディスプレイ、プロジェクタ、プリンター、プロッター、音声出力装置などを用いることができる。
【０１３７】
ＩＦ６０６は、図１に示した記憶装置１０３及びＰＬＤ１０２とプロセッサ１０１との間におけるデータの経路に相当する。記憶装置１０３に格納されているアプリケーション１０４及びコンフィギュレーションデータ１０５は、ＩＦ６０６を介してプロセッサ１０１に入力される。また、ＰＬＤ１０２におけるスレッドの実行により得られたデータは、ＰＬＤ１０２からＩＦ６０６を介してプロセッサ１０１に入力される。また、プロセッサ１０１から出力される各種の命令やデータは、ＩＦ６０６を介して記憶装置１０３またはＰＬＤ１０２に送られる。
【０１３８】
なお、プロセッサ１０１は、ＰＬＤ１０２が有するＤＭＡＣとは別に、ＤＭＡＣを有していても良い。
【０１３９】
制御装置６０１において命令の実行が繰り返されることで、プログラムが実行される。
【０１４０】
次いで、図１に示したＬＥ１０６の、具体的な構成例について説明する。
【０１４１】
図１１（Ａ）に、ＬＥ１０６の一形態を例示する。図１１（Ａ）に示すＬＥ１０６は、ＬＵＴ（ルックアップテーブル）１８０と、レジスタ１８１とを有する。ＬＵＴ１８０は、コンフィギュレーションデータ１０５の内容によって、実行される論理演算が異なる。そして、コンフィギュレーションデータ１０５が確定すると、ＬＵＴ１８０は、複数の入力値に対する一の出力値が定まる。そして、ＬＵＴ１８０からは、上記出力値を含む出力信号が出力される。レジスタ１８１は、ＬＵＴ１８０からの出力信号を保持し、クロック信号ＣＬＫに同期して当該出力信号に対応した信号を出力する。
【０１４２】
なお、ＬＥ１０６がさらにマルチプレクサ回路を有し、当該マルチプレクサ回路によって、ＬＵＴ１８０からの出力信号がレジスタ１８１を経由するか否かを選択できるようにしても良い。
【０１４３】
また、コンフィギュレーションデータ１０５によって、レジスタ１８１の種類を定義できる構成にしても良い。具体的には、コンフィギュレーションデータ１０５によって、レジスタ１８１がＤ型レジスタ、Ｔ型レジスタ、ＪＫ型レジスタ、またはＲＳ型レジスタのいずれかの機能を有するようにしても良い。
【０１４４】
また、ＬＥ１０６が、図１に示したメモリエレメント１０８から送られてきたコンフィギュレーションデータ１０５を、ＬＥ１０６内において記憶するための記憶装置（コンフィギュレーションメモリ）を、有していても良い。図１１（Ｂ）に示すＬＥ１０６は、図１１（Ａ）に示したＬＥ１０６に、コンフィギュレーションメモリ１８２をさらに追加した構成を有する。コンフィギュレーションメモリ１８２を設けることで、同一のコンフィギュレーションデータ１０５に従って、ＬＥ１０６にて実行される論理演算を再度定める動作を、メモリエレメント１０８から直接送られてきたコンフィギュレーションデータ１０５を用いる場合よりも、より高速で行うことができる。
【０１４５】
次いで、ＬＥ１０６が有するＬＵＴ１８０の構成例について説明する。ＬＵＴ１８０は複数のマルチプレクサを用いて構成することができる。そして、複数のマルチプレクサの入力端子及び制御端子のうちのいずれかに、コンフィギュレーションデータ１０５が入力される構成とすることができる。
【０１４６】
図１２（Ａ）に、ＬＥ１０６が有するＬＵＴ１８０の一態様を示す。図１２（Ａ）において、ＬＵＴ１８０は、２入力のマルチプレクサを７つ（マルチプレクサ３１、マルチプレクサ３２、マルチプレクサ３３、マルチプレクサ３４、マルチプレクサ３５、マルチプレクサ３６、マルチプレクサ３７）用いて構成されている。マルチプレクサ３１乃至マルチプレクサ３４の各入力端子が、ＬＵＴ１８０の入力端子Ｍ１乃至Ｍ８に相当する。
【０１４７】
マルチプレクサ３１乃至マルチプレクサ３４の各制御端子は電気的に接続されており、上記制御端子が、ＬＵＴ１８０の入力端子ＩＮ３に相当する。マルチプレクサ３１の出力端子、及びマルチプレクサ３２の出力端子は、マルチプレクサ３５の２つの入力端子と電気的に接続され、マルチプレクサ３３の出力端子、及びマルチプレクサ３４の出力端子は、マルチプレクサ３６の２つの入力端子と電気的に接続されている。マルチプレクサ３５及びマルチプレクサ３６の各制御端子は電気的に接続されており、上記制御端子が、ＬＵＴ１８０の入力端子ＩＮ２に相当する。マルチプレクサ３５の出力端子、及びマルチプレクサ３６の出力端子は、マルチプレクサ３７の２つの入力端子と電気的に接続されている。マルチプレクサ３７の制御端子は、ＬＵＴ１８０の入力端子ＩＮ１に相当する。マルチプレクサ３７の出力端子がＬＵＴ１８０の出力端子ＯＵＴに相当する。
【０１４８】
入力端子Ｍ１乃至入力端子Ｍ８、及び入力端子ＩＮ１乃至入力端子ＩＮ３のいずれかに、メモリセル１７０からコンフィギュレーションデータ１０５の電位を入力することによって、ＬＵＴ１８０によって行われる論理演算の種類を定めることができる。
【０１４９】
例えば、図１２（Ａ）のＬＵＴ１８０において、入力端子Ｍ１乃至入力端子Ｍ８に、デジタル値が”０”、”１”、”０”、”１”、”０”、”１”、”１”、”１”であるコンフィギュレーションデータ１０５をそれぞれ入力した場合、図１２（Ｃ）に示す等価回路の機能を実現することができる。
【０１５０】
図１２（Ｂ）において、ＬＵＴ１８０は、２入力のマルチプレクサを３つ（マルチプレクサ４１、マルチプレクサ４２、マルチプレクサ４３）と、２入力のＯＲ回路４４とを用いて構成されている。
【０１５１】
マルチプレクサ４１の出力端子、及びマルチプレクサ４２の出力端子は、マルチプレクサ４３の２つの入力端子と電気的に接続されている。ＯＲ回路４４の出力端子はマルチプレクサ４３の制御端子に電気的に接続されている。マルチプレクサ４３の出力端子がＬＵＴ１８０の出力端子ＯＵＴに相当する。
【０１５２】
そして、マルチプレクサ４１の制御端子Ａ１、入力端子Ａ２及び入力端子Ａ３、マルチプレクサ４２の制御端子Ａ６、入力端子Ａ４及び入力端子Ａ５、ＯＲ回路４４の入力端子Ａ７及び入力端子Ａ８のいずれかに、コンフィギュレーションメモリから、当該コンフィギュレーションメモリに格納されたコンフィギュレーションデータに対応した出力信号を入力することによって、ＬＵＴ１８０によって行われる論理演算の種類を定めることができる。
【０１５３】
例えば、図１２（Ｂ）のＬＵＴ１８０において、入力端子Ａ２、入力端子Ａ４、入力端子Ａ５、制御端子Ａ６、入力端子Ａ８に、コンフィギュレーションメモリから、デジタル値が”０”、”１”、”０”、”０”、”０”である当該コンフィギュレーションメモリに格納されたコンフィギュレーションデータに対応した出力信号をそれぞれ入力した場合、図１２（Ｃ）に示す等価回路の機能を実現することができる。なお、上記構成の場合、制御端子Ａ１、入力端子Ａ３、入力端子Ａ７がそれぞれ入力端子ＩＮ１、入力端子ＩＮ２、入力端子ＩＮ３に相当する。
【０１５４】
なお、図１２（Ａ）及び図１２（Ｂ）では、２入力のマルチプレクサを用いて構成したＬＵＴ１８０の例を示したが、より多くの入力のマルチプレクサを用いて構成したＬＵＴ１８０であっても良い。
【０１５５】
また、ＬＵＴ１８０は、マルチプレクサの他に、ダイオード、抵抗素子、論理回路（或いは論理素子）、スイッチのいずれかまたは全てを更に有していても良い。論理回路（或いは論理素子）としては、バッファ、インバータ、ＮＡＮＤ回路、ＮＯＲ回路、スリーステートバッファ、クロックドインバータ等を用いることができる。スイッチとしては、例えばアナログスイッチ、トランジスタ等を用いることができる。
【０１５６】
また、図１２（Ａ）や図１２（Ｂ）に示したＬＵＴ１８０を用いて、図１２（Ｃ）の様な３入力１出力の論理演算を行う場合について示したがこれに限定されない。入力するコンフィギュレーションデータ１０５を適宜定めることによって、より多くの入力、多くの出力の論理演算を実現することができる。
【０１５７】
なお、コンフィギュレーションデータ１０５によって定められるのは、ＬＥ１０６で実行される論理演算だけではない。ＬＥ１０６どうしの接続構造も、コンフィギュレーションデータ１０５によって定められる。具体的に、ＬＥ１０６どうしの接続は、ロジックアレイ１０７に設けられた配線エレメントによって行われる。配線エレメントは、複数の配線で構成される配線群と、配線群を構成する配線どうしの接続を制御するスイッチとを有する。
【０１５８】
図１３（Ａ）にロジックアレイ１０７の構造の一部を、一例として模式的に示す。図１３（Ａ）に示すロジックアレイ１０７は、複数のＬＥ１０６と、複数のＬＥ１０６のいずれかに接続された配線群３２１と、配線群３２１を構成する配線どうしの接続を制御するスイッチ３２２とを有する。配線群３２１及びスイッチ３２２が、配線エレメント３２３に相当する。スイッチ３２２によって制御される配線どうしの接続構造は、コンフィギュレーションデータ１０５によって定められる。
【０１５９】
図１３（Ｂ）に、スイッチ３２２の構成例を示す。図１３（Ｂ）に示すスイッチ３２２は、配線群３２１に含まれる配線３２５と配線３２６の接続構造を制御する機能を有する。具体的に、スイッチ３２２は、トランジスタ３２７乃至トランジスタ３３２を有する。トランジスタ３２７は、配線３２５におけるＰｏｉｎｔＡと、配線３２６におけるＰｏｉｎｔＣの電気的な接続を制御する機能を有する。トランジスタ３２８は、配線３２５におけるＰｏｉｎｔＢと、配線３２６におけるＰｏｉｎｔＣの電気的な接続を制御する機能を有する。トランジスタ３２９は、配線３２５におけるＰｏｉｎｔＡと、配線３２６におけるＰｏｉｎｔＤの電気的な接続を制御する機能を有する。トランジスタ３３０は、配線３２５におけるＰｏｉｎｔＢと、配線３２６におけるＰｏｉｎｔＤの電気的な接続を制御する機能を有する。トランジスタ３３１は、配線３２５におけるＰｏｉｎｔＡとＰｏｉｎｔＢの電気的な接続を制御する機能を有する。トランジスタ３３２は、配線３２６におけるＰｏｉｎｔＣとＰｏｉｎｔＤの電気的な接続を制御する機能を有する。
【０１６０】
そして、トランジスタ３２７乃至トランジスタ３３２のオンまたはオフの選択（スイッチング）は、トランジスタ３２７乃至トランジスタ３３２のゲート電極３１０に与えられる、コンフィギュレーションデータ１０５の電位により行われる。
【０１６１】
また、スイッチ３２２は、配線群３２１と、ロジックアレイ１０７の出力端子３２４の、電気的な接続を制御する機能を有する。
【０１６２】
（実施の形態２）
本発明の一態様に係る半導体装置は、表示機器、パーソナルコンピュータ、記録媒体を備えた画像再生装置（代表的にはＤＶＤ：Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ等の記録媒体を再生し、その画像を表示しうるディスプレイを有する装置）に用いることができる。その他に、本発明の一態様に係る半導体装置を用いることができる電子機器として、携帯電話、携帯型を含むゲーム機、携帯情報端末、電子書籍、ビデオカメラ、デジタルスチルカメラ、ゴーグル型ディスプレイ（ヘッドマウントディスプレイ）、ナビゲーションシステム、音響再生装置（カーオーディオ、デジタルオーディオプレイヤー等）、複写機、ファクシミリ、プリンター、プリンター複合機、現金自動預け入れ払い機（ＡＴＭ）、自動販売機などが挙げられる。これら電子機器の具体例を図１４に示す。
【０１６３】
図１４（Ａ）は携帯型ゲーム機であり、筐体５００１、筐体５００２、表示部５００３、表示部５００４、マイクロホン５００５、スピーカー５００６、操作キー５００７、スタイラス５００８等を有する。なお、図１４（Ａ）に示した携帯型ゲーム機は、２つの表示部５００３と表示部５００４とを有しているが、携帯型ゲーム機が有する表示部の数は、これに限定されない。
【０１６４】
図１４（Ｂ）は携帯情報端末であり、第１筐体５６０１、第２筐体５６０２、第１表示部５６０３、第２表示部５６０４、接続部５６０５、操作キー５６０６等を有する。第１表示部５６０３は第１筐体５６０１に設けられており、第２表示部５６０４は第２筐体５６０２に設けられている。そして、第１筐体５６０１と第２筐体５６０２とは、接続部５６０５により接続されており、第１筐体５６０１と第２筐体５６０２の間の角度は、接続部５６０５により変更が可能となっている。第１表示部５６０３における映像の切り替えを、接続部５６０５における第１筐体５６０１と第２筐体５６０２との間の角度に従って、行う構成としても良い。また、第１表示部５６０３及び第２表示部５６０４の少なくとも一方に、位置入力装置としての機能が付加された表示装置を用いるようにしても良い。なお、位置入力装置としての機能は、表示装置にタッチパネルを設けることで付加することができる。或いは、位置入力装置としての機能は、フォトセンサとも呼ばれる光電変換素子を表示装置の画素部に設けることでも、付加することができる。
【０１６５】
図１４（Ｃ）はノート型パーソナルコンピュータであり、筐体５４０１、表示部５４０２、キーボード５４０３、ポインティングデバイス５４０４等を有する。
【０１６６】
図１４（Ｄ）はビデオカメラであり、第１筐体５８０１、第２筐体５８０２、表示部５８０３、操作キー５８０４、レンズ５８０５、接続部５８０６等を有する。操作キー５８０４及びレンズ５８０５は第１筐体５８０１に設けられており、表示部５８０３は第２筐体５８０２に設けられている。そして、第１筐体５８０１と第２筐体５８０２とは、接続部５８０６により接続されており、第１筐体５８０１と第２筐体５８０２の間の角度は、接続部５８０６により変更が可能となっている。表示部５８０３における映像の切り替えを、接続部５８０６における第１筐体５８０１と第２筐体５８０２との間の角度に従って行う構成としても良い。
【０１６７】
本実施の形態は、他の実施の形態と適宜組み合わせて実施することが可能である。
【符号の説明】
【０１６８】
３１    マルチプレクサ
３２    マルチプレクサ
３３    マルチプレクサ
３４    マルチプレクサ
３５    マルチプレクサ
３６    マルチプレクサ
３７    マルチプレクサ
４１    マルチプレクサ
４２    マルチプレクサ
４３    マルチプレクサ
４４    ＯＲ回路
１００    半導体装置
１０１    プロセッサ
１０２    ＰＬＤ
１０３    記憶装置
１０４    アプリケーション
１０５    コンフィギュレーションデータ
１０６    ＬＥ
１０７    ロジックアレイ
１０８    メモリエレメント
１０９    メモリモジュール
１１０    カウンタ
１１１    記憶装置
１１２    ＤＭＡＣ
１２０    メモリセル
１２０Ａ    スレッド
１２０Ｂ    スレッド
１２０Ｃ    スレッド
１２０Ｄ    スレッド
１２１    記憶素子
１２２    スイッチ
１２２ａ    トランジスタ
１３０    ゲート電極
１３１    ゲート絶縁膜
１３２    導電膜
１３３    導電膜
１３４    酸化物半導体膜
１３５    絶縁膜
１５０    メモリセル
１５１    トランジスタ
１５２    容量素子
１５３    メモリセル
１５４    トランジスタ
１５５    トランジスタ
１５６    容量素子
１５７    メモリセル
１５８    トランジスタ
１５９    トランジスタ
１６０    容量素子
１６１    駆動回路
１６２    入出力バッファ
１６３    メインアンプ
１６４    カラムデコーダ
１６５    ローデコーダ
１６６    スイッチ回路
１６７    プリチャージ回路
１６８    センスアンプ
１６９    回路
１７０    メモリセル
１７５    セルアレイ
１８０    ＬＵＴ
１８１    レジスタ
１８２    コンフィギュレーションメモリ
３１０    ゲート電極
３２１    配線群
３２２    スイッチ
３２３    配線エレメント
３２４    出力端子
３２５    配線
３２６    配線
３２７    トランジスタ
３２８    トランジスタ
３２９    トランジスタ
３３０    トランジスタ
３３１    トランジスタ
３３２    トランジスタ
５１５    トランジスタ
５１６    トランジスタ
５１７    トランジスタ
５１８    トランジスタ
５１９    トランジスタ
５２０    トランジスタ
５２１    トランジスタ
５２２    トランジスタ
５２３    トランジスタ
６０１    制御装置
６０２    演算装置
６０３    メインメモリ
６０４    入力装置
６０５    出力装置
６０６    ＩＦ
６０７    緩衝記憶装置
５００１    筐体
５００２    筐体
５００３    表示部
５００４    表示部
５００５    マイクロホン
５００６    スピーカー
５００７    操作キー
５００８    スタイラス
５４０１    筐体
５４０２    表示部
５４０３    キーボード
５４０４    ポインティングデバイス
５６０１    筐体
５６０２    筐体
５６０３    表示部
５６０４    表示部
５６０５    接続部
５６０６    操作キー
５８０１    筐体
５８０２    筐体
５８０３    表示部
５８０４    操作キー
５８０５    レンズ
５８０６    接続部
【図１】
2013251889.tif 000003
【図２】
2013251889.tif 000004
【図３】
2013251889.tif 000005
【図４】
2013251889.tif 000006
【図５】
2013251889.tif 000007
【図６】
2013251889.tif 000008
【図７】
2013251889.tif 000009
【図８】
2013251889.tif 000010
【図９】
2013251889.tif 000011
【図１０】
2013251889.tif 000012
【図１１】
2013251889.tif 000013
【図１２】
2013251889.tif 000014
【図１３】
2013251889.tif 000015
【図１４】
2013251889.tif 000016