JP5032996B2 - Semiconductor device - Google Patents
Semiconductor device Download PDFInfo
- Publication number
- JP5032996B2 JP5032996B2 JP2007546356A JP2007546356A JP5032996B2 JP 5032996 B2 JP5032996 B2 JP 5032996B2 JP 2007546356 A JP2007546356 A JP 2007546356A JP 2007546356 A JP2007546356 A JP 2007546356A JP 5032996 B2 JP5032996 B2 JP 5032996B2
- Authority
- JP
- Japan
- Prior art keywords
- memory cell
- semiconductor device
- data
- read
- cell blocks
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 239000004065 semiconductor Substances 0.000 title claims description 133
- 230000015654 memory Effects 0.000 claims description 235
- 238000004364 calculation method Methods 0.000 claims description 14
- 238000003860 storage Methods 0.000 claims description 13
- 239000000758 substrate Substances 0.000 claims description 12
- 238000012360 testing method Methods 0.000 claims description 9
- 238000001514 detection method Methods 0.000 claims description 7
- 238000010586 diagram Methods 0.000 description 39
- 238000000034 method Methods 0.000 description 12
- 238000012545 processing Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 9
- 230000010365 information processing Effects 0.000 description 8
- 230000006870 function Effects 0.000 description 7
- 238000004519 manufacturing process Methods 0.000 description 7
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 229910044991 metal oxide Inorganic materials 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 238000005452 bending Methods 0.000 description 1
- 150000001555 benzenes Chemical class 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- SLIUAWYAILUBJU-UHFFFAOYSA-N pentacene Chemical compound C1=CC=CC2=CC3=CC4=CC5=CC=CC=C5C=C4C=C3C=C21 SLIUAWYAILUBJU-UHFFFAOYSA-N 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
Images
Landscapes
- Semiconductor Integrated Circuits (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Logic Circuits (AREA)
Description
本発明は、メモリを論理回路として動作させることができる半導体装置に関する。 The present invention relates to a semiconductor device capable of operating a memory as a logic circuit.
従来、LSI(Large Scale Integration)などの半導体装置は、機能設計、論理回路設計、ウェハ製造、組立などの多くの工程を経て製造されていた。そして、その製造工程は、同一製品の多量生産には適していたが、多種類の製品の少量ずつの生産にはコストがかかるため適していなかった。 Conventionally, semiconductor devices such as LSI (Large Scale Integration) have been manufactured through many processes such as functional design, logic circuit design, wafer manufacturing, and assembly. The manufacturing process was suitable for mass production of the same product, but was not suitable for production of small quantities of many kinds of products because of the cost.
そこで、単一の半導体装置を多量に生産しても顧客サイドで別々の製品として使い分けることができるように、FPGA(Field Programmable Gate Array)などの製造技術も開発された。FPGAとは、製造した後に論理回路をプログラムできるLSIなどの半導体装置のことである。
しかし、FPGAは、論理回路、配線、スイッチなど多種の部品から構成されるため、半導体プロセス上の配線層数の多層配線構造や高度な製造技術を必要とするという問題があった。Therefore, a manufacturing technology such as FPGA (Field Programmable Gate Array) has been developed so that even if a large amount of a single semiconductor device is produced, it can be used as a separate product on the customer side. An FPGA is a semiconductor device such as an LSI that can be programmed with a logic circuit after being manufactured.
However, since the FPGA is composed of various parts such as logic circuits, wirings, and switches, there is a problem that a multilayer wiring structure having a number of wiring layers in a semiconductor process and a high-level manufacturing technique are required.
そして、その1つの解決手法として、メモリを論理回路として動作させる技術が開発された。
たとえば、特許文献1では、複数のメモリを配線接続し、所定のアドレス入力に対して所定のデータを出力するように、メモリに所定の真理値を書き込むことで論理回路として動作する半導体装置に関する技術が開示されている。As one solution, a technique for operating a memory as a logic circuit has been developed.
For example,
また、特許文献2では、SRAM(Static Random Access Memory)などのメモリに真理値表データを書き込み、アドレスを入力とし、出力を出力とすることで論理回路として動作する半導体装置に関する技術が開示されている。
しかしながら、特許文献1の半導体装置では、メモリの真理値を書き換える場合には、配線を接続しなおさなければならないという問題があった。
また、特許文献2の半導体装置では、所定量のデータを記憶するメモリセルを複数集めたメモリセルブロックがアレイ状に並べられ、1つのメモリセルブロックからのデータは、隣接する4つのメモリセルブロックのうち2つ(たとえば上下左右のうち右と下)にしか出力されないため、データを帰還させる(元のメモリセルブロックに戻す)論理回路として動作させることが困難であった。また、メモリセルブロックの規模(入力数や出力数)の適正化も考慮されていなかった。However, the semiconductor device of
Further, in the semiconductor device of
そこで、本発明は、前記問題点に鑑みてなされたものであり、論理回路として動作するメモリであり、メモリの真理値を書き換えても配線を接続しなおす必要がなく、また、データを帰還させることができ、さらに、メモリセルブロックの規模を適正化した半導体装置を提供することを目的とする。 Therefore, the present invention has been made in view of the above problems, and is a memory that operates as a logic circuit. Even if the truth value of the memory is rewritten, there is no need to reconnect wiring, and data is fed back. It is another object of the present invention to provide a semiconductor device in which the scale of the memory cell block is optimized.
前記課題を解決するために、本発明に係る半導体装置は、所定量のデータを記憶するメモリセルを複数備えたメモリセルブロックを複数有する。そして、それぞれのメモリセルブロックは、入力数および出力数が3つ以上であり、内部に前記メモリセルに対する2つの読出アドレスデコーダを備え、所定のアドレス入力に対して所望の論理値を出力するための真理値表データをメモリセルに記憶し、論理回路として動作するように構成されている。また、メモリセルは、2つの読出アドレスデコーダに対応して2本の読出ワード線を有しており、その2本の読出ワード線の両方の電圧が印加された場合に、そのとき保持しているデータが読出データ線から読み出される。さらに、メモリセルブロック同士は、1つのメモリセルブロックからの3つ以上の出力が3つ以上の他のメモリセルブロックへ入力されるように接続されている。また、前記メモリセルブロックは、アレイ状に配置され、そのうち、最右列、最左列、最上行および最下行のいずれかのそれぞれの前記メモリセルブロックからの出力を、他のいずれかのそれぞれの前記メモリセルブロックへ入力するための配線を設け、データの帰還を行い、さらに、動作する前記メモリセルのエリアが2分されており、前記読出アドレスデコーダにおける特定のアドレス選択線が切り替えられたときに、前記動作するメモリセルのエリアが切り替えられ、2種類の論理回路としての動作、あるいは、論理回路としての動作と通常の記憶装置としての動作、のいずれかが瞬時に切り替わり、2分された前記メモリセルのエリアのうち、一方のエリアが論理回路として動作しているときに、他方のエリアがその次の演算のための真理値表データを書き込まれ、前記特定のアドレス選択線を切り替えることで、その他方のエリアによる演算を行い、この真理値表データの書き込みと前記特定のアドレス選択線を切り替えによって、連続して演算を行い、前記メモリセルブロックのメモリセルが前記真理値表データを記憶していないときは、通常の記憶装置として動作する。 In order to solve the above problems, a semiconductor device according to the present invention includes a plurality of memory cell blocks each including a plurality of memory cells that store a predetermined amount of data. Each memory cell block has three or more inputs and outputs, and includes two read address decoders for the memory cells, and outputs a desired logical value for a predetermined address input. The truth table data is stored in a memory cell and operates as a logic circuit. The memory cell has two read word lines corresponding to the two read address decoders. When both voltages of the two read word lines are applied, the memory cell holds the read word lines. Data is read from the read data line. Further, the memory cell blocks are connected such that three or more outputs from one memory cell block are input to three or more other memory cell blocks. The memory cell blocks are arranged in an array, and the output from each of the memory cell blocks in the rightmost column, the leftmost column, the uppermost row, and the lowermost row, Wiring for input to the memory cell block is provided, data is fed back, and the area of the memory cell to be operated is divided into two, and a specific address selection line in the read address decoder is switched Sometimes, the area of the memory cell to be operated is switched, and the operation as two types of logic circuits, or the operation as a logic circuit and the operation as a normal memory device are instantaneously switched and divided into two. Of the memory cell areas, when one area is operating as a logic circuit, the other area is for the next operation. The truth table data is written, and the specific address selection line is switched to perform the calculation by the other area, and the truth table data is written and the specific address selection line is switched to perform the calculation continuously. When the memory cell of the memory cell block does not store the truth table data, the memory cell block operates as a normal storage device.
本発明によれば、論理回路として動作するメモリであり、メモリの真理値を書き換えても配線を接続しなおす必要がなく、また、データを帰還させることができ、さらに、メモリセルブロックの規模を適正化した半導体装置を提供することができる。 According to the present invention, the memory operates as a logic circuit, and even if the truth value of the memory is rewritten, it is not necessary to reconnect the wiring, the data can be fed back, and the scale of the memory cell block can be reduced. An optimized semiconductor device can be provided.
100 情報処理装置
110 半導体装置
200 メモリセル
201,202 読出ワード線
211 書込ワード線
221,222 読出データ線
231,232 書込データ線
300 メモリセルブロック
301 セレクト線
311,312 読出アドレスデコーダ
401 書込/読出回路
600,700,800 真理値表
1400 大規模メモリ
1900 テスタ
2101,2111 磁界検知部
2102,2112 磁界発生部
FL フレキシブル基板DESCRIPTION OF SYMBOLS 100
以下、本発明の実施形態に係る半導体装置について、図面を参照しながら説明する。
図1は、半導体装置と情報処理装置の構成図である。情報処理装置100は、コンピュータ装置であり、キーボードなどの入力部101、ハードディスクなどの記憶部102、RAM(Random Access Memory)などのメモリ103、CRT(Cathode Ray Tube)などの出力部104、通信装置である通信部105、および、CPU(Central Processing Unit)などの処理部106を備えている。
なお、情報処理装置100で作成するビットデータ(図12のステップS1204で後記)を、図示しないROM(Read Only Memory)で保持するようにしてもよい。Hereinafter, a semiconductor device according to an embodiment of the present invention will be described with reference to the drawings.
FIG. 1 is a configuration diagram of a semiconductor device and an information processing device. The information processing apparatus 100 is a computer device, and includes an
Note that the bit data created by the information processing apparatus 100 (described later in step S1204 in FIG. 12) may be held in a ROM (Read Only Memory) (not shown).
半導体装置110は、情報処理装置100の通信部105と接続されている。半導体装置110は、ハードウェア的には、たとえば、通常のSRAM(Static Random Access Memory)と同様の記憶装置であり、詳細は図2以降で説明する。
The
図2は、図1の半導体装置110を構成する記憶素子であるメモリセルの構成図である。メモリセル200は、読出ワード線201,202、書込ワード線211、読出データ線221,222、書込データ線231,232、ゲート241,242,251,252,261,262およびフリップフロップ271を備えて構成される。
FIG. 2 is a configuration diagram of a memory cell which is a memory element constituting the
なお、ゲート241,242,251,252,261および262は、N−MOS(Negative-Metal Oxide Semiconductor)で構成するものとしているが、その代わりにP−MOS(Positive-Metal Oxide Semiconductor)を用いて構成してもよく、さらに、N−MOSとP−MOSの複合ゲートとしてもよい。その場合、周辺の回路を必要に応じて適宜変更することで対応すればよい。また、ゲート241,251などは、いわゆるダブルゲートとしているが、単一ゲートで同様の機能を持たせるようにしてもよい。
The
読出ワード線201,202は、メモリセル200のデータを外部から読み出すときに電圧が印加される配線である。読出ワード線201の電圧が印加されるとゲート241とゲート242が開き、読出ワード線202の電圧が印加されるとゲート251とゲート252が開く。
The read word lines 201 and 202 are wirings to which a voltage is applied when data of the
書込ワード線211は、メモリセル200に外部からデータを書き込むときに電圧が印加される配線である。書込ワード線211の電圧が印加されると、ゲート261とゲート262が開く。
The write word line 211 is a wiring to which a voltage is applied when data is written to the
読出データ線221,222は、読出ワード線201と読出ワード線202に所定の電圧が印加され、ゲート241,242,251および252が開いたときに、フリップフロップ271に保持されているデータを読み出すための配線である。なお、読出データ線221からデータ「0」が読み出されたときは読出データ線222からはデータ「1」が読み出され、読出データ線221からデータ「1」が読み出されたときは読出データ線222からはデータ「0」が読み出される、いわゆる差動信号の動作をするようになっている。
Read
書込データ線231,232は、書込ワード線211の電圧が印加され、ゲート261とゲート262が開いたときに、フリップフロップ271にデータを書き込むための配線である。書込データ線231からデータ「0」を書き込むときは書込データ線232からはデータ「1」を書き込み、書込データ線231からデータ「1」を書き込むときは書込データ線232からはデータ「0」を書き込むようになっている。
フリップフロップ271は、上記の意味でのメモリセル200に記憶される「0」か「1」のデータを保持する記憶回路である。The
The flip-flop 271 is a storage circuit that holds “0” or “1” data stored in the
図3は、図1の半導体装置110における内部構造の一部のメモリセルブロックの構成図である(適宜図2参照)。
メモリセルブロック300は、アレイ状に並べて接続された複数のメモリセル200と、読出アドレスデコーダ311,312を含んで構成される。また、前記したように、2重の読出ワード線201,202の読出アドレスデコーダ311,312を左右に備えることで、以下に述べる配線機能を持たせることができる。FIG. 3 is a configuration diagram of a part of the memory cell block in the internal structure of the
The
メモリセルブロック300では、最上段の外側のメモリセル200、すなわち、メモリセル200(Cell31,0)とメモリセル200(Cell31,3)の上側と、最下段の内側のメモリセル200、すなわち、メモリセル200(Cell0,1)とメモリセル200(Cell0,2)の下側において、読出データ線221,222が、他のメモリセルブロック300(不図示)に接続されるように構成されている。
In the
また、メモリセルブロック300では、最上段の内側のメモリセル200、すなわち、メモリセル200(Cell31,1)とメモリセル200(Cell31,2)の上側と、最下段の外側のメモリセル200、すなわち、メモリセル200(Cell0,0)とメモリセル200(Cell0,3)の下側において、読出データ線221,222が切断されている。
In the
すなわち、メモリセルブロック300において、読出データ線は、外側の複数対が上方に、また、内側の複数対が下方に接続されるように構成されている。このようにすることで、メモリセルブロック300の出力(読出し)の規模を必要最小限に抑え、各種データ処理の負担を軽くすることができ、また、複数の方向に複数の出力を行うことができる。
That is, in the
メモリセルブロック300内において、左側には読出アドレスデコーダ311が配置され、アドレス入力線322から複数のアドレス差動信号を受ける。また、メモリセルブロック300内において、右側には読出アドレスデコーダ312が配置され、アドレス入力線323から複数のアドレス差動信号を受ける。
なお、特許請求の範囲における、入力数および出力数の「3つ」あるいは「4つ」というのは、差動信号の場合の「3対」あるいは「4対」という意味に相当する。In
In the claims, “three” or “four” in the number of inputs and outputs corresponds to the meaning of “three pairs” or “four pairs” in the case of differential signals.
メモリセルブロック300では、これらのアドレス入力線322、アドレス入力線323およびセレクト線(特定のアドレス選択線)301からの入力により、符号331から符号362までの複数本の読出ワード線(図2の読出ワード線202に対応)から任意の1本を選択し、その読出ワード線の電圧を印加することができる。
In the
また、セレクト線301にはインバータ302が備えられている。さらに、読出アドレスデコーダ311には複数個の論理回路(アンド(AND)回路やナンド(NAND)回路など)370が備えられている。また、書込ワード線371(図2の書込ワード線211に対応)は、書込アドレスデコーダ411(図5参照)に接続されている。
なお、読出アドレスデコーダ312の論理回路などについても、読出アドレスデコーダ311の場合と同様なので、説明を省略する(たとえば、論理回路380が読出ワード線381に接続されている)。The select line 301 is provided with an inverter 302. Further, the
Note that the logic circuit and the like of the read
図3に示すように、たとえば、セレクト線301から「1」が入力されたときは、メモリセルブロック300におけるメモリセル200の上半分が動作し、セレクト線301から「0」が入力されたときは、メモリセルブロック300におけるメモリセル200の下半分が動作するようになっている。
As shown in FIG. 3, for example, when “1” is input from the select line 301, the upper half of the
したがって、たとえば、メモリセルブロック300におけるメモリセル200の上半分を加算器、メモリセル200の下半分を減算器として動作するように設定しておけば、セレクト線301からの信号を切り替えるだけで、瞬時に、加算器と減算器の切り替えを行うことができる。また、同様にして、それ以外に、加算器と通常の記憶装置との切り替えなども行うことができる。
Therefore, for example, if the upper half of the
以上、メモリセルブロック300の全体および詳細を説明したが、このように、メモリセル200を縦32×横4の構成とすれば、読出データ線221,222(図2参照)を短くすることでセンスアンプを省略することができ、回路を簡素化することができる。
The whole and details of the
図4は、半導体装置110(図1参照)における読出ポート(図3の読出データ線の上下2出力ずつとアドレス入力線322,323からの2入力ずつ)の接続状況を示した図である。また、図4は、半導体装置110を平面視した場合の左上の一部を表わしている。
FIG. 4 is a diagram showing a connection state of the read ports (each of the two upper and lower outputs of the read data line in FIG. 3 and two inputs from the address input lines 322 and 323) in the semiconductor device 110 (see FIG. 1). FIG. 4 illustrates a part of the upper left when the
メモリセルブロック300d〜300lにおいて、入力A0(以下「A0」という:A1〜A3も同様)は表記の簡略のために図3のA0と/A0を合わせたものを示すものとし、A1〜A3についても同様である。
In the
また、メモリセルブロック300d〜300lにおいて、出力D0(以下「D0」という:D1〜D3も同様)は表記の簡略のために図3のメモリセル200(Cell31,0)の読出データ線2つを合わせたものを示すものとし、D1〜D3についても同様である。
メモリセルブロック300d〜300lのA0〜A3およびD0〜D3は、図4に示すように接続される。In the
A0 to A3 and D0 to D3 of
なお、ドライバ回路420は、外部装置から本デバイス(半導体装置110)に入力される信号を差動信号に変換するものである。また、アンプ430は、入力した差動信号を通常の信号に増幅および変換して外部装置に出力するものである。
The
このような配線にすることで、半導体装置110において、データの帰還を容易に行うことができる。具体的には、たとえば、メモリセルブロック300dのD3からメモリセルブロック300gのA1にデータを送る場合、メモリセルブロック300gにおいてA1から入ったデータをD1から出力するようにメモリセルブロック300gに真理値表を書き込んでおけば、そのデータをメモリセルブロック300dのA3に帰還させることができる。
By using such a wiring, the
また、メモリセルブロック300d〜300lに書き込む真理値表を変更するだけで、配線を変更することなく、半導体装置110を様々な論理回路として動作させることができる。
なお、このような配線の折れ曲がりの回数や具合は、特にこの図4に限定されることなく、適宜変更が可能である。Further, the
Note that the number and condition of such wiring bends are not particularly limited to FIG. 4 and can be changed as appropriate.
図5は、半導体装置110(図1参照)の内部構造図である。それぞれのメモリセルブロック300はアレイ状に並べられ、左側に書込アドレスデコーダ411、下側に書込/読出回路401が配置され、そららが図のように接続される。つまり、図5は、図4と同様の半導体装置110において、読出ポートの接続状況以外の様子を示した図である。
FIG. 5 is an internal structure diagram of the semiconductor device 110 (see FIG. 1). Each
書込アドレスデコーダ411は、メモリセルブロック300にデータを書き込む際に、メモリセルブロック300のxアドレス(図5の半導体装置110の縦方向のアドレス)を特定するための装置である。
書込アドレスデコーダ411には、複数のメモリセルブロック300のうちのいずれのメモリセルブロック300かを特定するためのxアドレスが上位アドレス(この場合はA4w以降のA5w,A6w,・・・)に入力され、その特定されたメモリセルブロック300の内部(メモリセル200)を特定するためのxアドレスが下位アドレス(この場合はA0w〜A3w)から入力される。The write address decoder 411 is a device for specifying the x address of the memory cell block 300 (the vertical address of the
In the write address decoder 411, the x address for specifying which one of the plurality of memory cell blocks 300 is an upper address (in this case, A5w, A6w,... After A4w). The x address for specifying the inside (memory cell 200) of the specified
また、書込/読出回路401は、データの読み書きを行うメモリセルブロック300のyアドレスを特定し、さらに、特定されたメモリセルブロック300に対してデータの読み書きを行う装置である。
具体的には、書込/読出回路401には、複数のメモリセルブロック300のうちのいずれかのメモリセルブロック300かを特定するためのyアドレス(図5の半導体装置110の横方向のアドレス)が(この場合はAyw2に)入力され、その特定されたメモリセルブロック300の内部(メモリセル200)を特定するためのyアドレスが(この場合はAyw0,Ayw1に)入力される。また、書込/読出回路401には、入力402から複数のビット数(この場合は4ビット)のデータが入力される。The write /
Specifically, the write /
このようにして、特定のメモリセルブロック300における特定のメモリセル200を適宜選択し、真理値表データの書き換えなどを行うことができる。
すなわち、半導体装置110は、複数のメモリセルブロック300のうち、一部のメモリセルブロック300のメモリセル200が記憶する真理値表データを書き換えられた場合、その書き換えられた真理値表データにしたがって動作を変更できる。In this manner, the
That is, when the truth table data stored in the
続いて、図6〜図9を参照しながら、半導体装置110(図4参照)を3ビット加算器として使用する場合の例について説明する。
図6は、3ビット加算器の構成例である。この図6におけるメモリセルブロック同士の接続は、図4の場合と同じである。Next, an example in which the semiconductor device 110 (see FIG. 4) is used as a 3-bit adder will be described with reference to FIGS.
FIG. 6 is a configuration example of a 3-bit adder. Connections between the memory cell blocks in FIG. 6 are the same as those in FIG.
ここでは、3ビットの2数E,Fを加算し、その結果をYとする場合について説明する。なお、Eの最下位ビットをE0、次のビットをE1、最上位ビットをE2とする。また、Fの最下位ビットをF0、次のビットをF1、最上位ビットをF2とする。さらに、Yの最下位ビットをY0、次のビットをY1、最上位ビットをY2とする。また、最下位ビットの加算による桁上がりをC0、次のビットの加算による桁上がりをC1、最上位のビットの加算による桁上がりをC2とする。また、各々の信号は差動であるが、記載上簡略して記述した。 Here, a case will be described in which 3-bit two numbers E and F are added and the result is Y. The least significant bit of E is E0, the next bit is E1, and the most significant bit is E2. The least significant bit of F is F0, the next bit is F1, and the most significant bit is F2. Further, the least significant bit of Y is Y0, the next bit is Y1, and the most significant bit is Y2. Also, the carry by adding the least significant bit is C0, the carry by adding the next bit is C1, and the carry by adding the most significant bit is C2. Although each signal is differential, it is described in a simplified manner for the sake of description.
メモリセルブロック300dでは、A0からE0が、A1からF0が入力され、加算を行い、D3からY0を出力し、D2からC0を出力する。
メモリセルブロック300eでは、A0からE1が、A1からF1が入力され、また、A3からC0が入力され、加算を行い、D3からY1を出力し、D2からC1を出力する。
メモリセルブロック300fでは、A0からE2が、A1からF2が入力され、また、A3からC1が入力され、加算を行い、D3からY2を出力し、D2からC2を出力する。In the
In the
In the
メモリセルブロック300dのD3から出力されたY0は、図のような経路を経て、メモリセルブロック300jのD3から出力される。
メモリセルブロック300eのD3から出力されたY1は、図のような経路を経て、メモリセルブロック300kのD3から出力される。
メモリセルブロック300fのD3から出力されたY2は、図のような経路を経て、メモリセルブロック300lのD3から出力される。
このようにして、加算結果であるY0、Y1およびY2を得ることができる。Y0 output from D3 of the
Y1 output from D3 of the
Y2 output from D3 of the
In this way, Y0, Y1, and Y2 that are addition results can be obtained.
図7において、(a)はメモリセルブロック300の簡略図、(b)はメモリセルブロック300d、300eおよび300fに格納する真理値表である(適宜図6参照)。
図7(a)に示すように、メモリセルブロック300において、A0〜A3に入力があると、その入力に応じてD0〜D3から真理値表に定義されたデータが出力される。7A is a simplified diagram of the
As shown in FIG. 7A, in the
図7(b)に示すように、A0,A1,A3にE(E0〜E2),F(F0〜F2),Cin(C0〜C2)の入力があると、それら3つの加算結果として、そのビットの値をD3にY(Y0〜Y2)として出力し、桁上がりをD2にCout(C0〜C2)として出力する。 As shown in FIG. 7 (b), if there are inputs E (E0 to E2), F (F0 to F2), and Cin (C0 to C2) in A0, A1 and A3, the three addition results are as follows: The bit value is output to D3 as Y (Y0 to Y2), and the carry is output to D2 as Cout (C0 to C2).
なお、D0とD1は、ここでは使用しないため、すべての場合で「0」を出力するようにしている。
また、上から1段目〜4段目と5段目〜8段目、および、9段目〜12段目と13段目〜16段目は、A2以外の真理値が同じになっているが、これは、A2に「0」と「1」のいずれのデータが入力されても正確な出力結果が得られるようにするためである。Since D0 and D1 are not used here, “0” is output in all cases.
In addition, the truth values other than A2 are the same in the first to fourth stages and the fifth to eighth stages, and the ninth to twelfth stages and the thirteenth to sixteenth stages from the top. However, this is to ensure that an accurate output result can be obtained regardless of whether “0” or “1” is input to A2.
図8において、(a)はメモリセルブロック300の簡略図、(b)はメモリセルブロック300g、300j、300kおよび300lに格納する真理値表である(適宜図6参照)。
図8(a)に示すように、メモリセルブロック300において、A0〜A3に入力があると、その入力に応じてD0〜D3から真理値表に定義されたデータが出力される。8A is a simplified diagram of the
As shown in FIG. 8A, in the
図8(b)に示すように、A1にY(Y0〜Y2)の入力があると、その値をD3にそのまま出力する。
なお、D0〜D2は、ここでは使用しないため、すべての場合で「0」を出力するようにしている。As shown in FIG. 8B, when Y (Y0 to Y2) is input to A1, the value is output to D3 as it is.
Since D0 to D2 are not used here, “0” is output in all cases.
また、実際にはA1からD3へ「0」→「0」、「1」→「1」という2種類(2段分)の真理値表があればよいのであるが、A0、A2、A3に「0」と「1」のいずれのデータが入力されても正確な出力結果が得られるように、16段の真理値表となっている。 Actually, it is only necessary to have two kinds (two levels) of truth tables from A1 to D3, “0” → “0”, “1” → “1”, but A0, A2, A3 It is a 16-level truth table so that an accurate output result can be obtained regardless of whether “0” or “1” data is input.
図9において、(a)はメモリセルブロック300の簡略図、(b)はメモリセルブロック300hおよび300iに格納する真理値表である(適宜図6参照)。
図9(a)に示すように、メモリセルブロック300において、A0〜A3に入力があると、その入力に応じてD0〜D3から真理値表に定義されたデータが出力される。9A is a simplified diagram of the
As shown in FIG. 9A, in the
図9(b)に示すように、A0にC(C0〜C2)の入力があると、その値をD1にそのまま出力する。また、A1にY(Y0〜Y2)の入力があると、その値をD3にそのまま出力する。
なお、D0とD2は、ここでは使用しないため、すべての場合で「0」を出力するようにしている。
また、図8(b)の場合と同様、A2とA3に「0」と「1」のいずれのデータが入力されても正確な出力結果が得られるようになっている。As shown in FIG. 9B, when C (C0 to C2) is input to A0, the value is output to D1 as it is. Also, if Y (Y0-Y2) is input to A1, the value is output to D3 as it is.
Since D0 and D2 are not used here, “0” is output in all cases.
Further, as in the case of FIG. 8B, an accurate output result can be obtained when any data of “0” and “1” is input to A2 and A3.
図10は、図4の半導体装置110の変形例である半導体装置110aにおける読出ポートの接続状況を示した図である。半導体装置110aにおいて、一番左の列のメモリセルブロック300m〜300oと左から3番目の列のメモリセルブロック300s〜300uに比べて、その間の列のメモリセルブロック300p〜300rは、縦方向にメモリセルブロック半個分ずらして配置される。また、それぞれのメモリセルブロックのA0〜A3およびD0〜D3は、図のように接続される。
FIG. 10 is a diagram illustrating a connection state of read ports in a
このように、メモリセルブロックをずらして配置することで、図4の半導体装置110の場合に比べて、それぞれのメモリセルブロックのD0〜D3から他のメモリセルブロックのA0〜A3に入力する配線の長さを短くすることができる。
なお、このような配線の折れ曲がりの回数や具合は、特にこの図10に限定されることなく、適宜変更が可能である。
また、半導体装置110aの内部構成図(図5に対応)は、図11に示す通りである。In this way, by arranging the memory cell blocks so as to be shifted, wirings input from D0 to D3 of each memory cell block to A0 to A3 of other memory cell blocks as compared with the
Note that the number and condition of the bending of the wiring are not particularly limited to FIG. 10 and can be changed as appropriate.
Further, an internal configuration diagram of the
以上説明したように、本実施形態の半導体装置によれば、論理回路として動作することができるメモリにおいて、1つのメモリセルブロックから4つのメモリセルブロックに出力を与えることで、データの帰還を容易に行うことができる。 As described above, according to the semiconductor device of the present embodiment, in a memory that can operate as a logic circuit, data is easily fed back by providing an output from one memory cell block to four memory cell blocks. Can be done.
また、従来のFPGAの製造では、たとえば、C言語プログラムを作成して、それからHDL(Hardware Description Language)を作成する。そのHDLから論理合成を行い、論理回路を作成する。その論理回路から、該当するFPGAに論理の配置と配置配線を行う。つまり、複雑で高度な作業工程が必要であった。
一方、本実施形態の半導体装置は、メモリであり記憶装置であるので、C言語プログラムをコンパイルしてそのデータを真理値として搭載できるため、作業工程が単純で容易となる。また、本実施形態の半導体装置は、記憶装置であるため、異なった論理回路を実現する場合でも、配線はそのままで、メモリセル200に書き込む真理値表データを書き換えるだけで済む。Further, in the manufacture of a conventional FPGA, for example, a C language program is created, and then HDL (Hardware Description Language) is created. Logic synthesis is performed from the HDL to create a logic circuit. From the logic circuit, logic arrangement and arrangement wiring are performed on the corresponding FPGA. In other words, a complicated and sophisticated work process was required.
On the other hand, since the semiconductor device of the present embodiment is a memory and a storage device, a C language program can be compiled and its data can be loaded as a truth value, so that the work process is simple and easy. In addition, since the semiconductor device of this embodiment is a memory device, even when different logic circuits are realized, it is only necessary to rewrite truth table data written in the
これを、図12を参照しながら、より具体的に説明する(適宜図1参照)。図12は、半導体装置に、論理回路として動作させるためのビットデータを搭載するときの処理の流れを示すフローチャートである。 This will be described more specifically with reference to FIG. 12 (see FIG. 1 as appropriate). FIG. 12 is a flowchart showing a flow of processing when bit data for operating as a logic circuit is mounted on a semiconductor device.
まず、情報処理装置100は、実現したい機能を記述したC言語プログラムを入力部101から入力し(ステップS1201)、記憶部102に記憶する。
また、記憶部102には、あらかじめ、各種機能(加算、減算など)のプログラムが記憶されているものとする。First, the information processing apparatus 100 inputs a C language program describing a function to be realized from the input unit 101 (step S1201) and stores it in the
Also, it is assumed that programs for various functions (addition, subtraction, etc.) are stored in the
情報処理装置100の操作者は、記憶部102に記憶されているプログラムのうち必要なものを引用するため、入力部101を用いて宣言文(Include文)を追加する(ステップS1202)。
処理部106は、Include文が追加されたC言語プログラムに基づいて真理値表(図7の真理値表600など)を作成し(ステップS1203)、その真理値表に基づいてビットデータを作成し(ステップS1204)、さらに、通信部105を介して半導体装置110にそのビットデータを搭載する(ステップS1205)。
このように、本実施形態の半導体装置110によれば、半導体装置110を論理回路として動作させるための作業が簡単に済む。The operator of the information processing apparatus 100 adds a declaration sentence (Include sentence) using the
The
Thus, according to the
さらに、本実施形態の半導体装置によれば、実際の論理回路を使用していないので、メモリの一部に故障が発生しても、その箇所の使用を避けるなどしてその対応(救済)を容易に行うことができる。 Furthermore, according to the semiconductor device of the present embodiment, since an actual logic circuit is not used, even if a failure occurs in a part of the memory, the countermeasure (relief) can be taken by avoiding the use of that part. It can be done easily.
また、1つのメモリセルブロックに対するワード線を本実施形態のように32本とすれば、データ(信号)の減衰を抑え、センスアンプの使用を不要とすることができる。しかし、半導体装置の機能を重視するのであれば、読み出しセンスアンプか読み出しデータ線に中間バッファを使用し、ワード線の本数を33本以上としてもよい。 If the number of word lines for one memory cell block is 32 as in this embodiment, the attenuation of data (signal) can be suppressed and the use of a sense amplifier can be eliminated. However, if importance is attached to the function of the semiconductor device, an intermediate buffer may be used for the read sense amplifier or the read data line, and the number of word lines may be 33 or more.
さらに、本実施形態の半導体装置によれば、複数のメモリを使用し、そのうちのいくつかのメモリにテストプログラムを入れることで、他の1つのメモリをテストすることができる。そして、テスト終了後は、テストプログラムを入れたメモリからテストプログラムを消去することで、それらのメモリを通常のメモリとして使用することができる。 Furthermore, according to the semiconductor device of this embodiment, it is possible to test another one memory by using a plurality of memories and putting a test program in some of them. Then, after the test is completed, by deleting the test program from the memory in which the test program is stored, these memories can be used as a normal memory.
また、メモリを内蔵するシステムLSIで、そのメモリを本実施形態の半導体装置の構造にして自己テストし、かつ、その部分にC言語で記述されるテストプログラムを記述してテスト論理回路を構成することで、システムLSIにおける他の論理回路をテストすることができる。 Further, a system LSI having a built-in memory performs self-test with the memory as the structure of the semiconductor device of the present embodiment, and configures a test logic circuit by writing a test program written in C language in that portion. Thus, other logic circuits in the system LSI can be tested.
さらに、メモリセルブロック同士の接続は、1つのメモリセルブロックが他の4つのメモリセルブロックと接続される場合に限らず、データの帰還を行えるような、他の3つ以上のメモリセルブロックと接続される他の構成であってもよい。
さらに、読出データ線を差動にしているが、半導体レイアウトや読出アドレスデコーダの論理回路を考慮し、片側の読出データ線だけで配線するようにしてもよい。Further, the connection between the memory cell blocks is not limited to the case where one memory cell block is connected to the other four memory cell blocks, and other three or more memory cell blocks that can perform data feedback. Other configurations may be connected.
Further, although the read data line is differential, wiring may be performed with only one read data line in consideration of the semiconductor layout and the logic circuit of the read address decoder.
次に、図13〜図15を参照しながら、連続的に動作させることができる構成の半導体装置について説明する。図13は、そのような構成の半導体装置の概要図である。
図13に示した半導体装置110bは、図4〜図6の半導体装置110と同様、メモリセルブロック300をアレイ状に配置した構成をしており、図4等よりも簡略化して記載したものである。図4等の半導体装置110との違いは、最右列のメモリセルブロック300からの出力G1〜G8を一時的に保持するためのラッチ回路Lと、それらのラッチ回路Lで保持した出力を最左列のメモリセルブロック300に帰還させるための配線1301〜1308を備えている点である。Next, a semiconductor device having a structure that can be operated continuously will be described with reference to FIGS. FIG. 13 is a schematic diagram of a semiconductor device having such a configuration.
The
図14は、大規模メモリと図13に示した半導体装置110bの構成を示した概要図である。
大規模メモリ1400は、C言語プログラムなどを記録した記録装置であり、たとえば、ROMによって実現することができる。
半導体装置110bは、大規模メモリ1400からのC言語プログラムの真理値表データ(図7の真理値表600等参照)の書き込みと、その真理値表データによる演算とその出力(演算結果)の帰還とを、繰り返し行うが、その詳細については図15を参照しながら以下で説明する(適宜図13,14参照)。FIG. 14 is a schematic diagram showing the configuration of the large-scale memory and the
The large-
The
図15は、半導体装置110bにおける動作の流れを示すフローチャートである。
まず、大規模メモリ1400の真理値表データが半導体装置110bに書き込まれる(ステップS1501)。ここで、大規模メモリ1400の真理値表データは、図3で説明したように、半導体装置110bのそれぞれのメモリセルブロック300における上半分または下半分に書き込まれる。FIG. 15 is a flowchart showing an operation flow in the
First, truth table data of the large-
そして、次に行う演算(各メモリセルブロック300による真理値表データに基づいた演算)が最後でない場合(ステップS1503でNo)、つまり、半導体装置110bが、大規模メモリ1400におけるC言語プログラムによって次の演算以降にもまだ演算する必要があるとき、ステップS1505以降の処理に進む。
If the next operation (operation based on the truth table data by each memory cell block 300) is not the last (No in step S1503), that is, the
ステップS1505において、半導体装置110bの各メモリセルブロック300におけるこれから演算を行う半分とは逆(残り)の半分(上半分または下半分)に、大規模メモリ1400から真理値表データが書き込まれる。
また、ステップS1505の処理と並行して、ステップS1507〜S1511の処理が行われる。In step S1505, the truth table data is written from the large-
In parallel with the process in step S1505, the processes in steps S1507 to S1511 are performed.
つまり、半導体装置110bでは、図13の最左列の各メモリセルブロック300に値(1回目の演算では大規模メモリ1400から与えられた値。2回目以降の演算ではラッチ回路Lから帰還された値)が入力され(ステップS1507)、ステップS1501で真理値表データを書き込まれた各メモリセルブロック300の上半分または下半分を使って演算を行い(ステップS1509)、図13の最右列の各メモリセルブロック300から演算した値を出力し(ステップS1511)、ステップS1503に戻る。
That is, in the
ステップS1503で、次に行う演算が最後である場合(Yes)、つまり、半導体装置110bが、大規模メモリ1400におけるC言語プログラムによって次の演算以降に演算する必要がないとき、ステップS1513〜S1517において、ステップS1507〜S1511と同様の処理を行い、その出力を演算結果として所定の装置(不図示)に送り、処理を終了する。
In step S1503, when the next operation to be performed is the last (Yes), that is, when the
このように、図13の半導体装置110bによれば、各メモリセルブロック300における上半分または下半分(その切り替えは図3のセレクト線301による)のメモリセル200での演算、それと並行して行う演算を行っていない半分(各メモリセルブロック300における上半分または下半分)の真理値表データの書き換え、および、出力(演算結果)の帰還を行うことにより、連続的に演算を行うことができ、大規模メモリ1400に記録されているC言語プログラム全体を連続的に動作することができる。
As described above, according to the
次に、図16を参照しながら、出力(演算結果)の帰還を行うことにより連続的に動作することができる半導体装置の変形例について説明する。図16は、その変形例の半導体装置の概略図である。
図16の半導体装置110cは、図13の半導体装置110bとほぼ同様の構成であるが、図13の半導体装置110bが最右列のメモリセルブロック300からの出力を最左列のメモリセルブロック300に入力して帰還をかけていたのに比べ、最右列のメモリセルブロック300からの出力を最上行のメモリセルブロック300に入力して帰還をかけ、最下行のメモリセルブロック300からの出力を最左列のメモリセルブロック300に入力して帰還をかけている点で異なっている。これにより、図13の場合と比較して、論理回路段数の自由度を上げることができる。Next, a modification of the semiconductor device that can operate continuously by performing feedback of the output (calculation result) will be described with reference to FIG. FIG. 16 is a schematic view of a semiconductor device according to the modification.
The
このようにして、演算の種類(加算、乗算など)などに応じ、出力に関して好適な帰還経路を選択し、採用することができる。
また、特に図示していないが、図13の半導体装置110bや図16と半導体装置110cと同様に、半導体装置110において、最下行のメモリセルブロック300からの出力を最上行のメモリセルブロック300に入力して帰還をかけるようにしてもよい。In this way, a feedback path suitable for output can be selected and adopted according to the type of operation (addition, multiplication, etc.).
Although not particularly illustrated, the output from the
次に、図17を参照しながら、フレキシブル基板を用いた半導体装置について説明する。図17は、フレキシブル基板を用いた半導体装置の構成図である。
半導体装置110dの基板を構成するフレキシブル基板FLは、ペンタセン(ベンゼン5個がオルト縮合した有機分子)などを材料とする可撓性のある有機半導体を材料とするものである。
半導体装置110dは、図13の半導体装置110bにおける最右列の各メモリセルブロック300と最左列の各メモリセルブロック300との距離を短縮するべく円柱形にしたものであり、接続部1700をまたいで、半導体装置110bの場合と同様に、出力の帰還を行うことができる。Next, a semiconductor device using a flexible substrate will be described with reference to FIG. FIG. 17 is a configuration diagram of a semiconductor device using a flexible substrate.
The flexible substrate FL constituting the substrate of the
The
続いて、図18を参照しながら、ワイヤボンディングにより出力の帰還を行う半導体装置について説明する。図18は、その場合の半導体装置などの全体構成図である。
図18に示すように、基板Bの両側に、半導体装置110e,110f、大規模メモリ1400e,1400fが取り付けられている。また、信号伝送用のワイヤW1〜W4が、図のように接続されている。Next, a semiconductor device that performs output feedback by wire bonding will be described with reference to FIG. FIG. 18 is an overall configuration diagram of the semiconductor device and the like in that case.
As shown in FIG. 18,
このような構成により、大規模メモリ1400eから半導体装置110eへワイヤW4によって真理値表データを書き込んだり、大規模メモリ1400fから半導体装置110fへワイヤW3によって真理値表データを書き込んだり、さらに、半導体装置110eと半導体装置110fの間でワイヤW1とワイヤW2によって出力の帰還を行ったりすることができる。
With such a configuration, the truth table data is written from the
次に、図19を参照しながら、半導体装置をテスタに使用した場合について説明する。図19は、テスタなどの構成図である。なお、テスタ1900は、テスト対象LSI1910(他の半導体装置)の動作確認を行う装置である。
テスタ1900は、大規模メモリ1400(記憶装置)、半導体装置110、ドライバ1901、コンパレータ1902および処理部1903を備えて構成される。Next, a case where a semiconductor device is used for a tester will be described with reference to FIG. FIG. 19 is a configuration diagram of a tester and the like. The tester 1900 is a device for confirming the operation of the test target LSI 1910 (another semiconductor device).
The tester 1900 includes a large-scale memory 1400 (storage device), a
ドライバ1901は、半導体装置110から予定入力値を受信するとテスト対象LSI1910に対してそれに基づいた信号を送信する駆動回路である。
コンパレータ1902は、半導体装置110からの予定入力値と、テスト対象LSI1910からの出力値とを比較するものである。
処理部1903は、コンパレータ1902からの出力を受け、処理を行う装置であり、たとえば、CPU(Central Processing Unit)によって実現される。The
The
The
また、特に図示しないが、テスタ1900は、直流電源、タイミングジェネレータなどを、必要に応じて備えるものとする。
このようにして、テスタ1900に半導体装置110を適用することができる。Although not particularly illustrated, the tester 1900 includes a DC power supply, a timing generator, and the like as necessary.
In this manner, the
続いて、図20を参照しながら、図3の論理回路370の具体的構成について説明する。図20において、(a)は通常のCMOSの構成図、(b)はCMOSを分離した場合の構成図、(c)は通常のCMOSを使用したナンド回路の構成図、(d)は本願のナンド回路の構成図である。
Next, a specific configuration of the
図20(a)に示すように、通常のCMOS2000は、P−MOS2001とN−MOS2002を1つずつ備えて構成されている。
一方、図20(b)の分離CMOS2010は、通常のCMOS2000と比べ、P−MOS2011とN−MOS2012の右側(出力部分)が分離されている点で相違している。As shown in FIG. 20A, a
On the other hand, the
また、図3の論理回路370(ナンド回路など)は、たとえば、通常のCMOS2000のN−MOS部分を用いて、図20(c)のように構成することができる。A,BおよびCは、入力接点であり、また、P−MOS2021,2031および2041とN−MOS2022,2032および2042が、図のように接続される。
Also, the logic circuit 370 (NAND circuit, etc.) in FIG. 3 can be configured as shown in FIG. A, B and C are input contacts, and the P-
一方、図3の論理回路370(ナンド回路)は、本願では、たとえば、分離CMOS2010を用いて、図20(d)のように構成することができる。A,BおよびCは、入力接点であり、また、N−MOS2052,2062および2072が、図のように接続される。
On the other hand, the logic circuit 370 (NAND circuit) in FIG. 3 can be configured as shown in FIG. A, B, and C are input contacts, and N-
このようにして、図3の論理回路370(ナンド回路)を図20(d)のように構成することで、トランジスタ(P−MOS,N−MOS)の個数を、図20(c)の場合に比べて、半分にすることができ、それにより、1つのメモリセルブロック300あたりの面積や体積などを小さくすることができる。
In this manner, the logic circuit 370 (NAND circuit) in FIG. 3 is configured as shown in FIG. 20D, so that the number of transistors (P-MOS, N-MOS) can be set as shown in FIG. Compared to the above, the area can be reduced to half, and the area and volume per
次に、図21を参照しながら、磁界接続によって半導体装置の出力の帰還を行う場合について説明する。図21は、磁界接続を行う場合の半導体装置などの構成図である。
図21に示すように、ケース2100の内部に、半導体装置110h,110i,・・・がそれぞれ基板Bを挟んで配置されている。Next, a case where feedback of the output of the semiconductor device is performed by magnetic field connection will be described with reference to FIG. FIG. 21 is a configuration diagram of a semiconductor device or the like when performing magnetic field connection.
As shown in FIG. 21, semiconductor devices 110h, 110i,... Are arranged inside a
また、半導体装置110h,110iの左右には、コイルやトランジスタなどで構成された磁界検知部2101,2111と磁界発生部2102,2112が設けられている。そして、磁界発生部2102で発生した磁界を磁界検知部2111が受け、磁界発生部2112で発生した磁界を磁界検知部2101が受けることで、半導体装置110h,110iの間で出力の帰還を行うことができる。
In addition, on the left and right sides of the semiconductor devices 110h and 110i, magnetic
このように、磁界発生部と磁界検知部とによる磁界接続を用いることで、配線による手間やスペースの問題に煩わされることなく、半導体装置110における出力の帰還を行うことができる。
As described above, by using the magnetic field connection between the magnetic field generation unit and the magnetic field detection unit, feedback of the output in the
以上で実施形態の説明を終えるが、本発明の態様はこれらに限定されるものではない。
たとえば、本発明の半導体装置は、SRAMに代えて、DRAM(Dynamic Random Access Memory)やフラッシュメモリを用いて実現してもよい。
また、メモリでの性能向上のためのプリチャージ機能等の機能搭載を制限するものではない。
その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。This is the end of the description of the embodiments, but the aspects of the present invention are not limited to these.
For example, the semiconductor device of the present invention may be realized using a DRAM (Dynamic Random Access Memory) or a flash memory instead of the SRAM.
Further, it does not limit the mounting of functions such as a precharge function for improving performance in the memory.
In addition, it can change suitably in the range which does not deviate from the meaning of this invention.
Claims (11)
それぞれの前記メモリセルブロックは、入力数および出力数が3つ以上であり、内部に前記メモリセルに対する2つの読出アドレスデコーダを備え、所定のアドレス入力に対して所望の論理値を出力するための真理値表データを前記メモリセルに記憶し、論理回路として動作するように構成され、
前記メモリセルは、前記2つの読出アドレスデコーダに対応して2本の読出ワード線を有しており、その2本の読出ワード線の両方の電圧が印加された場合に、そのとき保持しているデータが読出データ線から読み出され、
前記メモリセルブロック同士は、1つのメモリセルブロックからの3つ以上の出力が3つ以上の他のメモリセルブロックへ入力されるように接続されており、
前記メモリセルブロックは、
アレイ状に配置され、そのうち、最右列、最左列、最上行および最下行のいずれかのそれぞれの前記メモリセルブロックからの出力を、他のいずれかのそれぞれの前記メモリセルブロックへ入力するための配線を設け、データの帰還を行い、さらに、
動作する前記メモリセルのエリアが2分されており、
前記読出アドレスデコーダにおける特定のアドレス選択線が切り替えられたときに、前記動作するメモリセルのエリアが切り替えられ、2種類の論理回路としての動作、あるいは、論理回路としての動作と通常の記憶装置としての動作、のいずれかが瞬時に切り替わり、
2分された前記メモリセルのエリアのうち、
一方のエリアが論理回路として動作しているときに、他方のエリアがその次の演算のための真理値表データを書き込まれ、
前記特定のアドレス選択線を切り替えることで、その他方のエリアによる演算を行い、この真理値表データの書き込みと前記特定のアドレス選択線を切り替えによって、連続して演算を行い、
前記メモリセルブロックのメモリセルが前記真理値表データを記憶していないときは、通常の記憶装置として動作する
ことを特徴とする半導体装置。A semiconductor device having a plurality of memory cell blocks each including a plurality of memory cells for storing a predetermined amount of data,
Each of the memory cell blocks has three or more inputs and outputs, and internally includes two read address decoders for the memory cells for outputting a desired logical value for a predetermined address input. Storing truth table data in the memory cell, and configured to operate as a logic circuit;
The memory cell has two read word lines corresponding to the two read address decoders. When both voltages of the two read word lines are applied, the memory cell holds at that time. Data is read from the read data line,
The memory cell blocks are connected such that three or more outputs from one memory cell block are input to three or more other memory cell blocks;
The memory cell block includes:
Arranged in the form of an array, the output from each of the memory cell blocks in the rightmost column, the leftmost column, the uppermost row and the lowermost row is input to any one of the other memory cell blocks. Wiring is provided, data is returned, and
The area of the memory cell that operates is divided into two parts,
When a specific address selection line in the read address decoder is switched, the area of the memory cell to be operated is switched to operate as two types of logic circuits, or as a logic circuit and a normal storage device. Any one of the
Of the memory cell area divided in two,
When one area is operating as a logic circuit, the other area is written with truth table data for the next operation,
By switching the specific address selection line, the calculation is performed by the other area, and the calculation is continuously performed by writing the truth table data and switching the specific address selection line.
When the memory cell of the memory cell block does not store the truth table data, the semiconductor device operates as a normal storage device.
前記メモリセルブロック同士は、1つのメモリセルブロックからの4つの出力が4つの他のメモリセルブロックへ入力されるように接続されている
ことを特徴とする請求項1に記載の半導体装置。The memory cell block has four inputs and four outputs,
The semiconductor device according to claim 1 , wherein the memory cell blocks are connected such that four outputs from one memory cell block are input to four other memory cell blocks.
複数の前記メモリセルブロックと接続され、複数のメモリセルブロックおよびその内部の前記メモリセルに関するxアドレスを指定する書込アドレスデコーダと、
複数の前記メモリセルブロックと接続され、複数のメモリセルブロックおよびその内部の前記メモリセルに関するyアドレスを指定し、前記メモリセルに対してデータの書き込みを行う書込/読出回路と、を備え、
前記メモリセルは、前記書込アドレスデコーダと前記書込/読出回路によって指定された場合、前記書込/読出回路によってデータが書き込まれる
ことを特徴とする半導体装置。The semiconductor device according to claim 1 , further comprising:
A write address decoder connected to a plurality of the memory cell blocks and designating an x address for the plurality of memory cell blocks and the memory cells therein;
A write / read circuit connected to the plurality of memory cell blocks, designating a plurality of memory cell blocks and y-addresses related to the memory cells therein, and writing data to the memory cells;
When the memory cell is designated by the write address decoder and the write / read circuit, data is written by the write / read circuit.
その書き換えられた真理値表データにしたがって動作を変更することを特徴とする請求項1に記載の半導体装置。When the truth table data stored in the memory cells of some of the memory cell blocks among the plurality of the memory cell blocks is rewritten,
2. The semiconductor device according to claim 1 , wherein the operation is changed in accordance with the rewritten truth table data.
自己テストし、かつ、前記システムLSIにおける他の論理回路をテストすることを特徴とする半導体装置。The semiconductor device according to claim 1 constituting a system LSI,
A semiconductor device characterized by self-testing and testing another logic circuit in the system LSI.
その複数の論理回路に使用されているトランジスタはN−MOSであることを特徴とする請求項1に記載の半導体装置。The read address decoder has a plurality of logic circuits,
2. The semiconductor device according to claim 1 , wherein the transistors used in the plurality of logic circuits are N-MOS.
それぞれの前記半導体装置は、磁界を発生させる磁界発生部と、磁界を検知する磁界検知部と、を有し、
いずれかの前記半導体装置の前記メモリセルブロックからの出力に基づいて磁界発生部により磁界を発生させ、他のいずれかの前記半導体装置の前記磁界検知部によってその磁界を検知することによりデータの帰還を行うことを特徴とする半導体装置。 A plurality of the semiconductor devices according to claim 1 are provided,
Each of the semiconductor devices includes a magnetic field generation unit that generates a magnetic field, and a magnetic field detection unit that detects the magnetic field,
Data feedback is performed by generating a magnetic field by a magnetic field generation unit based on an output from the memory cell block of any one of the semiconductor devices, and detecting the magnetic field by the magnetic field detection unit of any other semiconductor device. A semiconductor device comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007546356A JP5032996B2 (en) | 2005-11-28 | 2006-07-06 | Semiconductor device |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JPPCT/JP2005/021758 | 2005-11-28 | ||
PCT/JP2005/021758 WO2007060738A1 (en) | 2005-11-28 | 2005-11-28 | Semiconductor device |
JP2007546356A JP5032996B2 (en) | 2005-11-28 | 2006-07-06 | Semiconductor device |
PCT/JP2006/313502 WO2007060763A1 (en) | 2005-11-28 | 2006-07-06 | Semiconductor device |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2007060763A1 JPWO2007060763A1 (en) | 2009-05-07 |
JP5032996B2 true JP5032996B2 (en) | 2012-09-26 |
Family
ID=47016661
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007546356A Expired - Fee Related JP5032996B2 (en) | 2005-11-28 | 2006-07-06 | Semiconductor device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5032996B2 (en) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000138579A (en) * | 1998-10-30 | 2000-05-16 | Nec Corp | Basic cell and basic cell two-dimensional array for programmable logic lsi |
JP2001325800A (en) * | 2000-03-10 | 2001-11-22 | Hitachi Ltd | Semiconductor integrated circuit device and manufacturing method |
JP2003149300A (en) * | 2001-11-16 | 2003-05-21 | Hitachi Ltd | Test method and semiconductor device |
JP2003224468A (en) * | 2002-01-31 | 2003-08-08 | Hitachi Ltd | Semiconductor integrated circuit, its manufacturing method, and testing method |
WO2005109646A1 (en) * | 2004-05-12 | 2005-11-17 | National University Corporation Okayama University | Integrated circuit having multidimensional switch topology |
-
2006
- 2006-07-06 JP JP2007546356A patent/JP5032996B2/en not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000138579A (en) * | 1998-10-30 | 2000-05-16 | Nec Corp | Basic cell and basic cell two-dimensional array for programmable logic lsi |
JP2001325800A (en) * | 2000-03-10 | 2001-11-22 | Hitachi Ltd | Semiconductor integrated circuit device and manufacturing method |
JP2003149300A (en) * | 2001-11-16 | 2003-05-21 | Hitachi Ltd | Test method and semiconductor device |
JP2003224468A (en) * | 2002-01-31 | 2003-08-08 | Hitachi Ltd | Semiconductor integrated circuit, its manufacturing method, and testing method |
WO2005109646A1 (en) * | 2004-05-12 | 2005-11-17 | National University Corporation Okayama University | Integrated circuit having multidimensional switch topology |
Also Published As
Publication number | Publication date |
---|---|
JPWO2007060763A1 (en) | 2009-05-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4703655B2 (en) | Semiconductor device | |
US8185851B2 (en) | Memory building blocks and memory design using automatic design tools | |
TWI704572B (en) | Memory input/output, memory input/output method, and memory device | |
JP2012059830A (en) | Semiconductor memory device | |
US11437982B2 (en) | Flip flop standard cell | |
CN106611622A (en) | Multi-port memory, semiconductor device, and memory macro-cell | |
TW202207228A (en) | Memory device and memory cell | |
JP5081240B2 (en) | Semiconductor device | |
US7746722B2 (en) | Metal programmable self-timed memories | |
JP5032996B2 (en) | Semiconductor device | |
Barth et al. | A 500-MHz multi-banked compilable DRAM macro with direct write and programmable pipelining | |
TWI357212B (en) | ||
KR101884190B1 (en) | Memory with multiple write ports | |
JP2011134380A (en) | Nonvolatile semiconductor memory device | |
JP2007179605A (en) | Semiconductor storage | |
JP4187714B2 (en) | Semiconductor memory layout method and semiconductor memory | |
JP2006268905A (en) | Semiconductor storage circuit, configuration method of semiconductor storage circuit and layout creation method of semiconductor storage circuit | |
JP2001195877A (en) | Semiconductor integrated device | |
JP2008124052A (en) | Semiconductor storage |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090617 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110705 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110901 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20111213 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120306 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20120313 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20120611 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120629 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5032996 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150706 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |