IP Library Granted Patent US 12,272,425
Granted Patent B2
US 12,272,425 · App. 17/845,259 · Granted Apr 8, 2025

Memory controller performing training to improve communication and method of operating the same

Inventors: Nam Hyeok Jeong (Gyeonggi-do, KR); Kwang Ho Choi (Gyeonggi-do, KR); Moon Hyeok Choi (Gyeonggi-do, KR); Tae Woong Ha (Gyeonggi-do, KR); Yong Wan Hwang (Gyeonggi-do, KR)
Assignee: SK hynix Inc.
G11C7/20G06F18/214G06N20/00G11C7/1066G11C7/1069G11C7/1093G11C7/1096G11C11/4074G11C29/00G11C29/023G11C29/10G11C29/56012G11C2029/0407
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 12,272,425
App. No.
17/845,259
Granted
Apr 8, 2025
Kind
B2
Abstract

The present technology relates to an electronic device. According to the present technology, a memory controller may include a training controller, a training data storage, and a machine learning processor. The training controller may perform training of correcting interface signals exchanged with a memory device, generate training data that is a result of the training, and output the training data as sample training data based on a comparison result of a training reference and the training data. The training data storage may store training history information including plural pieces of sample training data. The machine learning processor may update the training reference through machine learning based on the training history information.

Claims (42)

1. A memory controller comprising:

a training controller configured to

perform training of correcting interface signals exchanged with a memory device,

generate training data that is a result of the training and includes a timing offset for the interface signals, and

output the training data as sample training data when the training data passes a training reference;

a training data storage configured to store training history information including plural pieces of sample training data; and

a machine learning processor configured to update the training reference through machine learning based on the training history information whenever the memory device is booted on,

wherein the machine learning processor is configured to update the training reference by calculating a current training reference by differently reflecting a weight to a previous training reference.

2. The memory controller of claim 1 , wherein the training data includes at least one of temperature data, voltage data, and calibration data indicating the timing offset for the interface signals.

3. The memory controller of claim 2 , wherein the temperature data includes at least one of a temperature of the memory device, a temperature of the memory controller, a temperature of a system chip including the memory controller, a temperature of an input/output interface of the memory device, and a temperature of an input/output interface of the memory controller.

4. The memory controller of claim 2 , wherein the voltage data includes at least one of a voltage of the memory device, a voltage of the memory controller, a voltage of a system chip including the memory controller, a voltage of an input/output interface of the memory device, a voltage of an input/output interface of the memory controller, and reference voltages for sampling interface signals exchanged with the memory device.

5. The memory controller of claim 2 , wherein the calibration data includes at least one of a delay of a command/address bus signal, a delay of a data strobe signal, a delay during a write operation of a data signal, and a delay during a read operation of the data signal among the interface signals.

6. The memory controller of claim 2 , wherein the training controller is further configured to determine whether the training data passes the training reference based on whether values of the calibration data fall within a reference range defined in the training reference.

7. The memory controller of claim 6 , wherein the training controller is further configured to store, as the sample training data, the training data passing the training reference in the training data storage.

8. The memory controller of claim 6 , wherein the training controller is further configured to perform the training again when the training data does not pass the training reference.

9. The memory controller of claim 1 , wherein the machine learning processor updates the training reference based on a result calculated from a machine learning model by inputting the plural pieces of sample training data to the machine learning model.

10. The memory controller of claim 1 , wherein the training controller is further configured to

perform test training a preset number of times,

generate test training data that is a result of the test training, and

check a signal eye margin for the test training data.

11. The memory controller of claim 10 , wherein the training data storage is further configured to store, as initial training data, test training data of which the signal eye margin is in a normal range among plural pieces of test training data generated by the training controller.

12. The memory controller of claim 11 , wherein the machine learning processor is further configured to set the training reference based on plural pieces of initial training data stored in the training data storage.

13. The memory controller of claim 1 , wherein the interface signals include at least one of an interface signal for a random access memory (RAM) and an interface signal for a non-volatile memory (NVM).

14. A method of operating a memory controller, the method comprising:

performing training of correcting interface signals exchanged with a memory device;

storing training data, which is a result of the training and includes a timing offset for the interface signals, as sample training data based when the training data passes a training reference; and

updating the training reference through machine learning based on training history information including plural pieces of sample training data whenever the memory device is booted on,

wherein the updating the training reference comprises calculating a current training reference by differently reflecting a weight to a previous training reference.

15. The method of claim 14 , wherein the training data includes at least one of temperature data, voltage data, and calibration data indicating the timing offset for the interface signals.

16. The method of claim 15 , wherein the storing of the training data comprises storing the training data as the sample training data when values of the calibration data fall within a reference range defined in the training reference.

17. The method of claim 14 , wherein updating the training reference comprises inputting the plurality of sample training data to a machine learning model, and updating the training reference based on a result calculated from the machine learning model.

18. The method of claim 14 , further comprising:

performing test training a preset number of times;

generating plural pieces of test training data that are a result of the test training;

storing test training data of which a signal eye margin is in a normal range among the plural pieces of test training data; and

setting the training reference based on plural pieces of initial training data.

19. The method of claim 14 , wherein the interface signals include at least one of an interface signal for a random access memory (RAM) and an interface signal for a non-volatile memory (NVM).

20. An operating method of a device, the method comprising:

calibrating a signal to be exchanged with an external device;

accumulating information representing at least one timing offset of the calibrated signal when the at least one timing offset falls within a threshold range; and

updating the threshold range based on the accumulated information whenever the device is booted on,

wherein the accumulated information comprises training data that is generated as a result of training, that falls within the threshold range, and that is stored as sample training data.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 21, 2022
From: JEONG, NAM HYEOK; CHOI, KWANG HO; CHOI, MOON HYEOK; HA, TAE WOONG; HWANG, YONG WAN
To: SK HYNIX INC.
Reel/Frame 060263/0099 →
Priority Claims (1)
KR 10-2021-0193757 · Dec 31, 2021 · national
Continuity (1)
Related Publication 20230215477A1 · Jul 6, 2023
References Cited (8)
US 9990973B1 · Jeter · 2018 [cited by examiner]
US 10416912B2 · Morris et al. · 2019 [cited by applicant]
US 20200202493A1 · Brownlee · 2020 [cited by examiner]
US 20200293415A1 · Mukherjee · 2020 [cited by examiner]
US 20210248416A1 · Navon · 2021 [cited by examiner]
US 20220163587A1 · Froelich · 2022 [cited by examiner]
US 20220189521A1 · Hwang · 2022 [cited by examiner]
Yong-Cheul Jun, Study on how to protect deep-leaming-related inventions under the Korean Patent Act, 2020, p. 348-378. [cited by applicant]