ImageVerifierCode 换一换
格式:DOCX , 页数:14 ,大小:653.04KB ,
资源ID:6979810      下载积分:10 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/6979810.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(Xilinx XDC约束学习笔记.docx)为本站上传会员【xrp****65】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

Xilinx XDC约束学习笔记.docx

1、 时间:2015-05-17 文档: 目录 第一章 介绍 3 一、UCF向XDC的迁移 3 二、关于XDC约束 3 三、添加(Entering)XDC约束 4 第二章 约束方法论 4 一、管理(Organizing)约束文件 4 二、约束命令排序(Ordering Your Constraints) 6 三、添加约束(Entering Constraints) 10 四、创建综合约束 12 第一章 介绍 一、UCF向XDC的迁移 XDC(Xilinx Design Constraints)约束不同于UCF(User Co

2、nstraints File)约束,XDC约束是基于SDC(Synopsys Design Constraints)约束格式的。SDC已经被使用并演进(evolving)20多年了,这使得它是一种流行的、经过验证的、用于描述设计约束的方法。如果你熟悉UCF,且刚刚开始接触xdc的话,请学习“Differences Between XDC and UCF Constraints”部分(UG911)。为了正确地约束设计,必须要正确理解XDC与UCF的不同之处。通过UCF到XDC格式转换的方法实现XDC的创建,是不能代替对XDC语法以及创建XDC约束的理解的,所以需要理解XDC的原理。 二、关于X

3、DC约束 XDC约束由以下部分组成: 1、 工业标准的Synopsys Design Constraint(SDC),和 2、 Xilinx公司所有的物理约束(physical constraint); XDC约束具有如下特性: 1、 XDC约束不是简单的字符(strings),而是遵循Tcl语法规则的命令; 2、 XDC约束可以像任何Tcl命令一样被Vivado Tcl解析器解析; 3、 XDC约束像其他Tcl命令一样被顺序的读入和解析; 三、添加(Entering)XDC约束 在设计的不同节点,有三种方法添加XDC约束: 1、 将约束保存成可以加入到工程约束集(proj

4、ect constraints set)的一个或者多个文件(GUI方式); 2、 使用read_xdc命令读取约束文件(批处理方式); 3、 打开工程的时候(即将设计导入内存),在Tcl控制台中直接调用约束命令(命令行方式); 第二章 约束方法论 这一章将讨论推荐地添加约束的流程(Constraints Entry Flow)。 设计约束定义了编译流程(the Compilation Flow)中必须满足的设计需求,以使设计上板测试时功能能够正确。在编译流程中,每个步骤使用不同的约束,例如物理约束会在实现(Implementation)步骤中使用,实现步骤包括Placer(布局

5、)和Router(布线)。 因为Vivado IDE(Vivado Integrated Design Environment)综合(Synthesis)与实现(Implementation)算法是时序驱动的(Timing-driven),所以需要创建适宜的(proper)时序约束。过紧约束(Over-constraining)与过松约束(Under-constraining)会使设计的时序逼近变得困难。所以,设计者必须使用切合设计应用需求的约束。 一、管理(Organizing)约束文件 Vivado IDE允许使用一个或者多个约束文件。对设计项目来说,在整个编译过程中仅使用一个约束

6、文件似乎是方便的,但是随着设计复杂度的提升,会越来越难以掌控约束。Xilinx建议将时序约束(timing constraints)与物理约束(physical constraint)分开保存为独立的文件。 1、 工程流程(Project Flow) 在创建新工程的过程中,可以将约束文件XDC添加文件到约束集(Constraints Set),建好工程后添加也可。 Figure 2-1,显示一个工程中添加两个文件: 1) 第一个约束集包含2个XDC文件; 2) 第二个约束集包含了一个带有所有约束的文件; Figure 2-1 Single or Multi XDC 2

