JP2000067573A - Memory provided with arithmetic function - Google Patents

Memory provided with arithmetic function

Info

Publication number
JP2000067573A
JP2000067573A JP23253198A JP23253198A JP2000067573A JP 2000067573 A JP2000067573 A JP 2000067573A JP 23253198 A JP23253198 A JP 23253198A JP 23253198 A JP23253198 A JP 23253198A JP 2000067573 A JP2000067573 A JP 2000067573A
Authority
JP
Japan
Prior art keywords
data
word
memory
arithmetic
circuit
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.)
Pending
Application number
JP23253198A
Other languages
Japanese (ja)
Inventor
Keikichi Tamaru
啓吉 田丸
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP23253198A priority Critical patent/JP2000067573A/en
Publication of JP2000067573A publication Critical patent/JP2000067573A/en
Pending legal-status Critical Current

Links

Landscapes

  • Static Random-Access Memory (AREA)
  • Image Processing (AREA)
  • Memory System (AREA)
  • Dram (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a memory provided with arithmetic functions in which a layout area is not increased remarkably even when the functions are increased and moreover, which is capable of calculating data whose length is one word or more. SOLUTION: This memory is provided with memory blocks 1, 2, 3,... whose each memory block has word blocks WBA, WBB whose each word block includes word parts WPs capable of being connected each other and capable of reading and writing data among them and the outside respectively and an arithmetic circuit 1b which performs plural kinds of operations by reading data from the word blocks WBA, WBB and which writes these results in either of word blocks WBA, WBB and a control part 110 which makes arithmetic circuits 1b select and execute either of plural kinds of operations.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、例えば画像処理分
野に適用する演算機能付きメモリに関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a memory with an arithmetic function applied to, for example, the field of image processing.

【0002】[0002]

【従来の技術】機能メモリとは、メモリとメモリに格納
されたデータを処理するための論理回路とを一体化した
アーキテクチャである。その論理回路は、メモリのいく
つかのワード毎に簡単なデータ処理を行う複数の回路か
らなり、その複数の回路を一斉に動作させることによっ
て、大量のデータを並列に処理する。このように、機能
メモリは大量のデータを並列に処理するため、メモリチ
ップ及びプロセッサーチップを配線した構成に比べて全
体として処理速度が向上する利点がある。
2. Description of the Related Art A functional memory is an architecture in which a memory and a logic circuit for processing data stored in the memory are integrated. The logic circuit includes a plurality of circuits that perform simple data processing for every several words of the memory, and processes a large amount of data in parallel by operating the plurality of circuits simultaneously. As described above, since the functional memory processes a large amount of data in parallel, there is an advantage that the processing speed is improved as a whole as compared with the configuration in which the memory chip and the processor chip are wired.

【0003】機能メモリには、例えば連想メモリや演算
機能付きメモリがある。連想メモリは、メモリに記憶さ
れているデータと外部入力との一致演算を行う論理回路
を持つメモリである。演算機能付きメモリには、例えば
メモリの2ワード間のデータ同士の加算を行う論理回路
を持つ加算機能メモリがある。
The functional memory includes, for example, an associative memory and a memory with an arithmetic function. An associative memory is a memory having a logic circuit that performs a matching operation between data stored in the memory and an external input. Examples of the memory with an arithmetic function include an addition function memory having a logic circuit for adding data between two words of the memory.

【0004】以下に、従来の演算機能付きメモリについ
て説明する。
[0004] A conventional memory with an arithmetic function will be described below.

【0005】〈従来の演算機能付きメモリの機能〉演算
機能付きメモリは、メモリの2ワード毎に演算回路を付
加したメモリブロックを基本構成回路とする機能メモリ
である。この機能を大別すると、メモリ関係機能と演算
関係機能になる。
<Function of Conventional Memory with Arithmetic Function> A memory with an arithmetic function is a functional memory having a memory block to which an arithmetic circuit is added for every two words of the memory as a basic constituent circuit. This function can be roughly classified into a memory-related function and an arithmetic-related function.

【0006】メモリ関係機能は、外部から見たとき、基
本的に通常のRAMと同じ機能である。すなわち、ワー
ド単位でデータへのアクセスが行われ、全ワードのアド
レスが指定でき、指定されたアドレスに格納された1ワ
ード分のデータと外部との間で読み書きが可能である。
1ワードのビット幅は例えば9ビットであり、そのう
ち、1ビットが正あるいは負の符号データを示す。
[0006] The memory-related functions are basically the same as those of a normal RAM when viewed from the outside. That is, data is accessed in word units, addresses of all words can be specified, and reading / writing between data of one word stored at the specified address and the outside is possible.
The bit width of one word is, for example, 9 bits, of which one bit indicates positive or negative sign data.

【0007】演算関係機能は、メモリに格納されたデー
タの演算を行う機能である。
The operation-related function is a function for performing an operation on data stored in the memory.

【0008】演算機能付きメモリの動作には、図5に示
すワードモードと、図6に示すメモリブロックモードと
がある。
The operation of the memory with an arithmetic function includes a word mode shown in FIG. 5 and a memory block mode shown in FIG.

【0009】図5はワードモードの概念を示し、1ワー
ド分のデータを格納するワード部WPaがワード番号を
付されて配列されている。ワードモードでは、演算機能
付きメモリは通常のRAMと同じで、ワード単位でデー
タのアクセスが行われ、外部との間で並列的なデータの
読み書きができず、上述のメモリ関係機能のみが実現さ
れる。
FIG. 5 shows the concept of the word mode, in which word portions WPa for storing one word of data are arranged with word numbers. In the word mode, the memory with the arithmetic function is the same as a normal RAM, data is accessed in word units, parallel data cannot be read / written from / to the outside, and only the memory-related functions described above are realized. You.

【0010】図6は、2つのワード部WPa及び1つの
演算回路1aで1つのメモリブロックを構成する場合の
メモリブロックモードを示す。メモリブロックには順番
にメモリブロック番号が付されている。メモリブロック
モードでは、メモリ関係機能及び演算関係機能の両方が
実現される。
FIG. 6 shows a memory block mode when one memory block is constituted by two word parts WPa and one arithmetic circuit 1a. Memory block numbers are sequentially assigned to the memory blocks. In the memory block mode, both the memory-related functions and the arithmetic-related functions are realized.

【0011】メモリブロックの2つのワード部WPa
は、一方がWワードであり、他方がQワードである。W
ワードとは、演算回路1aとの間でデータの読出しのみ
ができるものである。Qワードとは、演算回路1aとの
間でデータの読み書きができるものである。
Two word parts WPa of a memory block
Are one for W words and the other for Q words. W
The word is a word that can only read data from the arithmetic circuit 1a. The Q word allows data to be read from and written to the arithmetic circuit 1a.

【0012】1つのメモリブロックでは、演算回路1a
がWワード、Qワードのデータをそれぞれデータ線ML
1,ML2を介して受ける。そして、演算回路1aがこ
れらのデータ同士の演算(例えば、加算)を行い、演算
結果をデータ線ML3を介してQワードに書込む。
In one memory block, the arithmetic circuit 1a
Is the data of the W word and the Q word respectively on the data line ML.
1, via ML2. Then, the arithmetic circuit 1a performs an operation (for example, addition) between these data, and writes the operation result to the Q word via the data line ML3.

【0013】1つの命令を複数のメモリブロックに一斉
に与えることで、複数のメモリブロックの演算を並列的
に行うことができる。つまり、複数のメモリブロックに
対してSIMD(Single Instruction stream,Multiple
Data streams)で制御される。
[0013] By giving one instruction to a plurality of memory blocks at the same time, arithmetic operations on a plurality of memory blocks can be performed in parallel. In other words, SIMD (Single Instruction Stream, Multiple
Data streams).

【0014】従来の演算機能付きメモリが行う演算機能
には、以上のWワード、Qワードのデータ同士の加算機
能の他に、2の補数を利用した減算機能や、Qワードの
データの2の補数化を行う演算機能(絶対値演算機能)
があった。
The arithmetic functions performed by the conventional memory with an arithmetic function include, in addition to the above-described addition function of the W word and Q word data, a subtraction function using a two's complement, and a 2 word complement of the Q word data. Computation function that performs complementation (absolute value calculation function)
was there.

【0015】従来の演算機能付きメモリの演算は、ハー
ドウェアの回路で行われ、データを1ビットずつ順に処
理することで行われる。いわゆる、2進数直列加減算で
ある。以下、従来の演算機能付きメモリの内部構成とそ
の動作を説明する。
The operation of a conventional memory with an operation function is performed by a hardware circuit, and is performed by sequentially processing data one bit at a time. This is a so-called binary serial addition / subtraction. Hereinafter, the internal configuration and operation of a conventional memory with an arithmetic function will be described.

【0016】〈従来の演算機能付きメモリの内部構成と
その動作〉図7は、演算機能付きメモリの全体構成を示
す概念図である。チップ100は演算機能付きメモリで
ある。チップ100は制御部11、メモリアレイ12、
周辺回路13を含む。周辺回路13は通常のRAMと同
じ、アドレスデコーダ、バッファ、センスアンプ、入出
力回路、タイミング制御回路などから構成されている。
制御部11はメモリアレイ12内にアレイ状に配置され
たメモリブロック(図示せず)に対してSIMDで並列
な制御を行うための制御信号(演算制御信号)を発生す
る。以下、メモリブロックの内部構成をWワード、Qワ
ード、演算回路1aに分けて説明する。
<Internal Configuration and Operation of Conventional Memory with Operation Function> FIG. 7 is a conceptual diagram showing the entire configuration of a memory with an operation function. The chip 100 is a memory with an arithmetic function. The chip 100 includes a control unit 11, a memory array 12,
The peripheral circuit 13 is included. The peripheral circuit 13 includes an address decoder, a buffer, a sense amplifier, an input / output circuit, a timing control circuit, and the like, which are the same as a normal RAM.
The control unit 11 generates a control signal (arithmetic control signal) for performing parallel control by SIMD on memory blocks (not shown) arranged in an array in the memory array 12. Hereinafter, the internal configuration of the memory block will be described for W words, Q words, and the arithmetic circuit 1a.

【0017】〈Wワード(図8)〉図8はWワードの構
成を示す回路図である。1つのWワードは、メモリセル
回路MCa1〜MCa9、読み出し回路RC1,RC2
及び書き込み回路WC1を含む。
<W Word (FIG. 8)> FIG. 8 is a circuit diagram showing the structure of the W word. One W word includes the memory cell circuits MCa1 to MCa9 and the read circuits RC1 and RC2.
And a write circuit WC1.

【0018】メモリセル回路MCa1〜MCa9は、L
SBからMSBへ順に配列されている。図8では、LS
Bのメモリセル回路MCa1とMSBのメモリセル回路
MCa9とが示され、その間は省略している。メモリセ
ル回路MCa9が符号データを格納する。
The memory cell circuits MCa1 to MCa9 have L
They are arranged in order from SB to MSB. In FIG. 8, LS
A memory cell circuit MCa1 of B and a memory cell circuit MCa9 of MSB are shown, and the space between them is omitted. The memory cell circuit MCa9 stores the code data.

【0019】メモリセル回路MCa1〜MCa9の各々
は、セルMCとトランジスタMT2とを含む。セルMC
は、通常のDRAMセルやSRAMセルなどが適用でき
る。図8では、セルMCがDRAMセルの場合である。
DRAMセルでは、キャパシタCとトランジスタMT1
とを含んだ、いわゆる1トランジスタ1キャパシタで構
成されている。よって、メモリセル回路MCa1〜MC
a9の各々は、2トランジスタ1キャパシタで構成され
ているといえる。
Each of memory cell circuits MCa1 to MCa9 includes a cell MC and a transistor MT2. Cell MC
Can be applied to ordinary DRAM cells and SRAM cells. FIG. 8 shows a case where the cell MC is a DRAM cell.
In the DRAM cell, the capacitor C and the transistor MT1
And a so-called one transistor and one capacitor. Therefore, the memory cell circuits MCa1 to MCa1
It can be said that each of a9 is composed of two transistors and one capacitor.

【0020】メモリセル回路MCa1〜MCa9のそれ
ぞれのトランジスタMT1のゲート電極がワード線WL
に共通に接続されている。また、メモリセル回路MCa
1〜MCa9の各々において、トランジスタMT1を介
して、キャパシタCがそれぞれデータ線DL1〜DL9
に接続される一方、トランジスタMT2を介して共通読
み書き線RL1に共通に接続されている。メモリセル回
路MCa1〜MCa9のそれぞれのトランジスタMT2
のゲート電極は、それぞれビット線BL1〜BL9に接
続されている。
The gate electrode of each transistor MT1 of the memory cell circuits MCa1 to MCa9 is connected to the word line WL.
Are connected in common. Also, the memory cell circuit MCa
1 to MCa9, the capacitor C is connected to the data lines DL1 to DL9 via the transistor MT1.
, While being commonly connected to a common read / write line RL1 via a transistor MT2. Each transistor MT2 of the memory cell circuits MCa1 to MCa9
Are connected to bit lines BL1 to BL9, respectively.

【0021】読み出し回路RC1は、共通読み書き線R
L1とデータ線ML1との間に接続され、増幅作用を果
たす。
The read circuit RC1 has a common read / write line R
It is connected between L1 and data line ML1 and performs an amplifying function.

【0022】書き込み回路WC1は、共通読み書き線R
L1とデータ線ML1との間に接続されたトランジスタ
である。書き込み回路WC1のゲート電極は制御信号M
S1を受ける。
The write circuit WC1 has a common read / write line R
It is a transistor connected between L1 and the data line ML1. The gate electrode of the write circuit WC1 has a control signal M
Receive S1.

【0023】読み出し回路RC2は、インバータ及びト
ランジスタの直列接続で構成される。読み出し回路RC
2の一端は共通読み書き線RL1に接続され、他端は符
号データ信号CSを出力する。読み出し回路RC2のゲ
ート電極は制御信号MS2を受ける。
The read circuit RC2 is composed of an inverter and a transistor connected in series. Readout circuit RC
One end of 2 is connected to a common read / write line RL1, and the other end outputs a code data signal CS. The gate electrode of the read circuit RC2 receives the control signal MS2.

【0024】次にWワードの動作について説明する。メ
モリセル回路MCa1〜MCa9のDRAMセルのセル
MCは、通常のDRAMと全く同じ動作をする。すなわ
ち、アドレスが指定され、ワード線WLが”1”(高電
位)になると、メモリセル回路MCa1〜MCa9のト
ランジスタMT1が一斉にオンする。これによって、メ
モリセル回路MCa1〜MCa9はデータ線DL1〜D
L9を介してと外部との間でデータの読み書きが可能で
ある。
Next, the operation of the W word will be described. The cell MC of the DRAM cells of the memory cell circuits MCa1 to MCa9 operates exactly the same as a normal DRAM. That is, when an address is specified and the word line WL becomes "1" (high potential), the transistors MT1 of the memory cell circuits MCa1 to MCa9 are turned on all at once. Thereby, the memory cell circuits MCa1 to MCa9 are connected to the data lines DL1 to DL
Data can be read from and written to the outside via L9.

【0025】一方、トランジスタMT2はメモリセル回
路MCと共通読み書き線RL1との間でデータをやりと
りする役割をする。例えば、ビット線BL1が”1”に
なると、メモリセル回路MCa1のトランジスタMT2
がオンする。これによって、メモリセル回路MCa1の
キャパシタCと共通読み書き線RL1との間でデータの
読み書きが可能である。
On the other hand, the transistor MT2 plays a role of exchanging data between the memory cell circuit MC and the common read / write line RL1. For example, when the bit line BL1 becomes “1”, the transistor MT2 of the memory cell circuit MCa1
Turns on. Thus, data can be read and written between the capacitor C of the memory cell circuit MCa1 and the common read / write line RL1.

【0026】但し、ビット線BL1〜BL9には順番
に”1”を与える。これによって、メモリセル回路MC
a1〜MCa9のデータがビット直列、つまり、1ビッ
トずつ順番に共通読み書き線RL1,読み出し回路RC
1を介してデータ線ML1へ読み出される。このように
して、Wワードのデータはビット直列に読み出される。
However, "1" is sequentially applied to the bit lines BL1 to BL9. Thereby, the memory cell circuit MC
a1 to MCa9 are bit-serial, that is, the common read / write line RL1 and the read circuit RC are sequentially bit by bit.
1 to the data line ML1. In this manner, the data of the W word is read out bit-serial.

【0027】メモリセル回路MCa1〜MCa9のデー
タが1ビットずつ読み出される毎に、書き込み回路WC
1に”1”の制御信号MS1が与えられる。書き込み回
路WC1は、”1”の制御信号MS1を受けると、デー
タ線ML1の信号を共通読み書き線RL1に出力する。
これによって、メモリセル回路MCa1〜MCa9から
データ線ML1へ読み出されたデータは、再び、メモリ
セル回路MCa1〜MCa9へ書込まれる。
Each time data of the memory cell circuits MCa1 to MCa9 is read one bit at a time, the write circuit WC
1 is given a control signal MS1 of "1". When receiving the control signal MS1 of "1", the write circuit WC1 outputs the signal of the data line ML1 to the common read / write line RL1.
Thereby, the data read from the memory cell circuits MCa1 to MCa9 to the data line ML1 is written into the memory cell circuits MCa1 to MCa9 again.

【0028】以上のように、Wワードは、データを増幅
して読み出す機能と、データを再度書込む機能とを持っ
ている。
As described above, the W word has a function of amplifying and reading data and a function of rewriting data.

【0029】なお、先に述べたようにメモリセル回路M
Ca9は符号データを格納する。メモリセル回路MCa
9から符号データを読み出す場合は、ビット線BL9
に”1”を与えると共に読み出し回路RC2に”1”の
制御信号MS2を与える。これによって、符号データ
は、読み出し回路RC1を介さずに、読み出し回路RC
2を介して演算回路1aへ直接、符号データを読み出す
ことができる。
As described above, the memory cell circuit M
Ca9 stores code data. Memory cell circuit MCa
9 to read the code data from the bit line BL9
And a control signal MS2 of "1" is supplied to the read circuit RC2. As a result, the code data is transferred to the read circuit RC without passing through the read circuit RC1.
2, the code data can be read directly to the arithmetic circuit 1a.

【0030】〈Qワード(図10)〉図10はQワード
の構成を示す回路図である。Qワードの構成及びその動
作はWワードの構成と主として同様である。異なるとこ
ろは、データ線ML1をML2に、書き込み回路WC1
をWC2に、それぞれ代えたことである。
<Q Word (FIG. 10)> FIG. 10 is a circuit diagram showing the structure of the Q word. The structure and operation of the Q word are mainly the same as those of the W word. The difference is that the data line ML1 is connected to ML2 and the write circuit WC1
To WC2.

【0031】データ線ML3には、演算回路1aから演
算結果が伝搬してくる。この演算結果は、Wワード、Q
ワードがそれぞれ1ビットずつ順番にデータ線ML1、
ML2を介して演算回路1aへデータを読み出すのと同
期して1ビットずつ送られてくる。演算結果が1ビット
ずつ送られてくる毎に、書き込み回路WC2に”1”の
制御信号MS3が与えられる。書き込み回路WC2は、
制御信号MS3が”1”になると、データ線ML3の信
号を共通読み書き線RL1に出力する。これによって、
演算回路1aからの演算結果は、メモリセル回路MCa
1〜MCa9へ書込まれる。
The operation result propagates from the operation circuit 1a to the data line ML3. The result of this operation is W word, Q
Words are sequentially transmitted one bit at a time to the data lines ML1,
The data is sent one bit at a time in synchronization with the reading of data to the arithmetic circuit 1a via the ML2. Each time the operation result is transmitted one bit at a time, a control signal MS3 of "1" is supplied to the write circuit WC2. The write circuit WC2 is
When the control signal MS3 becomes "1", the signal on the data line ML3 is output to the common read / write line RL1. by this,
The operation result from the operation circuit 1a is stored in the memory cell circuit MCa
1 to MCa9.

【0032】〈演算回路(図11)〉図11は演算回路
1aの構成を示す回路図である。なお、説明を分かりや
すくするため、Wセル、Qセルについても図示してい
る。Wセルとは、Wワードのメモリセル回路MCa1〜
MCa9のいずれかである。Qセルとは、Qワードのメ
モリセル回路MCa1〜MCa9のいずれかである。
<Arithmetic Circuit (FIG. 11)> FIG. 11 is a circuit diagram showing a configuration of the arithmetic circuit 1a. It should be noted that the W cell and the Q cell are also illustrated for easy understanding. The W cell is a W word memory cell circuit MCa1 to MCa1.
MCa9. The Q cell is any of the Q word memory cell circuits MCa1 to MCa9.

【0033】演算回路1aの基本は、1ビットの加算回
路である。演算回路1aは、演算機能回路10,20、
マルチプレクサMPX1を含む。データ線ML2に伝搬
するデータをA、マルチプレクサMPX1の出力データ
をBとする。演算機能回路10は、演算の対象のデータ
A,Bと桁上げのデータC−を受けてデータA,B,C
−同士の加算を行う。演算機能回路20は、演算機能回
路10の演算結果を保存する。マルチプレクサMPX1
は、データ線ML1のデータと固定値”0”とのいずれ
か1つをデータBとして選択する。
The basic operation circuit 1a is a 1-bit addition circuit. The arithmetic circuit 1a includes arithmetic function circuits 10, 20,
Includes multiplexer MPX1. A is data transmitted to the data line ML2, and B is output data of the multiplexer MPX1. The arithmetic function circuit 10 receives the data A, B to be operated and the carry data C− and outputs the data A, B, C
-Addition of each other. The operation function circuit 20 stores the operation result of the operation function circuit 10. Multiplexer MPX1
Selects any one of the data of the data line ML1 and the fixed value “0” as the data B.

【0034】演算機能回路10は、マルチプレクサMP
X2,MPX3、排他的論理和のゲートG1、インバー
タのゲートG2〜G5を含む。ゲートG1の一方の入力
端子はデータBを受ける。ゲートG1の他方の入力端子
は演算機能回路20からのデータC−を受ける。ゲート
G1の出力端子はマルチプレクサMPX2の一方の入力
端子と、ゲートG2を介してマルチプレクサMPX2の
他方の入力端子とに接続されている。ゲートG1の出力
データをBCとする。
The arithmetic function circuit 10 includes a multiplexer MP
X2, MPX3, an exclusive OR gate G1, and inverter gates G2 to G5. One input terminal of gate G1 receives data B. The other input terminal of gate G1 receives data C- from arithmetic function circuit 20. The output terminal of the gate G1 is connected to one input terminal of the multiplexer MPX2 and the other input terminal of the multiplexer MPX2 via the gate G2. The output data of the gate G1 is BC.

【0035】マルチプレクサMPX2の出力端子は、ゲ
ートG3を介してマルチプレクサMPX3の制御端子に
接続されている。マルチプレクサMPX2の制御端子は
制御信号C0を受ける。
The output terminal of the multiplexer MPX2 is connected to the control terminal of the multiplexer MPX3 via the gate G3. The control terminal of multiplexer MPX2 receives control signal C0.

【0036】マルチプレクサMPX3の一方の入力端子
はデータAを受ける。マルチプレクサMPX3の他方の
入力端子はデータAをゲートG4を介して受ける。マル
チプレクサMPX3の出力端子はゲートG5を介してデ
ータ線ML3に接続されている。データ線ML3に伝搬
するデータをDとする。
One input terminal of the multiplexer MPX3 receives the data A. The other input terminal of multiplexer MPX3 receives data A via gate G4. The output terminal of the multiplexer MPX3 is connected to the data line ML3 via the gate G5. The data transmitted to the data line ML3 is D.

【0037】演算機能回路20は、フリップフロップF
F1、インバータのゲートG6、トランジスタT1〜T
3を含む。フリップフロップFF1の入力端子はトラン
ジスタT2、ゲートG6、トランジスタT1を介してデ
ータ線ML3に接続される一方、トランジスタT3を介
して制御信号CS0を受ける。フリップフロップFF1
の出力データがデータC−である。トランジスタT1の
ゲート端子はデータBCを受ける。トランジスタT2の
ゲート端子は制御信号S2を受ける。トランジスタT3
のゲート端子は制御信号S1を受ける。C+はフリップ
フロップFF1に書込まれるデータである。
The arithmetic function circuit 20 includes a flip-flop F
F1, inverter gate G6, transistors T1 to T
3 inclusive. The input terminal of the flip-flop FF1 is connected to the data line ML3 via the transistor T2, the gate G6, and the transistor T1, and receives the control signal CS0 via the transistor T3. Flip-flop FF1
Is output data C-. The gate terminal of transistor T1 receives data BC. The gate terminal of transistor T2 receives control signal S2. Transistor T3
Receives the control signal S1. C + is data written to the flip-flop FF1.

【0038】マルチプレクサMPX1の一方の入力端子
はデータ線ML1に接続されている。マルチプレクサM
PX1の他方の入力端子は固定値”0”を受ける。マル
チプレクサMPX1の制御端子は制御信号P1を受け
る。
One input terminal of the multiplexer MPX1 is connected to the data line ML1. Multiplexer M
The other input terminal of PX1 receives a fixed value "0". The control terminal of multiplexer MPX1 receives control signal P1.

【0039】次に演算回路1aの動作について説明す
る。まず、演算対象のデータAはQセルから読み出され
たデータである。一方、データBは、マルチプレクサM
PX1が制御信号P1に応じてWセルのデータと固定
値”0”とのいずれか1つを選択したデータである。
Next, the operation of the arithmetic circuit 1a will be described. First, data A to be operated is data read from the Q cell. On the other hand, data B is
PX1 is data obtained by selecting one of the data of the W cell and the fixed value “0” according to the control signal P1.

【0040】なお、図において、マルチプレクサ内に
は、”0”や”1”を描いている。これは、マルチプレ
クサの制御端子に与えられた信号レベルを示す。例え
ば、マルチプレクサMPX1では、制御信号P1が”
1”のとき、Wセルからのデータを選択し、”0”のと
き、固定値”0”を選択することを示している。
In the drawing, "0" and "1" are drawn in the multiplexer. This indicates the signal level applied to the control terminal of the multiplexer. For example, in the multiplexer MPX1, the control signal P1 is "
When "1", data from the W cell is selected, and when "0", a fixed value "0" is selected.

【0041】次に、演算回路1aが行う演算機能には、
先に述べたように、加算機能、減算機能、絶対値演算機
能できる。以下、各機能毎に動作を説明する。
Next, the arithmetic functions performed by the arithmetic circuit 1a include:
As described above, an addition function, a subtraction function, and an absolute value calculation function can be performed. Hereinafter, the operation will be described for each function.

【0042】〈加算機能〉加算機能では、制御信号P
1,制御信号C0をそれぞれ”1”にした状態で行われ
る。制御信号P1が”1”なので、データBはWセルの
データである。
<Addition Function> In the addition function, the control signal P
1, the control signal C0 is set to "1". Since the control signal P1 is "1", the data B is the data of the W cell.

【0043】また、加算機能の開始直後では、フリップ
フロップFF1のデータC−の初期値として”0”を書
込んでおく。初期値の書込みは、制御信号S1を”1”
にしてトランジスタT3をオンし、”0”の制御信号C
S0を与えることによって行う。また、加算機能では、
制御信号CS0は、例えば、Qワード、Wワードから符
号データを読み出し、両者の排他的論理和によって得ら
れる。
Immediately after the start of the addition function, "0" is written as the initial value of the data C- of the flip-flop FF1. To write the initial value, set the control signal S1 to "1".
To turn on the transistor T3, and the control signal C of "0"
This is done by giving S0. Also, with the addition function,
The control signal CS0 is obtained, for example, by reading code data from a Q word and a W word, and obtaining an exclusive OR of both.

【0044】加算機能では、データA,B,桁上げのデ
ータC−を加え合わせる。演算結果は和のデータD、桁
上げのデータC+である。データDは演算機能回路10
内で生成され、データC+は演算機能回路20内で生成
される。データD、データC+はそれぞれQセル、フリ
ップフロップFF1に書込まれる。
In the addition function, data A and B and carry data C- are added. The calculation result is sum data D and carry data C +. The data D is the arithmetic function circuit 10
And the data C + is generated in the arithmetic function circuit 20. Data D and data C + are written to Q cell and flip-flop FF1, respectively.

【0045】演算機能回路10について、ゲートG1は
データBとデータC−との排他的論理和を行う。制御信
号C0が”1”なので、ゲートG2の出力データが選択
される。ゲートG1の出力データBCは、ゲートG2,
マルチプレクサMPX2,ゲートG3を介してマルチプ
レクサMPX3の制御端子に伝搬する。つまり、加算機
能では、ゲートG3の出力データは、データBCと同じ
値である。
In the arithmetic function circuit 10, the gate G1 performs an exclusive OR operation on the data B and the data C-. Since the control signal C0 is "1", the output data of the gate G2 is selected. The output data BC from the gate G1 is
The signal propagates to the control terminal of the multiplexer MPX3 via the multiplexer MPX2 and the gate G3. That is, in the addition function, the output data of the gate G3 has the same value as the data BC.

【0046】マルチプレクサMPX3は、データBC
の”1”,”0”に応じて、データAとデータAの反転
とのいずれか1つを選択する。マルチプレクサMPX3
の出力データは、ゲートG5によって反転されてデータ
Dになる。データDは、データ線ML3を介してQセル
に書込まれる。データBCが”1”のとき、データDは
データAの反転であり、データBCが”0”のとき、デ
ータDはデータAである。
The multiplexer MPX3 outputs the data BC
One of the data A and the inversion of the data A is selected according to “1” and “0” of the data. Multiplexer MPX3
Is inverted by the gate G5 to become data D. Data D is written to Q cell via data line ML3. When the data BC is “1”, the data D is the inverse of the data A, and when the data BC is “0”, the data D is the data A.

【0047】次に、演算機能回路20について、データ
BCが”1”のとき、トランジスタT1がオンし、マル
チプレクサMPX3,ゲートG5,トランジスタT1,
ゲートG6,トランジスタT2を介してデータAがフリ
ップフロップFF1に書込まれる。よって、データBC
が”1”のとき、データC+はデータAである。
Next, in the arithmetic function circuit 20, when the data BC is "1", the transistor T1 is turned on, and the multiplexer MPX3, the gate G5, the transistor T1,
Data A is written to flip-flop FF1 via gate G6 and transistor T2. Therefore, the data BC
Is “1”, data C + is data A.

【0048】データBCが”0”のとき、トランジスタ
T1がオフし、ゲートG6の出力電位は同じレベルを保
つ。これによって、データBCが”0”のとき、データ
C+はデータC−と同じ値になる。
When the data BC is "0", the transistor T1 turns off and the output potential of the gate G6 maintains the same level. Thus, when the data BC is "0", the data C + has the same value as the data C-.

【0049】以上の論理をまとめたものを表1に、表1
をさらにまとめたものを表2に示す。
Table 1 summarizes the above logic.
Are shown in Table 2.

【0050】[0050]

【表1】 [Table 1]

【0051】[0051]

【表2】 [Table 2]

【0052】以上のようにして、演算回路は、Wセルか
らの1ビットのデータ、Qセルからの1ビットのデー
タ、フリップフロップFF1に書込まれているデータC
−を加え合わせ、和D、桁上げC+をそれぞれQセル、
フリップフロップFF1に書込む。この処理は、Wワー
ド、Qワードからデータが1ビットずつ読み出される毎
に行われる。この結果、Qワードには、Qワード、Wワ
ードのデータを加え合わせたものが上書きされる。
As described above, the arithmetic circuit calculates the 1-bit data from the W cell, the 1-bit data from the Q cell, and the data C written in the flip-flop FF1.
−, And sum D and carry C + are Q cells,
Write to flip-flop FF1. This process is performed every time data is read out one bit at a time from the W word and the Q word. As a result, the Q word is overwritten with a combination of the data of the Q word and the data of the W word.

【0053】〈減算機能(B−A)〉減算機能は、2の
補数を適用した加算で行う。つまり、加算機能におい
て、データC−の初期値を”1”に変更し、制御信号C
0を”0”に変更すればよい。この結果、Qワードに
は、WワードのデータからQワードのデータを引いた値
が上書きされる。
<Subtraction Function (BA)> The subtraction function is performed by addition to which a two's complement is applied. That is, in the addition function, the initial value of the data C− is changed to “1” and the control signal C−
0 may be changed to “0”. As a result, the value obtained by subtracting the data of the Q word from the data of the W word is overwritten on the Q word.

【0054】制御信号C0を”0”に変更したことで、
ゲートG3の出力データは、データBCの反転になり、
論理は表2から表3へ変わる。
By changing the control signal C0 to "0",
The output data of the gate G3 is the inverse of the data BC,
The logic changes from Table 2 to Table 3.

【0055】[0055]

【表3】 [Table 3]

【0056】〈絶対値演算機能〉絶対値演算機能は、減
算機能の特殊な場合といってよい。つまり、減算機能に
おいて、制御信号P1を”0”に変更すればよい。制御
信号P1が”0”なので、データBは固定値”0”であ
る。この結果、0−Aが行われ、データAを2の補数化
したものがQワードに上書きされる。
<Absolute Value Calculation Function> The absolute value calculation function is a special case of the subtraction function. That is, the control signal P1 may be changed to “0” in the subtraction function. Since the control signal P1 is "0", the data B has a fixed value "0". As a result, 0-A is performed, and the two-complement complement of data A is overwritten on the Q word.

【0057】[0057]

【発明が解決しようとする課題】以上のように、従来の
演算機能付きメモリは、基本的に加算機能だけを持つの
で、用途が限定される。
As described above, the conventional memory with an arithmetic function basically has only an addition function, so that its use is limited.

【0058】例えば、演算機能付きメモリの用途とし
て、画像処理分野がある。この分野では、様々な演算が
必要である。例えば、画素データと、外部からの共通な
データ(外部共通入力データ)との間での演算、演算結
果の平均を求めるために必要な累算、同一画素の分布を
求めるために必要な一致検索、ヒストグラムを求めるた
めに必要な大小比較及び累算などである。よって、基本
的に加算機能だけの従来の演算機能付きメモリは画像分
野において十分対応できない。特に累算では、演算結果
が大きくなるので、1ワードの長さが例えば9ビットで
は十分に対応できない。
For example, there is an image processing field as an application of the memory with an arithmetic function. Various operations are required in this field. For example, calculation between pixel data and external common data (external common input data), accumulation required to obtain an average of the calculation results, and matching search required to obtain the same pixel distribution , Size comparison and accumulation necessary for obtaining a histogram. Therefore, a conventional memory with an arithmetic function having only an addition function cannot sufficiently cope with the image field. Particularly, in the accumulation, since the operation result becomes large, it is not possible to sufficiently cope with the case where the length of one word is, for example, 9 bits.

【0059】それでは、演算回路1aに加算機能以外の
演算機能を増やし、1ワードを10ビット以上にすれば
よいことが考えられる。しかし、レイアウト面積が大幅
に増大するという問題点がある。
Then, it is conceivable that the arithmetic circuit 1a may be provided with more arithmetic functions other than the addition function, and one word may be made 10 bits or more. However, there is a problem that the layout area is significantly increased.

【0060】本発明は、上述の問題点を解決するために
なされたものであり、機能を増やしても、レイアウト面
積が大幅に増加せず、しかも、1ワード以上の長さのデ
ータの演算を行うことが可能な演算機能付きメモリを得
ることを目的とする。
The present invention has been made to solve the above-described problems. Even if the number of functions is increased, the layout area does not increase significantly, and the operation of data having a length of one word or more can be performed. It is an object of the present invention to obtain a memory with an arithmetic function that can be performed.

【0061】[0061]

【課題を解決するための手段】本発明の請求項1に係る
課題解決手段は、互いに連結可能であり、外部との間で
データの読み書きがそれぞれ可能な複数のワード部を各
々が含む、複数のワードブロックと、前記複数のワード
ブロックから前記データを読み出して複数種の演算を行
い、前記複数のワードブロックのいずれか1つにその結
果を書き込む演算部とを各々が有するメモリブロック
と、前記演算部に対して前記複数種の演算のいずれか1
つを選択させて実行させる制御部とを備える。
According to a first aspect of the present invention, there is provided a data processing apparatus comprising: a plurality of word portions each including a plurality of word portions which can be connected to each other and which can read and write data with the outside; A memory block, each of which has an operation unit that reads the data from the plurality of word blocks, performs a plurality of operations, and writes the result in any one of the plurality of word blocks; Any one of the above-mentioned types of operations for the operation unit
And a control unit for selecting and executing one.

【0062】本発明の請求項2に係る課題解決手段にお
いて、前記演算部は、前記複数のワードブロックに書き
込まれたデータと、前記外部から自身に直接に入力され
たデータとのいずれか1つを選択する選択部を含む。
[0062] In the means for solving problems according to claim 2 of the present invention, the arithmetic unit is configured to select one of data written in the plurality of word blocks and data directly input from the outside to itself. Is included.

【0063】本発明の請求項3に係る課題解決手段にお
いて、前記メモリブロックは複数設けられ、一の前記メ
モリブロックにおける演算結果が、前記一の前記メモリ
ブロック及び他の前記メモリブロックのいずれかを選択
して書き込まれる。
In the means for solving problems according to claim 3 of the present invention, a plurality of the memory blocks are provided, and an operation result in one of the memory blocks is determined by one of the one of the memory blocks and the other of the memory blocks. Selected and written.

【0064】本発明の請求項4に係る課題解決手段にお
いて、一の前記複数のワードブロックの一の前記複数の
ワード部を当該ワードブロックから切り離すためのスイ
ッチと、前記一の前記複数のワード部を他の前記複数の
ワードブロックに接続するための共通読み書き線とを更
に備える。
A switch according to claim 4 of the present invention, wherein a switch for separating one of the plurality of word sections from one of the plurality of word blocks from the word block, and the one of the plurality of word sections are provided. And a common read / write line for connecting to the other word blocks.

【0065】本発明の請求項5に係る課題解決手段にお
いて、前記演算部は、前記ワードブロックのデータに対
して1ビットずつ順番に前記演算を実行し、前記演算の
実行中に特定の前記演算結果が得られれば、その演算結
果を前記演算が終了するまで保持するための演算結果格
納部をさらに含む。
[0065] In the means for solving problems according to claim 5 of the present invention, the operation section executes the operation on the data of the word block one bit at a time in order, and executes the specific operation during the execution of the operation. If the result is obtained, the apparatus further includes an operation result storage unit for holding the operation result until the operation is completed.

【0066】本発明の請求項6に係る課題解決手段にお
いて、前記演算部は、前記ワードブロックのデータに対
して1ビットずつ順番に前記演算を実行し、前記演算の
実行中に特定の前記演算結果が得られれば、その演算結
果を前記演算が終了するまで保持するための第1のフリ
ップフロップ、前記演算の実行中に特定の前記演算結果
が得られれば、前記演算部へ読み出された前記データの
うちの特定の前記データを前記演算が終了するまで保持
するための第2のフリップフロップを含む演算結果格納
部をさらに含む。
[0066] In the means for solving problems according to claim 6 of the present invention, the operation section executes the operation on the data of the word block one bit at a time in order, and executes the specific operation during execution of the operation. If a result is obtained, a first flip-flop for holding the operation result until the operation is completed, and if the specific operation result is obtained during execution of the operation, the first flip-flop is read out to the operation unit. An operation result storage unit including a second flip-flop for holding the specific data of the data until the operation is completed is further included.

【0067】本発明の請求項7に係る課題解決手段にお
いて、前記演算結果格納部はSRAMを構成する。
[0067] In the means for solving problems according to claim 7 of the present invention, the operation result storage section constitutes an SRAM.

【0068】[0068]

【発明の実施の形態】次に、本発明の実施の形態の演算
機能付きメモリを説明する。
Next, a memory with an arithmetic function according to an embodiment of the present invention will be described.

【0069】〈実施の形態の演算機能付きメモリの機
能〉本発明の実施の形態の演算機能付きメモリは、4ワ
ード毎に演算回路を付加したメモリブロックを基本構成
回路とする機能メモリである。演算機能付きメモリの機
能は大別するとメモリ関係機能と演算関係機能になる。
<Function of Memory with Arithmetic Function of Embodiment> A memory with an arithmetic function of the embodiment of the present invention is a functional memory having a memory block to which an arithmetic circuit is added for every four words as a basic configuration circuit. The functions of the memory with an arithmetic function are roughly classified into a memory-related function and an arithmetic-related function.

【0070】実施の形態の演算機能付きメモリのメモリ
関係機能は、従来のものに、次の内容を加えたものであ
る。まず、1つのメモリブロック内の2ワードを連結す
ることが可能なことである。2ワードを連結する場合を
倍長演算モード、しない場合を単長演算モードと称す。
例えば、符号1ビットを含む計9ビット単位の単長演算
モードと、符号1ビットだけを含む計17ビットの倍長
演算モードとの切換えが選択的に可能である。この切り
換えは、例えば演算機能付きメモリの動作開始時に指定
する。
The memory-related functions of the memory with an arithmetic function according to the embodiment are obtained by adding the following contents to the conventional one. First, it is possible to connect two words in one memory block. The case where two words are connected is called a double length operation mode, and the case where they are not connected is called a single length operation mode.
For example, it is possible to selectively switch between a single-length operation mode of a total of 9 bits including a code of 1 bit and a double-length operation mode of a total of 17 bits including only a code of 1 bit. This switching is specified, for example, when the operation of the memory with the arithmetic function is started.

【0071】実施の形態の演算関係機能は、従来のもの
に、画像処理に十分対応できる各種の演算機能が追加さ
れている。
The calculation-related functions of the embodiment are different from those of the related art in that various calculation functions that can sufficiently cope with image processing are added.

【0072】実施の形態の演算機能付きメモリには、ワ
ードモードと、メモリブロックモードとがある。ワード
モードは従来と同様であり、メモリ関係機能を実現で
き、図5に示すようになる。一方、メモリブロックモー
ドについては、メモリ関係機能及び演算関係機能の両方
を実現でき、図1に示すようになる。メモリブロックモ
ードは、先に述べた倍長演算モード、単長演算モードを
含む。
The memory with an arithmetic function according to the embodiment has a word mode and a memory block mode. The word mode is the same as the conventional one, and the memory-related functions can be realized, as shown in FIG. On the other hand, in the memory block mode, both the memory-related function and the arithmetic-related function can be realized, as shown in FIG. The memory block mode includes the double-length operation mode and the single-length operation mode described above.

【0073】図1において、WPは実施の形態のワード
部、1bは実施の形態の演算回路(演算部)、110は
実施の形態の制御部である。なお、演算機能付きメモリ
の全体構成は図7に示すとおりであり、制御部110は
図7の制御部11に対応し、メモリアレイ12にアレイ
状に配置されているメモリブロックが従来と異なる。
In FIG. 1, WP is a word section of the embodiment, 1b is an arithmetic circuit (arithmetic section) of the embodiment, and 110 is a control section of the embodiment. The overall configuration of the memory with an arithmetic function is as shown in FIG. 7, and the control unit 110 corresponds to the control unit 11 in FIG. 7, and the memory blocks arranged in an array in the memory array 12 are different from those in the related art.

【0074】ワード部WPは従来の技術のワード部WP
aと同様、外部との間でデータの読み書きが可能であ
る。ワード部WPは、ワード部QA1,QA2,QB
1,QB2に分類される。
The word part WP is the same as the word part WP of the prior art.
As in a, data can be read from and written to the outside. The word part WP is composed of the word parts QA1, QA2, QB
1 and QB2.

【0075】ワード部QA1及びQA2は共通読み書き
線RL1aを介して互いに接続されている。共通読み書
き線RL1aは読出し書出し回路RWCa(書き込み
部)を介して演算回路1bに接続されている。ワード部
QA1,QA2及び読出し書出し回路RWCaはワード
ブロックWBAを構成する。
The word sections QA1 and QA2 are connected to each other via a common read / write line RL1a. The common read / write line RL1a is connected to the arithmetic circuit 1b via a read / write circuit RWCa (write unit). The word parts QA1, QA2 and the read / write circuit RWCa constitute a word block WBA.

【0076】ワード部QB1及びQB2は共通読み書き
線RL1bを介して互いに接続されている。共通読み書
き線RL1bは読出し書出し回路RWCb(書き込み
部)を介して演算回路1bに接続されている。ワード部
QB1,QB2及び読出し書出し回路RWCbはワード
ブロックWBBを構成する。
The word parts QB1 and QB2 are connected to each other via a common read / write line RL1b. The common read / write line RL1b is connected to the arithmetic circuit 1b via a read / write circuit RWCb (write unit). The word sections QB1 and QB2 and the read / write circuit RWCb form a word block WBB.

【0077】図1の左側には、メモリブロックに順番に
付されたメモリブロック番号を示す。1つのメモリブロ
ックは、1つのワードブロックWBA,1つのワードブ
ロックWBB及び1つの演算回路1bを含む。
The left side of FIG. 1 shows the memory block numbers sequentially assigned to the memory blocks. One memory block includes one word block WBA, one word block WBB, and one arithmetic circuit 1b.

【0078】読出し書出し回路RWCa,RWCbは、
ワード部QA1,QA2,QB1,QB2を演算回路1
bとの間でデータの読み書きを可能にする。よって、ワ
ード部QA1,QA2,QB1,QB2は全てQワード
であるといえる。
The read / write circuits RWCa, RWCb are:
The word part QA1, QA2, QB1, QB2 is processed by the arithmetic circuit 1
b enables reading and writing of data. Therefore, it can be said that the word portions QA1, QA2, QB1, and QB2 are all Q words.

【0079】制御部110は、全てのメモリブロックに
対してSIMDで並列な制御を行うための制御信号Sを
生成する。制御信号Sは、後述する制御信号の総称であ
る。そして、同制御部110は全てのメモリブロックに
制御信号Sを出力する。
The control unit 110 generates a control signal S for performing SIMD parallel control on all memory blocks. The control signal S is a general term for a control signal described later. Then, the control unit 110 outputs the control signal S to all the memory blocks.

【0080】演算回路1bは、先に述べたように、画像
処理分野に十分対応できるようにするため、演算対象の
データA,Bに対して行う複数種の演算機能を含む。例
えば、従来の加算機能、減算機能(B−A)、絶対値演
算機能に加え、減算機能(A−B)、A,Bの論理演
算、1ビットシフト、一致検索、大小比較がある。論理
演算は、例えば、A,Bの論理積(AND)、論理和
(OR)、排他的論理和(EXOR)、排他的否定論理
和(EXNOR)、A,Bの反転(NOT)、A,Bそ
のものの出力(Through)等を含む。
As described above, the arithmetic circuit 1b includes a plurality of types of arithmetic functions to be performed on the data A and B to be operated in order to sufficiently cope with the image processing field. For example, in addition to the conventional addition function, subtraction function (BA) and absolute value calculation function, there are subtraction function (AB), logical operation of A and B, 1-bit shift, match search, and magnitude comparison. The logical operation is, for example, a logical product (AND) of A and B, a logical sum (OR), an exclusive logical sum (EXOR), an exclusive negative logical sum (EXNOR), an inversion of A and B (NOT), A, B B itself (Through).

【0081】演算回路1bは、演算対象のデータA,B
に対して、複数の演算機能のいずれか1つを制御部11
0の制御によって選択して実行し、演算結果をワードブ
ロックWBA,WBBのいずれか1つに出力する。
The operation circuit 1b calculates the data A and B to be operated.
To any one of the plurality of arithmetic functions
The control result is selected and executed by the control of 0, and the operation result is output to one of the word blocks WBA and WBB.

【0082】演算回路1bの演算機能の他に、以下の
〈演算対象のデータA,Bの選択機能〉、〈ワードブロ
ック間の移動機能〉、〈倍長演算モード,単長演算モー
ドの選択切り換え機能〉、〈1メモリブロックシフト機
能〉、〈1ワードデータシフト機能〉が行える。これに
よって、さらに様々な分野に対応できる。
In addition to the operation function of the operation circuit 1b, the following <selection function of data A and B to be operated>, <movement function between word blocks>, <selection switching between double length operation mode and single length operation mode> Function, <1 memory block shift function>, <1 word data shift function>. This makes it possible to cope with various fields.

【0083】まず、これらの機能の概略を説明し、その
後にこれらの機能を実現するための構成について説明す
る。
First, the outline of these functions will be described, and then the configuration for realizing these functions will be described.

【0084】〈演算対象のデータA,Bの選択機能〉演
算回路1bは、ワード部WPからのデータ、ワード部W
Pを介さずに外部から自身に直接に入力されたデータ
(外部共通入力データX)、固定値のいずれか1つをデ
ータA又はBとして選択できる。
<Selection Function of Data A and B to be Operated> The operation circuit 1b is provided with the data from the word part WP and the word part W
Any one of data (external common input data X) and a fixed value directly input from outside without passing through P can be selected as data A or B.

【0085】演算対象の選択機能について、さらに詳し
く説明する。演算を演算対象の組み合わせで分けると表
4のようになる。なお、固定値は、外部共通入力データ
Xと同様にして考えることができるので、表4では省略
する。
The function of selecting an operation object will be described in more detail. Table 4 shows the calculation according to the combination of the calculation targets. Since the fixed value can be considered in the same manner as the external common input data X, it is omitted in Table 4.

【0086】[0086]

【表4】 [Table 4]

【0087】データA,Bの選択機能によって、演算回
路1bの各演算機能は、大別して、内部演算と外部演算
という、2種類の演算モードに分けられる。内部演算と
は、演算対象が全てワード部の場合である。演算結果
は、演算対象となったワード部WPのいずれか一方に上
書きされる。外部演算とは、演算対象の一部が外部共通
入力データXの場合である。
According to the function of selecting the data A and B, each operation function of the operation circuit 1b is roughly divided into two types of operation modes of internal operation and external operation. The internal operation is a case where the operation target is all word parts. The operation result is overwritten on any one of the word parts WP subjected to the operation. The external operation is a case where a part of the operation target is the external common input data X.

【0088】内部演算の場合は、演算の対象となったワ
ード部WPのいずれか一方に演算結果が上書きされる。
例えば、QA1−QB1の組み合わせでは、演算結果
は、ワード部QA1,QB1のいずれか一方に書込まれ
る。
In the case of the internal operation, the operation result is overwritten on one of the word parts WP subjected to the operation.
For example, in the combination of QA1-QB1, the operation result is written to one of word parts QA1 and QB1.

【0089】一方、外部演算の場合は、演算の対象とな
ったワード部WP、あるいはそのワード部WPと同じ番
号を有するワード部WPのいずれか一方に上書きされ
る。例えば、外部演算のQA2−Xの組み合わせでは、
演算結果は、ワード部QA2,QB2のいずれか一方に
書込まれる。
On the other hand, in the case of an external operation, one of the word portion WP subjected to the operation and the word portion WP having the same number as the word portion WP is overwritten. For example, in the combination of external operations QA2-X,
The operation result is written into one of the word parts QA2 and QB2.

【0090】〈ワードブロック間の移動機能〉また、共
通読み書き線RL1a,RL1b上にそれぞれスイッチ
SWを設け、2つのスイッチSWが共通読み書き線を開
放するとともに、ワード部QB1とメモリブロックWB
Aの読出し書出し回路RWCaとを共通読み書き線RL
1cで接続することによって、内部演算にQB1−QB
2の組み合わせを含ませることができる。
<Move Function Between Word Blocks> A switch SW is provided on each of the common read / write lines RL1a and RL1b, the two switches SW open the common read / write line, and the word part QB1 and the memory block WB are opened.
A read / write circuit RWCa and common read / write line RL
1c, QB1-QB
Two combinations can be included.

【0091】〈倍長演算モード,単長演算モードの選択
切り換え機能〉先に述べた単長演算モード,倍長演算モ
ードを選択的に切り換えることができる。
<Selection Switching Function between Double Length Operation Mode and Single Length Operation Mode> The single length operation mode and the double length operation mode described above can be selectively switched.

【0092】単長演算モードでは、演算対象のデータは
それぞれ1つのワード部WPからのデータである。ある
いは、一方が1つのワード部WPからのデータ、他方が
外部共通入力データXである。演算結果は1つのワード
部WPに書込まれる。例えば、表4のQA1−QB2の
場合は、ワード部QA1からのデータとワード部QB2
からのデータとがそれぞれ演算対象のデータであり、演
算結果はワード部QA1,QB2のどちらか一方に書込
まれる。
In the single-length operation mode, data to be operated is data from one word part WP. Alternatively, one is data from one word portion WP and the other is external common input data X. The operation result is written into one word part WP. For example, in the case of QA1-QB2 in Table 4, the data from the word part QA1 and the word part QB2
Are the data to be operated, and the operation result is written into one of the word parts QA1 and QB2.

【0093】一方、倍長演算モードでは、ワード部QA
1,QA2が互いに連結され、ワード部QB1,QB2
が互いに連結される。演算対象のデータDAは互いに連
結されたワード部QA1,QA2からのデータであり、
かつ、演算対象のデータDBは互いに連結されたワード
部QB1,QB2からのデータである。あるいは、デー
タDAは互いに連結されたワード部QA1,QA2から
のデータであり、かつ、データDBは外部共通入力デー
タXである。あるいは、データDAは外部共通入力デー
タXであり、かつ、データDBは互いに連結されたワー
ド部QB1,QB2からのデータである。演算結果は、
互いに連結されたワード部QA1,QA2、あるいは、
互いに連結されたワード部QB1,QB2のどちらか一
方に書込まれる。
On the other hand, in the double length operation mode, the word portion QA
1 and QA2 are connected to each other to form word portions QB1 and QB2.
Are connected to each other. The data DA to be operated is data from the word parts QA1 and QA2 connected to each other,
Further, the data DB to be operated is data from the word parts QB1 and QB2 connected to each other. Alternatively, data DA is data from word parts QA1 and QA2 connected to each other, and data DB is external common input data X. Alternatively, data DA is external common input data X, and data DB is data from word parts QB1 and QB2 connected to each other. The operation result is
Word parts QA1, QA2 connected to each other, or
Data is written to one of the word parts QB1 and QB2 connected to each other.

【0094】単長演算モードは、表4の演算対象の組み
合わせのいずれでも可能である。倍長演算モードは、Q
A1,QB1,QA2,QB2からなる組み合わせ、Q
A1,QA2,Xからなる組み合わせ、QB1,QB
2,Xからなる組み合わせのいずれかで可能である。表
4のQA1−QB2、QA2−QB1の場合は、例えば
ワード部QA1,QB1それぞれが符号データを含むと
すると、符号データを含むQセルからのデータと符号デ
ータを含まないQセルからのデータとを演算することに
なるので、倍長演算モードは行わない。また、QB1−
QB2の場合は、ワード部QB1,QB2が同じワード
ブロックに含まれるため、倍長演算モードは行わない。
The single-length operation mode can be any of the combinations of the operation objects in Table 4. Double length operation mode is Q
Combination of A1, QB1, QA2, QB2, Q
Combination of A1, QA2, X, QB1, QB
Any combination of 2 and X is possible. In the case of QA1-QB2 and QA2-QB1 in Table 4, for example, if each of the word portions QA1 and QB1 includes code data, data from Q cells including code data and data from Q cells not including code data Therefore, the double length calculation mode is not performed. Also, QB1-
In the case of QB2, since the word parts QB1 and QB2 are included in the same word block, the double length calculation mode is not performed.

【0095】〈1メモリブロックシフト機能〉メモリブ
ロック番号の1つ小さい隣のメモリブロック(下位隣接
ブロック)のワード部QB1,QB2を、自身のワード
部QB1,QB2として使用することができる(隣接ブ
ロック読出機能)。また、メモリブロック番号の1つ大
きい隣りのメモリブロック(上位隣接ブロック)のワー
ド部QA1,QA2に演算結果を書込むことができる
(隣接ブロック書込み機能)。隣接ブロック読出機能、
隣接ブロック書込み機能は、制御部110によって全メ
モリブロックに対して並列に行われる。その結果、1つ
のメモリブロックだけデータをシフトしたことと同じ結
果が得られる。
<1 Memory Block Shift Function> The word portions QB1 and QB2 of the next lower memory block (lower adjacent block) having the smaller memory block number can be used as its own word portions QB1 and QB2 (adjacent block). Reading function). Further, the operation result can be written in the word portions QA1 and QA2 of the memory block (upper adjacent block) adjacent to the memory block number which is larger by one (adjacent block write function). Adjacent block read function,
The adjacent block writing function is performed by the control unit 110 on all memory blocks in parallel. As a result, the same result as shifting data by one memory block is obtained.

