WO2015139523A1 - 一种数据解码方法及装置 - Google Patents

一种数据解码方法及装置 Download PDF

Info

Publication number
WO2015139523A1
WO2015139523A1 PCT/CN2015/070736 CN2015070736W WO2015139523A1 WO 2015139523 A1 WO2015139523 A1 WO 2015139523A1 CN 2015070736 W CN2015070736 W CN 2015070736W WO 2015139523 A1 WO2015139523 A1 WO 2015139523A1
Authority
WO
WIPO (PCT)
Prior art keywords
waveform
square wave
glitch
data
glitch waveform
Prior art date
Application number
PCT/CN2015/070736
Other languages
English (en)
French (fr)
Inventor
李东声
Original Assignee
天地融科技股份有限公司
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
Priority claimed from CN201410108461.0A external-priority patent/CN103888108B/zh
Priority claimed from CN201410108273.8A external-priority patent/CN103888107B/zh
Application filed by 天地融科技股份有限公司 filed Critical 天地融科技股份有限公司
Priority to SG11201605741YA priority Critical patent/SG11201605741YA/en
Priority to US15/127,731 priority patent/US9953658B2/en
Publication of WO2015139523A1 publication Critical patent/WO2015139523A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/022Blocking, i.e. grouping of samples in time; Choice of analysis windows; Overlap factoring
    • G10L19/025Detection of transients or attacks for time/frequency resolution switching
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K5/01Shaping pulses
    • H03K5/08Shaping pulses by limiting; by thresholding; by slicing, i.e. combined limiting and thresholding
    • H03K5/082Shaping pulses by limiting; by thresholding; by slicing, i.e. combined limiting and thresholding with an adaptive threshold
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/008Multichannel audio signal coding or decoding using interchannel correlation to reduce redundancy, e.g. joint-stereo, intensity-coding or matrixing
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes
    • G10L19/22Mode decision, i.e. based on audio signal content versus external parameters
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/005Correction of errors induced by the transmission channel, if related to the coding algorithm
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/0208Noise filtering
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/038Speech enhancement, e.g. noise reduction or echo cancellation using band spreading techniques
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/27Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique
    • G10L25/30Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique using neural networks

