CN110727465B - Protocol reconfigurable consistency implementation method based on configuration lookup table - Google Patents

Protocol reconfigurable consistency implementation method based on configuration lookup table Download PDF

Info

Publication number
CN110727465B
CN110727465B CN201910859911.2A CN201910859911A CN110727465B CN 110727465 B CN110727465 B CN 110727465B CN 201910859911 A CN201910859911 A CN 201910859911A CN 110727465 B CN110727465 B CN 110727465B
Authority
CN
China
Prior art keywords
consistency
lookup table
protocol
reconfigurable
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
CN201910859911.2A
Other languages
Chinese (zh)
Other versions
CN110727465A (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.)
Wuxi Jiangnan Computing Technology Institute
Original Assignee
Wuxi Jiangnan Computing Technology Institute
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 Wuxi Jiangnan Computing Technology Institute filed Critical Wuxi Jiangnan Computing Technology Institute
Priority to CN201910859911.2A priority Critical patent/CN110727465B/en
Publication of CN110727465A publication Critical patent/CN110727465A/en
Application granted granted Critical
Publication of CN110727465B publication Critical patent/CN110727465B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3824Operand accessing
    • G06F9/3834Maintaining memory consistency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3867Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines
    • G06F9/3869Implementation aspects, e.g. pipeline latches; pipeline synchronisation and clocking

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

The invention provides a protocol reconfigurable consistency implementation method based on a configuration lookup table, which relates to the technical field of microprocessor design and comprises the following steps: s1: adding a matched consistency state lookup table in the consistency processing logic; s2: judging whether the consistency protocol is modified, if so, writing the parameters into a lookup table, and executing S3; otherwise, directly executing S3; s3: reading hit state information of a current address request in a consistency pipeline processing; s4: the request type and the hit state information of the current request query a lookup table; s5: and performing consistency operation according to the query result, and returning to the step S2. The protocol reconfigurable consistency implementation method based on the configuration lookup table supports the correction or the expansion of a consistency protocol, even different consistency protocols, so as to adapt to different requirements, ensure that the correction or the expansion of the protocol can be realized without changing the hardware design, and even can be corrected into other consistency protocols more suitable for the current subject requirements.

Description

