Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

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

  [複製鏈接]
跳轉到指定樓層
1#
發表於 2007-8-28 10:40:06 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
如題
. A4 s4 n9 d0 b& R小弟我目前在設計一個時鐘電路 需要一個記數器 不知道這個問題是不是屬於這個討論區
7 d6 S5 G( e# c1 S! [如果不是麻煩版主修改一下囉
/ r5 @! D) Z+ V- j4 l: P6 x: b$ S7 m, Y2 O# S
目前這個記數器要能數0-9 接著就進位 然後自己reset繼續從0開始 進位後訊號再繼續由一個0-5的記數器開始記數* M% t  b( ]& |6 o9 M+ Y
總之就是能夠記數0-59, 個位數記數0-9, 十位數記數0-5  M. v" B! b+ y

1 n) H# w+ h: U0 n' q: K/ R) L請問各位有人有設計過這樣的電路嗎? 或是要去哪裡找相關的資料勒?
- h, t+ [" a8 }謝謝!

評分

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

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂2 踩 分享分享
2#
發表於 2007-8-28 10:52:11 | 只看該作者
原帖由 monkeybad 於 2007-8-28 10:40 AM 發表 4 j% T. n# m' z/ l/ V
如題% i4 X0 p$ {0 a2 _
小弟我目前在設計一個時鐘電路 需要一個記數器 不知道這個問題是不是屬於這個討論區
2 m6 x1 q7 E# r' r: `& E1 v如果不是麻煩版主修改一下囉
/ f/ R: {6 w$ x$ y& z9 G
3 M; w6 C( x% F9 D8 f: Y5 q! A8 m目前這個記數器要能數0-9 接著就進位 然後自己reset繼續從0開始 進位後訊號再繼續由一 ...

- R" ^% O6 v% Q4 ?: j
8 s! A2 l6 T$ ?6 z/ f: I大大您是要寫Verilog還是電路
/ B0 y6 \8 x  R, a) F3 t$ q" S
8 ?, `) C3 V3 C1 j! O- b先PO個RTL Code參考看看) L, V) w0 U+ Q- \1 \/ Y/ ]
6 I: z  A! J7 S) {) U- Q
輸入:N clear load clk
; M. L; }3 y! z  q. K輸出:count
; i9 B9 x/ g/ G5 \+ v" E8 m' R# O7 v6 \, E, W
行為描述(依照優先順序)
# Z3 x7 z, q! p$ O3 H  l; L1.如果clear為1,則輸出設為為0
! I8 {$ K( k6 n8 d7 ~+ f2.如果load為1,則輸出設為N
9 `1 C4 A: J* ~4 ^3.每個時脈輸出遞增一次(BCD)
" w( ?6 i5 F$ V  Q5 R
7 x& k( s: u2 @2 e, K+ [/ R* W2 x. w
5 J" C  D# f5 Q
$ I+ D0 q" s3 x1 W6 J程式碼:
% p5 Y' F9 Z1 nBCDcounter.v
1 l6 @4 V; j0 n4 Y
6 @- @4 o8 v$ Q  Y( j' N) bmodule BCDcounter(clear,load,clk,N,count);* D  q, v  @5 C" m
input  clear,load,clk;0 B* V: {1 Q7 X) V7 I6 s4 K
input  [3:0] N;
9 B6 I* L9 `; {9 C+ Boutput [3:0] count;9 J  p* z/ Z) ?2 F' Y! u: {
reg    [3:0] count=0;$ K8 i& n) \# w' _! Q0 K- E- w( ^* v
$ H! w: Y1 N6 T( _$ Z% B
always @ (posedge clk) begin! j6 ]+ }# ~" a. D' P5 Y
  if(clear)                 //clear=12 r) @9 Y' n# U. [- y
    count=0;* n2 I6 X9 O9 D+ {
  else if(!clear) begin     //clear=0(共有0 1 X Z四種狀態)
; ?" A& Z) C4 M2 k6 A2 p    if(load) begin, P; }* h" c- h* f; R
      if(N>9)6 l! L$ e9 y1 ~6 o$ v* O: I
        count=0;3 N: F- C1 U: C7 o
      else
: d& N2 ~1 L5 O5 z& K        count=N;7 `, V* ~2 [3 A
    end
& @4 P! ~) f. |3 R' I    else if(!load) begin
6 a2 T  h( k, E6 A1 i8 Y" g      count = count+1;& z' Y) Z* k3 Y8 U1 ~+ _
      if(count>9)
7 ~; V2 w( s/ ^/ E      count=0;
' |2 w. D" x: J- N( h* x4 j    end  J# p. B: R6 N! Q* j# ]: `
  end
: J3 j  h$ d- F" Q; Kend4 P, D! K$ V+ Y1 [8 Q
endmodule1 F( _* w. a  ^2 c) E' z

1 k( _$ {8 w/ ?. T" ebcdcounter_tb.v
' Z4 ^" _2 @1 m- V" J/ l) Q
3 Y+ K' G2 ?! u8 \; omodule bcdcounter_tb;" ]5 ~. _6 T/ @, g3 i
reg clear,load,clk;; K3 w3 M' l$ z# F5 i/ F. p! A3 ~1 V$ c
reg [3:0] N;
& q) h$ e& f! cwire [3:0] count;
0 L0 ?8 F3 U1 r3 [' g. \  v$ \5 }+ ~
BCDcounter m1(clear,load,clk,N,count);
% M3 o; {, x& B" H* {$ F4 H6 }( U! k
9 S& s+ G4 O; W; |. einitial
* R2 X( l) G0 ?: I* |$ N: w  iclk=0;4 k! J' Q& g" S: B

$ G' x: ^7 k; A) H0 ]always #2 clk=~clk;3 ~- F7 {- G4 K: R5 |

; ?$ J  w' R) jinitial
1 u, Z& d1 s  `#160 $finish;
* `5 J' V) N$ B7 u
+ t$ a, [9 N- B* H6 s/ Y  O9 kinitial begin" ]# U3 T! y2 b0 }
    clear=1;% s% H2 R" o4 O5 o
#4  clear=0;; N9 \. F% A& I2 F6 G
#90 clear=1;
1 y% |( w1 b% o1 b$ V#3  clear=0;  [) W) @! x" C! W; K: X
end0 r$ G8 w( y0 i! D
# Q1 P; w# W/ V. @& o
initial begin5 U1 C8 N( K! Q9 \
     N=6;load=0;7 `/ X3 k. Y7 A- V' c3 X# ]
#58  load=1;
4 \' W8 `/ }: l' c3 P9 p3 E#2   load=0;
, I* n( g. P* ^0 T& c. h) V$ Y#22  N=12;
. M$ i7 E1 A  N$ S8 \#40  load=1;
! [2 z5 G$ B, ~2 U0 ~#2   load=0;* ?' M8 i2 i, d" A: D( D6 O. U
end
) }' V  y0 P9 a; ^/ G+ r; @1 ^& i5 w) _$ Z) z6 [6 e
endmodule

評分

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

查看全部評分

3#
發表於 2007-8-28 10:56:04 | 只看該作者
還有一份講義可以參考看看
/ f6 s6 P% \4 l/ N希望對大大有所幫助3 B3 y! k: P, M; k

$ K/ }( B  I! q, h
" O  C( \8 X  M: t* Y) B3 V
2 C3 m/ D  X" X
遊客,如果您要查看本帖隱藏內容請回復

本帖子中包含更多資源

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

x

評分

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

查看全部評分

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

回復 3# 的帖子

感謝各位大大的資料 對初學者 真是受益良多
17#
發表於 2008-6-2 11:53:25 | 只看該作者
感謝大大的分享∼∼∼∼
. Y! B" d+ `* @  {6 ^9 Q因為你的無私,讓大家能學到許多知識
18#
發表於 2008-6-2 22:10:25 | 只看該作者
我也想看看大大分享的講義~~9 b! X# y1 {& Q
回覆來看看囉!!感謝蛤!!0 q- [) H& v/ t) [: @* g
因為我是初學而已!!
19#
發表於 2008-6-8 20:55:26 | 只看該作者
你是要畫電路圖的方式設計~
3 h% [5 o  X% g6 z% t  Q那畫畫卡諾圖不就好了.... 只是比寫CODE還要麻煩....
. y: J9 g! B7 E) y+ C% P因為要接邏輯閘!!
* H& r5 ^3 k3 w& H用卡諾圖化簡!!
20#
發表於 2008-7-25 14:41:52 | 只看該作者
最近剛接觸這方面的東西8 _3 C: J* g5 n  `! [( a8 y$ k

) s+ S1 t1 f+ y# A1 f剛好需要這些資料
8 C; s# S* [9 A; u" j5 ^  E: P8 q8 N3 o4 z7 O
感謝分享!!!
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-5-29 06:50 AM , Processed in 0.162521 second(s), 23 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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