Application Specific Integrated Circuits Design and Implementation of Rademacher and Walsh Functions

The orthogonal functions, specially the Rademacher and Walsh functions are being increasingly used in Digital Signal Processing (DSP). Today’s DSP applications require fast processing time in order to meet the challenges of the real time systems. State-of-the-art implementation technologies are therefore being used. This study describes the design and implementation of Rademacher and Walsh functions targeted to the state-of-the-art Cell Based Integrated Circuits (CBIC) technology. High level design techniques are used with the help of advanced EDA tools from SYNOPSYS International. Optimized VHDL models have been developed and used for design entry. The design is thoroughly verified using advanced verifications tools. The design is implemented and processing has been done with 90 nm CMOS Technology from TSMC foundry. It is observed that the results obtained, are far better than the FPGA implementation reported earlier in the literature.


INTRODUCTION
Digital Signal Processing is well known for processing of digital signals and it requires high speed and fast processing time to meet today's real world applications. With developing technology, more complex algorithms are evolving. Therefore to realize these algorithms for real world applications hardware implementation is necessary. Field Programmable Gate Arrays (FPGAs) are good choice for hardware realization but with limitations in design optimization. Furthermore, FPGA implementation is good for prototyping where, the aim is to predict the behavior of design in real world applications, there are many DSP systems reported in literature few of them are (Palaniappan and Zulkifli, 2007;Benhamid and Othman, 2009;Rais et al., 2010;Rais, 2010;Teymourzadeh et al., 2010). Application Specific Integrated Circuits (ASIC) is the most feasible technology to realize DSP algorithms and any other complex algorithm, without much limitations in optimizing the design. Furthermore, as the technology is emerging, fabrication of increasingly larger number gates is becoming possible in an ASIC that makes it highly appropriate for large and complex designs. Cell Based Integrated Circuits (CBIC) is a type of ASICs. CBIC uses predesigned logic cells known as standard cells. The standard cells areas in a CBIC are built of rows. The standard cell area can also be used for Macro cells. All the mask layers of CBIC are customized and are unique to a particular design. The most prominent advantage of CBIC is to use the predesigned, precharacterized and pretested standard cells. ASIC manufacturer provides detail data of standard cell, with complete description of metal layers, routing protocols and power/ground recommended flow.
In the present work, Rademacher functions and Walsh functions are realized by using state of the art Science Publications AJEAS ASIC technology. High level designing techniques are adopted and design is modeled in VHDL language (Benmohammed and Merniz, 2005;Abbasi et al., 2010). Simulation and verification is achieved by using advanced EDA tools from Synopsys. Synopsys tools are widely used for chip and device designing (Hashim and Rasmi, 2006;Maiti and Maiti, 2010). Physical Layout designing is also done in Synopsys innovative Backend tools. Top down design methodology is adopted.

Rademacher Functions
The function f n (x) is defined on the closed interval [0,1] by the Equation (1) (Wolfram, 2002): Where: f 0 (x) = 1 Sgn = The Signum Function Equation (2) 1, y 0 Sgn(y) 1, y 0 By Periodicity property (Wolfram, 2002) of Rademacher Function, it can be extended over the whole non negative real line Equation (3): Rademacher functions form an incomplete set of orthogonal functions (Rath and Meher, 2007), from which subset of Walsh Functions can be formed Equation (4): (4) Figure 1 shows the first 5 Rademacher functions.

