Silicon ChipCircuit Surgery - August 2024 SILICON CHIP
  1. Contents
  2. Subscriptions
  3. Back Issues
  4. Publisher's Letter: Exciting News!
  5. Feature: Techno Talk - That makes so much sense! by Max the Magnificent
  6. Feature: Net Work by Alan Winstanley
  7. Project: LC and ESR Meter by Steve Matthysen
  8. Project: WebMite by Geoff Graham & Peter Mather
  9. Project: WebMite-based Watering System Controller by Geoff Graham
  10. Feature: Circuit Surgery by Ian Bell
  11. Feature: Audio Out by Jake Rothman
  12. Feature: Max’s Cool Beans by Max the Magnificent
  13. Feature: Teach-In 2024 – Learn electronics with the ESP32 by Mike Tooley
  14. Market Centre
  15. Advertising Index
  16. PartShop
  17. Back Issues

This is only a preview of the August 2024 issue of Practical Electronics.

You can view 0 of the 72 pages in the full issue.

Articles in this series:
  • (November 2020)
  • Techno Talk (December 2020)
  • Techno Talk (January 2021)
  • Techno Talk (February 2021)
  • Techno Talk (March 2021)
  • Techno Talk (April 2021)
  • Techno Talk (May 2021)
  • Techno Talk (June 2021)
  • Techno Talk (July 2021)
  • Techno Talk (August 2021)
  • Techno Talk (September 2021)
  • Techno Talk (October 2021)
  • Techno Talk (November 2021)
  • Techno Talk (December 2021)
  • Communing with nature (January 2022)
  • Should we be worried? (February 2022)
  • How resilient is your lifeline? (March 2022)
  • Go eco, get ethical! (April 2022)
  • From nano to bio (May 2022)
  • Positivity follows the gloom (June 2022)
  • Mixed menu (July 2022)
  • Time for a total rethink? (August 2022)
  • What’s in a name? (September 2022)
  • Forget leaves on the line! (October 2022)
  • Giant Boost for Batteries (December 2022)
  • Raudive Voices Revisited (January 2023)
  • A thousand words (February 2023)
  • It’s handover time (March 2023)
  • AI, Robots, Horticulture and Agriculture (April 2023)
  • Prophecy can be perplexing (May 2023)
  • Technology comes in different shapes and sizes (June 2023)
  • AI and robots – what could possibly go wrong? (July 2023)
  • How long until we’re all out of work? (August 2023)
  • We both have truths, are mine the same as yours? (September 2023)
  • Holy Spheres, Batman! (October 2023)
  • Where’s my pneumatic car? (November 2023)
  • Good grief! (December 2023)
  • Cheeky chiplets (January 2024)
  • Cheeky chiplets (February 2024)
  • The Wibbly-Wobbly World of Quantum (March 2024)
  • Techno Talk - Wait! What? Really? (April 2024)
  • Techno Talk - One step closer to a dystopian abyss? (May 2024)
  • Techno Talk - Program that! (June 2024)
  • Techno Talk (July 2024)
  • Techno Talk - That makes so much sense! (August 2024)
  • Techno Talk - I don’t want to be a Norbert... (September 2024)
  • Techno Talk - Sticking the landing (October 2024)
  • Techno Talk (November 2024)
  • Techno Talk (December 2024)
  • Techno Talk (January 2025)
  • Techno Talk (February 2025)
  • Techno Talk (March 2025)
  • Techno Talk (April 2025)
  • Techno Talk (May 2025)
  • Techno Talk (June 2025)
Articles in this series:
  • Win a Microchip Explorer 8 Development Kit (April 2024)
  • Net Work (May 2024)
  • Net Work (June 2024)
  • Net Work (July 2024)
  • Net Work (August 2024)
  • Net Work (September 2024)
  • Net Work (October 2024)
  • Net Work (November 2024)
  • Net Work (December 2024)
  • Net Work (January 2025)
  • Net Work (February 2025)
  • Net Work (March 2025)
  • Net Work (April 2025)
Articles in this series:
  • Circuit Surgery (April 2024)
  • STEWART OF READING (April 2024)
  • Circuit Surgery (May 2024)
  • Circuit Surgery (June 2024)
  • Circuit Surgery (July 2024)
  • Circuit Surgery (August 2024)
  • Circuit Surgery (September 2024)
  • Circuit Surgery (October 2024)
  • Circuit Surgery (November 2024)
  • Circuit Surgery (December 2024)
  • Circuit Surgery (January 2025)
  • Circuit Surgery (February 2025)
  • Circuit Surgery (March 2025)
  • Circuit Surgery (April 2025)
  • Circuit Surgery (May 2025)
  • Circuit Surgery (June 2025)