【0096】〈1ワードデータシフト機能〉演算回路1
bの演算機能の一種であり、ワード部WPのデータを1
ビットずつずらす。ビットシフトには左シフトと右シフ
トがある。左シフトは、MSBから1ビットずつずら
す。右シフトはLSBから1ビットずつずらす。シフト
は、ワード部QA1またはQA2の1ワード単位、ある
いは、互いに連結したワード部QA1及びQA2の2ワ
ード単位で行う。
<One Word Data Shift Function> Arithmetic Circuit 1
b, which is a kind of arithmetic function.
Shift by a bit. The bit shift includes a left shift and a right shift. The left shift is shifted by one bit from the MSB. The right shift is shifted by one bit from the LSB. The shift is performed in units of one word of the word part QA1 or QA2, or in units of two words of the word parts QA1 and QA2 connected to each other.

【0097】次に、ワードブロックの内部構成を図2を
用いて説明する。図1は、ワードブロックWBA又はW
BBを示す。Q1、Q2、WRC、RL1はそれぞれQ
A1、QA2、WRCa、RL1a、あるいは、QB
1、QB2、WRCb、RL1bである。
Next, the internal structure of a word block will be described with reference to FIG. FIG. 1 shows the word block WBA or W
BB is shown. Q1, Q2, WRC and RL1 are each Q
A1, QA2, WRCa, RL1a, or QB
1, QB2, WRCb, and RL1b.

