CN116186086A - Adaptive key jitter elimination digital processing method and system based on branch prediction - Google Patents

Adaptive key jitter elimination digital processing method and system based on branch prediction Download PDF

Info

Publication number
CN116186086A
CN116186086A CN202310090314.4A CN202310090314A CN116186086A CN 116186086 A CN116186086 A CN 116186086A CN 202310090314 A CN202310090314 A CN 202310090314A CN 116186086 A CN116186086 A CN 116186086A
Authority
CN
China
Prior art keywords
time
key
debounce
jitter
predicted
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.)
Pending
Application number
CN202310090314.4A
Other languages
Chinese (zh)
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.)
Chenxin Semiconductor Shenzhen Co ltd
Original Assignee
Chenxin Semiconductor Shenzhen 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 Chenxin Semiconductor Shenzhen Co ltd filed Critical Chenxin Semiconductor Shenzhen Co ltd
Priority to CN202310090314.4A priority Critical patent/CN116186086A/en
Publication of CN116186086A publication Critical patent/CN116186086A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24552Database cache management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations

Abstract

The invention provides a branch prediction-based self-adaptive key jitter elimination digital processing method, which comprises the following steps: when a key signal is received, determining whether the current key signal is a first key signal; if the current key signal is determined to be the first key signal, acquiring a key signal cached when the key is pressed; calculating key jitter time according to the cached key signals; calculating jitter elimination delay time according to preset prediction jitter elimination time and key jitter time; according to the comparison of the jitter elimination delay time and the reference time, calculating and storing the predicted jitter elimination time; and if the current key signal is not the first key signal, performing key debounce on the current key signal according to the stored predicted debounce time. The invention dynamically adjusts the key jitter elimination time according to the jitter elimination delay time, so that the key jitter elimination time is matched with different objects.

Description

