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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

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

[求助] 用verilog实现简单的分频,请高手出招。

[复制链接]
发表于 2011-12-19 14:40:36 | 显示全部楼层 |阅读模式

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

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

x
利用外界一个10khz的输入,要分频成1hz,10hz,1khz,通过外部的2个频率选择信号sele—freq 【1:0】来选择选用那个频率输出。请给出详细的verilog代码,谢谢~~
发表于 2011-12-19 15:09:40 | 显示全部楼层
计数器分频然后做下选择就行
发表于 2011-12-19 16:10:09 | 显示全部楼层
。。这仔细想想怎么都能写得了的吧~~
发表于 2011-12-19 18:40:41 | 显示全部楼层
写一个十分频,再写一个百分频,十分频可以复用,可以写成函数或子模块,然后将输出的信号作为一个四选一的输入端就OK啦
发表于 2011-12-19 22:33:55 | 显示全部楼层
本帖最后由 wjhdmmm 于 2011-12-20 08:56 编辑

module fre_div
(
        input        i_clk,
        input        i_rst,                                        // active high
        input        [1:0]        i_fre_sel,                // 0 for 1hz, 1 for 10hz, others for 1khz
       
        output        o_clk
       
);

wire        [13:0]        endpoint;
assign                        endpoint = (i_fre_sel == 0) ? 4999 :
                                                   (i_fre_sel == 1) ? 499  : 4;        

reg                [13:0]        count;
reg                                  o_clk_tmp;

always @ (posedge i_clk) begin
        if (i_rst) begin
                count <= 0;
                o_clk_tmp <= 0;
        end else begin
                if (count == endpoint) begin
                        count <= 0;
                        o_clk_tmp <= !o_clk_tmp;
                end else begin
                        count <= count + 1'b1;
                end       
        end
end               

assign o_clk = o_clk_tmp;

endmodule

粗略写的 没有验证
发表于 2011-12-19 23:57:32 | 显示全部楼层
这种分频问题稍微想想就知道了
发表于 2011-12-20 04:52:28 | 显示全部楼层
这题,有点太单一了。。。
发表于 2011-12-20 16:43:01 | 显示全部楼层
5楼的做法比较好,比多个除频然后mux好。
发表于 2011-12-20 16:44:35 | 显示全部楼层
如果能再把sel处理一下就更好了。不然换频率的时候会有不预期的频率跑出来。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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


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

GMT+8, 2025-1-7 17:19 , Processed in 0.026013 second(s), 9 queries , Gzip On, Redis On.

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