0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

开发板KC705设计中涉及到两个时钟域问题

FPGA之家 来源:XILINX开发者社区 作者:赛灵思开发者 2021-08-26 10:48 次阅读

Q1

背景:

软件 vivado2018.2

开发板 KC705

设计中涉及到两个时钟域(外部提供的238MHz时钟和200MHz板上时钟)

问题:

布局布线后的时序分析结果显示:intra-clock path的setup时序违例,查看具体路径的时序信息,发现数据路径上有一个net延时高达8.6ns导致了时序违例。然后在device中看到这个net布线绕路了,看起来是拥塞所致,可是查看拥塞报告又显示拥塞度很小。

而且第一幅图中的几个setup违例,几乎都包含了这个net,所以是集体违例了。

下图是这条net所在的电路,做好标记后,在device中查看具体布线情况。

下图是device视图,可见FDCE和LUT3挨得很近,但是他们之间的走线却绕了很远!上网查过,说可能是拥塞的原因。

于是查看了布局布线后的拥塞报告以及复杂度报告。。

看起来拥塞程度和复杂度程序都不算大,为什么net绕线很严重呢?

为了解决这个问题,我做了两个尝试:

1)将synthesis中的“no_lc*”选项勾选,取消LUT合并。

2)将implementation中的策略设置为congestion_spreadlogic_high。

但是这样做之后setup时序依旧违例。

所以具体是什么问题导致的呢?

时序分析结果中,还有好几项与上述信号同module的跨时钟域的setup违例,有没可能是因为没有将这些跨时钟域路径set false path的原因呢?

A1

你提到的时序有问题的路径本身没有问题,主要原因是你没有对异步跨时钟路径作有效的隔离。一旦去掉这些异步跨时钟路径的分析,之前提到的路径就会正常布线了. (在逻辑上需要保障这些路径上数据传递的正确性:握手信号或者是异步FIFO)

最后一条路径是PLL时钟直接连接寄存器D端导致的,全局时钟信号一般只连Cell 的C/CLK 端. 能否通过代码修改掉这种结构?

主时钟建立的对象要尽量是端口,而不是pll的输入 pin脚

Ex: 时钟 clk_wiz_119MHz_inst/inst/clk_in1 (对象应该是get_ports clk_ab_p )

Q2

是不是因为没有隔离时钟,所以系统占用了大量的布线资源去尽量满足这些跨时钟的setup和hold,导致有些net只能绕路了呢?

A2

是的,Vivado是timing driven的工具,意味着会尽力对slack最差的路径做修复,浪费了大量资源以及runtime. 其他net或者绕路,或者已经提前放弃,不作努力了.

Q3

如果隔离了时钟,那么布局布线工具对待跨时钟域的信号是不是就直接布线(比如走最近的路线),完全不去考虑setup和hold这些是否满足条件了?

A3

是的,如果加了忽略时钟的约束,那么布局布线工具对待跨时钟域的信号就直接布线,完全不去考虑setup和hold要求,因为根本没有这些要求.

同时请注意之前提到的一点:在逻辑上需要保障这些异步时钟域路径上数据传递的正确性:考虑握手信号或者是异步FIFO

Q4

上面提到的“主时钟建立的对象尽量是pin脚,而不是pll的端口”,这句话是什么意思?是在写xdc文件的时候,尽量用get port做时钟约束的意思?

是不是意味着上面的set_clcok_group语句改成这样更合适:

set_clock_groups -asynchronous -name my_ASYNC -group {get_ports adc_clk_p} -group {get_clocks mmcm_clkout1}

A4

这里是指create_clock 约束中的对象是FPGA的PORT,而不是用Cell(如PLL的Pin).

Ex:正确的写法:

create_clock -name clk -period 10.000 [get_ports adc_clk_p]

推荐的写法:

create_clock -name clk -period 10.000 [get_pins clk_wiz_119MHz_inst/inst/plle2_adv_inst/CLKIN1]

在set_clock_groups中这么用get_ports adc_clk_p是不对的, 可以写成 [get_clocks -of [get_ports adc_clk_p]]

责任编辑:haq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 时钟
    +关注

    关注

    11

    文章

    1735

    浏览量

    131562
  • 开发板
    +关注

    关注

    25

    文章

    5075

    浏览量

    97663

原文标题:本周一问 | 数据路径的net延时过大导致setup时序违例

