USRE40854E1 - Fast calculation apparatus for carrying out a forward and an inverse transform - Google Patents

Fast calculation apparatus for carrying out a forward and an inverse transform Download PDF

Info

Publication number
USRE40854E1
USRE40854E1 US10/642,968 US64296803A USRE40854E US RE40854 E1 USRE40854 E1 US RE40854E1 US 64296803 A US64296803 A US 64296803A US RE40854 E USRE40854 E US RE40854E
Authority
US
United States
Prior art keywords
signal
transform
carrying
internal
inverse
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.)
Expired - Lifetime
Application number
US10/642,968
Inventor
Masahiro Iwadare
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to US10/642,968 priority Critical patent/USRE40854E1/en
Application granted granted Critical
Publication of USRE40854E1 publication Critical patent/USRE40854E1/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • G06F17/147Discrete orthonormal transforms, e.g. discrete cosine transform, discrete sine transform, and variations therefrom, e.g. modified discrete cosine transform, integer transforms approximating the discrete cosine transform

Definitions

  • This invention relates to a fast calculation apparatus included in each of a forward transform calculation apparatus and an inverse transform calculation apparatus.
  • a modified discrete cosine transform (hereinafter abbreviated to MDCT) apparatus is known as a linear transform apparatus for a digital signal such as an audio signal and a picture signal.
  • MDCT discrete cosine transform
  • a conventional transform calculation apparatus it is possible by the use of the MDCT technique to carry out a forward and an inverse transform calculation which are well known in the art.
  • the MDCT apparatus is described in detail in an article contributed by N. Schiller to the SPIE Vol. 1001 Visual Communications and Image Processing '88, pages 834-839, under the title of “Overlapping Block Transform for Image Coding Preserving Equal Number of Samples and Coefficients”. The article will be described below.
  • an apparatus for carrying out a forward transform calculation on an apparatus input signal includes multiplying means for multiplying a predetermined forward transform window function and the apparatus input signal to produce a multiplied signal and transform carrying out means for carrying out a linear forward transform on the product signal to produce a forward signal representative of a result of the linear forward transform.
  • the transform carrying out means comprises first processing means connected to the multiplying means for processing the product signal into a processed signal, internal transform carrying out means connected to the first processing means for carrying out a forward fast Fourier transform on the processed signal to produce an internal signal representative of a result of the forward fast Fourier transform, and second processing means connected to the internal transform carrying out means for processing the internal signal into the forward transformed signal.
  • an apparatus for carrying out an inverse transform calculation on an apparatus input signal includes transform carrying out means for carrying out a linear inverse transform on the apparatus input signal to produce an inverse signal representative of a result of the linear inverse transform and multiplying means for multiplying a predetermined inverse transform window function and the inverse signal to produce a product signal.
  • the transform carrying out means comprises first processing means for processing the apparatus input signal into a processed signal, internal transform carrying out means connected to the first processing means for carrying out an inverse fast Fourier transform on the processed signal to produce an internal signal representative of a result of the inverse fast Fourier transform, and second processing means connected to the internal transform carrying out means for processing the internal signal into the inverse transformed signal.
  • FIG. 1 is a block diagram of a conventional calculation apparatus for successively carrying out a forward and an inverse transform
  • FIG. 2 is a block diagram of a calculation apparatus according to a first embodiment of this invention.
  • FIG. 3 is a flow chart for use in describing operation of a first forward processing part included in the calculation apparatus of FIG. 2 ;
  • FIG. 4 is a block diagram of a calculation apparatus according to a second embodiment of this invention.
  • FIG. 5 is a flow chart for use in describing operation of a first forward processing part included in the calculation apparatus of FIG. 4 ;
  • FIG. 6 is a flow chart for use in describing operation of a first inverse processing part included in the calculation apparatus of FIG. 4 ;
  • FIG. 7 is a flow chart for use in describing operation of a second inverse processing part included in the calculation apparatus of FIG. 4 .
  • the conventional calculation apparatus is for successively carrying out a forward and an inverse transform and comprises forward and inverse transform units 11 and 12 .
  • the forward transform unit 11 comprises an input buffer part 13 , a forward transform window part 14 , and a forward calculation part 15 .
  • the input buffer part 13 is for memorizing N samples of original signals x(n), as an original data block. This means that the original data block has an original block length N.
  • the calculation part produces the left-hand side as a forward transformed signal y(m, k). It is necessary to carry out multiplication N 2 times and addition N(N ⁇ 1) times. This is because k is variable between 0 and (N ⁇ 1), both inclusive.
  • each sample of the original signals x(n) is herein called an apparatus input signal.
  • the inverse transform unit 12 comprises an inverse calculation part 16 , an inverse transform window part 17 , and an output buffer part 18 .
  • the calculation part 16 produces the left-hand side as an inverse transformed signal xt(m, n).
  • the product signal is supplied to the output buffer part 18 whenever the multiplication is carried out by the inverse transform window part 17 .
  • the output buffer part 18 memorizes a plurality of the product signals as a current and a previous data block at a time.
  • the current data block corresponds to the original data block.
  • the previous data block is previous to the current data block.
  • Each of the current and the previous data blocks is divided into a former and a latter half block.
  • the former half block comprises zeroth through (N/2 ⁇ 1)-th product signals.
  • the latter half block comprises N/2-th through (N ⁇ 1)-th product signals.
  • the output buffer part 18 carries out addition between the product signal xf(m, n) of the former half block of the current data block and the product signal xf(m ⁇ 1, n) of the latter half block of the previous data block to produce a modified or reproduced signal x′(n) of a modified half block having a modified block length which is a half of the original block length.
  • the output buffer part 18 memorizes, as the latter half block, the second product signal xf(m, n) of the current data block.
  • Each of the forward and the inverse transform window functions h(n) and f(n) can be given by Equation (9) on page 836 in the above-mentioned article.
  • Equation (14) is divided into a front part and a rear part which represents execution of a fast Fourier transform (hereinafter abbreviated to FFT) at a point N of a specific signal x3(n).
  • FFT fast Fourier transform
  • Equation (16) is given from Equation (14).
  • y ⁇ ( m , k ) real [ exp ( - 2 ⁇ ⁇ ⁇ ⁇ j ⁇ ( k + 1 ⁇ / ⁇ 2 ) ⁇ / ⁇ 2 ⁇ N ) ⁇ xf ⁇ ( m , k ) ] .
  • Equation (5) It is therefore possible to obtain the result of Equation (5).
  • the multiplications are required N times before execution of the FFT, at most Nlog 2 N times for executing the FFT, and N times after execution of the FFT.
  • the multiplication is carried out the number of times which is substantially equal to Nlog 2 N if N is great.
  • the number of times of the addition is equal to 2Nlog 2 N. Accordingly, it is possible to reduce the number of times of the multiplication and the addition as compared with the conventional calculation apparatus.
  • the multiplication is carried out the number of times which is substantially equal to Nlog 2 N.
  • the number of times of the addition is equal to 2Nlog 2 N. Accordingly, it is possible to reduce the number of times of the multiplication and the addition as compared with the conventional apparatus.
  • N/4 in the argument of xh in the right-hand side of Equation (21) by shifting p by ( ⁇ N) with the sign of the product signal xh(p) inverted.
  • Equation (23) When (N ⁇ 1 ⁇ p) is substituted for p, the cosine has an absolute value unchanged and a sign inverted between positive and negative.
  • Equation (14) is divided into a front part and a rear part which represents execution of the FFT at N/2 of x4(p).
  • the FFT is represented by Equation (30) which is given below.
  • Equation (31) is given from Equation (29).
  • the multiplication is carried out the number of times which is substantially equal to (N/2) log 2 (N/2) if N is great.
  • the total number of the addition and the subtraction is equal to N/2 for x3(p) and to Nlog 2 (N/2) for FFT.
  • the number of the addition is substantially equal to Nlog 2 (N/2) if N is great. Accordingly, it is possible to reduce the number of times of the multiplication and the addition as compared with the conventional calculation apparatus.
  • y3(m, k) y2(m, k)exp(2 ⁇ jk/N) (39)
  • the multiplication is carried out the number of times which is substantially equal to (N/2) log 2 (N/2).
  • the addition is carried out the number of times which is substantially equal to Nlog 2 (N/2). Accordingly, it is possible to reduce the number of times of the multiplication and the addition as compared with the conventional calculation apparatus.
  • the forward transform window part 14 produces, as the product signal, a succession of zeroth through (3N/4 ⁇ 1)th and (3N/4)th through (N ⁇ 1)th product data.
  • the forward transform window part 14 will be referred to as a multiplying arrangement.
  • the forward transform unit 11 a further comprises first forward processing, second forward processing, and forward FFT parts 21 , 22 , and 23 .
  • the first forward processing part 21 is connected to the forward transform window part 14 and is for processing the product signal into a processed signal.
  • the first forward processing part 21 is supplied with the product signal from the forward transform window part 14 .
  • the first stage SA 1 proceeds to a second stage SA 2 at which the first forward processing part 21 processes the (3N/4)th through the (N ⁇ 1)th product data into a succession of zeroth through (N/4 ⁇ 1)th particular data having a negative polarity or sign in common.
  • the zeroth through the (N/4 ⁇ 1)th product data are processed in accordance with Equation (11a).
  • the first forward processing part 21 for carrying out the second stage SA 2 will be referred to as a particular processing arrangement.
  • the second stage SA 2 proceeds to a third stage SA 3 at which the first forward processing part 21 processes the zeroth through the (3N/4 ⁇ 1)th product data into a succession of (N/4)th through (3N/4 ⁇ 1)th specific data having a positive polarity or sign in common.
  • the (N/4)th through the (N ⁇ 1)th product data are processed in accordance with Equation (11b).
  • the first forward processing part 21 for carrying out the third stage SA 3 will be referred to as a specific processing arrangement.
  • the third stage SA 3 proceeds to a fourth stage SA 4 at which the first forward processing part 21 multiplies exp[ ⁇ 2 ⁇ jn/(2n)] and each of the (3N/4)through the N-th particular and the zeroth through the (3N/4 ⁇ 1)th specific data in accordance with Equation (13) to produce the processed signal.
  • the first forward processing part 21 for carrying out the fourth stage SA 4 will be referred to as a calculating arrangement.
  • the forward FFT part 23 is connected to the first forward processing part 21 and is for carrying out a linear forward FFT on the processed signal in accordance with Equation (15) to produce an internal signal representative of a result of the forward FFT.
  • the forward FFT part 23 is herein referred to as an internal transform carrying out arrangement.
  • the second forward processing part 22 is connected to the forward FFT part 23 and is for processing the internal signal into the forward transformed signal in accordance with Equation (16). More particularly, the second forward processing part 22 multiplies the internal signal and [ ⁇ 2 ⁇ j(k+1 ⁇ 2)2N] into a local product, namely, a real part, to make the forward transformed signal represent the local product. In this event, the second forward processing part 22 will be referred to as an internal multiplying arrangement. A combination of the first forward processing, the second forward processing, and the forward FFT parts 21 , 22 , and 23 will be referred to as a transform carrying out arrangement.
  • the inverse transform unit 12 comprises first inverse processing, second inverse processing, and inverse FFT parts 31 , 32 , and 33 .
  • the first inverse processing part 31 is connected to the second forward processing part 22 and is for processing the forward transformed signal into a processed signal.
  • the first inverse processing part 31 is supplied with the forward transformed signal as an apparatus input signal.
  • the forward transformed signal is a succession of zeroth through (N ⁇ 1)th apparatus input data.
  • the first inverse processing part 31 carries out multiplication between the zeroth through the (N ⁇ 1)th apparatus input data and exp[2 ⁇ j(N/4+1 ⁇ 2)k/N] in accordance with Equation (18) into a first product to make the processed signal represent the first product.
  • the first inverse processing part 31 will be referred to as a first multiplying arrangement.
  • the inverse FFT part 33 is connected to the first inverse processing part 31 and is for carrying out a linear inverse FFT on the processed signal in accordance with Equation (19) to produce an internal signal representative of a result of the inverse FFT.
  • the internal signal is a succession of zeroth through (N ⁇ 1)th internal data.
  • the inverse FFT part 33 is herein referred to as an internal transform carrying out arrangement.
  • the second inverse processing part 32 is connected to the inverse FFT part 33 and is for carrying out multiplication between the zeroth through the (N ⁇ 1)th internal data and 2exp[ ⁇ 2 ⁇ j(n+N/4+1 ⁇ 2)/(2N)] in accordance with Equation (20) into a second product, namely, a real part, to make the inverse transformed signal represent the second product.
  • the second inverse processing part 32 will be referred to as a second multiplying arrangement.
  • the second inverse processing part 32 is further connected to the inverse transform window part 17 .
  • the inverse transformed signal is sent from the second inverse processing part 32 to the inverse transform window part 17 .
  • the forward transform window part 14 produces, as the product signal, a succession of zeroth through (3N/4 ⁇ 1)th and (3N/4)th through (N ⁇ 1)th product data.
  • the forward transform window part 14 will be referred to as a multiplying arrangement.
  • the first forward processing part 21 comprises subtracting and multiplying parts 41 and 42 .
  • the subtracting part 41 is connected to the forward transform window part 14 and is for producing a local signal in response to the product signal.
  • the multiplying part 42 is connected to the subtracting part 41 and is for producing the processed signal in response to the local signal.
  • the subtracting part 41 is supplied with the product signal from the forward transform window part 14 .
  • the first stage SB 1 proceeds to a second stage SB 2 at which the subtracting part 41 processes the zeroth through the (N/4 ⁇ 1)th product data into a succession of (3N/4) through Nth particular data having a negative polarity in common.
  • the zeroth through the (N/4 ⁇ 1)th product data are processed in accordance with Equation (22a).
  • the subtracting part 41 for carrying out the second stage SB 2 will be referred to as a particular processing arrangement.
  • the second stage SB 2 proceeds to a third stage SB 3 at which the subtracting part 41 processes the zeroth through the (3N/4 ⁇ 1)th product data into a succession of zeroth through (N/4)th specific data having a positive polarity in common.
  • the (N/4)th through the (N ⁇ 1)th product data are processed in accordance with Equation (22b).
  • the subtracting part 41 for carrying out the third stage SB 3 will be referred to as a specific processing arrangement.
  • the third stage SB 3 proceeds to a fourth stage SB 4 at which the subtracting part 41 combines the particular and the specific data successions into a succession of zeroth through (N ⁇ 1 ⁇ 2p)th and 2pth through (N ⁇ 1)th combined data.
  • the subtracting part 41 will be referred to as a combining arrangement.
  • the fourth stage SB 4 proceeds to a fifth stage SB 5 at which the subtracting part 41 subtracts the (N ⁇ 1 ⁇ 2p)th combined datum from the 2pth combined datum in accordance with Equation (26) to produce a difference and the local signal that is representative of the difference.
  • the subtracting part 41 for carrying out the fifth stage SB 5 will be referred to as a subtracting arrangement.
  • the fifth stage SB 5 proceeds to a sixth stage SB 6 at which the multiplying part 42 carries out multiplication between exp( ⁇ 2 ⁇ jp/N) and the local signal in accordance with Equation (28) to produce an internal product to make the processed signal represent the internal product.
  • the multiplying part 42 will be referred to as an internal multiplying arrangement.
  • the forward FFT part 23 is connected to the multiplying part 42 and is for carrying out the linear forward FFT on the processed signal in accordance with Equation (30) to produce an internal signal representative of a result of the forward FFT.
  • the forward FFT part 23 is herein referred to as an internal transform carrying out arrangement.
  • the second forward processing part 22 is connected to the forward FFT part 23 and is for processing the internal signal into the forward transformed signal in accordance with Equation (31). More particularly, the second forward processing part 22 carries out multiplication between the internal signal and [ ⁇ 2 ⁇ j(k+1 ⁇ 2)/(2N)] into a local product, namely, a real part, to make the forward transformed signal represent the local product. In this event, the second forward processing part 22 will be referred to as an internal multiplying arrangement. A combination of the first forward processing, the second forward processing, and the forward FFT parts 21 , 22 , and 23 will be referred to as a transform carrying out arrangement.
  • the first inverse processing part 31 is supplied with the forward transformed signal from the second forward processing part 22 .
  • the first stage SC 1 proceeds to a second stage SC 2 at which the first inverse processing part 31 processes the 2kth apparatus input datum into a kth particular datum.
  • the forward transformed signal is processed in accordance with Equation (37a).
  • the first inverse processing part 16 will be referred to as a particular processing arrangement.
  • the second stage SC 2 proceeds to a third stage SC 3 at which the first inverse processing part 31 processes the (2k+1)th apparatus input datum into a (N ⁇ 1 ⁇ k)th specific datum.
  • the forward transformed signal is processed in accordance with Equation (37c).
  • the first inverse processing part 16 will be referred to as a specific processing arrangement.
  • the third stage SC 3 proceeds to a fourth stage SC 4 at which the first inverse processing part 31 carries out multiplication between exp(2njk/N) and each of the kth particular and the (N ⁇ 1 ⁇ k)th specific data in accordance with Equation (38) into the processed signal.
  • the first inverse processing part 16 will be referred to as a calculation arrangement.
  • the inverse FFT part 33 carries out the linear inverse FFT on the processed signal in accordance with Equation (40) to produce an internal signal representative of a result of the inverse FFT.
  • the inverse FFT part 23 will be referred to as an internal transform carrying out arrangement.
  • the inverse FFT part 23 produces, as the internal signal, a succession of zeroth through (p ⁇ 1)th and pth through (N/2 ⁇ 1)th internal data.
  • the second inverse processing part 32 is supplied with the internal signal from the inverse FFT part 23 .
  • the first stage SD 1 proceeds to a second stage SD 2 at which the second inverse processing part 32 carries out multiplication between the pth internal datum and the exp[2 ⁇ j(p+1 ⁇ 2)/(2N)] in accordance with Equation (41) into a local product to make the inverse transformed signal represent the local product.
  • the local product is a succession of zeroth through (N/4 ⁇ 1)th and (N/4)th through (N/2 ⁇ 1)th product data.
  • the second inverse processing part 32 will be referred to as a multiplying arrangement.
  • the second stage SD 2 proceeds to a third stage SD 3 at which the second inverse processing part 32 processes the zeroth through the (N/4 ⁇ 1)th product data in accordance with Equation (42a) into a first succession of (3N/4 ⁇ 1)th through (N/2)th particular data in a descending order and a second succession of (3N/4)th through Nth particular data in ascending order.
  • the particular data of the first and the second successions have a first polarity in common.
  • the second inverse processing part 32 will be referred to as a particular processing arrangement.
  • the third stage SD 3 proceeds to a fourth stage SD 4 at which the second inverse processing part 32 processes the (N/4)th through the (N/2 ⁇ 1)th product data in accordance with Equation (42b) into a first succession of zeroth through (N/4 ⁇ 1)th specific data in an ascending order and a second succession of (N/2 ⁇ 1)th through (N/4)th specific data in a descending order.
  • the specific data of the first and the second successions have a second polarity in common.
  • the second polarity is different from the first polarity.
  • the second inverse processing part 32 will be referred to as a specific processing arrangement.
  • the block length N may be equal to 256 or 512.

