Xilinx社区
首页 > Steve专栏 > Adam Taylor玩转MicroZed系列69:关于Zynq的约束简介
Steve专栏
Adam Taylor玩转MicroZed系列69:关于Zynq的约束简介
来源:  时间:2015-03-23  浏览量:18702

通过前面的学习,我们已经对Zynq系列的PL和PS部分已经有了相当多的了解。其中有关约束的部分我们曾经提到过但是没有重点关注。约束可以添加特定的信息到你的设计,并在综合工具和实现工具中可以得到实现。最简单的约束例子就是对操作时钟和引脚的约束。另外一种类型的约束可以实现设计所用逻辑所在的位置。

Image1.jpg

实现AXI DMA核的资源原来为粉红色部分

约束可以分为两部分:那些用于综合和实现部分的例如时序约束和仅在实现部分有效的例如管脚约束。

我们所使用的约束是根据SDC设计标准来进行制定的。

由于它作为Xilinx的特定约束文件,所以简称为XDC而不是SDC。

当我们声明约束时应该按照如下顺序:

• 时序约束—时序关系需要正确的约束

• 时序例外—我们首先定义了时序之间的正确关系,现在我们来定义这些约束的例外,例如多周期路径。但不能定义标准以外的时序例外。

• 实现约束—那些在布局布线时的约束.这些约束用于实现期望的结果(例如管脚约束)。

通常,一个设计包括许多约束文件,一般分为两类,一类为时序约束,另一类为实现约束。

两种约束都默认作用于综合和实现。而且综合之前也是可读的,用于综合和实现,或者只作用于实现。你可以通过选择来指定约束文件的作用范围,如下图所示。

Image2.jpg

Vivado设计流程通常是基于IP的。IP模块通常也带有相关的约束文件。由于有着用户各种各样和工具本身生成的约束文件,所以我们需要知道这些约束文件的优先级以更好的对设计进行约束。

默认情况下,用户制定的约束文件会作用于IP生成的约束文件。但是,也是可以改变那些可编写的约束文件的顺序。类似与设置综合或者实现的选项。我们可以选择约束文件的执行顺序。优先级可以选择如下:

• First: 首先执行这里的约束文件,优先级最高

• Default: 按照正常顺序执行约束文件,优先级一般

• Last: 最后执行约束文件,优先级最低

Image3.jpg

在后续的博客教程中,我们可以学到更多的如何创建和验证约束文件的内容。在下一期博客中,我们会重点关注我们第一类约束:时序约束,解释它是什么,和如何使用Vivado去创建一个时序约束。

你可以点击这里来获得更多关于MicroZed文章

原文链接:

http://forums.xilinx.com/t5/Xcell-Daily-Blog/Adam-Taylor-s-MicroZed-Chro...

© Copyright 2014 Xilinx Inc

如需转载,请注明出处

热点文章
精选视频
推荐资源

中国授权培训机构

北京 电话:(010)82757632
      (010) 62192881
深圳 电话:(0755)86186715
武汉 电话:(027)61389792
成都 电话:(028)80821007
南京 电话:(025)66022032
西安 电话:(029)82230498
邮箱:sales@e-elements.com

中国授权经销商

香港 电话:(852)22127848
北京 电话:(010)84148118
成都 电话:(028)86528262
上海 电话:(021)33678387
深圳 电话:(0755)26584925
武汉 电话:(027)87322806
邮箱:china@avent.com
深圳 电话:(0755)26743210
上海 电话:(021)51696680
北京 电话:(010)51726678
成都 电话:(028)85139576
武汉 电话:(027)87690155
邮箱:
xilinx_enquiry@comtech.com.cn

社区主办


《电子产品世界》杂志社

内容提供


    赛灵思公司

Copyright ©2000-2015 ELECTRONIC ENGINEERING & PRODUCT WORLD. All rights reserved.
京ICP备12027778号-2 北京市公安局备案:1101082052