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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 12136|回复: 8

请教:如何实现一个3/2分频的电路啊?

[复制链接]
发表于 2008-10-22 10:31:49 | 显示全部楼层 |阅读模式

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

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

x
占空比不做要求。ths
发表于 2008-10-22 14:53:23 | 显示全部楼层
应该不是指用HDL coding实现吧?如果是那样的话小写个状态机甚至是计数器就解决了。

裸奔的版本大概是:

1. 输入信号作为时钟接到DFF的时钟输入,DFF的~Q输出回馈到本身的D上。这样就组成基本的2分频。设输入为in,DFF的输出为D。

2. 使reset <= in & D 来重置DFF。这样的话输出D就是3/2分频。大概=_=

如果不对的话,可以生成两个或者多个上述的分频,有相位差的那种,然后在and啊or啊之类的就出来了~~~

大概思路是这样...没画波形图来验证,LZ试试吧~

[ 本帖最后由 vvvtmc 于 2008-10-23 04:05 编辑 ]
发表于 2008-10-22 21:02:29 | 显示全部楼层

恩呢!

动手试试,应该不难!
发表于 2008-10-22 21:30:14 | 显示全部楼层
D触发器分频,再用HDL定义一个3倍频的模块吧.
发表于 2008-10-22 23:13:34 | 显示全部楼层
支持裸本版本
发表于 2008-10-26 19:47:19 | 显示全部楼层

回复

自己好好研究研究。
发表于 2009-2-10 23:15:28 | 显示全部楼层
有没有谁经过验证的
头像被屏蔽
发表于 2009-2-11 19:10:23 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
发表于 2009-2-12 17:15:22 | 显示全部楼层
wire clk;
reg  [1:0]Q;
reg         Q_shift

always @ ( posedge clk or negedge rst )
if ( ~ rst )
    Q <= 0;
else
    casex ( Q )
        0: Q<=1;
        1<=2;
        default<=0;
    endcase

always @ ( negedge clk or negedge rst )
if ( ~ rst )
    Q_shift <= 0;
else
    Q_shift <= Q [ 1];

assign clk_o = Q[0] | Q_shift;

[ 本帖最后由 ddxx 于 2009-2-13 09:58 编辑 ]
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

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

GMT+8, 2024-11-16 16:49 , Processed in 0.022054 second(s), 9 queries , Gzip On, Redis On.

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