CN102681946B - Memory access method and device - Google Patents

Memory access method and device Download PDF

Info

Publication number
CN102681946B
CN102681946B CN201210146754.9A CN201210146754A CN102681946B CN 102681946 B CN102681946 B CN 102681946B CN 201210146754 A CN201210146754 A CN 201210146754A CN 102681946 B CN102681946 B CN 102681946B
Authority
CN
China
Prior art keywords
memory
grains
groups
access
request
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.)
Active
Application number
CN201210146754.9A
Other languages
Chinese (zh)
Other versions
CN102681946A (en
Inventor
张广飞
王焕东
陈新科
黄帅
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.)
Loongson Technology Corp Ltd
Original Assignee
Loongson Technology Corp 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 Loongson Technology Corp Ltd filed Critical Loongson Technology Corp Ltd
Priority to CN201210146754.9A priority Critical patent/CN102681946B/en
Publication of CN102681946A publication Critical patent/CN102681946A/en
Application granted granted Critical
Publication of CN102681946B publication Critical patent/CN102681946B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

The invention discloses a memory access method and device. The method comprises the following steps: receiving an access request which is a request for accessing a memory; and according to the access request, accessing the memory by taking a grain group as a unit, wherein the grain group is obtained by grouping memory grains, and each grain group comprises one or a plurality of memory grains. According to the memory access method and device, the problem in the relevant technique that high power consumption is caused because all memory grains at the same Rank need to open and close a page when page conflict happens in the memory accessing process is solved, the effect of reducing memory power consumption is achieved, and furthermore, the performance of a memory system is improved.

Description

