Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

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

  [複製鏈接]
跳轉到指定樓層
1#
發表於 2007-8-28 10:40:06 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
如題
) s( u6 [5 f( `: X* X小弟我目前在設計一個時鐘電路 需要一個記數器 不知道這個問題是不是屬於這個討論區- ?) f/ Y6 ~- ~
如果不是麻煩版主修改一下囉
5 j  X9 `; l: j) a+ r1 `
% M' C1 r7 }0 ~目前這個記數器要能數0-9 接著就進位 然後自己reset繼續從0開始 進位後訊號再繼續由一個0-5的記數器開始記數  Y. t! i% _2 @( B
總之就是能夠記數0-59, 個位數記數0-9, 十位數記數0-52 [# ^4 R2 Q9 }- ]

6 X; z- d" e2 p5 o) X請問各位有人有設計過這樣的電路嗎? 或是要去哪裡找相關的資料勒?* \  d# y7 T& S- T; N/ d) f
謝謝!

評分

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

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂2 踩 分享分享
2#
發表於 2007-8-28 10:52:11 | 只看該作者
原帖由 monkeybad 於 2007-8-28 10:40 AM 發表
) `8 _, C' q. k0 F8 D: Q9 K如題
; {' R% F/ l0 h) B1 m0 c小弟我目前在設計一個時鐘電路 需要一個記數器 不知道這個問題是不是屬於這個討論區
( X6 L* g, T* Q* O如果不是麻煩版主修改一下囉
$ Z& x% S0 o: h2 P& z6 K( a! |! O3 n! A6 ?
目前這個記數器要能數0-9 接著就進位 然後自己reset繼續從0開始 進位後訊號再繼續由一 ...
# I( @" z, G6 O# L2 I+ ]3 r% R+ o
( i0 w. o$ N  `0 C) L! F9 ~
大大您是要寫Verilog還是電路9 X& T! t0 L9 n4 Z+ O" {, M0 i

3 A. v2 N# n) N, e6 a先PO個RTL Code參考看看
3 S) Z5 N! R# f1 @- M& C% u+ J; C4 y9 e1 p$ q2 C
輸入:N clear load clk1 W2 G. e4 g8 C9 L
輸出:count
$ G( n$ k* b& a
4 n0 B1 z6 a1 G4 r6 r% H行為描述(依照優先順序)
4 |# Q% q; V) t7 _0 J6 i8 s1.如果clear為1,則輸出設為為0
; L% n" I3 _% B* @% M" [, x2.如果load為1,則輸出設為N
1 f- o) |) {, F3.每個時脈輸出遞增一次(BCD)4 x! I; q4 c8 l" z  r, W

: o- B, c" d: Z9 [5 f$ r# G3 Q8 x( G9 N7 \0 a! }: c
, \# w+ e' q7 |
程式碼:9 W9 x/ E) z% F1 `0 R! `
BCDcounter.v
: c0 \0 m8 H' q) T% s$ E) c: S( ?- u; w0 |- h
module BCDcounter(clear,load,clk,N,count);
+ j0 P0 ]& j' |6 j6 Ainput  clear,load,clk;
! y# D: P% F5 i: S9 dinput  [3:0] N;
, t7 \& d% n" r# B" joutput [3:0] count;
2 Z$ S9 \% Z, R/ h7 Vreg    [3:0] count=0;
5 z+ Y, O* {2 T
3 y/ |$ v9 }6 h# g' Dalways @ (posedge clk) begin! F. R! g, @! d
  if(clear)                 //clear=1
+ q# |& ^% \* C; E5 p. X    count=0;. q9 c' B3 f. }4 Q1 f0 V
  else if(!clear) begin     //clear=0(共有0 1 X Z四種狀態). i8 j! d$ K' W
    if(load) begin
/ V, P- g2 ~* t# @6 {      if(N>9)" N% u. Q( p3 q5 y1 F
        count=0;
9 U2 O6 R7 S* V! Y; f8 a      else
; U( z% M0 P4 ]# O% d5 S# l3 O2 l        count=N;
; u/ I, x; V, s    end
' u. H/ a# f/ a    else if(!load) begin
+ I7 N9 }% b5 A# e" O* B      count = count+1;
" j  i+ f# n& O( {( u      if(count>9)
4 F9 w8 m' p6 [, i& S- e8 e      count=0;' P4 r+ p# n( J( S' K
    end: O# ?  g7 [. a0 i' T1 Q
  end  e8 }3 m: p: i+ S: C
end
( u! Q; q, ^0 n( X) o' x' U- Eendmodule) X( ?; _7 n$ s; `2 n

+ @* ?2 o9 X! N1 ?+ G) Rbcdcounter_tb.v
! {/ z/ T  ~9 |* l# J! i# ~! r+ g: a( p6 ]# g7 U
module bcdcounter_tb;
) w7 ?2 k5 M  t  h! z8 Dreg clear,load,clk;
; `, @3 q- U) \8 k- S% ireg [3:0] N;
, M- _+ ^( P# Y( g0 s* Wwire [3:0] count;
( t( d7 {  N! F8 j$ ]. L6 _5 @% l6 ?9 X  I& ?. r. {( Y
BCDcounter m1(clear,load,clk,N,count);
# M; l, h! a6 {
/ o# v* G, z* M+ v4 V1 q- Tinitial! Z/ _$ s- v. t9 g, y6 A
clk=0;/ g3 ^, K- _7 ^" I# s( J) W
/ M' V- W1 s; m
always #2 clk=~clk;
- Q+ z  M/ G, S. X" u3 K6 U0 u
& ?7 g+ k6 a: }" [* y7 \7 v) L  linitial
6 ?3 L+ ~( R6 m#160 $finish;0 G3 @5 `" g; t( u4 d

- c+ r4 U! k: yinitial begin$ q- `0 r6 b" l1 h2 [8 i
    clear=1;
; V, D% u7 Y" F2 X6 G7 W6 p#4  clear=0;
7 m) ^: G: I/ W- B#90 clear=1;
; E+ o2 e9 V; t  r4 A" Q0 L8 \4 Y; a#3  clear=0;
5 d5 ^$ I( D9 B5 Q9 a( dend% k8 K5 ?7 o5 Z8 }; @
9 H8 H+ W$ h1 G1 b* m8 \% b0 y
initial begin5 e! N0 J; M9 H" i) |
     N=6;load=0;0 i" G7 i3 M8 K- I4 t
#58  load=1;
1 q: o7 C. a2 X" z$ c#2   load=0;/ P" G+ A3 C6 \. I1 K  e
#22  N=12;, ]1 u2 W3 b/ q4 O. A8 L
#40  load=1;: V! F/ G2 u* l6 {, s  L
#2   load=0;
! x, t- G" j) Z* c% G7 }# Send- S8 C4 N9 X" n2 z6 a  n. a; B

/ w  K  p; Z* ]" F+ l6 {endmodule

評分

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

查看全部評分

3#
發表於 2007-8-28 10:56:04 | 只看該作者
還有一份講義可以參考看看8 \* E& V1 r4 N  y
希望對大大有所幫助9 c8 f, ^/ p" [8 m  x4 i
+ W; i( v4 o! s5 X
6 H5 n5 A" Y/ d) D0 U; O

7 d, K% @; O1 c% }) \: e
遊客,如果您要查看本帖隱藏內容請回復

本帖子中包含更多資源

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

x

評分

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

查看全部評分

4#
 樓主| 發表於 2007-8-28 11:18:33 | 只看該作者
感謝小朱仔的熱心回覆
- p, z% T& v8 i$ |7 R不過我電路要自己畫 還有我不會用Verilog耶3 |* k  y, H1 ?  X1 ~1 T& F5 t& x
現在主要是要有電路圖 可以用Hspice模擬的那種$ p) a; J8 y' Q3 ^- n4 [) f# D
另外希望inverter越少越好 因為要求要省電! 還有要自己layout!
5 d! O  w% ?/ X% H7 A6 j( H! d2 X$ _! f( S7 R/ L0 P7 V
樓上那份文件好像裡面有寫到 趕快研究一下! 感謝分享!
7 j, K- J6 k0 o3 J* N
% H, d8 J+ D( [) ?. e; _- j[ 本帖最後由 monkeybad 於 2007-8-28 11:23 AM 編輯 ]
5#
發表於 2007-8-28 16:05:34 | 只看該作者
你那個要自己動手畫CMOS電路吧...
# N! l& |6 b. v6 r2 ]寫code習慣了, 真的很不想動手再做這樣的事, 不過推完booling equation後, 直接用Cmos畫出來不就好了???
7 g$ s& \; `/ p沒錯吧
6#
 樓主| 發表於 2007-8-30 14:21:06 | 只看該作者
恩恩 不過booling eq好像是在推導一些輸入輸出的條件2 i) l+ E6 q- X! O: o/ l3 \

* F) o& a/ Y  {/ d% H) A, I- Y記數器參考一些資料後 找到一個用ripple counter下去修改的; I* p* A3 x+ Q+ _' e5 w6 w
ripple counter就是用負緣觸發的T型正反器串接在一起
  I9 U8 M5 f" k3 E( D接著開始從0數到9 然後數到10的時候/ N; d. W- Y% A  h; T
就reset重新從0在開始數
7#
發表於 2007-9-3 15:08:06 | 只看該作者
ripper counter真不是個好主意, 不過要看應用, 在有些地方用時倒是好東東...
8#
發表於 2007-10-23 11:19:59 | 只看該作者
我很好奇某大大說的講義
* \- m* w) k. Z9 E給我看看寫什麼吧
9#
發表於 2007-10-23 20:26:00 | 只看該作者
我這裡有時鐘的電路圖..以送去CIC下線..可提供給大大參考看看!
10#
發表於 2007-10-30 01:52:19 | 只看該作者
我看一看那個問題,要我聯想到CODE,一時還想不起來,真是太久沒有寫程式哩!
3 D" n( F, q) t- q& m/ ~3 f4 ^2 \看到CODE,有一點恍然大悟的感覺,又接著看,害我也想看那份相關資料囉!!
11#
發表於 2007-11-9 14:57:32 | 只看該作者
BCD conuter 應該是對自己有所幫助
12#
發表於 2007-11-14 23:29:59 | 只看該作者
bcd counter對初學者的我而言真的好難+ W) a2 c, [- V0 N7 w
謝謝小朱仔提供的code囉
13#
發表於 2007-11-17 16:58:54 | 只看該作者
大大別忘了給小朱仔 "感謝"
) n6 h, |) D# E% o) s- x& @9 m7 w$ c# r0 `& ~
按評分, 就可以給感謝了....
14#
發表於 2008-2-22 17:34:54 | 只看該作者
Let see the shared material. THX.
15#
發表於 2008-4-24 07:28:10 | 只看該作者
幕讲义之名而来,呵呵勿见怪啦.                                             
$ E; @: C5 t, Q- h5 K; d感谢
16#
發表於 2008-5-21 10:42:39 | 只看該作者

回復 3# 的帖子

感謝各位大大的資料 對初學者 真是受益良多
17#
發表於 2008-6-2 11:53:25 | 只看該作者
感謝大大的分享∼∼∼∼
' @7 ~& Z* I& a( l; ]5 L- k因為你的無私,讓大家能學到許多知識
18#
發表於 2008-6-2 22:10:25 | 只看該作者
我也想看看大大分享的講義~~8 D+ t: ]# v7 C* Y5 J& M7 C2 G
回覆來看看囉!!感謝蛤!!' w: B, v0 H1 K
因為我是初學而已!!
19#
發表於 2008-6-8 20:55:26 | 只看該作者
你是要畫電路圖的方式設計~
5 R- |/ u! m# x  U% p) h9 w那畫畫卡諾圖不就好了.... 只是比寫CODE還要麻煩....
8 x; J2 ^8 w+ y( K因為要接邏輯閘!! 3 o8 H* v; F) N
用卡諾圖化簡!!
20#
發表於 2008-7-25 14:41:52 | 只看該作者
最近剛接觸這方面的東西  w, r5 ~6 @* @) g, p) x

( N2 j- P  m0 S% u+ Z" k2 T剛好需要這些資料4 s; p/ i$ j4 R$ Y/ b6 M
) ]3 K& V8 E2 G6 K, ?
感謝分享!!!
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-6-8 08:54 AM , Processed in 0.157520 second(s), 20 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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