【0098】図2の読出し書出し回路RWCは、読み出
し回路RC1,RC2、書き込み回路WC1〜WC3を
含む。
The read / write circuit RWC of FIG. 2 includes read circuits RC1 and RC2 and write circuits WC1 to WC3.

【0099】読み出し回路RC1,RC2、書き込み回
路WC1,WC2については従来の技術で説明したもの
を用いることができるので、説明を省略する。
As the read circuits RC1 and RC2 and the write circuits WC1 and WC2, those described in the related art can be used, and the description is omitted.

【0100】書き込み回路WC3は、共通読み書き線R
L1とデータ線ML4との間に接続されたトランジスタ
である。書き込み回路WC3のゲート電極は制御信号M
S6を受ける。データ線ML4はワードブロックWBB
と下位隣接ブロックとを接続する。データ線ML4に
は、演算回路1bの演算結果が伝搬してくる。この演算
結果は、ワードブロックWBA,WBBがそれぞれ1ビ
ットずつ順番にデータ線ML1、ML2を介して演算回
路1bへデータを読み出すのと同期して1ビットずつ送
られてくる。演算結果が1ビットずつ送られてくる毎
に、書き込み回路WC3に”1”の制御信号MS6が与
えられる。書き込み回路WC3は、制御信号MS6が”
1”になると、データ線ML4の信号を共通読み書き線
RL1に出力する。これによって、書き込み回路WC3
は、データ線ML4のデータを共通読み書き線RL1に
書込むことができる。
The write circuit WC3 has a common read / write line R
This is a transistor connected between L1 and the data line ML4. The gate electrode of the write circuit WC3 has a control signal M
Receive S6. Data line ML4 is a word block WBB
And the lower adjacent block. The operation result of the operation circuit 1b propagates to the data line ML4. This operation result is sent one bit at a time in synchronization with the word blocks WBA and WBB reading data to the operation circuit 1b via the data lines ML1 and ML2 one bit at a time. Each time the operation result is sent one bit at a time, a control signal MS6 of "1" is given to the write circuit WC3. The write circuit WC3 outputs the control signal MS6 "
When the signal becomes "1", the signal on the data line ML4 is output to the common read / write line RL1.
Can write data of the data line ML4 to the common read / write line RL1.

