CN110764703A - Method for reading and writing PCM data in real time based on array implementation - Google Patents

Method for reading and writing PCM data in real time based on array implementation Download PDF

Info

Publication number
CN110764703A
CN110764703A CN201910987627.3A CN201910987627A CN110764703A CN 110764703 A CN110764703 A CN 110764703A CN 201910987627 A CN201910987627 A CN 201910987627A CN 110764703 A CN110764703 A CN 110764703A
Authority
CN
China
Prior art keywords
data
length
reading
buffer area
pcm data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201910987627.3A
Other languages
Chinese (zh)
Inventor
李和涛
马敬锐
祝清雷
朱蕾
刘建梁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shandong Sheenrun Optics Electronics Co Ltd
Original Assignee
Shandong Sheenrun Optics Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shandong Sheenrun Optics Electronics Co Ltd filed Critical Shandong Sheenrun Optics Electronics Co Ltd
Priority to CN201910987627.3A priority Critical patent/CN110764703A/en
Publication of CN110764703A publication Critical patent/CN110764703A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices

Abstract

The invention discloses a method for reading and writing PCM data in real time based on an array, which is implemented based on an annular data structure, circularly writes PCM data returned by audio acquisition equipment to realize real-time storage of the PCM data, and provides an interface for extracting data in a buffer area for circularly reading the PCM data so as to acquire the PCM data in the buffer area in real time. Compared with a reading method realized based on a chain data structure, the method can reduce the time and space complexity required by the program in operation, reduce the program overhead and improve the efficiency, and can be applied to data buffer access of the light-weight real-time audio stream.

Description

