Tessent Mbist(1)Memory分组及DFTSpec编辑

  1. 设计和库的需求
  2. 指定验证MBIST的需求
  3. 创建配置MBIST的DFTspec
  4. process MBIST的DFTspec

design & library

加载设计与memory 库;
可以使用 read_core_descriptions 命令读取内存中BIST logicvision设计流程中的旧模型.旧模型会转化为TCD的新的描述.需要注意的是 需要在logic vision MemoryTemplate中指定cell name;

在gate-level的设计插入流程中,需要读取Tessent的单元库.对于顶层设计的插入,必须包含pad单元库;
对于 RTL-level的设计流程,是不需要上述的单元库的直到testbench simulation这一步;

MBIST requirments

#设置dftspec的需求
set_dft_specification -memory_test on
#如果你存在 可修复的memory,就必须指定Memory repair的需求
#当前的MBIST流程不允许附加的Memory repair逻辑独立于BIST的逻辑;

加载layout布局信息;

Memory的物理布局信息是划分Memory controler的众多因素之一;
其他因素包括: power consumption,power domain,测试时间预算;

#使用
read_def 
#命令去加载layout信息;
#使用
set_memory_instance_options -physical_cluster_size_ratio 10
#设置物理簇的大小,以芯片对角线百分比表示物理簇的大小;
加载power domain的信息
read_upf
添加时钟
#使用
add_clock
#告诉tessent工具所要使用的时钟和他们的频率;
#这些信息会在之后的DRC中使用,也会关系到Memory controller的分组;
更改默认的DFTSpec

有两种方法更改默认的DFTspec;一是直接修改默认的DFTspec文件然后加载到tessent中去;而是使用set_defaults_value或者是更通用的指令set_config_value,去修改各种属性的值;

在DRC之前添加约束

如何设置仅影响一个或者一组Memory的更改;
大多数使用 set_memory_instance_options命令的更改只有在design rule check之后才能可见;

example:
使用 set_memory_instance_options 命令中的-use_in_memory_bist_dft_specification 的选项
,为一个指定的memory 做配置

创建 修改 验证MBIST的DFT Specification;

一旦完成设计规则检查就可以开始创建 DFTSpec
这一阶段比较重要的命令包括:

report_memory_instance
get_memory_instance_option
create_dft_specification
#以及dftspec修改所使用的命令
add_config_element
get_config_value
set_config_value
#以及使用ui展示dftspec的命令
display_specification
在创建dftspec之前添加约束

有些约束对于dftspec存在全局的影响, 你可以使用 set_memory_instance_options命令去修改这些约束.下面举一个例子展示你改变的加载的power domain的信息所需要的步骤;
check_design_rule指定会分析设计,并将power domain的信息附加到每一个Memory instance上;如果你test setup使用其他的power domain

参数选择对性能和面积的影响

DFTspec中的一些参数会对设计的性能和面积以及其他方面造成影响;

为了获得更高的测试覆盖率,tessent在做Mbist的时候会添加Memory bypas逻辑以及一些用于观测的register,
我们可以通过调整bypass和observation register的数量最小化Memory的面积.

  1. 减少同步bypass register 的数量.
    每个数据输出端口都需要一组bypass register;在tessent 2020.1版本之前,bypass register 的数量是和存储器的字长相等的,现在,对于每个数据输出端口低开销的特性使得寄存器的数量从字长降低到了1.
  2. 减少 control/address observation register;
    存储器的控制和地址信号会被接管到observation register中.在2020.1之前的版本中,信号与观测寄存器的比在2-8之间(两个个信号对应1个observation register),现在,低开销的特性使得一个Memory的所有control/address信号都可以连接到一个observation register上;
