(57)【要約】【課題】異なるバンクに対して書き込みコマンドと読み出しコマンドを待ち時間無く切り換えて発行してバンクインターリーブ動作することを可能にし、データの転送効率の低下を抑えた半導体装置を提供する。【解決手段】メモリセルを１つ以上含むバンクが複数設けられたメモリチップと、ロジックチップとを有する半導体装置であって、バンクとロジックチップとの間で書き込みデータおよび読み出しデータを送受信するためのデータバスがバンクに対応して設けられ、また、書き込みデータをデータバスを介してメモリチップに送るための書き込みデータバスおよび読み出しデータをメモリチップからデータバスを介して受け取るための読み出しデータバスと、バンクへの書き込みコマンドまたは読み出しコマンドに対応してバンクに接続されたデータバスに書き込みデータバスまたは読み出しデータバスを接続するスイッチとがロジックチップに設けられた構成である。【選択図】図１
2008140220.tif 000002
【特許請求の範囲】
【請求項１】
メモリセルを１つ以上含むバンクが複数設けられたメモリチップと、該メモリチップに書き込みコマンドおよび書き込みデータを送信し、または前記メモリチップに読み出しコマンドを送信して該メモリチップから読み出しデータを受信するロジックチップとを有する半導体装置であって、
前記バンクに対応して、該バンクと前記ロジックチップとの間で前記書き込みデータおよび前記読み出しデータを送受信するためのデータバスが設けられ、
前記ロジックチップに、
前記書き込みデータを前記データバスを介して前記メモリチップに送るための書き込みデータバスおよび前記読み出しデータを前記メモリチップから前記データバスを介して受け取るための読み出しデータバスと、前記バンクへの書き込みコマンドまたは読み出しコマンドに対応して該バンクに接続されたデータバスに前記書き込みデータバスまたは前記読み出しデータバスを接続するスイッチとが設けられた、半導体装置。
【請求項２】
請求項１記載の半導体装置において、
複数の前記メモリチップが積層され、
異なるメモリチップの前記バンクが前記データバスを共有する、半導体装置。
【請求項３】
請求項１または２記載の半導体装置において、
前記ロジックチップは、
異なるデータバスに接続された２つの前記バンクのうち一方のバンク宛の読み出しコマンドと他方のバンク宛の書き込みコマンドとを連続したクロックサイクルで発行する、半導体装置。
【請求項４】
請求項２記載の半導体装置において、
前記ロジックチップは、
１つの前記バンクに対して、前記書き込みコマンドを発行してから前記データバスへ書き込みデータを送信するまでの書き込みレイテンシと、前記読み出しコマンドを発行してから前記バンクがデータバスへ前記読み出しデータを送信するまでの読み出しレイテンシとを等しくして、前記読み出しコマンドと前記書き込みコマンドとを連続したクロックサイクルで発行する、半導体装置。
【請求項５】
請求項４記載の半導体装置において、
前記バンクと前記データバスとの間に、前記書き込みデータまたは前記読み出しデータの伝送を所定のクロックサイクルだけ遅らせるためのレジスタが設けられた半導体装置。
【請求項６】
請求項１から５のいずれか１項記載の半導体装置において、
前記メモリチップ内で隣り合うバンクが前記データバスを共有する半導体装置。
【請求項７】
請求項１から６のいずれか１項記載の半導体装置において、
前記読み出しコマンドおよび前記書き込みコマンドを前記メモリチップに発行し、該メモリチップとデータの受け渡しを行うプロセッサが前記ロジックチップに１つ以上設けられた半導体装置。
【請求項８】
請求項１から７のいずれか１項記載の半導体装置において、
外部とのデータの受け渡しを行うための、データの伝送経路が受信側と送信側とで分離されたインターフェース部が前記ロジックチップに設けられた半導体装置。
【請求項９】
請求項１から８のいずれか１項記載の半導体装置において、
前記メモリチップとは別に、メモリセルを１つ以上含むバンクが前記ロジックチップに複数設けられた半導体装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体メモリ、特にＤＲＡＭのアクセス効率を高める半導体装置に関する。
【背景技術】
【０００２】
半導体集積回路の微細化・高集積化技術の進展に伴い、ＤＲＡＭ（ダイナミック型ランダムアクセスメモリ）やＳＲＡＭ（スタティック型ランダムアクセスメモリ）はメモリの大容量化を果たしてきた。しかしながら半導体微細化には限界があるために、更なる大容量化には新たな技術の導入が求められている。その一技術として半導体チップを積層した３次元半導体が提案されている。
【０００３】
半導体チップを積層してチップ面積を変えずに大規模集積回路を実現する手段が特許文献１に記載されており、半導体集積回路本体の上に積層した別チップにメモリ回路を集積している。メモリセルアレイを多層化してさらに大容量化した多層メモリ構造が、特許文献２、特許文献３および特許文献４に開示されている。
【０００４】
特許文献２では多層メモリチップがメモリ周辺回路をそれぞれのチップで持たずに１つのチップに集めて、チップ面積に占める周辺回路の領域を削減している。特許文献３では多層メモリ装置を製造後に、メモリ層を選別して不良メモリ層を除去することが可能である。特許文献４では積層メモリの入出力ビット構成を、データバス配線の組み合わせの変更により再構成する。
【特許文献１】特開平４−１９６２６３号公報
【特許文献２】特開２００２−２６２８３号公報
【特許文献３】特開２００３−２０９２２２号公報
【特許文献４】特開２００６−１２３３７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上述した積層型メモリ装置の場合はいずれにあっても限られたチップ面積でメモリの容量を増加させることが可能であるが、データ転送をいかにして効率的に行うかということについては記述されていない。一方で、メモリとつながるプロセッサの高性能化に伴い、メモリ装置には大容量化だけではなく、メモリデータの転送効率の向上も求められている。
【０００６】
従来のＤＲＡＭメモリチップでは、図１８に示すようにチップ面内のグローバルな配線を使ったデータバスがバンク間で共有され、なおかつ書き込みデータと読み出しデータが同一のバスを用いる双方向バスであることから、データバス上で書き込みデータと読み出しデータの衝突を避けるために、同一バンクのみならず異なるバンク間でも読み出しコマンドと書き込みコマンドの間に数サイクルの待機時間が必要であった。このためプロセッサとＤＲＡＭメモリとのデータ転送効率が低下して、プロセッサでのデータ処理を一時停止する必要があった。図１９のようにＤＲＡＭチップをパッケージしたデバイスを複数個、ボード上に並べてバスを共有する場合も同様である。
【０００７】
これを回避するためには、バンクが書き込みデータの入力部と読み出しデータの出力部を分けて持ち、なおかつ、各バンクが共有するデータバスについて書き込みデータ用と読み出しデータ用にバスを分離することが考えられる。これにより、書き込みデータと読み出しデータが別のバスを通ることになるので、読み出しコマンドと書き込みコマンドの間の待機時間は必要なくなる。
【０００８】
ただし、このように書き込みデータ用と読み出しデータ用のデータバスを別に設けることは、データ用の配線数が倍増することになる。チップ積層型のメモリ装置の場合、チップ間の配線はチップを貫通した配線である貫通配線を用いるが、この配線はチップ薄膜の５０μｍ程度の厚さまで貫通する孔をあけて配線用の導電体を充填しているために直径が２０μｍと面内配線のものに比べて一桁以上大きい。したがって限られた領域に多くの貫通配線を形成することができないので、書き込み用のデータと読み出し用のデータについて共通のデータバスにして貫通配線密度を減らすことが望ましい。
【０００９】
本発明は上述したような従来の技術が有する問題点を解決するためになされたものであり、異なるバンクに対して書き込みコマンドと読み出しコマンドを待ち時間無く切り換えて発行してバンクインターリーブ動作することを可能にし、データの転送効率の低下を抑えた半導体装置を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成するための本発明の半導体装置は、メモリセルを１つ以上含むバンクが複数設けられたメモリチップと、該メモリチップに書き込みコマンドおよび書き込みデータを送信し、または前記メモリチップに読み出しコマンドを送信して該メモリチップから読み出しデータを受信するロジックチップとを有する半導体装置であって、
前記バンクに対応して、該バンクと前記ロジックチップとの間で前記書き込みデータおよび前記読み出しデータを送受信するためのデータバスが設けられ、
前記ロジックチップに、
前記書き込みデータを前記データバスを介して前記メモリチップに送るための書き込みデータバスおよび前記読み出しデータを前記メモリチップから前記データバスを介して受け取るための読み出しデータバスと、前記バンクへの書き込みコマンドまたは読み出しコマンドに対応して該バンクに接続されたデータバスに前記書き込みデータバスまたは前記読み出しデータバスを接続するスイッチとが設けられた構成である。
【００１１】
本発明では、ロジックチップ内に書き込みデータバスと読み出しデータバスが設けられており、メモリチップのバンクからデータを読み出す際、スイッチの切り替えによりデータバスが読み出しデータバスに接続される。一方、メモリチップのバンクにデータを書き込む際、スイッチの切り替えによりデータバスが書き込みデータバスに接続される。ロジックチップ内では書き込みデータと読み出しデータが異なるバスで伝送されるため、書き込みデータと読み出しデータの衝突を避けることが可能となり、書き込みと読み出しの間隔が従来よりも短縮される。
【発明の効果】
【００１２】
本発明によれば、チップ間のデータ転送の際、読み出しデータと書き込みデータがデータバス上で衝突することを回避して、メモリチップの全てのバンクについて読み出しコマンドと書き込みコマンドを待ち時間なく切り換えて発行してバンクインターリーブ動作することが可能である。
【発明を実施するための最良の形態】
【００１３】
本実施形態の半導体装置の構成を説明する。
【００１４】
図１は、メモリチップ１とメモリチップ２の２枚のメモリチップを積層した積層メモリを１枚のロジックチップ３上に積層した半導体装置の断面図である。図２は図１の半導体装置内の構成を模式的に示した図である。
【００１５】
図２に示すように、積層メモリは、ロジックチップ３の上にメモリチップ２、１が順に積層されている。ロジックチップ３は、演算を行うロジック回路１１と、メモリチップ１、２の制御を行うメモリコントローラ１０とを有する。各チップの表面には面内配線層１０１が設けられている。メモリチップ１、２は、表面から裏面に貫通する導電性の貫通配線１０２が設けられている。メモリチップ１とメモリチップ２はバンプ１０３を介して接続され、メモリチップ２とロジックチップ３はバンプ１０３を介して接続されている。
【００１６】
図２に示すように、積層メモリの各メモリチップは記憶領域が４つのバンクに分割されている。メモリチップ１にはバンクＡ〜Ｄが設けられ、メモリチップ２にはバンクＥ〜Ｈが設けられている。ロジックチップ３と積層メモリのバンクとの間でデータを送受信するためのデータバスがロジックチップ３とメモリチップとの間に４つ（データバス４、データバス５、データバス６、データバス７）設けられている。この数は、１つのメモリチップのバンクの数に対応している。
【００１７】
バンクＡとバンクＥはデータバス４を共有している。同様に、バンクＢとバンクＦはデータバス５を共有し、バンクＣとバンクＧはデータバス６を共有し、バンクＤとバンクＨはデータバス７を共有している。異なるチップ間で対応するバンク同士はデータバスを共有するが、同じチップ内の複数のバンクはデータバスを共有しない。データバス４〜７にチップ間のデータ転送を行うための貫通配線１０２を使用し、さらに、より配線密度を小さくするために、データバス４〜７は書き込みデータと読み出しデータの双方向バスとなっている。
【００１８】
ロジックチップ３内には、書き込みデータバス（ＷＤＢ）８および読み出しデータバス（ＲＤＢ）９と、これら２つのバスをデータバス４〜７に選択的に接続するＳＷ０〜ＳＷ３のセレクタスイッチとが設けられている。セレクタスイッチＳＷ０〜ＳＷ３を切り替えることで、書き込みデータバス８および読み出しデータバス９のそれぞれの接続先を積層メモリの４つのデータバス４〜７の任意のバスに選択することを可能にしている。セレクタスイッチＳＷ０〜ＳＷ３は、メモリコントローラ１０からコマンドが発行されると、コマンドの宛先のバンクに接続されるデータバスに、コマンドの種類に応じて書き込みデータバス８または読み出しデータバス９を接続する。書き込みデータバス８と読み出しデータバス９は、コマンドとデータの転送タイミング調整を行うメモリコントローラ１０を介してロジック回路１１と接続される。
【００１９】
上述した本実施形態の半導体装置において、例えば、データバス４につながるバンクＡについてメモリコントローラ１０から読み出しコマンドを発行した直後に別のデータバス５につながるバンクＦについて書き込みコマンドを発行した場合を説明する。
【００２０】
メモリコントローラ１０およびバンクＡ間のデータのやり取りは、データバス４から読み出しデータバス９までの経路で行われる。メモリコントローラ１０およびバンクＦ間のデータのやり取りは、書き込みデータバス８からデータバス５までの経路で行われる。よって、これらの経路は異なっている。また、書き込みコマンドを発行した直後に別のデータバスにつながるバンクに読み出しコマンドを発行した場合も同様に経路が異なる。
【００２１】
書き込みと読み出しのデータ通信経路が異なっており、データバスを共有しないバンク間では書き込みデータと読み出しデータの衝突が起こらないため、書き込みのコマンド発行と読み出しコマンド発行との間に待ち時間が必要なく、連続してコマンド発行することが可能になる。
【００２２】
また、本実施形態の半導体装置では、データバスを共有する異なるチップのバンクでのインターリーブ動作の際、メモリコントローラ１０は次のような制御を行ってもよい。メモリコントローラ１０は、読み出しコマンドを発行した後に読み出しデータがバンクからデータバスへ送信されるまでの読み出しレイテンシと、書き込みコマンドを発行した後に書き込みデータをデータバスへ送信するまでの書き込みレイテンシが等しくなるように制御する。
【００２３】
これにより、例えば、バンクＡに読み出しコマンドを発行し、続けて別チップのバンクＥへ書き込みコマンドを発行するような場合、あるいは、バンクＡに書き込みコマンドを発行し、続けてバンクＥへ読み出しコマンドを発行するような場合のいずれでも、データバス４上で読み出しデータと書き込みデータの衝突を避けることが可能である。チップ間配線はチップ厚が５０μｍ程度であり、配線長が非常に短いためデータ波形のなまりは小さく、１クロックサイクルで読み出しデータと書き込みデータを切り換えられる。つまり、書き込みコマンドと読み出しコマンドを連続して切り換えて発行して、バンクとのデータのやり取りを行うことが可能になる。
【００２４】
以下に、本発明の半導体装置の実施例を、図面を参照して詳細に説明する。
【実施例１】
【００２５】
本実施例の半導体装置の構成を説明する。図３は本実施例の半導体装置の一構成例を示す図である。
【００２６】
図３に示すように、本実施例の半導体装置は、積層メモリと、プロセッサ２１を含むロジックチップであるプロセッサチップ１４とを有する。積層メモリは、ＤＲＡＭチップ１２とＤＲＡＭチップ１３の２チップが積層されたもので、各ＤＲＡＭチップは４バンク構成である。ＤＲＡＭチップ１２にはバンクＡ〜Ｄが設けられ、ＤＲＡＭチップ１３にはバンクＥ〜Ｈが設けられている。
【００２７】
図４はＤＲＡＭチップのバンクの構成例を示すブロック図である。図４に示すように、バンクＡ〜Ｈのそれぞれは、２５６Ｍビットのメモリセルアレイ２４と、アドレスラッチ２５と、ロウデコーダ２６およびカラムデコーダ２７のアドレスデコーダとを有する構成である。そのため、バンク毎に独立して書き込み、あるいは読み出し動作が可能である。図には示さないがアドレスラッチとデータバッファにはクロックが入力しており、メモリアレイへのアドレスの送信とデータの入出力は、クロックに同期して動作している。また、積層メモリのメモリチップとプロセッサチップには、同じタイミングのクロックを分配しているので、メモリチップとプロセッサチップの間のデータバスを使ったデータの受け渡しはクロックに同期して行える。
【００２８】
図３に示すように、積層したＤＲＡＭチップ間で、バンクＡとバンクＥがデータバス１５を共有し、バンクＢとバンクＦがデータバス１６を共有し、バンクＣとバンクＧがデータバス１７を共有し、バンクＤとバンクＨがデータバス１８を共有する。ＤＲＡＭチップ内のバンク同士は、データ転送の遅くなるグローバルな長配線を避けるためにデータバスを共有していない。
【００２９】
データバスのチップ間接続には、チップを貫通した配線である貫通配線１０２が用いられている。ＤＲＡＭチップ１２、１３の厚みを５０μｍまで薄くしているため、貫通配線１０２の長さは５０μｍ程度である。チップ面内のグローバルな配線を使った場合の配線長が１０ｍｍ程度に及ぶことに比べると非常に短く、チップ間には１０ＧＨｚサイクルの高速のデータ転送を行うことが可能である。ただし、貫通配線１０２は直径が２０μｍと大きく、配線密度を大きくすることが困難であるため、貫通配線１０２を含むデータバスは読み出しデータ用と書き込みデータ用を共通化した双方向バスになっている。
【００３０】
積層メモリとプロセッサチップ１４とは４つのデータバス１５〜１８で接続されている。プロセッサチップ１４内には、書き込みデータバス（ＷＤＢ）１９および読み出しデータバス（ＲＤＢ）２０と、これら２つのバスをデータバス１５〜１８に選択的に接続するＳＷ０〜ＳＷ３のセレクタスイッチとが設けられている。セレクタスイッチＳＷ０〜ＳＷ３は、プロセッサ２１からコマンドが発行されると、コマンドの宛先のバンクに接続されるデータバスに、コマンドの種類に応じて書き込みデータバス１９または読み出しデータバス２０を接続する。発行されるコマンドに対応して、いずれかのデータバスが書き込みデータバス１９または読み出しデータバス２０とセレクタスイッチを介して接続される。プロセッサチップ１４内にバスを２つ設けることで、プロセッサ２１からの書き込みデータとプロセッサへの読み出しデータの入出力が分離される。ここでのプロセッサ２１にはメモリコントローラの機能も含まれる。
【００３１】
また、積層メモリおよびプロセッサチップ１４の間には、コマンドバス（ＣＭＤ）２２と、アドレスバス（ＡＤＲ）２３とが接続されている。バンクを活性化状態にするアクティブコマンドと、読み出し命令を行う読み出しコマンドと、書き込み命令を行う書き込みコマンドは、プロセッサ２１から積層メモリへの一方向の転送であり、コマンドバス２２を介して全てのバンクＡ〜Ｈに送られる。アドレスの情報も、コマンド等と同様にプロセッサ２１から積層メモリへの一方向の転送であり、アドレスバス２３を介して全てのバンクＡ〜Ｈに送られる。
【００３２】
次に、積層メモリとプロセッサチップ間の各種動作モードを説明する。図５は、図３に示した積層メモリのＤＲＡＭチップ１２のバンクＡにあるメモリセルへのデータ読み出しの動作モードを示す図である。
【００３３】
まず、プロセッサ２１が、バンクＡを活性化するためのアクティブコマンドＡＣＴ、バンクＡを指定するためのバンクアドレスＡ、およびロウアドレスＲＯＷの信号を積層メモリに向けて送信する。続いて、読み出しコマンドＲＥＡＤ、バンクアドレスＡおよびカラムアドレスＣＯＬの信号を積層メモリに向けて送信する。ＤＲＡＭチップ１２は、プロセッサ２１からそれらの信号を受信すると、クロックの３サイクル後にバンクＡ内のアドレスで指定された３２ビット分のメモリセルから、バースト長を２として、１６ビットデータＲＤａ１と、１６ビットデータＲＤａ２とを読み出して連続してデータバス１５へ送出する。ＤＲＡＭチップ１２からデータバス１５に送出されたデータは、次のクロックサイクルでプロセッサ２１に取り込まれる。
【００３４】
図６は、図３に示した積層メモリのＤＲＡＭチップ１２のバンクＢにあるメモリセルへのデータ書き込みの動作モードを示す図である。まず、プロセッサ２１が、バンクＢを活性化するためのアクティブコマンドＡＣＴ、バンクＢを指定するためのバンクアドレスＢ、およびロウアドレスＲＯＷの信号を積層メモリに向けて送信する。続いて、書き込みコマンドＷＲＩＴＥ、バンクアドレスＢおよびカラムアドレスＣＯＬの信号を積層メモリに向けて送信する。さらに、プロセッサ２１は、クロックの４サイクル後に、バンクＢへ書き込むための３２ビット分の書き込みデータとして、１６ビットデータＷＤｂ１と１６ビットデータＷＤｂ２とをバースト長を２として連続でデータバス１６を介してＤＲＡＭチップ１２のバンクＢに送信する。
【００３５】
図７は、データバスが異なる複数のバンクのそれぞれに対する、読み出しまたは書き込みのインターリーブ動作モードを示す図である。プロセッサ２１は、アクティブコマンドＡＣＴおよび読み出しコマンドＲＥＡＤを積層メモリのＤＲＡＭチップ１２のバンクＡに対して発行する。続いて、アクティブコマンドＡＣＴおよび書き込みコマンドＷＲＩＴＥを積層メモリのＤＲＡＭチップ１２のバンクＢに対して発行する。さらに、アクティブコマンドＡＣＴおよび読み出しコマンドＲＥＡＤを積層メモリのＤＲＡＭチップ１２のバンクＣに対して発行する。なお、各バンクに対して、ロウアドレスＲＯＷおよびカラムアドレスＣＯＬの信号を送出するのは図５および図６の場合と同様である。
【００３６】
続いて、プロセッサ２１は、ＳＷ１を動作させて書き込みデータバス１９とデータバス１６を接続し、バンクＢへの書き込みコマンドを発行してから４サイクル後に書き込みデータバス１９およびデータバス１６を介して書き込みデータＷＤｂ１、ＷＤｂ２をバンクＢに送出する。バンクＢは、プロセッサ２１からコマンドを受け取り、書き込みデータＷＤｂ１、ＷＤｂ２を受信すると、これらのデータを書き込む。
【００３７】
また、プロセッサ２１は、ＳＷ０とＳＷ２を動作させてデータバス１５およびデータバス１７を読み出しデータバス２０に接続する。バンクＡは、プロセッサ２１からコマンドを受け取ると、データの読み出しを行い、バンクＡへのコマンド発行から３サイクル後に読み出しデータＲＤａ１、ＲＤａ２をデータバス１５および読み出しデータバス２０を介してプロセッサ２１に向けて送信する。一方、バンクＣは、プロセッサ２１からコマンドを受け取ると、データの読み出しを行い、バンクＣへのコマンド発行から３サイクル後に読み出しデータＲＤｃ１、ＲＤｃ２をデータバス１７および読み出しデータバス２０を介してプロセッサ２１に向けて送信する。データバス１５、１７のそれぞれに送出されたデータはＳＷ０とＳＷ２のそれぞれを経由して、読み出しデータバス２０を介してプロセッサ２１へ転送される。
【００３８】
このようにして、読み出しデータと書き込みデータはデータバス上で衝突することはなく各バンクとプロセッサとのやり取りできるため、プロセッサにおいて読み出しコマンド発行と書き込みコマンド発行との間に待ち時間が生じない。
【００３９】
本実施例の半導体装置では、ＤＲＡＭチップ１２にある３つのバンクについて読み出しと書き込みのインターリーブ動作を行う場合を説明したが、異なるチップのバンク間でもデータバスが異なれば同様に読み出しコマンドと書き込みコマンドを連続して発行してインターリーブ動作を行うことが可能である。
【００４０】
また、本実施例では、積層メモリは２枚のメモリチップを積層したものであったが、１枚だけであっても、また３枚以上積層したものであっても同様の動作が可能である。また、本実施例では、積層メモリとプロセッサチップとを積層した構成であったが、積層メモリとプロセッサチップとの位置を離してお互いの通信をボード上の配線で行う場合でも、同様の動作が可能である。
【００４１】
さらに、本実施例ではデータバスのチップ間接続に貫通配線を用いたが、バンプやボンディングワイヤとしてもよい。
【実施例２】
【００４２】
本実施例の半導体装置の構成を説明する。図８は本実施例の半導体装置の一構成例を示す図である。
【００４３】
図８に示すように、本実施例の半導体装置は、積層メモリと、プロセッサ３７を含むロジックチップであるプロセッサチップ３０とを有する。積層メモリはＤＲＡＭチップ２８とＤＲＡＭチップ２９の２チップが積層されたもので、各ＤＲＡＭチップは４バンク構成である。図４に示したのと同様に、各バンクは、２５６Ｍビットのメモリセルアレイ２４と、アドレスラッチ２５と、ロウデコーダ２６およびカラムデコーダ２７のアドレスデコーダとを有する構成である。そのため、バンク毎に独立して書き込み、あるいは読み出し動作が可能である。
【００４４】
図８に示すように、積層したＤＲＡＭチップ間で、バンクＡとバンクＥがデータバス３１を共有し、バンクＢとバンクＦがデータバス３２を共有し、バンクＣとバンクＧがデータバス３３を共有し、バンクＤとバンクＨがデータバス３４を共有する。ＤＲＡＭチップ内のバンク同士はデータ転送の遅くなるグローバルな長配線を避けるためにデータバスを共有していない。
【００４５】
データバスのチップ間接続は、実施例１と同様に、チップを貫通した配線である貫通配線１０２が用いられている。ＤＲＡＭチップ２８、２９の厚みを５０μｍまで薄くしているため、貫通配線１０２の長さは５０μｍ程度である。チップ面内のグローバルな配線を使った場合の配線長が１０ｍｍ程度に及ぶことに比べると非常に短く、チップ間は１０ＧＨｚサイクルの高速のデータ転送を行うことが可能である。ただし、貫通配線１０２は直径が２０μｍと大きく、配線密度を大きくすることが困難であるため、貫通配線１０２を含むデータバスは読み出しデータ用と書き込みデータ用を共通化した双方向バスになっている。
【００４６】
本実施例では、バンクとデータバスの間に、書き込みデータを伝送するためのサブデータバス４０と、読み出しデータを伝送するためのサブデータバス４１と、サブデータバス４０に接続され、書き込みデータのみを所定サイクルだけ伝送を遅らせるためのレジスタ４２とが設けられている。バンクとデータバス間に流れるデータをサブデータバス４０またはサブデータバス４１に切り替えるためのスイッチが、サブデータバス４０側に２つ設けられ、サブデータバス４１側に１つ設けられている。以下に、図８に示すバンクＡの場合で動作を簡単に説明する。
【００４７】
バンクＡからデータを読み出す際、データはサブデータバス４１を経由してデータバス３１に送られる。バンクＡにデータを書き込む際、データバス３１からのデータは、サブデータバス４０およびレジスタ４２を経由してバンクＡに送られる。
【００４８】
積層メモリとプロセッサチップ３０とは４つのデータバス３１〜３４で接続されている。プロセッサチップ３０内には実施例１と同様にセレクタスイッチＳＷ０〜ＳＷ３が設けられ、データバス３１〜３４のうちいずれかが、発行されるコマンドに対応して、書き込みデータバス（ＷＤＢ）３５または読み出しデータバス（ＲＤＢ）３６とセレクタスイッチを介して接続される。プロセッサチップ３０内にバスを２つ設けることで、プロセッサ３７からの書き込みデータとプロセッサ３７への読み出しデータの入出力が分離される。ここでのプロセッサ３７にはメモリコントローラの機能も含まれる。また、本実施例のメモリコントローラは、書き込みデータの送信タイミングを調整し、書き込みレイテンシを実施例１よりもクロック１サイクルだけ早くする。
【００４９】
また、積層メモリおよびプロセッサチップ１４の間には、実施例１と同様に、コマンドバス（ＣＭＤ）３８と、アドレスバス（ＡＤＲ）３９とが設けられている。各バンクを活性化状態にするアクティブコマンドと、読み出し命令を行う読み出しコマンドと、書き込み命令を行う書き込みコマンドはプロセッサ３７から積層メモリへの一方向の転送であり、コマンドバス３８を介して全てのバンクＡ〜Ｈに送られる。アドレスの情報もコマンドと同様に、プロセッサ３７から積層メモリへの一方向の転送であり、アドレスバス３９を介して全てのバンクＡ〜Ｈに送られる。
【００５０】
次に、積層メモリとプロセッサチップ間の各種動作モードを説明する。図９は、図８に示した積層メモリのＤＲＡＭチップ２８のバンクＡにあるメモリセルへのデータ読み出しの動作モードを示す図である。
【００５１】
まず、プロセッサ３７が、バンクＡを活性化するためのアクティブコマンドＡＣＴ、バンクＡを指定するためのバンクアドレスＡ、およびロウアドレスＲＯＷの信号を積層メモリに向けて送信する。続いて、読み出しコマンドＲＥＡＤ、バンクアドレスＡ、カラムアドレスＣＯＬの信号を積層メモリに向けて送信する。ＤＲＡＭチップ２８は、プロセッサ３７からそれらの信号を受信すると、クロックの３サイクル後にバンクＡ内のアドレスで指定された３２ビット分のメモリセルから、バースト長を２として、１６ビットデータＲＤａ１と、１６ビットデータＲＤａ２とを読み出して、サブデータバス４０を介して連続してデータバス３１へ送出する。ＤＲＡＭチップ２８からデータバス３１に送出されたデータは、次のクロックサイクルでプロセッサ３７に取り込まれる。
【００５２】
図１０は、図８に示した積層メモリのＤＲＡＭチップ２９のバンクＥにあるメモリセルへのデータ書き込みの動作モードを示す図である。まず、プロセッサ３７が、バンクＥを活性化するためのアクティブコマンドＡＣＴ、バンクＥを指定するためのバンクアドレスＥ、およびロウアドレスＲＯＷの信号を積層メモリに向けて送信する。続いて、書き込みコマンドＷＲＩＴＥ、バンクアドレスＥおよびカラムアドレスＣＯＬの信号を積層メモリに向けて送信する。さらに、プロセッサ３７は、クロックの３サイクル後に、バンクＥへ書き込むための３２ビット分の書き込みデータとして、１６ビットデータＷＤｅ１と１６ビットデータＷＤｅ２とをバースト長２でデータバス３１を介してＤＲＡＭチップ２９のバンクＥに向けて連続して送信する。
【００５３】
このサイクル数は、図９に示した読み出し動作の際のコマンド発行からデータバスに読み出しデータが送られるまでの読み出しレイテンシの３サイクルに合わせている。通常のバンクの回路の性能では、書き込みコマンドを受けてからメモリセルにデータを書き込むのを開始するまでに必要な準備時間を考えると、実施例１の図６のように書き込みレイテンシは４が妥当であるが、本実施例ではデータバスを通るデータの読み出しレイテンシと書き込みレイテンシが等しくなるように、プロセッサ内部のメモリコントローラで書き込みデータの送信タイミングを調整して書き込みレイテンシをクロック１サイクルだけ早くしている。
【００５４】
ここで、従来のＤＲＡＭにおいて、読み出しレイテンシと書き込みレイテンシについて説明する。読み出しレイテンシとは、ＤＲＡＭへ読み出しコマンドを入力してからＤＲＡＭの入出力バッファより外部に読み出しデータが出力されるまでのタイミングを指す。書き込みレイテンシとは、ＤＲＡＭへ書き込みコマンドを入力してから外部より入出力バッファへ書き込みデータを入力するまでのタイミングを指す。従来のＤＲＡＭには、本実施例の積層メモリには設けられていない入出力バッファが設けられているため、入出力バッファをデータが通過する際、入出力バッファでの処理によりデータ書き込みよりもデータ読み出しのレイテンシが長くなる。そのため、読み出しレイテンシの方が書き込みレイテンシよりも長いのが一般的である。
【００５５】
従来のＤＲＡＭにおいて読み出しレイテンシと書き込みレイテンシを合わせる場合には、データ読み出しの際、入出力バッファの処理にクロック１サイクル分を見込んで、読み出しレイテンシをクロック４サイクルとすると、書き込みレイテンシがそれより短いクロック３サイクルであっても、それらのレイテンシを合わせるために書き込みレイテンシをクロック４サイクルとする必要があった。
【００５６】
実施例１の半導体装置においても、本実施例と同様に、メモリチップにはデータバスとの入出力部に入出力バッファが設けられていない。これは、後で説明する実施例３から７についても同様である。実施例１から実施例７の半導体装置では、ロジックチップとメモリチップが積層され、２種類のチップ間の距離が従来よりも短くて済み、入出力バッファを設ける必要がないからである。実施例１および本実施例の読み出しレイテンシは、従来よりも入出力バッファ処理のクロック１サイクル分少なく、図５および図９に示したように、クロック３サイクルとなっている。
【００５７】
一方、コマンドを入力してからデータがバンク直近に位置する貫通配線１０２のデータバスを通過するタイミングをレイテンシと定義すると、図５および図６を参照してわかるように、読み出しレイテンシ（クロック３サイクル）が書き込みレイテンシ（クロック４サイクル）よりも短くなる。そのため、本実施例では、同一データバス内での読み出しデータと書き込みデータの衝突を避けるために、図１０に示したように、書き込みレイテンシをクロック１サイクル分早めている。
【００５８】
ただし、書き込みデータの伝送に対して、データバス３１からバンクＥへ送られる前に、書き込み用のサブデータバス４３にあるレジスタ４５で１サイクル遅らせている。これは、バンクにおいて、書き込みコマンドを受けてから書き込みデータを受けるまでの時間を、積層メモリではない従来のＤＲＡＭチップ内のバンクの場合と同じにするためである。これによりバンクの回路でのタイミングは変わらないので、積層メモリとしてバンクの回路を新たに設計し直す必要がない。
【００５９】
図１１は、データバスを共有する複数のバンクに対する、読み出しまたは書き込みのインターリーブ動作モードを示す図である。
【００６０】
プロセッサ３７は、アクティブコマンドＡＣＴおよび読み出しコマンドＲＥＡＤを、図８に示した積層メモリのＤＲＡＭチップ２８のバンクＡに対して発行する。続いて、アクティブコマンドＡＣＴおよび書き込みコマンドＷＲＩＴＥを積層メモリのＤＲＡＭチップ２９のバンクＥに対して発行する。そして、書き込みコマンドを発行してからクロック３サイクル後にバンクＥへの書き込みデータＷＤｅ１、ＷＤｅ２をデータバス３１に送出する。さらに、アクティブコマンドＡＣＴおよび読み出しコマンドＲＥＡＤをバンクＡに対して発行する。なお、各バンクに対して、ロウアドレスＲＯＷおよびカラムアドレスＣＯＬの信号を送出するのは図９および図１０の場合と同様である。
【００６１】
ＤＲＡＭチップ２８のバンクＡは、プロセッサ３７からコマンドとアドレスの信号を受け取ると、読み出し動作を行い、コマンド発行からクロック３サイクル後に読み出しデータＲＤａ１、ＲＤａ２をプロセッサ３７宛にデータバス３１を介して送出する。続いて、ＤＲＡＭチップ２９のバンクＥは、プロセッサ３７からコマンドとアドレスの信号を受け取り、書き込みデータＷＤｅ１、ＷＤｅ２を受け取ると、受け取ったデータの書き込み動作を行う。さらに、バンクＡは、プロセッサ３７からコマンドとアドレスの信号を受け取ると、読み出し動作を行い、コマンド発行からクロック３サイクル後に読み出しデータＲＤａ３、ＲＤａ４をプロセッサ３７宛にデータバス３１を介して送出する。
【００６２】
本実施例の半導体装置では、同一データバスでの読み出しデータと書き込みデータはデータバス上で衝突することはなくバンクとプロセッサ３７とでやり取りされるため、プロセッサで、読み出しコマンド発行と書き込みコマンド発行との間に待ち時間が生じない。
【００６３】
また、データバスの異なる複数のバンクに対して、実施例１と同様にして読み出しコマンドと書き込みコマンドを連続で発行することが可能であることから、積層メモリのすべてのバンクに対して読み出しコマンドと書き込みコマンドを連続して切り替えて発行し、インターリーブ動作が可能である。
【００６４】
なお、本実施例では、読み出しレイテンシと書き込みレイテンシを等しくするために、書き込みの際に書き込みコマンド発行後の書き込みデータのデータバスへの送信を従来よりも早くしたが、読み出し用のサブデータバスにレジスタを設けて、読み出しの際に読み出しコマンド発行後に読み出しデータをバンクからデータバスへ送ることを所定サイクルだけ遅らせることでも、データバスでのデータの衝突を避けて、読み出しと書き込みの切り替えを連続で行うことができる。
【００６５】
また、本実施例では、もともとのバンクの回路の性能上、書き込みレイテンシが読み出しレイテンシよりも大きかったが、バンクの回路が変われば、読み出しレイテンシの方が書き込みレイテンシより大きい場合もある。この場合は、書き込みの際に書き込みデータのデータバスへの送信を所定サイクル遅らせることで、同様にデータバスでのデータの衝突を避けて、読み出しと書き込みの切り替えを連続で行うことができる。
【００６６】
また、本実施例では、積層メモリは２枚のメモリチップを積層したものであったが、１枚だけであっても、また３枚以上積層したものであっても同様の動作が可能である。また、本実施例では、積層メモリとプロセッサチップとを積層した構成であったが、積層メモリとプロセッサチップとの位置を離してお互いの通信をボード上の配線で行う場合でも、同様の動作が可能である。
【００６７】
さらに、本実施例では、データバスのチップ間接続に貫通配線を用いたが、バンプやボンディングワイヤとしてもよい。
【実施例３】
【００６８】
本実施例の半導体装置の構成を説明する。図１２は本実施例の半導体装置の一構成例を示す図である。
【００６９】
図１２に示すように、本実施例の半導体装置は、積層メモリと、プロセッサ５３を含むロジックチップであるプロセッサチップ４８とを有する。積層メモリはＤＲＡＭチップ４６とＤＲＡＭチップ４７の２チップが積層されたもので、各ＤＲＡＭチップは４バンク構成である。図４に示したのと同様に、各バンクは、２５６Ｍビットのメモリセルアレイ２４と、アドレスラッチ２５と、ロウデコーダ２６およびカラムデコーダ２７のアドレスデコーダとを有する構成である。そのため、バンク毎に独立して書き込み、あるいは読み出し動作が可能である。
【００７０】
本実施例では、図１２に示すように、ＤＲＡＭチップ４６内ではバンクＡとバンクＢはデータバス４９を共有し、バンクＣとバンクＤはデータバス５０を共有する。また、ＤＲＡＭチップ４７内ではバンクＥとバンクＦはデータバス４９を共有し、バンクＧとバンクＨはデータバス５０を共有する。隣り合うバンク同士に限定してバス共有しているため、チップ内のデータバスに長配線は必要ない。積層したＤＲＡＭチップ間では、データバス４９についてはそれぞれのチップのバンクＡ・ＢとＥ・Ｆが共有し、データバス５０についてはバンクＣ・ＤとＧ・Ｈが共有する。
【００７１】
データバスのチップ間接続は、実施例１と同様に、チップを貫通した配線である貫通配線１０２が用いられている。ただし、貫通配線１０２は直径が２０μｍと大きく、配線密度を大きくすることが困難であるため、貫通配線１０２を含むデータバスは読み出しデータ用と書き込みデータ用を共通化した双方向バスになっている。本実施例では、実施例２と比べて、チップ内の隣り合う２つのバンクがデータバスを共有しているためにデータバスの数は半分でよい。
【００７２】
積層メモリとプロセッサチップ４８とは２つのデータバス４９、５０で接続されている。プロセッサチップ４８内には、セレクタスイッチＳＷ０、ＳＷ１が設けられ、データバス４９、５０のいずれかは、発行されるコマンドに対応して、書き込みデータバス（ＷＤＢ）５１または読み出しデータバス（ＲＤＢ）５２とセレクタスイッチを介して接続される。プロセッサチップ４８内にバスを２つ設けることで、プロセッサ５３からの書き込みデータとプロセッサ５３への読み出しデータの入出力が分離される。ここでのプロセッサ５３には、実施例２と同様なメモリコントローラの機能も含まれる。
【００７３】
なお、本実施例の半導体装置の動作モードは実施例２と同様であるため、ここでは、その詳細な説明を省略する。
【００７４】
本実施例の半導体装置では、データバスを共有するバンク同士は、チップ内の隣り合ったバンクについても、あるいは別チップのバンクについても、実施例２と同様に読み出しレイテンシと書き込みレイテンシを同じにすることによって、データバス上で衝突することなくプロセッサ５３とやり取りできる。そのため、プロセッサ５３では読み出しコマンド発行と書き込みコマンド発行との間に待ち時間が生じない。
【００７５】
ＤＲＡＭチップ内には、実施例２と同様に、バンクとデータバスの間に、書き込みデータを伝送するためのサブデータバスと、読み出しデータを伝送するためのサブデータバスと、書き込み用のサブデータバスに接続され、書き込みデータのみを所定サイクルだけ伝送を遅らせるためのレジスタとが設けられている。これは、バンクにおいて、書き込みコマンドを受けてから書き込みデータを受けるまでの時間を、積層メモリではない従来のＤＲＡＭチップ内のバンクの場合と同じにするためである。これによりバンクの回路でのタイミングは変わらないので、積層メモリとしてバンクの回路を新たに設計し直す必要がない。
【００７６】
また、異なるデータバスを持つバンク間では、実施例１と同様に読み出しコマンドと書き込みコマンドを連続で発行することが可能であることから、積層メモリの全てのバンクに対して読み出しと書き込みの切り替えを連続で行うことができる。
【００７７】
本実施例では、チップ内でデータバスを共有するのは隣り合う２バンクであるが、３つ以上のバンクがデータバスの周りに配置されているのであれば、それらのバンクがデータバスを共有してもよい。
【実施例４】
【００７８】
本実施例の半導体装置の構成を説明する。図１３は本実施例の半導体装置の一構成例を示す図である。
【００７９】
図１３に示すように、本実施例の半導体装置は、積層メモリと、チップ外部とのインターフェース機能を備えたロジックチップであるインターフェースチップ５８とを有する。
【００８０】
積層メモリはＤＲＡＭチップ５６とＤＲＡＭチップ５７の２チップが積層されたもので、各ＤＲＡＭチップは４バンク構成である。図４に示したように、各バンクは、２５６Ｍビットのメモリセルアレイ２４と、アドレスラッチ２５と、ロウデコーダ２６とカラムデコーダ２７のアドレスデコーダとを有する構成である。そのため、バンク毎に独立して書き込み、あるいは読み出し動作が可能である。
【００８１】
図１３に示すように、積層したＤＲＡＭチップ間で、バンクＡとバンクＥがデータバス５９を共有し、バンクＢとバンクＦがデータバス６０を共有し、バンクＣとバンクＧがデータバス６１を共有し、バンクＤとバンクＨがデータバス６２を共有する。
【００８２】
データバスのチップ間接続は、実施例１と同様に、チップを貫通した配線である貫通配線１０２が用いられている。ただし、貫通配線１０２は直径が２０μｍと大きく、配線密度を大きくすることが困難であるため、貫通配線１０２を含むデータバスは読み出しデータ用と書き込みデータ用を共通化した双方向バスになっている。
【００８３】
積層メモリとインターフェースチップ５８とは４つのデータバス５９〜６２で接続されている。インターフェースチップ５８内では、データバス５９〜６２のうちいずれかが、外部から受信するコマンドに対応して、書き込みデータバス（ＷＤＢ）６３または読み出しデータバス（ＲＤＢ）６４とセレクタスイッチを介して接続される。
【００８４】
インターフェースチップ５８は、外部のプロセッサあるいはメモリコントローラとの通信を行うための、Ｇｂ／ｓを超える高速インターフェース部１０５を備えている。高速インターフェース部１０５は、外部にデータを送信する送信部６６と、外部からのデータを受信する受信部６５とを有する。このようにデータの送信側と受信側の伝送経路が分かれているため、書き込みデータと読み出しデータとは分けて通信される。
【００８５】
本実施例の半導体装置では、インターフェースチップ５８の外部から高速インターフェース部１０５の受信部６５に読み出しコマンドと書き込みコマンドを連続して受信した場合、読み出し先のバンクと書き込み先のバンクのそれぞれが異なるデータバスにつながるものであれば、インターフェースチップ５８内の読み出しデータバス６４と書き込みデータバス６３のそれぞれが異なるデータバスと接続してデータのやり取りを行うので、読み出しデータと書き込みデータの衝突が起こらない。
【００８６】
また、読み出し先のバンクと書き込み先のバンクが同じデータバスにつながるものであれば、高速インターフェース部１０５の受信部６５でのコマンド発行からデータがデータバスを通るまでの読み出しレイテンシと書き込みレイテンシを同じにすることで、データバス上でのデータの衝突は起こらない。したがって、積層メモリの異なるバンクへ待ち時間なく読み出しと書き込みの動作をインターリーブして行うことが可能である。この場合、動作モードは実施例２と同様になるため、ここでは、その詳細な説明を省略する。
ＤＲＡＭチップ内には、実施例２と同様に、バンクとデータバスの間に、書き込みデータを伝送するためのサブデータバスと、読み出しデータを伝送するためのサブデータバスと、書き込み用のサブデータバスに接続され、書き込みデータのみを所定サイクルだけ伝送を遅らせるためのレジスタとが設けられている。これは、バンクにおいて、書き込みコマンドを受けてから書き込みデータを受けるまでの時間を、積層メモリではない従来のＤＲＡＭチップ内のバンクの場合と同じにするためである。これによりバンクの回路でのタイミングは変わらないので、積層メモリとしてバンクの回路を新たに設計し直す必要がない。
【００８７】
なお、本実施例では、インターフェースチップは外部とのインターフェースを持つロジックチップとしたが、このチップの代わりに、外部とのインターフェースとメモリのバンクと両方を持つインターフェース付きメモリチップを用いてもよい。
【実施例５】
【００８８】
本実施例の半導体装置の構成を説明する。図１４は本実施例の半導体装置の一構成例を示す図である。
【００８９】
図１４に示すように、本実施例の半導体装置は、積層メモリと、プロセッサを複数含むロジックチップであるマルチコアプロセッサチップ７１とを有する。
【００９０】
積層メモリはＤＲＡＭチップ６９とＤＲＡＭチップ７０の２チップが積層されたもので、各ＤＲＡＭチップは４バンク構成である。図４に示したのと同様に、各バンクは、２５６Ｍビットのメモリセルアレイ２４と、アドレスラッチ２５と、ロウデコーダ２６とカラムデコーダ２７のアドレスデコーダとを有する構成である。そのため、バンク毎に独立して書き込み、あるいは読み出し動作が可能である。
【００９１】
図１４に示すように、積層したＤＲＡＭチップ間で、バンクＡとバンクＥがデータバス７２を共有し、バンクＢとバンクＦがデータバス７３を共有し、バンクＣとバンクＧがデータバス７４を共有し、バンクＤとバンクＨがデータバス７５を共有する。ＤＲＡＭチップ内のバンク同士はデータ転送の遅くなるグローバルな長配線を避けるためにデータバスを共有していない。
【００９２】
データバスのチップ間接続は、実施例１と同様に、チップを貫通した配線である貫通配線１０２が用いられている。ただし、貫通配線１０２は直径が２０μｍと大きく、配線密度を大きくすることが困難であるため、貫通配線１０２を含むデータバスは読み出しデータ用と書き込みデータ用を共通化した双方向バスになっている。
【００９３】
マルチコアプロセッサチップ７１は４つのプロセッサＡ〜Ｄが１つのチップ内に集積されたものである。プロセッサを複数備えることにより、信号処理をそれぞれのプロセッサに割り当てて並列に行い、演算能力を高めたものである。ここでの各プロセッサには、実施例２と同様なメモリコントローラの機能も含まれる。
【００９４】
積層メモリとマルチコアプロセッサチップ７１とは４つのデータバス７２〜７５で接続されている。マルチコアプロセッサチップ７１内にはセレクタスイッチＳＷ０〜ＳＷ３が設けられている。発行されるコマンドに対応して、データバス７２〜７５のうちいずれかが、書き込みデータバス（ＷＤＢ）７６または読み出しデータバス（ＲＤＢ）７７とセレクタスイッチを介して接続される。また、マルチコアプロセッサチップ７１内にはセレクタスイッチＳＷ４〜ＳＷ７が設けられ、プロセッサＡ〜Ｄのうちコマンドを発行するプロセッサが、コマンドの種類に対応してセレクタスイッチを介して書き込みデータバス７６または読み出しデータバス７７と接続される。各プロセッサは、読み出しデータバス７６および書き込みデータバス７７のいずれとも接続可能であり、積層メモリのいずれのバンクともデータのやり取りが可能となる。
【００９５】
なお、本実施例の半導体装置の動作モードは、各プロセッサＡ〜Ｄのそれぞれと積層メモリとの動作について実施例２と同様であるため、その詳細な説明を省略する。
【００９６】
各プロセッサは書き込みデータバス７６あるいは読み出しデータバス７７に共有で接続されるため、メモリへのアクセスの際には他のプロセッサとのバス競合が生じないように調停が必要となるが、読み出しコマンドと書き込みコマンドとの連続的な切り替え発行が可能である。例えば、プロセッサＡが積層メモリへ読み出しコマンド発行の後に、続けて書き込みコマンドの発行が可能である。これは、データバスを共有する別チップのバンクについて、実施例２と同様に読み出しレイテンシと書き込みレイテンシを同じにすることによって、データバス上で衝突することなくプロセッサとデータをやり取りでき、プロセッサでは読み出しコマンド発行と書き込みコマンド発行との間に待ち時間が生じないからである。
【００９７】
ＤＲＡＭチップ内には、実施例２と同様に、バンクとデータバスの間に、書き込みデータを伝送するためのサブデータバスと、読み出しデータを伝送するためのサブデータバスと、書き込み用のサブデータバスに接続され、書き込みデータのみを所定サイクルだけ伝送を遅らせるためのレジスタとが設けられている。これは、バンクにおいて、書き込みコマンドを受けてから書き込みデータを受けるまでの時間を、積層メモリではない従来のＤＲＡＭチップ内のバンクの場合と同じにするためである。これによりバンクの回路でのタイミングは変わらないので、積層メモリとしてバンクの回路を新たに設計し直す必要がない。
【００９８】
また、プロセッサＡが読み出しコマンド発行の後に続けてプロセッサＢが書き込みコマンドを発行するというような、異なるプロセッサ間で連続して読み出しコマンドと書き込みコマンドを切り替えながら発行することも可能である。
【００９９】
さらに、読み出し先のバンクと書き込み先のバンクが異なるデータバスにつながるものであれば、読み出しコマンドと書き込みコマンドを連続して切り換えて発行しても読み出しデータと書き込みデータはデータバス上で衝突しない。したがって、積層メモリの異なるバンクへ待ち時間なく読み出しと書き込みの動作をインターリーブして行うことが可能である。
【０１００】
なお、本実施例では、プロセッサ数を４つにしたが、２つ以上の数で同様な動作が可能である。
【実施例６】
【０１０１】
本実施例の半導体装置の構成を説明する。図１５は本実施例の半導体装置の一構成例を示す図である。
【０１０２】
図１５に示すように、本実施例の半導体装置は、積層メモリと、プロセッサを複数含むロジックチップであるマルチコアプロセッサチップ８２とを有する。積層メモリはＤＲＡＭチップ８０とＤＲＡＭチップ８１の２チップが積層されたもので、各ＤＲＡＭチップは４バンク構成である。図４に示したのと同様に、各バンクは、２５６Ｍビットのメモリセルアレイ２４と、アドレスラッチ２５と、ロウデコーダ２６およびカラムデコーダ２７のアドレスデコーダとを有する構成である。そのため、バンク毎に独立して書き込み、あるいは読み出し動作が可能である。
【０１０３】
図１５に示すように、積層したＤＲＡＭチップ間で、バンクＡとバンクＥがデータバス８３を共有し、バンクＢとバンクＦがデータバス８４を共有し、バンクＣとバンクＧがデータバス８５を共有し、バンクＤとバンクＨがデータバス８６を共有する。ＤＲＡＭチップ内のバンク同士はデータ転送の遅くなるグローバルな長配線を避けるためにデータバスを共有していない。
【０１０４】
データバスのチップ間接続は、チップを貫通した配線である貫通配線１０２が用いられている。ただし、貫通配線１０２は直径が２０μｍと大きく、配線密度を大きくすることが困難であるため、貫通配線１０２を含むデータバスは読み出しデータ用と書き込みデータ用を共通化した双方向バスになっている。
【０１０５】
マルチコアプロセッサチップ８２は４つのプロセッサＡ〜Ｄが１つのチップ内に集積されたものである。プロセッサを複数備えることにより、信号処理をそれぞれのプロセッサに割り当てて並列に行い、演算能力を高めたものである。ここでの各プロセッサには、実施例２と同様なメモリコントローラの機能も含まれる。
【０１０６】
積層メモリとマルチコアプロセッサチップ８２とは４つのデータバス８３〜８６で接続されている。マルチコアプロセッサチップ８２内では、データバス８３〜８６が書き込みデータ用のクロスバ・スイッチ８７と読み出しデータ用のクロスバ・スイッチ８８に接続されている。
【０１０７】
具体的に説明すると、データバス８３はサブデータバスＷＤＢ０を介してクロスバ・スイッチ８７と接続され、サブデータバスＲＤＢ０を介してクロスバ・スイッチ８８と接続されている。データバス８４はサブデータバスＷＤＢ１を介してクロスバ・スイッチ８７と接続され、サブデータバスＲＤＢ１を介してクロスバ・スイッチ８８と接続されている。データバス８５はサブデータバスＷＤＢ２を介してクロスバ・スイッチ８７と接続され、サブデータバスＲＤＢ２を介してクロスバ・スイッチ８８と接続されている。データバス８６はサブデータバスＷＤＢ３を介してクロスバ・スイッチ８７と接続され、サブデータバスＲＤＢ３を介してクロスバ・スイッチ８８と接続されている。
【０１０８】
一方、４つのプロセッサＡ〜Ｄも２つのクロスバ・スイッチに接続されている。具体的に説明すると、プロセッサＡはサブデータバスＷＤＢ４を介してクロスバ・スイッチ８７と接続され、サブデータバスＲＤＢ４を介してクロスバ・スイッチ８８と接続されている。プロセッサＢはサブデータバスＷＤＢ５を介してクロスバ・スイッチ８７と接続され、サブデータバスＲＤＢ５を介してクロスバ・スイッチ８８と接続されている。プロセッサＣはサブデータバスＷＤＢ６を介してクロスバ・スイッチ８７と接続され、サブデータバスＲＤＢ６を介してクロスバ・スイッチ８８と接続されている。プロセッサＤはサブデータバスＷＤＢ７を介してクロスバ・スイッチ８７と接続され、サブデータバスＲＤＢ７を介してクロスバ・スイッチ８８と接続されている。
【０１０９】
次に、クロスバ・スイッチ８７、８８について説明する。図１６は、４×４のクロスバ・スイッチを示す模式図である。
【０１１０】
データバスからの配線とプロセッサからの配線との交点の黒丸部にスイッチが設けられ、このスイッチで配線間の接続を選択する。クロスバ・スイッチを使えば、１つのプロセッサが１つのデータバスとアクセスしているときに、別のプロセッサが別のデータバスにアクセスすることが可能である。この場合、４つのプロセッサのそれぞれが同時に４つのデータバスの異なるデータバスにアクセス可能であることから、積層メモリとのデータ転送が最大４倍まで高められる。
【０１１１】
ただし、コマンドとアドレスのバスを全バンクで共有する構成にした場合では、コマンドバス（ＣＭＤ）８９とアドレスバス（ＡＤＲ）９０の転送速度を４倍にするか、バスの配線数を４倍にする必要がある。または、コマンドとアドレスについても、データバスと同じようにクロスバ・スイッチを使ってプロセッサとバンク同士の接続を切り換えてもよい。
【０１１２】
また、ＤＲＡＭチップ内には実施例２と同様に、バンクとデータバスの間に、書き込みデータを伝送するためのサブデータバスと、読み出しデータを伝送するためのサブデータバスと、書き込み用のサブデータバスに接続され、書き込みデータのみを所定サイクルだけ伝送を遅らせるためのレジスタとが設けられている。これらの構成による動作は実施例２と同様であるため、ここでは、その詳細な説明を省略する。
【０１１３】
なお、本実施例の半導体装置の動作モードは、各プロセッサＡ〜Ｄのそれぞれと積層メモリとの動作について実施例２と同様であるため、その詳細な説明を省略する。
【０１１４】
本実施例の半導体装置では、データバスの選択的な接続方法にクロスバ・スイッチを用いることで、１つのプロセッサから読み出しコマンドと書き込みコマンドを連続して切り替えながら発行してバンクインターリーブ動作することが可能である。ただし、１つのデータバスを２つ以上のプロセッサが同時にアクセスしないように調停が必要である。
【０１１５】
また、本実施例では、クロスバ・スイッチに接続するプロセッサ数を４つにしたが、２つ以上のいずれの数でも同様な動作が可能である。
【実施例７】
【０１１６】
本実施例の半導体装置の構成を説明する。図１７は本実施例の半導体装置の一構成例を示す図である。
【０１１７】
図１７に示すように、本実施例の半導体装置は、積層メモリと、プロセッサを複数含むロジックチップであるマルチコアプロセッサチップ９３とを有する。積層メモリはＤＲＡＭチップ９１とＤＲＡＭチップ９２の２チップが積層されたもので、各ＤＲＡＭチップは４バンク構成である。図４に示したのと同様に、各バンクは、２５６Ｍビットのメモリセルアレイ２４と、アドレスラッチ２５と、ロウデコーダ２６およびカラムデコーダ２７のアドレスデコーダとを有する構成である。そのため、バンク毎に独立して書き込み、あるいは読み出し動作が可能である。
【０１１８】
図１７に示すように、積層したＤＲＡＭチップ間で、バンクＡとバンクＥがデータバス９４を共有し、バンクＢとバンクＦがデータバス９５を共有し、バンクＣとバンクＧがデータバス９６を共有し、バンクＤとバンクＨがデータバス９７を共有する。ＤＲＡＭチップ内のバンク同士はデータ転送の遅くなるグローバルな長配線を避けるためにデータバスを共有していない。
【０１１９】
データバスのチップ間接続は、チップを貫通した配線である貫通配線１０２が用いられている。ただし、貫通配線１０２は直径が２０μｍと大きく、配線密度を大きくすることが困難であるため、貫通配線１０２を含むデータバスは読み出しデータ用と書き込みデータ用を共通化した双方向バスになっている。
【０１２０】
マルチコアプロセッサチップ９３は４つのプロセッサＡ〜Ｄが１つのチップ内に集積されたものである。プロセッサを複数備えることにより、信号処理をそれぞれのプロセッサに割り当てて並列に行い、演算能力を高めたものである。ここでの各プロセッサには、実施例２と同様なメモリコントローラの機能も含まれる。
【０１２１】
積層メモリとマルチコアプロセッサチップ９３とは４つのデータバス９４〜９７で接続されている。本実施例では、マルチコアプロセッサチップ９３内では、それぞれのデータバスが１つずつプロセッサと接続される。プロセッサ間は共有バス９８で接続される。また、プロセッサＡは単独でコマンドバス（ＣＭＤ）９９とアドレスバス（ＡＤＲ）１００を備え、それらのバスがバンクＡおよびバンクＥと接続されている。その他のプロセッサＢ〜Ｄについても、プロセッサＡと同様に、各プロセッサが個別にコマンドバスとアドレスバスを備えている。
【０１２２】
この構成の場合は、１つのプロセッサから直接アクセスできる積層メモリの領域は、そのプロセッサと接続される１つのデータバスを共有するバンクに限られる。１つのプロセッサが、別のプロセッサと直接接続されるバンクへアクセスするには、プロセッサ同士の共有バス９８を介して行う。
【０１２３】
また、ＤＲＡＭチップ内には実施例２と同様に、バンクとデータバスの間に、書き込みデータを伝送するためのサブデータバスと、読み出しデータを伝送するためのサブデータバスと、書き込み用のサブデータバスに接続され、書き込みデータのみを所定サイクルだけ伝送を遅らせるためのレジスタとが設けられている。これらの構成による動作は実施例２と同様であるため、ここでは、その詳細な説明を省略する。
【０１２４】
なお、本実施例の半導体装置の動作モードは、各プロセッサＡ〜Ｄのそれぞれと積層メモリとの動作について実施例２と同様であるため、その詳細な説明を省略する。
【０１２５】
本実施例の半導体装置では、プロセッサがデータバスを共有する異なるチップのバンク間へ読み出しコマンドと書き込みコマンドを連続で切り換えて発行した場合、読み出しコマンド発行から読み出しデータがデータバスへ送信されるまでの読み出しレイテンシと、書き込みコマンド発行から書き込みデータをデータバスへ送信するまでの書き込みレイテンシが等しくなるように制御すれば、データバス上での読み出しデータと書き込みデータの衝突は起こらない。したがって、データバスを共有するバンク間で読み出し動作と書き込み動作を連続してインターリーブすることが可能である。
【０１２６】
また、本実施例では、データバスを共有するバンクへのコマンドバスとアドレスバスをプロセッサ毎に備えているので、各プロセッサは独立して、それぞれが直接アクセス可能なメモリ領域とデータのやり取りを行うことができる。
【０１２７】
なお、実施例３から７では、プロセッサ側から読み出しレイテンシと書き込みレイテンシを同じにする制御を行っている場合に、ＤＲＡＭチップ内のバンクが書き込みコマンドを受けてから書き込みデータを受けるまでの時間を、積層メモリではない従来のＤＲＡＭチップ内のバンクの場合と同じにするために、実施例２と同様に、バンクとデータバスの間に２つのサブデータバスおよびレジスタを設けているが、実施例１のように、これらの構成を設けていなくてもよい。
【０１２８】
また、ロジックチップにも、メモリチップとは別にバンクを複数設けるようにしてもよい。この場合、積層型半導体装置として全体に必要な記憶容量がメモリチップ２層分に満たないときに、積層するメモリチップを減らすことが可能となる。
【０１２９】
さらに、実施例１から７のうち複数の実施例を組み合わせてもよい。
【０１３０】
本発明の半導体装置では、メモリチップを含むチップ半導体装置において、チップ間のデータ転送を、データバス上での読み出しデータと書き込みデータが衝突することを回避する。そして、メモリチップの全てのバンクについて読み出しコマンドと書き込みコマンドを待ち時間なく切り換えて発行してバンクインターリーブ動作することが可能である。
【０１３１】
また、本発明をメモリチップを積層させた積層型半導体装置に適用し、貫通配線を使った双方向データバスを用いることで、従来に比べて配線長が非常に短く、チップ間には１０ＧＨｚサイクルの高速のデータ転送を行うことが可能である。
【０１３２】
積層メモリは、ＤＲＡＭに限らず、ＳＲＡＭや不揮発性メモリ等の他のメモリであってもよい。
【図面の簡単な説明】
【０１３３】
【図１】積層メモリとロジックチップを積層した半導体装置の構造断面図である。
【図２】積層メモリとロジックチップを積層した半導体装置の模式図である。
【図３】実施例１の積層メモリとプロセッサチップとからなる積層半導体装置の模式図である。
【図４】ＤＲＡＭチップのバンクの構成例を示すブロック図である。
【図５】実施例１におけるデータ読み出しの動作モードを示す図である。
【図６】実施例１におけるデータ書き込みの動作モードを示す図である。
【図７】実施例１における読み出しと書き込みのバンクインターリーブの動作モードを示す図である。
【図８】実施例２の積層メモリとプロセッサチップとからなる積層半導体装置の模式図である。
【図９】実施例２におけるデータ読み出しの動作モードを示す図である。
【図１０】実施例２におけるデータ書き込みの動作モードを示す図である。
【図１１】実施例２における読み出しと書き込みのバンクインターリーブの動作モードを示す図である。
【図１２】実施例３の積層メモリとプロセッサチップとからなる積層半導体装置の模式図である。
【図１３】実施例４の積層メモリとインターフェースチップとからなる積層半導体装置の模式図である。
【図１４】実施例５の積層メモリとマルチコアプロセッサチップとからなる積層半導体装置の模式図である。
【図１５】実施例６の積層メモリとマルチコアプロセッサチップとからなる積層半導体装置の模式図である。
【図１６】４×４のクロスバ・スイッチを示す模式図である。
【図１７】実施例７の積層メモリとマルチコアプロセッサチップとからなる積層半導体装置の模式図である。
【図１８】従来のＤＲＡＭチップの模式図である。
【図１９】従来のＤＲＡＭを２つ並べたデバイス構成の模式図である。
【符号の説明】
【０１３４】
１，２，１２，１３，２８，２９，４６，４７，５６，５７，６９，７０，８０，８１，９１，９２    ＤＲＡＭチップ
３    ロジックチップ
４，５，６，７，１５，１６，１７，１８，３１，３２，３３，３４，４９，５０，５９，６０，６１，６２，７２，７３，７４，７５，８３，８４，８５，８６，９４，９５，９６，９７    データバス
８，１９，３５，５１，６３，７６    書き込みデータバス
９，２０，３６，５２，６４，７７    読み出しデータバス
１０    メモリコントローラ
１１    ロジック回路
１４，３０，４８    プロセッサチップ
２１，３７，５３    プロセッサ
２２，３８，５４，６７，７８，８９，９９    コマンドバス
２３，３９，５５，６８，７９，９０，１００    アドレスバス
２４    メモリセルアレイ
２５    アドレスラッチ
２６    ロウデコーダ
２７    カラムデコーダ
４０，４３    サブデータバス
４１，４４    サブデータバス
４２，４５    レジスタ
５８    インターフェースチップ
６５    受信部
６６    送信部
７１，８２，９３    マルチコアプロセッサチップ
８７    クロスバ・スイッチ
８８    クロスバ・スイッチ
９８    共有バス
１０１    面内配線層
１０２    貫通配線
１０３    バンプ
１０５    高速インターフェース部
【図１】
2008140220.tif 000003
【図２】
2008140220.tif 000004
【図３】
2008140220.tif 000005
【図４】
2008140220.tif 000006
【図５】
2008140220.tif 000007
【図６】
2008140220.tif 000008
【図７】
2008140220.tif 000009
【図８】
2008140220.tif 000010
【図９】
2008140220.tif 000011
【図１０】
2008140220.tif 000012
【図１１】
2008140220.tif 000013
【図１２】
2008140220.tif 000014
【図１３】
2008140220.tif 000015
【図１４】
2008140220.tif 000016
【図１５】
2008140220.tif 000017
【図１６】
2008140220.tif 000018
【図１７】
2008140220.tif 000019
【図１８】
2008140220.tif 000020
【図１９】
2008140220.tif 000021
【手続補正書】
【提出日】平成19年10月16日(2007.10.16)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】０００４
【補正方法】変更
【補正の内容】
【０００４】
特許文献２では多層メモリチップがメモリ周辺回路をそれぞれのチップで持たずに１つのチップに集めて、チップ面積に占める周辺回路の領域を削減している。特許文献３では多層メモリ装置を製造後に、メモリ層を選別して不良メモリ層を除去することが可能である。特許文献４では積層メモリの入出力ビット構成を、データバス配線の組み合わせの変更により再構成する。
【特許文献１】特開平４−１９６２６３号公報
【特許文献２】特開２００２−２６２８３号公報
【特許文献３】特開２００３−２０９２２２号公報
【特許文献４】特開２００６−１３３３７号公報