(57)【特許請求の範囲】
【請求項１】
メモリを有する第１チップと当該メモリにアクセスするマスタを含む第２チップとを備え、当該第１チップと当該第２チップとが１つのパッケージに封入されてなる集積回路を内蔵する第１又は第２の装置を製造する製造方法であって、
前記第１の装置は、前記マスタによる前記メモリへのアクセスにおけるビットレートが所定のビットレート以上確保されていることを動作条件とする装置であり、
前記第２の装置は、前記マスタによる前記メモリへのアクセスにおけるビットレートが前記所定のビットレート以上確保されていることを動作条件としない装置であり、
前記集積回路を対象として、前記マスタによる前記メモリへのアクセスに係る検査を行うことで、前記マスタによる前記メモリへのアクセスにおけるビットレートが前記所定のビットレート以上確保することが可能であるか否かを評価する評価ステップと、
前記評価ステップによって、評価対象となった集積回路が肯定的な評価をされた場合に、当該集積回路を内蔵して前記第１の装置を製造する第１製造ステップと、
前記評価ステップによって、評価対象となった集積回路が否定的な評価をされた場合に、当該集積回路を内蔵して前記第２の装置を製造する第２製造ステップとを含み、
前記第１又は第２の装置に内蔵される集積回路は、前記第１チップと前記第２チップとが複数のバンプを介して電気的に接続されて構成され、
前記マスタは、前記複数のバンプのうちの少なくとも１つのアクセス用バンプを介して前記メモリへのアクセスに係るデータ通信を行い、
前記評価ステップにおける検査は、前記アクセス用バンプについての電気的接続不良に係る検査を含む
ことを特徴とする製造方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリアクセス制御技術に関する。
【背景技術】
【０００２】
従来、複数の半導体チップが積層され、１つのパッケージ内に封入されている３次元集積回路がある。
【０００３】
このような３次元集積回路において、積層されている半導体チップ間の接続は、例えば、非特許文献１に記載されているように、マイクロバンプ（micro-bump）といったバンプ等によって実現される。
【０００４】
ところで、バンプ等による積層半導体チップ間の接続には、高度な微細加工技術が必要とされるため、一定比率で接続不良が発生してしまう。
【０００５】
３次元集積回路において、半導体チップ間接続の中に接続不良が発生してしまうと、その接続不良に起因して不具合が発生してしまう恐れがある。
【０００６】
従来、半導体チップ間の接続の中に接続不良が発生してしまっても、その接続不良に起因して発生してしまう不具合を回避する可能性を高くする技術として、例えば、特許文献１に記載されている技術が知られている。
【０００７】
この技術は、半導体チップ間の接続の中に接続不良が発生してしまった場合に、接続不良が発生していない端子のデータ転送速度を上げて、接続不良が発生している端子で送信するはずであったデータを送信するという技術である。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００９−１３４５７３号公報
【非特許文献】
【０００９】
【非特許文献１】J-S, Kim, et al., "A 1.2V 12.8GB/s 2Gb Mobile Wide-IO DRAM with 4x128 I/Os Using TSV-Based Stacking," pp.496-497, Digest of ISSCC(2011).
【発明の概要】
【発明が解決しようとする課題】
【００１０】
記憶領域を利用するマスタ（例えば、プロセッサ、デコーダ等）と、マスタからの記憶領域へのアクセスを制御するメモリアクセス制御装置とを有するロジックチップと、マスタに利用される記憶領域を有するメモリチップとが積層されてなる３次元集積回路において、特許文献１に記載されている技術を利用しようとする場合には、少なくとも、メモリチップにおけるインターフェース回路に対して、記憶領域から読み出すデータ、及び記憶領域へ書き込むデータに対する入出力端子の割り当てを変更する回路（以下、「端子割当変更回路」と呼ぶ。）を付加する必要がある。
【００１１】
しかしながら、メモリチップにおけるインターフェース回路に対して、端子割当変更回路を付加してしまうと、そのメモリチップは、市販されている標準規格のチップに比べて高価なものとなってしまう。このため、３次元集積回路のコストは、端子割当変更回路が付加されたメモリチップを用いた場合の方が、標準規格のメモリチップを用いた場合よりも高くなってしまう。
【００１２】
そこで、本発明は係る問題に鑑みてなされたものであり、ロジックチップとメモリチップとが積層されてなる３次元集積回路において、メモリチップとして、端子割当変更回路が付与されないメモリチップが用いられる場合において、ロジックチップとメモリチップとの間の接続不良等に起因して、メモリチップから送信されるビット列のうちの一部のビット列しか受信できないときであっても、ロジックチップに含まれるマスタが、メモリチップを利用することができるメモリアクセス制御装置を提供することを目的とする。
【課題を解決するための手段】
【００１３】
上記課題を解決するために本発明に係るメモリアクセス制御装置は、外部のメモリにおける記憶領域の範囲を指定する論理アドレスを受け付ける論理アドレス受付部と、所定長のビット列における１以上のビット位置を示すビット位置情報を記憶するためのビット位置情報記憶部と、前記論理アドレス受付部によって受け付けられた論理アドレスに基づいて、当該論理アドレスによって指定される記憶領域の範囲のビット数よりも多いビット数のビット列を、前記所定長単位で前記メモリから読み出す試みを行う読出部と、前記読出部の行う前記読み出しの試みによって前記メモリから取り出されたビット列から、前記所定長単位で、前記ビット位置情報記憶部に記憶されるビット位置情報によって示されるビット位置のビットを抽出するビット列抽出部と、前記ビット列抽出部によって抽出された１以上のビット列から、前記論理アドレス受付部によって受け付けられた論理アドレスによって指定される記憶領域の範囲のビット数からなるビット列を生成して出力する出力部とを備えることを特徴とする。
【発明の効果】
【００１４】
上述の構成を備える本発明に係るメモリアクセス制御装置によると、ロジックチップとメモリチップとの間の接続不良等に起因して、ロジックチップが、メモリチップから送信されるビット列のうちの一部のビット列しか受信できないときであっても、その受信できるビット列のビット位置を示すビット位置情報をビット位置情報記憶部に記憶させておき、メモリチップの記憶領域のうちの、接続不良等の影響を受けずに受信することができるビット列によって読み出すことができる記憶領域にロジックチップに含まれるマスタが利用するデータを記憶させておくことで、マスタは、メモリチップを利用することができる。
【図面の簡単な説明】
【００１５】
【図１】集積回路１００の断面を模式的に示した断面図
【図２】（ａ）高機能向け良品である集積回路１００の模式図、（ｂ）普及向け良品である集積回路１００の模式図、（ｃ）不良品である集積回路１００の模式図。
【図３】メモリチップ１０２の主要なハードウエアの概要構成図
【図４】メモリチップ１０２の論理アドレスの構成を示す構成図
【図５】システムＬＳＩチップ１０１の主要なハードウエア構成図
【図６】外部メモリ制御回路５１９の主要な機能構成図
【図７】（ａ）データを読み出す場合のタイミングチャートその１、（ｂ）データを読み出す場合のタイミングチャートその２
【図８】（ａ）"ＤＴａ"、"ＤＴｂ"、"ＤＴｃ"が格納されている領域を示す模式図、（ｂ）"ＤＴａ"、"ＤＴｂ"、"ＤＴｃ"、"ＤＴｄ"が格納されている領域を示す模式図
【図９】接続不良マイクロバンプが存在する場合において、データ線冗長救済部６１１における入力データと出力データとの関係を示す模式図その１
【図１０】接続不良マイクロバンプが存在する場合において、データ線冗長救済部６１１における入力データと出力データとの関係を示す模式図その２
【図１１】接続不良マイクロバンプが存在する場合において、Ｒデータアラインメントバッファ６１４が行う処理を示す模式図
【図１２】接続不良マイクロバンプが存在する場合において、Ｗデータアラインメントバッファ６１６が行う処理を示す模式図
【図１３】メモリコマンド調停処理のフローチャート
【図１４】メモリチップ制御処理のフローチャートその１
【図１５】メモリチップ制御処理のフローチャートその２
【図１６】集積回路１００製造方法のフローチャートその１
【図１７】集積回路１００製造方法のフローチャートその２
【図１８】システムＬＳＩチップ１８０１の主要なハードウエア構成図
【図１９】外部メモリ制御回路１８１９の主要な機能構成図
【図２０】自己診断処理のフローチャート
【図２１】外部メモリ制御回路２１１９の主要なハードウエア構成図
【図２２】第２変形集積回路製造方法のフローチャートその１
【図２３】第２変形集積回路製造方法のフローチャートその２
【図２４】データを読み出す場合のタイミングチャート
【図２５】"ＤＴａ１"、"ＤＴｃ１"、"ＤＴｂ１"、"ＤＴｄ１"、"ＤＴａ２"、"ＤＴｃ２"が格納されている領域を示す模式図
【図２６】メモリチップ１０２の論理アドレスの構成を示す構成図
【図２７】データを読み出す場合のタイミングチャート
【図２８】"ＤＴａ１"、"ＤＴａ２"、"ＤＴｂ１"、"ＤＴｂ２"、"ＤＴｃ１"、"ＤＴｃ２"が格納されている領域を示す模式図
【図２９】メモリチップ１０２の論理アドレスの構成を示す構成図
【図３０】データを読み出す場合のタイミングチャート
【図３１】"ＤＴａ１"、"ＤＴｂ１"、"ＤＴｃ１"、"ＤＴｄ１"、"ＤＴａ２"、"ＤＴｂ２"が格納されている領域を示す模式図
【図３２】メモリチップ１０２の論理アドレスの構成を示す構成図
【図３３】製品製造処理のフローチャート
【図３４】メモリアクセス制御装置３４００の機能構成図
【発明を実施するための形態】
【００１６】
＜実施の形態１＞
＜概要＞
以下、本発明に係るメモリアクセス制御装置の一例として、記憶領域を利用するマスタと、マスタからの記憶領域へのアクセスを制御するメモリアクセスコントローラとを有するシステムＬＳＩ（Large Scale Integration）チップと、マスタに利用される記憶領域を有するメモリチップとが、複数のマイクロバンプを介して互いに接続されることで積層されてなる集積回路について説明する。
【００１７】
この集積回路は、製造時の検査結果に基づいて、システムＬＳＩチップとメモリチップとを接続する複数のマイクロバンプの中に接続不良が発生していない場合は、高機能向け良品として選定される。そして、システムＬＳＩチップとメモリチップとを接続する複数のマイクロバンプのうちの所定のマイクロバンプ群の中に接続不良が発生してしまっている場合であっても、接続不良の数が所定数未満のときには、高機能向け良品の一部の機能が制限された普及向け良品として選定される。
【００１８】
以下、本実施の形態１に係る集積回路の概要について、図面を用いて説明する。
【００１９】
図１は、集積回路１００の断面を模式的に示した断面図である。
【００２０】
同図において、システムＬＳＩチップ１０１は、内部に、記憶領域を利用する複数のマスタと、マスタからの記憶領域へのアクセスを制御するメモリアクセスコントローラとを有するロジックチップであって、トランジスタ形成層１２４と配線形成層１２３とを備える。そして、トランジスタ形成層１２４には、配線形成層１２３に形成される配線上の信号を、トランジスタ形成層１２４側主表面外部に引き出すためのＴＳＶ（Through Silicon Via）が配置されている。
【００２１】
このシステムＬＳＩチップ１０１は、利用する外部メモリとして１９２ＭＢの記憶領域が確保され、７ＧＢ／ｓのメモリ帯域幅が確保される場合には、外部メモリを利用して、デジタルテレビ放送番組を１番組デコードする機能を有し、利用する外部メモリとして２５６ＭＢの記憶領域が確保され、１０ＧＢ／ｓのメモリ帯域幅が確保される場合には、外部メモリを利用して、デジタルテレビ放送番組を２番組同時デコードする機能を有する。
【００２２】
メモリチップ１０２は、内部に、システムＬＳＩチップ１０１に含まれるマスタに利用される記憶領域を有する汎用メモリチップであって、トランジスタ形成層１２１と配線形成層１２２とを備える。
【００２３】
リードフレーム（lead frame）１０３は、システムＬＳＩチップ１０１を支持固定し、システムＬＳＩチップ１０１のＴＳＶ端子のそれぞれと、集積回路１００外部の基板（図示せず）における端子のそれぞれとを接続する。
【００２４】
システムＬＳＩチップ１０１とメモリチップ１０２とは、互いに、配線形成層が対向するように重ね合わせされ、複数のマイクロバンプ１１１を介して互いに接続されている。
【００２５】
システムＬＳＩチップ１０１とメモリチップ１０２とを接続するマイクロバンプのうち、メモリチップ１０２から読み出すデータと、メモリチップ１０２へ書き込むデータとを伝達するためのマイクロバンプ群（以下、「メモリデータ用マイクロバンプ群」と呼ぶ。）は、５１２個のマイクロバンプで構成される。
【００２６】
システムＬＳＩチップ１０１とメモリチップ１０２とを接続するマイクロバンプの中に接続不良マイクロバンプが含まれない場合には、システムＬＳＩチップ１０１は、１０ＧＢ／ｓの帯域幅でメモリチップ１０２を利用する。そして、メモリデータ用マイクロバンプ群の中に、接続不良マイクロバンプが存在してしまっている場合であっても、その数が１２８個以下であれば、システムＬＳＩチップ１０１は、接続不良マイクロバンプを用いずにメモリチップ１０２と通信することで、７ＧＢ／ｓの帯域幅でメモリチップ１０２を利用する。
【００２７】
システムＬＳＩチップ１０１とリードフレーム１０３とは、システムＬＳＩチップ１０１のトランジスタ形成層１２４側主表面がリードフレーム１０３と対向するように、互いに重ね合わせられ、複数のバンプ１１３を介して互いに接続されている。
【００２８】
そして、システムＬＳＩチップ１０１とメモリチップ１０２とリードフレーム１０３とは、樹脂によって１つのパッケージ（図示せず）内に封入されている。
【００２９】
図２（ａ）は、高機能向け良品である集積回路１００を模式的に示す模式図である。
【００３０】
同図において、システムＬＳＩチップ１０１とメモリチップ１０２との間の線のそれぞれは、システムＬＳＩチップ１０１とメモリチップ１０２との間を接続するマイクロバンプのそれぞれを模式的に示している。
【００３１】
高機能向け良品は、システムＬＳＩチップ１０１とメモリチップ１０２との間を接続するマイクロバンプの中に接続不良となるマイクロバンプが含まれていない状態の集積回路１００のことをいう。この状態において、システムＬＳＩチップ１０１は、メモリチップ１０２を外部メモリとして、２５６ＭＢのメモリ領域を利用し、１０ＧＢ／ｓの帯域幅でメモリチップ１０２とデータ通信を行う。
【００３２】
図２（ｂ）は、普及向け良品である集積回路１００を模式的に示す模式図である。
【００３３】
同図において、システムＬＳＩチップ１０１とメモリチップ１０２との間の線のそれぞれは、図２（ａ）と同様に、システムＬＳＩチップ１０１とメモリチップ１０２との間を接続するマイクロバンプのそれぞれを模式的に示している。そして、これらの線の一部が断線しているように表記することで、マイクロバンプの一部に接続不良マイクロバンプが含まれていることを示している。
【００３４】
普及向け良品は、メモリデータ用マイクロバンプ群の中に、１２８個以下の接続不良マイクロバンプが存在している状態の集積回路１００のことをいう。この状態において、システムＬＳＩチップ１０１は、メモリチップ１０２を外部メモリとして、１９２ＭＢのメモリ領域を利用し、７ＧＢ／ｓの帯域幅でメモリチップとデータ通信を行う。
【００３５】
図３（ｃ）は、不良品である集積回路１００を模式的に示す模式図である。
【００３６】
同図において、システムＬＳＩチップ１０１とメモリチップ１０２との間の線のそれぞれは、図２（ａ）、（ｂ）と同様に、システムＬＳＩチップ１０１とメモリチップ１０２との間を接続するマイクロバンプのそれぞれを模式的に示している。そして、これらの線の一部が断線しているように表記することで、マイクロバンプの一部に接続不良マイクロバンプが含まれていることを示している。
【００３７】
不良品は、メモリデータ用マイクロバンプ群の中に、１２９個以上の接続不良マイクロバンプが存在している状態、又はメモリデータ用マイクロバンプ群以外のマイクロバンプの中に接続不良のマイクロバンプが存在している状態のことをいう。この状態において、システムＬＳＩチップ１０１は、メモリチップ１０２を利用して、デジタルテレビ放送番組をデコードすることができない。
【００３８】
以下、集積回路１００の詳細について、図面を用いて説明する。
【００３９】
＜構成＞
図３は、メモリチップ１０２の主要なハードウエアの概要構成図である。
【００４０】
同図に示される通り、メモリチップ１０２は、バンクＡ３１０、バンクＢ３２０、バンクＣ３３０、バンクＤ３４０、ＩＯ回路３５０とから構成される。
【００４１】
バンクＡ３１０とバンクＢ３２０とバンクＣ３３０とバンクＤ３４０とは、それぞれ、５１２ビット（＝６４Ｂ）単位で読み出しと書き込みとが行われ、１２ビットのロウアドレスと８ビットのカラムアドレスとで指定される６４ＭＢの記憶領域を有するメモリであって、それぞれ、ＩＯ回路３５０に接続される。
【００４２】
ＩＯ回路３５０は、バンクＡ３１０とバンクＢ３２０とバンクＣ３３０とバンクＤ３４０とシステムＬＳＩチップ１０１とに接続され、バンクＡ３１０とバンクＢ３２０とバンクＣ３３０とバンクＤ３４０とのいずれかから読み出される５１２ビットのデータを外部に出力する機能と、外部から入力される５１２ビットのデータをバンクＡ３１０とバンクＢ３２０とバンクＣ３３０とバンクＤ３４０とのいずれかへ出力する機能とを有する。
【００４３】
図４は、システムＬＳＩチップ１０１内の各マスタが使用する論理アドレスとメモリチップ１０２における記憶領域を指す物理アドレスとの対応を示すアドレスの構成図である。システムＬＳＩチップ内の各マスタはメモリチップ１０２のロウやカラムなどの物理アドレスを意識せず使用できるように論理アドレスというアドレスを使う。本実施例では、１Ｂが１つのアドレスに対応する３２ビットの論理アドレスを使用している。
【００４４】
同図に示されるように、メモリチップ１０２の記憶領域に対応する論理アドレスは、６ビットの固定値領域４０１と２ビットのメモリチップ１０２のバンクアドレス領域４０２と８ビットのカラムアドレス領域４０３と１２ビットのロウアドレス領域４０４、及び４ビットの固定値領域４０５とから構成される。この中でバンクアドレス領域４０２と８ビットのカラムアドレス領域４０３と１２ビットのロウアドレス領域４０４とがメモリチップ１０２の物理アドレスとなっている。
【００４５】
バンクアドレス領域４０２は、メモリチップ１０２に含まれる、４つのバンク（バンクＡ３１０、バンクＢ３２０、バンクＣ３３０、バンクＤ３４０：図３参照）のうちのいずれであるかを示すアドレスを格納する領域である。
【００４６】
カラムアドレス領域４０３は、バンクにおけるカラムを指定するカラムアドレスを格納する領域である。
【００４７】
ロウアドレス領域４０４は、バンクにおけるロウを指定するロウアドレスを格納する領域である。
【００４８】
固定値領域４０１は、データの読み出し、書き込み単位が６４Ｂとなっていることに対応して、固定値"０ｘ００"と設定されている。これは論理アドレスがバイト単位のアドレッシングであることのためである。
【００４９】
固定値領域４０５は、固定値"０ｘ３"と設定されている。論理アドレスはシステム全体のアドレスマッピングとなっているため、外部メモリ以外の例えば内部メモリのアドレス等にも使用する。このため、マスタが外部メモリにアクセスする際には、その領域を指し示す０ｘ３を論理アドレスの先頭の固定値領域４０５に明示してアクセスする。
【００５０】
なお、論理アドレスから物理アドレス変換の変換方法は図４に限定されるわけではなく、メモリチップ１０２の仕様と各マスタのメモリアクセスパターンなどを考慮してメモリアクセスオーバヘッドがでないように最適化してもよい。
【００５１】
図５は、システムＬＳＩチップ１０１の主要なハードウエア構成要素を示す構成図である。
【００５２】
同図示される通り、システムＬＳＩチップ１０１は、第１マスタ５０１、第２マスタ５０２〜第ｎマスタ５０３、メモリアクセスコントローラ５１０、冗長救済回路５２０とから構成される。これらのうち、メモリアクセスコントローラ５１０は、さらに、第１マスタインターフェース５１１、第２マスタインターフェース５１２〜第ｎマスタインターフェース５１３、コマンドアービタ（command arbiter）５１６、データバッファ５１７、外部メモリ制御回路５１９とから構成される。
【００５３】
第１マスタ５０１は、メモリアクセスコントローラ５１０の第１マスタインターフェース５１１に接続されるプロセッサであって、メモリアクセスコントローラ５１０を介してメモリチップ１０２の記憶領域を利用する。この第１マスタ５０１は、メモリチップ１０２の記憶領域に記憶されているプログラムを実行することで、様々な機能を実現する。
【００５４】
第２マスタ５０２は、メモリアクセスコントローラ５１０の第２マスタインターフェース５１２に接続されるデコーダであって、プロセッサである第１マスタ５０１によって制御され、メモリアクセスコントローラ５１０を介してメモリチップ１０２の記憶領域を利用し、メモリチップ１０２の記憶領域に記憶されている、符号化された映像データを復号する機能を有する。
【００５５】
第ｎマスタ５０３は、メモリアクセスコントローラ５１０の第ｎマスタインターフェース５１３に接続されるエンコーダであって、プロセッサである第１マスタ５０１によって制御され、メモリアクセスコントローラ５１０を介してメモリチップ１０２の記憶領域を利用し、メモリチップ１０２の記憶領域に記憶されている、映像データを符号化する機能を有する。
【００５６】
冗長救済回路５２０は、外部メモリ制御回路５１９に接続され、内部にイーヒューズ（eFUSE）回路５２１を含み、集積回路１００の外部から、ＬＳＩテスタ等を用いてイーヒューズ回路５２１に情報が書き込まれることによって、接続不良となっているマイクロバンプを特定するマイクロバンプＩＤを記憶する機能を有する。
【００５７】
ここで、イーヒューズ回路５２１に情報を書き込むとは、イーヒューズ回路５２１に含まれる複数のイーヒューズのうち、書き込む情報に対応する特定のイーヒューズ群にエレクトロマイグレーション（electromigration）を発生させて、それらのイーヒューズ群を断線させることをいう。
【００５８】
また、記憶するマイクロバンプＩＤの対象となるマイクロバンプは、メモリデータ用マイクロバンプ群に限られ、メモリチップ１０２へ送信する物理アドレス、命令等を伝達するためのマイクロバンプ群を含まない。
【００５９】
第１マスタインターフェース５１１は、第１マスタ５０１とコマンドアービタ５１６とデータバッファ５１７とに接続され、内部に、第１マスタ５０１から送り出された、メモリチップ１０２の記憶領域を利用するためのコマンド（以下、「マスタからのメモリコマンド」と呼ぶ）を記憶するコマンドバッファを有し、第１マスタ５０１から送り出されたマスタからのメモリコマンドを受け付けて、コマンドバッファに一時的に記憶し、記憶しているマスタからのメモリコマンドをコマンドアービタ５１６に出力する機能と、データバッファ５１７から送り出された、メモリチップ１０２の記憶領域から読み出されたデータを受け付けて、第１マスタ５０１に出力する機能と、第１マスタ５０１から送り出された、メモリチップ１０２の領域へ書き込むデータを受け付けて、データバッファ５１７へ出力する機能とを有する。
【００６０】
ここで、マスタからのメモリコマンドは、読み出し又は書き込みのいずれかを示すアクセス種情報と、利用する記憶領域の開始アドレスを示す論理アドレスと、利用する記憶領域のビット幅を示すビット幅情報（バースト数）とを含む。
【００６１】
第２マスタインターフェース５１２は、第１マスタインターフェース５１１と同様の回路であって、第２マスタ５０２とコマンドアービタ５１６とデータバッファ５１７とに接続される。
【００６２】
第ｎマスタインターフェース５１３は、第１マスタインターフェース５１１、第２マスタインターフェース５１２と同様の回路であって、第ｎマスタ５０３とコマンドアービタ５１６とデータバッファ５１７とに接続される。
【００６３】
コマンドアービタ５１６は、第１マスタインターフェース５１１と第２マスタインターフェース５１２〜第ｎマスタインターフェース５１３と外部メモリ制御回路５１９とに接続され、複数のマスタインターフェースから送り出された、マスタからのメモリコマンドを受け付ける機能と、複数のマスタからのメモリコマンドを受け付けた場合に、予め定められた優先順位付与方法に基づいて、受け付けたマスタからのメモリコマンドのそれぞれに優先順位を付与する機能と、付与された優先順位が最も高いものから順に、外部メモリ制御回路５１９に送る機能とを有する。
【００６４】
データバッファ５１７は、第１マスタインターフェース５１１と第２マスタインターフェース５１２〜第ｎマスタインターフェース５１３と外部メモリ制御回路５１９とに接続され、第１マスタインターフェース５１１〜第ｎマスタインターフェース５１３からのメモリへ書き込むデータを受け付けて、外部メモリ制御回路５１９に送る機能と、外部メモリ制御回路５１９からの、メモリから読み出されたデータを受け付けて、第１マスタインターフェース５１１〜第ｎマスタインターフェース５１３のうちのいずれかに送る機能とを有する。
【００６５】
図６は、外部メモリ制御回路５１９の主要な機能構成を示す構成図である。
【００６６】
同図に示される通り、外部メモリ制御回路５１９は、通常用アドレス変換部６０１、救済用アドレス変換部６０２、セレクタ６０３、コマンドキュー（command queue）６０４、コマンド発行制御部６０５、タイミング管理部６０６、データ線冗長救済部６１１、データ並べ替え部６１２、属性付与部６１３、Ｒデータアラインメントバッファ（data alignment buffer）６１４、データ並べ替え部６１５、Ｗデータアラインメントバッファ６１６等から構成される。
【００６７】
通常用アドレス変換部６０１は、コマンドアービタ５１６とセレクタ６０３とに接続され、以下の２つの機能を有する。
【００６８】
機能１：コマンドアービタ５１６から送られてくるマスタからのコマンドに含まれるｍビットからなる記憶領域の開始アドレスを指す論理アドレスを、メモリチップ１０２における、バンクＡ３１０、バンクＢ３２０、バンクＣ３３０、バンクＤ３４０の４つのバンクからなる２５６ＭＢの記憶領域のうちのｍビットからなる記憶領域の開始アドレスを指す外部メモリの物理アドレスに変換する通常アドレス変換機能。
【００６９】
ここで、ｍビットからなる記憶領域とは、マスタからのコマンドに含まれるビット幅情報がｍビットを示す場合における記憶領域のビット幅のこと（バースト数×データ幅）である。
【００７０】
機能２：通常アドレス変換機能を利用して変換された物理アドレスを用いて、コマンドアービタ５１６から送られてくるマスタからのコマンドに含まれるメモリアクセス命令を、メモリチップ１０２が利用できる命令（以後、「メモリ命令」と呼ぶ。）に変換する命令変換機能。
【００７１】
ここで、メモリ命令とは、読み出し又は書き込みのいずれかを示すアクセス種情報と、利用する記憶領域の開始アドレスを示す物理アドレスとを含み、読み出しと書き込みとのビット幅は、５１２ビット（＝６４Ｂ）で固定されている。
【００７２】
図７（ａ）は、通常用アドレス変換部６０１に、マスタからのメモリコマンドが入力された場合に、通常用アドレス変換部６０１が、マスタからのメモリコマンドをメモリ命令に変換して出力し、その結果、メモリチップ１０２から、データが読み出されるときのタイミングチャートの一例である。ここでは、マスタからのメモリコマンドが、メモリチップ１０２から、"０ｘ３０００００００"となる論理アドレスを開始アドレスとする、連続する１９２Ｂのデータを読み出すコマンドの場合の例を示している。
【００７３】
通常用アドレス変換部６０１は、１９２Ｂのデータを読み出すマスタからのメモリコマンドを受けると、通常アドレス変換機能と命令変換機能とを利用して、バンクＡ３１０とバンクＢ３２０とバンクＣ３３０とにおいて、互いに同じロウアドレス"０ｘ０００"と互いに同じコラムアドレス"０ｘ００"とによって指される６４Ｂの記憶領域からデータを読み出す"ＲＤａ"メモリ命令と"ＲＤｂ"メモリ命令と"ＲＤｃ"メモリ命令との３つのメモリ命令を生成して出力する。
【００７４】
すると、メモリチップ１０２は、６４Ｂのデータからなる"ＤＴａ"をバンクＡ３１０から読み出し、６４Ｂからなる"ＤＴｂ"をバンクＢ３２０から読み出し、６４Ｂからなる"ＤＴｃ"をバンクＣ３３０から読み出して出力する。
【００７５】
図８（ａ）は、上記例における、"ＤＴａ"が格納されている領域と、"ＤＴｂ"が格納されている領域と"ＤＴｃ"が格納されている領域とを、模式的に示した模式図である。
【００７６】
同図に示される通り、上記例においては、"ＤＴａ"が格納されている領域の開始物理アドレスは、バンクＡ３１０のロウアドレス"０ｘ０００"とカラムアドレス"０ｘ００"となり、"ＤＴｂ"が格納されている領域の開始物理アドレスは、バンクＢ３２０のロウアドレス"０ｘ０００"とカラムアドレス"０ｘ００"となり、"ＤＴｃ"が格納されている領域の開始物理アドレスは、バンクＣ３３０のロウアドレス"０ｘ０００"とカラムアドレス"０ｘ００"となる。
【００７７】
再び図６に戻って、外部メモリ制御回路５１９の説明を続ける。
【００７８】
救済用アドレス変換部６０２は、コマンドアービタ５１６とセレクタ６０３とに接続され、以下の２つの機能を有する。
【００７９】
機能１：コマンドアービタ５１６から送られてくるマスタからのコマンドに含まれるｍビットからなる記憶領域の開始アドレスを指す論理アドレスを、メモリチップ１０２における、バンクＡ３１０、バンクＢ３２０、バンクＣ３３０の３つのバンクからなる１９２ＭＢの記憶領域のうちのｍビットからなる記憶領域の開始アドレスを指す物理アドレスと、メモリチップ１０２におけるバンクＤ３４０からなる６４ＭＢの記憶領域のうちのｋビットからなる記憶領域の開始アドレスを指す物理アドレスとに変換する救済アドレス変換機能。
【００８０】
ここで、ｍビットからなる記憶領域とｋビットからなる記憶領域との関係は、ｋビットからなる記憶領域が、（１）ｍビットからなる記憶領域のうち、バンクＡ３１０における記憶領域を指すロウアドレスとカラムアドレスとの組によって示されるバンクＤの記憶領域と、（２）ｍビットからなる記憶領域のうち、バンクＢ３２０における記憶領域を指すロウアドレスとカラムアドレスとの組によって示されるバンクＤの記憶領域と、（３）ｍビットからなる記憶領域のうち、バンクＣ３３０における記憶領域を指すロウアドレスとカラムアドレスとの組によって示されるバンクＤの記憶領域との３つの記憶領域を含む記憶領域となる関係となっている。
【００８１】
機能２：救済アドレス変換機能を利用して変換された物理アドレスを用いて、コマンドアービタ５１６から送られてくるマスタからのコマンドに含まれるメモリアクセス命令を、メモリチップ１０２が利用できるメモリ命令に変換する命令変換機能。
【００８２】
図７（ｂ）は、救済用アドレス変換部６０２に、マスタからのメモリコマンドが入力された場合に、救済用アドレス変換部６０２が、マスタからのメモリコマンドをメモリ命令に変換して出力し、その結果、メモリチップ１０２から、データが読み出されるときの、タイミングチャートの一例である。ここでは、マスタからのメモリコマンドが、メモリチップ１０２から、"０ｘ３０００００００"となる論理アドレスを開始アドレスとする、連続する１９２Ｂのデータを読み出すコマンドの場合の例を示している。
【００８３】
救済用アドレス変換部６０２は、１９２Ｂのデータを読み出すマスタからのメモリコマンドを受けると、救済アドレス変換機能と命令変換機能とを利用して、バンクＡ３１０とバンクＢ３２０とバンクＣ３３０とにおいて、互いに同じロウアドレス"０ｘ０００"と互いに同じカラムアドレス"０ｂ００"とで指される６４Ｂの記憶領域からデータを読み出す"ＲＤａ"メモリ命令と"ＲＤｂ"メモリ命令と"ＲＤｃ"メモリ命令との３つのメモリ命令と、バンクＤ３４０からデータを読み出す"ＲＤｄ"メモリ命令とを生成して出力する。ここで、 "ＲＤａ"メモリ命令と"ＲＤｂ"メモリ命令と"ＲＤｃ"メモリ命令とにおけるロウアドレスとカラムアドレスとの組が互いに同じものであるため、"ＲＤｄ"メモリ命令におけるロウアドレスとカラムアドレスとの組も、これら他のコマンドにおけるロウアドレスとカラムアドレスとの組と同じものとなる。
【００８４】
すると、メモリチップ１０２は、６４Ｂのデータからなる"ＤＴａ"をバンクＡ３１０から読み出し、６４Ｂからなる"ＤＴｂ"をバンクＢ３２０から読み出し、６４Ｂからなる"ＤＴｃ"をバンクＣ３３０から読み出し、６４Ｂのデータからなる"ＤＴｄ"をバンクＤ３４０から読み出して出力する。
【００８５】
図８（ｂ）は、上記例における、"ＤＴａ"が格納されている領域と"ＤＴｂ"が格納されている領域と"ＤＴｃ"が格納されている領域と"ＤＴｄ"が格納されている領域とを、模式的に示した模式図である。
【００８６】
同図に示される通り、上記例においては、"ＤＴａ"が格納されている領域の開始物理アドレスは、バンクＡ３１０のロウアドレス"０ｘ０００"とカラムアドレス"０ｘ００"となり、"ＤＴｂ"が格納されている領域の開始物理アドレスは、バンクＢ３２０のロウアドレス"０ｘ０００"とカラムアドレス"０ｘ００"となり、"ＤＴｃ"が格納されている領域の開始物理アドレスは、バンクＣ３３０のロウアドレス"０ｘ０００"とカラムアドレス"０ｘ００"となり、"ＤＴｄ"が格納されている領域の開始物理アドレスは、バンクＤ３４０のロウアドレス"０ｘ０００"とカラムアドレス"０ｘ００"となる。
【００８７】
この救済の時の論理アドレスと物理アドレスの変換は図４の変換ルールではなく以下のような変換ルールを使用する。バンクアドレスは論理アドレスを０ｘ００４０で割った時の商が３の倍数ならバンクＡ３１０，３の倍数＋１ならバンクＢ３２０，３の倍数＋２ならバンクＣ３３０とする。同様にカラムアドレスは０ｘ００８０で割ったときの商であり、ロウアドレスは０ｘ００８０×カラム数で割った商となる。
【００８８】
再び図６に戻って、外部メモリ制御回路５１９の説明を続ける。
【００８９】
セレクタ６０３は、通常用アドレス変換部６０１と救済用アドレス変換部６０２とコマンド発行制御部６０５と冗長救済回路５２０とに接続され、以下の機能を有する。
【００９０】
機能：冗長救済回路５２０に記憶されている、接続不良になっているマイクロバンプのマイクロバンプＩＤに基づいて、（１）接続不良となっているマイクロバンプが存在しない場合には、通常用アドレス変換部６０１から送られるメモリ命令を選択して、コマンドキュー６０４に出力し、（２）接続不良となっているマイクロバンプが存在する場合には、救済用アドレス変換部６０２から送られるメモリ命令を選択して、コマンドキュー６０４に出力する機能。
【００９１】
コマンドキュー６０４は、セレクタ６０３とコマンド発行制御部６０５とに接続され、セレクタ６０３から送り出されるメモリ命令を、コマンド発行制御部６０５に読み出されるまで一時的に記憶する機能を有する。
【００９２】
タイミング管理部６０６は、コマンド発行制御部６０５に接続され、一定の条件に基づいて、現在発行可能となるメモリ命令を特定するためのタイミング制約情報を、逐次生成して記憶する機能を有する。
【００９３】
コマンド発行制御部６０５は、コマンドキュー６０４とタイミング管理部６０６とメモリチップ１０２とに接続され、タイミング管理部６０６に記憶されているタイミング制約情報を参照して、コマンドキュー６０４に一時的に記憶されているメモリ命令の中から発行可能なメモリ命令を読み出して、読み出したメモリ命令を、メモリチップ１０２へアウトオブオーダ（out of order）で発行する機能を有する。
【００９４】
データ線冗長救済部６１１は、メモリチップ１０２とデータ並べ替え部６１２とデータ並べ替え部６１５と冗長救済回路５２０とに接続され、以下の４つの機能を有する。
【００９５】
機能１：メモリチップ１０２から読み出された６４Ｂの読み出しデータを受け取り、冗長救済回路４２０に記憶されている、接続不良になっているマイクロバンプのマイクロバンプＩＤに基づいて、接続不良となっているマイクロバンプが存在しない場合は、受け取った読み出しデータを、そのままデータ並べ替え部６１２へ出力する機能。
【００９６】
機能２：メモリチップ１０２から読み出された６４Ｂの読み出しデータを受け取り、冗長救済回路４２０に記憶されている、接続不良になっているマイクロバンプのマイクロバンプＩＤに基づいて、接続不良となっているマイクロバンプが存在する場合は、受け取った読み出しデータから、接続不良となっているマイクロバンプに対応する位置のビットを間引いて、間引いた読み出しデータを左詰めして、データ並べ替え部６１２へ出力する機能。
【００９７】
図９は、接続不良となっているマイクロバンプが存在する場合において、データ線冗長救済部６１１にメモリチップ１０２から読み出しデータが入力されたときの、データ線冗長救済部６１１への入力データと、データ線冗長救済部６１１からの出力データとの関係を示す模式図である。ここで、同図は、入力データである６４Ｂ（＝５１２ビット）のデータのうち、ｈビット目９０１、ｉビット目９０２、ｊビット目９０３、ｋビット目９０４、ｌビット目９０５、ｍビット目９０６、ｎビット目９０７が、接続不良となっているマイクロバンプに対応する位置のビットとなっている場合の例を示している。
【００９８】
同図に示されるように、データ線冗長救済部６１１は、入力データから、接続不良となっているマイクロバンプに対応する位置のビットを間引いて、間引いた読み出しデータを左詰めして出力する。
【００９９】
再び図６に戻って、データ線冗長救済部６１１の機能説明を続ける。
【０１００】
機能３：データ並べ替え部６１５から送られた６４Ｂのデータを受け取り、冗長救済回路５２０に記憶されている、接続不良になっているマイクロバンプのマイクロバンプＩＤに基づいて、接続不良となっているマイクロバンプが存在しない場合は、受け取ったデータを、そのままメモリチップ１０２へ出力する機能。
【０１０１】
機能４：データ並べ替え部６１５から送られた６４Ｂのデータを受け取り、冗長救済回路５２０に記憶されている、接続不良になっているマイクロバンプのマイクロバンプＩＤに基づいて、接続不良となっているマイクロバンプが存在する場合は、受け取ったデータに対して、接続不良となっているマイクロバンプに対応する位置に、その位置より上位ビット側が右シフトされるようにダミービット（例えば"０ｂ０"）を挿入して、メモリチップ１０２へ出力する機能。
【０１０２】
図１０は、接続不良となっているマイクロバンプが存在する場合において、データ線冗長救済部６１１にデータ並べ替え部６１５から読み出しデータが入力されたときの、データ線冗長救済部６１１への入力データと、データ線冗長救済部６１１からの出力データとの関係を示す図である。ここで、同図は、出力データである６４Ｂ（＝５１２ビット）のデータのうち、ｈビット目１００１、ｉビット目１００２、ｊビット目１００３、ｋビット目１００４、ｌビット目１００５、ｍビット目１００６、ｎビット目１００７が、接続不良となっているマイクロバンプに対応する位置のビットとなっている場合の例を示している。
【０１０３】
同図に示されるように、データ線冗長救済部６１１は、入力データから、接続不良となっているマイクロバンプに対応する位置に、その位置より上位ビット側が右シフトされるようにダミービットを挿入して、挿入したデータを出力する。
【０１０４】
再び図６に戻って、外部メモリ制御回路５１９の説明を続ける。
【０１０５】
データ並べ替え部６１２は、データ線冗長救済部６１１と属性付与部６１３とに接続され、以下の機能を有する。
【０１０６】
機能：コマンド発行制御部６０５がメモリ命令をアウトオブオーダ発行した場合において、データ線冗長救済部６１１から、アウトオブオーダで発行された命令に呼応してメモリチップ１０２から読み出されたデータが送られてきたときに、これらのデータを、インオーダ（in order）となるようにリオーダ（reorder）して、属性付与部６１３に出力する機能。
【０１０７】
属性付与部６１３は、データ並べ替え部６１２とＲデータアラインメントバッファ６１４とに接続され、データ並べ替え部６１２から送られる読み出しデータに、読み出し元となるマスタのＩＤを属性情報として付与して、Ｒデータアラインメントバッファ６１４に出力する機能を有する。
【０１０８】
Ｒデータアラインメントバッファ６１４は、属性付与部６１３とデータバッファ６１７と冗長救済回路６２０とに接続され、以下の５つの機能を有する。
【０１０９】
機能１：冗長救済回路６２０に記憶されている、接続不良になっているマイクロバンプのマイクロバンプＩＤに基づいて、接続不良となっているマイクロバンプが存在しない場合に、属性付与部６１３から送られる読み出しデータを、そのままデータバッファ５１７へ出力する機能。
【０１１０】
機能２：冗長救済回路５２０に記憶されている、接続不良になっているマイクロバンプのマイクロバンプＩＤに基づいて、接続不良となっているマイクロバンプが存在する場合に、属性付与部６１３から送られる読み出しデータを、一時的に記憶する機能。
【０１１１】
機能３：冗長救済回路６２０に記憶されている、接続不良になっているマイクロバンプのマイクロバンプＩＤに基づいて、接続不良となっているマイクロバンプがｋビット（ｋ＞０）存在する場合において、バンクＡ３１０に記憶されていた読み出しデータ（以後、「読み出しデータＡ」と呼ぶ。）が、属性付与部６１３から送られてきたときに、読み出しデータＡが記憶されていた記憶領域を指すロウアドレスとカラムアドレスとの組と同じロウアドレスとカラムアドレスとの組で指されるバンクＤの記憶領域に記憶されていた読み出しデータ（以後、「読み出しデータＤ１」と呼ぶ。）が入力されるまで待機し、読み出しデータＤ１が入力されると、読み出しデータＤ１の［０：ｋ］からなるビット列を、読み出しデータＡの［５１１−ｋ：５１１］に挿入することで読み出しデータＡ１を生成して、データバッファ５１７へ出力する機能。
【０１１２】
機能４：冗長救済回路６２０に記憶されている、接続不良になっているマイクロバンプのマイクロバンプＩＤに基づいて、接続不良となっているマイクロバンプがｋビット（ｋ＞０）存在する場合において、バンクＢ３２０に記憶されていた読み出しデータ（以後、「読み出しデータＢ」と呼ぶ。）が、属性付与部６１３から送られてきたときに、読み出しデータＢが記憶されていた記憶領域を指すロウアドレスとカラムアドレスとの組と同じロウアドレスとカラムアドレスとの組で指されるバンクＤの記憶領域に記憶されていた読み出しデータ（以後、「読み出しデータＤ２」と呼ぶ。）が入力されるまで待機し、読み出しデータＤ２が入力されると、読み出しデータＤ２の［１２８：１２８＋ｋ］からなるビット列を、読み出しデータＢの［５１１−ｋ：５１１］に挿入することで読み出しデータＢ１を生成して、データバッファ５１７へ出力する機能。
【０１１３】
機能５：冗長救済回路５２０に記憶されている、接続不良になっているマイクロバンプのマイクロバンプＩＤに基づいて、接続不良となっているマイクロバンプがｋビット（ｋ＞０）存在する場合において、バンクＣ３３０に記憶されていた読み出しデータ（以後、「読み出しデータＣ」と呼ぶ。）が、属性付与部６１３から送られてきたときに、読み出しデータＣが記憶されていた記憶領域を指すロウアドレスとカラムアドレスとの組と同じロウアドレスとカラムアドレスとの組で指されるバンクＤの記憶領域に記憶されていた読み出しデータ（以後、「読み出しデータＤ３」と呼ぶ。）が入力されるまで待機し、読み出しデータＤ３が入力されると、読み出しデータＤ３の［２５６：２５６＋ｋ］からなるビット列を、読み出しデータＣの［５１１−ｋ：５１１］に挿入することで読み出しデータＣ１を生成して、データバッファ５１７へ出力する機能。
【０１１４】
図１１は、接続不良となっているマイクロバンプがｋビット（ｋ＞０）存在する場合において、互いに同じロウアドレスと互いに同じカラムアドレスとの組によって指される、バンクＡ３１０の記憶領域から読み出された第１データと、バンクＢ３２０の記憶領域から読み出された第２データと、バンクＣ３３０の記憶領域から読み出された第３データと、バンクＤ３４０の記憶領域から読み出された第４データとが、Ｒデータアラインメントバッファ６１４に入力されたときに、Ｒデータアラインメントバッファ６１４が行う処理を模式的に示した模式図である。
【０１１５】
同図に示されるように、Ｒデータアラインメントバッファ６１４は、第１データの［５１１−ｋ：５１１］に、第４データの［０：ｋ］からなるビット列を挿入して出力し、第２データの［５１１−ｋ：５１１］に、第４データの［１２８：１２８＋ｋ］からなるビット列を挿入して出力し、第３データの［５１１−ｋ：５１１］に、第４データの［２５６：２５６＋ｋ］からなるビット列を挿入して出力する。
【０１１６】
再び図６に戻って、外部メモリ制御回路５１９の説明を続ける。
【０１１７】
Ｗデータアラインメントバッファ６１６は、データ並べ替え部６１５とデータバッファ５１７と冗長救済回路５２０とに接続され、以下の３つの機能を有する。
【０１１８】
機能１：冗長救済回路５２０に記憶されている、接続不良になっているマイクロバンプのマイクロバンプＩＤに基づいて、接続不良となっているマイクロバンプが存在しない場合に、データバッファ５１７から送られるデータを、そのままデータ並べ替え部６１５へ出力する機能。
【０１１９】
機能２：冗長救済回路５２０に記憶されている、接続不良になっているマイクロバンプのマイクロバンプＩＤに基づいて、接続不良となっているマイクロバンプが存在する場合に、データバッファ５１７から送られるデータを、一時的に記憶する機能。
【０１２０】
機能３：冗長救済回路５２０に記憶されている、接続不良になっているマイクロバンプのマイクロバンプＩＤに基づいて、接続不良となっているマイクロバンプがｋビット（ｋ＞０）存在する場合において、１つのマスタからのメモリコマンドに基づく、バンクＡ３１０に書き込むこととなる書き込みデータ（以下、「書き込みデータＡ」と呼ぶ。）、又は／及びバンクＢ３２０に書き込むこととなる書き込みデータ（以下、「書き込みデータＢ」と呼ぶ。）、又は／及びバンクＣ３３０に書き込むこととなる書き込みデータ（以下、「書き込みデータＣ」と呼ぶ。）が、データバッファ５１７から送られてきたときに、（１）これらの書き込みデータのうち、互いに同じロウアドレスと互いに同じカラムアドレスとによって指される記憶領域へ書き込まれることとなるデータの組のそれぞれについて、書き込みデータＡの［５１１−ｋ：５１１］からなるビット列を［０：ｋ］とし、書き込みデータＢの［５１１−ｋ：５１１］からなるビット列を［１２８：１２８＋ｋ］とし、書き込みデータＣの［５１１−ｋ：５１１］からなるビット列を［２５５：２５５＋ｋ］とする書き込みデータＤを生成し、（２）送られてきた全ての書き込みデータと、生成した全ての書き込みデータＤとをデータ並べ替え部６１５へ出力する機能。
【０１２１】
図１２は、接続不良となっているマイクロバンプがｋビット（ｋ＞０）存在する場合において、１つのマスタからのメモリコマンドに基づく、互いに同じロウアドレスと互いに同じカラムアドレスとの組によって指される、バンクＡ３１０の記憶領域へ書き込むこととなる第５データと、バンクＢ３２０の記憶領域へ書き込むこととなる第６データと、バンクＣ３３０の記憶領域へ書き込むこととなる第７データとが入力されたときに、Ｗデータアラインメントバッファ６１６が行う処理を模式的に示した模式図である。
【０１２２】
同図に示されるように、Ｗデータアラインメントバッファ６１６は、第５データの［５１１−ｋ：５１１］からなるビット列を、［０：ｋ］とし、第６データの［５１１−ｋ：５１１］からなるビット列を、［１２８：１２８＋ｋ］とし、第７データの［５１１−ｋ：５１１］からなるビット列を、［２５６：２５６＋ｋ］とする第８データを生成して、第５データ、第６データ、第７データ、及び第８データを出力する。
【０１２３】
再び図６に戻って、外部メモリ制御回路５１９の説明を続ける。
【０１２４】
データ並べ替え部６１５は、Ｗデータアラインメントバッファ６１６とデータ線冗長救済部６１１とに接続され、以下の機能を有する。
【０１２５】
機能：コマンド発行制御部６０５がメモリ命令をアウトオブオーダ発行した場合において、Ｗデータアラインメントバッファ６１６からアウトオブオーダで発行された命令に対応してメモリチップ１０２へ書き込まれることとなるデータが送られてきたときに、これらのデータを、対応する命令の発行順となるようにリオーダして、データ線冗長救済部６１１に出力する機能。
【０１２６】
以下、図面を参照しながら、上記構成の集積回路１００の行う動作について説明する。
【０１２７】
＜動作＞
ここでは、集積回路１００の行う動作のうち、特徴的な動作である、メモリコマンド調停処理とメモリチップ制御処理とについて説明する。
【０１２８】
＜メモリコマンド調停処理＞
メモリコマンド調停処理は、メモリアクセスコントローラ５１０が行う処理であって、第１マスタ５０１〜第ｎマスタ５０３から送られてくるマスタからのメモリコマンドを受け付け、受け付けたマスタからのメモリコマンドを調停する処理のことである。
【０１２９】
以下、メモリコマンド調停処理の説明を簡略化するために、第１マスタ５０１を第１マスタ５０１〜第ｎマスタ５０３の代表として用い、第１マスタインターフェース５１１を第１マスタインターフェース５１１〜第ｎマスタインターフェース５１３の代表として用いて説明する。
【０１３０】
図１３は、メモリコマンド調停処理のフローチャートである。
【０１３１】
メモリコマンド調停処理は、メモリアクセスコントローラ５１０が起動されることで開始される。
【０１３２】
メモリコマンド調停処理が開始されると、第１マスタインターフェース５１１は、第１マスタ５０１から、マスタからのメモリコマンドが送られてくるまで待機し（ステップＳ１３００：Ｎｏを繰り返す）、マスタからのメモリコマンドが送られてくると（ステップＳ１３００：Ｙｅｓ）、内部のコマンドバッファに、マスタからのメモリコマンドを記憶する領域が空いているか否かを調べる（ステップＳ１３０５）。
【０１３３】
ステップＳ１３０５の処理において、マスタからのメモリコマンドを記憶する領域が空いていない場合に（ステップＳ１３０５：Ｎｏ）、第１マスタインターフェース５１１は、内部のコマンドバッファに、マスタからのメモリコマンドを記憶する領域ができるまで待機し（ステップＳ１３０５：Ｎｏを繰り返す）、マスタからのメモリコマンドを記憶する領域が空いている場合に（ステップＳ１３０５：Ｙｅｓ）、第１マスタインターフェース５１１は、マスタからのメモリコマンドを受け付けて（ステップＳ１３１０）、内部のコマンドバッファに一時的に記憶する。
【０１３４】
マスタからのメモリコマンドを記憶すると、第１マスタインターフェース５１１は、記憶したマスタからのメモリコマンドが、メモリチップ１０２へのライトコマンド（書き込み命令）であるか否かを調べる（ステップＳ１３１５）。
【０１３５】
ステップＳ１３１５の処理において、メモリチップ１０２へのライトコマンドであった場合には（ステップＳ１３１５：Ｙｅｓ）、第１マスタインターフェース５１１は、第１マスタ５０１から送られてきている、メモリチップ１０２の領域への書き込みデータを受け付けて（ステップＳ１３２０）、内部のコマンドバッファに一時的に記憶しているマスタからのメモリコマンドをコマンドアービタ５１６に出力して、受け付けた書き込みデータをデータバッファ５１７へ出力する（ステップＳ１３２５）。
【０１３６】
ステップＳ１３１５の処理において、メモリチップ１０２へのライトコマンドでなかった場合、すなわち、メモリチップ１０２へのリードコマンドであった場合には（ステップＳ１３１５：Ｎｏ）、第１マスタインターフェース５１１は、内部のコマンドバッファに一時的に記憶しているマスタからのメモリコマンドをコマンドアービタ５１６に出力する（ステップＳ１３３０）。
【０１３７】
ステップＳ１３２５の処理が終了した場合、又はステップＳ１３３０の処理が終了した場合には、コマンドアービタ５１６は、第１マスタインターフェース５１１から送られてくるマスタからのメモリコマンドを受け付ける。
【０１３８】
コマンドアービタ５１６は、第１マスタインターフェース５１１からだけでなく、第２マスタインターフェース５１２〜第ｎマスタインターフェース５１３からも並行して送られてくるマスタからのメモリコマンドを受け付ける。
【０１３９】
コマンドアービタ５１６は、並行して受け付けたマスタからのメモリコマンドについて、受け付けたマスタからのメモリコマンドのそれぞれに優先順位を付与することで、マスタからのメモリコマンドの調停を行い（ステップＳ１３３５）、付与された優先順位が最も高いものから順に、外部メモリ制御回路５１９へ出力する。
【０１４０】
外部メモリ制御回路５１９は、コマンドアービタ５１６から、マスタからのメモリコマンドが入力されると、そのコマンドに応じた処理を行う。外部メモリ制御回路５１９の行う処理については、後程＜メモリチップ制御処理＞の項目の部分で、詳細に説明する。
【０１４１】
コマンドアービタ５１６は、外部メモリ制御回路５１９に、マスタからのメモリコマンドを出力すると、このコマンドに応じて外部メモリ制御回路５１９が行う処理が終了するのを待つ（ステップＳ１３４０：Ｎｏを繰り返す）。
【０１４２】
ステップＳ１３４０の処理において、出力したマスタからのメモリコマンドに応じて外部メモリ制御回路５１９が行う処理が終了したことを検知すると（ステップＳ１３４０：Ｙｅｓ）、その出力したマスタからのメモリコマンドがライトコマンドであったか否かを調べる（ステップＳ１３４５）。
【０１４３】
ステップＳ１３４５の処理において、マスタからのメモリコマンドがライトコマンドであった場合には（ステップＳ１３４５：Ｙｅｓ）、コマンドアービタ５１６は、そのマスタからのメモリコマンドを発行したマスタに、対応するマスタインターフェースを介して、ライトコマンドが完了した旨の信号であるライトダーン信号を出力する（ステップＳ１３５０）。
【０１４４】
ステップＳ１３４５の処理において、マスタからのメモリコマンドがライトコマンドでなかった場合、すなわち、リードコマンドであった場合には（ステップＳ１３４５：Ｎｏ）、データバッファ５１７は、外部メモリ制御回路５１９から送られてきている、メモリチップ１０２の領域から読み出された読み出しデータを受け付けて、そのマスタからのメモリコマンドを発行したマスタに、対応するマスタインターフェースを介して、受け付けた読み出しデータを出力する（ステップＳ１３５５）。
【０１４５】
ステップＳ１３５０の処理が終了した場合、又はステップＳ１３５５の処理が終了した場合には、メモリアクセスコントローラ５１０は、再びステップＳ１３００の処理に戻って、ステップＳ１３００以下の処理を繰り返す。
【０１４６】
＜メモリチップ制御処理＞
メモリチップ制御処理は、外部メモリ制御回路５１９が行う処理であって、コマンドアービタ５１６から、マスタからのメモリコマンドが送られてきた場合に、そのマスタからのメモリコマンドを、メモリチップ１０２が利用できるメモリ命令に変換して、変換したメモリ命令をメモリチップ１０２に発行することで、メモリチップ１０２へのデータの書き込み、又はメモリチップ１０２からのデータの読み出しを行う処理のことである。
【０１４７】
図１４と図１５とは、メモリチップ制御処理のフローチャートである。
【０１４８】
メモリチップ制御処理は、外部メモリ制御回路５１９が起動されることで開始される。
【０１４９】
メモリチップ制御処理が開始されると、外部メモリ制御回路５１９は、コマンドアービタ５１６から、マスタからのメモリコマンドが送られてくるまで待機し（ステップＳ１４００：Ｎｏを繰り返す）、マスタからのメモリコマンドが送られてくると（ステップＳ１４００：Ｙｅｓ）、コマンドキュー６０４に、新たなメモリ命令を一時的に記憶する領域が空いているか否かを調べる（ステップＳ１４１０）。
【０１５０】
ステップＳ１４１０の処理において、コマンドキュー６０４に、新たなメモリ命令を一時的に記憶する領域が空いていない場合に（ステップＳ１４１０：Ｎｏ）、外部メモリ制御回路５１９は、コマンドキュー６０４に、新たなメモリ命令を一時的に記憶する領域が空くまで待機し（ステップＳ１４００：Ｎｏを繰り返す）、コマンドキュー６０４に、新たなメモリ命令を一時的に記憶する領域が空いている場合には（ステップＳ１４１０：Ｙｅｓ）、（１）通常用アドレス変換部６０１は、コマンドアービタ５１６から送られてくるマスタからのコマンドに含まれるｍビットからなる記憶領域を指す論理アドレスを、メモリチップ１０２における、バンクＡ３１０、バンクＢ３２０、バンクＣ３３０、バンクＤ３４０の４つのバンクからなる２５６ＭＢの記憶領域のうちのｍビットからなる記憶領域を指す物理アドレスに変換し、変換した物理アドレスを利用して、コマンドアービタ５１６から送られてくるマスタからのコマンドに含まれるメモリアクセス命令を、メモリチップ１０２が利用できるメモリ命令に変換して、セレクタ６０３に出力し（ステップＳ１４２０）、（２）救済用アドレス変換部６０２は、コマンドアービタ５１６から送られてくるマスタからのコマンドに含まれるｍビットからなる記憶領域を指す論理アドレスを、メモリチップ１０２における、バンクＡ３１０、バンクＢ３２０、バンクＣ３３０の３つのバンクからなる１９２ＭＢの記憶領域のうちのｍビットからなる記憶領域を指す物理アドレスと、メモリチップ１０２におけるバンクＤ３４０からなる６４ＭＢの記憶領域のうちのｋビットからなる記憶領域を指す物理アドレスとに変換し、変換した物理アドレスを利用して、コマンドアービタ５１６から送られてくるマスタからのコマンドに含まれるメモリアクセス命令を、メモリチップ１０２が利用できるメモリ命令に変換して、セレクタ６０３に出力する（ステップＳ１４３０）。
【０１５１】
セレクタ６０３は、通常用アドレス変換部６０１からメモリ命令を受け取り、救済用アドレス変換部６０２からメモリ命令を受け取ると、冗長救済回路５２０に記憶されている、接続不良になっているマイクロバンプのマイクロバンプＩＤに基づいて、接続不良となっているマイクロバンプが存在するか否かを調べる（ステップＳ１４４０）。
【０１５２】
ステップＳ１４４０の処理において、接続不良となっているマイクロバンプが存在する場合に（ステップＳ１４４０：Ｙｅｓ）、セレクタ６０３は、救済用アドレス変換部６０２によって生成されたメモリ命令を選択してコマンドキュー６０４に出力する（ステップＳ１４５０）。
【０１５３】
ステップＳ１４４０の処理において、接続不良となっているマイクロバンプが存在しない場合に（ステップＳ１４４０：Ｎｏ）、セレクタ６０３は、通常用アドレス変換部６０１によって生成されたメモリ命令を選択してコマンドキュー６０４に出力する（ステップＳ１４６０）。
【０１５４】
ステップＳ１４５０の処理が終了した場合、又はステップＳ１４６０の処理が終了した場合に、コマンドキュー６０４は、入力されたメモリ命令を一時的に記憶する（ステップＳ１４７０）。
【０１５５】
コマンドキュー６０４がメモリ命令を一時的に記憶すると、コマンド発行制御部６０５は、タイミング管理部６０６に記憶されているタイミング制約情報を参照して、コマンドキュー６０４に一時的に記憶されているメモリ命令の中に、発行可能なメモリ命令が存在するか否かを調べる（ステップＳ１４８０）。
【０１５６】
ステップＳ１４８０の処理において、発行可能なメモリ命令が存在しない場合に（ステップＳ１４８０：Ｎｏ）、コマンド発行制御部６０５は、発行可能なメモリ命令が存在するようになるまで待機する（ステップＳ１４８０：Ｎｏの処理を繰り返す）。
【０１５７】
ステップＳ１４８０の処理において、発行可能なメモリ命令が存在する場合に（ステップＳ１４８０：Ｙｅｓ）、コマンド発行制御部６０５は、その発行可能なメモリ命令が、メモリチップ１０２へのライト命令（書き込み命令）であるか否かを調べる（ステップＳ１５００）。
【０１５８】
ステップＳ１５００の処理において、ライト命令であった場合に（ステップＳ１５００：Ｙｅｓ）、Ｗデータアラインメントバッファ６１６は、データバッファ５１７から送られる、メモリチップ１０２への書き込む書き込みデータを受け取る（ステップＳ１５０５）。
【０１５９】
Ｗデータアラインメントバッファ６１６は、書き込みデータを受け取ると、冗長救済回路５２０に記憶されている、接続不良になっているマイクロバンプのマイクロバンプＩＤに基づいて、接続不良となっているマイクロバンプが存在するか否かを調べる（ステップＳ１５１０）。
【０１６０】
ステップＳ１５１０の処理において、接続不良となっているマイクロバンプが存在する場合に（ステップＳ１５１０：Ｙｅｓ）、Ｗデータアラインメントバッファ６１６は、接続不良となっているマイクロバンプの数をｋビット（ｋ＞０）とすると、１つのマスタからのメモリコマンドに基づく、バンクＡ３１０に書き込むこととなる書き込みデータＡ、又は／及びバンクＢ３２０に書き込むこととなる書き込みデータＢ、又は／及びバンクＣ３３０に書き込むこととなる書き込みデータＣが、データバッファ５１７から送られてくるまで書き込みデータを一時的に記憶し、（１）これらの書き込みデータのうち、互いに同じロウアドレスと互いに同じカラムアドレスとによって指される記憶領域へ書き込まれることとなるデータの組のそれぞれについて、書き込みデータＡの［５１１−ｋ：５１１］からなるビット列を［０：ｋ］とし、書き込みデータＢの［５１１−ｋ：５１１］からなるビット列を［１２８：１２８＋ｋ］とし、書き込みデータＣの［５１１−ｋ：５１１］からなるビット列を［２５５：２５５＋ｋ］とする書き込みデータＤを生成し、（２）送られてきた全ての書き込みデータと、生成した全ての書き込みデータＤとをデータ並べ替え部６１５へ出力する（ステップＳ１５１５）。
【０１６１】
データ並べ替え部６１５は、Ｗデータアラインメントバッファ６１６から書き込みデータが入力されると、必要に応じて書き込みデータの順番を並べ替えて、データ線冗長救済部６１１へ出力する（ステップＳ１５２０）。
【０１６２】
データ線冗長救済部６１１は、データ並べ替え部６１５から書き込みデータが入力されると、接続不良となっているマイクロバンプが存在するので、冗長救済回路５２０に記憶されている、接続不良になっているマイクロバンプのマイクロバンプＩＤに基づいて、データ並べ替え部６１５から送られた書き込みデータに対して、接続不良となっているマイクロバンプに対応する位置に、その位置より上位ビット側が右シフトされるようにダミービット（例えば"０ｂ０"）を挿入する（ステップＳ１５２５）。
【０１６３】
ステップＳ１５１０の処理において、接続不良となっているマイクロバンプが存在しない場合に（ステップＳ１５１０：Ｎｏ）、Ｗデータアラインメントバッファ６１６は、データバッファ５１７から送られるデータを、そのままデータ並べ替え部６１５へ出力し、データ並べ替え部６１５は、Ｗデータアラインメントバッファ６１６から書き込みデータが入力されると、必要に応じて書き込みデータの順番を並べ替えて、データ線冗長救済部６１１へ出力し、データ線冗長救済部６１１は、接続不良となっているマイクロバンプが存在しないので、データ並べ替え部６１５から送られた書き込みデータに、ダミービットの挿入は行わない（ステップＳ１５３０）。
【０１６４】
ステップＳ１５２５の処理が終了した場合、又はステップＳ１５３０の処理が終了した場合に、コマンド発行制御部６０５は、メモリチップ１０２へのライト命令を発行し（ステップＳ１５３５）、データ線冗長救済部６１１は、メモリチップ１０２へ書き込みデータを出力する（ステップＳ１５４０）。
【０１６５】
ステップＳ１５００の処理において、ライト命令でなかった場合、すなわちリード命令であった場合に（ステップＳ１５００：Ｎｏ）、コマンド発行制御部６０５は、メモリチップ１０２へのリード命令を発行する（ステップＳ１５５５）。
【０１６６】
すると、メモリチップ１０２は、そのリード命令に従って読み出しデータを読み出して、データ線冗長救済部６１１に出力し、データ線冗長救済部６１１は、メモリチップ１０２から読み出された読み出しデータを受け取る（ステップＳ１５６０）。
【０１６７】
データ線冗長救済部６１１は、メモリチップ１０２から読み出された読み出しデータを受け取ると、冗長救済回路５２０に記憶されている、接続不良になっているマイクロバンプのマイクロバンプＩＤに基づいて、接続不良となっているマイクロバンプが存在するか否かを調べる（ステップＳ１５６５）。
【０１６８】
ステップＳ１５６５の処理において、接続不良となっているマイクロバンプが存在する場合には（ステップＳ１５６５：Ｙｅｓ）、データ線冗長救済部６１１は、冗長救済回路４２０に記憶されている、接続不良になっているマイクロバンプのマイクロバンプＩＤに基づいて、受け取った読み出しデータから、接続不良となっているマイクロバンプに対応する位置のビットを間引いて、間引いた読み出しデータを左詰めして、データ並べ替え部６１２へ出力する（ステップＳ１５７０）。
【０１６９】
データ並べ替え部６１２は、データ線冗長救済部６１１から読み出しデータが入力されると、必要に応じて読み出しデータの順番を並べ替えて、属性付与部６１３へ出力し（ステップＳ１５７５）、属性付与部６１３は、データ並べ替え部６１２から送られる読み出しデータに、読み出し元となるマスタのＩＤを属性情報として付与して、Ｒデータアラインメントバッファ６１４に出力する。
【０１７０】
データ並べ替え部６１２から読み出しデータが入力されると、Ｒデータアラインメントバッファ６１４は、接続不良となっているマイクロバンプが存在するので、接続不良となっているマイクロバンプの数をｋビット（ｋ＞０）とすると、（１）バンクＡ３１０に記憶されていた読み出しデータＡが、属性付与部６１３から送られてきたときに、読み出しデータＡが記憶されていた記憶領域を指すロウアドレスとカラムアドレスとの組と同じロウアドレスとカラムアドレスとの組で指されるバンクＤの記憶領域に記憶されていた読み出しデータ（以後、「読み出しデータＤ１」と呼ぶ。）が入力されるまで待機し、読み出しデータＤ１が入力されると、読み出しデータＤ１の［０：ｋ］からなるビット列を、読み出しデータＡの［５１１−ｋ：５１１］に挿入することで読み出しデータＡ１を生成して、データバッファ５１７へ出力し、（２）バンクＢ３２０に記憶されていた読み出しデータＢが、属性付与部６１３から送られてきたときに、読み出しデータＢが記憶されていた記憶領域を指すロウアドレスとカラムアドレスとの組と同じロウアドレスとカラムアドレスとの組で指されるバンクＤの記憶領域に記憶されていた読み出しデータ（以後、「読み出しデータＤ２」と呼ぶ。）が入力されるまで待機し、読み出しデータＤ２が入力されると、読み出しデータＤ２の［１２８：１２８＋ｋ］からなるビット列を、読み出しデータＢの［５１１−ｋ：５１１］に挿入することで読み出しデータＢ１を生成して、データバッファ５１７へ出力し、（３）バンクＣ３３０に記憶されていた読み出しデータＣが、属性付与部６１３から送られてきたときに、読み出しデータＣが記憶されていた記憶領域を指すロウアドレスとカラムアドレスとの組と同じロウアドレスとカラムアドレスとの組で指されるバンクＤの記憶領域に記憶されていた読み出しデータ（以後、「読み出しデータＤ３」と呼ぶ。）が入力されるまで待機し、読み出しデータＤ３が入力されると、読み出しデータＤ３の［２５６：２５６＋ｋ］からなるビット列を、読み出しデータＣの［５１１−ｋ：５１１］に挿入することで読み出しデータＣ１を生成して、データバッファ５１７へ出力する（ステップＳ１５８０）。
【０１７１】
ステップＳ１５６５の処理において、接続不良となっているマイクロバンプが存在しない場合には（ステップＳ１５６５：Ｎｏ）、データ線冗長救済部６１１は、受け取った読み出しデータを、そのままデータ並べ替え部６１２へ出力し、データ並べ替え部６１２は、受け取った読み出しデータを、必要に応じて読み出しデータの順番を並べ替えて、属性付与部６１３へ出力し、属性付与部６１３は、受け取った読み出しデータに、読み出し元となるマスタのＩＤを属性情報として付与して、Ｒデータアラインメントバッファ６１４に出力する（ステップＳ１５８５）。
【０１７２】
属性付与部６１３から読み出しデータが入力されると、Ｒデータアラインメントバッファ６１４は、接続不良となっているマイクロバンプが存在しないので、入力された読み出しデータを、そのままデータバッファ５１７へ出力する（ステップＳ１５９０）。
【０１７３】
ステップＳ１５４０の処理が終了した場合、ステップＳ１５８０の処理が終了した場合、又はステップＳ１５９０の処理が終了した場合には、外部メモリ制御回路５１９は、再びステップＳ１４００の処理に戻って、ステップＳ１４００以下の処理を繰り返す。
【０１７４】
以下、集積回路１００について考察する。
【０１７５】
＜考察１＞
上記集積回路１００によると、接続不良マイクロバンプが存在しない場合には、システムＬＳＩチップ１０１に含まれる各マスタは、バンクＡ３１０、バンクＢ３２０、バンクＣ３３０、バンクＤ３４０からなる２５６ＭＢの記憶領域を利用する。そして、集積回路１００は、高機能向け良品として動作する。
【０１７６】
また、もしも、メモリデータ用マイクロバンプ群の中に、１２８個以下の接続不良マイクロバンプが存在してしまっている場合であっても、システムＬＳＩチップ１０１に含まれる各マスタは、バンクＡ３１０、バンクＢ３２０、バンクＣ３３０からなる１９２ＭＢの記憶領域を利用することができる。そして、この場合、バンクＤ３４０からなる６４ＭＢの記憶領域は、バンクＡ３１０、バンクＢ３２０、バンクＣ３３０からなる１９２ＭＢの記憶領域のうち、接続不良マイクロバンプの存在によって、アクセス不能となっている記憶領域を救済するために利用される。但し、この場合には、接続不良マイクロバンプが存在しない場合に比べて、利用するメモリ領域量に対する、外部メモリ制御回路５１９の発行するメモリ命令の数の割合が多くなってしまうため、接続不良マイクロバンプが存在しない場合に比べて、システムＬＳＩチップ１０１に含まれる各マスタによる、メモリチップ１０２の利用効率が低下してしまうこととなる。そして、利用する記憶領域も少なくなってしまうこととなる。しかしながら、集積回路１００は普及向け良品として動作する。
【０１７７】
これに対して、従来の、メモリアクセスコントローラ５１０を備えることのないロジックチップとメモリチップとが、マイクロバンプを介して互いに接続されてなる集積回路では、接続不良マイクロバンプが１つでも存在してしまうと、この従来の集積回路は正しく動作することができなくなってしまうため、不良品となってしまう。
【０１７８】
従って、集積回路１００は、従来の集積回路と比べて、マイクロバンプの接続不良に起因する不良品の発生頻度が低下することとなる。
【０１７９】
以下、上述の集積回路１００を製造する製造方法について、図面を用いて説明する。
【０１８０】
＜製造方法＞
図１６と図１７とは、集積回路１００の製造方法のフローチャートである。
【０１８１】
集積回路１００の製造は、まず、集積回路１００の開発が着手されることで開始される。
【０１８２】
集積回路１００の開発が着手されると、最初に、集積回路１００の機能仕様設計が行われ（ステップＳ１６００）、メモリ構成が決定される（ステップＳ１６１０）。
【０１８３】
機能仕様設計においてなされた、集積回路１００のコスト、歩留まり等の試算に基づいて、接続不良マイクロバンプが発生してしまった場合に普及向け良品として救済することができる、接続不良マイクロバンプの最大ビット数（以下、「最大救済ビット数」と呼ぶ。）を決定する（ステップＳ１６２０）。
【０１８４】
最大救済ビット数を決定すると、高機能向け良品として動作する場合における、各マスタからのメモリチップ１０２へのメモリ帯域と、普及向け良品として動作する場合における、各マスタからのメモリチップ１０２へのメモリ帯域との見積もりを行い（ステップＳ１６３０）、高機能向け良品として動作する場合におけるメモリマップと、普及向け良品として動作する場合におけるメモリマップとを決定する（ステップＳ１６４０）。ここで、メモリマップの決定とは、マスタ毎に、利用するメモリ空間（＝論理アドレス空間）を決定することをいう。
【０１８５】
メモリマップを決定すると、メモリチップ１０２へのメモリ帯域と、メモリチップ１０２のメモリ容量との双方が、ステップＳ１６１０の処理において決定されたメモリ構成の要件を満たしているか否かを調べる（ステップＳ１６５０）。
【０１８６】
ステップＳ１６５０の処理において、メモリ構成の要件を満たしていない場合には（ステップＳ１６５０：Ｎｏ）、メモリ構成の要件を満たすようになるまで、ステップＳ１６３０の処理〜ステップＳ１６５０の処理までを繰り返し行う。メモリ構成を満たしていない程度によっては、ステップＳ１６００の処理、又はステップＳ１６１０の処理まで戻ることもある。
【０１８７】
ステップＳ１６５０の処理において、メモリ構成の要件を満たしている場合には（ステップＳ１６５０：Ｙｅｓ）、システムＬＳＩチップ１０１の物理設計を行い、システムＬＳＩチップ１０１を製造し（ステップＳ１６６０）、メモリチップ１０２を購入する（若しくは、製造する）。
【０１８８】
そして、製造したシステムＬＳＩ１０１のうちの良品と、購入した（若しくは、製造した）メモリチップ１０２のうちの良品とを積層して集積回路１００を組み立てる（ステップＳ１６７０）。
【０１８９】
その後、組み立てた集積回路１００について、ＬＳＩテスタを用いて、マイクロバンプの中に接合不良となっているものがあるか否かを調べるためのテストを行う（ステップＳ１６８０）。ここで、このテストは、システムＬＳＩチップ１０１からメモリチップ１０２へのデータ読み出し処理命令群、又はデータの書き込み処理命令群を含むテストベクトルを、ＬＳＩテスタを用いて集積回路１００に実行させることで行われる。
【０１９０】
そして、テスト結果を解析して、メモリデータ用マイクロバンプ群以外のマイクロバンプの中に接続不良となっているものがあるか否かを調べる（ステップＳ１７００）。
【０１９１】
ステップＳ１７００の処理において、接続不良となっているマイクロバンプが存在しない場合に（ステップＳ１７００：Ｙｅｓ）、さらに、テスト結果を解析して、マイクロバンプ群の中に接続不良となっているマイクロバンプがあるか否かを調べる（ステップＳ１７１０）。
【０１９２】
ステップＳ１７１０の処理において、接続不良となっているマイクロバンプが存在する場合に（ステップＳ１７１０：Ｙｅｓ）、さらに、接続不良となっているマイクロバンプの数が、最大救済ビット数以下か否かを調べる（ステップＳ１７２０）。
【０１９３】
ステップＳ１７２０の処理において、接続不良となっているマイクロバンプの数が、最大救済ビット数以下の場合に（ステップＳ１７２０：Ｙｅｓ）、イーヒューズ回路５２１に、ＬＳＩテスタを用いて、接続不良となっているマイクロバンプのマイクロバンプＩＤを記憶させて（ステップＳ１７２０）、集積回路１００を、７ＧＢ／ｓのメモリ帯域幅が確保されている普及機能向け良品に選定する（ステップＳ１７４０）。
【０１９４】
ステップＳ１７００の処理において、接続不良となっているマイクロバンプが存在する場合（ステップＳ１７００：Ｎｏ）、又は、ステップＳ１７２０の処理において、接続不良となっているマイクロバンプの数が、最大救済ビット数より多い場合に（ステップＳ１７２０：Ｎｏ）、集積回路１００を不良品に選定する（ステップＳ１７５０）。
【０１９５】
ステップＳ１７１０の処理において、接続不良となっているマイクロバンプが存在しない場合に（ステップＳ１７１０：Ｎｏ）、イーヒューズ回路５２１に情報を記憶させることなく（ステップＳ１７６０）、１０ＧＢ／ｓのメモリ帯域幅が確保されている高機能向け良品として選定する（ステップＳ１７７０）。
【０１９６】
ステップＳ１７４０の処理が終了した場合、ステップＳ１７５０の処理が終了した場合、又はステップＳ１７７０の処理が終了した場合に、集積回路１００の製造は終了する。
【０１９７】
＜考察２＞
普及機能向け良品に選定された集積回路１００には、メモリデータ用マイクロバンプ群の中に接続不良となっているマイクロバンプが存在している。このため、メモリチップ１０２から読み出されたデータのうちの一部のデータを有効に利用することができない。従って、メモリチップ１０２から一定量の有効なデータを読み出すためには、普及機能向け良品に選定された集積回路１００は、高機能向け良品に選択された集積回路１００（すなわち、接続不良となっているマイクロバンプが存在していない場合の集積回路１００）に比べて、メモリチップ１０２からのデータの読み出し回数が多くなる。
【０１９８】
このため、メモリチップ１０２からデータを読み出す処理を含む互いに同様の処理を、普及機能向け良品に選定された集積回路１００と高機能向け良品に選定された集積回路１００とが実行する場合には、普及機能向け良品に選定された集積回路１００においてメモリチップ１０２が消費する消費電流量の方が、高機能向け良品に選定された集積回路１００においてメモリチップ１０２が消費する消費電流量よりも大きくなる。
【０１９９】
また、一般に、メモリは、データを読み出す場合における消費電流の時間変動パターンとして、特徴的なピークを含むパターンを示すことが知られている。
【０２００】
これは、一般に、メモリがデータを読み出す一連の動作において、例えば、ビットラインにプリチャージするプリチャージ期間、複数のセンスアンプを並列動作させるセンスアンプ動作期間等といった、他の期間に対して比較的大きな電流が流れる特徴的な期間が存在することに起因している。
【０２０１】
従って、メモリがデータを読み出す場合の消費電流の時間変動パターンとして現れる、上述のような特徴的なピークを含むパターンの回数を調べることで、メモリによるデータの読み出し回数を推定できる。
【０２０２】
このことを利用して、所定の処理を行う集積回路１００におけるメモリチップ１０２による読み出し回数を推定すれば、その集積回路１００が、普及機能向け良品に選定されたものであるか高機能向け良品に選定されたものであるかを区別することができる。
【０２０３】
また、データの書き込みについても、データの読み出しについてと同様に、メモリチップ１０２へデータを書き込む処理を含む互いに同様の処理を、普及機能向け良品に選定された集積回路１００と高機能向け良品に選定された集積回路１００とが実行する場合には、普及機能向け良品に選定された集積回路１００においてメモリチップ１０２が消費する消費電流の方が、高機能向け良品に選定された集積回路１００においてメモリチップ１０２が消費する消費電流よりも大きくなる。
【０２０４】
また、一般に、メモリは、データを書き込む場合における消費電流の時間変動パターンとして、特徴的なピークを含むパターンを示すことが知られている。
【０２０５】
これは、一般に、メモリがデータを書き込む一連の動作において、例えば、メモリセルにデータを書き込むためにビットラインを並列に駆動するメモリセルへの書込期間等といった、他の期間に対して比較的大きな電流が流れる特徴的な期間が存在することに起因している。
【０２０６】
従って、メモリがデータを書き込む場合の消費電流の時間変動パターンとして現れる、上述のような特徴的なピークを含むパターンの回数を調べることで、メモリによるデータの書き込み回数を推定できる。
【０２０７】
このことを利用して、所定の処理を行う集積回路１００におけるメモリチップ１０２による書き込み回数を推定すれば、その集積回路１００が、普及機能向け良品に選定されたものであるか高機能向け良品に選定されたものであるかを区別することができる。
＜実施の形態２＞
＜概要＞
以下、本発明に係るメモリアクセス制御装置の一例として、実施の形態１における集積回路１００の一部を変形した第１変形集積回路について説明する。
【０２０８】
実施の形態１に係る集積回路１００は、システムＬＳＩチップ１０１が、イーヒューズ回路５２１を含む冗長救済回路５２０を備え、冗長救済回路５２０が、イーヒューズ回路５２１を用いて、接続不良となっているマイクロバンプのマイクロバンプＩＤを記憶する構成の例であったが、本実施の形態２に係る第１変形集積回路は、システムＬＳＩチップが、イーヒューズ回路５２１を含む冗長救済回路５２０を備えない構成の例となっている。
【０２０９】
この第１変形集積回路には、メモリアクセス制御装置内に、マイクロバンプのセルフ接続テストを実施して、接続不良となっているマイクロバンプの位置を記憶するＢＩＳＴ（Built-In Self Test）部が備えられている。そして、このＢＩＳＴ部が、集積回路１００が起動される毎に、マイクロバンプのセルフ接続テストを実施することで接続不良となっているマイクロバンプの位置を記憶する。
【０２１０】
以下、本実施の形態２に係る第１変形集積回路の構成について、実施の形態１に係る集積回路１００との相違点を中心に、図面を参照しながら説明する。
【０２１１】
＜構成＞
実施の形態２に係る第１変形集積回路は、実施の形態１に係る集積回路１００から、外部メモリ制御回路５１９が外部メモリ制御回路１８１９に変形され、システムＬＳＩチップ１０１がシステムＬＳＩチップ１８０１に変形されたものである。そして、外部メモリ制御回路５１９が外部メモリ制御回路１８１９に変形されたことに伴って、メモリアクセスコントローラ５１０がメモリアクセスコントローラ１８１０に変形されている。
【０２１２】
図１８は、システムＬＳＩチップ１８０１の主要なハードウエア構成を示す構成図である。
【０２１３】
同図に示されるように、システムＬＳＩチップ１８０１は、実施の形態１におけるシステムＬＳＩチップ１０１から、冗長救済回路５２０が削除され、メモリアクセスコントローラ５１０がメモリアクセスコントローラ１８１０に変更されたものとなっている。
【０２１４】
そして、メモリアクセスコントローラ１８１０は、実施の形態１におけるメモリアクセスコントローラ５１０から、外部メモリ制御回路５１９が外部メモリ制御回路１８１９に変更されたものとなっている。
【０２１５】
図１９は、外部メモリ制御回路１８１９の主要な機能構成を示す構成図である。
【０２１６】
同図に示されるように、外部メモリ制御回路１８１９は、実施の形態１における外部メモリ制御回路５１９から、ＢＩＳＴ部１９０１とセレクタ１９０２とセレクタ１９０３とが追加され、セレクタ６０３における冗長救済回路５２０への接続が、ＢＩＳＴ部１９０１への接続へ変更され、データ線冗長救済部６１１における冗長救済回路５２０への接続が、ＢＩＳＴ部１９０１への接続へ変更され、Ｒデータアラインメントバッファ６１４における冗長救済回路５２０への接続が、ＢＩＳＴ部１９０１への接続へ変更され、Ｗデータアラインメントバッファ６１６における冗長救済回路５２０への接続が、ＢＩＳＴ部１９０１への接続へ変更されたものである。
【０２１７】
ＢＩＳＴ部１９０１は、セレクタ１９０２とセレクタ１９０３とＲデータアラインメントバッファ６１４とセレクタ６０３とデータ線冗長救済部６１１とＷデータアラインメントバッファ６１６とに接続され、内部に、接続不良となっているマイクロバンプのマイクロバンプＩＤを記憶するための記憶部を有し、以下の機能を有する。
【０２１８】
機能１：外部メモリ制御回路１８１９が起動されると、メモリデータ用マイクロバンプ群の接続状態をテストするための、テストベクタと期待値とを生成する機能。
【０２１９】
機能２：生成したテストベクタと期待値とを用いて、メモリデータ用マイクロバンプ群の接続状態をテストして、接続不良マイクロバンプを特定する機能。
【０２２０】
機能３：特定した接続不良マイクロバンプのマイクロバンプＩＤを、内部の記憶部に記憶する機能。
【０２２１】
セレクタ１９０２は、コマンドアービタ５１６とＢＩＳＴ部１９０１と通常用アドレス変換部６０１と救済用アドレス変換部６０２とに接続され、ＢＩＳＴ部１９０１によって制御され、ＢＩＳＴ部１９０１がメモリデータ用マイクロバンプ群の接続状態をテストしている期間中は、ＢＩＳＴ部１９０１から送られてくる信号を選択して出力し、ＢＩＳＴ部１９０１がメモリデータ用マイクロバンプ群の接続状態をテストしている期間以外の期間は、コマンドアービタ５１６から送られてくる信号を選択して出力する機能を有する。
【０２２２】
セレクタ１９０３は、データバッファ５１７とＢＩＳＴ部１９０１とＷデータアラインメントバッファ６１６とに接続され、ＢＩＳＴ部１９０１によって制御され、ＢＩＳＴ部１９０１がメモリデータ用マイクロバンプ群の接続状態をテストしている期間中は、ＢＩＳＴ部１９０１から送られてくる信号を選択して出力し、ＢＩＳＴ部１９０１がメモリデータ用マイクロバンプ群の接続状態をテストしている期間以外の期間は、データバッファ５１７から送られてくる信号を選択して出力する機能を有する。
【０２２３】
また、セレクタ６０３とデータ線冗長救済部６１１とＲデータアラインメントバッファ６１４とＷデータアラインメントバッファ６１６とは、実施の形態１において、冗長救済回路５２０に記憶されている、接続不良になっているマイクロバンプのマイクロバンプＩＤに基づいて実現する機能を、ＢＩＳＴ部１９０１に記憶されている、接続不良になっているマイクロバンプのマイクロバンプＩＤに基づいて実現する。
【０２２４】
以下、図面を参照しながら、上記構成の第１変形集積回路の行う動作について説明する。
【０２２５】
＜動作＞
第１変形集積回路は、実施の形態１における集積回路１００の行う動作に加えて、自己診断処理を行う。
【０２２６】
以下、この自己診断処理について説明する。
【０２２７】
＜自己診断処理＞
自己診断処理は、外部メモリ制御回路１８１９が、メモリチップ１０２を用いて行う処理であって、メモリデータ用マイクロバンプ群の接続状態をテストして、接続不良マイクロバンプを特定し、特定した接続不良マイクロバンプのマイクロバンプＩＤを、ＢＩＳＴ部１９０１が記憶する処理のことである。
【０２２８】
図２０は、自己診断処理のフローチャートである。
【０２２９】
自己診断処理は、外部メモリ制御回路１８１９が起動されることで開始される。
【０２３０】
自己診断処理が開始されると、ＢＩＳＴ部１９０１は、メモリデータ用マイクロバンプ群の接続状態をテストするための、テストベクタと期待値とを生成する（ステップＳ２０００）。このテストベクタは、例えば、メモリチップ１０２へのデータの書き込み命令群と、メモリチップ１０２からのデータの読み出し命令群等から構成される。
【０２３１】
テストベクタと期待値とを生成すると、ＢＩＳＴ部１９０１は、セレクタ１９０２とセレクタ１９０３とを制御して、生成したテストベクタと期待値とを用いて、メモリデータ用マイクロバンプ群の接続状態をテストする（ステップＳ２０１０）。
【０２３２】
ステップＳ２０１０の処理において、メモリデータ用マイクロバンプ群の中に接続不良のマイクロバンプが検出された場合（ステップＳ２０２０：Ｙｅｓ）に、ＢＩＳＴ部１９０１は、特定した接続不良マイクロバンプのマイクロバンプＩＤを、内部の記憶部に記憶する（ステップＳ２０３０）。
【０２３３】
ステップＳ２０１０の処理において、メモリデータ用マイクロバンプ群の中に接続不良のマイクロバンプが検出されなかった場合（ステップＳ２０２０：Ｎｏ）に、ＢＩＳＴ部１９０１は、内部の記憶部に何も記憶しない（ステップＳ２０４０）。
【０２３４】
ステップＳ２０３０の処理が終了した場合、又はステップＳ２０４０の処理が終了した場合に、外部メモリ制御回路１８１９は、その自己診断処理を終了する。
【０２３５】
以下、第１変形集積回路について考察する。
【０２３６】
＜考察＞
第１変形集積回路は、外部メモリ制御回路１８１９が起動される毎に、メモリデータ用マイクロバンプ群の接続状態をテストして、接続不良マイクロバンプが存在する場合には、その接続不良マイクロバンプのマイクロバンプＩＤを記憶する。
【０２３７】
これによって、第１変形集積回路は、ｅＦＵＳＥ回路を備えていない構成でありながら、メモリデータ用マイクロバンプ群の中に接続不良マイクロバンプが存在していても、普及向け良品として動作する。さらには、製品出荷後に新たな接続不良マイクロバンプが発生してしまっても、その接続不良マイクロバンプの存在を反映した記憶領域の利用が可能となる。
【０２３８】
高機能向けとして出荷した製品においても有効である。従来では接続故障が発生した際に商品として全く機能しなくなってしまっていた。しかし、本発明を用いることで故障した際にも普及版と同程度の制限動作ではあるが動作が可能である。このため、早急に修理できない場合においても基本的な機能だけは使用できる。
＜実施の形態３＞
＜概要＞
以下、本発明に係るメモリアクセス制御装置の一例として、実施の形態１における集積回路１００の一部を変形した第２変形集積回路について説明する。
【０２３９】
実施の形態１に係る集積回路１００は、外部メモリ制御回路５１９が、通常用アドレス変換部６０１と救済用アドレス変換部６０２とを備える構成の例であったが、本実施の形態３に係る第２変形集積回路は、外部メモリ制御回路５１９が通常用アドレス変換部６０１を備えない構成の例となっている。
【０２４０】
この第２変形集積回路は、接続不良マイクロバンプの有無にかかわらず、常に救済用アドレス変換部６０２によって変換された物理アドレスに基づくメモリ命令が発行されることとなるため、接続不良マイクロバンプの有無にかかわらず、システムＬＳＩチップ１０１に含まれる各マスタは、バンクＡ３１０、バンクＢ３２０、バンクＣ３３０からなる１９２ＭＢの記憶領域を利用することとなる。そして、バンクＤ３４０からなる６４ＭＢの記憶領域は、バンクＡ３１０、バンクＢ３２０、バンクＣ３３０からなる１９２ＭＢの記憶領域のうち、接続不良マイクロバンプの存在によって、アクセス不能となっている記憶領域を救済するために利用されることとなる。
【０２４１】
以下、本実施の形態３に係る第２変形集積回路の構成について、実施の形態１に係る集積回路１００との相違点を中心に、図面を参照しながら説明する。
【０２４２】
＜構成＞
実施の形態３に係る第２変形集積回路は、実施の形態１に係る集積回路１００から、外部メモリ制御回路５１９が外部メモリ制御回路２１１９に変形されたものである。
【０２４３】
図２１は、外部メモリ制御回路２１１９の主要なハードウエア構成を示す構成図である。
【０２４４】
同図に示されるように、外部メモリ制御回路２１１９は、実施の形態１における外部メモリ制御回路５１９から、通常用アドレス変換部６０１とセレクタ６０３とが削除され、救済用アドレス変換部６０２が、コマンドアービタ５１６とコマンドキュー６０４とに接続されるように変更されたものとなっている。そして、このことによって、第２変形集積回路は、接続不良マイクロバンプの有無にかかわらず、常に救済用アドレス変換部６０２によって変換された物理アドレスに基づくメモリ命令を発行することとなる。
【０２４５】
以下、上記構成の第２変形集積回路を製造する製造方法について、図面を用いて説明する。
【０２４６】
＜製造方法＞
図２２と図２３とは、第２変形集積回路の製造方法のフローチャートである。
【０２４７】
第２変形集積回路の製造は、実施の形態１における集積回路１００の製造と同様に、まず、第２変形集積回路の設計が着手されることで開始される。
【０２４８】
ステップＳ２２００の処理〜ステップＳ２２２０の処理は、実施の形態１におけるステップＳ１６００の処理〜ステップＳ１６２０の処理と同様の処理となっている。よって、ここではこれらの説明を省略する。
【０２４９】
ステップＳ２２２０の処理が終了すると、各マスタからのメモリチップ１０２へのメモリ帯域の見積もりを行い（ステップＳ２２３０）、メモリチップ１０２のメモリマップを決定する（ステップＳ２２４０）。
【０２５０】
ステップＳ２２５０の処理〜ステップＳ２３２０の処理は、実施の形態１におけるステップＳ１６５０の処理〜ステップＳ１７２０の処理と同様の処理となっている。よって、ここではこれらの説明を省略する。
【０２５１】
ステップＳ２３１０の処理において、接続不良となっているマイクロバンプが存在しない場合（ステップＳ２３１０：Ｎｏ）、又はステップＳ２３２０の処理において、接続不良となっているマイクロバンプの数が、最大救済ビット数以下の場合に（ステップＳ２３２０：Ｙｅｓ）、第２変形集積回路を良品に選定する（ステップＳ２３３０）。
【０２５２】
ステップＳ２３００の処理において、接続不良となっているマイクロバンプが存在する場合（ステップＳ２３００：Ｎｏ）、又は、ステップＳ２３２０の処理において、接続不良となっているマイクロバンプの数が、最大救済ビット数より多い場合に（ステップＳ２３２０：Ｎｏ）、第２変形集積回路を不良品に選定する（ステップＳ２３４０）。
【０２５３】
ステップＳ２３２０の処理が終了した場合、又はステップＳ２３４０の処理が終了した場合に、第２変形集積回路の製造は終了する。
【０２５４】
＜考察＞
第２変形集積回路は、メモリデータ用マイクロバンプ群の中に、１２８個以下の接続不良マイクロバンプが存在している場合には不具合が発生しない。そして、その場合には良品として選定される。
＜実施の形態４＞
＜概要＞
以下、本発明に係るメモリアクセス制御装置の一例として、実施の形態１における集積回路１００の一部を変形した第３変形集積回路について説明する。
【０２５５】
この第３変形集積回路は、実施の形態１に係る救済用アドレス変換部６０２が、第１変形救済用アドレス変換部に変形されている。
【０２５６】
実施の形態１では、救済用アドレス変換部６０２の行う論理アドレス−物理アドレス変換は、バンクＤ３４０からなる６４ＭＢの記憶領域が、バンクＡ３１０とバンクＢ３２０とバンクＣ３３０からなる１９２ＭＢの記憶領域のうち、接続不良マイクロバンプの存在によって、アクセス不能となっている記憶領域を救済するために利用されるように行うものであったが、実施の形態４では、第１変形救済用アドレス変換部の行う論理アドレス−物理アドレス変換は、バンクＣ３３０とバンクＤ３４０とからなる１２８ＭＢの記憶領域が、バンクＡ３１０とバンクＢ３２０とからなる１２８ＭＢの記憶領域のうち、接続不良マイクロバンプの存在によって、アクセス不能となっている記憶領域を救済するために利用されるように行うものとなっている。
【０２５７】
＜構成＞
第１変形救済用アドレス変換部は、コマンドアービタ５１６とセレクタ６０３とに接続され、以下の２つの機能を有する。
【０２５８】
機能１：コマンドアービタ５１６から送られてくるマスタからのコマンドに含まれるｍビットからなる記憶領域の開始アドレスを指す論理アドレスを、メモリチップ１０２における、バンクＡ３１０とバンクＢ３２０とからなる１２８ＭＢの記憶領域のうちのｍビットからなる記憶領域（以下、「第１のｍビットからなる記憶領域」と呼ぶ。）の開始アドレスを指す物理アドレスと、メモリチップ１０２における、バンクＣ３３０とバンクＤ３４０とからなる１２８ＭＢの記憶領域のうちのｍビットからなる記憶領域（以下、「第２のｍビットからなる記憶領域」と呼ぶ。）の開始アドレスを指す物理アドレスとに変換する救済アドレス変換機能。
【０２５９】
ここで、第１のｍビットからなる記憶領域と、第２のｍビットからなる記憶領域との関係は、（１）第１のｍビットからなる記憶領域のうち、バンクＡ３１０に含まれる領域を示すロウアドレスとカラムアドレスとの組と、第２のｍビットからなる記憶領域のうち、バンクＣ３３０に含まれる領域を示すロウアドレスとカラムアドレスとの組とが互いに等しくなり、（２）第１のｍビットからなる記憶領域のうち、バンクＢ３２０に含まれる領域を示すロウアドレスとカラムアドレスとの組と、第２のｍビットからなる記憶領域のうち、バンクＤ３４０に含まれる領域を示すロウアドレスとカラムアドレスとの組とが互いに等しくなる関係となっている。
【０２６０】
機能２：救済アドレス変換機能を利用して変換された物理アドレスを用いて、コマンドアービタ５１６から送られてくるマスタからのコマンドに含まれるメモリアクセス命令を、メモリチップ１０２が利用できるメモリ命令に変換する命令変換機能。
【０２６１】
図２４は、第１変形救済用アドレス変換部に、マスタからのメモリコマンドが入力された場合に、第１変形救済用アドレス変換部が、マスタからのメモリコマンドをメモリ命令に変換して出力し、その結果、メモリチップ１０２から、データが読み出されるときの、タイミングチャートの一例である。ここでは、マスタからのメモリコマンドが、メモリチップ１０２から、"０ｘ３０００００００"となる物理アドレスを開始アドレスとする、連続する１９２Ｂのデータを読み出すコマンドの場合の例を示している。
【０２６２】
第１変形救済用アドレス変換部は、１９２Ｂのデータを読み出すマスタからのメモリコマンドを受けると、救済アドレス変換機能と命令変換機能とを利用して、（１）バンクＡ３１０とバンクＣ３３０とにおいて、互いに同じロウアドレス"０ｘ０００"と互いに同じカラムアドレス"０ｘ００"とで指される６４Ｂの記憶領域からデータを読み出す"ＲＤａ１"メモリ命令と"ＲＤｃ１"メモリ命令と、（２）バンクＢ３２０とバンクＤ３４０とにおいて、互いに同じロウアドレス"０ｘ０００"と互いに同じカラムアドレス"０ｘ００"とで指される６４Ｂの記憶領域からデータを読み出す"ＲＤｂ１"メモリ命令と"ＲＤｄ１"メモリ命令と、（３）バンクＡ３１０とバンクＣ３３０とにおいて、互いに同じロウアドレス"０ｘ０００"と互いに同じカラムアドレス"０ｘ０１"とで指される６４Ｂの記憶領域からデータを読み出す"ＲＤａ２"メモリ命令と"ＲＤｃ２"メモリ命令とを生成して出力する。
【０２６３】
すると、メモリチップ１０２は、６４Ｂのデータからなる"ＤＴａ１"をバンクＡ３１０から読み出し、６４Ｂからなる"ＤＴｃ１"をバンクＣ３３０から読み出し、６４Ｂからなる"ＤＴｂ１"をバンクＢ３２０から読み出し、６４Ｂのデータからなる"ＤＴｄ１"をバンクＤ３４０から読み出し、６４Ｂのデータからなる"ＤＴａ２"をバンクＡ３１０から読み出し、６４Ｂからなる"ＤＴｃ２"をバンクＣ３３０から読み出して出力する。
【０２６４】
図２５は、上記例における、"ＤＴａ１"が格納されている領域と"ＤＴｃ１"が格納されている領域と"ＤＴｂ１"が格納されている領域と"ＤＴｄ１"が格納されている領域と"ＤＴａ２"が格納されている領域と"ＤＴｃ２"が格納されている領域とを、模式的に示した模式図である。
【０２６５】
同図に示される通り、上記例においては、"ＤＴａ１"が格納されている領域の開始物理アドレスは、バンクＡ３１０のロウアドレス"０ｘ０００"とカラムアドレス"０ｘ００"となり、"ＤＴｂ１"が格納されている領域の開始物理アドレスは、バンクＢ３２０のロウアドレス"０ｘ０００"とカラムアドレス"０ｘ００"となり、"ＤＴｃ１"が格納されている領域の開始物理アドレスは、バンクＣ３３０のロウアドレス"０ｘ０００"とカラムアドレス"０ｘ００"となり、"ＤＴｄ１"が格納されている領域の開始物理アドレスは、バンクＤ３４０のロウアドレス"０ｘ０００"とカラムアドレス"０ｘ００"となり、"ＤＴａ２"が格納されている領域の開始物理アドレスは、バンクＡ３１０のロウアドレス"０ｘ０００"とカラムアドレス"０ｘ０１"となり、"ＤＴｃ２"が格納されている領域の開始物理アドレスは、バンクＣ３３０のロウアドレス"０ｘ０００"とカラムアドレス"０ｘ０１"となる。
【０２６６】
本実施例の論理アドレスから物理アドレスへの変換ルールは図２６のように図４の例を全体に右に１ビットシフトさせたものと同様である。このため、通常用アドレス変換と救済用アドレス変換部のハードウエア資源を多く共用することが可能である。
【０２６７】
但し、この変換ルールの中のバンクアドレスに関しては、下位１ビットに対する変換ルールを示しており、実際の外部メモリアクセスの際には、通常用バンクには上位ビットに"０"、救済用バンクには上位ビットに"１"を追加する。
【０２６８】
＜考察＞
第３変形集積回路は、メモリデータ用マイクロバンプ群の中に、１２８個以上の接続不良マイクロバンプが存在している場合であっても、その数が２５６個以下であれば、メモリチップ１０２を利用することができる。
＜実施の形態５＞
＜概要＞
以下、本発明に係るメモリアクセス制御装置の一例として、実施の形態１における集積回路１００の一部を変形した第４変形集積回路について説明する。
【０２６９】
この第４変形集積回路は、実施の形態１に係る救済用アドレス変換部６０２が、第２変形救済用アドレス変換部に変形されている。
【０２７０】
実施の形態１では、救済用アドレス変換部６０２の行う論理アドレス−物理アドレス変換は、バンクＤ３４０からなる６４ＭＢの記憶領域が、バンクＡ３１０とバンクＢ３２０とバンクＣ３３０からなる１９２ＭＢの記憶領域のうち、接続不良マイクロバンプの存在によって、アクセス不能となっている記憶領域を救済するために利用されるように行うものであったが、実施の形態５では、第２変形救済用アドレス変換部の行う論理アドレス−物理アドレス変換は、バンクＡ３１０、バンクＢ３２０、バンクＣ３３０、バンクＤ３４０からなる２５６ＭＢの記憶領域のうちの１２８ＭＢの記憶領域を、残りの１２８ＭＢの記憶領域のうちの、接続不良マイクロバンプの存在によって、アクセス不能となっている領域を救済するために利用されるように行うものとなっている。
【０２７１】
＜構成＞
第２変形救済用アドレス変換部は、コマンドアービタ５１６とセレクタ６０３とに接続され、以下の２つの機能を有する。
【０２７２】
機能１：コマンドアービタ５１６から送られてくるマスタからのコマンドに含まれるｍビットからなる記憶領域の開始アドレスを指す論理アドレスを、メモリチップ１０２における、バンクＡ３１０とバンクＢ３２０とバンクＣ３３０とバンクＤ３４０とからなる２５６ＭＢの記憶領域のうち、カラムアドレスの最下位ビットが"０"となる１２８ＭＢの記憶領域のうちのｍビットからなる記憶領域（以下、「第１のｍビットからなる記憶領域」と呼ぶ。）の開始アドレスを指す物理アドレスと、メモリチップ１０２における、バンクＡ３１０とバンクＢ３２０とバンクＣ３３０とバンクＤ３４０とからなる２５６ＭＢの記憶領域のうち、カラムアドレスの最下位ビットが"１"となる１２８ＭＢの記憶領域のうちのｍビットからなる記憶領域（以下、「第２のｍビットからなる記憶領域」と呼ぶ。）の開始アドレスを指す物理アドレスとに変換する救済アドレス変換機能。
【０２７３】
機能２：救済アドレス変換機能を利用して変換された物理アドレスを用いて、コマンドアービタ５１６から送られてくるマスタからのコマンドに含まれるメモリアクセス命令を、メモリチップ１０２が利用できるメモリ命令に変換する命令変換機能。
【０２７４】
図２７は、第２変形救済用アドレス変換部に、マスタからのメモリコマンドが入力された場合に、第２変形救済用アドレス変換部が、マスタからのメモリコマンドをメモリ命令に変換して出力し、その結果、メモリチップ１０２から、データが読み出されるときの、タイミングチャートの一例である。ここでは、マスタからのメモリコマンドが、メモリチップ１０２から、"０ｘ３０００００００"となる物理アドレスを開始アドレスとする、連続する１９２Ｂのデータを読み出すコマンドの場合の例を示している。
【０２７５】
第１変形救済用アドレス変換部は、１９２Ｂのデータを読み出すマスタからのメモリコマンドを受けると、救済アドレス変換機能と命令変換機能とを利用して、（１）バンクＡにおいて、互いに同じロウアドレス"０ｘ０００"と互いに連続するカラムアドレス（"０ｘ００"と"０ｘ０１"）とで指される６４Ｂの記憶領域からデータを読み出す"ＲＤａ１"メモリ命令と"ＲＤａ２"メモリ命令と、（２）バンクＢにおいて、互いに同じロウアドレス"０ｘ０００"と互いに連続するカラムアドレス（"０ｘ００"と"０ｂ０１"）とで指される６４Ｂの記憶領域からデータを読み出す"ＲＤｂ１"メモリ命令と"ＲＤｂ２"メモリ命令と、（３）バンクＣにおいて、互いに同じロウアドレス"０ｘ０００"と互いに連続するカラムアドレス（"０ｘ００"と"０ｂ０１"）とで指される６４Ｂの記憶領域からデータを読み出す"ＲＤｃ１"メモリ命令と"ＲＤｃ２"メモリ命令とを生成して出力する。
【０２７６】
すると、メモリチップ１０２は、６４Ｂのデータからなる"ＤＴａ１"と６４Ｂのデータからなる"ＤＴａ２"とをバンクＡ３１０から読み出し、６４Ｂのデータからなる"ＤＴｂ１"と６４Ｂのデータからなる"ＤＴｂ２"とをバンクＢ３２０から読み出し、６４Ｂのデータからなる"ＤＴｃ１"と６４Ｂのデータからなる"ＤＴｃ２"とをバンクＣ３３０から読み出して出力する。
【０２７７】
図２８は、上記例における、"ＤＴａ１"が格納されている領域と"ＤＴａ２"が格納されている領域と"ＤＴｂ１"が格納されている領域と"ＤＴｂ２"が格納されている領域と"ＤＴｃ１"が格納されている領域と"ＤＴｃ２"が格納されている領域とを、模式的に示した模式図である。
【０２７８】
同図に示される通り、上記例においては、"ＤＴａ１"が格納されている領域の開始物理アドレスは、バンクＡ３１０のロウアドレス"０ｘ０００"とカラムアドレス"０ｘ００"となり、"ＤＴｂ１"が格納されている領域の開始物理アドレスは、バンクＢ３２０のロウアドレス"０ｘ０００"とカラムアドレス"０ｘ００"となり、"ＤＴｃ１"が格納されている領域の開始物理アドレスは、バンクＣ３３０のロウアドレス"０ｘ０００"とカラムアドレス"０ｘ００"となり、"ＤＴａ２"が格納されている領域の開始物理アドレスは、バンクＡ３１０のロウアドレス"０ｘ０００"とカラムアドレス"０ｘ０１"となり、"ＤＴｂ２"が格納されている領域の開始物理アドレスは、バンクＢ３２０のロウアドレス"０ｘ０００"とカラムアドレス"０ｘ０１"となり、"ＤＴｃ２"が格納されている領域の開始物理アドレスは、バンクＣ３３０のロウアドレス"０ｘ０００"とカラムアドレス"０ｘ０１"となる。
【０２７９】
本実施例の論理アドレスから物理アドレスへの変換ルールは、図２９に示されるように、カラムアドレス領域３２０３が、図４の例におけるカラムアドレス領域４０３の最下位ビットを固定値"１ｂ０"としたものと同様である。このため、通常用アドレス変換と救済用アドレス変換部のハードウエア資源を多く共用することが可能である。
【０２８０】
但し、救済用のカラムへアクセスする場合には、最下位ビットを"１ｂ１"に固定する。
【０２８１】
＜考察＞
第４変形集積回路は、メモリデータ用マイクロバンプ群の中に、１２８個以上の接続不良マイクロバンプが存在している場合であっても、その数が２５６個以下であれば、メモリチップ１０２を利用することができる。
＜実施の形態６＞
＜概要＞
以下、本発明に係るメモリアクセス制御装置の一例として、実施の形態５における第４変形集積回路の一部を変形した第５変形集積回路について説明する。
【０２８２】
この第５変形集積回路は、実施の形態５に係る第２変形救済用アドレス変換部が、第３変形救済用アドレス変換部に変形されている。
【０２８３】
実施の形態５では、第２変形救済用アドレス変換部が行う論理アドレス−物理アドレス変換は、バンクＡ３１０とバンクＢ３２０とバンクＣ３３０とバンクＤとからなる２５６ＭＢの記憶領域のうち、カラムアドレスの最下位ビットが"１"となる１２８ＭＢの記憶領域が、カラムアドレスの最下位ビットが"０"となる１２８ＭＢの記憶領域のうち、接続不良マイクロバンプの存在によって、アクセス不能となっている記憶領域を救済するために利用されるように行うものであったが、実施の形態６では、第３変形救済用アドレス変換部が行う論理アドレス−物理アドレス変換は、ロウアドレスとカラムアドレスとの組で指定される６４Ｂの記憶領域のうち、上位側３２Ｂの記憶領域が、下位側３２Ｂの記憶領域のうち、接続不良マイクロバンプの存在によって、アクセス不能となっている記憶領域を救済するために利用されるように行うものとなっている。
【０２８４】
＜構成＞
第２変形救済用アドレス変換部は、コマンドアービタ５１６とセレクタ６０３とに接続され、以下の２つの機能を有する。
【０２８５】
機能１：コマンドアービタ５１６から送られてくるマスタからのコマンドに含まれるｍビットからなる記憶領域の開始アドレスを指す論理アドレスを、メモリチップ１０２における、バンクＡ３１０とバンクＢ３２０とバンクＣ３３０とバンクＤ３４０とからなる２５６ＭＢの記憶領域のうちの２ｍビットからなる記憶領域の開始アドレスを示す物理アドレスに変換する救済アドレス変換機能。
【０２８６】
機能２：救済アドレス変換機能を利用して変換された物理アドレスを用いて、コマンドアービタ５１６から送られてくるマスタからのコマンドに含まれるメモリアクセス命令を、メモリチップ１０２が利用できるメモリ命令に変換する命令変換機能。
【０２８７】
図３０は、第３変形救済用アドレス変換部に、マスタからのメモリコマンドが入力された場合に、第３変形救済用アドレス変換部が、マスタからのメモリコマンドをメモリ命令に変換して出力し、その結果、メモリチップ１０２から、データが読み出されるときの、タイミングチャートの一例である。ここでは、マスタからのメモリコマンドが、メモリチップ１０２から、"０ｘ３０００００００"となる論理アドレスを開始アドレスとする、連続する１９２Ｂのデータを読み出すコマンドの場合の例を示している。
【０２８８】
第３変形救済用アドレス変換部は、１９２Ｂのデータを読み出すマスタからのメモリコマンドを受けると、通常アドレス変換機能と命令変換機能とを利用して、連続する６つの６４Ｂのメモリ領域からデータを読み出す、"ＲＤａ１"メモリ命令と"ＲＤｂ１"メモリ命令と"ＲＤｃ１"メモリ命令と"ＲＤｄ１"メモリ命令と"ＲＤａ２"メモリ命令と"ＲＤｂ２"メモリ命令との６つのメモリ命令を生成して出力する。
【０２８９】
すると、メモリチップ１０２は、６４Ｂのデータからなる"ＤＴａ１"をバンクＡ３１０から読み出し、６４Ｂからなる"ＤＴｂ１"をバンクＢ３２０から読み出し、６４Ｂからなる"ＤＴｃ１"をバンクＣ３３０から読み出し、６４Ｂからなる"ＤＴｄ１"をバンクＤ３４０から読み出し、６４Ｂのデータからなる"ＤＴａ２"をバンクＡ３１０から読み出し、６４Ｂからなる"ＤＴｂ２"をバンクＢ３２０から読み出して出力する。
【０２９０】
図３１は、上記例における、"ＤＴａ１"が格納されている領域と"ＤＴｂ１"が格納されている領域と"ＤＴｃ１"が格納されている領域と"ＤＴｄ１"が格納されている領域と"ＤＴａ２"が格納されている領域と"ＤＴｂ２"が格納されている領域とを、模式的に示した模式図である。
【０２９１】
同図に示される通り、上記例においては、"ＤＴａ１"が格納されている領域の開始物理アドレスは、バンクＡ３１０のロウアドレス"０ｘ０００"とカラムアドレス"０ｘ００"となり、 "ＤＴｂ１"が格納されている領域の開始物理アドレスは、バンクＢ３２０のロウアドレス"０ｘ０００"とカラムアドレス"０ｘ００"となり、"ＤＴｃ１"が格納されている領域の開始物理アドレスは、バンクＣ３３０のロウアドレス"０ｘ０００"とカラムアドレス"０ｘ００"となり、"ＤＴｄ１"が格納されている領域の開始物理アドレスは、バンクＤ３４０のロウアドレス"０ｘ０００"とカラムアドレス"０ｘ００"となり、"ＤＴａ２"が格納されている領域の開始物理アドレスは、バンクＡ３１０のロウアドレス"０ｘ０００"とカラムアドレス"０ｘ０１"となり、"ＤＴｂ２"が格納されている領域の開始物理アドレスは、バンクＢ３２０のロウアドレス"０ｘ０００"とカラムアドレス"０ｘ０１"となる。
【０２９２】
本実施例の論理アドレスから物理アドレスへの変換ルールは、図３２に示されるように、固定値領域２９０１のビット数が、図４の例における固定値領域４０１のビット数より１ビット少なくなるように右に１ビットシフトさせたものと同様である。このため、通常用アドレス変換と救済用アドレス変換部のハードウエア資源を多く共用することが可能である。
【０２９３】
＜考察＞
第５変形集積回路は、メモリデータ用マイクロバンプ群の中に、１２８個以上の接続不良マイクロバンプが存在している場合であっても、その数が２５６個以下であれば、メモリチップ１０２を利用することができる。
＜実施の形態７＞
＜概要＞
本発明に係るメモリアクセス制御装置の一例として、実施の形態１における集積回路１００をそれぞれ内蔵する、タブレット端末とスマートフォン端末との製造方法について説明する。
【０２９４】
＜構成＞
タブレット端末は、３８４０画素×２１６０画素からなる、いわゆる４Ｋ２Ｋ型液晶ディスプレイを含むタッチパネルを備える携帯用薄型パソコンである。
【０２９５】
このタブレット端末は、いわゆる４Ｋ２Ｋ型液晶ディスプレイに、所定のフレームレートで映像を表示する機能を有している。そして、この機能を実現するために、内蔵する集積回路１００において、システムＬＳＩチップ１０１がメモリチップ１０２を８ＧＢ／ｓの帯域幅で利用できることが動作条件となっている。このため、タブレット端末は、高機能向け良品として選定された集積回路１００（すなわち、帯域幅が１０ＧＢ／ｓとなるもの）を内蔵する場合には正常動作するが、普及機能向け良品として選定された集積回路１００（すなわち、帯域幅が７ＧＢ／ｓとなるもの）を内蔵する場合には正常動作しない。
【０２９６】
スマートフォン端末は、６４０画素×４８０画素からなる、いわゆるＶＧＡ（Video Graphics Array）型液晶ディスプレイを含むタッチパネルを備る携帯電話機である。
【０２９７】
このスマートフォン端末は、いわゆるＶＧＡ型液晶ディスプレイに、所定のフレームレートで映像を表示する機能を有している。そして、この機能を実現するために、内蔵する集積回路１００において、システムＬＳＩチップ１０１がメモリチップ１０２を０．５ＧＢ／ｓの帯域幅で利用できることが動作条件となっている。このため、スマートフォン端末は、高機能向け良品として選定された集積回路１００を内蔵する場合と、普及機能向け良品として選定された集積回路１００を内蔵する場合との双方の場合において正常動作する。
【０２９８】
以下、集積回路１００を製造する製造者が、さらに、製造する集積回路１００を用いて、上記タブレット端末とスマートフォン端末とを製造する製造方法について、図面を用いて説明する。
【０２９９】
＜製造方法＞
図３３は、タブレット端末とスマートフォン端末とを製造する製品製造処理のフローチャートである。
【０３００】
製品製造処理は、製造された集積回路１００の数が所定数（例えば、１０００個）に達することでその処理が開始される。なお、集積回路１００の製造方法については、実施の形態１の＜製造方法＞の項目の部分で詳細に説明している。
【０３０１】
製品製造処理が開始されると、集積回路１００を選択する選択者は、製造された集積回路１００のうちの１つを選択して（ステップＳ３３００）、その選択した集積回路１００が、実施の形態１における製造方法による製造過程で不良品に選定（図１７の、ステップＳ１７００〜ステップＳ１７７０の処理等参照）されなかったものであるか否か、すなわち、良品に選定されたものであるか否かを調べる（ステップＳ３３１０）。
【０３０２】
ステップＳ３３１０の処理において、選択した集積回路１００が良品に選定されたものであった場合に（ステップＳ３３１０：Ｙｅｓ）、選択者は、さらに、その集積回路１００が、実施の形態１における製造方法による製造過程で高機能向け良品に選定（図１７の、ステップＳ１７００、ステップＳ１７１０、ステップＳ１７６０、ステップＳ１７７０の処理等参照）されたものであるか否かを調べる（ステップＳ３３２０）。
【０３０３】
ステップＳ３３２０の処理において、集積回路１００が高機能向け良品に選定されたものであった場合に（ステップＳ３３２０：Ｙｅｓ）、選択者は、その集積回路１００を、タブレット端末を製造するタブレット端末製造ラインを運用する製造ライン運用者へ引き渡す。そして、製造ライン運用者は、タブレット端末製造ラインを運用して、引き渡された集積回路１００を内蔵するタブレット端末を製造する（ステップＳ３３３０）。
【０３０４】
ステップＳ３３２０の処理において、集積回路１００が高機能向け良品に選定されたものでなかった場合（ステップＳ３３２０：Ｎｏ）、すなわち、集積回路１００が普及機能向け良品に選定されたものであった場合に、選択者は、その集積回路１００を、スマートフォン端末を製造するスマートフォン端末製造ラインを運用する製造ライン運用者へ引き渡す。そして、製造ライン運用者は、スマートフォン端末製造ラインを運用して、引き渡された集積回路１００を内蔵するスマートフォン端末を製造する（ステップＳ３３４０）。
【０３０５】
ステップＳ３３１０の処理において、選択した集積回路１００が良品に選定されたものでなかった場合（ステップＳ３３１０：Ｎｏ）、すなわち、集積回路１００が不良品に選定されたものであった場合に、選択者は、その集積回路１００を破棄する（ステップＳ３３５０）。従って、不良品に選定された集積回路１００は、タブレット端末に内蔵されること、及びスマートフォン端末に内蔵されることがない。
【０３０６】
ステップＳ３３３０の処理が終了した場合、ステップＳ３３４０の処理が終了した場合、又は、ステップＳ３３５０の処理が終了した場合に、選択者は、製造された集積回路１００のうちに未だ選択されていないものが存在するか否かを調べる（ステップＳ３３６０）。
【０３０７】
ステップＳ３３６０の処理において、未だ選択されていない集積回路１００が存在する場合に（ステップＳ３３６０：Ｙｅｓ）、選択者は、未だ選択されていない集積回路１００のうちの１つを選択して（ステップＳ３３７０）、再びステップＳ３３１０の処理を行う。
【０３０８】
ステップＳ３３６０の処理において、未だ選択されていない集積回路１００が存在しない場合に（ステップＳ３３６０：Ｎｏ）、製品製造処理は終了する。
【０３０９】
＜考察＞
タブレット端末とスマートフォン端末とを製造する製造者は、集積回路１００の製造過程においてメモリデータ用マイクロバンプの中に接続不良が存在していても、接続不良の数が最大救済ビット数以下であれば、その集積回路１００を内蔵するスマートフォン端末を製造して販売することができる。このことにより、製造者は、メモリデータ用マイクロバンプの中に接続不良が存在している集積回路１００の全てを不良品として廃棄する場合に比べて、より多くの製品を製造して販売することとなる。
＜補足＞
以上、本発明に係るメモリアクセス制御装置の一実施形態として、実施の形態１〜実施の形態６において、６つの集積回路の例について説明したが、以下のように変形することも可能であり、本発明は上述した実施の形態で示した通りのメモリアクセス制御装置に限られないことはもちろんである。
（１）実施の形態１において、システムＬＳＩチップ１０１とメモリチップ１０２とが、マイクロバンプを介して接続されている構成の例について説明した。これは、マイクロバンプを介して接続することで、配線経路における寄生容量、寄生インダクタンス等を比較的小さくすることができるためである。
【０３１０】
しかしながら、配線経路における寄生容量、寄生インダクタンス等を小さくする必要性が低い場合であれば、システムＬＳＩチップ１０１とメモリチップ１０２との接続は、必ずしもマイクロバンプを介して接続される必要はなく、例えば、いわゆるＣ４（Controlled Collapse Chip Connection）と呼ばれる方式のバンプやTSVで接続されている構成であっても構わない。さらには、システムＬＳＩチップ１０１とメモリチップ１０２とが互いに積層されずにリードフレーム１０３上に配置され、ボンディングワイヤを介して接続されている構成であっても構わないし、システムＬＳＩ１０１とメモリチップ１０２とが、それぞれ互いに異なるパッケージにパッケージングされていて、回路基板上の配線を介して接続されている構成であっても構わない。
（２）実施の形態１において、集積回路１００は、メモリデータ用マイクロバンプ群の中に、接続不良マイクロバンプが含まれていても、その数が所定数以下であれば、普及向け良品に選定される例について説明したが、メモリデータ用マイクロバンプ群の中の接続不良マイクロバンプの数が所定数以下の集積回路１００が良品に選定される構成であれば、必ずしも、メモリデータ用マイクロバンプ群の中の接続不良マイクロバンプの数が所定数以下の集積回路１００の全てが普及向け良品に選定される必要はない。
【０３１１】
一例として、メモリデータ用マイクロバンプ群の中の接続不良マイクロバンプの数が、第１所定数（所定数よりも少ない数）未満であれば、中機能向け良品（高機能向け良品よりは低機能であるが、普及向け良品よりは高機能であるもの）に選定され、第１所定数以上所定数以下であれば、普及向け良品に選定されるという例等が考えられる。これは、例えば、外部メモリ制御回路５１９が、高機能向け良品用のアドレス変換を行う通常用アドレス変換部６０１と、普及向け良品用のアドレス変換を行う救済用アドレス変換部６０２とに加えて、中機能向け良品用のアドレス変換を行う第２救済用アドレス変換部を備えること等によって実現される。
（３）実施の形態１において、集積回路１００が、接続不良マイクロバンプがない場合に、高機能向け良品に選定され、メモリデータ用マイクロバンプ群の中に所定数以下の接続不良マイクロバンプが含まれている場合に、普及向け良品に選定される例ついて説明した。
【０３１２】
これに対して、さらなる変形例として、メモリデータ用マイクロバンプ群の中に第１所定数未満の接続不良マイクロバンプが含まれる場合に、高機能向け良品に選定され、メモリデータ用マイクロバンプ群の中に第１所定数以上で、第１所定数より大きい第２所定数以下の接続不良マイクロバンプが含まれる場合に、普及向け良品に選定される構成としても構わない。これは、例えば、通常用アドレス変換部６０１が、メモリデータ用マイクロバンプ群の中に第１所定数未満の接続不良マイクロバンプが含まれる場合に対応するアドレス変換を行い、救済用アドレス変換部６０２が、メモリデータ用マイクロバンプ群の中に第１所定数以上第２所定数以下の接続不良マイクロバンプが含まれる場合に対応するアドレス変換を行うこと等によって実現される。
（４）実施の形態１において、メモリチップ１０２のデータ読み出しとデータ書き込みとの単位が５１２ビットで、メモリデータ用マイクロバンプ群が５１２個のマイクロバンプから構成される例について説明したが、システムＬＳＩチップ１０１に含まれるマスタが、メモリチップ１０２の記憶領域を利用することができれば、必ずしもメモリチップ１０２のデータ読み出しとデータ書き込みとの単位は５１２ビットに限られる必要はなく、また、メモリデータ用マイクロバンプ群の数は５１２個に限られる必要はない。
【０３１３】
一例として、メモリチップ１０２のデータ読み出しとデータ書き込みとの単位が６４ビットで、メモリデータ用マイクロバンプ群の数が６４個である構成等が考えられる。
（５）実施の形態１において、冗長救済回路５２０は、接続不良のマイクロバンプを特定するマイクロバンプＩＤを記憶するためのイーヒューズ回路５２１を含む構成の例について説明したが、電力が供給されない状態であっても、接続不良のマイクロバンプを特定するマイクロバンプＩＤを記憶することができれば、必ずしもイーヒューズ回路５２１を含む構成に限られず、例えば、フラッシュメモリといった不揮発性メモリを含む構成であっても構わない。
（６）実施の形態１において、メモリチップ１０２は、４つのバンクを有する構成の例について説明したが、システムＬＳＩチップ１０１に含まれるマスタが、メモリチップ１０２の記憶領域を利用することができれば、必ずしも、４つのバンクを有する構成に限られる必要はなく、例えば、８つのバンクを有する構成であっても構わないし、バンク構造を有さない構成であっても構わない。
（７）実施の形態７において、集積回路１００を内蔵する装置として、高機能向け良品として選定された集積回路１００を内蔵するタブレット端末と、普及機能向け良品として選定された集積回路１００を内蔵するスマートフォン端末とを製造する場合の例における製造方法について説明した。しかしながら、内蔵する集積回路１００において、システムＬＳＩチップ１０１がメモリチップ１０２を所定の帯域幅（ここでは、７ＧＢ／ｓよりも大きく、１０ＧＢ／ｓ以下となる特定の帯域幅）で利用できることが動作条件となっている第１装置と、内蔵する集積回路１００において、システムＬＳＩチップ１０１がメモリチップ１０２を所定の帯域幅（ここでは、前述の特定の帯域幅）で利用できることが動作条件となっていない第２装置とを製造する場合の例は、上記例に限られない。一例として、第１装置が、高機能向け良品として選定された集積回路１００を内蔵する、デジタルテレビ放送番組を２番組同時デコードする機能を有する高機能版テレビであって、第２装置が、普及機能向け良品として選定された集積回路１００を内蔵する、デジタルテレビ放送を１番組デコードする機能を有する普及機能板テレビである場合の例等が考えられる。
（８）実施の形態１において、メモリアクセスコントローラ５１０は、通常用アドレス変換部６０１と救済用アドレス変換部６０２とセレクタ６０３とを備える構成の例であった。しかしながら、各マスタ（第１マスタ５０１〜第ｎマスタ５０３）とメモリチップ１０２との信号伝達経路のいずれかの部分に、通常用アドレス変換部６０１と救済用アドレス変換部６０２とセレクタ６０３とからなるブロックと同等の機能を有するブロックを備えていれば、必ずしも、メモリアクセスコントローラ５１０が、通常用アドレス変換部６０１と救済用アドレス変換部６０２とセレクタ６０３とを備える構成でなくても構わない。一例として、各マスタとメモリアクセスコントローラ５１０とがバスによって接続され、そのバスが、通常用アドレス変換部６０１と救済用アドレス変換部６０２とセレクタ６０３とからなるブロックと同等の機能を有するブロックを備える構成の例等が考えられる。
【０３１４】
また、実施の形態１において、メモリアクセスコントローラ５１０は、Ｒデータアラインメントバッファ６１４とＷデータアラインメントバッファ６１６とを備える構成の例であった。しかしながら、各マスタ（第１マスタ５０１〜第ｎマスタ５０３）とメモリチップ１０２との信号伝達経路のいずれかの部分に、Ｒデータアラインメントバッファ６１４とＷデータアラインメントバッファ６１６とからなるブロックと同等の機能を有するブロックを備えていれば、必ずしも、メモリアクセスコントローラ５１０が、Ｒデータアラインメントバッファ６１４とＷデータアラインメントバッファ６１６とを備える構成でなくても構わない。一例として、各マスタとメモリアクセスコントローラ５１０とがバスによって接続され、そのバスが、Ｒデータアラインメントバッファ６１４とＷデータアラインメントバッファ６１６とからなるブロックと同等の機能を有するブロックを備える構成の例等が考えられる。
（９）以下、さらに本発明の一実施形態に係るメモリアクセス制御装置の構成及びその変形例と各効果について説明する。
【０３１５】
（ａ）本発明の一実施形態に係るメモリアクセス制御装置は、外部のメモリにおける記憶領域の範囲を指定する論理アドレスを受け付ける論理アドレス受付部と、所定長のビット列における１以上のビット位置を示すビット位置情報を記憶するためのビット位置情報記憶部と、前記論理アドレス受付部によって受け付けられた論理アドレスに基づいて、当該論理アドレスによって指定される記憶領域の範囲のビット数よりも多いビット数のビット列を、前記所定長単位で前記メモリから読み出す試みを行う読出部と、前記読出部の行う前記読み出しの試みによって前記メモリから取り出されたビット列から、前記所定長単位で、前記ビット位置情報記憶部に記憶されるビット位置情報によって示されるビット位置のビットを抽出するビット列抽出部と、前記ビット列抽出部によって抽出された１以上のビット列から、前記論理アドレス受付部によって受け付けられた論理アドレスによって指定される記憶領域の範囲のビット数からなるビット列を生成して出力する出力部とを備えることを特徴とする。
【０３１６】
上述の構成を備える本実施の形態に係るメモリアクセス制御装置によると、ロジックチップとメモリチップとの間の接続不良等に起因して、ロジックチップが、メモリチップから送信されるビット列のうちの一部のビット列しか受信できないときであっても、その受信できるビット列のビット位置を示すビット位置情報をビット位置情報記憶部に記憶させておき、メモリチップの記憶領域のうちの、接続不良等の影響を受けずに受信することができるビット列によって読み出すことができる記憶領域にマスタが利用するデータを記憶させておくことで、マスタは、メモリチップを利用することができる。
【０３１７】
図３４は、上記変形例におけるメモリアクセス制御装置３４００の機能構成を示す機能構成図である。
【０３１８】
同図に示されるように、メモリアクセス制御装置３４００は、論理アドレス受付部３４１０とビット位置情報記憶部３４２０と読出部３４３０とビット列抽出部３４４０と出力部３４５０とから構成される。
【０３１９】
論理アドレス受付部３４１０は、読出部３４３０に接続され、外部のメモリにおける記憶領域の範囲を指定する論理アドレスを受け付ける機能を有する。一例として、実施の形態１における、（１）第１マスタインターフェース５１１のうちの、第１マスタ５０１から送り出されたマスタからのメモリコマンドを受け付けて、コマンドバッファに一時的に記憶し、記憶しているマスタからのメモリコマンドをコマンドアービタ５１６に出力する機能を実現する部分と、（２）コマンドアービタ５１６とからなる機能ブロックとして実現される。
【０３２０】
ビット位置情報記憶部３４２０は、ビット列抽出部３４４０に接続され、所定長のビット列における１以上のビット位置を示すビット位置情報を記憶する機能を有する。一例として、冗長救済回路５２０として実現される。
【０３２１】
読出部３４３０は、論理アドレス受付部３４１０とビット列抽出部３４４０とに接続され、論理アドレス受付部３４１０によって受け付けられた論理アドレスに基づいて、当該論理アドレスによって指定される記憶領域の範囲のビット数よりも多いビット数のビット列を、前記所定長単位で外部のメモリから読み出す試みを行う。一例として、実施の形態１における、救済用アドレス変換部６０２と、セレクタ６０３と、コマンドキュー６０４と、コマンド発行制御部６０５と、タイミング管理部６０６とからなる機能ブロックとして実現される。
【０３２２】
ビット列抽出部３４４０は、ビット位置情報記憶部３４２０と読出部３４３０と出力部３４５０とに接続され、読出部３４３０の行う読み出しの試みによって外部のメモリから取り出されたビット列から、前記所定長単位で、ビット位置情報記憶部３４２０に記憶されるビット位置情報によって示されるビット位置のビットを抽出する機能を有する。一例として、実施の形態１におけるデータ線冗長救済部６１１として実現される。
【０３２３】
出力部３４５０は、ビット列抽出部３４４０に接続され、ビット列抽出部３４４０によって抽出された１以上のビット列から、論理アドレス受付部３４１０によって受け付けられた論理アドレスによって指定される記憶領域の範囲のビット数からなるビット列を生成して出力する機能を有する。一例として、実施の形態１における、（１）データ並べ替え部６１２と、（２）属性付与部６１３と、（３）Ｒデータアラインメントバッファ６１４と、（４）データバッファ５１７と、（５）第１マスタインターフェース５１１のうちの、データバッファ５１７から送り出された、メモリチップ１０２の記憶領域から読み出されたデータを受け付けて、第１マスタ５０１に出力する機能を実現する部分とからなる機能ブロックとして実現される。
【０３２４】
（ｂ）また、前記メモリに書き込むためのビット列を受け付けるビット列受付部と、前記ビット列受付部によって受け付けられたビット列から、前記所定長よりも短いビット長からなる１以上の補正ビット列を生成する生成部と、前記生成部によって生成された補正ビット列それぞれを、前記ビット位置情報記憶部に記憶されるビット位置情報によって示されるビット位置にダミービットを挿入することで、前記所定長のビット列に拡張するビット列拡張部と、前記ビット列拡張部によって拡張された１以上のビット列からなるビット列を、前記論理アドレス受付部によって受け付けられた論理アドレスに基づいて、前記所定長単位で前記メモリに書き込む試みを行う書込部とを備えるとしてもよい。
【０３２５】
このような構成にすることで、ロジックチップとメモリチップとの間の接続不良等に起因して、メモリチップが、ロジックチップから送信されるビット列のうちの一部のビット列しか記憶できないときであっても、マスタは、利用するデータを、メモリチップを構成するメモリに記憶させることができる。
（ｃ）また、前記論理アドレス受付部によって受け付けられた論理アドレスを、当該論理アドレスによって指定される記憶領域の範囲のビット数よりも多いビット数の前記メモリにおける記憶領域の範囲を指定する物理アドレスに変換するアドレス変換部を備え、前記読出部は、前記アドレス変換部によって変換された物理アドレスによって指定される記憶領域の範囲に対して、前記読み出しの試みを行い前記書込部は、前記アドレス変換部によって変換された物理アドレスによって指定される記憶領域の範囲に対して、前記書き込みの試みを行うとしてもよい。
【０３２６】
このような構成にすることで、メモリアクセス制御装置は、アドレス変換部によって変換された物理アドレスを用いて、その物理アドレスによって指定される記憶領域の範囲へアクセスすることができる。
（ｄ）また、前記ビット位置情報記憶部が記憶するビット位置情報は、前記メモリアクセス制御装置と前記メモリとの通信に係る不具合に係る情報であり、前記メモリアクセス制御装置と前記メモリとの通信に係る処理を行うことで、前記メモリアクセス制御装置と前記メモリとの通信に係る不具合を検出する不具合検出部と、前記不具合検出部が前記不具合を検出した場合に、当該検出された不具合に応じて、前記ビット位置情報記憶部に記憶されている前記ビット位置情報を更新するビット位置情報更新部とを備えるとしてもよい。
【０３２７】
このような構成にすることで、メモリアクセス制御装置は、不具合検出部が検出したメモリとの通信に係る不具合に基づいて、内蔵するビット位置記憶情報記憶部が記憶するビット位置情報を更新できるようになる。
（ｅ）また、前記メモリは、複数のバンク記憶領域を有し、前記アドレス変換部は、前記物理アドレスへの変換を、物理アドレスによって指定される記憶領域が、前記複数のバンク記憶領域のうちの、少なくとも２つのバンク記憶領域に跨るように行うとしてもよい。
【０３２８】
このような構成にすることで、マスタは、少なくとも２つのバンク記憶領域を跨るように、メモリにおける記憶領域を利用するようになる。
（ｆ）また、前記アドレス変換部は、救済用アドレス変換部であり、前記メモリアクセス制御装置は、前記論理アドレス受付部によって受け付けられた論理アドレスを、当該論理アドレスによって指定される記憶領域の範囲のビット数と同じビット数の前記メモリにおける記憶領域の範囲を指定する物理アドレスに変換する通常用アドレス変換部と、前記救済用アドレス変換部によって変換された物理アドレスと前記通常用アドレス変換部によって変換された物理アドレスとのいずれかを選択するセレクタとを備え、前記読出部は、前記読み出しの試みを、前記セレクタが前記救済用アドレス変換部によって変換された物理アドレスを選択している場合に限って行い、さらに、前記セレクタが前記通常用アドレス変換部によって変換された物理アドレスを選択している場合に、当該物理アドレスによって指定される前記メモリにおける記憶領域の範囲に記憶されているビット列を、前記所定長単位で前記メモリから読み出し、前記出力部は、前記生成したビット列の出力を、前記セレクタが前記救済用アドレス変換部によって変換された物理アドレスを選択している場合に限って行い、さらに、前記セレクタが前記通常用アドレス変換部によって変換された物理アドレスを選択している場合に、前記読出部によって読み出されたビット列からなるビット列を出力し、前記書込部は、前記書き込みの試みを、前記セレクタが前記救済用アドレス変換部によって変換された物理アドレスを選択している場合に限って行い、さらに、前記セレクタが前記通常用アドレス変換部によって変換された物理アドレスを選択している場合に、前記ビット列受付部によって受け付けられたビット列を、当該物理アドレスによって指定される前記メモリにおける記憶領域の範囲に前記所定長単位で書き込む、としてもよい。
【０３２９】
このような構成にすることで、メモリアクセス制御装置は、選択部の選択状態に応じて、前記救済用アドレス変換部によって変換された物理アドレスと前記通常用アドレス変換部によって変換された物理アドレスとのいずれかを用いて、変換された物理アドレスによって指定される記憶領域の範囲へアクセスすることができるようになる。
（ｇ）また、前記読出部は、前記読み出しの試みにおける前記メモリへのアクセス回数の方が、前記論理アドレス受付部によって受け付けられた論理アドレスによって指定される記憶領域の範囲を前記所定長単位で読み出す試みを行う場合における前記メモリへのアクセス回数よりも多くなるように、前記試みを行うとしてもよい。
【０３３０】
このような構成にすることで、メモリアクセス制御装置は、読み出しの試みにおけるメモリへのアクセス回数を多くすることで、読み出しの試みの対象となるビット列のビット数を多くすることができるようになる。
（ｈ）本発明の一実施形態に係る製造方法は、メモリを有する第１チップと当該メモリにアクセスするマスタを含む第２チップとを備え、当該第１チップと当該第２チップとが１つのパッケージに封入されてなる集積回路を内蔵する第１又は第２の装置を製造する製造方法であって、前記第１の装置は、前記マスタによる前記メモリへのアクセスにおけるビットレートが所定のビットレート以上確保されていることを動作条件とする装置であり、前記第２の装置は、前記マスタによる前記メモリへのアクセスにおけるビットレートが前記所定のビットレート以上確保されていることを動作条件としない装置であり、前記集積回路を対象として、前記マスタによる前記メモリへのアクセスに係る検査を行うことで、前記マスタによる前記メモリへのアクセスにおけるビットレートが前記所定のビットレート以上確保することが可能であるか否かを評価する評価ステップと、前記評価ステップによって、評価対象となった集積回路が肯定的な評価をされた場合に、当該集積回路を内蔵して前記第１の装置を製造する第１製造ステップと、前記評価ステップによって、評価対象となった集積回路が否定的な評価をされた場合に、当該集積回路を内蔵して前記第２の装置を製造する第２製造ステップとを含むことを特徴とする。
【０３３１】
上述の構成を備える本実施の形態に係る製造方法によると、マスタによるメモリへのアクセスにおけるビットレートが所定のビットレート以上確保されていないことが原因で第１の装置に内蔵されて利用されることができない集積回路であっても、第２の装置に内蔵されて利用されるようになる。
（ｉ）また、前記集積回路は、前記第１チップと前記第２チップとが複数のバンプを介して電気的に接続されて構成され、前記マスタは、前記複数のバンプのうちの少なくとも１つのアクセス用バンプを介して前記メモリへのアクセスに係るデータ通信を行い、前記検査は、前記アクセス用バンプについての電気的接続不良に係る検査を含むとしてもよい。
【０３３２】
このような構成にすることで、アクセス用バンプの接続不良によって、マスタによるメモリへのアクセスにおけるビットレートが所定のビットレート以上確保されない集積回路であっても、第２の装置に内蔵されて利用されるようになる。
【産業上の利用可能性】
【０３３３】
本発明は、メモリを利用する装置に広く利用することができる。
【符号の説明】
【０３３４】
１００  集積回路
１０１  システムＬＳＩチップ
１０２  メモリチップ
５１０  メモリアクセスコントローラ
５１１  第１マスタインターフェース
５１２  第２マスタインターフェース
５１３  第ｎマスタインターフェース
５１６  コマンドアービタ
５１７  データバッファ
５１９  外部メモリ制御回路
５２０  冗長救済回路
５２１  イーヒューズ回路
６０１  通常用アドレス変換部
６０２  救済用アドレス変換部
６０３  セレクタ
６０４  コマンドキュー
６０５  コマンド発行制御部
６０６  タイミング管理部
６１１  データ線冗長救済部
６１２  データ並べ替え部
６１３  属性付与部
６１４  Ｒデータアラインメントバッファ
６１５  データ並べ替え部
６１６  Ｗデータアラインメントバッファ
【図１】
0006011953.tif 000002
【図２】
0006011953.tif 000003
【図３】
0006011953.tif 000004
【図４】
0006011953.tif 000005
【図５】
0006011953.tif 000006
【図６】
0006011953.tif 000007
【図７】
0006011953.tif 000008
【図８】
0006011953.tif 000009
【図９】
0006011953.tif 000010
【図１０】
0006011953.tif 000011
【図１１】
0006011953.tif 000012
【図１２】
0006011953.tif 000013
【図１３】
0006011953.tif 000014
【図１４】
0006011953.tif 000015
【図１５】
0006011953.tif 000016
【図１６】
0006011953.tif 000017
【図１７】
0006011953.tif 000018
【図１８】
0006011953.tif 000019
【図１９】
0006011953.tif 000020
【図２０】
0006011953.tif 000021
【図２１】
0006011953.tif 000022
【図２２】
0006011953.tif 000023
【図２３】
0006011953.tif 000024
【図２４】
0006011953.tif 000025
【図２５】
0006011953.tif 000026
【図２６】
0006011953.tif 000027
【図２７】
0006011953.tif 000028
【図２８】
0006011953.tif 000029
【図２９】
0006011953.tif 000030
【図３０】
0006011953.tif 000031
【図３１】
0006011953.tif 000032
【図３２】
0006011953.tif 000033
【図３３】
0006011953.tif 000034
【図３４】
0006011953.tif 000035