Protocol reconfigurable consistency implementation method based on configuration lookup table
Technical Field
The present invention relates to the field of microprocessor design technology,
in particular, the invention relates to a protocol reconfigurable consistency implementation method based on a configuration lookup table.
Background
With the continuous progress of the processor manufacturing process and the practical application requirements, a multi-core structure has become the development trend of the current high-performance microprocessor, the Cache consistency problem appearing in a multi-core processor system is always the key of research in the current computer system structure, how to solve the Cache consistency problem, that is, how to keep the consistency of multiple copies of data in multiple caches and main memories is the key for realizing a shared storage system, the solution of the Cache consistency problem not only determines the correctness of the system, but also has important influence on the performance of the system, people have proposed a plurality of Cache consistency protocols to solve the Cache consistency problem, the essence of the Cache consistency protocol is a mechanism for spreading the newly written value of one processor to other processors, and in order to realize efficient spreading, the consistency protocol usually needs to consider the following aspects:
1. how to propagate the new value: write invalidate and write update;
2. how to generate the new value: single write protocol and multiple write protocol;
3. when to propagate the new value: timely propagation and delayed propagation;
4. where the new value will propagate: interception protocol and directory protocol;
because the coherence protocol is a complex characteristic of the multi-party protocol, if the scheme design is not considered completely, it is often difficult to correct the design under the condition that the logic design has errors.
Aiming at the access and storage characteristics of different data streams of different application scenes, various consistency protocols based on the directory protocol and consistency protocol families formed by various protocol optimization schemes are provided by the academic community, and the processing capacity or the processing speed of the consistency protocols in the processor is improved from different angles. Generally, a hardware design can only implement a certain coherency protocol.
Therefore, how to design a reasonable protocol reconfigurable consistency implementation method based on a configuration lookup table becomes a problem which needs to be solved urgently at present.
Disclosure of Invention
The invention aims to provide a protocol reconfigurable consistency implementation method based on a configuration lookup table, which can support the correction or the expansion of a consistency protocol, even different consistency protocols, so as to adapt to different requirements of application subjects, can realize the correction or the expansion of the protocol on the premise of ensuring that the hardware design is not changed, and can even be modified into other consistency protocols more suitable for the requirements of the current subject.
In order to achieve the purpose, the invention is realized by adopting the following technical scheme:
a protocol reconfigurable consistency implementation method based on a configuration lookup table comprises the following steps:
s1: adding a matched consistency state lookup table in the consistency processing logic;
s2: judging whether the consistency protocol is modified, if so, converting the consistency protocol to be used into a corresponding lookup table entry value, loading and writing the lookup table entry value into a consistency state lookup table, and executing the step S3; otherwise, directly executing step S3;
s3: reading hit state information of a current address request in a consistency pipeline processing;
s4: directly inquiring a consistency state lookup table by taking the request type and the hit state information of the current request as an inquiry index;
s5: acquiring the resources required to be allocated and the states to be converted, generating required signals and data, performing consistency operation according to the query result, and returning to execute the step S2.
As a preferred embodiment of the present invention, when step S1 is executed, the related actions of each type of request under different hit status information are configured in detail in the consistency status lookup table, including whether to reserve buffer resources, modify the directory and modify the value, whether to send the secondary request and the secondary request type, whether to send the access request and the access request type, and whether to block the subsequent related requests.
Preferably, in step S1, the structure of the coherency state lookup table is designed to be applicable to most common coherency protocols.
Preferably, the step S2 is executed, and the modification of the coherence protocol includes a change and a reconfiguration of the coherence protocol.
Preferably, when step S2 is executed, the manner of modifying the coherency protocol includes modifying and updating the initial value by maintaining a write operation.
Preferably, in step S2, when modifying the consistency protocol, the storage controller and the copy owner need to have supporting hardware logic support for each operation type described by the content of the consistency lookup table.
As a preferred aspect of the present invention, the consistency look-up table needs to have enough reserved resources when performing steps S1 and S2.
As a preferred aspect of the present invention, the consistency state lookup table may not be modified by performing the steps S3 to S5.
The protocol reconfigurable consistency implementation method based on the configuration lookup table has the beneficial effects that: the method can support the correction or the expansion of the consistency protocol, even different consistency protocols to adapt to different requirements of application topics, and can realize the correction or the expansion of the protocol on the premise of ensuring that the hardware design is not changed, even can be modified into other consistency protocols more suitable for the requirements of the current topic.
Drawings
Fig. 1 is a schematic flow chart of a protocol reconfigurable consistency implementation method based on a configuration lookup table according to the present invention.
Detailed Description
The following are specific examples of the present invention and further describe the technical solutions of the present invention, but the present invention is not limited to these examples.
Various exemplary embodiments of the present invention will now be described in detail with reference to the accompanying drawings. It should be noted that: the relative arrangement of the modules and steps set forth in these embodiments and steps do not limit the scope of the invention unless specifically stated otherwise.
Meanwhile, it should be understood that the flows in the drawings are not merely performed individually for convenience of description, but a plurality of steps are performed alternately with each other.
The following description of at least one exemplary embodiment is merely illustrative in nature and is in no way intended to limit the invention, its application, or uses.
Techniques, methods, and systems known to those of ordinary skill in the relevant art may not be discussed in detail, but are intended to be part of the specification where appropriate.
Aiming at the access and storage characteristics of different data streams of different application scenes, various consistency protocols based on a directory protocol and consistency protocol families formed by various protocol optimization schemes are provided by the academic community, and the processing capacity or the processing speed of the consistency protocols in the processor is improved from different angles. Generally, a hardware design can only implement a certain coherency protocol.
Example one
As shown in fig. 1, which is only one embodiment of the present invention, the present invention provides a protocol reconfigurable consistency implementation method based on a configuration lookup table, including the following steps:
a protocol reconfigurable consistency implementation method based on a configuration lookup table comprises the following steps:
s1: adding a matched consistency state lookup table in the consistency processing logic;
because the consistency protocol is a complex characteristic of the multi-party protocol, if the scheme design is not considered completely, the design is often difficult to correct under the condition that the logic design has errors, in order to improve the processing capacity or the processing speed of the consistency protocol in the processor from different angles, the integrity of the consistency processing logic needs to be added from various aspects, and then a matched consistency state lookup table is added in the consistency processing logic.
The consistency state lookup table is configured with the relevant actions of each type of request under different hit state information in detail, including the buffer resource needing to be reserved, whether to modify the directory and the modification value, whether to send the secondary request and the secondary request type, whether to send the access request and the access request type, and whether to block the subsequent relevant request. To ensure the integrity of the coherency handling logic, the associated actions under all hit status information for all types of requests are actually stored.
For example, the storage request types are ReadBlk/ReadBlkI, ReadBlkMod and the like, the hit states are all related actions in the hit state information such as miss, hit clean or hit dirty, each hit state of each request type is stored in one row, all related actions in the hit state of the request type are stored in the row, and each action is recorded as yes or no, so that the administrator can conveniently read and perform consistency operation.
Thus, each Cache can perform a fixed relevant action under a fixed condition (request type determination and hit state determination).
S2: judging whether the consistency protocol is modified, if so, converting the consistency protocol to be used into a corresponding lookup table entry value, loading and writing the lookup table entry value into a consistency state lookup table, and executing the step S3; otherwise, directly executing step S3;
in order to realize configurable attributes, the consistency protocol lookup table supports maintenance of read-write operations, and initial values can be modified or updated through maintenance of write operations, wherein the modification of the consistency protocol comprises change and reconstruction of the consistency protocol, the change refers to the change of a certain related action in a certain hit state of a certain request type, and the reconstruction refers to the change of the request type and the whole initial values of the hit states.
Here, the manner in which the coherency protocol is modified includes modification by maintaining a write operation and updating an initial value. That is, the change of the consistency protocol is modified by the maintenance write operation, and the reconstruction of the consistency protocol is modified by updating the initial value.
S3: reading hit state information of a current address request in a consistency pipeline processing;
s4: directly inquiring a consistency state lookup table by taking the request type and the hit state information of the current request as an inquiry index;
s5: acquiring the resources required to be allocated and the states to be converted, generating required signals and data, performing consistency operation according to the query result, and returning to execute the step S2.
In the process from step S3 to step S5, the way of generating resource demand and control signals in real time in the conventional consistency implementation is changed, after the hit state information of the current address request is read in the consistency pipeline processing, the request type and the hit state information of the current request are used as the query index to directly query the consistency state lookup table, the resources to be allocated, the states to be converted, the signals and data required for generation are found, and the next consistency operation is performed according to the query result.
After the coherency operation is completed, it is necessary to go back to step S2 again, obtain the latest coherency state lookup table, and then perform the coherency operation again for the next set of parameters.
Under the requirement of each different application project, the consistency state lookup table can be queried, and after data is obtained, consistency operation is further executed, so that reusability and application range are increased.
The protocol reconfigurable consistency implementation method based on the configuration lookup table can support the correction or the expansion of the consistency protocol, even different consistency protocols, so as to adapt to different requirements of application topics, ensure that the correction or the expansion of the protocol can be realized on the premise of not changing the hardware design, and even can be corrected into other consistency protocols more suitable for the requirements of the current topic.
Example two
Still referring to fig. 1, still being one embodiment of the present invention, in order to make the protocol reconfigurable consistency implementation method based on the configuration lookup table more convenient in design and higher in applicability of the consistency operation, the present invention further has the following designs:
first, when step S1 is executed, the structure of the coherency state lookup table needs to be designed for most common coherency protocols.
The consistency protocol and the consistency operation which are required by most previous subjects can be executed, and the reusability and the application range of the module are increased.
Then, when step S2 is executed, for each operation content in the configurable consistency look-up table, that is, when the consistency protocol is modified, the storage controller and the copy owner need to have supporting hardware logic support for each operation type described by the content of the consistency look-up table.
Also, the consistency lookup table needs to have enough reserved resources when performing steps S1 and S2.
In order to expand the requirements, the consistency lookup table must have enough reserved resources, so that the consistency lookup table can be modified and re-modified conveniently. For example, if the request type is increased, the index entry is added, and the content of the consistency lookup table under the index entry is newly added, so that the extended support for the new request type can be realized.
Here, the reserved resources reserved by the consistency lookup table are represented in the following specific form:
first, under the premise that the request type is ReadBlk/ReadBlkI, each hit state (whether the hit state is miss, hit clean, hit dirty, etc.) is stored outside a row, at least one row is still left, ensuring the possibility of other hit states that may exist.
And secondly, under the premise that the request type is ReadBlk/ReadBlkI and the hit state is not hit, at least one column is left in each related action in the line except for recording 'yes' or 'no', and the possibility of other hardware or software responses in the state is ensured.
And thirdly, after all the request type records are finished, at least one request type blank item is still reserved, and each item has at least one row for recording all the related actions of the possible request types in different hit states.
Therefore, on the premise of not changing the hardware design, the modification or the extension of the protocol can be realized, and the fault tolerance and the expandability of the hardware design are improved.
Finally, the consistency state lookup table is not modifiable by performing the steps S3 to S5.
That is, the hit state information of the current address request is read in the coherency pipeline processing, the coherency state lookup table is directly queried by using the request type and the hit state information of the current request as query indexes, the resources to be allocated and the states to be converted are obtained, the required signals and data are generated, and the coherency operation is performed according to the query result, wherein the queried coherency state lookup tables are the same, the hit state information of the current address request read in the coherency pipeline processing before modification does not exist, and then the resources to be allocated and the states to be converted are obtained in the coherency state lookup table after modification, the required signals and data are generated, so that the invariability of the coherency state lookup table between the step S3 and the step S5 is ensured, and the finally obtained coherency operation has uniqueness.
If the coherency state lookup table has been modified between performing steps S3 through S5, the current step is terminated, the process returns to step S2, the new coherency state lookup table is repeatedly obtained, and steps S3 through S5 are re-performed.
The protocol reconfigurable consistency implementation method based on the configuration lookup table can support the correction or the expansion of the consistency protocol, even different consistency protocols, so as to adapt to different requirements of application topics, ensure that the correction or the expansion of the protocol can be realized on the premise of not changing the hardware design, and even can be corrected into other consistency protocols more suitable for the requirements of the current topic.
While certain specific embodiments of the present invention have been described in detail by way of illustration, it will be understood by those skilled in the art that the foregoing is illustrative only and is not limiting of the scope of the invention, as various modifications or additions may be made to the specific embodiments described and substituted in a similar manner by those skilled in the art without departing from the scope of the invention as defined in the appending claims. It should be understood by those skilled in the art that any modifications, equivalents, improvements and the like made to the above embodiments in accordance with the technical spirit of the present invention are included in the scope of the present invention.