Walsh Functions
Analysis of a signal is a very important task in science and engineering problems. From decades, Fourier theory has been a very important tool in analyzing signals, particularly for the analysis of analog signals where sine-cosine functions are used. However, with the advent of digital computers and their use in different fields, theory of Discrete Fourier Analysis has to be further developed (Palaniappan and Zulkifli, 2007). For Discrete Signal Analysis, there are many other theories to analyze them and sometimes they gives better result than discrete fourier analysis. One of the theories is based on a set of Walsh Functions (Wolfram, 2002;Maqusi, 1981).
Walsh functions consist of sequence of square pulses between -1 and +1, the transitions only occurs at fixed intervals and initial state is always +1 (Thompson et al., 2008). Walsh functions were first used by Frank Fowle, an electrical engineer; to find the transpositions of wires that minimized the crosstalk and later it is introduced in mathematics by Walsh (Wolfram, 2002). Walsh used an unattractive notation for set of functions, which is inconvenient for analytical computation. However, its definition is largely adopted by engineers and scientists for computational purposes.
Various researchers developed interest in Walsh theory and generated several other types of formulae (Wolfram, 2002), in particular, to generate Walsh functions for digital computation and to develop more attractive notation for analytical and mathematical solutions. Scientists found that Walsh functions can also be evaluated from Rademacher functions (Maqusi, 1981;Wolfram, 2002;Karpovsky et al., 2008) and Rademacher functions can easily be generated by using a counter (Ateeq et al., 2002;Qasim and Abbasi, 2006).
Harmuth's development of Walsh Functions are defined by the following recursive formula (Wolfram, 2002) Equation (5): Where: p∈{0,1} j=0,1,2,….. Equation (6): This definition formulates the set of Walsh functions in unit time interval [-1/2, 1/2). Parameter min wal m (x) indicates the average number of zero crossings in a unit interval. This parameter is named as "sequency" and it also indicates an ordering of Walsh function in a Science Publications AJEAS sequence. Where (m = 0,1,2,…..) and it can be defined as (Wolfram, 2002): Sequency = average number of zero Equation (7): sequency = average number of zero crossings in a unit interval (7) The even Walsh functions Cal(m) and the odd Walsh functions Sal(m) as (Wolfram, 2002) Equation ( These terms are derived from the longer names "Cosine-Walsh" and "Sine-Walsh". Let the set of Walsh functions defined on [0,1). Then Equation (10 and 11): where the integer nis assumed to be dyadic (binary) representation Equation (12): Such representation is good for considering basic characteristics of Walsh functions. Figure 2 shows the first eight Walsh functions defined on the unit interval [0, 1).
Incidentally, the Walsh functions Ψ n (x) may be defined on the unit interval [-1/2, 1/2) by a simple shift of their graphs. Naturally this follows easily from their periodicity characteristics. Under such a definition, the functions Ψ n (x) may be related to the sequency-ordered set wal n (x) via the following relation Equation (13) An interesting result connects the dyadic representation of a real number x and associated Walsh function Ψ n (x). Thus let x be a nonnegative real number. This number may then be represented by a dyadic expansion as Equation (14): where, (x) denote the largest integer in the real number x. The expansion coefficients xi associated with a real number x are related to Rademacher functions by Equation (15 and 16): Hence: Since Equation (17):
Similarly each function can be divided into this manner to get the values of next function. It has been observed that simple binary counter can also depict this signal generation at various output stages. So we omit the com-plex VHDL coding for the Equation (1) and generate a simple 5 bit binary counter for the generation of Rademacher functions: Snippet of VHDL coding. RADFUNC: process (clk,reset) Begin if reset = '1' then temp<="00000"; elsif (clk'event and clk = '1') then temp< = temp+1; end if; end process RADFUNC;

RESULTS
Chip designing is a highly sophisticated work that requires many steps to achieve the desired design. Chip designing also requires highly sophisticated and specialized EDA tools, which play very important role in de-signing a chip. This is because at each step, the designer needs to optimize the design to the best achievable limit and this can only be done with the help of highly specialized tools (Palaniappan and Zulkifli, 2007). Synopsys is one of the leading company in the manufacturing of EDA tools and this design is implemented by using complete CBIC design suite of soft-wares from Synopsys.

Supporting Tools
Synopsys Tools used for designing are as follows.

Simulation of Rademacher Functions
Simulation results of Rademacher functions are shown in Fig. 3.
These results are generated after backend design. Star RC is used to extract the parasitics of a design and gene-rates Standard Parasitic Extraction File (SPEF) which is then fed to Prime Time, for Post Layout Static Timing Analysis.

Simulation of Walsh Functions
Walsh functions simulation results are shown in Fig. 4. Design is verified behaviorally, after performing Layout designing. Delays are measured at different instances of the clock as shown in Fig. 5. Maximum delay is found to be 3.11ns.

DISCUSSION
The design is targeted to TSMC 90 nm CMOS Low Power (LP) High Threshold Voltage (HVT) technology. In 90nm technology, 9 metal layers fabrication process is adopted, in which odd numbered metal layer can only be used for horizontal connections and even numbered can only be used for vertical connections. Metal layer 1 is used for standard cells placement, Metal layer 2 used for vertical clock and signal routing, Metal layer 3 is used for horizontal clock and signal routing, Metal layer 4 to Metal layer 9 is mainly used for power and ground straps. However, some of the signal routing also occurs from Metal layer 4 to Metal layer 7 to avoid DRC errors.     Table 4. Table 5 contains the Chip and core information and Table 6 shows the information of each metal layer.

CONCLUSION
ASIC designing of Rademacher functions and Walsh functions is modeled and simulated in CMOS 90 nm CBIC technology. Maximum operating frequency for this design is found to be 40 Mhz. Leakage Power consumption is very low and it is feasible for systolic designs. Dynamic Power can also be reduced by using sequential cells instead of combinational cells, but due to complex arithmetic operations it is not possible. Switching Power of the design is also considered as the culprit for larger Dynamic Power. This design has been done as an Intellectual Property (IP). Designed IP can be used as the basic block for the High Level design of Walsh Transforms. Furthermore this design can also be used as the basic block for arbitrary signal generator.