Adaptive key jitter elimination digital processing method and system based on branch prediction
Technical Field
The invention relates to the technical field of key jitter elimination, in particular to a self-adaptive key jitter elimination digital processing method and system based on branch prediction.
Background
The debounce time of the existing key debounce technology is fixed at the time of design, and cannot be changed, such as 40 ms. The time of key shake is different to some extent due to the difference of the mechanical characteristics of the keys and the difference of the user groups, for example, the shake time of the old, the handicapped is generally longer than the average time when the young or the electric competitive hand presses the keys, and the shake time is generally shorter than the average time; the key type with long stroke and high damping is also longer than the key type with short stroke and the key type with low damping is jittered for a longer time. In order to ensure that the key is not misjudged when being pressed, the existing method is to remove the shake for 30-40ms (40 ms is the limit time from quick pressing to bouncing), so that although the key is not easy to misjudge when being pressed, different crowds are caused, and the comfort of using keys of different key types cannot be optimized. For example, when the key jitter time is 5ms and the debounce time is 40ms, a delay of 35ms is caused, which cannot bring about optimal experience for the electronic contest crowd, unless the design is customized according to different using crowd and key types, but this causes resource waste and difficulty in design transplantation.
Disclosure of Invention
The invention mainly aims to provide a branch prediction-based self-adaptive key jitter elimination digital processing method and a system thereof, which aim to dynamically adjust key jitter elimination time so as to enable the jitter elimination time to be matched with different objects.
Therefore, the invention provides a branch prediction-based adaptive key jitter elimination digital processing method, which comprises the following steps:
when a key signal is received, determining whether the current key signal is a first key signal;
if the current key signal is determined to be the first key signal, acquiring a key signal cached when the key is pressed;
calculating key jitter time according to the cached key signals;
calculating jitter elimination delay time according to preset predicted jitter elimination time and the key jitter time;
according to the jitter elimination delay time and the reference time, calculating and storing the predicted jitter elimination time;
and if the current key signal is not the first key signal, performing key debounce on the current key signal according to the predicted debounce time.
Optionally, when the key signal is received, determining whether the current key signal is the first key signal includes executing an operation of n+1 when the key signal is received, and determining whether n+1-N is equal to 1;
If the current key signal is determined to be the first key signal, the obtaining the cached key signal when the key is pressed comprises: if the N+1-N is determined to be equal to 1, acquiring a key signal cached when the key is pressed;
if the current key signal is determined not to be the first key signal, performing key debounce on the current key signal according to the stored predicted debounce time includes: and if the N+1-N is determined to be greater than 1, performing key debounce on the current key signal according to the stored predicted debounce time.
Optionally, the calculating the debounce delay time according to the preset predicted debounce time and the key debounce time includes: and calculating the jitter elimination delay time according to the difference between the preset predicted jitter elimination time and the key jitter time.
Optionally, the calculating the predicted jitter elimination time according to the comparison between the jitter elimination delay time and the reference time includes:
when the jitter elimination delay time is longer than the reference time, determining that the jitter elimination delay time is too long;
the preset predictive jitter elimination time jumps to a reduced state and is reduced;
and predicting the debounce time according to the preset value after the value reduction to determine the current predicted debounce time.
Optionally, the calculating the predicted jitter elimination time according to the comparison between the jitter elimination delay time and the reference time includes:
When the jitter elimination delay time is smaller than the reference time, determining that the jitter elimination delay time is too short;
the preset predictive jitter elimination time jumps to a value-added state and is added;
and predicting the debounce time according to the preset value added value to determine the current predicted debounce time.
Optionally, the calculating the predicted jitter elimination time according to the comparison between the jitter elimination delay time and the reference time includes:
when the jitter elimination delay time is equal to the reference time, determining that the jitter elimination delay time is optimal;
jumping to a static state by presetting a predicted jitter elimination time;
and determining that the current predicted debounce time is equal to the preset predicted debounce time.
The invention also provides a self-adaptive key jitter elimination digital processing system based on branch prediction, which comprises a cache component and a prediction jitter elimination component;
the prediction jitter elimination assembly is electrically connected with the cache assembly;
the buffer component is used for calculating key jitter time;
the prediction jitter elimination component is used for calculating jitter elimination delay time according to preset prediction jitter elimination time and key jitter time, and calculating prediction jitter elimination time according to the jitter elimination delay time and reference time.
Optionally, the adaptive key debounce digital processing system based on branch prediction further comprises a key debounce component;
The key jitter elimination assembly is electrically connected with the prediction jitter elimination assembly;
the key jitter elimination component is used for receiving the predicted jitter elimination time of the predicted jitter elimination component and carrying out key jitter elimination on the current key signal according to the predicted jitter elimination time.
Optionally, the predictive debounce component includes a reduced value state, an increased value state, and a rest state.
Optionally, the prediction debounce component is implemented using a two-bit key prediction counter.
The invention provides a branch prediction-based self-adaptive key jitter elimination digital processing method, which comprises the following steps: when a key signal is received, determining whether the current key signal is a first key signal; if the current key signal is determined to be the first key signal, acquiring a key signal cached when the key is pressed; calculating key jitter time according to the cached key signals; calculating jitter elimination delay time according to preset prediction jitter elimination time and key jitter time; according to the comparison of the jitter elimination delay time and the reference time, calculating and storing the predicted jitter elimination time; and if the current key signal is not the first key signal, performing key debounce on the current key signal according to the stored predicted debounce time. The invention dynamically adjusts the key jitter elimination time according to the jitter elimination delay time, so that the key jitter elimination time is matched with different objects.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings that are required in the embodiments or the description of the prior art will be briefly described, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and other drawings may be obtained according to the structures shown in these drawings without inventive effort for a person skilled in the art.
FIG. 1 is a schematic diagram of a circuit function module of a method and a system for adaptive key debounce digital processing based on branch prediction according to the present invention;
FIG. 2 is a schematic diagram of a circuit function module of another embodiment of the present invention for an adaptive key debounce digital processing method and system based on branch prediction;
FIG. 3 is a flow chart of the adaptive key debounce digital processing method and system based on branch prediction according to the present invention;
FIG. 4 is a detailed flowchart of determining whether the current key signal is the first key signal when the key signal is received in FIG. 3;
FIG. 5 is a detailed flowchart of the predicted debounce time calculation of FIG. 3 based on the comparison of the debounce delay time and a reference time;
FIG. 6 is a detailed flowchart of another embodiment of calculating the predicted debounce time according to the comparison between the debounce delay time and the reference time in FIG. 3;
FIG. 7 is a detailed flowchart of another embodiment of calculating the predicted debounce time according to the comparison of the debounce delay time and the reference time in FIG. 3.
The achievement of the objects, functional features and advantages of the present invention will be further described with reference to the accompanying drawings, in conjunction with the embodiments.
Detailed Description
The following description of the embodiments of the present invention will be made clearly and fully with reference to the accompanying drawings, in which it is evident that the embodiments described are only some, but not all embodiments of the invention. All other embodiments, which can be made by those skilled in the art based on the embodiments of the invention without making any inventive effort, are intended to be within the scope of the invention.
It should be noted that all directional indicators (such as up, down, left, right, front, and rear … …) in the embodiments of the present invention are merely used to explain the relative positional relationship, movement, etc. between the components in a particular posture (as shown in the drawings), and if the particular posture is changed, the directional indicator is changed accordingly.
In the present invention, unless specifically stated and limited otherwise, the terms "connected," "affixed," and the like are to be construed broadly, and for example, "affixed" may be a fixed connection, a removable connection, or an integral body; can be mechanically or electrically connected; either directly or indirectly, through intermediaries, or both, may be in communication with each other or in interaction with each other, unless expressly defined otherwise. The specific meaning of the above terms in the present invention can be understood by those of ordinary skill in the art according to the specific circumstances.
Furthermore, descriptions such as those referred to as "first," "second," and the like, are provided for descriptive purposes only and are not to be construed as indicating or implying a relative importance or implying an order of magnitude of the indicated technical features in the present disclosure. Thus, a feature defining "a first" or "a second" may explicitly or implicitly include at least one such feature. In addition, the technical solutions of the embodiments may be combined with each other, but it is necessary to base that the technical solutions can be realized by those skilled in the art, and when the technical solutions are contradictory or cannot be realized, the combination of the technical solutions should be considered to be absent and not within the scope of protection claimed in the present invention.
It should be understood that, in general, the switches used for key shake are all mechanical elastic switches, and when the mechanical contacts are opened and closed, due to the elastic action of the mechanical contacts, a key switch is not turned on stably immediately when closed, and is not turned off completely at once when opened, but a series of shakes are associated at the moment of closing and opening. The jitter time is determined by the mechanical properties of the keys and will typically be between 5 and 10 ms. The debounce time of the existing key debounce technology is fixed at the time of design, and cannot be changed, such as 40 ms. The time of key shake is different to some extent due to the difference of the mechanical characteristics of the keys and the difference of the user groups, for example, the shake time of the old, the handicapped is generally longer than the average time when the young or the electric competitive hand presses the keys, and the shake time is generally shorter than the average time; the key type with long stroke and high damping is also longer than the key type with short stroke and the key type with low damping is jittered for a longer time. In order to ensure that the key is not misjudged when being pressed, the existing method is to remove the shake for 30-40ms (40 ms is the limit time from quick pressing to bouncing), so that although the key is not easy to misjudge when being pressed, different crowds are caused, and the comfort of using keys of different key types cannot be optimized. For example, when the key jitter time is 5ms and the debounce time is 40ms, a delay of 35ms is caused, which cannot bring about optimal experience for the electronic contest crowd, unless the design is customized according to different using crowd and key types, but this causes resource waste and difficulty in design transplantation.
The invention provides a branch prediction-based self-adaptive key jitter elimination digital processing method, which comprises the following steps:
when a Key signal Key is received, determining whether the current Key signal Key is a first Key signal Key;
if the current Key signal Key is determined to be the first Key signal Key, acquiring the Key signal Key cached when the Key is pressed;
calculating Key jitter time Tj according to the cached Key signal Key;
calculating jitter elimination delay time Td according to preset predicted jitter elimination time Tdj and the key jitter time Tj;
calculating and storing predicted jitter elimination time Tdjp according to comparison between the jitter elimination delay time Td and reference time Tre;
and if the current Key signal Key is not the first Key signal Key, performing Key debouncing on the current Key signal Key according to the predicted debouncing time Tdjp.
Specifically, when the user presses the Key for the first time, the Key outputs a first Key signal Key to the buffer assembly 10 to trigger the buffer assembly 10 to operate, so that the buffer assembly 10 buffers the Key signal Key corresponding to the first Key signal Key, and calculates the output Key jitter time Tj according to the buffered Key signal Key. The key shake time Tj may be used as the key input signal Tj of the predictive debounce component 20 to trigger the predictive debounce component 20 to operate. Further, after the predictive debounce component 20 is triggered, a preset predictive debounce time Tdj preset by a user is output to the Key debounce component 30, so that the Key debounce component 30 performs Key debounce on the first Key signal Key according to the preset predictive debounce time Tdj, and outputs a Key debounce signal key_de to a mechanical contact of the Key, so as to complete the Key debounce operation on the mechanical contact. It should be appreciated that the preset predicted debounce time Tdj may be set by the user upon determining that the user first presses a key, and is not limited herein.
While the buffer component 10 outputs the key input signal Tj to the predictive debounce component 20 to trigger the predictive debounce component 20 to output the preset predictive debounce time Tdj to the key debounce component 30, the predictive debounce component 20 also obtains the debounce delay time Td according to the difference between the currently received key debounce time Tj and the preset predictive debounce time Tdj. For example, when the preset predicted debounce time Tdj is set to 20ms and the key jitter time Tj calculated by the buffer 10 is set to 5ms, the delay time Td is the difference between the preset predicted debounce time Tdj and the key jitter time Tj (20 ms-5 ms=15 ms). In addition, when it is determined that the user does not press the key for the first time, the preset predicted debounce time Tdj is the last predicted debounce time Tdjp. That is, when the user does not press the key for the first time, the predicted debounce time Tdjp calculated by the predicted debounce component 20 when the key was pressed last time is input as the preset predicted debounce time Tdj of the current predicted debounce component 20.
Further, the predictive debounce module 20 further includes a fixed reference time Tre, and under the premise that the user presses the key for the first time, the predictive debounce module 20 obtains a corresponding debounce delay time Td according to the difference between the key debounce time Tj and the preset predictive debounce time Tdj. Further, the predicted debounce component 20 compares the debounce delay Td with the reference time Tre, and determines that the current debounce delay Td is too long or too short according to the comparison result, so as to adjust the value of the preset predicted debounce time Tdj. When the debounce delay time Td is greater than the reference time Tre, determining that the debounce delay time Td is too long, further judging that the preset predicted debounce time Tdj set by the current user is too long, skipping the preset predicted debounce time Tdj to a reduced value state and performing the reduced value, and outputting the reduced preset predicted debounce time Tdj as the current predicted debounce time Tdjp. When the debounce delay time Td is smaller than or equal to the reference time Tre, the debounce delay time Td is determined to be too short, the preset predicted debounce time Tdj set by the current user is further determined to be too short, the preset predicted debounce time Tdj is jumped to a value-added state and added, and the preset predicted debounce time Tdj after the value addition is used as the current predicted debounce time Tdjp.
In one embodiment, the preset predicted debounce time Tdj is 25ms, the debounce delay Td is 20ms, the fixed time value is 0.5ms, and the reference time Tre is 15ms. It should be understood that the fixed time value is set by the user. The jitter elimination delay time Td is larger than the reference time Tre (20 ms is larger than 15 ms), the excessive length of the jitter elimination delay time Td can be determined, and the preset predicted jitter elimination time Tdj set by the user is further judged to be excessive. Since the debounce delay time Td is equal to the preset predictive debounce time Tdj and the key debounce time (td= Tdj-Tj), the preset predictive debounce time Tdj can be reduced to decrease the fixed time value when the debounce delay time Td is too long, and the current predictive debounce time Tdjp is equal to the preset predictive debounce time Tdj and decreases the fixed time value. It should be understood that, the user presses a button once, and the preset predicted jitter elimination time Tdj is reduced once, i.e. a fixed time value is reduced once; when the key shake eliminating delay time Td is still greater than the reference time Tre for a plurality of times, the preset predictive shake eliminating time Tdj is reduced by a fixed time value (td= Tdj-0.5 ms-Tj) for a plurality of times until the shake eliminating delay time Td is less than or equal to the reference time Tre (Td is less than or equal to 15 ms) to obtain the optimal predictive shake eliminating time Tdjp. Therefore, according to the Key signal Key being debounced by the user's multiple Key presses, the calculated predicted debounced time Tdjp becomes more accurate according to the increase in the number of times. For example, the key shake time Tj is 5ms, and the condition that Td.ltoreq.15 ms is Tdj-0.5 ms.ltoreq.20 ms. Further, since the preset predictive debounce time Tdj is 25ms, tdj-0.5ms can be at least 10 times or more to make Tdj-0.5 ms.ltoreq.20ms and Td.ltoreq.15ms. I.e. the user can press keys at least 10 times or more to make Tdj-0.5ms less than or equal to 20ms, so as to obtain the optimal predictive debounce time Tdjp.
In another embodiment, the preset predicted debounce time Tdj is 15ms, the debounce delay Td is 10ms, the fixed time value is 0.5ms, and the reference time Tre is 15ms. It should be understood that the fixed time value is set by the user. The jitter elimination delay time Td is smaller than the reference time Tre (10 ms is smaller than 15 ms), and the jitter elimination delay time Td can be determined to be too short, and further the preset predicted jitter elimination time Tdj set by the user is determined to be too short. Since the debounce delay time Td is equal to the preset predictive debounce time Tdj and the key debounce time (td= Tdj-Tj), the preset predictive debounce time Tdj can be incremented to increase the fixed time value when the debounce delay time Td is too short, and the current predictive debounce time Tdjp is equal to the preset predictive debounce time Tdj and increases the fixed time value. It should be understood that, the user presses a button once, and the preset predicted jitter elimination time Tdj is added once, i.e. a fixed time value is added once; when the key shake eliminating delay time Td is still smaller than the reference time Tre for a plurality of times, the preset predictive shake eliminating time Tdj is in a value-added state, namely, a plurality of times of fixed time values (td= Tdj +0.5 ms-Tj) are added until the shake eliminating delay time Td is larger than or equal to the reference time Tre (Td is larger than or equal to 15 ms) so as to obtain the optimal predictive shake eliminating time Tdjp. Therefore, according to the Key signal Key being debounced by the user's multiple Key presses, the calculated predicted debounced time Tdjp becomes more accurate according to the increase in the number of times. For example, the key shake time Tj is 5ms, and the condition that Td is equal to or greater than 15ms is td+0.5ms is equal to or greater than 20ms. Further, since the preset predicted debounce time Tdj is 15ms, tdj+0.5ms is at least 10 times or more to make Tdj +0.5ms be equal to or greater than 20ms, and Td be equal to or greater than 15ms. Namely, the user can press the key for at least 10 times or more to enable Tdj +0.5ms to be more than or equal to 20ms so as to obtain the optimal predicted jitter elimination time Tdjp.
The invention provides a branch prediction-based self-adaptive key jitter elimination digital processing method, which comprises the following steps: when a Key signal Key is received, determining whether the current Key signal Key is a first Key signal Key; if the current Key signal Key is determined to be the first Key signal Key, acquiring the Key signal Key cached when the Key is pressed; calculating Key jitter time Tj according to the cached Key signal Key; calculating jitter elimination delay time Td according to preset predicted jitter elimination time Tdj and key jitter time Tj; according to the comparison of the jitter elimination delay time Td and the reference time Tre, calculating and storing the predicted jitter elimination time Tdjp; and if the current Key signal Key is not the first Key signal Key, performing Key debouncing on the current Key signal Key according to the stored last prediction debouncing time Tdjp. The invention dynamically adjusts the key jitter elimination time according to the jitter elimination delay time, so that the key jitter elimination time is matched with different objects.
In this embodiment, referring to fig. 3 and 4, when the Key signal Key is received, determining whether the current Key signal Key is the first Key signal Key includes executing an operation of n+1 when the Key signal Key is received, and determining whether n+1-N is equal to 1;
If the current Key signal Key is determined to be the first Key signal Key, obtaining the Key signal Key cached when the Key is pressed includes: determining whether N+1-N is equal to 1, and if the N+1-N is equal to 1, acquiring a Key signal Key cached when a Key is pressed;
if the current Key signal Key is determined not to be the first Key signal Key, performing Key debounce on the current Key signal Key according to the stored predicted debounce time Tdjp includes: and if the N+1-N is determined to be greater than 1, performing Key debounce on the current Key signal Key according to the stored predicted debounce time Tdjp.
It should be understood that, in the present invention, by comparing the debounce delay time Td with the reference time Tre, the preset debounce time Tdj set by the user is determined to be too long or too short, so as to further adjust the value of the preset debounce time Tdj to calculate the predicted debounce time Tdjp, so that the Key debounce component 30 performs Key debounce on the current Key signal Key according to the predicted debounce time Tdjp, thereby enabling the user to achieve better Key experience.
The debounce delay time Td is the difference between the preset predicted debounce time Tdj and the key debounce time Tj (td= Tdj-Tj). The Key shake time Tj can be calculated according to the Key signal Key cached by the cache component 10, and the preset prediction shake eliminating time Tdj needs to be set by the user, so when the user presses the Key for the first time, the Key shake eliminating component 30 takes the preset prediction shake eliminating time Tdj set by the user as the current prediction shake eliminating time Tdjp, so as to perform Key shake eliminating on the first Key signal Key and output a Key shake eliminating signal key_de to a mechanical contact of the Key, so as to complete Key shake eliminating work on the mechanical contact. In addition, while the predictive debounce component 20 outputs the preset predictive debounce time Tdj to the Key debounce component 30 to enable the Key debounce component 30 to perform Key debounce on the first Key signal Key according to the preset predictive debounce time Tdj, the predictive debounce component 20 also calculates and stores the predictive debounce time Tdjp according to the debounce delay time Td and the reference time Tre, so that when the user presses the Key next time, the predictive debounce component 20 takes the stored last predictive debounce time Tdjp as a reference time for performing Key debounce on the current Key signal Key.
Therefore, when the user presses the Key, it is necessary to determine whether the Key signal Key output by the current Key is the first Key signal Key. For example, when the Key signal Key is first pressed, n=1, n+1-n=1, and n+1-N is determined to be equal to 1, the Key signal Key cached when the Key is pressed is obtained, and the debounce time Tdj is predicted according to the preset set by the user to perform Key debounce on the current Key signal Key; when the Key signal Key is second time, n=2, n+1-n=2, and n+1-N is determined to be greater than 1, the Key debounce is performed on the current Key signal Key according to the last predicted debounce time Tdjp stored by the predicted debounce component 20. When the Key signal Key is third time, n=3, n+1-n=3, and n+1-N is determined to be greater than 1, the Key debounce is performed on the current Key signal Key according to the last predicted debounce time Tdjp stored by the predicted debounce component 20.
In this embodiment, the calculating the debounce delay time Td according to the preset predicted debounce time Tdj and the key debounce time Tj includes: and calculating the debounce delay time Td according to the difference value between the preset predicted debounce time Tdj and the key jitter time Tj.
It can be understood that the key shake time Tj will have a certain difference due to the difference of the mechanical characteristics of the keys and the difference of the user groups, for example, the old, the handicapped, and the young or the electric competitive hand generally have a slightly longer average time when pressing the keys, and a shorter average time when pressing the keys; the key shaking time Tj of the long-stroke, high-damping key type is also longer than that of the short-stroke, low-damping key type. For example, when the key jitter time Tj is 5ms and the predicted jitter time is 40ms, a jitter delay time of 35ms is caused, which cannot bring about the best experience for the electronic contest group.
Therefore, before Key debounce is performed on the Key signal Key, it is necessary to determine whether the debounce delay time Td is too long or too short, so as to avoid that the debounce delay time Td affects the Key experience of the user when being too long or too short. In addition, when the user presses a key for the first time, the debounce delay time Td may be calculated (td= Tdj-Tj) according to a difference between the preset predicted debounce time Tdj and the key debounce time Tj, where the preset predicted debounce time Tdj is set by the user; when the user is not pressing the key for the first time, the debounce delay time Td may be calculated based on the difference between the last predicted debounce time Tdj stored by the predicted debounce component 20 and the key jitter time Tj (td= Tdj-Tj).
In this embodiment, referring to fig. 5, the calculating the predicted debounce time Tdjp according to the comparison between the debounce delay time Td and the reference time Tre includes:
when the jitter elimination delay time Td is larger than the reference time Tre, determining that the jitter elimination delay time Td is overlong;
preset predictive debounce time Tdj is jumped to a reduced state and reduced;
the current predicted debounce time Tdjp is determined from the reduced preset predicted debounce time Tdj.
It is understood that when the debounce delay time Td is greater than the reference time Tre (Td > Tre), the debounce delay time Td may be determined to be too long. Since the debounce delay time Td is the difference between the preset predicted debounce time Tdj and the key debounce time Tj (td= Tdj-Tj), the binary value of the preset predicted debounce time Tdj can be reduced when the debounce delay time Td is too long, so as to shorten the debounce delay time Td. When the user presses a button for many times and the jitter elimination delay time Td is still larger than the reference time Tre, the preset prediction jitter elimination time Tdj jumps to a reduced state for many times, and the preset prediction jitter elimination time Tdj of each time reduces a fixed time value, so that the jitter elimination delay time Td is indirectly reduced until the jitter elimination delay time Td is smaller than or equal to the reference value Tre (Td is smaller than or equal to Tre). In this embodiment, the fixed time value is set to 0.5ms, and the reference time Tre is set to 15ms as an example.
For example, when the user presses a key for the first time, the debounce delay time Td is greater than the reference time Tre (Td > Tre), the preset predictive debounce time Tdj is skipped to the reduced state for the first time, and the debounce delay time Td is a value obtained by subtracting 0.5ms from the preset predictive debounce time Tdj and subtracting the key debounce time Tj (td= Tdj-0.5 ms-Tj); when the user presses the key for the second time, the jitter elimination delay time Td is still larger than the reference time Tre (Td > Tre), the preset predictive jitter elimination time Tdj is in a reduced value state for the second time, and the jitter elimination delay time Td is a value obtained by subtracting the preset predictive jitter elimination time Tdj by 0.5ms twice and then subtracting the key jitter time Tj (Td= Tdj-0.5ms-0.5 ms-Tj); when the user presses the key for the third time, the debounce delay time Td is still larger than the reference time Tre (Td > Tre), the preset predictive debounce time Tdj is subjected to a value reduction state for the third time, and the debounce delay time Td is a value obtained by subtracting the preset predictive debounce time Tdj by 0.5ms for three times and then subtracting the key debounce time Tj (Td= Tdj-0.5ms-0.5ms-0.5 ms-Tj). The nth key press of the user (N can be regarded as the key press times of the user and the times of the preset predictive debounce time Tdj), the debounce delay time Td is smaller than or equal to a reference value Tre (Td is smaller than or equal to 15 ms), and the preset predictive debounce time Tdj-0.5ms multiplied by N is used as the current predictive debounce time Tdjp.
For example, when the user presses a key for the first time, the key shake time Tj is 5ms, the preset predicted shake elimination time Tdj is 25ms, the shake elimination delay time Td is 20ms, the fixed time value is 0.5ms, and the reference time Tre is 15ms. The debounce delay time Td is greater than the reference time Tre (20 ms > 15 ms), the preset predicted debounce time Tdj jumps to a reduced state and decreases by 0.5ms, and the current formula of the predicted debounce time Tdjp is tdjp= Tdj-0.5 ms=25 ms-0.5 ms=24.5 ms.
Further, when the user presses the key for the second time, the key shake time Tj is 5ms, the preset predictive shake eliminating time Tdj is 24.5ms, the shake eliminating delay time Td is 19.5ms, the fixed time value is 0.5ms, and the reference time Tre is 15ms. The debounce delay time Td is still greater than the reference time Tre (19.5 ms > 15 ms), the preset predicted debounce time Tdj stays in the reduced state and decreases by 0.5ms, and the current formula of the predicted debounce time Tdjp is tdjp= Tdj-0.5 ms=24.5 ms-0.5 ms=24 ms.
The jitter elimination delay time Td is smaller than or equal to the reference time Tre (Td is less than or equal to 15 ms) until the tenth key press of the user. Since the key jitter time Tj is set to 5ms, the condition that Td is less than or equal to 15ms is Tdj-0.5ms is less than or equal to 20ms. Further, since the preset predictive debounce time Tdj is 25ms, tdj-0.5ms can be at least 10 times or more to make Tdj-0.5ms less than or equal to 20ms, and simultaneously make Td less than or equal to 15ms, the current formula of the predictive debounce time Tdjp is tdjp= Tdj-0.5ms×10=25 ms-5 ms=20 ms.
Further, referring to fig. 6, the calculating the predicted debounce time Tdjp according to the comparison between the debounce delay time Td and the reference time Tre includes:
when the jitter elimination delay time Td is smaller than the reference time Tre, determining that the jitter elimination delay time Td is too short;
the preset predictive jitter elimination time Tdj is jumped to a value-added state and added;
the current predicted debounce time Tdjp is determined from the incremented preset predicted debounce time Tdj.
It will be appreciated that when the debounce delay time Td is less than the reference time Tre (Td < Tre), it can be determined that the debounce delay time Td is too short. Since the debounce delay time Td is the difference between the preset predicted debounce time Tdj and the key debounce time Tj (td= Tdj-Tj), the binary value of the preset predicted debounce time Tdj can be incremented to extend the debounce delay time Td when the debounce delay time Td is too short. Specifically, the preset predicted debounce time Tdj jumps to the value-added state, and the preset debounce time Tdj is increased by a fixed time value each time, so that the debounce delay time Td is indirectly increased until the debounce delay time Td is greater than or equal to the reference value Tre (Td is greater than or equal to Tre). In this embodiment, the fixed time value is set to 0.5ms, and the reference time Tre is set to 15ms as an example.
For example, when the user presses a key for the first time, the debounce delay time Td is smaller than the reference time Tre (Td < Tre), the preset predictive debounce time Tdj is skipped to the value-added state for the first time, and the debounce delay time Td is a value obtained by adding 0.5ms to the preset predictive debounce time Tdj and subtracting the key debounce time Tj (td= Tdj +0.5 ms-Tj);
when the user presses the key for the second time, the jitter elimination delay time Td is still smaller than the reference time Tre (Td < Tre), the preset predictive jitter elimination time Tdj is in a value-added state for the second time, and the jitter elimination delay time Td is a value obtained by adding the preset predictive jitter elimination time Tdj by two times of 0.5ms and subtracting the key jitter time Tj (Td= Tdj +0.5ms+0.5ms-Tj); when the user presses the key for the third time, the debounce delay time Td is still smaller than the reference time Tre (Td < Tre), the preset predictive debounce time Tdj is in a value-added state for the third time, and the debounce delay time Td is a value obtained by adding the preset predictive debounce time Tdj by three times of 0.5ms and subtracting the key debounce time Tj (Td= Tdj +0.5ms+0.5ms+0.5ms-Tj). The nth key of the user (N may be regarded as the number of key presses of the user and the number of times of the preset predicted debounce time Tdj), the debounce delay time Td is smaller than or equal to the reference value Tre (Td is less than or equal to 15 ms), and the preset predicted debounce time Tdj +0.5ms×n is used as the current value of the predicted debounce time Tdjp.
For example, when the user presses a key for the first time, the key shake time Tj is 5ms, the preset predicted shake elimination time Tdj is 15ms, the shake elimination delay time Td is 10ms, the fixed time value is 0.5ms, and the reference time Tre is 15ms. The debounce delay time Td is smaller than the reference time Tre (10 ms < 15 ms), the preset predicted debounce time Tdj jumps to the value-added state and increases by 0.5ms, and the current formula of the predicted debounce time Tdjp is tdjp= Tdj +0.5ms=15ms+0.5ms=15.5 ms.
Further, when the user presses the key for the second time, the key shake time Tj is 5ms, the preset predictive shake eliminating time Tdj is 15.5ms, the shake eliminating delay time Td is 10.5ms, the fixed time value is 0.5ms, and the reference time Tre is 15ms. The debounce delay time Td is still smaller than the reference time Tre (10.5 ms < 15 ms), the preset predicted debounce time Tdj stays in the value-added state and increases by 0.5ms, and the current formula of the predicted debounce time Tdjp is tdjp= Tdj +0.5 ms=15.5ms+0.5ms=16 ms.
And the jitter elimination delay time Td is greater than or equal to the reference time Tre (Td is more than or equal to 15 ms) until the user presses the key for the tenth time. Because the preset predictive debounce time Tdj is 15ms, tdj+0.5ms can be at least 10 times or more to make Tdj +0.5ms equal to or greater than 20ms, and simultaneously make Td equal to or greater than 15ms, the current formula of the predictive debounce time Tdjp is tdjp= Tdj +0.5ms×10=15ms+5ms=20ms.
Further, referring to fig. 7, the calculating the predicted debounce time Tdjp according to the comparison between the debounce delay time Td and the reference time Tre includes:
when the jitter elimination delay time Td is equal to the reference time Tre, determining that the jitter elimination delay time Td is optimal;
preset predictive debounce time Tdj jumps to a rest state;
the current predicted debounce time Tdj is determined to be equal to the preset predicted debounce time Tdjp.
It is understood that when the debounce delay time Td is equal to the reference time Tre (td=tre), the debounce delay time Td may be determined as the optimal time. The preset predicted debounce time Tdj jumps to a rest state, and does not increment or decrement. In this embodiment, the reference time Tre is set to 15ms, so when the user presses a button for the first time and the debounce delay time Td is 15ms, the predicted debounce time Tdjp calculated by the current predicted debounce component 20 is equal to the preset predicted debounce time Tdj set by the user (tdjp= Tdj); further, when the user does not press a key for the first time and the debounce delay time Td is 15ms, the predicted debounce time Tdjp calculated by the current predicted debounce component 20 is equal to the predicted debounce time Tdj last stored by the predicted debounce component 20 (tdjp= Tdj).
The invention also provides a self-adaptive key jitter elimination digital processing system based on branch prediction, referring to fig. 1, comprising a buffer component 10 and a prediction jitter elimination component 20;
the prediction jitter elimination component 20 is electrically connected with the buffer component 10;
the buffer component 10 is configured to calculate key jitter time Tj;
the predictive debounce component 20 is configured to calculate a debounce delay time Td according to a preset predictive debounce time Tdj and the key debounce time Tj, and calculate a predictive debounce time Tdjp according to the debounce delay time Td and a reference time Tre.
Specifically, the user presses the Key for the first time, the Key outputs a first Key signal Key to the buffer assembly 10 to trigger the buffer assembly 10 to operate, the buffer assembly 10 detects and buffers the Key signal Key when the user presses the Key, and according to the calculated jitter time Tj of the Key, the jitter time Tj of the Key can be used as a Key input signal of the prediction jitter elimination assembly 20. Further, after the predictive debounce component 20 is triggered, a preset predictive debounce time Tdj preset by a user is output to the Key debounce component 30, so that the Key debounce component 30 performs Key debounce on the first Key signal Key according to the preset predictive debounce time Tdj, and outputs a Key debounce signal key_de to a mechanical contact of the Key, so as to complete the Key debounce operation on the mechanical contact. While the buffer component 10 outputs the key input signal Tj to the predictive debounce component 20 to trigger the predictive debounce component 20 to output the preset predictive debounce time Tdj to the key debounce component 30, the predictive debounce component 20 also obtains the debounce delay time Td according to the difference between the currently received key debounce time Tj and the preset predictive debounce time Tdj. Further, the predictive debounce component 20 compares the debounce delay time Td with the reference time Tre and determines the current predictive debounce time Tdjp based on the comparison and stores it.
Further, referring to fig. 1, the adaptive key debounce digital processing system based on branch prediction further includes a key debounce component 30;
the key jitter elimination assembly 30 is electrically connected with the prediction jitter elimination assembly 20;
the Key debounce component 30 is configured to receive the predicted debounce time of the predicted debounce component 20, and perform Key debounce on the current Key signal Key according to the predicted debounce time.
It can be understood that, when the user presses the Key for the first time, the predictive debounce module 20 is triggered and outputs a preset predictive debounce time Tdj preset by the user to the Key debounce module 30, so that the Key debounce module 30 performs Key debounce on the first Key signal Key according to the preset predictive debounce time Tdj, and outputs a key_de after Key debounce to the mechanical contact of the Key, so as to complete the Key debounce operation on the mechanical contact.
In this embodiment, referring to fig. 2, the predictive debounce component 20 includes a reduced state, a value-added state, and a rest state.
It is understood that in the present embodiment, the fixed time value is set to 0.5ms.
Therefore, when the debounce delay time Td is greater than the reference time Tre (Td > Tre), the predictive debounce component 20 jumps to the reduced state, so that the preset predictive debounce time Tdj jumps to the reduced state, and the preset predictive debounce time Tdj subtracts the fixed time value, so that the current predictive debounce time Tdjp can be determined as Tdj-0.5ms; when the debounce delay time Td is smaller than the reference time Tre (Td < Tre), the debounce prediction component 20 jumps to the value-added state, so that the preset debounce prediction time Tdj jumps to the value-added state, the preset debounce prediction time Tdj subtracts a fixed time value, and the current debounce prediction time Tdjp can be determined to be Tdj +0.5ms; when the debounce delay time Td is equal to the reference time Tre (td=tre), the predictive debounce component 20 jumps to the stationary state, causing the preset predictive debounce time Tdj to jump to the stationary state, and the current predictive debounce time Tdjp is equal to the preset predictive debounce time Tdj (tdjp= Tdj).
Further, referring to FIG. 2, the predictive debounce component 20 is implemented using a two-bit key predictive counter.
It can be understood that, in the present embodiment, the two-bit key prediction counter includes a binary value 00, a binary value 01, a binary value 10, and a binary value 11, where the binary value 00 corresponds to a state 0, the binary value 01 corresponds to a state 1, the binary value 10 corresponds to a state 2, and the binary value 11 corresponds to a state 3. Wherein, the state 0 is the increment state of the two-position key prediction counter, the state 1 and the state 2 are the rest state of the two-position key prediction counter, and the state 3 is the decrement state of the two-position key prediction counter.
Specifically, referring to fig. 2, when the debounce delay time Td is greater than the reference time Tre, the two-bit key prediction counter is a binary value of 00, which represents that the two-bit key prediction counter jumps to state 0, i.e. the two-bit key prediction counter jumps to a reduced value state; when the jitter-elimination delay time Td is smaller than the reference time, the two-position key prediction counter is a binary value 11, which represents that the two-position key prediction counter is in a state 3, namely the two-position key prediction counter jumps to a value-added state; when the debounce delay time Td is equal to the reference time Tre, the two-bit key prediction counter is a binary number 01 or a binary number 10, which represents that the two-bit key prediction counter is in state 1 or state 2, i.e. the two-bit key prediction counter jumps to a stationary state.
In one embodiment, the initial value of the user two-position key prediction counter is set to 10, i.e., the two-position key prediction counter is in state 2, and the preset predicted debounce time Tdj is set to 25ms, the reference time is set to 15ms, and the fixed time value is set to 0.5ms. Further, when the buffer component 10 outputs the key jitter time Tj of 5ms, the predictive jitter elimination component 20 calculates an jitter elimination delay time Td of 20ms according to the preset predictive jitter elimination time Tdj of 25ms and the key jitter time Tj of 5 ms; further, the debounce delay time Td is greater than the reference time Tre (20 ms > 15 ms), at which time the two-bit key prediction counter jumps from a binary value of 10 to a binary value of 11, i.e. the two-bit key prediction counter jumps from state 2 to state 3. Since state 2 is the rest state and state 3 is the reduced state, the two-bit key prediction counter can be understood as jumping from the rest state to the reduced state. The current predicted debounce time Tdjp is given by Tdj-0.5=24.5 ms, and the predicted debounce time Tdjp of 24.5ms is given as the next preset predicted debounce time Tdj.
In another embodiment, the initial value of the user two-position key prediction counter is set to 01, i.e., the two-position key prediction counter is in state 1, and the preset predicted debounce time Tdj is set to 25ms, the reference time is set to 15ms, and the fixed time value is set to 0.5ms. Further, when the buffer component 10 outputs the key jitter time Tj of 5ms, the predictive jitter elimination component 20 calculates an jitter elimination delay time Td of 20ms according to the preset predictive jitter elimination time Tdj of 25ms and the key jitter time Tj of 5 ms; further, the debounce delay time Td is greater than the reference time Tre (20 ms > 15 ms), and the two-bit key prediction counter jumps from the binary value 01 to the binary value 10, i.e. the two-bit key prediction counter jumps from the state 1 to the state 2. Since state 2 and state 1 are both stationary states, the two-bit key prediction counter may be understood as a jump from a stationary state to another stationary state. The current predicted debounce time Tdjp is equal to the preset predicted debounce time Tdj (tdjp= Tdj =25 ms), and the predicted debounce time Tdjp of 25ms is taken as the value of the next preset predicted debounce time Tdj.
Further, the user presses the key again, and when the buffer module 10 still outputs the key shake time of 5ms, the predictive shake eliminating module 20 calculates a shake eliminating delay time Td of 20ms according to the preset predictive shake eliminating time Tdj of 25ms and the key shake time Tj of 5 ms; further, the debounce delay time Td is greater than the reference time Tre (20 ms > 15 ms), and since the last time the user key two-position key prediction counter stayed in state 2, i.e. the two-position key prediction counter stayed in binary value 10, the two-position key prediction counter jumps from binary value 10 to binary value 11, i.e. the two-position key prediction counter jumps from state 2 to state 3. Since state 2 is the rest state and state 3 is the reduced state, the two-position key prediction counter can be understood as jumping from the rest state to the reduced state. The current predicted debounce time Tdjp is given by Tdj-0.5=24.5 ms, and the predicted debounce time Tdjp of 24.5ms is given as the next preset predicted debounce time Tdj.
In this way, in the multiple key presses of the user, the predicted debounce time Tdjp calculated by the predicted debounce component 20 is closer to the accurate value, so that the debounce delay time Td eventually reaches the same value as the reference time Tre, so that the key debounce time matches different objects, and the user achieves better key press experience.
The foregoing description of the preferred embodiments of the present invention should not be construed as limiting the scope of the invention, but rather should be understood to cover all modifications, equivalents, and alternatives falling within the spirit and scope of the invention as defined by the following description and drawings or any application directly or indirectly to other relevant art(s).

