JP2024512625A - アービトレーション中の書き込みバンクグループのマスク - Google Patents
アービトレーション中の書き込みバンクグループのマスク Download PDFInfo
- Publication number
- JP2024512625A JP2024512625A JP2023559707A JP2023559707A JP2024512625A JP 2024512625 A JP2024512625 A JP 2024512625A JP 2023559707 A JP2023559707 A JP 2023559707A JP 2023559707 A JP2023559707 A JP 2023559707A JP 2024512625 A JP2024512625 A JP 2024512625A
- Authority
- JP
- Japan
- Prior art keywords
- bank group
- memory
- arbiter
- write
- requests
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000000873 masking effect Effects 0.000 title 1
- 230000015654 memory Effects 0.000 claims abstract description 230
- 230000004913 activation Effects 0.000 claims abstract description 23
- 238000000034 method Methods 0.000 claims description 24
- 238000012545 processing Methods 0.000 claims description 21
- 230000005540 biological transmission Effects 0.000 claims description 8
- 230000000694 effects Effects 0.000 claims description 4
- 238000010586 diagram Methods 0.000 abstract description 15
- 230000008569 process Effects 0.000 description 17
- 239000004744 fabric Substances 0.000 description 15
- 230000002093 peripheral effect Effects 0.000 description 7
- 230000004044 response Effects 0.000 description 6
- 239000000872 buffer Substances 0.000 description 5
- 239000003795 chemical substances by application Substances 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000012544 monitoring process Methods 0.000 description 4
- 230000002457 bidirectional effect Effects 0.000 description 3
- 230000015572 biosynthetic process Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- 238000003786 synthesis reaction Methods 0.000 description 3
- 238000012937 correction Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 101000711846 Homo sapiens Transcription factor SOX-9 Proteins 0.000 description 1
- 101100232371 Hordeum vulgare IAT3 gene Proteins 0.000 description 1
- 102100034204 Transcription factor SOX-9 Human genes 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000003542 behavioural effect Effects 0.000 description 1
- 239000003990 capacitor Substances 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 230000008929 regeneration Effects 0.000 description 1
- 238000011069 regeneration method Methods 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/161—Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
- G06F13/1626—Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement by reordering requests
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/1642—Handling requests for interconnection or transfer for access to memory bus based on arbitration with request queuing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0653—Monitoring storage devices or systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Dram (AREA)
- Memory System (AREA)
Abstract
Description
Claims (20)
- メモリコントローラであって、
メモリチャネルに対するメモリアクセス要求を受信するための入力と、所定数のメモリアクセス要求を保持するためのいくつかのエントリと、を有するコマンドキューと、
DRAMチャネルに結合されたDRAMメモリに送信されるメモリ要求を前記コマンドキューから選択するためのアービタと、を備え、
前記アービタは、
前記アービタによって選択された3つ以上の先行する書き込み要求のバンクグループ番号を追跡するバンクグループ追跡回路と、
前記コマンドキューから発行される要求を選択し、追跡されたバンクグループ番号への書き込み要求及び関連付けられたアクティブ化コマンドの選択を防止する選択回路と、を備え、
前記バンクグループ追跡回路は、先行する書き込み要求及び関連付けられたアクティブ化コマンドが、指定された期間が経過した後に発行されるのに適格であることを示す、
メモリコントローラ。 - 前記選択回路は、新たな書き込み要求を選択する場合に、追跡されていないバンクグループ番号を巡回し、適格な書き込み要求を見つけるまで、それぞれのバンクグループに対する書き込み要求が選択されるのに適格であるかどうかをチェックする、
請求項1のメモリコントローラ。 - 前記バンクグループ追跡回路は、各バンクグループ番号が追跡されたクロックサイクルの数をカウントするための少なくとも1つのタイマを含む、
請求項1のメモリコントローラ。 - 前記バンクグループ追跡回路は、
各々がバンクグループ番号を保持する複数のエントリと、
各々が前記複数のエントリのそれぞれのエントリに関連付けられた複数のタイマであって、それぞれのバンクグループ番号が追跡されたクロックサイクルの数をカウントする、複数のタイマと、を備える、
請求項1のメモリコントローラ。 - 前記選択回路は、追跡されたバンクグループ番号をそれぞれ受信するいくつかの入力を含み、
前記選択回路は、前記追跡されたバンクグループ番号と、タイミング適格性、年齢、公平性及びアクティビティタイプを含むポリシーのセットと、に基づいて前記コマンドキューから要求を選択する、
請求項1のメモリコントローラ。 - 前記選択回路は、
第1のタイプのアクセス及び第2のタイプのアクセスに従って前記コマンドキューから候補メモリ要求を選択的に選択するための少なくとも1つのサブアービタであって、各タイプのアクセスがメモリ内のバンクの異なるページ状態に対応し、前記バンクグループ追跡回路から提供される情報に基づいて書き込み要求を選択する、少なくとも1つのサブアービタと、
前記候補メモリ要求からの要求選択を調停する最終アービタと、を備える、
請求項1のメモリコントローラ。 - 前記指定された期間は、前記先行する書き込み要求の前記バンクグループに対する最小書き込み間タイミング期間に対応するクロックサイクルの数である、
請求項1のメモリコントローラ。 - メモリコントローラにおいて複数のメモリアクセス要求を受信し、前記メモリアクセス要求をコマンドキューに入れて、複数のバンクグループを含むDRAMメモリへの送信を待機することと、
アービタを用いて、前記DRAMメモリに送信される書き込み要求を前記コマンドキューから選択することと、
前記アービタによって選択された3つ以上の先行する書き込み要求のバンクグループ番号を追跡することと、
追跡されたバンクグループに対する後続の書き込み要求及び関連付けられたアクティブ化コマンドの選択を防止することと、
指定された期間が経過した後に発行されるのに適格な先行する書き込み要求及び関連付けられたアクティブ化コマンドを生成することと、を含む、
方法。 - 新たな書き込み要求を選択する場合に、追跡されていないバンクグループ番号を巡回し、適格な書き込み要求を見つけるまで、それぞれのバンクグループに対する書き込み要求が選択されるのに適格であるかどうかをチェックすることを更に含む、
請求項8の方法。 - 少なくとも1つのタイマを用いて、各バンクグループ番号が追跡されたクロックサイクルの数をカウントすることを更に含む、
請求項8の方法。 - 追跡されたバンクグループ番号と、タイミング適格性、年齢、公平性及びアクティビティタイプを含むポリシーのセットと、に基づいて前記コマンドキューから要求を選択することを更に含む、
請求項8の方法。 - 第1のタイプのアクセス、第2のタイプのアクセス、及び、前記バンクグループ追跡回路から提供される情報に従って、前記コマンドキューから候補メモリ要求を選択的に選択することであって、各タイプのアクセスは、メモリ内のバンクの異なるページ状態に対応する、ことと、
前記候補メモリ要求からの要求選択を調停することと、を更に含む、
請求項8の方法。 - 前記指定された期間は、前記先行する書き込み要求の前記バンクグループに対する最小書き込み間タイミング期間に対応するクロックサイクルの数である、
請求項8の方法。 - データ処理システムであって、
DRAMメモリに結合されたメモリチャネルと、
前記メモリチャネルに結合されたメモリコントローラと、を備え、
前記メモリコントローラは、
メモリチャネルに対するメモリアクセス要求を受信するための入力と、所定数のメモリアクセス要求を保持するためのいくつかのエントリと、を有するコマンドキューと、
前記DRAMメモリに送信される、発行されるメモリ要求を前記コマンドキューから選択するためのアービタと、を備え、
前記アービタは、
前記アービタによって選択された3つ以上の先行する書き込み要求のバンクグループ番号を追跡するバンクグループ追跡回路と、
追跡されたバンクグループ番号への書き込み要求及び関連付けられたアクティブ化コマンドの選択を防止する選択回路と、を備え、
前記バンクグループ追跡回路は、先行する書き込み要求及び関連付けられたアクティブ化コマンドが、指定された期間が経過した後に発行されるのに適格であることを示す、
データ処理システム。 - 前記選択回路は、新たな書き込み要求を選択する場合に、追跡されていないバンクグループ番号を巡回し、適格な書き込み要求を見つけるまで、それぞれのバンクグループに対する書き込み要求が選択されるのに適格であるかどうかをチェックする、
請求項14のデータ処理システム。 - 前記バンクグループ追跡回路は、各バンクグループ番号が追跡されたクロックサイクルの数をカウントするための少なくとも1つのタイマを含む、
請求項14のデータ処理システム。 - 前記バンクグループ追跡回路は、
各々がバンクグループ番号を保持する複数のエントリと、
各々が前記複数のエントリのそれぞれのエントリに関連付けられた複数のタイマであって、それぞれのバンクグループ番号が追跡されたクロックサイクルの数をカウントする、複数のタイマと、を備える、
請求項14のデータ処理システム。 - 前記選択回路は、追跡されたバンクグループ番号をそれぞれ受信するいくつかの入力を含み、
前記選択回路は、前記追跡されたバンクグループ番号と、タイミング適格性、年齢、公平性及びアクティビティタイプを含むポリシーのセットと、に基づいて前記コマンドキューから要求を選択する、
請求項14のデータ処理システム。 - 前記選択回路は、
第1のタイプのアクセス及び第2のタイプのアクセスに従って前記コマンドキューから候補メモリ要求を選択的に選択するための少なくとも1つのサブアービタであって、各タイプのアクセスがメモリ内のバンクの異なるページ状態に対応し、前記バンクグループ追跡回路から提供される情報に基づいて書き込み要求を選択する、少なくとも1つのサブアービタと、
前記候補メモリ要求からの要求選択を調停する最終アービタと、を備える、
請求項14のデータ処理システム。 - 前記指定された期間は、前記先行する書き込み要求の前記バンクグループに対する最小書き込み間タイミング期間に対応するクロックサイクルの数である、
請求項14のデータ処理システム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/218,676 | 2021-03-31 | ||
US17/218,676 US11669274B2 (en) | 2021-03-31 | 2021-03-31 | Write bank group mask during arbitration |
PCT/US2022/020779 WO2022212078A1 (en) | 2021-03-31 | 2022-03-17 | Write bank group mask during arbitration |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2024512625A true JP2024512625A (ja) | 2024-03-19 |
Family
ID=83449744
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023559707A Pending JP2024512625A (ja) | 2021-03-31 | 2022-03-17 | アービトレーション中の書き込みバンクグループのマスク |
Country Status (6)
Country | Link |
---|---|
US (1) | US11669274B2 (ja) |
EP (1) | EP4315015A4 (ja) |
JP (1) | JP2024512625A (ja) |
KR (1) | KR20230157522A (ja) |
CN (1) | CN117083588A (ja) |
WO (1) | WO2022212078A1 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022246036A1 (en) * | 2021-05-20 | 2022-11-24 | Micron Technology, Inc. | Adjustable timer component for semiconductor devices |
US11789642B2 (en) * | 2021-06-28 | 2023-10-17 | Micron Technology, Inc. | Loading data from memory during dispatch |
US11960416B2 (en) * | 2021-12-21 | 2024-04-16 | Texas Instruments Incorporated | Multichannel memory arbitration and interleaving scheme |
US11630605B1 (en) * | 2022-08-10 | 2023-04-18 | Recogni Inc. | Methods and systems for processing read-modify-write requests |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5948081A (en) * | 1997-12-22 | 1999-09-07 | Compaq Computer Corporation | System for flushing queued memory write request corresponding to a queued read request and all prior write requests with counter indicating requests to be flushed |
US7047391B2 (en) | 1998-09-14 | 2006-05-16 | The Massachusetts Institute Of Technology | System and method for re-ordering memory references for access to memory |
US7043599B1 (en) | 2002-06-20 | 2006-05-09 | Rambus Inc. | Dynamic memory supporting simultaneous refresh and data-access transactions |
KR100444703B1 (ko) * | 2002-10-01 | 2004-08-16 | 삼성전자주식회사 | 네트워크 상 높은 버스 효율을 갖는 메모리 장치 및 그동작 방법, 그리고 이를 포함하는 메모리 시스템 |
US7069399B2 (en) | 2003-01-15 | 2006-06-27 | Via Technologies Inc. | Method and related apparatus for reordering access requests used to access main memory of a data processing system |
US7698498B2 (en) * | 2005-12-29 | 2010-04-13 | Intel Corporation | Memory controller with bank sorting and scheduling |
KR101364443B1 (ko) | 2007-01-31 | 2014-02-17 | 삼성전자주식회사 | 메모리 시스템, 이 시스템을 위한 메모리 제어기와 메모리,이 시스템의 신호 구성 방법 |
US7870351B2 (en) | 2007-11-15 | 2011-01-11 | Micron Technology, Inc. | System, apparatus, and method for modifying the order of memory accesses |
US8838853B2 (en) * | 2010-01-18 | 2014-09-16 | Marvell International Ltd. | Access buffer |
CN103597460B (zh) * | 2011-04-08 | 2016-11-02 | 奥特拉有限公司 | 用于利用存储命令的系统和方法 |
US8693269B2 (en) * | 2011-08-08 | 2014-04-08 | Samsung Electronics Co., Ltd. | Memory device for managing timing parameters |
US9281046B2 (en) * | 2013-10-08 | 2016-03-08 | Advanced Micro Devices, Inc. | Data processor with memory controller for high reliability operation and method |
US9293188B2 (en) * | 2014-02-03 | 2016-03-22 | Advanced Micro Devices, Inc. | Memory and memory controller for high reliability operation and method |
US20170206031A1 (en) * | 2016-01-15 | 2017-07-20 | Samsung Electronics Co., Ltd. | Fine grain level memory power consumption control mechanism |
JP2018205859A (ja) * | 2017-05-31 | 2018-12-27 | キヤノン株式会社 | メモリコントローラとその制御方法 |
US20200285580A1 (en) * | 2017-06-30 | 2020-09-10 | Intel Corporation | Speculative memory activation |
CN110729006B (zh) * | 2018-07-16 | 2022-07-05 | 超威半导体(上海)有限公司 | 存储器控制器中的刷新方案 |
-
2021
- 2021-03-31 US US17/218,676 patent/US11669274B2/en active Active
-
2022
- 2022-03-17 KR KR1020237037630A patent/KR20230157522A/ko not_active Application Discontinuation
- 2022-03-17 CN CN202280025683.9A patent/CN117083588A/zh active Pending
- 2022-03-17 JP JP2023559707A patent/JP2024512625A/ja active Pending
- 2022-03-17 WO PCT/US2022/020779 patent/WO2022212078A1/en active Application Filing
- 2022-03-17 EP EP22781871.3A patent/EP4315015A4/en active Pending
Also Published As
Publication number | Publication date |
---|---|
EP4315015A1 (en) | 2024-02-07 |
US20220317923A1 (en) | 2022-10-06 |
US11669274B2 (en) | 2023-06-06 |
KR20230157522A (ko) | 2023-11-16 |
EP4315015A4 (en) | 2024-05-22 |
CN117083588A (zh) | 2023-11-17 |
WO2022212078A1 (en) | 2022-10-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110729006B (zh) | 存储器控制器中的刷新方案 | |
KR102442078B1 (ko) | 고속 메모리 인터페이스들을 위한 명령 중재 | |
US11669274B2 (en) | Write bank group mask during arbitration | |
JP7357169B2 (ja) | Dramのリフレッシュ管理 | |
US11625352B2 (en) | DRAM command streak management | |
US11995008B2 (en) | Memory controller with hybrid DRAM/persistent memory channel arbitration | |
US20210357336A1 (en) | Efficient memory bus management | |
EP3270294A1 (en) | Command arbitration for high-speed memory interfaces | |
US11687281B2 (en) | DRAM command streak efficiency management | |
US20240211173A1 (en) | Performance of bank refresh | |
US20240112722A1 (en) | Directed refresh management for dram |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20231107 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20231107 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20231107 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20240312 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240529 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20240618 |