IP Library Granted Patent US 9,208,100
Granted Patent B2
US 9,208,100 · App. 13/682,891 · Granted Dec 8, 2015

Directory replacement method and device

Inventors: Ce Yao (Hangzhou, CN); Yafei Zhao (Hangzhou, CN); Jianrong Xu (Hangzhou, CN)
Assignee: Huawei Technologies Co., Ltd.
G06F12/0891G06F12/082G06F12/0831G06F12/12
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,208,100
App. No.
13/682,891
Granted
Dec 8, 2015
Kind
B2
Abstract

The present invention provides a directory replacement method and device. An HA receives a data access request including a first address from a first CA, if a designated storage where a directory is located is entirely occupied by the directory, and a first directory entry corresponding to the first address is not in the directory, the HA selects a second directory entry from the directory, deletes it and adds the first directory entry into the directory; before the HA replaces the directory entry in the directory, no matter what status (for example, I status, S status or A status) a share status of a cache line corresponding to an address in the directory entry to be replaced is, the HA does not need to request a corresponding CA to perform an invalidating operation on data, but directly replaces the directory entry in the directory, thereby improving replacement efficiency.

Claims (23)

1. A directory replacement method, comprising:

receiving, by a home agent, a data access request from a first cache agent, the data access request comprising a first address corresponding to a first directory entry;

selecting, by the home agent, a second directory entry from a directory if a designated storage with preset capacity is entirely occupied by the directory, and the first directory entry corresponding to the first address is not in the directory, wherein an address for the second directory entry is a third address when a quantity of second cache agents whose share status to a cache line corresponding to the third address is S status is the largest; and

deleting, by the home agent, the second directory entry from the directory, and adding the first directory entry corresponding to the first address into the directory.

2. The method according to claim 1 , wherein the data access request is a share data request, and the method further comprises:

broadcasting, by the home agent, a first snoop request message to all second cache agents to request for obtaining information of a share status of each second cache agent to a cache line corresponding to the first address;

receiving, by the home agent, a response message from each the second cache agent, wherein the response message includes the share status of the second cache agent to the cache line corresponding to the first address; and

providing, by the home agent, data corresponding to the first address to the first cache agent.

3. The method according to claim 1 , wherein the data access request is an exclusive data request, and the method further comprises:

broadcasting, by the home agent, a second snoop request message to all second cache agents to request each second cache agents perform an invalidating operation on a cache line corresponding to the first address shared by the second cache agents; and

providing, by the home agent, data corresponding to the first address to the first cache agent, or writing, by the home agent, new data into a cache line corresponding to the first address.

4. The method according to claim 1 , wherein the data access request is an exclusive data request, and the method further comprises:

broadcasting, by the home agent, a second snoop request message to all the second cache agents to request each the second cache agents perform an invalidating operation on a cache line corresponding to the first address shared by the second cache agents; and

writing, by the home agent, new data into a cache line corresponding to the first address.

5. A directory replacement device, comprising:

a processor configured to:

receive a data access request from a first cache agent, the data access request comprising a first address corresponding to a first directory entry;

select a second directory entry from the directory if a designated storage with preset capacity is entirely occupied by the directory and the first directory entry corresponding to the first address is not in the directory, wherein an address for the second directory entry is a third address when a quantity of second cache agents whose share status to a cache line corresponding to the third address is S status is the largest; and

delete the second directory entry from the directory, and add the first directory entry corresponding to the first address into the directory.

6. The device according to claim 5 , wherein the data access request is a share data request, and the processor is configured to broadcast a first snoop request message to all second cache agents to request for obtaining information of a share status of each second cache agent to a cache line corresponding to the first address; receive a response message from each the second cache agent, wherein the response message includes the share status of the second cache agent to the cache line corresponding to the first address; and provide data corresponding to the first address to the first cache agent.

7. The device according to claim 5 , wherein the data access request is an exclusive data request, and the processor is configured to broadcast a second snoop request message to all second cache agents to request each second cache agents to perform an invalidating operation on a cache line corresponding to the first address shared by the second cache agents, and provide data corresponding to the first address to the first cache agent, or writing, by the home agent, new data into a cache line corresponding to the first address.

8. The device according to claim 5 , wherein the data access request is an exclusive data request, and the processor is configured broadcast a second snoop request message to all the second cache agents to request each the second cache agents perform an invalidating operation on a cache line corresponding to the first address shared by the second cache agents;

writing, by the home agent, new data into a cache line corresponding to the first address.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 10, 2022
From: HUAWEI TECHNOLOGIES CO., LTD.
To: XFUSION DIGITAL TECHNOLOGIES CO., LTD.
Reel/Frame 058682/0312 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 25, 2013
From: YAO, CE; ZHAO, YAFEI; XU, JIANRONG
To: HUAWEI TECHNOLOGIES CO., LTD.
Reel/Frame 029695/0791 →
Priority Claims (1)
CN 2011 1 0405795 · Dec 8, 2011 · national
Continuity (1)
Related Publication 20130151785A1 · Jun 13, 2013