Method for reading and writing PCM data in real time based on array implementation
Technical Field
The invention relates to a method for reading and writing PCM data in real time, which is realized by a group and is used for reading and writing data of lightweight real-time audio stream.
Background
PCM (pulse code modulation) is to convert a continuous analog signal into a discrete digital signal, and transmit the signal in a channel. Pulse code modulation is the process of sampling the analog signal, quantizing the amplitude of the sample and coding. Sampling and quantizing an analog signal to obtain a quantized pulse amplitude modulation signal which is only a limited number of values; coding, namely, a group of binary codes is used for representing each quantized value with a fixed level, and quantization is simultaneously completed in the coding process.
At present, data reading and writing of the light-weight real-time audio stream are based on a chain data structure, a large amount of computation is wasted in dequeuing operation of a common chain data structure, and the required time and space complexity is high.
Disclosure of Invention
The technical problem to be solved by the present invention is to provide a method for reading and writing PCM data in real time based on an array, which utilizes a pre-applied continuous memory space (annular data structure) to store PCM data returned by an acquisition device in real time, and provides an interface for reading data in a buffer area, so as to obtain PCM data in the buffer area in real time.
In order to solve the technical problem, the technical scheme adopted by the invention is as follows: a method for reading and writing PCM data in real time based on array implementation comprises the following steps: s01), according to the precision requirement of the acquisition equipment, applying a certain amount of continuous memory space as a PCM data buffer area in advance, expressing the logic structure of the continuous memory space as an annular structure, and then informing the acquisition equipment to carry out data acquisition and return PCM data; s02), writing data into the buffer area according to the byte length of the PCM data packet, judging the buffer residual space in the writing process, directly writing the data into the buffer area if the size of the residual space is larger than the length of the data packet, returning to be successful, and returning to be failed if the length of the residual space is smaller than the length of the data packet, and performing the step S03; s03), blocking the data receiving thread, after waiting for T1 time, carrying out the operation of the step S02 on the data packet again, if the return fails, discarding the current data packet, and ending the thread blocking, if the return succeeds, directly ending the thread blocking; s04), reading PCM data in real time in the buffer area, firstly calculating the size of the stored data in the buffer area, then comparing the size with a design threshold, when the size of the stored data in the buffer area is larger than the set threshold, reading the buffer area, returning success, when the size of the data in the buffer area is smaller than the set threshold, returning failure, and performing the step S05; s05), the PCM data reading thread enters the block, and after waiting for T2 time, the step S04 is carried out again until the PCM data can be normally acquired.
Further, the process of judging the remaining space of the buffer area is as follows: firstly, judging the length of stored data in a buffer area, setting the total length of the buffer area as TotalLen and a write pointer as WriteIndex; the read pointer is ReadIndex, the length of data stored in the current buffer area is AvailableLen, and then AvailableLen = (WriteIndex + TotalLen-ReadIndex)% TotalLen and% represents the remainder; the remaining space length of the buffer is the total buffer length minus the length of the data already stored in the buffer.
Further, for the ring data structure, the data cycle writing process is as follows: setting the total length of a buffer area as TotalLen, a write pointer as WriteIndex and the length of a PCM data packet to be stored as DataLen; the write threshold is WriteThreshold, the length of the stored data is AvailableLen, if the length of the remaining storage space is greater than the length of the PCM data packet, the sum of the length of the data buffer minus the stored data is greater than the write threshold, and the sum of the lengths of the buffer is greater than the length of the write pointer plus the PCM data packet, the PCM data packet is directly copied and stored into the data buffer, the write pointer is updated, WriteIndex = WriteIndex + DataLen, and success is returned; if the length of the remaining storage space is greater than the length of the PCM data packet, and the total length of the data buffer minus the stored data is greater than the read-write threshold, but the total length of the buffer is less than the length of the write pointer plus the PCM data packet, the PCM data packet cannot be directly copied and stored in the data buffer, and then the following processing is performed: firstly, obtaining the available space length Len from a write pointer to the end of a buffer, wherein Len = TotalLen-WriteIndex, then writing the data of the length Len corresponding to a PCM data packet into the buffer, then calculating the packet length CoverLen and CoverLen = DataLen-Len which need to be covered forward by the PCM data packet, and then writing the data of the remaining CoverLen length of the PCM data packet into the buffer from the beginning, at the moment, completing data storage, updating the write pointer, and returning success by WriteIndex = (WriteIndex + DataLen)% TotalLen.
Further, for the ring data structure, the data loop reading process is as follows: setting the total length of the buffer area as TotalLen, the reading pointer as ReadIndex, the length of the PCM data to be read as DataLen, and the reading and writing threshold as follows: ReadThreshold, the length of the stored data is AvailableLen; when the length of the stored PCM data is larger than a reading threshold value and the total length of the buffer area is larger than the length of a reading pointer and a PCM data packet, the data can be directly copied from the buffer area and taken out, the reading pointer is updated, ReadIndex = ReadIndex + DataLen, and success is returned; when the length of the stored PCM data packet is greater than the reading threshold, but the total length of the buffer area is less than the length of the reading pointer plus the PCM data packet, the read data can not be directly copied and stored from the data buffer area, and the following processing is performed at this moment: firstly, obtaining the available space length Len from a read pointer to the end of a buffer area, wherein Len = TotalLen-ReadIndex, then reading data of the buffer area corresponding to the Len length, then calculating the data packet length GetLen needing to be read from the front, GetLen = DataLen-Len, then filling and reading the data of the buffer area from the beginning with the GetLen length, at the moment, finishing data reading, updating the read pointer, and returning ReadIndex = (ReadIndex + DataLen)% TotalLen to be successful.
Furthermore, when the program exits or finishes data acquisition, the flag bit of the reading thread is set, so that the reading thread can exit smoothly.
Further, T1 and T2 are both 30 msec.
The invention has the beneficial effects that: the invention utilizes the annular data structure to read and write PCM data, when the annular data structure is read, all elements of the queue do not need to move forwards after the head element is dequeued, but the pointer of the head of the queue moves backwards, and due to the annular structure, the pointer of the tail of the queue can circulate to the original position of the head of the queue after the elements are inserted, thereby covering the original position data. Compared with dequeue operation of a common queue, the dequeue operation method reduces a large amount of operation, and simultaneously can reduce time and space complexity required by program operation, reduce program overhead and improve efficiency.
Drawings
FIG. 1 is a diagram illustrating an array actual data structure;
FIG. 2 is a logic structure diagram after the array is logically transformed;
FIG. 3 is a flow chart of a method according to an embodiment.
Detailed Description
The invention is further described with reference to the following figures and specific embodiments.
Example 1
The present embodiment discloses a method for reading PCM data in real time based on an array implementation, as shown in fig. 3, the method includes the following steps:
s01), according to the precision requirement of the acquisition equipment, applying a certain amount of continuous memory space as a PCM data buffer area in advance, expressing the logic structure of the continuous memory space as an annular structure, and then informing the acquisition equipment to carry out data acquisition and return PCM data;
s02), writing data into the buffer area according to the byte length of the PCM data packet, judging the buffer residual space in the writing process, directly writing the data into the buffer area if the size of the residual space is larger than the length of the data packet, returning to be successful, and returning to be failed if the length of the residual space is smaller than the length of the data packet, and performing the step S03;
s03), blocking the data receiving thread, after waiting for T1 time, carrying out the operation of the step S02 on the data packet again, if the return fails, discarding the current data packet, and ending the thread blocking (because of real-time correlation of PCM data acquisition, the data processing part loses real-time property when the data buffering is carried out, so the data processing part is directly discarded), and if the return succeeds, directly ending the thread blocking;
s04), reading PCM data in real time in the buffer area, firstly calculating the size of the stored data in the buffer area, then comparing the size with a design threshold, when the size of the stored data in the buffer area is larger than the set threshold, reading the buffer area, returning success, when the size of the data in the buffer area is smaller than the set threshold, returning failure, and performing the step S05;
s05), the PCM data reading thread enters the block, and after waiting for T2 time, the step S04 is carried out again until the PCM data can be normally obtained;
s06), when the program is to exit or finishes data acquisition, setting the flag bit of the reading thread, thereby smoothly exiting the reading thread.
In this embodiment, the physical structure of the pre-applied continuous memory space is a continuous linear memory space, which is not a ring, as shown in fig. 1. When reading and writing PCM data, the method expresses the logic structure of the PCM data into a ring-shaped structure by a known method, and the ring-shaped logic expression structure is shown in FIG. 2. In this embodiment, the real-time reading and writing of the PCM data are performed with respect to the ring data structure.
The process of judging the residual space of the buffer area comprises the following steps: firstly, judging the length of stored data in a buffer area, setting the total length of the buffer area as TotalLen and a write pointer as WriteIndex; the read pointer is ReadIndex, the length of data stored in the current buffer area is AvailableLen, and then AvailableLen = (WriteIndex + TotalLen-ReadIndex)% TotalLen and% represents the remainder; the remaining space length of the buffer is the total buffer length minus the length of the data already stored in the buffer.
In this embodiment, for the ring data structure, the process of data cycle writing is as follows:
as shown in fig. 2, let total length of buffer be TotalLen, write pointer be WriteIndex, length of PCM packet to be stored be DataLen; the writing threshold is WriteThreshold, and the length of the stored data is AvailableLen;
if the length of the remaining storage space is larger than the length of the PCM data packet, the total length of the data buffer minus the stored data is larger than a writing threshold value, namely TotalLen-AvailableLen > WriteThreshold, and the total length of the buffer is larger than a writing pointer plus the length of the PCM data packet, namely TotalLen-WriteIndex > DataLen, directly copying the PCM data packet into the data buffer, updating the writing pointer, and returning success, wherein WriteIndex = WriteIndex + DataLen;
if the length of the remaining storage space is greater than the length of the PCM data packet, and the total length of the data buffer minus the stored data is greater than the read-write threshold, that is, totalen-AvailableLen > WriteThreshold, but the total length of the buffer is less than the write pointer plus the length of the PCM data packet, that is, totalen-writelndex < DataLe, the PCM data packet cannot be directly copied and stored in the data buffer, then the following processing is performed:
firstly, obtaining the available space length Len from a write pointer to the end of a buffer, wherein Len = TotalLen-WriteIndex, then writing the data of the length Len corresponding to a PCM data packet into the buffer, then calculating the packet length CoverLen and CoverLen = DataLen-Len which need to be covered forward by the PCM data packet, and then writing the data of the remaining CoverLen length of the PCM data packet into the buffer from the beginning, at the moment, completing data storage, updating the write pointer, and returning success by WriteIndex = (WriteIndex + DataLen)% TotalLen.
For a ring data structure, the data loop reading process is as follows: as shown in fig. 2, let the total length of the buffer be totalen, the read pointer be ReadIndex, the length of the PCM data to be read be DataLen, and the read-write threshold be: ReadThreshold, the length of the stored data is AvailableLen;
when the length of the stored PCM data is greater than a reading threshold value, namely AvailableLen > ReadThreshold, and the total length of the buffer area is greater than the length of a reading pointer and a PCM data packet, namely TotalLen-ReadInde > DataLen, at the moment, data can be directly copied from the buffer area to be taken out, the reading pointer is updated, ReadIndex = ReadIndex + DataLen, and success is returned;
when the length of the stored PCM data packet is greater than the reading threshold, namely AvailableLen > ReadThreshold, but the total length of the buffer area is less than the length of the reading pointer plus the PCM data packet, namely TotalLen-ReadIndex < DataLen, the read data can not be directly copied and stored from the data buffer area, and the following processing is carried out at this time: firstly, obtaining the available space length Len from a read pointer to the end of a buffer area, wherein Len = TotalLen-ReadIndex, then reading data of the buffer area corresponding to the Len length, then calculating the data packet length GetLen needing to be read from the front, GetLen = DataLen-Len, then filling and reading the data of the buffer area from the beginning with the GetLen length, at the moment, finishing data reading, updating the read pointer, and returning ReadIndex = (ReadIndex + DataLen)% TotalLen to be successful.
In this embodiment, T1 and T2 are both 30 milliseconds. Other values may be set as appropriate.
The method described in this embodiment utilizes the characteristics of the ring data structure to store the PCM data returned by the audio acquisition device in real time, and provides an interface for extracting data in the buffer area, so as to obtain the PCM data in the buffer area in real time. Compared with a reading method realized based on a chain data structure, the method can reduce the time and space complexity required by the program in operation, reduce the program overhead and improve the efficiency.
The foregoing description is only for the basic principle and the preferred embodiments of the present invention, and modifications and substitutions by those skilled in the art are included in the scope of the present invention.

