Low-Power FIR Digital Filters Using Residue Arithmetic

Similar documents
ARITHMETIC operations based on residue number systems

Improving Area Efficiency of Residue Number System based Implementation of DSP Algorithms

Implementation of a Fast Sign Detection Algoritm for the RNS Moduli Set {2 N+1-1, 2 N -1, 2 N }, N = 16, 64

Design and Implementation of CVNS Based Low Power 64-Bit Adder

A DCT Architecture based on Complex Residue Number Systems

A Ripple Carry Adder based Low Power Architecture of LMS Adaptive Filter

Open Access Hardware Implementation of Fir Filter Based on Number-theoretic Fast Fourier Transform in Residue Number System

VLSI Implementation of Low Power Area Efficient FIR Digital Filter Structures Shaila Khan 1 Uma Sharma 2

Performance Evaluation of a Novel Direct Table Lookup Method and Architecture With Application to 16-bit Integer Functions

Multifunction Residue Architectures for Cryptography 1

Area And Power Efficient LMS Adaptive Filter With Low Adaptation Delay

ISSN (Online), Volume 1, Special Issue 2(ICITET 15), March 2015 International Journal of Innovative Trends and Emerging Technologies

Implementation and Impact of LNS MAC Units in Digital Filter Application

SCHOOL OF ENGINEERING & BUILT ENVIRONMENT. Mathematics. Numbers & Number Systems

A SIMULINK-TO-FPGA MULTI-RATE HIERARCHICAL FIR FILTER DESIGN

MCM Based FIR Filter Architecture for High Performance

An Efficient Hybrid Parallel Prefix Adders for Reverse Converters using QCA Technology

Two High Performance Adaptive Filter Implementation Schemes Using Distributed Arithmetic

DUE to the high computational complexity and real-time

Fixed Point LMS Adaptive Filter with Low Adaptation Delay

ISSN Vol.08,Issue.12, September-2016, Pages:

IMPLEMENTATION OF AN ADAPTIVE FIR FILTER USING HIGH SPEED DISTRIBUTED ARITHMETIC

FPGA IMPLEMENTATION OF FLOATING POINT ADDER AND MULTIPLIER UNDER ROUND TO NEAREST

COPY RIGHT. To Secure Your Paper As Per UGC Guidelines We Are Providing A Electronic Bar Code

Ramasamy Krishnan Boeing Electronics High Technology Center Seattle, Washington

An Efficient Flexible Architecture for Error Tolerant Applications

Implementation of Reduce the Area- Power Efficient Fixed-Point LMS Adaptive Filter with Low Adaptation-Delay

High Level Abstractions for Implementation of Software Radios

Reduction of Latency and Resource Usage in Bit-Level Pipelined Data Paths for FPGAs

Synthesis of DSP Systems using Data Flow Graphs for Silicon Area Reduction

Power and Area Efficient Implementation for Parallel FIR Filters Using FFAs and DA

DESIGN OF HYBRID PARALLEL PREFIX ADDERS

FPGA Implementation of Multiplier for Floating- Point Numbers Based on IEEE Standard

Implementation of a Low Power Decimation Filter Using 1/3-Band IIR Filter

An Enhanced Residue Modular Multiplier for Cryptography

OPTIMIZATION OF FIR FILTER USING MULTIPLE CONSTANT MULTIPLICATION

Excerpt from: Stephen H. Unger, The Essence of Logic Circuits, Second Ed., Wiley, 1997

A Unified Addition Structure for Moduli Set {2 n -1, 2 n,2 n +1} Based on a Novel RNS Representation

An Efficient Design of Sum-Modified Booth Recoder for Fused Add-Multiply Operator

Applications of The Montgomery Exponent

Bipartite Modular Multiplication

Computer Architecture and Organization

International Journal of Engineering and Techniques - Volume 4 Issue 2, April-2018

- 0 - CryptoLib: Cryptography in Software John B. Lacy 1 Donald P. Mitchell 2 William M. Schell 3 AT&T Bell Laboratories ABSTRACT

Retiming Arithmetic Datapaths using Timed Taylor Expansion Diagrams

