Duplicate tag structure employing single-port tag RAM and dual-port state RAM
First Claim
1. An apparatus, comprising:
- a single-port memory configured to store tag information associated with a cache memory;
a dual-port memory configured to store state information associated with the cache memory;
a multiplex circuit configured to select one of a first request that includes a tag address, and a second request for access to one or more configuration registers; and
a control circuit coupled to the single-port memory and the dual-port memory, wherein the control circuit is configured to;
access, in response to a selection of the first request, the stored tag information in the single-port memory dependent upon the received tag address;
access, in response to a selection of the second request, the one or more configuration registers;
read the stored state information from the dual-port memory dependent upon the received tag address;
determine if data associated with the tag address is contained in the cache memory dependent upon the accessed stored tag information;
update the read stored state information dependent upon the determination that the data associated with the tag address is contained in the cache memory;
store the updated state information in the dual-port memory; and
read additional stored state information from the dual-port memory in parallel with storing the updated state information.
1 Assignment
0 Petitions
Accused Products
Abstract
An apparatus for processing cache requests in a computing system is disclosed. The apparatus may include a single-port memory, a dual-port memory, and a control circuit. The single-port memory may be store tag information associated with a cache memory, and the dual-port memory may be configured to store state information associated with the cache memory. The control circuit may be configured to receive a request which includes a tag address, access the tag and state information stored in the single-port memory and the dual-port memory, respectively, dependent upon the received tag address. A determination of if the data associated with the received tag address is contained in the cache memory may be made the control circuit, and the control circuit may update and store state information in the dual-port memory responsive to the determination.
13 Citations
19 Claims
-
1. An apparatus, comprising:
-
a single-port memory configured to store tag information associated with a cache memory; a dual-port memory configured to store state information associated with the cache memory; a multiplex circuit configured to select one of a first request that includes a tag address, and a second request for access to one or more configuration registers; and a control circuit coupled to the single-port memory and the dual-port memory, wherein the control circuit is configured to; access, in response to a selection of the first request, the stored tag information in the single-port memory dependent upon the received tag address; access, in response to a selection of the second request, the one or more configuration registers; read the stored state information from the dual-port memory dependent upon the received tag address; determine if data associated with the tag address is contained in the cache memory dependent upon the accessed stored tag information; update the read stored state information dependent upon the determination that the data associated with the tag address is contained in the cache memory; store the updated state information in the dual-port memory; and read additional stored state information from the dual-port memory in parallel with storing the updated state information. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method for operating a duplicate tag unit, comprising:
-
selecting one of a first request and a second request, wherein the first request includes a tag address, and the second request includes a request for access to one or more configuration registers; accessing, in response to selecting the first request, one or more tag memories dependent upon the received tag address, wherein each tag memory of the one or more tag memories contains tag information for a respective one of one or more cache memories; accessing, in response to selecting the second request, the one or more configuration registers; reading state information from one or more state memories dependent upon the received tag address; determining if data associated with the received tag address is contained in the one or more cache memories; updating the state information read from the one or more state memories dependent upon the determination that the data associated with the received tag address is included in the one or more cache memories; storing the updated state information in the one or more state memories; and reading additional state information from the one or more state memories in parallel with storing the updated state information. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A system, comprising:
-
a memory; a coherency unit coupled to the memory; and one or more processors coupled to the coherency unit, wherein each of the one or more processors includes a cache memory; wherein the coherency unit includes; one or more tag memories, wherein each one of the one or more tag memories is configured to store tag information for a respective cache memory of the one or more processors; one or more state memories, wherein each one of the one or more state memories is configured to store state information for a respective cache memory of the one or more processors; a multiplex circuit configured to select one of a first request or a second request, wherein the first request includes a tag address, and the second request includes a request to access one or more configuration registers; a control circuit configured to; access, in response to a selection of the first request, the tag information stored in the one or more tag memories dependent upon the received tag address; access, in response to a selection of the second request, the one or more configuration registers; read state information from the one or more state memories dependent upon the received tag address; determine if the received tag address is contained in the one or more cache memories; updating the state information read from the one or more state memories dependent upon the determination that the received tag address is included in the one or more cache memories; store the updated state information in the one or more state memories; and read additional state information from the one or more state memories in parallel with storing the updated state information. - View Dependent Claims (16, 17, 18, 19)
-
Specification