Abstract

In an apparatus for carrying out a linear transform calculation on a product signal produced by multiplying a predetermined transform window function and an apparatus input signal, an FFT part (23) carries out fast Fourier transform on a processed signal produced by processing the product signal in a first processing part (21). As a result, the FFT part produces an internal signal which is representative of a result of the fast Fourier transform. A second processing part (22) processes the internal signal into a transformed signal which represents a result of the linear transform calculation. The apparatus is applicable to either of forward and inverse transform units (11, 12).

Description

BACKGROUND OF THE INVENTION
This invention relates to a fast calculation apparatus included in each of a forward transform calculation apparatus and an inverse transform calculation apparatus.
A modified discrete cosine transform (hereinafter abbreviated to MDCT) apparatus is known as a linear transform apparatus for a digital signal such as an audio signal and a picture signal. In a conventional transform calculation apparatus, it is possible by the use of the MDCT technique to carry out a forward and an inverse transform calculation which are well known in the art.
The MDCT apparatus is described in detail in an article contributed by N. Schiller to the SPIE Vol. 1001 Visual Communications and Image Processing '88, pages 834-839, under the title of “Overlapping Block Transform for Image Coding Preserving Equal Number of Samples and Coefficients”. The article will be described below.
In the MDCT technique, a forward transform equation and an inverse transform equation are given: y ( m , k ) = n = 0 N - 1 x ( n ) h ( n ) cos [ 2 π ( k + 1 / 2 ) ( n + n 0 ) / N ] and ( 1 ) xf ( m , n ) = 2 f ( n ) / N k = 0 N - 1 y ( m , k ) cos [ 2 π ( k + 1 / 2 ) ( n + n 0 ) / n ] , ( 2 )
wherein x represents an input signal, N represents a block length (N is multiple of 4), m represents a block number, h represents a forward transform window function, f represents an inverse transform window function, each of n and k represents an integer variable between 0 and N−1, both inclusive. Herein, n0 is given as follows:
n0=N/4+½.  (3)
It is necessary in each of the forward and the inverse transform calculations to carry out a large number of multiplication times and addition times. This is because k is the integer between 0 and (N−1), both inclusive. Accordingly, an increase in the block length N results in an increased number of times of each of the multiplication and the addition.
SUMMARY OF THE INVENTION
It is therefore an object of this invention to provide a forward transform calculation apparatus by which it is possible to reduce the number of times of multiplication and addition.
It is another object of this invention to provide an inverse transform calculation apparatus by which it is possible to reduce the number of times of the multiplication and the addition.
It is still another object of this invention to provide a calculation apparatus in which the number of times of the multiplication and the addition increases in proportion to only Nlog2N, where N represents an integer.
It is yet another object of this invention to provide a calculation apparatus in which the number of times of the multiplication and the addition increases in proportion to (N/2)log2(N/2), where N represents an integer.
Other object of this invention will become clear as the description proceeds.
According to an aspect of this invention, there is provided an apparatus for carrying out a forward transform calculation on an apparatus input signal. The apparatus includes multiplying means for multiplying a predetermined forward transform window function and the apparatus input signal to produce a multiplied signal and transform carrying out means for carrying out a linear forward transform on the product signal to produce a forward signal representative of a result of the linear forward transform. The transform carrying out means comprises first processing means connected to the multiplying means for processing the product signal into a processed signal, internal transform carrying out means connected to the first processing means for carrying out a forward fast Fourier transform on the processed signal to produce an internal signal representative of a result of the forward fast Fourier transform, and second processing means connected to the internal transform carrying out means for processing the internal signal into the forward transformed signal.
According to another aspect of this invention, there is provided an apparatus for carrying out an inverse transform calculation on an apparatus input signal. The apparatus includes transform carrying out means for carrying out a linear inverse transform on the apparatus input signal to produce an inverse signal representative of a result of the linear inverse transform and multiplying means for multiplying a predetermined inverse transform window function and the inverse signal to produce a product signal. The transform carrying out means comprises first processing means for processing the apparatus input signal into a processed signal, internal transform carrying out means connected to the first processing means for carrying out an inverse fast Fourier transform on the processed signal to produce an internal signal representative of a result of the inverse fast Fourier transform, and second processing means connected to the internal transform carrying out means for processing the internal signal into the inverse transformed signal.
BRIEF DESCRIPTION OF THE DRAWING
FIG. 1 is a block diagram of a conventional calculation apparatus for successively carrying out a forward and an inverse transform;
FIG. 2 is a block diagram of a calculation apparatus according to a first embodiment of this invention;
FIG. 3 is a flow chart for use in describing operation of a first forward processing part included in the calculation apparatus of FIG. 2;
FIG. 4 is a block diagram of a calculation apparatus according to a second embodiment of this invention;
FIG. 5 is a flow chart for use in describing operation of a first forward processing part included in the calculation apparatus of FIG. 4;
FIG. 6 is a flow chart for use in describing operation of a first inverse processing part included in the calculation apparatus of FIG. 4; and
FIG. 7 is a flow chart for use in describing operation of a second inverse processing part included in the calculation apparatus of FIG. 4.
DESCRIPTION OF THE PREFERRED EMBODIMENTS
Referring to FIG. 1, a conventional calculation apparatus will be described at first for a better understanding of the present invention. The conventional calculation apparatus is for successively carrying out a forward and an inverse transform and comprises forward and inverse transform units 11 and 12.
The forward transform unit 11 comprises an input buffer part 13, a forward transform window part 14, and a forward calculation part 15. The input buffer part 13 is for memorizing N samples of original signals x(n), as an original data block. This means that the original data block has an original block length N. Responsive to the original signals x(n), the forward transform window part 14 carries out multiplication between each of the original signals x(n) and the forward transform window function h(n) to produce a product signal xh(n) as follows:
xh(n)=x(n)h(n).  (4)
Responsive to the product signal xh(n), the forward calculation part 15 calculates the left-hand side of Equation (1) as follows: y ( m , k ) = n = 0 N - 1 xh ( n ) cos [ 2 π ( k + 1 / 2 ) ( n + n 0 ) / N ] . ( 5 )
The calculation part produces the left-hand side as a forward transformed signal y(m, k). It is necessary to carry out multiplication N2 times and addition N(N−1) times. This is because k is variable between 0 and (N−1), both inclusive. Depending on the circumstances, each sample of the original signals x(n) is herein called an apparatus input signal.
The inverse transform unit 12 comprises an inverse calculation part 16, an inverse transform window part 17, and an output buffer part 18. The inverse calculation part 16 calculates the left-hand side of Equation (2) as follows: xt ( m , n ) = 2 / N k = 0 N - 1 y ( m , k ) cos [ 2 π ( k + 1 / 2 ) ( n + n 0 ) / n ] . ( 6 )
The calculation part 16 produces the left-hand side as an inverse transformed signal xt(m, n). The inverse transform window part 17 multiplies the inverse transformed signal xt(m, n) and an inverse transform window function f(n) into a product in accordance with:
xf(m, n)=xt(m, n)f(n).  (7)
The inverse transform window part 17 thereby produces a product signal xf(m, n) representative of the product.
The product signal is supplied to the output buffer part 18 whenever the multiplication is carried out by the inverse transform window part 17. As a result, the output buffer part 18 memorizes a plurality of the product signals as a current and a previous data block at a time. The current data block corresponds to the original data block. The previous data block is previous to the current data block. Each of the current and the previous data blocks is divided into a former and a latter half block. The former half block comprises zeroth through (N/2−1)-th product signals. The latter half block comprises N/2-th through (N−1)-th product signals.
As will be understood from the following equation, the output buffer part 18 carries out addition between the product signal xf(m, n) of the former half block of the current data block and the product signal xf(m−1, n) of the latter half block of the previous data block to produce a modified or reproduced signal x′(n) of a modified half block having a modified block length which is a half of the original block length. The following equation is:
x′(n)=xf(m−1, n+N/2)+xf(m, n),  (8)
when 0≦n<N/2−1.
Simultaneously, the output buffer part 18 memorizes, as the latter half block, the second product signal xf(m, n) of the current data block. Each of the forward and the inverse transform window functions h(n) and f(n) can be given by Equation (9) on page 836 in the above-mentioned article.
The description will now proceed to an example of an algorithm which is applicable to a forward transform calculation apparatus according to this invention. Substituting Equation (3), Equation (5) is rewritten into: y ( m , k ) = n = 0 N - 1 xh ( n ) cos [ 2 π ( k + 1 / 2 ) ( n + n 0 ) / N ] = n = 0 N - 1 xh ( n ) cos [ 2 π ( k + 1 / 2 ) ( n + N / 4 + 1 / 2 ) / N ] = n = N / 4 5 N / 4 - 1 xh ( n - N / 4 ) cos [ 2 π ( k + 1 / 2 ) ( n + 1 / 2 ) / N ] ( 9 )
In Equation (9), the cosine has a nature such that: cos [ 2 π ( k + 1 / 2 ) ( n + 1 / 2 ) / N ] = cos [ 2 π ( k + 1 / 2 ) ( ( n - N ) + 1 / 2 + N ) / N ] = cos [ 2 π ( k + 1 / 2 ) ( ( n - N ) + 1 / 2 ) / N + 2 π ( k + 1 / 2 ) N / N ] = - cos [ 2 π ( k + 1 / 2 ) ( ( n - N ) + 1 / 2 ) / N ] ( 10 )
When n is shifted by (−N), the cosine has an argument shifted by 2π(k+½), namely, an odd integral multiple of π. In this event, the cosine has an absolute value unchanged and a sign inverted between positive and negative. Therefore, it is possible to delete the term N/4 in the argument of xh in the right-hand side of Equation (9) by shifting n by (−N) with the sign of the product signal xh(n) inverted.
Herein, the product signal is processed into particular and specific datum x2(n) which are represented as follows:
x2(n)=−xh(n+3/N4),  (11a)
when 0≦n<N/4
and
x2(n)=xh(n−N/4),  (11b)
when N/4≦n<N.

Therefore: y ( m , k ) = n = 0 N - 1 x2 ( n ) cos [ 2 π ( k + 1 / 2 ) ( n + 1 / 2 ) / N ] = real [ n = 0 N - 1 x2 ( n ) exp ( - 2 π j ( k + 1 / 2 ) ( n + 1 / 2 ) / N ) ] = real [ n = 0 N - 1 x2 ( n ) × exp ( - 2 π j ( k + 1 / 2 ) / 2 N - 2 π j ( k + 1 / 2 ) n / N ) , ] = real [ exp ( - π 2 j ( k + 1 / 2 ) / 2 N ) × n = 0 N - 1 x2 ( n ) exp ( - 2 π j ( k + 1 / 2 ) n / N ) ] = real [ exp ( - 2 π j ( k + 1 / 2 ) / 2 N ) × n = 0 N - 1 x2 ( n ) exp ( - 2 π jn / 2 N - 2 π jkn / N ) ] = real [ exp ( - 2 π j ( k + 1 / 2 ) / 2 N ) × n = 0 N - 1 x2 ( n ) exp ( - 2 π jn / 2 N ) exp ( - 2 π jkn / N ) ] , ( 12 )
where j represents an imaginary unit.
It will be assumed that:
x3(n)=x2(n)exp(−2πjn/2N).  (13)
In this event: y ( m , k ) = real [ exp ( - 2 π j ( k + 1 / 2 ) / 2 N ) × n = 0 N - 1 x3 ( n ) exp ( - 2 π jkn / N ) ] . ( 14 )
Herein, Equation (14) is divided into a front part and a rear part which represents execution of a fast Fourier transform (hereinafter abbreviated to FFT) at a point N of a specific signal x3(n). The FFT is represented by Equation (15) which is given below.
Accordingly, Equation (16) is given from Equation (14). xf ( m , k ) = n = 0 N - 1 x3 ( n ) exp ( - 2 π jkn / N ) and ( 15 ) y ( m , k ) = real [ exp ( - 2 π j ( k + 1 / 2 ) / 2 N ) xf ( m , k ) ] . ( 16 )
It is therefore possible to obtain the result of Equation (5).
The multiplications are required N times before execution of the FFT, at most Nlog2N times for executing the FFT, and N times after execution of the FFT. As a result, the multiplication is carried out the number of times which is substantially equal to Nlog2N if N is great. The number of times of the addition is equal to 2Nlog2N. Accordingly, it is possible to reduce the number of times of the multiplication and the addition as compared with the conventional calculation apparatus.
The description will proceed to an example of an algorithm which is applicable to an inverse transform calculation apparatus according to this invention. Substituting Equation (3), Equation (6) is rewritten into: xt ( m , n ) = 2 / N k = 0 N - 1 y ( m , k ) cos [ 2 π ( n + n 0 ) ( k + 1 / 2 ) / N ] = 2 / N k = 0 N - 1 y ( m , k ) cos [ 2 π ( n + N / 4 + 1 / 2 ) ( k + 1 / 2 ) / N ] = 2 / N real [ k = 0 N - 1 y ( m , k ) × exp ( 2 π j ( n + N / 4 + 1 / 2 ) ( k + 1 / 2 ) / N ) m ] = 2 / N real [ k = 0 N - 1 y ( m , k ) × exp ( 2 π j ( n + N / 4 + 1 / 2 ) / 2 N + 2 π j ( n + N / 4 + 1 / 2 ) k / N ) ] = 2 / N real [ exp ( 2 π j ( n + N / 4 + 1 / 2 ) / 2 N ) × k = 0 N - 1 y ( m , k ) exp ( 2 π j ( n + N / 4 + 1 / 2 ) k / N ) ] = 2 / N real [ exp ( 2 π j ( n + N / 4 + 1 / 2 ) / 2 N ) × k = 0 N - 1 y ( m , k ) exp ( 2 π j ( N / 4 + 1 / 2 ) k / N + 2 π jn k / N ) ] = 2 / N real [ exp ( 2 π j ( n + N / 4 + 1 / 2 ) / 2 N ) × k = 0 N - 1 y ( m , k ) exp ( 2 π j ( N / 4 + 1 / 2 ) k / N ) exp ( 2 π jn k / N ) ] . ( 17 )
The following equations are introduced:
y2(m, k)=y(m, k)exp[2πj(N/4+1/2)k/N]  (18)

and y 3 ( m , k ) = k = 0 N / 2 - 1 y 2 ( m , k ) exp ( 2 π jnk / N ) . ( 19 )
Equation (19) represents the inverse FFT for the signal y2(m, k). Substituting Equations (18) and (19) in Equation (17):
xt(m, n)=2/Nreal[exp(2πj(n+N/4+1/2)/2N)y3(m, n)].  (20)
It is therefore possible to obtain the result of Equation (6).
The multiplication is carried out the number of times which is substantially equal to Nlog2N. The number of times of the addition is equal to 2Nlog2N. Accordingly, it is possible to reduce the number of times of the multiplication and the addition as compared with the conventional apparatus.
The description will now proceed to another example of the algorithm that is applicable to the forward transform calculation apparatus according to this invention. With p substituted for n, Equation (9) is rewritten into: y ( m , k ) = p = N / 4 5 N / 4 - 1 xh ( p - N / 4 ) cos [ 2 π ( k + 1 / 2 ) ( p + 1 / 2 ) / N ] . ( 21 )
It is possible to delete the term N/4 in the argument of xh in the right-hand side of Equation (21) by shifting p by (−N) with the sign of the product signal xh(p) inverted.
Herein, the product signal is processed into the particular and the specific data x2(p) which are represented as follows:
x2(p)=−xh(p+3N/4),  (22a)
when 0≦p<N/4
and
x2(p)=xh(p+N/4),  (22b)
when N/4≦p<N.