Articles in this series:
  • Audio Out (January 2024)
  • Audio Out (February 2024)
  • AUDIO OUT (April 2024)
  • Audio Out (May 2024)
  • Audio Out (June 2024)
  • Audio Out (July 2024)
  • Audio Out (August 2024)
  • Audio Out (September 2024)
  • Audio Out (October 2024)
  • Audio Out (March 2025)
  • Audio Out (April 2025)
  • Audio Out (May 2025)
  • Audio Out (June 2025)
Articles in this series:
  • Max’s Cool Beans (April 2024)
  • Max’s Cool Beans (May 2024)
  • Max’s Cool Beans (June 2024)
  • Max’s Cool Beans (July 2024)
  • Max’s Cool Beans (August 2024)
  • Max’s Cool Beans (September 2024)
  • Max’s Cool Beans (October 2024)
  • Max’s Cool Beans (November 2024)
  • Max’s Cool Beans (December 2024)
Articles in this series:
  • Teach-In 2024 (April 2024)
  • Teach-In 2024 (May 2024)
  • Teach-In 2024 – Learn electronics with the ESP32 (June 2024)
  • Teach-In 2024 – Learn electronics with the ESP32 (July 2024)
  • Teach-In 2024 – Learn electronics with the ESP32 (August 2024)
  • Teach-In 2024 – Learn electronics with the ESP32 (September 2024)
  • Teach-In 2024 – Learn electronics with the ESP32 (October 2024)
  • Teach-In 2024 – Learn electronics with the ESP32 (November 2024)
