【Tessent】【Command】set_design_level Design Level

news2024/11/14 22:54:37

  • Usage
  • Description
  • physical_block vs. sub_block
  • instrument_block

set_design_level 命令的基本内容,以及不同 design level 之间的区分。


Usage


该命令的用法比较简单,主要是区分不同的 design level。

set_design_level {chip | physical_block | sub_block | instrument_block}

Description


dft -rtl 或者 dft -no_rtl context 中进入到 analysis system mode 时候,必须使用该命令指定 design level。

该命令没有默认值,但它会对 create_dft_specificationprocess_dft_specification 两条命令产生影响,所以不许要指定正确的 design level。

使用 process_dft_specification 命令之后立即使用 extract_icl 命令,工具会将 top ICL module 的 tessent_is_physical_module 属性设置为 true。

如果 extract_icl 命令是单独使用的,那么在使用该命令之前,必须设定 design level。


chip

将 design level 设置为 chip 意味着:

  • 所有的端口都有一个 pad buffer
  • 使用 create_dft_specification 命令时会插入一个 TAP

所以,chip 通常指的是芯片的最顶层。此外,根据定义,chip 也算是 physical block。



physical_block vs. sub_block


在标准的 Tessent Shell workflows 中, physical_block 和 sub_block level 用于 child block,chip level 用于 top 。

区分 physical block 和 sub-block 是十分重要的,其不同之处如下所述:


physical block 在 synthesis 和 layout 中是一个独立的个体。

如果 physical block 在另一个 physical block 中实例化,那么在对 parent physical block 进行综合(synthesizing)时,综合工具或者 layout 工具并不会加载 child physical block 的 netlist view,而是使用 child physical block 的 timing model。

也就是说,parent physical block 的 SDC 只能参考 child physical block 的 pins,而不能参考 child physical block 中的 elements。

但是对于 parent physical block 中的 sub-block 而言,-to 或者 -from 不能参考 sub-block 的 pins,可以参考 sub-block 中的 elements。


sub-block 的 netlist 通常只是 parent physical block netlist 的一部分,在对 physical block 进行 scan insertion 的时候带上 sub-block。

但是,如果是 child physical block,可以单独对其进行扫描链的插入,然后将这些扫描链连接到 parent physical block 的扫描链。

【简单来说,在综合之后,sub-block 会融合到 parent physical block,不再有明显的边界,不能对其单独操作,但是 child physical block 会有明显的边界,可以单独对其进行操作。】


在 RTL DFT flow 中,sub-block 经常被当作 physical block。

在使用 read_def 命令提取 memories 的布局信息用于为每个 physical cluster 构建 memoryBIST 控制器时,如果是对 sub-block 进行 mbist 插入,就必须使用 -instance_of_current_design 选项。

因为根据定义,只能得到 physical block 的 DEF 文件,而不能得到 sub-block 的 DEF 文件,因为 sub-block 被综合到 parent physical block 中。只能使用 parent physical block 的 DEF 文件,并使用 -instance_of_current_design 指定 sub-block 在其中的实例路径。


在 signoff 仿真中,test benches 按照 physical block 进行划分,用以优化性能。

对于 sub-block modules,会作为 parent physical block 的一部分,同 parent physical block 一起仿真。因为在 gate-level 仿真的时候,只有 physical block 的 netlist 和 SDF 文件,sub-blocks 被综合到 parent physical block 中。


使用 read_design 命令加载一个 sub-block 到工具中的时候,如果它不是 current_design 并且使用 -rtl context,is_hard_module 属性会被自动推断为 true。

is_hard_module是 Data Models 中 module 的一个属性,它为 true 意味着该模块不能被编辑。类型为 cell 或者 primitive 的所有模块该属性都会被自定设置为 true。】

在对 current design (不是 sub-block,但其中包含 sub-block)进行 DFT elements 插入的时候,链接关系只能添加到 sub-block 模块的 pins。

如果想要在 sub-block 的内部添加内容,就必须将 sub-block 模块设置为 current design,然后再 sub-block level 进行内容添加(以及 sub-block 对应的 ICL 文件的提取)。

在 parent physical region 提取 ICL 的时候,是要复用 sub-block 的 ICL 描述,并且要从 sub-block 的 pins 向外追踪。


instrument_block


一个特殊的空模块,其中插入了 DFT elements。需要在 parent block 中手动实例化,并手动将其 pins 连接到 parent block。

如果不想要 Tessent Shell 修改 golden RTL,一个常用的 flow 是手动在 design block 中插入 DFT module。然后将该 DFT module 设置为 current_design,将该模块的 design level 设置为 instrument_block,使用 Tessent DFT flow 在其中插入 IjtagNetwork、EDT 控制器、SSN

该 DFT module 包含预先存在的的端口(clock、IJTAG network and SSN ports),需要预先手动将其连接到 parent module。