【0101】以上のように、読出し書出し回路RWC
は、制御部110の制御によって、データ線ML1,M
L3,ML4のいずれか1つに伝搬するデータをワード
部Q1,Q2に選択して書込む。
As described above, the read / write circuit RWC
Are controlled by the control unit 110 so that the data lines ML1 and M
The data propagating to any one of L3 and ML4 is selected and written to word portions Q1 and Q2.

【0102】さらに、読み出し回路RC1の例につい
て、図9を用いて説明する。読み出し回路RC1は、ト
ランジスタR1〜R4及びゲートRG1を含む。トラン
ジスタR1〜R3は、この順に直列に、高電位とグラン
ド電位との間に接続されている。共通読み書き線RL2
は、トランジスタR1,R2が接続される点に接続す
る。トランジスタR4は、グランド電位と共通読み書き
線RL1との間に接続されている。ゲートRG1は、読
み出し線RL2とデータ線ML1との間に接続されてい
る。
Further, an example of the read circuit RC1 will be described with reference to FIG. The read circuit RC1 includes transistors R1 to R4 and a gate RG1. The transistors R1 to R3 are connected in series in this order between a high potential and a ground potential. Common read / write line RL2
Is connected to the point where the transistors R1 and R2 are connected. The transistor R4 is connected between the ground potential and the common read / write line RL1. The gate RG1 is connected between the read line RL2 and the data line ML1.

