JPH09232946A - カウンタ - Google Patents

カウンタ

Info

Publication number
JPH09232946A
JPH09232946A JP8038237A JP3823796A JPH09232946A JP H09232946 A JPH09232946 A JP H09232946A JP 8038237 A JP8038237 A JP 8038237A JP 3823796 A JP3823796 A JP 3823796A JP H09232946 A JPH09232946 A JP H09232946A
Authority
JP
Japan
Prior art keywords
counter
bit
signal
count value
input
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP8038237A
Other languages
English (en)
Inventor
Takehiko Shimomura
武彦 下村
Shinsuke Abe
信介 阿部
Yoshikazu Sato
由和 佐藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Renesas Design Corp
Mitsubishi Electric Corp
Original Assignee
Renesas Design Corp
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Renesas Design Corp, Mitsubishi Electric Corp filed Critical Renesas Design Corp
Priority to JP8038237A priority Critical patent/JPH09232946A/ja
Priority to US08/668,130 priority patent/US5737381A/en
Priority to DE19635281A priority patent/DE19635281C2/de
Priority to KR1019960047122A priority patent/KR100189765B1/ko
Publication of JPH09232946A publication Critical patent/JPH09232946A/ja
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K21/00Details of pulse counters or frequency dividers
    • H03K21/38Starting, stopping or resetting the counter
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K23/00Pulse counters comprising counting chains; Frequency dividers comprising counting chains
    • H03K23/64Pulse counters comprising counting chains; Frequency dividers comprising counting chains with a base or radix other than a power of two
    • H03K23/66Pulse counters comprising counting chains; Frequency dividers comprising counting chains with a base or radix other than a power of two with a variable counting base, e.g. by presetting or by adding or suppressing pulses
    • H03K23/662Pulse counters comprising counting chains; Frequency dividers comprising counting chains with a base or radix other than a power of two with a variable counting base, e.g. by presetting or by adding or suppressing pulses by adding or suppressing pulses