Therefore: Therefore : y ( m , k ) = p = 0 N - 1 x2 ( p ) cos [ 2 π ( k + 1 / 2 ) ( p + 1 / 2 ) / N ] ( 23 )
In Equation (23), the cosine has a nature such that: cos [ 2 π ( k + 1 / 2 ) ( p + 1 / 2 ) / N ] = cos [ - 2 π ( k + 1 / 2 ) ( p + 1 / 2 ) / N ] = cos [ 2 π ( k + 1 / 2 ) ( ( N - p - 1 / 2 ) - N ) / N ] = cos [ 2 π ( k + 1 / 2 ) ( ( N - 1 - p ) + 1 / 2 ) / N - 2 π ( k + 1 / 2 ) ( N / N ] = - cos [ 2 π ( k + 1 / 2 ) ( ( N - p - 1 ) + 1 / 2 ) / N ] ( 24 )
When (N−1−p) is substituted for p, the cosine has an absolute value unchanged and a sign inverted between positive and negative. When p separated into an even and an odd number, Equation (23) is rewritten into: y ( m , k ) = p = 0 N / 2 - 1 x 2 ( 2 p ) cos [ 2 π ( k + 1 / 2 ) ( 2 p + 1 / 2 ) / N ] + p = 0 N / 2 - 1 x 2 ( N - 1 - 2 p ) cos [ 2 π ( k + 1 / 2 ) × ( N - 1 - 2 p + 1 / 2 ) / N ] = p = 0 N / 2 - 1 [ x 2 ( 2 p ) - x 2 ( p - 1 - 2 p ) ] × cos [ 2 π ( k + 1 / 2 ) ( 2 p + 1 / 2 ) / N ] ( 25 )
It is assumed that:
x3(p)=x2(2p)−x2(N−1−2p),  (26)
when 0≦p≦N/2−1.
In this event: y ( m , k ) = n = 0 N / 2 - 1 x 3 ( n ) cos [ 2 π ( k + 1 / 2 ) ( 2 n + 1 / 2 ) / n ] = r e a l [ n = 0 N / 2 - 1 x 3 ( n ) exp ( - 2 π j ( k + 1 / 2 ) ( 2 n + 1 / 2 ) / N ) ] = real [ n = 0 N / 2 - 1 x 3 ( n ) × exp ( - 2 π j ( k + 1 / 2 ) / 2 N - 2 π j ( k + 1 / 2 ) 2 n / 2 ) ] = real [ exp ( - 2 π j ( k + 1 / 2 ) / 2 N ) × n = 0 N / 2 - 1 x 3 ( n ) exp ( - 2 π j ( k + 1 ) n / N ) ] = real [ exp ( - 2 π j ( k + 1 / 2 ) / 2 N ) × n = 0 N / 2 - 1 x 3 ( n ) exp ( - 2 π jn / N - 2 π jk2n / N ) ] = real [ exp ( - 2 π j ( k + 1 / 2 ) / 2 N ) × n = 0 N / 2 - 1 x 3 ( n ) exp ( - 2 π jn / N ) exp ( - 2 π jkn / ( N / 2 ) ) ] ( 27 )
It is assumed that:
x4(p)=x3(p)exp(−2πjp/N).  (28)
In this event: y ( m , k ) = real [ exp ( - 2 π j ( k + 1 / 2 ) / 2 N ) × p = 0 N / 2 - 1 x 4 ( p ) exp ( - 2 π jkp / ( N / 2 ) ) ] ( 29 )
Herein, Equation (14) is divided into a front part and a rear part which represents execution of the FFT at N/2 of x4(p). The FFT is represented by Equation (30) which is given below. Accordingly, Equation (31) is given from Equation (29). xf ( m , k ) = p = 0 N / 2 - 1 x 4 ( p ) exp [ - 2 π jkp / ( N / 2 ) ] ( 30 )  y(m, k)=real[exp(−2πj(k+1/2)/2N)×f(m, k)]  (31)
It is therefore possible to obtain the result of Equation (5).
The multiplication is carried out the number of times which is substantially equal to (N/2) log2 (N/2) if N is great. The total number of the addition and the subtraction is equal to N/2 for x3(p) and to Nlog2(N/2) for FFT. The number of the addition is substantially equal to Nlog2(N/2) if N is great. Accordingly, it is possible to reduce the number of times of the multiplication and the addition as compared with the conventional calculation apparatus.
Since the FFT is carried out at N/2 points, y(m, n) is obtained in a case where k is variable between 0 and N/2−1, both inclusive. In Equation (24), p and k are symmetrical with one another. Using the symmetric nature of the cosine with respect to k, Equation (23) is rewritten into: y ( m , k ) = n = 0 N - 1 x2 ( n ) cos [ 2 π ( k + 1 / 2 ) ( n + 1 / 2 ) / N ] = n = 0 N - 1 - x2 ( n ) cos [ 2 π ( ( N - 1 - k ) + 1 / 2 ) ( n + 1 / 2 ) / N ] = - y ( m , N - 1 - k ) . ( 32 )
Therefore, y(m, k) is obtained in another case where k is variable between N/2 and N−1, both inclusive.
The description will proceed to another example of the algorithm that is applicable to the inverse transform calculation apparatus according to this invention. Substituting Equation (3) with p substituted for n, Equation (6) is rewritten into: xt ( m , n ) = 2 / N k - 0 N - 1 y ( m , k ) cos [ 2 π ( p + p 0 ) ( k + 1 / 2 ) / N ] = 2 / N k = 0 N - 1 y ( m , k ) cos [ 2 π ( p + N / 4 + 1 / 2 ) ( k + 1 / 2 ) / N ] . ( 33 )
For convenience of the equation, it will be assumed that:
xt2(m, p)=xt(m, p−N/4).  (34)
In this event: xt2 ( m , p ) = 2 / N k = 0 N - 1 y ( m , k ) cos [ 2 π ( p + 1 / 2 ) ( k + 1 / 2 ) / N ] = 2 / N [ k = 0 N / 2 - 1 y ( m , 2 k ) cos ( 2 π ( p + 1 / 2 ) ( 2 k + 1 / 2 ) / N ) + k = 0 N / 2 - 1 y ( m , N - 1 - 2 k ) × cos ( 2 π ( p + 1 / 2 ) ( N - 1 - 2 k + 1 / 2 ) / N ) ] = 2 / N [ k = 0 N / 2 - 1 ( y ( m , 2 k ) - y ( m , N - 1 - 2 k ) ) × cos ( 2 π ( p + 1 / 2 ) ( 2 k + 1 / 2 ) / N ) ] . ( 35 )
Substituting Equation (31): xt 2 ( m , p ) = 2 / N [ k = 0 N / 2 - 1 2 y ( m , 2 k ) cos ( 2 π ( p + 1 / 2 ) ( 2 k + 1 / 2 ) / N ) ] . ( 36 )
Herein, y2(m, k) is represented as follows:
y2(m, k)=y(m, 2k),  (37a)
when 0≦k<N/4
y2(m, k)=−y(m, k),  (37b)
when N/4≦k<N/2.
Using Equation (32), Equation (37b) is represented as follows:
y2(m, k)=−(m, N−1−2k),  (37c)
when N/4≦k<N/2.
Equation (35) is rewritten into: xt 2 ( m , p ) = 4 / N real [ k = 0 N / 2 - 1 y / 2 ( m , k ) × exp ( 2 π j ( p + 1 / 2 ) ( 2 k + 1 / 2 ) / N ) ] = 4 / N real [ k = 0 N / 2 - 1 y 2 ( m , k ) × exp ( 2 π j ( p + 1 / 2 ) / 2 N + 2 π j ( p + 1 / 2 ) 2 k / N ) ] = 4 / N real [ exp ( 2 π j ( p + 1 / 2 ) / 2 N ) × k = 0 N / 2 - 1 y 2 ( m , k ) exp ( 2 π j ( 2 p + 1 ) k / N ) ] = 4 / N real [ exp ( 2 π j ( p + 1 / 2 ) / 2 N ) × k = 0 N / 2 - 1 y 2 ( m , k ) exp ( 2 π jk / N + ( 2 π jpk / ( N / 2 ) ) ] ( 38 )
It is assumed that:

y3(m, k)=y2(m, k)exp(2πjk/N)  (39) y 4 ( m , p ) = k = 0 N / 2 - 1 y 3 ( m , k ) exp [ 2 π jpk / ( N / 2 ) ] ( 40 )
Equation (40) represents an inverse FFT for y3(m, k). Substituting Equations (39) and (40) into Equation (38):
xt2(m, n)=4/N real[exp(2πj(n+1/2)/2N)y4(m, n)].  (41)
In order to convert xt2(m, n) to xt(m, n), it is assumed from Equations (20), (24), and (32) that:
xt(m, 3N/4−1−n)=xt(m, 3N/4+n)  (42a)
=−xt2(m, n)
when 0≦n<N/4
It is therefore possible to obtain the result of Equation (6).
The multiplication is carried out the number of times which is substantially equal to (N/2) log2 (N/2). The addition is carried out the number of times which is substantially equal to Nlog2 (N/2). Accordingly, it is possible to reduce the number of times of the multiplication and the addition as compared with the conventional calculation apparatus.
Referring to FIG. 2, the description will be directed to a calculation apparatus according to a first embodiment of this invention. The calculation apparatus comprises similar parts designated by like reference numerals. The forward transform window part 14 produces, as the product signal, a succession of zeroth through (3N/4−1)th and (3N/4)th through (N−1)th product data. The forward transform window part 14 will be referred to as a multiplying arrangement.
The forward transform unit 11a further comprises first forward processing, second forward processing, and forward FFT parts 21, 22, and 23. The first forward processing part 21 is connected to the forward transform window part 14 and is for processing the product signal into a processed signal.
Referring to FIG. 3 together with FIG. 2, the description will be made as regards operation of the first forward processing part 21. At a first stage SA1, the first forward processing part 21 is supplied with the product signal from the forward transform window part 14. The first stage SA1 proceeds to a second stage SA2 at which the first forward processing part 21 processes the (3N/4)th through the (N−1)th product data into a succession of zeroth through (N/4−1)th particular data having a negative polarity or sign in common. In other words, the zeroth through the (N/4−1)th product data are processed in accordance with Equation (11a). The first forward processing part 21 for carrying out the second stage SA2 will be referred to as a particular processing arrangement.
The second stage SA2 proceeds to a third stage SA3 at which the first forward processing part 21 processes the zeroth through the (3N/4−1)th product data into a succession of (N/4)th through (3N/4−1)th specific data having a positive polarity or sign in common. In other words, the (N/4)th through the (N−1)th product data are processed in accordance with Equation (11b). The first forward processing part 21 for carrying out the third stage SA3 will be referred to as a specific processing arrangement.
The third stage SA3 proceeds to a fourth stage SA4 at which the first forward processing part 21 multiplies exp[−2πjn/(2n)] and each of the (3N/4)through the N-th particular and the zeroth through the (3N/4−1)th specific data in accordance with Equation (13) to produce the processed signal. The first forward processing part 21 for carrying out the fourth stage SA4 will be referred to as a calculating arrangement.
Returning to FIG. 2, the forward FFT part 23 is connected to the first forward processing part 21 and is for carrying out a linear forward FFT on the processed signal in accordance with Equation (15) to produce an internal signal representative of a result of the forward FFT. The forward FFT part 23 is herein referred to as an internal transform carrying out arrangement.
The second forward processing part 22 is connected to the forward FFT part 23 and is for processing the internal signal into the forward transformed signal in accordance with Equation (16). More particularly, the second forward processing part 22 multiplies the internal signal and [−2πj(k+½)2N] into a local product, namely, a real part, to make the forward transformed signal represent the local product. In this event, the second forward processing part 22 will be referred to as an internal multiplying arrangement. A combination of the first forward processing, the second forward processing, and the forward FFT parts 21, 22, and 23 will be referred to as a transform carrying out arrangement.
Continuing reference to FIG. 2, the description will proceed to the inverse transform unit 12a. The inverse transform unit 12 comprises first inverse processing, second inverse processing, and inverse FFT parts 31, 32, and 33. The first inverse processing part 31 is connected to the second forward processing part 22 and is for processing the forward transformed signal into a processed signal.
The first inverse processing part 31 is supplied with the forward transformed signal as an apparatus input signal. The forward transformed signal is a succession of zeroth through (N−1)th apparatus input data.
The first inverse processing part 31 carries out multiplication between the zeroth through the (N−1)th apparatus input data and exp[2πj(N/4+½)k/N] in accordance with Equation (18) into a first product to make the processed signal represent the first product. In this event, the first inverse processing part 31 will be referred to as a first multiplying arrangement.
The inverse FFT part 33 is connected to the first inverse processing part 31 and is for carrying out a linear inverse FFT on the processed signal in accordance with Equation (19) to produce an internal signal representative of a result of the inverse FFT. The internal signal is a succession of zeroth through (N−1)th internal data. In this event, the inverse FFT part 33 is herein referred to as an internal transform carrying out arrangement.
The second inverse processing part 32 is connected to the inverse FFT part 33 and is for carrying out multiplication between the zeroth through the (N−1)th internal data and 2exp[−2πj(n+N/4+½)/(2N)] in accordance with Equation (20) into a second product, namely, a real part, to make the inverse transformed signal represent the second product. In this event, the second inverse processing part 32 will be referred to as a second multiplying arrangement.
The second inverse processing part 32 is further connected to the inverse transform window part 17. The inverse transformed signal is sent from the second inverse processing part 32 to the inverse transform window part 17.
Referring to FIG. 4, the description will be directed to a calculation apparatus according to a second embodiment of this invention. The calculation apparatus comprises similar parts designated by like reference numerals. The forward transform window part 14 produces, as the product signal, a succession of zeroth through (3N/4−1)th and (3N/4)th through (N−1)th product data. The forward transform window part 14 will be referred to as a multiplying arrangement.
The first forward processing part 21 comprises subtracting and multiplying parts 41 and 42. The subtracting part 41 is connected to the forward transform window part 14 and is for producing a local signal in response to the product signal. The multiplying part 42 is connected to the subtracting part 41 and is for producing the processed signal in response to the local signal.
Referring to FIG. 5 together with FIG. 4, the description will be made as regards operation of the first forward processing part 21. At a first stage SB1, the subtracting part 41 is supplied with the product signal from the forward transform window part 14. The first stage SB1 proceeds to a second stage SB2 at which the subtracting part 41 processes the zeroth through the (N/4−1)th product data into a succession of (3N/4) through Nth particular data having a negative polarity in common. In other words, the zeroth through the (N/4−1)th product data are processed in accordance with Equation (22a). The subtracting part 41 for carrying out the second stage SB2 will be referred to as a particular processing arrangement.
The second stage SB2 proceeds to a third stage SB3 at which the subtracting part 41 processes the zeroth through the (3N/4−1)th product data into a succession of zeroth through (N/4)th specific data having a positive polarity in common. In other words, the (N/4)th through the (N−1)th product data are processed in accordance with Equation (22b). The subtracting part 41 for carrying out the third stage SB3 will be referred to as a specific processing arrangement.
The third stage SB3 proceeds to a fourth stage SB4 at which the subtracting part 41 combines the particular and the specific data successions into a succession of zeroth through (N−1−2p)th and 2pth through (N−1)th combined data. When the fourth stage SB3 is carried out, the subtracting part 41 will be referred to as a combining arrangement.
The fourth stage SB4 proceeds to a fifth stage SB5 at which the subtracting part 41 subtracts the (N−1−2p)th combined datum from the 2pth combined datum in accordance with Equation (26) to produce a difference and the local signal that is representative of the difference. The subtracting part 41 for carrying out the fifth stage SB5 will be referred to as a subtracting arrangement.
The fifth stage SB5 proceeds to a sixth stage SB6 at which the multiplying part 42 carries out multiplication between exp(−2πjp/N) and the local signal in accordance with Equation (28) to produce an internal product to make the processed signal represent the internal product. The multiplying part 42 will be referred to as an internal multiplying arrangement.
Returning to FIG. 4, the forward FFT part 23 is connected to the multiplying part 42 and is for carrying out the linear forward FFT on the processed signal in accordance with Equation (30) to produce an internal signal representative of a result of the forward FFT. The forward FFT part 23 is herein referred to as an internal transform carrying out arrangement.
The second forward processing part 22 is connected to the forward FFT part 23 and is for processing the internal signal into the forward transformed signal in accordance with Equation (31). More particularly, the second forward processing part 22 carries out multiplication between the internal signal and [−2πj(k+½)/(2N)] into a local product, namely, a real part, to make the forward transformed signal represent the local product. In this event, the second forward processing part 22 will be referred to as an internal multiplying arrangement. A combination of the first forward processing, the second forward processing, and the forward FFT parts 21, 22, and 23 will be referred to as a transform carrying out arrangement.
Referring to FIG. 6 together with FIG. 4, operation of the first inverse processing part 31 will be described at first. At a first stage SC1, the first inverse processing part 31 is supplied with the forward transformed signal from the second forward processing part 22. The first stage SC1 proceeds to a second stage SC2 at which the first inverse processing part 31 processes the 2kth apparatus input datum into a kth particular datum. In other words, the forward transformed signal is processed in accordance with Equation (37a). In this event, the first inverse processing part 16 will be referred to as a particular processing arrangement.
The second stage SC2 proceeds to a third stage SC3 at which the first inverse processing part 31 processes the (2k+1)th apparatus input datum into a (N−1−k)th specific datum. In other words, the forward transformed signal is processed in accordance with Equation (37c). In this event, the first inverse processing part 16 will be referred to as a specific processing arrangement.
The third stage SC3 proceeds to a fourth stage SC4 at which the first inverse processing part 31 carries out multiplication between exp(2njk/N) and each of the kth particular and the (N−1−k)th specific data in accordance with Equation (38) into the processed signal. In this event, the first inverse processing part 16 will be referred to as a calculation arrangement.
In FIG. 4, the inverse FFT part 33 carries out the linear inverse FFT on the processed signal in accordance with Equation (40) to produce an internal signal representative of a result of the inverse FFT. The inverse FFT part 23 will be referred to as an internal transform carrying out arrangement.
Referring to FIG. 7 together with FIG. 4, the description will be directed to operation of the second inverse processing part 32. The inverse FFT part 23 produces, as the internal signal, a succession of zeroth through (p−1)th and pth through (N/2−1)th internal data. At a first stage SD1, the second inverse processing part 32 is supplied with the internal signal from the inverse FFT part 23.
The first stage SD1 proceeds to a second stage SD2 at which the second inverse processing part 32 carries out multiplication between the pth internal datum and the exp[2πj(p+½)/(2N)] in accordance with Equation (41) into a local product to make the inverse transformed signal represent the local product. The local product is a succession of zeroth through (N/4−1)th and (N/4)th through (N/2−1)th product data. In this event, the second inverse processing part 32 will be referred to as a multiplying arrangement.
The second stage SD2 proceeds to a third stage SD3 at which the second inverse processing part 32 processes the zeroth through the (N/4−1)th product data in accordance with Equation (42a) into a first succession of (3N/4−1)th through (N/2)th particular data in a descending order and a second succession of (3N/4)th through Nth particular data in ascending order. The particular data of the first and the second successions have a first polarity in common. In this event, the second inverse processing part 32 will be referred to as a particular processing arrangement.
The third stage SD3 proceeds to a fourth stage SD4 at which the second inverse processing part 32 processes the (N/4)th through the (N/2−1)th product data in accordance with Equation (42b) into a first succession of zeroth through (N/4−1)th specific data in an ascending order and a second succession of (N/2−1)th through (N/4)th specific data in a descending order. The specific data of the first and the second successions have a second polarity in common. The second polarity is different from the first polarity. In this event, the second inverse processing part 32 will be referred to as a specific processing arrangement.
While the present invention has thus far been described in connection with only a few embodiment thereof, it will readily be possible for those skilled in the art to put this invention into practice in various other manners. For example, the block length N may be equal to 256 or 512.

Claims (46)

1. An apparatus for carrying out a forward modified discrete cosine transform comprising:
an input signal;
a multiplier, said multiplier multiplying a predetermined forward transform window function and said input signal and outputting as a result a product signal;
transform carrying out means connected to said multiplier for carrying out a linear forward modified discrete cosine transform on said product signal and for outputting a forward modified discrete cosine transformed signal representative of said linear forward modified discrete cosine transform, wherein said transform carrying out means further comprises:
a first processing device connected to receive said product signal from said multiplier, said first processing device outputting a processed signal;
means connected to said first processing device for receiving said processed signal and carrying out a forward fast Fourier transform on said processed signal and outputting an internal signal representative of said forward fast Fourier transform; and
a second processing device connected to receive said internal signal from said means for carrying out a forward fast Fourier transform, said second processing device processing said internal signal and outputting as a result said forward modified discrete cosine transformed signal.
2. An apparatus as recited in claim 1, wherein said product signal produced by said multiplier, is a succession of zeroth through (N/4−1)th and (N/4)th through (N−1)th product data, where N represents an integral multiple of four;
said first processing device includes a particular processing means connected to said multiplier for processing said zeroth through said (N/4−1)th product data into a succession of (3N/4) through Nth particular data having a first polarity in common;
said first processing device further includes a specific processing means connected to said multiplier for processing said (N/4)th through said (N−1)th product data into a succession of zeroth through (3N/4−1)th specific data having a second polarity in common, said second polarity being different from said first polarity; and
a calculating means is connected to said particular processing means, said specific processing means, and said means for carrying out a forward fast Fourier transform, for calculating said processed signal by using a predetermined signal and each of said (3N/4) through said Nth particular and said zeroth through said (3N/4−1)th specific data.
3. An apparatus as recited in claim 2, wherein said predetermined signal represents exp(−2πjn/(2N)), and said calculating means multiplies said exp(−2πjn/(2N)) and each of said (3N/4) through said Nth particular data and said zeroth through the (3N/4−1)th specific data to produce said processed signal, where j represents an imaginary unit, n being variable between 0 and N−1, both inclusive.
4. An apparatus as recited in claim 2, wherein said calculating means comprises:
combining means connected to said particular and said specific processing means for combining said particular and said specific data successions into a succession of zeroth through (N−1−2p)th and 2pth through (N−1)th combined data, where p is variable between 0 and N/2−1, both inclusive;
a subtractor connected to said combining means, said subtractor subtracting said (N−1−2p)th combined datum from said 2pth combined datum to produce a difference and output a local signal representative of said difference; and
internal multiplying means connected to said subtractor and said means for carrying out a forward fast Fourier transform, for multiplying a predetermined signal with said local signal into an internal product to make said processed signal represent said internal product.
5. An apparatus as recited in claim 4, wherein said predetermined signal represents exp(−2πjp/N), and said internal multiplying means multiples said exp(−2πjp/N) and said local signal to produce said processed signal, where j represents an imaginary unit, p being variable between 0 and N−1, both inclusive.
6. An apparatus as recited in claim 1, wherein said internal signal is a succession of zeroth through (K−1)th and kth through (N/2−1)th internal data, where N represents an integral multiple of four, k being variable between 0 and N−1, both inclusive, and wherein said second processing device includes internal multiplying means connected to said means for carrying out a forward fast Fourier transform, for multiplying said kth internal datum and exp(−2πj(k+½)/(2N)) into a local product to make said forward transformed signal represent said local product, where j represents an imaginary number.
7. An apparatus for carrying out an inverse modified discrete cosine transform comprising:
an input signal comprising a modified discrete cosine transformed signal;
transform carrying out means for carrying out a linear inverse modified discrete cosine transform on said input signal and for outputting an inverse modified discrete cosine transformed signal representative of a result of said linear inverse modified discrete cosine transform;
a multiplier connected to said transform carrying out means, said multiplier multiplying a predetermined inverse transform window function and said inverse modified discrete cosine transformed signal to produce a product signal; wherein said transform carrying out means comprises:
a first processing device which receives said input signal and outputs a processed signal;
internal transform carrying out means connected to said first processing device for carrying out an inverse fast Fourier transform on said processed signal and for outputting as a result of said inverse fast Fourier transform an internal signal; and
a second processing device connected to said internal transform carrying out means to receive said internal signal and output as a result of processing said internal signal said inverse modified discrete cosine transformed signal.
8. An apparatus as recited in claim 7, said input signal being a succession of zeroth through (N−1)th apparatus input data, where N represents an integral multiple of four, wherein said first processing device includes a first multiplier, said multiplier multiplying said zeroth through said (N−1)th apparatus input data and exp(2π(N/4+½)k/N) and outputting as a result a first product, said processed signal representing said first product, where j represents an imaginary unit, k being variable between 0 and N−1, both inclusive.
9. An apparatus as recited in claim 7, said internal transform carrying out means producing, as said internal signal, a succession of zeroth through (N−1)th internal data, where N represents an integral multiple of four, wherein said second processing device includes a second multiplier connected to said internal transform carrying out means, said multiplier multiplying said zeroth through said (N−1)th internal data and exp(−2πj(n+N/4+½)/(2N)) into a second product, said inverse transformed signal representing said second product, where j represents an imaginary unit, n being variable between 0 and N−1, both inclusive.
10. An apparatus as recited in claim 7, wherein said input signal is a succession of zeroth through (N/2−1)th apparatus input data, where N represents an integral multiple of four;
said first processing device includes a particular processing means for processing said 2kth apparatus input datum into a kth particular datum, where k is variable between 0 and N/2−1, both inclusive and a specific processing means for processing said (2k+1)th apparatus input datum into a (N−1−k)th specific datum; and
a calculating means connected to said particular and said specific processing means for calculating said processed signal by using a predetermined signal and each of said kth particular and said (N−1−k)th specific data.
11. An apparatus as recited in claim 10, wherein said predetermined signal represents exp(2πjk/N), where j represents an imaginary unit, and said calculating means multiplies said predetermined signal and said kth particular datum.
12. An apparatus as recited in claim 7, said internal transform carrying out means producing, as said internal signal, a succession of zeroth through (p−1)th and pth through (N/2−1)th internal data, where N represents an integral multiple of four, p being variable between 0 and (N/2−1), both inclusive, wherein said second processing device comprises:
a multiplier connected to said internal transform carrying out means, said multiplier multiplying said pth internal datum and exp(2πj(p+½)/2N) resulting in a local product to make said inverse transformed signal represent said local product, j representing an imaginary unit, said local product being a succession of zeroth through (N/4−1)th and (N/4)th through (N/2−1)th product data;
a particular processing means connected to said multiplier for processing said zeroth through said (N/4−1)th product data into a first succession of (3/N4−1) ( 3N/41 )th through (N/2)th particular data in a descending order and a second succession of (3N/4)th through Nth particular data in an ascending order, said particular data of said first and said second successions having a first polarity in common; and
a specific processing means connected to said multiplier for processing said (N/4)th through (N/2−1)th product data into a first succession of zeroth through (N/4−1)th specific data in an ascending order and a second succession of (N/2−1)th through (N/4)th specific data in a descending order, the specific data of said first and said second successions having a second polarity in common, said second polarity being different from said first polarity.
13. The apparatus of claim 1 wherein said input signal is an audio signal.
14. The apparatus of claim 1 wherein said modified discrete cosine transformed signal has a block length N of 512.
15. The apparatus of claim 1 wherein said transform carrying out means calculates fewer than N2 multiplications.
16. The apparatus of claim 1 wherein said transform carrying out means calculates fewer than N(N−1 ) additions.
17. The apparatus of claim 1 wherein said processed signal is formed by multiplying said input signal by a predetermined factor.
18. The apparatus of claim 17 wherein said modified discrete cosine transformed signal comprises said internal signal representative of said forward fast Fourier transform multiplied by a second predetermined factor.
19. The apparatus of claim 7 wherein said modified discrete cosine transformed signal is a transformed audio signal.
20. The apparatus of claim 7 wherein said modified discrete transformed signal has a block length N of 512.
21. The apparatus of claim 7 wherein said transform carrying out means calculates fewer than N2 multiplications to carry out said inverse discrete cosine transform.
22. The apparatus of claim 21 wherein said transform carrying out means calculates fewer than N(N−1 ) additions to carry out said inverse discrete cosine transform.
23. The apparatus of claim 7 wherein said processed signal comprises said input signal multiplied by a predetermined factor.
24. The apparatus of claim 23 wherein said inverse modified discrete cosine transform signal comprises said internal signal representative of said inverse forward fast Fourier transform multiplied by a second predetermined factor.
25. An apparatus for carrying out an inverse transform comprising:
an input signal y(m,k);
transform carrying out means for carrying out a linear inverse transform xt(m,n) on said input signal y(m,k) and for outputting an inverse transformed signal representative of a result of said linear inverse transform, said linear inverse transform being defined by: xt ( m , n ) = 2 / N k = 0 N - 1 y ( m , k ) cos [ 2 π ( n + n0 ) ( k + 1 / 2 ) / N ]
where m represents a block number, n represents a sample number, N represents a block length and k is an integer between 0 and N−1;
a multiplier connected to said transform carrying out means, said multiplier multiplying a predetermined inverse transform window function and said inverse transformed signal to produce a product signal; wherein said transform carrying out means comprises:
a first processing device which receives said input signal y(m,k) and outputs a processed signal, said processed signal comprising a product signal formed by multiplying said input signal y(m,k) by a predetermined factor;
internal transform carrying out means connected to said first processing device for carrying out an inverse fast Fourier transform on said processed signal and for outputting as a result of said inverse fast Fourier transform an internal signal; and
a second processing device connected to said internal transform carrying out means to receive said internal signal and output as a result of processing said internal signal said inverse transformed signal.
26. The apparatus of claim 17 wherein N is 512.
27. The apparatus of claim 17 wherein said transform carrying out means calculates fewer than N2 multiplications.
28. The apparatus of claim 19 wherein said transform carrying out means calculates fewer than N(N−1 ) additions.
29. An apparatus for carrying out an inverse transform comprising:
a transformed discrete audio input signal having a block size (N) of 512;
transform carrying out means for carrying out a linear inverse transform on said input signal by calculating fewer than N 2 multiplications and fewer than N(N−1 ) additions, and for outputting an inverse transformed signal representative of a result of said linear inverse transform;
a multiplier connected to said transform carrying out means, said multiplier multiplying a predetermined inverse transform window function and said inverse transformed signal to produce a product signal; wherein said transform carrying out means comprises:
a first processing device which receives said input signal and outputs a processed signal;
internal transform carrying out means connected to said first processing device for carrying out an inverse fast Fourier transform on said processed signal and for outputting as a result of said inverse fast Fourier transform an internal signal; and
a second processing device connected to said internal transform carrying out means to receive said internal signal and output as a result of processing said internal signal said inverse transformed signal.
30. An apparatus for carrying out a forward transform comprising:
an input signal x(n);
a multiplier for multiplying a predetermined forward transform window function and said input signal x(n) to produce a product signal to produce a product signal xh(n);
transform carrying out means connected to said multiplier for carrying out a linear forward transform on said product signal xh(n) and for outputting a forward transformed signal y(m,k) representative of a result of said forward transform, said linear forward transform being defined by; y ( m , k ) = n = 0 N - 1 xh ( n ) cos [ 2 π ( k + 1 / 2 ) ( n + n 0 ) / N ]
where m represents a block number, n represents a sample number, N represents a block length and k is an integer between 0 and N−1;
wherein said transform carrying out means comprises:
a first processing device which receives said product signal xh(n) and outputs a processed signal, said processed signal comprising a product signal formed by multiplying said product signal xh(n) by a predetermined factor;
internal transform carrying out means connected to said first processing device for carrying out a forward fast Fourier transform on said processed signal and for outputting as a result of said forward fast Fourier transform an internal signal; and
a second processing device connected to said internal transform carrying out means to receive said internal signal and output as a result of processing said internal signal said forward transformed signal.
31. An apparatus for carrying out a forward transform comprising:
an input signal having a block size (N) of 512;
a multiplier for multiplying a predetermined forward transform window function and said input signal to produce a product signal; and
transform carrying out means connected to said multiplier for carrying out a linear forward transform on said product signal by calculating fewer than N 2 multiplications and fewer than N(N−1 ) additions, and for outputting a forward transformed signal representative of a result of said linear forward transform;
wherein said transform carrying out means comprises:
a first processing device which receives said product signal and outputs a processed signal;
internal transform carrying out means connected to said first processing device for carrying out a forward fast Fourier transform on said processed signal and for outputting as a result of said forward fast Fourier transform an internal signal; and
a second processing device connected to said internal transform carrying out means to receive said internal signal and output as a result of processing said internal signal said forward transformed signal.
32. An apparatus for carrying out a forward modified discrete cosine transform comprising:
an input signal;
a multiplier, said multiplier multiplying a predetermined forward transform window function and said input signal and outputting as a result a product signal; and
transform carrying out means connected to said multiplier for carrying out a linear forward modified discrete cosine transform on said product signal and for outputting a forward modified discrete cosine transformed signal representative of said linear forward modified discrete cosine transform, wherein said transform carrying out means comprises:
a first processing device connected to receive said product signal having N samples, N being an integer, from said multiplier, said first processing device outputting a processed signal having M samples, M being an integer different from N;
means connected to said first processing device for receiving said processed signal and for carrying out a forward fast Fourier transform on said processed signal, and for outputting an internal signal representative of said forward fast Fourier transform; and
a second processing device connected to receive said internal signal from said means for carrying out a forward fast Fourier transform, said second processing device processing said internal signal and outputting as a result said forward modified discrete cosine transformed signal.
33. The apparatus as claimed in claim 32, wherein M is smaller than N.
34. The apparatus as claimed in claim 32, wherein M is equal to N/2.
35. An apparatus for carrying out an inverse modified discrete cosine transform comprising:
an input signal having M samples, M being an integer;
transform carrying out means carrying out a linear inverse modified discrete cosine transform on said input signal and for outputting an inverse modified discrete cosine transformed signal having M samples representative of said linear inverse modified discrete cosine transform; and
a multiplier connected to said transform carrying out means, said multiplier multiplying a predetermined inverse transform window function and said linear inverse modified discrete cosine transformed signal to produce a product signal having N samples, N being an integer different from M, wherein said transform carrying out means comprises:
a first processing device which receives said input signal, said first processing device outputting a processed signal;
internal transform carrying out means connected to said first processing device for carrying out an inverse fast Fourier transform on said processed signal as a result of processing said inverse fast Fourier transform an internal signal; and
a second processing device connected to said internal transform carrying out means to receive said internal signal and output as a result of processing said inverse modified discrete cosine transformed signal.
36. The apparatus as claimed in claim 35, wherein M is smaller than N.
37. The apparatus as claimed in claim 35, wherein M is equal to N/2.
38. An apparatus for carrying out a forward transform comprising:
an input signal x(n);
a multiplier for multiplying a predetermined forward transform window function and said input signal x(n) to produce a product signal xh(n); and
transform carrying out means connected to said multiplier for carrying out a linear forward transform on said product signal xh(n) and for outputting a forward transformed signal y(m,k) representative of a result of said forward transform, said linear forward transform being defined by; y ( m , k ) = n = 0 N - 1 xh ( n ) cos [ 2 π ( k + 1 / 2 ) ( n + n 0 ) / N ]
where m represents a block number, n represents a sample number, N represents a block length and k is an integer between 0 and N−1;
wherein said transform carrying out means comprises:
a first processing device which receives said product signal xh(n) having N samples and outputs a processed signal having M samples, M being an integer different from N, said processed signal comprising a product signal formed by multiplying said product signal xh(n) by a predetermined factor;
internal transform carrying out means connected to said first processing device for carrying out a forward fast Fourier transform on said processed signal and for outputting as a result of said forward fast Fourier transform an internal signal; and
a second processing device connected to said internal transform carrying out means to receive said internal signal and output as a result of processing said internal signal said forward transformed signal.
39. The apparatus as claimed in claim 38, wherein M is smaller than N.
40. The apparatus as claimed in claim 38, wherein M is equal to N/2.
41. An apparatus for carrying out an inverse transform comprising:
an input signal y(m,k) having M samples, M being an integer;
transform carrying out means for carrying out a linear inverse transform on said input signal y(m,k) and for outputting an inverse transformed signal xt(m,n) representative of a result of said linear inverse transform, said linear inverse transform being defined by: xt ( m , n ) = 2 / N k = 0 N - 1 y ( m , k ) cos [ 2 π ( n + n0 ) ( k = 1 / 2 ) / N ]
where m represents a block number, n represents a sample number, N represents a block length and k is an integer between 0 and N−1;
a multiplier connected to said transform carrying out means, said multiplier multiplying a predetermined inverse transform window function and said inverse transformed signal xt(m,n) to produce a product signal having N samples, N being an integer different from M;
wherein said transform carrying out means comprises:
a first processing device which receives said input signal y(m,k) and outputs a processed signal, said processed signal comprising a product signal formed by multiplying said input signal y(m,k) by a predetermined factor;
internal transform carrying out means connected to said first processing device for carrying out an inverse fast Fourier transform on said processed signal and for outputting as a result of said inverse fast Fourier transform an internal signal; and
a second processing device connected to said internal transform carrying out means to receive said internal signal and output as a result of processing said internal signal said inverse transformed signal.
42. The apparatus as claimed in claim 41, wherein M is smaller than N.
43. The apparatus as claimed in claim 41, wherein M is equal to N/2.
44. An apparatus for carrying out an inverse transform comprising:
an input signal y(m,k) having M samples, M being an integer;
transform carrying out means for carrying out a linear inverse transform on said input signal y(m,k) and for outputting an inverse transformed signal xt(m,n) representative of a result of said linear inverse transform, said linear inverse transform xt(m,n) being determined using the sum: k = 0 M - 1 y ( m , k ) cos [ 2 π ( n + n0 ) ( k = 1 / 2 ) / N ]
where m represents a block number, n represents a sample number, N represents a block length and k is an integer between 0 and M−1;
a multiplier connected to said transform carrying out means, said multiplier multiplying a predetermined inverse transform window function and said inverse transformed signal xt(m,n) to produce a product signal having N samples, N being an integer different from M;
wherein said transform carrying out means comprises:
a first processing device which receives said input signal y(m,k) and outputs a processed signal, said processed signal comprising a product signal formed by multiplying said input signal y(m,k) by a predetermined factor;
internal transform carrying out means connected to said first processing device for carrying out an inverse fast Fourier transform on said processed signal and for outputting as a result of said inverse fast Fourier transform an internal signal; and
a second processing device connected to said internal transform carrying out means to receive said internal signal and output as a result of processing said internal signal said inverse transformed signal.
45. The apparatus as claimed in claim 44, wherein M is smaller than N.
46. The apparatus as claimed in claim 44, wherein M is equal to N/2.
US10/642,968 1990-06-12 2003-08-19 Fast calculation apparatus for carrying out a forward and an inverse transform Expired - Lifetime USRE40854E1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US10/642,968 USRE40854E1 (en) 1990-06-12 2003-08-19 Fast calculation apparatus for carrying out a forward and an inverse transform

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP15166290A JP3185214B2 (en) 1990-06-12 1990-06-12 Forward DCT and inverse DCT for improved DCT
US07/712,888 US5218561A (en) 1990-06-12 1991-06-12 Fast calculation apparatus for carrying out a forward and an inverse transform
US10/642,968 USRE40854E1 (en) 1990-06-12 2003-08-19 Fast calculation apparatus for carrying out a forward and an inverse transform

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US07/712,888 Reissue US5218561A (en) 1990-06-12 1991-06-12 Fast calculation apparatus for carrying out a forward and an inverse transform

Publications (1)

Publication Number Publication Date
USRE40854E1 true USRE40854E1 (en) 2009-07-14

Family

ID=15523484

Family Applications (2)

Application Number Title Priority Date Filing Date
US07/712,888 Ceased US5218561A (en) 1990-06-12 1991-06-12 Fast calculation apparatus for carrying out a forward and an inverse transform
US10/642,968 Expired - Lifetime USRE40854E1 (en) 1990-06-12 2003-08-19 Fast calculation apparatus for carrying out a forward and an inverse transform

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US07/712,888 Ceased US5218561A (en) 1990-06-12 1991-06-12 Fast calculation apparatus for carrying out a forward and an inverse transform

Country Status (5)

Country Link
US (2) US5218561A (en)
EP (2) EP1179787A1 (en)
JP (1) JP3185214B2 (en)
CA (1) CA2044351C (en)
DE (1) DE69132844T2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140232586A1 (en) * 2013-02-19 2014-08-21 Infineon Technologies Ag Method and Device for Radar Applications

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5115240A (en) * 1989-09-26 1992-05-19 Sony Corporation Method and apparatus for encoding voice signals divided into a plurality of frequency bands
US5349549A (en) * 1991-09-30 1994-09-20 Sony Corporation Forward transform processing apparatus and inverse processing apparatus for modified discrete cosine transforms, and method of performing spectral and temporal analyses including simplified forward and inverse orthogonal transform processing
JP3153933B2 (en) * 1992-06-16 2001-04-09 ソニー株式会社 Data encoding device and method and data decoding device and method
JPH06112909A (en) * 1992-09-28 1994-04-22 Sony Corp Signal converter for improved dct
JP3186292B2 (en) * 1993-02-02 2001-07-11 ソニー株式会社 High efficiency coding method and apparatus
JP3186307B2 (en) * 1993-03-09 2001-07-11 ソニー株式会社 Compressed data recording apparatus and method
JP3123290B2 (en) * 1993-03-09 2001-01-09 ソニー株式会社 Compressed data recording device and method, compressed data reproducing method, recording medium
US5581654A (en) * 1993-05-25 1996-12-03 Sony Corporation Method and apparatus for information encoding and decoding
US5608713A (en) * 1994-02-09 1997-03-04 Sony Corporation Bit allocation of digital audio signal blocks by non-linear processing
JP3186412B2 (en) * 1994-04-01 2001-07-11 ソニー株式会社 Information encoding method, information decoding method, and information transmission method
JP3277682B2 (en) * 1994-04-22 2002-04-22 ソニー株式会社 Information encoding method and apparatus, information decoding method and apparatus, and information recording medium and information transmission method
JP3277699B2 (en) * 1994-06-13 2002-04-22 ソニー株式会社 Signal encoding method and apparatus, and signal decoding method and apparatus
JP3277705B2 (en) 1994-07-27 2002-04-22 ソニー株式会社 Information encoding apparatus and method, and information decoding apparatus and method
JP3341474B2 (en) * 1994-07-28 2002-11-05 ソニー株式会社 Information encoding method and decoding method, information encoding device and decoding device, and information recording medium
US6167093A (en) * 1994-08-16 2000-12-26 Sony Corporation Method and apparatus for encoding the information, method and apparatus for decoding the information and method for information transmission
JP3557674B2 (en) * 1994-12-15 2004-08-25 ソニー株式会社 High efficiency coding method and apparatus
JPH11112985A (en) 1997-09-29 1999-04-23 Sony Corp Image coder, image coding method, image decoder, image decoding method and transmitting medium
AU2001234971A1 (en) * 2000-02-09 2001-08-20 T. C. Cheng Fast method for the forward and inverse mdct in audio coding
JP2001285073A (en) * 2000-03-29 2001-10-12 Sony Corp Device and method for signal processing
US20090099844A1 (en) * 2007-10-16 2009-04-16 Qualcomm Incorporated Efficient implementation of analysis and synthesis filterbanks for mpeg aac and mpeg aac eld encoders/decoders

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3506912A1 (en) 1985-02-27 1986-08-28 Telefunken Fernseh Und Rundfunk Gmbh, 3000 Hannover METHOD FOR TRANSMITTING AN AUDIO SIGNAL
DE3621513A1 (en) 1985-02-27 1988-01-07 Telefunken Fernseh & Rundfunk Audio signal transmission
US5109417A (en) 1989-01-27 1992-04-28 Dolby Laboratories Licensing Corporation Low bit rate transform coder, decoder, and encoder/decoder for high-quality audio

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4184049A (en) * 1978-08-25 1980-01-15 Bell Telephone Laboratories, Incorporated Transform speech signal coding with pitch controlled adaptive quantizing
JPS5762096A (en) * 1980-09-30 1982-04-14 Nippon Electric Co Method and device for transmitting adaptive voice signal
JPS57161795A (en) * 1981-03-30 1982-10-05 Nippon Electric Co Adaptive type conversion encoding method and apparatus
FR2646046B1 (en) * 1989-04-18 1995-08-25 France Etat METHOD AND DEVICE FOR COMPRESSING IMAGE DATA BY MATHEMATICAL TRANSFORMATION WITH REDUCED COST OF IMPLEMENTATION, IN PARTICULAR FOR TRANSMISSION AT REDUCED THROUGHPUT OF IMAGE SEQUENCES

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3506912A1 (en) 1985-02-27 1986-08-28 Telefunken Fernseh Und Rundfunk Gmbh, 3000 Hannover METHOD FOR TRANSMITTING AN AUDIO SIGNAL
DE3621513A1 (en) 1985-02-27 1988-01-07 Telefunken Fernseh & Rundfunk Audio signal transmission
US5109417A (en) 1989-01-27 1992-04-28 Dolby Laboratories Licensing Corporation Low bit rate transform coder, decoder, and encoder/decoder for high-quality audio

Non-Patent Citations (8)

* Cited by examiner, † Cited by third party
Title
Duhamel et al., "A DCT chip based on a new structured and computationally efficient DCT algoritm", Proceedings of the International Symposium on Circuits and Systems, New Orleans, May 1-3, 1990, New York, IEEE, US, vol. 1 Conf. 23, May 1, 1990, pp. 77-80.
H. Nussbaumer, "Fast Multidimensional Discrete Cosite Transforms", IBM Technical Disclosure Bulletin, vol. 23, No. 5, Oct. 1980, pp. 1976-1981. *
H. Nussbaumer, "Improved Approach for the Computation of Multidimensional Cosine Transforms", IBM Technical Disclosure Bulletin, vol. 23, No. 10, Mar. 1981, pp. 4517-4521. *
Henrique S. Malvar, "Lapped Transforms for Efficient Transform/Subband Coding", IEEE Transactions on Acoustics, Speech, and Signal Processing, vol. 38, No. 6 (Jun. 1990) pp. 969-978.
J.P. Princeton, A.W. Johnson and A.B. Bradley, "Subbard/Transform Coding Using Filter Bank Designs Based on Time Domain Aliasing Cancellation", IEEE (1987) pp. 2161-2164.
Madihally J. Narasimha and Allen M. Peterson, "On the Computation of the Discrete Cosine Transform", IEEE Transactions On Communications, vol. Com-26, No. 6 (Jun. 1978) pp. 934-936.
Schiller, N., "Overlapping Block Transform Image Coding Preserving Equal Number of Samples and Coefficients", SPIE vol. 1001 Visual Communications and Image Processing 1988, pp. 834-839. *
Thomas Duncan Lookabaugh, "Variable Rate and Adaptive Frequency Domain Vector Quantization of Speech" A Dissertion Submitted To The Department of Electrical Engineering and the Committee on Graduate Studies of Stanford University (Jun. 1988).

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140232586A1 (en) * 2013-02-19 2014-08-21 Infineon Technologies Ag Method and Device for Radar Applications
US9279883B2 (en) * 2013-02-19 2016-03-08 Infineon Technologies Ag Method and device for radar applications
US10254385B2 (en) 2013-02-19 2019-04-09 Infineon Technologies Ag Method and device for radar applications

Also Published As

Publication number Publication date
CA2044351C (en) 1994-08-02
JPH0444099A (en) 1992-02-13
US5218561A (en) 1993-06-08
CA2044351A1 (en) 1991-12-13
DE69132844T2 (en) 2002-04-11
JP3185214B2 (en) 2001-07-09
EP0463473B1 (en) 2001-12-05
EP1179787A1 (en) 2002-02-13
DE69132844D1 (en) 2002-01-17
EP0463473A3 (en) 1993-09-08
EP0463473A2 (en) 1992-01-02

Similar Documents

Publication Publication Date Title
USRE40854E1 (en) Fast calculation apparatus for carrying out a forward and an inverse transform
Toan et al. Taylor wavelet method for fractional delay differential equations
AU722030B2 (en) A computer system for performing complex digital filters
US7433907B2 (en) Signal analyzing method, signal synthesizing method of complex exponential modulation filter bank, program thereof and recording medium thereof
EP0128298B1 (en) Orthogonal transformer and apparatus operational thereby
Laroche et al. New phase-vocoder techniques are real-time pitch shifting, chorusing, harmonizing, and other exotic audio modifications
US3971927A (en) Modular discrete cosine transform system
EP0590790A2 (en) Modified DCT signal transforming system
US6539412B1 (en) Discrete wavelet transform apparatus for lattice structure
US5825676A (en) Orthogonal converting apparatus
KR100189195B1 (en) Device executing two-dimension dct/dst/dht by systoric array
US20050144209A1 (en) Apparatus and method for selectively performing Fast Hadamard Transform or fast fourier transform
KR930009636B1 (en) Filtering method on the transform domain having the papeline structure
US5754438A (en) Frequency analyzing method and apparatus for time series data
KR0151523B1 (en) Arithmatic processing speed-up circuit for digital audio decoder
US5805484A (en) Orthogonal function generating circuit and orthogonal function generating method
Schobben et al. Efficient realization of the block frequency domain adaptive filter
JP2007228349A (en) Sampling frequency converting method, its program, and its recording medium
JP3715666B2 (en) Orthogonal transformation apparatus and method
Cha et al. A morphological polynomial transform
JP3630727B2 (en) Orthogonal transformation device and orthogonal transformation method
JP3060767B2 (en) Modified discrete cosine transform and inverse transform method and apparatus
JP2953918B2 (en) Arithmetic unit
KR20020035203A (en) Discrete wavelet encoder using quadrature mirror filter
JP2553745B2 (en) Speech analysis method and speech analysis device