Memory pool access method and device
Technical field
The present invention relates to computer realm, in particular to a kind of memory pool access method and device.
Background technology
In existing computer system, the performance of memory system plays a part very important to processor performance.Memory system is primarily of Memory Controller Hub and memory chip composition.Interface between Memory Controller Hub and memory chip is primarily of control bus and data bus composition.Control bus mainly comprises control command and address information.In order to obtain higher memory bandwidth (bandwidth refers within the unit interval, and memory system is supplied to the data volume of processor, usually in units of byte), the data bus between Memory Controller Hub with memory chip is general wider, is generally 64.
Existing memory grain adopts the organizational form of Rank usually, and each Memory Controller Hub can connect multiple Rank, and each Rank is made up of multiple memory grain.Fig. 1 is the structural representation of existing memory system, and in FIG, each particle provides width to be the data bus of 16 (being abbreviated as type x16), then the Rank of 64 needs to be made up of the memory grain of 4 x16.Each memory grain is made up of multiple Bank.Specifically, for DDR3 SDRAM, each memory grain is fixing to be made up of 8 Bank.Each Bank is made up of multiple row (also referred to as page) and a row buffering.When Memory Controller Hub need to read certain data line or write operation time, first memory grain needs the data of this row to move into row buffering, then reads or write operation the row data in row buffering.After completing the reading of data or write operation, need the data in row buffering to carry go back to original position.
Memory Controller Hub controls memory chip by three class memory command usually: open page operations, closed page operation and the operation that reads and writes data.For an access request, if this access request needs the data of access in row buffering, then claim this access request " page hit ".Otherwise, claim this access request " page conflict ".When there is page hit, Memory Controller Hub directly can carry out the operation that reads and writes data in row buffering.When there is page conflict, Memory Controller Hub needs first the row in row buffering to be moved back to original position (closed page), then (opening page) by needing the page of access to move in row buffering, in row buffering, then carrying out the read-write operation of data.Therefore, the access request of page conflict needs the time more more than the access request consumption of page hit.
Existing Memory Controller Hub adopts the mode shown in Fig. 1 usually, in units of Rank, carry out internal storage access.In order to obtain 64 bit data bus, Memory Controller Hub needs to operate all particles on a Rank simultaneously, and in memory access process, the multiple functional unit meetings of possibility access memory system simultaneously, different functional units accesses different pages.In this case memory grain needs to perform page frequently and opens and page shutoff operation, causes serious page conflict, thus makes performance of memory system low.
Fig. 2 is a kind of example that in prior art, memory grain controls, (in fig. 2, Rank is made up of 4 particles, and in the system of reality, each Rank may be made up of the memory grain of different number).Because Memory Controller Hub operates all memory grains simultaneously, all memory grains are all in identical state.When page conflict occurs an access request on a particle, this access request is also inevitable there is page conflict on other particle.Time simultaneously owing to there is page conflict, all memory grains on same Rank all need to carry out page and open and page shutoff operation, consume a large amount of power consumptions, affect the performance of memory system.
For in correlation technique in the process of carrying out internal storage access owing to there is page conflict time, all memory grains on same Rank all need to carry out page and open and page shutoff operation and the problem that causes power consumption large, not yet propose effective solution at present.
Summary of the invention
The invention provides a kind of memory pool access method and device, during to solve in correlation technique in the process of carrying out internal storage access owing to there is page conflict, all memory grains on same Rank all need to carry out page and open and page shutoff operation and the problem that causes power consumption large.
According to an aspect of the present invention, provide a kind of memory pool access method, the method comprises: receive request of access, request of access is the request of access memory; According to request of access access memory in units of groups of grains, wherein, groups of grains is by obtaining memory grain grouping, and each groups of grains comprises one or more memory grain.
Preferably, comprise according to request of access step of access memory in units of groups of grains: obtain the memory address information of carrying in request of access, wherein, memory address packets of information is containing particle address, and particle address is used in reference to the groups of grains to required access; The groups of grains that memory address information memory address information is corresponding according to particle address lookup; Conduct interviews operation in units of the groups of grains inquired.
Preferably, the step operated that conducts interviews in units of the groups of grains inquired comprises: request of access be sent in the command queue corresponding with particle address; Read and the accessing operation indicated by request of access stored in fill order queue.
Preferably, the number of the memory grain comprised in dynamic-configuration groups of grains.
Preferably, by the number of memory grain comprised in groups of configuration registers dynamic-configuration groups of grains, wherein, groups of configuration registers is made up of some configuration registers, comprises following information in configuration register: all memory grain number that memory grain number, groups of grains are numbered and comprised in present granule group.
Preferably, accessing operation comprises: read operation and write operation.
According to a further aspect in the invention, provide a kind of internal storage access device, this device comprises: receiving element, and for receiving request of access, request of access is the request of access memory; Addressed location, for according to request of access access memory in units of groups of grains, wherein, groups of grains is by obtaining memory grain grouping, and each groups of grains comprises one or more memory grain.
Preferably, addressed location comprises: acquisition module, and for obtaining the memory address information of carrying in request of access, wherein, memory address packets of information is containing particle address, and particle address is used in reference to the groups of grains to required access; Enquiry module, the groups of grains corresponding according to particle address lookup; Access modules, for access memory in units of the groups of grains inquired.
Preferably, access modules comprises: send submodule, for request of access to be sent in the command queue corresponding with particle address and to store; Implementation sub-module, for reading and accessing operation in fill order queue indicated by the request of access that stores.
Preferably, this device also comprises: dispensing unit, for the quantity of memory grain comprised by configuration register group configuration groups of grains, wherein, groups of configuration registers is made up of some configuration registers, comprises following information in configuration register: all memory grains that memory grain number, groups of grains are numbered and comprised in present granule group.
In the present invention, reorganize particle with the form of groups of grains, each groups of grains can have one or more memory grains, and such Memory Controller Hub can operate separately each memory grain group.Because each memory command only operates a groups of grains, each groups of grains is made to be in different states.When page conflict occurs an access request in a groups of grains, Memory Controller Hub only carries out page to this groups of grains and opens and page shutoff operation, thus plays the object of saving power consumption.In addition, a Rank is divided into multiple groups of grains, the Bank of each groups of grains opens different pages, can effectively reduce page conflict, when to solve in correlation technique in the process of carrying out internal storage access owing to there is page conflict, all memory grains on same Rank all need to carry out page and open and page shutoff operation and the problem that causes power consumption large, reach the effect reducing power consumption of internal memory, further, the performance of memory system is improved.
Accompanying drawing explanation
Accompanying drawing described herein is used to provide a further understanding of the present invention, and form a application's part, schematic description and description of the present invention, for explaining the present invention, does not form inappropriate limitation of the present invention.In the accompanying drawings:
Fig. 1 is a kind of structural representation of the memory system according to correlation technique;
Fig. 2 is a kind of schematic diagram controlled according to memory grain in correlation technique;
Fig. 3 is according to the preferred process flow diagram of the one of the memory pool access method of the embodiment of the present invention;
Fig. 4 is the preferred schematic diagram of a kind of groups of grains according to the embodiment of the present invention;
Fig. 5 is the schematic diagram of traditional address zoned format;
Fig. 6 is the schematic diagram of the address zoned format according to the embodiment of the present invention;
Fig. 7 is the preferred schematic diagram of the another kind of groups of grains according to the embodiment of the present invention;
Fig. 8 is the preferred schematic diagram of the another kind of groups of grains according to the embodiment of the present invention;
Fig. 9 is the preferred structural representation of one of the internal storage access device according to the embodiment of the present invention;
Figure 10 is the preferred structural representation of another kind of the internal storage access device according to the embodiment of the present invention; And
Figure 11 is another preferred structural representation of the internal storage access device according to the embodiment of the present invention.
Embodiment
Hereinafter also describe the present invention in detail with reference to accompanying drawing in conjunction with the embodiments.It should be noted that, when not conflicting, the embodiment in the application and the feature in embodiment can combine mutually.
Embodiment 1
The invention provides a kind of memory pool access method, specifically, as shown in Figure 3, the method comprises:
S302, receive request of access, request of access is the request of access memory; Preferably, when needs conduct interviews (e.g., reading certain data line or write data) to certain data line, the request of access of request access internal memory is sent to Memory Controller Hub.
S304, according to request of access access memory in units of groups of grains, wherein, groups of grains is by obtaining memory grain grouping, and each groups of grains comprises one or more memory grain.Preferably, memory grain is divided into several groups of grains, each groups of grains comprises one or more memory grains.Specifically, Fig. 4 illustrate a kind of memory grain is divided into groups after a kind of schematic diagram of memory group of obtaining, in the diagram, a Rank is made up of 4 memory grains, reference numeral is memory grain 0, memory grain 1, memory grain 2 and memory grain 3, every two particles form a groups of grains, and the numbering of these two groups of grains is followed successively by a, b, the memory grain number of their correspondences is followed successively by (0,1), (2,3).Each memory grain group can be controlled separately to make Memory Controller Hub.The present invention is that each groups of grains provides special operation circuit.When the value (value of MR is the groups of grains numbering that this access request will be accessed) of MR is 1, the groups of grains at memory grain 1 place is groups of grains a, and thus access request reads or write operation groups of grains a.By this form, invention achieves and divide variable grain group, and control the object of these groups of grains respectively.
Above-mentioned preferred embodiment in, with the form of groups of grains reorganize particle, each groups of grains can have one or more memory grains, and such Memory Controller Hub can operate separately each memory grain group.Because each memory command only operates a groups of grains, each groups of grains is made to be in different states.When page conflict occurs an access request in a groups of grains, Memory Controller Hub only carries out page to this groups of grains and opens and page shutoff operation, thus plays the object of saving power consumption.In addition, a Rank is divided into multiple groups of grains, the Bank of each groups of grains opens different pages, can effectively reduce page conflict, when to solve in correlation technique in the process of carrying out internal storage access owing to there is page conflict, all memory grains on same Rank all need to carry out page and open and page shutoff operation and the problem that causes power consumption large, reach the effect reducing power consumption of internal memory, further, the performance of memory system is improved.
A kind of preferred scheme according to request of access access memory in units of groups of grains is additionally provided in the present embodiment, specifically, the program comprises the steps: to obtain the memory address information of carrying in request of access, wherein, memory address packets of information is containing particle address, and particle address is used in reference to the groups of grains to required access; The groups of grains corresponding according to particle address lookup; Conduct interviews operation in units of the groups of grains inquired.Specifically, after receiving memory access request, first obtain the memory address information of carrying in request of access, traditional address zoned format as shown in Figure 5, memory address can be divided into CS (Chip Select, for selecting Rank), ROW (row address, for selecting row), BA (Bank address, for selecting Bank), COL (column address, for selecting row).According to this address dividing mode, access request is access memory in units of Rank.The present invention proposes a kind of novel way to manage.As shown in Figure 6, memory address can be divided into CS (Chip Select, for selecting Rank), MR (particle address, for selecting groups of grains), ROW (row address, for selecting row), BA (Bank address, for selecting Bank), COL (column address, for selecting row).Wherein, the value of MR is the groups of grains numbering that this access request will be accessed.Determine the groups of grains at the memory address place of required access according to the value of MR, in units of groups of grains, carry out internal storage access.Citing is below specifically described:
Suppose that Addr represents memory access address, original Address Mapping needs memory access address to be translated as Rank address, row address from high to low successively, Bank address, column address and byte address composition.Such as, for 64 memory chips, getting its Rank address has two, and row address is 14, and Bank address is 3, and column address is 10.Then Addr [2:0] is byte address, and Addr [12:3] is column address, and Addr [15:13] is Bank address, and Addr [29:16] is row address, and Addr [31:30] is Rank address.
In the present invention, new address bit is needed to distinguish each particle of composition Rank.Such as, for 64 memory chips, getting its Rank address has two, and row address is 14, and Bank address is 3, and column address is 10.If be divided into four passages, then Addr [0] is byte address, and Addr [10:1] is column address, Addr [13:11] is Bank address, Addr [27:14] is row address, and Addr [29:28] is particle address, and Addr [31:30] is Rank address.Access request, according to particle address, is mail to corresponding command queue by Memory Controller Hub.Command queue is responsible for the access request storing corresponding particle.
The present invention is also optimized said method, and propose a kind of preferred scheme of the operation that conducts interviews in units of the groups of grains inquired, particularly, the program comprises the steps: request of access to be sent in the command queue corresponding with particle address; Read and the accessing operation indicated by request of access stored in fill order queue.Specifically, the memory grain address that Memory Controller Hub is accessed needed for the memory address acquisition of information carried in request of access, request of access is sent to the command queue corresponding with particle address, and command queue is responsible for the request of access storing corresponding particle.The situation being one group of groups of grains with single memory grain below illustrates order transmission and data transmission procedure.
Order sends: original Memory Controller Hub controls separately each Rank, and in the present invention, Memory Controller Hub must increase each Grain size controlling line, for Memory Controller Hub designs each particle controlling separately composition Rank.In addition, Memory Controller Hub is that each particle adds independent state machine (Status Machine, SM).The same with original Rank state machine, the control information of graininess machine record memory grain, sends corresponding memory command to memory grain.
Data are transmitted: each particle can simultaneously respectively to Memory Controller Hub transmission data, the access request that these data are corresponding different respectively.The reception of graininess machine control data and transmission.For reading access request, the data that memory grain is passed back by graininess machine are sent to corresponding command queue, and command queue is responsible for these data to turn back to memory interface.For writing access request, graininess machine will be write data and be sent to memory grain.
In the present invention, the memory grain number in each groups of grains can be identical, also can be different.Particularly, as shown in Figure 7, a Rank is made up of 4 particles, and particle 0 and particle 1 form a groups of grains, and particle 2 and particle 3 form a groups of grains respectively.In order to make Memory Controller Hub can control separately each memory grain group, the present invention is that each groups of grains provides special operation circuit.The numbering of these three groups of grains is followed successively by a, b, c, and the memory grain number of their correspondences is followed successively by (0,1), and 2,3.According to the groups of grains address zoned format that technical scheme 1 proposes, when the value of MR is 0 or 1, access request reads or write operation groups of grains a.When the value of MR is respectively 2 or 3, access request is read and write or write operation groups of grains b and groups of grains c respectively.By this form, invention achieves and divide variable grain group, in each groups of grains, numbers of particles is different, and controls the object of these groups of grains respectively.In actual applications, the memory bandwidth demand of application program is different.The application program that bandwidth demand is higher can use the groups of grains be made up of multiple memory grain, and the application program that bandwidth demand is lower can use the groups of grains be made up of less particle.
The present invention has also carried out further optimization to said method, to reach the object of the quantity of the memory grain that dynamic-configuration groups of grains comprises, in order to achieve the above object, particularly, the quantity of the memory grain comprised by configuration register group configuration groups of grains, wherein, groups of configuration registers is made up of some configuration registers, comprises following information in configuration register: all memory grain number that memory grain number, groups of grains are numbered and comprised in present granule group.Be further described below in conjunction with concrete example:
Fig. 8 illustrates a kind of memory grain tissue, is made up of 4 particles, supposes there are 4 groups of grains in Fig. 8, has a particle in each groups of grains, and each memory grain has special control route.Preferably, in Memory Controller Hub, increase groups of configuration registers, this Parasites Fauna is made up of multiple configuration register, as shown in Table 1:
Table one
Particle is numbered Groups of grains is numbered All particle numberings in groups of grains
Each register is made up of three parts: particle is numbered, the groups of grains numbering that this particle is corresponding, all particle numberings in this groups of grains.In memory access process, Memory Controller Hub inquires about this configuration register according to the value of MR, and know that this access request needs all particle numberings in the groups of grains of access numbering and groups of grains according to the value of MR, access request accesses all particles in this groups of grains.Table two, table three and table four are illustrated respectively and are described Fig. 4, the settings of particle numbering and groups of grains numbering corresponding relation in Fig. 7 and Fig. 8.Table two, table three and table four as follows:
Table two
Particle is numbered Groups of grains is numbered All particle numberings in groups of grains
0 a 0,1
1 a 0,1
2 b 2,3
3 b 2,3
Table three
Particle is numbered Groups of grains is numbered All particle numberings in groups of grains
0 a 0,1
1 a 0,1
2 b 2
3 c 3
Table four
Particle is numbered Groups of grains is numbered All particle numberings in groups of grains
0 a 0
1 b 1
2 c 2
3 d 3
In table two, when MR is 0, this access request access memory access group a, memory access group a is made up of memory grain 0 and memory grain 1, and this access request is according to Query Result access particle 0 and particle 1; In table three, when MR is 0, this access request access memory access group a, memory access group a is made up of memory grain 0 and memory grain 1, and this access request is according to Query Result access particle 0 and particle 1; In table four, when MR is 0, this access request access memory access group a, memory access group a is made up of memory grain 0, and this access request is according to Query Result access particle 0.Can realize the number of memory grain in dynamic-configuration groups of grains according to the method described above, in actual applications, the memory bandwidth demand of application program is different.The application program that bandwidth demand is higher can use the groups of grains be made up of multiple memory grain, and the application program that bandwidth demand is lower can use the groups of grains be made up of less particle.
Embodiment 2
Based on the memory pool access method described in above-described embodiment 1, present invention also offers a kind of internal storage access device, specifically, as shown in Figure 9, this device comprises: receiving element 902, and for receiving request of access, request of access is the request of access memory; Preferably, when needs conduct interviews (e.g., reading certain data line or write data) to certain data line, the request of access of request access internal memory is sent to Memory Controller Hub.Addressed location 904, for according to request of access access memory in units of groups of grains, wherein, groups of grains is by obtaining memory grain grouping, and each groups of grains comprises one or more memory grain.Specifically, Fig. 4 illustrate a kind of memory grain is divided into groups after a kind of schematic diagram of memory group of obtaining, in the diagram, a Rank is made up of 4 memory grains, reference numeral is memory grain 0, memory grain 1, memory grain 2 and memory grain 3, every two particles form a groups of grains, and the numbering of these two groups of grains is followed successively by a, b, the memory grain number of their correspondences is followed successively by (0,1), (2,3).Each memory grain group can be controlled separately to make Memory Controller Hub.The present invention is that each groups of grains provides special operation circuit.When the value (value of MR is the groups of grains numbering that this access request will be accessed) of MR is 1, the groups of grains at memory grain 1 place is groups of grains a, and thus access request reads or write operation groups of grains a.By this form, invention achieves and divide variable grain group, and control the object of these groups of grains respectively.
Above-mentioned preferred embodiment in, with the form of groups of grains reorganize particle, each groups of grains can have one or more memory grains, and such Memory Controller Hub can operate separately each memory grain group.Because each memory command only operates a groups of grains, each groups of grains is made to be in different states.When page conflict occurs an access request in a groups of grains, Memory Controller Hub only carries out page to this groups of grains and opens and page shutoff operation, thus plays the object of saving power consumption.In addition, a Rank is divided into multiple groups of grains, the Bank of each groups of grains opens different pages, can effectively reduce page conflict, when to solve in correlation technique in the process of carrying out internal storage access owing to there is page conflict, all memory grains on same Rank all need to carry out page and open and page shutoff operation and the problem that causes power consumption large, reach the effect reducing power consumption of internal memory, further, the performance of memory system is improved.
The present invention also improves above-mentioned addressed location 904, to realize root according to request of access access memory in units of groups of grains, for achieving the above object, specifically, as shown in Figure 10, addressed location 904 comprises: acquisition module 1002, for obtaining the memory address information of carrying in request of access, wherein, memory address packets of information is containing particle address, and particle address is used in reference to the groups of grains to required access; Enquiry module 1004, for the groups of grains corresponding according to particle address lookup; Access modules 1006, for the operation that conducts interviews in units of the groups of grains inquired.
Specifically, after receiving memory access request, first obtain the memory address information of carrying in request of access, traditional address zoned format as shown in Figure 5, memory address can be divided into CS (Chip Select, for selecting Rank), ROW (row address, for selecting row), BA (Bank address, for selecting Bank), COL (column address, for selecting row).According to this address dividing mode, access request is access memory in units of Rank.The present invention proposes a kind of novel way to manage.As shown in Figure 6, memory address can be divided into CS (Chip Select, for selecting Rank), MR (particle address, for selecting groups of grains), ROW (row address, for selecting row), BA (Bank address, for selecting Bank), COL (column address, for selecting row).Wherein, the value of MR is the groups of grains numbering that this access request will be accessed.Determine the groups of grains at the memory address place of required access according to the value of MR, in units of groups of grains, carry out internal storage access.Citing is below specifically described:
Suppose that Addr represents memory access address, original Address Mapping needs memory access address to be translated as Rank address, row address from high to low successively, Bank address, column address and byte address composition.Such as, for 64 memory chips, getting its Rank address has two, and row address is 14, and Bank address is 3, and column address is 10.Then Addr [2:0] is byte address, and Addr [12:3] is column address, and Addr [15:13] is Bank address, and Addr [29:16] is row address, and Addr [31:30] is Rank address.
In the present invention, new address bit is needed to distinguish each particle of composition Rank.Such as, for 64 memory chips, getting its Rank address has two, and row address is 14, and Bank address is 3, and column address is 10.If be divided into four passages, then Addr [0] is byte address, and Addr [10:1] is column address, Addr [13:11] is Bank address, Addr [27:14] is row address, and Addr [29:28] is particle address, and Addr [31:30] is Rank address.Access request, according to particle address, is mail to corresponding command queue by Memory Controller Hub.Command queue is responsible for the access request storing corresponding particle.
Preferably, as shown in figure 11, access modules 1006 comprises: send submodule 1102, for request of access being sent in the command queue corresponding with particle address; Implementation sub-module 1104, for reading and accessing operation in fill order queue indicated by the request of access that stores.
Specifically, the memory grain address that Memory Controller Hub is accessed needed for the memory address acquisition of information carried in request of access, request of access is sent to the command queue corresponding with particle address, and command queue is responsible for the request of access storing corresponding particle.The situation being one group of groups of grains with single memory grain below illustrates order transmission and data transmission procedure.
Order sends: original Memory Controller Hub controls separately each Rank, and in the present invention, Memory Controller Hub must increase each Grain size controlling line, for Memory Controller Hub designs each particle controlling separately composition Rank.In addition, Memory Controller Hub is that each particle adds independent state machine (Status Machine, SM).The same with original Rank state machine, the control information of graininess machine record memory grain, sends corresponding memory command to memory grain.
Data are transmitted: each particle can simultaneously respectively to Memory Controller Hub transmission data, the access request that these data are corresponding different respectively.The reception of graininess machine control data and transmission.For reading access request, the data that memory grain is passed back by graininess machine are sent to corresponding command queue, and command queue is responsible for these data to turn back to memory interface.For writing access request, graininess machine will be write data and be sent to memory grain.
In the present invention, the memory grain number in each groups of grains can be identical, also can be different.Particularly, as shown in Figure 7, a Rank is made up of 4 particles, and particle 0 and particle 1 form a groups of grains, and particle 2 and particle 3 form a groups of grains respectively.In order to make Memory Controller Hub can control separately each memory grain group, the present invention is that each groups of grains provides special operation circuit.The numbering of these three groups of grains is followed successively by a, b, c, and the memory grain number of their correspondences is followed successively by (0,1), and 2,3.According to the groups of grains address zoned format that technical scheme 1 proposes, when the value of MR is 0 or 1, access request reads or write operation groups of grains a.When the value of MR is respectively 2 or 3, access request is read and write or write operation groups of grains b and groups of grains c respectively.By this form, invention achieves and divide variable grain group, in each groups of grains, numbers of particles is different, and controls the object of these groups of grains respectively.In actual applications, the memory bandwidth demand of application program is different.The application program that bandwidth demand is higher can use the groups of grains be made up of multiple memory grain, and the application program that bandwidth demand is lower can use the groups of grains be made up of less particle.
The present invention is also optimized said apparatus, particularly, this device also comprises: dispensing unit, for the quantity of memory grain comprised by configuration register group configuration groups of grains, wherein, groups of configuration registers is made up of some configuration registers, comprises following information in configuration register: all memory grains that memory grain number, groups of grains are numbered and comprised in present granule group.。Be further described below in conjunction with concrete example:
Fig. 8 illustrates a kind of memory grain tissue, is made up of 4 particles, supposes there are 4 groups of grains in Fig. 8, has a particle in each groups of grains, and each memory grain has special control route.Preferably, in Memory Controller Hub, increase groups of configuration registers, this Parasites Fauna is made up of multiple configuration register, as shown in Table 1, each register is made up of three parts: particle is numbered, the groups of grains numbering that this particle is corresponding, all particle numberings in this groups of grains.In memory access process, Memory Controller Hub inquires about this configuration register according to the value of MR, and know that this access request needs all particle numberings in the groups of grains of access numbering and groups of grains according to the value of MR, access request accesses all particles in this groups of grains.Table two, table three and table four are illustrated respectively and are described Fig. 4, the settings of particle numbering and groups of grains numbering corresponding relation in Fig. 7 and Fig. 8.In table two, when MR is 0, this access request access memory access group a, memory access group a is made up of memory grain 0 and memory grain 1, and this access request is according to Query Result access particle 0 and particle 1; In table three, when MR is 0, this access request access memory access group a, memory access group a is made up of memory grain 0 and memory grain 1, and this access request is according to Query Result access particle 0 and particle 1; In table four, when MR is 0, this access request access memory access group a, memory access group a is made up of memory grain 0, and this access request is according to Query Result access particle 0.Can realize the number of memory grain in dynamic-configuration groups of grains according to the method described above, in actual applications, the memory bandwidth demand of application program is different.The application program that bandwidth demand is higher can use the groups of grains be made up of multiple memory grain, and the application program that bandwidth demand is lower can use the groups of grains be made up of less particle.
As can be seen from the above description, reorganize particle with the form of groups of grains, each groups of grains can have one or more memory grains, and such Memory Controller Hub can operate separately each memory grain group.Because each memory command only operates a groups of grains, each groups of grains is made to be in different states.When page conflict occurs an access request in a groups of grains, Memory Controller Hub only carries out page to this groups of grains and opens and page shutoff operation, thus plays the object of saving power consumption.In addition, a Rank is divided into multiple groups of grains, the Bank of each groups of grains opens different pages, can effectively reduce page conflict, when to solve in correlation technique in the process of carrying out internal storage access owing to there is page conflict, all memory grains on same Rank all need to carry out page and open and page shutoff operation and the problem that causes power consumption large, reach the effect reducing power consumption of internal memory, further, the performance of memory system is improved.
Obviously, those skilled in the art should be understood that, above-mentioned of the present invention each module or each step can realize with general calculation element, they can concentrate on single calculation element, or be distributed on network that multiple calculation element forms, alternatively, they can realize with the executable program code of calculation element, thus, they can be stored and be performed by calculation element in the storage device, and in some cases, step shown or described by can performing with the order be different from herein, or they are made into each integrated circuit modules respectively, or the multiple module in them or step are made into single integrated circuit module to realize.Like this, the present invention is not restricted to any specific hardware and software combination.
The foregoing is only the preferred embodiments of the present invention, be not limited to the present invention, for a person skilled in the art, the present invention can have various modifications and variations.Within the spirit and principles in the present invention all, any amendment done, equivalent replacement, improvement etc., all should be included within protection scope of the present invention.

