IP Library › Granted Patent US 11,874,689
Granted Patent B2
US 11,874,689 · App. 17/749,133 · Granted Jan 16, 2024

Peripheral component interconnect express (PCIE) device for supporting separate reference clock(s) operating between host and direct memory access (DMA) controller

Inventors: Yong Tae Jeon (Icheon-si, KR); Ji Woon Yang (Icheon-si, KR); Dae Sik Park (Icheon-si, KR)
Assignee: SK HYNIX INC.
G06F13/28G06F13/4221G06F2213/0026
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,874,689
App. No.
17/749,133
Granted
Jan 16, 2024
Kind
B2
Abstract

A Peripheral Component Interconnect Express (PCIe) interface device may include a PCIe layer, a link training module, a PCIe register, and a PCIe controller. The PCIe layer may perform communication between a host and a Direct Memory Access (DMA) device. The link training module may perform a link training for the host. The PCIe register may store data information on the PCIe layer. The PCIe controller may switch an operating clock from a PCIe clock, generated based on a reference clock, to an internal clock, process data of the PCIe layer on the basis of the internal clock, and control the link training module to recover a link for the host, when a reset signal received from the host is asserted or the reference clock is off.

Claims (40)

1. A Peripheral Component Interconnect Express (PCIe) interface device, comprising:

a PCIe layer configured to perform communication between a host and a Direct Memory Access (DMA) device;

a link training module configured to perform a link training for the host;

a PCIe register configured to store data information on the PCIe layer; and

a PCIe controller configured to switch an operating clock from a PCIe clock, generated based on a reference clock, to an internal clock, process data of the PCIe layer on the basis of the internal clock, and control the link training module to recover a link for the host, when a reset signal received from the host is asserted or the reference clock is off.

2. The PCIe interface device of claim 1 , wherein the PCIe controller comprises:

a clock controller configured to switch the operating clock from the PCIe clock to the internal clock when the reset signal is asserted or the reference clock is off; and

a recovery controller configured to flush data of the PCIe layer, process a transaction for the DMA device, reset the PCIe layer, and control the link training module to recover the link for the host on the basis of the internal clock.

3. The PCIe interface device of claim 2 , wherein the clock controller rolls back the operating clock from the internal clock to the PCIe clock based on whether the transaction for the DMA device is idle or whether the reset signal is released.

4. The PCIe interface device of claim 3 , wherein the clock controller rolls back the operating clock from the internal clock to the PCIe clock when the transaction for the DMA device is idle.

5. The PCIe interface device of claim 3 , wherein the clock controller rolls back the operating clock from the internal clock to the PCIe clock when the transaction for the DMA device is busy and the reset signal is released.

6. The PCIe interface device of claim 2 , wherein the recovery controller provides the DMA device with an error response to a request received from the DMA device.

7. The PCIe interface device of claim 2 , wherein the recovery controller resets the PCIe layer based on whether the transaction for the DMA device is idle or whether the reset signal is released.

8. The PCIe interface device of claim 1 , wherein the PCIe layer comprises a physical layer, a data link layer and a transaction layer, and

wherein the link training module resets or maintains the data information based on whether a link down caused by a failure of the link training is a host link down requested by the host.

9. The PCIe interface device of claim 8 , wherein the link training module resets the data information in response to the host link down and maintains the data information in response to a sudden link down not requested by the host.

10. The PCIe interface device of claim 9 , the link training module resets the physical layer and maintains the transaction layer and the data link layer in response to the sudden link down.

11. The PCIe interface device of claim 9 , further comprising a replay buffer configured to store transaction packets to re-transmit the transaction packets being processed in the transaction layer,

wherein the link training module resets the replay buffer in response to the sudden link down.

12. The PCIe interface device of claim 9 , wherein the DMA device comprises a NVMe (non-volatile memory express) module, and

wherein the link training module maintains resister values of the NVMe module in response to the sudden link down.

13. The PCIe interface device of claim 9 , wherein the link training module sets a link up register value corresponding a plurality of states of the link, and

wherein the plurality of states of the link includes a detect state, a polling state, a configuration state, a L0 state, a L0s state, a L1 state, a L2 state, a recovery state, a loopback state, a hot reset state and a disabled state.

14. The PCIe interface device of claim 13 , wherein the link training module sets the link up register value as a first value when the link is link up state and as a second value when the link is link down state.

15. The PCIe interface device of claim 14 , the link training module determines whether the link down is the host link down or the sudden link down based on a first state and a second state when, according to a change of the link from the first state to the second state, the link up register value is transitioned from the first value to the second value.

16. The PCIe interface device of claim 15 , the link training module determines the link down as the host link down when the first state is one of the loopback state, the hot reset state, and the disabled state.

17. The PCIe interface device of claim 15 , the link training module determines the link down as the host link down when the second state is the detect state and the first state is one of the L2 state, the hot reset state, and the disabled state.

18. The PCIe interface device of claim 15 , the link training module determines the link down as the sudden link down when the second state is the detect state and the first state is one of the configuration state and the recovery state.

19. A Peripheral Component Interconnect Express (PCIe) device, comprising:

a first port configured to communicate with a first host through a first link;

a second port configured to communicate with the first host or a second host through a second link; and

a port mode controller configured to control the first port and the second port to change an operating mode between a single port mode in which only the first port operates and a dual port mode in which the first port and the second port operate independently of each other,

wherein the port mode controller controls the second port to perform a link training for linking up the second link or to reset the second link in a state where the first link is linked up.

20. The PCIe device of claim 19 , wherein the port mode controller controls, in response to a first mode change request received from the first host to change from the dual port mode to the single port mode, the second port to reset the second link and the first port to extend a lane width of the first link after the second link is reset.

21. The PCIe device of claim 20 , wherein the second port includes a PCIe interface device, and

wherein the PCIe interface device comprises:

a PCIe layer configured to form the second link with the second host; and

a PCIe controller configured to switch an operating clock from a PCIe clock, generated based on a reference clock, to an internal clock, and process data of the PCIe layer on the basis of the internal clock when a reset signal received from the second host is asserted.

22. The PCIe device of claim 21 , wherein the port mode controller controls, in response to a second mode change request received from the first host to change from the single port mode to the dual port mode, the first port to reduce the lane width of the first link and the second port to perform the link training after the lane width is reduced.

23. The PCIe device of claim 22 , wherein the PCIe controller flushes the data of the PCIe layer, resets the PCIe layer, and perform the link training for recovering the second link in response to the second mode change request.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 20, 2022
From: JEON, YONG TAE; YANG, JI WOON; PARK, DAE SIK
To: SK HYNIX INC.
Reel/Frame 059965/0212 →
Priority Claims (3)
KR 10-2021-0067690 · May 26, 2021 · national
KR 10-2021-0070676 · Jun 1, 2021 · national
KR 10-2021-0070762 · Jun 1, 2021 · national
Continuity (1)
Related Publication 20220382696A1 · Dec 1, 2022