JP2015506039A - 統合データマスキング、データポイズニング及びデータバス反転シグナリング - Google Patents

統合データマスキング、データポイズニング及びデータバス反転シグナリング Download PDF

Info

Publication number
JP2015506039A
JP2015506039A JP2014547436A JP2014547436A JP2015506039A JP 2015506039 A JP2015506039 A JP 2015506039A JP 2014547436 A JP2014547436 A JP 2014547436A JP 2014547436 A JP2014547436 A JP 2014547436A JP 2015506039 A JP2015506039 A JP 2015506039A
Authority
JP
Japan
Prior art keywords
data
data bits
state
pattern
bits
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.)
Granted
Application number
JP2014547436A
Other languages
English (en)
Other versions
JP5947398B2 (ja
JP2015506039A5 (ja
Inventor
オコナー ジェイムズ
オコナー ジェイムズ
ニーグレン アーロン
ニーグレン アーロン
カシェム アンワー
カシェム アンワー
クルーガー ウォーレン
クルーガー ウォーレン
ブラック ブライアン
ブラック ブライアン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Advanced Micro Devices Inc
Original Assignee
Advanced Micro Devices Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Advanced Micro Devices Inc filed Critical Advanced Micro Devices Inc
Publication of JP2015506039A publication Critical patent/JP2015506039A/ja
Publication of JP2015506039A5 publication Critical patent/JP2015506039A5/ja
Application granted granted Critical
Publication of JP5947398B2 publication Critical patent/JP5947398B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4234Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus
    • G06F13/4239Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus with asynchronous protocol
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy 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)
  • Dram (AREA)
  • Bus Control (AREA)
  • Information Transfer Systems (AREA)

Abstract

単一の指示信号の状態を設定または分析することと、複数のデータビットのデータパターンを生成または分析することと、単一の指示信号の状態と複数のデータビットのデータパターンとに基づいて、データバス反転が複数のデータビットに適用されたこと、または、複数のデータビットがポイズニングされていること、をシグナリングまたは判断することと、を含む、統合データシグナリングを提供および分析するためのシステムおよび方法が提供される。【選択図】図4

Description

本発明は、概して高速メモリシステムを対象とする。より具体的には、本発明は、コンピューティングシステム内のデータステータスの改善されたシグナリングを対象とする。
データバスは、クロストーク、同時スイッチングノイズ、符号間干渉の影響を受けやすく、データの状態及び/又はデータ遷移の頻度に基づいて電力を消費する。これらの弊害を低減し、且つ、不必要な電力消費を防ぐための1つの方法は、データを符号化することである。使用可能なデータ符号化の1つの特定の形式は、データバス反転(DBI)である。
DBIの実装は、データバスを通じて伝送されるデータビット間の関係を評価し、次に、伝送に先立っていくつかの又は全てのデータビットを反転することが有益であるかどうかを(特定のDBIアルゴリズムに基づいて)判断するトランスミッタでの回路の符号化を含む。データビットが反転されると、当該データビットが反転されたことを示すDBIビットと称される追加の信号は、符号化回路に設定される。典型的に、受け取る回路に対して、どの群のデータビットが反転したのかを通知するために、DBIビットがデータビットと並行して伝送され得るように、別途のチャネルが必要となる。次に、受信機は、DBIビットを符号化回路とともに用いて、入力されるデータビット群をその元の状態に戻す。
ステータスシグナリングの別の形式は、ダイナミックランダムアクセスメモリ(DRAM)とともに用いられる。DRAMは、コンピュータシステムのメインメモリに用いることができ、グラフィック用途に用いることもできる。DRAMは、外部ソースからデータ入力及び出力ピン(典型的に「DQピン」と呼ばれる)を介して入力されるデータをマスキングする、データマスキング機能を含み得る。データマスキングは、概して1バイトのユニットにおいて実行され、データマスキングビット又はラインの使用を通して伝達される。例えば、16ビットのデータパス幅を有する同期DRAMの場合には、概して2つのデータマスキングピン(典型的に「DQMピン」と呼ばれる)が存在し、そこからデータマスキング信号が入力される。これらのDQMピンは、下部DQM(LDQM)ピン及び上部DQM(UDQM)ピンを備える。LDQMピンは、データ入力及び出力ピンDQ0〜DQ7(例えば、16のデータ入力及び出力ピンDQ1〜DQ15を介して入力される16ビットのうち下位8ビット)を介して、データ入力をマスキングする。UDQMピンは、上位8ビット(例えば、データ入力及び出力ピンDQ8〜DQ15)を介したデータ入力をマスキングし、ピンは、集積回路(IC)デバイス用の任意の入力/出力構造を含むとともに、パッド、光入力/出力構造及び他の従来の入力/出力構造を含むことが可能である。
したがって、ICメモリデバイスは、例えばDBI及び/又はマスキングなどのデータバス上のデータの状態を示す複数のピン又はラインを含むことができる。かかるデバイスは、単一の制御ラインを用いてデータバスの状態を示すこともできるが、複数のクロック周期を利用して、データに関連付けられる複数のステータスを伝えることができる。
したがって、最小数の信号用ラインを用いて複数のバス状態を最短時間で信号伝達(シグナリング)するための改善された方法及びシステムが必要である。
開示される発明の実施形態は、ある環境において、単一の指示信号の状態を設定することと、複数のデータビット内にデータパターンを生成することとを含む、統合データシグナリングを生成する方法を提供する。次に、この方法は、単一の指示信号の状態と、複数のデータビットのパターンとに基づいて、データバス反転が複数のデータビットに適用されたこと、マスキングが適用されたかどうか、又は、データバイトがポイズニングされているかどうかをシグナリングする。
開示される発明の実施形態は、単一の指示信号の状態を分析することと、複数のデータビットのデータパターンを分析することとを含む、統合データ信号を受け取る方法を提供する。次に、本方法は、単一の指示信号の状態と、複数のデータビットのパターンとに基づいて、データバス反転が前記複数のデータビットに適用されたこと、マスキングが適用されたかどうか、又は、データバイトがポイズニングされているかどうかを判断する。
開示された発明の別の実施形態は、メモリデバイスと、前記メモリデバイスに接続された処理ユニットであって、単一の指示信号の状態を設定し、且つ、複数のデータビット内にデータパターンを生成する処理ユニットとを含むシステムを提供する。次に、本システムは、単一の指示信号の状態と、複数のデータビットのパターンとに基づいて、データバス反転が複数のデータビットに適用されたこと、マスキングが適用されたかどうか、又は、データバイトがポイズニングされているかどうかをシグナリングする。
開示された発明のさらに別の実施形態は、メモリデバイスと、前記メモリデバイスに接続された処理ユニットであって、単一の指示信号の状態を分析し、且つ、複数のデータビットのデータパターンを分析する処理ユニットとを含むシステムを提供する。次に、本システムは、単一の指示信号の状態と、複数のデータビットのパターンとの分析に基づいて、データバス反転が複数のデータビットに適用されたこと、マスキングが適用されたかどうか、又は、データバイトがポイズニングされているかどうかを判断する。
開示される発明の追加的な実施形態は、コンピューティングデバイスによる実行に応じて、単一の指示信号の状態を設定することと、複数のデータビット内にデータパターンを生成することと、を含む動作をコンピューティングデバイスに実施させるコンピュータプログラム製品を提供する。次に、この動作は、単一の指示信号の状態と、複数のデータビットのパターンとに基づいて、データバス反転が複数のデータビットに適用されたかどうか、マスキングが適用されたかどうか、又は、データバイトがポイズニングされているかどうかをシグナリングする動作を含む。
本発明の更なる特徴及び利点並びに本発明の種々な実施形態の構造や動作は、添付の図面を参照にして以下に詳細に説明される。本発明は、本明細書に記載の特定の実施形態に制限されないことを意図する。かかる実施形態は、例示のみを目的として本明細書に示されている。追加的な実施形態は、本明細書に包含される教示に基づいて、当業者にとって明白となるであろう。
本明細書に組み込まれ、且つ、本明細書の一部を形成する添付図面は、本発明を例示し且つ記述するとともに、本発明の原理を説明し、当業者が本発明を実施することができるようにすることにさらに役立つ。本発明の種々の実施形態は、図面を参照して説明され、同様の参照番号は同様の要素を参照するように全体を通して用いられる。
本発明の実施形態による、メモリアクセスシステムの例示的なブロック図である。 本発明の実施形態による、有効なデータベース反転を用いてデータを伝送するためのフローチャートである。 本発明の実施形態による、有効なデータベース反転を用いてデータを受け取るためのフローチャートである。 本発明の実施形態による、有効なデータベース反転及びデータポイズニングのサポートを用いてデータを伝送するためのフローチャートである。 本発明の実施形態による、有効なデータベース反転及びポイズニングのサポートを用いてデータを受け取るためのフローチャートである。 本発明の実施形態による、統合信号を伝送する方法のフローチャートである。 本発明の実施形態による、統合信号を受け取り、且つ、分析する方法のフローチャートである。
以下の詳細な説明において、「一実施形態」、「実施形態」、「実施形態の例」等への参照は、記載の実施形態が特定の特性、構造又は特徴を含み得ることを示すが、任意の実施形態が、特定の特徴、構造又は特性を必ずしも含まないことがある。その上、かかる言いまわしは、同一の実施形態を必ずしも指さないことがある。さらに、特定の特徴、構造又は特性が、実施形態に関連して説明される場合に、かかる特徴、構造又は特性が他の実施形態に関連して作用することは、明確に記載されているか否かにかかわらず、当業者の知識の範囲内であると考えられる。
「本発明の実施形態」という用語は、本発明の全ての実施形態が検討される特徴、利点又は動作形態を含むことを求めない。代替の実施形態は、本発明の範囲を逸脱することなく発明し得るものであり、本発明における周知の要素は、本発明の関連性のある詳細を不明瞭にすることのないように、詳細に記載されないか、又は、省略され得る。本明細書に使用される用語は、特定の実施形態を説明する目的のみであり、制限するように意図するものではない。例えば、本明細書で使用される場合、単数形「a」、「an」及び「the」は、文脈において別途明らかに記載しない限り、複数形を含むように意図される。「含む(comprises)」、「含む(comprising)」、「含む(includes)」、及び/又は、「含む(including)」という用語は、本明細書で使用される場合、記載の特徴、整数、ステップ、動作、要素及び/又はコンポーネントの存在を指定するが、1つ以上の他の特徴、整数、ステップ、動作、要素、コンポーネント及び/若しくはそれらの群の存在又は追加を除外しないことがさらに理解されるものとする。
(システム概要)
図1は、ホストシステム110と、記憶装置システム120と、データバスライン132−0〜132−N及び指示ライン134を含むデータ/コマンドバス130と、メモリシステム140と、制御ライン145と、インターフェース150とを含む、本発明の実施形態による統合シグナリングシステム(unified signaling system)100を例示する図である。
メモリシステム140は、スタック型DRAM又はグラフィックダブルデータレートメモリ(GDDR)などの高速メモリを含むが、任意の種類のメモリ技術を含むことができる。一実施形態では、本明細書において後述されるように、メモリシステム140は、データバス反転(DBI)のための論理(logic)を含む。
ホストシステム110は、記憶装置システム120からデータにアクセスすることができ、メモリシステム140内のデータの読み書きを実行する。一実施形態では、ホストシステム110は、複数のデータライン132−0〜132−Nを通して、メモリシステム140にアクセスする。また、データライン132−0〜132−N上を運搬されるデータは、DQ信号、DQバイト、又は、DQビット0〜Nと称され得る。さらに、ホストシステム110は、指示ライン134上に存在する指示信号の状態に基づいて、データバスライン132上に存在するデータの属性を示す指示ライン134を監視する。かかる属性は、以下の詳細に検討されるように、データが反転されていること、マスキングされていること、又は、ポイズニングされていることを含む。
インターフェース150は、制御ライン145を通して、例えばデータバス反転又はデータポイズニングのサポートが有効とされるかどうかなどのように、データバスライン132上のデータがどのように処理されるかを制御する。インターフェース150からの入力に基づいて、メモリシステム140は、インターフェース150からの入力においてデータバス反転が有効とされていることを示した場合に、データが反転されるべきであるかどうかを確定するために、例えばデータバスライン132上のデータを検査することなどの種々の機能を実行することになる。
さらに検討されるように、データバスライン132上に存在するDQバイトごとに、1つの指示信号が指示ライン134上に存在する。この指示信号は、メモリシステム140への又はメモリシステム140からの読み書きごとに、DQ信号とともにサンプリングされる。所与のDQバイトについて、指示信号の状態は、関連付けられるDQバイト内の特別なデータパターンとあわせて、データが反転されること、マスキングされていること、又は、ポイズニングされていることを含む、3つの特別なクラスのデータを特定することができる。
(マスキングされたデータ)
データマスキングは、メモリへの書き込みアクセスの間に、バイト粒度のデータマスキングを提供する。マスクは、メモリへの更新を抑制する。データマスキングの使用は、インターフェース150によって制御され、データバス反転及びポイズニングと関連付けながらさらに説明される。
(データバス反転)
DBIは、例えばメモリシステム150への転送、又は、メモリシステム150からの転送などのように、任意の所与のデータの転送の際に状態を(例えば、ローからハイへ)転換するデータ信号の数を減少させる。状態を転換するデータ信号の数が最小化された場合には、必要な回路電力量が減少される。このことは、信号品位を向上させ、概して、例えばdi/dtなどの瞬間的な電流引き込みに関する課題を減少させ、また状態変更によるノイズを減少させる。DBIアルゴリズムは、状態変化をデータバス上のデータの50%に制限することができる。例えば、8ビット/ラインのデータからなるDQバイトについて、DBIの使用は、2つの連続的な8ビットDQバイト間の変化する状態の数を、最大で4つの変化ビットに制限することができる。
例えば、データバス反転が有効とされ、第1のDQバイトが、
01010101
というパターンを有し、第2のDQバイトが、
10101010
というパターンを有する場合を想定する。
この例では、データバス反転が有効にされなければ、各DQビットについての状態が変化し、8つの状態変化をもたらす。データバス反転が有効にされると、例えば、システム100などのシステムは、2つの連続的なDQバイトの間に4つ以上の状態変化が存在することを判断することになり、第2のDQバイトのパターンを、
01010101
というように反転させることになる。
この反転は、第1のDQバイトと第2のDQバイトとの間に、状態変化を続けて生成しない。しかしながら、第2のDQバイト内のデータが反転したことをシグナリングするために、第2のDQバイトに関連付けられる指示信号が有効とされるか、又は、「真」の状態(本明細書において、真の状態とは、典型的に「有効とされる」、「ハイ」又は「1」と称されるが、アクティブロー信号として定義され得る)に駆動されなければならない。そのため、各DQバイトは、自身の指示信号に関連付けられる。したがって、指示信号は、DQデータの任意の読み出し又は書き込みの間にサンプリングされなければならない。また、本願で使用される場合には、DQバイトは、任意の特定の数のバイトに限定されない。上記の例において、8ビットの使用は単なる例に過ぎず、任意の種類の限定に解釈されるべきでない。
DBIがインターフェース150によって無効とされた場合には、制御ライン145を通る何れのDBI信号もアサートされない。さらに、インターフェース150は、DBI−dc及びDBI−acモードの何れかをサポートするように構成され得る。
(マスキングされていないデータのDBI−DC)
DBIが無効とされている場合には、データは、データバスライン132で伝送され、指示信号は、無効とされるか、又は、これと同等に0に設定される。DBI−dcがインターフェース150上で有効とされた場合には、データバスライン132上のデータ信号の各々の群、DQバイト及び指示ライン134上の指示信号が、各サイクルで検査される。指示ライン134上の所与の指示信号を有する、データバスライン132上の50%以上のデータ信号がハイに駆動された場合には、指示信号が有効とされるか、又は、ハイに駆動され、データバスライン132上の関連付けられるデータ信号が反転される。他の場合には、指示ライン134上の指示信号は、無効とされ、ローに駆動され、データバスライン132上の関連付けられるデータ信号は、反転されない。一例として、DQバイトが8ビットからなると仮定して、DQビットの5つのビットがハイである場合には、指示信号は、ハイに駆動され、DQビットは、反転され、結果として3つのハイDQビット及び1つのハイ指示信号、つまり合計4つのハイ信号となる。
(マスキングされていないデータのDBI−AC)
DBIが無効とされている場合には、データは、データバスライン132で伝送され、指示信号は、無効とされ、又は、これと同等に0に設定される。DBI−acがインターフェース150上で有効とされた場合には、データバスライン132上のデータ信号の各々の群、DQバイト及び指示ライン134上の指示信号が各サイクルで検査される。指示ライン134上の所与の指示信号を有する、データバスライン132上の50%以上のデータ信号が転換されることになる場合には、例えば、DQビットの状態は、前のサイクルにおいて保持された信号とは異なる値に駆動されることになり、指示信号は有効とされ、又は、ハイに駆動され、データバスライン132上の関連付けられるデータ信号が反転される。他の場合には、指示ライン134上の指示信号は、無効とされ、ローに駆動され、データバスライン132上の関連付けられるデータ信号は、反転されない。一例として、DQバイトが8ビットからなると仮定して、DQビットの5つのビットが転換される場合には、指示信号は、ハイに駆動され、DQビットは、反転され、結果として、3つの転換されたDQビット及び最大で1つの転換された指示信号(前の指示信号が有効とされなかった場合)、つまり合計4つの信号となる。
(マスキングされたデータのDBI−DC)
DBIが無効とされている場合には、マスキングされたデータは、例えば指示信号をハイに設定するなどのように、指示ライン134上の指示信号を有効とすることにより特定されており、DQ信号は、無視可能な(do not care)状態にあり、好ましくは省電力を目的として、前のサイクルから変化しないままでいる。DBI−dcがインターフェース150上で有効とされている場合には、ホストシステム110がマスキングされた複数のデータビットを書き込む場合(例えば、問題になっているバイトがメモリに書き込まれない)に、特別な符号化(指示ライン134上の指示信号が有効とされ、ハイに設定され、及び、データバスライン132上のDQビットの前半がローに設定され、後半がハイに設定される)が用いられる。例えば、DQバイト内に8ビットある場合、パターンは、00001111として示されることができる。この符号化は、任意の通常又はマスキングされていないデータパターンについて発生しない。
(マスキングされたデータのDBI−AC)
DBIが無効とされている場合には、マスキングデータは、例えば指示信号をハイに設定するなどのように、指示ライン134上の指示信号を有効にすることによって、特定される。DQ信号は、「無視可能な(do not care)」状態にあり、好ましくは省電力を目的として、前のサイクルから変化しないままでいる。DBI−acがインターフェース150上で有効とされている場合には、ホストシステム110がマスキングされたデータバイトを書き込む場合(例えば、問題になっているバイト又は複数のデータビットがメモリに書き込まれない)に、特別な符号化(指示ライン134上の指示信号が有効とされ、ハイに設定され、及び、データバスライン132上のDQビットの前半がそれらの前の値から転換されるように設定される)が用いられる。例えば、DQバイト内に8ビットある場合には、そのパターンは00001111で示されることができ、これは、データバスライン132上の前のDQデータを、データバスライン132上の現在のDQデータを使用して排他的論理和演算することにより生成される。この符号化は、任意の通常又はマスキングされていないデータパターンについて発生しない。
(データポイズニング)
データポイズニングは、訂正不可能なエラーを有するデータを格納するための、システムレベルのデータ統合機構である。データが読み戻される(リードバックされる)場合には、ポイズニングされた状態は、ホストシステム110に戻され、ホストが以前に信頼できないデータを格納したことを示している。
多くの用途において、ホストシステム110は、エラー訂正符号(ECC)で保護されたライトバックキャッシュを維持することが多い。キャッシュラインが訂正不可能なエラーを負う事象では、このエラーは、キャッシュラインが退去するまで検出され得ない。この点において、データは破損するが、このデータを生成又は要求したプロセスは、もはやホストシステム110上で実行されていない場合がある。所望の振る舞いは、破損したデータをメモリに退去させ、このデータの「ポイズニングされた状態」を格納することである。ポイズニングされたデータについてのメモリからの以降の読み出しは、このデータを要求するプロセスにエラーをシグナリングすることになる。
一例では、データアレイ内のパリティをサポートするDRAM実装では、ポイズニングされたものとしてマーク付けされたデータの書き込みは、格納されたパリティを反転させる。この振る舞いは、このデータの任意の以降の読み出しにおいて訂正不可能なエラーを招くことになる。
別の例では、データアレイ内のECCをサポートするDRAM実装では、ポイズニングされたものとしてマーク付けされたデータの書き込みは、生成されたECCビットに訂正不可能なエラーを符号化させる。この振る舞いは、このデータの任意の以降の読み出しに訂正不可能なエラーを招くことになる。
全体の保護された語句に対するマスキングされていない書き込みは、破損したデータが効果的に上書きされているため、ポイズニングされた状態をリセットすることができる。
(有効なデータポイズニングのサポートを用いた、マスキングされていないデータのDBI)
データポイズニングのサポートが有効とされているとき、DBI信号のマスキングされていないデータについての振る舞いは変化しない。よって、DBIが無効とされている場合には、データは、データバスライン132で伝送され、指示信号は、無効とされ、又は、これと同等に0に設定される。DBI−dcがインターフェース150上で有効とされている場合には、データバスライン132上のデータ信号の各々の群及び指示ライン134上の指示信号が各サイクルで検査される。指示ライン134上の所与の指示信号を有する、データバスライン132上の50%以上のデータ信号がハイに駆動される場合、指示信号は、有効とされ、又は、ハイに駆動され、データバスライン132上の関連付けられるデータ信号は反転される。その他の場合には、指示ライン134上の指示信号は、無効とされ、ローに駆動され、データバスライン132上の関連付けられるデータ信号は、反転されない。一例として、DQバイトが8ビットからなると仮定して、DQビットのうち5つのビットがハイである場合には、指示信号はハイに駆動され、DQビットは、反転され、結果として、3つのハイDQビット及び1つのハイ指示信号、つまり合計4つのハイ信号になる。
DBIが無効とされている場合には、データは、データバスライン132で伝送され、指示信号は、無効とされ、又は、これと同等に0に設定される。DBI−acがインターフェース150上で有効とされている場合には、データバスライン132上のデータ信号の各々の群及び指示ライン134上の指示信号が、各サイクルで検査される。指示ライン134上の所与の指示信号を有する、データバスライン132上の50%以上のデータ信号が転換されることになる場合には、例えば、DQビットの状態は、前のサイクルにおいて保持された信号とは異なる値に駆動されることになり、指示信号は、有効とされ、又は、ハイに駆動され、データバスライン132上の関連付けられるデータ信号は、反転される。別の場合には、指示ライン134上の指示信号は、無効とされ、ローに駆動され、データバスライン132上の関連付けられるデータ信号は、反転されない。一例として、DQバイトが8ビットからなると仮定して、DQビットのうち5つのビットが転換される場合には、指示信号は、ハイに駆動され、DQビットは、反転され、結果として、3つの転換されたDQビット及び最大で1つの転換された指示信号(前の指示信号が有効とされなかった場合)、つまり合計4つの信号の転換となる。
(有効なデータポイズニングのサポートを用いた、マスキングされているデータのデータバス反転)
データポイズニングのサポートが有効とされているとき、データバス132上のDQビットの符号化は、マスキングされたデータと、ポイズニングされたデータとを区別するために用いられる。
DBIが無効とされている場合には、指示ライン134上の指示信号が、有効とされ、1に設定されており、且つ、DQビットの前半がローに設定され、ビットの後半がハイに設定されているデータパターンが存在する場合に、マスキングされたデータが特定される。DBI−dcがインターフェース150上で有効とされている場合には、ホストシステム110が、マスキングされたデータバイトを書き込む場合(例えば、問題になっているバイト又は複数のデータビットがメモリに書き込まれない)に、特別な符号化(指示ライン134上の指示信号が有効とされ、ハイに設定され、データバスライン132上のDQビットの前半がローに設定され、ビットの後半がハイに設定される)が用いられる。例えば、DQバイト内に8ビットある場合には、そのパターンは00001111で示されることができる。この符号化は、任意の通常又はマスキングされていないデータパターンについて発生しない。
DBI−acがインターフェース150上で有効とされている場合には、ホストシステム110が、マスキングされたデータバイトを書き込む場合(例えば、問題になっているバイト又は複数のデータビットがメモリに書き込まれない)に、特別な符号化(指示ライン134上の指示信号が有効とされ、ハイに設定され、データバスライン132上のDQビットの前半がそれらの前の値から転換されるように設定される)が用いられる。例えば、DQバイト内に8ビットある場合には、そのパターンは00001111で示されることができ、これは、データバスライン132上の前のDQデータを、データバスライン132上の現在のDQデータを使用して排他的論理和演算することにより生成される。この符号化は、任意の通常又はマスキングされていないデータパターンについて発生しない。
(有効なデータポイズニングのサポートを用いた、マスキングされていないデータのデータバス反転)
DBIが無効とされているとき、指示ライン134上の指示信号が有効とされ、ハイに設定されており、且つ、DQビットの前半がハイに設定され、ビットの後半がローに設定されているデータパターンがDQバイトに存在する場合に、ポイズニングされたデータが示される。
DBI−dcがインターフェース150上で有効とされている場合には、ホストシステム110が、ポイズニングされたデータバイト又は複数のデータビットを書き込む場合に、特別な符号化(指示ライン134上の指示信号が有効とされ、ハイに設定され、データバスライン132上のDQビットの前半がハイに設定され、ビットの後半がローに設定される)が用いられる。DQバイト内に8ビットある場合には、このパターンは、11110000として示されることができる。この符号化は、任意の通常又はマスキングされたデータパターンについて発生しない。
DBI−acがインターフェース150上で有効とされている場合には、ホストシステム110が、マスキングされたデータバイトを書き込む場合(例えば、問題になっているバイト又は複数のデータビットがメモリに書き込まれない)に、特別な符号化(指示ライン134上の指示信号が有効とされ、ハイに設定され、データバスライン132上のDQビットの後半がそれらの前の値から転換されるように設定される)。例えば、DQバイト内に8ビットある場合には、そのパターンは11110000で示されることができ、これは、データバスライン132上の前のDQデータを、データバスライン132上の現在のDQデータを使用して排他的論理和演算することにより生成される。この符号化は、任意の通常又はマスキングされたデータパターンについて発生しない。
この符号化では、各バイトが個別にポイズニングされ得るが、別の実施形態では、読み出し又は書き込みの任意のバイトがポイズニングされた場合には、読み出し又は書き込みの全体のトランザクションがポイズニングされたとみなされる。
(フローチャート)
図2は、本発明の実施形態による、読み出しコマンドに応じて、有効なデータベース反転を用いて、例えばメモリシステム140がデータを伝送するためのフローチャート200である。一実施形態では、メモリシステム140は、読み出しコマンド間で、DQと指示信号とを、先の状態を効果的に保持するトライステートとすることができる。メモリシステム140は、1つ以上の読み出しコマンドを発行した後に、書き込みコマンドを送信するかアイドル状態に入るのに先立ち、データバスライン132のDQデータ及び指示ライン134上の指示信号をローに駆動する。一実施形態では、このデータバスライン132のDQデータ及び指示ライン134上の指示信号をローに駆動することは、8つのデータ信号の群のうちわずか5つのデータ信号が任意の遷移において転換し、これによって省電してノイズを最小化することを確実にするために、2つのハーフクロック周期を通して発生することができる。
メモリシステム140が書き込みコマンドのために信号を駆動している場合には、DBIの振る舞いは類似である。メモリシステム140は、書き込みコマンド間で、DQ及び指示信号を保持することになる。メモリシステム140は、1つ以上の読み出しコマンドを発行した後には、書き込みコマンドを送信するかアイドル状態に入るのに先立ち、2つのクロックウィンドウを通って、DQ及び指示信号をローに駆動することになる。
フローチャート200は、データのバーストから開始し、前のDQバイトをローに設定する。次のデータDQバイトは、異なっているビットの数を数えるために、前のDQバイトと比較される。次に、データがマスキングされたか否かが判断される。データがマスキングされている場合には、指示信号が有効とされ、ハイに設定される。さらに、DQ信号は「無視可能な(do not care)」状態にあり、複数のデータビットの前半がローに設定され、後半がハイに設定されるようにデータが設定される。データがマスキングされていない場合には、異なっているビットの数が分析される。この数がDQバイト内のビット(本フローチャートでは、DQバイトが8ビットからなる例を用いる)の50%を上回る場合には、指示信号はハイに設定され、ネストデータは反転される。この数がDQバイト内のビット数の50%を下回る場合には、指示信号はローに設定され、次のデータは反転されない。
フローチャートは、バーストが終了したかどうかを確認することにより継続し、終了していない場合には、このプロセスは、システムが、DBI−acか、DBI−dcのどちらを利用するかという選択とともに繰り返される。DBI−acが用いられている場合には、フローチャートは、前のデータと次のデータとの間の、異なっているビットの数を数えることにより継続する。DBI−dcが用いられている場合には、前のデータは最初ローに設定され、前のデータと次のデータとの間の、異なっているビットの数が数えられる。
フローチャートは、連続する読み出しに遭遇したかどうかを確認することにより継続する。遭遇した場合には、フローチャートは、DBI−ac又はDBI−dcが用いられたかどうかを確認することにより継続し、プロセスを繰り返す。連続する読み出しがない場合、フローチャートは終了する。
図3は、本発明の実施形態による、例えば、書き込みコマンドについてのデータを受け取るメモリシステム140などの受信機によって、正しいデータを判断するためのフローチャート300である。
フローチャート300は、データのバーストから開始し、前のDQバイトをローに設定する。データDQバイト及び関連付けられる指示信号が受け取られ、検査される。フローチャートは、最初に、指示信号がハイであるかどうかを判断する。指示信号がローである場合には、受け取られたデータは反転されない。
一実施形態では、指示信号がハイである場合には、DQバイトの前半がローであり、DQバイトの後半がハイに設定されるかどうかを判断するために、以前に受け取られたデータを、現在のデータを使用して排他的論理和演算する。そのように設定されない場合には、そのデータがマスキングされていないが、反転されるべきであることを示す。データパターンが、例えば、DQバイトの前半がローであり、DQバイトの後半がハイであるような、「マスキングされた」パターンと合致する場合には、データはマスキングされる。
一実施形態では、複数のデータビットがマスキングされていることを示すデータパターンは、ビットの前半がローであり、後半がハイである、という上記の例のみではなく、任意の所定のパターンであってもよい。例えば、ビットがマスキングされていることを示す複数のデータビットのパターンは、複数のデータビットのサブセットから構成されてもよく、このサブセットのうち少なくとも半分がアクティブ状態に設定される。例えば、データマスキングは、例えば、複数のデータビットがマスキングされていることを示す特定数のビット(例えば、ちょうど4ビット)が設定される場合に、シグナリングされ得る。別の実施形態では、例えば0000111100001111などのパターンは、複数のデータビットがマスキングされていることを示す。
いずれにせよ、フローチャートの次のステップは、バーストが終了したかどうか、フローチャートが終了するかどうかを判断する。バーストが終了していない場合には、プロセスは、次のDQバイトとともに継続する。
図4及び図5は、DQデータがポイズニングされているかどうか判断するために、DQバイトとあわせて指示信号を生成及び分析するアビリティを含むフローチャートである。
図4は、本発明の実施形態による、例えば、メモリシステム140が、読み出しコマンドに応答して、伝送されているデータについてデータポイズニングのサポートが有効とされているDBIを実行するためのフローチャート400である。一実施形態では、メモリシステム140は、読み出しコマンド間で、DQと指示信号とを、先の状態を効果的に保持するトライステートとすることができる。1つ以上の読み出しコマンドを発行した後、メモリシステム140が書き込みコマンドを送達するかアイドル状態に入るのに先立ち、メモリシステム140は、データバスライン132のDQデータおよび指示ライン134上の指示信号をローに駆動する。一実施形態では、このデータバスライン132のDQデータおよび指示ライン134上の指示信号をローに駆動することは、8つのデータ信号の群のうちわずか5つのデータ信号が任意の遷移において転換し、これにより省電し、ノイズを最小化することを確実にするために、2つのハーフクロック周期を通して発生することができる。
メモリシステム140が書き込みコマンドのために信号を駆動している場合には、DBIの振る舞いは類似である。メモリシステム140は、書き込みコマンド間で、DQおよび指示信号を保持することになる。1つ以上の読み出しコマンドを発行した後、メモリシステム140が書き込みコマンドを送達するかアイドル状態に入るのに先立ち、メモリシステム140は、2つのクロックウィンドウを通ってDQおよび指示信号をローに駆動する。
フローチャート400は、データのバーストから開始し、前のDQバイトをローに設定する。次のデータDQバイトは、異なっているビットの数を数えるため、前のDQバイトと比較される。次に、データがマスキングまたはポイズニングされたと考えられるか否かが判断される。データがマスキングもポイズニングもされていない場合には、異なっているビットの数が分析される。この数がDQバイト内のビット(フローチャートでは、DQバイトが8ビットからなる例を用いる)の50%を上回る場合には、指示信号がハイに設定され、ネストデータが反転される。この数がDQバイト内のビットの50%を下回る場合には、指示信号がローに設定され、次のデータが反転されない。
データがマスキングまたはポイズニングされている場合には、指示信号が有効とされ、ハイに設定される。さらに、DQ信号は「無視可能な(do not care)」状態にあるが、DQバイトがマスキングまたはポイズニングされたと判断されたかどうかにしたがって、パターニングされる。一実施形態では、データがマスキングされた場合には、DQバイトの前半がローに設定され、後半がハイに設定される(フローチャートでは、DQバイトパターンが00001111となる8ビットの例を示している)。データがポイズニングされた場合には、DQバイトの前半がハイに設定され、後半がローに設定される(フローチャートでは、DQバイトパターンが11110000となる8ビットの例を示している)。
データビットがマスキングされたことを示すパターンと同様に、データポイズニングは、ビットの前半がハイであり後半がローであるような上記の例のみでなく、任意の所定のパターンであることができる。例えば、ビットがポイズニングされていることを示す複数のデータビットのパターンは、複数のデータビットがマスキングされていることを示す複数のデータビットのサブセットに存在しない複数のデータビットのうち、少なくとも半分が設定される場合を含むことができる。別の例では、データポイズニングは、例えば、複数のデータビットがポイズニングされていることを示すちょうど5ビットが設定されるなどのように、ある数のビットが設定される場合には、シグナリングされることができる。別の実施形態では、1111000011110000などのパターンは、複数のデータビットがポイズニングされていることを示す。
フローチャートは、バーストが終了したかを確認することにより継続し、終了していない場合には、このプロセスは、システムがDBI−acかDBI−dcのどちらを利用するかという選択とともに繰り返される。DBI−acが用いられている場合には、フローチャートは、前のデータと次のデータとの間の、異なっているビットの数を数えることにより継続する。DBI−dcが用いられている場合には、前のデータは最初にローに設定され、前のデータと次のデータとの間の、異なっているビットの数が数えられる。
フローチャートは、連続する読み出しに遭遇したかどうかを確認することにより継続する。遭遇した場合には、フローチャートは、DBI−acまたはDBI−dcが用いられたかを確認することにより継続し、プロセスを繰り返す。連続する読み出しがない場合、フローチャートは終了する。
図5は、本発明の実施形態による、データポイズニングのサポートが有効とされている書き込みコマンドについてのデータを受け取る、例えばメモリシステム140などの受信機が、正しいデータを判断するためのフローチャート500である。
フローチャート500は、データのバーストから開始し、前のDQバイトをローに設定する。データDQバイトおよび関連付けられる指示信号が受け取られ、検査される。フローチャートは、最初、指示信号がハイであるかどうかを判断する。指示信号がローである場合には、受け取られたデータが反転されない。
指示信号がハイである場合には、得られるデータパターンを判断するために、前に受け取られたデータは、現在のデータを使用して排他的論理和演算される。DQバイトの前半がローであり、DQバイトの後半がハイに設定されている場合(パターンが00001111の8ビットのDQバイトとともに図5のフローチャートに例示される)。パターンが合致した場合には、DQバイトがマスキングされたことを示す。
DQバイトの前半がハイであり、DQバイトの後半がローである場合(パターンが11110000の8ビットのDQバイトとともに図5のフローチャートに例示される)、DQバイトがポイズニングされていることを示す。
このパターンがマスキングされたパターンまたはポイズニングされたパターンと合致しない場合には、現在のデータが反転されなければならない。
いずれにしても、フローチャートの次のステップは、バーストが終了したか、フローチャートを完了させるかを判断する。バーストが終了していない場合には、プロセスは次のDQバイトとともに継続する。
(方法)
実施形態による方法は、図1〜図5に記載の統合データマスキング、データポイズニング、およびデータバス反転シグナル伝達に関連して、制限されることなく記載される。
図6は、統合シグナリングの発生についての例示的な方法600のフローチャートである。説明を簡単にするために、方法600は、図2〜図5において説明される方法論を用いて、図1の統合シグナリングシステムに関連して説明されるが、本方法の実施形態はこれに限定されない。
方法600は、単一の指示信号の状態の設定とともにステップ602で始まる。図4に関して検討されたように、次のデータが反転されないことを示すために、指示信号はローに設定される。指示信号は、次のデータが反転されること、または、複数のデータビットがマスキングまたはポイズニングされていることを示すために、ハイに設定される。
本方法は、複数のデータビットにおけるデータパターンの生成とともに、ステップ604で継続する。指示信号がハイに設定されている場合には、本方法は、複数のデータビットがマスキングまたはポイズニングされているかどうかを識別するために、複数のデータビットのパターンに依存する。データパターンが、複数のデータビットの前半がハイに設定され、後半がローに設定されているような場合には、複数のデータビットがポイズニングされているとみなされる。複数のデータビットの前半がローに設定され、後半がハイに設定される場合には、複数のデータビットがマスキングされたとみなされる。
本方法は、ステップ606で、単一の指示信号の状態と複数のデータビットのパターンとに基づいて、データバス反転が複数のデータビットに適用されたこと、または、複数のデータビットがポイズニングされていること、をシグナリングすることにより継続する。このステップは、複数のデータビットのステータスを示すために、指示信号の状態とあわせて複数のデータビットのパターンを復号する。
図7は、統合シグナリングの受け取りおよび分析についての例示的な方法700のフローチャートである。説明を簡単にするために、方法700は、図2〜図5において説明される方法論を用いて、図1の統合シグナリングシステムに関連して説明されるが、本方法の実施形態はこれに限定されない。
方法700は、単一の指示信号の状態の分析とともにステップ702で始まる。図4に関して検討されたように、指示信号がローである場合、次のデータは反転されない。指示信号がハイに設定されている場合、次のデータは反転、マスキングまたはポイズニングされる。
本方法は、複数のデータビットにおけるデータパターンの分析とともに、ステップ704で継続する。指示信号がハイに設定されている場合、本方法は、複数のデータビットがマスキングまたはポイズニングされているかどうかを識別するために、複数のデータビットのパターンに依存する。データパターンが、複数のデータビットの前半がハイに設定され、後半がローに設定されているような場合には、複数のデータビットがポイズニングされているとみなされる。複数のデータビットの前半がローに設定され、後半がハイに設定されている場合には、複数のデータビットがマスキングされているとみなされる。
本方法は、ステップ706で、単一の指示信号の状態と複数のデータビットのパターンとに基づいて、データバス反転が前記複数のデータビットに適用されたこと、または、前記複数のデータビットがポイズニングされていること、を判断することにより継続する。このステップは、複数のデータビットのステータスを示すために、指示信号の状態とあわせて複数のデータビットのパターンを復号する。
(結論)
概要や要約の欄は、発明者によって熟考されるような本発明の1つ以上の例示的な実施形態ではあるが全てではない例示的な実施形態を説明し得るものであり、それ故、決して本発明および添付の特許請求の範囲を限定することを意図するものではない。
本明細書の実施形態は、特定される機能およびその関係性の実装を例示する機能的ブロックを活用して説明された。これらの機能的ブロックの境界は、説明の便宜上、本明細書において任意に定義されている。代替の境界は、特定される機能およびその関係性が適切に実施されている限り定義され得る。
特定の実施形態の前述の説明は、本発明の一般的性質を完全に明らかにしたものであるので、当業者の技能範囲内の知識を適用することにより、過度の実験を必要とせず、本発明の一般的概念から逸脱することなく、かかる特定の実施形態を種々の用途に容易に修正および/または適合することができる。したがって、かかる適合および修正は、本明細書に提示されている教示および指導に基づき、開示される実施形態の均等物の範囲および意味に属するように意図される。本明細書の表現または用語は、制限ではなく説明を目的としており、ゆえに本明細書のこの用語または表現は、当業者によって教示および指導に照らして解釈されると理解されるものとする。
本発明の広がりや範囲は、上記の例示的な実施形態のいずれによっても制限されるべきではなく、以下の特許請求の範囲やそれらの均等物に従ってのみ定義されるべきである。

Claims (26)

  1. 統合データシグナリングを提供する方法であって、
    複数のデータビット内にデータパターンを生成することと、
    単一の指示信号の状態と、前記複数のデータビットの前記パターンとに基づいて、データバス反転が前記複数のデータビットに適用されたこと、または、前記複数のデータビットがポイズニングされていること、をシグナリングすることと、を含む、方法。
  2. 前記単一の指示信号の前記状態と、前記複数のデータビットの前記パターンとに基づいて、前記複数のデータビットがマスキングされていることをシグナリングすることをさらに含む、請求項1に記載の方法。
  3. 前記複数のデータビットがマスキングされていることを示す前記複数のデータビットの前記パターンは、前記複数のデータビットのサブセットを含み、前記複数のデータビットの前記サブセットのうち少なくとも半分は、設定されるか、直前のサイクルから状態が変更される、請求項2に記載の方法。
  4. 前記複数のデータビットがポイズニングされていることをシグナリングすることであって、前記単一の指示信号を真の状態に設定することを含み、前記複数のデータビットがマスキングされていることを示す前記複数のデータビットの前記サブセットに存在しない前記複数のデータビットのうち少なくとも半分が、設定されるか、直前のサイクルから状態が変更されること、をさらに含む、請求項3に記載の方法。
  5. データバス反転が前記複数のデータビットに適用されたことをシグナリングすることであって、前記単一の指示信号を真の状態に設定することを含み、前記複数のデータビットの前記パターンは、前記複数のデータビットがマスキングまたはポイズニングされていることを示すパターンを含まないこと、をさらに含む、請求項1に記載の方法。
  6. 複数のデータビットと、複数の指示信号と、をさらに含み、複数のデータビットの各々は、特定の指示信号に関連付けられている、請求項1に記載の方法。
  7. 前記単一の指示信号を、データバス反転が無効とされたことと、前記複数のデータビットがマスキングもポイズニングもされていないことと、を示す偽の状態に設定することをさらに含む、請求項1に記載の方法。
  8. 前記複数のデータビットがマスキングまたはポイズニングされていることを示すパターンは、いずれのマスキングされていないデータパターンにおいても発生しない、請求項1に記載の方法。
  9. 前記単一の指示信号の状態を設定することをさらに含む、請求項1に記載の方法。
  10. 統合データシグナリングを受け取る方法であって、
    単一の指示信号の状態を分析することと、
    複数のデータビットのデータパターンを分析することと、
    単一の指示信号の状態と、前記複数のデータビットの前記パターンとに基づいて、データバス反転が前記複数のデータビットに適用されたこと、または、前記複数のデータビットがポイズニングされていること、を判断することと、を含む、方法。
  11. 前記単一の指示信号の前記状態と、前記複数のデータビットの前記パターンとに基づいて、前記複数のデータビットがマスキングされていることを判断することをさらに含む、請求項10に記載の方法。
  12. 前記複数のデータビットのサブセットは、設定された前記複数のデータビットの前記サブセットのうち少なくとも半分、または、直前のサイクルからの変更された状態を含む、請求項11に記載の方法。
  13. 前記複数のデータビットがポイズニングされていることを判断することであって、前記単一の指示信号が真の状態にあると判断することと、前記複数のデータビットがマスキングされていることを示す前記複数のデータビットの前記サブセット内に存在しない前記複数のデータビットのうち少なくとも半分は、設定されるか、直前のサイクルから状態が変更されることとを含むこと、をさらに含む、請求項12に記載の方法。
  14. データバス反転が前記複数のデータビットに適用されたと判断することであって、前記単一の指示信号が真の状態に設定されているかどうかを判断することと、前記複数のデータビットの前記パターンは、前記複数のデータビットがマスキングまたはポイズニングされていることを示すパターンを含まないかどうかを判断することとを含むこと、をさらに含む、請求項10に記載の方法。
  15. 前記単一の指示信号が、データバス反転が無効とされたことと、前記複数のデータビットがマスキングもポイズニングもされていないこととを示す偽の状態に設定されているかどうかを分析することをさらに含む、請求項10に記載の方法。
  16. 前記単一の指示信号の状態を分析することをさらに含む、請求項10に記載の方法。
  17. 統合データシグナリングを提供するためのシステムであって、
    メモリデバイスと、
    前記メモリデバイスに接続された処理ユニットとを備え、
    前記処理ユニットは、
    複数のデータビット内にデータパターンを生成し、
    単一の指示信号の前記状態と、前記複数のデータビットの前記パターンとに基づいて、データバス反転が前記複数のデータビットに適用されたこと、または、前記複数のデータビットがポイズニングされていること、をシグナリングするように構成されている、システム。
  18. 前記メモリデバイスに接続された前記処理ユニットは、
    前記単一の指示信号の前記状態と、前記複数のデータビットの前記パターンとに基づいて、前記複数のデータビットがマスキングされていることをシグナリングするようにさらに構成されている、請求項17に記載のシステム。
  19. 前記処理ユニットは、複数の複数のデータビットおよび複数の指示信号を処理するように構成された複数のデータ信号ラインおよび単一の指示ラインを用いて、前記メモリデバイスに接続するように構成されており、複数のデータビットの各々は特定の指示信号に関連付けられている、請求項17に記載のシステム。
  20. 前記処理ユニットは、前記単一の指示信号を、データバス反転が無効とされたことと、前記複数のデータビットがマスキングもポイズニングもされていないこととを示す偽の状態に設定するように構成されている、請求項17に記載のシステム。
  21. 前記処理ユニットは、前記単一の指示信号の状態を設定するようにさらに構成されている、請求項17に記載のシステム。
  22. 統合データシグナリングを受け取るためのシステムであって、
    メモリデバイスと、
    前記メモリデバイスに接続された処理ユニットとを備え、
    前記処理ユニットは、
    単一の指示信号の状態を分析し、
    複数のデータビット内のデータパターンを分析し、
    前記単一の指示信号の前記状態と、前記複数のデータビットの前記パターンとに基づいて、データバス反転が前記複数のデータビットに適用されたこと、または、前記複数のデータビットがポイズニングされていること、を判断するように構成されている、システム。
  23. 前記メモリデバイスに接続された前記処理ユニットは、
    前記単一の指示信号の前記状態と、前記複数のデータビットの前記パターンとに基づいて、前記複数のデータビットがマスキングされていることを判断するようにさらに構成されている、請求項22に記載のシステム。
  24. 前記処理ユニットは、前記単一の指示信号が、データバス反転が無効とされたことと、前記複数のデータビットがマスキングもポイズニングもされていないこととを示す偽の状態に設定されているかどうかを分析するように構成されている、請求項22に記載のシステム。
  25. 命令を符号化する少なくとも1つのコンピュータ可読記憶媒体を含むコンピュータプログラム製品であって、
    前記命令は、コンピューティングデバイスによる実行に応じて、前記コンピューティングデバイスに、
    単一の指示信号の状態を設定することと、
    複数のデータビット内にデータパターンを生成することと、
    前記単一の指示信号の状態と、前記複数のデータビットのパターンとに基づいて、データバス反転が前記複数のデータビットに適用されたこと、または、前記複数のデータビットがポイズニングされていること、をシグナリングすることと、
    を含む動作を実行させる、コンピュータプログラム製品。
  26. 前記コンピューティングデバイスに、
    前記単一の指示信号の前記状態と、前記複数のデータビットの前記パターンとに基づいて、前記複数のデータビットがマスキングされていることをシグナリングすることを含む動作をさらに実行させる、請求項25に記載のコンピュータプログラム製品。
JP2014547436A 2011-12-14 2012-12-13 統合データマスキング、データポイズニング及びデータバス反転シグナリング Active JP5947398B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/325,648 US8726139B2 (en) 2011-12-14 2011-12-14 Unified data masking, data poisoning, and data bus inversion signaling
US13/325,648 2011-12-14
PCT/US2012/069541 WO2013090599A1 (en) 2011-12-14 2012-12-13 Unified data masking, data poisoning, and data bus inversion signaling

Publications (3)

Publication Number Publication Date
JP2015506039A true JP2015506039A (ja) 2015-02-26
JP2015506039A5 JP2015506039A5 (ja) 2016-02-04
JP5947398B2 JP5947398B2 (ja) 2016-07-06

Family

ID=47472088

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014547436A Active JP5947398B2 (ja) 2011-12-14 2012-12-13 統合データマスキング、データポイズニング及びデータバス反転シグナリング

Country Status (6)

Country Link
US (1) US8726139B2 (ja)
EP (1) EP2791809B1 (ja)
JP (1) JP5947398B2 (ja)
KR (1) KR101879708B1 (ja)
CN (1) CN103988192B (ja)
WO (1) WO2013090599A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016537720A (ja) * 2013-11-13 2016-12-01 クアルコム,インコーポレイテッド データマスキングを介してメモリi/o電力を低減するためのシステムおよび方法

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8677211B2 (en) * 2010-12-23 2014-03-18 International Business Machines Corporation Data bus inversion using spare error correction bits
US20130117593A1 (en) * 2011-11-07 2013-05-09 Qualcomm Incorporated Low Latency Clock Gating Scheme for Power Reduction in Bus Interconnects
US9529749B2 (en) 2013-03-15 2016-12-27 Qualcomm Incorporated Data bus inversion (DBI) encoding based on the speed of operation
US9864536B2 (en) * 2013-10-24 2018-01-09 Qualcomm Incorporated System and method for conserving power consumption in a memory system
US9270417B2 (en) 2013-11-21 2016-02-23 Qualcomm Incorporated Devices and methods for facilitating data inversion to limit both instantaneous current and signal transitions
US9817738B2 (en) * 2015-09-04 2017-11-14 Intel Corporation Clearing poison status on read accesses to volatile memory regions allocated in non-volatile memory
US9922686B2 (en) * 2016-05-19 2018-03-20 Micron Technology, Inc. Apparatuses and methods for performing intra-module databus inversion operations
US10754970B2 (en) 2017-01-27 2020-08-25 International Business Machines Corporation Data masking
US11237729B1 (en) 2020-10-13 2022-02-01 Sandisk Technologies Llc Fast bus inversion for non-volatile memory

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004207942A (ja) * 2002-12-25 2004-07-22 Sony Corp データ転送装置とデータ転送方法
JP2012533264A (ja) * 2009-07-13 2012-12-20 ラムバス・インコーポレーテッド 組み合わせデータマスクおよびデータバス反転を用いたデータ符号化
JP2013524383A (ja) * 2010-04-12 2013-06-17 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド データバス反転信号伝達を用いる同時スイッチング出力の低減

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6898648B2 (en) * 2002-02-21 2005-05-24 Micron Technology, Inc. Memory bus polarity indicator system and method for reducing the affects of simultaneous switching outputs (SSO) on memory bus timing
US8201071B2 (en) * 2006-11-15 2012-06-12 Qimonda Ag Information transmission and reception
US8245087B2 (en) 2007-03-26 2012-08-14 Cray Inc. Multi-bit memory error management
US7616133B2 (en) * 2008-01-16 2009-11-10 Micron Technology, Inc. Data bus inversion apparatus, systems, and methods
US8363707B2 (en) * 2008-03-21 2013-01-29 Micron Technology, Inc. Mixed-mode signaling
WO2009134568A2 (en) * 2008-04-02 2009-11-05 Rambus Inc. Encoding data with minimum hamming weight variation
WO2009154797A2 (en) * 2008-06-20 2009-12-23 Rambus, Inc. Frequency responsive bus coding
US8271747B2 (en) 2008-07-31 2012-09-18 Rambus Inc. Mask key selection based on defined selection criteria
KR20100053202A (ko) * 2008-11-12 2010-05-20 삼성전자주식회사 Rdbi 기능을 지원하는 반도체 메모리 장치 및 그 테스트 방법
KR101688050B1 (ko) * 2009-12-22 2016-12-21 삼성전자 주식회사 반도체 장치 및 반도체 장치의 리드 또는 라이트 동작 수행 방법
US8706958B2 (en) * 2011-09-01 2014-04-22 Thomas Hein Data mask encoding in data bit inversion scheme
US8495437B2 (en) * 2011-09-06 2013-07-23 Samsung Electronics Co., Ltd. Semiconductor memory device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004207942A (ja) * 2002-12-25 2004-07-22 Sony Corp データ転送装置とデータ転送方法
JP2012533264A (ja) * 2009-07-13 2012-12-20 ラムバス・インコーポレーテッド 組み合わせデータマスクおよびデータバス反転を用いたデータ符号化
JP2013524383A (ja) * 2010-04-12 2013-06-17 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド データバス反転信号伝達を用いる同時スイッチング出力の低減

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016537720A (ja) * 2013-11-13 2016-12-01 クアルコム,インコーポレイテッド データマスキングを介してメモリi/o電力を低減するためのシステムおよび方法

Also Published As

Publication number Publication date
KR20140102703A (ko) 2014-08-22
KR101879708B1 (ko) 2018-07-18
US8726139B2 (en) 2014-05-13
EP2791809B1 (en) 2017-08-02
CN103988192B (zh) 2018-02-09
US20130159818A1 (en) 2013-06-20
JP5947398B2 (ja) 2016-07-06
CN103988192A (zh) 2014-08-13
WO2013090599A1 (en) 2013-06-20
EP2791809A1 (en) 2014-10-22

Similar Documents

Publication Publication Date Title
JP5947398B2 (ja) 統合データマスキング、データポイズニング及びデータバス反転シグナリング
KR102350538B1 (ko) Ddr 메모리 에러 복구
KR102426619B1 (ko) 영구 메모리 시스템 등을 위한 데이터 무결성
US7916553B2 (en) Memory system and method having volatile and non-volatile memory devices at same hierarchical level
TWI518512B (zh) 使用資料匯流排反轉訊號以減少同時之切換輸出之裝置與方法
US8862973B2 (en) Method and system for error management in a memory device
US8738993B2 (en) Memory device on the fly CRC mode
JP2016045955A (ja) メモリ装置及びその動作方法並びにメモリモジュール
TW202223903A (zh) 適應性內部記憶體錯誤刷洗及錯誤處置
WO2009049399A1 (en) Single-strobe operation of memory devices
CN114078503B (zh) 基于存储器装置中的局部命令解码的突发时钟控制
US20240004583A1 (en) Protocol for data poisoning
CN112349342B (zh) 维护ddr5内存子系统的维护装置、方法、设备和存储介质
CN110998729A (zh) 使用与存储器集成的逻辑来执行后台功能
US10108374B2 (en) Memory controller for performing write transaction with stall when write buffer is full and abort when transaction spans page boundary
WO2024016971A1 (zh) 错误确定方法及系统、处理器、内存
KR20190052490A (ko) 반도체 메모리 모듈, 반도체 메모리 시스템, 그리고 반도체 메모리 모듈을 액세스하는 액세스 방법
JP2019083082A (ja) フラッシュメモリモジュール及びフラッシュメモリ
US20220190844A1 (en) Method and apparatus to perform cyclic redundancy check training in a memory module
CN115762621A (zh) 不可校正的存储器错误预测
JP2023088840A (ja) 適応的ダブルデバイスデータ訂正スペアリングのためのアドレス生成
CN117472644A (zh) 错误确定方法及系统、处理器、内存
KR20230082529A (ko) 리프레쉬 동작에서 파워 노이즈를 감소시킨 메모리 장치 및 그 동작방법

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151207

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20151207

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20151207

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20151225

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160112

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160411

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160510

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160602

R150 Certificate of patent or registration of utility model

Ref document number: 5947398

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250