図面 (/)

技術 抵抗変化型可変抵抗素子を備えた積演算装置、及び積和演算装置、これらの装置を各ニューロン素子に備えるニューラルネットワーク、並びに積演算方法

出願人 シャープ株式会社森江隆
発明者 大西茂夫石原数也森江隆
出願日 2008年5月22日 (12年7ヶ月経過) 出願番号 2008-134682
公開日 2009年12月3日 (11年1ヶ月経過) 公開番号 2009-282782
状態 特許登録済
技術分野 学習型計算機 特殊メモリ(超電導/光/流体)
主要キーワード 特定段 スイッチングブロック 積演算装置 各演算ブロック 演算処理ブロック PWM入力信号 被演算値 負極性入力端子
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(2009年12月3日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (20)

課題

積演算装置及び積和演算装置における構成を簡素化し、これらの装置を含む回路全体面積に対する積演算装置及び積和演算装置の占有面積を小さくする。

解決手段

端子A・Bを有する抵抗変化型可変抵抗素子1の、端子Aに被乗数に対応するパルス幅Tiの単一電圧パルスを入力し、端子Bに乗数に対応するパルス周波数Fiの電圧パルス列を入力することにより、被乗数と乗数との積演算の結果に対応するFi・Tiに応じたPWM(Pulse Width Modulation)信号が出力される。

概要

背景

現在、いわゆるノイマン型のコンピュータは、大きな進展を見せ、世の中の様々な場面で使用されている。しかしながら、これらノイマン型と呼ばれるコンピュータは、その処理方法自体の特性により、人が容易に行うことができる処理(リアルタイムでの人の顔の認識等)を非常に不得手としている。

これに対して、脳の情報処理様式を真似演算処理モデルである、ニューラルネットワークの研究が行われている。

ニューラルネットワークを構成するニューロン素子(以下、「ニューロン」という)のモデルとしては、ニューロンに相当するユニットに対して、他の複数のユニットの出力値シナプス荷重値重み付けした乗算値が入力され、その入力値をさらに非線形変換した値を出力値(内部状態値)とするものが一般的である。

すなわち、一般的なニューラルネットワークにおいては、各ユニット、及びユニット間における積和演算と非線形変換とにより、所望の処理が実現される。

このニューロンモデルを用いたニューラルネットワークアーキテクチャニューラルネットワークモデル)としては、これまでに、積和演算を実行するユニットを相互に結合した連想メモリや、同じく積和演算を実行するユニットを階層的に結合したパターン認識モデル等が提案されている。

ここでニューラルネットワークの実用化を狙い、集積回路化を図る際には、前記の積和演算をより効率的に実行することが必要となり、特に演算実行速度消費電力の面での必要性が顕著になる。

前記のように積和演算を実行するニューロンモデル、及びニューラルネットワークアーキテクチャに関する発明が、各種提案されており、積和演算を行い階層的なニューロコンピュータを構成する方法も提案されている。(例えば、特許文献1、2を参照)。図14(a)に、PWM(Pulse Width Modulation:パルス幅変調)信号を用いた積和演算装置1000の構成を示す。

パルス幅Ti(i=1,2,3,…)を有するそれぞれのPWM入力信号に対応する電流Iiに関する各スイッチト電流源SCS)の電流源1012〜1032・・・のそれぞれのスイッチ1012〜1032・・・をONすると、データ線1001を介して電流IiがキャパシタC1004に時間Tiだけ流れる。キャパシタC1004に蓄積される電荷量Qoutと端子電圧Voutとは、それぞれ、
Qout=ΣIiTi
Vout=Qout/C=ΣIiTi/C
表記される。

こうして、電流源1012〜1032・・・のそれぞれの電流量で重み付けされたPWM信号(IiTi)の加算結果がキャパシタ1004の電荷量Qout又は端子電圧Voutとして得られる。端子電圧Voutは、図14(b)に示すように線形に変化する参照ランプ電圧Vrefとコンパレータ1005で比較することにより、パルス幅Toutを有するPWM信号に変換されて出力される。

次に、積和演算回路ユニット3000を用いた演算処理工程について説明する。図15は、特許文献1及び2における積和演算方法を実施するための処理ブロックの構成図を示す。

特許文献1及び2における積和演算方法は、複数個演算ブロック1000a、1000b、1000c、・・・を備える演算ユニット3006と、演算値Xiを保持する入力値(演算値)保持ブロック3001と、被演算値Wiを保持する荷重値(被演算値)保持ブロック3004と、演算値Xiのラベルiに対応する演算ブロックへ演算値Xi、及び被演算値Wiを入力するためのスイッチングブロック(1)3003及びスイッチングブロック(2)3005から構成される。

特許文献1においては、演算値XiがPWM(Pulse Width Modulation)信号として入力される場合を想定している。なお、演算値Xiと被演算値Wiのiは、それぞれ異なるXとWを示す添え字であり、1,2,3・・・の自然数をとる。

図16は、1つの演算ブロックをアナログ回路で構成したアナログ演算回路2000を示す。図16に示すように、特許文献1におけるアナログ演算回路2000は、アナログ乗算器2001と、キャパシタ2002と、出力バッファ2003とから構成される。

アナログ乗算器2000は、図14(a)に示した積和演算装置1000で構成されている。

図17は、入力値保持ブロック3001をアナログメモリ回路で構成したものを示す。ここでは、アナログメモリ回路をキャパシタ2002と出力バッファ2003とで構成することを想定している。

図15に示すように、複数の演算値Xiが入力保持ブロック3001に保持される。入力保持ブロック3001は、キャパシタ2002と出力バッファ2003により構成されており、演算値Xiの値をキャパシタ2002に蓄積された電圧値として保持している。

続いて、演算値Xiが有するラベルiがスイッチングブロック(1)3003に入力され、そのラベルiに応じてスイッチングブロック(1)3003がスイッチングを行い、入力保持ブロック3001から出力された演算値Xiをそのラベルiに対応する演算ブロックに入力する。

一方、荷重保持ブロック3004からから出力される複数の被演算値Wiは、それぞれ所定の演算ブロックに入力される。ここで特許文献1においては、被演算値Wiについても、演算値Xiと同様に、演算値Xiが有するラベルiに応じてスイッチングブロック(2)3005においてスイッチングが行われ、ラベルiによって決定される所定の演算ブロックに入力される。以上の処理を実行することにより、所定の演算ブロックに演算値Xiと被演算値Wiが入力される。

続いて、演算値Xiと被演算値Wiとの両者が入力された前記所定の演算ブロックにおいて行われる演算処理について説明する。なお、演算値Xiが入力されない演算ブロックでは演算処理は実行されない。

図16の演算ブロック(アナログ乗算器2001内の演算ブロック)において、演算値Xiと被演算値Wiとは、アナログ乗算器2001によってXi×Wiが演算される。なお、各演算ブロックに入力される演算値及び被演算値の値は、演算毎に同一の場合も異なる場合もある。

つづいて、Xi×Wiの乗算結果は、電荷量で表現され、キャパシタ2002に追加蓄積される。ここで、特許文献1ではアナログ乗算器2001による乗算結果は、電荷量として出力されることを想定している。

以上の処理を繰り返すことにより、複数のXiとWiとの乗算結果の累積値がキャパシタ2002に保持され、所定の累算が完了すると出力バッファ2003を介して累積値が出力される。なお、ここでは、XiはPWM信号であり、Wiは、ある周期を持つパルス列、又は電圧パルスになる。

次に、積和演算装置1000をニューラルネットワークに応用したケースについて説明する。一般に説明されているニューラルネットワークモデルを図18に示す。また、ニューラルネットワークに対して図15で説明した積和演算方法を適用する際の演算処理ブロックの構成を図19に示す。

まず、図18に示すようにニューラルネットワークにおけるニューロン素子のモデルとしては、ニューロン素子において、前段の複数のニューロン素子の出力値をシナプス荷重で重み付けした値の総和をとり、ニューロン素子の内部状態値を決定するものが一般的である。

特許文献1で説明されたニューロン素子回路(ユニット)は、ニューロン素子のモデルとして、図16で説明した演算処理ブロックを用いている。すなわち、図16で説明した演算値Xiが前段ニューロン素子の出力値に相当し、また被演算値Wiがシナプス荷重値に相当し、ニューロン素子の内部状態値を決定する。続いて図20に示すように、各演算ブロックで算出された累算値は所定の関数処理を行う関数処理ブロック4001Aに入力される。関数処理ブロック4001Aは、目的に応じて非線形関数処理を行っても良いし、線形関数処理を行っても良い。
特開2005−122465号公報(平成17年5月12日公開
特開2005−122466号公報(平成17年5月12日公開)
Liu, S. Q. 他、“Electric-pulse-induced reversible Resistance change effect in magnetoresistive films” ,Applied Physics Letter, Vol. 76, pp. 2749-2751, 2000年

概要

積演算装置及び積和演算装置における構成を簡素化し、これらの装置を含む回路全体面積に対する積演算装置及び積和演算装置の占有面積を小さくする。端子A・Bを有する抵抗変化型可変抵抗素子1の、端子Aに被乗数に対応するパルス幅Tiの単一電圧パルスを入力し、端子Bに乗数に対応するパルス周波数Fiの電圧パルス列を入力することにより、被乗数と乗数との積演算の結果に対応するFi・Tiに応じたPWM(Pulse Width Modulation)信号が出力される。

目的

本発明は、前記従来の問題点に鑑みなされたものであって、その目的は、積演算装置及び積和演算装置における構成を簡素化し、これらの装置を含む回路全体の面積に対する積演算装置及び積和演算装置の占有面積を小さくすることが可能な積演算装置、及び積和演算装置、これらの装置を各ニューロン素子に備えるニューラルネットワーク、並びに積演算方法などを提供することにある。

効果

実績

技術文献被引用数
5件
牽制数
1件

この技術が所属する分野

(分野番号表示ON)※整理標準化データをもとに当社作成

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

被乗数乗数とを入力することにより、これらの積演算の結果を出力する積演算装置であって、電圧パルス印加することによって可逆的に電気抵抗が変化し、少なくとも2つの端子を有する抵抗変化型可変抵抗素子を備えており、該抵抗変化型可変抵抗素子の前記2つの端子の一方の端子に被乗数に対応する第1入力信号を入力し、他方の端子に前記被乗数に乗算される乗数に対応する第2入力信号を入力することにより、前記被乗数と前記乗数との積演算の結果に対応する出力値が出力されるように構成されていることを特徴とする積演算装置。

請求項2

前記第1入力信号及び前記第2入力信号は、電圧パルスであり、前記第1入力信号の電圧パルス幅と、前記第2入力信号のパルス周波数とにより前記出力値を制御するように構成されていることを特徴とする請求項1に記載の積演算装置。

請求項3

前記第1入力信号及び前記第2入力信号は、電圧パルスであり、前記第1入力信号の電圧パルス幅と、前記第2入力信号のパルス電圧とにより前記出力値を制御するように構成されていることを特徴とする請求項1に記載の積演算装置。

請求項4

前記抵抗変化型可変抵抗素子は、前記第1入力信号及び前記第2入力信号の入力による前記積演算の結果を、該抵抗変化型可変抵抗素子の電気抵抗の変化によって記憶することを特徴とする請求項1から3までのいずれか1項に記載の積演算装置。

請求項5

前記電気抵抗の変化によって記憶された前記積演算の結果は、前記抵抗変化型可変抵抗素子に所定の電圧パルスを印加することにより、消去可能となっていることを特徴とする請求項4に記載の積演算装置。

請求項6

請求項1から5までのいずれか1項に記載の積演算装置を少なくとも1つ備えており、複数セットの前記第1信号及び前記第2信号の入力により、該積演算装置から出力される前記セット毎の前記出力値の累積値に対応する第2出力値が出力されるように構成されていることを特徴とする積和演算装置

請求項7

前記抵抗変化型可変抵抗素子は、複数セットの前記第1入力信号及び前記第2入力信号の入力による前記セット毎の前記積演算の累積結果を、該抵抗変化型可変抵抗素子の電気抵抗の変化によって記憶することを特徴とする請求項6に記載の積和演算装置。

請求項8

前記電気抵抗の変化によって記憶された前記積演算の累積結果は、前記抵抗変化型可変抵抗素子に所定の電圧パルスを印加することにより、消去可能となっていることを特徴とする請求項7に記載の積和演算装置。

請求項9

請求項1から5までのいずれか1項に記載の積演算装置を複数備えており、該複数の積演算装置のそれぞれから出力される出力値の累積値に対応する第2出力値が出力されるように構成されていることを特徴とする積和演算装置。

請求項10

前記複数の積演算装置のうちの、所定数の積演算装置のそれぞれから出力される出力値の累積値に対応する第3出力値が出力されるように構成されていることを特徴とする請求項9に記載の積和演算装置。

請求項11

前記複数の積演算装置のうち、所定数の積演算装置のそれぞれから出力される出力値の累積値を記憶する記憶部を備えていることを特徴とする請求項10に記載の積和演算装置。

請求項12

複数段ニューロン素子を有しており、特定段における所定数のニューロン素子の出力値に対してシナプス荷重値重み付けした値のそれぞれを、一意対応で、該特定段に隣接する次段のニューロン素子に入力することにより、該ニューロン素子の内部状態を示す内部状態値が決定されるニューラルネットワークであって、前記各ニューロン素子は、請求項6から11までのいずれか1項に記載の積和演算装置を備えており、前記特定段におけるニューロン素子の出力値は、前記被乗数として前記次段のニューロン素子に備えられた積和演算装置へ入力されると共に、前記シナプス荷重値は、前記乗数として前記次段のニューロン素子に備えられた積和演算装置に入力され、前記次段のニューロン素子の内部状態を示す内部状態値は、前記積演算の累積結果に対応する出力値として前記次段のニューロン素子に備えられた積和演算装置から出力されるように構成されていることを特徴とするニューラルネットワーク。

請求項13

電圧パルスを印加することによって可逆的に電気抵抗が変化し、少なくとも2つの端子を有する抵抗変化型可変抵抗素子を備えており、被乗数と乗数とを入力することにより、これらの積演算の結果を出力する積演算装置により実行される積演算方法であって、前記抵抗変化型可変抵抗素子の前記2つの端子の一方の端子に被乗数に対応する第1入力信号を入力する第1信号入力テップと、前記2つの端子の他方の端子に前記被乗数に乗算される乗数に対応する第2入力信号を入力する第2信号入力ステップと、前記被乗数と前記乗数との積演算の結果に対応する出力値を出力する演算結果出力ステップと実行することを特徴とする積演算方法。

技術分野

0001

本発明は、電気的ストレス印加によって電気抵抗を変化させることで情報を記憶することが可能な抵抗変化型可変抵抗素子を備えた積演算装置、及び積和演算装置、これらの装置を各ニューロン素子に備えるニューラルネットワーク、並びに積演算方法などに関するものである。

背景技術

0002

現在、いわゆるノイマン型のコンピュータは、大きな進展を見せ、世の中の様々な場面で使用されている。しかしながら、これらノイマン型と呼ばれるコンピュータは、その処理方法自体の特性により、人が容易に行うことができる処理(リアルタイムでの人の顔の認識等)を非常に不得手としている。

0003

これに対して、脳の情報処理様式を真似演算処理モデルである、ニューラルネットワークの研究が行われている。

0004

ニューラルネットワークを構成するニューロン素子(以下、「ニューロン」という)のモデルとしては、ニューロンに相当するユニットに対して、他の複数のユニットの出力値シナプス荷重値重み付けした乗算値が入力され、その入力値をさらに非線形変換した値を出力値(内部状態値)とするものが一般的である。

0005

すなわち、一般的なニューラルネットワークにおいては、各ユニット、及びユニット間における積和演算と非線形変換とにより、所望の処理が実現される。

0006

このニューロンモデルを用いたニューラルネットワークアーキテクチャニューラルネットワークモデル)としては、これまでに、積和演算を実行するユニットを相互に結合した連想メモリや、同じく積和演算を実行するユニットを階層的に結合したパターン認識モデル等が提案されている。

