WO2009070324A1 - A method for setting parameters and determining latency in a chained device system - Google Patents
A method for setting parameters and determining latency in a chained device system Download PDFInfo
- Publication number
- WO2009070324A1 WO2009070324A1 PCT/US2008/013188 US2008013188W WO2009070324A1 WO 2009070324 A1 WO2009070324 A1 WO 2009070324A1 US 2008013188 W US2008013188 W US 2008013188W WO 2009070324 A1 WO2009070324 A1 WO 2009070324A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- request
- latency
- storage
- nodes
- master controller
- 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/1668—Details of memory controller
- G06F13/1673—Details of memory controller using buffers
-
- 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/1668—Details of memory controller
- G06F13/1684—Details of memory controller using multiple buses
Definitions
- Embodiments of the present invention relate to the field of memory components. More particularly, embodiments of the present invention relate to a method for setting parameters and determining latency in a chained device system.
- Electronic systems and circuits have made a significant contribution toward the advancement of modern society and are utilized in a number of applications to achieve advantageous results.
- Electronic technologies such as digital computers, calculators, audio devices, video equipment, and telephone systems have facilitated increased productivity and reduced costs in analyzing and communicating data, ideas and trends in most areas of business, science, education and entertainment.
- the electronic systems designed to provide these results include memories.
- accessing memory resources in a fast and efficient manner can involve complicated protocols.
- Numerous electronic devices include processors that operate by executing software comprising a series of instructions for manipulating data in the performance of useful tasks.
- the instructions and associated data are typically stored in a memory.
- Memories usually consist of a location for storing information and a unique indicator or address.
- the ability to access a memory and transfer information quickly and conveniently usually has a significant impact on information processing latency.
- the configuration of a memory usually affects the speed at which memory locations are accessed.
- Traditional attempts at memory control are often very convoluted and complex.
- Conventional daisy chain systems often involve latencies that can become very large due to large buffer sizes and scheduling amongst the various nodes within the daisy chain. It is often problematic for controllers and/or central processors to determine latency for read requests without complex scheduling algorithms and artificial limitations of the system.
- Traditional approaches often lead to long average latencies, very complex control mechanisms, larger buffer sizes, or a combination of such problematic concerns.
- a need has arisen to determine the exact latency of a request without complex scheduling algorithm while avoiding artificial limitations of the system. Moreover, a need has arisen to determine the exact latency without using long average latencies and large buffer sizes. Furthermore, a need has arisen to determine the dynamic minimal and maximal latency by using the available bandwidth, the number of outstanding requests, priority and minimal roundtrip latency, to name a few. Thus, a need has arisen to determine the minimal, maximal and exact latency for a request in a daisy chained device. It will become apparent to those skilled in the art after reading the detailed description of the present invention that the embodiments of the present invention satisfy the above mentioned needs.
- a storage system includes a plurality of storage nodes for storing information.
- the storage system may also include a master controller, e.g., a CPU, for controlling the flow of information to the plurality of storage nodes.
- a master controller e.g., a CPU
- the plurality of storage nodes include at least more than one node that may be organized in a chained network, e.g., a daisy chain network.
- at least one storage node includes an upstream communication buffer, e.g., internal and external buffer.
- the internal buffer of a first storage node is used for storing information pertaining to the first storage node whereas the external buffer is used for storing information pertaining to a storage node other than the first storage node.
- other storage nodes may similarly have external and internal buffers for storing information accordingly.
- the upstream communication buffer temporarily stores responses from an internal memory core while waiting for responses from other storage nodes further down the daisy chain to be forwarded upstream.
- the master controller controls the flow of information to the storage nodes based on one or more constraints of the upstream communication buffer, e.g., internal and external buffers, of the storage nodes.
- the master controller controls the flow of information such that communication between the master controller and the storage nodes have a determined maximum latency.
- the constraint of the upstream communication buffer is based on providing priority to responses to a storage node, e.g., memory node, that are further down the daisy chain stream.
- the master controller determines the individual latency for each storage node based on a vector of outstanding responses in the system, minimum latencies for each of the storage nodes, a burst length of the request, a clock frequency, a width of the bus coupling the master controller to the storage nodes and a memory node count of the number of the storage nodes in the system, to name a few. It is appreciated that the minimum latency may be determined as the roundtrip time of a request to be sent and a response to be received from a particular storage node when there are no other pending requests.
- the maximum latency of any request may be defined using the same equation and the minimum latency of a given storage node in the system.
- the master controller e.g., CPU, may build requests to be sent to storage nodes based on the apriori knowledge of latency for each node in order to reduce response time in the daisy chain system.
- Figure 1 shows an exemplary system in accordance with one embodiment of the present invention.
- Figure 2 shows an exemplary storage flow diagram in accordance with one embodiment of the present invention.
- Figures 3 shows an exemplary flow diagram for rearranging requests prior to forwarding the request in accordance with one embodiment of the present invention.
- these quantities take the form of electrical or magnetic signals capable of being stored, transferred, combined, compared, and otherwise manipulated in a computer system. It has proven convenient at times principally for reasons of common usage, to refer to these signals as bits, values, elements, symbols, characters, terms, numbers, or the like. It should be borne in mind, however, that all of these and similar terms are to be associated with the appropriate physical quantities and are merely convenient labels applied to these quantities.
- the system 100 in one embodiment, comprises a master controller 110 and a plurality of memory components commonly referred to as storage nodes in the instant application.
- the master controller 110 may be a CPU that may control the flow of information.
- a first storage node 120 e.g., memory A
- a second storage node 130 e.g., memory B
- the storage nodes are coupled in a daisy chain structure or configuration.
- non-daisy structures or configurations may be coupled to the daisy structure.
- the master controller 1 10 may control the flow of information and may send a plurality of requests to storage nodes. Requests may include a read request, a write request, etc.
- the request from the master controller 110 is sent down the daisy chain.
- a request M 112 message destined for the third storage node 140 may be sent from the master controller 110 to the first storage node 120 where the first storage node 120 passes the request M 112 to the second storage node 130, which in turn passes that request to the destined storage node 140.
- a request from the master controller 110 travels down the daisy chain structure.
- the master controller 110 may send a request A 114 message destined for the first storage node 120 down the daisy chain structure.
- the request message A 114 is received by the first storage node 120.
- each request/response is labeled based on the destined storage node.
- the request/response for the first storage node 120 e.g., memory A
- the request/response for the third storage node 140 e.g., memory M
- M the request/response for the third storage node 140.
- the corresponding storage node responds back to the master controller 110 via the daisy chain structure.
- the third storage node 140 may send the response M 112 to the second storage node 130 which in turn passes the response to the first storage node 120 and ultimately back to the master controller 110.
- the first storage node 120 may respond by sending the response back to the master controller 110 (not shown).
- priority is given to a response packet from a storage node furthest from the master controller 1 10.
- storage nodes further down the stream in the daisy chain structure have priority over storage nodes closer to the master microcontroller 110.
- the response packet from the third storage node 140 e.g., memory M
- the response packet from the second storage node 130 is given priority over the response packet from the first storage node 120, e.g., Memory A.
- each storage node is equipped with at least one upstream buffer.
- the upstream buffer may store data responses from the storage node itself or store data responses from another storage node that is further from the master controller 1 10.
- the upstream buffer in the first storage node 120 e.g., Memory A, may comprise an internal buffer 122 and an external buffer 124.
- the internal buffer 122 is operable to store responses from the first storage node 120 and the external buffer 124 is operable to store response packets from storage nodes further from the master controller 1 10, e.g., the second storage node 130 and the third storage node 140.
- the upstream buffer in the second storage node 130 may comprise an internal buffer 132 and an external buffer 134.
- the internal buffer 132 is operable to store responses from the second storage node 130 and the external buffer 134 is operable to store response packets from storage nodes further from the master controller 110, e.g., the third storage node 140.
- other storage nodes e.g., the third storage node 140, may similarly comprise an upstream buffer that comprises an internal buffer 142 and an external buffer 144 that operate in similar manner described above.
- the following example illustrates the priority concept in case of a collision between two responses from different storage nodes.
- the request A 1 14 is received by the first storage node 120.
- the first storage node 120 similarly receives the response M 112 from the third storage node 140.
- the first storage node 120 has to choose which response first gets sent to the master controller 110. Since the third storage node 140 is further from the master controller 110 in comparison to the first storage node 120, the second storage node 120 sends the response M 112 from the third storage node 140 to the master controller 110.
- the first storage node 120 While the first storage node 120 sends the response M 112 message to the master controller 1 10, the first storage node 120 temporarily stores the response to the message A 114 in the internal buffer 122 such that the response can be sent subsequent to the response M 112 message. In contrast, if the first storage node 120 receives the response M 112 message while transmitting the response A 114 to the master controller 110, the response M 112 message is temporarily stored in the external buffer 124 for later transmission to the master controller 110. It is appreciated that other storage nodes behave substantially similar to the first storage node 120.
- the amount of time that a response waits in an upstream buffer may be represented in the following equation:
- N is the length of the robust request in bytes.
- the clock period is represented as toe and the size of the bus is represented as W bytes.
- NAV is also known as the burst length (BL) of the response.
- equation (1) may be represented as: BL/2 * 1/tc ⁇ (2).
- the maximum latency time for a request from the furthest node, e.g., the third storage node 140 can be represented in the following equation:
- Max Lat (Max Node) Min Lat (Max Node) + (Max Node -I) * BL/2 * 1/tc ⁇ (3)
- Min Lat is the minimum latency for a request for a given storage node.
- Min Lat (A) is the minimum roundtrip latency in the system when there are no requests pending.
- Min Lat (B) is the minimum roundtrip latency in the system when there are no requests pending.
- Max Node is the node furthest from the master controller 1 10. In this exemplary embodiment, the Max Node is the third storage node 140.
- the requests to an inner storage node waits until the request to the further nodes are completed.
- the maximum latency of a node closer to the master controller 110 is also related to the maximum latency of the furthest node, e.g., Max Node which is the third storage node 140.
- the maximum latency of a node closer to the master controller 110 is also related to Max Lat (Max Node).
- the maximum latency for a given storage node is the sum of minimum latency of the given node, e.g., the latency for the second storage node 130, and the maximum latency between the given node, e.g., the second storage node 130, and the maximum latency storage node, e.g., the third storage node 140, in addition to any additional buffer delays between the given node, e.g., the second storage node 130, and the master controller 110.
- the maximum latency for a given storage node e.g., x
- Max Lat (x) Min Lat (x) + Min Lat (Max Node) + (Max Node -x)*(BL/2 * 1/tc ⁇ ) - Min Lat (x) + (N - l)(BL/2 * 1/ too (4)
- Max Lat (x) Min Lat (Max Node) + (Max Node -l)*(BL/2 * 1/tc ⁇ ) (5).
- the maximum latency for any request may be defined using the same equation (5).
- the maximum latency for any given storage node may be defined using the minimum latency of any request for a given node in the system.
- the master controller 110 may control the flow of information to storage nodes based on one or more constraints, e.g., latency constraint, of the upstream communication buffer, e.g., internal and external buffers, of the storage nodes.
- the master controller controls the flow of information such that communication between the master controller and the storage nodes have a determined maximum latency.
- the constraint of the upstream communication buffer is based on providing priority to responses to a storage node, e.g., memory node, that are further down the daisy chain stream.
- the exact latency may be determined by the master controller 110.
- the master controller 110 may build a vector of response data of request storage node names and use the vector to calculate the individual latency of a given request. It is appreciated that the determination of an individual latency is based on the apriori knowledge of the daisy chain structure.
- the built vector may be represented as follows:
- the master controller 110 expects the oldest response to request C to arrive at the master controller 110 next, which is the C to the right side of the vector. It is appreciated that "0" represents when there are no data to be returned on a given cycle. It is further appreciated that the response A in the middle may be younger than the requests to its left due to differing latencies between storage nodes C and A.
- the vector when the master controller 1 10 inserts a request, e.g., an A request, the vector may be represented as follows:
- a request since A request has a shorter latency in comparison to a B request, the A request may be inserted at a minimum latency slot in the vector to reduce the latency in the system. It is further appreciated that insertion of A request in this exemplary embodiment depends on the speed of the link, the minimum latency of A and the minimum latency for a B request.
- the vector when the master controller 1 10 inserts a B request the vector may be represented as OBOBOBBBBCCCACCCCCCCCCCCCCCCC.
- the master controller 110 inserts a C request the vector may be represented as COOBOBBBBCCCACCCCCCCCCCCCCC.
- the bus may be idle for extra time as represented by "0" shown.
- the vector when a B request is to be inserted after a C request, the vector may become OCBOOBOBBBBCCCACCCCCCCCCCCCCC. It is appreciated that B is inserted ahead of C because the latency of B request is shorter in comparison to the latency of C request. By inserting the request with a shorter latency ahead of the request with longer latency, the latency of the system is reduced.
- the vector may be represented as OOCBAOBOBBBBCCCACCCCCCCCCCCC. It is appreciated that A is inserted ahead of B and C request because the latency of an A request is shorter in comparison to the latency of a B or a C request. As a result, the exact latency may be determined in the daisy chain structure.
- controlling the flow information may reduce the latency in the system and speed up the process for a request based on latency of the buffers and other constraints.
- the information regarding the distribution of and traffic flow between memory nodes and a master controller may be obtained.
- the information may include the number of memory components in a daisy chain structure.
- the information may include the length of the robust request in bytes, the period of the clock and the size of the bus in bytes, to name a few.
- the information on the distribution may indicate that the storage nodes are arranged in a daisy chain structure and/or that a storage nodes further from the master controller 110 are given priority over storage nodes closer to the master controller 110 when there is a collision between the responses in various storage nodes.
- the latency for a responding data request may be determined. For example, it may be determined whether the request is for the first storage node 120, the second storage node 130 or the third storage node 140. Once the destined storage node or memory component is determined, the latency for the response to the data request may be determined. In one example, the latency may be determined using equations (1) through (5) described and presented above. Accordingly, the latency may be based upon a maximal latency and/or minimal latency. As described and presented above, minimal latency may be determined by the roundtrip time of a request to reach a storage node and for the storage node to respond and send the respond to the master controller 110 when there are no other requests pending.
- a vector of requests may be formed in order to determine the exact latency as described and presented above. It is further appreciated that in one embodiment, the latency may be based on latency for a request under constraints. It is appreciated that constraints may include latency of storage nodes, priority of various storage nodes and maximum latency based on the priority of various storage nodes, to name a few.
- FIG. 3 an exemplary flow diagram 300 for rearranging requests prior to forwarding the request in accordance with one embodiment of the present invention is shown.
- a new request is inserted to a vector that comprises requests to be forwarded to storage nodes.
- the vector of requests is built by the master controller 110 as discussed and presented above. Using the built vector, the exact latency may be determined.
- the requests within the vector that now includes the new inserted request are rearranged. It is appreciated that in one embodiment, the rearrangement is based on the corresponding latency of the new request and corresponding latencies of the requests within the vector. For example, as presented and discussed above when an A request is to be inserted, it may be inserted ahead of a B request within the vector because the latency of an A request is shorter in comparison to the latency of a B request. Similarly, other new requests may be inserted and the request entries of the vector may be rearranged based on the latency of the new request and the entries within the vector. Rearranging the requests may therefore reduce the latency within the system, thereby improving the speed of the system.
- each storage node is known apriori by the master controller. Moreover, the latency of storage nodes are governed by the same relationship, thereby eliminating the need for complex scheduling algorithm while avoiding artificial limitations on the system. Furthermore, the latency is determined using given resources, e.g., buffer size, bandwidth, the number of outstanding requests, priority and minimal roundtrip latency, to name a few. Thus, the need for large buffer size is eliminated since the requests may be rearranged to reduce latency and reduce the need to store large information in buffer.
- resources e.g., buffer size, bandwidth, the number of outstanding requests, priority and minimal roundtrip latency
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Information Transfer Systems (AREA)
- Small-Scale Networks (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Memory System (AREA)
- Multi Processors (AREA)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2010534981A JP5429572B2 (ja) | 2007-11-26 | 2008-11-25 | チェーン化デバイスシステムにおいてパラメータを設定し待ち時間を決定する方法 |
Applications Claiming Priority (16)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US441207P | 2007-11-26 | 2007-11-26 | |
| US436107P | 2007-11-26 | 2007-11-26 | |
| US436207P | 2007-11-26 | 2007-11-26 | |
| US443407P | 2007-11-26 | 2007-11-26 | |
| US61/004,362 | 2007-11-26 | ||
| US61/004,361 | 2007-11-26 | ||
| US61/004,412 | 2007-11-26 | ||
| US61/004,434 | 2007-11-26 | ||
| US12/276,061 | 2008-11-21 | ||
| US12/276,010 | 2008-11-21 | ||
| US12/276,116 | 2008-11-21 | ||
| US12/276,061 US8930593B2 (en) | 2007-11-26 | 2008-11-21 | Method for setting parameters and determining latency in a chained device system |
| US12/276,143 US8874810B2 (en) | 2007-11-26 | 2008-11-21 | System and method for read data buffering wherein analyzing policy determines whether to decrement or increment the count of internal or external buffers |
| US12/276,143 | 2008-11-21 | ||
| US12/276,010 US8732360B2 (en) | 2007-11-26 | 2008-11-21 | System and method for accessing memory |
| US12/276,116 US8601181B2 (en) | 2007-11-26 | 2008-11-21 | System and method for read data buffering wherein an arbitration policy determines whether internal or external buffers are given preference |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2009070324A1 true WO2009070324A1 (en) | 2009-06-04 |
Family
ID=40670682
Family Applications (4)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/US2008/013188 Ceased WO2009070324A1 (en) | 2007-11-26 | 2008-11-25 | A method for setting parameters and determining latency in a chained device system |
| PCT/US2008/013186 Ceased WO2009070322A1 (en) | 2007-11-26 | 2008-11-25 | Systems and methods for read data buffering |
| PCT/US2008/013194 Ceased WO2009070326A1 (en) | 2007-11-26 | 2008-11-25 | A system and method for accessing memory |
| PCT/US2008/013185 Ceased WO2009070321A1 (en) | 2007-11-26 | 2008-11-25 | A storage system and method |
Family Applications After (3)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/US2008/013186 Ceased WO2009070322A1 (en) | 2007-11-26 | 2008-11-25 | Systems and methods for read data buffering |
| PCT/US2008/013194 Ceased WO2009070326A1 (en) | 2007-11-26 | 2008-11-25 | A system and method for accessing memory |
| PCT/US2008/013185 Ceased WO2009070321A1 (en) | 2007-11-26 | 2008-11-25 | A storage system and method |
Country Status (3)
| Country | Link |
|---|---|
| US (4) | US8732360B2 (https=) |
| JP (5) | JP5429572B2 (https=) |
| WO (4) | WO2009070324A1 (https=) |
Families Citing this family (28)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7816459B2 (en) | 2005-12-30 | 2010-10-19 | Chevron Oronite Company Llc | Method for preparing polyolefins containing vinylidine end groups using polymeric nitrogen compounds |
| US8013073B2 (en) * | 2005-12-30 | 2011-09-06 | Chevron Oronite Company Llc | Method for preparing polyolefins containing vinylidine end groups using nonaromatic heterocyclic compounds |
| US7515710B2 (en) | 2006-03-14 | 2009-04-07 | Divx, Inc. | Federated digital rights management scheme including trusted systems |
| US8732360B2 (en) * | 2007-11-26 | 2014-05-20 | Spansion Llc | System and method for accessing memory |
| US8394897B2 (en) * | 2008-03-25 | 2013-03-12 | Chevron Oronite Company Llc | Production of vinylidene-terminated polyolefins via quenching with monosulfides |
| JP5407633B2 (ja) * | 2008-07-28 | 2014-02-05 | 株式会社リコー | 通信装置及びそれを有する通信システム並びに通信方法 |
| US8279231B1 (en) * | 2008-10-29 | 2012-10-02 | Nvidia Corporation | Bandwidth impedance matching and starvation avoidance by read completion buffer allocation |
| US9083762B2 (en) * | 2010-05-28 | 2015-07-14 | Greg Saunders | System and method for providing hybrid on demand services to a work unit |
| KR101796116B1 (ko) | 2010-10-20 | 2017-11-10 | 삼성전자 주식회사 | 반도체 장치, 이를 포함하는 메모리 모듈, 메모리 시스템 및 그 동작방법 |
| US8914534B2 (en) | 2011-01-05 | 2014-12-16 | Sonic Ip, Inc. | Systems and methods for adaptive bitrate streaming of media stored in matroska container files using hypertext transfer protocol |
| US8520534B2 (en) * | 2011-03-03 | 2013-08-27 | Alcatel Lucent | In-service throughput testing in distributed router/switch architectures |
| US9467708B2 (en) | 2011-08-30 | 2016-10-11 | Sonic Ip, Inc. | Selection of resolutions for seamless resolution switching of multimedia content |
| US8909922B2 (en) | 2011-09-01 | 2014-12-09 | Sonic Ip, Inc. | Systems and methods for playing back alternative streams of protected content protected using common cryptographic information |
| US9106663B2 (en) | 2012-02-01 | 2015-08-11 | Comcast Cable Communications, Llc | Latency-based routing and load balancing in a network |
| US9021219B2 (en) * | 2012-12-14 | 2015-04-28 | International Business Machines Corporation | Enhancing analytics performance using distributed multi-tiering |
| US9191457B2 (en) | 2012-12-31 | 2015-11-17 | Sonic Ip, Inc. | Systems, methods, and media for controlling delivery of content |
| US9313510B2 (en) | 2012-12-31 | 2016-04-12 | Sonic Ip, Inc. | Use of objective quality measures of streamed content to reduce streaming bandwidth |
| US9065810B2 (en) | 2013-01-30 | 2015-06-23 | Ebay Inc. | Daisy chain distribution in data centers |
| US9094737B2 (en) | 2013-05-30 | 2015-07-28 | Sonic Ip, Inc. | Network video streaming with trick play based on separate trick play files |
| US9866878B2 (en) | 2014-04-05 | 2018-01-09 | Sonic Ip, Inc. | Systems and methods for encoding and playing back video at different frame rates using enhancement layers |
| US9641616B2 (en) * | 2014-07-10 | 2017-05-02 | Kabushiki Kaisha Toshiba | Self-steering point-to-point storage protocol |
| US10659532B2 (en) * | 2015-09-26 | 2020-05-19 | Intel Corporation | Technologies for reducing latency variation of stored data object requests |
| JP2018041153A (ja) * | 2016-09-05 | 2018-03-15 | 東芝メモリ株式会社 | ストレージシステムおよび入出力処理方法 |
| US10635617B2 (en) * | 2017-05-19 | 2020-04-28 | Western Digital Technologies, Inc. | Context-aware dynamic command scheduling for a data storage system |
| JP6978670B2 (ja) * | 2017-12-07 | 2021-12-08 | 富士通株式会社 | 演算処理装置および演算処理装置の制御方法 |
| JP7031349B2 (ja) * | 2018-02-15 | 2022-03-08 | 日本電気株式会社 | ノード |
| US11146626B2 (en) * | 2018-11-01 | 2021-10-12 | EMC IP Holding Company LLC | Cloud computing environment with replication system configured to reduce latency of data read access |
| US11941155B2 (en) | 2021-03-15 | 2024-03-26 | EMC IP Holding Company LLC | Secure data management in a network computing environment |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20040024948A1 (en) * | 2002-07-31 | 2004-02-05 | Joerg Winkler | Response reordering mechanism |
| US20040139286A1 (en) * | 2003-01-15 | 2004-07-15 | Frank Lin | Method and related apparatus for reordering access requests used to access main memory of a data processing system |
| US20050177677A1 (en) * | 2004-02-05 | 2005-08-11 | Jeddeloh Joseph M. | Arbitration system having a packet memory and method for memory responses in a hub-based memory system |
| US20060095701A1 (en) * | 2004-10-29 | 2006-05-04 | International Business Machines Corporation | System, method and storage medium for a memory subsystem with positional read data latency |
Family Cites Families (23)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6658509B1 (en) * | 2000-10-03 | 2003-12-02 | Intel Corporation | Multi-tier point-to-point ring memory interface |
| US6564291B1 (en) * | 2000-11-17 | 2003-05-13 | Texas Instruments Incorporated | Multi-function peripheral storage device buffer system |
| US6678749B2 (en) * | 2001-06-28 | 2004-01-13 | Sony Corporation | System and method for efficiently performing data transfer operations |
| US7200137B2 (en) * | 2002-07-29 | 2007-04-03 | Freescale Semiconductor, Inc. | On chip network that maximizes interconnect utilization between processing elements |
| US6820181B2 (en) * | 2002-08-29 | 2004-11-16 | Micron Technology, Inc. | Method and system for controlling memory accesses to memory modules having a memory hub architecture |
| US6928528B1 (en) * | 2002-10-07 | 2005-08-09 | Advanced Micro Devices, Inc. | Guaranteed data synchronization |
| US7308524B2 (en) * | 2003-01-13 | 2007-12-11 | Silicon Pipe, Inc | Memory chain |
| US20040243769A1 (en) * | 2003-05-30 | 2004-12-02 | Frame David W. | Tree based memory structure |
| JP4291664B2 (ja) * | 2003-10-14 | 2009-07-08 | 株式会社日立製作所 | 通信バッファ予約機能を備えるストレージ装置およびシステム |
| US7779212B2 (en) * | 2003-10-17 | 2010-08-17 | Micron Technology, Inc. | Method and apparatus for sending data from multiple sources over a communications bus |
| US7120743B2 (en) * | 2003-10-20 | 2006-10-10 | Micron Technology, Inc. | Arbitration system and method for memory responses in a hub-based memory system |
| US7533218B2 (en) * | 2003-11-17 | 2009-05-12 | Sun Microsystems, Inc. | Memory system topology |
| US7330992B2 (en) * | 2003-12-29 | 2008-02-12 | Micron Technology, Inc. | System and method for read synchronization of memory modules |
| US7188219B2 (en) * | 2004-01-30 | 2007-03-06 | Micron Technology, Inc. | Buffer control system and method for a memory system having outstanding read and write request buffers |
| US7257683B2 (en) * | 2004-03-24 | 2007-08-14 | Micron Technology, Inc. | Memory arbitration system and method having an arbitration packet protocol |
| US7337293B2 (en) * | 2005-02-09 | 2008-02-26 | International Business Machines Corporation | Streaming reads for early processing in a cascaded memory subsystem with buffered memory devices |
| US7181659B2 (en) * | 2005-02-10 | 2007-02-20 | International Business Machines Corporation | Memory built-in self test engine apparatus and method with trigger on failure and multiple patterns per load capability |
| WO2006089560A1 (en) * | 2005-02-28 | 2006-08-31 | Teklatech A/S | A method of and a system for controlling access to a shared resource |
| US20070016698A1 (en) | 2005-06-22 | 2007-01-18 | Vogt Pete D | Memory channel response scheduling |
| US20070005922A1 (en) * | 2005-06-30 | 2007-01-04 | Swaminathan Muthukumar P | Fully buffered DIMM variable read latency |
| US7496777B2 (en) * | 2005-10-12 | 2009-02-24 | Sun Microsystems, Inc. | Power throttling in a memory system |
| US7685392B2 (en) | 2005-11-28 | 2010-03-23 | International Business Machines Corporation | Providing indeterminate read data latency in a memory system |
| US8732360B2 (en) * | 2007-11-26 | 2014-05-20 | Spansion Llc | System and method for accessing memory |
-
2008
- 2008-11-21 US US12/276,010 patent/US8732360B2/en active Active
- 2008-11-21 US US12/276,116 patent/US8601181B2/en active Active
- 2008-11-21 US US12/276,061 patent/US8930593B2/en active Active
- 2008-11-21 US US12/276,143 patent/US8874810B2/en active Active
- 2008-11-25 JP JP2010534981A patent/JP5429572B2/ja active Active
- 2008-11-25 WO PCT/US2008/013188 patent/WO2009070324A1/en not_active Ceased
- 2008-11-25 WO PCT/US2008/013186 patent/WO2009070322A1/en not_active Ceased
- 2008-11-25 JP JP2010534982A patent/JP5566899B2/ja active Active
- 2008-11-25 JP JP2010534980A patent/JP2011505037A/ja active Pending
- 2008-11-25 WO PCT/US2008/013194 patent/WO2009070326A1/en not_active Ceased
- 2008-11-25 WO PCT/US2008/013185 patent/WO2009070321A1/en not_active Ceased
- 2008-11-25 JP JP2010534979A patent/JP5948628B2/ja active Active
-
2016
- 2016-02-12 JP JP2016025072A patent/JP2016095881A/ja active Pending
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20040024948A1 (en) * | 2002-07-31 | 2004-02-05 | Joerg Winkler | Response reordering mechanism |
| US20040139286A1 (en) * | 2003-01-15 | 2004-07-15 | Frank Lin | Method and related apparatus for reordering access requests used to access main memory of a data processing system |
| US20050177677A1 (en) * | 2004-02-05 | 2005-08-11 | Jeddeloh Joseph M. | Arbitration system having a packet memory and method for memory responses in a hub-based memory system |
| US20060095701A1 (en) * | 2004-10-29 | 2006-05-04 | International Business Machines Corporation | System, method and storage medium for a memory subsystem with positional read data latency |
Also Published As
| Publication number | Publication date |
|---|---|
| WO2009070322A1 (en) | 2009-06-04 |
| US8874810B2 (en) | 2014-10-28 |
| US20090138597A1 (en) | 2009-05-28 |
| US8930593B2 (en) | 2015-01-06 |
| JP2016095881A (ja) | 2016-05-26 |
| JP2011505038A (ja) | 2011-02-17 |
| JP5948628B2 (ja) | 2016-07-06 |
| US8732360B2 (en) | 2014-05-20 |
| US20090138624A1 (en) | 2009-05-28 |
| JP5566899B2 (ja) | 2014-08-06 |
| WO2009070326A1 (en) | 2009-06-04 |
| WO2009070321A1 (en) | 2009-06-04 |
| US8601181B2 (en) | 2013-12-03 |
| US20090138570A1 (en) | 2009-05-28 |
| JP2011505036A (ja) | 2011-02-17 |
| US20090138632A1 (en) | 2009-05-28 |
| JP2011505039A (ja) | 2011-02-17 |
| JP5429572B2 (ja) | 2014-02-26 |
| JP2011505037A (ja) | 2011-02-17 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US8930593B2 (en) | Method for setting parameters and determining latency in a chained device system | |
| CN113535633B (zh) | 一种片上缓存装置和读写方法 | |
| JP5456743B2 (ja) | スイッチマトリックス経由のデータ転送を改善するフロー制御方法 | |
| CN112703489A (zh) | 控制器、存储器件访问系统、电子设备和数据传输方法 | |
| JP4740261B2 (ja) | 通信システム及び通信モジュールの通信リンクや通信システムのノードを経由してメッセージのデータを伝送する方法と、この方法を実現するための通信システム。 | |
| CN112189324B (zh) | 带宽匹配的调度器 | |
| JP2022510803A (ja) | バス上のメモリ要求チェーン | |
| KR100970300B1 (ko) | 통신 모듈의 메시지 메모리의 데이터를 액세스하기 위한 방법 및 장치 | |
| CN108139882A (zh) | 针对网络装置实施阶层分布式链接列表的系统及方法 | |
| US20210152432A1 (en) | Forward Progress Mechanisms for a Communications Network having Multiple Nodes | |
| WO2019084789A1 (zh) | 直接存储器访问控制器、数据读取方法和数据写入方法 | |
| KR100977897B1 (ko) | 메시지 메모리 내에서 메시지를 저장하기 위한 방법 및상응하는 메시지 메모리 | |
| CN113791892A (zh) | 数据通路仲裁方法、数据通路仲裁装置及芯片 | |
| TWI696070B (zh) | 記憶體系統及在網路裝置中實施該記憶體系統之方法,以及網路裝置 | |
| JP2024500477A (ja) | ネットワーク通信リンク上の要求パケットのためのタグ | |
| CN120075291B (zh) | 报文传输方法、装置、电子设备及可读介质 | |
| CN120610929B (zh) | 数据传输方法、装置及虚拟通道路由器 | |
| CN104850515B (zh) | 一种缓存信元数据的方法、装置和设备 | |
| JP4567373B2 (ja) | データ転送装置及び通信データ処理システム | |
| CN121326374A (zh) | 设备数据写入方法、装置、设备、存储介质和程序产品 | |
| CN115964982A (zh) | 加速器的拓扑结构 | |
| CN121924095A (zh) | 缓存数据调度方法、装置、计算机系统和可读存储介质 | |
| CN118838916A (zh) | 一种数据访问方法、系统及设备 | |
| CN120011271A (zh) | 报文传输装置、方法、电子设备及可读介质 | |
| CN120723713A (zh) | 一种芯片、数据处理方法及电子设备 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 08853362 Country of ref document: EP Kind code of ref document: A1 |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 2010534981 Country of ref document: JP |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 08853362 Country of ref document: EP Kind code of ref document: A1 |