JPH0724021B2 - Multi-valued ALU - Google Patents

Multi-valued ALU

Info

Publication number
JPH0724021B2
JPH0724021B2 JP4547086A JP4547086A JPH0724021B2 JP H0724021 B2 JPH0724021 B2 JP H0724021B2 JP 4547086 A JP4547086 A JP 4547086A JP 4547086 A JP4547086 A JP 4547086A JP H0724021 B2 JPH0724021 B2 JP H0724021B2
Authority
JP
Japan
Prior art keywords
circuit
output
signal
valued
input
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 - Lifetime
Application number
JP4547086A
Other languages
Japanese (ja)
Other versions
JPS62203235A (en
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.)
Omron Corp
Original Assignee
Omron Corp
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 Omron Corp filed Critical Omron Corp
Priority to JP4547086A priority Critical patent/JPH0724021B2/en
Priority to US07/021,005 priority patent/US4914614A/en
Priority claimed from EP87112986A external-priority patent/EP0305583B1/en
Publication of JPS62203235A publication Critical patent/JPS62203235A/en
Priority to US07/664,518 priority patent/US5227993A/en
Publication of JPH0724021B2 publication Critical patent/JPH0724021B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Logic Circuits (AREA)

Description

【発明の詳細な説明】 発明の要約 多値信号源と,メモリ・アレイと,第1の選択手段と,
第2の選択手段と,出力回路とから構成されている。
DETAILED DESCRIPTION OF THE INVENTION Multilevel signal source, memory array, first selecting means,
It is composed of a second selecting means and an output circuit.

多値信号源からは,多値論理の論理値をそれぞれ表わす
信号が発生する。
From the multi-valued signal source, signals representing respective logic values of multi-valued logic are generated.

メモリ・アレイには演算すべき関数ごとに多数のアドレ
ス・ラインからなるアドレス・ライン群が設けられてい
る。各アドレス・ライン群のアドレス・ラインには,対
応する関数の真理値表に基づくプログラムによって,い
ずれかの多値論理信号が現われる。
The memory array is provided with an address line group including a large number of address lines for each function to be operated. Any multi-valued logic signal appears on the address line of each address line group by the program based on the truth table of the corresponding function.

複数のアドレス・ライン群のいずれか1つが,演算すべ
き関数を指定する信号が与えられる第1の選択手段によ
って選択される。
Any one of the plurality of address line groups is selected by the first selecting means to which a signal designating a function to be operated is given.

選択されたアドレス・ライン群の中の1つのアドレス・
ラインが,入力信号が与えられる第2の選択手段によっ
て選択され,そのラインの論理値信号が出力回路を通し
て導かれる。
One address in the selected address line group
The line is selected by the second selection means supplied with the input signal, and the logical value signal of the line is guided through the output circuit.

目次 (1)発明の背景 (2)発明の概要 (2.1)発明の目的 (2.2)発明の構成と効果 (3)実施例の説明 (3.1)多値論理関数の定義 (3.2)フィールド・プログラマブル多値論理関数回路 (3.3)デコーダ (3.4)アドレス・スイッチの他の例 (3.5)マスク・プログラマブル多値論理関数回路 (3.6)多関数回路 (3.7)多値ALU (3.8)多値MAX/MIN関数回路 (3.9)多値全加算回路 (3.10)多値全減算回路 (3.11)多値全乗算回路 (3.12)多値全除算回路 (3.13)CMOS多値ALU (1)発明の背景 この発明は,多値論理システムを構築するための基礎と
なるとともにそのIC化に適したプログラマブル多値ALU
(Arithmetic and Logic Unit:演算論理装置)に関す
る。
Table of contents (1) Background of the invention (2) Outline of the invention (2.1) Purpose of the invention (2.2) Structure and effect of the invention (3) Description of embodiments (3.1) Definition of multivalued logic function (3.2) Field programmable multi Value logic function circuit (3.3) Decoder (3.4) Other example of address switch (3.5) Mask programmable multi-value logic function circuit (3.6) Multi-function circuit (3.7) Multi-value ALU (3.8) Multi-value MAX / MIN function Circuit (3.9) Multi-value full addition circuit (3.10) Multi-value full subtraction circuit (3.11) Multi-value full multiplication circuit (3.12) Multi-value total division circuit (3.13) CMOS multi-value ALU (1) Background of the invention Programmable multi-level ALU that is the basis for constructing multi-level logic system and is suitable for IC implementation
(Arithmetic and Logic Unit).

コンピュータをはじめとする多くのディジタル回路シス
テムの基礎となる2値論理のもついくつかの限界を補完
ないしは克服するものとして多値論理およびその演算回
路の研究が盛んに行なわれている。2値論理が0と1の
2つの値を取扱い,2値論理回路システムで用いられる信
号がこれら2つの値に対応した2つのレベルをとるのに
対して,多値論理は3つ以上の値を取扱い,多値論理回
路システムで用いられる信号は3つ以上のレベルをと
る。
2. Description of the Related Art Multi-valued logic and its arithmetic circuit have been actively researched as a means for complementing or overcoming some limitations of binary logic which is the basis of many digital circuit systems including computers. The binary logic handles two values of 0 and 1, and the signal used in the binary logic circuit system takes two levels corresponding to these two values, whereas the multivalued logic has three or more values. The signal used in the multi-valued logic circuit system has three or more levels.

多値論理(回路システム)は2値論理(回路システム)
と比較して次のような利点をもっているといわれてい
る。
Multilevel logic (circuit system) is binary logic (circuit system)
It is said that it has the following advantages compared with.

1)0と1の間の不確定な状態の記述が可能である(た
とえば3値の場合)。
1) It is possible to describe an indeterminate state between 0 and 1 (for example, in the case of 3 values).

2)IC基板上の配線領域およびピン数を減少させること
ができ,実効的な集積度を高めることができる。たとえ
ば,64値の場合には2値論理回路の1/6の配線領域で足り
る。
2) The wiring area and the number of pins on the IC substrate can be reduced, and the effective integration level can be increased. For example, in the case of 64 levels, 1/6 wiring area of a binary logic circuit is sufficient.

3)10値マシンの実現によって人間と同じ論理を用いる
ことが可能になるから,2値マシンで必要であったエンコ
ーダやデコーダが不要となる。
3) The realization of a 10-value machine enables the use of the same logic as humans, so the encoder and decoder required in a 2-value machine are unnecessary.

このような特長をもつ多値論理システム,とくに従来の
2値コンピュータにとってかわるシステムの構築のため
に最も基本となるのが多値ALUである。この多値ALUは任
意の多値論理演算が行なえるものでなければならない。
多値論理演算には,MAX,MIN,加算,減算,乗算,除算等
のよく知られた演算だけでも十数種類ある。単純な組合
せにしたがうと,多値論理演算は,n値r変数の場合nの
n乗のr乗種類存在することになる。たとえば,3値2変
数の場合には,多値論理演算の種類は3の3乗の2乗,
すなわち19683となり,4値2変数では約43億通りとな
る。このような膨大な数の多値論理演算を実行できる多
値ALUを通常のやり方で設計することは,殆んど不可能
である。
The multi-valued ALU is the most basic for constructing a multi-valued logic system having such features, especially a system replacing the conventional binary computer. This multivalued ALU must be capable of performing arbitrary multivalued logical operations.
There are more than a dozen types of multi-valued logical operations, including well-known operations such as MAX, MIN, addition, subtraction, multiplication, and division. According to a simple combination, in the case of n-valued r variables, there are n n-th powers of r-th power. For example, in the case of 3-valued 2-variable, the type of multi-valued logical operation is 3 to the power of 3,
In other words, it is 19683, and there are about 4.3 billion ways in a four-value two variable. It is almost impossible to design a multi-valued ALU capable of executing such a huge number of multi-valued logical operations in the usual way.

(2)発明の概要 (2.1)発明の目的 この発明の目的は,任意の演算を実行できるようにプロ
グラム可能な多値ALUを提供することにある。
(2) Outline of the Invention (2.1) Object of the Invention An object of the present invention is to provide a programmable multi-level ALU capable of executing an arbitrary operation.

(2.2)発明の構成と効果 この発明による多値ALUは,適用される多値論理の複数
の論理値をそれぞれ表わす信号を発生する複数の多値信
号源,これらの信号源にそれぞれ接続された複数の信号
ラインと,演算すべき複数の異なる関数のそれぞれごと
に設けられ,各関数の真理値表にしたがってプログラム
されることにより,信号ラインのいずれか1つに結節点
で接続された複数のアドレス・ラインからなるアドレス
・ライン群とを含むメモリ・アレイ,演算させるべき関
数を選択するセレクト信号によって上記アドレス・ライ
ン群のいずれか1つを選択する第1の選択手段,多値入
力信号によって,少なくとも選択されたアドレス・ライ
ン群の中の1つのアドレス・ラインを選択する第2の選
択手段,ならびに上記第1および第2選択手段によって
選択されたアドレス・ラインから得られる論理値を表わ
す信号を出力する出力回路を備えていることを特徴とす
る。
(2.2) Structure and effect of the invention A multi-valued ALU according to the present invention is connected to a plurality of multi-valued signal sources that generate signals respectively representing a plurality of logic values of the applied multi-valued logic, and are connected to these signal sources, respectively. A plurality of signal lines and a plurality of different functions to be operated are provided for each, and programmed according to a truth table of each function, so that a plurality of signal lines connected to any one of the signal lines at a node are connected. A memory array including an address line group consisting of address lines, a first selecting means for selecting any one of the address line groups by a select signal for selecting a function to be operated, and a multi-valued input signal A second selection means for selecting at least one address line in the selected address line group, and the first and second selection means. It is characterized in that it is provided with an output circuit for outputting a signal representing a logical value obtained from the selected address line.

多値論理演算の実行は,その演算結果を表わす多値論理
関数の発生と等価である。上記メモリ・アレイには,所
望の複数種類の多値論理関数をそれらの真理値表にした
がって容易にプログラムすることができる。そして,第
1の選択手段によって,プログラムした複数の多値論理
関数のうちの1つを選択することができ,変数を表わす
入力信号を与えることによって選択した多値論理関数か
らその変数に対応する関数値を表わす信号を得ることが
できる。
Execution of a multivalued logical operation is equivalent to generation of a multivalued logical function that represents the result of the operation. A desired plurality of multi-valued logic functions can be easily programmed in the memory array according to their truth tables. Then, the first selecting means can select one of the programmed multiple-valued logic functions, and the variable is selected from the selected multiple-valued logic functions by providing an input signal representing the variable. A signal representing the function value can be obtained.

このようにして,真理値表を用いて任意多値論理関数を
演算する多値ALUをプログラムすることが可能となり,
かつその多値ALUを動作させてプログラムされた演算結
果を導き出すことができる。
In this way, it becomes possible to program a multi-valued ALU that operates an arbitrary multi-valued logical function using a truth table,
In addition, the multi-valued ALU can be operated to derive the programmed calculation result.

(3)実施例の説明 (3.1)多値論理関数の定義 多値論理関数の定義の仕方には2種類ある。(3) Description of Embodiments (3.1) Definition of Multivalued Logic Function There are two types of methods for defining a multivalued logic function.

その1つは関数を表わす式を用いて定義するやり方であ
る。たとえば,xとyを変数とする多値論理関数MAXは次
式で表わされる。
One of them is a method of defining with a formula expressing a function. For example, a multi-valued logical function MAX having x and y as variables is expressed by the following equation.

また,多値論理関数MINは次式で定義される。 The multivalued logic function MIN is defined by the following equation.

多値論理関数の他の定義の仕方は真理値表を用いるもの
である。x,yおよびzという3つの変数をもちかつ各変
数が0,1,2および3の4値をとる多値論理関数(この関
数も4値である)の真理値表の一例が第1図に示されて
いる。真理値表には任意の値を書き込むことができるの
で,真理値表を用いると任意の多値論理関数を容易に定
義することが可能となる。関数の式を用いた定義の仕方
によると定義可能な関数の種類が限定されるのに対し
て,真理値表を利用するとあらゆる関数を定義できる。
これが真理値表を用いた定義の仕方の大きな利点であ
る。また,式を用いて定義された関数もまた真理表に置
きかえることができるから,真理値表を用いたやり方は
式を用いたやり方を包摂しているといえる。
Another way to define a multivalued logic function is to use a truth table. Fig. 1 shows an example of a truth table of a multi-valued logical function (which also has four values) that has three variables x, y and z and each variable has four values 0, 1, 2 and 3. Is shown in. Since any value can be written in the truth table, it is possible to easily define any multivalued logical function by using the truth table. While the types of functions that can be defined are limited according to the definition method using function expressions, any function can be defined using a truth table.
This is a great advantage of the definition method using the truth table. In addition, since the function defined by using the formula can also be replaced with the truth table, it can be said that the method using the truth table includes the method using the formula.

したがって,以下の説明では,多値論理関数は原則とし
て真理表を用いて定義される。
Therefore, in the following description, a multi-valued logical function is defined using a truth table in principle.

真理値表によって定義された多値論理関数を,その真理
値表の値を用いて次のように数式で表現することが可能
である。すなわち,変数をx,yおよびzとする多値論理
関数f(x,y,z)は,真理値表の値をClmnとした場合,
次のように表わされる。
A multi-valued logical function defined by a truth table can be expressed by a mathematical expression as follows using the values in the truth table. That is, the multi-valued logical function f (x, y, z) with variables x, y and z is given by the truth table value Clmn,
It is expressed as follows.

f(x,y,z)= ΣΣΣClmn*{kl(x)・km(y)・kn(z)} …
(3) ここで, であり,r値の場合,x,y,z,l,m,nはそれぞれ0,1,…,(r
−1)の値をとる。
f (x, y, z) = ΣΣΣClmn * {kl (x) · km (y) · kn (z)} ...
(3) where And for r values, x, y, z, l, m, n are 0, 1, ..., (r
-1).

また,第(3)式において,記号*および・はともに乗
算を表わす。
In the equation (3), the symbols * and · both represent multiplication.

第(3)式の関数f(x,y,z)を表わす多値信号を出力
する多値論理関数回路を考えた場合には,変数x,y,zは
それらの値を表わす多値入力信号で与えられる。また,
記号・はAND論理演算によって,*はスイッチングによ
ってそれぞれ実現される。
When considering a multi-valued logic function circuit that outputs a multi-valued signal representing the function f (x, y, z) of the equation (3), the variables x, y, z are multi-valued inputs representing those values. Given by signal. Also,
The symbol * is realized by AND logic operation, and * is realized by switching.

