关系UltraFAST设计方法的研究和整理

翻译 2018年04月17日 15:41:41

1.   UrtraFAST设计指南

1.1  合适的代码风格

(1)多使用Vivado自带的代码模板;

(2)尽量避免使用异步复位;

(3)在模块边界上使用寄存器而非组合逻辑;

(4)使用流水结构来降低逻辑层数;

(5)采用适当的RAM和DSP的实现方式(是否使用硬核)

(6)在逻辑综合或是逻辑优化(opt_design)后的时序报告上分析代码优化的方向。

1.2精准的时序约束

Vivado时序驱动的天性决定了其在设计实现的每一步都是以开始时读到的设计输入和约束为依据,尽量将最好的资源用在最差费路径上,从而尽最大可能完成时序收敛。这便是Baseline理论的基础,除了按顺序设置精准的时序约束,在设计实现的每一步,都要关注时序报告,并以其为依据来调整设计源代码或是应用其他必要的约束和选项来优化设计,保证每一阶段之后的时序报告都满足约束或是仅余300ps以内的时序违例,再进入下一阶段的设计实现过程。

1.3管理高善出网络

Vivado中,除了关注时序报告,尤其是布局后布线前的报告来定位关键路径上影响时序的高善出网络外,还有一个专门的命令report_high_fanout_nets,在给其加上-timing的选项后,可以在报告高扇出路径的同时报告出这条路径的 Slack,帮助用户直观了解当前路径的时序裕量。此外,这个命令在报告中还会指出高扇出网络的驱动类型,是 FF 或是 LUT 等。

找到目标后,可以使用max_fanout来限定其善出值,让工具在实现过程中复制驱动端寄存器来优化,如果高善出网络并不是由同步逻辑来驱动,则可能够需要修改代码。工具层面上的降善出方法:更强更有针对性的策略,或是允许多次物理优化phys_opt_design,“钩子”脚本等方式来进行局部降善出的物理优化等等。

注意:Vivado综合选项中的全局善出要谨慎使用,不能将其设置的锅底以免综合出的网表过于庞大,带来资源上的浪费,并导致局部资源拥塞。

1.4层次化设计结构

Vivado中的IP设计是原生的自底向上流程,用户可以将IP生产独立的DCP再加到设计中去,也可以将某些相对固定或独立的模块综合成DCP后加入顶层设计,这么做除了加快设计迭代外,也更利于设计开始阶段的调试和问题的定位。

1.5 处理跨时钟域设计

详情见UG949,report_cdc和DRC报告中的methodology_checks来检测设计中的CDC结构问题,并作出具体的设计调整或是补全CDC约束。

1.6少而精的物理约束

    这里的物理约束更多强调的是除了I/O引脚位置这些必要项之外的约束,例如RAMB和DSP48的位置约束,还有局部的floorplan计划。(Vivado在布局上比上一代ISE更好,没有物理约束(除了IO引脚位置约束)的设计反而更好地满足时序要求)。最好只在少量关键的设计区域进行floorplan,切记过度约束,不要创建资源利用率过高的pblocks,同时避免重叠的pblocks区域。

1.7选择实现策略

    策略(Strategy)是一组工具选型和各个阶段指示(Directive)的组合,Vivado IDE中设置了几十种可供用户直接选用,但如果穷尽各种组合,整个太复杂,策略是一种可预计可重现的实现方法。可以选择几种有侧重点的策略后挑选出效果最好的那个。

1.8共享控制信号

在Xilinx芯片上,时钟置位/复位和时钟使能等信号统称为Control Set,进入同一个SLICE的Control Set必须统一,不同Control Set控制下的FFS不能被Vivado放进同一个SLICE。

为了提升SLICE的利用率,获得更高效的布局方案,提升时序性能,必须控制一个设计中Control set的总数,尽量共享控制信号,具体做法为:

1.     尽量整合频率相同的时钟和时钟使能信号;

2.     在生成IP时选择“共享逻辑功能”,可以在不同IP间尽可能的共享时钟资源;

3.     遵循Xilinx建议的复位准则:

(1)尽量少使用复位(2)必须复位时采用同步复位(3)确保使用高电平有效复位(4)避免异步复位(RAM和DSP48)模块中不支持异步复位。

1.9读懂日志和报告

    Vivado的报告功能很强大,小到检查设计中的特定时序元件和链路,大到各种预置和自定的DRC检查,保证了设计的可靠性。具体report命令和功能可以在UG835中查询。

1.10发挥Tcl作用

    用户甚至可以直接把包含有循环等功能的高级约束以 Tcl 的形式读入Vivado 中用来指引整个实现流程。《Vivado 使用误区与进阶》系列中有三篇关于 Tcl 在 Vivado 中的应用文章,详细描述了如何使用 Tcl 创建和应用约束,查找目标和定位问题;如何用 Tcl 来定制 Vivado 的设计实现流程,为图形化界面提供更多扩展支持;以及如何用 Tcl 实现 ECO 流程。 Tcl 所带来的强大的可扩展性决定了其在版本控制、设计自动化流程等方面具有图形化界面不能比拟的优势。


【UI】第四周 设计基础

-
  • 1970年01月01日 08:00

Vivado设计套件的UltraFast设计方法指南

  • 2014年09月17日 10:31
  • 7.55MB
  • 下载

Xlinx UG1046-ultrafast嵌入式设计方法指南

  • 2017年03月18日 09:33
  • 4.57MB
  • 下载

UltraFast 设计方法

  • 2016年01月19日 20:00
  • 15.76MB
  • 下载

案例研究:手机APP的UI设计流程

以下内容由Mockplus(http://www.mockplus.cn)团队翻译整理,仅供学习交流。 UI设计——不仅仅是创造漂亮的图像。 面临的挑战 ...
  • jongde1
  • jongde1
  • 2018-01-29 11:47:26
  • 91

科研课题研究方法

   1.科研课题研究方法1 n定性分析与定量分析 n定性分析:说明事物的性质及其内在规定性与规律性 n定量分析:分析事物现象之间量的关系。 n规范研究与实证研究 n规范研究:以一定的价值判断为基础,...
  • m57091003
  • m57091003
  • 2007-11-06 19:19:00
  • 10426

有关设计的黑科技

文章的题目来自于之前参加一个技术大会,听一位大咖的演讲而得来的感受。那天,当其他的大咖将设计,将架构的时候,有一个人上台给我们讲了很多故事,很多利用大数据进行的有意思的设计 从而吸引产品的用户等,突然...
  • u010176014
  • u010176014
  • 2015-12-10 23:20:37
  • 1600

工业设计CMF研究

  • 2014年12月14日 17:05
  • 36.39MB
  • 下载

基于Hadoop MapReduce模型的数据分析平台研究设计

基于Hadoop MapReduce模型的数据分析平台研究设计 前言 拖了5天终于看完了两篇论文,对相关数据分析平台搭建技术也有了进一步的了解。对自己这几天的笔记做了一个整理,既是为了...
  • tiandijun
  • tiandijun
  • 2015-05-08 09:47:00
  • 1815

UI设计规范技巧——文件整理

掌握好整理文件和上传的方法,有一份清晰的切图文档,能高效的开展开发和视觉之间的沟通。 1.正确精准的命名 开发同学在实现某个页面的过程中,必须要一张张去找我们的切图,把它们对应起来。所以一个精准的...
  • yaping1995
  • yaping1995
  • 2016-09-27 17:01:42
  • 1899
收藏助手
不良信息举报
您举报文章:关系UltraFAST设计方法的研究和整理
举报原因:
原因补充:

(最多只允许输入30个字)