Claims (6)

1. A method for reading and writing PCM data in real time based on array implementation is characterized in that: the method comprises the following steps: s01), according to the precision requirement of the acquisition equipment, applying a certain amount of continuous memory space as a PCM data buffer area in advance, expressing the logic structure of the continuous memory space as an annular structure, and then informing the acquisition equipment to carry out data acquisition and return PCM data; s02), writing data into the buffer area according to the byte length of the PCM data packet, judging the buffer residual space in the writing process, directly writing the data into the buffer area if the size of the residual space is larger than the length of the data packet, returning to be successful, and returning to be failed if the length of the residual space is smaller than the length of the data packet, and performing the step S03; s03), blocking the data receiving thread, after waiting for T1 time, carrying out the operation of the step S02 on the data packet again, if the return fails, discarding the current data packet, and ending the thread blocking, if the return succeeds, directly ending the thread blocking; s04), reading PCM data in real time in the buffer area, firstly calculating the size of the stored data in the buffer area, then comparing the size with a design threshold, when the size of the stored data in the buffer area is larger than the set threshold, reading the buffer area, returning success, when the size of the data in the buffer area is smaller than the set threshold, returning failure, and performing the step S05; s05), the PCM data reading thread enters the block, and after waiting for T2 time, the step S04 is carried out again until the PCM data can be normally acquired.
2. The array-based implementation of the method for reading and writing PCM data in real time according to claim 1, wherein: the process of judging the residual space of the buffer area comprises the following steps: firstly, judging the length of stored data in a buffer area, setting the total length of the buffer area as TotalLen and a write pointer as WriteIndex; the read pointer is ReadIndex, the length of data stored in the current buffer area is AvailableLen, and then AvailableLen = (WriteIndex + TotalLen-ReadIndex)% TotalLen and% represents the remainder; the remaining space length of the buffer is the total buffer length minus the length of the data already stored in the buffer.
3. Method for reading and writing PCM data in real time based on an array implementation according to claim 1 or 2, characterized in that: for a ring data structure, the process of data cycle writing is as follows: setting the total length of a buffer area as TotalLen, a write pointer as WriteIndex and the length of a PCM data packet to be stored as DataLen; the write threshold is WriteThreshold, the length of the stored data is AvailableLen, if the length of the remaining storage space is greater than the length of the PCM data packet, the sum of the length of the data buffer minus the stored data is greater than the write threshold, and the sum of the lengths of the buffer is greater than the length of the write pointer plus the PCM data packet, the PCM data packet is directly copied and stored into the data buffer, the write pointer is updated, WriteIndex = WriteIndex + DataLen, and success is returned; if the length of the remaining storage space is greater than the length of the PCM data packet, and the total length of the data buffer minus the stored data is greater than the read-write threshold, but the total length of the buffer is less than the length of the write pointer plus the PCM data packet, the PCM data packet cannot be directly copied and stored in the data buffer, and then the following processing is performed: firstly, obtaining the available space length Len from a write pointer to the end of a buffer, wherein Len = TotalLen-WriteIndex, then writing the data of the length Len corresponding to a PCM data packet into the buffer, then calculating the packet length CoverLen and CoverLen = DataLen-Len which need to be covered forward by the PCM data packet, and then writing the data of the remaining CoverLen length of the PCM data packet into the buffer from the beginning, at the moment, completing data storage, updating the write pointer, and returning success by WriteIndex = (WriteIndex + DataLen)% TotalLen.
4. Method for reading and writing PCM data in real time based on an array implementation according to claim 1 or 2, characterized in that: for a ring data structure, the data loop reading process is as follows: setting the total length of the buffer area as TotalLen, the reading pointer as ReadIndex, the length of the PCM data to be read as DataLen, and the reading and writing threshold as follows: ReadThreshold, the length of the stored data is AvailableLen; when the length of the stored PCM data is larger than a reading threshold value and the total length of the buffer area is larger than the length of a reading pointer and a PCM data packet, the data can be directly copied from the buffer area and taken out, the reading pointer is updated, ReadIndex = ReadIndex + DataLen, and success is returned; when the length of the stored PCM data packet is greater than the reading threshold, but the total length of the buffer area is less than the length of the reading pointer plus the PCM data packet, the read data can not be directly copied and stored from the data buffer area, and the following processing is performed at this moment: firstly, obtaining the available space length Len from a read pointer to the end of a buffer area, wherein Len = TotalLen-ReadIndex, then reading data of the buffer area corresponding to the Len length, then calculating the data packet length GetLen needing to be read from the front, GetLen = DataLen-Len, then filling and reading the data of the buffer area from the beginning with the GetLen length, at the moment, finishing data reading, updating the read pointer, and returning ReadIndex = (ReadIndex + DataLen)% TotalLen to be successful.
5. The array-based implementation of the method for reading and writing PCM data in real time according to claim 1, wherein: and when the program needs to exit or finish data acquisition, setting the flag bit of the reading thread, so that the reading thread exits smoothly.
6. The array-based implementation of the method for reading and writing PCM data in real time according to claim 1, wherein: t1, T2 are both 30 milliseconds.
CN201910987627.3A 2019-10-17 2019-10-17 Method for reading and writing PCM data in real time based on array implementation Pending CN110764703A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910987627.3A CN110764703A (en) 2019-10-17 2019-10-17 Method for reading and writing PCM data in real time based on array implementation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910987627.3A CN110764703A (en) 2019-10-17 2019-10-17 Method for reading and writing PCM data in real time based on array implementation

