(57)【特許請求の範囲】
【請求項１】
複数の半導体デバイスの直列相互接続構造で使用するための半導体デバイスであって、
ＩＤ番号とデータ記憶命令とデータとを含むコマンドを受け取るように構成されたコマンド回路と、
半導体デバイスのデバイスアドレスを記憶するように構成された記憶素子と、
データを記憶するためのメモリと、
静的な値のデータを提供するように構成された静的な値のプロバイダと、
アドレス指定又は非アドレス指定の指定結果を提供するために、前記受信したコマンドのＩＤ番号と、記憶素子に記憶された前記デバイスアドレスとに基づいて前記受信したコマンドが半導体デバイスにアドレス指定されたものであるかどうかを決定するデタミナと、
前記アドレス指定の指定結果に応答して前記メモリに前記データを記憶するために前記データ記憶命令を実行し、
前記アドレス指定の指定結果に応答して、前記静的な値のプロバイダから前記直列相互接続構造の後続の半導体デバイスへ前記静的な値のデータに対応した実質的に静的な信号を提供するように構成されたコア回路と、
を備えた半導体デバイス。
【請求項２】
前記デタミナは、
前記受信したコマンドのＩＤ番号が前記記憶素子内に記憶された前記デバイスアドレスに対応する場合は前記アドレス指定の指定結果を、または、
前記受信したコマンドのＩＤ番号が前記記憶素子内に記憶された前記デバイスアドレスに対応しない場合は前記非アドレス指定の指定結果を、
提供するように構成される、
請求項1に記載の半導体デバイス。
【請求項３】
前記コア回路は、コマンドを処理するための少なくとも1つのクロックを生成するための内部クロックプロデューサを備え、
コマンド毎に、
前記コマンドの前記ID番号と前記半導体デバイスの前記デバイスアドレスが一致していると決定されると前記内部クロックプロデューサがイネーブルされ、それにより前記コア回路が前記通常の電力消費で動作し、
前記コマンドの前記ID番号と前記半導体デバイスの前記デバイスアドレスが一致しないと決定されると前記内部クロックプロデューサがディセーブルされ、それにより前記コア回路が前記少ない電力消費で動作する
請求項2に記載の半導体デバイス。
【請求項４】
前記コマンド回路は、非アドレス指定の指定結果に応答して、前記受信したコマンドを前記直列相互接続構造の後続の半導体デバイスへ転送するようにさらに構成される、請求項3に記載の半導体デバイス。
【請求項５】
コマンドの各々が前記データ記憶命令を意味するOPコードを備え、前記内部クロックプロデューサが、前記コマンドの前記ID番号と前記半導体デバイスの前記デバイスアドレスが一致している場合にOPコードクロックを生成するためのOPコードクロックプロデューサを備え、前記OPコードクロックが前記コア回路による前記コマンドのOPコードの処理を容易にする、請求項4に記載の半導体デバイス。
【請求項６】
前記内部クロックプロデューサが、前記コマンドの前記ID番号と前記半導体デバイスの前記デバイスアドレスが一致している場合にデータクロックを生成するためのデータクロックプロデューサを備え、前記コマンドの前記OPコードが、前記コマンドに含まれているデータが存在していることを示し、前記データクロックが前記コア回路による前記コマンドの前記データの処理を容易にする、請求項5に記載の半導体デバイス。
【請求項７】
コマンドの各々がアドレス情報をさらに備え、前記内部クロックプロデューサが、前記コマンドの前記ID番号と前記半導体デバイスの前記デバイスアドレスが一致している場合にアドレスクロックを生成するためのアドレスクロックプロデューサを備え、前記コマンドの前記OPコードが、前記コマンドに含まれているメモリアドレス情報が存在していることを示し、前記アドレスクロックが前記コア回路による前記コマンドの前記アドレス情報の処理を容易にする、請求項5に記載の半導体デバイス。
【請求項８】
コマンドの各々がさらにアドレス情報を備え、前記内部クロックプロデューサが、前記コマンドの前記ID番号と前記半導体デバイスの前記デバイスアドレスが一致している場合にアドレスおよびデータクロックを生成するためのアドレスおよびデータクロックプロデューサを備え、前記コマンドの前記OPコードが、前記コマンドに含まれているアドレス情報およびデータが存在していることを示し、前記アドレスおよびデータクロックが前記コア回路による前記コマンドの前記アドレスおよびデータの処理を容易にする、請求項5に記載の半導体デバイス。
【請求項９】
前記コア回路が前記クロックに応答して前記メモリへのデータの記憶を実行する、請求項3に記載の半導体デバイス。
【請求項１０】
前記デタミナは、
前記コマンドが前記半導体デバイスにアドレス指定されたものであるかどうかを前記ID番号に基づいて決定するためのID一致デタミナであって、前記IDの一致が、前記コマンドが前記半導体デバイスにアドレス指定されたものであるかどうかを前記コマンドの前記ID番号と前記半導体デバイスの前記デバイスアドレスとを比較することによってコマンド毎に決定され、
(a)前記コマンドの前記ID番号と前記半導体デバイスの前記デバイスアドレスが一致しない場合、前記非アドレス指定の指定結果が提供され、また、
(b)前記コマンドの前記ID番号と前記半導体デバイスの前記デバイスアドレスが一致している場合、前記アドレス指定の指定結果が提供される
ID一致デタミナを備えた、
請求項1に記載の半導体デバイス。
【請求項１１】
前記コア回路が読出し出力を提供し、前記実質的に静的な出力が、前記静的な値のプロバイダからの、読出し操作が進行していない間に生成される出力を含む、請求項9に記載の半導体デバイス。
【請求項１２】
前記コア回路が、前記メモリは、最も新しくアクセスされたデータを記憶するようにさらに構成される、請求項1に記載の半導体デバイス。
【請求項１３】
前記コア回路は、
受け取ったコマンドを実行し、前記一致に応答して前記通常の電力動作を実行するためのプロセッサ
を備えた、請求項3に記載の半導体デバイス。
【請求項１４】
前記コア回路は、
前記プロセッサをイネーブルし、前記一致に応答して前記通常の電力動作を実行するためのイネーブリング回路
をさらに備えた、請求項13に記載の半導体デバイス。
【請求項１５】
前記イネーブリング回路は、
前記一致に応答して前記プロセッサに駆動信号を提供するための駆動信号プロバイダであって、それにより前記プロセッサが前記駆動信号に応答して前記通常の電力動作を実行する駆動信号プロバイダ
を備えた、請求項14に記載の半導体デバイス。
【請求項１６】
ID番号を備えたコマンドを受け取るための入力接続と、
出力接続と、
内部クロックプロデューサであって、
(a)前記ID番号と前記デバイスアドレスが一致している場合、前記コマンドを処理するために使用される内部クロック信号を生成し、また、
(b)前記ID番号と前記デバイスアドレスが一致しない場合、前記内部クロック信号の生成を保留する
ための内部クロックプロデューサと
をさらに備えた、請求項1に記載の半導体デバイス。
【請求項１７】
(a)前記ID番号と前記デバイスアドレスが一致しない場合、出力インタフェースを介して前記コマンドを転送し、また、
(b)前記ID番号と前記デバイスアドレスが一致している場合、出力インタフェースを介して実質的に静的な出力を提供する
ためのデータ経路セレクタ
をさらに備えた、請求項16に記載の半導体デバイス。
【請求項１８】
前記コア回路は、前記デバイスにアドレス指定された入力コマンドを処理するためのプロセッサを備えた、請求項1に記載の半導体デバイス。
【請求項１９】
前記メモリは、前記プロセッサによってアクセスされるように構成される、請求項18に記載の半導体デバイス。
【請求項２０】
複数の半導体デバイスの直列相互接続構造の半導体デバイスにおける使用のための方法であって、それぞれの半導体デバイスはデータを記憶するように構成されるメモリと、静的な値のデータを提供するように構成される静的な値のプロバイダを備え、
前記方法は、
前記半導体デバイスのデバイスアドレスを保持するステップと、
ＩＤ番号とデータ記憶命令とデータとを含むコマンドを受信するステップと、
アドレス指定また非アドレス指定の指定結果を提供するために、前記受信したコマンドのＩＤ番号と前記半導体デバイスの前記保持されたデバイスアドレスとに基づいて前記受信したコマンドが前記半導体デバイスにアドレス指定されたものであるかどうかを決定するステップと、
前記アドレス指定の指定結果に応答して前記メモリに前記データを記憶するための前記データ記憶命令を実行するステップと、
前記アドレス指定の指定結果に応答して前記直列相互接続構造の後続の半導体デバイスへ前記静的な値のプロバイダから前記静的な値のデータに対応する実質的に静的な信号を提供するステップと、
を含む方法。
【請求項２１】
前記デバイスアドレスを保持するステップは、
前記半導体デバイスに含まれる記憶素子にデバイスアドレスを記憶するステップ
を含む、請求項20に記載の方法。
【請求項２２】
前記コマンドが前記半導体デバイスにアドレス指定されたものではない場合、前記コマンドを前記直列相互接続構造の後続の半導体デバイスへ転送するステップ
をさらに含む、請求項21に記載の方法。
【請求項２３】
前記アドレス指定は、
前記コマンドの前記ID番号と前記半導体デバイスのデバイスアドレスとを比較するステップ
をさらに含む、請求項22に記載の方法。
【請求項２４】
前記ID番号と前記デバイスアドレスが一致している場合、前記コマンドを処理するために使用される内部クロック信号が生成するステップと、出力インタフェースを介して実質的に静的な信号が提供するステップとを、また、
前記ID番号と前記デバイスアドレスが一致しない場合、前記内部クロック信号の生成が保留するステップと、前記出力インタフェースを介して前記コマンドが転送するステップと、
をさらに含む、請求項23に記載の方法。
【請求項２５】
クロック信号およびＩＤ番号とデータ記憶命令とデータとを含むコマンドを提供するように構成されたコントローラと、
前記クロック信号に応答して動作するように構成された第１および第２半導体デバイスを少なくとも含む直列に接続された複数の半導体デバイスを有する直列相互接続構造であって、前記第１の半導体デバイスは前記受信したコマンドを受信するように構成される直列相互接続構造と、
を有するシステムであって、
前記第１半導体デバイスは、
ＩＤ番号とデータ記憶命令とデータとを含むコマンドを受信するように構成されたコマンド回路と、
前記半導体デバイスのデバイスアドレスを記憶するように構成された記憶素子と、
データを記憶するように構成されたメモリと、
静的な値のデータを提供するように構成された静的な値のプロバイダと、
アドレス指定または非アドレス指定の指定結果を提供するために、受信したコマンドの前記ＩＤ番号および前記記憶素子に記憶された前記デバイスアドレスに基づいて前記コマンドが前記半導体デバイスにアドレス指定されたものであるかどうかを決定するデタミナと、
アドレス指定の指定結果に応答して前記メモリに前記データを記憶するために前記データ記憶命令を実行し、
前記アドレス指定の指定結果に応答して、前記静的な値のプロバイダから前記直列相互接続構造の後続の半導体デバイスへ前記静的な値のデータに対応する実質的に静的な信号を提供する
ように構成されたコア回路と、
を備る。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本出願は、いずれも参照によりその開示全体が明確に本明細書に組み込まれている、2007年2月16日に出願した米国仮特許出願第60/902003号、2007年2月22日に出願した米国仮特許出願第60/891108号および2007年6月12日に出願した米国仮特許出願第60/943442号の優先権の利益を主張するものである。
【０００２】
本発明は、一般に半導体デバイスに関するものである。より詳細には、本発明は、複数の半導体デバイスを有する構造を有するシステムに関するものである。
【背景技術】
【０００３】
メモリおよびシステム設計においては、電力消費の制御が重要であり、電力消費を低減することによって潜在的な利益がある。たとえば、メモリシステムの電力消費が低減されると、電池で動作するメモリシステムは、電池の寿命がより長くなって有益である。また、電力消費を低減することは、電池以外の電力で動作するメモリシステムの場合にも有益である。たとえば、主論理システム内の電力消費を低減することによって電流および電圧が低減され、延いては能動動作中における熱の発生が低減される。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】米国仮特許出願第60/902003号明細書
【特許文献２】米国仮特許出願第60/891108号明細書
【特許文献３】米国仮特許出願第60/943442号明細書
【特許文献４】同時係属米国特許出願第11/594564号明細書
【特許文献５】米国仮特許出願第60/868773号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ほとんどのメモリシステムは、システムボード上で、またパッケージレベルで記憶密度を上げるために、メモリコントローラと複数のメモリデバイスとの間のマルチドロップ接続を利用している。しかしながら、この手法は、高速応用例、たとえば100MHzを超える周波数応用例における良好な信号完全性および十分なタイミングマージンを保証しない。したがって、高速応用例のための許容される信号完全性を達成する代替メモリシステムアーキテクチャが必要である。このような代替は、直列に相互接続された複数のデバイスを特徴とするアーキテクチャに見られる。このようなアーキテクチャの場合、メモリコントローラは、リンクを使用して最初のメモリデバイスに接続されており、また、そのメモリデバイスは、別のリンクを使用して次のメモリデバイスに接続されており、以下、同様に接続されている。デバイスとデバイスの間にこれらのリンクを使用することにより、高速応用例のための信号完全性に関わるいくつかの問題が解決される。しかしながら、特定のデバイスを残りのデバイスが非活動的(passive)である間に活動化させることができるマルチドロップアーキテクチャとは異なり、直列相互接続アーキテクチャにおけるデバイスのすべてが活動状態である。というのは、直列に相互接続されている次のデバイスに信号を引き渡すためにデバイスのすべてが使用可能でなければなければならないからである。
【課題を解決するための手段】
【０００６】
本発明の一態様によれば、複数の半導体デバイスの直列相互接続構造で使用するための半導体デバイスが提供される。半導体デバイスは、コマンドを受け取り、かつ、受け取ったコマンドの少なくとも一部を転送するためのコマンド回路と、その半導体デバイスにアドレス指定されたコマンドに対しては通常の電力消費で動作し、また、その半導体デバイスにアドレス指定されたものではないコマンドに対しては少ない電力消費で動作するように構成されたコア回路とを備えている。
【０００７】
たとえば、個々のコマンドはID番号を備えている。半導体デバイスは、さらに、コマンドがその半導体デバイスにアドレス指定されたものであるかどうかをコマンドのID番号および半導体デバイスのデバイスアドレスに基づいてコマンド毎に決定するためのデタミナを備えることができる。コア回路は、コマンドを処理するための少なくとも1つのクロックを生成するための内部クロックプロデューサを備えることができる。コマンドのID番号と半導体デバイスのデバイスアドレスが一致していると決定されると、内部クロックプロデューサをイネーブルすることができ、それによりコア回路は通常の電力消費で動作する。コマンドのID番号と半導体デバイスのデバイスアドレスが一致しないと決定されると、内部クロックプロデューサをディセーブルすることができ、それによりコア回路は少ない電力消費で動作する。
【０００８】
コマンドは、さらに、OPコードを含むことができる。内部クロックプロデューサは、コマンドのID番号と半導体デバイスのデバイスアドレスが一致している場合、OPコードクロックを生成するためのOPコードクロックプロデューサを備えることができる。OPコードクロックは、コマンドのOPコードの処理を容易にする。
【０００９】
コア回路は、読出し操作が進行していない間に生成される、メモリからの出力を含んだ、実質的に静的な出力である読出し出力を提供することができる。
【００１０】
本発明の他の広義の態様によれば、複数の半導体デバイスの直列相互接続構造の半導体デバイスにおける方法が提供される。この方法には、コマンドを受け取り、かつ、受け取ったコマンドの少なくとも一部を半導体デバイスに転送するステップと、その半導体デバイスにアドレス指定されたコマンドに対しては通常の電力消費で半導体デバイスを動作させるステップと、その半導体デバイスにアドレス指定されたものではないコマンドに対しては少ない電力消費で半導体デバイスを動作させるステップが含まれている。
【００１１】
本発明の他の広義の態様によれば、コントローラと、直列に接続された複数の半導体デバイスであって、これらの複数の半導体デバイスのうちの1つがコントローラに接続された複数の半導体デバイスとを備えたシステムが提供される。半導体デバイスの各々は、コマンドを受け取り、かつ、受け取ったコマンドの少なくとも一部を転送するためのコマンド回路と、その半導体デバイスにアドレス指定されたコマンドに対しては通常の電力消費で動作し、また、その半導体デバイスにアドレス指定されたものではないコマンドに対しては少ない電力消費で動作するように構成されたコア回路とを備えている。
【００１２】
本発明の一実施形態によれば、メモリコントローラと、該メモリコントローラと通信する、直列に接続された複数のメモリデバイスとを有するシステムが提供される。ID番号によって指定されたメモリデバイスは、通常の電力消費レベルでの動作を実行する。指定されていない他のデバイスは、少ない電力消費レベルでの信号転送動作を実行する。指定されたメモリデバイスは、その内部クロック発生器をイネーブルし、動作に必要なすべてのクロックを生成する。しかしながら、指定されていないメモリデバイス内では、それらの内部クロック発生器は、次のメモリデバイスにコマンドを転送するための部分動作を実行するためのクロックを生成する。このような部分動作は、少ない電力消費レベルで実行される。
【００１３】
本発明の他の実施形態によるメモリデバイスは、IDが一致している場合、次のメモリデバイスに入力コマンドを転送しない。したがって、コマンドを受け取らないメモリデバイスは、通常の電力消費レベルでの動作を実行せず、したがってシステムによって消費される電力が低減される。
【００１４】
本発明の他の実施形態によるメモリデバイスは、その内容を静的な出力に置き換えるコマンドを伝送する。したがって、このような置換コマンドを受け取ったメモリデバイスは、少ない電力消費レベルでの動作を実行することになり、したがってシステムによって消費される電力が低減される。
【００１５】
半導体デバイスの実施例は、異なる電力消費レベルで動作させることができるプロセッサおよびメモリデバイスである。メモリデバイスは、揮発性メモリデバイス(たとえばランダムアクセスメモリ)または不揮発性メモリデバイス(たとえばフラッシュデバイス)であってもよい。
【００１６】
本発明の他の態様および特徴は、本発明の特定の実施形態についての以下の説明を精査することにより当業者には明らかになる。
【００１７】
以下、実施形態について、添付の図面を参照して説明する。
【図面の簡単な説明】
【００１８】
【図１】本発明の実施形態を適用することができる、複数のメモリデバイスの直列相互接続構造のブロック図である。
【図２】本発明の実施形態を適用することができる、直列接続メモリデバイスを有するシステムのブロック図である。
【図３】図2に示されているシステムのための例示的なコマンドフォーマットの略図である。
【図４】図2に示されている直列接続メモリデバイスの一部を示すブロック図である。
【図５】図2に示されているメモリデバイスのうちの1つを詳細に示すブロック図である。
【図６】図5に示されているコマンドインタープリタを示す略図である。
【図７】図5に示されている内部クロック発生器を示すブロック図である。
【図８Ａ】図7に示されている内部クロック発生器を詳細に示すブロック図である。
【図８Ｂ】図7に示されている内部クロック発生器を詳細に示すブロック図である。
【図９Ａ】図6に示されている回路内の例示的な信号のためのタイミング図である。
【図９Ｂ】図6に示されている回路内の例示的な信号のためのタイミング図である。
【図１０Ａ】図5に示されている回路内の例示的な信号のタイミング図である。
【図１０Ｂ】図5に示されている回路内の例示的な信号のタイミング図である。
【図１１】直列に接続されたメモリデバイスを有するシステムのブロック図である。
【図１２】共通動作経路を詳細に示すシステムブロック図である。
【図１３】図12に示されているシステム内の例示的な信号のタイミング図である。
【図１４】コマンド打切り機能を実施するためのメモリデバイスの例示的な回路の略図である。
【図１５】図14に示されている回路内の例示的な信号のタイミング図である。
【図１６】選択されるデバイス数と打切り機能を備えた電力消費の間の一例示的な相関を示すグラフである。
【発明を実施するための形態】
【００１９】
本発明の例示的な実施形態についての以下の詳細説明では、本明細書の一部をなしている、本発明を実施することができる特定の例示的な実施形態が例として示されている添付の図面が参照されている。これらの実施形態は、当業者による本発明の実施を可能にするために十分詳細に記述されているが、本発明の範囲を逸脱することなく他の実施形態を利用することができること、および同じく本発明の範囲を逸脱することなく論理的、機械的、電気的変更および他の変更を加えることができることを理解されたい。したがって本発明を制限する意味で以下の詳細説明を解釈すべきではなく、本発明の範囲は特許請求の範囲によって定義される。
【００２０】
本発明は、一般に、複数の半導体デバイスを備えた構造を有するシステムに関する。デバイスは、異なる電力消費レベルで動作させることができる。半導体デバイスの実施例は、異なる電力消費レベルで動作させることができるプロセッサおよびメモリデバイスである。メモリデバイスは、揮発性メモリデバイス(たとえばランダムアクセスメモリ)または不揮発性メモリデバイス(たとえばフラッシュデバイス)であってもよい。
【００２１】
参照によりその開示全体が本明細書に組み込まれている、2006年7月31日に出願した、本発明の譲受人に譲渡された「Daisy Chain Cascading Devices」という名称の同時係属米国特許出願第11/594564号に、直列に接続された複数のデバイスを使用した詳細なシステムアーキテクチャの例が提供されている。参照によりその開示全体が本明細書に組み込まれている、2006年12月6日に出願した、「System and Method of Operating Memory Devices of Varying Type」という名称の米国仮特許出願第60/868773号に、直列接続メモリデバイスの他の詳細な例が提供されている。
【００２２】
本明細書において説明されている実施例は、直列に接続された複数のデバイスを有する直列相互接続に適用することができる。より一般的には、本明細書において説明されている実施形態は、直列リンクまたは並列リンクによって直列に接続された複数の半導体デバイスを有する直列相互接続構成を使用しているシステムアーキテクチャに適用することができる。直列相互接続構造は、直列リンクまたは並列リンクを使用してデバイスが共に直列に接続されるアーキテクチャのサブセットを形成する。以下、図1を参照して直列接続メモリデバイスを有するシステムアーキテクチャの概要について説明する。
【００２３】
図1は、直列に接続された複数のメモリデバイスの直列相互接続構造を示す。図1を参照すると、構造110は、直列に接続されたN個のメモリデバイス130-1、130-2、130-3、----、130-Nを備えている。Nは、1より大きい整数である。メモリコントローラ(図示せず)は、構造110のメモリデバイスにデータおよび情報の信号群を送信する。処理すべきデータまたは情報は、最初のデバイス130-1に送信され、直列接続デバイスであるこれらのデバイスを介して伝搬される。一実施態様では、最後のデバイス130-Nの出力はオープンである。他の実施態様では、最後(N番目)のデバイス130-Nの出力はメモリコントローラに接続されており、したがってメモリコントローラは、最後のデバイス130-Nからのフィードバックデータを使用することができる。
【００２４】
構造110のメモリデバイス130-1、130-2、130-3、----、130-Nの各々は、それぞれ個々に割り当てられた一意のデバイスアドレス(DA)またはデバイス識別番号(ID)に関連付けられる。図に示されている実施例では、デバイス130-1、130-2、130-3、----、130-Nのデバイスアドレスは、それぞれ「0」、「1」、「2」、----、「N-1」である。Nが15である場合、デバイスアドレス(DA)は、それぞれ、たとえば4ビットの2進符号すなわち2進数「0000」、「0001」、「0010」、----、「1110」で表される。個々のデバイスは、それぞれ最初にMSB(最上位のビット)を有しており、また、最後にLSB(最下位のビット)を有する。他の実施態様では、DAを変更してLSBを最初にし、また、MSBを最後にすることができる。また、DAは、他の値(たとえば「1」)から始まる連続番号にすることも可能である。さらに、DAは、最大値から減少する番号であってもよい。
【００２５】
メモリコントローラは、(目標すなわち指定デバイスのための)特定のデバイスアドレスおよびオペレーションコマンドを含んだ制御およびデータ情報を出力している。このような情報が最初のデバイス130-1に送信され、デバイスを介して伝搬される。情報が伝搬している間、個々のデバイスの入力Dnが入力情報を受け取り、その出力Qnから次のデバイスへ出力情報が伝送される。特定のデバイスアドレスによって目標すなわち指定デバイスとして識別される特定のメモリデバイスは、そのデバイスアドレスが一致するとオペレーションコマンドを実行する。オペレーションコマンドの例は、メモリアクセスおよびデータ処理である。
【００２６】
図2は、本発明の実施形態を適用することができる、直列に接続された複数のメモリデバイスの直列相互接続構造を有するシステムを示す。図に示されている実施例では、15個のデバイスが直列に接続されている。図2を参照すると、システム210は、直列に接続されたメモリデバイス230-1、230-2、230-3、---、230-15を有する。システム210は、リンク221を介して最初のメモリデバイス230-1に接続されたメモリコントローラ220を有する。隣接するメモリデバイスの個々の対は、リンクを介して相互接続されている。図2に示されている特定の実施例では、最後のメモリデバイス230-15は、リンク222を介してメモリコントローラ220に接続されており、したがって特定のタイプの直列アーキテクチャ、すなわち環状アーキテクチャを生みだす。別法としては、最後のメモリデバイス230-15がメモリコントローラ220に接続されていない場合、この直列接続アーキテクチャを線形アーキテクチャにすることも可能である。線形アーキテクチャの場合、最後のメモリデバイス230-15は、メモリコントローラ220の代わりに何らかの他のコンポーネントに接続することができる。環状アーキテクチャおよび線形アーキテクチャは、いずれも、共に直列に接続されたデバイスを特徴とするアーキテクチャの例である。メモリデバイス230-1、230-2、230-3、---、230-15を相互接続しているリンクを使用して、メモリデバイス230-1、230-2、230-3、---、230-15を横断している経路を介してコマンドが伝送される。
【００２７】
メモリコントローラ220によって出力される個々のコマンドには、ID番号およびコマンドOPコード(以下、単純に「OPコード」と呼ぶ)が含まれており、さらに、アドレス情報および/またはデータを含めることも可能である。個々のコマンドに含まれているID番号は、具体的に選択される(つまり目標すなわち指定)メモリデバイスのデバイスアドレスと一致する。コマンドは、メモリコントローラ220によってメモリデバイスに送信されるコマンド入力(CI)信号の中に含まれている。メモリデバイスは、コマンド入力信号の中に含まれているコマンドを受け取ったときはいつでも、そのコマンドのID番号と、デバイスに結合されているデバイスアドレスが一致しているかどうかを決定する。一致している場合、メモリデバイスは、コマンドのOPコードフィールドによって識別されるオペレーション(OP)コードを実行する。一致しない場合、メモリデバイスは、コマンドのOPコードフィールドによって識別されるOPコードを実行することなく、単純に次のメモリデバイスにコマンドを転送する。
【００２８】
図3は、図2に示されている、直列に接続されたメモリデバイスのための例示的なコマンドフォーマットを示す。図3を参照すると、第1のコマンドフォーマット312-1にはID番号およびOPコードが含まれている。ID番号は、選択されたメモリデバイスを一意に識別するために使用され、一方、OPコードフィールドには、選択すなわち指定されたデバイスによって実行されるOPコードが含まれている。第1のコマンドフォーマット312-1を有するコマンドは、たとえば、レジスタ値を読み取るためのOPコードを含んだコマンドのために使用することができる。第2のコマンドフォーマット312-2には、ID番号、OPコードおよびデータが含まれている。第2のコマンドフォーマット312-2を有するコマンドは、たとえば、データをレジスタに書き込むためのOPコードを含んだコマンドのために使用することができる。第3のコマンドフォーマット312-3には、ID番号、OPコードおよび追加アドレスが含まれている。追加アドレスは、たとえば、記憶セル内の記憶位置をアドレス指定するための行アドレスおよび/または列アドレスを含むことができる。第3のコマンドフォーマット312-3を有するコマンドは、たとえば、選択されたメモリデバイスの記憶セルからデータを読み出すためのOPコードを含んだコマンドのために使用することができる。第4のコマンドフォーマット312-4には、ID番号、OPコード、追加アドレスおよびデータが含まれている。第4のコマンドフォーマット312-4を有するコマンドは、たとえば、選択されたメモリデバイスの記憶セルにデータを書き込むためのOPコードを含んだコマンドのために使用することができる。これらの4つの例示的なコマンドフォーマット312-1、312-2、312-3、312-4は、すべて、アドレス指定するためのID番号で始まることに留意されたい。たとえば、ID番号およびOPコードのフィールドの各々は、1バイト(8ビット)である。データおよびアドレスのバイトサイズは可変であり、そのバイト(またはビット)上の情報は、OPコードによって示される。
【００２９】
もう一度図2を参照すると、最初のメモリデバイス230-1は、経路の一部として、コマンド入力接続CIおよび対応するコマンド出力接続COを有する。同様に、他のメモリデバイス230-2、230-3、---、230-15の各々も、コマンド入力接続CIおよび対応するコマンド出力接続COを有する。図に示されている実施例では、経路のリンク221は、n-ビット幅の経路を形成している。経路が単一ビット幅の経路である場合(つまりnが1に等しい場合)、リンクは直列リンクである。それ以外の場合(つまりnが1より大きい場合)、リンクは並列リンクである。
【００３０】
また、図に示されている実施例には、メモリデバイス230-1、230-2、230-3、---、230-15を横断している制御経路が存在している。最初のメモリデバイス230-1は、この制御経路の一部として、コマンドストローブ入力(CSI)接続および対応するコマンドストローブ出力(CSO)接続を有する。同様に、他のメモリデバイス230-2、230-3、---、230-15の各々も、CSI接続および対応するCSO接続を有する。最初のデバイス230-1のCSI接続は、メモリコントローラ220によって出力される、メモリデバイス230-1へのコマンド入力信号SCI1のコマンドの入力を可能にするためのコマンドストローブ信号SCS1を受け取るためのものである。デバイス230-1のCSO接続は、次のデバイス230-2にコマンドストローブ信号を転送するためのものである。したがって、転送されるコマンドストローブ信号は、2番目のメモリデバイス230-2のCSI接続へのコマンドストローブ信号SCS2として伝送される。同様に、他のデバイス230-2、230-3、---、230-15の各々も、次のメモリデバイスへの入力コマンドストローブ信号の転送を実行する。したがって、コマンドストローブ信号は、1つのデバイスから次のデバイスへ転送される。
【００３１】
読出し操作の間、メモリデバイスからの出力を可能にするためのデータストローブ信号である他の制御信号が存在している。最初のメモリデバイス230-1は、データストローブ入力(DSI)接続および対応するデータストローブ出力(DSO)接続を有する。同様に、他のメモリデバイス230-2、230-3、---、230-15の各々も、DSI接続および対応するDSO接続を有する。最初のデバイス230-1のDSI接続は、メモリコントローラ220によって出力される、メモリデバイス230-1から次のメモリデバイス230-2への出力を可能にするためのデータストローブ信号DCS1を受け取るためのものである。デバイス230-1のDSO接続は、次のデバイス230-2にデータストローブ信号を転送するためのものである。したがって、転送されるデータストローブ信号は、メモリデバイス230-2のDSI接続へのデータストローブ信号DCS2として伝送される。同様に、他のデバイス230-2、230-3、---、230-15の各々も、次のメモリデバイスへの入力データストローブ信号の転送を実行する。したがって、コマンドストローブ信号は、1つのデバイスから次のデバイスへ転送される。
【００３２】
さらに、メモリコントローラ220によってすべてのデバイスに共通に(つまり共通同期クロッキング方式で)クロック信号SCKが提供される。動作、たとえばチップ選択およびリセットのための追加信号が提供される(図示せず)。
【００３３】
図に示されている実施例には、15個のメモリデバイス230-1、230-2、230-3、---、230-15しか示されていないが、より一般的には、メモリコントローラ220と通信する、直列に接続された適切な任意の数のメモリデバイスが存在することができる。直列相互接続構造は、もっと多くのデバイスを備えることができる。
【００３４】
図2に示されているシステム210は、環状アーキテクチャを実装する。システム210が動作している間、メモリコントローラ220は、リンク221を含む出力通信経路を介してコマンドを送信し、かつ、応答を要求するコマンドのためのリンク222を含む入力通信経路を介して応答を受け取る。メモリコントローラ220は、コマンド毎に、最初のデバイス230-1によるコマンドの受取りを可能にするためのコマンドストローブ信号SCS1を出力する。コマンドストローブ信号は、デバイスを介して伝搬される。また、メモリコントローラ220は、データ読出し操作が命令された後、最初のデバイス230-1による、選択されたデバイスからのデータの出力を可能にするためのデータストローブ信号SDS1を出力する。データストローブ信号は、デバイスを介して伝搬される。メモリデバイス230-1、230-2、230-3、---、230-15の各々は、一意のデバイスアドレス(DA)に関連付けられる。図に示されている実施例では、メモリデバイス230-1、230-2、230-3、---、230-15は、それぞれ2進符号0000、0001、0010、---、1110で表されるデバイスアドレスを有するが、これらのアドレスは、より一般的には実装特有なものである。
【００３５】
動作中、システム210は電力を消費する。メモリデバイス230-1、230-2、230-3、---、230-15の各々は、その特定のデバイスにコマンドがアドレス指定されたものであるか否かにかかわらず、個々のコマンドを処理するために電力を消費する。直列に接続されたメモリデバイス230-1、230-2、230-3、---、230-15を介した信号およびデータの伝送は、入力ピンおよび出力ピン、すなわちコマンド出力接続COに対応するコマンド入力接続CIなどの接続を介して信号が流れるため、個々のデバイスに電力を消費させる。
【００３６】
メモリデバイス230-1、230-2、230-3、---、230-15の各々は、コマンド入力信号上のコマンド入力ストリームを隣接する次のメモリデバイスへ伝送している。一組の入力ピンおよび出力ピンすなわち入力接続および出力接続を介して信号が流れることによって生じる電力消費は、比較的少ない可能性がある。しかしながら、メモリデバイス230-1、230-2、230-3、---、230-15の各々は、個々の入力接続および出力接続のセットを有しており、したがってメモリデバイスの数と共に総電力消費が増加する。直列に接続されたメモリデバイスの数は実装特有なものであってもよく、また、電力消費で決まる。以下、メモリデバイスの例示的な電力消費を要約した表1を参照してさらに説明する。
【００３７】
【表１】
0005385156.tif 000002
【００３８】
表1は、様々な動作条件下でのメモリデバイスの電力消費および電流を示す。マルチドロップ構造で使用されるNANDフラッシュデバイスは、Vdd=3.3Vの動作電圧、Cload=50pFの容量性負荷、33MHzの動作周波数および33Mbps/ピンのデータ転送速度を使用することができる。このようなデバイスは、たとえば18mWの電力および1出力当たり5.4mAの電流を消費する。一方、動作電圧がたとえばVdd=1.8V、容量性負荷がCload=5pF、動作周波数が100MHzおよびデータ転送速度が200Mbps/ピンの直列相互接続構造で使用されるNANDフラッシュデバイスは、3.2mWの電力および1出力当たり1.8mAの電流しか消費しない。周波数が高くなると電力消費が増加する。たとえば、直列に接続されたNANDフラッシュデバイスの場合、動作周波数が100MHzから133MHzに増大すると、電力消費が3.2mWから4.3mWに増加し、また、1出力当たりの電流が1.8mAから2.4mAに増大する。
【００３９】
たとえば、それぞれ5.4mAの8個のI/Oを有するNANDフラッシュデバイスは、43.2mAの総電流を有する。したがって、100MHzで動作する、8個のI/Oを備えたマルチドロップNANDフラッシュと同様のI/O電流を有する直列相互接続構造のメモリデバイスの数は43.2mA/1.8mAであり、これは約24個に等しい。また、133MHzで動作する、8個のI/Oを備えたマルチドロップNANDフラッシュと同様のI/O電流を有する直列相互接続構造のメモリデバイスの数は43.2mA/2.4mAであり、これは約18個に等しい。直列相互接続構造の個々のメモリデバイスが消費する電力をもっと低減できる場合、メモリデバイスの追加が可能になる。
【００４０】
表1の最後の2行は、直列リンクを使用して直列に接続されたメモリデバイスの電力消費を示したもので、デバイスの各々は一対のI/Oを有する。並列リンクを使用して直列に接続されたメモリデバイスの電力消費は、表1とは異なることがあることに留意されたい。
【００４１】
マルチドロップ構造などの他のシステム構造の場合、メモリデバイスをイネーブルまたはディセーブルすることによって電力を節約することができる。イネーブルされていないデバイスは、より少ない電力を消費する。しかしながら直列相互接続構造の場合、直列に接続されたデバイスを介してコマンドを伝搬させることができるよう、動作中、すべてのメモリデバイスがイネーブルされる。したがってマルチドロップ構造のための手法は、直列相互接続構造には適用することはできない。以下、リンクを使用して直列に接続された複数のデバイスを特徴とする直列相互接続構造のメモリデバイスの電力消費を節約するための手法について説明する。この実施例および追って説明する後続の実施例は、直列リンクを使用して直列に接続されたメモリデバイスを有するシステムに関するものであることに留意されたい。しかしながら、本発明の実施形態は、並列リンクを使用して直列に接続されたメモリデバイスを有するシステムにも適用することができることを理解されたい。
【００４２】
図4は、図2に示されている直列接続メモリデバイスの一部を示す。図に示されているように、デバイス230-iに入力されるコマンド入力信号SCIiは、次のデバイス230-(i+1)に伝送することができる。
【００４３】
図5は、図2および4に示されているi番目のメモリデバイスを代表して詳細に示す。図5の回路は非常に具体的なものであり、例として提供されたものにすぎないことを理解されたい。図5を参照すると、メモリデバイス230-iは、ID一致およびコマンド転送回路を備えており、また、それを動作させるための制御論理回路を備えている。ID一致およびコマンド転送回路は、入力から出力への転送を実行し、また、制御論理回路を少ない電力消費で動作させるか否かの決定を実行する。しかしながら、ID一致およびコマンド転送回路と制御論理回路の間の境界は、かなり任意であることを理解されたい。
【００４４】
デバイス230-iは、(i)入力コマンドを含んだコマンド入力信号SCIiを受け取るためのコマンド入力(CI)接続521、(ii)クロック信号SCKを受け取るためのクロック入力接続523、(iii)コマンド入力を可能にするためのコマンドストローブ信号SCSiを受け取るためのコマンドストローブ入力(CSI)接続525、および(iv)データストローブ信号SDSiを受け取るためのデータストローブ入力(DSO)接続527の4つの入力接続を備えている。これらの4つの信号SCIi、SCK、SCSi、SDSiは、すべて、対応する個々の入力バッファ511、513、515、517によってバッファされる。コマンド入力信号SCIiのバッファバージョンIsciは、D型フリップ-フロップ(D-FF)531を介してマルチプレクサ533に引き渡される。マルチプレクサ533は、出力バッファ549およびコマンド出力接続535を介してコマンド入力信号SCI(i+1)を次のデバイス(i+1)に提供する。コマンドストローブ信号SCSiのバッファバージョンIscsiは、内部クロック発生器543およびD-FF537に供給される。D-FF537の出力はマルチプレクサ539に供給され、該マルチプレクサ539の出力は、出力バッファ541を介して、コマンドストローブ信号SCS(i+1)として次のデバイスに供給される。同様に、データストローブ信号SDSiのバッファバージョンIsdsiはD-FF545に供給され、該D-FF545の出力はマルチプレクサ553に供給される。マルチプレクサ553の出力は、出力バッファ551を介して、データストローブ信号SDS(i+1)として次のデバイスに供給される。クロック信号SCKのバッファバージョンIsckは、D-FF531、537および545のクロック入力ならびに内部クロック発生器543のクロック入力に供給される。バッファされたコマンド入力信号Isciは、IDレジスタ561、コマンドインタープリタ563、アドレスレジスタ565およびデータ入力レジスタ569にも供給される。内部クロック発生器543は、IDレジスタ561、コマンドインタープリタ563、アドレスレジスタ565およびデータ入力レジスタ569に接続された出力を有する。
【００４５】
比較器577は、IDレジスタ561からの第1の入力と、メモリデバイスの実際のデバイスID(またはデバイスアドレスDA)を表すデバイスIDを保持している記憶素子575からの第2の入力とを有する。比較器577は、コマンドに含まれているID番号とデバイスIDホルダ575に保持されているIDとを比較し、これらの2つのIDが一致しているかどうかを決定する。一致している場合、ハイ状態を有するID一致信号Id_matchが比較器577からコマンドインタープリタ563、内部クロック発生器543およびマルチプレクサ533、539に提供される。アドレスレジスタ565は前置復号器567に接続されている。コマンドインタープリタ563、前置復号器567およびデータ入力レジスタ569はコントローラ571に接続されている。コントローラ571は、マルチプレクサ533の「1」入力に接続されているデータ出力レジスタ573に接続されている。データを記憶するためのメモリコアアレイ579は、コントローラ571に結合されている。
【００４６】
図6は、図5に示されているコマンドインタープリタ563の例示的な詳細を示す。図6を参照すると、コマンドインタープリタ563は、OPコードレジスタ581およびOPコード復号器583を備えている。OPコードレジスタ581は、バッファされたコマンド入力信号IsciおよびOPコードクロック信号Clk_opcを受け取る。
【００４７】
図5および6を参照すると、動作中、コマンドストローブ信号SCSiがアサートされると、コマンド入力信号SCIiを介してコマンドが受け取られる。内部クロック発生器543がIDレジスタ561のためのIDクロック信号Clk_idを生成する。図3に示されているように、コマンドは、IDレジスタ561にロードされるID番号で始まる。比較器577は、IDレジスタ561の内容と、メモリデバイスのデバイスIDホルダ575に保持されているデバイスIDとを比較する。一致している場合、比較器577は、IDが一致したことを示すためにID一致信号Id_matchをアサートする。一致しない場合、比較器577はID一致信号Id_matchをアサートしない。
【００４８】
図に示されている実施例では、ID一致信号Id_matchはアクティブハイである。別法としては、ID一致信号Id_matchはアクティブローであってもよい。ID一致信号Id_matchは、内部クロック発生器543およびOPコード復号器583を活動化する役割を有する。内部クロック発生器543は、ID一致信号Id_matchがハイの場合、コマンドインタープリタ563のOPコードレジスタ581のためのOPコードクロック信号Clk_opc、アドレスレジスタ565のためのアドレスクロックおよびデータ入力レジスタ569のためのデータクロックを生成する。したがって、コマンドのOPコード、追加アドレスおよびデータは、OPコード復号器583、前置復号器567、コントローラ571によってさらに処理するために、OPコードレジスタ581、アドレスレジスタ565およびデータ入力レジスタ569に条件付きでロードされる。IDが一致しない場合、メモリデバイスにはコマンドからのOPコード、追加アドレスおよびデータをロードする必要がないため、内部クロック発生器543は、OPコードクロック信号Clk_opc、アドレスクロック信号Clk_addおよびデータクロック信号Clk_dataを生成しない。ID一致信号Id_matchがローの場合、内部動作が停止され(クロックを生成しないことによって)、したがって不要な電力消費を回避することができる。たとえば、OPコード復号器583は動作せず、また、コントローラ571はメモリバンク動作を活動化しない。OPコード復号器583の後段に置かれているバンク制御および他の論理ブロックは、OPコード復号器583の結果によって制御される。したがって電力を節約することができる。CMOS論理のハイ状態またはロー状態を保持することによって、漏れ電流が極めて小さくなるため、電力消費が低減される。
【００４９】
図に示されている実施例では、マルチプレクサ533は、ID一致信号Id_matchがハイであるかどうかに基づいて、コマンド入力信号SCIiをコマンド入力信号SCI(i+1)として条件付きで引き渡す。これは打切りに関連しているが、クロック発生との組合せで提供されるため、その動作について、ここで簡単に説明しておく。ID一致信号Id_matchがローである場合、マルチプレクサ533の出力はコマンド入力信号SCIiを引き渡し、したがって後続のメモリデバイス(たとえばメモリデバイス(i+1))はコマンドを受け取ることができる。しかしながら、一致している場合、データ出力レジスタ573の出力によってコマンド入力信号SCI(i+1)が提供され、このコマンド入力信号SCI(i+1)には、データ出力レジスタ573からデータが読み出されない限り静的なデータが含まれている。したがってコマンド入力信号SCIi(i+1)は、コマンド入力信号SCIiとは異なり、遷移を有していない。したがって後続のメモリデバイスに対する電力が節約される。本明細書において示されている実施例には、打切りのためのマルチプレクサが使用されているが、より一般的には任意のデータ経路セレクタを実施することができる。より一般的には、コマンド入力信号SCI(i+1)は、コマンド入力の転送以外にはいかなる遷移ももたらさない何かに接続することができる。たとえば、出力を接地に接続することができる。この打切りについては、追って、打切り実施形態としてさらに詳細に説明する。
【００５０】
図5に示されている内部クロック発生器543には、上で説明した機能を実施するための適切な回路が含まれている。例示的な回路については、追って、図7を参照して説明する。
【００５１】
動作中、特定のデバイスに対するOPコードクロックがイネーブルされている場合、つまり、特定のデバイスのIDと一致するIDをコマンドが含んでいた場合、OPコードレジスタ581には、受け取ったコマンドからのOPコードが含まれる。OPコードレジスタ581の内容は、ip_opc<n-1:0>としてOPコード復号器583に提供される。ID一致信号Id_matchがハイである場合、OPコード復号器583は、そのOPコードip_opc<n-1:0>を復号する。OPコード復号器583は、OPコードレジスタ581からのOPコードip_opc<n-1:0>の復号バージョンである復号OPコードIdopを出力する。しかしながら、ID一致信号Id_matchがローである場合、OPコード復号器583は、OPコードip_opc<n-1:0>を復号しない。復号OPコードIdopは実装特有なものであり、たとえばOPコードを実行するための適切な任意の1つまたは複数の信号を含むことができる。
【００５２】
図7は、図5に示されている内部クロック発生器543を示す。図7を参照すると、内部クロック発生器543は、IDクロック発生器611、OPコードクロック発生器613、アドレスクロック発生器615およびデータクロック発生器617を備えている。以下、図8Aを参照してIDクロック発生器611およびOPコードクロック発生器613を詳細に説明し、また、図8Bを参照してアドレスクロック発生器615およびデータクロック発生器617を詳細に説明する。
【００５３】
クロック発生器611、613、615、617の各々は、バッファされたクロック信号Isckおよびバッファされたコマンドストローブ信号Iscsiを受け取るように接続されている。IDクロック発生器611は、バッファされたコマンドストローブ信号Iscsiがイネーブルされると開始し、入力コマンドのID番号を処理するだけの十分な遷移でIDクロック信号Clk_idを生成する。内部クロック発生器543は、コマンドを処理するために使用されるOPコードクロック信号Clk_opc、アドレスクロック信号Clk_add、データクロック信号Clk_dataを生成するかどうかを決定するID一致信号Id_matchを受け取る。アドレスクロック発生器615およびデータクロック発生器617は、アドレスおよびデータがコマンドの中に存在しているかどうかを示すOPM1、OPM2、OPM3を含んだ復号OPコード信号Idopを受け取るように接続されている。
【００５４】
図8Aは、図7に示されているIDクロック発生器611およびOPコードクロック発生器613を示す。図8Aを参照すると、IDクロック発生器611は、バッファされたクロック信号Isckを受け取るためのクロック入力IN、およびバッファされたコマンドストローブ信号Iscsiを受け取るためのイネーブル入力ENを有するカウンタ651を備えており、その出力OUTからのカウント出力信号がカウントデタミナ653に供給される。カウントデタミナ653の出力信号655はANDゲート657に供給される。カウントが開始されると、信号655がハイになる。カウントが所定のカウント数(たとえばIDのビット数に対応する8)に到達すると、信号655がローになる。信号655がハイの状態にある間(VI1クロックサイクル)、クロック信号IsckのクロックパルスがANDゲート657を通過し、したがってIDクロック信号Clk_idが提供される。
【００５５】
同様に、OPコードクロック発生器613も、カウンタ661、カウントデタミナ663およびANDゲート667を備えている。カウンタ661の入力INはクロック信号Isckを受け取り、イネーブル入力EN1はID一致信号Id_matchを受け取り、また、もう1つのイネーブル入力EN2は、バッファされたコマンドストローブ信号Iscsiを受け取る。カウンタ661は、Id_matchおよびコマンドストローブ信号Isciによってイネーブルされると、Isckのクロックをカウントする。カウントが開始されると、決定信号665がハイになり、カウントが所定のカウント数(たとえばOPコードのビット数に対応する8)に到達すると、信号665がローになる。信号665がハイの状態にある間(VI2クロックサイクル)、クロック信号IsckのクロックパルスがANDゲート667を通過し、したがってOPコードクロック信号Clk_opcが提供される。
【００５６】
図8Bは、図7に示されているアドレスクロック発生器615およびデータクロック発生器617を示す。図8Bを参照すると、アドレスクロック発生器615およびデータクロック発生器617は、ID一致信号Id_matchがアサートされた場合にのみ動作する。アドレスクロック発生器615は、カウンタ671、カウントデタミナ673、制限値回路675およびANDゲート677を備えている。制限値回路675は、テンポラリレジストレーション復号器676およびレジスタ678を備えている。カウンタ671は、ID一致信号Id_matchおよびバッファされたコマンドストローブ信号Iscsiによって活動化され、その後で、そのカウント入力INに供給されるバッファされたクロック信号Isckのパルスを連続的にカウントする。
【００５７】
図8Bを参照すると、復号OPコード信号Idopに含まれている3ビット動作モード信号OPM1、OPM2およびOPM3が、制限値回路675のテンポラリレジストレーション復号器676に供給される。テンポラリレジストレーション復号器676は、OPM1、OPM2およびOPM3を復号し、その復号値VI3がレジスタ678に登録される。カウントデタミナ673は、カウンタ671によるカウントがレジスタ678に保持されているOPM1、OPM2およびOPM3によって画定される制限値VI3に到達したかどうかを決定する。カウントデタミナ673は、バッファされたクロック信号Isckを受け取るANDゲート677にカウント決定出力信号675を提供する。カウント決定出力信号675は、カウンタ671がカウントを開始すると「ハイ」になり、カウントが制限値VI3に到達すると「ロー」になる。信号675に応答してゲートすることにより、ANDゲート677は、アドレスクロック信号Clk_addに含まれることになるVI3クロックを出力する。この実施例では、OPM1、OPM2およびOPM3によって画定されるVI3は、列アドレスおよび行アドレスの総ビット数を表している。アドレスクロック発生器615は、パルス数が変化するアドレスクロックの発生を可能にしており、パルスの数は、OPM1、OPM2、OPM3に基づいて決定される。パルス数が固定である場合も、当然、OPコードクロックの発生に使用される回路と同様の回路を使用することができる。アドレスクロックの長さを決定するための他の機構を使用することも可能である。
【００５８】
同様に、データクロック発生器617も、カウンタ681、カウントデタミナ683、制限値回路685およびANDゲート687を備えている。制限値回路685は、データレジストレーション復号器686およびレジスタ688を備えている。データレジストレーション復号器686の復号機能は、テンポラリレジストレーション復号器676の復号機能とは異なっている。カウンタ681は、ID一致信号Id_matchおよびバッファされたコマンドストローブ信号Iscsiによって活動化され、その後で、入力INに入力されるバッファされたクロック信号Isckのパルスを連続的にカウントする。復号OPコード信号Idopの3ビット動作モード信号OPM1、OPM2およびOPM3がデータレジストレーション復号器686によって復号され、その復号値VI4がレジスタ688に登録される。
【００５９】
カウントデタミナ683は、カウンタ681によるカウントがレジスタ688に保持されているOPM1、OPM2およびOPM3によって画定される制限値VI4に到達したかどうかを決定する。カウントデタミナ683は、ANDゲート687にカウント決定出力信号685を提供する。カウント決定出力信号685は、カウンタ681がカウントを開始すると「ハイ」になり、カウントが制限値VI4に到達すると「ロー」になる。信号685に応答してゲートすることにより、ANDゲート687は、データクロック信号Clk_dataに含まれることになるVI4クロックを出力する。この実施例では、OPM1、OPM2およびOPM3によって画定されるVI4は、データの総ビット数を表している。したがってデータ長は、OPM1、OPM2およびOPM3に基づいて決定される。
【００６０】
他の実施態様では、データクロックの長さは、コマンドストローブ信号SCSiがメモリコントローラによってアサートされる長さに基づいて決定される。このような実施態様では、データクロック信号Clk_dataの発生は、カウント決定回路683による、カウンタ681がOPM1、OPM2およびOPM3によって画定されるVI4に到達したことの決定によってではなく、OPコードストローブ信号SCSiのハイからローへの遷移によって停止される。したがってこのような実施態様は、カウンタ681、カウント決定回路683または制限値回路685を有していないことがある。このような実施態様は、むしろ、データクロック信号Clk_dataの発生の開始および終了がコマンドストローブ信号SCSiのハイからローへの遷移で実施される適切な任意の回路を備えることになる。
【００６１】
図9Aは、図6に示されている回路によって生成される例示的な信号のタイミング図を示したもので、特定のデバイスのIDと一致するIDを含んだコマンドが既に受け取られていると仮定されている。このタイミング図には、コマンドストローブ信号SCSi、ID一致信号Id_match、OPコードip_opc<n-1:0>および復号OPコードIdopが含まれている。この実施例では、IDが一致していると仮定されており、したがってID一致信号Id_matchがアサートされる。したがってOPコードip_opc<n-1:0>が復号され、復号OPコードIdopが生成されている。
【００６２】
図9Bは、図6に示されている回路によって生成される例示的な信号の他のタイミング図であり、特定のデバイスのIDと一致しないIDを含んだコマンドが既に受け取られていると仮定されている。このタイミング図には、バッファされたOPコードストローブ入力信号Iscsi、ID一致信号Id_match、OPコードip_opc<n-1:0>および復号OPコードIdopが含まれている。この実施例では、IDが一致しないと仮定されている。したがってID一致信号Id_matchはアサートされていない。したがって、コマンドのOPコードがOPコードレジスタ581にロードされていないため、入力OPコードは未知の値である。図5を参照すると、これは、内部クロック発生器543によってOPコードクロック信号Clk_opcが生成されていないことによるものである。OPコード復号器583は入力OPコードを復号しないため、復号OPコードはローである。
【００６３】
ID一致信号Id_matchを使用してOPコードの復号が起動される。ID一致信号Id_matchは、常にハイではない。そうではなく、ID一致信号Id_matchは、直列に接続されたデバイスのうちの目標メモリデバイスに対してのみハイである。OPコード復号器583はID一致信号Id_matchを受け取るため、復号論理からの無効なグリッチ論理の生成が回避される。ID一致信号Id_matchは、OPコード復号器583の結果を制御することができる。ID一致信号Id_matchがローの場合、この論理を使用して、OPコード復号器583の後段における電流の発生を抑制することができ、したがって少ない電力消費を実現することができる。
【００６４】
図10Aは、デバイスIDと、図5に示されている回路のコマンド入力信号SCIiの入力コマンドに含まれているIDが一致している場合の例示的な信号のタイミング図である。
【００６５】
図10Aを参照すると、このタイミング図には、クロック信号SCK、コマンドストローブ信号SCSi、バッファされた内部クロック信号Isck、ID一致信号Id_match、IDクロック信号Clk_id、OPコードクロック信号Clk_opc、アドレスクロック信号Clk_addおよびデータクロック信号Clk_dataが含まれている。IDクロック信号Clk_idは、コマンドのID番号の8ビットをロードするために、最初の8つのクロックサイクルに対してアクティブであることに留意されたい。この実施例では、ID番号とデバイスアドレスが一致していると仮定されている。したがってID一致信号Id_matchがアサートされる。それにより、コマンドのOPコード、追加アドレスおよびデータをロードし、かつ、処理するために、引き続いてOPコードクロック信号Clk_opc、アドレスクロック信号Clk_addおよびデータクロック信号Clk_dataが順番に生成される。
【００６６】
図10Bは、デバイスIDと、図5に示されている回路の入力コマンド信号SCIiに含まれているIDが一致しない場合の例示的な信号のタイミング図である。信号は、図9Aに示されている信号に対応しており、図9Aと全く同様のラベルが振られている。IDクロック信号Clk_idは、コマンドのID番号の8ビットをロードするために、最初の8つのクロックサイクルに対してアクティブである。この実施例では、ID番号とデバイスアドレスが一致しないと仮定されている。したがってID一致信号Id_matchはローのままである。したがって、OPコードクロック信号Clk_opc、アドレスクロック信号Clk_addおよびデータクロック信号Clk_dataのためのクロックの発生が停止されている。図に示されている実施例では、これは、10番目のクロックサイクルの近辺で生じる。したがって、ID一致信号Id_matchがローを維持している場合、OPコードクロック信号Clk_opcは生成されない。しかしながら、図10Bに示されているように、回路の性能およびクロック周波数に応じて、その生成が停止される前にOPコードクロック信号Clk_opcのための1つのパルスを発生させることができる。
【００６７】
図11は、複数のデバイスを備えた直列相互接続構造を有するシステムを示す。図11のシステムは、図2に示されているシステムに対応しており、したがって図11に示されているデバイスは、図2のデバイスの構造と同様の構造を有する。コマンドおよびデータストローブ信号などの制御信号は、図を分かり易くするために図11には示されていないことに留意されたい。
【００６８】
図11を参照すると、システム710は、直列に接続された複数のメモリデバイスを備えている。システム710は、直列リンクを介して相互接続された複数のメモリデバイス730-1、730-2、730-3、---、730-15と共にメモリコントローラ720を備えている。直列リンクは、共通動作経路741を形成している。メモリデバイス730-1、730-2、730-3、---、730-15の各々は、それぞれID一致およびコマンド転送回路734-1、734-2、734-3、---、734-15を有しており、また、それぞれ制御論理回路732-1、732-2、732-3、---、732-15を有する。ID一致およびコマンド転送回路は、入力コマンドを受け取り、受け取った入力コマンドを次のデバイスに転送する役割を担っている。図に示されている実施例では、個々のメモリデバイス内のID一致およびコマンド転送回路はD-FFを構成している。ID一致およびコマンド転送回路および制御論理回路のより詳細な実施例は、図8のID一致およびコマンド転送回路および制御論理回路に類似している。図に示されている実施例では、15個のメモリデバイス730-1、730-2、730-3、---、730-15が示されている。しかしながら、より一般的には、メモリデバイスの数は適切な任意の数にすることができる。
【００６９】
動作中、メモリコントローラ720は、共通動作経路741を介してコマンドを送信する。メモリデバイス730-1、730-2、730-3、---、730-15の各々に対して、対応する個々の制御論理回路732-1、732-2、732-3、---、732-15は、そのメモリデバイスにアドレス指定されたコマンドに対しては通常の電力消費で動作し、また、そのメモリデバイスにアドレス指定されたものではないコマンドに対しては少ない電力消費で動作する。図に示されている実施例では、メモリコントローラ720は、目標すなわち指定デバイスである3番目のメモリデバイス730-3にアドレス指定されたコマンドを送信すると仮定されている。コマンドには、図3で説明したようにID番号(「0010」の2進符号)が含まれており、したがって指定されたメモリデバイス730-3が一意に識別される。
【００７０】
最初のメモリデバイス730-1は、コマンド入力信号SCI1を含んだコマンドを受け取り、かつ、他のメモリデバイスにアドレス指定されたコマンドであるかどうかを決定し、したがってその制御論理回路732-1は、少ない電力消費で動作する。最初のメモリデバイス730-1は、コマンドを2番目のメモリデバイス730-2に転送し、その制御論理回路732-2は、コマンドが他のメモリデバイスにアドレス指定されているため、同様に少ない電力消費で動作する。2番目のメモリデバイス730-2は、コマンドを3番目のメモリデバイス730-3に転送し、その制御論理回路732-3は、コマンドがその3番目のメモリデバイス730-3にアドレス指定されているため、通常の電力消費で動作してそのコマンドを処理する。後続のメモリデバイス(つまり4番目のデバイスから15番目のデバイス730-15)の各々に対しては、制御論理回路(たとえば制御論理回路732-15)は、受け取ったコマンドがメモリデバイス730-15にアドレス指定されたコマンドではないため、少ない電力消費で動作する。
【００７１】
指定されたメモリデバイス730-3以外のメモリデバイスは、743で示されている第1の領域でそれらの電力消費を低減することに留意されたい。この第1の領域743には、メモリデバイス730-1、730-2、---、730-15の制御論理回路732-1、732-2、---、732-15が含まれている。他のメモリデバイスにはそれらの制御論理回路を使用してコマンドを処理する必要がないため、この第1の領域743で電力消費が低減される。指定されたメモリデバイス730-3のみがコマンドを処理する。いくつかの実施態様では、コマンドを処理するために使用される1つまたは複数のクロック信号の発生を阻止することによって、個々の制御論理回路732-1、732-2、---、732-15の中で電力消費が低減される。1つまたは複数のクロック信号の発生を阻止することによって電力消費がどの程度低減されるかについては、追ってさらに詳細に説明する。
【００７２】
後続のメモリデバイスには共通動作経路741を介して伝送されるコマンドを受け取る必要がないため、第2の領域745で電力消費を低減することも可能である。しかしながら、3番目のメモリデバイス730-3による出力(たとえばコアメモリ出力または状態レジスタ出力)を要求するOPコードがコマンドに含まれている場合、3番目のメモリデバイス730-3は、後続のメモリデバイスに出力を提供することに留意されたい。その場合、メモリコントローラ720からのデータストローブ信号によってそのデバイスからの出力をイネーブルすることができる。これは、第2の領域745の論理が遷移し、そのために電力が消費されることになる。コマンドそれ自体が転送されないため、第2の領域745では依然として電力消費が低減される。以下、コマンドを打ち切ることによって電力消費をどの程度低減することができるかについて、さらに詳細に説明する。
【００７３】
電力消費は、より少ない論理遷移を達成するためにコマンドに使用するための適切な一組のOPコードを設計することによって低減される。以下、これを達成することができる方法について、さらに詳細に説明する。
【００７４】
所与の実施態様では、指定されていないメモリデバイスの制御論理回路をパワーダウンするための機構、および/または指定されたデバイスより後のデバイスの論理遷移を少なくするための機構、および/または遷移が少ないOPコードセットを実施することができることに留意されたい。
【００７５】
他の実施態様では、コマンドがアドレス指定されるメモリデバイスより後のデバイスの電力消費を低減することができる。これは、コマンドがアドレス指定されるメモリデバイスにそのコマンドの少なくとも一部を、相互接続されたその一組のメモリデバイス内の次のメモリデバイスに転送させないことによって達成される。図11の特定の実施例の場合、メモリデバイス730-1、730-2、730-3、---、730-15の各々に対して、ID一致およびコマンド転送回路734-1、734-2、734-3、---、734-15は、コマンドがそのメモリデバイスにアドレス指定されたものではない場合にのみそのコマンドを転送する。最初の2つのメモリデバイス730-1、730-2のID一致およびコマンド転送回路734-1、734-2は、コマンドが他のメモリデバイスにアドレス指定されているため、そのコマンドを転送する。しかしながら、3番目のメモリデバイス730-3のID一致およびコマンド転送回路734-3は、後続のメモリデバイスにコマンドを転送しない。その代わりに、3番目のメモリデバイス730-3のID一致およびコマンド転送回路734-3は、後続のメモリデバイスに実質的に静的な出力を提供する。所与のコマンドがそれ自体にアドレス指定されたものであると決定するデバイス内の待ち時間のため、後続のデバイスにコマンドの一部を転送することができる。コマンドがそれ自体にアドレス指定されたものであるとデバイスが決定すると、残りのコマンドは打ち切られる。この方法によれば、3番目のメモリデバイス730-3のID一致およびコマンド転送回路734-3はコマンドを打ち切り、したがって後続のメモリデバイスは、遷移のない実質的に静的な信号を受け取ることになる。この実質的に静的な信号は、745で示されている第2の領域に遷移をもたらさないため、電力消費が低減されることになる。
【００７６】
打切りを特徴とする実施形態の場合、受け取ったコマンドがそのデバイスのためのものであると所与のメモリデバイスが決定すると、そのメモリデバイスは、次のデバイスのコマンド入力にそのコマンド入力を転送しない。以下、このような打切りを特徴とするシステムの一実施例について、図12を参照して説明する。
【００７７】
図12は、本発明の他の実施形態によるシステムを示す。図12に示されているシステム構造は、図11のシステム構造に類似している。図12を参照すると、システム810は、メモリコントローラ820および複数のデバイスを有する。この特定の実施例では、4つのデバイスが直列に接続されている。デバイスの数が異なる他の構造も適用可能である。
【００７８】
システム810は、直列に接続されたメモリデバイス830-1、830-2、830-3、830-4を有する。デバイスは、コマンド入力のための対応する個々のD-FFおよびコマンドストローブ信号のための対応する個々のD-FFからなる論理回路を転送するリンクを個々に有する。また、クロックSCKのための共通接続が示されている。メモリコントローラ820からのコマンド出力は、リンク841、843、845、847、849を含む経路に従い、また、メモリコントローラ820からのコマンドストローブ信号は、リンク851、853、855、857、859を含む経路に従っている。打切りがない場合、メモリコントローラ820からのコマンド出力は、すべてのリンク841、843、845、847に沿って引き渡され、また、コマンドストローブ信号も、すべてのリンク851、853、855、857、859に沿って引き渡されることになる。一方、打切りが実行される場合、コマンド入力は、所与のコマンドがアドレス指定されるデバイスの後に続くリンクに沿って引き渡されない。読出し操作が命令された場合に、メモリコントローラが有効読出しデータの開始点が分かるよう、データストローブ信号を使用して、リンク845、847、849を介して読出しデータが引き渡される場合、指定されたデバイスにストローブ信号が到着しても、そのデータストローブ信号が打ち切られることはない。
【００７９】
説明のために、図12には、打切りを実施する複数の直列接続デバイスの直列相互接続構造が示されている。この特定の実施例では、コマンドは、2番目のメモリデバイス830-2にアドレス指定されている。メモリコントローラ820は、そのコマンド出力からコマンドを出力し、このコマンドがリンク841、843に沿ってデバイス830-2に転送される。コマンドには、2番目のメモリデバイス830-2のデバイスアドレスDA=0001と一致するID番号ID=0001が含まれている。2番目のメモリデバイス830-2は、ID番号が一致していると決定すると、コマンド入力を経路845に沿って次のデバイス830-3に転送しないことによってそのコマンド入力を打ち切るように動作する。その結果、後続のデバイス830-3、830-4は、より少ない電力を消費することになる。一括して873で示されているデバイスは、少ない電力消費で動作させることができる。後続のデバイスのリンク転送論理は、コマンドを処理する必要はない。
【００８０】
図13は、図12に示されているシステムによって生成される例示的な信号のタイミング図である。図13を参照すると、このタイミング図には、クロック信号SCK、最初のメモリデバイス830-1に対するコマンドストローブ信号SCS1およびコマンド入力信号SCI1、2番目のメモリデバイス830-2に対するコマンドストローブ信号SCS2およびコマンド入力信号SCI2、ならびに3番目のメモリデバイス830-3に対するコマンドストローブ信号SCS3およびコマンド入力信号SCI3が含まれている。最初のメモリデバイス830-1および2番目のメモリデバイス830-2に対するコマンド入力信号SCI1、SCI2には、コマンドのすべてのビットが含まれており、この実施例では、ID番号のための8ビット、OPコードのための8ビットおよびデータのための8ビットが含まれていることに留意されたい。しかしながら、3番目のメモリデバイス830-3に対するコマンド入力信号SCI3は、2番目のメモリデバイス830-2によってID番号の8ビット以降が打ち切られている。これは、2番目のメモリデバイス830-2が目標デバイスであると該2番目のメモリデバイス830-2が決定し、したがって後続のデバイス830-3、830-4にはコマンドが不要であることによるものである。
【００８１】
図14は、コマンド打切り機能を実施するためのメモリデバイスの例示的な回路を示す。図14を参照すると、回路930は、コマンド入力信号SCIi、クロック信号SCK、コマンドストローブ信号SCSiおよびデータストローブ信号SDSiを受け取る。これらの信号は、すべて、対応する個々の入力バッファ921、923、925、927によってバッファされる。コマンド入力SCIiおよびクロック信号SCKは、マルチプレクサ933に接続されているD-FF931に供給される。マルチプレクサ933は、出力バッファ929を介して次のデバイス(i+1)にコマンド入力信号SCI(i+1)を提供する。コマンドストローブ信号SCSiは、周辺論理ブロック960に提供される。データストローブ信号SDSiは、出力クロック発生器943およびレジスタ945に接続されている出力ラッチ発生器941に供給される。コア制御ブロックおよびメモリコア950は、レジスタ945に接続されている。レジスタ945は、マルチプレクサ933への出力を有する。
【００８２】
動作中、回路930は、一方では、コマンドがi番目のデバイスにアドレス指定されていない場合、コマンド入力信号SCIiをSCI(i+1)として次の(i+l)番目のデバイスに転送するように機能する。回路930は、他方では、出力を出力レジスタ945に接続するように機能する。これらの機能は、いずれも、そのデバイスにアドレス指定されたコマンドを受け取ると実行され、それにより、次のデバイスへのコマンドの転送が回避され、かつ、次の(i+1)番目のデバイスのためのコマンド入力信号SCI(i+1)として生成するためにそのデバイスからの出力が許容される。
【００８３】
コマンド入力信号SCIiは、D-FF931を介してマルチプレクサ933に供給される。マルチプレクサ933は、i番目のコマンド入力信号SCIiから、あるいはレジスタ945の出力からコマンド入力信号SCI(i+1)を提供すべきかどうかを決定する。マルチプレクサ933は、ID一致信号Id_matchがハイであるかどうかに基づいて、コマンド入力信号SCIiとレジスタ945の出力の間で選択する。ID一致信号Id_matchは、メモリデバイスが選択されるとハイであり、また、i番目のメモリデバイスが未選択である場合はローである。図に示されている実施例では、ID一致信号Id_matchは、図5の回路のこれらに対応する周辺論理ブロック960によって決定されている。そのデバイスアドレスと一致するID番号を含んだコマンドをメモリデバイスが受け取ると、ID一致信号Id_matchがハイになり、マルチプレクサ933がスイッチされてレジスタ945の出力doutが選択され、したがってdoutがSCI(i+1)として提供される。ID一致信号Id_matchがローである場合、コマンド入力信号SCIiがSCI(i+1)として提供される。コマンド入力信号SCIiは、内部論理の組合せによって決定される短い時間期間の間(この場合、デバイスID中におけるクロックに必要なサイクル数に等しい時間期間の間)、コマンド入力信号SCI(i+1)として転送され、入力が打ち切られると、レジスタ945からの固定出力値が(i+1)番目のコマンド入力信号SCI(i+1)として伝送される。
【００８４】
doutから誘導されたコマンド入力信号SCI(i+1)は、出力クロック発生器943によって出力クロックが生成されるまでレジスタ945の出力(すなわちクロックされた出力)が生成されず、また、これは、出力するようにレジスタ945がアサートを受けるまで実施されないため、静的な信号である。i番目のメモリデバイスが選択される場合、後続の(下流側の)デバイスは、マルチプレクサ933のこのスイッチング動作によって静的なレベルを受け取ることができる。したがって後続のデバイスは静的な値を取り、それらの入力バッファおよび出力バッファには遷移は生じない。しかしながら、応答を要求する読出しOPコードであるOPコードがコマンドに含まれている場合、読出しデータがレジスタ945からクロック出力され、データストローブ信号SDSiがアサートされている間、(i+1)コマンド入力信号SCI(i+1)に提供されることに留意されたい。
【００８５】
レジスタ945からの出力doutの生成について、図15を参照して説明する。図15は、図14に示されている回路930によって生成される例示的な信号のタイミング図を示す。
【００８６】
図14および15を参照すると、このタイミング図には、クロック信号SCK、データストローブ信号SDSi、出力イネーブル信号out_en、シフトクロック信号shft_clk、ラッチ信号latch_signalおよびデータ出力doutが含まれている。読出しコマンドが出力された後、データストローブ信号SDSiがアサートされると、動作が開始される。出力ラッチ発生器941は、コア制御ブロックおよびメモリコア950のメモリコアから読み出された内容をラッチするようにレジスタ945に命令するためのラッチ信号latch_signalを生成する。また、出力ラッチ発生器941は、出力クロック発生器943をイネーブルするための出力イネーブル信号out_enを生成する。出力クロック発生器943は、出力イネーブル信号out_enがハイになると、シフトクロック信号shft_clkを生成する。シフトクロック信号shft_clkは、レジスタ945からデータをクロック出力させるために使用される。したがって、レジスタ945からのデータ出力doutは、マルチプレクサ933に提供される。
【００８７】
長いコマンド入力を使用した書込み操作の場合、これは、同じ効果で動作する。ID番号を使用してどのようなOPコードが入力されても、ID番号がデバイスのID番号と一致している場合、ID一致信号Id_matchがアサートされ、次に、固定レベルのデータ出力doutがコマンド入力信号SCI(i+1)として次のデバイスに伝送される。選択されたデバイスの後段の未選択デバイスは、入力バッファおよび出力バッファにおいても電力消費を節約することができる。
【００８８】
図に示されている実施例では、データの打切りは、コマンド入力信号SCIiとコマンド入力信号SCI(i+1)の間で実行されている。また、コマンドストローブの打切りを実行することも可能であるが、データと比較するとコマンドストローブは2つの遷移を有しており、したがってコマンド入力信号SCIiの早期の打切りは、コマンド入力信号SCIiの打切りがない場合の電力消費と同じ電力消費を有するため、電力の総合的な節約には効果がない。コマンドストローブを打ち切るための静的な値は、レジスタ945から得ることも可能であることに留意されたい。
【００８９】
図に示されている実施例では、静的な値は、レジスタ945から得られる。読出し操作の間、レジスタ945からの内容が次のコマンド入力としてクロック出力され、かつ、送信される。したがって、書込み操作の間、レジスタ945から静的な値を得ることによって既存のデータ経路が利用されている。しかしながら、静的な値は、その静的な値を提供することができる任意のソースから得ることができることを理解されたい。静的な値は、たとえば電源グランド(supply ground)から直接得ることができる。他の実施態様も可能である。
【００９０】
図16は、選択されるデバイス数と打切り機能を備えた電力消費の間の一例示的な相関を示す。図16を参照すると、グラフには、平均I/O電力消費Pav(正規化された値)対選択されるデバイス数Nvdがプロットされている。ほぼ線形の相関が見られる。これは、選択されるデバイスの数が多いほど消費される電力が多いことを意味している。これは、図12を参照すると、領域873がより小さく、したがって節約される電力消費がより少ないことによるものである。この電力消費は、ID番号を使用して選択されるデバイスによって決まる。直列相互接続構造における最後のメモリデバイスが選択される場合、I/O部分における電力の節約は、打切り実施形態で期待することができるほどの節約を期待することはできない。しかしながら、最後のメモリデバイスではないメモリデバイスが選択される他の状況では、I/O部分における電力の節約が達成される。
【００９１】
特定の時間期間における電力消費は、その特定の期間の間に論理値が遷移する数によって影響される。したがって、論理の遷移が少なくなるOPコードを割り当てることができる場合には、遷移電力の節約を達成することができる。この技法によって節約される総電力は、上で説明した方法などの他の方法と比較すると小さいかもしれないが、この技法は、データが目標メモリデバイスに到達する前に未選択メモリデバイスを通って流れるとき入力/出力の電力消費を低減するための技法と見なすべきである。
【００９２】
OPコードを設計することは、OPコードによる遷移の数がデータによる遷移の数よりはるかに少ない場合、総電力の節約に著しく影響を及ぼさない可能性がある。また、データは、無作為ビットの組合せを含むことができる。しかしながら、電力を少なくするためのOPコードの考察は、多重レジスタアクセスのようにOPコードをベースとする動作の場合に有用となり得る。
【００９３】
表2は、例示的なOPコードおよび対応するビット遷移の数を示す。
【００９４】
【表２】
0005385156.tif 000003
【００９５】
表2には、00hから最大0Fhまでの16個の可能OPコードが含まれている。他のOPコードも可能である。隣接する2つのビットが異なる値を有すると、ビット遷移がカウントされる。たとえば、OPコード05h(0000 0101)は、0->1、1->0、0->1および1->0の4つの遷移を有する。カウントされるビット遷移の数には、示されていない隣接するビットと生じる可能性のある可能ビット遷移は含まれていないことに留意されたい。たとえば、図3を参照すると、OPコードはID番号の後に続いており、データまたはアドレスが続くことがある。ID番号の最下位のビットとOPコードの最上位のビットとの間のビット遷移は考慮されない。同様に、OPコードの最上位のビットとアドレスまたはデータの最下位のビットとの間のビット遷移も考慮されない。しかしながら、このようなビット遷移を考慮した場合には、表に示されている値は異なる値になるはずである。たとえば、第1のOPコード00hは、ID番号の最下位のビットおよび後続のデータ/アドレスの最上位のビットが「1」であるかどうかに応じて、最大2つのビット遷移を有することができる。このような先行/後続の遷移は無作為であると仮定されている。
【００９６】
表2では、OPコードのいくつかは4つのビット遷移を有しており、一方、他のOPコードは、2つのビット遷移しか有していない。第1のOPコード00hは遷移を有していない。より少ないビット遷移で電力の節約を実現することができるため、含まれている遷移がより少ないOPコードであることが好ましい。したがって、より少ない遷移を有するOPコードを含むようにOPコードセットを設計することができる。例示的なOPコードセットは、たとえば00h、01h、02h、03h、04h、06h、07h、08h、0Ch、0Ehおよび0Fhからなっていてもよい。他のOPコードセットも可能である。さらに、OPコードは、それらが生じる統計的可能性に基づいて割り当てることができる。より少ない遷移を有するOPコードに最も頻繁に使用される動作を関連付け、一方、より多くの遷移を有するOPコードに使用頻度が最少の動作を関連付けることができる。
【００９７】
上で説明した実施形態では、デバイスエレメントおよび回路は、分かり易くするために、図に示されているように互いに接続されている。本発明の実践的な応用例では、エレメント、回路などは、互いに直接接続することができる。さらに、エレメント、回路などは、デバイスまたは装置を動作させるために必要な他のエレメント、回路などを介して互いに間接的に接続することができる。したがって、デバイスおよび装置の実際の構造では、エレメントおよび回路は、直接または間接的に結合されており、あるいは互いに接続されている。
【００９８】
上で説明した本発明の実施形態は、一例を意図したものにすぎない。当業者は、添付の特許請求の範囲によって専ら定義されている本発明の範囲を逸脱することなく、変更、修正および変形形態を特定の実施形態に加えることができる。
【符号の説明】
【００９９】
110  構造
130-1、130-2、130-3、----、130-N、230-1、230-2、230-3、---、230-15、230-i、230-(i+1)、730-1、730-2、730-3、---、730-15、830-1、830-2、830-3、830-4、873  メモリデバイス(デバイス)
210、710、810  システム
220、720、820  メモリコントローラ
221、222、841、843、845、847、849、851、853、855、857、859  リンク
312-1  第1のコマンドフォーマット
312-2  第2のコマンドフォーマット
312-3  第3のコマンドフォーマット
312-4  第4のコマンドフォーマット
511、513、515、517、921、923、925、927  入力バッファ
521  コマンド入力(CI)接続
523  クロック入力接続
525  コマンドストローブ入力(CSI)接続
527  データストローブ入力(DSO)接続
531、537、545、931  D型フリップ-フロップ(D-FF)
533、539、553、933  マルチプレクサ
535  コマンド出力接続
543  内部クロック発生器
541、549、551、929  出力バッファ
561  IDレジスタ
563  コマンドインタープリタ
565  アドレスレジスタ
567  前置復号器
569  データ入力レジスタ
571  コントローラ
573  データ出力レジスタ
575  記憶素子(デバイスIDホルダ)
577  比較器
579  メモリコアアレイ
581  OPコードレジスタ
583  OPコード復号器
611  IDクロック発生器
613  OPコードクロック発生器
615  アドレスクロック発生器
617  データクロック発生器
651、661、671、681  カウンタ
653、663、673、683  カウントデタミナ(カウント決定回路)
655  カウントデタミナの出力信号
665  決定信号
657、667、677、687  ANDゲート
675、685  制限値回路
675、685  カウント決定出力信号
676  テンポラリレジストレーション復号器
678、688、945  レジスタ
686  データレジストレーション復号器
732-1、732-2、732-3、---、732-15  制御論理回路
734-1、734-2、734-3、---、734-15  ID一致およびコマンド転送回路
741  共通動作経路
743  電力消費が低減される第1の領域
745  電力消費が低減される第2の領域
930  回路
941  出力ラッチ発生器
943  出力クロック発生器
950  コア制御ブロックおよびメモリコア
960  周辺論理ブロック
【図１】
0005385156.tif 000004
【図２】
0005385156.tif 000005
【図３】
0005385156.tif 000006
【図４】
0005385156.tif 000007
【図５】
0005385156.tif 000008
【図６】
0005385156.tif 000009
【図７】
0005385156.tif 000010
【図８Ａ】
0005385156.tif 000011
【図８Ｂ】
0005385156.tif 000012
【図９Ａ】
0005385156.tif 000013
【図９Ｂ】
0005385156.tif 000014
【図１０Ａ】
0005385156.tif 000015
【図１０Ｂ】
0005385156.tif 000016
【図１１】
0005385156.tif 000017
【図１２】
0005385156.tif 000018
【図１３】
0005385156.tif 000019
【図１４】
0005385156.tif 000020
【図１５】
0005385156.tif 000021
【図１６】
0005385156.tif 000022