对该 DFT module 完成 DFT 插入之后,该 block 的 parent ,就好像你在该 level 完成了正常的 DFT flow。添加在 DFT module 的 DFT signals 会存在于 parent level。在 parent module 进行 ICL 提出之后,child DFT block 的 DFT elements 也会存在于 parent block’s TSDB 中。

示例:

首先,一个空的 DFT module ,其中包含了 IJTAG 和 SSN 的端口定义,以及每个功能时钟的输入和输出端口。

也可以为 all_test 和 async_set_reset_dynamic_disable 这两个 DFT 信号创建输出端口,用于在 scan shifting 过程中控制 clock mux 和 disable Async Set Reset signals。

在这里插入图片描述

然后,手动实例化并连接该 DFT module 到 parent module 中。

将 golden RTL 中的所有 clk 修改为 clk_occ,这样所有 scannable elements 是时钟都由即将插入到 block 的 OCC 控制。

在这里插入图片描述

将该 DFT module 当作普通的模块进行 DFT insertion,但是有两种不同:

在这里插入图片描述

在 next level,正常的读取设计并使用 read_design 命令加载 DFT module。定义时钟之后,执行 DRC。

在使用extract_icl命令时,就好像是使用正常的 flow 在当前 level 进行了 DFT element 的差人。ICL 提取完成之后,可以到 DFT context 中验证 RTL 具有可控制的时钟和复位信号。

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1981409.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C++三种继承方式-公共/保护/私有继承

public、protected和private的区别在于: public在子类和类外都可以随意访问。 protected在子类中可以访问,但是在类外无法访问。 private在子类和类外都无法访问。 注意:父类中的所有非静态成员属性都会被子类继承下去,包括私有…

项目比赛项目负责人的汇报艺术:清晰、有条理地反映问题

项目比赛项目负责人的汇报艺术:清晰、有条理地反映问题 前言1. 现状-问题-建议:三步走策略2. 成绩-问题-改进:展示与提升3. 事实-影响-请求:客观与明确结语 前言 在项目管理的世界里,沟通不仅仅是信息的传递&#xff0…

进程的管理与控制详解:创建、终止、阻塞等待与非阻塞等待

目录 一、进程创建 1、实例 2、fork函数详解 (1)fork函数模板 (2). fork() 函数的工作原理 (3). fork() 返回值和错误处理 3、如何理解进程创建过程 二、进程终止 1、终止是在做什么? 2、进程终止,有三种情况 3、进程如何终止? 三…

变电站的瞬态过电压和雷击保护

瞬态过电压是电力系统的典型现象。过电压的来源是直接或附近的雷击、开关操作、电磁脉冲和静电放电。保护变电站设备免受瞬态过电压影响的经典装置是避雷器。 变电站常见的暂态过电压来自于开关操作,可怕的是雷电,它会带来较大的扰动。 雷击引起的瞬态…

ClickHouse 进阶【建表、查询优化】

1、ClickHouse 进阶 因为上一节部署了集群模式,所以需要启动 Zookeeper 和 ck 集群; 1.1、Explain 基本语法 EXPLAIN [AST | SYNTAX | PLAN | PIPELINE] [setting value, ...] SELECT ... [FORMAT ...] AST:用于查看语法树SYNTAX&#…

Moretl 同步设备日志到服务器

使用咨询: 扫码添加QQ 永久免费: Gitee下载最新版本 使用说明: CSDN查看使用说明 功能: 定时(全量采集or增量采集) SCADA,MES等系统采集工控机,办公电脑文件. 优势1: 开箱即用. 解压直接运行.插件集成下载. 优势2: 批管理设备. 配置均在后台配置管理. 优势3: 无人值守 采集端…

注意!!可能这是系统分析师旧教程最后一次考试,赶紧学起来

系统分析师考试是全国计算机技术与软件专业技术资格考试的高级水平考试之一,它是一项专业考试,旨在通过对计算机系统的规划、分析和设计来培养行业内的专业技术人才。近日在国家版本数据中心,查到系统分析师已经有2024最新版的教程出来了&…

JAVA毕业设计156—基于Java+Springboot+vue的电子招投标管理系统(源代码+数据库+万字论文)

毕设所有选题: https://blog.csdn.net/2303_76227485/article/details/131104075 基于JavaSpringbootvue的电子招投标管理系统(源代码数据库万字论文)156 一、系统介绍 本项目前后端分离(可以改为ssm版本),分为供应商、单位、管理员三种角色 1、供应…

PMP报考条件真的需要做项目达到3年时间吗?

很多朋友想报考项目管理资格证书的时候,上网一看报考资格,一般会是这样: 第一类:拥有学士学位或同等学历以下者,申请者必须具备至少7500个小时的项目管理经验,并且在申请之日前8年内,累计项目管…