Publications (1)

Publication Number Publication Date
CN110764703A true CN110764703A (en) 2020-02-07

Family

ID=69332112

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910987627.3A Pending CN110764703A (en) 2019-10-17 2019-10-17 Method for reading and writing PCM data in real time based on array implementation

Country Status (1)

Country Link
CN (1) CN110764703A (en)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102169420A (en) * 2011-04-18 2011-08-31 杭州海康威视系统技术有限公司 Method and device for circularly reading and writing in buffer zone
CN103037204A (en) * 2011-10-10 2013-04-10 深圳市蓝韵实业有限公司 Ultrasound image transmission method and ultrasound image transmission system
CN103365782A (en) * 2012-03-30 2013-10-23 上海申通地铁集团有限公司 Memory management method
CN103514261A (en) * 2013-08-13 2014-01-15 江苏华大天益电力科技有限公司 Data asynchronization storage and access mechanism applied to industrial control system
CN103744621A (en) * 2013-12-31 2014-04-23 深圳英飞拓科技股份有限公司 Circular read-write method and device for buffer
CN104461933A (en) * 2014-11-07 2015-03-25 珠海全志科技股份有限公司 Memory management method and device thereof
CN105159604A (en) * 2015-08-20 2015-12-16 浪潮(北京)电子信息产业有限公司 Disk data read-write method and system
CN105183665A (en) * 2015-09-08 2015-12-23 福州瑞芯微电子股份有限公司 Data-caching access method and data-caching controller
CN105260378A (en) * 2015-09-08 2016-01-20 上海上讯信息技术股份有限公司 Database audit method and device

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102169420A (en) * 2011-04-18 2011-08-31 杭州海康威视系统技术有限公司 Method and device for circularly reading and writing in buffer zone
CN103037204A (en) * 2011-10-10 2013-04-10 深圳市蓝韵实业有限公司 Ultrasound image transmission method and ultrasound image transmission system
CN103365782A (en) * 2012-03-30 2013-10-23 上海申通地铁集团有限公司 Memory management method
CN103514261A (en) * 2013-08-13 2014-01-15 江苏华大天益电力科技有限公司 Data asynchronization storage and access mechanism applied to industrial control system
CN103744621A (en) * 2013-12-31 2014-04-23 深圳英飞拓科技股份有限公司 Circular read-write method and device for buffer
CN104461933A (en) * 2014-11-07 2015-03-25 珠海全志科技股份有限公司 Memory management method and device thereof
CN105159604A (en) * 2015-08-20 2015-12-16 浪潮(北京)电子信息产业有限公司 Disk data read-write method and system
CN105183665A (en) * 2015-09-08 2015-12-23 福州瑞芯微电子股份有限公司 Data-caching access method and data-caching controller
CN105260378A (en) * 2015-09-08 2016-01-20 上海上讯信息技术股份有限公司 Database audit method and device