0007

ここでニューラルネットワークの実用化を狙い、集積回路化を図る際には、前記の積和演算をより効率的に実行することが必要となり、特に演算実行速度消費電力の面での必要性が顕著になる。

0008

前記のように積和演算を実行するニューロンモデル、及びニューラルネットワークアーキテクチャに関する発明が、各種提案されており、積和演算を行い階層的なニューロコンピュータを構成する方法も提案されている。(例えば、特許文献1、2を参照)。図14(a)に、PWM(Pulse Width Modulation:パルス幅変調)信号を用いた積和演算装置1000の構成を示す。

0009

パルス幅Ti(i=1,2,3,…)を有するそれぞれのPWM入力信号に対応する電流Iiに関する各スイッチト電流源SCS)の電流源1012〜1032・・・のそれぞれのスイッチ1012〜1032・・・をONすると、データ線1001を介して電流IiがキャパシタC1004に時間Tiだけ流れる。キャパシタC1004に蓄積される電荷量Qoutと端子電圧Voutとは、それぞれ、
Qout=ΣIiTi
Vout=Qout/C=ΣIiTi/C
表記される。

0010

こうして、電流源1012〜1032・・・のそれぞれの電流量で重み付けされたPWM信号(IiTi)の加算結果がキャパシタ1004の電荷量Qout又は端子電圧Voutとして得られる。端子電圧Voutは、図14(b)に示すように線形に変化する参照ランプ電圧Vrefとコンパレータ1005で比較することにより、パルス幅Toutを有するPWM信号に変換されて出力される。

0011

次に、積和演算回路ユニット3000を用いた演算処理工程について説明する。図15は、特許文献1及び2における積和演算方法を実施するための処理ブロックの構成図を示す。

0012

特許文献1及び2における積和演算方法は、複数個演算ブロック1000a、1000b、1000c、・・・を備える演算ユニット3006と、演算値Xiを保持する入力値(演算値)保持ブロック3001と、被演算値Wiを保持する荷重値(被演算値)保持ブロック3004と、演算値Xiのラベルiに対応する演算ブロックへ演算値Xi、及び被演算値Wiを入力するためのスイッチングブロック(1)3003及びスイッチングブロック(2)3005から構成される。

0013

特許文献1においては、演算値XiがPWM(Pulse Width Modulation)信号として入力される場合を想定している。なお、演算値Xiと被演算値Wiのiは、それぞれ異なるXとWを示す添え字であり、1,2,3・・・の自然数をとる。

0014

図16は、1つの演算ブロックをアナログ回路で構成したアナログ演算回路2000を示す。図16に示すように、特許文献1におけるアナログ演算回路2000は、アナログ乗算器2001と、キャパシタ2002と、出力バッファ2003とから構成される。

0015

アナログ乗算器2000は、図14(a)に示した積和演算装置1000で構成されている。

0016

図17は、入力値保持ブロック3001をアナログメモリ回路で構成したものを示す。ここでは、アナログメモリ回路をキャパシタ2002と出力バッファ2003とで構成することを想定している。

0017

図15に示すように、複数の演算値Xiが入力保持ブロック3001に保持される。入力保持ブロック3001は、キャパシタ2002と出力バッファ2003により構成されており、演算値Xiの値をキャパシタ2002に蓄積された電圧値として保持している。

0018

続いて、演算値Xiが有するラベルiがスイッチングブロック(1)3003に入力され、そのラベルiに応じてスイッチングブロック(1)3003がスイッチングを行い、入力保持ブロック3001から出力された演算値Xiをそのラベルiに対応する演算ブロックに入力する。

0019

一方、荷重保持ブロック3004からから出力される複数の被演算値Wiは、それぞれ所定の演算ブロックに入力される。ここで特許文献1においては、被演算値Wiについても、演算値Xiと同様に、演算値Xiが有するラベルiに応じてスイッチングブロック(2)3005においてスイッチングが行われ、ラベルiによって決定される所定の演算ブロックに入力される。以上の処理を実行することにより、所定の演算ブロックに演算値Xiと被演算値Wiが入力される。

0020

続いて、演算値Xiと被演算値Wiとの両者が入力された前記所定の演算ブロックにおいて行われる演算処理について説明する。なお、演算値Xiが入力されない演算ブロックでは演算処理は実行されない。

0021

図16の演算ブロック(アナログ乗算器2001内の演算ブロック)において、演算値Xiと被演算値Wiとは、アナログ乗算器2001によってXi×Wiが演算される。なお、各演算ブロックに入力される演算値及び被演算値の値は、演算毎に同一の場合も異なる場合もある。

0022

つづいて、Xi×Wiの乗算結果は、電荷量で表現され、キャパシタ2002に追加蓄積される。ここで、特許文献1ではアナログ乗算器2001による乗算結果は、電荷量として出力されることを想定している。

0023

以上の処理を繰り返すことにより、複数のXiとWiとの乗算結果の累積値がキャパシタ2002に保持され、所定の累算が完了すると出力バッファ2003を介して累積値が出力される。なお、ここでは、XiはPWM信号であり、Wiは、ある周期を持つパルス列、又は電圧パルスになる。

0024

次に、積和演算装置1000をニューラルネットワークに応用したケースについて説明する。一般に説明されているニューラルネットワークモデルを図18に示す。また、ニューラルネットワークに対して図15で説明した積和演算方法を適用する際の演算処理ブロックの構成を図19に示す。

0025

まず、図18に示すようにニューラルネットワークにおけるニューロン素子のモデルとしては、ニューロン素子において、前段の複数のニューロン素子の出力値をシナプス荷重で重み付けした値の総和をとり、ニューロン素子の内部状態値を決定するものが一般的である。

0026

