JP2005038510A - Semiconductor integrated circuit, device and method for designing circuit, recording medium, and program - Google Patents
Semiconductor integrated circuit, device and method for designing circuit, recording medium, and program Download PDFInfo
- Publication number
- JP2005038510A JP2005038510A JP2003274462A JP2003274462A JP2005038510A JP 2005038510 A JP2005038510 A JP 2005038510A JP 2003274462 A JP2003274462 A JP 2003274462A JP 2003274462 A JP2003274462 A JP 2003274462A JP 2005038510 A JP2005038510 A JP 2005038510A
- Authority
- JP
- Japan
- Prior art keywords
- data
- bit line
- column
- circuit
- cell
- 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
Links
Images
Landscapes
- Read Only Memory (AREA)
- Semiconductor Memories (AREA)
Abstract
Description
本発明は、半導体集積回路、回路設計装置および方法、記録媒体、並びにプログラムに関し、特に、ROM回路を低電圧で動作させることができるようにした半導体集積回路、回路設計装置および方法、記録媒体、並びにプログラムに関する。 The present invention relates to a semiconductor integrated circuit, a circuit design apparatus and method, a recording medium, and a program, and in particular, a semiconductor integrated circuit, a circuit design apparatus and method, a recording medium, and a ROM circuit that can operate at a low voltage. And the program.
従来の半導体メモリにおいては、低電圧動作を行う場合、非選択のメモリセルからのリーク電流の影響を受けやすい傾向がある。そこで、特許文献1には、低電圧動作を行う場合に、サブビット線とメインビット線とを有することにより、非選択のメモリセルのリーク電流の影響を受けにくくなるようにした半導体メモリが提案されている。
In a conventional semiconductor memory, when performing a low voltage operation, there is a tendency to be easily affected by a leakage current from a non-selected memory cell. Therefore,
ところで、半導体メモリのうち、不揮発性メモリのマスクROM(Read Only Memory)回路は、設計されたプログラムデータをマスクデータとして用いて、ウエハ工程中にプログラムを行うことにより生成される。このROM回路を設計する際に、例えば、コンタクトホールプログラム方式が用いられた場合、例えば、ビット線上にコンタクトホールがあれば、そのメモリセルは、「0」を記憶し、ビット線上にコンタクトホールがないときには、そのメモリセルは、「1」を記憶する。 By the way, a mask ROM (Read Only Memory) circuit of a nonvolatile memory among semiconductor memories is generated by performing a program during a wafer process using designed program data as mask data. When designing this ROM circuit, for example, when the contact hole programming method is used, for example, if there is a contact hole on the bit line, the memory cell stores “0”, and the contact hole is on the bit line. If not, the memory cell stores “1”.
図1は、コンタクトホールプログラム方式による従来のROM回路1の構成例を示す。図1の例においては、縦方向の信号線は、ビット線であり、図中左からカラムC0,C1,C2,…の順に並び、横方向の信号線は、ワード線であり、図中上からローアドレスw0,w1,w2,…,wnの順に並んでいる。
FIG. 1 shows a configuration example of a
ビット線上において、各ローアドレスのワード線と交差する位置には、データを記憶するメモリセルが縦、横に多数並んで配置され、メモリアレーを構成している。なお、図1の場合、説明の便宜上、範囲Aに示されるカラムC0のビット線上のローアドレスw0のメモリセルと、カラムC1のビット線上のローアドレスw0のメモリセルしか記載されていないが、実際には、各ビット線上の各ローアドレスには、範囲Aと同様に、メモリセルが多数配置されている。また、上述したように、ROM回路1は、コンタクトホールプログラム方式が用いられているので、「0」(図中黒丸)のデータを記憶するカラムC0のビット線上のローアドレスw0のメモリセルは、ビット線上にコンタクトホールを有しており、「1」(図中白丸)のデータを記憶するカラムC1のビット線上のローアドレスw0のメモリセルは、ビット線上にコンタクトホールを有していない。
On the bit line, a large number of memory cells for storing data are arranged in rows and columns at positions that intersect the word line of each row address to constitute a memory array. In the case of FIG. 1, for convenience of explanation, only the memory cell of the row address w0 on the bit line of the column C0 and the memory cell of the row address w0 on the bit line of the column C1 shown in the range A are shown. In each row address on each bit line, as in the range A, a large number of memory cells are arranged. Further, as described above, since the
ROM回路1は、ビット線を4カラム(4ビット)毎にまとめた複数個のカラム回路11−1,11−2,11−3,11−4,…(以下、これらを個々に区別する必要がない場合、単にカラム回路11と称する)で構成される。カラム回路11の左側には、カラム回路11に配置されるメモリセルアレーを制御するための制御回路であるローデコーダ21およびカラムデコーダ22、並びに図示せぬプリデコーダおよびコントロール回路が配置されている。
The
ROM回路1において、ワード線は、横一列に並んだメモリセルのコントロール用のトランジスタのゲートを接続した信号で、ローデコーダ21の制御により、ロー方向のメモリセルを選択し、そのメモリセルのデータをビット線上に読み出す。ローデコーダ21は、ローアドレス分のNANDゲートおよびインバータにより構成され、図示せぬコントロール回路から、プリデコーダを介して入力されるローアドレス信号rに基づいて、メモリセルアレーの中の多数のワード線の中から1本のワード線を選択する。これにより、選択されたワード線に対応するデータがビット線に読み出される。
In the
ビット線は、ワード線により読み出されたメモリセルのデータが伝達される信号線である。ビット線は、メモリセルアレーの縦一列に並んだメモリセルのドレイン端子を接続した信号で、メモリセルアレーの下部に配置され、ビット線からのデータを読み出す制御を行うセンスアンプ、カラムセレクタおよびプリチャージ回路などに接続される。 The bit line is a signal line through which data of the memory cell read by the word line is transmitted. A bit line is a signal that connects the drain terminals of memory cells arranged in a vertical row in the memory cell array, and is arranged at the lower part of the memory cell array. The bit line controls the reading of data from the bit line, a column selector, and a preamplifier. Connected to a charge circuit or the like.
図1の例においては、カラム回路11−1は、カラムC0乃至C4のビット線からのデータを増幅し、出力するセンスアンプ23−1、カラムデコーダ22の制御に基づいて、オンオフを行うことで、接続されるカラムのビット線からのデータの読み出しを制御するカラムセレクタ24−1乃至24−4、および、プリチャージを行うプリチャージ回路25−1により構成される。
In the example of FIG. 1, the column circuit 11-1 amplifies data from the bit lines of the columns C0 to C4 and turns on / off based on the control of the sense amplifier 23-1 and the
カラムデコーダ22は、カラム回路11のビット線分のNANDゲートおよびインバータなどにより構成され、コントロール回路からの指示に基づいて、カラムセレクト信号s0乃至s3を出力することにより、各カラムセレクタを制御し、カラム回路11内の4本のビット線の中から、1本のビット線を選択させる。
The
カラムセレクタ24−1は、カラムデコーダ22から入力されるカラムセレクト信号s0に基づいて、オンオフ状態を切り替え、カラムC0のビット線のデータの読み出しを制御する。具体的には、カラムセレクタ24−1は、pMOS(pチャネルMetal Oxide Semiconductor)とnMOS(nチャネルMetal Oxide Semiconductor)からなるCMOS(Complementary Metal Oxide Semiconductor)回路により構成されている(なお、図1において、○が付加されている端子がpMOSである)。カラムデコーダ22のNANDゲートから出力されたカラムセレクト信号s0は、2つに分岐され、一方がインバータにより反転される。そして、カラムセレクタ24−1のnMOSには、インバータにより反転されたカラムセレクト信号s0が入力され、それと同時に、pMOSには、カラムセレクト信号s0が同時に入力されることにより、pMOSとnMOSが同時にオン状態になり、カラムセレクタ24−1は、カラムC0のビット線のデータを、センスアンプ23−1に出力することができる。
The column selector 24-1 switches the on / off state based on the column select signal s0 input from the
同様に、カラムセレクタ24−2は、カラムデコーダ22から入力されるカラムセレクト信号s1に基づいて、オンオフ状態を切り替え、カラムC1のビット線のデータの読み出しを制御する。カラムセレクタ24−3は、カラムデコーダ22から入力されるカラムセレクト信号s2に基づいて、オンオフ状態を切り替え、カラムC2のビット線のデータの読み出しを制御する。カラムセレクタ24−4は、カラムデコーダ22から入力されるカラムセレクト信号s3に基づいて、オンオフ状態を切り替え、カラムC3のビット線のデータの読み出しを制御する。
Similarly, the column selector 24-2 switches the on / off state based on the column select signal s1 input from the
センスアンプ23−1は、カラムセレクタ24−1乃至24−4のいずれかから入力される、カラムのビット線のデータの微小な電位の変化を感知し、その変化を高速に増幅し、図示せぬ後段へ出力する。プリチャージ回路25−1は、ROM回路1の読み出し動作を行うときに、コントロール回路からのプリチャージ信号p1に基づいて、すべてのビット線をある一定電圧にするプリチャージを行う。
The sense amplifier 23-1 senses a minute change in potential of the bit line data of the column input from any of the column selectors 24-1 to 24-4, amplifies the change at a high speed, and is not shown. Output to the subsequent stage. When the read operation of the
カラム回路11−2は、カラムC4乃至C7のビット線からデータを読み出すセンスアンプ23−2、カラムデコーダ22の制御に基づいて、接続されるカラムのビット線からのデータを読み出すオンオフを切り替えるカラムセレクタ24−5乃至24−8、および、プリチャージを行うプリチャージ回路25−2により構成される。なお、カラム回路11−2乃至11−4は、カラム回路11−1と基本的に同様の構成であり、その説明は繰り返しになるので省略する。また、以降、センスアンプ23−1および23−2、カラムセレクタ24−1乃至24−8、並びにプリチャージ回路25−1および25−2を個々に区別する必要がない場合、単にセンスアンプ23、カラムセレクタ24並びにプリチャージ回路25と称する。
The column circuit 11-2 is a column selector that switches on / off reading data from the bit line of the connected column based on the control of the sense amplifier 23-2 and the
以上のように、ROM回路1においては、まず、プリチャージ回路25によりある一定の電圧にプリチャージされ、その後、カラムデコーダ22からのカラムセレクト信号に基づいて、カラムセレクタ24がオン状態になったカラムのビット線より、ローデコーダ21によりローアドレス信号rに基づいて選択されたローアドレスのメモリセルから読み出されたデータが、センスアンプ23を介して、後段に出力される。以上のようにして、ROM回路1のメモリセルアレーのデータが読み出される。
As described above, in the
次に、図2を参照して、ROM回路1のメモリセルに記憶されるデータを詳しく説明する。図2は、図1に示される範囲Aを拡大したメモリセルの構成例を示す。
Next, data stored in the memory cell of the
カラムC0のビット線上のローアドレスw0のメモリセルは、ソース端子31−1、ゲート端子32−1およびドレイン端子33−1を有し、カラムC1のビット線上のローアドレスw0のメモリセルは、ソース端子31−2、ゲート端子32−2およびドレイン端子33−2を有している。 The memory cell at row address w0 on the bit line of column C0 has a source terminal 31-1, a gate terminal 32-1, and a drain terminal 33-1, and the memory cell at row address w0 on the bit line of column C1 is the source. It has a terminal 31-2, a gate terminal 32-2, and a drain terminal 33-2.
カラムC0のビット線上のローアドレスw0のメモリセルにおいて、ソース端子31−1は、接地されており、ゲート端子32−1は、アドレスw0のワード線に接続されている。そして、ドレイン端子33−1は、コンタクトホール41によりカラムC0のビット線に接続されている。これにより、カラムC0のビット線上のローアドレスw0のメモリセルには、「0」が記憶される。
In the memory cell of the row address w0 on the bit line of the column C0, the source terminal 31-1 is grounded, and the gate terminal 32-1 is connected to the word line of the address w0. The drain terminal 33-1 is connected to the bit line of the column C0 through the
一方、カラムC1のビット線上のローアドレスw0のメモリセルにおいて、ソース端子31−2は、接地されており、ゲート端子32−2は、アドレスw0のワード線に接続されている。そして、ドレイン端子33−2は、カラムC1のビット線に接続されていない。したがって、カラムC1のビット線上のローアドレスw0のメモリセルには、「1」が記憶される。 On the other hand, in the memory cell at the row address w0 on the bit line of the column C1, the source terminal 31-2 is grounded, and the gate terminal 32-2 is connected to the word line at the address w0. The drain terminal 33-2 is not connected to the bit line of the column C1. Therefore, “1” is stored in the memory cell of the row address w0 on the bit line of the column C1.
以上のように、ROM回路1においては、コンタクトホールの有無により、各メモリセルにデータが記憶される。したがって、ROM回路1においては、ビット線上に「1」のデータのメモリセルが多い場合、ビット線上のコンタクトホールの数は少ないが、ビット線上に「0」のデータのメモリセルが多い場合には、ビット線上にコンタクトホールが多数存在することになる。
以上のように構成されるROM回路1において、上述したように、ビット線上に「0」を記憶するメモリセルが多数存在した場合、すなわち、ビット線上にコンタクトホールが多数ある場合、そのビット線上の任意のメモリセルの「1」を読み出そうとしても、「0」を記憶している他のメモリセルのドレイン端子からのリーク電流によりプリチャージレベルの電位が低下して、「0」と誤読み出しされる恐れがあるため、低電圧動作が不可能である課題があった。
In the
また、ビット線上に「0」を記憶するメモリセルが多数存在した場合、すなわち、ビット線上にコンタクトホールが多数ある場合には、ビット線上のドレイン容量が大きくなり、プリチャージ時の電流が多大になってしまい、消費電力が大きくなる課題があった。 In addition, when there are many memory cells that store “0” on the bit line, that is, when there are many contact holes on the bit line, the drain capacitance on the bit line becomes large, and the current during precharging becomes large. As a result, there is a problem that power consumption increases.
本発明は、このような状況に鑑みてなされたものであり、ROM回路を低電圧で動作させることができるようにするものである。 The present invention has been made in view of such a situation, and enables a ROM circuit to operate at a low voltage.
本発明の半導体集積回路は、回路は、ビット線上の所定のメモリセルのデータを反転して出力するための反転用セルを有することを特徴とする。 The semiconductor integrated circuit according to the present invention is characterized in that the circuit has an inverting cell for inverting and outputting data of a predetermined memory cell on the bit line.
本発明の回路設計装置は、ビット線上のメモリセルのデータの数と並びを解析する解析手段と、解析手段による解析結果に基づいて、データの反転方法を設定する反転方法設定手段と、反転方法設定手段により設定されたデータの反転方法に基づいて、ビット線上の所定のメモリセルのデータを反転して出力するための反転用セルを生成するセル生成手段と、セル生成手段により生成された反転用セルに基づいて、回路を設計する設計手段とを備えることを特徴とする。 The circuit design apparatus of the present invention includes an analysis unit that analyzes the number and arrangement of data in memory cells on a bit line, an inversion method setting unit that sets a data inversion method based on an analysis result by the analysis unit, and an inversion method Based on the data inversion method set by the setting means, cell generation means for generating an inversion cell for inverting and outputting data of a predetermined memory cell on the bit line, and inversion generated by the cell generation means And a design means for designing a circuit based on the working cell.
反転方法設定手段は、ビット線上のすべてのメモリセルのデータを反転するようにデータの反転方法を設定するようにすることができる。 The inversion method setting means can set the data inversion method so as to invert the data of all the memory cells on the bit line.
反転方法設定手段は、複数のビット線のうち、所定のビット線上のすべてのメモリセルのデータを反転するようにデータの反転方法を設定するようにすることができる。 The inversion method setting means can set the data inversion method so as to invert the data of all the memory cells on the predetermined bit line among the plurality of bit lines.
反転方法設定手段は、複数のビット線上のうち、所定のビット線上の所定のメモリセルのデータを反転するようにデータの反転方法を設定するようにすることができる。 The inversion method setting means can set a data inversion method so as to invert data of a predetermined memory cell on a predetermined bit line among a plurality of bit lines.
本発明の回路設計方法は、ビット線上のメモリセルのデータの数と並びを解析する解析ステップと、解析ステップの処理による解析結果に基づいて、データの反転方法を設定する反転方法設定ステップと、反転方法設定ステップの処理により設定されたデータの反転方法に基づいて、ビット線上の所定のメモリセルのデータを反転して出力するための反転用セルを生成するセル生成ステップと、セル生成ステップの処理により生成された反転用セルに基づいて、回路を設計する設計ステップとを含むことを特徴とする。 The circuit design method of the present invention includes an analysis step for analyzing the number and arrangement of data in memory cells on a bit line, an inversion method setting step for setting a data inversion method based on an analysis result by the processing of the analysis step, A cell generation step for generating an inversion cell for inverting and outputting data of a predetermined memory cell on the bit line based on the data inversion method set by the inversion method setting step; And a design step of designing a circuit based on the inversion cell generated by the processing.
本発明の記録媒体に記録されるプログラムは、ビット線上のメモリセルのデータの数と並びを解析する解析ステップと、解析ステップの処理による解析結果に基づいて、データの反転方法を設定する反転方法設定ステップと、反転方法設定ステップの処理により設定されたデータの反転方法に基づいて、ビット線上の所定のメモリセルのデータを反転して出力するための反転用セルを生成するセル生成ステップと、セル生成ステップの処理により生成された反転用セルに基づいて、回路を設計する設計ステップとを含むことを特徴とする。 The program recorded on the recording medium of the present invention includes an analysis step for analyzing the number and arrangement of data in memory cells on a bit line, and an inversion method for setting a data inversion method based on an analysis result of the analysis step processing A cell generation step for generating an inversion cell for inverting and outputting data of a predetermined memory cell on the bit line based on the setting step and the data inversion method set by the inversion method setting step; And a design step of designing a circuit based on the cell for inversion generated by the processing of the cell generation step.
本発明のプログラムは、ビット線上のメモリセルのデータの数と並びを解析する解析ステップと、解析ステップの処理による解析結果に基づいて、データの反転方法を設定する反転方法設定ステップと、反転方法設定ステップの処理により設定されたデータの反転方法に基づいて、ビット線上の所定のメモリセルのデータを反転して出力するための反転用セルを生成するセル生成ステップと、セル生成ステップの処理により生成された反転用セルに基づいて、回路を設計する設計ステップとを含むことを特徴とする。 The program of the present invention includes an analysis step for analyzing the number and arrangement of data in memory cells on a bit line, an inversion method setting step for setting a data inversion method based on an analysis result by the processing of the analysis step, and an inversion method A cell generation step for generating an inversion cell for inverting and outputting data of a predetermined memory cell on the bit line based on the data inversion method set by the setting step processing, and the cell generation step processing And a design step of designing a circuit based on the generated inversion cell.
第1の本発明においては、回路は、ビット線上の所定のメモリセルのデータを反転して出力するための反転用セルを有する。 In the first aspect of the present invention, the circuit has an inversion cell for inverting and outputting data of a predetermined memory cell on the bit line.
第2の本発明においては、ビット線上のメモリセルのデータの数と並びが解析され、解析結果に基づいて、データの反転方法が設定される。設定されたデータの反転方法に基づいて、ビット線上の所定のメモリセルのデータを反転して出力するための反転用セルが生成され、生成された反転用セルに基づいて、回路が設計される。 In the second aspect of the present invention, the number and arrangement of data in the memory cells on the bit line are analyzed, and a data inversion method is set based on the analysis result. An inversion cell for inverting and outputting data of a predetermined memory cell on the bit line is generated based on the set data inversion method, and a circuit is designed based on the generated inversion cell. .
本発明によれば、ROM回路を低電圧で動作させることができる。また、本発明によれば、ROM回路の消費電力が低減される。 According to the present invention, the ROM circuit can be operated at a low voltage. Further, according to the present invention, the power consumption of the ROM circuit is reduced.
以下に本発明を実施するための最良の形態を説明するが、請求項に記載の構成要件と、発明を実施するための最良の形態における具体例との対応関係を例示すると、次のようになる。この記載は、請求項に記載されている発明をサポートする具体例が、発明を実施するための最良の形態に記載されていることを確認するためのものである。従って、発明を実施するための最良の形態中には記載されているが、構成要件に対応するものとして、ここには記載されていない具体例があったとしても、そのことは、その具体例が、その構成要件に対応するものではないことを意味するものではない。逆に、具体例が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その具体例が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。 BEST MODE FOR CARRYING OUT THE INVENTION The best mode for carrying out the present invention will be described below. Correspondences between constituent elements described in the claims and specific examples in the best mode for carrying out the invention are illustrated as follows. Become. This description is intended to confirm that the specific examples supporting the invention described in the claims are described in the best mode for carrying out the invention. Accordingly, even if there are specific examples that are described in the best mode for carrying out the invention but are not described here as corresponding to the constituent elements, the specific examples are not included. However, this does not mean that it does not correspond to the configuration requirements. On the contrary, even if a specific example is described here as corresponding to a configuration requirement, this means that the specific example does not correspond to a configuration requirement other than the configuration requirement. not.
さらに、この記載は、発明を実施するための最良の形態に記載されている具体例に対応する発明が、請求項に全て記載されていることを意味するものではない。換言すれば、この記載は、発明を実施するための最良の形態に記載されている具体例に対応する発明であって、この出願の請求項には記載されていない発明の存在、すなわち、将来、分割出願されたり、補正により追加される発明の存在を否定するものではない。 Further, this description does not mean that the invention corresponding to the specific example described in the best mode for carrying out the invention is all described in the claims. In other words, this description is an invention corresponding to the specific example described in the best mode for carrying out the invention, and is the existence of an invention not described in the claims of this application, that is, in the future. This does not deny the existence of an invention that has been filed for division or added by amendment.
請求項1に記載の半導体集積回路は、ビット線上に、データを記憶するメモリセルが配置される回路(例えば、図12のROM回路201)を有する半導体集積回路であって、回路は、ビット線上の所定のメモリセルのデータを反転して出力するための反転用セル(例えば、図3の反転パス用リーフセル75としての、図7の通常パス121、反転パス122、インバータ111および選択用セル123)を有することを特徴とする。
The semiconductor integrated circuit according to
請求項2に記載の回路設計装置は、ビット線上に、データを記憶するメモリセルが配置される回路(例えば、図12のROM回路201)を設計する回路設計装置(例えば、図3の回路設計装置51)において、ビット線上のメモリセルのデータの数と並びを解析する解析手段(例えば、図3のデータ解析部62)と、解析手段による解析結果に基づいて、データの反転方法を設定する反転方法設定手段(例えば、図3の反転方法設定部63)と、反転方法設定手段により設定されたデータの反転方法に基づいて、ビット線上の所定のメモリセルのデータを反転して出力するための反転用セル(例えば、図3の反転パス用リーフセル75)を生成するセル生成手段(例えば、図3の論理設計部64)と、セル生成手段により生成された反転用セルに基づいて、回路を設計する設計手段(例えば、図3のROM生成部66)とを備えることを特徴とする。
The circuit design apparatus according to
本発明の回路設計方法は、ビット線上に、データを記憶するメモリセルが配置される回路(例えば、図12のROM回路201)を設計する回路設計方法において、ビット線上のメモリセルのデータの数と並びを解析する解析ステップ(例えば、図11のステップS1)と、解析ステップの処理による解析結果に基づいて、データの反転方法を設定する反転方法設定ステップ(例えば、図11のステップS2)と、反転方法設定ステップの処理により設定されたデータの反転方法に基づいて、ビット線上の所定のメモリセルのデータを反転して出力するための反転用セルを生成するセル生成ステップ(例えば、図11のステップS3)と、セル生成ステップの処理により生成された反転用セルに基づいて、回路を設計する設計ステップ(例えば、図11のステップS5)とを含むことを特徴とする。
The circuit design method of the present invention is a circuit design method for designing a circuit (for example, the
なお、本発明の記録媒体およびプログラムも上述した本発明の回路設計方法と基本的に同様の構成であるため、繰り返しになるのでその説明は省略する。 Since the recording medium and program of the present invention have basically the same configuration as the circuit design method of the present invention described above, the description thereof is omitted because it is repeated.
以下、図を参照して本発明の実施の形態について説明する。 Hereinafter, embodiments of the present invention will be described with reference to the drawings.
図3は、本発明を適用した回路設計装置51の構成例を表している。図3の例の場合、回路設計装置51は、コンタクトホールプログラム方式によるROM回路を設計する装置である。回路設計装置51は、入力部61、データ解析部62、反転方法設定部63、論理設計部64、記憶部65、およびROM生成部66により構成される。
FIG. 3 shows a configuration example of a
入力部61は、ユーザ(設計者)の操作に基づいて、ROMのビット数、ワード数、ROMデータなどが記述されたパラメータファイル71を入力する。データ解析部62は、入力部61からのパラメータファイル71に基づいて、ビット線上のメモリセルのデータの数と並びを解析し、その解析結果を、反転方法設定部63に出力する。反転方法設定部63は、データ解析部62により解析された解析結果に基づいて、ビット線のメモリセルのデータをすべて反転するか、所定のビット線を選択して、所定のビット線のメモリセルのデータを反転するか、または、所定のビット線の所定のメモリセルのデータだけを反転するかなどのデータの反転方法を設定する。
The
記憶部65には、PLA(Programmable Logic Array)用リーフセル72およびROMリーフセル73が、ユーザ(設計者)により予め入力され、登録されている。セルとは、トランジスタからなるインバータ、NANDゲート、NORゲートまたはフリップフロップなどの、LSI(Large Scale Integrated Circuit)を構成する素子のことである。
In the
論理設計部64は、反転方法設定部63により設定されたデータ反転方法に基づいて、PLA(Programmable Logic Array)を用いて、所定のデータを反転して出力するための論理回路を実現する。具体的には、論理設計部64は、記憶部65のPLA用リーフセル72を用いて、タイリング(組み合わせ)を行い、所定のメモリセルのデータを反転して出力するような論理を組み、反転パス用リーフセル75を生成する。また、このとき、論理設計部64は、どのビット線のどのメモリセルのデータを反転するかというデータ反転情報74をROM生成部66に出力する。論理設計部64は、生成された反転パス用リーフセル75およびデータ反転情報74をROM生成部66に出力する。
Based on the data inversion method set by the inversion method setting unit 63, the
ROM生成部66は、パラメータファイル71、記憶部65のROMリーフセル73、論理設計部64からのデータ反転情報74および反転パス用リーフセル75に基づいて、ROM回路設計データ76を生成し、生成されたROM回路設計データ76を、図示せぬ後段の装置に出力する。出力されたROM回路設計データ76は、後段のウエハ工程でマスクデータとして使用され、ROM回路がプログラミングされる。
The
次に、図4および図5を参照して、反転方法設定部63によるデータ反転方法について説明する。なお、図4においては、回路設計装置51により設計された図5のカラム回路と比較するために従来のカラム回路を説明する。
Next, a data inversion method by the inversion method setting unit 63 will be described with reference to FIGS. In FIG. 4, a conventional column circuit will be described for comparison with the column circuit of FIG. 5 designed by the
図4は、図1の従来のカラム回路11の他の構成例を示す。なお、図4においては、図1における場合と対応する部分には対応する符号を付してあり、その説明は繰り返しになるので省略する。また、図4においては、カラムセレクト信号線の一部、プリチャージ信号線、およびプリチャージ回路は省略されている。
FIG. 4 shows another configuration example of the
図4の例においては、カラム回路11は、カラムC0乃至C3のビット線上のローアドレスw0乃至w23に配置されるメモリセルアレー、カラムC0乃至C3のビット線上のデータの出力を制御するカラムセレクタ24−1乃至24−4、並びにセンスアンプ23により構成される。なお、カラムセレクタ24−1乃至24−4の左側に記述されている「s0」、「s1」、「s2」および「s3」は、カラムデコーダ22からカラムセレクト信号s0乃至s3がカラムセレクタ24−1乃至24−4に入力されることを示している。
In the example of FIG. 4, the
カラムC0乃至C3のビット線においては、ほとんどすべてのローアドレスのメモリセルに対して「0」(図中黒丸)が書き込まれている。すなわち、カラムC0乃至C3のビット線においては、最上位ローアドレスw0のメモリセルには、「1」(図中白丸)が書き込まれ、最上位ローアドレスw0のメモリセルを除いたすべてのローアドレスw1乃至w23のメモリセルには、「0」が書き込まれている。すなわち、カラムC0乃至C3のビット線上には、コンタクトホールが多数存在する。 In the bit lines of the columns C0 to C3, “0” (black circle in the figure) is written in almost all memory cells of the row address. That is, in the bit lines of columns C0 to C3, “1” (white circle in the figure) is written in the memory cell at the highest row address w0, and all row addresses except the memory cell at the highest row address w0 are written. “0” is written in the memory cells w1 to w23. That is, many contact holes exist on the bit lines of the columns C0 to C3.
また、カラムC0乃至C3のビット線上には、ローデコーダ21により所定のローアドレスのメモリセルのデータが読み出されている。
Further, the data of the memory cell at a predetermined row address is read out by the
カラムセレクタ24−1は、カラムデコーダ22からカラムセレクト信号s0が入力されると、オン状態になり、カラムC0のビット線のデータをセンスアンプ23に出力する。カラムセレクタ24−2は、カラムデコーダ22からカラムセレクト信号s1が入力されると、オン状態になり、カラムC1のビット線のデータをセンスアンプ23に出力する。カラムセレクタ24−3は、カラムデコーダ22からカラムセレクト信号s2が入力されると、オン状態になり、カラムC2のビット線のデータをセンスアンプ23に出力する。カラムセレクタ24−4は、カラムデコーダ22からカラムセレクト信号s3が入力されると、オン状態になり、カラムC3のビット線のデータをセンスアンプ23に出力する。
When the column selector 24-1 receives the column select signal s 0 from the
センスアンプ23は、カラムセレクタ24−1乃至24−4のいずれかを介して入力されるビット線のデータの微小な電位の変化を感知し、その変化を高速に増幅し、後段の装置に出力する。 The sense amplifier 23 senses a minute change in potential of bit line data input via any of the column selectors 24-1 to 24-4, amplifies the change at high speed, and outputs it to a subsequent device. To do.
以上のように設計されたカラム回路11においては、コンタクトホールがカラムC0乃至C3のビット線上の多くのローアドレス(ローアドレスw1乃至w23)に存在するため、上述したように、すべてのカラムのビット線上に負荷がかかる。
In the
そこで、図4のように構成されるカラム回路11からなるROM回路を設計するためのパラメータファイル71が与えられると、回路設計装置51は、所定のメモリセルのデータを反転して出力するための反転パス用リーフセル75を有するカラム回路101からなるROM回路を設計する。
Therefore, when a parameter file 71 for designing a ROM circuit composed of the
図5は、回路設計装置51により設計されたカラム回路101の構成例を示す。なお、図5においては、図4における場合と対応する部分には対応する符号を付してあり、その説明は繰り返しになるので省略する。
FIG. 5 shows a configuration example of the
図5の例においては、カラム回路101は、カラムC0乃至C3のビット線上のローアドレスw0乃至w23に配置されるメモリセルアレー、カラムC0乃至C3のビット線上のデータの出力を制御するカラムセレクタ24−1乃至24−4、センスアンプ23、並びに、カラムC0乃至C3のビット線上の所定のメモリセルのデータ(いまの場合、全てのデータ)を反転させるインバータ111により構成される。すなわち、図5の例の場合、反転パス用リーフセル75として、インバータ111が配置されている。
In the example of FIG. 5, the
図5のカラムC0乃至C3のビット線においては、ほとんどすべてのローアドレスのメモリセルに対して、パラメータファイル71(図4のカラム回路11)のデータ「0」を反転した「1」が書き込まれている。すなわち、カラムC0乃至C3のビット線においては、最上位ローアドレスw0のメモリセルには、パラメータファイル71のデータ「1」を反転した「0」が書き込まれ、最上位ローアドレスw0のメモリセルを除いたすべてのローアドレスw1乃至w23のメモリセルには、パラメータファイル71のデータ「0」を反転した「1」が書き込まれている。
In the bit lines of the columns C0 to C3 in FIG. 5, “1” obtained by inverting the data “0” of the parameter file 71 (
インバータ111は、センスアンプ23の後段に配置され、センスアンプ23からの出力を反転させ、図示せぬ後段に出力する。
The
したがって、カラム回路101において、各メモリセルに、パラメータファイル71のデータを反転したデータが書き込まれても、センスアンプ23の後段に、反転パス用リーフセル75として、インバータ111を配置することにより、センスアンプ23からの出力を、図4のカラム回路11のセンスアンプからの出力と同じにすることができる。
Therefore, in the
以上のように、パラメータファイル71において、ビット線上のほぼすべてのローアドレスのメモリセルが「0」の場合には、センスアンプの後段に、反転パス用リーフセル75として、インバータ111を配置することにより、センスアンプからの出力を反転できるので、図5に示されるように、各ビット線上のほとんどすべてのローアドレスのメモリセルに「1」を記憶させることができる。これにより、ビット線上のコンタクトホールの数が減少するため、ビット線における負荷が削減される。
As described above, in the parameter file 71, when almost all the memory cells of the row address on the bit line are “0”, the
次に、図6および図7を参照して、反転方法設定部63によるデータ反転方法の他の例について説明する。なお、図6においては、回路設計装置51により設計された図7のカラム回路と比較するために従来のカラム回路を説明する。
Next, another example of the data inversion method performed by the inversion method setting unit 63 will be described with reference to FIGS. In FIG. 6, a conventional column circuit will be described for comparison with the column circuit of FIG. 7 designed by the
図6は、図4の従来のカラム回路11の他の構成例を示す。なお、図6においては、図4における場合と対応する部分には対応する符号を付してあり、その説明は繰り返しになるので省略する。
FIG. 6 shows another configuration example of the
図6の例においては、カラムC0およびC2においては、最上位のローアドレスw0のメモリセルには、「0」が書き込まれており、最上位のローアドレスw0のメモリセルを除いたすべてのローアドレスw1乃至w23のメモリセルに「1」が書き込まれている。また、カラムC1およびC3においては、最下位のローアドレスw23のメモリセルには、「1」が書き込まれており、最下位のローアドレスw23のメモリセルを除いたすべてのローアドレスw0乃至w22のメモリセルに「0」が書き込まれている。 In the example of FIG. 6, in columns C0 and C2, “0” is written in the memory cell at the highest row address w0, and all the rows except the memory cell at the highest row address w0 are written. “1” is written in the memory cells at the addresses w1 to w23. In the columns C1 and C3, “1” is written in the memory cell at the lowest row address w23, and all the row addresses w0 to w22 except the memory cell at the lowest row address w23 are written. “0” is written in the memory cell.
以上のように設計されたカラム回路11においては、コンタクトホールが、カラムC1およびC3のビット線上のローアドレス(w0乃至w22)に数多く存在するため、上述したように、カラムC1およびC3のビット線上に負荷がかかる。
In the
そこで、図6のように構成されるカラム回路11からなるROM回路を設計するためのパラメータファイル71が与えられると、回路設計装置51は、所定のメモリセルのデータを反転して出力するための反転パス用リーフセル75を有するカラム回路101からなるROM回路を設計する。
Therefore, when a parameter file 71 for designing a ROM circuit composed of the
図7は、回路設計装置51により設計されたカラム回路101の他の構成例を示す。なお、図7においては、図5における場合と対応する部分には対応する符号を付してあり、その説明は繰り返しになるので省略する。
FIG. 7 shows another configuration example of the
図7の例においては、センスアンプ23の後段には、反転パス用リーフセル75として、図5のカラム回路101のインバータ111の代わりに、カラムC0およびC2のビット線上の所定のメモリセルのデータを反転させない通常パス121、インバータ111を有し、カラムC1およびC3のビット線上の所定のメモリセルのデータを反転させる反転パス122、並びに、カラムデコーダ22からのカラムセレクト信号s0乃至s3に基づいて、通常パス121および反転パス122が切り替えられるように構成(論理構成)された選択用セル123が配置されている。すなわち、図7の例の場合、反転パス用リーフセル75は、インバータ111、通常パス121、反転パス122および選択用セル123により構成される。
In the example of FIG. 7, the data of predetermined memory cells on the bit lines of the columns C0 and C2 are provided as the inverting
図7のカラムC0およびC2のビット線において、最上位のローアドレスw0のメモリセルには、パラメータファイル71(図6のカラム回路11)のデータ「0」が書き込まれ、最上位のローアドレスw0のメモリセルを除いたすべてのローアドレスw1乃至w23のメモリセルには、パラメータファイル71のデータ「1」が書き込まれている。一方、カラムC1およびC3のビット線において、ローアドレスw0乃至w22のメモリセルには、パラメータファイル71のデータ「0」を反転した「1」が書き込まれ、最下位のローアドレスw23のメモリセルには、パラメータファイル71のデータ「1」を反転した「0」が書き込まれている。
In the bit lines of the columns C0 and C2 in FIG. 7, data “0” of the parameter file 71 (
選択用セル123は、通常パス121からのデータを出力するためのORゲート141、インバータ142およびセレクタ143と、インバータ111を有する反転パス122からのデータを出力するためのORゲート144、インバータ145、およびセレクタ146により構成される。
The
ORゲート141は、カラムデコーダ22からのカラムセレクト信号s0またはs2の少なくともどちらかが入力された場合に、通常パスの選択信号を生成し、生成された通常パスの選択信号をセレクタ143に出力する。セレクタ143は、カラムセレクタ24と同様に、pMOS(pチャネルMetal Oxide Semiconductor)とnMOS(nチャネルMetal Oxide Semiconductor)からなるCMOS(Complementary Metal Oxide Semiconductor)回路により構成されている(なお、図7において、○が付加されている端子がpMOSである)。ORゲート141から出力された通常パスの選択信号は、2つに分岐され、一方がインバータ142により反転される。そして、セレクタ143のpMOSには、インバータ142より反転された通常パスの選択信号が入力され、それと同時に、セレクタ143のnMOSには、ORゲート141からの通常パスの選択信号が入力される。これにより、pMOSとnMOSが同時にオン状態になり、セレクタ143は、センスアンプ23から通常パス121を介して入力されるデータを、後段の装置に出力することができる。
The OR
したがって、カラム回路101においては、カラムデコーダ22からのカラムセレクト信号s0が、カラムセレクタ24−1および選択用セル123に入力された場合、カラムセレクタ24−1およびセレクタ143がオン状態になるので、カラムC0のビット線上のデータ(すなわち、ローデコーダ21によりカラムC0のビット線上に読み出されているデータ)は、カラムセレクタ24−1、センスアンプ23、通常パス121、およびセレクタ143を介して、後段の装置に出力される。同様にして、カラムデコーダ22からのカラムセレクト信号s2が、カラムセレクタ24−3および選択用セル123に入力された場合、カラムセレクタ24−3およびセレクタ143がオン状態になるので、カラムC2のビット線上のデータは、カラムセレクタ24−3、センスアンプ23、通常パス121、およびセレクタ143を介して、後段の装置に出力される。
Therefore, in the
一方、ORゲート144は、カラムデコーダ22からのカラムセレクト信号s1またはs3の少なくともどちらかが入力された場合に、反転パスの選択信号を生成し、生成された反転パスの選択信号をセレクタ146に出力する。セレクタ146は、セレクタ143と同様に、pMOSとnMOSからなるCMOS回路により構成されている。ORゲート144から出力された通常パスの選択信号は、2つに分岐され、一方がインバータ145により反転される。そして、セレクタ146のpMOSには、インバータ145より反転された反転パスの選択信号が入力され、セレクタ146のnMOSには、ORゲート144からの反転パスの選択信号が同時に入力される。これにより、pMOSとnMOSが同時にオン状態になり、セレクタ146は、センスアンプ23から反転パス122およびインバータ111を介して入力されるデータを、後段の装置に出力することができる。
On the other hand, the
したがって、カラム回路101においては、カラムデコーダ22からのカラムセレクト信号s1が、カラムセレクタ24−2および選択用セル123に入力された場合、カラムセレクタ24−2およびセレクタ146がオン状態になるので、カラムC1のビット線上のデータは、カラムセレクタ24−2、センスアンプ23、インバータ111、反転パス122、およびセレクタ146を介して、後段の装置に反転して出力される。同様にして、カラムデコーダ22からのカラムセレクト信号s3が、カラムセレクタ24−4および選択用セル123に入力された場合、カラムセレクタ24−4およびセレクタ146がオン状態になるので、カラムC3のビット線上のデータは、カラムセレクタ24−4、センスアンプ23、インバータ111、反転パス122、およびセレクタ146を介して、後段の装置に反転して出力される。
Therefore, in the
以上のように、カラム回路101において、ビット線のうちの所定のビット線上のメモリセルに、パラメータファイル71のデータを反転したデータが書き込まれても、センスアンプ23の後段に、反転パス用リーフセル75として、通常パス121、インバータ111を有する反転パス122、並びに、通常パス121および反転パス122がカラムデコーダ22からのカラムセレクト信号s0乃至s3により切り替えられるように(論理)構成された選択用セル123を配置することにより、センスアンプ23からのビット線上のデータの出力を、図6のカラム回路11のセンスアンプ23からの出力と同じにすることができる。
As described above, in the
すなわち、所定のビット線上のほぼすべてのローアドレスのメモリセルが「0」の場合には、センスアンプの後段に、反転パス用リーフセル75として、通常パス121、インバータ111を有する反転パス122並びに選択用セル123を配置することにより、センスアンプからの出力を、反転パス122を介したものだけ反転させることができるので、図7に示されるように、所定のビット線上のほとんどすべてのアドレスに「1」を記憶させることができる。これにより、ビット線上のコンタクトホールの数が減少するため、ビット線における負荷が削減される。
That is, when almost all row address memory cells on a predetermined bit line are “0”, the
なお、図7の範囲Bに示されるORゲート141を、図8に示されるように、ORゲート151およびインバータ152により構成するようにすることもできる。
Note that the
図8は、図7の選択用パス123の範囲Bの他の構成例を示す。図8の例においては、ORゲート151は、カラムデコーダ22からのカラムセレクト信号s1またはs3のどちらかが入力された場合に、反転パスの選択信号(すなわち、反転されている通常パスの選択信号)を生成し、生成された反転パスの選択信号をインバータ152に出力する。インバータ152は、ORゲート151からの反転パスの選択信号を、反転し、通常パスの選択信号として、セレクタ143に出力する。これにより、セレクタ143のpMOSには、インバータ142より反転された通常パスの選択信号が入力され、それと同時に、セレクタ143のnMOSには、インバータ152からの通常パスの選択信号が入力される。これにより、pMOSとnMOSが同時にオン状態になり、セレクタ143は、センスアンプ23から通常パス121を介して入力されるデータを、後段の装置に出力することができる。
FIG. 8 shows another configuration example of the range B of the
すなわち、図8においては、図7のORゲート144に入力され、反転パス選択信号が生成されるもとになるカラムセレクト信号s1またはs3に基づいて、通常パス選択信号が生成される。
That is, in FIG. 8, the normal path selection signal is generated based on the column select signal s1 or s3 that is input to the
以上のように、通常パス選択信号を、反転パス選択信号から生成するようにしてもよい。また、逆に、反転パス選択信号を、通常パス選択信号から生成するようにしてもよい。 As described above, the normal path selection signal may be generated from the inverted path selection signal. Conversely, the inverted path selection signal may be generated from the normal path selection signal.
次に、図9および図10を参照して、反転方法設定部63によるデータ反転方法のさらに他の例について説明する。なお、図9においては、回路設計装置51により設計された図10のカラム回路と比較するために従来のカラム回路を説明する。
Next, still another example of the data inversion method by the inversion method setting unit 63 will be described with reference to FIGS. 9 and 10. In FIG. 9, a conventional column circuit will be described for comparison with the column circuit of FIG. 10 designed by the
また、図9および図10において、図中右側の「x2」、図中左側の「x8」および「x9」は、図示せぬコントロール回路から選択用セル123に入力されるローアドレス信号を示している。具体的には、「x2=1」は、ローアドレスw0,w2,w4,w6,w8,w10,w12,w14,w16,w18,w20,およびw22を指定するためのローアドレス信号を表しており、「x2=0」は、ローアドレスw1,w3,w5,w7,w9,w11,w13,w15,w17,w19,w21,およびw23を指定するためのローアドレス信号を表している。
9 and 10, “x2” on the right side of the drawing and “x8” and “x9” on the left side of the drawing indicate row address signals input to the
さらに、「x8=1」は、ローアドレスw0乃至w5並びにローアドレスw12乃至w17を指定するためのローアドレス信号を表しており、「x8=0」は、ローアドレスw6乃至w11並びにローアドレスw18乃至w23を指定するためのローアドレス信号を表しており、「x9=1」は、ローアドレスw0乃至w11を指定するためのローアドレス信号を表しており、「x9=0」は、ローアドレスw12乃至w23を指定するためのローアドレス信号を表している。なお、実際には、ローアドレス信号は、2のべき乗の本数のワード線に対応するように設定されるが、図9および図10の例の場合、説明の便宜上、ローアドレス信号「x8=0」と「x8=1」は、それぞれ6本のワード線に対応し、また、ローアドレス信号「x9=0」と「x9=1」は、それぞれ12本のワード線に対応するようにして説明する。 Further, “x8 = 1” represents a row address signal for designating the row addresses w0 to w5 and the row addresses w12 to w17, and “x8 = 0” represents the row addresses w6 to w11 and the row addresses w18 to w18. A row address signal for designating w23 is represented, “x9 = 1” represents a row address signal for designating row addresses w0 to w11, and “x9 = 0” represents a row address w12 to w12. A row address signal for designating w23 is shown. In practice, the row address signal is set so as to correspond to the number of power lines of 2 but in the case of the examples of FIGS. 9 and 10, for convenience of explanation, the row address signal “x8 = 0” is set. ”And“ x8 = 1 ”correspond to 6 word lines, respectively, and row address signals“ x9 = 0 ”and“ x9 = 1 ”correspond to 12 word lines, respectively. To do.
図9は、図4の従来のカラム回路11のさらに他の構成例を示す。なお、図9においては、図4における場合と対応する部分には対応する符号を付してあり、その説明は繰り返しになるので省略する。
FIG. 9 shows still another configuration example of the
図9の例においては、カラムC0のビット線においては、ローアドレスw0乃至w11のメモリセルには、「0」が書き込まれており、ローアドレスw12乃至w23のメモリセルには、「1」が書き込まれている。カラムC1のビット線においては、ローアドレスw0乃至w11のメモリセルには、「1」が書き込まれており、ローアドレスw12乃至w23のメモリセルには、「0」が書き込まれている。 In the example of FIG. 9, in the bit line of the column C0, “0” is written in the memory cells of the row addresses w0 to w11, and “1” is written in the memory cells of the row addresses w12 to w23. Has been written. In the bit line of the column C1, “1” is written in the memory cells of the row addresses w0 to w11, and “0” is written in the memory cells of the row addresses w12 to w23.
カラムC2のビット線においては、ローアドレスw0乃至w5のメモリセルには、「0」が書き込まれており、ローアドレスw6乃至w17のメモリセルには、「1」が書き込まれており、ローアドレスw18乃至w23のメモリセルには、「0」が書き込まれている。カラムC3のビット線においては、ローアドレスw0,w2,w4,w6,w8,w10,w12,w14,w16,w18,w20,およびw22のメモリセルには、「0」が書き込まれており、ローアドレスw1,w3,w5,w7,w9,w11,w13,w15,w17,w19,w21,およびw23のメモリセルには、「1」が書き込まれている。 In the bit line of the column C2, “0” is written in the memory cells of the row addresses w0 to w5, and “1” is written in the memory cells of the row addresses w6 to w17. “0” is written in the memory cells w18 to w23. In the bit line of the column C3, “0” is written in the memory cells at the row addresses w0, w2, w4, w6, w8, w10, w12, w14, w16, w18, w20, and w22. “1” is written in the memory cells at the addresses w1, w3, w5, w7, w9, w11, w13, w15, w17, w19, w21, and w23.
以上のように設計されたカラム回路11においては、カラムC0乃至C3のビット線に、「0」と「1」のメモリセルが混在している。すなわち、カラムC0乃至C3のビット線に、コンタクトホールが疎らに数多く存在しており、カラムC0乃至C3のビット線上にそれぞれ負荷がかかる。
In the
そこで、図9のように構成されるカラム回路11からなるROM回路を設計するためのパラメータファイル71が与えられると、回路設計装置51は、所定のメモリセルのデータを反転して出力するための反転パス用リーフセル75を有するカラム回路101からなるROM回路を設計する。
Therefore, when a parameter file 71 for designing a ROM circuit composed of the
図10は、回路設計装置51により設計されたカラム回路101のさらに他の構成例を示す。図10の例においては、図7の場合と同様に、反転パス用リーフセル75は、インバータ111、通常パス121、反転パス122および選択用セル123により構成される。ただし、図10の例の場合、選択用セル123は、カラムデコーダ22からのカラムセレクト信号s0乃至s3だけでなく、図示せぬコントロール回路からのローアドレス信号(x2,x8,およびx9)に基づいて、通常パス121および反転パス122を切り替えられるように(論理)構成されている。
FIG. 10 shows still another configuration example of the
図10の例においては、カラムC0のビット線においては、ローアドレスw0乃至w11のメモリセルには、パラメータファイル71(図9のカラム回路11)のデータ「0」を反転した「1」が書き込まれており、ローアドレスw12乃至w23のメモリセルには、パラメータファイル71のデータ「1」が書き込まれている。カラムC1のビット線においては、ローアドレスw0乃至w11のメモリセルには、図9の場合と同様に、パラメータファイル71のデータ「1」が書き込まれており、ローアドレスw12乃至w23のメモリセルには、パラメータファイル71のデータ「0」を反転した「1」が書き込まれている。
In the example of FIG. 10, in the bit line of the column C0, “1” obtained by inverting the data “0” of the parameter file 71 (
カラムC2のビット線においては、ローアドレスw0乃至w5のメモリセルには、パラメータファイル71のデータ「0」を反転した「1」が書き込まれており、ローアドレスw6乃至w17のメモリセルには、パラメータファイル71のデータ「1」が書き込まれており、ローアドレスw18乃至w23のメモリセルには、パラメータファイル71のデータ「0」を反転した「1」が書き込まれている。カラムC3のビット線においては、ローアドレスw0,w2,w4,w6,w8,w10,w12,w14,w16,w18,w20,およびw22のメモリセルには、パラメータファイル71のデータ「0」を反転した「1」が書き込まれており、ローアドレスw1,w3,w5,w7,w9,w11,w13,w15,w17,w19,w21,およびw23のメモリセルには、パラメータファイル71のデータ「1」が書き込まれている。 In the bit line of the column C2, “1” obtained by inverting the data “0” of the parameter file 71 is written in the memory cells of the row addresses w0 to w5, and the memory cells of the row addresses w6 to w17 are written. Data “1” of the parameter file 71 is written, and “1” obtained by inverting the data “0” of the parameter file 71 is written in the memory cells of the row addresses w18 to w23. In the bit line of the column C3, the data “0” of the parameter file 71 is inverted in the memory cells of the row addresses w0, w2, w4, w6, w8, w10, w12, w14, w16, w18, w20, and w22. The data “1” in the parameter file 71 is stored in the memory cells at the row addresses w1, w3, w5, w7, w9, w11, w13, w15, w17, w19, w21, and w23. Has been written.
選択用セル123は、コントロール回路からのローアドレス信号(x2,x8,x9)およびカラムデコーダ22からのカラムセレクト信号s0乃至s3のうちのいずれかの信号をそれぞれ入力するANDゲート161乃至164、コントロール回路からのローアドレス信号(x9)を入力するインバータ165、コントロール回路からのローアドレス信号(x8,x9)を入力するExNOR(Exclusive NOR)ゲート166、ANDゲート161乃至164からの各信号を入力するORゲート167、ORゲート167からの反転パスの選択信号を反転するインバーダ168、通常パス121を選択するためのセレクタ169、並びに、反転パス122を選択するためのセレクタ170により構成される。
The
ANDゲート161は、カラムデコーダ22からのカラムセレクト信号s0およびコントロール回路からのローアドレス信号x9(=1)の両方が入力された場合に、信号e(=1)を生成し、生成された信号eをORゲート167に出力する。また、ANDゲート161は、カラムセレクト信号s0またはローアドレス信号x9(=1)が入力されなかった場合に、信号e(=0)をORゲート167に出力する。
The AND
インバータ165は、コントロール回路から入力されるローアドレス信号x9を反転して、反転されたローアドレス信号x9をANDゲート162に出力する。ANDゲート162は、カラムデコーダ22からのカラムセレクト信号s1およびインバータ165により反転されたローアドレス信号x9(=1)の両方が入力された場合(すなわち、コントロール回路からのローアドレス信号x9(=0)が入力された場合)に、信号f(=1)を生成し、生成された信号fをORゲート167に出力する。また、ANDゲート162は、カラムセレクト信号s1またはローアドレス信号x9(=1)が入力されなかった場合に、信号f(=0)をORゲート167に出力する。
The
ExNORゲート166は、コントロール回路から入力されるローアドレス信号x9およびローアドレス信号x8の両方が「1」または「0」である場合に、ANDゲート163に信号i(=1)を出力する。ExNORゲート166は、ローアドレス信号x9およびローアドレス信号x8のどちらか一方だけが「1」である場合に、ANDゲート163に信号i(=0)を出力する。
The
ANDゲート163は、カラムデコーダ22からのカラムセレクト信号s2およびExNORゲート166から信号i(=1)の両方が入力された場合に、信号g(=1)を生成し、生成された信号gをORゲート167に出力する。また、ANDゲート163は、カラムセレクト信号s2または信号i(=1)が入力されなかった場合に、信号g(=0)をORゲート167に出力する。
The AND
ANDゲート164は、カラムデコーダ22からのカラムセレクト信号s3およびコントロール回路からのローアドレス信号x2(=1)の両方が入力された場合に、信号h(=1)を生成し、生成された信号hをORゲート167に出力する。また、ANDゲート164は、カラムセレクト信号s3またはローアドレス信号x2(=1)が入力されなかった場合に、信号h(=0)をORゲート167に出力する。
The AND
ORゲート167は、入力されるANDゲート161からの信号e、ANDゲート162からの信号f、ANDゲート163からの信号g、または、ANDゲート164からの信号hのうちの少なくとも1つの信号が「1」であった場合、反転パスの選択信号を生成し、生成された反転パス用の選択信号を、セレクタ169および170に出力する。
The OR
セレクタ169および170は、セレクタ143と同様に、pMOSとnMOSからなるCMOS回路により構成されている。ORゲート167から出力された反転パスの選択信号は、2つに分岐され、一方がインバータ168により反転される。反転パス用のセレクタ170のpMOSには、インバータ168より反転された反転パスの選択信号が入力され、それと同時に、反転パス用のセレクタ170のnMOSには、ORゲート167からの反転パスの選択信号が同時に入力される。これにより、セレクタ170は、オン状態になり、セレクタ170は、入力されるデータを、後段の装置に出力することができる。なお、このとき、通常パス用のセレクタ169のnMOSには、インバータ168より反転された反転パスの選択信号が入力され、それと同時に、反転パス用のセレクタ170のpMOSには、ORゲート167からの反転パスの選択信号が同時に入力される。すなわち、通常パス用のセレクタ169のnMOSおよびpMOSには、セレクタ170とは逆の信号がそれぞれ入力されるので、セレクタ169は、オフ状態となる。
Like the
以上により、カラムC0乃至カラムC3のビット線上のメモリセルの反転されているデータは、対応するビット線上に読み出され、反転パス122、インバータ111およびON状態になったセレクタ170を介して、後段の装置に出力される。すなわち、カラムC0乃至カラムC3のビット線上のメモリセルの反転されているデータは、対応するビット線上に読み出され、インバータ111により反転されて、後段の装置に出力される。
As described above, the inverted data of the memory cells on the bit lines of the columns C0 to C3 are read onto the corresponding bit lines, and are passed through the
一方、ORゲート167は、入力されるANDゲート161からの信号e、ANDゲート162からの信号f、ANDゲート163からの信号g、および、ANDゲート164からの信号hがすべて「0」であった場合、反転パスの非選択信号(すなわち、反転されている通常パスの選択信号)を生成し、生成された反転パスの非選択信号を、セレクタ169および170に出力する。
On the other hand, in the
なお、このとき、反転パスの非選択信号は、2つに分岐され、一方がインバータ168により反転され、通常パスの選択信号になる。通常パス用のセレクタ169のnMOSには、インバータ168より通常パスの選択信号が入力され、それと同時に、通常パス用のセレクタ169のpMOSには、ORゲート167からの反転パスの非選択信号(反転されている通常パスの選択信号)が入力される。これにより、セレクタ169は、オン状態になる。また、反転パス用のセレクタ170のpMOSには、インバータ168より反転された反転パスの非選択信号(通常パスの選択信号)が入力され、それと同時に、反転パス用のセレクタ170のnMOSには、ORゲート167からの反転パスの非選択信号(反転されている通常パスの選択信号)が入力される。すなわち、通常パス用のセレクタ170のnMOSおよびpMOSには、セレクタ169とは逆の信号がそれぞれ入力されるので、セレクタ170は、オフ状態となる。
At this time, the non-selection signal of the inverting path is branched into two, one of which is inverted by the
以上により、カラムC0乃至カラムC3のビット線上のメモリセルの反転されていない通常のデータは、対応するビット線上に読み出され、通常パス121、およびON状態になったセレクタ169を介して、後段の装置に出力される。
As described above, normal data that is not inverted in the memory cells on the bit lines of the columns C0 to C3 is read out on the corresponding bit lines, and is passed through the
上述した選択用パス123の処理を具体的に説明すると、カラム回路101においては、例えば、カラムデコーダ22からのカラムセレクト信号s0が1で、カラムセレクタ24−1および選択用セル123に入力され、コントロール回路からローアドレス信号(x9=1)が、選択用セル123に入力された場合、カラムセレクタ24−1がオン状態になるとともに、ANDゲート161からORゲート167に信号e(=1)が出力される。また、いまの場合、カラムセレクト信号s1乃至s3は0のため、ORゲート167には、ANDゲート162からの信号f(=0)、ANDゲート163からの信号g(=0)、および、ANDゲート164からの信号h(=0)が入力される。
Specifically, the processing of the
したがって、ORゲート167から反転パスの選択信号が出力され、セレクタ170がオン状態になる。このとき、コントロール回路からのローアドレス信号rに基づいて、ローデコーダ21によりローアドレスw0乃至w11のうちの対応するローアドレスのメモリセルのデータが、カラムC0のビット線上に読み出されている。したがって、カラムC0のビット線上に読み出されているデータは、カラムセレクタ24−1、センスアンプ23、インバータ111、反転パス122、およびセレクタ170を介して、後段の装置に反転して出力される。
Therefore, an inversion path selection signal is output from the
カラムデコーダ22からのカラムセレクト信号s0が1で、カラムセレクタ24−1および選択用セル123に入力され、コントロール回路からローアドレス信号(x9=0)が、選択用セル123に入力された場合、カラムセレクタ24−1がオン状態になるとともに、ANDゲート161からORゲート167に信号e(=0)が出力される。また、いまの場合、カラムセレクト信号s1乃至s3は0のため、ORゲート167には、ANDゲート162からの信号f(=0)、ANDゲート163からの信号g(=0)、および、ANDゲート164からの信号h(=0)が入力される。
When the column select signal s0 from the
したがって、ORゲート167から通常パスの選択信号が出力され、セレクタ169がオン状態になる。このとき、コントロール回路からのローアドレス信号rに基づいて、ローデコーダ21によりローアドレスw12乃至w23のうちの対応するローアドレスのメモリセルのデータが、カラムC0のビット線上に読み出されている。したがって、カラムC0のビット線上に読み出されているデータは、カラムセレクタ24−1、センスアンプ23、通常パス121、およびセレクタ169を介して、後段の装置にそのまま出力される。
Therefore, a normal path selection signal is output from the
また、カラムデコーダ22からのカラムセレクト信号s1が1で、カラムセレクタ24−2および選択用セル123に入力され、コントロール回路からローアドレス信号(x9=1)が、選択用セル123に入力された場合、カラムセレクタ24−2がオン状態になるとともに、ANDゲート162からORゲート167に信号f(=0)が出力される。また、いまの場合、カラムセレクト信号s0、s2およびs3は0のため、ORゲート167には、ANDゲート161からの信号e(=0)、ANDゲート163からの信号g(=0)、および、ANDゲート164からの信号h(=0)が入力される。
Further, the column select signal s1 from the
したがって、ORゲート167から通常パスの選択信号が出力され、セレクタ169がオン状態になる。このとき、コントロール回路からのローアドレス信号rに基づいて、ローデコーダ21によりローアドレスw0乃至w11のうちの対応するローアドレスのメモリセルのデータが、カラムC1のビット線上に読み出されている。したがって、カラムC1のビット線上に読み出されているデータは、カラムセレクタ24−2、センスアンプ23、通常パス121、およびセレクタ169を介して、後段の装置にそのまま出力される。
Therefore, a normal path selection signal is output from the
カラムデコーダ22からのカラムセレクト信号s1が1で、カラムセレクタ24−2および選択用セル123に入力され、コントロール回路からローアドレス信号(x9=0)が、選択用セル123に入力された場合、カラムセレクタ24−2がオン状態になるとともに、ANDゲート162からORゲート167に信号f(=1)が出力される。また、いまの場合、カラムセレクト信号s0、s2およびs3は0のため、ORゲート167には、ANDゲート161からの信号e(=0)、ANDゲート163からの信号g(=0)、および、ANDゲート164からの信号h(=0)が入力される。
When the column select signal s1 from the
したがって、ORゲート167から反転パスの選択信号が出力され、セレクタ170がオン状態になる。このとき、コントロール回路からのローアドレス信号rに基づいて、ローデコーダ21によりローアドレスw12乃至w23のうちの対応するローアドレスのメモリセルのデータが、カラムC1のビット線上に読み出されている。したがって、カラムC1のビット線上に読み出されているデータは、カラムセレクタ24−2、センスアンプ23、インバータ111、反転パス122、およびセレクタ170を介して、後段の装置に反転して出力される。
Therefore, an inversion path selection signal is output from the
さらに、カラムデコーダ22からのカラムセレクト信号s2が1で、カラムセレクタ24−3および選択用セル123に入力され、コントロール回路からローアドレス信号(x9=1)および(x8=1)が、選択用セル123に入力された場合、カラムセレクタ24−3がオン状態になるとともに、ANDゲート163からORゲート167に信号g(=1)が出力される。また、いまの場合、カラムセレクト信号s0、s1およびs3は0のため、ORゲート167には、ANDゲート161からの信号e(=0)、ANDゲート162からの信号f(=0)、および、ANDゲート164からの信号h(=0)が入力される。
Further, the column select signal s2 from the
したがって、ORゲート167から反転パスの選択信号が出力され、セレクタ170がオン状態になる。このとき、コントロール回路からのローアドレス信号rに基づいて、ローデコーダ21によりローアドレスw0乃至w5のうちの対応するローアドレスのメモリセルのデータが、カラムC2のビット線上に読み出されている。したがって、カラムC2のビット線上に読み出されているデータは、カラムセレクタ24−3、センスアンプ23、インバータ111、反転パス122、およびセレクタ170を介して、後段の装置に反転して出力される。
Therefore, an inversion path selection signal is output from the
カラムデコーダ22からのカラムセレクト信号s2が1で、カラムセレクタ24−3および選択用セル123に入力され、コントロール回路からローアドレス信号(x9=1)および(x8=0)が、ローデコーダ21および選択用セル123に入力された場合、カラムセレクタ24−3がオン状態になるとともに、ANDゲート163からORゲート167に信号g(=0)が出力される。また、いまの場合、カラムセレクト信号s0、s1およびs3は0のため、ORゲート167には、ANDゲート161からの信号e(=0)、ANDゲート162からの信号f(=0)、および、ANDゲート164からの信号h(=0)が入力される。
The column select signal s2 from the
したがって、ORゲート167から通常パスの選択信号が出力され、セレクタ169がオン状態になる。このとき、コントロール回路からのローアドレス信号rに基づいて、ローデコーダ21によりローアドレスw6乃至w11のうちの対応するローアドレスのメモリセルのデータが、カラムC2のビット線上に読み出されている。したがって、カラムC2のビット線上に読み出されているデータは、カラムセレクタ24−3、センスアンプ23、通常パス121、およびセレクタ169を介して、後段の装置にそのまま出力される。
Therefore, a normal path selection signal is output from the
カラムデコーダ22からのカラムセレクト信号s2が1で、カラムセレクタ24−3および選択用セル123に入力され、コントロール回路からローアドレス信号(x9=0)および(x8=1)が、ローデコーダ21および選択用セル123に入力された場合、カラムセレクタ24−3がオン状態になるとともに、ANDゲート163からORゲート167に信号g(=0)が出力される。また、いまの場合、カラムセレクト信号s0、s1およびs3は0のため、ORゲート167には、ANDゲート161からの信号e(=0)、ANDゲート162からの信号f(=0)、および、ANDゲート164からの信号h(=0)が入力される。
The column select signal s2 from the
したがって、ORゲート167から通常パスの選択信号が出力され、セレクタ169がオン状態になる。このとき、コントロール回路からのローアドレス信号rに基づいて、ローデコーダ21によりローアドレスw12乃至w17のうちの対応するローアドレスのメモリセルのデータが、カラムC2のビット線上に読み出されている。したがって、カラムC2のビット線上に読み出されているデータは、カラムセレクタ24−3、センスアンプ23、通常パス121、およびセレクタ169を介して、後段の装置にそのまま出力される。
Therefore, a normal path selection signal is output from the
カラムデコーダ22からのカラムセレクト信号s2が1で、カラムセレクタ24−3および選択用セル123に入力され、コントロール回路からローアドレス信号(x9=0)および(x8=0)が、ローデコーダ21および選択用セル123に入力された場合、カラムセレクタ24−3がオン状態になるとともに、ANDゲート163からORゲート167に信号g(=1)が出力される。また、いまの場合、カラムセレクト信号s0、s1およびs3は0のため、ORゲート167には、ANDゲート161からの信号e(=0)、ANDゲート162からの信号f(=0)、および、ANDゲート164からの信号h(=0)が入力される。
The column select signal s2 from the
したがって、ORゲート167から反転パスの選択信号が出力され、セレクタ170がオン状態になる。このとき、コントロール回路からのローアドレス信号rに基づいて、ローデコーダ21によりローアドレスw18乃至w23のうちの対応するローアドレスのメモリセルのデータが、カラムC2のビット線上に読み出されている。したがって、カラムセレクタ24−3およびセレクタ170がオン状態になるので、カラムC2のビット線上に読み出されているデータは、カラムセレクタ24−3、センスアンプ23、インバータ111、反転パス122、およびセレクタ170を介して、後段の装置に反転して出力される。
Therefore, an inversion path selection signal is output from the
また、カラムデコーダ22からのカラムセレクト信号s3が1で、カラムセレクタ24−4および選択用セル123に入力され、コントロール回路からローアドレス信号(x2=1)が、選択用セル123に入力された場合、カラムセレクタ24−4がオン状態になるとともに、ANDゲート164からORゲート167に信号h(=1)が出力される。また、いまの場合、カラムセレクト信号s0乃至s2は0のため、ORゲート167には、ANDゲート161からの信号e(=0)、ANDゲート162からの信号f(=0)、および、ANDゲート163からの信号g(=0)が入力される。
Further, the column select signal s3 from the
したがって、セレクタ170がオン状態になる。このとき、コントロール回路からのローアドレス信号rに基づいて、ローデコーダ21によりローアドレスw0,w2,w4,w6,w8,w10,w12,w14,w16,w18,w20,およびw22のうちの対応するメモリセルのデータが、カラムC3のビット線上に読み出されている。したがって、カラムC3のビット線上に読み出されているデータは、カラムセレクタ24−4、センスアンプ23、インバータ111、反転パス122、およびセレクタ170を介して、後段の装置に反転して出力される。
Therefore, the
カラムデコーダ22からのカラムセレクト信号s3が1で、カラムセレクタ24−4および選択用セル123に入力され、コントロール回路からローアドレス信号(x2=0)が、ローデコーダ21および選択用セル123に入力された場合、カラムセレクタ24−4がオン状態になるとともに、ANDゲート164からORゲート167に信号h(=0)が出力される。また、いまの場合、カラムセレクト信号s0乃至s2は0のため、ORゲート167には、ANDゲート161からの信号e(=0)、ANDゲート162からの信号f(=0)、および、ANDゲート163からの信号g(=0)が入力される。
The column select signal s3 from the
したがって、ORゲート167から通常パスの選択信号が出力され、セレクタ169がオン状態になる。このとき、コントロール回路からのローアドレス信号rに基づいて、ローデコーダ21によりローアドレスw1,w3,w5,w7,w9,w11,w13,w15,w17,w19,w21,およびw23のうちの対応するメモリセルのデータが、カラムC3のビット線上に読み出されている。したがって、カラムC3のビット線上に読み出されているデータは、カラムセレクタ24−4、センスアンプ23、通常パス121、およびセレクタ169を介して、後段の装置にそのまま出力される。
Therefore, a normal path selection signal is output from the
以上のように、カラム回路101において、ビット線のうちの任意のビット線上の任意のローアドレスのメモリセルに反転したデータが書き込まれても、センスアンプ23の後段に、反転パス用リーフセル75として、通常パス121、インバータ111を有する反転パス122、並びに、通常パス121および反転パス122が、カラムデコーダ22からのカラムセレクト信号s0乃至s3およびローデコーダ21からのローアドレス信号(x2,x8,x9)により切り替えられるように選択用セル123を構成することにより、各ビット線上のデータのセンスアンプ23からの出力を、図9のカラム回路11のセンスアンプ23からの出力と同じにすることができる。
As described above, in the
すなわち、パラメータファイル71において、任意のビット線上の任意のローアドレスが「0」であったとしても、センスアンプの後段に、反転パス用リーフセル75として、通常パス121、インバータ111を有する反転パス122、並びに、通常パス121および反転パス122が、カラムデコーダ22からのカラムセレクト信号s0乃至s3およびローデコーダ21からのローアドレス信号(x2,x8,x9)により切り替えられるように(論理)構成された選択用セル123を配置することにより、センスアンプからの出力を、インバータ111を有する反転パス122を介して反転することができるので、そのメモリセルに「1」を記憶させることができる。したがって、図10に示されるように、各ビット線上のほとんどすべてのローアドレスのメモリセルに「1」を記憶させることができる。これにより、ビット線上のコンタクトホールの数が減少され、ビット線における負荷が削減される。
That is, in the parameter file 71, even if an arbitrary row address on an arbitrary bit line is “0”, the
なお、図10の例においては、カラムセレクト信号と3つのローアドレス信号(x2,x8,x9)により通常パスおよび反転パスが切り替えられる場合について説明したが、ローアドレス信号は3つに限らず、ローアドレス信号が1つの場合もあれば、例えば、ROM回路のワード数が大きい場合など、カラムセレクト信号とさらに多くのローアドレス信号により通常パスおよび反転パスが切り替えられるようにしてもよい。 In the example of FIG. 10, the case where the normal path and the inverted path are switched by the column select signal and the three row address signals (x2, x8, x9) has been described. However, the row address signal is not limited to three. In some cases, there may be one row address signal. For example, when the number of words in the ROM circuit is large, the normal path and the inverted path may be switched by the column select signal and more row address signals.
また、ビット線上のすべてのメモリセルのデータを「0」にすると、上述した反転パス用リーフセル75を組む論理が複雑になる場合があるので、反転パス用リーフセル75の論理の複雑さとビット線上のコンタクトホールの負荷の兼ね合いに基づいて、ビット線上のメモリセルの反転するデータのローアドレスを限定するようにしてもよい。この場合には、反転パス用リーフセル75の論理の複雑さを抑えることができる。
If the data of all the memory cells on the bit line is set to “0”, the logic for assembling the above-described inversion
次に、図11のフローチャートを参照して、回路設計装置51の回路設計処理について説明する。
Next, the circuit design processing of the
入力部61は、ユーザ(設計者)の操作に基づいて、ROMのビット数、ワード数、ROMデータなどが記述されたパラメータファイル71を入力する。データ解析部62は、ステップS1において、入力部61を介して入力されたパラメータファイル71に基づいて、ビット線上のメモリセルのデータの数と並びを解析し、その解析結果を、反転方法設定部63に出力し、ステップS2に進む。
The
反転方法設定部63は、ステップS2において、データ解析部62により解析された解析結果に基づいて、図5を参照して上述したように、ビット線のメモリセルのデータをすべて反転するか、図7を参照して上述したように、所定のビット線を選択して、選択されたビット線のメモリセルのデータをすべて反転するか、または、図10を参照して上述したように、所定のビット線を選択して、選択されたビット線の任意のメモリセルのデータだけを反転するかなどのデータの反転方法を設定し、ステップS3に進む。 In step S2, the inversion method setting unit 63 inverts all the data of the bit line memory cells based on the analysis result analyzed by the data analysis unit 62, as described above with reference to FIG. As described above with reference to FIG. 7, a predetermined bit line is selected and all the data in the memory cells of the selected bit line are inverted, or as described above with reference to FIG. A bit line is selected and a data inversion method is set, such as whether to invert only the data of an arbitrary memory cell of the selected bit line, and the process proceeds to step S3.
論理設計部64は、ステップS3において、反転方法設定部63により設定されたデータ反転方法に基づいて、PLA(Programmable Logic Array)を用いて、所定のメモリセルのデータを反転して出力するための論理を組み、論理回路を実現する。具体的には、論理設計部64は、データ反転方法に基づいて、記憶部65のPLAリーフセル72を用いて、タイリング(組み合わせ)を行い、PLAを用いて、所定のデータを反転して出力するための反転パス用リーフセル75を生成し、ステップS4に進む。例えば、図5の例の場合には、論理設計部64は、インバータ111からなる反転パス用リーフセル75を生成する。また、図7または図10の例の場合には、通常パス121、インバータ111を有する反転パス122並びに選択用セル123からなる反転パス用リーフセル75を生成する。なお、このとき、論理設計部64は、どのビット線のどのメモリセルのデータを反転するかというデータ反転情報74も生成する。
In step S3, the
そして、論理設計部64は、ステップS4において、生成された反転パス用リーフセル75およびデータ反転情報74をROM生成部66に出力し、ステップS5に進む。
In step S4, the
ROM生成部66は、ステップS5において、パラメータファイル71、記憶部65のROMリーフセル73、論理設計部64からのデータ反転情報74および反転パス用リーフセル75に基づいて、ROM回路設計データ76を生成し、生成されたROM回路設計データ76を、後段の図示せぬ装置に出力し、回路設計処理を終了する。ROM生成部66により出力されたROM回路設計データ76は、後段のウエハ工程でマスクデータとして使用され、ROM回路がプログラミングされる。
In step S 5, the
以上のように、特殊なプロセスを実行しなくても、ビット線におけるコンタクトホールの数を減らすことにより、簡単に、リーク電流を抑えたROM回路を設計することができる。 As described above, it is possible to easily design a ROM circuit with reduced leakage current by reducing the number of contact holes in the bit line without performing a special process.
図12は、上述したようにして設計されたROM回路201の構成例を示している。なお、図12においては、図1および図7における場合と対応する部分には対応する符号を付してあり、その説明は繰り返しになるので省略する。また、図12においては、ビット線上の各ローアドレスのメモリセルは、説明の便宜上、省略されている。
FIG. 12 shows a configuration example of the
図12の例においては、ROM回路201は、カラム回路101−1,101−2,101−3,101−4,…により構成されている。カラム回路101−1のセンスアンプ23−1の後段には、カラムC0乃至C3のうちの所定のビット線上の所定のメモリセルのデータを反転させない通常パス121−1、インバータ111−1を有し、カラムC0乃至C3のうちの所定のビット線上の所定のメモリセルのデータを反転させる反転パス122−1、並びに、通常パス121−1および反転パス122−1がカラムデコーダ22からのカラムセレクト信号s0乃至s3、および、図示せぬコントロール回路からのローアドレス信号x(例えば、図7のx2,x8,x9)により切り替えられるように構成された選択用セル123−1が配置されている。すなわち、図12の例の場合、反転パス用リーフセル75は、インバータ111−1、通常パス121−1、反転パス122−1、および選択用セル123−1により構成される。
In the example of FIG. 12, the
選択用セル123は、通常パス121−1からのデータを出力するためのORゲートやインバータなどにより構成されるデコーダ回路211−1、およびセレクタ143−1と、反転パス122からのデータを出力するためのORゲートやインバータなどにより構成されるデコーダ回路212−1およびセレクタ146−1により構成される。
The
デコーダ回路211−1は、カラムデコーダ22からのカラムセレクト信号s0乃至s3およびコントロール回路からのローアドレス信号xに基づいて、通常パスの選択信号を出力し、セレクタ143−1のオンオフを制御する。また、コントロール回路は、読み出すデータを指示するためのローアドレス信号rをローデコーダ21に出力しており、ローデコーダ21は、ローアドレス信号rに基づいて、ワード線を選択し、ビット線上に、対応するローアドレスのメモリセルのデータを読み出している。セレクタ143−1は、デコーダ回路211−1からの通常パスの選択信号が入力されると、オン状態になり、所定のビット線上に読み出されているデータを、センスアンプ23−1および通常パス121−1を介して、後段の装置に出力する。
The decoder circuit 211-1 outputs a normal path selection signal based on the column select signals s 0 to
デコーダ回路212−1は、カラムデコーダ22からのカラムセレクト信号s0乃至s3およびコントロール回路からのローアドレス信号xに基づいて、反転パスの選択信号を出力し、セレクタ146−1のオンオフを制御する。また、コントロール回路からのローアドレス信号rに基づいて、ローデコーダ21によりビット線上には、対応するローアドレスのメモリセルのデータが読み出されている。セレクタ146−1は、デコーダ回路212−1からの反転パスの選択信号が入力されると、オン状態になり、所定のビット線上に読み出されているデータを、センスアンプ23−1、反転パス122−1およびインバータ111−1を介して、後段の装置に、反転して出力する。
The decoder circuit 212-1 outputs an inversion path selection signal based on the column select signals s0 to s3 from the
カラム回路101−2のセンスアンプ23−2の後段には、カラムC4乃至C7のうちの所定のビット線上の所定のメモリセルのデータを反転させない通常パス121−2、インバータ111−2を有し、カラムC4乃至C7のうちの所定のビット線上の所定のメモリセルのデータを反転させる反転パス122−2、並びに、通常パス121−2および反転パス122−2がカラムデコーダ22からのカラムセレクト信号s0乃至s3、および、図示せぬコントロール回路からのローアドレス信号xにより切り替えられるように構成された選択用セル123−2が配置されている。なお、選択用セル123−2は、選択用セル123−1と基本的に同様の構成であり、また、カラム回路101−3および101−4は、カラム回路101−1と基本的に同様の構成であり、それらの説明は繰り返しになるので省略する。
Subsequent to the sense amplifier 23-2 of the column circuit 101-2, there is a normal path 121-2 and an inverter 111-2 that do not invert data of a predetermined memory cell on a predetermined bit line in the columns C4 to C7. , An inversion path 122-2 for inverting data of a predetermined memory cell on a predetermined bit line in columns C4 to C7, and a normal path 121-2 and an inversion path 122-2 are column select signals from the
以上のように、ROM回路において、センスアンプの後段に、反転パス用リーフセル75としてのデータを反転させない通常パス、データを反転させる反転パス、および通常パスと反転パスを切り替える選択をする選択用セルを設けるようにしたので、任意のビット線上の任意のローアドレスのメモリセルのデータを反転させて書き込むことができる。したがって、ビット線上のメモリセルのデータ「1」の数を多く設定することができ、ビット線上のコンタクトホールによる負荷を軽減することができる。
As described above, in the ROM circuit, in the subsequent stage of the sense amplifier, the normal path that does not invert the data as the inversion
これにより、ビット線上のドレイン負荷容量が減少し、リークによる誤動作が抑制されるので、以上のように設計されたROM回路においては、低電圧まで動作させることが可能になり、さらに、消費電力を低減させることができる。 As a result, the drain load capacity on the bit line is reduced, and malfunctions due to leakage are suppressed. Therefore, the ROM circuit designed as described above can be operated to a low voltage, and further, power consumption can be reduced. Can be reduced.
なお、ビット線上のすべてのメモリセルのデータを「1」にすると、反転パスを選択する選択用セルの論理が複雑になってしまう場合もあるので、あまり複雑にならないように、ビット線上のメモリセルのデータ「0」を「1」に反転するローアドレスを限定して、反転パスを選択する選択用セルの論理を組むようにしてもよい。 Note that if the data of all the memory cells on the bit line is set to “1”, the logic of the selection cell for selecting the inversion path may be complicated, so that the memory on the bit line is not so complicated. The row address for inverting the cell data “0” to “1” may be limited, and the logic of the selection cell for selecting the inversion path may be formed.
上記説明においては、コンタクトホール方式によるROM回路を用いて説明したが、ビア方式や拡散層方式、メタル方式やイオン注入方式であってもよい。また、以上のように設計されたROM回路を、半導体集積回路に搭載するようにするようにしてもよい。 In the above description, the contact hole method ROM circuit is used, but a via method, a diffusion layer method, a metal method, or an ion implantation method may be used. The ROM circuit designed as described above may be mounted on a semiconductor integrated circuit.
また、上記説明においては、ビット線を4カラム毎にまとめたカラム回路により構成される場合のROM回路を用いて説明したが、ビット線を8カラム、16カラム、または32カラム毎にまとめたカラム回路により構成されるROM回路にも、本発明は適用される。すなわち、本発明において、カラム内のビット線数は限定されない。 In the above description, the ROM circuit has been described in the case where the bit line is configured by a column circuit that is grouped every four columns. However, the bit line is a column that is grouped every 8 columns, 16 columns, or 32 columns. The present invention is also applied to a ROM circuit constituted by circuits. That is, in the present invention, the number of bit lines in the column is not limited.
上述した一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。この場合、例えば、図3の回路設計装置51は、図13に示されるような回路設計装置301により構成される。
The series of processes described above can be executed by hardware, but can also be executed by software. In this case, for example, the
図13において、CPU(Central Processing Unit)311は、ROM(Read Only Memory) 312に記憶されているプログラム、または、記憶部318からRAM(Random Access Memory)313にロードされたプログラムに従って各種の処理を実行する。RAM313にはまた、CPU311が各種の処理を実行する上において必要なデータなどが適宜記憶される。
In FIG. 13, a CPU (Central Processing Unit) 311 performs various processes according to a program stored in a ROM (Read Only Memory) 312 or a program loaded from a
CPU311、ROM312、およびRAM313は、バス314を介して相互に接続されている。このバス314にはまた、入出力インタフェース315も接続されている。
The
入出力インタフェース315には、キーボード、マウスなどよりなる入力部316、CRT(Cathode Ray Tube),LCD(Liquid Crystal Display)などよりなるディスプレイ、並びにスピーカなどよりなる出力部317、ハードディスクなどより構成される記憶部318、モデム、ターミナルアダプタなどより構成される通信部319が接続されている。通信部319は、図示しないネットワークを介しての通信処理を行う。
The input /
入出力インタフェース315にはまた、必要に応じてドライブ320が接続され、磁気ディスク321、光ディスク322、光磁気ディスク323、或いは半導体メモリ324などが適宜装着され、それから読み出されたコンピュータプログラムが、必要に応じて記憶部318にインストールされる。
A
一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば、汎用のパーソナルコンピュータなどに、ネットワークや記録媒体からインストールされる。 When a series of processing is executed by software, a program constituting the software may execute various functions by installing a computer incorporated in dedicated hardware or various programs. For example, it is installed from a network or a recording medium into a general-purpose personal computer or the like.
この記録媒体は、図13に示されるように、装置本体とは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されている磁気ディスク321(フレキシブルディスクを含む)、光ディスク322(CD-ROM(Compact Disk-Read Only Memory),DVD(Digital Versatile Disk)を含む)、光磁気ディスク323(MD(Mini-Disk)(商標)を含む)、もしくは半導体メモリ324などよりなるパッケージメディアにより構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに提供される、プログラムが記録されているROM312や、記憶部318に含まれるハードディスクなどで構成される。
As shown in FIG. 13, the recording medium is distributed to provide a program to the user separately from the apparatus main body, and a magnetic disk 321 (including a flexible disk) on which the program is recorded, an optical disk 322 ( CD-ROM (including Compact Disk-Read Only Memory), DVD (Digital Versatile Disk)), magneto-optical disk 323 (including MD (Mini-Disk) (trademark)), or a package medium including
なお、本明細書において、フローチャートに示されるステップは、記載された順序に従って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。 In the present specification, the steps shown in the flowcharts include not only processes performed in time series according to the described order, but also processes executed in parallel or individually even if not necessarily performed in time series. Is included.
51 回路設計装置,62 データ解析部,63 反転方法設定部,64 論理設計部,65 記憶部,66 ROM生成部,71 パラメータファイル,72 PLA用リーフセル,73 ROMリーフセル,74 データ反転情報,75 反転パス用リーフセル,76 ROM回路設計データ,101 カラム回路,111 インバータ,121 通常パス,122 反転パス,123 選択用セル,201 ROM回路
DESCRIPTION OF
Claims (8)
前記回路は、前記ビット線上の所定の前記メモリセルのデータを反転して出力するための反転用セルを有する
ことを特徴とする半導体集積回路。 A semiconductor integrated circuit having a circuit in which memory cells for storing data are arranged on a bit line,
The semiconductor integrated circuit according to claim 1, wherein the circuit includes an inverting cell for inverting and outputting data of the predetermined memory cell on the bit line.
前記ビット線上の前記メモリセルのデータの数と並びを解析する解析手段と、
前記解析手段による解析結果に基づいて、前記データの反転方法を設定する反転方法設定手段と、
前記反転方法設定手段により設定された前記データの反転方法に基づいて、前記ビット線上の所定の前記メモリセルのデータを反転して出力するための反転用セルを生成するセル生成手段と、
前記セル生成手段により生成された前記反転用セルに基づいて、前記回路を設計する設計手段と
を備えることを特徴とする回路設計装置。 In a circuit design apparatus for designing a circuit in which a memory cell for storing data is arranged on a bit line,
Analyzing means for analyzing the number and arrangement of data of the memory cells on the bit line;
An inversion method setting means for setting an inversion method of the data based on an analysis result by the analysis means;
Cell generation means for generating an inversion cell for inverting and outputting data of the predetermined memory cell on the bit line based on the data inversion method set by the inversion method setting means;
A circuit design apparatus comprising: design means for designing the circuit based on the inversion cell generated by the cell generation means.
ことを特徴とする請求項2に記載の回路設計装置。 The circuit design device according to claim 2, wherein the inversion method setting means sets the inversion method of the data so as to invert data of all the memory cells on the bit line.
ことを特徴とする請求項2に記載の回路設計装置。 The inversion method setting means sets the inversion method of the data so as to invert data of all the memory cells on a predetermined bit line among the plurality of bit lines. Circuit design equipment.
ことを特徴とする請求項2に記載の回路設計装置。 3. The inversion method setting unit sets the data inversion method so as to invert data of a predetermined memory cell on a predetermined bit line among a plurality of the bit lines. Circuit design equipment.
前記ビット線上の前記メモリセルのデータの数と並びを解析する解析ステップと、
前記解析ステップの処理による解析結果に基づいて、前記データの反転方法を設定する反転方法設定ステップと、
前記反転方法設定ステップの処理により設定された前記データの反転方法に基づいて、前記ビット線上の所定の前記メモリセルのデータを反転して出力するための反転用セルを生成するセル生成ステップと、
前記セル生成ステップの処理により生成された前記反転用セルに基づいて、前記回路を設計する設計ステップと
を含むことを特徴とする回路設計方法。 In a circuit design method for designing a circuit in which a memory cell for storing data is arranged on a bit line,
An analysis step of analyzing the number and arrangement of data of the memory cells on the bit line;
An inversion method setting step for setting an inversion method of the data based on an analysis result by the processing of the analysis step;
A cell generation step for generating an inversion cell for inverting and outputting data of the predetermined memory cell on the bit line based on the data inversion method set by the inversion method setting step;
And a design step of designing the circuit based on the inversion cell generated by the processing of the cell generation step.
前記ビット線上の前記メモリセルのデータの数と並びを解析する解析ステップと、
前記解析ステップの処理による解析結果に基づいて、前記データの反転方法を設定する反転方法設定ステップと、
前記反転方法設定ステップの処理により設定された前記データの反転方法に基づいて、前記ビット線上の所定の前記メモリセルのデータを反転して出力するための反転用セルを生成するセル生成ステップと、
前記セル生成ステップの処理により生成された前記反転用セルに基づいて、前記回路を設計する設計ステップと
を含むことを特徴とするコンピュータが読み取り可能なプログラムが記録されている記録媒体。 A recording medium on which a program for causing a computer to perform a process of designing a circuit in which a memory cell for storing data is arranged on a bit line is recorded,
An analysis step of analyzing the number and arrangement of data of the memory cells on the bit line;
An inversion method setting step for setting an inversion method of the data based on an analysis result by the processing of the analysis step;
A cell generation step for generating an inversion cell for inverting and outputting data of the predetermined memory cell on the bit line based on the data inversion method set by the inversion method setting step;
And a design step of designing the circuit based on the inversion cell generated by the processing of the cell generation step. A recording medium on which a computer-readable program is recorded.
前記ビット線上の前記メモリセルのデータの数と並びを解析する解析ステップと、
前記解析ステップの処理による解析結果に基づいて、前記データの反転方法を設定する反転方法設定ステップと、
前記反転方法設定ステップの処理により設定された前記データの反転方法に基づいて、前記ビット線上の所定の前記メモリセルのデータを反転して出力するための反転用セルを生成するセル生成ステップと、
前記セル生成ステップの処理により生成された前記反転用セルに基づいて、前記回路を設計する設計ステップと
を含むことを特徴とするプログラム。 A program for causing a computer to perform a process of designing a circuit in which a memory cell for storing data is arranged on a bit line,
An analysis step of analyzing the number and arrangement of data of the memory cells on the bit line;
An inversion method setting step for setting an inversion method of the data based on an analysis result by the processing of the analysis step;
A cell generation step for generating an inversion cell for inverting and outputting data of the predetermined memory cell on the bit line based on the data inversion method set by the inversion method setting step;
And a design step of designing the circuit based on the inversion cell generated by the processing of the cell generation step.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003274462A JP2005038510A (en) | 2003-07-15 | 2003-07-15 | Semiconductor integrated circuit, device and method for designing circuit, recording medium, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003274462A JP2005038510A (en) | 2003-07-15 | 2003-07-15 | Semiconductor integrated circuit, device and method for designing circuit, recording medium, and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005038510A true JP2005038510A (en) | 2005-02-10 |
Family
ID=34211408
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003274462A Pending JP2005038510A (en) | 2003-07-15 | 2003-07-15 | Semiconductor integrated circuit, device and method for designing circuit, recording medium, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005038510A (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007179724A (en) * | 2005-12-28 | 2007-07-12 | Intel Corp | Memory provided with storage of spatially encoded data |
JP2010512645A (en) * | 2006-12-06 | 2010-04-22 | クゥアルコム・インコーポレイテッド | Process variation resistant memory design |
JP2011253592A (en) * | 2010-06-02 | 2011-12-15 | Fujitsu Semiconductor Ltd | Semiconductor memory device production method and semiconductor memory device |
JP2013222801A (en) * | 2012-04-16 | 2013-10-28 | Fujitsu Semiconductor Ltd | Semiconductor device |
-
2003
- 2003-07-15 JP JP2003274462A patent/JP2005038510A/en active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007179724A (en) * | 2005-12-28 | 2007-07-12 | Intel Corp | Memory provided with storage of spatially encoded data |
JP4509995B2 (en) * | 2005-12-28 | 2010-07-21 | インテル コーポレイション | Memory with spatially encoded data storage |
JP2010512645A (en) * | 2006-12-06 | 2010-04-22 | クゥアルコム・インコーポレイテッド | Process variation resistant memory design |
JP2011253592A (en) * | 2010-06-02 | 2011-12-15 | Fujitsu Semiconductor Ltd | Semiconductor memory device production method and semiconductor memory device |
JP2013222801A (en) * | 2012-04-16 | 2013-10-28 | Fujitsu Semiconductor Ltd | Semiconductor device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7342826B2 (en) | Semiconductor device | |
KR100312877B1 (en) | Semiconductor integrated circuit device | |
JPH11219589A (en) | Static semiconductor memory | |
WO2008005919A2 (en) | High speed read-only memory | |
EP0920024B1 (en) | Semiconductor memory device having a plurality of banks | |
CN114077418A (en) | In-memory operation method and device, memory and storage medium | |
US6256681B1 (en) | Data buffer for programmable memory | |
JP2009070474A (en) | Semiconductor integrated circuit | |
US8120973B2 (en) | Write driver of semiconductor memory device | |
JP2006155710A (en) | Semiconductor memory device | |
JP2005038510A (en) | Semiconductor integrated circuit, device and method for designing circuit, recording medium, and program | |
US7904767B2 (en) | Semiconductor memory testing device and method of testing semiconductor using the same | |
JP2015032327A (en) | Semiconductor device, and data reading method | |
US7639557B1 (en) | Configurable random-access-memory circuitry | |
KR20010085471A (en) | Semiconductor memory device allowing static-charge tolerance test between bit lines | |
US7649801B2 (en) | Semiconductor memory apparatus having column decoder for low power consumption | |
US11070208B2 (en) | Level shifter | |
KR20010021062A (en) | Semiconductor memory device and method for controlling memory cell array block thereof | |
US9607669B2 (en) | Semiconductor memory device including precharge circuit | |
US6862231B2 (en) | Repair circuit | |
KR100284904B1 (en) | Nonvolatile semiconductor memory device and method for setting invalid memory block table thereof | |
JP7086795B2 (en) | Semiconductor equipment | |
KR100254473B1 (en) | Row decoder circuit | |
KR100390983B1 (en) | Semiconductor memory device and the control method thereof | |
US6529419B2 (en) | Apparatus for varying data input/output path in semiconductor memory device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060509 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080826 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20081007 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20081225 |