之前有分析过Vivado中不弹出OOC综合方式窗口的解决方式,传送门《【每周一问】Vivado综合时突然OCC模式弹不出来了》,里面简单介绍了和Global方式的区别,但是没有更加深入,今天在更深入的介绍[OOC综合方式]。
本质上,OOC(Out Of Context)综合方式是一种自底向上(Bottomup)的综合方法,可以应用于IP、IPI(IP Integrator)的Block Design及用户逻辑中。这里着重介绍如何对用户逻辑使用OOC综合方式。
在OOC综合方式下,模块可以有自己的约束文件,同时会单独生成该模块对应的DCP文件,且在综合阶段不会插入IBUF或OBUF。
1. 方法1
❶ 选中模块,单击鼠标右键,在弹出的快捷菜单中选择Set as Out-of-Context for Synthesis,如图所示。
❷ 一旦模块被设定为OOC综合方式,就会弹出如图所示的对话框。
❸ 在Sources窗口中的相应模块前会有一个方框标记,以显示该模块已经应用
OOC综合方式,如图所示。
❹ 此外,在Design Run窗口中会显示该模块的综合进程,如图所示。
❺ 对于已经应用OOC综合方式的模块,也可以取消其应用OOC综合方式,如图所示。
2. 方法2
在综合设置中添加-mode out_of_context,如图1.83所示。该方法适用于将顶层设置为OOC综合方式,以便进行时序评估。因为在OOC综合方式下不会插入IBUF或OBUF,所以可避免因引脚不够用而无法布线。
在使用OOC综合方式时的注意事项:①如果在某模块下包含IP,且该P采用OOC综合方式,那么该模块将不能使用OOC综合方式,除非将该IP置为Global综合方式;②如果在某模块内有利用parameter(Verilog版)或generic(VHDL版)定义的参数,那么该模块也不能采用OOC综合方式。
使用OOC综合方式的好处:节省编译时间,这是因为OOC综合方式只运行一次,只要代码没有改动,已经生成DCP文件的模块就不会再执行。同时,对关键模块采用OOC综合方式,还可能会有改善时序、加速时序收敛的效果。
结论:
① OOC综合方式可以单独生成相应的DCP文件,从而节省编译时间。
② 不是所有的模块都可以使用OOC综合方式。
文章节选自《Vivado入门与提高》
版权归原作者所有
看完本文有收获?请转发分享给更多人
NOW现在行动!
推荐阅读
【Vivado那些事】如何查找官网例程及如何使用官网例程【Vivado使用误区与进阶】总结篇【Vivado那些事】Vivado下头文件使用注意事项【Vivado那些事】Vivado中常用的快捷键(一)F4键【Vivado那些事】Vivado中常用的快捷键(二)其他常用快捷键
HDL Designer Series(HDS)介绍
SystemVerilog数字系统设计_夏宇闻 PDF
Verilog 里面,always,assign和always@(*)区别
FPGA上如何求32个输入的最大值和次大值:分治一文读懂TCP/IP!《RISC-V on T-Core》学习笔记新年愿望是什么?先送大家一波开发软件谈谈FPGA(入门)学习的两种方式ZYNQ-迷恋ZYNQ-FPGA开发板资源分享
零基础入门FPGA,如何学习?
黑金全部开发板资料(FPGA+ZYNQ)分享
点击上方字体即可跳转阅读哟
点个在看 你最 好看