特許文献1で説明されたニューロン素子回路(ユニット)は、ニューロン素子のモデルとして、図16で説明した演算処理ブロックを用いている。すなわち、図16で説明した演算値Xiが前段ニューロン素子の出力値に相当し、また被演算値Wiがシナプス荷重値に相当し、ニューロン素子の内部状態値を決定する。続いて図20に示すように、各演算ブロックで算出された累算値は所定の関数処理を行う関数処理ブロック4001Aに入力される。関数処理ブロック4001Aは、目的に応じて非線形関数処理を行っても良いし、線形関数処理を行っても良い。
特開2005−122465号公報(平成17年5月12日公開
特開2005−122466号公報(平成17年5月12日公開)
Liu, S. Q. 他、“Electric-pulse-induced reversible Resistance change effect in magnetoresistive films” ,Applied Physics Letter, Vol. 76, pp. 2749-2751, 2000年

発明が解決しようとする課題

0027

しかしながら、前記の積和演算装置1000においては以下の問題点がある。図21に、図14(a)で説明したスイッチト電流源(SCS)の回路構成を示す。

0028

従来のスイッチト電流源(SCS)は、スイッチ部分にCMOS(complementary metal-oxide semiconductor)インバータ回路、及び定電流源にMOS(metal-oxide semiconductor)トランジスタを使用している。

0029

このため、構成が複雑になり、積和演算装置1000の部分の占有面積が大きくなってしまうという問題点がある。

0030

なお、定電流源のトランジスタには、アナログとしての性能を高めるため、デザインルールに依存せず、通常、2μm程度のチャネル長のものが使用される。結果として、スイッチト電流源(SCS)の単位素子のサイズは、数μm〜数十μm程度の大きさとなってしまう。

0031

また、図14(a)に示すように、積和演算装置1000に対して同時に複数の演算値・被演算値を入力するためには、前記スイッチト電流源(SCS)を複数設ける必要があるため、前記占有面積は、さらに増大してしまう問題点もある。

0032

本発明は、前記従来の問題点に鑑みなされたものであって、その目的は、積演算装置及び積和演算装置における構成を簡素化し、これらの装置を含む回路全体面積に対する積演算装置及び積和演算装置の占有面積を小さくすることが可能な積演算装置、及び積和演算装置、これらの装置を各ニューロン素子に備えるニューラルネットワーク、並びに積演算方法などを提供することにある。

課題を解決するための手段

0033

本発明の積演算装置は、前記課題を解決するために、被乗数乗数とを入力することにより、これらの積演算の結果を出力する積演算装置であって、電圧パルスを印加することによって可逆的に電気抵抗が変化し、少なくとも2つの端子を有する抵抗変化型可変抵抗素子を備えており、該抵抗変化型可変抵抗素子の前記2つの端子の一方の端子に被乗数に対応する第1入力信号を入力し、他方の端子に前記被乗数に乗算される乗数に対応する第2入力信号を入力することにより、前記被乗数と前記乗数との積演算の結果に対応する出力値が出力されるように構成されていることを特徴としている。

0034

本発明の積演算方法は、前記課題を解決するために、電圧パルスを印加することによって可逆的に電気抵抗が変化し、少なくとも2つの端子を有する抵抗変化型可変抵抗素子を備えており、被乗数と乗数とを入力することにより、これらの積演算の結果を出力する積演算装置により実行される積演算方法であって、前記抵抗変化型可変抵抗素子の前記2つの端子の一方の端子に被乗数に対応する第1入力信号を入力する第1信号入力テップと、前記2つの端子の他方の端子に前記被乗数に乗算される乗数に対応する第2入力信号を入力する第2信号入力ステップと、前記被乗数と前記乗数との積演算の結果に対応する出力値を出力する演算結果出力ステップと実行することを特徴としている。

0035

前記構成によれば、少なくとも2つの端子を有する抵抗変化型可変抵抗素子の一方の端子に被乗数に対応する第1入力信号を入力し、他方の端子に前記被乗数に乗算される乗数に対応する第2入力信号を入力することにより、前記被乗数と前記乗数との積演算の結果に対応する出力値が出力されるようになっている。

0036

また、前記方法によれば、少なくとも2つの端子を有する前記抵抗変化型可変抵抗素子の一方の端子に被乗数に対応する第1入力信号を入力する第1信号入力ステップと、前記2つの端子の他方の端子に前記被乗数に乗算される乗数に対応する第2入力信号を入力する第2信号入力ステップと、前記被乗数と前記乗数との積演算の結果に対応する出力値を出力する演算結果出力ステップとが実行される。

0037

以上の構成又は方法における大きなポイントは、抵抗変化型可変抵抗素子における電圧パルスを印加することによって可逆的に電気抵抗が変化するという物理的特性を利用する点にある。

0038

すなわち、被乗数、乗数、及び積演算の結果と、第1信号、第2信号、及び抵抗変化型可変抵抗素子の出力値(電流値など)との対応関係をあらかじめ決めておけば、積演算を実行することが可能である。

0039

これにより、一方の端子から被乗数に対応する信号を入力し、他方の端子から前記被乗数に乗算される乗数に対応する信号を入力することによって、被乗数と乗数との積演算の結果に対応する出力値を出力する積演算装置を、前記従来技術のように、定電流源とスイッチ回路とを有するスイッチト電流源(SCS)で構成する必要がない。

0040

これにより、例えば、デザインルールを0.1μmとした場合、本発明の積演算装置の基本素子サイズは、0.04μm2となり、上述した従来技術に比べ、2桁〜3桁程度、素子面積縮小できる。

0041

ここで、「電圧パルス」とは、所定の振幅値(絶対値が最大の電圧値:以下「パルス電圧」又は「パルス電圧値」という)と、所定のパルス幅(以下、「電圧パルス幅」という)とを有するPWM(Pulse Width Modulation)信号の他、NRZ(None-Return-to-Zero)及びRZ(Return-to-Zero)信号も含まれる。また、「電圧パルス」には、1周期単位単一電圧パルス、及び所定の周波数(以下、「パルス周波数」という)を有する「電圧パルス列」が含まれる。

0042

また、「抵抗変化型可変抵抗素子」とは、電圧パルスを印可する事によって可逆的に電気抵抗が変化する素子のことである。なお、「抵抗変化型可変抵抗素子」は、近年、フラッシュメモリ代わる高速動作可能な次世代不揮発性ランダムアクセスメモリ(NVRAM:Nonvolatile Random Access Memory)として応用が期待されているものである。また、「抵抗変化型可変抵抗素子」としては、例えば、非特許文献1に記載されている様なRRAM(Resistance RAM)やPCRAM(Phase Change RAM)などが挙げられる。

0043

前記第1信号の例としては、PWM(Pulse Width Modulation)信号があり、前記第2信号の例としては、所定の周期(所定の周波数)を持つ電圧パルス列や、電圧パルスが考えられる。

0044

上より、積演算装置における構成を簡素化し、これらの装置を含む回路全体の面積に対する積演算装置の占有面積を小さくすることが可能な積演算装置を提供することができる。

0045

本発明の積演算装置は、前記構成に加えて、前記第1入力信号及び前記第2入力信号は、電圧パルスであり、前記第1入力信号の電圧パルス幅と、前記第2入力信号のパルス周波数とにより前記出力値を制御するように構成されていても良い。

0046

「抵抗変化型可変抵抗素子」は、所定時間間隔の電圧パルスの印加回数に応じて素子に流れる電流を制御できる。よって、素子の一方の端子に入力される被乗数に対応する第1入力信号の電圧パルス幅の大きさと、素子の他方の端子に入力される乗数に対応する第2入力信号のパルス周波数との積として得られる素子への電圧パルスの印加回数に応じて素子に流れる電流値が決まる。すなわち、被乗数、乗数、及び積演算の結果と、第1信号の電圧パルス幅、第2信号のパルス周波数、及び抵抗変化型可変抵抗素子への電圧パルスの印加回数(電流値)との対応関係をあらかじめ決めておけば、積演算を実行することが可能である。

0047

本発明の積演算装置は、前記構成に加えて、前記第1入力信号及び前記第2入力信号は、電圧パルスであり、前記第1入力信号の電圧パルス幅と、前記第2入力信号のパルス電圧とにより前記出力値を制御するように構成されていても良い。

0048

「抵抗変化型可変抵抗素子」は、電圧パルス幅(又は所定パルス電圧の印加時間)及びパルス電圧値に応じて素子に流れる電流が制御できる。よって、素子の一方の端子に入力される被乗数に対応する第1入力信号の電圧パルス幅の大きさと、素子の他方の端子に入力される乗数に対応する第2入力信号のパルス電圧との積として得られる素子への電圧パルス幅及びパルス電圧値に応じて素子に流れる電流値が決まる。すなわち、被乗数、乗数、及び積演算の結果と、第1信号の電圧パルス幅、第2信号のパルス電圧、及び抵抗変化型可変抵抗素子への電圧パルス幅及びパルス電圧値(電流値)との対応関係をあらかじめ決めておけば、積演算を実行することが可能である。

0049

本発明の積演算装置は、前記構成に加えて、前記抵抗変化型可変抵抗素子は、前記第1入力信号及び前記第2入力信号の入力による前記積演算の結果を、該抵抗変化型可変抵抗素子の電気抵抗の変化によって記憶するものである。

0050

ここで、前記特許文献1及び2に記載された従来技術の上述した問題点とは、別の問題点について説明する。前記従来技術では、スイッチト電流源(SCS)のそれぞれが、情報を記録したり消去したりする機能がないため、個々のスイッチト電流源(SCS)の出力値(積演算の結果)のそれぞれを再利用等することができないといった問題点がある。

0051

しかしながら、上述したように、「抵抗変化型可変抵抗素子」は、電圧パルスの印加回数に応じて素子に流れる電流を制御でき、また、電圧パルス幅及びパルス電圧値に応じて素子に流れる電流が制御できる。

0052

言い換えれば、「抵抗変化型可変抵抗素子」は、電圧パルスの印加回数に応じて、或いは、電圧パルス幅及びパルス電圧値に応じて素子の電気抵抗が変化する。

0053

すなわち、「抵抗変化型可変抵抗素子」は、前記第1入力信号及び前記第2入力信号の入力による前記積演算の結果を、該抵抗変化型可変抵抗素子の電気抵抗の変化によって記憶する。これにより、本発明の積演算装置(抵抗変化型可変抵抗素子)自体による前記積演算の結果の記憶が可能となる。

0054

本発明の積演算装置は、前記構成に加えて、前記電気抵抗の変化によって記憶された前記積演算の結果は、前記抵抗変化型可変抵抗素子に所定の電圧パルスを印加することにより、消去可能となっている。

0055

例えば、抵抗変化型可変抵抗素子をバイポーラー動作させた場合は、書き込み時のパルスと時間・電圧が同じで、極性の異なる電圧パルスを再度印加することにより、前記電気抵抗の変化によって記憶された前記積演算の結果を消去することができる。また、抵抗変化型可変抵抗素子をモノポーラ動作させた場合は、極性が同じで時間が長いパルスを再度印加することにより、前記電気抵抗の変化によって記憶された前記積演算の結果を消去することができる。

0056

また、本発明の積和演算装置は、前記積演算装置を少なくとも1つ備えており、複数セットの前記第1信号及び前記第2信号の入力により、該積演算装置から出力される前記セット毎の前記出力値の累積値に対応する第2出力値が出力されるように構成されていても良い。

0057

ここで、従来の積和演算装置では、処理速度の短縮を考慮しなければ、単一のスイッチト電流源(SCS)に複数セットの入力を与えて、キャパシタに順次蓄えるという構成を採用する例もある。

0058

しかしながら、スイッチト電流源は、スイッチ回路と定電流源とを備えるものであり、本発明の単体の抵抗変化型可変抵抗素子で構成された積演算装置に比べて、素子サイズはかなり大きい。

0059

したがって、本発明の積和演算装置を、単一の積演算装置に複数セットの入力を与えて、キャパシタに順次蓄える構成とした場合でも、従来の単一のスイッチト電流源を用いる積和演算装置に比べて、これらの装置を含む回路全体の面積に対する積演算装置の占有面積を小さくすることができる。

0060

また、本発明の積和演算装置は、前記構成に加えて、前記抵抗変化型可変抵抗素子は、複数セットの前記第1入力信号及び前記第2入力信号の入力による前記セット毎の前記積演算の累積結果を、該抵抗変化型可変抵抗素子の電気抵抗の変化によって記憶するものである。

0061

上述したように、「抵抗変化型可変抵抗素子」は、電圧パルスの印加回数に応じて素子に流れる電流を制御でき、また、電圧パルス幅及びパルス電圧値に応じて素子に流れる電流を制御できる。

0062

言い換えれば、「抵抗変化型可変抵抗素子」は、電圧パルスの印加回数に応じて、或いは、電圧パルス幅及びパルス電圧値に応じて素子の電気抵抗が変化する。

0063

すなわち、「抵抗変化型可変抵抗素子」は、前記抵抗変化型可変抵抗素子は、複数セットの前記第1入力信号及び前記第2入力信号の入力による前記セット毎の前記積演算の累積結果を、該抵抗変化型可変抵抗素子の電気抵抗の変化によって記憶する。これにより、本発明の積和演算装置(抵抗変化型可変抵抗素子)自体による前記積演算の累積結果の記憶が可能となる。

0064

また、本発明の積和演算装置は、前記構成に加えて、前記電気抵抗の変化によって記憶された前記積演算の累積結果は、前記抵抗変化型可変抵抗素子に所定の電圧パルスを印加することにより、消去可能となっている。

0065

例えば、抵抗変化型可変抵抗素子をバイポーラ動作させた場合は、書き込み時のパルスと時間・電圧が同じで、極性の異なる電圧パルスを再度印加することにより、前記電気抵抗の変化によって記憶された前記積演算の結果を消去することができる。また、抵抗変化型可変抵抗素子をモノポーラ動作させた場合は、極性が同じで時間が長いパルスを再度印加することにより、前記電気抵抗の変化によって記憶された前記積演算の結果を消去することができる。

0066

また、本発明の積和演算装置は、前記構成に加えて、前記積演算装置を複数備えており、該複数の積演算装置のそれぞれから出力される出力値の累積値に対応する第2出力値が出力されるように構成されていても良い。

0067

以上によれば、複数の積演算装置への書き込み、読み出しが同時に処理できるため、単体の抵抗変化型可変抵抗素子で積和演算装置を構成した場合に比較して、前記積演算の累積結果の書き込み読み出しの処理速度が速くなる。

0068

また、本発明の積和演算装置は、前記構成に加えて、前記複数の積演算装置のうちの、所定数の積演算装置のそれぞれから出力される出力値の累積値に対応する第3出力値が出力されるように構成されていても良い。

0069

前記構成によれば、所定数の積演算装置のそれぞれから出力される出力値の累積値に対応する第3出力値(部分和)が出力される、すなわち、部分的な積和演算(部分和の算出)が可能となる。

0070

また、本発明の積和演算装置は、前記構成に加えて、前記複数の積演算装置のうち、所定数の積演算装置のそれぞれから出力される出力値の累積値を記憶する記憶部を備えていることが好ましい。

0071

以上によれば、適宜記憶部を設けることにより、複数の積演算装置を、複数のブロック部分に分割して、当該ブロック部分毎に、前記複数の積演算装置のうち、所定数の積演算装置のそれぞれから出力される出力値の累積値を記憶させることができる。また、記憶部に記録されていれば、前記積演算の累積結果を直ぐに引き出すことができるので、当該ブロック部分毎に記憶部に記憶されている部分和の算出処理が速くなる。

0072

また、本発明のニューラルネットワークは、前記構成に加えて、複数段のニューロン素子を有しており、特定段における所定数のニューロン素子の出力値に対してシナプス荷重値で重み付けした値のそれぞれを、一意対応で、該特定段に隣接する次段のニューロン素子に入力することにより、該ニューロン素子の内部状態を示す内部状態値が決定されるニューラルネットワークであって、前記各ニューロン素子は、請求項6から11までのいずれか1項に記載の積和演算装置を備えており、前記特定段におけるニューロン素子の出力値は、前記被乗数として前記次段のニューロン素子に備えられた積和演算装置へ入力されると共に、前記シナプス荷重値は、前記乗数として前記次段のニューロン素子に備えられた積和演算装置に入力され、前記次段のニューロン素子の内部状態を示す内部状態値は、前記積演算の累積結果に対応する出力値として前記次段のニューロン素子に備えられた積和演算装置から出力されるように構成されていることが好ましい。

0073

前記構成によれば、前記各ニューロン素子は、前記積和演算装置を備えており、これらのニューロン素子の出力値、シナプス荷重値及び内部状態値のそれぞれを、前記積和演算装置に入・出力される、被乗数、乗数、及び被乗数及び乗数の積演算の累積結果で、ニューラルネットワークが構成されるため、従来のニューラルネットワークにおいて各ニューロン素子毎の内部状態値を算出する演算処理ブロックのそれぞれの縮小が可能になる。

0074

なお、「一意対応」とは、「1対1対応」及び「他対1対応」を含む概念である。

0075

より具体的には、「1対1対応」とは、特定段における1つのニューロン素子の出力値に対してシナプス荷重値で重み付けした値を、該特定段に隣接する次段の1つのニューロン素子に入力する場合の対応関係のことである。

0076

また、「他対1対応」とは、特定段における複数のニューロン素子のそれぞれの出力値に対してシナプス荷重値で重み付けした値の総和を、該特定段に隣接する次段の1つのニューロン素子に入力する場合の対応関係のことである。

0077

以上説明した様に、本発明によれば、回路が簡素化された素子サイズの小さい積演算装置及び積和演算装置が実現できる。また、抵抗変化型可変抵抗素子に書き込んだ入力信号の積又は積和演算の結果を記憶することができ、必要に応じて、全体和又は部分和を出力することが可能になる。

0078

よって、積演算装置及び積和演算装置における構成を簡素化し、これらの装置を含む回路全体の面積に対する積演算装置及び積和演算装置の占有面積を小さくすることが可能な積演算装置、及び積和演算装置、これらの装置を各ニューロン素子に備えるニューラルネットワーク、並びに積演算方法などを提供することができる。

発明の効果

0079

本発明の積演算装置は、以上のように、被乗数と乗数とを入力することにより、これらの積演算の結果を出力する積演算装置であって、電圧パルスを印加することによって可逆的に電気抵抗が変化し、少なくとも2つの端子を有する抵抗変化型可変抵抗素子を備えており、該抵抗変化型可変抵抗素子の前記2つの端子の一方の端子に被乗数に対応する第1入力信号を入力し、他方の端子に前記被乗数に乗算される乗数に対応する第2入力信号を入力することにより、前記被乗数と前記乗数との積演算の結果に対応する出力値が出力されるように構成されているものである。

0080

また、本発明の積演算方法は、以上のように、電圧パルスを印加することによって可逆的に電気抵抗が変化し、少なくとも2つの端子を有する抵抗変化型可変抵抗素子を備えており、被乗数と乗数とを入力することにより、これらの積演算の結果を出力する積演算装置により実行される積演算方法であって、前記抵抗変化型可変抵抗素子の前記2つの端子の一方の端子に被乗数に対応する第1入力信号を入力する第1信号入力ステップと、前記2つの端子の他方の端子に前記被乗数に乗算される乗数に対応する第2入力信号を入力する第2信号入力ステップと、前記被乗数と前記乗数との積演算の結果に対応する出力値を出力する演算結果出力ステップと実行する方法である。

0081

それゆえ、積演算装置における構成を簡素化し、これらの装置を含む回路全体の面積に対する積演算装置の占有面積を小さくすることが可能な積演算装置、及び積和演算装置、これらの装置を各ニューロン素子に備えるニューラルネットワーク、並びに積演算方法などを提供するという効果を奏する。

発明を実施するための最良の形態

0082

本発明の一実施形態について図1図13に基づいて説明すれば、以下の通りである。

0083

〔実施の形態1〕
まず、図1に基づき、本発明の一実施形態である積和演算装置(積演算装置)10の構成について説明する。

0084

図1は、本発明の一実施形態である抵抗変化型可変抵抗素子(積演算装置)1をユニットセルとする単一セルにより構成された積和演算装置10の書き込みの際の構成を示す回路図である。

0085

本実施形態の積和演算装置10は、被乗数と乗数とを入力することにより、これらの積演算の結果を出力するものであり、図1に示すように、抵抗変化型可変抵抗素子1,データ線2,ビット線3,スイッチングトランジスタ4,コンデンサ(記憶部)5,及びオペアンプ6を備える構成である。

0086

抵抗変化型可変抵抗素子1は、電圧パルスを印加することによって可逆的に電気抵抗が変化し、少なくとも2つの端子(一方の端子)A・端子(他方の端子)Bを有するものである。

0087

また、抵抗変化型可変抵抗素子1の端子Aに被乗数に対応する第1入力信号を入力し、端子Bに前記被乗数に乗算される乗数に対応する第2入力信号を入力することにより、前記被乗数と前記乗数との積演算の結果に対応する出力値(電流値)が出力されるように構成されている。

0088

データ線2には、パルス周波数Fiで定義される電圧パルス列(第2入力信号)が印可される。

0089

ビット線3には、パルス幅(電圧パルス幅)Tiで定義される単一電圧パルス(第1入力信号)が印加される。

0090

ここで、「電圧パルス」とは、所定の振幅値(絶対値が最大の電圧値:以下「パルス電圧」又は「パルス電圧値」という)と、所定のパルス幅(以下、「電圧パルス幅又は所定パルス電圧の印加時間」という)とを有するPWM(Pulse Width Modulation)信号の他、NRZ(None-Return-to-Zero)及びRZ(Return-to-Zero)信号も含まれる。また、「電圧パルス」には、1周期単位の単一電圧パルス、及び所定の周波数(以下、「パルス周波数」という)を有する「電圧パルス列」が含まれる。

0091

スイッチングトランジスタ4は、抵抗変化型可変抵抗素子1と、コンデンサ5及びオペアンプ6との間を導通状態又は非導通状態とするためのスイッチの役割を果たす。なお、図1では、非導通状態であるため「OFF」と記載されている。

0092

コンデンサ5は、スイッチングトランジスタ4との間で導通状態にある場合、以下で説明するように、データ線2及びビット線3から抵抗変化型可変抵抗素子1に書き込まれた情報を電荷量として記憶するものである。

0093

オペアンプ6は、負極性入力端子(−)と、出力端子との間にコンデンサ5を設けることで、フィードバックをかけ、積分回路を構成するものである。なお、この場合、Vrefには、一定のバイアス電圧が印加される。

0094

これにより、オペアンプ6のフィードバック機能により、負極性入力端子(−)への入力が仮想接地になるので、コンデンサ5に電荷が溜まることによる電位変動が抑制されるという効果が得られる。

0095

ここで、図4の基づき、抵抗変化型可変抵抗素子1の電圧パルスを印加することによって可逆的に電気抵抗が変化する物理的特性について説明する。

0096

図4は、抵抗変化型可変抵抗素子1の構造及び測定時の等価回路を示す。例えば、RRAM(Resistance RAM:抵抗変化型可変抵抗素子)は、図4に示すように、上部電極(一方の端子,他方の端子)11A,下部電極(一方の端子,他方の端子)11B,及び抵抗体12を備えるものである。

0097

抵抗体12は、金属酸化物が材料となっており、上部電極11A及び下部電極11Bに挟まれた構造をしている。

0098

RRAMに、パルス電圧を印可することにより、電気抵抗が変化し、電源オフにしてもその抵抗値が保持され、不揮発性メモリとして働く。通常、高抵抗状態から低抵抗状態遷移する動作を「SET(セット)動作」、低抵抗状態から高抵抗状態に遷移する動作を「RESET(リセット)動作」と定義している。

0099

SET動作及びRESET動作ともに同極性の電圧パルスを印可する方式を「ユニポーラースイッチング方式(モノポーラ動作)」、逆極性のパルスを印可する方式を「バイポーラースイッチング方式(バイポーラ動作)」と呼ぶ。

0100

図5(a)に、抵抗変化型可変抵抗素子1(PRAM)にパルス電圧(振幅値2.6V)を35nsec間隔で印加した回数(SETパルス回数)と、その時の抵抗変化型可変抵抗素子1に流れる電流との関係を示す。

0101

図5(a)に示すように、SETパルス回数に応じて抵抗変化型可変抵抗素子1に流れる電流が制御可能となっていることがわかる。

0102

すなわち、積和演算装置10は、第1入力信号及び第2入力信号は、それぞれ、単一電圧パルス及び電圧パルス列であり、単一電圧パルスの電圧パルス幅と、電圧パルス列のパルス周波数とにより、演算結果としてのSETパルス回数(出力値)を制御するように構成することができる。

0103

抵抗変化型可変抵抗素子1は、SETパルス回数に応じて素子に流れる電流を制御できる。よって、素子の端子Aに入力される被乗数に対応する単一電圧パルスの電圧パルス幅の大きさと、素子の端子Bに入力される乗数に対応する電圧パルス列のパルス周波数との積として得られる素子へのSETパルス回数に応じて素子に流れる電流値が決まる。すなわち、被乗数、乗数、及び積演算の結果と、単一電圧パルスの電圧パルス幅、電圧パルス列のパルス周波数、及び抵抗変化型可変抵抗素子へのSETパルス回数(電流値)との対応関係をあらかじめ決めておけば、積演算を実行することが可能である。

0104

次に、図5(b)に、抵抗変化型可変抵抗素子1(PRAM)へ印加したパルス電圧の電圧パルス幅(振幅値2.6Vのパルス電圧を印加した時間:単位はns)と、その時の抵抗変化型可変抵抗素子1に流れる電流との関係を示す。

0105

すなわち、第1入力信号及び第2入力信号は、それぞれ、単一パルスであり、第1入力信号の単一電圧パルスの電圧パルス幅と、第2入力信号の単一電圧パルスのパルス電圧値との積として得られる素子への、パルス電圧値及び電圧パルス幅を制御するように構成することもできる。

0106

抵抗変化型可変抵抗素子1は、電圧パルス幅及びパルス電圧値に応じて素子に流れる電流が制御できる。よって、端子Bに入力される被乗数に対応する電圧パルス幅の大きさ(電圧パルスの印加時間に対応)と、端子Aに入力される乗数に対応するパルス電圧値との積として得られる素子への電圧パルス幅及びパルス電圧値に応じて素子に流れる電流値が決まる。すなわち、被乗数、乗数、及び積演算の結果と、電圧パルス幅、パルス電圧、及び抵抗変化型可変抵抗素子1への電圧パルス幅及びパルス電圧値(電流値)との対応関係をあらかじめ決めておけば、積演算を実行することが可能である。

0107

さらに、図5(c)に、抵抗変化型可変抵抗素子1に所定のパルス電圧を印加した場合のパルス電圧値と、その時の抵抗変化型可変抵抗素子1に流れる電流との関係を示す。

0108

図5(c)に示すように、0.5V程度までは、変化が無いが、それ以上の電圧で、パルス電圧値に応じて抵抗変化型可変抵抗素子1に流れる電流が制御可能となっていることがわかる。

0109

次に、図1図3(b)に基づき、単体の抵抗変化型可変抵抗素子1にて積和演算装置10を構成した場合の動作について説明する。

0110

図1には、積和演算装置10の書き込み動作を示しているが、書き込み時は、抵抗変化型可変抵抗素子1と演算結果を蓄積するコンデンサ5の間は、導通されていない状態になっている。

0111

このような状態において、まず、抵抗変化型可変抵抗素子1に接続されたビット線3とデータ線2に電圧パルスを印加する。

0112

図2(a)は、抵抗変化型可変抵抗素子1の端子A(ビット線)に入力される電圧パルス(パルス幅Ti)の様子を示す波形図であり、図2(b)は、端子B(データ線)に入力される電圧パルス(パルス周波数Fi)の様子を示す波形図であり、図2(c)は、端子A・B間の電位差と閾値電位Vthとの関係を示す波形図である。

0113

この時、ビット線3には、図2(a)に示すパルス幅=Tiで定義される単一電圧パルスを印加する。一方、データ線2には、図2(b)に示すパルス周波数=Fiで定義される電圧パルス列を印可する。

0114

図1には、可変抵抗素子間に印加される単一電圧パルス及び電圧パルス列が記載されているが、図2(c)に示すように、閾値電位Vthで表される閾値以上の電圧値が加わった場合に、抵抗変化型可変抵抗素子1には、コンダクタンスσii∝Fi・Tiで示される情報が書き込まれることになる(コンダクタンスσiiは抵抗変化型可変抵抗素子1の抵抗値Riiの逆数である。)。なお、抵抗変化型可変抵抗素子1には、電源を切っても、書き込まれた情報としてのコンダクタンスσiiを保持(被乗数と乗数との積演算の結果を保持)する機能があるため、書き込まれた情報が消失することは無い。

0115

すなわち、抵抗変化型可変抵抗素子1は、単一電圧パルス及び電圧パルス列の入力による積演算の結果を、抵抗変化型可変抵抗素子1の電気抵抗(コンダクタンスσiiに対応)の変化によって記憶するものである。

0116

ここで、特許文献1及び2に記載された従来技術の上述した問題点とは、別の問題点について説明する。従来技術では、スイッチト電流源(SCS)のそれぞれが、情報を記録したり消去したりする機能がないため、個々のスイッチト電流源(SCS)の出力値(積演算の結果)のそれぞれを再利用等することができないといった問題点がある。

0117

しかしながら、上述したように、抵抗変化型可変抵抗素子1は、電圧パルスの印加回数(SETパルス回数)に応じて素子に流れる電流を制御でき、また、電圧パルス幅及びパルス電圧値に応じて素子に流れる電流が制御できる。

0118

言い換えれば、抵抗変化型可変抵抗素子1は、電圧パルスの印加回数に応じて、或いは、電圧パルス幅及びパルス電圧値に応じて素子の電気抵抗が変化する。

0119

すなわち、抵抗変化型可変抵抗素子1は、単一電圧パルス及び電圧パルス列(又は、パルス電圧)の入力による積演算の結果を、抵抗変化型可変抵抗素子1の電気抵抗の変化によって記憶する。これにより、抵抗変化型可変抵抗素子1自体による積演算の結果の記憶が可能となる。

0120

次に、図3(a)及び図3(b)に示すように、積和演算装置10の読み出し動作について説明する。読み出し時は、抵抗変化型可変抵抗素子1と積演算の結果を電荷量として蓄積するコンデンサ5の間は、導通された状態になっている。

0121

図3(a)は、抵抗変化型可変抵抗素子1をユニットセルとする単一セルにより構成された積和演算装置10の読み出しの際の構成を示す回路図であり、図3(b)は、積和演算装置10の動作を示すシーケンス図である。

0122

データ線2を0Vに固定し、ビット線3にパルス電圧値=Vo,電圧パルス幅=Toで定義される電圧パルスを印加する事により、抵抗変化型可変抵抗素子1には、σii・Vo∝Fi・Ti・Voで示される電流が流れ、コンデンサ5には、電荷量Q=σii・Vo・To∝Fi・Ti・Vo・Toで定義される電荷量が蓄積されることになる。

0123

以上で説明した書き込みと読み出しを交互に繰り返す事により、電荷量Q=(Σσii)・Vo・To∝(ΣFi・Ti)・Vo・Toで定義される積和演算結果がキャパシタ内に蓄積されたことになる。

0124

0125

また、図3(a)及び図3(b)に示すように、(書き込み→読み出し)処理後には、リセット動作を行い、初期化する必要がある。

0126

すなわち、積和演算装置10は、電気抵抗の変化によって記憶された積演算の結果は、抵抗変化型可変抵抗素子1に所定の電圧パルスを印加することにより、消去可能となっている。

0127

例えば、抵抗変化型可変抵抗素子1をバイポーラー動作させた場合は、書き込み時の電圧パルスと時間(パルス幅)・電圧(パルス電圧値)が同じで、極性の異なる電圧パルスを再度印加することにより、電気抵抗の変化によって記憶された積演算の結果を消去することができる。また、抵抗変化型可変抵抗素子1をモノポーラ動作させた場合は、極性が同じで時間(パルス幅)が長い電圧パルスを再度印加することにより、電気抵抗の変化によって記憶された積演算の結果を消去することができる。

0128

本実施形態において、抵抗変化型可変抵抗素子1のサイズは、4F2(F:デザインルール)で示されるサイズである。例えば、デザインルールを0.1μmとした場合、積和演算装置10の基本素子サイズは、0.04μm2となり、図14(a)で示した従来技術に比べ、2桁〜3桁程度、素子面積が縮小できる。なお、従来技術においてはスイッチト電流源が複数個あり、それにより積和演算装置を形成したが、本実施形態においては、単体の抵抗変化型可変抵抗素子1で素子構成が可能になり、更に素子サイズを縮小することができる。

0129

以上、説明したように、抵抗変化型可変抵抗素子1を備えた積和演算装置10によれば、抵抗変化型可変抵抗素子1の端子Aに被乗数に対応する第1入力信号(ここでは、パルス幅Tiの単一電圧パルス信号)を入力し、端子Bに前記被乗数に乗算される乗数に対応する第2入力信号(ここでは、パルス周波数Fiの電圧パルス列)を入力することにより、前記被乗数と前記乗数との積演算の結果に対応する出力値が出力されるようになっている。

0130

以上の構成における大きなポイントは、抵抗変化型可変抵抗素子1における、電圧パルスを印加することによって可逆的に電気抵抗(又はコンダクタンスσii)が変化するという物理的特性を利用する点にある。

0131

すなわち、被乗数、乗数、及び積演算の結果と、電圧パルス幅、パルス周波数、及び抵抗変化型可変抵抗素子1の出力値(電流値など)との対応関係をあらかじめ決めておけば、積演算を実行することが可能である。

0132

これにより、一方の端子から被乗数に対応する信号を入力し、他方の端子から前記被乗数に乗算される乗数に対応する信号を入力することによって、被乗数と乗数との積演算の結果に対応する出力値を出力する積演算装置を、前記従来技術のように、定電流源とスイッチ回路とを有するスイッチト電流源(SCS)で構成する必要がない。

0133

ここで、抵抗変化型可変抵抗素子1は、電圧パルスを印可することによって可逆的に電気抵抗が変化する素子のことである。なお、抵抗変化型可変抵抗素子1は、近年、フラッシュメモリに代わる高速動作可能な次世代不揮発性ランダムアクセスメモリ(NVRAM:Nonvolatile Random Access Memory)として応用が期待されているものである。また、抵抗変化型可変抵抗素子1としては、例えば、非特許文献1に記載されている様なRRAM(Resistance RAM)やPCRAM(Phase Change RAM)などが挙げられる。

0134

また、第1信号の例としては、PWM(Pulse Width Modulation)信号があり、第2信号の例としては、所定の周期を持つパルス列や、電圧パルスが考えられる。

0135

以上より、積和演算装置10における構成を簡素化し、これらの装置を含む回路全体の面積に対する積和演算装置10の占有面積を小さくすることが可能な積和演算装置10を提供することができる。

0136

〔実施の形態2〕
本発明の他の実施の形態について図6(a)及び図6(b)に基づいて説明すれば、以下の通りである。なお、本実施の形態において説明すること以外の構成は、前記実施の形態1と同じである。また、説明の便宜上、前記の実施の形態1の図面に示した部材と同一の機能を有する部材については、同一の符号を付し、その説明を省略する。

0137

図6(a)は、単一セルにより構成された積和演算装置10の構成と書き込み動作とを示す回路図であり、(b)は、読み出し動作を示す回路図である。なお、本実施の形態2では、積和演算装置の構成は、実施の形態1と構成は共通しているが、図1図2(a)〜図2(c)及び図3(a)・図3(b)とは、別の動作方法である。

0138

すなわち、本実施形態では、積和演算装置10を少なくとも1つ備えており、複数セットの単一電圧パルス及び電圧パルス列の入力により、積和演算装置10から出力される前記セット毎の前記出力値の累積値に対応する出力値(第2出力値)が出力されるように構成されていても良い。

0139

ここで、従来の積和演算装置では、処理速度の短縮を考慮しなければ、単一のスイッチト電流源に複数セットの入力を与えて、キャパシタに順次蓄えるという構成を採用する例もある。

0140

しかしながら、スイッチト電流源は、スイッチ回路と定電流源とを備えるものであり、本実施形態の単体の抵抗変化型可変抵抗素子1で構成された積演算装置に比べて、素子サイズはかなり大きい。

0141

したがって、抵抗変化型可変抵抗素子1の単一セルで構成された積和演算装置10に複数セットの入力を与えて、コンデンサ5に順次蓄える構成とした場合でも、従来の単一のスイッチト電流源を用いる積和演算装置に比べて、これらの装置を含む回路全体の面積に対する積演算装置の占有面積を小さくすることができる。

0142

本実施形態では、結局構成自体は、実施の形態1と同一の構成を考慮すれば良いので、以下では、実施の形態2における積和演算装置10の動作について説明する。

0143

ここでは、実施の形態1の動作シーケンスを変更し、更に処理ステップを削減した場合について説明する。

0144

図6(a)に示す書き込み動作であるが、まず、ビット線3にパルス幅T1で定義される単一電圧パルスを印加し、データ線2には、パルス周波数=F1で定義される電圧パルス列を印加する。

0145

この場合、コンダクタンスσ11∝F1・T1で示される情報が抵抗変化型可変抵抗素子1に書き込まれたことになる。

0146

次に、ビット線3にパルス幅T2で定義される単一電圧パルスを印加し、データ線2には、パルス周波数=F2で定義される電圧パルス列を印加する。

0147

この場合、コンダクタンス(σ11+σ22)∝(F1・T1+F2・T2)で示される情報が抵抗変化型可変抵抗素子1に書き込まれたことになる。

0148

同様な書き込み処理を繰り返す事により、最終的に抵抗変化型可変抵抗素子1には、Σσii=Σ(Fi・Ti)で示される情報が書き込まれたことになる。

0149

すなわち、本実施形態の積和演算装置10は、抵抗変化型可変抵抗素子1は、複数セットの単一電圧パルス及び電圧パルス列の入力による前記セット毎の積演算の累積結果を、抵抗変化型可変抵抗素子1の電気抵抗の変化によって記憶するものである。

0150

上述したように、抵抗変化型可変抵抗素子1は、電圧パルスの印加回数に応じて素子に流れる電流を制御でき、また、電圧パルス幅及びパルス電圧値に応じて素子に流れる電流を制御できる。

0151

言い換えれば、抵抗変化型可変抵抗素子1は、電圧パルスの印加回数に応じて、或いは、電圧パルス幅及びパルス電圧値に応じて素子の電気抵抗が変化する。

0152

すなわち、抵抗変化型可変抵抗素子1は、複数セットの単一電圧パルス及び電圧パルス列の入力による前記セット毎の積演算の累積結果を、抵抗変化型可変抵抗素子1の電気抵抗の変化によって記憶する。これにより、本実施形態の積和演算装置10(抵抗変化型可変抵抗素子1)自体による前記積演算の累積結果の記憶が可能となる。

0153

次に、読み出し動作であるが、図6(b)に示すように、データ線2を0Vに固定し、ビット線3にパルス電圧値=Vo、電圧パルス幅=Toで定義される電圧パルスを印加する。この場合、抵抗変化型可変抵抗素子1には、(Σσii)・Vo=Σ(Fi・Ti)・Voで示される電流が流れ、コンデンサ5には、電荷量Q=Σσii・Vo・To∝ΣFi・Ti・Vo・Toで定義される積和演算の結果(積演算の累積結果)が蓄積されたことになる。

0154

なお、新たに積和演算処理を行うには、データ読みだし後に一旦リセット処理を行い、初期化する必要がある。

0155

すなわち、本実施形態の積和演算装置10は、前記電気抵抗の変化によって記憶された前記積演算の累積結果は、抵抗変化型可変抵抗素子1に所定の電圧パルスを印加することにより、消去可能となっている。

0156

例えば、抵抗変化型可変抵抗素子1をバイポーラ動作させた場合は、書き込み時のパルスと時間・電圧が同じで、極性の異なる電圧パルスを再度印加することにより、前記電気抵抗の変化によって記憶された前記積演算の結果を消去することができる。また、抵抗変化型可変抵抗素子1をモノポーラ動作させた場合は、極性が同じで時間が長いパルスを再度印加することにより、前記電気抵抗の変化によって記憶された前記積演算の結果を消去することができる。

0157

〔実施の形態3〕
本発明のさらに他の実施の形態について図7(a)〜図8に基づいて説明すれば、以下の通りである。なお、本実施の形態において説明すること以外の構成は、前記実施の形態1及び2と同じである。また、説明の便宜上、前記の実施の形態1及び2の図面に示した部材と同一の機能を有する部材については、同一の符号を付し、その説明を省略する。なお、以下の〔実施の形態4〕以降は、同様の説明は省略する。

0158

本実施形態では、実施の形態1及び2で説明した抵抗変化型可変抵抗素子1をユニットセルとして、複数のビット線とデータ線の交点にユニットセルを配置したアレイ構成マトリクス状配置)の場合の積和演算装置100について説明する。

