找回密码
 注册
关于网站域名变更的通知
查看: 295|回复: 1
打印 上一主题 下一主题

任意分频器

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2018-12-6 07:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

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

x
任意分频器
% |0 J" ?, I+ u1 g) D6 Z- _
module frequency_divider_mealy_fsm1s(clk_in, rst, clk_out);
$ }3 h# Z0 w2 m" d: @: f4 m3 S- F& n/ P+ W5 N- P
        parameter HW = 3;        //输出时钟高电平宽度+ J! Y  n- w, L4 F2 b7 a
        parameter LW = 2;        //输出时钟低电平宽度
  G1 c% H1 L. V" _9 f- s  w% W        0 T" f- P& o7 v+ ~
        input clk_in;4 m  P* N( o/ b( T
        input rst;
; z' d5 F- U) _) j9 @$ S        output clk_out;
0 b4 O! _1 V2 H: l. q7 f3 l        : c1 e; M' [- h0 f7 I' C/ b3 P
        `define s0 1'b0        //显式状态机0 {2 g, u# d9 f' S- x4 _5 F5 C
        `define s1 1'b1! t  S9 g0 z5 @" Y( {0 @. A  d
        
2 c0 h- n" h# {3 K  _7 F, L        reg clk_out;
) R3 v2 y# a5 E  M+ ?" d1 {        reg [31:0] count;1 h0 b  @' d; X3 K  k# P
        reg state;, [' |. E& e* [' B, Y
        
: [- O& i2 z' o        always @ (posedge clk_in)        4 T0 a! x: W$ s% X* l2 z+ z
        begin5 m0 c% a% ]! a% Y; D8 G% ^5 i8 b; R
                if (!rst)                        //同步复位
5 F  R2 y" a. e3 X/ w  {* T                        begin! L' d. ]: O, V, ~! W) M
                                clk_out <= 1'b0;% f! V4 n1 p9 m& ~0 `, h0 o" u: ]
                                count <= 0;( ?& \% b& _) i# B/ c
                                state <= `s0;" f" R) d# g$ q3 H( Z" }8 ~4 [
                        end
9 M  R: t+ P' |                else
' }6 f$ u  _& L5 a                        case (state)0 j. Y. [) ~& x
                                `s0        :        if (count < LW-1)
) E! u7 x" a5 G                                                                begin
' g# k  m: J: ^) p+ M                                                                        count <= count + 1;. y: `; E$ Q/ D
                                                                        state <= `s0;                //显式状态9 O" A: X6 _- O2 o8 `1 c
                                                                end
! N( T+ E* P3 ?/ `- A0 [* r( `                                                        else
; W+ o. z' N- e& E* b. M                                                                begin
; W' O3 O5 i4 ]- X" N                                                                        count <= 0;
/ J/ U/ v3 O' B% s$ [                                                                        clk_out <= 1'b1;
. R$ O  ]/ ]9 C6 l6 X                                                                        state <= `s1;
- j0 k/ Y* D. C; a: p                                                                end' P' j$ X0 n: [. ~
                                                                - O" v$ t' X+ C- A# S$ C& t
                                `s1        :        if (count < HW-1)
; L( k* r  a! H# a* s1 d9 l1 T6 P# _                                                                begin* w  y9 r" q' D5 k
                                                                        count <= count + 1;3 z# ]/ a$ \9 U! ^& \* P
                                                                        state <= `s1;                //显式状态) L' b5 L: ?, H1 L7 H- x$ z1 e
                                                                end
) j1 d& n- {( L& H6 C                                                        else
% R3 z! U6 w& H0 L8 Z                                                                begin! [; }0 W) M8 P5 p3 Z" w3 r0 Y
                                                                        count <= 0;1 ]: N& C, S/ J
                                                                        clk_out <= 1'b0;( n; N9 M& {4 L7 D, z5 @! [
                                                                        state <= `s0;6 P0 K& b9 P' I  C7 ^8 f/ f' b0 ]( Z
                                                                end: t  C4 s/ d0 d1 B3 G8 A4 l
                        endcase0 I5 g! F. [4 J- J4 ]5 c* N7 u# Z
        end. N* n) [+ G; P

. i1 {, u/ ~4 L6 a( D& Wendmodule
$ Y3 s$ R1 g% r7 a" q4 ]

0 N$ z5 R- h! j7 A. r6 d) v+ U0 a4 }

- z, o% f% S3 l* o: Y. k( S/ F& `; X5 G7 K9 `

' _+ |( \7 t  U
. z" C9 U3 C3 e5 h

9 I# s& s6 G4 o; B
3 ^$ z# Z  b* B5 z: ?; C
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-10-6 23:19 , Processed in 0.140625 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表