
相关阅读Design Compilerhttps://blog.csdn.net/weixin_45791458/category_12738116.html?spm1001.2014.3001.5482目录实验三、变种运行DC-T实验时长30分钟学习目标任务1、指定Tcl物理约束任务2、为层次化的.ddc流程创建脚本任务3、综合设计可选本文是对Synopsys Design Compiler Topographical/Graphical Workshop Lab Guide中Lab3的翻译Lab文件可以从以下链接获取。Synopsys Design Compiler Topographical/Graphical Workshop Labhttps://download.csdn.net/download/weixin_45791458/89987600?spm1001.2014.3001.5501实验三、变种运行DC-T实验时长30分钟学习目标在本实验中你将修改展开的参考方法脚本为布图规划者提供创建布图规划的初始网表修改层次化的参考方法脚本以运行分层自下而上流程其中三个子模块先前已使用DC-T综合完成完成本实验后你应能够当没有布图规划可用时指定基于Tcl的物理约束将设计模块替换为先前综合的模块包括其相关的物理约束任务1、指定Tcl物理约束假设你还没有布图规划但对物理约束有一些有限的了解。使用这些知识可以为布图规划者生成初始网表。1、将当前目录切换到lab3_variations_initialcd lab3_variations_initial2、编辑参考方法脚本emacs (or other editor) ./dc_scripts/dc.tcl不使用def文件布图规划文件将其注释掉并使用一些Tcl物理约束替换它输入端口在芯片的左边输出端口在右边宽高比为1.2利用率为70%。添加write_physical_constraints命令来验证DC-T是否接受了约束。将compile_ultra命令修改为快速检查命令compile_ultra -check_only将其输出重定向到文件以便可以验证物理约束的完整性。# comment out ‘extract_physical_constraints’ # extract_physical_constraints ${DESIGN_NAME}.def # add three TCL physical constraints set_port_side [all_inputs] -side left set_port_side [all_outputs] -side right set_aspect_ratio 1.2 set_utilization 0.7 write_physical_constraints –output my_phys_cons.log # replace the compile with compile_ultra –check_only compile_ultra -check_only my_check_only.log quit # compile_ultra3、通过在DC-T中执行check_only综合并检查my_phys_cons.log来验证以上工作没有错误dc_shell -topo -f \ ./dc_scripts/dc.tcl | tee -i dc.log 在dc.log中搜索Error 检查my_phys_cons.log和my_check_only.log以查看完整的约束问题 1你发现了什么错误答案 1你应该看到一个错误显示逻辑库和物理库中的引脚不匹配。除非使用的是低功耗UPF流程否则你总是会看到此错误对于目前而言可以无视它。 grep Error dc.log Error: List of pins mismatched in logic and physical libraries (LIBCHK-213)任务2、为层次化的.ddc流程创建脚本三个模块已经通过DC-T综合并保存为.ddc文件布图规划中包括这三种设计的抽象块。在本任务中将运行一个顶层脚本其中包含先前综合的模块。对于层次化的流程common_setup.tcl与经典的自顶向下流程相同dc_setup.tcl需要为层次化模块设置一些额外的变量dc_top.tcl需要这些变量来用先前综合的.ddc文件替换现有的设计块为先前综合的每个.ddc文件指定一个物理层次结构这确保DC-T不会再次综合先前已综合的.ddc文件并且它将较低层次的寄生信息传播到顶层。综合生成一个包含先前综合的.ddc文件的顶级网表。1、将当前目录切换到lab3_variations_hier\cd lab3_variations_hier2、在dc_setup.tcl中定义三个DDC分层块SDRAM_TOPRISC_CORE和PCI_TOPset DDC_HIER_DESIGNS “SDRAM_TOP RISC_CORE PCI_TOP”3、在./dc_scripts/dc_top.tcl文件中搜索DDC_HIER_DESIGNS问题 2在DDC_HIER_DESIGNS上执行了什么操作答案 2使用remove_design删除现有的设计使用read_ddc读取先前综合的设计使用set_physical_hierarchy确保以前综合的(ddc)设计不会被优化。这三个操作是必需的还应用了另外两个防止优化的命令set_boundary_optimization和set_preserve_subdesign_interfaces但它们只适用于基于线负载模型的综合。最后在综合后并保存顶层设计前删除分层模块。4、在dc_top.tcl中将当前的布图规划替换为层次化的布图规划ORCA_TOP.hier.def问题 3修改后的命令是什么答案 3extract_physical_constraints ${DESIGN_NAME}.hier.def5、检查以上的编辑。在dc_top.tcl中添加write_physical_constraints命令然后将compile_ultra更改为compile_ultra - check_only和quit将compile_ultra和compile_ultra - check_only的输出重定向到日志文件dc_shell -topo -f dc_scripts/dc_top.tcl | tee -i dc_top.log #then search the log files for Errors #Examine your physical constraint log file to see #how DC-T translates your hierarchical def to Tcl #Examine your compile_ultra -check_only log file for information on your physical constraints任务3、综合设计可选等待综合返回并不是有效地利用实验时间但如果已经完成了实验并且希望在讲座或午餐期间运行综合欢迎进行操作。1、在lab3_variations_initial或lab3_variations_hier中更改运行脚本dc.tcl或dc_top.tcl将compile_ultra - check_only和quit修改为compile_ultra。注释掉任何exit命令以便在DC-T在脚本运行完成后保持打开状态以便交互式地探索。如果想探索运行产生的布图规划则必须首先注释掉保存顶层设计前删除分层模块的命令。2、启动DC-T并运行cd lab3_variations_initial dc_shell -topo -f ./dc_scripts/dc.tcl | tee -i dc_full_run.log or cd lab3_variations_hier dc_shell -topo -f ./dc_scripts/dc_top.tcl | tee -i dc_full_run.log3、探索产生的布图规划start_gui Window-New Layout Window实验四Design CompilerTopographical Workshop Lab4https://chenzhang.blog.csdn.net/article/details/144372923原文链接Design Compiler Topographical/Graphical Workshop Lab Guidehttps://download.csdn.net/download/weixin_45791458/89987600?spm1001.2014.3001.5501感谢EETOP坛友的分享。