AN EFFICIENT REVERSE CONVERTER DESIGN VIA PARALLEL PREFIX ADDER

EE 486 Winter The role of arithmetic. EE 486 : lecture 1, the integers. SIA Roadmap - 2. SIA Roadmap - 1

COMPUTER ORGANIZATION AND DESIGN. 5 th Edition. The Hardware/Software Interface. Chapter 3. Arithmetic for Computers Implementation

Adaptive FIR Filter Using Distributed Airthmetic for Area Efficient Design

6.001 Notes: Section 4.1

Parallel FIR Filters. Chapter 5

A General Sign Bit Error Correction Scheme for Approximate Adders

1. Introduction. Raj Kishore Kumar 1, Vikram Kumar 2

DESIGN AND PERFORMANCE ANALYSIS OF CARRY SELECT ADDER

A Novel Approach of Area-Efficient FIR Filter Design Using Distributed Arithmetic with Decomposed LUT

RECENTLY, researches on gigabit wireless personal area

Parallelized Radix-4 Scalable Montgomery Multipliers

FILTER SYNTHESIS USING FINE-GRAIN DATA-FLOW GRAPHS. Waqas Akram, Cirrus Logic Inc., Austin, Texas

Hybrid Signed Digit Representation for Low Power Arithmetic Circuits

Analysis of Different Multiplication Algorithms & FPGA Implementation

Principles of Computer Architecture. Chapter 3: Arithmetic

A HIGH PERFORMANCE FIR FILTER ARCHITECTURE FOR FIXED AND RECONFIGURABLE APPLICATIONS

INTERNATIONAL JOURNAL OF PURE AND APPLIED RESEARCH IN ENGINEERING AND TECHNOLOGY

TRUNCATION SCHEMES FOR RECURSIVE MULTIPLIERS

DESIGN AND IMPLEMENTATION OF DA- BASED RECONFIGURABLE FIR DIGITAL FILTER USING VERILOGHDL

VLSI Architecture to Detect/Correct Errors in Motion Estimation Using Biresidue Codes

FIR Filter Architecture for Fixed and Reconfigurable Applications

1. NUMBER SYSTEMS USED IN COMPUTING: THE BINARY NUMBER SYSTEM

CHAPTER 1 INTRODUCTION

On Designs of Radix Converters Using Arithmetic Decompositions

R. Solomon Roach 1, N. Nirmal Singh 2.

INTERNATIONAL JOURNAL OF PROFESSIONAL ENGINEERING STUDIES Volume VII /Issue 2 / OCT 2016

THE orthogonal frequency-division multiplex (OFDM)

Implementation of Efficient Modified Booth Recoder for Fused Sum-Product Operator

VLSI Design and Implementation of High Speed and High Throughput DADDA Multiplier

Signed Binary Addition Circuitry with Inherent Even Parity Outputs

Design and Implementation of Modified Sequential Parallel RNS Forward Converters

16 Bit Low Power High Speed RCA Using Various Adder Configurations

Carry Select Adder with High Speed and Power Efficiency

A Residue Approach to the Finite Field Arithmetics

Design and Implementation of Signed, Rounded and Truncated Multipliers using Modified Booth Algorithm for Dsp Systems.

International Journal of Computer Trends and Technology (IJCTT) volume 17 Number 5 Nov 2014 LowPower32-Bit DADDA Multipleir

the main limitations of the work is that wiring increases with 1. INTRODUCTION

Fault Tolerant Parallel Filters Based on ECC Codes

A High Speed Design of 32 Bit Multiplier Using Modified CSLA

EE878 Special Topics in VLSI. Computer Arithmetic for Digital Signal Processing

Design of Low Power Digital CMOS Comparator

Research Article Improving 2D-Log-Number-System Representations by Use of an Optimal Base

Effective Improvement of Carry save Adder

Digital Filter Synthesis Considering Multiple Adder Graphs for a Coefficient

Measuring Improvement When Using HUB Formats to Implement Floating-Point Systems under Round-to- Nearest

DESIGN OF QUATERNARY ADDER FOR HIGH SPEED APPLICATIONS

Linköping University Post Print. Analysis of Twiddle Factor Memory Complexity of Radix-2^i Pipelined FFTs

