(57)【要約】  各メモリブロックは、少なくとも１本のワード線で構成されたワード線グループ、メモリセルおよびビット線を有する。デコーダ部は、アクセスされるメモリブロックに対応する接続制御部を選択するとともに、ワード線グループのいずれかを選択するためにアドレス信号をデコードする。デコーダ部の論理は、メモリブロックおよび接続制御部を識別するためのアドレス信号のビットを、ワード線グループを識別するためのアドレス信号のビットより下位に割り当てることにより構成されている。これにより、メモリブロックに配置されるワード線の数を互いに等しくでき、ビット線の長さを短くできる。この結果、ビット線の配線遅延を最小限にでき、コンパイルドメモリのアクセスタイムを短縮できる。
2008072354.tif 000002
【特許請求の範囲】
【請求項１】
機能ブロックとともにチップ内に形成され、機能ブロックによりアクセスされるコンパイルドメモリであって、
少なくとも１本のワード線で構成されたワードグループと、ワード線に接続されたメモリセルと、各メモリセルに接続されたビット線とを各々有する一対のメモリブロックと、
前記ビット線を介して前記メモリセルにデータ信号を入出力するデータ制御部と、
前記各メモリブロックの前記ビット線をデータ制御部に選択的に接続するために、前記メモリブロックに対応してそれぞれ設けられる接続制御部と、
アクセスされるメモリブロックに対応する接続制御部を選択するとともに、前記ワードグループのいずれかを選択するためにアドレス信号をデコードするデコーダ部とを備え、
前記デコーダ部の論理は、前記メモリブロックおよび前記接続制御部を識別するためのアドレス信号のビットを、前記ワードグループを識別するための前記アドレス信号のビットより下位に割り当てることにより構成されていることを特徴とするコンパイルドメモリ。
【請求項２】
請求項１記載のコンパイルドメモリにおいて、
前記各ワードグループは、複数のワード線で構成され、
前記デコーダ部の論理は、前記各ワードグループ内のワード線を識別するための前記アドレス信号のビットを、前記メモリブロックを識別するための前記アドレス信号のビットより下位に割り当てることにより構成されていることを特徴とするコンパイルドメモリ。
【請求項３】
請求項１記載のコンパイルドメモリにおいて、
前記一対のメモリブロックで構成される複数のメモリユニットとを備えていることを特徴とするコンパイルドメモリ。
【請求項４】
請求項１記載のコンパイルドメモリにおいて、
前記データ制御部は、前記接続制御部を介して前記メモリブロックのビット線に接続される共通のセンスアンプを備えていることを特徴とするコンパイルドメモリ。
【請求項５】
請求項１記載のコンパイルドメモリにおいて、
前記メモリブロックのいずれかは、前記メモリセルのアクセス要求に応答して所定の論理値を示すダミーデータ信号を出力するダミーメモリセルと、ダミーメモリセルに接続されたダミービット線とを備え、
前記データ制御部において、前記メモリセルからの読み出しデータ信号を処理する回路は、前記ダミーデータ信号の出力タイミングに同期して動作を開始することを特徴とするコンパイルドメモリ。
【請求項６】
請求項５記載のコンパイルドメモリにおいて、
前記データ制御部は、前記接続制御部を介して前記メモリブロックのビット線に接続される共通のセンスアンプを備え、
前記センスアンプは、前記ダミーデータ信号の出力タイミングに同期して動作を開始することを特徴とするコンパイルドメモリ。
【請求項７】
機能ブロックと、機能ブロックによりアクセスされるコンパイルドメモリとを有するＡＳＩＣチップであって、
前記コンパイルドメモリは、
少なくとも１本のワード線で構成されたワードグループと、ワード線に接続されたメモリセルと、各メモリセルに接続されたビット線とを各々有する一対のメモリブロックと、
前記ビット線を介して前記メモリセルにデータ信号を入出力するデータ制御部と、
前記各メモリブロックの前記ビット線をデータ制御部に選択的に接続するために、前記メモリブロックに対応してそれぞれ設けられる接続制御部と、
アクセスされるメモリブロックに対応する接続制御部を選択するとともに、前記ワードグループのいずれかを選択するためにアドレス信号をデコードするデコーダ部とを備え、
前記デコーダ部の論理は、前記メモリブロックおよび前記接続制御部を識別するためのアドレス信号のビットを、前記ワードグループを識別するための前記アドレス信号のビットより下位に割り当てることにより構成されていることを特徴とするＡＳＩＣチップ。
【請求項８】
請求項７記載のＡＳＩＣチップにおいて、
前記各ワードグループは、複数のワード線で構成され、
前記デコーダ部の論理は、前記各ワードグループ内のワード線を識別するための前記アドレス信号のビットを、前記メモリブロックを識別するための前記アドレス信号のビットより下位に割り当てることにより構成されていることを特徴とするＡＳＩＣチップ。
【請求項９】
請求項７記載のＡＳＩＣチップにおいて、
前記一対のメモリブロックで構成される複数のメモリユニットとを備えていることを特徴とするコンパイルドメモリ。
【請求項１０】
請求項７記載のＡＳＩＣチップにおいて、
前記データ制御部は、前記接続制御部を介して前記メモリブロックのビット線に接続される共通のセンスアンプを備えていることを特徴とするＡＳＩＣチップ。
【請求項１１】
請求項７記載のＡＳＩＣチップにおいて、
前記メモリブロックのいずれかは、前記メモリセルのアクセス要求に応答して所定の論理値を示すダミーデータ信号を出力するダミーメモリセルと、ダミーメモリセルに接続されたダミービット線とを備え、
前記データ制御部において、前記メモリセルからの読み出しデータ信号を処理する回路は、前記ダミーデータ信号の出力タイミングに同期して動作を開始することを特徴とするコンパイルドメモリ。
【請求項１２】
請求項１１記載のＡＳＩＣチップにおいて、
前記データ制御部は、前記接続制御部を介して前記メモリブロックのビット線に接続される共通のセンスアンプを備え、
前記センスアンプは、前記ダミーデータ信号の出力タイミングに同期して動作を開始することを特徴とするＡＳＩＣチップ。
【請求項１３】
機能ブロックとともにチップ内に形成され、機能ブロックによりアクセスされるコンパイルドメモリのレイアウト方法であって、
データ信号のビット数と、メモリセルに接続されるワード線の数を示すワード数との入力を受け、
入力されたワード数が、メモリブロックに配置可能な最大のワード数を超える場合、指定されたワード数を、前記最大のワード数より小さくなるように均等に分配して、偶数個のメモリブロックのレイアウトデータを生成し、
前記メモリブロックを識別するためのアドレス信号のビットを、少なくとも１本のワード線で構成されるワードグループを識別するための前記アドレス信号のビットより下位に割り当てて、前記メモリブロックおよび前記ワード線を選択するためのデコーダ部の論理を生成し、
生成した論理にしたがって、前記デコーダ部内に配線されるデコード信号線の交差部に、配線を互いに接続するためのコンタクト部を配置することを特徴とするコンパイルドメモリのレイアウト方法。
【請求項１４】
請求項１３記載のコンパイルドメモリのレイアウト方法において、
互いに隣接する一対のメモリブロックの間にセンスアンプを配置し、
前記センスアンプと各メモリブロックとの間に、メモリブロック内に配線されるビット線を前記センスアンプに接続するためのスイッチを有する接続制御部を配置し、
前記メモリブロックを選択するためのデコーダの出力を前記スイッチの制御端子に接続することを特徴とするコンパイルドメモリのレイアウト方法。
【請求項１５】
請求項１３記載のコンパイルドメモリのレイアウト方法において、
前記ワード線は、複数のワード線で構成されるワードグループを１単位として配線され、
前記各ワードグループ内のワード線を識別するための前記アドレス信号のビットを、前記メモリブロックを識別するための前記アドレス信号のビットより下位に割り当てて、前記ワード線を選択するための前記デコーダ部の論理を生成し、
生成した論理にしたがって、前記コンタクト部を配置することを特徴とするコンパイルドメモリのレイアウト方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＡＳＩＣ等のチップ内に形成されるコンパイルドメモリおよびコンパイルドメモリのレイアウト方法に関する。
【背景技術】
【０００２】
ＡＳＩＣ（Application Specific IC）等のＬＳＩでは、ＡＳＩＣチップ内の機能ブロックによりアクセスされるＳＲＡＭ等のメモリが搭載される場合がある。この種のメモリは、ユーザのシステム仕様に応じて記憶容量を可変にできる場合が多い。ユーザにより指定される任意の記憶容量を有するメモリのレイアウトデータは、コンパイラ等のレイアウト設計ツールを用いて生成される。メモリ（マクロセル）は、任意のビット数およびワード数をコンパイラに入力することで自動的に生成される。コンパイラによって自動生成されるメモリは、コンパイルドメモリまたはコンパイルドと称される。【０００３】
一般に、ＳＲＡＭ等のメモリでは、データ信号を伝達するビット線に接続されるメモリセルの数が多いほど、ビット線の負荷容量および配線遅延は増加し、アクセス時間は長くなる。ビット線に接続されるメモリセルの数を減らし、アクセス時間を短縮するために、ビット線をローカルビット線とグローバルビット線で構成する手法（階層化されたビット線構造）が、提案されている（例えば、特許文献１参照）。この場合、ローカルビット線は、メモリセルアレイ内に配線され、メモリセルに直接接続される。グローバルビット線は、メモリセルアレイ上でローカルビット線に接続され、データの入出力回路に接続される。
【特許文献１】特開２００６−３２５７７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ローカルビット線は、メモリセルに対応して配線されるため、半導体基板に近い薄い配線層を用いて配線されるため、配線抵抗が高い。また、ローカルビット線は、多数のメモリセルに接続されるため、寄生容量が大きい。このため、ローカルビット線の長さがメモリのアクセス時間に与える影響は大きい。これに対して、グローバルビット線は、半導体基板から離れた厚い配線層を用いて配線されるため、配線抵抗が低い。グローバルビット線は、メモリセルに接続されないため、寄生容量は小さい。このため、グローバルビット線の長さがメモリのアクセス時間に与える影響は、ローカルビット線に比べて小さい。したがって、階層化されたビット線構造を有するメモリでは、アクセス時間を短縮するために、メモリセルに直接接続されるローカルビット線の長さを短くすることが重要である。【０００５】
本発明の目的は、メモリセルに接続されるビット線の長さを短くし、コンパイルドメモリのアクセス時間を短縮することである。特に、ＡＳＩＣチップ等のＬＳＩ内に形成されるコンパイルドメモリのアクセスタイムを短縮することである。
【課題を解決するための手段】
【０００６】
コンパイルドメモリは、一対のメモリブロック、データ制御部、接続制御部およびデコーダ部を有する。各メモリブロックは、少なくとも１本のワード線で構成されたワードグループと、ワード線に接続されたメモリセルと、各メモリセルに接続されたビット線とを有する。データ制御部は、ビット線を介してメモリセルにデータ信号を入出力する。接続制御部は、各メモリブロックのビット線をデータ制御部に選択的に接続するために、メモリブロックに対応してそれぞれ設けられる。デコーダ部は、アクセスされるメモリブロッ
クに対応する接続制御部を選択するとともに、ワードグループのいずれかを選択するためにアドレス信号をデコードする。デコーダ部の論理は、メモリブロックおよび接続制御部を識別するためのアドレス信号のビットを、ワードグループを識別するためのアドレス信号のビットより下位に割り当てることにより構成されている。例えば、各ワードグループが複数のワード線で構成される場合、デコーダ部の論理は、各ワードグループ内のワード線を識別するためのアドレス信号のビットを、メモリブロックを識別するためのアドレス信号のビットより下位に割り当てることにより構成される。これにより、メモリブロックに配置されるワード線の数を互いに等しくでき、ビット線の長さを短くできる。この結果、ビット線の配線遅延を最小限にでき、コンパイルドメモリのアクセスタイムを短縮できる。【０００７】
コンパイルドメモリは、次のようなレイアウト方法を用いてレイアウトデータが生成される。まず、データ信号のビット数と、メモリセルに接続されるワード線の数を示すワード数との入力を受ける。入力されたワード数が、メモリブロックに配置可能な最大のワード数を超える場合、指定されたワード数が、最大のワード数より小さくなるように均等に分配されて、偶数個のメモリブロックのレイアウトデータが生成される。次に、メモリブロックを識別するためのアドレス信号のビットが、ワードグループを識別するためのアドレス信号のビットより下位に割り当てられて、メモリブロックおよびワード線を選択するためのデコーダ部の論理が生成される。そして、生成された論理にしたがって、デコーダ部内に配線されるデコード信号線の交差部に、配線を互いに接続するためのコンタクト部が配置され、レイアウトデータが完成する。
【発明の効果】
【０００８】
本発明では、コンパイルドメモリのアクセス時間を短縮できる。
【図面の簡単な説明】
【０００９】
【図１】本発明の第１の実施形態を示すブロック図である。
【図２】図１に示したコンパイルドメモリのメインデコーダの詳細を示す回路図である。
【図３】図１に示したメモリブロックの詳細を示す回路図である。
【図４】本発明がなされる前のコンパイルドメモリの要部を示す回路図である。
【図５】本発明がなされる前に検討されたコンパイルドメモリの要部を示す回路図である。
【図６】コンパイルドメモリにレイアウトされるワード線の数とアクセスタイムの関係を示す説明図である。
【図７】第１の実施形態のコンパイルドメモリのレイアウト方法を示すフロー図である。
【図８】本発明の第２の実施形態におけるメインデコーダの詳細を示す回路図である。
【図９】本発明の第３の実施形態における要部の詳細を示す回路図である。
【図１０】本発明の第４の実施形態のコンパイルドメモリを示す回路図である。
【図１１】第４の実施形態のメインデコーダの論理を示す説明図である。
【図１２】第４の実施形態のコンパイルドメモリのレイアウト方法を示すフロー図である。
【図１３】本発明の第５の実施形態のコンパイルドメモリを示す回路図である。
【図１４】第５の実施形態のメインデコーダの論理を示す説明図である。
【図１５】本発明の第６の実施形態のコンパイルドメモリを示す回路図である。
【図１６】第６の実施形態のメインデコーダの論理を示す説明図である。
【発明を実施するための最良の形態】
【００１０】
以下、本発明の実施形態を図面を用いて説明する。図中、信号が伝達される信号線には、信号名と同じ符号を使用する。【００１１】
図１は、本発明の第１の実施形態を示している。コンパイルドメモリＣＭは、例えば、ＳＲＡＭコアであり、コントローラＣＮＴＬで使用するデータ等を保持するために、コントローラＣＮＴＬおよび周辺回路ＰＥＲＩ等の機能ブロックとともにＡＳＩＣチップ内に形成される。コンパイルドメモリＣＭは、ＣＰＵ等のコントローラＣＮＴＬによりアクセスされる。図では、分かりやすくするために、コンパイルドメモリを大きく描いている。実際のＡＳＩＣチップでは、図示した以外の多くの機能ブロックがチップ上に搭載される。ＡＳＩＣチップにより、単独でシステムが構成され、あるいは、他の半導体チップとともにシステムが構成される。【００１２】
コンパイルドメモリＣＭは、一対のメモリブロックＭＢＬＫ０−１、メモリブロックＭＢＬＫ０−１にそれぞれ対応する接続制御部ＣＣＮＴ０−１、メモリブロックＭＢＬＫ０−１に共有されるセンスアンプＳＡを有するセンスアンプ領域ＳＡＡ、メインデコーダＭＤ（デコーダ部）、データ入出力部Ｉ／Ｏおよびタイミング制御部ＣＰＧを有している。【００１３】
各メモリブロックＭＢＬＫ０−１のローカルビット線対ＬＢＬ、／ＬＢＬは、接続制御部ＣＮＴ０−１に形成されるカラムスイッチ（トランジスタ）を介してセンスアンプＳＡおよびグローバルビット線対ＧＢＬ、／ＧＢＬに接続される。グローバルビット線対ＧＢＬ、／ＧＢＬは、データ入出力部Ｉ／Ｏに接続される。ビット線をローカルビット線ＬＢＬ、／ＬＢＬとグローバルビット線ＧＢＬ、／ＧＢＬを用いて形成することにより（階層構造）、ローカルビット線ＬＢＬ、／ＬＢＬを短くでき、アクセスタイムを短縮できる。【００１４】
メインデコーダＭＤは、コントローラＣＮＴＬから出力されるアドレス信号ＡＤＲ（図２）をデコードし、デコード結果に応じてカラムスイッチをオンするためのカラム選択信号Ｃ０、Ｃ１を出力し、メモリブロックＭＢＬＫ０−１内に配線されるワード線ＷＬ（図２）を選択する。【００１５】
データ入出力部Ｉ／Ｏは、グローバルビット線対ＧＢＬ、／ＧＢＬ上の読み出しデータをＡＳＩＣチップのデータバスを介してコントローラＣＮＴＬに出力し、ＡＳＩＣチップのデータバスを介してコントローラＣＮＴＬから伝達される書き込みデータをグローバルビット線対ＧＢＬ、／ＧＢＬに出力する。センスアンプＳＡおよびデータ入出力部Ｉ／Ｏは、ビット線ＬＢＬ、／ＬＢＬ、ＧＢＬ、／ＧＢＬを介してメモリブロックＭＢＬＫ０−１のメモリセルＭＣ（図３）にデータ信号を伝達するデータ制御部として動作する。タイミング制御部ＣＰＧは、コンパイルドメモリＣＭをアクセスするためにコントローラＣＮＴＬから出力されるアクセスコマンドに応じて、メインデコーダＭＤ、データ入出力部Ｉ／ＯおよびセンスアンプＳＡ等の動作を制御する制御信号（タイミング信号）を生成する。【００１６】
コンパイルドメモリＣＭの記憶容量は、コントローラＣＮＴＬが使用するデータサイズに合わせて設計される。すなわち、コンパイルドメモリＣＭの記憶容量（ＭＢＬＫ０−１のサイズ）は、ＡＳＩＣチップのユーザ仕様に合わせて決められる。後述するように、本発明では、メモリブロックＭＢＬＫ０−１のサイズが互いに等しくなるように、メインデコーダＭＤのレイアウト設計が行われる。これにより、ローカルビット線ＬＢＬ、／ＬＢＬの長さをコンパイルドメモリＣＭの記憶容量（ユーザ仕様）によらず、常に最も短くできる。この結果、アクセスタイムを最短にできる。【００１７】
図２は、図１に示したメインデコーダＭＤの詳細を示している。メインデコーダＭＤは、論理回路ＬＡ、ＬＢと、論理回路ＬＡ、ＬＢ間を接続する網目状の配線および配線の交
差部に配置されるコンタクト部ＣＯＮＴとを有している。コンタクト部ＣＯＮＴの位置は、後述するレイアウト方法（図７）により決められる。【００１８】
論理回路ＬＡは、アドレス信号ＡＤＲ（ＡＤＲ０−２）をデコードし、ブロックデコード信号ＢＡＤ０−１およびワードデコード信号ＷＡＤ０−２を生成する。論理回路ＬＢは、デコード信号線ＢＡＤ０−３、ＷＡＤ０−２に応じてワード線信号ＷＬ（ＷＬ０−５）を出力する。論理回路ＬＢにおいて、カラム選択信号Ｃ０−１は、アクセスコマンドに応答してタイミング制御部ＣＰＧから出力されるクロックＣＫに同期して出力される。【００１９】
メモリブロックＭＢＬＫ０−１は、少なくとも１本のワード線ＷＬを有するワードグループＷＬＧ（ワードステップ）を１単位としてレイアウトされる。この実施形態では、１本のワード線ＷＬによりワードグループＷＬＧが構成される。このため、各ワードグループＷＬＧ０−５の番号は、ワード線ＷＬ０−５の番号と同じである。【００２０】
この実施形態では、メモリブロックＭＢＬＫ０−１および接続制御部ＣＣＮＴ０−１は、アドレス信号ＡＤＲの最下位ビットＡＤＲ０により識別される。各メモリブロックＭＢＬＫ０−１内のワード線ＷＬ（ワードグループＷＬＧ）は、アドレス信号ＡＤＲの上位ビットＡＤＲ１−２により識別される。すなわち、メインデコーダＭＤの論理は、メモリブロックＭＢＬＫ０−１および接続制御部ＣＣＮＴ０−１を識別するためのアドレス信号ＡＤＲのビットを、ワードグループＷＬＧを識別するためのアドレス信号ＡＤＲのビットより下位に割り当てることにより構成される。【００２１】
例えば、アドレス信号ＡＤＲ０−２の論理が”ＬＬＬ”のとき、メモリブロックＭＢＬＫ０のワード線ＷＬ０が選択される。次のアドレス信号ＡＤＲ０−２（ＨＬＬ）では、メモリブロックＭＢＬＫ１のワード線ＷＬ１が選択される。このように、アドレス信号ＡＤＲ０−２が順次進むと、メモリブロックＭＢＬＫ０−１は交互に選択され、アクセスされる。なお、この例では、説明を分かりやすくするために、ユーザ仕様によりワード線ＷＬの数（ワード数）が”６”に設定される例を示している。メインデコーダＭＤは、３ビットのアドレス信号ＡＤＲ０−２をデコードするために設計される。【００２２】
実際のコンパイルドメモリＣＭでは、ワード数は、例えば、”４”から”１０２４”の範囲で設定される。例えば、メモリブロックＭＢＬＫに配置可能な最大のワード数が”５１２”で、ワード数が”６００”に設定された場合、メモリブロックＭＢＬＫ０−１のワード数は、それぞれ”３００”に設定される。メモリブロックＭＢＬＫ０−１は、アドレス信号ＡＤＲ０（最下位ビット）により識別される。各メモリブロックＭＢＬＫ０−１内のワード線ＷＬは、アドレス信号ＡＤＲ１−９により識別される。一方、最大のワード数が”２５６”で、ワード数が”６００”に設定された場合、後述する図１３および図１５に示すように、４つのメモリブロックＭＢＬＫ０−３がレイアウトされる。この場合、各メモリブロックＭＢＬＫ０−３のワード数は、それぞれ”１５０”に設定される。このように各メモリブロックＭＢＬＫのワード数が最小になるようにレイアウトすることにより、ワード線ＷＬに直交するローカルビット線ＬＢＬ、／ＬＢＬの長さを最短にできる。図２に示した例では、ローカルビット線対ＬＢＬ、／ＬＢＬの長さは、メモリブロックＭＢＬＫ０−１ともＬ０になる。この結果、各ローカルビット線ＬＢＬ、／ＬＢＬの寄生容量および配線抵抗を小さくでき、アクセスタイムを短くできる。【００２３】
図３は、図１に示したメモリブロックＭＢＬＫ０−１の詳細を示している。各メモリブロックＭＢＬＫ０−１は、マトリックス状に配置され、相補のローカルビット線ＬＢＬ、／ＬＢＬおよびワード線ＷＬに接続された複数のスタティックメモリセルＭＣを有している。各メモリセルＭＣは、一対のインバータを有しデータを保持するラッチと、ラッチの相補の記憶ノード（各インバータの出力ノード）にそれぞれ一端が接続された一対のトラ
ンスファトランジスタ（ｎＭＯＳトランジスタ）とを有している。トランスファトランジスタの他端は、ローカルビット線ＬＢＬ、／ＬＢＬのいずれかに接続されている。トランスファトランジスタのゲートは、ワード線ＷＬに接続されている。【００２４】
接続制御部ＣＮＴ０−１に形成されるカラムスイッチは、ｎＭＯＳトランジスタで構成され、対応するカラム選択信号Ｃ０またはＣ１が高論理レベルのときにオンする。カラムスイッチのオンにより、ローカルビット線対ＬＢＬ、／ＬＢＬは、センスアンプＳＡおよびグローバルビット線対ＧＢＬ、／ＧＢＬに接続される。なお、センスアンプ領域ＳＡＡは、メモリブロックＭＢＬＫ０−１の非アクセス中にローカルビット線対ＬＢＬ、／ＬＢＬを所定の電圧にプリチャージするための図示しないプリチャージ回路を有している。センスアンプ領域ＳＡＡに、書き込みデータ信号の入力を制御する回路が形成されてもよい。【００２５】
センスアンプＳＡは、メモリブロックＭＢＬＫ０−１に共有されている。センスアンプＳＡは、読み出しアクセス動作中に、メモリセルＭＣからローカルビット線対ＬＢＬ、／ＬＢＬに読み出されたデータ信号の信号量を増幅し、増幅したデータ信号をグローバルビット線対ＧＢＬ、／ＧＢＬに伝える。なお、書き込みアクセス動作では、グローバルビット線対ＧＢＬ、／ＧＢＬを介してコンパイルドメモリＣＭの外部から供給される書き込みデータ信号が、オンしているカラムスイッチに接続されたローカルビット線対ＬＢＬ、／ＬＢＬに伝えられ、選択されたワード線ＷＬに接続されたメモリセルＭＣに書き込まれる。このとき、センスアンプＳＡも動作する。【００２６】
図４は、本発明がなされる前のコンパイルドメモリＣＭの要部を示している。この例では、各メモリブロックＭＢＬＫ（ＭＢＬＫ０−１）に配置可能な最大のワード数は”４”として説明する。本発明がなされる前、コンパイルドメモリＣＭは、ワード線ＷＬを図の下側から順次に配置することによりレイアウトされていた。【００２７】
ユーザにより指定されたワード数が”６”の場合、まず、メモリブロックＭＢＬＫ０に配置可能な全てのワード線ＷＬ０−３がレイアウトされる。次に、残りのワード線ＷＬ４−５が、メモリブロックＭＢＬＫ１にレイアウトされる。このように、本発明前、１つのメモリブロックＭＢＬＫに最大数のワード線ＷＬがレイアウトされた後、次のメモリブロックＭＢＬＫにワード線ＷＬがレイアウトされていた。メモリブロックＭＢＬＫ０に最大数のワード線ＷＬ（２のｎ乗；この例ではｎ＝２）がレイアウトされるため、メモリブロックＭＢＬＫは、アドレス信号ＡＤＲの上位ビットＡＤＲ２により識別される。ワード線ＷＬは、アドレス信号ＡＤＲの下位ビットＡＤＲ０−１により識別される。【００２８】
しかしながら、図４に示したレイアウト手法では、メモリブロックＭＢＬＫ０のサイズが常に最大になるため、メモリブロックＭＢＬＫ０のローカルビット線ＬＢＬ、／ＬＢＬ（図示せず）の長さＬ０が常に最大になる。これに対してメモリブロックＭＢＬＫ１のローカルビット線ＬＢＬ、／ＬＢＬ（図示せず）の長さＬ１は、長さＬ０より短い。コンパイルドメモリＣＭのアクセスタイム（タイミング仕様）は、ワーストの動作時間を基準に決められる。このため、アクセスタイムは、ローカルビット線ＬＢＬ、／ＬＢＬの長さが最大の場合（Ｌ０）に合わせられて決められる。換言すれば、本発明前、複数のメモリブロックＭＢＬＫで構成されるコンパイルドメモリＣＭのアクセスタイムは、ワード数にかかわらず、ローカルビット線ＬＢＬ、／ＬＢＬの長さが最大の場合に合わせて設定される。【００２９】
なお、一般に、アクセスタイムは、読み出しアクセスコマンドおよびアドレス信号がコンパイルドメモリＣＭに供給されてから読み出しデータがコンパイルドメモリＣＭから出力されるまでの時間である。あるいは、アクセスタイムは、書き込みアクセスコマンド、
書き込みアドレス信号および書き込みデータがコンパイルドメモリＣＭに供給されてから書き込みデータがメモリセルに書き込まれるまでの時間である。【００３０】
図５は、本発明がなされる前に検討されたコンパイルドメモリＣＭの要部を示している。コンパイルドメモリＣＭのアクセスタイムを短縮するためには、メモリブロックＭＢＬＫ０−１のローカルビット線ＬＢＬ、／ＬＢＬの長さを等しくし、ローカルビット線ＬＢＬ、／ＬＢＬの長さ短くすればよい。すなわち、メモリブロックＭＢＬＫ０−１に配置されるワード線ＷＬの数を等しくすればよい。そこで、メモリブロックＭＢＬＫ０にワード線ＷＬ０−２を配置し、メモリブロックＭＢＬＫ１にワード線ＷＬ３−５を配置する。しかしながら、この場合、ワード線ＷＬ３は、アドレス信号ＡＤＲ２＝Ｌで選択されるが（図５（ａ））、ワード線ＷＬ３を含むメモリブロックＭＢＬＫ１の接続制御部ＣＣＮＴ１は、アドレス信号ＡＤＲ２＝Ｈで選択される（図５（ｂ））。この結果、コンパイルドメモリＣＭは誤動作する。【００３１】
図６は、コンパイルドメモリＣＭにレイアウトされるワード線ＷＬの数(ワード数)とアクセスタイムｔＡＡＣの関係を示している。図の実線は、本発明の適用後を示し、図の破線は、本発明の適用前を示している。この例では、メモリブロックＭＢＬＫに配置可能な最大のワード数は”５１２”である。本発明では、図２に示したように、ワード線ＷＬは、メモリブロックＭＢＬＫ０−１に交互に配置されるため、ローカルビット線ＬＢＬ、／ＬＢＬの長さは、ワード数が”１０２４”になるまで、ワード線ＷＬが２本増加する毎に増加する。すなわち、アクセスタイムｔＡＡＣは、ワード数が”１０２４”になるまで、ワード線ＷＬが２本増加する毎に増加する。これに対して、本発明前では、図４に示したように、ワード線ＷＬは、メモリブロックＭＢＬＫ毎に配置される。このため、ローカルビット線ＬＢＬ、／ＬＢＬの長さは、ワード数が”５１２”になるまで、ワード線ＷＬが１本増加する毎に増加する。すなわち、アクセスタイムｔＡＡＣは、ワード数が”５１２”になるまで、ワード線ＷＬが１本増加する毎に増加する。【００３２】
例えば、ワード数が”６００”に設定された場合、本発明では、各メモリブロックＭＢＬＫ０−１に３００本のワード線ＷＬが配置される。このときのコンパイルドメモリＣＭのアクセスタイムｔＡＡＣ（仕様）は、３００本のワード線ＷＬを横切るローカルビット線ＬＢＬ、／ＬＢＬの長さに対応するＴ１である。一方、本発明前では、メモリブロックＭＢＬＫ０に５１２本のワード線ＷＬが配置され、メモリブロックＭＢＬＫ１に残りの８８本のワード線ＷＬが配置される。このときのコンパイルドメモリＣＭのアクセスタイムｔＡＡＣ（仕様）は、５１２本のワード線ＷＬを横切るローカルビット線ＬＢＬ、／ＬＢＬの長さに対応するＴ２である。なお、アクセスタイムｔＡＡＣのＴ０は、ワード線ＷＬの数に関わりなく常に一定の動作時間が必要なデコーダや入出力回路などのために使用される時間である。【００３３】
また、発明では、ワード線ＷＬは、常に一対のメモリブロックＭＢＬＫ０−１に交互に配置される。アクセスタイムｔＡＡＣは、ワード線ＷＬが２本増加する毎に増える。したがって、アクセスタイムｔＡＡＣは、ワード数が”５１２”より少ない場合にも本発明前に比べて短縮される。【００３４】
図７は、第１の実施形態のコンパイルドメモリＣＭのレイアウト方法を示している。図に示したフローは、コンパイルドメモリＣＭのレイアウト設計ツールがレイアウトプログラムを実行することにより実現される。例えば、レイアウト設計ツールは、ワークステーション等のコンピュータであり、レイアウトプログラム（コンパイラ）は、内蔵されるＣＰＵ等のコントローラにより実行される。コンパイルドメモリＣＭのレイアウトデータは、図に示したフローを実行することにより生成される。なお、図７では、データ信号が伝達される経路上の回路のレイアウト設計フローの記載を省略している。【００３５】
まず、ステップＳ１０において、コンパイラは、コンパイルドメモリＣＭの仕様であるデータ信号のビット数ＢＬＮと、ワード線ＷＬの数を示すワード数ＷＬＮの入力を受ける。例えば、６４ｋビットのコンパイルドメモリＣＭをＡＳＩＣチップに搭載し、ビット数ＢＬＮが６４ビットに指定される場合、ワード数ＷＬＮは、１０２４に指定される。ビット数ＢＬＮが１２８ビットに指定される場合、ワード数ＷＬＮは、５１２に指定される。なお、ビット数ＢＬＮは、データ端子の数と、ワード線ＷＬに接続されるメモリセルＭＣ（ビット線ＬＢＬ）の数とに分けて指定されてもよい。この場合、ビット線ＬＢＬの数がビット数ＢＬＮとして扱われる。【００３６】
次に、ステップＳ１２において、入力されたワード数ＷＬＮが、１つのメモリブロックＭＢＬＫに配置可能な最大のワード数ＷＬＮｍａｘを超えるか否かが判定される。ワード数ＷＬＮがワード数ＷＬＮｍａｘを超える場合、処理はステップＳ１６に移行する。ワード数ＷＬＮがワード数ＷＬＮｍａｘ以下の場合、処理はステップＳ１４に移行する。【００３７】
ステップＳ１４では、一対のメモリブロックＭＢＬＫ０−１が生成され、各メモリブロックＭＢＬＫ０−１にワード数ＷＬＮの半分のワード線ＷＬが配置される。一方、ステップＳ１６では、ワード数ＷＬＮｍａｘより小さいワード数ＷＬＮ１が現れるまで、ワード数ＷＬＮが偶数値（２、４、６、．．．）で割られる。そして、求めた偶数値がメモリブロックＭＢＬＫの数として使用され、求めたワード線ＷＬＮ１が各メモリブロックＭＢＬＫに配置される。すなわち、指定されたワード数ＷＬＮが、最大のワード数ＷＬＮｍａｘより小さくなるように均等に分配され、偶数個のメモリブロックＭＢＬＫのレイアウトデータが生成される。【００３８】
次に、ステップＳ１８において、一対のメモリブロックＭＢＬＫの間に共通のセンスアンプ領域ＳＡＡが割り当てられ、センスアンプＳＡが配置される。ステップＳ２０において、メモリブロックＭＢＬＫとセンスアンプ領域ＳＡＡの間に接続制御部ＣＣＮＴが配置される。【００３９】
次に、ステップＳ２２において、ワード線ＷＬを識別するために必要なアドレス信号ＡＤＲのビット数が求められ、メモリブロックＭＢＬＫを識別するビットＭＢＬＫｂと、ワード線ＷＬ（ワードグループＷＬＧ）を識別するためのビットＷＬＧｂとが、アドレス信号ＡＤＲの下位ビットから順に割り当てられる。そして、メインデコーダＭＤの論理が生成される。ビットＭＢＬＫｂ、ＷＬＧｂは、図２に示したＡＤＲ０、ＡＤＲ１（またはＡＤＲ２）にそれぞれ対応する。【００４０】
次に、ステップＳ２４において、生成されたメインデコーダＭＤの論理にしたがって、メインデコーダＭＤ内に配線される網目状のデコード信号線の交差部にコンタクト部ＣＯＮＴが配置される。ステップＳ２６において、メインデコーダＭＤの出力がワード線ＷＬおよび接続制御部ＣＣＮＴのカラムスイッチに接続される。そして、コンパイルドメモリＣＭのレイアウトデータが完成する。【００４１】
以上、第１の実施形態では、メモリブロックＭＢＬＫを識別するためのアドレス信号ＡＤＲのビットＡＤＲ０は、ワード線ＷＬ（ワードグループＷＬＧ）を識別するためのアドレス信号ＡＤＲのビットＡＤＲ１−２より下位に割り当てられる。これにより、メモリブロックＭＢＬＫに配置されるワード線ＷＬの数を互いに等しくでき、ローカルビット線ＬＢＬ、／ＬＢＬの長さを短くできる。この結果、ローカルビット線ＬＢＬ、／ＬＢＬの配線遅延を最小限にでき、コンパイルドメモリＣＭのアクセスタイムｔＡＡＣを短縮できる。【００４２】
図８は、本発明の第２の実施形態におけるコンパイルドメモリＣＭのメインデコーダＭＤの詳細を示している。第１の実施形態で説明した要素と同一の要素については、同一の符号を付し、これ等については、詳細な説明を省略する。コンパイルドメモリＣＭは、例えば、ＳＲＡＭコアであり、図１に示したように、他の機能ブロックとともにＡＳＩＣチップ内に形成される。ＡＳＩＣチップにより、単独でシステムが構成され、あるいは、他の半導体チップとともにシステムが構成される。【００４３】
この例では、ユーザ仕様によりワード数が”８”に指定され、８本のワード線ＷＬがコンパイルドメモリＣＭに配置される。各メモリブロックＭＢＬＫ０−１は、ワード線ＷＬが交互に４本ずつ配置される。このため、ローカルビット線対ＬＢＬ、／ＬＢＬの長さをメモリブロックＭＢＬＫ０−１ともＬ０に設定でき、アクセスタイムｔＡＡＣを最小にできる。図に示した太い配線と大きい黒丸で示したコンタクト部ＣＯＮＴは、上述した図２に追加される要素を示している。このように、本発明では、指定されるワード数が異なる場合にも、メインデコーダＭＤの信号線の配線およびコンタクト部ＣＯＮＴを追加することにより、コンパイルドメモリＣＭのレイアウトデータを容易に生成できる。コンパイルドメモリＣＭのレイアウト方法は、図７に示したフローと同じである。【００４４】
以上、第２の実施形態においても、上述した第１の実施形態と同様の効果を得ることができる。さらに、ワード数が変更される場合にも、配線およびコンタクト部ＣＯＮＴを追加あるいは削除することにより、コンパイルドメモリＣＭのレイアウトデータを容易に生成できる。【００４５】
図９は、本発明の第３の実施形態における要部の詳細を示している。第１の実施形態で説明した要素と同一の要素については、同一の符号を付し、これ等については、詳細な説明を省略する。コンパイルドメモリＣＭは、例えば、ＳＲＡＭコアであり、図１に示したように、他の機能ブロックとともにＡＳＩＣチップ内に形成される。ＡＳＩＣチップにより、単独でシステムが構成され、あるいは、他の半導体チップとともにシステムが構成される。コンパイルドメモリＣＭのレイアウト方法は、図７に示したフローと同じである。【００４６】
この例では、コンパイルドメモリＣＭは、センスアンプＳＡの動作タイミングを最適にするためのダミー領域ＤＭＹを有している。センスアンプＳＡは、メモリセルＭＣからの読み出しデータ信号を処理する回路であり、データ処理部として動作する。ダミー領域ＤＭＹには、ダミーメモリセルＤＭＣ、ダミーローカルビット線対ＤＬＢＬ、／ＤＬＢＬ、ダミーセンスアンプＤＳＡおよびダミーカラムスイッチＤＣ０、ＤＣ１が配置される。ダミーメモリセルＤＭＣのレイアウトデータおよび配置間隔は、リアルメモリセルＭＣのそれ等と同じである。但し、メモリブロックＭＢＬＫ０において、ダミーセンスアンプＤＳＡから最も遠いダミーメモリセルＤＭＣｒｅｆは、ダミーローカルビット線／ＤＬＢＬに接続されるラッチの記憶ノードが接地線に接続されている。また、ダミーメモリセルＤＭＣｒｅｆのトランスファトランジスタのゲートは、コンパイルドメモリＣＭのメモリセルＭＣへのアクセス要求に応答して高レベルに活性化されるアクティブ信号ＡＣＴを受けている。このため、ダミーローカルビット線／ＤＬＢＬ（ダミーデータ信号）のレベルは、アクティブ信号ＡＣＴの活性化に同期して低レベルに変化する。なお、ダミーローカルビット線対ＤＬＢＬ、／ＤＬＢＬは、アクティブ信号ＡＣＴが活性化される前に、メモリセルＭＣと同様にプリチャージ回路により高レベルにプリチャージされる。【００４７】
メモリブロックＭＢＬＫ０のダミーローカルビット線ＤＬＢＬ、／ＤＬＢＬに接続されたカラムスイッチＤＣ０は、ゲートで電源電圧ＶＤＤを受けて常にオンしている。メモリブロックＭＢＬＫ１のダミーローカルビット線ＤＬＢＬ、／ＤＬＢＬに接続されたカラムスイッチＤＣ１は、ゲートで接地電圧ＶＳＳを受けて常にオフしている。ダミーセンスアンプＤＳＡは、例えば、カラムスイッチＤＣ０を介して入力がダミーローカルビット線／
ＤＬＢＬに接続されたＣＭＯＳインバータで構成される。ダミーセンスアンプＤＳＡは、アクティブ信号ＡＣＴの活性化、すなわち、ダミーデータ信号の出力タイミングに同期してセンスアンプＳＡの増幅動作を開始するためのセンスアンプイネーブル信号ＳＥＮを出力する。センスアンプイネーブル信号ＳＥＮは、全てのセンスアンプＳＡに供給される。【００４８】
センスアンプＳＡの動作タイミングは、アクセスされるメモリセルＭＣの位置（ローカルビット線ＬＢＬ、／ＬＢＬの長さ）に依存せず、最適に設定される必要がある。換言すれば、センスアンプＳＡの動作タイミングは、アクセス速度が最も遅いメモリセルＭＣに合わせて設定される必要がある。このために、アクティブ信号ＡＣＴの活性化からセンスアンプイネーブル信号ＳＥＮの出力までの期間は、ダミーセンスアンプＤＳＡから最も遠いダミーメモリセルＤＭＣｒｅｆを用いて設定される。ダミーメモリセルＤＭＣｒｅｆは、セルフタイミングセルとも称される。この種のタイミング設定手法は、セルフタイミング手法と称される。【００４９】
セルフタイミング手法では、センスアンプＳＡの動作タイミングは、センスアンプ領域ＳＡＡから最も離れたメモリセルＭＣ（ＤＭＣｒｅｆ）の動作タイミングに合わせて設定される。セルフタイミング手法を採用する本発明前のコンパイルドメモリＣＭでは、アクセスタイムｔＡＡＣは、図６に示した破線と同じである。セルフタイミング手法を採用するコンパイルドメモリＣＭに、この実施形態を適用することにより、アクセスタイムｔＡＡＣは、図６に示した実線と同じにできる。【００５０】
以上、第３の実施形態においても、上述した第１の実施形態と同様の効果を得ることができる。さらに、セルフタイミング手法を採用するコンパイルドメモリＣＭにおいても、アクセスタイムｔＡＡＣを短縮できる。【００５１】
図１０は、本発明の第４の実施形態のコンパイルドメモリＣＭを示している。第１の実施形態で説明した要素と同一の要素については、同一の符号を付し、これ等については、詳細な説明を省略する。コンパイルドメモリＣＭは、例えば、ＳＲＡＭコアであり、図１に示したように、他の機能ブロックとともにＡＳＩＣチップ内に形成される。ＡＳＩＣチップにより、単独でシステムが構成され、あるいは、他の半導体チップとともにシステムが構成される。【００５２】
この実施形態では、４本のワード線ＷＬ毎にワードグループＷＬＧ（ＷＬＧ０−５）が形成される。メモリブロックＭＢＬＫ０−１において、ワード線ＷＬ（ＷＬ０−２３）は、ワードグループＷＬＧを１単位として配置される。その他の構成は、ワード線ＷＬの本数が異なることを除き第１の実施形態と同じである。【００５３】
図１１は、第４の実施形態のメインデコーダＭＤの論理を示している。メモリブロックＭＢＬＫ０−１および接続制御部ＣＣＮＴ０−１は、アドレス信号ＡＤＲのビットＡＤＲ２により識別される。各メモリブロックＭＢＬＫ０−１内のワードグループＷＬＧは、アドレス信号ＡＤＲの上位ビットＡＤＲ３−４により識別される。各ワードグループＷＬＧ内のワード線ＷＬは、アドレス信号ＡＤＲの下位ビットＡＤＲ０−１により識別される。【００５４】
このように、メインデコーダＭＤの論理は、メモリブロックＭＢＬＫ０−１および接続制御部ＣＣＮＴ０−１を識別するためのアドレス信号ＡＤＲのビットを、ワードグループＷＬＧを識別するためのアドレス信号ＡＤＲのビットより下位に割り当てることにより構成される。さらに、メインデコーダＭＤの論理は、各ワードグループＷＬＧ内のワード線ＷＬを識別するためのアドレス信号ＡＤＲのビットを、メモリブロックＭＢＬＫ０−１を識別するためのアドレス信号ＡＤＲのビットより下位に割り当てることにより構成される。アドレス信号ＡＤＲ０−４が順次進むと、メモリブロックＭＢＬＫ０−１は、ワードグ
ループＷＬＧを１単位として交互に選択され、アクセスされる。【００５５】
図１２は、第４の実施形態のコンパイルドメモリＣＭのレイアウト方法を示している。この実施形態では、図７のステップＳ２２の代わりにステップＳ２２ａが実施される。その他のフローは、図７と同じである。【００５６】
ステップＳ２２ａでは、ワード線ＷＬを識別するために必要なアドレス信号ＡＤＲのビット数が求められ、アドレス信号ＡＤＲの下位ビットから順に、ワード線ＷＬを識別するビットＷＬｂと、メモリブロックＭＢＬＫを識別するビットＭＢＬＫｂと、ワードグループＷＬＧを識別するためのビットＷＬＧｂとが割り当てられる。そして、メインデコーダＭＤの論理が生成される。ビットＷＬｂ、ＭＢＬＫｂ、ＷＬＧｂは、図１１に示したＡＤＲ０−１、ＡＤＲ２、ＡＤＲ４−５にそれぞれ対応する。【００５７】
以上、第４の実施形態においても、上述した第１の実施形態と同様の効果を得ることができる。さらに、ワードグループＷＬＧが複数のワード線ＷＬにより構成される場合にも、アクセスタイムｔＡＡＣを短縮可能なコンパイルドメモリＣＭのレイアウトデータを容易に生成できる。【００５８】
図１３は、本発明の第５の実施形態のコンパイルドメモリＣＭを示している。第１の実施形態で説明した要素と同一の要素については、同一の符号を付し、これ等については、詳細な説明を省略する。コンパイルドメモリＣＭは、例えば、ＳＲＡＭコアであり、図１に示したように、他の機能ブロックとともにＡＳＩＣチップ内に形成される。ＡＳＩＣチップにより、単独でシステムが構成され、あるいは、他の半導体チップとともにシステムが構成される。コンパイルドメモリＣＭのレイアウト方法は、図７に示したフローと同じである。【００５９】
この実施形態では、コンパイルドメモリＣＭは、一対のメモリブロックＭＢＬＫ（ＭＢＬＫ０−１またはＭＢＬＫ２−３）で構成されるメモリユニットＭＵ０−１で構成されている。すなわち、コンパイルドメモリＣＭは、４つのメモリブロックＭＢＬＫ０−３を有している。各メモリユニットＭＵ０−１は、図２に示したメモリブロック対と同じ構成である。各メモリブロックＭＢＬＫ０−３は、３本のワード線ＷＬ（ワードグループＷＬＧ）により構成される。例えば、メモリユニットＭＵ１では、メモリブロックＭＢＬＫ２は、接続制御部ＣＣＮＴ２を介してセンスアンプ領域ＳＡＡのセンスアンプＳＡに接続される。メモリブロックＭＢＬＫ３は、接続制御部ＣＣＮＴ３を介してセンスアンプ領域ＳＡＡのセンスアンプＳＡに接続される。【００６０】
メモリブロックＭＢＬＫの数を増やすことにより、センスアンプ領域ＳＡＡや接続制御部ＣＣＮＴの面積は増加する。しかし、ローカルビット線ＬＢＬ、／ＬＢＬの長さは短くなり、アクセスタイムｔＡＡＣは短縮される。このため、アクセスタイムｔＡＡＣがコンパイルドメモリＣＭのレイアウトサイズよりも優先される場合、メモリブロックＭＢＬＫの数を増やすことが有効である。また、ユーザ仕様に応じて指定されるワード数が、メモリブロックＭＢＬＫに配置可能な最大のワード数の２倍を超える場合にも、４つ以上のメモリブロックＭＢＬＫを形成する必要がある。【００６１】
図１４は、第５の実施形態のメインデコーダＭＤの論理を示している。メモリブロックＭＢＬＫ０−３および接続制御部ＣＣＮＴ０−３は、アドレス信号ＡＤＲのビットＡＤＲ０−１により識別される。各メモリブロックＭＢＬＫ０−１内のワード線ＷＬ（ワードグループＷＬＧ）は、アドレス信号ＡＤＲの上位ビットＡＤＲ２−３により識別される。【００６２】
以上、第５の実施形態においても、上述した第１の実施形態と同様の効果を得ることが
できる。さらに、コンパイルドメモリＣＭが、一対のメモリブロックＭＢＬＫで構成される複数のメモリユニットＭＵを有する場合にも、アクセスタイムｔＡＡＣを短縮可能なコンパイルドメモリＣＭのレイアウトデータを容易に生成できる。【００６３】
図１５は、本発明の第６の実施形態のコンパイルドメモリＣＭを示している。第１および第４の実施形態で説明した要素と同一の要素については、同一の符号を付し、これ等については、詳細な説明を省略する。コンパイルドメモリＣＭは、例えば、ＳＲＡＭコアであり、図１に示したように、他の機能ブロックとともにＡＳＩＣチップ内に形成される。ＡＳＩＣチップにより、単独でシステムが構成され、あるいは、他の半導体チップとともにシステムが構成される。コンパイルドメモリＣＭのレイアウト方法は、図１２に示したフローと同じである。【００６４】
この実施形態では、コンパイルドメモリＣＭは、一対のメモリブロックＭＢＬＫ（ＭＢＬＫ０−１またはＭＢＬＫ２−３）で構成されるメモリユニットＭＵ０−１で構成されている。すなわち、コンパイルドメモリＣＭは、４つのメモリブロックＭＢＬＫ０−３を有している。各メモリユニットＭＵ０−１は、割り当てられるアドレス信号が異なることを除き、図１０に示したメモリブロック対ＭＢＬＫ０−１と同じ構造を有している。すなわち、４本のワード線ＷＬ毎にワードグループＷＬＧ（ＷＬＧ０−１１）が形成される。メモリブロックＭＢＬＫ０−３において、ワード線ＷＬ（ＷＬ０−４７）は、ワードグループＷＬＧを１単位として配置される。例えば、メモリユニットＭＵ１では、メモリブロックＭＢＬＫ２は、接続制御部ＣＣＮＴ２を介してセンスアンプ領域ＳＡＡのセンスアンプＳＡに接続される。メモリブロックＭＢＬＫ３は、接続制御部ＣＣＮＴ３を介してセンスアンプ領域ＳＡＡのセンスアンプＳＡに接続される。この実施形態では、図１６に示すメインデコーダＭＤにより、ワードグループＷＬＧ０−３、ＷＬＧ４−７、ＷＬＧ８−１１は、メモリブロックＭＢＬＫ０−３に順次割り当てられる。図１５に限らず、コンパイルドメモリＣＭが複数のメモリブロックＭＢＬＫを有する場合、ワードグループＷＬＧは、メモリブロックＭＢＬＫに順次割り当てられる。【００６５】
図１６は、第６の実施形態のメインデコーダＭＤの論理を示している。メモリブロックＭＢＬＫ０−３および接続制御部ＣＣＮＴ０−３は、アドレス信号ＡＤＲのビットＡＤＲ２−３により識別される。各メモリブロックＭＢＬＫ０−３内のワードグループＷＬＧは、アドレス信号ＡＤＲの上位ビットＡＤＲ４−５により識別される。各ワードグループＷＬＧ内のワード線ＷＬは、アドレス信号ＡＤＲの下位ビットＡＤＲ０−１により識別される。【００６６】
以上、第６の実施形態においても、上述した第１、第４および第５の実施形態と同様の効果を得ることができる。すなわち、コンパイルドメモリＣＭが複数のメモリユニットＭＵ０−１により構成され、かつワードグループＷＬＧが複数のワード線ＷＬにより構成される場合にも、アクセスタイムｔＡＡＣを短縮できる。また、アクセスタイムｔＡＡＣを短縮可能なコンパイルドメモリＣＭのレイアウトデータを容易に生成できる。【００６７】
なお、上述した実施形態では、本発明をＳＲＡＭに適用する例について述べた。本発明はかかる実施形態に限定されるものではない。本発明は、ＡＳＩＣチップに搭載されるＤＲＡＭコアや強誘電体メモリコアなどの半導体メモリであって、ユーザ仕様によりワード数が変更されるコンパイルドメモリＣＭに適用できる。さらに、コンパイルドメモリＣＭが搭載されるチップは、ＡＳＩＣチップに限定されない。例えば、ＡＳＳＰ（Application Specific Standard Product）チップや、シングルチップマイクロコンピュータチップなどに、本発明のコンパイルドメモリＣＭを搭載してもよい。【００６８】
上述した第３の実施形態では、セルフタイミング手法を用いてセンスアンプＳＡの動作
タイミングを最適に設定する例について述べた。本発明はかかる実施形態に限定されるものではない。例えば、セルフタイミング手法を用いて、カラムスイッチあるいはＩ／Ｏ回路の動作タイミングを最適に設定してもよい。【００６９】
以上、本発明について詳細に説明してきたが、上記の実施形態およびその変形例は発明の一例に過ぎず、本発明はこれに限定されるものではない。本発明を逸脱しない範囲で変形可能であることは明らかである。
【産業上の利用可能性】
【００７０】
本発明は、ＡＳＩＣ等のチップ内に形成されるコンパイルドメモリおよびコンパイルドメモリのレイアウト方法に適用できる。
【図１】
2008072354.tif 000003
【図２】
2008072354.tif 000004
【図３】
2008072354.tif 000005
【図４】
2008072354.tif 000006
【図５】
2008072354.tif 000007
【図６】
2008072354.tif 000008
【図７】
2008072354.tif 000009
【図８】
2008072354.tif 000010
【図９】
2008072354.tif 000011
【図１０】
2008072354.tif 000012
【図１１】
2008072354.tif 000013
【図１２】
2008072354.tif 000014
【図１３】
2008072354.tif 000015
【図１４】
2008072354.tif 000016
【図１５】
2008072354.tif 000017
【図１６】
2008072354.tif 000018
【手続補正書】
【提出日】平成21年2月2日(2009.2.2)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
機能ブロックとともにチップ内に形成され、機能ブロックによりアクセスされるコンパイルドメモリであって、
少なくとも１本のワード線で構成されたワードグループと、ワード線に接続されたメモリセルと、各メモリセルに接続されたビット線とを各々有する一対のメモリブロックと、
前記ビット線を介して前記メモリセルにデータ信号を入出力するデータ制御部と、
前記各メモリブロックの前記ビット線をデータ制御部に選択的に接続するために、前記メモリブロックに対応してそれぞれ設けられる接続制御部と、
アクセスされるメモリブロックに対応する接続制御部を選択するとともに、前記ワードグループのいずれかを選択するためにアドレス信号をデコードするデコーダ部とを備え、
前記デコーダ部の論理は、前記メモリブロックおよび前記接続制御部を識別するためのアドレス信号のビットを、前記ワードグループを識別するための前記アドレス信号のビットより下位に割り当てることにより構成されていることを特徴とするコンパイルドメモリ。
【請求項２】
請求項１記載のコンパイルドメモリにおいて、
前記各ワードグループは、複数のワード線で構成され、
前記デコーダ部の論理は、前記各ワードグループ内のワード線を識別するための前記アドレス信号のビットを、前記メモリブロックを識別するための前記アドレス信号のビットより下位に割り当てることにより構成されていることを特徴とするコンパイルドメモリ。
【請求項３】
請求項１記載のコンパイルドメモリにおいて、
前記一対のメモリブロックで構成される複数のメモリユニットとを備えていることを特徴とするコンパイルドメモリ。
【請求項４】
請求項１記載のコンパイルドメモリにおいて、
前記データ制御部は、前記接続制御部を介して前記メモリブロックのビット線に接続される共通のセンスアンプを備えていることを特徴とするコンパイルドメモリ。
【請求項５】
請求項１記載のコンパイルドメモリにおいて、
前記メモリブロックのいずれかは、前記メモリセルのアクセス要求に応答して所定の論理値を示すダミーデータ信号を出力するダミーメモリセルと、ダミーメモリセルに接続されたダミービット線とを備え、
前記データ制御部において、前記メモリセルからの読み出しデータ信号を処理する回路は、前記ダミーデータ信号の出力タイミングに同期して動作を開始することを特徴とするコンパイルドメモリ。
【請求項６】
請求項５記載のコンパイルドメモリにおいて、
前記データ制御部は、前記接続制御部を介して前記メモリブロックのビット線に接続される共通のセンスアンプを備え、
前記センスアンプは、前記ダミーデータ信号の出力タイミングに同期して動作を開始することを特徴とするコンパイルドメモリ。
【請求項７】
機能ブロックと、機能ブロックによりアクセスされるコンパイルドメモリとを有するＡＳＩＣチップであって、
前記コンパイルドメモリは、
少なくとも１本のワード線で構成されたワードグループと、ワード線に接続されたメモリセルと、各メモリセルに接続されたビット線とを各々有する一対のメモリブロックと、
前記ビット線を介して前記メモリセルにデータ信号を入出力するデータ制御部と、
前記各メモリブロックの前記ビット線をデータ制御部に選択的に接続するために、前記メモリブロックに対応してそれぞれ設けられる接続制御部と、
アクセスされるメモリブロックに対応する接続制御部を選択するとともに、前記ワードグループのいずれかを選択するためにアドレス信号をデコードするデコーダ部とを備え、
前記デコーダ部の論理は、前記メモリブロックおよび前記接続制御部を識別するためのアドレス信号のビットを、前記ワードグループを識別するための前記アドレス信号のビットより下位に割り当てることにより構成されていることを特徴とするＡＳＩＣチップ。
【請求項８】
機能ブロックとともにチップ内に形成され、機能ブロックによりアクセスされるコンパイルドメモリのレイアウト方法であって、
データ信号のビット数と、メモリセルに接続されるワード線の数を示すワード数との入力を受け、
入力されたワード数が、メモリブロックに配置可能な最大のワード数を超える場合、指定されたワード数を、前記最大のワード数より小さくなるように均等に分配して、偶数個のメモリブロックのレイアウトデータを生成し、
前記メモリブロックを識別するためのアドレス信号のビットを、少なくとも１本のワード線で構成されるワードグループを識別するための前記アドレス信号のビットより下位に割り当てて、前記メモリブロックおよび前記ワード線を選択するためのデコーダ部の論理を生成し、
生成した論理にしたがって、前記デコーダ部内に配線されるデコード信号線の交差部に、配線を互いに接続するためのコンタクト部を配置することを特徴とするコンパイルドメモリのレイアウト方法。
【請求項９】
請求項８記載のコンパイルドメモリのレイアウト方法において、
互いに隣接する一対のメモリブロックの間にセンスアンプを配置し、
前記センスアンプと各メモリブロックとの間に、メモリブロック内に配線されるビット線を前記センスアンプに接続するためのスイッチを有する接続制御部を配置し、
前記メモリブロックを選択するためのデコーダの出力を前記スイッチの制御端子に接続することを特徴とするコンパイルドメモリのレイアウト方法。
【請求項１０】
請求項８記載のコンパイルドメモリのレイアウト方法において、
前記ワード線は、複数のワード線で構成されるワードグループを１単位として配線され、
前記各ワードグループ内のワード線を識別するための前記アドレス信号のビットを、前記メモリブロックを識別するための前記アドレス信号のビットより下位に割り当てて、前記ワード線を選択するための前記デコーダ部の論理を生成し、
生成した論理にしたがって、前記コンタクト部を配置することを特徴とするコンパイルドメモリのレイアウト方法。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＡＳＩＣ等のチップ内に形成されるコンパイルドメモリおよびコンパイルドメモリのレイアウト方法に関する。
【背景技術】
【０００２】
ＡＳＩＣ（Application Specific IC）等のＬＳＩでは、ＡＳＩＣチップ内の機能ブロックによりアクセスされるＳＲＡＭ等のメモリが搭載される場合がある。この種のメモリは、ユーザのシステム仕様に応じて記憶容量を可変にできる場合が多い。ユーザにより指定される任意の記憶容量を有するメモリのレイアウトデータは、コンパイラ等のレイアウト設計ツールを用いて生成される。メモリ（マクロセル）は、任意のビット数およびワード数をコンパイラに入力することで自動的に生成される。コンパイラによって自動生成されるメモリは、コンパイルドメモリまたはコンパイルドと称される。
【０００３】
一般に、ＳＲＡＭ等のメモリでは、データ信号を伝達するビット線に接続されるメモリセルの数が多いほど、ビット線の負荷容量および配線遅延は増加し、アクセス時間は長くなる。ビット線に接続されるメモリセルの数を減らし、アクセス時間を短縮するために、ビット線をローカルビット線とグローバルビット線で構成する手法（階層化されたビット線構造）が、提案されている（例えば、特許文献１参照）。この場合、ローカルビット線は、メモリセルアレイ内に配線され、メモリセルに直接接続される。グローバルビット線は、メモリセルアレイ上でローカルビット線に接続され、データの入出力回路に接続される。
【特許文献１】特開２００６−３２５７７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ローカルビット線は、メモリセルに対応して配線されるため、半導体基板に近い薄い配線層を用いて配線されるため、配線抵抗が高い。また、ローカルビット線は、多数のメモリセルに接続されるため、寄生容量が大きい。このため、ローカルビット線の長さがメモリのアクセス時間に与える影響は大きい。これに対して、グローバルビット線は、半導体基板から離れた厚い配線層を用いて配線されるため、配線抵抗が低い。グローバルビット線は、メモリセルに接続されないため、寄生容量は小さい。このため、グローバルビット線の長さがメモリのアクセス時間に与える影響は、ローカルビット線に比べて小さい。したがって、階層化されたビット線構造を有するメモリでは、アクセス時間を短縮するために、メモリセルに直接接続されるローカルビット線の長さを短くすることが重要である。
【０００５】
本発明の目的は、メモリセルに接続されるビット線の長さを短くし、コンパイルドメモリのアクセス時間を短縮することである。特に、ＡＳＩＣチップ等のＬＳＩ内に形成されるコンパイルドメモリのアクセスタイムを短縮することである。
【課題を解決するための手段】
【０００６】
コンパイルドメモリは、一対のメモリブロック、データ制御部、接続制御部およびデコーダ部を有する。各メモリブロックは、少なくとも１本のワード線で構成されたワードグループと、ワード線に接続されたメモリセルと、各メモリセルに接続されたビット線とを有する。データ制御部は、ビット線を介してメモリセルにデータ信号を入出力する。接続制御部は、各メモリブロックのビット線をデータ制御部に選択的に接続するために、メモリブロックに対応してそれぞれ設けられる。デコーダ部は、アクセスされるメモリブロックに対応する接続制御部を選択するとともに、ワードグループのいずれかを選択するためにアドレス信号をデコードする。デコーダ部の論理は、メモリブロックおよび接続制御部を識別するためのアドレス信号のビットを、ワードグループを識別するためのアドレス信号のビットより下位に割り当てることにより構成されている。例えば、各ワードグループが複数のワード線で構成される場合、デコーダ部の論理は、各ワードグループ内のワード線を識別するためのアドレス信号のビットを、メモリブロックを識別するためのアドレス信号のビットより下位に割り当てることにより構成される。これにより、メモリブロックに配置されるワード線の数を互いに等しくでき、ビット線の長さを短くできる。この結果、ビット線の配線遅延を最小限にでき、コンパイルドメモリのアクセスタイムを短縮できる。
【０００７】
コンパイルドメモリは、次のようなレイアウト方法を用いてレイアウトデータが生成される。まず、データ信号のビット数と、メモリセルに接続されるワード線の数を示すワード数との入力を受ける。入力されたワード数が、メモリブロックに配置可能な最大のワード数を超える場合、指定されたワード数が、最大のワード数より小さくなるように均等に分配されて、偶数個のメモリブロックのレイアウトデータが生成される。次に、メモリブロックを識別するためのアドレス信号のビットが、ワードグループを識別するためのアドレス信号のビットより下位に割り当てられて、メモリブロックおよびワード線を選択するためのデコーダ部の論理が生成される。そして、生成された論理にしたがって、デコーダ部内に配線されるデコード信号線の交差部に、配線を互いに接続するためのコンタクト部が配置され、レイアウトデータが完成する。
【発明の効果】
【０００８】
本発明では、コンパイルドメモリのアクセス時間を短縮できる。
【発明を実施するための最良の形態】
【０００９】
以下、本発明の実施形態を図面を用いて説明する。図中、信号が伝達される信号線には、信号名と同じ符号を使用する。
【００１０】
図１は、本発明の第１の実施形態を示している。コンパイルドメモリＣＭは、例えば、ＳＲＡＭコアであり、コントローラＣＮＴＬで使用するデータ等を保持するために、コントローラＣＮＴＬおよび周辺回路ＰＥＲＩ等の機能ブロックとともにＡＳＩＣチップ内に形成される。コンパイルドメモリＣＭは、ＣＰＵ等のコントローラＣＮＴＬによりアクセスされる。図では、分かりやすくするために、コンパイルドメモリを大きく描いている。実際のＡＳＩＣチップでは、図示した以外の多くの機能ブロックがチップ上に搭載される。ＡＳＩＣチップにより、単独でシステムが構成され、あるいは、他の半導体チップとともにシステムが構成される。
【００１１】
コンパイルドメモリＣＭは、一対のメモリブロックＭＢＬＫ０−１、メモリブロックＭＢＬＫ０−１にそれぞれ対応する接続制御部ＣＣＮＴ０−１、メモリブロックＭＢＬＫ０−１に共有されるセンスアンプＳＡを有するセンスアンプ領域ＳＡＡ、メインデコーダＭＤ（デコーダ部）、データ入出力部Ｉ／Ｏおよびタイミング制御部ＣＰＧを有している。
【００１２】
各メモリブロックＭＢＬＫ０−１のローカルビット線対ＬＢＬ、／ＬＢＬは、接続制御部ＣＣＮＴ０−１に形成されるカラムスイッチ（トランジスタ）を介してセンスアンプＳＡおよびグローバルビット線対ＧＢＬ、／ＧＢＬに接続される。グローバルビット線対ＧＢＬ、／ＧＢＬは、データ入出力部Ｉ／Ｏに接続される。ビット線をローカルビット線ＬＢＬ、／ＬＢＬとグローバルビット線ＧＢＬ、／ＧＢＬを用いて形成することにより（階層構造）、ローカルビット線ＬＢＬ、／ＬＢＬを短くでき、アクセスタイムを短縮できる。
【００１３】
メインデコーダＭＤは、コントローラＣＮＴＬから出力されるアドレス信号ＡＤＲ（図２）をデコードし、デコード結果に応じてカラムスイッチをオンするためのカラム選択信号Ｃ０、Ｃ１を出力し、メモリブロックＭＢＬＫ０−１内に配線されるワード線ＷＬ（図２）を選択する。
【００１４】
データ入出力部Ｉ／Ｏは、グローバルビット線対ＧＢＬ、／ＧＢＬ上の読み出しデータをＡＳＩＣチップのデータバスを介してコントローラＣＮＴＬに出力し、ＡＳＩＣチップのデータバスを介してコントローラＣＮＴＬから伝達される書き込みデータをグローバルビット線対ＧＢＬ、／ＧＢＬに出力する。センスアンプＳＡおよびデータ入出力部Ｉ／Ｏは、ビット線ＬＢＬ、／ＬＢＬ、ＧＢＬ、／ＧＢＬを介してメモリブロックＭＢＬＫ０−１のメモリセルＭＣ（図３）にデータ信号を伝達するデータ制御部として動作する。タイミング制御部ＣＰＧは、コンパイルドメモリＣＭをアクセスするためにコントローラＣＮＴＬから出力されるアクセスコマンドに応じて、メインデコーダＭＤ、データ入出力部Ｉ／ＯおよびセンスアンプＳＡ等の動作を制御する制御信号（タイミング信号）を生成する。
【００１５】
コンパイルドメモリＣＭの記憶容量は、コントローラＣＮＴＬが使用するデータサイズに合わせて設計される。すなわち、コンパイルドメモリＣＭの記憶容量（ＭＢＬＫ０−１のサイズ）は、ＡＳＩＣチップのユーザ仕様に合わせて決められる。後述するように、本発明では、メモリブロックＭＢＬＫ０−１のサイズが互いに等しくなるように、メインデコーダＭＤのレイアウト設計が行われる。これにより、ローカルビット線ＬＢＬ、／ＬＢＬの長さをコンパイルドメモリＣＭの記憶容量（ユーザ仕様）によらず、常に最も短くできる。この結果、アクセスタイムを最短にできる。
【００１６】
図２は、図１に示したメインデコーダＭＤの詳細を示している。メインデコーダＭＤは、論理回路ＬＡ、ＬＢと、論理回路ＬＡ、ＬＢ間を接続する網目状の配線および配線の交差部に配置されるコンタクト部ＣＯＮＴとを有している。コンタクト部ＣＯＮＴの位置は、後述するレイアウト方法（図７）により決められる。
【００１７】
論理回路ＬＡは、アドレス信号ＡＤＲ（ＡＤＲ０−２）をデコードし、ブロックデコード信号ＢＡＤ０−１およびワードデコード信号ＷＡＤ０−２を生成する。論理回路ＬＢは、デコード信号線ＢＡＤ０−３、ＷＡＤ０−２に応じてワード線信号ＷＬ（ＷＬ０−５）を出力する。論理回路ＬＢにおいて、カラム選択信号Ｃ０−１は、アクセスコマンドに応答してタイミング制御部ＣＰＧから出力されるクロックＣＫに同期して出力される。
【００１８】
メモリブロックＭＢＬＫ０−１は、少なくとも１本のワード線ＷＬを有するワードグループＷＬＧ（ワードステップ）を１単位としてレイアウトされる。この実施形態では、１本のワード線ＷＬによりワードグループＷＬＧが構成される。このため、各ワードグループＷＬＧ０−５の番号は、ワード線ＷＬ０−５の番号と同じである。
【００１９】
この実施形態では、メモリブロックＭＢＬＫ０−１および接続制御部ＣＣＮＴ０−１は、アドレス信号ＡＤＲの最下位ビットＡＤＲ０により識別される。各メモリブロックＭＢＬＫ０−１内のワード線ＷＬ（ワードグループＷＬＧ）は、アドレス信号ＡＤＲの上位ビットＡＤＲ１−２により識別される。すなわち、メインデコーダＭＤの論理は、メモリブロックＭＢＬＫ０−１および接続制御部ＣＣＮＴ０−１を識別するためのアドレス信号ＡＤＲのビットを、ワードグループＷＬＧを識別するためのアドレス信号ＡＤＲのビットより下位に割り当てることにより構成される。
【００２０】
例えば、アドレス信号ＡＤＲ０−２の論理が”ＬＬＬ”のとき、メモリブロックＭＢＬＫ０のワード線ＷＬ０が選択される。次のアドレス信号ＡＤＲ０−２（ＨＬＬ）では、メモリブロックＭＢＬＫ１のワード線ＷＬ１が選択される。このように、アドレス信号ＡＤＲ０−２が順次進むと、メモリブロックＭＢＬＫ０−１は交互に選択され、アクセスされる。なお、この例では、説明を分かりやすくするために、ユーザ仕様によりワード線ＷＬの数（ワード数）が”６”に設定される例を示している。メインデコーダＭＤは、３ビットのアドレス信号ＡＤＲ０−２をデコードするために設計される。
【００２１】
実際のコンパイルドメモリＣＭでは、ワード数は、例えば、”４”から”１０２４”の範囲で設定される。例えば、メモリブロックＭＢＬＫに配置可能な最大のワード数が”５１２”で、ワード数が”６００”に設定された場合、メモリブロックＭＢＬＫ０−１のワード数は、それぞれ”３００”に設定される。メモリブロックＭＢＬＫ０−１は、アドレス信号ＡＤＲ０（最下位ビット）により識別される。各メモリブロックＭＢＬＫ０−１内のワード線ＷＬは、アドレス信号ＡＤＲ１−９により識別される。一方、最大のワード数が”２５６”で、ワード数が”６００”に設定された場合、後述する図１３および図１５に示すように、４つのメモリブロックＭＢＬＫ０−３がレイアウトされる。この場合、各メモリブロックＭＢＬＫ０−３のワード数は、それぞれ”１５０”に設定される。このように各メモリブロックＭＢＬＫのワード数が最小になるようにレイアウトすることにより、ワード線ＷＬに直交するローカルビット線ＬＢＬ、／ＬＢＬの長さを最短にできる。図２に示した例では、ローカルビット線対ＬＢＬ、／ＬＢＬの長さは、メモリブロックＭＢＬＫ０−１ともＬ０になる。この結果、各ローカルビット線ＬＢＬ、／ＬＢＬの寄生容量および配線抵抗を小さくでき、アクセスタイムを短くできる。
【００２２】
図３は、図１に示したメモリブロックＭＢＬＫ０−１の詳細を示している。各メモリブロックＭＢＬＫ０−１は、マトリックス状に配置され、相補のローカルビット線ＬＢＬ、／ＬＢＬおよびワード線ＷＬに接続された複数のスタティックメモリセルＭＣを有している。各メモリセルＭＣは、一対のインバータを有しデータを保持するラッチと、ラッチの相補の記憶ノード（各インバータの出力ノード）にそれぞれ一端が接続された一対のトランスファトランジスタ（ｎＭＯＳトランジスタ）とを有している。トランスファトランジスタの他端は、ローカルビット線ＬＢＬ、／ＬＢＬのいずれかに接続されている。トランスファトランジスタのゲートは、ワード線ＷＬに接続されている。
【００２３】
接続制御部ＣＣＮＴ０−１に形成されるカラムスイッチは、ｎＭＯＳトランジスタで構成され、対応するカラム選択信号Ｃ０またはＣ１が高論理レベルのときにオンする。カラムスイッチのオンにより、ローカルビット線対ＬＢＬ、／ＬＢＬは、センスアンプＳＡおよびグローバルビット線対ＧＢＬ、／ＧＢＬに接続される。なお、センスアンプ領域ＳＡＡは、メモリブロックＭＢＬＫ０−１の非アクセス中にローカルビット線対ＬＢＬ、／ＬＢＬを所定の電圧にプリチャージするための図示しないプリチャージ回路を有している。センスアンプ領域ＳＡＡに、書き込みデータ信号の入力を制御する回路が形成されてもよい。
【００２４】
センスアンプＳＡは、メモリブロックＭＢＬＫ０−１に共有されている。センスアンプＳＡは、読み出しアクセス動作中に、メモリセルＭＣからローカルビット線対ＬＢＬ、／ＬＢＬに読み出されたデータ信号の信号量を増幅し、増幅したデータ信号をグローバルビット線対ＧＢＬ、／ＧＢＬに伝える。なお、書き込みアクセス動作では、グローバルビット線対ＧＢＬ、／ＧＢＬを介してコンパイルドメモリＣＭの外部から供給される書き込みデータ信号が、オンしているカラムスイッチに接続されたローカルビット線対ＬＢＬ、／ＬＢＬに伝えられ、選択されたワード線ＷＬに接続されたメモリセルＭＣに書き込まれる。このとき、センスアンプＳＡも動作する。
【００２５】
図４は、本発明がなされる前のコンパイルドメモリＣＭの要部を示している。この例では、各メモリブロックＭＢＬＫ（ＭＢＬＫ０−１）に配置可能な最大のワード数は”４”として説明する。本発明がなされる前、コンパイルドメモリＣＭは、ワード線ＷＬを図の下側から順次に配置することによりレイアウトされていた。
【００２６】
ユーザにより指定されたワード数が”６”の場合、まず、メモリブロックＭＢＬＫ０に配置可能な全てのワード線ＷＬ０−３がレイアウトされる。次に、残りのワード線ＷＬ４−５が、メモリブロックＭＢＬＫ１にレイアウトされる。このように、本発明前、１つのメモリブロックＭＢＬＫに最大数のワード線ＷＬがレイアウトされた後、次のメモリブロックＭＢＬＫにワード線ＷＬがレイアウトされていた。メモリブロックＭＢＬＫ０に最大数のワード線ＷＬ（２のｎ乗；この例ではｎ＝２）がレイアウトされるため、メモリブロックＭＢＬＫは、アドレス信号ＡＤＲの上位ビットＡＤＲ２により識別される。ワード線ＷＬは、アドレス信号ＡＤＲの下位ビットＡＤＲ０−１により識別される。
【００２７】
しかしながら、図４に示したレイアウト手法では、メモリブロックＭＢＬＫ０のサイズが常に最大になるため、メモリブロックＭＢＬＫ０のローカルビット線ＬＢＬ、／ＬＢＬ（図示せず）の長さＬ０が常に最大になる。これに対してメモリブロックＭＢＬＫ１のローカルビット線ＬＢＬ、／ＬＢＬ（図示せず）の長さＬ１は、長さＬ０より短い。コンパイルドメモリＣＭのアクセスタイム（タイミング仕様）は、ワーストの動作時間を基準に決められる。このため、アクセスタイムは、ローカルビット線ＬＢＬ、／ＬＢＬの長さが最大の場合（Ｌ０）に合わせられて決められる。換言すれば、本発明前、複数のメモリブロックＭＢＬＫで構成されるコンパイルドメモリＣＭのアクセスタイムは、ワード数にかかわらず、ローカルビット線ＬＢＬ、／ＬＢＬの長さが最大の場合に合わせて設定される。
【００２８】
なお、一般に、アクセスタイムは、読み出しアクセスコマンドおよびアドレス信号がコンパイルドメモリＣＭに供給されてから読み出しデータがコンパイルドメモリＣＭから出力されるまでの時間である。あるいは、アクセスタイムは、書き込みアクセスコマンド、書き込みアドレス信号および書き込みデータがコンパイルドメモリＣＭに供給されてから書き込みデータがメモリセルに書き込まれるまでの時間である。
【００２９】
図５は、本発明がなされる前に検討されたコンパイルドメモリＣＭの要部を示している。コンパイルドメモリＣＭのアクセスタイムを短縮するためには、メモリブロックＭＢＬＫ０−１のローカルビット線ＬＢＬ、／ＬＢＬの長さを等しくし、ローカルビット線ＬＢＬ、／ＬＢＬの長さ短くすればよい。すなわち、メモリブロックＭＢＬＫ０−１に配置されるワード線ＷＬの数を等しくすればよい。そこで、メモリブロックＭＢＬＫ０にワード線ＷＬ０−２を配置し、メモリブロックＭＢＬＫ１にワード線ＷＬ３−５を配置する。しかしながら、この場合、ワード線ＷＬ３は、アドレス信号ＡＤＲ２＝Ｌで選択されるが（図５（ａ））、ワード線ＷＬ３を含むメモリブロックＭＢＬＫ１の接続制御部ＣＣＮＴ１は、アドレス信号ＡＤＲ２＝Ｈで選択される（図５（ｂ））。この結果、コンパイルドメモリＣＭは誤動作する。
【００３０】
図６は、コンパイルドメモリＣＭにレイアウトされるワード線ＷＬの数(ワード数)とアクセスタイムｔＡＡＣの関係を示している。図の実線は、本発明の適用後を示し、図の破線は、本発明の適用前を示している。この例では、メモリブロックＭＢＬＫに配置可能な最大のワード数は”５１２”である。本発明では、図２に示したように、ワード線ＷＬは、メモリブロックＭＢＬＫ０−１に交互に配置されるため、ローカルビット線ＬＢＬ、／ＬＢＬの長さは、ワード数が”１０２４”になるまで、ワード線ＷＬが２本増加する毎に増加する。すなわち、アクセスタイムｔＡＡＣは、ワード数が”１０２４”になるまで、ワード線ＷＬが２本増加する毎に増加する。これに対して、本発明前では、図４に示したように、ワード線ＷＬは、メモリブロックＭＢＬＫ毎に配置される。このため、ローカルビット線ＬＢＬ、／ＬＢＬの長さは、ワード数が”５１２”になるまで、ワード線ＷＬが１本増加する毎に増加する。すなわち、アクセスタイムｔＡＡＣは、ワード数が”５１２”になるまで、ワード線ＷＬが１本増加する毎に増加する。
【００３１】
例えば、ワード数が”６００”に設定された場合、本発明では、各メモリブロックＭＢＬＫ０−１に３００本のワード線ＷＬが配置される。このときのコンパイルドメモリＣＭのアクセスタイムｔＡＡＣ（仕様）は、３００本のワード線ＷＬを横切るローカルビット線ＬＢＬ、／ＬＢＬの長さに対応するＴ１である。一方、本発明前では、メモリブロックＭＢＬＫ０に５１２本のワード線ＷＬが配置され、メモリブロックＭＢＬＫ１に残りの８８本のワード線ＷＬが配置される。このときのコンパイルドメモリＣＭのアクセスタイムｔＡＡＣ（仕様）は、５１２本のワード線ＷＬを横切るローカルビット線ＬＢＬ、／ＬＢＬの長さに対応するＴ２である。なお、アクセスタイムｔＡＡＣのＴ０は、ワード線ＷＬの数に関わりなく常に一定の動作時間が必要なデコーダや入出力回路などのために使用される時間である。
【００３２】
また、発明では、ワード線ＷＬは、常に一対のメモリブロックＭＢＬＫ０−１に交互に配置される。アクセスタイムｔＡＡＣは、ワード線ＷＬが２本増加する毎に増える。したがって、アクセスタイムｔＡＡＣは、ワード数が”５１２”より少ない場合にも本発明前に比べて短縮される。
【００３３】
図７は、第１の実施形態のコンパイルドメモリＣＭのレイアウト方法を示している。図に示したフローは、コンパイルドメモリＣＭのレイアウト設計ツールがレイアウトプログラムを実行することにより実現される。例えば、レイアウト設計ツールは、ワークステーション等のコンピュータであり、レイアウトプログラム（コンパイラ）は、内蔵されるＣＰＵ等のコントローラにより実行される。コンパイルドメモリＣＭのレイアウトデータは、図に示したフローを実行することにより生成される。なお、図７では、データ信号が伝達される経路上の回路のレイアウト設計フローの記載を省略している。
【００３４】
まず、ステップＳ１０において、コンパイラは、コンパイルドメモリＣＭの仕様であるデータ信号のビット数ＢＬＮと、ワード線ＷＬの数を示すワード数ＷＬＮの入力を受ける。例えば、６４ｋビットのコンパイルドメモリＣＭをＡＳＩＣチップに搭載し、ビット数ＢＬＮが６４ビットに指定される場合、ワード数ＷＬＮは、１０２４に指定される。ビット数ＢＬＮが１２８ビットに指定される場合、ワード数ＷＬＮは、５１２に指定される。なお、ビット数ＢＬＮは、データ端子の数と、ワード線ＷＬに接続されるメモリセルＭＣ（ビット線ＬＢＬ）の数とに分けて指定されてもよい。この場合、ビット線ＬＢＬの数がビット数ＢＬＮとして扱われる。
【００３５】
次に、ステップＳ１２において、入力されたワード数ＷＬＮが、１つのメモリブロックＭＢＬＫに配置可能な最大のワード数ＷＬＮｍａｘを超えるか否かが判定される。ワード数ＷＬＮがワード数ＷＬＮｍａｘを超える場合、処理はステップＳ１６に移行する。ワード数ＷＬＮがワード数ＷＬＮｍａｘ以下の場合、処理はステップＳ１４に移行する。
【００３６】
ステップＳ１４では、一対のメモリブロックＭＢＬＫ０−１が生成され、各メモリブロックＭＢＬＫ０−１にワード数ＷＬＮの半分のワード線ＷＬが配置される。一方、ステップＳ１６では、ワード数ＷＬＮｍａｘより小さいワード数ＷＬＮ１が現れるまで、ワード数ＷＬＮが偶数値（２、４、６、．．．）で割られる。そして、求めた偶数値がメモリブロックＭＢＬＫの数として使用され、求めたワード数ＷＬＮ１が各メモリブロックＭＢＬＫに配置される。すなわち、指定されたワード数ＷＬＮが、最大のワード数ＷＬＮｍａｘより小さくなるように均等に分配され、偶数個のメモリブロックＭＢＬＫのレイアウトデータが生成される。
【００３７】
次に、ステップＳ１８において、一対のメモリブロックＭＢＬＫの間に共通のセンスアンプ領域ＳＡＡが割り当てられ、センスアンプＳＡが配置される。ステップＳ２０において、メモリブロックＭＢＬＫとセンスアンプ領域ＳＡＡの間に接続制御部ＣＣＮＴが配置される。
【００３８】
次に、ステップＳ２２において、ワード線ＷＬを識別するために必要なアドレス信号ＡＤＲのビット数が求められ、メモリブロックＭＢＬＫを識別するビットＭＢＬＫｂと、ワード線ＷＬ（ワードグループＷＬＧ）を識別するためのビットＷＬＧｂとが、アドレス信号ＡＤＲの下位ビットから順に割り当てられる。そして、メインデコーダＭＤの論理が生成される。ビットＭＢＬＫｂ、ＷＬＧｂは、図２に示したＡＤＲ０、ＡＤＲ１（またはＡＤＲ２）にそれぞれ対応する。
【００３９】
次に、ステップＳ２４において、生成されたメインデコーダＭＤの論理にしたがって、メインデコーダＭＤ内に配線される網目状のデコード信号線の交差部にコンタクト部ＣＯＮＴが配置される。ステップＳ２６において、メインデコーダＭＤの出力がワード線ＷＬおよび接続制御部ＣＣＮＴのカラムスイッチに接続される。そして、コンパイルドメモリＣＭのレイアウトデータが完成する。
【００４０】
以上、第１の実施形態では、メモリブロックＭＢＬＫを識別するためのアドレス信号ＡＤＲのビットＡＤＲ０は、ワード線ＷＬ（ワードグループＷＬＧ）を識別するためのアドレス信号ＡＤＲのビットＡＤＲ１−２より下位に割り当てられる。これにより、メモリブロックＭＢＬＫに配置されるワード線ＷＬの数を互いに等しくでき、ローカルビット線ＬＢＬ、／ＬＢＬの長さを短くできる。この結果、ローカルビット線ＬＢＬ、／ＬＢＬの配線遅延を最小限にでき、コンパイルドメモリＣＭのアクセスタイムｔＡＡＣを短縮できる。
【００４１】
図８は、本発明の第２の実施形態におけるコンパイルドメモリＣＭのメインデコーダＭＤの詳細を示している。第１の実施形態で説明した要素と同一の要素については、同一の符号を付し、これ等については、詳細な説明を省略する。コンパイルドメモリＣＭは、例えば、ＳＲＡＭコアであり、図１に示したように、他の機能ブロックとともにＡＳＩＣチップ内に形成される。ＡＳＩＣチップにより、単独でシステムが構成され、あるいは、他の半導体チップとともにシステムが構成される。
【００４２】
この例では、ユーザ仕様によりワード数が”８”に指定され、８本のワード線ＷＬがコンパイルドメモリＣＭに配置される。各メモリブロックＭＢＬＫ０−１は、ワード線ＷＬが交互に４本ずつ配置される。このため、ローカルビット線対ＬＢＬ、／ＬＢＬの長さをメモリブロックＭＢＬＫ０−１ともＬ０に設定でき、アクセスタイムｔＡＡＣを最小にできる。図に示した太い配線と大きい黒丸で示したコンタクト部ＣＯＮＴは、上述した図２に追加される要素を示している。このように、本発明では、指定されるワード数が異なる場合にも、メインデコーダＭＤの信号線の配線およびコンタクト部ＣＯＮＴを追加することにより、コンパイルドメモリＣＭのレイアウトデータを容易に生成できる。コンパイルドメモリＣＭのレイアウト方法は、図７に示したフローと同じである。
【００４３】
以上、第２の実施形態においても、上述した第１の実施形態と同様の効果を得ることができる。さらに、ワード数が変更される場合にも、配線およびコンタクト部ＣＯＮＴを追加あるいは削除することにより、コンパイルドメモリＣＭのレイアウトデータを容易に生成できる。
【００４４】
図９は、本発明の第３の実施形態における要部の詳細を示している。第１の実施形態で説明した要素と同一の要素については、同一の符号を付し、これ等については、詳細な説明を省略する。コンパイルドメモリＣＭは、例えば、ＳＲＡＭコアであり、図１に示したように、他の機能ブロックとともにＡＳＩＣチップ内に形成される。ＡＳＩＣチップにより、単独でシステムが構成され、あるいは、他の半導体チップとともにシステムが構成される。コンパイルドメモリＣＭのレイアウト方法は、図７に示したフローと同じである。
【００４５】
この例では、コンパイルドメモリＣＭは、センスアンプＳＡの動作タイミングを最適にするためのダミー領域ＤＭＹを有している。センスアンプＳＡは、メモリセルＭＣからの読み出しデータ信号を処理する回路であり、データ処理部として動作する。ダミー領域ＤＭＹには、ダミーメモリセルＤＭＣ、ダミーローカルビット線対ＤＬＢＬ、／ＤＬＢＬ、ダミーセンスアンプＤＳＡおよびダミーカラムスイッチＤＣ０、ＤＣ１が配置される。ダミーメモリセルＤＭＣのレイアウトデータおよび配置間隔は、リアルメモリセルＭＣのそれ等と同じである。但し、メモリブロックＭＢＬＫ０において、ダミーセンスアンプＤＳＡから最も遠いダミーメモリセルＤＭＣｒｅｆは、ダミーローカルビット線／ＤＬＢＬに接続されるラッチの記憶ノードが接地線に接続されている。また、ダミーメモリセルＤＭＣｒｅｆのトランスファトランジスタのゲートは、コンパイルドメモリＣＭのメモリセルＭＣへのアクセス要求に応答して高レベルに活性化されるアクティブ信号ＡＣＴを受けている。このため、ダミーローカルビット線／ＤＬＢＬ（ダミーデータ信号）のレベルは、アクティブ信号ＡＣＴの活性化に同期して低レベルに変化する。なお、ダミーローカルビット線対ＤＬＢＬ、／ＤＬＢＬは、アクティブ信号ＡＣＴが活性化される前に、メモリセルＭＣと同様にプリチャージ回路により高レベルにプリチャージされる。
【００４６】
メモリブロックＭＢＬＫ０のダミーローカルビット線ＤＬＢＬ、／ＤＬＢＬに接続されたカラムスイッチＤＣ０は、ゲートで電源電圧ＶＤＤを受けて常にオンしている。メモリブロックＭＢＬＫ１のダミーローカルビット線ＤＬＢＬ、／ＤＬＢＬに接続されたカラムスイッチＤＣ１は、ゲートで接地電圧ＶＳＳを受けて常にオフしている。ダミーセンスアンプＤＳＡは、例えば、カラムスイッチＤＣ０を介して入力がダミーローカルビット線／ＤＬＢＬに接続されたＣＭＯＳインバータで構成される。ダミーセンスアンプＤＳＡは、アクティブ信号ＡＣＴの活性化、すなわち、ダミーデータ信号の出力タイミングに同期してセンスアンプＳＡの増幅動作を開始するためのセンスアンプイネーブル信号ＳＥＮを出力する。センスアンプイネーブル信号ＳＥＮは、全てのセンスアンプＳＡに供給される。
【００４７】
センスアンプＳＡの動作タイミングは、アクセスされるメモリセルＭＣの位置（ローカルビット線ＬＢＬ、／ＬＢＬの長さ）に依存せず、最適に設定される必要がある。換言すれば、センスアンプＳＡの動作タイミングは、アクセス速度が最も遅いメモリセルＭＣに合わせて設定される必要がある。このために、アクティブ信号ＡＣＴの活性化からセンスアンプイネーブル信号ＳＥＮの出力までの期間は、ダミーセンスアンプＤＳＡから最も遠いダミーメモリセルＤＭＣｒｅｆを用いて設定される。ダミーメモリセルＤＭＣｒｅｆは、セルフタイミングセルとも称される。この種のタイミング設定手法は、セルフタイミング手法と称される。
【００４８】
セルフタイミング手法では、センスアンプＳＡの動作タイミングは、センスアンプ領域ＳＡＡから最も離れたメモリセルＭＣ（ＤＭＣｒｅｆ）の動作タイミングに合わせて設定される。セルフタイミング手法を採用する本発明前のコンパイルドメモリＣＭでは、アクセスタイムｔＡＡＣは、図６に示した破線と同じである。セルフタイミング手法を採用するコンパイルドメモリＣＭに、この実施形態を適用することにより、アクセスタイムｔＡＡＣは、図６に示した実線と同じにできる。
【００４９】
以上、第３の実施形態においても、上述した第１の実施形態と同様の効果を得ることができる。さらに、セルフタイミング手法を採用するコンパイルドメモリＣＭにおいても、アクセスタイムｔＡＡＣを短縮できる。
【００５０】
図１０は、本発明の第４の実施形態のコンパイルドメモリＣＭを示している。第１の実施形態で説明した要素と同一の要素については、同一の符号を付し、これ等については、詳細な説明を省略する。コンパイルドメモリＣＭは、例えば、ＳＲＡＭコアであり、図１に示したように、他の機能ブロックとともにＡＳＩＣチップ内に形成される。ＡＳＩＣチップにより、単独でシステムが構成され、あるいは、他の半導体チップとともにシステムが構成される。
【００５１】
この実施形態では、４本のワード線ＷＬ毎にワードグループＷＬＧ（ＷＬＧ０−５）が形成される。メモリブロックＭＢＬＫ０−１において、ワード線ＷＬ（ＷＬ０−２３）は、ワードグループＷＬＧを１単位として配置される。その他の構成は、ワード線ＷＬの本数が異なることを除き第１の実施形態と同じである。
【００５２】
図１１は、第４の実施形態のメインデコーダＭＤの論理を示している。メモリブロックＭＢＬＫ０−１および接続制御部ＣＣＮＴ０−１は、アドレス信号ＡＤＲのビットＡＤＲ２により識別される。各メモリブロックＭＢＬＫ０−１内のワードグループＷＬＧは、アドレス信号ＡＤＲの上位ビットＡＤＲ３−４により識別される。各ワードグループＷＬＧ内のワード線ＷＬは、アドレス信号ＡＤＲの下位ビットＡＤＲ０−１により識別される。
【００５３】
このように、メインデコーダＭＤの論理は、メモリブロックＭＢＬＫ０−１および接続制御部ＣＣＮＴ０−１を識別するためのアドレス信号ＡＤＲのビットを、ワードグループＷＬＧを識別するためのアドレス信号ＡＤＲのビットより下位に割り当てることにより構成される。さらに、メインデコーダＭＤの論理は、各ワードグループＷＬＧ内のワード線ＷＬを識別するためのアドレス信号ＡＤＲのビットを、メモリブロックＭＢＬＫ０−１を識別するためのアドレス信号ＡＤＲのビットより下位に割り当てることにより構成される。アドレス信号ＡＤＲ０−４が順次進むと、メモリブロックＭＢＬＫ０−１は、ワードグループＷＬＧを１単位として交互に選択され、アクセスされる。
【００５４】
図１２は、第４の実施形態のコンパイルドメモリＣＭのレイアウト方法を示している。この実施形態では、図７のステップＳ２２の代わりにステップＳ２２ａが実施される。その他のフローは、図７と同じである。
【００５５】
ステップＳ２２ａでは、ワード線ＷＬを識別するために必要なアドレス信号ＡＤＲのビット数が求められ、アドレス信号ＡＤＲの下位ビットから順に、ワード線ＷＬを識別するビットＷＬｂと、メモリブロックＭＢＬＫを識別するビットＭＢＬＫｂと、ワードグループＷＬＧを識別するためのビットＷＬＧｂとが割り当てられる。そして、メインデコーダＭＤの論理が生成される。ビットＷＬｂ、ＭＢＬＫｂ、ＷＬＧｂは、図１１に示したＡＤＲ０−１、ＡＤＲ２、ＡＤＲ４−５にそれぞれ対応する。
【００５６】
以上、第４の実施形態においても、上述した第１の実施形態と同様の効果を得ることができる。さらに、ワードグループＷＬＧが複数のワード線ＷＬにより構成される場合にも、アクセスタイムｔＡＡＣを短縮可能なコンパイルドメモリＣＭのレイアウトデータを容易に生成できる。
【００５７】
図１３は、本発明の第５の実施形態のコンパイルドメモリＣＭを示している。第１の実施形態で説明した要素と同一の要素については、同一の符号を付し、これ等については、詳細な説明を省略する。コンパイルドメモリＣＭは、例えば、ＳＲＡＭコアであり、図１に示したように、他の機能ブロックとともにＡＳＩＣチップ内に形成される。ＡＳＩＣチップにより、単独でシステムが構成され、あるいは、他の半導体チップとともにシステムが構成される。コンパイルドメモリＣＭのレイアウト方法は、図７に示したフローと同じである。
【００５８】
この実施形態では、コンパイルドメモリＣＭは、一対のメモリブロックＭＢＬＫ（ＭＢＬＫ０−１またはＭＢＬＫ２−３）で構成されるメモリユニットＭＵ０−１で構成されている。すなわち、コンパイルドメモリＣＭは、４つのメモリブロックＭＢＬＫ０−３を有している。各メモリユニットＭＵ０−１は、図２に示したメモリブロック対と同じ構成である。各メモリブロックＭＢＬＫ０−３は、３本のワード線ＷＬ（ワードグループＷＬＧ）により構成される。例えば、メモリユニットＭＵ１では、メモリブロックＭＢＬＫ２は、接続制御部ＣＣＮＴ２を介してセンスアンプ領域ＳＡＡのセンスアンプＳＡに接続される。メモリブロックＭＢＬＫ３は、接続制御部ＣＣＮＴ３を介してセンスアンプ領域ＳＡＡのセンスアンプＳＡに接続される。
【００５９】
メモリブロックＭＢＬＫの数を増やすことにより、センスアンプ領域ＳＡＡや接続制御部ＣＣＮＴの面積は増加する。しかし、ローカルビット線ＬＢＬ、／ＬＢＬの長さは短くなり、アクセスタイムｔＡＡＣは短縮される。このため、アクセスタイムｔＡＡＣがコンパイルドメモリＣＭのレイアウトサイズよりも優先される場合、メモリブロックＭＢＬＫの数を増やすことが有効である。また、ユーザ仕様に応じて指定されるワード数が、メモリブロックＭＢＬＫに配置可能な最大のワード数の２倍を超える場合にも、４つ以上のメモリブロックＭＢＬＫを形成する必要がある。
【００６０】
図１４は、第５の実施形態のメインデコーダＭＤの論理を示している。メモリブロックＭＢＬＫ０−３および接続制御部ＣＣＮＴ０−３は、アドレス信号ＡＤＲのビットＡＤＲ０−１により識別される。各メモリブロックＭＢＬＫ０−１内のワード線ＷＬ（ワードグループＷＬＧ）は、アドレス信号ＡＤＲの上位ビットＡＤＲ２−３により識別される。
【００６１】
以上、第５の実施形態においても、上述した第１の実施形態と同様の効果を得ることができる。さらに、コンパイルドメモリＣＭが、一対のメモリブロックＭＢＬＫで構成される複数のメモリユニットＭＵを有する場合にも、アクセスタイムｔＡＡＣを短縮可能なコンパイルドメモリＣＭのレイアウトデータを容易に生成できる。
【００６２】
図１５は、本発明の第６の実施形態のコンパイルドメモリＣＭを示している。第１および第４の実施形態で説明した要素と同一の要素については、同一の符号を付し、これ等については、詳細な説明を省略する。コンパイルドメモリＣＭは、例えば、ＳＲＡＭコアであり、図１に示したように、他の機能ブロックとともにＡＳＩＣチップ内に形成される。ＡＳＩＣチップにより、単独でシステムが構成され、あるいは、他の半導体チップとともにシステムが構成される。コンパイルドメモリＣＭのレイアウト方法は、図１２に示したフローと同じである。
【００６３】
この実施形態では、コンパイルドメモリＣＭは、一対のメモリブロックＭＢＬＫ（ＭＢＬＫ０−１またはＭＢＬＫ２−３）で構成されるメモリユニットＭＵ０−１で構成されている。すなわち、コンパイルドメモリＣＭは、４つのメモリブロックＭＢＬＫ０−３を有している。各メモリユニットＭＵ０−１は、割り当てられるアドレス信号が異なることを除き、図１０に示したメモリブロック対ＭＢＬＫ０−１と同じ構造を有している。すなわち、４本のワード線ＷＬ毎にワードグループＷＬＧ（ＷＬＧ０−１１）が形成される。メモリブロックＭＢＬＫ０−３において、ワード線ＷＬ（ＷＬ０−４７）は、ワードグループＷＬＧを１単位として配置される。例えば、メモリユニットＭＵ１では、メモリブロックＭＢＬＫ２は、接続制御部ＣＣＮＴ２を介してセンスアンプ領域ＳＡＡのセンスアンプＳＡに接続される。メモリブロックＭＢＬＫ３は、接続制御部ＣＣＮＴ３を介してセンスアンプ領域ＳＡＡのセンスアンプＳＡに接続される。この実施形態では、図１６に示すメインデコーダＭＤにより、ワードグループＷＬＧ０−３、ＷＬＧ４−７、ＷＬＧ８−１１は、メモリブロックＭＢＬＫ０−３に順次割り当てられる。図１５に限らず、コンパイルドメモリＣＭが複数のメモリブロックＭＢＬＫを有する場合、ワードグループＷＬＧは、メモリブロックＭＢＬＫに順次割り当てられる。
【００６４】
図１６は、第６の実施形態のメインデコーダＭＤの論理を示している。メモリブロックＭＢＬＫ０−３および接続制御部ＣＣＮＴ０−３は、アドレス信号ＡＤＲのビットＡＤＲ２−３により識別される。各メモリブロックＭＢＬＫ０−３内のワードグループＷＬＧは、アドレス信号ＡＤＲの上位ビットＡＤＲ４−５により識別される。各ワードグループＷＬＧ内のワード線ＷＬは、アドレス信号ＡＤＲの下位ビットＡＤＲ０−１により識別される。
【００６５】
以上、第６の実施形態においても、上述した第１、第４および第５の実施形態と同様の効果を得ることができる。すなわち、コンパイルドメモリＣＭが複数のメモリユニットＭＵ０−１により構成され、かつワードグループＷＬＧが複数のワード線ＷＬにより構成される場合にも、アクセスタイムｔＡＡＣを短縮できる。また、アクセスタイムｔＡＡＣを短縮可能なコンパイルドメモリＣＭのレイアウトデータを容易に生成できる。
【００６６】
なお、上述した実施形態では、本発明をＳＲＡＭに適用する例について述べた。本発明はかかる実施形態に限定されるものではない。本発明は、ＡＳＩＣチップに搭載されるＤＲＡＭコアや強誘電体メモリコアなどの半導体メモリであって、ユーザ仕様によりワード数が変更されるコンパイルドメモリＣＭに適用できる。さらに、コンパイルドメモリＣＭが搭載されるチップは、ＡＳＩＣチップに限定されない。例えば、ＡＳＳＰ（Application Specific Standard Product）チップや、シングルチップマイクロコンピュータチップなどに、本発明のコンパイルドメモリＣＭを搭載してもよい。
【００６７】
上述した第３の実施形態では、セルフタイミング手法を用いてセンスアンプＳＡの動作タイミングを最適に設定する例について述べた。本発明はかかる実施形態に限定されるものではない。例えば、セルフタイミング手法を用いて、カラムスイッチあるいはＩ／Ｏ回路の動作タイミングを最適に設定してもよい。
【００６８】
上述した実施形態に関して、さらに以下の付記を開示する。
（付記１）
機能ブロックとともにチップ内に形成され、機能ブロックによりアクセスされるコンパイルドメモリであって、
少なくとも１本のワード線で構成されたワードグループと、ワード線に接続されたメモリセルと、各メモリセルに接続されたビット線とを各々有する一対のメモリブロックと、
前記ビット線を介して前記メモリセルにデータ信号を入出力するデータ制御部と、
前記各メモリブロックの前記ビット線をデータ制御部に選択的に接続するために、前記メモリブロックに対応してそれぞれ設けられる接続制御部と、
アクセスされるメモリブロックに対応する接続制御部を選択するとともに、前記ワードグループのいずれかを選択するためにアドレス信号をデコードするデコーダ部とを備え、
前記デコーダ部の論理は、前記メモリブロックおよび前記接続制御部を識別するためのアドレス信号のビットを、前記ワードグループを識別するための前記アドレス信号のビットより下位に割り当てることにより構成されていることを特徴とするコンパイルドメモリ。
（付記２）
付記１記載のコンパイルドメモリにおいて、
前記各ワードグループは、複数のワード線で構成され、
前記デコーダ部の論理は、前記各ワードグループ内のワード線を識別するための前記アドレス信号のビットを、前記メモリブロックを識別するための前記アドレス信号のビットより下位に割り当てることにより構成されていることを特徴とするコンパイルドメモリ。
（付記３）
付記１記載のコンパイルドメモリにおいて、
前記一対のメモリブロックで構成される複数のメモリユニットとを備えていることを特徴とするコンパイルドメモリ。
（付記４）
付記１記載のコンパイルドメモリにおいて、
前記データ制御部は、前記接続制御部を介して前記メモリブロックのビット線に接続される共通のセンスアンプを備えていることを特徴とするコンパイルドメモリ。
（付記５）
付記１記載のコンパイルドメモリにおいて、
前記メモリブロックのいずれかは、前記メモリセルのアクセス要求に応答して所定の論理値を示すダミーデータ信号を出力するダミーメモリセルと、ダミーメモリセルに接続されたダミービット線とを備え、
前記データ制御部において、前記メモリセルからの読み出しデータ信号を処理する回路は、前記ダミーデータ信号の出力タイミングに同期して動作を開始することを特徴とするコンパイルドメモリ。
（付記６）
付記５記載のコンパイルドメモリにおいて、
前記データ制御部は、前記接続制御部を介して前記メモリブロックのビット線に接続される共通のセンスアンプを備え、
前記センスアンプは、前記ダミーデータ信号の出力タイミングに同期して動作を開始することを特徴とするコンパイルドメモリ。
（付記７）
機能ブロックと、機能ブロックによりアクセスされるコンパイルドメモリとを有するＡＳＩＣチップであって、
前記コンパイルドメモリは、
少なくとも１本のワード線で構成されたワードグループと、ワード線に接続されたメモリセルと、各メモリセルに接続されたビット線とを各々有する一対のメモリブロックと、
前記ビット線を介して前記メモリセルにデータ信号を入出力するデータ制御部と、
前記各メモリブロックの前記ビット線をデータ制御部に選択的に接続するために、前記メモリブロックに対応してそれぞれ設けられる接続制御部と、
アクセスされるメモリブロックに対応する接続制御部を選択するとともに、前記ワードグループのいずれかを選択するためにアドレス信号をデコードするデコーダ部とを備え、
前記デコーダ部の論理は、前記メモリブロックおよび前記接続制御部を識別するためのアドレス信号のビットを、前記ワードグループを識別するための前記アドレス信号のビットより下位に割り当てることにより構成されていることを特徴とするＡＳＩＣチップ。
（付記８）
付記７記載のＡＳＩＣチップにおいて、
前記各ワードグループは、複数のワード線で構成され、
前記デコーダ部の論理は、前記各ワードグループ内のワード線を識別するための前記アドレス信号のビットを、前記メモリブロックを識別するための前記アドレス信号のビットより下位に割り当てることにより構成されていることを特徴とするＡＳＩＣチップ。
（付記９）
付記７記載のＡＳＩＣチップにおいて、
前記一対のメモリブロックで構成される複数のメモリユニットとを備えていることを特徴とするコンパイルドメモリ。
（付記１０）
付記７記載のＡＳＩＣチップにおいて、
前記データ制御部は、前記接続制御部を介して前記メモリブロックのビット線に接続される共通のセンスアンプを備えていることを特徴とするＡＳＩＣチップ。
（付記１１）
付記７記載のＡＳＩＣチップにおいて、
前記メモリブロックのいずれかは、前記メモリセルのアクセス要求に応答して所定の論理値を示すダミーデータ信号を出力するダミーメモリセルと、ダミーメモリセルに接続されたダミービット線とを備え、
前記データ制御部において、前記メモリセルからの読み出しデータ信号を処理する回路は、前記ダミーデータ信号の出力タイミングに同期して動作を開始することを特徴とするコンパイルドメモリ。
（付記１２）
付記１１記載のＡＳＩＣチップにおいて、
前記データ制御部は、前記接続制御部を介して前記メモリブロックのビット線に接続される共通のセンスアンプを備え、
前記センスアンプは、前記ダミーデータ信号の出力タイミングに同期して動作を開始することを特徴とするＡＳＩＣチップ。
（付記１３）
機能ブロックとともにチップ内に形成され、機能ブロックによりアクセスされるコンパイルドメモリのレイアウト方法であって、
データ信号のビット数と、メモリセルに接続されるワード線の数を示すワード数との入力を受け、
入力されたワード数が、メモリブロックに配置可能な最大のワード数を超える場合、指定されたワード数を、前記最大のワード数より小さくなるように均等に分配して、偶数個のメモリブロックのレイアウトデータを生成し、
前記メモリブロックを識別するためのアドレス信号のビットを、少なくとも１本のワード線で構成されるワードグループを識別するための前記アドレス信号のビットより下位に割り当てて、前記メモリブロックおよび前記ワード線を選択するためのデコーダ部の論理を生成し、
生成した論理にしたがって、前記デコーダ部内に配線されるデコード信号線の交差部に、配線を互いに接続するためのコンタクト部を配置することを特徴とするコンパイルドメモリのレイアウト方法。
（付記１４）
付記１３記載のコンパイルドメモリのレイアウト方法において、
互いに隣接する一対のメモリブロックの間にセンスアンプを配置し、
前記センスアンプと各メモリブロックとの間に、メモリブロック内に配線されるビット線を前記センスアンプに接続するためのスイッチを有する接続制御部を配置し、
前記メモリブロックを選択するためのデコーダの出力を前記スイッチの制御端子に接続することを特徴とするコンパイルドメモリのレイアウト方法。
（付記１５）
付記１３記載のコンパイルドメモリのレイアウト方法において、
前記ワード線は、複数のワード線で構成されるワードグループを１単位として配線され、
前記各ワードグループ内のワード線を識別するための前記アドレス信号のビットを、前記メモリブロックを識別するための前記アドレス信号のビットより下位に割り当てて、前記ワード線を選択するための前記デコーダ部の論理を生成し、
生成した論理にしたがって、前記コンタクト部を配置することを特徴とするコンパイルドメモリのレイアウト方法。
【００６９】
以上、本発明について詳細に説明してきたが、上記の実施形態およびその変形例は発明の一例に過ぎず、本発明はこれに限定されるものではない。本発明を逸脱しない範囲で変形可能であることは明らかである。
【産業上の利用可能性】
【００７０】
本発明は、ＡＳＩＣ等のチップ内に形成されるコンパイルドメモリおよびコンパイルドメモリのレイアウト方法に適用できる。
【図面の簡単な説明】
【００７１】
【図１】本発明の第１の実施形態を示すブロック図である。
【図２】図１に示したコンパイルドメモリのメインデコーダの詳細を示す回路図である。
【図３】図１に示したメモリブロックの詳細を示す回路図である。
【図４】本発明がなされる前のコンパイルドメモリの要部を示す回路図である。
【図５】本発明がなされる前に検討されたコンパイルドメモリの要部を示す回路図である。
【図６】コンパイルドメモリにレイアウトされるワード線の数とアクセスタイムの関係を示す説明図である。
【図７】第１の実施形態のコンパイルドメモリのレイアウト方法を示すフロー図である。
【図８】本発明の第２の実施形態におけるメインデコーダの詳細を示す回路図である。
【図９】本発明の第３の実施形態における要部の詳細を示す回路図である。
【図１０】本発明の第４の実施形態のコンパイルドメモリを示す回路図である。
【図１１】第４の実施形態のメインデコーダの論理を示す説明図である。
【図１２】第４の実施形態のコンパイルドメモリのレイアウト方法を示すフロー図である。
【図１３】本発明の第５の実施形態のコンパイルドメモリを示す回路図である。
【図１４】第５の実施形態のメインデコーダの論理を示す説明図である。
【図１５】本発明の第６の実施形態のコンパイルドメモリを示す回路図である。
【図１６】第６の実施形態のメインデコーダの論理を示す説明図である。
【符号の説明】
【００７２】
ＣＣＮＴ０−１‥接続制御部；ＣＭ‥コンパイルドメモリ；ＣＮＴＬ‥コントローラ；ＣＰＧ‥タイミング制御部；Ｉ／Ｏ‥データ入出力部；ＭＢＬＫ０−１‥メモリブロック；ＭＤ‥メインデコーダ；ＰＥＲＩ‥周辺回路；ＳＡ‥センスアンプ；ＳＡＡ‥センスアンプ領域；ＷＬＧ‥ワードグループ；ＷＬ‥ワード線
【国際調査報告】
2008072354.tif 000019
2008072354.tif 000020
2008072354.tif 000021
2008072354.tif 000022