【0103】共通読み書き線RL1にデータが読み出さ
れる前には、制御信号MS4,MS5はそれぞれ”
1”,”0”である。これによって、トランジスタR4
はオンし、トランジスタR3はオフしている。トランジ
スタR4がオンなので、共通読み書き線RL1はグラン
ド電位にプリチャージされている。共通読み書き線RL
2は”1”にプリチャージされている。
Before data is read out to the common read / write line RL1, the control signals MS4 and MS5 are set to "
1 "and" 0 ", whereby the transistor R4
Is on, and the transistor R3 is off. Since the transistor R4 is on, the common read / write line RL1 is precharged to the ground potential. Common read / write line RL
2 is precharged to "1".

【0104】次に、ワード部Q1又はQ2から共通読み
書き線RL1にデータを読み出すとともに、制御信号M
S4,MS5をそれぞれ”0”,”1”にする。これに
よって、トランジスタR1,R4,R3はそれぞれオ
フ,オフ,オンする。共通読み書き線RL1の電位によ
ってトランジスタR2がオン又はオフする。トランジス
タR2のオン又はオフに応じて予めプリチャージされた
読み出し線RL2が放電したりしなかったりする。読み
出し線RL2の電位は共通読み書き線RL1のデータの
反転となるので、ゲートRG1が共通読み書き線RL1
のデータを反転してデータ線ML1に出力する。
Next, while reading data from the word portion Q1 or Q2 to the common read / write line RL1, the control signal M
S4 and MS5 are set to "0" and "1", respectively. As a result, the transistors R1, R4, and R3 are turned off, off, and on, respectively. The transistor R2 is turned on or off depending on the potential of the common read / write line RL1. The read line RL2 precharged in advance may or may not be discharged according to the ON or OFF state of the transistor R2. Since the potential of the read line RL2 is the inverse of the data of the common read / write line RL1, the gate RG1 is connected to the common read / write line RL1.
Is inverted and output to the data line ML1.

【0105】ワード部Q1及びQ2に関する内部構成の
例を図3に示す。WL1,WL2は互いに隣り合うワー
ド線である。データ線DL1〜DL9はワード部Q1,
Q2に共通に接続されている。ワード部Q1,Q2の読
み出し線RL1は互いに接続箇所Zにおいて接続されて
いる。ワード部Q1,Q2のビット線BL1同士は互い
に接続されている。ビット線BL2〜BL9についても
同様である。ワード部Q1のワード選択線WBL1は互
いに共通に接続されている。ワード部Q2のワード選択
線WBL2は互いに共通に接続されている。
FIG. 3 shows an example of the internal configuration related to the word parts Q1 and Q2. WL1 and WL2 are adjacent word lines. The data lines DL1 to DL9 are connected to the word parts Q1,
Commonly connected to Q2. The read lines RL1 of the word parts Q1 and Q2 are connected to each other at a connection point Z. The bit lines BL1 of the word portions Q1 and Q2 are connected to each other. The same applies to bit lines BL2 to BL9. The word selection lines WBL1 of the word section Q1 are commonly connected to each other. The word selection lines WBL2 of the word section Q2 are commonly connected to each other.

【0106】ワード部Q1及びQ2はそれぞれメモリセ
ル回路MC1〜MC9を含む。ワード部Q1及びQ2の
それぞれのメモリセル回路MC1〜MC9は、LSBか
らMSBへ順に配列されている。図3では、LSBのメ
モリセル回路MC1とMSBのメモリセル回路MC9と
が示され、その間は省略している。単長モードの場合、
ワード部Q1及Q2それぞれのメモリセル回路MC9が
符号データを格納する。倍長モードの場合、例えばワー
ド部Q1のメモリセル回路MC9のみが符号データを格
納する。
The word sections Q1 and Q2 include memory cell circuits MC1 to MC9, respectively. The memory cell circuits MC1 to MC9 of the word sections Q1 and Q2 are arranged in order from LSB to MSB. FIG. 3 shows the memory cell circuit MC1 of the LSB and the memory cell circuit MC9 of the MSB, and a part between them is omitted. In single length mode,
The memory cell circuit MC9 of each of the word parts Q1 and Q2 stores code data. In the case of the double-length mode, for example, only the memory cell circuit MC9 of the word section Q1 stores code data.

【0107】メモリセル回路MC1〜MC9の各々は、
セルMCとトランジスタMT2,MT3とを含む。セル
MCは、通常のDRAMセルやSRAMセルなどが適用
できる。図3では、セルMCがDRAMセルの場合であ
る。DRAMセルでは、キャパシタCとトランジスタM
T1とを含んだ、いわゆる1トランジスタ1キャパシタ
で構成されている。よって、メモリセル回路MC1〜M
C9の各々は、3トランジスタ1キャパシタで構成され
ているといえる。
Each of memory cell circuits MC1 to MC9 has
It includes a cell MC and transistors MT2 and MT3. As the cell MC, a normal DRAM cell, SRAM cell, or the like can be applied. FIG. 3 shows a case where the cell MC is a DRAM cell. In a DRAM cell, a capacitor C and a transistor M
T1 and one capacitor including one transistor. Therefore, the memory cell circuits MC1 to MC
It can be said that each of C9 is constituted by three transistors and one capacitor.

【0108】ワード部Q1のメモリセル回路MC1〜M
C9のそれぞれのトランジスタMT1のゲート電極がワ
ード線WL1に共通に接続されている。ワード部Q2の
メモリセル回路MC1〜MC9のそれぞれのトランジス
タMT1のゲート電極がワード線WL2に共通に接続さ
れている。
Memory cell circuits MC1-M of word section Q1
The gate electrodes of the transistors MT1 of C9 are commonly connected to the word line WL1. The gate electrodes of the transistors MT1 of the memory cell circuits MC1 to MC9 of the word section Q2 are commonly connected to a word line WL2.

【0109】ワード部Q1及びQ2のメモリセル回路M
C1〜MC9の各々において、トランジスタMT1を介
して、キャパシタCがそれぞれデータ線DL1〜DL9
に接続される一方、トランジスタMT2,MT3を介し
て共通読み書き線RL1に共通に接続されている。
The memory cell circuits M of the word sections Q1 and Q2
In each of C1 to MC9, the capacitor C is connected to the data line DL1 to DL9 via the transistor MT1.
, While being commonly connected to a common read / write line RL1 via transistors MT2 and MT3.

【0110】ワード部Q1及びQ2のメモリセル回路M
C1〜MC9のそれぞれのトランジスタMT2のゲート
電極は、それぞれビット線BL1〜BL9に接続されて
いる。
Memory cell circuit M of word parts Q1 and Q2
The gate electrodes of the transistors MT2 of C1 to MC9 are connected to the bit lines BL1 to BL9, respectively.

【0111】ワード部Q1のメモリセル回路MC1〜M
C9のそれぞれのトランジスタMT3のゲート電極は、
ワード選択線WBL1に共通に接続されている。ワード
部Q2のメモリセル回路MC1〜MC9のそれぞれのト
ランジスタMT3のゲート電極は、ワード選択線WBL
2に共通に接続されている。
Memory cell circuits MC1 to MC of word section Q1
The gate electrode of each transistor MT3 of C9 is
Commonly connected to word select line WBL1. The gate electrode of each transistor MT3 of the memory cell circuits MC1 to MC9 of the word part Q2 is connected to the word selection line WBL.
2 are connected in common.

【0112】次にワード部Q1,Q2の動作について説
明する。ワード部Q1及びQ2のメモリセル回路MC1
〜MC9のDRAMセルのセルMCは、通常のDRAM
と全く同じ動作をする。すなわち、アドレスが指定さ
れ、ワード線WL1が”1”になると、ワード部Q1の
メモリセル回路MC1〜MC9のトランジスタMT1が
一斉にオンする。これによって、ワード部Q1のメモリ
セル回路MC1〜MC9はデータ線DL1〜DL9を介
してと外部との間でデータの読み書きが可能である。一
方、アドレスが指定され、ワード線WL2が”1”にな
ると、ワード部Q2のメモリセル回路MC1〜MC9の
トランジスタMT1が一斉にオンする。これによって、
ワード部Q2のメモリセル回路MC1〜MC9はデータ
線DL1〜DL9を介してと外部との間でデータの読み
書きが可能である。
Next, the operation of word sections Q1 and Q2 will be described. Memory cell circuit MC1 of word parts Q1 and Q2
Cell MC of the DRAM cells of MC9 to MC9 is a normal DRAM
Works exactly the same as. That is, when an address is specified and the word line WL1 becomes "1", the transistors MT1 of the memory cell circuits MC1 to MC9 of the word section Q1 are turned on all at once. As a result, the memory cell circuits MC1 to MC9 of the word section Q1 can read and write data between the data lines DL1 to DL9 and the outside. On the other hand, when an address is specified and the word line WL2 becomes "1", the transistors MT1 of the memory cell circuits MC1 to MC9 in the word section Q2 are turned on all at once. by this,
The memory cell circuits MC1 to MC9 of the word part Q2 can read and write data between the memory cells via data lines DL1 to DL9 and the outside.

