Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

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

  [複製鏈接]
跳轉到指定樓層
1#
發表於 2007-8-28 10:40:06 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
如題
, R) g0 L1 r4 \: I- \6 H# Y小弟我目前在設計一個時鐘電路 需要一個記數器 不知道這個問題是不是屬於這個討論區
2 e2 c" N/ C& _6 q3 _' n如果不是麻煩版主修改一下囉# x& X' N, ]1 Z  }& b
8 s+ z5 W1 S3 O4 A+ ^; A6 K& s
目前這個記數器要能數0-9 接著就進位 然後自己reset繼續從0開始 進位後訊號再繼續由一個0-5的記數器開始記數. ^2 W% i1 s1 A3 E( b
總之就是能夠記數0-59, 個位數記數0-9, 十位數記數0-5# O$ F2 C# X# A( {
9 g, |4 k' I0 X& j9 N; B' _4 y$ a
請問各位有人有設計過這樣的電路嗎? 或是要去哪裡找相關的資料勒?1 \, f" D+ I% L
謝謝!

評分

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

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂2 踩 分享分享
2#
發表於 2007-8-28 10:52:11 | 只看該作者
原帖由 monkeybad 於 2007-8-28 10:40 AM 發表 . T0 t+ j% E, T4 p) d% o8 U" Q
如題
* \" {9 F" u* b- P/ @; \+ ~& P9 i; g' H小弟我目前在設計一個時鐘電路 需要一個記數器 不知道這個問題是不是屬於這個討論區
2 y, ~) d! y  c$ r如果不是麻煩版主修改一下囉. J" p2 P; a  Z0 t; h# I
/ ~9 o# u1 M# f) _4 C2 r) t
目前這個記數器要能數0-9 接著就進位 然後自己reset繼續從0開始 進位後訊號再繼續由一 ...
2 I& V3 l, P& f2 S' A) i

' v! a. p' f: i大大您是要寫Verilog還是電路
+ e) A( R6 h( w  ^0 F' m5 D
# |; ]# g6 A! H3 W) K  M- D先PO個RTL Code參考看看
$ E, v3 W! G) o6 F2 ^  x$ ]& F; A1 f" }% K- k6 x5 t
輸入:N clear load clk
* d* c" u( i7 ?& T0 d; `( s輸出:count
3 R) A  e* F8 b4 ~/ P8 y4 N6 }5 s/ u' c9 o
行為描述(依照優先順序)
% ~: Q& ^% C. k  A, V* R1.如果clear為1,則輸出設為為0) Q) @. m0 r. I7 W: ^; i/ g' `' h
2.如果load為1,則輸出設為N
& N$ u! o7 i1 ?) ^5 c1 {1 G3.每個時脈輸出遞增一次(BCD)
( \' v- B1 P2 a9 h4 f! E6 A4 n0 }2 @) t3 t4 l- W

  k" Y2 W( Q3 V( o$ l! x! J
0 H5 j9 W' r' `( T/ w程式碼:. z- j( q) p' c% {( L' q5 P8 f3 t
BCDcounter.v) e, v! J* p9 x; K1 I) r' d7 S
: M! t/ a$ @( a( Q  `2 z
module BCDcounter(clear,load,clk,N,count);
# @) `( a1 i! B, F! [: ainput  clear,load,clk;
% m& \' G9 @4 D# x, c# D1 ]input  [3:0] N;
& T8 b( ~; b" M  u/ toutput [3:0] count;
! r  W" t$ R* r. Nreg    [3:0] count=0;
0 T7 J8 Q' @2 R5 D) ~# h! j7 g3 B# a/ n  U0 m& Q7 g3 [
always @ (posedge clk) begin
3 h7 }! k) z) a( p- [9 O6 x  if(clear)                 //clear=1
" J5 {+ Z/ Y- y5 C$ ?" I    count=0;
- L6 N/ o: K5 d0 q5 f  else if(!clear) begin     //clear=0(共有0 1 X Z四種狀態)
& `$ n" t1 U' [8 i1 }$ {' p    if(load) begin% X1 K6 V" T7 b. T& E2 Z: e
      if(N>9)
/ K2 z1 Y7 c$ r8 y% k        count=0;
9 z' [  P* }( h! V" i$ V      else. I" K" N! [. E) ^# g; a
        count=N;
$ B3 x$ G4 v2 `* m    end
, P8 v1 q' W% \$ S" T5 x" K    else if(!load) begin$ o3 r7 X1 E$ d% n0 g/ X
      count = count+1;
5 e9 \% b( l% R3 e. C5 q- x      if(count>9)
) |, c' E+ Z, A+ X) U# ^      count=0;. ?. g+ Z3 M3 w- Y
    end7 x* m1 H* Q4 w+ Y; X- C; ~
  end
1 ?5 x# L( E( @3 S8 s/ ?end, O7 G/ K0 |2 s" h% n$ r
endmodule
- g$ @/ n) H5 |! |9 N) O5 z5 U" R4 s$ x6 Y
bcdcounter_tb.v& j: ~% m. Z# A# A& p
/ c. Y. {4 \# s
module bcdcounter_tb;
. |" |. f; k9 K" G$ ereg clear,load,clk;
) `4 I0 J  P7 U* z& ?" O. Nreg [3:0] N;
# R' n0 G" g( r7 U  H- ywire [3:0] count;' s6 y" G3 }8 p$ j  c4 d2 n, x

! ]! g: k# N* W* \% W8 yBCDcounter m1(clear,load,clk,N,count);
/ m( ~, B% q. ?. a
' h7 t: j7 J6 D; `" z1 y- e  Cinitial/ O$ X% l' J, k& e$ Q
clk=0;5 a. O+ A. ?/ _8 n# {7 S% V