このような多値論理関数回路によって任意の多値論理関
数を表わす出力信号を得るためには,その回路はプログ
ラマブルでなければならない。任意の多値論理関数は上
述の真理値表の値Clmnを回路上でプログラムすることに
よって,すなわち値Clmnを発生する回路をプログラムす
ることによって得られるであろう。
In order to obtain an output signal representing an arbitrary multivalued logic function by such a multivalued logic function circuit, the circuit must be programmable. Any multi-valued logic function will be obtained by programming the value Clmn of the truth table above on the circuit, ie by programming the circuit which produces the value Clmn.

真理値表の値Clmnを発生する回路のプログラムには,そ
の回路をIC製造工程で作製する過程においてプログラム
するやり方(マスク・プログラマブル)と,プログラム
されていない回路をPROMライタ等を用いてユーザがプロ
グラムするやり方(フィールド・プログラマブル)とが
ある。
To program the circuit that generates the value Clmn in the truth table, the method of programming the circuit in the process of manufacturing the circuit in the IC manufacturing process (mask programmable), and the unprogrammed circuit can be programmed by the user using a PROM writer. There is a method of programming (field programmable).

(3.2)フィールド・プログラマブル多値論理関数回路 第2図は,上述の第(3)式で表わされる演算を実現し
て関数f(x,y,z)を表わす出力信号を得る回路であっ
て,真理値表の値Clmnがフィールド・プログラマブルな
回路の一例を示している。この回路は4値3入力(3変
数)の多値論理関数回路である。
(3.2) Field programmable multivalued logic function circuit FIG. 2 shows a circuit for realizing the operation represented by the above-mentioned expression (3) to obtain an output signal representing the function f (x, y, z). The value Clmn in the truth table shows an example of a field programmable circuit. This circuit is a multi-valued logic function circuit with four values and three inputs (three variables).

第2図に示す回路は,電流モード,電圧モードのいずれ
においても動作可能であるが,まず電流モードを前提と
して説明し,その後電圧モードに切替えた場合について
述べる。
The circuit shown in FIG. 2 can operate in both the current mode and the voltage mode. First, description will be given on the premise of the current mode, and then the case of switching to the voltage mode will be described.

第2図において,多値論理関数回路は,4つの信号源10〜
13と,これらの信号源10〜13に接続された結節点メモリ
・アレイ21と,このアレイ21に接続されたアドレスト・
スイッチ23と,アドレスト・スイッチ23の出力側に接続
された出力ライン5とから構成されている。
In FIG. 2, the multivalued logic function circuit includes four signal sources 10 to 10
13, a node memory array 21 connected to these signal sources 10 to 13, and an address memory array 21 connected to this array 21.
It is composed of a switch 23 and an output line 5 connected to the output side of the addressed switch 23.

信号源10〜13は電流源であり,その詳細な構成について
は後述する。この実施例は4値の論理関数回路であるか
ら,これらの信号源10〜13からは,これらの4値0,1,2
および3を表わす電流がそれぞれ出力される。値0を表
わす電流の電流源10は必ずしも必要ではない。
The signal sources 10 to 13 are current sources, and the detailed configuration thereof will be described later. Since this embodiment is a four-valued logic function circuit, these four values 0, 1, 2 are obtained from these signal sources 10 to 13.
Currents representing 3 and 3 are output respectively. The current source 10 for the current representing the value 0 is not absolutely necessary.

結節点メモリ・アレイ21において,これらの電流源10〜
13にそれぞれ接続されたライン(信号ライン)が行を構
成し,これらのラインを第0行〜第3行のラインと呼
ぶ。これらの行を構成するラインに対して64本の列を構
成するライン(アドレス・ライン)が配置されている。
列を構成するラインを第2図の左側から第1列,第2
列,…,第64列のラインと呼ぶことにする。行を構成す
る各ラインと列を構成する各ラインとは,1箇所において
のみ相互に接続され,結節点を構成している。
In the node memory array 21, these current sources 10 to
The lines (signal lines) connected to 13 respectively form rows, and these lines are called the 0th to 3rd lines. Lines (address lines) forming 64 columns are arranged with respect to the lines forming these rows.
From the left side of FIG.
Columns, ..., Let's call these lines in the 64th column. Each line that forms a row and each line that forms a column are connected to each other only at one location to form a node.

このメモリ・アレイはフィールド・プログラマブルのも
のであり,一般にはシリコン・チップ上に立体交差的に
行と列のラインが配列される。通常のプログラマブルRO
Mと同じように,大電流または大電圧の印加によるpn接
合の破壊または絶縁層の破壊によって結節点を形成する
タイプのもの,不要な結節部分のヒューズを溶断するこ
とによって必要な結節点を残すタイプのもの等がある
が,いずれも適用可能である。
This memory array is field programmable, and generally, rows and columns of lines are arranged in a three-dimensional manner on a silicon chip. Normal programmable RO
Similar to M, the type that forms a node by the destruction of the pn junction or the breakdown of the insulating layer due to the application of a large current or a large voltage, and the necessary node is left by melting the fuse of the unnecessary node There are some types, but all are applicable.

いずれにしても,このメモリ・アレイ21には,第1図に
示されたような所望の多値論理関数を表わす真理値表の
値がプログラムされる。第1列のラインはx=0,y=0,z
=0に対応し,第2列のラインはx=1,y=0,z=0に対
応し,第3列のラインはx=2,y=0,z=0に対応し,ま
たたとえば第9列のラインはx=0,y=2,z=0に対応す
るというように,すべての列は変数x,y,zのすべての組
合せに1対1に対応している。そして,各列のライン
は,それが対応するx,y,zの値を変数とする関数f(x,
y,z),すなわち真理値表の値Clmn(=Cxyz)を表わす
電流源から導かれた行のラインに結節点によって結ばれ
ている。
In any case, this memory array 21 is programmed with the truth table values representing the desired multi-valued logic function as shown in FIG. The line in the first column is x = 0, y = 0, z
= 0, the line in the second column corresponds to x = 1, y = 0, z = 0, the line in the third column corresponds to x = 2, y = 0, z = 0, and, for example, All columns correspond one-to-one to all combinations of variables x, y, z, such that the line in the ninth column corresponds to x = 0, y = 2, z = 0. Then, the line of each column has a function f (x, x, y, z whose value is a variable
y, z), that is, the value of the truth table, Clmn (= Cxyz), is connected by a node to the line of the row derived from the current source.

電流源10〜13とメモリ・アレイ21との組合せ回路は,64
個の電流源と等価であるということができる。
The combination circuit of the current sources 10 to 13 and the memory array 21 is 64
It can be said that it is equivalent to individual current sources.

メモリ・アレイ21はプログラマブルであるから,任意の
真理値表の値をプログラムすることが可能であり,これ
によって任意の多値論理関数f(x,y,z)を表わす信号
を出力する回路が実現することになる。
Since the memory array 21 is programmable, it is possible to program the values of any truth table so that a circuit for outputting a signal representing any multivalued logic function f (x, y, z) can be programmed. Will be realized.

アドレスト・スイッチ23は,メモリ・アレイ21に設定さ
れた関数f(x,y,z)を表わす電流を,入力端子1,2,3に
それぞれ与えられる入力x,y,zに応じて選択的に取出す
または読出す(スイッチ・オン)ものである。このアド
レスト・スイッチ23は,各入力x,y,zをそれぞれ入力と
するデコーダ(1オブ4デコーダ)31,32および33と,
これらのデコーダの出力側に接続されたANDアレイ22か
ら構成されている。デコーダ31は,入力x(電流モード
でも電圧モードでもどちらでもよい)が論理値0を表わ
しているときに,l=0の出力端子にHレベルの信号を出
力し他の出力端子の出力をLレベルにする。同じよう
に,入力xが論理値1,2,3のときにl=1,2,3の出力端子
にそれぞれHレベルの信号を出力し,他の出力端子の出
力をLレベルにする。他のデコーダ32,33も同じように
働く。
The addressed switch 23 selects the current representing the function f (x, y, z) set in the memory array 21 according to the inputs x, y, z given to the input terminals 1,2,3, respectively. It is to be taken out or read out (switched on). The addressed switch 23 includes decoders (1 of 4 decoders) 31, 32 and 33 having inputs x, y, z as inputs,
It is composed of an AND array 22 connected to the output side of these decoders. When the input x (current mode or voltage mode) represents a logical value of 0, the decoder 31 outputs an H level signal to the output terminal of l = 0 and outputs the output of the other output terminals to L level. To level. Similarly, when the input x has logical values of 1, 2, and 3, H level signals are output to the output terminals of l = 1, 2, and 3, and the output of the other output terminals is set to L level. The other decoders 32, 33 work similarly.

各デコーダ31,32,33からは4ずつ行を構成する制御ライ
ンがのびており,これらの制御ラインは,メモリ・アレ
イ21から延びたまたはその列ラインに接続された列ライ
ンと交差している。この交差箇所には,Aで示す○印によ
って表現されたnチャネルMOS FETよりなるスイッチン
グ素子が設けられている(第3図参照)。これらのスイ
ッチング素子Aは各列ラインに3つずつ直列に接続さ
れ,その各スイッチング素子が各デコーダ31,32,33から
のびている行を構成する制御ラインによってそれぞれ制
御される。各列の3つのスイッチング素子を制御する制
御ラインは,各列においてそれぞれ異なっている。たと
えば,第1列の3つのスイッチング素子はx=0,y=0,z
=0のときにすべてオンとなり,このラインが導通す
る。同じように,第2列のラインはx=1,y=0,z=0の
ときに,第3列のラインはx=2,y=0,z=0のときに,
第10列のラインはx=1,y=2,z=0のときにそれぞれ導
通する。
From each decoder 31, 32, 33 extend four control lines in rows, which intersect with column lines extending from or connected to the memory array 21. At this intersection, a switching element composed of an n-channel MOS FET represented by a circle indicated by A is provided (see FIG. 3). Three of these switching elements A are connected in series to each column line, and each switching element is controlled by a control line forming a row extending from each decoder 31, 32, 33. The control lines for controlling the three switching elements in each column are different in each column. For example, the three switching elements in the first column have x = 0, y = 0, z
When = 0, all are turned on and this line is conducted. Similarly, the line in the second column is x = 1, y = 0, z = 0, and the line in the third column is x = 2, y = 0, z = 0,
The lines in the tenth column are conductive when x = 1, y = 2, and z = 0.

すなわち,アドレスト・スイッチ23は,64本の列ライン
のうち入力x,y,zの組合せによってアドレスされる唯一
の列ラインのみを導通させる。このアドレスト・スイッ
チ23または少なくともANDアレイ22もIC化されるのはい
うまでもない。
That is, the addressed switch 23 conducts only the one of the 64 column lines addressed by the combination of inputs x, y, z. It goes without saying that the addressed switch 23 or at least the AND array 22 is also integrated into an IC.

アドレスト・スイッチ23の出力側において,これらの64
本の列ラインが1本の出力ライン5に接続されている。
この出力ライン5に関数f(x,y,z)の出力端子4が設
けられている。
At the output side of the address switch 23, these 64
One column line is connected to one output line 5.
The output line 5 is provided with the output terminal 4 of the function f (x, y, z).

したがって,入力x,y,zによって指定された列ラインが
アドレスト・スイッチ23によって導通状態にされ,それ
に対応するメモリ・アレイ21の結節点からあらかじめプ
ログラムされた値の電流がその指定された列ラインを通
り,出力ライン5を経て出力端子4に,対応する関数f
(x,y,z)を表わす電流として出力される。
Therefore, the column line designated by the inputs x, y, z is made conductive by the addressed switch 23, and a current of a preprogrammed value from the corresponding node of the memory array 21 is applied to the designated column. The corresponding function f through the line, output line 5, and output terminal 4
It is output as a current representing (x, y, z).

第4図は,電流源11〜13の具体的構成の例を示してい
る。
FIG. 4 shows an example of a specific configuration of the current sources 11-13.

第4図(A)において,多値論理における値1に対応す
る電流I0が入力端子9に与えられ,この電流I0はnMOS
FETよりなる6出力電流ミラー14に入力している。この
電流ミラー14の1つの出力電流はpMOS FETよりなる電
流ミラー15でその向きが反転され,出力電I0が出力端子
11aに現われる。この出力電流I0が第2図の電流源11の
出力電流に相当する。電流ミラー14の2つの出力用ドレ
インが相互に接続されることにより2I0の値の電流がつ
くられ,この電流2I0が電流ミラー16で反転されて出力
端子12aに現われる。さらに電流ミラー14の3つの出力
用ドレインが相互に接続されることによって3I0の値の
電流が生成され,これが電流ミラー17で反転されて出力
端子13aに現われる。出力端子12a,13aの出力電流2I0,3I
0が第2図の電流源12,13の出力電流に相当する。
In FIG. 4 (A), the current I 0 corresponding to the value 1 in the multi-valued logic is given to the input terminal 9, and this current I 0 is nMOS.
It is input to the 6-output current mirror 14 composed of a FET. The direction of one output current of this current mirror 14 is inverted by the current mirror 15 consisting of a pMOS FET, and the output voltage I 0 is output to the output terminal.
Appears in 11a. This output current I 0 corresponds to the output current of the current source 11 in FIG. By connecting the two output drains of the current mirror 14 to each other, a current having a value of 2I 0 is produced, and this current 2I 0 is inverted by the current mirror 16 and appears at the output terminal 12a. Further, the three output drains of the current mirror 14 are connected to each other to generate a current having a value of 3I 0 , which is inverted by the current mirror 17 and appears at the output terminal 13a. Output current of output terminals 12a, 13a 2I 0 , 3I
0 corresponds to the output current of the current sources 12 and 13 in FIG.

第4図(B)においては,3出力電流ミラー14BからI0
値の3つの電流が出力され,これら3つの電流がそれぞ
れ電流ミラー15B,16B,17Bに入力する。電流ミラー15Bは
1出力電流ミラーであるから,入力電流I0に等しい値の
電流を出力する。電流ミラー16B,17Bはそれぞれ2出力
電流ミラー,3出力電流ミラーであって,それらの出力用
ドレインが相互にそれぞれ接続されているので,これら
の電流ミラーからは2I0,3I0の電流が得られる。
In FIG. 4 (B), three currents having the value of I 0 are output from the three-output current mirror 14B, and these three currents are input to the current mirrors 15B, 16B, and 17B, respectively. Since the current mirror 15B is a one-output current mirror, it outputs a current having a value equal to the input current I 0 . The current mirrors 16B and 17B are two-output current mirrors and three-output current mirrors, respectively, and their output drains are connected to each other, so that currents of 2I 0 and 3I 0 are obtained from these current mirrors. To be

