<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss'><id>tag:blogger.com,1999:blog-6231746696076692156</id><updated>2009-09-29T20:27:23.562-07:00</updated><title type='text'>hemal filters</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://hemalfilters.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6231746696076692156/posts/default'/><link rel='alternate' type='text/html' href='http://hemalfilters.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>hemal</name><uri>http://www.blogger.com/profile/18252553486648975425</uri><email>noreply@blogger.com</email></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>19</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-6231746696076692156.post-7920220200660415000</id><published>2007-12-16T02:53:00.001-08:00</published><updated>2007-12-16T02:53:45.727-08:00</updated><title type='text'>Optimal Architectures</title><content type='html'>A digital filter implemented in software is typically run on a&lt;br /&gt;processor with a single computational element. This forces&lt;br /&gt;the filter to be implemented in a serial sum-of-products. A&lt;br /&gt;FIR is implemented as a single sum-of-products and an IIR&lt;br /&gt;is typically a sum of products for the feed-forward section&lt;br /&gt;and another sum-of-products for the feedback section.&lt;br /&gt;Hardware can be optimized for each application. Low speed&lt;br /&gt;and low power can be achieved using a bit-serial&lt;br /&gt;implementation. Moderate speed and power may call for a&lt;br /&gt;single parallel multiplier-accumulator. High speed&lt;br /&gt;applications can utilize multiple multiplier-accumulator&lt;br /&gt;structures with specialized memory address schemes.&lt;br /&gt;Decimating or interpolating filters can use optimized&lt;br /&gt;polyphase structures, multiple stages and specialized&lt;br /&gt;memory addressing schemes. Coefficient memory can be&lt;br /&gt;designed to take advantage of coefficient characteristics and&lt;br /&gt;accumulators can be custom-designed to take advantage of&lt;br /&gt;unity gain properties.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6231746696076692156-7920220200660415000?l=hemalfilters.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hemalfilters.blogspot.com/feeds/7920220200660415000/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6231746696076692156&amp;postID=7920220200660415000' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6231746696076692156/posts/default/7920220200660415000'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6231746696076692156/posts/default/7920220200660415000'/><link rel='alternate' type='text/html' href='http://hemalfilters.blogspot.com/2007/12/optimal-architectures.html' title='Optimal Architectures'/><author><name>hemal</name><uri>http://www.blogger.com/profile/18252553486648975425</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='02754111459927382239'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6231746696076692156.post-1577575203903275828</id><published>2007-12-16T02:52:00.000-08:00</published><updated>2007-12-16T02:53:14.376-08:00</updated><title type='text'>Decimation and Interpolation</title><content type='html'>Decimation  is reducing the output sampling rate&lt;br /&gt;by ignoring all but every Mth sample. When a digital filter&lt;br /&gt;reduces the bandwidth of a signal of interest so the filter&lt;br /&gt;output is over-sampled if the input sample rate is preserved,&lt;br /&gt;it is inefficient to compute outputs that will be ignored in the&lt;br /&gt;decimation process. Thus, there is a one-to-one&lt;br /&gt;correspondence between decimation rate and gain in&lt;br /&gt;computational efficiency. However, this computational&lt;br /&gt;efficiency can not be fully realized in an IIR filter because the&lt;br /&gt;feedback path must be computed for every input cycle.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6231746696076692156-1577575203903275828?l=hemalfilters.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hemalfilters.blogspot.com/feeds/1577575203903275828/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6231746696076692156&amp;postID=1577575203903275828' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6231746696076692156/posts/default/1577575203903275828'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6231746696076692156/posts/default/1577575203903275828'/><link rel='alternate' type='text/html' href='http://hemalfilters.blogspot.com/2007/12/decimation-and-interpolation.html' title='Decimation and Interpolation'/><author><name>hemal</name><uri>http://www.blogger.com/profile/18252553486648975425</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='02754111459927382239'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6231746696076692156.post-8052645790852473231</id><published>2007-12-15T04:06:00.001-08:00</published><updated>2007-12-15T04:06:39.658-08:00</updated><title type='text'>Filter Response Design Methods</title><content type='html'>The total specification of the ideal filter includes the location&lt;br /&gt;of passbands and stopbands, the minimum stopband&lt;br /&gt;attenuation, the maximum passband ripple, the filter order,&lt;br /&gt;and perhaps the shape of the response in some of the&lt;br /&gt;specified bands.&lt;br /&gt;Typically, there are three stages to the design of digital filter&lt;br /&gt;responses for passband filters. First, the ideal filter response&lt;br /&gt;is specified. Next, a floating point response is designed.&lt;br /&gt;Finally, the floating point coefficients are quantized to yield a&lt;br /&gt;fixed point response.&lt;br /&gt;Creating a floating-point IIR filter response starts with a&lt;br /&gt;prototype analog filter. Then an s-domain to z-domain&lt;br /&gt;transformation is used to generate a set of digital filter&lt;br /&gt;coefficients. Common methods of designing floating-point&lt;br /&gt;FIR filter responses are windowing, frequency sampling, and&lt;br /&gt;optimal. All are described in general digital signal processing&lt;br /&gt;texts and are standard in most commercially available digital&lt;br /&gt;filter design software packages.&lt;br /&gt;Converting floating-point coefficients into fixed-point&lt;br /&gt;coefficients requires quantizing the coefficients and&lt;br /&gt;calculating the frequency domain impulse response of the&lt;br /&gt;filter or filter model to verify that the filter meets the required&lt;br /&gt;specification. If it does not, either the number of coefficient&lt;br /&gt;bits can be increased, the filter response can be redefined&lt;br /&gt;and step two repeated, or the filter arithmetic can be&lt;br /&gt;redesigned, or a combination of these procedures can be&lt;br /&gt;performed. When filter hardware is at a premium,&lt;br /&gt;sophisticated simulated annealing techniques can be used&lt;br /&gt;for both fixed-point FIR and IIR filters to produce the best set&lt;br /&gt;of filter coefficients, given a fixed filter order and coefficient&lt;br /&gt;width.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6231746696076692156-8052645790852473231?l=hemalfilters.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hemalfilters.blogspot.com/feeds/8052645790852473231/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6231746696076692156&amp;postID=8052645790852473231' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6231746696076692156/posts/default/8052645790852473231'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6231746696076692156/posts/default/8052645790852473231'/><link rel='alternate' type='text/html' href='http://hemalfilters.blogspot.com/2007/12/filter-response-design-methods.html' title='Filter Response Design Methods'/><author><name>hemal</name><uri>http://www.blogger.com/profile/18252553486648975425</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='02754111459927382239'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6231746696076692156.post-2695214084152667669</id><published>2007-12-15T04:05:00.001-08:00</published><updated>2007-12-15T04:05:34.803-08:00</updated><title type='text'>Strengths and Weaknesses</title><content type='html'>Because an IIR filter uses both a feed-forward polynomial&lt;br /&gt;zeros as the roots) and a feedback polynomial (poles as the&lt;br /&gt;roots), it has a much sharper transition characteristic for a&lt;br /&gt;given filter order. Like analog filters with poles, an IIR filter&lt;br /&gt;usually has nonlinear phase characteristics. Also, the&lt;br /&gt;feedback loop makes IIR filters difficult to use in adaptive&lt;br /&gt;filter applications.&lt;br /&gt;Due to its all zero structure, the FIR filter has a linear phase&lt;br /&gt;response when the filter’s coefficients are symmetric, as is&lt;br /&gt;the case in most standard filtering applications. A FIR’s&lt;br /&gt;implementation noise characteristics are easy to model,&lt;br /&gt;especially if no intermediate truncation is used. In this&lt;br /&gt;common implementation, the noise floor is at - 6.02 B + 6.02&lt;br /&gt;log2NdB where B is the number of actual bits used in the&lt;br /&gt;filter’s coefficient quantization and N is again the filter order.&lt;br /&gt;This is why most Intersil filter ICs have more coefficient bits&lt;br /&gt;than data bits.&lt;br /&gt;An IIR filter’s poles may be close to or outside the unit circle&lt;br /&gt;in the Z plane. This means an IIR filter may have stability&lt;br /&gt;problems, especially after quantization is applied. An FIR&lt;br /&gt;filter is always stable. FIR filters also allow development of&lt;br /&gt;computationally efficient architectures in decimating or&lt;br /&gt;interpolating applications, which will be described in more&lt;br /&gt;detail later.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6231746696076692156-2695214084152667669?l=hemalfilters.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hemalfilters.blogspot.com/feeds/2695214084152667669/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6231746696076692156&amp;postID=2695214084152667669' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6231746696076692156/posts/default/2695214084152667669'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6231746696076692156/posts/default/2695214084152667669'/><link rel='alternate' type='text/html' href='http://hemalfilters.blogspot.com/2007/12/strengths-and-weaknesses.html' title='Strengths and Weaknesses'/><author><name>hemal</name><uri>http://www.blogger.com/profile/18252553486648975425</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='02754111459927382239'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6231746696076692156.post-1664338197508235948</id><published>2007-12-15T04:03:00.002-08:00</published><updated>2007-12-15T04:04:30.907-08:00</updated><title type='text'>Mathematics Versus Physics</title><content type='html'>The characteristics of an analog filter are directly attributable&lt;br /&gt;to the physics of the device that implements it. In contrast,&lt;br /&gt;the characteristics of a digital filter are only indirectly&lt;br /&gt;attributable to the physics of the device that implements it.&lt;br /&gt;A digital filter’s passband ripple, shape factor, stopband&lt;br /&gt;attenuation, and phase characteristics are all functions of&lt;br /&gt;the order and type of polynomial used to approximate the&lt;br /&gt;ideal impulse response, the number of bits used in&lt;br /&gt;performing the arithmetic, and the type of architecture used&lt;br /&gt;to implement the arithmetic. Actual frequencies have no&lt;br /&gt;meaning in a digital filter except in their relation to the&lt;br /&gt;sampling frequency. This is because the impulse response is&lt;br /&gt;generated as a function of z-1, the sample interval (the time&lt;br /&gt;between samples). For a smaller shape factor, the order of&lt;br /&gt;the filter and the number of bits in the arithmetic can be&lt;br /&gt;increased. The only physical limitation is the amount of&lt;br /&gt;arithmetic processing that can be integrated on a device or&lt;br /&gt;devices given the filter order and the input sampling rate.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6231746696076692156-1664338197508235948?l=hemalfilters.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hemalfilters.blogspot.com/feeds/1664338197508235948/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6231746696076692156&amp;postID=1664338197508235948' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6231746696076692156/posts/default/1664338197508235948'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6231746696076692156/posts/default/1664338197508235948'/><link rel='alternate' type='text/html' href='http://hemalfilters.blogspot.com/2007/12/mathematics-versus-physics.html' title='Mathematics Versus Physics'/><author><name>hemal</name><uri>http://www.blogger.com/profile/18252553486648975425</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='02754111459927382239'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6231746696076692156.post-5442831422499036196</id><published>2007-12-15T04:03:00.001-08:00</published><updated>2007-12-15T04:03:31.354-08:00</updated><title type='text'>Frequency-Domain Versus Time Domain Thinking</title><content type='html'>Thinking about analog filters, most engineers are&lt;br /&gt;comfortable in the time domain. For example, the operation&lt;br /&gt;of an RC lowpass filter can easily be envisioned as a&lt;br /&gt;capacitor charging and discharging through a resistor.&lt;br /&gt;Likewise, it is easy to envision how a negative-feedback&lt;br /&gt;active filter uses phase shift as a function of frequency,&lt;br /&gt;which is a time domain operation.&lt;br /&gt;A digital filter is better conceptualized in the frequency&lt;br /&gt;domain. The filter implementation simply performs a&lt;br /&gt;convolution of the time domain impulse response and the&lt;br /&gt;sampled signal. A filter is designed with a frequency domain&lt;br /&gt;impulse response which is as close to the desired ideal&lt;br /&gt;response as can be generated given the constraints of the&lt;br /&gt;implementation. The frequency domain impulse response is&lt;br /&gt;then transformed into a time domain impulse response&lt;br /&gt;which is converted to the coefficients of the filter.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6231746696076692156-5442831422499036196?l=hemalfilters.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hemalfilters.blogspot.com/feeds/5442831422499036196/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6231746696076692156&amp;postID=5442831422499036196' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6231746696076692156/posts/default/5442831422499036196'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6231746696076692156/posts/default/5442831422499036196'/><link rel='alternate' type='text/html' href='http://hemalfilters.blogspot.com/2007/12/frequency-domain-versus-time-domain.html' title='Frequency-Domain Versus Time Domain Thinking'/><author><name>hemal</name><uri>http://www.blogger.com/profile/18252553486648975425</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='02754111459927382239'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6231746696076692156.post-6360540975216539978</id><published>2007-12-15T04:02:00.000-08:00</published><updated>2007-12-15T04:03:00.032-08:00</updated><title type='text'>Analog Filters, Software-Based and</title><content type='html'>Owing to the way that analog and digital filters are physically&lt;br /&gt;implemented, an analog filter is inherently more size-and&lt;br /&gt;power-efficient, although more component-sensitive, than its&lt;br /&gt;digital counterpart - if it can be implemented in a&lt;br /&gt;straightforward manner. In general, as signal frequency&lt;br /&gt;increases, the disparity in efficiency increases.&lt;br /&gt;Characteristics of applications where digital filters are more&lt;br /&gt;size and power efficient than analog filters are: linear phase,&lt;br /&gt;very high stop band attenuation, very low pass band ripple;&lt;br /&gt;the filter’s response must be programmable or adaptive; the&lt;br /&gt;filter must manipulate phase and, very low shape factors (a&lt;br /&gt;digital filter’s shape factor is the ratio of the filter’s pass band&lt;br /&gt;width plus the filter’s transition band width to the filter’s pass&lt;br /&gt;band width).&lt;br /&gt;General-purpose digital signal microprocessors, now&lt;br /&gt;commodity devices, are used in a broad range of&lt;br /&gt;applications and can implement moderately complex digital&lt;br /&gt;filters in the audio frequency range. Many standard signal&lt;br /&gt;processing algorithms, including digital filters, are available&lt;br /&gt;in software packages from digital signal processor and third&lt;br /&gt;party vendors. As a result, software development costs are&lt;br /&gt;trivial when amortized over production quantities.&lt;br /&gt;The architectures of digital signal microprocessors are&lt;br /&gt;usually optimized to perform a sum-of-products calculation&lt;br /&gt;with data from RAM or ROM. They are not optimized for any&lt;br /&gt;specific DSP function. However, to get extended sampling&lt;br /&gt;rate performance from a digital filter requires hardware&lt;br /&gt;designed to perform the intended filter function at the&lt;br /&gt;desired sampling frequencies.&lt;br /&gt;For example, Intersil Corporation offers a family of standard&lt;br /&gt;digital filter products with several others in development.&lt;br /&gt;Some hardware-specific digital filters can now sample at&lt;br /&gt;rates approaching 75 Megasamples Per Second (MSPS).&lt;br /&gt;Higher performance is possible for high volume applications&lt;br /&gt;by limiting the range of parameters. Standard filter products&lt;br /&gt;strike a balance between optimized filter architectures and&lt;br /&gt;programmability by offering a line of configurable filters. That&lt;br /&gt;is, these products are function-specific, with optimized&lt;br /&gt;architectures and programmable parameters.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6231746696076692156-6360540975216539978?l=hemalfilters.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hemalfilters.blogspot.com/feeds/6360540975216539978/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6231746696076692156&amp;postID=6360540975216539978' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6231746696076692156/posts/default/6360540975216539978'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6231746696076692156/posts/default/6360540975216539978'/><link rel='alternate' type='text/html' href='http://hemalfilters.blogspot.com/2007/12/analog-filters-software-based-and.html' title='Analog Filters, Software-Based and'/><author><name>hemal</name><uri>http://www.blogger.com/profile/18252553486648975425</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='02754111459927382239'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6231746696076692156.post-8477552592334380161</id><published>2007-12-15T04:01:00.002-08:00</published><updated>2007-12-15T04:02:15.416-08:00</updated><title type='text'>Essentials of Digital Filtering</title><content type='html'>A digital filter is simply a discrete-time, discrete-amplitude&lt;br /&gt;convolver. An example is shown in Figure 1 for three-bit&lt;br /&gt;amplitude quantization. Basic Fourier transform theory states&lt;br /&gt;that the linear convolution of two sequences in the time&lt;br /&gt;domain is the same as multiplication of two corresponding&lt;br /&gt;spectral sequences in the frequency domain. Filtering is in&lt;br /&gt;essence the multiplication of the signal spectrum by the&lt;br /&gt;frequency domain impulse response of the filter. For an ideal&lt;br /&gt;lowpass filter the pass band part of the signal spectrum is&lt;br /&gt;multiplied by one and the stopband part of the signal by zero.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6231746696076692156-8477552592334380161?l=hemalfilters.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hemalfilters.blogspot.com/feeds/8477552592334380161/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6231746696076692156&amp;postID=8477552592334380161' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6231746696076692156/posts/default/8477552592334380161'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6231746696076692156/posts/default/8477552592334380161'/><link rel='alternate' type='text/html' href='http://hemalfilters.blogspot.com/2007/12/essentials-of-digital-filtering.html' title='Essentials of Digital Filtering'/><author><name>hemal</name><uri>http://www.blogger.com/profile/18252553486648975425</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='02754111459927382239'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6231746696076692156.post-6808781581708233105</id><published>2007-12-15T04:01:00.001-08:00</published><updated>2007-12-15T04:01:45.035-08:00</updated><title type='text'>Recursive and non-recursive filters</title><content type='html'>For all the examples of digital filters discussed so far, the current output (yn) is calculated solely from the&lt;br /&gt;current and previous input values (xn, xn-1, xn-2, ...). This type of filter is said to be non-recursive.&lt;br /&gt;A recursive filter is one which in addition to input values also uses previous output values. These, like the&lt;br /&gt;previous input values, are stored in the processor's memory.&lt;br /&gt;The word recursive literally means "running back", and refers to the fact that previously-calculated output&lt;br /&gt;values go back into the calculation of the latest output. The expression for a recursive filter therefore contains&lt;br /&gt;not only terms involving the input values (xn, xn-1, xn-2, ...) but also terms in yn-1, yn-2, ...&lt;br /&gt;From this explanation, it might seem as though recursive filters require more calculations to be performed,&lt;br /&gt;since there are previous output terms in the filter expression as well as input terms. In fact, the reverse is&lt;br /&gt;usually the case: to achieve a given frequency response characteristic using a recursive filter generally requires&lt;br /&gt;a much lower order filter (and therefore fewer terms to be evaluated by the processor) than the equivalent nonrecursive&lt;br /&gt;filter. This will be demonstrated later.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6231746696076692156-6808781581708233105?l=hemalfilters.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hemalfilters.blogspot.com/feeds/6808781581708233105/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6231746696076692156&amp;postID=6808781581708233105' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6231746696076692156/posts/default/6808781581708233105'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6231746696076692156/posts/default/6808781581708233105'/><link rel='alternate' type='text/html' href='http://hemalfilters.blogspot.com/2007/12/recursive-and-non-recursive-filters.html' title='Recursive and non-recursive filters'/><author><name>hemal</name><uri>http://www.blogger.com/profile/18252553486648975425</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='02754111459927382239'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6231746696076692156.post-1289150055951194491</id><published>2007-12-15T04:00:00.000-08:00</published><updated>2007-12-15T04:01:12.691-08:00</updated><title type='text'>Order of a digital filter</title><content type='html'>The order of a digital filter is the number of previous inputs (stored in the processor's memory) used to&lt;br /&gt;calculate the current output.&lt;br /&gt;Thus:&lt;br /&gt;1. Examples (1) and (2) above are zero-order filters, as the current output yn depends only on the current input&lt;br /&gt;xn and not on any previous inputs.&lt;br /&gt;2. Examples (3), (4) and (5) are all of first order, as one previous input (xn-1) is required to calculate yn. (Note&lt;br /&gt;that the filter of example (3) is classed as first-order because it uses one previous input, even though the&lt;br /&gt;current input is not used).&lt;br /&gt;3. In examples (6) and (7), two previous inputs (xn-1 and xn-2) are needed, so these are second-order filters.&lt;br /&gt;Filters may be of any order from zero upwards.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6231746696076692156-1289150055951194491?l=hemalfilters.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hemalfilters.blogspot.com/feeds/1289150055951194491/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6231746696076692156&amp;postID=1289150055951194491' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6231746696076692156/posts/default/1289150055951194491'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6231746696076692156/posts/default/1289150055951194491'/><link rel='alternate' type='text/html' href='http://hemalfilters.blogspot.com/2007/12/order-of-digital-filter.html' title='Order of a digital filter'/><author><name>hemal</name><uri>http://www.blogger.com/profile/18252553486648975425</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='02754111459927382239'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6231746696076692156.post-6144433669256791647</id><published>2007-12-15T03:59:00.002-08:00</published><updated>2007-12-15T04:00:14.486-08:00</updated><title type='text'>Operation of digital filters</title><content type='html'>In this section, we will develop the basic theory of the operation of digital filters. This is essential to an&lt;br /&gt;understanding of how digital filters are designed and used.&lt;br /&gt;Suppose the "raw" signal which is to be digitally filtered is in the form of a voltage waveform described by the&lt;br /&gt;function&lt;br /&gt;V x t = ( )&lt;br /&gt;where t is time.&lt;br /&gt;This signal is sampled at time intervals h (the sampling interval). The sampled value at time t = ih is&lt;br /&gt;x x ih i = ( )&lt;br /&gt;Thus the digital values transferred from the ADC to the processor can be represented by the sequence&lt;br /&gt;x , x , x , x , ... 0 1 2 3&lt;br /&gt;corresponding to the values of the signal waveform at&lt;br /&gt;t = 0, h, 2h, 3h, ...&lt;br /&gt;and t = 0 is the instant at which sampling begins.&lt;br /&gt;At time t = nh (where n is some positive integer), the values available to the processor, stored in memory, are&lt;br /&gt;x , x , x , x , ... x 0 1 2 3 n&lt;br /&gt;Note that the sampled values xn+1, xn+2 etc. are not available, as they haven't happened yet!&lt;br /&gt;The digital output from the processor to the DAC consists of the sequence of values&lt;br /&gt;y , y , y , y , ... y 0 1 2 3 n&lt;br /&gt;In general, the value of yn is calculated from the values x0, x1, x2, x3, ... , xn. The way in which the y's are&lt;br /&gt;calculated from the x's determines the filtering action of the digital filter.&lt;br /&gt;In the next section, we will look at some examples of simple digital filters.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6231746696076692156-6144433669256791647?l=hemalfilters.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hemalfilters.blogspot.com/feeds/6144433669256791647/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6231746696076692156&amp;postID=6144433669256791647' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6231746696076692156/posts/default/6144433669256791647'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6231746696076692156/posts/default/6144433669256791647'/><link rel='alternate' type='text/html' href='http://hemalfilters.blogspot.com/2007/12/operation-of-digital-filters.html' title='Operation of digital filters'/><author><name>hemal</name><uri>http://www.blogger.com/profile/18252553486648975425</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='02754111459927382239'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6231746696076692156.post-8587724013661049430</id><published>2007-12-15T03:59:00.001-08:00</published><updated>2007-12-15T03:59:25.559-08:00</updated><title type='text'>Advantages of using digital filters</title><content type='html'>The following list gives some of the main advantages of digital over analog filters.&lt;br /&gt;1. A digital filter is programmable, i.e. its operation is determined by a program stored in the processor's&lt;br /&gt;memory. This means the digital filter can easily be changed without affecting the circuitry (hardware).&lt;br /&gt;An analog filter can only be changed by redesigning the filter circuit.&lt;br /&gt;2. Digital filters are easily designed, tested and implemented on a general-purpose computer or&lt;br /&gt;workstation.&lt;br /&gt;3. The characteristics of analog filter circuits (particularly those containing active components) are&lt;br /&gt;subject to drift and are dependent on temperature. Digital filters do not suffer from these problems,&lt;br /&gt;and so are extremely stable with respect both to time and temperature.&lt;br /&gt;4. Unlike their analog counterparts, digital filters can handle low frequency signals accurately. As the&lt;br /&gt;speed of DSP technology continues to increase, digital filters are being applied to high frequency&lt;br /&gt;signals in the RF (radio frequency) domain, which in the past was the exclusive preserve of analog&lt;br /&gt;technology.&lt;br /&gt;5. Digital filters are very much more versatile in their ability to process signals in a variety of ways; this&lt;br /&gt;includes the ability of some types of digital filter to adapt to changes in the characteristics of the&lt;br /&gt;signal.&lt;br /&gt;6. Fast DSP processors can handle complex combinations of filters in parallel or cascade (series),&lt;br /&gt;making the hardware requirements relatively simple and compact in comparison with the equivalent&lt;br /&gt;analog circuitry.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6231746696076692156-8587724013661049430?l=hemalfilters.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hemalfilters.blogspot.com/feeds/8587724013661049430/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6231746696076692156&amp;postID=8587724013661049430' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6231746696076692156/posts/default/8587724013661049430'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6231746696076692156/posts/default/8587724013661049430'/><link rel='alternate' type='text/html' href='http://hemalfilters.blogspot.com/2007/12/advantages-of-using-digital-filters.html' title='Advantages of using digital filters'/><author><name>hemal</name><uri>http://www.blogger.com/profile/18252553486648975425</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='02754111459927382239'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6231746696076692156.post-5158848619425487066</id><published>2007-12-15T03:58:00.001-08:00</published><updated>2007-12-15T03:58:42.051-08:00</updated><title type='text'>Analog and digital filters</title><content type='html'>In signal processing, the function of a filter is to remove unwanted parts of the signal, such as random noise, or&lt;br /&gt;to extract useful parts of the signal, such as the components lying within a certain frequency range.&lt;br /&gt;The following block diagram illustrates the basic idea.&lt;br /&gt;There are two main kinds of filter, analog and digital. They are quite different in their physical makeup and in&lt;br /&gt;how they work.&lt;br /&gt;An analog filter uses analog electronic circuits made up from components such as resistors, capacitors and op&lt;br /&gt;amps to produce the required filtering effect. Such filter circuits are widely used in such applications as noise&lt;br /&gt;reduction, video signal enhancement, graphic equalisers in hi-fi systems, and many other areas.&lt;br /&gt;There are well-established standard techniques for designing an analog filter circuit for a given requirement.&lt;br /&gt;At all stages, the signal being filtered is an electrical voltage or current which is the direct analogue of the&lt;br /&gt;physical quantity (e.g. a sound or video signal or transducer output) involved.&lt;br /&gt;A digital filter uses a digital processor to perform numerical calculations on sampled values of the signal. The&lt;br /&gt;processor may be a general-purpose computer such as a PC, or a specialised DSP (Digital Signal Processor)&lt;br /&gt;chip.&lt;br /&gt;The analog input signal must first be sampled and digitised using an ADC (analog to digital converter). The&lt;br /&gt;resulting binary numbers, representing successive sampled values of the input signal, are transferred to the&lt;br /&gt;processor, which carries out numerical calculations on them. These calculations typically involve multiplying&lt;br /&gt;the input values by constants and adding the products together. If necessary, the results of these calculations,&lt;br /&gt;which now represent sampled values of the filtered signal, are output through a DAC (digital to analog&lt;br /&gt;converter) to convert the signal back to analog form.&lt;br /&gt;Note that in a digital filter, the signal is represented by a sequence of numbers, rather than a voltage or current.&lt;br /&gt;The following diagram shows the basic setup of such a system.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6231746696076692156-5158848619425487066?l=hemalfilters.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hemalfilters.blogspot.com/feeds/5158848619425487066/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6231746696076692156&amp;postID=5158848619425487066' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6231746696076692156/posts/default/5158848619425487066'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6231746696076692156/posts/default/5158848619425487066'/><link rel='alternate' type='text/html' href='http://hemalfilters.blogspot.com/2007/12/analog-and-digital-filters.html' title='Analog and digital filters'/><author><name>hemal</name><uri>http://www.blogger.com/profile/18252553486648975425</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='02754111459927382239'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6231746696076692156.post-1330387773087697025</id><published>2007-12-15T03:57:00.001-08:00</published><updated>2007-12-15T03:57:55.219-08:00</updated><title type='text'>Pole-Zero Placement Filter Design</title><content type='html'>Figure 3 shows the Pole-Zero Placement filter design panel. The panel includes a graphical interface with the z-plane&lt;br /&gt;pole and zero cursors on the left side, and a text-based interface with digital controls on the right side. This panel can&lt;br /&gt;be used to design IIR digital filters by manipulating the filter poles and zeros in the z plane. The poles and zeros&lt;br /&gt;initially may have come from classical IIR designs. You can also use this panel to move or delete existing poles and&lt;br /&gt;zeros directly on the z plane plot for accurate control of their important characteristics. You can describe the poles&lt;br /&gt;and zeros by using either the text entry or the cursors in the z-plane plot. As the cursors are changed, the text entries&lt;br /&gt;update automatically. Likewise, as the text entries are modified, the pole/zero cursors update automatically. The pole&lt;br /&gt;and zero locations in the z-plane, the characteristics of each pole and zero, the gain, and the sampling rate fully&lt;br /&gt;describe pole-zero filter designs. Any change in these parameters corresponds to a change in the filter coefficients.&lt;br /&gt;The DFD Toolkit matches the poles and zeros and creates stable second-order stages for IIR filter coefficients. It then&lt;br /&gt;uses these coefficients to compute the filter magnitude response. The Magnitude vs Frequency plot updates&lt;br /&gt;automatically whenever the poles or zeros are changed giving an immediate graphical feedback to the users pole-zero&lt;br /&gt;filter designs.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6231746696076692156-1330387773087697025?l=hemalfilters.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hemalfilters.blogspot.com/feeds/1330387773087697025/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6231746696076692156&amp;postID=1330387773087697025' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6231746696076692156/posts/default/1330387773087697025'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6231746696076692156/posts/default/1330387773087697025'/><link rel='alternate' type='text/html' href='http://hemalfilters.blogspot.com/2007/12/pole-zero-placement-filter-design.html' title='Pole-Zero Placement Filter Design'/><author><name>hemal</name><uri>http://www.blogger.com/profile/18252553486648975425</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='02754111459927382239'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6231746696076692156.post-3492849212703514736</id><published>2007-12-15T03:56:00.000-08:00</published><updated>2007-12-15T03:57:02.480-08:00</updated><title type='text'>Classical FIR Filter Design</title><content type='html'>The classical FIR Design panel (Fig. 2) is used to design FIR filters. These filters include the classic types such as&lt;br /&gt;lowpass, highpass, bandpass, and bandstop and employ the Parks-Mclellan equiripple FIR filter design algorithm.&lt;br /&gt;This panel is very similar to the Classical IIR Design panel and operates in much the same way. The panel includes&lt;br /&gt;a graphical interface with the Magnitude vs Frequency cursors and plot on the left side and a text-based interface with&lt;br /&gt;digital controls on the right side. You design classical FIR filters adjusting the desired filter specifications. The&lt;br /&gt;desired passband and stopband requirements define a filter specification. You define the filter requirements by using&lt;br /&gt;either text entry or the cursors in the Magnitude vs Frequency graph. As the cursors are moved, the text entries are&lt;br /&gt;updated accordingly.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6231746696076692156-3492849212703514736?l=hemalfilters.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hemalfilters.blogspot.com/feeds/3492849212703514736/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6231746696076692156&amp;postID=3492849212703514736' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6231746696076692156/posts/default/3492849212703514736'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6231746696076692156/posts/default/3492849212703514736'/><link rel='alternate' type='text/html' href='http://hemalfilters.blogspot.com/2007/12/classical-fir-filter-design.html' title='Classical FIR Filter Design'/><author><name>hemal</name><uri>http://www.blogger.com/profile/18252553486648975425</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='02754111459927382239'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6231746696076692156.post-1406845749360287176</id><published>2007-12-15T03:55:00.000-08:00</published><updated>2007-12-15T03:56:09.645-08:00</updated><title type='text'>Classical IIR Filter Design</title><content type='html'>The Classical IIR Filter Design (Fig. 1) panel is used to design classical IIR digital filters. These filters include the&lt;br /&gt;classic types such as lowpass, highpass, bandpass, and the classic designs such as Butterworth, Chebyshev, Inverse&lt;br /&gt;Chebyshev, and Elliptic. The IIR Design panel consists of a graphical interface with the Magnitude vs Frequency&lt;br /&gt;cursors and plot on the left side and a text-based interface with digital controls on the right side. You design classical&lt;br /&gt;IIR filters by adjusting the filter specifications on the panel. You design the passband and stopband requirements&lt;br /&gt;either by using the text entry or the cursors in the Magnitude vs Freqeuncy graph. As the cursors are moved, the text&lt;br /&gt;entries are updated accordingly.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6231746696076692156-1406845749360287176?l=hemalfilters.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hemalfilters.blogspot.com/feeds/1406845749360287176/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6231746696076692156&amp;postID=1406845749360287176' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6231746696076692156/posts/default/1406845749360287176'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6231746696076692156/posts/default/1406845749360287176'/><link rel='alternate' type='text/html' href='http://hemalfilters.blogspot.com/2007/12/classical-iir-filter-design.html' title='Classical IIR Filter Design'/><author><name>hemal</name><uri>http://www.blogger.com/profile/18252553486648975425</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='02754111459927382239'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6231746696076692156.post-3049214744071144736</id><published>2007-12-15T03:54:00.000-08:00</published><updated>2007-12-15T03:55:03.339-08:00</updated><title type='text'>Digital Filter Design Application</title><content type='html'>The Digital Filter Design (DFD) Toolkit is a complete filter design and analysis tool that you can use to design&lt;br /&gt;digital filters to meet required filter specifications. The underlying filter design software is implemented in LabVIEW&lt;br /&gt;(References 2 and 3), a complete graphical software development system. With the toolkit, users can graphically&lt;br /&gt;design IIR and FIR filters, interactively review filter responses, save filter design work, and load design work from&lt;br /&gt;previous sessions. In addition, the DFD Toolkit includes a digital filter DLL that can be accessed from other&lt;br /&gt;Windows applications such as Visual Basic or Microsoft C. Plus, the DFD Toolkit includes functions so that other&lt;br /&gt;applications such as LabVIEW and LabWindows/CVI can load the filter coefficient and execute the filter design&lt;br /&gt;within the environment. Lastly, interactive real-world filter testing can be performed within the DFD application&lt;br /&gt;using a standard National Instruments data acquisition device. You can view the time waveforms or the spectra of&lt;br /&gt;both the input signal and the filtered output signal to show how the present filter performs on real-world signals.&lt;br /&gt;This feature delivers the ability to test the filter design before it is implemented in a custom application in&lt;br /&gt;LabVIEW, LabWindows, Visual Basic, or Microsoft C.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6231746696076692156-3049214744071144736?l=hemalfilters.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hemalfilters.blogspot.com/feeds/3049214744071144736/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6231746696076692156&amp;postID=3049214744071144736' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6231746696076692156/posts/default/3049214744071144736'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6231746696076692156/posts/default/3049214744071144736'/><link rel='alternate' type='text/html' href='http://hemalfilters.blogspot.com/2007/12/digital-filter-design-application.html' title='Digital Filter Design Application'/><author><name>hemal</name><uri>http://www.blogger.com/profile/18252553486648975425</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='02754111459927382239'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6231746696076692156.post-4942057846751304313</id><published>2007-12-15T03:53:00.001-08:00</published><updated>2007-12-15T03:53:33.750-08:00</updated><title type='text'>Digital Filter Design Process</title><content type='html'>Digital filters are used in a wide variety of signal processing applications, such as spectrum analysis, digital image&lt;br /&gt;processing, and pattern recognition. Digital filters eliminate a number of problems associated with their classical&lt;br /&gt;analog counterparts and thus are preferably used in place of analog filters. Digital filters belong to the class of&lt;br /&gt;discrete-time LTI (linear time invariant) systems, which are characterized by the properties of causality, recursibility,&lt;br /&gt;and stability. They can be characterized in the time domain by their unit-impulse response, and in the transform&lt;br /&gt;domain by their transfer function. Obviously, the unit-impulse response sequence of a causal LTI system could be of&lt;br /&gt;either finite or infinite duration and this property determines their classification into either finite impulse response&lt;br /&gt;(FIR) or infinite impulse response (IIR) system. To illustrate this, we consider the most general case of a discretetime&lt;br /&gt;LTI system with the input sequence denoted by x(kT) and the resulting output sequence y(kT). As it can be seen&lt;br /&gt;from (1), if for at least one v, a n ¹ 0, the corresponding system is recursive; its impulse response is of infinite&lt;br /&gt;duration (IIR system). If a n = 0, the corresponding system is nonrecursive (FIR system); its impulse response is of&lt;br /&gt;finite duration and the transfer function H(z) is a polynomial in z-1 . Commonly, bm is called the mth forward&lt;br /&gt;filter coefficient and a n the nth feedback or reverse filter coefficient.&lt;br /&gt;The design of digital filters involves the following basic steps:&lt;br /&gt;· Determine the desired response. The desired response is normally specified in the frequency domain in terms of&lt;br /&gt;the desired magnitude response and/or the desired phase response.&lt;br /&gt;· Select a class of filters (for example, linear-phase FIR filters or IIR filters) to approximate the desired response.&lt;br /&gt;· Select the best member in the filter class.&lt;br /&gt;Implement the best filter using a general purpose computer, a DSP, or a custom hardware chip.&lt;br /&gt;· Analyze the filter performance to determine whether the filter satisfies all the given criteria.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6231746696076692156-4942057846751304313?l=hemalfilters.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hemalfilters.blogspot.com/feeds/4942057846751304313/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6231746696076692156&amp;postID=4942057846751304313' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6231746696076692156/posts/default/4942057846751304313'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6231746696076692156/posts/default/4942057846751304313'/><link rel='alternate' type='text/html' href='http://hemalfilters.blogspot.com/2007/12/digital-filter-design-process.html' title='Digital Filter Design Process'/><author><name>hemal</name><uri>http://www.blogger.com/profile/18252553486648975425</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='02754111459927382239'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6231746696076692156.post-5899156555005893257</id><published>2007-12-15T03:50:00.000-08:00</published><updated>2007-12-15T03:52:21.815-08:00</updated><title type='text'>Introduction</title><content type='html'>The importance of digital filters is well established. Digital filters, and more generally digital signal processing&lt;br /&gt;algorithms, are classified as discrete-time systems. They are commonly implemented on a general purpose computer&lt;br /&gt;or on a dedicated digital signal processing (DSP) chip. Due to their well-known advantages, digital filters are often&lt;br /&gt;replacing classical analog filters. In this application note, we introduce a new digital filter design and analysis tool&lt;br /&gt;implemented in LabVIEW with which developers can graphically design classical IIR and FIR filters, interactively&lt;br /&gt;review filter responses, and save filter coefficients. In addition, real-world filter testing can be performed within the&lt;br /&gt;digital filter design application using a plug-in data acquisition board.Digital Signal Processing (DSP) affords greater flexibility, higher&lt;br /&gt;performance (in terms of attenuation and selectivity), better&lt;br /&gt;time and environment stability and lower equipment production&lt;br /&gt;costs than traditional analog techniques. Additionally, more and&lt;br /&gt;more microprocessor circuitry is being displaced with costeffective&lt;br /&gt;DSP techniques and products; an example of this is&lt;br /&gt;the emergence of DSP in cellular base stations. Components&lt;br /&gt;available today let DSP extend from baseband to intermediate&lt;br /&gt;frequencies (IFs). This makes DSP useful for tuning and signal&lt;br /&gt;selectivity, and frequency up and down conversion.&lt;br /&gt;These new DSP applications result from advances in digital&lt;br /&gt;filtering. This Application Note will overview digital filtering by&lt;br /&gt;addressing concepts which can be extended to baseband&lt;br /&gt;processing on programmable digital signal processors.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6231746696076692156-5899156555005893257?l=hemalfilters.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hemalfilters.blogspot.com/feeds/5899156555005893257/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6231746696076692156&amp;postID=5899156555005893257' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6231746696076692156/posts/default/5899156555005893257'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6231746696076692156/posts/default/5899156555005893257'/><link rel='alternate' type='text/html' href='http://hemalfilters.blogspot.com/2007/12/introduction.html' title='Introduction'/><author><name>hemal</name><uri>http://www.blogger.com/profile/18252553486648975425</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='02754111459927382239'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry></feed>