The Class Code identifies the general function of a device, and is divided into three byte-size fields:
- Base Class
- Broadly identifies the type of function performed by the device.
- Sub-Class
- More specifically identifies the device function.
- Interface
- Defines a specific register-level programming interface, if any, allowing device-independent software to interface with the device.
Class code encoding can be found at the PCI SIG website.