JP2018129046A - Aiシステム - Google Patents

Aiシステム Download PDF

Info

Publication number
JP2018129046A
JP2018129046A JP2018019869A JP2018019869A JP2018129046A JP 2018129046 A JP2018129046 A JP 2018129046A JP 2018019869 A JP2018019869 A JP 2018019869A JP 2018019869 A JP2018019869 A JP 2018019869A JP 2018129046 A JP2018129046 A JP 2018129046A
Authority
JP
Japan
Prior art keywords
transistor
circuit
memory
current
data
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
JP2018019869A
Other languages
English (en)
Inventor
山崎 舜平
Shunpei Yamazaki
舜平 山崎
池田 隆之
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
Publication of JP2018129046A publication Critical patent/JP2018129046A/ja
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Design And Manufacture Of Integrated Circuits (AREA)
  • Semiconductor Memories (AREA)
  • Non-Volatile Memory (AREA)
  • Thin Film Transistor (AREA)

Abstract

【課題】低消費電力でニューラルネットワークを構成するAIシステムを提供する。【解決手段】演算部と、制御部と、を有するAIシステムである。演算部は、第1メモリと、第2メモリと、演算回路と、を有する。第1メモリは、演算回路と制御部との間で入出力されるデジタルデータを保持することができる機能を有する。第2メモリは、アナログデータを保持することができる機能を有する。演算回路は、アナログデータを用いた演算を行うことでニューラルネットワークによる学習または推論を実行する機能を有する。第1メモリと、第2メモリと、演算回路と、は、それぞれ第1トランジスタを有する。第1トランジスタは、チャネル形成領域に酸化物半導体を含む。【選択図】図1

Description

