Fast Computational Structures for an Efficient Implementation of The
Total Page:16
File Type:pdf, Size:1020Kb
ARTICLE IN PRESS Signal Processing ] (]]]]) ]]]–]]] Contents lists available at ScienceDirect Signal Processing journal homepage: www.elsevier.com/locate/sigpro Fast computational structures for an efficient implementation of the complete TDAC analysis/synthesis MDCT/MDST filter banks Vladimir Britanak a,Ã, Huibert J. Lincklaen Arrie¨ns b a Institute of Informatics, Slovak Academy of Sciences, Dubravska cesta 9, 845 07 Bratislava, Slovak Republic b Delft University of Technology, Department of Electrical Engineering, Mathematics and Computer Science, Mekelweg 4, 2628 CD Delft, The Netherlands article info abstract Article history: A new fast computational structure identical both for the forward and backward Received 27 May 2008 modified discrete cosine/sine transform (MDCT/MDST) computation is described. It is Received in revised form the result of a systematic construction of a fast algorithm for an efficient implementa- 8 January 2009 tion of the complete time domain aliasing cancelation (TDAC) analysis/synthesis MDCT/ Accepted 10 January 2009 MDST filter banks. It is shown that the same computational structure can be used both for the encoder and the decoder, thus significantly reducing design time and resources. Keywords: The corresponding generalized signal flow graph is regular and defines new sparse Modified discrete cosine transform matrix factorizations of the discrete cosine transform of type IV (DCT-IV) and MDCT/ Modified discrete sine transform MDST matrices. The identical fast MDCT computational structure provides an efficient Modulated lapped transform implementation of the MDCT in MPEG layer III (MP3) audio coding and the Dolby Labs Modulated complex lapped transform Fast computational structure AC-3 codec. All steps to derive the computational structure are described in detail, and MPEG audio coding to put them into perspective a comprehensive list of references classified into categories is provided covering new research results achieved in the time period 1999–2008 in theoretical and practical developments of TDAC analysis/synthesis MDCT/MDST filter banks (general mathematical, symmetry and special properties, fast MDCT/MDST algorithms and efficient software/hardware implementations of the MDCT in MP3). Crown Copyright & 2009 Published by Elsevier B.V. All rights reserved. 1. Introduction developed MPEG-4 high-efficiency AAC (HE-AAC) [10], proprietary digital audio compression algorithms such as The complete time domain aliasing cancellation Sony ATRAC (adaptive transform acoustics coding)/ (TDAC) analysis/synthesis MDCT (modified discrete cosine ATRAC2/SDDS (Sony dynamic digital sound), AT&T per- transform) filter banks [1,2] are the fundamental proces- ceptual audio coder (PAC) or Lucent Technologies PAC/ sing blocks in the current international audio coding Enhanced PAC/Multichannel PAC [4,13], and Dolby Labs standards. Well known modern information technologies AC-3/Dolby Digital/Dolby SR.D [7]. A general overview of for high-quality compression and decompression of digital audio codecs can be found in [3,4,12,13]. In addition, the audio signals in consumer electronics are e.g., the MPEG complete TDAC analysis/synthesis MDCT filter banks are family: MPEG-1 layer III ISO/IEC 11172-3 [5], MPEG-2 layer also used in the non-proprietary, patent-and-royalty-free III ISO/IEC 13818-3 [6] known as MP3, MPEG-2 AAC [8], Ogg Vorbis codec [11]. Thus, an efficient implementation of MPEG-4 audio ISO/IEC 14496-2 [9] and the recently the TDAC MDCT processor has become the key technology to realize low-cost audio decoders in (portable) MP3 players and digital multimedia systems in particular. Generally, in all audio codecs the size of a data block à Corresponding author. Tel.: +4212 59411175; fax: +4212 54773 271. E-mail addresses: [email protected] (V. Britanak), transformed by the MDCT is variable ðN ¼ 12; 36; 128; 256; [email protected] (H.J.L. Arrie¨ns). 512; 2048Þ. The computation of the complete analysis/ 0165-1684/$ - see front matter Crown Copyright & 2009 Published by Elsevier B.V. All rights reserved. doi:10.1016/j.sigpro.2009.01.014 Please cite this article as: V. Britanak, H.J.L. Arrie¨ns, Fast computational structures for an efficient implementation of the complete TDAC analysis/synthesis MDCT/MDST filter banks, Signal Process. (2009), doi:10.1016/j.sigpro.2009.01.014 ARTICLE IN PRESS 2 V. Britanak, H.J.L. Arrie¨ns / Signal Processing ] (]]]]) ]]]–]]] synthesis MDCT filter banks is the most time-consuming synthesis MDCT/MDST filter banks (general mathematical, operation, and therefore, the existence of fast, efficient symmetry and special properties, fast MDCT/MDST, MLT algorithms with a simple and regular structure is very and MCLT algorithms and efficient software/hardware important. The MDCT is equivalent to the modulated implementations of the MDCT in MP3). lapped transform (MLT) [43] which belongs to the class of lapped transforms. Basis vectors of the MDCT and the 2. Definitions, basic facts and notations corresponding modified discrete sine transform (MDST) form a complex extension of the MLT, the so-called This section consists of several subsections. Besides modulated complex lapped transform (MCLT) [47]. The definitions, basic facts and notations being used in the real part of an MCLT corresponds to the MDCT or MLT, and paper, this section covers both known and new theoretical its imaginary part corresponds to the MDST. In the last research results referring to the MDCT and MDST filter decade a number of fast algorithms for the efficient banks. First, definitions of complete TDAC analysis/synth- computation of MDCT [20–42,52–58],MLT[43–46] and esis MDCT and MDST filter banks are presented (Section MCLT [47–51] have been proposed/modified/improved. 2.1). When investigating general mathematical properties Almost all existing fast algorithms developed up to now of the MDCT and MDST, and when developing fast employ other discrete sinusoidal unitary transforms such computational structures for their efficient implementa- as the discrete Fourier transform (DFT) or discrete cosine/ tion, they are frequently considered as block transforms sine transforms of type II and IV (DCT-II/DST-II and DCT- applied to a single data block. Defining them as block IV/DST-IV) of lower size, or they are based on recursive transforms enable us to investigate additional properties filter structures [52–58]. Particularly, a proposed efficient such as the periodicity and anti-periodicity of MDCT/ MDCT implementation in MP3 audio coding [22] based on MDST transform kernels, symmetry properties of MDCT/ the fast algorithm derived in [25] has been sequentially MDST basis vectors and to determine a relation between improved and optimized in terms of arithmetic complex- the MDCT and MDST (Section 2.2). An alternative way to ity and structural simplicity [24,30–32,34,36]. Recently, represent the MDCT and MDST block transforms is in MP3 audio decoders for real-time processing have been matrix–vector form. Matrix representations are very realized on high-performance programmable DSP proces- powerful tools to analyze MDCT/MDST characteristics of sors [60–62,65,70], universal RISC-based ARM processors the single data block both in time and frequency domains [63,64,67,69], and implemented into VLSI full-custom [76,77]. In particular, on the basis of matrix representa- ASIC [59,68] or semi-custom circuits (FPGA) [34,66]. tions the concept of TDAC and special MDCT/MDST In this paper, a new fast computational structure properties having an impact on audio coding performance identical both for the forward and backward MDCT/MDST are better understood (Section 2.3). computation is described. It is the result of a systematic construction of a fast algorithm for an efficient imple- mentation of the complete TDAC analysis/synthesis 2.1. Complete TDAC analysis/synthesis MDCT filter banks MDCT/MDST filter banks. Consequently, the same compu- tational structure can be used both for the encoder and The complete TDAC analysis and synthesis MDCT filter decoder, thus reducing design time and resources. The banks are, respectively, defined as [1,2,71] corresponding generalized signal flow graph is regular and rffiffiffiffi defines new sparse matrix factorizations of DCT-IV and 4 NXÀ1 p N cðtÞ ¼ w xðtÞ cos 2n þ 1 þ ð2k þ 1Þ , MDCT/MDST matrices. First, the definitions of complete k N n n 2N 2 n¼0 TDAC analysis/synthesis MDCT and MDST filter banks are N k ¼ 0; 1; ...; À 1, (1) presented. Then, the MDCT and MDST as the block 2 transforms applied to a single data block are considered rffiffiffiffi 4 ðNX=2Þ1 p N and their general mathematical, symmetry and special x^ðtÞ ¼ w cðtÞ cos 2n þ 1 þ ð2k þ 1Þ , n N n k 2N 2 properties are discussed in detail. In particular, matrix k¼0 representations of the MDCT and MDST block transforms, n ¼ 0; 1; ...; N À 1, (2) their properties and consequences from the viewpoint of terminology used in the literature are emphasized. The where wn is a windowing function, and a superscript t systematic construction of fast analysis/synthesis MDCT denotes the data-block number. N, being the length of the filter banks is described in Section 3. In Section 4 the fast data block is assumed to be an even integer. In the MDCT computational structure is derived. Finally, in analysis filter bank given by (1), for the t-th data block, N ðtÞ Section 5 the fast MDCT computational structure is windowed time domain samples fxn g are used to ðtÞ compared with existing fast algorithms and its important calculate N=2 unique transform coefficients fck g. Vice ðtÞ characteristics are discussed in detail. This fast MDCT versa, the t-th block of N=2 transform coefficients fck g is computational structure provides an efficient implemen- used to calculate N windowed time domain aliased ðtÞ tation of the MDCT in MP3 audio coding and the AC-3 samples fx^n g with the synthesis filter bank given by (2).