【0113】トランジスタMT2はメモリセル回路MC
とトランジスタMT3との間でデータをやりとりする役
割をする。例えば、ビット線BL1が”1”になると、
ワード部Q1,Q2それぞれのメモリセル回路MC1の
トランジスタMT2がオンする。これによって、ワード
部Q1,Q2それぞれのメモリセル回路MC1のキャパ
シタCとトランジスタMT3との間でデータの読み書き
が可能である。
The transistor MT2 is connected to the memory cell circuit MC
And the transistor MT3. For example, when the bit line BL1 becomes "1",
The transistor MT2 of the memory cell circuit MC1 of each of the word parts Q1 and Q2 is turned on. Thereby, data can be read and written between the capacitor C of the memory cell circuit MC1 of each of the word parts Q1 and Q2 and the transistor MT3.

【0114】トランジスタMT3はトランジスタMT2
と共通読み書き線RL1との間でデータをやりとりする
役割をする。ワード選択線WBL1が”1”になると、
ワード部Q1のメモリセル回路MC1〜MC9のトラン
ジスタMT3が一斉にオンする。これによって、ワード
部Q1のメモリセル回路MC1〜MC9それぞれのトラ
ンジスタMT2と共通読み書き線RL1の間でデータの
読み書きが可能である。
The transistor MT3 is connected to the transistor MT2
And the common read / write line RL1. When the word selection line WBL1 becomes "1",
The transistors MT3 of the memory cell circuits MC1 to MC9 in the word section Q1 are turned on all at once. Thus, data can be read and written between the transistor MT2 of each of the memory cell circuits MC1 to MC9 of the word part Q1 and the common read / write line RL1.

【0115】次に、例えば、ワード部Q1のメモリセル
回路MCのキャパシタCから共通読み書き線RL1へデ
ータを読み出す場合を考える。ビット線BL1〜BL9
のうち、BL9のみを”1”にする。ワード選択線WB
L1,WBL2のうち、WBL1のみを”1”にする。
これによって、ワード部Q1のメモリセル回路MC1の
トランジスタMT2,MT3が共にオンした状態にな
る。これによって、ワード部Q1のメモリセル回路MC
1から共通読み書き線RL1へデータを読み出すことが
できる。
Next, for example, consider a case where data is read from the capacitor C of the memory cell circuit MC of the word section Q1 to the common read / write line RL1. Bit lines BL1 to BL9
Among them, only BL9 is set to "1". Word select line WB
Of L1 and WBL2, only WBL1 is set to "1".
As a result, the transistors MT2 and MT3 of the memory cell circuit MC1 in the word section Q1 are both turned on. Thereby, the memory cell circuit MC of the word portion Q1
1 to the common read / write line RL1.

【0116】また、ワード部QA1,QA2,QB1,
QB2は互いに独立にワード選択線によって任意に選択
できる。
The word parts QA1, QA2, QB1,
QB2 can be arbitrarily selected independently of each other by a word selection line.

【0117】以上のように、ビット線によってワード部
WP内のメモリセル回路MC1〜MC9のどれかを選択
し、ワード選択線によってワード部QA1,QA2,Q
B1,QB2のどれかを選択することによって、データ
線DL1〜DL9とは別個に所望のQセルから共通読み
書き線RL1へデータを読み出すことができる。
As described above, one of the memory cell circuits MC1 to MC9 in the word section WP is selected by the bit line, and the word sections QA1, QA2, Q2 are selected by the word selection line.
By selecting one of B1 and QB2, data can be read from a desired Q cell to the common read / write line RL1 separately from the data lines DL1 to DL9.

【0118】また、先に述べたように、スイッチSW、
共通読み書き線RL1cを設けることによって、内部演
算にQB1−QB2の組み合わせを含ませることも可能
である。つまり、スイッチSWをオフにして、ワード部
QB1をワードブロックWBBから切り離す。切り離さ
れたワード部QB1は共通読み書き線RL1cを介して
ワードブロックWBAに接続され、ワードブロックWB
Aに含まれることになる。この状態で、ワード選択線に
よってワード部QB1,QB2を選択し、かつ、ワード
部QA1,QA2を選択しないことによって、ワード部
QB1,QB2のデータはそれぞれ読出し書出し回路R
WCa,RWCbを介して演算回路1bに読み出され
る。これによって、演算回路1bは、同じワードブロッ
クWBB内のワード部QB1,QB2同士の演算を行う
ことができる。
As described above, the switches SW,
By providing the common read / write line RL1c, a combination of QB1 and QB2 can be included in the internal operation. That is, the switch SW is turned off, and the word part QB1 is separated from the word block WBB. The separated word part QB1 is connected to the word block WBA via the common read / write line RL1c,
A will be included. In this state, the word sections QB1 and QB2 are selected by the word selection line and the word sections QA1 and QA2 are not selected, so that the data of the word sections QB1 and QB2 are read and written by the read / write circuit R
The data is read out to the arithmetic circuit 1b via WCa and RWCb. As a result, the arithmetic circuit 1b can perform an operation between the word parts QB1 and QB2 in the same word block WBB.

【0119】倍長演算モードの場合は、例えば、ワード
選択線によってワード部QA1,QB1を選択して、ビ
ット線によってワード部QA1,QB1のそれぞれのメ
モリセル回路MC1〜MC9をLSBからMSBへに選
択する。次に、ワード選択線によってワード部QA2,
QB2を選択して、ビット線によってワード部QA2,
QB2のそれぞれのメモリセル回路MC1〜MC9をL
SBからMSBへに選択する。これによって、倍長のデ
ータの演算を行うことが可能である。
In the case of the double-length operation mode, for example, the word sections QA1 and QB1 are selected by a word selection line, and the memory cell circuits MC1 to MC9 of the word sections QA1 and QB1 are changed from LSB to MSB by bit lines. select. Next, a word section QA2 is connected by a word selection line.
QB2 is selected, and the word section QA2,
Each of the memory cell circuits MC1 to MC9 of QB2 is set to L
Select from SB to MSB. This makes it possible to perform an operation on double-length data.

【0120】次に、累算を行う場合を説明する。この場
合は倍長演算モードで行う。例えば、累算の演算結果を
ワード部QA1,QA2、つまり、ワードブロックWB
Aに書き込むとする。加える数を外部からワード線を介
してQB1,QB2、つまり、ワードブロックWBBに
書き込む。演算回路1bはワードブロックWBA,WB
Bのデータを互いに足し合わせ、この結果をワードブロ
ックWBAに書き込む。このようにして、外部から与え
られた数を累積してワードブロックに書き込むことがで
きる。累算は倍長演算モードで行うので、例えば1ワー
ドの長さが9ビットの場合、演算結果は17ビットまで
対応できる。
Next, the case of performing accumulation will be described. In this case, the operation is performed in the double length calculation mode. For example, the result of the accumulation is stored in the word parts QA1 and QA2, that is, the word block WB.
Suppose to write to A. The number to be added is externally written to QB1 and QB2, that is, the word block WBB via a word line. The arithmetic circuit 1b includes word blocks WBA, WB
The data of B are added to each other, and the result is written to the word block WBA. In this way, the number given from the outside can be accumulated and written into the word block. Since the accumulation is performed in the double length operation mode, for example, when the length of one word is 9 bits, the operation result can correspond to 17 bits.

【0121】実施の形態の演算回路1bの内部構成を図
4に示す。なお、説明を分かりやすくするために、QA
セル(ワードブロックWBAのQセル),QBセル(ワ
ードブロックWBBのQセル)についても図示してい
る。演算回路1bは、従来の演算回路1aに、論理演算
のための演算機能回路30、一致検索のための演算機能
回路40、大小比較のための演算機能回路50を追加し
たものである。
FIG. 4 shows the internal configuration of the arithmetic circuit 1b according to the embodiment. In addition, in order to make the explanation easy to understand, QA
Also shown are cells (Q cells of word block WBA) and QB cells (Q cells of word block WBB). The arithmetic circuit 1b is obtained by adding an arithmetic function circuit 30 for logical operation, an arithmetic function circuit 40 for matching search, and an arithmetic function circuit 50 for magnitude comparison to the conventional arithmetic circuit 1a.

【0122】まず、演算機能回路30の構成について説
明する。ORのゲートG7の一方の入力端子は、マルチ
プレクサMPX2の出力端子に接続されている。ゲート
G7の他方の入力端子は、マルチプレクサMPX3の出
力端子に接続されている。トランジスタT4は、ゲート
G7の出力端子とデータ線ML3との間に接続されてい
る。トランジスタT4のゲート電極は制御信号C1を受
ける。ANDのゲートG8の一方の入力端子は、ゲート
G3の出力端子に接続されている。ゲートG8の他方の
入力端子は、マルチプレクサMPX3の出力端子に接続
されている。トランジスタT5は、ゲートG8の出力端
子とデータ線ML3との間に接続されている。トランジ
スタT5のゲート電極は制御信号C2を受ける。トラン
ジスタT6は、ゲートG5の出力端子とデータ線ML3
との間に接続されている。トランジスタT6のゲート電
極は制御信号C3を受ける。トランジスタT7は、マル
チプレクサMPX3の出力端子とデータ線ML3との間
に接続されている。トランジスタT7のゲート電極は制
御信号C4を受ける。
First, the configuration of the arithmetic function circuit 30 will be described. One input terminal of the OR gate G7 is connected to the output terminal of the multiplexer MPX2. The other input terminal of the gate G7 is connected to the output terminal of the multiplexer MPX3. The transistor T4 is connected between the output terminal of the gate G7 and the data line ML3. The gate electrode of transistor T4 receives control signal C1. One input terminal of the AND gate G8 is connected to the output terminal of the gate G3. The other input terminal of the gate G8 is connected to the output terminal of the multiplexer MPX3. The transistor T5 is connected between the output terminal of the gate G8 and the data line ML3. The gate electrode of transistor T5 receives control signal C2. The transistor T6 is connected between the output terminal of the gate G5 and the data line ML3.
Is connected between. The gate electrode of transistor T6 receives control signal C3. The transistor T7 is connected between the output terminal of the multiplexer MPX3 and the data line ML3. The gate electrode of transistor T7 receives control signal C4.

【0123】次に演算機能回路40の構成について説明
する。トランジスタT8はトランジスタT1と並列に接
続されている。トランジスタT8のゲート電極は制御信
号C6を受ける。マルチプレクサMPX6の一方の入力
端子はゲートG6の出力端子に接続されている。マルチ
プレクサMPX6の他方の入力端子はゲートG6の入力
端子に接続されている。NANDのゲートG9の一方の
入力端子はフリップフロップFF1の出力端子に接続さ
れている。ゲートG9の他方の入力端子は制御信号C8
を受ける。ANDのゲートG10の一方の入力端子はゲ
ートG9の出力端子に接続されている。ゲートG10の
他方の入力端子は制御信号S2を受ける。トランジスタ
T9はフリップフロップFF1の出力端子とデータ線M
L5との間に接続されている。トランジスタT9のゲー
ト電極は制御信号S4を受ける。
Next, the configuration of the arithmetic function circuit 40 will be described. The transistor T8 is connected in parallel with the transistor T1. The gate electrode of transistor T8 receives control signal C6. One input terminal of the multiplexer MPX6 is connected to the output terminal of the gate G6. The other input terminal of the multiplexer MPX6 is connected to the input terminal of the gate G6. One input terminal of the NAND gate G9 is connected to the output terminal of the flip-flop FF1. The other input terminal of the gate G9 is connected to a control signal C8.
Receive. One input terminal of the AND gate G10 is connected to the output terminal of the gate G9. The other input terminal of gate G10 receives control signal S2. The transistor T9 is connected to the output terminal of the flip-flop FF1 and the data line M
L5. The gate electrode of transistor T9 receives control signal S4.

【0124】次に演算機能回路50の構成について説明
する。トランジスタT10はデータ線ML3とフリップ
フロップFF2の入力端子との間に接続されている。ト
ランジスタT10のゲート電極はゲートG10の出力端
子に接続されている。トランジスタT11はフリップフ
ロップFF2の出力端子とデータ線ML6との間に接続
されている。トランジスタT11のゲート電極は制御信
号S4を受ける。
Next, the configuration of the arithmetic function circuit 50 will be described. The transistor T10 is connected between the data line ML3 and the input terminal of the flip-flop FF2. The gate electrode of the transistor T10 is connected to the output terminal of the gate G10. The transistor T11 is connected between the output terminal of the flip-flop FF2 and the data line ML6. The gate electrode of transistor T11 receives control signal S4.

【0125】フリップフロップFF1,FF2は演算結
果格納部を構成する。
The flip-flops FF1 and FF2 constitute an operation result storage unit.

【0126】演算回路1bは、3入力のマルチプレクサ
MPX5(選択部)を備えている。マルチプレクサMP
X5の3入力は、外部共通入力データX、同じメモリブ
ロックのQAセルのデータ、固定値”0”である。マル
チプレクサMPX5は3入力のうちの1つを制御信号P
3,P4に応じて選択してデータAとして出力する。
The arithmetic circuit 1b includes a three-input multiplexer MPX5 (selection unit). Multiplexer MP
The three inputs X5 are the external common input data X, the data of the QA cell in the same memory block, and the fixed value "0". The multiplexer MPX5 supplies one of the three inputs to the control signal P
3 and P4 and output as data A.

【0127】演算回路1bのマルチプレクサMPX1
(選択部)は4入力である。マルチプレクサMPX1の
4入力は、外部共通入力データX、上位隣接ブロックか
らのQBセルのデータ、同じメモリブロックのQBセル
のデータ、固定値”0”である。マルチプレクサMPX
1は4入力のうちの1つを制御信号P1,P2に応じて
選択してデータBとして出力する。
The multiplexer MPX1 of the arithmetic circuit 1b
The (selection unit) has four inputs. The four inputs of the multiplexer MPX1 are external common input data X, QB cell data from the upper adjacent block, QB cell data in the same memory block, and a fixed value “0”. Multiplexer MPX
1 selects one of the four inputs according to the control signals P1 and P2 and outputs it as data B.

【0128】次に演算回路1bの動作について説明す
る。まず、マルチプレクサMPX1は4入力の1つを制
御信号P1,P2に応じてデータBとして選択する。マ
ルチプレクサMPX5は3入力の1つを制御信号P3,
P4に応じてデータAとして選択する。実施の形態で選
択されるデータの組み合わせ種類を表5に示す。なお、
表5において、*は任意であることを示す。
Next, the operation of the arithmetic circuit 1b will be described. First, the multiplexer MPX1 selects one of the four inputs as data B according to the control signals P1 and P2. The multiplexer MPX5 supplies one of the three inputs to the control signal P3.
Select as data A according to P4. Table 5 shows combinations of data selected in the embodiment. In addition,
In Table 5, * indicates that it is optional.

