WO2005114669A2 - System and method for improving performance in computer memory systems supporting multiple memory access latencies - Google Patents
System and method for improving performance in computer memory systems supporting multiple memory access latencies Download PDFInfo
- Publication number
- WO2005114669A2 WO2005114669A2 PCT/US2005/018246 US2005018246W WO2005114669A2 WO 2005114669 A2 WO2005114669 A2 WO 2005114669A2 US 2005018246 W US2005018246 W US 2005018246W WO 2005114669 A2 WO2005114669 A2 WO 2005114669A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- memory
- latency
- group
- access
- memory device
- 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.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
- G06F13/1631—Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement by reordering requests through address comparison
Definitions
- the disclosed embodiments relate generally to computer memory systems and methods, and in particular to performance improvements in memory systems supporting multiple memory access latencies.
- Figure 3 is a block diagram of a memory device for use in group levelization.
- Figure 5 is a block diagram of a memory system employing group levelization and including buffers for increased capacity.
- Figure 6 is a flow diagram of a process of allocating memory addresses to memory devices for use in a memory system employing group levelization.
- the memory devices in the memory system are allocated to latency groups including a first latency group and a second latency group.
- the first latency group has a lower latency than the second latency group.
- first and second portions of a memory address space are identified and the first portion of the address space is mapped to at least one memory device allocated to the first latency group while the . second portion of the address space is mapped to at least one memory device allocated to the second latency group.
- Providing the first portion of the address space with a lower access latency than the second portion of the address space can result in improved memory system performance.
- more than two latency groups and more than two portions of memory address space are used.
- a method of controlling access to memory devices in a memory system supporting multiple memory access latencies includes decoding a memory access request to provide a memory device identifier; identifying a latency group associated with the memory device identifier, wherein the latency group is one of a plurality of latency groups in the memory system; comparing the identified latency group with a latency group associated with a previous memory access request; and generating a timing control signal in response to the result of the comparison.
- memory devices disposed on first and second memory modules may be accessed.
- the first access latency to the first memory module may be allocated.
- the first memory module includes the first buffer and the first memory device coupled to the first buffer.
- the second access latency to the second memory module is allocated.
- the second memory module includes the second buffer and the second memory device coupled to the second buffer.
- An advantage of group levelization is that most of the implementation burden is in software (e.g., BIOS).
- BIOS e.g., BIOS
- the technique can be implemented in an off-the- shelf memory controller (e.g., SiS R658) as a BIOS option that can be enabled by motherboard manufacturers, system integrators, end users and the like. Because most of the implementation burden is in software, end-users can select from a large number of device ID/rank mappings or generate their own custom mappings.
- the delay devices 110 are implemented using well- known programmable delay devices and design techniques. As clock speeds increase, however, it becomes increasingly difficult to design a delay device 110 that can provide the delays required by global levelization without significantly impacting the design (e.g., increased size) of the memory devices 104 and/or memory controller 102, or restricting the system to a limited number of memory devices 104.
- the delay devices 100 are implemented using a shift register and an output multiplexer for delaying an output data signal by a specified number of clock cycles. The specified number of clock cycles is stored in a register in the memory device in which the delay device is embedded.
- the register can be loaded via a register write operation performed by the memory controller 102 during initialization.
- This memory allocation methodology is not a problem in computers using a memory system with global levelization, because access latency LQ is independent of the memory device being accessed. However, this memory allocation methodology may perform suboptimally in systems where different memory devices have different access latencies.
- each memory device 104 is assigned to one of a set of latency groups G J ...G M each having a different latency.
- the channel is split into two latency groups of memory devices 104, hereinafter referred to as latency groups G / (Near Group) and G 2 (Far Group).
- Memory devices 104 allocated to latency group Gj are levelized to latency Lj of the highest-latency device in the group (measured in clock cycles), while memory devices 104 allocated to latency group G 2 are levelized to latency Z, 2 of the highest latency device in group G 2 .
- N is equal to 4, which is the length of a data packet, in memory bus clock cycles in at least some memory systems that use RDRAM devices.
- FIG 4 is a block diagram of one embodiment of a memory controller 202 for use in group levelization.
- the memory controller 202 includes a front side bus interface 402 (e.g., for handling communications with a data processor or CPU), a graphics interface 404 (e.g., AGP interface), an I/O interface 408, an arbitration unit 406, controller logic 410, memory 412, and high-speed memory interface 106.
- a front side bus interface 402 e.g., for handling communications with a data processor or CPU
- graphics interface 404 e.g., AGP interface
- I/O interface 408 e.g., AGP interface
- arbitration unit 406 e.g., controller logic 410, memory 412, and high-speed memory interface 106.
- the controller logic 410 is coupled to memory 412, which includes group table 414, last group 416, initialization code 418, and group levelization code 420. Note that Figure 4 represents one particular embodiment of a memory controller.
- the disclosed group levelization techniques can be used with many types of memory controllers
- the initialization code 418 and the group levelization code 420 are stored in a BIOS EPROM, which can be a separate chip coupled to the memory controller 202 via a bus or other interconnect structure.
- the initialization code 418 is executed by the controller logic 410.
- the initialization code is responsible for allocating memory devices to latency groups, and hence filling in the entries of the group table 414.
- the format and content of group table 414 are discussed in more detail below.
- the group table 414 is not a static table, but is dynamically created every time the system is booted to account for changes in the system (e.g., memory may have been added or removed). In other embodiments, the group table 414 can be changed as memory access frequencies change.
- the group levelization code 420 is executed to make sure that all memory devices in each latency group have the same latency.
- the group levelization code 420 is responsible for levelizing latency across all memory devices in the same group. To do this, the group levelization code 420 determines how much delay (if any) to add to each of the memory devices in the group so that they match the latency of the highest latency memory device in the group.
- the memory devices in each group having the lowest latency may have their delay devices 110 (Fig. 3) configured, for example by storing an appropriate value in register 306 (Fig. 3), under the control of the group levelization code. This process is then repeated for each latency group.
- the group levelization code is implemented as part of the initialization code 418.
- the memory requests stored in the queues 422 are examined for memory access contentions by the arbitration unit 406 using conventional arbitration techniques (e.g., round-robin, priorities, etc.).
- the arbitration unit 406 selects a memory request from the requests stored in queue 422 and forwards the selected memory request to the controller logic 410.
- the N-bit address e.g., a 28-bit, 32-bit or 64-bit address
- a sample address mapping i.e., a map of the ⁇ address bits
- the group table 414 provides a mapping between memory addresses (as represented by their Device ID's) and latency groups , to which the memory devices 104 are allocated, using the process described with respect to Figure 6. While Table II also shows the positions of the physical memory devices whose Device ID's and Group values are stored in the group table, in some embodiments (e.g., in which memory devices are addressed using their Device ID's) the physical memory position is not stored in the group table 414. In other embodiments, the group table 414 stores the physical position of each memory device.
- steps 602 and 604 are re-executed at appropriate times so as to remap the most frequently accessed address ranges to a latency group having the smallest latency, or more generally to a latency group having an associated latency smaller than the latency of at least one other latency group.
- a timing control signal is generated (step 706). More specifically, if the current memory request is a request to read data in a memory device in a lower latency group than a memory read request immediately prior to the current request, then the timing control signal causes the controller logic to delay transmission of the current memory access command by an amount of time required to avoid a collision between the data returned by the immediately preceding and current memory access commands.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Dram (AREA)
- Multi Processors (AREA)
- Memory System (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN2005800218157A CN1977336B (zh) | 2004-05-21 | 2005-05-20 | 改善支持多存储器访问延迟的计算机存储器系统的性能的系统和方法 |
| JP2007527567A JP4926963B2 (ja) | 2004-05-21 | 2005-05-20 | 多重メモリアクセスレイテンシ時間をサポートするコンピュータメモリシステムにおける性能を改善するためのシステムおよび方法 |
| EP05753838A EP1754229B1 (en) | 2004-05-21 | 2005-05-20 | System and method for improving performance in computer memory systems supporting multiple memory access latencies |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US10/850,803 US7222224B2 (en) | 2004-05-21 | 2004-05-21 | System and method for improving performance in computer memory systems supporting multiple memory access latencies |
| US10/850,803 | 2004-05-21 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| WO2005114669A2 true WO2005114669A2 (en) | 2005-12-01 |
| WO2005114669A3 WO2005114669A3 (en) | 2006-03-16 |
Family
ID=35266747
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/US2005/018246 Ceased WO2005114669A2 (en) | 2004-05-21 | 2005-05-20 | System and method for improving performance in computer memory systems supporting multiple memory access latencies |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US7222224B2 (https=) |
| EP (1) | EP1754229B1 (https=) |
| JP (1) | JP4926963B2 (https=) |
| CN (1) | CN1977336B (https=) |
| WO (1) | WO2005114669A2 (https=) |
Cited By (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2006127515A (ja) * | 2004-10-25 | 2006-05-18 | Samsung Electronics Co Ltd | メモリモジュール内でのインターフェースタイミングを制御するメモリシステム及びタイミング制御方法 |
| JP2007310430A (ja) * | 2006-05-16 | 2007-11-29 | Hitachi Ltd | メモリモジュール |
| JP2008021314A (ja) * | 2006-07-13 | 2008-01-31 | Internatl Business Mach Corp <Ibm> | データの優先順位付けを用いるマルチレベルのメモリ・アーキテクチャ |
| JP2009064360A (ja) * | 2007-09-07 | 2009-03-26 | Canon Inc | メモリコントローラ及びその制御方法 |
| JP2009086702A (ja) * | 2007-09-27 | 2009-04-23 | Renesas Technology Corp | メモリ制御装置および半導体装置 |
| JP2009093227A (ja) * | 2007-10-03 | 2009-04-30 | Canon Inc | メモリアクセス制御装置及びメモリアクセス制御方法 |
| US11822789B2 (en) | 2011-12-27 | 2023-11-21 | Intel Corporation | Methods and apparatus to manage workload memory allocation |
Families Citing this family (86)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6464628B1 (en) * | 1999-08-12 | 2002-10-15 | Obtech Medical Ag | Mechanical anal incontinence |
| US6471635B1 (en) * | 2000-02-10 | 2002-10-29 | Obtech Medical Ag | Anal incontinence disease treatment with controlled wireless energy supply |
| EP1253880B1 (en) | 2000-02-10 | 2005-09-14 | Potencia Medical AG | Controlled urinary incontinence treatment |
| MXPA02007654A (es) | 2000-02-10 | 2004-08-23 | Potencia Medical Ag | Aparato mecanico para el tratamiento de impotencia. |
| DE60131726T2 (de) * | 2000-02-11 | 2008-11-06 | Potencia Medical Ag | Kontrollierte impotenzbehandlung |
| ATE296071T1 (de) * | 2000-02-14 | 2005-06-15 | Potencia Medical Ag | Penisprothese |
| ATE324087T1 (de) | 2000-02-14 | 2006-05-15 | Potencia Medical Ag | Männliche impotentzprothesevorrichtung mit drahtloser energieversorgung |
| KR100448717B1 (ko) * | 2002-08-02 | 2004-09-13 | 삼성전자주식회사 | 메모리 시스템 |
| US20090118019A1 (en) | 2002-12-10 | 2009-05-07 | Onlive, Inc. | System for streaming databases serving real-time applications used through streaming interactive video |
| US9314691B2 (en) | 2002-12-10 | 2016-04-19 | Sony Computer Entertainment America Llc | System and method for compressing video frames or portions thereof based on feedback information from a client device |
| US9138644B2 (en) | 2002-12-10 | 2015-09-22 | Sony Computer Entertainment America Llc | System and method for accelerated machine switching |
| US7512762B2 (en) * | 2004-10-29 | 2009-03-31 | International Business Machines Corporation | System, method and storage medium for a memory subsystem with positional read data latency |
| US7331010B2 (en) | 2004-10-29 | 2008-02-12 | International Business Machines Corporation | System, method and storage medium for providing fault detection and correction in a memory subsystem |
| JP2006236105A (ja) * | 2005-02-25 | 2006-09-07 | Canon Inc | アクセス制御装置及びその制御方法 |
| KR100588599B1 (ko) * | 2005-05-03 | 2006-06-14 | 삼성전자주식회사 | 메모리 모듈 및 메모리 시스템 |
| US20070005922A1 (en) * | 2005-06-30 | 2007-01-04 | Swaminathan Muthukumar P | Fully buffered DIMM variable read latency |
| US7911834B2 (en) | 2006-05-15 | 2011-03-22 | Apple Inc. | Analog interface for a flash memory die |
| US7852690B2 (en) * | 2006-05-15 | 2010-12-14 | Apple Inc. | Multi-chip package for a flash memory |
| US7701797B2 (en) * | 2006-05-15 | 2010-04-20 | Apple Inc. | Two levels of voltage regulation supplied for logic and data programming voltage of a memory device |
| US8000134B2 (en) | 2006-05-15 | 2011-08-16 | Apple Inc. | Off-die charge pump that supplies multiple flash devices |
| US7639542B2 (en) * | 2006-05-15 | 2009-12-29 | Apple Inc. | Maintenance operations for multi-level data storage cells |
| US7613043B2 (en) * | 2006-05-15 | 2009-11-03 | Apple Inc. | Shifting reference values to account for voltage sag |
| US7568135B2 (en) | 2006-05-15 | 2009-07-28 | Apple Inc. | Use of alternative value in cell detection |
| US7639531B2 (en) * | 2006-05-15 | 2009-12-29 | Apple Inc. | Dynamic cell bit resolution |
| US7551486B2 (en) * | 2006-05-15 | 2009-06-23 | Apple Inc. | Iterative memory cell charging based on reference cell value |
| US7511646B2 (en) * | 2006-05-15 | 2009-03-31 | Apple Inc. | Use of 8-bit or higher A/D for NAND cell value |
| US7861140B2 (en) * | 2006-10-31 | 2010-12-28 | Globalfoundries Inc. | Memory system including asymmetric high-speed differential memory interconnect |
| US20080104352A1 (en) * | 2006-10-31 | 2008-05-01 | Advanced Micro Devices, Inc. | Memory system including a high-speed serial buffer |
| US7788414B2 (en) * | 2007-01-16 | 2010-08-31 | Lantiq Deutschland Gmbh | Memory controller and method of controlling a memory |
| US20100185810A1 (en) * | 2007-06-12 | 2010-07-22 | Rambus Inc. | In-dram cycle-based levelization |
| US7729168B2 (en) * | 2007-06-28 | 2010-06-01 | Intel Corporation | Reduced signal level support for memory devices |
| US20090157940A1 (en) * | 2007-12-15 | 2009-06-18 | Hitachi Global Storage Technologies Netherlands, B.V. | Techniques For Storing Data In Multiple Different Data Storage Media |
| US8825965B2 (en) * | 2008-01-08 | 2014-09-02 | Cisco Technology, Inc. | System and methods for memory expansion |
| EP2244759B1 (en) * | 2008-01-28 | 2024-11-27 | Implantica Patent Ltd. | A filter cleaning device |
| ES2981249T3 (es) | 2008-01-29 | 2024-10-08 | Implantica Patent Ltd | Un dispositivo para el tratamiento de la obesidad |
| US20090215538A1 (en) * | 2008-02-22 | 2009-08-27 | Samuel Jew | Method for dynamically synchronizing computer network latency |
| US9072907B2 (en) | 2008-10-10 | 2015-07-07 | Peter Forsell | Heart help device, system, and method |
| ES2985873T3 (es) | 2008-10-10 | 2024-11-07 | Implantica Patent Ltd | Medios de fijación para conjunto de control médico implantable |
| EP2349170B1 (en) | 2008-10-10 | 2023-09-27 | Implantica Patent Ltd. | Apparatus for the treatment of female sexual dysfunction |
| EP2349096B1 (en) | 2008-10-10 | 2021-01-27 | MedicalTree Patent Ltd. | An improved artificial valve |
| EP3120896A1 (en) | 2008-10-10 | 2017-01-25 | Kirk Promotion LTD. | A system, an apparatus, and a method for treating a sexual dysfunctional female patient |
| AU2009302945C1 (en) | 2008-10-10 | 2016-04-21 | Medicaltree Patent Ltd | Heart help device, system, and method |
| US8135723B2 (en) * | 2008-11-12 | 2012-03-13 | Microsoft Corporation | Leveraging low-latency memory access |
| US9949812B2 (en) | 2009-07-17 | 2018-04-24 | Peter Forsell | Vaginal operation method for the treatment of anal incontinence in women |
| US10952836B2 (en) | 2009-07-17 | 2021-03-23 | Peter Forsell | Vaginal operation method for the treatment of urinary incontinence in women |
| US8375180B2 (en) | 2010-02-05 | 2013-02-12 | International Business Machines Corporation | Storage application performance matching |
| US8639879B2 (en) * | 2010-03-25 | 2014-01-28 | International Business Machines Corporation | Sorting movable memory hierarchies in a computer system |
| JP5314640B2 (ja) | 2010-06-21 | 2013-10-16 | ルネサスエレクトロニクス株式会社 | 半導体装置 |
| US10114746B2 (en) | 2010-10-14 | 2018-10-30 | Micron Technology, Inc. | Nonvolatile storage using low latency and high latency memory |
| US8725128B2 (en) | 2010-12-10 | 2014-05-13 | Alcatel Lucent | Pre-fetching of assets to user equipment |
| US9081893B2 (en) * | 2011-02-18 | 2015-07-14 | Microsoft Technology Licensing, Llc | Dynamic lazy type system |
| US11099982B2 (en) * | 2011-03-31 | 2021-08-24 | Oracle International Corporation | NUMA-aware garbage collection |
| US10140208B2 (en) | 2011-03-31 | 2018-11-27 | Oracle International Corporation | NUMA-aware garbage collection |
| JP5658082B2 (ja) * | 2011-05-10 | 2015-01-21 | ルネサスエレクトロニクス株式会社 | 半導体装置 |
| WO2013147755A1 (en) * | 2012-03-27 | 2013-10-03 | Hewlett-Packard Development Company, L.P. | Nonvolatile memory bank groups |
| TW201403459A (zh) * | 2012-04-20 | 2014-01-16 | Enmotus Inc | 具有資料管理機制之儲存系統及操作該儲存系統之方法 |
| GB2516435A (en) * | 2013-04-05 | 2015-01-28 | Continental Automotive Systems | Embedded memory management scheme for real-time applications |
| KR20140123203A (ko) * | 2013-04-11 | 2014-10-22 | 삼성전자주식회사 | 메모리 시스템 |
| US9141541B2 (en) | 2013-09-20 | 2015-09-22 | Advanced Micro Devices, Inc. | Nested channel address interleaving |
| WO2015047402A1 (en) * | 2013-09-30 | 2015-04-02 | Hewlett-Packard Development Company, L.P. | Programming memory controllers to allow performance of active memory operations |
| GB2518884A (en) * | 2013-10-04 | 2015-04-08 | Ibm | Network attached storage system and corresponding method for request handling in a network attached storage system |
| US9547834B2 (en) * | 2014-01-08 | 2017-01-17 | Bank Of America Corporation | Transaction performance monitoring |
| US9992090B2 (en) | 2014-01-08 | 2018-06-05 | Bank Of America Corporation | Data metrics analytics |
| WO2015164049A1 (en) * | 2014-04-25 | 2015-10-29 | Rambus, Inc. | Memory mirroring |
| US9798628B2 (en) | 2014-04-25 | 2017-10-24 | Rambus Inc. | Memory mirroring |
| KR20150145465A (ko) * | 2014-06-19 | 2015-12-30 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 이의 동작 방법 |
| US9606928B2 (en) | 2014-08-26 | 2017-03-28 | Kabushiki Kaisha Toshiba | Memory system |
| KR102076196B1 (ko) * | 2015-04-14 | 2020-02-12 | 에스케이하이닉스 주식회사 | 메모리 시스템, 메모리 모듈 및 메모리 모듈의 동작 방법 |
| JP6464916B2 (ja) * | 2015-05-12 | 2019-02-06 | 富士通株式会社 | メモリ装置及びメモリ装置の制御方法 |
| JP6459820B2 (ja) * | 2015-07-23 | 2019-01-30 | 富士通株式会社 | 記憶制御装置、情報処理装置、および制御方法 |
| JP6456799B2 (ja) * | 2015-08-31 | 2019-01-23 | 株式会社メガチップス | メモリコントローラ |
| KR102532581B1 (ko) * | 2016-03-17 | 2023-05-17 | 에스케이하이닉스 주식회사 | 메모리 장치를 포함하는 메모리 시스템 및 그의 동작 방법 |
| KR102617843B1 (ko) * | 2016-05-13 | 2023-12-27 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 이의 동작 방법 |
| US20180032429A1 (en) * | 2016-07-29 | 2018-02-01 | Intel Corporation | Techniques to allocate regions of a multi-level, multi-technology system memory to appropriate memory access initiators |
| DE102016218280B4 (de) * | 2016-09-22 | 2018-07-19 | Infineon Technologies Ag | Vorrichtung, die einen Überlagerungsmechanismus umfasst, System mit Vorrichtungen, die jeweils einen Überlagerungsmechanismus mit einer individuellen programmierbaren Verzögerung umfassen |
| US10095421B2 (en) | 2016-10-21 | 2018-10-09 | Advanced Micro Devices, Inc. | Hybrid memory module bridge network and buffers |
| US10331581B2 (en) | 2017-04-10 | 2019-06-25 | Hewlett Packard Enterprise Development Lp | Virtual channel and resource assignment |
| US10489225B2 (en) | 2017-08-10 | 2019-11-26 | Bank Of America Corporation | Automatic resource dependency tracking and structure for maintenance of resource fault propagation |
| US10990525B2 (en) * | 2018-12-12 | 2021-04-27 | Mipsology SAS | Caching data in artificial neural network computations |
| WO2020121030A1 (en) * | 2018-12-12 | 2020-06-18 | Mipsology SAS | Caching data in artificial neural network computations |
| US11526632B2 (en) | 2019-09-04 | 2022-12-13 | Rambus Inc. | Securing address information in a memory controller |
| US11199995B2 (en) * | 2019-11-19 | 2021-12-14 | Micron Technology, Inc. | Time to live for load commands |
| US11243804B2 (en) | 2019-11-19 | 2022-02-08 | Micron Technology, Inc. | Time to live for memory access by processors |
| US12387769B2 (en) * | 2022-05-23 | 2025-08-12 | Changxin Memory Technologies, Inc. | Latency adjustment method, memory chip architecture, and semiconductor memory |
| US12405752B2 (en) | 2023-09-26 | 2025-09-02 | Smart Modular Technologies, Inc. | Migrating data between byte-addressable and block-addressable storage devices in processor-based devices |
| US20250110873A1 (en) * | 2023-09-29 | 2025-04-03 | Samsung Electronics Co., Ltd. | Systems, methods, and apparatus for cache management in a memory device |
Family Cites Families (21)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6807609B1 (en) * | 1989-12-04 | 2004-10-19 | Hewlett-Packard Development Company, L.P. | Interleaving read and write operations on a bus and minimizing buffering on a memory module in a computer system |
| JP3523286B2 (ja) * | 1993-03-12 | 2004-04-26 | 株式会社日立製作所 | 順次データ転送型メモリ及び順次データ転送型メモリを用いたコンピュータシステム |
| JP3445476B2 (ja) * | 1997-10-02 | 2003-09-08 | 株式会社東芝 | 半導体メモリシステム |
| JPH11242629A (ja) * | 1997-10-09 | 1999-09-07 | Matsushita Electric Ind Co Ltd | メモリシステム |
| US6587912B2 (en) * | 1998-09-30 | 2003-07-01 | Intel Corporation | Method and apparatus for implementing multiple memory buses on a memory module |
| US6111796A (en) * | 1999-03-01 | 2000-08-29 | Motorola, Inc. | Programmable delay control for sense amplifiers in a memory |
| US6646953B1 (en) | 2000-07-06 | 2003-11-11 | Rambus Inc. | Single-clock, strobeless signaling system |
| JP2001290697A (ja) * | 2000-04-06 | 2001-10-19 | Hitachi Ltd | 情報処理システム |
| US6493250B2 (en) * | 2000-12-28 | 2002-12-10 | Intel Corporation | Multi-tier point-to-point buffered memory interface |
| US6877079B2 (en) * | 2001-03-06 | 2005-04-05 | Samsung Electronics Co., Ltd. | Memory system having point-to-point bus configuration |
| US6658523B2 (en) * | 2001-03-13 | 2003-12-02 | Micron Technology, Inc. | System latency levelization for read data |
| US6934823B2 (en) * | 2001-03-29 | 2005-08-23 | Intel Corporation | Method and apparatus for handling memory read return data from different time domains |
| US6675272B2 (en) * | 2001-04-24 | 2004-01-06 | Rambus Inc. | Method and apparatus for coordinating memory operations among diversely-located memory components |
| US6785793B2 (en) | 2001-09-27 | 2004-08-31 | Intel Corporation | Method and apparatus for memory access scheduling to reduce memory access latency |
| KR100446291B1 (ko) * | 2001-11-07 | 2004-09-01 | 삼성전자주식회사 | 카스 레이턴시를 이용하여 락킹 레졸루션 조절이 가능한지연동기 루프 회로 |
| JP4159415B2 (ja) * | 2002-08-23 | 2008-10-01 | エルピーダメモリ株式会社 | メモリモジュール及びメモリシステム |
| WO2004025478A1 (ja) * | 2002-09-11 | 2004-03-25 | Fujitsu Limited | メモリブロック間のレイテンシ差を活用するデータ処理装置および方法 |
| US7089412B2 (en) * | 2003-01-17 | 2006-08-08 | Wintec Industries, Inc. | Adaptive memory module |
| US7020757B2 (en) * | 2003-03-27 | 2006-03-28 | Hewlett-Packard Development Company, L.P. | Providing an arrangement of memory devices to enable high-speed data access |
| US7133991B2 (en) * | 2003-08-20 | 2006-11-07 | Micron Technology, Inc. | Method and system for capturing and bypassing memory transactions in a hub-based memory system |
| US7366864B2 (en) * | 2004-03-08 | 2008-04-29 | Micron Technology, Inc. | Memory hub architecture having programmable lane widths |
-
2004
- 2004-05-21 US US10/850,803 patent/US7222224B2/en not_active Expired - Lifetime
-
2005
- 2005-05-20 CN CN2005800218157A patent/CN1977336B/zh not_active Expired - Fee Related
- 2005-05-20 EP EP05753838A patent/EP1754229B1/en not_active Expired - Lifetime
- 2005-05-20 WO PCT/US2005/018246 patent/WO2005114669A2/en not_active Ceased
- 2005-05-20 JP JP2007527567A patent/JP4926963B2/ja not_active Expired - Fee Related
Cited By (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2006127515A (ja) * | 2004-10-25 | 2006-05-18 | Samsung Electronics Co Ltd | メモリモジュール内でのインターフェースタイミングを制御するメモリシステム及びタイミング制御方法 |
| JP2007310430A (ja) * | 2006-05-16 | 2007-11-29 | Hitachi Ltd | メモリモジュール |
| JP2008021314A (ja) * | 2006-07-13 | 2008-01-31 | Internatl Business Mach Corp <Ibm> | データの優先順位付けを用いるマルチレベルのメモリ・アーキテクチャ |
| JP2009064360A (ja) * | 2007-09-07 | 2009-03-26 | Canon Inc | メモリコントローラ及びその制御方法 |
| JP2009086702A (ja) * | 2007-09-27 | 2009-04-23 | Renesas Technology Corp | メモリ制御装置および半導体装置 |
| JP2009093227A (ja) * | 2007-10-03 | 2009-04-30 | Canon Inc | メモリアクセス制御装置及びメモリアクセス制御方法 |
| US8516214B2 (en) | 2007-10-03 | 2013-08-20 | Canon Kabushiki Kaisha | Memory access control device, command issuing device, and method |
| US8762676B2 (en) | 2007-10-03 | 2014-06-24 | Canon Kabushiki Kaisha | Memory access control device, command issuing device, and method |
| US11822789B2 (en) | 2011-12-27 | 2023-11-21 | Intel Corporation | Methods and apparatus to manage workload memory allocation |
Also Published As
| Publication number | Publication date |
|---|---|
| US20050262323A1 (en) | 2005-11-24 |
| JP4926963B2 (ja) | 2012-05-09 |
| CN1977336B (zh) | 2012-02-22 |
| EP1754229A2 (en) | 2007-02-21 |
| JP2008500668A (ja) | 2008-01-10 |
| WO2005114669A3 (en) | 2006-03-16 |
| CN1977336A (zh) | 2007-06-06 |
| US7222224B2 (en) | 2007-05-22 |
| EP1754229B1 (en) | 2012-07-11 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US7222224B2 (en) | System and method for improving performance in computer memory systems supporting multiple memory access latencies | |
| US6901486B2 (en) | Method and system for optimizing pre-fetch memory transactions | |
| US7017022B2 (en) | Processing memory requests in a pipelined memory controller | |
| US6393512B1 (en) | Circuit and method for detecting bank conflicts in accessing adjacent banks | |
| US6088772A (en) | Method and apparatus for improving system performance when reordering commands | |
| US6393534B1 (en) | Scheduler for avoiding bank conflicts in issuing concurrent requests to main memory | |
| US6622228B2 (en) | System and method of processing memory requests in a pipelined memory controller | |
| US7707366B2 (en) | Memory control device | |
| US7287101B2 (en) | Direct memory access using memory descriptor list | |
| EP3729280B1 (en) | Dynamic per-bank and all-bank refresh | |
| US10152434B2 (en) | Efficient arbitration for memory accesses | |
| US8412870B2 (en) | Optimized arbiter using multi-level arbitration | |
| US20080222379A1 (en) | System and method for memory hub-based expansion bus | |
| US11474942B2 (en) | Supporting responses for memory types with non-uniform latencies on same channel | |
| KR102789083B1 (ko) | 집단화된 메모리 장치에 대한 메모리 요청 스케줄링 | |
| US20120137090A1 (en) | Programmable Interleave Select in Memory Controller | |
| WO2008022162A2 (en) | Systems and methods for program directed memory access patterns | |
| KR20120029366A (ko) | 트래픽 클래스들과 관련된 포트들을 갖는 다중 포트 메모리 제어기 | |
| US20230342307A1 (en) | Transmission of address translation type packets | |
| EP4323877B1 (en) | Adaptive memory access management | |
| JP2024545876A (ja) | ファイングレインdramにおける通常アクセス性能を回復するための方法及び装置 | |
| US9176906B2 (en) | Memory controller and memory system including the same | |
| US20240378082A1 (en) | Scheduling method for input/output request and storage device | |
| EP4375840A1 (en) | Memory controller, electronic system including the same and method of controlling memory access | |
| JP2008544359A (ja) | メモリーコントローラ |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| AK | Designated states |
Kind code of ref document: A2 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KM KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NG NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SM SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW |
|
| AL | Designated countries for regional patents |
Kind code of ref document: A2 Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG |
|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
| WWE | Wipo information: entry into national phase |
Ref document number: 2005753838 Country of ref document: EP |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 2007527567 Country of ref document: JP |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| WWW | Wipo information: withdrawn in national office |
Country of ref document: DE |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 200580021815.7 Country of ref document: CN |
|
| WWP | Wipo information: published in national office |
Ref document number: 2005753838 Country of ref document: EP |