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

用HDL描述四位的全加法器、5分频电路。

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2023-2-20 10:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

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

x
用HDL描述四位的全加法器、5分频电路。
" R- A! X5 q- a2 X; l5 L: @

该用户从未签到

2#
发表于 2023-2-20 11:11 | 只看该作者
四位的全加法器
$ D  T" u  i$ W0 O# G: w) k3 z5 I" _  module       adder4(
& {" |+ ^1 n# }+ e' R" Q1 A" n   input  [3:0]  a,# T, X2 [2 Z/ g" Q
   input  [3:0]  b,% i( f9 H, H( {' ^: _" G7 I% [6 k$ d
   input        ci,0 k6 P5 X/ F. D
   output [3:0]  s,0 p2 }; W% N# r" P! f. S- Z4 V
   output       co/ r+ p( x5 C+ P
);' J$ E0 _  e5 n
4 p5 _& n7 F0 r* O
assign{co,s} = a+b+ci;
3 n* g0 p) N" a6 u* L; |( v& D
" M& ?' \% }6 Y" o" r2 ~! z! T' Xendmodule ) S( b: n1 M3 F5 i5 G0 d- e7 ^

该用户从未签到

3#
发表于 2023-2-20 13:17 | 只看该作者
5分频电路(此处占空比不为50%,3:5)
; O' s/ x1 q" U' [: B module    div5(
; r9 s1 r( O( r! s3 S  input       clk,# r" L7 x: Q6 d. h" C9 ?9 T+ l4 s0 C
  input       rst_n,: p6 Z! l! y* i' ~! ^5 U; U; h
  input  reg  clk_out! V: c# G* T, b0 _) V/ l$ j
);
% c( S2 E! Y# t; h& e% }
: Q6 R& r# R8 l4 Ualways @(posedge clk or negedge rst_n) begin
7 T* L' f4 d5 L# ~8 Q    if(!rst_n) begin
2 w3 a# b, ]5 I2 w& d        clk_out  <=  1'b0;
; c4 z8 K7 a" Q- O# U5 `3 P" f) L        count    <=  3'd0;
( [5 D& W7 Z' W" f+ s/ L      end % [: T' H. n& @( u) t
    else if(count == 3'd3) begin 1 t- o6 [( [6 ~% R
        clk_out  <=  1'b1;
- w3 \- U+ f2 q2 j        count    <=  count + 1'b1;9 ?  O9 t2 Y* k2 \, a; a! d! O
      end   w6 w3 |( H+ `
    else if(count == 3'd5) begin4 h! P0 }" \) a$ i8 A
        clk_out  <=  1'b0;
3 ]  O4 B( o& p* Y) T8 P4 g        count    <=  1'b0;  6 T+ k5 s$ B/ i! @8 K9 X4 J  V% R
      end ( k/ q. T, E4 u( o6 ?# m5 v
    else begin
" i+ ?5 d- f) r6 L0 x2 ^/ h        clk_out  <=  1'b1;/ {$ Z; g. i/ B. w7 E8 @5 [$ A( U, I
        count    <=  1'b0;  
6 P3 k2 f/ t, U) A      end
1 ^" F5 B. U/ E8 {end
4 L% a7 k& b" f9 b6 k * M- \& N8 v* Y" s, \% ^
endmodule

该用户从未签到

4#
发表于 2023-2-20 13:46 | 只看该作者
实现奇数倍分频且占空比为50%- @4 ]$ }# [7 |, m
module      div7 (
2 ?8 @0 s  D0 T) @6 F% L$ Y input      clk,
) i* G* b- l+ y& }2 j7 s2 V6 Y0 P6 t input      reset_n, 3 x3 w' O- {6 v% h% I8 Q# G. B
output      clkout
/ r/ J9 S" ~7 j2 @/ d8 Q);   
; a0 F1 e& K; z1 n) {
: H; d3 d2 w5 K$ Oreg [3:0]  count; 9 V6 O$ T% o) \/ y
reg        div1;
" m+ C0 w/ u# ]" ^1 Creg        div2;   
8 G; M/ s+ u( `: n& _+ Q$ s9 k+ d 4 Y2 e3 w& h- l% O& R1 W' L
//七分频计数器
* n4 v! `7 b8 V( y; \9 T+ }' Q1 `; ^always @( posedge clk ) begin , N+ h. _% |, {. [" [$ F3 i+ K
    if ( ! reset_n )         8 B6 }& z2 X& W' q4 a: L
        count <= 3'b000;     
9 O8 J. E- D  h6 c3 J    else
9 B: y- k6 k) ]( k  |( W# y3 U        case ( count )
( R8 _4 q2 Y' O% ]7 h( M          3'b000 : count <= 3'b001;             + ~7 e, N2 Y1 b
          3'b001 : count <= 3'b010;             9 O8 F* z& l/ \" _8 g
          3'b010 : count <= 3'b011;            
9 o4 s# j+ B8 j3 D/ u          3'b011 : count <= 3'b100;            
9 O. k0 |8 a6 E          3'b100 : count <= 3'b101;            
" _8 P0 x0 H8 F% s* y6 I          3'b101 : count <= 3'b110;            
, i  x! W. g( |) z1 T4 B          3'b110 : count <= 3'b000;            
% E# L. X* T& L7 S        default : count <= 3'b000;         
, r. V' |" C) p1 I       endcase
- f3 ^/ `8 S8 H( S: a end   8 }. H) G3 X/ y4 e

; X1 I) Z8 d3 d6 R# I9 C" Palways @( posedge clk ) begin
' I% @4 K/ L" g0 D+ h' e' H# x    if ( ! reset_n )         
1 F. Q2 l0 {1 w' X- Y2 ~( m; I        div1 <= 1'b0; * Z! r, n0 \% r/ D9 Z* A1 X
    else if ( count == 3'b000 )        
8 u; @) Y1 K9 Q- ]: u5 D, n        div1 <= ~ div1; * C" G/ w$ [) L8 e+ H! s! `# M) ^4 }
   end   ; \, D# M) z; a2 w, G0 u5 n& y# U6 i& z+ M

* Q7 n& o4 I, z; dalways @( negedge clk ) begin
. W; ]# p2 Q4 i) C6 ~    if ( ! reset_n )         
+ n8 Y* O7 L; ]8 S! D# w          div2 <= 1'b0;
5 Z3 l8 t" m' Y    else if ( count == 3'b100 )         
* g7 w0 L9 i2 M% e. o& [* G          div2 <= ~ div2; 9 k; U8 _, z9 a- A7 I, t
   end
& T- x  W5 ]6 }5 J: |% B0 B 9 v8 `( b/ b  u  H
assign clkout = div1 ^ div2;$ \" u9 f- X, X: W9 [% k# S
+ z  u. {- Y5 `: @
endmodule

该用户从未签到

5#
发表于 2023-2-20 14:02 | 只看该作者
用mulsitim电子实验室可以,学习起来更直观!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-10-5 08:59 , Processed in 0.125000 second(s), 23 queries , Gzip On.

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

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

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