【0129】[0129]

【表5】 [Table 5]

【0130】演算回路1bは、データA,Bに対して演
算を行い、QAセル、QBセル、上位隣接ブロックのQ
Aセルの方へデータDを出力する。なお、図4のQA+
が上位隣接ブロックのQAセルであり、QA−が下位隣
接ブロックのQAセルである。
The operation circuit 1b performs an operation on the data A and B, and outputs the QA cell, the QB cell and the Q of the upper adjacent block.
Data D is output to the A cell. The QA + in FIG.
Is the QA cell of the upper adjacent block, and QA- is the QA cell of the lower adjacent block.

【0131】QAセル、QBセル、QA+セルのうちの
1つにデータDが書込まれるように、QAセル、QBセ
ル、QA+セルの書込み回路は動作する。
The write circuit of the QA cell, QB cell, and QA + cell operates so that data D is written to one of the QA cell, QB cell, and QA + cell.

【0132】データA,Bに対して行われる演算機能の
種類には、表6に示すように、加算、減算(B−A)、
減算(A−B)、論理演算(AND、OR、EXOR、
EXNOR、NOT、Through)、ビット一致検
索、大小比較がある。演算回路1bの演算機能は、制御
信号C0〜C8によって選択される。
As shown in Table 6, the types of arithmetic functions performed on data A and B include addition, subtraction (BA),
Subtraction (AB), logical operation (AND, OR, EXOR,
EXNOR, NOT, Through), bit match search, and magnitude comparison. The calculation function of the calculation circuit 1b is selected by the control signals C0 to C8.

【0133】[0133]

【表6】 [Table 6]

【0134】以下、各演算機能に分けて動作を説明す
る。なお、表6に示した制御信号C0〜C8の組み合わ
せは一例であり、各演算において説明する条件を満たせ
ばよい。
The operation will be described below for each operation function. Note that the combination of the control signals C0 to C8 shown in Table 6 is an example, and the condition described in each operation may be satisfied.

【0135】〈加算〉制御信号C0,C3,C5,C7
を”1”に設定し、制御信号C1,C2,C4,C6,
C8を”0”に設定する。また、フリップフロップFF
1には初期値として”0”を書込む。こうすれば、従来
の加算と同様に動作する。
<Addition> Control signals C0, C3, C5, C7
Is set to “1”, and the control signals C1, C2, C4, C6,
Set C8 to "0". Also, flip-flop FF
"1" is written into "1" as an initial value. In this case, the operation is the same as the conventional addition.

【0136】〈減算(B−A)〉制御信号C3,C5,
C7を”1”に設定し、制御信号C0,C1,C2,C
4,C6,C8を”0”に設定する。また、フリップフ
ロップFF1には初期値として”1”を書込む。こうす
れば、従来の減算(B−A)と同様に動作する。
<Subtraction (BA)> Control signals C3, C5,
C7 is set to "1" and control signals C0, C1, C2, C
4, C6 and C8 are set to "0". Further, "1" is written into the flip-flop FF1 as an initial value. In this case, the operation is similar to that of the conventional subtraction (BA).

【0137】〈減算(A−B)〉制御信号C0,C3,
C5を”1”に設定し、制御信号C1,C2,C4,C
6,C7,C8を”0”に設定する。また、フリップフ
ロップFF1には初期値として”0”を書込む。この場
合の論理は表7に示すようになり、A−Bの減算が行え
る。
<Subtraction (AB)> Control signals C0, C3,
C5 is set to "1" and the control signals C1, C2, C4, C
6, C7 and C8 are set to "0". Also, "0" is written into the flip-flop FF1 as an initial value. The logic in this case is as shown in Table 7, and the subtraction of AB can be performed.

【0138】[0138]

【表7】 [Table 7]

【0139】〈論理演算〉論理演算では、桁上げは関係
ないので、制御信号C5を”0”にする。これによっ
て、ゲートG1の出力データはデータBになる。以下、
各論理演算の種類に分けて説明する。
<Logical operation> In the logical operation, since the carry is not relevant, the control signal C5 is set to "0". As a result, the output data of the gate G1 becomes the data B. Less than,
The description will be given for each type of logical operation.

【0140】論理演算:AND.制御信号C0,C2
を”1”に設定し、制御信号C1,C3,C4を”0”
に設定すればよい。
Logical operation: AND. Control signals C0, C2
Is set to “1”, and the control signals C1, C3, C4 are set to “0”.
Should be set to.

【0141】論理演算:OR.制御信号C1を”1”に
設定し、制御信号C0,C2,C3,C4を”0”に設
定すればよい。
Logical operation: OR. What is necessary is just to set the control signal C1 to "1" and set the control signals C0, C2, C3, C4 to "0".

【0142】論理演算:EXOR.制御信号C4を”
1”に設定し、制御信号C0〜C3を”0”に設定すれ
ばよい。
Logical operation: EXOR. Control signal C4
1 may be set and the control signals C0 to C3 may be set to "0".

【0143】論理演算:EXNOR.制御信号C0,C
4を”1”に設定し、制御信号C1〜C3を”0”に設
定すればよい。
Logical operation: EXNOR. Control signals C0, C
4 may be set to "1" and the control signals C1 to C3 may be set to "0".

【0144】論理演算:NOT.NOTではデータAの
反転をデータDにする。制御信号C3を”1”に設定
し、制御信号C0〜C2,C4を”0”に設定し、デー
タBを固定値”0”、つまり、制御信号P1,P2をそ
れぞれ”1”,”0”にすればよい。
Logical operation: NOT. In NOT, data D is obtained by inverting data A. The control signal C3 is set to "1", the control signals C0 to C2 and C4 are set to "0", and the data B is set to a fixed value "0", that is, the control signals P1 and P2 are set to "1" and "0", respectively. "

【0145】論理演算:Through Throughでは、データAをデータDにする。制御
信号C4を”1”に設定し、制御信号C0〜C3を”
0”に設定し、制御信号P1,P2をそれぞれ”
1”,”0”にすればよい。
Logic operation: Through Through In data through, data A is changed to data D. The control signal C4 is set to "1", and the control signals C0 to C3 are set to "1".
0 ", and the control signals P1 and P2 are set to"
What is necessary is just to set it to 1 "," 0 ".

【0146】〈一致検索〉一致検索では、EXORを利
用し、全ビットの一致の有無をフリップフロップFF1
に保存する。よって、制御信号C4,C8を”1”に設
定し、制御信号C0〜C3,C5を”0”に設定すれば
よい。また、フリップフロップFF1には初期値とし
て”0”を書込む。
<Match Search> In the match search, EXOR is used to determine whether all bits match or not by using the flip-flop FF1.
To save. Therefore, the control signals C4 and C8 may be set to "1", and the control signals C0 to C3 and C5 may be set to "0". Also, "0" is written into the flip-flop FF1 as an initial value.

【0147】データAとデータBとが一致していれば、
データDは”0”であり、フリップフロップFF1に格
納されている値は初期値”0”のままである。データA
とデータBとが一致してなければ、データDは”1”で
あり、フリップフロップFF1には”1”が書込まれ
る。フリップフロップFF1に”1”が書込まれると、
データC−が”1”になり、ゲートG10の出力データ
は”0”になり、トランジスタT2はオフする。トラン
ジスタT2がオフすると、フリップフロップFF1への
データの書き込みは以後、禁止される。つまり、フリッ
プフロップFF1は、演算実行中に一致の有無(特定の
演算結果)が得られれば、その演算結果を選択演算が終
了するまで保持する。よって、一致検索が終了した時点
で、フリップフロップFF1には、一致の有無がフリッ
プフロップFF1に保存さている。制御信号S4を”
1”にすれば、データ線ML5から一致の有無を見るこ
とができる。また、データDが書込まれたワード部WP
を見れば、どのビットが不一致であるかが分かる。
If data A and data B match,
The data D is "0", and the value stored in the flip-flop FF1 remains the initial value "0". Data A
If data and data B do not match, data D is "1" and "1" is written to flip-flop FF1. When "1" is written to the flip-flop FF1,
The data C- becomes "1", the output data of the gate G10 becomes "0", and the transistor T2 turns off. When the transistor T2 is turned off, data writing to the flip-flop FF1 is prohibited thereafter. That is, if the presence or absence of a match (specific operation result) is obtained during execution of the operation, the flip-flop FF1 holds the operation result until the selection operation ends. Therefore, at the time when the match search is completed, the presence or absence of a match is stored in the flip-flop FF1. Control signal S4
If it is set to “1”, the presence or absence of a match can be seen from the data line ML5.
See which bits are mismatched.

【0148】〈大小比較〉大小比較はデータAとBとの
大小を比較する演算である。大小比較では、フリップフ
ロップFF1に初期値”0”を書き込み、制御信号C
8,S2を”1”にして、トランジスタT2,T10を
オンする。この状態で、演算対象の各ビット毎にフェー
ズ1,2を連続して行う。フェーズ1では、Throu
ghを行い、データAをフリップフロップFF2に書き
込む。フェーズ2では、一致検索を行う。
<Size comparison> Size comparison is an operation for comparing the sizes of data A and B. In the magnitude comparison, the initial value “0” is written to the flip-flop FF1, and the control signal C
8, S2 is set to "1" to turn on the transistors T2 and T10. In this state, the phases 1 and 2 are continuously performed for each bit to be operated. In Phase 1, Throu
gh, and writes the data A into the flip-flop FF2. In phase 2, a match search is performed.

【0149】例えば、演算対象のワード部QA1のデー
タが”+00001000”、演算対象のQB1のデー
タが”+00000001”の場合を考える。この場
合、ワードブロックWBA,WBBから演算回路1b
へ、データがMSBから1ビットずつ順番に読み出す。
データA,Bが両方とも”0”のときは、フリップフロ
ップFF1は初期値のままである。しかし、データA,
Bがそれぞれ”1”、”0”のとき、フリップフロップ
FF1は”1”が書き込まれ、フリップフロップFF1
へのデータの書き込みは以後、禁止される。これととも
に、トランジスタT10もオフするので、フリップフロ
ップFF2へのデータの書き込みも以後禁止される。つ
まり、フリップフロップFF2は、データAの”1”を
演算が終了するまで保持する。ワード部QA1,QB1
から全てのビットを読み出した後、”1”の制御信号S
4を与えて、トランジスタT9,T11をオンし、デー
タ線ML5,ML6からそれぞれフリップフロップFF
1,FF2に書き込まれたデータを見る。フリップフロ
ップFF1,FF2に両方とも”1”が書き込まれてい
ることを知ることによって、(ワード部QA1のデータ
A)>(ワード部QB1のデータB)が分かる。また、
フリップフロップFF1,FF2にそれぞれ”1”,”
0”が書き込まれている場合はA<Bであり、フリップ
フロップFF1に”0”が書き込まれていれば、A=B
である。
For example, consider a case where the data of the word part QA1 to be operated on is "+00001000" and the data of the QB1 to be operated is "+00000001". In this case, the arithmetic circuit 1b is converted from the word blocks WBA and WBB.
, Data is sequentially read from the MSB one bit at a time.
When the data A and B are both "0", the flip-flop FF1 remains at the initial value. However, data A,
When B is “1” and “0”, respectively, “1” is written in the flip-flop FF1, and the flip-flop FF1 is written.
Writing of data to the memory is prohibited thereafter. At the same time, the transistor T10 is also turned off, so that data writing to the flip-flop FF2 is prohibited thereafter. That is, the flip-flop FF2 holds “1” of the data A until the operation is completed. Word part QA1, QB1
After reading all the bits from the control signal S of "1"
4 to turn on the transistors T9 and T11, and from the data lines ML5 and ML6,
1. Look at the data written to FF2. By knowing that "1" is written in both flip-flops FF1 and FF2, (data A of word part QA1)> (data B of word part QB1) is known. Also,
"1" and "1" are applied to the flip-flops FF1 and FF2, respectively.
If “0” is written, A <B, and if “0” is written to flip-flop FF1, A = B
It is.

【0150】以上に説明した実施の形態によれば、演算
回路1bは、従来のように、単に2つのワード部WPa
に接続されているのではなく、ワードブロックWBA,
WBBに接続される。そして、各ワードブロックが2つ
のワード部を有しているので4ワード毎に演算回路1b
が設けられることになり、演算回路1bの数が従来と比
較して減る。1ワードブロックは複数のワード部が含ま
れるため、ワードブロック単位のデータは、ワード部単
位のデータの倍長である。よって、演算回路1bの演算
機能や先に述べた〈演算対象のデータA,Bの選択機
能〉等の機能を増やしても、演算回路1bの数を減らし
ているので、レイアウト面積が大幅に増加せず、しか
も、倍長のデータの演算を行うことが可能である。
According to the above-described embodiment, arithmetic circuit 1b is simply provided with two word sections WPa as in the prior art.
Is not connected to the word block WBA,
Connected to WBB. Since each word block has two word portions, the arithmetic circuit 1b is provided every four words.
Is provided, and the number of arithmetic circuits 1b is reduced as compared with the conventional case. Since one word block includes a plurality of word parts, data in word block units is twice as long as data in word part units. Therefore, even if the arithmetic functions of the arithmetic circuit 1b and the functions such as the above-mentioned <function of selecting data A and B to be operated> are increased, the number of arithmetic circuits 1b is reduced, and the layout area is greatly increased. It is also possible to perform double-length data calculations without using them.

【0151】また、演算回路1bの演算機能は、論理演
算及び加算を含むことによって、例えば、画像処理では
画素のデータを並列的に処理する画像処理分野に対応で
きる。このようなデータを並列に処理する分野に、実施
の形態の演算機能付きメモリは有効である。
The arithmetic function of the arithmetic circuit 1b includes a logical operation and an addition, so that, for example, the image processing can be applied to an image processing field in which pixel data is processed in parallel. The memory with an arithmetic function according to the embodiment is effective in the field of processing such data in parallel.

【0152】また、演算回路1bはワードブロックWB
A,WBBに書き込まれたデータと外部共通入力データ
Xとのいずれか1つを選択するマルチプレクサMPX
1,MPX5を含むことによって、外部共通入力データ
と、ワードブロックWBA,WBBのデータとを組み合
わせて演算することができる。
The arithmetic circuit 1b is connected to the word block WB
A, multiplexer MPX for selecting any one of data written to A, WBB and external common input data X
1 and MPX5, it is possible to perform an arithmetic operation by combining the external common input data and the data of the word blocks WBA and WBB.

