Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

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

  [複製鏈接]
跳轉到指定樓層
1#
發表於 2007-8-28 10:40:06 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
如題
: R9 Y% Y& Y5 u% ]: A0 S小弟我目前在設計一個時鐘電路 需要一個記數器 不知道這個問題是不是屬於這個討論區, c: `5 F2 g$ l9 [
如果不是麻煩版主修改一下囉
5 X5 a$ S0 N9 ^
9 C8 E! A; Y& D+ j4 ~& ]+ O/ g目前這個記數器要能數0-9 接著就進位 然後自己reset繼續從0開始 進位後訊號再繼續由一個0-5的記數器開始記數
* G) X7 [9 x6 `  Q. d! |8 O總之就是能夠記數0-59, 個位數記數0-9, 十位數記數0-5( {0 I* }+ B" a- v5 n; ^

8 @7 c8 k3 D! x' {請問各位有人有設計過這樣的電路嗎? 或是要去哪裡找相關的資料勒?2 Q; f+ N, G: v. c/ |( ]( d
謝謝!

評分

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

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂2 踩 分享分享
2#
發表於 2007-8-28 10:52:11 | 只看該作者
原帖由 monkeybad 於 2007-8-28 10:40 AM 發表
2 P2 B: d/ Q8 q% I% k5 m- g如題
* I5 }4 g4 R2 \' ]/ m小弟我目前在設計一個時鐘電路 需要一個記數器 不知道這個問題是不是屬於這個討論區  B9 B' i5 t5 c) B. ?3 L$ f
如果不是麻煩版主修改一下囉
! l1 p6 a$ M, |- _- F) d7 G5 g$ {& y' {6 P2 p/ u2 S9 e  t
目前這個記數器要能數0-9 接著就進位 然後自己reset繼續從0開始 進位後訊號再繼續由一 ...
! l) H+ u+ v/ h
: W' h$ I6 \2 E5 n
大大您是要寫Verilog還是電路6 [. W; f0 L- \( C/ Y

; {, @/ n+ X, P6 ^6 e* U先PO個RTL Code參考看看4 U  Z; e5 x* {; m

! @: {) \& w) w' k輸入:N clear load clk
4 c2 M; p; n, Q; `9 M( q* s輸出:count; h, R* q; a" R
6 ^  I& A& {5 G1 I
行為描述(依照優先順序)
9 Q6 b2 G- ?) y) ?7 \0 |1.如果clear為1,則輸出設為為0
+ }3 r4 W3 n( [& \4 S2.如果load為1,則輸出設為N
6 s. b" d* j5 l$ c6 {3.每個時脈輸出遞增一次(BCD)( c3 e( y% n1 H' s
& ]+ Z) u7 p' m. }4 j

; M+ E6 o# u0 F  w# p% c, q4 V7 f1 `: X' n8 p3 O
程式碼:1 s2 T( n# D$ _! k, I! P
BCDcounter.v: J" N8 v# h& ?7 e8 w# z! N
6 ~: d. Q+ b' M9 y
module BCDcounter(clear,load,clk,N,count);
' c+ i  ~, L1 D& {  F1 Q, j( vinput  clear,load,clk;1 g8 V3 M5 ?8 O5 U
input  [3:0] N;: }; e7 ]; ]' [% C
output [3:0] count;6 ]0 J+ y% r; n& e+ n9 p4 C/ L0 |
reg    [3:0] count=0;
% e) _( Y! w( G5 y' [( X  F2 V  D- |# v$ E% u4 ]
always @ (posedge clk) begin/ x/ u- }! V7 w, T) S# j0 Y
  if(clear)                 //clear=1
( ^; l1 S8 W/ ~  E, D- \2 ]1 E    count=0;
) L. g/ @; ?. z  else if(!clear) begin     //clear=0(共有0 1 X Z四種狀態)
. U: b$ H1 N( x, I    if(load) begin, ]/ `0 K1 ?* x4 t( O/ g! L
      if(N>9)7 C7 E, ?1 q  C( g0 ~
        count=0;
" F' k- y$ w$ x, D5 W      else9 Q2 q' i( @  a8 X; X* _; {  u
        count=N;
  }1 M  d) E+ c3 T    end
, ]% E2 _" |- Q' m5 K$ E    else if(!load) begin
5 a5 {7 `: R9 W* Z- [' R      count = count+1;7 v# m9 I# Z6 N( w* h
      if(count>9)4 A) X! _6 l5 m7 `0 C2 k
      count=0;) I/ L! g, `) K1 u8 K% ^, u
    end; u& d& y3 q) F3 \& ]- k
  end  j, X8 `) b% W1 X# |  G
end
4 d' h3 U: Z  Tendmodule
  G/ B- f/ a7 A# L* h
( \5 F: d+ i, x! Y; S( {bcdcounter_tb.v
5 \4 N) E5 ^; W) C
: i* H$ c  d: A9 Umodule bcdcounter_tb;4 K# s8 c9 A9 N: U) \
reg clear,load,clk;% [. z4 I3 L: D- e; a* h+ g
reg [3:0] N;  o4 C; |; [8 Q2 E
wire [3:0] count;- x1 p1 }9 K- _/ y2 X5 t
; e7 j. U% F3 B. M2 R
BCDcounter m1(clear,load,clk,N,count);6 `+ d7 f6 B1 j' Q* ^& M, C, a
) f! M- L- y4 }9 R5 Q
initial
- L! r9 G1 E4 y8 h6 Oclk=0;8 I4 t) t3 P9 q6 B" H5 r% B. L0 ^& p

- W9 O+ y& f& t  K' yalways #2 clk=~clk;
+ @! H7 u  j) P( Q1 Z: c
5 [( y; c/ s6 w/ ]3 o1 ^; xinitial
$ k" H3 J) L9 N* I! a#160 $finish;' ~3 \1 \' X5 A) u  \5 J6 Y

! u5 `! S$ L* t- Y9 K* f0 Ainitial begin
% t+ x- D8 s& P$ M    clear=1;
% a! f' `) _' a' n; ?$ O#4  clear=0;  A+ K4 R- e, I
#90 clear=1;& ~7 J6 M4 a$ S/ P9 {
#3  clear=0;! h5 g7 b, n" Y# _; M
end+ J' p( Y! L- Q

+ e( T. U5 Q# kinitial begin; x& X# p! Z- B- _# f% `
     N=6;load=0;
% I' ~' K$ h3 R3 \' Q#58  load=1;
7 E& E; W# S+ W% K+ g0 ~#2   load=0;- a2 [9 n$ `/ S) i' q5 h: Y$ x' T
#22  N=12;( x  x  h- a: B% x
#40  load=1;+ M/ ?1 F5 X8 j9 Q
#2   load=0;) S4 l6 s# Q- J4 H) D5 ]! D( g
end
  x8 ^! O& h2 c/ ~+ X+ B: u
, P4 Q, H6 l/ I8 L( sendmodule

評分

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

查看全部評分

3#
發表於 2007-8-28 10:56:04 | 只看該作者
還有一份講義可以參考看看
$ }  ~: g( U) U: M. {4 W7 f希望對大大有所幫助
& @/ ^" ^# _7 Y4 `% I  F
& b* o/ O) a# y$ J
# L# L& q* [) n1 Z* U2 c4 e
! S) Y( g3 }% [
遊客,如果您要查看本帖隱藏內容請回復

本帖子中包含更多資源

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

x

評分

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

查看全部評分

4#
 樓主| 發表於 2007-8-28 11:18:33 | 只看該作者
感謝小朱仔的熱心回覆
9 R' h# g5 d( w; j不過我電路要自己畫 還有我不會用Verilog耶0 o' ?# }2 o( Q7 Y
現在主要是要有電路圖 可以用Hspice模擬的那種+ c6 ?" b6 C% {# j
另外希望inverter越少越好 因為要求要省電! 還有要自己layout!3 l5 L: j7 n9 A8 W

6 Q2 y  ~3 h9 E# E: E  \樓上那份文件好像裡面有寫到 趕快研究一下! 感謝分享!, j% e% L# G% m$ q8 T8 \$ @

" [! ~1 I- }) }* B( i2 C! t, u  R[ 本帖最後由 monkeybad 於 2007-8-28 11:23 AM 編輯 ]
5#
發表於 2007-8-28 16:05:34 | 只看該作者
你那個要自己動手畫CMOS電路吧... " x. j% S/ x9 _4 f- i( H; R  ]1 Q' j
寫code習慣了, 真的很不想動手再做這樣的事, 不過推完booling equation後, 直接用Cmos畫出來不就好了???8 X9 N8 F- s) {+ l" _7 P) y
沒錯吧
6#
 樓主| 發表於 2007-8-30 14:21:06 | 只看該作者
恩恩 不過booling eq好像是在推導一些輸入輸出的條件$ i5 a1 Y5 B5 q; b4 g

+ K. c. c4 f9 v記數器參考一些資料後 找到一個用ripple counter下去修改的4 V4 a6 K: g+ i& l/ \2 b) Q
ripple counter就是用負緣觸發的T型正反器串接在一起
* _. a& c: E4 E0 r- L接著開始從0數到9 然後數到10的時候/ h' S7 m) [' H: w- Q% j
就reset重新從0在開始數
7#
發表於 2007-9-3 15:08:06 | 只看該作者
ripper counter真不是個好主意, 不過要看應用, 在有些地方用時倒是好東東...
8#
發表於 2007-10-23 11:19:59 | 只看該作者
我很好奇某大大說的講義! P1 S5 X0 k( z; z: B1 }) Q
給我看看寫什麼吧
9#
發表於 2007-10-23 20:26:00 | 只看該作者
我這裡有時鐘的電路圖..以送去CIC下線..可提供給大大參考看看!
10#
發表於 2007-10-30 01:52:19 | 只看該作者
我看一看那個問題,要我聯想到CODE,一時還想不起來,真是太久沒有寫程式哩!
, y3 c+ E* e) E# j; P! o7 J5 f, y看到CODE,有一點恍然大悟的感覺,又接著看,害我也想看那份相關資料囉!!
11#
發表於 2007-11-9 14:57:32 | 只看該作者
BCD conuter 應該是對自己有所幫助
12#
發表於 2007-11-14 23:29:59 | 只看該作者
bcd counter對初學者的我而言真的好難% c' a1 o3 ?* m8 ]+ m  U
謝謝小朱仔提供的code囉
13#
發表於 2007-11-17 16:58:54 | 只看該作者
大大別忘了給小朱仔 "感謝"
; h3 P; F9 Y) M9 j* O6 O& `) R* \7 ~$ R* g! K4 O
按評分, 就可以給感謝了....
14#
發表於 2008-2-22 17:34:54 | 只看該作者
Let see the shared material. THX.
15#
發表於 2008-4-24 07:28:10 | 只看該作者
幕讲义之名而来,呵呵勿见怪啦.                                              0 w* `! m% s. U
感谢
16#
發表於 2008-5-21 10:42:39 | 只看該作者

回復 3# 的帖子

感謝各位大大的資料 對初學者 真是受益良多
17#
發表於 2008-6-2 11:53:25 | 只看該作者
感謝大大的分享∼∼∼∼
* }/ I7 r: W. m8 q: g: ~因為你的無私,讓大家能學到許多知識
18#
發表於 2008-6-2 22:10:25 | 只看該作者
我也想看看大大分享的講義~~2 `+ x( l) I2 B! d( k
回覆來看看囉!!感謝蛤!!
8 s; o! x% X  e' C4 s因為我是初學而已!!
19#
發表於 2008-6-8 20:55:26 | 只看該作者
你是要畫電路圖的方式設計~3 T4 M8 R' M% N1 _: `. z
那畫畫卡諾圖不就好了.... 只是比寫CODE還要麻煩.... 6 ~* i& M- V. q# @
因為要接邏輯閘!! $ C) J! d1 W2 o) s
用卡諾圖化簡!!
20#
發表於 2008-7-25 14:41:52 | 只看該作者
最近剛接觸這方面的東西
  \2 ^7 }. }) e5 Z$ Z" u/ u- N* j' T) p# T+ ^* Y
剛好需要這些資料2 b4 X$ z7 v2 y* ^

) M" ?2 q" y: G2 p感謝分享!!!
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-6-5 11:22 PM , Processed in 0.145018 second(s), 19 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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