第2図において,出力ライン5に並列に,nMOS FETより
なるスイッチング素子34と抵抗35の直列回路が接続され
ている。抵抗35は接地されている。スイッチング素子34
は,モード・セレクト端子7に与えられる電圧信号によ
ってオン,オフ制御される。
In FIG. 2, a series circuit of a switching element 34 composed of an nMOS FET and a resistor 35 is connected in parallel to the output line 5. The resistor 35 is grounded. Switching element 34
Is ON / OFF controlled by a voltage signal applied to the mode select terminal 7.

第2図の回路を上述のように電流モードで作動させる場
合には,端子7にHレベルの電圧を与えてスイッチング
素子34をオフとしておく。
When the circuit of FIG. 2 is operated in the current mode as described above, the voltage of H level is applied to the terminal 7 to turn off the switching element 34.

電圧モードで作動させる場合には端子7にHレベルの電
圧信号を与えて,スイッチング素子34をオンとする。す
ると,関数f(x,y,z)を表わす電流は,スイッチング
素子34を経て抵抗35に流れるので,その降下電圧が出力
端子4に現われる。ただし,出力端子4に接続される次
段の回路の入力インピーダンスは大きいものとする。こ
のようにして,電流源10〜13をそのままにしておいて
(電流源10に接続された第0行のラインは接地しておく
ことが好ましい),端子7に与えるモード・セレクト信
号を切替えるのみで,電流モード/電圧モード切替えが
可能となる。
When operating in the voltage mode, an H level voltage signal is applied to the terminal 7 to turn on the switching element 34. Then, the current representing the function f (x, y, z) flows through the switching element 34 to the resistor 35, so that the voltage drop appears at the output terminal 4. However, the input impedance of the circuit at the next stage connected to the output terminal 4 is assumed to be large. In this way, the current sources 10 to 13 are left as they are (the line of the 0th row connected to the current source 10 is preferably grounded), and only the mode select signal applied to the terminal 7 is switched. This makes it possible to switch between current mode and voltage mode.

スイッチング素子34と抵抗35とを出力ライン5に接続す
ることに代えて,メモリ・アレイ21の各行ラインに接続
するようにしてもよい。
Instead of connecting the switching element 34 and the resistor 35 to the output line 5, they may be connected to each row line of the memory array 21.

また,電流源10〜13に代えて電圧源を用いれば,第2図
の回路を電圧モードの回路に変更できるのはいうまでも
ない。
Needless to say, the circuit of FIG. 2 can be changed to a voltage mode circuit by using a voltage source instead of the current sources 10 to 13.

第2図にはさらに,メモリ・アレイ21のプログラムのた
めの回路も設けられている。この回路は,メモリ・アレ
イ21の各行ラインに一方の端子がそれぞれ接続されたス
イッチング素子40〜43と,このスイッチング素子40〜43
の他方の端子に接続された端子6と,スイッチング素子
40〜43をオン,オフ制御するための信号を発生するデコ
ーダ44とから構成されている。デコーダ44には,端子8
からライン・セレクト信号が与えられる。このセレクト
信号も4値の信号であることが好ましい。
Also provided in FIG. 2 are circuits for programming the memory array 21. This circuit includes switching elements 40 to 43 each having one terminal connected to each row line of the memory array 21, and the switching elements 40 to 43.
6 connected to the other terminal of the switching element, and a switching element
It is composed of a decoder 44 for generating a signal for controlling ON / OFF of 40 to 43. Decoder 44 has terminal 8
A line select signal is given from. This select signal is also preferably a four-valued signal.

プログラミングは次のようにして行なわれる。端子8に
与えるライン・セレクト信号によって,メモリ・アレイ
21の4つの行ラインのいずれかを選択する。選択された
行ラインに対応するスイッチング素子(40〜43のいずれ
か)がオンとなる。また,入力端子1,2,3に入力x,y,zと
して列ラインを選択するための信号を与え,所望の列ラ
インを導通状態とする。以上の操作ののち,出力端子4
と端子6との間に大電流または大電圧を印加する。する
と,選択された行ラインと列ラインの交差点において,
タイプに応じて結節点が形成されるか,または結節点が
切断される。
Programming is performed as follows. By the line select signal applied to terminal 8, the memory array
Select any of the four 21 row lines. The switching element (any one of 40 to 43) corresponding to the selected row line is turned on. Further, a signal for selecting a column line is applied to the input terminals 1, 2, and 3 as inputs x, y, and z to bring a desired column line into a conductive state. After the above operation, output terminal 4
A large current or a large voltage is applied between the terminal and the terminal 6. Then, at the intersection of the selected row line and column line,
Nodules are formed or cut depending on the type.

この操作を形成すべきまたは切断すべきすべての結節点
について繰返して行なえば,メモリ・アレイのプログラ
ムが完了する。
This operation is repeated for all nodes to be formed or cut to complete programming of the memory array.

電流源11〜13を第4図の回路で置きかえた第2図の回路
全体をIC化することが可能であり,この場合には入力端
子の数をきわめて少なくすることが可能である。すなわ
ち,入力端子1,2,3,出力端子4,プログラムのための電圧
または電流印加端子6,モード・セレクト端子7,ライン・
セレクト端子8,単位電流I0の入力端子9,ならびに必要な
動作電源VDDおよびアース端子の全部で10ピンを1チッ
プ上に設ければよいことになる。
It is possible to replace the current sources 11 to 13 with the circuit of FIG. 4 to form the entire circuit of FIG. 2 into an IC, and in this case, the number of input terminals can be extremely reduced. That is, input terminals 1, 2, 3, output terminal 4, voltage or current application terminal 6 for programming, mode select terminal 7, line
The select terminal 8, the input terminal 9 for the unit current I 0 , and the necessary operating power source V DD and the ground terminal are all provided on a single chip, that is, 10 pins.

(3.3)デコーダ 次に第2図で示されたデコーダ31,32,33および44の具体
例について述べる。これらのデコーダは全く同じ構成を
とることができるので,デコーダ31を例にとって説明す
る。
(3.3) Decoder Next, specific examples of the decoders 31, 32, 33 and 44 shown in FIG. 2 will be described. Since these decoders can have exactly the same configuration, the decoder 31 will be described as an example.

第5図は,入力xが電圧信号であるときに適用されるデ
コーダの例である。4つの出力端子l=0〜4の出力が
x0〜x4で示されている。第5図の回路は,基本回路を順
次接続したものであるから,その基本回路についてまず
第6図を参照して説明する。
FIG. 5 is an example of a decoder applied when the input x is a voltage signal. The output of the four output terminals l = 0-4
It is shown from x 0 to x 4 . Since the circuit of FIG. 5 is formed by sequentially connecting basic circuits, the basic circuit will be described first with reference to FIG.

第6図において,2つのpMOS FETQa,Qbが直列に接続され
ている。一方のFETQaのドレインに電源電圧,すなわち
Hレベルの電圧Vj+1が加えられ,他方のFETQbはそのソ
ースがゲートに接続されかつ接地されている。出力端子
は2つのFETQaとQbの接続点に設けられている(出力電
圧Ej)。この基本回路は,一方のFETQaのソースにHレ
ベルの電圧が加えられ,そのFETQaのゲートにLレベル
の入力電圧Vjが与えられたときにのみ,出力電圧EjがH
レベルになる。
In FIG. 6, two pMOS FETs Qa and Qb are connected in series. A power supply voltage, that is, an H level voltage Vj + 1 is applied to the drain of one FET Qa, and the source of the other FET Qb is connected to the gate and grounded. The output terminal is provided at the connection point of the two FETs Qa and Qb (output voltage Ej). In this basic circuit, the output voltage Ej is H level only when the H level voltage is applied to the source of one FET Qa and the L level input voltage Vj is applied to the gate of the FET Qa.
Become a level.

さて,第5図に戻って,この回路は上述の基本回路が6
個順次接続されてなる。そのうちの3つの基本回路の一
方のFETQ1,Q2,Q3に電源電圧VDD(たとえば5V)が印加さ
れ,かつそれらのFETQ1,Q2,Q3が入力電圧信号xによっ
て制御される。他の2つの基本回路のFETQ5,Q6はFETQ1,
Q2のドレイン側に接続され,もう1つの基本回路のFETQ
4には電源電圧VDDが加えられている。第5図の回路の右
側を前段側とすれば,FETQ4,Q5,Q6のゲートは前段の基本
回路の出力電圧(第5図のEjに対応するもの)によって
制御される。
Now, returning to FIG. 5, this circuit is the same as the basic circuit described above.
They are connected in sequence. A power supply voltage V DD (for example, 5V) is applied to FETs Q 1 , Q 2 , and Q 3 of one of the three basic circuits, and those FETs Q 1 , Q 2 and Q 3 are controlled by an input voltage signal x. . FETQ 5 and Q 6 of the other two basic circuits are FETQ 1 and
Connected to the drain side of Q 2 , another basic circuit FET Q
The power supply voltage V DD is applied to 4 . If the right side of the circuit of FIG. 5 is taken as the front stage side, the gates of the FETs Q 4 , Q 5 , and Q 6 are controlled by the output voltage (corresponding to Ej of FIG. 5) of the basic circuit of the front stage.

さらに,第7図に示すようにFETQ1,Q2,Q3のドレイン電
流の立上がりしきい値VTHは相互に異なる値−θ1,−
θ2,−θ3,たとえばθ=0.83V,θ=2.50V,θ=4.
17Vにそれぞれ設定されている。VDD−θ3,VDD−θ2,VDD
−θが入力電圧xをレベル弁別するためのしきい値Th
1,Th2,Th3になる。他のFETQ4〜Q12のしきい値VTHは1V程
度以上あればよい。
Further, as shown in FIG. 7, the rising threshold values V TH of the drain currents of the FETs Q 1 , Q 2 and Q 3 are different from each other −θ 1 , −
θ 2 , −θ 3 , for example, θ 1 = 0.83V, θ 2 = 2.50V, θ 3 = 4.
Each is set to 17V. V DD −θ 3 , V DD −θ 2 , V DD
1 is the threshold value Th for discriminating the level of the input voltage x.
It becomes 1 , Th 2 , Th 3 . The threshold V TH of the other FETs Q 4 to Q 12 may be about 1V or more.

さて,入力電圧xがしきい値Th1以下の場合には,最前
段の基本回路のFETQ3のゲートにLレベルの電圧が加え
られることになるから,この基本回路の出力電圧x0はH
レベルとなる。他の出力x1,x2,x3を発生する基本回路の
FETQ6,Q5,Q4のゲートはHレベルであるからこれらの出
力x1,x2,x3はLレベルである。
When the input voltage x is less than or equal to the threshold value Th 1 , an L level voltage is applied to the gate of the FET Q 3 of the basic circuit at the front stage, so the output voltage x 0 of this basic circuit is H.
It becomes a level. Of the basic circuit that produces the other outputs x 1 , x 2 , x 3
Since the gates of FETQ 6 , Q 5 and Q 4 are at H level, their outputs x 1 , x 2 and x 3 are at L level.

入力電圧xがTh2>x>Th1のときには,各点の電圧は
( )内に示したように変化する。すなわち,FETQ3のゲ
ートはHレベルになるので,出力x0はLレベルになる。
この結果,FETQ6のゲートがLレベルになるから出力x1
Hレベルになる。他の出力x2,x3はLレベルのままであ
る。
When the input voltage x is Th 2 >x> Th 1 , the voltage at each point changes as shown in (). In other words, the gate of the FETs Q 3 because the H level, the output x 0 becomes L level.
As a result, the gate of the FET Q 6 becomes L level, and the output x 1 becomes H level. The other outputs x 2 and x 3 remain L level.

このようにして,Th3>x>Th2のときは出力x2のみがH
レベルに,Th3<xのときは出力x3のみがHレベルにな
る。
Thus, when Th 3 >x> Th 2 , only output x 2 is H
When Th 3 <x, only the output x 3 becomes H level.

第5図の回路は,pMOS FETによって構成されているが,n
MOS FETを用いても同じようにデコーダを構成できるの
はいうまでもない。続いて,入力信号xが電流の場合の
デコーダの例について述べる。これは,電流モードで動
作する複数のリテラル回路を利用して構成することがで
きる。電流モード・リテラル回路は,出願人の先願,特
願昭60−16897に詳述されているが,ここでも簡単に説
明しておく。
The circuit in Fig. 5 is composed of pMOS FETs,
It goes without saying that the decoder can be configured in the same way even if MOS FETs are used. Next, an example of the decoder when the input signal x is a current will be described. This can be constructed using multiple literal circuits operating in current mode. The current mode literal circuit is described in detail in the applicant's earlier application, Japanese Patent Application No. 60-16897, which will be briefly described here.

4つのリテラル回路を利用した1オブ4デコーダの例が
第8図に示されている。入力電流xは多出力電流ミラー
54に入力し,ここで入力電流xと同じ値の6つの電流が
生成され,これらのうちの1つがx0の出力を発生するリ
テラル回路50に,他の2つずつが,それぞれx1,x2の出
力を発生するリテラル回路51,52に,残りの1つがx3
出力を発生するリテラル回路53にそれぞれ送られる。
An example of a 1-of-4 decoder utilizing four literal circuits is shown in FIG. Input current x is a multi-output current mirror
To the literal circuit 50, which produces six currents of the same value as the input current x, one of which produces the output of x 0 , and the other two each produce x 1 , The remaining one is sent to the literal circuits 51 and 52 that generate the x 2 output, and the other one is sent to the literal circuit 53 that generates the x 3 output.

▲出力信号ab x▼(a=0.5,b=1.5)を発生するリテラ
ル回路51の動作について説明すると,rを基数として(r
−1)の値を表わす電流源59と出力端子との間に,pMOS
FETQS1とnMOS FETQS2とが直列に接続されている。ま
た,a,bそれぞれの値を表わす電流の電流源55,56が設け
られ,これらの電流源55,56の出力側に多出力電流ミラ
ー54の出力側がそれぞれ結節点57,58において接続さ
れ,この結節点57,58の電圧によってFETQS1,QS2がそれ
ぞれ制御される。
The operation of the literal circuit 51 that generates the output signal ab x ▼ (a = 0.5, b = 1.5) will be described.
PMOS is connected between the current source 59 representing the value of -1) and the output terminal.
FETQ S1 and nMOS FETQ S2 are connected in series. Further, current sources 55 and 56 for currents representing the values of a and b are provided, and the output sides of the multi-output current mirror 54 are connected to the output sides of these current sources 55 and 56 at nodes 57 and 58, respectively. FETs Q S1 and Q S2 are controlled by the voltages at the nodes 57 and 58, respectively.