0159

図7(a)は、抵抗変化型可変抵抗素子1をユニットセルする複数個のセル(抵抗変化型可変抵抗素子(積演算装置)111,抵抗変化型可変抵抗素子(積演算装置)121,抵抗変化型可変抵抗素子(積演算装置)211,抵抗変化型可変抵抗素子(積演算装置)221・・・)により構成された積和演算装置100の書き込みの際の構成を示す回路図であり、図7(b)は、抵抗変化型可変抵抗素子1(抵抗変化型可変抵抗素子111)の端子A(ビット線)に入力される電圧パルス(パルス幅Tj:jは、自然数)の様子を示す波形図であり、(c)は、端子B(データ線)に入力される電圧パルス(パルス周波数Fi)の様子を示す波形図であり、(d)は、端子A・B間の電位差と閾値電位Vthとの関係を示す波形図である。

0160

図8は、抵抗変化型可変抵抗素子1をユニットセルとする複数個のセル(抵抗変化型可変抵抗素子111,抵抗変化型可変抵抗素子121,抵抗変化型可変抵抗素子211,抵抗変化型可変抵抗素子221・・・)により構成された積和演算装置の読み出しの際の構成を示す回路図である。

0161

図7(a)〜図8に示すように、本実施形態の積和演算装置100は、抵抗変化型可変抵抗素子1を複数(抵抗変化型可変抵抗素子111,抵抗変化型可変抵抗素子121,抵抗変化型可変抵抗素子211,抵抗変化型可変抵抗素子221・・・)備えており、該複数の抵抗変化型可変抵抗素子1のそれぞれから出力される出力値の累積値に対応する出力値(第2出力値)が出力されるように構成されていても良い。