A Residue Approach of the Finite Field Arithmetics

HIGH PERFORMANCE FUSED ADD MULTIPLY OPERATOR

Compact Clock Skew Scheme for FPGA based Wave- Pipelined Circuits

The Different Types of UPS Systems

Area-Delay-Power Efficient Carry-Select Adder

Design of an Efficient 128-Bit Carry Select Adder Using Bec and Variable csla Techniques

Carry-Free Radix-2 Subtractive Division Algorithm and Implementation of the Divider

Transcription:

Low-Power FIR Digital Filters Using Residue Arithmetic William L. Freking and Keshab K. Parhi Department of Electrical and Computer Engineering University of Minnesota 200 Union St. S.E. Minneapolis, MN 55455-0154 {freking, parhi@ece.umn.edu} Abstract This paper demonstrates that residue arithmetic can result in implementation of low-power FIR digital filters. It is shown that, for word-lengths up to 32 bits, the power consumption of residue-arithmetic -based FIR filters is dramatically less than two s-complementbased FIR filters. The power reduction is possible since the use of residue arithmetic transforms the filtering problem into multiple smaller word-length filters for various moduli which are operated in parallel. These compact filters can be operated with lower supply voltage for a specified sample speed, thus obtaining decreased power consumption compared to binary. Power reduction factors for residue arithmetic implementation become increasingly favorable as the system word-length is increased. 1 Introduction A number of techniques have been devised to implement low-power FIR digital filters. Many of these methods impose constraints on coefficient selection and are therefore not general. Likewise, methods which attain low power consumption through hardware reduction techniques are typically restricted to fixed-coefficient filters. However, the task of identifying power reduction techniques which are valid for programmable-coefficient FIR filters has received less attention. This paper addresses this issue with the application of the residue number system (RNS). The RNS is a numerical representation which is traditionally regarded for its high-speed implementational attributes. The RNS decomposes a given algorithm into smaller word-length, parallel, modular arithmetic calculations. A general RNS system is illustrated in Figure 1. The RNS paradigm exhibits several drawbacks such as I/O conversion overhead and difficulties associated with sign detection and magnitude comparison. Although these inherent shortcomings prevent general application of RNS methodology, algorithms which are chiefly composed of multiplications and additions with few or no conditionals are well suited for RNS implementation. This specialized architectural category is perhaps best exemplified by the FIR filter [1]. A brief introduction to the fundamentals of RNS arithmetic is provided below followed by a discussion of various approaches to implement RNS FIR digital filters. Section II briefly describes how the RNS can be utilized to reduce the complexity of certain arithmetic operations. Section III describes the low power properties of RNS FIR filters. Hardware cost, switching activity, and voltage supply reduction are examined along with their implications for low-power operation. Binary Implementation Residue Implementation Binary to RNS Algorithm mod m 0 mod m 1 mod m 2 mod m n RNS to Binary Figure 1: RNS implementation is characterized by parallel modulo arithmetic versions of the particular algorithm and I/O conversion. 1.1 Principles of RNS Arithmetic RNS arithmetic is based on the centuries-old observation that integers specified within a finite range

may be represented uniquely by a set composed by performing the modulo operation of the integer with each member of a set of special moduli [2]. The members of this new set are referred to as residues. The moduli set possesses two salient properties: the product of the moduli is greater than the largest integer to be represented and the moduli are mutually prime. The latter condition dictates that no moduli share factors, i.e., the greatest common denominator of all possible moduli pairs is 1. The mathematical operations of addition and multiplication on operands converted to residue-set representation are easily educed from the procedural definition of the modulo operation; no intermediate transformations to and from integer representation are demanded. Consider the integers X and Y as well as their sum, S. Let the i-th residue of X be denoted as x i. The modulo operation is defined such that Since X = Q X m i + x i. S = X + Y = (Q X + Q Y ) m i + x i + y i = Q S m i + s i, it is clear that the addition operation is achieved by s i = x i + y i mi, where the notation a mi signifies the modulo operation on a with modulus m i. Multiplication, by an analogous argument, is realized by p i = x i y i mi. While the conversion process from integer to residue sets is obvious, the reverse conversion is somewhat more abstruse. Fortunately, algorithms such as the Chinese Remainder Theorem (CRT) and mixedradix conversion are available for this purpose (see [3]). 1.2 RNS FIR Filter Implementation FIR filter implementation is slightly different within RNS-decomposed channels compared to a binary implementation in that modular arithmetic must be used. A block diagram of both a standard binary and a RNS direct-form FIR filter unit cell is shown in Figure 2. Small dynamic ranges permit the use of lookup-table-based modular arithmetic in RNS implementations. However, as the dynamic range is increased, lookup tables grow as the square of the modulus whereas functional logic grows logarithmically with respect to modulus. Thus, to exploit the RNS for larger dynamic ranges (typically 16 bits or greater), functional logic is often chosen. Figure 2: Direct-form FIR unit cells (a) standard binary (b) RNS implementation Modular multiplications dominate the complexity of functional-logic RNS FIR filter implementations. Many architectures have been proposed to efficiently implement modular multiplication [5][6] and modular inner-product computations[7]. Common to all such algorithms is the necessity to perform modular reduction operations, either embedded at bit or word level within the multiplication operation or as a postprocessing step, thus incurring a hardware penalty. A different approach can be taken by observing that the modulo reduction operations need not be performed within each multiplier or multiply-accumulate operation in a residue-decomposed FIR filter. Rather, the modulo reduction operation can be deferred to a later point in the computation, preferably to the end of the residue decomposed FIR calculation [8]. Thus, standard binary multipliers and adders can be used as opposed to modular architectures. Deferment of the reduction has a definite drawback the word-length of the computation has the potential to grow with each accumulation operation in the FIR filter. Rounding is not permissible within the residuedecomposed filter, and dynamic scaling of the RNS range can be a costly operation since it is dependent on information in all the residue channels. An elegant solution to this problem was proposed in [8]. It was observed that integers which are multiples of the modulus can be added or subtracted from the result at any point in the computation without affecting the final modulo-reduced result. The resultant method requires a conditional subtraction of a correction factor after each multiply-accumulate operation, and thereby limits word-length growth to the word-length at the multiplier output. A further modification was proposed in [9] in which a different choice of correction factor results in a reduction of the correction logic. Both implementations are shown in Figure 3.

Figure 3: FIR unit-cell implementations (a) original deferred reduction concept [8] (b) modified so factor is only applied at MSBs [9]. 2 Moduli Selection for Hardware Reduction Functional logic approaches to RNS system implementation motivate investigation of moduli selection. Related is the question of optimal moduli selection for reduced memory consumption in RNS systems. It is well known that a set of a large number of small moduli produce small memory sizes. This solution is not only adequate, but optimal for any logic circuit having a complexity that is proportional to the square of the number of input bits. However, it can be shown that, in general, any complexity function which meets criteria of being a positive-slope, strictly increasing function can result in hardware reduction if RNS implementation is used. In particular, the optimal solution can be determined to be the case where the dynamic range is as equally divided as possible. Further, this optimal solution is a decreasing function with respect to the number of moduli. Thus, the observation concerning moduli selection with regard to minimum memory size can be generalized to a wide variety of functional logic implementations. 3 RNS for Low Power FIR Filters 3.1 Hardware Cost Hardware cost has a direct bearing on total power consumption in most architectures. An important fact in RNS FIR filter architectures is that conversion overhead remains constant as the number of filter taps is increased. Therefore, if hardware reduction is possible relative to binary implementation within the primary filter logic, power reductions should be possible for a sufficient number of taps. In order to illustrate hardware reduction in the filter logic, consider an example of a full-adder-based RNS FIR filter implementation. From Figure 2, it is clear that the total complexity for a binary FIR unit cell in terms of full adders is n 2 + n (where n is the number of input bits) assuming a binary array multiplier with no rounding operation. For the RNS case, the implementation in Figure 3(b) is utilized with assumptions similar to the binary case. The RNS complexity function is therefore n 2 i + 2n i. Assuming an optimal moduli set and noting that the RNS representation must have a range of slightly greater than 2n bits (the word-length of the multiplication results), we find that the least possible RNS complexity for the given case is: ( ) 4n 2 C R = r r 2 + 22n = 4 n2 r r + 4n. Thus, in order that the RNS case exhibit a hardware reduction in comparison to the binary case, the following condition must be satisfied: which simplifies to: 4 n2 r + 4n < n2 + n, r > 4 ( ) n. n 3 Therefore, in this particular case, an optimal RNS system of at least 5 moduli can obtain a hardware reduction for sufficiently large n. Note that the number of moduli required to obtain a reduction decreases as n increases. This fact is due to the increasing dominance of the multiplier complexity (which is mitigated by the RNS) over the addition complexity. Regardless of the binary range, a greater advantage is garnered by increasing the number of moduli, which translates to larger word-length architectures receiving the most benefit. Comparisons of the hardware cost per FIR unit cell for RNS and binary implementations are shown in Table 1. Both binary-array and Booth-multiplier implementations are shown for each case. The increased benefit of RNS representation as the binary word-length increases is very evident. Table 1. Hardware costs for FIR unit cells (number of full adders) Word Binary RNS Binary RNS Length Array Array R4-Booth R4-Booth 8 80 169.5 56 154.5 12 168 246 108 216 16 288 328 176 284 24 624 520 360 446 32 1088 700 608 588 3.2 Switching Activity Reduction RNS implementation lends itself to reduced switching activity which translates into reduced power consumption. Switching activity is reduced due to the