本発明の一形態は、AIシステムに関する。
また、本発明の一形態は半導体装置に関する。なお、本発明の一形態は上記の技術分野に限定されない。本明細書等で開示する発明の技術分野は、物、方法、または、製造方法に関するものである。または、本発明の一形態は、プロセス、マシン、マニュファクチャ、または、組成物(コンポジション・オブ・マター)に関するものである。
なお、本明細書等において半導体装置とは、半導体特性を利用することで機能しうる装置全般を指す。表示装置、発光装置、記憶装置、電気光学装置、蓄電装置、半導体回路及び電子機器は、半導体装置を有する場合がある。
近年、人工ニューラルネットワーク(以下、ニューラルネットワークと呼ぶ)を用いた人工知能(AI:Artificial Intelligence)の開発が盛んに行われ、主に画像認識の分野で成功例が報告されている。
また、近年、チャネル形成領域に酸化物半導体または金属酸化物を用いたトランジスタ(Oxide Semiconductorトランジスタ、以下、OSトランジスタと呼ぶ)が注目されている。OSトランジスタはオフ電流が極めて小さい。そのことを利用して、OSトランジスタを用いたアプリケーションが提案されている。
例えば、特許文献1では、ニューラルネットワークの学習に、OSトランジスタを用いた例が開示されている。
また、OSトランジスタのオフ電流が小さいことを利用して、OSトランジスタをメモリに用いた例が報告されている。例えば、特許文献2には、OSトランジスタを、DRAM(Dynamic Random Access Memory)に用いた例が開示されている。例えば、特許文献3には、OSトランジスタを用いた不揮発性メモリが開示されている。本明細書では、OSトランジスタを用いたメモリをOSメモリと呼称する。OSメモリは、書き換え可能回数に制限がなく、消費電力も少ない。
米国特許公開第2016/0343452号明細書 特開2013−168631号公報 特開2012−069932号公報
ニューラルネットワークを用いた学習および推論は計算規模が大きく、長時間の計算を要する。そのため、半導体回路などのハードウェアでニューラルネットワークを構成し、計算時間を短縮する試みが行われているが、論理回路のみでニューラルネットワークを構成した場合、回路規模が大きく、消費電力が高い。
本発明の一形態は、低消費電力でニューラルネットワークを構成することが可能なAIシステムを提供することを課題の一とする。また、本発明の一形態は、低消費電力でニューラルネットワークを構成することが可能な半導体装置を提供することを課題の一とする。また、本発明の一形態は、低コストで製造することが可能なAIシステムを提供することを課題の一とする。また、本発明の一形態は、低コストで製造することが可能な半導体装置を提供することを課題の一とする。また、本発明の一形態は、新規な半導体装置を提供することを課題の一とする。
なお、複数の課題の記載は、互いの課題の存在を妨げるものではない。なお、本発明の一形態は、これらの課題の全て解決する必要はない。また、列記した以外の課題が、明細書、図面、請求項などの記載から、自ずと明らかとなるものであり、これらの課題も、本発明の一形態の課題となり得る。
本発明の一形態は、演算部と、制御部と、を有するAIシステムである。演算部は、第1メモリと、第2メモリと、演算回路と、を有する。第1メモリは、演算回路と制御部との間で入出力されるデジタルデータを保持することができる機能を有する。第2メモリは、アナログデータを保持することができる機能を有する。演算回路は、アナログデータを用いた演算を行うことでニューラルネットワークによる学習または推論を実行する機能を有する。第1メモリと、第2メモリと、演算回路と、は、それぞれ第1トランジスタを有する。第1トランジスタは、チャネル形成領域に酸化物半導体を含む。
上記形態において、ニューラルネットワークは、深層ニューラルネットワーク、畳み込みニューラルネットワーク、再帰型ニューラルネットワーク、自己符号化器、深層ボルツマンマシン、または深層信念ネットワークであることが好ましい。
上記形態において、演算部は、A/D変換回路と、D/A変換回路と、積和演算回路と、を有することが好ましい。
上記形態において、制御部は、CPU、GPU、PLL、SRAM、PROM、メモリコントローラ、電源回路およびPMUの中から選ばれる一または複数を有することが好ましい。
上記形態において、入出力部を有することが好ましい。入出力部は、外部記憶制御回路、音声コーデック、映像コーデック、汎用入出力モジュールおよび通信モジュールの中から選ばれる一または複数を有することが好ましい。
上記形態において、第1メモリと、第2メモリと、演算回路と、は、それぞれ第2トランジスタを有することが好ましい。第2トランジスタは、チャネル形成領域にシリコンを含み、第1トランジスタが設けられる層は、第2トランジスタが設けられる層と重ねて配置される。
本発明の一形態により、低消費電力でニューラルネットワークを構成することが可能なAIシステムを提供することができる。また、本発明の一形態により、低消費電力でニューラルネットワークを構成することが可能な半導体装置を提供することができる。また、本発明の一形態により、低コストで製造することが可能なAIシステムを提供することができる。また、本発明の一形態により、低コストで製造することが可能な半導体装置を提供することができる。また、本発明の一形態により、新規な半導体装置を提供することができる。
なお、これらの効果の記載は、他の効果の存在を妨げるものではない。なお、本発明の一形態は、これらの効果の全てを有する必要はない。なお、これら以外の効果は、明細書、図面、請求項などの記載から、自ずと明らかとなるものであり、明細書、図面、請求項などの記載から、これら以外の効果を抽出することが可能である。
AIシステムの構成例を示すブロック図。 AIシステムの構成例を示すブロック図。 AIシステムの構成例を示すブロック図。 AIシステムの構成例を示すブロック図。 AIシステム の応用例を説明するブロック図。 AIシステムを組み込んだICの構成例を示す斜視模式図。 A:DOSRAMの構成例を示す機能ブロック図。B:メモリセルアレイの構成例を示す図。C:メモリセルの構成例を示す回路図。 NOSRAMの構成例を示す機能ブロック図。 A−E:メモリセルの構成例を示す回路図。 OS−FPGAの構成例を説明するブロック図。 OS−FPGAの構成例を説明するブロック図。 OS−FPGAの構成例を説明する回路図およびタイミングチャート。 OS−FPGAの構成例を説明する回路図。 OS−FPGAの構成例を説明する回路図およびタイミングチャート。 積和演算回路の構成例を示す機能ブロック図。 アナログメモリ参照メモリの構成例を示す回路図。 電流回路の構成例を示す回路図。 積和演算回路の動作例を示すタイミングチャート。 容量型D/A変換回路の構成例を示す回路図。
以下、実施の形態について図面を参照しながら説明する。但し、実施の形態は多くの異なる形態で実施することが可能であり、趣旨及びその範囲から逸脱することなくその形態及び詳細を様々に変更し得ることは当業者であれば容易に理解される。従って、本発明は、以下の実施の形態の記載内容に限定して解釈されるものではない。
また、図面において、大きさ、層の厚さ、または領域は、明瞭化のために誇張されている場合がある。よって、必ずしもそのスケールに限定されない。なお図面は、理想的な例を模式的に示したものであり、図面に示す形状または値などに限定されない。
なお、本明細書においてニューラルネットワークとは、生物の神経回路網を模し、学習によってニューロンどうしの結合強度を決定し、問題解決能力を持たせるモデル全般を指す。ニューラルネットワークは入力層、中間層(隠れ層ともいう)、出力層を有する。ニューラルネットワークのうち、2層以上の中間層を有するものをディープニューラルネットワーク(DNN)と呼称する。ディープニューラルネットワークによる学習を「ディープラーニング」と呼称する。
また、本明細書において、ニューラルネットワークについて述べる際に、既にある情報からニューロンとニューロンの結合強度(重み係数とも言う)を決定することを「学習」と呼ぶ場合がある。
また、本明細書において、学習によって得られた結合強度を用いてニューラルネットワークを構成し、そこから新たな結論を導くことを「推論」と呼ぶ場合がある。
また、本明細書は、以下の実施の形態を適宜組み合わせることが可能である。また、1つの実施の形態の中に、複数の構成例が示される場合は、互い構成例を適宜組み合わせることが可能である。
(実施の形態1)
本実施の形態では、本発明の一形態であるAIシステムについて説明を行う。
図1はAIシステム41の構成例を示すブロック図である。AIシステム41は、演算部10と、制御部20と、入出力部30を有する。
演算部10は、アナログ演算回路11と、DOSRAM12と、NOSRAM13と、を有する。
なお、DOSRAM(登録商標)とは、「Dynamic Oxide Semiconductor RAM」の略称であり、1T(トランジスタ)1C(容量)型のメモリセルを有するRAMを指す。
また、NOSRAM(登録商標)とは「Nonvolatile Oxide Semiconductor RAM」の略称であり、ゲインセル型(2T型、3T型)のメモリセルを有するRAMを指す。DOSRAM、NOSRAMは、OSトランジスタのオフ電流が低いことを利用したメモリである。
制御部20は、CPU(Central Processing Unit)21と、GPU(Graphics Processing Unit)22と、PLL(Phase Locked Loop)23と、SRAM(Static Random Access Memory)24と、PROM(Programmable Read Only Memory)25と、メモリコントローラ26と、電源回路27と、PMU(Power Management Unit)28と、を有する。
入出力部30は、外部記憶制御回路31と、音声コーデック32と、映像コーデック33と、汎用入出力モジュール34と、通信モジュール35と、を有する。
演算部10は、ニューラルネットワークによる学習または推論を実行することができる。
アナログ演算回路11はA/D(アナログ/デジタル)変換回路、D/A(デジタル/アナログ)変換回路、および積和演算回路を有する。
アナログ演算回路11はOSトランジスタを用いて形成する。OSトランジスタを用いたアナログ演算回路11は、アナログメモリを有し、学習または推論に必要な積和演算を、低消費電力で実行することが可能になる。なお、OSトランジスタを用いた積和演算回路の詳細は、後述する実施の形態9で説明を行う。
DOSRAM12は、OSトランジスタを用いて形成されたDRAMであり、DOSRAM12は、CPU21から送られてくるデジタルデータを一時的に格納するメモリである。DOSRAM12は、OSトランジスタを含むメモリセルと、Siトランジスタを含む読み出し回路部を有する。上記メモリセルと読み出し回路部は、積層された異なる層に設けることができるため、DOSRAM12は、全体の回路面積を小さくすることができる。なお、DOSRAMの詳細は後述する実施の形態7で説明を行う。
ニューラルネットワークを用いた計算は、入力データが1000を超えることがある。上記入力データをSRAMに格納する場合、SRAMは回路面積に制限があり、記憶容量が小さいため、上記入力データを小分けにして格納せざるを得ない。DOSRAM12は、限られた回路面積でも、メモリセルを高集積に配置することが可能であり、SRAMに比べて記憶容量が大きい。そのため、DOSRAM12は、上記入力データを効率よく格納することができる。
また、DOSRAM12は、メモリセルアレイを細かく分けて、効率的に配置することができる。例えば、容量型D/A変換回路の例を図19に示す。容量素子81は論理回路と比べて大きな面積を占める。DOSRAM12は、容量素子81の近くに配置することができ、効率的に面積を利用することができる。なお、図ではビット線1列を1つの容量に対応させているが、ビット線を複数に分割しても構わない。
NOSRAM13はOSトランジスタを用いた不揮発性メモリである。NOSRAM13は、フラッシュメモリや、ReRAM(Resistive Random Access Memory)、MRAM(Magnetoresistive Random Access Memory)などの他の不揮発性メモリと比べて、データを書き込む際の消費電力が小さい。また、フラッシュメモリやReRAMのように、データを書き込む際に素子が劣化することもなく、データの書き込み可能回数に制限が無い。なお、NOSRAMの詳細は後述する実施の形態7で説明を行う。
また、NOSRAM13は、1ビットの2値データの他に、2ビット以上の多値データを記憶することができる。NOSRAM13は多値データを記憶することで、1ビット当たりのメモリセル面積を小さくすることができる。
また、NOSRAM13は、デジタルデータの他にアナログデータを記憶することができる。そのため、アナログ演算回路11は、NOSRAM13をアナログメモリとして用いることもできる。NOSRAM13は、アナログデータのまま記憶することができるため、D/A変換回路やA/D変換回路が不要である。そのため、NOSRAM13は周辺回路の面積を小さくすることができる。なお、本明細書においてアナログデータとは、3ビット(8値)以上分解能を有するデータのことを指す。上述した多値データがアナログデータに含まれる場合もある。
ニューラルネットワークの計算に用いられるデータやパラメータは、一旦、NOSRAM13に格納することができる。上記データやパラメータは、CPU21を介して、AIシステム41の外部に設けられたメモリに格納してもよいが、内部に設けられたNOSRAM13の方が、より高速且つ低消費電力に上記データやパラメータを格納することができる。また、NOSRAM13は、DOSRAM12よりもビット線を長くすることができるので、記憶容量を大きくすることができる。
AIシステム41は、アナログ演算回路11、DOSRAM12およびNOSRAM13を1つのダイ(チップ)の上に設けることができる。そのため、AIシステム41は、高速且つ低消費電力に、ニューラルネットワークの計算を実行することができる。また、アナログ演算回路11、DOSRAM12およびNOSRAM13は、同じ製造プロセスで作製することができる。そのため、AIシステム41は、低コストで作製することができる。
AIシステム41は、解決したい課題に応じて、ディープニューラルネットネットワーク(DNN)、畳み込みニューラルネットワーク(CNN)、再帰型ニューラルネットワーク(RNN)、自己符号化器、深層ボルツマンマシン(DBM)、深層信念ネットワーク(DBN)などの手法を実行することができる。PROM25は、これらの手法の少なくとも一つを実行するためのプログラムを保存することができる。また、当該プログラムの一部または全てを、NOSRAM13に保存してもよい。
ライブラリとして存在する既存のプログラムは、GPUの処理を前提としているものが多い。そのため、AIシステム41はGPU22を有することが好ましい。AIシステム41は、学習と推論で用いられる積和演算のうち、律速となる積和演算を演算部10で実行し、それ以外の積和演算をGPU22で実行することができる。そうすることで、学習と推論を高速に実行することができる。
電源回路27は、論理回路用の低電源電位を生成するだけではなく、アナログ演算のための電位生成も行う。電源回路27はOSメモリを用いてもよい。電源回路27は、基準電位をOSメモリに保存することで、消費電力を下げることができる。
PMU28は、AIシステム41の電力供給を一時的にオフにする機能を有する。
CPU21およびGPU22は、レジスタとしてOSメモリを有することが好ましい。CPU21およびGPU22はOSメモリを有することで、電力供給がオフになっても、OSメモリ中にデータ(論理値)を保持し続けることができる。その結果、AIシステム41は、電力を節約することができる。
PLL23は、クロックを生成する機能を有する。AIシステム41は、PLL23が生成したクロックを基準に動作を行う。PLL23はOSメモリを有することが好ましい。PLL23はOSメモリを有することで、クロックの発振周期を制御するアナログ電位を保持することができる。
AIシステム41は、DRAMなどの外部メモリにデータを保存してもよい。そのため、AIシステム41は、外部のDRAMとのインターフェースとして機能するメモリコントローラ26を有することが好ましい。また、メモリコントローラ26は、CPU21またはGPU22の近くに配置することが好ましい。そうすることで、データのやり取りを高速に行うことができる。
制御部20に示す回路の一部または全ては、演算部10と同じダイの上に形成することができる。そうすることで、AIシステム41は、高速且つ低消費電力に、ニューラルネットワークの計算を実行することができる。
ニューラルネットワークの計算に用いられるデータは外部記憶装置(HDD(Hard Disk Drive)、SSD(Solid State Drive)など)に保存される場合が多い。そのため、AIシステム41は、外部記憶装置とのインターフェースとして機能する外部記憶制御回路31を有することが好ましい。
ニューラルネットワークを用いた学習と推論は、音声や映像を扱うことが多いので、AIシステム41は音声コーデック32および映像コーデック33を有する。音声コーデック32は、音声データのエンコード(符号化)およびデコード(復号)を行い、映像コーデック33は、映像データのエンコードおよびデコードを行う。
AIシステム41は、外部センサから得られたデータを用いて学習または推論を行うことができる。そのため、AIシステム41は汎用入出力モジュール34を有する。汎用入出力モジュール34は、例えば、USB(Universal Serial Bus)やI2C(Inter−Integrated Circuit)などを含む。
AIシステム41は、インターネットを経由して得られたデータを用いて学習または推論を行うことができる。そのため、AIシステム41は、通信モジュール35を有することが好ましい。
アナログ演算回路11は、多値のフラッシュメモリをアナログメモリとして用いてもよい。しかし、フラッシュメモリは書き換え可能回数に制限がある。また、多値のフラッシュメモリは、エンベディッドで形成する(演算回路とメモリを同じダイの上に形成する)ことが非常に難しい。
また、アナログ演算回路11は、ReRAMをアナログメモリとして用いてもよい。しかし、ReRAMは書き換え可能回数に制限があり、記憶精度の点でも問題がある。さらに、2端子でなる素子であるため、データの書き込みと読み出しを分ける回路設計が複雑になる。
また、アナログ演算回路11は、MRAMをアナログメモリとして用いてもよい。しかし、MRAMは抵抗変化率が低く、記憶精度の点で問題がある。
以上を鑑み、アナログ演算回路11は、OSメモリをアナログメモリとして用いることが好ましい。
以上、本実施の形態に示すAIシステムを用いることで、低消費電力でニューラルネットワークを構成することが可能なAIシステムを提供することができる。また、低消費電力でニューラルネットワークを構成することが可能な半導体装置を提供することができる。また、本実施の形態に示すAIシステムは、低コストで製造することが可能なAIシステムを提供することができる。また、低コストで製造することが可能な半導体装置を提供することができる。
(実施の形態2)
本実施の形態では、実施の形態1に示すAIシステム41の異なる形態について説明を行う。
図2に示すAIシステム42は、演算部10がアナログ演算回路11、NOSRAM13およびFPGA(Field Programmable Gate Array)14を有する点で、図1のAIシステム41と異なる。
図1のAIシステム41は、PROM25に保存されたプログラム(ソフトウェア)が、ニューラルネットワークの接続を決定し、DNN、CNNまたはRNNなど、ニューラルネットワークのモデルを選択するが、上記ニューラルネットワークの接続は、ハードウェアで構成した方がより高速に実行することができる。AIシステム42はFPGA14を用いることで、ハードウェアで上記ニューラルネットワークの接続を構成することができる。
FPGA14はOSトランジスタを有するFPGAである。なお、本明細書において、OSトランジスタを有するFPGAをOS−FPGAと呼称する。
OS−FPGAは、SRAMで構成されるFPGAよりもメモリの面積を小さくすることができる。そのため、コンテキスト切り替え機能を追加しても面積増加が少ない。また、OS−FPGAはブースティングによりデータやパラメータを高速に伝えることができる。なお、OS−FPGAの詳細は後述する実施の形態8で説明を行う。
AIシステム42は、DOSRAM12が省略されているが、演算部10は入力データがアナログデータである場合、DOSRAM12を省略しても構わない。この場合、D/A変換回路がDOSRAM12の代わりを兼ねることができる。
D/A変換回路には抵抗ストリング型、抵抗ラダー型、容量型、デルタシグマ型などがある。抵抗ストリング型は、電源電位が抵抗によって分割され、その一部をスイッチで選択することによりアナログ電位を生成する。CPUなどから送られた入力デジタル信号は(レジスタを介しても構わないが)直接スイッチを制御することができる。同様に抵抗ラダー型や容量型はデジタル信号のビット数に応じて複数の抵抗または容量をスイッチで選択することによりアナログ電位を生成する。また、デルタシグマ型では多ビットのデジタル値を1ビットのパルス変調信号に変え、平滑化することでアナログ電位を得る。この1ビットのパルスを生成するためのメモリはレジスタ(フリップフロップ)で十分である。
AIシステム42は、アナログ演算回路11、NOSRAM13およびFPGA14を1つのダイの上に設けることができる。そのため、AIシステム42は、高速且つ低消費電力に、ニューラルネットワークの計算を実行することができる。また、アナログ演算回路11、NOSRAM13およびFPGA14は、同じ製造プロセスで作製することができる。そのため、AIシステム42は、低コストで作製することができる。
AIシステム42のその他の構成要素の詳細は、実施の形態1に示すAIシステム41の記載を参照すればよい。
(実施の形態3)
本実施の形態では、上記実施の形態に示すAIシステム41、42と異なる形態について説明を行う。
図3に示すAIシステム43は、演算部10がアナログ演算回路11、DOSRAM12およびFPGA14を有する点で、AIシステム41、42と異なる。
AIシステム43は、NOSRAM13が省略されているが、複数のアナログ演算回路をFPGA14で繋ぎかえることで、データとパラメータの一時記憶が不要になる。そのため、NOSRAM13を省くことができる。
AIシステム43は、アナログ演算回路11、DOSRAM12およびFPGA14を1つのダイの上に設けることができる。そのため、AIシステム42は、高速且つ低消費電力に、ニューラルネットワークの計算を実行することができる。また、アナログ演算回路11、DOSRAM12およびFPGA14は、同じ製造プロセスで作製することができる。そのため、AIシステム43は、低コストで作製することができる。
AIシステム43のその他の構成要素の詳細は、上記実施の形態に示すAIシステム41、42の記載を参照すればよい。
(実施の形態4)
本実施の形態では、上記実施の形態に示すAIシステム41乃至43と異なる形態について説明を行う。
図4に示すAIシステム44は、演算部10がアナログ演算回路11、DOSRAM12、NOSRAM13およびFPGA14を有する点で、AIシステム41乃至43と異なる。
ニューラルネットワークの計算で扱う課題が複雑になると、これまでに示したAIシステム41乃至43では、アナログ演算に必要なモジュールが足りなくなる場合がある。AIシステム44は、DOSRAM12、NOSRAM13およびFPGA14を有することで、より複雑な課題に対応することができる。
AIシステム44は、アナログ演算回路11、DOSRAM12、NOSRAM13およびFPGA14を1つのダイの上に設けることができる。そのため、AIシステム44は、高速且つ低消費電力に、ニューラルネットワークの計算を実行することができる。また、アナログ演算回路11、DOSRAM12、NOSRAM13およびFPGA14は、同じ製造プロセスで作製することができる。そのため、AIシステム44は、低コストで作製することができる。
AIシステム44のその他の構成要素の詳細は、上記実施の形態に示すAIシステム41乃至43の記載を参照すればよい。
(実施の形態5)
<AIシステムの応用例>
本実施の形態では、上記実施の形態に示すAIシステムの応用例について図5を用いて説明を行う。
図5(A)は、図1で説明したAIシステム41を並列に配置し、バス線を介してシステム間での信号の送受信を可能にしたAIシステムである。
図5(A)に図示するAIシステム41Aは、複数のAIシステム41_1乃至AIシステム41_n(nは自然数)を有する。AIシステム41_1乃至AIシステム41_nは、バス線98を介して互いに接続されている。
また図5(B)は、図1で説明したAIシステム41を図5(A)と同様に並列に配置し、ネットワークを介してシステム間での信号の送受信を可能にしたAIシステムである。
図5(B)に図示するAIシステム41Bは、複数のAIシステム41_1乃至AIシステム41_nを有する。AIシステム41_1乃至AIシステム41_nは、ネットワーク99を介して互いに接続されている。
ネットワーク99は、AIシステム41_1乃至AIシステム41_nのそれぞれに通信モジュールを設け、無線または有線による通信を行う構成とすればよい。通信モジュールは、アンテナを介して通信を行うことができる。例えばWorld Wide Web(WWW)の基盤であるインターネット、イントラネット、エクストラネット、PAN(Personal Area Network)、LAN(Local Area Network)、CAN(Campus Area Network)、MAN(Metropolitan Area Network)、WAN(Wide Area Network)、GAN(Global Area Network)等のコンピュータネットワークに各電子装置を接続させ、通信を行うことができる。無線通信を行う場合、通信プロトコル又は通信技術として、LTE(Long Term Evolution)、GSM(Global System for Mobile Communication:登録商標)、EDGE(Enhanced Data Rates for GSM Evolution)、CDMA2000(Code Division Multiple Access 2000)、W−CDMA(登録商標)などの通信規格、またはWi−Fi(登録商標)、Bluetooth(登録商標)、ZigBee(登録商標)等のIEEEにより通信規格化された仕様を用いることができる。
図5(A)、(B)の構成とすることで、外部のセンサ等で得られたアナログ信号を別々のAIシステムで処理することができる。例えば、生体情報のように、脳波、脈拍、血圧、体温等といった情報を脳波センサ、脈波センサ、血圧センサ、温度センサといった各種センサで取得し、別々のAIシステムでアナログ信号を処理することができる。別々のAIシステムのそれぞれで信号の処理、または学習を行うことで一つのAIシステムあたりの情報処理量を少なくできる。そのため、より少ない演算量で信号の処理、または学習を行うことができる。その結果、認識精度を高めることができる。それぞれのAIシステムで得られた情報から、複雑に変化する生体情報の変化を瞬時に統合的に把握することができるといったことが期待できる。
なお、本実施の形態に示すAIシステムは、上記実施の形態に示すAIシステム42乃至44についても、同様に適用することができる。
(実施の形態6)
本実施の形態は、上記実施の形態に示すAIシステムが組み込まれたICの一例を示す。
上記実施の形態に示すAIシステムは、CPU等のSiトランジスタでなるデジタル処理回路と、OSトランジスタを用いたアナログ演算回路、OS−FPGAおよびDOSRAM、NOSRAM等のOSメモリを、1のダイに集積することができる。
図6に、AIシステムを組み込んだICの一例を示す。図6に示すAIシステムIC7000は、リード7001及び回路部7003を有する。AIシステムIC7000は、例えばプリント基板7002に実装される。このようなICチップが複数組み合わされて、それぞれがプリント基板7002上で電気的に接続されることで電子部品が実装された基板(実装基板7004)が完成する。回路部7003には、本実施の形態で示した各種の回路が1のダイに設けられている。回路部7003は積層構造をもち、Siトランジスタ層7031、配線層7032、OSトランジスタ層7033に大別される。OSトランジスタ層7033をSiトランジスタ層7031に積層して設けることができるため、AIシステムIC7000の小型化が容易である。
図6では、AIシステムIC7000のパッケージにQFP(Quad Flat Package)を適用しているが、パッケージの態様はこれに限定されない。
CPU等のデジタル処理回路と、OSトランジスタを用いたアナログ演算回路、OS−FPGAおよびDOSRAM、NOSRAM等のOSメモリは、全て、Siトランジスタ層7031、配線層7032およびOSトランジスタ層7033に形成することができる。すなわち、上記AIシステムを構成する素子は、同一の製造プロセスで形成することが可能である。そのため、本実施の形態に示すICは、構成する素子が増えても製造プロセスを増やす必要がなく、上記AIシステムを低コストで組み込むことができる。
(実施の形態7)
本実施の形態では、上実施の形態に示すAIシステムに搭載可能なメモリ装置について説明する。本実施の形態では、OSメモリの一例として、DOSRAMおよびNOSRAMについて説明する。
<<DOSRAM1400>>
図7(A)−図7(C)を参照して、DOSRAMについて説明する。
図7(A)に示すDOSRAM1400は、コントローラ1405、行回路1410、列回路1415、MC−SAアレイ1420を有する。行回路1410はデコーダ1411、ワード線ドライバ1412、列セレクタ1413、センスアンプドライバ1414を有する。列回路1415はグローバルセンスアンプアレイ1416、入出力回路1417を有する。グローバルセンスアンプアレイ1416は複数のグローバルセンスアンプ1447を有する。MC−SAアレイ1420はメモリセルアレイ1422、センスアンプアレイ1423、グローバルビット線GBLL、GBLRを有する。
(MC−SAアレイ1420)
MC−SAアレイ1420は、メモリセルアレイ1422をセンスアンプアレイ1423上に積層した積層構造をもつ。グローバルビット線GBLL、GBLRはメモリセルアレイ1422上に積層されている。DOSRAM1400では、ビット線の構造に、ローカルビット線とグローバルビット線とで階層化された階層ビット線構造が採用されている。
メモリセルアレイ1422は、N個(Nは2以上の整数)のローカルメモリセルアレイ1425<0>−425<N−1>を有する。図7(B)に示すように、ローカルメモリセルアレイ1425は、複数のメモリセル1445、複数のワード線WL、複数のビット線BLL、BLRを有する。図7(B)の例では、ローカルメモリセルアレイ1425の構造はオープンビット線型であるが、フォールデッドビット線型であってもよい。
図7(C)に示すメモリセル1445は、OSトランジスタMO40、容量素子C45を有する。OSトランジスタMO40は容量素子C45の充放電を制御する機能をもつ。OSトランジスタMO40のゲートはワード線WLに電気的に接続され、バックゲートは配線BGLに電気的に接続され、第1端子はビット線BLLまたはBLRに電気的に接続され、第2端子は容量素子C45の第1端子に電気的に接続されている。容量素子C45の第2端子は配線PCLに電気的に接続されている。配線CSL、BGLは電圧を供給するための電源線である。
配線BGLの電圧によって、OSトランジスタMO40の閾値電圧を変更することができる。例えば、端子BGLの電圧は固定電圧(例えば、負の定電圧)であってもよいし、DOSRAM1400の動作に応じて、端子BGLの電圧を変化させてもよい。
OSトランジスタMO40のバックゲートをOSトランジスタMO40のゲート、ソース、またはドレインに電気的に接続してもよい。あるいは、OSトランジスタMO40にバックゲートを設けなくてもよい。
センスアンプアレイ1423は、N個のローカルセンスアンプアレイ1426<0>−1426<N−1>を有する。ローカルセンスアンプアレイ1426は、1のスイッチアレイ1444、複数のセンスアンプ1446を有する。センスアンプ1446には、ビット線対が電気的に接続されている。センスアンプ1446は、ビット線対をプリチャージする機能、ビット線対の電圧差を増幅する機能、この電圧差を保持する機能を有する。スイッチアレイ1444は、ビット線対を選択し、選択したビット線対とグローバルビット線対と間を導通状態にする機能を有する。
ここで、ビット線対とは、センスアンプによって、同時に比較される2本のビット線のことをいう。グローバルビット線対とは、グローバルセンスアンプによって、同時に比較される2本のグローバルビット線のことをいう。ビット線対を一対のビット線と呼ぶことができ、グローバルビット線対を一対のグローバルビット線と呼ぶことができる。ここでは、ビット線BLLとビット線BLRが1組のビット線対を成す。グローバルビット線GBLLとグローバルビット線GBLRとが1組のグローバルビット線対をなす。以下、ビット線対(BLL,BLR)、グローバルビット線対(GBLL,GBLR)とも表す。
(コントローラ1405)
コントローラ1405は、DOSRAM1400の動作全般を制御する機能を有する。コントローラ1405は、外部からの入力されるコマンド信号を論理演算して、動作モードを決定する機能、決定した動作モードが実行されるように、行回路1410、列回路1415の制御信号を生成する機能、外部から入力されるアドレス信号を保持する機能、内部アドレス信号を生成する機能を有する。
(行回路1410)
行回路1410は、MC−SAアレイ1420を駆動する機能を有する。デコーダ1411はアドレス信号をデコードする機能を有する。ワード線ドライバ1412は、アクセス対象行のワード線WLを選択する選択信号を生成する。
列セレクタ1413、センスアンプドライバ1414はセンスアンプアレイ1423を駆動するための回路である。列セレクタ1413は、アクセス対象列のビット線を選択するための選択信号を生成する機能をもつ。列セレクタ1413の選択信号によって、各ローカルセンスアンプアレイ1426のスイッチアレイ1444が制御される。センスアンプドライバ1414の制御信号によって、複数のローカルセンスアンプアレイ1426は独立して駆動される。
(列回路1415)
列回路1415は、データ信号WDA[31:0]の入力を制御する機能、データ信号RDA[31:0]の出力を制御する機能を有する。データ信号WDA[31:0]は書き込みデータ信号であり、データ信号RDA[31:0]は読み出しデータ信号である。
グローバルセンスアンプ1447はグローバルビット線対(GBLL,GBLR)に電気的に接続されている。グローバルセンスアンプ1447はグローバルビット線対(GBLL,GBLR)間の電圧差を増幅する機能、この電圧差を保持する機能を有する。グローバルビット線対(GBLL,GBLR)へのデータの書き込み、および読み出しは、入出力回路1417によって行われる。
DOSRAM1400の書き込み動作の概要を説明する。入出力回路1417によって、データがグローバルビット線対に書き込まれる。グローバルビット線対のデータは、グローバルセンスアンプアレイ1416によって保持される。アドレスが指定するローカルセンスアンプアレイ1426のスイッチアレイ1444によって、グローバルビット線対のデータが、対象列のビット線対に書き込まれる。ローカルセンスアンプアレイ1426は、書き込まれたデータを増幅し、保持する。指定されたローカルメモリセルアレイ1425において、行回路1410によって、対象行のワード線WLが選択され、選択行のメモリセル1445にローカルセンスアンプアレイ1426の保持データが書き込まれる。
DOSRAM1400の読み出し動作の概要を説明する。アドレス信号によって、ローカルメモリセルアレイ1425の1行が指定される。指定されたローカルメモリセルアレイ1425において、対象行のワード線WLが選択状態となり、メモリセル1445のデータがビット線に書き込まれる。ローカルセンスアンプアレイ1426によって、各列のビット線対の電圧差がデータとして検出され、かつ保持される。スイッチアレイ1444によって、ローカルセンスアンプアレイ1426の保持データの内、アドレスが指定する列のデータが、グローバルビット線対に書き込まれる。グローバルセンスアンプアレイ1416は、グローバルビット線対のデータを検出し、保持する。グローバルセンスアンプアレイ1416の保持データは入出力回路1417に出力される。以上で、読み出し動作が完了する。
容量素子C45の充放電によってデータを書き換えるため、DOSRAM1400は原理的には書き換え回数に制約はなく、かつ、低エネルギーで、データの書き込みおよび読み出しが可能である。また、メモリセル1445の回路構成が単純であるため、大容量化が容易である。よって、DOSRAM1400は大容量のデータを高頻度で書き換えるメモリ装置、例えば、画像処理に利用されるフレームメモリに好適である。
OSトランジスタMO40はOSトランジスタである。OSトランジスタはオフ電流が極めて小さいため、容量素子C45から電荷がリークすることを抑えることができる。そのため、DOSRAM1400は保持時間がDRAMに比べて非常に長く、リフレッシュレート頻度を低減できる。従って、DOSRAM1400はリフレッシュ動作に要する電力を削減できる。
MC−SAアレイ1420が積層構造であることよって、ローカルセンスアンプアレイ1426の長さと同程度の長さにビット線を短くすることができる。ビット線を短くすることで、ビット線容量が小さくなり、メモリセル1445の保持容量を低減することができる。また、ローカルセンスアンプアレイ1426にスイッチアレイ1444を設けることで、長いビット線の本数を減らすことができる。以上の理由から、DOSRAM1400のアクセス時に駆動する負荷が低減される。
以上のことから、DOSRAM1400を上記実施の形態に示すDOSRAM12に用いることで、AIシステムの消費電力を低減することができる。
<<NOSRAM>>
図8および図9を参照してNOSRAMについて説明する。ここでは、1のメモリセルで多値データを記憶する多値NOSRAMについて説明する。
図8に示すNOSRAM1600は、メモリセルアレイ1610、コントローラ1640、行ドライバ1650、列ドライバ1660、出力ドライバ1670を有する。
メモリセルアレイ1610は複数のメモリセル1611、複数のワード線WWL、RWL、ビット線BL、ソース線SLを有する。ワード線WWLは書き込みワード線であり、ワード線RWLは読み出しワード線である。NOSRAM1600では、1のメモリセル1611で3ビット(8値)のデータを記憶する。
コントローラ1640は、NOSRAM1600全体を統括的に制御し、データWDA[31:0]の書き込み、データRDA[31:0]の読み出しを行う。コントローラ1640は、外部からのコマンド信号(例えば、チップイネーブル信号、書き込みイネーブル信号など)を処理して、行ドライバ1650、列ドライバ1660および出力ドライバ1670の制御信号を生成する。
行ドライバ1650は、アクセスする行を選択する機能を有する。行ドライバ1650は、行デコーダ1651、およびワード線ドライバ1652を有する。
列ドライバ1660は、ソース線SLおよびビット線BLを駆動する。列ドライバ1660は、列デコーダ1661、書き込みドライバ1662、DAC(デジタル−アナログ変換回路)1663を有する。
DAC1663は3ビットのデジタルデータをアナログ電圧に変換する。DAC1663は32ビットのデータWDA[31:0]を3ビットごとに、アナログ電圧に変換する。
書き込みドライバ1662は、ソース線SLをプリチャージする機能、ソース線SLを電気的に浮遊状態にする機能、ソース線SLを選択する機能、選択されたソース線SLにDAC1663で生成した書き込み電圧を入力する機能、ビット線BLをプリチャージする機能、ビット線BLを電気的に浮遊状態にする機能等を有する。
出力ドライバ1670は、セレクタ1671、ADC(アナログ−デジタル変換回路)1672、出力バッファ1673を有する。セレクタ1671は、アクセスするソース線SLを選択し、選択されたソース線SLの電圧をADC1672に送信する。ADC1672は、アナログ電圧を3ビットのデジタルデータに変換する機能を持つ。ソース線SLの電圧はADC1672において、3ビットのデータに変換され、出力バッファ1673はADC1672から出力されるデータを保持する。
<メモリセル>
図9(A)はメモリセル1611の構成例を示す回路図である。メモリセル1611は2T型のゲインセルであり、メモリセル161はワード線WWL、RWL、ビット線BL、ソース線SL、配線BGLに電気的に接続されている。メモリセル1611は、ノードSN、OSトランジスタMO61、トランジスタMP61、容量素子C61を有する。OSトランジスタMO61は書き込みトランジスタである。トランジスタMP61は読み出しトランジスタであり、例えばpチャネル型Siトランジスタで構成される。容量素子C61はノードSNの電圧を保持するための保持容量である。ノードSNはデータの保持ノードであり、ここではトランジスタMP61のゲートに相当する。
メモリセル1611の書き込みトランジスタがOSトランジスタMO61で構成されているため、NOSRAM1600は長時間データを保持することが可能である。
図9(A)の例では、ビット線は、書き込みと読み出しで共通のビット線であるが、図9(B)に示すように、書き込みビット線WBLと、読み出しビット線RBLとを設けてもよい。
図9(C)−図9(E)にメモリセルの他の構成例を示す。図9(C)−図9(E)には、書き込み用ビット線WBLと読み出し用ビット線RBLを設けた例を示しているが、図9(A)のように書き込みと読み出しで共有されるビット線BLを設けてもよい。
図9(C)に示すメモリセル1612は、メモリセル1611の変形例であり、読み出しトランジスタをnチャネル型トランジスタ(MN61)に変更したものである。トランジスタMN61はOSトランジスタであってもよいし、Siトランジスタであってもよい。
メモリセル1611、1612において、OSトランジスタMO61はバックゲートの無いOSトランジスタであってもよい。
図9(D)に示すメモリセル1613は、3T型ゲインセルであり、ワード線WWL、RWL、ビット線WBL、RBL、ソース線SL、配線BGL、PCLに電気的に接続されている。メモリセル1613は、ノードSN、OSトランジスタMO62、トランジスタMP62、トランジスタMP63、容量素子C62を有する。OSトランジスタMO62は書き込みトランジスタである。トランジスタMP62は読み出しトランジスタであり、トランジスタMP63は選択トランジスタである。
図9(E)に示すメモリセル1614は、メモリセル1613の変形例であり、読み出しトランジスタおよび選択トランジスタをnチャネル型トランジスタ(MN62、MN63)に変更したものである。トランジスタMN62、MN63はOSトランジスタであってもよいし、Siトランジスタであってもよい。
メモリセル1611−1614に設けられるOSトランジスタは、バックゲートの無いトランジスタでもよいし、バックゲートが有るトランジスタであってもよい。
容量素子C61の充放電によってデータを書き換えるため、NOSRAM1600は原理的には書き換え回数に制約はなく、かつ、低エネルギーで、データの書き込みおよび読み出しが可能である。また、長時間データを保持することが可能であるので、リフレッシュ頻度を低減できる。よって、DOSRAM1400は大容量のデータを高頻度で書き換えるメモリ装置、例えば、画像処理に利用されるフレームメモリに好適である。
NOSRAM1600を上記実施の形態に示すNOSRAM13に用いることで、AIシステムの消費電力を低減することができる。
(実施の形態8)
本実施の形態では、上実施の形態に示すAIシステムに搭載可能なOS−FPGAについて、図10乃至図14を用いて説明を行う。
<OS−FPGAの構成例>
図10はFPGAのブロック図である。OS−FPGA100は、コントローラ110、および回路ブロック101A乃至101Dを有する。図10では回路ブロックとして4つを例示している。回路ブロック101A乃至101Dは、それぞれマルチコンテキスト方式を実現できるFPGAとして機能する。
回路ブロック101A乃至101Dは、それぞれ、プログラマブルエリア111、ワードドライバ112、データドライバ113を有する。プログラマブルエリア111は、入出力ブロック(以下、IOB117)、コア118を有する。
図11(A)は、プログラマブルエリア111の構成例を説明するための図である。プログラマブルエリア111は、IOB117、コア118を有する。IOB117は、プログラマブル入出力回路(PIO)を有する。コア118は、複数のロジックアレイブロック(以下、LAB120)および複数のスイッチアレイブロック(以下、SAB130)で構成される。
図11(B)は、LAB120の構成例を説明するための図である。図11(B)に示すLAB120は、一例として、5個のプログラマブルロジックエレメント(以下、PLE121)を有する。
図11(C)は、SAB130の構成例を説明するための図である。図11(C)に示すSAB130は、アレイ状に配列された複数のスイッチブロック(以下、SB131)を有する。
次いで図12(A)乃至図12(C)を参照して、SB131について説明する。SB131には信号data、信号context[1:0]、信号word[1:0]が入力される。信号dataはコンフィギュレーションデータである。信号context[1:0]はコンテキスト選択信号である。信号word[1:0]はワード線選択信号である。
SB131は、プログラマブルルーティングスイッチ(以下、PRS133[0]、133[1])を有する。PRS133[0]、133[1]は、コンフィギュレーションデータを格納できるコンフィギュレーションメモリ(CM)を有する。コンフィギュレーションデータは、PRS133[0]、133[1]の導通状態を設定するための情報である。例えばハイレベル(以下、“H”)のときPRS133[0]、133[1]が導通状態に設定され、ローレベル(以下、“L”)のときPRS133[0]、133[1]が非導通状態に設定される。
図12(B)はPRS133[0]の回路図である。PRS133[0]とPRS133[1]とは同じ回路構成を有する。PRS133[0]とPRS133[1]とでは、入力されるコンテキスト選択信号、ワード線選択信号が異なる。信号context[0]、word[0]はPRS133[0]に入力され、信号context[1]、word[1]はPRS133[1]に入力される。例えば、SB131において、信号context[0]が“H”になることで、PRS133[0]がアクティブになる。
PRS133[0]は、CM135およびトランジスタM1を有する。トランジスタM1は、nチャネル型として説明するが、pチャネル型でもよい。
トランジスタM1は、CM135により導通状態が制御されるパストランジスタである。トランジスタM1は、Siトランジスタとする。当該構成とすることで、高速でのスイッチング動作ができるため好ましい。
CM135は、不揮発性メモリ(以下、NVM137)およびトランジスタM2を有する。トランジスタM2は、nチャネル型として説明するが、pチャネル型でもよい。
NVM137は、容量素子C1、トランジスタMO1、およびトランジスタMO2を有する。トランジスタMO1、MO2は、nチャネル型として説明するが、pチャネル型でもよい。トランジスタMO1、およびトランジスタMO2は、OSトランジスタである。当該構成とすることで、オフ電流が低く、ゲート絶縁層を厚くしてもトランジスタ特性が良好であるトランジスタとすることができる。
トランジスタMO2のゲートがノードN1である。トランジスタM1のゲートがノードN2である。トランジスタMO1はノードN1と信号data用の信号線との間の導通状態を制御する。ノードN1はCM135の電荷保持ノードである。トランジスタMO1は非導通状態に制御されることで設定した情報に応じた電圧をノードN1で保持させることができる。トランジスタMO2はノードN2と信号context[0]用の信号線との間の導通状態を制御する。
なおトランジスタMO1、およびトランジスタMO2といったOSトランジスタのゲート絶縁層はトランジスタM1、M2といったSiトランジスタのゲート絶縁層より厚くすることが好ましい。前述したようにOSトランジスタであることで、ゲート絶縁層を厚くしてもトランジスタ特性が良好である。トランジスタMO2のゲート絶縁層を厚くできることで、電荷保持ノードであるノードN1での電荷の保持特性を高めることができる。
ノードN1には、トランジスタMO2の導通状態時、信号context[0]の論理が与えられる。つまり信号context[0]が“H”になることで、PRS133[0]がアクティブになる。つまり信号dataの論理であるノードN1の電圧に応じた電圧が、ノードN2に与えられることになる。
具体的には、ノードN1の電圧が“H”でトランジスタMO2が導通状態となり、信号context[0]が“H”であるため、ノードN2が“H”となる。またノードN1の電圧が“L”でトランジスタMO2が非導通状態となり、ノードN2が“L”となる。ノードN2が“H”か“L”かに応じて、つまり入力端子inputと出力端子outputとの導通状態が制御される。
図12(B)では一例として、グラウンド電位に接続されたトランジスタM2を設け、トランジスタM2をダイオード接続する構成を図示している。ノードN2は、トランジスタMO2をオフ電流が低いOSトランジスタとするために電気的に浮遊状態となりやすい。そのためトランジスタM2にはオフ電流がOSトランジスタと比べて比較的高いSiトランジスタを用い、ノードN2に直接接続する構成とすることが有効である。トランジスタM2はダイオード接続されたトランジスタとする。当該構成とすることでトランジスタM2のオフ電流が、ノードN2を電気的に浮遊状態となることを抑制するように作用させることができる。そしてノードN2が“H”となる期間では動作に影響しないようにするとともに、ノードN2をより確実に“L”とすることができる。
なお、PRS133[0]とPRS133[1]とを区別しない場合、PRS133と呼ぶ。他の要素についても同様である。
なおPRS133は、トランジスタM1のゲートが浮遊状態になることを利用したブースティングによってスイッチ特性の向上を実現することができる。一方でSiトランジスタを65nm Siプロセスを採用する場合、Siトランジスタのゲートリークは無視できない。そこで、Siトランジスタのゲートで電荷を保持する構成を採用せずに、電荷保持ノードをゲート絶縁膜が厚くても短チャネル効果が発生しにくいOSトランジスタであるトランジスタMO2のゲートに変更することで、不揮発性OSメモリを実現することができる。
図12(C)、(D)を参照して、PRS133[0]のスイッチ動作を説明する。
図12(C)では、PRS133[0]のノードN1が“H”であるようにPRS133[0]にコンフィギュレーションデータが既に書き込まれた状態でのスイッチ動作を説明する。
信号context[0]が“H”である期間、PRS133[0]はアクティブである。ノードN1が“H”のときトランジスタMO2が導通状態となるため、CM135が記憶するコンフィギュレーションデータに対応する“H”が、トランジスタM1のゲートは“H”に遷移し、トランジスタM1が導通状態となる。この状態で入力端子inputが“H”に遷移するとブースティングによってトランジスタM1のゲートの電位が上昇する。入力端子inputが“H”に遷移すると、NVM137のトランジスタMO2がソースフォロアであるために、ブースティングによってトランジスタM1のゲート電圧は上昇する。その結果、NVM137のトランジスタMO2は駆動能力を失い、トランジスタM1のゲートは浮遊状態となる。その結果、トランジスタM1のゲート電圧がさらに上昇することで出力端子outputの電位を上昇させることができる。そのため、スイッチ特性の向上を実現することができる。
信号context[0]が“L”である期間、PRS133[0]は非アクティブである。ノードN1が“H”のときトランジスタMO2が導通状態となり、信号context[0]の“L”のため、トランジスタM1のゲートが“L”に遷移し、トランジスタM1が非導通状態となる。その結果入力端子inputが“H”に遷移しても、出力端子outputの電位は変化しない。
また図12(D)では、PRS133[0]のノードN1が“L”であるようにPRS133[0]にコンフィギュレーションデータが既に書き込まれた状態でのスイッチ動作を説明する。
信号context[0]が“H”である期間、PRS133[0]はアクティブである。ノードN1が“L”のときトランジスタMO2が非導通状態となる。トランジスタM1のゲート、つまりノードN2の電位は、トランジスタM2のリーク電流によって“L”となる。つまりノードN2が電気的に浮遊状態となることが抑制される。トランジスタM1が非導通状態となる。その結果入力端子inputが“H”に遷移しても、出力端子outputの電位は変化しない。
信号context[0]が“L”である期間、PRS133[0]は非アクティブである。ノードN1が“L”のときトランジスタMO2が導通状態となる。トランジスタM1のゲート、つまりノードN2の電位は、トランジスタM2のリーク電流によって“L”となる。トランジスタM1が非導通状態となる。その結果入力端子inputが“H”に遷移しても、出力端子outputの電位は変化しない。
マルチコンテキスト機能を備えるPRS133において、CM135はマルチプレクサの機能を併せ持つ。PRS133はトランジスタ数がSRAM(Static RAM)を用いたCMと比べて少なく、ブースティングによってトランジスタM1の駆動能力を高める効果もあるため、好適である。
また図13はPLE121のブロック図である。PLE121はLUTブロック123、レジスタブロック124、セレクタ125、CM126を有する。LUTブロック123はルックアップテーブルの機能を有し、一例として内部の16ビットCM対の出力を入力inA−inDに従って選択する構成である。セレクタ125は、CM126が格納するコンフィギュレーションデータに従って、LUTブロック123の出力またはレジスタブロック124の出力を選択する構成である。
PLE121は、パワースイッチ127を介して高電位電源線VDDに接続されている。パワースイッチ127のオンオフは、CM128が格納するコンフィギュレーションデータによって設定される。各PLE121にパワースイッチ127を設けることで、細粒度なパワーゲーティング(FG−PG)機能を可能にしている。FG−PG機能により、コンテキストの切り替え後に使用されないPLE121をパワーゲーティングすることができるので、待機電力を削減できる。
ノーマリーオフ(NOFF)コンピューティングを実現するため、レジスタブロック124は、不揮発性レジスタ(NV−Reg)で構成される。PLE121内のNV−Regは不揮発性OSメモリを備えるフリップフロップ(OS−FF)である。
レジスタブロック124は、OS−FF140[1]およびOS−FF140[2]を有する。信号user_res、信号load、および信号storeがOS−FF140[1]およびOS−FF140[2]に入力される。クロック信号CLK1はOS−FF140[1]に入力され、クロック信号CLK2はOS−FF140[2]に入力される。
図14(A)には、一例として、OS−FF140の回路図を示す。
OS−FF140は、FF141およびシャドウレジスタ142を有する。FF141は、ノードCK、ノードR、ノードD、ノードQ、およびノードQBを有する。ノードCKにはクロック信号CLK1(またはクロック信号CLK2)が入力される。ノードRには信号user_resが入力される。信号user_resはリセット信号である。ノードDはデータ入力ノードであり、ノードQはデータ出力ノードである。ノードQとノードQBとは論理が相補関係にある。
シャドウレジスタ142は、FF141のバックアップ回路として機能する。シャドウレジスタ142は、信号storeに従いノードQ、QBのデータをそれぞれバックアップし、また、信号loadに従い、バックアップしたデータをノードQ、QBに書き戻す。
シャドウレジスタ142は、インバータ回路88、インバータ回路89、トランジスタM7、トランジスタMB7、NVM143、およびNVM143Bを有する。NVM143およびNVM143Bは、PRS133のNVM137と同じ回路構成である。NVM143は容量素子C6、トランジスタMO5、およびトランジスタMO6を有する。NVM143Bは容量素子CB6、トランジスタMOB5、およびトランジスタMOB6を有する。ノードN6はトランジスタMO6のゲートであり、ノードNB6はトランジスタMOB6のゲートである。各ノードはそれぞれ電荷保持ノードである。ノードN7は、トランジスタM7のゲートである。ノードNB7は、トランジスタMB7のゲートである。
図14(B)を参照して、OS−FF140の動作方法を説明する。
データのバックアップ動作について説明する。“H”の信号storeがOS−FF140に入力されると、シャドウレジスタ142はFF141のデータをバックアップする。ノードN6は、ノードQのデータが書き込まれることで、“L”となり、ノードNB6は、ノードQBのデータが書き込まれることで、“H”となる。しかる後、パワーゲーティングが実行され、パワースイッチ127をオフにする。FF141のノードQ、QBのデータは消失するが、電源オフであっても、シャドウレジスタ142はバックアップしたデータを保持する。
データのリカバリ動作について説明する。パワースイッチ127をオンにし、PLE121に電源を供給する。しかる後、“H”の信号loadがOS−FF140に入力されると、シャドウレジスタ142はバックアップしているデータをFF141に書き戻す。ノードN6は“L”であるので、ノードN7は“L”が維持され、ノードNB6は“H”であるので、ノードNB7は“H”となる。よって、ノードQは“H”になり、ノードQBは“L”になる。つまり、OS−FF140はバックアップ動作時の状態に復帰する。
以上のような構成とすることで、上記説明したOS−FPGAを実現することができる。
(実施の形態9)
本実施の形態では、アナログ演算回路11に適用される積和演算回路について説明する。図15に積和演算回路の構成例を示す。
図15に示す積和演算回路300は、アナログメモリ301、参照アナログメモリ302、ドライバ305、306、読み出し回路307、電流回路311を有する。
アナログメモリ301は、複数のメモリセル320、複数の配線RW、WW、WD、VR、BLを有する。図15の例では、アナログメモリ301には、y行x列(y、xは1以上の整数)に配列されたメモリセル320が設けられている。各メモリセル320は対応する行の配線RW、WWに電気的に接続され、対応する列の配線WD、VR、BLに電気的に接続されている。
参照アナログメモリ302は、y行1列に配列されたメモリセル322、配線WDREF、BLREF、VRREFを有する。アナログメモリ301と参照アナログメモリ302は配線RW、WWを共有する。各メモリセル322は対応する行の配線RW、WW、並びに配線WDREF、VRREF、BLREFに電気的に接続されている。
本明細書では、複数のメモリセル320のうち、特定のメモリセル320を表す場合、メモリセル320[i,j]などと表記する。メモリセル320と表記する場合は、任意のメモリセル320を指す。他の要素についても同様である。
ドライバ305は配線RW、WWを駆動する。ドライバ306は配線WDを駆動する。読み出し回路307は配線BLに書き込まれたデータを読み出す。電流回路311は参照電流を生成し、配線BL、BLREFに供給する。
図16に、アナログメモリ301、参照アナログメモリ302の回路構成例を示す。図16には、代表的に4個のメモリセル320[i,j]乃至メモリセル320[i+1,j+1]、2個のメモリセル322[i]、322[i+1]を示す。
メモリセル320は、トランジスタT20、T21、容量素子C20、ノードN20を有する。ノードN20はトランジスタT20のゲートに相当する。メモリセル322は、トランジスタT22、T23、容量素子C22、ノードN22を有する。ノードN22はトランジスタT22のゲートに相当する。トランジスタT20、T22はOSトランジスタであることが好ましい。OSトランジスタは極めてオフ電流が小さいため、メモリセル320、322が非選択状態である期間、ノードN20、N22の電圧の変動を抑えることができる。
図17を参照して、電流回路311の回路構成例を説明する。電流回路311は、電流回路325、x個の電流ソース回路326、x個の電流シンク回路327、配線OSM、ORM、OSP、ORPを有する。
電流回路325はカレントミラー回路で構成されており、1個のダイオード接続されたトランジスタT25、およびx個のトランジスタT26を有する。電流回路325は配線BLREFに供給される参照電流IREF、配線BLに供給する参照電流IBRFを生成する。
電流ソース回路326は配線OSM、ORM、BLに電気的に接続され、トランジスタT31、T32、T33、容量素子C31を有する。電流シンク回路327は配線BL、ORP、OSPに電気的に接続され、トランジスタT35、T36、T37、容量素子C35を有する。
電流ソース回路326、電流シンク回路327によって、電流Ioffsetが設定される。電流ソース回路326、電流シンク回路327はプログラム可能な電流回路である。電流ソース回路326はトランジスタT31に書き込まれた電圧に応じた電流ICMを生成する。電流シンク回路327はトランジスタT35に書き込まれた電圧に応じた電流ICPを生成する。よって、電流ソース回路326、電流シンク回路327に書き込まれた電圧を長時間保持するため、トランジスタT32、T33、T36、T37はOSトランジスタであることが好ましい。
メモリセル320[i、j]は、第1のアナログデータと第2のアナログデータとを加算し、その結果を第3のアナログデータとして出力する。第1、第2のアナログデータは電圧の形式で、メモリセル320[i、j]に入力される。メモリセル320[i、j]は第3のアナログデータを電流I[i、j]として、ビット線BL[j]に出力する。
読み出し回路307は、ビット線BLを流れる電流を電圧に変換し、出力する。読み出し回路307で読み出された電圧は、例えば、積和演算回路300自身に戻され、第1または第2アナログデータとして用いられる。又は、他の積和演算回路300の第1または第2アナログ電圧として用いられる。
配線RW[i]の電圧がVw[i]であり、配線RW[i+1]の電圧がVw[i+1]である場合に、トランジスタT20[i、j]を飽和領域で動作させると、トランジスタT20[i、j]のドレイン電流が電流I[i、j]に相当する。このときの電流I[i、j]は以下の式1で表される。kは係数、VthはトランジスタT20[i、j]の閾値電圧である。
I[i、j]=k(Vw[i]−Vth+VPR−Vx[i、j]) (式1)
トランジスタT22[i]のドレイン電流がメモリセル322[i]に流れる電流IR[i]に相当するので、電流IR[i]は以下の式2で表される。
IR[i]=k(Vw[i]−Vth+VPR) (式2)
電流I[j]をy個のメモリセル320に流れる電流I[i、j]の総和(=ΣiI[i、j])であり、電流IREFをy個のメモリセル322を流れる電流IR[i]の総和(ΣiIR[i])であるとすると、電流IREFと電流I[j]との差分の電流ΔI[j]は以下の式3で表される。
ΔI[j]=IREF−I[j]=ΣiIREF[i]−ΣiI[i、j] (式3)
式1、式2、式3から、電流ΔI[j]は以下の式4のように導き出される。
ΔI[j]
=Σi{k(Vw[i]−Vth+VPR)−k(Vw[i]−Vth+VPR−Vx[i、j])
=2kΣi(Vw[i]・Vx[i、j])−2kΣi(Vth−VPR)・Vx[i、j]−kΣiVx[i、j] (式4)
式4において、2kΣi(Vw[i]・Vx[i、j])で示される項は、Vx[i、j]とVw[i]の積と、Vx[i+1、j]と[i+1]の積との和に相当する。
オフセット電流(Ioffset[j])を、電圧Vw[i]、Vw[i+1]を0としたときの電流ΔI[j]とすると、オフセット電流Ioffset[j]は式5で表される。
Ioffset[j]=−2kΣi(Vth−VPR)・Vx[i、j]−kΣiVx[i、j] (式5)
したがって、式3乃至式5から、第1のアナログデータと第2のアナログデータの積和値に相当する2kΣi(Vw[i]・Vx[i、j])は、以下の式6で表されることが分かる。
2kΣi(Vw[i]・Vx[i、j])=IREF−I[j]−Ioffset[j] (式6)
配線RW[i]の電圧をVw[i]、配線RW[i+1]の電圧をVw[i+1]としたときに配線BL[j]から流れ出る電流Iout[j]は、IREF−I[j]−Ioffset[j]で表される。式6から、電流Iout[j]は、2kΣi(Vw[i]・Vx[i、j])であり、Vx[i、j]とVw[i]の積と、Vx[i+1、j]とVw[i+1]の積との和に相当することが分かる。
なお、トランジスタT20、T22は飽和領域で動作させることが望ましいが、トランジスタT20、T22の動作領域が理想的な飽和領域と異なっていたとしても、電圧Vx[i、j]及び電圧Vw[i]の積と、電圧Vx[i+1、j]及び電圧Vw[i+1]の積との和に相当する電流を、所望の範囲内の精度で問題なく得ることができる場合は、トランジスタT20、T22は飽和領域で動作しているものとみなせる。
上記構成により、積和演算を小さな回路規模で行うことができる。また、上記構成により、積和演算を高速で行うことができる。また、上記構成により、低消費電力で積和演算を行うことができる。以下、図18を参照して、積和演算回路300の動作例を説明する。図18においてt01、t02等は時刻を表す。
積和演算回路300には、電圧VSSAA、VDDAが入力される。電圧VSSAAは低レベル電源電圧であり、電圧VDDAは高レベル電源電圧である。電流回路325、電流ソース回路326の電源線には電圧VDDAが入力され、電流シンク回路327の電源線には、電圧VSSAAが入力される。配線VR、VRREFにはVSSAが入力される。
また、トランジスタT20、T35、T31、T26、T25は飽和領域で動作するものとする。
t01−t04では、メモリセル320、322に第1のアナログデータを書き込む動作が行われる。
t01−t02において、配線WDREFには、参照電圧として電圧VPR1が入力される。配線WD[j]には電圧VPR1−Vx[i、j]が入力され、配線WD[j+1]には電圧VPR1−Vx[i、j+1]が入力される。電圧Vxが第1のアナログデータに相当する。
配線RW[i]及び配線RW[i+1]には、基準電圧として電圧Vrfが入力される。例えば、電圧Vrfは、電圧VSSAと電圧VDDAの間の電圧、例えば(VDDA+VSSA)/2である。
配線WW[i]が選択され、メモリセル320[i、j]、320[i、j+1]のトランジスタT21[i、j]、T21[i、j+1]、トランジスタT23[i]はオン状態である。ノードN20[i、j]、N20[i、j+1]には、配線RD[i、j]、RD[i、j+1]の電圧が入力され、メモリセル322のノードN22[i]には、配線WDREFの電圧VPR1が入力される。
t03−t04で、メモリセル320[i+1、j]、320[i+1、j+1]への第1のアナログデータの書き込みが行われる。ノードN20[i、j]、N20[i、j+1]
ノードN22[i+1]の電圧は、VPR1−Vx[i+1、j]、VPR1−Vx[i+1、j+1]、VPR1になる。
t05−t10では、電流回路311に配線BLのオフセット電流を設定する動作が行われる。具体的には、電流ソース回路326、電流シンク回路327に設定データを書き込む設定動作が行われる。
t05−t06では配線ORM、ORPが選択される。電流ソース回路326において、トランジスタT33がオンになり、トランジスタT31のゲートに電圧VDDAが入力される。よって、電流ソース回路326はリセットされる。電流シンク回路327において、トランジスタT37がオンになり、トランジスタT35のゲートに電圧VSSAが入力される。これにより、電流シンク回路327はリセットされる。
t07−t08では配線OSPが選択される。配線RWには電圧Vrfが入力される。電流シンク回路327のトランジスタT36がオンになる。電流シンク回路327[j]及び電流シンク回路327[j+1]においてトランジスタT36がオンになる。
電流I[j]が電流IREFよりも小さいときは、すなわち電流ΔI[j]=IREF−I[j]が正であるときは、トランジスタT20[i、j]が引き込むことのできる電流と、トランジスタT20[i+1、j]が引き込むことのできる電流との和が、トランジスタT26[j]のドレイン電流(IRF[j])より小さい場合である。
電流ΔI[j]が正になる場合、トランジスタT36[j]がオンになると、トランジスタT36[j]のドレイン電流(ICP[j])の一部がトランジスタT35[j]のゲートに流れ、トランジスタT35[j]のゲート電圧が上昇し始める。トランジスタT35[j]のドレイン電流が電流ΔI[j]とほぼ等しくなると、トランジスタT35のゲート電圧は所定の値に収束する。このときのトランジスタT35[j]のゲート電圧は、電流ICP[j]を電流ΔI[j]と等しくするような電圧である。つまり、ビット線BL[j]のオフセット電流と等しい電流ICP[j]を生成するための電圧が、電流シンク回路327[j]に設定される。他の電流シンク回路327にも同様に電圧が書き込まれる。
t09−t10で、配線RWには電圧Vrfが入力され、配線OSMが選択される。電流ソース回路326のトランジスタT32はオンになる。
電流I[j]が電流IREFよりも大きいときは、すなわち電流ΔI[j]が負のときは、トランジスタT20[i、j]が引き込むことのできる電流と、トランジスタT20[i+1、j]が引き込むことのできる電流との和が、電流IREFより大きい場合である。よって、電流ΔI[j]が負の場合、電流ソース回路326[j]においてトランジスタT32[j]がオンになると、トランジスタT31[j]のゲートから配線BL[j]へ電流が流れ、トランジスタT31[j]のゲート電圧が下降し始める。トランジスタT31[j]のドレイン電流(ICM[j])が電流ΔI[j]とほぼ等しくなると、トランジスタT31[j]のゲート電圧は所定の値に収束する。
このときのトランジスタT35[j]のゲート電圧は、電流ICM[j]を電流ΔI[j]と等しくするような電圧である。つまり、ビット線BL[j]のオフセット電流と等しい電流ICM[j]を生成するための電圧が、電流ソース回路326[j]に設定される。他の電流ソース回路326にも同様に電圧が設定される。
なお、t09−t10において、電流I[j]が電流IREFよりも小さい場合、すなわち電流ΔI[j]が正の場合、電流シンク回路327[j]は電流ICP[j]を流し得る回路構成に既に設定されているため、トランジスタT31[j]のゲート電圧はほぼ電圧VDDAのままとなる。
t11−t16において、第1のアナログデータと第2のアナログデータとの積和演算が行われる。
t11−t12で、配線RW[i]に電圧Vw[i]電圧が入力され、配線RW[i+1]の電圧はVrfが維持される。具体的には、配線RW[i]の電圧は、電圧Vrfよりも電圧Vw[i]だけ高い電圧となるが、説明を簡素化するため、配線RW[i]の電圧ah、電圧Vw[i]であると仮定する。電圧Vwが第2のアナログデータに対応する電圧である。また、配線RWの電圧の変化量と、ノードN20の電圧の変化量が等しい仮定する。
ノードN20[i、j]の電圧はVPR−Vx[i、j]+Vw[i]となり、ノードN20[i、j+1]の電圧はVPR−Vx[i、j+1]+Vw[i]となる。
上記の式6から、メモリセル320[i、j]での第1のアナログデータと第2のアナログデータの積和演算の結果は、配線BL[j]から流れ出る電流Iout[j]に反映されることが分かる。t12で配線RW[i]にはVfrが与えられる。
t13−t14で、配線RW[i+1]に電圧Vw[i+1]が入力される。メモリセル320[i+1、j]で第1のアナログデータと第2のアナログデータの積和演算が行われる。t14で配線RW[i+1]にはVfrが与えられる。
t15−t16で、配線RW[i]に電圧Vw[i]が入力され、配線RW[i+1]に電圧Vw[i+1]が入力される。メモリセル320[i+1、j+1]で第1のアナログデータと第2のアナログデータの積和演算が行われる。t16で配線RW[i]、RW[i+1]にはVfrが与えられる。
本明細書において、特に断りがない場合、オン電流とは、トランジスタがオン状態にあるときのドレイン電流をいう。オン状態(オンと略す場合もある)とは、特に断りがない場合、nチャネル型トランジスタでは、ゲートとソースの間の電圧(V)がしきい値電圧(Vth)以上の状態、pチャネル型トランジスタでは、VがVth以下の状態をいう。例えば、nチャネル型のトランジスタのオン電流とは、VがVth以上のときのドレイン電流を言う。また、トランジスタのオン電流は、ドレインとソースの間の電圧(V)に依存する場合がある。
本明細書において、特に断りがない場合、オフ電流とは、トランジスタがオフ状態にあるときのドレイン電流をいう。オフ状態(オフと略す場合もある)とは、特に断りがない場合、nチャネル型トランジスタでは、VがVthよりも低い状態、pチャネル型トランジスタでは、VがVthよりも高い状態をいう。例えば、nチャネル型のトランジスタのオフ電流とは、VがVthよりも低いときのドレイン電流を言う。トランジスタのオフ電流は、Vに依存する場合がある。従って、トランジスタのオフ電流が10−21A未満である、とは、トランジスタのオフ電流が10−21A未満となるVの値が存在することを言う場合がある。
また、トランジスタのオフ電流は、Vに依存する場合がある。本明細書において、オフ電流は、特に記載がない場合、Vの絶対値が0.1V、0.8V、1V、1.2V、1.8V、2.5V、3V、3.3V、10V、12V、16V、または20Vにおけるオフ電流を表す場合がある。または、当該トランジスタが含まれる半導体装置等において使用されるVにおけるオフ電流を表す場合がある。
本明細書等において、トランジスタの接続関係を説明する際、ソースとドレインとの一方を、「ソースまたはドレインの一方」(又は第1電極、又は第1端子)と表記し、ソースとドレインとの他方を「ソースまたはドレインの他方」(又は第2電極、又は第2端子)と表記している。これは、トランジスタのソースとドレインは、トランジスタの構造又は動作条件等によって変わるためである。なおトランジスタのソースとドレインの呼称については、ソース(ドレイン)端子や、ソース(ドレイン)電極等、状況に応じて適切に言い換えることができる。
本明細書等において、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とが直接的に接続されている場合を含むものとする。
C1 容量素子、C6 容量素子、C20 容量素子、C22 容量素子、C31 容量素子、C35 容量素子、C45 容量素子、C61 容量素子、C62 容量素子、CB6 容量素子、CLK1 クロック信号、CLK2 クロック信号、M1 トランジスタ、M2 トランジスタ、M7 トランジスタ、MB7 トランジスタ、MN61 トランジスタ、MN62 トランジスタ、MO1 トランジスタ、MO2 トランジスタ、MO5 トランジスタ、MO6 トランジスタ、MO40 OSトランジスタ、MO61 OSトランジスタ、MO62 OSトランジスタ、MOB5 トランジスタ、MOB6 トランジスタ、MP61 トランジスタ、MP62 トランジスタ、MP63 トランジスタ、N1 ノード、N2 ノード、N6 ノード、N7 ノード、N20 ノード、N22 ノード、NB6 ノード、NB7 ノード、T20 トランジスタ、T21 トランジスタ、T22 トランジスタ、T23 トランジスタ、T25 トランジスタ、T26 トランジスタ、T31 トランジスタ、T32 トランジスタ、T33 トランジスタ、T35 トランジスタ、T36 トランジスタ、T37 トランジスタ、10 演算部、11 アナログ演算回路、12 DOSRAM、13 NOSRAM、14 FPGA、20 制御部、21 CPU、22 GPU、23 PLL、25 PROM、26 メモリコントローラ、27 電源回路、28 PMU、30 入出力部、31 外部記憶制御回路、32 音声コーデック、33 映像コーデック、34 汎用入出力モジュール、35 通信モジュール、41 AIシステム、41_n AIシステム、41_1 AIシステム、41A AIシステム、41B AIシステム、42 AIシステム、43 AIシステム、44 AIシステム、81 容量素子、88 インバータ回路、89 インバータ回路、98 バス線、99 ネットワーク、100 OS−FPGA、101A 回路ブロック、101D 回路ブロック、110 コントローラ、111 プログラマブルエリア、112 ワードドライバ、113 データドライバ、117 IOB、118 コア、120 LAB、121 PLE、123 LUTブロック、124 レジスタブロック、125 セレクタ、126 CM、127 パワースイッチ、128 CM、130 SAB、131 SB、133 PRS、135 CM、137 NVM、140 OS−FF、141 FF、142 シャドウレジスタ、143 NVM、143B NVM、161 メモリセル、300 積和演算回路、301 アナログメモリ、302 参照アナログメモリ、305 ドライバ、306 ドライバ、307 回路、311 電流回路、320 メモリセル、322 メモリセル、325 電流回路、326 電流ソース回路、327 電流シンク回路、1400 DOSRAM、1405 コントローラ、1410 行回路、1411 デコーダ、1412 ワード線ドライバ、1413 列セレクタ、1414 センスアンプドライバ、1415 列回路、1416 グローバルセンスアンプアレイ、1417 入出力回路、1420 MC−SAアレイ、1422 メモリセルアレイ、1423 センスアンプアレイ、1425 ローカルメモリセルアレイ、1426 ローカルセンスアンプアレイ、1444 スイッチアレイ、1445 メモリセル、1446 センスアンプ、1447 グローバルセンスアンプ、1600 NOSRAM、1610 メモリセルアレイ、1611 メモリセル、1612 メモリセル、1613 メモリセル、1614 メモリセル、1640 コントローラ、1650 行ドライバ、1651 行デコーダ、1652 ワード線ドライバ、1660 列ドライバ、1661 列デコーダ、1662 ドライバ、1663 DAC、1670 出力ドライバ、1671 セレクタ、1672 ADC、1673 出力バッファ、2000 CDMA、7000 AIシステムIC、7001 リード、7002 プリント基板、7003 回路部、7004 実装基板、7031 Siトランジスタ層、7032 配線層、7033 OSトランジスタ層

Claims (6)

  1. 演算部と、制御部と、を有し、
    前記演算部は、第1メモリと、第2メモリと、演算回路と、を有し、
    前記第1メモリは、前記演算回路と前記制御部との間で入出力されるデジタルデータを保持することができる機能を有し、
    前記第2メモリは、アナログデータを保持することができる機能を有し、
    前記演算回路は、前記アナログデータを用いた演算を行うことでニューラルネットワークによる学習または推論を実行する機能を有し、
    前記第1メモリと、前記第2メモリと、演算回路と、は、それぞれ第1トランジスタを有し、
    前記第1トランジスタは、チャネル形成領域に酸化物半導体を含むAIシステム。
  2. 請求項1において、
    前記ニューラルネットワークは、深層ニューラルネットワーク、畳み込みニューラルネットワーク、再帰型ニューラルネットワーク、自己符号化器、深層ボルツマンマシン、または深層信念ネットワークであるAIシステム。
  3. 請求項1または請求項2において、
    前記演算部は、A/D変換回路と、D/A変換回路と、積和演算回路と、を有するAIシステム。
  4. 請求項1乃至請求項3のいずれか一項において、
    前記制御部は、CPU、GPU、PLL、SRAM、PROM、メモリコントローラ、電源回路、及びPMUの中から選ばれる一または複数を有するAIシステム。
  5. 請求項1乃至請求項4のいずれか一項において、
    入出力部を有し、
    前記入出力部は、外部記憶制御回路、音声コーデック、映像コーデック、汎用入出力モジュール、および通信モジュールの中から選ばれる一または複数を有するAIシステム。
  6. 請求項1乃至請求項5のいずれか一項において、
    前記第1メモリと、前記第2メモリと、前記演算回路と、は、それぞれ第2トランジスタを有し、
    前記第2トランジスタは、チャネル形成領域にシリコンを含み、
    前記第1トランジスタが設けられる層は、前記第2トランジスタが設けられる層と重ねて配置されるAIシステム。
JP2018019869A 2017-02-08 2018-02-07 Aiシステム Withdrawn JP2018129046A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017021634 2017-02-08
JP2017021634 2017-02-08

Publications (1)

Publication Number Publication Date
JP2018129046A true JP2018129046A (ja) 2018-08-16

Family

ID=63173863

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018019869A Withdrawn JP2018129046A (ja) 2017-02-08 2018-02-07 Aiシステム

Country Status (1)

Country Link
JP (1) JP2018129046A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021064502A1 (ja) * 2019-10-04 2021-04-08 株式会社半導体エネルギー研究所 半導体装置
WO2021171880A1 (ja) * 2020-02-26 2021-09-02 株式会社テックイデア 積和演算器
WO2021229374A1 (ja) * 2020-05-15 2021-11-18 株式会社半導体エネルギー研究所 半導体装置
JP7408022B1 (ja) 2021-01-19 2024-01-04 クゥアルコム・インコーポレイテッド 容量結合書き込み動作を用いたコンピュートインメモリビットセル

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1993008538A1 (en) * 1991-10-17 1993-04-29 Kawasaki Steel Corporation Processor for neural network
WO2015136401A1 (ja) * 2014-03-14 2015-09-17 株式会社半導体エネルギー研究所 アナログ演算回路、半導体装置、及び電子機器
JP2016149174A (ja) * 2014-12-10 2016-08-18 株式会社半導体エネルギー研究所 半導体装置、及び電子機器
WO2016170444A1 (ja) * 2015-04-21 2016-10-27 株式会社半導体エネルギー研究所 半導体装置、又はそのシステム
JP2016219011A (ja) * 2015-05-21 2016-12-22 株式会社半導体エネルギー研究所 電子装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1993008538A1 (en) * 1991-10-17 1993-04-29 Kawasaki Steel Corporation Processor for neural network
WO2015136401A1 (ja) * 2014-03-14 2015-09-17 株式会社半導体エネルギー研究所 アナログ演算回路、半導体装置、及び電子機器
JP2016149174A (ja) * 2014-12-10 2016-08-18 株式会社半導体エネルギー研究所 半導体装置、及び電子機器
WO2016170444A1 (ja) * 2015-04-21 2016-10-27 株式会社半導体エネルギー研究所 半導体装置、又はそのシステム
JP2016219011A (ja) * 2015-05-21 2016-12-22 株式会社半導体エネルギー研究所 電子装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021064502A1 (ja) * 2019-10-04 2021-04-08 株式会社半導体エネルギー研究所 半導体装置
WO2021171880A1 (ja) * 2020-02-26 2021-09-02 株式会社テックイデア 積和演算器
WO2021229374A1 (ja) * 2020-05-15 2021-11-18 株式会社半導体エネルギー研究所 半導体装置
JP7408022B1 (ja) 2021-01-19 2024-01-04 クゥアルコム・インコーポレイテッド 容量結合書き込み動作を用いたコンピュートインメモリビットセル

Similar Documents

Publication Publication Date Title
US11568223B2 (en) Neural network circuit
US11061646B2 (en) Compute in memory circuits with multi-Vdd arrays and/or analog multipliers
Xue et al. Embedded 1-Mb ReRAM-based computing-in-memory macro with multibit input and weight for CNN-based AI edge processors
Chiu et al. A 4-Kb 1-to-8-bit configurable 6T SRAM-based computation-in-memory unit-macro for CNN-based AI edge processors
US20230039948A1 (en) Methods for reading data from a storage buffer including delaying activation of a column select
Yu et al. Compute-in-memory with emerging nonvolatile-memories: Challenges and prospects
JP2018133016A (ja) ニューラルネットワークシステム
JP2018129046A (ja) Aiシステム
US9653162B2 (en) System and a method for designing a hybrid memory cell with memristor and complementary metal-oxide semiconductor
US9411391B2 (en) Multistage low leakage address decoder using multiple power modes
US8964490B2 (en) Write driver circuit with low voltage bootstrapping for write assist
KR20150107891A (ko) 메모리 디바이스에서의 기입 보조를 위한 기입 드라이버
JP7073060B2 (ja) 半導体装置の電源制御方法
CN106448718A (zh) 存储器器件和操作存储器器件的方法
US9529533B1 (en) Power grid segmentation for memory arrays
TW202125517A (zh) 具有最佳化叢發讀取及寫入資料存取之能量效率記憶體陣列、以及用於從重安排記憶體子陣列讀取資料及將資料寫入至重安排記憶體子陣列且其中未使用的元資料係儲存於一稀疏地圖之方案
Sharma et al. A reconfigurable 16Kb AND8T SRAM macro with improved linearity for multibit compute-in memory of artificial intelligence edge devices
Kumar et al. Stability and performance analysis of low power 6T SRAM cell and memristor based SRAM cell using 45NM CMOS technology
Kim et al. DynaPlasia: An eDRAM In-Memory Computing-Based Reconfigurable Spatial Accelerator With Triple-Mode Cell
US8995178B1 (en) SRAM with embedded ROM
CN116204490A (zh) 一种基于低电压技术的7t存算电路、乘累加运算电路
CN113892232A (zh) 电子电路和双稳态电路
KR101072456B1 (ko) 저전력 내용 주소화 메모리 구동 회로
Biswas Energy-efficient smart embedded memory design for IoT and AI
CN114974337A (zh) 一种基于自旋磁随机存储器的时间域存内计算电路

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210112

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20211117

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211124

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20220105