JP2018109920A - プログラム、非一時的コンピュータ可読記憶媒体及び配置配線方法 - Google Patents

プログラム、非一時的コンピュータ可読記憶媒体及び配置配線方法 Download PDF

Info

Publication number
JP2018109920A
JP2018109920A JP2017000823A JP2017000823A JP2018109920A JP 2018109920 A JP2018109920 A JP 2018109920A JP 2017000823 A JP2017000823 A JP 2017000823A JP 2017000823 A JP2017000823 A JP 2017000823A JP 2018109920 A JP2018109920 A JP 2018109920A
Authority
JP
Japan
Prior art keywords
transistor
metal oxide
circuit
area
logic
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP2017000823A
Other languages
English (en)
Inventor
池田 隆之
Takayuki Ikeda
隆之 池田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Semiconductor Energy Laboratory Co Ltd
Original Assignee
Semiconductor Energy Laboratory Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Semiconductor Energy Laboratory Co Ltd filed Critical Semiconductor Energy Laboratory Co Ltd
Priority to JP2017000823A priority Critical patent/JP2018109920A/ja
Publication of JP2018109920A publication Critical patent/JP2018109920A/ja
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Design And Manufacture Of Integrated Circuits (AREA)
  • Logic Circuits (AREA)

Abstract

【課題】新規な半導体装置、プログラム又は配置配線方法の提供。【解決手段】論理ブロックの一部をバッファとして用いることにより、隣接しない論理ブロック同士を接続するためのパスを形成する。これにより、配線及びプログラム可能なスイッチを削減しつつ、論理ブロック同士を自由に接続することができる。また、論理ブロック同士がバッファを介して接続されるため、論理ブロック間で送受信される信号を増幅することができる。これにより、信号の遅延又は減衰を低減することができ、PLDの信頼性を向上させることができる。【選択図】図1

Description

