(57)【特許請求の範囲】
【請求項１】
メモリＢＩＳＴ（Built-In Self Test）回路を内部に備えるメモリ回路を有する半導体装置の設計をプロセッサが実行する半導体装置の設計方法であって、
前記メモリ回路は、パルスジェネレータ部と、入出力されるデータの各ビットに対応して配置され前記データを入出力する複数の入出力部とを有し、
前記プロセッサが、前記パルスジェネレータ部のブロックと前記複数の入出力部のブロックとを第１の方向に隣接して配置し、
前記プロセッサが、前記パルスジェネレータ部に隣接して配置することで前記パルスジェネレータ部との間で伝送される信号の配線が接続されるようにレイアウトされた、試験パターンの生成を行う前記メモリＢＩＳＴ回路のパターンジェネレータ部のブロックを、前記パルスジェネレータ部のブロックに前記第１の方向とは異なる第２の方向に隣接して配置し、
前記プロセッサが、前記入出力部に隣接して配置することで前記入出力部との間で伝送される信号の配線が接続されるようにレイアウトされた、出力値と前記パターンジェネレータ部から供給される期待値とを比較する、前記入出力部と同数の前記メモリＢＩＳＴ回路のコンパレータ部のブロックを、前記複数の入出力部に合わせたピッチで前記入出力部のブロックに前記第２の方向に隣接して配置することを特徴とする半導体装置の設計方法。
【請求項２】
前記パターンジェネレータ部が、試験に用いるアドレスを発生するアドレスカウンタと前記メモリ回路に応じて前記アドレスカウンタが発生するアドレスを制限するチェック回路とを有していることを特徴とする請求項１記載の半導体装置の設計方法。
【請求項３】
前記パターンジェネレータ部が、試験時には前記メモリＢＩＳＴ回路に電源を供給し、前記試験時以外は前記メモリＢＩＳＴ回路への電源の供給を遮断する電源スイッチを有していることを特徴とする請求項１又は２記載の半導体装置の設計方法。
【請求項４】
前記パルスジェネレータ部のブロックに隣接する側の前記パターンジェネレータ部のブロックの幅は、前記パルスジェネレータ部のブロックの幅に等しいことを特徴とする請求項１〜３の何れか１項に記載の半導体装置の設計方法。
【請求項５】
前記パルスジェネレータ部のブロックに隣接する側の前記パターンジェネレータ部のブロックの幅は、前記パルスジェネレータ部のブロックの幅より大きいことを特徴とする請求項１〜３の何れか１項に記載の半導体装置の設計方法。
【請求項６】
前記パルスジェネレータ部のブロックに隣接する側の前記パターンジェネレータ部のブロックの幅は、前記パルスジェネレータ部のブロックの幅より小さいことを特徴とする請求項１〜３の何れか１項に記載の半導体装置の設計方法。
【請求項７】
前記入出力部のブロックに隣接する側の前記コンパレータ部のブロックの幅は、前記メモリ回路に対して入出力されるデータの１ビット分に対応する幅を有することを特徴とする請求項１〜６の何れか１項に記載の半導体装置の設計方法。
【請求項８】
メモリＢＩＳＴ（Built-In Self Test）回路を内部に備えるメモリ回路を有する半導体装置であって、
前記メモリ回路は、
第１の方向にパルスジェネレータ部に隣接して配置され、入出力されるデータの各ビットに対応し前記データを入出力する複数の入出力部と、
前記第１の方向とは異なる第２の方向に前記パルスジェネレータ部に隣接して配置された、前記パルスジェネレータ部に隣接して配置することで前記パルスジェネレータ部との間で伝送される信号の配線が接続され、試験パターンの生成を行う前記メモリＢＩＳＴ回路のパターンジェネレータ部と、
前記複数の入出力部に合わせたピッチで前記入出力部に前記第２の方向に隣接して配置された、前記入出力部に隣接して配置することで前記入出力部との間で伝送される信号の配線が接続され、出力値と前記パターンジェネレータ部から供給される期待値とを比較する、前記入出力部と同数の前記メモリＢＩＳＴ回路のコンパレータ部とを有することを特徴とする半導体装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリＢＩＳＴ（Built-In Self Test）回路を有する半導体装置の設計方法及び半導体装置に関する。
【背景技術】
【０００２】
メモリ回路及びそのメモリ回路の試験をするためのメモリＢＩＳＴ回路（自己診断回路）を有する半導体装置のレイアウト設計では、一般に、タイミング検証でタイミングがメットしやすいように、メモリ回路の近傍にメモリＢＩＳＴ回路を配置する。図１０（Ａ）及び図１０（Ｂ）に示すように、メモリ回路１０１の近傍にユニットセルをおくことができる配置領域１０２を設け、その領域１０２の中にメモリＢＩＳＴ回路を構成するユニットセルを配置する。
【０００３】
また、高速動作や回路面積の縮小を実現するために、メモリＢＩＳＴ回路の一部をメモリ回路に内蔵させる方法もある。例えば、図１１（Ａ）に示すように、メモリＢＩＳＴ回路のうち期待値とメモリ回路の出力値とが一致しているか否かの比較を行うコンパレータ部（Ｃｏｍｐ．）をメモリ回路に内蔵させ、メモリ回路とメモリ回路の間に試験データパターンの生成や実行制御を行うＢＩＳＴパターンジェネレータ部（ＢＰＧ）を配置する。また例えば、図１１（Ｂ）に示すように、メモリＢＩＳＴ回路のコンパレータ部（Ｃｏｍｐ．）をメモリ回路に内蔵させ、メモリ回路とメモリ回路の間にはユニットセルがおける領域を設定せずに、コア領域（通常のロジック回路領域）にＢＩＳＴパターンジェネレータ部（ＢＰＧ）を配置する。また、特許文献１〜３には、メモリＢＩＳＴ回路を内蔵するメモリ回路の例が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−１１４７８５号公報
【特許文献２】特開２０００−１１１６１８号公報
【特許文献３】特開平１１−３１６２６３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
半導体装置の微細化に伴い、メモリＢＩＳＴ回路に係る面積を小さくするにあたって、メモリ回路とメモリ回路の間における配線混雑が、回路面積（チップ面積）の縮小の妨げになっている。例えば、メモリＢＩＳＴ回路をメモリ回路の近傍に配置するために、メモリ回路とメモリ回路の間にユニットセルがおける領域を設定すると、電源を供給するために配線リソースが使用され、回路面積（チップ面積）の削減の妨げになっている。
【０００６】
前述したように高速動作や回路面積の縮小を実現するためにメモリＢＩＳＴ回路のコンパレータ部（Ｃｏｍｐ．）をメモリ回路に内蔵させる方法もあるが、図１１（Ａ）に示したように配置する場合、メモリ回路とメモリ回路の間にメモリＢＩＳＴ回路のＢＩＳＴパターンジェネレータ部（ＢＰＧ）を配置するために、ユニットセルがおける領域を設定する必要がある。したがって、メモリ回路とメモリ回路の間に設定したユニットセルがおける領域に電源を供給するため、半導体装置（チップ）の配線性は悪化したままであった。
【０００７】
また、図１１（Ｂ）に示したように配置する場合、システムロジック回路からの信号配線及びメモリＢＩＳＴ回路の信号配線が集中することになり配線性は悪い。また、メモリＢＩＳＴ回路のＢＩＳＴパターンジェネレータ部（ＢＰＧ）と試験対象のメモリ回路との距離が増大するため、ａｔスピードで試験を行う際のタイミング調整が困難になるという問題もある。
【０００８】
また、メモリ回路とメモリ回路の間にユニットセルがおける領域を設けることによって、半導体装置のウェルにも無駄な領域が発生してしまう。メモリ回路１２１のウェル１２３の間隔は、メモリ回路におけるメモリセルのピッチにより決まるが、ユニットセルがおける領域１２２のウェル１２４の間隔はそれとは無関係に決まる。したがって、デザインルール（ウェル間ショート防止）を守るために、メモリ回路１２１のウェル１２３と領域１２２のウェル１２４との間に所定の間隔１２５を設ける必要がある。また、メモリ回路１２１のウェル１２３と領域１２２のウェル１２４とは分かれているため、それぞれのウェル１２３、１２４にＴＡＰ１２６、１２７を設け、面積が増大する。
【０００９】
本発明の目的は、メモリ回路及びメモリＢＩＳＴ回路を有する半導体装置の設計を容易にする半導体装置の設計方法を提供することにある。
【課題を解決するための手段】
【００１０】
半導体装置の設計方法の一態様は、メモリＢＩＳＴ回路を内部に備えるメモリ回路を有する半導体装置の設計をプロセッサが実行する半導体装置の設計方法であり、プロセッサが、パルスジェネレータ部のブロックと入出力されるデータの各ビットに対応して配置されデータを入出力する複数の入出力部のブロックとを第１の方向に隣接して配置する。また、プロセッサが、パルスジェネレータ部に隣接して配置することでパルスジェネレータ部との間で信号配線が接続されるようにレイアウトされた、試験パターンの生成を行うメモリＢＩＳＴ回路のパターンジェネレータ部のブロックをパルスジェネレータ部のブロックに第２の方向に隣接して配置し、入出力部に隣接して配置することで入出力部との間で信号配線が接続されるようにレイアウトされた、出力値と期待値とを比較する、入出力部と同数のメモリＢＩＳＴ回路のコンパレータ部のブロックを、複数の入出力部に合わせたピッチで入出力部のブロックに第２の方向に隣接して配置する。
【発明の効果】
【００１１】
メモリＢＩＳＴ回路を内蔵したメモリ回路に自動的に発生させることが可能となり、メモリＢＩＳＴ回路を個別に設計する必要がなく、メモリ回路及びメモリＢＩＳＴ回路を有する半導体装置を容易に設計することが可能となる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施形態における半導体装置の構成例を示す図である。
【図２】本実施形態におけるメモリＢＩＳＴ回路内蔵メモリ回路の構成例を示す図である。
【図３】本実施形態におけるメモリＢＩＳＴ回路内蔵メモリ回路の機能構成例を示す図である。
【図４】本実施形態におけるテストパターン生成部の構成例を示す図である。
【図５】本実施形態におけるアドレスチェック回路の例を示す図である。
【図６】本実施形態におけるメモリＢＩＳＴ回路内蔵メモリ回路のブロックの配線レイアウト例を示す図である。
【図７】本実施形態における半導体装置の設計方法の例を示すフローチャートである。
【図８】本実施形態における半導体装置の設計方法の例を示す図である。
【図９】本実施形態におけるメモリＢＩＳＴ回路内蔵メモリ回路の各ブロックの配置例を示す図である。
【図１０】メモリ回路及びメモリＢＩＳＴ回路の配置例を示す図である。
【図１１】メモリＢＩＳＴ回路の一部をメモリ回路に内蔵する例を示す図である。
【図１２】メモリ回路及びユニットセルがおける領域のウェルの例を示す図である。
【図１３】本実施形態における半導体装置の設計方法を実現可能なコンピュータの構成例を示す図である。
【発明を実施するための形態】
【００１３】
以下、本発明の実施形態を図面に基づいて説明する。
【００１４】
図１は、本発明の一実施形態における半導体装置の構成例を示す図である。本実施形態における半導体装置１０は、例えば複数の機能を１つのチップ上に実装したＳｏＣ（System on a Chip）である。半導体装置１０は、システムロジック回路１１、メモリＢＩＳＴ（Built-In Self Test）回路内蔵のメモリ回路１２、及びテスト制御回路１３を有する。
【００１５】
システムロジック回路１１は、半導体装置１０の各機能部の制御を行ったり、各種の処理や演算を行ったりする。また、システムロジック回路１１は、メモリ回路１２に対して信号ＳＩＧ（クロック信号ＣＫ（Ｃｌｏｃｋ）、データ信号ＤＡＴＡ、アドレス信号ＡＤＤＲＥＳＳ、及びイネーブル信号ＥＮＡＢＬＥ等）を入出力し、データの読み出しや書き込み等を行う。
【００１６】
メモリＢＩＳＴ回路内蔵のメモリ回路１２は、データを記憶保持するメモリ回路、及びそのメモリ回路の試験をするためのメモリＢＩＳＴ回路（自己診断回路）を有する。データを記憶保持するメモリ回路は、例えばＳＲＡＭ（Static Random Access Memory）セルを有するメモリ回路である。メモリ回路１２に内蔵されたメモリＢＩＳＴ回路は、試験データパターンの生成や実行制御を行うＢＩＳＴパターンジェネレータ部（ＢＰＧ）、及びデータを記憶保持するメモリ回路から出力される出力値とＢＩＳＴパターンジェネレータ部（ＢＰＧ）から供給される期待値とが一致しているか否かの比較を行うコンパレータ部（Ｃｏｍｐ．）を有する。テスト制御回路１３は、メモリ回路１２に内蔵されたメモリＢＩＳＴ回路を動作させるか否か、言い換えればメモリ回路での試験を行うか否かを制御する制御信号ＭＴを出力する。
【００１７】
図２は、本実施形態におけるメモリＢＩＳＴ回路内蔵のメモリ回路１２の構成例を示す図である。図２においては、半導体装置（チップ）１０における回路配置のレイアウト例を図示している。メモリＢＩＳＴ回路内蔵のメモリ回路１２は、前述したようにデータを記憶保持するメモリ回路と、メモリＢＩＳＴ回路とを有する。
【００１８】
データを記憶保持するメモリ回路は、セルアレイ部（ＣＥＬＬ  ＡＲＲＡＹ）２１、入出力部（Ｉ／Ｏ）２２、クロックパルスジェネレータ部（ＣＰＧ）２３、及び主デコーダ部（ＭＡＩＮ  ＤＥＣ）２４を有する。また、メモリＢＩＳＴ回路は、ＢＩＳＴパターンジェネレータ部（ＢＰＧ）２５、及びコンパレータ部（Ｃｏｍｐ．）２６を有する。ここで、メモリ回路の入出力部２２及びメモリＢＩＳＴ回路のコンパレータ部２６は、メモリ回路での入出力における各ビット毎、すなわち１ビット単位でそれぞれ設けられている。なお、図２に示す構成は一例であり、セルアレイ部２１、入出力部２２及びコンパレータ部２６は、仕様等に応じて適切な数が配置される。
【００１９】
図２に示すように、メモリＢＩＳＴ回路のＢＩＳＴパターンジェネレータ部２５は、幅が主デコーダ部２４に合わせた幅（例えば同様の幅）とされ、メモリ回路のクロックパルスジェネレータ部２３に接するように、クロックパルスジェネレータ部２３の隣に配置されている。また、メモリＢＩＳＴ回路のコンパレータ部２６は、幅がメモリ回路の１ビット分に合わせた幅（例えば１ビット分（入出力部２２の幅）と同様の幅）とされ、メモリ回路の対応する入出力部２２に接続するように、入出力部２２の隣に配置されている。言い換えれば、メモリＢＩＳＴ回路のコンパレータ部２６は、メモリ回路の入出力部２２と同じピッチで繰り返し配置されている。
【００２０】
図３は、本実施形態におけるメモリＢＩＳＴ回路内蔵のメモリ回路１２の機能構成例を示す図である。この図３において、図２に示した構成要素と同一の構成要素には同一の符号を付している。
【００２１】
ＢＩＳＴパターンジェネレータ部（ＢＰＧ）２５は、セレクタ３１及びテストパターン生成部３２を有する。セレクタ３１は、システムロジック回路１１から供給されるアドレス信号ＳＹＳＡＤ及びイネーブル信号ＳＹＳＥＮ、又はテストパターン生成部３２から供給されるアドレス信号ＴＳＴＡＤ及びイネーブル信号ＴＳＴＥＮを選択して出力する。セレクタ３１は、メモリＢＩＳＴ動作制御信号ＭＴに応じて、通常動作時（システム動作時）にはシステムロジック回路１１からのアドレス信号ＳＹＳＡＤ及びイネーブル信号ＳＹＳＥＮを選択して出力し、メモリＢＩＳＴ動作時にはテストパターン生成部３２からのアドレス信号ＴＳＴＡＤ及びイネーブル信号ＴＳＴＥＮを選択して出力する。
【００２２】
テストパターン生成部３２は、メモリＢＩＳＴに係るアドレス信号ＴＳＴＡＤ、イネーブル信号ＴＳＴＥＮ、ライトデータ信号（書き込みデータ信号）ＴＷＤＴ、及び期待値ＥＰ等を生成して出力する。テストパターン生成部３２は、図４に示すように、制御回路５１と、アドレス生成回路５２と、期待値及び試験データパターン作成回路５５とを有する。テストパターン生成部３２は、例えば、クロック信号ＣＬＫ及びメモリＢＩＳＴ動作制御信号ＭＴが入力され、アドレス信号ＡＤＲ、ライトデータ信号ＷＤＴ、データマスク信号ＤＭ、及び期待値ＥＰＤ等を出力する。
【００２３】
制御回路５１は、例えばステートマシンであり、メモリＢＩＳＴの実行制御等を行う。アドレス生成回路５２は、アドレスカウンタ５３及びアドレスチェック回路５４を有し、メモリＢＩＳＴにおいて用いるアドレス信号ＡＤＲを生成する。アドレスカウンタ５３は、メモリＢＩＳＴ回路内蔵のメモリ回路１２のサポート範囲を満たす最大構成のカウンタ（例えば仕様などで規定された最大アドレスを発生可能なカウンタ）を有し、アドレスチェック回路５４が終了信号を出力するまでカウンタをインクリメント又はデクリメントしてアドレスを発生させる。
【００２４】
アドレスチェック回路５４は、メモリＢＩＳＴにおけるアドレス値の最大値、最小値を記憶しておき、アドレスカウンタ５３が発生するアドレスが最大値や最小値に達したことを検出すると終了信号をアドレスカウンタ５３及び制御回路５１に出力する。これにより、構成が小さいメモリ回路である場合に、試験パターンが最後まで回らないようにメモリ回路のサイズに合わせて停止させることが可能となる。制御回路５１は、アドレスチェック回路５４からの終了信号を受けると、試験パターンの生成ステートを進める。
【００２５】
図５に、アドレスチェック回路５４の一例を示す。図５に示すアドレスチェック回路５４は、最大値に対応するものであり、アドレスカウンタ５３の出力ＡＤＲ（図５に示す例ではＡＤＲ［０］〜ＡＤＲ［７］の８ビット）をＮＡＮＤ回路５６に論理演算し、ＮＡＮＤ回路５６の出力をＮＯＲ回路５７で論理演算し、ＮＯＲ回路５７の出力をＮＡＮＤ回路５８で論理演算し、ＮＡＮＤ回路５８の出力を終了信号として出力する。つまり、図５に示したアドレスチェック回路５４は、ＮＡＮＤ回路５６の入力がすべてハイレベル（“１”）である場合、終了信号（ローレベル、“０”）を出力する。本実施形態では、コンパイラによりメモリＢＩＳＴ回路内蔵のメモリ回路１２を生成させるときに、メモリ回路で使用するアドレス（アドレス信号の本数）に応じて配線クリップ（図５に示す例ではハイレベルにクリップ）を行うことで最大値を設定する。
【００２６】
期待値及び試験データパターン作成回路５５は、制御回路５１が出力するステート情報、及びアドレス生成回路５２が出力するアドレス情報に基づいて、期待値ＥＰＤとメモリ回路に入力するライトデータ信号ＷＤＴ及びデータマスク信号ＤＭとを生成する。
【００２７】
コンパレータ部（Ｃｏｍｐ．）２６は、セレクタ３３及び比較器３４を有する。セレクタ３３は、システムロジック回路１１から供給されるライトデータ信号ＳＷＤＴ又はテストパターン生成部３２から供給されるライトデータ信号ＴＷＤＴを選択して出力する。セレクタ３３は、メモリＢＩＳＴ動作制御信号ＭＴに応じて、通常動作時（システム動作時）にはシステムロジック回路１１からのライトデータ信号ＳＷＤＴを選択して出力し、メモリＢＩＳＴ動作時にはテストパターン生成部３２からのライトデータ信号ＴＷＤＴを選択して出力する。
【００２８】
比較器３４は、メモリＢＩＳＴ動作時に、メモリ回路の出力（リードデータ）ＯＵＴとテストパターン生成部３２からの期待値ＥＰとが一致しているか否かを比較する。比較器３４は、メモリ回路の出力ＯＵＴと期待値ＥＰとが不一致であった場合、その情報を保持する。比較器３４に保持された情報は、所定のタイミング（例えば全試験パターンの実行後）に、例えばスキャン動作によって読み出される。
【００２９】
クロックパルスジェネレータ部（ＣＰＧ）２３は、プリデコーダ３５及びパルス生成部３６を有する。プリデコーダ３５は、ＢＩＳＴパターンジェネレータ部２５のセレクタ３１の出力ＡＤ、ＥＮ及びパルス生成部３６からのワード線選択パルスＷＬＰに基づいて、出力（プリデコーダ線）を活性化する。パルス生成部３６は、ワード線選択パルスＷＬＰ、センスアンプイネーブルパルスＳＥＰ、ライト回路イネーブルパルスＷＥＰ等を生成し出力する。
【００３０】
主デコーダ部２４は、デコーダ３７を有する。デコーダ３７は、それぞれ１つのワード線ＷＬに接続されており、クロックパルスジェネレータ部２３のプリデコーダ３５の出力（プリデコーダ線）に応じて、接続されたワード線ＷＬを活性化する。セルアレイ部（ＣＥＬＬ  ＡＲＲＡＹ）２１は、ワード線ＷＬとビット線ＢＬとの交差部に配された複数のメモリセル３８を有する。本実施形態において、メモリセル３８は、例えばＳＲＡＭセルである。
【００３１】
入出力部（Ｉ／Ｏ）２２は、センスアンプ３９、出力バッファ４０、及びライト回路４１を有する。センスアンプ３９は、クロックパルスジェネレータ部２３のパルス生成部３６により生成されるセンスアンプイネーブルパルスＳＥＰに応じて動作し、ビット線ＢＬに読み出されたデータをセンスする。出力バッファ４０は、センスアンプ３９によりセンスされたデータ（リードデータ）を出力ＯＵＴとして出力する。ライト回路４１は、クロックパルスジェネレータ部２３のパルス生成部３６により生成されるライト回路イネーブルパルスＷＥＰに応じて動作し、入力されるライトデータＷＤＴに応じてビット線ＢＬの電位を制御する。
【００３２】
ここで、本実施形態におけるメモリＢＩＳＴ回路内蔵のメモリ回路１２において、メモリ回路の入出力部（Ｉ／Ｏ）２２及びクロックパルスジェネレータ部（ＣＰＧ）２３、メモリＢＩＳＴ回路のＢＩＳＴパターンジェネレータ部（ＢＰＧ）２５及びコンパレータ部（Ｃｏｍｐ．）２６の各ブロックは、図６に示すようにブロック間でそれぞれ入出力される信号の配線がブロックの配置によって接続されるようにレイアウトされている。
【００３３】
すなわち、クロックパルスジェネレータ部２３とＢＩＳＴパターンジェネレータ部２５との間では、図６において接続部６１として示すように、クロックパルスジェネレータ部２３のブロックとＢＩＳＴパターンジェネレータ部２５のブロックとを隣接して配置することで、メモリ回路の電源線ＲＡＭＰＷやクロック信号ＣＬＫ、アドレス信号ＡＤ、イネーブル信号ＥＮ等の配線が接続される。
【００３４】
ＢＩＳＴパターンジェネレータ部２５とコンパレータ部２６との間では、図６において接続部６２として示すように、ＢＩＳＴパターンジェネレータ部２５のブロックとコンパレータ部２６のブロックとを隣接して配置することで、ライトデータ信号ＴＷＤＴや期待値ＥＰ等の配線が接続される。入出力部２２とコンパレータ部２６との間では、図６において接続部６３として示すように、入出力部２２のブロックとコンパレータ部２６のブロックとを隣接して配置することで、出力信号ＯＵＴ、ライトデータ信号ＷＤＴやデータマスク信号ＤＭ等の配線が接続される。
【００３５】
また、ＢＩＳＴパターンジェネレータ部２５においては、メモリ回路の電源線ＲＡＭＰＷとＢＩＳＴ回路の電源線ＢＩＳＴＰＷとをパワースイッチＰＳＷを介して接続し、ＢＩＳＴ回路の動作電力をメモリ回路の電源線ＲＡＭＰＷから得るようにしている。そして、メモリＢＩＳＴ動作時とは異なるとき（例えば通常動作時（システム動作時））には、メモリＢＩＳＴ制御信号ＭＴによりパワースイッチＰＳＷをオフ状態にしてメモリＢＩＳＴ回路への電力供給を遮断することで、消費電力を削減可能となっている。
【００３６】
前述した本実施形態におけるメモリＢＩＳＴ回路内蔵のメモリ回路１２を生成する半導体装置の設計方法について説明する。図７は、本実施形態における半導体装置の設計方法の例を示すフローチャートである。
【００３７】
まず、ステップＳ１０１にて、入力情報（ＩＮＰＵＴ情報）として、生成するメモリＢＩＳＴ回路内蔵のメモリ回路１２のワード数、ビット数、及びコラム数を入力しコンパイラに受け渡す（図８（Ａ））。次に、ステップＳ１０２にて、コンパイラが、ステップＳ１０１において入力された入力情報（ＩＮＰＵＴ情報）に基づいて、メモリ回路のブロックを配置する。すなわち、コンパイラが、入力情報（ＩＮＰＵＴ情報）に基づいて、クロックパルスジェネレータ部（ＣＰＧ）、主デコーダ部（ＭＡＩＮ  ＤＥＣ）、入出力部（Ｉ／Ｏ）、及びセルアレイ部（ＣＥＬＬ  ＡＲＲＡＹ）の各ブロックを配置する（図８（Ｂ））。
【００３８】
次に、ステップＳ１０３にて、コンパイラが、入力情報（ＩＮＰＵＴ情報）に基づいて、メモリＢＩＳＴ回路のＢＩＳＴパターンジェネレータ部（ＢＰＧ）のブロックを、クロックパルスジェネレータ部（ＣＰＧ）のブロックのとなりに接するように配置する（図８（Ｃ））。前述したようにＢＩＳＴパターンジェネレータ部（ＢＰＧ）のブロックは、クロックパルスジェネレータ部（ＣＰＧ）に隣接して配置することで、クロックパルスジェネレータ部（ＣＰＧ）との間で伝送される信号の配線が接続されているので、ＢＩＳＴパターンジェネレータ部（ＢＰＧ）とクロックパルスジェネレータ部（ＣＰＧ）との間の信号配線は自動的に接続されることとなる。
【００３９】
また、ステップＳ１０３では、入力情報（ＩＮＰＵＴ情報）に基づいて、ＢＩＳＴパターンジェネレータ部（ＢＰＧ）のブロックにおけるアドレスチェック回路に対し、最大値や最小値を設定するための配線クリップをあわせて行う。これにより、入力情報（ＩＮＰＵＴ情報）に応じたアドレスに適したアドレス生成回路を実現することができる。なお、例えばＢＩＳＴパターンジェネレータ部（ＢＰＧ）のブロックの上に配線やビアを使用して配線クリップを行う。
【００４０】
次に、ステップＳ１０４では、コンパイラが、入力情報（ＩＮＰＵＴ情報）に基づいて、メモリＢＩＳＴ回路のコンパレータ部（Ｃｏｍｐ．）のブロックを、各入出力部（Ｉ／Ｏ）のブロックのとなりに接するように配置する（図８（Ｄ））。コンパレータ部（Ｃｏｍｐ．）のブロックは、メモリ回路の入出力における１ビットに対して、１つずつ配置する。
【００４１】
前述したようにコンパレータ部（Ｃｏｍｐ．）のブロックは、入出力部（Ｉ／Ｏ）に隣接して配置することで、入出力部（Ｉ／Ｏ）との間で伝送される信号の配線が接続されているので、コンパレータ部（Ｃｏｍｐ．）と入出力部（Ｉ／Ｏ）との間の信号配線は自動的に接続されることとなる。また、ＢＩＳＴパターンジェネレータ部（ＢＰＧ）のブロックと隣接するコンパレータ部（Ｃｏｍｐ．）のブロック、及び上下で隣接するコンパレータ部（Ｃｏｍｐ．）のブロックについて並べて配置することで、ＢＩＳＴパターンジェネレータ部（ＢＰＧ）からの制御信号等の配線が同様に自動的に接続される。
【００４２】
なお、図７及び図８に示した半導体装置の設計方法は一例であり、これに限定されるものではない。入力情報（ＩＮＰＵＴ情報）として、生成するメモリＢＩＳＴ回路内蔵のメモリ回路１２のワード数、ビット数、及びコラム数を入力すれば、各ブロックの構成等は決まるので、図７に示したステップＳ１０２、Ｓ１０３、Ｓ１０４の処理動作を任意の順序で実行しても同様の半導体装置が得られる。
【００４３】
本実施形態によれば、下記のような効果が得られる。
（１）メモリ回路及びメモリＢＩＳＴ回路の設計者のＴＡＴ改善
従来の手法では、メモリ回路のワード数、ビット数、及びコラム数の構成に対応して、個々にメモリＢＩＳＴ回路を設計する必要がある。それに対して、本実施形態によれば、メモリ回路及びメモリＢＩＳＴ回路の設計をコンパイラ化することにより自動的に発生させることが可能になり、メモリＢＩＳＴ回路内蔵のメモリ回路を容易に作成することができる。
【００４４】
（２）チップ設計者のＴＡＴ改善
メモリＢＩＳＴ回路をメモリ回路に内蔵することで、チップレイアウトの配置配線フェーズにおいて、メモリ回路及びメモリＢＩＳＴ回路を構成する数百〜数千のユニットセルのインスタンスが１つにまとまり、インスタンス数が大幅に低減する。これによりチップレイアウトの配置配線における収束性が良くなり、ＴＡＴ削減に有効である。
【００４５】
（３）メモリ回路とメモリＢＩＳＴ回路を一体化することによる面積削減
メモリＢＩＳＴ回路をメモリ回路に内蔵することで、メモリＢＩＳＴ回路を配置するためにメモリ回路とメモリ回路との間等に設けていたユニットセルをおくことができる領域を削除することが可能になり、チップ面積削減が可能になる。例えば、従来、ユニットセルがおける領域に供給される電源から、メモリＢＩＳＴ回路への電源供給を行うようにしていたが、本実施形態によればメモリ回路の電源から供給することができるので、ユニットセルがおける領域に落としていた電源分の配線チャネルがチップの配線として使用可能になる。また、図１２に示したようなウェル間の間隔を設ける必要がなくなるとともにＴＡＰを共通化することで削減できる。また、例えば、メモリＢＩＳＴ回路をメモリ回路に内蔵したことにより配線が短くなり配線性が向上する。
【００４６】
また、メモリＢＩＳＴ回路をメモリ回路に内蔵したことにより、出荷試験時以外はメモリＢＩＳＴ回路への電源供給を遮断することができ、待機電力を削減することが可能となる。メモリＢＩＳＴ回路をメモリ回路に内蔵することで、レイアウト上でデータ線を離して置けるためにショートするおそれがなくなり、ショート検出のためにテストパターンを設ける必要がなく、テストパターンを簡易化することが可能となる。
【００４７】
なお、前述したメモリＢＩＳＴ回路内蔵のメモリ回路におけるブロック配置例は一例であり、これに限定されるものではなく、例えば図９に示すような配置であってもよく、前述した実施形態と同様の効果が得られる。図９は、本実施形態におけるメモリＢＩＳＴ回路内蔵メモリ回路における他のブロック配置例を示す図である。この図９において、図２等に示した構成要素と同一の機能を有する構成要素には同一の符号を付し、重複する説明は省略する。
【００４８】
図２に示したメモリＢＩＳＴ回路内蔵のメモリ回路におけるブロック配置の例などでは、メモリＢＩＳＴ回路のＢＩＳＴパターンジェネレータ部（ＢＰＧ）２５の幅が、主デコーダ部（ＭＥＩＮ  ＤＥＣ）２４の幅と同じ例を示した。これに限定されず、例えば図９（Ａ）や図９（Ｂ）に示すように、メモリ回路の入出力部（Ｉ／Ｏ）２２と同様のピッチで配置されるメモリＢＩＳＴ回路のコンパレータ部（Ｃｏｍｐ．）２６が、対応する入出力部２２と一部が接するように配置可能な範囲であれば、ＢＩＳＴパターンジェネレータ部２５の幅が、主デコーダ部２４の幅よりも大きくても良い。図９（Ｂ）に示すように、メモリ回路の端においてコンパレータ部（Ｃｏｍｐ．）２６がはみ出した領域に、ダミーセルやダミー配線（ダミーメタル）のブロック９１を設けることで、形状を長方形にするようにしても良い。
【００４９】
また、例えば図９（Ｃ）、図９（Ｄ）、図９（Ｅ）に示すように、メモリ回路の入出力部（Ｉ／Ｏ）２２と同様のピッチで配置されるメモリＢＩＳＴ回路のコンパレータ部（Ｃｏｍｐ．）２６が、対応する入出力部２２と一部が接するように配置可能な範囲であれば、ＢＩＳＴパターンジェネレータ部２５の幅が、主デコーダ部２４の幅よりも小さくても良い。図９（Ｄ）や図９（Ｅ）に示すように、ダミーセルやダミー配線（ダミーメタル）のブロック９２、９３を適宜設けることで、形状を長方形にするようにしても良い。
【００５０】
また、前述した実施形態における半導体装置の設計方法は、例えばＣＰＵ又はＭＰＵ、ＲＡＭ、ＲＯＭ等を有するコンピュータが、記憶部に記憶されたプログラムを実行することで実現でき、前記プログラムは本発明の実施形態に含まれる。また、コンピュータが前記機能を果たすように動作させるプログラムを、例えばＣＤ−ＲＯＭのような記録媒体に記録し、コンピュータに読み込ませることによって実現できるものであり、前記プログラムを記録した記録媒体は本発明の実施形態に含まれる。前記プログラムを記録する記録媒体としては、ＣＤ−ＲＯＭ以外に、フレキシブルディスク、ハードディスク、磁気テープ、光磁気ディスク、不揮発性メモリカード等を用いることができる。
【００５１】
また、コンピュータがプログラムを実行し処理を行うことにより、前記実施形態の機能が実現されるプログラムプロダクトは、本発明の実施形態に含まれる。前記プログラムプロダクトとしては、前記実施形態の機能を実現するプログラム自体、前記プログラムが読み込まれたコンピュータがある。また、前記プログラムプロダクトとして、ネットワークを介して通信可能に接続されたコンピュータに前記プログラムを提供可能な送信装置、当該送信装置を備えるネットワークシステム等がある。
【００５２】
また、供給されたプログラムがコンピュータにおいて稼動しているＯＳ（オペレーティングシステム）又は他のアプリケーションソフト等と共同して前記実施形態の機能が実現される場合も、かかるプログラムは本発明の実施形態に含まれる。また、供給されたプログラムの処理のすべて又は一部がコンピュータの機能拡張ボードや機能拡張ユニットにより行われて前記実施形態の機能が実現される場合も、かかるプログラムは本発明の実施形態に含まれる。また、本発明をネットワーク環境で利用するべく、全部又は一部のプログラムが他のコンピュータで実行されるようになっていても良い。
【００５３】
例えば、前述した実施形態における半導体装置の設計方法は、図１３に示すようなコンピュータ（設計装置）により実現でき、そのＣＰＵ（Central Processing Unit）により前述した実施形態における半導体装置の設計方法の動作が実施される。図１３は、本実施形態における半導体装置の設計方法を実現可能なコンピュータの構成例を示す図である。バス１３０１には、ＣＰＵ１３０２、ＲＯＭ（Read Only Memory）１３０３、ＲＡＭ（Random Access Memory）１３０４、ネットワークインターフェース１３０５、入力装置１３０６、出力装置１３０７、及び外部記憶装置１３０８が接続されている。
【００５４】
ＣＰＵ１３０２は、データの処理や演算を行うとともに、バス１３０１を介して接続された各構成要素を制御するものである。ＲＯＭ１３０３には、予めブートプログラムが記憶されており、このブートプログラムをＣＰＵ１３０２が実行することにより、コンピュータが起動する。外部記憶装置１３０８にコンピュータプログラムが記憶されており、そのコンピュータプログラムがＲＡＭ１３０４にコピーされてＣＰＵ１３０２により実行することで、例えば前述した半導体装置の設計方法の各処理等が行われる。ＲＡＭ１３０４は、データの入出力、送受信のためのワークメモリ、各構成要素の制御のための一時記憶として用いられる。
【００５５】
外部記憶装置１３０８は、例えばハードディスク記憶装置やＣＤ−ＲＯＭ等であり、電源を切っても記憶内容が消えない。ネットワークインターフェース１３０５は、ネットワークに接続するためのインターフェースである。入力装置１３０６は、例えばキーボードやポインティングデバイス（マウス）等であり、各種指定や入力等を行うことができる。出力装置１３０７は、ディスプレイやプリンタ等であり、表示や印刷等を行うことができる。
【００５６】
なお、前記実施形態は、何れも本発明を実施するにあたっての具体化のほんの一例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【００５７】
１０  半導体装置
１１  システムロジック回路
１２  メモリＢＩＳＴ回路内蔵メモリ回路
１３  テスト制御回路
２１  セルアレイ部
２２  入出力部
２３  クロックパルスジェネレータ部
２４  主デコーダ部
２５  ＢＩＳＴパターンジェネレータ部
２６  コンパレータ部
３２  テストパターン生成部
５１  制御回路
５２  アドレス生成回路
５３  アドレスカウンタ
５４  アドレスチェック回路
５５  期待値及び試験データパターン作成回路
【図１】
0006459566.tif 000002
【図２】
0006459566.tif 000003
【図３】
0006459566.tif 000004
【図４】
0006459566.tif 000005
【図５】
0006459566.tif 000006
【図６】
0006459566.tif 000007
【図７】
0006459566.tif 000008
【図８】
0006459566.tif 000009
【図９】
0006459566.tif 000010
【図１０】
0006459566.tif 000011
【図１１】
0006459566.tif 000012
【図１２】
0006459566.tif 000013
【図１３】
0006459566.tif 000014