CN111949100A - Temperature control method, device and equipment of memory and storage medium - Google Patents

Temperature control method, device and equipment of memory and storage medium Download PDF

Info

Publication number
CN111949100A
CN111949100A CN202010903763.2A CN202010903763A CN111949100A CN 111949100 A CN111949100 A CN 111949100A CN 202010903763 A CN202010903763 A CN 202010903763A CN 111949100 A CN111949100 A CN 111949100A
Authority
CN
China
Prior art keywords
credit
memory
temperature
temperature control
target
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202010903763.2A
Other languages
Chinese (zh)
Other versions
CN111949100B (en
Inventor
方浩俊
印中举
陆震熙
黄运新
杨亚飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Dapu Microelectronics Co Ltd
Original Assignee
Shenzhen Dapu Microelectronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Dapu Microelectronics Co Ltd filed Critical Shenzhen Dapu Microelectronics Co Ltd
Priority to CN202010903763.2A priority Critical patent/CN111949100B/en
Publication of CN111949100A publication Critical patent/CN111949100A/en
Application granted granted Critical
Publication of CN111949100B publication Critical patent/CN111949100B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/20Cooling means
    • G06F1/206Cooling means comprising thermal management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

The application discloses a temperature control method of a memory, which comprises the following steps: monitoring the working temperature of the memory; determining whether a preset temperature control trigger condition is reached currently or not according to the working temperature of the memory and a preset temperature threshold; if so, determining the remaining credit amount based on the current credit total amount of the credit pool under the condition that the I/O operation is to be executed; based on the remaining credit, it is determined whether to perform the I/O operation. By applying the technical scheme provided by the embodiment of the application, the aim of controlling the working temperature of the memory is fulfilled by controlling the number of I/O operations, the frequency switching is not needed, the working temperature of the memory can be timely and effectively controlled, and the influence on the normal operation of an electronic product is avoided. The application also discloses a temperature control device, equipment and a storage medium of the memory, and the device and the equipment have corresponding technical effects.

Description

Temperature control method, device and equipment of memory and storage medium
Technical Field
The present application relates to the field of computer application technologies, and in particular, to a method, an apparatus, a device, and a storage medium for controlling temperature of a memory.
Background
At present, Solid State Disk (SSD) and other memories are more and more commonly used in electronic products such as computers and servers. The solid state disk has a certain working temperature range, and the normal operation of the electronic product can be guaranteed only when the working temperature of the solid state disk is within the working temperature range. In the working process of an electronic product, when the ambient temperature rises, the working load is increased, the working temperature of the solid state disk easily exceeds the working temperature range, and under the condition, the aim of reducing the temperature is generally achieved by reducing the working power consumption.
Flash memory (NAND Flash) is the main storage medium of solid state disk, and the operating power consumption of solid state disk depends on such devices. At present, the conventional method is to reduce the access clock frequency of the flash memory to achieve the purpose of cooling the solid state disk, and the schematic diagram of the burst pulse before and after the frequency reduction is shown in fig. 1.
The method has certain disadvantages that the change of the clock frequency between the main control of the solid state disk and the flash memory needs to be completed in an idle state. The idle state needs to wait for the completion of the command being executed before entering, which results in high time overhead. In addition, the master is required to send a command to the flash memory to complete clock frequency switching, which also brings a certain time overhead. That is to say, the problem that temperature control lags exists in the conventional method, the working temperature of the solid state disk cannot be controlled in time, and the normal operation of an electronic product is easily influenced.
Disclosure of Invention
The application aims to provide a temperature control method, a temperature control device, equipment and a storage medium of a storage, so that the working temperature of the storage can be effectively controlled in time, and the influence on the normal operation of an electronic product is avoided.
In order to solve the technical problem, the application provides the following technical scheme:
a method of temperature control of a memory, comprising:
monitoring the working temperature of the memory;
determining whether a preset temperature control trigger condition is reached currently or not according to the working temperature of the memory and a preset temperature threshold;
if so, determining the remaining credit amount based on the current credit total amount of the credit pool under the condition that the I/O operation is to be executed;
and determining whether to execute the I/O operation according to the residual credit amount.
In one embodiment of the present application, the determining the remaining credit amount based on the current credit total amount of the credit pool includes:
determining a credit consumption total for the I/O operation;
determining a remaining credit amount based on a current credit amount of a credit pool and the credit consumption amount.
In one embodiment of the present application, the current credit amount is determined according to a maximum credit amount of the credit pool and a target step amount, and after the determining whether to perform the I/O operation according to the remaining credit amount, the method further includes:
upon completion of an I/O limit cycle, if an operating temperature of the memory does not reach a target temperature, decreasing the current credit total based on the target step amount;
determining a remaining credit based on the reduced current total amount of credits of the credit pool in the event that there is an I/O operation to be performed;
and repeating the step of determining whether to execute the I/O operation according to the remaining credit.
In an embodiment of the application, after the determining whether to perform the I/O operation according to the remaining credit, the method further includes:
obtaining the working temperature of the memory under the condition that a set time interval is reached;
if the working temperature of the memory does not exceed the temperature threshold, determining whether the temperature difference between the working temperature of the memory and the temperature threshold is greater than a preset temperature difference threshold;
if yes, increasing the current credit total amount based on the target stepping amount;
determining a remaining credit based on the incremented current credit total of the credit pool in the event that an I/O operation is to be performed;
and repeating the step of determining whether to execute the I/O operation according to the remaining credit.
In one embodiment of the present application, the determining whether to perform an I/O operation according to the remaining credit includes:
determining an amount of credit consumption required for the I/O operation to be performed;
determining not to perform the I/O operation if the credit consumption amount is greater than the remaining credit amount.
In one embodiment of the present application, the method further includes:
in the event that an I/O operation is completed, the credit spending amount for that I/O operation is returned to the credit pool.
In a specific embodiment of the present application, the determining whether a preset temperature control trigger condition is currently reached according to the working temperature of the memory and a preset temperature threshold includes:
if the working temperature of the memory exceeds the temperature threshold, determining that a preset temperature control trigger condition is reached currently;
alternatively, the first and second electrodes may be,
and if the time length of the working temperature of the memory exceeding the temperature threshold reaches a set time length threshold, determining that the preset temperature control triggering condition is reached currently.
A temperature control device of a memory, comprising:
the working temperature monitoring module is used for monitoring the working temperature of the memory;
the temperature control triggering condition judging module is used for determining whether the current temperature control triggering condition is reached or not according to the working temperature of the memory and a preset temperature threshold value, and if so, the residual credit amount determining module is triggered;
the remaining credit determination module is used for determining the remaining credit based on the current credit sum of the credit pool under the condition that I/O operation is executed;
and the I/O operation execution judging module is used for determining whether to execute the I/O operation according to the remaining credit.
A temperature control device of a memory, comprising:
a storage unit for storing a computer program;
a processing unit for implementing the steps of the temperature control method of the memory according to any one of the above when the computer program is executed.
A computer-readable storage medium having stored thereon a computer program which, when executed by a processor, carries out the steps of the method of temperature control of a memory according to any one of the preceding claims.
By applying the technical scheme provided by the embodiment of the application, the working temperature of the memory is monitored, when the current temperature control trigger condition is determined to be reached according to the working temperature of the memory and the preset temperature threshold value, if I/O operation is to be executed, the residual credit is determined based on the current credit total of the credit pool, and whether the I/O operation is executed or not is determined according to the residual credit. The aim of controlling the working temperature of the memory is achieved by controlling the number of I/O operations. The frequency does not need to be switched, the working temperature of the memory can be effectively controlled in time, and the influence on the normal operation of the electronic product is avoided.
Drawings
In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only some embodiments of the present application, and for those skilled in the art, other drawings can be obtained according to the drawings without creative efforts.
FIG. 1 is a schematic diagram of burst before and after frequency reduction using a conventional solid state disk temperature control method;
FIG. 2 is a schematic diagram of a typical solid state disk assembly;
FIG. 3 is a diagram illustrating data transfer in a typical flash memory;
FIG. 4 is a flowchart illustrating an embodiment of a method for controlling temperature of a memory according to the present disclosure;
FIG. 5 is a diagram illustrating insertion of a delay into a burst according to an embodiment of the present application;
FIG. 6 is another schematic diagram of inserting a delay into a burst according to an embodiment of the present application;
fig. 7 is a flowchart illustrating another implementation of a method for controlling temperature of a solid state disk according to an embodiment of the present disclosure;
FIG. 8 is a flow control process based on credit in an embodiment of the present application;
fig. 9 is a flowchart illustrating another implementation of a method for controlling temperature of a solid state disk according to an embodiment of the present disclosure;
FIG. 10 is a block diagram of an embodiment of a solid state disk controller;
FIG. 11 is a schematic structural diagram illustrating a temperature control device of a memory according to an embodiment of the present disclosure;
fig. 12 is a schematic structural diagram of a temperature control device of a memory according to an embodiment of the present disclosure.
Detailed Description
The core of the application is to provide a temperature control method of a memory, wherein the memory can be a solid state disk and the like. For ease of understanding, before the present application is described, the structure of the solid state disk will be described.
Fig. 2 is a schematic diagram illustrating a typical solid state disk. As shown in fig. 2, the solid state disk may include a master Controller (Controller), a NAND Flash Array (NAND Flash Array), a DRAM (Dynamic Random Access Memory), and other Peripheral units, such as a PMIC (Power Management IC), an OSC (Open Source communication, Open Source code business software), a JTAG (Joint Test Action Group), an SPI Flash (Flash Memory using SPI (Serial Peripheral Interface) communication), a Sensor, a UART (Universal Asynchronous Receiver/Transmitter), a Connector (Connector), and the like.
The main control is used as a control operation unit and can manage the internal system of the solid state disk. The NAND Flash array is used as a storage unit for storing user data, system data and the like. A plurality of channels (CH for short) are presented between the main control and the NAND Flash array, and one Channel is independently connected with one group of NAND Flash array. Such as CH0, CH1, … …, CHx in fig. 2. The DRAM is used as a cache and algorithm table storage unit.
Fig. 3 is a schematic diagram of data transmission of a typical Flash memory (NAND Flash), in which queue data (DQ [7:0]) transmissions D0, D1, … …, and Dn are transmitted via I/O (Input/Output), which is generally a segment of continuous data transmission operation and may be referred to as Burst (Burst). The transmission speed is determined by the flip (Toggle) frequency of the I/O, and the speed can be influenced by changing the frequency, so that the working power consumption of the solid state disk is influenced.
In order that those skilled in the art will better understand the disclosure, the following detailed description will be given with reference to the accompanying drawings. It is to be understood that the embodiments described are only a few embodiments of the present application and not all embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present application.
Referring to fig. 4, there is shown a flowchart of an implementation of a method for controlling temperature of a memory according to an embodiment of the present application, where the method includes the following steps:
s410: the operating temperature of the memory is monitored.
In the working process of the electronic product, storage particles such as a flash memory of the memory and the like are in a normal operation state. In the case of full speed operation of the memory pellets, the division ratio is 1. I.e. without any frequency division, the performance of the memory is at its best.
As the stored particles operate, the operating temperature of the memory will change. The operating temperature of the memory can be monitored during operation of the memory particles.
Specifically, the working temperature of the memory can be monitored according to a certain monitoring period, the working temperature of the memory can be monitored in real time, and the working temperature of the memory can be monitored when a monitoring instruction is received.
S420: and determining whether the preset temperature control triggering condition is reached currently or not according to the working temperature of the memory and a preset temperature threshold value.
In the embodiment of the present application, a temperature threshold may be set in advance. The temperature threshold can be set and adjusted according to actual conditions, such as set according to the working temperature required by the storage particles of the electronic product, for example, set to 75 ℃.
In the process of monitoring the working temperature of the memory, the working temperature of the memory can be obtained, and whether the current temperature control trigger condition is reached or not can be determined according to the working temperature of the memory and a preset temperature threshold value.
In a specific embodiment of the present application, the working temperature of the memory may be compared with a preset temperature threshold, and whether a preset temperature control trigger condition is currently reached is determined according to the comparison result. Specifically, if the working temperature of the memory exceeds the temperature threshold, it is determined that the preset temperature control trigger condition is currently reached, or if the time length for which the working temperature of the memory exceeds the temperature threshold reaches the set time length threshold, it is determined that the preset temperature control trigger condition is currently reached.
The duration threshold may be set and adjusted based on empirical values. If the temperature rise slope (ratio of time to temperature change, representing the number of rise per minute) of the electronic product working environment is set according to an empirical value, the time threshold may be set to be smaller if the temperature rise or fall changes rapidly under the current working environment. Such as set to 3 minutes.
In the embodiment of the application, in the process of monitoring the working temperature of the memory, as long as the working temperature of the memory is monitored to exceed the preset temperature threshold, it can be considered that the temperature control trigger condition is currently reached, and the working temperature of the memory needs to be controlled, so that the influence on the normal work of the electronic product due to the overhigh working temperature of the memory is avoided.
Considering that the working temperature of the memory may fluctuate for a short time, when the working temperature of the memory exceeds the temperature threshold and reaches the set time threshold, the working temperature of the memory is considered to reach the temperature control triggering condition, and the working temperature of the memory needs to be controlled, so as to avoid the influence on the normal work of the electronic product caused by the overhigh working temperature of the memory.
Upon determining that the preset temperature control trigger condition is currently reached, the operation of step S430 may be continuously performed.
Of course, in the process of monitoring the working temperature of the memory, if the working temperature of the memory does not exceed the temperature threshold, it may be considered that the preset temperature control trigger condition is not reached currently, and both the memory and the electronic product may work normally. In this case, it is not necessary to control the operating temperature of the memory, and the delay insertion process may not be performed, as shown in fig. 4.
S430: and determining a target stepping parameter value.
In the process of monitoring the working temperature of the memory, if the preset temperature control trigger condition is determined to be reached currently according to the monitored working temperature of the memory, the target stepping parameter value can be determined firstly.
In an embodiment of the present application, the target step parameter value may include a target length step parameter value and a target number step parameter value. The target step parameter value may be determined based on a temperature difference between the operating temperature of the memory and the temperature threshold. Specifically, the larger the temperature difference is, the larger the determined target stepping parameter value can be, so as to quickly achieve the temperature control effect, and the smaller the temperature difference is, the smaller the determined target stepping parameter value can be, so as to avoid influencing the performance of the electronic product.
S440: and determining a target delay parameter value based on the target stepping parameter value.
After determining the target step parameter value, a target delay parameter value may be further determined based on the target step parameter value.
In the embodiment of the present application, the target stepping parameter value includes a target length stepping parameter value and a target number stepping parameter value, the target stepping parameter value corresponds to the target delay parameter value, the target length stepping parameter value corresponds to a target delay length value of the target delay parameter value, and the target number stepping parameter value corresponds to a target insertion number value of the target delay parameter value.
In one embodiment of the present application, the step may comprise the steps of:
and determining a target delay parameter value according to the sum of the preset initial delay parameter value and the target stepping parameter value.
A set of initial delay parameter values may be preset, for example, the initial delay parameter value is preset to 0, that is, the initial delay length value is 0, and the initial insertion number value is 0.
The target delay parameter value may be determined based on the sum of the initial delay parameter value and the target step parameter value. The target delay parameter value may include a target delay length value and a target number of insertions.
For example, the initial delay length value in the initial delay parameter values is denoted by Ld0, the initial insertion number value is denoted by Nd0, the target length step parameter value in the target step parameter values is denoted by Δ Ld, and the target number step parameter value is denoted by Δ Nd.
The target delay parameter value may be obtained by the following formula:
Ld=Ld0+ΔLd;
Nd=Nd0+ΔNd;
wherein Ld represents the target delay length value, and Nd represents the target insertion number value.
Different target delay parameter values can meet different frequency division requirements. When the working temperature of the memory needs to be controlled at the beginning, namely the initial stage of temperature control, the target delay length value and the target insertion frequency value in the target delay parameter value can be smaller, so that a larger frequency dividing ratio can be obtained. The larger the frequency dividing ratio is, the smaller the influence on the performance of the memory is, but the smaller the cooling effect is, and if the cooling effect cannot be achieved, the target delay parameter value can be adjusted in the later stage so as to quickly achieve the cooling effect.
In the embodiment of the present application, the delay length, the total I/O length corresponding to one I/O transmission requirement, the burst length, and the like may all be in units of clock cycles (Tclk). Generally, for a certain storage particle, the total I/O length is also determined, such as 16K, 32K, etc. Assuming that the total length of the I/O corresponding to the requirement of one-time I/O transmission is Yb, the length value of each delayed target delay is Ld, and the value of the delayed target insertion number is Nd. After inserting the delay into the burst, the frequency dividing ratio Rp can be expressed as:
Rp=Yb/(Ld*Nd+Yb)。
as can be seen from the equation, if Ld is 0 and Nd is 0, then Rp is 1, there is no frequency division, the performance of the memory is at its best, and the stored particles run at full speed; the smaller the Rp, the more the performance is reduced, the lower the speed of the stored particles is, and the better the cooling effect is. Different frequency division requirements can be realized by controlling the target delay length value and the target insertion number value.
There may be multiple schemes when the same divide ratio requirement is to be achieved. As shown in fig. 5, the target delay length value in the lower graph is 2 times the target delay length value in the upper graph, the target insertion order value in the lower graph is 1, the target insertion order value in the upper graph is 2, and the finally achieved frequency division ratio is the same, but the balance of instantaneous power consumption in a certain unit time is different. Therefore, in practical application, the target stepping parameter value and the target delay parameter value can be determined on the principle that the target delay length value is small and the target insertion number value is large. This is equivalent to a time-staggered trip, and the peak points of power consumption can be dispersed.
S450: and inserting delay in the I/O transmission burst of the storage particles of the memory according to the target delay parameter value.
After the preset temperature control trigger condition is determined to be achieved currently and the target delay parameter value is determined, delay can be inserted into the burst pulse of the storage particles in the memory based on the target delay parameter value. As shown in fig. 6, the upper part shows a segment of a burst without a Delay (Delay) inserted, and the lower part shows a Delay inserted in the burst. In fig. 6, after inserting the delay in the burst, the length ratio of each small burst to each segment delay is 1:1, which corresponds to 1/2 when the frequency becomes the original. After the insertion delay, the effect same as that of frequency reduction can be realized, so that the working temperature of the memory can be reduced, and the working temperature of the memory can be controlled.
In a specific embodiment of the present application, the target delay parameter value may include a target delay length value and a target insertion number value, and the length of each burst in one I/O transmission of a memory granule of the memory may be determined based on the target insertion number value, and a delay having the target delay length value is inserted after each burst in sequence until the insertion number reaches the target insertion number value.
In the embodiment of the present application, after obtaining the requirement of one I/O transmission, the total amount of data to be transmitted, i.e., the total I/O length Yb, may be determined. In addition, the target delay parameter value can be written into a register, so that the interaction between software and hardware is realized, and the purpose of programmable configuration is achieved.
Based on the target insertion number value Nd in the determined target delay parameter value, the length value Lb of each burst pulse after the delay is inserted in the I/O transmission can be calculated, where Lb is Yb/(Nd +1), and meanwhile, the target burst number value Nb of the burst pulse after the delay is inserted can also be obtained, where Nb is Nd + 1.
When the I/O transmission is carried out, after a section of burst pulse is transmitted, subtracting 1 from a target burst numerical value to obtain a residual burst numerical value, judging whether the residual burst numerical value is 1, if the residual burst numerical value is not 1, inserting a section of delay after the section of burst pulse, transmitting a section of burst pulse, updating the residual burst numerical value, repeatedly executing the step of judging whether the residual burst numerical value is 1, if the residual burst numerical value is 1, inserting a section of delay after the section of burst pulse, transmitting a section of burst pulse, and finishing the delay insertion of the I/O transmission. Thus, a delay with a target delay length value can be inserted after each section of burst pulse in sequence until the number of times of insertion reaches a target number of times of insertion. Each I/O transfer may be inserted with a delay in the manner described above.
It is understood that the I/O transfer characteristics of a memory granule such as flash memory are: the interval is allowed in the middle, the length and the times of the interval are not constrained, and the transmission can be calculated as long as the total I/O overturning times are completed. With this transmission characteristic, by directly inserting a delay in a burst (one continuous transmission data operation), the same effect as down-conversion can be achieved. For example, if the ratio of the length of each burst after the insertion of the delay to the length of each delay is 1:1, it is equivalent to adjust the frequency downward 1/2.
Since the NAND specification (NAND Spec) is hierarchical for frequencies, such as 10/20/50/200/400/600/800MHz, in the related art, the master also only supports these frequencies, and does not support various frequencies linearly. However, according to the scheme of the embodiment of the application, various frequencies can be indirectly realized through determining the target delay parameter value, so that the frequency is linearly adjusted downwards, and the adjustment is flexible. For example, a ratio of 99:100 may be adjusted. This may result in a linear degradation of performance. According to the embodiment of the application, the clock frequency does not need to be switched, and the switching does not need to be carried out after waiting for the idle state, so that the real-time switching can be realized, and the lag time can be effectively reduced.
By applying the method provided by the embodiment of the application, in the process of monitoring the working temperature of the memory, according to the working temperature of the memory and the preset temperature threshold, if the preset temperature control trigger condition is determined to be reached currently, the target stepping parameter value is determined, the target delay parameter value is determined based on the target stepping parameter value, and according to the target delay parameter value, delay can be inserted into the I/O transmission burst pulse of the storage particles of the memory to control the working temperature of the memory. By inserting the time delay into the burst pulse, the effect same as that of frequency reduction can be realized, the clock frequency does not need to be switched, the switching is not needed after waiting for an idle state, the real-time switching can be realized, the lag time can be effectively reduced, the working temperature of the memory can be timely and effectively controlled, and the influence on the normal operation of an electronic product is avoided.
In an embodiment of the present application, after inserting a delay in an I/O transfer burst of a memory grain of a memory according to a target delay parameter value, the method may further comprise the steps of:
the method comprises the following steps: when one time delay insertion cycle is completed, if the working temperature of the memory does not reach the target temperature, the target delay parameter value is increased based on the target stepping parameter value;
step two: and inserting delay in the I/O transmission burst of the memory grain of the memory according to the increased target delay parameter value.
For convenience of description, the above two steps are combined for illustration.
In the embodiment of the present application, for each I/O transmission requirement, a delay is inserted into an I/O transmission burst, and when the total number of times of the insertion delay reaches a set total number threshold, it may be considered that one delay insertion cycle is completed.
When the preset temperature control triggering condition is determined to be reached currently, a target stepping parameter value is determined, and then after a target delay parameter value is determined, delay is inserted into I/O transmission burst pulses of storage particles of a memory based on the target delay parameter value, the working temperature of the memory is controlled, and the working temperature of the memory is gradually reduced. If the working temperature of the memory is reduced to the target temperature when one time of delay insertion cycle is completed, the current based target delay parameter value can be considered to be reasonable, and delay can be inserted into the I/O transmission burst pulse of the storage particles of the memory based on the target delay parameter value continuously to control the working temperature of the memory. On the contrary, if the working temperature of the memory does not reach the target temperature when the delay insertion cycle is completed, the current target delay parameter value is considered to be unreasonable, and the current target delay parameter value can be adjusted. That is, each time a delay insertion cycle is completed, it can be determined whether to adjust the current target delay parameter value, so as to quickly achieve the temperature control effect.
The target temperature can be set and adjusted according to actual conditions, such as being set to be the same as the temperature threshold.
When one time of delay insertion circulation is finished, if the working temperature of the memory still does not reach the target temperature, the current temperature control effect is considered to be not ideal, the adjustment speed is too slow, and the target delay parameter value can be increased based on the target stepping parameter value. Specifically, the target step parameter value may be added to the current target delay parameter value to obtain an adjusted target delay parameter value, where the adjusted target delay parameter value is larger than the target delay parameter value before adjustment, so as to improve the frequency dividing ratio. And then inserting delay into the I/O transmission burst of the storage particles of the memory according to the increased target delay parameter value, and controlling the working temperature of the memory.
Under the condition that the temperature control effect on the memory is not ideal, the target delay parameter value is increased, so that delay is inserted into the I/O transmission burst of the storage particles according to the increased target delay parameter value, and the control on the working temperature of the memory can be accelerated.
In an embodiment of the present application, after inserting a delay in an I/O transfer burst of a memory grain of a memory according to a target delay parameter value, the method may further comprise the steps of:
the first step is as follows: obtaining the working temperature of the memory under the condition that a set time interval is reached;
the second step is that: if the working temperature of the memory does not exceed the temperature threshold, determining whether the temperature difference between the working temperature of the memory and the temperature threshold is greater than a preset temperature difference threshold; if yes, executing the third step;
the third step: reducing a target delay parameter value based on the target stepping parameter value;
the fourth step: inserting a delay in an I/O transfer burst of a memory grain of the memory according to the reduced target delay parameter value.
For convenience of description, the above four steps are combined for illustration.
In the process of monitoring the working temperature of the memory, according to the working temperature of the memory, if the current temperature control trigger condition is determined to be reached, a target stepping parameter value is determined, a target delay parameter value is determined based on the target stepping parameter value, and according to the target delay parameter value, delay is inserted into I/O transmission burst pulses of storage particles of the memory to control the working temperature of the memory. In this case, the memory particles do not run at full speed and the performance of the memory is not optimal.
After the working temperature of the memory is controlled for a period of time, the working temperature of the memory can be obtained again to determine whether to improve the performance.
The operating temperature of the memory can be obtained in case a set time interval is reached. If the operating temperature of the memory does not exceed the temperature threshold, then it may be deemed that current temperature control of the memory is effective. In this case, the difference between the operating temperature of the memory and the temperature threshold may be further compared with a temperature difference threshold. If the temperature difference is smaller than the temperature difference threshold value, the current performance and temperature balance point can be considered to be located, delay insertion processing can be continuously carried out on the basis of the current target delay parameter value, and the working temperature of the memory can be controlled. If the temperature difference is larger than the temperature difference threshold value, the performance can be improved at present, the target delay parameter value can be reduced, and the frequency dividing ratio is reduced.
The temperature difference threshold can be set according to the product requirement, such as 3 ℃.
The target delay parameter value can be obtained by adjusting the following formula:
Ld=Ld1-ΔLd;
Nd=Nd1-ΔNd;
wherein, Ld represents the adjusted target delay length value, Nd represents the adjusted target insertion number value, Ld1 represents the currently used target delay length value, and Nd1 represents the currently used target insertion number value.
The adjustment of the target delay parameter value aims at reducing the frequency dividing ratio and improving the performance of the memory. The division ratio is at least 0. And inserting delay into the I/O transmission burst of the memory granules based on the reduced target delay parameter value, and controlling the working temperature of the memory.
According to the embodiment of the application, when the preset temperature control triggering condition is determined to be achieved currently, the target delay parameter value is determined based on the target stepping parameter value, and then delay is inserted into the I/O transmission burst pulse of the storage particles of the storage device based on the target delay parameter value, so that the frequency reduction effect is achieved, and the control of the working temperature of the storage device is achieved. If the cooling effect is not ideal, the target delay parameter value can be adjusted, the frequency dividing ratio is improved, and the working temperature of the memory is quickly reduced.
Of course, inserting a delay in the I/O transfer burst of a memory grain reduces the operating temperature of the memory at the expense of memory performance. After the temperature is controlled for a period of time, if the working temperature of the memory does not exceed the temperature threshold and the temperature difference between the working temperature and the temperature threshold is greater than the temperature difference threshold, the performance of the memory can be considered to be improved, the target delay parameter value is adjusted, the frequency dividing ratio is reduced, and the working temperature and the performance of the memory are improved accordingly.
When the working temperature of the memory does not exceed the temperature threshold and the temperature difference between the working temperature and the temperature threshold is less than or equal to the temperature difference threshold, it can be considered that the balance point of the performance and the temperature is reached, the current target delay parameter value can be continuously used, and the adjustment is not performed. The minimum value of the currently used target delay parameter value is 0, i.e. no delay is inserted in the I/O transfer burst, so that the memory granule can run at full speed, and the performance of the memory reaches the best.
According to the embodiment of the application, the clock does not need to be switched, the switching is not needed after the idle state is waited, after the target delay parameter is determined, the delay insertion processing can be carried out in the I/O transmission burst pulse in real time, the working temperature of the memory is controlled in time, and the lag time can be effectively reduced.
It should be noted that, in the embodiment of the present application, a description is made in an angle of one storage particle of a memory, in practical application, if the memory is configured with a plurality of storage particles, and a plurality of channels are present between the storage particles and a master, when it is determined that a temperature control trigger condition is reached, an insertion delay operation may be performed on I/O transmission bursts of the storage particles of a part of channels first, and if a temperature control effect is not obvious, an insertion delay operation may be performed on I/O transmission bursts of the storage particles of more channels, so as to control a working temperature of the memory timely and quickly.
The above is a description of a scheme for controlling the operating temperature of a memory by inserting a delay in an I/O transfer burst during an I/O operation, and another method for controlling the temperature of the memory is described in detail below.
Referring to fig. 7, which is a flowchart illustrating an implementation of another temperature control method for a memory according to an embodiment of the present disclosure, the method may include the following steps:
s710: the operating temperature of the memory is monitored.
In the embodiment of the application, the working temperature of the memory can be monitored in the working process of the electronic product. For a specific monitoring manner, reference may be made to the operation in step S410 in the method embodiment shown in fig. 4, which is not described again.
S720: and determining whether the preset temperature control triggering condition is reached currently or not according to the working temperature of the memory and a preset temperature threshold value.
In the embodiment of the present application, the specific determination manner may refer to the operation in step S420 in the method embodiment shown in fig. 4, and is not described again.
Of course, the working temperature of the memory is monitored, and if the working temperature of the memory does not exceed the temperature threshold, it can be considered that the preset temperature control trigger condition is not reached currently, and the memory and the electronic product can work normally. In this case, it is not necessary to control the operating temperature of the memory, and the execution of the I/O operation may not be restricted, as shown in fig. 7.
S730: in the event that there is an I/O operation to be performed, the remaining credit is determined based on the current total amount of credit of the credit pool.
In the embodiments of the present application, the concept of a credit pool is introduced. The credit pool has a certain total amount of credit, which is equivalent to the total capacity of the credit pool, and the total amount of credit used by the credit pool at different times can be different, which is equivalent to the total capacity of the credit pool. When I/O operation is executed, a certain amount of credit is consumed, a certain amount of credit consumption is generated, and the remaining amount of credit in the credit pool is reduced. In the event that an I/O operation completes, the credit consumption amount for that I/O operation is returned to the credit pool for use by other I/O operations when executed.
Specifically, when determining the remaining credit, the total credit consumption of the I/O operation may be determined, and then the remaining credit may be determined according to the current total credit consumption and the total credit consumption of the credit pool. The current credit total may be determined based on the maximum credit total and the target step amount of the credit pool.
In practical applications, the maximum credit amount of the credit pool can be preset, and the maximum credit amount can satisfy that the storage particles of the memory operate at full speed without the influence of temperature. For example, the maximum credit total Cmax is N Cio, where N represents the number of I/O operations executed in parallel under the channel, and Cio represents the maximum credit consumption when one I/O operation is executed. In the initial working stage of the electronic product, the current credit sum of the credit pool can be the maximum credit sum, and then the current credit sum can be obtained according to the maximum credit sum and the target step sum when the temperature control is carried out.
In practical applications, multiple I/O operations may be performed concurrently in parallel. Each I/O operation has a corresponding credit consumption amount when executed, the total credit consumption amount of the I/O operation currently being executed can be obtained according to the credit consumption amount of each I/O operation currently being executed, and then the remaining credit amount is determined according to the current total credit consumption amount and the total credit consumption amount of the credit pool. In short, the current credit total of the credit pool is subtracted by the credit consumption total to obtain the remaining credit, i.e. the remaining credit is the current credit total-the credit consumption total.
S740: based on the remaining credit, it is determined whether to perform the I/O operation.
When the preset temperature control trigger condition is determined to be reached currently, under the condition that I/O operation is to be executed, the remaining credit amount of the credit pool is determined, and whether the I/O operation is executed or not can be determined according to the remaining credit amount.
Specifically, the amount of credit consumed for the I/O operation to be performed may be determined. And if the credit consumption amount is larger than the residual credit amount, determining not to execute the I/O operation so as to reduce the number of the I/O operations and achieve the aim of controlling the working temperature of the memory. If the credit consumption amount is less than or equal to the remaining credit amount, it may be determined to perform the I/O operation and the I/O operation is performed.
When the I/O operation is executed, the I/O operation consumes the credit, and has a certain credit consumption amount, and the remaining credit amount of the credit pool is reduced under the condition that no other I/O operation finishes returning the credit consumption amount. When there is an I/O operation to be performed again, the remaining credit is determined based on the current credit amount of the credit pool, and whether to perform the I/O operation is determined according to the remaining credit amount to control the operating temperature of the memory.
By applying the method provided by the embodiment of the application, the working temperature of the memory is monitored, when the current temperature control trigger condition is determined to be reached according to the working temperature of the memory and the preset temperature threshold, if I/O operation is to be executed, the remaining credit is determined based on the current credit total of the credit pool, and whether I/O operation is executed or not is determined according to the remaining credit. The aim of controlling the working temperature of the memory is achieved by controlling the number of I/O operations. The frequency does not need to be switched, the working temperature of the memory can be effectively controlled in time, and the influence on the normal operation of the electronic product is avoided.
In one embodiment of the present application, the current credit amount is determined according to a maximum credit amount of the credit pool and the target step amount, and after determining whether to perform the I/O operation according to the remaining credit amount, the method may further include the steps of:
the method comprises the following steps: when I/O limiting circulation is completed once, if the working temperature of the memory does not reach the target temperature, reducing the current credit sum based on the target step sum;
step two: determining a remaining credit amount based on the reduced current credit amount of the credit pool in case of an I/O operation to be performed;
step three: based on the remaining credit, it is determined whether to perform the I/O operation.
For convenience of description, the above three steps are combined for illustration.
In the embodiment of the present application, during the temperature control process, from the time when the current credit amount is adjusted by the target step amount to the time when a certain time interval is reached, it can be considered that one I/O limit cycle is completed.
If it is determined that the I/O operation is not to be performed based on the remaining credit, the I/O operation may not be performed for a while, which may reduce the number of I/O operations such that the operating temperature of the memory gradually decreases. The operating temperature of the memory may be obtained once per I/O limit cycle. If the operating temperature of the memory falls below the temperature threshold upon completion of an I/O limit cycle, the current credit total for the credit pool may be considered reasonable, and the number of I/O operations may be controlled to control the operating temperature of the memory by continuing to use the current credit total. On the contrary, if the operating temperature of the memory does not reach the target temperature when the I/O limiting cycle is completed once, the current credit amount of the credit pool may be considered to be unreasonable, and the adjustment may be continued. That is, each time the I/O limit cycle is completed, it can be determined whether to adjust the current credit amount to achieve the temperature control effect quickly.
The target temperature can be set and adjusted according to actual conditions, such as being set to be the same as the temperature threshold.
When an I/O limiting cycle is completed once, if the working temperature of the memory still does not reach the target temperature, the current temperature control effect is considered to be not ideal, the adjusting speed is too slow, and the current credit sum can be reduced based on the target step sum. The target stepping amount can be determined according to the temperature difference between the working temperature and the temperature threshold value at the initial temperature control, and the larger the temperature difference is, the larger the target stepping amount is, the smaller the temperature difference is, and the smaller the target stepping amount is.
At the beginning of temperature control, the current credit total can be determined according to the difference between the maximum credit total and the target stepping amount, and when adjustment is needed again, the target stepping amount can be subtracted on the basis of the current credit total to obtain the reduced current credit total, which is equivalent to reducing the total capacity of the credit pool. The current credit amount is reduced, and if the credit consumption amount of the I/O operation currently executed is not changed, the remaining credit amount of the credit pool is reduced, and the number of I/Os which can be paralleled is correspondingly reduced.
In the case that there is an I/O operation to be executed, the remaining credit amount is determined based on the reduced current credit amount of the credit pool, and then whether to execute the I/O operation is determined according to the remaining credit amount, so that more I/O operations are suspended to be executed, and the control of the working temperature of the memory can be accelerated.
In one embodiment of the present application, after determining whether to perform the I/O operation according to the remaining credit, the method may further include the steps of:
the first step is as follows: obtaining the working temperature of the memory under the condition that a set time interval is reached;
the second step is that: if the working temperature of the memory does not exceed the temperature threshold, determining whether the temperature difference between the working temperature of the memory and the temperature threshold is greater than a preset temperature difference threshold; if yes, executing a third step:
the third step: increasing the total amount of the current credit based on the target step amount;
the fourth step: determining a remaining credit amount based on the increased current credit amount of the credit pool in case of an I/O operation to be performed;
the fifth step: based on the remaining credit, it is determined whether to perform the I/O operation.
For convenience of description, the above five steps are combined for illustration.
The working temperature of the memory is monitored, according to the working temperature of the memory, if the preset temperature control trigger condition is determined to be reached currently, under the condition that I/O operation is to be executed, the residual credit can be determined based on the current credit sum of the credit pool, and whether the I/O operation is executed or not is determined according to the residual credit, so that the working temperature of the memory is controlled through controlling the execution quantity of the I/O operation.
If the current credit amount of the credit pool is not the maximum credit amount, it indicates that the memory granule is not running at full speed and the performance of the memory is suboptimal.
After the working temperature of the memory is controlled for a period of time, the working temperature of the memory can be obtained again to determine whether to improve the performance.
The operating temperature of the memory can be obtained in case a set time interval is reached. If the operating temperature of the memory does not exceed the temperature threshold, then it may be deemed that current temperature control of the memory is effective. In this case, the difference between the operating temperature of the memory and the temperature threshold may be further compared with a temperature difference threshold. If the temperature difference is smaller than the temperature difference threshold, the current performance and temperature balance point can be considered to be at, the remaining credit total can be determined continuously according to the current credit total of the credit pool, and then whether the I/O operation is executed or not is judged, and the working temperature of the memory is controlled. If the temperature difference is larger than the temperature difference threshold value, the performance can be considered to be improved currently, and the current credit sum can be increased.
The temperature difference threshold can be set according to the product requirement, such as 3 ℃.
In the event that there are I/O operations to be performed, the remaining credit may be determined based on the incremented current credit total for the credit pool. It is then determined whether to perform an I/O operation to control the operating temperature of the memory based on the remaining credits.
When the temperature control triggering condition is determined to be met currently, and under the condition that I/O operation is to be executed, the residual credit amount is determined based on the current credit total amount of the credit pool, whether the I/O operation is executed or not is determined according to the residual credit amount, and the working temperature of the storage is controlled by limiting the execution amount of the I/O operation. If the cooling effect is not ideal, the current credit amount can be reduced, so that the execution of more I/O operations can be limited, and the working temperature of the memory can be quickly reduced.
Of course, limiting the number of I/O operations performed reduces the operating temperature of the memory at the expense of memory performance. After the temperature is controlled for a period of time, if the working temperature of the memory does not exceed the temperature threshold and the temperature difference between the working temperature and the temperature threshold is greater than the temperature difference threshold, the performance of the memory can be considered to be improved, and the current credit sum is increased to be able to execute more I/O operations, and the working temperature and the performance of the memory are improved accordingly.
The current credit total may be increased based on the target step amount, and specifically, the increased current credit total may be obtained by adding the target step amount to the current credit total.
When the working temperature of the memory does not exceed the temperature threshold and the temperature difference between the working temperature and the temperature threshold is less than or equal to the temperature difference threshold, the balance point of the performance and the temperature can be considered to be reached, the current credit sum can be continuously used, and the adjustment is not performed. The current credit amount is maximum to the maximum credit amount, so that the storage particles can run at full speed, and the performance of the storage is optimal.
According to the embodiment of the application, the clock does not need to be switched, the switching is not needed after the idle state is waited, after the residual credit amount of the credit pool is determined, whether the I/O operation is executed or not can be judged in real time, the working temperature of the memory is controlled in time, and the lag time can be effectively reduced.
For the understanding of the scheme of the embodiment of the application, the understanding of the credit card mode can be used for reference, the credit card has a total credit line, a certain credit line is consumed each time a consumption is generated, and the credit line needs to be returned to recover the credit line after the consumption. The bank can adjust the credit line according to the state of the card holder, so that the consumption capacity of the card holder is changed.
It should be noted that, in the embodiment of the present application, a description is made in an angle of one storage particle of a memory, and in practical applications, if a plurality of storage particles are configured in the memory and a plurality of channels are present between the storage particles and a master, when it is determined that a temperature control trigger condition is reached, a number limiting operation of I/O operations may be performed on storage particles of a part of channels first, and if a temperature control effect is not obvious, a number of I/O operations of storage particles of more channels may be limited, and an operating temperature of the memory may be rapidly controlled.
In one embodiment of the present application, the credit pool includes a plurality of credit groups, different credit groups corresponding to different operation types; in the event that there is an I/O operation to be performed, determining remaining credits based on a current total amount of credits of a credit pool, comprising:
in the event that there is an I/O operation to be performed, the remaining credit is determined based on the current total amount of credits of the credit set corresponding to the operation type of the I/O operation.
In the embodiment of the present application, the credit pool may be subdivided into a plurality of credit groups, and different credit groups correspond to different operation types, such as read, write, and erase operation types. Different credit sets may correspond to different current credit totals, which may control the I/O amount by classification.
When it is determined that the preset temperature control trigger condition is currently reached, in the case that there is an I/O operation to be executed, the operation type of the I/O operation may be determined, a remaining credit amount may be determined based on the current credit amount of the credit group corresponding to the operation type of the I/O operation, and then whether to execute the I/O operation may be determined according to the remaining credit amount to control the operating temperature of the memory.
For ease of understanding, this is illustrated.
As shown in Table 1 below, the credit pool includes a read credit set, a write credit set, and an erase credit set, wherein the current credit total of the read credit set is 21, the current credit total of the write credit set is 15, the current credit total of the erase credit set is 12, and the current credit total of the credit pool is 48. As shown in Table 2 below, the read I/O credit consumption is 3, the write I/O credit consumption is 5, and the erase I/O credit consumption is 6.
Read credit set Write credit set Erasing creditGroup of Credit pool
21 15 12 48
TABLE 1
Reading I/O credit consumption Writing I/O credit charges Wipeing I/O credit consumption amount
3 5 6
TABLE 2
The values of the two tables are shown schematically. As can be seen from the above two tables, when there are 7 read I/Os executed in parallel, the remaining credit of the read credit set is 0, and the read I/O will not be executed again. And so on.
Of course, in practical applications, no subdivision may be made for the credit pool, with all I/O operations sharing a single credit pool. When the power consumption generated by the read-write-erase operation of the storage particles is the same, all I/O operations can share one credit pool without distinction, and when the power consumption generated by the read-write-erase operation of the storage particles is different, the credit pool can be subdivided into a plurality of credit groups, so that the proportion of the read-write-erase operation in the same channel can be well controlled. Whether the power consumption generated by the read-write-erase operation of the storage particles is the same depends on the manual of the storage particles.
Fig. 8 is a schematic diagram of a flow control process based on credit. The corresponding control logic may be independent for each channel. The I/O extractor (I/O Fetcher) is responsible for taking I/O operation to be put into the I/O queue, and the I/O Dispatcher (I/O Dispatcher) is responsible for taking I/O operation from the I/O queue and then sending the I/O operation to other modules so as to execute corresponding I/O operation. Whether the I/O scheduler sends the I/O operation depends on whether the remaining credits in the credit pool are greater than the required credit consumption for the I/O operation, and if the credit pool includes multiple credit groups, whether the remaining credits in the credit pool for the credit group corresponding to the operation type of the I/O operation is greater than the required credit consumption for the I/O operation. The I/O retriever returns the corresponding credit consumption amount to the credit pool after determining that the I/O operation is completed.
In practical applications, the present Application may be implemented by a combination of hardware and software, or by a hardware design, such as an ASIC (Application Specific Integrated Circuit) logic Circuit, and the advantage of hardware implementation is that the software overhead is reduced.
In this embodiment, the temperature control method of the memory shown in fig. 4 may be referred to as a delay insertion policy for short, and the temperature control method of the memory shown in fig. 7 may be referred to as a credit policy for short. It will be appreciated that the latency insertion policy is used during the execution of an I/O operation and the credit policy is used when an I/O operation is to be executed. In practical application, the two strategies can be combined to timely and effectively control the working temperature of the memory.
Referring to fig. 9, which is a flowchart illustrating an implementation of another temperature control method for a memory according to an embodiment of the present disclosure, the method may include the following steps:
s910: the operating temperature of the memory is monitored.
In the embodiment of the application, the working temperature of the memory can be monitored in the working process of the electronic product. For a specific monitoring manner, reference may be made to the operation in step S410 in the method embodiment shown in fig. 4, which is not described again.
S920: and determining whether the preset temperature control triggering condition is reached currently or not according to the working temperature of the memory and a preset temperature threshold value.
In the embodiment of the present application, the specific determination manner may refer to the operation in step S420 in the method embodiment shown in fig. 4, and is not described again. .
Of course, the working temperature of the memory is monitored, and if the working temperature of the memory does not exceed the temperature threshold, it can be considered that the preset temperature control trigger condition is not reached currently, and the memory and the electronic product can work normally. In this case, it is not necessary to control the operating temperature of the memory as shown in fig. 9.
S930: and inquiring a policy table according to the working temperature of the memory to determine a target temperature control adjustment policy.
The policy table includes a plurality of levels of temperature control adjustment policies, and the higher the level of the temperature control adjustment policy is, the greater the influence of the temperature control adjustment policy on performance is.
In a specific embodiment of the present application, a temperature difference between the working temperature of the memory and the temperature threshold may be determined, then a temperature control adjustment policy corresponding to the temperature difference is queried in the policy table, and then the queried temperature control adjustment policy is determined as the target temperature control adjustment policy.
It can be understood that, in the case that the operating temperature of the memory exceeds the temperature threshold, if the temperature difference between the operating temperature of the memory and the temperature threshold is larger, it can be considered that rapid cooling is more necessary, and an aggressive, higher-level temperature control adjustment strategy can be implemented.
In the policy table, different temperature differences may correspond to different temperature control adjustment policies, each temperature control adjustment policy having a corresponding adjustment parameter, corresponding to a corresponding adjustment parameter threshold and a cycle number threshold. As shown in table 3:
temperature difference Temperature control adjustment strategy Adjusting parameter thresholds Threshold cycle number
ΔTa Px S0 Xi
ΔTb Py S1 Xj
ΔTc Pz S2 Xk
…… …… …… ……
ΔTn Px Sn Xn
TABLE 3
Taking the first row in table 3 as an example, if the temperature difference is Δ Ta, the corresponding temperature control adjustment strategy is Px, the adjustment parameter threshold is S0, and the cycle number threshold is Xi. The initial adjustment parameter threshold and cycle number threshold for each temperature control adjustment strategy may be obtained from large sample data.
After the temperature difference between the operating temperature of the memory and the temperature threshold is determined, the temperature control adjustment strategy corresponding to the temperature difference may be queried in the policy table, and the queried temperature control adjustment strategy is determined as the target temperature control adjustment strategy. The operating temperature of the memory is then controlled using the target temperature control adjustment strategy.
In the initial stage, the set temperature control adjustment strategy can be as shown in table 4:
Figure BDA0002660675070000151
TABLE 4
It should be noted that the descriptions of the temperature control adjustment strategies in tables 3 and 4 are only specific examples, and in practical applications, more temperature control adjustment strategies can be set and adjusted.
In combination with the capability of the hardware, the following temperature control adjustment strategies can be formed in multiple levels:
temperature control adjustment strategy P1: controlling the number of read, write and erase I/O (input/output) under each channel through a credit point strategy, namely controlling the total amount of the current credit in use of a credit group corresponding to the operation type;
temperature control adjustment strategy P2: controlling the I/O execution speed of the channels by a delay insertion strategy, namely controlling the length and the times of insertion delay of I/O transmission burst of storage particles under each channel;
temperature control adjustment strategy P3: controlling the I/O quantity under each channel through a credit point strategy, namely controlling the total amount of the current using credit of a credit pool of the corresponding channel;
temperature control adjustment strategy P4: the speed of executing I/O of the channel is controlled by the latency insertion policy while the number of I/O executions of the channel is controlled by the credit policy.
Here, the levels of the temperature control adjustment strategies P1, P2, P3 and P4 are sequentially increased, and under the first-level temperature control adjustment strategy P1, only the number of I/os under each channel is controlled, so that the corresponding performance influence is minimal, but the power consumption is reduced minimally;
under the second-stage temperature control adjustment strategy P2, due to the fact that the I/O execution speed is controlled, the performance is reduced proportionally, and as described above, if the length ratio of the burst pulse length to the delay is 1:1, the frequency is reduced by 1/2, and the performance is basically reduced by 1/2;
under a third-stage temperature control adjustment strategy P3, the number of parallel channels is controlled, namely, part of the channels are opened in turn, and the cost of power consumption is controlled most directly;
under the fourth-stage temperature control adjustment strategy P4, a delay insertion strategy and a credit point strategy are combined and used to control the number of parallel channels and the I/O execution speed, so that the power consumption can be controlled to the maximum extent.
The difference between the four temperature control adjustment strategies is the performance degradation ratio after the adjustment is completed. The higher the temperature control adjustment strategy level, the greater the impact on performance.
Of course, the above several temperature control adjustment strategies are only exemplary, and in practical applications, more levels of strategies may be initially configured, so that the performance degradation is relatively smooth and shows a linear degradation trend.
S940: and controlling the working temperature of the memory by using the target temperature control adjustment strategy.
After the target temperature control adjustment strategy is determined, corresponding operation can be executed by using the target temperature control adjustment strategy to control the working temperature of the memory.
By applying the method provided by the embodiment of the application, the working temperature of the memory is monitored, according to the working temperature of the memory and the preset temperature threshold, under the condition that the preset temperature control trigger condition is determined to be achieved currently, the strategy table can be inquired according to the working temperature of the memory, the target adjustment strategy is determined, and the working temperature of the memory is controlled by using the target adjustment strategy. The policy table includes a plurality of levels of temperature control adjustment policies. According to the working temperature of the memory, a more appropriate target adjustment strategy is obtained through the query of the strategy table, the frequency does not need to be switched, the working temperature of the memory can be effectively controlled in time, and the influence on the normal operation of an electronic product is avoided.
In an embodiment of the present application, the target temperature control adjustment strategy includes a delay insertion strategy, the adjustment parameter value of the target temperature control adjustment strategy includes a target step parameter value, and the step S940 uses the target temperature control adjustment strategy to control the operating temperature of the memory, which may include the following steps:
the method comprises the following steps: determining a target delay parameter value of a target temperature control adjustment strategy according to the sum of a preset initial delay parameter value and a target stepping parameter value;
step two: a delay is inserted in an I/O transfer burst of a memory grain of a memory based on a target delay parameter value.
For convenience of description, the above two steps are combined for illustration.
In this embodiment, the target temperature control adjustment strategy may include a delay insertion strategy, and correspondingly, the adjustment parameter value of the target temperature control adjustment strategy may include a target step parameter value.
When the target temperature control adjustment strategy is used, the target delay parameter value of the target temperature control adjustment strategy can be determined according to the sum of the preset initial delay parameter value and the target stepping parameter value. The target delay parameter value may include a target delay length value and a target number of insertions. And inserting delay into the I/O transmission burst of the storage particles based on the target delay parameter value, reducing the I/O execution speed and controlling the working temperature of the memory. For a specific delay insertion manner, reference may be made to the description of the above related embodiments, and details are not described herein again.
When a delay insertion cycle is completed, if the working temperature of the memory does not reach the target temperature, the target delay parameter value is increased based on the target stepping parameter value, and delay is inserted into the I/O transmission burst of the memory particles of the memory according to the increased target delay parameter value to control the working temperature of the memory.
That is, each time a delay insertion cycle is completed, whether the current target delay parameter value is adjusted or not can be determined, so as to quickly achieve the temperature control effect. When a delay insertion cycle is completed, if the working temperature of the memory does not reach the target temperature, the currently used target delay parameter value is considered to be insufficient to meet the cooling requirement, the target delay parameter value can be increased based on the target stepping parameter value, and the delay is inserted into the I/O transmission burst of the memory particles based on the increased target delay parameter value, so that the I/O execution speed can be further reduced, and the working temperature of the memory can be controlled more quickly.
In an embodiment of the present application, the target temperature control adjustment strategy includes a credit strategy, the adjustment parameter value of the target temperature control adjustment strategy includes a target step amount, and the step S940 using the target temperature control adjustment strategy to control the operating temperature of the memory may include the following steps:
the first step is as follows: in the case that there is an I/O operation to be performed, determining a credit consumption sum of the I/O operation;
the second step is that: determining the remaining credit amount according to the current credit amount and the credit consumption amount of the credit pool; the current credit total is determined according to the maximum credit total of the credit pool and the target stepping amount;
the third step: based on the remaining credit, it is determined whether to perform the I/O operation.
For convenience of description, the above three steps are combined for illustration.
In this embodiment, the target temperature control adjustment strategy may include a credit strategy, and accordingly, the adjustment parameter value of the target temperature control adjustment strategy may include a target step amount.
When the target temperature control adjustment strategy is used, in the case that an I/O operation is to be executed, the total credit consumption amount of the I/O operation currently being executed can be determined, the remaining credit amount can be determined according to the current credit amount and the total credit consumption amount of the credit pool, and the current credit amount can be determined according to the maximum credit amount and the target step amount of the credit pool. And determining whether to execute the I/O operation according to the remaining credit, controlling the execution quantity of the I/O operation and controlling the working temperature of the memory. For a specific determination manner, reference may be made to the description of the above related embodiments, which is not described herein again.
Upon completion of one I/O limiting cycle, if the operating temperature of the memory does not reach the target temperature, the current credit amount is decreased based on the target step amount, and in the case where an I/O operation is to be performed, the remaining credit amount is determined based on the decreased current credit amount of the credit pool, and then it is determined whether to perform the I/O operation based on the remaining credit amount to control the operating temperature of the memory.
When an I/O limiting cycle is completed once, if the working temperature of the memory does not reach the target temperature, the current credit sum can be considered to be insufficient to meet the cooling requirement, and the current credit sum can be reduced based on the target step sum. The current credit amount is reduced, and when an I/O operation is to be executed, a remaining credit amount can be determined based on the reduced current credit amount, so that more I/O operations can be controlled not to be executed according to the remaining credit amount, and the operating temperature of the memory can be controlled more quickly.
In practical applications, if the target temperature control adjustment strategy includes both the latency insertion strategy and the credit strategy, the target temperature control adjustment strategy can be used simultaneously when the I/O operation is to be executed and during the execution of the I/O operation, so as to control the operating temperature of the memory more quickly.
In an embodiment of the present application, the target temperature control adjustment strategy includes a delay insertion strategy, and after the target temperature control adjustment strategy is used to control the operating temperature of the memory and the temperature control adjustment is completed, the method may further include the following steps:
the method comprises the following steps: if the total number of the time delay insertion cycles is larger than the set first time threshold, increasing a target stepping parameter value;
step two: and updating the target stepping parameter value of the target temperature control adjustment strategy in the strategy table.
For convenience of description, the above two steps are combined for illustration.
In this embodiment, each temperature control adjustment policy in the policy table may correspond to an adjustment parameter threshold, and the adjustment parameter threshold is also an upper limit value of an adjustment parameter of the corresponding temperature control adjustment policy, and may be determined according to large sample data.
After the target temperature control adjustment strategy is used for controlling the working temperature of the memory and temperature control adjustment is completed, relevant information of the temperature control adjustment event at this time, such as the total number of time delay insertion cycles, can be obtained. The total number of delay insertion cycles indicates how many delay insertion cycles are completed before the operating temperature of the memory reaches below the temperature threshold.
If the total number of the delayed insertion cycles is greater than the set first threshold, it can be considered that the temperature control speed is too low by using the target step parameter value of the target temperature control adjustment strategy for the current temperature control adjustment event. In this case, the target step parameter value may be increased. Such as by a multiple, or by adding a set point. The first time threshold may be determined by a cycle threshold corresponding to a target temperature control adjustment policy in the policy table.
And updating the target stepping parameter value of the target temperature control adjustment strategy in the strategy table. Namely, the target stepping parameter value contained in the target temperature control adjustment strategy in the strategy table is updated to the increased value. Therefore, when an event similar to the current temperature control adjustment event exists, after the target temperature control adjustment strategy is determined, the increased target stepping parameter value is directly used for corresponding operation. So as to accelerate the temperature control speed.
In one embodiment of the present application, after increasing the target step parameter value and before updating the target step parameter value of the target temperature control adjustment policy in the policy table, the method may further include the following steps:
the first step is as follows: determining whether the increased target stepping parameter value is larger than the maximum stepping parameter value corresponding to the target temperature control adjustment strategy; if yes, executing the following second step, and if not, executing the step two in the previous embodiment;
the second step is that: and updating the temperature difference between the working temperature of the memory and the temperature threshold in the strategy table to be related to the higher-level temperature control adjustment strategy of the target temperature control adjustment strategy.
In the embodiment of the application, after the working temperature of the memory is controlled by using a target temperature control adjustment strategy and temperature control adjustment is completed, if the total number of the delay insertion cycles is greater than a set first time threshold value, a target stepping parameter value is increased. After the target stepping parameter value is increased, it may be determined whether the increased target stepping parameter value is greater than a maximum stepping parameter value corresponding to the target temperature control adjustment strategy. The maximum stepping parameter value corresponding to the target temperature control adjustment strategy may be determined according to an adjustment parameter threshold value corresponding to the target temperature control adjustment strategy in the strategy table.
If the increased target step parameter value is greater than the maximum step parameter value corresponding to the target temperature control adjustment strategy, it may be determined that the temperature control speed using the target temperature control adjustment strategy is too slow in the current temperature control adjustment event, and the target temperature control adjustment strategy is not suitable for similar events of the current temperature control adjustment event. In this case, the correlation between the temperature difference between the operating temperature and the temperature threshold of the memory and the temperature control adjustment policy may be updated in the policy table, and the temperature difference may be correlated to a higher-level temperature control adjustment policy of the target temperature control adjustment policy. In this way, when there is an event similar to the current temperature control adjustment event next time, the target temperature control adjustment strategy determined in the strategy table by the temperature difference is the higher-level temperature control adjustment strategy of the target temperature control adjustment strategy used this time. The temperature control speed can be accelerated.
If the increased target step parameter value is not greater than the maximum step parameter value corresponding to the target temperature control adjustment strategy, it may be considered that, in the current temperature control adjustment event, although the temperature control speed using the target temperature control adjustment strategy is relatively slow, if the target step parameter value included in the target temperature control adjustment strategy is increased, the method may be applicable to similar events of the current temperature control adjustment event. In this case, the target step parameter value of the target temperature control adjustment policy may be updated in the policy table. In this way, when there is another event similar to the current temperature control adjustment event next time, the target temperature control adjustment strategy determined in the strategy table through the temperature difference is still the target temperature control adjustment strategy used this time, but the target step parameter value included in the strategy table is increased compared with the previous target step parameter value, so that the temperature control speed can be increased.
For example, the temperature control adjustment policy Px corresponding to the temperature difference Δ Ta in the policy table is a delay insertion policy, which includes a step parameter value Δ d, a corresponding maximum step parameter value Sd, and a corresponding first time threshold value Xd. In a certain temperature control adjustment event, monitoring the working temperature of the memory, determining that a preset temperature control trigger condition is reached currently according to the working temperature and a temperature threshold of the memory, inquiring a corresponding target temperature control adjustment strategy which is a delay insertion strategy Px in a strategy table according to the temperature difference delta Ta between the working temperature and the temperature threshold, and controlling the working temperature of the memory by using the delay insertion strategy Px. In the temperature control process, a target delay parameter value d0+ delta d is determined according to the sum of a preset initial delay parameter value d0 and a stepping parameter value delta d, and delay is inserted into an I/O transmission burst of storage particles in a memory based on the target delay parameter value d0+ delta d. When a delay insertion cycle is completed, if the working temperature of the memory does not reach the target temperature, the target delay parameter value d0+ Δ d is increased based on the step parameter value Δ d, the increased target delay parameter value is d0+ Δ d + Δ d, and delay is inserted into the I/O transmission burst of the memory particles of the memory according to the increased target delay parameter value d0+ Δ d + Δ d. And when a delay insertion cycle is completed again, if the working temperature of the memory does not reach the target temperature, increasing the target delay parameter value d0+ delta d based on the step parameter value delta d, wherein the increased target delay parameter value is d0+ delta d, and inserting delay into the I/O transmission burst of the storage particles of the memory according to the increased target delay parameter value d0+ delta d.
After the temperature control adjustment is completed, namely after the temperature control adjustment event is completed, the relevant information of the temperature control adjustment event is counted, and the total number of the delay insertion cycles is 3. If the total number of delay insertion cycles is greater than the first threshold, the step parameter value is increased, e.g., to 2 Δ d.
If 2 Δ d is less than or equal to the maximum step parameter value Sd corresponding to the temperature control adjustment policy Px, the step parameter value included in the temperature control adjustment policy Px may be adjusted to 2 Δ d in the policy table. Therefore, when a similar temperature control adjustment event occurs next time, the corresponding target temperature control adjustment strategy is still the temperature control adjustment strategy Px which is inquired in the strategy table according to the temperature difference delta Ta between the working temperature and the temperature threshold value, and the working temperature of the memory is controlled by using the temperature control adjustment strategy Px. In the temperature control process, a target delay parameter value d0+2 delta d is determined according to the sum of a preset initial delay parameter value d0 and a stepping parameter value 2 delta d, and delay is inserted into I/O transmission burst of storage particles in a memory based on the target delay parameter value d0+2 delta d. When a time delay insertion cycle is completed, if the working temperature of the memory does not reach the target temperature, the target time delay parameter value d0+2 delta d is increased based on the step parameter value 2 delta d, the increased target time delay parameter value is d0+2 delta d, and time delay is inserted into the I/O transmission burst pulse of the storage particles of the memory according to the increased target time delay parameter value d0+2 delta d. Temperature control adjustments will be completed in a lesser number of time delay insertion cycles.
If the 2 Δ d is larger than the maximum step parameter value Sd corresponding to the temperature control adjustment strategy Px, the temperature control adjustment strategy corresponding to the temperature difference Δ Ta may be updated in the strategy table to be the higher-level temperature control adjustment strategy Py of Px. Thus, when a similar temperature control adjustment event occurs next time, the target temperature control adjustment strategy which is searched in the strategy table according to the temperature difference Δ Ta between the working temperature and the temperature threshold value is the temperature control adjustment strategy Py, and the working temperature of the memory is controlled by using the temperature control adjustment strategy Py.
In an embodiment of the present application, the target temperature control adjustment strategy includes a credit point strategy, and after the temperature control adjustment is completed by controlling the operating temperature of the memory using the target temperature control adjustment strategy, the method may further include the following steps:
the method comprises the following steps: if the total number of times of the I/O limited circulation is larger than the set second time threshold value, increasing the target stepping amount;
step two: and updating the target step amount of the target temperature control adjustment strategy in the strategy table.
For convenience of description, the above two steps are combined for illustration.
In this embodiment, each temperature control adjustment policy in the policy table may correspond to an adjustment parameter threshold, and the adjustment parameter threshold is also an upper limit value of an adjustment parameter of the corresponding temperature control adjustment policy, and may be determined according to large sample data.
After the target temperature control adjustment strategy is used for controlling the working temperature of the memory and temperature control adjustment is completed, relevant information of the current temperature control adjustment event, such as the total number of I/O (input/output) limit cycles, can be obtained. The total number of I/O limit cycles indicates the operating temperature of the memory has reached below the temperature threshold after how many I/O limit cycles have been completed.
If the total number of times of the I/O restricted circulation is greater than the set second time threshold, it can be considered that the temperature control speed is too slow by using the target step amount of the target temperature control adjustment strategy for the current temperature control adjustment event. In this case, the target step amount may be increased. Such as by a multiple, or by adding a set point. The second time threshold may be determined by a cycle time threshold corresponding to a target temperature control adjustment policy in the policy table.
And updating the target step amount of the target temperature control adjustment strategy in the strategy table. Namely, the target step amount contained in the target temperature control adjustment strategy in the strategy table is updated to the increased value. Therefore, when the event similar to the current temperature control adjustment event exists, after the target temperature control adjustment strategy is determined, the increased target step amount is directly used for corresponding operation. So as to accelerate the temperature control speed.
In one embodiment of the present application, after increasing the target step amount and before updating the target step amount of the target temperature control adjustment policy in the policy table, the method may further include the following steps:
the first step is as follows: determining whether the increased target step amount is larger than the maximum step amount corresponding to the target temperature control adjustment strategy; if yes, executing a second step, and if not, executing a second step in the previous embodiment;
the second step is that: and updating the temperature difference between the working temperature of the memory and the temperature threshold in the strategy table to be related to the higher-level temperature control adjustment strategy of the target temperature control adjustment strategy.
In the embodiment of the application, after the operating temperature of the memory is controlled by using the target temperature control adjustment strategy and the temperature control adjustment is completed, if the total number of times of the I/O limitation cycles is greater than the set second time threshold, the target step amount is increased. After increasing the target step amount, it may be determined whether the increased target step amount is greater than a maximum step amount corresponding to the target temperature control adjustment strategy. The maximum step amount corresponding to the target temperature control adjustment policy may be determined according to an adjustment parameter threshold corresponding to the target temperature control adjustment policy in the policy table.
If the increased target step amount is larger than the maximum step amount corresponding to the target temperature control adjustment strategy, it may be determined that the temperature control speed using the target temperature control adjustment strategy is too slow in the current temperature control adjustment event, and the target temperature control adjustment strategy is not suitable for similar events of the current temperature control adjustment event. In this case, the correlation between the temperature difference between the operating temperature and the temperature threshold of the memory and the temperature control adjustment policy may be updated in the policy table, and the temperature difference may be correlated to a higher-level temperature control adjustment policy of the target temperature control adjustment policy. In this way, when there is an event similar to the current temperature control adjustment event next time, the target temperature control adjustment strategy determined in the strategy table by the temperature difference is the higher-level temperature control adjustment strategy of the target temperature control adjustment strategy used this time. The temperature control speed can be accelerated.
If the increased target step amount is not greater than the maximum step amount corresponding to the target temperature control adjustment strategy, it may be considered that, in the current temperature control adjustment event, although the temperature control speed using the target temperature control adjustment strategy is relatively slow, if the target step amount included in the target temperature control adjustment strategy is increased, the temperature control adjustment strategy may be applicable to similar events of the current temperature control adjustment event. In this case, the target step amount of the target temperature control adjustment policy may be updated in the policy table. In this way, when there is another event similar to the current temperature control adjustment event next time, the target temperature control adjustment strategy determined in the strategy table by the temperature difference is still the target temperature control adjustment strategy used this time, but the target step amount included in the strategy table is increased compared with the previous target step amount, so that the temperature control speed can be increased.
It will be appreciated that the operating environment of the memory is constantly changing, and that the use of a constant temperature control adjustment strategy will result in an imbalance between adjustment speed and performance degradation. When the adjusting parameter value is smaller, the influence on the performance is smaller when the cycle number of the adjusting process is larger, and the influence on the performance is larger when the adjusting parameter value is larger and the adjusting amplitude is larger.
In the embodiment of the application, the temperature control adjustment strategy used for each temperature control adjustment event is not invariable, and a more suitable temperature control adjustment strategy and adjustment parameter value are found in a two-stage gradual increasing mode.
The first stage controls the updating of the adjusting parameter value through the threshold value of the cycle times, and the second stage controls the updating of the temperature control adjusting strategy through the threshold value of the adjusting parameter. Namely, in the current temperature control adjustment event, after the target temperature control adjustment strategy is determined, the corresponding operation is executed according to the corresponding adjustment parameter value. After the temperature control adjustment event is completed, relevant information is counted, if the adjustment cycle number (the delay insertion cycle number and/or the I/O limit cycle number) exceeds a cycle number threshold corresponding to the target temperature control adjustment strategy, the temperature control requirement is large, the adjustment parameter value of the target temperature control adjustment strategy can be increased, the adjustment parameter value of the target temperature control adjustment strategy is updated in the strategy table, and when the next temperature control adjustment event occurs, the increased adjustment parameter value can be directly used for corresponding operation. If the increased adjustment parameter value is greater than the adjustment parameter threshold corresponding to the target temperature control adjustment strategy, the selection of the target temperature control adjustment strategy may be considered to be problematic, the association relationship between the temperature difference and the temperature control adjustment strategy may be updated in the strategy table, and a higher-level temperature control adjustment strategy may be used when the next temperature control adjustment event occurs.
Therefore, after a long time of operation, a better temperature control adjustment strategy and adjustment parameter values can be obtained, the target is achieved by the minimum adjustment cycle number, and the adjustment lag time can be reduced.
The above scheme of the embodiment of the present application may be implemented by an application specific integrated circuit, and taking a memory as a solid state disk as an example, the application specific integrated circuit may be a part of an integrated circuit in a chip of a solid state disk controller. As shown in fig. 10, the relationship between the flash memory controller, the CPU (central processing unit) and the temperature control module in the solid state hard disk controller is mainly expressed. The CPU is respectively connected with the temperature control module and the CMD/Data processing module, and the CPU configures hardware logic by setting parameters according to adjustment parameter values provided by the temperature control module and combining with a software algorithm. When the external command enters the flash memory controller, the external command is converted into a flash memory command. Each flash channel can be provided with credit point control logic and delay insertion control logic. The number of I/O operations issued to the flash memory channel can be controlled by the credit control logic, and the specific delay insertion behavior of each I/O operation can be controlled by the delay insertion control logic, which is equivalent to controlling the frequency dividing ratio.
Corresponding to the above method embodiments, the present application further provides a temperature control device for a memory, and the temperature control device for a memory described below and the temperature control method for a memory described above may be referred to correspondingly.
Referring to fig. 11, the apparatus may include the following modules:
the working temperature monitoring module 1101 is used for monitoring the working temperature of the memory;
a temperature control trigger condition determining module 1102, configured to determine whether a preset temperature control trigger condition is currently met according to the working temperature of the memory and a preset temperature threshold, and if so, trigger a remaining credit determining module 1103;
a remaining credit determination module 1103 for determining a remaining credit based on a current total amount of credit of the credit pool in case there is an I/O operation to be performed;
an I/O operation execution decision module 1104 is used to determine whether to execute the I/O operation according to the remaining credit.
The device provided by the embodiment of the application monitors the working temperature of the memory, determines the remaining credit amount based on the current credit total amount of the credit pool if the I/O operation is to be executed when the preset temperature control trigger condition is determined to be currently reached according to the working temperature of the memory and the preset temperature threshold value, and determines whether to execute the I/O operation according to the remaining credit amount. The aim of controlling the working temperature of the memory is achieved by controlling the number of I/O operations. The frequency does not need to be switched, the working temperature of the memory can be effectively controlled in time, and the influence on the normal operation of the electronic product is avoided.
In one embodiment of the present application, the remaining credit determination module 1103 is configured to:
determining a credit consumption total for the I/O operation;
the remaining credit is determined based on the current credit sum and the credit consumption sum of the credit pool.
In one embodiment of the present application, the current credit amount is determined according to the maximum credit amount of the credit pool and the target step amount, and the I/O operation execution determination module 1104 is further configured to:
after determining whether to perform the I/O operation according to the remaining credit amount, upon completion of one I/O limiting cycle, if the operating temperature of the memory does not reach the target temperature, decreasing the current credit amount based on the target step amount;
determining a remaining credit amount based on the reduced current credit amount of the credit pool in case of an I/O operation to be performed;
the step of determining whether to perform the I/O operation based on the remaining credit is repeatedly performed.
In one embodiment of the present application, the I/O operation execution determination module 1104 is further configured to:
obtaining an operating temperature of the memory in case that a set time interval is reached after determining whether to perform the I/O operation according to the remaining credit;
if the working temperature of the memory does not exceed the temperature threshold, determining whether the temperature difference between the working temperature of the memory and the temperature threshold is greater than a preset temperature difference threshold;
if yes, increasing the total amount of the current credit based on the target step amount;
determining a remaining credit amount based on the increased current credit amount of the credit pool in case of an I/O operation to be performed;
the step of determining whether to perform the I/O operation based on the remaining credit is repeatedly performed.
In one embodiment of the present application, the I/O operation execution determination module is configured to:
determining an amount of credit consumption required for the I/O operation to be performed;
if the credit consumption is greater than the remaining credit, it is determined that the I/O operation is not to be performed.
In one embodiment of the present application, the system further comprises a credit return module, configured to:
in the event that an I/O operation is completed, the credit consumption amount for the I/O operation is returned to the credit pool.
In a specific embodiment of the present application, the temperature control trigger condition determining module 1102 is configured to:
if the working temperature of the memory exceeds a temperature threshold, determining that a preset temperature control trigger condition is reached currently; alternatively, the first and second electrodes may be,
and if the time length that the working temperature of the memory exceeds the temperature threshold reaches the set time length threshold, determining that the preset temperature control triggering condition is reached currently.
Corresponding to the above method embodiment, an embodiment of the present application further provides a temperature control device for a memory, including:
a storage unit for storing a computer program;
and the processing unit is used for realizing the steps of the temperature control method of the memory when executing the computer program.
As shown in fig. 12, which is a schematic diagram of a composition structure of a temperature control device of a memory, the temperature control device of the memory may include: a processing unit 10, a memory unit 11, a communication interface 12 and a communication bus 13. The processing unit 10, the storage unit 11 and the communication interface 12 all complete mutual communication through a communication bus 13.
In the embodiment of the present application, the Processing Unit 10 may be a Central Processing Unit (CPU), an application specific integrated circuit, a digital signal processor, a field programmable gate array or other programmable logic device, etc.
The processing unit 10 may call a program stored in the storage unit 11, and in particular, the processing unit 10 may perform operations in an embodiment of a temperature control method of a memory.
The storage unit 11 is used for storing one or more programs, the program may include program codes, the program codes include computer operation instructions, in this embodiment, the storage unit 11 stores at least the program for implementing the following functions:
monitoring the working temperature of the memory;
determining whether a preset temperature control trigger condition is reached currently or not according to the working temperature of the memory and a preset temperature threshold;
if so, determining the remaining credit amount based on the current credit total amount of the credit pool under the condition that the I/O operation is to be executed;
based on the remaining credit, it is determined whether to perform the I/O operation.
In one possible implementation, the storage unit 11 may include a storage program area and a storage data area, wherein the storage program area may store an operating system, an application program required by at least one function (such as a temperature monitoring function, a credit determination function), and the like; the storage data area may store data created during use, such as operating temperature data, credit data, and the like.
Further, the storage unit 11 may include a high-speed random access memory, and may further include a nonvolatile memory, such as at least one magnetic disk storage device or other volatile solid-state storage devices.
The communication interface 13 may be an interface of a communication module for connecting with other devices or systems.
Of course, it should be noted that the structure shown in fig. 12 does not constitute a limitation on the temperature control device of the memory in the embodiment of the present application, and in practical applications, the temperature control device of the memory may include more or less components than those shown in fig. 12, or some components may be combined.
Corresponding to the above method embodiments, the present application further provides a computer-readable storage medium, on which a computer program is stored, and the computer program, when executed by a processor, implements the steps of the temperature control method of the above memory.
The embodiments are described in a progressive manner, each embodiment focuses on differences from other embodiments, and the same or similar parts among the embodiments are referred to each other.
Those of skill would further appreciate that the various illustrative elements and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, computer software, or combinations of both, and that the various illustrative components and steps have been described above generally in terms of their functionality in order to clearly illustrate this interchangeability of hardware and software. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the implementation. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present application.
The steps of a method or algorithm described in connection with the embodiments disclosed herein may be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. A software module may reside in Random Access Memory (RAM), memory, Read Only Memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art.
The principle and the implementation of the present application are explained in the present application by using specific examples, and the above description of the embodiments is only used to help understanding the technical solution and the core idea of the present application. It should be noted that, for those skilled in the art, it is possible to make several improvements and modifications to the present application without departing from the principle of the present application, and such improvements and modifications also fall within the scope of the claims of the present application.

Claims (10)

1. A temperature control method of a memory is characterized by comprising the following steps:
monitoring the working temperature of the memory;
determining whether a preset temperature control trigger condition is reached currently or not according to the working temperature of the memory and a preset temperature threshold;
if so, determining the remaining credit amount based on the current credit total amount of the credit pool under the condition that the I/O operation is to be executed;
and determining whether to execute the I/O operation according to the residual credit amount.
2. The method of claim 1, wherein determining the remaining credit based on the current total amount of credit in the credit pool comprises:
determining a credit consumption total for the I/O operation;
determining a remaining credit amount based on a current credit amount of a credit pool and the credit consumption amount.
3. The method of claim 2, wherein the current credit amount is determined according to a maximum credit amount of the credit pool and a target step amount, and further comprising, after the determining whether to perform the I/O operation according to the remaining credit amount:
upon completion of an I/O limit cycle, if an operating temperature of the memory does not reach a target temperature, decreasing the current credit total based on the target step amount;
determining a remaining credit based on the reduced current total amount of credits of the credit pool in the event that there is an I/O operation to be performed;
and repeating the step of determining whether to execute the I/O operation according to the remaining credit.
4. The method of claim 2, further comprising, after said determining whether to perform an I/O operation based on the remaining credit:
obtaining the working temperature of the memory under the condition that a set time interval is reached;
if the working temperature of the memory does not exceed the temperature threshold, determining whether the temperature difference between the working temperature of the memory and the temperature threshold is greater than a preset temperature difference threshold;
if yes, increasing the current credit total amount based on the target stepping amount;
determining a remaining credit based on the incremented current credit total of the credit pool in the event that an I/O operation is to be performed;
and repeating the step of determining whether to execute the I/O operation according to the remaining credit.
5. The method of claim 1, wherein determining whether to perform an I/O operation based on the remaining credit comprises:
determining an amount of credit consumption required for the I/O operation to be performed;
determining not to perform the I/O operation if the credit consumption amount is greater than the remaining credit amount.
6. The method of claim 5, further comprising:
in the event that an I/O operation is completed, the credit spending amount for that I/O operation is returned to the credit pool.
7. The method of any one of claims 1 to 6, wherein determining whether a preset temperature control trigger condition is currently reached based on the operating temperature of the memory and a preset temperature threshold comprises:
if the working temperature of the memory exceeds the temperature threshold, determining that a preset temperature control trigger condition is reached currently;
alternatively, the first and second electrodes may be,
and if the time length of the working temperature of the memory exceeding the temperature threshold reaches a set time length threshold, determining that the preset temperature control triggering condition is reached currently.
8. A temperature control device for a memory, comprising:
the working temperature monitoring module is used for monitoring the working temperature of the memory;
the temperature control triggering condition judging module is used for determining whether the current temperature control triggering condition is reached or not according to the working temperature of the memory and a preset temperature threshold value, and if so, the residual credit amount determining module is triggered;
the remaining credit determination module is used for determining the remaining credit based on the current credit sum of the credit pool under the condition that I/O operation is executed;
and the I/O operation execution judging module is used for determining whether to execute the I/O operation according to the remaining credit.
9. A temperature control device of a memory, comprising:
a storage unit for storing a computer program;
a processing unit for implementing the steps of the method for controlling temperature of a memory according to any one of claims 1 to 7 when executing said computer program.
10. A computer-readable storage medium, characterized in that a computer program is stored on the computer-readable storage medium, which computer program, when being executed by a processor, carries out the steps of the method for controlling the temperature of a memory according to any one of claims 1 to 7.
CN202010903763.2A 2020-09-01 2020-09-01 Temperature control method, device and equipment of memory and storage medium Active CN111949100B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010903763.2A CN111949100B (en) 2020-09-01 2020-09-01 Temperature control method, device and equipment of memory and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010903763.2A CN111949100B (en) 2020-09-01 2020-09-01 Temperature control method, device and equipment of memory and storage medium

Publications (2)

Publication Number Publication Date
CN111949100A true CN111949100A (en) 2020-11-17
CN111949100B CN111949100B (en) 2023-02-28

Family

ID=73367752

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010903763.2A Active CN111949100B (en) 2020-09-01 2020-09-01 Temperature control method, device and equipment of memory and storage medium

Country Status (1)

Country Link
CN (1) CN111949100B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113672461A (en) * 2021-08-19 2021-11-19 中汽创智科技有限公司 Working mode control method and device of memory, terminal and storage medium

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150169021A1 (en) * 2013-12-18 2015-06-18 NXGN Data, Inc. Dynamic self-correcting power management for solid state drive
US20160117105A1 (en) * 2014-10-27 2016-04-28 Sandisk Enterprise Ip Llc Method and System for Throttling Bandwidth Based on Temperature
CN105917287A (en) * 2013-09-09 2016-08-31 希捷科技有限公司 Mobile data storage device with temperature management
CN107357405A (en) * 2017-06-08 2017-11-17 华为技术有限公司 Power consumption control method and relevant device
CN107646106A (en) * 2015-06-26 2018-01-30 英特尔公司 Management circuit with the multiple throttling falling-threshold values of each activity weighted sum
CN107919143A (en) * 2016-10-11 2018-04-17 北京忆恒创源科技有限公司 Solid storage device and its temprature control method
CN107918522A (en) * 2016-10-11 2018-04-17 北京忆恒创源科技有限公司 Solid storage device and its Poewr control method
CN110289027A (en) * 2019-06-28 2019-09-27 深圳忆联信息系统有限公司 Storage particle method for excessive heating protection and device based on solid state hard disk

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105917287A (en) * 2013-09-09 2016-08-31 希捷科技有限公司 Mobile data storage device with temperature management
US20150169021A1 (en) * 2013-12-18 2015-06-18 NXGN Data, Inc. Dynamic self-correcting power management for solid state drive
US20160117105A1 (en) * 2014-10-27 2016-04-28 Sandisk Enterprise Ip Llc Method and System for Throttling Bandwidth Based on Temperature
CN107646106A (en) * 2015-06-26 2018-01-30 英特尔公司 Management circuit with the multiple throttling falling-threshold values of each activity weighted sum
CN107919143A (en) * 2016-10-11 2018-04-17 北京忆恒创源科技有限公司 Solid storage device and its temprature control method
CN107918522A (en) * 2016-10-11 2018-04-17 北京忆恒创源科技有限公司 Solid storage device and its Poewr control method
CN107357405A (en) * 2017-06-08 2017-11-17 华为技术有限公司 Power consumption control method and relevant device
CN110289027A (en) * 2019-06-28 2019-09-27 深圳忆联信息系统有限公司 Storage particle method for excessive heating protection and device based on solid state hard disk

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113672461A (en) * 2021-08-19 2021-11-19 中汽创智科技有限公司 Working mode control method and device of memory, terminal and storage medium

Also Published As

Publication number Publication date
CN111949100B (en) 2023-02-28

Similar Documents

Publication Publication Date Title
CN111949099B (en) Temperature control method, device and equipment of memory and storage medium
EP1836583B1 (en) Dynamic control of memory access speed
US7437513B2 (en) Cache memory with the number of operated ways being changed according to access pattern
US7054968B2 (en) Method and apparatus for multi-port memory controller
US7596707B1 (en) System and method for efficient power throttling in multiprocessor chip
KR101333900B1 (en) Memory power management via dynamic memory operation states
US6904469B2 (en) Storage control apparatus
US9250815B2 (en) DRAM controller for variable refresh operation timing
US20210109678A1 (en) Command selection policy with read priority
JP4808108B2 (en) Processor system
KR101505395B1 (en) Phased garbage collection and house keeping operations in a flash memory system
CN111949100B (en) Temperature control method, device and equipment of memory and storage medium
US20050060533A1 (en) Method, device, software and apparatus for adjusting a system parameter value, such as a page closing time
RU2568306C1 (en) Processing system with external memory access control
US11520497B2 (en) Peak power management in a memory device
CN111968684B (en) Temperature control method, device and equipment of memory and storage medium
US11853204B2 (en) Memory system and garbage collection control method
CN110275670B (en) Method and device for controlling data flow in storage device, storage device and storage medium
US20080320267A1 (en) Memory Element, Data Processing System, Method for Setting Operating Parameters of a Memory and Computer Program
US20090254710A1 (en) Device and method for controlling cache memory
WO2003019385A1 (en) Cache memory control in a multi-tasking environment
CN112631512B (en) Method and equipment for adaptive steady state of SSD
KR102088944B1 (en) Memory controller and storage device including the same
KR102500889B1 (en) Dynamic predictive latency attributes
US20230418748A1 (en) Controlling Memory Frequency Based on Transaction Queue Occupancy

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant