Flexible architecture for acoustic signal processing engine
First Claim
1. A processor, comprising:
- a microcontroller to execute a speech application and including a core to perform feature extraction of speech input of a user to generate a feature vector;
a hardware logic coupled to the core comprising;
an input to receive the feature vector indicative of a portion of the speech input;
a Gaussian mixture model (GMM) hardware circuit including a score generator logic to be invoked by the microcontroller to receive the feature vector, model any of a plurality of GMM speech recognition algorithms, and generate a GMM score for the feature vector based on the GMM speech recognition algorithm modeled, wherein the GMM speech recognition algorithm includes a plurality of mixture components and the GMM hardware circuit is operable to generate feature vector scores corresponding to each of the plurality of mixture components, the feature vector scores based on;
a first stage including a plurality of first logic to compute a sum of difference squared value for an element of the feature vector;
a second stage including a plurality of multipliers to compute a sum of weighted difference value for an element of the feature vector;
and a plurality of stages to perform pair-wise summations of adjacent values output by the second stage to generate a feature vector sum indicative of a weighted sum of differences squared between the feature vector and a mixture component of the GMM speech recognition algorithm; and
a score selection block to;
receive the feature vector scores and algorithm inputs, wherein the algorithm inputs comprise a logarithmic mode input, including a first value indicative of the modeled GMM speech recognition algorithm to implement a logarithmic summation calculation to determine the GMM score, and further including a second value indicative of the modeled GMM speech recognition algorithm to implement a recursive selection between a current GMM score and an intermediate value based on the feature vector sum;
implement the modeled GMM speech recognition algorithm based on the algorithm inputs; and
generate the GMM score for the modeled speech recognition algorithm based on the feature vector scores; and
a back end unit to receive the GMM score and generate a text output corresponding to the GMM score, the text output to be provided to a display device with which the user interacts, wherein the back end unit is to send a feedback to the score generator logic to cause the score generator logic to reduce a number of GMM scores to be calculated on a next iteration.
1 Assignment
0 Petitions
Accused Products
Abstract
A disclosed speech processor includes a front end to receive a speech input and generate a feature vector indicative of a portion of the speech input and a Gaussian mixture (GMM) circuit to receive the feature vector, model any one of a plurality of GMM speech recognition algorithms, and generate a GMM score for the feature vector based on the GMM speech recognition algorithm modeled. In at least one embodiment, the GMM circuit includes a common compute block to generate feature a vector sum indicative of a weighted sum of differences squares between the feature vector and a mixture component of the GMM speech recognition algorithm. In at least one embodiment, the GMM speech recognition algorithm being modeled includes a plurality of Gaussian mixture components and the common compute block is operable to generate feature vector scores corresponding to each of the plurality of mixture components.
61 Citations
6 Claims
-
1. A processor, comprising:
-
a microcontroller to execute a speech application and including a core to perform feature extraction of speech input of a user to generate a feature vector; a hardware logic coupled to the core comprising; an input to receive the feature vector indicative of a portion of the speech input; a Gaussian mixture model (GMM) hardware circuit including a score generator logic to be invoked by the microcontroller to receive the feature vector, model any of a plurality of GMM speech recognition algorithms, and generate a GMM score for the feature vector based on the GMM speech recognition algorithm modeled, wherein the GMM speech recognition algorithm includes a plurality of mixture components and the GMM hardware circuit is operable to generate feature vector scores corresponding to each of the plurality of mixture components, the feature vector scores based on; a first stage including a plurality of first logic to compute a sum of difference squared value for an element of the feature vector; a second stage including a plurality of multipliers to compute a sum of weighted difference value for an element of the feature vector; and a plurality of stages to perform pair-wise summations of adjacent values output by the second stage to generate a feature vector sum indicative of a weighted sum of differences squared between the feature vector and a mixture component of the GMM speech recognition algorithm; and a score selection block to; receive the feature vector scores and algorithm inputs, wherein the algorithm inputs comprise a logarithmic mode input, including a first value indicative of the modeled GMM speech recognition algorithm to implement a logarithmic summation calculation to determine the GMM score, and further including a second value indicative of the modeled GMM speech recognition algorithm to implement a recursive selection between a current GMM score and an intermediate value based on the feature vector sum; implement the modeled GMM speech recognition algorithm based on the algorithm inputs; and generate the GMM score for the modeled speech recognition algorithm based on the feature vector scores; and a back end unit to receive the GMM score and generate a text output corresponding to the GMM score, the text output to be provided to a display device with which the user interacts, wherein the back end unit is to send a feedback to the score generator logic to cause the score generator logic to reduce a number of GMM scores to be calculated on a next iteration. - View Dependent Claims (2, 3)
-
-
4. A processor, comprising:
-
a processing core to execute instruction set instructions, and including a decoder to decode instructions and a complex instruction unit including at least one integer arithmetic logic unit and at least one floating point unit to execute instructions; a microphone; a microcontroller to execute a speech application to group audio samples from the microphone into blocks and perform feature extraction on the group to generate feature vector data comprising a digital representation of a speech sample of a user; an audio interface to receive the feature vector data; and a Gaussian mixture model (GMM) score generator to be invoked by the microcontroller, to generate a GMM score corresponding to the feature vector data, wherein the GMM score generator includes; algorithm selection logic to select a first GMM scoring algorithm from a plurality of supported GMM scoring algorithms; weighted sum of differences squared (SODS) hardware logic to compute feature vector scores indicative of differences between elements of the feature vector data and corresponding elements of a GMM component mixture, the feature vector scores based on; a first stage including a plurality of first logic to compute a sum of difference squared value for an element of the feature vector data; a second stage including a plurality of multipliers to compute a sum of weighted difference value for an element of the feature vector data; and a plurality of stages to perform pair-wise summations of adjacent values output by the second stage to generate a feature vector sum indicative of a weighted sum of differences squared between the feature vector data and the GMM mixture component; and a score selection block to; receive the feature vector scores and algorithm inputs, wherein the algorithm inputs comprise a logarithmic mode input, including a first value indicative of the modeled GMM speech recognition algorithm to implement a logarithmic summation calculation to determine the GMM score, and further including a second value indicative of the modeled GMM speech recognition algorithm to implement a recursive selection between a current GMM score and an intermediate value based on the feature vector sum; implement the first GMM scoring algorithm based on the algorithm inputs; and generate the GMM score for the first GMM scoring algorithm based on the feature vector scores; and a back end unit to receive the GMM score and generate a text output corresponding to the GMM score, the text output to be provided to a display device with which the user interacts, wherein the back end unit is to send a feedback to the GMM score generator to cause the GMM score generator to reduce a number of GMM scores to be calculated on a next iteration. - View Dependent Claims (5, 6)
-
Specification