0162

以上によれば、複数の抵抗変化型可変抵抗素子への書き込み、読み出しが同時に処理できるため、単体の抵抗変化型可変抵抗素子で積和演算装置を構成した場合に比較して、前記積演算の累積結果の書き込み読み出しの処理速度が速くなる。

0163

図7(a)及び図8に示すように、本実施形態の積和演算装置100は、データ線1i2(データ線112,122・・・:iは自然数)、ビット線1j3(ビット線113,123・・・:jは自然数)、抵抗変化型可変抵抗素子(積演算装置)ij1(抵抗変化型可変抵抗素子111,121,211,221・・・:i,jは、自然数)、スイッチングトランジスタ1i4(スイッチングトランジスタ114,124・・・:iは自然数)、コンデンサ1i5(コンデンサ115,コンデンサ125・・・:iは、自然数)、オペアンプ1i6(オペアンプ116,126・・・:iは自然数)、スイッチングトランジスタ1j7(スイッチングトランジスタ117,127・・・:iは自然数)からなる構成である。

0164

図7(a)に示すように、積和演算装置100では、データ線1i2(データ線112,122・・・:iは、自然数)には、読み出し回路が接続されている。なお、図7(a)では、書き込み動作を示しているが、書き込み時は、抵抗変化型可変抵抗素子と演算結果を蓄積するキャパシタの間は、導通されていない状態になっている。