本発明の一態様は、プログラム、記憶媒体及び配置配線方法に関する。
なお、本発明の一態様は、上記の技術分野に限定されない。本明細書等で開示する本発明の一態様の技術分野としては、半導体装置、表示装置、発光装置、蓄電装置、記憶装置、表示システム、電子機器、照明装置、入力装置、入出力装置、それらの駆動方法、又はそれらの製造方法、を一例として挙げることができる。
また、本明細書等において、半導体装置とは、半導体特性を利用することで機能しうる装置全般を指す。トランジスタ、半導体回路、演算装置、記憶装置等は半導体装置の一態様である。また、撮像装置、電気光学装置、発電装置(薄膜太陽電池、有機薄膜太陽電池等を含む)、及び電子機器は半導体装置を有している場合がある。
回路の構成をユーザーが任意に変更することが可能なデバイスとして、PLD(Programmable Logic Device)が広く知られている。PLDはその回路規模によって、SPLD(Simple Programmable Logic Device)、CPLD(Complex Programmable Logic Device)、FPGA(Field Programmable Gate Array)などに分類される。
特許文献1には、コンフィギュレーションメモリが酸化物半導体を用いたトランジスタによって構成されたFPGAが開示されている。
米国特許公開第2014/0159771号明細書
本発明の一態様は、新規な半導体装置、プログラム又は配置配線方法の提供を課題とする。又は、本発明の一態様は、面積の縮小が可能な半導体装置の提供を課題とする。又は、本発明の一態様は、配線の自由度の向上が可能な半導体装置の提供を課題とする。又は、本発明の一態様は、信頼性が高い半導体装置の提供を課題とする。
なお、本発明の一態様は、必ずしも上記の課題の全てを解決する必要はなく、少なくとも一の課題を解決できるものであればよい。また、上記の課題の記載は、他の課題の存在を妨げるものではない。これら以外の課題は、明細書、特許請求の範囲、図面などの記載から、自ずと明らかとなるものであり、明細書、特許請求の範囲、図面などの記載から、これら以外の課題を抽出することが可能である。
本発明の一態様に係るプログラムは、プログラマブルロジックデバイスの配置配線を行う機能を有するプログラムであって、論理回路を配置する順番を決定するリストを作成するステップと、リストに従って、第1の論理回路を第1の領域に配置するステップと、リストに従って、第2の論理回路を第2の領域に配置するステップと、第1の領域と第2の領域を接続するためのバッファを第3の領域に配置するステップと、を実行する機能を有し、第1の領域及び第2の領域は、プログラマブルロジックデバイスに配置される演算ブロックに対応するソフトウェア上の領域であり、第3の領域は、プログラマブルロジックデバイスに配置されるバッファブロックに対応するソフトウェア上の領域であるプログラムである。
また、本発明の一態様に係るプログラムにおいて、論理回路を配置する順番は、論理回路の接続数に基づいて決定されてもよい。
また、本発明の一態様に係るプログラムにおいて、第2の領域は、第1の論理回路と第2の論理回路を接続するパスのコストに基づいて決定されてもよい。
また、本発明の一態様に係るプログラムは、第2の論理回路を配置する領域が存在しない場合に、第1の論理回路を再配置するステップを有していてもよい。
また、本発明の一態様に係る記憶媒体は、上記のプログラムが記憶された非一時的コンピュータ可読記憶媒体である。
また、本発明の一態様に係る配置配線方法は、プログラマブルロジックデバイスの配置配線方法であって、論理回路を配置する順番を決定するリストを作成するステップと、リストに従って、第1の論理回路を、プログラマブルロジックデバイスに配置される演算ブロックに対応するソフトウェア上の領域である第1の領域に配置するステップと、リストに従って、第2の論理回路を、プログラマブルロジックデバイスに配置される演算ブロックに対応するソフトウェア上の領域である第2の領域に配置するステップと、第1の領域と第2の領域を接続するバッファを、プログラマブルロジックデバイスに配置されるバッファブロックに対応するソフトウェア上の領域である第3の領域に配置するステップと、を有する。
本発明の一態様により、新規な半導体装置、プログラム又は配置配線方法を提供することができる。又は、本発明の一態様により、面積の縮小が可能な半導体装置を提供することができる。又は、本発明の一態様により、配線の自由度の向上が可能な半導体装置を提供することができる。又は、本発明の一態様により、信頼性が高い半導体装置を提供することができる。
なお、これらの効果の記載は、他の効果の存在を妨げるものではない。また、本発明の一態様は、必ずしも、これらの効果の全てを有する必要はない。これら以外の効果は、明細書、特許請求の範囲、図面などの記載から、自ずと明らかとなるものであり、明細書、特許請求の範囲、図面などの記載から、これら以外の効果を抽出することが可能である。
PLDの構成例を示す図。 アレイの動作例を示す図。 ロジックアレイの構成例を示す図。 フローチャート。 フローチャート。 論理回路の配置例を示す図。 論理回路の配置例を示す図。 論理回路の配置例を示す図。 論理回路の配置例を示す図。 フローチャート。 論理回路の配置例を示す図。 LEの分配例を示す図。 情報処理装置の構成例を示す図。 LEの構成例を示す図。 LUTの構成例を示す図。 スイッチブロックの構成例を示す図。 スイッチの構成例を示す図。 タイミングチャート。 スイッチの構成例を示す図。 スイッチの構成例を示す図。 タイミングチャート。 トランジスタの構成例を示す図。 エネルギーバンド構造を示す図。 セルの構成例を示す図。 電子部品の作製方法例を説明するフローチャートおよび電子部品の構成例を示す図。 電子機器の構成例を示す図。
以下、本発明の実施の形態について図面を用いて詳細に説明する。ただし、本発明は以下の実施の形態における説明に限定されず、本発明の趣旨及びその範囲から逸脱することなくその形態及び詳細を様々に変更し得ることは、当業者であれば容易に理解される。したがって、本発明は、以下の実施の形態の記載内容に限定して解釈されるものではない。
また、本発明の一態様には、半導体装置、記憶装置、表示装置、撮像装置、RF(Radio Frequency)タグなど、あらゆる装置がその範疇に含まれる。また、表示装置には、液晶表示装置、有機発光素子に代表される発光素子を各画素に備えた発光装置、電子ペーパー、DMD(Digital Micromirror Device)、PDP(Plasma Display Panel)、FED(Field Emission Display)などが、その範疇に含まれる。
また、本明細書等において、金属酸化物(metal oxide)とは、広い表現での金属の酸化物である。金属酸化物は、酸化物絶縁体、酸化物導電体(透明酸化物導電体を含む)、酸化物半導体(Oxide Semiconductorまたは単にOSともいう)などに分類される。例えば、トランジスタのチャネル形成領域に金属酸化物を用いた場合、当該金属酸化物を酸化物半導体と呼称する場合がある。つまり、金属酸化物が増幅作用、整流作用、及びスイッチング作用の少なくとも1つを有する場合、当該金属酸化物を、金属酸化物半導体(metal oxide semiconductor)、略してOSと呼ぶことができる。以下、チャネル形成領域に金属酸化物を含むトランジスタを、OSトランジスタとも表記する。
また、本明細書等において、窒素を有する金属酸化物も金属酸化物(metal oxide)と総称する場合がある。また、窒素を有する金属酸化物を、金属酸窒化物(metal oxynitride)と呼称してもよい。金属酸化物の詳細については後述する。
また、本明細書等において、XとYとが接続されている、と明示的に記載されている場合は、XとYとが電気的に接続されている場合と、XとYとが機能的に接続されている場合と、XとYとが直接接続されている場合とが、本明細書等に開示されているものとする。したがって、所定の接続関係、例えば、図又は文章に示された接続関係に限定されず、図又は文章に示された接続関係以外のものも、図又は文章に記載されているものとする。ここで、X、Yは、対象物(例えば、装置、素子、回路、配線、電極、端子、導電膜、層、など)であるとする。
XとYとが直接的に接続されている場合の一例としては、XとYとの電気的な接続を可能とする素子(例えば、スイッチ、トランジスタ、容量素子、インダクタ、抵抗素子、ダイオード、表示素子、発光素子、負荷など)が、XとYとの間に接続されていない場合であり、XとYとの電気的な接続を可能とする素子(例えば、スイッチ、トランジスタ、容量素子、インダクタ、抵抗素子、ダイオード、表示素子、発光素子、負荷など)を介さずに、XとYとが、接続されている場合である。
XとYとが電気的に接続されている場合の一例としては、XとYとの電気的な接続を可能とする素子(例えば、スイッチ、トランジスタ、容量素子、インダクタ、抵抗素子、ダイオード、表示素子、発光素子、負荷など)が、XとYとの間に1個以上接続されることが可能である。なお、スイッチは、オンオフが制御される機能を有している。つまり、スイッチは、オン状態、又は、オフ状態になり、電流を流すか流さないかを制御する機能を有している。又は、スイッチは、電流を流す経路を選択して切り替える機能を有している。なお、XとYとが電気的に接続されている場合は、XとYとが直接的に接続されている場合を含むものとする。
XとYとが機能的に接続されている場合の一例としては、XとYとの機能的な接続を可能とする回路(例えば、論理回路(インバータ、NAND回路、NOR回路など)、信号変換回路(DA変換回路、AD変換回路、ガンマ補正回路など)、電位レベル変換回路(電源回路(昇圧回路、降圧回路など)、信号の電位レベルを変えるレベルシフタ回路など)、電圧源、電流源、切り替え回路、増幅回路(信号振幅又は電流量などを大きく出来る回路、オペアンプ、差動増幅回路、ソースフォロワ回路、バッファ回路など)、信号生成回路、記憶回路、制御回路など)が、XとYとの間に1個以上接続されることが可能である。なお、一例として、XとYとの間に別の回路を挟んでいても、Xから出力された信号がYへ伝達される場合は、XとYとは機能的に接続されているものとする。なお、XとYとが機能的に接続されている場合は、XとYとが直接的に接続されている場合と、XとYとが電気的に接続されている場合とを含むものとする。
なお、XとYとが電気的に接続されている、と明示的に記載されている場合は、XとYとが電気的に接続されている場合(つまり、XとYとの間に別の素子又は別の回路を挟んで接続されている場合)と、XとYとが機能的に接続されている場合(つまり、XとYとの間に別の回路を挟んで機能的に接続されている場合)と、XとYとが直接接続されている場合(つまり、XとYとの間に別の素子又は別の回路を挟まずに接続されている場合)とが、本明細書等に開示されているものとする。つまり、電気的に接続されている、と明示的に記載されている場合は、単に、接続されている、とのみ明示的に記載されている場合と同様な内容が、本明細書等に開示されているものとする。
また、異なる図面間で同じ符号が付されている構成要素は、特に説明がない限り、同じものを表す。
また、図面上は独立している構成要素同士が電気的に接続しているように図示されている場合であっても、1つの構成要素が、複数の構成要素の機能を併せ持っている場合もある。例えば配線の一部が電極としても機能する場合は、一の導電膜が、配線の機能、及び電極の機能の両方の構成要素の機能を併せ持っている。したがって、本明細書における電気的に接続とは、このような、一の導電膜が、複数の構成要素の機能を併せ持っている場合も、その範疇に含める。
(実施の形態1)
本実施の形態では、本発明の一態様に係る半導体装置、プログラム、記憶媒体の構成例、配置配線方法の例について説明する。
<PLDの構成例>
図1(A)に、本発明の一態様に係るプログラマブルロジックデバイス(PLD)10の構成例を示す。PLD10は、回路構成を変更することが可能な半導体装置である。PLD10には、SPLD、CPLD、GAL、FPGAなどを自由に用いることができる。PLD10は、アレイ11、コントローラ12、駆動回路13、駆動回路14を有する。
アレイ11は、複数の論理ブロックLBを有するロジックアレイ20、複数の入出力ブロックIOBを有する入出力アレイ30を有する。論理ブロックLBは、入力された論理値を用いて演算を行う機能を有する。具体的には、論理ブロックLBはプログラム可能な論理素子(LE)を有し、LEによって論理演算が行われる。また、ロジックアレイ20はプログラム可能なスイッチ(RS)を有し、RSによってLE間の導通状態が制御される。
LEとRSは、それぞれ記憶回路を有する。LEが有する記憶回路に格納されたデータを変更することにより、LEによって行われる論理演算を変更し、論理ブロックLBの機能を制御することができる。また、RSが有する記憶回路に格納されたデータを変更することにより、LE間の導通状態を変更し、論理ブロックLB間の導通状態を制御することができる。なお、本明細書等において、論理ブロックLBの機能を制御するデータ、及び論理ブロックLB間の導通状態を制御するデータを、コンフィギュレーションデータという。また、コンフィギュレーションデータが記憶される記憶回路を、コンフィギュレーションメモリという。また、コンフィギュレーションメモリに記憶されたコンフィギュレーションデータを更新することを、再構成という。
入出力ブロックIOBは、論理ブロックLBに信号を出力する機能、及び、論理ブロックLBから入力された信号をコントローラ12、駆動回路13、又は駆動回路14に出力する機能を有する。入出力ブロックIOBと論理ブロックLB間の導通状態は、ロジックアレイ20に設けられたRSによって制御される。なお、図1(A)には入出力アレイ30がロジックアレイ20の上下に設けられている例を示しているが、入出力アレイ30の数や位置は自由に設定することができる。
コントローラ12は、PLD10に含まれる各種回路の動作を制御する機能を有する。具体的には、コントローラ12は、駆動回路13及び駆動回路14の動作を制御するための信号を生成する機能、及び、コンテキストを選択するための信号を生成する機能を有する。すなわちコントローラ12は、コンフィギュレーションコントローラとしての機能とコンテキストコントローラとしての機能を備える。
駆動回路13は、アレイ11に含まれるコンフィギュレーションメモリを選択する信号を生成する機能を有する。駆動回路14は、アレイ11に含まれるコンフィギュレーションメモリにコンフィギュレーションデータを供給する機能を有する。駆動回路13によって選択されたコンフィギュレーションメモリに、駆動回路14からコンフィギュレーションデータが供給されることにより、アレイ11の再構成が行われる。
なお、PLD10は上記の回路の他、位相同期回路、電源回路、クロック信号生成回路などを有していてもよい。
図1(B)に、ロジックアレイ20の構成例を示す。ロジックアレイ20には、複数の論理ブロックLBが周期的に配置されている。図1(B)には25個の論理ブロックLB(LB(0,0)乃至(4,4))を示しているが、ロジックアレイ20に含まれる論理ブロックLBの列数及び行数は自由に設定することができる。論理ブロックLBはそれぞれ、自身の出力信号と、隣接する論理ブロックLBの出力信号を、入力信号として用いることができる。
図2に、ロジックアレイ20に配置された論理ブロックLB間の接続関係の例を示す。図2には、9つの論理ブロックLB(LB(0,0)乃至(2,2))と、論理ブロックLBの入力端子と接続されたスイッチブロックSB(SB(0,0)乃至(2,2))を示している。スイッチブロックSBは、論理ブロックLB同士の導通状態、又は論理ブロックLBと入出力ブロックIOBの導通状態を制御する機能を有する。
論理ブロックLBは、並進対称性を有するように配置されている。ここでは代表例として、論理ブロックLB(1,1)に着目して接続関係を説明するが、他の論理ブロックLBの接続関係も同様である。
論理ブロックLB(1,1)は複数のLEを有し、LEの出力信号はそれぞれ論理ブロックLB(1,1)と接続されたスイッチブロックSB(1,1)に入力される。なお、図2には論理ブロックLBが5つのLEを有する構成例を示しているが、論理ブロックLBに含まれるLEの数は特に限定されない。また、LEに入力される信号の数、LEから出力される信号の数は、それぞれ自由に設定することができる。
論理ブロックLB(1,1)は、隣接する4つの論理ブロックLB(0,1)、(1,0)、(1,2)、(2,1)と、スイッチブロックSB(1,1)を介して接続されている。具体的には、論理ブロックLB(0,1)、(1,0)、(1,2)、(2,1)が有するLEの出力信号が、それぞれスイッチブロックSB(1,1)に入力される。また、論理ブロックLB(1,1)は、スイッチブロックSB(1,1)を介して入出力ブロックIOBと接続されている。
スイッチブロックSBは、LE及び入出力ブロックIOBから入力された信号から、論理ブロックLB(1,1)が有するLEに入力される信号を選択する機能を有する。なお、スイッチブロックSBは前述のRSによって構成されており、RSが有するコンフィギュレーションメモリに格納されたコンフィギュレーションデータに基づいて、LEに入力される信号が制御される。これにより、隣接する論理ブロックLB及び入出力ブロックIOBから入力された信号から、論理ブロックLB(1,1)による論理演算に用いられる信号を選択することができる。
上記の通り、論理ブロックLBそれぞれの接続先は、隣接する論理ブロックLBに限定されている。そのため、論理ブロックLB同士を接続するための配線、及びスイッチブロックSBに含まれるRSの数を大幅に減らすことができる。これにより、ロジックアレイ20の面積を削減することができる。
なお、論理ブロックLBの接続先を限定すると、面積が削減できる代わりに、論理ブロックLB同士のパスが減少するため、配線リソースの不足が生じやすくなる。ここで、本発明の一態様においては、論理ブロックLBの一部をバッファとして用いることにより、隣接しない論理ブロック同士を接続するためのパスを形成する。これにより、論理ブロックLB同士を自由に接続することができ、配線の自由度を向上させることができる。
また、論理ブロックLB同士がバッファを介して接続されるため、論理ブロックLB間で送受信される信号を増幅することができる。これにより、信号の遅延又は減衰を低減することができ、PLD10の信頼性を向上させることができる。さらに、論理ブロックLBをバッファとして用いることができるため、ロジックアレイ20に別途バッファを設ける必要がない。よって、ロジックアレイ20の面積の増加を防ぐことができる。
バッファとして用いることができる論理ブロックLBを備えたロジックアレイ20の構成例を、図3に示す。図3において、論理ブロックLBの一部はバッファとして用いられる。図中、実線で示す論理ブロックLBは、実際に演算を行う回路として用いられる論理ブロック(演算ブロックLB_A)であり、破線で示す論理ブロックLBは、バッファとして用いられる論理ブロック(バッファブロックLB_B)を表す。
図3(A)に示すロジックアレイ20は、2列2行のピッチで演算ブロックLB_Aが配置され、その他の論理ブロックLBがバッファブロックLB_Bとして用いられる。バッファブロックLB_Bは、演算ブロックLB_Aを接続するためのパスとして用いられる。例えば、論理ブロックLB_Aとして用いられる論理ブロックLB(0,0)と論理ブロックLB(0,2)が接続される場合、論理ブロックLB(0,1)がバッファとして機能し、パスが形成される。そして、論理ブロックLB(0,0)から出力された信号は、論理ブロックLB(0,1)によって増幅された後、論理ブロックLB(0,2)に入力される。
論理ブロックLBをバッファとして用いる場合は、例えば、論理ブロックLBに含まれるLEのルックアップテーブルの値を制御することにより、LEに入力された論理値がLEから出力信号として出力されるようにLEを構成すればよい。
なお、演算ブロックLB_Aのピッチは自由に設定することができる。例えば、図3(B)に示すように、3列2行のピッチで演算ブロックLB_Aを配置することもできる。この場合、演算ブロックLB_Aとして用いられる論理ブロックLB(0,0)と論理ブロックLB(0,3)は、論理ブロックLB(0,1)、(0,2)をバッファとして用いたパスによって接続される。
以上のように、論理ブロックLBの一部をバッファとして用いることにより、演算ブロックLB_A同士を自由に接続し、且つ、信号の増幅が可能なパスを形成することができる。
なお、ここでは一の論理ブロックLBの接続先を隣接する4つの論理ブロックLBに限定したが、一の論理ブロックLBと接続される他の論理ブロックLBの数は自由に設定することができる。例えば、論理ブロックLB(1,1)は、図3に示す他の8つの論理ブロックLBと接続される構成としてもよい。また、離れて配置された特定の論理ブロックLB同士を接続するための専用線が設けられていてもよい。
<配置配線方法の例>
PLD10のロジックアレイ20に回路を構成する際は、論理合成によって、ゲートレベルのネットリスト(論理回路の接続関係を記述するコード)を作成した後、配置配線を行う必要がある。この配置配線は、まず論理ブロックLBに配置する回路をソフトウェア上で決定し、その後、実際にロジックアレイ20を再構成することにより実現することができる。具体的には、ネットリストによって記述される回路を構成する複数の論理回路LCの配置順序を定めるリストを作成するステップと、当該リストが定める順番に従って論理回路LCをマップ(PLD10のロジックアレイ20に対応するソフトウェア上の領域)に配置するとともに、配置された論理回路LC間にバッファを配置するステップと、により、ソフトウェア上で回路の配置が決定される。この回路配置の決定は、プログラムによって行うことができる。そして、プログラムの実行によって得られた結果に従ってPLD10を再構成することにより、回路配置がロジックアレイ20に反映される。以下、プログラムによって回路配置を決定する方法の具体例について説明する。
[リストの作成]
図4は、ネットリストによって記述された回路を構成する論理回路LCを列挙したリストを作成する方法の例を示すフローチャートである。上記の通り、このリストによって論理回路LCの配置順序が決定される。なお、リスト作成の開始時点において、論理合成は既に完了しているものとする。
まず、マップを分割することにより、PLD10が有する論理ブロックLBに対応する領域LAを、ソフトウェア上に形成する(ステップS1)。領域LAの数は、PLD10が有する論理ブロックLBの数と同じとする。なお、領域LAにはLEが割り当てられており、当該LEの数は論理ブロックLBが有するLEの数と等しい。
次に、ネットリストによって記述された回路を構成する複数の論理回路LCから、一の論理回路LC(LC_1)を選択し、リストの先頭に登録する(ステップS2)。リストの先頭に登録される論理回路LCは自由に選択することができるが、回路配置の制限が比較的強い論理回路LCを選択することが好ましい。例えば、入出力ブロックと接続される論理回路LCや、他の論理回路LCとの接続数が多い論理回路LCなどを選択することが好ましい。
次に、リストに登録済みの論理回路LC(LC_1)と接続数が最も多い論理回路LC(LC_2)を選択し、リストの2番目に登録する(ステップS3)。なお、この接続数は自由に定義することができる。例えば、ある論理回路LCと接続されている他の論理回路LCの数によって定義してもよいし、ある論理回路LCと接続されている、他の論理回路LCのノードの数によって定義してもよい。また、論理回路LC_2の選択は、リストに登録済みの論理回路LCとの接続数だけでなく、入出力回路ブロックとの接続数など他の要素を考慮して行ってもよい。また、接続数が同じ論理回路LCが複数存在する場合は、他の条件によって論理回路LC_2を決定してもよい。
次に、リストに未登録の論理回路LCある場合は(ステップS4でNO)、リストに登録済みの論理回路LC_1及び論理回路LC_2と接続数が最も多い論理回路LC_3を選択し、リストの3番目に登録する(ステップS3)。この手順を繰り返し、論理回路LCを順次リストに登録する。そして、全ての論理回路LCがリストに登録されると(ステップS4でYES)、論理回路LCをマップ上に配置するフローに移行する。
[論理回路の配置・バッファの形成]
図5は、リストに登録された論理回路LCを、マップに設けられた領域LAに順に配置する方法の例を示すフローチャートである。また、図6乃至図9に、マップ100内の領域LAに論理回路LCが配置される様子を示す。なお、図6乃至図9に示す領域LA(0,0)乃至(4,4)はそれぞれ、図3に示す論理ブロック(0,0)乃至(4,4)に対応するソフトウェア上の領域である。また、実線で示す領域LAは、論理回路LCが配置される領域LAを表し、破線で示す領域LAは、バッファとして用いられる領域LAを表す。
なお、ここでは2列2行のピッチで領域LAが配置されている例を示しているが、ピッチはPLD10に合わせて自由に設定することができる。また、論理合成によって得られたネットリストが、配置配線が可能な全ネットリストの部分グラフである場合には、ピッチを1列1行に設定することができる。
まず、リストの先頭に登録された論理回路LC_1を領域LAに配置する(ステップS11、図6)。ここで、論理回路LC_1は、入出力ブロックIOBと接続される、回路配置の制限が比較的強い論理回路であるとする。そのため、論理回路LC_1は、入出力ブロックIOBに近接する領域LA(0,0)に配置される。
また、領域LA(0,0)と入出力ブロックIOB間のパスを形成するため、領域LA(0,1)にバッファが形成される。これにより、論理回路LC_1の出力信号を、バッファを介して入出力ブロックIOBに供給することができる。
次に、リストの2番目に登録された論理回路LC_2が選択され(ステップS12)、領域LAに配置される。なお、論理回路LC_2は、論理回路CL_1と接続される論理回路であるとする。ここで、論理回路LC_2の配置は、論理回路LC_2を領域LAに順次配置していき、配置時のパスのコストを算出することにより決定する。パスのコストは、パスの距離、パスを通過する信号の遅延時間などを用いて算出することができる。また、パスの距離は、パスに含まれる論理回路LC、バッファ、又はノードの個数などを用いて算出することができる。
具体的には、まず、図7に示すように、論理回路LC_2を領域LA(0,2)に配置する(ステップS13)。そして、領域LA(0,2)と領域LA(0,0)間のパスを形成するため、領域LA(0,1)にバッファが形成される(ステップS14)。なお、領域LA(0,0)と入出力ブロックIOBを接続するバッファと、領域LA(0,2)と領域LA(0,0)を接続するバッファは、それぞれ別のLEによって形成される。
その後、領域LA(0,2)と領域LA(0,0)間のパスのコストが算出される(ステップS15)。ここでは一例として、パスのコストを、(パス全体の距離)/(接続される論理回路LCの個数)によって定義する。パス全体の距離は、隣接する領域LA間の距離を1として算出する。この場合、図7に示す領域LA(0,2)と領域LA(0,0)間のパスのコストは、2/2=1となる。
次に、論理回路LC_2を他の領域LAに配置する(ステップS16でNO、ステップS13)。図8に、論理回路LC_2が領域LA(0,4)に配置された構成を示す。そして、領域LA(0,4)と領域LA(0,0)間のパスを形成するため、領域LA(1,0)、(1,1)、(1,2)、(1,3)、(0,3)にバッファが形成される(ステップS14)。その後、領域LA(0,4)と領域LA(0,0)間のパスのコストが算出される(ステップS15)。図8に示す領域LA(0,4)と領域LA(0,0)間のパスのコストは、6/2=3となる。
上記の手順を繰り返し、論理回路LC_2をマップ100内の領域LAに順次配置し、それぞれの配置においてパスのコストを算出する。そして、全ての配置の検証が完了した後(ステップS16でYES)、論理回路LC_2の配置が確定される(ステップS17)。ここでは、論理回路LC_1と論理回路LC_2を接続するパスのコストが最も小さくなる領域LAが、論理回路LC_2の配置先として選択される。例えば、図7と図8を比較すると、図7に示すパスのコストは図8に示すパスのコストよりも小さいため、論理回路LC_2の配置先として、領域(0,4)よりも領域(0,2)が優先的に選択される。
その後、リストの3番目に登録された論理回路LC_3が選択され(ステップS18でNO、ステップS12)、同様によって領域LAに配置される(図9)。なお、論理回路LC_3は、論理回路CL_1及び論理回路CL_2と接続される論理回路であるとする。このような手順を繰りかえすことにより、全ての論理回路LCの配置が完了すると(ステップS18でYES)、マップ100上にネットリストによって記述された回路が構成される。
上記の方法をプログラムによって実行することにより、ソフトウェア上で回路配置を決定することができる。その後、この回路配置に従ってPLD10のロジックアレイ20を再構成することにより、マップ上に形成された回路をロジックアレイ20に反映させることができる。
[再配置]
図4、図5に示す手順に従って論理回路LCを配置する際、他の論理回路LCと適切な接続を行うために必要な領域LAが存在せず、論理回路LCを配置できない事態が生じ得る。この場合は、既に配置が確定した論理回路LCを再配置することが好ましい。図10は、論理回路LCの配置が不可能になった際に、既に配置が確定した論理回路LCを再配置する手順の例を示すフローチャートである。なお、図10に示す手順はプログラムによって実行することができる。
まず、ステップS16において全ての配置の検証が完了し、論理回路LCを配置することが可能な領域LAが存在する場合は(ステップS21でYES)、通常通り配置を確定する(ステップS17)。一方、論理回路LCを配置できる領域LAが存在しない場合は(ステップS21でNO)、確定した論理回路LCの再配置を検討する(ステップS22)。
論理回路LCの再配置の余地がある場合は(ステップS22でYES)、直前に配置が確定した論理回路LCを、別の領域LAに再配置する(ステップS23)。なお、再配置先はパスのコストを考慮して決定することができる。例えば、論理回路LC_3を配置できる領域LAが存在しない場合は、図11に示すように、論理回路CL_2が配置される領域をパスのコストが小さい他の領域LA(2,0)などに変更する。なお、仮に直前に配置が確定した論理回路LCを配置できる他の領域LAが存在しない場合は、さらに前に配置が確定した論理回路LCを再配置する。
その後、ステップS13に戻り、論理回路LCの配置を再度検証する。その結果、論理回路LCの配置が可能となったら(ステップS21でYES)、配置を確定する(ステップS17)。
一方、配置が確定した全ての論理回路LCの再配置を検証しても論理回路LCを配置できない場合は(ステップS22でNO)、領域LAを構成するLEの演算内容の変更を検討する(ステップS24)。
LEの変更の余地がある場合は(ステップS24でYES)、LEを変更する。例えば図12(A)に示すように、ある領域LAが入出力ブロックIOBへの信号の出力を担うLEで埋められ、入出力ブロックIOBに出力される信号Soutが当該領域LAに集中すると、他のパスを形成できなくなり、論理回路LCの配置が制限されることがある。この場合、図12(B)に示すようにLEを変更し、入出力ブロックIOBへの信号の出力を担うLEを他の領域LAに分配することにより、パスの形成の自由度が上がり、論理回路LCの配置が可能となる場合がある。このように、LEの変更によって論理回路LCの配置を試みる。なお、LEを変更する場合は、図4において作成したリストを更新する必要があるため、ステップS1に戻り、リストの作成及び論理回路LCの配置をやり直す。
一方、LEの変更を行っても論理回路LCの配置ができない場合、又はLEの変更ができない場合は(ステップS24でNO)、論理ブロックLB及び領域LAのピッチを変更する(ステップS26、図3参照)。なお、ピッチを変更した場合も、ステップS1に戻り、リストの作成及び論理回路LCの配置をやり直す。
以上のように、論理回路LCの配置が不可能となった場合に、既に確定した論理回路LCの配置を変更することにより、改めて論理回路LCの配置を行うことができる。
<情報処理装置の構成例>
図4、図5、図10に示す処理を行うプログラムは、情報処理装置を用いて実行することができる。図13に、情報処理装置の構成例を示す。
情報処理装置200は、演算装置210、入出力装置220を有する。演算装置210は、上記プログラムの実行などの、各種演算を行う機能を有する。演算装置210は、演算部211、記憶部212、伝送路213、インターフェース214を有する。入出力装置220は、表示部221、操作部222、入出力部223、通信部224を有する。
記憶部212は、本実施の形態で説明したプログラムなどの情報を記憶する機能を有する。記憶部212には、非一時的コンピュータ可読記憶媒体を用いることができ、DRAM(Dynamic Random Access Memory)、SRAM(Static Random Access Memory)などの記憶装置によって構成することができる。演算部211は、記憶部212に記憶された情報を用いて演算を行う機能を有する。記憶部212に記憶されたプログラムは、演算部211によって実行される。
伝送路213は、情報を伝達する機能を有する。演算部211、記憶部212、インターフェース214間の情報の送受信は、伝送路213を介して行うことができる。
インターフェース214は、入出力装置220に情報を送信する機能、及び入出力装置220から出力された情報を受信する機能を有する。
表示部221は、演算装置210から入力された情報に基づいて映像を表示する機能を有する。表示部221としては、液晶ディスプレイ、有機ELディスプレイなどの表示装置を用いることができる。
操作部222は、ユーザーによる操作に応じて、演算装置210に命令を送信する機能を有する。操作部222としては、キーボード、マウス、操作ボタン、タッチセンサ、ポインティングデバイスなどを用いることができる。
入出力部223は、演算装置210への情報の入力、又は演算装置210から入力された情報の出力を行う機能を有する。入出力部223としては、カメラ、マイク、外部記憶装置、スキャナー、スピーカ、プリンタなどを用いることができる。また、外部記憶装置としては、ハードディスク、リムーバブルメモリなどを用いることができる。
通信部224は、演算装置210から入力された情報を情報処理装置200の外部に送信する機能、及び、情報処理装置200の外部から出力された情報を受信して演算装置210に出力する機能を有する。通信部224としては、ハブ、ルータ、モデムなどを用いることができる。情報の送受信には、有線を用いても無線(例えば、電波、赤外線など)を用いてもよい。
本実施の形態で説明したプログラムの実行によって得られた回路配置に関する情報は、通信部224を介してPLD10に送信することができる。そして、図1に示すコントローラ12は、当該情報に基づいてロジックアレイ20を再構成する。これにより、ソフトウェアのマップ上に形成された回路をロジックアレイ20に反映させることができる。
なお、PLD10は情報処理装置200に内蔵されていてもよい。この場合、プログラムの実行によって得られた回路配置に関する情報は、インターフェース214を介してPLD10に入力してもよい。
本実施の形態は、他の実施の形態の記載と適宜組み合わせることができる。
(実施の形態2)
本実施の形態では、上記実施の形態で説明したPLDの具体例について説明する。
<LEの構成例>
図14に、LE300の構成例を示す。LE300は、図2に示すLEとして用いることができる。
LE300は、LUT(ルックアップテーブル)310と、フリップフロップ320と、コンフィギュレーションメモリ330と、を有する。コンフィギュレーションメモリ330は、コンフィギュレーションデータを記憶する機能を有する。LUT310は、コンフィギュレーションメモリ330から送られてくるコンフィギュレーションデータの内容によって、定められる論理回路が異なる。そして、コンフィギュレーションデータが確定すると、LUT310は、入力端子301に与えられた複数の入力信号の入力値に対する、一の出力値が定まる。そして、LUT310からは、上記出力値を含む信号が出力される。フリップフロップ320は、LUT310から出力される信号を保持し、クロック信号CLKに同期して当該信号に対応した出力信号を、出力端子302及び出力端子303から出力する。
なお、LE300がさらにマルチプレクサ回路を有し、当該マルチプレクサ回路によって、LUT310からの出力信号がフリップフロップ320を経由するか否かを選択できるようにしても良い。
また、コンフィギュレーションデータによって、フリップフロップ320の種類を定義できる構成にしても良い。具体的には、コンフィギュレーションデータによって、フリップフロップ320がD型フリップフロップ、T型フリップフロップ、JK型フリップフロップ、またはRS型フリップフロップのいずれかの機能を有するようにしても良い。
<LUTの構成例>
次に、LE300が有するLUT310の構成例について説明する。LUT310は複数のマルチプレクサを用いて構成することができる。そして、複数のマルチプレクサの入力端子及び制御端子のうちのいずれかにコンフィギュレーションデータが入力される構成とすることができる。
図15(A)に、LE300が有するLUT310の一態様を示す。
図15(A)において、LUT310は、2入力のマルチプレクサを7つ(マルチプレクサMUX1乃至MUX7)用いて構成されている。マルチプレクサMUX1乃至MUX4の各入力端子が、LUT310の入力端子M1乃至M8に相当する。
マルチプレクサMUX1乃至MUX4の各制御端子は接続されており、この制御端子が、LUT310の入力端子IN3に相当する。マルチプレクサMUX1の出力端子、及びマルチプレクサMUX2の出力端子は、マルチプレクサMUX5の2つの入力端子と接続され、マルチプレクサMUX3の出力端子、及びマルチプレクサMUX4の出力端子は、マルチプレクサMUX6の2つの入力端子と接続されている。マルチプレクサMUX5、MUX6の各制御端子は接続されており、この制御端子が、LUT310の入力端子IN2に相当する。マルチプレクサMUX5の出力端子、及びマルチプレクサMUX6の出力端子は、マルチプレクサMUX7の2つの入力端子と接続されている。マルチプレクサMUX7の制御端子は、LUT310の入力端子IN1に相当する。マルチプレクサMUX7の出力端子がLUT310の出力端子OUTに相当する。
入力端子M1乃至入力端子M8に、コンフィギュレーションメモリから、当該コンフィギュレーションメモリに格納されたコンフィギュレーションデータに対応した出力信号を入力することによって、LUT310によって行われる論理演算の種類を定めることができる。
例えば、図15(A)のLUT310において、入力端子M1乃至M8に、コンフィギュレーションメモリから、デジタル値が“0”、“1”、“0”、“1”、“0”、“1”、“1”、“1”である当該コンフィギュレーションメモリに格納されたコンフィギュレーションデータに対応した出力信号をそれぞれ入力した場合、図15(C)に示す等価回路の機能を実現することができる。
図15(B)に、LE300が有するLUT310の別の一態様を示す。
図15(B)において、LUT310は、2入力のマルチプレクサを3つ(マルチプレクサMUX11乃至MUX13)と、2入力のOR回路とを用いて構成されている。
マルチプレクサMUX11の出力端子、及びマルチプレクサMUX12の出力端子は、マルチプレクサMUX13の2つの入力端子と接続されている。OR回路の出力端子はマルチプレクサMUX13の制御端子に接続されている。マルチプレクサMUX13の出力端子がLUT310の出力端子OUTに相当する。
そして、マルチプレクサMUX11の制御端子A1、入力端子A2、A3、マルチプレクサMUX12の制御端子A6、入力端子A4、A5、OR回路の入力端子A7、入力端子A8のいずれかに、コンフィギュレーションメモリから、当該コンフィギュレーションメモリに格納されたコンフィギュレーションデータに対応した出力信号を入力することによって、LUT310によって行われる論理演算の種類を定めることができる。
例えば、図15(B)のLUT310において、入力端子A2、入力端子A4、入力端子A5、制御端子A6、入力端子A8に、コンフィギュレーションメモリから、デジタル値が“0”、“1”、“0”、“0”、“0”である当該コンフィギュレーションメモリに格納されたコンフィギュレーションデータに対応した出力信号をそれぞれ入力した場合、図15(C)に示す等価回路の機能を実現することができる。なお、上記構成の場合、制御端子A1、入力端子A3、入力端子A7がそれぞれ入力端子IN1、入力端子IN2、入力端子IN3に相当する。
なお、図15(A)、(B)では、2入力のマルチプレクサを用いて構成したLUT310の例を示したが、より多くの入力のマルチプレクサを用いて構成したLUT310であっても良い。
また、LUT310は、マルチプレクサの他に、ダイオード、抵抗素子、論理回路(或いは論理素子)、スイッチのいずれかまたは全てを更に有していても良い。論理回路(或いは論理素子)としては、バッファ、インバータ、NAND回路、NOR回路、スリーステートバッファ、クロックドインバータ等を用いることができる。スイッチとしては、例えばアナログスイッチ、トランジスタ等を用いることができる。
また、図15(A)、(B)に示したLUT310を用いて、図15(C)の様な3入力1出力の論理演算を行う場合について示したがこれに限定されない。LUT310及び入力するコンフィギュレーションデータを適宜定めることによって、より多くの入力、多くの出力の論理演算を実現することができる。
<スイッチブロックの構成例>
次に、図2に示すスイッチブロックSBの構成例について説明する。図16に、スイッチブロックSBの具体的な構成例を示す。配線L1、L2、L3は、図2における論理ブロックLB又は入出力ブロックIOBと接続されている配線である。また、配線IOは、図2におけるLEと接続された配線である。配線L1、L2、L3に供給された信号のいずれかが、スイッチSWを介してLEに出力される。
なお、ここでは配線L1、L2、L3、LOがそれぞれ複数設けられた構成例を示している。各スイッチSWは、複数の配線L1、複数の配線L2、及び複数の配線L3の全てと、複数の配線LOの一つとの間の接続を制御する。この接続の制御は、スイッチSWに格納されたコンフィギュレーションデータを制御することによって行うことができる。すなわち、スイッチSWはスイッチブロックSBを構成するRSとしての機能を有する。
スイッチSW1は、複数の配線L1、複数の配線L2、及び複数の配線L3の全てと、配線LO−1との間の接続を制御する。具体的に、スイッチSW1は、複数の配線L1、複数の配線L2、及び複数の配線L3のうち、一の配線をコンフィギュレーションデータに従って選択し、選択された当該一の配線と配線LO−1とを接続する機能を有する。
また、スイッチSW2は、複数の配線L1、複数の配線L2、及び複数の配線L3の全てと、配線LO−2との間の接続を制御する。具体的には、スイッチSW2は、複数の配線L1、複数の配線L2、及び複数の配線L3のうち、一の配線をコンフィギュレーションデータに従って選択し、選択された当該一の配線と配線LO−2とを接続する機能を有する。
また、スイッチSW3は、複数の配線L1、複数の配線L2、及び複数の配線L3の全てと、配線LO−3との間の接続を制御する。具体的には、スイッチSW3は、複数の配線L1、複数の配線L2、及び複数の配線L3のうち、一の配線をコンフィギュレーションデータに従って選択し、選択された当該一の配線と配線LO−3とを接続する機能を有する。
[スイッチSWの構成例1]
次いで、図16に示したスイッチSWの具体的な構成例について説明する。図17に、スイッチSWの回路構成を一例として示す。スイッチSWは、配線または端子どうしの電気的な接続を制御するトランジスタTr1と、コンフィギュレーションデータによって定められた量の電荷を、トランジスタTr1のゲートにおいて供給、保持、放出するためのトランジスタTr2とを、複数組有する。
図17では、上記各組を、セルMCとして図示する。図17に示すスイッチSWには、複数の配線L1、複数の配線L2、及び複数の配線L3にそれぞれ対応したセルMCが設けられている。なお、図16では、複数の配線L1、複数の配線L2、及び複数の配線L3の総数が9本である場合を例示しているため、スイッチSWは、セルMC−1乃至MC−9からなる9つのセルMCを、少なくとも有する。
そして、各セルMCは、トランジスタTr1、Tr2に加えて、トランジスタTr1のゲートと接続された容量素子C1を、有する。なお、容量素子C1は、トランジスタTr1のゲートに蓄積された電荷を保持する機能の他、トランジスタTr1のゲートを浮遊状態に保ちつつ、配線RLの電位の変化分をトランジスタTr1のゲートの電位に加算する機能を有する。
具体的に、トランジスタTr1が有するソース又はドレインは、一方が配線LOに接続され、他方が、複数の配線L1、複数の配線L2、及び複数の配線L3のうちの一の配線に接続されている。トランジスタTr2が有するソース又はドレインは、一方がトランジスタTr1のゲートに接続され、他方が配線BLに接続されている。トランジスタTr2のゲートは、複数の配線WL(配線WL−1乃至WL−9)の一つに接続されている。容量素子C1が有する一対の電極は、一方が複数の配線RL(配線RL−1乃至RL−9)の一つに接続されており、他方がトランジスタTr1のゲートに接続されている。
なお、トランジスタのソースとは、活性層の一部であるソース領域、或いは活性層に接続されたソース電極を意味する。同様に、トランジスタのドレインとは、活性層の一部であるドレイン領域、或いは活性層に接続されたドレイン電極を意味する。また、ゲートはゲート電極を意味する。
トランジスタが有するソースとドレインは、トランジスタの極性及び各端子に与えられる電位の高低によって、その呼び方が入れ替わる。一般的に、nチャネル型トランジスタでは、低い電位が与えられる端子がソースと呼ばれ、高い電位が与えられる端子がドレインと呼ばれる。また、pチャネル型トランジスタでは、低い電位が与えられる端子がドレインと呼ばれ、高い電位が与えられる端子がソースと呼ばれる。本明細書では、便宜上、ソースとドレインとが固定されているものと仮定して、トランジスタの接続関係を説明する場合があるが、実際には上記電位の関係に従ってソースとドレインの呼び方が入れ替わる。
セルMCは、必要に応じて、トランジスタ、ダイオード、抵抗素子、容量素子、インダクタなどのその他の回路素子を、さらに有していても良い。
[スイッチSWの動作例1]
次いで、図17に示したスイッチSWの動作の一例について、図18に示すタイミングチャートを用いて説明する。ただし、図18に示すタイミングチャートでは、トランジスタTr1及びトランジスタTr2がnチャネル型である場合を例示している。
まず、時刻T1乃至時刻T6において行われる、コンフィギュレーションデータの第1の書き込みについて説明する。時刻T1乃至時刻T6において、配線RLには接地電位GNDが与えられているものとする。
時刻T1乃至時刻T2において、配線WLのうち、配線WL−1に、接地電位GNDよりも高いハイレベルの電位VDDを与え、他の配線WLには、接地電位GNDよりも低いローレベルの電位VSSを与える。また、配線BLに電位VSSを与える。上記動作により、セルMC−1が有するトランジスタTr1のゲート(FD1)には、電位VSSが与えられる。よって、セルMC−1には、“0”のデジタル値に対応したコンフィギュレーションデータが格納される。
時刻T3乃至時刻T4において、配線WLのうち、配線WL−2にハイレベルの電位VDDを与え、他の配線WLにはローレベルの電位VSSを与える。また、配線BLにハイレベルの電位VDDを与える。上記動作により、セルMC−2が有するトランジスタTr1のゲート(FD2)には、電位VDDが与えられる。よって、セルMC−2には、“1”のデジタル値に対応したコンフィギュレーションデータが格納される。
時刻T5乃至時刻T6において、配線WLのうち、配線WL−3にハイレベルの電位VDDを与え、他の配線WLにはローレベルの電位VSSを与える。また、配線BLに電位VSSを与える。上記動作により、セルMC−3が有するトランジスタTr1のゲート(FD3)には、電位VSSが与えられる。よって、セルMC−3には、“0”のデジタル値に対応したコンフィギュレーションデータが格納される。
なお、図18に示すタイミングチャートでは、セルMC−1乃至MC−3へのコンフィギュレーションデータの第1の書き込みについてのみ示しているが、セルMC−4乃至MC−9へのコンフィギュレーションデータの第1の書き込みも、同様に行う。ただし、セルMC−1乃至MC−9のうち、第1の書き込みにより“1”のデジタル値に対応したコンフィギュレーションデータが格納されるセルMCは、一つのみである。
次いで、第1の書き込みによりセルMCに格納されたコンフィギュレーションデータに従って行われる、第1の論理回路の切り換えについて説明する。
時刻T7乃至時刻T8において、配線RLにハイレベルの電位VDDが与えられる。時刻T7乃至時刻T8において、セルMC−1ではトランジスタTr1が非導通状態、セルMC−2ではトランジスタTr1が導通状態、セルMC−3ではトランジスタTr1が非導通状態である。したがって、配線L1−2と配線LO−1が導通状態となり、配線L1−2の電位が配線LO−1に与えられる。具体的に、図18に示すタイミングチャートでは、電位VDDが配線LO−1に与えられる場合を例示している。
次いで、時刻T8乃至時刻T13において行われる、コンフィギュレーションデータの第2の書き込みについて説明する。時刻T8乃至時刻T13において、配線RLには接地電位GNDが与えられているものとする。
時刻T8乃至時刻T9において、配線WLのうち、配線WL−1にハイレベルの電位VDDを与え、他の配線WLにはローレベルの電位VSSを与える。また、配線BLにハイレベルの電位VDDを与える。上記動作により、セルMC−1が有するトランジスタTr1のゲート(FD1)には、電位VDDが与えられる。よって、セルMC−1には、“1”のデジタル値に対応したコンフィギュレーションデータが格納される。
時刻T10乃至時刻T11において、配線WLのうち、配線WL−2にハイレベルの電位VDDを与え、他の配線WLにはローレベルの電位VSSを与える。また、配線BLに電位VSSを与える。上記動作により、セルMC−2が有するトランジスタTr1のゲート(FD2)には、電位VSSが与えられる。よって、セルMC−2には、“0”のデジタル値に対応したコンフィギュレーションデータが格納される。
時刻T12乃至時刻T13において、配線WLのうち、配線WL−3にハイレベルの電位VDDを与え、他の配線WLにはローレベルの電位VSSを与える。また、配線BLに電位VSSを与える。上記動作により、セルMC−3が有するトランジスタTr1のゲート(FD3)には、電位VSSが与えられる。よって、セルMC−3には、“0”のデジタル値に対応したコンフィギュレーションデータが格納される。
なお、図18に示すタイミングチャートでは、セルMC−1乃至MC−3へのコンフィギュレーションデータの第2の書き込みについてのみ示しているが、セルMC−4乃至MC−9へのコンフィギュレーションデータの第2の書き込みも、同様に行う。ただし、セルMC−1乃至セルMC−9のうち、第2の書き込みにより“1”のデジタル値に対応したコンフィギュレーションデータが格納されるセルMCは、一つのみである。
次いで、第2の書き込みによりセルMCに格納されたコンフィギュレーションデータに従って行われる、論理回路の切り換えについて説明する。
時刻T14乃至時刻T15において、配線RLにハイレベルの電位VDDが与えられる。時刻T14乃至時刻T15において、セルMC−1は導通状態、セルMC−2は非導通状態、セルMC−3は非導通状態である。したがって、配線L1−1と配線LO−1が導通状態となり、配線L1−1の電位が配線LO−1に与えられる。具体的に、図18に示すタイミングチャートでは、接地電位GNDが配線LO−1に与えられる場合を例示している。
なお、コンフィギュレーションデータの書き込みに際し、配線L1乃至L3の電位と、配線LOの電位とを、同じ高さに保つことが望ましい。上記構成により、コンフィギュレーションデータの書き込み中に、トランジスタTr1が導通状態となっても、トランジスタTr1を介して過大な電流が配線L1乃至L3のいずれかと、配線LOとの間に流れるのを防ぐことができる。
また、配線LOの電位は、ラッチ回路などにより所定の高さに保持しておくことが好ましい。上記構成により、配線LOの電位が浮遊状態になることを防止でき、配線LOの電位が入力端子に与えられるLEにおいて、過大な電流が生じるのを防止することができる。
上述したように、コンフィギュレーションデータに従って、スイッチSWが有する上記複数のセルMCのいずれか一が導通状態になることで、スイッチSWを介して、複数の配線L1、複数の配線L2、及び複数の配線L3のうちの一の配線と、配線LOの接続構造が定まる。
なお、トランジスタTr2としては、OSトランジスタを用いることが好ましい。金属酸化物は、シリコンなどの半導体よりもエネルギーギャップが大きく、少数キャリア密度を低くすることができるため、OSトランジスタがオフ状態であるときに、OSトランジスタのソースとドレイン間を流れる電流は極めて小さい。そのため、OSトランジスタを用いた場合、チャネル形成領域にシリコンを有するトランジスタ(以下、Siトランジスタともいう)などを用いる場合と比較して、長期間にわたってコンフィギュレーションメモリに電荷を保持することができる。これにより、スイッチSWへの電力の供給が停止された期間においても、回路構成を維持することができる。
上記構成を有するスイッチSWでは、コンフィギュレーションデータに従って、配線または端子どうしの電気的な接続を制御するトランジスタTr1の導通状態が定められ、トランジスタTr2により、上記導通状態が保持される。よって、本発明の一態様では、スイッチブロックSBが、コンフィギュレーションメモリとしての機能と、メモリエレメントとしての機能を併せ持っており、なおかつ、各セルMCの素子数がSRAMよりも小さい。したがって、コンフィギュレーションメモリと、メモリエレメントとを両方設ける従来の構成のPLDよりも、コンフィギュレーションデータを格納するための記憶装置の面積を、小さく抑えることができる。
また、トランジスタTr2としてOSトランジスタを用いることにより、スイッチブロックSBにおけるデータの保持時間を、DRAMを用いた場合よりも長くすることができる。よって、データの書き直しの頻度を少なくでき、それにより消費電力を小さく抑えることができる。
[スイッチSWの構成例2]
次いで、図15に示したスイッチSWの、図17とは異なる別の具体的な構成例について説明する。
図19に、スイッチSWの回路構成を一例として示す。スイッチSWは、配線または端子どうしの電気的な接続を制御するトランジスタTr1と、コンフィギュレーションデータによって定められた量の電荷を、トランジスタTr1のゲートにおいて供給、保持、放出するための、オフ電流の著しく小さいトランジスタTr2と、トランジスタTr2に直列に接続されたトランジスタTr3とを、複数組有する。
なお、本明細書において、トランジスタが直列に接続されている状態とは、例えば、第1のトランジスタのソースまたはドレインの一方のみが、第2のトランジスタのソースまたはドレインの一方のみに接続されている状態を意味する。また、トランジスタが並列に接続されている状態とは、第1のトランジスタのソースまたはドレインの一方が第2のトランジスタのソースまたはドレインの一方に接続され、第1のトランジスタのソースまたはドレインの他方が第2のトランジスタのソースまたはドレインの他方に接続されている状態を意味する。
図19では、上記各組をセルMCとして図示する。図19に示すスイッチSWには、複数の配線L1、複数の配線L2、及び複数の配線L3にそれぞれ対応したセルMCが設けられている。なお、図16では、複数の配線L1、複数の配線L2、及び複数の配線L3の総数が9本である場合を例示しているため、スイッチSWは、セルMC−1乃至MC−9からなる9つのセルMCを、少なくとも有する。
具体的に、トランジスタTr3が有するソース又はドレインは、一方が配線LO−1に接続され、他方が、トランジスタTr1が有するソース又はドレインの一方に接続されている。トランジスタTr1が有するソース又はドレインの他方は、複数の配線L1、複数の配線L2、及び複数の配線L3のうちの一の配線に接続されている。トランジスタTr2が有するソース又はドレインは、一方がトランジスタTr1のゲートに接続され、他方が配線BLに接続されている。トランジスタTr2のゲートは、複数の配線WL(配線WL−1乃至WL−9)の一つに接続されている。トランジスタTr3のゲートは、複数の配線RL(配線RL−1乃至RL−9)の一つに接続されている。
セルMCは、必要に応じて、トランジスタ、ダイオード、抵抗素子、容量素子、インダクタなどのその他の回路素子を、さらに有していても良い。
図19に示したスイッチSWの動作は、図18に示すタイミングチャートを参照することができる。ただし、図18に示すタイミングチャートでは、トランジスタTr1、トランジスタTr2、及びトランジスタTr3がnチャネル型である場合に相当する。
[スイッチSWの構成例3]
次いで、図16に示したスイッチSWの回路構成を例に挙げて、スイッチSWの、図17とは異なる別の具体的な構成例について説明する。
図20に示すスイッチSWは、図19に示すスイッチSWと同様に、配線または端子どうしの電気的な接続を制御するトランジスタTr1と、コンフィギュレーションデータによって定められた量の電荷を、トランジスタTr1のゲートにおいて供給、保持、放出するための、オフ電流の著しく小さいトランジスタTr2と、トランジスタTr2に直列に接続されたトランジスタTr3とを、複数組有する。ただし、図20では、複数の配線L1、複数の配線L2、及び複数の配線L3の対し、2つの組がそれぞれ設けられている場合を例示している。
図20では、上記各組をセルMCとして図示する。図20に示すスイッチSWには、複数の配線L1、複数の配線L2、及び複数の配線L3にそれぞれ対応した2つのセルMCが設けられている。なお、図16では、複数の配線L1、複数の配線L2、及び複数の配線L3の総数が9本である場合を例示しているため、スイッチSWは、セルMC−1乃至MC−18からなる18つのセルMCを、少なくとも有する。
なお、複数の配線L1、複数の配線L2、及び複数の配線L3のそれぞれに対応するセルMCの数は、2つに限定されない。3つ以上の複数のセルMCが、複数の配線L1、複数の配線L2、及び複数の配線L3のそれぞれに対応していても良い。
具体的に、図20では、すなわち、複数のセルMCのうち、2つのセルMCが、複数の配線L1、複数の配線L2、及び複数の配線L3のうちの一の配線に接続されている。例えば、セルMC−1とMC−2の場合、2つのトランジスタTr1が有するソース又はドレインの他方が、共に配線L1−1に接続されている。
セルMCは、必要に応じて、トランジスタ、ダイオード、抵抗素子、容量素子、インダクタなどのその他の回路素子を、さらに有していても良い。
なお、図19及び図20では、トランジスタTr3が、トランジスタTr1が有するソース又はドレインの一方と、配線LOの間に接続されている場合を例示している。トランジスタTr3は、トランジスタTr1が有するソース又はドレインの他方と、複数の配線L1、複数の配線L2、及び複数の配線L3のうちの一の配線との間に、接続されていても良い。
[スイッチSWの動作例2]
次いで、図20に示したスイッチSWの動作の一例について、図21に示すタイミングチャートを用いて説明する。ただし、図21に示すタイミングチャートでは、トランジスタTr1、トランジスタTr2、及びトランジスタTr3がnチャネル型である場合を例示している。
まず、時刻T1乃至時刻T8において行われる、コンフィギュレーションデータの書き込みについて説明する。時刻T1乃至時刻T8において、配線RLには接地電位GNDが与えられ、全てのセルMCが有するトランジスタTr3は、非導通状態にあるものとする。
時刻T1乃至時刻T2において、配線WLのうち、配線WL−1にハイレベルの電位VDDを与え、他の配線WLにはローレベルの電位VSSを与える。また、配線BLに電位VDDを与える。上記動作により、セルMC−1が有するトランジスタTr1のゲート(FD1)には、電位VDDが与えられる。よって、セルMC−1には“1”のデジタル値に対応した第1コンフィギュレーションデータが格納される。
時刻T3乃至時刻T4において、配線WLのうち、配線WL−2にハイレベルの電位VDDを与え、他の配線WLにはローレベルの電位VSSを与える。また、配線BLに電位VSSを与える。上記動作により、セルMC−2が有するトランジスタTr1のゲート(FD2)には、電位VSSが与えられる。よって、セルMC−2には、“0”のデジタル値に対応した第2コンフィギュレーションデータが格納される。
時刻T5乃至時刻T6において、配線WLのうち、配線WL−3にハイレベルの電位VDDを与え、他の配線WLにはローレベルの電位VSSを与える。また、配線BLに電位VSSを与える。上記動作により、セルMC−3が有するトランジスタTr1のゲート(FD3)には、電位VSSが与えられる。よって、セルMC−3には、“0”のデジタル値に対応した第1コンフィギュレーションデータが格納される。
時刻T7乃至時刻T8において、配線WLのうち、配線WL−4にハイレベルの電位VDDを与え、他の配線WLにはローレベルの電位VSSを与える。また、配線BLに電位VDDを与える。上記動作により、セルMC−4が有するトランジスタTr1のゲート(FD4)には、電位VDDが与えられる。よって、セルMC−4には、“1”のデジタル値に対応した第2コンフィギュレーションデータが格納される。
なお、図21に示すタイミングチャートでは、セルMC−1乃至MC−4への第1コンフィギュレーションデータまたは第2コンフィギュレーションデータの書き込みについてのみ示しているが、セルMC−4乃至MC−18への第1コンフィギュレーションデータまたは第2コンフィギュレーションデータの書き込みも、同様に行う。ただし、セルMC−M(Mは自然数であり、なおかつ18以下の奇数)で表される複数のセルMCのうち、第1コンフィギュレーションデータの書き込みにより“1”のデジタル値に対応したコンフィギュレーションデータが格納されるセルMCは、一つのみである。また、セルMC−L(Lは自然数であり、なおかつ18以下の偶数)で表される複数のセルMCのうち、第2コンフィギュレーションデータの書き込みにより“1”のデジタル値に対応したコンフィギュレーションデータが格納されるセルMCは、一つのみである。
次いで、第1コンフィギュレーションデータに従って行われる、第1の論理回路の切り換えについて説明する。
時刻T9乃至時刻T10において、配線RL−Mで表される複数の配線RLに、ハイレベルの電位VDDが与えられる。配線RL−Lで表される複数の配線RLには、引き続き接地電位GNDが与えられる。そして、時刻T9乃至時刻T10において、セルMC−Mで表される複数のセルMCのうち、セルMC−1は導通状態、それ以外のセルMCは非導通状態にある。したがって、配線L1−1と配線LOが導通状態となり、配線L1−1の電位が、配線LOに与えられる。具体的に、図21に示すタイミングチャートでは、接地電位GNDが配線LO−1に与えられる場合を例示している。
次いで、第2コンフィギュレーションデータに従って行われる、第2の論理回路の切り換えについて説明する。
時刻T11乃至時刻T12において、配線RL−Lで表される複数の配線RLに、ハイレベルの電位VDDが与えられる。配線RL−Mで表される複数の配線RLには、接地電位GNDが与えられる。そして、時刻T11乃至時刻T12において、セルMC−Lで表される複数のセルMCのうち、セルMC−4は導通状態、それ以外のセルMCは非導通状態にある。したがって、配線L1−2と配線LOが導通状態となり、配線L1−2の電位が、配線LOに与えられる。具体的に、図21に示すタイミングチャートでは、電位VDDが配線LOに与えられる場合を例示している。
なお、第1コンフィギュレーションデータまたは第2コンフィギュレーションデータの書き込みに際し、配線L1乃至L3の電位と、配線LOの電位とを、同じ高さに保つことが望ましい。上記構成により、第1コンフィギュレーションデータまたは第2コンフィギュレーションデータの書き込み中に、トランジスタTr1が導通状態となっても、トランジスタTr1を介して過大な電流が配線L1乃至L3のいずれかと、配線LOとの間に流れるのを防ぐことができる。
また、配線LOの電位は、ラッチ回路などにより所定の高さに保持しておくことが好ましい。上記構成により、配線LOの電位が浮遊状態になることを防止でき、配線LOの電位が入力端子に与えられるLEにおいて、過大な電流が生じるのを防止することができる。
なお、図20に示したスイッチSWの場合、複数のコンフィギュレーションデータが格納されており、なおかつコンフィギュレーションに用いるコンフィギュレーションデータの選択を自由に行うことができる。そのため、一のコンフィギュレーションデータにより論理回路が定められたPLDを動作させている間に、他のコンフィギュレーションデータを書き換えることができる。
DRAMをメモリエレメントとして用いた場合、マルチコンテキスト方式においてコンフィギュレーションデータを切り換えるために、メモリエレメント(DRAM)からコンフィギュレーションデータの読み出しが必要である。当該コンフィギュレーションデータの読み出しにはセンスアンプを用いる必要がある。本発明の一態様では、マルチコンテキスト方式においてコンフィギュレーションデータを切り換えるために、メモリエレメントからコンフィギュレーションデータの読み出しを行う必要がなく、したがって、センスアンプを用いる必要がないため、コンフィギュレーションデータの切り換えにかかる時間を短くでき、よって、プログラマブルロジックデバイスにおける論理回路の再構成を高速で行うことができる。
本実施の形態は、他の実施の形態の記載と適宜組み合わせることができる。
(実施の形態3)
本実施の形態では、上記実施の形態において用いることができるOSトランジスタの構成例について説明する。
<トランジスタの構成例>
図22(A)は、トランジスタの構成例を示す上面図である。図22(B)は、図22(A)のX1−X2線断面図であり、図22(C)はY1−Y2線断面図である。ここでは、X1−X2線の方向をチャネル長方向と、Y1−Y2線方向をチャネル幅方向と呼称する場合がある。図22(B)は、トランジスタのチャネル長方向の断面構造を示す図であり、図22(C)は、トランジスタのチャネル幅方向の断面構造を示す図である。なお、デバイス構造を明確にするため、図22(A)では、一部の構成要素が省略されている。
本発明の一態様に係る半導体装置は、絶縁層812乃至820、金属酸化物膜821乃至824、導電層850乃至853を有する。トランジスタ801は絶縁表面に形成される。図22では、トランジスタ801が絶縁層811上に形成される場合を例示している。トランジスタ801は絶縁層818及び絶縁層819で覆われている。
なお、トランジスタ801を構成している絶縁層、金属酸化物膜、導電層等は、単層であっても、複数の膜が積層されたものであってもよい。これらの作製には、スパッタリング法、分子線エピタキシー法(MBE法)、パルスレーザアブレーション法(PLA法)、CVD法、原子層堆積法(ALD法)などの各種の成膜方法を用いることができる。なお、CVD法は、プラズマCVD法、熱CVD法、有機金属CVD法などがある。
導電層850は、トランジスタ801のゲート電極として機能する領域を有する。導電層851、導電層852は、ソース電極又はドレイン電極として機能する領域を有する。導電層853は、バックゲート電極は、として機能する領域を有する。絶縁層817は、ゲート電極(フロントゲート電極)側のゲート絶縁層として機能する領域を有し、絶縁層814乃至絶縁層816の積層で構成される絶縁層は、バックゲート電極側のゲート絶縁層として機能する領域を有する。絶縁層818は層間絶縁層としての機能を有する。絶縁層819はバリア層としてとしての機能を有する。
金属酸化物膜821乃至824をまとめて酸化物層830と呼ぶ。図22(B)、図22(C)に示すように、酸化物層830は、金属酸化物膜821、金属酸化物膜822、金属酸化物膜824が順に積層されている領域を有する。また、一対の金属酸化物膜823は、それぞれ導電層851、導電層852上に位置する。トランジスタ801がオン状態のとき、チャネル形成領域は酸化物層830のうち主に金属酸化物膜822に形成される。
金属酸化物膜824は、金属酸化物膜821乃至823、導電層851、導電層852を覆っている。絶縁層817は金属酸化物膜823と導電層850との間に位置する。導電層851、導電層852はそれぞれ、金属酸化物膜823、金属酸化物膜824、絶縁層817を介して、導電層850と重なる領域を有する。
導電層851及び導電層852は、金属酸化物膜821及び金属酸化物膜822を形成するためのハードマスクから作製されている。そのため、導電層851及び導電層852は、金属酸化物膜821および金属酸化物膜822の側面に接する領域を有していない。例えば、次のような工程を経て、金属酸化物膜821、822、導電層851、導電層852を作製することができる。まず、積層された2層の金属酸化物膜上に導電膜を形成する。この導電膜を所望の形状に加工(エッチング)して、ハードマスクを形成する。ハードマスクを用いて、2層の金属酸化物膜の形状を加工し、積層された金属酸化物膜821及び金属酸化物膜822を形成する。次に、ハードマスクを所望の形状に加工して、導電層851及び導電層852を形成する。
絶縁層811乃至818に用いられる絶縁材料には、窒化アルミニウム、酸化アルミニウム、窒化酸化アルミニウム、酸化窒化アルミニウム、酸化マグネシウム、窒化シリコン、酸化シリコン、窒化酸化シリコン、酸化窒化シリコン、酸化ガリウム、酸化ゲルマニウム、酸化イットリウム、酸化ジルコニウム、酸化ランタン、酸化ネオジム、酸化ハフニウム、酸化タンタル、アルミニウムシリケートなどがある。絶縁層811乃至518はこれらの絶縁材料でなる単層、又は積層して構成される。絶縁層811乃至818を構成する層は、複数の絶縁材料を含んでいてもよい。
なお、本明細書等において、酸化窒化物とは、酸素の含有量が窒素よりも多い化合物であり、窒化酸化物とは、窒素の含有量が酸素よりも多い化合物のことを意味する。
酸化物層830の酸素欠損の増加を抑制するため、絶縁層816乃至絶縁層818は、酸素を含む絶縁層であることが好ましい。絶縁層816乃至絶縁層818は、加熱により酸素が放出される絶縁膜(以下、「過剰酸素を含む絶縁膜」ともいう)で形成されることがより好ましい。過剰酸素を含む絶縁膜から酸化物層830に酸素を供給することで、酸化物層830の酸素欠損を補償することができる。トランジスタ801の信頼性および電気的特性を向上することができる。
過剰酸素を含む絶縁層とは、TDS(Thermal Desorption Spectroscopy:昇温脱離ガス分光法)において、膜の表面温度が100℃以上700℃以下、又は100℃以上500℃以下の範囲における酸素分子の放出量が1.0×1018[分子/cm]以上である膜とする。酸素分子の放出量は、3.0×1020atoms/cm以上であることがより好ましい。
過剰酸素を含む絶縁膜は、絶縁膜に酸素を添加する処理を行って形成することができる。酸素を添加する処理は、酸素雰囲気下による熱処理や、イオン注入法、イオンドーピング法、プラズマイマージョンイオン注入法、又はプラズマ処理などを用いて行うことができる。酸素を添加するためのガスとしては、16もしくは18などの酸素ガス、亜酸化窒素ガス又はオゾンガスなどを用いることができる。
酸化物層830の水素濃度の増加を防ぐために、絶縁層812乃至819中の水素濃度を低減することが好ましい。特に絶縁層813乃至818の水素濃度を低減することが好ましい。具体的には、水素濃度は、2×1020atoms/cm以下であり、好ましくは5×1019atoms/cm以下が好ましく、1×1019atoms/cm以下がより好ましく、5×1018atoms/cm以下がさらに好ましい。
上掲の水素濃度は、二次イオン質量分析法(SIMS:Secondary Ion Mass Spectrometry)で測定された値である。
トランジスタ801において、酸素および水素に対してバリア性をもつ絶縁層(以下、バリア層ともいう)によって酸化物層830が包み込まれる構造であることが好ましい。このような構造であることで、酸化物層830から酸素が放出されること、酸化物層830に水素が侵入することを抑えることがでる。トランジスタ801の信頼性、電気的特性を向上できる。
例えば、絶縁層819をバリア層として機能させ、かつ絶縁層811、812、814の少なくとも1つをバリア層と機能させればよい。バリア層は、酸化アルミニウム、酸化窒化アルミニウム、酸化ガリウム、酸化窒化ガリウム、酸化イットリウム、酸化窒化イットリウム、酸化ハフニウム、酸化窒化ハフニウム、窒化シリコンなどの材料で形成することができる。
絶縁層811乃至818の構成例を記す。この例では、絶縁層811、812、815、819は、それぞれ、バリア層として機能する。絶縁層816乃至818は過剰酸素を含む酸化物層である。絶縁層811は窒化シリコンであり、絶縁層812は酸化アルミニウムであり、絶縁層813は酸化窒化シリコンである。バックゲート電極側のゲート絶縁層としての機能を有する絶縁層814乃至816は、酸化シリコン、酸化アルミニウム、酸化シリコンの積層である。フロントゲート側のゲート絶縁層としての機能を有する絶縁層817は、酸化窒化シリコンである。層間絶縁層としての機能を有する絶縁層818は、酸化シリコンである。絶縁層819は酸化アルミニウムである。
導電層850乃至853に用いられる導電材料には、モリブデン、チタン、タンタル、タングステン、アルミニウム、銅、クロム、ネオジム、スカンジウム等の金属、又は上述した金属を成分とする金属窒化物(窒化タンタル、窒化チタン、窒化モリブデン、窒化タングステン)等がある。インジウム錫酸化物、酸化タングステンを含むインジウム酸化物、酸化タングステンを含むインジウム亜鉛酸化物、酸化チタンを含むインジウム酸化物、酸化チタンを含むインジウム錫酸化物、インジウム亜鉛酸化物、酸化ケイ素を添加したインジウム錫酸化物などの導電性材料を用いることができる。
導電層850乃至853の構成例を記す。導電層850は窒化タンタル、又はタングステン単層である。あるいは、導電層850は窒化タンタル、タンタルおよび窒化タンタルでなる積層である。導電層851は、窒化タンタル単層、又は窒化タンタルとタングステンとの積層である。導電層852の構成は導電層851と同じである。導電層853は窒化タンタルであり、導電体はタングステンである。
トランジスタ801のオフ電流の低減のために、金属酸化物膜822は、例えば、エネルギーギャップが大きいことが好ましい。金属酸化物膜822のエネルギーギャップは、2.5eV以上4.2eV以下であり、2.8eV以上3.8eV以下が好ましく、3eV以上3.5eV以下がさらに好ましい。
酸化物層830は、結晶性を有することが好ましい。少なくとも、金属酸化物膜822は結晶性を有することが好ましい。上記構成により、信頼性、および電気的特性の良いトランジスタ801を実現できる。
金属酸化物膜822に適用できる酸化物は、例えば、In−Ga酸化物、In−Zn酸化物、In−M−Zn酸化物(MはAl、Ga、Y、又はSn)である。金属酸化物膜822は、インジウムを含む酸化物層に限定されない。金属酸化物膜822は、例えば、Zn−Sn酸化物、Ga−Sn酸化物、Zn−Mg酸化物等で形成することができる。金属酸化物膜821、823、824も、金属酸化物膜822と同様の酸化物で形成することができる。特に、金属酸化物膜821、823、824は、それぞれ、Ga酸化物で形成することができる。
金属酸化物膜822と金属酸化物膜821の界面に界面準位が形成されると、界面近傍の領域にもチャネル形成領域が形成されるために、トランジスタ801の閾値電圧が変動してしまう。そのため、金属酸化物膜821は、構成要素として、金属酸化物膜822を構成する金属元素の少なくとも1つを含むことが好ましい。これにより、金属酸化物膜822と金属酸化物膜821の界面には、界面準位が形成されにくくなり、トランジスタ801の閾値電圧等の電気的特性のばらつきを低減することができる。
金属酸化物膜824は、構成要素として、金属酸化物膜822を構成する金属元素の少なくとも1つを含むことが好ましい。これにより、金属酸化物膜822と金属酸化物膜824との界面では、界面散乱が起こりにくくなり、キャリアの動きが阻害されにくくなるので、トランジスタ801の電界効果移動度を高くすることができる。
金属酸化物膜821乃至824のうち、金属酸化物膜822のキャリア移動度が最も高いことが好ましい。これにより、絶縁層816、817から離間している金属酸化物膜822にチャネルを形成することができる。
例えば、In−M−Zn酸化物等のIn含有金属酸化物は、Inの含有率を高めることで、キャリア移動度を高めることができる。In−M−Zn酸化物では主として重金属のs軌道がキャリア伝導に寄与しており、インジウムの含有率を多くすることにより、より多くのs軌道が重なるため、インジウムの含有率が多い酸化物はインジウムの含有率が少ない酸化物と比較して移動度が高くなる。そのため、金属酸化物膜にインジウムの含有量が多い酸化物を用いることで、キャリア移動度を高めることができる。
そのため、例えば、In−Ga−Zn酸化物で金属酸化物膜822を形成し、Ga酸化物で金属酸化物膜821、823を形成する。例えば、In−M−Zn酸化物で、金属酸化物膜821乃至823を形成する場合、Inの含有率は金属酸化物膜822のInの含有率を金属酸化物膜821、823よりも高くする。In−M−Zn酸化物をスパッタリング法で形成する場合、ターゲットの金属元素の原子数比を変えることで、In含有率を変化させることができる。
例えば、金属酸化物膜822の成膜に用いるターゲットの金属元素の原子数比In:M:Znは、1:1:1、3:1:2、又は4:2:4.1が好ましい。例えば、金属酸化物膜821、823の成膜に用いるターゲットの金属元素の原子数比In:M:Znは、1:3:2、又は1:3:4が好ましい。In:M:Zn=4:2:4.1のターゲットで成膜したIn−M−Zn酸化物の原子数比は、およそIn:M:Zn=4:2:3である。
トランジスタ801に安定した電気的特性を付与するには、酸化物層830の不純物濃度を低減することが好ましい。金属酸化物において、水素、窒素、炭素、シリコン、および主成分以外の金属元素は不純物となる。例えば、水素および窒素はドナー準位の形成に寄与し、キャリア密度を増大させてしまう。また、シリコンおよび炭素は金属酸化物中で不純物準位の形成に寄与する。不純物準位はトラップとなり、トランジスタの電気的特性を劣化させることがある。
例えば、酸化物層830は、シリコン濃度が2×1018atoms/cm以下、好ましくは、2×1017atoms/cm以下の領域を有する。酸化物層830の炭素濃度も同様である。
酸化物層830は、アルカリ金属濃度が1×1018atoms/cm以下の、好ましくは2×1016atoms/cm以下の領域を有する。金属酸化物膜822のアルカリ土類金属の濃度についても同様である。
酸化物層830は、水素濃度が1×1020atoms/cm未満の、好ましくは1×1019atoms/cm未満の、より好ましくは5×1018atoms/cm未満の、さらに好ましくは1×1018atoms/cm未満の領域を有する。
上掲した金属酸化物膜822の不純物濃度は、SIMSにより得られる値である。
金属酸化物膜822が酸素欠損を有する場合、酸素欠損のサイトに水素が入り込むことでドナー準位を形成することがある。その結果、トランジスタ801のオン電流を低下させる要因となる。なお、酸素欠損のサイトは、水素が入るよりも酸素が入る方が安定する。したがって、金属酸化物膜822中の酸素欠損を低減することで、トランジスタ801のオン電流を大きくすることができる場合がある。よって、金属酸化物膜822の水素を低減することで、酸素欠損のサイトに水素が入りこまないようにすることが、オン電流特性に有効である。
金属酸化物に含まれる水素は、金属原子に結合している酸素と反応して水になるため、酸素欠損を形成することがある。酸素欠損に水素が入ることで、キャリアである電子が生成されることがある。また、水素の一部が金属原子に結合している酸素と結合して、キャリアである電子を生成することがある。金属酸化物膜822にチャネル形成領域が設けられるので、金属酸化物膜822に水素が含まれていると、トランジスタ801はノーマリーオン特性となりやすい。このため、金属酸化物膜822中の水素はできる限り低減されていることが好ましい。
図22は、酸化物層830が4層構造の例であるが、これに限定されない。例えば、酸化物層830を金属酸化物膜821又は金属酸化物膜823のない3層構造とすることができる。又は、酸化物層830の任意の層の間、酸化物層830の上、酸化物層830の下のいずれか二箇所以上に、金属酸化物膜821乃至824と同様の金属酸化物膜を1層又は複数を設けることができる。
図23を参照して、金属酸化物膜821、822、824の積層によって得られる効果を説明する。図23は、トランジスタ801のチャネル形成領域のエネルギーバンド構造の模式図である。
図23中、Ec816e、Ec821e、Ec822e、Ec824e、Ec817eは、それぞれ、絶縁層816、金属酸化物膜821、金属酸化物膜822、金属酸化物膜824、絶縁層817の伝導帯下端のエネルギーを示している。
ここで、真空準位と伝導帯下端のエネルギーとの差(「電子親和力」ともいう)は、真空準位と価電子帯上端のエネルギーとの差(イオン化ポテンシャルともいう)からエネルギーギャップを引いた値となる。なお、エネルギーギャップは、分光エリプソメータ(HORIBA JOBIN YVON社 UT−300)を用いて測定できる。また、真空準位と価電子帯上端のエネルギー差は、紫外線光電子分光分析(UPS:Ultraviolet Photoelectron Spectroscopy)装置(PHI社 VersaProbe)を用いて測定できる。
絶縁層816、817は絶縁体であるため、Ec816eとEc817eは、Ec821e、Ec822e、およびEc824eよりも真空準位に近い(電子親和力が小さい)。
金属酸化物膜822は、金属酸化物膜821、824よりも電子親和力が大きい。例えば、金属酸化物膜822と金属酸化物膜821との電子親和力の差、および金属酸化物膜822と金属酸化物膜824との電子親和力の差は、それぞれ、0.07eV以上1.3eV以下である。電子親和力の差は、0.1eV以上0.7eV以下が好ましく、0.15eV以上0.4eV以下がさらに好ましい。なお、電子親和力は、真空準位と伝導帯下端のエネルギーとの差である。
トランジスタ801のゲート電極(導電層850)に電圧を印加すると、金属酸化物膜821、金属酸化物膜822、金属酸化物膜824のうち、電子親和力が大きい金属酸化物膜822に主にチャネルが形成される。
インジウムガリウム酸化物は、小さい電子親和力と、高い酸素ブロック性を有する。そのため、金属酸化物膜824がインジウムガリウム酸化物を含むと好ましい。ガリウム原子割合[Ga/(In+Ga)]は、例えば、70%以上、好ましくは80%以上、さらに好ましくは90%以上とする。
また、金属酸化物膜821と金属酸化物膜822との間には金属酸化物膜821と金属酸化物膜822の混合領域が存在する場合がある。また、金属酸化物膜824と金属酸化物膜822との間には金属酸化物膜824と金属酸化物膜822の混合領域が存在する場合がある。混合領域は、界面準位密度が低くなるため、金属酸化物膜821、822、824の積層されている領域は、それぞれの界面近傍においてエネルギーが連続的に変化する(連続接合ともいう)バンド構造となる。
このようなエネルギーバンド構造を有する酸化物層830において、電子は主に金属酸化物膜822を移動することになる。そのため、金属酸化物膜821と絶縁層812との界面に、又は、金属酸化物膜824と絶縁層813との界面に準位が存在したとしても、これらの界面準位により、酸化物層830中を移動する電子の移動が阻害されにくくなるため、トランジスタ801のオン電流を高くすることができる。
また、図23に示すように、金属酸化物膜821と絶縁層816の界面近傍、および金属酸化物膜824と絶縁層817の界面近傍には、それぞれ、不純物や欠陥に起因したトラップ準位Et826e、Et827eが形成され得るものの、金属酸化物膜821、824があることにより、金属酸化物膜822をトラップ準位Et826e、Et827eから離間することができる。
なお、Ec821eとEc822eとの差が小さい場合、金属酸化物膜822の電子が該エネルギー差を越えてトラップ準位Et826eに達することがある。トラップ準位Et826eに電子が捕獲されることで、絶縁膜の界面にマイナスの固定電荷が生じ、トランジスタの閾値電圧はプラス方向にシフトしてしまう。Ec822eとEc824eとのエネルギー差が小さい場合も同様である。
トランジスタ801の閾値電圧の変動が低減され、トランジスタ801の電気的特性を良好なものとするため、Ec821eとEc822eとの差、Ec824eとEc822eと差を、それぞれ0.1eV以上とすることが好ましく、0.15eV以上とすることがより好ましい。
なお、トランジスタ801はバックゲート電極を有さない構造とすることもできる。
<積層構造の例>
次に、OSトランジスタと他のトランジスタを積層した構造について説明する。以下で説明する積層構造は、上記実施の形態で説明したセルMCに適用することができる。
図24に、SiトランジスタであるトランジスタTr1と、OSトランジスタであるTr2と、容量素子C1と、が積層されたセルMCの積層構造の例を示す。
セルMCは、CMOS層871、配線層W乃至W、トランジスタ層872、配線層W、Wの積層で構成されている。
CMOS層871には、トランジスタTr1が設けられている。トランジスタTr1のチャネル形成領域は、単結晶シリコンウエハ870に設けられている。トランジスタTr1のゲート電極873は、配線層W乃至Wを介して、容量素子C1の一方の電極875と接続されている。
トランジスタ層872には、トランジスタTr2が設けられている。図24では、トランジスタTr2がトランジスタ801(図22)と同様の構造を有する。トランジスタTr2のソース又はドレインの一方に相当する電極874は、容量素子C1の一方の電極875と接続されている。なお、図24には、トランジスタTr2がバックゲート電極を配線層Wに有する場合を例示している。また、配線層Wには、容量素子C1が設けられている。
図24に示す構成は例えば、図17、図19、図20に示すセルMCなどに適用することができる。
以上のように、OSトランジスタとその他の素子を積層することにより、回路の面積を縮小することができる。
<金属酸化物>
次に、上記のOSトランジスタに用いることができる、金属酸化物について説明する。以下では特に、金属酸化物とCAC(Cloud−Aligned Composite)の詳細について説明する。
CAC−OSまたはCAC−metal oxideは、材料の一部では導電性の機能と、材料の一部では絶縁性の機能とを有し、材料の全体では半導体としての機能を有する。なお、CAC−OSまたはCAC−metal oxideを、トランジスタのチャネル形成領域に用いる場合、導電性の機能は、キャリアとなる電子(またはホール)を流す機能であり、絶縁性の機能は、キャリアとなる電子を流さない機能である。導電性の機能と、絶縁性の機能とを、それぞれ相補的に作用させることで、スイッチングさせる機能(On/Offさせる機能)をCAC−OSまたはCAC−metal oxideに付与することができる。CAC−OSまたはCAC−metal oxideにおいて、それぞれの機能を分離させることで、双方の機能を最大限に高めることができる。
また、CAC−OSまたはCAC−metal oxideは、導電性領域、及び絶縁性領域を有する。導電性領域は、上述の導電性の機能を有し、絶縁性領域は、上述の絶縁性の機能を有する。また、材料中において、導電性領域と、絶縁性領域とは、ナノ粒子レベルで分離している場合がある。また、導電性領域と、絶縁性領域とは、それぞれ材料中に偏在する場合がある。また、導電性領域は、周辺がぼけてクラウド状に連結して観察される場合がある。
また、CAC−OSまたはCAC−metal oxideにおいて、導電性領域と、絶縁性領域とは、それぞれ0.5nm以上10nm以下、好ましくは0.5nm以上3nm以下のサイズで材料中に分散している場合がある。
また、CAC−OSまたはCAC−metal oxideは、異なるバンドギャップを有する成分により構成される。例えば、CAC−OSまたはCAC−metal oxideは、絶縁性領域に起因するワイドギャップを有する成分と、導電性領域に起因するナローギャップを有する成分と、により構成される。当該構成の場合、キャリアを流す際に、ナローギャップを有する成分において、主にキャリアが流れる。また、ナローギャップを有する成分が、ワイドギャップを有する成分に相補的に作用し、ナローギャップを有する成分に連動してワイドギャップを有する成分にもキャリアが流れる。このため、上記CAC−OSまたはCAC−metal oxideをトランジスタのチャネル形成領域に用いる場合、トランジスタのオン状態において高い電流駆動力、つまり大きなオン電流、及び高い電界効果移動度を得ることができる。
すなわち、CAC−OSまたはCAC−metal oxideは、マトリックス複合材(matrix composite)、または金属マトリックス複合材(metal matrix composite)と呼称することもできる。
CAC−OSは、例えば、金属酸化物を構成する元素が、0.5nm以上10nm以下、好ましくは、1nm以上2nm以下、またはその近傍のサイズで偏在した材料の一構成である。なお、以下では、金属酸化物において、一つあるいはそれ以上の金属元素が偏在し、該金属元素を有する領域が、0.5nm以上10nm以下、好ましくは、1nm以上2nm以下、またはその近傍のサイズで混合した状態をモザイク状、またはパッチ状ともいう。
なお、金属酸化物は、少なくともインジウムを含むことが好ましい。特にインジウムおよび亜鉛を含むことが好ましい。また、それらに加えて、アルミニウム、ガリウム、イットリウム、銅、バナジウム、ベリリウム、ホウ素、シリコン、チタン、鉄、ニッケル、ゲルマニウム、ジルコニウム、モリブデン、ランタン、セリウム、ネオジム、ハフニウム、タンタル、タングステン、またはマグネシウムなどから選ばれた一種、または複数種が含まれていてもよい。
例えば、In−Ga−Zn酸化物におけるCAC−OS(CAC−OSの中でもIn−Ga−Zn酸化物を、特にCAC−IGZOと呼称してもよい。)とは、インジウム酸化物(以下、InOX1(X1は0よりも大きい実数)とする。)、またはインジウム亜鉛酸化物(以下、InX2ZnY2Z2(X2、Y2、およびZ2は0よりも大きい実数)とする。)と、ガリウム酸化物(以下、GaOX3(X3は0よりも大きい実数)とする。)、またはガリウム亜鉛酸化物(以下、GaX4ZnY4Z4(X4、Y4、およびZ4は0よりも大きい実数)とする。)などと、に材料が分離することでモザイク状となり、モザイク状のInOX1、またはInX2ZnY2Z2が、膜中に均一に分布した構成(以下、クラウド状ともいう。)である。
つまり、CAC−OSは、GaOX3が主成分である領域と、InX2ZnY2Z2、またはInOX1が主成分である領域とが、混合している構成を有する複合金属酸化物である。なお、本明細書において、例えば、第1の領域の元素Mに対するInの原子数比が、第2の領域の元素Mに対するInの原子数比よりも大きいことを、第1の領域は、第2の領域と比較して、Inの濃度が高いとする。
なお、IGZOは通称であり、In、Ga、Zn、およびOによる1つの化合物をいう場合がある。代表例として、InGaO(ZnO)m1(m1は自然数)、またはIn(1+x0)Ga(1−x0)(ZnO)m0(−1≦x0≦1、m0は任意数)で表される結晶性の化合物が挙げられる。
上記結晶性の化合物は、単結晶構造、多結晶構造、またはCAAC(c−axis aligned crystal)構造を有する。なお、CAAC構造とは、複数のIGZOのナノ結晶がc軸配向を有し、かつa−b面においては配向せずに連結した結晶構造である。
一方、CAC−OSは、金属酸化物の材料構成に関する。CAC−OSとは、In、Ga、Zn、およびOを含む材料構成において、一部にGaを主成分とするナノ粒子状に観察される領域と、一部にInを主成分とするナノ粒子状に観察される領域とが、それぞれモザイク状にランダムに分散している構成をいう。従って、CAC−OSにおいて、結晶構造は副次的な要素である。
なお、CAC−OSは、組成の異なる二種類以上の膜の積層構造は含まないものとする。例えば、Inを主成分とする膜と、Gaを主成分とする膜との2層からなる構造は、含まない。
なお、GaOX3が主成分である領域と、InX2ZnY2Z2、またはInOX1が主成分である領域とは、明確な境界が観察できない場合がある。
なお、ガリウムの代わりに、アルミニウム、イットリウム、銅、バナジウム、ベリリウム、ホウ素、シリコン、チタン、鉄、ニッケル、ゲルマニウム、ジルコニウム、モリブデン、ランタン、セリウム、ネオジム、ハフニウム、タンタル、タングステン、またはマグネシウムなどから選ばれた一種、または複数種が含まれている場合、CAC−OSは、一部に該金属元素を主成分とするナノ粒子状に観察される領域と、一部にInを主成分とするナノ粒子状に観察される領域とが、それぞれモザイク状にランダムに分散している構成をいう。
CAC−OSは、例えば基板を意図的に加熱しない条件で、スパッタリング法により形成することができる。また、CAC−OSをスパッタリング法で形成する場合、成膜ガスとして、不活性ガス(代表的にはアルゴン)、酸素ガス、及び窒素ガスの中から選ばれたいずれか一つまたは複数を用いればよい。また、成膜時の成膜ガスの総流量に対する酸素ガスの流量比は低いほど好ましく、例えば酸素ガスの流量比を0%以上30%未満、好ましくは0%以上10%以下とすることが好ましい。
CAC−OSは、X線回折(XRD:X−ray diffraction)測定法のひとつであるOut−of−plane法によるθ/2θスキャンを用いて測定したときに、明確なピークが観察されないという特徴を有する。すなわち、X線回折から、測定領域のa−b面方向、およびc軸方向の配向は見られないことが分かる。
またCAC−OSは、プローブ径が1nmの電子線(ナノビーム電子線ともいう。)を照射することで得られる電子線回折パターンにおいて、リング状に輝度の高い領域と、該リング領域に複数の輝点が観測される。従って、電子線回折パターンから、CAC−OSの結晶構造が、平面方向、および断面方向において、配向性を有さないnc(nano−crystal)構造を有することがわかる。
また例えば、In−Ga−Zn酸化物におけるCAC−OSでは、エネルギー分散型X線分光法(EDX:Energy Dispersive X−ray spectroscopy)を用いて取得したEDXマッピングにより、GaOX3が主成分である領域と、InX2ZnY2Z2、またはInOX1が主成分である領域とが、偏在し、混合している構造を有することが確認できる。
CAC−OSは、金属元素が均一に分布したIGZO化合物とは異なる構造であり、IGZO化合物と異なる性質を有する。つまり、CAC−OSは、GaOX3などが主成分である領域と、InX2ZnY2Z2、またはInOX1が主成分である領域と、に互いに相分離し、各元素を主成分とする領域がモザイク状である構造を有する。
ここで、InX2ZnY2Z2、またはInOX1が主成分である領域は、GaOX3などが主成分である領域と比較して、導電性が高い領域である。つまり、InX2ZnY2Z2、またはInOX1が主成分である領域を、キャリアが流れることにより、酸化物半導体としての導電性が発現する。従って、InX2ZnY2Z2、またはInOX1が主成分である領域が、酸化物半導体中にクラウド状に分布することで、高い電界効果移動度(μ)が実現できる。
一方、GaOX3などが主成分である領域は、InX2ZnY2Z2、またはInOX1が主成分である領域と比較して、絶縁性が高い領域である。つまり、GaOX3などが主成分である領域が、酸化物半導体中に分布することで、リーク電流を抑制し、良好なスイッチング動作を実現できる。
従って、CAC−OSを半導体素子に用いた場合、GaOX3などに起因する絶縁性と、InX2ZnY2Z2、またはInOX1に起因する導電性とが、相補的に作用することにより、高いオン電流(Ion)、および高い電界効果移動度(μ)を実現することができる。
また、CAC−OSを用いた半導体素子は、信頼性が高い。従って、CAC−OSは、さまざまな半導体装置に最適である。
本実施の形態は、他の実施の形態の記載と適宜組み合わせることができる。
(実施の形態4)
本実施の形態では、上記実施の形態で説明した半導体装置を搭載することが可能な、ICチップ、電子部品、電子機器等について説明する。
図25(A)は、電子部品の作製方法例を示すフローチャートである。電子部品は、半導体パッケージ、またはIC用パッケージともいう。この電子部品は、端子取り出し方向や、端子の形状に応じて、複数の規格や名称が存在する。そこで、本実施の形態では、その一例について説明することにする。
トランジスタを有する半導体装置は、組み立て工程(後工程)を経て、プリント基板に脱着可能な部品が複数合わさることで完成する。後工程については、図25(A)に示す各工程を経ることで完成させることができる。具体的には、前工程で得られる素子基板が完成(ステップST71)した後、基板の裏面を研削する。この段階で基板を薄膜化して、前工程での基板の反り等を低減し、部品の小型化を図る。次に、基板を複数のチップに分離するダイシング工程を行う(ステップST72)。
図25(B)は、ダイシング工程が行われる前の半導体ウエハ7100の上面図である。図25(C)は、図25(B)の部分拡大図である。半導体ウエハ7100には、複数の回路領域7102が設けられている。回路領域7102には、本発明の形態に係る半導体装置が設けられている。
複数の回路領域7102は、それぞれが分離領域7104に囲まれている。分離領域7104と重なる位置に分離線(「ダイシングライン」ともいう。)7106が設定される。ダイシング工程ST72では、分離線7106に沿って半導体ウエハ7100切断することで、回路領域7102を含むチップ7110を半導体ウエハ7100から切り出す。図25(D)にチップ7110の拡大図を示す。
分離領域7104に導電層や半導体層を設けてもよい。分離領域7104に導電層や半導体層を設けることで、ダイシング工程時に生じうるESDを緩和し、ダイシング工程に起因する歩留まりの低下を防ぐことができる。また、一般にダイシング工程は、基板の冷却、削りくずの除去、帯電防止などを目的として、炭酸ガスなどを溶解させて比抵抗を下げた純水を切削部に供給しながら行なう。分離領域7104に導電層や半導体層を設けることで、当該純水の使用量を削減することができる。よって、半導体装置の生産コストを低減することができる。また、半導体装置の生産性を高めることができる。
ステップST72を行った後、分離したチップを個々にピックアップしてリードフレーム上に搭載し接合する、ダイボンディング工程を行う(ステップST73)。ダイボンディング工程におけるチップとリードフレームとの接着方法は製品に適した方法を選択すればよい。例えば、接着は樹脂やテープによって行えばよい。ダイボンディング工程は、インターポーザ上にチップを搭載し接合してもよい。ワイヤーボンディング工程で、リードフレームのリードとチップ上の電極とを金属の細線(ワイヤー)で電気的に接続する(ステップST74)。金属の細線には、銀線や金線を用いることができる。ワイヤーボンディングは、ボールボンディングとウェッジボンディングの何れでもよい。
ワイヤーボンディングされたチップは、エポキシ樹脂等で封止される、モールド工程が施される(ステップST75)。モールド工程を行うことで電子部品の内部が樹脂で充填され、機械的な外力による内蔵される回路部やワイヤーに対するダメージを低減することができ、また水分や埃による特性の劣化を低減することができる。リードフレームのリードをメッキ処理する。そしてリードを切断及び成形加工する(ステップST76)。めっき処理によりリードの錆を防止し、後にプリント基板に実装する際のはんだ付けをより確実に行うことができる。パッケージの表面に印字処理(マーキング)を施す(ステップST77)。検査工程(ステップST78)を経て、電子部品が完成する(ステップST79)。上掲した実施の形態の半導体装置を組み込むことで、低消費電力で、小型な電子部品を提供することができる。
完成した電子部品の斜視模式図を図25(E)に示す。図25(E)では、電子部品の一例として、QFP(Quad Flat Package)の斜視模式図を示している。図25(E)に示すように、電子部品7000は、リード7001及びチップ7110を有する。
電子部品7000は、例えばプリント基板7002に実装される。このような電子部品7000が複数組み合わされて、それぞれがプリント基板7002上で電気的に接続されることで電子機器に搭載することができる。完成した回路基板7004は、電子機器等の内部に設けられる。電子部品7000を搭載することで、電子機器の消費電力を削減することができる。または、電子機器を小型化することが容易になる。
電子部品7000は、デジタル信号処理、ソフトウェア無線、アビオニクス(通信機器、航法システム、自動操縦装置、飛行管理システム等の航空に関する電子機器)、ASICのプロトタイピング、医療用画像処理、音声認識、暗号、バイオインフォマティクス(生物情報科学)、機械装置のエミュレータ、および電波天文学における電波望遠鏡等、幅広い分野の電子機器の電子部品(ICチップ)に適用することが可能である。このような電子機器としては、カメラ(ビデオカメラ、デジタルスチルカメラ等)、表示装置、パーソナルコンピュータ(PC)、携帯電話、携帯型を含むゲーム機、携帯型情報端末(スマートフォン、タブレット型情報端末など)、電子書籍端末、ウエアラブル型情報端末(時計型、ヘッドマウント型、ゴーグル型、眼鏡型、腕章型、ブレスレット型、ネックレス型等)、ナビゲーションシステム、音響再生装置(カーオーディオ、デジタルオーディオプレイヤー等)、複写機、ファクシミリ、プリンタ、プリンタ複合機、現金自動預け入れ払い機(ATM)、自動販売機、家庭用電化製品などが挙げられる。
次いで、コンピュータ、携帯情報端末(携帯電話、携帯型ゲーム機、音響再生装置なども含む)、電子ペーパー、テレビジョン装置(テレビ、又はテレビジョン受信機ともいう)、デジタルビデオカメラなどの電子機器に、上述の電子部品を適用する場合について説明する。
図26(A)は、携帯型の情報端末であり、筐体8010、筐体8020、第1の表示部8030a、第2の表示部8030bなどによって構成されている。筐体8010又は筐体8020には、先の実施の形態に示す半導体装置を設けることができる。
なお、第1の表示部8030aはタッチ入力機能を有するパネルとなっており、例えば図26(A)の左図のように、第1の表示部8030aに表示される選択ボタン8040により「タッチ入力」を行うか、「キーボード入力」を行うかを選択できる。選択ボタンは様々な大きさで表示できるため、幅広い世代の人が使いやすさを実感できる。ここで、例えば「キーボード入力」を選択した場合、図26(A)の右図のように第1の表示部8030aにはキーボード8050が表示される。これにより、従来の情報端末と同様に、キー入力による素早い文字入力などが可能となる。
また、図26(A)に示す携帯型の情報端末は、図26(A)の右図のように、第1の表示部8030a及び第2の表示部8030bのうち、一方を取り外すことができる。第2の表示部8030bもタッチ入力機能を有するパネルとし、持ち運びの際、さらなる軽量化を図ることができ、一方の手で筐体8020を持ち、他方の手で操作することができるため便利である。
図26(A)に示す携帯型の情報端末は、様々な情報(静止画、動画、テキスト画像など)を表示する機能、カレンダー、日付又は時刻などを表示部に表示する機能、表示部に表示した情報を操作又は編集する機能、様々なソフトウェア(プログラム)によって処理を制御する機能、等を有することができる。また、筐体の裏面や側面に、外部接続用端子(イヤホン端子、USB端子など)、記録媒体挿入部などを備える構成としてもよい。
また、図26(A)に示す携帯型の情報端末は、無線で情報を送受信できる構成としてもよい。無線により、電子書籍サーバから、所望の書籍データなどを購入し、ダウンロードする構成とすることも可能である。
更に、図26(A)に示す筐体8020にアンテナやマイク機能や無線機能を持たせ、携帯電話として用いてもよい。
図26(B)は、電子ペーパーを実装した電子書籍端末8100であり、筐体8110と筐体8120の2つの筐体で構成されている。筐体8110及び筐体8120には、それぞれ表示部8130及び表示部8140が設けられている。筐体8110と筐体8120は、軸部8150により接続されており、該軸部8150を軸として開閉動作を行うことができる。また、筐体8110は、電源8160、操作キー8170、スピーカー8180などを備えている。筐体8110又は筐体8120には、先の実施の形態に示す半導体装置を設けることができる。
図26(C)は、テレビジョン装置であり、筐体8210、表示部8220、スタンド8230などで構成されている。テレビジョン装置8200の操作は、筐体8210が備えるスイッチや、リモコン操作機8240により行うことができる。筐体8210及びリモコン操作機8240には、先の実施の形態に示す半導体装置を設けることができる。
図26(D)は、スマートフォンであり、本体8300には、表示部8310と、スピーカー8320と、マイク8330と、操作ボタン8340等が設けられている。本体8300内には、先の実施の形態に示す半導体装置を設けることができる。
図26(E)は、デジタルカメラであり、本体8410、表示部8420、操作スイッチ8430などによって構成されている。本体8410内には、先の実施の形態に示す半導体装置を設けることができる。
本実施の形態は、他の実施の形態の記載と適宜組み合わせることができる。
10 PLD
11 アレイ
12 コントローラ
13 駆動回路
14 駆動回路
20 ロジックアレイ
30 入出力アレイ
100 マップ
200 情報処理装置
210 演算装置
211 演算部
212 記憶部
213 伝送路
214 インターフェース
220 入出力装置
221 表示部
222 操作部
223 入出力部
224 通信部
300 LE
301 入力端子
302 出力端子
303 出力端子
310 LUT
320 フリップフロップ
330 コンフィギュレーションメモリ
518 絶縁層
801 トランジスタ
811 絶縁層
812 絶縁層
813 絶縁層
814 絶縁層
815 絶縁層
816 絶縁層
817 絶縁層
818 絶縁層
819 絶縁層
820 絶縁層
821 金属酸化物膜
822 金属酸化物膜
823 金属酸化物膜
824 金属酸化物膜
830 酸化物層
850 導電層
851 導電層
852 導電層
853 導電層
870 単結晶シリコンウエハ
871 CMOS層
872 トランジスタ層
873 ゲート電極
874 電極
875 電極
7000 電子部品
7001 リード
7002 プリント基板
7004 回路基板
7100 半導体ウエハ
7102 回路領域
7104 分離領域
7106 分離線
7110 チップ
8010 筐体
8020 筐体
8030a 表示部
8030b 表示部
8040 選択ボタン
8050 キーボード
8100 電子書籍端末
8110 筐体
8120 筐体
8130 表示部
8140 表示部
8150 軸部
8160 電源
8170 操作キー
8180 スピーカー
8200 テレビジョン装置
8210 筐体
8220 表示部
8230 スタンド
8240 リモコン操作機
8300 本体
8310 表示部
8320 スピーカー
8330 マイク
8340 操作ボタン
8410 本体
8420 表示部
8430 操作スイッチ