Definitions

  • the present invention relates to the field of electronic technologies, and in particular, to a data decoding method and apparatus.
  • a smart key device (such as an audio KEY, USBKEY, etc.) that supports an audio interface can implement data interaction with an external terminal (such as a mobile phone) through an audio interface using an audio signal.
  • the audio signal is an analog signal.
  • the smart key device receives the data transmitted through the audio signal, if the audio signal has waveform distortion, the smart key device pairs the data. Errors are generated when decoding, which reduces the accuracy of data decoding and may even cause decoding failure.
  • a data decoding scheme cannot be provided, so that when the smart key device receives the audio signal from the external terminal, the accuracy and success rate of decoding the data by the smart key device are improved.
  • the present invention is directed to solving the above problems.
  • the main object of the present invention is to provide a data decoding method.
  • Another main object of the present invention is to provide a data decoding apparatus.
  • Another main object of the present invention is to provide another data decoding method.
  • Still another main object of the present invention is to provide yet another data decoding method.
  • a first aspect of the present invention provides a data decoding method, comprising: receiving a sine wave through an audio interface, wherein the sine wave includes a waveform of at least one period, and waveforms of different periods represent different bit values; Processing as a first square wave, the first square wave carrying data to be decoded; determining whether a glitch waveform is included in the first square wave based on a preset threshold; or, based on an adaptive threshold in the first square wave Determining whether the glitch waveform is included, wherein the adaptive threshold is calculated according to the synchronization header data carried in the sine wave; if the first square wave includes a glitch waveform, the glitch waveform is removed from the first square wave Processing, obtaining a second square wave; decoding the second square wave to obtain decoded data.
  • the method further includes: if the first square wave does not include a glitch waveform, decoding the first square wave to obtain decoded data.
  • determining, in the first square wave, whether the glitch waveform is included based on the preset threshold determining, in the first square wave, whether a waveform having a waveform width smaller than the preset threshold is included, if the first party is If the waveform includes a waveform having a waveform width smaller than the preset threshold, the determination result is a glitch waveform; if the waveform having a waveform width smaller than the preset threshold is not included in the first square wave, the determination result is not included. Glitch waveform.
  • determining, in the first square wave, whether the glitch waveform is included based on the adaptive threshold is: determining, in the first square wave, whether a waveform having a waveform width smaller than the adaptive threshold is included, if in the first side If the waveform includes a waveform having a waveform width smaller than the adaptive threshold, the determination result is a glitch waveform; if the waveform having a waveform width smaller than the adaptive threshold is not included in the first square wave, the determination result is not included. Glitch waveform.
  • the glitch waveform removing process is performed on the first square wave: if the level of the glitch waveform is a high level, the level of the glitch waveform is inverted to a low level; if the glitch waveform When the level is low, the level of the glitch waveform is inverted to a high level.
  • a second aspect of the present invention provides a data decoding apparatus, including: a transmitting module, configured to receive a sine wave through an audio interface, wherein the sine wave includes a waveform of at least one period, and waveforms of different periods represent different bit values; a processing module, configured to process the sine wave into a first square wave, the first square wave carries data to be decoded, and the determining module is configured to determine, according to a preset threshold, whether the glitch waveform is included in the first square wave Or determining, in the first square wave, whether the glitch waveform is included based on the adaptive threshold, wherein the adaptive threshold is calculated according to the synchronization header data carried in the sine wave; the glitch processing module is set to When the first square wave includes a glitch waveform, the first square wave is subjected to glitch waveform removal processing to obtain a second square wave; and the decoding module is configured to decode the second square wave to obtain decoded data. .
  • the decoding module is further configured to decode the first square wave to obtain decoded data when the first square wave does not include a glitch waveform.
  • the determining module is configured to determine, according to the preset threshold, whether the glitch waveform is included in the first square wave, and if the first square wave includes a waveform having a waveform width smaller than the preset threshold, determining The result is that the glitch waveform is included; if the waveform having the waveform width smaller than the predetermined threshold is not included in the first square wave, the judgment result is that the glitch waveform is not included.
  • the determining module is configured to determine, according to the adaptive threshold, whether the glitch waveform is included in the first square wave, and if the first square wave includes a waveform having a waveform width smaller than the adaptive threshold, determining The result is that the glitch waveform is included; if the waveform having the waveform width less than the adaptive threshold is not included in the first square wave, the determination result is that the glitch waveform is not included;
  • the glitch processing module is configured to reverse the level of the glitch waveform to a low level when the level of the glitch waveform is a high level; if the level of the glitch waveform When low, the level of the glitch waveform is inverted to a high level.
  • the present invention provides a data decoding method and apparatus, which can detect a sine wave received by an audio interface into a square wave and detect a glitch waveform in the square wave, and detect When the glitch waveform is present, the glitch waveform is a distortion waveform, the glitch waveform removal processing is performed on the square wave, and the square wave obtained by the burr waveform removal processing is decoded. That is, when there is a glitch waveform in the square wave, the glitch waveform is removed to eliminate the error caused by the waveform distortion, and the square wave obtained after the glitch waveform removal processing is decoded, thereby reducing the intelligence caused by the waveform distortion.
  • the error rate of the data decryption by the key device improves the accuracy and success rate of decoding the data by the smart key device.
  • a third aspect of the present invention provides another data decoding method, including:
  • A receiving a sine wave through the audio interface, processing the sine wave into a square wave carrying data to be decoded, and splicing all square waves carrying data to be decoded into a first square wave, wherein the sine wave includes at least one period Waveforms, waveforms of different periods represent different bit values;
  • the first square wave includes a preset number of consecutive and identical periods of waveforms, determining that the first square wave carries synchronization header data, performing step E; and/or,
  • the first square wave does not include a preset number of consecutive and identical periods of waveforms, determining that the first square wave does not carry synchronization header data, determining that the first square wave is based on a preset threshold Whether to include a glitch waveform;
  • step C If the first square wave does not include a glitch waveform, return to step A; and/or, if the first square wave contains a glitch waveform, perform step C;
  • the second square wave includes a preset number of consecutive and identical periods of waveforms, determining that the second square wave carries synchronization header data, performing step E; and/or,
  • step A If the second square wave does not contain a preset number of consecutive and the same period of the waveform, it is determined that the second square wave does not carry the synchronization header data, return to step A;
  • step E calculating an adaptive threshold according to the synchronization header data, if the previous step is B, then performing step F1, if the previous step is D, performing step F1 or F2;
  • step G1 determining whether the glitch waveform is included based on the adaptive threshold in the first square wave, performing step G1;
  • G1 if the first square wave includes a glitch waveform, performing glitch waveform removal processing on the first square wave to obtain a third-party wave, decoding the third-party wave to obtain decoded data; and/or, if The first square wave does not include a glitch waveform, and the first square wave is decoded to obtain decoded data;
  • G2 if the second square wave includes a glitch waveform, performing glitch waveform removal processing on the second square wave to obtain a fourth square wave, and decoding the fourth square wave to obtain decoded data; and/or, If the second square wave does not include a glitch waveform, the second square wave is decoded to obtain decoded data.
  • the method further includes:
  • step I If all the decoded data does not include the synchronization tail data, then step I;
  • next set of square waves to be processed includes a glitch waveform
  • the glitch waveform removal process is performed on the next group of square waves to be processed, and the square wave obtained after the glitch waveform removal process is decoded to obtain a decoding.
  • Data perform step H;
  • next set of square waves to be processed does not include a glitch waveform
  • the next set of square waves to be processed are decoded to obtain decoded data, and step H is performed.
  • the calculating the adaptive threshold according to the synchronization header data includes:
  • the implementation manner of determining whether the glitch waveform is included based on the preset threshold is:
  • the judgment result is that the glitch waveform is included
  • the judgment result is that the glitch waveform is not included.
  • the implementation manner of determining whether the glitch waveform is included based on the adaptive threshold is:
  • the determination result is to include a glitch waveform
  • the judgment result is that the glitch waveform is not included.
  • the implementation method of performing the glitch waveform removal processing is as follows:
  • the level of the glitch waveform is a high level, the level of the glitch waveform is inverted to a low level;
  • the level of the glitch waveform is low, the level of the glitch waveform is inverted to a high level.
  • a fourth aspect of the present invention provides a data decoding method, including:
  • S1 receiving a sine wave through an audio interface, processing the sine wave into a square wave carrying data to be decoded, and splicing all square waves carrying data to be decoded into a first square wave, wherein the sine wave includes at least one cycle Waveforms, waveforms of different periods represent different bit values;
  • the first square wave includes a preset number of consecutive and identical periods of waveforms, determining that the first square wave carries synchronization header data, performing step S5; and/or,
  • the first square wave does not include a preset number of consecutive and identical periods of waveforms, determining that the first square wave does not carry synchronization header data, determining that the first square wave is based on a preset threshold Whether to include a glitch waveform;
  • step S3 If the first square wave does not include a glitch waveform, return to step S1; and / or, if the first square wave contains a glitch waveform, step S3;
  • the second square wave includes a preset number of consecutive and identical periods of waveforms, determining that the second square wave carries synchronization header data, performing step S5; and/or,
  • step S1 If the second square wave does not include a preset number of consecutive and identical periods of waveforms, determining that the second square wave does not carry synchronization header data, returning to step S1;
  • step S5 The adaptive threshold is calculated according to the synchronization header data. If the previous step is S2, step S6-1 is performed, and if the previous step is S4, step S6-1 or S6-2 is performed;
  • step S6-1 determining, according to the adaptive threshold, whether the glitch waveform is included in the first square wave, performing step S7-1;
  • S7-1 if the first square wave includes a glitch waveform, performing glitch waveform removal processing on the first square wave, obtaining a third-party wave, saving the third-party wave, performing S8; and/or if The first square wave does not include a glitch waveform, saves the first square wave, and executes S8;
  • S7-2 if the second square wave includes a glitch waveform, performing glitch waveform removal processing on the second square wave to obtain a fourth square wave, saving the fourth square wave, performing S8; and/or if The second square wave does not include a glitch waveform, save the second square wave, and execute S8;
  • the method after the step S8, further includes:
  • next set of square waves to be processed includes a glitch waveform
  • the next set of square waves to be processed are burred Waveform removal processing, and save the waveform obtained after the glitch waveform removal processing, and execute S8;
  • next set of square waves to be processed does not include a glitch waveform
  • the next set of square waves to be processed is saved, and S8 is performed.
  • the calculating the adaptive threshold according to the synchronization header data includes:
  • the implementation manner of determining whether the glitch waveform is included based on the preset threshold is:
  • the judgment result is that the glitch waveform is included
  • the judgment result is that the glitch waveform is not included.
  • the implementation manner of determining whether the glitch waveform is included based on the adaptive threshold is:
  • the determination result is to include a glitch waveform
  • the judgment result is that the glitch waveform is not included.
  • the implementation method of performing the glitch waveform removal processing is as follows:
  • the level of the glitch waveform is a high level, the level of the glitch waveform is inverted to a low level;
  • the level of the glitch waveform is low, the level of the glitch waveform is inverted to a high level.
  • the data decoding method provided by the third aspect of the present invention and the data decoding method provided by the fourth aspect are adopted, and the sine wave received by the audio interface is adopted.
  • the processing is a square wave, and is detected based on a preset threshold or a glitch waveform in an adaptive threshold square wave.
  • the glitch waveform is a distortion waveform
  • the glitch waveform removal processing is performed on the square wave, and is performed.
  • the square wave obtained after the glitch waveform removal processing performs data decoding.
  • the glitch waveform is removed to eliminate the error caused by the waveform distortion, and the square wave obtained after the glitch waveform removal processing is decoded, thereby reducing the intelligence caused by the waveform distortion.
  • the error rate of the data decryption by the key device improves the accuracy and success rate of decoding the data by the smart key device.
  • FIG. 1 is a flowchart of a data decoding method according to Embodiment 1 of the present invention.
  • FIG. 2 is a schematic diagram of a square wave including a glitch waveform according to Embodiment 1 of the present invention
  • FIG. 3 is a flowchart of another data decoding method according to Embodiment 1 of the present invention.
  • FIG. 4 is a structural diagram of a data decoding apparatus according to Embodiment 2 of the present invention.
  • FIG. 5 is a flowchart of still another data decoding method according to Embodiment 3 of the present invention.
  • FIG. 6 is a flowchart of still another data decoding method according to Embodiment 4 of the present invention.
  • connection In the description of the present invention, it should be noted that the terms “installation”, “connected”, and “connected” are to be understood broadly, and may be fixed or detachable, for example, unless otherwise explicitly defined and defined. Connected, or integrally connected; can be mechanical or electrical; can be directly connected, or indirectly connected through an intermediate medium, can be the internal communication of the two components.
  • Connected, or integrally connected can be mechanical or electrical; can be directly connected, or indirectly connected through an intermediate medium, can be the internal communication of the two components.
  • first and second are used for descriptive purposes only and are not to be construed as indicating or implying a relative importance or quantity or location.
  • This embodiment provides a data decoding method. As shown in FIG. 1, the method mainly includes the following steps 101-105.
  • the smart key device supporting the audio interface receives a sine wave sent by an external terminal (such as a mobile phone, a tablet computer, etc.) through the audio interface.
  • the sine wave is used to transmit data, and waveforms of different periods in the sine wave represent different bit values. For example, a sine wave of period T1 is used to transmit bit 1, and a sine wave of period T0 is used to transmit bit 0.
  • the step of determining, according to the preset threshold, whether the glitch waveform is included in the first square wave that is, determining, in the first square wave, whether the waveform width is less than the preset threshold Waveform, if at home
  • the first square wave includes a waveform having a waveform width smaller than the predetermined threshold, and the determination result is a glitch waveform; if the waveform of the waveform having a waveform width smaller than the preset threshold is not included in the first square wave, determining The result is that no glitch waveform is included.
  • the step may also be implemented as follows: determining whether a glitch waveform is included in the first square wave based on an adaptive threshold, wherein the adaptive threshold is based on a synchronization header carried in the sine wave The data is calculated.
  • the adopted data structure may include at least: a synchronization header, data to be transmitted, and a synchronization tail.
  • the sync header may be a preset number of consecutive bit values, represented by a square wave as a preset number of consecutive and identical periods of waveforms.
  • the sync header can be a continuous 8 bits, and the period T1 represents the bit 1, and is represented in the square wave as 8 consecutive waveforms having a period T1.
  • the sync tail may also be a preset number of consecutive bit values, represented by a square wave as a preset number of consecutive and identical periods of waveforms.
  • the bit data indicating the sync header is different from the bit data indicating the sync tail, and is represented as a waveform of a different period in the square wave.
  • the sync tail is a continuous 6 bits
  • the period T0 represents bit 0, and is represented in the square wave as 6 consecutive waveforms having a period of T0.
  • the specific format adopted by the data during transmission can be obtained through session handshake negotiation.
  • the smart key device can obtain the specific format adopted by the data when transmitting: the synchronization header data is a continuous 8 bits, and the data to be transmitted and the synchronization tail data are consecutive 6 bits 0.
  • the smart key device determines that the square wave contains 8 consecutive waveforms with a period of T1, it can be determined that the square wave carries the synchronization header data.
  • the value of i can be specifically set according to different needs of the actual application, for example, it can be 5%.
  • the width of the glitch waveform present may be different.
  • the adaptive threshold is calculated according to the waveform width of the synchronization header data, and the width of the glitch waveform existing in the square wave waveform can be more accurately and accurately reflected. Therefore, the adaptive threshold is used to determine whether there is a glitch waveform. , will further improve the accuracy of the glitch waveform detection.
  • determining whether the glitch waveform is included based on the adaptive threshold is implemented as follows: determining, in the first square wave, whether a waveform having a waveform width smaller than the adaptive threshold is included, if If the first square wave includes a waveform having a waveform width smaller than the adaptive threshold, the determination result is a glitch waveform; if the first square wave does not include a waveform having a waveform width smaller than the adaptive threshold, determining The result is that no glitch waveform is included.
  • the first square wave includes a glitch waveform
  • the glitch waveform removing process is performed on the first square wave: if the level of the glitch waveform is a high level, the level of the glitch waveform is inverted to a low level; if the glitch waveform When the level is low, the level of the glitch waveform is inverted to a high level.
  • the smart key device since the smart key device decodes the square wave, the waveform is decoded into a corresponding bit value according to the period of the waveform. For example, a waveform of period T1 is decoded into bit 1, and a waveform of period T0 is decoded into bit 0. However, the glitch waveform also occupies a certain width. If the glitch waveform is not removed, the smart key device calculates the width of the glitch waveform in one cycle when the square wave is decoded, and the waveform of the glitch waveform The width is usually smaller than the waveform width of a normal waveform, and as a result, data decoding errors or failures are caused. As shown in FIG.
  • a glitch waveform appears in a period T1 of a normal waveform, and the width of the glitch waveform is Tm. If the glitch waveform is not removed, the intelligence is The key device will detect two waveforms during decoding, which are the waveform of period T3 and the waveform of period T4. At this time, decoding the waveform of period T3 and the waveform of period T4 will result in data decoding error or failure.
  • the waveform width of the original glitch waveform will be merged into the waveform period adjacent to the glitch waveform, that is, the glitch waveform is removed, and the square wave after the smart key device removes the glitch waveform.
  • the period of the normal waveform can be detected, and the case where the data cannot be decoded normally due to the width occupied by the detected glitch waveform is avoided.
  • the square wave with the period T1 represents the bit 1
  • the square wave with the period T0 represents the bit 0.
  • the smart key device decodes the square wave to obtain the decoded data. If the period of the square wave is detected as T1, The square wave is decoded into bit 1, and when a square wave with a period T0 in the square wave is detected, it is decoded into bit 0.
  • the method may further include a step 106 of decoding the first square wave to obtain decoded data if the first square wave does not include a glitch waveform.
  • the present invention provides a data decoding method for processing a sine wave received by an audio interface into a square wave and detecting a glitch waveform in the square wave, and detecting the presence
  • the glitch waveform is a distortion waveform
  • the glitch waveform removal processing is performed on the square wave
  • the square wave obtained by the burr waveform removal processing is decoded. That is, when there is a glitch waveform in the square wave, the glitch waveform is removed to eliminate the error caused by the waveform distortion, and the square wave obtained after the glitch waveform removal processing is decoded, thereby reducing the intelligence caused by the waveform distortion.
  • the error rate of the data decryption by the key device improves the accuracy and success rate of decoding the data by the smart key device.
  • the embodiment provides a data decoding device. As shown in FIG. 4, the device includes: a sending module 41, and waveform processing. Module 42, decision module 43, glitch processing module 44 and decoding module 45.
  • the sending module 41 is configured to receive a sine wave through the audio interface, wherein the sine wave includes a waveform of at least one period, and waveforms of different periods represent different bit values.
  • the waveform processing module 42 is configured to process the sine wave into a first square wave, the first square wave carrying data to be decoded.
  • the determining module 43 is configured to determine whether the glitch waveform is included in the first square wave based on the preset threshold; or determine whether the glitch waveform is included in the first square wave based on the adaptive threshold, wherein the adaptive The threshold is calculated based on the sync header data carried in the sine wave.
  • the burr processing module 44 is configured to perform glitch waveform removal processing on the first square wave to obtain a second square wave when the first square wave includes a glitch waveform.
  • the decoding module 45 is configured to decode the second square wave to obtain decoded data.
  • the data decoding device processes the sine wave received by the audio interface into a square wave and detects the glitch waveform in the square wave, and when the glitch waveform is detected, the glitch waveform is a distortion waveform.
  • the square wave is subjected to glitch waveform removal processing, and data is decoded for the square wave obtained by performing the glitch waveform removal processing. That is, when there is a glitch waveform in the square wave, the glitch waveform is removed to eliminate the error caused by the waveform distortion, and the square wave obtained after the glitch waveform removal processing is decoded, thereby reducing the intelligence caused by the waveform distortion.
  • the error rate of the data decryption by the key device improves the accuracy and success rate of decoding the data by the smart key device.
  • the decoding module 45 is further configured to decode the first square wave to obtain decoded data if the first square wave does not include a glitch waveform.
  • the determining module 43 is specifically configured to determine, according to the preset threshold, whether to include a glitch waveform in the first square wave, if the waveform in the first square wave includes a waveform width smaller than the preset threshold.
  • the waveform is determined to include a glitch waveform; if the waveform having a waveform width smaller than the predetermined threshold is not included in the first square wave, the determination result is that the glitch waveform is not included.
  • the determining module 43 is specifically configured to determine, according to the adaptive threshold, whether the glitch waveform is included in the first square wave, if the waveform containing the waveform width is less than the adaptive threshold in the first square wave The waveform is judged to include a glitch waveform; if the waveform having a waveform width smaller than the adaptive threshold is not included in the first square wave, the determination result is that the glitch waveform is not included.
  • the glitch processing module 44 is specifically configured to reverse the level of the glitch waveform to a low level when the level of the glitch waveform is a high level; When the level is low, the level of the glitch waveform is inverted to a high level.
  • the device provided in this embodiment is the device corresponding to the data decoding method in the first embodiment, and the implementation of each module function in the device corresponds to the implementation of each step of the method in the first embodiment.
  • the device corresponding to the data decoding method in the first embodiment, and the implementation of each module function in the device corresponds to the implementation of each step of the method in the first embodiment.
  • the data decoding apparatus may be a smart key device supporting an audio interface, including an audio KEY, a USBKEY, a Bluetooth KEY, and the like.
  • An embodiment of the present invention provides a data decoding method. As shown in FIG. 5, the method may be performed by a smart key device supporting an audio interface, and the method mainly includes the following steps A-J.
  • the smart key device supporting the audio interface receives a sine wave sent by an external terminal (such as a mobile phone, a tablet computer, etc.) through the audio interface.
  • the sine wave is used to transmit data, and waveforms of different periods in the sine wave represent different bit values. For example, a sine wave of period T1 is used to transmit bit 1, and a sine wave of period T0 is used to transmit bit 0.
  • the smart key device processes the sine wave into a square wave, and the square wave carries the data to be decoded before the data decoding operation, and splices all the square waves carrying the data to be decoded into the first square wave, that is, All square waves that have not been decoded are spliced into a first square wave.
  • the data structure used by the smart key device and the external terminal may include at least: a synchronization header, data to be transmitted, and a synchronization tail.
  • the sync header may be a preset number of consecutive bit values, represented by a square wave as a preset number of consecutive and identical periods of waveforms.
  • the sync header can be a continuous 8 bits, and the period T1 represents the bit 1, and is represented in the square wave as 8 consecutive waveforms having a period T1.
  • the sync tail may also be a preset number of consecutive bit values, represented by a square wave as a preset number of consecutive and identical periods of waveforms.
  • the bit data indicating the sync header is different from the bit data indicating the sync tail, and is represented as a waveform of a different period in the square wave.
  • the sync tail is a continuous 6 bits
  • the period T0 represents bit 0, and is represented in the square wave as 6 consecutive waveforms having a period of T0.
  • the specific format adopted by the data during transmission can be obtained through session handshake negotiation.
  • the smart key device can obtain the specific format adopted by the data when transmitting: the synchronization header data is a continuous 8 bits, and the data to be transmitted and the synchronization tail data are consecutive 6 bits 0.
  • the smart key device determines that the square wave contains 8 consecutive waveforms with a period of T1, it can be determined that the square wave carries the synchronization header data.
  • step B After the step B is determined, if the first square wave includes a preset number of consecutive and identical periods of waveforms, determining that the first square wave carries synchronization header data, performing step E; and/or,
  • the first square wave does not include a preset number of consecutive and identical periods of waveforms, determining that the first square wave does not carry synchronization header data, determining that the first square wave is based on a preset threshold Whether to include a glitch waveform;
  • step C If the first square wave does not include a glitch waveform, return to step A; and/or, if the first square wave includes a glitch waveform, perform step C.
  • the first solution is: if the first square wave includes a preset number of consecutive and identical periods of waveforms, determining that the first square wave carries synchronization header data, performing step E; and, if the If the first wave does not include a preset number of consecutive waveforms of the same period, determining that the first square wave does not carry the synchronization header data, determining whether the glitch waveform is included based on the preset threshold in the first square wave . In this case, it is determined in accordance with the judgment result of this step B to determine which branch is selected for execution.
  • the second solution is: if the first square wave includes a preset number of consecutive and identical periods of waveforms, determining that the first square wave carries synchronization header data, and performing step E. That is to say, the scheme only selects the subsequent operations involved when the judgment result of this step B is a continuous and identical period waveform including a preset number. For the subsequent operations involved when the result of the determination is that the number of consecutive and identical periods of the waveform is not included, the non-execution may be canceled, or the execution may be suspended, and the like, which is not limited herein.
  • a third solution is: if the first square wave does not include a preset number of consecutive and identical periods of waveforms, determining that the first square wave does not carry synchronization header data, then the first square wave Determine whether to include a glitch waveform based on a preset threshold. That is to say, the scheme only selects the subsequent operations involved when the judgment result of this step B is a continuous and identical period waveform including a preset number. For the subsequent operations involved when the judgment result is a continuous and identical period waveform including a preset number, the non-execution may be canceled, or the execution may be suspended, and the like, which is not limited herein.
  • the above second “and/or,” may include the following three optional implementations, and in actual application, it may be selected according to different requirements.
  • the first solution is: if the first square wave does not include a glitch waveform, return to step A; and, if the first square wave includes a glitch waveform, perform step C. In this case, it is determined in particular based on the determination result of whether or not the glitch waveform is included based on the preset threshold in the first square wave, which branch is selected to perform the subsequent operations involved.
  • the second solution is: if the first square wave does not include a glitch waveform, then return to step A. That is, The scheme only selects to perform subsequent operations involved in determining that no glitch waveform is included based on the preset threshold. For the subsequent operations involved in the judgment result being the glitch waveform, the non-execution may be canceled, or the execution may be suspended, and the like, which is not limited herein.
  • the third scheme is: if the first square wave contains a glitch waveform, step C is performed. That is to say, the scheme only selects to perform subsequent operations involved in determining the inclusion of the glitch waveform based on the preset threshold. For the subsequent operations involved when the judgment result is that the glitch waveform is not included, the non-execution may be canceled, or the execution may be suspended, and the like, which is not limited herein.
  • the glitch waveform detection processing is performed, and the square wave obtained after the glitch waveform removal processing is continued to search for the synchronization header data (ie, step CD is performed), and if no glitch waveform is detected, If the sync header data has not been found yet, the next set of square waves needs to be received, and the next set of square waves and the previous square wave are spliced together to perform the search of the sync header data (ie, return to step A).
  • determining whether the glitch waveform is included based on the preset threshold is: determining whether a waveform having a waveform width smaller than the preset threshold is included, and if the waveform having a waveform width smaller than the preset threshold is included, the determination result is The glitch waveform is included; if the waveform having the waveform width smaller than the preset threshold is not included, the judgment result is that the glitch waveform is not included.
  • the preset threshold can be specifically set according to different needs of the actual application.
  • the smart key device since the smart key device decodes the square wave, the waveform is decoded into a corresponding bit value according to the period of the waveform. For example, a waveform of period T1 is decoded into bit 1, and a waveform of period T0 is decoded into bit 0. However, the glitch waveform also occupies a certain width. If the glitch waveform is not removed, the smart key device calculates the width of the glitch waveform in one cycle when the square wave is decoded, and the waveform of the glitch waveform The width is usually smaller than the waveform width of a normal waveform, and as a result, data decoding errors or failures are caused. As shown in FIG.
  • a glitch waveform appears in a period T1 of a normal waveform, and the width of the glitch waveform is Tm. If the glitch waveform is not removed, the intelligence is The key device will detect two waveforms during decoding, which are the waveform of period T3 and the waveform of period T4. At this time, decoding the waveform of period T3 and the waveform of period T4 will result in data decoding error or failure.
  • the implementation of the glitch waveform removal process may be: if the level of the glitch waveform is a high level, the level of the glitch waveform is inverted to a low level; if the level of the glitch waveform When low, the level of the glitch waveform is inverted to a high level.
  • the waveform width of the original glitch waveform is merged into the waveform period adjacent to the glitch waveform, that is, the glitch waveform is removed, and the smart key device removes the glitch waveform.
  • the square wave is decoded, the period of the normal waveform can be detected, and the situation that the sync header data cannot be detected normally due to the width occupied by the detected glitch waveform is avoided.
  • the second square wave includes a preset number of consecutive and identical periods of waveforms, determining that the second square wave carries synchronization header data, performing step E; and/or,
  • step A If the second square wave does not contain a preset number of consecutive and the same period of the waveform, it is determined that the second square wave does not carry the synchronization header data, return to step A;
  • the first solution is: if the second square wave includes a preset number of consecutive and identical periods of waveforms, determining that the second square wave carries synchronization header data, performing step E; and, if the If the binary wave does not include a preset number of consecutive waveforms of the same period, it is determined that the second square wave does not carry the synchronization header data, and returns to step A. In this case, it is determined in accordance with the judgment result of this step to determine which branch is selected for execution.
  • the second solution is: if the second square wave includes a preset number of consecutive and identical periods of waveforms, determining that the second square wave carries synchronization header data, and performing step E. That is to say, the scheme only selects a subsequent operation involved when the judgment result of this step is a continuous and identical period waveform including a preset number. For the case where the result of the judgment is that the waveform of the continuous and the same period is not included in the preset number, the execution may be canceled, or the execution may be suspended, and the like, which is not limited herein.
  • the third solution is: if the second square wave does not include a preset number of consecutive and identical periods of waveforms, it is determined that the second square wave does not carry synchronization header data, and returns to step A. That is to say, the scheme only selects a subsequent operation involved when the judgment result of this step is a continuous and identical period waveform that does not include a preset number. For the case where the judgment result is a continuous and identical period waveform including a preset number, the execution may be canceled, or the execution may be suspended, and the like, which is not limited herein.
  • step E if the second square wave includes a preset number of consecutive waveforms having the same period, it is determined that the second square wave carries the synchronization header data, and step E is performed.
  • the first square wave carries the sync header data, but since there is a glitch waveform in the first square wave, the sync header data cannot be accurately detected.
  • the glitch waveform removal processing is performed on the first square wave by the step C, the second waveform is obtained, and the synchronization header data can be successfully detected in the second waveform. It can be seen that the accuracy and success rate of the smart key device for waveform detection can be improved by the glitch waveform detection and removal processing.
  • the second square wave does not include a preset number of consecutive and identical periods of waveforms, it is determined that the second square wave does not carry synchronization header data, and returns to step A. In this case, it is explained that the sync header data is not carried in the first square wave, and the case where the sync header data cannot be detected due to the glitch of the first square wave is also excluded.
  • step F1 is performed.
  • the synchronization header data is detected in the first square wave in step B. Therefore, the adaptive threshold can be directly calculated from the synchronization header data, and step F1 is performed in the first square wave based on the The adaptive threshold determines whether a glitch waveform is included.
  • step F1 or F2 is performed.
  • the synchronization header data is not detected in the first square wave in the step B, and the first square wave is deburred by the step CD, and the second square wave is obtained, and the second square wave is detected. Synchronize header data. Therefore, after the adaptive threshold is calculated according to the synchronization header data, step F1 may be selected to determine whether the first square wave includes a glitch waveform based on the adaptive threshold (not shown in FIG. 5, and F1 may be selected according to actual application requirements). Alternatively, step F2 may alternatively be performed to further determine whether a glitch waveform (shown in FIG. 5) is included in the second square wave based on the adaptive threshold.
  • the adaptive threshold is used to determine whether there is a glitch waveform, which further improves the accuracy of the glitch waveform detection.
  • step G1 Perform a step G1 by determining whether the glitch waveform is included based on the adaptive threshold in the first square wave.
  • the determination result is a glitch waveform; If the waveform whose waveform width is smaller than the adaptive threshold is not included, the judgment result is that the glitch waveform is not included.
  • G1 if the first square wave includes a glitch waveform, performing glitch waveform removal processing on the first square wave to obtain a third-party wave, decoding the third-party wave to obtain decoded data; and/or, if The first square wave does not include a glitch waveform, and the first square wave is decoded to obtain decoded data.
  • the first solution is: if the first square wave includes a glitch waveform, the burr waveform is removed from the first square wave Processing, obtaining a third-party wave, decoding the third-party wave to obtain decoded data; and, if the first square wave does not include a glitch waveform, decoding the first square wave to obtain decoded data. In this case, it is determined in accordance with the determination result of whether or not the glitch waveform is included based on the adaptive threshold in the first square wave in step F1 to determine which branch to perform.
  • the second implementation is: if the first square wave includes a glitch waveform, performing glitch waveform removal processing on the first square wave to obtain a third-party wave, and decoding the third-party wave to obtain decoded data. That is to say, the scheme only selects a subsequent operation involved when the judgment result of this step F1 is a glitch waveform. For the subsequent operations involved when the judgment result is that the glitch waveform is not included, the non-execution may be canceled, or the execution may be suspended, and the like, which is not limited herein.
  • a third implementation is: if the first square wave does not include a glitch waveform, the first square wave is decoded to obtain decoded data. That is to say, the scheme only selects the subsequent operations involved when the judgment result of this step F1 is that the glitch waveform is not included. For the subsequent operations involved in the judgment result being the glitch waveform, the non-execution may be canceled, or the execution may be suspended, and the like, which is not limited herein.
  • the second square wave includes a glitch waveform, perform glitch waveform removal processing on the second square wave to obtain a fourth square wave, and decode the fourth square wave to obtain decoded data; and/or, If the second square wave does not include a glitch waveform, the second square wave is decoded to obtain decoded data.
  • the square wave with the period T1 represents the bit 1
  • the square wave with the period T0 represents the bit 0 as an example.
  • the smart key device decodes the data obtained by decoding the square wave, if the period in the square wave is detected as In the square wave of T1, it is decoded into bit 1, and when a square wave with a period of T0 in the square wave is detected, it is decoded into bit 0.
  • step G2 may include the following three optional implementations. In actual application, the selection may be performed according to different requirements.
  • the first solution is: if the second square wave includes a glitch waveform, performing glitch waveform removal processing on the second square wave to obtain a fourth square wave, and decoding the fourth square wave to obtain decoded data; And if the second square wave does not include a glitch waveform, the second square wave is decoded to obtain decoded data. In this case, it is determined in particular based on the determination result of whether or not the glitch waveform is included based on the adaptive threshold in the second square wave in step F2, which branch is selected for execution.
  • the second solution is: if the second square wave includes a glitch waveform, performing glitch waveform removal processing on the second square wave to obtain a fourth square wave, and decoding the fourth square wave to obtain decoded data; That is to say, the scheme only selects a subsequent operation involved when the judgment result of this step F2 is a glitch waveform. For the subsequent operations involved when the judgment result is that the glitch waveform is not included, the non-execution may be canceled, or the execution may be suspended, and the like, which is not limited herein.
  • the third scheme is: if the second square wave does not include a glitch waveform, the second square wave is decoded to obtain decoded data. That is to say, the scheme only selects the subsequent operations involved when the judgment result of this step F2 is that the glitch waveform is not included. For the subsequent operations involved in the judgment result being the glitch waveform, the non-execution may be canceled, or the execution may be suspended, and the like, which is not limited herein.
  • the glitch waveform is detected based on the adaptive threshold square wave in the square wave (for example, the first square wave or the second square wave), and the square wave is detected.
  • the burr waveform is included, the spur waveform removal processing is performed on the square wave, and the method of removing the glitch waveform is decoded, thereby reducing the decoding error caused by the glitch waveform on the data decoding, and further improving the accuracy and success of the data decoding. rate.
  • the method may further include the following steps H-J after decoding the completed data.
  • all the decoded data includes the synchronization tail data
  • all the decoded data is processed; wherein processing all the decoded data may be performed according to actual application requirements, for example, verifying, displaying, signing, etc. of the transaction data according to the decoded data. .
  • step I is performed.
  • next set of square waves to be processed includes a glitch waveform
  • the glitch waveform removal process is performed on the next group of square waves to be processed, and the square wave obtained after the burr waveform removal process is decoded, thereby obtaining Decode the data and perform step H.
  • next set of square waves to be processed does not include a glitch waveform
  • the next set of square waves to be processed are decoded to obtain decoded data, and step H is performed.
  • the sine wave received by the audio interface is processed into a square wave, and is detected based on a preset threshold or a glitch waveform in the adaptive threshold square wave.
  • the glitch waveform is The distortion waveform
  • the square wave is subjected to the glitch waveform removal processing, and the square wave obtained by the glitch waveform removal processing is decoded. That is, when there is a glitch waveform in the square wave, the glitch waveform is removed to eliminate the error caused by the waveform distortion, and the square wave obtained after the glitch waveform removal processing is decoded, thereby reducing the intelligence caused by the waveform distortion.
  • the error rate of the data decryption by the key device improves the accuracy and success rate of decoding the data by the smart key device.
  • the implementation process of the data decoding method provided in Embodiment 3 is that the data is decoded by the first wave, and then it is determined whether the synchronization tail data is found.
  • the implementation process of the data decoding method provided in this embodiment may be that the synchronization wave data is searched for by the first wave, and the data is decoded after the synchronization tail data is found.
  • Embodiment 4 refer to Embodiment 4 below.
  • the present embodiment provides a data decoding method. As shown in FIG. 6, the method can be performed by a smart key device supporting an audio interface, and the method includes the following steps S1 to S9-2.
  • S1 receiving a sine wave through an audio interface, processing the sine wave into a square wave carrying data to be decoded, and splicing all square waves carrying data to be decoded into a first square wave, wherein the sine wave includes at least one cycle Waveforms, waveforms of different periods represent different bit values.
  • S2 Determine whether the first square wave includes a preset number of consecutive waveforms having the same period.
  • the first square wave includes a preset number of consecutive and identical periods of waveforms, determining that the first square wave carries synchronization header data, performing step S5; and/or,
  • the first square wave does not include a preset number of consecutive and identical periods of waveforms, determining that the first square wave does not carry synchronization header data, determining that the first square wave is based on a preset threshold Whether to include a glitch waveform.
  • the implementation manner of determining whether the glitch waveform is included based on the preset threshold is: determining whether a waveform having a waveform width smaller than the preset threshold is included, and if the waveform having a waveform width smaller than the preset threshold is included, determining that the glitch waveform is included If the waveform having the waveform width smaller than the preset threshold is not included, the judgment result is that the glitch waveform is not included.
  • step S3 If the first square wave does not include a glitch waveform, return to step S1; and/or, if the first square wave includes a glitch waveform, step S3 is performed.
  • the first solution is: if the first square wave includes a preset number of consecutive and identical periods of waveforms, determining that the first square wave carries synchronization header data, performing step S5; and, if the If the first wave does not include a preset number of consecutive waveforms of the same period, determining that the first square wave does not carry the synchronization header data, determining whether the glitch waveform is included based on the preset threshold in the first square wave . At this time, it is determined in accordance with the determination result of this step S2 to determine which branch to perform.
  • the second solution is: if the first square wave includes a preset number of consecutive and identical periods of waveforms, determining that the first square wave carries synchronization header data, and performing step S5. That is to say, the scheme only selects a subsequent operation involved when the determination result of this step S2 is a continuous and identical period waveform including a preset number. And when judging The result is that the subsequent operations involved in the case of not including a preset number of consecutive and identical waveforms can be canceled or not executed, and the like, and the like, which is not limited herein.
  • a third solution is: if the first square wave does not include a preset number of consecutive and identical periods of waveforms, determining that the first square wave does not carry synchronization header data, then the first square wave Determine whether to include a glitch waveform based on a preset threshold. That is to say, the scheme only selects a subsequent operation involved when the judgment result of this step S2 is a continuous and identical period waveform that does not include a preset number. For the subsequent operations involved when the judgment result is a continuous and identical period waveform including a preset number, the non-execution may be canceled, or the execution may be suspended, and the like, which is not limited herein.
  • the above second “and/or,” may include the following three optional implementations, and in actual application, it may be selected according to different requirements.
  • the first solution is: if the first square wave does not include a glitch waveform, then return to step S1; and if the first square wave includes a glitch waveform, step S3 is performed. At this time, it is specifically determined according to the determination result of determining whether or not the glitch waveform is included based on the preset threshold in the first square wave, which branch is selected to perform the subsequent operations involved.
  • the second solution is: if the first square wave does not include a glitch waveform, then return to step S1. That is to say, the scheme only selects to perform subsequent operations involved in determining that the glitch waveform is not included based on the preset threshold. For the subsequent operations involved in the judgment result being the glitch waveform, the non-execution may be canceled, or the execution may be suspended, and the like, which is not limited herein.
  • the third scheme is: if the first square wave includes a glitch waveform, step S3 is performed. That is to say, the scheme only selects to perform subsequent operations involved in determining the inclusion of the glitch waveform based on the preset threshold. For the subsequent operations involved when the judgment result is that the glitch waveform is not included, the non-execution may be canceled, or the execution may be suspended, and the like, which is not limited herein.
  • the implementation of the glitch waveform removal process may be: if the level of the glitch waveform is a high level, the level of the glitch waveform is inverted to a low level; if the level of the glitch waveform When low, the level of the glitch waveform is inverted to a high level.
  • the second square wave includes a preset number of consecutive and identical periods of waveforms, determining that the second square wave carries synchronization header data, performing step S5; and/or,
  • step S1 If the second square wave does not include a preset number of consecutive and identical periods of waveforms, determining that the second square wave does not carry synchronization header data, returning to step S1;
  • the first solution is: if the second square wave includes a preset number of consecutive and identical periods of waveforms, determining that the second square wave carries synchronization header data, performing step S5; and, if the If the two square waves do not include a preset number of consecutive waveforms of the same period, it is determined that the second square wave does not carry the synchronization header data, and returns to step S1. At this time, it is determined in accordance with the judgment result of this step to determine which branch is selected for execution.
  • the second solution is: if the second square wave includes a preset number of consecutive and identical periods of waveforms, determining that the second square wave carries synchronization header data, and performing step S5. That is to say, the scheme only selects a subsequent operation involved when the judgment result of this step is a continuous and identical period waveform including a preset number. For the case where the result of the judgment is that the waveform of the continuous and the same period is not included in the preset number, the execution may be canceled, or the execution may be suspended, and the like, which is not limited herein.
  • the third solution is: if the second square wave does not include a preset number of consecutive and identical periods of waveforms, it is determined that the second square wave does not carry synchronization header data, and returns to step S1. That is to say, the scheme only selects a subsequent operation involved when the judgment result of this step is a continuous and identical period waveform that does not include a preset number. For the case where the judgment result is a continuous and identical period waveform including a preset number, the execution may be canceled, or the execution may be suspended, and the like, which is not limited herein.
  • step S6-1 is performed, and if the previous step is S4, step S6-1 or S6-2 is performed.
  • step S6-1 Determine whether the glitch waveform is included based on the adaptive threshold in the first square wave, and perform step S7-1.
  • step S6-2 determining, in the second square wave, whether the glitch waveform is included based on the adaptive threshold, and executing step S7-2.
  • the determination result is a glitch waveform; If the waveform whose waveform width is smaller than the adaptive threshold is not included, the judgment result is that the glitch waveform is not included.
  • the first square wave includes a glitch waveform
  • perform glitch waveform removal processing on the first square wave to obtain a third-party wave, save the third-party wave, and execute S8; and/or if If the first square wave does not include a glitch waveform, the first square wave is saved, and S8 is executed.
  • the first solution is: if the first square wave includes a glitch waveform, performing glitch waveform removal processing on the first square wave to obtain a third-party wave, saving the third-party wave, and executing S8; If the first square wave does not include a glitch waveform, the first square wave is saved, and S8 is executed. In this case, it is determined in particular based on the determination result of whether or not the glitch waveform is included based on the adaptive threshold in the first square wave.
  • the second solution is: if the first square wave includes a glitch waveform, performing glitch waveform removal processing on the first square wave to obtain a third-party wave, saving the third-party wave, and executing S8; As a result, the subsequent operations involved in the case where the glitch waveform is not included may be canceled or not executed, or the execution may be suspended, and the like, which is not limited herein.
  • the third solution is: if the first square wave does not include a glitch waveform, the first square wave is saved, and S8 is performed; and for the subsequent operation involved when the judgment result is a glitch waveform, the non-execution may be cancelled, Or suspend execution, etc., there is no limit here.
  • step S7-2 may include the following three optional implementations. In actual application, the selection may be performed according to different requirements.
  • the first solution is: if the second square wave includes a glitch waveform, performing burr waveform removal processing on the second square wave to obtain a fourth square wave, saving the fourth square wave, and executing S8; If the second square wave does not include a glitch waveform, the second square wave is saved, and S8 is performed. In this case, it is determined in particular based on the determination result of whether or not the glitch waveform is included based on the adaptive threshold in the second square wave.
  • the second solution is: if the second square wave includes a glitch waveform, performing glitch waveform removal processing on the second square wave to obtain a fourth square wave, saving the fourth square wave, and executing S8;
  • the result of the judgment is that the glitch waveform is not included, the subsequent operations involved may be canceled, or suspended, and the like, and are not limited herein.
  • the third solution is: if the second square wave does not include a glitch waveform, the second square wave is saved, and S8 is performed; and for the subsequent operation involved when the judgment result is that the glitch waveform is included, the non-execution may be cancelled, Or suspend execution, etc., there is no limit here.
  • step S9-2 if all the saved square waves do not include the synchronization tail data, continue to acquire the next group of square waves to be processed, in the next group to be processed
  • the processed square wave determines whether or not the glitch waveform is included based on the adaptive threshold.
  • next set of square waves to be processed includes a glitch waveform
  • the glitch waveform removal processing is performed on the next group of square waves to be processed, and the waveform obtained after the glitch waveform removal processing is saved, and S8 is performed.
  • the next group of square waves to be processed is saved, and S8 is performed.
  • the sine wave received by the audio interface is processed into a square wave, and is detected based on a preset threshold or a glitch waveform in the adaptive threshold square wave.
  • the glitch waveform is The distortion waveform
  • the square wave is subjected to the glitch waveform removal processing, and the square wave obtained by the glitch waveform removal processing is decoded. That is, when there is a glitch waveform in the square wave, the glitch waveform is removed to eliminate the error caused by the waveform distortion, and the square wave obtained after the glitch waveform removal processing is decoded, thereby reducing the intelligence caused by the waveform distortion.
  • the error rate of the data decryption by the key device improves the accuracy and success rate of decoding the data by the smart key device.
  • the difference between the third embodiment and the fourth embodiment is that in the implementation process, the data is decoded first and then the synchronization tail data is determined. In the implementation process, the data is decoded after the synchronization tail data is first determined.
  • Embodiment 3 and Embodiment 4 the detection synchronization header data is implemented, the adaptive threshold is calculated according to the synchronization header data, the glitch waveform is determined based on the preset threshold or the adaptive threshold, and the glitch waveform is removed from the glitch waveform.
  • the specific implementations of the steps of processing, detecting the synchronization tail data, and the like are the same.
  • the above steps are not further defined in the fourth embodiment. For details, refer to the limited explanation of the corresponding steps in the embodiment 3, and details are not described herein again.
  • the third embodiment and the fourth embodiment can be applied to a smart key device supporting an audio interface, and the smart key device can include: a voice code KEY, a USBKEY, an electronic signature tool, a smart key device integrated with a USBKEY and an electronic token. and many more.
  • the smart key device supporting the audio interface in this embodiment can support other communication interfaces such as USB, Bluetooth, infrared, wifi, etc. in addition to the audio interface.
  • portions of the invention may be implemented in hardware, software, firmware or a combination thereof.
  • a plurality of steps or methods may be implemented by software stored in a memory and executed by a suitable instruction execution system or Firmware to achieve.
  • a suitable instruction execution system or Firmware to achieve.
  • it can be implemented by any one or combination of the following techniques well known in the art: having logic gates for implementing logic functions on data signals. Discrete logic circuits, application specific integrated circuits with suitable combinational logic gates, programmable gate arrays (PGAs), field programmable gate arrays (FPGAs), etc.
  • each functional unit in each embodiment of the present invention may be integrated into one processing module, or each unit may exist physically separately, or two or more units may be integrated into one module.
  • the above integrated modules can be implemented in the form of hardware or in the form of software functional modules.
  • the integrated modules, if implemented in the form of software functional modules and sold or used as stand-alone products, may also be stored in a computer readable storage medium.
  • the above mentioned storage medium may be a read only memory, a magnetic disk or an optical disk or the like.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Nonlinear Science (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Mathematical Physics (AREA)
  • Dc Digital Transmission (AREA)

Abstract

一种数据解码方法及装置,涉及电子技术领域,该方法包括:通过音频接口接收正弦波,所述正弦波包括至少一个周期的波形,不同周期的波形表示不同的比特值(101);将所述正弦波处理为第一方波,所述第一方波携带有待解码数据(102);在所述第一方波中基于预设阈值判断是否包含毛刺波形;或者,在所述第一方波中基于自适应阈值判断是否包含毛刺波形,其中,所述自适应阈值根据所述正弦波中携带的同步头数据计算得到(103);如果所述第一方波中包含毛刺波形,对所述第一方波进行毛刺波形去除处理,得到第二方波(104);对所述第二方波进行解码,得到解码数据(105)。该方法和装置可以提高数据解码的准确性和成功率。

Description

一种数据解码方法及装置 技术领域
本发明涉及一种电子技术领域,尤其涉及一种数据解码方法及装置。
背景技术
支持音频接口的智能密钥设备(例如音频KEY、USBKEY等)可以采用音频信号通过音频接口实现与外部终端(例如手机)之间的数据交互。音频信号是一种模拟信号,在传输过程中可能存在波形失真的情况,智能密钥设备在接收到通过音频信号传输的数据时,如果音频信号出现波形失真情况,则在智能密钥设备对数据进行解码时将产生误差,降低了数据解码的准确性,甚至可能导致解码失败。
现有技术中无法提供一种数据解码方案,使得智能密钥设备接收到来自外部终端的音频信号时,提高智能密钥设备对数据进行解码的准确性和成功率。
发明内容
本发明旨在解决上述问题。
本发明的主要目的在于提供一种数据解码方法。
本发明的另一主要目的在于提供一种数据解码装置。
本发明的又一主要目的在于提供另一种数据解码方法。
本发明的再一主要目的在于提供又一种数据解码方法。
为达到上述目的,本发明的技术方案具体是这样实现的:
本发明第一方面提供了一种数据解码方法,包括:通过音频接口接收正弦波,其中,所述正弦波包括至少一个周期的波形,不同周期的波形表示不同的比特值;将所述正弦波处理为第一方波,所述第一方波携带有待解码数据;在所述第一方波中基于预设阈值判断是否包含毛刺波形;或者,在所述第一方波中基于自适应阈值判断是否包含毛刺波形,其中,所述自适应阈值根据所述正弦波中携带的同步头数据计算得到;如果所述第一方波中包含毛刺波形,对所述第一方波进行毛刺波形去除处理,得到第二方波;对所述第二方波进行解码,得到解码数据。
其中,所述的方法,还包括:如果所述第一方波中不包含毛刺波形,对所述第一方波进行解码,得到解码数据。
其中,所述自适应阈值具体根据P=i×Q计算得到;其中,P为所述自适应阈值,Q为 表示所述同步头数据的波形的宽度,i为预设百分比值。
其中,在所述第一方波中基于预设阈值判断是否包含毛刺波形为:在所述第一方波中判断是否包含波形宽度小于所述预设阈值的波形,如果在所述第一方波中包含波形宽度小于所述预设阈值的波形,则判断结果为包含毛刺波形;如果在所述第一方波中没有包含波形宽度小于所述预设阈值的波形,则判断结果为不包含毛刺波形。
其中,在所述第一方波中基于自适应阈值判断是否包含毛刺波形为:在所述第一方波中判断是否包含波形宽度小于所述自适应阈值的波形,如果在所述第一方波中包含波形宽度小于所述自适应阈值的波形,则判断结果为包含毛刺波形;如果在所述第一方波中没有包含波形宽度小于所述自适应阈值的波形,则判断结果为不包含毛刺波形。
其中,对所述第一方波进行毛刺波形去除处理为:如果所述毛刺波形的电平为高电平,则将所述毛刺波形的电平反转为低电平;如果所述毛刺波形的电平为低电平,则将所述毛刺波形的电平反转为高电平。
本发明第二方面提供一种数据解码装置,包括:发送模块,设置为通过音频接口接收正弦波,其中,所述正弦波包括至少一个周期的波形,不同周期的波形表示不同的比特值;波形处理模块,设置为将所述正弦波处理为第一方波,所述第一方波携带有待解码数据;判断模块,设置为在所述第一方波中基于预设阈值判断是否包含毛刺波形;或者,在所述第一方波中基于自适应阈值判断是否包含毛刺波形,其中,所述自适应阈值根据所述正弦波中携带的同步头数据计算得到;毛刺处理模块,设置为在所述第一方波中包含毛刺波形的情况下,对所述第一方波进行毛刺波形去除处理,得到第二方波;解码模块,设置为对所述第二方波进行解码,得到解码数据。
其中,所述解码模块,还设置为在所述第一方波中不包含毛刺波形的情况下,对所述第一方波进行解码,得到解码数据。
其中,所述判断模块,设置为在所述第一方波中基于预设阈值判断是否包含毛刺波形,如果在所述第一方波中包含波形宽度小于所述预设阈值的波形,则判断结果为包含毛刺波形;如果在所述第一方波中没有包含波形宽度小于所述预设阈值的波形,则判断结果为不包含毛刺波形。
其中,所述判断模块,设置为在所述第一方波中基于自适应阈值判断是否包含毛刺波形,如果在所述第一方波中包含波形宽度小于所述自适应阈值的波形,则判断结果为包含毛刺波形;如果在所述第一方波中没有包含波形宽度小于所述自适应阈值的波形,则判断结果为不包含毛刺波形;
其中,所述自适应阈值具体根据P=i×Q计算得到;其中,P为所述自适应阈值,Q为 表示所述同步头数据的波形的宽度,i为预设百分比值。
其中,所述毛刺处理模块,设置为在所述毛刺波形的电平为高电平的情况下,则将所述毛刺波形的电平反转为低电平;如果所述毛刺波形的电平为低电平,则将所述毛刺波形的电平反转为高电平。
由上述本发明提供的技术方案可以看出,本发明提供了一种数据解码方法及装置,通过将音频接口接收到的正弦波处理为方波,并对方波中的毛刺波形进行检测,在检测到存在毛刺波形时,该毛刺波形即为失真波形,对方波进行毛刺波形去除处理,并对进行毛刺波形去除处理后得到的方波进行数据解码。也就是,当方波中存在毛刺波形时,对毛刺波形进行去除,以消除波形失真带来的误差,并对进行毛刺波形去除处理后得到的方波进行数据解码,从而可以降低波形失真造成的智能密钥设备进行数据解码的错误率,提高智能密钥设备对数据解码的准确性和成功率。
本发明第三方面提供了另一种数据解码方法,包括:
A:通过音频接口接收正弦波,将所述正弦波处理为携带有待解码数据的方波,将所有携带有待解码数据的方波拼接为第一方波,其中,所述正弦波包括至少一个周期的波形,不同周期的波形表示不同的比特值;
B:判断所述第一方波是否包含预设个数的连续且周期相同的波形;
如果所述第一方波包含预设个数的连续且周期相同的波形,则确定所述第一方波携带有同步头数据,执行步骤E;和/或,
如果所述第一方波没有包含预设个数的连续且周期相同的波形,则确定所述第一方波没有携带有同步头数据,则在所述第一方波中基于预设阈值判断是否包含毛刺波形;
如果所述第一方波中没有包含毛刺波形,则返回步骤A;和/或,如果所述第一方波中包含毛刺波形,执行步骤C;
C:对所述第一方波进行毛刺波形去除处理,得到第二方波;
D:判断所述第二方波是否包含预设个数的连续且周期相同的波形;
如果所述第二方波包含预设个数的连续且周期相同的波形,则确定所述第二方波携带有同步头数据,执行步骤E;和/或,
如果所述第二方波没有包含预设个数的连续且周期相同的波形,则确定所述第二方波没有携带有同步头数据,返回步骤A;
E:根据所述同步头数据计算得到自适应阈值,如果前次步骤为B,则执行步骤F1,如果前次步骤为D,则执行步骤F1或F2;
F1:在所述第一方波中基于所述自适应阈值判断是否包含毛刺波形,执行步骤G1;
F2:在所述第二方波中基于所述自适应阈值判断是否包含毛刺波形,执行步骤G2;
G1:如果所述第一方波包含毛刺波形,对所述第一方波进行毛刺波形去除处理,得到第三方波,对所述第三方波进行解码,得到解码数据;和/或,如果所述第一方波没有包含毛刺波形,对所述第一方波进行解码,得到解码数据;
G2:如果所述第二方波包含毛刺波形,对所述第二方波进行毛刺波形去除处理,得到第四方波,对所述第四方波进行解码,得到解码数据;和/或,如果所述第二方波没有包含毛刺波形,对所述第二方波进行解码,得到解码数据。
其中,所述的方法,还包括:
H:判断所有的解码数据中是否包括同步尾数据;
如果所有的解码数据中包括同步尾数据,则处理所述所有的解码数据;
如果所有的解码数据中没有包括同步尾数据,则执行步骤I;
I:继续获取下一组待处理的方波;
J:在所述下一组待处理的方波中基于所述自适应阈值判断是否包含毛刺波形;
如果所述下一组待处理的方波中包含毛刺波形,对所述下一组待处理的方波进行毛刺波形去除处理,并对进行毛刺波形去除处理后得到的方波进行解码,得到解码数据,执行步骤H;
如果所述下一组待处理的方波中没有包含毛刺波形,对所述下一组待处理的方波进行解码,得到解码数据,执行步骤H。
其中,根据所述同步头数据计算得到自适应阈值包括:
根据P=i×Q计算得到自适应阈值;其中,P为所述自适应阈值,Q为表示所述同步头数据的波形的宽度,i为预设百分比值。
其中,基于预设阈值判断是否包含毛刺波形的实现方式为:
判断是否包含波形宽度小于所述预设阈值的波形,
如果包含波形宽度小于所述预设阈值的波形,则判断结果为包含毛刺波形;
如果没有包含波形宽度小于所述预设阈值的波形,则判断结果为不包含毛刺波形。
其中,基于自适应阈值判断是否包含毛刺波形的实现方式为:
判断是否包含波形宽度小于所述自适应阈值的波形,
如果包含波形宽度小于所述自适应阈值的波形,则判断结果为包含毛刺波形;
如果没有包含波形宽度小于所述自适应阈值的波形,则判断结果为不包含毛刺波形。
其中,进行毛刺波形去除处理的实现方式为:
如果所述毛刺波形的电平为高电平,则将所述毛刺波形的电平反转为低电平;
如果所述毛刺波形的电平为低电平,则将所述毛刺波形的电平反转为高电平。
本发明第四方面提供又一种数据解码方法,包括:
S1:通过音频接口接收正弦波,将所述正弦波处理为携带有待解码数据的方波,将所有携带有待解码数据的方波拼接为第一方波,其中,所述正弦波包括至少一个周期的波形,不同周期的波形表示不同的比特值;
S2:判断所述第一方波是否包含预设个数的连续且周期相同的波形;
如果所述第一方波包含预设个数的连续且周期相同的波形,则确定所述第一方波携带有同步头数据,执行步骤S5;和/或,
如果所述第一方波没有包含预设个数的连续且周期相同的波形,则确定所述第一方波没有携带有同步头数据,则在所述第一方波中基于预设阈值判断是否包含毛刺波形;
如果所述第一方波中没有包含毛刺波形,则返回步骤S1;和/或,如果所述第一方波中包含毛刺波形,执行步骤S3;
S3:对所述第一方波进行毛刺波形去除处理,得到第二方波;
S4:判断所述第二方波是否包含预设个数的连续且周期相同的波形;
如果所述第二方波包含预设个数的连续且周期相同的波形,则确定所述第二方波携带有同步头数据,执行步骤S5;和/或,
如果所述第二方波没有包含预设个数的连续且周期相同的波形,则确定所述第二方波没有携带有同步头数据,返回步骤S1;
S5:根据所述同步头数据计算得到自适应阈值,如果前次步骤为S2,则执行步骤S6-1,如果前次步骤为S4,则执行步骤S6-1或S6-2;
S6-1:在所述第一方波中基于所述自适应阈值判断是否包含毛刺波形,执行步骤S7-1;
S6-2:在所述第二方波中基于所述自适应阈值判断是否包含毛刺波形,执行步骤S7-2;
S7-1:如果所述第一方波包含毛刺波形,对所述第一方波进行毛刺波形去除处理,得到第三方波,保存所述第三方波,执行S8;和/或,如果所述第一方波没有包含毛刺波形,保存所述第一方波,执行S8;
S7-2:如果所述第二方波包含毛刺波形,对所述第二方波进行毛刺波形去除处理,得到第四方波,保存所述第四方波,执行S8;和/或,如果所述第二方波没有包含毛刺波形,保存所述第二方波,执行S8;
S8:判断保存的所有方波中是否包含同步尾数据,
S9-1:如果保存的所有方波中包含同步尾数据时,对保存的所有方波进行解码。
其中,所述的方法,在所述步骤S8之后,还包括:
S9-2:如果保存的所有方波中没有包含同步尾数据时,继续获取下一组待处理的方波,在所述下一组待处理的方波中基于所述自适应阈值判断是否包含毛刺波形,
如果所述下一组待处理的方波中包含毛刺波形,对所述下一组待处理的方波进行毛刺 波形去除处理,并保存进行毛刺波形去除处理后得到的波形,执行S8;
如果所述下一组待处理的方波中不包含毛刺波形,保存所述下一组待处理的方波,执行S8。
其中,根据所述同步头数据计算得到自适应阈值包括:
根据P=i×Q计算得到自适应阈值;其中,P为所述自适应阈值,Q为表示所述同步头数据的波形的宽度,i为预设百分比值。
其中,基于预设阈值判断是否包含毛刺波形的实现方式为:
判断是否包含波形宽度小于所述预设阈值的波形,
如果包含波形宽度小于所述预设阈值的波形,则判断结果为包含毛刺波形;
如果没有包含波形宽度小于所述预设阈值的波形,则判断结果为不包含毛刺波形。
其中,基于自适应阈值判断是否包含毛刺波形的实现方式为:
判断是否包含波形宽度小于所述自适应阈值的波形,
如果包含波形宽度小于所述自适应阈值的波形,则判断结果为包含毛刺波形;
如果没有包含波形宽度小于所述自适应阈值的波形,则判断结果为不包含毛刺波形。
其中,进行毛刺波形去除处理的实现方式为:
如果所述毛刺波形的电平为高电平,则将所述毛刺波形的电平反转为低电平;
如果所述毛刺波形的电平为低电平,则将所述毛刺波形的电平反转为高电平。
由上述本发明提供的技术方案可以看出,采用本发明第三方面提供的数据解码方法和第四方面提供的数据解码方法中的任一种数据解码方法,通过将音频接口接收到的正弦波处理为方波,并基于预设阈值或者自适应阈值对方波中的毛刺波形进行检测,在检测到存在毛刺波形时,该毛刺波形即为失真波形,对方波进行毛刺波形去除处理,并对进行毛刺波形去除处理后得到的方波进行数据解码。也就是,当方波中存在毛刺波形时,对毛刺波形进行去除,以消除波形失真带来的误差,并对进行毛刺波形去除处理后得到的方波进行数据解码,从而可以降低波形失真造成的智能密钥设备进行数据解码的错误率,提高智能密钥设备对数据解码的准确性和成功率。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。
图1为本发明实施例1提供的数据解码方法的流程图;
图2为本发明实施例1提供的一种包含毛刺波形的方波示意图;
图3为本发明实施例1提供的另一种数据解码方法的流程图;
图4为本发明实施例2提供的数据解码装置的结构图;
图5为本发明实施例3提供的又一种数据解码方法的流程图;以及
图6为本发明实施例4提供的再一种数据解码方法的流程图。
具体实施方式
下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或数量或位置。
下面将结合附图对本发明实施例作进一步地详细描述。
实施例1
本实施例提供一种数据解码方法,如图1所示,该方法主要包括以下步骤101-105。
101、通过音频接口接收正弦波,其中,所述正弦波包括至少一个周期的波形,不同周期的波形表示不同的比特值。
其中,支持音频接口的智能密钥设备通过音频接口接收外部终端(例如手机、平板电脑等)发送的正弦波。该正弦波用来传输数据,该正弦波中不同周期的波形表示不同的比特值。例如,周期为T1的正弦波用来传输比特1,周期为T0的正弦波用来传输比特0。
102、将所述正弦波处理为第一方波,所述第一方波携带有待解码数据。
103、在所述第一方波中基于预设阈值判断是否包含毛刺波形;或者,在所述第一方波中基于自适应阈值判断是否包含毛刺波形,其中,所述自适应阈值根据所述正弦波中携带的同步头数据计算得到。
可选的,本步骤可以采用在所述第一方波中基于预设阈值判断是否包含毛刺波形的实现方式,即在所述第一方波中判断是否包含波形宽度小于所述预设阈值的波形,如果在所 述第一方波中包含波形宽度小于所述预设阈值的波形,则判断结果为包含毛刺波形;如果在所述第一方波中没有包含波形宽度小于所述预设阈值的波形,则判断结果为不包含毛刺波形。
或者,可选的,本步骤还可以采用如下实现方式:在所述第一方波中基于自适应阈值判断是否包含毛刺波形,其中,所述自适应阈值根据所述正弦波中携带的同步头数据计算得到。
本实施例中,智能密钥设备与外部终端进行数据交互时,采用的数据结构可以至少包括:同步头、待传输数据和同步尾。同步头可以是预设个数的连续的比特值,通过方波表示为预设个数的连续且周期相同的波形。例如,同步头可以为连续的8个比特1,周期T1表示比特1,则在方波中表示为8个连续且周期均为T1的波形。同步尾也可以是预设个数的连续的比特值,通过方波表示为预设个数的连续且周期相同的波形。但表示同步头的比特数据和表示同步尾的比特数据不相同,在方波中则表示为不同周期的波形。例如,同步尾为连续的6个比特0,周期T0表示比特0,则在方波中表示为6个连续且周期均为T0的波形。智能密钥设备与外部终端进行数据交互之前,通过会话握手协商,可以获得数据在传输时采用的具体格式。例如,智能密钥设备可以获得数据在传输时采用的具体格式为:同步头数据为连续的8个比特1,待传输数据和同步尾数据为连续的6个比特0。当智能密钥设备判断出方波中包含8个连续且周期均为T1的波形时,即可以确定该方波中携带有同步头数据。
其中,所述自适应阈值具体根据P=i×Q计算得到;其中,P为所述自适应阈值,Q为表示所述同步头数据的波形的宽度,i为预设百分比值。
例如,i的取值可以根据实际应用的不同需求进行具体设定,例如可以是5%。以表示同步头数据的波形的宽度为30为例,则自适应阈值为30*5%=1.5。
本实施例中,当方波的波形宽度不同时,其存在的毛刺波形宽度可能也不同。而本实施例中自适应阈值是根据同步头数据的波形宽度计算得出,可以更真实和准确地反映方波波形中存在的毛刺波形的宽度,因而,采用自适应阈值来判断是否存在毛刺波形,会进一步提高毛刺波形检测的准确率。
具体地,在所述第一方波中基于自适应阈值判断是否包含毛刺波形的实现方式如下:在所述第一方波中判断是否包含波形宽度小于所述自适应阈值的波形,如果在所述第一方波中包含波形宽度小于所述自适应阈值的波形,则判断结果为包含毛刺波形;如果在所述第一方波中没有包含波形宽度小于所述自适应阈值的波形,则判断结果为不包含毛刺波形。
104、如果所述第一方波中包含毛刺波形,对所述第一方波进行毛刺波形去除处理,得到第二方波。
其中,对所述第一方波进行毛刺波形去除处理为:如果所述毛刺波形的电平为高电平,则将所述毛刺波形的电平反转为低电平;如果所述毛刺波形的电平为低电平,则将所述毛刺波形的电平反转为高电平。
本实施例中,由于智能密钥设备在对方波进行解码时,是根据波形的周期将波形解码为对应的比特值。例如,将周期为T1的波形解码为比特1,将周期为T0的波形解码为比特0。而,毛刺波形也会占用一定的宽度,如果不对毛刺波形进行去除处理,则智能密钥设备在对方波进行解码时,会将毛刺波形所占的宽度计算在一个周期中,而毛刺波形的波形宽度通常会比正常波形的波形宽度小,因而,会导致数据解码错误或者失败。如附图2所示,例如,以一个周期的波形为例说明,在一个正常波形的周期T1中出现了一个毛刺波形,该毛刺波形的宽度为Tm,如果不对毛刺波形进行去除处理,则智能密钥设备在解码时将会检测到两个波形,分别是周期T3的波形和周期T4的波形,此时对周期T3的波形和周期T4的波形进行解码将会导致数据解码错误或者失败。
本步骤中经过毛刺波形处理后,原来毛刺波形的波形宽度将会合并到该毛刺波形相邻的波形周期中,也就是对毛刺波形进行了去除,智能密钥设备对去除毛刺波形之后的方波进行解码时,可以检测到正常波形的周期,避免因检测到毛刺波形占用的宽度而导致无法正常进行数据解码的情况。
105、对所述第二方波进行解码,得到解码数据。
本实施例中,以周期为T1的方波表示比特1,周期为T0的方波表示比特0为例,智能密钥设备在对方波进行解码得到解码数据,如果检测到方波中周期为T1的方波时,解码为比特1,检测到方波中周期为T0的方波时,解码为比特0。
进一步地,如图3所示,所述的方法还可以包括步骤106,即如果所述第一方波中不包含毛刺波形,则对所述第一方波进行解码,得到解码数据。
由上述本发明提供的技术方案可以看出,本发明提供了一种数据解码方法,通过将音频接口接收到的正弦波处理为方波,并对方波中的毛刺波形进行检测,在检测到存在毛刺波形时,该毛刺波形即为失真波形,对方波进行毛刺波形去除处理,并对进行毛刺波形去除处理后得到的方波进行数据解码。也就是,当方波中存在毛刺波形时,对毛刺波形进行去除,以消除波形失真带来的误差,并对进行毛刺波形去除处理后得到的方波进行数据解码,从而可以降低波形失真造成的智能密钥设备进行数据解码的错误率,提高智能密钥设备对数据解码的准确性和成功率。
实施例2
本实施例提供一种数据解码装置,如图4所示,该装置包括:发送模块41、波形处理 模块42、判断模块43、毛刺处理模块44和解码模块45。
其中,发送模块41,设置为通过音频接口接收正弦波,其中,所述正弦波包括至少一个周期的波形,不同周期的波形表示不同的比特值。
波形处理模块42,设置为将所述正弦波处理为第一方波,所述第一方波携带有待解码数据。
判断模块43,设置为在所述第一方波中基于预设阈值判断是否包含毛刺波形;或者,在所述第一方波中基于自适应阈值判断是否包含毛刺波形,其中,所述自适应阈值根据所述正弦波中携带的同步头数据计算得到。
毛刺处理模块44,设置为在所述第一方波中包含毛刺波形的情况下,对所述第一方波进行毛刺波形去除处理,得到第二方波。
解码模块45,设置为对所述第二方波进行解码,得到解码数据。
本发明提供的一种数据解码装置,通过将音频接口接收到的正弦波处理为方波,并对方波中的毛刺波形进行检测,在检测到存在毛刺波形时,该毛刺波形即为失真波形,对方波进行毛刺波形去除处理,并对进行毛刺波形去除处理后得到的方波进行数据解码。也就是,当方波中存在毛刺波形时,对毛刺波形进行去除,以消除波形失真带来的误差,并对进行毛刺波形去除处理后得到的方波进行数据解码,从而可以降低波形失真造成的智能密钥设备进行数据解码的错误率,提高智能密钥设备对数据解码的准确性和成功率。
示例性地,所述解码模块45,还设置为在所述第一方波中不包含毛刺波形的情况下,对所述第一方波进行解码,得到解码数据。
示例性地,所述判断模块43,具体设置为在所述第一方波中基于预设阈值判断是否包含毛刺波形,如果在所述第一方波中包含波形宽度小于所述预设阈值的波形,则判断结果为包含毛刺波形;如果在所述第一方波中没有包含波形宽度小于所述预设阈值的波形,则判断结果为不包含毛刺波形。
示例性地,所述判断模块43,具体设置为在所述第一方波中基于自适应阈值判断是否包含毛刺波形,如果在所述第一方波中包含波形宽度小于所述自适应阈值的波形,则判断结果为包含毛刺波形;如果在所述第一方波中没有包含波形宽度小于所述自适应阈值的波形,则判断结果为不包含毛刺波形。
其中,所述自适应阈值具体根据P=i×Q计算得到;其中,P为所述自适应阈值,Q为表示所述同步头数据的波形的宽度,i为预设百分比值。
示例性地,所述毛刺处理模块44,具体设置为在所述毛刺波形的电平为高电平的情况下,将所述毛刺波形的电平反转为低电平;在所述毛刺波形的电平为低电平的情况下,将所述毛刺波形的电平反转为高电平。
本实施例提供的装置是上述实施例1中数据解码方法对应的装置,该装置的中各个模块功能的实现与上述实施例1中方法各个步骤的实现相对应,具体可参见方法中的相关描述,在此不再赘述。
本实施例提供的数据解码装置,可以是支持音频接口的智能密钥设备,包括音频KEY、USBKEY、蓝牙KEY等等。
实施例3
本发明实施例提供一种数据解码方法,如图5所示,该方法可以由支持音频接口的智能密钥设备执行,该方法主要包括以下步骤A-J。
A、通过音频接口接收正弦波,将所述正弦波处理为携带有待解码数据的方波,将所有携带有待解码数据的方波拼接为第一方波,其中,所述正弦波包括至少一个周期的波形,不同周期的波形表示不同的比特值。
其中,支持音频接口的智能密钥设备通过音频接口接收外部终端(例如手机、平板电脑等)发送的正弦波。该正弦波用来传输数据,该正弦波中不同周期的波形表示不同的比特值。例如,周期为T1的正弦波用来传输比特1,周期为T0的正弦波用来传输比特0。智能密钥设备将正弦波处理为方波,方波在没有进行数据解码操作之前,所述方波携带有待解码数据,并将所有携带有待解码数据的方波拼接为第一方波,也就是将所有没有完成解码的方波拼接为第一方波。
B、判断所述第一方波是否包含预设个数的连续且周期相同的波形。
其中,智能密钥设备与外部终端进行数据交互时,采用的数据结构可以至少包括:同步头、待传输数据和同步尾。同步头可以是预设个数的连续的比特值,通过方波表示为预设个数的连续且周期相同的波形。例如,同步头可以为连续的8个比特1,周期T1表示比特1,则在方波中表示为8个连续且周期均为T1的波形。同步尾也可以是预设个数的连续的比特值,通过方波表示为预设个数的连续且周期相同的波形。但表示同步头的比特数据和表示同步尾的比特数据不相同,在方波中则表示为不同周期的波形。例如,同步尾为连续的6个比特0,周期T0表示比特0,则在方波中表示为6个连续且周期均为T0的波形。智能密钥设备与外部终端进行数据交互之前,通过会话握手协商,可以获得数据在传输时采用的具体格式。例如,智能密钥设备可以获得数据在传输时采用的具体格式为:同步头数据为连续的8个比特1,待传输数据和同步尾数据为连续的6个比特0。当智能密钥设备判断出方波中包含8个连续且周期均为T1的波形时,即可以确定该方波中携带有同步头数据。
经过本步骤B的判断,如果所述第一方波包含预设个数的连续且周期相同的波形,则确定所述第一方波携带有同步头数据,执行步骤E;和/或,
如果所述第一方波没有包含预设个数的连续且周期相同的波形,则确定所述第一方波没有携带有同步头数据,则在所述第一方波中基于预设阈值判断是否包含毛刺波形;
如果所述第一方波中没有包含毛刺波形,则返回步骤A;和/或,如果所述第一方波中包含毛刺波形,执行步骤C。
需要说明的是,上述第一个“和/或,”可以包括以下三种可选的实现方案,实际应用时,可以根据需求的不同进行选择。
第一种方案为:如果所述第一方波包含预设个数的连续且周期相同的波形,则确定所述第一方波携带有同步头数据,执行步骤E;和,如果所述第一方波没有包含预设个数的连续且周期相同的波形,则确定所述第一方波没有携带有同步头数据,则在所述第一方波中基于预设阈值判断是否包含毛刺波形。在这种情况下,将具体根据本步骤B的判断结果来确定选择哪一个分支执行。
第二种方案为:如果所述第一方波包含预设个数的连续且周期相同的波形,则确定所述第一方波携带有同步头数据,执行步骤E。也就是说,该方案仅选择执行当本步骤B的判断结果为包含预设个数的连续且周期相同的波形时涉及到的后续操作。而对于当判断结果为没有包含预设个数的连续且周期相同的波形时涉及到的后续操作可以取消不执行,或者暂停执行等等,在此不作限制。
第三种方案为:如果所述第一方波没有包含预设个数的连续且周期相同的波形,则确定所述第一方波没有携带有同步头数据,则在所述第一方波中基于预设阈值判断是否包含毛刺波形。也就是说,该方案仅选择执行当本步骤B的判断结果为包含预设个数的连续且周期相同的波形时涉及到的后续操作。而对于当判断结果为包含预设个数的连续且周期相同的波形时涉及到的后续操作可以取消不执行,或者暂停执行等等,在此不作限制。
同理,上述第二个“和/或,”可以包括以下三种可选的实现方案,实际应用时,可以根据需求的不同进行选择。
第一种方案为:如果所述第一方波中没有包含毛刺波形,则返回步骤A;和,如果所述第一方波中包含毛刺波形,执行步骤C。在这种情况下,将具体根据在所述第一方波中基于预设阈值判断是否包含毛刺波形的判断结果来确定选择哪一个分支执行涉及到的后续操作。
第二种方案为:如果所述第一方波中没有包含毛刺波形,则返回步骤A。也就是说, 该方案仅选择执行基于预设阈值判断出没有包含毛刺波形时涉及到的后续操作。而对于当判断结果为包含毛刺波形时涉及到的后续操作可以取消不执行,或者暂停执行等等,在此不作限制。
第三种方案为:如果所述第一方波中包含毛刺波形,执行步骤C。也就是说,该方案仅选择执行基于预设阈值判断出包含毛刺波形时涉及到的后续操作。而对于当判断结果为没有包含毛刺波形时涉及到的后续操作可以取消不执行,或者暂停执行等等,在此不作限制。
本实施例中,如果确定第一方波没有携带有同步头数据时,为了避免由于第一方波中存在毛刺波形造成的误判,因而需要对第一方波进行毛刺波形检测。如果检测出的毛刺波形,则进行毛刺波形去除处理,并对毛刺波形去除处理后得到的方波继续进行同步头数据的查找(亦即执行步骤C-D),如果没有检测出的毛刺波形,则说明还没有查找到同步头数据,则需要接收下一组方波,并将下一组方波和之前的方波拼接起后进行同步头数据的查找(亦即返回步骤A)。
本实施例中,基于预设阈值判断是否包含毛刺波形的实现方式为:判断是否包含波形宽度小于所述预设阈值的波形,如果包含波形宽度小于所述预设阈值的波形,则判断结果为包含毛刺波形;如果没有包含波形宽度小于所述预设阈值的波形,则判断结果为不包含毛刺波形。
该预设阈值可以根据实际应用的不同需求进行具体设定。
本实施例中,由于智能密钥设备在对方波进行解码时,是根据波形的周期将波形解码为对应的比特值。例如,将周期为T1的波形解码为比特1,将周期为T0的波形解码为比特0。而,毛刺波形也会占用一定的宽度,如果不对毛刺波形进行去除处理,则智能密钥设备在对方波进行解码时,会将毛刺波形所占的宽度计算在一个周期中,而毛刺波形的波形宽度通常会比正常波形的波形宽度小,因而,会导致数据解码错误或者失败。如附图2所示,例如,以一个周期的波形为例说明,在一个正常波形的周期T1中出现了一个毛刺波形,该毛刺波形的宽度为Tm,如果不对毛刺波形进行去除处理,则智能密钥设备在解码时将会检测到两个波形,分别是周期T3的波形和周期T4的波形,此时对周期T3的波形和周期T4的波形进行解码将会导致数据解码错误或者失败。
C、对所述第一方波进行毛刺波形去除处理,得到第二方波。
其中,进行毛刺波形去除处理的实现方式可以为:如果所述毛刺波形的电平为高电平,则将所述毛刺波形的电平反转为低电平;如果所述毛刺波形的电平为低电平,则将所述毛刺波形的电平反转为高电平。
本实施例中,经过毛刺波形处理后,原来毛刺波形的波形宽度将会合并到该毛刺波形相邻的波形周期中,也就是对毛刺波形进行了去除,智能密钥设备对去除毛刺波形之后的方波进行解码时,可以检测到正常波形的周期,避免因检测到毛刺波形占用的宽度而导致无法正常检测出同步头数据的情况。
D、判断所述第二方波是否包含预设个数的连续且周期相同的波形。
如果所述第二方波包含预设个数的连续且周期相同的波形,则确定所述第二方波携带有同步头数据,执行步骤E;和/或,
如果所述第二方波没有包含预设个数的连续且周期相同的波形,则确定所述第二方波没有携带有同步头数据,返回步骤A;
需要说明的是,上述“和/或,”可以包括以下三种可选的实现方案,实际应用时,可以根据需求的不同进行选择。
第一种方案为:如果所述第二方波包含预设个数的连续且周期相同的波形,则确定所述第二方波携带有同步头数据,执行步骤E;和,如果所述第二方波没有包含预设个数的连续且周期相同的波形,则确定所述第二方波没有携带有同步头数据,返回步骤A。在这种情况下,将具体根据本步骤的判断结果来确定选择哪一个分支执行。
第二种方案为:如果所述第二方波包含预设个数的连续且周期相同的波形,则确定所述第二方波携带有同步头数据,执行步骤E。也就是说,该方案仅选择执行当本步骤的判断结果为包含预设个数的连续且周期相同的波形时涉及到的后续操作。而对于当判断结果为没有包含预设个数的连续且周期相同的波形时可以取消不执行,或者暂停执行等等,在此不作限制。
第三种方案为:如果所述第二方波没有包含预设个数的连续且周期相同的波形,则确定所述第二方波没有携带有同步头数据,返回步骤A。也就是说,该方案仅选择执行当本步骤的判断结果为没有包含预设个数的连续且周期相同的波形时涉及到的后续操作。而对于当判断结果为包含预设个数的连续且周期相同的波形时可以取消不执行,或者暂停执行等等,在此不作限制。
本实施例中,如果所述第二方波包含预设个数的连续且周期相同的波形,则确定所述第二方波携带有同步头数据,执行步骤E。在这种情况下,说明第一方波中携带有同步头数据,但由于第一方波中存在毛刺波形,因而造成无法准确检测出同步头数据。通过步骤C对第一方波进行毛刺波形去除处理,得到第二波形之后,在第二波形中即可成功检测出同步头数据。可见,通过毛刺波形检测和去除处理,可以提高智能密钥设备对波形检测的准确性和成功率。
如果所述第二方波没有包含预设个数的连续且周期相同的波形,则确定所述第二方波没有携带有同步头数据,返回步骤A。在这种情况下,说明第一方波中没有携带同步头数据,并且也排除了因第一方波存在毛刺导致无法检测出同步头数据的情况。
E、根据所述同步头数据计算得到自适应阈值。
如果前次步骤为B,则执行步骤F1。在这种情况下,说明步骤B中在第一方波中检测出了同步头数据,因而,可以直接根据同步头数据计算自适应阈值,并执行步骤F1在所述第一方波中基于所述自适应阈值判断是否包含毛刺波形。
如果前次步骤为D,则执行步骤F1或F2。在这种情况下,说明步骤B中在第一方波中没有检测出同步头数据,通过步骤C-D对第一方波进行去毛刺处理后,得到第二方波,在第二方波中检测出同步头数据。因而,根据同步头数据计算自适应阈值后,可以选择执行步骤F1对第一方波基于所述自适应阈值判断是否包含毛刺波形(图5中未示出,可以根据实际应用需求选择执行F1),或者还可以选择执行步骤F2进一步地在所述第二方波中基于所述自适应阈值判断是否包含毛刺波形(图5中示出)。
本实施例中,根据P=i×Q计算得到自适应阈值;其中,P为所述自适应阈值,Q为表示所述同步头数据的波形的宽度,i为预设百分比值。例如,i的取值可以根据实际应用的不同需求进行具体设定,例如可以是5%。以表示同步头数据的波形的宽度为30为例,则自适应阈值为30*5%=1.5。
本实施例中,采用自适应阈值来判断是否存在毛刺波形,会进一步提高毛刺波形检测的准确率。
F1、在所述第一方波中基于所述自适应阈值判断是否包含毛刺波形,执行步骤G1。
F2、在所述第二方波中基于所述自适应阈值判断是否包含毛刺波形,执行步骤G2。
其中,基于自适应阈值判断是否包含毛刺波形时,可以判断是否包含波形宽度小于所述自适应阈值的波形,如果包含波形宽度小于所述自适应阈值的波形,则判断结果为包含毛刺波形;如果没有包含波形宽度小于所述自适应阈值的波形,则判断结果为不包含毛刺波形。
G1、如果所述第一方波包含毛刺波形,对所述第一方波进行毛刺波形去除处理,得到第三方波,对所述第三方波进行解码,得到解码数据;和/或,如果所述第一方波没有包含毛刺波形,对所述第一方波进行解码,得到解码数据。
需要说明的是,上述G1中的“和/或”可以包括以下三种可选的实现方案,实际应用时,可以根据需求的不同进行选择。
第一种方案为:如果所述第一方波包含毛刺波形,对所述第一方波进行毛刺波形去除 处理,得到第三方波,对所述第三方波进行解码,得到解码数据;和,如果所述第一方波没有包含毛刺波形,对所述第一方波进行解码,得到解码数据。在这种情况下,将具体根据步骤F1中在所述第一方波中基于所述自适应阈值判断是否包含毛刺波形的判断结果来确定选择哪一个分支执行。
第二种实现方案为:如果所述第一方波包含毛刺波形,对所述第一方波进行毛刺波形去除处理,得到第三方波,对所述第三方波进行解码,得到解码数据。也就是说,该方案仅选择执行当本步骤F1的判断结果为包含毛刺波形时涉及到的后续操作。而对于当判断结果为没有包含毛刺波形时涉及到的后续操作可以取消不执行,或者暂停执行等等,在此不作限制。
第三种实现方案为:如果所述第一方波没有包含毛刺波形,对所述第一方波进行解码,得到解码数据。也就是说,该方案仅选择执行当本步骤F1的判断结果为没有包含毛刺波形时涉及到的后续操作。而对于当判断结果为包含毛刺波形时涉及到的后续操作可以取消不执行,或者暂停执行等等,在此不作限制。
G2、如果所述第二方波包含毛刺波形,对所述第二方波进行毛刺波形去除处理,得到第四方波,对所述第四方波进行解码,得到解码数据;和/或,如果所述第二方波没有包含毛刺波形,对所述第二方波进行解码,得到解码数据。
本实施例中,以周期为T1的方波表示比特1,周期为T0的方波表示比特0为例,智能密钥设备在对方波进行解码得到数据解码时,如果检测到方波中周期为T1的方波时,解码为比特1,检测到方波中周期为T0的方波时,解码为比特0。
需要说明的是,上述步骤G2中的“和/或,”可以包括以下三种可选的实现方案,实际应用时,可以根据需求的不同进行选择。
第一种方案为:如果所述第二方波包含毛刺波形,对所述第二方波进行毛刺波形去除处理,得到第四方波,对所述第四方波进行解码,得到解码数据;和,如果所述第二方波没有包含毛刺波形,对所述第二方波进行解码,得到解码数据。在这种情况下,将具体根据步骤F2中在所述第二方波中基于所述自适应阈值判断是否包含毛刺波形的判断结果来确定选择哪一个分支执行。
第二种方案为:如果所述第二方波包含毛刺波形,对所述第二方波进行毛刺波形去除处理,得到第四方波,对所述第四方波进行解码,得到解码数据;也就是说,该方案仅选择执行当本步骤F2的判断结果为包含毛刺波形时涉及到的后续操作。而对于当判断结果为没有包含毛刺波形时涉及到的后续操作可以取消不执行,或者暂停执行等等,在此不作限制。
第三种方案为:如果所述第二方波没有包含毛刺波形,对所述第二方波进行解码,得到解码数据。也就是说,该方案仅选择执行当本步骤F2的判断结果为没有包含毛刺波形时涉及到的后续操作。而对于当判断结果为包含毛刺波形时涉及到的后续操作可以取消不执行,或者暂停执行等等,在此不作限制。
本发明实施例中,智能密钥设备进行数据解码前,在方波(例如上述第一方波或者上述第二方波)中基于自适应阈值对方波进行毛刺波形检测,并在检测出方波含有毛刺波形时,对所述方波进行毛刺波形去除处理,并对进行毛刺波形去除处理后的方法进行解码,可以降低毛刺波形对数据解码造成的解码误差,进一步提高数据解码的准确性和成功率。
进一步地,所述的方法,如图5所示,在对完成数据解码之后,还可以包括以下步骤H-J。
H、判断所有的解码数据中是否包括同步尾数据。
如果所有的解码数据中包括同步尾数据,则处理所述所有的解码数据;其中处理所述所有的解码数据可以根据实际应用需求进行,例如根据解码数据进行交易数据的验证、显示、签名等等。
如果所有的解码数据中没有包括同步尾数据,则执行步骤I。
I、继续获取下一组待处理的方波。
J、在所述下一组待处理的方波中基于所述自适应阈值判断是否包含毛刺波形。
如果所述下一组待处理的方波中包含毛刺波形,则对所述下一组待处理的方波进行毛刺波形去除处理,并对进行毛刺波形去除处理后得到的方波进行解码,得到解码数据,执行步骤H。
如果所述下一组待处理的方波中没有包含毛刺波形,则对所述下一组待处理的方波进行解码,得到解码数据,执行步骤H。
本实施例中,通过将音频接口接收到的正弦波处理为方波,并基于预设阈值或者自适应阈值对方波中的毛刺波形进行检测,在检测到存在毛刺波形时,该毛刺波形即为失真波形,对方波进行毛刺波形去除处理,并对进行毛刺波形去除处理后得到的方波进行数据解码。也就是,当方波中存在毛刺波形时,对毛刺波形进行去除,以消除波形失真带来的误差,并对进行毛刺波形去除处理后得到的方波进行数据解码,从而可以降低波形失真造成的智能密钥设备进行数据解码的错误率,提高智能密钥设备对数据解码的准确性和成功率。
需要说明的是,实施例3提供的数据解码方法的实现流程是先对方波进行数据解码,之后再判断是否查找到同步尾数据。当然,本实施例提供的数据解码方法的实现流程还可以是先对方波查找同步尾数据,待查找到同步尾数据后再进行数据解码,具体参见下方实施例4。
实施例4
本实施提供一种数据解码方法,如图6所示,该方法可以由支持音频接口的智能密钥设备执行,该方法包括以下步骤S1至S9-2。
S1、通过音频接口接收正弦波,将所述正弦波处理为携带有待解码数据的方波,将所有携带有待解码数据的方波拼接为第一方波,其中,所述正弦波包括至少一个周期的波形,不同周期的波形表示不同的比特值。
S2、判断所述第一方波是否包含预设个数的连续且周期相同的波形。
如果所述第一方波包含预设个数的连续且周期相同的波形,则确定所述第一方波携带有同步头数据,执行步骤S5;和/或,
如果所述第一方波没有包含预设个数的连续且周期相同的波形,则确定所述第一方波没有携带有同步头数据,则在所述第一方波中基于预设阈值判断是否包含毛刺波形。
其中,基于预设阈值判断是否包含毛刺波形的实现方式为:判断是否包含波形宽度小于所述预设阈值的波形,如果包含波形宽度小于所述预设阈值的波形,则判断结果为包含毛刺波形;如果没有包含波形宽度小于所述预设阈值的波形,则判断结果为不包含毛刺波形。
如果所述第一方波中没有包含毛刺波形,则返回步骤S1;和/或,如果所述第一方波中包含毛刺波形,执行步骤S3。
需要说明的是,上述第一个“和/或,”可以包括以下三种可选的实现方案,实际应用时,可以根据需求的不同进行选择。
第一种方案为:如果所述第一方波包含预设个数的连续且周期相同的波形,则确定所述第一方波携带有同步头数据,执行步骤S5;和,如果所述第一方波没有包含预设个数的连续且周期相同的波形,则确定所述第一方波没有携带有同步头数据,则在所述第一方波中基于预设阈值判断是否包含毛刺波形。此时,将具体根据本步骤S2的判断结果来确定选择哪一个分支执行。
第二种方案为:如果所述第一方波包含预设个数的连续且周期相同的波形,则确定所述第一方波携带有同步头数据,执行步骤S5。也就是说,该方案仅选择执行当本步骤S2的判断结果为包含预设个数的连续且周期相同的波形时涉及到的后续操作。而对于当判断 结果为没有包含预设个数的连续且周期相同的波形时涉及到的后续操作可以取消不执行,或者暂停执行等等,在此不作限制。
第三种方案为:如果所述第一方波没有包含预设个数的连续且周期相同的波形,则确定所述第一方波没有携带有同步头数据,则在所述第一方波中基于预设阈值判断是否包含毛刺波形。也就是说,该方案仅选择执行当本步骤S2的判断结果为没有包含预设个数的连续且周期相同的波形时涉及到的后续操作。而对于当判断结果为包含预设个数的连续且周期相同的波形时涉及到的后续操作可以取消不执行,或者暂停执行等等,在此不作限制。
同理,上述第二个“和/或,”可以包括以下三种可选的实现方案,实际应用时,可以根据需求的不同进行选择。
第一种方案为:如果所述第一方波中没有包含毛刺波形,则返回步骤S1;和,如果所述第一方波中包含毛刺波形,执行步骤S3。此时,将具体根据在所述第一方波中基于预设阈值判断是否包含毛刺波形的判断结果来确定选择哪一个分支执行涉及到的后续操作。
第二种方案为:如果所述第一方波中没有包含毛刺波形,则返回步骤S1。也就是说,该方案仅选择执行基于预设阈值判断出没有包含毛刺波形时涉及到的后续操作。而对于当判断结果为包含毛刺波形时涉及到的后续操作可以取消不执行,或者暂停执行等等,在此不作限制。
第三种方案为:如果所述第一方波中包含毛刺波形,执行步骤S3。也就是说,该方案仅选择执行基于预设阈值判断出包含毛刺波形时涉及到的后续操作。而对于当判断结果为没有包含毛刺波形时涉及到的后续操作可以取消不执行,或者暂停执行等等,在此不作限制。
S3、对所述第一方波进行毛刺波形去除处理,得到第二方波。
其中,进行毛刺波形去除处理的实现方式可以为:如果所述毛刺波形的电平为高电平,则将所述毛刺波形的电平反转为低电平;如果所述毛刺波形的电平为低电平,则将所述毛刺波形的电平反转为高电平。
S4、判断所述第二方波是否包含预设个数的连续且周期相同的波形。
如果所述第二方波包含预设个数的连续且周期相同的波形,则确定所述第二方波携带有同步头数据,执行步骤S5;和/或,
如果所述第二方波没有包含预设个数的连续且周期相同的波形,则确定所述第二方波没有携带有同步头数据,返回步骤S1;
需要说明的是,上述“和/或,”可以包括以下三种可选的实现方案,实际应用时,可以根据需求的不同进行选择。
第一种方案为:如果所述第二方波包含预设个数的连续且周期相同的波形,则确定所述第二方波携带有同步头数据,执行步骤S5;和,如果所述第二方波没有包含预设个数的连续且周期相同的波形,则确定所述第二方波没有携带有同步头数据,返回步骤S1。此时,将具体根据本步骤的判断结果来确定选择哪一个分支执行。
第二种方案为:如果所述第二方波包含预设个数的连续且周期相同的波形,则确定所述第二方波携带有同步头数据,执行步骤S5。也就是说,该方案仅选择执行当本步骤的判断结果为包含预设个数的连续且周期相同的波形时涉及到的后续操作。而对于当判断结果为没有包含预设个数的连续且周期相同的波形时可以取消不执行,或者暂停执行等等,在此不作限制。
第三种方案为:如果所述第二方波没有包含预设个数的连续且周期相同的波形,则确定所述第二方波没有携带有同步头数据,返回步骤S1。也就是说,该方案仅选择执行当本步骤的判断结果为没有包含预设个数的连续且周期相同的波形时涉及到的后续操作。而对于当判断结果为包含预设个数的连续且周期相同的波形时可以取消不执行,或者暂停执行等等,在此不作限制。
S5、根据所述同步头数据计算得到自适应阈值。
其中,根据所述同步头数据计算得到自适应阈值包括:根据P=i×Q计算得到自适应阈值;其中,P为所述自适应阈值,Q为表示所述同步头数据的波形的宽度,i为预设百分比值。
如果前次步骤为S2,则执行步骤S6-1,如果前次步骤为S4,则执行步骤S6-1或S6-2。
S6-1、在所述第一方波中基于所述自适应阈值判断是否包含毛刺波形,执行步骤S7-1。
S6-2、在所述第二方波中基于所述自适应阈值判断是否包含毛刺波形,执行步骤S7-2。
其中,基于自适应阈值判断是否包含毛刺波形时,可以判断是否包含波形宽度小于所述自适应阈值的波形,如果包含波形宽度小于所述自适应阈值的波形,则判断结果为包含毛刺波形;如果没有包含波形宽度小于所述自适应阈值的波形,则判断结果为不包含毛刺波形。
S7-1、如果所述第一方波包含毛刺波形,对所述第一方波进行毛刺波形去除处理,得到第三方波,保存所述第三方波,执行S8;和/或,如果所述第一方波没有包含毛刺波形,则保存所述第一方波,执行S8。
需要说明的是,上述S7-1中的“和/或”可以包括以下三种可选的实现方案,实际应用 时,可以根据需求的不同进行选择。
第一种方案为:如果所述第一方波包含毛刺波形,则对所述第一方波进行毛刺波形去除处理,得到第三方波,保存所述第三方波,执行S8;和,如果所述第一方波没有包含毛刺波形,则保存所述第一方波,执行S8。在这种情况下,将具体根据在所述第一方波中基于所述自适应阈值判断是否包含毛刺波形的判断结果来确定选择哪一个分支执行。
第二种方案为:如果所述第一方波包含毛刺波形,则对所述第一方波进行毛刺波形去除处理,得到第三方波,保存所述第三方波,执行S8;而对于当判断结果为没有包含毛刺波形时涉及到的后续操作可以取消不执行,或者暂停执行等等,在此不作限制。
第三种方案为:如果所述第一方波没有包含毛刺波形,则保存所述第一方波,执行S8;而对于当判断结果为包含毛刺波形时涉及到的后续操作可以取消不执行,或者暂停执行等等,在此不作限制。
S7-2、如果所述第二方波包含毛刺波形,对所述第二方波进行毛刺波形去除处理,得到第四方波,保存所述第四方波,执行S8;和/或,如果所述第二方波没有包含毛刺波形,保存所述第二方波,执行S8。
需要说明的是,上述步骤S7-2中的“和/或,”可以包括以下三种可选的实现方案,实际应用时,可以根据需求的不同进行选择。
第一种方案为:如果所述第二方波包含毛刺波形,则对所述第二方波进行毛刺波形去除处理,得到第四方波,保存所述第四方波,执行S8;和,如果所述第二方波没有包含毛刺波形,则保存所述第二方波,执行S8。在这种情况下,将具体根据在所述第二方波中基于所述自适应阈值判断是否包含毛刺波形的判断结果来确定选择哪一个分支执行。
第二种方案为:如果所述第二方波包含毛刺波形,则对所述第二方波进行毛刺波形去除处理,得到第四方波,保存所述第四方波,执行S8;而对于当判断结果为没有包含毛刺波形时涉及到的后续操作可以取消不执行,或者暂停执行等等,在此不作限制。
第三种方案为:如果所述第二方波没有包含毛刺波形,则保存所述第二方波,执行S8;而对于当判断结果为包含毛刺波形时涉及到的后续操作可以取消不执行,或者暂停执行等等,在此不作限制。
S8、判断保存的所有方波中是否包含同步尾数据。
S9-1、如果保存的所有方波中包含同步尾数据时,对保存的所有方波进行解码。
其中,所述的方法,在所述步骤S8之后,还包括步骤S9-2。在步骤S9-2中,如果保存的所有方波中没有包含同步尾数据时,继续获取下一组待处理的方波,在所述下一组待 处理的方波中基于所述自适应阈值判断是否包含毛刺波形。
如果所述下一组待处理的方波中包含毛刺波形,则对所述下一组待处理的方波进行毛刺波形去除处理,并保存进行毛刺波形去除处理后得到的波形,执行S8。
如果所述下一组待处理的方波中不包含毛刺波形,则保存所述下一组待处理的方波,执行S8。
本实施例中,通过将音频接口接收到的正弦波处理为方波,并基于预设阈值或者自适应阈值对方波中的毛刺波形进行检测,在检测到存在毛刺波形时,该毛刺波形即为失真波形,对方波进行毛刺波形去除处理,并对进行毛刺波形去除处理后得到的方波进行数据解码。也就是,当方波中存在毛刺波形时,对毛刺波形进行去除,以消除波形失真带来的误差,并对进行毛刺波形去除处理后得到的方波进行数据解码,从而可以降低波形失真造成的智能密钥设备进行数据解码的错误率,提高智能密钥设备对数据解码的准确性和成功率。
实施例3和实施例4的区别在于:实施例3在实现流程上是先进行数据解码后判断同步尾数据,实施例4在实现流程上是先判断同步尾数据后进行数据解码。
需要说明的是,实施例3和实施例4中在实现检测同步头数据、根据同步头数据计算自适应阈值、基于预设阈值或者自适应阈值判断是否包含毛刺波形、对毛刺波形进行毛刺波形去除处理、检测同步尾数据等等各步骤的具体实现相同,实施例4中没有对上述各步骤进行进一步限定解释,可以参见实施例3相应步骤的限定解释,在此不再赘述。
本实施例3和实施例4中可以应用于支持音频接口的智能密钥设备,该智能密钥设备可以包括:音码KEY,USBKEY、电子签名工具、集成USBKEY和电子令牌的智能密钥设备等等。
另外,本实施例中支持音频接口的智能密钥设备,除了可以支持音频接口外,还可以支持USB、蓝牙、红外、wifi等其他通信接口。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或 固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在不脱离本发明的原理和宗旨的情况下在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。本发明的范围由所附权利要求及其等同限定。

Claims (10)

  1. 一种数据解码方法,其特征在于,包括:
    通过音频接口接收正弦波,其中,所述正弦波包括至少一个周期的波形,不同周期的波形表示不同的比特值;
    将所述正弦波处理为第一方波,其中,所述第一方波携带有待解码数据;
    在所述第一方波中基于预设阈值判断是否包含毛刺波形;或者,在所述第一方波中基于自适应阈值判断是否包含毛刺波形,其中,所述自适应阈值根据所述正弦波中携带的同步头数据计算得到;
    如果所述第一方波中包含毛刺波形,对所述第一方波进行毛刺波形去除处理,得到第二方波;
    对所述第二方波进行解码,得到解码数据。
  2. 根据权利要求1所述的方法,其特征在于,还包括:
    如果所述第一方波中不包含毛刺波形,对所述第一方波进行解码,得到解码数据。
  3. 根据权利要求1所述的方法,其特征在于,所述自适应阈值具体根据P=i×Q计算得到;其中,P为所述自适应阈值,Q为表示所述同步头数据的波形的宽度,i为预设百分比值。
  4. 根据权利要求1-3任一项所述的方法,其特征在于,在所述第一方波中基于预设阈值判断是否包含毛刺波形为:
    在所述第一方波中判断是否包含波形宽度小于所述预设阈值的波形,
    如果在所述第一方波中包含波形宽度小于所述预设阈值的波形,则判断结果为包含毛刺波形;
    如果在所述第一方波中没有包含波形宽度小于所述预设阈值的波形,则判断结果为不包含毛刺波形。
  5. 根据权利要求1-3任一项所述的方法,其特征在于,在所述第一方波中基于自适应阈值判断是否包含毛刺波形为:
    在所述第一方波中判断是否包含波形宽度小于所述自适应阈值的波形,
    如果在所述第一方波中包含波形宽度小于所述自适应阈值的波形,则判断结果为包含毛刺波形;
    如果在所述第一方波中没有包含波形宽度小于所述自适应阈值的波形,则判断结果为不包含毛刺波形。
  6. 根据权利要求1-3任一项所述的方法,其特征在于,对所述第一方波进行毛刺 波形去除处理为:
    如果所述毛刺波形的电平为高电平,则将所述毛刺波形的电平反转为低电平;
    如果所述毛刺波形的电平为低电平,则将所述毛刺波形的电平反转为高电平。
  7. 一种数据解码装置,其特征在于,包括:
    发送模块,设置为通过音频接口接收正弦波,其中,所述正弦波包括至少一个周期的波形,不同周期的波形表示不同的比特值;
    波形处理模块,设置为将所述正弦波处理为第一方波,所述第一方波携带有待解码数据;
    判断模块,设置为在所述第一方波中基于预设阈值判断是否包含毛刺波形;或者,在所述第一方波中基于自适应阈值判断是否包含毛刺波形,其中,所述自适应阈值根据所述正弦波中携带的同步头数据计算得到;
    毛刺处理模块,设置为在所述第一方波中包含毛刺波形的情况下,对所述第一方波进行毛刺波形去除处理,得到第二方波;
    解码模块,设置为对所述第二方波进行解码,得到解码数据。
  8. 根据权利要求7所述的装置,其特征在于,
    所述判断模块,设置为在所述第一方波中基于预设阈值判断是否包含毛刺波形,如果在所述第一方波中包含波形宽度小于所述预设阈值的波形,则判断结果为包含毛刺波形;如果在所述第一方波中没有包含波形宽度小于所述预设阈值的波形,则判断结果为不包含毛刺波形。
  9. 根据权利要求7所述的装置,其特征在于,
    所述判断模块,设置为在所述第一方波中基于自适应阈值判断是否包含毛刺波形,如果在所述第一方波中包含波形宽度小于所述自适应阈值的波形,则判断结果为包含毛刺波形;如果在所述第一方波中没有包含波形宽度小于所述自适应阈值的波形,则判断结果为不包含毛刺波形;
    其中,所述自适应阈值具体根据P=i×Q计算得到;其中,P为所述自适应阈值,Q为表示所述同步头数据的波形的宽度,i为预设百分比值。
  10. 根据权利要求7-9任一项所述的装置,其特征在于,
    所述毛刺处理模块,设置为在所述毛刺波形的电平为高电平的情况下,将所述毛刺波形的电平反转为低电平;在所述毛刺波形的电平为低电平的情况下,将所述毛刺波形的电平反转为高电平。
PCT/CN2015/070736 2014-03-21 2015-01-15 一种数据解码方法及装置 WO2015139523A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
SG11201605741YA SG11201605741YA (en) 2014-03-21 2015-01-15 Data decoding method and apparatus
US15/127,731 US9953658B2 (en) 2014-03-21 2015-01-15 Data decoding method and apparatus

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN201410108461.0A CN103888108B (zh) 2014-03-21 2014-03-21 一种数据解码方法及装置
CN201410108273.8 2014-03-21
CN201410108273.8A CN103888107B (zh) 2014-03-21 2014-03-21 一种数据解码方法
CN201410108461.0 2014-03-21

Publications (1)

Publication Number Publication Date
WO2015139523A1 true WO2015139523A1 (zh) 2015-09-24

Family

ID=54143751

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2015/070736 WO2015139523A1 (zh) 2014-03-21 2015-01-15 一种数据解码方法及装置

Country Status (3)

Country Link
US (1) US9953658B2 (zh)
SG (1) SG11201605741YA (zh)
WO (1) WO2015139523A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11112963B2 (en) 2016-05-18 2021-09-07 Apple Inc. Devices, methods, and graphical user interfaces for messaging

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI733602B (zh) * 2020-10-13 2021-07-11 瑞昱半導體股份有限公司 訊號處理器以及訊號處理方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040264713A1 (en) * 2003-06-27 2004-12-30 Robert Grzesek Adaptive audio communication code
CN101247183A (zh) * 2007-02-15 2008-08-20 凌阳科技股份有限公司 基于超声波实现通讯的发送装置、接收装置、系统和方法
CN103248434A (zh) * 2012-02-14 2013-08-14 上海爱加科技有限公司 一种电子电器设备的通信方法
CN103888108A (zh) * 2014-03-21 2014-06-25 天地融科技股份有限公司 一种数据解码方法及装置
CN103888107A (zh) * 2014-03-21 2014-06-25 天地融科技股份有限公司 一种数据解码方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040264713A1 (en) * 2003-06-27 2004-12-30 Robert Grzesek Adaptive audio communication code
CN101247183A (zh) * 2007-02-15 2008-08-20 凌阳科技股份有限公司 基于超声波实现通讯的发送装置、接收装置、系统和方法
CN103248434A (zh) * 2012-02-14 2013-08-14 上海爱加科技有限公司 一种电子电器设备的通信方法
CN103888108A (zh) * 2014-03-21 2014-06-25 天地融科技股份有限公司 一种数据解码方法及装置
CN103888107A (zh) * 2014-03-21 2014-06-25 天地融科技股份有限公司 一种数据解码方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11112963B2 (en) 2016-05-18 2021-09-07 Apple Inc. Devices, methods, and graphical user interfaces for messaging

Also Published As

Publication number Publication date
SG11201605741YA (en) 2016-09-29
US20170140767A1 (en) 2017-05-18
US9953658B2 (en) 2018-04-24

Similar Documents

Publication Publication Date Title
KR20140063831A (ko) 데이터 송신 방법, 수신 방법 및 장치
US11188560B2 (en) Synchronizing object in local object storage node
US10410730B1 (en) Selectively synchronizing flash memory block refreshes based in part upon memory block temperature
US10402060B2 (en) System and method for gesture disambiguation
CN108513361B (zh) 信道接入方法、装置及存储介质
US9270417B2 (en) Devices and methods for facilitating data inversion to limit both instantaneous current and signal transitions
US20110167989A1 (en) Method and apparatus for detecting pitch period of input signal
WO2019165954A1 (zh) 一种数据位宽转换的方法及装置、计算机可读存储介质
WO2014134991A1 (zh) 一种音频通讯方法及采用该方法的终端
WO2015139523A1 (zh) 一种数据解码方法及装置
US9222964B2 (en) Cable detection in a pin constrained connector
CN103888107B (zh) 一种数据解码方法
WO2015120758A1 (zh) 一种数据通信方法、终端及信息安全设备
JPWO2017104437A1 (ja) 通信装置、通信方法、プログラム、および通信システム
WO2017185679A1 (zh) 提示数据线类型的方法、装置及终端设备
TWI706687B (zh) 支付方法及用戶端
CN103888108A (zh) 一种数据解码方法及装置
WO2017050232A1 (zh) 数据传输方法及系统
CN108605191A (zh) 异音检测方法和装置
WO2014000575A1 (zh) 音频通信调制方式自适应的方法、系统、装置、电子签名工具
US10897375B1 (en) Data transmission over wired networks
WO2014106429A1 (zh) 基于第三方phy的sata速度自协商方法及装置
US9612792B2 (en) Dynamic adjustment of audio production
WO2017177448A1 (zh) 一种通信方法、装置及电子设备
US20160062565A1 (en) Method of Removing External Devices for Computer System and Related Computer System

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 15764604

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 15127731

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15764604

Country of ref document: EP

Kind code of ref document: A1