在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 2115|回复: 4

[求助] 以下情况是否需要create_genarated_clock,求解疑

[复制链接]
发表于 2017-3-24 20:30:26 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x

首先讲讲我对生成时钟的理解:当某时钟与主时钟存在频率、相位等差异时,需要将其定义为生成时钟;当某时钟通过寄存器、分频器时,其输出时钟应该定义为生成时钟。

可否换个角度理解:

在verilog中,always@(posedge clk_X)中的clk_X的来源,对应到触发器的CP端,这类时钟才能被定义为时钟或生成时钟?

若代码中存在某时钟赋值,如:clk_1<=clk,clk为触发时钟,clk_1并不作为任何触发器的触发时钟,clk_1就没必要定义为生成时钟了,对吗?

又如assign m=clk,m也不需要定义为生成时钟?顶层设计中,模块实例化,模块A的输入端clk_a接模块B中分频器输出端clk_2,代码如:A uut_A (.clk_a(clk_2))是不是只需将模块B的clk_2定义为生成时钟即可?

发表于 2017-3-24 21:11:53 | 显示全部楼层
初级用法:当你发现时钟透不过去的时候(要经过寄存器、PLL...),设个生成时钟。
中级用法:当你想把其他时钟路径打断的时候,比如clkA、clkB都经过一个2选1的MUX,你想阻止STA时clkB透过这个MUX,就在MUX输出端用clkA生成一个时钟。
 楼主| 发表于 2017-3-24 21:20:35 | 显示全部楼层
回复 2# Timme

这个理论知道,我上面三种理解是否正确呢?
发表于 2017-3-26 10:43:35 | 显示全部楼层
对于时钟来说,没有在内部使用的可以不用create,时钟使用时只需要在产生的源头creat即可,模块之间的穿透不需要重新create
 楼主| 发表于 2017-3-27 09:29:14 | 显示全部楼层
回复 4# 出尘入世


   嗯嗯,谢谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条

×

小黑屋| 手机版| 关于我们| 联系我们| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-12-26 01:19 , Processed in 0.019249 second(s), 6 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表