Claims (6)

  1. プログラマブルロジックデバイスの配置配線を行う機能を有するプログラムであって、
    論理回路を配置する順番を決定するリストを作成するステップと、
    前記リストに従って、第1の論理回路を第1の領域に配置するステップと、
    前記リストに従って、第2の論理回路を第2の領域に配置するステップと、
    前記第1の論理回路と前記第2の論理回路を接続するためのバッファを第3の領域に配置するステップと、を実行する機能を有し、
    前記第1の領域及び前記第2の領域は、前記プログラマブルロジックデバイスに配置される演算ブロックに対応するソフトウェア上の領域であり、
    前記第3の領域は、前記プログラマブルロジックデバイスに配置されるバッファブロックに対応するソフトウェア上の領域であるプログラム。
  2. 請求項1において、
    前記論理回路を配置する順番は、前記論理回路の接続数に基づいて決定されるプログラム。
  3. 請求項1又は2において、
    前記第2の領域は、前記第1の論理回路と前記第2の論理回路を接続するパスのコストに基づいて決定されるプログラム。
  4. 請求項1乃至3のいずれか一項において、
    前記第2の論理回路を配置する領域が存在しない場合に、前記第1の論理回路を再配置するステップを実行する機能を有するプログラム。
  5. 請求項1乃至4のいずれか一項に記載のプログラムが記憶された非一時的コンピュータ可読記憶媒体。
  6. プログラマブルロジックデバイスの配置配線方法であって、
    論理回路を配置する順番を決定するリストを作成するステップと、
    前記リストに従って、第1の論理回路を、前記プログラマブルロジックデバイスに配置される演算ブロックに対応するソフトウェア上の領域である第1の領域に配置するステップと、
    前記リストに従って、第2の論理回路を、前記プログラマブルロジックデバイスに配置される演算ブロックに対応するソフトウェア上の領域である第2の領域に配置するステップと、
    前記第1の領域と前記第2の領域を接続するバッファを、前記プログラマブルロジックデバイスに配置されるバッファブロックに対応するソフトウェア上の領域である第3の領域に配置するステップと、を有する配置配線方法。
