第八章Synplify综合教材课件.ppt

上传人:牧羊曲112 文档编号:4095419 上传时间:2023-04-03 格式:PPT 页数:51 大小:3.61MB
返回 下载 相关 举报
第八章Synplify综合教材课件.ppt_第1页
第1页 / 共51页
第八章Synplify综合教材课件.ppt_第2页
第2页 / 共51页
第八章Synplify综合教材课件.ppt_第3页
第3页 / 共51页
第八章Synplify综合教材课件.ppt_第4页
第4页 / 共51页
第八章Synplify综合教材课件.ppt_第5页
第5页 / 共51页
点击查看更多>>
资源描述

《第八章Synplify综合教材课件.ppt》由会员分享,可在线阅读,更多相关《第八章Synplify综合教材课件.ppt(51页珍藏版)》请在三一办公上搜索。

1、Synplify教程,内容,一、什么是综合二、Synplify pro综合三、基本概念四、用户界面五、基本工程流程,什么是综合?,设计描述高层次描述:对整个系统的数学模型描述,它试图在系统设计的初始阶段,通过对系统行为描述的仿真来发现系统设计中存在的问题,此时考虑更多的是系统结构和工作过程能够达到设计规格的要求,而与具体的工艺和器件无关逻辑描述:对设计进行RTL级描述,导出逻辑表达式,并用功能仿真工具进行仿真门级描述:设计的门级实现,相当于系统的逻辑原理图物理描述:或称版图描述,ASIC设计中表现为GDSII 文件综合指不同设计描述之间的转换,IC设计中的综合,IC设计中的综合,高层次综合:将

2、系统算法层的行为描述转化为寄存器传输层的结构描述逻辑综合:将寄存器传输层的的结构描述转化为逻辑层的结构描述,以及将逻辑层的结构描述转化为电路的结构描述物理综合:将系统电路层的结构描述转化为版图层的物理描述,综合约束,综合约束设计所期望达到的性能和面积的目标,在综合实现阶段附加约束,是为了便于控制综合实现过程,使设计满足运行速度,引脚位置等方面的要求附加合理的约束达到面积,速度,性能的良好折中约束原则面积和速度是设计效果最终的评定标准,在两者冲突时,采用速度优先,二 Synplify pro综合,FPGA的综合针对具体的FPGA器件,将RTL级的设计描述转化成门级描述-Synthesis=Tra

3、nslation+Optimization+Mapping 对 HDL源代码进行编译与逻辑层次上的优化,消除冗余逻辑对编译的结果进行逻辑映射与结构层次上的优化,生成逻辑网表特点综合速度快综合效果比较好Synplify与SynplifyproSynplify简装版,后者包含了前者所有功能综合原理和机制完全相同,三、基本概念,1 综合2 工程文件3 脚本4 约束文件5 宏库6 属性包,综合,综合Synthesis,简单地说就是将HDL代码转化为门级网表的过程,Synplify 对电路的综合包括三个步骤表示如下:1 HDL compilation:把HDL的描述编译成已知的结构元素2 Optimiz

4、ation:运用一些算法进行面积优化和性能优化,使设计在满足给定性能约束的前提下,面积尽可能的小。这里Synplify进行的是基本的优化与具体的目标器件技术无关3 Technology mapping:将设计映射到指定厂家的特定器件上,针对目标器件结构优化,生成作为布局布线工具输入的网表,工程文件工程文件*.prj 以tcl 的格式保存以下信息设计文件约束文件综合选项的设置情况等Tcl 脚本Tcl Tool Command Language 是一种非常流行的工业标准批处理描述语言常用作软件应用的控制应用Synplify 的Tcl script 文件设计者可以用批处理命令的形式执行一个综合也可以

5、一次执行同一设计多个综合尝试不同的器件不同的时延目标不同的约束条件Synplify 的script 文件以*.tcl 保存,约束文件约束文件采用Tcl,以(*.sdc)保存用来提供设计者定义的时间约束、综合属性、供应商定义的属性等。约束文件既可以通过SCOPE创建编辑,也可以使用正文编辑器创建编辑。可被添加到在工程窗口的代码菜单中,也可以被Tcl script 文件调用。宏库Synplify 在它内建的宏库中提供了由供应商给出的宏模块比如一些门电路计数器寄存器I/O模块等你可以把这些宏模块直接例化到你的设计中去,属性包Synplify为VHDL提供了一个属性包,在Synplify_instal

6、l_dir/lib/vhd/synattr.vhd。内容有时间约束,如对黑匣子的时间约束,供应商提供的一些属性,还有一些综合属性以帮助你实现你的综合目的。使用时只需在VHDL源文件的开头加入以下属性包调用语句library synplify;use synplify.attributes.all;,四、用户界面,五、工程流程,1)Create Project2)Add Input Files3)Create or Edit ImplementationPick DeviceGlobal Clock Frequency4)Souce check5)Set Constaint file and o

7、ptimization6)Click on the Button7)View/Analyze Results and export files,1 创建工程使用project wizard,工程向导,1)启用工程向导,工程名,2)指定工程名称和路径,3)添加工程文件,1 创建工程-使用工具栏快捷按钮,1)方法一、点击File-New,方法二,方法三,2)添加文件,2 源代码错误检查,包括两个层次语法错误检查综合错误检查推荐在代码调试阶段使用代码错误检查工具,及时发现问题,综合检查,3 使用rtl观察编译结果执行 run/compile only命令,4 使用scope设计综合约束文件,或单击