Circuit Surgery Regular clinic by Ian Bell Topics in digital signal processing – the frequency domain W e are looking at various topics related to digital signal processing (DSP). DSP covers a wide range of electronics applications where signals are manipulated, analysed, generated, stored or displayed as digital data, but originate from, and/or are output as, real-world signals for interaction with humans or other parts of the physical world. Fig.1 shows the key elements of a generic DSP system with a signal path from an analogue input via digital processing to an analogue output. This does not necessarily represent every DSP system (not all have all the parts shown) but it serves are as reference for the various subsystems we will look at. In our discussion of sampling signals, so far we have mainly considered the signals in time domain (waveforms of voltage against time) but in DSP is it also important to understand the frequency content of signals (the frequency domain). For example, we have already discussed the Nyquist rate and the need for an antialiasing filter (see Fig.1) to remove signals which would cause errors in the sampled signal. This requirement relates to the frequencies inherently contained in sampled signals. As Matt Pulzer mentioned in his May 2024 Editorial, DSP is notoriously maths heavy. This month, we will cover several concepts which relate to the mathematics in DSP, but with a focus on the ideas rather than the equations. We will use one key formula and do some calculations that involve just multiplying and adding. Spectra To depict the frequency domain, we use graphs of signal strength versus frequency – the signal’s spectrum. We also plot parameters such as the gain of a circuit against frequency as a frequency-response graph. Looking at frequency responses and signal spectra together shows us the Analogue In Antialiasing filter Sample and hold Fig.1. Generic DSP system structure. 44 effect circuits or signal processing will have on a signal and helps us understand design requirements. The frequency axis of signal spectra and response plots may be linear or logarithmic, with logarithmic axes often used when a very wide range of frequencies is considered. Signal strength on spectra may be plotted with various parameters such as voltage, current, power or power density. Although theoretical spectra can be continuous functions, the practicalities of measurement and simulation usually result in a spectrum that is effectively a histogram comprising frequency ranges or ‘bins’ for which the signal strength is plotted. It follows that if we change the width of the bins the signal level in each bin may also change. Using spectral density avoids this problem, however, when spectra are drawn simply to show the general shape of the signals at different frequencies, rather than provide specific numerical data/measurements, the units and bin ranges are often less importance. The sinewave has the simplest spectrum with a single peak at just one frequency (see Fig.2). Other simple periodic waveforms, such as square waves, have spectra with peaks with specific relative magnitudes at specific sets of individual frequencies (see Fig.3). Non-periodic, meaningful waveforms, such as voice signals, contain a wide range of different frequencies, but with stronger components at some frequencies than others, and a potentially complex variation of signal strength with frequency. Often when discussing signal processing we want to depict the spectrum of a generic non-periodic signal, such as speech or music. Fig.4 shows a spectrum of such a signal which has content from DC to 2kHz. Fig.5 shows a spectrum of a signal with no DC (zero amplitude at zero frequency) but also with content in the range up to 2kHz. Spectral shapes Digital ADC Digital processing Analogue DAC Reconstruction filter Amplitude 0 1 2 3 4 5 6 7 8 Frequency/kHz Fig.2. Spectrum of a 1kHz sinewave. Amplitude 0 1 2 3 4 5 6 7 8 Frequency/kHz Fig.3. Spectrum of a 1kHz square wave. Amplitude 0 1 2 3 4 5 6 7 8 Frequency/kHz Fig.4. Spectrum of a generic non-period waveform with DC. Amplitude 0 1 2 3 4 5 6 7 8 Frequency/kHz Fig.5. Spectrum of a generic non-period waveform with no DC. such as these are commonly used when discussing signal processing in the frequency domain. The spectra in such figures are often drawn on linear axes which can go down to zero (DC) Out – log frequency axes cannot show zero frequency (minus infinity on a log scale). Practical Electronics | August | 2024 Amplitude –4 –3 –2 –1 0 1 2 3 4 Frequency/kHz Fig.6. Spectrum for a 1kHz sinewave with negative frequencies shown (same signal as shown in Fig.2). Amplitude –4 –3 –2 –1 0 1 2 3 4 Frequency/kHz Fig.7. Spectrum of a generic non-period waveform with DC with negative frequencies shown (same signal as shown in Fig.4). The mathematics behind the idea that a signal can be represented as a sum of sinewaves (this is effectively what a spectrum shows) was first proposed by the French mathematician Joseph Fourier (1768 – 1830). The set of peaks in a periodic waveform is called its Fourier series, and the more general mathematical process for converting from a time domain to a frequency domain representation of a signal is called the Fourier Transform (and the reverse or inverse Fourier Transform goes the other way). For the sampled signals used in DSP the basic Fourier Transform is replaced by the Discrete Fourier Transform (DFT). There are several methods of calculating the DFT from the signal sample data, but one method, the Fast Fourier Transform (FFT), as its name suggests, is much more computationally effective than the others, so FFT is the usual approach. To see the spectrum of a waveform in LTspice you use View > FFT from the right-click menu on the waveform. A consequence of the Fourier Transform is that the spectrum of a signal contains negative frequencies. This concept may be hard grasp intuitively – it is a result of the mathematical representation of the spectrum rather than being part of our direct perception of the world. It is related to the need to represent signals and circuit responses using ‘complex numbers’. Amplitude alone is not sufficient to fully define a sinusoidal signal of a given frequency – we also need to know phase (offset in time). Phase and amplitude are not the most convenient way of representing the signal for mathematical analysis. An alternative, also with two values, is to represent the Practical Electronics | August | 2024 signal using complex numbers. The two parts of a complex number are known as the ‘real’ and ‘imaginary’ parts. The term imaginary is employed because these values are multiples of the square root of –1 (given the symbol ‘j’ in electronics). There is no ‘normal’ number which when multiplied by itself gives –1, but it is a very useful mathematical concept for describing things that really do happen. For many signals the spectrum is symmetrical about zero frequency – for example, Fig.6 shows the spectrum of a 1kHz sinewave including negative frequencies and Fig.7 shows the same spectrum as Fig.4 with the negative frequencies included. The commonly seen symmetrical spectra may indicate the negative part is redundant, however, asymmetric spectra are possible; this is related to the complex number properties of the signal and occurs in cases such as the quadrature modulation mentioned in the February 2024 Circuit Surgery. Impulses An impulse is an idealised pulse. We mentioned impulses in the May 2024 Circuit Surgery, and it is worth discussing them in more detail because they are important in signal processing. For example, digital filters are categorised in terms of their response to impulse inputs. We can consider sampling as multiplying the continuous time signal by an impulse train (a waveform comprising a set of evenly spaced impulses). In continuous time an impulse (also called a ‘Dirac delta’) is a pulse which is of zero duration but with ‘an area under the curve’ of one. For discrete (sampled) signals an impulse is a single sample with a value of 1 at one sample point and a value of 0 for all other samples. This is called a unit sample and is related to another mathematic concept called the ‘Kronecker delta’. Fig.8 shows a way of visualising a continuous time impulse, and a sampled signal impulse is shown in Fig.9. The top waveform (a) in Fig.8 shows a pulse that starts at time –2T and ends at +2T, so it has a duration to 4 (in arbitrary time units). It is zero at all other times. Its amplitude is ¼ (this could be volts, but again the units are arbitrary in this discussion). The area under the pulse is simple to calculate because of its rectangular shape – it is 4 × ¼ = 1. The middle waveform (b) shows a pulse half the duration and twice the amplitude of waveform (a). Its area is also 1 (2 × ½). Similarly, the bottom waveform is again half the duration and twice the amplitude, so the area is still 1 (1 × 1). We can repeat this process many times with the pulse getting shorter and greater in amplitude. Eventually the pulse duration will tend towards zero and the amplitude towards infinity, but still with (a) Area = 4 × ¼ = 1 ¼ –2T –1 0 (b) 1 Area = 2 × ½ = 1 ½ –2T –1 t –2T 0 1 t –2T 1 (c) Area = 1 × 1 = 1 –2T –1 0 1 t –2T Fig.8. Visualising a continuous time impulse. 1 –3 –2 –1 0 1 2 3 n Fig.9. Unit sample (discrete time impulse). an area of 1 – this is an impulse. The shape is not necessarily rectangular, but this representation makes it easier to show the constant area in this discussion. Fig.10 shows a continuous time waveform, the unit impulse train used for sampling and the sampled signal. The spectrum of a unit impulse train is interesting in that it has the same shape in the frequency domain – it is also a set of evenly spaced impulses. If the time domain impulse train has amplitude 1 (unit impulse) and a period (time between impulses) of T (the sampling period) then the spectrum is an impulse train of amplitude 1/T spaced by f = 1/T, where f is the sampling frequency. The spectrum of the sampling impulse train from Fig.10 is shown in Fig.11. The arrowheads seen on the waveforms and spectrum in Fig.10 and Fig.11 are commonly used to indicate impulses. The sampling impulse train and impulse train in the spectrum are often considered to extend from minus infinity to plus infinity (in time and frequency) for theoretical work, but of course this does not happen for real signals. Convolution We know the spectrum of the sinewave in Fig.10 (a single frequency peak, like the spectrum in Fig.2) and we have just seen the spectrum of the impulse train from Fig.10 (Fig.11). We also know that the 45 Continuous waveform with sample points xc(t) t Sampling impulse train s(t) shown in Fig.10) the two functions are the sinewave spectrum (xc(f)) (like Fig.2) and the impulse train spectrum s(f) (like Fig.11). These are both functions of frequency that are convolved to find the spectrum of the sampled signal (xs(f)), again a function of frequency. Equation Convolution can be applied to both continuous and discrete (sample-based) functions. For continuous functions its Sampled signal xs(t) definition involves integration (calculus), but for the discrete case we replace integration with summation, which is easier to t understand if you have not studied calculus. The convolution of the two discrete Digital Signal Processing Topics – Frequency Domain functions f(n) and g(n) is Fig.10. Time domain (waveform) view of the defined by the following sampling process. equation: t T sampled signal in Fig.10 (xs(t)) is related to the continuous (xc(t)) and sampling (s(t)) signal by multiplication: xs(t) = xc(t)s(t). The question arises as to how this relationship maps to the frequency domain, and hence what the spectrum of the sampled signal is. This leads us to an important mathematical operation called ‘convolution’ and an important theorem which states that the multiplication of two functions in time domain is equivalent to the convolution of their spectra in the frequency domain. Similarly, the convolution of two functions in time domain is equivalent to the multiplication of their spectra in frequency domain. Unless you have studied mathematics at a fairly advanced level you may not have heard of convolution, however it is very important in a variety of areas – DSP of course – but also probability theory, image processing, artificial intelligence and various other areas of mathematics, physics and engineering. A reasonably simple example, that people might not be aware is a type of convolution, is the moving average in statistics, which is also related to the basics of digital filtering. Convolution is an operation performed on two mathematical functions; it combines them to produce a new function. In our case (spectra related to the signals s(f) 1/T –4f –3f –2f –f 0 f 2f 3f 4f Frequency Fig.11. Spectrum of the sampling impulse train from Fig.10, where f = 1/T. 46 ! 𝑓𝑓(𝑛𝑛) ∗ 𝑔𝑔(𝑛𝑛) = ( 𝑓𝑓(𝑚𝑚) 𝑔𝑔(𝑛𝑛 − 𝑚𝑚) "#$! We will look at the various parts of this equation to explain what they mean. The convolution operator symbol is ‘*’, so f(n)*g(n) means the convolution of functions f and g. (The fact that the symbol * is commonly used for multiplication in coding languages is a possible source of confusion.) A function is a mathematical operation performed on one or more variables (the variables are n and m in the above). Functions are often named using a single letter (f and g in the above). For example, we could define a function called q on variable x as meaning ‘x squared’, then we would write q(x) = x 2. However, functions in this context can also refer to things such as waveforms and spectra for which there is not a very simple expression such as x2, but for which we know or can find the value of, say, f(n) for any value of n. As noted, the above equation is the discrete version of convolution, which means the functions are of discrete variables – that is, n and m are integer (whole number) values. As mentioned above, we typically assume that waveform and spectrum data ranges from minus to plus infinity, so n and m would start at -∞, go through zero, that is … -1, -2, 0, 1, 2, 3 … and then on up to ∞. For real waveforms and spectra, we obviously have to use a more limited range and so typically assume all values of the function outside the range of interest are zero. The symbol S (Greek capital sigma) in the convolution equation is the summation operator, which means, ‘add Fig.12. Tetrahedral dice. up everything in the sequence of values defined by the expression to the right of the sigma symbol (f(m)*g(n-m) in this case) and the summation range definition is below and above the symbol’. Here the range is for variable m from -∞ to ∞. The value below the sigma symbol defines the start value for m via the expression m = -∞ and the final value of m in the sequence is written above the sigma symbol. The value of n is fixed for a given summation in the convolution equation, but to find the complete result of the convolution (eg, a new spectrum) we need to calculate a separate summation for all values of n from -∞ to ∞. However, as noted previously we can restrict our calculations to much smaller ranges of n and m for practical applications. Convolving dice We will illustrate a convolution calculation in a simple context before looking at the calculation for a spectrum example. Consider throwing two dice and working out what the probability that you get a specific total value. This is easy enough to solve by writing down all the combinations, but it can also be solved by a convolution, so it is a useful example to show how the summation sequences work. We will consider two tetrahedral dice (see Fig.12) as they have just four possible values rather than the standard six – this simply reduces the amount of calculation. For the first dice [‘die’ if you prefer] the function f(n) is the probability of rolling value n, which is ¼ or 0.25 for n = 1,2,3,4. Given that n can be any integer we note that for all other values of n, f(n) is zero. The function g(n) is the probability of rolling value n for the second dice, which has the same values as f(n). The values are shown in Table 1. The convolution f(n)*g(n) is equal to the probability that the total value of the two dice will be n. Given the minimum total is 2 (rolling two 1s) and maximum is 8 (two 4s) we expect f(n)*g(n) to be zero for all values except n = 2 to 8. We will Practical Electronics | August | 2024 Table 1. Tetrahedral dice probabilities. n … -2 -1 0 1 2 3 4 5 6 … f(n), g(n) 0 0 0 0 0.25 0.25 0.25 0.25 0 0 0 1 –5 0 10 f 5 Fig.13. Spectrum of sinewave of frequency f = 1 which is sampled. xs(f) 1 –10 –5 0 10 f 5 Fig.14. Spectrum of the sampling impulse train with sample frequency f = 5. look at one example calculation in detail – getting a total of 6. There are 16 possible outcomes from rolling the two dice of which 3 combinations add up to 6, these are 2+4, 3+3 and 4+2, so the probability (calculated without convolution) of the total being 6 is 3/16 = 0.1875. The convolution calculation f(6)*g(6) is shown below in Table 2. This shows the summation (from the equation above) for a range of values of m around the points at which the results are non-zero. For all other values of m we know that the result will be zero so we do not need to calculate these. The convolution delivers the result f(6)*g(6) = 0.0625 + 0.0625 + 0.0625 = 0.1875, the same as above. Convolution can be described as the product of two functions where one is reflected in the y-axis (reversed) and shifted. We see in the above that in the calculation of f(n)*g(n) the terms in f() and g() use different values of the variable (eg, f(1)g(5) and f(2) g(4)) – this is the ‘shifting’. Also, the variable for g() goes down in value as the summation progresses (g(5), g(4), g(3) and so on) – this the ‘reversal’ or ‘reflection’. If you search online you can find various animations which illustrate convolution calculations graphically to help emphasise this point – for example, https://youtu.be/KuXjwB4LzSA Table 2. Convolution calculation. xs(f) –fs –10 –5 0 2fs 5 10 f The dice example may seem a long way Fig.15. Spectrum of the sampled sinewave from DSP, but digital filters are based obtained by convolving the spectra in Fig.13 on calculations like these in which f() is and Fig.14. Note the replication of the the input signal and g() is a set of values original spectrum. which set the filter’s characteristics. Also, as we mentioned above, we can use xs(f) –fs fs 2fs –2fs convolution to calculate the spectrum of a sampled signal from the spectra of the continuous signal and sampling signal. In general, the spectra may be continuous, but by avoiding rigorous –10 –5 0 5 10 f maths and choosing a simple case where Fig.16. Spectrum of the signal similar to that we can assume discrete spectra we can in Fig.7 with a bandwidth from DC to f = 2 provide an illustration of this. sampled at fs = 5. Consider a sinewave of frequency 1 multiples of fs to ±∞, but of course it is (arbitrary units, but could be kHz) and sampling rate of 5 (could be 5kHz). limited in range in real systems. In the The sinewave spectrum is xc(f), which discussion on modulation in December 2023 we saw that multiplying waveforms corresponds to f() in the convolution together produced sum and difference equation and is shown in Fig.13. Its value is frequencies, and this is also what is zero for all cases except xc(-1) and xc(1). The happening here with sum and difference sampling signal spectrum s(f) corresponds occurring at each multiple of the sampling to g() in the convolution equation and is frequency. A further illustration in Fig.16 shown in Fig.14. Its value is zero for all shows the spectrum of a sampled version cases except s(0) and s(n) where n is a of a signal similar to that in Fig.7 where multiple of 5. In general, the amplitude of the original spectrum extends from DC s(f) is the amplitude of the pulse divided to f = 2 and sampling frequency is again by T (sampling period); however, we will fs = 5. Again, we see the replication of just assume it is 1 for simplicity. We can quickly calculate xc(n)*s(n) to the spectrum at each multiple of the sampling frequency. Next month, we find the sampled waveform spectrum will look at the implications of sampled by just considering the summation of signal spectra for system design. x c(m)s(n-m) for the two cases where xc(m) is 1 (at m = -1 and 1) as all other cases contribute zero. Table 3. Convolution to calculate sampled signal spectrum (non-zero values highlighted in blue). This is shown in Table 3 for a small example range of n and m = -1 m=1 the resulting spectra is shown S n-m xc(m)s(n-m) n n-m xc(m)s(n-m) in Fig.15. -2 -1 0 -3 0 0 From Table 3 and Fig.15 we see that spectrum of the -1 0 1 -2 0 1 sampled waveform contains the 0 1 0 -1 0 0 original spectrum (at f = -1 and 1) plus copies of the spectrum 1 2 0 0 1 1 shifted from its original position 2 3 0 1 0 0 centred on 0 to being centred 3 4 0 2 0 0 on multiples of the sampling frequency. For example, the 4 5 1 3 0 1 original spectrum is replicated 5 6 0 4 0 0 centred around f s to gives peaks at f = 4 and 6 (+1 and 6 7 0 5 1 1 -1 relative to 5). Theoretically 7 8 0 6 0 0 this replication occurs for all m … 0 1 f(6)*g(6) = …+ f(0)g(6-0) + f(1)g(6-1) + f(2)g(6-2) + f(3)g(6-3) + f(4)g(6-4) + f(5)g(6-5) f(6)*g(6) = …+ f(0)g(6) + f(1)g(5) + f(2)g(4) + f(3)g(3) + f(4)g(2) + f(6)*g(6) = …+ 0×0 + 0.25×0 + 0.25×0.25 + 0.25×0.25 + 0.25×0.25 f(6)*g(6) = …+ 0 + 0 + 0.0625 + 0.0625 + 0.0625 Practical Electronics | August | 2024 fs 1 Convolving spectra xc(f) –10 –2fs 2 3 4 5 6 … + f(6)g(6-6) +… f(5)g(0) + f(6)g(0) +… + 0×0.25 + 0×0 +… + 0 + 0 +… 47