Back to results
US 10,120,809 B2Granted
Method, apparatus, and system for allocating cache using traffic class
AssigneeIntel Corporation
InventorsPhilip C. Arellano, James A. Coleman
Life of this patent
Estimating the term…
Abstract
This disclosure pertains to using traffic classes to selectively store data into cache memory or into system memory. A cache controller can map the traffic class of incoming data to portions of the cache memory allocated for corresponding traffic classes of data.
Claims16
An apparatus comprising:
- logic, implemented at least in part in hardware, to:
- receive a data packet, the data packet comprising data,
- determine a traffic class of the data packet, wherein the traffic class is used to differentiate data packets having a high priority traffic class from data packets having a low priority traffic class, and
- selectively store the data directly into one of cache memory or system memory based on the traffic class of the data packet;
- wherein the data packet comprises a packet header, the packet header comprising a transaction descriptor field, the transaction descriptor field comprising the traffic class of the data packet, and wherein the traffic class is a Peripheral Component Interconnect Express (PCIe) Transaction Layer Packet (TLP) label of the data packet;
- and
- wherein the traffic class comprises an indication of a traffic class, the indication of the traffic class comprising one of a TC0 traffic class indication, a TC1 traffic class indication, a TC2 traffic class indication, a TC3 traffic class indication, a TC4 traffic class indication, a TC5 traffic class indication, a TC6 traffic class indication, or a TC7 traffic class indication;
- wherein the cache memory comprises a class of service waymask register, the class of service waymask register comprising bits corresponding to a traffic class mapping and used to identify ways of the cache memory for storing data of data packets having a traffic class mapped to a corresponding class of service, and wherein each class of service corresponds to a waymask of the cache memory, and wherein the apparatus further comprises circuitry to selectively store data of data packets into the cache memory based on the waymask corresponding to the class of service.
5 more elements
A system comprising:
- a cache memory;
- a system memory;
- and
- a cache controller logic, implemented at least in part in hardware, to:
- receive a data packet from a network interface controller, the network interface controller to receive the data packet from a peripheral device;
- determine a traffic class of the data packet;
- and
- selectively store the data packet directly into the cache memory or into the system memory based on the traffic class of the data packet;
- wherein the data packet comprises a packet header, the packet header comprising a transaction descriptor field, the transaction descriptor field comprising the traffic class of the data packet, and wherein the traffic class is a Peripheral Component Interconnect Express (PCIe) Transaction Layer Packet (TLP) label of the data packet;
- and
- wherein the traffic class comprises an indication of a traffic class, the indication of the traffic class comprising one of a TC0 traffic class indication, a TC1 traffic class indication, a TC2 traffic class indication, a TC3 traffic class indication, a TC4 traffic class indication, a TC5 traffic class indication, a TC6 traffic class indication, or a TC7 traffic class indication;
- wherein the cache memory comprises a class of service waymask register, the class of service waymask register comprising bits corresponding to a traffic class mapping and used to identify ways of the cache memory for storing data of data packets having a traffic class mapped to a corresponding class of service, and wherein each class of service corresponds to a waymask of the cache memory, and wherein the system further comprises circuitry to selectively store data of data packets into the cache memory based on the waymask corresponding to the class of service.
9 more elements
A method comprising:
- receiving, by logic, implemented at least in part in hardware;
- determining a traffic class of the data packet, wherein the traffic class identifies whether the data packet comprises a high priority traffic class or a low priority traffic class;
- and
- selectively storing the data packet directly into cache memory or into system memory based on the traffic class of the data packet;
- wherein the data packet comprises a packet header, the packet header comprising a transaction descriptor field, the transaction descriptor field comprising the traffic class of the data packet, and wherein the traffic class is a Peripheral Component Interconnect Express (PCIe) Transaction Layer Packet (TLP) label of the data packet;
- and
- wherein the traffic class comprises an indication of a traffic class, the indication of the traffic class comprising one of a TC0 traffic class indication, a TC1 traffic class indication, a TC2 traffic class indication, a TC3 traffic class indication, a TC4 traffic class indication, a TC5 traffic class indication, a TC6 traffic class indication, or a TC7 traffic class indication;
- wherein the cache memory comprises a class of service waymask register, the class of service waymask register comprising bits corresponding to a traffic class mapping;
- the method comprising identifying one or more ways of the cache memory for storing data of data packets having a traffic class mapped to a corresponding class of service based on the waymask register, and wherein each class of service corresponds to a waymask of the cache memory, and
- selectively storing data of data packets into the cache memory based on the waymask corresponding to the class of service.
7 more elements
Dependencies are inferred from the claim text.