8、按钮,SCOPE窗口,1)Clock定义一个信号作为时钟Enable 标志约束是否生效Clock 说明时钟信号名Value 说明时钟的数值单位为Mhz或nsUnits 说明Value一栏的单位Mhz或nsDuty cycle 说明时钟的占空比单位是ns或%Units 说明时钟的占空比的单位ns或%Improve 希望改善由这个时钟控制的寄存器的路径延迟的数量 这个数值可以根据Synplify的时间报告中关于相关寄存器的路径延迟的负裕量给出这是一个高级用户选项Route 希望改善由这个时钟控制的寄存器的路径延迟的数量 与Improve有所不同的是这一栏的数值应填入布局布线工具的时间报告与Synp

9、lify的时间报告相差的数值这也是高级用户选项Improve和Route可以同时使用Units 说明Improve和Route选项的单位只能是nsComments 允许你加入一些注释,2)Clock to Clock说明不同时钟间沿到沿的延迟,可以用来定义不同时钟控制的触发器之间的最大允许延迟说明一条时钟间的False Path 或是描述一个不对称占空情况的时钟Clock1 说明第一个时钟的名字Edge1 说明是第一个时钟的上升或下降沿Clock2 说明第二个时钟的名字Edge2 说明是第二个时钟的上升或下降沿Value 说明两个沿之间的延迟值或false false选项指定两个沿之间的路径将

10、被被忽略,3)Input/Output建立FPGA的I/O端口与外部环境界面的模型,缺省的FPGA外部延迟为0 Port 说明端口名Type 说明端口类型Input 或 OutputValue Improve Route等与前面的相同或类似4)Registers这个约束的目的是按照给定的时间缩短进入一个寄存器或由其输出的路径延迟Type 说明是输入路径还是输出路径Object 说明指定寄存器的名字其他如Improve Route Units等与前相同或类似,5 Multicycle Paths说明通过寄存器的多时钟周期路径通过这项约束你可以为输入或由一个寄存器输出的或是通过一条连线net 的所

11、有路径添加额外的时钟周期以放宽时间约束Type 说明路径是输入或输出指定的端口或寄存器或连线Port/Register/Net 说明指定路径时依据的端口或寄存器名Value 说明为该路径提供的全部时钟周期的总数必须是整数Units 说明Value的单位只能是个周期其他与前相同或类似6.False Path定义在时间分析或优化忽略的路径其中Port/Register/Net Type等与前相同或类似,8.Attribute在这里你可以说明设计属性其中Object栏和Attribute栏的下拉式菜单是同步的如果你在Object栏的下拉式菜单里选定一个对象则Attribute栏的下拉式菜单中只显示可

12、以施加于该对象的属性反之亦然Object Filter 说明属性施加对象的类型你可以用这一栏筛选和选择对象Object 说明施加属性的对象名Attribute 说明施加的属性Value 说明所施加属性的值Val Type 说明属性值的正确类型Description 包含关于该属性的一个简短描述其他与前相同或类似,9.Other这一栏是为了让高级用户输入新近支持的约束文件命令这些命令优化和时间分析并不支持的但是他们会被作为约束传递给布局布线工具,4 设置综合优化参数,(1)器件选型,(2)优化参数选项,Pipelining将较大的组合逻辑用寄存器分割成若干较小的逻辑,减少从输入到输出的时延自动优

13、化乘法器,ROM等结构,提高工作频率Retiming在不改变逻辑功能的前提下,自动用寄存器分割组合逻辑,在组合电路中插入平衡时延,提高芯片工作频率本质是寄存器在宏观上的移动,不影响整体的寄存器级数Retiming的功能比Pipelining更强大,选定了Retiming就一定会自动选上Pipelining,时序优化工具,Retiming和Pipelining,(3)综合约束文件选项,(4)综合结果存储,必须选中此项,(5)时序报告选项,(6)语言参数选项Synplify把最后编译的module作为顶层设计故把你所要的顶层设计文件用左键拖拉到源文件菜单的末尾处或者点击Impl Options”按

14、钮在verilog 属性页中设置顶层模块的名称,5 点击run 进行综合6 分析综合结果,HDL Analyst是synplify提供给设计者查看结果提高设计速度特性和优化面积的强有力的层次结构可视化图形工具。HDL Analyst包含两个原理图视窗RTL视窗RTL View 和目标技术视窗Technology ViewRTL视窗显示的是高层的与目标技术无关的原理图是对编译结果的可视化显示。Technology View目标技术视窗提供的是相对低层的、特定厂家器件实现的原理图,是对映射结果的可视化显示,它显示的基本元是与特定厂家器件技术有关的,诸如查找表、级联和进位链、多路器、触发器等等。在设

15、计者把他的设计映射到一个器件后HDL Analyst自动生成层次化的RTL级和基本门级网表用HDL Analyst 打开你的设计后你就可以在你的源代码与你的逻辑图之间进行交叉索引cross_probe 了你可以查看源代码中一段代码编译或映射后产生的结果是否和预期相符也可以查看图中关键路径对应的是那一段源代码以做修改,正确理解关键路径上的时间延迟显示信息如 out0(dfm7a),delay:12.9 ns,slack:-10.5ns 表示路径延迟累积到此寄存器dfm7a 对应设计中的out0 为12.9ns 到此已超出时间要求10.5ns,查看综合报表,综合报表所含的信息基本编译信息有限状态机编译信息时序约束信息总体性能概括(Performance Summary)时钟参数信息(Clock Relationships)输入输出引脚信息(Input Ports and Output Ports)较差时钟路径的起点和终点信息(Starting Points and Ending Points with Worst Slack)组合电路时序优化信息综合频率信息面积信息(资源消耗信息),

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号