您的位置: EDA中国门户网站 >> 论坛 >> HDL语言 >> 查看帖子
字体: 小 中 大 | 打印 发表于: 2008-9-22 22:28 作者: hardwood 来源: EDA中国门户网站
QUOTE:
原帖由 guo253 于 2008-9-22 23:56 发表 控制信号: 慢到快 : 两级D 快到慢 :1.人为规定控制信号脉冲宽度大于慢时钟周期,此时 两级D 2。有种3个D的电路结构。 第一级: D
最新回复
putty (2008-9-22 22:58:10)
慢向快,两级同步
one2three (2008-9-22 23:01:26)
guo253 (2008-9-22 23:56:10)
慢到快 : 两级D
快到慢 :1.人为规定控制信号脉冲宽度大于慢时钟周期,此时 两级D
2。有种3个D的电路结构。 第一级: D<=Vcc,clk<=ctrl_signal,rst<=not ctrl_signal and out
第二级: D<=Q1,clk<=clk_slow
第三级: D<=Q2,clk<=clk_slow,out<=Q3
数据: 握手----速率较慢
异步fifo或DPRAM
请老大们补充。。。
shaweikang1984 (2008-9-23 08:15:10)
lasaman (2008-9-23 09:01:41)
王巍巍 (2008-9-23 09:49:01)
快到慢 :第一级: D<=Vcc,clk<=ctrl_signal,rst<=not ctrl_signal and out
第二级: D<=Q1,clk<=clk_slow
第三级: D<=Q2,clk<=clk_slow,out<=Q3
能否画张图,解释一下,这种方法好像比较新啊,以前没见过。
还有 数据信号:
用握手信号解决,能否也画张图,虽然经常听说,但具体是怎么操作的哪?谢谢!!
guo253 (2008-9-23 11:59:17)
握手我也只是知道有这么一回事,过程:
发送端将数据放于数据总线上,然后发出发送请求,接受端接到请求后把数据读走(直到读走才发已接受信号),发出已接受信号,然后发送端接受到此信号,接着发下一组。
但是用的最多的还是异步FIFO.
guo253 (2008-9-23 12:00:46)
第二级: D2<=Q1,clk<=clk_slow
第三级: D3<=Q2,clk<=clk_slow,out<=Q3
out 即所要的信号。
neptune1983 (2008-9-25 23:57:52)
CRTL-SOGNAL 是不是先要拓展到足够宽度
xiaogouggg (2008-9-26 12:28:16)
QUOTE:
ok[ 本帖最后由 xiaogouggg 于 2008-10-8 17:59 编辑 ]
neptune1983 (2008-9-26 15:13:17)
hover_edacn (2008-9-26 15:38:23)
真正的解决方法是结绳法:
在快时钟域的最后一级把pulse变为电平,即每个pulse到来时,该寄存器翻转,也就是把pulse展宽。
在慢时钟域同步来自快时钟域展宽后的pulse,然后作微分,把pulse的宽度恢复为一个脉冲。
其实这是半握手协议,对pulse的频率是有限定的。
guo253 (2008-9-27 03:26:12)
对于10#,CRTL-SOGNAL 我觉得没必要延迟其宽度,延迟了就显不出这种方法的优点,而用两级FF即可。可以拿极限情况做个假设。
对于11#,这种方法是适用于快转慢的。
至于说“异步reset不能随便乱用”,这个我就不太懂了,请解释一下,我是做FPGA的,经常用这个好像。
这种方法是我从《现代电子技术》期刊上摘出来的,俺也没试过,请大家多多讨论。
wangxwei2004 (2008-9-27 09:09:59)
hover_edacn (2008-9-27 09:24:21)
总之,这种方法除非遇到极端情况,否则在工程上是不会使用的,在面试中会被认为不具备处理跨时钟域方面的知识。
guo253 (2008-9-29 00:19:38)
cryinrain_cug (2008-9-29 09:38:46)
各位辛苦了
S.Gerrard (2008-10-08 15:55:21)
感觉收益非浅啊
zhongzhaohua (2008-10-08 16:46:27)
慢到快 : 两级D
快到慢 :1.人为规定控制信号脉冲宽度大于慢时钟周期,此时 两级D
2。有种3个D的电路结构。 第一级: D<=Vcc,clk<=ctrl_signal,rst<=not ctrl_signal and out
第二级: D<=Q1,clk<=clk_slow
第三级: D<=Q2,clk<=clk_slow,out<=Q3
感觉快到慢 两级D 就解决了 是不是写反了啊
arms (2008-10-20 19:26:15)