# US 2010/0169899 A1 · Methods and systems for improving communication throughput of storage links

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

- Number: US 2010/0169899 A1
- Document ID: US20100169899A1
- Status: Published application
- Kind: A1
- Application number: 12/347,783
- Filed: 2008-12-31
- Published: 2010-07-01
- Earliest claimed: 2008-12-31
- Assignees: LSI Corporation
- Inventors: Steven F. Faulhaber; Luke E. McKay; Brian K. Einsweiler; Warren R. Volz; Jason C. McGinley
- Web page: https://patentgrep.com/patent/US20100169899A1

## CPC

- G06F 13/385: {for adaptation of a particular data processing system to different peripheral devices}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Methods and systems for improving communication throughput of a link between SAS/SATA devices. The link, initially established at a first signal rate, is one of a SATA link and a SAS link. A SAS/SATA device increments one of the at least one counter based on an error sensed on the link. Based on the at least one counter, the SAS/SATA device determines whether to maintain the first signal rate. The link is re-established at a second signal rate based on the determination such that the second signal rate is lower than the first signal rate.

## Claims

### Claim 1

A method for improving communication throughput of a link between SAS/SATA devices, wherein at least one counter is associated with the link, the method comprising:
establishing the link at a first signal rate;
incrementing one of the at least one counter based on an error sensed on the link;
determining, based on the at least one counter, whether to maintain the first signal rate; and
re-establishing the link at a second signal rate based on the determination;
wherein the second signal rate is lower than the first signal rate; and
wherein the link is one of a Serial ATA (“SATA”) link and a Serial Attached SCSI (“SAS”) link.

### Claim 2 (depends on 1)

The method of claim 1, wherein each of the SAS/SATA devices is one of a SATA controller, a SAS controller, a SATA drive, a SAS drive, and a SAS expander.

### Claim 3 (depends on 1)

The method of claim 1, wherein a type of the error is one of invalid dword, running disparity error, and PHY reset problem.

### Claim 4 (depends on 1)

The method of claim 1, wherein the first signal rate is selected from 12 Gbps, 6 Gbps, and 3 Gbps, and wherein the second signal rate is selected from 6 Gbps, 3 Gbps, and 1.5 Gbps.

### Claim 5 (depends on 1)

The method of claim 1, wherein the determining step comprises checking whether one of the at least one counter exceeds a pre-defined value.

### Claim 6 (depends on 1)

The method of claim 1, wherein the determining step comprises checking whether a change within one of the at least one counter over a time period exceeds a pre-defined value.

### Claim 7 (depends on 1)

The method of claim 1, wherein the error is a first error, the method further comprising:
incrementing one of the at least one counter based on a second error sensed on the link;
determining, based on the at least one counter, whether to maintain the second signal rate; and
re-establishing the link at a third signal rate based on the determination;
wherein the third signal rate is lower than the second signal rate.

### Claim 8 (depends on 7)

The method of claim 7, wherein:
determining whether to maintain the first signal rate comprises checking whether one of the at least one counter exceeds a first pre-defined value;
determining whether to maintain the second signal rate comprises checking whether the one of the at least one counter exceeds a second pre-defined value; and
the first pre-defined value is greater than or equal to the second pre-defined value.

### Claim 9 (depends on 1)

The method of claim 1, further comprising:
resetting at least the one of the at least one counter;
incrementing one of the at least one counter based on another error sensed on the link;
determining whether to maintain a lowest signal rate based on the at least one counter; and
re-establishing the link at a highest signal rate based on the determination.

### Claim 10 (depends on 1)

The method of claim 1, further comprising sending a message from a first SAS/SATA device to a second SAS/SATA device, wherein the determining step is performed at the first SAS/SATA device, and wherein the re-establishing step comprises re-establishing the link from the second SAS/SATA device to a third SAS/SATA device based on the message.

### Claim 11

A SAS/SATA device for improving communication throughput of a link with another SAS/SATA device, wherein at least one counter is associated with the link, the SAS/SATA device comprising:
the at least one counter;
an establishing element for establishing the link at a first signal rate;
an incrementing element for incrementing one of the at least one counter based on an error sensed on the link;
a determining element for determining, based on the at least one counter, whether to maintain the first signal rate; and
a re-establishing element for re-establishing the link at a second signal rate based on the determination;
wherein the second signal rate is lower than the first signal rate; and
wherein the link is one of a Serial ATA (“SATA”) link and a Serial Attached SCSI (“SAS”) link.

### Claim 12 (depends on 11)

The SAS/SATA device of claim 11, wherein each of the SAS/SATA devices is one of a SATA controller, a SAS controller, a SATA drive, a SAS drive, and a SAS expander.

### Claim 13 (depends on 11)

The SAS/SATA device of claim 11, wherein a type of the error is one of invalid dword, running disparity error, and PHY reset problem.

### Claim 14 (depends on 11)

The SAS/SATA device of claim 11, wherein the first signal rate is selected from 12 Gbps, 6 Gbps, and 3 Gbps, and wherein the second signal rate is selected from 6 Gbps, 3 Gbps, and 1.5 Gbps.

### Claim 15 (depends on 11)

The SAS/SATA device of claim 11, wherein the determining element is further adapted for checking whether one of the at least one counter exceeds a pre-defined value.

### Claim 16 (depends on 11)

The SAS/SATA device of claim 11, wherein the determining element is further adapted for checking whether a change within one of the at least one counter over a time period exceeds a pre-defined value.

### Claim 17 (depends on 11)

The SAS/SATA device of claim 11, wherein the error is a first error, wherein:
the incrementing element is further adapted for incrementing one of the at least one counter based on a second error sensed on the link;
the determining element is further adapted for determining, based on the at least one counter, whether to maintain the second signal rate; and
the re-establishing element is further adapted for re-establishing the link at a third signal rate based on the determination;
wherein the third signal rate is lower than the second signal rate.

### Claim 18 (depends on 17)

The SAS/SATA device of claim 17, wherein:
determining whether to maintain the first signal rate comprises checking whether one of the at least one counter exceeds a first pre-defined value;
determining whether to maintain the second signal rate comprises checking whether the one of the at least one counter exceeds a second pre-defined value; and
the first pre-defined value is greater than or equal to the second pre-defined value.

### Claim 19 (depends on 11)

The SAS/SATA device of claim 11, wherein:
the SAS/SATA device further comprises a resetting element for resetting the one of the at least one counter;
the incrementing element is further adapted for incrementing one of the at least one counter based on another error sensed on the link;
the determining element is further adapted for determining whether to maintain a lowest signal rate based on the at least one counter; and
the re-establishing element is further adapted for re-establishing the link at a highest signal rate based on the determination.

### Claim 20

A system for improving communication throughput of a link between SAS/SATA devices, wherein at least one counter is associated with the link, the system comprising:
a first SAS/SATA device comprising:
the at least one counter;
an incrementing element for incrementing one of the at least one counter based on an error sensed on the link;
a determining element for determining, based on the at least one counter, whether to maintain a first signal rate; and
a sending element for sending a message from the first SAS/SATA device to a second SAS/SATA device based on the determination;
the second SAS/SATA device; and
a third SAS/SATA device;
wherein the second SAS/SATA device comprises:
an establishing element for establishing the link to the third SAS/SATA device at the first signal rate;
a receiving element for receiving the message; and
a re-establishing element for re-establishing the link at a second signal rate to the third SAS/SATA device based on the message;
wherein the second signal rate is lower than the first signal rate; and
wherein the link is one of a Serial ATA (“SATA”) link and a Serial Attached SCSI (“SAS”) link.