AI大模型加速落地 “新蓝海”如何开拓

【编者按】 当前,生成式人工智能技术在多个领域展现出广泛的应用潜力,逐渐成为科技领域的关注焦点。 国家互联网信息办公室最新数据显示,截至目前,我国已经完成备案并上线、能为公众提供服务的生成式人工智能服务大模型已达180多…

ABeam 德硕| FY25 Kickoff MeetingDinner 回顾

自律 Self-discipline 7月一整月,ABeam中国各office相继举办了新财年的Kickoff会议。Kickoff意为启动,在这个场合,所有员工将一同参会,作为新财年的启幕仪式。 今年ABeam中国以“自律”作为年度主题,本次全站Kickoff…

Java获取exe文件详细信息:产品名称,产品版本等

使用Maven项目&#xff0c;在pom.xml文件中注入&#xff1a; <dependency><groupId>com.kichik.pecoff4j</groupId><artifactId>pecoff4j</artifactId><version>0.4.1</version></dependency> 程序代码&#xff1a; import …

电脑技巧:9个免费的AI图片无损放大工具和网站

今天小编给大家介绍9款免费的AI图片放大工具和网站&#xff0c;帮助你提高图片清晰度&#xff0c;感兴趣的朋友可以自己试一试&#xff01; 电脑技巧&#xff1a;9个免费的AI图片无损放大工具和网站 美图设计室 美图设计室是美图秀秀公司推出的一款在线图片编辑和设计工具箱&…

基于ESP32的遥控小车

目录 1.ESP32简介 2.项目构思 3.项目所需材料 4.代码示例 5.实物运行 1.ESP32简介 ESP32是一个集成天线和射频巴伦、功率放大器、低噪声放大器、滤波器和电源管理模块。整个解决方案占用的印刷电路板面积最少。该板采用台积电40nm低功耗技术的2.4GHz双模Wi-Fi和蓝牙芯片&…

计算机网络基础 - 计算机网络和因特网(2)

计算机网络基础 计算机网络和因特网Internet 结构和 ISP分组延时、丢失和吞吐量四种分组延时分组丢失吞吐量 协议层次及其服务模型概念数据单元&#xff08;DU&#xff09;协议栈TCP/IP 协议各层次的协议数据单元IOS/OSI 参考模型 计算机网络和因特网的历史早期计算机网路&…

RTSP系列三:RTP协议介绍

RTSP系列&#xff1a; RTSP系列一&#xff1a;RTSP协议介绍-CSDN博客 RTSP系列二&#xff1a;RTSP协议鉴权-CSDN博客 RTSP系列三&#xff1a;RTP协议介绍-CSDN博客 RTSP系列四&#xff1a;RTSP Server/Client实战项目-CSDN博客 目录 一、基本概念 二、RTP报文格式 三、R…

代码随想录训练营 Day21打卡 二叉树 part08 669. 修剪二叉搜索树 108. 将有序数组转换为二叉搜索树 538. 把二叉搜索树转换为累加树

代码随想录训练营 Day21打卡 二叉树 part08 一、 力扣669. 修剪二叉搜索树 给你二叉搜索树的根节点 root &#xff0c;同时给定最小边界low 和最大边界 high。通过修剪二叉搜索树&#xff0c;使得所有节点的值在[low, high]中。修剪树 不应该 改变保留在树中的元素的相对结构 …

密码学基础:搞懂Hash函数SHA1、SHA-2、SHA3(2)

目录 1.引入 2. SHA512-224\256 3.SHA-3 4.MD5 5.SM3 1.引入 上篇密码学基础&#xff1a;搞懂Hash函数SHA1、SHA-2、SHA3(1)-CSDN博客&#xff0c;我们先就将基础的SHA1\2讲解了&#xff0c;接下来我们继续聊SHA-3、SHA2变体SHA512_224\256等 2. SHA512-224\256 SHA512…

[oeasy]python0028_女性程序员_Eniac_girls_bug_Grace

028_第一个bug是谁发现的_编译之母 回忆上次内容 py文件 是 按照顺序 一行行 挨排 解释执行的 可以用 pdb3 hello.py 来调试程序 顺序执行 程序 在文本中 从上到下 是 一行行写的 解释器 从上到下 是 一行行解释的 调试 也是 从上到下 一行行 调试的 bug这个东西 是什么时候才有…

Rsync未授权访问漏洞

Rsync未授权访问漏洞 Rsync是Liux/Unix下的一个远程数据同步工具&#xff0c;可通过LAN/WAN快速同步多台主机间的文件和目录&#xff0c;默认运行在873端口。由于配置不当&#xff0c;导致任何人可未授权访问Syc,上传本地文件&#xff0c;下载服务器文件。RSyc默认允许匿名访问…