JP3459017B2 - 半導体装置 - Google Patents
半導体装置Info
- Publication number
- JP3459017B2 JP3459017B2 JP03102093A JP3102093A JP3459017B2 JP 3459017 B2 JP3459017 B2 JP 3459017B2 JP 03102093 A JP03102093 A JP 03102093A JP 3102093 A JP3102093 A JP 3102093A JP 3459017 B2 JP3459017 B2 JP 3459017B2
- Authority
- JP
- Japan
- Prior art keywords
- signal
- input
- circuit
- semiconductor device
- inverter
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/22—Arrangements for sorting or merging computer data on continuous record carriers, e.g. tape, drum, disc
- G06F7/24—Sorting, i.e. extracting data from one or more carriers, rearranging the data in numerical or other ordered sequence, and rerecording the sorted data on the original carrier or on a different carrier or set of carriers sorting methods in general
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
- G06N3/065—Analogue means
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Biophysics (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Computing Systems (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Neurology (AREA)
- Computer Hardware Design (AREA)
- Logic Circuits (AREA)
- Semiconductor Memories (AREA)
Description
【0001】
【産業上の利用分野】本発明は、半導体装置に係り、特
に多数の入力データをその数値の大きさに関して順番付
けをするいわゆるソーティングをハードウェアを用いて
高速に行うことのできる高機能半導体集積回路を提供す
るものである。
に多数の入力データをその数値の大きさに関して順番付
けをするいわゆるソーティングをハードウェアを用いて
高速に行うことのできる高機能半導体集積回路を提供す
るものである。
【0002】
【背景技術】情報処理や自動制御の分野では、数値で表
現されたデータを比較して、その大小を判別する事が非
常に重要な役割を果たしている。
現されたデータを比較して、その大小を判別する事が非
常に重要な役割を果たしている。
【0003】例えば、2つの数のうち大きなほうをみつ
けることや、複数の入力データの中から大きい順番にい
くつかの値を選び出す事、あるいは複数のデータをその
数値の大きな順番に並びかえるいわゆるソーティング等
々である。
けることや、複数の入力データの中から大きい順番にい
くつかの値を選び出す事、あるいは複数のデータをその
数値の大きな順番に並びかえるいわゆるソーティング等
々である。
【0004】このような操作は、通常計算機を用いて行
うことができるが、数多くの演算を必要とするため、時
間がかかり実時間制御に用いることは非常に困難であっ
た。特にロボット等の制御に用いる場合には、ロボット
にとりつけて計算する必要があるため、小さなLSIチ
ップで実現することが要求される。
うことができるが、数多くの演算を必要とするため、時
間がかかり実時間制御に用いることは非常に困難であっ
た。特にロボット等の制御に用いる場合には、ロボット
にとりつけて計算する必要があるため、小さなLSIチ
ップで実現することが要求される。
【0005】そこで、マイクロプロセッサを用いて、そ
のプログラミングで行おうとすると膨大な時間がかかっ
てしまい実用化はほとんど不可能である。そこでハード
ウェアで直接ソーティングを行う回路を作ろうと研究・
開発が行われているが、回路実現のためには数多くの素
子を必要とし、且つ何段もの回路を通して演算を行うた
め、小型で高速演算可能なLSIはまだ実現されていな
い。
のプログラミングで行おうとすると膨大な時間がかかっ
てしまい実用化はほとんど不可能である。そこでハード
ウェアで直接ソーティングを行う回路を作ろうと研究・
開発が行われているが、回路実現のためには数多くの素
子を必要とし、且つ何段もの回路を通して演算を行うた
め、小型で高速演算可能なLSIはまだ実現されていな
い。
【0006】
【発明が解決しようとする課題】そこで本発明の目的
は、簡単な回路を用いて高速に複数のデータの大小比較
の演算および大きさに関する順序付けを行うことのでき
る半導体装置を提供することを目的としている。
は、簡単な回路を用いて高速に複数のデータの大小比較
の演算および大きさに関する順序付けを行うことのでき
る半導体装置を提供することを目的としている。
【0007】
【課題を解決するための手段】本発明は、基体上に一導
電型の半導体領域を有し、この領域内に設けられた反対
導電型のソース及びドレイン領域を有し、前記ソース及
びドレイン領域を隔てる領域に絶縁膜を介して設けられ
た電位的にフローティング状態にあるフローティングゲ
ート電極を有し、前記フローティングゲート電極と絶縁
膜を介して容量結合する複数の入力ゲート電極を有する
トランジスタを用いて構成された複数のインバータと、
少なくとも2以上の前記インバータに対し、それぞれの
インバータが有する前記複数の入力ゲート電極のうちの
一つの電極を介して共通の第一の信号電圧を加える手段
と、前記少なくとも2以上のインバータに対し、それぞ
れのインバータが有する前記複数の入力ゲート電極のう
ちの他の入力ゲート電極を介して各々所定の第二の信号
電圧を加える手段と、前記第一の信号電圧の時間変化に
よって前記少なくとも2以上のインバータの少なくとも
1つのインバータにおいて生じる出力電圧の変化を時間
遅れを発生させて伝達する遅延回路と、前記遅延回路に
より伝達された信号によりオン・オフが制御されるスイ
ッチと、このスイッチのオン・オフにより信号を取り込
む記憶回路と、前記インバータで生じる出力電圧信号に
対し所定の論理演算を行う手段と、を有し、前記論理演
算の結果を前記記憶回路中に記憶するようにしたことを
特徴とする。
電型の半導体領域を有し、この領域内に設けられた反対
導電型のソース及びドレイン領域を有し、前記ソース及
びドレイン領域を隔てる領域に絶縁膜を介して設けられ
た電位的にフローティング状態にあるフローティングゲ
ート電極を有し、前記フローティングゲート電極と絶縁
膜を介して容量結合する複数の入力ゲート電極を有する
トランジスタを用いて構成された複数のインバータと、
少なくとも2以上の前記インバータに対し、それぞれの
インバータが有する前記複数の入力ゲート電極のうちの
一つの電極を介して共通の第一の信号電圧を加える手段
と、前記少なくとも2以上のインバータに対し、それぞ
れのインバータが有する前記複数の入力ゲート電極のう
ちの他の入力ゲート電極を介して各々所定の第二の信号
電圧を加える手段と、前記第一の信号電圧の時間変化に
よって前記少なくとも2以上のインバータの少なくとも
1つのインバータにおいて生じる出力電圧の変化を時間
遅れを発生させて伝達する遅延回路と、前記遅延回路に
より伝達された信号によりオン・オフが制御されるスイ
ッチと、このスイッチのオン・オフにより信号を取り込
む記憶回路と、前記インバータで生じる出力電圧信号に
対し所定の論理演算を行う手段と、を有し、前記論理演
算の結果を前記記憶回路中に記憶するようにしたことを
特徴とする。
【0008】
【実施例】以下に実施例を上げ本発明を詳細に説明する
が、本発明がこれら実施例に限定されるものではないこ
とはいうまでもない。
が、本発明がこれら実施例に限定されるものではないこ
とはいうまでもない。
【0009】(実施例1)本発明の第1の実施例を、図
1の回路を用いて説明する。
1の回路を用いて説明する。
【0010】図において103、123はNチャネルニ
ューロンMOSトランジスタ、102、122はPチャ
ネルニューロンMOSトランジスタである。ニューロン
MOSトランジスタは、脳を構成する神経細胞であるニ
ューロンと同様の働きをするトランジスタであり、ニュ
ーロンコンピュータを実現するために発明された全く新
しい概念のMOS型トランジスタである。(発明者:柴
田直、大見忠弘、特開平3−6679号公報)。以下、
このトランジスタをνMOSと略称する。
ューロンMOSトランジスタ、102、122はPチャ
ネルニューロンMOSトランジスタである。ニューロン
MOSトランジスタは、脳を構成する神経細胞であるニ
ューロンと同様の働きをするトランジスタであり、ニュ
ーロンコンピュータを実現するために発明された全く新
しい概念のMOS型トランジスタである。(発明者:柴
田直、大見忠弘、特開平3−6679号公報)。以下、
このトランジスタをνMOSと略称する。
【0011】このνMOSは、非常に強力な機能を有す
るトランジスタであり、本発明は、このνMOSを基本
素子として用いたところに大きな特徴がある。νMOS
の構造、及び機能については、別途図4を用いて説明す
る。
るトランジスタであり、本発明は、このνMOSを基本
素子として用いたところに大きな特徴がある。νMOS
の構造、及び機能については、別途図4を用いて説明す
る。
【0012】NチャネルνMOS(N−νMOSと略)
及びPチャネルνMOS(P−νMOSと略)は各々、
ドレインが互いに接続されており、ニューロンMOSを
用いたCMOS構成のインバータ回路となっている。こ
れをComplimentary νMOSインバー
タ、又は略してC−νMOSインバータと呼ぶ。10
1、121はフローティングゲートであり、それぞれν
MOS102、103及び122、123に共通のゲー
トとなっている。104、124、151はそれぞれ入
力ゲートであり、C1、C2、はそれぞれ入力ゲート15
1、104とフローティングゲート101との間の容量
結合係数でありこれは151、124とフローティング
ゲート121との間の容量結合係数にもなっている。
及びPチャネルνMOS(P−νMOSと略)は各々、
ドレインが互いに接続されており、ニューロンMOSを
用いたCMOS構成のインバータ回路となっている。こ
れをComplimentary νMOSインバー
タ、又は略してC−νMOSインバータと呼ぶ。10
1、121はフローティングゲートであり、それぞれν
MOS102、103及び122、123に共通のゲー
トとなっている。104、124、151はそれぞれ入
力ゲートであり、C1、C2、はそれぞれ入力ゲート15
1、104とフローティングゲート101との間の容量
結合係数でありこれは151、124とフローティング
ゲート121との間の容量結合係数にもなっている。
【0013】105、106、107、108、10
9、125、126、127、128、129は通常の
インバータ回路であり、112、113、132、13
3はNMOSトランジスタでありスイッチの動作をして
いる。
9、125、126、127、128、129は通常の
インバータ回路であり、112、113、132、13
3はNMOSトランジスタでありスイッチの動作をして
いる。
【0014】この回路においてインバータ106、12
6は入力信号を反転して出力するという通常の機能の他
に入力信号が入ってから反転した出力信号を出すまでの
時間を十分に遅らせるといった信号伝達の遅延を行って
いる。
6は入力信号を反転して出力するという通常の機能の他
に入力信号が入ってから反転した出力信号を出すまでの
時間を十分に遅らせるといった信号伝達の遅延を行って
いる。
【0015】この回路には、VR、VINA、VINBの3つ
の信号電圧が入力されており、VRは例えば0VからV
DDまで経時変化する掃引電圧であり2つのC−νMOS
インバータ116、136のゲート151に共通の入力
電圧である。VINA、VINBはそれぞれの回路に入力され
る任意の信号電圧である。161はインバータ105の
出力VA2とインバータ125の出力VB2の排他的論理和
をとる回路である。つまり、VA2とVB2の値が一致した
ときには”0”を一致しなければ”1”を出力する回路
である。
の信号電圧が入力されており、VRは例えば0VからV
DDまで経時変化する掃引電圧であり2つのC−νMOS
インバータ116、136のゲート151に共通の入力
電圧である。VINA、VINBはそれぞれの回路に入力され
る任意の信号電圧である。161はインバータ105の
出力VA2とインバータ125の出力VB2の排他的論理和
をとる回路である。つまり、VA2とVB2の値が一致した
ときには”0”を一致しなければ”1”を出力する回路
である。
【0016】この回路は、掃引電圧VRを0VからVDD
まで掃引する事によりVINAとVINBの大小比較の結果が
インバータ109の出力VAOUTと129の出力VBOUTに
出力される回路である。例えば、VINAの方がVINBより
大きければVRを0VからVD Dまで掃引したときにV
AOUTはVDD即ち”1”に、VBOUTは0V即ち”0”に固
定される回路である。
まで掃引する事によりVINAとVINBの大小比較の結果が
インバータ109の出力VAOUTと129の出力VBOUTに
出力される回路である。例えば、VINAの方がVINBより
大きければVRを0VからVD Dまで掃引したときにV
AOUTはVDD即ち”1”に、VBOUTは0V即ち”0”に固
定される回路である。
【0017】図1の回路動作を説明するために、まず最
初にνMOSの構造と動作原理について説明する。図4
は4入力のNチャネルνMOSトランジスタ(N−νM
OS)の断面構造の一例を示したものであり、201は
例えばP型のシリコン基板、202、203はN+拡散
層で形成されたソース及びドレイン、204はソース・
ドレイン間のチャネル領域205上に設けられたゲート
絶縁膜(例えばSiO 2膜)206は電気的に絶縁され
電位的にフローティングの状態にあるフローティングゲ
ート電極、207は例えばSiO2等の絶縁膜、208
a、208b、208c、208dは入力ゲートで電極
である。図5はνMOS動作を解析するために さらに
簡略化した図面である。各入力ゲート電極とフローティ
ングゲート間の容量結合係数を図のようにC1、C2、C
3、C4、フローティングゲートとシリコン基板間の容量
結合係数をC0とすると、フローティングゲートの電位
ΦFは次式で与えられる。 ΦF=(1/CTOT)(C1V1+C2V2+C3V3+C4V4) 但し、CTOT≡C0+C1+C2+C3+C4 V1、V2、V3、V4はそれぞれ入力ゲート208a、2
08b、208c、208dに印加されている電圧であ
り、シリコン基板の電位は0V、すなわちアースされて
いるとした。
初にνMOSの構造と動作原理について説明する。図4
は4入力のNチャネルνMOSトランジスタ(N−νM
OS)の断面構造の一例を示したものであり、201は
例えばP型のシリコン基板、202、203はN+拡散
層で形成されたソース及びドレイン、204はソース・
ドレイン間のチャネル領域205上に設けられたゲート
絶縁膜(例えばSiO 2膜)206は電気的に絶縁され
電位的にフローティングの状態にあるフローティングゲ
ート電極、207は例えばSiO2等の絶縁膜、208
a、208b、208c、208dは入力ゲートで電極
である。図5はνMOS動作を解析するために さらに
簡略化した図面である。各入力ゲート電極とフローティ
ングゲート間の容量結合係数を図のようにC1、C2、C
3、C4、フローティングゲートとシリコン基板間の容量
結合係数をC0とすると、フローティングゲートの電位
ΦFは次式で与えられる。 ΦF=(1/CTOT)(C1V1+C2V2+C3V3+C4V4) 但し、CTOT≡C0+C1+C2+C3+C4 V1、V2、V3、V4はそれぞれ入力ゲート208a、2
08b、208c、208dに印加されている電圧であ
り、シリコン基板の電位は0V、すなわちアースされて
いるとした。
【0018】今、ソース202の電位を0Vとする。即
ちすべての電極の電位をソース基準として測定した値と
する。そうすれば、図4に示したνMOSは、フローテ
ィングゲート206を通常のゲート電極とみなせば通常
のNチャネルMOSトランジスタと同じであり、そのゲ
ート電位ΦFがしきい値(VTH *)より大となるとソース
202、ドレイン203間の領域205に電子のチャネ
ル(Nチャネル)が形成され、ソース・ドレイン間が電
気的に接続される。即ち、 (1/CTOT)(C1V1+C2V2+C3V3+C4V4)>
VTH * の条件が満たされたときνMOSは導通(ON)するの
である。
ちすべての電極の電位をソース基準として測定した値と
する。そうすれば、図4に示したνMOSは、フローテ
ィングゲート206を通常のゲート電極とみなせば通常
のNチャネルMOSトランジスタと同じであり、そのゲ
ート電位ΦFがしきい値(VTH *)より大となるとソース
202、ドレイン203間の領域205に電子のチャネ
ル(Nチャネル)が形成され、ソース・ドレイン間が電
気的に接続される。即ち、 (1/CTOT)(C1V1+C2V2+C3V3+C4V4)>
VTH * の条件が満たされたときνMOSは導通(ON)するの
である。
【0019】以上はNチャネルνMOSトランジスタに
ついての説明であるが、図4においてソース202、ド
レイン203及び基板201をすべて反対導電型にした
デバイスも存在する。即ち、基板はN型であり、ソース
・ドレインがP+拡散層で形成されたνMOSであり、
これをPチャネルMOSトランジスタ(P−νMOS)
と呼ぶ。
ついての説明であるが、図4においてソース202、ド
レイン203及び基板201をすべて反対導電型にした
デバイスも存在する。即ち、基板はN型であり、ソース
・ドレインがP+拡散層で形成されたνMOSであり、
これをPチャネルMOSトランジスタ(P−νMOS)
と呼ぶ。
【0020】次に図1のC−νMOSインバータ116
および136の動作について説明する。フローティング
ゲート101の電位をΦFA、121の電位をΦFBとする
と、 となり、ΦFA、ΦFBがフローティングゲートからみたイ
ンバータの反転電圧VTH *(簡単のためにインバータ1
16、136で等しいと仮定する)より大となったと
き、即ち が満たされたとき、インバータ116、136はオンし
て、その出力が反転する。 今、説明を簡単にするため
C0<<C1+C2の条件が満たされており、C0が無視で
きると仮定する。即ち、CTOT=C1+C2 と仮定す
る。C0がC1+C2と同程度の値をとっても以下の説明
は全く同様に成り立つことは言うまでもない。
および136の動作について説明する。フローティング
ゲート101の電位をΦFA、121の電位をΦFBとする
と、 となり、ΦFA、ΦFBがフローティングゲートからみたイ
ンバータの反転電圧VTH *(簡単のためにインバータ1
16、136で等しいと仮定する)より大となったと
き、即ち が満たされたとき、インバータ116、136はオンし
て、その出力が反転する。 今、説明を簡単にするため
C0<<C1+C2の条件が満たされており、C0が無視で
きると仮定する。即ち、CTOT=C1+C2 と仮定す
る。C0がC1+C2と同程度の値をとっても以下の説明
は全く同様に成り立つことは言うまでもない。
【0021】図1の回路では、例えばC1=C2と設計さ
れている。またVTH *の値は例えば、VDD/2即ち、V
DDを5Vとして2.5Vに設定されている。これらの値
も必要に応じて、その他の値に変更しても良いことは言
うまでもない。
れている。またVTH *の値は例えば、VDD/2即ち、V
DDを5Vとして2.5Vに設定されている。これらの値
も必要に応じて、その他の値に変更しても良いことは言
うまでもない。
【0022】以上の条件下では、C−νMOSインバー
タ116、136がオンする条件は、(3)、(4)式
より VR+VINA≧5 [V] (5) VR+VINB≧5 [V] (6) となる。
タ116、136がオンする条件は、(3)、(4)式
より VR+VINA≧5 [V] (5) VR+VINB≧5 [V] (6) となる。
【0023】今、例えば、VINA=3V、VINB=4Vが
入力されており、VRは0Vであったと仮定する。
(5)、(6)式は満たされていないから、インバータ
116、136はオフで、その出力電圧VA1、VB1は5
Vとなっている。
入力されており、VRは0Vであったと仮定する。
(5)、(6)式は満たされていないから、インバータ
116、136はオフで、その出力電圧VA1、VB1は5
Vとなっている。
【0024】従って、VA2=0V、VB2=0Vであり、
その排他的論路和をとった結果VCは0Vとなる。ま
た、VA3=5V、VA4=0V、VB3=5V、VB4=0V
となるので、NMOS113、133はオフ、NMOS
112、132はオンとなっている。よって、信号VC
=0VはNMOS112、132を通ってそれぞれイン
バータ108、128に入力している。VCはそれぞれ
インバータ108、128で反転され、さらにそれぞれ
インバータ109、129で再び反転されるので出力V
AOUTおよびVBOUTはVCと同値の情報を持ちそれぞれ0
Vとなる。つまり、この状態においてはVAOUT、VBOUT
はVCに同期して変化しVAOUT=VC、VBOUT=VCが成
り立っている。
その排他的論路和をとった結果VCは0Vとなる。ま
た、VA3=5V、VA4=0V、VB3=5V、VB4=0V
となるので、NMOS113、133はオフ、NMOS
112、132はオンとなっている。よって、信号VC
=0VはNMOS112、132を通ってそれぞれイン
バータ108、128に入力している。VCはそれぞれ
インバータ108、128で反転され、さらにそれぞれ
インバータ109、129で再び反転されるので出力V
AOUTおよびVBOUTはVCと同値の情報を持ちそれぞれ0
Vとなる。つまり、この状態においてはVAOUT、VBOUT
はVCに同期して変化しVAOUT=VC、VBOUT=VCが成
り立っている。
【0025】VRが時間とともに変動しているとする
と、VR≧2Vとなったときに(5)式が成り立ち、イ
ンバータ116がオンしてVA1は5Vから0Vに向かっ
て変化を始める。
と、VR≧2Vとなったときに(5)式が成り立ち、イ
ンバータ116がオンしてVA1は5Vから0Vに向かっ
て変化を始める。
【0026】この変化は、インバータ105によって増
幅されVA2は急速に0Vから5Vに立ち上がる。
幅されVA2は急速に0Vから5Vに立ち上がる。
【0027】インバータ106、126は入力信号を反
転して出力するという通常の機能の他に入力信号が入っ
てから反転した出力信号を出すまでの時間を十分に遅ら
せるといった信号伝達の遅延を行っている。
転して出力するという通常の機能の他に入力信号が入っ
てから反転した出力信号を出すまでの時間を十分に遅ら
せるといった信号伝達の遅延を行っている。
【0028】この機能を実現する方法はいろいろ考えら
れる。例えば、インバータ106および126のゲート
長を長くしたり、あるいはゲート幅を短くすることによ
りインバータの電流駆動能力を小さくすることで実現で
きる。またはインバータ106および126の出力側に
接続されている容量(例えばインバータ107、127
の入力ゲート容量)を通常よりも大きくとることによっ
て実現される。これ以外にも、遅延を発生したいインバ
ータ(ここではインバータ106、126)の閾値を大
きくすることによっても実現できる。
れる。例えば、インバータ106および126のゲート
長を長くしたり、あるいはゲート幅を短くすることによ
りインバータの電流駆動能力を小さくすることで実現で
きる。またはインバータ106および126の出力側に
接続されている容量(例えばインバータ107、127
の入力ゲート容量)を通常よりも大きくとることによっ
て実現される。これ以外にも、遅延を発生したいインバ
ータ(ここではインバータ106、126)の閾値を大
きくすることによっても実現できる。
【0029】VA2の電圧の変化はインバータ106によ
り少し遅れてインバータ107に伝わるために、VA3、
VA4はνMOSインバータ116が反転してもしばらく
は同じ電位を保ちVA3=5V、VA4=0Vとなっている
ために、NMOS112、113もしばらくの間は同じ
状態(NMOS112はオン、113はオフの状態)を
保っている。
り少し遅れてインバータ107に伝わるために、VA3、
VA4はνMOSインバータ116が反転してもしばらく
は同じ電位を保ちVA3=5V、VA4=0Vとなっている
ために、NMOS112、113もしばらくの間は同じ
状態(NMOS112はオン、113はオフの状態)を
保っている。
【0030】排他的論理和をとる161の出力VCはV
A2の変化を受けて直ちに0Vから5Vに立ち上がる。
A2の変化を受けて直ちに0Vから5Vに立ち上がる。
【0031】この時、NMOS112はまだオン状態で
あるのでVCの電圧はNMOS112を通りインバータ
108に入力され、その結果、VAOUTも0Vから5Vに
立ち上がる。
あるのでVCの電圧はNMOS112を通りインバータ
108に入力され、その結果、VAOUTも0Vから5Vに
立ち上がる。
【0032】その後、VA3は5Vから0V、VA4は0V
から5Vに変化し、これにともない、自動的にインバー
タ109の5Vの出力がNMOS113を通してインバ
ータ108の入力に正帰還される。これはいわゆるフリ
ップ・フロップ回路で、この回路は、言うまでもなくV
AOUT=5Vを記憶する回路である。
から5Vに変化し、これにともない、自動的にインバー
タ109の5Vの出力がNMOS113を通してインバ
ータ108の入力に正帰還される。これはいわゆるフリ
ップ・フロップ回路で、この回路は、言うまでもなくV
AOUT=5Vを記憶する回路である。
【0033】この状態においては、NMOS112はオ
フとなっているためにフリップ・フロップ回路に記憶さ
れた情報はその後VCが変化してもそれに同期して変化
することはない。
フとなっているためにフリップ・フロップ回路に記憶さ
れた情報はその後VCが変化してもそれに同期して変化
することはない。
【0034】他方、νMOS136は反転していないの
で、NMOS132はオン、133はオフの状態を保っ
ており、VBOUTはVCの変化にともなって、0Vから5
Vに変化するが、正帰還ループが形成されることはなく
VCの変化はそのままVBOUTの変化として反映される。
で、NMOS132はオン、133はオフの状態を保っ
ており、VBOUTはVCの変化にともなって、0Vから5
Vに変化するが、正帰還ループが形成されることはなく
VCの変化はそのままVBOUTの変化として反映される。
【0035】その後、VR≧3Vとなったときに(6)
式が成り立ち、インバータ136がオンしてVB1は5V
から0Vに向かって変化を始める。
式が成り立ち、インバータ136がオンしてVB1は5V
から0Vに向かって変化を始める。
【0036】この変化は、インバータ125によって増
幅されVB2は急速に0Vから5Vに立ち上がる。
幅されVB2は急速に0Vから5Vに立ち上がる。
【0037】すでにVA2は5Vとなっているので、排他
的論理和をとる161の出力VCはVB2が0Vから5V
に変化するのにともなって、5Vから0Vに立ち下が
る。
的論理和をとる161の出力VCはVB2が0Vから5V
に変化するのにともなって、5Vから0Vに立ち下が
る。
【0038】この時、インバータ126での信号の伝達
遅延によりNMOS132はまだオン状態、NMOS1
33はまだオフ状態であるのでVCの電圧はNMOS1
32を通りインバータ128に入力され続け、その結
果、VBOUTも5Vから0Vに立ち下がる。
遅延によりNMOS132はまだオン状態、NMOS1
33はまだオフ状態であるのでVCの電圧はNMOS1
32を通りインバータ128に入力され続け、その結
果、VBOUTも5Vから0Vに立ち下がる。
【0039】その後、VB3は5Vから0V、VB4は0V
から5Vに変化し、これにともない、自動的にインバー
タ129の5Vの出力がNMOS133を通してインバ
ータ128の入力に正帰還されフリップ・フロップ回路
にVBOUT=0Vが記憶される。
から5Vに変化し、これにともない、自動的にインバー
タ129の5Vの出力がNMOS133を通してインバ
ータ128の入力に正帰還されフリップ・フロップ回路
にVBOUT=0Vが記憶される。
【0040】以上の説明から明らかなように、図1に示
した本発明の第一の実施例の回路は、VRが0Vから5
Vに変化する過程でNMOS112、113、132、
133のゲートのオン・オフの状態が反転し、その瞬間
のVCの値をメモリに記憶する回路となっている。
した本発明の第一の実施例の回路は、VRが0Vから5
Vに変化する過程でNMOS112、113、132、
133のゲートのオン・オフの状態が反転し、その瞬間
のVCの値をメモリに記憶する回路となっている。
【0041】VINAよりVINBの方が大きければVAOUT=
5V、VBOUT=0Vがフリップ・フロップに記憶され、
VINBよりVINAの方が大きければVAOUT=0V、VBOUT
=5Vがフリップ・フロップに記憶される。この記憶
は、VRを5Vに保持している間中保たれる。
5V、VBOUT=0Vがフリップ・フロップに記憶され、
VINBよりVINAの方が大きければVAOUT=0V、VBOUT
=5Vがフリップ・フロップに記憶される。この記憶
は、VRを5Vに保持している間中保たれる。
【0042】これにより、VRを0Vから5Vまで掃引
後にフリップ・フロップに記憶されている信号を読み出
すことで2値の電圧の大小を判別することができる。
後にフリップ・フロップに記憶されている信号を読み出
すことで2値の電圧の大小を判別することができる。
【0043】以上は、二値の大小判定を行う1つの例で
あるが、さらに多くのνMOSインバータを用いて、ま
た、排他的論理和をとる回路を全加算器で構成された回
路に置き換えることで複数個の数を大きさの順に序列を
付ける機能を持ったソーティング回路を構成することが
できる。これについては第二の実施例以降で説明する。
あるが、さらに多くのνMOSインバータを用いて、ま
た、排他的論理和をとる回路を全加算器で構成された回
路に置き換えることで複数個の数を大きさの順に序列を
付ける機能を持ったソーティング回路を構成することが
できる。これについては第二の実施例以降で説明する。
【0044】スイッチ112、113、132、133
に関しては、NMOSではなく図2のCMOSスイッチ
を用いれば、スイッチの両端での電圧が等しくなりより
安定した回路動作が得られる。
に関しては、NMOSではなく図2のCMOSスイッチ
を用いれば、スイッチの両端での電圧が等しくなりより
安定した回路動作が得られる。
【0045】これらのスイッチトランジスタに関しては
図1のようにNMOSのままで、例えばブートストラッ
プ回路の手法を導入して、ゲート電圧を十分に高くし、
出力電圧が大きくなったときのトランジスタのカットオ
フを防止しても良い。また、インバータ105、125
は必ずしも必要でない。この時は排他的論理和をとる回
路を排他的論理和の否定をとる回路にしてその回路にV
A1、VB1を入力すれば良い。また、インバータ106、
126の出力をそれぞれNMOS113、133のゲー
トにインバータ107、127の出力をそれぞれNMO
S112、132のゲートに入力すれば良い。また、ト
ランジスタ112、132の代わりに抵抗を挿入しても
いい。この場合は、その抵抗値をインバータ109、1
29のNMOSやPMOSのオン抵抗よりも十分に大き
くし、またインバータ106,126での遅延を十分大
きくすれば良い。
図1のようにNMOSのままで、例えばブートストラッ
プ回路の手法を導入して、ゲート電圧を十分に高くし、
出力電圧が大きくなったときのトランジスタのカットオ
フを防止しても良い。また、インバータ105、125
は必ずしも必要でない。この時は排他的論理和をとる回
路を排他的論理和の否定をとる回路にしてその回路にV
A1、VB1を入力すれば良い。また、インバータ106、
126の出力をそれぞれNMOS113、133のゲー
トにインバータ107、127の出力をそれぞれNMO
S112、132のゲートに入力すれば良い。また、ト
ランジスタ112、132の代わりに抵抗を挿入しても
いい。この場合は、その抵抗値をインバータ109、1
29のNMOSやPMOSのオン抵抗よりも十分に大き
くし、またインバータ106,126での遅延を十分大
きくすれば良い。
【0046】また、図1の回路では、VINA、VINBの入
力としてアナログ信号の場合についてのみ述べたが、こ
れは例えばデジタル信号で与えても良い。以下、VINA
の入力方法について述べるが全く同様のことがVINBの
入力方法に関しても言えることは言うまでもない。
力としてアナログ信号の場合についてのみ述べたが、こ
れは例えばデジタル信号で与えても良い。以下、VINA
の入力方法について述べるが全く同様のことがVINBの
入力方法に関しても言えることは言うまでもない。
【0047】図3はアナログ信号VINAにかわり、3b
itのデジタル信号、Vb1、Vb2、Vb3(Vb3が最下位
ビット)を加えた場合の実施例であり、C−νMOSイ
ンバータ116の部分のみ取り出して書いてある。図1
のC2を3つのコンデンサC2’、C2’’、C2’’’に
分割し、それぞれに各ビットの信号が入力されている。
このとき、C2’:C2’’:C2’’’=4:2:1と
すると、(5)式に相当する式は、 VR+1/7(4Vb1+2Vb2+Vb3) ≧ 5 (7) となり3ビットのバイナリ信号をD/A変換した値が入
力信号となる。
itのデジタル信号、Vb1、Vb2、Vb3(Vb3が最下位
ビット)を加えた場合の実施例であり、C−νMOSイ
ンバータ116の部分のみ取り出して書いてある。図1
のC2を3つのコンデンサC2’、C2’’、C2’’’に
分割し、それぞれに各ビットの信号が入力されている。
このとき、C2’:C2’’:C2’’’=4:2:1と
すると、(5)式に相当する式は、 VR+1/7(4Vb1+2Vb2+Vb3) ≧ 5 (7) となり3ビットのバイナリ信号をD/A変換した値が入
力信号となる。
【0048】(実施例2)図6は本発明の第2の実施例
を示す回路図であり、ソーティング回路である。つま
り、V1、V2、V3の3個の入力信号に対し、それぞれ
出力群(V1A、V1B)、(V2A、V2B)、(V3A、
V3B)が対応しており、3個の入力の大きさの順番がそ
れぞれの出力群に2桁の2進数信号として記憶される回
路である。これは、情報の検索をはじめとして様々な分
野できわめて重要な働きをする回路である。
を示す回路図であり、ソーティング回路である。つま
り、V1、V2、V3の3個の入力信号に対し、それぞれ
出力群(V1A、V1B)、(V2A、V2B)、(V3A、
V3B)が対応しており、3個の入力の大きさの順番がそ
れぞれの出力群に2桁の2進数信号として記憶される回
路である。これは、情報の検索をはじめとして様々な分
野できわめて重要な働きをする回路である。
【0049】図6の回路は図1の回路を構成している回
路ブロック171においてフリップ・フロップを構成す
る回路を2組に増やしたものを3つ並べたものと、入力
信号のうちで”1”の数、つまり、電圧がVDDとなって
いる入力が何個あるかを数えて2進数の信号に変換する
機能を持った加算器302から構成されている。
路ブロック171においてフリップ・フロップを構成す
る回路を2組に増やしたものを3つ並べたものと、入力
信号のうちで”1”の数、つまり、電圧がVDDとなって
いる入力が何個あるかを数えて2進数の信号に変換する
機能を持った加算器302から構成されている。
【0050】これは3つの値のソーティングを行う回路
であるために、回路ブロック301を3つならべている
が、これは、必要に応じて任意の個数に増やして良い。
また、1つの回路ブロック301中に付随している、大
きさの順番を記憶するフリップ・フロップ303,30
4の個数も必要に応じて増やして良い。
であるために、回路ブロック301を3つならべている
が、これは、必要に応じて任意の個数に増やして良い。
また、1つの回路ブロック301中に付随している、大
きさの順番を記憶するフリップ・フロップ303,30
4の個数も必要に応じて増やして良い。
【0051】301のブロックにおいて、305はC−
νMOSインバータであり、306は入力端子でありV
1なる信号が入力されている。
νMOSインバータであり、306は入力端子でありV
1なる信号が入力されている。
【0052】307は制御信号入力端子であり、とのブ
ロックと共通の信号VRが入力されている。
ロックと共通の信号VRが入力されている。
【0053】308はνMOSインバータ305の出力
電圧を反転増幅するためのインバータであり、316,
318は正帰還ループ開閉用のスイッチングトランジス
タである。
電圧を反転増幅するためのインバータであり、316,
318は正帰還ループ開閉用のスイッチングトランジス
タである。
【0054】図1の回路と異なるのは、排他的論理和を
求める回路161の代わりに、3入力の全加算器302
が用いられていることと、その全加算器の出力信号が2
ビットで構成されるために、これを記憶するフリップ・
フロップが各ブロックごとに2桁分ついていることであ
る。
求める回路161の代わりに、3入力の全加算器302
が用いられていることと、その全加算器の出力信号が2
ビットで構成されるために、これを記憶するフリップ・
フロップが各ブロックごとに2桁分ついていることであ
る。
【0055】本回路の動作は、図1の回路動作と基本は
全く同じであり容易に理解することができる。
全く同じであり容易に理解することができる。
【0056】図1と同様にνMOSインバータ305に
おいてC1=C2であり、さらにフローティングゲートか
らみた反転電圧はVTH *=VDD/2=2.5 [V]、C1
+C2=CTOTであると仮定するとνMOSインバータ
305が反転するための条件は、 V1+VR≧5 [V] (7) となる。(7)式の条件はすべてのブロックについても
同様であり、 Vi+VR≧5 [V] (i=1、2、・・・・、n) (8) となる。
おいてC1=C2であり、さらにフローティングゲートか
らみた反転電圧はVTH *=VDD/2=2.5 [V]、C1
+C2=CTOTであると仮定するとνMOSインバータ
305が反転するための条件は、 V1+VR≧5 [V] (7) となる。(7)式の条件はすべてのブロックについても
同様であり、 Vi+VR≧5 [V] (i=1、2、・・・・、n) (8) となる。
【0057】次にVRとしては、例えば図7のように、
時間とともに0Vから5V(VDD)まで直線的に上昇す
る信号入力を用いる。VRはすべてのブロックに共通に
加えられるので、Viの最も大きな値の入力されている
ブロックで最初に(8)式が満たされる。今、説明の都
合上、V1、V2、V3の順に入力が小さくなるとする
と、例えば、V1=3.5V、V2=2.5V、V3=
1.5Vであったとする。そうすると、VR=1.5V
になったときにνMOSインバータ305において
(8)式が成り立ち、νMOSインバータ305が反転
し、その出力VX1はVDD(5V)から0Vに向かって減
少を始める。この変化はインバータ308によって増幅
され、インバータ308の出力V01は急速に0Vから5
Vに立ち上がる。
時間とともに0Vから5V(VDD)まで直線的に上昇す
る信号入力を用いる。VRはすべてのブロックに共通に
加えられるので、Viの最も大きな値の入力されている
ブロックで最初に(8)式が満たされる。今、説明の都
合上、V1、V2、V3の順に入力が小さくなるとする
と、例えば、V1=3.5V、V2=2.5V、V3=
1.5Vであったとする。そうすると、VR=1.5V
になったときにνMOSインバータ305において
(8)式が成り立ち、νMOSインバータ305が反転
し、その出力VX1はVDD(5V)から0Vに向かって減
少を始める。この変化はインバータ308によって増幅
され、インバータ308の出力V01は急速に0Vから5
Vに立ち上がる。
【0058】302は3入力の全加算器であり、3つの
入力のうちでハイレベル(VDDの電圧がでているもの)
の入力の数を数えて2進数で出力する回路であり、3つ
とも0Vの場合は出力VA1、VA2ともに0V、1つだけ
がVDDの時は、VA1=0V、VA2=VDD、2つだけがV
DDの時は、VA1=VDD、VA2=0V、3つともVDDの時
は、VA1、VA2ともにVDDとなる回路になっている。つ
まり、VR=1.5Vにおいて、インバータ308の出力
V01が急速に0Vから5Vに立ち上がるとVA2も0Vか
ら5Vに立ち上がることになる。
入力のうちでハイレベル(VDDの電圧がでているもの)
の入力の数を数えて2進数で出力する回路であり、3つ
とも0Vの場合は出力VA1、VA2ともに0V、1つだけ
がVDDの時は、VA1=0V、VA2=VDD、2つだけがV
DDの時は、VA1=VDD、VA2=0V、3つともVDDの時
は、VA1、VA2ともにVDDとなる回路になっている。つ
まり、VR=1.5Vにおいて、インバータ308の出力
V01が急速に0Vから5Vに立ち上がるとVA2も0Vか
ら5Vに立ち上がることになる。
【0059】インバータ309は図1のインバータ10
6と同様に十分な信号の伝達遅延を発生するように設計
されており、インバータ308の出力が0Vから5Vに
変化してもしばらくはVe1は5V、Vf1は0Vのままで
正帰還ループは形成されず、インバータ312、314
の出力はそれぞれVA1、VA2に同期して変化する。
6と同様に十分な信号の伝達遅延を発生するように設計
されており、インバータ308の出力が0Vから5Vに
変化してもしばらくはVe1は5V、Vf1は0Vのままで
正帰還ループは形成されず、インバータ312、314
の出力はそれぞれVA1、VA2に同期して変化する。
【0060】その後、Ve1は5Vから0V、Vf1は0V
から5Vに変化し、これにともない、自動的にインバー
タ312の0Vの出力が、また、インバータ314の5
Vの出力がそれぞれNMOS316、318を通してイ
ンバータ311、313の入力に正帰還される。これは
いわゆるフリップ・フロップ回路で、この回路は、言う
までもなくV1A=0V、V1B=5Vを記憶する回路であ
る。
から5Vに変化し、これにともない、自動的にインバー
タ312の0Vの出力が、また、インバータ314の5
Vの出力がそれぞれNMOS316、318を通してイ
ンバータ311、313の入力に正帰還される。これは
いわゆるフリップ・フロップ回路で、この回路は、言う
までもなくV1A=0V、V1B=5Vを記憶する回路であ
る。
【0061】この状態においては、NMOS315、3
17はオフとなっているためにフリップ・フロップ回路
に記憶された情報はその後VA1、VA2が変化してもそれ
に同期して変化する事はない。
17はオフとなっているためにフリップ・フロップ回路
に記憶された情報はその後VA1、VA2が変化してもそれ
に同期して変化する事はない。
【0062】他方、νMOS320、340は反転して
いないので、NMOS336、338,356,358
はオフ、335、337,355,357はオンの状態
を保っており、V2A、V3AはVA1の、V2B、V3BはVA2
の変化とともに変化するが、正帰還ループが形成される
ことはなくVA1の変化はV2A、V3AにVA2の変化は
V 2B、V3Bの変化として反映される。
いないので、NMOS336、338,356,358
はオフ、335、337,355,357はオンの状態
を保っており、V2A、V3AはVA1の、V2B、V3BはVA2
の変化とともに変化するが、正帰還ループが形成される
ことはなくVA1の変化はV2A、V3AにVA2の変化は
V 2B、V3Bの変化として反映される。
【0063】その後、VR=2.5Vとなったときに今度
はνMOSインバータ320において(8)式が成り立
ち、同様にインバータ328が反転してV02は0Vから
5Vに向かって変化を始める。
はνMOSインバータ320において(8)式が成り立
ち、同様にインバータ328が反転してV02は0Vから
5Vに向かって変化を始める。
【0064】これにともない、全加算器の出力はVA1は
0Vから5Vに、VA2は5Vから0Vに変化する。
0Vから5Vに、VA2は5Vから0Vに変化する。
【0065】これに同期して先ほどと同じ原理でインバ
ータ332、334,352,354の出力はまだ正帰
還ループが形成されていないためVA1、VA2に同期して
変化し、V2A、V3Bはともに5V、V2B、V3Bはともに
0Vに変化する。
ータ332、334,352,354の出力はまだ正帰
還ループが形成されていないためVA1、VA2に同期して
変化し、V2A、V3Bはともに5V、V2B、V3Bはともに
0Vに変化する。
【0066】その後、Ve2は5Vから0V,Vf2は0V
から5Vへ変化し正帰還ループが自動的に閉じられるた
め、V2A=5V、V2B=0Vの情報はフリップ・フロッ
プに安定に記憶される。
から5Vへ変化し正帰還ループが自動的に閉じられるた
め、V2A=5V、V2B=0Vの情報はフリップ・フロッ
プに安定に記憶される。
【0067】同様の仕組みで、VR=3.5Vとなったと
きには、V3A=5V、V3B=5Vの情報はフリップ・フ
ロップに安定に記憶される。
きには、V3A=5V、V3B=5Vの情報はフリップ・フ
ロップに安定に記憶される。
【0068】以上の操作により、V1の入力している回
路ブロックのフリップ・フロップには(0、1)つまり
1を示す信号が、V2の入力している回路ブロックのフ
リップ・フロップには(1、0)つまり2を示す信号
が、V3の入力している回路ブロックには(1、1)つ
まり3を示す信号が記憶される。
路ブロックのフリップ・フロップには(0、1)つまり
1を示す信号が、V2の入力している回路ブロックのフ
リップ・フロップには(1、0)つまり2を示す信号
が、V3の入力している回路ブロックには(1、1)つ
まり3を示す信号が記憶される。
【0069】このように、VRを0Vから5Vに掃引す
るだけで入力電圧V1、V2、V3の大きさの順番がフリ
ップ・フロップに記憶されることになり、ソーティング
をきわめて容易に行うことができる。
るだけで入力電圧V1、V2、V3の大きさの順番がフリ
ップ・フロップに記憶されることになり、ソーティング
をきわめて容易に行うことができる。
【0070】従来、このようなソーティング機能の実現
には、コンピュータを用いて行うのが普通であった。即
ち、各入力信号を、アナログからデジタルに変換した
後、各データの比較をすべて行うことによりソーティン
グを行っていた。N個のデータのソーティングをするた
めには通常N2回の比較操作が必要であり、データの増
加とともに、非常に膨大な演算処理が必要になり、多大
な時間を要していた。したがって、マイクロコンピュー
タ等で高速に処理することは不可能であり、ロボット等
の制御のための実時間処理実現は非常に困難であった。
には、コンピュータを用いて行うのが普通であった。即
ち、各入力信号を、アナログからデジタルに変換した
後、各データの比較をすべて行うことによりソーティン
グを行っていた。N個のデータのソーティングをするた
めには通常N2回の比較操作が必要であり、データの増
加とともに、非常に膨大な演算処理が必要になり、多大
な時間を要していた。したがって、マイクロコンピュー
タ等で高速に処理することは不可能であり、ロボット等
の制御のための実時間処理実現は非常に困難であった。
【0071】νMOSを用いた本発明では、図7のラン
プ電圧を1回掃引するだけで、回路が自動的に入力信号
のソーティングを行ってくれるため、非常に高速に処理
することが可能となった。しかも、図6に示したよう
に、極めて数少ない素子数で実現できるため、小さなチ
ップ上に集積可能となった。さらに、このソーティング
回路以外にメモリやマイクロコンピュータさらにD/
A、A/D変換器をすべて同一チップ上に集積すること
も可能であり、ロボット等に組み込んで非常に高度な情
報処理を高速に行うことができ、その結果自動制御技
術、情報処理技術に限りない大きなインパクトを与えて
いる。数多くの応用の一例として、連想メモリチップが
あり、これは、本発明の第3の実施例として後に述べ
る。
プ電圧を1回掃引するだけで、回路が自動的に入力信号
のソーティングを行ってくれるため、非常に高速に処理
することが可能となった。しかも、図6に示したよう
に、極めて数少ない素子数で実現できるため、小さなチ
ップ上に集積可能となった。さらに、このソーティング
回路以外にメモリやマイクロコンピュータさらにD/
A、A/D変換器をすべて同一チップ上に集積すること
も可能であり、ロボット等に組み込んで非常に高度な情
報処理を高速に行うことができ、その結果自動制御技
術、情報処理技術に限りない大きなインパクトを与えて
いる。数多くの応用の一例として、連想メモリチップが
あり、これは、本発明の第3の実施例として後に述べ
る。
【0072】尚、上記実施例では、VRとして図7のよ
うに直線的に増加するランプ電圧信号を用いたが、これ
に限る必要はなく、時間とともにその電圧値が増加する
信号であれば良い。例えば図8のような回路を用いれば
図9のようなVRの出力波形が得られる。これは、抵抗
Rを通してコンデンサーCを充電する回路であり、その
立ち上がり時間はおおよそRCである。
うに直線的に増加するランプ電圧信号を用いたが、これ
に限る必要はなく、時間とともにその電圧値が増加する
信号であれば良い。例えば図8のような回路を用いれば
図9のようなVRの出力波形が得られる。これは、抵抗
Rを通してコンデンサーCを充電する回路であり、その
立ち上がり時間はおおよそRCである。
【0073】図9より明らかなように、時間がRCを経
過した後はVRの変化が緩やかになっているため、V1、
V2、・・・・、Vnの入力電圧がいずれも小さく、わず
かな差で大小比較を行う際には、このようなVRを用い
る方が精度が上がる。
過した後はVRの変化が緩やかになっているため、V1、
V2、・・・・、Vnの入力電圧がいずれも小さく、わず
かな差で大小比較を行う際には、このようなVRを用い
る方が精度が上がる。
【0074】図8ではRとCを用いたが、例えばRを省
略し、PMOS306のオン抵抗をNMOS361のオ
ン抵抗に比べ十分大きくしてやってもよい。また図10
に示したように、NMOS362を通してコンデンサー
Cに充電するようにしてもよい。こうすればVRがVDD
に近づくに従いトランジスタ362がオフに近づくため
ますますその抵抗値が大きくなり、VRの増加の割合は
極めて緩やかなものとなり、さらに精度のよい比較を行
うことができる。このときVDD’−VTH>VDDとしてお
くとVRの最大値はVDDとなる。
略し、PMOS306のオン抵抗をNMOS361のオ
ン抵抗に比べ十分大きくしてやってもよい。また図10
に示したように、NMOS362を通してコンデンサー
Cに充電するようにしてもよい。こうすればVRがVDD
に近づくに従いトランジスタ362がオフに近づくため
ますますその抵抗値が大きくなり、VRの増加の割合は
極めて緩やかなものとなり、さらに精度のよい比較を行
うことができる。このときVDD’−VTH>VDDとしてお
くとVRの最大値はVDDとなる。
【0075】また、VRとしては、図11に示したよう
な階段状の信号を入力してもよい。こうすると最大入力
との差が△Vの範囲にある全てのブロックにおいて同時
に正帰還ループを形成することができる。つまり、2つ
以上の入力が非常に接近している場合は、同時にそれら
の入力を同順として同定できるのである。これは、ノイ
ズ等による誤動作を防ぐという効果もある。△Vの値を
任意に設定することにより、データソーティングの精度
を様々に選ぶことができる。
な階段状の信号を入力してもよい。こうすると最大入力
との差が△Vの範囲にある全てのブロックにおいて同時
に正帰還ループを形成することができる。つまり、2つ
以上の入力が非常に接近している場合は、同時にそれら
の入力を同順として同定できるのである。これは、ノイ
ズ等による誤動作を防ぐという効果もある。△Vの値を
任意に設定することにより、データソーティングの精度
を様々に選ぶことができる。
【0076】同様の効果は、図6の回路において、遅延
を発生させるインバータ309,329,349の信号
伝達の遅延時間をかえることでも得られる。この場合
は、遅延時間が大きくなるようにすると、同順として認
知される入力電圧の差異△Vも大きくなり、遅延時間が
小さくなるようにすると、△Vも小さくできる。
を発生させるインバータ309,329,349の信号
伝達の遅延時間をかえることでも得られる。この場合
は、遅延時間が大きくなるようにすると、同順として認
知される入力電圧の差異△Vも大きくなり、遅延時間が
小さくなるようにすると、△Vも小さくできる。
【0077】図12は本発明のソーティング回路の電気
特性を図6と同様の回路について示したものである。
特性を図6と同様の回路について示したものである。
【0078】VRとして図7の様なランプ電圧を加え、
また、V1=3.5V、V2=2.5V、V3=1.5V
とした結果である。
また、V1=3.5V、V2=2.5V、V3=1.5V
とした結果である。
【0079】結果は、VRを0Vから5Vまで掃引する
過程において、V1A=0V、V1B=5V、V2A=5V、
V2B=0V、V3A=5V、V3B=5Vが次々とフリップ
・フロップに記憶されていることがわかる。つまり、こ
れにより、入力電圧の大きさの順番が大きい順に、
V1、V2、V3となっていることがわかる。
過程において、V1A=0V、V1B=5V、V2A=5V、
V2B=0V、V3A=5V、V3B=5Vが次々とフリップ
・フロップに記憶されていることがわかる。つまり、こ
れにより、入力電圧の大きさの順番が大きい順に、
V1、V2、V3となっていることがわかる。
【0080】尚、上記実施例では、各インバータにおい
てVRは常に1つのゲートにのみ加えているが、307
の入力ゲートを複数に分割し、それぞれに別の信号を加
えてもよい。
てVRは常に1つのゲートにのみ加えているが、307
の入力ゲートを複数に分割し、それぞれに別の信号を加
えてもよい。
【0081】例えば、307のゲートをC1’、
C1’’、C1’’’の3つに分割し、C1’:C2’’:
C3’’’=4:2:1の比にしておくと、それぞれの
ゲートに3ビットにコーディングされたバイナリカウン
タ信号を入力することにより、実質的に階段状の信号を
加えることができる。
C1’’、C1’’’の3つに分割し、C1’:C2’’:
C3’’’=4:2:1の比にしておくと、それぞれの
ゲートに3ビットにコーディングされたバイナリカウン
タ信号を入力することにより、実質的に階段状の信号を
加えることができる。
【0082】(実施例3)本発明の第3の実施例を図1
3に示す。この実施例は、連想メモリ回路の主要部分を
示したものであり、非常に簡単な構成で、高速アクセス
可能な連想メモリチップができるものである。
3に示す。この実施例は、連想メモリ回路の主要部分を
示したものであり、非常に簡単な構成で、高速アクセス
可能な連想メモリチップができるものである。
【0083】図において、601〜604は1または0
を記憶できる記憶素子である。これは例えば、図14の
様なスタティックRAMのメモリセルと同様のフリップ
・フロップを用いればよい。あるいは、ダイナミックR
AMのメモリセルでもよいし、EPROM、E2PRO
M等の不揮発性メモリセルであってもよい。ここでは、
原理説明のため、4セル分のみ示してあるが、これはも
っと多くてよいことは言うまでもない。
を記憶できる記憶素子である。これは例えば、図14の
様なスタティックRAMのメモリセルと同様のフリップ
・フロップを用いればよい。あるいは、ダイナミックR
AMのメモリセルでもよいし、EPROM、E2PRO
M等の不揮発性メモリセルであってもよい。ここでは、
原理説明のため、4セル分のみ示してあるが、これはも
っと多くてよいことは言うまでもない。
【0084】例えば、横に8ビット分のセルを並べてお
き、縦には必要なデータ数を並べておいてもよい。ま
た、各フリップ・フロップにデータ書き込みを行うに
は、データライン605a、605bにデータをセット
するとともに、セレクトトランジスタ606a,606
b等をオンしてデータを取り込めばよい。セレクトトラ
ンジスタをオンするには、ワード線607をHIGHに
すればよいわけであるが、本図にはそのための回路が描
かれていない。このようなデータ選択書き込みは、公知
の技術であり、本発明の主旨とは直接関係しないため、
説明を簡単にするため省略した。
き、縦には必要なデータ数を並べておいてもよい。ま
た、各フリップ・フロップにデータ書き込みを行うに
は、データライン605a、605bにデータをセット
するとともに、セレクトトランジスタ606a,606
b等をオンしてデータを取り込めばよい。セレクトトラ
ンジスタをオンするには、ワード線607をHIGHに
すればよいわけであるが、本図にはそのための回路が描
かれていない。このようなデータ選択書き込みは、公知
の技術であり、本発明の主旨とは直接関係しないため、
説明を簡単にするため省略した。
【0085】608、609は図6の回路ブロック30
1と同様の回路であり、610等の回路とともに図6と
同様のソーティング回路を形成している。
1と同様の回路であり、610等の回路とともに図6と
同様のソーティング回路を形成している。
【0086】608,609においてフリップ・フロッ
プを形成するメモリの数は必要に応じて決定すれば良い
が、例えば、縦のデータ数を2進数で表示できるビット
数だけ用意しておけば良い。例えば、縦のデータ数が2
56であれば8ビット分用意すれば十分である。また、
これは必ず2進数で表示できるビット数だけ必要という
わけではなくそれ以上でもそれ以下でも良い。
プを形成するメモリの数は必要に応じて決定すれば良い
が、例えば、縦のデータ数を2進数で表示できるビット
数だけ用意しておけば良い。例えば、縦のデータ数が2
56であれば8ビット分用意すれば十分である。また、
これは必ず2進数で表示できるビット数だけ必要という
わけではなくそれ以上でもそれ以下でも良い。
【0087】次にこの回路動作について説明する。まず
参照データA2,A1を612b,612aのラインより
入力し、各メモリセルのデータとの比較が行われる。た
とえば、A1とメモリセル602のデータX1との比較
は、613のXNOR回路で、両者の排他的論理和をと
ることで行われる。その演算結果Y1は、コンデンサー
Caを介してフローティングゲート614に伝えられ
る。
参照データA2,A1を612b,612aのラインより
入力し、各メモリセルのデータとの比較が行われる。た
とえば、A1とメモリセル602のデータX1との比較
は、613のXNOR回路で、両者の排他的論理和をと
ることで行われる。その演算結果Y1は、コンデンサー
Caを介してフローティングゲート614に伝えられ
る。
【0088】つまり、608のνMOSインバータのフ
ローティングゲート電位ΦFは、 ΦF=(CaY1+CbY2+CRVR)/CTOT (9) で与えられる。これは609のνMOSインバータにつ
いても同様である。従って、VRに図7の様な信号を加
えると、CaY1+CbY2が最大値をもつインバータが最
初に反転する。
ローティングゲート電位ΦFは、 ΦF=(CaY1+CbY2+CRVR)/CTOT (9) で与えられる。これは609のνMOSインバータにつ
いても同様である。従って、VRに図7の様な信号を加
えると、CaY1+CbY2が最大値をもつインバータが最
初に反転する。
【0089】例えば608が最大値を持っているとする
とV01が最初に1になる。これを受けてカウンター61
0の出力は変化しその電圧は各ブロックの正帰還ループ
がかかる記憶回路部620,621に伝達される。その
後、620の回路は自動的に正帰還ループが形成されて
記憶回路に順位が記憶される。VRをさらに掃引してい
くとCaY1+CbY2の大きなブロック順にその記憶回路
部に順位が記憶されていく。
とV01が最初に1になる。これを受けてカウンター61
0の出力は変化しその電圧は各ブロックの正帰還ループ
がかかる記憶回路部620,621に伝達される。その
後、620の回路は自動的に正帰還ループが形成されて
記憶回路に順位が記憶される。VRをさらに掃引してい
くとCaY1+CbY2の大きなブロック順にその記憶回路
部に順位が記憶されていく。
【0090】フリップ・フロップに記憶されている順位
が小さいブロックほどそのメモリセル(例えば、60
1、602)のデータは参照データ入力A1,A2に近い
データである。なぜなら、613のXNOR回路は、A
1とX1即ち、参照信号とメモリの内容が一致したときの
み1を出す回路であり、参照信号との一致が多いほど、
(9)式の値は大きく、これに対応するインバータがは
やく反転するからである。
が小さいブロックほどそのメモリセル(例えば、60
1、602)のデータは参照データ入力A1,A2に近い
データである。なぜなら、613のXNOR回路は、A
1とX1即ち、参照信号とメモリの内容が一致したときの
み1を出す回路であり、参照信号との一致が多いほど、
(9)式の値は大きく、これに対応するインバータがは
やく反転するからである。
【0091】図17にソーティングした結果を読み出す
ための回路例を示す。
ための回路例を示す。
【0092】811はソーティング後に希望の順位のデ
ータを回路の外に読み出すときに、その読みだしたい順
位を入力する端子である。Mはマッチング回路であり、
812,812’は図13の620,621と同様のカ
ウンターの出力を記憶するフリップ・フロップである。
ータを回路の外に読み出すときに、その読みだしたい順
位を入力する端子である。Mはマッチング回路であり、
812,812’は図13の620,621と同様のカ
ウンターの出力を記憶するフリップ・フロップである。
【0093】VRをVDDまで掃引後に、このフリップ・
フロップに記憶された順位を表す信号と811から入力
してくる信号をビットごとに比較し全てが一致した時
に、このマッチング回路は出力として1を出力する。
フロップに記憶された順位を表す信号と811から入力
してくる信号をビットごとに比較し全てが一致した時
に、このマッチング回路は出力として1を出力する。
【0094】ここでは、このマッチング回路については
詳しくは述べないが、公知の技術で実現できることは言
うまでもない。
詳しくは述べないが、公知の技術で実現できることは言
うまでもない。
【0095】このマッチング回路の出力が1となり例え
ば、ワード線813や813’の電位が持ち上がると各
メモリのデータが、データ線814、814’に読み出
せる。つまり、読みだしたい順位を入力すれば容易にそ
の順位のデータがデータラインに読み出せるのである。
ば、ワード線813や813’の電位が持ち上がると各
メモリのデータが、データ線814、814’に読み出
せる。つまり、読みだしたい順位を入力すれば容易にそ
の順位のデータがデータラインに読み出せるのである。
【0096】以上は簡単のために、ソーティング後の順
位が全てのブロックで異なる場合を説明したが、同じ順
位のものが2つ以上ある場合でも同様に簡単に読み出す
ことができる。
位が全てのブロックで異なる場合を説明したが、同じ順
位のものが2つ以上ある場合でも同様に簡単に読み出す
ことができる。
【0097】この場合は、マッチング回路の出力を記憶
する余分のメモリセルを設け、このメモリセルの信号が
1のときのみ、順次読み出しを行う回路を取り付ければ
良い。この様な制御は従来技術で簡単に行える。
する余分のメモリセルを設け、このメモリセルの信号が
1のときのみ、順次読み出しを行う回路を取り付ければ
良い。この様な制御は従来技術で簡単に行える。
【0098】ここで、マッチング回路のかわりに、フリ
ップ・フロップに記憶されている順位を表すバイナリ信
号と811から入力されたバイナリ信号の大小を桁の重
みを考慮して大小比較してフリップ・フロップの信号の
方が小さいときにのみ1を出力するような回路を用いれ
ば、順番が入力した番号よりも小さいものは全て選択さ
れ、順次読み出すことができる。
ップ・フロップに記憶されている順位を表すバイナリ信
号と811から入力されたバイナリ信号の大小を桁の重
みを考慮して大小比較してフリップ・フロップの信号の
方が小さいときにのみ1を出力するような回路を用いれ
ば、順番が入力した番号よりも小さいものは全て選択さ
れ、順次読み出すことができる。
【0099】これをデータバンクのデータ検索等に応用
すると、例えば、100冊の論文を、その内容がある事
柄に関して近いもの順に順番付けして、その結果を例え
ば関係が最も近い順に上位10冊選び出すことが可能と
なる。
すると、例えば、100冊の論文を、その内容がある事
柄に関して近いもの順に順番付けして、その結果を例え
ば関係が最も近い順に上位10冊選び出すことが可能と
なる。
【0100】また、この様な大小比較をする回路を2つ
取り付けて2つの入力に対してフリップ・フロップに記
憶されている信号との比較演算をし、その出力のXOR
をとったものを読み出しの信号として用いれば、入力し
た2つの順位の間に入っている順位を持ったメモリーデ
ータのみが選択され、順次読み出すことができる。
取り付けて2つの入力に対してフリップ・フロップに記
憶されている信号との比較演算をし、その出力のXOR
をとったものを読み出しの信号として用いれば、入力し
た2つの順位の間に入っている順位を持ったメモリーデ
ータのみが選択され、順次読み出すことができる。
【0101】例えば、先ほどの例を使うと、100冊の
論文を、その内容がある事柄に関して近いもの順に順番
付けして、その結果を例えば30番目に近いものから2
0番目に近いものまでを選び出すことが可能となる。
論文を、その内容がある事柄に関して近いもの順に順番
付けして、その結果を例えば30番目に近いものから2
0番目に近いものまでを選び出すことが可能となる。
【0102】以上の様に極めて簡単な回路構成で連想メ
モリが構成できる。しかも、この連想メモリは参照信号
に最も近いデータを持ったデータセットのみを選び出す
のでなく、参照信号との近さに関して序列をつけ、参照
信号に対して任意の近さのメモリデータを即座に知るこ
とができる。
モリが構成できる。しかも、この連想メモリは参照信号
に最も近いデータを持ったデータセットのみを選び出す
のでなく、参照信号との近さに関して序列をつけ、参照
信号に対して任意の近さのメモリデータを即座に知るこ
とができる。
【0103】従来技術でこの様な連想メモリを構成しよ
うとすると、各データを一つ一つ比較し、その差分を計
算するとともに、その差分の大きさを大きい順にまたは
小さい順に並べるという演算が必要となり、非常に複雑
な回路が要求されたばかりでなく、演算に多大の時間を
要していた。
うとすると、各データを一つ一つ比較し、その差分を計
算するとともに、その差分の大きさを大きい順にまたは
小さい順に並べるという演算が必要となり、非常に複雑
な回路が要求されたばかりでなく、演算に多大の時間を
要していた。
【0104】本発明により、この様な連想メモリが簡単
にLSIチップ上に高集積化できるようになったばかり
でなく、高速演算が可能となり、データ検索、ロボット
等の実時間制御が極めて容易に行えるようになった。
にLSIチップ上に高集積化できるようになったばかり
でなく、高速演算が可能となり、データ検索、ロボット
等の実時間制御が極めて容易に行えるようになった。
【0105】尚、Ca、Cb等の容量の大きさは、例えば
全て等しくCa=Cb=・・・・と設定してもよい。そう
すると、参照入力データA1,A2,・・・・とメモリセ
ル内のデータX1,X2,・・・・・の間で一致するビッ
ト数が最も多いデータが読み出されることになり、いわ
ばデータ間のハミング距離の最も小さいデータが取り出
されることになる。
全て等しくCa=Cb=・・・・と設定してもよい。そう
すると、参照入力データA1,A2,・・・・とメモリセ
ル内のデータX1,X2,・・・・・の間で一致するビッ
ト数が最も多いデータが読み出されることになり、いわ
ばデータ間のハミング距離の最も小さいデータが取り出
されることになる。
【0106】あるいは、Ca,Cb等の大きさをCa:
Cb:Cc・・・=1:2:4:・・・の様に、2のべき
乗の比にすると、それぞれ2進表現された数に対し、最
も差の小さな数を見つけだす回路となる。あるいは、任
意の大きさの比にしてやり、それぞれのビットのデータ
に重要度に応じた重みを割り当ててもよい。
Cb:Cc・・・=1:2:4:・・・の様に、2のべき
乗の比にすると、それぞれ2進表現された数に対し、最
も差の小さな数を見つけだす回路となる。あるいは、任
意の大きさの比にしてやり、それぞれのビットのデータ
に重要度に応じた重みを割り当ててもよい。
【0107】図13の回路中、XNOR回路は構成する
のに通常数多くのトランジスタを必要とするが、νMO
Sを用いれば4個で実現することができる。(特願平3
−83152号)。従来のトランジスタで構成してもよ
いが、νMOSを応用することにより、さらに全体の構
成が簡略化される。
のに通常数多くのトランジスタを必要とするが、νMO
Sを用いれば4個で実現することができる。(特願平3
−83152号)。従来のトランジスタで構成してもよ
いが、νMOSを応用することにより、さらに全体の構
成が簡略化される。
【0108】図13の回路では、参照データA1,A2と
メモリセル602、601に記憶されているデータ
X1,X2の間のXNORをとった値Y1,Y2をνMOS
インバータ608等の入力ゲートにいれているが、この
XNOR回路613は例えばXOR(排他的論理和)回
路に変えてもよい。このときは、参照データと一致の最
も少ないデータセットが選び出されることになる。即ち
差が最大となる順に順番付けができる。
メモリセル602、601に記憶されているデータ
X1,X2の間のXNORをとった値Y1,Y2をνMOS
インバータ608等の入力ゲートにいれているが、この
XNOR回路613は例えばXOR(排他的論理和)回
路に変えてもよい。このときは、参照データと一致の最
も少ないデータセットが選び出されることになる。即ち
差が最大となる順に順番付けができる。
【0109】以上のように様々な機能が簡単に実現でき
るのである。
るのである。
【0110】以上、全ての実施例においてνMOSイン
バータはすべてCMOS構成としたが、これはNMOS
E/E、やE/Dインバータでも良いことは言うまで
もない。
バータはすべてCMOS構成としたが、これはNMOS
E/E、やE/Dインバータでも良いことは言うまで
もない。
【0111】また、すべてのνMOSインバータのフロ
ーティングゲートは常にフローティング状態で動作させ
る場合についてのみ説明したが、フローティングゲート
にスイッチングトランジスタを接続し、このトランジス
タのオン・オフによりフローティングゲートの電位を適
宜所定の値に固定しても良い。
ーティングゲートは常にフローティング状態で動作させ
る場合についてのみ説明したが、フローティングゲート
にスイッチングトランジスタを接続し、このトランジス
タのオン・オフによりフローティングゲートの電位を適
宜所定の値に固定しても良い。
【0112】これにより、νMOSインバータの閾値を
変化させたり、あるいは動作中にフローティングゲート
に注入された電荷をリフレッシュさせることができる。
変化させたり、あるいは動作中にフローティングゲート
に注入された電荷をリフレッシュさせることができる。
【0113】ここでは、図13の601、602などの
メモリを1あるいは0を記憶する記憶回路としたが、こ
れは多値レベルを記憶するメモリであっても良い。例え
ば、602、613の部分を図15に示すような回路構
成にすれば、多値レベルのマッチングが可能となる。
メモリを1あるいは0を記憶する記憶回路としたが、こ
れは多値レベルを記憶するメモリであっても良い。例え
ば、602、613の部分を図15に示すような回路構
成にすれば、多値レベルのマッチングが可能となる。
【0114】図15において701,702はC−νM
OSインバータであり、それぞれ2個の入力ゲートA、
Bを持っている。Aはそれぞれに固有の入力ゲートで、
Bは701,702に共通の入力ゲートである。また、
701、702の出力はXOR回路に入力されており、
701、702の出力が共に1もしくは共に0の時には
XORの出力は0、701と702の出力が互いに異な
っているときにはXORの出力は1となる。
OSインバータであり、それぞれ2個の入力ゲートA、
Bを持っている。Aはそれぞれに固有の入力ゲートで、
Bは701,702に共通の入力ゲートである。また、
701、702の出力はXOR回路に入力されており、
701、702の出力が共に1もしくは共に0の時には
XORの出力は0、701と702の出力が互いに異な
っているときにはXORの出力は1となる。
【0115】V1、V2はそれぞれのC−νMOSインバ
ータの入力ゲートAに入力するアナログ入力であり、こ
れにより、入力ゲートBから見た見かけのしきい値を自
由に変えることができる。例えば、入力ゲートAとBの
フローティングゲートとの容量結合係数をそれぞれ
C1、C2とし、C1:C2=1:1、C−νMOSインバ
ータのフローティングゲートから見たしきい値を2.5
Vとすると、701,702はノードA,Bの電圧の和
が5Vになると反転する。つまり、V1=2V,V2=3
Vとすると、C−νMOSインバータ701のノードB
の電圧が3V、702のノードBの電圧が2Vになると
それぞれ反転することになる。
ータの入力ゲートAに入力するアナログ入力であり、こ
れにより、入力ゲートBから見た見かけのしきい値を自
由に変えることができる。例えば、入力ゲートAとBの
フローティングゲートとの容量結合係数をそれぞれ
C1、C2とし、C1:C2=1:1、C−νMOSインバ
ータのフローティングゲートから見たしきい値を2.5
Vとすると、701,702はノードA,Bの電圧の和
が5Vになると反転する。つまり、V1=2V,V2=3
Vとすると、C−νMOSインバータ701のノードB
の電圧が3V、702のノードBの電圧が2Vになると
それぞれ反転することになる。
【0116】この様な場合、共通の701、702に共
通のノードBに2Vと3Vとの間の電圧、例えば2.5
Vの電圧が入力すると701の出力信号は1、702の
出力信号は0となり、XORの出力信号は1となる。こ
れは、この回路が実は、2Vから3Vの間の電圧の情報
を記憶しており、入力電圧として2Vから3Vの間の電
圧が入力されると、記憶情報と入力情報が一致したとし
てXORの出力信号として1を出力するものである。ノ
ードBに2Vより小さい電圧、もしくは3Vより大きな
電圧が入力されると701、702の出力信号はともに
1もしくは0となり、この場合XORの出力信号は0と
なる。つまりこれは、記憶情報と入力情報が一致してい
ないことを示す。
通のノードBに2Vと3Vとの間の電圧、例えば2.5
Vの電圧が入力すると701の出力信号は1、702の
出力信号は0となり、XORの出力信号は1となる。こ
れは、この回路が実は、2Vから3Vの間の電圧の情報
を記憶しており、入力電圧として2Vから3Vの間の電
圧が入力されると、記憶情報と入力情報が一致したとし
てXORの出力信号として1を出力するものである。ノ
ードBに2Vより小さい電圧、もしくは3Vより大きな
電圧が入力されると701、702の出力信号はともに
1もしくは0となり、この場合XORの出力信号は0と
なる。つまりこれは、記憶情報と入力情報が一致してい
ないことを示す。
【0117】この様に、図13の602、613の回路
を図15の回路に置き換えるだけで多値レベルの連想メ
モリが実現できる。
を図15の回路に置き換えるだけで多値レベルの連想メ
モリが実現できる。
【0118】また、ノードAにアナログ信号V1、V2を
入力する変わりに、図16の様にノードAの入力ゲート
を分割してそれぞれに1もしくは0のバイナリ信号を入
力しても良い。この時は、分割したそれぞれの入力ゲー
トとフローティングゲートとの容量比を全て同じにして
も良いし、1:2:4:・・・の様に重みをつけても良
い。
入力する変わりに、図16の様にノードAの入力ゲート
を分割してそれぞれに1もしくは0のバイナリ信号を入
力しても良い。この時は、分割したそれぞれの入力ゲー
トとフローティングゲートとの容量比を全て同じにして
も良いし、1:2:4:・・・の様に重みをつけても良
い。
【0119】
【発明の効果】本発明により、例えば複数のデータの大
小比較および、ソーティングを非常に高速に行うことが
可能となった。
小比較および、ソーティングを非常に高速に行うことが
可能となった。
【0120】しかも、極めて少数の素子で実現できるた
め、LSI化が容易である。従って、高速・実時間処理
の要求される自動制御の分野を始めとし、データ検索な
ど、広範な応用分野を開拓することができた。
め、LSI化が容易である。従って、高速・実時間処理
の要求される自動制御の分野を始めとし、データ検索な
ど、広範な応用分野を開拓することができた。
【図1】実施例1を示す回路図である。
【図2】実施例1のνMOSの回路図である。
【図3】実施例1の変形を示す回路図である。
【図4】4入力のNチャネルνMOSトランジスタ(N
−νMOS)の断面構造の一例を示した図である。
−νMOS)の断面構造の一例を示した図である。
【図5】図4を簡略化した図である。
【図6】実施例2を示す回路図である。
【図7】VRの電圧特性を示す図である。
【図8】実施例2の変形を示す回路図である。
【図9】図8の回路のVRの出力波形を示す図。
【図10】実施例の変形を示す図である。
【図11】VRの信号入力例を示す図である。
【図12】本発明のソーティング回路の電気特性を図6
と同様の回路について示した図である。
と同様の回路について示した図である。
【図13】実施例3を示す回路図である。
【図14】実施例3の記憶素子の回路例を示す図であ
る。
る。
【図15】実施例3の変形例を示す図である。
【図16】実施例3の変形例を示す図である。
【図17】ソーティングした結果を読み出すための回路
例を示す図である。
例を示す図である。
101,121 フローティングゲート、
102,122 PチャネルニューロンMOSトランジ
スタ、 103,123 NチャネルニューロンMOSトランジ
スタ、 104,124,151 入力ゲート、 105,106,107,108,109,125,1
26,127,128,129 インバータ回路。
スタ、 103,123 NチャネルニューロンMOSトランジ
スタ、 104,124,151 入力ゲート、 105,106,107,108,109,125,1
26,127,128,129 インバータ回路。
─────────────────────────────────────────────────────
フロントページの続き
(73)特許権者 598158521
アイ・アンド・エフ株式会社
東京都文京区本郷4丁目1番4号 コス
モス本郷ビル
(72)発明者 山下 毅雄
宮城県仙台市青葉区荒巻字青葉東北大学
工学部電子工学科内
(72)発明者 柴田 直
宮城県仙台市太白区日本平5番9号
(72)発明者 大見 忠弘
宮城県仙台市青葉区米ケ袋2の1の17の
301
(56)参考文献 特開 平6−53431(JP,A)
特開 平4−271486(JP,A)
特開 平3−6679(JP,A)
1993 ISSCC Digest o
f Technical Paper
s, 1993年, pp.236−237,294
電子情報通信学会技術研究報告, V
ol.DSP−93, No.233, p
p.31−38
1992 IEDM Technical
Digest, 1992年, pp.
431−434
1991 IEDM Technical
Digest, 1991年, pp.
919−922
IEEE Transactions
on Electron Devic
es, Vol.39, No.6, p
p.1444−1455
Electronics Lette
rs, Vol.27,No.11, p
p.957−958
(58)調査した分野(Int.Cl.7,DB名)
H01L 27/10
G06F 7/24
G06G 7/60
H03K 19/00
H03K 19/0948
JICSTファイル(JOIS)
Claims (9)
- 【請求項1】 基体上に一導電型の半導体領域を有し、
この領域内に設けられた反対導電型のソース及びドレイ
ン領域を有し、前記ソース及びドレイン領域を隔てる領
域に絶縁膜を介して設けられた電位的にフローティング
状態にあるフローティングゲート電極を有し、前記フロ
ーティングゲート電極と絶縁膜を介して容量結合する複
数の入力ゲート電極を有するトランジスタを用いて構成
された複数のインバータと、 少なくとも2以上の前記インバータに対し、それぞれの
インバータが有する前記複数の入力ゲート電極のうちの
一つの電極を介して共通の第一の信号電圧を加える手段
と、 前記少なくとも2以上のインバータに対し、それぞれの
インバータが有する前記複数の入力ゲート電極のうちの
他の入力ゲート電極を介して各々所定の第二の信号電圧
を加える手段と、 前記第一の信号電圧の時間変化によって前記少なくとも
2以上のインバータの少なくとも1つのインバータにお
いて生じる出力電圧の変化を時間遅れを発生させて伝達
する遅延回路と、 前記遅延回路により伝達された信号によりオン・オフが
制御されるスイッチと、 このスイッチのオン・オフにより信号を取り込む記憶回
路と、 前記インバータで生じる出力電圧信号に対し所定の論理
演算を行う手段と、 を有し、前記論理演算の結果を前記記憶回路中に記憶す
るようにしたことを特徴とする半導体装置。 - 【請求項2】 前記第二の入力ゲート電極を2つ以上有
し、その各々に0もしくは1のバイナリ信号が入力され
るよう構成されたことを特徴とする請求項1に記載の半
導体装置。 - 【請求項3】 前記論理演算として前記複数のインバー
タの2個以上のインバータの各出力もしくは前記各出力
に所定の遅延の加わった出力信号に対し、その加算を行
うことを特徴とする請求項1に記載の半導体装置。 - 【請求項4】 マトリクス状に配置された、信号情報を
記憶するメモリセルを有し、その列もしくは行に属する
所定のメモリセルの出力に対し、所定の論理演算を行っ
た結果を前記第二の入力ゲートに入力するように構成さ
れたことを特徴とする請求項2または3に記載の半導体
装置。 - 【請求項5】 前記マトリクス状に配置された信号情報
が0もしくは1のバイナリ信号情報であることを特徴と
する請求項4に記載の半導体装置。 - 【請求項6】 前記マトリクス状に配置された信号情報
が多値の信号情報であることを特徴とする請求項4に記
載の半導体装置。 - 【請求項7】 前記所定の論理演算が、外部より入力さ
れたデータとの排他的論理和を計算する演算であること
を特徴とする請求項4に記載の半導体装置。 - 【請求項8】 前記所定の論理演算が、外部より入力さ
れたデータとの排他的論理和の否定を計算する演算であ
ることを特徴とする請求項4に記載の半導体装置。 - 【請求項9】 前記メモリセルの各々に、メモリセル内
のデータを外部に読み出すためのスイッチが設けられ、
記憶された前記結果と外部より入力されたデータとが一
致するかもしくは所定の関係を満たしたときのみ、前記
スイッチがオンして、前記メモリセル内のデータが外部
に読み出されるよう構成されたことを特徴とする請求項
5乃至8のいずれか1項に記載の半導体装置。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP03102093A JP3459017B2 (ja) | 1993-02-22 | 1993-02-22 | 半導体装置 |
EP94907083A EP0685806A4 (en) | 1993-02-22 | 1994-02-22 | SEMICONDUCTOR DEVICE. |
PCT/JP1994/000262 WO1994019760A1 (en) | 1993-02-22 | 1994-02-22 | Semiconductor device |
US08/507,467 US5822497A (en) | 1993-02-22 | 1994-02-22 | Data sorting circuit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP03102093A JP3459017B2 (ja) | 1993-02-22 | 1993-02-22 | 半導体装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH06244375A JPH06244375A (ja) | 1994-09-02 |
JP3459017B2 true JP3459017B2 (ja) | 2003-10-20 |
Family
ID=12319844
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP03102093A Expired - Fee Related JP3459017B2 (ja) | 1993-02-22 | 1993-02-22 | 半導体装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US5822497A (ja) |
EP (1) | EP0685806A4 (ja) |
JP (1) | JP3459017B2 (ja) |
WO (1) | WO1994019760A1 (ja) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3611041B2 (ja) * | 1994-02-14 | 2005-01-19 | 直 柴田 | 半導体演算回路 |
US6456992B1 (en) | 1995-03-24 | 2002-09-24 | Tadashi Shibata | Semiconductor arithmetic circuit |
ES2117564B1 (es) * | 1996-04-24 | 1999-04-01 | Mendez Vigo Barazona Javier | Transistor inecuacional o pseudoneuronal. |
JPH10224224A (ja) * | 1997-02-03 | 1998-08-21 | Sunao Shibata | 半導体演算装置 |
JPH10283793A (ja) * | 1997-02-06 | 1998-10-23 | Sunao Shibata | 半導体回路 |
JPH10260817A (ja) | 1997-03-15 | 1998-09-29 | Sunao Shibata | 半導体演算回路及びデ−タ処理装置 |
JPH10257352A (ja) | 1997-03-15 | 1998-09-25 | Sunao Shibata | 半導体演算回路 |
JP4066211B2 (ja) * | 1997-06-06 | 2008-03-26 | 財団法人国際科学振興財団 | 電荷転送増幅回路、電圧比較器及びセンスアンプ |
JPH1127116A (ja) * | 1997-07-02 | 1999-01-29 | Tadahiro Omi | 半導体集積回路、電圧コントロールディレイライン、ディレイロックドループ、自己同期パイプライン式デジタルシステム、電圧制御発振器、およびフェーズロックドループ |
JPH1196276A (ja) | 1997-09-22 | 1999-04-09 | Sunao Shibata | 半導体演算回路 |
JPH11306268A (ja) | 1998-04-17 | 1999-11-05 | Sunao Shibata | 半導体演算装置 |
US7187237B1 (en) | 2002-10-08 | 2007-03-06 | Impinj, Inc. | Use of analog-valued floating-gate transistors for parallel and serial signal processing |
WO2004034404A2 (en) * | 2002-10-08 | 2004-04-22 | Impinj, Inc. | Use of analog-valued floating-gate transistors to match the electrical characteristics of interleaved and pipelined |
CN101777139B (zh) * | 2009-12-30 | 2013-07-17 | 宁波大学 | 一种基于神经mos管的多值计数器单元及多位多值计数器 |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4622735A (en) * | 1980-12-12 | 1986-11-18 | Tokyo Shibaura Denki Kabushiki Kaisha | Method for manufacturing a semiconductor device utilizing self-aligned silicide regions |
JPS6050940A (ja) * | 1983-08-31 | 1985-03-22 | Toshiba Corp | 半導体集積回路 |
US5440518A (en) * | 1991-06-12 | 1995-08-08 | Hazani; Emanuel | Non-volatile memory circuits, architecture and methods |
JP2501118B2 (ja) * | 1988-06-17 | 1996-05-29 | 忠弘 大見 | 半導体装置の製造方法 |
US5331215A (en) * | 1988-12-09 | 1994-07-19 | Synaptics, Incorporated | Electrically adaptable neural network with post-processing circuitry |
US5594372A (en) * | 1989-06-02 | 1997-01-14 | Shibata; Tadashi | Source follower using NMOS and PMOS transistors |
JP2662559B2 (ja) * | 1989-06-02 | 1997-10-15 | 直 柴田 | 半導体装置 |
JP3228759B2 (ja) * | 1990-01-24 | 2001-11-12 | セイコーエプソン株式会社 | 半導体記憶装置及びデータ処理装置 |
JP2530055B2 (ja) * | 1990-08-30 | 1996-09-04 | 株式会社東芝 | 半導体集積回路 |
US5128563A (en) * | 1990-11-28 | 1992-07-07 | Micron Technology, Inc. | CMOS bootstrapped output driver method and circuit |
EP0570584A1 (en) * | 1991-01-12 | 1993-11-24 | SHIBATA, Tadashi | Semiconductor device |
JP3109748B2 (ja) * | 1991-02-26 | 2000-11-20 | 株式会社東芝 | ニューラル・ネットを用いた高速ソータ |
TW203665B (ja) * | 1991-03-21 | 1993-04-11 | Shibata Naoru | |
JPH05198755A (ja) * | 1991-08-29 | 1993-08-06 | Mitsubishi Electric Corp | 半導体論理回路 |
US5361227A (en) * | 1991-12-19 | 1994-11-01 | Kabushiki Kaisha Toshiba | Non-volatile semiconductor memory device and memory system using the same |
JPH05298892A (ja) * | 1992-04-22 | 1993-11-12 | Mitsubishi Electric Corp | 連想記憶メモリ |
US5391188A (en) * | 1992-05-01 | 1995-02-21 | Medtronic, Inc. | Low cost implantable medical device |
JP2720718B2 (ja) * | 1992-07-09 | 1998-03-04 | 株式会社デンソー | 半導体センサ装置 |
JP3421365B2 (ja) * | 1992-07-29 | 2003-06-30 | 直 柴田 | 半導体装置 |
JPH0677426A (ja) * | 1992-08-26 | 1994-03-18 | Sunao Shibata | 半導体集積回路 |
-
1993
- 1993-02-22 JP JP03102093A patent/JP3459017B2/ja not_active Expired - Fee Related
-
1994
- 1994-02-22 US US08/507,467 patent/US5822497A/en not_active Expired - Fee Related
- 1994-02-22 EP EP94907083A patent/EP0685806A4/en not_active Withdrawn
- 1994-02-22 WO PCT/JP1994/000262 patent/WO1994019760A1/ja not_active Application Discontinuation
Non-Patent Citations (6)
Title |
---|
1991 IEDM Technical Digest, 1991年, pp.919−922 |
1992 IEDM Technical Digest, 1992年, pp.431−434 |
1993 ISSCC Digest of Technical Papers, 1993年, pp.236−237,294 |
Electronics Letters, Vol.27,No.11, pp.957−958 |
IEEE Transactions on Electron Devices, Vol.39, No.6, pp.1444−1455 |
電子情報通信学会技術研究報告, Vol.DSP−93, No.233, pp.31−38 |
Also Published As
Publication number | Publication date |
---|---|
US5822497A (en) | 1998-10-13 |
EP0685806A1 (en) | 1995-12-06 |
JPH06244375A (ja) | 1994-09-02 |
EP0685806A4 (en) | 1997-03-26 |
WO1994019760A1 (en) | 1994-09-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3421365B2 (ja) | 半導体装置 | |
JP3459017B2 (ja) | 半導体装置 | |
EP0578821B1 (en) | Semiconductor device | |
EP0015070B1 (en) | Sense amplifier circuit | |
US5239502A (en) | Bit storage cell | |
Liu et al. | A carry lookahead adder based on hybrid CMOS-memristor logic circuit | |
US3953839A (en) | Bit circuitry for enhance-deplete ram | |
EP0129217B1 (en) | A semiconductor circuit including a memory and a pulse drive circuit | |
JP3289748B2 (ja) | 半導体装置 | |
US3983412A (en) | Differential sense amplifier | |
JP3278080B2 (ja) | 半導体集積回路 | |
US4449203A (en) | Memory with reference voltage generator | |
US4104733A (en) | Address selecting circuitry for semiconductor memory device | |
WO1996030855A1 (fr) | Circuit arithmetique a semiconducteurs | |
US20240086708A1 (en) | Sram architecture for convolutional neural network application | |
US5544125A (en) | Semiconductor integrated circuit having logic gates | |
KR20200097208A (ko) | 반도체 장치 | |
JP3611041B2 (ja) | 半導体演算回路 | |
CN114974337A (zh) | 一种基于自旋磁随机存储器的时间域存内计算电路 | |
Ohtsuka et al. | Analysis by FPD for neuron CMOS variable logic circuit with FG calibration | |
Venkata | Ternary and quaternary logic to binary bit conversion CMOS integrated circuit design using multiple input floating gate MOSFETs | |
US6459613B1 (en) | Current-mode identifying circuit for multilevel flash memories | |
Srivastava | Ternary input signal to binary bit output conversion CMOS integrated circuit design using neuron MOSFETs | |
US4330851A (en) | Dynamic decoder input for semiconductor memory | |
Panda et al. | Hybrid CMOS Memristor-Based Data Compressor Using Shannon Fano Encoder |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |