第八章Synplify综合_第1页
第八章Synplify综合_第2页
第八章Synplify综合_第3页
第八章Synplify综合_第4页
第八章Synplify综合_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

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

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

3、PGA,器件,将,RTL,级的设计描述转化成门级描述,Synthesis=Translation+Optimization+Mapping,对,HDL,源代码进行编译与逻辑层次上的优化,消除冗余逻辑对,编译的结果进行逻辑映射与结构层次上的优化,生成逻辑网表,特点,综合速度快,综合效果比较好,Synplify,与,Synplifypro,Synplify,简装版,后者包含了前者所有功能,综合原理和机制完全相同,三,基本概念,1,综合,2,工程文件,3,脚本,4,约束文件,5,宏库,6,属性包,综合,综合,Synthesis,简单地说就是将,HDL,代码转化为门级,网表的过程,Synplify,对

4、电路的综合包括三个步骤表,示如下,1 HDL compilation,把,HDL,的描述编译成已知的结构,元素,2 Optimization,运用一些算法进行面积优化和性能优,化,使设计在满足给定性能约束的前提下,面积尽,可能的小。这里,Synplify,进行的是基本的优化与具体,的目标器件技术无关,3 Technology mapping,将设计映射到指定厂家的特定,器件上,针对目标器件结构优化,生成作为布局布,线工具输入的网表,工程文件,工程文件,.prj,以,tcl,的格式保存以下信息设计文件约束,文件综合选项的设置情况等,Tcl,脚本,Tcl Tool Command Language

5、,是一种非常流行的工业标,准批处理描述语言常用作软件应用的控制,应用,Synplify,的,Tcl script,文件设计者可以用批处理命,令的形式执行一个综合也可以一次执行同一设计多,个综合尝试不同的器件不同的时延目标不同的约束,条件,Synplify,的,script,文件以,.tcl,保存,约束文件,约束文件采用,Tcl,以,.sdc,保存用来提供,设计者定义的时间约束、综合属性、供应商,定义的属性等,约束文件既可以通过,SCOPE,创建编辑,也可以,使用文正编辑器创建编辑。可被添加到在工,程窗口的代码菜单中,也可以被,Tcl script,文,件调用,宏库,Synplify,在它内建的

6、宏库中提供了由供应商给,出的宏模块比如一些门电路计数器寄存器,I/O,模块等你可以把这些宏模块直接例化到你的,设计中去,属性包,Synplify,为,VHDL,提供了一个属性包,在,Synplify_install_dir/lib/vhd/synattr.vhd,内容,有时间约束,如对黑匣子的时间约束,供应商,提供的一些属性,还有一些综合属性以帮助你,实现你的综合目的。使用时只需在,VHDL,源文,件的开头加入以下属性包调用语句,library synplify,use synplify.attributes.all,四、用户界面,五、工程流程,1)Create Project,2)Add I

7、nput Files,3)Create or Edit Implementation,Pick Device,Global Clock Frequency,4) Souce check,5) Set Constaint file and optimization,6)Click on the Button,7)View/Analyze Results and export files,1,创建工程使用,project wizard,1,启用工程向导,工程向导,2,指定工程名称和路径,工程名,3,添加工程文件,1,创建工程,使用工具栏快捷按钮,1,方法一、点击,File-New,方法二,方法三,

8、2,添加文件,2,源代码错误检查,包括两个层次,语法错误检查,综合错误检查,推荐在代码调,试阶段使用代码,错误检查工具,及时发现问题,综合检查,3,使用,rtl,观察编译结果,执行,run/compile only,命令,4,使用,scope,设计综合约束文件,或单击,按钮,SCOPE,窗口,1)Clock,定义一个信号作为时钟,Enable,标志约束是否生效,Clock,说明时钟信号名,Value,说明时钟的数值单位为,Mhz,或,ns,Units,说明,Value,一栏的单位,Mhz,或,ns,Duty cycle,说明时钟的占空比单位是,ns,或,Units,说明时钟的占空比的单位,ns

9、,或,Improve,希望改善由这个时钟控制的寄存器的路径延迟的数量,这个数值可以根据,Synplify,的时间报告中关于相关寄存器的路,径延迟的负裕量给出这是一个高级用户选项,Route,希望改善由这个时钟控制的寄存器的路径延迟的数量,与,Improve,有所不同的是这一栏的数值应填入布局布线工具的,时间报告与,Synplify,的时间报告相差的数值这也是高级用户,选项,Improve,和,Route,可以同时使用,Units,说明,Improve,和,Route,选项的单位只能是,ns,Comments,允许你加入一些注释,2) Clock to Clock,说明不同时钟间沿到沿的延迟,可