. c. c- ?" k6 p9 N; walways #2 clk=~clk;( r* `/ }% Y/ R' ~( A- |
' X6 |9 c7 Q2 I, ~" a. R  M6 i
initial; K6 o/ U7 Z( @( v& x
#160 $finish;
5 A: o  P5 M- `  h4 [
1 E' Q$ g3 t, X7 Vinitial begin6 D) i3 h$ u, H( N, ]6 i: [6 y/ o
    clear=1;- f- b9 a% B9 Q! m, {, l
#4  clear=0;3 Q! \: K0 U. [5 h( E; R! R
#90 clear=1;/ u& O) {/ U" O+ U9 B1 y
#3  clear=0;% ^$ C( s$ b+ P& {" r# T/ {5 z
end' O" {% G! n" {9 O

. U! J3 k$ Q3 Sinitial begin  W2 @. L. E9 D1 y' {) I  O7 w
     N=6;load=0;: d; B# [  o1 P4 e" w& }
#58  load=1;9 D: ~, C( b0 u3 S0 m# i! q
#2   load=0;  i6 k. i+ D0 W2 r' A  z
#22  N=12;1 h4 ^) \. h: o2 W3 u
#40  load=1;! [. J8 O( {9 k* Z: I. Z" s
#2   load=0;0 K1 n  |: o8 ]- b" G9 }/ T, x, \
end) i" u3 P; v% u% j

$ ?6 T# d5 M2 ~# \' k$ r$ p/ Z% Dendmodule

評分

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

查看全部評分

3#
發表於 2007-8-28 10:56:04 | 只看該作者
還有一份講義可以參考看看
4 U, a2 E, i# F希望對大大有所幫助/ A1 k& j& p! X# y  j; T# E

# a/ c8 S, }" q2 Z& j* g9 ?* C; l9 E, v
# C8 _5 i, q9 a$ s) q! w& d: R6 j0 {% Y! y
遊客,如果您要查看本帖隱藏內容請回復

本帖子中包含更多資源

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

x

評分

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

查看全部評分

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

回復 3# 的帖子

感謝各位大大的資料 對初學者 真是受益良多
17#
發表於 2008-6-2 11:53:25 | 只看該作者
感謝大大的分享∼∼∼∼
/ `3 {, u0 k4 u9 g2 z4 y6 v, h因為你的無私,讓大家能學到許多知識
18#
發表於 2008-6-2 22:10:25 | 只看該作者
我也想看看大大分享的講義~~
- B1 V. ]7 b4 ~  ?  Y回覆來看看囉!!感謝蛤!!0 c7 K4 z% y' l8 N2 ]
因為我是初學而已!!
19#
發表於 2008-6-8 20:55:26 | 只看該作者
你是要畫電路圖的方式設計~) k0 o, H" a: G2 d: n" b
那畫畫卡諾圖不就好了.... 只是比寫CODE還要麻煩.... 5 ^" x0 Y$ h& B; z# D! v
因為要接邏輯閘!!
. z/ ]+ x& B2 F1 e' W& c* ?* R$ _" I用卡諾圖化簡!!
20#
發表於 2008-7-25 14:41:52 | 只看該作者
最近剛接觸這方面的東西* r6 C, X! `  M

, ?/ \6 u9 T' p& a/ h剛好需要這些資料! l  E, @+ m3 M! e! f# i

! P) ^/ _4 D; @; o$ u4 Y感謝分享!!!
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-5-18 01:45 PM , Processed in 0.158020 second(s), 20 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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