Before using an unfamiliar FFT routine, you should always check the transform of a simple impulse at time 0 and also the transform of the same impulse delayed by one sample. Table 4.3 shows the results you should obtain. These checks will establish that you have used the correct scaling factor. It is common to find FFT routines that scale the forward transformation by 1/ N , , or 1, a simple problem to correct.
The checks also establish the direction of frequency rotation in the complex plane. Some FFT routines pervert the kernel of the transformation by using a plus j instead of a minus j in the exponent. This change inverts the frequency axis in the forward transform and reverses the time axis in the inverse direction, as compared to the transformation described in [4.3].
If your transform uses a plus j kernel, you can fix it by forming the complex conjugate of the frequency domain result after running the perverted transform. The conjugation gives you the answer you should have gotten with a proper transform. In the reverse direction you must remember to conjugate each correct frequencydomain vector before submitting it to the perverted inverse transform for calculation of timedomain results. Alternately, you could use the perverted reverse transform for the forward transform, and vice versa, with attention paid to the scaling factor of N in both directions.
Table 4.3. FFT Test Cases
Object 
Timedomain 
Frequencydomain 

impulse 
X k = 1 

shifted impulse 
POINT TO REMEMBER
For further study see: www.sigcon.com
Fundamentals
Transmission Line Parameters
Performance Regions
FrequencyDomain Modeling
Pcb (printedcircuit board) Traces
Differential Signaling
Generic BuildingCabling Standards
100Ohm Balanced TwistedPair Cabling
150Ohm STPA Cabling
Coaxial Cabling
FiberOptic Cabling
Clock Distribution
TimeDomain Simulation Tools and Methods
Points to Remember
Appendix A. Building a Signal Integrity Department
Appendix B. Calculation of Loss Slope
Appendix C. TwoPort Analysis
Appendix D. Accuracy of Pi Model
Appendix E. erf( )
Notes