0165

この時、ビット線1j3(ビット線113、ビット線123・・・:jは、自然数)には、パルス幅=Tjで定義される単一電圧パルスを印加する。

0166

なお、ビット線1j3に接続されているトランジスタは導通状態になっている。データ線1i2には、パルス周波数=Fiで定義される複数パルス電圧を印可する。

0167

図7(a)には、各抵抗変化型可変抵抗素子間に印加される電圧が記述されているが、閾値電位Vthで表される閾値以上の電圧値が加わった場合に、ビット線1j3及びデータ線1i2で選択された抵抗変化型可変抵抗素子(積演算装置)ij1(抵抗変化型可変抵抗素子111,抵抗変化型可変抵抗素子121,抵抗変化型可変抵抗素子211,抵抗変化型可変抵抗素子221・・・:i,jは、自然数)には、コンダクタンスσij∝Fi・Tjで示される情報が書き込まれることになる。(コンダクタンスσijは素子抵抗値Rijの逆数。)
なお、抵抗変化型可変抵抗素子ij1には、データを保持する機能があるため、電源を切っても、書き込まれた情報が消失することは無い。

0168

すなわち、抵抗変化型可変抵抗素子ij1は、単一電圧パルス及び電圧パルス列の入力による積演算の結果を、抵抗変化型可変抵抗素子ij1の電気抵抗(コンダクタンスσijに対応)の変化によって記憶するものである。

0169

ここで、特許文献1及び2に記載された従来技術の上述した問題点とは、別の問題点について説明する。従来技術では、スイッチト電流源(SCS)のそれぞれが、情報を記録したり消去したりする機能がないため、個々のスイッチト電流源(SCS)の出力値(積演算の結果)のそれぞれを再利用等することができないといった問題点がある。

0170

しかしながら、上述したように、抵抗変化型可変抵抗素子ij1は、電圧パルスの印加回数(SETパルス回数)に応じて素子に流れる電流を制御でき、また、電圧パルス幅及びパルス電圧値に応じて素子に流れる電流が制御できる。

0171

言い換えれば、抵抗変化型可変抵抗素子ij1は、電圧パルスの印加回数に応じて、或いは、電圧パルス幅及びパルス電圧値に応じて素子の電気抵抗が変化する。

0172

すなわち、抵抗変化型可変抵抗素子ij1は、単一電圧パルス及び電圧パルス列(又は、パルス電圧)の入力による積演算の結果を、抵抗変化型可変抵抗素子ij1の電気抵抗の変化によって記憶する。これにより、抵抗変化型可変抵抗素子ij1自体による積演算の結果の記憶が可能となる。

0173

次に、図8に基づき、積和演算装置100の読み出し動作について説明する。

0174

読み出し時は、抵抗変化型可変抵抗素子ij1と電荷量として演算結果を蓄積するコンデンサ1i5(コンデンサ115,コンデンサ125・・・:iは、自然数)との間は、導通された状態になっている。

0175

データ線1i2を0Vに固定し、ビット線1j3にパルス電圧値=Vo、電圧パルス幅=Toで定義される電圧パルスを印加する事により、データ線1i2上に接続された抵抗変化型可変抵抗素子ij1には、(Σσij)・Vo∝(ΣFi・Tj)・Voで示される電流が流れ、コンデンサ1i5には、電荷量Q=(Σσij)・Vo・To∝(ΣFi・Tj)・Vo・Toで定義される電荷量が蓄積されることになる。

0176

また、データを加算するのに、電流を検出する方法も可能である。例えば、本実施形態では、複数個の抵抗変化型可変抵抗素子ij1の積演算の結果を総和するだけであるから、電流を検出する方法では、単に線を繋いで抵抗器で電流を見れば良いことになる。なお、直接抵抗器を繋ぐ共通線の電位が変化するので、コンデンサ1i5に蓄積される電荷量Qによる方法の時と同様に、オペアンプを使った加算回路を用いれば良い。

0177

なお、読み出し完了後、新しい積和演算処理を行うには、リセット動作を行い、初期化するする必要がある。

0178

例えば、抵抗変化型可変抵抗素子ij1をバイポーラー動作させた場合は、書き込み時の電圧パルスと時間(パルス幅)・電圧(パルス電圧値)が同じで、極性の異なる電圧パルスを再度印加することにより、電気抵抗の変化によって記憶された積演算の結果を消去することができる。また、抵抗変化型可変抵抗素子ij1をモノポーラ動作させた場合は、極性が同じで時間(パルス幅)が長い電圧パルスを再度印加することにより、電気抵抗の変化によって記憶された積演算の結果を消去することができる。

0179

本実施形態においては、複数のセルへの書き込み、読み出しが同時に処理できるため、実施の形態1及び実施の形態2の積和演算装置10に比べ、データの処理速度が速い。また抵抗変化型可変抵抗素子ij1内に書き込まれた情報を読み出ししたくない場合は、そのセルにつながったビット線1j3のスイッチングトランジスタ1j7(スイッチングトランジスタ117,スイッチングトランジスタ127・・・:jは、自然数)をOFFにすることにより読み出しができなくなり、結果として部分的な積和演算が可能となる。

0180

また、素子面積に関しては、実施の形態1及び実施の形態2の積和演算装置10のように、ユニットセルの大きさは4F2(F:デザインルール)で表される。ただし、複数個のセルで構成されているため、積和演算装置100全体としての面積は、実施の形態1及び実施の形態2の積和演算装置10に較べて大きい。

0181

以上のように、本実施形態の積和演算装置100は、複数の抵抗変化型可変抵抗素子ij1のうち、所定数の抵抗変化型可変抵抗素子ij1のそれぞれから出力される出力値の累積値に対応する出力値(第3出力値)が出力されるように構成されていても良い。

0182

前記構成によれば、所定数の抵抗変化型可変抵抗素子ij1のそれぞれから出力される出力値の累積値に対応する第3出力値(部分和)が出力される、すなわち、部分的な積和演算(部分和の算出)が可能となる。

0183

また、本発明の積和演算装置は、前記構成に加えて、前記複数の抵抗変化型可変抵抗素子ij1のうち、所定数の抵抗変化型可変抵抗素子ij1のそれぞれから出力される出力値の累積値を記憶するコンデンサ1i5(記憶部)を備えていることが好ましい。

0184

以上によれば、適宜コンデンサ1i5などを設けることにより、複数の抵抗変化型可変抵抗素子ij1を、複数のブロック部分に分割して、当該ブロック部分毎に、前記複数の抵抗変化型可変抵抗素子ij1のうち、所定数の抵抗変化型可変抵抗素子ij1のそれぞれから出力される出力値の累積値を記憶させることができる。また、コンデンサ1i5に記録されていれば、積演算の累積結果を直ぐに引き出すことができるので、当該ブロック部分毎にコンデンサ1i5に記憶されている部分和の算出処理が速くなる。

0185

〔実施の形態4〕
本発明のさらに他の実施の形態である積和演算装置20について図9(a)〜図10(b)に基づいて説明すれば、以下の通りである。

0186

図9(a)は、抵抗変化型可変抵抗素子21をユニットセルにし、単一セルにより構成された積和演算装置20の構成を示す回路図であり、図9(b)は、抵抗変化型可変抵抗素子21の端子A(ビット線)に入力される電圧パルス(パルス幅Ti)の様子を示す波形図であり、図9(c)は、端子A・B間の電位差と閾値電位Vthとの関係を示す波形図である。

0187

図10(a)は、積和演算装置20の構成と、電圧パルス時間(電圧パルス幅に相当)及び電圧パルス振幅(パルス電圧)を、それぞれ乗数、及び被乗数に用いた読み出し動作方法を示す回路図であり、図10(b)は、読み出し動作方法を示すシーケンス図である。

0188

本実施形態の積和演算装置20は、被乗数と乗数とを入力することにより、これらの積演算の結果を出力するものであり、図9(a)に示すように、抵抗変化型可変抵抗素子21,データ線22,ビット線23,スイッチングトランジスタ24,コンデンサ(記憶部)25,及びコンパレータ26,スイッチングトランジスタ27を備える構成である。

0189

積和演算装置10と違いは、コンデンサ25は、コンパレータ26の入出力端子間に接続されていない(フィードバック回路を構成していない)点と、データ線22上に、新たにスイッチングトランジスタ27が設けられている点である。

0190

本実施形態では、図9(a)に示すように、単体の抵抗変化型可変抵抗素子21をユニットセルとして単一セルにより積和演算装置20を構成し、電圧パルス振幅(Vi:パルス電圧値に相当)及び電圧パルス時間(Ti:電圧パルス幅に相当)を、それぞれ、乗数及び被乗数に用いた動作について説明する。

