虽然工程师有时能确定一个漏洞,这个漏洞可能是线路安排过密或是晶体管放错了位置等任何问题,但他们也往往不太清楚怎样才是最好的修复方法。很多时候,工程师在一轮测试中发现并修复了一个漏洞,但在下一回合的测试中发现前次的修复方法无意中已经带来了新的漏洞。而一个原型芯片的制作要花去数月的时间,通常是非常昂贵的,光改变外罩设计来重新安排晶体管的排放格局以及芯片上的导线,成本就高达数百万美元。
研究人员解释说,目前一个原型芯片回到芯片制造商那里时,工程师将其钩到电子探头上,电子探头将电信号传送到芯片并记录其输出。不同的信号到达芯片的不同部位,经过数以千计的信号测试后,工程师通常可以定位一个漏洞所在。然后,他们会提出一系列可能的解决方案。有时,他们可能只需简单地移除芯片顶层两根导线之间的连接。这用实验室现有的设备就可以做到,这样芯片就可以很快地进行再测试。但有时,修复可能需要在芯片内较低层进行,如形成逻辑门的晶体管就在这个部位,对这些晶体管的调整和再测试工作就没那么容易了。
密歇根大学的研究人员编写的软件会自动标定测试芯片的电输入,并分析其输出来找出发生问题的地方。理想的情况下,工程师会想要知道芯片上每一个晶体管的输出。但消费类芯片很快将拥有超过1亿个晶体管,这使得这种精确的测试方法太费时。因此,密歇根大学的算法只测试芯片大部分区域的电输入。对应于输出错误,就能知道将测试注意力集中在哪个区域,这样就缩窄了寻找范围来更快地找到可能的漏洞。该软件也用类似的方式来确定修复漏洞的方法,通过在一系列模拟器中的运行来找到一个设计更改,从而提供最快和最具成本效益的解决方案。
这项技术的最大优势之一是软件有时可以提供出乎意料的解决办法。对一名工程师来说,修复漏洞合乎逻辑的方法就是给电路重新布线。但软件可以提示工程师,也许只需反转几根导线就能得到相同的结果,而这样的解决方法不是显而易见的。在个案研究中,研究人员发现该软件可以自动修复芯片上70%%左右的重要漏洞,而且可将找到一个特定漏洞的时间从几个星期缩短到几天。
英特尔公司也对此项技术保持高度关注,因为他们一直以来都在寻求更好的方法来改进芯片制造工艺。该公司的研究人员称,英特尔目前正在使用类似的技术,但与密歇根大学的技术在形式上有所不同。英特尔的研究人员充分肯定了密歇根大学的技术取得了一定的进展,这对于解决芯片漏洞来说将是一个非常好的开始。