x>aのとき,結節点57の電位がLレベルになり,FETQ
S1がオンとなる。また,x<bの場合に結節点58の電位が
HレベルになってFETQS2がオンとなる。したがって,第
9図(B)に示すようにa<x<bの間においてのみ,
出力端子には(r−1)の電流が得られる。
When x> a, the potential of node 57 becomes L level, and FETQ
S1 turns on. When x <b, the potential at the node 58 becomes H level and the FET Q S2 is turned on. Therefore, as shown in FIG. 9 (B), only during a <x <b,
A current of (r-1) is obtained at the output terminal.

同じようにリテラル回路52においては,a=1.5,b=2.5に
設定されているから,1.5<x<2.5において出力端子か
ら出力電流が得られる。
Similarly, in the literal circuit 52, since a = 1.5 and b = 2.5 are set, the output current is obtained from the output terminal when 1.5 <x <2.5.

リテラル回路50においては,電流源55とFETQS1に対応す
るものが省略されている。また,b=0.5に設定されてい
る。したがって,x<0.5において出力電流が得られる。
In the literal circuit 50, those corresponding to the current source 55 and the FET Q S1 are omitted. Also, b is set to 0.5. Therefore, the output current is obtained when x <0.5.

リテラル回路53においては,電流源56と結節点QS2に対
応するものが省略され,かつa=2.5に設定されている
ので,2.5<xにおいて出力電流が得られる。
In the literal circuit 53, the parts corresponding to the current source 56 and the node Q S2 are omitted, and a = 2.5 is set, so that the output current is obtained at 2.5 <x.

これらの出力電流が第9図に示されている。したがっ
て,第8図の回路からは,入力電流xの値に応じて,4つ
の出力端子のいずれか1つから出力電流が得られること
になる。この出力電流を,鎖線で示すように抵抗を介し
てアース側に流し,この抵抗に生ずる降下電圧によって
ANDアレイ22のスイッチAを制御させればよい。
These output currents are shown in FIG. Therefore, from the circuit shown in FIG. 8, the output current can be obtained from any one of the four output terminals according to the value of the input current x. This output current is made to flow to the ground side through the resistance as shown by the chain line, and the voltage drop in this resistance causes
The switch A of the AND array 22 may be controlled.

第8図の回路をデコーダとして使用する場合には,電流
源59の(r−1)の値は任意の値でよい。
When the circuit of FIG. 8 is used as a decoder, the value of (r-1) of the current source 59 may be any value.

(3.4)アドレスト・スイッチの他の例 第2図に示す多値論理関数回路において,アドレスト・
スイッチ23は他の回路,たとえば第10図に示すようにい
くつかのバイラテラルTゲートによって置きかえること
も可能である。
(3.4) Another example of the addressed switch In the multivalued logic function circuit shown in FIG.
The switch 23 can be replaced by other circuits, for example some bilateral T-gates as shown in FIG.

簡略化のために,第10図に示す回路は2つの入力x,yの
場合を示している。また,第2図の電流源11〜13に代え
て,電圧源11A〜13Aが用いられている。もちろん,電流
源を設けることもできるし,その場合には電流,電圧切
替スイッチおよび抵抗を設けることもできる。
For simplification, the circuit shown in FIG. 10 shows the case of two inputs x and y. Further, voltage sources 11A to 13A are used instead of the current sources 11 to 13 in FIG. Of course, a current source can be provided, and in that case, a current, voltage changeover switch and resistance can be provided.

バイラテラルTゲートとは,複数の入力信号をセレクト
信号の値によって選択することにより,そのうちの1つ
を出力信号として出力するものである。第10図におい
て,アドレスト・スイッチは,入力xをセレクト信号と
しかつそれぞれが4つの入力端子をもつ4つのバイラテ
ラルTゲート61〜64と,これらのバイラテラルTゲート
の出力を入力としかつ入力yをセレクト信号とする1つ
のバイラテラルTゲート65とによって構成されている。
バイラテラルTゲート61〜64には,第1列から第16列の
ラインが4つずつ入力している。また,バイラテラルT
ゲート65の出力が出力信号f(x,y)を表わす。
The bilateral T gate is a gate for selecting one of a plurality of input signals according to the value of a select signal and outputting one of them as an output signal. In FIG. 10, the addressed switch has four bilateral T gates 61 to 64 each having an input x as a select signal and each having four input terminals, and inputs and outputs of these bilateral T gates. It is composed of one bilateral T gate 65 which uses y as a select signal.
Four lines from the first column to the sixteenth column are input to the bilateral T gates 61 to 64, respectively. In addition, bilateral T
The output of gate 65 represents the output signal f (x, y).

(3.5)マスク・プログラマブル多値論理関数回路 フィールド・プログラマブルとマスク・プログラマブル
とは,原理的には,第2図に符号21で示すようなメモリ
・アレイの結節点を,一連の製造工程上のどの工程でプ
ログラムするかという点で違いがあるのみであるから
(IC構造上も異なってくるが),回路上は全く相違はな
い。しかしながら,マスク・プログラマブルの場合に
は,設計段階において回路パターンを決定してしまうの
で,融通性がない反面,回路パターンを簡略化できると
いう利点をもっている。
(3.5) Mask programmable multi-valued logic function circuit Field programmable and mask programmable are, in principle, the nodes of the memory array as shown by reference numeral 21 in FIG. There is no difference in the circuit, because there is only a difference in which process is used for programming (the IC structure also differs). However, in the case of mask programmable, since the circuit pattern is determined at the design stage, there is no flexibility, but there is an advantage that the circuit pattern can be simplified.

フィールド・プログラマブルな回路の例である第2図
と,マスク・プログラマブルな回路とすることにより第
2図の回路を簡略化した結果できた回路の例である第11
図との対比の上で,回路パターンの簡略化について説明
する。第11図において,第2図に示すものと同一物には
同一符号が付けられている。また,デコーダ44およびそ
の出力によって制御されるスイッチング素子40〜43は不
要である。
FIG. 2 is an example of a field programmable circuit, and FIG. 11 is an example of a circuit obtained as a result of simplifying the circuit of FIG. 2 by using a mask programmable circuit.
The simplification of the circuit pattern will be described in comparison with the figure. 11, the same parts as those shown in FIG. 2 are designated by the same reference numerals. Further, the decoder 44 and the switching elements 40 to 43 controlled by the output thereof are unnecessary.

第1図の真理値表からも分るように,z=0,y=2におい
ては,xの値に無関係にf(x,y,z)=1となっている。
この部分は,第2図の回路では,第9列から第12列のラ
インとして実現されている。この4列のラインの結節点
はいずれもメモリ・アレイ21上の第1行にあるから,3列
分のラインを省略し,4列のラインを1列のラインで代表
させることが可能である。この新たな列ラインが第11図
では新第9列ラインとして示されている。入力xの値に
関係なく出力f(x,y,z)が同じ値をとるから,ANDアレ
イ22において,新第9列ライン上には入力xによって制
御されるスイッチング素子は設けられていない。この新
第9列ライン上には,入力y(=2)およびz(=0)
によって制御されるスイッチング素子A1,A2が設けられ
ているのみである。
As can be seen from the truth table of FIG. 1, at z = 0 and y = 2, f (x, y, z) = 1 regardless of the value of x.
This portion is realized as lines in columns 9 to 12 in the circuit of FIG. Since the nodes of the four columns are all in the first row on the memory array 21, it is possible to omit the lines for three columns and to represent the four columns by one line. . This new column line is shown in FIG. 11 as the new ninth column line. Since the output f (x, y, z) takes the same value regardless of the value of the input x, the switching element controlled by the input x is not provided on the new ninth column line in the AND array 22. On this new 9th column line, inputs y (= 2) and z (= 0)
Only the switching elements A1 and A2 controlled by are provided.

同じように第1図の真理値表において,z=2の場合に
は,x,yの値に無関係にf(x,y,z)=2である。したが
って,これに対応する第2図の第33列から第48列のライ
ンを,第11図に示すように新しい第30列のラインによっ
て代表させることができる。入力x,yに無関係にz=2
のときにf(x,y,z)は2の値をとるから,この新第30
列ラインには,入力zによって制御されるスイッチング
素子A3のみが設けられている。
Similarly, in the truth table of FIG. 1, when z = 2, f (x, y, z) = 2 regardless of the values of x and y. Therefore, the corresponding lines in columns 33 to 48 in FIG. 2 can be represented by the new line in column 30 as shown in FIG. Z = 2 regardless of input x, y
Since f (x, y, z) takes a value of 2 when,
Only the switching element A3 controlled by the input z is provided on the column line.

さらに,第12図に示すように,メモリ・アレイ21の第0
行のライン,すなわち0の信号源10の延長ラインに接続
された列ラインも省略することが可能である。
Further, as shown in FIG.
It is also possible to omit the row lines, ie the column lines connected to the extension lines of the signal source 10 of zero.

このようにして,第2図の多数論理関数回路は,上述の
省略の考え方を採用すると,最終的には第12図に示すよ
うに,きわめて簡素化されたものとなる。
In this way, the multiple logic function circuit of FIG. 2 becomes extremely simplified in the end as shown in FIG. 12 if the above-mentioned idea of omission is adopted.

マスク・プログラマブルな回路では,メモリ・アレイ21
のみならずANDアレイ22のプログラムも必要となる点に
注意すべきである。
In the mask programmable circuit, the memory array 21
It should be noted that the AND array 22 must be programmed as well.

(3.6)多関数回路 多関数回路とは,ある入力の組合せについて複数の関数
出力を発生する回路である。2入力4値多関数の真理値
表の一例が第13図に,この真理値表の関数演算を実行す
る多関数回路の例が第14図にそれぞれ示されている。
(3.6) Multi-function circuit A multi-function circuit is a circuit that generates multiple function outputs for a certain combination of inputs. FIG. 13 shows an example of a truth table of a 2-input 4-value multi-function, and FIG. 14 shows an example of a multi-function circuit for executing the function operation of the truth table.

第13図(A)において,入力変数xとyとの組合せに対
して4つの関数値がマトリクス状に示されている。これ
らの関数値は,第13図(B)に示される関数f1,f2,f3
よびf4の値を示している。
In FIG. 13 (A), four function values are shown in a matrix for the combination of the input variables x and y. These function values show the values of the functions f 1 , f 2 , f 3 and f 4 shown in FIG. 13 (B).

第14図において,4つの関数f1〜f4を出力するための出力
端子35〜38に接続された4本の行ライン(出力ライン)
が設けられ,これらの行ラインがメモリ・アレイ21から
の列ラインと交差している。関数f1に対応する第1行目
の出力ラインは第1列〜第4列のラインと,f2に対応す
る第2行目の出力ラインは第5列〜第14列のラインと,f
3に対応する第3行目の出力ラインは第15列〜第28列の
ラインと,f4に対応する第4行目の出力ラインは第29列
〜第42列のラインとそれぞれ結ばれ,結節点を形成して
いる。これらの4行のラインと結節点とがサム・アレイ
24を構成している。
In FIG. 14, four row lines (output lines) connected to output terminals 35 to 38 for outputting four functions f 1 to f 4
Are provided and these row lines intersect the column lines from the memory array 21. The output lines of the first row corresponding to the function f 1 are the lines of the first to fourth columns, and the output lines of the second row corresponding to f 2 are the lines of the fifth to 14th columns, f
The output line of the third row corresponding to 3 is connected to the lines of columns 15 to 28, and the output line of the fourth row corresponding to f 4 is connected to the lines of columns 29 to 42, respectively. It forms a knot. These four lines and nodes are sum arrays
Make up 24.

関数f1に対応する出力行ラインにサム・アレイ24におい
て接結された4本の列ラインには,ANDアレイ22において
デコーダ31,32の出力によって制御されるスイッチング
素子が,メモリ・アレイ21において電圧信号源11A〜13A
からのびた3本の行ラインとの結節点が,それぞれ上述
した省略可能なやり方によってあらかじめプログラムさ
れている。
On the four column lines connected in the sum array 24 to the output row lines corresponding to the function f 1 , the switching elements controlled by the outputs of the decoders 31 and 32 in the AND array 22 are provided in the memory array 21. Voltage signal source 11A-13A
Nodes with three extending line lines are each preprogrammed in the optional manner described above.

他の関数f2〜f4を発生させる列ラインについても同様で
ある。
The same applies to the column lines that generate the other functions f 2 to f 4 .

第14図の回路によると,ある入力xとyとの組合せが与
えられると,この入力x,yを第13図(A)の真理値表に
したがって演算した結果を示す異なる4つの関数f1〜f4
を表わす信号が得られるのは容易に理解できよう。この
ような多関数回路では,メモリ・アレイ21,ANDアレイ22
のプログラムに加えて,サム・アレイ24もまたあらかじ
めプログラムしておく必要がある。
According to the circuit of FIG. 14, when a certain combination of inputs x and y is given, four different functions f 1 showing the results of calculating the inputs x and y according to the truth table of FIG. 13 (A). ~ F 4
It will be easy to understand that a signal representative of is obtained. In such a multi-function circuit, the memory array 21, the AND array 22
In addition to the above programming, the thumb array 24 also needs to be pre-programmed.

第14図の回路において,列ラインの数をさらに省略する
ことが可能である。たとえば,第2列目のラインと第40
列目のラインはともに,x=2,y=1のときに3の値の出
力信号を発生するためのものであり,これらの信号は出
力端子35,38にそれぞれ現われる。そこで,第2列目の
ラインと出力端子38に接続された第40行目のラインを,B
で示す結節点によって結べば,第40列目のラインを除去
しても,出力端子35と38には上述のものと全く同じ出力
信号が得られる。このようにして,異なる関数間におい
て,入力の組合せが同じときに同じ値の関数出力を発生
する列ラインについて,1ラインのみ残して他のラインを
省略することが可能となる。
In the circuit of FIG. 14, the number of column lines can be further omitted. For example, the second line and the 40th line
Both lines in the column are for generating output signals of the value 3 when x = 2 and y = 1, and these signals appear at the output terminals 35 and 38, respectively. Therefore, change the line in the second column and the line in the 40th row connected to the output terminal 38 to B
Even if the line in the 40th column is removed, the same output signal as that described above can be obtained at the output terminals 35 and 38 by connecting with the node shown by. In this way, among the different functions, it becomes possible to leave only one line and omit the other lines for the column lines that generate the function output of the same value when the combination of inputs is the same.

(3.7)多値ALU 第15図は,上述のメモリ・アレイやアドレスト・スイッ
チ(デコーダおよびANDアレイ)を利用して構成される
フィールド・プログラマブル4値2入力ALUを示してい
る。今までに述べた構成要素と同一物には同一符号が付
けられている。
(3.7) Multi-valued ALU Fig. 15 shows a field programmable 4-value 2-input ALU constructed by using the above memory array and addressed switches (decoder and AND array). The same components as those described above are designated by the same reference numerals.