JP2017000823A 2017-01-06 2017-01-06 プログラム、非一時的コンピュータ可読記憶媒体及び配置配線方法 Withdrawn JP2018109920A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017000823A JP2018109920A (ja) 2017-01-06 2017-01-06 プログラム、非一時的コンピュータ可読記憶媒体及び配置配線方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017000823A JP2018109920A (ja) 2017-01-06 2017-01-06 プログラム、非一時的コンピュータ可読記憶媒体及び配置配線方法

Publications (1)

Publication Number Publication Date
JP2018109920A true JP2018109920A (ja) 2018-07-12

Family

ID=62844949

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017000823A Withdrawn JP2018109920A (ja) 2017-01-06 2017-01-06 プログラム、非一時的コンピュータ可読記憶媒体及び配置配線方法

Country Status (1)

Country Link
JP (1) JP2018109920A (ja)

Similar Documents

Publication Publication Date Title
JP6336770B2 (ja) プログラマブルロジックデバイス及び半導体装置
JP6574579B2 (ja) 半導体装置及び電子機器
JP6965327B2 (ja) 半導体装置
TWI649746B (zh) 半導體裝置
JP7128871B2 (ja) 半導体装置
JP6329843B2 (ja) 半導体装置
JP2017153077A (ja) 半導体装置
JP2017135698A (ja) 半導体装置、コンピュータ及び電子機器
JP2024022617A (ja) 半導体装置
JP2016067004A (ja) 半導体装置、電子部品及び電子機器
JP2018109920A (ja) プログラム、非一時的コンピュータ可読記憶媒体及び配置配線方法
US10797706B2 (en) Semiconductor device
JP2016146418A (ja) 半導体装置、電子部品および電子機器
JP2017201661A (ja) 半導体装置、記憶装置、表示装置、および電子機器

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191219

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20200908