Allocating lanes in a peripheral component interconnect express (‘PCIe’) bus

US9626319B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9626319-B2
Application numberUS-201313974519-A
CountryUS
Kind codeB2
Filing dateAug 23, 2013
Priority dateAug 23, 2013
Publication dateApr 18, 2017
Grant dateApr 18, 2017

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Allocating lanes in a Peripheral Connect Interface Express (‘PCIe’) bus, including: determining, by a lane allocation module, performance capabilities of a device coupled to the PCIe bus; and allocating, by the lane allocation module, a number of lanes in the PCIe bus for use by the device in dependence upon the performance capabilities of the device.

First claim

Opening claim text (preview).

What is claimed is: 1. An apparatus comprising a computer processor and a computer memory operatively coupled to the computer processor, the computer memory having disposed within it computer program instructions that, when executed by the computer processor, cause the apparatus to carry out the steps of: determining performance capabilities of a device coupled to a Peripheral Component Interconnect Connect Interface Express (PCIe) bus, including: retrieving, from a downstream device, performance capabilities of a downstream device by initiating performance tests with the downstream device, wherein the performance tests include ping operations directed to the downstream device that determine a response time of the downstream device; maintaining a repository that associates various device types with performance capabilities of each of the various device types; determining a device type for the device coupled to the PCIe bus; retrieving, from the repository, performance capabilities of the device; and determining whether one or more performance capabilities of a downstream device are less than the performance capabilities of the device coupled to the PCIe bus, wherein the downstream device is coupled to the device over a data communications channel other than the PCIe bus; and allocating, in response to determining that the one or more performance capabilities of a downstream device are less than the performance capabilities of the device, a number of lanes in the PCIe bus for use by the device in dependence upon the performance capabilities of the downstream device, including allocating fewer lanes in the PCIe bus for use by the device than would be allocated for the device if the allocating were performed in dependence upon the performance capabilities of the device. 2. The apparatus of claim 1 wherein determining a device type for the device coupled to the PCIe bus further comprises retrieving, from the device, vital product data (‘VPD’) for the device. 3. The apparatus of claim 1 wherein allocating the number of lanes in the PCIe bus for use by the device in dependence upon the performance capabilities of the device further comprises deallocating one or more lanes in the PCIe bus for use by a second device. 4. A computer program product including a non-transitory computer readable medium, the computer program product comprising computer program instructions that, when executed, cause a computer to carry out the steps of: determining performance capabilities of a device coupled to a Peripheral Component Interconnect Connect Interface Express (PCIe) bus, including: retrieving, from a downstream device, performance capabilities of a downstream device by initiating performance tests with the downstream device, wherein the performance tests include ping operations directed to the downstream device that determine a response time of the downstream device; maintaining a repository that associates various device types with performance ca s abilities of each of the various device types; determining a device type for the device coupled to the PCIe bus; retrieving, from the repository, performance capabilities of the device; and determining whether one or more performance capabilities of a downstream device are less than the performance capabilities of the device coupled to the PCIe bus, wherein the downstream device is coupled to the device over a data communications channel other than the PCIe bus; and allocating, in response to determining that the one or more performance capabilities of a downstream device are less than the performance capabilities of the device, a number of lanes in the PCIe bus for use by the device in dependence upon the performance capabilities of the downstream device, including allocating fewer lanes in the PCIe bus for use by the device than would be allocated for the device if the allocating were performed in dependence upon the performance capabilities of the device. 5. The computer program product of claim 4 wherein determining a device type for the device coupled to the PCIe bus further comprises retrieving, from the device, vital product data (‘VPD’) for the device. 6. The computer program product of claim 4 wherein allocating the number of lanes in the PCIe bus for use by the device in dependence upon the performance capabilities of the device further comprises deallocating one or more lanes in the PCIe bus for use by a second device. 7. The computer program product of claim 4 wherein the computer readable medium comprises a computer readable storage medium. 8. A method comprising: determining performance capabilities of a device coupled to a Peripheral Component Interconnect Connect Interface Express (PCIe) bus, including: retrieving, from a downstream device, performance capabilities of a downstream device by initiating performance tests with the downstream device, wherein the performance tests include ping operations directed to the downstream device that determine a response time of the downstream device; maintaining a repository that associates various device types with performance capabilities of each of the various device types; determining a device type for the device coupled to the PCIe bus; retrieving, from the repository, performance capabilities of the device; and determining whether one or more performance capabilities of a downstream device are less than the performance capabilities of the device coupled to the PCIe bus, wherein the downstream device is coupled to the device over a data communications channel other than the PCIe bus; and allocating, in response to determining that the one or more performance capabilities of a downstream device are less than the performance capabilities of the device, a number of lanes in the PCIe bus for use by the device in dependence upon the performance capabilities of the downstream device, including allocating fewer lanes in the PCIe bus for use by the device than would be allocated for the device if the allocating were performed in dependence upon the performance capabilities of the device. 9. The method of claim 8 wherein determining a device type for the device coupled to the PCIe bus further comprises retrieving, from the device, vital product data (‘VPD’) for the device. 10. The method of claim 8 wherein allocating the number of lanes in the PCIe bus for use by the device in dependence upon the performance capabilities of the device further comprises deallocating one or more lanes in the PCIe bus for use by a second device. 11. The method of claim 1 wherein the allocating the number of lanes includes allocating a number of lanes equal to a maximum performance capability of the downstream device. 12. The method of claim 1 further comprising allocating, in response to determining that the one or more performance capabilities of a downstream device are more than the performance capabilities of the device, a number of lanes in the PCIe bus for use by the device in dependence upon the performance capabilities of the device.

Assignees

Inventors

Classifications

  • using switching circuits, e.g. switching matrix, connection or expansion network (G06F13/4009 takes precedence) · CPC title

  • G06F13/385Primary

    for adaptation of a particular data processing system to different peripheral devices · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9626319B2 cover?
Allocating lanes in a Peripheral Connect Interface Express (‘PCIe’) bus, including: determining, by a lane allocation module, performance capabilities of a device coupled to the PCIe bus; and allocating, by the lane allocation module, a number of lanes in the PCIe bus for use by the device in dependence upon the performance capabilities of the device.
Who is the assignee on this patent?
Lenovo Entpr Solutions Singapore Pte Ltd
What technology area does this patent fall under?
Primary CPC classification G06F13/385. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Apr 18 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 4 related publications on this page (citations in our corpus or others sharing the same primary CPC).