confined range of allowed bit combinations in residue representation namely only values values from 0 to m i 1 are permitted. Bit probabilities, which are closely linked to switching probabilities within digital circuits, are shown in Figure 4 for several 4-bit moduli. Although in the chosen FIR filter implementation modulo corrections are not made within the multiplication operations, there is still reduced switching activity in the multipliers due to residue representation at the inputs. This fact leads to power reduction when compared to binary multipliers of the same word-length. Simulations using the HEAT power estimation tool [11] indicate switching activity reductions of up to 38% are possible in 4 4-bit multipliers due to residue representation (see Table 2). Probability 0.6 0.5 0.4 0.3 0.2 0.1 Probability of "1" Vs. Bit Position 0 3 2 1 0 Bit Position Figure 4: Probability of 1 at each bit position for various moduli. Table 2. Average power consumption of 4 4 array multipliers with respect to modulus. Modulus Power Power (in mw) Reduction 9 216 38.29% 11 243 30.57% 13 283 19.14% 15 320 8.57% 16 (binary) 350 0.00% 3.3 Supply Voltage Reduction The nature of the RNS decomposition of an algorithm into smaller word-length partitions can be exploited for low-power operation when high sample rates are not demanded. In particular, FIR filters which do not require fine-grain pipelining of the multipliers can benefit substantially. Maintaining the same 9 11 13 15 16 sample speed as a comparable word-length binary implementation, the supply voltage can be reduced [12] due to a shortened critical path length within the parallel residue channels. Supply voltage reductions increase rapidly with larger word-length (see Table 3) due to the fact that the critical path in the RNS case increases approximately as the log of equivalent binary word-length, while the critical path increases linearly with word-length in the binary case. Power consumption is reduced as the square of the voltage reduction factor, resulting in dramatic reductions in power consumption as demonstrated in Table 4. In addition, if further power reduction is required, it is found that RNS pipelining overhead in the primary logic is not substantially different from the binary implementation. Linear reduction factors in critical path length with respect to the level of pipelining are possible in both RNS and binary cases. Table 3. Voltage reductions due to RNS representation with respect to word-length Word Voltage Length Reduction 8 0.572 12 0.500 16 0.409 24 0.353 32 0.297 Table 4. Normalized average power consumed by FIR units after voltage supply reduction (assuming 32 bit word-length sample rate) Word Binary RNS Binary RNS Length Array Array R4-Booth R4-Booth 8 0.074 0.051 0.051 0.046 12 0.154 0.056 0.099 0.050 16 0.265 0.050 0.162 0.044 24 0.574 0.060 0.331 0.051 32 1.000 0.057 0.559 0.048 3.4 Simulation Results Simulations using the HEAT power estimation tool were conducted for a programmable-coefficient FIR filter with 16 bit coefficients and 32 bit dynamic range implemented in both binary and RNS with deferred reduction. Both implementations utilized array multipliers followed by ripple-carry adders for the accumulation operation. Results indicate that for standard 1.2 micron CMOS technology with operational frequency of 50 MHz, the FIR unit cell dissipates 26.2 mw on average. In comparison, the RNS implementation, including contributions from all residue channels, dissipates only 3.8 mw.