关于bypass和observation逻辑;

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-IdkM8zLW-1666421116771)(evernotecid://B004F96B-9AA0-47D6-BD23-E56FA9C545DF/appyinxiangcom/12890172/ENResource/p872)]
dftspec中的这些属性会影响到 bypass 和observation 寄存器的数量;
默认, 每个存储器接口, 观测逻辑简化后地址控制信号和观测寄存器之比为3,bypass logic不做简化,等于存储器数据输出端口的数量;

调整scan observation register 的数量

插入观测逻辑是可以通过设置AdvanceOptions(observation_xor_size)关闭的,这个选项是通过XOR树来指定地址和控制信号与观测寄存器的缩减比; 这个缩减比从1:1一直可扩大到多:1;

调整 bypass register 的数量

存储器 bypass逻辑的插入取决于Memory的TCD中Transparentmode属性决定.DFTspec中 step/MemoryInterface/scan_bypass_logic属性可以用来覆盖TCD中的设置.

同步bypass方案是默认和最常见的方案,对于一部旁路方案,不使用旁路寄存器就可以实现XOR约简.

DFTspec中 memoryInterface/data_bits_per_bypass_signal 属性用来指定组合到一个XOR tree中的数据输入信息的数量,此设置在为RAM创建bypass logic时十分有用,工具提供了一个灵活的区间,1对1到多对1;
和 observation register一样, 要限制缩减比例需要考虑避免 旁路寄存器的全速时序路径比存储器路径更critical;

bypass& observation logic缩减限制考虑
  1. 当 data_bits_per_bypass_signal 大于1,由于应用于存储器扇出的功能电路的数据相关性,ATPG的覆盖率可能会受到影响,这种影响对于不同的电路也是不同的,而且很难找到导致覆盖率降低的根本原因,在debug poor test coverage时会很困难;
  2. Memory 输入和bypass&observation register之间时序的不同会导致在AC阶段产生违例;由于 XOR tree的深度,到达bypass&observation register的路径要比到达Memory的路径(Memory input的路径)更critical;
  3. 当存储器的TCD中 DataOutStage(数据输出阶段)指定为StrobingFlop,memory bypass register会被复用为流水线将Memory数据输出到MBIST电路中;在这样的配置下,data_bits_per_bypass_signal必须指定为1;否则会在DFTspec 验证的时候报错;
示例

不同配置:

  1. full observation register & reduced bypass register;
  2. minimum observation register & bypass;
    3.disableling observation and bypass;

MemoryBIST的分组规则

outline rule(大致规则)
controller的兼容性规则表示为CCRx;步骤的兼容性规则表述为SCRx;
CCR1

不同种类的Memory分配给不同的控制器;

CCR2

位于同一个controller的DRAMs必须有一致的行列宽度和bank dimensions;

CCR3

Memory通过 physical region,clock domain,Memory cluster 进行分组; 由多个clock domain 驱动的multi-port memory,选用最快的clock domain进行分组;

CCR4

指定不同group lable的memory 分到不同的组中;

memory进一步划分兼容组,以便于在单个Memory controller步骤中对一组的memory进行并行测试;如果并行测试不同size的memory还要比串行测试他们话的时间要长,那么最好把不同大小的Memory放到不同的组中;这经常发生在一个Memory的行地址很多列地址很少而另一个列地址很多行地址很少的情况下;

SCR1

所有的memory必须使用相同的算法;

SCR2

所有的Memory必须使用相同的operation set;

SCR3

所有的memory必须为相同的种类(SRAM ROM DRAM)

SCR4

所有的DRAMs 必须为相同的row column 以及bank adress bits;

SCR5

对于计数范围,所有的Memory的column segments(列段)必须有相同的low value, high value 可以不同;

SCR7

Memory的bit grouping必须全部为偶数或者奇数;

SCR8

所有的Memory必须有一致的bist_data_out_pipelining的设置

SCR9

所有的Memory必须有一致的DataOutStage的设置;

SCR10

内存组的划分要保证没有超过 Max_power_per_step和max_memories_per_step

创建DFT spec

set spec [create_dft_specification]
#创建一个 DFTSpec
#在这条命令的最后,会报告当前DFTSpec生成的名字

#tip: 使用 tcl 中的set 命令去捕获 create_DFTSpec 返回的数据;

#设计 仅在process_dft_specification 时发生改变
DFTSpec检查和基本的编辑

Tessent工具会分析你设置的信息和约束;下面的例子会展示如何检查和修改DFTSp

report_config_data $spec
report_config_data $spec/MemoryBist/Controller(c1)
#报告所有未指定的配置(默认配置)
report_config_data -show_unspecified

re-creating the DFTspec

一些信息将你在报告DFTspec的时候才能看到,像 Memory的分组仅影响DFT的解决方案,但只能在创建之后才能看出结果,修改这些信息需要对DFTspec进大量的编辑,更简单的方法是直接改变输入的数据并重新创建DFTspec;

下面的例子中,你想移动一个Memory到一个独立的controller;

改变物理簇(physical cluster)信息并重新创建DFTSpec
report_config_data $spec/MemoryBist/Controller(c1)
report_memory_instances -limit2
#报告两个instance的信息;
set_memory_instance_options mem1 -physical_cluster_override MyCluster
set spec [create_dft_spec -replace]
#report_config_data一下检查是否修改成功
附加的修改DFTSpec的方式
通过 Configuration Data Visualizer
display_specification

process_dft_specification

这里没什么好说的

More articles You can follow the official account:“IC练习生”
IC民工不定期更新

  • 11
    点赞
  • 62
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 10
    评论
### 回答1: Tessent MBIST User Guide是一个关于Tessent Memory Built-In Self Test(MBIST)软件的用户指南。这个软件是由Mentor Graphics公司开发的,主要用于芯片设计中的集成电路自检测。这个指南提供了一个详细的使用说明,包括了该软件的主要功能和特点,以及用户如何使用和配置该软件来优化集成电路的测试。Tessent MBIST可以帮助设计师更容易地检测芯片中的故障,提高芯片的可靠性和稳定性。该软件还提供了多种测试模式,包括逻辑模式和随机模式等,以帮助用户更好地测试不同类型的集成电路。在使用该软件时,用户需要遵循一些基本的指南,如如何设置测试向量、如何选择不同的测试模式等。总体而言,Tessent MBIST User Guide是一个非常实用的指南,它可以帮助芯片设计师更好地理解和使用Tessent MBIST软件,从而提高芯片的可靠性和性能。 ### 回答2: Tessent MBIST User Guide是一本使用手册,它介绍了Tessent MBIST工具的使用方法,并提供了关于如何在电路设计过程中使用MBIST (Memory Built-in Self-Test)技术的细节。MBIST技术可以用来测试电路中的内置存储器(SRAM, ROM等)是否正常工作。 这个手册提供了用户需要的所有信息,包括如何使用Tessent MBIST 工具,如何设置测试模式,如何编写和运行测试程序等。它还介绍了如何分析测试结果和进行故障排除。 另外,Tessent MBIST User Guide还提供了有关如何使用该工具来减小测试时间和测试芯片的功耗。通过使用该工具,用户可以高效地测试电路,同时减少测试成本和时间。 总之,Tessent MBIST User Guide是一个非常实用的手册,能够帮助电路设计人员快速学习和使用MBIST技术,从而提高测试效率和电路品质。 ### 回答3: Tessent MBIST User Guide 是一份关于硬件测试的用户手册。Tessent MBISTMemory Built-In Self-Test)是一种内置式自测试技术,可用于测试集成电路的存储器单元,如SRAM、DRAM和ROM等。 该用户手册详细介绍了Tessent MBIST与其他测试技术的对比和优势,如其高效、可靠、灵活和可重复使用等。手册中还介绍了Tessent MBIST的体系结构、设计流程、操作方法、文件格式和仿真模型等内容。 手册提供了详细的应用指南,包括测试场景的设置、仿真验证、测试覆盖率的评估和结果分析等。同时,手册还提供了许多实际案例,展示了Tessent MBIST在各种应用场合下的应用效果。 总之,Tessent MBIST User Guide 是一个全面而详细的硬件测试指南,有助于工程师了解、掌握和应用Tessent MBIST技术,提高集成电路的测试效率和质量。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

旺旺脆兵兵

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值