JP2019053725A - 高帯域メモリシステム - Google Patents

高帯域メモリシステム Download PDF

Info

Publication number
JP2019053725A
JP2019053725A JP2018152980A JP2018152980A JP2019053725A JP 2019053725 A JP2019053725 A JP 2019053725A JP 2018152980 A JP2018152980 A JP 2018152980A JP 2018152980 A JP2018152980 A JP 2018152980A JP 2019053725 A JP2019053725 A JP 2019053725A
Authority
JP
Japan
Prior art keywords
hbm
pim
host device
word
command
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
JP2018152980A
Other languages
English (en)
Other versions
JP6941082B2 (ja
JP2019053725A5 (ja
Inventor
クリシュナ ティー マラディ,
T Malladi Krishna
クリシュナ ティー マラディ,
宏 忠 鄭
Hongzhong Zheng
宏 忠 鄭
ロバート ブレナン,
Brennan Robert
ロバート ブレナン,
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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of JP2019053725A publication Critical patent/JP2019053725A/ja
Publication of JP2019053725A5 publication Critical patent/JP2019053725A5/ja
Application granted granted Critical
Publication of JP6941082B2 publication Critical patent/JP6941082B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0661Format or protocol conversion arrangements
    • 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/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1689Synchronisation and timing concerns
    • 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/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1678Details of memory controller using bus width
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • 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/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/161Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
    • G06F13/1615Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement using a concurrent pipeline structrure
    • 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/4243Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus with synchronous protocol
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7807System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
    • G06F15/7821Tightly coupled to memory, e.g. computational memory, smart memory, processor in memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0625Power saving in storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/068Hybrid storage device

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Memory System (AREA)
  • Bus Control (AREA)
  • Dram (AREA)
  • Information Transfer Systems (AREA)

Abstract

【課題】論理回路を有する高帯域メモリ(HBM)システムを提供する。【解決手段】第1インターフェース(108、109、110)を介してホスト装置101から第1命令語を受信し、第1命令語を、第2インターフェース111を介してHBM装置(105a〜105d)に伝送されるPIM(Processing−In−Memory)命令語に変換する論理回路104を備える。第1命令語がホスト装置から受信された時点とHBMシステム100がホスト装置から他の命令語を受信する準備ができた時点との間の時間は、決定論的(deterministic)である。論理回路は、ホスト装置から第4命令語及び第5命令語を更に受信し、第5命令語は、第5命令語がホスト装置から受信された時点とHBMシステムがホスト装置から他の命令語を受信する準備ができた時点との間の時間に関する、決定論的期間及び非決定論的期間を含む時間推定情報を要求する。【選択図】図1

Description

本発明は、高帯域メモリ(HBM)システムに関し、より詳細には、ホスト装置とインターフェースするためのメモリ動作において、決定論的及び非決定論的処理を含む高帯域メモリシステムに関する。
ディープ神経網(Deep Neural Net)のような新しい応用プログラムは、膨大な計算及びメモリ機能を使用して他のデータセットを学習し、高い正確度で学習する。また、高性能コンピューティング(HPC)、グラフィックアルゴリズムなどのような応用プログラムがデータ及び演算集約的に変わることによって、エネルギーの効率性と低遅延(latency)が重要な特性となる。プロセッシングインメモリ(Processing In Memory:PIM)は、DRAMロジックダイ(logic dies)の複雑な作業をスケジューリングして低電力技術プロセスで追加コンピューティング機能を提供し、データのあるところにより近くPIMを配置することによって、このような問題を解決する。
米国特許第6622235号明細書 米国特許第8321627号明細書 米国特許第9201777号明細書 米国特許第9633748号明細書 米国特許出願公開第2008/0162855号明細書 米国特許出願公開第2016/0210174号明細書 米国特許出願公開第2016/0379686号明細書 米国特許出願公開第2017/0220499号明細書
PATTNAIK, Ashutosh et al., 「Scheduling Techniques for GPU Architectures with Processing−In−Memory Capabilities」PACT ’16, September 11−15, 2016, Haifa, Israel
本発明は、上記従来の問題点に鑑みてなされたものであって、本発明の目的は、ホスト装置とインターフェースするためのメモリ動作において、決定論的及び非決定論的処理を含む高帯域メモリシステムを提供することにある。
上記目的を達成するためになされた本発明の一態様による高帯域メモリ(HBM)システムは、高帯域メモリ(HBM)装置と、ホスト装置に連結された第1インターフェース及び前記HBM装置に連結された第2インターフェースを含み、前記第1インターフェースを介して前記ホスト装置から第1命令語を受信し、前記受信された第1命令語を、前記第2インターフェースを介して前記HBM装置に伝送される第1PIM(Processing−In−Memory)命令語に変換する論理回路と、を備え、前記第1命令語が前記ホスト装置から受信された時点と前記HBMシステムが前記ホスト装置から他の命令語を受信する準備ができた時点との間の時間は、決定論的である。
前記第1PIM命令語は、完了のための決定論的遅延を有し得る。前記論理回路は、前記第1インターフェースを介して前記ホスト装置から第2命令語を受信し、前記受信された第2命令語を、前記第2インターフェースを介して前記HBM装置に伝送される第2PIM命令語に変換し、前記第2PIM命令語は、完了のための非決定論的遅延を有する。前記論理回路は、前記ホスト装置から受信された前記第1命令語に応答して前記HBM装置を制御し、前記HBM装置のチャンネルから少なくとも一つの選択されたバンクをプリチャージし得る。前記第2命令語が前記ホスト装置から前記論理回路によって受信された時点と前記HBMシステムが前記ホスト装置から他の命令語を受信する準備ができた時点との間の時間は、決定論的である。
上記目的を達成するためになされた本発明の他の態様による高帯域メモリ(HBM)システムは、高帯域メモリ(HBM)装置と、ホスト装置に連結された命令語/アドレスバス及びデータバスを含む第1インターフェース、前記HBM装置に連結された第2インターフェース、及び前記ホスト装置に連結されたトランザクションバス(transaction bus)を含み、前記第1インターフェースを介して前記ホスト装置から一つ以上の命令語を受信し、受信されたそれぞれの命令語を、前記第2インターフェースを介して前記HBM装置に伝送される少なくとも一つの対応するPIM(Processing−In−Memory)命令語に変換する論理回路と、を備え、前記論理回路は、前記ホスト装置から前記HBM装置内におけるPIM動作のための第1命令語を受信し、前記受信された第1命令語を前記HBM装置に伝送される第1PIM命令語に変換し、前記ホスト装置から前記第1命令語に続く第2命令語を更に受信し、前記第2命令語は、前記第2命令語が前記ホストから受信された時点と前記HBMシステムが前記ホスト装置から他の命令語を受信する準備ができた時点との間の時間に関する、決定論的期間及び非決定論的期間を含む時間推定情報を要求する。
前記第1PIM命令語は、完了のための非決定論的遅延を有し得る。前記論理回路は、前記第1PIM命令語の変換が完了した場合、前記トランザクションバスを介して前記ホスト装置に指示を伝送し得る。前記第1命令語に対応する第1命令語パケットは、前記ホスト装置からデータバスを介して前記論理回路で受信され、前記第1命令語が前記ホスト装置から受信された時点と前記HBMシステムが前記ホスト装置から他の命令語を受信する準備ができた時点との間の時間は、非決定論的であり得る。
本発明によると、ホスト装置とインターフェースするためのメモリ動作において、決定論的及び非決定論的処理を可能にする高帯域メモリシステム及びそのプロトコルを具現することができる。
一実施形態によるHBM+システムの一例の一部の断面図である。 一実施形態による1段階HBM+プロトコル命令語の一例のタイミング図である。 一実施形態によるPIM_CMD命令語のコンテンツの一例の配置を示す図である。 一実施形態による2段階HBM+プロトコル命令語の一例の概略的タイミング図である。 一実施形態によるPIM動作がHBM+装置内の単一のアドレスに向けられるか又は同一の行に向けられる1段階HBM+プロトコルPIM命令語の一例のタイミング図である。 一実施形態によるPIM動作が同一のチャンネルのバンク内で行われる1段階HBM+プロトコルPIM命令語の一例のタイミング図である。 一実施形態によるPIM動作が異なるチャンネルを介して行われる1段階HBM+プロトコルPIM命令語の一例のタイミング図である。 一実施形態によるPIM命令語が完了する時点でHBM+スタックが時間の推定値を提供する2段階HBM+プロトコルPIM命令語の一例のタイミング図である。 一実施形態によるPIM命令語が完了する時点でHBM+スタックがクレジット基盤指示を提供する2段階HBM+プロトコルPIM命令語の一例のタイミング図である。 一実施形態によるPIM命令語が完了する時点でHBM+スタックがフィードバック基盤指示を提供する2段階HBM+プロトコルPIM命令語の一例のタイミング図である。
以下、本発明を実施するための形態の具体例を、図面を参照しながら詳細に説明する。発明の詳細な説明において、本発明の完全な理解を提供するために多数の特定の細部事項を説明する。しかし、当業者は開示された態様がこのような特定の細部事項無しで実施され得ることを理解するはずである。他の例において、公知された方法、手順、構成要素、及び回路は、ここに開示する主題を曖昧にしないために詳細に説明しない。
本明細書の全体に亘って「一実施形態」又は「実施形態」は、本実施形態に関連して説明する特定の特徴、構造、又は特性が本明細書に開示する少なくとも一つの実施形態に含まれるということを意味する。従って、本発明の全体に亘って「一実施形態において」又は「実施形態において」又は「一実施形態によって」(又は類似の意味を有する他の文句)という表現は、全てが必ずしも同一の実施形態を示すものではない。なお、特定のフィーチャー(feature)、構造、又は特性は、一つ以上の実施形態において任意の適した方式に連結される。これに関連して、本明細書で使用するように、「例示的な」という単語は、「例示、実例、又は例示を提供する」ということを意味する。「例示的な」ものと本明細書に記載する任意の実施形態は、必ずしも他の実施形態よりも好ましく、且つ有利なものと解釈してはならない。更に、論議の文脈によって、単数は対応する複数の形態を含むことがあり、複数の用語は相応する単数の形態を含むことがある。本明細書に図示し、論議する多様な図面(構成要素も含む)は、単に例示的な目的のためのものであり、一定の比率で描かれるものではない。同様に、多様な波形及びタイミング図を、単に例示的な目的のために示す。例えば、一部の要素の寸法は、明確性のために他の要素に比べて誇張され得る。更に、適切なものとして考慮される場合、参照符号は、相応するか又は類似の要素を示すために図面の間で繰り返される。
本明細書で使用する用語は、単に特定の実施形態を説明するためのものであり、特許請求の範囲を限定するものではない。本明細書で使用する単数の形態「a」、「an」、及び「the」は、文脈上別に指示しない限り、複数の形態を含むものとする。本明細書で使用する「〜含む」又は「含む〜」という用語は、明示する特徴、整数、段階、動作、要素、構成要素、又は構成要素の存在を示すが、存在を排除しないということが理解されるはずであり、或いは一つ以上の他の特徴、整数、段階、動作、構成要素、又はグループの追加を含む。本明細書で使用する「第一」、「第二」などの用語は、前に明示した名詞のラベルとして使用され、明示的に定義されない限り、全ての類型の順序(例えば、空間的、時間的、論理的など)を暗示しない。なお、同一且つ類似の機能を有する部品(parts)、コンポーネント(components)、ブロック、回路、ユニット、又はモジュールを示すために二つ以上の図面に亘って同一の参照番号を使用する。しかし、このような使用方法は、説明の簡素化及び論議の容易さのためだけに使用される。このような構成要素又はユニットの構成若しくは構造的細部事項が全ての実施形態に亘って同一であるということを意味しないか、或いは共通して参照する部品/モジュールが本明細書に開示する特徴の実施形態の教示を具現する唯一の方法であることを意味しない。
別に定義しない限り、本明細書で使用する全ての用語(技術用語及び科学用語を含む)は、本発明の技術分野における当業者が一般的に理解するものと同一の意味を有する。なお、一般的に使用される辞書で定義された用語と同一の用語は、関連技術の脈絡における意味に一致する意味を有するものと解釈すべきであり、理想的又は過度に形式的な意味として解釈されない限り、明示的にここに定義される。
本発明は、高帯域PIM(本明細書では、PIM(Processing−In−Memory)機能を支援する高帯域メモリ(HBM)を「HBM+」若しくは単に「HBM」と呼称する)システムのための準同期インターフェースプロトコルに関するものである。即ち、本発明は、HBM+システムとホスト装置との間のインターフェースとして、決定論的(deterministic)遅延(latency)及び非決定論的(non−deterministic)遅延の両方を含むのであり、従って、準同期式(quasi−synchronous)インターフェースプロトコルである。本明細書に開示する準同期プロトコルを用いる通信は、一つ以上のクロック信号に同期化されるが、PIM動作のような特定の動作に関連する特定の遅延は、完了のための決定論的遅延又は非決定論的遅延を有する。決定論的遅延を決定するPIM動作は1段階HBM+プロトコルを使用して遂行されるが,非決定論的遅延を提供するPIM動作は2段階HBM+プロトコルを使用して遂行される。
図1は、一実施形態によるHBM+システム100の一例の一部の断面図である。HBM+システム100は、ホスト装置101、インターポーザー(interposer)102、及びHBM+スタック(stack)103を含む。HBM+スタック103は、ロジックダイ(die)(又は論理回路)104、及び複数のHBM+メモリ装置(105a〜105d)を含む。ホスト装置101及びHBM+スタック103は、インターポーザー102の上部表面に固定される。
一実施形態において、ホスト装置101は、中央処理装置(CPU)、グラフィック処理装置(GPU)、グラフィック加速器、又はFPGA(Field Programmable Gate Array)であるが、これに限定されるものではない。
HBM+メモリ装置105は、チャンネル当たり16個のバンクを有する二つのチャンネルに分割される。また、一つ以上のHBM+メモリ装置(105a〜105d)は、従来の判読及び記録動作のようなPIM機能及び規則的なデータ貯蔵機能を含む。HBM+メモリ装置に提供されるPIM機能は、ホスト装置101によってより効率的に提供される。ロジックダイ104は、HBM+メモリデバイス105内のPIM機能を制御するためのロジック機能を含む。HBM+内部バス111は、ロジックダイ104をHBM+メモリ装置105の各々に接続させる。HBM+内部バス111は、複数のアドレスライン、複数の命令語(コマンド)ライン、複数のデータライン、及び一つ以上の他の信号線を含む。4個のHBM+メモリ装置105をHBM+スタック103に示しているが、任意の数のHBM+メモリ装置105がHBM+スタック103を形成することはよく理解されるはずである。HBM+システム100の一部のみを図1に示しているが、インターポーザー102の上部表面に取り付けられる追加的なHBM+スタック103が有り得ることを理解すべきである。
インターポーザー102は、基板106の上部表面に固定される。基板106は、他の装置(図示せず)に電気接続を提供するために使用される端子107を含む。インターポーザー102は、ホスト装置101及びHBM+スタック103に対する構造的基盤を提供する以外に、ホスト装置101とHBM+スタック103との間の電気的連結を提供する。本実施形態において、インターポーザー102は、ホスト装置101とHBM+スタック103との間に電気的に連結される命令語(コマンド)/アドレス(CA)バス108、データバス109、及びトランザクションバス110を含む。インターポーザー102は、図示していない追加的な電気的連結を含む。
CAバス108、データバス109、及びトランザクションバス110のそれぞれは、複数のライン及び/又はビットを含む。本実施形態において、トランザクションバス110は、トランザクション応答信号(RSP_R)及びトランザクションエラー信号(RSP_E)を含む。CAバス108、データバス109、及びトランザクションバス110は、HBM+システム100内において同期式方式で動作する。即ち、CAバス108、データバス109、及びトランザクションバス110は、一つ以上のクロック信号に同期して動作する。
本実施形態において、HBM+システム100は、例えば命令語又はトランザクションの発行と応答出力との間のタイミングで、ホスト装置101とHBM+スタック103との間で命令語及びデータを通信するための1段階HBM+プロトコルを含み、正規のデータ貯蔵機能及び/又はPIM機能に基づくか、或いはHBM+スタック103が他の命令語又はトランザクションの準備をする時点は決定論的である。また、HBM+システム110は、例えば命令語又はトランザクションの発行と応答出力との間のタイミングで、ホスト装置101とHBM+スタック103との間で命令語及びデータを通信するための2段階HBM+プロトコルを含み、正規のデータ貯蔵機能及び/又はPIM機能に基づくか、或いはHBM+スタック103が他の命令語又はトランザクションの準備をする時点は非決定論的である。本明細書で使用する「準同期インターフェース(quasi−synchronous interface)」という用語は、決定論的通信及び非決定論的通信又はトランザクションの両方を経て通過するインターフェースを意味する。
1段階HBM+プロトコルは、一般的にホスト装置101が結果を待たない比較的に規則的なデータ貯蔵及び簡単なPIM動作のためのものである。即ち、命令語の発行と応答出力との間の時間又は遅延は決定論的であるから、ホスト装置101は、命令語の発行と応答出力との間に他の動作を遂行する。代案として、ホスト装置101は、決定論的遅延の終端で、正規のトランザクションを再開するようにスケジューリングされる。一般的に簡単なPIM動作には、一つ又は二つのソース及び/又は対象アドレスが含まれ、ストライド媒介変数(parameter)は含まれない。
2段階HBM+プロトコルは、一般的にホスト装置101が結果を要求する多数のソース及び/又は目的地アドレス、マトリックス動作、ストライドを含む動作のような、しかしこれに限定されないより複雑なPIM動作のためのものである。命令語の発行と応答出力との間の時間又は遅延は非決定論的であるから、ホスト装置101は、命令語の発行と応答出力との間、或いは命令語の発行とHBM+スタック103が他の命令語又はトランザクションを受信する準備ができた時点との間に他の動作を遂行する。後述の表2は、HBM+PIM命令語のカテゴリ及びタイミング推定の例を示す。
図2は、一実施形態による1段階HBM+プロトコル命令語の一例のタイミング図200である。タイミング図200は、縮尺通りではなく、単に例示的なPIM命令語に対する1段階(one−step)HBM+プロトコルの相対的なシーケンスを描写するものであることを理解すべきである。タイミング図200は、一般的に特定のバスの単方向性又は両方向性を示すために異なるバスに関連する矢印を含む。特に、左側から右側に向かう矢印は、ホスト装置101からHBM+スタック103に伝送される通信、トランザクション、又は信号を示す。一方、右側から左側に向かう矢印は、HBM+スタック103からホスト装置101に伝送される通信、トランザクション、又は信号を示す。本明細書に開示する全てのタイミング図において、HBM+内部バス111を介して発生するものとして示したトランザクション及び動作は、HBM+スタック103の外部の装置には見えない。
図2の201で、ホスト装置101はCAバス108を介してPIM_CHRG命令語を発行する。PIM_CHRG命令語は、発行されるPIM_CMDに対するバンク及びチャンネル識別情報を含む。ロジックダイ104は、PIM_CHRG命令語に応答して一つ以上の選択されたチャンネルの関連バンクをプリチャージし、一つ以上の選択されたチャンネルの関連バンクを固定(lock)して、ホスト装置101及び後続のPIM_CMDに対する関連バンクの所有権を保証する。PIM_CHRG命令語の直後に、ホスト装置101は、202でCAバス108を介してPIM_WR命令語を発行する。表1は、PIM_CHRG命令語及びPIM_WR命令語に対する例示的な物理的信号パラメータを示す。
Figure 2019053725
表1には、現在のJEDEC HBM標準に基づく一つのピンの識別例を上段に示す。「H」は高い論理電圧レベルを表し、「L」は低い論理電圧レベルを表す。「X」は「相関なし(don’t care)」の論理電圧レベルを表す。
図3は、一実施形態によるPIM_CMD命令語300のコンテンツの一例の配置を示す図である。PIM_CMDは、実際のPIM命令語を含み、CAバス108を介して伝送されるものとは対照的に、データバス109を介して伝送される。ロジックダイ104は、PIM_CMDをデコーディングし、PIM_CMD命令に含まれるPIM動作を完了するために、HBM+スタック103内部の命令語を発行する。本実施形態において、全てのPIM命令語がPIM_CMDの全てのフィールドを使用するものではないが、PIM_CMDは固定された大きさ又は長さを有する。
図3に示すように、PIM_CMD命令語300は、IDフィールド301、動作フィールド302、ストライドフィールド303、フラッグフィールド304、範囲フィールド305、値フィールド306、番号フィールド307、ソースアドレス1フィールド308、ソースアドレス2フィールド309、目的地アドレス1フィールド310、目的地アドレス2フィールド311を含む。本実施形態において、IDフィールド301は3ビットを含み、動作フィールド302は3ビットを含む。ストライドフィールド303は16ビットを含む。フラッグフィールド304は2ビットを含み、範囲フィールド305は32ビットを含む。値フィールド306は64ビットを含む。番号フィールド307は8ビットを含む。ソースアドレス1フィールド308は32ビットを含み、ソースアドレス2フィールド309は32ビットを含む。目的地アドレス1フィールド310は32ビットを含み、目的地アドレス2フィールド311は32ビットを含む。その他、追加フィールド、フィールド配列、及びフィールドの大きさが追加され得る。
再び図2を参照すると、202でCAバス108を介して伝送されたPIM_WR命令語は、203でデータバス109を介してPIM_CMDを伝送するために使用される。一実施形態において、データバス109に示すPIM_CMD命令語は、CAバス108上に示すPIM_WR命令語に後続する。他の実施形態において、データバス109上に示すPIM_CMD命令語は、CAバス108上に示すPIM_WR命令と少なくとも部分的に同時で有る。
PIM_CMDに応答して、ロジックダイ104は、PIM_CMDに含まれるPIM動作に対するソースとなるデータを判読するために、HBM+内部バス111を介して204でソースリード命令語SRC_RDを伝送する。この例において、PIM動作(OP)は205で遂行される。PIM動作の結果は、206でロジックダイ104により伝送されたDST_WR命令語を使用して目的地アドレスに記録される。207で、PIM動作は完了し、HBM+スタック103は、ホスト装置101から追加の正規動作、PIM動作、及び/又は他のトランザクションを受信する準備をする。
図2に示した1段階HBM+プロトコルのタイミングは決定論的であり、従って、202でPIM_WR命令語が発行された時点と、HBM+スタック103がホスト装置101から他の命令語及び/又はトランザクションを受信する準備ができた(即ち、正規のトランザクションを再開する)時点との間の時間をtPIM_WRで図2に示している。即ち、タイミングtPIM_WRは、HBM+スタック103内の同一のチャンネル/バンクにホスト装置101によって新たな命令語又はトランザクションが発行される前の最小時間と見なされる。1段階HBM+プロトコルのタイミングが決定論的属性であることを示すために、図2に示した多様な命令語、トランザクション、及び応答の間の矢印を実線矢印で示している。なお、後述の図5及び図7は、それぞれ異なる決定論的タイミングシナリオに対するタイミング図を示す。
図4は、一実施形態による2段階HBM+プロトコル命令語の一例の概略的タイミング図400である。タイミング図400は、縮尺通りではなく、例示的なPIM命令語に対する2段階HBM+プロトコルの相対的なシーケンスを描写するものであることを理解すべきである。図2のタイミング図200と同様に、図4に示すタイミング図400は、一般的に特定のバスの単方向性又は両方向性を示すために異なるバスに関連する矢印を含む。
描画スペースを考慮して図4には示していないが、ホスト装置101は、CAバス108を介してPIM_CHRG命令語を送り出す。1段階HBM+プロトコルと同様に、PIM_CHRG命令語はバンクを含み、PIM_CMDに対するチャンネル識別情報が直ぐに発行される。PIM_GHRG命令語に応答して、ロジックダイ104は、一つ以上の選択されたチャンネルの関連バンクをプリチャージし、HBM+スタック103の全体を固定して、ホスト装置101に対するHBM+スタック103の所有権を保証する。PIM_CHRG命令語(図示せず)の直後に、401で、ホスト装置101はCAバス108を介してPIM_WR命令語を発行する。402で、ホスト装置101はデータバス109上にPIM_CMDを発行する。
PIM_CMDに応答して、ロジックダイ104は、403でソースリード命令語(SRC_RD)をHBM+内部バス111を介して伝送し、PIM_CMDに示す動作のためのソースデータを判読する。PIM動作(OP)は404で遂行される。PIM動作の結果は、405でDST_WR命令語を使用して目的地アドレスに記録される。図4に示す例示的なタイミングに対し、406で、ロジックダイ104は、トランザクションバス110を介して判読準備命令語(RD_RDY)をホスト装置101に伝送する。407で、ホスト装置101は、CAバス108を介してリード命令語(RD)を伝送する。408で、ロジックダイ104は、リードデータ(RD_Data)を、データバス109を介して出力し、409で、ホスト装置101は、正規の動作及びトランザクションをもたらす。一部の2段階HBM+プロトコルPIM命令語に対し、判読準備命令語(RD_RDY)をホスト装置101に伝送する代わりに、ホスト装置101が中間で他の作業をスケジュールするために、ロジックダイ104は、PIM動作がいつ完了するかに対する指示をホスト装置101に伝送する。そのような指示を伝送するロジックダイ104のいくつかの例示的なシナリオは、後述の図8及び図10で説明する。
1段階HBM+プロトコルとは対照的に、2段階HBM+プロトコルは、PIM動作(OP)が一般的に2段階HBM+プロトコルに対してより複雑でありPIM動作に応じて一定ではない時間を有するために、非決定論的タイミング特性を有する。例えば、100×100行列で遂行される転置行列のPIM演算は、PIM転値演算が両方の場合で同一の演算であっても、10×10行列に対する同一の転置行列のPIM演算よりも長くかかる。2段階HBM+動作に関連するタイミングが一般的に非決定論的であることを示すために、図4の命令語と応答との間に示した矢印中の一部を太い点線の矢印で示している。例えば、401におけるPIM_WR命令語と406におけるRD_RDY応答との間の矢印と、406におけるRD_RDY応答と407におけるRD命令語との間の矢印は、2段階HBM+プロトコルの非決定論的性質を示すために太い点線矢印で示す。また、非決定論的特性を、404におけるPIM OPと405におけるDST_WR応答との間の太い点線矢印で示す。
Figure 2019053725
ホスト装置101の観点において、例えば1段階HBM+プロトコルの決定論的特性は、ホスト基盤命令語スケジューリングプロトコルを提供するものと見なされる
図5は、一実施形態によるPIM動作がHBM+装置内の単一のアドレスに向けられるか又は同一の行に向けられる1段階HBM+プロトコルPIM命令語の一例のタイミング図500である。タイミング図500は、縮尺通りではなく、単一のアドレスに向けられるか又はHBM+メモリ装置内の同一の行に向けられる例示的なPIM動作に対する1段階HBM+プロトコルの相対的なシーケンスを描写するものであることを理解すべきである。
501で、ホスト装置101は、CAバス108を介してPIM_CHRG命令語を発行する。PIM_CHRG命令語は、直ぐに発行されるPIM_CMDに対するバンク及びチャンネル識別情報を含む。PIM_CHRG命令語に応答して、ロジックダイ104は、一つ以上の選択されたチャンネルの関連バンクをプリチャージし、PIM動作中、一つ以上の選択されたチャンネルの関連バンクを固定して、ホスト装置101に対する所有権を保証する。PIM_CHRG命令語の直後に、ホスト装置101は、502でCAバス108を介してPIM_WR命令語を発行する。503で、ホスト装置101はデータバス109を介してPIM_CMDを伝送する。この例では、PIM_CMDがHBM+メモリ装置105内のメモリ位置の値を増加させる命令であると見なす。PIM_WR命令語とPIM_CMD命令語との間の時間遅延は、tWLであり、これはPIM_WR命令語を送信してPIM_CMD命令語を送信する間に待機しなければならないライト時間の遅延である。PIM_CMD命令語は、DDR(Double Data Rate) HBMメモリ装置に対してtBL/2のバースト長さの遅延を要する。
ロジックダイ104がPIM_CMDをデコーディングして504でHBM+内部バス111を介してHBM+スタック103にACT命令語を発行するまでtPDの伝播遅延が存在する。選択された行に対する活性化遅延はtRCDである。505で、ロジックダイ104は、選択されたソースデータをロードするためにリード命令語(RD)を発行する。経路520に沿って選択されたデータをリードするまでの遅延はtRLである。506で、選択されたソースデータは、tBL/2の遅延で判読される。507で、PIM動作(IOP)はtIOPの遅延で遂行される。この例で、PIM動作(IOP)は、相対的に複雑でないPIM動作であるHBM+メモリ装置105内のメモリ位置の値を増加させる。
図5の530で示す並列経路において、ロジックダイ104は、507におけるPIM命令語(IOP)の終端でデータが再びメモリに記録されるため、tRTWの遅延後、508でライト命令語(WR)を発行する。ライト命令語(WR)に関連する遅延はtWLである。本実施形態において、ロジックダイ104は、509で結果データを記録(WR_Data)するためのタイミングが正確であるように、508でライト命令語(WR)を伝送するための適切な時間を決定する。
509で、ライト命令語(WR)に応答したPIM動作(IOP)の結果は、tBL/2のバースト長さの遅延でメモリに再び記録(WR_Data)される。再びメモリに記録された結果の復旧時間遅延はtWRである。510で、ロジックダイ104は結果が記録された行に対するプリチャージ命令語(PRE)を発行し、511で、ホスト装置101が追加のトランザクション及び/又は命令語をHBM+スタック103に発行する前にtRPのプリチャージ遅延が続く。
従って、PIM動作がHBM+メモリ装置105内の単一のアドレスに向けられるか又は同一の行に向けられるこのシナリオにおいて、502でPIM_WR命令語が発行された時点と、511でホスト装置101からHBM+スタック103が他の命令語及び/又はトランザクションを受信する準備ができた時との間の時間(tPIM_WR)は、下記の数学式1の通りに決定される。
Figure 2019053725
ここで、図5に示した経路(520、530)の間の最大遅延は、tPIM_WRを定義するために使用される。経路520の遅延は(tRL+tBL/2+tIOP)である。一方、経路530の遅延は(tRTW+tWL)である。
ホスト基盤命令語スケジューリングプロトコルを提供するものと見なされるもう一つの1段階HBM+プロトコルシナリオを図6に示す。
図6は、一実施形態によるPIM動作が同一のチャンネルのバンク内で行われる1段階HBM+プロトコルPIM命令語の一例のタイミング図600である。特に、タイミング図600は、一定の縮尺ではなく、単に同一のチャンネルのバンクに向けられる例示的なPIM動作に対する1段階HBM+プロトコルの相対的なシーケンスを示すものであることを理解すべきである。
601で、ホスト装置101は、CAバス108を介してPIM_CHRG命令語を発行する。PIM_CHRG命令語は、直ぐに発行されるPIM_CMDに対するバンク及びチャネル識別情報を含む。PIM_CHRG命令語に応答して、ロジックダイ104は、一つ以上の選択されたチャンネルの関連バンクをプリチャージし、PIM動作中、一つ以上の選択されたチャンネルの関連バンクを固定して、ホスト装置101に対する所有権を保証する。PIM_CHRG命令語の直後に、ホスト装置101は、602でCAバス108を介してPIM_WR命令語を発行する。603で、ホスト装置101はデータバス109を介してPIM_CMDを伝送する。この例では、PIM_CMDが、メモリ位置Bを、位置A及びBがHBM+メモリ装置105内の同一のチャンネル内のバンク内にあるメモリ位置Aと同一になるように設定する命令語であるものと見なす。PIM_WR命令語とPIM_CMD命令語との間のライト時間遅延はtWLである。PIM_CMD命令語は、DDR HBMメモリ装置に対してtBL/2のバースト遅延を要する。
603におけるPIM_CMDに応答して、ロジックダイ104は、604でHBM+内部バス111を介してHBM+スタック103に活性化命令語(ACT1)を伝送して第1ソースデータアドレス(即ち、位置A)を活性化させる。ロジックダイ104がPIM_CMDをデコーディングして604でACT1命令語を発行するまでの伝播遅延はtPDである。
第1並列経路620において、ロジックダイ104は、605で第2ソースデータアドレス(即ち、位置B)を活性化するために活性化命令語(ACT2)を発行する。ACT1命令語の発行とACT2命令語の発行との間の遅延は、tRRD又はtRCである。PIM動作が、二つの互いに異なるバンクの間で進行する場合、遅延は(一般的に)tRRDになる(ソースと目的地アドレスが同一のバンクグループ内にある二つの互いに異なるバンクの間にある場合に遅延はtRRDLになるが、ソースと目的地アドレスが他のバンクにある二つの異なるバンクにある場合、遅延はtRRDFである。)。PIM動作が同一のバンク内にある場合、遅延はtRCになる。この並列経路620において、ロジックダイ104が、606でライト命令語(WR2)を発行する前にtRCDの遅延が存在し、またライト命令語(WR2)に後続するtWLの遅延が存在する。
第2並列経路630において、ロジックダイ104は、活性化命令語(ACT1)に応答して、607でリード命令語(RD1)を発行する。活性化命令語(ACT1)の後及びリード命令語(RD1)の前にtRCDの遅延がある。リード命令語(RD1)が発行された時間と608のリードデータ(RD_Data)の動作との間にはtRLの遅延がある。データは、608でtBL/2のバースト長さの遅延で読み出される(RD_Data)。609でPIM動作(IOP)はtIOPの遅延で遂行される。
PIM動作(IOP)で生成されたデータを記録するために、610でロジックダイ104がプリチャージ命令語(PRE1)を発行するためのリード命令語(RD1)以降、tRTW−tRCDの遅延が存在する。611で、606におけるライト命令語(WR2)に応答して、PIM動作(IOP)の結果はtBL/2の遅延でメモリに再び記録(WR_Data)される。再びメモリに記録された結果の復旧時間はtWRである。612で、ロジックダイ104は、結果を復旧するために記録された行に対するプリチャージ命令語(PRE2)を発行し、613で、ホスト装置101がHBM+スタック103に追加のトランザクション及び/又は命令語を発行する前にtRPの遅延が続く。
従って、PIM動作が同一のチャンネル内のバンクに向けられるこのようなシナリオにおいて、602でPIM_WR命令語が発行された時点と、HBM+スタック103が613でホスト装置101から他の命令語を受信する準備ができた時点との間の時間(tPIM_WR)は、下記の数学式2の通りに決定される。
Figure 2019053725
ここで、図6に示した経路(620、630)の間の最大遅延は、tPIM_WRを定義するために使用される。経路620の遅延は(tRCD+tBL/2+tIOP)である。一方、経路630の遅延は(tRRD+tRCD+tWL)である。
ホスト基盤命令語スケジューリングプロトコルを提供するものと見なされるもう一つの1段階HBM+プロトコルシナリオを図7に示す。
図7は、一実施形態によるPIM動作が異なるチャンネルを介して行われる1段階HBM+プロトコルPIM命令語の一例のタイミング図700である。特に、タイミング図700は、縮尺通りではなく、異なるチャンネルに亘る例示的なPIM動作に対する1段階HBM+プロトコルの相対的なシーケンスを示すためのものであることを理解すべきである。
701で、ホスト装置101は、CAバス108を介してPIM_CHRG命令語を発行する。PIM_CHRG命令語は、直ぐに発行されるPIM_CMDに対するバンク及びチャネル識別情報を含む。PIM_CHRG命令語に応答して、ロジックダイ104は、一つ以上の選択されたチャンネルの関連バンクをプリチャージし、PIM動作中、一つ以上の選択されたチャンネルの関連バンクを固定して、ホスト装置101に対する関連バンクの所有権を保証する。PIM_CHRG命令語の直後に、ホスト装置101は、702でCAバス108を介してPIM_WR命令語を発行する。703で、ホスト装置101はデータバス109を介してPIM_CMDを伝送する。PIM_WR命令語とPIM_CMD命令語との間の時間遅延はtWLであり、これはPIM_WR命令語を送りPIM_CMD命令語を送る間に待機しなければならない時間である。PIM_CD命令語は、DDR HBMメモリ装置に対してtBL/2のバースト長さの遅延を要する。
703におけるPIM_CMDに応答して、ロジックダイ104は、704でHBM+内部バス111を介してHBM+スタック103に活性化命令語(ACT1)を伝送する。704で、ロジックダイ104がPIM_CMDをデコーディングしてACT1命令語を発行するまでの時間の遅延はtPDである。遅延tRCD後に、ロジックダイ104は705でリード命令語(RD1)を発行する。第1並列経路720において、706でtBL/2のバースト長さの遅延でデータが判読(RD_Data)される前にtRLの遅延が存在する。707で、PIM動作(IOP)はtIOPの遅延で遂行される。PIM動作(IOP)で生成されたデータを記録するためのロジックダイ104が708でプリチャージ命令語(PRE1)を発行するために、705のリード命令語(RD1)の以降に(tRTW−tRCD)遅延が存在する。
第2並列経路730において、ロジックダイ104は、709で活性化命令語(ACT2)を発行する。PIM動作が異なるチャンネルに亘って遂行される状況において、ロジックダイ104が活性化命令語(ACT2)を発行する時点に制約はない。ロジックダイ104が、710でライト命令語(WR2)を発行する前にtRCDの遅延が存在する。711で、データが記録されるまでに(WR_Data)ライト命令語(WR2)が発行される時間の間にtWLの遅延が存在する。711で、データはtBL/2のバースト長さの遅延で記録(WR_Data)される。ロジックダイ104が、712で復旧のために結果を記録した行に対してプリチャージ命令語(PRE2)を発行する前にtWRの遅延があり、713で、ホスト装置101が追加トランザクション及び/又は命令語をHBM+スタック103に発行する前にtRPの遅延が続く。
従って、PIM動作が、他のチャンネルに亘るこのようなシナリオにおいて、702でPIM_WR命令語が発行された時点と、HBM+スタック103が713でホスト装置101から他の命令語を受信する準備ができた時点との間の時間(tPIM_WR)は、下記の数学式3に示される。
Figure 2019053725
なお、後述する図8〜図10は、PIM動作が、図5〜図7で考慮された1段階HBM+プロトコル命令語よりもより複雑な2段階HBM+プロトコルPIM命令語に対するタイミング図を示し、結果的に完了のための全体の非決定論的タイミングを有する。従って、一部の2段階HBM+プロトコルPIM命令語は、クライアント基盤命令語スケジューリングプロトコルを提供するものと見なされ、HBM+スタックは、PIM命令語が2段階HBM+プロトコルPIM命令語のうちの一部の非決定論的特徴を説明するために完了する時点を通知する。これに関して、ロジックダイ104は、複雑なPIM命令語が完了する時間をホスト装置101に通知する。
一実施形態において、有効時間の指示は時間の推定を含む。他の実施形態において、有効時間の指示はクレジット基盤の値を含む。更に他の実施形態において、有効時間の指示は、ホスト装置にPIM動作が完了したか否かを知らせるために、HBM+スタックをいつポーリングするかに対する指示が与えられる再試行基盤のフィードバックを含む。ホスト装置101に提供されるPIM命令語が完了する時間に対する指示は、自動ログの内容、履歴統計情報、計算された推定値、進行中のトラフィック、最大PIM作業範囲などに基づくか又はこれらから予測されるが、本発明は、これらに限定されるものではない。
後述する図8〜図10のタイミング図に示す2段階HBM+プロトコルPIM命令語は、図1に示したトランザクションバス110を使用しない。その代わりに、図8〜図10に示す2段階HBM+プロトコルPIM命令語は、CAバス108、データバス109、及びHBM+内部バス111を利用して、PIM命令語が完了する有効時間の表示をホスト装置101に提供する。
図8は、一実施形態によるPIM命令語が完了する時点でHBM+スタック103が推定値を提供する2段階HBM+プロトコルPIM命令語の一例のタイミング図800である。タイミング図800は、縮尺通りではなく、単にHBM+スタックが例示的なPIM動作が完了する時点で推定値を提供する場合の2段階HBM+プロトコルの相対的なシーケンスを描写するものであることを理解すべきである。
801で、ホスト装置101は、CAバス108を介してPIM_CHRG命令語を発行する。PIM_CHRG命令語は、直ぐに発行されるPIM_CMDに対するバンク及びチャンネル識別情報を含む。PIM_CHRG命令語に応答して、ロジックダイ104は、一つ以上の選択されたチャンネル内の関連バンクをプリチャージし、PIM動作中、HBM+スタック103を固定して、ホスト装置101に対するHBM+スタックの所有権を保証する。PIM_CHRG命令語の直後に、ホスト装置101は、802でCAバス108を介してPIM_WR命令語を発行する。ホスト装置101は、803でデータバス109を介してPIM_CMDを伝送する。PIM_WR命令語とPIM_CMD命令語との間の遅延はtWLである。PIM_CMD命令語は、DDR HBMメモリ装置に対してtBL/2バースト長さの遅延を要する。
803におけるPIM_CMDに応答して、ロジックダイ104は、804でHBM+スタック103にHBM+内部バス111を介して活性化命令語(ACT)を伝送する。804でロジックダイ104がPIM_CMDをデコーディングしてACT命令語を発行する時間の遅延はtPDである。遅延tRCDの後に、ロジックダイ104は805でリード命令語(RD)を発行する。806でtBL/2のバースト長さの遅延でデータが判読(RD_Data)される前にtRLの遅延が存在する。807で、PIM動作(IOP)はtIOPの遅延で遂行される。しかし、PIM演算(IOP)が複雑であるため、PIM演算(IOP)に関連する遅延は非決定論的である。
また、ロジックダイ104は、リード命令語(RD)が805で発行された後、PIM動作(IOP)が807で完了する前に808でtRTWの遅延でライト命令語(WR)を発行する。PIM動作(IOP)の結果は、808におけるライト命令語(WR)の発行後にtWLの遅延を有して809でメモリに記録(WR_Data)される。810で、ロジックダイ104はtWRの遅延を有してプリチャージ命令語(PRE)を発行する。ホスト装置101が、811でHBM+スタック103に追加のトランザクション及び/又は命令語を発行する前にtRPの遅延が続く。
タイミング図800に示したトランザクションの多くは決定論的な側面であるが、トランザクション全体の全体的なタイミングは非決定論的である。807におけるPIM動作(IOP)の非決定論的遅延を説明するために、ホスト装置101は、812でCAバス108を介してPIM_RD命令語を発行する。ロジックダイ104が、813におけるPIM_EST応答で応答する前にtRLの遅延がある。この例で、PIM_EST応答は、807におけるPIM動作(IOP)が完了する時間を示す時間推定を含む。一実施形態において、時間の推定は時間の単位である。他の実施形態において、時間の推定はクロックサイクルの単位からなる。
従って、812でPIM_RD命令語が発行された時点と、811でHBM+スタック103がホスト装置101から他の命令語を受信する準備ができた時点との間の有効時間tPIM_WR(effective)は、下記の数学式4に示される。
Figure 2019053725
ここで、tPIM_WRはPIM演算が完了するのにかかる時間の決定論的部分を示し、tPIM_ESTはPIM演算が完了するまでの時間の非決定論的部分の時間推定を示す。
図9は、一実施形態によるPIM命令語が完了する時点でHBM+スタック103がクレジット基盤の表示を提供する2段階HBM+プロトコルPIM命令語の一例のタイミング図900である。タイミング図900は、縮尺通りではなく、単にHBM+スタックが例示的なPIM動作が完了する点でクレジット基盤の表示を提供する場合の2段階HBM+プロトコルの相対的なシーケンスを描写するものであることを理解すべきである。
901で、ホスト装置101は、CAバス108を介してPIM_CHRG命令語を発行する。PIM_CHRG命令語は、直ぐに発行されるPIM_CMDに対するバンク及びチャンネル識別情報を含む。PIM_CHRG命令語に応答して、ロジックダイ104は、一つ以上の選択されたチャンネル内の関連バンクをプリチャージし、PIM動作中、HBM+スタック103を固定して、ホスト装置101に対するHBM+スタックの所有権を保証する。PIM_CHRG命令語の直後に、ホスト装置101は、902でCAバス108を介してPIM_WR命令語を発行する。ホスト装置101は、903でデータバス109を介してPIM_CMDを伝送する。PIM_WR命令語とPIM_CMD命令語との間の遅延はtWLである。PIM_CMD命令語は、DDR HBMメモリ装置に対してtBL/2のバースト長さの遅延を要する。
903におけるPIM_CMDに応答して、ロジックダイ104は、904でHBM+スタック103にHBM+内部バス111を介して活性化命令語(ACT)を伝送する。904でロジックダイ104がPIM_CMDをデコーディングしてACT命令語を発行する時間の遅延はtPDである。遅延tRCDの後に、ロジックダイ104は905でリード命令語(RD)を発行する。906でtBL/2のバースト長さの遅延でデータが判読(RD_Data)される前にtRLの遅延が存在する。907で、PIM動作(IOP)はtIOPの遅延で遂行される。しかし、PIM演算(IOP)が複雑であるため、PIM演算(OP)に関連する遅延は非決定論的である。
また、ロジックダイ104は、リード命令語(RD)が905で発行された後、PIM動作(IOP)が907で完了する前に908でtRTWの遅延でライト命令語(WR)を発行する。PIM動作(IOP)の結果は、908におけるライト命令語(WR)の発行後にtWLの遅延を有して909でメモリに記録(WR_Data)される。910で、ロジックダイ104は、tWRの遅延を有してプリチャージ命令語(PRE)を発行する。ホスト装置101が、911でHBM+スタック103に追加のトランザクション及び/又は命令語を発行する前にtRPの遅延が続く。
タイミング図900に示したトランザクションの多くは決定論的な側面であるが、トランザクション全体の全体的なタイミングは非決定論的である。907におけるPIM動作(IOP)の非決定論的遅延を説明するために、ホスト装置101は、912でCAバス108を介してPIM_RD命令語を発行する。ロジックダイ104が、913におけるPIM_CRED応答で応答する前にtRLの遅延がある。この例で、PIM_CRED応答は、ホスト装置101がスロットリング(throttling)メカニズムとして使用する多数のクレジット(credit)に関する情報を含む。例えば、PIM_CRED応答が、ホスト装置101が0より大きな整数のクレジットを有することを示す場合、ホスト装置101は、クレジットが残らなくなるまで、HBM+スタック103に命令語及び/又はトランザクションを発行し続ける。
従って、912でPIM_RD命令語が発行された時点と、911でHBM+スタック103がホスト装置101から他の命令語を受信する準備ができた時点との間の有効時間tPIM_WR(effective)は、下記の数学式5に示される。
Figure 2019053725
ここで、tPIM_WRはPIM動作が完了するのにかかる時間の決定論的部分を示し、tPIM_CREDは0よりも大きな整数のクレジットを示し、ホスト装置101がこれ以上残ったクレジットがなくなるまで、ホスト装置101は、HBM+スタック103に命令語及び/又はトランザクションを発行し続ける。
図10は、一実施形態によるPIM命令語が完了する時点でHBM+スタック103がフィードバック基盤表示を提供する2段階HBM+プロトコルPIM命令語の一例のタイミング図1000である。タイミング図1000は、縮尺通りではなく、単にHBM+スタックが例示的なPIM動作が完了する時点でフィードバック基盤表示を提供する場合の2段階HBM+プロトコルの相対的なシーケンスを描写するものであることを理解すべきである。
1001で、ホスト装置101は、CAバス108を介してPIM_CHRG命令語を発行する。PIM_CHRG命令語は、直ぐに発行されるPIM_CMDに対するバンク及びチャンネル識別情報を含む。PIM_CHRG命令語に応答して、ロジックダイ104は、一つ以上の選択されたチャンネル内の関連バンクをプリチャージし、PIM動作中、HBM+スタック103を固定して、ホスト装置101に対するHBM+スタックの所有権を保証する。PIM_CHRG命令語の直後に、ホスト装置101は、1002でCAバス108を介してPIM_WR命令語を発行する。ホスト装置101は、1003でデータバス109を介してPIM_CMDを伝送する。PIM_WR命令語とPIM_CMD命令語との間の遅延はtWLである。PIM_CMD命令語は、DDR HBMメモリ装置に対してtBL/2のバースト長さの遅延を要する。
1003におけるPIM_CMDに応答して、ロジックダイ104は、1004でHBM+スタック103にHBM+内部バス111を介して活性化命令語(ACT)を伝送する。1004で、ロジックダイ104がPIM_CMDをデコーディングしてACT命令語を発行する時間の遅延はtPDである。遅延tRCDの後に、ロジックダイ104は1005でリード命令語(RD)を発行する。1006でtBL/2のバースト長さの遅延でデータが判読(RD_Data)される前にtRLの遅延が存在する。1007で、PIM動作(IOP)はtIOPの遅延で遂行される。しかし、PIM演算(IOP)が複雑であるため、PIM演算(OP)に関連する遅延は非決定論的である。
また、ロジックダイ104は、リード命令語(RD)が1005で発行された後、PIM動作(IOP)が1007で完了する前に1008でtRTWの遅延でライト命令語(WR)を発行する。PIM動作(IOP)の結果は、1008におけるライト命令語(WR)の発行後にtWLの遅延を有して1009でメモリに記録(WR_Data)される。1010で、ロジックダイ104は、tWRの遅延を有してプリチャージ命令語(PRE)を発行する。ホスト装置101が、1011でHBM+スタック103に追加のトランザクション及び/又は命令語を発行する前にtRPの遅延が続く。
タイミング図1000に示したトランザクションの多くは決定論的な側面であるが、トランザクション全体の全体的なタイミングは非決定論的である。1007におけるPIM動作(IOP)の非決定論的遅延を説明するために、ホスト装置101は、1012でCAバス108を介してPIM_RD命令語を発行する。ロジックダイ104が、1013におけるPIM_FDBK応答で応答する前にtRLの遅延がある。この例で、PIM_FDBK応答は、PIM動作が完了したか否かを判別するために、ホスト装置101がHBM+スタック103をポーリングする前の時間周期に関する情報を含む。ホスト装置101は、フィードバック情報を使用してHBM+スタック103をポーリングするために戻る前に他の動作をスケジューリングして遂行する。
従って、1012でPIM_RD命令語が発行された時点と、1011でHBM+スタック103がホスト装置101から他の命令語を受信する準備ができた時点との間の有効時間tPIM_WR(effective)は、下記の数学式6に示される。
Figure 2019053725
ここで、tPIM_WRはPIM動作が完了するのにかかる時間の決定論的部分を示し、tPIM_FBDBKはPIM動作が完了したか否かを決定するためにホスト装置101がHBM+スタック103をポーリングするまでの時間周期に関する情報を示す。
以上、本発明の実施形態について図面を参照しながら詳細に説明したが、本発明は、上述の実施形態に限定されるものではなく、本発明の技術的範囲から逸脱しない範囲内で多様に変更実施することが可能である。
本発明は、ホスト装置とインターフェースするためのメモリにおいて決定論的処理及び非決定論的処理を可能にするシステムに有用である。
100 HBM+システム
101 ホスト装置
102 インターポーザー
103 HBM+スタック
104 ロジックダイ(論理回路)
105a〜105d HBM+メモリ装置
106 基板
107 端子
108 CA(命令語/アドレス)バス
109 データバス
110 トランザクションバス
111 HBM+内部バス
200、400、600、700、800、900、1000 タイミング図
300 PIM_CMD命令語
301 IDフィールド
302 動作フィールド
303 ストライドフィールド
304 フラッグフィールド
305 範囲フィールド
306 値フィールド
307 番号フィールド
308 ソースアドレス1フィールド
309 ソースアドレス2フィールド
310 目的地アドレス1フィールド
311 目的地アドレス2フィールド

Claims (19)

  1. 高帯域メモリ(HBM)システムであって、
    高帯域メモリ(HBM)装置と、
    ホスト装置に連結された第1インターフェース及び前記HBM装置に連結された第2インターフェースを含み、前記第1インターフェースを介して前記ホスト装置から第1命令語を受信し、前記受信された第1命令語を、前記第2インターフェースを介して前記HBM装置に伝送されるPIM(Processing−In−Memory)命令語に変換する論理回路と、を備え、
    前記第1命令語が前記ホスト装置から受信された時点と前記HBMシステムが前記ホスト装置から他の命令語を受信する準備ができた時点との間の時間は、決定論的(deterministic)であることを特徴とする高帯域メモリシステム。
  2. 前記第1命令語は、前記HBM装置内の単一のアドレスに対するPIM動作又は前記HBM装置内の同一の行の複数のアドレスに対するPIM動作のためのものであることを特徴とする請求項1に記載の高帯域メモリシステム。
  3. 前記論理回路は、前記ホスト装置から前記HBM装置内の同一のチャンネル内の一つ以上のバンク内のPIM動作のための第2命令語を更に受信し、
    前記第2命令語が前記ホスト装置から受信された時点と前記HBMシステムが前記ホスト装置から他の命令語を受信する準備ができた時点との間の時間は、決定論的であることを特徴とする請求項2に記載の高帯域メモリシステム。
  4. 前記論理回路は、前記ホスト装置から前記HBM装置内の異なるバンクに亘るPIM動作のための第3命令語を更に受信し、
    前記第3命令語が前記ホスト装置から受信された時点と前記HBMシステムが前記ホスト装置から他の命令語を受信する準備ができた時点との間の時間は、決定論的であることを特徴とする請求項3に記載の高帯域メモリシステム。
  5. 前記論理回路は、前記ホスト装置から前記HBM装置内におけるPIM動作のための第4命令語及び前記第4命令語に続く第5命令語を更に受信し、
    前記第5命令語は、前記第5命令語が前記ホスト装置から受信された時点と前記HBMシステムが前記ホスト装置から他の命令語を受信する準備ができた時点との間の時間に関する、決定論的期間及び推定期間を含む第1時間推定情報を要求することを特徴とする請求項4に記載の高帯域メモリシステム。
  6. 前記論理回路は、前記ホスト装置から前記HBM装置内におけるPIM動作のための第6命令語及び前記第6命令語に続く第7命令語を更に受信し、
    前記第7命令語は、前記第7命令語が前記ホスト装置から受信された時点と前記HBMシステムが前記ホスト装置から他の命令語を受信する準備ができた時点との間の時間に関する、決定論的期間及びクレジット基盤期間を含む第2時間推定情報を要求することを特徴とする請求項5に記載の高帯域メモリシステム。
  7. 前記論理回路は、前記ホスト装置から前記HBM装置内におけるPIM動作のための第8命令語及び前記第8命令語に続く第9命令語を更に受信し、
    前記第9命令語は、前記第9命令語が前記ホスト装置から受信された時点と前記HBMシステムが前記ホスト装置から他の命令語を受信する準備ができた時点との間の時間に関する、決定論的期間及び再試行期間を含む第3時間推定情報を要求することを特徴とする請求項6に記載の高帯域メモリシステム。
  8. 前記第1命令語は、前記HBM装置内の同一のチャンネル内の一つ以上のバンク内のPIM動作のためのものであることを特徴とする請求項1に記載の高帯域メモリシステム。
  9. 前記第1命令語は、前記HBM装置内の異なるバンクに亘るPIM動作のためのものであることを特徴とする請求項1に記載の高帯域メモリシステム。
  10. 高帯域メモリ(HBM)システムであって、
    高帯域メモリ(HBM)装置と、
    ホスト装置に連結された第1インターフェース及び前記HBM装置に連結された第2インターフェースを含み、前記第1インターフェースを介して前記ホスト装置から一つ以上の命令語を受信し、受信されたそれぞれの命令語を、前記第2インターフェースを介して前記HBM装置に伝送される少なくとも一つの対応するPIM(Processing−In−Memory)命令語に変換する論理回路と、を備え、
    前記論理回路は、前記ホスト装置から前記HBM装置内におけるPIM動作のための第1命令語及び前記第1命令語に続く第2命令語を更に受信し、
    前記第2命令語は、前記第2命令語が前記ホストから受信された時点と前記HBMシステムが前記ホスト装置から他の命令語を受信する準備ができた時点との間の時間に関する、決定論的期間及び非決定論的期間を含む第1時間推定情報を要求することを特徴とする高帯域メモリシステム。
  11. 前記非決定論的期間は、推定期間を含むことを特徴とする請求項10に記載の高帯域メモリシステム。
  12. 前記論理回路は、前記ホスト装置から前記HBM装置内におけるPIM動作のための第3命令語及び前記第3命令語に続く第4命令語を更に受信し、
    前記第4命令語は、前記第4命令語が前記ホスト装置から受信された時点と前記HBMシステムが前記ホスト装置から他の命令語を受信する準備ができた時点との間の時間に関する、決定論的期間及びクレジット基盤期間を含む第2時間推定情報を要求することを特徴とする請求項10に記載の高帯域メモリシステム。
  13. 前記論理回路は、前記ホスト装置から前記HBM装置内におけるPIM動作のための第5命令語及び前記第5命令語に続く第6命令を更に受信し、
    前記第6命令語は、前記第6命令語が前記ホスト装置から受信された時点と前記HBMシステムが前記ホスト装置から他の命令語を受信する準備ができた時点との間の時間に関する、決定論的期間及び再試行期間を含む第3時間推定情報を要求することを特徴とする請求項12に記載の高帯域メモリシステム。
  14. 前記論理回路は、前記ホスト装置から前記HBM装置内におけるPIM動作のための第7命令語を更に受信し、
    前記第7命令語が前記ホスト装置から受信された時点と前記HBMシステムが前記ホスト装置から他の命令語を受信する準備ができた時点との間の時間は、決定論的であることを特徴とする請求項13に記載の高帯域メモリシステム。
  15. 前記第7命令語は、前記HBM装置内の単一のアドレスに対するPIM動作又は前記HBM装置内の同一の行の複数のアドレスに対するPIM動作のためのものであることを特徴とする請求項14に記載の高帯域メモリシステム。
  16. 前記論理回路は、前記ホスト装置から前記HBM装置内の同一のチャンネル内の一つ以上のバンク内のPIM動作のための第8命令語を更に受信し、
    前記第8命令語が前記ホスト装置から受信された時点と前記HBMシステムが前記ホスト装置から他の命令語を受信する準備ができた時点との間の時間は、決定論的であることを特徴とする請求項15に記載の高帯域メモリシステム。
  17. 前記論理回路は、前記ホスト装置から前記HBM装置内の異なるバンクに亘るPIM動作のための第9命令語を更に受信し、
    前記第9命令語が前記ホスト装置から受信された時点と前記HBMシステムが前記ホスト装置から他の命令語を受信する準備ができた時点との間の時間は、決定論的であることを特徴とする請求項16に記載の高帯域メモリシステム。
  18. 前記非決定論的期間は、クレジット基盤期間を含むことを特徴とする請求項10に記載の高帯域メモリシステム。
  19. 前記非決定論的期間は、再試行期間を含むことを特徴とする請求項10に記載の高帯域メモリシステム。
JP2018152980A 2017-09-14 2018-08-15 高帯域メモリシステム Active JP6941082B2 (ja)

Applications Claiming Priority (8)

Application Number Priority Date Filing Date Title
US201762558732P 2017-09-14 2017-09-14
US201762558741P 2017-09-14 2017-09-14
US201762558726P 2017-09-14 2017-09-14
US62/558,726 2017-09-14
US62/558,741 2017-09-14
US62/558,732 2017-09-14
US15/821,686 2017-11-22
US15/821,686 US10908820B2 (en) 2017-09-14 2017-11-22 Host-based and client-based command scheduling in large bandwidth memory systems

Publications (3)

Publication Number Publication Date
JP2019053725A true JP2019053725A (ja) 2019-04-04
JP2019053725A5 JP2019053725A5 (ja) 2021-08-26
JP6941082B2 JP6941082B2 (ja) 2021-09-29

Family

ID=65631048

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2018152980A Active JP6941082B2 (ja) 2017-09-14 2018-08-15 高帯域メモリシステム
JP2018158187A Active JP6955478B2 (ja) 2017-09-14 2018-08-27 高帯域メモリシステム

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2018158187A Active JP6955478B2 (ja) 2017-09-14 2018-08-27 高帯域メモリシステム

Country Status (5)

Country Link
US (4) US10592121B2 (ja)
JP (2) JP6941082B2 (ja)
KR (2) KR102651892B1 (ja)
CN (2) CN109508306B (ja)
TW (2) TWI746852B (ja)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9997232B2 (en) * 2016-03-10 2018-06-12 Micron Technology, Inc. Processing in memory (PIM) capable memory device having sensing circuitry performing logic operations
FR3075444B1 (fr) * 2017-12-19 2020-07-24 Commissariat Energie Atomique Systeme comportant une memoire adaptee a mettre en oeuvre des operations de calcul
CA3117889A1 (en) 2018-11-15 2020-05-22 Quantum-Si Incorporated Methods and compositions for protein sequencing
DE102020105628A1 (de) 2019-03-11 2020-09-17 Samsung Electronics Co., Ltd. Verfahren zur Durchführung interner Verarbeitungsvorgänge mit vordefinierter Protokollschnittstelle einer Speichervorrichtung
KR20200129843A (ko) * 2019-05-10 2020-11-18 에스케이하이닉스 주식회사 연산 회로를 포함하는 메모리 장치, 이를 제어하는 메모리 컨트롤러 및 이를 포함하는 메모리 시스템
US10841645B1 (en) 2019-12-09 2020-11-17 Western Digital Technologies, Inc. Storage system and method for video frame segregation to optimize storage
US11086804B2 (en) * 2019-12-09 2021-08-10 Western Digital Technologies, Inc. Storage system and method for reducing read-retry duration
WO2021133690A1 (en) 2019-12-26 2021-07-01 Micron Technology, Inc. Host techniques for stacked memory systems
KR20220110295A (ko) 2019-12-26 2022-08-05 마이크론 테크놀로지, 인크. 적층 메모리 시스템을 위한 진리표 확장
US11422887B2 (en) * 2019-12-26 2022-08-23 Micron Technology, Inc. Techniques for non-deterministic operation of a stacked memory system
US11526435B2 (en) 2020-02-04 2022-12-13 Western Digital Technologies, Inc. Storage system and method for automatic data phasing
US11562018B2 (en) 2020-02-04 2023-01-24 Western Digital Technologies, Inc. Storage system and method for optimized surveillance search
US11328511B2 (en) 2020-03-13 2022-05-10 Western Digital Technologies, Inc. Storage system and method for improved playback analysis
KR20220067961A (ko) * 2020-11-18 2022-05-25 삼성전자주식회사 프로세싱-인-메모리 및 프로세싱-인-메모리를 이용한 인스트럭션 출력 방법
US11893278B2 (en) 2021-02-08 2024-02-06 Samsung Electronics Co., Ltd. Memory controller and memory control method for generating commands based on a memory request
US11934698B2 (en) * 2021-12-20 2024-03-19 Advanced Micro Devices, Inc. Process isolation for a processor-in-memory (“PIM”) device
US11934827B2 (en) 2021-12-20 2024-03-19 Advanced Micro Devices, Inc. Partition and isolation of a processing-in-memory (PIM) device
US20230393930A1 (en) * 2022-06-02 2023-12-07 Micron Technology, Inc. Memory sub-system addressing for data and additional data portions

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010080802A (ja) * 2008-09-29 2010-04-08 Hitachi Ltd 半導体装置
JP2011081732A (ja) * 2009-10-09 2011-04-21 Elpida Memory Inc 半導体装置及びその調整方法並びにデータ処理システム

Family Cites Families (70)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04248642A (ja) 1991-01-18 1992-09-04 Kenneth W Iobst メモリ集積回路のpimチップおよびその制御方法
US5901304A (en) 1997-03-13 1999-05-04 International Business Machines Corporation Emulating quasi-synchronous DRAM with asynchronous DRAM
US6336159B1 (en) 1997-06-25 2002-01-01 Intel Corporation Method and apparatus for transferring data in source-synchronous protocol and transferring signals in common clock protocol in multiple agent processing system
US6510503B2 (en) 1998-07-27 2003-01-21 Mosaid Technologies Incorporated High bandwidth memory interface
US6622235B1 (en) 2000-01-03 2003-09-16 Advanced Micro Devices, Inc. Scheduler which retries load/store hit situations
CA2316590A1 (en) 2000-08-23 2002-02-23 Celestica International Inc. System and method for using a synchronous device with an asynchronous memory controller
US7412553B2 (en) 2002-01-10 2008-08-12 O2Micro International Limited Enhanced protocol conversion system capable of providing offloaded protocol instruction processing
US7296112B1 (en) 2002-12-10 2007-11-13 Greenfield Networks, Inc. High bandwidth memory management using multi-bank DRAM devices
JP4383148B2 (ja) 2003-11-25 2009-12-16 株式会社日立製作所 処理オフロード機能モジュールを備えた磁気ディスクアレイ装置
US7363406B2 (en) 2004-12-08 2008-04-22 Motorola, Inc. Dynamic access scheduling memory controller
US9542352B2 (en) 2006-02-09 2017-01-10 Google Inc. System and method for reducing command scheduling constraints of memory circuits
US8386722B1 (en) * 2008-06-23 2013-02-26 Google Inc. Stacked DIMM memory interface
DE112007000101C9 (de) 2006-05-29 2017-08-10 Certgate Gmbh Verfahren zur Kommunikation mit einer Multifunktionsspeicherkarte
US20080001271A1 (en) 2006-06-30 2008-01-03 Sony Ericsson Mobile Communications Ab Flipped, stacked-chip IC packaging for high bandwidth data transfer buses
US8117415B2 (en) * 2006-09-18 2012-02-14 Sandisk Il Ltd. Storage device estimating a completion time for a storage operation
US20080162855A1 (en) 2006-12-29 2008-07-03 Tessil Thomas Memory Command Issue Rate Controller
US7865660B2 (en) 2007-04-16 2011-01-04 Montage Technology Group Ltd. Calibration of read/write memory access via advanced memory buffer
US8024511B2 (en) 2007-08-31 2011-09-20 Siemens Industry, Inc. Systems, devices, and/or methods to access synchronous RAM in an asynchronous manner
US8042082B2 (en) 2007-09-12 2011-10-18 Neal Solomon Three dimensional memory in a system on a chip
US7921272B2 (en) 2007-10-05 2011-04-05 International Business Machines Corporation Monitoring patterns of processes accessing addresses in a storage device to determine access parameters to apply
US7747803B2 (en) * 2007-11-28 2010-06-29 International Business Machines Corporation Device, system, and method of handling delayed transactions
US7855931B2 (en) * 2008-07-21 2010-12-21 Micron Technology, Inc. Memory system and method using stacked memory device dice, and system using the memory system
US8289760B2 (en) * 2008-07-02 2012-10-16 Micron Technology, Inc. Multi-mode memory device and method having stacked memory dice, a logic die and a command processing circuit and operating in direct and indirect modes
JP2010146252A (ja) * 2008-12-18 2010-07-01 Nec Engineering Ltd Ddrメモリコントローラ
US8576714B2 (en) * 2009-05-29 2013-11-05 Futurewei Technologies, Inc. System and method for relay node flow control in a wireless communications system
US8473695B2 (en) 2011-03-31 2013-06-25 Mosys, Inc. Memory system including variable write command scheduling
US8819687B2 (en) 2010-05-07 2014-08-26 Advanced Micro Devices, Inc. Scheduling for multiple memory controllers
US9251873B1 (en) 2010-05-20 2016-02-02 Kandou Labs, S.A. Methods and systems for pin-efficient memory controller interface using vector signaling codes for chip-to-chip communications
US8683148B2 (en) * 2010-06-30 2014-03-25 Sandisk Il Ltd. Status indication when a maintenance operation is to be performed at a memory device
US8314807B2 (en) 2010-09-16 2012-11-20 Apple Inc. Memory controller with QoS-aware scheduling
US8321627B1 (en) 2011-10-06 2012-11-27 Google Inc. Memory operation command latency management
US8694698B2 (en) 2012-04-12 2014-04-08 Hitachi, Ltd. Storage system and method for prioritizing data transfer access
KR101975534B1 (ko) * 2012-09-11 2019-05-07 삼성전자주식회사 연산기능을 갖는 반도체 메모리 장치
US9201777B2 (en) 2012-12-23 2015-12-01 Advanced Micro Devices, Inc. Quality of service support using stacked memory device with logic die
US9734097B2 (en) * 2013-03-15 2017-08-15 Micron Technology, Inc. Apparatuses and methods for variable latency memory operations
KR101670917B1 (ko) * 2013-03-15 2016-11-01 인텔 코포레이션 메모리 시스템
EP3005128B1 (en) 2013-05-30 2018-07-04 Hewlett-Packard Enterprise Development LP Separate memory controllers to access data in memory
KR102094902B1 (ko) * 2013-07-08 2020-03-30 삼성전자주식회사 액티브 상태에서 인터페이스 모드를 전환하는 스토리지 시스템 및 ufs 시스템
US9535831B2 (en) 2014-01-10 2017-01-03 Advanced Micro Devices, Inc. Page migration in a 3D stacked hybrid memory
US20150270015A1 (en) 2014-03-19 2015-09-24 Micron Technology, Inc. Memory mapping
US9733847B2 (en) 2014-06-02 2017-08-15 Micron Technology, Inc. Systems and methods for transmitting packets in a scalable memory system protocol
US9436397B2 (en) * 2014-09-23 2016-09-06 Sandisk Technologies Llc. Validating the status of memory operations
US9836277B2 (en) * 2014-10-01 2017-12-05 Samsung Electronics Co., Ltd. In-memory popcount support for real time analytics
KR20160063726A (ko) * 2014-11-27 2016-06-07 에스케이하이닉스 주식회사 메모리 장치 및 이를 포함하는 메모리 시스템
KR101782501B1 (ko) * 2014-12-10 2017-09-27 주식회사 엘지화학 고흡수성 수지의 제조 방법
US20160210174A1 (en) 2015-01-15 2016-07-21 Microsoft Corporation Hybrid Scheduler and Power Manager
WO2016118624A1 (en) 2015-01-20 2016-07-28 Ultrata Llc Object memory instruction set
US10248347B2 (en) * 2015-04-08 2019-04-02 Tintri By Ddn, Inc. Auto allocation of storage system resources to heterogeneous categories of resource consumer
US9443561B1 (en) 2015-05-21 2016-09-13 Advanced Micro Devices, Inc. Ring networks for intra- and inter-memory I/O including 3D-stacked memories
US10540588B2 (en) 2015-06-29 2020-01-21 Microsoft Technology Licensing, Llc Deep neural network processing on hardware accelerators with stacked memory
US20160379686A1 (en) 2015-06-29 2016-12-29 Microsoft Technology Licensing, Llc Server systems with hardware accelerators including stacked memory
US9633748B2 (en) 2015-08-17 2017-04-25 Micron Technology, Inc. Multi-channel testing
US9818458B1 (en) 2015-09-23 2017-11-14 Intel Corporation Techniques for entry to a lower power state for a memory device
FR3042049A1 (ja) * 2015-10-01 2017-04-07 Upmem
US10860323B2 (en) 2015-10-16 2020-12-08 Samsung Electronics Co., Ltd. Method and apparatus for processing instructions using processing-in-memory
US10528613B2 (en) 2015-11-23 2020-01-07 Advanced Micro Devices, Inc. Method and apparatus for performing a parallel search operation
EP3400688B1 (en) 2016-01-04 2020-05-20 Gray Research LLC Massively parallel computer, accelerated computing clusters, and two dimensional router and interconnection network for field programmable gate arrays, and applications
US20170206033A1 (en) * 2016-01-19 2017-07-20 SK Hynix Inc. Mechanism enabling the use of slow memory to achieve byte addressability and near-dram performance with page remapping scheme
KR101735590B1 (ko) * 2016-01-22 2017-05-15 한양대학교 산학협력단 트랜잭션 추출 장치 및 방법
US11079936B2 (en) * 2016-03-01 2021-08-03 Samsung Electronics Co., Ltd. 3-D stacked memory with reconfigurable compute logic
US10430244B2 (en) 2016-03-28 2019-10-01 Micron Technology, Inc. Apparatuses and methods to determine timing of operations
US20170289850A1 (en) 2016-04-01 2017-10-05 Intel Corporation Write delivery for memory subsystem with narrow bandwidth repeater channel
US10453502B2 (en) 2016-04-04 2019-10-22 Micron Technology, Inc. Memory bank power coordination including concurrently performing a memory operation in a selected number of memory regions
US10083722B2 (en) * 2016-06-08 2018-09-25 Samsung Electronics Co., Ltd. Memory device for performing internal process and operating method thereof
US10416896B2 (en) * 2016-10-14 2019-09-17 Samsung Electronics Co., Ltd. Memory module, memory device, and processing device having a processor mode, and memory system
US10268389B2 (en) * 2017-02-22 2019-04-23 Micron Technology, Inc. Apparatuses and methods for in-memory operations
US10169261B1 (en) 2017-08-29 2019-01-01 International Business Machines Corporation Address layout over physical memory
US10416927B2 (en) * 2017-08-31 2019-09-17 Micron Technology, Inc. Processing in memory
US10346092B2 (en) * 2017-08-31 2019-07-09 Micron Technology, Inc. Apparatuses and methods for in-memory operations using timing circuitry
US10741239B2 (en) 2017-08-31 2020-08-11 Micron Technology, Inc. Processing in memory device including a row address strobe manager

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010080802A (ja) * 2008-09-29 2010-04-08 Hitachi Ltd 半導体装置
JP2011081732A (ja) * 2009-10-09 2011-04-21 Elpida Memory Inc 半導体装置及びその調整方法並びにデータ処理システム

Also Published As

Publication number Publication date
KR102412987B1 (ko) 2022-06-24
JP6955478B2 (ja) 2021-10-27
KR20190030586A (ko) 2019-03-22
TWI746852B (zh) 2021-11-21
US10592121B2 (en) 2020-03-17
US20210117103A1 (en) 2021-04-22
US10908820B2 (en) 2021-02-02
CN109508306A (zh) 2019-03-22
US20190079678A1 (en) 2019-03-14
US20200174676A1 (en) 2020-06-04
KR102651892B1 (ko) 2024-03-28
JP6941082B2 (ja) 2021-09-29
KR20190030578A (ko) 2019-03-22
TWI761520B (zh) 2022-04-21
US11893239B2 (en) 2024-02-06
CN109508306B (zh) 2023-11-10
US20190079677A1 (en) 2019-03-14
JP2019053726A (ja) 2019-04-04
TW201915732A (zh) 2019-04-16
CN109508307B (zh) 2024-01-05
CN109508307A (zh) 2019-03-22
TW201915759A (zh) 2019-04-16

Similar Documents

Publication Publication Date Title
JP6941082B2 (ja) 高帯域メモリシステム
US7155554B2 (en) Methods and apparatuses for generating a single request for block transactions over a communication fabric
US9343127B1 (en) Memory device having an adaptable number of open rows
US5721860A (en) Memory controller for independently supporting synchronous and asynchronous DRAM memories
CN104599227B (zh) 用于高速ccd数据存储的ddr3仲裁控制器及方法
US8412870B2 (en) Optimized arbiter using multi-level arbitration
CN103377695A (zh) 存储系统、存储器件、存储控制器及操作其的方法
CN108701099B (zh) 用于存储器系统的功率节省技术
TW200811650A (en) Memory device with speculative commands to memory core
US7277975B2 (en) Methods and apparatuses for decoupling a request from one or more solicited responses
US7899940B2 (en) Servicing commands
US7644248B2 (en) Mechanism to generate logically dedicated read and write channels in a memory controller
JP2021507414A (ja) 連動メモリデバイスに対するメモリ要求のスケジューリング
CN117099075A (zh) 针对长突发长度的存储器数据传送的双倍取得
US7865645B2 (en) Bus arbiter, bus device and system for granting successive requests by a master without rearbitration
Gupta et al. Design and implementation of high performance advanced extensible interface (AXI) based DDR3 memory controller
EP3907624A1 (en) Memory and storage controller with integrated memory coherency interconnect
CN102279801A (zh) 存储器共享系统及方法
US20230333928A1 (en) Storage and access of metadata within selective dynamic random access memory (dram) devices
US20230017161A1 (en) Method and apparatus to perform training on a data bus between a dynamic random access memory (dram) and a data buffer on a buffered dual in-line memory module
US20240079036A1 (en) Standalone Mode
US20230214669A1 (en) Hybrid search to train memory and high-speed input/output interfaces
US20220190844A1 (en) Method and apparatus to perform cyclic redundancy check training in a memory module
WO2023154596A1 (en) Memory system with adaptive refresh

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210714

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210714

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20210714

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: 20210810

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210903

R150 Certificate of patent or registration of utility model

Ref document number: 6941082

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150