首页 > 技术 > 内容

xilinx Vivado工具使用技巧

时间:2026-01-27  作者:Diven  阅读:0

综合属性

在Vivado Design Suite中,Vivado综合能够合成多种类型的属性。在大多数情况下,这些属性具有相同的语法和相同的行为。

•如果Vivado综合支持该属性,将使用该属性,并创建反映已使用属性的逻辑。

•如果工具无法识别指定的属性,则Vivado综合会将属性及其值传递给生成的网表。

1.ASYNC_REG

ASYNC_REG是影响Vivado工具流中许多进程的属性。此属性的目的是通知工具寄存器能够在D输入引脚中接收相对于源时钟的异步数据,或者该寄存器是同步链中的同步寄存器。

当遇到此属性时,Vivado综合会将其视为DONT_TOUCH属性,并在网表中向前推送ASYNC_REG属性。此过程可确保具有ASYNC_REG属性的对象未进行优化,并且流程中稍后的工具会接收属性以正确处理。

您可以将此属性放在任何寄存器上; 值为FALSE(默认值)和TRUE。可以在RTL或XDC中设置此属性。

ASYNC_REG Verilog Example:

(*ASYNC_REG = “TRUE” *) reg [2:0] sync_regs;

2.CLOCK_BUFFER_TYPE

在输入时钟上应用CLOCK_BUFFER_TYPE以描述要使用的时钟缓冲器类型。

默认情况下,Vivado综合使用BUFG作为时钟缓冲器。支持的值是“BUFG”,“BUFH”,“BUFIO”,“BUFMR”,“BUFR”或“无”。 CLOCK_BUFFER_TYPE属性可以放在任何顶级时钟端口上。可以在RTL和XDC中设置。

CLOCK_BUFFER_TYPE Verilog Example

(* clock_buffer_type = “none”*) input clk1;

CLOCK_BUFFER_TYPE XDC Example

set_property CLOCK_BUFFER_TYPEBUFG [get_ports clk]

3. FSM_ENCODING

FSM_ENCODING控制状态机上的编码。通常,Vivado工具会根据最适合大多数设计的启发式方法为状态机选择编码协议。某些设计类型使用特定的编码协议可以更好地工作

FSM_ENCODING可以放在状态机寄存器上。其合法价值是“one_hot”,“sequential”,“johnson”,“grey”,“auto”和“none”。 “auto”值是默认值,允许工具确定最佳编码。可以在RTL或XDC中设置此属性。

FSM_ENCODING Example (Verilog)

(* fsm_encoding = “one_hot” *)reg [7:0] my_state;

4. KEEP

使用KEEP属性可防止信号优化或被吸收到逻辑块中的优化。此属性指示综合工具保持其所处的信号,并将该信号放入网表中。

例如,如果信号是2位AND门的输出,并且驱动另一个AND门,则KEEP属性可用于防止该信号合并到包含两个AND门的较大LUT中。

KEEP也常用于时序约束。如果对通常会优化的信号存在时序约束,KEEP会阻止该操作,并允许使用正确的时序规则

KEEP Example (Verilog)

(* keep = “true” *) wire sig1;

assign sig1 = in1 & in2;

assign out1 = sig1 & in2;

5 RAM_STYLE

RAM_STYLE指示Vivado综合工具如何推断内存。可接受的值是:

•block:指示工具推断RAMB类型组件。

•distributed:指示工具推断LUT RAM。

•寄存器:指示工具推断寄存器而不是RAM。

•ultra:指示工具使用UltraScale +™URAM原语。

默认情况下,该工具根据启发式选择要推断的RAM,以便为大多数设计提供最佳结果。将此属性放在为RAM声明的数组或层次结构级别上。

•如果设置了信号,该属性将影响该特定信号。

•如果设置在层次结构级别上,则会影响该层次结构级别中的所有RAM。

层次结构的子级别不受影响。

这可以在RTL或XDC中设置。

RAM_STYLE Example (Verilog)

(* ram_style = “distributed” *)reg [data_size-1:0] myram [2**addr_size-1:0];

6 ROM_STYLE

ROM_STYLE指示综合工具如何推断ROM存储器。可接受的值是:

•block:指示工具推断RAMB类型组件

•distributed:指示工具推断LUT ROM。默认情况下,该工具根据启发式选择要推断的ROM,以便为大多数设计提供最佳结果。

这可以在RTL和XDC中设置。

ROM_STYLE Example (Verilog)

(* rom_style = “distributed” *)reg [data_size-1:0] myrom [2**addr_size-1:0];

猜您喜欢


电阻作为基础的被动元件,是调节电流、分压的关键配件。而在众多电阻类型中,SSM(日本)金属膜电阻凭借其优异的性能,在精密仪器、通信设备中得到了应用。本文将深入探...
2017-12-20 12:56:20
固态电容和电解电容是电子设备中常见的元件。都有滤波的功能,但效果却有很大不同。本文将探讨固态电容的优势,特别是在滤波效果方面。以下是几个关键点。稳定性更好固态电...
2025-03-24 05:01:07
贴片电阻上的4991标识并非直接代表阻值,而是采用EIA-96标准的阻值代码。 4991代表499 * 10^1 Ω,也就是4990Ω,通常简写为4.99kΩ。...
2024-11-29 10:26:11
压敏电阻是一种应用于电路保护的元件,尤其在防止过电压和浪涌电流方面发挥着重要作用。在选择和应用压敏电阻时,型号中所包含的数字信息对用户理解其特性非常重要。本文将...
2025-03-18 21:01:39
一、逻辑设计(1)组合逻辑设计下面是一些用Verilog进行组合逻辑设计时的一些注意事项:①组合逻辑可以得到两种常用的RTL 级描述方式。第一种是alwa...
2022-07-11 10:54:00
选功率电感时,很多人困惑。电感在电路中重要配件,选型需谨慎。本文将为您介绍选型要点。确定电感值首先要明确电感值。电感值大小影响性能。根据电路需求,选择合适电感。...
2025-04-12 22:30:05
电路保护元件在保障电子产品安全方面是越来越重要的配件。共禾6自恢复保险丝作为高效的电路保护元件,因其优异的自恢复性能和稳定的保护效果,受到众多电子制造商的青睐。...
2020-07-01 03:43:30
Panasonic(松下)作为全球知名的电子产品制造商,其产品线,从家电到工业设备无所不包。其中,贴片排阻作为电子电路中的基础元件,Panasonic在这一领域...
2017-10-08 11:42:07
隔热手套是重要的厨房和烹饪工具,其主要作用是保护双手免受高温伤害。在烹饪过程中,我们常常需要接触热锅、烤盘或蒸汽,而隔热手套能有效隔绝热量,避免烫伤。隔热手套通...
2023-02-17 00:00:00
现代电子产品中,封装技术的选择对于性能、散热和空间利用率等方面至关重要。TSOP(ThinSmallOutlinePackage)是一种广泛应用于存储器和其他集...
2025-02-24 16:18:36