0191

図9(a)に示すように、書き込み時は、抵抗変化型可変抵抗素子21と演算結果を電荷量として蓄積するコンデンサ25の間は、導通されていない状態になっている。

0192

まず、抵抗変化型可変抵抗素子21に接続されたビット線23とデータ線22とに電圧パルスを印加する。この時、ビット線23には、電圧パルス振幅=Viで定義される単一電圧パルスを印加する。

0193

データ線22は、グランドに接続されているが、通常はデータ線23とセル間のスイッチングトランジスタ(選択トランジスタ)27がOFFになっている(ハイインピーダンス状態)。

0194

データの書き込みを行いたい時間(Ti:単一電圧パルスの電圧パルス幅に相当)のみスイッチングトランジスタ27をON状態にする。図16(a)には、抵抗変化型可変抵抗素子21の端子A・Bに印加される電圧が記載されているが、閾値電位Vthで表される閾値以上の電圧値が加わった場合に、抵抗変化型可変抵抗素子21には、コンダクタンスσii∝Ti・Viで示される情報が書き込まれることになる。(コンダクタンスσiiは素子抵抗値Riiの逆数である。)
なお、抵抗変化型可変抵抗素子21には、上述した抵抗変化型可変抵抗素子1などと同様にデータを保持する機能があるため、電源を切っても、書き込まれた情報が消失することは無い。

0195

次に、図17(a)に基づき、積和演算装置20の読み出し動作について説明する。読み出し時は、抵抗変化型可変抵抗素子21及び積演算の結果を電荷量として蓄積するコンデンサ25間は、導通された状態になっている。

0196

データ線22を0Vに固定し、ビット線23にパルス電圧値=Vo、電圧パルス幅=Toで定義されるパルス電圧を印加することにより、抵抗変化型可変抵抗素子21には、σii・Vo∝Ti・Vi・Voで示される電流が流れ、コンデンサ25には、電荷量Q=σii・Vo・To∝Ti・Vi・Vo・Toで定義される電荷量が蓄積されることになる。

0197

以上で説明した書き込みと読み出しを交互に繰り返す事により、電荷量Q=(Σσii)・Vo・To∝(ΣTi・Vi)・Vo・To、で定義される積演算の累積結果がコンデンサ25に蓄積されたことになる。

0198

なお、図17(b)に示しているが、書き込み読み出し処理後には、上述したように、リセット動作を行い、初期化する必要が有る。本実施形態の積和演算装置20における抵抗変化型可変抵抗素子21の素子サイズは、4F2(F:デザインルール)で示される。

0199

例えば、デザインルールを0.1μmとした場合、積和演算装置20の基本素子サイズは、0.04μm2となり、図14(a)〜図15で示した従来技術に比べ、2桁〜3桁程度、素子面積が縮小できる。

0200

また、電圧パルス振幅、電圧パルス時間を乗数、被乗数に用いた動作手法において本実施形態に示した他、実施の形態2に示した処理シーケンスの変更、実施の形態3で示した複数のセル構成についても、上記と同様に構成することが可能である。

0201

〔実施の形態5〕
本発明のさらに他の実施の形態である積和演算回路(積演算装置,積和演算装置)30について図11に基づいて説明すれば、以下の通りである。

0202

積和演算回路30は、積和演算における被演算値の演算順序演算範囲を制御することで、低消費電力かつ高速な積和演算回路を提供するものである。すなわち、被演算値を降順または昇順に出力するソーティングにより、無駄な電位変化を抑え、低消費電力化と高速化を実現する。

0203

図11は、本発明の一実施形態である積和演算回路30の各処理ブロックの構成を示すブロック図である。本実施形態においては、実施の形態3における積和演算装置100を用いた場合の具体例について説明する。

0204

図11に示すように、積和演算回路30は、入力値保持ブロック(演算値保持ブロック)31,ソーティングブロック32,スイッチングブロック(1)33,荷重値保持ブロック(被演算値保持ブロック)34,スイッチングブロック(2)35,及び演算処理ブロック36を備える構成である。

0205

図11に示すように、積和演算回路30は、演算処理ブロック36を、単一の積和演算装置100で構成することができる点が、図15に示す従来の積和演算回路3000と異なっている。

0206

すなわち、従来技術においては、複数個(n個:nは、自然数)の積和演算処理を行うには、複数個(n個)の演算ブロックを必要とした。積和演算回路30においては、ビット線とデータ線で交差された位置の所定領域のそれぞれに抵抗変化型可変抵抗素子1を配置したアレイ構造を適用しているため、一つの演算処理ブロック36にて複数の積和演算処理が可能になる。また、演算処理ブロック36のユニットセル部が小さくなるため、従来技術に較べて、2桁〜3桁程度、演算処理ブロック36が縮小できる。

0207

入力値保持ブロック(演算値保持ブロック)31は、演算値(乗数)Xiを保持するものである。

0208

ソーティングブロック32は、演算値Xiを値の大きい順若しくは小さい順に出力するものである。

0209

スイッチングブロック(1)33は、演算処理ブロック36の演算値Xiのラベルiに対応する端子へ演算値Xiを入力するものである。

0210

荷重値保持ブロック(被演算値保持ブロック)34は、被演算値(被乗数)Wiを保持するものである。

0211

スイッチングブロック(2)35は、演算処理ブロック36の被演算値Wiのラベルiに対応する端子へ被演算値Wiを入力するものである。

0212

なお、演算値Xiと被演算値Wiのiは、それぞれ異なるXとWを表す添え字であり、1,2,3・・・の自然数をとる(以下同様)。

0213

次ぎに、本実施形態における積和演算回路30による演算処理工程を説明する。

0214

まず、図11に示すように、複数の演算値Xiは入力値保持ブロック31に保持され、さらにソーティングブロック32により、値の大きいもの順若しくは小さい順にソートされ出力される。

0215

ここで本実施形態においては、値が等しい演算値Xiがある場合には、値が等しい演算値間での出力の順番は任意としているが、事前に適当な順番を設定しておいても良い。

0216

続いて、演算値Xiが有するラベルiが,ソーティングブロック32からスイッチングブロック(1)33に入力され、そのラベルiに応じて,スイッチングブロック(1)33がスイッチングを行い、ソーティングブロック32から出力された演算値Xiをそのラベルiに対応する端子に入力する。

0217

ここで、本実施形態においては、以上の入力値保持ブロック31とソーティングブロック32で実行される処理は、連想メモリ回路(不図示)を用いて実現する。

0218

この連想メモリ回路には、演算値Xiの値と、それぞれの演算値Xiが有するラベルiと検出フラグとが保持されている。

0219

連想メモリ回路は、入力された検索値と、保持しているデータを比較し、両者の値が一致するものを出力する機能を有する。この連想メモリ回路の一般的な機能を利用し、検出フラグが立っていない演算値Xiの中から値の大きな順に、1つずつその値とラベルを読み出し、読み出した値に検出フラグを立てることにより、前記の入力値保持ブロック31とソーティングブロック32で実行される処理を実現することが可能となる。

0220

すなわち連想メモリ回路に対して、検索値として演算値Xiの最大値に相当する値から大きいもの順に一つずつ入力し、値が一致するデータを順に読み出すことにより、ソーティング機能を実現することが可能となる(逆に、演算値Xiの値の小さなもの順に読み出すことも可能である)。

0221

なお本実施形態では、前記の通り、入力値保持ブロック31とソーティングブロック32の機能を連想メモリ回路で実現したが、具体的な回路構成は本発明の主眼とするところではなく、同様の処理が可能なものであれば、その他の処理構成を用いても良い。

0222

一方、荷重値保持ブロック34から出力される複数の被演算値Wiは、それぞれ演算処理ブロック36の所定の端子に入力される。ここで本実施形態においては、被演算値Wiについても、演算値Xiと同様に、演算値Xiが有するラベルiに応じてスイッチングブロック(2)35においてスイッチングが行なわれ、ラベルiによって決定される所定の端子に入力される。

0223

なお、本実施形態とは異なり、被演算値Wiが入力される演算ブロックが、演算値Xiのラベルiにはよらずに、事前に設定されている手法を用いることも可能である。また、各端子に入力される被演算値Wiの値は、演算毎に同一の場合も異なる場合もある。

0224

本実施形態においては、荷重値保持ブロック34は一般的なSRAM(static random access memory)回路によって構成しても良いが、同様の処理が可能なものであれば、その他の処理構成を用いても良い。以上の処理を実行することにより、所定の演算ブロックに演算値Xiと被演算値Wiが入力される。

0225

これ以降の処理は、実施の形態3と同様であるので、説明は省略する。

0226

〔実施の形態6〕
本発明のさらに他の実施の形態であるニューラルネットワーク40について図12図13に基づいて説明すれば、以下の通りである。なお、本実施の形態において説明すること以外の構成は、前記実施の形態5と同じである。また、説明の便宜上、前記の実施の形態5の図面に示した部材と同一の機能を有する部材については、同一の符号を付し、その説明を省略する。

0227

図12は、本発明の一実施形態であるニューラルネットワーク40に対して積和演算方法を適用する際の演算処理ブロックの構成図である。

0228

図13は、ニューラルネットワーク40に対して積和演算方法を適用する際の演算処理における各ステップのフローチャートである。

0229

図12に示すように、ニューラルネットワーク40は、積和演算回路30A,積和演算回路30B,関数処理ブロック41A,及び関数処理ブロック41Bを備えるものである。

0230

積和演算回路30A及び積和演算回路30Bは、実施の形態5で説明した積和演算回路30と同様の構成である。

0231

よって、本実施形態では、積和演算回路30A,積和演算回路30Bなどが、関数処理ブロック41A,及び関数処理ブロック41Bなどを介して接続されてニューラルネットワークを構成している点が実施の形態5と異なっている。

0232

すなわち、図11で説明した演算値Xiが前段ニューロ素子の出力値に相当し、また被演算値Wiがシナプス荷重値に相当し、ニューロン素子の内部状態値を決定する。

0233

次ぎに、図13のフローチャートに基づき、ニューラルネットワーク40の動作について説明する。

0234

ステップS1(以下、「ステップ」は省略する)では、ニューラルネットワーク40の前段のニューロン素子のそれぞれの出力値が演算値Xiとして、1意対応で、次段の1つのニューロン素子内の積和演算回路30Aの入力値保持ブロック31Aに入力され、S2に進む。

0235

なお、「一意対応」とは、「1対1対応」及び「他対1対応」を含む概念である。

0236

より具体的には、「1対1対応」とは、前段における1つのニューロン素子の出力値に対してシナプス荷重値で重み付けした値を、次段の1つのニューロン素子に入力する場合の対応関係のことである。

0237

また、「他対1対応」とは、前段における複数のニューロン素子のそれぞれの出力値に対してシナプス荷重値で重み付けした値の総和を、次段の1つのニューロン素子に入力する場合の対応関係のことである。

0238

S2では、入力値保持ブロック31Aが、入力された演算値Xiをラベルiに応じて、ソーティングブロック32Aに渡してS3に進む。

0239

なお、「ラベルi」は、前記出力先のニューロン素子を識別する情報である。

0240

S3では、ソーティングブロック32Aが、演算値Xiを値が大きいもの順又は小さいもの順に並べて、S4に進む。

0241

S4では、ソーティングブロック32Aが、S3で大きいもの順又は小さいもの順に並べられた演算値Xiが記憶されるメモリ(不図示)内の所定の記憶領域を指定するためのフラグを決定し、決定されたフラグとラベルi若しくは演算値Xiとをスイッチングブロック(1)33Aに送信してS5に進む。

0242

S5では、スイッチングブロック(1)33Aが、前記メモリに記憶された演算値Xiとラベルiとを読み出し、演算処理ブロック36Aの所定の端子に、入力する。

0243

なお、S1からS5までと並行して、S6からS9までが進行する。

0244

S6では、演算値Xiに対応する被演算値Wiを、シナプス荷重値として前記次段の1つのニューロン素子の荷重値保持ブロック34Aに入力し、S7に進む。なお、被演算値Wiは、ラベルiと対応づけられている。

0245

S7では、荷重値保持ブロック34Aが、被演算値Wiが記憶されるメモリ(不図示)内の所定の記憶領域を指定するためのフラグを決定し、S8に進む。

0246

S8では、荷重値保持ブロック34Aが、ソーティングブロック32Aから被演算値Wiに対応するラベルiを受け取り、決定したフラグに基づき、被演算値Wiとラベルiとをメモリ内の所定領域に記憶させ、S9に進む。