Claims (7)

1. A protocol reconfigurable consistency implementation method based on a configuration lookup table is characterized by comprising the following steps:
s1: adding a matched consistency state lookup table in the consistency processing logic, wherein the consistency state lookup table is provided with related actions of various types of requests under different hit state information in detail, including buffer resources needing to be reserved, whether to modify a directory and a modification value, whether to send a secondary request and a secondary request type, whether to send a memory access request and a memory access request type and whether to block subsequent related requests;
s2: judging whether the consistency protocol is modified, if so, converting the consistency protocol to be used into a corresponding lookup table entry value, loading and writing the lookup table entry value into a consistency state lookup table, and executing the step S3; otherwise, directly executing step S3;
s3: reading hit state information of a current address request in a consistency pipeline processing;
s4: directly inquiring a consistency state lookup table by taking the request type and the hit state information of the current request as an inquiry index;
s5: acquiring the resources required to be allocated and the states to be converted, generating required signals and data, performing consistency operation according to the query result, and returning to execute the step S2.
2. The method for implementing protocol reconfigurable consistency based on the configuration lookup table according to claim 1, wherein:
the structural design of the coherency state lookup table needs to be suitable for most common coherency protocols when step S1 is performed.
3. The method for implementing protocol reconfigurable consistency based on the configuration lookup table according to claim 1, wherein:
the modification of the coherence protocol includes a change and reconfiguration of the coherence protocol when step S2 is performed.
4. The method for implementing protocol reconfigurable consistency based on the configuration lookup table according to claim 3, wherein:
in executing step S2, the manner of modifying the coherency protocol includes modifying and updating the initial value by maintaining a write operation.
5. The method for implementing protocol reconfigurable consistency based on the configuration lookup table according to claim 1, wherein:
in step S2, when modifying the consistency protocol, the storage controller and the copy owner need to have supporting hardware logic support for each operation type described by the content of the consistency lookup table.
6. The method for implementing protocol reconfigurable consistency based on the configuration lookup table according to claim 1, wherein:
when steps S1 and S2 are executed, the consistency lookup table needs to have enough reserved resources.
7. The method for implementing protocol reconfigurable consistency based on the configuration lookup table according to claim 1, wherein:
the consistency state lookup table is not modifiable after the execution of the steps S3 to S5.
CN201910859911.2A 2019-09-11 2019-09-11 Protocol reconfigurable consistency implementation method based on configuration lookup table Active CN110727465B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910859911.2A CN110727465B (en) 2019-09-11 2019-09-11 Protocol reconfigurable consistency implementation method based on configuration lookup table

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910859911.2A CN110727465B (en) 2019-09-11 2019-09-11 Protocol reconfigurable consistency implementation method based on configuration lookup table

