复杂 IC 不仅吸引了更多系统,而且还吞食着设计者用于建立、评估与校准芯片的测试设备。
要 点
芯片设计者正开始在自己的复杂 IC上设计测试与测量仪器。
在IC中设计测试仪器的潮流开始于CPU核心与总线的数字调试硬件。
现在,设计者也在高速I/O块中建立分析仪器。
设计者正在高频芯片的内部作业中集成更复杂的模拟与RF测试仪器,如读取通道IC。.
这只是尺度问题。随着系统级 IC 越来越大而复杂,它们也逐渐无法观察与激励。通过打线焊盘甚至探针都无法达到内部的节点。信号电压很小,噪声阈值极微,驱动强度可以忽略不计。当关键电路达到千兆频率时,已不可能在物理上获得片上信号的精确表述,即使可以用探针探到电路。
而需求仍然存在。芯片设计者在建立硅片时必须能够观察和激励 SoC(系统单芯片)中的各个独立块。制造测试工程师必须能够在价格合理的测试设备上建立快速的测试程序。芯片设计者也必须创建自动校准程序,以补偿芯片使用时关键电路的工艺、电压、温度、阻抗和噪声变化。唯一可行的选择是将测试与测量仪器(包括通常建立实验室所需要的逻辑分析仪、总线分析仪、通信测试仪与示波器等)移到芯片自身上面。
现在这种选择已成为现实。其开端也许要算 CPU 核心中内建的调试功能,并扩张到总线诊断块和内置自检逻辑块,今天的片上仪器正在扩展到高速收发器和 RF 电路。今后可能会看到,用于特性描述与校准的片上模拟仪器将例行公事地成为模拟设计的一部分(见附文“MEMS 加速度计也需要测试仪器”)。
始于CPU
在一片 CPU 中建立调试硬件的概念至少可以回溯到 IBM 360 架构。但将更复杂 CPU 核心装入较小片芯中的竞赛意味着在 SoC 设计的早期不可能实现这一概念。它的重新出现是因为需求。
ARM 的 CoreInsight 调试计划总经理 William Orme 说:“随着处理器复杂性与频率的增长,由于过于困难,已经不能用外电路控制核心。设计者拒绝在核心区增加调试成分,但它成为了核心区与努力之间的一种折衷。最终,核心内的调试在 SoC 总成本中变得有性价比。于是,它成为了一种强制措施。”
在这一发展中,基本技术没有变化。设计者只需要将 CPU 核心置于一种已知状态,开始运行,观察并记录状态顺序,当感兴趣的事情发生时将核心停止。集成在核心中的硬件可以完成所有这些事情,对正常运行的能耗与性能基本没有影响。
但随着 SoC 的发展,CPU 核心不再是唯一的问题。从 CPU 向四面八方伸长开去的总线(宽、高速、分段和多层)也变得无法观测。于是,ARM 和其它互连 IP(知识产权)供应商在互连架构中建立了调试电路,就像他们在 CPU 中做的那样。
Orme 说:“在一个 AHB(先进高速总线)的多级互连中,设计者需要监控互连处于何种级别上:源、目标,以及每个事务的内容。这个过程需要从片芯内监控。”
当 SoC 从处于总线网络中心的单一 CPU 核心发展成为多处理点同时有效的多核心设计时,情况就变得更为复杂。现在,一个事件可能不再只是核心或总线的状态,而是不同块和电压域中一系列处理器与互连结构的状态序列的复杂结合。Orme 承认,光是这类系统的启动和停止,以及对其实际状态某些端倪的获得都成为一个富于挑战性的问题。
越来越高的复杂性可能将片上调试电路的重点从 CPU 核心转向一种更加系统级的方案。例如,ARM 提供一种交叉触发的开关阵列,试图将 SoC 中不同块的状态信号集合起来。而独立于处理器的调试硬件公司也正在涌现,如 Dafca。
Dafca 工程副总裁 Paul Bradley 说:“设计团队一直试图将 CPU 调试功能与自我设计的片上测试仪器结合起来,建立一种完备的调试策略。但随着 SoC 复杂性的增加,电压与时钟域的激增,并且可重用变得日益重要,设计者需要一种完备的方案,而不只是一些特别设计的组合。”
Dafca 首席执行官 Peter Levin 从其它角度为这种考虑作了补充。他说:“随着复杂性的增加,控制硬件以及分析数据意义所需要的调试软件也在增加复杂性。今天,调试软件的成就至少是设计与集成调试硬件的 10 倍以上。”同样,可重用很关键,从一位专业企业那里获得所有授权看来更加合理。
Dafca 的架构给出了一种有关复杂整芯片调试支持方法的构想。Dafca 与在设计 CPU 或 DSP 核心内的调试硬件一起工作,而不是代替它们。但它会增加“分析仪器”,这是精巧但紧凑的可编程状态机,它可以激励一个块,方法是在一些循环中预清空该块的输入,监控块的输出,以及向一个全局网络报告例外情况。
Bradley 认为:“仪器的部署与应用非常相关。通常情况下,一个设计团队会在一只芯片上使用两到六个分析仪器,一般会将一个仪器关联到各个重要的设计域。通过这种方式,就可以观察主要接口与控制点,一般是在设计层级的第二层。”来自仪器与处理器核心的信息共同形成一个工作中芯片的凝聚图像,并提供一种设计者可以定义并利用芯片级状态的抽象等级,这在任何架构中都是重要的需求。这种需求也许能解释设计中的庞大软件部件。
因此,片上数字测试仪器已经从 CPU 核心中比较简单的调试核心,转成为更复杂完备的软硬件系统,设计者对这类系统采用分布式状态机和片上触发与控制网络。随着 SoC 变得更加复杂,下一步似乎是芯片上的全逻辑分析能力,包括可编程触发器、长走线与矢量缓冲器,以及探测芯片内节点的能力。
模拟域
与片上数字测试仪器的发展趋势类似,现在对于用片上测试仪器生成与测量模拟信号也有越来越大的兴趣。如果数字测试仪器的源头要追溯到 CPU 核心,那么模拟仪器就起始于高速串行接口的核心。但技术在模拟域中也有分支,如包含带有传感器、用于自动校准的测量系统,混合信号伺服系统,以及用于校准与测试的仪器。
与数字世界一样,高速 I/O 片上测试仪器背后的动力是关键信号日益缺乏可见性。Rambus 首席高级工程师 RICh Perego 说:“外部探头的存在就会改变一个高速链路。并且,能看到一个波形还是有价值的。”
Rambus 设计工程经理 Ken Chang 补充说:“一般情况下,可以直接探测发射器,但不能只探测接收器。必须提取片上数据,推算出眼图或 Bathtub 图,从而间接地探查接收器。”
这种方法在高速接收器中变得更加重要,否则就不能看到块内发生了什么。 Vitesse的高级应用工程师认为,无法从外部看到信号在均衡前或后的样子。必须从接收器内部作这些观察。 Rambus 解决这种问题的办法实际上是将接收器用作自己的测量仪器。这个步骤起始于将可编程伪随机模式发生器与码流比较器集成到 I/O 块中。然后,设计者就可以增加足够多的电路,对发射器和接收器作数字调节(图 1)。例如对发射器,这种方法意味着要控制数字输入和 DAC 的电流摆幅与相位,并且能够修改均衡片系数。Perego 解释说:“这可以通过扫描时序与电压,建立收发器性能的 shmoo 图。”
对于接收器,这可能意味着要调整接收放大器的相位与增益。这个过程可以让设计者扫描相位,并在码流比较块的输出处观察误码率累加器,而提取出时序余量。
这种测试仪器技术的巧妙之处在于尽可能在数字域中完成。例如,可以利用延迟锁定回路中的数字反馈路径,用数字方法控制接收器的相位。或者可以将一个数字值送给一个 DAC,DAC 再为一个关键节点增加一个偏置,以此调整增益。电路中的这些插入都并非不重要,尤其是在模拟节点情况下,此时任何变化都可能造成断路。但它们是可以实现的。
Vitesse 最近使接收器测量仪器更进了一步,创造了一种有趣的双通道方案(图 2)。这种概念将一个通道(通常是接收器的主数据通道)设定在眼的中心。然后设计者可以改变接收器的相位与增益,在每个点停止,收集充足的数据以精确估计误码率,等等,从而在相位与振幅点的范围内扫过第二个基本上完全相同的通道。经过软件后期处理的结果会是一个眼图,或是接收器自身所收集数据的一个 bathtub 图。由于第二个路径从物理上与作测量的读取路径相同,数据要比探针或示波器的可能实现更精确。设计者可以看到从均衡器进入接收采样器的精确信号,而不是失真的近似。
但高速 I/O 并非这种概念的唯一应用。例如,意法半导体公司将相当多的测试仪器置入了它的高端磁盘读取通道 IC。同样,重点是用电路尽可能多地完成外部控制的测量。但在这种情况下,增加的电路可以很复杂。
意法半导体公司数据存储部的架构经理 Angelo Dati 说,在一个读取通道芯片中的内部仪器可辅助芯片的初期纠错与校准,一旦安装了芯片,它可以帮助确定复杂介质/电子系统的特性,并且在工作期间对电压、温度、磁头高度和其它变量提供连续补偿。
相应地,读取通道有很多测量仪器。例如,从用于温度和电压的简单传感器,到比较器与线性滤波器,控制处理器可以检查确定是否要调用一个本地有限状态机上的校准程序。状态机运行一个闭环校准程序,它可以改变电压偏移、增益以及偏置点来纠正问题,如通道的低通滤波器截止点的温漂趋向(图 3)。
更复杂的测量不仅能补偿运行中的变动,而且还能帮助设计者与产品工程师将芯片精细调整为某种特定的磁头/介质组合。Dati 称,其中一种可望用于基于模式匹配的自适应循环系统。芯片内测量仪器产生一个模拟波形,系统将其送入读取电路,并与来自读取头的输入信号作比较,给出一个频率误差信号。这个信号为适应磁头/介质噪声组合体的噪声与非线性特性提供反馈。这是闭环过程。但 Dati 称:“不存在收敛的证据。我们必须为自适应回路提供一个使之工作的好的初始值。”
另外,在硅片建立以及制造时,对于磁盘组件的谐波分析还有一些有用的方法。芯片中实际上包含了 Dati 所说的“一种低等级频谱分析仪,如一个 FFT 引擎,但简化为只观察某些特定频率,因此比通用频谱分析仪要简单”。测试仪器的谐波分析有很多有价值的目的。例如,查看不应存在的特定频率,可以检测并量度磁头/介质子系统的非线性。另外,通过查看频率包络,可以估计出磁间隙,即磁头在介质上的高度。Dati 解释说:“今天的磁盘必须这么做。因为,如果你不测量和调整磁头高度,普通大气压差就可能造成磁头损毁。”
一台频谱分析仪似乎是一个大型仪器,不可能在没有影响情况下插入一个成本高度敏感的芯片中。但 Dati 称,事实上“接收器正在越来越庞大,以致于很容易在设计中隐藏一些测量仪器电路。”
这种意见可能是片上测试仪器未来的一个良好说明。随着芯片变得越来越复杂,不仅对片芯上的仪器存在着需求,而且还有更多探索功能电路的机会,从而快速地将模拟测量转到数字域中。并且现在有更多的空间可以隐藏一个相当复杂的块,如经过修改的 FFT 引擎。
下一步可能是看数字域发生了什么事:将模拟测量从分属芯片不同部分的时域和频域提取出来,以提供一个混合信号系统完整状态的图像。只有采用这种片上工具,才有可能证明调试下一代复杂芯片的可能性,并在其完全运行以后保持不断改进。 |