Claims (10)

1. An adaptive key debounce digital processing method based on branch prediction, which is characterized by comprising the following steps:
when a key signal is received, determining whether the current key signal is a first key signal;
if the current key signal is determined to be the first key signal, acquiring a key signal cached when the key is pressed;
calculating key jitter time according to the cached key signals;
calculating jitter elimination delay time according to preset predicted jitter elimination time and the key jitter time;
according to the jitter elimination delay time and the reference time, calculating and storing the predicted jitter elimination time;
and if the current key signal is not the first key signal, performing key debounce on the current key signal according to the predicted debounce time.
2. The branch prediction based adaptive key debounce digital processing method of claim 1, wherein determining if the current key signal is the first key signal when the key signal is received comprises performing an n+1 operation when the key signal is received and determining if n+1-N is equal to 1;
If the current key signal is determined to be the first key signal, the obtaining the cached key signal when the key is pressed comprises: if the N+1-N is determined to be equal to 1, acquiring a key signal cached when the key is pressed;
if the current key signal is determined not to be the first key signal, performing key debounce on the current key signal according to the stored predicted debounce time includes: and if the N+1-N is determined to be greater than 1, performing key debounce on the current key signal according to the stored predicted debounce time.
3. The branch prediction-based adaptive key debounce digital processing method of claim 1, wherein said calculating a debounce delay time from a preset predicted debounce time and said key debounce time comprises: and calculating the jitter elimination delay time according to the difference between the preset predicted jitter elimination time and the key jitter time.
4. The method for adaptively removing key jitter from a digital signal based on branch prediction as set forth in claim 1, wherein said calculating a predicted jitter removal time based on said comparing said jitter removal delay time with a reference time comprises:
when the jitter elimination delay time is longer than the reference time, determining that the jitter elimination delay time is too long;
The preset predictive jitter elimination time jumps to a reduced state and is reduced;
and predicting the debounce time according to the preset value after the value reduction to determine the current predicted debounce time.
5. The method for adaptively removing key jitter from a digital signal based on branch prediction as set forth in claim 1, wherein said calculating a predicted jitter removal time based on said comparing said jitter removal delay time with a reference time comprises:
when the jitter elimination delay time is smaller than the reference time, determining that the jitter elimination delay time is too short;
the preset predictive jitter elimination time jumps to a value-added state and is added;
and predicting the debounce time according to the preset value added value to determine the current predicted debounce time.
6. The method for adaptively removing key jitter from a digital signal based on branch prediction as set forth in claim 1, wherein said calculating a predicted jitter removal time based on said comparing said jitter removal delay time with a reference time comprises:
when the jitter elimination delay time is equal to the reference time, determining that the jitter elimination delay time is optimal;
jumping to a static state by presetting a predicted jitter elimination time;
and determining that the current predicted debounce time is equal to the preset predicted debounce time.
7. The self-adaptive key jitter elimination digital processing system based on branch prediction is characterized by comprising a cache component and a prediction jitter elimination component;
The prediction jitter elimination assembly is electrically connected with the cache assembly;
the buffer component is used for calculating key jitter time;
the prediction jitter elimination component is used for calculating jitter elimination delay time according to preset prediction jitter elimination time and key jitter time, and calculating prediction jitter elimination time according to the jitter elimination delay time and reference time.
8. The branch prediction based adaptive key debounce digital processing system of claim 7, wherein the branch prediction based adaptive key debounce digital processing system further comprises a key debounce component;
the key jitter elimination assembly is electrically connected with the prediction jitter elimination assembly;
the key jitter elimination component is used for receiving the predicted jitter elimination time of the predicted jitter elimination component and carrying out key jitter elimination on the current key signal according to the predicted jitter elimination time.
9. The branch prediction based adaptive key debounce digital processing system of claim 7, wherein the predictive debounce component includes a reduced value state, a value added state, and a rest state.
10. The branch prediction based adaptive key debounce digital processing system of claim 9, wherein the prediction debounce component is implemented using a two-bit key prediction counter.
CN202310090314.4A 2023-02-09 2023-02-09 Adaptive key jitter elimination digital processing method and system based on branch prediction Pending CN116186086A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310090314.4A CN116186086A (en) 2023-02-09 2023-02-09 Adaptive key jitter elimination digital processing method and system based on branch prediction

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310090314.4A CN116186086A (en) 2023-02-09 2023-02-09 Adaptive key jitter elimination digital processing method and system based on branch prediction