Although power dissipation per tap is much lower than the comparable binary implementation, the I/O conversion overhead of the RNS implementation must also be considered. A straightforward implementation of the CRT and input conversion circuitry was found to dissipate approximately 400mW using the above parameters. Because this overhead remains constant relative to the number of filter taps, it follows that increasing the number of taps will be beneficial to the RNS design. Figure 5 illustrates the dependence on number of taps of the overall RNS power reduction factor. It is clear, for this example, that the power overhead is completely compensated above 20 taps, with more taps yielding increasingly favorable power reductions. Note voltage reduction was not exploited, which would reduce power consumption further. Figure 5: RNS power reduction factor with respect to number of taps. 4 Conclusions It has been demonstrated that RNS representation has significant power reduction properties when applied to programmable FIR digital filter implementation. Compared to binary representation, a suitably chosen RNS can offer hardware reduction to any combination of operations meeting certain criteria. It was observed that hardware reduction is most dramatic as the word-length of the equivalent binary system increases. Limited bit pattern combinations of RNS data were found to lead to smaller switching activities, particularly in the multipliers. Finally, supply voltage reduction, which can dramatically reduce power consumption, is possible for RNS FIR filters which require less demanding sample rates. Acknowledgment This research was supported by the Office of Naval Research under grant number N00014-96-1-0931. References [1] W. K. Jenkins and B. J. Leon, The Use of Residue Number Systems in the Design of Finite Impulse Response Digital Filters, IEEE Trans. Circuits Syst., vol. 24, pp. 191-201, Apr. 1977. [2] N. S. Szabo and R. I. Tanaka, Residue Arithmetic and Its Applications to Computer Technology. New York, McGraw-Hill, 1967. [3] F.J. Taylor, Residue Arithmetic: A Tutorial with Examples, IEEE Computer Magazine, May 1984, pp. 50-82. [4] M. A. Soderstrand and K. Al-Mararyati, VLSI Implementation of Very-High-Order FIR Filters, in Proc. IEEE Internat. Symp. on Circuits and Systems, pp. 1436-1439, 1995. [5] G. R. Blakley, A computer algorithm for the product AB modulo M, IEEE Trans. Comput., vol. 32, pp. 497-500, 1983. [6] C. K. Koc and C. Y. Hung, Bi-level systolic arrays for modular multiplication, J. VLSI Sig. Proc., vol. 3, pp. 215-223, 1991. [7] D. J. Soudris, V. Paliouros, T. Stouratis, and C. E. Goutis, A VLSI Design Methodology for RNS Full-Adder-Based Inner Product Architectures, IEEE Trans. Circuits Syst. II, vol. 44, no. 4, 1997. [8] M. K. Ibrahim, Novel digital filter implementations using hybrid RNS-Binary arithmetic, Signal Processing, vol. 40, pp. 287-294, 1994. [9] B. Parhami, A note on digital filter implementation using hybrid RNS-binary arithmetic, Signal Processing, v. 51, pp. 65-67, 1996. [10] M.A. Soderstrand, W.K. Jenkins, G.A. Jullien, and F.J. Taylor, Residue Number System Arithmetic: Modern Applications in Digital Signal Processing. New York, IEEE Press, 1986. [11] J. H. Satyanaryana and K. K. Parhi, HEAT: Hierarchical Energy Analysis Tool, Proc. 33rd Design Automation Conference, pp. 9-14, 1996. [12] A. P. Chandrakasan, S. Sheng, R. W. Brodersen, Low-Power CMOS Digital Design, IEEE J. Solid-State Circuits, v. 27, no. 4, pp. 473-483, 1992.