Download - a074.pdf

Transcript
  • 8/14/2019 a074.pdf

    1/37

    Amateur-radio Applications of the Fast Fourier Transform ========================================================

    1. Introduction--------------- The Fast Fourier Transform (FFT) is a very efficientnumerical algorithm to compute a discrete Fourier transform.The FFT algorithm has found many different applications and itis not limited only to digital computers and digital signalprocessing. For example a completely analog implementation ofthe FFT algorithm can !e made "ith a num!er of #d$ directionalcouplers and delay lines to feed an antenna array. %!viously the FFT algorithm is "idely used in digitalsignal processing too. In this article a particular &'application of the FFT algorithm is descri!ed anddiscussed in detail FFT spectrum analysis. 'ince the FFTalgorithm can !e implemented on almost any digital computer

    and a FFT spectrum analy*er only re+uires a little additionalhard"are FFT spectrum analysis is very convenient for manypractical applications. In order to understand the operation of a FFT spectrumanaly*er and its advantages and dra"!ac,s "hen compared "ithother spectrum analysis techni+ues a short description ofthe various Fourier transforms and the operation of the FFTalgorithm is included. $uilding a practically "or,ing spectrumanaly*er around the !are FFT algorithm is also discussed.

    o mathematical proofs are given ust to ,eep the discussionas simple as possi!le. The interested reader can find theformer in almost any !oo, descri!ing digital signal processing. Although FFT spectrum analysis is presently limited to theaudio fre+uency range at least for amateur resources it hasmany amateur-radio applications ranging from "ea, signaldetection to modulation analysis. A fe" typical amateurapplications are discussed later in this article includingspectrum function plots and intensity spectrograms o!tainedfrom real signals using a FFT spectrum analy*er. Finally a FFT spectrum-analy*er program for the &'computer descri!ed in /0 -$erichte234F-5ommunications ispresented including a short description of its commands andperformance limits imposed !y the hard"are. All the practicalexamples sho"n in this article "ere o!tained "ith thissoft"are most figures are ust hard-copy prints of the computerscreen on a laser printer.

    6. The Fourier Transform and the &iscrete Fourier Transform----------------------------------------------------------- The Fourier transform is a mathematical operation thatcomputes a ne" function F(") from an original function f(t)as sho"n on Fig. 6.1. $oth functions have real argumentst and " "hile their values f(t) and F(") are in general complexnum!ers. F(") is called the Fourier transform of a given

  • 8/14/2019 a074.pdf

    2/37

    function f(t). The Fourier transform has some interestingproperties including a relatively simple inverse operationcomputing f(t) !ac, from a given F(") is very similar to theFourier transform itself. The Fourier transform is fre+uently used in physics tocompute the fre+uency spectrum of a time-dependent physical+uantity. In a physical pro!lem t represents time and f(t)represents a physical +uantity (force displacement pressureelectrical current or voltage) as a function of time. In allphysical pro!lems f(t) is a real function. The ne" varia!le" represents the fre+uency and the function F(") is thefre+uency spectrum of the physical +uantity o!served. Thefre+uency spectrum is a complex function of a real varia!le ".The a!solute value of F(") represents the magnitude of a givenspectral component and the argument of F(") represents thephase relative to the (chosen) time origin. 'ince f(t) isal"ays a real function one does not really need to computeF(") for negative fre+uencies F(-") is simply thecomplex-con ugate of F(") for a real f(t). hile the Fourier transform is a po"erful analytical tool

    to perform theoretical computations it has at least t"oconstraints "hich could never !e fulfilled in practiceinfinite !and"idth and infinite fre+uency resolution ("hichimplies an infinite o!servation time) regardless of the methodanalog or digital used to perform the Fourier transform. A real-"orld finite-!and"idth signal can !e sampled"ithout loosing any information provided that the samplingfre+uency is high enough at least t"ice the signal !and"idth.The Fourier transform of a sampled signal is sho"n on Fig. 6.6.The integral is replaced "ith a sum the !ounds of the sum areho"ever still infinite. An important difference should !enoticed in plot of F(") the spectrum of a sampled signal isa periodic function and its period is inversely proportionalto the sampling period. It is therefore sufficient tocompute (either in an analog or in a digital "ay) ust oneperiod of F(") usually !et"een - I2deltat and 7 I2deltat. The (original) Fourier transform integral (or sum) hasinfinite !ounds the integration (or summation) should !eperformed from minus infinity to plus infinity. %f courseno real-"orld signal "ill ever last that long8 It istherefore completely sufficient to compute the integral orthe sum only over the time interval "hen the signal exists.Integrating over a finite amount of time limits the fre+uencyresolution "hich is inversely proportional to the integrationtime. This implies that the fre+uency spectrum could also !erepresented !y discrete samples in place of a continuousfunction. The procedure that computes a finite num!er of spectrallines from a finite num!er of signal samples is called the&iscrete Fourier Transform (&FT) and is sho"n on Fig. 6.#. Toproperly descri!e the signal spectrum one needs at least thesame num!er of fre+uency samples as there are input signalsamples. %f course to o!tain meaningful results the fre+uencyinterval (spectral line spacing) has to !e chosen in a closerelationship to the time interval (signal sampling step).'imilar constraints also apply to a completely analog Fourier

  • 8/14/2019 a074.pdf

    3/37

    transform (analog spectrum analy*er). In order to simplify computations !oth time and fre+uencyunits are usually normali*ed to 1 as sho"n on Fig. 6.9. Time tno" only ta,es the values of : 1 6 ... ( -1) and fre+uency "also ta,es the values of : 1 6 ... ( -1) if the discreteFourier transform produces spectral lines from signalsamples. As a result of this normali*ation the constant 6; I2appears in the complex exponent function. This constant ischosen such that the resulting spectral lines cover exactlyone period of the periodic signal spectrum. The &FT can !e computed on any general-purpose computer.Its operation is similar to !andpass FI< filters each filterhaving stages and tuned to its o"n fre+uency. The &FT is notcomputationally efficient since the num!er of computationsre+uired increases "ith 6. If the &FT is computed on a realsignal (real f(t)) "ith signal samples then the result onlyincludes 26 spectral lines ranging from *ero to half thesampling fre+uency. The remaining 26 spectral lines are simplycomplex con ugates that can !e computed in a much simpler"ay once the first 26 spectral lines are ,no"n reducing the

    total num!er of computations re+uired to a!out 626.

    #. The Fast Fourier Transform (FFT) algorithm--------------------------------------------- The &iscrete Fourier Transform supplies a very usefulresult !ut unfortunately re+uires a very large num!er ofcomputations on a digital computer or a very large num!er ofcomponents if performed !y an analog circuit. A more efficientalgorithm that provides exactly the same result as &FT "itha considera!ly smaller effort re+uired is called the FastFourier Transform. As an example to compute a 1:69 data point&FT the FFT algorithm re+uires a!out 6:: times lesscomputations (or analog components) than a straightfor"ard &FT.Further the num!er of computations re+uired in the FFTalgorithm is only proportional to 26;log6( ). The FFTalgorithm can therefore !e performed on a very large num!er ofdata samples "ithout significantly increasing the num!er ofcomputations per sample. The !asic !uilding !loc, of the FFT algorithm is calleda >!utterfly> operation. A >!utterfly> operation consists ofa phase-shift operation and a sum2difference operation. Itoperates on t"o input varia!les and produces t"o results. Asingle >!utterfly> operation can already compute a 6-point FFTas sho"n on Fig. #.1. In the case of a 6-point FFT the t"oinput varia!les are the input data to the FFT algorithm and thet"o results are already the result of the algorithm. The phaseshift is e+ual to I in this case. Fig. #.6. sho"s ho" a 9-point FFT "or,s. A 9-point FFT iscomputed in t"o stages. ?ach stage includes t"o >!utterfly>operations. In the first stage all phase shifts are e+ual to

    I. In the second stage the phase shifts are I26 and I.ote that each output of the first stage >!utterflies> is fed

    to exactly one input of the second stage >!utterflies>.5onsidering the periodicity of the complex exponent function

  • 8/14/2019 a074.pdf

    4/37

    the four outputs correspond exactly to the result o!tained"ith a straightfor"ard &FT the latter ho"ever re+uires 1@phase shifts ( if one does not consider *ero phase shifts)compared to the 9 phase shifts of the FFT algorithm. 'imilarly a -point FFT is computed in three stages assho"n on Fig. #.#. ?ach stage includes 9 >!utterfly>operations. Again in the first stage all phase shifts aree+ual to I. In the second stage the phase shifts are I26 and

    I. In the third stage the phase shifts are I29 I26 #; I29and I. The algorithm !loc, diagram follo"s a regular patterntoo suggesting that a FFT algorithm "or,ing on an ar!itrarylarge num!er of samples could !e designed in a similar "ay.In the case of an -point FFT only 16 >!utterflies> arere+uired compared to the @9 shift2add operations of astraightfor"ard &FT algorithm to get the same result. To design FFT algorithms operating on an even largernum!er of data samples one should therefore investigate thepossi!ility of com!ining several FFTs computed on a smallernum!er of samples. Fig. #.9. sho"s ho" to com!ine t"o -pointtransforms (not necessarily computed using the FFT algorithm)

    into one single transform on 6 (t"ice the num!er of) points.In addition to the t"o -point transforms >!utterflies> arere+uired. These >!utterflies> re+uire different phase shiftsranging from I2 6; I2 #; I2 ... ( -1); I2 I in stepsof I2 . The principle sho"n on Fig. #.9. is in fact used to designa FFT algorithm operating on any data length that is a po"erof 6. A FFT algorithm can thus operate on 6 9 1@ #6 @916 6B@ B16 1:69... data points. The 9-point FFT can !ederived from the 6-point FFT the -point FFT can !e derivedfrom the 9-point FFT the 1@-point FFT can !e derived from the

    -point FFT etc... ?ach dou!ling of the data points onlyre+uires an additional stage so the total num!er of stages ise+ual to log6( ). ?ach stage re+uires 26 >!utterflies>. Thetotal num!er of >!utterfly> operations is therefore e+ual to

    26;log6( ). A +uic, loo, at Fig. #.#. sho"s that the results do notappear in any reasona!le order at the output of the FFTalgorithm 1 B # C 6 @ 9 :. 5onsidering the constructionprinciple sho"n on Fig. #.9. a very simple rule to find thedesired output can !e found. This rule is called !it-reversedaddressing and it is sho"n on Fig. #.B. for the -point FFTexample. To find an output num!er one has to ta,e thecorresponding input num!er "rite this num!er do"n in !inaryformat reverse the order of !its convert the num!er !ac,to decimal and add 1. This rule can !e easily implemented indigital hard"are (dedicated &' microprocessors) "here data isstored in consecutive memory locations. To implement the FFT algorithm a num!er of >!utterfly>operations have to !e performed. An analog implementationcalled the >$utler matrix> uses delay lines to o!tain phaseshifts and >rat-race> hy!rids or #d$ directional couplersfor the add2su!tract operations. The inputs of the FFT circuitare connected to the elements of a linear antenna array and theoutputs of the FFT circuit to receivers and2or transmitters.'ince the re+uired phases and magnitudes of the signals

  • 8/14/2019 a074.pdf

    5/37

    feeding an antenna array are the Fourier transform of thedesired radiation pattern the outputs of the FFT circuitcorrespond directly to !eams in the various directions. Implementing the FFT algorithm on a digital computermost operations are performed "ith complex num!ers. Althoughphase shifts are easier to perform if complex num!ers areheld in a magnitude2phase format sums and differences re+uirea real2imaginary-component num!er format. 'ince conversionsfrom one num!er format to another are very time consuming allcomputations are usually done in the real2imaginary-componentformat. In this case a phase shift operation re+uires four realmultiplications "ith coefficients from a precomputed ta!le ofphase shifts and t"o additions. ?ach summation of t"ocomplex num!ers re+uires t"o real summations and each complexdifference re+uires t"o real differences. The phase-shift coefficients are precomputed and storedin memory since only different coefficients are re+uiredin all stages of a -point FFT. The same coefficients can !eused in the follo"ing FFT if a num!er of FFTs have to !ecomputed on changing data. Finally the phase-coefficient ta!le

    includes sines and cosines "hich are much more time-consumingto compute than the multiplications and additions re+uired forthe FFT itself. If a FFT is computed on real data then only half of theoutputs contain interesting data the other half are ustcomplex con ugates. To use the algorithm more efficientlyanother set of input data can !e fitted into the imaginarypart of the input varia!les. After the FFT algorithm isperformed the t"o results can !e separated !y simple additionsand su!tractions using the symmetry la"s of the Fouriertransform. If desired the t"o results can !e further com!inedinto a single dou!le length FFT. The inverse &FT can easily !e performed using the FFTalgorithm in the reverse direction. The num!er of mathematicaloperations is identical except for an additional division !y for each data point to o!tain the original magnitude !ac,. There are even more efficient algorithms to compute a &FTor its inverse. All of them are ho"ever !ased on the FFTprinciple descri!ed a!ove and re+uire a little more programmingefforts to further reduce the num!er of computations re+uired.

    9. 'pectrum analysis using the FFT algorithm-------------------------------------------- %ne of the most o!vious applications of the FFT algorithmis a FFT spectrum analy*er. The FFT algorithm itself isperformed on a digital computer usually a &' microprocessor.The input signal is provided in a digital format from an A2&converter. The microprocessor itself can display the result ina variety of formats. 4o"ever to !uild a digital FFT spectrum analy*er someadditional functions are re+uired. A !loc, diagram of a&' microprocessor-!ased spectrum analy*er is sho"n onFig. 9.1. The analog input signal is first sent to an analoglo"-pass (!and-pass) filter to prevent aliasing li,e in any &'

  • 8/14/2019 a074.pdf

    6/37

    application. The analog filter is follo"ed !y a sample-and-holdand an A2& converter. The A2& converter feeds a !uffer memorysince the FFT algorithm operates on !loc,s of data. $efore theFFT the signal samples may !e "eighted optionally. The complexspectrum provided !y the FFT algorithm is used to compute themagnitudes of the spectral components the phase information isdiscarded. Averaging is used to improve the signal-to-noiseratio in some measurements. An optional linear-to-logarithmicconversion is standard for all spectrum analy*ers. Finally theresult can !e displayed in different formats and a conventionalcomputer printer can !e used to o!tain a hard-copy. The performance of a &' FFT spectrum analy*er is mainlylimited !y the performance of the A2& converter used. Theconversion speed of the A2& converter defines the maximum!and"idth and the resolution of the A2& converter defines theavaila!le dynamic range. After the A2& converter the digiti*edinput signal can !e conveniently stored in memory if themicroprocessor is una!le to process the data in real time.Also all suita!le microprocessors offer a computationalaccuracy of at least 1@-69!its allo"ing a much "ider dynamic

    range than any A2& converter. ?ven if the &' microprocessor is fast enough toprocess all of the data in real time the input data streamhas to !e sent to a !uffer memory first since the FFTalgorithm operates on !loc,s of data not on single samples.

    ithout "eighting FFTs are usually performed on contiguous !utnon-overlapping !loc,s of data to o!tain almost all of thespectral information contained in the input signal. In the case of input signal "eighting the contri!utionof the samples at the !eginning or at the end of a !loc, isvery limited. To use all of the information contained in theinput signal overlapped FFTs have to !e performed. $oth casesare sho"n on Fig. 9.6. In the second case the overlap is set toa!out B:D for a raised-cosine "eighting function. If the FFT algorithm is performed on a ra" un"eighted!loc, of data the corresponding spectrum is distorted. 'incethe FFT does not consider any data samples !efore the !loc, norany data samples after the processed !loc, of data the actualinput signal to the FFT algorithm corresponds to the real inputsignal modulated "ith a rectangular impulse of the length ofthe data !loc,. A rectangular impulse "ith steep leading andtrailing edges has a very "ide fre+uency spectrum of the formsin(E)2E. The resulting output "ill !e the real signal spectrumconvoluted "ith the sin(E)2E function. Although the real signal spectrum can not !e o!tainedsince it re+uires an infinite amount of time a much moreaccurate spectrum can !e o!tained !y "eighting the signalsamples as sho"n on Fig. 9.#. eighting means multiplying eachsignal sample "ith a constant "hose value depends on theposition of the sample inside the input data !loc,. Thepractical effect of "eighting is to replace the a!rupt % 2%FFtransitions "ith smooth transitions at the !eginning and at theend of the data !loc,. eighting functions are selected tominimi*e the distortion of the signal spectrum.

  • 8/14/2019 a074.pdf

    7/37

    The effects of no "eighting versus "eighting are sho"n onFig. 9.9. The t"o plots sho" the spectrum of the same signalo!tained in t"o different "ays. A linear B16-point fre+uencyscale is used on the hori*ontal axis and a logarithmicamplitude scale (1B!its or G:d$2full scale) is used on thevertical axis. All the parameters including the input signalare the same for !oth plots except for "eighting the plota!ove "as o!tained "ithout any "eighting "hile the plot !elo""as o!tained "ith a raised-cosine "eighting.

  • 8/14/2019 a074.pdf

    8/37

    single image line and the pixel !rightness is used to representthe magnitude of a spectral component. The results ofsuccessive FFTs are plotted on successive lines sho"ing theresults of a large num!er of consecutive measurements on ustone computer screen. Intensity spectrograms are useful "henanaly*ing continuously changing signals. The display of a FFT spectrum analy*er usually includesthe complete fre+uency range covered !y the FFT algorithmfrom *ero to half the signal sampling fre+uency. The fre+uencyresolution is then simply e+ual to the fre+uency span divided!y the num!er of lines displayed. The fre+uency resolution may!e slightly "orse if "eighting is used in front of the FFTalgorithm. %f course partial displays are possi!le too sho"ing

    ust a su!set of spectral lines computed !y the FFT algorithm.The sample-and-hold circuit in front of the A2& converter is anexcellent harmonic mixer. It is therefore possi!le to o!serve adifferent fre+uency !and ust !y replacing the input lo"-passfilter "ith a !andpass filter for the selected fre+uency range. Finally a comparison has to !e made !et"een a FFT-!asedspectrum analy*er and a scanning-receiver type spectrum

    analy*er (conventional analog

  • 8/14/2019 a074.pdf

    9/37

    /nfortunately the !and"idth and dynamic range of digitalFFT spectrum analy*ers are severely limited !y the availa!lehard"are mainly A2& converters. It is therefore necessary tounderstand the advantages and disadvantages !oth techni+ues toselect the most suita!le one for a particular pro!lem sincethe t"o techni+ues are complementing each other rather thancompeting at the present state of technology.

    B. Amateur applications of a FFT spectrum analy*er-------------------------------------------------- Although FFT spectrum analysis is presently limited tothe audio-fre+uency range or slightly a!ove it has manyinteresting and very useful amateur-radio applications.In the follo"ing section a fe" typical amateur-radioapplications "ill !e presented including the spectrum plots andintensity spectrograms o!tained. All of the latter "ereo!tained !y connecting the output of an amateur ''$ or FHreceiver to the H5@ :1: !ased &' computer descri!ed in a

    series of articles in /0 -$erichte234F-5ommunications. Allof the plots "ere o!tained "ith a FFT spectrum analy*er programincluding a 1:69-point FFT algorithm and all the other featuresdescri!ed in the previous section. /nfortunately the intensityspectrograms could only !e printed in !lac,-and-"hite "ith nogray levels so they can not represent all of the informationthat "as visi!le on the computer screen. A FFT spectrum analy*er is a useful tool "hen !uilding a''$ receiver or transceiver. %ne of the most difficult tas,s"hen !uilding a ''$ receiver is to measure the pass!and ofthe crystal filters used regardless "hether are they home-!re"or commercially availa!le items. To o!tain a relia!le resulta very sta!le s"eep generator is re+uired in addition to astorage oscilloscope due to the slo" s"eeping speed re+uired.Alternatively a FFT spectrum analy*er can !e connected tothe receiver audio output and a "ide-!and noise source to thereceiver input (if the receiver o"n noise is not sufficient).Than,s to the speed of the FFT spectrum analysis the resultcan !e o!tained +uic,er than "ith the s"eep generatorallo"ing real-time tuning of the trimmers in and around thecrystal filters. T"o typical results plotted on a logarithmicamplitude scale are sho"n on Fig. B.1. a 6,4* ''$ filtera!ove and a B::4* 5 filter !elo". /sing FFT spectrum analysisthe trade-off !et"een accuracy and speed is selected !y choosingthe averaging factor. 4o"ever even "ith no averaging the FFTanalysis "ill only provide a noisy plot "hile a too fasts"eep generator "ill provide a completely distorted and thususeless result. A FFT spectrum analy*er is a!le to relia!ly detect very"ea, signals hidden in noise far !eyond "hat a human ear cando since it is not limited to certain fre+uency !andsresolution !and"idths or averaging intervals. The plots onFig. B.6. "ere o!tained !y tuning a 6m amateur ''$ receiver toa "ea, 5 !eacon and then decreasing the signal level "ithan input attenuator to o!tain a signal-to-noise ratio of a!out-1Bd$ in a 6.B,4* !and"idth or -Bd$ in a 6B:4* !and"idth.

  • 8/14/2019 a074.pdf

    10/37

    Although the signal-to-noise ratio is around 71:d$ in thespectrum analy*er resolution !and"idth some averaging isre+uired to relia!ly detect the signal. %n the fre+uency2amplitude plot (a!ove on Fig. B.6.) the averaging "as performed!y the computer and then the result "as plotted. %n theintensity spectrogram (!elo" on Fig. B.6.) no averaging "asperformed !y the computer. Averaging is ho"ever performed !your eyes "hen o!serving the spectrogram8 ?ven "ea,er signals could !e detected either !y increasingthe fre+uency resolution or !y increasing the averaging factoror !oth. The practical limit is mainly imposed !y the timere+uired for the signal to !e availa!le for a relia!ledetection. In a practical communications system there areother constraints too receiver and transmitter fre+uencyinsta!ility or phase noise and propagation effects. The FFTspectrum analy*er can solve the pro!lem of fre+uencyuncertainty since it allo"s to o!serve a fre+uency !and ofa fe" ,4* instantaneously "ith a resolution of B to 1:4*. Thephase noise of transmitters and receivers should !e minimi*edany"ay. /nfortunately some propagation effect also sho" up

    as phase or amplitude noise especially in ?H? (moon-!ounce)communications. These effects are proportional to the carrierfre+uency so ma or advantages of using FFT techni+ues for ?H?communications can only !e expected on 34F and /4F fre+uencies.%n these fre+uency !ands FFT signal processing may decrease the

  • 8/14/2019 a074.pdf

    11/37

    up-to-date replacement for the old-fashioned

  • 8/14/2019 a074.pdf

    12/37

    geometrical resolution) and sources of eventual interferences. All this is easier to descri!e on a "ell ,no"n exampleli,e the Heteosat ?FAE transmission sho"n on Fig. B. . %n thefre+uency2amplitude plot on Fig. B. . a!ove the strongestspectral component is the 69:: 4* su!-carrier. The su!-carriershould !e surrounded !y symmetrical side!ands if the deemphasisis properly ad usted. The side!ands depend of course on thepicture content. The most nota!le detail are the t"osymmetrical pea,s corresponding to the line-sync 9: 4* !ursts.These have a rather rounded pea, since their duration isvery short their spectral "idth is inversely proportionalto their duration. The intensity spectrogram sho"n on Fig. B. .!elo" sho"s that the sync !ursts appear in a!out every secondFFT conversion. Also the spectrum close to the 69:: 4*su!-carrier also changes "ith the picture line period. Theannotation transmitted at the end of the picture is "ellvisi!le follo"ed !y the discrete spectral lines of the 9B: 4*stop tone lasting B seconds. hat follo"s is ust part of thespectrum of a &5 retransmission !et"een t"o ?FAE pictures.The &5 flags create t"o strong discrete spectral line traces

    on the spectrogram interleaved "ith three &5 data framesvisi!le on Fig. B. . !elo". The spectrum of a %AA A T transmission sho"n onFig. B.G. is a little more complex. There is still a strong69:: 4* su!-carrier component !ut there are t"o different sync!ursts of #6 4* and 1:9: 4* respectively. The side-lo!esgenerated !y !oth sync !ursts are "ell visi!le on Fig. B.G.a!ove. %n the intensity spectrogram on Fig. B.G. !elo" itis easy to notice that these sync pulses appear interleaved inthe A T signal. The remaining spectrum also changes "ith thesame period. Although a FFT spectrum analy*er is actually an audio--fre+uency test e+uipment it has many interesting applicationsin the amateur-radio field. The a!ove examples "ere chosen ustto sho" a fe" possi!le applications of a FFT spectrum analy*erand the many different "ays a FFT spectrum analy*er can !eused. ro!a!ly most of the applications are yet to !ediscovered since FFT spectrum analysis only !ecame availa!leto amateurs "ith recently developed lo" cost and highperformance microprocessors and A2& converters.

    @. The FFT spectrum-analy*er program for the &' computer--------------------------------------------------------- The FFT algorithm can !e implemented on almost anydigital computer ranging from -!it video-game toys to thelargest and fastest mainframes. The FFT algorithm re+uiresvery little memory since the results of a >!utterfly>operation are stored in the same t"o memory locations "herethe arguments "ere ta,en from. Therefore the memoryre+uirements are very lo" including ust a !uffer of thesi*e of the input data !loc, and another !uffer of a similarsi*e to hold the phase coefficients. %f course the execution time "ill depend on the computerused. 5omputing a 1:69-point complex FFT on a -!it

  • 8/14/2019 a074.pdf

    13/37

    microcomputer programmed in a high-level language li,e $A'I5"ill re+uire several minutes. 5omputing the same 1:69-pointFFT on an I$H AT compati!le e+uipped "ith the mathematicalco-processor and executing a compiled program "ill still re+uireseveral seconds. A "ell-"ritten machine code program fora general-purpose 1@-!it microprocessor can compute a1:69-point FFT in a fe" hundred milliseconds using 1@-!itinteger arithmetics. Finally dedicated &' microprocessors area!le to compute a 1:69-point FFT in tens of milliseconds "iththe top-of-line devices re+uiring a fe" milliseconds. A FFT spectrum-analy*er program "as "ritten for the &'computer pu!lished in /0 -$erichte234F-5ommunications. Thiscomputer includes a -!it logarithmic A2& converter inputport and a B16-pixel !y 6B@-line 6B@-gray-level video display.The H5@ :1: microprocessor used in this computer is a!le tocompute a 1:69-point complex FFT in a!out 1B: milliseconds.5onsidering that some 5 / time is re+uired for other functionstoo li,e interrupt handling or display update the maximumsampling fre+uency for successive !ut non-overlapping FFTs"ithout s,ipping any input data is a!out ,4*. This figure

    matches very "ell the performance of the s"itched-capacitorfilter in front of the A2& converter as "ell as the audio!and"idth availa!le from a communications or amateur receiver. The FFT spectrum-analy*er program for the &' computerincludes all of the features from Fig. 9.1. A2& conversiondata !uffering FFT algorithm "ith magnitude computation anddisplay. eighting averaging I 2 % conversion displayformat and hard-copy are implemented as user-selecta!leoptions. The complete set of commands is sho"n on Fig. @.1.The same 4? menu is o!tained each time a "rong command isissued. %ther"ise the program uses 69 image lines forthe function plot or spectrogram and the !ottom lines toannotate the main program parameters. The program parameters are selected !y typing theirinitial letter as sho"n on the 4? menu. The selectedparameter "ill then appear in the annotation text line.The selected parameter value can !e then ad usted increasedor decreased !y using respectively the 7 and - ,eys. The ; ,ey"ill set A of the parameters to their default values. The program parameters includeA3?

  • 8/14/2019 a074.pdf

    14/37

    in the annotation text.

  • 8/14/2019 a074.pdf

    15/37

    !rightness on an intensity spectrogram. 4ard-copies of thecomputer screen in the various modes are used throughout thisarticle. The FFT spectrum-analy*er program is "ritten partiallyin the H5@ :1: machine code and partially in the &' computerhigh-level language. The commented source program is a!out1B ,ilo!ytes long "hile the compiled program re+uires a!out9C ,ilo!ytes. This is actually less than most other &'programs than,s to the compactness and lo" memory re+uirementsof the FFT algorithm. %f course the FFT program can run inmulti-tas, "ith other programs that do not use the sameperipherals li,e the T

  • 8/14/2019 a074.pdf

    16/37

  • 8/14/2019 a074.pdf

    17/37

  • 8/14/2019 a074.pdf

    18/37

  • 8/14/2019 a074.pdf

    19/37

  • 8/14/2019 a074.pdf

    20/37

  • 8/14/2019 a074.pdf

    21/37

  • 8/14/2019 a074.pdf

    22/37

  • 8/14/2019 a074.pdf

    23/37

  • 8/14/2019 a074.pdf

    24/37

  • 8/14/2019 a074.pdf

    25/37

  • 8/14/2019 a074.pdf

    26/37

  • 8/14/2019 a074.pdf

    27/37

  • 8/14/2019 a074.pdf

    28/37

  • 8/14/2019 a074.pdf

    29/37

  • 8/14/2019 a074.pdf

    30/37

  • 8/14/2019 a074.pdf

    31/37

  • 8/14/2019 a074.pdf

    32/37

  • 8/14/2019 a074.pdf

    33/37

  • 8/14/2019 a074.pdf

    34/37

  • 8/14/2019 a074.pdf

    35/37

  • 8/14/2019 a074.pdf

    36/37

  • 8/14/2019 a074.pdf

    37/37