Parte del contenido de esta aplicación no está disponible en este momento.
Si esta situación persiste, contáctenos aComentarios y contacto
1. (WO2019046268) CACHE LINE DATA
Nota: Texto obtenido mediante procedimiento automático de reconocimiento óptico de caracteres.
Solo tiene valor jurídico la versión en formato PDF

What is claimed is:

1. An apparatus, comprising:

a cache controller; and

a cache and a memory device coupled to the cache controller, wherein the cache controller is configured to issue commands to cause the cache to:

store data in a number of cache lines in the cache, wherein each of the number of cache lines includes a number of chunks of data that are individually accessible.

2. The apparatus of claim 1, wherein each of the number of cache lines includes metadata, chunk metadata, tag information, and the number of chunks of data,

3. The apparatus of any one of claims 1 -2, wherein the cache controller is configured to cause the cache to access a portion of the number of chunks of data in a particular cache entry while executing a command.

4. The apparatus of claim 1, wherein each of the number of cache lines includes metadata that is managed using a buffer on the cache controller.

5. The apparatus of any one of claims 1, 2, and 4, wherein each of the number of cache lines includes chunk metadata that is managed and updated by the cache controller as commands are executed.

6. An apparatus, comprising:

a cache controller; and

a cache and a memory device coupled to the cache controller, wherein the cache controller is configured to issue commands to cause the cache to:

access a number of chunks of data in a cache line of the cache in response to receiving a request, wherein the cache controller manages the request using a buffer on the cache controller and the cache controller services the request by returning a portion of the number of chunks of data in the cache line corresponding to the request.

7. The apparatus of claim 6, wherein the cache controller is configured to issue commands to cause the cache to return the portion of the number of chunks of data corresponding to the request that were in the cache line when the request was received in response to cache controller determining the request is a hit.

8. The apparatus of any one of claims 6-7, wherein the cache controller is configured to issue commands to cause the cache to retrieve the portion of the number of chunks of data corresponding to the request from the memory device in response to cache controller determining the request is a miss.

9. An apparatus, comprising:

a cache controller; and

a cache and a memory device coupled to the cache controller, wherein the cache controller is configured to:

receive requests from a host;

manage the requests using a buffer on the cache controller; and sendee commands by returning chunks of data from cache lines of the cache to the host, wherein the chunks of data are a portion of the data from the cache lines.

10. The apparatus of claim 10, wherein the cache controller is configured to prioritize particular chunks of data that will not be evicted from the cache lines.

11. The apparatus of any one of claims 9-10, wherein the cache controller is configured to write the chunks of data from the memory device to the cache prior to receiving a request for the chunks of data.

2. The apparatus of claim 9, wherein the cache controller is configured to write dirty chunks of data to the memory device when not servicing commands.

13. The apparatus of any one of claims 9, 10, and 12, wherein the cache controller is configured to select chunks of data to remain in the cache based on a command from the host.

14. A method, comprising;

receiving a request for data at a cache controller;

determining whether data associated with the request is in a cache using a buffer on the cache controller; and

servicing the request, in response to determining the request is a hit, by returning a number of chunks of data from a cache line indicated by the buffer, wherein the number of chunks of data is a portion of the data on the cache line.

15. The method of claim 14, further including servicing the request, in response to determining the request is a miss, by writing a number of chunks of data associated with the request from a memory device to a cache line indicated by the buffer,

16. The method of claim 15, further including servicing the request, in response to determining the request is a miss, by returning a number of chunks of data from a cache line indicated by the buffer.

17. The method of any one of claims 14-16, further including servicing the request, in response to determining the request is a miss, by writing a number of dirty chunks of data in the cache line to a memory device coupled to the cache and the cache controller that were in the cache line when the request was received.

18. The method of any one of claims 14-16, further including servicing the request, in response to determining the request is a miss, by selecting the cache line based upon the cache line having fewer dirty chunks than other cache lines in the cache.

19. The method of any one of claims 14-16, further including servicing the request, in response to determining the request is a hit, by replacing a number of chunks of data in the cache line that are not associated with the request and were invalid when the request was received.

iz

20. The method of claim 14, wherein servicing the request includes updating chunk metadata associated with the number of chunks of data.

21. The method of any one of claims 14-16 and 20, further including accessing a portion of the number of chunks of data in a parti cular cache entry while executing a command.

22. The method of any one of claims 14-16 and 20, further including managing the data in the cache using the buffer on the cache controller.

23. The method of any one of claims 14-16 and 20, further including managing chunk metadata by the cache controller as commands are executed.