入力信号はxとyの2つである。このALUは4つの異な
る演算を行なうことができる。この演算または演算結果
をf1,f2,f3およびf4で表わす。演算を行なうことは,そ
の演算を表わす関数の値を求めることと同じであるか
ら,以下の説明では上述のf1〜f4を場合によっては関数
と呼ぶこともある。
There are two input signals, x and y. This ALU can perform four different operations. This operation or the operation result is represented by f 1 , f 2 , f 3 and f 4 . Since performing an operation is the same as obtaining the value of a function that represents the operation, the above-mentioned f 1 to f 4 may be called functions in some cases in the following description.

第15図において,メモリ・アレイ21には4つの異なる関
数f1〜f4の真理値表がプログラムされている。各関数の
メモリ・アレイ部分に対して第2図に示されるものと同
じように入力xとyとに関してANDアレイ部分がそれぞ
れ設けられ,これらのANDアレイ部分の集合がANDアレイ
22となっている。ANDアレイ22のすべての列ラインは1
本の出力ライン5に接続されている。
In FIG. 15, the memory array 21 is programmed with a truth table of four different functions f 1 to f 4 . An AND array portion is provided for each of the inputs x and y for the memory array portion of each function in the same manner as shown in FIG. 2, and the set of these AND array portions is an AND array.
It is 22. 1 for all column lines in AND array 22
It is connected to the output line 5 of the book.

上述の4つの演算ないしは関数を選択するためにセレク
ト端子37が設けられ,この端子37に4値セレクト信号が
入力する。このセレクト端子37は1オブ4デコーダ36の
入力側に接続され,このデコーダ36からは4つの制御ラ
インが出ている。入力する4値セレクト信号によって指
定されるいずれか1つの制御ラインがHレベルとなる。
A select terminal 37 is provided to select the above-mentioned four operations or functions, and a four-value select signal is input to this terminal 37. The select terminal 37 is connected to the input side of the 1-of-4 decoder 36, and the decoder 36 outputs four control lines. Any one of the control lines designated by the inputted four-value select signal becomes H level.

ANDアレイ22とメモリ・アレイ21との間において,各列
ラインに1個ずつのスイッチング素子が設けられ,これ
らのスイッチング素子は,デコーダ36の対応する関数を
指定する制御ラインによって制御される。これらのスイ
ッチング素子等がセレクト・アレイ25を構成している。
セレクト・アレイ25は,ANDアレイ22と出力ライン5との
間に設けてもよい。
Between the AND array 22 and the memory array 21, one switching element is provided for each column line, and these switching elements are controlled by control lines which specify the corresponding functions of the decoder 36. These switching elements and the like form the select array 25.
The select array 25 may be provided between the AND array 22 and the output line 5.

以上のようにして,第15図のALUでは,入力xとyが与
えられるとともにセレクト信号Sが与えられると,セレ
クト信号Sによって選択された演算が入力x,yについて
行なわれ,その結果が出力ライン5を通して出力端子4
から得ることができる。
As described above, in the ALU of FIG. 15, when the inputs x and y and the select signal S are given, the operation selected by the select signal S is performed on the inputs x and y, and the result is output. Output terminal 4 through line 5
Can be obtained from

このALUもまた,第2図に示されているように,電流/
電圧モード切替が可能となるようにしてもよいし,さら
にプログラムのためのデコーダ44やスイッチング素子40
〜43等を備えるようにしてもよい。さらにマスク・プロ
グラムALUとすることも可能である。この発明による
と,さらに3入力以上の入力,4値以外の多値のためのAL
Uにも簡単に展開できる。
This ALU also has a current / current, as shown in FIG.
The voltage mode may be switched, and further, the decoder 44 for programming and the switching element 40 may be used.
~ 43 and the like may be provided. Further, the mask program ALU can be used. According to the present invention, an AL for more than 3 inputs and multi-values other than 4 values
Easy to deploy on U.

第15図の多値ALUは1チップ上に集積化して作製するこ
とが可能であり,その場合にはこのチップは第16図に示
すように図示されよう。最小限必要なピンは,入力x,y
の入力ピン,セレクト信号Sの入力ピン,演算結果fの
出力ピン,4値の各論理値0〜3を表わす電流を入力する
ための電流入力ピン,動作電圧印加用のピンおよびアー
ス端子ピンの10ピンである。さらに必要ならば,プログ
ラム端子6のためのピンおよび電流/電圧モード切替信
号入力端子7(いずれも第2参照)のためのピンの2ピ
ンが追加されよう。
The multi-valued ALU of FIG. 15 can be integrated and produced on one chip, in which case this chip would be illustrated as shown in FIG. The minimum required pins are input x, y
Input pin, select signal S input pin, calculation result f output pin, current input pin for inputting a current representing four logic values 0 to 3, operating voltage application pin and ground terminal pin. It has 10 pins. Further, if necessary, two pins, that is, a pin for the program terminal 6 and a pin for the current / voltage mode switching signal input terminal 7 (both see the second) will be added.

第17図は,第15図に示す多値ALUのアドレスト・スイッ
チおよびセレクト・アレイをバイラテラルTゲートによ
って実現した例を示している。メモリ・アレイ21の列ラ
インの4本ずつが,入力xによって制御される16個のバ
イラテラルTゲート71の入力側にそれぞれ接続されてい
る。これらのバイラテラルTゲート71の出力ラインは,4
本ずつ,入力yによって制御される4個のバイラテラル
Tゲート72の入力側にそれぞれ接続され,さらにこれら
のバイラテラルTゲートの出力ラインがセレクト信号S
によって制御されるバイラテラルTゲート73の入力側に
接続されている。バイラテラルTゲート73の出力ライン
が出力端子4に接続されている。このようにバイラテラ
ルTゲートを用いても多値ALUを構成することが可能と
なる。
FIG. 17 shows an example in which the multi-valued ALU addressed switch and select array shown in FIG. 15 are realized by a bilateral T gate. Four of the column lines of the memory array 21 are each connected to the input side of 16 bilateral T-gates 71 controlled by the input x. The output lines of these bilateral T-gates 71 are 4
Each of them is connected to the input side of four bilateral T gates 72 controlled by the input y, and the output lines of these bilateral T gates are connected to the select signal S.
It is connected to the input side of a bilateral T gate 73 controlled by. The output line of the bilateral T gate 73 is connected to the output terminal 4. In this way, it is possible to construct a multi-valued ALU even by using a bilateral T gate.

第18図は,第16図に示した4関数の1チップALUを5個
用いて16関数の4値2入力ALUを構成した例を示してい
る。
FIG. 18 shows an example in which a four-value two-input ALU of 16 functions is configured by using five 4-chip 1-chip ALUs shown in FIG.

4つの4関数1チップALU75が並列に接続されている。
これらのALU75には合計16のそれぞれ異なる関数があら
かじめプログラムされている。また,これらのALU75の
入力端子1,2には入力x,yが,電流源の端子には0〜3の
値の論理値を表わす電流がそれぞれ与えられる。
Four 4-function 1-chip ALU75s are connected in parallel.
These ALU75 are pre-programmed with a total of 16 different functions. Further, inputs x and y are applied to the input terminals 1 and 2 of these ALU75, and currents representing logical values of values 0 to 3 are applied to the terminals of the current source.

16個の関数は4値2ディジット信号S1S0で選択すること
ができる。このセレクト信号S1S0の下位桁S0が各ALU75
のセレクト端子(第18図では37aで示されている)に与
えられる。したがって,4個のALU75からは信号S0によっ
て選択された4つの関数F1〜F4が出力される。
The 16 functions can be selected by the 4-value 2-digit signal S 1 S 0 . Lower digit S 0 of the select signal S 1 S 0 each ALU75
To the select terminal (indicated by 37a in FIG. 18). Therefore, four functions F 1 to F 4 selected by the signal S 0 are output from the four ALUs 75.

これらの関数F1〜F4のうちのいずれか1つが上位桁の信
号S1が与えられるもう1つのALU76において選択され
る。このALU76は一種のバイラテラルTゲートであっ
て,もちろんALU76に代えてバイラテラルTゲートを使
用することもできる。
Any one of these functions F 1 to F 4 is selected in another ALU 76 to which the high-order signal S 1 is applied. The ALU76 is a kind of bilateral T gate, and of course, a bilateral T gate can be used instead of the ALU76.

4つの入力から1つを選択するバイラテラルTゲートと
して作用するALU76の具体的結線が第19図に示されてい
る。メモリ・アレイ21の行ラインには,論理値を表わす
電流に代えて上述のALU75から出力される関数F1〜F4
表わす電流がそれぞれ入力する。デコーダ32の出力0の
端子に接続された制御ラインおよび同じようにデコーダ
36の出力0の端子に接続された制御ラインによって制御
される第1列〜第4列のラインのみが,メモリ・アレイ
21において,4本の行ラインの1つずつと結節点をもつよ
うにプログラムされる。また,デコーダ32と36の入力側
が相互に接続されかつ論理値0の信号が与えられる端子
37bに接続されている。したがって,デコーダ32,36の0
の出力端子にはHレベルの制御信号が現われ,第1列〜
第4列のラインの対応するスイッチング素子がオンとさ
れる。デコーダ31には上位桁のセレクト信号S1が与えら
れ,このセレクト信号S1によって第1列〜第4列のライ
ンのいずれかが選択され,これによってメモリ・アレイ
21に入力している関数F1〜F4のいずれかが出力端子4に
送られる。
The specific wiring of the ALU76, which acts as a bilateral T-gate that selects one of the four inputs, is shown in FIG. In the row lines of the memory array 21, the currents representing the functions F 1 to F 4 output from the ALU 75 described above are input instead of the currents representing the logical values. A control line connected to the output 0 terminal of the decoder 32 and also a decoder
Only the lines from the first column to the fourth column controlled by the control line connected to the output 0 terminal of 36 are arranged in the memory array.
At 21, it is programmed to have a node with each of the four row lines. In addition, terminals where the input sides of the decoders 32 and 36 are connected to each other and a signal of logical value 0 is given
It is connected to 37b. Therefore, 0 of the decoders 32 and 36
An H level control signal appears at the output terminal of the
The corresponding switching element in the line of the fourth column is turned on. The select signal S 1 of the upper digit is given to the decoder 31, and one of the lines of the first to fourth columns is selected by this select signal S 1 , and the memory array
One of the functions F 1 to F 4 input to 21 is sent to the output terminal 4.

以上のようにして,16の異なる関数を演算することので
きるALUが実現する。これによって,現在既に定義され
ている殆んどすべての関数を網羅できることになる。
As described above, an ALU capable of calculating 16 different functions is realized. This will cover almost all functions that are already defined.

以上に,具体的ないくつかの多値関数回路について述べ
る。
Above, some specific multi-valued function circuits are described.

(3.8)多値MAX/MIN関数回路 多値MAX関数は上述した第(1)式によって,多値MIN関
数は第(2)式によってそれぞれ表わされる。多値2変
数MAXの演算は,変数x,yのうちの値の大きい方を選択し
てその大きい値を結果とするものであり,多値2変数MI
Nの演算は,変数x,yのうち値の小さい方を選択してその
小さい値を結果とするものである。
(3.8) Multi-valued MAX / MIN function circuit The multi-valued MAX function is expressed by the above equation (1), and the multi-valued MIN function is expressed by the equation (2). The operation of multi-valued two-variable MAX is to select the larger value of variables x and y and take the larger value as the result.
The operation of N is to select the smaller one of the variables x and y and use the smaller value as the result.

第20図は,これらMAXとMINの両方の演算を行なう回路を
示している。この符号85で示されたこの回路は,変数x
とyを表わす信号のための2つの入力端子とフラグ入力
Finのための入力端子を備えているとともに,MAX演算結
果Aの出力端子,MIN演算結果Iの出力端子およびフラグ
出力Foutのための出力端子を備えている。フラグ出力Fo
utとは,入力xとyの大小関係を表わすもので,x=yの
ときにはFout=0,x<yのときにはFout=1,x>yのとき
にはFout=2となる。フラグ入力Finの入力端子は,こ
のようなMAX/MIN関数回路を多段に接続した場合に,前
段の回路のフラグ出力Foutを導くためのものである。
Figure 20 shows a circuit that performs both MAX and MIN operations. This circuit, indicated by the reference numeral 85,
Two input terminals and a flag input for signals representing y and y
It has an input terminal for Fin, an output terminal for MAX operation result A, an output terminal for MIN operation result I, and an output terminal for flag output Fout. Flag output Fo
ut represents the magnitude relation between inputs x and y, and Fout = 0 when x = y, Fout = 1 when x <y, and Fout = 2 when x> y. The input terminal of the flag input Fin is for guiding the flag output Fout of the circuit at the preceding stage when such MAX / MIN function circuits are connected in multiple stages.

第20図に示すMAX/MIN回路は,第14図の多関数回路を3
入力回路に変更することにより実現可能である。また,
第15図に示す多値ALUの一部としても実現できる。多値A
LUの一部とした場合にはセレクト信号SによってMAX出
力AまたはMIN出力Iのいずれかを選択することが可能
となろう。
The MAX / MIN circuit shown in FIG. 20 is the multi-function circuit of FIG.
It can be realized by changing to an input circuit. Also,
It can also be realized as a part of the multi-valued ALU shown in FIG. Multivalued A
When it is made a part of LU, it will be possible to select either MAX output A or MIN output I by the select signal S.

第21図に示すように,複数のMAX/MIN回路80〜83を,前
段のフラグ出力を後段のフラグ入力と接続することによ
って,多段に構成すると,複数ディジット(桁)の多値
変数(x3x2x1x0)と(y3y2y1y0)のMAX,MIN演算を行な
うことができる。最初のフラグ入力Fin0は0である。最
終的なフラグ出力Fout3は上記4ディジットの多値変数
が全体としてどちらが大きいかを表わしている。
As shown in FIG. 21, when a plurality of MAX / MIN circuits 80 to 83 are configured in multiple stages by connecting the flag output of the preceding stage with the flag input of the latter stage, multi digit variable (x) of multiple digits (digits) MAX, MIN operations of ( 3 x 2 x 1 x 0 ) and (y 3 y 2 y 1 y 0 ) can be performed. The first flag input Fin 0 is 0. The final flag output Fout 3 indicates which of the above 4-digit multivalued variables is large as a whole.

MAX/MIN多値関数の真理値表が4値の場合について第22
図に与えられている。
Regarding the case where the truth table of the MAX / MIN multi-valued function has 4 values 22.
Given in the figure.

Fin=0の場合には,出力AまたはIは,入力x,yのいず
れか大きい方または小さい方を示すものとなっている。
When Fin = 0, the output A or I indicates the larger one of the inputs x and y, whichever is smaller.