文章出处:【微信号:zhuyandz,微信公众号:FPGA之家】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    哪里可以找到KC705开发板的REV编号?

    时,在配置的第一页(PCIE-BASICS),它显示了用于哪个版本KC705?它有三选项:KC705 REVA,KC705 REVB和
    发表于 09-23 13:26

    如何实现kc705以太网10千兆位设计?

    上没有此频率的输入。我主要看两个选择: - 通过FPGA内的MMCM生成这个时钟(我读过它不是好主意) - 使用电路上的SI5324抖
    发表于 09-27 09:51

    [xilink KC705] 通过FMC转USB3.0 识别KC705的问题

    port并没有设置成类似U盘那种数据传输或者存储模式。另一方向是xilinx官网提供的USB2.0的demo应用固件不适配USB3.0。希望能获得一些解答或者提示。PS: 刚接触FPGA开发板,希望涉及到的相关概念通俗一点。
    发表于 01-17 16:47

    KC705评估错误的解决办法?

    嗨,我在KC705上发现了一错误。它产生200MHz差分时钟,由SIT9102用于DDR3,电压为2.5V。但是,HP BANK的VCCO仅为1.5V。它是否匹配?但在VC709主
    发表于 07-25 11:00

    AD7988-1 FMC-SDP转接器和评估/Xilinx KC705参考设计

    AD7988-1 FMC-SDP转接器和评估/Xilinx KC705参考设计
    发表于 04-21 15:39 7次下载
    AD7988-1 FMC-SDP转接器和评估<b class='flag-5'>板</b>/Xilinx <b class='flag-5'>KC705</b>参考设计

    AD7980 FMC-SDP转接器和评估/Xilinx KC705参考设计

    AD7980 FMC-SDP转接器和评估/Xilinx KC705参考设计
    发表于 04-26 14:00 9次下载
    AD7980 FMC-SDP转接器和评估<b class='flag-5'>板</b>/Xilinx <b class='flag-5'>KC705</b>参考设计

    CN0204 FMC-SDP转接器和评估/Xilinx KC705参考设计

    CN0204 FMC-SDP转接器和评估/Xilinx KC705参考设计
    发表于 05-16 09:56 11次下载
    CN0204 FMC-SDP转接器和评估<b class='flag-5'>板</b>/Xilinx <b class='flag-5'>KC705</b>参考设计

    AD5449 FMC-SDP转接器和评估/Xilinx KC705参考设计

    AD5449 FMC-SDP转接器和评估/Xilinx KC705参考设计
    发表于 05-19 14:14 6次下载
    AD5449 FMC-SDP转接器和评估<b class='flag-5'>板</b>/Xilinx <b class='flag-5'>KC705</b>参考设计

    AD5780 FMC-SDP转接器和评估/Xilinx KC705参考设计

    AD5780 FMC-SDP转接器和评估/Xilinx KC705参考设计
    发表于 05-19 18:21 8次下载
    AD5780 FMC-SDP转接器和评估<b class='flag-5'>板</b>/Xilinx <b class='flag-5'>KC705</b>参考设计

    AD9671评估、ADC-FMC转接器和Xilinx KC705参考设计

    AD9671评估、ADC-FMC转接器和Xilinx KC705参考设计
    发表于 05-19 18:29 2次下载
    AD9671评估<b class='flag-5'>板</b>、ADC-FMC转接器和Xilinx <b class='flag-5'>KC705</b>参考设计

    AD9833 FMC-SDP转接器和评估/Xilinx KC705参考设计

    AD9833 FMC-SDP转接器和评估/Xilinx KC705参考设计
    发表于 05-20 14:05 11次下载
    AD9833 FMC-SDP转接器和评估<b class='flag-5'>板</b>/Xilinx <b class='flag-5'>KC705</b>参考设计

    AD7658-1 FMC-SDP转接器和评估/Xilinx KC705参考设计

    AD7658-1 FMC-SDP转接器和评估/Xilinx KC705参考设计
    发表于 05-22 09:57 7次下载
    AD7658-1 FMC-SDP转接器和评估<b class='flag-5'>板</b>/Xilinx <b class='flag-5'>KC705</b>参考设计

    AD7656-1 FMC-SDP转接器和评估/Xilinx KC705参考设计

    AD7656-1 FMC-SDP转接器和评估/Xilinx KC705参考设计
    发表于 05-22 12:33 12次下载
    AD7656-1 FMC-SDP转接器和评估<b class='flag-5'>板</b>/Xilinx <b class='flag-5'>KC705</b>参考设计

    KC705开发板英文使用手册

    KC705开发板英文使用手册
    发表于 11-01 10:19 5次下载

    KC705开发板原理图

    KC705开发板原理图免费下载。
    发表于 11-01 10:17 8次下载