XPM_CDC_SINGLE(UG974)

8 篇文章 0 订阅

Parameterized Macro: Single-bit Synchronizer(参数化宏:单比特同步器)

  • MACRO_GROUP: XPM
  • MACRO_SUBGROUP: XPM_CDC
  • Families: UltraScale, UltraScale+

1、 Introduction(介绍)

        此宏将一个一位信号从源时钟域同步到目标时钟域。为了正确操作,输入数据必须由目标时钟采样两次或两次以上。您可以定义同步器中使用的寄存器级数。可选的输入寄存器可以用于在源时钟域中的输入被同步之前将其寄存。还可以启用仿真特性来生成消息,以报告宏的任何潜在滥用。

2、Port Descriptions(端口描述)

端口方向宽度时钟域敏感类型未使用时处理方式功能
dst_clk输入1NA边沿敏感激活目的时钟域的时钟信号
dest_out输出1dst_clkNA激活要被同步到目的时钟的信号,为寄存器类型
src_clk1NA边沿敏感0当SRC_INPUT_REG = 1.时,为src_in的输入时钟,SRC_INPUT_REG = 0时未使用
src_in1src_clkNA激活要被同步到dest_clk时钟域的输入信号

3、Design Entry Method(设计输入方法)
 

实例化
引用
IP和IP Intergator Catalog

4、Available Attributes(可用属性)
 

属性类型允许值默认值描述
DEST_SYNC_FF十进制2—104用于同步目标时钟域中的信号的寄存器级数。
INIT_SYNC_FF十进制0,10

0-禁用同步寄存器上的行为模拟初始化值。

1-在同步寄存器上启用行为模拟初始化值。

SIM_ASSERT_CHK十进制0,10

0-禁用模拟消息报告。与潜在滥用相关的信息将不会被报告。

1-启用模拟消息报告。将报告与潜在滥用有关的信息。

SRC_INPUT_REG十进制1,01

0-不注册输入(src_in)

1-使用src_clk注册输入(src_in)一次

5、VHDL Instantiation Template(VHDL实例化模板)

除非它们已经存在,否则复制以下两个语句并将它们粘贴在实体声明之前。

Library xpm;
use xpm.vcomponents.all;
-- xpm_cdc_single: Single-bit Synchronizer
-- Xilinx Parameterized Macro, version 2023.1
xpm_cdc_single_inst : xpm_cdc_single
generic map (
 DEST_SYNC_FF => 4, -- DECIMAL; range: 2-10
 INIT_SYNC_FF => 0, -- DECIMAL; 0=disable simulation init values, 1=enable simulation init values
 SIM_ASSERT_CHK => 0, -- DECIMAL; 0=disable simulation messages, 1=enable simulation messages
 SRC_INPUT_REG => 1 -- DECIMAL; 0=do not register input, 1=register input
)
port map (
 dest_out => dest_out, -- 1-bit output: src_in synchronized to the destination clock domain. This output
 -- is registered.
 dest_clk => dest_clk, -- 1-bit input: Clock signal for the destination clock domain.
 src_clk => src_clk, -- 1-bit input: optional; required when SRC_INPUT_REG = 1
 src_in => src_in -- 1-bit input: Input signal to be synchronized to dest_clk domain.
);
-- End of xpm_cdc_single_inst instantiation

6、Verilog Instantiation Template

// xpm_cdc_single: Single-bit Synchronizer
// Xilinx Parameterized Macro, version 2023.1
xpm_cdc_single #(
 .DEST_SYNC_FF(4), // DECIMAL; range: 2-10
 .INIT_SYNC_FF(0), // DECIMAL; 0=disable simulation init values, 1=enable simulation init values
 .SIM_ASSERT_CHK(0), // DECIMAL; 0=disable simulation messages, 1=enable simulation messages
 .SRC_INPUT_REG(1) // DECIMAL; 0=do not register input, 1=register input
)
xpm_cdc_single_inst (
 .dest_out(dest_out), // 1-bit output: src_in synchronized to the destination clock domain. This output is
 // registered.
 .dest_clk(dest_clk), // 1-bit input: Clock signal for the destination clock domain.
 .src_clk(src_clk), // 1-bit input: optional; required when SRC_INPUT_REG = 1
 .src_in(src_in) // 1-bit input: Input signal to be synchronized to dest_clk domain.
);
// End of xpm_cdc_single_inst instantiation



 

  • 22
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值