Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

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

  [複製鏈接]
跳轉到指定樓層
1#
發表於 2007-8-28 10:40:06 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
如題
% ?$ l( g% b* [- P2 D小弟我目前在設計一個時鐘電路 需要一個記數器 不知道這個問題是不是屬於這個討論區
+ ^1 A5 i. {7 T. I! H. \如果不是麻煩版主修改一下囉: S- f: w- E" F& G$ z; [7 ?4 d

  E* J$ R: {0 i! B7 j; U目前這個記數器要能數0-9 接著就進位 然後自己reset繼續從0開始 進位後訊號再繼續由一個0-5的記數器開始記數
1 p4 w8 i( o# x總之就是能夠記數0-59, 個位數記數0-9, 十位數記數0-59 V- W9 c- Z8 p3 Z+ B. f, M

0 n+ Y0 X' q& `  k3 h) ^! A8 {+ O) E. ~請問各位有人有設計過這樣的電路嗎? 或是要去哪裡找相關的資料勒?. ?2 P" ^- \. {! Z8 Y2 B" 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 發表
: z$ n; P/ t: i6 w. F' ?/ L! \如題
! {) _- N/ r8 O8 X2 ]2 h  n小弟我目前在設計一個時鐘電路 需要一個記數器 不知道這個問題是不是屬於這個討論區
, {3 Z5 @. c# T; i/ a& H0 A如果不是麻煩版主修改一下囉- c0 T: C/ `; j! L  x9 I7 u3 ~
6 [3 M! V! E: q5 y& x
目前這個記數器要能數0-9 接著就進位 然後自己reset繼續從0開始 進位後訊號再繼續由一 ...
0 s* J5 ^4 g; C- V

" y& J( W; ]  L/ B大大您是要寫Verilog還是電路
! ?7 U6 `& H- }* t) y  G8 b, y+ Y0 e' V
先PO個RTL Code參考看看2 W- f% B4 m0 g- c, u% ]6 Z0 a

) J* G' `0 ^, Y3 h9 m* B0 r輸入:N clear load clk
) A+ z# y# t' ]0 f輸出:count8 e* I9 ~. l2 T- f7 j# B
9 c. p0 V+ N* y# E) z& {2 N% n
行為描述(依照優先順序)( X3 I5 v* t9 c! ]; U
1.如果clear為1,則輸出設為為04 v% L6 K( k7 `$ d* q! X
2.如果load為1,則輸出設為N$ |+ Z: }' k4 d; ~8 O$ h0 L6 @0 N) Q
3.每個時脈輸出遞增一次(BCD)
1 g$ O/ N' e, b9 ^
. o( m' ^7 M7 f
6 S5 ]# {; B4 i6 E4 B
$ G+ @) v* M# F$ P程式碼:
6 h. d5 H7 _- @. h5 N# L, vBCDcounter.v
3 @" {  T& u5 T3 L5 S# F1 O5 K5 r5 i8 L0 o& H4 c
module BCDcounter(clear,load,clk,N,count);
; ?2 t2 ^( F8 h$ ~3 [1 d% T( @input  clear,load,clk;
0 d* r8 u" F0 T& a; i3 sinput  [3:0] N;
* Y8 I; d. t0 h: n8 U" Q3 Y" J; Uoutput [3:0] count;; L* T7 c" h9 Y
reg    [3:0] count=0;
% V+ {% d8 Q: d% y; B4 H( _4 B7 ]6 v6 ^# z- `4 r1 x
always @ (posedge clk) begin
2 a$ g7 [# i6 r3 d" f* L  C  if(clear)                 //clear=1
0 R* [! R/ k# i$ G/ v7 a    count=0;
% k+ A& e$ N+ |* G" C/ ]  else if(!clear) begin     //clear=0(共有0 1 X Z四種狀態)4 U; E5 q9 }' `& i' q$ o
    if(load) begin
& q' [4 Z/ F. Q) q( M      if(N>9)
4 J8 U. B: O) `$ H        count=0;7 p5 ~7 Q  x8 i, @
      else
% U4 s) `/ p8 O, p2 S" }$ M" r        count=N;4 h+ v  Q- t: t
    end9 {: D# t7 d4 g2 Q+ B
    else if(!load) begin
7 ^1 l, N/ D& Q( S2 @3 c      count = count+1;
# g! i' s" ^6 R2 W      if(count>9)
  ^& w" Q; y5 w  i      count=0;
9 j) _. ~- ?6 N# I    end
/ W1 g- L7 E3 C- _$ X' N  end
* R2 W" [; `) Vend6 a8 ^( s: m/ y  u# q/ p
endmodule$ D3 c: h7 `* B5 e
0 b" s/ {( ^  ]9 L
bcdcounter_tb.v
- d& b& P, \& _9 W8 M% i! B8 @. h" [- i3 y' }" Z2 Y4 S
module bcdcounter_tb;
# o* H2 D; W; e7 V7 N7 Preg clear,load,clk;
( c6 B0 b6 V+ B$ i' G! kreg [3:0] N;
. Y/ x7 z3 V5 z: kwire [3:0] count;
2 K: t0 d0 J- }
& M( \' s& q/ c, y) i! pBCDcounter m1(clear,load,clk,N,count);& i( y& A; i0 n: v2 [9 N6 N/ g

  e" K- h2 e7 _1 p, Ainitial( K6 P5 I% D+ f5 V- V$ ]) k
clk=0;3 ~6 E$ E. }9 R
: @5 T; U& P5 T1 B$ p
always #2 clk=~clk;
% A6 ]% D4 w1 }( U5 X  o& t6 G* G: [' ?; B( q8 m
initial1 ~. j8 ?1 E$ N6 l& p( w3 v
#160 $finish;2 @& a0 ]+ k& o

" ]0 N9 Z1 \+ M  uinitial begin2 a1 q, z6 ]5 v1 ^: G/ _. g7 m
    clear=1;
; q) v6 P# l! P, c1 j$ y/ Y#4  clear=0;
; L( E4 p' ?. G3 F9 l0 S#90 clear=1;& S# V) p: ^; D; _9 V% b
#3  clear=0;, ^9 o& s6 [/ B( W
end
, s  Y$ T- F2 W2 B* \
) A2 b0 `. ]- R. xinitial begin8 G0 x: V. c, `# c, p# T. M& s( _
     N=6;load=0;& C" p4 U- H# J& s, s
#58  load=1;  A% X) H; O' u9 d2 M
#2   load=0;
9 G" B( C2 ]! Y#22  N=12;
6 A) V# r6 j" p3 G. |( `: Y9 c. N+ Y#40  load=1;
1 n1 w& i2 o) N' p0 z9 K9 z#2   load=0;5 ?2 K! R! x0 T# o
end
; w) A4 R3 K+ p( U) k$ k/ Y2 F4 W+ m
endmodule

評分

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

查看全部評分

3#
發表於 2007-8-28 10:56:04 | 只看該作者
還有一份講義可以參考看看4 i6 @$ q0 j! y6 `# P
希望對大大有所幫助1 L# S% Q( z" j3 z- E
7 ]+ a" ^# v$ u- V

0 H- O0 }/ {( c1 F
. P7 Z+ w  f/ f
遊客,如果您要查看本帖隱藏內容請回復

本帖子中包含更多資源

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

x

評分

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

查看全部評分

4#
 樓主| 發表於 2007-8-28 11:18:33 | 只看該作者
感謝小朱仔的熱心回覆
; r6 [8 G' v! Q; ~不過我電路要自己畫 還有我不會用Verilog耶. J" F6 I- w# B6 ^5 t
現在主要是要有電路圖 可以用Hspice模擬的那種
- l1 `; M; U4 O8 g另外希望inverter越少越好 因為要求要省電! 還有要自己layout!, D8 K1 Q+ i+ x! ^

7 w; Q9 \6 [" c5 X2 \4 ^樓上那份文件好像裡面有寫到 趕快研究一下! 感謝分享!
: ?$ `  W$ ?* k4 B  }: A% i! s0 q
& T! r0 {& L" f) F$ d2 N6 I[ 本帖最後由 monkeybad 於 2007-8-28 11:23 AM 編輯 ]
5#
發表於 2007-8-28 16:05:34 | 只看該作者
你那個要自己動手畫CMOS電路吧...
9 S4 E( E. B/ b6 k) d寫code習慣了, 真的很不想動手再做這樣的事, 不過推完booling equation後, 直接用Cmos畫出來不就好了???
& v  O$ n7 G+ [" b# G" d沒錯吧
6#
 樓主| 發表於 2007-8-30 14:21:06 | 只看該作者
恩恩 不過booling eq好像是在推導一些輸入輸出的條件9 A; |6 d; F( P% a

& x$ a. _& k5 L4 D' K記數器參考一些資料後 找到一個用ripple counter下去修改的
$ q4 q2 T5 B$ F+ rripple counter就是用負緣觸發的T型正反器串接在一起 + f' I2 e$ y# `  X) ^1 F5 {
接著開始從0數到9 然後數到10的時候
1 u# k  ?( X; W, `+ m0 A6 |就reset重新從0在開始數
7#
發表於 2007-9-3 15:08:06 | 只看該作者
ripper counter真不是個好主意, 不過要看應用, 在有些地方用時倒是好東東...
8#
發表於 2007-10-23 11:19:59 | 只看該作者
我很好奇某大大說的講義  k& R/ G0 k& O) ]' y: p% H  P* p
給我看看寫什麼吧
9#
發表於 2007-10-23 20:26:00 | 只看該作者
我這裡有時鐘的電路圖..以送去CIC下線..可提供給大大參考看看!
10#
發表於 2007-10-30 01:52:19 | 只看該作者
我看一看那個問題,要我聯想到CODE,一時還想不起來,真是太久沒有寫程式哩!
5 B+ a; F% t/ T0 G5 Q8 i  |# C( p1 {看到CODE,有一點恍然大悟的感覺,又接著看,害我也想看那份相關資料囉!!
11#
發表於 2007-11-9 14:57:32 | 只看該作者
BCD conuter 應該是對自己有所幫助
12#
發表於 2007-11-14 23:29:59 | 只看該作者
bcd counter對初學者的我而言真的好難) p/ O( ^+ M- L3 s' t+ N+ l9 o
謝謝小朱仔提供的code囉
13#
發表於 2007-11-17 16:58:54 | 只看該作者
大大別忘了給小朱仔 "感謝"4 z+ @  C4 Q9 C

8 F4 h: o$ S8 F% d6 ?  i按評分, 就可以給感謝了....
14#
發表於 2008-2-22 17:34:54 | 只看該作者
Let see the shared material. THX.
15#
發表於 2008-4-24 07:28:10 | 只看該作者
幕讲义之名而来,呵呵勿见怪啦.                                              + K7 H- a% W$ ~% Q  p# H: S
感谢
16#
發表於 2008-5-21 10:42:39 | 只看該作者

回復 3# 的帖子

感謝各位大大的資料 對初學者 真是受益良多
17#
發表於 2008-6-2 11:53:25 | 只看該作者
感謝大大的分享∼∼∼∼7 S8 p7 _7 Q. f. A: m/ x
因為你的無私,讓大家能學到許多知識
18#
發表於 2008-6-2 22:10:25 | 只看該作者
我也想看看大大分享的講義~~; o, g: o+ K* T
回覆來看看囉!!感謝蛤!!1 a8 C& y- K0 u6 |; e1 c
因為我是初學而已!!
19#
發表於 2008-6-8 20:55:26 | 只看該作者
你是要畫電路圖的方式設計~
) h7 e' u' J9 J0 Y' ^$ M* U那畫畫卡諾圖不就好了.... 只是比寫CODE還要麻煩.... - i( h* d' ?4 u) c
因為要接邏輯閘!! $ x; P( w% L# B: r
用卡諾圖化簡!!
20#
發表於 2008-7-25 14:41:52 | 只看該作者
最近剛接觸這方面的東西
" E% h! D/ N9 y$ o% B6 E1 A$ ?3 |4 p
. a3 c. K1 w  L) O0 [1 s: `. L9 [剛好需要這些資料
: |5 [# ]# t$ m# P( s
. K- B0 B' P0 l5 [' K9 U* U感謝分享!!!
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-6-14 08:58 PM , Processed in 0.164521 second(s), 19 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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