Claims (10)

1. a memory pool access method, is characterized in that, comprising:
Receive request of access, described request of access is the request of access memory;
According to described request of access in units of groups of grains access memory with make when an access request occur in a groups of grains page conflict time, Memory Controller Hub only carries out page to the groups of grains that page conflict occurs and opens and page shutoff operation, wherein, described groups of grains is by obtaining memory grain grouping, and each groups of grains comprises one or more memory grain.
2. method according to claim 1, is characterized in that, comprises according to described request of access step of access memory in units of groups of grains:
Obtain the memory address information of carrying in request of access, wherein, described memory address packets of information is containing particle address, and described particle address is used in reference to the groups of grains to required access;
The groups of grains corresponding according to described particle address lookup;
Conduct interviews operation in units of the groups of grains inquired.
3. method according to claim 2, is characterized in that, the step of the operation that conducts interviews in units of the groups of grains inquired comprises:
Described request of access is sent in the command queue corresponding with described particle address;
Read and perform the accessing operation indicated by request of access stored in described command queue.
4. method according to claim 1, is characterized in that, the number of the memory grain comprised in groups of grains described in dynamic-configuration.
5. method according to claim 4, it is characterized in that, by the number of memory grain comprised in groups of grains described in groups of configuration registers dynamic-configuration, wherein, described groups of configuration registers is made up of some configuration registers, comprises following information in described configuration register: all memory grain number that memory grain number, groups of grains are numbered and comprised in present granule group.
6. according to the method in claim 2 or 3, it is characterized in that, described accessing operation comprises: read operation and write operation.
7. an internal storage access device, is characterized in that, comprising:
Receiving element, for receiving request of access, described request of access is the request of access memory;
Addressed location, for according to described request of access in units of groups of grains access memory with make when an access request occur in a groups of grains page conflict time, Memory Controller Hub only carries out page to the groups of grains that page conflict occurs and opens and page shutoff operation, wherein, described groups of grains is by obtaining memory grain grouping, and each groups of grains comprises one or more memory grain.
8. device according to claim 7, is characterized in that, described addressed location comprises:
Acquisition module, for obtaining the memory address information of carrying in request of access, wherein, described memory address packets of information is containing particle address, and described particle address is used in reference to the groups of grains to required access;
Enquiry module, for the groups of grains corresponding according to described particle address lookup;
Access modules, for access memory in units of the groups of grains inquired.
9. device according to claim 8, is characterized in that, described access modules comprises:
Send submodule, for described request of access to be sent in the command queue corresponding with described particle address and to store;
Implementation sub-module, for performing the accessing operation indicated by the request of access that stores in described command queue.
10. device according to claim 7, is characterized in that, also comprises:
Dispensing unit, for the quantity of memory grain comprised by groups of grains described in configuration register group configuration, wherein, described groups of configuration registers is made up of some configuration registers, comprises following information in described configuration register: all memory grains that memory grain number, groups of grains are numbered and comprised in present granule group.
CN201210146754.9A 2012-05-11 2012-05-11 Memory access method and device Active CN102681946B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210146754.9A CN102681946B (en) 2012-05-11 2012-05-11 Memory access method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210146754.9A CN102681946B (en) 2012-05-11 2012-05-11 Memory access method and device

