Design Compiler:Topographical Workshop Lab2

server/2024/11/16 20:51:43/

相关阅读

Design Compilericon-default.png?t=O83Ahttps://blog.csdn.net/weixin_45791458/category_12738116.html?spm=1001.2014.3001.5482


        本文是对Synopsys Design Compiler Topographical/Graphical Workshop Lab Guide中Lab2的翻译,Lab文件可以从以下链接获取。

Synopsys Design Compiler Topographical/Graphical Workshop Labicon-default.png?t=O83Ahttps://download.csdn.net/download/weixin_45791458/89987600?spm=1001.2014.3001.5501


实验二、运行DC-T(实验时长:30分钟)

学习目标

        在本次实验中,你将使用从参考方法生成(RMgen)工具下载的脚本。根据你选择的配置,RMgen会生成针对指定工具和版本优化的脚本。

        完成本次实验后,你应能够:

  • 运行RMgen工具
  • 将种子脚本适配到你的设计中
  • 运行DC-T
  • 描述使用参考方法脚本的好处

任务 1:运行参考方法生成工具

1、在lab2_running目录中创建一个下载目录

mkdir downloads

2、打开一个互联网浏览器

mozilla

3、登录到Synopsys Solvnet页面以获取RMgen工具(这需要购买正版EDA软件后的Site ID)Synopsys Sign In icon-default.png?t=O83Ahttps://solvnet.synopsys.com/rmgen

4、如果无法访问Solvnet,使用以下命令

cp ../RMgen_tarfiles/vhdl_all_false/vhdl_all_false.tar downloads/.

        然后跳至第8步(解压脚本)。

5、配置脚本

        选择最新版本的Design Compiler,配置脚本以使用VHDL作为RTL源格式(这与实验中提供的源代码匹配),通过选择所有的真/假选项为'false',创建最基本的脚本。

6、下载脚本到下载目录

7、关闭浏览器

8、解压脚本

tar -xvf *.tar

9、复制DC-T设置和运行文件(dc_setup.tcl和dc_scripts/dc.tcl)到lab2_running目录

cd 到解压后的脚本目录
cp -R dc_setup.tcl ./dc_scripts ../../.

10、复制由物理团队创建的common_setup.tcl文件到lab2_running目录

cd lab2_running
cp physical_team_data/common_setup.tcl .

任务 2:将RMgen种子脚本适配到你的设计中

1、验证从物理团队复制的common_setup.tcl文件是否与DC-T工作环境一致。对于本实验,请确认common_setup.tcl中所述的四种关键文件确实存在

        问题 1:目标(逻辑)库(.db文件)位于哪里?

        答案 1:它们是Milkyway参考库的一部分,每个库或宏的LM(逻辑模型)目录中都有它们。例如,目标库sc_max.db的.db文件位于../ref/libs/mw_lib/sc/LM目录中。

        问题 2:四个物理过程文件位于哪里?

        答案 2:TLUPLUS最小值和最大值文件以及映射文件位于../ref/libs/tlup,技术文件位于../ref/libs/tech。

        问题 3:common_setup.tcl中的哪些七个变量用于定位要读取到DC-T中的物理信息文件?

        答案 3:DESIGN_REF_DATA_PATH和ADDITIONAL_SEARCH_PATH指向布图规划(.def)文件,MW_REFERENCE_LIB_DIRS指向Milkyway参考库目录,TECH_FILE指向工艺技术文件,MAP_FILE指向映射文件,它用于在工艺技术文件和tluplus文件之间映射层名称,TLUPLUS_MAX_FILE最大tluplus文件,TLUPLUS_MIN_FILE最小tluplus文件。

2、将RTL源代码添加到dc_setup.tcl文件中(为方便起见,它们已按正确顺序列出在文件lab2_running/support_files/rtl_file_order中,请将它们剪切并粘贴到dc_setup.tcl文件中)

3、浏览dc_setup.tcl文件,查看哪些内容是自动设置的

        问题 4:create_mw_lib创建的Milkyway设计库的名称是什么?

        答案 4:ORCA_TOP_LIB。

        问题 5:使用什么命令将Milkyway设计库加载到DC-T中?

        答案 5:load_mw_lib。

4、修改dc.tcl文件,以便通过在compile_ultra命令之前添加一些检查和报告来快速验证设置