0247

S9では、スイッチングブロック(2)35Aが、S7で決定されたフラグに基づき、S8でメモリに保持した被演算値Wiとラベルiとを、演算処理ブロック36Aの所定の端子に入力して、S10に進む。

0248

S10では、演算処理ブロック36Aで演算値Xiと被演算値Wiとの積演算の結果のi=1から前記前段のニューロン素子の所定数までの、累積値が算出され関数処理ブロック41Aに入力されてS11に進む。

0249

S11では、前記累積値が、関数処理ブロック41Aによって関数処理しS12に進む。

0250

S12では、関数処理ブロック41Aが、関数処理後の出力値を後段(次段)の積和演算回路30Bに入力する。

0251

本実施形態のニューラルネットワーク40では、S1〜S12までの各処理が繰り返される。

0252

以上のように、ニューラルネットワーク40は、複数段のニューロン素子を有しており、特定段における所定数のニューロン素子の出力値に対してシナプス荷重値で重み付けした値のそれぞれを、一意対応で、該特定段に隣接する次段のニューロン素子に入力することにより、該ニューロン素子の内部状態を示す内部状態値が決定されるニューラルネットワークであって、前記各ニューロン素子は、前記積和演算装置を備えており、前記特定段におけるニューロン素子の出力値は、前記被乗数として前記次段のニューロン素子に備えられた積和演算装置へ入力されると共に、前記シナプス荷重値は、前記乗数として前記次段のニューロン素子に備えられた積和演算装置に入力され、前記次段のニューロン素子の内部状態を示す内部状態値は、前記積演算の累積結果に対応する出力値として前記次段のニューロン素子に備えられた積和演算装置から出力されるように構成されている。

0253

前記構成によれば、前記各ニューロン素子は、前記積和演算装置を備えており、これらのニューロン素子の出力値、シナプス荷重値及び内部状態値のそれぞれを、前記積和演算装置に入・出力される、被乗数、乗数、及び被乗数及び乗数の積演算の累積結果で、ニューラルネットワークが構成されるため、従来のニューラルネットワークにおいて各ニューロン素子毎の内部状態値を算出する演算処理ブロックのそれぞれの縮小が可能になる。

0254

以上説明した様に、本発明によれば、回路が簡素化された素子サイズの小さい積演算装置及び積和演算装置が実現できる。また、抵抗変化型可変抵抗素子に書き込んだ入力信号の積又は積和演算の結果を記憶することができ、必要に応じて、全体和又は部分和を出力することが可能になる。

0255

よって、積演算装置及び積和演算装置における構成を簡素化し、これらの装置を含む回路全体の面積に対する積演算装置及び積和演算装置の占有面積を小さくすることが可能な積演算装置、及び積和演算装置、これらの装置を各ニューロン素子に備えるニューラルネットワーク、並びに積演算方法などを提供することができる。

0256

なお、本発明は、上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。

0257

なお、本発明の積和演算装置は、抵抗変化型可変抵抗素子の一方の端子に被乗数、他方の端子に乗数を入力し、入力信号の積を出力値として利用しても良い。

0258

本発明の大きなポイントは、積和演算装置に抵抗変化型可変抵抗素子を用いる事にある。抵抗変化型可変抵抗素子とは、電圧パルスを印可する事によって可逆的に電気抵抗が変化する素子であり、近年、フラッシュメモリに代わる高速動作可能な次世代不揮発性ランダムアクセスメモリ(NVRAM:Nonvolatile Random Access Memory)として応用が期待されている。尚、抵抗変化型可変抵抗素子としては、非特許文献1に記載されている様なRRAM(Resistance RAM)やPCRAM(Phase Change RAM)が挙げられる。

0259

即ち、本発明の積和演算装置においては、抵抗変化型可変抵抗素子の一方の端子に被乗数、他方の端子に乗数を入力し、入力信号の積を出力値として利用するようになっている。

0260

また、本発明の積和演算装置は、前記積和演算装置の入力値において、乗数である電圧パルス幅及び被乗数であるパルス周波数により出力値が制御できても良い。

0261

また、本発明の積和演算装置は、前記積和演算装置の入力値において、乗数である電圧パルス幅及び被乗数であるパルス電圧により出力値が制御できても良い。

0262

また、本発明の積和演算装置は、前記積和演算装置において、単体の抵抗変化型可変抵抗素子により素子を形成しても良い。

0263

また、本発明の積和演算装置は、前記積和演算装置において、行線と列線に接続された複数の抵抗変化型可変抵抗素子により素子を形成しても良い。

0264

また、本発明の積和演算装置は、前記積和演算装置において、抵抗変化型可変抵抗素子に書き込んだ積和演算結果を記憶できても良い。

0265

なお、抵抗変化型可変抵抗素子は、電源を切って素子に電圧がかからなくても、書き込みにより記憶した情報を保持することが可能である。

0266

また、本発明の積和演算装置は、前記積和演算装置において、各行線と列線により指定される抵抗変化型可変抵抗素子に書き込んだ入力信号の積を記憶できても良い。

0267

また、本発明の積和演算装置は、前記積和演算装置において、各行線と列線により指定される抵抗変化型可変抵抗素子に書き込んだ入力信号の積の部分和が出力できても良い。

0268

また、本発明のニューラルネットワークは、複数段のニューロン素子を有するニューラルネットワークであって、各ニューロン素子が前記積和演算回路を備え、当該積和演算回路が前段のニューロン素子の出力値を前段複数の被演算値として入力し、前記乗算手段により各被演算値としてシナプス荷重を乗じ、前記乗算和として内部状態を算出しても良い。

0269

本発明は、電気的ストレスの印加によって電気抵抗を変化させることで情報を記憶することが可能な抵抗変化型可変抵抗素子を備えた積演算装置、及び積和演算装置、これらの装置を各ニューロン素子に備えるニューラルネットワーク、並びに積演算方法などに適用することができる。なお、本発明は、積演算及び積和演算を行なう演算回路を必要とする電子機器、及び電気機器であれば、どのような機器であっても適用可能である。

図面の簡単な説明

0270

本発明の一実施形態である抵抗変化型可変抵抗素子をユニットセルとする単一セルにより構成された積和演算装置の書き込みの際の構成を示す回路図である。
(a)は、前記抵抗変化型可変抵抗素子の端子A(ビット線)に入力される電圧パルス(パルス幅Ti)の様子を示す波形図であり、(b)は、端子B(データ線)に入力される電圧パルス(パルス周波数Fi)の様子を示す波形図であり、(c)は、端子A・B間の電位差と閾値電位Vthとの関係を示す波形図である。
(a)は、前記抵抗変化型可変抵抗素子をユニットセルとする単一セルにより構成された積和演算装置の読み出しの際の構成を示す回路図であり、(b)は、前記積和演算装置の動作を示すシーケンス図である。
前記抵抗変化型可変抵抗素子の構造及び電気特性測定の際の等価回路を示す回路図である。
(a)は、前記抵抗変化型可変抵抗素子に流れる電流値のSETパルス回数依存性を示すグラフ図であり、(b)は、前記抵抗変化型可変抵抗素子に流れる電流値の所定パルス電圧の電圧パルス幅(所定パルス電圧の印加時間)依存性を示すグラフ図であり、(c)は、パルス電圧依存性を示すグラフ図である。
(a)は、単一セルにより構成された積和演算装置の構成と書き込み動作とを示す回路図であり、(b)は、読み出し動作を示す回路図である。(図1図2(a)〜図2(c)及び図3(a)・図3(b)とは、別の動作方法)
(a)は、前記抵抗変化型可変抵抗素子をユニットセルする複数個のセルにより構成された積和演算装置の書き込みの際の構成を示す回路図であり、(b)は、前記抵抗変化型可変抵抗素子の端子A(ビット線)に入力される電圧パルス(パルス幅Ti)の様子を示す波形図であり、(c)は、端子B(データ線)に入力される電圧パルス(パルス周波数Fi)の様子を示す波形図であり、(d)は、端子A・B間の電位差と閾値電位Vthとの関係を示す波形図である。
前記抵抗変化型可変抵抗素子をユニットセルとする複数個のセルにより構成された積和演算装置の読み出しの際の構成を示す回路図である。
(a)は、前記抵抗変化型可変抵抗素子をユニットセルにし、単一セルにより構成された積和演算装置の構成を示す回路図であり、(b)は、前記抵抗変化型可変抵抗素子の端子A(ビット線)に入力される電圧パルス(パルス幅Ti)の様子を示す波形図であり、(c)は、端子A・B間の電位差と閾値電位Vthとの関係を示す波形図である。
(a)は、前記抵抗変化型可変抵抗素子をユニットセルにし、単一セルにより構成された積和演算装置の構成と、電圧パルス幅及びパルス電圧を、それぞれ乗数、及び被乗数に用いた読み出し動作方法を示す回路図であり、(b)は、読み出し動作方法を示すシーケンス図である。
本発明の一実施形態である積和演算回路の各処理ブロックの構成を示すブロック図である。
本発明の一実施形態であるニューラルネットワークに対して積和演算方法を適用する際の演算処理ブロックの構成図である。
前記ニューラルネットワークに対して積和演算方法を適用する際の演算処理における各ステップのフローチャートである。
(a)は、従来のPWM(Pulse Width Modulation:パルス幅変調)信号を用いた積和演算装置の構成を示す回路図であり、(b)は、前記積和演算装置における端子電圧Vout及び参照ランプ電圧Vrefの線形関係を示すグラフ図である。
従来技術における積和演算回路の構成を示すブロック図である。
図15に示す各処理ブロックにおいて、1つの演算ブロックをアナログ回路で構成したアナログ演算回路を示す回路図である。
図15に示す各処理ブロックにおいて、入力値(演算値)保持ブロックをアナログ回路で構成した回路図である。
従来のニューラルネットワークモデルの構成を示す図である。
図18に示したニューラルネットワークに対して積和演算方法を適用する際の各演算処理ブロックの構成を示すブロック図である。
シグモイド変換を示すグラフ図である。
図14(a)の積和演算装置におけるスイッチト電流源のより詳細な構成を示す回路図である。

符号の説明

0271

1抵抗変化型可変抵抗素子(積演算装置)
2データ線
3ビット線
4スイッチングトランジスタ
5コンデンサ(記憶部)
6オペアンプ
10積和演算装置(積演算装置)
11A 上部電極(一方の端子,他方の端子)
11B 下部電極(一方の端子,他方の端子)
12抵抗体
20 積和演算装置(積演算装置)
21 抵抗変化型可変抵抗素子
22 データ線
23 ビット線
24,27 スイッチングトランジスタ
25 コンデンサ(記憶部)
26コンパレータ
100 積和演算装置(積演算装置)
ij1(111,121,211,221・・・:i,jは、自然数) 抵抗変化型可変抵抗素子
1i2(112,122・・・:iは、自然数) データ線
1j3(113,123・・・:jは、自然数) ビット線
1i4(114,124・・・:iは、自然数) スイッチングトランジスタ
1j7(117,127・・・:jは、自然数) スイッチングトランジスタ
1i5(115,125・・・:jは、自然数) コンデンサ(記憶部)
1i6(116,126・・・:jは、自然数) オペアンプ
30,30A,30B積和演算回路(積演算装置,積和演算装置)
31,31A,31B入力値保持ブロック(演算値保持ブロック)
32,32A,32Bソーティングブロック
33,33A,33Bスイッチングブロック(1)
34,34A,34B荷重値保持ブロック(被演算値保持ブロック)
35,35A,35B スイッチングブロック(2)
36,36A,36B演算処理ブロック
40ニューラルネットワーク
41A,41B関数処理ブロック
A 端子(一方の端子)
B 端子(他方の端子)
σiiコンダクタンス(iは、自然数)
Fiパルス周波数(電圧パルス周波数:iは、自然数)
Q電荷量(出力値の累積値)
Tiパルス幅(電圧パルス幅:iは、自然数)
Vref参照電圧
Vth閾値電位
Wi 被演算値(被乗数:iは、自然数)
Xi 演算値(乗数:iは、自然数)

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

関連する公募課題

ページトップへ

技術視点だけで見ていませんか?

この技術の活用可能性がある分野

分野別動向を把握したい方- 事業化視点で見る -

(分野番号表示ON)※整理標準化データをもとに当社作成

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

関連する挑戦したい社会課題一覧

この 技術と関連する公募課題

関連する公募課題一覧

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