Publications (2)

Publication Number Publication Date
CN102681946A CN102681946A (en) 2012-09-19
CN102681946B true CN102681946B (en) 2015-03-11

Family

ID=46813908

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210146754.9A Active CN102681946B (en) 2012-05-11 2012-05-11 Memory access method and device

Country Status (1)

Country Link
CN (1) CN102681946B (en)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9892026B2 (en) * 2013-02-01 2018-02-13 Ab Initio Technology Llc Data records selection
CN104252422A (en) * 2013-06-26 2014-12-31 华为技术有限公司 Memory access method and memory controller
CN104699638B (en) * 2013-12-05 2017-11-17 华为技术有限公司 Memory pool access method and internal storage access device
US11487732B2 (en) 2014-01-16 2022-11-01 Ab Initio Technology Llc Database key identification
CN104851454A (en) * 2014-02-13 2015-08-19 华为技术有限公司 Method and device for processing control signal and variable memory
CN105701020B (en) * 2014-11-28 2018-11-30 华为技术有限公司 A kind of method of internal storage access, relevant apparatus and system
WO2018094620A1 (en) 2016-11-23 2018-05-31 华为技术有限公司 Memory allocation method and apparatus
CN106776173B (en) * 2016-12-15 2019-09-17 郑州云海信息技术有限公司 A kind of internal-memory detection method and device
CN108446241B (en) * 2017-02-16 2020-12-08 华为技术有限公司 Memory access method and device
US11068540B2 (en) 2018-01-25 2021-07-20 Ab Initio Technology Llc Techniques for integrating validation results in data profiling and related systems and methods
CN109284231B (en) * 2018-07-24 2023-05-23 江苏微锐超算科技有限公司 Memory access request processing method and device and memory controller
CN109408407B (en) * 2018-10-19 2021-08-03 龙芯中科技术股份有限公司 Display memory allocation method and device

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101021814A (en) * 2007-03-16 2007-08-22 华为技术有限公司 Storage and polling method and storage controller and polling system
CN102402490A (en) * 2010-09-16 2012-04-04 苹果公司 Multi-ported memory controller with ports associated with traffic classes

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6944731B2 (en) * 2001-12-19 2005-09-13 Agere Systems Inc. Dynamic random access memory system with bank conflict avoidance feature
JP4463503B2 (en) * 2003-07-15 2010-05-19 株式会社ルネサステクノロジ Memory module and memory system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101021814A (en) * 2007-03-16 2007-08-22 华为技术有限公司 Storage and polling method and storage controller and polling system
CN102402490A (en) * 2010-09-16 2012-04-04 苹果公司 Multi-ported memory controller with ports associated with traffic classes

