- 博客(73)
- 资源 (2)
- 收藏
- 关注
原创 Tessent SSN flow [2] BFD & BFM
BFD和BFM是一对串并转换器,用于降低数据传输速率并保证数据完整性,尤其在跨时钟域传输(CDC)中。CDC涉及信号从一个时钟域传输到另一个时钟域,可能引发亚稳态、数据丢失或数据不一致等问题。通过BFD降低数据速率后,仅需两级同步寄存器即可解决CDC问题。BFD还可用于提高总线时钟频率,通过减慢数据速率来优化时序收敛。BFM则用于将展宽的总线数据缩窄,配合BFD实现跨时钟域传输和内部总线时钟加速。此外,BFD和BFM的使用有助于将时钟域限制在单个物理块内,减少时钟树综合的复杂性,同时通过插入输出管道进一步优
2025-05-20 11:53:28
756
原创 每次执行最大数量的仿真jobs
本文介绍了一种自动化任务管理和投递的方法,旨在减少手动监控任务状态的时间。首先,通过全局的Makefile创建完成标志文件(finish flag),以便在任务完成后自动生成标志文件,从而避免实时查看任务状态。其次,使用Perl脚本实现任务发现和投递,根据参数自动生成仿真环境,并通过检查完成标志文件来判断任务是否完成。脚本还支持并行任务管理,确保在资源限制下高效运行。这种方法不仅提高了任务管理的自动化程度,还减少了手动干预的需求,使开发者能够更专注于其他重要工作。
2025-05-15 10:03:06
171
原创 Tessent SSN flow [1] overview
本文探讨了DFT(Design for Testability)实现中的关键技术,特别是通过SSN(Scan Serial Network)和IJTAG网络优化测试流程。SSN通过在核心级别实现DFT设计,脱离芯片IO限制,简化了路由和时序清理,从而加速了DFT的实现。此外,SSN支持并行测试所有核心,显著缩短了测试时间。文章还详细介绍了SSN与IJTAG网络的结合使用,通过流式传输模式提高测试灵活性,并支持低引脚数测试(LPCT)。在高级主题中,讨论了片上比较(On-chip Compare)模式,该模式
2025-05-13 10:51:11
950
原创 线性反馈移位寄存器在内建自测试中的应用
随着超大规模集成电路 (VLSI) 的持续发展,其复杂性也显著增加。这种复杂性的提升带来了诸多测试挑战,例如不断增长的晶体管数量和集成密度导致芯片引脚数量的增加,以及对更高级、更有效的测试方法的需求 1。传统的外部测试方法在面对这些挑战时逐渐显现出其局限性,尤其是在成本效益和测试覆盖率方面。内建自测试 (BIST) 技术应运而生,旨在应对这些日益严峻的测试挑战 1。BIST通过在芯片内部集成专门的测试电路,使得芯片能够对自身的功能进行测试,从而显著减少了对外部自动测试设备 (ATE) 的依赖 5。这种方法不
2025-04-24 15:22:35
859
原创 Tessent Scan Stream Network (SSN) 在芯片设计DFT中的架构、实现原理及组成
1. Tessent SSN 简介现代片上系统 (SoC) 的复杂性日益增加,给面向测试的设计 (DFT) 带来了严峻的挑战。传统的 DFT 方法在面对不断增长的内核数量和日益缩小的特征尺寸时,其局限性日益凸显,导致测试应用出现瓶颈,测试成本也随之上升 1。为了克服这些限制,西门子 EDA 推出了 Tessent Scan Stream Network (SSN),这是一种先进的解决方案,旨在提供更高效、更具可扩展性的扫描测试方法 2。SSN 被定位为 Tessent TestKompress 中的一项革命
2025-04-15 11:54:36
1292
1
原创 Cadence Xcelium (xrun) 仿真工具多核特性调用与加速编译和仿真
1. 引言:理解 Xcelium 和多核仿真Cadence Xcelium 是一款由 Cadence 设计系统公司推出的第三代高性能逻辑仿真器 1。它基于多核和单核引擎的组合构建而成 2,以其在数字和混合信号仿真领域的创新和技术领先地位而闻名 5。Xcelium 支持包括 SystemVerilog、VHDL、SystemC 和 UVM 在内的行业标准 5。仿真技术经历了从解释执行到编译执行再到并行执行的演进,这反映了片上系统 (SoC) 验证日益增长的需求。Xcelium 通过并行化处理这些需求,代表了当
2025-04-09 12:01:09
878
原创 DFT mode下hard phy STA Nopath
发现在shift mode吧 bypass func的lib也读入了;PHY SI SO在shift mode必须有timing的path;展示为No constrained path;同样发现 hard phy SI SO的出现 no path;优先查看Lib中在此mode是否存在 timing arc;shift cornor出现No Path的;重新读入lib, shift path 出现;其他非SI SO pin的no path;
2025-03-17 18:01:18
546
原创 DC coverage analyze
除此之外由于DDR的bscan可能是hard phy;bscan可能需要走的hard phy的特殊mode;这可能额外需要配置bscan mode让ijtag网络可以访问到DDR的PAD;2. 添加dft signal bscan_clamp_enable bscan_input_isolation_enable output_pad_disable。与bscan_clamp_enable类似bscan_input_isolation_enable force select_ijatg_input为1;
2025-03-10 19:14:22
348
原创 add_cell_constraint C/T/O/DX的区别
最后stable capture 也就是最后一拍capture的值与cell原来的值一致;stable capture的值与cell与cell原来的值相反;cell not Disturbed:是指单元的时钟,复位,置位都是off状态;表中使用a b表示不同的boolean值;
2024-07-30 10:38:15
812
1
原创 How to Delay the capture clock pulse in capture cycle
在扫描测试期间,由于SE是一个全局大扇出异步信号,在一个测试周期内SE可能没有足够的时间传递到所有的scan cell,shift和capture的频率可能造成SE还未完成状态转变就来有效采样沿;
2024-03-25 14:41:49
1216
3
原创 wrapper cell & wrapper chain
参考:https://semiconshorts.com/2022/09/01/wrapper-chains/#:~:text=The%20sequential%20elements%20in%20the,in%20input%2Foutput%20wrapper%20
2023-12-08 14:26:48
2484
4
原创 openlava & perl,集群提交并等待任务结束后执行新任务 &打开新terminal执行任务
【代码】openlava & perl,集群提交并等待任务结束&打开新terminal执行任务。
2023-08-15 11:03:05
545
原创 Tessent Scan&ATPG appendix3 about dft signals
请求附加的静态,动态的DFT信号;也存在一些已经定义好的DFT信号可以用来控制电路;
2023-08-03 17:30:31
2250
3
原创 Tessent Scan&ATPG appendix2 deal with Pre-Existing chain
对于复用别的设计模块,或者使用第三方工具进行串链之后,设计中已经存在了扫描电路;如何做处理;
2023-08-02 16:52:29
799
原创 Tessent Mbist(5) 并行static Retention(静态保持)测试
PSRT和parallel retention test不同
2023-02-13 15:59:15
3003
1
原创 MBIST BAP(Bist Access Port)直接访问接口(1)
MBIST BAP(BIST Access Port)是在系统内部调用自测试的接口
2022-11-19 16:57:31
3721
原创 Tessent Mbist(2)Pattern Spec设置及Pattern产生
Tessent MBist test pattern的生成与仿真
2022-10-24 11:12:32
5683
3
原创 Tessent Mbist(1)Memory分组及DFTSpec编辑
DFTspec中 memoryInterface/data_bits_per_bypass_signal 属性用来指定组合到一个XOR tree中的数据输入信息的数量,此设置在为RAM创建bypass logic时十分有用,工具提供了一个灵活的区间,1对1到多对1;一些信息将你在报告DFTspec的时候才能看到,像 Memory的分组仅影响DFT的解决方案,但只能在创建之后才能看出结果,修改这些信息需要对DFTspec进大量的编辑,更简单的方法是直接改变输入的数据并重新创建DFTspec;
2022-10-22 14:46:25
7256
10
原创 Tessent scan&ATPG(9) simulation mismatch(debug向量仿真问题)
pattern simulation mismatch发生的原因 及debug方法
2022-09-06 10:51:25
6927
7
原创 DFT specification file & string
DFTSpecification的配置主要就是系的设计里面需要做什么,怎么做;然后tessent会根据文件或者string之中的信息 创建一系列的instruments 并将他们插入到设计中;上面的文件是加载tessent DFTspecification文件读入的;需要通过create_dft_specification;才能将配置信息存入变量中,方便之后进行修改和配置;...
2022-08-31 09:19:26
4971
4
原创 Tessent scan & ATPG(8) Debug low test coverage(低测试覆盖率的原因及debug方法)
如何利用工具debug测试覆盖率低的原因
2022-08-29 09:52:40
9079
8
原创 Tessent scan & ATPG(7) 设计规则检查 (DRC)
写在前面, DFT compiler 和Tessent 都有自己独立的DRC的检查, 可能在命名上有所重复,注意区别.Flat model的创建(不是fault model哦)这里的flat的意思 是 将设计中模块的接线打破,电路全部看成最基本的门电路组成;ATPG工具会使用verilog模型区创建自己的工具内部的设计模型;设计中的cell会转换成ATPG library中的标准单元;#使用analyze_control_signalscreate_flat_modelcheck_desi.
2022-05-01 20:31:56
12372
5
原创 Tessent scan&ATPG(6)测试向量配置 ,at-speed pattern的生成以及OCC的插入
Test pattern management 测试向量管理生成最佳的pattern#使用create_patterns#时会默认将所有的fault 类型加入到consider中;执行大量的设计分析和DRC;#创建所有必要的pattern 类型#监控pattern的生成(包括实时的coverage pattern count 以及执行时间等) 如果必要会修改参数#如果必要 自动运行top_up的方式##使用report_patterns#报告当前生成pattern的信息; 你可以展示所
2021-12-28 11:40:46
13068
9
原创 Tessent scan&ATPG (5) Additional test pattern types
Additional test pattern types附加的pattern的类型ATPG test pattern 的类型使用tessent shell 生成的pattern 大致分以下几种类型:1. basic Scan 对于 full-scan 的电路 生成的是basic scan的pattern2. clock Sequential 用于那些时序深度有限 存在no-scan latches /no-scan cell 的电路 在时序上: shift之后(或者说load之后)会有若干个cyc
2021-12-20 22:10:05
7179
7
原创 Tessent scan &ATPG (4) 额外的fault model‘
可测试性的几个指标test coverage检测到的fault 占所有可测fault 的百分比(DT +(PD * posedet_credit))/TEfault coverage检测到的fault 占所有test pattern设置测试的fault 的比重同等对待 untestable fault和 undetected fault(DT +(PD * posedet_credit))/FUATPG Effectiveness ATPG 的效率的衡量反应的是 ATPG tools 对于
2021-12-18 11:18:54
6499
原创 Tessent scan &ATPG (3) Fault 的分类
Fualt 的分类在使用 report_statistrics报告scan chain 的总结性的报告时,会出现每种fault的数量 以及对覆盖率的影响,TE(testable)Detect by implication (DI)隐含检测在scan chain 数据路径上的 faults被标记为 隐含可检测通过推算电路就知道这些点可以被测到,这些fault location是测试电路的一部分.扫描链的测试pattern (使用write_pattern 创建的)就可以检测到这些fualt;c
2021-12-14 22:21:24
8746
原创 MCMM 脚本编写
MCMM脚本MMmulti-mode 的脚本以最简单的两个mode为例, 一个func 一个test,肯定会分出来的两个mode;MM的脚本主要写什么:## 通过设置signal值,开启或者关闭mode# Enable DFT logic and OCC Controller:set_case_analysis 1 test_modeset_case_analysis 0 occ_bypassset_case_analysis 0 occ_reset# test mode 的时钟和
2021-12-04 19:04:07
3104
原创 Tessent scan & ATPG(2) ATPG basic flow
ATPG 的基本步骤DFT lib一般vendor会提供也可使用 tessent 的libcomp工具 将simulation lib转化为 DFT lib什么是 simulation lib ? 是仿真专用的库吗? 那仿真和综合 布局布线为什么要分开来?black boxes存在一些block 不需要做scan chain的 就可以定义为black box;#exampleadd_black_boxed -module core#改变black box 的输出行为add_black
2021-11-23 22:07:21
11395
6
原创 DFT1 - 概论
DFT是干什么的?物理瑕疵 Defectsilicon上的physical problems;1. contamination -causing open 污染造成开路;2. extra metal-causing shorts 额外的金属造成的短路3. 离子注入的时候 离子浓度不够 insufficient doping4. 金属层的 桥接的问题;5. CMOS stuck-on6. COMS stuck-open7. 制程上的一些问题导致MOS管的transition time很大;
2021-09-22 11:20:49
5545
原创 well tap cells的结构以及如何在物理设计流程中放置他们
well tap cell是为了防止CMOS设计中的闩锁效应well tap cell的N井连接VDD P衬底连接VSS,没有逻辑功能,是physical only cells之一;structure用处在早期没有well tap cell的时候,每个标准单元都要一个N井连VDD,P衬底连VSS(接地),但是这种结构很耗费面积,之后一种Tapless cell应运而生,也就是在标准单元上没有well taping;而为啥之前N井要接 power_supply 而P_sub要接ground 就是为
2021-07-24 21:38:02
10397
原创 创建DC时序约束文件
时序约束###1. clock# 在设计之初 并不知道设计所能跑的时钟周期能有多小; 根据DC ICC 都是多次迭代 获得最优解的原则 ; 一开始先给自己的估计值;# 对于180nm 的库来说, 由于IO pad 的限制 , 最多能跑100Mhz左右 当然单独综合core 的频率会更大一些;#一开始 我们设置5ns 一开始紧一些 可以更快的获得 设计的时钟顶;# set clock constrianscreate_clock -period 5 [get_ports clk]set_dont
2021-07-19 20:23:06
3628
原创 max_transition 违例 及解决办法
max_transitionmax_transition time 是指signal从一个逻辑到另一个逻辑中间net所用的时间,违例是节点电阻和电容的函数;net上的transition time是其driving pin改变逻辑值所需要的最长的时间; 决定于上升时间和下降时间,这个约束是基于library给的信息,对于NLDM 非线性延迟模型, 输出的transition time时输入的transition和输出负载的函数;如何去计算max_transition_timeCMOS delay m
2021-07-19 14:24:04
13309
3
原创 PNS相关
power ring:做TOP层才会用到吧;power mesh:一般指上层金属做成的power network,例如 M7、RDL;power straps: 条 带,指power netpower rail:和site row重叠的power net ,T28一般专指M2(具体看工艺了)power net逻辑上的连接,采用 derive_pg_connection,这个命令只会认到DB库中有power定义的std,如果没有定义就可能认不到,DSS和OCC。以INV为例,有六个PIN,in\ou.
2021-05-11 09:30:31
4551
1
Using Tcl With Synopsys Tools
2020-04-11
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人