【0153】また、例えば番号が1のメモリブロックの
演算結果は、このメモリブロック自身及びデータ線ML
4を介して番号が2のメモリブロックのいずれかに書き
込まれる。これによって、演算結果をメモリブロック間
でシフトさせることができる。
Further, for example, the operation result of the memory block having the number 1 is determined by the memory block itself and the data line ML.
4 is written to one of the memory blocks having the number 2. As a result, the operation result can be shifted between the memory blocks.

【0154】さらに、フリップフロップFF1,FF2
がSRAMを構成するようにすれば、全てのメモリブロ
ックの演算結果をSRAMに格納できる。
Further, flip-flops FF1 and FF2
Constitute an SRAM, the operation results of all the memory blocks can be stored in the SRAM.

【0155】[0155]

【発明の効果】請求項1記載の発明によれば、演算部
は、従来のように、単に2つのワード部に接続されてい
るのではなく、複数のワードブロックに接続される。つ
まり、(演算部に接続されるワードブロックの数)×
(1ワードブロック内のワード部の数)毎に演算部が設
けられるので、演算部の数が従来と比較して減る。よっ
て、演算機能を増やしても、演算部の数を減らしている
ので、レイアウト面積が大幅に増加しない。更に、1ワ
ードブロックには互いに連結可能な複数のワード部が含
まれるため、1ワードブロックにおいて1ワード長より
も大きな桁数のデータを扱うことができる。従って演算
対象となるデータの演算結果がワード長よりも長くなっ
てもこれを格納することができる。
According to the first aspect of the present invention, the operation unit is connected to a plurality of word blocks instead of being simply connected to two word units as in the related art. That is, (the number of word blocks connected to the operation unit) ×
Since an arithmetic unit is provided for each (number of word parts in one word block), the number of arithmetic units is reduced as compared with the conventional case. Therefore, even if the number of arithmetic functions is increased, the number of arithmetic units is reduced, so that the layout area does not significantly increase. Further, since one word block includes a plurality of word parts that can be connected to each other, data of a digit number larger than one word length can be handled in one word block. Therefore, even if the operation result of the data to be operated becomes longer than the word length, it can be stored.

【0156】請求項2記載の発明によれば、外部から直
接に演算部へ入力されたデータと、ワードブロックのデ
ータとを組み合わせて演算することができる。
According to the second aspect of the present invention, it is possible to perform an arithmetic operation by combining data directly input from the outside to the arithmetic unit with data of a word block.

【0157】請求項3記載の発明によれば、演算結果を
メモリブロック間でシフトさせることができる。
According to the third aspect of the present invention, the operation result can be shifted between the memory blocks.

【0158】請求項4記載の発明によれば、同じワード
ブロック内のワード部同士の演算を行うことができる。
According to the fourth aspect of the present invention, it is possible to perform an operation between word parts in the same word block.

【0159】請求項記載5の発明によれば、例えば一致
検索の演算を実現できる。
According to the fifth aspect of the present invention, for example, an operation of a match search can be realized.

【0160】請求項記載6の発明によれば、例えば大小
比較の演算を実現できる。
According to the sixth aspect of the present invention, for example, a magnitude comparison operation can be realized.

【0161】請求項記載7の発明によれば、SRAMに
全てのメモリブロックの演算結果を格納できる。
According to the seventh aspect of the present invention, the operation results of all the memory blocks can be stored in the SRAM.

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

【図1】 本発明の実施の形態における演算機能付きメ
モリ(ブロックモード)の例を示す概念図である。
FIG. 1 is a conceptual diagram showing an example of a memory with an arithmetic function (block mode) according to an embodiment of the present invention.

【図2】 本発明の実施の形態におけるワードブロック
の例を示す回路図である。
FIG. 2 is a circuit diagram illustrating an example of a word block according to the embodiment of the present invention.

【図3】 本発明の実施の形態におけるワード部の例を
示す回路図である。
FIG. 3 is a circuit diagram illustrating an example of a word section according to the embodiment of the present invention.

【図4】 本発明の実施の形態における演算回路の例を
示す回路図である。
FIG. 4 is a circuit diagram illustrating an example of an arithmetic circuit according to the embodiment of the present invention.

【図5】 ワードモードを示す概念図である。FIG. 5 is a conceptual diagram showing a word mode.

【図6】 従来の演算機能付きメモリ(ブロックモー
ド)を示す概念図である。
FIG. 6 is a conceptual diagram showing a conventional memory with an arithmetic function (block mode).

【図7】 機能メモリの構成を示す概念図である。FIG. 7 is a conceptual diagram showing a configuration of a functional memory.

【図8】 従来のWワードを示す回路図である。FIG. 8 is a circuit diagram showing a conventional W word.

【図9】 読み出し回路(センスアンプ)の例を示す回
路図である。
FIG. 9 is a circuit diagram illustrating an example of a read circuit (sense amplifier).

【図10】 従来のQワードを示す回路図である。FIG. 10 is a circuit diagram showing a conventional Q word.

【図11】 従来の演算回路を示す回路図である。FIG. 11 is a circuit diagram showing a conventional arithmetic circuit.

【符号の説明】[Explanation of symbols]

WP ワード部、RL1a,RL1b,RL1c 共通
読み書き線、RC1読み出し回路、WC1〜WC3 書
き込み回路、10〜50 演算機能回路。
WP word section, RL1a, RL1b, RL1c common read / write line, RC1 read circuit, WC1-WC3 write circuit, 10-50 arithmetic function circuit.

───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.7 識別記号 FI テーマコート゛(参考) G11C 11/34 371H Fターム(参考) 5B015 HH01 HH03 JJ37 KB91 PP01 5B024 AA07 BA29 CA07 CA15 CA16 5B057 CH04 CH11 5B060 CB00 MM20 ──────────────────────────────────────────────────続 き Continued on the front page (51) Int.Cl. 7 Identification symbol FI Theme coat ゛ (Reference) G11C 11/34 371H F-term (Reference) 5B015 HH01 HH03 JJ37 KB91 PP01 5B024 AA07 BA29 CA07 CA15 CA16 5B057 CH04 CH11 5B060 CB00 MM20

Claims (7)

【特許請求の範囲】[Claims] 【請求項1】 互いに連結可能であり、外部との間でデ
ータの読み書きがそれぞれ可能な複数のワード部を各々
が含む、複数のワードブロックと、 前記複数のワードブロックから前記データを読み出して
複数種の演算を行い、前記複数のワードブロックのいず
れか1つにその結果を書き込む演算部とを各々が有する
メモリブロックと、 前記演算部に対して前記複数種の演算のいずれか1つを
選択させて実行させる制御部とを備える演算機能付きメ
モリ。
1. A plurality of word blocks, each including a plurality of word portions that are connectable to each other and are each capable of reading and writing data to and from the outside, and a plurality of word blocks read from the plurality of word blocks. A memory block, each of which has an operation unit for performing a type of operation and writing the result to one of the plurality of word blocks; and selecting one of the plurality of types of operation for the operation unit A memory with an arithmetic function, comprising:
【請求項2】 前記演算部は、 前記複数のワードブロックに書き込まれたデータと、前
記外部から自身に直接に入力されたデータとのいずれか
1つを選択する選択部を含む、請求項1記載の演算機能
付きメモリ。
2. The operation unit according to claim 1, wherein the operation unit includes a selection unit that selects one of data written in the plurality of word blocks and data directly input from the outside to itself. A memory with an arithmetic function as described.
【請求項3】 前記メモリブロックは複数設けられ、 一の前記メモリブロックにおける演算結果が、前記一の
前記メモリブロック及び他の前記メモリブロックのいず
れかを選択して書き込まれる、請求項1又は2記載の演
算機能付きメモリ。
3. The memory block according to claim 1, wherein a plurality of the memory blocks are provided, and an operation result in one of the memory blocks is written by selecting one of the one of the memory blocks and the other of the memory blocks. A memory with an arithmetic function as described.
【請求項4】 一の前記複数のワードブロックの一の前
記複数のワード部を当該ワードブロックから切り離すた
めのスイッチと、 前記一の前記複数のワード部を他の前記複数のワードブ
ロックに接続するための共通読み書き線とを更に備え
る、請求項1〜3のいずれか1つに記載の演算機能付き
メモリ。
4. A switch for disconnecting one of the plurality of word portions from one of the plurality of word blocks, and connecting the one of the plurality of word portions to another of the plurality of word blocks. The memory with an arithmetic function according to any one of claims 1 to 3, further comprising a common read / write line.
【請求項5】 前記演算部は、 前記ワードブロックのデータに対して1ビットずつ順番
に前記演算を実行し、 前記演算の実行中に特定の前記演算結果が得られれば、
その演算結果を前記演算が終了するまで保持するための
演算結果格納部をさらに含む請求項1〜4のいずれか1
つに記載の演算機能付きメモリ。
5. The operation unit executes the operation on the data of the word block one bit at a time in order. If the specific operation result is obtained during the execution of the operation,
5. The apparatus according to claim 1, further comprising an operation result storage unit for holding the operation result until the operation is completed.
A memory with an arithmetic function described in (1).
【請求項6】 前記演算部は、 前記ワードブロックのデータに対して1ビットずつ順番
に前記演算を実行し、 前記演算の実行中に特定の前記演算結果が得られれば、
その演算結果を前記演算が終了するまで保持するための
第1のフリップフロップ、前記演算の実行中に特定の前
記演算結果が得られれば、前記演算部へ読み出された前
記データのうちの特定の前記データを前記演算が終了す
るまで保持するための第2のフリップフロップを含む演
算結果格納部をさらに含む請求項1〜4のいずれか1つ
に記載の演算機能付きメモリ。
6. The operation unit executes the operation on the data of the word block one bit at a time in order. If the specific operation result is obtained during the execution of the operation,
A first flip-flop for holding the operation result until the operation is completed; a first flip-flop for obtaining the specific operation result during execution of the operation; The memory with an arithmetic function according to any one of claims 1 to 4, further comprising an arithmetic result storage unit including a second flip-flop for holding said data until said arithmetic operation is completed.
【請求項7】 前記演算結果格納部はSRAMを構成す
る請求項5又は6記載の演算機能付きメモリ。
7. The memory with an arithmetic function according to claim 5, wherein said arithmetic result storage unit comprises an SRAM.
JP23253198A 1998-08-19 1998-08-19 Memory provided with arithmetic function Pending JP2000067573A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP23253198A JP2000067573A (en) 1998-08-19 1998-08-19 Memory provided with arithmetic function

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP23253198A JP2000067573A (en) 1998-08-19 1998-08-19 Memory provided with arithmetic function

Publications (1)

Publication Number Publication Date
JP2000067573A true JP2000067573A (en) 2000-03-03

Family

ID=16940807

Family Applications (1)

Application Number Title Priority Date Filing Date
JP23253198A Pending JP2000067573A (en) 1998-08-19 1998-08-19 Memory provided with arithmetic function

Country Status (1)

Country Link
JP (1) JP2000067573A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7035982B2 (en) 2001-09-27 2006-04-25 Kabushiki Kaisha Toshiba Data processor with a built-in memory
JP2015188071A (en) * 2014-03-14 2015-10-29 株式会社半導体エネルギー研究所 semiconductor device
JP2017016668A (en) * 2013-12-23 2017-01-19 井上 克己 Memory provided with information retrieval function, use method thereof, device, and information processing method
JP2017519317A (en) * 2014-05-14 2017-07-13 チンファ ユニバーシティ Method, apparatus, and memory system for performing multi-access in memory

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7035982B2 (en) 2001-09-27 2006-04-25 Kabushiki Kaisha Toshiba Data processor with a built-in memory
US7237072B2 (en) 2001-09-27 2007-06-26 Kabushiki Kaisha Toshiba Data processor with a built-in memory
US7546425B2 (en) 2001-09-27 2009-06-09 Kabushiki Kaisha Toshiba Data processor with a built-in memory
JP2017016668A (en) * 2013-12-23 2017-01-19 井上 克己 Memory provided with information retrieval function, use method thereof, device, and information processing method
US9627065B2 (en) 2013-12-23 2017-04-18 Katsumi Inoue Memory equipped with information retrieval function, method for using same, device, and information processing method
JP2015188071A (en) * 2014-03-14 2015-10-29 株式会社半導体エネルギー研究所 semiconductor device
JP2017519317A (en) * 2014-05-14 2017-07-13 チンファ ユニバーシティ Method, apparatus, and memory system for performing multi-access in memory
US10956319B2 (en) 2014-05-14 2021-03-23 Tsinghua University Method and apparatus for multiple accesses in memory and storage system, wherein the memory return addresses of vertexes that have not been traversed

Similar Documents

Publication Publication Date Title
US7840762B2 (en) Multi-path accessible semiconductor memory device having mailbox areas and mailbox access control method thereof
US5933855A (en) Shared, reconfigurable memory architectures for digital signal processing
JPH06290585A (en) Dual port memory
US20060101231A1 (en) Semiconductor signal processing device
US5388230A (en) Parallel processor having multi-processing units either connected or bypassed in either series or parallel by the use of bus switching
US20030133621A1 (en) Parallel processing logic circuit for sensor signal processing
US7512290B2 (en) Image processing apparatus with SIMD-type microprocessor to perform labeling
JP2000067573A (en) Memory provided with arithmetic function
JP2004110887A (en) Data reading circuit of semiconductor device and data reading method
JP2812292B2 (en) Image processing device
US7057962B1 (en) Address control for efficient memory partition
JP2908890B2 (en) Large-scale channel, access method to each control memory, and read access method to each channel memory
JPS6081660A (en) Data transfer system
EP1033722B1 (en) Shared memory
JPH06349275A (en) Semiconductor memory
JPH05258558A (en) Serial access memory
JP2956390B2 (en) Drawing processor
JPH06150658A (en) Semiconductor memory device
JPS58117068A (en) Processing circuit of picture data
JP3039043B2 (en) Parallel processor
JP3120930B2 (en) Data storage device
JPH05313854A (en) Register file
JPS6352398A (en) Semiconductor memory device
JPH07122073A (en) Selector circuit and multi-port memory cell
JP2004046483A (en) Write control for register

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050627

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080924

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090210