7、 Non-Project Flows 在no-project流程中,执行编译命令之前读取每个约束文件也可以取得Project Flow的相同效果。 Example Script read_verilog [glob src/*.v] read_xdc wave_gen_timing.xdc read_xdc wave_gen_pins.xdc synth_design –top wave_gen opt_design place_design route_design 3、 约束文件的综合与实现属性 默认情况下,添加到工程的约束文件带有综合和实现两种属性。通过

8、如下方法改变约束文件的属性: 1) 在Source window中选择约束文件; 2) 勾选实现属性,不勾选综合属性; 3) 点击应用; Figure 2-2: Source File Properties Window 等效的Tcl命令是: set_property used_in_synthesis false [get_files wave_gen_pins.xdc] set_property used_in_implementation true [get_files wave_gen_pins.xdc] 二、约束命令排序(Ordering Your Constra

9、ints) 因为XDC约束是按顺寻应用的,且根据之前的顺序规则进行优化,所以要仔细检查约束的顺序。推荐的约束顺序如下,无论使用一个还是多个约束文件,都应该按照下面的顺序安排约束。 1、 推荐的约束命令顺序 ## Timing Assertions Section # Primary clocks # Virtual clocks # Generated clocks # Clock Groups # Input and output delay constraints ## Timing Exceptions Section # False Paths # Max De

10、lay / Min Delay # Multicycle Paths # Case Analysis # Disable Timing ## Physical Constraints Section # located anywhere in the file, preferably before or after the timing constraints # or stored in a separate XDC file 当使用多个约束文件时,彼此的约束定义最好不要相关,如果相关的话,就要合理安排XDC文件的顺序。约束文件是按文件的顺序读入的。 2、 新编辑的约束命令

11、的顺序 Vivado IDE约束管理器(manager)将被重新编辑的约束命令保存到它位于XDC文件的原始位置。任何新添加的约束文件将被保存到带有target属性的约束文件结尾处。在大多数情况下,当约束集带有多个约束文件时,带有target属性的约束文件通常不是最后(last)一个文件,即当打开工程时该约束文件不是最后导入的。因此,保存在硬盘中的约束可能与之前内存中的约束不通(Vivado软件打开工程时,会将约束导入内存。此时添加新约束时,该新约束被写入内存中,且是位于最后顺序的。而将约束保存到文件后,会将该约束保存到带有target属性的文件中,当下次打开工程时,约束的顺序就与之前不同了

12、)。 3、 约束文件的顺序 在没有任何IP的工程中,所有的约束文件都位于一个约束集(Constraints Set)之中。默认情况下,Vivado IDE所显示的XDC文件的顺序,就定义了工具将综合设计导入内存时读取约束文件的顺序。约束集中约束列表的最顶端约束被最先读到内存,最下边的约束被最后读入内存。该约束的顺序可以通过设置改变。 例如,下图中约束文件顺序的改变。 Changing XDC File Order in the Vivado IDE Example 等效的Tcl命令是: reorder_files -fileset constrs_1 -before [ge

13、t_files \(“\”不是Tcl命令的符号,仅表示衔接的意思,实际使用时不需要添加在Tcl命令中。) wave_gen_timing.xdc] [get_files wave_gen_pins.xdc] 许多IP核也带有一个或多个XDC文件。当工程中例化了带有XDC文件的IP核时,这些XDC文件也将在编译的过程被用到。 XDC files in the IP Sources 默认情况下,设计者的XDC文件会先于IP的约束文件被读入到内存。对于一些定义了Primary Clock的IP来说,有些特别(Execption)之处,例如Clocking Wizard。这种情况下,

14、IP XDC文件默认会被最先读入到内存中。可以通过PROCESSING_ORDER属性来控制约束文件的顺序。 l EARLY:文件会被最先读入; l NORMAL:(Default); l LATE:文件会被最后读入; 带有上述相同属性的约束文件将由Vivado IDE软件中的先后顺序决定读入的顺序。先创建的带有XDC的IP,与后创建的带有相同属性XDC的IP,先创建IP的XDC将优先读入,且不可更改顺序。 l User Constraints marked as EARLY; l IP Constraints marked as EARLY; l User Constrai

15、nts marked as NORMAL; l IP Constraints marked as NORMAL; l IP Constraints marked as LATE; l User Constraints marked as LATE; Setting the XDC File PROCESSING_ORDER Example 4、 更改约束文件的顺序 1. Select the XDC file you want to move. 2. Drag and drop the XDC file to the desired place in the list. 三

16、添加约束(Entering Constraints) Vivado IDE提供了几种方法来添加约束文件,如果没有通过文本编辑器直接编写的话,那么必须要打开一个设计数据库(即一个project)来访问constraints 窗口。 1、 将内存里的约束进行保存 在编辑约束的时候,需要打开一个设计来验证约束的正确性。当使用Vivado IDE软件GUI方式来编辑约束的时候(除了Timing Constraint Editor之外),会在TCL控制台中产生等效的XDC命令,目的是为了将约束应用到内存中。 在进行综合和实现之前,需要将内存中的约束保存到XDC文件。手动保存约束: 1、

17、click Save,或者 2、 slecet File 〉Save Constraint 2、 添加约束方法(Flow)的选择 1) User Interface Option(UI) 这种方法是指Vivado IDE Editors,例如Device、Physical、Timing或者其他方法,如Tcl Console。 在Vivado IDE管理约束的时候,不能同时编辑XDC文件。当Vivado IDE 保存内存中的内容时: A. 被修改的约束会代替原约束文件中的约束; B. 新产生的约束会被附加到target文件中; C. XDC文件中的所有手动修改内容会被覆盖;

18、a) PIN Assignment 1. Select the I/O Planning pre-configured layout. 2. Open the windows shown in the following table. b) Clock Resources Assignment 1. Select the Clock Planning pre-configured layout. 2. Open the windows shown in the following table. c) Floorplanning 1. Select the Floorplannin

19、g pre-configured layout. 2. Open the windows shown in the following table 2) Hand Edit Option 手动编辑的时候,可能需要在Tcl控制台中验证约束的语法,当关闭或者重新导入设计时,必须忽略内存中的修改。 当保存约束发生冲突时,可以选择: A. 忽略内存中的改变,或者 B. 另存新文件,或者 C. 覆盖XDC文件 Figure 2-4 :Constraints Editing Flow 3、 Timing Constraints 时序约束窗口只有在综合与实现之后才会有效。 M

20、ultiple Methods for Opening the Timing Constraints Window 约束编辑器显示内存中的时序约束,该约束要么: 1. 与约束文件中的约束相同顺序,要么 2. 与Tcl平台输入的约束命令相同顺序; 约束编辑器可以创建多种约束,但是仅仅是把约束应用到内存中。所以,需要将约束保存后,才可以记录到XDC文件中。 四、创建综合约束 1、 综合约束有三种: • RTL Attributes • Timing Constraints • Physical and Configuration Constraints RTL Attribut

21、es: 该约束必须写在RTL代码中(查看Ug901)。被应用在XDC中的RTL属性约束仅有DONT_TOUCH。 set_property DONT_TOUCH true [get_cells fsm_reg] Timing Constraints: • create_clock • create_generated_clock • set_input_delay • set_output_delay • set_clock_groups • set_false_path • set_max_delay • set_multicycle_path Physical an

22、d Configuration Constraints: 综合过程忽略该约束。 2、 RTL-Based XDC迭代 推荐:在设计第一个版本的约束文件时,可以使用简单的约束来描述顶层设计(high-level design)的需求。 在设计的该阶段,线网延时的模型仍然是不精确的。该阶段添加约束的主要目的,是在布局布线开始之前获得满足初步时序要求或者带有少量Timing-failled的网表。多数情况下,获得时序满足可能需要进行多次XDC和RTL的迭代。下图是XDC迭代的过程示意图。 编写综合约束时,下列实体是可以安全使用的: l 顶层端口(Top Level ports);

23、 l 手动例化的原语(Primitives); 在复杂设计的创建过程中,一些RTL名字丢失或者被修改了。例如: l Single-Bit寄存器的名字; l Multi-Bit寄存器的名字; l 被吸收的(absorbed)寄存器和线网(Nets); l 层级(Hierarchical)名字; a) Single-Bit寄存器的名字 默认情况下,会在原来名字上添加_reg后缀。 例如: reg wbDataForInputReg;//Vreilog Exeample wbDataForInputReg//生成的名字。 b) Multi-Bit寄存器

24、的名字 reg [13:0] validForEgressFifo;//Verilog Example validForEgressFifo_reg//生成的名字。 可以约束单比特或者全部寄存器: l validForEgressFifo_reg[0] l validForEgressFifo_reg[*] c) 被吸收的(absorbed)寄存器和线网(Nets) 如果某些寄存器或者Net因为某些原因而在网表中找不见的话,可以使用其他变量代替。 d) 层级(Hierarchical)名字 如果不强制Vivado软件保留设计的层级,那么设计文件的一些层级将会被打平(Flattened)。所以Xilinx推荐使用不带有-hierarchical的get_*命令。 % get_cells inst_A/inst_B/*_reg % get_cells inst_*/inst_B/control_reg

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服