# dc.tcl文件
# 使用一些物理文件的检查命令
*********
report_mw_lib -mw_reference_library > my_mw_lib
report_tlu_plus_files > my_tlu_plus 
check_library > my_check_library
*********# 为了节约时间,使用-check_only选项
compile_ultra -check_only > my_check_only 
quit 
# 运行DC-T并确认结果
dc_shell -topo -f ./dc_scripts/dc.tcl | tee -i a.log
grep Warning my*
grep Error my*

        问题 6:检查和报告有哪些问题?

        答案 6:check_library命令显示:

        问题 7:这个问题是“致命错误”吗?

        答案 7:这是正常且可以预料的情况,逻辑库通常没有电源和接地引脚,而物理库则有。如果使用低功耗(UPF)流程,则逻辑库和物理库的电源引脚必须匹配,满足低功耗流程的要求即可消除此错误。

        问题 8:使用参考方法脚本的优势是什么?

        答案 8:使用参考方法脚本的优势包括:确保跨工具的一致性,轻松访问最新的设置和命令,随着设计从RTL到GDSII的过渡,结果具有可预测性,并且遵循全球专家定义的流程,这些流程包括时钟门控、扫描插入、功耗优化等。此外,参考方法脚本对于首次使用DC-T的用户来说也是一个很好的起点。

任务 3:编译您的设计(可选)

        等待编译返回并不是有效地利用实验时间,但如果已经完成了实验,并且希望在讲座或午餐期间运行编译,欢迎进行操作。

1、将dc.tcl文件中的compile_ultra -check_only和quit改为compile_ultra,注释掉任何exitcommand,以便运行结束时保持DC-T打开,以便进行交互式操作

2、启动DC-T编译运行

dc_shell -topo -f ./dc_scripts/dc.tcl | tee -i b.log

原文链接

Design Compiler Topographical/Graphical Workshop Lab Guideicon-default.png?t=O83Ahttps://download.csdn.net/download/weixin_45791458/89988989        感谢EETOP坛友的分享。


http://www.ppmy.cn/server/142460.html

相关文章

文献阅读 | Nature Communications:使用自适应图注意自动编码器从空间解析的转录组学中解读空间域

文献介绍 文献题目: 使用自适应图注意自动编码器从空间解析的转录组学中解读空间域 研究团队: 张世华(中国科学院数学与系统科学研究院) 发表时间: 2022-04-01 发表期刊: Nature Communications 影响因子…

厦大南洋理工最新开源,一种面向户外场景的特征-几何一致性无监督点云配准方法

导读 本文提出了INTEGER,一种面向户外点云数据的无监督配准方法,通过整合高层上下文和低层几何特征信息来生成更可靠的伪标签。该方法基于教师-学生框架,创新性地引入特征-几何一致性挖掘(FGCM)模块以提高伪标签的准确…

LabVIEW 使用 Snippet

在 LabVIEW 中,Snippet(代码片段) 是一个非常有用的功能,它允许你将 一小段可重用的代码 保存为一个 图形化的代码片段,并能够在不同的 VI 中通过拖放来使用。 什么是 Snippet? Snippet 就是 LabVIEW 中的…

centos rich 美观打印日志

文章目录 步骤 1: 安装 Python 和 pip步骤 2: 安装 rich-cli步骤 3: 验证安装步骤 4: 使用 rich-cli参考 在 CentOS 上安装 rich-cli 工具,你可以按照以下步骤进行操作。rich-cli 是一个命令行工具,用于将 rich 库的功能(例如美化输出&#x…

【ChatGPT】让ChatGPT生成批判性思维问题的回答

让ChatGPT生成批判性思维问题的回答 批判性思维是一种通过逻辑推理、分析和评估信息来获得更深刻理解的能力。在与ChatGPT互动时,可以通过设计带有挑战性和多维度的问题,让它展示出对主题的深入探讨和批判性思维。本篇文章将提供如何利用Prompt设置来引…

python习题练习

python习题 编写一个简单的工资管理程序系统可以管理以下四类人:工人(worker)、销售员(salesman)、经理(manager)、销售经理(salemanger)所有的员工都具有员工号,工资等属性,有设置姓名,获取姓名,获取员工号,计算工资等…

【数据结构】【线性表】静态链表(附C语言源码)

静态链表 链表是物理结构为链式的线性表,其每个结点的存储位置不一定是连续的,每个结点依靠结点元素的中的指针线性相连。但有时候为了方便管理内存空间,会将链表的各个结点存储空间放在一块,其实现方式类似于数组,只…

后端:Spring AOP原理--动态代理

文章目录 1. Spring AOP底层原理2. 代理模式3. 静态代理4. 动态代理4.1 jdk 实现动态代理4.2 cglib 实现动态代理4.3 jdk、cglib动态代理两者的区别 1. Spring AOP底层原理 创建容器 new applicationContext();Spring把所有的Bean进行创建,进行依赖注入…