(57)【要約】【課題】コンパイル型マクロの階層化によるオーバーヘッドを最適化する。【解決手段】第１ローカルメモリセルアレイと第１ローカルセンスアンプとを備える第１バンクと、第２ローカルメモリセルアレイと第２ローカルセンスアンプとを備える第２バンクとを有するメモリセルアレイを構成する。ここで、第２バンクは、グローバルビット線方向に沿って第１バンクに並んで配置されるものとする。その第１ローカルセンスアンプは、第１ローカルメモリセルアレイに含まれるメモリセルの数、または、第１ローカルセンスアンプからドライバ回路までの距離に基づいて最適設計された性能を有することが好ましい。また、その第２ローカルセンスアンプは、第２ローカルメモリセルアレイに含まれるメモリセルの数、または、第２ローカルセンスアンプからドライバ回路までの距離に基づいて最適設計された性能を有することが好ましい。【選択図】図１
2012146371.tif 000002
【特許請求の範囲】
【請求項１】
メモリセルアレイと、
前記メモリセルアレイに配置されるメモリセルの動作を制御するドライバ回路と、
前記メモリセルアレイに配置され、第１方向に沿って延伸するグローバルビット線と
を具備し、
前記メモリセルアレイは、
第１ローカルメモリセルアレイと第１ローカルセンスアンプとを備える第１バンクと、
第２ローカルメモリセルアレイと第２ローカルセンスアンプとを備え、前記第１方向に沿って前記第１バンクに並んで配置される第２バンクと
を含み、
前記第１ローカルセンスアンプは、
前記第１ローカルメモリセルアレイに含まれるメモリセルの数、または、前記第１ローカルセンスアンプから前記ドライバ回路までの距離に基づいて最適設計された性能を有し、
前記第２ローカルセンスアンプは、
前記第２ローカルメモリセルアレイに含まれるメモリセルの数、または、前記第２ローカルセンスアンプから前記ドライバ回路までの距離に基づいて最適設計された性能を有する
半導体記憶装置。
【請求項２】
請求項１に記載の半導体記憶装置において、
前記第１ローカルセンスアンプの前記性能は、
前記半導体記憶装置に要求される動作速度に基づいて特定され、
前記第２ローカルセンスアンプの前記性能は、
前記半導体記憶装置に要求される動作速度に基づいて特定される
半導体記憶装置。
【請求項３】
請求項２に記載の半導体記憶装置において、
前記第１ローカルセンスアンプは、
前記第１ローカルメモリセルアレイに含まれるメモリセルの数と、前記半導体記憶装置に要求される動作速度と、前記ドライバ回路から前記第１ローカルセンスアンプまでの前記グローバルビット線の長さとに基づいて設計された性能を有し、
前記第２ローカルセンスアンプは、
前記第２ローカルメモリセルアレイに含まれるメモリセルの数と、前記半導体記憶装置に要求される動作速度と、前記ドライバ回路から前記第２ローカルセンスアンプまでの前記グローバルビット線の長さに基づいて設計された性能を有する
半導体記憶装置。
【請求項４】
請求項１から３の何れか一項に記載の半導体記憶装置において、
前記第１バンクは、第１長さの第１ローカルビット線を備え、
前記第２バンクは、前記第１長さの第２ローカルビット線を備え、
前記第１ローカルセンスアンプは、
前記第１ローカルビット線に接続され、前記第１ローカルビット線を介して受け取ったデータを前記グローバルビット線に供給し、
前記第２ローカルセンスアンプは、
前記第２ローカルビット線に接続され、前記第２ローカルビット線を介して受け取ったデータを前記グローバルビット線に供給する
半導体記憶装置。
【請求項５】
請求項４に記載の半導体記憶装置において、
前記メモリセルアレイは、
複数の前記第１バンクと、
少なくとも一つの前記第２バンクと
を備え、
前記複数の前記第１バンクの前記第１ローカルメモリセルアレイの各々は、
前記第１ローカルビット線に接続可能な最大数のメモリセルを備え、
前記少なくとも一つの前記第２バンクの前記第２ローカルメモリセルアレイは、
前記第１ローカルメモリセルアレイと異なる個数のメモリセルを備える
半導体記憶装置。
【請求項６】
請求項５に記載の半導体記憶装置において、
前記複数の前記第１バンクの前記第１ローカルセンスアンプの各々は、
前記最大数に基づいて最適設計された性能を有し、
前記第２ローカルセンスアンプは、
前記第１ローカルメモリセルアレイと異なる個数のメモリセル数に基づいて最適設計された性能を有する
半導体記憶装置。
【請求項７】
階層化されたビット線を有する複数のバンクを有するコンパイルドＳＲＡＭマクロの設計方法であって、
（ａ）設計対象のコンパイルドＳＲＡＭマクロのマクロスピードとマクロ構成とを特定するステップと、
（ｂ）前記複数のバンクに含まれるマクロセルの数と前記マクロスピードとに基づいて、ローカルセンスアンプの性能を特定するステップと、
（ｃ）前記ローカルセンスアンプが前記コンパイルドＳＲＡＭマクロに配置される位置を特定するステップと、
（ｄ）前記位置に基づいて前記ローカルセンスアンプの性能を決定するステップと
を具備する
コンパイルドＳＲＡＭマクロの設計方法。
【請求項８】
請求項７に記載のコンパイルドＳＲＡＭマクロの設計方法において、
前記（ｂ）ステップは、
前記複数のバンクに含まれるマクロセルの数と前記マクロスピードとの対応を示すローカルセンスアンプ選択用テーブルを参照して、面積の異なる複数のローカルセンスアンプのうちのひとつを選択して前記ローカルセンスアンプの性能を特定するステップを含む
コンパイルドＳＲＡＭマクロの設計方法。
【請求項９】
請求項８に記載のコンパイルドＳＲＡＭマクロの設計方法において、
前記（ｄ）ステップは、
前記複数のバンクに含まれるマクロセルの数と前記位置との対応を示す補正用データテーブルを参照して、前記ローカルセンスアンプの性能を特定するステップを含む
コンパイルドＳＲＡＭマクロの設計方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体記憶装置に関し、特に、メモリセルアレイがビット線方向に複数のバンク（ローカルブロック）に分割されたビット線階層構造を有する半導体記憶装置に関する。
【背景技術】
【０００２】
システムＬＳＩなどに搭載されるメモリマクロセルの設計期間を短縮し、設計の煩雑さを緩和するための技術として、コンパイルド方式と呼ばれる設計技術が知られている（例えば、特許文献１、２参照）。
【０００３】
特許文献１には、回路規模を増大させることなく付加的な機能を追加するコンパイラブルメモリマクロを構成するための方法が開示されている。また特許文献２には、システムＬＳＩに含まれる半導体記憶回路のレイアウト面積を小さくすることによってシステムＬＳＩをより小型化できる、半導体記憶回路に関する技術が開示されている。
【０００４】
コンパイルド方式では、ビット・ワードなどの構成を指定することにより、ワード×ビットの範囲に応じて、メモリマクロが自動生成される。コンパイルド方式によるメモリマクロの設計方法は、ＳＲＡＭ（Ｓｔａｔｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）のようなメモリマクロの設計コストの低減に役立つ。
【０００５】
また、ＳＲＡＭ（Ｓｔａｔｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）の高速化、低電圧化、低電力化を可能とする技術として、ビット線階層方式が提案されている。このビット線階層方式を用いたＳＲＡＭでは、列方向に沿って配置された複数のメモリセルが、複数のバンク（ローカルブロック）ごとにグループ化され、各バンク単位でのデータの入出力を行う機能を備えている。複数のバンクの各々は、ローカルメモリセルアレイと、ローカルビット線と、ローカルセンスアンプとを備えている。
【０００６】
ビット線階層方式を用いたＳＲＡＭは、各バンクにまたがって設けられたグローバルビット線と、そのグローバルビット線を介してデータの入出力を行うグローバルセンスアンプとを備えている。
【０００７】
ビット線階層方式を用いたＳＲＡＭでは、ビット線の長さを短くしてビット線容量を減少させた複数のローカルビット線が、それぞれ複数のローカルセンスアンプに接続されている。このローカルセンスアンプが、データを増幅してグローバルビット線にデータを送る。そして、グローバルビット線に接続されているグローバルセンスアンプによってデータを確定している。ビット線階層方式を用いたＳＲＡＭでは、このような２段階のビット線／センスアンプによって、セルのデータの読み出し／書き込みを実行している。
【０００８】
このようにビット線を階層化することで、各ビット線の容量が削減できるため、セル電流を低減することができる。特許許文献３、４には、この階層ビット線方式を用いたＳＲＡＭの一例が開示されている。特許文献３には、ビット線階層方式を用いたＳＲＡＭにおけるバンク制御回路と隣接セルのウェルを共通による面積を削減する技術が記載されている。また、特許文献４には、高速化のために同期式差動型ローカル／グローバルセンスアンプを使用したビット線階層方式を用いたＳＲＡＭにおけるセンスアンプ活性化タイミング最適化技術が記載されている。
【０００９】
上述のようなビット線階層方式を用いたＳＲＡＭでは、ビット線を階層化することで、各ビット線の容量が削減できる。そのため、ＳＲＡＭの高速動作が可能になる。ビット線階層方式を用いたＳＲＡＭでは、ローカルセンスアンプやバンク選択回路などの制御回路の追加が必要である。このオーバーヘッドによる面積増加を抑えることが重要である。
【００１０】
ビット線階層方式を用いたＳＲＡＭにおいて、記憶容量を特定したとき、一つのバンクに含まれるメモリセルの数を増加させるとバンク数が減少する。バンク数が減少すると、ＳＲＡＭ全体での動作速度は遅くなる。また、一つのバンクに含まれるメモリセルの数が減少すると、バンク数が増加する。バンク数が増加すると、ローカルセンスアンプやバンク選択回路などの制御回路の数も増加するため、ＳＲＡＭ全体の面積が大きくなる。
【００１１】
したがって、要求される動作速度を満たし、かつ、各バンクのローカルビット線の長さを等しくする（ビット線を等分割する）ことで、各バンクのメモリセルの数が均等になり、最適なバンク構成を実現することができる。このように、ビット線階層方式を用いたＳＲＡＭの特定サイズマクロの最適設計を行う場合は、ビット線を等分割するバンク構成で設計することが好ましい。
【先行技術文献】
【特許文献】
【００１２】
【特許文献１】特開２００９−８１４１８号公報
【特許文献２】特開２００６−２６８９０５号公報
【特許文献３】特開２００８−６６７４４号公報
【特許文献４】特開２００８−１９８２４３号公報
【発明の概要】
【発明が解決しようとする課題】
【００１３】
ビット線階層方式を用いたＳＲＡＭの設計を、コンパイルド方式によって実現する場合、指定可能な最大サイズのＳＲＡＭマクロの要求される動作速度を満たし、かつ、各バンクのローカルビット線の長さを等しくするようなバンク構成であることが好ましい。
このとき、各バンクの制御回路の各々にローカルセンスアンプが配置される。ローカルセンスアンプの遅延は、グローバルビット線遅延最大となる遠端バンクの特性に合わせて決める必要がある。そのため、遠近端遅延差が拡大するバンク数が大きいマクロ構成ほど、近端側のローカルセンスアンプ面積のオーバーヘッドが増加する。
【課題を解決するための手段】
【００１４】
以下に、［発明を実施するための形態］で使用される番号を用いて、［課題を解決するための手段］を説明する。これらの番号は、［特許請求の範囲］の記載と［発明を実施するための形態］との対応関係を明らかにするために付加されたものである。ただし、それらの番号を、［特許請求の範囲］に記載されている発明の技術的範囲の解釈に用いてはならない。
【００１５】
メモリセルアレイ（２）と、メモリセルアレイ（２）に配置されるメモリセルの動作を制御するドライバ回路（３）（４）と、メモリセルアレイ（２）に配置され、第１方向に沿って延伸するグローバルビット線（３８）とを具備する半導体記憶装置（コンパイルＳＲＡＭマクロ）を構成する。ここで、メモリセルアレイ（２）は、第１ローカルメモリセルアレイ（６ａ）と第１ローカルメモリセルアレイ（７ａ）とを備える第１バンク（５ａ）と、第２ローカルメモリセルアレイ（６ｂ）と第２ローカルセンスアンプ（７ｂ）とを備え、第１方向に沿って第１バンク（５ａ）に並んで配置される第２バンク（５ｂ）とを含むものとする。その第１ローカルメモリセルアレイ（７ａ）は、第１ローカルメモリセルアレイ（６ａ）に含まれるメモリセルの数、または、第１ローカルメモリセルアレイ（７ａ）からドライバ回路（３）（４）までの距離に基づいて最適設計された性能を有することが好ましい。また、その第２ローカルセンスアンプ（７ｂ）は、第２ローカルメモリセルアレイ（６ｂ）に含まれるメモリセルの数、または、第２ローカルセンスアンプ（７ｂ）からドライバ回路（３）（４）までの距離に基づいて最適設計された性能を有することが好ましい。
【発明の効果】
【００１６】
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば、コンパイルドメモリマクロに対する小面積化に有効な技術を提供できるという効果がある。
【図面の簡単な説明】
【００１７】
【図１】図１は、第１実施形態のコンパイルドＳＲＡＭマクロ１の構成を例示するブロック図である。
【図２】図２は、本実施形態の半導体装置設計支援システム４１の構成を例示するブロック図である。
【図３】図３は、ローカルセンスアンプ選択用テーブル５３の構成を例示するブロック図である。
【図４】図４は、補正用データテーブル５４の構成を例示するブロック図である。
【図５】図５は、本実施形態のコンパイルドＳＲＡＭマクロ１に適用可能なローカルセンスアンプの構成を例示する回路図である。
【図６】図６は、コンパイルドＳＲＡＭマクロ１を構成するための全体的な動作を例示するフローチャートである。
【図７】図７は、上述の図６におけるステップＳ１０１の詳細な動作を例示するフローチャートである。
【図８】図８は、上述の図６におけるステップＳ１０２の詳細な動作を例示するフローチャートである。
【図９Ａ】図９Ａは、本実施形態のコンパイルドＳＲＡＭマクロ１の詳細な構成を例示する回路図である。
【図９Ｂ】図９Ｂは、本実施形態のコンパイルドＳＲＡＭマクロ１の詳細な構成を例示する回路図である。
【図９Ｃ】図９Ｃは、本実施形態のコンパイルドＳＲＡＭマクロ１の詳細な構成を例示する回路図である。
【図１０】図１０は、本実施形態のローカルセンスアンプの他の構成を例示する回路図である。
【図１１Ａ】図１１Ａは、第２実施形態のコンパイルドＳＲＡＭマクロ１の詳細な構成を例示する回路図である。
【図１１Ｂ】図１１Ｂは、第２実施形態のコンパイルドＳＲＡＭマクロ１の詳細な構成を例示する回路図である。
【図１１Ｃ】図１１Ｃは、第２実施形態のコンパイルドＳＲＡＭマクロ１の詳細な構成を例示する回路図である。
【発明を実施するための形態】
【００１８】
［第１実施形態］
以下、本発明の実施の形態を図面に基づいて説明する。なお、実施の形態を説明するための図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。
【００１９】
図１は、第１実施形態のコンパイルドＳＲＡＭマクロ１の構成を例示するブロック図である。以下に述べる実施形態では、コンパイルドＳＲＡＭマクロ１がビット線階層方式を用いたＳＲＡＭである場合を例示する。本実施形態におけるコンパイルドＳＲＡＭマクロ１は、コンパイラを使用して設計することが可能であり、コンパイラブルメモリマクロとして提供される。
【００２０】
図１に示されているように、メモリセルアレイ２と、ワード線１８を駆動するＹドライバ４と、グローバルビット線３８を駆動するＸドライバ３とを備えている。そのメモリセルアレイ２には、複数のバンク５が配置されている。その複数のバンク５の各々は、行列状に配置された複数のメモリセル１１を有するローカルセルアレイ６と、そのローカルセルアレイ６のメモリセル１１に対するデータの入出力を制御するバンク制御回路７とを備えている。
【００２１】
図１に例示されているコンパイルドＳＲＡＭマクロ１では、複数のバンク５の各々に配置されたローカルビット線１９は、それロウ方向に等分割されている。また、各バンク５のローカルセルアレイ６は、設計段階において、ユーザの指定に対応してメモリセル１１の数を可変にすることができる。また、各バンク５のバンク制御回路７は、ローカルセンスアンプ８ａを含む仲介回路８や、プリチャージ回路、バンク選択回路、センス活性化回路などを含んでいる。
【００２２】
Ｘドライバ３が駆動するグローバルビット線３８は、全てのバンク５に接続されている。そのＸドライバ３は、グローバルビット線３８を選択するカラム選択回路、カラム選択回路に繋がるプリチャージ回路、グローバルセンスアンプ、ライト回路などを含んでいる。
【００２３】
Ｙドライバ４が駆動するワード線１８は、全てのバンク５に接続されている。そのＹドライバ４は、ロウデコーダ、ワード線バッファ、バンクデコーダ、カラムデコーダ、グローバルセンス活性化回路などを含んでいる。
【００２４】
コンパイルドＳＲＡＭマクロ１が動作するときには、データの読み出しの場合、Ｙドライバ４で特定のワード線１８が活性化され、それによって、１つのロウのセルの選択が行われる。一定時間後に、仲介回路８のローカルセンスアンプ８ａが活性化されてローカルビット線１９を介して受け取ったデータを増幅する。その後、バンクが選択されグローバルビット線３８に選択されたバンクのセルデータが伝達される。さらに、バンクの選択から一定時間後に、Ｘドライバ３のグローバルセンスアンプが活性され、選択されたグローバルビット線データが増幅され読み出される。データの書き込みの場合、Ｘドライバ３内のライト回路からのデータが、選択されたグローバルビット線に供給される。そのデータは、バンクに送られたのち、メモリセル１１に書き込まれる。
【００２５】
上述のように、本実施形態のコンパイルドＳＲＡＭマクロ１は、コンパイラを有するコンピュータを使用して設計され、コンパイルドメモリマクロとして提供される。ビット線階層方式を用いたＳＲＡＭにおいて、ローカルセンスアンプに要求される性能は、バンク内のセル数とそのＳＲＡＭマクロに要求されるスピードにより異なる。また、セル数が同じバンクであっても、そのバンクが配置される位置によって、グローバルビット線遅延が変化する。そのため、ローカルセンスアンプに要求される性能は、そのバンクが配置される位置によって異なる。
【００２６】
図２は、本実施形態のコンパイルドＳＲＡＭマクロ１の設計を支援する半導体装置設計支援システム４１の構成を例示するブロック図である。半導体装置設計支援システム４１は、面積を最適化したローカルセンスアンプを有するコンパイルドＳＲＡＭマクロ１を設計する機能を備えている。具体的には、本実施形態の半導体装置設計支援システム４１は、ビット線階層構造を有するコンパイルドＳＲＡＭマクロ作成において、バンクセル構成とマクロスピードに応じて、面積を最適化したローカルセンスアンプを構築するためのデータを備えている。
【００２７】
図２を参照すると、半導体装置設計支援システム４１は、情報処理装置４２と、入力装置４３と、出力装置４４とを備えている。入力装置４３は、マウスやキーボードなどに代表されるマンマシンインターフェースである。入力装置４３は、ユーザの操作に応答して、情報処理装置４２へデータを入力する。出力装置４４は、液晶ディスプレイやプリンターなどに代表されるマンマシンインターフェースである。出力装置４４は、情報処理装置４２の処理結果を、ユーザに認識できる形式で出力する。
【００２８】
情報処理装置４２は、演算処理装置４５と、記憶装置４６と、通信処理装置４７とを備え、それらは、バス４８を介して接続されている。
【００２９】
演算処理装置４５は、情報処理装置４２に備えられた各種装置の制御やデータ処理を実行する。演算処理装置４５は、情報処理装置４２が入力装置４３を介して受け取ったデータを解釈して演算し、その演算結果を出力装置４４などで出力する。記憶装置４６は、ＲＡＭやハードディスクなどに代表されるデータを記憶するための装置である。通信処理装置４７は、外部ネットワークと情報処理装置４２とを接続する。
【００３０】
上述の記憶装置４６は、ＥＤＡツール５１と、ライブラリ５２とを保持している。ＥＤＡツール５１は、半導体集積回路の設計を、コンピュータシステムを用いて自動的に行うためのソフトウェアである。なお、本実施形態のＥＤＡツール５１は、ハードウェアとして構成されていても良い。
【００３１】
ライブラリ５２は、コンパイルドＳＲＡＭマクロ１を設計するために必要な情報を保持している。本実施形態のライブラリ５２は、ローカルセンスアンプ選択用テーブル５３と補正用データテーブル５４とを備えている。ローカルセンスアンプ選択用テーブル５３は、面積を最適化したローカルセンスアンプを選択するための情報を示すテーブルである。また、補正用データテーブル５４は、選択されたローカルセンスアンプを補正するための情報を示すテーブルである。
【００３２】
半導体装置設計支援システム４１は、要求されたワード数とスピードから、そのテーブルを参照して適切なバンク構成（バンクセル数などに応じたローカルセンスアンプ）を選択する。これによって、ビット線階層構造を有するコンパイルドＳＲＡＭマクロ作成において、面積オーバーヘッドを最適化させてマクロを生成することができる。また、半導体装置設計支援システム４１は、指定されたプロセスパラメータにより、そのテーブル（ローカルセンスアンプ選択用テーブル５３、補正用データテーブル５４）を適切に構築するための機能を有している。
【００３３】
図３は、ローカルセンスアンプ選択用テーブル５３の構成を例示するブロック図である。図３は、バンクのセル数を、ｎ１（セル数少）、ｎ２（セル数中）、ｎ３（セル数多）の何れかから選択可能なコンパイルドＳＲＡＭマクロ１に対応している。また、図３は、マクロスピードを、Ｆ１（低速）、Ｆ２（中速）、Ｆ３（高速）の何れかから選択可能なコンパイルドＳＲＡＭマクロ１に対応している。
【００３４】
図４は、補正用データテーブル５４の構成を例示するブロック図である。図４は、バンクのセル数を、ｎ１（セル数少）、ｎ２（セル数中）、ｎ３（セル数多）の何れかから選択可能なコンパイルドＳＲＡＭマクロ１に対応している。また、図４は、バンクの位置を、Ｄ１（近距離）、Ｄ２（中距離）、Ｄ３（遠距離）の何れかに配置された時の、ローカルセンスアンプの性能の補正するための情報を示している。
【００３５】
図５は、本実施形態のコンパイルドＳＲＡＭマクロ１に適用可能なローカルセンスアンプの構成を例示する回路図である。半導体装置設計支援システム４１は、要求されるマクロスピードに対応する複数のローカルセンスアンプのデータを備えている。そのローカルセンスアンプのデータは、図５に示す基準となるローカルセンスアンプ８ａを構成している各トランジスタのサイズを調整することで作成されている。
【００３６】
異なる面積のローカルセンスアンプの各々は、最小センス差電位を決めるトランジスタ２０７のサイズを変更することで、センス活性化信号線３９から送られるセンス信号に応答した活性化タイミングの調整が行われている。また、トランジスタ２０８のサイズを変更することで、グローバルビット線遅延時間の調整が行われている。また、トランジスタ２０７とトランジスタ２０９のサイズを変更することで、増幅時間（センスマージン）の調整が行われている。
【００３７】
以下に、本実施形態のコンパイルドＳＲＡＭマクロ１を構成するための動作について説明を行う。図６は、コンパイルドＳＲＡＭマクロ１を構成するための全体的な動作を例示するフローチャートである。図６に示されているように、本実施形態のコンパイルドＳＲＡＭマクロ１を構成する場合、ステップＳ１０１において、ローカルセンスアンプを選択するためのデータを作成する。具体的には、上述のローカルセンスアンプ選択用テーブル５３、補正用データテーブル５４を作成する。その後、ステップＳ１０２において、そのローカルセンスアンプ選択用テーブル５３、補正用データテーブル５４に基づいて選択されたローカルセンスアンプを適用したコンパイルドＳＲＡＭマクロ１を構成する。
【００３８】
図６に示される動作は、一連の流れで本実施形態のコンパイルドＳＲＡＭマクロ１を構成する場合の動作を例示している。本実施形態のコンパイルドＳＲＡＭマクロ１を構成する場合において、予め上述のローカルセンスアンプ選択用テーブル５３、補正用データテーブル５４を作成する工程と、コンパイルドＳＲＡＭマクロ１を作成する工程とが別々であってもよい。
【００３９】
図７は、上述の図６におけるステップＳ１０１の詳細な動作を例示するフローチャートである。ステップＳ２０１において、設計対象のコンパイルドＳＲＡＭマクロ１のプロセスパラメータを入力する。ステップＳ２０２において、入力されたプロセスパラメータに基づいて、設計対象のコンパイルドＳＲＡＭマクロ１のローカルビット線の遅延量を計算する。ステップＳ２０３において、設計対象のコンパイルドＳＲＡＭマクロ１のローカルセンスアンプの遅延量を計算する。ステップＳ２０４において、設計対象のコンパイルドＳＲＡＭマクロ１のグローバルビット線の遅延量を計算する。ステップＳ２０５において、計算によって求めたローカルビット線の遅延量、ローカルセンスアンプの遅延量およびグローバルビット線の遅延量に基づいて、ローカルセンスアンプ選択用テーブル５３と補正用データテーブル５４とを構成する。
【００４０】
図８は、上述の図６におけるステップＳ１０２の詳細な動作を例示するフローチャートである。ステップＳ３０１において、設計対象のコンパイルドＳＲＡＭマクロ１のマクロ構成データと、マクロスピードデータとを入力する。ステップＳ３０２において、作成したローカルセンスアンプ選択用テーブル５３を参照して、最大バンクセル数（ｎ１〜ｎ３）とマクロスピード（Ｆ１〜Ｆ３）から、最適なローカルセンスアンプ（最適ローカルセンスアンプ）を選択する。ステップＳ３０３において、マクロワード数に基づいて、最適ローカルセンスアンプを有するバンクの数を特定する。その最適ローカルセンスアンプを有するバンクに対し、バンク位置に応じた補正を行い、補正ローカルセンスアンプを構成する。
【００４１】
ステップＳ３０４において、すべてのバンク内のマクロセル数が同じか否かの判断を実行する。ステップＳ３０５において、上述の判断に基づいて、半端となるバンク（特定セル数バンク）があると判断された場合は、ローカルセンスアンプ選択用テーブル５３を参照して、最適なローカルセンスアンプを選択する。ステップＳ３０６において、選択したローカルセンスアンプを有する各バンクと、周辺回路の配置を決定する。ステップＳ３０７において、コンパイルドＳＲＡＭマクロ作成する。上述の動作によって、特定セル数バンクの有無にかかわらず、最大バンクにはバンク位置の対応した最適なローカルセンスアンプを配置することが可能となる。
【００４２】
以下に、本実施形態のコンパイルドＳＲＡＭマクロ１の詳細な構成について説明を行う。図９Ａ、図９Ｂおよび図９Ｃは、本実施形態のコンパイルドＳＲＡＭマクロ１の詳細な構成を例示する回路図である。図９Ａ〜図９Ｃには、マクロスピードがＦ２であり、ワード数がＷであるコンパイルドＳＲＡＭマクロ１の構成を例示している。ここにおいて、Ｒｏｗセル数Ｒ＝ワード数Ｗ＊カラム数となるものとする。図９Ａは、コンパイルドＳＲＡＭマクロ１のＸドライバ３に対応する部分の構成を例示している。図９Ｂは、コンパイルドＳＲＡＭマクロ１の最適セル数バンク５ａを含む領域の構成を例示している。図９Ｃは、コンパイルドＳＲＡＭマクロ１の特定セル数バンク５ｂを含む領域の構成を例示している。
【００４３】
図９Ａ〜図９Ｃを参照すると、Ｘドライバ３には、カラム選択回路３１と、プリチャージ３２と、グローバルセンスアンプ３３と、ライト回路３４と、センス回路３５とが備えられている。また、Ｙドライバ４は、バンクデコーダ３６と、ロウデコーダ１６と、バッファ１７とが備えられている。
最適セル数バンク５ａは、ローカルセルアレイ６ａと最適セル数バンク制御回路７ａとを備えている。ローカルセルアレイ６ａは、複数（個数ｎ３）のメモリセル１１と、ローカルビット線１９とワード線１８を備えている。また、最適セル数バンク制御回路７ａは、ローカルセンスアンプ１３と、バンク選択回路１４と、センス活性化回路１５と、バンク選択信号線３７と、センス活性化信号線３９を備えている。
特定セル数バンク５ｂは、ローカルセルアレイ６ｂと特定セル数バンク制御回路７ｂを備えている。複数（個数ｎ１）のメモリセル１１と、ローカルビット線１９とワード線１８を備えている。また、最適セル数バンク制御回路７ｂは、プリチャージ１２と、第８ローカルセンスアンプ２３と、バンク選択回路１４と、センス活性化回路１５と、バンク選択信号線３７と、センス活性化信号線３９とを備えている。
【００４４】
ローカルセルアレイ６ａは、ロウ方向の個数がｎ３になるように配置されたメモリセル１１を備えている。ローカルセンスアンプ選択用テーブル５３を参照すると、スピードＦ２を満足するセル数ｎ３のバンクに最適なローカルセンスアンプは、第２ローカルセンスアンプ１３である。そのため、最適セル数バンク５ａの最適セル数バンク制御回路７ａには、ローカルセンスアンプ１３が配置される。
【００４５】
ローカルセルアレイ６ｂは、ロウ方向の個数がｎ１になるように配置されたメモリセル１１を備えている。ローカルセンスアンプ選択用テーブル５３を参照すると、スピードＦ２を満足するセル数ｎ１のバンクに最適なローカルセンスアンプは、第８ローカルセンスアンプ２３である。そのため、特定セル数バンク５ｂの特定セル数バンク制御回路７ｂには、第８ローカルセンスアンプ２３が配置される。
【００４６】
図９Ａ〜図９Ｃに示されているように、コンパイルドＳＲＡＭマクロ１は、複数の最適セル数バンク５ａを備えている。そのため、各最適セル数バンク制御回路７ａのローカルセンスアンプ１３は、補正用データテーブル５４に示されているように、セル数ｎ３とバンク位置とに基づいて、位置に対応した補正（図４に示されるｎＤ３１〜ｎＤ３３に基づいた補正）が行われている。
【００４７】
図１０は、本実施形態のローカルセンスアンプの他の構成を例示する回路図である。図１０の（ａ）、（ｂ）は、低速化して面積を縮小した場合のローカルセンスアンプ８ａの構成を例示している。図１０の（ａ）を参照すると、そのローカルセンスアンプ８ｂは、ローカルビット線１９を入力とするインバータ３０４と、そのインバータ３０４の出力、およびバンク選択信号線３７から考究される信号を入力とする２段縦積みのＮＭＯＳ３０５、３０６で構成されている。ローカルビット線１９のデータは、インバータ３０４により増幅される。バンクの選択が行われると、そのデータは縦積みＮＭＯＳ３０５、３０６を介してグローバルビット線３８に伝達する。ローカルビット線遅延の減少から、センスをインバータによる論理判定とすることで、差動センスでの相対精度制約を受けずにＮＭＯＳ３０６を縮小することができる。さらに、センス活性化信号も不要になるので、グローバルビット線３８への信号伝達開始を早めることで、ＮＭＯＳ３０５も縮小可能である。
【００４８】
図１０の（ｂ）を参照すると、そのローカルセンスアンプ８ｃは、ドレイン・ソースにローカルビット線１９と、グローバルビット線３８とが接続され、ゲートにバンク選択信号線３７が接続されたＰＭＯＳ３０８により構成されている。ローカルビット線１９のデータは、バンク選択信号により活性化したＰＭＯＳ３０５を介してグローバルビット線３８へ伝達する。差動センスを行うグローバルビット線への伝達電位は、ＶＤＤから数百ｍＶで充分なため、ＰＭＯＳのみの伝達トランジスタでＧＮＤレベルが伝達できなくとも問題ない。この回路は、センス能力は低いが、トランジスタ数削減で面積を大幅に縮小することができる。また、どちらの回路も非同期動作となるため、センス活性化回路削減により制御回路面積を小さくすることができる。
【００４９】
［第２実施形態］
以下に、本願発明の第２実施形態について説明を行う。以下に述べる第２実施形態では、複数のバンク５のローカルセルアレイ６の各々に、同数のメモリセル１１が配置されている場合のコンパイルドＳＲＡＭマクロ１について説明を行う。図１１Ａ、図１１Ｂおよび図１１Ｃは、第２実施形態のコンパイルドＳＲＡＭマクロ１の詳細な構成を例示する回路図である。図１１Ａ〜図１１Ｃに示されているように、コンパイルドＳＲＡＭマクロ１に配置されている複数のバンク５のバンク制御回路７は、Ｘドライバ３からの距離に応じて補正されたローカルセンスアンプ６１とローカルセンスアンプ６２とを備えている。
【００５０】
スピードにより面積の異なる複数のローカルセンスアンプを選択するときに、各バンクのセル数が同じ場合、マクロスピードに基づいて選択される最適なローカルセンスアンプは、初期状態で同じ構成である。その最適なローカルセンスアンプをバンク位置に基づいてさらに補正することで、ビット線階層構造のコンパイル型マクロを構成するバンクに、バンクセル数またはバンク位置に応じて縮小したローカルセンスアンプを備える制御回路を構成することができる。これによって、コンパイル範囲全体での面積（階層化によるオーバーヘッド）を最適化することが可能となる。
【００５１】
なお、ビット線の等分割によるバンク構成を維持すると、ワード数ステップは、このバンク単位となる。特定バンクのセル数を減少させることによって、コンパイル時に所望のワード数ステップを実現することができる。このバンクではセルアレイ占有率が低下した場合であっても、ビット線階層方式を用いたＳＲＡＭのコンパイル化において、コンパイル範囲全体での面積（階層化によるオーバーヘッド）を最適化することが可能となる。
【００５２】
以上、本願発明の実施の形態を具体的に説明した。本願発明は上述の実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。また、上述の複数の実施形態は、その構成・動作に矛盾が生じない範囲において組み合わせて実施することが可能である。
【符号の説明】
【００５３】
１…コンパイルドＳＲＡＭマクロ
２…メモリセルアレイ
３…Ｘドライバ
３ａ…Ｉ／Ｏ回路
４…Ｙドライバ
５…バンク
５ａ…最適セル数バンク
５ｂ…特定セル数バンク
６…ローカルセルアレイ
６ａ…ローカルセルアレイ
６ｂ…ローカルセルアレイ
７…バンク制御回路
７ａ…最適セル数バンク制御回路
７ｂ…特定セル数バンク制御回路
８…仲介回路
８ａ…ローカルセンスアンプ
８ｂ…ローカルセンスアンプ
８ｃ…ローカルセンスアンプ
１１…メモリセル
１２…プリチャージ
１３…第２ローカルセンスアンプ
１４…バンク選択回路
１５…センス活性化回路
１６…ロウデコーダ
１７…バッファ
１８…ワード線
１９…ローカルビット線
２３…第８ローカルセンスアンプ
３１…カラム選択回路
３２…プリチャージ
３３…グローバルセンスアンプ
３４…ライト回路
３５…センス回路
３６…バンクデコーダ
３７…バンク選択信号線
３８…グローバルビット線
３９…センス活性化信号線
４１…半導体装置設計支援システム
４２…情報処理装置
４３…入力装置
４４…出力装置
４５…演算処理装置
４６…記憶装置
４７…通信処理装置
４８…バス
５１…ＥＤＡツール
５２…ライブラリ
５３…ローカルセンスアンプ選択用テーブル
５４…補正用データテーブル
６１…ローカルセンスアンプ
６２…ローカルセンスアンプ
３０４…インバータ
３０５…ＮＭＯＳ
３０６…ＮＭＯＳ
３０８…ＰＭＯＳ
【図１】
2012146371.tif 000003
【図２】
2012146371.tif 000004
【図３】
2012146371.tif 000005
【図４】
2012146371.tif 000006
【図５】
2012146371.tif 000007
【図６】
2012146371.tif 000008
【図７】
2012146371.tif 000009
【図８】
2012146371.tif 000010
【図９Ａ】
2012146371.tif 000011
【図９Ｂ】
2012146371.tif 000012
【図９Ｃ】
2012146371.tif 000013
【図１０】
2012146371.tif 000014
【図１１Ａ】
2012146371.tif 000015
【図１１Ｂ】
2012146371.tif 000016
【図１１Ｃ】
2012146371.tif 000017