前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Vivado模块化综合技术的应用场景

Vivado模块化综合技术的应用场景

作者头像
Lauren的FPGA
发布2019-10-31 00:39:14
7790
发布2019-10-31 00:39:14
举报
文章被收录于专栏:Lauren的FPGA

模块化综合技术的最大优势在于实现了Vivado在模块层面对设计的综合进行相应地优化处理,使得综合的设置更能匹配设计的需求,从而提高综合的QoR。这里我们将介绍一下模块化综合技术的应用场景。

应用场景1:对不同模块设置不同的综合选项

如下图所示,对模块inst_0,为阻止其LUT Combining,将LUT_COMBINING设置为0,同时允许Retiming,故将RETIMING设置为1。这样该模块下的子模块inst_02将继承这两个值。如果对模块inst_01,允许其LUT Combining,可将LUT_COMBINING重新设定为1。类似地,对同一模块下的不同子模块可设定不同的CONTROL_SET_THRESHOLD值。由此可见,模块化综合可灵活地为不同模块设置期望的综合选项。

应用场景2:对不同模块设置不同的综合策略

Vivado提供了不同的综合策略,如下图所示。这些综合策略是针对整个工程的。以往应用这些策略的方式是创建不同的Design Runs,每个Design Run选取不同的策略,再对比不同策略下的资源和性能。

事实上综合策略的差异是由于综合选项的不同设置而导致的。这些综合选项是全局的,显然,未必适合于所有模块。一个好的方式是对不同的模块设置不同的综合策略,避免罗列出策略之间的不同,再逐个修正。例如,uart_rx_i0需要面积优化,uart_tx_i0需要性能优化,resp_gen_i0需要布线优化,则可分别采用不同的综合策略,形成如下的约束。

目前,可应用于模块的综合策略包括:

DEFAULT

AREA_OPTIMIZED

ALTERNATE_ROUTABILITY

PERFORMANCE_OPTIMIZED

下图显示了使用模块化综合对时序的影响。其中synth_5对应上图显示的对不同模块采用不同的综合策略。

结论

模块化综合技术允许对不同模块设置不同的综合选项,实现细粒度化管理

模块化综合技术允许对不同模块设置不同的综合策略,尽管本质上仍是综合选项的设置,但避免了逐个修正不同的综合选项

上期内容:

Vivado模块化综合技术概述

下期内容:

Vivado OOC综合流程 (2月26日推送)

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-02-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Lauren的FPGA 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档