Also Published As

Publication number Publication date
CN102681946A (en) 2012-09-19

Similar Documents

Publication Publication Date Title
CN102681946B (en) Memory access method and device
CN102177550B (en) Independently controlled virtual memory devices in memory modules
US20110055495A1 (en) Memory Controller Page Management Devices, Systems, and Methods
EP2313890B1 (en) Independently controllable and reconfigurable virtual memory devices in memory modules that are pin-compatible with standard memory modules
US9965222B1 (en) Software mode register access for platform margining and debug
US20100106935A1 (en) Pretranslating Input/Output Buffers In Environments With Multiple Page Sizes
CN102356385B (en) Memory access controller, systems, and methods for optimizing memory access times
CN103914405B (en) System on chip and its storage address conversion method including MMU memory management unit
CN102073461B (en) Input-output request scheduling method, memory controller and memory array
CN104850501B (en) A kind of DDR memory memory access address mapping method and memory access address mapping unit
US8639891B2 (en) Method of operating data storage device and device thereof
US7970960B2 (en) Direct memory access controller and data transmitting method of direct memory access channel
JPWO2006051780A1 (en) Nonvolatile memory device and method of accessing nonvolatile memory device
CN105408875A (en) Distributed procedure execution and file systems on a memory interface
CN111158633A (en) DDR3 multichannel read-write controller based on FPGA and control method
CN104252422A (en) Memory access method and memory controller
CN101836194A (en) The optimal solution of control data channel
CN101719104A (en) Control system and control method of synchronous dynamic memory
EP2998867B1 (en) Data writing method and memory system
US8261023B2 (en) Data processor
CN110537172B (en) Hybrid memory module
US20240036754A1 (en) Adjustable access energy and access latency memory system and devices
CN101236741A (en) Data reading and writing method and device
CN102243611A (en) Data storage method and system
CN102163320B (en) Configurable memory management unit (MMU) circuit special for image processing

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 100095 Building 2, Longxin Industrial Park, Zhongguancun environmental protection technology demonstration park, Haidian District, Beijing

Patentee after: Loongson Zhongke Technology Co.,Ltd.

Address before: 100190 No. 10 South Road, Zhongguancun Academy of Sciences, Haidian District, Beijing

Patentee before: LOONGSON TECHNOLOGY Corp.,Ltd.