这是Sri Welaratna 在 原文[1] :发表的一篇杂志文章,介绍了在FFT提出30年时对FFT频谱分析算法的总结。
这是关于激情、欢心和心痛的故事。有的想法,当被一个人的大脑捕获,就会令他充满活力投入其中,创造出令人瞩目的成就,甚至是人类前进中的里程碑。快速傅里叶变换(FFT)就是这样一个想法。
1965年, Cooley和Tukey发表了关于FFT的算法。一夜之间,全世界的大学、实验室中的科学家和工程师开始编写计算机程序 和电子线路来实现FFT计算。
FFT是用于计算离散福利变换的快速算法。Cooley和Tukey意识到一个序列的离散傅里叶变换可以由其长度一半的两个序列计算结果所获得,并由此设计FFT算法,该算法只需要次乘加操作,而直接计算DFT则需要次。对于长度为1024的序列,FFT速度增加一百多倍(102.3倍)。不仅仅速度提高了,也节约了当时稀缺的计算机存储空间。因此不能理解为何FFT捕获了科学家和工程师们的芳心。虽然人们通常认为科学家就像机器人那样呆板冷酷,但他们内心仍是充满躁动的少年。
“如今,傅里叶变换应用在人们的日常生活中。比如先进的汽车、飞机、通信系统、链锯、洗衣机以及众多现代生活的应用场景。
Ed Sloan是录音机工程师,当他在位于Palo Altode的 Ampex公司工作时,研究傅里叶变换算法方法,使用的是Franlin 杂志上1942年发表的 Deanielson与Lanczos提出的算法。他并没有让Ampex对他想实现傅里叶变换设备感兴趣。在1966年的早期他就个人找了一些私人投资者,成了了初创公司:Time/Data 公司。Ed Sloan 经常被人们夸为“当之无愧的天才人物”, 他联合另外一个有才华的年轻工程师 Bruce McKeever 研究Dianelson和Lanczos提出的基于频率折叠概念的如何提高傅里叶变换计算效率,但人算不如天算,正等他们雄心勃勃之时却发现 Cooley - Tukey的FFT论文一年前就发表了,他们当时感到伤心欲绝,感到像被别人按到在地上使劲的摩擦(Being Beaten to the goalpost by someone else),但很快他们重振旗鼓,决定制作FFT专用设备。在1967十月,Ed Sloan和Bruce就推出了他们的FFT设备。这台型号为 Time/Data 100的设备包含有两个六英尺机箱架,安装有专用硬件,可以在1秒钟算法1024点的FFT算法,现在看起来这太小儿科了,但当时这是一个了不起的成就。
“下面这段程序是在百度AI Studio中利用paddle.fft算法计算 1024×1024点浮点数据的FFT,仅仅消耗72毫秒!
虽然他们的设备在技术上很成功,但商业上却惨遭滑铁卢,预期的订单没有来,近30份来自医学应用的订单被取消了,这些资金被约翰逊政府用于支持越南战争去了。
伤痛无法弥补,但一个命运中的机遇重新盘活了Time/Data公司的财运。当时的F111战斗机的验证遇到的问题,这个型号的战斗机支持机翼变角度。当时国家空军给 通用动力下达了最后通牒,如果无法证明机翼完整性他们将不再订购此款战斗机。面对停满机场而无法交付的战斗机,通用动力公司只要满世界寻找解决方案。有一名公司年轻的人,是MIT的毕业生,想起它的祖父通过中间悬挂铁轨,通过校正铁锤敲击铁轨两端来检测铁轨质量的方法。这种方法可以非常精确的检测出铁轨中的裂缝。他坚信自己也可以可应用类似的科学理论。他找到了Time/Data公司,花了一个周末的时间,与 Bruce MCKeever一起分析了录制在磁带上的机翼撞击声音,这使得通用动力公司找到了合适的检测设备。对于导向孔中带有裂痕的机翼可以被百分百的应用加速度信号分析出来。
新被研发出的 Time/Data 100型号设备被空军强制收购,推迟其他供货合同,此刻 Time/Data公司取得了商业上的巨大成功。很快,FFT设备增加了振动分析功能,很快在1967年斯坦福睡眠研究中得到医疗应用。之后的Time/Data 90设备的推广也加速了通用迷你计算机的发展。在1972年基于PDP11计算机改良型号上市。
正常私人投资人想购买Time/Data,通用无线电公司收购了 Time/Data。由于这个冤大头并没有理解 Time/Data设备的真正用途,所以使得Ed Sloan,Gruce McKeever以及跟随他们及时和聪明人无法最终实现他们的梦想。Bruce带着它注册的FFT设备驾车满世界转悠,但当时的激情就像潮水渐渐散去,早期那激情澎湃的感觉在其内心一息尚存。
同一时期,坐落在Santa Clara的HP公司分布,一位不显山不露水的年轻工程师,名字叫 RonPotter 着手研发一款波形分析仪,它使得信号波形计算和频谱分析变得容易,每个人就像使用计算器那样方便。
Ron Potter 早年就读于Illinois大学学习电子专业,自学了ENIAC计算机编程,这台计算机只有1024×40bit内存,没有用于存储的磁鼓或磁盘,但配备有 CRT(阴极射线管)显示器和摄像机。利用计算机他可以回执出具有两个极点的运算放大器的单位阶跃响应曲线,是一个三次多项式,就此他在无线电应用(Radio Application)杂志上发表了数字计算机应用的最早的一篇论文。这家伙的确聪明,当时没有几个人真正懂的对物理现象进行记录和分析,他的同事认为他在玩火。
相关运算作为从噪声中抽取信号的方法以在物理系统分析中应用得到充足的发展。但对信号频谱的分析还显得不太实际,主要是需要消耗大量计算资源,这也引发人们的争论。当Cooley-Tukey的论文一经问世, Ron就对算法的重要性秒懂。他的波形分析设备的基础就应该建立在FFT算法上。当时,Ron团队中,Ron负责数学算法, Ago Kiss专心硬件设计, Pete Roth参与建造 ADC转换器。
按照 HP 产品开发一般风格,他们先构建了一个仿真设备,在一个六英尺设备机架中集成有PDP迷你计算机, 用于信号采集的ADC, 显示波形的CRT,读取程序的纸带机,还有系统交互的电传机。在研发的那些日子里,HP公司的老总们(Bill Hewlett , Dave Packard)亲自评审每个新产品构思。当 Packard看到还处在襁褓之中的波形分析仪的演示之后,建议直接将仿真机作为产品进行销售(想钱想疯了)。HP当时也刚刚进入商业计算机领域, Ron 从 Cupertino分公司购买到它的第一代原型机,很快将DEC的 PDP计算机进行替换, HP5450 傅里叶分析仪诞生了。作为傅里叶分析仪之父的 Ron Potter 很快后来离开了工资, Peter Roth接替他负责这款革命性的计算机设备上市。其中参与研发软件和硬件的工程师包括有 SKip Ross, Steve Cline, Chuck Hershkowitz 以及 Charlie Heisman,其中有一个人非常关键,那就是 Frequency&Time 分部经理 Al Bagley,他对 Packard 的想法起到助产士的作用。
HP 傅里叶分析仪的第一个客户是来自于马里兰 Walter Reed医院,当时他们研究猴子的神经相应。刚刚加入研究团队的 Dave Snyder 与 Peter Roth 一起来到美国东部马里兰安装设备、培训客户,没想到最终他们的设备被应用于噪声和振动分析上。很多的应用开始都是失败的,最终 HP寻找到FFT技术真正的 应用市场。Bob Perdriau, 他参加了Santa Clara 的HP公司数字信号分析研究团队,生产了HP5453电话测试系统,这是傅里叶分析仪的第一代衍生品,对于团队成员间那令人激动兴奋的氛围记忆犹新。但后来HP5453还是流产了,商业策略和经济问题使得团队中的年轻人玻璃心碎了一地。幸运的是 HP5451傅里叶分析仪则在振动测试设备的摇动闭环控制器中得到了应用,同时也在机械框架震动模态分析,转动设备机械特征分析中得到应用。
远在纽约市郊的杨克斯(也被习惯称为上曼哈顿区),Henry Bickel创建了联邦科技公司,其中创始人包括有四名来自于哥伦比亚大学的教授,他们开发远程导弹检测系统,后台支持的老板是国防部。联邦科技公司利用基于时间序列压缩技术的通用实时序列分析设备创建了自己的商业模式。他们最大的成功来自于潜艇检测设备的订单。这种设备专门是为P3型猎狐飞机编队定制的。Nicolet创建联邦科技公司之后,他的FFT分析设备就羽翼丰满起来,它的第一种单通道FFT分析仪命名为:迷你-通用 440A,后来衍生出 两通道660,这引起FFT分析仪的第二波浪潮。
除此之外,当时还有一些其他的公司相继建立,并逐步通过技术竞争将设备的价格进一步降低。
这些领域中充满着令人兴奋的氛围。人们感觉一旦一个信号波形被数字机记录在计算机中,那么对他的分析就没有了任何限制。实际上作为一种通用的方法,它使得其它专用方法很快就被淘汰。当然这并非很 容易,物理过程信号的测量不仅仅需要数字化和计算机。
基于FFT的频谱分析仪是如何从最初的庞然大物,变成现在无处不在,嵌入在各种手持设备中的呢?剩下的故事需要总结FFT从上个世纪90年代之后的发展之路了。
原文: https://www.dataphysics.com/30_Years_of_FFT_Analyzers_by_Sri_Welaratna.pdf#::text=The%20Fast%20Fourier%20Transform%20%28FFT%29%20was%20such%20an,and%20elec-%20tronic%20circuits%20to%20implement%20the%20FFT.