Similar Documents

Publication Publication Date Title
US10587286B1 (en) Methods and devices for handling equiprobable symbols in entropy coding
CN106570018B (en) Serialization and deserialization method, device and system and electronic equipment
EP0218073A2 (en) Voice buffer management
US6725225B1 (en) Data management apparatus and method for efficiently generating a blocked transposed file and converting that file using a stored compression method
KR102295161B1 (en) Low Power Automatic Speech Recognition Device
CN111209228B (en) Method for accelerating storage of multi-path on-board load file
US6348881B1 (en) Efficient hardware implementation of a compression algorithm
US20210182722A1 (en) Method and system for generating quantum bit control signal
US20060018556A1 (en) Method, apparatus and system for data block rearrangement for LZ data compression
CN110764703A (en) Method for reading and writing PCM data in real time based on array implementation
US8515976B2 (en) Bit string data sorting apparatus, sorting method, and program
CN112652299B (en) Quantification method and device of time series speech recognition deep learning model
CN113408704A (en) Data processing method, device, equipment and computer readable storage medium
EP3133493B1 (en) Tracing of exception handling events
US7058576B2 (en) Method of calculating HMM output probability and speech recognition apparatus
US8555026B2 (en) Methods and systems for storing variable width stack elements in a single memory stack
CN114935676B (en) Digital circuit and method for preprocessing trigger data based on FPGA
EP0945795A1 (en) Computer system having a multi-pointer branch instruction and method
CN108269596B (en) Method and system for acquiring audio data
US20070244889A1 (en) Byte string searching apparatus and searching method
Chang et al. Systolic array architecture for the sequential stack decoding algorithm
CN115801019B (en) Parallel acceleration LZ77 decoding method and device and electronic equipment
CN111651445B (en) RFID data cleaning method based on lightweight event detection
CN112202846B (en) Method and system for uploading file based on complex network architecture
US20240127819A1 (en) Hardware efficient automatic speech recognition

Legal Events

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