IP Library Granted Patent US 11,023,244
Granted Patent B2
US 11,023,244 · App. 15/713,974 · Granted Jun 1, 2021

System, apparatus and method for recovering link state during link training

Inventors: Ee Loon Teoh (Shrewsbury, MA); Eng Hun Ooi (Georgetown, MY); Roger K. Cheng (Campbell, CA)
Assignee: Intel Corporation
G06F9/3861G06F1/32G06F11/073G06F11/0772G06F11/0793G06F11/3027G06F13/20G06F13/4004G06F13/4282G06F2211/002
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,023,244
App. No.
15/713,974
Granted
Jun 1, 2021
Kind
B2
Abstract

In one embodiment, a link training controller is to train a link. The link training controller may be configured to: update a first link parameter of a link setting for the link to a first value; write data to the memory; read the data from the memory using the first value of the first link parameter; and in response to a determination that the data read from the memory does not match the data written to the memory, send an in-band link recovery command to the memory via the link to cause the memory to participate in a link recovery protocol with the apparatus. Other embodiments are described and claimed.

Claims (43)

1. An apparatus comprising:

at least one core; and

a physical circuit coupled to the at least one core, the physical circuit comprising:

a physical unit to communicate information from the at least one core to a memory via a link; and

a link training controller to train the link, wherein the link training controller is to:

update a first link parameter of a link setting for the link to a first value;

write data to the memory;

read the data from the memory using the first value of the first link parameter; and

in response to a determination that the data read from the memory does not match the data written to the memory, send an in-band link recovery command to the memory to cause the memory to participate in a link recovery protocol, the link recovery protocol including an update of the first link parameter to a second value, wherein the in-band link recovery command includes the second value.

2. The apparatus of claim 1 , further comprising a configuration storage to store an initial value for the first link parameter of the link setting for the link.

3. The apparatus of claim 2 , wherein the configuration storage is further to store a trained value for the first link parameter, after the link training.

4. The apparatus of claim 2 , wherein the link training controller is to determine the second value comprising a safe value.

5. The apparatus of claim 1 , wherein the link training controller is to cause the link to be reset in response to a determination of a failure on the link during the link recovery protocol.

6. The apparatus of claim 1 , wherein the physical circuit is to send the in-band link recovery command comprising a plurality of unit intervals, each of the plurality of unit intervals comprising a predetermined command portion and the second value.

7. The apparatus of claim 6 , wherein the physical circuit is to send a strobe signal to indicate valid information during a mid-portion of the plurality of unit intervals.

8. The apparatus of claim 1 , wherein the apparatus comprises a system on chip and the memory comprises a non-volatile memory coupled to the system on chip via the link.

9. At least one non-transitory machine-readable medium having stored thereon instructions, which if performed by a machine cause the machine to perform a method comprising:

during a link training of a link that couples a first device and a second device, updating a first link parameter of a link setting for the link to a first value;

communicating information via the link to identify whether a failure occurs on the link using the first link parameter having the first value; and

in response to identifying the failure, sending a recovery command to the second device to cause the second device to enter a link recovery in which the first link parameter is updated to a second value without a reset of the link, wherein the recovery command comprises a predetermined command portion and the second value comprises a safe value for the first link parameter.

10. The at least one non-transitory machine-readable medium of claim 9 , wherein the method further comprises resetting the link in response to identifying another failure that occurs on the link during the link recovery using the first link parameter having the second value.

11. The at least one non-transitory machine-readable medium of claim 10 , wherein the link recovery comprises:

sending a predetermined data pattern to the second device;

receiving the predetermined data pattern from the second device; and

identifying the another failure if the received predetermined data pattern does not at least substantially correspond to the predetermined data pattern sent to the second device.

12. The at least one non-transitory machine-readable medium of claim 11 , wherein the method further comprises:

obtaining the predetermined data pattern from a configuration storage, the predetermined data pattern different from a second predetermined data pattern obtained from the configuration storage, wherein communicating the information via the link to identify whether the failure occurs on the link comprises:

sending the second predetermined data pattern to the second device; and

receiving the second predetermined data pattern from the second device.

13. The at least one non-transitory machine-readable medium of claim 9 , wherein the method further comprises sending the recovery command comprising a plurality of unit intervals, each of the plurality of unit intervals comprising the predetermined command portion and the second value.

14. The at least one non-transitory machine-readable medium of claim 13 , wherein the method further comprises sending a strobe signal to indicate valid information on the in-band portion of the link during a mid-portion of the plurality of unit intervals.

15. The at least one non-transitory machine-readable medium of claim 9 , wherein the method further comprises sending the recovery command on an in-band portion of the link.

16. A system comprising:

a processor having at least one core and a physical circuit coupled to the at least one core, the physical circuit to communicate with at least one device via an interconnect, and a controller to train the interconnect, wherein the controller is to:

update a first parameter of a setting for the interconnect to a first value;

receive, using the first parameter having the first value, a data pattern from the at least one device via the interconnect; and

determine whether the data pattern corresponds to a first data pattern sent from the processor to the at least one device, and in response to a determination that the data pattern does not correspond, send a recovery command to the at least one device to cause the at least one device to participate in a link recovery protocol with the processor without a reset of the interconnect or a re-initialization of the at least one device; and

the at least one device coupled to the processor via the interconnect.

17. The system of claim 16 , wherein the controller is to send the recovery command comprising a plurality of unit intervals, each of the plurality of unit intervals comprising a predetermined command portion and a second value for the first parameter of the setting, the second value at a level at which a prior communication on the interconnect occurred without failure.

18. The system of claim 17 , wherein the physical circuit is to send a strobe signal to indicate valid information during a mid-portion of the plurality of unit intervals.

19. The system of claim 18 , wherein the controller is to:

resume training of the interconnect in response to receipt, after the recovery command is sent, of an acknowledgment message from the at least one device via the interconnect, the acknowledgement message comprising a second plurality of unit intervals, each of the second plurality of unit intervals comprising a predetermined acknowledgement indicator; and

cause the interconnect to be reset and the at least one device to be re-initialized if the controller does not receive the acknowledgement message from the at least one device.

Assignments (2)
CORRECTIVE ASSIGNMENT TO CORRECT THE SECOND INVENTOR NAME PREVIOUSLY RECORDED AT REEL: 043709 FRAME: 0523. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Sep 28, 2017
From: TEOH, EE LOON; OOI, ENG HUN; CHENG, ROGER K.
To: INTEL CORPORATION
Reel/Frame 044047/0687 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 27, 2017
From: TEOH, EE LOON; OOI, ENG LOON; CHENG, ROGER K.
To: INTEL CORPORATION
Reel/Frame 043709/0523 →
Continuity (1)
Related Publication 20190095215A1 · Mar 28, 2019