本章描述了为MemoryBist控制器创建和验证测试patterns的过程。
1.Certifying TCD Memory Library Files with memlibCertify in Tessent Shell
使用Tessent MemoryBIST产品实施memory BIST要求特定的memroy模型,通常被称为memory lib文件或者memory TCD文件。需要抽象的模型来描述特定测试memory属性,使Tessent MemoryBIST工具能够创建具有高测试覆盖率的内部测试硬件。memory lib文件不提供memory的任何行为表示,但是,需要验证正确定义了memory的属性,并且这些属性与memory功能行为一致。
本节描述了如何使用memlibCertify(一个工具,进行验证memory lib文件)程序自动验证memory lib文件,其目的是memory的提供者在设计人员在设计中试验使用这些memory之前,验证所有的memories,这个验证过程证明了memory的测试属性被正确定义,并且与memory行为模型一致。
memory lib文件以TCD文件的形式呈现给工具。
2.Pattern generation for TS-MBIST Insertions
Tessent MemoryBIST在block、core或者top level中生成patterns使用相似的流程。
通常只在block或者core level生成Verilog testbenches(?),因为电路的这一部分通常被设计的更高top-level例化。因此不需要在这些levels生成制造测试patterns(制造测试patterns,为了测试芯片制造过程中造成的物理缺陷。)
在top-level,Verilog 测试台在结束设计之前生成,然后创建ATE测试向量,用于在硅设备上测试制造缺陷。
在bottom-up流程中,在blocks或cores中插入的MBIST在集成进更高层级之前可完全独立验证。hier DFT设计方法能够在更低级的设计部分完成MBIST插入,即使设计的其他部分可能没有准备好,因为MBIST只要求有效时钟和低速串行测试访问来运行,因此在将block或core集成到完整的top-level设计之后,对其进行验证将大大简化。
top-down流程消耗更长的时间并且比hier方法要求更多的计算来源。
2.1Creating Simulation Testbench Patterns
使用该程序生成Verilog 仿真测试台向量可能被应用在block,core,或top level。
默认生成Signoff(?)或者仿真测试台向量,测试patterns只测试当前设计中插入的controllers。当simulate_instruments_in_lower_physical_instances被设为on时,能够包括更低级物理块中的contrillers。所有的controllers可并行执行,此外,带有ram的控制器通过设计patterns规格特性reduced_address_count为on,来限制对寻址角(?)的测试。
2.2Creating Manufacturing Test Patterns
使用该程序生成制造测试向量,可应用到top level。
生成的patterns基于异步ATE时钟的数量进行分组,这个数量是基于DefaultsSpecification 的max_async_clock_sources特征,默认情况下是无限制的,把所有的memory BIST 控制器放在单独的patten中,并行操作,可能属于不同的异步频率时钟时钟组。
生成的patterns能够进一步划分为多个测试step或者程序 step pattern 文件。
3.Generated MBIST Verification Patterns
仅mbist设计的patterns规格通常包括:
- 一个ICL验证pattern。
- 一个或多个memory BIST patterns。
ICL验证patterns从提取当前设计的ICL自动创建。这些patterns确保ICL描述是否正确,并且匹配设计实施的硬件,它们检查所有ICL_described 测试数据寄存器(TDRs)能够被选择,并且有预期的长度。
通过时钟被MBIST 控制器执行的Memory BIST patterns演习,指示每个BIST控制器发射一个memory 测试,生成的testbenches在设计memories内运行MBIST。