# US 7,610,483 B2 · System and method to accelerate identification of hardware platform classes

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 7,610,483 B2
- Document ID: US7610483B2
- Status: Granted
- Kind: B2
- Application number: 11/459,871
- Filed: 2006-07-25
- Published: 2008-02-21
- Granted: 2009-10-27
- Earliest claimed: 2006-07-25
- Assignees: NVIDIA Corporation
- Inventors: Andrew Currid; Mark A. Overby
- Web page: https://patentgrep.com/patent/US7610483B2

## CPC

- G06F 21/85: interconnection devices, e.g. bus-connected or in-line devices
- G06F 21/73: by creating or determining hardware identification, e.g. serial numbers
- G06F 2221/2129: Authenticate client device independently of the user
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

One embodiment of the present invention sets forth a technique for concisely identifying the hardware configuration of a computer system through a single signature value. This signature value is computed by passing specific hardware configuration information through a hashing function. The hardware configuration information may include, among other things, selected elements of the SMBIOS system description as well as PCI topology and PCI bus type information.

## Claims

### Claim 1

A method for uniquely identifying a hardware configuration of a computer system, the method comprising:
gathering data from a system management basic input-output system (SMBIOS) device list generated for the computer system;
probing a bus within the computer system to determine a bus topology and to assign a unique identifier to each device coupled to the bus;
accessing configuration space registers of each device coupled to the bus to determine a bus type; and
computing a signature value for the computer system based on at least the data gathered from the SMBIOS device list, the bus topology, and the bus type wherein the step of computing the signature value comprises passing the data gathered from the SMBIOS device list, the bus topology, and the bus type through a hash function, and wherein the signature value is smaller in size than the data gathered from the SMBIOS device list, the bus topology, and the bus type.

### Claim 2 (depends on 1)

The method of claim 1, wherein the bus type reflects the width of the bus, the voltage compatibility of the bus and the speed compatibility of the bus.

### Claim 3 (depends on 2)

The method of claim 2, wherein the bus type further reflects the bus version.

### Claim 4 (depends on 1)

The method of claim 1, wherein the data gathered from the SMBIOS device list includes a central processing unit (CPU) type.

### Claim 5 (depends on 1)

The method of claim 1, wherein the data gathered from the SMBIOS device list includes the number of CPUs within the computer system.

### Claim 6 (depends on 1)

The method of claim 1, wherein the data gathered from the SMBIOS device list includes a graphics processing unit (GPU) type.

### Claim 7 (depends on 1)

The method of claim 1, wherein the data gathered from the SMBIOS device list includes a network interface card (NIC) type or an advanced configuration power interface level.

### Claim 8 (depends on 1)

The method of claim 1, wherein the bus is a peripheral component interface (PCI) bus or a PCI Express bus.

### Claim 9

A computer system configured for uniquely identifying a hardware configuration of a computer system, the computer system comprising:
one or more central processing units (CPUs);
one or more graphics processing units (GPUs);
at least one bus that couples the one or more CPUs to the one or more GPUs; and
a signature generator configured to:
gather data from a system management basic input-output system (SMBIOS) device list generated for the computer system;
probe a bus within the computer system to determine a bus topology and to assign a unique identifier to each device coupled to the bus;
access configuration space registers of each device coupled to the bus to determine a bus type; and
compute a signature value for the computer system based on at least the data gathered from the SMBIOS device list, the bus topology, and the bus type wherein the step of computing the signature value comprises passing the data gathered from the SMBIOS device list, the bus topology, and the bus type through a hash function, and wherein the signature value is smaller in size than the data gathered from the SMBIOS device list, the bus topology, and the bus type.

### Claim 10 (depends on 9)

The computer system of claim 9, further comprising a firmware module configured to generate the SMBIOS device list.

### Claim 11 (depends on 9)

The computer system of claim 9, wherein the bus type reflects the width of the at least one bus, the voltage compatibility of the at least one bus, the speed compatibility of the at least one bus and the version of the at least one bus.

### Claim 12 (depends on 9)

The computer system of claim 9, wherein the data gathered from the SMBIOS device list includes a central processing unit (CPU) type.

### Claim 13 (depends on 9)

The computer system of claim 9, wherein the data gathered from the SMBIOS device list includes the number of CPUs within the computer system.

### Claim 14 (depends on 9)

The computer system of claim 9, wherein the data gathered from the SMBIOS device list includes a graphics processing unit (GPU) type.

### Claim 15 (depends on 9)

The computer system of claim 9, wherein the data gathered from the SMBIOS device list includes a network interface card (NIC) type or an advanced configuration power interface level.

### Claim 16 (depends on 9)

The computer system of claim 9, wherein the bus is a peripheral component interface (PCI) bus or a PCI Express bus.

### Claim 17 (depends on 9)

The computer system of claim 9, wherein the computer system comprises a plurality of buses, and the signature generator is configured to probe each bus in the plurality of buses, and, for each bus, assign a unique identifier to each device coupled to the bus, and access configuration space registers of each device coupled to the bus to determine a bus type.

### Claim 18 (depends on 17)

The computer system of claim 17, wherein the signature generator is further configured to generate a signature value for the computer system by passing the data gathered from the SMBIOS list, the bus topology, and the bus type of each bus in the plurality of buses through a hash function, and wherein the signature value is smaller in size than the data gathered from the SMBIOS device list, the bus topology, and the bus type of each bus in the plurality of buses.
