Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

搜索
1 2 3 4
查看: 53442|回復: 51
打印 上一主題 下一主題

[問題求助] 請問如何設計BCD counter

  [複製鏈接]
跳轉到指定樓層
1#
發表於 2007-8-28 10:40:06 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
如題& c9 D3 D" k, N
小弟我目前在設計一個時鐘電路 需要一個記數器 不知道這個問題是不是屬於這個討論區
. k( F/ C+ |) j, P# w如果不是麻煩版主修改一下囉" \  P$ t  P. M, g
: P/ P9 T: R( A! d( T% w7 L1 q
目前這個記數器要能數0-9 接著就進位 然後自己reset繼續從0開始 進位後訊號再繼續由一個0-5的記數器開始記數
3 U7 m0 v2 m1 b$ W3 Q總之就是能夠記數0-59, 個位數記數0-9, 十位數記數0-5
' D2 x2 x8 d9 N! B8 H+ J
& d2 |8 z& }" {6 @/ _* G1 b請問各位有人有設計過這樣的電路嗎? 或是要去哪裡找相關的資料勒?, v2 p  j, i7 E, Q
謝謝!

評分

參與人數 1 +4 收起 理由
kuannan + 4 謝謝小朱仔提供的code囉 對初學者 真是�

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂2 踩 分享分享
2#
發表於 2007-8-28 10:52:11 | 只看該作者
原帖由 monkeybad 於 2007-8-28 10:40 AM 發表
( O) {0 ^5 b, Q! a+ U0 N如題2 C9 h6 K$ v7 Q
小弟我目前在設計一個時鐘電路 需要一個記數器 不知道這個問題是不是屬於這個討論區, o! E. \. f7 I/ M
如果不是麻煩版主修改一下囉
' A% s6 |+ A& c, P' o' i! M6 H, U8 g: u. W  W8 r. e2 }
目前這個記數器要能數0-9 接著就進位 然後自己reset繼續從0開始 進位後訊號再繼續由一 ...

8 U3 I, Y* [9 Z* n
" _; G+ L6 E3 o  Q9 k大大您是要寫Verilog還是電路4 H  a9 |$ i1 }! j  Q

" |% F# W2 }, |* j6 c先PO個RTL Code參考看看# B, x5 h6 e# z9 V/ r9 z
( ^9 p6 }9 O+ s* |7 h8 Y7 F, ?3 H
輸入:N clear load clk* ^- C3 h: A: ]1 W+ }' R/ W8 K8 P
輸出:count
% j4 X; M. i9 C. s0 t  x: O
  Q; t: u: `- E+ A/ l行為描述(依照優先順序)
3 t# X8 U7 U6 J! J1.如果clear為1,則輸出設為為0
) _/ w+ f4 b( ^# A* V* m2.如果load為1,則輸出設為N  S: [3 S1 F6 ~2 [# j$ A
3.每個時脈輸出遞增一次(BCD)8 N9 Z  M) d3 i# K* d  a

% Q  I. t& N  E3 z+ C1 }1 ]
0 M6 b- \) l" B- u, e  x0 u( [+ X0 K2 `$ w+ C3 E) V3 A
程式碼:
$ `/ [5 M' Y3 j" Q+ v7 sBCDcounter.v: l* f/ |7 Z3 [$ B: V
* O4 f2 h/ t+ H( Y2 N
module BCDcounter(clear,load,clk,N,count);/ J% T0 p, s* a
input  clear,load,clk;! ]5 F! M, [2 L, ~. p+ @
input  [3:0] N;
* _0 e5 g' y1 r8 Moutput [3:0] count;  Q- Z' z" `7 i: `8 Z. N, r
reg    [3:0] count=0;0 N3 ]# O5 C+ w; K

' y6 e" O8 N( Yalways @ (posedge clk) begin
5 z' f% g. |  ~7 \# s  if(clear)                 //clear=1
! S# I3 j+ p* z3 Z  m    count=0;
! J3 \1 n: K# P, B; ^. B  else if(!clear) begin     //clear=0(共有0 1 X Z四種狀態)
% B! Z0 R, n" I! s$ A$ P( M0 Y    if(load) begin
  _4 g3 J+ K3 E/ z      if(N>9)" i5 F! x" J( T3 Y  _% O
        count=0;
' R0 O4 ?3 @1 e) @* G4 K      else0 ?( [7 i4 Z3 U0 I, Y
        count=N;
$ g- \5 @) ~2 v; ^, m5 }    end
4 R4 e0 X5 e, s    else if(!load) begin2 l- R/ Y3 O1 e" ]# b3 C
      count = count+1;
& I6 Z8 U0 _- H3 k7 c' ~      if(count>9)
; h7 t% R0 @! B; A6 v- @      count=0;/ w$ `, K8 y$ w) y
    end. o9 z" ^+ |6 X6 Y! Y0 B
  end
