Audio recognition peripheral system
First Claim
1. An audio recognition peripheral system comprising:
- a first integrated circuit having a programmable processing unit, the programmable processing unit loading an audio recognition algorithm; and
a second integrated circuit having a feature extractor and a vector processor coupled to the first integrated circuit, the feature extractor comprising a feature extractor filter unit coupled to receive an audio signal, a filter controller, and a block generator, the second integrated circuit extracting audio recognition features from the audio signal to produce feature extraction data;
wherein the programmable processing unit receives the feature extraction data and executes the audio recognition algorithm on the feature extraction data and the vector processor performs a specified operation on a plurality of vectors during execution of the audio recognition algorithm.
1 Assignment
0 Petitions
Accused Products
Abstract
The present invention includes a novel audio recognition peripheral system and method. The audio recognition peripheral system comprises an audio recognition peripheral a programmable processor such as a microprocessor or microcontroller. In one embodiment, the audio recognition peripheral includes a feature extractor and vector processor. The feature extractor receives an audio signal and extracts recognition features. The extracted audio recognition features are transmitted to the programmable processor and processed in accordance with an audio recognition algorithm. During execution of the audio recognition algorithm, the programmable processor signals the audio recognition peripheral to perform vector operations. Thus, computationally intensive recognition operations are advantageously offloaded to the peripheral.
303 Citations
56 Claims
-
1. An audio recognition peripheral system comprising:
-
a first integrated circuit having a programmable processing unit, the programmable processing unit loading an audio recognition algorithm; and
a second integrated circuit having a feature extractor and a vector processor coupled to the first integrated circuit, the feature extractor comprising a feature extractor filter unit coupled to receive an audio signal, a filter controller, and a block generator, the second integrated circuit extracting audio recognition features from the audio signal to produce feature extraction data;
wherein the programmable processing unit receives the feature extraction data and executes the audio recognition algorithm on the feature extraction data and the vector processor performs a specified operation on a plurality of vectors during execution of the audio recognition algorithm. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. An audio recognition peripheral system comprising:
-
on first integrated circuit, processor means for loading an audio recognition algorithm;
on a second integrated circuit, feature extraction means for receiving an audio input signal and extracting audio recognition features from the audio input signal to produce feature extraction data, the feature extraction means comprising a feature extractor filter unit coupled to receive the audio signal, a filter controller, and a block generator, and vector processor means for performing a vector operation during execution of the audio recognition algorithm;
wherein the processing means receives the feature extraction data and executes the audio recognition algorithm on the feature extraction data. - View Dependent Claims (18, 19)
-
-
20. On a single integrated circuit, an audio recognition peripheral comprising:
-
a feature extractor having an audio input for receiving an audio signal, the feature extractor comprising a feature extractor filter unit coupled to receive the audio signal, a filter controller, and a block generator, the feature extractor extracting audio recognition features from the audio signal to produce feature extraction data;
a vector processor; and
an interface controller coupled to the feature extractor and the vector processor, the interface controller having an interface input for receiving external control signals and interface information;
wherein the control signals and interface information configure the vector processor to perform a vector operation on a plurality of vectors during execution of an audio recognition algorithm on an external processor. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36)
a filter unit for filtering the audio signal; and
a block generator for generating the feature extraction data.
-
-
27. The audio recognition peripheral of claim 26, wherein when the peripheral is in an extraction mode the filter unit receives an audio signal to generate feature extraction data, and when the peripheral is in a synthesis mode the filter unit receives an excitation signal to generate audio information.
-
28. The audio recognition peripheral of claim 27, further comprising a synthesizer for receiving digital audio information and producing an external analog audio output signal.
-
29. The audio recognition peripheral of claim 26, wherein the feature extraction data comprises power information and zero crossing information.
-
30. The audio recognition peripheral of claim 26, wherein the feature extractor further comprises:
-
a filter memory; and
wherein the filter controller is coupled to the filter memory, the filter unit, and the interface controller.
-
-
31. The audio recognition peripheral of claim 30, wherein the filter memory comprises a control memory coupled to the filter unit and an intermediate storage memory for storing temporary filter results.
-
32. The audio recognition peripheral of claim 20, wherein the interface controller further comprises decode logic for decoding the external control signals and interface information.
-
33. The audio recognition peripheral of claim 32, wherein the interface controller is coupled to an address bus and a data bus, wherein the address bus and control signals are decoded by the decode logic to interface data on the data bus with the feature extractor.
-
34. The audio recognition peripheral of claim 33, wherein the interface controller, in response to a first control signal, removes the audio recognition peripheral from the address bus and the data bus.
-
35. The audio recognition peripheral of claim 20, further comprising a memory coupled to the vector processor.
-
36. The audio recognition peripheral of claim 35, wherein the vector operation includes, during execution of an audio recognition algorithm, programming the memory with a first vector representation of an audio signal, and the vector processor calculating the vector distance between the first vector and a second vector.
-
37. On a single integrated circuit, an audio recognition peripheral comprising:
-
feature extractor means for extracting audio information from an audio input signal to produce feature extraction data, the feature extractor means comprising a feature extractor filter unit coupled to receive the audio signal, a filter controller, and a block generator;
vector processor means for performing a vector operation; and
interface controller means for receiving external control signals and interface information, the interface controller means configuring the feature extractor means according to the control signals and interface information and configuring the vector processor to perform a vector operation on a plurality of vectors during execution of an audio recognition algorithm on an external processor. - View Dependent Claims (38, 39, 40, 41, 42)
-
-
43. An audio recognition method comprising:
-
loading an audio recognition algorithm in a first integrated circuit, the first integrated circuit having a programmable processing unit;
receiving an audio signal in a feature extractor on a second integrated circuit the feature extractor comprising a feature extractor filter unit coupled to receive the audio signal, a filter controller, and a block generator;
transmitting the feature extraction data from the second integrated circuit to the first integrated circuit programmable processing unit;
on the first integrated circuit, executing the audio recognition algorithm on the feature extraction data to produce a first vector;
transmitting the first vector from the first integrated circuit to a vector processor on the second integrated circuit;
transmitting a second vector to the vector processor;
performing a vector operation on at least the first and second vectors, and in accordance therewith, generating a result;
transmitting the result to the programmable processing unit on the first integrated circuit for use in the audio recognition algorithm. - View Dependent Claims (44, 45, 46, 47, 48, 49)
receiving the control signals and interface information in the interface controller;
decoding the control signals and interface information in the interface controller to produce peripheral configuration signals; and
transmitting the peripheral configuration signals to the feature extractor to configure the feature extractor.
-
-
46. The method of claim 43, wherein the second integrated circuit includes a memory, the method further comprising:
-
storing the first vector and the second vector in the memory; and
performing the vector operation on the first vector and the second vector.
-
-
47. The method of claim 43, wherein the second integrated circuit includes a first memory and the first integrated circuit is coupled to a second memory, the method further comprising:
-
storing the first vector in the first memory; and
storing the second vector in the second memory.
-
-
48. The method of claim 43, wherein the vector processor on the second integrated circuit loads a plurality of pattern values and neural network weights and performs a multiply-accumulate operation.
-
49. The method of claim 43, wherein audio recognition algorithm is executed in accordance with the execution of a products functional flow by the programmable processing unit.
-
50. On a single integrated circuit, a method of processing an audio signal for audio recognition comprising:
-
receiving external control signals and interface information in a interface controller corresponding to the external execution of an audio recognition algorithm, and in accordance therewith, configuring a feature extractor, the feature extractor comprising a feature extractor filter unit coupled to receive the audio signals a filter controller, and a block generator;
receiving said audio signal in the feature extractor;
extracting audio recognition features from the audio signal to produce feature extraction data;
transmitting the feature extraction data external to the integrated circuit;
receiving a first vector from the external integrated circuit in a vector processor;
receiving a second vector in the vector processor;
performing a vector operation on at least the first and second vectors, and in accordance therewith, generating a result; and
transmitting the result to external to the integrated circuit for use in the audio recognition algorithm. - View Dependent Claims (51, 52, 53, 54, 55, 56)
decoding the control signals and interface information in the interface controller to produce peripheral configuration signals;
transmitting the peripheral configuration signals to the feature extractor to configure the feature extractor.
-
-
53. The method of claim 50, further comprising receiving control signals and interface information in the interface controller, and in accordance therewith, configuring a vector processor to perform the vector operation.
-
54. The method of claim 53, wherein a first register of the vector processor is configured to hold a first address and a second register of the vector processor is configured to hold a second address, the method further comprising:
-
receiving a first vector representation of the audio signal in a first memory on the integrated circuit, the first address indicating the location of the first vector in the first memory;
calculating the vector distance between the first vector and a second vector stored in a second memory, the second address indicating the location of the second vector in the second memory.
-
-
55. The method of claim 53, wherein a first register of the vector processor is configured to hold a first address and a second register of the vector processor is configured to hold a second address, the method further comprising:
-
receiving a first vector representation of the audio signal in a memory on the integrated circuit, the first address indicating the location of the first vector in the first memory;
calculating the vector distance between the first vector and a second vector stored in the memory, the second address indicating the location of the second vector in the memory.
-
-
56. The method of claim 53, wherein the vector operation comprises loading a plurality of pattern values and neural network weights and performing a multiply-accumulate operation.
Specification