"データを記憶する少なくとも1つのメモリと、前記メモリをテストする少なくとも1つの組み込み自己テスト回路と、を備える半導体集積回路であって、前記組み込み自己テスト回路は、前記メモリの全アドレスに対応するアドレス信号を生成する第1動作モードと、前記メモリのアドレス入力の各ビットが、それぞれ、0と1の両状態をとり、かつ、異なるビット同士が一度は別の信号状態を持つような一連のデータとなるように前記アドレス信号を生成する第2動作モードの何れかで動作するアドレス生成器を備えることを特徴とする、半導体集積回路。前記アドレス生成器は、前記第2動作モードで、全ビットが0の初期値から、最下位ビットが1の状態から1を最上位ビットまで前記アドレス入力の各ビットを順次シフトする、請求項1に記載の半導体集積回路。前記アドレス生成器は、前記第2動作モードで、前記アドレス入力を昇順にシフトする昇順モードと、前記アドレス入力を降順にシフトする降順モードとの何れかで動作し、前記昇順モードでは、全ビットが0の初期値から、最下位ビットが1の状態から1を最上位ビットまで前記アドレス入力の各ビットを順次シフトし、前記降順モードでは、最上位ビットのみが1の状態から最下位ビットまで前記アドレス入力の各ビットを順次シフトし、前記昇順モード及び前記降順モードの何れの場合にも、最終的に前記アドレス入力を全ビットが0の状態に戻す、請求項1又は2に記載の半導体集積回路。前記組み込み自己テスト回路は、保持した値を前記アドレス信号として出力する、アドレスレジスタと、前記アドレス信号に1を加算し、第1上位アドレス信号を生成する、加算器と、前記アドレス信号を上位アドレス方向にシフトし、第2上位アドレス信号を生成する、上位シフタと、前記第1動作モードでは前記第1上位アドレス信号を選択し、前記第2動作モードでは前記第2上位アドレス信号を選択し、前記第1上位アドレス信号又は前記第2上位アドレス信号に対応する選択アドレス信号を出力する、アドレス選択器と、前記アドレス選択器により選択された選択アドレス信号及び前記アドレスレジスタから出力されたアドレス信号の一方を選択し、選択した信号を次のアドレス入力を示すレジスタ値として出力する、レジスタ値選択器と、前記モード選択信号に基づいて、前記選択アドレス信号が、前記メモリのテスト範囲の最終アドレスであるか否かを判定し、前記選択アドレス信号が前記最終アドレスであるか否かを示す通知信号を生成する、最終アドレス判定器と、をさらに備え、前記アドレスレジスタは、前記通知信号が生成された場合、保持した値を初期化する、請求項1乃至3の何れかに記載の半導体集積回路。前記組み込み自己テスト回路は、複数のメモリへ書き込むべきメモリデータと、前記複数のメモリのメモリ出力の期待値データとを生成するとともに、前記第2動作モードにおいて、前記アドレス信号のデータ幅範囲に含まれないアドレスでの前記メモリデータの書き込みと、メモリ出力と前記期待値データとの比較とを無効化するデータ生成器をさらに備える、請求項1乃至4の何れか1項に記載の半導体集積回路。請求項1乃至5の何れか1項に記載の半導体集積回路の設計装置であって、前記メモリがROMReadOnlyMemoryの場合、テスト実行時に、前記メモリ出力を順次圧縮し、最終的な圧縮結果で前記メモリの良否を判定し、かつ、前記ROMの構成を示す構成情報から、前記第2動作モードで生成される前記アドレス信号に含まれないアドレスに対して、異なるアドレスでデータが重複しないように検証用ROMデータを生成し、かつ、前記アドレス信号を伝送するピンに接続上の不具合があった場合の圧縮結果が、前記接続上の不具合がない場合の圧縮結果と異なるように、圧縮期待値を生成することを特徴とする、設計装置。本発明が解決しようとする課題は、半導体集積回路にBIST回路を挿入した後の接続検証のためのシミュレーション実行の所要時間を短縮することである。本実施形態の半導体集積回路は、データを記憶する少なくとも1つのメモリと、メモリをテストする少なくとも1つの組み込み自己テスト回路と、を備える。組み込み自己テスト回路は、アドレス生成器を備える。アドレス生成器は、メモリの全アドレスに対応するアドレス信号を生成する第1動作モードと、メモリのアドレス入力の各ビットが、それぞれ、0と1の両状態をとり、かつ、異なるビット同士が一度は別の信号状態を持つような一連のデータとなるようにアドレス信号を生成する第2動作モードの何れかで動作する。第1実施形態第1実施形態について説明する。第1実施形態は、1つのメモリに1つのBIST回路が接続された半導体集積回路の例である。第1実施形態の半導体集積回路について説明する。図1は、第1実施形態の半導体集積回路1の構成図である。図1に示すように、半導体集積回路1は、BIST回路10と、メモリカラー20とを備える。BIST回路10は、BISTを実行する回路である。メモリカラー20は、BISTの対象となるデバイスである。BIST回路10には、BISTに必要なクロック信号が供給される。クロック信号は、半導体集積回路1の外部に接続された回路又は半導体集積回路1の内部に設けられたクロック生成回路により生成される。BIST回路10は、いわゆる圧縮器型BISTである。BIST回路10は、BIST制御回路11と、データ生成器12と、アドレス生成器13と、制御信号生成器14と、解析器15とを備える。メモリカラー20は、メモリ21と、取込レジスタ22と、比較器23と、フラグレジスタ24とを備える。BIST制御回路11は、BIST制御信号D10を生成する。BIST制御信号D10は、データ生成器12と、アドレス生成器13と、制御信号生成器14と、解析器15とを制御するための信号であり、初期化信号と、アドレス更新信号と、モード選択信号とを含む。初期化信号は、アドレス生成器13と、制御信号生成器14と、解析器15とを初期化する信号である。アドレス更新信号は、アドレス生成器13内で管理されるアドレス情報を更新する信号である。モード選択信号は、アドレス生成器13の動作モード第1動作モード及び第2動作モードの何れかを選択するために用いられる信号である。データ生成器12は、BIST制御信号D10に基づいて、メモリデータD11を生成する。メモリデータD11は、メモリ21へ書き込まれるべきデータである。また、データ生成器12は、生成したメモリデータD11を所定クロック例えば2クロックだけ保持し、保持したメモリデータD11を期待値データD12として出力する。すなわち、期待値データD12は、所定クロック前に生成されたメモリデータD11に対応する。アドレス生成器13は、クロック信号と、BIST制御信号とに基づいて、アドレス信号D13を生成する。アドレス信号D13は、メモリデータD11の書き込み先の書込アドレスを示す信号である。より具体的には、アドレス生成器13は、モード選択信号が第1動作モードを示す場合、メモリ21の全アドレスに対応するアドレス信号D13を生成し、モード選択信号が第2動作モードを示す場合、メモリ21の一部のアドレスに対応するアドレス信号D13を生成する。このとき、アドレス生成器13は、アドレス信号D13に対応するアドレスのメモリデータD11について、アドレス毎に各ビットが変化し、且つ、複数のビット間で値が異なるように、アドレス信号D13を生成する。また、アドレス生成器13は、通知信号D16を生成する。通知信号D16は、アドレス信号D13が、テスト範囲の最終アドレスであるか否かを示す信号である。BIST制御回路11は、最終アドレスであることを示す通知信号D16を入力すると、初期化信号を生成する。制御信号生成器14は、メモリ制御信号D14を生成する。メモリ制御信号D14は、書込アドレスにメモリデータD11を書き込み、書込アドレスのメモリデータD11をメモリ出力Mとして出力するように、メモリ21を動作させる信号である。メモリ21は、メモリ制御信号D14で書き込み動作を指示すると、書込アドレスにメモリデータD11を記憶し、読み出し動作を指示すると、書込アドレスのメモリデータD11をメモリ出力Mとして出力する。メモリ21は、例えばRAMRandomAccessMemoryである。取込レジスタ22は、メモリ出力Mを入力し、入力したメモリ出力Mを所定クロック例えば1クロックだけ保持する。なお、取込レジスタ22は省略可能である。比較器23は、取込レジスタ22に保持されたメモリ出力Mと、期待値データD12とを入力し、メモリ出力Mを期待値データD12と比較し、2値のフラグデータD15を生成する。フラグデータD15は、メモリ出力Mが期待値データD12と一致するか否かを示す2値データである。例えば、比較器23は、メモリ出力Mが期待値データD12と一致する即ち、メモリ出力Mと期待値データD12との間に差がない場合にフラグデータ0を生成し、メモリ出力Mが期待値データD12と一致しない即ち、メモリ出力Mと期待値データD12との間に差がある場合にフラグデータ1を生成する。フラグレジスタ24は、フラグデータD15を入力し、入力したフラグデータD15を所定クロック例えば1クロックだけ保持する。なお、フラグレジスタ24は省略可能である。解析器15は、テスト対象メモリのフラグデータD15を入力し、半導体集積回路1の外部へ出力するBSIT結果出力を生成する。設計者は、一般的な論理シミュレーションソフトウェアを用いて、BIST回路挿入後の半導体集積回路1の論理シミュレーションを行い、BIST回路10の動作検証を行う。第1実施形態のアドレス生成器について説明する。図2は、第1実施形態のアドレス生成器13の構成図である。図2に示すように、アドレス生成器13は、アドレスレジスタ130と、加算器131と、上位シフタ132と、アドレス選択器133と、レジスタ値選択器134と、最終アドレス判定器135と、を備える。アドレスレジスタ130は、レジスタ値選択器134により選択されたレジスタ値D20を保持する。また、アドレスレジスタ130は、クロック信号に同期して保持した値以下、保持値というを更新する。すなわち、アドレスレジスタ130の出力であるアドレス信号D13は、クロック信号に対応するレジスタ値D20である。レジスタ値D20は、クロック信号に対応するメモリ21のアドレスを示す信号であって、例えば8ビットのビット列である。また、アドレスレジスタ130は、初期化信号に基づいて、保持値を初期値に更新する。初期値は、例えば全8ビットが0の信号である。加算器131は、アドレス信号D13に1を加算し、第1上位アドレス信号D22を生成する。第1上位アドレス信号D22は、クロック信号に対応するアドレスに対して1つ上位アドレス方向に位置するアドレスを示す所定数例えば8ビットのビット列を含む。加算器131は、クロック信号がアドレスレジスタ130へ供給される度に第1上位アドレス信号D22を生成する。従って、第1上位アドレス信号D22に対応するアドレスは、メモリ21の先頭アドレス例えば00000000から終端アドレス例えば11111111まで推移する。すなわち、第1上位アドレス信号D22は、メモリ21の全アドレスに対応する。上位シフタ132は、第1シフト方式又は第2シフト方式を用いて、最下位ビットから最上位ビットまで上位アドレス方向にアドレス信号D13上のデータビットをシフトし、第2上位アドレス信号D23を生成する。第1シフト方式では、上位シフタ132は、アドレス信号D13の最下位ビットから順に、各ビット毎に1を設定する。第2シフト方式では、上位シフタ132は、アドレス信号D13の最下位ビットから連続して1を設定する。これにより、表1の第2上位アドレス信号D23が生成される。表1は、クロックサイクル0で初期化信号が入力されたときのクロックサイクル毎の第2上位アドレス信号D23を示す。クロックサイクルは、クロック信号のサイクル数である。表1のように、第2上位アドレス信号D23は、クロックサイクル0~9で、メモリ21のテスト範囲の先頭アドレス00000000から最終アドレス10000000又は11111111まで推移する。すなわち、第2上位アドレス信号D23は、メモリ21の一部のアドレスに対応する。アドレス選択器133は、モード選択信号に基づいて、第1動作モード又は第2動作モードで動作する。アドレス選択器133は、第1動作モードでは加算器131により生成された第1上位アドレス信号D22を選択し、第2動作モードでは上位シフタ132により生成された第2上位アドレス信号D23を選択する。すなわち、アドレス選択器133の出力である選択アドレス信号D24は、第1動作モードではメモリ21の全アドレスに対応し、第2動作モードではメモリ21の一部のアドレスに対応する。レジスタ値選択器134は、アドレス更新信号に基づいて、アドレス信号D13又は選択アドレス信号D24を次のアドレス入力を示すレジスタ値D20として選択する。例えば、レジスタ値選択器134は、アドレス更新信号が供給されていない場合、アドレス信号D13を選択し、アドレス更新信号が供給された場合、選択アドレス信号D24を選択する。すなわち、アドレスレジスタ130は、アドレス更新信号が供給された場合、保持値を選択アドレス信号D24に更新し、アドレス更新信号が供給されなかった場合、保持値を維持する。最終アドレス判定器135は、モード選択信号に基づいて、選択アドレス信号D24が最終アドレスであるか否かを判定し、選択アドレス信号D24が最終アドレスであるか否かを示す通知信号D16を生成する。例えば、最終アドレス判定器135は、モード選択信号が第1動作モードを示す場合、全ビットが1の信号すなわち、メモリ21の終端アドレスを最終アドレスと判定する。一方、最終アドレス判定器135は、モード選択信号が第2動作モードを示す場合、シフト方式に応じた最終アドレス条件に基づいて、選択アドレス信号D24が最終アドレスであるか否かを判定する。例えば、最終アドレス条件は、第1シフト方式では最上位ビットのみが1であり、第2シフト方式では全ビットが1である。最終アドレス判定器135は、最終アドレスであると判定した場合、有効を示す通知信号D16を生成し、最終アドレスでないと判定した場合、無効を示す通知信号D16を生成する。表2は、クロックサイクル毎の、初期化信号と、アドレス更新信号と、第2上位アドレス信号D23と、通知信号D16とを示す。第1実施形態のBISTについて説明する。図3~7は、第1実施形態のBISTの説明図である。第1実施形態のBISTは、マーチングパタンを用いて行われるマーチングテストである。マーチングパタンとは、メモリ21の各メモリセルに対する1セットの動作いわゆる、マーチエレメントを、メモリ21の全アドレスに適用しながら、メモリセルの値を書き換えるテストパタンである。動作を行う順番は、アドレスの昇順又は降順である。この動作は、表3のマーチテストシーケンスの記法で表現される。この記法では、w0,w1、r0,r1は、それぞれ、値0又は1の書き込み又は読み出しを示す。この記法を用いて、例えば9NMarchと呼ばれるアルゴリズムを記述すると、表3のようになる。表3では、括弧内の部分がマーチエレメントである。以下、昇順アドレスのみを行う表4のマーチテストシーケンスを用いるものとする。表4のように、アドレス生成器13は、第2動作モードで、全ビットが0の初期値から、最下位ビットが1の状態から1を最上位ビットまで、アドレス入力の各ビットを順次シフトする。図3Aは、メモリ21には、Aiビットが0に固定されるという設計ミスに起因する接続上の不具合が起こっていることを示す。図4は、図3Aのi=3の場合に対応するクロックサイクル毎の正しいアドレス及び実際のアドレスを示す。図4のように、クロックサイクル4及び5の実際のアドレスが同一になる。前述のマーチテストシーケンスでは、あるステップで、アドレス00000111でメモリからデータを読み出し、そのメモリ出力M0000...を期待値データD120000...と比較する。次のステップで、アドレス00000111にメモリデータD111111...が書き込まれる。次に、アドレスレジスタ130の値を更新し、アドレス00001111でメモリ21からデータを読み出し、そのメモリ出力Mを期待値データD120000...と比較する。しかし、前述のように接続上の不具合により、メモリ21に入力されるアドレスは、00000111となる。このアドレスでは、前のステップでデータが1111...に書き換えられた後である。したがって、メモリ出力Mと期待値データD12との比較結果は一致せず、シミュレーションにおけるBIST結果出力がエラーとして検出される。図3Bは、メモリ21には、Aiビットが1に固定されるという設計上の不具合が起こっていることを示す。図5は、図3Bのi=3の場合に対応するクロックサイクル毎の正しいアドレス及び実際のアドレスを示す。図5のように、クロックサイクル4及び5の実際のアドレスが同一になる。前述のマーチテストシーケンスでは、あるステップで、アドレス00000111でメモリ21からデータを読み出し、そのメモリ出力Mを期待値データD120000...と比較する。この場合、実際にメモリ21に入力されるアドレス入力は、接続上の不具合により00001111となるが、書き込まれている値は正常な場合と同じであるので、比較結果は一致を示す。次のステップで、同じアドレス00001111にメモリデータD111111...が書き込まれる。次に、アドレスレジスタ130の値を更新し、アドレス00001111でメモリ21からデータを読み出し、そのメモリ出力Mを期待値データD120000...と比較する。しかし、このアドレスでは、前のステップでデータが1111...に書き換えられた後である。したがって、メモリ出力Mと期待値データD12との比較結果は一致せず、シミュレーションにおけるBIST結果出力がエラーとして検出される。図3Cは、メモリ21には、Aiビット及びAjビットが同じ値に固定されるという接続上の不具合があることを示す。図6は、図3Cのi=2且つj=4の場合に対応するクロックサイクル毎の正しいアドレス及び実際のアドレスを示す。図6のように、クロックサイクル5及び6の実際のアドレスが同一になる。前述のマーチテストシーケンスでは、あるステップで、アドレス00001111でメモリ21からデータを読み出し、そのメモリ出力Mを期待値データD120000...と比較する。この場合、実際にメモリに入力されるアドレス入力は、接続上の不具合により00011111となるが、書き込まれている値は正常な場合と同じであるので、比較結果は一致する。次のステップで、同じアドレス00011111にメモリデータD111111...が書き込まれる。次に、アドレスレジスタ130の値を更新し、アドレス00011111でメモリ21からデータを読み出し、期待値データD120000...と比較する。しかし、このアドレスでは前のステップでデータが1111...に書き換えられた後である。したがって、メモリ出力Mと期待値データD12との比較結果は一致せず、シミュレーションにおけるBIST結果出力がエラーとして検出される。図3Dは、マルチポートを有するメモリ21のあるポートでAiビットとAjビットが入れ替わっているという接続上の不具合があることを示す。図7は、図3Dのi=2且つj=4の場合に対応するクロックサイクル毎の正しいアドレス及び実際のアドレスを示す。このメモリ21は、書き込みポートと読み出しポートを別に持ち、書き込みポートのアドレスには、上記のように接続上の不具合があり、読み出しポートのアドレスは正常に接続されているものとする。前述のマーチテストシーケンスでは、最初の全アドレスに対する書き込みで、一通りのアドレスにメモリデータD110000...が書き込まれる。しかし、アドレスカウンタの値が00000111になった時には、実際にメモリ21に入力されるアドレス入力は00010011となり、目的とするアドレスにはデータは書き込まれない。その後、読み出しポートからアドレス00000111でデータを読み出すと、そのアドレスにはデータが書き込まれておらず、不定の値が出力されるため、メモリ出力Mと期待値データD120000...との比較結果は一致せず、シミュレーションにおけるBIST結果出力がエラーとして検出される。第1実施形態によれば、アドレス生成器13は、第1動作モードでメモリ21の全アドレスに対応するアドレス信号D13を生成し、第2動作モードでメモリ21の一部のアドレスに対応するアドレス信号D13を生成する。換言すると、BIST回路10は、メモリ21の全アドレスに対応するアドレス信号D13を生成する第1動作モードと、メモリ21のアドレス入力の各ビットが、それぞれ、0と1の両状態をとり、かつ、異なるビット同士が一度は別の信号状態を持つような一連のデータとなるように、メモリ21の一部のアドレスに対応するアドレス信号D13を生成する第2動作モードの何れかで動作する。これにより、テスト範囲は、第1動作モードではメモリ21の全アドレスであるが、第2動作モードではメモリ21の一部のアドレスのみである。従って、テスト範囲が常にメモリ21の全アドレスである場合と比べて、BIST実行に要するステップ数が低減し、結果として、半導体集積回路1にBIST回路10を挿入した後の接続検証のためのシミュレーション実行の所要時間を短縮することができる。より具体的には、メモリ21の全アドレスに対してマーチングパタンを適用する場合、BIST実行に要するステップ数は、2NNは、アドレス幅を示す整数に比例する個数である。一方、第2動作モードでは、ステップ数は、N1に比例する個数に過ぎない。これは、マーチテストではBIST実行ステップ数がアドレス数に比例することから、第2動作モードで生成されるBIST結果出力のデータ量は、従来に比べてN1/2Nに低減することを意味する。例えば、N=13であれば、メモリのアドレス数ワード数は、第1動作モードでは8192個であるが、第2動作モードでは14個に過ぎない。つまり実行ステップ数は14/8192に削減される。また、第1実施形態によれば、アドレス生成器13は、モード選択信号に応じたテスト範囲のアドレス信号D13を生成するので、BIST回路10の一連の動作が連続して正しく行われているか否かについて、全てのメモリアドレスに対して漏れなく検証することができる。また、第1実施形態によれば、上位シフタ132は、2つのシフト方式第1シフト方式及び第2シフト方式をサポートするので、メモリ21のワード数が2のべき乗である場合及び2のべき乗でない場合の何れにおいても、BIST結果出力のデータ量を低減することができる。第2実施形態第2実施形態について説明する。第1実施形態は、アドレスを上位アドレス側に変化させる例であるが、第2実施形態は、アドレスを上位アドレス側及び下位アドレス側に変化させる例である。なお、上述の実施形態と同様の内容の説明は省略する。第2実施形態の半導体集積回路1は、第1実施形態と同様である。但し、BIST制御回路11は、初期化信号と、アドレス更新信号と、モード選択信号とに加えて、シフト方向選択信号をさらに含むBIST制御信号D10を生成する。シフト方向選択信号は、アドレス信号D13を、上位アドレス方向昇順に推移させる昇順モードか、又は下位アドレス方向降順に推移させる降順モードかすなわち、アドレス信号D13のシフト方向を示す信号である。第2実施形態のアドレス生成器について説明する。図8は、第2実施形態のアドレス生成器13の構成図である。図8に示すように、アドレス生成器13は、アドレスレジスタ130と、加算器131と、上位シフタ132と、アドレス選択器133と、レジスタ値選択器134と、最終アドレス判定器135と、減算器136と、下位シフタ137と、上位アドレス選択器138と、下位アドレス選択器139と、を備える。アドレスレジスタ130、加算器131、上位シフタ132及びレジスタ値選択器134は、第1実施形態と同様である。減算器136は、アドレス信号D13から1を減算し、第1下位アドレス信号D25を生成する。第1下位アドレス信号D25は、クロック信号に対応するアドレスに対して1つ下位アドレス方向に位置するアドレスを示す所定数例えば8ビットのビット列を含む。減算器136は、クロック信号がアドレスレジスタ130へ供給される度に第1下位アドレス信号D25を生成する。従って、第1下位アドレス信号D25に対応するアドレスは、メモリ21の終端アドレス例えば11111111から先頭アドレス例えば00000000まで推移する。すなわち、第1下位アドレス信号D25は、メモリ21の全アドレスに対応する。下位シフタ137は、第3シフト方式又は第4シフト方式を用いて、アドレス信号D13を下位アドレス方向にシフトし、第2下位アドレス信号D26を生成する。第3シフト方式では、下位シフタ137は、アドレス信号D13の最上位ビットから順に、各ビット毎に1を設定する。第4シフト方式では、下位シフタ137は、アドレス信号D13の最上位ビットから連続して1を設定する。これにより、表5の第2下位アドレス信号D26が生成される。表5は、クロックサイクル0で初期化信号が入力されたときのクロックサイクル毎の第2下位アドレス信号D26を示す。クロックサイクルは、クロック信号のサイクル数である。表5のように、第2下位アドレス信号D26は、クロックサイクル0~9で、メモリ21のテスト範囲の先頭アドレス11111111又は10000000から最終アドレス00000000まで推移する。すなわち、第2下位アドレス信号D26は、メモリ21の一部のアドレスに対応する。上位アドレス選択器138は、モード選択信号に基づいて、第1動作モード又は第2動作モードで動作する。上位アドレス選択器138は、第1動作モードでは加算器131により生成された第1上位アドレス信号D22を選択し、第2動作モードでは上位シフタ132により生成された第2上位アドレス信号D23を選択する。すなわち、上位アドレス選択器138の出力である選択上位アドレス信号D27は、第1動作モードではメモリ21の全アドレスに対応し、第2動作モードではメモリ21の一部のアドレスに対応する。下位アドレス選択器139は、モード選択信号に基づいて、第1動作モード又は第2動作モードで動作する。下位アドレス選択器139は、第1動作モードでは減算器136により生成された第1下位アドレス信号D25を選択し、第2動作モードでは下位シフタ137により生成された第2下位アドレス信号D26を選択する。すなわち、下位アドレス選択器139の出力である選択下位アドレス信号D28は、第1動作モードではメモリ21の全アドレスに対応し、第2動作モードではメモリ21の一部のアドレスに対応する。アドレス選択器133は、シフト方向選択信号に基づいて、選択上位アドレス信号D27又は選択下位アドレス信号D28を選択する。アドレス選択器133は、シフト方向選択信号が上位アドレス方向を示す場合、選択上位アドレス信号D27を選択し、シフト方向選択信号が下位アドレス方向を示す場合、選択下位アドレス信号D28を選択する。すなわち、アドレス選択器133の出力である選択アドレス信号D24は、第1動作モードではメモリ21の全アドレスに対応し、第2動作モードではメモリ21の一部のアドレスに対応するだけでなく、シフト方向選択信号が示すアドレス方向に推移する。第2実施形態によれば、BIST回路10は、第2動作モードで、アドレス入力を昇順にシフトする昇順モードと、アドレス入力を降順にシフトする降順モードとの何れかで動作する。BIST回路10は、昇順モードでは、アドレス入力の全ビットが0の初期値から、最下位ビットが1の状態から1を最上位ビットまでアドレス入力の各ビットを順次シフトする。BIST回路10は、降順モードでは、最上位ビットのみが1の状態から最下位ビットまでアドレス入力の各ビットを順次シフトする。BIST回路10は、昇順モード及び降順モードの何れの場合にも、最終的にアドレス入力を全ビットが0の状態に戻す。従って、アドレスを上位アドレス方向昇順にシフトするテストパタンと、アドレスを下位アドレス方向降順にシフトするテストパタンとの何れの場合にも、第1実施形態と同様の効果を得ることができる。第3実施形態第3実施形態について説明する。第3実施形態は、複数のメモリカラーに1つのBIST回路が接続された半導体集積回路の例である。なお、上述の実施形態と同様の内容の説明は省略する。第3実施形態の半導体集積回路について説明する。図9は、第3実施形態の半導体集積回路1の構成図である。図9に示すように、半導体集積回路1は、BIST回路10と、複数のメモリカラー20a及び20bとを備える。BIST回路10は、データ生成器12を備える。複数のメモリカラー20a及び20bは、それぞれ、メモリ21a及び21bを備える。なお、図9に図示されていない構成は、第1実施形態と同様である。アドレス生成器13は、アドレス信号D13を出力するn1nは0以上の整数個のピンP[0]~P[n]を備える。メモリ21aは、n1個のアドレス入力ピンA[0]~A[n]を備える。メモリ21bは、n個のアドレス入力ピンB[0]~B[n-1]を備える。ピンP[0]~P[n-1]は、それぞれ、ピンA[0]~A[n-1]及びピンB[0]~B[n-1]に接続される。一方、ピンP[n]は、ピンA[n]にのみ接続される。すなわち、複数のメモリ21a及び21bは、それぞれ、アドレス幅が異なる。アドレス生成器13は、アドレス信号D13[0]~D13[n]を生成する。次いで、データ生成器13は、ピンP[0]~P[n]からメモリ21aのピンA[0]~A[n]へ、それぞれ、アドレス信号D13[0]~D13[n]を送信する。一方、データ生成器13は、ピンP[0]~P[n-1]からメモリ21bのピンB[0]~B[n-1]へ、それぞれ、アドレス信号D13[0]~D13[n-1]を送信し、メモリ21bへのアドレス信号D13[n]は無効化する。データ生成器12は、複数のメモリ21a及び21bへ書き込むべきメモリデータD11と、複数のメモリ21a及び21bのメモリ出力Mの期待値データD12とを生成する。また、データ生成器12は、第2動作モードにおいて、アドレス信号D13のデータ幅の範囲に含まれないアドレスでのメモリデータD11の書き込みと、メモリ出力Mと期待値データD12との比較とを無効化する。第3実施形態によれば、BIST回路10は、第2動作モードでメモリデータD11の書き込みと、メモリ出力Mと期待値データD12との比較とを無効化する。従って、第1及び第2実施形態に比べて、複数のメモリ21a及び21bの動作を検証するためのBIST結果出力のデータ量を大幅に削減することができる。第4実施形態第4実施形態について説明する。第1~第3実施形態は、RAMに適用可能な比較型BISTの例であるが、第4実施形態は、RAMだけでなく、ROMReadOnlyMemoryにも適用可能な圧縮型BISTの例である。なお、上述の実施形態と同様の内容の説明は省略する。第4実施形態の半導体集積回路について説明する。図10は、第4実施形態の半導体集積回路1の構成図である。図10に示すように、半導体集積回路1は、BIST回路10と、メモリカラー20とを備える。BIST回路10は、BISTを実行する回路である。メモリカラー20は、BISTの対象となるメモリデバイスを含む。BIST回路10は、BIST制御回路11と、データ生成器12と、アドレス生成器13と、制御信号生成器14と、解析器15とを備える。BIST制御回路11、アドレス生成器13及び制御信号生成器14は、第1実施形態と同様である。メモリカラー20は、メモリ21と、圧縮器25とを備える。データ生成器12は、BIST制御信号D10に基づいて、メモリデータD11を生成する。メモリデータD11は、メモリ21へ書き込まれるべきデータである。なお、データ生成器12は、生成したメモリデータ11を保持しないすなわち、第1実施形態の期待値データD12を出力しない。メモリ21は、メモリ制御信号D14で書き込み動作を指示すると、書込アドレスにメモリデータD11を記憶し、メモリ制御信号D14で読み出し動作を指示すると、書込アドレスのメモリデータD11をメモリ出力Mとして出力する。上述の実施形態と異なり、メモリ21は、RAMであっても良いし、ROMであっても良い。なお、ROMの場合は書き込み動作を行わないので、データ生成器12は不要となる。圧縮器25は、メモリ21のメモリ出力Mを入力し、入力したメモリ出力Mを圧縮し、圧縮データD17を生成する。圧縮器25は、例えばMISRMultipleInputSignatureRegisterである。解析器15は、メモリカラー20が1個の場合には、圧縮データD17をBISTデータとして出力する。一方、解析器15は、メモリカラー20が複数の場合には、各メモリカラー20から出力される圧縮データD17をシリアルに入力し、入力した圧縮データD17をBIST実行結果として順次出力する。第4実施形態によれば、第1実施形態と同様に、アドレス生成器13は、第1動作モードでメモリ21の全アドレスに対応するアドレス信号D13を生成し、第2動作モードでメモリ21の一部のアドレスに対応するアドレス信号D13を生成する。従って、テスト範囲が常にメモリ21の全アドレスである場合と比べて、BIST実行に要するステップ数が低減し、結果としてBIST検証を行うシミュレーションの所要時間を短縮することができる。ところで、メモリ21がROMである場合、ROMに記憶されるROMデータにはランダム性がある。従って、データ生成器12は、ROMデータを生成することができない。また、ROMデータを生成する代わりに、半導体集積回路1内にROMデータを保存しておくことは、非現実的である。以上のことから、ROMに対しては、上述の実施形態と異なり、メモリ出力Mを期待値データD13と比較する手法は利用できない。仮に、ROMに対して圧縮器型BISTを用いるときに、上述の実施形態のように、第2動作モードでメモリ21の一部のアドレスに対応するアドレス信号D13を生成する即ち、アドレス範囲を削減すると、ROMデータのランダム性が問題になる。具体的には、第2動作モードで生成されたアドレス信号D13に含まれないアドレス即ち、削減された範囲のアドレスでデータを読み出すと、異なるアドレスのデータが同じであった場合、最終的な出力圧縮結果である圧縮データD17も同じになってしまうという問題がある。以下、ROMデータのランダム性に起因する問題の解決する第4実施形態の設計装置について説明する。図11は、第4実施形態の設計装置40のブロック図である。図11の設計装置40は、LSILargeScaleIntegrationの設計装置である。この設計装置40は、ROMデータ生成部42と、シミュレーション実行部44と、判定部46とを備える。第4実施形態の設計装置40の動作について説明する。図12は、第4実施形態の設計装置40の動作のフローチャートである。設計装置40の動作は、ROMデータ生成ステップS1200と、シミュレーションステップS1202と、判定ステップS1204とで構成される。<S1200>ROMデータ生成部42は、上記のROMデータのランダム性に起因する問題を避けるために、半導体集積回路1を利用するシステムで用いられるシステム用ROMデータのほかに、システムに搭載されるROMデバイスの構成を示す構成情報から、検証動作で用いられる検証用ROMデータを生成する。この際、ROMデータ生成部42は、第2動作モードで生成されるアドレス信号D13に含まれないアドレス即ち、検証動作時に削減された範囲のアドレスに対しては、異なるアドレスでそれぞれデータが重複しないように検証用ROMデータを生成する。これと同時に、ROMデータ生成部42は、BIST実行結果の圧縮期待値のログを示す圧縮期待値データも生成する。なお、圧縮回路には、一般的に、圧縮の結果として故障の情報を失う現象いわゆるエイリアス現象が起こる場合がある。このため、ROMデータ生成部42は、予め想定される設計ミスがある場合に、検証用ROMデータを用いた論理シミュレーションによる圧縮結果が、設計ミスのない場合と同一になったときは、その検証用ROMデータを破棄する。これにより、エイリアス現象の起こらない検証用ROMデータが生成される。<S1202>シミュレーション実行部44は、この検証用ROMデータと、設計データと、テストパタンと、を用いて、検証モードでのBSIT動作の論理シミュレーションを行い、ROMのメモリ出力Mの圧縮結果のシミュレーション結果を出力する。設計データは、検証対象である半導体集積回路1の構成に関する記述を含む。テストパタンデータは、BIST回路10の動作に関する記述を含む。<S1204>判定部46は、シミュレーション実行部44から出力されたシミュレーション結果と、ROMデータ生成部42で生成された圧縮期待値データとを比較し、両者が一致した場合はパスと判定し、両者が一致しない場合はエラーと判定し、判定結果を出力する。第4実施形態によれば、本来はランダム性のあるROMデータを記憶するROMデバイスに対して、第2動作モードで削減された範囲のアドレスを示すアドレス信号D13を生成するアドレス生成器13と、検証用ROMデータを生成するROMデータ生成部42とを用いる。即ち、設計装置40は、メモリ21がROMの場合、テスト実行時に、メモリ出力Mを順次圧縮し、最終的な圧縮結果でメモリ21の良否を判定する。また、設計装置40は、ROMの構成を示す構成情報から、第2動作モードで生成されるアドレス信号D13に含まれないアドレスに対して、異なるアドレスでデータが重複しないように検証用ROMデータを生成する。また、設計装置40は、アドレス信号D13を伝送するピンに接続上の不具合があった場合の圧縮結果が、接続上の不具合がない場合の圧縮結果と異なるように、圧縮期待値を生成する。従って、全アドレスで論理シミュレーションを実行するよりも、接続上の不具合の検証時間を大幅に削減することができる。なお、本発明は、上述した実施形態に限定されるものではなく、その要旨を逸脱しない範囲で構成要素を変形して具体化される。また、上述した実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明が形成可能である。例えば、上述した実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。"