10、以用来定义不同时钟,控制的触发器之间的最大允许延迟说明一条时钟间的,False Path,或是描述一个不对称占空情况的时钟,Clock1,说明第一个时钟的名字,Edge1,说明是第一个时钟的上升或下降沿,Clock2,说明第二个时钟的名字,Edge2,说明是第二个时钟的上升或下降沿,Value,说明两个沿之间的延迟值或,false false,选项指定,两个沿之间的路径将被被忽略,3 ) Input/Output,建立,FPGA,的,I/O,端口与外部环境界面的模型,缺省的,FPGA,外部延迟为,0,Port,说明端口名,Type,说明端口类型,Input,或,Output,Value Imp

11、rove Route,等与前面的相同或类似,4) Registers,这个约束的目的是按照给定的时间缩短进入一个寄存器,或由其输出的路径延迟,Type,说明是输入路径还是输出路径,Object,说明指定寄存器的名字,其他如,Improve Route Units,等与前相同或类似,5 Multicycle Paths,说明通过寄存器的多时钟周期路径通过这项约束你可,以为输入或由一个寄存器输出的或是通过一条连线,net,的所有路径添加额外的时钟周期以放宽时间约束,Type,说明路径是输入或输出指定的端口或寄存器或连,线,Port/Register/Net,说明指定路径时依据的端口或寄存器,名,V

12、alue,说明为该路径提供的全部时钟周期的总数必须,是整数,Units,说明,Value,的单位只能是个周期,其他与前相同或类似,6. False Path,定义在时间分析或优化忽略的路径其中,Port/Register/Net Type,等与前相同或类似,8. Attribute,在这里你可以说明设计属性其中,Object,栏和,Attribute,栏,的下拉式菜单是同步的如果你在,Object,栏的下拉式,菜单里选定一个对象则,Attribute,栏的下拉式菜单中,只显示可以施加于该对象的属性反之亦然,Object Filter,说明属性施加对象的类型你可以用这一栏,筛选和选择对象,Obj

13、ect,说明施加属性的对象名,Attribute,说明施加的属性,Value,说明所施加属性的值,Val Type,说明属性值的正确类型,Description,包含关于该属性的一个简短描述,其他与前相同或类似,9. Other,这一栏是为了让高级用户输入新近支持的约束,文件命令这些命令优化和时间分析并不支,持的但是他们会被作为约束传递给布局布线工,具,4,设置综合优化参数,1,器件选型,可以设置最大扇出系数,缺省是,500,根据该工程所属模块是,否和片外有信号联系选中,或者不选中,Disable I/O,insert,如果选中则告诉,synplify,不要为输,入输出信号加,buf,缺省不,

14、选中,设计采用流水,2,优化参数选项,可以用,synplify,内置的,状态机浏览器观察状,态机的各种属性,在综合过程中启动有限状态机编译器,对设计中的状态机进行优化,启动流水,选中,Resource,Sharing,选项则启,动资源共享,时序优化工具,Pipelining,将较大的组合逻辑用寄存器分割成若干较小的逻辑,减少从输,入到输出的时延,自动优化乘法器,ROM,等结构,提高工作频率,Retiming,在不改变逻辑功能的前提下,自动用寄存器分割组合逻辑,在组,合电路中插入平衡时延,提高芯片工作频率,本质是寄存器在宏观上的移动,不影响整体的寄存器级数,选上,Pipelining,Retim

15、ing,的功能比,Pipelining,更强大,选定了,Retiming,就一定会自动,Retiming,和,Pipelining,3,综合约束文件选项,4,综合结果存储,必须选中此项,5,时序报告选项,6,语言参数选项,Synplify,把最后编译的,module,作为顶层设计故把你所,要的顶层设计文件用左键拖拉到源文件菜单的末尾处,或者点击,Impl Options,按钮在,verilog,属性页中设置顶,层模块的名称,5,点击,run,进行综合,6,分析综合结果,HDL Analyst,是,synplify,提供给设计者查看结果提高设计速度特,性和优化面积的强有力的层次结构可视化图形工具

16、,HDL,Analyst,包含两个原理图视窗,RTL,视窗,RTL View,和目标技术,视窗,Technology View,RTL,视窗显示的是高层的与目标技术无关的原理图是对编译结,果的可视化显示,Technology View,目标技术视窗提供的是相对低层的、特定厂家,器件实现的原理图,是对映射结果的可视化显示,它显示的,基本元是与特定厂家器件技术有关的,诸如查找表、级联和,进位链、多路器、触发器等等,在设计者把他的设计映射到一个器件后,HDL Analyst,自动生成层,次化的,RTL,级和基本门级网表用,HDL Analyst,打开你的设计,后你就可以在你的源代码与你的逻辑图之间进

17、行交叉索引,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,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论