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

 找回密码
 注册

手机号码,快捷登录

手机号码,快捷登录

搜帖子
查看: 4562|回复: 11

[求助] 用两个不同的时钟控制同一个寄存器的问题(我写在纸上了),再发一次

[复制链接]
发表于 2014-12-15 11:23:12 | 显示全部楼层
reg reg0,reg1;
wire rst0, rst1;
wire clk0, clk1;
wire in_buff, out_buff;

always @ ( posedge clk0 or negedge rst0)
if ( ~ rst0 )
    reg0 <= reg1;
else
    reg0 <= in_buff ^ reg1;

always @ ( posedge clk1 or negedge rst1)
if ( ~ rst1 )
    reg1 <= ~ reg0;
else
    reg1 <=  reg0;

assign out_buff = reg0 ^ reg1;
回复 支持 反对

使用道具 举报

发表于 2014-12-17 08:46:23 | 显示全部楼层
回复 5# zhuyuefeng2009

clk1与clk2有没有关系?如同源派生。
如果没有关系,问题还是存在的。
如果是同源派生,根本就不用这么复杂了。
回复 支持 反对

使用道具 举报

发表于 2014-12-18 16:28:11 | 显示全部楼层
回复 8# zhuyuefeng2009
我们采用PLL将参考时钟倍频后,一般不再同时采用原来的参考时钟与PLL输出,因为PLL输出与参考时钟的相位关系没法明确固定,当然PLL的多路输出之间的相位关系是可以确定的。
可以将PLL输出按需要输出状态机信号去用作使能或同步复位信号。
你的图里可以将pll输出8分频,派生使能信号。
回复 支持 反对

使用道具 举报

发表于 2014-12-19 11:06:28 | 显示全部楼层
回复 10# zhuyuefeng2009

是可以的。
实际上,一个PLL系统的所有输出(包括内部参与相位比较的时钟)都是由VCO输出的频率非常高的时钟信号通过不同分频节点输出,
它们之间由于是同源派生,所有相位关系是确定的。有的PLL系统输出时钟的相位甚至可以配置(与分频系数有关系的)
你说道情况完全可以实现。
回复 支持 反对

使用道具 举报

发表于 2014-12-19 11:14:57 | 显示全部楼层
回复 10# zhuyuefeng2009

PLL到PAD应该是特定的专用脚,是全局的时钟输入输出脚,不是普通IO。BUFG应该在全局时钟布线资源里面,到Slice是驱动IOBlock里面的Flip-Flop的,只能用作时钟,触发寄存器;不是用于输出的,也不能用作普通的wire信号,参与组合逻辑。
回复 支持 反对

使用道具 举报

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

本版积分规则

关闭

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


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

GMT+8, 2025-9-13 03:49 , Processed in 0.013985 second(s), 3 queries , Gzip On, Redis On.

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