|
EDA365欢迎您!
您需要 登录 才可以下载或查看,没有帐号?注册
x
module bcd_counter(rst, clk, qout);0 S% J0 v: s+ V& S. g
input rst;
! T" K, R" A: t2 u- ? input clk;
( g! ]: S3 m7 j6 d3 B output[7:0] qout;: z- C0 `9 J1 ~. c' V; x
' B$ c" i9 N# b# k reg [3:0] low;$ ]# l7 _+ r1 L5 K$ k
reg [3:0] high;! m% m3 Y! o* l& U6 }
# [) B! G3 K. Y/ `5 O2 [! n
assign qout ={high,low};
3 X& u1 |( J3 t/ t6 p- A6 b
0 i( p5 g( O* j2 y0 B7 l% v always @(posdge clk)
9 W9 l; C' `% j' c1 Q if(rst)4 Z9 X/ t0 |9 T8 e! I
begin
5 d2 {) k+ r4 V, h% E% b4 E8 q low <= 4'h0;* z2 E* x$ G/ O" n6 ]) ?
high <= 4'h0;4 i$ b+ s! E& D
end
* |$ ]/ t5 ?3 ~; W& [ else K$ y. T# c; q2 S0 t9 X. G
begin
5 ]& @0 f2 T8 g) c6 M case(low)& E' l4 t& `* w% M
0,1,2,3,4,5,6,7,8:
& @0 \. l7 w. H low <= low+4'h1;
8 W- E1 Z9 @* P' e. V 9:
" j5 `# q' e& R6 r8 I begin6 e" E1 {* ~8 t( F: T- N
low <= 4'h0;
* g4 R7 L/ g( @5 l! {# X2 H. g$ u% I case(high)3 U# T$ {9 P! j/ k2 i
0,1,2,3,4,5,6,7,8:
, K6 y9 {' X9 i9 U high <= high+4'h1;
/ n# [) Y- N! E& R 9:% X- ]8 v) {8 ?" e% ~
high <= 0;0 s- ^; f; ?2 J: ?) d$ L
endcase4 S/ @/ F( j1 e$ W/ j
end
4 p5 f/ B9 p6 P0 U3 o7 N* t endcase+ f# \2 Y& R1 E( k1 H# m2 ]
end3 V8 X% u) j1 ]6 w, G/ S
end module |
|