Publications (1)

Publication Number Publication Date
CN116186086A true CN116186086A (en) 2023-05-30

Family

ID=86443877

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310090314.4A Pending CN116186086A (en) 2023-02-09 2023-02-09 Adaptive key jitter elimination digital processing method and system based on branch prediction

Country Status (1)

Country Link
CN (1) CN116186086A (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160087615A1 (en) * 2014-09-24 2016-03-24 Dialog Semiconductor (UK) Ltd. Debounce Circuit with Dynamic Time Base Adjustment for a Digital System
US20180234658A1 (en) * 2015-08-10 2018-08-16 Sagemcom Broadband Sas Method for parameterising the responsiveness of an electronic device observed after receiving a command emitted by a near by testing system and device suitable for implementing such a method
CN111245678A (en) * 2020-01-09 2020-06-05 同方电子科技有限公司 Adaptive time domain telescopic window short wave radio station microphone PTT signal jitter elimination algorithm
CN113765504A (en) * 2021-07-29 2021-12-07 苏州浪潮智能科技有限公司 Universal dynamic delay jitter elimination method, device, terminal and storage medium

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160087615A1 (en) * 2014-09-24 2016-03-24 Dialog Semiconductor (UK) Ltd. Debounce Circuit with Dynamic Time Base Adjustment for a Digital System
US20180234658A1 (en) * 2015-08-10 2018-08-16 Sagemcom Broadband Sas Method for parameterising the responsiveness of an electronic device observed after receiving a command emitted by a near by testing system and device suitable for implementing such a method
CN111245678A (en) * 2020-01-09 2020-06-05 同方电子科技有限公司 Adaptive time domain telescopic window short wave radio station microphone PTT signal jitter elimination algorithm
CN113765504A (en) * 2021-07-29 2021-12-07 苏州浪潮智能科技有限公司 Universal dynamic delay jitter elimination method, device, terminal and storage medium

Similar Documents

Publication Publication Date Title
US7050550B2 (en) Method for the training or adaptation of a speech recognition device
CN110187753B (en) Application program control method, device, terminal and computer readable storage medium
US20070015532A1 (en) Multi-function key for electronic devices
US7800046B2 (en) Light detection power system and method for same
US20050113039A1 (en) Antenna selection system, antenna selection method, and radio communication apparatus using the system and method
HU219994B (en) Voice activity detector
EP1630792A1 (en) Sound processing device and method
CN110113270B (en) Network communication jitter control method, device, terminal and storage medium
CA2225203C (en) Hands-free telephone
CN116186086A (en) Adaptive key jitter elimination digital processing method and system based on branch prediction
AU5395901A (en) Telephoning and hands-free speech for cordless final apparatus with echo compensation
US20190391669A1 (en) Apparatus and method for detecting actuation of a switch
US7098762B2 (en) Electromechanical switch
JP2010130649A (en) Portable communication terminal device, unreceived incoming call notice method and program
US20100109919A1 (en) Key backlight controller, portable terminal, key backlight control method, and key backlight control program
EP2383895A1 (en) Wireless communication device and wireless communication system
EP1699216A1 (en) Mobile communication device with accelerometer for reducing the alerting volume of an incoming call
EP1942637A1 (en) Phone terminal and signal processing method
RU2014118556A (en) MULTI-PIN SWITCH
GB2393617A (en) Adaptive predictive playout scheme for packet voice applications
JP3079588B2 (en) Mobile phone
KR100380308B1 (en) Switching on/off control system for synchronous circuit breaker using neural network
CN108696308A (en) Antenna switching control method and related product
CN213783582U (en) Microphone control circuit
KR20080053045A (en) Two-way tact switch

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