JP3182813B2 - 情報処理装置 - Google Patents

情報処理装置

Info

Publication number
JP3182813B2
JP3182813B2 JP28597491A JP28597491A JP3182813B2 JP 3182813 B2 JP3182813 B2 JP 3182813B2 JP 28597491 A JP28597491 A JP 28597491A JP 28597491 A JP28597491 A JP 28597491A JP 3182813 B2 JP3182813 B2 JP 3182813B2
Authority
JP
Japan
Prior art keywords
nodes
selector
memory cell
circuit
output
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.)
Expired - Fee Related
Application number
JP28597491A
Other languages
English (en)
Other versions
JPH0683622A (ja
Inventor
隆夫 渡部
勝高 木村
健 阪田
正和 青木
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP28597491A priority Critical patent/JP3182813B2/ja
Publication of JPH0683622A publication Critical patent/JPH0683622A/ja
Application granted granted Critical
Publication of JP3182813B2 publication Critical patent/JP3182813B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)
  • Executing Machine-Instructions (AREA)
  • Dram (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はメモリと演算回路とを1
つの半導体チップ上に集積した情報処理装置に関し、メ
モリと演算回路の間で高速に多量の信号の授受を行う方
法を与えるものである。
【0002】
【従来の技術】近年、半導体技術の発展によって微細加
工技術が進歩し、1つのチップに64Mビットのメモリ
セルを集積した半導体メモリが学会で発表されるまでに
なった。一方、演算回路を搭載した半導体においても高
集積化が急速に進んでいる。さらに、最近ではメモリと
演算回路とを1つの半導体チップ上に集積した情報処理
装置も多数実用化され、携帯可能なビデオカメラ、コン
ピュータ、電話などの情報処理装置に大変革が起きると
期待されている。
【0003】この種の装置として、例えば、画像処理装
置あるいはニューラルネットワーク演算装置などがあ
る。図22に示したのは、電子情報通信学会技術研究報
告Vol.89,No312(ICD89−144−1
51,集積回路、1989年11月21日)第43ペー
ジ、図3に記載されたニューラルネットワーク演算装置
である。本従来例では、入力用RAM、係数用RAMと
書かれたメモリからそれぞれ、ニューロン出力値、結合
重み値を読み出してレジスタに蓄えて乗算器、加算器な
どの演算回路でニューロン出力値を求めるための演算を
行う。本従来例の特長は、複数の演算回路で並列に積和
演算を行うことにより高速にニューラルネットワーク情
報処理をすることである。
【0004】
【発明が解決しようとする課題】図22に示した従来例
において、ニューロン数nの大きい大規模なニューラル
ネットワークを構成しようとすると次のような問題が生
じる。
【0005】図22に示した従来例では、8bitの出
力を持つ係数用メモリ(RAM)1つ1つににレジス
タ、乗算器、加算器、アキュムレータ(ACC)から成
る単位演算回路が1つずつ設けてあり、係数用メモリと
演算回路はバスで結合されている。係数用メモリのセン
スアンプ(データ線)のピッチは記載されていないが、
近年の高集積MOSメモリでは、1から2μm程度と大
変小さい。一方、演算回路のピッチは、乗算器、加算器
などで決まるが、8bitの乗算器や16bitの加算
器をデータ線のピッチの8倍の幅にレイアウトすること
は非常に困難である。したがって、例えば図22で左端
の係数用メモリの下に1つの単位演算回路を配置する
と、右に行くほど係数用メモリとバスで結ぶべき単位演
算回路の距離が大きくなってしまう。したがって、バス
が長くなりそのために配線抵抗による信号遅延と占有面
積が増加する。また、単位演算回路によってバスの長さ
が異なるため、信号遅延が不均一となり回路ごとにメモ
リセルアレーからのデータの転送速度が異なり、各々の
単位演算回路の同期を取るのが困難になるという問題も
生じてしまう。逆に、単位演算回路のピッチに合わせて
係数用メモリを並べるとバスは短くなるが、係数用メモ
リの間に余分なスペースが必要になってしまい集積度が
低下してしまう。
【0006】上記の従来例に限らず、メモリと演算回路
とを1つの半導体チップ上に集積した情報処理装置で
は、メモリの大容量化と演算回路の大規模化、動作の並
列化を進めていくと、同様の問題が生じると予想され
る。
【0007】本発明はメモリと演算回路とを1つの半導
体チップ上に集積した情報処理装置において、メモリと
演算回路間のバスの占有面積、配線長、および、バス間
の信号遅延の不均一さの低減を図ろうとするものであ
る。
【0008】
【課題を解決するための手段】本発明では上記課題を解
決するために、メモリセルアレー(A)と演算回路(P
E)との間にデータ線セレクタ(ST)を設けて、演算
回路に同時に接続されるデータ線の本数を制限し、デー
タ線セレクタの入力線間ピッチと出力線間ピッチをそれ
ぞれメモリセルアレーのデータ線間ピッチと演算回路の
入力線間ピッチに合わせられるようにした。
【0009】
【作用】上記のようにピッチを合わせたデータ線セレク
タを用いるため、メモリセルアレーのデータ線間ピッチ
と演算回路の入力線間ピッチが異なる場合においてもデ
ータ線セレクタに隣接してメモリセルアレーと演算回路
を配置することができる。例えば、データ線間ピッチが
数μmと大変小さいDRAMなどのメモリセルアレーと
入力線のピッチが数十μmと比較的大きいデジタル演算
回路などを長いバスを用いずにデータ線セレクタを介し
て配置することも可能となる。
【0010】これによりデータ線セレクタを介してメモ
リセルアレーと演算回路の間で直接信号の授受を行うこ
とができるので、従来問題となっていたバス本数の増加
による占有領域の増大、配線抵抗の増大による信号遅延
が解決される。また、極端に長さの不揃いなバスを用い
る必要もないので、配線長の違いによる信号遅延の不均
一も解決される。
【0011】
【実施例】以下、本発明の実施例を図面を用いて説明す
る。
【0012】図1は本発明を用いて半導体チップ上にメ
モリセルアレーと演算回路を含んだ情報処理装置を構成
した実施例である。図1において、Aはメモリセルアレ
ーで、複数のデータ線とそれに交差する複数のワード線
並びにそれらの所望の交点に構成されたメモリセルから
構成されている。STはデータ線セレクタで、メモリセ
ルアレーAからデータ線を通じて読出した情報から、そ
の1部を選択してバス1を通じて演算回路PEへ伝達す
る。演算回路PEではデータ線セレクタSTから伝達さ
れた情報を用いて所望の情報処理を行う。IOは入出力
回路で、上記メモリセルアレーAからバス4を通じて情
報をチップ外部へ読出したり、上記メモリセルアレーA
にチップ外部からバス5を通じて情報を書き込んだり、
あるいは演算回路PEからバス2を通じて出力される情
報をメモリセルアレーAに書き込んだりあるいはチップ
外部へ読出したり、演算回路PEへバス3を通じてメモ
リセルアレーAの情報を書き込んだり、チップ外部から
演算回路PEへバス3を通じて情報を入力したりするた
めの回路である。CTLは制御回路で、上記のメモリセ
ルアレーA、データ線セレクタST、演算回路PE、入
出力回路IOの動作を外部から与えられる制御信号、ア
ドレスなどの信号を用いて制御するための回路である。
なお、図1においてバスは任意の複数の配線から構成さ
れているが、ここでは簡単のため一部のバスを矢印で示
してある。
【0013】本実施例では、データ線セレクタSTの入
力線のピッチはデータ線のピッチに、データ線セレクタ
STの出力線のピッチは演算回路の入力線のピッチと合
わせてメモリセルアレーAに隣接してデータ線セレクタ
STと演算回路PEを配置した。これにより、メモリセ
ルアレーAのワード線を選択して、そのワード線上にあ
る複数のメモリセルからデータ線に同時に読出された多
数の情報を、長いバスを用いることなくデータ線セレク
タSTを通じて直接演算回路PEに入力することができ
る。このため、長いバスによる配線遅延の増大、配線遅
延のばらつきをなくすことができ、メモリセルアレーと
演算回路の間の情報の転送の高速化が実現できる。ま
た、長いバスによる占有面積の増大もない。
【0014】このように本実施例によれば、データ線セ
レクタSAにより両者のピッチの整合をとることができ
るので、例えば、データ線間のピッチが大変小さいDR
AMなどのメモリセルアレーと入力線間のピッチが比較
的大きいデジタル演算回路などを長いバスを用いずに1
つの半導体チップ上に配置することが可能となる。
【0015】図2は第1図の実施例におけるデータ線セ
レクタと演算回路の構成例を示したものである。図2に
おいてST1,ST2,..,STkはデータ線セレク
タSTを構成するデータ線セレクタ単位回路で、PE
1,PE2,..,PEkは演算回路PEを構成する演
算単位回路である。本実施例においてデータ線セレクタ
単位回路ST1,ST2,..,STkはそれぞれ a'
1,a'2,..,a'k bitの情報をメモリセルアレー
のAのデータ線から受取りa1,a2,..,ak b
itの情報を選択して演算単位回路PE1,PE
2,..,PEkに伝達する。演算単位回路PE1,P
E2,..,PEkは並列に動作させることができるの
で、高速な情報処理が可能である。また、データ線セレ
クタSTと演算回路PEを単位回路に分割し、1つのデ
ータ線セレクタ単位回路からはその最近接の演算単位回
路にのみ信号が入力されるようにしたので、データ線セ
レクタ内での信号の伝達経路を短く均一にできるという
特長がある。本実施例において、高集積のレイアウトを
実現するには、メモリセルアレーのデータ線間のピッチ
と演算回路の入力線間のピッチの比に合わせてデータ線
セレクタを設計すればよい。例えば、メモリセルアレー
のデータ線ピッチが1μm、演算単位回路の入力線間の
ピッチが5μmとし、a1,a2,..,akをすべて
8bitとすれば、データ線セレクタ単位回路に5対1
のデータ線セレクタを用いて、 a'1,a'2,..,a'
kをすべて40bitとすればよい。このようにすれ
ば、40bit分のデータ線の幅の中に1つの演算単位
回路と1つのデータ線セレクタ回路を丁度納めることが
できるので、図2のような配置が高集積に実現できる。
また、回路パターンが規則的な繰返しになるのでレイア
ウト設計も容易である。
【0016】以上述べたように図2の実施例に依れば、
メモリセルアレーAから演算回路PEへ多量の情報を高
速に転送できる。しかし上記の例ではデータ線セレクタ
回路の選択比が5対1と大きくデータ線上に読み出した
情報の4/5は捨てていることになる。したがって、一
回の読み出しでデータ線上に読み出した全ての情報をつ
づけて使うにはメモリセルアレーAのワード線を5回を
立上げなければならず、消費電力の増大が問題となる場
合がある。そのような場合には図3のようにラッチ機能
を持ったデータ線セレクタ単位回路を用いるとよい。
【0017】図3は、選択比がh対1のデータ線セレク
タ単位回路STiで、a'i bitが入力され、ai b
itを出力するように構成されている。LATはラッチ
回路でSWはスイッチである。h個のラッチ回路、スイ
ッチ毎に1本の出力線が接続されている。本実施例の動
作を以下に説明する。メモリセルアレーAから読出され
た情報のうち本データ線セレクタ単位回路STiに入力
されたa'i bitの情報は、ラッチ回路LATに蓄え
られる。つぎに、各出力線に接続されたh個のスイッチ
のうちいずれかを導通することによりラッチ回路LAT
に蓄えられた情報が選択されて出力線に出力される。本
実施例によれば、メモリセルアレーAから読出された情
報は全てラッチ回路に蓄えられるのでメモリセルアレー
Aの読出し動作を1回行うだけでメモリセルアレーAか
ら読出された情報を全て利用することができる。したが
って、データ線セレクタ回路の選択率が大きい場合でも
前述のようなメモリセルアレーAの読出し動作に伴う消
費電力の増大がない。また、ラッチ回路からの情報の読
み出しは、メモリセルアレーAからの読み出しに比べて
信号の伝達経路が短く、高速にできる。したがって、毎
回、メモリセルから読出す場合に比べて情報を高速に転
送することができるという利点がある。
【0018】これまでは、1つの演算回路に対してメモ
リセルアレーとデータ線セレクタ回路を1つづつ組合せ
た構成について述べてきた。しかし、場合によっては、
1つの演算回路に対して任意の個数のメモリセルアレー
とデータ線セレクタ回路を用いたり、あるいは逆に1つ
のメモリセルアレーに対してデータ線セレクタ回路と演
算回路を複数設けるなど必要に応じて種々の構成が可能
なことはもちろんである。
【0019】たとえば、図2の構成においてメモリセル
アレーAの記憶容量を増加させるためにワード線の本数
を増加していくとデータ線の長さが長くなりデータ線の
容量および抵抗値が大きくなって、メモリセルによって
は信号のS/N比が劣化したり、書込み、読み出し動作
が遅延したりすることがありうる。このような場合には
図4の構成が適している。
【0020】図4では、1つの演算回路PEに対してメ
モリセルアレーをデータ線方向に分割して複数設け、分
割したアレーA1,A2,..,AJごとにデータ線セ
レクタ回路ST1,ST2,..,STJを配置してあ
る。データ線セレクタ回路STi(i=1,2,..,
J)はデータ線セレクタ単位回路STi1,STi
2,..,STikより構成され、データ線セレクタ単
位回路STi1,STi2,..,STikの出力はそ
れぞれ、メインデータ線MDATAに接続されている。
したがって、各メインデータ線にはJ個のデータ線セレ
クタ単位回路が接続されている。各メインデータ線に接
続されているデータ線セレクタ単位回路のうち任意の1
つづつを動作させることによって、演算回路PEを構成
する演算単位回路PE1,PE2,..,PEkにそれ
ぞれa1,a2,..,ak bitの情報をメモリセ
ルアレーより並列に入力することができる。
【0021】本実施例によれば、メモリセルアレーを分
割しているため、分割したメモリセルアレー毎にみると
データ線の長さが短い。したがって、データ線の容量お
よび抵抗値が大きなることはなく信号のS/N比が劣化
したり書込み、読み出し動作が遅延したりすることがな
い。
【0022】これまで述べたように、本発明では1本の
ワード線上のメモリセルに蓄えられた情報を並列に読み
出し、その1部をセレクタで選択して演算回路PEに入
力する。したがって、目的とする演算に合わせた配置で
ワード線上のメモリセルに情報を書き込んで置く必要が
ある。
【0023】図5から7では、スカラとベクトルの乗算
を行うプロセッサを構成する場合についてメモリセルア
レー内の情報の並べ方を具体的に示して説明する。簡単
のため図5から7では、スカラCとメモリセルアレーに
記憶した6次元のベクトルVAからVFの各成分のビッ
ト数は2 bitとする。なお、ベクトルVAの第3成
分はVA3というように、ベクトルの各成分は添字をつ
けて表す。また、各成分の第1ビット、第2ビットを区
別するため、ベクトルVAの第3成分VA3の第1ビッ
トをva31,第2ビットをにva32というように表
す。
【0024】図5は上記のようなプロセッサの構成の第
1の実施例を示したものである。本実施例の特長は、ベ
クトルVA,VB,..,VFをそれぞれ異なるワード
線上のメモリセルに書き込むことである。図5に示した
ようにメモリセルアレーAは6本のワード線W
A,..,WFと、12本のデータ線D1,..,D1
2、ならびにそれらの交差部に設けられた72個のメモ
リセルから構成されている。セレクタSTは各データ線
ごとに設けられたラッチ回路LAT1,..,LAT1
2およびスイッチSW1,..,SW12から構成され
ている。演算回路PEは2つの乗算器MT1,MT2か
ら構成されており、乗算器MT1,MT2にはスカラC
とセレクタの出力が入力されている。図からわかるよう
にセレクタSTの選択比は3対1である。ワード線WA
上のメモリセルには、図示したようにベクトルVAのv
a11,va21,va31,va12,va22,v
a32,..,va62という順番に記憶されている。
ワード線WB,..,WFについても同様の順番でベク
トルVB,..,VFが配置されている。
【0025】本実施例の動作を以下に説明する。まず、
ワード線WAを選択して、データ線D1,..,D12
に12 bitからなるベクトルVAを読みだし、ラッ
チ回路LAT1,..,LAT12にラッチする。つづ
いてスイッチSW1,SW4,SW7,SW10をオン
する。この結果、乗算器MT1にベクトルVAの第1成
分VA1であるva11,va12が、乗算器MT2に
ベクトルVAの第4成分VA4であるva41,va4
2が入力されベクトルVAとスカラCとの乗算結果の第
1成分CVA1が乗算器MT1から、第4成分CVA4
が乗算器MT2から出力される。つぎにスイッチSW
1,SW4,SW7,SW10をオフしてSW2,SW
5,SW8,SW11をオンすることによって、ベクト
ルVAとスカラCとの乗算結果の第2成分CVA2を乗
算器MT1から、第5成分CVA5をが乗算器MT2か
ら出力する。最後にスイッチSW2,SW5,SW8,
S11をオフしてSW3,SW6,SW9,SW12を
オンすることによって、ベクトルVAとスカラCとの乗
算結果の第3成分CVA3を乗算器MT1から、第6成
分CVA6を乗算器MT2から出力する。こうして、ベ
クトルVAとスカラCとの乗算を完了する。同様にし
て、ワード線WBを選択して、ベクトルVBとスカラC
との乗算を行い,ワード線WFを選択して、ベクトルV
FとスカラCとの乗算を行うまで順番にワード線を選択
して計算を行う。このようにして、6つのベクトルVF
とスカラCとの乗算が完了する。本実施例ではベクトル
VA,VB,..,VFをそれぞれ異なるワード線上の
メモリセルに書き込んでいるので1つのベクトルの値を
書き替えるためには、1本のワード線を選択して1度に
書き込みができるという利点がある。
【0026】上記の実施例では2つの乗算器を用いて6
次元のベクトルの乗算を行うためセレクタを3回動作さ
せて1つのベクトルの演算が完了する。メモリセルアレ
ーからの読みだしは1つのベクトルに1度でよいのでこ
のままでも高速であるが、場合によってはさらに高速動
作が必要な場合がある。
【0027】図6に示す実施例は、高速化を図るため1
回のセレクタの動作で1つのベクトルの演算が完了する
ようにしたものである。図6の実施例の特長は、メモリ
アレーのデータ線の数を増やして1つのワード線にセレ
クタの選択比に等しい3つのベクトルを記憶させ、1つ
のベクトルの演算を並列に行えるように6つの乗算器を
配置したことである。なお、乗算器は6本のデータ線に
1つ設けているので乗算器のピッチは図5の実施例と同
じである。
【0028】図6に示したようにメモリセルアレーAは
2本のワード線W1,W2と、36本のデータ線D
1,..,D36、ならびにそれらの交差部に設けられ
た72個のメモリセルから構成されている。セレクタS
Tは各データ線ごとに設けられたラッチ回路LAT
1,..,LAT36およびスイッチSW1,..,S
W36から構成されている。演算回路PEは6つの乗算
器MT1,..,MT6から構成されており、乗算器に
はスカラCとセレクタの出力が入力されている。セレク
タSTの選択比は3対1である。ワード線W1上のメモ
リセルには、ベクトルVA,VB,VCが図示したよう
にva11,vb11,vc11,va12,vb1
2,vc12,..,vc62という順番に記憶されて
いる。ワード線W2についても同様の順番でベクトルV
D,VE,VFが配置されている。
【0029】本実施例の動作を以下に説明する。まず、
ワード線W1を選択して、データ線D1,..,D36
にベクトルVA,VB,VCを読みだし、ラッチ回路L
AT1,..,LAT36にラッチする。つづいてスイ
ッチSW1,SW4,SW7,..,SW34をオンす
る。この結果、乗算器MT1からMT6にそれぞれ2b
itずつからなるベクトルVAの第1成分VA1(va
11,va12)から第6成分VA6(va61,va
62)が入力されベクトルVAとスカラCとの乗算結果
の第1成分CVA1から第6成分CVA6が出力され
る。つぎにスイッチSW1,SW4,SW7,..,S
W34をオフしてSW2,SW5,SW8,..,SW
35をオンすることによって、ベクトルVBとスカラC
との乗算を行い、最後にスイッチSW2,SW5,SW
8,..,SW35をオフしてSW3,SW6,SW
9,..,SW36をオンすることによって、ベクトル
VCとスカラCとの乗算を行う。こうして、3つのベク
トルVA、VB,VCとスカラCとの乗算を完了する。
同様にして、ワード線W2を選択して、スカラCとベク
トルVD,VE,VFの乗算を行う。本実施例では1つ
のワード線上のメモリセルにセレクタの選択比と同じ数
のベクトルを書き込んでいるのセレクタを動作させる度
に1つのベクトルの値を1度に演算回路に入力して計算
を行うことができる。このため、非常に高速に演算を行
うことができる。
【0030】図7は図6に示した実施例に好適な並列書
き込み回路である。図6の実施例では図示したように1
つのワード線上のメモリセルに複数のベクトルを混在し
て書き込む必要がある。したがって、1つのベクトルの
値を書き替えるためには、1本のワード線上のとびとび
のメモリセルを選択しなければならず、通常のメモリの
ように1 bitずつ書き替える方法ではアドレスの制
御も複雑で時間がかかる。図7の実施例の特長は、書き
込み回路にデストリビュータを用いて1つのベクトルの
書き込まれているメモリセルに選択的に並列書き込みを
行うことである。図7においてINは入力線、DSB
1、DSB2はデストリビュータ、RGTはレジスタで
ある。ワード線W1上にベクトルVAを書き込むには次
のようにすればよい。まず、スイッチSWR11,SW
R12,..,SWR62を順番に導通して入力線IN
より、ベクトルVAを表すva11,va12,..,
va62をレジスタRGTのセルR11,R1
2,..,R62に書き込む。つづいて、ワード線W1
を選択してからデストリビュータDSB2のスイッチS
1,S4,..,S34を導通して図7に黒丸で示した
メモリセルにva11,va12,..,va62を書
き込む。これにより、図6に示したのと同じメモリセル
にベクトルVAが書き込まれたことになる。容易にわか
るように他のベクトルの書き込みも適当なワード線とデ
ストリビュータDSB2のスイッチを選択すれば同様に
行うことができる。例えば、ベクトルVFの書き込みで
はレジスタRGTにvf11,..,vf62を収納し
た後にワード線W2とデストリビュータDSB2のスイ
ッチS3,S6,..,S36を選択すればよい。
【0031】このように本実施例によれば、1本のワー
ド線上に並んだメモリセルから複数のとびとびの位置に
あるメモリセルに並列に書き込みを行うことができる。
したがって、1つ1つのメモリセルへ書き込みを行う場
合に比べて高速の書き込みが可能となる。また、同じベ
クトルについては書込み時のデストリビュータDSB2
のスイッチの選択は、演算時のセレクタ内のスイッチの
選択と同じ番号のものでよい。したがって、セレクタS
TとデストリビュータDSB2のスイッチの選択を制御
する回路も容易に構成できる。
【0032】これまで、図1から図7を用いて本発明の
基本的な構成を説明してきた。本発明は、多量のデータ
を用いて、並列演算を行う情報処理装置に適している。
たとえば、画像処理、あるいはニューロコンピューティ
ングとよばれるニューラルネットワークを用いた並列分
散型情報処理(以下ニューラルネットワーク情報処理)
を行う装置に好適である。以下では、本発明をニューラ
ルネットワーク情報処理を行う半導体装置に適用した実
施例について述べる。
【0033】ニューラルネットワーク情報処理は音声処
理、あるいは画像処理といったパターン認識あるいは最
適化問題などの分野において注目を集めている。ニュー
ラルネットワーク情報処理では、ネットワーク状に結合
した多数のニューロンと呼ばれる演算要素が、結合と呼
ばれる伝達線を通じて情報をやりとりして高度な情報処
理を行なう。各々のニューロンでは他のニューロンから
送られてきた情報(ニューロン出力値)に対して積ある
いは和などの単純な演算が行なわれる。各々のニューロ
ン内の演算、さらには、異なるニューロンの演算も並列
に行なうことが可能なため、高速に情報処理を行なうこ
とができる特長を持っている。また、望ましい情報処理
を行なわせるためにニューロン同志をつなぐ結合の重み
値を設定するアルゴリズム(学習)も提案されているた
め、目的に応じた様々な情報処理をさせることができ
る。
【0034】ニューラルネットワークの動作原理を2種
類の代表的なネットワークである階層型ネットワークと
ホップフィールド型ネットワークについて説明する。図
8に階層型ネットワークを、図9にホップフィールド型
ネットワークの構造を示した。これらは、どちらもニュ
ーロンとニューロン同土をつなぐ結合から構成されてい
る。ここでは、ニューロンという用語を用いるが、場合
によってはノード、あるいは演算要素などと呼ばれるこ
ともある。結合の矢印の向きは、ニューロン出力値の伝
わる方向を示している。階層型ネットワークは、図8に
示したように、ニューロンが複数の階層をなすように並
び、入力層から出力層へ向かう方向にのみニューロン出
力値が伝わるものである。一方、ホップフィールド型ネ
ットワークは、図9に示したように、任意の2つのニュ
ーロン間で両方向にニューロン出力値が伝わるものであ
る。
【0035】図8、図9にはニューロン内で行なわれる
演算の原理も示した。演算の原理はどちらのネットワー
クでも同様なので、図8を用いて階層型ネットワークに
ついて説明する。図8下部には、S+1番目の層内のj
番目のニューロンを拡大して示した。このニューロン内
には結合を通じて前層、すなわちS番目の層内のニュー
ロンの出力値V(1,s),..,V(i,
s),..,V(n,s)が入力される。ここで、nは
S番目の層内のニューロンの数を示している。ニューロ
ン内では入力されたニューロンの出力値V(1,
s),..,V(i,s),..,V(n,s)と結合
重み値T(j,1,s),..,T(j,i,
s),..,T(j,n,s)との積V(1,s)T
(j,1,s),..,V(i,s)T(j,i,
s),..,V(n,s)T(j,n,s)が乗算機M
Tにより計算される。つぎに、これらの積と−Θ(j,
s+1)との和を加算機ADDにより計算する。ここ
で、Θ(j,s+1)はオフセットと呼ばれる量で場合
によっては、省略してもよい。さらに、その結果を非線
形関数回路Dに入力してニューロンの出力値V(j,s
+1)を得る。非線形関数回路Dは入力xに対して出力
g(x)を出力する。関数gとしては入力xがあるしき
い値xthを越えるか否かにより2値の出力を出力する
非線形関数あるいは、シグモイド関数と呼ばれる連続的
な増加関数が用いることが多い。非線形関数回路Dに
は、必要に応じてこの他の特性を持たせることもある。
また、場合によっては、線形の特性を持たせてもよい。
【0036】上記の演算の原理は、図9に示したように
ホップフィールド型ネットワークでも同様である。ただ
し、ホップフィールド型ネットワークでは、1つのニュ
ーロンに自分自身を除くすべてのニューロンの出力値が
入力される。
【0037】図8より判るように、階層型ネットワーク
では、まず、入力層のニューロンの出力値を設定し、そ
れをもとに次々に隠れ層のニューロンの出力値が更新さ
れて、最後に出力層のニューロンの出力値が更新され
る。一方、図9のようにホップフィールド型ネットワー
クでは、層というものがないため、それぞれのニューロ
ンは、適当なタイミングで出力値を更新することができ
る。このホップフィールド型ネットワークでは、すべて
のニューロン出力値の初期値を適当に与え、ニューロン
出力値が平衡状態となるまでニューロン出力値の更新を
続ける。ニューロンの出力値が平衡状態となるまでに
は、ふつう全てのニューロンについて出力値の更新を何
度か行なう必要がある。すべてのニューロンの出力値を
同時に更新するものを同期的なホップフィールド型ネッ
トワーク、それぞれのニューロンが、勝手なタイミング
で出力値を更新するものを非同期的なホップフィールド
型ネットワークと呼ぶ。
【0038】以下では、上記したニューラルネットワー
クの計算を行う情報処理装置(以下、ニューロプロセッ
サ)の実施例について述べる。なお、以下では各層がn
個のニューロンからなるL層構成の階層型ネットワーク
の計算をk(k<n)個の並列に動作する乗算器を用い
て行う実施例を示すが、kがnと等しい場合あるいはk
がnより大きい場合においても同様にして本発明を用い
てニューラルネットワークの計算を行う情報処理装置を
構成することができる。また、前述したホップフィール
ドネットワークやそれ以外のニューラルネットワークに
ついても動作原理は同様のため以下の実施例と同様にし
て実現できる。
【0039】図10は本発明を用いて構成したニューロ
プロセッサの第1の実施例である。図10においてA、
Bはメモリセルアレー、STA、STBはセレクタ回
路、PEは演算回路、ACCはアキュムレータ、Dは非
線形演算回路である。メモリセルアレーA、Bはそれぞ
れニューロン出力値、結合重み値を記憶するためのもの
で、ニューロン出力値、結合重み値はそれぞれ、a b
it、b bitで表現されて記憶されている。メモリ
セルアレーAにはL本のワード線があり、各ワード線上
のメモリセルには1層分のニューロン出力値が記憶され
ている。したがって、1本のワード線を選択することに
よりデータ線群に1層分のニューロン出力値が読出され
る。メモリセルアレーBにはn(L−1)本のワード線
があり、そのうちの1本を選択することによりデータ線
群にn(n=kh)個の結合重み値が読出される。セレ
クタ回路STA、STBはそれぞれ、k個のセレクタ単
位回路STA1,..,STAkおよびSTB
1,..,STBkからなっており、セレクタ単位回路
では、メモリサルアレーから読出された情報をラッチし
てその中からh:1の比で選択して演算回路PEへ伝達
する。演算回路PEは、k個のデジタル乗算器MTD
1,..,MTDkおよびスイッチSW1,..,SW
kから構成されていてスイッチSWi(i=1,..,
k)を導通させることによりデジタル乗算器MTDiに
より計算されたニューロン出力値と結合重み値の積をア
キュムレータACCに伝達する。アキュムレータACC
では、乗算器より伝達されるニューロン出力値と結合重
み値の積を加算して、非線形演算回路Dに伝達する。非
線形演算回路Dでは、図8における非線形関数gの計算
を行い、ニューロン出力値を出力する。非線形演算回路
Dは、非線形関数gの入出力関係を実現するように論理
回路で構成したり、あるいは、入力データをアドレスと
して扱い、そのアドレスに対応するメモリセルに非線形
関数gの出力値を記憶したメモリを用いることもでき
る。
【0040】以下、本実施例の動作を図11を用いて詳
細に説明する。図11は図10のニューロプロセッサの
構成(1)における計算アルゴリズムを図示したもので
ある。前記したようにここでは、各層にn個のニューロ
ンがあるL層の階層型ネットワークを仮定している。な
お、図11では第2層の第1ニューロンの出力値を計算
するアルゴリズムを示すために結合重みのうち1部のみ
示してある。あらかじめ、入力層のニューロンの出力値
を図10のメモリアレーAの1本のワード線上のメモリ
セルに書き込んでおく。またメモリアレーBには(L−
1)n2個のすべての結合重み値を、結合重み値T
(j,i,s)(jとsは一定、i=1,..,n)が
同一のワード線上のメモリセルに記憶されるように書き
込んでおく。まず、入力層のニューロンの出力値を書き
込んでおいたメモリアレーAのワード線ならびに入力層
のニューロンと第2層の第1ニューロンとの間の結合重
み値T(1,i,1)(i=1,..,n)を書き込ん
でおいたメモリアレーBのワード線を選択する。その結
果、セレクタ単位回路STA1,..,STAkにはそ
れぞれ、図11の第1層のグループ#1,..,#kの
ニューロン出力値が、セレクタ単位回路STB
1,..,STBkにはそれぞれ、第1層のグループ#
1,..,#kのニューロンから第2層の第1ニューロ
ンへの結合重み値が入力されラッチされる。つづいて、
h回に分けて第2層の第1ニューロンの出力値を計算す
る。まず、第1サイクルでは、セレクタ単位回路STA
1,..,STAkからそれぞれ第1層のグループ#
1,..,#k内の第1ニューロンの出力値を、セレク
タ単位回路STB1,..,STBkからはそれぞれ図
11において実線で示した結合の重み値をデジタル乗算
器MTD1,..,MTDkに入力する。デジタル乗算
器MTD1,..,MTDkでは、ニューロン出力値と
結合重み値の積が並列に計算される。つづいて、スイッ
チSW1,..,SWkを順番に導通させて乗算結果を
アキュムレータACCへ伝達する。次に、第2サイクル
では、セレクタ単位回路STA1,..,STAkから
それぞれ、第1層のグループ#1,..,#k内の第2
ニューロンの出力値を、セレクタ単位回路STB
1,..,STBkからはそれぞれ、図11において破
線で示した結合の重み値をデジタル乗算器MTD
1,..,MTDkに入力して乗算結果をアキュムレー
タACCへ伝達する。同様にして第hサイクルまで計算
を行うとアキュムレータACCには第2層の第1ニュー
ロンの出力値を求めるのに必要な積和結果が得られる。
ここで、その積和結果を非線形演算回路Dに入力して第
2層の第1ニューロンの出力値を求め、メモリアレーA
に書き込む(第1層のニューロンの出力値が書き込まれ
たメモリセルのあるワード線以外のワード線上のメモリ
セルに書き込む)。つづいて、入力層のニューロンと第
2層の第2ニューロンとの間の結合重み値T(2,i,
1)(i=1,..,n)を書き込んでおいたメモリア
レーBのワード線を選択して、同様にして第2層の第2
ニューロンの出力値の計算を行なう。なお、同じ層内の
ニューロンの出力値の計算を行なうときには、すでに必
要なニューロンの出力値は、セレクタにラッチされてい
るのでメモリアレーAのワード線を選択しなおす必要は
ない。
【0041】以上の動作を続けて第2層のニューロンの
出力値を1本のワード線上のメモリセルに書き込んでい
く。第2層の計算が終了したらつづいて第2層のニュー
ロンの出力値をメモリセルアレーAから、第2層のニュ
ーロンと第3層の第1ニューロンとの間の結合重み値T
(1,i,2)(i=1,..,n)をメモリアレーB
から読出して第3層の第1ニューロンの出力値の計算を
行ない、同様の計算をつづけて最終層の第nニューロン
の出力値を求めるまで計算を行なっていく。
【0042】以上述べたように本実施例によれば、k個
の乗算を並列に行なうので高速にニューラルネットワー
ク情報処理が行なえる。また、セレクタを用いているた
め、メモリセルアレーのデータ線ピッチとデジタル乗算
回路の入力線のピッチが異なっても両者を整合させてセ
レクタを挾んで近接して配置できる。このため長いバス
が不要となり信号の授受を高速に行なうことができる。
さらに、セレクタにラッチ機能を設けたため、メモリセ
ルアレーの読出し動作はメモリセルアレーAでは、各層
ごと、Bでは各ニューロンごとに1回と少なくて良い。
したがって、メモリセルアレーの消費する電力が少なく
て済むという利点がある。また、セレクタ内のラッチ回
路から読みだすので、メモリセルアレーからの読みだし
に較べて高速動作が可能となる。
【0043】図12は、ニューロプロセッサの構成例
(2)であり、図10の実施例と同様の機能を持つもの
をアナログの乗算器を用いて実現したものである。図1
2においてDAA1,..,DAAkおよびDAB
1,..,DABkはDAコンバータでありセレクタS
TA,SABから出力されるデジタル値をアナログ値に
変換して乗算器MTA1,..,MTAkに入力する。
乗算器MTA1,..,MTAkは出力が電流のものを
用いる。このため乗算結果を1度に足しあわせることが
できる。したがって、図10の実施例のように演算回路
PE内にスイッチを設けて順番にアキュムレータに乗算
結果を伝達する場合に比べて高速であるという特長があ
る。また、本実施例ではアナログの乗算器を用いている
ため占有面積が小さくできるという利点がある。本実施
例の動作、計算アルゴリズムは図10の実施例と同様で
あるので動作の詳細な説明は省略する。なお、出力が電
流の乗算器MTA1,..,MTAkはたとえば、ア
イ、イー、イー、イー、ジャーナル、オブ、ソリッド、
ステート、サーキット、エス、シー17、第6巻、11
74ページから1178ページ(IEEE Journal of Soli
d-State Circuits, vol, SC-17, no.6, December, 198
2, p.1174-1178)あるいはアイ、イー、イー、イー、ジ
ャーナル、オブ、ソリッド、ステート、サーキット、エ
ス、シー22、第3巻、357ページから365ページ
(IEEE Journal of Solid-State Circuits, vol, SC-2
2, no.3, June, 1987, p.357-365)に記載の回路を用い
ることができる。DAコンバータについては図12の構
成に好適な実施例を後述する。
【0044】図13は、本発明を用いたニューロプロセ
ッサの構成例(3)で図10の実施例と同じようにデジ
タル演算器を用いて構成してある。図13においてRA
はレジスタで、ニューロン出力値を記憶するためのもの
である。演算回路PEは、k個のデジタル乗算器MTD
1,..,MTDkおよびアキュムレータACC
1,..,ACCkより構成されている。セレクタ回路
STCではスイッチSW1,..,SWkを1つずつ導
通することにより積和結果を非線形演算回路Dに伝達す
る。本実施例では図11とは異なる計算アルゴリズムで
ニューロン出力値を計算する。以下、本実施例の動作を
図14を用いて詳細に説明する。
【0045】図14は図13のニューロプロセッサの構
成(3)における計算アルゴリズムを図示したものであ
る。前と同様にここでは、各層にn個のニューロンがあ
るL層の階層型ネットワークを仮定している。なお、図
14では第2層の第1ニューロンから第kニューロンの
出力値を計算するアルゴリズムを示すために結合重みの
うち1部のみ示してある。あらかじめ、入力層のニュー
ロンの出力値をレジスタRAに書き込んでおく。またメ
モリアレーBには(L−1)n2個のすべての結合重み
値を書き込んでおく。このとき、第s層のニューロンh
個と第(s+1)層ニューロンk個の間のn個の結合重
み値T(j,i,s)が同一のワード線上のメモリセル
に記憶されるようにする。たとえば、図14において入
力層のグループ#1のh個のニューロンと第2層の第1
ニューロンから第kニューロンの間の結合重み値は同一
のワード線上のメモリセルに記憶されるようにする。
【0046】まず、入力層のグループ#1の第1ニュー
ロンの出力値をレジスタRAから読出し、入力層のグル
ープ#1のh個のニューロンと第2層の第1ニューロン
から第kニューロンの間の結合重み値を書き込んでおい
たメモリアレーBのワード線を選択する。その結果、セ
レクタ単位回路STB1,..,STBkにはそれぞ
れ、h個ずつの結合重み値T(1,i,1),..,T
(k,i,1)(ここで、i=1,..,h)が入力さ
れラッチされる。つづいて、入力層のグループ#1のh
個のニューロンと第2層の第1ニューロンから第kニュ
ーロンの間の結合重み値の積をh回のサイクルに分けて
行なう。まず、第1サイクルでは、第1層の第1ニュー
ロンの出力値をレジスタRAから読出し、セレクタ単位
回路STB1,..,STBkからはそれぞれ図14に
おいて実線で示した結合の重み値をデジタル乗算器MT
D1,..,MTDkに入力する。デジタル乗算器MT
D1,..,MTDkでは、ニューロン出力値と結合重
み値の積が並列に計算され、乗算結果はアキュムレータ
ACC1,..,ACCkへ蓄えられる。次に、第2サ
イクルでは、第1層の第2ニューロンの出力値をレジス
タRAから読出し、セレクタ単位回路STB1,..,
STBkからはそれぞれ、図11において破線で示した
結合の重み値をデジタル乗算器MTD1,..,MTD
kに入力して乗算結果をアキュムレータACC
1,..,ACCkへ伝達して加算する。同様にして第
hサイクルまで計算を行い、入力層のグループ#1のh
個のニューロンと第2層の第1ニューロンから第kニュ
ーロンの間の結合重み値の積和計算を行なう。
【0047】次に、入力層のグループ#2の第1ニュー
ロンの出力値をレジスタRAから読出し、入力層のグル
ープ#2のh個のニューロンと第2層の第1ニューロン
から第kニューロンの間の結合重み値を書き込んでおい
たメモリアレーBのワード線を選択する。そして、上記
と同様に入力層のグループ#2のh個のニューロンと第
2層の第1ニューロンから第kニューロンの間の結合重
み値の積をh回のサイクルに分けて行なう。以下、同様
にして入力層のグループ#kのh個のニューロンと第2
層の第1ニューロンから第kニューロンの間の結合重み
値の乗算までを行なうとアキュムレータACC
1,..,ACCkには第2層の第1ニューロンから第
kニューロンの出力値を求めるのに必要な積和結果が得
られる。ここで、その積和結果をスイッチSW
1,..,SWkを順番に導通させて非線形演算回路D
に入力してその出力をレジスタRAに書き込む。以下、
第2層のニューロン出力値をk個づつ求めていき、第2
層のニューロン出力値の計算が終わった後に第2層のニ
ューロン出力値を用いて第3層のニューロン出力値を求
め、出力層まで同様にして計算を行なう。
【0048】以上述べたように本実施例では、デジタル
演算によりニューラルネットワーク情報処理を行うため
図10の実施例と同じく高精度の演算ができる。さら
に、乗算器をk個、アキュムレータをk個設けて乗算、
加算とも並列に行なうので図10の実施例より高速であ
る。なお、本実施例においてもセレクタを用いているた
め、メモリセルアレーのデータ線ピッチとデジタル乗算
回路、アキュムレータの入力線のピッチが異なっても両
者を整合させてセレクタを挾んで近接して配置できる。
このため長いバスが不要となり信号の授受を高速に行な
うことができることはもちろんである。さらに、セレク
タにラッチ機能を設けたため、メモリセルアレーBの読
出し動作はhサイクルごとと少なくて良い。したがっ
て、メモリセルアレーの消費する電力が少なくて済むと
いう利点がある。なお、本実施例では1つの非線形演算
回路Dを用いているが、個々のアキュムレータそれぞれ
に設けても良い。その場合には、非線形演算も並列に行
なうことができるため、さらに、高速処理が可能とな
る。その場合には、セレクタSTCを用いずにレジスタ
RAの入力バスをak bitに広げてレジスタRAへ
の書込みを並列に行なうようにして、さらに、高速処理
を行うことも可能となる。
【0049】図15は、本発明を用いたニューロプロセ
ッサの構成例(4)である。図15において、PEA,
PEBは演算回路、DSBはディストリビュータであ
る。前出の実施例と同じくレジスタRA、メモリセルア
レーBはそれぞれニューロン出力値、結合重み値を記憶
するためのもので、ニューロン出力値、結合重み値はそ
れぞれ、a bit、b bitで表現されて記憶され
る。本実施例の特長は、アキュムレータをhk個設けた
ことである。以下、本実施例の動作を図15、図16を
用いて詳細に説明する。
【0050】図16は図15のニューロプロセッサの構
成(4)における計算アルゴリズムを図示したものであ
る。本実施例と図13、14に示した実施例の最も大き
な違いは、本実施例では、n個のアキュムレータを設け
て、1層分のn個のニューロンの出力値を計算を並列し
て行なうことである。あらかじめ、入力層のニューロン
の出力値をレジスタRAに書き込んでおく。またメモリ
アレーBには(L−1)n2個のすべての結合重み値を
書き込んでおく。このとき、同一のワード線上のメモリ
セルに第s層の第iニューロンと第(s+1)層のニュ
ーロン間の結合重み値T(j,i,s)(j=
1,...,n)が記憶されるようにし、ワード線上の
順番はワード線を選択することによってセレクタ単位回
路STBxに、第s層の第iニューロンと第(s+1)
層の第1グループから第hグループ(図16に#
1,..,#hで示した)の第xニューロンとの間の結
合重み値が入力されるようにする。例えば、図16にお
いて入力層の第1ニューロンと第2層のn個のニューロ
ンの間の結合重み値は同一のワード線上に記憶され、入
力層の第1ニューロンと各グループの第1ニューロン
(斜線をつけたもの)の間のh個の結合重み値はそのワ
ード線を選択するとセレクタ単位回路STB1に入力さ
れる。
【0051】計算は次のように行なう。まず、入力層の
第1ニューロンの出力値をレジスタRAから読出し、入
力層の第1ニューロンと第2層のニューロンの間の結合
重み値を書き込んでおいたメモリアレーBのワード線を
選択する。その結果、セレクタ単位回路STB
1,..,STBkにはそれぞれ、h個ずつの結合重み
値が入力されラッチされる。つづいて、入力層の第1ニ
ューロンの出力値と第2層のn個のニューロンの間の結
合重み値の積をh回のサイクルに分けて行なう。まず、
第1サイクルでは、セレクタ単位回路STB1,..,
STBkからはそれぞれ図16において実線で示した結
合の重み値をデジタル乗算器MTD1,..,MTDk
に入力する。デジタル乗算器MTD1,..,MTDk
では、ニューロン出力値と結合重み値の積が並列に計算
され、乗算結果はディストリビュータを通じてアキュム
レータACC(1,1),ACC(1,2)..,AC
C(1,k)へ蓄えられる。次に、第2サイクルでは、
セレクタ単位回路STB1,..,STBkからそれぞ
れ、図16において破線で示した結合の重み値をデジタ
ル乗算器MTD1,..,MTDkに入力して乗算結果
をアキュムレータACC(2,1),ACC(2,
2),..,ACC(2,k)へ伝達して加算する。同
様にして第hサイクル計算を行い、入力層の第1のニュ
ーロンと第2層のn個のニューロンの間の結合重み値の
積和計算を行なう。
【0052】次に、入力層の第2ニューロンの出力値を
レジスタRAから読出し、入力層の第2ニューロンと第
2層のn個のニューロンの間の結合重み値を書き込んで
おいたメモリアレーBのワード線を選択する。そして、
上記と同様に入力層の第2ニューロンと第2層のニュー
ロンの間の結合重み値の積をh回のサイクルに分けて行
なう。以下、同様にして入力層の第nニューロンと第2
層のニューロンの間の結合重み値の乗算までを行なうと
アキュムレータには第2層の第1ニューロンから第nニ
ューロンの出力値を求めるのに必要な積和結果が得られ
る。たとえば、ACC(2,3)には第2層の第2グル
ープの第3ニューロンの出力値を求めるのに必要な積和
結果が得られる。ここで、その積和結果をスイッチSW
1,..,SWkを順番に導通させて非線形演算回路D
に入力してレジスタRAに書き込む。以下、第3層のニ
ューロン出力値を求め、第3層のニューロン出力値の計
算が終わった後に第4層のニューロン出力値を求めて、
出力層まで同様にして計算を行なう。
【0053】以上述べたように本実施例によれば、乗算
器をk個、アキュムレータをn個設けて同一層内のn個
のニューロンの出力値の計算を並列に行なうことができ
る。このため、非線形演算回路、レジスタへのアキュム
レータからのデータ転送をまとめて行なうことができる
ので高速にニューラルネットワーク情報処理が行なえ
る。なお、本実施例においてもセレクタを用いているた
め、メモリセルアレーのデータ線ピッチとデジタル乗算
回路の入力線のピッチが異なっていても両者を整合させ
てセレクタを挾んで近接して配置できる。このため長い
バスが不要となり信号の授受を高速に行なうことができ
ることはもちろんである。さらに、セレクタにラッチ機
能を設けたため、メモリセルアレーBの読出し動作はh
サイクルごとと少なくて良い。したがって、前記した実
施例と同様にメモリセルアレーの消費する電力が少なく
て済み動作も高速になるという利点がある。なお、本実
施例でも前記した実施例と同様に非線形演算回路Dを複
数設けたり、レジスタRAの入力バスを広げるなどによ
り非線形演算やレジスタRAへの書込みを並列に行ない
さらに高速化を図ることが可能である。
【0054】以下では、これまで述べた実施例に好適な
回路の実施例を示す。
【0055】図17は、DRAMメモリセルアレーに好
適なセレクタの構成例である。本実施例は、図1、2、
3のメモリセルアレーAとセレクタST、図4のメモリ
セルアレーA1,..,AJとセレクタST1,..,
STJ、図5、6のメモリセルアレーAとセレクタS
T、図10、12のメモリセルアレーA,Bとセレクタ
STA,STBならびに図13、15のメモリセルアレ
ーBとセレクタSTB等に用いることができる。本実施
例の特長は、DRAMメモリセルを用いてメモリセルア
レー部を高集積に実現したことと、セレクタのラッチ機
能をDRAMセルアレー内の再書込み用センスアンプを
利用して実現したことである。図17においてMはメモ
リセルアレー、ST1,..,STkはセレクタ単位回
路である。説明の都合上、メモリセルアレーMはメモリ
セルアレー単位回路M1,..,Ma,..セレクタ単
位回路ST1は基本セレクタST11,..,ST1a
に分けて示してある。メモリセルアレー単位回路M1に
示したようにメモリセルアレーは1つのトランジスタと
1つのキャパシタからなるダイナミック型メモリセルM
Cより構成されている。D1,D1B,....Dh,
DhBはデータ線、W1,W2,..,Wmはワード線
である。PR,SA,RSA,WSは、メモリセルMC
の情報の読出し書込みを制御する回路で、それぞれ、プ
リチャージ回路、センスアンプ、読出しアンプ、書込み
回路である。基本セレクタST11に示したように1つ
の基本セレクタにはh対のデータ線対D1,D1
B,....Dh,DhBが入力され、1対のセレクタ
出力線TD1,TD1Bが出力される。セレクタ単位回
路はST11からST1aまでのa個の基本回路から構
成されている。基本回路ST11に示したようにデータ
線対のうちD1,..,DhがそれぞれスイッチMOS
SM1,..,SMhを通じて共通データ線CD1
に、D1B,..,DhBがそれぞれスイッチMOS
SM1B,..,SMhBを通じて共通データ線CD1
Bに接続されている。共通データ線対CD1,CD1B
にはそれぞれ、プリチャージ用のpMOS PM1,P
M1Bが接続され、CMOSインバータを用いたバッフ
ァ回路BF1,BF1Bに入力される。バッファ回路B
F1,BF1Bの出力が出力線TD1,TD1Bとな
る。ここでは、バッファ回路にCMOSインバータを用
いたためバッファ回路の入出力の電位が反転するがバッ
ファ回路としてCMOSインバータを2段接続して入出
力の電位を一致させることももちろんできる。CMOS
インバータを多段接続した場合にはCMOSインバータ
の段間のトランジスタサイズの比を適当にとれば、共通
データ線対の容量を大きくすることなくバッファ回路の
駆動能力を上げることができるので入力容量の大きい演
算回路をセレクタと接続する場合に好適である。
【0056】セレクタを通じた情報の読出し動作の概要
は以下のとおりである。まず、通常のDRAMの読み出
し動作と同じようにメモリセルアレーM内のワード線が
一本選択され、そのワード線上のメモリセルに蓄えられ
ていた情報がそれぞれのデータ線対に微小な電位差とな
って読出される。その微小な電位差を各データ線対に設
けたセンスアンプSAで増幅してメモリセルに再書込み
を行なう。増幅した電位差をセンスアンプSAでラッチ
した状態でセレクタを動作させてデータ線対h対あたり
1対のデータを選択して出力する。したがって、図17
に示した構成では、1本のワード線を選択することによ
り、セレクタ単位回路あたりah対のデータ線、全体で
ahk対のデータ線にahk bitの情報が読出さ
れ、そのなかから、セレクタによりak bitのデー
タが選択されて並列に出力されることになる。
【0057】以下、図18を用いて図17のセレクタの
動作を詳細に説明する。なお、メモリセルから出力線
O,OBを通じての読み出し、入力線I,IBを通じて
の書込み動作は従来のDRAMと同様なので説明を省略
する。図18は図17のワード線W1を選択して読出し
た情報をak bitずつh回連続して並列読出しを行
なう場合の動作波形の例である。まず、動作の始めには
すべてのワード線の電位が低電位Vss、プリチャージ
信号φpが高電位Vccとなっており、これによりメモ
リセルは非選択の状態となり、すべてのデータ線はVc
cとVssの間の電位VHにプリチャージされている。
つぎに、プリチャージ信号φpの電位を低電位に立ち下
げてからワード線W1を選択してその電位をVcc+V
t以上に立ちあげる(ここにVtはメモリセルMCのM
OSトランジスタのしきい電圧である)。すると、各デ
ータ線対にはデータ線に接続されたメモリセルMCの記
憶情報にしたがって微小な電位差が生ずる。図18で
は、データ線D1が、D1Bより高電位に、データ線D
hが、DhBより低電位になった場合を示している。つ
づいて、センスアンプSA起動信号PP,PNの電位を
VHからそれぞれ、高電位、低電位に遷移させる。する
と、データ線対の微小な電位差が増幅され、高電位側の
データ線は電位がVccになるまで充電され、低電位側
のデータ線は電位がVssになるまで放電される。こう
して、全部でahk対のデータ線に読出され増幅された
信号は、センスアンプSA起動信号PP,PNの電位を
それぞれ高電位Vcc、低電位Vssに保つことにより
データ線対上にラッチされる。つづいて、セレクタによ
りak bitずつh回連続して並列読出しを行なう。
図18に示したように動作の始めには共通データ線プリ
チャージ信号FPおよび選択線F1,..,Fhの電位
はVssとなっており、すべての共通データ線はVcc
にプリチャージされている。上記のようにデータ線対上
読出した信号をラッチした状態で共通データ線プリチャ
ージ信号FPの電位をVccに立上げたのち、選択線F
1の電位をVccに立上げる。するとスイッチMOSが
オン状態となり、Vccに充電されているデータ線に接
続された共通データ線の電位はVccのままであるが、
Vssに放電されているデータ線に接続された共通デー
タ線の電位は低下する。たとえば、図18に示したよう
にデータ線D1はVccに充電されているのでこれにス
イッチMOS SM1を通じて接続された共通データ線
CD1の電位はVccのままであるが、データ線D1B
はVssに放電されているので共通データ線CD1Bの
電位は低下する。共通データ線CD1Bからの電荷によ
りデータ線D1Bの電位は一時的に上昇するが、センス
アンプSAによって、データ線D1B、共通データ線C
D1BともにVssに放電される。こうして共通データ
線対CD1、CD1Bに読出された信号はCMOSイン
バータを用いたバッファ回路BF1,BF1Bに入力さ
れ電位が反転されてセレクタ出力線TD1B,TD1よ
り出力される。セレクタ出力線は図17の各セレクタ単
位回路にa対ずつ、全部でak対あるのでak bit
の信号が並列に出力されることになる。つぎに図18に
示したように選択線F1の電位をVssに立ち下げてス
イッチMOSをオフした後に、共通データ線プリチャー
ジ信号FPの電位をVssに立ち下げてすべての共通デ
ータ線を再びVccにプリチャージする。その後、上記
と同様にして共通データ線プリチャージ信号FPの電位
をVccに立上げたのち、選択線F2の電位をVccに
立上げると、選択信号線F2が入力されたスイッチMO
S(図では省略してある)を通じて、該スイッチMOS
に接続されたデータ線の情報がセレクタ出力線より読み
出される。以下、同様の動作を行い、選択信号F
3,..,Fhを選択することによりすべてのデータ線
の信号をセレクタ出力線より読み出すことができる。な
お、ここでは選択信号を順番に選択する場合を例に採っ
たが、必要に応じてランダムに選択してもよいのはもち
ろんである。また、1本のワード線を選択して読出した
情報のうち1部の必要なものを出力したら、別のワード
線を選択してもよい。あるいは、1本のワード線を選択
して読出した情報をくりかえしランダムに選択すること
もできる。これらの選択はセレクタに接続される演算回
路の要求に応じて自由に設定することができる。なお、
本実施例では容量に電荷を蓄積するDRAMセルを用い
ているため、通常のDRAMと同じようにセルの電荷が
リークする。このため、セルの電荷が許容値にある間に
リフレッシュ動作を行う必要があり、演算回路の要求に
より、特定のワード線が選択されない時間が長く、リフ
レッシュ動作が必要な場合には選択線をVssとしたま
ま、該当するワード線を選択してリフレッシュ動作を行
なえばよい。あるいは、通常のDRAMでも行われてい
るようにリフレッシュ期間を設けてそのあいだにすべて
のワード線を順番に選択して集中的にリフレッシュ動作
を行うこともできる。ところで、上記の図17、18で
は共通データ線をプリチャージしたが、共通データ線の
容量がデータ線の容量より十分小さい場合には、スイッ
チMOSがオンしたときに、共通データ線の残留電荷に
よりデータ線対の電位が反転してセンスアンプが誤動作
することがないので共通データ線プリチャージMOSを
省略してセレクタ回路をさらに高集積に実現することが
できる。
【0058】以上のように本実施例では、DRAMメモ
リセルを用いてメモリセルアレーの高集積化を図り、さ
らにセレクタのラッチ機能をDRAMセルアレー内の再
書込み用センスアンプを利用して実現した。このため本
発明による情報処理装置を高集積に実現できる。なお、
図17の読みだし回路RSA,書き込み回路WSはメモ
リセル1づつに対して行うものであるが、出力線O,O
B、入力線I,IBを複数組設けて複数のメモリセルに
並列に書き込み、読み出しを行うようにすれば高速の書
き込み、読み出しが可能となる。さらに、図7に示した
ような並列書き込み回路を設けることにより同一ワード
線上のとびとびのメモリセルに並列書き込みを行うこと
もできる。
【0059】図19は、図5、6、10、13、15の
実施例におけるデジタル乗算機MTD1,MTD
2,..,MTDkに好適な並列デジタル乗算器の単位
回路である。日経エレクトロニクス1978年5月29
日号、第76ページから90ページに記載されているよ
うに並列デジタル乗算器は図19の右に示したような入
出力論理関係を持つ単位回路をアレー状に組み合わせて
構成される。並列デジタル乗算器の単位回路は様々なも
のが提案されているが、本発明のようにメモリセルアレ
ーの直下に乗算器を配置する場合にはできるだけ狭いレ
イアウトピッチに収まるものが望ましい。図19に示し
た単位回路の実施例は、16個ずつのnMOSとpMO
Sから構成されており、いわゆる複合ゲートによって図
19の右側に示した論理を実現している。本回路は、構
成するトランジスタが少ないことと入出力信号が対信号
でないためアレー状に組み合わせた場合に基本回路間の
配線数が少ないという特長を持つ。また、CMOS回路
であるため消費電力も小さく、本発明のように多数の乗
算器を高集積に実現する場合に適している。図19の左
側に示した回路の入出力の論理が図19の右側の式のよ
うになることは容易にわかるので説明は省略する。な
お、上記の日経エレクトロニクス1978年5月29日
号、第80ページに記載されているように2の補数を扱
う並列乗算器では単位回路の一部にインバータやオア回
路による補正が必要になる。インバータによる補正は図
17の実施例のようにセレクタからの信号が対信号のも
のを用いれば乗算器内に新たにインバータを設けなくと
も実現できる。また、オア回路による補正は、図19の
右側の式でXとYのアンドの項をオアに変更すればよ
い。そのためには図19の回路でX,Yの入力されるp
MOSを直列接続に、nMOSを並列接続にすればよい
ので、図19の単位回路と同様のサイズで実現できる。
したがって、2の補数を扱う並列乗算器も高集積に実現
できる。
【0060】図20は図12の実施例に好適なDAコン
バータの構成例である。図20においてCBIASは共
通バイアス回路、DAA1,..,DAAkはDAコン
バータである。DAコンバータDAA1,..,DAA
kはメモリセルアレーからデータ線を通じて読出される
a bitのデジタル信号をアナログ値の電流に変換し
て出力線O1,..,Okに出力する。なお、図20に
は示していないが図12のDAB1,..,DABkも
同様にして構成できる。DAコンバータDAA
1,..,DAAkは共通バイアス回路CBIASによ
りバイアス線BL1,..,BLaを通じてバイアスさ
れている。共通バイアス回路CBIASにおいてpMO
SトランジスタMP0は電流源ISOの負荷で、pMO
SトランジスタMP1,..,MPaのゲートをバイア
スしている。pMOSトランジスタMP1,..,MP
aのゲート巾/ゲート長(以下、サイズとする)は等し
く、nMOSトランジスタMN1,..,MNaのサイ
ズは比が1:2:,..,:(2のa−1乗)に設定さ
れている。これらのトランジスタには電流源ISOの電
流を基準とした等しい電流が正電源Vccより流れてい
る。DAコンバータDAA1においてpMOSトランジ
スタMPD0は出力線O1の負荷であり、MNC
1,..,MNCaはスイッチMOSである。スイッチ
MOS MNC1,..,MNCaは、それぞれのゲー
トが、メモリセルアレーのデータ線に接続されているの
でメモリセルアレーからデータ線を通じて読出されるa
bitのデジタル信号に応じてオン、オフする。MN
D1,..,MNDaはサイズの等しいnMOSトラン
ジスタである。図20よりわかるように、nMOSトラ
ンジスタMNiとMNDi(i=1,2,..,a)
は、カレントミラー接続になっており、スイッチMOS
をオンすると,MNDiに電流が流れる。このとき流れ
る電流はカレントミラー比、すなわちnMOSトランジ
スタMNiとMNDiのサイズの比で決まる。したがっ
て、スイッチMOS MNC1,..,MNCaがオン
したときにnMOSトランジスタMND1,..,MN
Daに流れる電流の比は1:(1/2):(1/
4):,..,:(1/(2のa−1乗))すなわち、
(2のa−1乗):,..,4:2:1となり、出力線
O1にはこれらの電流を足しあわせた電流が流れる。し
たがって、メモリセルアレーからデータ線を通じて読出
されるa bitのデジタル信号はアナログ値の電流に
変換されて出力線O1,..,Okに出力されることに
なる。
【0061】本実施例の特長は、共通バイアス回路を用
いることによりDAコンバータDAA1,..,DAA
k内のMOSトランジスタMND1,..,MNDaの
サイズを一定にしたことである。これにより高集積にD
Aコンバータが構成できるので、図12の実施例のよう
にアレー直下に容易に配置することができる。また、共
通のバイアス回路CBIAS内の電流源ISOを基準に
電流値を制御しているため、高精度の変換が可能とな
る。
【0062】なお、図20の実施例ではDAコンバータ
に入力されるデータ線の信号は差動の必要はない。した
がって、メモリセルアレーとしてDRAM,SRAMア
レー等、データ線に差動信号が出力されるものを用いる
場合は、データ線対の片方を入力すればよい。なお、デ
ータ線対の片方のみをnMOSトランジスタMND
1,..,MNDaのゲートに接続するとそのゲート容
量によってデータ線対の容量がアンバランスとなり、動
作に悪影響がでる場合がある。そのようなときにはnM
OSトランジスタMND1,..,MNDaのゲートに
接続しないデータ線にもMND1,..,MNDaと同
じゲート巾、ゲート長のnMOSトランジスタを付加し
てデータ線対の容量のバランスをとればよい。
【0063】これまでは、本発明を用いてニューラルネ
ットワーク情報処理装置を実現するための実施例を示し
てきた。ニューラルネットワークは最適解の探索、ある
いはパターン認識などにもちいられるが、パターン認識
に適用する場合には下記で説明するようなパターン判別
回路を用いるとあいまいな結果にたいしても認識処理を
行うことができる。ニューラルネットワークを用いたパ
ターン認識では、入力されたパターンが、明らかにある
クラスに分類される場合には、出力としてクラスに対応
する期待値を得ることができる。しかし、入力されたパ
ターンが、複数のいずれかのクラスに分類されるか微妙
な場合には、複数のクラスの期待値の中間的なものとな
ることがある。例えば音声認識において入力された音声
が`K`のときには、符号化して入力層に与えた音声波
形に対して出力層に1111というニューロン出力値
(期待値)が得られるように、また、入力が`C`のと
きには、0000という出力値(期待値)を出すように
結合重み値を設定した場合に、`K`、`C`の中間的
な音声波形が与えられると出力層のニューロン出力値
は、0001とか1110など中間的な値を出すことが
ある。このような場合には出力層のニューロン出力値と
`K`に対する期待値1111あるいは`C`に対する
期待値0000との距離が入力音声の`K`あるいは`
C`に対する近さを与える尺度と解釈することができ
る。したがって、出力層のニューロン出力値とクラスの
期待値を比較するパターン判別回路を設けて出力結果と
期待値の距離を求めることによりあいまいな出力が得ら
れた場合にも認識を行うことができる。
【0064】図21は、上記のようなパターン判別回路
の構成例である。図21においてBNYは、a bit
のニューロン出力値を0、1の2値の1 bitに変換
する2値化回路でRGTは変換されたニューロン出力値
を1層分記憶するためのレジスタ、M−PATTERN
はクラスの期待値を記憶するレジスタ、CMPはレジス
タM−PATTERNとレジスタRGTの内容を並列に
比較してハミング距離を出力する回路である。COMP
OUTはCMPの出力結果を参照値と比較して結果を出
力する回路である。比較器CMPは並列に設けた比較回
路CMPUと負荷抵抗RCMPより構成され比較結果変換
回路COMPOUTは差動アンプAMP211,AMP
212,..,AMP21Zより構成されている。比較
器CMPには、レジスタM−PATTERMのデータ線
対 (DTG1,DTGB),..,(DTGr,DT
GrB)およびレジスタRGTのデータ線対 (DR
1,DR1B),..,(DRr,DRrB)が入力さ
れている。本実施例の動作は、以下の通りである。
【0065】まず、ある入力パターンについて得られた
最終層のニューロン出力値を2値化回路BNYに順番に
入力し、しきい値THと比較してTHより大きければ
1、小さければ0に変換してレジスタRGTに蓄える。
最終層のニューロン出力値をすべて2値化したらつぎに
クリア信号ΦCを立ち上げMOSトランジスタQ216
をオンさせて、MOSトランジスタQ215のゲート電
圧を立ち下げておく。つぎにクリア信号ΦCを立ち下げ
てレジスタRGT,M−PATTERNよりデータ線に
信号が読出されデータ線電位がVccあるいは0Vにな
った後、比較器起動信号ΦCMPにより比較器CMPを起
動する。すると比較回路に入力されたデータ線(DTG
1,DR1),(DTG2,DR2),..,(DTG
r,DRr)のそれぞれの組で排他的オア(EXCLU
SIVE−OR)の論理がとられる。その結果、アレー
M−PATTERN側のデータ線とレジスタRGT側の
データ線とで情報が一致している場合にはMOSトラン
ジスタQ215のゲートが低電位のままであるが、一致
していない場合には高電位に遷移する。このため、アレ
ーM−PATTERN側のデータ線とレジスタRGT側
のデータ線とで情報が一致しない比較器CMPUではM
OSトランジスタQ215がオンする。この結果、デー
タ線(DTG1,DR1),(DTG2,DR
2),..,(DTGr,DRr)のそれぞれの組で不
一致の数が多いほど電源VCMPから負荷抵抗RCMP
を通じて接地電極へ向けて電流が流れる。そのため、比
較線COの電位は一致しないものが多いほど低下する。
比較線COは、比較結果変換回路COMPOUTに設け
られた差動アンプAMP211,AMP212,..,
AMP21Zに接続されている。これらの差動アンプの
参照電圧VRC1,VRC2,..,VRCZを適当な
値に設定しておけば、比較線COの電位低下が大きいほ
ど比較結果出力線DCO1,DCO2,..,DCOZ
のうち高電位になる本数が増加する。すなわち、比較結
果変換回路COMPOUTは1種のAD変換器として動
作する。このように本実施例によればレジスタM−PA
TTERNの複数のデータ線に読出された情報とレジス
タRGTの複数のデータ線に読出された情報を比較して
そのハミング距離の大きさを求めることができる。した
がって、各期待値をそれぞれレジスタM−PATTER
Nのメモリセルに記憶しておけば、レジスタRGTに記
憶されたニューロン出力値と比較して、そのニューロン
出力値がどの期待値にどのくらい近いのか知ることがで
きる。したがって、得られたニューロン出力値がクラス
に対応する期待値と一致しないような場合でも高速に認
識処理を行うことができる。
【0066】なお、図21の実施例において2値化回路
を複数設けて2値化の計算を並列に行うことによりさら
に高速に処理を行うこともできる。
【0067】図21の実施例において差動アンプ、2値
化回路の詳細は省略したが、差動アンプはもちろん2値
化回路も単なる比較回路であるため通常の回路技術を用
いて容易に実現できる。
【0068】なお、これまでは、いわゆる1トランジス
タ1キャパシタのDRAMセルを用いた実施例を示した
が、その他のメモリセル例えば、SRAMセルやEEP
ROMセルあるいは強誘電体を用いた不揮発性のDRA
Mメモリセルなどを本発明に用いることももちろんでき
る。さらに、たとえば、結合重み値を記憶する部分など
は情報処理時には頻繁に書き替える必要がないので不揮
発性のメモリセルを、ニューロン出力値を記憶する部分
にはDRAMセルやSRAMセルを用いるなどメモリの
内容によりセルの種類を変えることもできる。
【0069】ところで、1トランジスタ1キャパシタの
DRAMセルなどの微小なメモリセルを用いてメモリ回
路を高集積化すると、微小な配線を用いるためにときに
は1部のメモリセルが動作しないことがある。ニューラ
ルネットワークは、結合重み値を多少変えても機能への
影響が少ないという特長を持つが、ニューロン出力値を
蓄えるメモリセルが動作しないような場合には情報処理
に支障を来すことがある。このような問題を避けるに
は、通常の高集積半導体メモリで使われているような冗
長ワード線あるいは、データ線を設けておいて欠陥のあ
るセルを使わないようにすることもできる。
【0070】また、これまではCMOSを用いた回路を
示したが、さらに高速にするためにバイポーラトランジ
スタを用いても実現できる。さらに、バイポーラトラン
ジスタ、MOSトランジスタに限らず本発明を他のデバ
イスで実現してもよいことはもちろんである。
【0071】これまで、主に階層型のネットワークをを
例にとり説明してきたが、本発明はこれらに限定される
ことなくホップフィールド型のネットワークや様々な型
のネットワークによるニューラルネットワーク情報処理
に適用できる。たとえば、ボルツマンマシンのようなニ
ューロン出力値の更新が確率的に行なわれるようなネッ
トワークも実現できる。ニューラルネットワーク情報処
理(産業図書、麻生英樹著)第27ページに説明されて
いるように、ボルツマンマシンは、ネットワークの形状
はホップフィールド型のネットワークと同様であるが、
ニューロン出力値(0または1)が、ニューロンに入力
されるニューロン出力値と結合重み値の他の積和によっ
て一意に決まらず、確率的に決まるという特長を持って
いる。ニューロン出力値が1となる確率Pは、 P=1/(1+exp(−I/T)) と表せられる。ここで、Iはニューロンに入力されるニ
ューロン出力値と結合重み値の積和で、Tは温度とよば
れるパラメータである。本発明により上記のボルツマン
マシンは容易に実現できる。例えば、図10,12,1
3,15に示した非線形回路Dの出力特性を時間的に変
化させればニューロン出力値を確率的に決めることがで
きる。変化の速度を変えることにより温度Tを変化する
のと同様の効果を得ることができる。
【0072】以上では、主にニューラルネットワーク情
報処理への応用について説明したが、本発明はそれに限
定されることはなく、多数の情報を並列に用いる演算回
路とメモリセルアレーとを同一のチップ上に設けて情報
処理を行なうような装置ならば高い集積度で実現するこ
とができる。たとえば、画像処理を行う演算回路と画像
情報を記憶するメモリセルアレーとを同一のチップ上に
設けて高速でコンパクトな画像処理システムを構築する
こともできる。
【0073】
【発明の効果】これまで述べたように本発明では、メモ
リセルアレーに隣接してセレクタと演算回路を配置し、
セレクタの入力線と出力線のピッチをそれぞれメモリセ
ルのデータ線ピッチと演算回路のピッチに合わせた。
【0074】このため、メモリアレーのデータ線のピッ
チと演算回路の入力線のピッチが異なる場合においても
セレクタに隣接してメモリセルアレーと演算回路を配置
することができる。例えば、データ線のピッチが大変小
さいDRAMなどのメモリアレーと入力線のピッチが比
較的大きいデジタル演算回路などを長いバスを用いずに
セレクタを介して配置することも可能となる。
【0075】したがって、従来問題となっていたバス本
数の増加による占有領域の増大、配線抵抗の増大による
信号遅延あるいはバスの長さの違いによる信号遅延の不
均一などが解決される。
【図面の簡単な説明】
【図1】本発明を用いた半導体チップの構成の一実施例
を示す図。
【図2】セレクタ、演算回路の構成の一実施例を示す
図。
【図3】セレクタ単位回路の構成の一実施例を示す図。
【図4】メモリセルアレーのデータ線を分割した場合の
構成の一実施例を示す図。
【図5】ベクトルとスカラの乗算を行うプロセッサの構
成の一実施例を示す図。
【図6】ベクトルとスカラの乗算を行うプロセッサの構
成の一実施例を示す図。
【図7】図5のプロセッサに適した並列書き込み回路の
構成の一実施例を示す図。
【図8】階層型ニューラルネットワークの構成を示す
図。
【図9】ホップフィールド型ニューラルネットワークの
構成を示す図。
【図10】ニューロプロセッサの構成の一実施例を示す
図。
【図11】図10の構成の計算アルゴリズムの一実施例
を示す図。
【図12】ニューロプロセッサの構成の一実施例を示す
図。
【図13】ニューロプロセッサの構成の一実施例を示す
図。
【図14】図13の構成の計算アルゴリズムの一実施例
を示す図。
【図15】ニューロプロセッサの構成の一実施例を示す
図。
【図16】図15の構成の計算アルゴリズムの一実施例
を示す図。
【図17】DRAMメモリセルアレーに好適なセレクタ
の一実施例を示す図。
【図18】図17の動作波形の一実施例を示す波形図。
【図19】デジタル乗算器の単位回路の一実施例を示す
回路図。
【図20】DAコンバータの一実施例を示す回路図。
【図21】パターン判別回路の構成の一実施例を示す回
路図。
【図22】従来のニューロプロセッサの構成
【符号の説明】
ST,STA,STB,STC…セレクタ、PE,PE
A,PEB…演算回路、A,A1,A2,..,AJ,
B,M…メモリセルアレー、CTL…制御回路、IO…
入出力回路、LAT…ラッチ回路、SW,SW1,SW
2,..,SWk…スイッチ、D…非線形演算回路、A
CC…アキュムレータ、AD…ADコンバータ、RA,
RGT,M−PATTERN…レジスタ、DSB…ディ
ストリビュータ、PR…プリチャージ回路、SA…セン
スアンプ、RSA…読み出しアンプ、WS…書込み回
路、CBIAS…共通バイアス回路、DAA1,..,
DAAk…DAコンバータ、BNY…2値化回路、CM
P…比較器、CMPOUT…比較結果変換回路。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 青木 正和 東京都国分寺市東恋ケ窪1丁目280番地 株式会社日立製作所中央研究所内 (56)参考文献 特開 昭62−156349(JP,A) 特開 平1−175251(JP,A) 特開 平1−289138(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 9/30 - 9/38 G06F 15/16 - 15/177 G06F 15/78 G11C 11/34 H01L 27/04 H01L 27/10

Claims (12)

    (57)【特許請求の範囲】
  1. 【請求項1】複数のワード線と複数のデータ線との交差
    部に設けられた複数のメモリセルを有するメモリセルア
    レーと、 上記メモリセルアレーに隣接して設置され、かつ上記複
    数のデータ線に結合される複数の第1ノードを有するセ
    レクタと、 該セレクタに隣接して上記メモリセルアレーと反対側に
    設置され、かつ上記セレクタの複数の第2ノードに結合
    される複数の第3ノードを有する演算回路を具備し、 上記セレクタの上記複数の第1ノードのピッチは上記複
    数のデータ線のデータ線間ピッチに一致され、上記セレ
    クタの上記複数の第2ノードのピッチは上記演算回路の
    前記複数の第3ノードのピッチに一致され、 上記セレクタは、上記複数の第1ノードに入力される信
    号を選択して上記複数の第2ノードから出力し、 上記演算回路は、上記第2ノードから出力された信号を
    対応する上記複数の第3ノードに受けて複数の演算を並
    列して行うことを特徴とする情報処理装置。
  2. 【請求項2】請求項1において、 上記セレクタは、上記複数の第1ノードに対応して設け
    らた複数の信号保持手段と、上記複数の信号保持手段の
    うち所定のものを選択して上記複数の第2ノードに結合
    する複数のスイッチ手段を有することを特徴とする情報
    処理装置。
  3. 【請求項3】請求項2において、 上記メモリセルアレーの1回の読み出し動作によって上
    記複数のデータ線上に読出された情報は、前記複数の信
    号保持手段に保持され、 上記セレクタは、上記複数の信号保持手段に保持された
    情報を前記スイッチ手段により複数回に分けて前記第2
    ノードに伝達することを特徴とする情報処理装置。
  4. 【請求項4】請求項1において、 上記セレクタは、上記複数の第1ノードに対応する数の
    複数のスイッチ手段を有し、 上記演算回路は、上記複数の第3ノードに対応する数の
    複数の要素演算回路を有し、 上記複数のスイッチ手段は、複数のスイッチ手段群に分
    割され、 上記セレクタは、上記複数のスイッチ手段群の中でそれ
    ぞれ一つのスイッチ手段により第1ノードと第2ノード
    の結合経路を形成することを特徴とする情報処理装置。
  5. 【請求項5】請求項1から4のいずれかににおいて、 上記複数の第1ノードの数は、上記複数の第2ノードの
    数の整数倍であることを特徴とする情報処理装置。
  6. 【請求項6】請求項1から5のいずれかにおいて、 上記複数のワード線の一つに接続され上記演算回路の動
    作時に並列に上記演算回路に入力されるべき情報が読み
    出される複数のメモリセルは、情報書き込み時にそれぞ
    れに所定のデータが並列に書き込まれることを特徴とす
    る情報処理装置。
  7. 【請求項7】請求項1から5のいずれかにおいて、上記
    複数のメモリセルのそれぞれはダイナミック形メモリセ
    ルであることを特徴とする情報処理装置。
  8. 【請求項8】複数のメモリセルと、上記複数のメモリセ
    ルの情報を入出力するための複数の入出力ノードとを有
    するメモリアレーと、 上記複数の出力ノードに結合される複数の第1ノードを
    有するセレクタと、 上記複数の第2ノードに結合される複数の第3ノードを
    有する演算回路とを具備し、 上記セレクタは、上記メモリアレーと上記演算回路の間
    に設けられ、 上記セレクタの上記複数の第1ノードのピッチは上記複
    数の出力ノードのピッチに一致し、上記セレクタの上記
    複数の第2ノードのピッチは上記複数の第3ノードのピ
    ッチに一致し、 上記セレクタは、上記複数の第1ノードに入力される信
    号を選択して上記複数の第2ノードから出力し、 上記演算回路は、上記第2ノードから出力された信号を
    対応する上記複数の第3ノードに受けて複数の演算を並
    列して行うことを特徴とする情報処理装置。
  9. 【請求項9】請求項8において、 上記複数の第1ノードの数は、上記複数の第2ノードの
    数より多いことを特徴とする情報処理装置。
  10. 【請求項10】請求項8又は9において、 上記セレクタは、上記複数の第1ノードに対応して設け
    らた複数の信号保持手段と、上記複数の信号保持手段の
    うち所定のものを選択して上記複数の第2ノードに結合
    する複数のスイッチ手段を有し、 上記メモリセルアレーの1回の読み出し動作によって上
    記複数の出力ノードに読出された情報は、前記複数の信
    号保持手段に保持され、 上記セレクタは、上記複数の信号保持手段に保持された
    情報を前記スイッチ手段により複数回に分けて上記第2
    ノードに伝達することを特徴とする情報処理装置。
  11. 【請求項11】請求項1から10のいずれかにおいて、 上記情報処理装置は、1つの半導体チップ上に形成され
    ることを特徴とする情報処理装置。
  12. 【請求項12】請求項1から11のいずれかにおいて、 上記演算回路は、上記複数の第3ノードに入力された信
    号を用いて複数の積和演算を並列して行うことを特徴と
    する情報処理装置。
JP28597491A 1991-10-31 1991-10-31 情報処理装置 Expired - Fee Related JP3182813B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP28597491A JP3182813B2 (ja) 1991-10-31 1991-10-31 情報処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP28597491A JP3182813B2 (ja) 1991-10-31 1991-10-31 情報処理装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2000139397A Division JP2001034735A (ja) 2000-01-01 2000-05-08 情報処理装置

Publications (2)

Publication Number Publication Date
JPH0683622A JPH0683622A (ja) 1994-03-25
JP3182813B2 true JP3182813B2 (ja) 2001-07-03

Family

ID=17698384

Family Applications (1)

Application Number Title Priority Date Filing Date
JP28597491A Expired - Fee Related JP3182813B2 (ja) 1991-10-31 1991-10-31 情報処理装置

Country Status (1)

Country Link
JP (1) JP3182813B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5694143A (en) 1994-06-02 1997-12-02 Accelerix Limited Single chip frame buffer and graphics accelerator
JP4097576B2 (ja) 2003-07-18 2008-06-11 ゴムノイナキ株式会社 コンベアにおけるフリクションローラ
JP6034699B2 (ja) * 2013-01-07 2016-11-30 ルネサスエレクトロニクス株式会社 半導体装置及びそのコマンド制御方法
WO2023162632A1 (ja) * 2022-02-28 2023-08-31 ヌヴォトンテクノロジージャパン株式会社 ニューラルネットワーク演算回路、その制御回路、および、その制御方法

Also Published As

Publication number Publication date
JPH0683622A (ja) 1994-03-25

Similar Documents

Publication Publication Date Title
US7043466B2 (en) Neural network processing system using semiconductor memories
JP3771617B2 (ja) 多重レベルドラム検出及び復元の方法
US5475794A (en) Semiconductor neural network and operating method thereof
US11302392B2 (en) Analog-to-digital converter and neuromorphic computing device including the same
US20200202203A1 (en) Neural network computation circuit including semiconductor storage elements
US10783963B1 (en) In-memory computation device with inter-page and intra-page data circuits
JP2001034735A (ja) 情報処理装置
JPH0467259A (ja) 情報処理装置
Watanabe et al. A single 1.5-V digital chip for a 10/sup 6/synapse neural network
JP3353786B2 (ja) 情報処理装置
JP3182813B2 (ja) 情報処理装置
JP4177131B2 (ja) 論理演算回路、論理演算装置および論理演算方法
He et al. Rvcomp: Analog variation compensation for rram-based in-memory computing
US20230005529A1 (en) Neuromorphic device and electronic device including the same
TW202203053A (zh) 記憶體電路及其操作方法
KR20180089701A (ko) 내부 연산 구조를 포함하는 mtj 메모리 장치
US5274747A (en) Neuron unit for processing digital information
US20240028297A1 (en) Semiconductor device performing a multiplication and accumulation operation
US5295091A (en) Analog implementation of a pattern classifier
US20220156556A1 (en) Spiking neural network circuit
TWI815321B (zh) 具有相關記憶體陣列的神經網路引擎
US11881243B2 (en) Semiconductor device including a memory array performing a multiplication and accumulation (MAC) operation using capacitors
CN112951294B (zh) 计算设备以及计算方法
Hoskins et al. A vlsi implementation of multi-layer neural network with ternary activation functions and limited integer weights
JPH1091605A (ja) 情報処理装置

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees