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

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

Info

Publication number
JP2019053726A
JP2019053726A JP2018158187A JP2018158187A JP2019053726A JP 2019053726 A JP2019053726 A JP 2019053726A JP 2018158187 A JP2018158187 A JP 2018158187A JP 2018158187 A JP2018158187 A JP 2018158187A JP 2019053726 A JP2019053726 A JP 2019053726A
Authority
JP
Japan
Prior art keywords
pim
hbm
host device
command
word
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
JP2018158187A
Other languages
English (en)
Other versions
JP6955478B2 (ja
JP2019053726A5 (ja
Inventor
ティ. マラディ クリシュナ
T Malladi Krishna
ティ. マラディ クリシュナ
宏 忠 ツェン
Hongzhong Zheng
宏 忠 ツェン
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 JP2019053726A publication Critical patent/JP2019053726A/ja
Publication of JP2019053726A5 publication Critical patent/JP2019053726A5/ja
Application granted granted Critical
Publication of JP6955478B2 publication Critical patent/JP6955478B2/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/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
    • 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/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)
  • General Physics & Mathematics (AREA)
  • 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)システム100は、HBM装置105a〜105dと、ホスト装置101に接続される第1インターフェース108〜110と、HBM装置に接続される第2インターフェース111と、を含む論理回路104と、を有する。論理回路は、ホスト装置から第1命令語を受信し、第1PIM(Processing−In−Memory)命令語に変換し、第2インターフェースを介してHBM装置に伝送する。第1PIM命令語は、完了のための決定性の遅延を有する。論理回路は、ホスト装置から第2命令語をさらに受信し、第2PIM命令語に変換し、第2インターフェースを介してHBM装置に伝送する。第2PIM命令語は、完了のための非決定性の遅延を有する。【選択図】図1

Description