Landscapes

  • Microcomputers (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

(57)【要約】 【課題】 繰り返しカウントするカウント値の範囲を変
更できるカウンタの小型化を図ること。 【解決手段】 1ビットカウンタ2aのキャリー信号を入
力すべき1ビットカウンタ2bと、1ビットカウンタ2bの
キャリー信号を一入力端子へ入力すべきAND 回路4と、
AND 回路4から出力されるキャリー信号を入力すべき1
ビットカウンタ2cと、AND 回路4の論理を成立, 不成立
にすべき信号をAND 回路4の他入力端子へ入力するレジ
スタ3とを備える。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、繰り返しカウント
するカウント値の範囲を変更できるカウンタに関するも
のである。
【0002】
【従来の技術】従来のカウンタは、ハードウェアによっ
てビット長が定まり、カウンタがアップカウントする場
合は初期値である最小値から最大値までをカウントした
後、再び初期値に戻って同様のカウント動作を繰り返
す。そのため、カウンタが繰り返しカウントするカウン
ト値の範囲を変更するためには、カウンタにその機能を
実現するハードウェアを付加する必要がある。
【0003】図6は、繰り返しカウントするカウント値
の範囲を変更できる従来のカウンタの構成を示すブロッ
ク図である。1ビットカウンタ2a、1ビットカウンタ2
b、1ビットカウンタ2cの各出力端子Qから出力される
カウント値は、システムバス1へ出力される。1ビット
カウンタ2aがカウント動作してキャリー信号出力端子C
o から出力するキャリー信号は、1ビットカウンタ2bの
キャリー信号入力端子Ci へ入力される。同様に1ビッ
トカウンタ2bがキャリー信号出力端子Co から出力する
キャリー信号は1ビットカウンタ2cのキャリー信号入力
端子Ci へ入力される。1ビットカウンタ2a,2b,2cの各
トリガ端子Tにはカウント動作させるクロックCLK が入
力される。
【0004】リロードレジスタ6a、リロードレジスタ6
b、リロードレジスタ6cの各入力端子DにはCPU 5によ
りシステムバス1を介してリロード値が入力される。リ
ロードレジスタ6aが保持しているリロード値は、スイッ
チSa を介して1ビットカウンタ2aの入力端子Dへ、リ
ロードレジスタ6bが保持しているリロード値は、スイッ
チSb を介して1ビットカウンタ2bの入力端子Dへ入力
される。リロードレジスタ6cが保持しているリロード値
はスイッチSc を介して1ビットカウンタ2cの入力端子
Dへ入力され。スイッチSa , Sb , Sc はリロード信
号7によりオン,オフ制御される。
【0005】次にこのカウンタの動作を説明する。スイ
ッチSa , Sb , Sc をオフ状態にして、1ビットカウ
ンタ2a,2b,2cのカウント値を各“0”に初期化すると、
3ビットのカウント値は“0, 0, 0”になる。その
後、1発目のクロックCLK が発生すると、1ビットカウ
ンタ2aのカウント値が“0”から“1”に変化し、3ビ
ットのカウント値は“0, 0, 1”になる。次に2発目
のクロックCLK が発生すると、1ビットカウンタ2aのカ
ウント値が“1”から“0”に変化し、そのときキャリ
ー信号が発生し、次段の1ビットカウンタ2bへ入力され
て、1ビットカウンタ2bのカウント値が“0”から
“1”に変化し、3ビットのカウント値は“0, 1,
0”になる。続いて3発目のクロックCLK が発生する
と、1ビットカウンタ2aのカウント値が“1”に変化
し、このときキャリー信号が発生しないので、1ビット
カウンタ2bのカウント値は“1”のままとなり、3ビッ
トのカウント値は“0, 1, 1”になる。
【0006】続いて、4発目のクロックCLK が発生する
と、1ビットカウンタ2aのカウント値が“0”に変化し
てキャリー信号が発生する。そのキャリー信号が1ビッ
トカウンタ2bへ入力されて、1ビットカウンタ2bのカウ
ント値が“1”から“0”に変化し、このとき1ビット
カウンタ2bはキャリー信号を発生させて、1ビットカウ
ンタ2cへ入力する。それにより1ビットカウンタ2cのカ
ウント値が“0”から“1”に変化して、3ビットのカ
ウント値は“1, 0, 0”になる。以後、クロックが発
生する都度同様にしてカウント動作する。それにより、
3ビットのカウント値は、 “0,0,0” “0,0,1” “0,1,0” “0,1,1” “1,0,0” “1,0,1” “1,1,0” “1,1,1” の変化をし、0〜7の数値をカウントする。
【0007】そして、1ビットカウンタ2c,2b,2aのカウ
ント値が各“1”になった後に、クロックが発生する
と、1ビットカウンタ2aのカウント値が“1”から
“0”に変化してキャリー信号が出力され、それによっ
て1ビットカウンタ2bのカウント値が“1”から“0”
に変化する。そして1ビットカウンタ2bがキャリー信号
を発生し、それによって1ビットカウンタ2cのカウント
値が“1”から“0”に変化して、3ビットのカウント
値は“0, 0, 0”になり、初期値に戻る。そして、カ
ウンタはこのような動作を繰り返す。
【0008】ここで、例えばカウントする3ビットのカ
ウント値の範囲を“1, 0, 0”から“1, 1, 1”の
範囲で繰り返しカウントしようとする場合は、システム
バス1からリロードレジスタ6c,6b,6a夫々へ各“1”,
“0”, “0”のリロード値を入力する。その後、リロ
ード信号7を発生させてスイッチSc , Sb , Sa をオ
ンさせる。そうすると、リロードレジスタ6c,6b,6aのリ
ロード値が1ビットカウンタ2c,2b,2aへ各入力されて1
ビットカウンタ2c,2b,2aのカウント値が各“1”,
“0”, “0”に、つまり3ビットのカウント初期値が
“1, 0, 0”になる。その後、クロックCLK が発生す
ると、前述した同様の動作で1ビットカウンタ2c,2b,2a
のカウント値が変化する。そして3ビットのカウント値
は “1,0,0” “1,0,1” “1,1,0” “1,1,1” の変化をする。
【0009】そして1ビットカウンタ2a,2b,2cのカウン
ト値が各“1”, “1”, “1”になったとき、CPU 5
によりリロード信号7を発生させて、スイッチSc , S
b ,Sa をオンにし、リロードレジスタ6c,6b,6aの各リ
ロード値を1ビットカウンタ2c,2b,2aへ各入力して、1
ビットカウンタ2c,2b,2aのカウント値を各“1”,
“0”, “0”にする。そして前述したカウント動作を
させ、それを繰り返すことにより4〜7の数値のカウン
トを繰り返す。
【0010】
【発明が解決しようとする課題】ところで、従来のカウ
ンタは所定のカウント値の範囲でカウント値を繰り返し
カウントする場合は、その初期値をリロードレジスタに
一度設定すれば、所定のカウント値の範囲のカウント動
作を繰り返すことができ、カウントを繰り返す都度、リ
ロード値を設定する必要がないから、リロード値の設定
のためのCPU の負荷が増加することがない。しかし、1
ビットカウンタと同数のリロードレジスタが必要であ
り、リロードレジスタが占めるパターン面積が極めて大
きいという問題がある。そこで、リロードレジスタを用
いないようにすれば、リロードレジスタが占めるパター
ン面積を削減できるが、カウント動作中、又はカウント
値がオーバフローする都度、カウント値の初期値をCPU
によって与える必要が生じて、CPU の負荷が増加する。
そのため従来のカウンタをシステムに適用する場合
は、システムの大型化が避けられず、またCPU の負荷を
増加させるという問題がある。本発明は斯かる問題に鑑
み、繰り返しカウントするカウント値の範囲を変更で
き、しかもCPU を備えたシステムの小型化が図れるとと
もに、CPU の負荷を増加させることがないカウンタを提
供することを目的とする。
【0011】
【課題を解決するための手段】第1発明に係るカウンタ
は、全ビットより少ないビット範囲のカウント値を繰り
返しカウントする動作モードを指令する手段と、指令し
た動作モードに基づいて、カウント動作で発生するキャ
リー信号又はボロー信号をマスクするマスク信号を生成
する手段と、前記マスク信号に基づいて所定ビット以上
の1ビットカウンタのカウント動作を停止させる手段と
を備えて構成する。
【0012】第1発明では、全ビットより少ない所定ビ
ット範囲のカウント値を繰り返しカウントする動作モー
ドを指令すると、指令した動作モードに応じて、カウン
ト動作で発生するキャリー信号又はボロー信号をマスク
するマスク信号を生成する。マスク信号によりキャリー
信号又はボロー信号をマスクすると、キャリー信号又は
ボロー信号が所定ビット以上の1ビットカウンタへ入力
されなくなる。そして、キャリー信号又はボロー信号を
マスクしない場合は全てのビットの1ビットカウンタが
カウント動作してカウント値が変化し、繰り返しカウン
トするカウント値の範囲が広くなる。所定ビット以上の
1ビットカウンタへ入力するキャリー信号又はボロー信
号をマスクした場合は、所定ビット以上の1ビットカウ
ンタのカウント動作が停止して、カウント値が変化しな
くなり、繰り返しカウントするカウント値の範囲が狭く
なる。これにより、マスク信号により、繰り返しカウン
トするカウント値の範囲を変更できる。
【0013】第2発明に係るカウンタは、所定ビット以
上の1ビットカウンタへ入力するキャリー信号又はボロ
ー信号を入断する入断手段と、この入断手段を入断制御
する信号を出力する入断信号出力手段とを備えて構成す
る。
【0014】第2発明では、入断信号出力手段が出力す
る入断制御の信号に応じて、入断手段が入断動作する。
入断手段が断状態になると、カウント動作で発生するキ
ャリー信号又はボロー信号を、所定ビット以上の1ビッ
トカウンタへ入力できなくなる。そして、所定ビット以
上の1ビットカウンタへキャリー信号又はボロー信号を
入力できる場合は、全ての1ビットカウンタがカウント
動作してカウント値が変化し、繰り返しカウントするカ
ウント値の範囲が広くなる。所定ビット以上の1ビット
カウンタへキャリー信号又はボロー信号を入力できない
場合は、所定ビット以上の1ビットカウンタのカウント
動作が停止して、カウント値が変化しなくなり、繰り返
しカウントするカウント値の範囲が狭くなる。これによ
り、入断信号出力手段が出力する入断制御の信号によ
り、繰り返しカウントするカウント値の範囲を変更でき
る。
【0015】
【発明の実施の形態】以下本発明を、その発明の実施の
形態を示す図面により詳述する。
【0016】〔実施の形態1〕図1は本発明に係るカウ
ンタの実施の形態1の構成を示すブロック図である。夫
々がフリップフロップである1ビットカウンタ2a、1ビ
ットカウンタ2b及び1ビットカウンタ2cの各出力端子Q
から出力されるカウント値はシステムバス1へ出力され
る。1ビットカウンタ2aがカウント動作して、そのキャ
リー信号出力端子Co から出力されるキャリー信号は、
1ビットカウンタ2bのキャリー信号入力端子Ci へ入力
される。1ビットカウンタ2bがカウント動作して、その
キャリー信号出力端子Co から出力されるキャリー信号
は、入断手段たるAND 回路4の一入力端子へ入力され
る。AND 回路4の出力信号たるキャリー信号は1ビット
カウンタ2cのキャリー信号入力端子Ci へ入力される。
1ビットカウンタ2a,2b,2cの各トリガ端子Tには、カウ
ント動作させるクロックCLK が入力される。
【0017】入断信号出力手段たるレジスタ3の入力端
子Dには、システムバス1に接続されたCPU 5から入断
データが入力される。レジスタ3が格納している入断デ
ータによる入断信号はAND 回路4の他入力端子へ入力さ
れる。レジスタ3のトリガ端子Tには、入断データを格
納するためのクロック CLK ′が入力される。そして、
1ビットカウンタ2a,2b,2cにより3ビットのカウンタが
構成される。
【0018】次にこのように構成したカウンタの動作を
説明する。CPU 5によりシステムバス1を介して“1”
の入断データをレジスタ3へ入力してレジスタ3へ格納
すると、その入断データによる“1”の入断信号がレジ
スタ3の出力端子Qから出力されてAND 回路4の他入力
端子へ入力される。いま、CPU 5により1ビットカウン
タ2c,2b,2aのカウント値を各“0”に初期化すると、3
ビットのカウント値は“0, 0, 0”になる。その後、
1発目のクロックCLK が発生すると、1ビットカウンタ
2aのカウント値が“0”から“1”に変化し、3ビット
のカウント値は“0, 0, 1”になる。
【0019】次に2発目のクロックCLK が発生すると、
1ビットカウンタ2aのカウント値が“1”から“0”に
変化し、そのときキャリー信号が発生し、そのキャリー
信号が次段の1ビットカウンタ2bのキャリー信号入力端
子Ci へ入力されて、1ビットカウンタ2bのカウント値
が“0”から“1”に変化して、3ビットのカウント値
は“0, 1, 0”になる。
【0020】続いて3発目のクロックCLK が発生する
と、1ビットカウンタ2aのカウント値が“1”に変化
し、このときキャリー信号が発生しないので、1ビット
カウンタ2bのカウント値は“1”のままとなり、3ビッ
トのカウント値は“0, 1, 1”になる。続いて4発目
のクロックCLK が発生すると、1ビットカウンタ2aのカ
ウント値が“0”に変化してキャリー信号が発生する。
そのキャリー信号が1ビットカウンタ2bのキャリー信号
入力端子Ci へ入力されて、1ビットカウンタ2bのカウ
ント値が“1”から“0”に変化し、このとき1ビット
カウンタ2bはキャリー信号を発生させて、そのキャリー
信号がAND 回路4の一入力端子へ入力される。AND 回路
4の他入力端子にはレジスタ3から“1”の入断信号が
入力されているので、AND 回路4の論理が成立し、AND
回路4からキャリー信号を出力し、このキャリー信号が
次段の1ビットカウンタ2cのキャリー信号入力端子Ci
へ入力される。
【0021】それにより1ビットカウンタ2cのカウント
値が“0”から“1”に変化して、3ビットのカウント
値は“1, 0, 0”になる。以後、クロックが発生する
都度同様にアップカウント動作をし、それにより3ビッ
トのカウント値は、 “0,0,0” “0,0,1” “0,1,0” “0,1,1” “1,0,0” “1,0,1” “1,1,0” “1,1,1” の順に変化し、0〜7の数値をアップカウントする。
【0022】そして、1ビットカウンタ2c,2b,2aのカウ
ント値が各“1”になった後に、クロックが発生する
と、1ビットカウンタ2aのカウント値が“1”から
“0”に変化してキャリー信号が発生し、それによって
1ビットカウンタ2bのカウント値が“1”から“0”に
変化する。そして、1ビットカウンタ2bがキャリー信号
を発生し、それによって1ビットカウンタ2cのカウント
値が“1”から“0”に変化して、3ビットのカウント
値は“0, 0, 0”になり、初期値に戻る。そして、カ
ウンタは、このようなアップカウント動作を繰り返し、
カウンタは0〜7の数値のアップカウントを繰り返す。
【0023】ところで、繰り返しカウントするカウント
値の範囲を4〜7の数値にする場合は、CPU 5により1
ビットカウンタ2c,2b,2aのカウント値を各“1”,
“0”,“0”にするとともに、CPU 5によりレジスタ
3に“0”の入断データを入力し格納する。そうすると
AND 回路4の他入力端子には“0”の入断信号が入力さ
れて、AND 回路4の論理が不成立になって、1ビットカ
ウンタ2bが出力するキャリー信号が1ビットカウンタ2c
に入力されなくなり、1ビットカウンタ2cがカウント動
作を停止し1ビットカウンタ2cのカウント値が“1”の
まま変化しなくなる。そして、1ビットカウンタ2a,2b
が前述したと同様のアップカウント動作をして、1ビッ
トカウンタ2b,2a のカウント値が変化して、3ビットの
カウント値は “1,0,0” “1,0,1” “1,1,0” “1,1,1” の順に変化し、1ビットカウンタ2b,2a のカウント値が
各“1”になった後のクロックCLK の発生により、前述
したと同様に1ビットカウンタ2b,2a のカウント値が各
“0”に変化して、2ビットのカウント値は“0, 0”
に戻る。つまり、3ビットのカウント値は“1, 0,
0”に戻る。
【0024】そして、カウンタはこのような動作を繰り
返し、カウンタは4〜7の数値を繰り返しカウントし、
繰り返しカウントするカウント値の範囲が狭くなる。ま
た、CPU 5により1ビットカウンタ2a,2b,2cのカウント
値を各“0”に初期化するとともに、CPU 5によりレジ
スタ3に“0”の入断データを格納すれば、1ビットカ
ウンタ2cにはキャリー信号が入力されず、1ビットカウ
ンタ2cがカウント動作を停止して、カウント値が“0”
のまま変化しなくなり、1ビットカウンタ2b,2a のカウ
ント値が変化して、3ビットのカウント値は “0,0,0” “0,0,1” “0,1,0” “0,1,1” の順に変化し、0〜3の数値のアップカウント動作を繰
り返すことになる。これによっても繰り返しカウントす
るカウント値の範囲が狭くなる。
【0025】このようなカウント値の範囲の変更は、単
一のAND 回路4及びレジスタ3を備えることにより可能
となるから、従来のように1ビットカウンタに対応づけ
た多数のリロードレジスタを必要とせず、リロードレジ
スタのパターン面積を削減できる。また、リロードレジ
スタを用いないが、カウント値がオーバフローする都
度、CPU により1ビットカウンタのカウント値を初期値
にする必要がないので、CPU5の負荷を増加させること
がない。
【0026】〔実施の形態2〕図2は本発明に係るカウ
ンタの実施の形態2の構成を示すブロック図である。1
ビットカウンタ2aのキャリー信号出力端子Co から出力
されるキャリー信号はAND 回路4の一入力端子へ入力さ
れる。AND 回路4の出力信号たるキャリー信号は1ビッ
トカウンタ2bのキャリー信号入力端子Ci へ入力され
る。1ビットカウンタ2bのキャリー信号出力端子Co
ら出力されるキャリー信号は1ビットカウンタ2cのキャ
リー信号入力端子Ci へ入力される。それ以外の構成
は、図1に示したカウンタの構成と同様となっており、
同一構成部分には同一符号を付している。
【0027】次にこのように構成したカウンタの動作を
説明する。レジスタ3に“1”の入断データを格納した
場合は、AND 回路4の他入力端子には“1”の入断信号
が入力される。いま、CPU 5により1ビットカウンタ2
c,2b,2aのカウント値を各“0”に初期化すると、1ビ
ットカウンタ2c,2b,2aのカウント値が各“0”になり、
1発目のクロックCLK が発生すると、1ビットカウンタ
2aのカウント値が“0”から“1”に変化し、3ビット
のカウント値は“0,0, 1”になり、2発目のクロッ
クが発生すると、1ビットカウンタ2aのカウント値が
“1”から“0”に変化し、そのときキャリー信号が発
生し、そのキャリー信号がAND 回路4の一入力端子へ入
力される。それによりAND 回路4の論理が成立し、AND
回路4の出力信号たるキャリー信号が1ビットカウンタ
2bのキャリー信号入力端子Ci へ入力され、1ビットカ
ウンタ2bのカウント値は“0”から“1”に変化し、3
ビットのカウント値は“0, 1, 0”に変化する。
【0028】そして、1ビットカウンタ2aのキャリー信
号を1ビットカウンタ2bへ入力でき、1ビットカウンタ
2bのキャリー信号を1ビットカウンタ2cへ入力できて、
1ビットカウンタ2a,2b,2cのカウント値が変化する。そ
のため、レジスタ3に“1”の入断データを格納した場
合は、図1のカウンタにおいてレジスタ3に“1”の入
断データを格納した場合と同様にアップカウント動作し
て、3ビットのカウント値は、 “0,0,0” “0,0,1” “0,1,0” “0,1,1” “1,0,0” “1,0,1” “1,1,0” “1,1,1” の順に変化して、0〜7の数値をカウントする。
【0029】ところで、1ビットカウンタ2c,2b,2aのカ
ウント値を各“0”に初期化すると、3ビットのカウン
ト値は“0, 0, 0”になる。レジスタ3に“0”の入
断データを格納すると、AND 回路4の他入力端子には
“0”の入断信号が入力される。それにより、AND 回路
4の論理が不成立になり、1ビットカウンタ2aのキャリ
ー信号が次段の1ビットカウンタ2bへ入力されなくな
り、それによって1ビットカウンタ2c,2b のカウント動
作が停止する。つまり1ビットカウンタ2c,2b のカウン
ト値が“0”のまま変化しなくなって、3ビットのカウ
ント値は “0,0,0” “0,0,1” の順に変化し、0〜1の数値のカウントを繰り返すこと
になり、繰り返しカウントするカウント値の範囲が最も
狭くなる。
【0030】〔実施の形態3〕図3は本発明に係るカウ
ンタの実施の形態3の構成を示すブロック図である。1
ビットカウンタ2aのボロー信号出力端子Bo から出力さ
れるボロー信号は、1ビットカウンタ2bのボロー信号入
力端子Bi へ入力される。1ビットカウンタ2bのボロー
信号出力端子Bo から出力されるボロー信号はAND 回路
4の一入力端子へ入力される。AND 回路4の出力信号た
るボロー信号は1ビットカウンタ2cのボロー信号入力端
子Bi へ入力される。それ以外の構成は図1に示したカ
ウンタと同様に構成されており、同一構成部分には同一
符号を付している。このカウンタは、図1に示すカウン
タのキャリー信号に代えて、ボロー信号を用いてダウン
カウント動作するように構成してある。
【0031】次にこのように構成したカウンタの動作を
説明する。CPU 5によりシステムバス1を介して“1”
の入断データをレジスタ3へ入力してレジスタ3へ格納
すると、その入断データによる“1”の入断信号がレジ
スタ3の出力端子Qから出力されてAND 回路4の他入力
端子へ入力される。いま、CPU 5により1ビットカウン
タ2c,2b,2aのカウント値を各“1”に初期化すると、3
ビットのカウント値は“1, 1, 1”になる。その後、
1発目のクロックCLK が発生すると、1ビットカウンタ
2aのカウント値が“1”から“0”に変化し、3ビット
のカウント値は“1, 1, 0”になる。
【0032】次に2発目のクロックCLK が発生すると、
1ビットカウンタ2aのカウント値が“0”から“1”に
変化し、そのときボロー信号が発生し、そのボロー信号
が次段の1ビットカウンタ2bのボロー信号入力端子Bi
へ入力されて、1ビットカウンタ2bのカウント値が
“1”から“0”に変化して、3ビットのカウント値は
“1, 0, 1”になる。続いて3発目のクロックCLK が
発生すると、1ビットカウンタ2aのカウント値が“0”
に変化し、このときボロー信号が発生しないので、1ビ
ットカウンタ2bのカウント値は“0”のままとなり、3
ビットのカウント値は“1, 0, 0”になる。
【0033】続いて4発目のクロックCLK が発生する
と、1ビットカウンタ2aのカウント値が“0”から
“1”に変化してボロー信号が発生する。そのボロー信
号が1ビットカウンタ2bのボロー信号入力端子Bi へ入
力されて、1ビットカウンタ2bのカウント値が“0”か
ら“1”に変化し、このとき1ビットカウンタ2bはボロ
ー信号を発生させて、そのボロー信号がAND 回路4の一
入力端子へ入力される。AND回路4の他入力端子にはレ
ジスタ3から“1”の入断信号が入力されているので、
AND 回路4の論理が成立し、AND 回路4からボロー信号
を出力し、このボロー信号が次段の1ビットカウンタ2c
のボロー信号入力端子Bi へ入力される。
【0034】それにより1ビットカウンタ2cのカウント
値が“1”から“0”に変化して、3ビットのカウント
値は“0, 1, 1”になる。以後、クロックが発生する
都度同様にダウンカウント動作をし、それにより3ビッ
トのカウント値は “1,1,1” “1,1,0” “1,0,1” “1,0,0” “0,1,1” “0,1,0” “0,0,1” “0,0,0” の順に変化し、7〜0の数値をダウンカウントする。
【0035】そして、1ビットカウンタ2c,2b,2aの各カ
ウント値が“0”になった後に、クロックが発生する
と、1ビットカウンタ2aのカウント値が“0”から
“1”に変化してボロー信号が発生し、それによって1
ビットカウンタ2bのカウント値が“0”から“1”に変
化する。そして、1ビットカウンタ2bがボロー信号を発
生し、それによって1ビットカウンタ2cのカウント値が
“0”から“1”に変化して、3ビットのカウント値は
“1, 1, 1”になり、初期値に戻る。そして、カウン
タは、このようなダウンカウント動作を繰り返し、カウ
ンタは7〜0の数値のカウントを繰り返す。
【0036】ところで、繰り返しカウントするカウント
値の範囲を7〜4の数値にする場合は、CPU 5により1
ビットカウンタ2c,2b,2aのカウント値を各“1”,
“1”,“1”にするとともに、CPU 5によりレジスタ
3に“0”の入断データを入力し格納する。そうすると
AND 回路4の他入力端子には“0”の入断信号が入力さ
れて、AND 回路4の論理が不成立になって、1ビットカ
ウンタ2bが出力するボロー信号が1ビットカウンタ2cに
入力されなくなり、1ビットカウンタ2cのカウント動作
が停止し1ビットカウンタ2cのカウント値が“1”のま
ま変化しなくなる。そして、1ビットカウンタ2a,2b が
前述したと同様のダウンカウント動作をして、1ビット
カウンタ2b,2a のカウント値が変化して、3ビットのカ
ウント値は “1,1,1” “1,1,0” “1,0,1” “1,0,0” の順に変化し、1ビットカウンタ2a,2b のカウント値が
各“0”になった後のクロックCLK の発生により、前述
したと同様に1ビットカウンタ2b,2a のカウント値が各
“1”に変化して、2ビットのカウント値は“1, 1”
に戻る。つまり、3ビットのカウント値は“1, 1,
1”に戻る。そして、カウンタはこのような動作を繰り
返し、カウンタは7〜4の数値を繰り返しカウントし、
繰り返しカウントするカウント値の範囲が狭くなる。
【0037】また、1ビットカウンタ2c,2b,2aのカウン
ト値を各“0”,“1”,“1”に初期化するととも
に、CPU 5によりレジスタ3に“0”の入断データを格
納すれば、1ビットカウンタ2cがカウント動作しなくな
り、1ビットカウンタ2cのカウント値が“0”のまま変
化しなくなり、1ビットカウンタ2b,2a のカウント値が
変化して、3ビットのカウント値は “0,1,1” “0,1,0” “0,0,1” “0,0,0” の順に変化し、3〜0の数値のダウンカウント動作を繰
り返すことになる。これによっても繰り返しカウントす
るカウント値の範囲が狭くなる。このようなカウント値
の範囲の変更は、単一のAND 回路4及びレジスタ3を備
えることにより可能となるから、従来のように1ビット
カウンタに対応づけた多数のリロードレジスタを必要と
せず、リロードレジスタのパターン面積を削減できる。
また、リロードレジスタを用いないが、カウント値がア
ンダーフローする都度、CPU により1ビットカウンタの
カウント値を初期値にする必要がないので、CPU 5の負
荷を増加させることがない。
【0038】〔実施の形態4〕図4は本発明に係るカウ
ンタの実施の形態4の構成を示すブロック図である。1
ビットカウンタ2aのボロー信号出力端子Bo から出力さ
れるボロー信号はAND 回路4の一入力端子へ入力され
る。AND 回路4の出力信号たるボロー信号は1ビットカ
ウンタ2bのボロー信号入力端子Bi へ入力される。1ビ
ットカウンタ2bのボロー信号出力端子Bo から出力され
るボロー信号は1ビットカウンタ2cのボロー信号入力端
子Bi へ入力される。それ以外の構成は、図3に示した
カウンタの構成と同様となっており、同一構成部分には
同一符号を付している。
【0039】次にこのように構成したカウンタの動作を
説明する。レジスタ3に“1”の入断データを格納した
場合は、AND 回路4の他入力端子には“1”の入断信号
が入力される。そして、CPU 5により1ビットカウンタ
2c,2b,2aのカウント値を各“1”に初期化した後、1発
目のクロックCLK が発生すると、1ビットカウンタ2aの
カウント値が“1”から“0”に変化し、3ビットのカ
ウント値は“1, 1, 0”になり、2発目のクロックが
発生すると、1ビットカウンタ2aのカウント値が“0”
から“1”に変化し、そのときボロー信号が発生し、そ
のボロー信号がAND 回路4の一入力端子へ入力される。
それにより、AND 回路4の論理が成立し、AND 回路4の
出力信号たるボロー信号が1ビットカウンタ2bのボロー
信号入力端子Bi へ入力され、1ビットカウンタ2bのカ
ウント値は“1”から“0”に変化し、3ビットのカウ
ント値は“1, 0, 1”に変化する。
【0040】そして、1ビットカウンタ2aのボロー信号
を1ビットカウンタ2bへ入力でき、1ビットカウンタ2b
のボロー信号を1ビットカウンタ2cへ入力できて、1ビ
ットカウンタ2c,2b,2aのカウント値が変化する。そのた
め、レジスタ3に“1”の入断データを格納した場合
は、図3のカウンタにおいてレジスタ3に“1”の入断
データを格納した場合と同様にダウンカウント動作し
て、3ビットのカウント値は、 “1,1,1” “1,1,0” “1,0,1” “1,0,0” “0,1,1” “0,1,0” “0,0,1” “0,0,0” の順に変化して、7〜0の数値をカウントする。
【0041】ところで、1ビットカウンタ2c,2b,2aのカ
ウント値を各“1”に初期化するとともに、レジスタ3
に“0”の入断データを格納すると、AND 回路4の他入
力端子には“0”の入断信号が入力される。それによ
り、AND 回路4の論理が不成立になり、1ビットカウン
タ2aのボロー信号が次段の1ビットカウンタ2bへ入力さ
れなくなり、1ビットカウンタ2bのボロー信号も1ビッ
トカウンタ2cへ入力されなくなって、1ビットカウンタ
2c,2b がカウント動作しなくなる。つまり、1ビットカ
ウンタ2c,2b のカウント値が“1”のまま変化しなくな
って、3ビットのカウント値は、 “1,1,1” “1,1,0” の順に変化し、7〜6の数値のカウントを繰り返すこと
になり、繰り返しカウントするカウント値の範囲が最も
狭くなる。
【0042】図5は本発明に係るカウンタをDMA に適用
したシステムの構成図である。システムバス1に、CPU
5、積和演算器(PMC) 8、DMA(ダイレクトメモリアクセ
ス) 9及びメモリ10が接続される。積和演算器8からの
演算終了信号11がDMA9へ入力される。DMA 9はCPU 5
によって設定されている転送バイト数及びメモリ10上の
転送先アドレス、転送元アドレスにしたがってCPU 5を
介さずに直接にデータ転送を行う。そのため、このシス
テムでは積和演算器8が演算を実行し、DMA 9に積和演
算終了信号11が入力されると、この演算データをメモリ
10に書き込む。つまり、DMA 9は、積和演算器8の最新
の演算データを、最も古い演算データの上に順次上書き
しなければならないため、DMA 9に内蔵したカウンタの
カウント値を、演算データが格納されているメモリ10の
アドレスとして用いている。
【0043】そこで、本発明の如きカウンタをDMA に適
用すれば、カウンタが極めて小型であるため、DMA が格
段に小型化されて、それによってシステムの小型化を図
ることができる。また、繰り返しカウントするカウント
値の範囲を変更する場合にカウント値がオーバフロー、
又はアンダーフローする都度、1ビットカウンタに初期
値をリロードする必要がないから、システムに備えてい
るCPU 5の負荷を増加させることがない。
【0044】なお、本発明の実施の形態では、1ビット
カウンタを3個使用した場合について説明したが、その
数は例示であり、何ら限定されるものではない。また1
ビットカウンタを多数個使用した場合において、キャリ
ー信号又はボロー信号を入断するAND 回路を備える位置
は適宜であり、発明の実施の形態に示した位置に限定す
るものではない。
【0045】また、AND 回路に替えてトランスファゲー
ト、アナログスイッチを使用でき、レジスタに替えてメ
モリを使用できる。更に本発明のカウンタをDMA を備え
たシステムに適用したが、それは単なる一例であり、こ
のようなシステムに限定するものではない。
【0046】
【発明の効果】以上詳述したように第1発明は、所定ビ
ット範囲のカウンタ値を繰り返しカウントする動作モー
ドを指令して、指令した動作モードに基づいて、カウン
ト動作で発生するキャリー信号又はボロー信号をマスク
するマスク信号を生成して、このマスク信号により所定
ビット以上の1ビットカウンタのカウント動作を停止さ
せるようにしたので、キャリー信号又はボロー信号をマ
スクしない場合は、全ての1ビットカウンタを動作させ
て、繰り返しカウントするカウント値の範囲を広くで
き、キャリー信号又はボロー信号をマスクした場合は、
所定ビット以上の1ビットカウンタのカウント動作を停
止させて、繰り返しカウントするカウント値の範囲を狭
くすることができる。
【0047】第2発明は、所定ビット以上の1ビットカ
ウンタへ入力するキャリー信号又はボロー信号を入断す
る入断手段及びこの入断手段を、入断制御する信号を出
力する入断信号出力手段を備えて、入断手段によりキャ
リー信号又はボロー信号を通過させることにより、全て
の1ビットカウンタをカウント動作させて繰り返しカウ
ントするカウント値の範囲を広くでき、キャリー信号を
遮断することにより所定ビット以上の1ビットカウンタ
のカウント動作を停止させて、繰り返しカウントするカ
ウント値の範囲を狭くできる。そのため、繰り返しカウ
ントするカウント値の範囲を変更するために従来のよう
な1ビットカウンタと対応づけた多数のリロードレジス
タを必要とせず、そのリロードレジスタのパターン面積
を削減できる。そのため本発明のカウンタをCPU を備え
ているシステムに適用することにより、そのシステムの
大幅な小型化が図れ、またCPU の負荷を増加させること
がない等、本発明は優れた効果を奏する。
【図面の簡単な説明】
【図1】 本発明に係るカウンタの実施の形態1の構成
を示すブロック図である。
【図2】 本発明に係るカウンタの実施の形態2の構成
を示すブロック図である。
【図3】 本発明に係るカウンタの実施の形態3の構成
を示すブロック図である。
【図4】 本発明に係るカウンタの実施の形態4の構成
を示すブロック図である。
【図5】 本発明のカウンタをDMA に適用したシステム
の構成図である。
【図6】 従来のカウンタの構成を示すブロック図であ
る。
【符号の説明】
1 システムバス、2a〜2c 1ビットカウンタ、3 レ
ジスタ、4 AND 回路、5 CPU 、Co キャリー信号
出力端子、Ci キャリー信号入力端子、Bo ボロー
信号出力端子、Bi ボロー信号入力端子。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 阿部 信介 東京都千代田区丸の内二丁目2番3号 三 菱電機株式会社内 (72)発明者 佐藤 由和 兵庫県伊丹市中央3丁目1番17号 三菱電 機セミコンダクタソフトウエア株式会社内

Claims (15)

    【特許請求の範囲】
  1. 【請求項1】 複数の1ビットカウンタのキャリー信号
    又はボロー信号を次段の1ビットカウンタへ入力すべく
    接続しており、所定ビット範囲のカウント値を繰り返し
    カウントするカウンタにおいて、 全ビットより少ないビット範囲のカウント値を繰り返し
    カウントする動作モードを指令する手段と、指令した動
    作モードに基づいて、カウント動作で発生するキャリー
    信号又はボロー信号をマスクするマスク信号を生成する
    手段と、前記マスク信号に基づいて所定ビット以上の1
    ビットカウンタのカウント動作を停止させる手段とを備
    えることを特徴とするカウンタ。
  2. 【請求項2】 1ビットカウンタは、フリップフロップ
    である請求項1記載のカウンタ。
  3. 【請求項3】 動作モードを指令する手段は、CPU であ
    る請求項1記載のカウンタ。
  4. 【請求項4】 マスク信号を生成する手段は、レジスタ
    である請求項1記載のカウンタ。
  5. 【請求項5】 マスク信号を生成する手段は、メモリで
    ある請求項1記載のカウンタ。
  6. 【請求項6】 カウント動作を停止させる手段は、AND
    回路である請求項1記載のカウンタ。
  7. 【請求項7】 カウント動作を停止させる手段は、トラ
    ンスファゲートである請求項1記載のカウンタ。
  8. 【請求項8】 カウント動作を停止させる手段は、アナ
    ログスイッチである請求項1記載のカウンタ。
  9. 【請求項9】 複数の1ビットカウンタのカウント動作
    により発生するキャリー信号又はボロー信号を、次段の
    1ビットカウンタへ入力すべく接続しており、所定ビッ
    ト範囲のカウント値を繰り返しカウントするカウンタに
    おいて、 所定ビット以上の1ビットカウンタへ入力される前記キ
    ャリー信号又はボロー信号を入断する入断手段と、該入
    断手段を入断制御すべき信号を出力する入断信号出力手
    段とを備えることを特徴とするカウンタ。
  10. 【請求項10】 1ビットカウンタは、フリップフロッ
    プである請求項9記載のカウンタ。
  11. 【請求項11】 入断手段は、AND 回路である請求項9
    記載のカウンタ。
  12. 【請求項12】 入断手段は、トランスファゲートであ
    る請求項9記載のカウンタ。
  13. 【請求項13】 入断手段は、アナログスイッチである
    請求項9記載のカウンタ。
  14. 【請求項14】 入断信号出力手段は、レジスタである
    請求項9記載のカウンタ。
  15. 【請求項15】 入断信号出力手段は、メモリである請
    求項9記載のカウンタ。
JP8038237A 1996-02-16 1996-02-26 カウンタ Pending JPH09232946A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP8038237A JPH09232946A (ja) 1996-02-26 1996-02-26 カウンタ
US08/668,130 US5737381A (en) 1996-02-16 1996-06-21 Counting device
DE19635281A DE19635281C2 (de) 1996-02-26 1996-08-30 Zählervorrichtung
KR1019960047122A KR100189765B1 (ko) 1996-02-26 1996-10-21 카운터 디바이스

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8038237A JPH09232946A (ja) 1996-02-26 1996-02-26 カウンタ

Publications (1)

Publication Number Publication Date
JPH09232946A true JPH09232946A (ja) 1997-09-05

Family

ID=12519702

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8038237A Pending JPH09232946A (ja) 1996-02-16 1996-02-26 カウンタ

Country Status (4)

Country Link
US (1) US5737381A (ja)
JP (1) JPH09232946A (ja)
KR (1) KR100189765B1 (ja)
DE (1) DE19635281C2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6026140A (en) * 1998-04-21 2000-02-15 Seiko Communications Systems Inc. Low power programmable ripple counter
US6976157B1 (en) * 1999-11-04 2005-12-13 International Business Machines Corporation Circuits, systems and methods for performing branch predictions by selectively accessing bimodal and fetch-based history tables
US20040024803A1 (en) * 2002-07-31 2004-02-05 Allen Montijo Cascaded modified PRBS counters form easily programmed and efficient large counter
JP4666462B2 (ja) * 2005-01-14 2011-04-06 ルネサスエレクトロニクス株式会社 カウンタ回路と、それを含む半導体装置
EP4002384A1 (en) 2020-11-16 2022-05-25 Emocog Co., Ltd. Device and method for voice-based trauma screening using deep-learning

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2224309C3 (de) * 1972-05-18 1979-06-07 H. Stoll Gmbh & Co, 7410 Reutlingen Einstellbarer elektronischer Zähler mit veränderlichen Zählbereichen
US4789951A (en) * 1986-05-16 1988-12-06 Advanced Micro Devices, Inc. Programmable array logic cell
US5159696A (en) * 1990-07-27 1992-10-27 Microelectronics And Computer Technology Corporation Maskable cascade counter
JPH04192624A (ja) * 1990-11-22 1992-07-10 Matsushita Electric Ind Co Ltd アナログ信号処理装置を駆動する駆動回路に用いる計数回路
JPH04351118A (ja) * 1991-05-29 1992-12-04 Sharp Corp カウンタ回路
FR2698501B1 (fr) * 1992-11-24 1995-02-17 Sgs Thomson Microelectronics Compteur rapide permettant alternativement de compter et de décompter des trains d'impulsions.

Also Published As

Publication number Publication date
KR100189765B1 (ko) 1999-06-01
KR970063942A (ko) 1997-09-12
DE19635281C2 (de) 1999-11-11
DE19635281A1 (de) 1997-08-28
US5737381A (en) 1998-04-07

Similar Documents

Publication Publication Date Title
US8736303B2 (en) PSOC architecture
KR920008070B1 (ko) 마이크로콤퓨터
US7831006B2 (en) Circuit to reduce transient current swings during mode transitions of high frequency/high power chips
WO2018193338A1 (en) Stochastic memristor logic devices
US4525641A (en) Flip-flop programmer using cascaded logic arrays
US7149275B1 (en) Integrated circuit and method of implementing a counter in an integrated circuit
KR100189765B1 (ko) 카운터 디바이스
US10949204B2 (en) Microcontroller with configurable logic peripheral
US10338924B2 (en) Configurable event selection for microcontroller timer/counter unit control
JP7250953B2 (ja) データ処理装置、及び人工知能チップ
US5454097A (en) Cascadable peripheral data interface including a shift register, counter, and randomly-accessed registers of different bit length
CN108141204A (zh) 多通道波形合成引擎
US10020815B2 (en) Apparatus for data converter with internal trigger circuitry and associated methods
US20040239400A1 (en) Integrated circuit and method for operating the integrated circuit
US6229369B1 (en) Clock control circuit
US6643793B1 (en) Apparatus for transferring and holding data based on a selected clock rate
US20040024914A1 (en) High performance bit processing engine
US10243580B1 (en) Digital to analog converter with iterative stepping to each output value
US20260016854A1 (en) Data delay method, apparatus, and circuit, electronic device, and readable storage medium
US5473652A (en) Counter and/or divider arrangement
KR0144889B1 (ko) 디지탈 출력의 제어회로
JP2001085998A (ja) D/a変換回路
US6212594B1 (en) Timer with fixed and programmable interrupt periods
RU2219597C1 (ru) Регистр сдвига
US20220237354A1 (en) Generating digital circuits

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050607

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050729

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050906

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051026

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20051129