Fin=1の場合(すなわちy>x)には,出力Aは一方
の入力yをそのまま表わし,出力Iは他方の入力xをそ
のまま表わす。またFout=1となる。
When Fin = 1 (that is, y> x), the output A directly represents one input y and the output I directly represents the other input x. In addition, Fout = 1.

Fin=2の場合(x>y)には,出力Aはxに等しく,
出力Iはyに等しい。またFout=2である。
When Fin = 2 (x> y), the output A is equal to x,
The output I is equal to y. Also, Fout = 2.

第23図は,第22図の真理値表を用いて構成された4値MA
X/MIN関数回路の結線図である。この図では,結節点お
よびスイッチング素子がともに黒丸で示されているが,
第14図に示す多関数回路との対比からその概要は容易に
理解できよう。また,x,yにFinを加えて3入力となって
いる点,出力がA,I,Foutの3出力となっている点,およ
び信号源として電流源が用いられ,その電流の向きが第
2図に示すものと逆向きになっている点において第14図
に示すものと若干異なっている。
Figure 23 is a four-value MA constructed using the truth table of Figure 22.
It is a connection diagram of an X / MIN function circuit. In this figure, both nodes and switching elements are shown as black circles.
The outline can be easily understood from the comparison with the multi-function circuit shown in FIG. In addition, x and y have 3 inputs by adding Fin, 3 outputs are A, I, and Fout, and a current source is used as a signal source. It is slightly different from that shown in FIG. 14 in that it is opposite to that shown in FIG.

第24図は,第23図に示す回路を簡略化したものであり,
これは上述したようにマスク・プログラマブルな回路で
ある。
FIG. 24 is a simplified version of the circuit shown in FIG.
This is a mask programmable circuit as described above.

(3.9)多値全加算回路 第25図は,全加算回路FAのブロックとその入出力関係,
および全加算の演算式を示している。入力は,変数とし
てのxとy,および下位の桁からの繰込みCinである。出
力は,和Sおよび上位の桁への桁上げCoutである。
(3.9) Multi-value full adder circuit Figure 25 shows the block of full adder circuit FA and its input / output relationship.
And the arithmetic expression of full addition are shown. The inputs are x and y as variables and the renormalization Cin from the lower digits. The output is the sum S and carry Cout to the upper digit.

第26図は,4ディジット(4桁)の変数(x3x2x1x0)と
(y3y2y1y0)とを加算する回路およびこの加算の演算式
を示している。第25図に示す全加算回路ブロックと同等
な4つの回路FA0,FA1,FA2,FA3が,下位の桁のブロック
のCoutを上位の桁のブロックのCinに接続するようにし
て,直列に接続されている。
FIG. 26 shows a circuit for adding a 4-digit variable (x 3 x 2 x 1 x 0 ) and (y 3 y 2 y 1 y 0 ) and an arithmetic expression for this addition. Four circuits FA 0 , FA 1 , FA 2 , FA 3 equivalent to the full adder circuit block shown in FIG. 25 connect the Cout of the lower digit block to the Cin of the upper digit block, It is connected in series.

第27図は,4値の全加算回路の真理値表を示している。FIG. 27 shows a truth table of the 4-value full adder circuit.

さらに第28図は,このような真理値表に基づいてプログ
ラムされた全加算回路の具体的な結線図である。4値の
場合,繰込みCinは0と1の2つの値のみをとる。した
がって,第28図のANDアレイにおいてCinのデコーダの出
力側に接続された4本の列ラインのうちの2本は無意味
である。また,出力はSとCoutの2種類しか存在しない
ので,3本の出力ラインのうちの残りの1本の出力ライン
は実際上は不要となる。
Further, FIG. 28 is a specific connection diagram of the full adder circuit programmed based on such a truth table. In the case of four values, the renormalization Cin takes only two values 0 and 1. Therefore, in the AND array of FIG. 28, two of the four column lines connected to the output side of the Cin decoder are meaningless. Also, since there are only two types of output, S and Cout, the remaining one output line of the three output lines is actually unnecessary.

第29図は,第28図の結線図を簡略化したものである。Figure 29 is a simplified version of the wiring diagram of Figure 28.

(3.10)多値全減算回路 第30図は,第1のタイプの全減算回路FSの入出力関係お
よび全減算の演算式を示している。入力は変数x,yと下
位の桁への貸出しBinとであり,出力は,差Dと上位の
桁に対する借りBoutとである。BinとBoutは0または1
の値をとる。この回路はx>yのときのみ有効である。
r=4すなわち4値の場合の全減算の真理値表が第32図
に示されている。
(3.10) Multivalued full subtraction circuit Fig. 30 shows the input / output relation of the first type full subtraction circuit FS and the arithmetic expression of the full subtraction. Inputs are variables x and y and lending Bin to the lower digits, and outputs are difference D and borrowing Bout to the upper digits. Bin and Bout are 0 or 1
Takes the value of. This circuit is effective only when x> y.
The truth table of the total subtraction in the case of r = 4, that is, four values is shown in FIG.

第31図は,第30図に対する全減算回路と同じ機能をもつ
4つの全減算回路FS0,FS1,FS2,FS3を,下位桁のBoutと
上位桁のBinとを接続するようにして直列に接続するこ
とにより,4ディジットの変数(x3x2x1x0)から(y3y2y1
y0)を減算するように構成した回路を示している。ただ
し(x3x2x1x0)>(y3y2y1y0)を条件とする。
FIG. 31 shows four full subtraction circuits FS 0 , FS 1 , FS 2 , FS 3 having the same function as the full subtraction circuit for FIG. Connected in series, the four-digit variable (x 3 x 2 x 1 x 0 ) to (y 3 y 2 y 1
7 shows a circuit configured to subtract y 0 ). However, the condition is (x 3 x 2 x 1 x 0 )> (y 3 y 2 y 1 y 0 ).

4値の場合の全減算回路の具体的な結線図が第33図に,
その簡略化された結線図が第34図に示されている。
Fig. 33 shows a concrete connection diagram of the full subtraction circuit for four values.
The simplified wiring diagram is shown in FIG.

第35図は特殊な減算回路を示している。フラグ入力Fin,
貸出しBinを考慮しなければ,入力x,yのうちの大きい方
がMAX回路で選択され,小さい方がMIN回路で選択され,
選択された値がそれぞれ全減算回路FSに入力し,D=x−
y(x≧y)またはD=y−x(y≧x)の差出力が得
られる。これは絶対差である。Fin,Binを考慮すると非
常に特殊な回路となる。
FIG. 35 shows a special subtraction circuit. Flag input Fin,
Without considering the lending Bin, the larger one of the inputs x and y is selected by the MAX circuit, and the smaller one is selected by the MIN circuit.
The selected values are input to the full subtraction circuit FS and D = x−
A difference output of y (x ≧ y) or D = y−x (y ≧ x) is obtained. This is an absolute difference. Considering Fin and Bin, it becomes a very special circuit.

第36図は,第35図の回路を4ディジット分カスケード
(縦属)接続したものである。
FIG. 36 shows the circuit of FIG. 35 connected in cascade for four digits.

