JP2023039906A - メモリデバイス管理性バス - Google Patents
メモリデバイス管理性バス Download PDFInfo
- Publication number
- JP2023039906A JP2023039906A JP2022107614A JP2022107614A JP2023039906A JP 2023039906 A JP2023039906 A JP 2023039906A JP 2022107614 A JP2022107614 A JP 2022107614A JP 2022107614 A JP2022107614 A JP 2022107614A JP 2023039906 A JP2023039906 A JP 2023039906A
- Authority
- JP
- Japan
- Prior art keywords
- memory devices
- sideband
- memory
- memory device
- address
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0016—Inter-integrated circuit (I2C)
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Semiconductor Memories (AREA)
- Memory System (AREA)
- Logic Circuits (AREA)
- Information Transfer Systems (AREA)
Abstract
【課題】側波帯バス上でDRAMおよびDBのアドレス指定を拡張する装置、方法、プログラム及び記憶媒体を提供する。【解決手段】電子装置20は、1または複数の基板22と、1または複数の基板に結合されたコントローラと、を備える。コントローラは、0個以上のメモリデバイスに対してそれぞれの側波帯アドレスを列挙し、10個以上のメモリデバイスの個々のメモリデバイスに対して列挙された特定の側波帯アドレスを用いて個々のメモリデバイスとの双方向通信を提供する回路26を含む。【選択図】図2
Description
電子システムは、システム内のデバイス間の主要な通信インターフェースを含む場合があり、この通信インターフェースは、いくつかのシステムでは、「帯域内」バスと呼ばれることがある。システムはまた、主要な通信インターフェースの外部のデバイス間の別の通信インターフェースを含む場合もあり、この通信インターフェースは、いくつかのシステムでは、「側波帯」バスと呼ばれることがある。帯域内バスは、一般に、側波帯バスと比較してはるかに高い帯域幅をサポートする。そのような側波帯通信に利用されることがあるインターフェースの例には、MIPI(Mobile Industry Processor Interface)I2C仕様およびI3C仕様によって定義されたインターフェースが含まれる。
本明細書に記載される内容は、添付の図面において、限定ではなく例として示されている。図示を簡単かつ明確にするために、図に示される要素は必ずしも縮尺通りに描かれていない。例えば、いくつかの要素の寸法は、明確にするために他の要素に対して誇張されている場合がある。さらに、適切とみなされる場合、対応する要素または類似の要素を示すために、図面間で参照ラベルが繰り返されている。
次に、添付の図面を参照して、1または複数の実施形態または実装形態を説明する。特定の構成および配置について説明するが、これは例示のみを目的として行われることを理解されたい。当業者であれば、説明の趣旨および範囲から逸脱することなく、他の構成および配置が用いられてもよいことを認めるであろう。本明細書に記載される技術および/または配置は、本明細書に記載されるもの以外の様々な他のシステムおよび用途においても用いられ得ることが、当業者には明らかであろう。
以下の説明では、例えばシステム・オン・チップ(SoC)アーキテクチャなどのアーキテクチャで実現され得る様々な実装形態を示すが、本明細書に記載される技術および/または構成の実装形態は、特定のアーキテクチャおよび/またはコンピューティングシステムに限定されず、同様の目的のために任意のアーキテクチャおよび/またはコンピューティングシステムによって実装されてもよい。例えば、複数の集積回路(IC)チップおよび/もしくはパッケージを用いた様々なアーキテクチャ、ならびに/またはセット・トップ・ボックス、スマートフォンなどといった様々なコンピューティングデバイスおよび/もしくは消費者向け電子(CE)デバイスにより、本明細書に記載される技術および/または配置を実装してもよい。さらに、以下の説明は、システム構成要素の論理実装、タイプおよび相互関係、論理分割/統合の選択肢などといった多数の具体的詳細を示す場合があるが、特許請求される主題は、そのような具体的詳細なしで実施されてもよい。他の例では、本明細書に開示される内容を不明瞭にしないために、例えば、制御構造や完全なソフトウェア命令シーケンスなどのいくつかの内容が詳細に示されない場合がある。
本明細書に開示される内容は、ハードウェア、フィールド・プログラマブル・ゲート・アレイ(FPGA)、ファームウェア、ドライバ、ソフトウェア、またはそれらの任意の組み合わせで実装され得る。本明細書に開示される内容はまた、ムーアマシン、ミーリーマシン、および/または1もしくは複数のプロセッサによって読み出され、実行され得る機械可読媒体に格納された命令として実装されてもよい。機械可読媒体は、機械(例えば、コンピューティングデバイス)によって読み出し可能な形式で情報を格納または送信するための任意の媒体および/または機構を含み得る。例えば、機械可読媒体は、読み出し専用メモリ(ROM、ランダム・アクセス・メモリ(RAM)、ダイナミック・ランダム・アクセス・メモリ(DRAM)、磁気ディスク記憶媒体、光記憶媒体、NVメモリデバイス、相変化メモリ、量子ビット固体量子メモリ、電気的、光学的、音響的またはその他の形態の伝播信号(例えば、搬送波、赤外線信号、デジタル信号など)その他を含み得る。
本明細書において「1つの実装形態」、「一実装形態」、「例示的な実装形態」などという場合それは、記載の実装形態は特定の特徴、構造、または特性を含み得るが、すべての実施形態が必ずしもその特定の特徴、構造、または特性を含むとは限らないことを示す。さらに、そのような語句は、必ずしも同じ実装形態を指しているとは限らない。さらに、特定の特徴、構造、または特性が一実施形態に関連して説明されている場合、本明細書に明示的に記載されているか否かにかかわらず、そのような特徴、構造、または特性を他の実装形態に関連して達成することは当業者の知識の範囲内であることが提起されている。
本明細書に記載される様々な実施形態は、メモリコンポーネントおよび/またはメモリコンポーネントへのインターフェースを含み得る。そのようなメモリコンポーネントは、揮発性および/または不揮発性(NV)メモリを含み得る。揮発性メモリは、媒体によって格納されたデータの状態を維持するために電力を必要とする記憶媒体であり得る。揮発性メモリの非限定的な例には、ダイナミックRAM(DRAM)やスタティックRAM(SRAM)などの様々なタイプのランダム・アクセス・メモリ(RAM)が含まれ得る。メモリモジュールで使用され得るDRAMの特定のタイプの1つが、シンクロナスダイナミックRAM(SDRAM)である。特定の実施形態では、メモリコンポーネントのDRAMは、JEDEC(Joint Electron Device Engineering Council(米国合同電子デバイス協議会))によって公表された規格、例えば、ダブル・データ・レート(DDR)SDRAMについてはJESD79F、DDR2 SDRAMについてはJESD79-2F、DDR3 SDRAMについてはJESD79-3F、DDR4 SDRAMについてはJESD79-4A、低電力DDR(LPDDR)についてはJESD209、LPDDR2についてはJESD209-2、LPDDR3についてはJESD209-3、LPDDR4についてはJESD209-4(これらの規格はjedec.orgで入手可能である)に準拠し得る。そのような規格(および同様の規格)をDDRベースの規格と呼んでもよく、そのような規格を実装する記憶デバイスの通信インターフェースをDDRベースのインターフェースと呼んでもよい。
図1を参照すると、電子システム10の一実施形態は、10個以上のメモリデバイス12A~12N(まとめて「メモリデバイス12」)と、10個以上のメモリデバイス12に通信可能に結合されたコントローラ14とを含み得る。コントローラ14は、10個以上のメモリデバイス12に対してそれぞれの側波帯アドレスを列挙し、10個以上のメモリデバイス12の個々のメモリデバイス12Aに対して列挙された特定の側波帯アドレスを用いて個々のメモリデバイス12Aとの双方向通信を提供する第1の回路16を含み得る。いくつかの実施形態では、第1の回路16は、側波帯アドレス列挙のための10個以上のメモリデバイス12のサブグループを選択し、選択されたグループに列挙コマンドを送るようにさらに構成され得る(例えば、列挙コマンドはグループ全体にブロードキャストされてもよく、チップ選択がアサートされたサブグループのみが列挙コマンドに作用し、他のすべてのデバイスはコマンドを無視する)。
例えば、第1の回路16は、10個以上のメモリデバイス12のうち選択されたサブグループ内にある各メモリデバイスについて、それぞれのチップ選択信号をアサートし、10個以上のメモリデバイス12のうち選択されたサブグループ内にない各メモリデバイスについて、それぞれのチップ選択信号をデアサートするように構成されてもよい。いくつかの実施形態では、第1の回路16は、10個以上のメモリデバイス12のうち選択されたサブグループ内にある各メモリデバイスにおける側波帯アドレスの第1の部分をプログラムするようにさらに構成され得る。例えば、第1の回路16は、選択されたサブグループにおいてプログラムされるべき側波帯アドレスの第1の部分の値をブロードキャストするように構成されてもよい(例えば、値は、チップ選択信号がアサートされているメモリデバイス12のサブグループによってのみ処理される)。
いくつかの実施形態では、個々のメモリデバイス12A(例えば、および個々のメモリデバイス12B~12N)は、コントローラ14からの列挙コマンドに応答して個々のメモリデバイス12Aの側波帯アドレスの第1の部分をプログラムし、個々のメモリデバイス12Aのストラップピン上の電圧値に従って個々のメモリデバイス12Aの側波帯アドレスの第2の部分を設定する第2の回路18を含む。例えば、第2の回路18は、ストラップピン上の抵抗値に従って電圧値を発生させるために列挙コマンドに応答してストラップピンに電流を注入し、電圧値をデジタル値に変換し、デジタル値に基づいて個々のメモリデバイス12Aの側波帯アドレスの第2の部分を設定するように構成されてもよい。本明細書の実施形態のいずれにおいても、10個以上のメモリデバイス12のうちの少なくとも1つは、集積回路(IC)チップと同じダイ上にダイナミック・ランダム・アクセス・メモリ(DRAM)またはデータバッファ(DB)を有するICチップを備え得る。
上記のメモリデバイス12、コントローラ14、第1の回路16、第2の回路18、および他のシステム構成要素の各々の実施形態は、ハードウェア、ソフトウェア、またはそれらの任意の適切な組み合わせで実装され得る。例えば、ハードウェア実装形態は、例えば、プログラマブル・ロジック・アレイ(PLA)、FPGA、複合プログラマブル・ロジック・デバイス(CPLD)などの構成可能な論理や、例えば、特定用途向け集積回路(ASIC)、相補型金属酸化膜半導体(CMOS)、またはトランジスタ-トランジスタ論理(TTL)技術、またはそれらの任意の組み合わせなどの回路技術を使用した固定機能論理ハードウェアを含んでいてもよい。コントローラ14の実施形態は、汎用コントローラ、専用コントローラ、メモリコントローラ、ストレージコントローラ、マイクロコントローラ、汎用プロセッサ、専用プロセッサ、中央処理装置(CPU)、実行ユニットなどを含み得る。いくつかの実施形態では、メモリデバイス12、第1の回路16、第2の回路18、および/または他のシステムメモリは、(例えば、同じダイ上で)コントローラ14を含む様々な構成要素内に配置されてもよく、またはそれと同じ場所に配置されてもよい。
代替的または追加的に、これらの構成要素の全部または一部が、プロセッサまたはコンピューティングデバイスによって実行されるべき、RAM、ROM、プログラマブルROM(PROM)、ファームウェアなどといった機械可読記憶媒体またはコンピュータ可読記憶媒体に格納された論理命令セットとして1または複数のモジュールに実装されてもよい。例えば、構成要素の動作を実行すべきコンピュータ・プログラム・コードは、PYTHON、PERL、JAVA(登録商標)、SMALLTALK(登録商標)、C++、C#、VHDL、Verilog、System Cなどといったオブジェクト指向プログラミング言語、および「C」プログラミング言語や同様のプログラミング言語などの従来の手続き型プログラミング言語を含む、1または複数のオペレーティングシステム(OS)適用可能/適切なプログラミング言語の任意の組み合わせで書かれてもよい。例えば、メモリデバイス12、永続的記憶媒体、または他のシステムメモリは、コントローラ14によって実行されると、システム10に、システム10の1または複数の構成要素、特徴、または態様(例えば、メモリデバイス12に対して側波帯アドレスを列挙すること、メモリデバイス12の個々のメモリデバイスに対して列挙された特定の側波帯アドレスを用いて個々のメモリデバイスとの双方向通信を提供することなど)を実施させる命令セットを格納し得る。
図2を参照すると、電子装置20の一実施形態は、1または複数の基板22と、1または複数の基板22に結合されたコントローラ24とを含み得る。コントローラ24は、10個以上のメモリデバイスに対してそれぞれの側波帯アドレスを列挙し、10個以上のメモリデバイスの個々のメモリデバイスに対して列挙された特定の側波帯アドレスを用いて個々のメモリデバイスとの双方向通信を提供する回路26を含み得る。いくつかの実施形態では、回路26は、側波帯アドレス列挙のための10個以上のメモリデバイスのサブグループを選択し、選択されたグループに列挙コマンドを送るようにさらに構成され得る。例えば、回路26は、10個以上のメモリデバイスのうち選択されたサブグループ内にある各メモリデバイスについて、それぞれのチップ選択信号をアサートし、10個以上のメモリデバイスのうち選択されたサブグループ内にない各メモリデバイスについて、それぞれのチップ選択信号をデアサートするように構成されてもよい。いくつかの実施形態では、回路26は、10個以上のメモリデバイスのうち選択されたサブグループ内にある各メモリデバイスにおける側波帯アドレスの第1の部分をプログラムするようにさらに構成され得る。例えば、回路26は、選択されたサブグループにおいてプログラムされるべき側波帯アドレスの第1の部分の値をブロードキャストするように構成されてもよい。本明細書の実施形態のいずれにおいても、10個以上のメモリデバイス12のうちの少なくとも1つは、ICチップと同じダイ上にDRAMまたはDBを有するICチップを備え得る。
図3を参照すると、電子装置30の一実施形態は、メモリ32と、メモリ32に結合された回路34とを含み得る。回路34は、コントローラからの列挙コマンドに応答して装置30の側波帯アドレスを設定し、列挙された側波帯アドレスにおいてコントローラとの双方向通信を提供するように構成され得る。いくつかの実施形態では、回路34は、コントローラからの列挙コマンドに応答して装置30の側波帯アドレスの第1の部分をプログラムし、装置30のストラップピン36上の電圧値に従って装置30の側波帯アドレスの第2の部分を設定するようにさらに構成され得る。例えば、回路34は、ストラップピン36上の抵抗値に従って電圧値を発生させるために列挙コマンドに応答してストラップピン36に電流を注入し、電圧値をデジタル値に変換し、デジタル値に基づいて装置30の側波帯アドレスの第2の部分を設定するように構成されてもよい。いくつかの実施形態では、装置30の側波帯アドレスの所望の第2の部分を提供する所望の電圧値を発生させるためにストラップピン36とVSSとの間に所定の抵抗値を有する抵抗器38が結合され得る。いくつかの実施形態では、装置30はICチップを備えていてもよく、メモリ32はDRAMを備えていてもよい。代替的または追加的に、メモリ32はDBを備えていてもよい。
コントローラ24、回路26、メモリ32、および/または回路34の実施形態は、例えば、本明細書に記載されるようなシステム、装置、コンピュータ、デバイスなどにおいて実装され得る。より詳細には、回路26、34のハードウェア実装形態は、例えば、PLA、FPGA、CPLDなどの構成可能な論理や、例えば、ASIC、CMOS、またはTTL技術、またはそれらの任意の組み合わせなどの回路技術を使用した固定機能論理ハードウェアを含み得る。代替的または追加的に、回路26、34は、プロセッサまたはコンピューティングデバイスによって実行されるべき、RAM、ROM、PROM、ファームウェアなどといった機械可読記憶媒体またはコンピュータ可読記憶媒体に格納された論理命令セットとして1または複数のモジュールに実装されてもよい。例えば、構成要素の動作を実行すべきコンピュータ・プログラム・コードは、PYTHON、PERL、JAVA、SMALLTALK、C++、C#、VHDL、Verilog、System Cなどといったオブジェクト指向プログラミング言語、および「C」プログラミング言語や同様のプログラミング言語などの従来の手続き型プログラミング言語を含む、1または複数のOS適用可能/適切なプログラミング言語の任意の組み合わせで書かれてもよい。
例えば、回路26、34は、回路26、34が1または複数の基板に結合された、1または複数の基板を含み得る半導体装置上に実装されてもよい。いくつかの実施形態では、回路26、34は、半導体基板(例えば、シリコン、サファイア、ガリウムヒ素など)上の構成可能な論理および固定機能ハードウェア論理のうちの1または複数で少なくとも部分的に実装され得る。例えば、回路26、34は、基板内に配置されたトランジスタチャネル領域を有する基板に結合されたトランジスタアレイおよび/または他の集積回路部品を含み得る。回路26、34と基板との間の界面は、階段接合ではない場合もある。回路26、34はまた、基板の初期ウェハ上に成長させたエピタキシャル層を含むとみなされてもよい。
次に図4A~図4Cを見ると、メモリを制御する方法40の一実施形態は、ブロック41で、10個以上のメモリデバイスに対してそれぞれの側波帯アドレスを列挙する段階と、ブロック42で、10個以上のメモリデバイスの個々のメモリデバイスに対して列挙された特定の側波帯アドレスを用いて個々のメモリデバイスとの双方向通信を提供する段階とを含む。方法40のいくつかの実施形態は、ブロック43で、側波帯アドレス列挙のための10個以上のメモリデバイスのサブグループを選択する段階と、ブロック44で、選択されたグループに列挙コマンドを送る段階とをさらに含み得る(例えば、列挙コマンドはグループ全体にブロードキャストされてもよく、チップ選択がアサートされたサブグループのみが列挙コマンドに作用し、他のすべてのデバイスはコマンドを無視する)。
例えば、方法40は、ブロック45で、10個以上のメモリデバイスのうち選択されたサブグループ内にある各メモリデバイスについてそれぞれのチップ選択信号をアサートする段階と、ブロック46で、10個以上のメモリデバイスのうち選択されたサブグループ内にない各メモリデバイスについて、それぞれのチップ選択信号をデアサートする段階とを含み得る。次いで、方法40は、ブロック47で、10個以上のメモリデバイスのうち選択されたサブグループ内にある各メモリデバイスにおける側波帯アドレスの第1の部分をプログラムする段階を含み得る。例えば、方法40は、ブロック48で、選択されたサブグループにおいてプログラムされるべき側波帯アドレスの第1の部分の値をブロードキャストする段階を含み得る。
いくつかの実施形態では、方法40は、ブロック49で、列挙コマンドに応答して個々のメモリデバイスによって側波帯アドレスの第1の部分をプログラムする段階と、ブロック50で、個々のメモリデバイスのストラップピン上の電圧値に従って個々のメモリデバイスによって側波帯アドレスの第2の部分を設定する段階とをさらに含み得る。例えば、方法40は、ブロック51で、ストラップピン上の抵抗値に従って電圧値を発生させるために列挙コマンドに応答して個々のメモリデバイスによってストラップピンに電流を注入する段階と、ブロック52で、個々のメモリデバイスによって電圧値をデジタル値に変換する段階と、ブロック53で、デジタル値に基づいて個々のメモリデバイスによって側波帯アドレスの第2の部分を設定する段階とをさらに含み得る。本明細書の実施形態のいずれにおいても、ブロック54で、10個以上のメモリデバイスのうちの少なくとも1つは、DRAMを有するICチップを備え得る。代替的または追加的に、ブロック55で、10個以上のメモリデバイスのうちの少なくとも1つは、DBを有するICチップを備えていてもよい。
方法40の実施形態は、例えば、本明細書に記載されるようなシステム、装置、コンピュータ、デバイスなどにおいて実装され得る。より詳細には、方法40のハードウェア実装形態は、例えば、PLA、FPGA、CPLDなどの構成可能な論理や、例えば、ASIC、CMOS、またはTTL技術、またはそれらの任意の組み合わせなどの回路技術を使用した固定機能論理ハードウェアを含み得る。ハイブリッドハードウェア実装形態は、制御フローおよびデータパスが機能のための論理を実装するような静的動的システム・オン・チップ(SoC)再構成可能デバイスを含む。代替的または追加的に、方法40は、プロセッサまたはコンピューティングデバイスによって実行されるべき、RAM、ROM、PROM、ファームウェアなどといった機械可読記憶媒体またはコンピュータ可読記憶媒体に格納された論理命令セットとして1または複数のモジュールに実装されてもよい。例えば、構成要素の動作を実行すべきコンピュータ・プログラム・コードは、PYTHON、PERL、JAVA、SMALLTALK、C++、C#、VHDL、Verilog、System Cなどといったオブジェクト指向プログラミング言語、および「C」プログラミング言語や同様のプログラミング言語などの従来の手続き型プログラミング言語を含む、1または複数のOS適用可能/適切なプログラミング言語の任意の組み合わせで書かれてもよい。
例えば、方法40は、コンピュータ可読媒体上に実装されてもよい。方法40の実施形態または部分は、ファームウェア、アプリケーション(例えば、アプリケーション・プログラミング・インターフェース(API)を介して)、またはOS上で動作するドライバソフトウェアにおいて実装され得る。加えて、論理命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、データ・セット・アーキテクチャ(DSA)コマンド、(機械語命令、機種依存型命令、マイクロコード、状態設定データ、集積回路の構成データ、電子回路をパーソナル化する状態情報、および/またはハードウェアに固有の他の構造要素(例えば、ホストプロセッサ、中央処理装置/CPU、マイクロコントローラ、ムーアマシン、ミーリーマシンなど)も含み得る。
いくつかの実施形態は、有利には、8個を超える接続されたメモリデバイスについてのDRAM管理性バスのための技術を提供し得る。従来のI2C/I3Cドメインコントローラは、同じデバイスタイプ(例えば、デバイスID)の8個のデバイスしかアドレス指定することができない。一部のシステムは、8個をはるかに超えるDRAMおよび/またはデータバッファ(DB)(例えば、一部のシステムでは50個を超えるデバイス)の側波帯管理性から利益を得ることができる。8個を超えるデバイスを構成するために、従来の側波帯バス技術は、すべてのデバイスをグループごとに最大8個のデバイスにグループ化することを必要とする。次いで、各グループは、列挙フェーズの間に一意に選択され、デバイスタイプIDを割り当てられ得る。
従来の技術では、DRAMごと、DBごとのアドレス指定可能性は、帯域内シグナリングを必要とする。例えば、従来のシステムは、8個を超えるデバイスの構成を帯域内DDRバス上で行い、そのような構成に側波帯バスを利用しない場合がある。問題は、帯域内バスが使用前にセットアップおよび/または訓練される必要があることである。より高速では、DDRインターフェース自体が、さらなる帯域内構成の前に構成を必要とする。加えて、ホストは、帯域幅に影響を与えずに実行時間中に個々のメモリデバイスにアクセスすることができない。有利には、実施形態は、前述の問題のうちの1または複数を克服する。いくつかの実施形態は、(例えば、I3Cインターフェースを用いて)側波帯バス上でDRAMおよびDBのアドレス指定を拡張する技術を提供する。いくつかの実施形態では、一意の側波帯アドレスが、すべてのDRAMおよびDBに提供される。
図5を参照すると、コンピューティングシステム58の一実施形態は、レジスタ・クロック・ドライバ(RCD)59と、デバイスが名目上の行および/または名目上の列にグループ化されたマトリックスまたはグリッドとして論理的に編成された複数のデバイス(例えば、DRAMデバイス、DBデバイスなど)とを含む。いくつかの実装形態では、拡張されたアドレス指定は、側波帯バスのみに排他的に依拠してRCD59のチップ選択(CS)出力を個別に制御する。RCD59自体は、側波帯バス上に配置される。デュアル・インライン・メモリ・モジュール(DIMM)上の個々のDRAMデバイスおよびDBデバイスのアドレスを列挙するために、例えば、デバイスは行と列の両方で構成されたグリッドとしてグループ化される。DIMMは、論理的編成に従うグリッドに物理的に編成されたデバイスを含んでいてもよいが、そのような物理的編成は必要ではない。
各行は、RCDからの対応する専用DDR CS出力信号と関連付けられる。一方、同じ行内の各デバイスの列位置は、(例えば、列位置または列アドレスと呼ばれる)固定された固有値によって識別され、この値は、所定の値を有するストラップ抵抗器によって決定され得る。あるいは、各デバイス上のストラップピンに所望の電圧値を提供するために他の技術が用いられてもよい。あるいは、ROMまたはヒューズプログラマブルレジスタが、固定された固有値を保持してもよい。
列挙フェーズの間に、RCD上のCSを使用してグループ(例えば、DRAMの行)を選択することによって、デバイスに4ビットの行アドレスがプログラムされる。列挙コマンドを受け取ると、デバイスは、固有の指定された抵抗値に紐付けられたデバイス自体のストラップピンに少量の電流を注入して固有の電圧レベルを発生させる。その後、各デバイスは、この電圧値を列位置の3ビットのデジタルIDに変換してラッチし、次いで電流源をオフにする。
図6A~図6Cを参照すると、DRAMデバイスのための例示的な通信プロトコルフォーマットは、デバイスアドレスのための7ビットと、読み出し要求または書き込み要求を示す1ビットとを含み得る。図6Bは、DRAMデバイスに4ビットの行位置(例えば、ROW ID)を提供するために利用され得る信号およびフィールドの一例を示している。図6Cは、DRAMデバイスのための3ビットの列位置(例えば、COL ID)を生成するためにストラップピンとVSSとの間に結合され得る固定された抵抗値の一例を示している。図6Aは、行位置と列位置とがDRAMデバイスの一意のデバイスアドレスにどのようにマップされ得るかを示している。
図7A~図7Cを参照すると、DBデバイスのための例示的な通信プロトコルフォーマットは、デバイスアドレスのための7ビットと、読み出し要求または書き込み要求を示す1ビットとを含み得る。図7Bは、DBデバイスに4ビットの行位置(例えば、ROW ID)を提供するために利用され得る信号およびフィールドの一例を示している。図7Cは、3ビットのホスト識別子(例えば、HID)を生成するためにストラップピンとVSSとの間に結合され得る固定された抵抗値の一例を示している。図7Aは、行とHIDとがDBデバイスの一意のデバイスアドレスにどのようにマップされ得るかを示している。
列挙フェーズにおいて、いくつかの実施形態では、行位置および列位置(例えば、またはHID)が確立され、一意の7ビットのアドレスにマップされる。例えば、7ビットのアドレスは、規格I2C/I3Cのアドレス・プロトコル・フォーマットに準拠してもよい。アドレス列挙が完了した後、ホスト側波帯バスコントローラ(例えば、I3Cホストコントローラ)は、次いで、「グリッド」から任意のデバイス(例えば、DRAMやDB)を一意に選択して、選択されたデバイスの構成レジスタに完全にアクセスすることができる。有利には、列挙後、側波帯バスアドレス指定は、RCDから出てくるDDR信号をDDRプロトコル使用のために返すことができるように、DDR CS信号またはDDR信号を必要としない。実施形態は、有利には、帯域内メモリチャネルの代わりに側波帯バスを介してDRAMおよびDBとの双方向通信を可能にする。例えば、実施形態では、初期設定時に側波帯バスを利用して個々のDRAMデバイスおよびDBデバイスにアクセスして、終端値、タイミング値、ポストパッケージ修復などを設定してもよい。また実施形態では、実行時に側波帯バスを利用して個々のDRAMデバイスおよびDBデバイスにアクセスして、温度値、他の健全状態/エラー状態などを読み出してもよい。実施形態は、側波帯バスを利用して、デバイス構成のための従来の技術を置き換え、またセキュリティ目的での個々のデバイスの認証も可能にし得る。
図8を参照すると、負荷低減DIMM(LRDIMM)80の一実施形態は、図示のように結合された、RCD81と、シリアルプレゼンス検出(SPD)ハブ82と、電源管理IC(PMIC)83と、2つの熱センサTS0およびTS1とを含む。LRDIMM80は、グリッドまたはマトリックスを利用して、前方のDRAMデバイスと後方のDRAMデバイスと(例えば、前方のDRAMは斜線で示されている)負荷低減(LR)バッファとを列挙のために名目上の行と名目上の列とに分離する。一部のメモリデバイスは2つのループバックピンを含む場合があり、LRDIMM80の実施形態は、ループバック機能を変更することなく、側波帯バスのクロックとデータとの二重目的であり得る。例えば、DRAMランクCS信号は、アドレス指定列挙中に行アドレスにおける修飾に利用され、LRバッファのバッファCS信号も同様である。マトリックスの行アドレスはSPDハブ82に格納され、バス上ですべてのDRAM/バッファにブロードキャストされる。アサートされたCS信号を有するDRAM/バッファのみが、それらの行アドレスをブロードキャストされた値に従って列挙する。列アドレスは、(例えば、図3および図6Cおよび図7Cに示されるように)VSSに対する抵抗値によって制御されるストラップピン電流によって列挙される。アドレス列挙が完了した後、ホスト側波帯バスコントローラは、すべてのデバイス構成レジスタに完全にアクセスすることができ、CS信号は、それぞれの列挙されたアドレスにおける個々のデバイスにアクセスするためにはもはや不要になる。
図9を参照すると、レジスタードDIMM(RDIMM)90の一実施形態は、図示のように結合された、RCD91と、SPDハブ92と、PMIC93と、2つの熱センサTS0およびTS1とを含む。RDIMM90は、グリッドまたはマトリックスを利用して、前方のDRAMデバイスと後方のDRAMデバイスと(例えば、前方のDRAMは斜線で示されている)を列挙のために名目上の行と名目上の列とに分離する。DRAMデバイスは2つのループバックピンを含み、RDIMM90の実施形態は、ループバック機能を変更することなく、側波帯バスのクロックとデータとの二重目的である。例えば、DRAMランクCS信号は、アドレス指定列挙中に行アドレスにおける修飾に利用される。マトリックスの行アドレスはSPDハブ92に格納され、バス上ですべてのDRAMデバイスにブロードキャストされる。アサートされたCS信号を有するDRAMデバイスのみが、それらの行アドレスをブロードキャストされた値に従って列挙する。列アドレスは、(例えば、図3および図6Cおよび図7Cに示されるように)VSSに対する抵抗値によって制御されるストラップピン電流によって列挙される。アドレス列挙が完了した後、ホスト側波帯バスコントローラは、すべてのデバイス構成レジスタに完全にアクセスすることができ、CS信号は、それぞれの列挙されたアドレスにおける個々のデバイスにアクセスするためにはもはや不要になる。
図10を参照すると、アンレジスタードDIMM(UDIMM)100(例えば、またはスモールアウトラインDIMM(SODIMM))の一実施形態は、図示のように結合された、SPDハブ102と、PMIC103と、2つの熱センサTS0およびTS1とを含む。UDIMM100は、グリッドまたはマトリックスを利用して、前方のDRAMデバイスと後方のDRAMデバイスと(例えば、前方のDRAMは斜線で示されている)を列挙のために名目上の行と名目上の列とに分離する。DRAMデバイスは2つのループバックピンを含み、UDIMM100の実施形態は、ループバック機能を変更することなく、側波帯バスのクロックとデータとの二重目的である。例えば、DRAMランクCS信号は、アドレス指定列挙中に行アドレスにおける修飾に利用される。マトリックスの行アドレスはSPDハブ102に格納され、バス上ですべてのDRAMデバイスにブロードキャストされる。アサートされたCS信号を有するDRAMデバイスのみが、それらの行アドレスをブロードキャストされた値に従って列挙する。列アドレスは、(例えば、図3および図6Cおよび図7Cに示されるように)VSSに対する抵抗値によって制御されるストラップピン電流によって列挙される。アドレス列挙が完了した後、ホスト側波帯バスコントローラは、すべてのデバイス構成レジスタに完全にアクセスすることができ、CS信号は、それぞれの列挙されたアドレスにおける個々のデバイスにアクセスするためにはもはや不要になる。
本明細書で論じる技術は、様々なコンピューティングシステム(例えば、デスクトップ、ワークステーション、サーバ、ラックシステムなどといった非モバイル・コンピューティング・デバイス、スマートフォン、タブレット、ウルトラモバイル・パーソナル・コンピュータ(UMPC)、ラップトップコンピュータ、ULTRABOOKコンピューティングデバイス、スマートウォッチ、スマートグラス、スマートブレスレットなどといったモバイル・コンピューティング・デバイス、および/またはモノのインターネット(IoT)デバイス(例えば、センサ、カメラなど)などといったクライアント/エッジデバイスを含む)において提供され得る。
次に図11を見ると、コンピューティングシステム200の一実施形態は、1または複数のプロセッサ202-1~202-N(本明細書では一般に「プロセッサ202」または「プロセッサ202」と呼ばれる)を含み得る。プロセッサ202は、相互接続またはバス204を介して通信し得る。各プロセッサ202は様々な構成要素を含む場合があり、そのいくつかを、明確にするためにプロセッサ202-1に関してのみ論じる。したがって、残りのプロセッサ202-2~202-Nの各々は、プロセッサ202-1に関して論じられるものと同じかまたは同様の構成要素を含み得る。
いくつかの実施形態では、プロセッサ202-1は、1または複数のプロセッサコア206-1~206-M(本明細書では「コア206」、またはより一般的に「コア206」と呼ぶ)と、キャッシュ208(様々な実施形態において共有キャッシュもしくはプライベートキャッシュであり得る)および/またはルータ210とを含み得る。プロセッサコア206は、単一の集積回路(IC)チップ上に実装され得る。さらに、チップは、1または複数の共有キャッシュおよび/またはプライベートキャッシュ(キャッシュ208など)、バスまたは相互接続(バスまたは相互接続212など)、回路270、メモリコントローラ、または他の構成要素を含み得る。
いくつかの実施形態では、ルータ210は、プロセッサ202-1および/またはシステム200の様々な構成要素間で通信するために使用され得る。さらに、プロセッサ202-1は、2個以上のルータ210を含んでいてもよい。さらに、多数のルータ210が通信して、プロセッサ202-1の内部または外部の様々な構成要素間のデータルーティングを可能にしてもよい。
キャッシュ208は、コア206などのプロセッサ202-1の1または複数の構成要素によって利用される(例えば、命令を含む)データを格納し得る。例えば、キャッシュ208は、プロセッサ202の構成要素によるより高速なアクセスのために、メモリ214に格納されたデータをローカルにキャッシュし得る。図11に示されるように、メモリ214は、相互接続204を介してプロセッサ202と通信し得る。いくつかの実施形態では、キャッシュ208(共有されてもよい)は様々なレベルを有していてもよく、例えば、キャッシュ208は中間レベルキャッシュおよび/または最終レベルキャッシュ(LLC)であってもよい。また、各コア206は、レベル1(L1)キャッシュ(216-1)(本明細書では一般に「L1キャッシュ216」と呼ぶ)を含んでいてもよい。プロセッサ202-1の様々な構成要素は、バス(例えば、バス212)および/またはメモリコントローラもしくはハブを介して、キャッシュ208と直接通信し得る。
図11に示されるように、メモリ214は、メモリコントローラ220を介してシステム200の他の構成要素に結合され得る。メモリ214は、揮発性メモリを含んでいてもよく、メインメモリまたはシステムメモリと言い換えて呼ばれる場合がある。メモリコントローラ220は、相互接続204とメモリ214との間に結合されるように示されてはいるが、メモリコントローラ220は、システム200内の他の場所に配置されてもよい。例えば、いくつかの実施形態では、メモリコントローラ220またはその一部が、プロセッサ202のうちの1つの内部に設けられてもよい。あるいは、メモリ214は、バイトアドレス指定可能不揮発性メモリを含んでいてもよい。
システム200は、(例えば、有線インターフェースまたは無線インターフェースを介してコンピュータネットワークおよび/またはクラウド229と通信する)ネットワークインターフェース228を介して他のデバイス/システム/ネットワークと通信し得る。例えば、ネットワークインターフェース228は、ネットワーク/クラウド229と無線で(例えば、米国電気電子技術者協会(IEEE)802.11インターフェース(IEEE802.11a/b/g/n/acなどを含む)、セルラーインターフェース、3G、4G、LTE、BLUETOOTH(登録商標)などを介して)通信するためのアンテナ(図示せず)を含み得る。
システム200はまた、ストレージコントローラ225を介して相互接続204に結合された記憶デバイス230などの記憶デバイスも含み得る。よって、ストレージコントローラ225は、システム200の様々な構成要素による記憶デバイス230へのアクセスを制御し得る。さらに、ストレージコントローラ225は、図11において相互接続204に直接結合されるように示されているが、ストレージコントローラ225は、代替的に、ストレージバス/相互接続(例えば、SATA(Serial Advanced Technology Attachment)バス、周辺機器相互接続(PCI)(またはPCI EXPRESS(PCIe)インターフェース、NVM EXPRESS(NVMe)、シリアル接続SCSI(SAS)、ファイバチャネルなど)を介して、システム200の1または複数の他の構成要素と通信することもできる(例えば、ストレージバスは、バスブリッジ、チップセットなどのような他の何らかのロジックを介して相互接続204に結合される)。加えて、ストレージコントローラ225は、様々な実施形態において、メモリ・コントローラ・ロジックに組み込まれるか、または同じ集積回路(IC)デバイス上(例えば、記憶デバイス230と同じ回路基板デバイス上や、記憶デバイス230と同じ筐体内)に設けられてもよい。
さらに、ストレージコントローラ225および/または記憶デバイス230は、1または複数のセンサ(図示せず)に結合されて、1または複数のセンサの状態またはセンサによって検出された値を示す(例えば、1または複数のビットまたは信号の形態の)情報を受け取ってもよい。これらのセンサは、温度、動作周波数、動作電圧、電力消費、および/またはコア間通信活動などといった、システム/プラットフォームの電力/熱挙動に影響を及ぼす様々な要因の変動を感知するために、コア206、相互接続204または212、プロセッサ202の外部の構成要素、記憶デバイス230、SSDバス、SATAバス、ストレージコントローラ225、回路260、回路270などを含む、システム200(または本明細書で論じられる他のコンピューティングシステム)の構成要素に近接して設けられ得る。
図11に示されるように、回路260および回路270の特徴または態様は、システム200全体に分散されてもよく、かつ/またはシステム200の様々な構成要素と同じ場所に配置/統合されてもよい。側波帯デバイス管理技術を必要とし得るか、または側波帯デバイス管理技術から利益を得ることができるシステム200の任意の態様は、回路260および/または回路270を含み得る。例えば、プロセッサ202、メモリ214、メモリコントローラ220、ストレージコントローラ225、およびネットワークインターフェース228は、回路260を各々含んでいてもよく、回路260は、システム200と同じ筐体内にあってもよく、かつ/またはシステム200のプリント回路基板(PCB)上に完全に集積されていてもよい。例えば、回路260は、様々な実施形態の列挙/構成態様を実装するように構成されてもよく、回路270は、様々な実施形態のデバイス態様を実装するように構成されてもよい。
有利には、回路260および回路270は、システム10(図1)、装置20(図2)、装置30(図3)、方法40(図4A~図4C)、コンピューティングシステム58(図5)、プロトコルフォーマット(図6A~図7C)、LRDIMM80(図8)、RDIMM90(図9)、UDIMM/SODIMM100(図10)、および/または本明細書で論じられた側波帯デバイス管理機能のいずれかの1または複数の態様を実装するための技術を含み得る。システム200は、前述の構成要素の外部に位置するさらなる回路260、270を含み得る。
いくつかの実施形態では、メモリコントローラ220は、メモリ214に結合された帯域内バス252(例えば、DDRインターフェースを用いる)および側波帯バス254(例えば、I3Cインターフェースを用いる)を含み得る。メモリ214は、10個以上のメモリデバイス(例えば、複数のDRAMチップおよび/またはDBチップを有するDIMM)を含んでいてもよく、回路260は、メモリ214の10個以上のメモリデバイスに対してそれぞれの側波帯アドレスを列挙し、個々のメモリデバイスに列挙された特定の側波帯アドレスを用いてメモリ214の個々のメモリデバイスとの双方向通信を提供するように構成され得る。いくつかの実施形態では、回路260は、側波帯アドレス列挙のための10個以上のメモリデバイスのサブグループを選択し、選択されたグループに列挙コマンドを送るようにさらに構成され得る。例えば、回路260は、10個以上のメモリデバイスのうち選択されたサブグループ内にある各メモリデバイスについて、それぞれのチップ選択信号をアサートし、10個以上のメモリデバイスのうち選択されたサブグループ内にない各メモリデバイスについて、それぞれのチップ選択信号をデアサートするように構成されてもよい。いくつかの実施形態では、回路260は、10個以上のメモリデバイスのうち選択されたサブグループ内にある各メモリデバイスにおける側波帯アドレスの第1の部分をプログラムするようにさらに構成され得る。例えば、回路260は、選択されたサブグループにおいてプログラムされるべき側波帯アドレスの第1の部分の値をブロードキャストするように構成されてもよい(例えば、値は、チップ選択信号がアサートされているメモリデバイスのサブグループによってのみ処理される)。
いくつかの実施形態では、回路270は、メモリコントローラ220からの列挙コマンドに応答してメモリ214の個々のメモリデバイスの側波帯アドレスの第1の部分をプログラムし、個々のメモリデバイスのストラップピン上の電圧値に従って個々のメモリデバイスの側波帯アドレスの第2の部分を設定するように構成される。例えば、回路270は、ストラップピン上の抵抗値に従って電圧値を発生させるためにメモリコントローラ220からの列挙コマンドに応答してストラップピンに電流を注入し、電圧値をデジタル値に変換し、デジタル値に基づいて個々のメモリデバイスの側波帯アドレスの第2の部分を設定するように構成されてもよい。
追加の注記および例
例1は、1または複数の基板と、1または複数の基板に結合されたコントローラであって、10個以上のデバイス(例えば、メモリデバイス)に対してそれぞれの側波帯アドレスを列挙し、10個以上のデバイスの個々のデバイスに対して列挙された特定の側波帯アドレスを用いて個々のデバイスとの双方向通信を提供する回路を有する、コントローラと、を備える、電子装置を含む。
例1は、1または複数の基板と、1または複数の基板に結合されたコントローラであって、10個以上のデバイス(例えば、メモリデバイス)に対してそれぞれの側波帯アドレスを列挙し、10個以上のデバイスの個々のデバイスに対して列挙された特定の側波帯アドレスを用いて個々のデバイスとの双方向通信を提供する回路を有する、コントローラと、を備える、電子装置を含む。
例2は、回路がさらに、側波帯アドレス列挙のための10個以上のデバイスのサブグループを選択し、選択されたグループに列挙コマンドを送る、例1に記載の電子装置を含む。
例3は、回路がさらに、選択されたサブグループ内にある10個以上のデバイスの各デバイスについてそれぞれのチップ選択信号をアサートし、選択されたサブグループ内にない10個以上のデバイスの各デバイスについてそれぞれのチップ選択信号をデアサートする、例2に記載の電子装置を含む。
例4は、回路がさらに、選択されたサブグループ内にある10個以上のデバイスの各デバイスにおける側波帯アドレスの第1の部分をプログラムする、例2または3に記載の電子装置を含む。
例5は、回路がさらに、選択されたサブグループにおいてプログラムされるべき側波帯アドレスの第1の部分の値をブロードキャストする、例4に記載の電子装置を含む。
例6は、10個以上のデバイスのうちの少なくとも1つが、DRAMを有する集積回路チップを備える、例1から5のいずれかに記載の電子装置を含む。
例7は、10個以上のデバイスのうちの少なくとも1つが、DBを有する集積回路チップを備える、例1から6のいずれかに記載の電子装置を含む。
例8は、10個以上のメモリデバイスと、10個以上のメモリデバイスに通信可能に結合されたコントローラであって、10個以上のメモリデバイスに対してそれぞれの側波帯アドレスを列挙し、10個以上のメモリデバイスの個々のメモリデバイスに対して列挙された特定の側波帯アドレスを用いて個々のメモリデバイスとの双方向通信を提供する第1の回路を有する、コントローラと、を備える、電子システムを含む。
例9は、第1の回路がさらに、側波帯アドレス列挙のための10個以上のメモリデバイスのサブグループを選択し、選択されたグループに列挙コマンドを送る、例8に記載の電子システムを含む。
例10は、第1の回路がさらに、10個以上のメモリデバイスのうち選択されたサブグループ内にある各メモリデバイスについて、それぞれのチップ選択信号をアサートし、10個以上のメモリデバイスのうち選択されたサブグループ内にない各メモリデバイスについて、それぞれのチップ選択信号をデアサートする、例9に記載の電子システムを含む。
例11は、第1の回路がさらに、10個以上のメモリデバイスのうち選択されたサブグループ内にある各メモリデバイスにおける側波帯アドレスの第1の部分をプログラムする、例9または10に記載の電子システムを含む。
例12は、第1の回路がさらに、選択されたサブグループにおいてプログラムされるべき側波帯アドレスの第1の部分の値をブロードキャストする、例11に記載の電子システムを含む。
例13は、個々のメモリデバイスが、コントローラからの列挙コマンドに応答して個々のメモリデバイスの側波帯アドレスの第1の部分をプログラムし、個々のメモリデバイスのストラップピン上の電圧値に従って個々のメモリデバイスの側波帯アドレスの第2の部分を設定する第2の回路を備える、例8から12のいずれかに記載の電子システムを含む。
例14は、第2の回路がさらに、ストラップピン上の抵抗値に従って電圧値を発生させるために列挙コマンドに応答してストラップピンに電流を注入し、電圧値をデジタル値に変換し、デジタル値に基づいて個々のメモリデバイスの側波帯アドレスの第2の部分を設定する、例13に記載の電子システムを含む。
例15は、10個以上のメモリデバイスのうちの少なくとも1つが、DRAMを有する集積回路チップを備える、例8から14のいずれかに記載の電子システムを含む。
例16は、10個以上のメモリデバイスのうちの少なくとも1つが、DBを有する集積回路チップを備える、例8から15のいずれかに記載の電子システムを含む。
例17は、メモリを制御する方法であって、10個以上のメモリデバイスに対してそれぞれの側波帯アドレスを列挙する段階と、10個以上のメモリデバイスの個々のメモリデバイスに対して列挙された特定の側波帯アドレスを用いて個々のメモリデバイスとの双方向通信を提供する段階とを備える、方法を含む。
例18は、側波帯アドレス列挙のための10個以上のメモリデバイスのサブグループを選択する段階と、選択されたグループに列挙コマンドを送る段階とをさらに備える、例17に記載の方法を含む。
例19は、10個以上のメモリデバイスのうち選択されたサブグループ内にある各メモリデバイスについてそれぞれのチップ選択信号をアサートする段階と、10個以上のメモリデバイスのうち選択されたサブグループ内にない各メモリデバイスについて、それぞれのチップ選択信号をデアサートする段階とをさらに備える、例18に記載の方法を含む。
例20は、10個以上のメモリデバイスのうち選択されたサブグループ内にある各メモリデバイスにおける側波帯アドレスの第1の部分をプログラムする段階をさらに備える、例18または19に記載の方法を含む。
例21は、選択されたサブグループにおいてプログラムされるべき側波帯アドレスの第1の部分の値をブロードキャストする段階をさらに備える、例20に記載の方法を含む。
例22は、列挙コマンドに応答して個々のメモリデバイスによって側波帯アドレスの第1の部分をプログラムする段階と、個々のメモリデバイスのストラップピン上の電圧値に従って個々のメモリデバイスによって側波帯アドレスの第2の部分を設定する段階とをさらに備える、例17から21のいずれかに記載の方法を含む。
例23は、ストラップピン上の抵抗値に従って電圧値を発生させるために列挙コマンドに応答して個々のメモリデバイスによってストラップピンに電流を注入する段階と、個々のメモリデバイスによって電圧値をデジタル値に変換する段階と、デジタル値に基づいて個々のメモリデバイスによって側波帯アドレスの第2の部分を設定する段階とをさらに備える、例22に記載の方法を含む。
例24は、10個以上のメモリデバイスのうちの少なくとも1つが、DRAMを有する集積回路チップを備える、例17から23のいずれかに記載の方法を含む。
例25は、10個以上のメモリデバイスのうちの少なくとも1つが、DBを有する集積回路チップを備える、例17から24のいずれかに記載の方法を含む。
例26は、コンピューティングデバイス上で実行されたことに応答して、コンピューティングデバイスに、10個以上のメモリデバイスに対してそれぞれの側波帯アドレスを列挙させ、10個以上のメモリデバイスの個々のメモリデバイスに対して列挙された特定の側波帯アドレスを用いて個々のメモリデバイスとの双方向通信を提供させる複数の命令を備える、少なくとも1つの非一時的機械可読媒体を含む。
例27は、コンピューティングデバイス上で実行されたことに応答して、コンピューティングデバイスに、側波帯アドレス列挙のための10個以上のメモリデバイスのサブグループを選択させ、選択されたグループに列挙コマンドを送らせる複数のさらなる命令を備える、例26に記載の少なくとも1つの非一時的機械可読媒体を含む。
例28は、コンピューティングデバイス上で実行されたことに応答して、コンピューティングデバイスに、10個以上のメモリデバイスのうち選択されたサブグループ内にある各メモリデバイスについてそれぞれのチップ選択信号をアサートさせ、10個以上のメモリデバイスのうち選択されたサブグループ内にない各メモリデバイスについて、それぞれのチップ選択信号をデアサートさせる複数のさらなる命令を備える、例27に記載の少なくとも1つの非一時的機械可読媒体を含む。
例29は、コンピューティングデバイス上で実行されたことに応答して、コンピューティングデバイスに、10個以上のメモリデバイスのうち選択されたサブグループ内にある各メモリデバイスにおける側波帯アドレスの第1の部分をプログラムさせる複数のさらなる命令を備える、例27または28に記載の少なくとも1つの非一時的機械可読媒体を含む。
例30は、コンピューティングデバイス上で実行されたことに応答して、コンピューティングデバイスに、選択されたサブグループにおいてプログラムされるべき側波帯アドレスの第1の部分の値をブロードキャストさせる複数のさらなる命令を備える、例29に記載の少なくとも1つの非一時的機械可読媒体を含む。
例31は、コンピューティングデバイス上で実行されたことに応答して、コンピューティングデバイスに、列挙コマンドに応答して個々のメモリデバイスによって側波帯アドレスの第1の部分をプログラムさせ、個々のメモリデバイスのストラップピン上の電圧値に従って個々のメモリデバイスによって側波帯アドレスの第2の部分を設定させる複数のさらなる命令を備える、例26から30のいずれかに記載の少なくとも1つの非一時的機械可読媒体を含む。
例32は、コンピューティングデバイス上で実行されたことに応答して、コンピューティングデバイスに、ストラップピン上の抵抗値に従って電圧値を発生させるために列挙コマンドに応答して個々のメモリデバイスによってストラップピンに電流を注入させ、個々のメモリデバイスによって電圧値をデジタル値に変換させ、デジタル値に基づいて個々のメモリデバイスによって側波帯アドレスの第2の部分を設定させる複数のさらなる命令を備える、例31に記載の少なくとも1つの非一時的機械可読媒体を含む。
例33は、10個以上のメモリデバイスのうちの少なくとも1つが、DRAMを有する集積回路チップを備える、例26から32のいずれかに記載の少なくとも1つの非一時的機械可読媒体を含む。
例34は、10個以上のメモリデバイスのうちの少なくとも1つが、DBを有する集積回路チップを備える、例26から33のいずれかに記載の少なくとも1つの非一時的機械可読媒体を含む。
例35は、10個以上のメモリデバイスに対してそれぞれの側波帯アドレスを列挙する手段と、10個以上のメモリデバイスの個々のメモリデバイスに対して列挙された特定の側波帯アドレスを用いて個々のメモリデバイスとの双方向通信を提供する手段とを備える、メモリコントローラ装置を含む。
例36は、側波帯アドレス列挙のための10個以上のメモリデバイスのサブグループを選択する手段と、選択されたグループに列挙コマンドを送る手段とをさらに備える、例35に記載のメモリコントローラ装置を含む。
例37は、10個以上のメモリデバイスのうち選択されたサブグループ内にある各メモリデバイスについてそれぞれのチップ選択信号をアサートする手段と、10個以上のメモリデバイスのうち選択されたサブグループ内にない各メモリデバイスについて、それぞれのチップ選択信号をデアサートする手段とをさらに備える、例36に記載のメモリコントローラ装置を含む。
例38は、10個以上のメモリデバイスのうち選択されたサブグループ内にある各メモリデバイスにおける側波帯アドレスの第1の部分をプログラムする手段をさらに備える、例36または37に記載のメモリコントローラ装置を含む。
例39は、選択されたサブグループにおいてプログラムされるべき側波帯アドレスの第1の部分の値をブロードキャストする手段をさらに備える、例38に記載のメモリコントローラ装置を含む。
例40は、列挙コマンドに応答して個々のメモリデバイスによって側波帯アドレスの第1の部分をプログラムする手段と、個々のメモリデバイスのストラップピン上の電圧値に従って個々のメモリデバイスによって側波帯アドレスの第2の部分を設定する手段とをさらに備える、例35から39のいずれかに記載のメモリコントローラ装置を含む。
例41は、ストラップピン上の抵抗値に従って電圧値を発生させるために列挙コマンドに応答して個々のメモリデバイスによってストラップピンに電流を注入する手段と、個々のメモリデバイスによって電圧値をデジタル値に変換する手段と、デジタル値に基づいて個々のメモリデバイスによって側波帯アドレスの第2の部分を設定する手段とをさらに備える、例40に記載のメモリコントローラ装置を含む。
例42は、10個以上のメモリデバイスのうちの少なくとも1つが、DRAMを有する集積回路チップを備える、例35から41のいずれかに記載のメモリコントローラ装置を含む。
例43は、10個以上のメモリデバイスのうちの少なくとも1つが、DBを有する集積回路チップを備える、例35から42のいずれかに記載のメモリコントローラ装置を含む。
例44は、デバイス(例えば、メモリデバイス)と、デバイスに結合された回路であって、コントローラからの列挙コマンドに応答してデバイスの側波帯アドレスを設定し、列挙された側波帯アドレスにおいてコントローラとの双方向通信を提供する、回路とを備える、電子装置を含む。
例45は、回路がさらに、コントローラからの列挙コマンドに応答してデバイスの側波帯アドレスの第1の部分をプログラムし、デバイスのストラップピン上の電圧値に従ってデバイスの側波帯アドレスの第2の部分を設定する、例44に記載の電子装置を含む。
例46は、回路がさらに、ストラップピン上の抵抗値に従って電圧値を発生させるために列挙コマンドに応答してストラップピンに電流を注入し、電圧値をデジタル値に変換し、デジタル値に基づいてデバイスの側波帯アドレスの第2の部分を設定する、例45に記載の電子装置を含む。
例47は、デバイスが、DRAMを有する集積回路チップを備える、例44から46のいずれかに記載の電子装置を含む。
例48は、デバイスが、DBを有する集積回路チップを備える、例44から46のいずれかに記載の電子装置を含む。
例49は、コントローラからの列挙コマンドに応答してデバイス(例えば、メモリデバイス)の側波帯アドレスを設定する段階と、列挙された側波帯アドレスにおいてコントローラとの双方向通信を提供する段階とを備える、方法を含む。
例50は、コントローラからの列挙コマンドに応答してデバイスの側波帯アドレスの第1の部分をプログラムする段階と、デバイスのストラップピン上の電圧値に従ってデバイスの側波帯アドレスの第2の部分を設定する段階とをさらに備える、例49に記載の方法を含む。
例51は、ストラップピン上の抵抗値に従って電圧値を発生させるために列挙コマンドに応答してストラップピンに電流を注入する段階と、電圧値をデジタル値に変換する段階と、デジタル値に基づいてデバイスの側波帯アドレスの第2の部分を設定する段階とをさらに備える、例50に記載の方法を含む。
例52は、デバイスが、DRAMを有する集積回路チップを備える、例49から51のいずれかに記載の方法を含む。
例53は、デバイスが、DBを有する集積回路チップを備える、例49から51のいずれかに記載の方法を含む。
例54は、コンピューティングデバイス上で実行されたことに応答して、コンピューティングデバイスに、コントローラからの列挙コマンドに応答してデバイスの側波帯アドレスを設定させ、列挙された側波帯アドレスにおいてコントローラとの双方向通信を提供させる複数の命令を備える、少なくとも1つの非一時的機械可読媒体を含む。
例55は、コンピューティングデバイス上で実行されたことに応答して、コンピューティングデバイスに、コントローラからの列挙コマンドに応答してデバイスの側波帯アドレスの第1の部分をプログラムさせ、デバイスのストラップピン上の電圧値に従ってデバイスの側波帯アドレスの第2の部分を設定させる複数のさらなる命令を備える、例54に記載の少なくとも1つの非一時的機械可読媒体を含む。
例56は、コンピューティングデバイス上で実行されたことに応答して、コンピューティングデバイスに、ストラップピン上の抵抗値に従って電圧値を発生させるために列挙コマンドに応答してストラップピンに電流を注入させ、電圧値をデジタル値に変換させ、デジタル値に基づいてデバイスの側波帯アドレスの第2の部分を設定させる複数のさらなる命令を備える、例55に記載の少なくとも1つの非一時的機械可読媒体を含む。
例57は、デバイスが、DRAMを有する集積回路チップを備える、例54から56のいずれかに記載の少なくとも1つの非一時的機械可読媒体を含む。
例58は、デバイスが、DBを有する集積回路チップを備える、例54から56のいずれかに記載の少なくとも1つの非一時的機械可読媒体を含む。
例59は、コントローラからの列挙コマンドに応答してデバイスの側波帯アドレスを設定する手段と、列挙された側波帯アドレスにおいてコントローラとの双方向通信を提供する手段とを備える、装置を含む。
例60は、コントローラからの列挙コマンドに応答してデバイスの側波帯アドレスの第1の部分をプログラムする手段と、デバイスのストラップピン上の電圧値に従ってデバイスの側波帯アドレスの第2の部分を設定する手段とをさらに備える、例59に記載の装置を含む。
例61は、ストラップピン上の抵抗値に従って電圧値を発生させるために列挙コマンドに応答してストラップピンに電流を注入する手段と、電圧値をデジタル値に変換する手段と、デジタル値に基づいてデバイスの側波帯アドレスの第2の部分を設定する手段とをさらに備える、例60に記載の装置を含む。
例62は、デバイスが、DRAMを有する集積回路チップを備える、例59から61のいずれかに記載の装置を含む。
例63は、デバイスが、DBを有する集積回路チップを備える、例59から61のいずれかに記載の装置を含む。
「結合される(coupled)」という用語は、本明細書では、問題の構成要素間の直接的または間接的な任意のタイプの関係を指すために使用される場合があり、電気的接続、機械的接続、流体接続、光学的接続、電磁的接続、電気機械的接続またはその他の接続に適用され得る。加えて、「第1の(first)」、「第2の(second)」などの用語は、本明細書では、考察を容易にするためにのみ使用される場合があり、特に明記しない限り、特定の時間的または時系列的な意味を持たない。
本出願および特許請求の範囲で使用される場合、「のうちの1または複数(one or more of)」という用語によって結合された項目のリストは、列挙された用語の任意の組み合わせを意味し得る。例えば、「A、B、およびCのうちの1または複数」という語句および「A、B、またはCの1または複数」という語句は、どちらも、A、B、C、AおよびB、AおよびC、BおよびC、またはA、BおよびCを意味し得る。本明細書に記載されるシステムの様々な構成要素は、ソフトウェア、ファームウェア、および/またはハードウェア、および/またはそれらの任意の組み合わせで実装され得る。例えば、本明細書で論じられるシステムまたはデバイスの様々な構成要素は、例えばスマートフォンなどのコンピューティングシステムに見られるような、コンピューティングSoCのハードウェアによって少なくとも部分的に提供されてもよい。当業者は、本明細書に記載されるシステムが、対応する図に描かれていない追加の構成要素を含み得ることを認め得る。例えば、本明細書で論じられるシステムは、明確にするために描かれていないビット・ストリーム・マルチプレクサ・モジュールやビット・ストリーム・デマルチプレクサ・モジュールなどの追加の構成要素を含んでいてもよい。
本明細書で論じられる例示的なプロセスの実装は、例示の順序で示されたすべての動作を実施することを含み得るが、本開示はこの点に関して限定されず、様々な例において、本明細書の例示的なプロセスの実装は、図示される動作のサブセットのみ、図示されるものとは異なる順序で行われる動作、または追加の動作を含んでいてもよい。
加えて、本明細書で論じられる動作のうちの任意の1または複数が、1または複数のコンピュータプログラム製品によって提供される命令に応答して実施されてもよい。そのようなプログラム製品は、例えば、プロセッサによって実行されると、本明細書に記載される機能を提供し得る命令を提供する信号伝達媒体を含み得る。コンピュータプログラム製品は、任意の形態の1または複数の機械可読媒体で提供されてもよい。よって、例えば、1または複数のグラフィックス・プロセッシング・ユニットまたはプロセッサコアを含むプロセッサが、1または複数の機械可読媒体によってプロセッサに伝達されたプログラムコードおよび/または命令もしくは命令セットに応答して、本明細書の例示的なプロセスのブロックのうちの1または複数を実施してもよい。一般に、機械可読媒体は、本明細書に記載されるデバイスおよび/またはシステムのいずれかに、本明細書で論じられる動作の少なくとも部分および/または本明細書で論じられるデバイス、システム、もしくは任意のモジュールもしくは構成要素の任意の部分を実施させ得るプログラムコードおよび/または命令もしくは命令セットの形態でソフトウェアを伝達し得る。
本明細書に記載される任意の実装形態で使用されるように、「モジュール」という用語は、本明細書に記載される機能を提供するように構成されたソフトウェア論理、ファームウェア論理、ハードウェア論理、および/または回路の任意の組み合わせを指す。ソフトウェアは、ソフトウェアパッケージ、コードおよび/または命令セットもしくは命令として具現化されてもよく、「ハードウェア」は、本明細書に記載される任意の実装形態で使用される場合、例えば、単独でまたは任意の組み合わせで、ハードワイヤード回路、プログラマブル回路、状態機械回路、固定機能回路、実行ユニット回路、および/またはプログラマブル回路によって実行される命令を格納しているファームウェアを含み得る。モジュールは、集合的に、または個別に、より大きなシステム、例えば集積回路(IC)、システム・オン・チップ(SoC)などの一部を形成する回路として具現化され得る。
様々な実施形態は、ハードウェア要素、ソフトウェア要素、またはハードウェア要素とソフトウェア要素の組み合わせを使用して実装され得る。ハードウェア要素の例には、プロセッサ、マイクロプロセッサ、回路、回路素子(例えば、トランジスタ、抵抗器、コンデンサ、インダクタなど)、集積回路、特定用途向け集積回路(ASIC)、プログラマブル・ロジック・デバイス(PLD)、デジタル信号プロセッサ(DSP)、フィールド・プログラマブル・ゲート・アレイ(FPGA)、論理ゲート、レジスタ、半導体デバイス、チップ、マイクロチップ、チップセットなどが含まれ得る。ソフトウェアの例には、ソフトウェアコンポーネント、プログラム、アプリケーション、コンピュータプログラム、アプリケーションプログラム、システムプログラム、機械語プログラム、オペレーティング・システム・ソフトウェア、ミドルウェア、ファームウェア、ソフトウェアモジュール、ルーチン、サブルーチン、関数、メソッド、プロシージャ、ソフトウェアインターフェース、アプリケーション・プログラム・インターフェース(API)、命令セット、コンピューティングコード、コンピュータコード、コードセグメント、コンピュータ・コード・セグメント、ワード、値、シンボル、またはそれらの任意の組み合わせが含まれ得る。実施形態がハードウェア要素および/またはソフトウェア要素を使用して実施されるかどうかの決定は、所望の計算速度、電力レベル、耐熱性、処理サイクルバジェット、入力データレート、出力データレート、メモリリソース、データバス速度、および他の設計上または性能上の制約条件といった任意の数の要因によって異なり得る。
少なくとも1つの実施形態の1または複数の態様が、機械によって読み出されると、機械に、本明細書に記載される技術を実施するための論理を組み立てさせる、プロセッサ内の様々な論理を表す、機械可読媒体に格納された代表的な命令によって実装され得る。そのような表現は、「IPコア」として知られており、有形の機械可読媒体上に格納され、論理またはプロセッサを実際に作成する製造機械にロードするために様々な顧客または製造施設に供給され得る。
本明細書に示される特定の特徴は様々な実装形態を参照して説明されているが、この説明は限定的な意味で解釈されることを意図されていない。よって、本明細書に記載される実装形態の様々な修正形態、ならびに本開示が関係する当業者に明らかな他の実装形態は、本開示の趣旨および範囲内にあるとみなされる。
実施形態は、そのように説明された実施形態に限定されず、添付の特許請求の範囲から逸脱することなく修正および変更して実施することができることが認められるであろう。例えば、上記の実施形態は、特徴の特定の組み合わせを含む場合がある。しかしながら、上記の実施形態はこの点に関して限定されず、様々な実装形態において、上記の実施形態は、そのような特徴のサブセットのみを実施すること、異なる順序のそのような特徴を実施すること、そのような特徴の異なる組み合わせを実施すること、および/または明示的に列挙されたそれらの特徴以外の追加の特徴を実施することを含んでいてもよい。したがって、実施形態の範囲は、添付の特許請求の範囲を、そのような特許請求の範囲が権利を付与される均等物の全範囲と共に参照して決定されるべきである。
他の可能な項目
[項目1]
1または複数の基板と、
前記1または複数の基板に結合されたコントローラであって、
10個以上のメモリデバイスに対してそれぞれの側波帯アドレスを列挙し、
前記10個以上のメモリデバイスの個々のメモリデバイスに対して列挙された特定の側波帯アドレスを用いて前記個々のメモリデバイスとの双方向通信を提供する
回路を有する、コントローラと
を備える、電子装置。
[項目2]
前記回路がさらに、
側波帯アドレス列挙のための前記10個以上のメモリデバイスのサブグループを選択し、
前記選択されたグループに列挙コマンドを送る、
項目1に記載の電子装置。
[項目3]
前記回路がさらに、
前記10個以上のメモリデバイスのうち前記選択されたサブグループ内にある各メモリデバイスについて、それぞれのチップ選択信号をアサートし、
前記10個以上のメモリデバイスのうち前記選択されたサブグループ内にない各メモリデバイスについて、それぞれのチップ選択信号をデアサートする、
項目2に記載の電子装置。
[項目4]
前記回路がさらに、
前記10個以上のメモリデバイスのうち前記選択されたサブグループ内にある各メモリデバイスにおける側波帯アドレスの第1の部分をプログラムする、
項目2に記載の電子装置。
[項目5]
前記回路がさらに、
前記選択されたサブグループにおいてプログラムされるべき前記側波帯アドレスの前記第1の部分の値をブロードキャストする、
項目4に記載の電子装置。
[項目6]
前記10個以上のメモリデバイスのうちの少なくとも1つが、ダイナミック・ランダム・アクセス・メモリを有する集積回路チップを備える、項目1に記載の電子装置。
[項目7]
前記10個以上のメモリデバイスのうちの少なくとも1つが、データバッファを有する集積回路チップを備える、項目1に記載の電子装置。
[項目8]
10個以上のメモリデバイスと、
前記10個以上のメモリデバイスに通信可能に結合されたコントローラであって、
前記10個以上のメモリデバイスに対してそれぞれの側波帯アドレスを列挙し、
前記10個以上のメモリデバイスの個々のメモリデバイスに対して列挙された特定の側波帯アドレスを用いて前記個々のメモリデバイスとの双方向通信を提供する
第1の回路を有する、コントローラと
を備える、電子システム。
[項目9]
前記第1の回路がさらに、
側波帯アドレス列挙のための前記10個以上のメモリデバイスのサブグループを選択し、
前記選択されたグループに列挙コマンドを送る、
項目8に記載の電子システム。
[項目10]
前記第1の回路がさらに、
前記10個以上のメモリデバイスのうち前記選択されたサブグループ内にある各メモリデバイスについて、それぞれのチップ選択信号をアサートし、
前記10個以上のメモリデバイスのうち前記選択されたサブグループ内にない各メモリデバイスについて、それぞれのチップ選択信号をデアサートする、
項目9に記載の電子システム。
[項目11]
前記第1の回路がさらに、
前記10個以上のメモリデバイスのうち前記選択されたサブグループ内にある各メモリデバイスにおける側波帯アドレスの第1の部分をプログラムする、
項目9に記載の電子システム。
[項目12]
前記第1の回路がさらに、
前記選択されたサブグループにおいてプログラムされるべき前記側波帯アドレスの前記第1の部分の値をブロードキャストする、
項目11に記載の電子システム。
[項目13]
前記個々のメモリデバイスが、
前記コントローラからの列挙コマンドに応答して前記個々のメモリデバイスの側波帯アドレスの第1の部分をプログラムし、
前記個々のメモリデバイスのストラップピン上の電圧値に従って前記個々のメモリデバイスの前記側波帯アドレスの第2の部分を設定する、
第2の回路を備える、項目8に記載の電子システム。
[項目14]
前記第2の回路がさらに、
前記ストラップピン上の抵抗値に従って前記電圧値を発生させるために前記列挙コマンドに応答して前記ストラップピンに電流を注入し、
前記電圧値をデジタル値に変換し、
前記デジタル値に基づいて前記個々のメモリデバイスの前記側波帯アドレスの前記第2の部分を設定する、
項目13に記載の電子システム。
[項目15]
前記10個以上のメモリデバイスのうちの少なくとも1つが、ダイナミック・ランダム・アクセス・メモリおよびデータバッファのうちの一方を有する集積回路チップを備える、項目8に記載の電子システム。
[項目16]
メモリを制御する方法であって、
10個以上のメモリデバイスに対してそれぞれの側波帯アドレスを列挙する段階と、
前記10個以上のメモリデバイスの個々のメモリデバイスに対して列挙された特定の側波帯アドレスを用いて前記個々のメモリデバイスとの双方向通信を提供する段階と
を備える、方法。
[項目17]
側波帯アドレス列挙のための前記10個以上のメモリデバイスのサブグループを選択する段階と、
前記選択されたグループに列挙コマンドを送る段階と
をさらに備える、項目16に記載の方法。
[項目18]
前記10個以上のメモリデバイスのうち前記選択されたサブグループ内にある各メモリデバイスについて、それぞれのチップ選択信号をアサートする段階と、
前記10個以上のメモリデバイスのうち前記選択されたサブグループ内にない各メモリデバイスについて、それぞれのチップ選択信号をデアサートする段階と
をさらに備える、項目17に記載の方法。
[項目19]
前記10個以上のメモリデバイスのうち前記選択されたサブグループ内にある各メモリデバイスにおける側波帯アドレスの第1の部分をプログラムする段階
をさらに備える、項目17に記載の方法。
[項目20]
前記選択されたサブグループにおいてプログラムされるべき前記側波帯アドレスの前記第1の部分の値をブロードキャストする段階
をさらに備える、項目19に記載の方法。
他の可能な項目
[項目1]
1または複数の基板と、
前記1または複数の基板に結合されたコントローラであって、
10個以上のメモリデバイスに対してそれぞれの側波帯アドレスを列挙し、
前記10個以上のメモリデバイスの個々のメモリデバイスに対して列挙された特定の側波帯アドレスを用いて前記個々のメモリデバイスとの双方向通信を提供する
回路を有する、コントローラと
を備える、電子装置。
[項目2]
前記回路がさらに、
側波帯アドレス列挙のための前記10個以上のメモリデバイスのサブグループを選択し、
前記選択されたグループに列挙コマンドを送る、
項目1に記載の電子装置。
[項目3]
前記回路がさらに、
前記10個以上のメモリデバイスのうち前記選択されたサブグループ内にある各メモリデバイスについて、それぞれのチップ選択信号をアサートし、
前記10個以上のメモリデバイスのうち前記選択されたサブグループ内にない各メモリデバイスについて、それぞれのチップ選択信号をデアサートする、
項目2に記載の電子装置。
[項目4]
前記回路がさらに、
前記10個以上のメモリデバイスのうち前記選択されたサブグループ内にある各メモリデバイスにおける側波帯アドレスの第1の部分をプログラムする、
項目2に記載の電子装置。
[項目5]
前記回路がさらに、
前記選択されたサブグループにおいてプログラムされるべき前記側波帯アドレスの前記第1の部分の値をブロードキャストする、
項目4に記載の電子装置。
[項目6]
前記10個以上のメモリデバイスのうちの少なくとも1つが、ダイナミック・ランダム・アクセス・メモリを有する集積回路チップを備える、項目1に記載の電子装置。
[項目7]
前記10個以上のメモリデバイスのうちの少なくとも1つが、データバッファを有する集積回路チップを備える、項目1に記載の電子装置。
[項目8]
10個以上のメモリデバイスと、
前記10個以上のメモリデバイスに通信可能に結合されたコントローラであって、
前記10個以上のメモリデバイスに対してそれぞれの側波帯アドレスを列挙し、
前記10個以上のメモリデバイスの個々のメモリデバイスに対して列挙された特定の側波帯アドレスを用いて前記個々のメモリデバイスとの双方向通信を提供する
第1の回路を有する、コントローラと
を備える、電子システム。
[項目9]
前記第1の回路がさらに、
側波帯アドレス列挙のための前記10個以上のメモリデバイスのサブグループを選択し、
前記選択されたグループに列挙コマンドを送る、
項目8に記載の電子システム。
[項目10]
前記第1の回路がさらに、
前記10個以上のメモリデバイスのうち前記選択されたサブグループ内にある各メモリデバイスについて、それぞれのチップ選択信号をアサートし、
前記10個以上のメモリデバイスのうち前記選択されたサブグループ内にない各メモリデバイスについて、それぞれのチップ選択信号をデアサートする、
項目9に記載の電子システム。
[項目11]
前記第1の回路がさらに、
前記10個以上のメモリデバイスのうち前記選択されたサブグループ内にある各メモリデバイスにおける側波帯アドレスの第1の部分をプログラムする、
項目9に記載の電子システム。
[項目12]
前記第1の回路がさらに、
前記選択されたサブグループにおいてプログラムされるべき前記側波帯アドレスの前記第1の部分の値をブロードキャストする、
項目11に記載の電子システム。
[項目13]
前記個々のメモリデバイスが、
前記コントローラからの列挙コマンドに応答して前記個々のメモリデバイスの側波帯アドレスの第1の部分をプログラムし、
前記個々のメモリデバイスのストラップピン上の電圧値に従って前記個々のメモリデバイスの前記側波帯アドレスの第2の部分を設定する、
第2の回路を備える、項目8に記載の電子システム。
[項目14]
前記第2の回路がさらに、
前記ストラップピン上の抵抗値に従って前記電圧値を発生させるために前記列挙コマンドに応答して前記ストラップピンに電流を注入し、
前記電圧値をデジタル値に変換し、
前記デジタル値に基づいて前記個々のメモリデバイスの前記側波帯アドレスの前記第2の部分を設定する、
項目13に記載の電子システム。
[項目15]
前記10個以上のメモリデバイスのうちの少なくとも1つが、ダイナミック・ランダム・アクセス・メモリおよびデータバッファのうちの一方を有する集積回路チップを備える、項目8に記載の電子システム。
[項目16]
メモリを制御する方法であって、
10個以上のメモリデバイスに対してそれぞれの側波帯アドレスを列挙する段階と、
前記10個以上のメモリデバイスの個々のメモリデバイスに対して列挙された特定の側波帯アドレスを用いて前記個々のメモリデバイスとの双方向通信を提供する段階と
を備える、方法。
[項目17]
側波帯アドレス列挙のための前記10個以上のメモリデバイスのサブグループを選択する段階と、
前記選択されたグループに列挙コマンドを送る段階と
をさらに備える、項目16に記載の方法。
[項目18]
前記10個以上のメモリデバイスのうち前記選択されたサブグループ内にある各メモリデバイスについて、それぞれのチップ選択信号をアサートする段階と、
前記10個以上のメモリデバイスのうち前記選択されたサブグループ内にない各メモリデバイスについて、それぞれのチップ選択信号をデアサートする段階と
をさらに備える、項目17に記載の方法。
[項目19]
前記10個以上のメモリデバイスのうち前記選択されたサブグループ内にある各メモリデバイスにおける側波帯アドレスの第1の部分をプログラムする段階
をさらに備える、項目17に記載の方法。
[項目20]
前記選択されたサブグループにおいてプログラムされるべき前記側波帯アドレスの前記第1の部分の値をブロードキャストする段階
をさらに備える、項目19に記載の方法。
Claims (26)
- 1または複数の基板と、
前記1または複数の基板に結合されたコントローラであって、
10個以上のメモリデバイスに対してそれぞれの側波帯アドレスを列挙し、
前記10個以上のメモリデバイスの個々のメモリデバイスに対して列挙された特定の側波帯アドレスを用いて前記個々のメモリデバイスとの双方向通信を提供する
回路を有する、コントローラと
を備える、電子装置。 - 前記回路がさらに、
側波帯アドレス列挙のための前記10個以上のメモリデバイスのサブグループを選択し、
前記選択されたサブグループに列挙コマンドを送る、
請求項1に記載の電子装置。 - 前記回路がさらに、
前記10個以上のメモリデバイスのうち前記選択されたサブグループ内にある各メモリデバイスについて、それぞれのチップ選択信号をアサートし、
前記10個以上のメモリデバイスのうち前記選択されたサブグループ内にない各メモリデバイスについて、それぞれのチップ選択信号をデアサートする、
請求項2に記載の電子装置。 - 前記回路がさらに、
前記10個以上のメモリデバイスのうち前記選択されたサブグループ内にある各メモリデバイスにおける側波帯アドレスの第1の部分をプログラムする、
請求項2または3に記載の電子装置。 - 前記回路がさらに、
前記選択されたサブグループにおいてプログラムされるべき前記側波帯アドレスの前記第1の部分の値をブロードキャストする、
請求項4に記載の電子装置。 - 前記10個以上のメモリデバイスのうちの少なくとも1つが、ダイナミック・ランダム・アクセス・メモリを有する集積回路チップを備える、請求項1から3のいずれか一項に記載の電子装置。
- 前記10個以上のメモリデバイスのうちの少なくとも1つが、データバッファを有する集積回路チップを備える、請求項1から3のいずれか一項に記載の電子装置。
- メモリを制御する方法であって、
10個以上のメモリデバイスに対してそれぞれの側波帯アドレスを列挙する段階と、
前記10個以上のメモリデバイスの個々のメモリデバイスに対して列挙された特定の側波帯アドレスを用いて前記個々のメモリデバイスとの双方向通信を提供する段階と
を備える、方法。 - 側波帯アドレス列挙のための前記10個以上のメモリデバイスのサブグループを選択する段階と、
前記選択されたサブグループに列挙コマンドを送る段階と
をさらに備える、請求項8に記載の方法。 - 前記10個以上のメモリデバイスのうち前記選択されたサブグループ内にある各メモリデバイスについて、それぞれのチップ選択信号をアサートする段階と、
前記10個以上のメモリデバイスのうち前記選択されたサブグループ内にない各メモリデバイスについて、それぞれのチップ選択信号をデアサートする段階と
をさらに備える、請求項9に記載の方法。 - 前記10個以上のメモリデバイスのうち前記選択されたサブグループ内にある各メモリデバイスにおける側波帯アドレスの第1の部分をプログラムする段階
をさらに備える、請求項9または10に記載の方法。 - 前記選択されたサブグループにおいてプログラムされるべき前記側波帯アドレスの前記第1の部分の値をブロードキャストする段階
をさらに備える、請求項11に記載の方法。 - 列挙コマンドに応答して前記個々のメモリデバイスによって側波帯アドレスの第1の部分をプログラムする段階と、
前記個々のメモリデバイスのストラップピン上の電圧値に従って前記個々のメモリデバイスによって前記側波帯アドレスの第2の部分を設定する段階と
をさらに備える、請求項8から10のいずれか一項に記載の方法。 - 前記ストラップピン上の抵抗値に従って前記電圧値を発生させるために前記列挙コマンドに応答して前記個々のメモリデバイスによって前記ストラップピンに電流を注入する段階と、
前記個々のメモリデバイスによって前記電圧値をデジタル値に変換する段階と、
前記デジタル値に基づいて前記個々のメモリデバイスによって前記側波帯アドレスの前記第2の部分を設定する段階と
をさらに備える、請求項13に記載の方法。 - 前記10個以上のメモリデバイスのうちの少なくとも1つが、ダイナミック・ランダム・アクセス・メモリを有する集積回路チップを備える、請求項8から10のいずれか一項に記載の方法。
- 前記10個以上のメモリデバイスのうちの少なくとも1つが、データバッファを有する集積回路チップを備える、請求項8から10のいずれか一項に記載の方法。
- コンピューティングデバイスに、
10個以上のメモリデバイスに対してそれぞれの側波帯アドレスを列挙する手順と、
前記10個以上のメモリデバイスの個々のメモリデバイスに対して列挙された特定の側波帯アドレスを用いて前記個々のメモリデバイスとの双方向通信を提供する手順と
を実行させる、コンピュータプログラム。 - 前記コンピューティングデバイスに、
側波帯アドレス列挙のための前記10個以上のメモリデバイスのサブグループを選択する手順と、
前記選択されたサブグループに列挙コマンドを送る手順と
をさらに実行させる、請求項17に記載のコンピュータプログラム。 - 前記コンピューティングデバイスに、
前記10個以上のメモリデバイスのうち前記選択されたサブグループ内にある各メモリデバイスについて、それぞれのチップ選択信号をアサートする手順と、
前記10個以上のメモリデバイスのうち前記選択されたサブグループ内にない各メモリデバイスについて、それぞれのチップ選択信号をデアサートする手順と
をさらに実行させる、請求項18に記載のコンピュータプログラム。 - 前記コンピューティングデバイスに、
前記10個以上のメモリデバイスのうち前記選択されたサブグループ内にある各メモリデバイスにおける側波帯アドレスの第1の部分をプログラムする手順
をさらに実行させる、請求項18または19に記載のコンピュータプログラム。 - 前記コンピューティングデバイスに、
前記選択されたサブグループにおいてプログラムされるべき前記側波帯アドレスの前記第1の部分の値をブロードキャストする手順
をさらに実行させる、請求項20に記載のコンピュータプログラム。 - 前記コンピューティングデバイスに、
列挙コマンドに応答して前記個々のメモリデバイスによって側波帯アドレスの第1の部分をプログラムする手順と、
前記個々のメモリデバイスのストラップピン上の電圧値に従って前記個々のメモリデバイスによって前記側波帯アドレスの第2の部分を設定する手順と
をさらに実行させる、請求項17から19のいずれか一項に記載のコンピュータプログラム。 - 前記コンピューティングデバイスに、
前記ストラップピン上の抵抗値に従って前記電圧値を発生させるために前記列挙コマンドに応答して前記個々のメモリデバイスによって前記ストラップピンに電流を注入する手順と、
前記個々のメモリデバイスによって前記電圧値をデジタル値に変換する手順と、
前記デジタル値に基づいて前記個々のメモリデバイスによって前記側波帯アドレスの前記第2の部分を設定する手順と
をさらに実行する、請求項22に記載のコンピュータプログラム。 - 前記10個以上のメモリデバイスのうちの少なくとも1つが、ダイナミック・ランダム・アクセス・メモリを有する集積回路チップを備える、請求項17から19のいずれか一項に記載のコンピュータプログラム。
- 前記10個以上のメモリデバイスのうちの少なくとも1つが、データバッファを有する集積回路チップを備える、請求項17から19のいずれか一項に記載のコンピュータプログラム。
- 請求項17から19のいずれか一項に記載のコンピュータプログラムを格納しているコンピュータ可読記憶媒体。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/470,278 | 2021-09-09 | ||
US17/470,278 US20210406206A1 (en) | 2021-09-09 | 2021-09-09 | Memory device manageability bus |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2023039906A true JP2023039906A (ja) | 2023-03-22 |
Family
ID=79030973
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022107614A Pending JP2023039906A (ja) | 2021-09-09 | 2022-07-04 | メモリデバイス管理性バス |
Country Status (4)
Country | Link |
---|---|
US (1) | US20210406206A1 (ja) |
JP (1) | JP2023039906A (ja) |
CN (1) | CN115794694A (ja) |
DE (1) | DE102022118933A1 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11509751B2 (en) * | 2020-12-23 | 2022-11-22 | Dell Products L.P. | Self-describing system using single-source/multi-destination cable |
-
2021
- 2021-09-09 US US17/470,278 patent/US20210406206A1/en active Pending
-
2022
- 2022-07-04 JP JP2022107614A patent/JP2023039906A/ja active Pending
- 2022-07-28 DE DE102022118933.3A patent/DE102022118933A1/de active Pending
- 2022-08-09 CN CN202210951554.4A patent/CN115794694A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
DE102022118933A1 (de) | 2023-03-09 |
US20210406206A1 (en) | 2021-12-30 |
CN115794694A (zh) | 2023-03-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107924693B (zh) | 多区块系统中的可编程的片上端接定时 | |
CN110059048B (zh) | 基于检测传感器数据的阻抗补偿 | |
US10163508B2 (en) | Supporting multiple memory types in a memory slot | |
KR20210080171A (ko) | 구역 그룹화를 갖는 구역화된 네임스페이스 | |
US8688901B2 (en) | Reconfigurable load-reduced memory buffer | |
US10541018B2 (en) | DDR memory bus with a reduced data strobe signal preamble timespan | |
US11837314B2 (en) | Undo and redo of soft post package repair | |
EP3805937B1 (en) | Memory device including interface circuit and method of operating the same | |
JP2021174512A (ja) | エンドトゥエンドデータバス反転を含む積層メモリデバイス | |
US20230099202A1 (en) | Ssd with reduced secure erase time and endurance stress | |
US10802742B2 (en) | Memory access control | |
CN115840530A (zh) | 用于池化的存储器的故障转移 | |
JP2023039906A (ja) | メモリデバイス管理性バス | |
US20180226118A1 (en) | Multiple rank high bandwidth memory | |
US20220121392A1 (en) | Memory command that specifies one of multiple possible write data values where the write data is not transported over a memory data bus | |
US11567877B2 (en) | Memory utilized as both system memory and near memory | |
EP3876088A1 (en) | Negotiated power-up for ssd data refresh | |
US20200379687A1 (en) | Storage device with client reconfigurable protocol | |
JP2021099891A (ja) | ワイドプリフェッチを行う高帯域幅dramメモリ | |
US20190114106A1 (en) | Nand direct access horizontal queue | |
CN112905108A (zh) | 回拷期间高错误率块的检测和错误处置 | |
US12008269B2 (en) | Storage device with client reconfigurable protocol | |
US20220091934A1 (en) | Adaptive device data correction with increased memory failure handling |