# V# X$ A  Y: }( v: ]! c8 u( d( Vend) S0 L/ G: N) m2 t, m- K" D* c
endmodule3 u1 R) H( `! ]% u& M
3 ?7 K& D3 E. _, `% q7 M1 i# W
bcdcounter_tb.v
9 P3 d* [% U- }5 [* g7 ?
  N  }% o) P, L/ `2 W9 Ymodule bcdcounter_tb;8 ~( a, K$ x- b9 R0 W. g1 P2 e& G
reg clear,load,clk;
1 c7 @( k9 l# l3 xreg [3:0] N;
# t; h+ [8 T+ ^# N( X/ s, O2 S" B1 l. dwire [3:0] count;) m* P' p1 I+ k  |( J, p  T7 |
0 ?. `4 Z1 _# x( L
BCDcounter m1(clear,load,clk,N,count);5 s% u- S' U7 c# t2 }5 k6 a
4 q7 A5 q3 \, g. j
initial
$ x. x' l2 j5 _4 aclk=0;7 O' B' t. p! e- G# f
4 g$ y. }: ^; e& ~. f, d
always #2 clk=~clk;
$ F( r# m" Z2 Z6 L( r& k6 M; f' q3 Q# O
initial6 H! \( G" w: g" T) p
#160 $finish;, H- V* \* @# \& X8 l+ S+ N
) n4 L6 f& b. _! o7 Y, d+ ]
initial begin
- C% P! k' y' j. ?) I( {5 z    clear=1;
" l* y2 x2 e: G! ~8 _' t#4  clear=0;
4 {. m6 |' b9 ]; x#90 clear=1;
2 W. Q" k" h' r/ N#3  clear=0;1 v" N  ^, w+ q3 c. G3 J# d: ~
end% X( U0 w/ p: s% F

- Y7 [; [& J5 kinitial begin
3 o4 ^& o. F3 s. K" G! F# s     N=6;load=0;* _4 I* v6 a2 J- E! K
#58  load=1;
; W5 I4 u; I2 A) ~#2   load=0;3 G) `; J  |- i
#22  N=12;$ B* D0 E8 ~4 K
#40  load=1;$ G; e9 `1 r, h* A
#2   load=0;
5 U0 s0 e$ M! v7 }3 ^end
% P) a- e4 A! I; j9 O1 c
# [, d/ O; Z, f' P. Eendmodule

評分

參與人數 1Chipcoin +5 收起 理由
tommywgt + 5 回答詳細

查看全部評分

3#
發表於 2007-8-28 10:56:04 | 只看該作者
還有一份講義可以參考看看% ~1 b: d. U/ H4 P
希望對大大有所幫助$ A8 E1 r; s0 j/ R  v, h2 w$ v, i

, U0 D! V1 Y7 h4 N  x" v/ @: B
1 A) Q. A4 i$ r& s
+ J* K" G. d* t) j/ a! m
遊客,如果您要查看本帖隱藏內容請回復

本帖子中包含更多資源

您需要 登錄 才可以下載或查看,沒有帳號?申請會員

x

評分

參與人數 1 +1 收起 理由
ycs1977 + 1 謝謝小朱仔的資料 受益良多

查看全部評分

4#
 樓主| 發表於 2007-8-28 11:18:33 | 只看該作者
感謝小朱仔的熱心回覆
. Z9 j; c$ `8 H! ]* \不過我電路要自己畫 還有我不會用Verilog耶
( ~. S% N, l7 x! R# s' @" A現在主要是要有電路圖 可以用Hspice模擬的那種
& j( o0 q2 H0 n. y" F; k另外希望inverter越少越好 因為要求要省電! 還有要自己layout!
# ]1 c/ @" w. c  X0 U. E3 g! K4 V. g& h3 R, U( f/ I
樓上那份文件好像裡面有寫到 趕快研究一下! 感謝分享!; a! ]/ }# i6 ?: b9 |5 @2 l
! f- b' {# b& M
[ 本帖最後由 monkeybad 於 2007-8-28 11:23 AM 編輯 ]
5#
發表於 2007-8-28 16:05:34 | 只看該作者
你那個要自己動手畫CMOS電路吧... 2 b5 w+ j! E, V/ E$ E. ?6 A$ V
寫code習慣了, 真的很不想動手再做這樣的事, 不過推完booling equation後, 直接用Cmos畫出來不就好了???0 o- _! g0 Z) V2 ^* x- \
沒錯吧
6#
 樓主| 發表於 2007-8-30 14:21:06 | 只看該作者
恩恩 不過booling eq好像是在推導一些輸入輸出的條件
! U' `1 p/ V4 Z
! d) [# d9 u; v% ]/ ]' H記數器參考一些資料後 找到一個用ripple counter下去修改的
2 o/ m9 A( @4 z" h* Uripple counter就是用負緣觸發的T型正反器串接在一起 $ E: q; c2 o. A% Y' f$ o
接著開始從0數到9 然後數到10的時候, v1 c/ d% ?/ Y5 P
就reset重新從0在開始數
7#
發表於 2007-9-3 15:08:06 | 只看該作者
ripper counter真不是個好主意, 不過要看應用, 在有些地方用時倒是好東東...
8#
發表於 2007-10-23 11:19:59 | 只看該作者
我很好奇某大大說的講義1 A8 }3 v7 W  S2 J& S
給我看看寫什麼吧
9#
發表於 2007-10-23 20:26:00 | 只看該作者
我這裡有時鐘的電路圖..以送去CIC下線..可提供給大大參考看看!
10#
發表於 2007-10-30 01:52:19 | 只看該作者
我看一看那個問題,要我聯想到CODE,一時還想不起來,真是太久沒有寫程式哩!8 y9 b+ `4 m/ c1 B
看到CODE,有一點恍然大悟的感覺,又接著看,害我也想看那份相關資料囉!!
11#
發表於 2007-11-9 14:57:32 | 只看該作者
BCD conuter 應該是對自己有所幫助
12#
發表於 2007-11-14 23:29:59 | 只看該作者
bcd counter對初學者的我而言真的好難7 s7 ~: J7 W% b% k% g3 K
謝謝小朱仔提供的code囉
13#
發表於 2007-11-17 16:58:54 | 只看該作者
大大別忘了給小朱仔 "感謝"
) o  j: P# G, w" \+ g( U. f5 ]. h3 d( @3 J( H
按評分, 就可以給感謝了....
14#
發表於 2008-2-22 17:34:54 | 只看該作者
Let see the shared material. THX.
15#
發表於 2008-4-24 07:28:10 | 只看該作者
幕讲义之名而来,呵呵勿见怪啦.                                             
; s: p: `& R! R# J" [- c感谢
16#
發表於 2008-5-21 10:42:39 | 只看該作者

回復 3# 的帖子

感謝各位大大的資料 對初學者 真是受益良多
17#
發表於 2008-6-2 11:53:25 | 只看該作者
感謝大大的分享∼∼∼∼/ N6 z# _5 b1 X/ [
因為你的無私,讓大家能學到許多知識
18#
發表於 2008-6-2 22:10:25 | 只看該作者
我也想看看大大分享的講義~~
. E0 K; a7 u) H* R' H回覆來看看囉!!感謝蛤!!9 |0 k, c3 X! X4 M9 ^: n& E
因為我是初學而已!!
19#
發表於 2008-6-8 20:55:26 | 只看該作者
你是要畫電路圖的方式設計~6 N/ P: L: }  l; S. ]. s- S4 t
那畫畫卡諾圖不就好了.... 只是比寫CODE還要麻煩.... , B( J, e7 I1 D' J6 l
因為要接邏輯閘!!
! u! w; ~' j( w. w  A用卡諾圖化簡!!
20#
發表於 2008-7-25 14:41:52 | 只看該作者
最近剛接觸這方面的東西
. A6 g* e9 H: L3 h) j& v. j/ j7 @, q: v0 b8 z' f: U
剛好需要這些資料; }; \' o. v% u; a5 G
$ X: _6 ?0 U$ j8 @1 E/ c  t
感謝分享!!!
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

首頁|手機版|Chip123 科技應用創新平台 |新契機國際商機整合股份有限公司

GMT+8, 2024-5-18 08:29 AM , Processed in 0.143019 second(s), 19 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表