第37図は,入力x,yのいずれが大きい場合にも適用する
ことができ,かつ大小の比較結果を表わす符号(+また
は−)も出力することのできる第2のタイプの多値全減
算回路の入出力関係を示している。符号はフラグF(Fi
n,Fout)によって表わされ,このフラグFは,x>yのと
き2,x=yのとき0,x<yのとき1の値をとる。フラグ入
力Finは下位桁からの入力であり,フラグ出力Fout上位
桁への出力である。他の入,出力は第30図に示すものと
同じである。
FIG. 37 is applicable to the case where either input x or y is large, and can output the sign (+ or −) representing the comparison result of the second type. The input / output relationship of the circuit is shown. The code is the flag F (Fi
This flag F has a value of 2 when x> y, 0 when x = y, and 1 when x <y. The flag input Fin is input from the lower digit, and the flag output Fout is output to the upper digit. Other inputs and outputs are the same as those shown in FIG.

4値の場合の上記第2のタイプの全減算回路の真理値表
が第39図に示されている。
A truth table of the second type full subtraction circuit in the case of four values is shown in FIG.

第38図は,第37図に示された全減算回路を用いて4ディ
ジットの減算(x3x2x1x0)−(y3y2y1y0)を行なう減算
回路を示している。第21図に示した4ディジットのため
のMAX/MIN回路によって(x3x2x1x0),(y3y2y1y0)の
いずれが大きいか,小さいかまたは等しいか判定され,
その結果がMAX/MIN3回路のフラグ出力Fout3によって表
わされる。4つの全減算回路FS0〜FS3が,下位桁のFout
と上位桁のFinとを接続しかつ下位桁のBoutと上位桁のB
inとを接続することによってカスケードに接続されてい
る。最下位桁の全減算回路FS0のFin0として上述のMAX/M
IN3回路のFout3が入力している。最上位の桁の回路FS3
のFout3が最終的な減算結果の符号Sを表わしている。
FIG. 38 shows a subtraction circuit which performs 4-digit subtraction (x 3 x 2 x 1 x 0 )-(y 3 y 2 y 1 y 0 ) using the full subtraction circuit shown in FIG. There is. The MAX / MIN circuit for 4 digits shown in Fig. 21 determines whether (x 3 x 2 x 1 x 0 ) or (y 3 y 2 y 1 y 0 ) is larger, smaller, or equal. ,
The result is represented by the flag output Fout 3 of the MAX / MIN 3 circuit. Four full subtraction circuits FS 0 to FS 3
And Fin of the upper digit are connected, and Bout of the lower digit and B of the upper digit are connected.
Connected in cascade by connecting with in. As the Fin 0 of the least significant digit full subtraction circuit FS 0 , the above MAX / M
IN 3 Circuit Fout 3 is input. Top digit circuit FS 3
Fout 3 represents the sign S of the final subtraction result.

(3.11)多値全乗算回路 多値全乗算回路Mulの入出力信号が第40図に示されてい
る。入力は,2つの変数x,yと,下位桁からの繰込みCinで
あり,出力は積Pと上位桁への桁上げ(キャリ)Coutで
ある。
(3.11) Multivalued full multiplication circuit The input / output signals of the multivalued full multiplication circuit Mul are shown in FIG. The input is two variables x and y and the carry-in Cin from the lower digit, and the output is the product P and the carry Cout to the upper digit.

4値の場合の全乗算回路の真理値表が第42図に示されて
いる。
FIG. 42 shows the truth table of the full multiplication circuit in the case of four values.

また,この真理値表を用いてプログラムされた具体的な
結線が第43図に,その簡略形が第44図にそれぞれ示され
ている。
In addition, the specific connections programmed using this truth table are shown in FIG. 43, and their simplified forms are shown in FIG. 44.

上述の全乗算回路4つを用いて構成された4ディジット
×1ディジットの全乗算回路の例が第41図に示されてい
る。この回路は,1桁の全乗算回路Mul0〜Mul3が,下位桁
のCoutを上位桁のCinと接続するようにして,カスケー
ドに接続されることにより構成されている。(x3x2x
1x0)×y0の乗算が行なわれるから,各回路Mul0〜Mul3
の入力は,x0とy0,x1とy0,x2とy0,x3とy0である。乗算結
果は,各回路Mul0〜Mul3の積P0〜P3およびの回路Mul3
上げCout3を用いて,(Cout3P3P2P1P0)で表わされる。
Cout3をP4と置きかえてもよい。
FIG. 41 shows an example of a 4-digit.times.1-digit full multiplying circuit constructed by using the above four full multiplying circuits. This circuit is configured by connecting all the one-digit multiplication circuits Mul 0 to Mul 3 in cascade so that the lower digit Cout is connected to the upper digit Cin. (X 3 x 2 x
1 x 0 ) × y 0 multiplication is performed, so each circuit Mul 0 to Mul 3
The inputs are x 0 and y 0 , x 1 and y 0 , x 2 and y 0 , x 3 and y 0 . The multiplication result is represented by (Cout 3 P 3 P 2 P 1 P 0 ) using the product P 0 to P 3 of each circuit Mul 0 to Mul 3 and the circuit Mul 3 carry Cout 3 of each.
Cout 3 may be replaced with P 4 .

複数ディジットの変数と複数ディジットの変数との乗算
は,複数ディジットの変数と1ディジットの乗算を繰返
しかつ乗算結果を桁をあわせて順次加算していけば達成
される。しかしながら,複数ディジット掛ける複数ディ
ジットを一挙に行なうことも可能である。そのような乗
算を実行する回路の一例が,4ディジットの変数(x3x2x1
x0)と2ディジットの変数(y1y0)との乗算回路として
第45図に示されている。
Multiplication of a variable of a plurality of digits and a variable of a plurality of digits is achieved by repeating multiplication of a variable of a plurality of digits and one digit and sequentially adding the multiplication results with digits aligned. However, it is also possible to multiply multiple digits and multiple digits at once. An example of a circuit that performs such multiplication is a 4-digit variable (x 3 x 2 x 1
It is shown in FIG. 45 as a multiplication circuit of x 0 ) and a 2-digit variable (y 1 y 0 ).

第45図の回路は,(x3x2x1x0)×y0を行なう回路Mul00
〜Mul30(出力P00〜P40)と,(x3x2x1x0)×y1を行な
う回路Mul01〜Mul31(出力P01〜P41)と,これらの回路
の出力の桁の一致するもの同志を加算する回路FA0〜FA4
とから構成されている。最終的な乗算結果は(P5P4P3P2
P1P0)で与えられる。
The circuit shown in FIG. 45 is a circuit for performing (x 3 x 2 x 1 x 0 ) x y 0 Mul 00
~ Mul 30 (outputs P 00 to P 40 ) and a circuit that performs (x 3 x 2 x 1 x 0 ) x y 1 Mul 01 to Mul 31 (outputs P 01 to P 41 ) and the outputs of these circuits. Circuits that match digits Digit adder FA 0 to FA 4
It consists of and. The final multiplication result is (P 5 P 4 P 3 P 2
Given by P 1 P 0 ).

第45図に示す破線で囲まれた2つの乗算回路Mul10,Mul
01および加算回路FA0を,第46図に示すように,7入力4
出力の回路としてまとめ,これを対応する真理値表にし
たがってプログラムするようにすることも可能である。
Two multiplication circuits Mul 10 and Mul surrounded by broken lines shown in FIG.
01 and adder FA 0, as shown in FIG.
It is also possible to collect them as output circuits and program them according to the corresponding truth table.

(3.12)多値全除算回路 第47図は多値全除算回路FDの入出力の関係を示してい
る。入力は,変数x,yと,上位桁からの借りBinであり,
出力は商Qと余りRである。
(3.12) Multivalued total division circuit Figure 47 shows the input / output relation of the multivalued division circuit FD. The inputs are the variables x and y and the borrowed Bin from the upper digit,
The output is the quotient Q and the remainder R.

4値の全除算回路の真理値表が第49図に示されている。
この真理値表を用いてプログラムされた全除算回路の結
線例が第50図に,その簡略化結線例が第51図にそれぞれ
示されている。
The truth table of the 4-value division circuit is shown in FIG.
A wiring example of the total division circuit programmed by using this truth table is shown in FIG. 50, and a simplified wiring example thereof is shown in FIG. 51.

第48図は,上述の全除算回路と同じ構成の4つの全除算
回路FD0〜FD3をカスケードに接続して4ディジットの変
数(x3x2x1x0)を1ディジットの変数y0で割る回路を示
している。上位桁の余りRが下位桁の借りBinとして入
力している。各回路の一方の入力はx0,x1,x2,x3である
が他方の入力は共通にy0である。演算結果は,(Q3Q2Q1
Q0)余りR0となる。
FIG. 48 shows that a 4-digit variable (x 3 x 2 x 1 x 0 ) is converted to a 1-digit variable y by connecting four full-divider circuits FD 0 to FD 3 having the same configuration as the above-mentioned full-divider circuit in cascade. A circuit divided by 0 is shown. The remainder R in the upper digit is entered as the borrow Bin in the lower digit. One input of each circuit is x 0 , x 1 , x 2 , x 3 , but the other input is commonly y 0 . The calculation result is (Q 3 Q 2 Q 1
Q 0 ) The remainder is R 0 .

複数ディジットの変数を複数ディジットの変数で割る場
合には,その演算に応じた真理値表にしたがって,その
除算を一挙に行なえる回路をあらかじめつくっておくと
好ましい。第52図は4ディジットの変数(x3x2x1x0)を
2ディジットの変数(y1y0)で割る回路の概念を示して
いる。この回路はカスケードに接続された4つの全減算
回路FD10〜FD13から構成され,各全減算回路は5入力3
出力の回路となっている。すなわち,入力は,xi,2ディ
ジットの変数y1とy0,および2ディジット借りBin1iとBi
n0i,出力は商Qiおよび2ディジット余りR1iとR0i(i=
0〜3)である。このような回路の真理値表はやや複雑
となるが作成することは容易である。
When dividing a variable with a plurality of digits by a variable with a plurality of digits, it is preferable to previously create a circuit capable of performing the division at once in accordance with a truth table corresponding to the operation. FIG. 52 shows the concept of a circuit in which a 4-digit variable (x 3 x 2 x 1 x 0 ) is divided by a 2-digit variable (y 1 y 0 ). This circuit consists of four full subtraction circuits FD 10 to FD 13 connected in cascade, each full subtraction circuit having 5 inputs and 3 inputs.
It is an output circuit. That is, the input is xi, a 2-digit variable y 1 and y 0 , and a 2-digit borrow Bin 1 i and Bi.
n 0 i, the output is the quotient Q i and the 2-digit remainder R 1 i and R 0 i (i =
0-3). The truth table of such a circuit is a little complicated, but it is easy to create.

(3.13)CMOS多値ALU 上記実施例では,ANDアレイ22およびセレクト・アレイ25
におけるスイッチング素子として主にnMOS FETが用い
られているが,これをpMOS FETで置きかえることも可
能である。しかしながら,CMOS FETを用いると,高速化
とエラー発生の防止を図ることができる。以下に,CMOS
を用いた回路について説明する。
(3.13) CMOS multi-level ALU In the above embodiment, the AND array 22 and the select array 25
The nMOS FET is mainly used as the switching element in the above, but it can be replaced by the pMOS FET. However, using a CMOS FET can speed up and prevent the occurrence of errors. Below, CMOS
A circuit using is explained.

第53図はnMOSを用いたスイッチング動作を示すもので,
(A)は回路図,(B)は波形図である。
Figure 53 shows the switching operation using nMOS.
(A) is a circuit diagram and (B) is a waveform diagram.

第53図(A)において,電圧源Eと出力端子(出力電圧
Vo)との間にnMOS FETQNからなるスイッチング素子が
接続され,出力端子は抵抗値の大きな抵抗RLを介して接
地されている。FETQNは制御信号Vcによってオン,オフ
制御される。
In FIG. 53 (A), the voltage source E and the output terminal (output voltage
A switching element consisting of an nMOS FETQ N is connected to Vo), and the output terminal is grounded via a large resistance RL . FETQ N is on / off controlled by a control signal Vc.

制御電圧VcがHレベル(たとえば5V)になるとFETQN
オンとなり,Hレベルの出力電圧Voが現われる。制御電圧
VcがLレベル(OV)になると,FETQNはオフとなり,出力
電圧VoもLレベル(OV)になる。
When the control voltage Vc becomes H level (for example, 5V), the FET Q N is turned on and the H level output voltage Vo appears. Control voltage
When Vc becomes L level (OV), FETQ N turns off and the output voltage Vo also becomes L level (OV).

このスイッチング動作において,第53図(B)に示すよ
うに,FETQNがオンとなったときの出力電圧Voの立上りは
非常に速い。しかしながら,電源電圧Eは,オン時のFE
TQNの抵抗と抵抗RLとによって分圧され,出力電圧Voは
電圧Eよりも低い値となる。これはエラー発生要因とな
り,3値,4値程度の回路では問題はないとしても,たとえ
ば10値程度になると重要な問題となる。また,FETQNがオ
フとなったときに,FETQNのサブストレート/ソース間容
量CSBに蓄えられていた電荷が抵抗RLを通して放電する
ので,応答がきわめて遅くなるという問題がある。
In this switching operation, as shown in FIG. 53 (B), the output voltage Vo rises very quickly when the FET Q N is turned on. However, the power supply voltage E is
The voltage is divided by the resistance of TQ N and the resistance R L, and the output voltage Vo becomes lower than the voltage E. This causes an error, and even if there are no problems in a circuit with 3 or 4 values, it becomes an important problem with, for example, about 10 values. Further, when the FETQ N is turned off, the charge stored in the substrate-source capacitance C SB of the FETQ N is discharged through the resistor R L , which causes a problem of extremely slow response.

第54図はCMOS FETを用いて上記の問題点を解決したも
のであり,(A)は回路図,(B)は波形図である。第
54図(A)において,電圧源Eと出力端子との間にpMOS
FETQpが,出力端子とアースとの間にnMOS FETQNがそ
れぞれ接続されている。これらのFETQp,QNはともに制御
電圧Vcによって制御される。制御電圧Vcは第54図(B)
に示されているように両極性(たとえば+5V〜−5V)を
もつ。
FIG. 54 shows a solution of the above problems using a CMOS FET. (A) is a circuit diagram and (B) is a waveform diagram. First
In Fig. 54 (A), pMOS is connected between the voltage source E and the output terminal.
FETQp has nMOS FETQ N connected between the output terminal and ground. Both of these FETs Qp and Q N are controlled by the control voltage Vc. The control voltage Vc is shown in Fig. 54 (B).
It has both polarities (for example, + 5V to -5V) as shown in FIG.

制御電圧VcがHレベル(+5V)のときにはFETQpがオフ,
FETQNがオンとなるから,出力電圧をVoはLレベル(O
V)となる。逆に制御電圧VcがLレベル(−5V)になる
と,FETQpがオン,FETQNがオフとなるので,電源電圧Eが
そのまま出力端子に現われ,出力電圧VoはHレベル
(E)となる。
When the control voltage Vc is H level (+ 5V), FETQp is off,
Since FETQ N is turned on, the output voltage Vo is at L level (O
V). Conversely, when the control voltage Vc becomes L level (-5V), the FET Qp is turned on and the FET Q N is turned off, so that the power supply voltage E appears at the output terminal as it is, and the output voltage Vo becomes H level (E).

このようにして,第54図(A)に示されるスイッチング
回路は,立上り,立下りともに応答速度が速い(たとえ
ば数n sec程度),エラーが無いので10値等の高基数の
ための回路構成も可能となる,FETQp,QNのいずれか一方
が常にオンであるから出力抵抗が小さい,などの特長を
もつ。
In this way, the switching circuit shown in FIG. 54 (A) has a fast response speed in both rising and falling (for example, about several n seconds), and since there is no error, the circuit configuration for a high radix such as ten values is obtained. Is also possible, and one of FET Qp and Q N is always on, so the output resistance is small.

第54図(A)において,電圧関係は変化するが,FETQpと
QNを交換してもよいのはいうまでもない。
In Fig. 54 (A), although the voltage relationship changes,
It goes without saying that Q N may be exchanged.

第55図は,第54図(A)に示されたCMOS FETによるス
イッチング回路を利用し構成された第2図等に対応する
多値論理関数回路を示しており,その一部のみが図示さ
れている。
FIG. 55 shows a multi-valued logic function circuit corresponding to FIG. 2 and the like constructed by using the switching circuit by the CMOS FET shown in FIG. 54 (A), only a part of which is shown. ing.

上述したANDアレイ22に代えて,pMOS ANDアレイ22AとnM
OS ANDアレイ22Bとが設けられている。各列ラインにお
いて,pMOS ANDアレイ22Aでは3つずつのpMOS FET(た
とえばQpx,Qpy,Qpz)が直列に接続され,これらのFETが
デコーダ31,32,33の出力のうちプログラムされた結線か
ら導かれる出力によって制御される。同じように,nMOS
ANDアレイ22Bにおいても,各列ラインにおいて3つず
つのnMOS FET(たとえばQNx,QNy,QNz)が直列に接続さ
れ,これらがpMOS ANDアレイ22Aの対応するpMOS FET
に与えられるデコーダ出力によってそれぞれ制御され
る。nMOS ANDアレイ22Bの各列ラインの一方の端は接地
され,他方の端は出力ライン5に接続されている。pMOS
ANDアレイ22Aの各列ラインの一方の端は出力ライン5
に接続され,他方の端はメモリ・アレイ21のいずれかの
行ラインにプログラムによって接続されている。デコー
ダ31〜33は,上述した両極性の制御信号を出力するもの
である。たとえば,入力xがx=0のときには,デコー
ダ31の0の出力端子が−5V,他のすべての出力端子(1,
2,3)は+5Vとなる。また,信号源として電圧源11A〜13
A(たとえば1V,2V,3V)が採用されている。
Instead of the AND array 22 described above, pMOS AND arrays 22A and nM
An OS AND array 22B is provided. In each column line, three pMOS FETs (eg Qpx, Qpy, Qpz) are connected in series in the pMOS AND array 22A, and these FETs are derived from the programmed connection of the outputs of the decoders 31, 32, 33. Controlled by the output being burned. Similarly, nMOS
Also in the AND array 22B, three nMOS FETs (eg, Q N x, Q N y, Q N z) are connected in series in each column line, and these are connected to the corresponding pMOS FET of the pMOS AND array 22A.
Respectively controlled by the decoder output applied to the. One end of each column line of the nMOS AND array 22B is grounded, and the other end is connected to the output line 5. pMOS
One end of each column line of the AND array 22A has an output line 5
, And the other end is programmatically connected to any row line of memory array 21. The decoders 31 to 33 output the bipolar control signals described above. For example, when the input x is x = 0, the output terminal of 0 of the decoder 31 is -5V, all other output terminals (1,
2,3) is + 5V. In addition, voltage sources 11A to 13 are used as signal sources.
A (for example, 1V, 2V, 3V) is adopted.

第55図に図示の回路部分は,x=0,y=2,z=3のときに,
出力端子に論理値2の関数値を表わす電圧信号(2V)を
発生するように構成されている。
The circuit part shown in FIG. 55 is such that when x = 0, y = 2, z = 3,
It is configured to generate a voltage signal (2V) representing a function value of logical 2 at the output terminal.

CMOSスイッチング回路を利用して第15図に示されるよう
な多値ALUも容易に構成できる。たとえば,xとyの2入
力の4値ALUは,第55図において,デコーダ31(36)を
セレクト信号Sのためのものとし,デコーダ32(31),3
3(32)を入力x,yのためのものとする。またpMOS AND
アレイ22AをpMOS ANDアレイ(22a)とpMOSセレクト・
アレイ(25a)に機能的に分け,同じようにnMOS ANDア
レイ22BによってnMOS ANDアレイ(22b)とnMOSセレク
ト・アレイ(25b)を構成すればよい。第55図におい
て,第15図との対比が明瞭になるように,第15図に示す
ものと同一物または関連するものには,同一符号または
関係符号(添字a,bをつけた符号)が( )内に示され
ている。第55図に示された回路部分では関数(演算)f1
が選択,f1(x,y)=f1(2,3)=2(V)の演算結果を
表わす信号が出力端子4に現われている。
A multi-valued ALU as shown in FIG. 15 can be easily constructed by using a CMOS switching circuit. For example, the 4-input ALU with two inputs x and y has the decoder 31 (36) for the select signal S in FIG. 55 and the decoders 32 (31), 3
Let 3 (32) be for inputs x, y. Also pMOS AND
Array 22A with pMOS AND array (22a) and pMOS select
It may be functionally divided into an array (25a), and similarly, an nMOS AND array (22b) and an nMOS select array (25b) may be configured by the nMOS AND array 22B. In FIG. 55, for the sake of clear comparison with FIG. 15, the same or related symbols as those shown in FIG. 15 have the same or related symbols (symbols with subscripts a and b). It is shown in (). In the circuit part shown in FIG. 55, the function (operation) f 1
, F 1 (x, y) = f 1 (2,3) = 2 (V). The signal representing the operation result appears at the output terminal 4.

【図面の簡単な説明】[Brief description of drawings]

第1図は4値3入力多値論理関数の真理値表の一例を示
す図である。 第2図は,第1図に示す真理値表によって表わされる多
値関数を出力する多値論理関数回路を示す回路図であ
り,第3図は第2図の記号を説明するものである。 第4図(A)および(B)は,第2図に示す電流信号源
の具体的回路構成の例を示す回路図である。 第5図,第2図に示すデコーダであって電圧モードで動
作するものの具体例を示す回路図であり,第6図は第5
図の回路を説明するための基本回路を示すものであり,
第7図は第5図に示すFETのドレイン電流の立上りしき
い値と回路のスレシホールド・レベルとの関数を示して
いる。 第8図は,電流モードで動作するデコーダの具体例を示
す回路図であり,第9図(A)〜(D)は第8図の回路
の出力信号を示すグラフである。 第10図は,アドレスト・スイッチの他の例を示す回路図
である。 第11図および第12図は,第2図の回路をマスク・プログ
ラマブルとすることによって第2図の回路を簡略化して
得られる多値論理関数回路を示す回路図である。 第13図(A)は,多関数の真理値表の例を示す図,同
(B)は4つの関数と真理値表の値との対応関係を示す
図である。 第14図は,第13図の真理値表を実現する多関数回路の一
例を示す回路図である。 第15図は,多値ALUの一例を示すものであり,4値2入力A
LUの回路図である。 第16図は,第15図に示す多値ALUを1チップにIC化した
状態をブロックで示すものである。 第17図は,メモリ・アレイとバイラテラルTゲートとに
よって構成される多値ALUの例を示す回路図である。 第18図は,5個のALUチップを用いて16関数の演算を行な
うことのできるALUを実現したブロック図であり,第19
図は,第18図の回路においてバイラテラルTゲートとし
て用いられるALUの具体的結線を示す回路図である。 第20図は,多値MAX/MIN関数回路ブロックの入出力の関
係を示すものである。 第21図は,MAX/MIN回路を多段に接続して構成される複数
ディジットのMAX/MIN回路のブロック図である。 第22図は,4値MAX/MIN関数の真理値表を示す図である。 第23図は,4値MAX/MIN関数回路の結線図であり,第24図
は,第23図の回路を簡略化した場合の結節図である。 第25図は,多値全加算回路ブロックの入出力の関係を示
すものである。 第26図は,全加算回路を多段に接続して構成される複数
ディジットのための全加算回路のブロック図である。 第27図は,4値全加算の真理値表を示す図である。 第28図は,4値全加算回路の結線図であり,第29図は,第
28図の回路を簡略化した結線図である。 第30図は,第1のタイプの多値全減算回路ブロックの入
出力の関係を示すものである。 第31図は,第1のタイプの全減算回路を多段に接続して
構成される複数ディジットのための全減算回路のブロッ
ク図である。 第32図は,第1のタイプの全減算回路における4値全減
算の真理値表を示す図である。 第33図は,第1のタイプの4値全減算回路の結線図であ
り,第34図は,第33図の回路を簡略化した結線図であ
る。 第35図は,特殊な減算回路を示し,第36図は,第35図の
回路を4ディジット分カスケードに接続した回路のブロ
ック図である。 第37図は,第2のタイプの全減算回路ブロックの入出力
の関係を示すものである。 第38図は,第2のタイプの全減算回路を多段に接続して
構成される複数ディジットのための全減算回路のブロッ
ク図である。 第39図は,第2のタイプの全減算回路における4値全減
算の真理値表を示す図である。 第40図は,多値全乗算回路ブロックの入出力の関係を示
すものである。 第41図は,全乗算回路を多段に接続して4ディジットと
1ディジットの変数の乗算回路を構成した例を示すブロ
ック図である。 第42図は,4値全乗算の真理値表を示す図である。 第43図は,4値全乗算回路の結線図であり,第44図は,そ
の簡略化された結線図である。 第45図は,4ディジットの変数と2ディジットの変数の乗
算を一挙に行なう回路の例を示すブロック図であり,第
46図は,第45図のいくつかの構成要素をまとめたブロッ
クを示すものである。 第47図は,多値全除算回路ブロックの入出力の関係を示
すものである。 第48図は,全除算回路を多段に接続して4ディジットの
変数を1ディジットの変数で割る除算回路を構成した例
を示すブロック図である。 第49図は,4値全除算の真理値表を示す図である。 第50図は,4値全除算回路の結線図であり,第51図はその
簡略化された結線図である。 第52図は,4ディジットの変数を2ディジットの変数で割
る回路の概念を示すブロック図である。 第53図(A)はnMOS FETスイッチング回路を,第53図
(B)はその波形をそれぞれ示すものである。 第54図(A)はCMOS FETスイッチング回路を,第54図
(B)はその波形をそれぞれ示すものである。 第55図は,CMOS多値論理関数回路およびCMOS多値ALUの例
を示す回路図である。 5……出力ライン, 10,11,12,13……信号源, 21……メモリ・アレイ, 22,22a,22b……ANDアレイ, 23……アドレスト・スイッチ, 25,25a,25b……セレクト・アレイ, 31,32,36……デコーダ, 71,72,73……バイラテラルTゲート。
FIG. 1 is a diagram showing an example of a truth table of a four-value three-input multivalued logic function. FIG. 2 is a circuit diagram showing a multivalued logic function circuit that outputs a multivalued function represented by the truth table shown in FIG. 1, and FIG. 3 explains the symbols in FIG. FIGS. 4A and 4B are circuit diagrams showing examples of specific circuit configurations of the current signal source shown in FIG. FIG. 6 is a circuit diagram showing a specific example of the decoder shown in FIGS. 5 and 2 which operates in a voltage mode, and FIG.
It shows a basic circuit for explaining the circuit of the figure,
FIG. 7 shows the function of the rising threshold of the drain current of the FET shown in FIG. 5 and the threshold level of the circuit. FIG. 8 is a circuit diagram showing a specific example of the decoder operating in the current mode, and FIGS. 9A to 9D are graphs showing output signals of the circuit of FIG. FIG. 10 is a circuit diagram showing another example of the addressed switch. 11 and 12 are circuit diagrams showing a multivalued logic function circuit obtained by simplifying the circuit of FIG. 2 by making the circuit of FIG. 2 mask-programmable. FIG. 13 (A) is a diagram showing an example of a multi-function truth table, and FIG. 13 (B) is a diagram showing a correspondence relationship between four functions and values in the truth table. FIG. 14 is a circuit diagram showing an example of a multi-function circuit that realizes the truth table of FIG. FIG. 15 shows an example of a multi-valued ALU, which is a 4-level 2-input A
It is a circuit diagram of LU. FIG. 16 is a block diagram showing a state in which the multilevel ALU shown in FIG. 15 is integrated into one chip. FIG. 17 is a circuit diagram showing an example of a multi-valued ALU composed of a memory array and a bilateral T gate. Figure 18 is a block diagram of an ALU that can perform 16 functions using five ALU chips.
The figure is a circuit diagram showing a specific connection of an ALU used as a bilateral T gate in the circuit of FIG. Figure 20 shows the input / output relationship of the multi-valued MAX / MIN function circuit block. FIG. 21 is a block diagram of a multi-digit MAX / MIN circuit configured by connecting MAX / MIN circuits in multiple stages. FIG. 22 is a diagram showing a truth table of the four-valued MAX / MIN function. FIG. 23 is a connection diagram of a 4-valued MAX / MIN function circuit, and FIG. 24 is a knot diagram when the circuit of FIG. 23 is simplified. FIG. 25 shows the input / output relationship of the multilevel full adder circuit block. FIG. 26 is a block diagram of a full adder circuit for a plurality of digits configured by connecting the full adder circuits in multiple stages. FIG. 27 is a diagram showing a truth table for 4-value full addition. Fig. 28 is a wiring diagram of the 4-value full adder circuit, and Fig. 29 is a wiring diagram.
28 is a connection diagram that simplifies the circuit of FIG. 28. FIG. FIG. 30 shows the input / output relationship of the first type multi-value full subtraction circuit block. FIG. 31 is a block diagram of an all-subtraction circuit for a plurality of digits configured by connecting the first-type all-subtraction circuits in multiple stages. FIG. 32 is a diagram showing a truth table of four-value full subtraction in the first-type full subtraction circuit. FIG. 33 is a connection diagram of the first-type four-value full subtraction circuit, and FIG. 34 is a connection diagram simplified from the circuit of FIG. FIG. 35 shows a special subtraction circuit, and FIG. 36 is a block diagram of a circuit in which the circuit of FIG. 35 is connected in a cascade of 4 digits. FIG. 37 shows the input / output relationship of the second type total subtraction circuit block. FIG. 38 is a block diagram of an all-subtraction circuit for a plurality of digits configured by connecting the second-type all-subtraction circuits in multiple stages. FIG. 39 is a diagram showing a truth table of four-value full subtraction in the second type full subtraction circuit. FIG. 40 shows the input / output relationship of the multivalued all multiplication circuit block. FIG. 41 is a block diagram showing an example in which all the multiplying circuits are connected in multiple stages to form a multiplying circuit for variables of 4 digits and 1 digit. FIG. 42 is a diagram showing a truth table for four-value full multiplication. FIG. 43 is a connection diagram of the 4-value full multiplication circuit, and FIG. 44 is a simplified connection diagram thereof. FIG. 45 is a block diagram showing an example of a circuit for multiplying a 4-digit variable and a 2-digit variable all at once.
Figure 46 shows a block that summarizes some of the components of Figure 45. FIG. 47 shows the input / output relationship of the multivalued total division circuit block. FIG. 48 is a block diagram showing an example in which all division circuits are connected in multiple stages to configure a division circuit for dividing a 4-digit variable by a 1-digit variable. FIG. 49 is a diagram showing a truth table for 4-value total division. FIG. 50 is a wiring diagram of the 4-value full division circuit, and FIG. 51 is a simplified wiring diagram thereof. FIG. 52 is a block diagram showing the concept of a circuit for dividing a 4-digit variable by a 2-digit variable. FIG. 53 (A) shows an nMOS FET switching circuit, and FIG. 53 (B) shows its waveform. FIG. 54 (A) shows a CMOS FET switching circuit, and FIG. 54 (B) shows its waveform. FIG. 55 is a circuit diagram showing an example of a CMOS multilevel logic function circuit and a CMOS multilevel ALU. 5 ... Output line, 10,11,12,13 ... Signal source, 21 ... Memory array, 22,22a, 22b ... AND array, 23 ... Addressed switch, 25,25a, 25b ... Select array, 31,32,36 ... Decoder, 71,72,73 ... Bilateral T gate.

Claims (5)

【特許請求の範囲】[Claims] 【請求項1】適用される多値論理の複数の論理値をそれ
ぞれ表わす信号を発生する複数の多値信号源, これらの信号源にそれぞれ接続された複数の信号ライン
と,演算すべき複数の異なる関数のそれぞれごとに設け
られ,各関数の真理値表にしたがってプログラムされる
ことにより,信号ラインのいずれか1つに結節点で接続
された複数のアドレス・ラインからなるアドレス・ライ
ン群とを含むメモリ・アレイ, 演算させるべき関数を選択するセレクト信号によって上
記アドレス・ライン群のいずれか1つを選択する第1の
選択手段, 多値入力信号によって,少なくとも選択されたアドレス
・ライン群の中の1つのアドレス・ラインを選択する第
2の選択手段,ならびに 上記第1および第2選択手段によって選択されたアドレ
ス・ラインから得られる論理値を表わす信号を出力する
出力回路 を備えている多値ALU。
1. A plurality of multi-valued signal sources which generate signals respectively representing a plurality of logic values of an applied multi-valued logic, a plurality of signal lines respectively connected to these signal sources, and a plurality of signals to be operated. An address line group consisting of a plurality of address lines connected at a node to any one of the signal lines is provided by being provided for each different function and programmed according to the truth table of each function. A memory array including; first selecting means for selecting one of the above address line groups by a select signal for selecting a function to be operated; at least one of the address line groups selected by a multilevel input signal Second selecting means for selecting one of the address lines, and the address line selected by the first and second selecting means. A multi-valued ALU having an output circuit that outputs a signal representing a logical value obtained from the above.
【請求項2】メモリ・アレイがフィールド・プログラマ
ブルである,特許請求の範囲第(1)項に記載の多値AL
U。
2. A multi-valued AL according to claim 1, wherein the memory array is field programmable.
U.
【請求項3】メモリ・アレイ,第1の選択手段および第
2の選択手段がマスク・プログラマブルである,特許請
求の範囲第(1)項に記載の多値ALU。
3. A multi-valued ALU according to claim 1, wherein the memory array, the first selecting means and the second selecting means are mask programmable.
【請求項4】上記多値信号源が電流源である,特許請求
の範囲第(1)項に記載の多値ALU。
4. The multilevel ALU according to claim 1, wherein the multilevel signal source is a current source.
【請求項5】上記多値信号源が電圧源である,特許請求
の範囲第(1)項に記載の多値ALU。
5. The multilevel ALU according to claim 1, wherein the multilevel signal source is a voltage source.
JP4547086A 1986-03-04 1986-03-04 Multi-valued ALU Expired - Lifetime JPH0724021B2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP4547086A JPH0724021B2 (en) 1986-03-04 1986-03-04 Multi-valued ALU
US07/021,005 US4914614A (en) 1986-03-04 1987-03-02 Multivalued ALU
US07/664,518 US5227993A (en) 1986-03-04 1991-03-05 Multivalued ALU

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP4547086A JPH0724021B2 (en) 1986-03-04 1986-03-04 Multi-valued ALU
EP87112986A EP0305583B1 (en) 1987-09-04 1987-09-04 Multivalued alu

Publications (2)

Publication Number Publication Date
JPS62203235A JPS62203235A (en) 1987-09-07
JPH0724021B2 true JPH0724021B2 (en) 1995-03-15

Family

ID=26108435

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4547086A Expired - Lifetime JPH0724021B2 (en) 1986-03-04 1986-03-04 Multi-valued ALU

Country Status (1)

Country Link
JP (1) JPH0724021B2 (en)

Also Published As

Publication number Publication date
JPS62203235A (en) 1987-09-07

Similar Documents

Publication Publication Date Title
US6427156B1 (en) Configurable logic block with AND gate for efficient multiplication in FPGAS
US7872497B2 (en) Flexible carry scheme for field programmable gate arrays
JP3594601B2 (en) Logic structure and circuit for fast carry
US3731073A (en) Programmable switching array
GB1604947A (en) Logic circuits
US4914614A (en) Multivalued ALU
JPH024171B2 (en)
US4441158A (en) Arithmetic operation circuit
US5448185A (en) Programmable dedicated FPGA functional blocks for multiple wide-input functions
US3313926A (en) Microelectronic cellular array
US5027012A (en) Programmable logic circuit using wired-or tristate gates
US4495590A (en) PLA With time division multiplex feature for improved density
US5227993A (en) Multivalued ALU
CN111752529B (en) Programmable logic unit structure supporting efficient multiply-accumulate operation
JPH0724021B2 (en) Multi-valued ALU
Simonettaa et al. A new approach for designing of computer architectures using multi-value logic
US3584205A (en) Binary arithmetic and logic manipulator
Papandroulidakis et al. Multi-state memristive nanocrossbar for high-radix computer arithmetic systems
US5491431A (en) Logic module core cell for gate arrays
EP0305583B1 (en) Multivalued alu
JPH0724017B2 (en) Multivalued logic function circuit
JPH0724018B2 (en) Multi-valued logic multi-function circuit
KAUTZ Programmable cellular logic
JPH0222409B2 (en)
JP2005122546A (en) Data processor