Publications (2)

Publication Number Publication Date
CN110727465A CN110727465A (en) 2020-01-24
CN110727465B true CN110727465B (en) 2021-08-10

Family

ID=69218132

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910859911.2A Active CN110727465B (en) 2019-09-11 2019-09-11 Protocol reconfigurable consistency implementation method based on configuration lookup table

Country Status (1)

Country Link
CN (1) CN110727465B (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102681890A (en) * 2012-04-28 2012-09-19 中国科学技术大学 Restrictive value delivery method and device applied to thread-level speculative parallelism
CN107250993A (en) * 2015-02-23 2017-10-13 英特尔公司 Vectorial cache lines write back processor, method, system and instruction

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8250311B2 (en) * 2008-07-07 2012-08-21 Intel Corporation Satisfying memory ordering requirements between partial reads and non-snoop accesses
US8521995B2 (en) * 2009-12-15 2013-08-27 Intel Corporation Handling operating system (OS) transitions in an unbounded transactional memory (UTM) mode
US9146746B2 (en) * 2011-03-01 2015-09-29 University Of Washington Through Its Center Of Commercialization Systems and methods for providing deterministic execution
CN103150264B (en) * 2013-01-18 2014-09-17 浪潮电子信息产业股份有限公司 Extension Cache Coherence protocol-based multi-level consistency simulation domain verification and test method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102681890A (en) * 2012-04-28 2012-09-19 中国科学技术大学 Restrictive value delivery method and device applied to thread-level speculative parallelism
CN107250993A (en) * 2015-02-23 2017-10-13 英特尔公司 Vectorial cache lines write back processor, method, system and instruction

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Predictable Cache Coherence for Multi-core Real-Time Systems;M. Hassan;《2017 IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS)》;20170608;235-246 *
基于片上网络的众核高速缓存一致性研究;张阿敏;《中国优秀硕士学位论文全文数据库信息科技辑》;20190215(第02期);I135-351 *