本発明は、高帯域メモリ(HBM)システムに関し、特に、ホスト装置とインターフェースするために、メモリ動作において決定性(deterministic)及び非決定性(non−deterministic)処理を可能にする高帯域メモリシステムに関する。
ディープ神経網(Deep Neural Net)のような新しい応用プログラムは、膨大な計算及びメモリ機能を使用して、他のデータセットを学習し、高い正確度で学習する。
しかしながら、高性能コンピューティング(HPC)、グラフィックアルゴリズムなどのような応用プログラムが、データ及び演算集約的に変わるにつれてエネルギーの効率性と低遅延が重要な特性となり、これらを向上させることが課題となっている。
プロセシングインメモリ(Processing In Memory:PIM)は、DRAMロジックダイ(logic dies)の複雑な作業をスケジューリングして、低電力技術プロセスでデータが配置されている場所のより近くに付加的なコンピューティング機能を提供することによって、上記のような問題を解決する能力を備えている。
米国特許第5901304号明細書 米国特許第6763443号明細書 米国特許第7412553号明細書 米国特許出願公開第2005/0114557号明細書 米国特許出願公開第2009/0063760号明細書
本発明は上記従来の高帯域メモリシステムにおける課題に鑑みてなされたものであって、本発明の目的は、ホスト装置とインターフェースするために、メモリ動作において決定性及び非決定性処理を可能にする高帯域メモリシステムを提供することにある。
上記目的を達成するためになされた本発明による高帯域メモリシステムは、高帯域メモリ(High−Bandwidth Memory:以下、HBM)システムにおいて、高帯域メモリ(HBM)装置と、ホスト装置に接続される第1インターフェースと、前記HBM装置に接続される第2インターフェースと、を含む論理回路と、を有し、前記論理回路は、前記第1インターフェースを介して前記ホスト装置から第1命令語を受信し、前記受信した第1命令語を前記第2インターフェースを介して前記HBM装置に伝送する第1PIM(Processing−In−Memory)命令語に変換し、前記第1PIM命令語は、完了のための決定性の遅延(deterministic latency for completion)を有し、前記論理回路は、前記ホスト装置から前記第1インターフェースを介して第2命令語をさらに受信し、前記第2インターフェースを介して前記HBM装置に伝送する第2PIM命令語に前記受信した第2命令語を変換し、前記第2PIM命令語は、完了のための非決定性の遅延を有することを特徴とする。
また、上記目的を達成するためになされた本発明による高帯域メモリシステムは、高帯域メモリ(High−Bandwidth Memory:以下、HBM)システムにおいて、高帯域メモリ(HBM)装置と、ホスト装置と接続される命令語/アドレスバスと、前記ホスト装置と接続されるデータバスと、を含む第1インターフェースと、前記HBM装置と接続される第2インターフェースと、前記ホスト装置と接続されるトランザクションバスを含む論理回路とを有し、前記論理回路は、前記第1インターフェースを介して前記ホスト装置から第1命令語を受信し、前記受信した第1命令語を前記第2インターフェースを介して前記HBM装置に伝送する第1PIM(Processing−In−Memory)命令語に変換し、前記第1PIM命令語は、完了のための非決定性の遅延(non−deterministic latency for completion)を有し、前記論理回路は、前記第1PIM命令語が完了した時、前記トランザクションバスを介して前記ホスト装置に指示を伝送することを特徴とする。
また、上記目的を達成するためになされた本発明による高帯域メモリシステムは、高帯域メモリ(HBM)システムにおいて、プロセシングインメモリ(PIM)機能を有する高帯域メモリ装置と、ホスト装置と接続される命令語/アドレスバスと、前記ホスト装置と接続されるデータバスと、を含む第1インターフェースと、前記HBM装置と接続される第2インターフェースと、ホスト装置と接続されるトランザクションバスを含む論理回路と、を有し、前記論理回路は、前記第1インターフェースを介して前記ホスト装置から第1命令語を受信し、前記受信した第1命令語をプロセシングインメモリ(PIM)処理のために、前記第2インターフェースを介して前記HBM装置に伝送する第1命令語に変換し、前記第1命令語は完了のための決定性の遅延を有し、前記論理回路は、前記第1インターフェースを介して前記ホスト装置から第2命令語をさらに受信し、前記受信した第2命令語をプロセシングインメモリ(PIM)処理のために、前記第2インターフェースを介して前記HBM装置に伝送する第2命令語に変換し、 前記第2命令語は、完了のための非決定性の遅延を有することを特徴とする。
本発明に係る高帯域メモリシステムによれば、ホスト装置とインターフェースするためのメモリ動作において決定的及び非決定的処理を可能にするシステム及びプロトコルを具現し得る。
本発明の一実施形態によるHBM+システムの例示的実施例の一部を示す断面図である。 本発明の一実施形態による例示的な1段階(one−step)HBM+プロトコル命令語に対するタイミング図である。 本発明の一実施形態による「PIM_CMD」命令語の内容の例示的な配置を示す図である。 本発明の一実施形態による例示的な1段階HBM+プロトコル命令語に対する概略的なタイミング図である。 本発明の一実施形態によるPIM動作が、単一のアドレスに指向したり、HBM+装置において同一の行に指向したりする例示的な1段階HBM+プロトコルPIM命令語に対するタイミング図である。 本発明の一実施形態によるPIM動作が同一のチャンネルのバンク内にある、HBM+プロトコルPIM命令語の一例を示すタイミング図である。 本発明の一実施形態によるPIM動作が異なるチャンネルを横断するHBM+プロトコルPIM命令語の一例を示すタイミング図である。 本発明の一実施形態によるPIM命令語が完了されるまでにHBM+スタックが時間の推定値を提供する例示的なステップHBM+プロトコルPIM命令語に対するタイミング図である。 HBM+スタックが、本発明の一実施形態によるPIM命令語が完了する時のための信用ベースの指示を提供する例示的な2段階HBM+プロトコルPIM命令語に対するタイミング図である。 HBM+スタックが、本発明の一実施形態によるPIM命令語が完了する時のためのフィードバックベースの指示を提供する例示的な2段階HBM+プロトコルPIM命令語に対するタイミング図である。
次に、本発明に係る高帯域メモリシステムを実施するための形態の具体例を図面を参照しながら説明する。
本明細書の全体にわたって「実施形態」、「一実施例」又は「実施例」は、実施形態と関連して説明する特定の特徴、構造又は特性が本明細書で開示する少なくとも一つの実施例に含まれることができるというのを意味する。
従って、本発明の全体にわたって「実施形態」、「一実施例において」又は「実施例において」又は「一実施例によって」(又は類似の輸入物を有する他の句)という表現は、全てが必ずしも同一の実施例を示すことではない。
なお、特定のフィーチャー(feature)、構造又は特性は、一つ以上の実施例において任意の適した方式に接続されている。
これと関連して、本明細書に使用するように、「例示的な」という単語は、「例示、実例又は例示を提供する」というのを意味する。
「例示的な」ものとして本明細書に記載された任意の実施例は、必ずしも他の実施例より好ましいか、且つ、有利なものと解釈されてはならない。
また、ここで論議の文脈によって、単数は対応する複数の形態を含むことができ、複数の用語は相応する単数の形態を含む。
本明細書に示し論議する多様な図面(構成要素も含む)は、ただ例示的な目的のためのものであり、一定の比率で描かれるものではない。
同様に、多様な波形及びタイミング図が、ただ例示的な目的のために示される。
例えば、一部要素の寸法は、明確性のために他の要素に比して誇張され得る。なお、適切なものと考慮される場合、参照符号は、相応する及び/又は類似の要素を示すために図面の間で繰り返された。
本明細書において使用する用語は、ただ特定の例示的な実施例を説明するためのものであり、請求の趣旨を限定するためのものではない。
本願において使用した単数の形態は、文脈上、別に指示しない限り、複数の形態を含み得る。
本明細書において使用する「〜含む。」及び/又は「含む〜」という用語は、明示された特徴、整数、段階、動作、構成要素及び/又は構成要素の存在を示すが、存在を排除しないというのがもっと理解されるはずである。
又は、一つ以上の他の特徴、整数、段階、動作、要素、構成要素及び/又はグループの追加を含むことができる。ここに使用された「第一番目」、「第二番目」などの用語は、前に明示された名詞のラベルとして使用され、明示的に定義されない限り、全ての類型の順序(例:空間的、時間的、論理的など)を暗示しない。
なお、同一且つ同様の機能を有する部品(parts)、コンポーネント(components)、ブロック、回路、ユニット又はモジュールを示すために二つ以上の図面にわたって同一の参照番号が使用され得る。
しかしながら、このような使用法は、説明の簡素化及び論議の容易さのためだけに使用される。このような構成要素又はユニットの構成又は構造的細部事項が、全ての実施例にわたって同一であるというのを意味しないか、又は共通して参照された部品/モジュールが、本明細書に開示された特徴の実施例の教示を具現する唯一の方法であるのを意味しない。
別に定義されない限り、本明細書に使用された全ての用語(技術用語及び科学用語を含む)は、この主題が属する技術の分野における当業者が一般的に理解するものと同一の意味を有する。
なお、一般的に使用される辞書にて定義された用語のような一の用語は、関連技術の脈絡における意味と一致する意味を有するものと解釈されるべきであり、理想的な又は過度に形式的な意味として解釈されない限り、明示的にここに定義される。
明細書に開示した主題は、高帯域PIM(HBM+)システムのための準同期インターフェースプロトコルに関するものである。
すなわち、本明細書に開示した主題は、((High−Bandwidth Memory)HBM+システムとホスト装置との間のインターフェースとして、決定性の遅延((deterministic latency)及び非決定性の遅延(non−deterministic latency)を全て含むので、従って、準同期式(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+メモリ装置(105a〜105d)は、チャンネル当たり、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との間を電気的に接続する命令語/アドレス(command/address:以下、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は、命令語又はトランザクションの発行とHBM+スタック103の出力との間のタイミングが要求される場合に対し、ホスト装置101とHBMの+正規データ格納機能及び/又はPIM機能に基づいて、又はHBM+スタック103が他の命令語又はトランザクションのために準備される時、応答は決定性である。
HBM+システム100は、また、命令語又はトランザクションの発行と応答の出力との間のタイミング、例えば、ホスト装置101とHBM+スタック103の正規データ格納機能及び/又はPIM機能に基づくか、又はHBM+スタック103が他の命令語又はトランザクションを準備する時、非決定性であり得る。
本明細書において使用される用語の「準同期インターフェース(quasi−synchronous interface)」は、決定性の通信及び非決定性の通信又はトランザクションが経て通過するインターフェースを意味する。
1段階HBM+プロトコルは、一般的にホスト装置101が結果を待たない比較的に規則的なデータ格納及び簡単なPIM動作のためのものである。
即ち、命令語の発行と応答の出力との間の時間又は遅延は、決定性であるから、ホスト装置101は、命令語の発行と応答の出力との間に他の動作を遂行し得る。
代案として、ホスト装置101は、決定性の遅延の後で、正規(レギュラー)トランザクションを再開するようにスケジューリングされ得る。
一般的に簡単なPIM動作には、一つ又は二つのソース及び/又は対象アドレスが含まれ、ストライド媒介変数は含まれない。
2段階HBM+プロトコルは、一般的にホスト装置101が結果を要求する複数のソース及び/又は目的地アドレス、マトリックス動作、ストライドを含む動作のような、しかし、これに限定されないもっと複雑なPIM動作のためのものである。
コマンドの発行と応答の出力との間の時間又は遅延は非決定性であるから、ホスト装置101は、命令語の発行と応答の出力との間、又は命令語の発行とHBM+スタック103が他の命令語又はトランザクションを受信する準備ができた時との間に他の動作を遂行し得る。
後段に示す表2は、HBM_+PIM命令語のカテゴリ及びタイミング推定の例を示すものである。
図2は、本発明の一実施形態による例示的な1段階HBM+プロトコル命令語を概略的に示すタイミング図である。
タイミング図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」命令語に応答して、一つ以上の選択されたチャンネルの関連バンクをプリチャージし、ホスト装置101と後続する「PIM_CMD」に対する関連バンクの所有権を保障するために一つ以上の選択されたチャンネルの関連バンクをロックする。
「PIM_CHRG命令語」の直ぐ次に、ホスト装置101は、202においてCAバス108を介して「PIM_WR」命令語を発行する。
下記に示す表1は、「PIM_CHRG」命令語及び「PIM_WR」命令語に対する例示的な物理的信号パラメータを示す。
Figure 2019053726
表1には、現在JEDEC HBM標準に基づいた一つのピンの識別例が上段に指示されている。
「H」は高い論理電圧レベルを表し、「L」は低い論理電圧レベルを表す。「X」は「相関なし(don’t care)」の論理電圧レベルを表す。
図3は、本発明の一実施形態による「PIM_CMD」命令語のコンテンツの例示的な配置を示す図である。
「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は、本発明の一実施形態による例示的な1段階HBM+プロトコル命令語に対する概略タイミング図である。
タイミング図400は、スケーリングされず、例示的なPIM命令語に対する2段階HBM+プロトコルの相対的なシーケンスを描写するためのものであるのを理解すべきである。
図2のタイミング図200と同様に、図4に示すように、タイミング図400は、一般的に特定のバスの単方向又は両方向の特性を示すために異なるバスと関連された矢印を含む。
空間に対する考慮事項が反映されない図4に示すように、ホスト装置101は、CAバス108を介して「PIM_CHRG」命令語を送り出す。
1段階HBM+プロトコルと同様に、「PIM_CHRG」命令語はバンクを含み、「PIM_CMD」に対するチャンネル識別情報が直ぐに発行される。
「PIM_CHRG」命令語に応答して、ロジックダイ104は、一つ以上の選択されたチャンネルで関連バンクをプリチャージし、ホスト装置101に対するHBM+スタック103の所有権を保証するように全体の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動作がいつ完了され得るかに対する指示(indication)をホスト装置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 2019053726
ホスト装置101からの観点において、1段階HBM+プロトコルの決定性の特性は、ホストベースの命令語スケジューリングプロトコルを提供するものと見なすことができる。
例えば、図5は、本発明の一実施形態によるPIM動作が単一のアドレスに指向したり、HBM+装置において同一の行に指向したりする例示的な1段階HBM+プロトコルPIM命令語に対するタイミング図である。
タイミング図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でメモリロケーション(memory location)の値を増加させる命令であると見なす。
「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)の遅延で判読される(「RD_Data」)。
507において、PIM動作「IOP」は(tIOP)の遅延で遂行される。
この例において、PIM動作「IOP」は、相対的に複雑ではないPIM動作であるHBM+装置104内のメモリロケーションの値を増加させるのである。
図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+装置において同一の行に向けるこのシナリオで、502において「PIM_WR」命令語が発行される時と、511においてホスト装置101からHBM+スタック103が他の命令語及び/又はトランザクションを受信する準備ができる時との間の時間(tPIM_WR)は、下記に示す数式1のように決定される。
Figure 2019053726
ここで、図5に示した経路520、530の間の最大遅延は、(tPIM_WR)を定義するのに使用される。
経路520の遅延は(tRL+tBL/2+tIOP)である一方、経路530の遅延は(tRTW+tWL)である。
ホストベース命令語スケジューリングプロトコルを提供するものと見なすことができるもう一つの1段階HBM+プロトコルシナリオを、図6に示す。
特に、図6は、本発明の一実施形態によるPIM動作が同一のチャンネルのバンク内にある例示的な1段階HBM+プロトコルPIM命令語に対するタイミング図である。
タイミング図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_WR」命令語は、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)の遅延が存在し、(tWL)のライト命令語「WR2」に後続する遅延がまた存在するはずである。
第2並列経路630において、ロジックダイ104は活性化命令語「ACT1」に応答して、607においてリード命令語「RD1」を発行する。
活性化命令語「ACT1」の以後、及びリード命令語「RD1」の以前に(tRCD)の遅延がある。
リード命令語「RD1」が発行された時間と608でのリードデータ「RD_DATA」の動作との間には、(tRL)の遅延がある。
データは、608において(tBL/2)のバースト長さの遅延で読み出される。
609において、PIM動作「IOP」は、(tIOP)の遅延で実行される。
PIM動作「IOP」から生成されたデータを記録するため、610においてロジックダイ104がプリチャージ命令語「PRE1」を発行するためのリード命令語「RD1」以降、(tRTW−tRCD)の遅延が存在する。
611において、ライト命令語「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 2019053726
ここで、図6に示した経路620、630の間の最大遅延は、(tPIM_WR)を定義するのに使用される。
経路620の遅延は(tRCD+tBL/2+tIOP)である一方、経路630の遅延は(tRRD+tRCD+tWL)である。
ホストベース命令語スケジューリングプロトコルを提供するものと見なすことができる、もう一つの1段階HBM+プロトコルシナリオを、図7に示す。
特に、図7は、本発明の一実施形態によるPIM動作が異なるチャンネルを介して行われる例示的な1段階HBM+プロトコルPIM命令語に対するタイミング図である。
タイミング図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において、ライト命令語「WR2」が発行されてからデータが「WR_Data」で記録されるまでの時間の間に(tWL)の遅延が存在する。
711において、データは(tBL/2)のバースト長さの遅延で記録される(「WR_Data」)。
ロジックダイ104が、712において復旧のために結果を記録した行に対し、プリチャージ命令語「PRE2」を発行する前に(tWR)の遅延があり、713においてホスト装置101が、追加トランザクション及び/又は命令語をHBM+スタック103に発行する前に(tRP)の遅延が続く。
従って、PIM動作が、他のチャンネルにかけられているこのようなシナリオにおいて、「PIM_WR」命令語が702において発行される時と、HBM+スタック103がホスト装置101から他のコマンドを受信する準備ができた時との間の時間(tPIM_WR)は、下記に示す数式3のように表すことができる。
Figure 2019053726
図8〜図10は、本発明の一実施形態によるPIM動作が、図5〜図7において考慮された1段階HBM+プロトコル命令語よりもっと複雑な2段階HBM+プロトコルPIM命令語に対するタイミング図であり、結果的に完了のための全体の非決定性のタイミングを有することになる。
従って、一部の2段階HBM+プロトコルPIM命令語は、クライアントベースの命令語スケジューリングプロトコルを提供するものと見なすことができ、HBM+スタックは、2段階HBM+プロトコルPIM命令語の内の一部の非決定性の特徴を説明するためにPIM命令語がいつ完了するかの指示(indication)を提供することができる。
これに関連して、ロジックダイ104は、複雑なPIM命令語が完了する時間をホスト装置101に示す指示を提供することができる。
一実施形態において、有効時間の指示は、時間の推定を含むことができる。
他の実施形態において、有効時間の指示は、信用ベースの値を含むことができる。
さらに他の実施形態において、有効時間の指示は、PIM動作が完了したか否かを見るために、ホスト装置101にHBM+スタックをいつポーリングするかに対する指示が与えられる再試行ベースのフィードバックを含むことができる。
ホスト装置101に提供されるPIM命令語が完了する時間に対する指示は、自動ログの内容、履歴統計情報、計算された推定値、進行中のトラフィック及び/又は最大PIM作業範囲などに基づいたり、これらから予測したりすることができるが、本発明は、これらに限定されるものではない。
後続する図8〜図10のタイミング図に示す2段階HBM+プロトコルPIM命令語は、図1に示したトランザクションバス110を使用しない。
その代わりに、図8〜図10に示す2段階HBM+プロトコルPIM命令語は、CAバス108、データバス109、及びHBM+内部バス111を利用して、PIM命令語が完了する有効時間の指示をホスト装置101に提供する。
図8は、HBM+スタック103が、本発明の一実施形態によるPIM命令語が完了する時のための推定値を提供する、例示的な2段階HBM+プロトコルPIM命令語に対するタイミング図である。
タイミング図800は、スケーリングされず、ただ例示的なPIM動作が完了する時のための推定値をHBM+スタックが提供する場合に対する、2段階HBM+プロトコルの相対的なシーケンスを描写するためのものであるのを理解すべきである。
801において、ホスト装置101は、CAバス108を介して「PIM_CHRG」命令語を発行する。
「PIM_CHRG」命令語は、直ぐに発行される「PIM_CMD」に対するバンク及びチャンネル識別情報を含む。
「PIM_CHRG」命令語に応答して、ロジックダイ104は一つ以上の選択されたチャンネル内の関連バンクをプリチャージし、PIM動作中、ホスト装置101にHBM+スタックの所有権を保障するようにHBM+スタック103を固定する。
「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を介して活性化命令語「ACT1」を伝送する。
804において、ロジックダイ104が「PIM_CMD」をデコーディングし、「ACT1」命令語を発行する時間の遅延は(tPD)である。
遅延(tRCD)の後に、ロジックダイ104は、805においてリード命令語「RD1」を発行する。
806において、(tBL/2)のバースト長さの遅延を有する「RD_Data」でデータが判読される前に(tRL)の遅延が存在する。
PIM動作「IOP」は、(tIOP)の遅延で807において実行される。
しかし、PIM動作「IOP」が複雑であるから、PIM動作「IOP」と関連した遅延は非決定性である。
ロジックダイ104は、またリード命令語「RD」が805において発行された後、PIM動作「IOP」が807において完了される前に(tRTW)の遅延後、808においてライト命令語「WR」を発行する。
PIM動作「IOP」の結果は、810において、ライト命令語「WR」の発行後、(tWL)の遅延後にメモリに記録される(「WR_Data」)。
811において、ロジックダイ104は、(tWR)の遅延後にプリチャージ命令語「PRE」を発行する。
ホスト装置101が、812において、HBM+スタック103に追加トランザクション及び/又は命令語を発行する前に(tRP)の遅延が続く。
タイミング図800に示した多くのトランザクションが決定性の側面があっても、全体トランザクションの全体タイミングは非決定性である。
807でのPIM動作「IOP」の非決定性の遅延を説明するために、ホスト装置101は、813においてCAバス108を介して「PIM_RD」命令語を発行する。
ロジックダイ104が、「PIM_EST」応答で814において応答する前に(tRL)の遅延があるはずである。
この実施形態において、「PIM_EST」応答は、807におけるPIM動作(IOP)が完了する時間を示す時間推定を含むことができる。
一実施形態において、時間の推定は、時間の単位である。
他の実施形態において、時間の推定は、クロックサイクルの単位からなる。
従って、802において、「PIM_WR」命令語が発行された時と、HBM+スタック103が、812においてホスト装置101から他のコマンドを受信する準備ができた時との間の有効時間(tPIM_WR)(有効)は、下記に示す数式4で表すことができる。
Figure 2019053726
(tPIM_WR)は、PIM動作(演算)が完了するのにかかる時間の決定性の部分を示し、(tPIM_EST)は、PIM動作(演算)が完了するまでの時間の非決定性の部分の時間推定を示す。
図9は、HBM+スタック103が、本発明の一実施形態によるPIM命令語が完了する時のための信用ベースの指示を提供する、例示的な2段階HBM+プロトコルPIM命令語に対するタイミング図である。
タイミング図900は、スケーリングされず、ただHBM+スタックが例示的なPIM動作が完了する時のための信用ベースの指示を提供する時の2段階HBM+プロトコルの相対的なシーケンスを描写するためのものであるのを理解すべきである。
901において、ホスト装置101は、CAバス108を介して「PIM_CHRG」命令語を発行する。
「PIM_CHRG」命令語は、直ぐに発行される「PIM_CMD」に対するバンク及びチャンネル識別情報を含む。
「PIM_CHRG」命令語に応答して、ロジックダイ104は、一つ以上の選択されたチャンネル内の関連バンクをプリチャージし、PIM動作中、ホスト装置101にHBM+スタックの所有権を保障するようにHBM+スタック103を固定する。
「PIM_CHRG」命令語の直ぐ次に、902において、ホスト装置101は、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+内部バス111を介してHBM+スタック103に活性化命令語「ACT1」を伝送する。
904において、ロジックダイ104が「PIM_CMD」をデコーディングし、「ACT1」命令語を発行する時間の遅延は(tPD)である。
遅延(tRCD)後に、ロジックダイ104は、905において、リード命令語「RD」を発行する。
906において、(tBL/2)のバースト長さの遅延を有する「RD_Data」でデータが判読される前に(tRL)の遅延が存在する。
PIM動作(IOP)は、(tIOP)の遅延で907において実行される。
しかし、PIM動作(演算)(IOP)が複雑であるから、PIM動作(演算)(IOP)と関連した遅延は非決定性である。
ロジックダイ104は、また、リード命令語「RD」が905において発行された後、PIM動作「IOP」が907において完了される前に、(tRTW)の遅延で908においてライト命令語「WR」を発行する。
PIM動作「IOP」の結果は、909において(tWL)の遅延を有するライト命令語「WR」の発行後、メモリに記録される(「WR_Data」)。
910において、ロジックダイ104は、(tWR)の遅延を有するプリチャージ命令語「PRE」を発行する。
ホスト装置101が、911において、HBM+スタック103に追加トランザクション及び/又は命令語を発行する前に(tRP)の遅延が続く。
たとえ、タイミング図900に描写した多くのトランザクションが決定性の側面があっても、全体トランザクションの全体タイミングは非決定性である。
907において、PIM動作「IOP」の非決定性の遅延を説明するために、ホスト装置101は、912においてCAバス108を介して「PIM_RD」命令語を発行する。
ロジックダイ104が、「PIM_CRED」応答で913において応答する前に(tRL)の遅延があるはずである。
この実施形態において、「PIM_CRED」応答は、ホスト装置101がスロットリング(throttling)メカニズムとして使用し得る複数のクレジット(credits)に関する情報を含むことができる。
例えば、「PIM_CRED」応答が、ホスト装置101が「0」より大きな整数のクレジット(credits)を有することを示す場合、ホスト装置101は、クレジットが残っていないまでHBM+スタック103に命令語及び/又はトランザクションを発行し続けることができる。
従って、902において「PIM_WR」命令語が発行された時と、911においてHBM+スタック103がホスト装置101から他の命令語を受信する準備ができた時との間の有効時間(tPIM_WR(effective))は、下記に示す数式5で表すことができる。
Figure 2019053726
ここで、(tPIM_WR)は、PIM動作が完了する時間の決定性の部分を示し、(tPIM_CRED)は「0」より大きな整数のクレジットを示し、ホスト装置101がこれ以上残っているクレジットがないまで、ホスト装置101は、HBM+スタック103に命令語及び/又はトランザクションを発行し続けるはずである。
図10は、HBM+スタック103が、本発明の一実施形態によるPIM命令語が完了される時のためのフィードバックベースの指示を提供する例示的な2段階HBM+プロトコルPIM命令語に対するタイミング図である。
タイミング図1000は、スケーリングされず、ただHBM+スタックが例示的なPIM動作が完了する時のためのフィードバックベースの指示を提供する場合に対する、2段階HBM+プロトコルの相対的なシーケンスを描写するためのものであるのを理解すべきである。
1001において、ホスト装置101は、CAバス108を介して「PIM_CHRG」命令語を発行する。
「PIM_CHRG」命令語は、直ぐに発行される「PIM_CMD」に対するバンク及びチャンネル識別情報を含む。
「PIM_CHRG」命令語に応答して、ロジックダイ104は、一つ以上の選択されたチャンネル内の関連バンクをプリチャージし、PIM動作中、ホスト装置101にHBM+スタックの所有権を保障するようにHBM+スタック103を固定する。
「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に活性化命令語「ACT」を伝送する。
1004において、ロジックダイ104が、「PIM_CMD」をデコーディングし、「ACT」命令語を発行する時間の遅延は(tPD)である。
遅延(tRCD)の後に、ロジックダイ104は、1005においてリード命令語「RD」を発行する。
1006において、(tBL/2)のバースト長さの遅延を有する「RD_Data」でデータが読まれる前に(tRL)の遅延が存在する。
PIM動作「IOP」は、1007において(tIOP)の遅延で実行される。
しかし、PIM動作(演算)「IOP」が複雑であるから、PIM動作(演算)「IOP」と関連した遅延は非決定性である。
ロジックダイ104は、また、リード命令語「RD」が1005において発行された後、PIM動作「IOP」が1007において完了する前に、1008において、(tRTW)の遅延でライト命令語「WR」を発行する。
1009において、PIM動作「IOP」の結果は、(tWL)の遅延を有するライト命令語(WR)を発行後に、メモリに記録される(「WR_Data」)。
1010において、ロジックダイ104は、(tWR)の遅延を有するプリチャージ命令語「PRE」を発行する。
1011において、ホスト装置101が、HBM+スタック103に追加トランザクション及び/又は命令語を発行する前に(tRP)の遅延が続く。
たとえ、タイミング図1000に描写した多くのトランザクションが決定性の側面があっても、全体トランザクションの全体タイミングは非決定性である。
符号1007におけるPIM動作「IOP」の非決定性の遅延を説明するため、ホスト装置101は、1012においてCAバス108を介して「PIM_RD」命令語を発行する。
ロジックダイ104が、「PIM_FDBK」応答で1013において応答する前に(tRL)の遅延があるはずである。
この実施形態において、「PIM_FDBK」応答は、PIM動作が完了したか否かを判定するために、ホスト装置101が、HBM+スタック103をポーリングする前の時間周期に関する情報を含むことができる。
ホスト装置101は、フィードバック情報を使用してHBM+スタック103をポーリングするために、戻ってくる前に他の動作をスケジューリングして実行することができる。
従って、1002において、「PIM_WR」命令語が発行され、1011においてHBM+スタック103がホスト装置101から他の命令語を受信する準備ができるまでの有効時間(tPIM_WR(effective))は、下記に示す数式6で表すことができる。
Figure 2019053726
ここで、(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、500、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 (20)

  1. 高帯域メモリ(High−Bandwidth Memory:以下、HBM)システムにおいて、
    高帯域メモリ(HBM)装置と、
    ホスト装置に接続される第1インターフェースと、前記HBM装置に接続される第2インターフェースと、を含む論理回路と、を有し、
    前記論理回路は、前記第1インターフェースを介して前記ホスト装置から第1命令語を受信し、前記受信した第1命令語を前記第2インターフェースを介して前記HBM装置に伝送する第1PIM(Processing−In−Memory)命令語に変換し、
    前記第1PIM命令語は、完了のための決定性の遅延(deterministic latency for completion)を有し、
    前記論理回路は、前記ホスト装置から前記第1インターフェースを介して第2命令語をさらに受信し、前記第2インターフェースを介して前記HBM装置に伝送する第2PIM命令語に前記受信した第2命令語を変換し、
    前記第2PIM命令語は、完了のための非決定性の遅延を有することを特徴とする高帯域メモリシステム。
  2. 前記ホスト装置から受信した前記第1命令語に応答して、前記論理回路は、前記HBM装置を制御して、前記HBM装置のチャンネルの内の少なくとも一つの選択されたバンクをプリチャージ(pre−charge)することを特徴とする請求項1に記載の高帯域メモリシステム。
  3. 前記第1命令語が前記ホスト装置から前記論理回路によって受信される時と、前記HBMシステムが前記ホスト装置から他の命令語を受信する準備ができた時との間の時間は、決定性(deterministic)であることを特徴とする請求項1に記載の高帯域メモリシステム。
  4. 前記第1インターフェースは、命令語/アドレスバス及びデータバスを含み、
    前記第1命令語は、前記命令語/アドレスバスを介して前記論理回路によって受信され、
    前記第1命令語に対応する第1命令語パケットは、前記データバスを介して前記論理回路によって受信されることを特徴とする請求項3に記載の高帯域メモリシステム。
  5. 前記論理回路と前記ホスト装置との間を接続するトランザクションバスをさらに有し、
    前記論理回路は、前記第2PIM命令語が完了した時、前記トランザクションバスを介して前記ホスト装置に指示(indication)を伝送することを特徴とする請求項4に記載の高帯域メモリシステム。
  6. 前記HBMシステムが、前記ホスト装置から他の命令語を受信する準備ができている時、第3命令語が前記命令語/アドレスバスを介して前記ホスト装置から前記論理回路によって受信され、
    前記第3命令語に対する応答は、前記論理回路から前記データバスを介して前記ホスト装置に出力されることを特徴とする請求項5に記載の高帯域メモリシステム。
  7. 前記HBMシステムは、前記論理回路と前記ホスト装置との間を接続するトランザクションバスをさらに有し、
    前記第2命令語は、前記命令語/アドレスバスを介して前記ホスト装置から前記論理回路によって受信され、
    前記第2命令語に対応する第2命令語パケットは、前記データバスを介して前記ホスト装置から前記論理回路によって受信され、
    前記論理回路は、前記第2PIM命令語が完了した時、前記トランザクションバスを介して前記ホスト装置に指示を伝送することを特徴とする請求項1に記載の高帯域メモリシステム。
  8. 高帯域メモリ(High−Bandwidth Memory:以下、HBM)システムにおいて、
    高帯域メモリ(HBM)装置と、
    ホスト装置と接続される命令語/アドレスバスと、前記ホスト装置と接続されるデータバスと、を含む第1インターフェースと、前記HBM装置と接続される第2インターフェースと、前記ホスト装置と接続されるトランザクションバスを含む論理回路とを有し、
    前記論理回路は、前記第1インターフェースを介して前記ホスト装置から第1命令語を受信し、前記受信した第1命令語を前記第2インターフェースを介して前記HBM装置に伝送する第1PIM(Processing−In−Memory)命令語に変換し、前記第1PIM命令語は、完了のための非決定性の遅延(non−deterministic latency for completion)を有し、前記論理回路は、前記第1PIM命令語が完了した時、前記トランザクションバスを介して前記ホスト装置に指示を伝送することを特徴とする高帯域メモリシステム。
  9. 第1命令語に対応する第1命令語パケットは、前記データバスを介して前記ホスト装置から前記論理回路によって受信され、
    前記第1命令語を前記ホスト装置から受信した時と、前記HBMシステムが前記ホスト装置から他の命令語を受信する準備ができた時との間の時間は、非決定性であることを特徴とする請求項8に記載の高帯域メモリシステム。
  10. 前記第1命令語に後続して、前記ホスト装置から第2命令語が前記命令語/アドレスバスを介して前記論理回路によって受信され、
    前記第2命令語に対応する出力は、前記論理回路から前記データバスを介して前記ホスト装置に出力されることを特徴とする請求項9に記載の高帯域メモリシステム。
  11. 前記論理回路は、前記第1インターフェースを介して前記ホスト装置から第3命令語を受信し、前記受信した第3命令語を前記第2インターフェースを介して前記HBM装置に伝送する第2PIM命令語に変換し、前記第2PIM命令語は、完了のための決定性の遅延を有することを特徴とする請求項10に記載の高帯域メモリシステム。
  12. 前記ホスト装置から受信した前記第3命令語に応答して、前記論理回路は、前記HBM装置のチャンネルの内の少なくとも一つの選択されたバンクをプリチャージ(pre−charge)するように前記HBM装置を制御することを特徴とする請求項11に記載の高帯域メモリシステム。
  13. 前記論理回路は、前記ホスト装置から第4命令語を受信し、
    前記第4命令語が前記ホスト装置から前記論理回路によって受信される時と、前記HBMシステムが前記ホスト装置から他の命令語を受信する準備ができた時との間の時間は、決定性であることを特徴とする請求項12に記載の高帯域メモリシステム。
  14. 前記第4命令語は、前記命令語/アドレスバスを介して受信され、
    前記第4命令語に対応する第4命令語パケットは、前記データバスを介して受信されることを特徴とする請求項13に記載の高帯域メモリシステム。
  15. 高帯域メモリ(HBM)システムにおいて、
    プロセシングインメモリ(PIM)機能を有する高帯域メモリ装置と、
    ホスト装置と接続される命令語/アドレスバスと、前記ホスト装置と接続されるデータバスと、を含む第1インターフェースと、前記HBM装置と接続される第2インターフェースと、ホスト装置と接続されるトランザクションバスを含む論理回路と、を有し、
    前記論理回路は、前記第1インターフェースを介して前記ホスト装置から第1命令語を受信し、前記受信した第1命令語をプロセシングインメモリ(PIM)処理のために、前記第2インターフェースを介して前記HBM装置に伝送する第1命令語に変換し、前記第1命令語は完了のための決定性の遅延を有し、
    前記論理回路は、前記第1インターフェースを介して前記ホスト装置から第2命令語をさらに受信し、前記受信した第2命令語をプロセシングインメモリ(PIM)処理のために、前記第2インターフェースを介して前記HBM装置に伝送する第2命令語に変換し、 前記第2命令語は、完了のための非決定性の遅延を有することを特徴とする高帯域メモリシステム。
  16. 前記ホスト装置から受信した前記第1命令語に応答して、前記論理回路は、前記HBM装置のチャンネルの内の少なくとも一つの選択されたバンクをプリチャージするように前記HBM装置を制御することを特徴とする請求項15に記載の高帯域メモリシステム。
  17. 前記論理回路によって前記ホスト装置から第3命令語が受信される時と、前記HBMシステムが前記ホスト装置から他の命令語を受信する準備ができた時との間の時間は、決定論性であることを特徴とする請求項15に記載の高帯域メモリシステム。
  18. 前記第1命令語は、前記命令語/アドレスバスを介して受信され、
    前記第1命令語に対応する第1命令語パケットは、前記データバスを介して受信されることを特徴とする請求項17に記載の高帯域メモリシステム。
  19. 前記第2命令語は、前記命令語/アドレスバスを介して前記ホスト装置から前記論理回路によって受信され、
    前記第2命令語に対応する第2命令語パケットは、前記データバスを介して前記ホスト装置から前記論理回路によって受信され、
    前記論理回路は、前記第2命令語が完了した時、前記トランザクションバスを介して前記ホスト装置に指示を伝送することを特徴とする請求項18に記載の高帯域メモリシステム。
  20. 第3命令語は、前記命令語/アドレスバスを介して前記ホスト装置から前記論理回路によって受信され、
    前記第3命令語に対応する出力は、前記データバスを介して前記論理回路から前記ホスト装置に出力されることを特徴とする請求項19に記載の高帯域メモリシステム。
JP2018158187A 2017-09-14 2018-08-27 高帯域メモリシステム Active JP6955478B2 (ja)

Applications Claiming Priority (8)

Application Number Priority Date Filing Date Title
US201762558732P 2017-09-14 2017-09-14
US201762558726P 2017-09-14 2017-09-14
US201762558741P 2017-09-14 2017-09-14
US62/558,741 2017-09-14
US62/558,732 2017-09-14
US62/558,726 2017-09-14
US15/821,688 US10592121B2 (en) 2017-09-14 2017-11-22 Quasi-synchronous protocol for large bandwidth memory systems
US15/821,688 2017-11-22

Publications (3)

Publication Number Publication Date
JP2019053726A true JP2019053726A (ja) 2019-04-04
JP2019053726A5 JP2019053726A5 (ja) 2021-10-07
JP6955478B2 JP6955478B2 (ja) 2021-10-27

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 Before (1)

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

Country Status (5)

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

Families Citing this family (20)

* 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
EP3881078A1 (en) 2018-11-15 2021-09-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 에스케이하이닉스 주식회사 연산 회로를 포함하는 메모리 장치, 이를 제어하는 메모리 컨트롤러 및 이를 포함하는 메모리 시스템
US11086804B2 (en) * 2019-12-09 2021-08-10 Western Digital Technologies, Inc. Storage system and method for reducing read-retry duration
US10841645B1 (en) 2019-12-09 2020-11-17 Western Digital Technologies, Inc. Storage system and method for video frame segregation to optimize storage
KR20220116259A (ko) * 2019-12-26 2022-08-22 마이크론 테크놀로지, 인크. 적층 메모리 시스템의 비-결정 동작을 위한 기술
CN114930282A (zh) 2019-12-26 2022-08-19 美光科技公司 堆叠式存储器***的真值表扩展
WO2021133690A1 (en) 2019-12-26 2021-07-01 Micron Technology, Inc. Host techniques for stacked memory systems
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
US20230162767A1 (en) * 2021-11-24 2023-05-25 Micron Technology, Inc. Modification of a command timing pattern
US12019560B2 (en) 2021-12-20 2024-06-25 Advanced Micro Devices, Inc. Virtual partitioning a processor-in-memory (“PIM”)
US11934827B2 (en) 2021-12-20 2024-03-19 Advanced Micro Devices, Inc. Partition and isolation of a processing-in-memory (PIM) device
US11934698B2 (en) * 2021-12-20 2024-03-19 Advanced Micro Devices, Inc. Process isolation for a processor-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 (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5396641A (en) * 1991-01-18 1995-03-07 Iobst; Kenneth W. Reconfigurable memory processor
JP2010506242A (ja) * 2006-05-29 2010-02-25 パスカリス パパグリゴリオウ 多機能メモリカードとの通信方法
US20160070483A1 (en) * 2013-05-30 2016-03-10 Hewlett-Packard Development, L.P. Separate memory controllers to access data in memory
WO2017055732A1 (fr) * 2015-10-01 2017-04-06 Upmem Dispositif informatique muni de traitement en memoire et de ports d'acces etroits
US20170255390A1 (en) * 2016-03-01 2017-09-07 Samsung Electronics Co., Ltd. 3-d stacked memory with reconfigurable compute logic

Family Cites Families (67)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
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
JP5331427B2 (ja) 2008-09-29 2013-10-30 株式会社日立製作所 半導体装置
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
JP2011081732A (ja) 2009-10-09 2011-04-21 Elpida Memory Inc 半導体装置及びその調整方法並びにデータ処理システム
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
JP6139010B2 (ja) * 2013-03-15 2017-05-31 インテル・コーポレーション デバイス
US9734097B2 (en) * 2013-03-15 2017-08-15 Micron Technology, Inc. Apparatuses and methods for variable latency memory operations
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
US9747048B2 (en) 2014-06-02 2017-08-29 Micron Technology, Inc. Systems and methods for packing data 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
US11086521B2 (en) 2015-01-20 2021-08-10 Ultrata, Llc Object memory data flow instruction execution
US10318197B2 (en) * 2015-04-08 2019-06-11 Tintri By Ddn, Inc. Native storage quality of service for virtual machines
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
WO2017065379A1 (ko) * 2015-10-16 2017-04-20 삼성전자 주식회사 프로세싱-인-메모리를 이용한 명령어 처리 방법 및 그 장치
US10528613B2 (en) 2015-11-23 2020-01-07 Advanced Micro Devices, Inc. Method and apparatus for performing a parallel search operation
US20170220499A1 (en) 2016-01-04 2017-08-03 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 한양대학교 산학협력단 트랜잭션 추출 장치 및 방법
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
US10741239B2 (en) 2017-08-31 2020-08-11 Micron Technology, Inc. Processing in memory device including a row address strobe manager
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

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5396641A (en) * 1991-01-18 1995-03-07 Iobst; Kenneth W. Reconfigurable memory processor
JP2010506242A (ja) * 2006-05-29 2010-02-25 パスカリス パパグリゴリオウ 多機能メモリカードとの通信方法
US20160070483A1 (en) * 2013-05-30 2016-03-10 Hewlett-Packard Development, L.P. Separate memory controllers to access data in memory
WO2017055732A1 (fr) * 2015-10-01 2017-04-06 Upmem Dispositif informatique muni de traitement en memoire et de ports d'acces etroits
JP2018534666A (ja) * 2015-10-01 2018-11-22 アップメム インメモリ処理及び狭幅データポートを備えたコンピュータデバイス
US20170255390A1 (en) * 2016-03-01 2017-09-07 Samsung Electronics Co., Ltd. 3-d stacked memory with reconfigurable compute logic

Also Published As

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

Similar Documents

Publication Publication Date Title
JP6955478B2 (ja) 高帯域メモリシステム
JP7456083B2 (ja) ロウハンマ緩和のホスト支援のためのリフレッシュコマンド制御
CN103680594B (zh) 降低写失败的存储器件、包括该存储器件的***及其方法
JP2020166832A5 (ja)
US7155554B2 (en) Methods and apparatuses for generating a single request for block transactions over a communication fabric
US20170110178A1 (en) Hybrid refresh with hidden refreshes and external refreshes
CN103377695A (zh) 存储***、存储器件、存储控制器及操作其的方法
CN104599227B (zh) 用于高速ccd数据存储的ddr3仲裁控制器及方法
US7277975B2 (en) Methods and apparatuses for decoupling a request from one or more solicited responses
TW200811650A (en) Memory device with speculative commands to memory core
US20220293162A1 (en) Randomization of directed refresh management (drfm) pseudo target row refresh (ptrr) commands
EP3907624A1 (en) Memory and storage controller with integrated memory coherency interconnect
US20230333928A1 (en) Storage and access of metadata within selective dynamic random access memory (dram) devices
US20240079036A1 (en) Standalone Mode
US11928039B1 (en) Data-transfer test mode
US20220190844A1 (en) Method and apparatus to perform cyclic redundancy check training in a memory module
US20240070093A1 (en) Asymmetric Read-Write Sequence for Interconnected Dies
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
US20230393740A1 (en) Four way pseudo split die dynamic random access memory (dram) architecture
CN109634880A (zh) 一种数据采集设备、数据交互设备及数据采集***

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210825

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210825

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20210825

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211001

R150 Certificate of patent or registration of utility model

Ref document number: 6955478

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150