Training method of memory device, electronic device and electronic system comprising the same
By storing the configuration parameters corresponding to the operating voltage and temperature in non-volatile memory, and using the memory controller to load these parameters to drive the memory device, the problem of excessively long training time is solved, and the system's startup efficiency and environmental adaptability are improved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2020-08-28
- Publication Date
- 2026-04-07
AI Technical Summary
Existing technologies require long open times when training memory devices, which affects system performance. Furthermore, changes in operating voltage and temperature affect the training effect, resulting in excessively long training runtime.
The memory device is driven by storing configuration parameters corresponding to the operating voltage and temperature of the memory device in non-volatile memory, and by using the memory controller to determine and load these parameters without performing a training operation.
It reduces the training runtime of memory devices, improves system startup efficiency, and enhances flexibility in adapting to changes in the operating environment.
Smart Images

Figure CN112447259B_ABST
Abstract
Description
[0001] Cross-reference to related applications
[0002] This application claims priority to Korean Patent Application No. 10-2019-0107008, filed with the Korean Intellectual Property Office on August 30, 2019, the entire contents of which are incorporated herein by reference. Technical Field
[0003] Example embodiments of this disclosure relate to a method for training a memory device, an electronic device, and an electronic system including the electronic device. Background Technology
[0004] To train memory and / or memory controllers, more detailed training algorithms are required as operating speed increases, and these more detailed algorithms have longer open times as memory rank increases. Therefore, full training is not suitable for memory systems requiring short open times. Training is performed periodically while driving electronic devices. To perform memory / memory controller training, the memory system must halt its currently running operations, which impacts system performance.
[0005] Furthermore, in environments where the operating voltage and temperature of memory devices fluctuate frequently, these factors become influential on training. Training is being conducted to reflect this environment, and research is underway to develop training methods that can immediately reflect these frequent changes in operating voltage and temperature. Summary of the Invention
[0006] One or more example embodiments of this disclosure provide an electronic device that can reduce training runtime, that is, the time spent performing training on a memory device included in the electronic device.
[0007] One or more example embodiments of this disclosure also provide a training method for a memory device that can reduce training runtime.
[0008] One or more example embodiments of this disclosure also provide an electronic system capable of reducing training runtime.
[0009] However, the aspects of this disclosure are not limited to those set forth herein. These and other aspects of this disclosure will become clearer to those skilled in the art upon reference to the detailed description of this disclosure given below.
[0010] According to one aspect of an exemplary embodiment of the present invention, an electronic device is provided, the electronic device comprising: a memory device; a non-volatile memory configured to store a plurality of first configuration parameters corresponding to an operating voltage of the memory device and a plurality of second configuration parameters corresponding to an operating temperature of the memory device; and a memory controller configured to: determine a value of a third configuration parameter corresponding to the operating voltage of the memory device among the plurality of first configuration parameters stored in the non-volatile memory, without performing a training operation; determine a value of a fourth configuration parameter corresponding to the operating temperature of the memory device among the plurality of second configuration parameters stored in the non-volatile memory, without performing a training operation; and drive the memory device according to the determined values of the third and fourth configuration parameters.
[0011] According to one aspect of an exemplary embodiment of the present invention, a training method for a memory device is provided, the method comprising: storing in a memory cell a plurality of first configuration parameters corresponding to the operating voltage and operating temperature of the memory device; after storing the plurality of first configuration parameters, performing a startup of the memory device; measuring the operating voltage and operating temperature of the startup memory device; loading a second configuration parameter, which corresponds to the operating voltage and operating temperature, among the plurality of first configuration parameters into a memory controller; and mapping the loaded second configuration parameter to the memory device without performing a training operation.
[0012] According to one aspect of an exemplary embodiment of the present invention, an electronic system is provided, the electronic system comprising: a first electronic device including a first memory device included in a memory device, a first non-volatile memory configured to store a plurality of first configuration parameters corresponding to the operating voltage and operating temperature of the first memory device, and a first memory controller configured to control the first memory device; and a second electronic device including a second memory device included in a memory device, a second non-volatile memory configured to store a plurality of second configuration parameters corresponding to the operating voltage and operating temperature of the second memory device, and a second memory controller configured to control the second memory device, the second electronic device being separate from the first electronic device, wherein the first memory controller is further configured to map a third configuration parameter among the plurality of first configuration parameters corresponding to the operating voltage and operating temperature of the first memory device to the first memory device without performing a training operation, and wherein the second memory controller is further configured to map a fourth configuration parameter among the plurality of second configuration parameters corresponding to the operating voltage and operating temperature of the second memory device to the second memory device without performing a training operation. Attached Figure Description
[0013] The above and other aspects and features of this disclosure will become clearer by referring to the accompanying drawings, which describe exemplary embodiments of the present disclosure in detail.
[0014] Figure 1 This is a block diagram schematically illustrating an electronic device according to some example embodiments;
[0015] Figure 2 This is a block diagram illustrating the structure of a host device of an electronic device according to some example embodiments;
[0016] Figure 3 This is a flowchart illustrating a training method for a memory device according to some example embodiments;
[0017] Figure 4 This is an explanation Figure 3 A flowchart of an example embodiment of configuration parameter storage operations;
[0018] Figures 5 to 7 This is an explanation based on Figure 4 A diagram illustrating example statistical forecasting modeling in an example embodiment;
[0019] Figure 8 and Figure 9 It is a description Figure 4 A diagram illustrating an example embodiment of the training operation;
[0020] Figure 10 and Figure 11 It is a description Figure 3 A diagram illustrating another example embodiment of the configuration parameter storage operation;
[0021] Figure 12 It is a description Figure 3 A diagram illustrating an example embodiment of the mapping operation;
[0022] Figure 13 It is a description Figure 3 A diagram illustrating an example embodiment of the mapping operation;
[0023] Figure 14 It is a description based on Figure 12 Timing diagrams showing the effects of example embodiments;
[0024] Figure 15 It is a description based on Figure 13 A timing diagram showing the effects of an example embodiment. Detailed Implementation
[0025] In the following description, exemplary embodiments of the inventive concept will be described with reference to the accompanying drawings.
[0026] Figure 1 This is a block diagram schematically illustrating an electronic device according to some example embodiments.
[0027] Reference Figure 1 An electronic device according to some example embodiments may include a host 100 and a memory device 200. A channel 300 for exchanging signals and data may be provided between the host 100 and the memory device 200.
[0028] Host 100 can run various applications in response to user requests. Host 100 can load applications into storage device 200 to run them. Host 100 can drive an operating system (OS) and run various applications on the OS. For this operation, host 100 can write data to storage device 200 and / or read data stored in storage device 200.
[0029] Host 100 can perform training on the configuration parameters (CP) of memory device 200 during startup or under specific conditions. As used herein, the term "training" refers to the operation of searching for signal levels or latency of memory channels to provide optimal reliability. Through training, host 100 can improve the reliability of exchanging data or signals with memory device 200. For example, host 100 can write training data (TD) to or read training data (TD) from memory device 200 under various conditions to determine optimal clock timing or reference levels.
[0030] Specifically, according to some example embodiments of this disclosure, the host 100 may load training code (TC) for performing training into the memory device 200. The training code (TC) essentially corresponds to executable code for performing training. If an error occurs in the training code, the general training operation may fail. Therefore, it is necessary to ensure the stability of the training code (TC) to ensure the reliability of data or signals.
[0031] The memory device 200 can be driven as the main memory of an electronic device. When the electronic device is started, the operating system (OS) or basic applications can be loaded onto the memory device 200.
[0032] For example, when the host is started 100, an OS image stored in non-volatile memory (not shown) can be loaded onto memory device 200 based on the boot sequence. The operating system can support various input / output operations of the host 100.
[0033] Similarly, applications can be loaded onto memory device 200 so that they can be selected by the user or provide basic services. Additionally, memory device 200 can be used as a buffer to store image data provided by an image sensor, such as that from a camera.
[0034] Memory device 200 may be dynamic random access memory (DRAM) capable of being accessed by bytes. For example, low-power double data rate synchronous DRAM (LPDDR SDRAM), double data rate (DDR) SDRAM, or graphics DDR SDRAM (GDDR SDRAM) may be used in memory device 200. Examples of LPDDR SDRAM may include LPDDR3, LPDDR4, and LPDDR5, and examples of DDR SDRAM may include DDR4 and DDR5, but are not limited thereto.
[0035] Training the configuration parameters (CP) of LPDDR SDRAM may include write clock (WCK) to clock (CK) (WCK2CK) leveling training, WCK-DQ training, command bus training, write alignment and write training, read training, and reference voltage training (or Vref training), but may not be limited to these.
[0036] Training the configuration parameters (CP) of DDR SDRAM can include write alignment, write training, read training, and Vref training. In addition to these examples, any other training of the configuration parameters (CP) of the memory device 200 can also be included.
[0037] Memory device 200 can be provided as a rewritable non-volatile memory device. For example, memory device 200 can be configured as non-volatile RAM, such as phase-change RAM (PRAM), magnetic RAM (MRAM), resistive RAM (ReRAM), ferroelectric RAM (FRAM), NOR flash memory, and NAND flash memory. When driving an electronic device, memory device 200 stores the operating system (OS), running applications, updated data, etc. Memory device 200 can be provided in the form of a multi-chip package or module with multiple stacked chips. However, the configuration methods of memory device 200 are not limited to the examples disclosed herein.
[0038] Channel 300 can provide a data or signal transmission path on the host 100 and the memory device 200. Although channel 300... Figure 1 The diagram shows a single channel, but multiple channels can be provided. When multiple channels 300 are provided, the memory device 200 can be controlled according to the channel interleaving method, and the memory device 200 and the host 100 can independently exchange data through each of the multiple channels.
[0039] Figure 2 This is a block diagram illustrating the structure of a host device of an electronic device according to some example embodiments of the present disclosure.
[0040] Reference Figure 2The host 100 can be implemented in a system-on-a-chip (SoC), and the SoC may include a central processing unit (CPU) 110, a memory controller 120, a graphics processing unit (GPU) 130, a user interface controller 140, a non-volatile memory interface 150, an accelerator 160, etc.
[0041] It should be understood that the components of a SoC are not limited to those shown in the figure. For example, a SoC may further include hardware codecs for processing image data, security blocks, etc.
[0042] CPU 110 runs software (e.g., applications, operating systems, and device drivers) to be executed in host 100. CPU 110 may run an operating system (OS) loaded onto memory device 200. CPU 110 may run various applications to be driven by the operating system (OS). Specifically, CPU 110 may patch training code (TC) loaded onto memory device 200 and run the training code (TC).
[0043] CPU 110 can control memory controller 120 to perform training operations on memory device 200 according to the execution of training code (TC). CPU 110 can be provided as a homogeneous multi-core processor or a heterogeneous multi-core processor.
[0044] The memory controller 120 may be included in the memory device 200 or in the host 100 to control the memory device 200. The host 100 may send a read request to the memory controller 120 to read data stored in the memory device 200. The memory controller 120 may access the memory device 200 to read the data requested by the host. The host may be connected to the memory device 200 via at least one channel.
[0045] Therefore, memory controller 120 can provide an interfacing between memory device 200 and SoC. Memory controller 120 can access memory device 200 in response to requests from CPU 110 or another function block (IP).
[0046] For example, memory controller 120 can write data to memory device 200 in response to a write request from CPU 110. Alternatively, memory controller 120 can read data from memory device 200 and transfer the data to CPU 110 or non-volatile memory interface 150. During training operations, memory controller 120 can release channel interleaving or adjust channel interleaving cells in response to a request from CPU 110.
[0047] Additionally, the memory controller 120 can access the memory device 200 in response to requests from various master function blocks (or master IPs) of the host. For example, in response to a request to access the memory device 200, the memory controller 120 can transmit data DQ synchronously with the strobe signal DQS. Alternatively, the memory controller 120 can receive data DQ output from the memory device 200 synchronously with the strobe signal DQS.
[0048] GPU 130 performs various graphics operations in response to requests from CPU 110. For example, GPU 130 can convert data requested for processing into data suitable for a display (not shown). GPU 130 may have a computational architecture that is advantageous for parallel processing, in which similar operations are repeatedly processed.
[0049] User interface controller 140 controls user input and output from user interface devices (e.g., keyboard, touch panel, or display). For example, user interface controller 140 may display a keyboard screen for receiving data on a display (not shown) under the control of CPU 110. Alternatively, user interface controller 140 may control the display to show data requested by the user. User interface controller 140 may decode data provided from user input interface devices (such as keyboard, mouse, and touch panel) into user input data.
[0050] The non-volatile memory interface 150 accesses the non-volatile memory 180 in response to a request from the CPU 110. That is, the non-volatile memory interface 150 provides an interface between the SoC and the non-volatile memory 180. For example, data processed by the CPU 110 is stored in the non-volatile memory 180 via the non-volatile memory interface 150. Furthermore, data stored in the non-volatile memory 180 can be provided to the CPU 110 via the non-volatile memory interface 150.
[0051] Accelerator 160 can be provided as a separate function block to improve the processing speed of multimedia or multimedia data. For example, accelerator 160 can be provided as a function block (IP) to improve the processing performance of text, audio, still images, animation, video, two-dimensional data, or three-dimensional data.
[0052] System interconnect 170 is a system bus used to provide on-chip networking within the SoC. System interconnect 170 may include, for example, a data bus, an address bus, and a control bus. The data bus provides the path through which data travels. The data bus may primarily provide a memory access path through which memory device 200 or non-volatile memory 180 can be accessed. The address bus provides an address exchange path through which addresses can be exchanged between functional blocks (IPs). The control bus provides the path through which control signals are transmitted between functional blocks (IPs). However, the configuration of system interconnect 170 is not limited to the above description and may further include mediation devices for efficient management.
[0053] Non-volatile memory 180 is provided as a host storage medium (or storage unit). Non-volatile memory 180 can store firmware (FW), applications, OS images, and various data. Specifically, training code (TC) for training memory device 200 can be stored in a specific area of non-volatile memory 180. However, training code (TC) can also be stored in non-volatile memory other than non-volatile memory 180. Non-volatile memory 180 can be provided as a memory card (e.g., MMC, eMMC, Secure Digital (SD), Micro SD, etc.). For example, non-volatile memory 180 may include NAND flash memory with a large storage capacity.
[0054] Alternatively, the non-volatile memory 180 may include NOR flash memory or next-generation non-volatile memory, such as PRAM, MRAM, ReRAM, FRAM, etc. In another example embodiment of this disclosure, the non-volatile memory 180 may be internal memory provided within the SoC.
[0055] Figure 3 This is a flowchart illustrating a training method for a memory device according to some example embodiments.
[0056] Reference Figure 2 and Figure 3 This can describe a training method for a memory device 200 according to some example embodiments.
[0057] First, non-volatile memory and a memory device are provided (operation S100). Further details will be provided below. Figure 5For example, a total of M electronic devices, from the first electronic device Device_1 to the Mth electronic device Device_M, can be provided. The method of providing the memory device can be performed in various forms, including production. From the first electronic device Device_1 to the Mth electronic device Device_M, any one of the electronic devices, i.e., the mth electronic device Device_m (1 ≤ m ≤ M), can be provided.
[0058] Configuration parameters are stored in the non-volatile memory of each electronic device (operation S200). In operation S200 according to some example embodiments, multiple configuration parameters (CP) can be stored by firmware (FW) stored in the non-volatile memory, the values of which vary depending on the voltage and temperature of the memory device.
[0059] In operation S200, the method of storing configuration parameters (CP) can vary according to the example embodiment. A detailed description of the example embodiment of operation S200 will be described later.
[0060] The operating voltage and operating temperature of the memory device 200 are measured (operation S300). In operation S300, when the memory device 200 is operating after startup, the operating voltage and operating temperature required to operate the memory device 200 are measured.
[0061] Configuration parameters (CP) corresponding to the operating voltage and operating temperature of memory device 200 are mapped to memory device 200 (operation S400). Further reference... Figure 12 Before performing the mapping, the product firmware (PFW) can load the configuration parameter (CP) corresponding to the operating voltage and operating temperature from among a number of configuration parameters (CP) onto the memory controller 120.
[0062] Loaded configuration parameters (CP) can be mapped to memory device 200 via memory controller 120 without performing a separate training operation, as will be described below. As in the measurement operation described above, the mapping operation of memory device 200 can be performed after memory device 200 is started.
[0063] Figure 4 This is an explanation Figure 3 A flowchart of an example embodiment of the configuration parameter storage operation. Figures 5 to 7 This is an explanation based on Figure 4 A diagram illustrating example statistical prediction modeling in an example embodiment. Figure 8 and Figure 9 It is a description Figure 4 The training operation of S250 is illustrated in the figure.
[0064] The configuration parameter CP1, along with the voltage and temperature, is stored in the non-volatile memory 180 of each electronic device (operation S210).
[0065] The voltage, temperature, and corresponding configuration parameters stored in the non-volatile memory 180 are sent to the server (operation S220).
[0066] Reference Figure 3 and Figure 5 In operation S100, an electronic system including multiple (M) electronic devices (Device_1 to Device_M) is provided. The first electronic device Device_1 includes a first memory device 200_1, a first memory controller 120_1, and a first non-volatile memory 180_1. The first non-volatile memory 180_1 stores first firmware FW1. The first firmware FW1 can store a first operating voltage V_1, a first operating temperature T_1, and a first configuration parameter CP1(1,1) corresponding to the first operating voltage V_1 and the first operating temperature T_1 into the first non-volatile memory 180_1.
[0067] The first memory controller 120_1 can send the first operating voltage V_1, the first operating temperature T_1, and the first configuration parameter CP1(1,1) corresponding to the first operating voltage V_1 and the first operating temperature T_1 of the first memory device 200_1 to the first non-volatile memory 180_1. The first firmware FW1 can send the first operating voltage V_1, the first operating temperature T_1, and the first configuration parameter CP1(1,1) corresponding to the first operating voltage V_1 and the first operating temperature T_1 to the server 500.
[0068] The Mth electronic device, Device_M, includes an Mth memory device 200_M, an Mth memory controller 120_M, and an Mth non-volatile memory 180_M. The Mth non-volatile memory 180_M stores a first firmware FW1. The first firmware FW1 can store the Mth operating voltage V_M, the Mth operating temperature T_M of the Mth memory device 200_M, and a first configuration parameter CP1(M,M) corresponding to the Mth operating voltage V_M and the Mth operating temperature T_M into the Mth non-volatile memory 180_M.
[0069] The Mth memory controller 120_M can send the Mth operating voltage V_M, the Mth operating temperature T_M, and the first configuration parameter CP1(M,M) corresponding to the Mth operating voltage V_M and the Mth operating temperature T_M of the Mth memory device 200_M to the Mth non-volatile memory 180_M. The first firmware FW1 can send the Mth operating voltage V_M, the Mth operating temperature T_M, and the first configuration parameter CP1(M,M) corresponding to the Mth operating voltage V_M and the Mth operating temperature T_M to the server 500.
[0070] The m-th electronic device (Device_m) includes an m-th memory device 200_m, an m-th memory controller 120_m, and an m-th non-volatile memory 180_m. The m-th non-volatile memory 180_m stores first firmware FW1. The first firmware FW1 can store the m-th operating voltage V_m, the m-th operating temperature T_m of the m-th memory device 200_m, and the first configuration parameter CP1(m,m) corresponding to the m-th operating voltage V_m and the m-th operating temperature T_m into the m-th non-volatile memory 180_m.
[0071] The m-th memory controller 120_m can send the m-th operating voltage V_m, the m-th operating temperature T_m, and the first configuration parameter CP1(m,m) corresponding to the m-th operating voltage V_m and the m-th operating temperature T_m of the m-th memory device 200_m to the m-th non-volatile memory 180_m. The first firmware FW1 can send the m-th operating voltage V_m, the m-th operating temperature T_m, and the first configuration parameter CP1(m,m) corresponding to the m-th operating voltage V_m and the m-th operating temperature T_m to the server 500.
[0072] The first operating voltage V_1, the m-th operating voltage V_m, and the M-th operating voltage V_M may be the same as or different from each other. The first operating temperature T_1, the m-th operating temperature T_m, and the M-th operating temperature T_M may be the same as or different from each other. The description of the first configuration parameter CP1 is given herein for illustrative purposes only as an example of the configuration parameters (CP) of this disclosure, and the configuration parameters (CP) of this disclosure are not limited to the first configuration parameter CP1.
[0073] The firmware FW1 stored in the non-volatile memory 180 can store operating voltage, operating temperature, and configuration parameters in the non-volatile memory 180, and can send the stored data to the server 500. As described above, the transmission to the server 500 can be performed through the non-volatile memory interface 150 and the system interconnect 170, but the transmission scheme may vary depending on the embodiment.
[0074] The server performs statistical prediction modeling on the configuration parameters (CP) corresponding to voltage and temperature sent in operation S220 (operation S230). According to the example embodiment, multiple configuration parameters (CP) may exist for the memory device 200. The server can perform statistical prediction modeling individually for each configuration parameter (CP) using voltage and temperature as independent variables.
[0075] Reference Figure 6 Server 500 can store M sets of data (V, T, CP1) regarding the first configuration parameter CP1. Regarding the first configuration parameter CP1, the M data can exist in the VT graph region, and the corresponding data can overlap in the VT region.
[0076] For example, such as Figure 6 As shown, in the VT region, (V_m,T_m) and (V_n,T_n) can be the same, but CP1(m,m) and CP1(n,n) can be as follows: Figure 6 The values shown may differ from each other, or CP1(m,m) and CP1(n,n) may be the same. Server 500 can perform statistical forecasting modeling on M sets of data (V,T,CP1).
[0077] Statistical predictive modeling techniques may include the Akaike Information Criterion (AIC), AIC Correction (AICc), Bayesian Information Criterion, Maximum Likelihood Estimation (MLE), and Bayesian methods. However, statistical predictive modeling according to the example embodiments is not limited to the modeling methods described above. The methods described above can select the most suitable model from candidate models by using the likelihood function values of candidate models from given data, and depending on the embodiment, a model different from the one presented above may be selected.
[0078] After performing statistical prediction modeling on M sets of data (V,T,CP1) related to the first configuration parameter CP1, the server 500 can provide a statistical prediction model f(V,T)=CP1 related to voltage-temperature (VT) and the first configuration parameter CP1.
[0079] The statistical prediction model f(V,T) = CP1 is stored in the non-volatile memory 180 of each electronic device (operation S240). The training method according to some example embodiments may include storing the statistical prediction model in the non-volatile memory 180 via a first firmware FW1.
[0080] Further reference Figure 7In the above operation S240, in the electronic system according to some example embodiments, the statistical prediction model f(V,T)=CP1 related to the first configuration parameter CP1 stored in the first to M non-volatile memory (180_1~180_M) of the first to M electronic devices (Device 1~Device M) can be the same.
[0081] According to some example embodiments, the statistical prediction model f(V,T)=CP1 related to the first configuration parameter CP1 can be stored in the non-volatile memory 180 through the first firmware FW1.
[0082] Training of a statistical prediction model for the storage based on the characteristics of each storage device 200 is performed (operation S250). In the training method according to some example embodiments, a second firmware FW2 (or tuning firmware) may perform training for tuning the statistical prediction model for the storage.
[0083] Reference Figure 8 and Figure 9 The memory controller 120 loads the statistical prediction model f(V,T)=CP1 and the first training code TC1 stored in the non-volatile memory 180 onto the memory device 200 (operation S251).
[0084] Reference Figure 9 ,exist Figure 6 The statistical prediction model f(V,T) = CP1 and the first training code TC1 for the first configuration parameter CP1 can be stored in the m-th non-volatile memory 180_m included in the m-th electronic device Device_m. The second firmware FW2 can send the statistical prediction model and the first training code TC1 to the m-th memory controller 120_m, and the m-th memory controller 120_m can load them into the m-th memory device 200_m.
[0085] CPU 110 performs training on the loaded statistical prediction model f(V,T) = CP1 (operation S252). The m-th CPU 110_m allows the m-th memory device 200_m to perform training on the loaded statistical prediction model f(V,T) = CP1 using the first training code TC1 via the m-th memory controller 120_m. The training in operation S252 can reflect the operational characteristics of the m-th memory device 200_m of the m-th electronic device Device_m. Therefore, the adjusted statistical prediction models obtained by adjusting the stored statistical prediction models in association with the first configuration parameters CP1 of different electronic devices can be different from each other.
[0086] The statistical prediction model, the configuration parameters to be trained, and the training code include, but are not limited to, the statistical prediction model f(V,T)=CP1 related to the first configuration parameter CP1, the corresponding first configuration parameter CP1, and the training code TC1.
[0087] In the training method according to some example embodiments, operation S252 can be performed by software training (S / W training). S / W training corresponds to fine-tuning the parameters determined by hardware training (H / W training). S / W training is a process for readjusting the parameters set by H / W training to values that provide optimal reliability for timely data delivery. However, if different training is required considering the purpose and efficiency of training, the training in operation S252 is not limited to S / W training.
[0088] The second firmware FW2 stores the adjusted statistical prediction model g(V,T)=CP′1 (operation S253) that has been trained on it in the non-volatile memory 180.
[0089] According to some example embodiments, the second firmware FW2 can store an adjusted statistical prediction model g(V,T)=CP′1 related to the first configuration parameter CP1 in a designated location, so that the product firmware (PFW) can use the adjusted statistical prediction model. The second firmware FW2 according to some example embodiments can be replaced by the PFW, and in the example embodiments, in Figure 3 In operation S200, multiple first configuration parameters CP1 can be stored by adjusting the statistical prediction model g(V,T)=CP′1.
[0090] Figure 10 and Figure 11 It is a description Figure 3 A diagram illustrating another example embodiment of the configuration parameter storage operation.
[0091] Reference Figure 10 and Figure 11 An electronic system comprising multiple electronic devices (Device 1 to Device M) is provided. Multiple predetermined first configuration parameters CP1_1 associated with a first configuration parameter CP1 can be stored in the first non-volatile memory 180_1 of the first electronic device Device_1 via firmware (FW).
[0092] Multiple predetermined first-Mth configuration parameters CP1_M associated with the first configuration parameter CP1 can be stored in the Mth non-volatile memory 180_M of the Mth electronic device Device_M via firmware (FW).
[0093] Multiple predetermined first-m configuration parameters CP1_m associated with the first configuration parameter CP1 can be stored in the m-th non-volatile memory 180_m of the m-th electronic device Device_m (1≤m≤M) via firmware (FW).
[0094] The first configuration parameter CP1_1, the first m-th configuration parameter CP1_m, and the first M-th configuration parameter CP1_M are associated with the first configuration parameter CP1, and their values may vary depending on the operating voltage and operating temperature of the memory device 200.
[0095] According to the example embodiment, there may be cases where the values of the first_first_first_configuration parameter CP1_1, the first_m_th_configuration parameter CP1_m, and the first_M_th_configuration parameter CP1_M in the electronic system are the same for the same operating voltage and the same operating temperature, and there may also be cases where the values of the first_first_configuration parameter CP1_1, the first_m_th_configuration parameter CP1_m, and the first_M_th_configuration parameter CP1_M in the electronic system are different for the same operating voltage and the same operating temperature.
[0096] As described above, the configuration parameters (CP) for the memory device 200 may include other configuration parameters (CP) besides the first configuration parameter CP1, and may include the nth configuration parameter CPn and the mth configuration parameter CPm.
[0097] According to some example embodiments, a plurality of predetermined nth-mth configuration parameters CPn_m and a plurality of predetermined mth-mth configuration parameters CPm_m can be stored in the mth non-volatile memory 180_m of the mth electronic device Device_m in the electronic system.
[0098] According to the example embodiment, the parameter values may vary depending on the operating voltage (V_a,...,V_m,...,V_x) and operating temperature (T_a,...,T_n,...,T_y) of the m-th memory device 200_m. The predetermined n-m configuration parameter CPn_m and the predetermined m-m configuration parameter CPm_m may be stored in tabular form in the m-th non-volatile memory 180_m.
[0099] The description of the m-th electronic device Device_m is given as an example for illustrative purposes only, and this disclosure is not limited to the m-th electronic device Device_m.
[0100] Figure 12 It is a description Figure 3 A diagram illustrating an example embodiment of the mapping operation.
[0101] Reference Figure 12When the m-th electronic device Device_m is started, the operating voltage V and operating temperature T of the m-th memory device 200_m are sent to the PFW. A first configuration parameter CP1 corresponding to the operating voltage V and operating temperature T can be sent to the m-th memory controller 120_m.
[0102] The m-th memory controller 120_m can map the received first configuration parameter CP1 to the m-th memory device 200_m. The mapping operation can be performed in the same manner as training to adjust the configuration parameters, without performing the training operation using the first training code TC1.
[0103] Figure 13 It is a description Figure 3 A diagram illustrating an example embodiment of the mapping operation.
[0104] Reference Figure 13 When driving the m-th electronic device Device_m, sensor 400 can periodically sense the operating voltage V and operating temperature T of the m-th memory device 200_m. During sensing, if there is a change in the operating voltage V and operating temperature T of the m-th memory device 200_m, sensor 400 can send the changed operating voltage V and / or changed operating temperature T to the PFW. The subsequent operation is related to... Figure 12 same.
[0105] Figure 14 It is a description based on Figure 12 A timing diagram showing the effects of an example embodiment.
[0106] Reference Figure 3 and Figure 14 The startups B1, B2, and B3 of the electronic device can exist within a regular training process. After multiple startups B1, B2, and B3, training Tr is executed. It is assumed that the electronic device is powered off during the time interval between the execution of training Tr and the next startup. Training Tr may include using training code to adjust configuration parameters. Therefore, the time required to adjust configuration parameters in training Tr after the first startup B1, the second startup B2, and the third startup B3 can be the same.
[0107] In the training method according to some example embodiments, multiple startups B′1, B′2, and B′3 may exist. Training Tr' may be performed after the first startup B′1. Subsequently, mapping M may occur after the second startup B′2, and mapping M may occur after the third startup B′3.
[0108] After the initial start of B′1, training Tr' can include Figure 3 Operations S200 to S400, and the mapping M following the second startup B'2 or the third startup B'3 may include Figure 3The operation of S400, excluding Figure 3 Operation S200. During execution Figure 3 Following operation S200, the training method according to some example embodiments can adjust the training parameters solely by mapping M, taking into account voltage and / or temperature changes, without performing a separate training operation using training code TC. Therefore, the time required to adjust the training parameters can be reduced after the second startup B'2.
[0109] exist Figure 14 In the example, execution occurs after the first startup B′1. Figure 13 Operation S200. However, in electronic devices according to some example embodiments, multiple configuration parameters (CP) can be stored in non-volatile memory 180 without separate startup.
[0110] Figure 15 It is a description based on Figure 13 A timing diagram showing the effects of an example embodiment.
[0111] Reference Figure 3 and Figure 15 Multiple starts B1 and B2 of the electronic device can exist in general routine training. After the second start B2, a first voltage-temperature change C1 and a second voltage-temperature change C2 may occur. After the first voltage-temperature change C1 and the second voltage-temperature change C2, a first voltage-temperature sensing S1 and a second voltage-temperature sensing S2 for the memory device can be performed respectively. The voltage-temperature sensing S1 and S2 can be performed periodically, and the period can be unlimited.
[0112] After each of the multiple startups B1 and B2, and after each of the voltage and temperature sensing S1 and S2, training Tr is performed. Training Tr may include using training code to adjust configuration parameters. Therefore, the time required to adjust the configuration parameters can be the same in training Tr after each of the first startup B1, the second startup B2, the first voltage and temperature sensing S1, and the second voltage and temperature sensing S2.
[0113] In the training method according to some example embodiments, multiple startups B′1 and B′2 of the electronic device may exist. After a second startup B′2, a first voltage-temperature change C′1 and a second voltage-temperature change C′2 may occur. After the first voltage-temperature change C′1 and the second voltage-temperature change C′2, a first voltage-temperature sensing S′1 and a second voltage-temperature sensing S′2 for the memory device may be performed respectively. The voltage-temperature sensing S′1 and S′2 may be performed periodically, and the period may be unlimited.
[0114] like Figure 14As in the example, after the first startup B′1 in the embodiment, training Tr' may include Figure 3 Operations S200 to S400, and mapping M may include Figure 3 The operation of S400, excluding Figure 3 Operation S200. During execution Figure 3 Following operation S200, the training method according to some example embodiments can adjust the training parameters solely by mapping M, taking into account voltage and / or temperature changes, without performing a separate training operation using training code TC. Therefore, the time required to adjust the training parameters can be reduced after the second startup B′2.
[0115] exist Figure 15 In the middle, it is executed after the first startup B′1. Figure 3 Operation S200. However, in electronic devices according to some example embodiments, multiple configuration parameters (CP) can be stored in non-volatile memory 180 without separate startup.
[0116] Electronic devices according to some example embodiments can reduce startup time by pre-storing device-dependent configuration parameters, operating voltage, and / or operating temperature of the memory device included in the electronic device. Furthermore, by periodically adjusting the configuration parameters, the electronic device can reduce training time, thereby reducing the open time of the memory device.
[0117] The effects of this disclosure are not limited to those described above, and other effects not described herein will become clear to those skilled in the art from the following description.
[0118] According to the example embodiments, at least one of the components, elements, modules, or units described herein can be embodied in various numbers of hardware, software, and / or firmware structures that perform the corresponding functions described above. For example, at least one of these components, elements, or units can use direct circuit structures, such as memory, processors, logic circuits, lookup tables, etc., which can operate the corresponding functions under the control of one or more microprocessors or other control devices. Furthermore, at least one of these components, elements, or units can be embodied in a portion of a module, program, or code containing one or more operable instructions for performing a specified logical function, and operated by one or more microprocessors or other control devices. Furthermore, at least one of these components, elements, or units can further include or be implemented by a processor, such as a central processing unit (CPU), microprocessor, etc., that performs the corresponding functions. Two or more of these components, elements, or units can be combined into a single component, element, or unit that performs all the operations or functions of the combined two or more components, elements, or units. Furthermore, at least a portion of the functionality of at least one of these components, elements, or units can be performed by another of these components, elements, or units. Furthermore, communication between components, elements, or units can be performed via a bus. The functional aspects of the above example embodiments can be implemented using algorithms that run on one or more processors. Furthermore, the components, elements, or units represented by blocks or processing operations can employ any number of related technologies used for electronic configuration, signal processing and / or control, data processing, etc.
[0119] It should be understood that the embodiments described herein should be considered in a descriptive sense only and not for limiting purposes. The description of features or aspects in each embodiment should typically be considered applicable to other similar features or aspects in other embodiments. Although one or more embodiments have been described with reference to the accompanying drawings, those skilled in the art will understand that various changes in form and detail may be made therein without departing from the spirit and scope defined by the appended claims.
Claims
1. An electronic device, comprising: Memory devices; The non-volatile memory is configured to store a plurality of first configuration parameters corresponding to the operating voltage of the memory device and a plurality of second configuration parameters corresponding to the operating temperature of the memory device. as well as The memory controller is configured as follows: Determine the value of a third configuration parameter, which corresponds to the operating voltage of the memory device, among a plurality of first configuration parameters stored in non-volatile memory, without performing a training operation; Determine the value of a fourth configuration parameter, which corresponds to the operating temperature of the memory device, among a plurality of second configuration parameters stored in non-volatile memory, without performing a training operation; as well as Drive the memory device according to the determined values of the third and fourth configuration parameters.
2. The electronic device according to claim 1, wherein, The non-volatile memory is also configured to store a first statistical prediction model corresponding to the first configuration parameter and modeled based on voltage, and a second statistical prediction model corresponding to the second configuration parameter and modeled based on temperature. The non-volatile memory is also configured to store adjustment firmware, which is configured as follows: Based on the voltage characteristics of the memory device, the first statistical prediction model is adjusted to a first adjusted statistical prediction model; and Based on the temperature characteristics of the memory device, the second statistical prediction model is adjusted to a second adjusted statistical prediction model. In the first adjusted statistical prediction model, the third configuration parameter is loaded onto the memory controller, and in the second adjusted statistical prediction model, the fourth configuration parameter is loaded onto the memory controller.
3. The electronic device according to claim 2, wherein, The firmware is also configured to perform fine training on a first statistical prediction model to reflect the voltage characteristics of the memory device, and to perform fine training on a second statistical prediction model to reflect the temperature characteristics of the memory device.
4. The electronic device according to claim 2, wherein, The memory controller is also configured to map the loaded third and fourth configuration parameters to the memory device.
5. The electronic device according to claim 1, wherein, The non-volatile memory is also configured to store a first table about a first configuration parameter and a second table about a second configuration parameter, wherein the value of the first configuration parameter in the first table varies based on the operating voltage, and the value of the second configuration parameter in the second table varies based on the operating temperature.
6. The electronic device according to claim 5, wherein, The non-volatile memory also includes product firmware, which is configured to load a third configuration parameter and a fourth configuration parameter based on the operating voltage and operating temperature, respectively.
7. The electronic device according to claim 1, wherein, The non-volatile memory also includes product firmware, which is configured to load third and fourth configuration parameters corresponding to the operating voltage and operating temperature, respectively.
8. The electronic device according to claim 7, wherein, The memory controller is also configured to map the loaded third and fourth configuration parameters to the memory device after the memory device is powered on.
9. The electronic device according to claim 7, wherein, The product firmware is also configured to load at least one of a third configuration parameter and a fourth configuration parameter corresponding to at least one of the changed operating voltage and operating temperature, based on a change in at least one of the operating voltage and operating temperature. The memory controller is also configured to map the loaded third and fourth configuration parameters to the memory device.
10. The electronic device according to claim 1, wherein, The memory device is configured to retain the data stored in the memory device after the memory device is powered off.
11. The electronic device according to claim 1, wherein, The memory device is configured to delete the data stored in the memory device after the memory device is powered off.
12. A method for training a memory device, the method comprising: The storage cell stores multiple first configuration parameters corresponding to the operating voltage and operating temperature of the memory device; After storing multiple initial configuration parameters, the memory device is started. Measure the operating voltage and operating temperature of the activated memory device; The second configuration parameter, which corresponds to the operating voltage and operating temperature, is loaded into the memory controller from among the multiple first configuration parameters. as well as The second configuration parameter is mapped to a memory device instead of performing a training operation.
13. The method according to claim 12, wherein, Storing multiple first configuration parameters includes: The storage unit stores a statistical prediction model of the first configuration parameter based on voltage and temperature modeling. Training is performed based on the operational characteristics of the memory device to adjust the stored statistical prediction model into an adjusted statistical prediction model; and The adjusted statistical prediction model is stored in the storage unit.
14. The method according to claim 13, wherein, The training process involves fine-tuning the statistical prediction model by reflecting the operational characteristics of the memory device.
15. The method according to claim 13, wherein, The storage adjustment statistical prediction model includes storing the adjusted statistical prediction model in a predetermined location in the storage unit to allow the product firmware to load the second configuration parameters.
16. The method according to claim 12, wherein, Storing multiple first configuration parameters includes storing multiple first configuration parameters predetermined according to the operating voltage and operating temperature in a storage unit.
17. The method of claim 12, further comprising: After mapping, Remeasure the operating voltage and operating temperature of the memory device; as well as Based on changing at least one of the operating voltage and operating temperature, a second configuration parameter corresponding to at least one of the changed operating voltage and operating temperature is remapped to the memory device.
18. The method according to claim 17, wherein, The remapping involves performing a remapping operation without performing a training operation.
19. An electronic system comprising: A first electronic device includes: a first memory device included in a memory device; a first non-volatile memory configured to store a plurality of first configuration parameters corresponding to the operating voltage and operating temperature of the first memory device; and a first memory controller configured to control the first memory device; and The second electronic device includes: a second memory device included in the memory device; a second non-volatile memory configured to store a plurality of second configuration parameters corresponding to the operating voltage and operating temperature of the second memory device; and a second memory controller configured to control the second memory device. The second electronic device is separate from the first electronic device. The first memory controller is further configured to map a third configuration parameter, which is one of a plurality of first configuration parameters and corresponds to the operating voltage and operating temperature of the first memory device, to the first memory device, without performing a training operation. The second memory controller is further configured to map a fourth configuration parameter, which corresponds to the operating voltage and operating temperature of the second storage device, among a plurality of second configuration parameters to the second storage device, without performing a training operation.
20. The electronic system according to claim 19, wherein, The first non-volatile memory includes first firmware configured to adjust a statistical prediction model based on voltage and temperature modeling of first configuration parameters to a first statistical prediction model based on the operating characteristics of the first memory device. The first firmware is also configured to store the first statistical prediction model in the first non-volatile memory. The second non-volatile memory includes second firmware, which is configured to adjust a statistical prediction model based on voltage and temperature modeling of the second configuration parameters to a second statistical prediction model based on the operating characteristics of the second memory device. The second firmware is also configured to store the second statistical prediction model in the second non-volatile memory.
Citation Information
Patent Citations
Additive manufacturing system with finishing-follower part
KR1020190107008A
Storage device comprising variable resistance memory and related method of operation
CN103578533A
Data processing method and storage equipment
CN106775491A