Also Published As

Publication number Publication date
CN110727465A (en) 2020-01-24

Similar Documents

Publication Publication Date Title
US10891228B2 (en) Cache line states identifying memory cache
CN103246616B (en) A kind of globally shared buffer replacing method of access frequency within long and short cycle
US20150058570A1 (en) Method of constructing share-f state in local domain of multi-level cache coherency domain system
CN109240945B (en) Data processing method and processor
US11269772B2 (en) Persistent memory storage engine device based on log structure and control method thereof
US11210020B2 (en) Methods and systems for accessing a memory
CN101354682B (en) Apparatus and method for settling access catalog conflict of multi-processor
US8818942B2 (en) Database system with multiple layer distribution
CN111742301A (en) Logging cache inflow to higher level caches by request
WO2018137327A1 (en) Data transmission method for host and standby devices, control node, and database system
CN109582686B (en) Method, device, system and application for ensuring consistency of distributed metadata management
US10733101B2 (en) Processing node, computer system, and transaction conflict detection method
CN105701219A (en) Distributed cache implementation method
CN103076992A (en) Memory data buffering method and device
US20140297966A1 (en) Operation processing apparatus, information processing apparatus and method of controlling information processing apparatus
US11288237B2 (en) Distributed file system with thin arbiter node
US20240086332A1 (en) Data processing method and system, device, and medium
CN112463073A (en) Object storage distributed quota method, system, equipment and storage medium
CN107368435B (en) Simplified directory and method for realizing Cache consistency monitoring by utilizing same
US11687392B2 (en) Method and system for constructing persistent memory index in non-uniform memory access architecture
US20140297957A1 (en) Operation processing apparatus, information processing apparatus and method of controlling information processing apparatus
WO2021240140A2 (en) Core-to-core cache stashing and target discovery
CN110727465B (en) Protocol reconfigurable consistency implementation method based on configuration lookup table
CN111581133A (en) Method, system, equipment and readable medium for multi-core memory consistency
US10846014B2 (en) Concept for group memory write instructions

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant