提高IC设计仿真速度并测试扫描电路制造技术

技术编号:5422004 阅读:268 留言:0更新日期:2012-04-11 18:40
一种计算机被编程为配置计算机程序,该计算机程序用于仿真集成电路(IC)芯片的操作,以测试其中的扫描电路。该计算机被编程为追踪穿过IC芯片的设计中的组合逻辑的路径,该路径从第一扫描单元的输出端口开始并在第二扫描单元的输入端口结束。如果第一扫描单元和第二扫描单元接收共同的扫描使能信号,则计算机生成计算机程序的至少一部分,即,例如当共同的扫描使能信号未激活时,有条件地执行仿真穿过路径的信号传播,并且当共同的扫描使能信号激活时,跳过执行仿真的软件。计算机在存储器中存储计算机程序的一部分,用于计算机程序的其他这种部分。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术的实施例涉及用于对测试图样进行测试的集成电路(IC)芯片的仿真,该 测试图样由自动测试图样生成(ATPG)创建,用于物理IC芯片中的扫描电路。
技术介绍
今天的电子装置包含数百万的单片的电路或“单元”。为了使这种装置的设计和制 造自动化,已经开发了电子设计自动化(EDA)系统。EDA系统包括一个或多个被编程的计算 机,由芯片设计者使用以设计可以包括一个或多个IC芯片的电子装置。EDA系统通常容纳 将被置入IC芯片的电路的一个或多个高级动作描述(例如,以如VHDL、Verilog等的硬件 描述语言(HDL)),并将这种动作描述转换成抽象的多级网表(netlist)。网表通常存储在 EDA系统中的计算机可读介质中,并使用多种公知技术进行处理和验证。EDA系统使用网表 以便最终产生掩模形式的物理装置布局,用于在制造物理IC芯片时使用。测试用设计(DFT)流程可以(例如)以网表形式设计IC芯片(其实现期望的行 为,例如数字信号处理(DSP)),并且用称为“扫描单元”21 22(图1B)的特殊单元代替一 个或多个触发器11 12 (图1A),扫描单元被设计为从IC芯片10 (图1B)的主输入端31 向一个或多个部分13提供测试向量。最初的IC芯片设计的部分13通常包括连接触发器 11和12的组合逻辑。在刚刚描述的用扫描单元代替触发器期间,部分13通常保持不变。 这种修改的设计具有两种操作模式,一种是任务模式,其执行IC芯片10被设计用于的预定 功能(例如,DSP),一种是测试模式,其测试IC芯片10中的电路元件是否被正确地制造。通常,IC芯片10的这种修改设计中的扫描单元21 (图1B)包括由复用器21M驱 动的触发器21F ;如果以测试模式运行(在此期间扫描使能信号SE是激活的),则复用器 21M向触发器21F的数据输入(D输入)引脚提供信号Si,并且可选地,如果以任务模式运 行(在此期间信号SE是未激活的),则提供另一信号Ml。在图IB中示出了输入至触发器 21F的信号作为复用器的输出信号M0。在扫描设计期间,芯片设计者可以识别出扫描单元 21和22,由于它们想连接至扫描链,这涉及通过连接扫描单元21和22 (例如,单元22的输 入引脚SI连接至单元21中的触发器21F的输出引脚Q)来创建扫描路径23 (见图1B)。扫 描路径23对于通过部分13的任务路径13P而言是可选的,并且复用器22M基于其扫描使 能信号选择来自这两条路径之一的信号。芯片设计者可以指定共同的扫描使能信号SE或 指定不同的扫描使能信号,以运行复用器21M和22M。开发IC芯片设计中的附加步骤包括生成应用于IC芯片10的测试图样。用ATGP 软件编程的计算机可以以网表的形式分析一个或多个IC设计的表述,并且可以自动生成 测试图样。这种测试图样(也称为测试向量)由硬件装置(称为“测试器”)应用于物理IC 芯片中的扫描单元,以测试(例如)是否正确地制造了电路的特定选择部分。更具体地,测试器(未示出)通过在转移(shifting)操作(也称为“加载操作”) 期间,从IC芯片10的主输入端31连续向一个或多个扫描单元21 (也称为“输入扫描单 元”)中加载一个或多个测试图样,同时激活扫描使能信号,来测试IC芯片10。IC芯片10的主输入端31和主输出端32是可以从芯片10的外部接入(例如至任意测试器)的外部 引脚。在这种转移操作后,测试器可以去激活(deactivate)扫描使能信号,并用应用于部 分13 (处于“测试操作”)的测试图样运行IC芯片10 —个时钟周期。测试操作后有处于另一转移操作(也称为“卸载操作”)的激活的(多个)扫描使 能信号的一个或多个周期,其中,由输出扫描单元22锁存的测试操作的结果被转移到IC芯 片10的主输出端32。本专利技术人注意到,现有技术中,在加载操作和卸载操作期间,源扫描单 元21和宿扫描单元22之间的电路的选择部分13继续正常运行,即,这些部分中的所有门 均会被评估。在制造物理IC芯片之前,测试图样通常应用于IC芯片的门级计算机模型。例如, 通过将以HDL表述的IC设计转换成在计算机中执行(编译之后)或解释(不编译)的软 件源代码(例如,以编程语言C或C++)来获得计算机指令40 (图1C)。如在图IC中所示, 计算机指令40包括三种函数,第一函数“Evaluate_Flipfl0p”仿真在扫描单元21 (图1B) 中的触发器21F的输出引脚Q处的信号,第二函数“propagate”仿真这个信号穿过组合逻 辑13经由任务路径13P到扫描单元22的MI输入引脚的传播。最后,第三函数“Evaluate Multiplexer”仿真由复用器22M向触发器22F的输入引脚D提供的信号。编译后的计算机 指令40的执行比解释(interpreted)的执行更快,因此,通常将这种软件源代码编译成编 译代码。在上述段落中描述的函数“propagate”可以根据配置仿真或不仿真扫描路径23 上的信号传播。例如,触发器通常具有称为Q-引脚(除Q引脚之外)的另一输出引脚,并 且在一些配置中,Q-引脚用在扫描链中,在这种情况下,函数“propagate”不进行任何额外 的仿真。在其他配置中,不使用Q-引脚,相反地,在单元实例中产生路径分叉。在这种配置 中,可以仿真Q-引脚,以驱动扫描路径23上的信号。例如,在1994年3月由密歇根州大学出版的Michael A. Ri印e等人的“Ravel-XL A Hardware Accelerator for Assigned-DelayCompiled-Code Logic Gate Simulation,, 中描述了基于编译代码的仿真,其全部内容通过引用结合于此作为
技术介绍
。此外,在2001 年4月24日授予Ashar的第6,223,141号美国专利中也描述了现有技术的一些编译代码 仿真器,该专利的全部内容也通过引用结合于此作为
技术介绍
。Ashar描述了使用网表转 换来加快平准化编译代码仿真。特别地,具有平准化编译代码仿真的同步数字电路的基于 时延独立周期的逻辑仿真能极大地提高速度。清除、消除、和要素减少了文字数量。特别 地,消除功能去除了由于其存在而增加了文字数量的门的网表,即,将这些门分解为其及时 扇出(immediatefanout),减小了文字数量。在将门分解为其扇出之前,该功能估计新开端 (onset)的大小。如果估计的大小大于预设界限,则不执行该分解。大多数的文字量减少是 通过消除功能进行的。本专利技术人相信,编译代码仿真器能够变得过于缓慢。特别地,实现高故障覆盖率 (high fault coverage)所需的测试图样数量随电路大小增加。此外,深亚微米技术在更多 失败机制和更多缺陷类型的可能性方面对现有故障模型提出了挑战。更多故障模型又要求 对于同一故障覆盖率和质量级别的更多的测试图样,这增加了仿真测试图样的测试所需的 时间。因此,本专利技术人相信需要进一步提高编译代码仿真的速度。
技术实现思路
本文公开的本专利技术的实施例提供了一种配置计算机程序的计算机实施方法、设备 及计算机可读介质,该计算机程序用于仿真集成电路(IC)芯片的操作,以测试其中的扫描 电路。本专利技术的本文档来自技高网
...

【技术保护点】
一种用于配置计算机程序的计算机实施方法,所述计算机程序用于仿真集成电路(IC)芯片的操作,以测试包括在所述IC芯片中的扫描单元,所述方法包括:追踪穿过所述IC芯片的设计中的组合逻辑的路径,所述路径从所述设计中的第一扫描单元的输出端口开始,并且所述路径在所述设计中的第二扫描单元的输入端口结束;创建第一指令集,以仿真穿过所述路径的信号传播;修改所述第一指令集以创建第二指令集,所述第二指令集要求满足预定条件来执行所述第一指令集;将所述第一指令集和所述第二指令集作为所述计算机程序的一部分存储在存储器中。

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:约格什潘迪维贾伊桑卡尔马尼什简因
申请(专利权)人:新思科技有限公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1