JPH04227329A - バイナリカウンタ - Google Patents
バイナリカウンタInfo
- Publication number
- JPH04227329A JPH04227329A JP3127425A JP12742591A JPH04227329A JP H04227329 A JPH04227329 A JP H04227329A JP 3127425 A JP3127425 A JP 3127425A JP 12742591 A JP12742591 A JP 12742591A JP H04227329 A JPH04227329 A JP H04227329A
- Authority
- JP
- Japan
- Prior art keywords
- complement
- binary data
- output
- flip
- counting
- 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.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/50—Adding; Subtracting
- G06F7/505—Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination
- G06F7/5055—Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination in which one operand is a constant, i.e. incrementers or decrementers
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Mathematical Optimization (AREA)
- General Engineering & Computer Science (AREA)
- Analogue/Digital Conversion (AREA)
- Transmission And Conversion Of Sensor Element Output (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【0001】
【産業上の利用分野】この発明は、バイナリカウンタに
関し、より特定的には、2進数データをアップカウント
し、ダウンカウントしまたはアップダウンカウントする
ためのカウンタに関する。
関し、より特定的には、2進数データをアップカウント
し、ダウンカウントしまたはアップダウンカウントする
ためのカウンタに関する。
【0002】
【従来の技術】図8は、“Principles o
f CMOS VLSI Design”198
5 by AT&T Bell Labora
toriesのp.338に示された従来のアップダウ
ンカウンタの構成を示すブロック図である。なお、図8
は、一例として3ビットのアップダウンカウンタを示し
ている。図において、このアップダウンカウンタは、セ
レクタ1b,1cと、加算器2a〜2cと、フリップフ
ロップ3a〜3cとによって構成されている。セレクタ
1b,1cの各一方入力端子Aは電源に接続されている
。また、セレクタ1b,1cの各他方入力端子Bは接地
に接続されている。セレクタ1b,1cは、それぞれの
切換え制御端子Sに入力されるアップ/ダウン制御信号
に応答して、一方入力端子Aへの入力と他方入力端子B
への入力とのいずれか一方を選択して出力端子Yから出
力する。すなわち、セレクタ1b、1cは、アップ/ダ
ウン制御信号によりダウンカウントモードが指令された
ときは一方入力端子Aへの入力を選択して出力し、アッ
プカウントモードが指令されたときは他方入力端子Bへ
の入力を選択して出力する。加算器2a〜2cの各一方
入力端子Aには、それぞれフリップフロップ3a〜3c
のQ出力端子の出力が与えられる。加算器2b,2cの
各他方入力端子Bには、セレクタ1b,1cの出力が与
えられる。なお、加算器2aの他方入力端子Bは、電源
に固定的に接続されている。各加算器2a〜2cは、そ
れぞれの一方入力端子Aに入力された値と他方入力端子
Bに入力された値とを加算し、その結果を和信号出力端
子Sから出力する。また、各加算器2a〜2cは、加算
の結果として桁上げが発生した場合は、キャリー信号を
桁上げ出力端子COから出力する。加算器2a,2bか
ら出力されるキャリー信号は、それぞれ上位ビット側の
次段の加算器2b,2cの桁上げ入力端子Ciに与えら
れる。なお、最下位ビットの加算器2aの桁上げ入力端
子は接地されている。加算器2a〜2cの各和信号出力
端子Sは、それぞれフリップフロップ3a〜3cのデー
タ入力端子Dに接続されている。各フリップフロップ3
a〜3cは、クロック端子CKに与えられるクロック信
号の立上りエッジ(または立下がりエッジ)に応答して
、データ入力端子Dに与えられた信号を取込み、記憶保
持する。フリップフロップ3a〜3cの記憶データは、
Q出力端子から出力されて、それぞれ出力端子4a〜4
cに与えられる。これら出力端子4a〜4cの出力が、
アップダウンカウンタの出力となる。
f CMOS VLSI Design”198
5 by AT&T Bell Labora
toriesのp.338に示された従来のアップダウ
ンカウンタの構成を示すブロック図である。なお、図8
は、一例として3ビットのアップダウンカウンタを示し
ている。図において、このアップダウンカウンタは、セ
レクタ1b,1cと、加算器2a〜2cと、フリップフ
ロップ3a〜3cとによって構成されている。セレクタ
1b,1cの各一方入力端子Aは電源に接続されている
。また、セレクタ1b,1cの各他方入力端子Bは接地
に接続されている。セレクタ1b,1cは、それぞれの
切換え制御端子Sに入力されるアップ/ダウン制御信号
に応答して、一方入力端子Aへの入力と他方入力端子B
への入力とのいずれか一方を選択して出力端子Yから出
力する。すなわち、セレクタ1b、1cは、アップ/ダ
ウン制御信号によりダウンカウントモードが指令された
ときは一方入力端子Aへの入力を選択して出力し、アッ
プカウントモードが指令されたときは他方入力端子Bへ
の入力を選択して出力する。加算器2a〜2cの各一方
入力端子Aには、それぞれフリップフロップ3a〜3c
のQ出力端子の出力が与えられる。加算器2b,2cの
各他方入力端子Bには、セレクタ1b,1cの出力が与
えられる。なお、加算器2aの他方入力端子Bは、電源
に固定的に接続されている。各加算器2a〜2cは、そ
れぞれの一方入力端子Aに入力された値と他方入力端子
Bに入力された値とを加算し、その結果を和信号出力端
子Sから出力する。また、各加算器2a〜2cは、加算
の結果として桁上げが発生した場合は、キャリー信号を
桁上げ出力端子COから出力する。加算器2a,2bか
ら出力されるキャリー信号は、それぞれ上位ビット側の
次段の加算器2b,2cの桁上げ入力端子Ciに与えら
れる。なお、最下位ビットの加算器2aの桁上げ入力端
子は接地されている。加算器2a〜2cの各和信号出力
端子Sは、それぞれフリップフロップ3a〜3cのデー
タ入力端子Dに接続されている。各フリップフロップ3
a〜3cは、クロック端子CKに与えられるクロック信
号の立上りエッジ(または立下がりエッジ)に応答して
、データ入力端子Dに与えられた信号を取込み、記憶保
持する。フリップフロップ3a〜3cの記憶データは、
Q出力端子から出力されて、それぞれ出力端子4a〜4
cに与えられる。これら出力端子4a〜4cの出力が、
アップダウンカウンタの出力となる。
【0003】以上のような構成を有する図8のアップダ
ウンカウンタの動作を以下に説明する。まず、アップ/
ダウン制御信号によりアップカウントモードが指令され
たときは、セレクタ1b,1cが他方入力端子Bへの入
力を選択して出力する結果、フリップフロップ2a〜2
cには2進数データ“001”(=+1)が入力される
。したがって、このときアップダウンカウンタは、フリ
ップフロップ3a〜3bに記憶されたデータに1を加算
するアップカウンタとして機能する。一方、アップ/ダ
ウン制御信号によりダウンカウントモードが指令された
ときは、セレクタ1b,1cが一方入力端子Aへの入力
を選択して出力する結果、フリップフロップ2a〜2c
には2進数データ“111”が入力される。ここで、2
進数データ“111”は、2の補数表現された3ビット
の2進数データであると考えれば、−1を表す。したが
って、フリップフロップ3a〜3cに記憶された元の2
進数データに“111”を加算することは、−1を加算
することすなわち1を減算することに等しい。このとき
、アップダウンカウンタはダウンカウンタとして機能す
る。
ウンカウンタの動作を以下に説明する。まず、アップ/
ダウン制御信号によりアップカウントモードが指令され
たときは、セレクタ1b,1cが他方入力端子Bへの入
力を選択して出力する結果、フリップフロップ2a〜2
cには2進数データ“001”(=+1)が入力される
。したがって、このときアップダウンカウンタは、フリ
ップフロップ3a〜3bに記憶されたデータに1を加算
するアップカウンタとして機能する。一方、アップ/ダ
ウン制御信号によりダウンカウントモードが指令された
ときは、セレクタ1b,1cが一方入力端子Aへの入力
を選択して出力する結果、フリップフロップ2a〜2c
には2進数データ“111”が入力される。ここで、2
進数データ“111”は、2の補数表現された3ビット
の2進数データであると考えれば、−1を表す。したが
って、フリップフロップ3a〜3cに記憶された元の2
進数データに“111”を加算することは、−1を加算
することすなわち1を減算することに等しい。このとき
、アップダウンカウンタはダウンカウンタとして機能す
る。
【0004】
【発明が解決しようとする課題】図8における各加算器
2a〜2cを、図9に示すような周知のマンチェスタ構
成とした場合、加算器1個当りに24個のトランジスタ
が必要となる。また、各セレクタ1b,1cは1個当り
4個のトランジスタで構成でき、各フリップフロップ3
a〜3cは1個当り16個のトランジスタで構成できる
。したがって、図8に示す従来のアップダウンカウンタ
は、1ステージ当り44個のトランジスタが必要となる
。このように、図8に示す従来のアップダウンカウンタ
は、多くのトランジスタを必要とし、回路面積の増大お
よびコストの増加を招くという問題があった。
2a〜2cを、図9に示すような周知のマンチェスタ構
成とした場合、加算器1個当りに24個のトランジスタ
が必要となる。また、各セレクタ1b,1cは1個当り
4個のトランジスタで構成でき、各フリップフロップ3
a〜3cは1個当り16個のトランジスタで構成できる
。したがって、図8に示す従来のアップダウンカウンタ
は、1ステージ当り44個のトランジスタが必要となる
。このように、図8に示す従来のアップダウンカウンタ
は、多くのトランジスタを必要とし、回路面積の増大お
よびコストの増加を招くという問題があった。
【0005】上記のような問題点は、図8に示すような
アップダウンカウンタに限らず、一般的に2進数データ
をカウントするバイナリカウンタ(アップカウンタ,ダ
ウンカウンタおよびアップダウンカウンタ等)において
生じていた。
アップダウンカウンタに限らず、一般的に2進数データ
をカウントするバイナリカウンタ(アップカウンタ,ダ
ウンカウンタおよびアップダウンカウンタ等)において
生じていた。
【0006】それゆえに、この発明の目的は、回路構成
が簡単なバイナリカウンタを提供することである。
が簡単なバイナリカウンタを提供することである。
【0007】
【課題を解決するための手段】この発明にかかるバイナ
リカウンタは、記憶手段とアップカウント手段とダウン
カウント手段と制御手段とを備えている。記憶手段は、
カウントすべき2進数データを記憶する。アップカウン
ト手段は、記憶手段に記憶された2進数データを、1の
補数に変換後2の補数に変換することによりアップカウ
ントする。ダウンカウント手段は、記憶手段に記憶され
た2進数データを、2の補数に変換後1の補数に変換す
ることによりダウンカウントする。制御手段は、アップ
カウントモードのときはアップカウント手段を能動化し
、ダウンカウントモードのときはダウンカウント手段を
能動化する。そして、制御手段によって能動化されたア
ップカウント手段またはダウンカウント手段のカウント
結果によって記憶手段の記憶データが書き換えられる。
リカウンタは、記憶手段とアップカウント手段とダウン
カウント手段と制御手段とを備えている。記憶手段は、
カウントすべき2進数データを記憶する。アップカウン
ト手段は、記憶手段に記憶された2進数データを、1の
補数に変換後2の補数に変換することによりアップカウ
ントする。ダウンカウント手段は、記憶手段に記憶され
た2進数データを、2の補数に変換後1の補数に変換す
ることによりダウンカウントする。制御手段は、アップ
カウントモードのときはアップカウント手段を能動化し
、ダウンカウントモードのときはダウンカウント手段を
能動化する。そして、制御手段によって能動化されたア
ップカウント手段またはダウンカウント手段のカウント
結果によって記憶手段の記憶データが書き換えられる。
【0008】この発明にかかる他のバイナリカウンタは
、アップカウントすべき2進数データを記憶するための
記憶手段と、記憶手段に記憶された2進数データを1の
補数に変換するための1の補数変換手段と、1の補数変
換手段の出力を2の補数に変換するための2の補数変換
手段とを備えている。そして、2の補数変換手段の出力
によって記憶手段の記憶データが書き換えられる。
、アップカウントすべき2進数データを記憶するための
記憶手段と、記憶手段に記憶された2進数データを1の
補数に変換するための1の補数変換手段と、1の補数変
換手段の出力を2の補数に変換するための2の補数変換
手段とを備えている。そして、2の補数変換手段の出力
によって記憶手段の記憶データが書き換えられる。
【0009】この発明にかかるさらに他のバイナリカウ
ンタは、ダウンカウントすべき2進数データを記憶する
ための記憶手段と、記憶手段に記憶された2進数データ
を2の補数に変換するための2の補数変換手段と、2の
補数変換手段の出力を1の補数に変換するための1の補
数変換手段とを備えている。そして、1の補数変換手段
の出力によって記憶手段の記憶データが書き換えられる
。
ンタは、ダウンカウントすべき2進数データを記憶する
ための記憶手段と、記憶手段に記憶された2進数データ
を2の補数に変換するための2の補数変換手段と、2の
補数変換手段の出力を1の補数に変換するための1の補
数変換手段とを備えている。そして、1の補数変換手段
の出力によって記憶手段の記憶データが書き換えられる
。
【0010】
【作用】2進数データを1の補数に変換後2の補数に変
換すると、変換後の2進数データは元の2進数データに
1を加算した値となる。一方、2進数データを2の補数
に変換後1の補数に変換すると、変換後の2進数データ
は元の2進数データから1を減算した値となる。この発
明は、このような数学的特徴を利用してバイナリカウン
タを構成したものである。すなわち、アップカウントモ
ードのときは記憶手段に記憶された2進数データをアッ
プカウント手段が1の補数に変換後2の補数に変換し、
アップカウントを行なう。一方、ダウンカウントモード
のときは、記憶手段に記憶された2進数データをダウン
カウント手段が2の補数に変換後1の補数に変換し、ダ
ウンカウントを行なう。そして、1の補数変換や2の補
数変換は、簡単なゲート回路で実現できるため、全体と
しての回路構成が簡単になり、回路面積の低減が図れる
とともに、安価なバイナリカウンタを得ることができる
。
換すると、変換後の2進数データは元の2進数データに
1を加算した値となる。一方、2進数データを2の補数
に変換後1の補数に変換すると、変換後の2進数データ
は元の2進数データから1を減算した値となる。この発
明は、このような数学的特徴を利用してバイナリカウン
タを構成したものである。すなわち、アップカウントモ
ードのときは記憶手段に記憶された2進数データをアッ
プカウント手段が1の補数に変換後2の補数に変換し、
アップカウントを行なう。一方、ダウンカウントモード
のときは、記憶手段に記憶された2進数データをダウン
カウント手段が2の補数に変換後1の補数に変換し、ダ
ウンカウントを行なう。そして、1の補数変換や2の補
数変換は、簡単なゲート回路で実現できるため、全体と
しての回路構成が簡単になり、回路面積の低減が図れる
とともに、安価なバイナリカウンタを得ることができる
。
【0011】アップカウントまたはダウンカウントのみ
を行なう場合も、上記と同様の原理によって2進数デー
タのアップカウントまたはダウンカウントを行なう。そ
して、これらアップカウントまたはダウンカウントのみ
を行なうバイナリカウンタを構成する1の補数変換手段
および2の補数変換手段は、簡単なゲート回路で実現で
きるため、回路構成が簡素化され、コストも低減できる
。
を行なう場合も、上記と同様の原理によって2進数デー
タのアップカウントまたはダウンカウントを行なう。そ
して、これらアップカウントまたはダウンカウントのみ
を行なうバイナリカウンタを構成する1の補数変換手段
および2の補数変換手段は、簡単なゲート回路で実現で
きるため、回路構成が簡素化され、コストも低減できる
。
【0012】
【実施例】図1は、この発明の一実施例の構成を示すブ
ロック図である。なお、この図1は、nビットのアップ
ダウンカウンタの構成を示している。図において、フリ
ップフロップ3a〜3nに記憶されたデータは、それぞ
れのQ出力端子から出力される。また、記憶データの反
転データがフリップフロップ3a〜3nのそれぞれの/
Q出力端子から出力される。各フリップフロップ3a〜
3nのQ出力端子からの出力は、それぞれ、出力端子4
a〜4nに与えられるとともに、セレクタ6a〜6nの
一方入力端子Aに与えられる。また、各フリップフロッ
プ3a〜3nの/Q出力端子からの出力は、それぞれセ
レクタ6a〜6nの他方入力端子Bに与えられる。各セ
レクタ6a〜6nは、それぞれの切換制御端子Sに与え
られるアップ/ダウン制御信号によりダウンカウントモ
ードが指令されたときは一方入力端子Aに与えられた信
号を選択して出力端子Yから出力し、アップカウントモ
ードが指令されたときは他方入力端子Bに与えられた信
号を選択して出力端子Yから出力する。各セレクタ6a
〜6nの出力は、2の補数変換回路7に与えられる。2
の補数変換回路7は、与えられた2進数データに対して
2の補数変換処理を行なう。ここで、2の補数変換処理
とは、与えられた2進数データの全ビットを反転した後
、1を加える操作をいう。2の補数変換回路7から出力
される2進数データの各ビット信号は、それぞれ対応す
るインバータ8a〜8nを介してセレクタ9a〜9nの
一方入力端子Aに与えられるとともに、直接セレクタ9
a〜9nの他方入力端子Bに与えられる。各セレクタ9
a〜9nは、セレクタ6a〜6nと同様に、それぞれの
切換制御端子Sに与えられるアップ/ダウン制御信号に
よりダウンカウントモードが指令されたときは一方入力
端子Aに与えられた信号を選択して出力端子Yから出力
し、アップカウントモードが指令されたときは他方入力
端子Bに与えられた信号を選択して出力端子Yから出力
する。各セレクタ9a〜9nの出力は、それぞれ、フリ
ップフロップ3a〜3nのデータ入力端子Dに与えられ
る。フリップフロップ3a〜3nは、D型フリップフロ
ップであり、クロック端子CKに入力されるクロック信
号の立上りエッジ(または立下がりエッジ)に同期して
、データ入力端子Dに入力された信号を取込んで記憶保
持する。
ロック図である。なお、この図1は、nビットのアップ
ダウンカウンタの構成を示している。図において、フリ
ップフロップ3a〜3nに記憶されたデータは、それぞ
れのQ出力端子から出力される。また、記憶データの反
転データがフリップフロップ3a〜3nのそれぞれの/
Q出力端子から出力される。各フリップフロップ3a〜
3nのQ出力端子からの出力は、それぞれ、出力端子4
a〜4nに与えられるとともに、セレクタ6a〜6nの
一方入力端子Aに与えられる。また、各フリップフロッ
プ3a〜3nの/Q出力端子からの出力は、それぞれセ
レクタ6a〜6nの他方入力端子Bに与えられる。各セ
レクタ6a〜6nは、それぞれの切換制御端子Sに与え
られるアップ/ダウン制御信号によりダウンカウントモ
ードが指令されたときは一方入力端子Aに与えられた信
号を選択して出力端子Yから出力し、アップカウントモ
ードが指令されたときは他方入力端子Bに与えられた信
号を選択して出力端子Yから出力する。各セレクタ6a
〜6nの出力は、2の補数変換回路7に与えられる。2
の補数変換回路7は、与えられた2進数データに対して
2の補数変換処理を行なう。ここで、2の補数変換処理
とは、与えられた2進数データの全ビットを反転した後
、1を加える操作をいう。2の補数変換回路7から出力
される2進数データの各ビット信号は、それぞれ対応す
るインバータ8a〜8nを介してセレクタ9a〜9nの
一方入力端子Aに与えられるとともに、直接セレクタ9
a〜9nの他方入力端子Bに与えられる。各セレクタ9
a〜9nは、セレクタ6a〜6nと同様に、それぞれの
切換制御端子Sに与えられるアップ/ダウン制御信号に
よりダウンカウントモードが指令されたときは一方入力
端子Aに与えられた信号を選択して出力端子Yから出力
し、アップカウントモードが指令されたときは他方入力
端子Bに与えられた信号を選択して出力端子Yから出力
する。各セレクタ9a〜9nの出力は、それぞれ、フリ
ップフロップ3a〜3nのデータ入力端子Dに与えられ
る。フリップフロップ3a〜3nは、D型フリップフロ
ップであり、クロック端子CKに入力されるクロック信
号の立上りエッジ(または立下がりエッジ)に同期して
、データ入力端子Dに入力された信号を取込んで記憶保
持する。
【0013】上記のような構成において、図1に示すア
ップダウンカウンタでは、各フリップフロップ3a〜3
nの/Q出力端子から出力される2進数データは、各フ
リップフロップ3a〜3nの記憶データの反転データで
あるので、当該記憶データに対して1の補数変換処理を
施したデータとなっている。また、各インバータ8a〜
8nは、2の補数変換回路7から出力される2進数デー
タを1の補数に変換するための手段として機能する。出
力端子4a〜4nからは、アップダウンカウンタの出力
が導出される。
ップダウンカウンタでは、各フリップフロップ3a〜3
nの/Q出力端子から出力される2進数データは、各フ
リップフロップ3a〜3nの記憶データの反転データで
あるので、当該記憶データに対して1の補数変換処理を
施したデータとなっている。また、各インバータ8a〜
8nは、2の補数変換回路7から出力される2進数デー
タを1の補数に変換するための手段として機能する。出
力端子4a〜4nからは、アップダウンカウンタの出力
が導出される。
【0014】図2は、図1に示す2の補数変換回路7の
構成の一例を示す論理回路図である。図において、入力
端子71a〜71nには、セレクタ6a〜6nの出力端
子Yからnビットの2進数データが並列に与えられる。 入力端子71aに与えられるビット信号が最下位ビット
信号であり、入力端子71nに与えられるビット信号が
最上位ビット信号(符号ビット信号)である。入力端子
71aから入力される最下位ビット信号は、信号線75
を介して直接出力端子74aに与えられる。入力端子7
1b〜71nから入力される各ビット信号は、それぞれ
、排他的論理和回路72b〜72nの一方入力端Xに与
えられる。排他的論理和回路72bの他方入力端Yには
、入力端子71aから入力される最下位ビット信号が与
えられる。その他の排他的論理和回路72c〜72nの
他方入力端Yには、それぞれ対応するORゲート73c
〜73nの出力が与えられる。各ORゲート73c〜7
3nには、それぞれ対応するビット信号よりも下位側の
ビット信号が入力される。たとえば、ORゲート73d
について見ると、対応するビット信号すなわち入力端子
71dからのビット信号よりも下位側のビット信号すな
わち入力端子71a〜71cからのビット信号が入力さ
れている。各排他的論理和回路72b〜72nの出力端
Zは、それぞれ、出力端子74b〜74nと接続されて
いる。なお、排他的論理和回路72b〜72nは他方入
力端Yに与えられる信号の論理に応じて、一方入力端X
に与えられるビット信号の反転信号と非反転信号とを切
換えて入力するための切換手段の一例を構成している。
構成の一例を示す論理回路図である。図において、入力
端子71a〜71nには、セレクタ6a〜6nの出力端
子Yからnビットの2進数データが並列に与えられる。 入力端子71aに与えられるビット信号が最下位ビット
信号であり、入力端子71nに与えられるビット信号が
最上位ビット信号(符号ビット信号)である。入力端子
71aから入力される最下位ビット信号は、信号線75
を介して直接出力端子74aに与えられる。入力端子7
1b〜71nから入力される各ビット信号は、それぞれ
、排他的論理和回路72b〜72nの一方入力端Xに与
えられる。排他的論理和回路72bの他方入力端Yには
、入力端子71aから入力される最下位ビット信号が与
えられる。その他の排他的論理和回路72c〜72nの
他方入力端Yには、それぞれ対応するORゲート73c
〜73nの出力が与えられる。各ORゲート73c〜7
3nには、それぞれ対応するビット信号よりも下位側の
ビット信号が入力される。たとえば、ORゲート73d
について見ると、対応するビット信号すなわち入力端子
71dからのビット信号よりも下位側のビット信号すな
わち入力端子71a〜71cからのビット信号が入力さ
れている。各排他的論理和回路72b〜72nの出力端
Zは、それぞれ、出力端子74b〜74nと接続されて
いる。なお、排他的論理和回路72b〜72nは他方入
力端Yに与えられる信号の論理に応じて、一方入力端X
に与えられるビット信号の反転信号と非反転信号とを切
換えて入力するための切換手段の一例を構成している。
【0015】図3は、図2に示される各排他的論理和回
路72b〜72nのいずれか1つの構成を示す回路図で
ある。図において、一方入力端Xに与えられたビット信
号は、トランスミッションゲート722を介して出力端
Zに出力される。また、一方入力端Xに入力されたビッ
ト信号は、インバータ721およびトランスミッション
ゲート723を介して出力端Zに出力される。トランス
ミッションゲート722は、並列に接続されたNチャネ
ルMOSトランジスタ722aとPチャネルMOSトラ
ンジスタ722bとによって構成されている。同様に、
トランスミッションゲート723は、並列に接続された
NチャネルMOSトランジスタ723aとPチャネルM
OSトランジスタ723bとによって構成されている。 他方入力端Yに与えられた信号は、直接にPチャネルM
OSトランジスタ722bのゲートおよびNチャネルM
OSトランジスタ723aのゲートに与えられる。また
、他方入力端Yに与えられた信号は、インバータ724
によって反転された後、NチャネルMOSトランジスタ
722aおよびPチャネルMOSトランジスタ723b
に与えられる。したがって、他方入力端Yに与えられた
信号に応じてトランスミッションゲート722と723
とが相補的にオン・オフされるように構成されている。
路72b〜72nのいずれか1つの構成を示す回路図で
ある。図において、一方入力端Xに与えられたビット信
号は、トランスミッションゲート722を介して出力端
Zに出力される。また、一方入力端Xに入力されたビッ
ト信号は、インバータ721およびトランスミッション
ゲート723を介して出力端Zに出力される。トランス
ミッションゲート722は、並列に接続されたNチャネ
ルMOSトランジスタ722aとPチャネルMOSトラ
ンジスタ722bとによって構成されている。同様に、
トランスミッションゲート723は、並列に接続された
NチャネルMOSトランジスタ723aとPチャネルM
OSトランジスタ723bとによって構成されている。 他方入力端Yに与えられた信号は、直接にPチャネルM
OSトランジスタ722bのゲートおよびNチャネルM
OSトランジスタ723aのゲートに与えられる。また
、他方入力端Yに与えられた信号は、インバータ724
によって反転された後、NチャネルMOSトランジスタ
722aおよびPチャネルMOSトランジスタ723b
に与えられる。したがって、他方入力端Yに与えられた
信号に応じてトランスミッションゲート722と723
とが相補的にオン・オフされるように構成されている。
【0016】次に、図1に示す実施例の動作原理を説明
する。まず、1の補数変換処理とは、nビットの2進数
データの各ビットを反転させることである。また、2の
補数変換処理とは、nビットの2進数データの各ビット
を反転して1を加えることである。ところで、2の補数
表現された2進数データを用いて演算処理を行なう場合
、2進数データの最上位ビットは、符号ビット(サイン
ビット)として取り扱われる。この符号ビットは、その
2進数データの値が正であるか負であるかを表す。すな
わち、符号ビットが“0”の場合はそのデータの値が正
であることを表し、“1”の場合はそのデータの値が負
であることを表す。
する。まず、1の補数変換処理とは、nビットの2進数
データの各ビットを反転させることである。また、2の
補数変換処理とは、nビットの2進数データの各ビット
を反転して1を加えることである。ところで、2の補数
表現された2進数データを用いて演算処理を行なう場合
、2進数データの最上位ビットは、符号ビット(サイン
ビット)として取り扱われる。この符号ビットは、その
2進数データの値が正であるか負であるかを表す。すな
わち、符号ビットが“0”の場合はそのデータの値が正
であることを表し、“1”の場合はそのデータの値が負
であることを表す。
【0017】今、一例として、4ビットの2進数データ
“0101”(=+5)をアップカウントする場合およ
びダウンカウントする場合について考えてみる。
“0101”(=+5)をアップカウントする場合およ
びダウンカウントする場合について考えてみる。
【0018】(1) アップカウントの場合上記2進
数データ“0101”(=+5)に対して1の補数変換
処理を行なうと、変換後の2進数データは“1010”
となる。この2進数データ“1010”は、2の補数表
現された2進数データと見なせば、“−6”を表してい
る。さらに、この2進数データ“1010”に対して2
の補数変換処理を行なうと、変換後の2進数データは“
0110”(=+6)となる。このように、元の2進数
データ“0101”(=+5)に対して1の補数変換処
理を行なった後2の補数変換処理を行なうと、変換後の
2進数データ“0110”(=+6)は元の2進数デー
タに1を加えたものとなる。これは、以下のように説明
される。元の2進数データの値をAとすると、この2進
数データに1の補数変換処理を施した後の2進数データ
の値は−A−1となる。さらに、1の補数変換処理を施
された2進数データに対して2の補数変換処理を行なう
と、変換後の2進数データの値は−(−A−1)=A+
1となる。したがって、ある2進数データに対して1の
補数変換処理を行なった後2の補数変換処理を行なうこ
とは、アップカウントを行なうことに等しい。
数データ“0101”(=+5)に対して1の補数変換
処理を行なうと、変換後の2進数データは“1010”
となる。この2進数データ“1010”は、2の補数表
現された2進数データと見なせば、“−6”を表してい
る。さらに、この2進数データ“1010”に対して2
の補数変換処理を行なうと、変換後の2進数データは“
0110”(=+6)となる。このように、元の2進数
データ“0101”(=+5)に対して1の補数変換処
理を行なった後2の補数変換処理を行なうと、変換後の
2進数データ“0110”(=+6)は元の2進数デー
タに1を加えたものとなる。これは、以下のように説明
される。元の2進数データの値をAとすると、この2進
数データに1の補数変換処理を施した後の2進数データ
の値は−A−1となる。さらに、1の補数変換処理を施
された2進数データに対して2の補数変換処理を行なう
と、変換後の2進数データの値は−(−A−1)=A+
1となる。したがって、ある2進数データに対して1の
補数変換処理を行なった後2の補数変換処理を行なうこ
とは、アップカウントを行なうことに等しい。
【0019】(2) ダウンカウントの場合元の2進
数データ“0101”(=+5)に対して2の補数変換
処理を行なうと、変換後の2進数データは“1011”
(=−5)となる。さらに、この変換後の2進数データ
“1011”(=−5)に対して1の補数変換処理を行
なうと、変換後の2進数データは“0100”(=+4
)となる。このように、元の2進数データ“0101”
(=+5)に対して2の補数変換処理を行なった後1の
補数変換処理を行なうと、変換後の2進数データ“01
00”(=+4)は元の2進数データから1を減算した
値となる。これは、以下のように説明される。 元の2進数データの値をAとすると、2の補数変換処理
を行なった後の2進数データの値は−Aとなる。さらに
、2の補数変換処理が行なわれた2進数データに対して
1の補数変換処理を行なうと、変換後の2進数データの
値は−(−A)−1=A−1となる。したがって、ある
2進数データに対して2の補数変換処理を行なった後1
の補数変換処理を行なうことは、ダウンカウントをする
ことに等しい。
数データ“0101”(=+5)に対して2の補数変換
処理を行なうと、変換後の2進数データは“1011”
(=−5)となる。さらに、この変換後の2進数データ
“1011”(=−5)に対して1の補数変換処理を行
なうと、変換後の2進数データは“0100”(=+4
)となる。このように、元の2進数データ“0101”
(=+5)に対して2の補数変換処理を行なった後1の
補数変換処理を行なうと、変換後の2進数データ“01
00”(=+4)は元の2進数データから1を減算した
値となる。これは、以下のように説明される。 元の2進数データの値をAとすると、2の補数変換処理
を行なった後の2進数データの値は−Aとなる。さらに
、2の補数変換処理が行なわれた2進数データに対して
1の補数変換処理を行なうと、変換後の2進数データの
値は−(−A)−1=A−1となる。したがって、ある
2進数データに対して2の補数変換処理を行なった後1
の補数変換処理を行なうことは、ダウンカウントをする
ことに等しい。
【0020】図1に示す実施例は、上記のような原理に
従って2進数データのアップカウントおよびダウンカウ
ントを行なうものである。以下、その動作について説明
する。
従って2進数データのアップカウントおよびダウンカウ
ントを行なうものである。以下、その動作について説明
する。
【0021】まず、アップ/ダウン制御信号によってア
ップカウントモードが指令されると、各セレクタ6a〜
6nおよび9a〜9nは、他方入力端子Bに入力された
信号を選択して各出力端子Yから出力する。したがって
、各フリップフロップ6a〜6nは、各フリップフロッ
プ3a〜3nの/Q出力端子から出力される2進数デー
タを選択して2の補数変換回路7に出力する。ここで、
各/Q出力端子から出力される2進数データは、フリッ
プフロップ3a〜3nに記憶された2進数データの反転
データすなわち1の補数変換処理が施されたデータであ
る。2の補数変換回路7は各セレクタ6a〜6nから与
えられる2進数データ(すでに1の補数変換処理が行な
われた2進数データ)に対して2の補数変換処理を行な
う。このとき、各セレクタ9a〜9nは他方入力端子B
に与えられた信号を選択しているので、2の補数変換回
路7から出力される2進数データはそのまま各セレクタ
9a〜9nを通過して各フリップフロップ3a〜3nの
データ入力端子Dに与えられる。フリップフロップ3a
〜3nは、クロック端子CKに入力されるクロック信号
の立上りエッジ(または立下がりエッジ)において、各
セレクタ9a〜9nから入力される2進数データを取込
み記憶保持する。したがって、フリップフロップ3a〜
3nに記憶されていた2進数データが書換えられ、書換
え後の2進数データが出力端子4a〜4nから出力され
る。上記のごとく、このアップカウントモードでは、フ
リップフロップ3a〜3nに記憶された2進数データは
、1の補数変換処理が施された後2の補数変換処理が施
される。したがって、変換後の2進数データは、前述し
たように元の2進数データに1を加えたものとなる。そ
の結果、図1に示すアップダウンカウンタは、このとき
アップカウンタとして動作する。
ップカウントモードが指令されると、各セレクタ6a〜
6nおよび9a〜9nは、他方入力端子Bに入力された
信号を選択して各出力端子Yから出力する。したがって
、各フリップフロップ6a〜6nは、各フリップフロッ
プ3a〜3nの/Q出力端子から出力される2進数デー
タを選択して2の補数変換回路7に出力する。ここで、
各/Q出力端子から出力される2進数データは、フリッ
プフロップ3a〜3nに記憶された2進数データの反転
データすなわち1の補数変換処理が施されたデータであ
る。2の補数変換回路7は各セレクタ6a〜6nから与
えられる2進数データ(すでに1の補数変換処理が行な
われた2進数データ)に対して2の補数変換処理を行な
う。このとき、各セレクタ9a〜9nは他方入力端子B
に与えられた信号を選択しているので、2の補数変換回
路7から出力される2進数データはそのまま各セレクタ
9a〜9nを通過して各フリップフロップ3a〜3nの
データ入力端子Dに与えられる。フリップフロップ3a
〜3nは、クロック端子CKに入力されるクロック信号
の立上りエッジ(または立下がりエッジ)において、各
セレクタ9a〜9nから入力される2進数データを取込
み記憶保持する。したがって、フリップフロップ3a〜
3nに記憶されていた2進数データが書換えられ、書換
え後の2進数データが出力端子4a〜4nから出力され
る。上記のごとく、このアップカウントモードでは、フ
リップフロップ3a〜3nに記憶された2進数データは
、1の補数変換処理が施された後2の補数変換処理が施
される。したがって、変換後の2進数データは、前述し
たように元の2進数データに1を加えたものとなる。そ
の結果、図1に示すアップダウンカウンタは、このとき
アップカウンタとして動作する。
【0022】一方、アップ/ダウン制御信号によってダ
ウンカウントモードが指令されると、各セレクタ6a〜
6nおよび9a〜9nは、それぞれ一方入力端子Aに入
力される信号を選択して出力端子Yから出力する。した
がって、各セレクタ6a〜6nは、それぞれフリップフ
ロップ3a〜3nのQ出力端子から出力される2進数デ
ータすなわちフリップフロップ3a〜3nに記憶されて
いる2進数データを選択して2の補数変換回路7に出力
する。2の補数変換回路7は、セレクタ6a〜6nから
与えられた2進数データに2の補数変換処理を施して出
力する。このとき、各セレクタ9a〜9nは、それぞれ
一方入力端子Aに入力される信号を選択して出力してい
る。したがって、2の補数変換回路7から出力された2
進数データは、インバータ8a〜8nによって反転され
た後すなわち1の補数変換処理が施された後セレクタ9
a〜9nを介してフリップフロップ3a〜3nのデータ
入力端子Dに与えられる。各フリップフロップ3a〜3
nは、クロック端子CKに与えられるクロック信号の立
上りエッジ(または立下がりエッジ)に応答してデータ
入力端子Dに与えられる2進数データを取込み記憶保持
する。このように、ダウンカウントモードでは、フリッ
プフロップ3a〜3nに記憶された2進数データは、2
の補数変換処理が施された後1の補数変換処理が施され
る。そして、この変換後のデータによってフリップフロ
ップ3a〜3nの記憶データが書換えられ、書換え後の
2進数データが出力端子4a〜4nから出力される。前
述したように、元の2進数データに対して2の補数変換
処理を行なった後1の補数変換処理を行なうと、変換後
の2進数データは元の2進数データから1を減算した値
となる。したがって、このとき図1に示すアップダウン
カウンタはダウンカウンタとして動作する。
ウンカウントモードが指令されると、各セレクタ6a〜
6nおよび9a〜9nは、それぞれ一方入力端子Aに入
力される信号を選択して出力端子Yから出力する。した
がって、各セレクタ6a〜6nは、それぞれフリップフ
ロップ3a〜3nのQ出力端子から出力される2進数デ
ータすなわちフリップフロップ3a〜3nに記憶されて
いる2進数データを選択して2の補数変換回路7に出力
する。2の補数変換回路7は、セレクタ6a〜6nから
与えられた2進数データに2の補数変換処理を施して出
力する。このとき、各セレクタ9a〜9nは、それぞれ
一方入力端子Aに入力される信号を選択して出力してい
る。したがって、2の補数変換回路7から出力された2
進数データは、インバータ8a〜8nによって反転され
た後すなわち1の補数変換処理が施された後セレクタ9
a〜9nを介してフリップフロップ3a〜3nのデータ
入力端子Dに与えられる。各フリップフロップ3a〜3
nは、クロック端子CKに与えられるクロック信号の立
上りエッジ(または立下がりエッジ)に応答してデータ
入力端子Dに与えられる2進数データを取込み記憶保持
する。このように、ダウンカウントモードでは、フリッ
プフロップ3a〜3nに記憶された2進数データは、2
の補数変換処理が施された後1の補数変換処理が施され
る。そして、この変換後のデータによってフリップフロ
ップ3a〜3nの記憶データが書換えられ、書換え後の
2進数データが出力端子4a〜4nから出力される。前
述したように、元の2進数データに対して2の補数変換
処理を行なった後1の補数変換処理を行なうと、変換後
の2進数データは元の2進数データから1を減算した値
となる。したがって、このとき図1に示すアップダウン
カウンタはダウンカウンタとして動作する。
【0023】次に、図1および図2に示す2の補数変換
回路7の動作原理を説明する。今、Nビットの2進数デ
ータA(=aN・・・a1)に対して2の補数変換処理
を行なったものがNビットの2進数データB(=bN・
・・b1)である場合を考えてみる。この場合、変換前
の2進数データAの各ビットa1〜aNと、変換後の2
進数データBの各ビットb1〜bNとの間には、以下の
論理関係が存在する。
回路7の動作原理を説明する。今、Nビットの2進数デ
ータA(=aN・・・a1)に対して2の補数変換処理
を行なったものがNビットの2進数データB(=bN・
・・b1)である場合を考えてみる。この場合、変換前
の2進数データAの各ビットa1〜aNと、変換後の2
進数データBの各ビットb1〜bNとの間には、以下の
論理関係が存在する。
【0024】
【0025】つまり、Nビットからなる2進数データA
の最下位ビットa1が直接変換後の2進数データBの最
下位ビットb1となる。また、最下位ビットを除く上位
ビットについては、各出力ビットb2〜bNが、対応す
る各入力ビットa2〜aNの反転/非反転となる。そし
て、この反転/非反転の切換は、当該入力ビットより下
位側の入力ビットの論理状態に応じて決定される。すな
わち、当該入力ビットより下位側の入力ビットの中に1
つでも“1”があれば、出力ビットは入力ビットの反転
信号となる。
の最下位ビットa1が直接変換後の2進数データBの最
下位ビットb1となる。また、最下位ビットを除く上位
ビットについては、各出力ビットb2〜bNが、対応す
る各入力ビットa2〜aNの反転/非反転となる。そし
て、この反転/非反転の切換は、当該入力ビットより下
位側の入力ビットの論理状態に応じて決定される。すな
わち、当該入力ビットより下位側の入力ビットの中に1
つでも“1”があれば、出力ビットは入力ビットの反転
信号となる。
【0026】図1および図2に示す2の補数変換回路7
は、上記のような論理関係を達成すべく構成されている
。すなわち、対応する入力ビット信号よりも下位側の入
力ビット信号の中に1つでも“1”があるか否かの検出
は、各ORゲート73c〜73nによって行なわれる。 また、入力ビット信号の反転/非反転の切換は、各排他
的論理和回路72b〜72nによって行なわれる。 すなわち、対応する入力ビット信号よりも下位のビット
信号のすべてが“0”である場合はその論理和演算結果
が“0”となり、排他的論理和回路の他方入力端Yには
“0”すなわち“L”レベルの信号が入力される。した
がって、この場合トランスミッションゲート722がオ
ンし、トランスミッションゲート723がオフする。そ
の結果、排他的論理和回路の一方入力端Xに与えられる
入力ビット信号は、トランスミッションゲート722を
介してそのまま出力端Zから出力される。一方、対応す
る入力ビット信号よりも下位側の入力ビット信号の中に
1つでも“1”があると、その論理和演算結果が“1”
となり、対応する排他的論理和回路の他方入力端Yには
“1”すなわち“H”レベルの信号が与えられる。この
場合、トランスミッションゲート723がオンし、トラ
ンスミッションゲート722がオフする。その結果、排
他的論理和回路の一方入力端Xに与えられた入力ビット
信号が、インバータ721によって反転された後、トラ
ンスミッションゲート723を介して出力端Zから出力
される。
は、上記のような論理関係を達成すべく構成されている
。すなわち、対応する入力ビット信号よりも下位側の入
力ビット信号の中に1つでも“1”があるか否かの検出
は、各ORゲート73c〜73nによって行なわれる。 また、入力ビット信号の反転/非反転の切換は、各排他
的論理和回路72b〜72nによって行なわれる。 すなわち、対応する入力ビット信号よりも下位のビット
信号のすべてが“0”である場合はその論理和演算結果
が“0”となり、排他的論理和回路の他方入力端Yには
“0”すなわち“L”レベルの信号が入力される。した
がって、この場合トランスミッションゲート722がオ
ンし、トランスミッションゲート723がオフする。そ
の結果、排他的論理和回路の一方入力端Xに与えられる
入力ビット信号は、トランスミッションゲート722を
介してそのまま出力端Zから出力される。一方、対応す
る入力ビット信号よりも下位側の入力ビット信号の中に
1つでも“1”があると、その論理和演算結果が“1”
となり、対応する排他的論理和回路の他方入力端Yには
“1”すなわち“H”レベルの信号が与えられる。この
場合、トランスミッションゲート723がオンし、トラ
ンスミッションゲート722がオフする。その結果、排
他的論理和回路の一方入力端Xに与えられた入力ビット
信号が、インバータ721によって反転された後、トラ
ンスミッションゲート723を介して出力端Zから出力
される。
【0027】次に、より具体的な事例に従って2の補数
変換回路7の動作を説明する。たとえば、4ビットの2
進数データ“1011”(=−5)を、2の補数変換す
る場合を考えてみる。この場合、入力端子71a〜71
dに入力された2進数データ“1011”のうち、最下
位ビット信号は、信号線75を介してそのまま出力端7
4aから出力される。その他の上位ビットについては、
下位側の入力ビット信号の中に“1”(この場合は最下
位ビット信号)が存在するので、すべて入力ビット信号
が反転されて出力される。つまり、出力端子74a〜7
4dには、2の補数変換された2進数データ“0101
”(=+5)が出力される。
変換回路7の動作を説明する。たとえば、4ビットの2
進数データ“1011”(=−5)を、2の補数変換す
る場合を考えてみる。この場合、入力端子71a〜71
dに入力された2進数データ“1011”のうち、最下
位ビット信号は、信号線75を介してそのまま出力端7
4aから出力される。その他の上位ビットについては、
下位側の入力ビット信号の中に“1”(この場合は最下
位ビット信号)が存在するので、すべて入力ビット信号
が反転されて出力される。つまり、出力端子74a〜7
4dには、2の補数変換された2進数データ“0101
”(=+5)が出力される。
【0028】以上説明した実施例によれば、2進数デー
タのアップカウントとダウンカウントを、1の補数変換
処理と2の補数変換処理との組合せによって実現するよ
うにしている。そして、1の補数変換処理は図1に示す
ようにたとえばインバータのような極めて簡単な回路に
よって実現でき、また2の補数変換処理はたとえば図2
に示すように極めて簡単な論理回路によって実現できる
。したがって、本実施例のアップダウンカウンタは図8
に示す従来のアップダウンカウンタに比べて構成が極め
て簡素化され、回路面積の低減およびコストの低減を図
ることができる。なお、2の補数変換回路7として図2
および図3に示すような構成を採用した場合、図1に示
すアップダウンカウンタは1ステージあたり40個のト
ランジスタで構成できる。
タのアップカウントとダウンカウントを、1の補数変換
処理と2の補数変換処理との組合せによって実現するよ
うにしている。そして、1の補数変換処理は図1に示す
ようにたとえばインバータのような極めて簡単な回路に
よって実現でき、また2の補数変換処理はたとえば図2
に示すように極めて簡単な論理回路によって実現できる
。したがって、本実施例のアップダウンカウンタは図8
に示す従来のアップダウンカウンタに比べて構成が極め
て簡素化され、回路面積の低減およびコストの低減を図
ることができる。なお、2の補数変換回路7として図2
および図3に示すような構成を採用した場合、図1に示
すアップダウンカウンタは1ステージあたり40個のト
ランジスタで構成できる。
【0029】なお、図4は、図2に示される排他的論理
和回路72b〜72nの他の回路構成例を示した図であ
る。図示のごとく、図4では、1つのインバータ721
と、1つのPチャネルMOSトランジスタ725と、1
つのNチャネルMOSトランジスタ726とで各排他的
論理和回路を構成できる。そのため、図3に示す構成の
排他的論理和回路を用いた場合に比べてさらに素子数の
低減を図ることができる。ただし、図3に示すトランス
ミッションゲート722および723は、それぞれを構
成する2個のMOSトランジスタのうち1つが故障して
も機能するため、回路動作の安全性の点で優れているが
、図4に示す排他的論理和回路においてはそのような利
点はない。
和回路72b〜72nの他の回路構成例を示した図であ
る。図示のごとく、図4では、1つのインバータ721
と、1つのPチャネルMOSトランジスタ725と、1
つのNチャネルMOSトランジスタ726とで各排他的
論理和回路を構成できる。そのため、図3に示す構成の
排他的論理和回路を用いた場合に比べてさらに素子数の
低減を図ることができる。ただし、図3に示すトランス
ミッションゲート722および723は、それぞれを構
成する2個のMOSトランジスタのうち1つが故障して
も機能するため、回路動作の安全性の点で優れているが
、図4に示す排他的論理和回路においてはそのような利
点はない。
【0030】なお、図1に示す実施例では、フリップフ
ロップ3a〜3nの各Q出力端子からカウント結果デー
タを取出すようにしているが、セレクタ9a〜9nの各
出力端子Yからカウント結果データを取出すようにして
もよい。
ロップ3a〜3nの各Q出力端子からカウント結果デー
タを取出すようにしているが、セレクタ9a〜9nの各
出力端子Yからカウント結果データを取出すようにして
もよい。
【0031】図5は、この発明の他の実施例にかかるア
ップダウンカウンタの構成を示すブロック図である。図
において、このアップダウンカウンタは、レジスタ3と
、2の補数変換回路7Aおよび7Bと、1の補数変換回
路8Aおよび8Bと、セレクタ9とを備えている。レジ
スタ3は、たとえば図1に示すようなフリップフロップ
3a〜3nによって構成されており、カウントすべき2
進数データを記憶している。レジスタ3の出力(複数ビ
ットを含む)は、2の補数変換回路7Aおよび1の補数
変換回路8Bに与えられる。2の補数変換回路7Aの出
力は1の補数変換回路8Aに与えられ、1の補数変換回
路8Bの出力は2の補数変換回路7Bに与えられる。 2の補数変換回路7Aおよび7Bは、たとえば図2に示
すような構成を有している。1の補数変換回路8Aおよ
び8Bは、たとえば図1に示すように、各ビットごとに
設けられたインバータ8a〜8nによって構成されてい
る。選択回路9は、たとえば図1に示すような各ビット
ごとに設けられたセレクタ9a〜9nによって構成され
ている。各セレクタの一方入力端子Aには1の補数変換
回路8Aの出力が与えられ、各セレクタの他方入力端子
Bには2の補数変換回路7Bの出力が与えられる。また
、選択回路9を構成する各セレクタの切換え制御端子S
には、アップ/ダウン制御信号が与えられる。選択回路
9は、このアップ/ダウン制御信号に応答して、一方入
力端子Aおよび他方入力端子Bのいずれか一方の入力を
、選択して出力端子Yから出力する。選択回路9の出力
はレジスタ3に与えられる。
ップダウンカウンタの構成を示すブロック図である。図
において、このアップダウンカウンタは、レジスタ3と
、2の補数変換回路7Aおよび7Bと、1の補数変換回
路8Aおよび8Bと、セレクタ9とを備えている。レジ
スタ3は、たとえば図1に示すようなフリップフロップ
3a〜3nによって構成されており、カウントすべき2
進数データを記憶している。レジスタ3の出力(複数ビ
ットを含む)は、2の補数変換回路7Aおよび1の補数
変換回路8Bに与えられる。2の補数変換回路7Aの出
力は1の補数変換回路8Aに与えられ、1の補数変換回
路8Bの出力は2の補数変換回路7Bに与えられる。 2の補数変換回路7Aおよび7Bは、たとえば図2に示
すような構成を有している。1の補数変換回路8Aおよ
び8Bは、たとえば図1に示すように、各ビットごとに
設けられたインバータ8a〜8nによって構成されてい
る。選択回路9は、たとえば図1に示すような各ビット
ごとに設けられたセレクタ9a〜9nによって構成され
ている。各セレクタの一方入力端子Aには1の補数変換
回路8Aの出力が与えられ、各セレクタの他方入力端子
Bには2の補数変換回路7Bの出力が与えられる。また
、選択回路9を構成する各セレクタの切換え制御端子S
には、アップ/ダウン制御信号が与えられる。選択回路
9は、このアップ/ダウン制御信号に応答して、一方入
力端子Aおよび他方入力端子Bのいずれか一方の入力を
、選択して出力端子Yから出力する。選択回路9の出力
はレジスタ3に与えられる。
【0032】次に、図5に示す実施例の動作を説明する
。まず、アップ/ダウン制御信号によってアップカウン
トモードが選択されると、選択回路9は他方入力端子B
に入力される2進数データを選択して出力端子Yからレ
ジスタ3に出力する。したがって、レジスタ3から出力
された2進数データは、1の補数変換回路8Bで1の補
数に変換された後、2の補数変換回路7Bで2の補数に
変換され、その後選択回路9を介してレジスタ3に再書
込される。これによって、レジスタ3に記憶された2進
数データが+1される。一方、アップ/ダウン制御信号
によってダウンカウントモードか選択されると、選択回
路9は一方入力端子Aから入力される2進数データを選
択して出力端子Yから出力する。したがって、レジスタ
3から出力された2進数データは、2の補数変換回路7
Aで2の補数に変換された後、1の補数変換回路8Aで
1の補数に変換され、その後選択回路9を介してレジス
タ3に再書込される。これによって、レジスタ3に記憶
された2進数データは−1される。カウント結果データ
は、レジスタ3の出力から得るようにしてもよいし、ま
た点線で示すように選択回路9の出力から得るようにし
てもよい。
。まず、アップ/ダウン制御信号によってアップカウン
トモードが選択されると、選択回路9は他方入力端子B
に入力される2進数データを選択して出力端子Yからレ
ジスタ3に出力する。したがって、レジスタ3から出力
された2進数データは、1の補数変換回路8Bで1の補
数に変換された後、2の補数変換回路7Bで2の補数に
変換され、その後選択回路9を介してレジスタ3に再書
込される。これによって、レジスタ3に記憶された2進
数データが+1される。一方、アップ/ダウン制御信号
によってダウンカウントモードか選択されると、選択回
路9は一方入力端子Aから入力される2進数データを選
択して出力端子Yから出力する。したがって、レジスタ
3から出力された2進数データは、2の補数変換回路7
Aで2の補数に変換された後、1の補数変換回路8Aで
1の補数に変換され、その後選択回路9を介してレジス
タ3に再書込される。これによって、レジスタ3に記憶
された2進数データは−1される。カウント結果データ
は、レジスタ3の出力から得るようにしてもよいし、ま
た点線で示すように選択回路9の出力から得るようにし
てもよい。
【0033】図6は、この発明の一実施例にかかるアッ
プカウンタの構成を示すブロック図である。図において
、このアップカウンタは、フリップフロップ3a〜3n
と、2の補数変換回路7とを備えている。フリップフロ
ップ3a〜3nは、アップカウントすべき各ビットの論
理値を記憶している。各フリップフロップ3a〜3nは
、各/Q出力端子から、記憶データの反転データすなわ
ち1の補数変換後の2進数データを出力する。この1の
補数変換後の2進数データは、2の補数変換回路7に与
えられ、2の補数に変換される。2の補数変換回路7は
、たとえば図2に示すような構成を有している。2の補
数変換回路7の出力は、出力端子4a〜4nに与えられ
るとともに、各フリップフロップ3a〜3nのデータ入
力端子Dに与えられる。したがって、図6に示す実施例
のアップカウンタでは、フリップフロップ3a〜3nに
記憶された2進数データは、1の補数に変換されて出力
された後、2の補数変換回路7で2の補数に変換されて
出力端子4a〜4nから出力されるとともに、各フリッ
プフロップ3a〜3nに再書込みされる。したがって、
出力端子4a〜4nから出力される2進数データは、各
フリップフロップ3a〜3nにクロック信号CKが入力
されるごとに+1される。なお、カウント結果データは
、各フリップフロップ3a〜3nのQ出力端子から得る
ようにしてもよい。
プカウンタの構成を示すブロック図である。図において
、このアップカウンタは、フリップフロップ3a〜3n
と、2の補数変換回路7とを備えている。フリップフロ
ップ3a〜3nは、アップカウントすべき各ビットの論
理値を記憶している。各フリップフロップ3a〜3nは
、各/Q出力端子から、記憶データの反転データすなわ
ち1の補数変換後の2進数データを出力する。この1の
補数変換後の2進数データは、2の補数変換回路7に与
えられ、2の補数に変換される。2の補数変換回路7は
、たとえば図2に示すような構成を有している。2の補
数変換回路7の出力は、出力端子4a〜4nに与えられ
るとともに、各フリップフロップ3a〜3nのデータ入
力端子Dに与えられる。したがって、図6に示す実施例
のアップカウンタでは、フリップフロップ3a〜3nに
記憶された2進数データは、1の補数に変換されて出力
された後、2の補数変換回路7で2の補数に変換されて
出力端子4a〜4nから出力されるとともに、各フリッ
プフロップ3a〜3nに再書込みされる。したがって、
出力端子4a〜4nから出力される2進数データは、各
フリップフロップ3a〜3nにクロック信号CKが入力
されるごとに+1される。なお、カウント結果データは
、各フリップフロップ3a〜3nのQ出力端子から得る
ようにしてもよい。
【0034】図7は、この発明の一実施例にかかるダウ
ンカウンタの構成を示すブロック図である。図において
、このダウンカウンタは、フリップフロップ3a〜3n
と、2の補数変換回路7とを備えている。各フリップフ
ロップ3aの/Q出力端子から出力される2進数データ
は、2の補数変換回路7で2の補数に変換された後、各
フリップフロップ3a〜3nに再書込みされる。各フリ
ップフロップ3a〜3nに記憶された2進数データは、
/Q出力端子から1の補数変換後の2進数データとして
出力される。したがって、出力端子4a〜4nから出力
される2進数データは、クロック信号CKがフリップフ
ロップ3a〜3nに入力されるごとに−1される。
ンカウンタの構成を示すブロック図である。図において
、このダウンカウンタは、フリップフロップ3a〜3n
と、2の補数変換回路7とを備えている。各フリップフ
ロップ3aの/Q出力端子から出力される2進数データ
は、2の補数変換回路7で2の補数に変換された後、各
フリップフロップ3a〜3nに再書込みされる。各フリ
ップフロップ3a〜3nに記憶された2進数データは、
/Q出力端子から1の補数変換後の2進数データとして
出力される。したがって、出力端子4a〜4nから出力
される2進数データは、クロック信号CKがフリップフ
ロップ3a〜3nに入力されるごとに−1される。
【0035】
【発明の効果】以上のように、この発明によれば、従来
のバイナリカウンタとはまったく異なった原理によって
2進数データのアップカウントとダウンカウントとを実
現しているため、回路構成が極めて簡単になる。そのた
め、必要とするトランジスタの素子数が少なくてすみ、
回路面積が小さく安価なバイナリカウンタを得ることが
できる。
のバイナリカウンタとはまったく異なった原理によって
2進数データのアップカウントとダウンカウントとを実
現しているため、回路構成が極めて簡単になる。そのた
め、必要とするトランジスタの素子数が少なくてすみ、
回路面積が小さく安価なバイナリカウンタを得ることが
できる。
【図1】この発明の一実施例にかかるアップカウンタの
構成を示すブロック図である。
構成を示すブロック図である。
【図2】図1に示す2の補数変換回路の構成の一例を示
す論理回路図である。
す論理回路図である。
【図3】図2に示す排他的論理和回路の構成の一例を示
す回路図である。
す回路図である。
【図4】図2に示す排他的論理和回路の他の構成例を示
す回路図である。
す回路図である。
【図5】この発明の他の実施例にかかるアップダウンカ
ウンタの構成を示すブロック図である。
ウンタの構成を示すブロック図である。
【図6】この発明の一実施例にかかるアップカウンタの
構成を示すブロック図である。
構成を示すブロック図である。
【図7】この発明の一実施例にかかるダウンカウンタの
構成を示すブロック図である。
構成を示すブロック図である。
【図8】従来のアップダウンカウンタの構成を示すブロ
ック図である。
ック図である。
【図9】図8に示すカウンタの構成をさらに詳細に示す
回路図である。
回路図である。
3 レジスタ
3a〜3n フリップフロップ
4a〜4n 出力端子
9 選択回路
6a〜6nおよび9a〜9n セレクタ7,7Aおよ
び7B 2の補数変換回路8Aおよび8B 1の補
数変換回路
び7B 2の補数変換回路8Aおよび8B 1の補
数変換回路
Claims (3)
- 【請求項1】 2進数データをアップカウントしまた
はダウンカウントするためのバイナリカウンタであって
、カウントすべき2進数データを記憶するための記憶手
段、前記記憶手段に記憶された2進数データを、1の補
数に変換後2の補数に変換することによりアップカウン
トするアップカウント手段、前記記憶手段に記憶された
2進数データを、2の補数に変換後1の補数に変換する
ことによりダウンカウントするダウンカウント手段、お
よびアップカウントモードのときは前記アップカウント
手段を、ダウンカウントモードのときは前記ダウンカウ
ント手段を選択的に能動化するための制御手段を備え、
前記記憶手段によって能動化された前記アップカウント
手段または前記ダウンカウント手段のカウント結果によ
って前記記憶手段の記憶データが書き換えられる、バイ
ナリカウンタ。 - 【請求項2】 2進数データをアップカウントするた
めのバイナリカウンタであって、アップカウントすべき
2進数データを記憶するための記憶手段、前記記憶手段
に記憶された2進数データを1の補数に変換するための
1の補数変換手段、および前記1の補数変換手段の出力
を2の補数に変換するための2の補数変換手段を備え、
前記2の補数変換手段の出力によって前記記憶手段の記
憶データが書き換えられる、バイナリカウンタ。 - 【請求項3】 2進数データをダウンカウントするた
めのバイナリカウンタであって、ダウンカウントすべき
2進数データを記憶するための記憶手段、前記記憶手段
に記憶された2進数データを2の補数に変換するための
2の補数変換手段、および前記2の補数変換手段の出力
を1の補数に変換するための1の補数変換手段を備え、
前記1の補数変換手段の出力によって前記記憶手段の記
憶データが書き換えられる、バイナリカウンタ。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP3127425A JPH04227329A (ja) | 1990-06-05 | 1991-05-30 | バイナリカウンタ |
| US07/709,580 US5146479A (en) | 1990-06-05 | 1991-06-05 | Up/down counter for counting binary data stored in flip flops |
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2-148128 | 1990-06-05 | ||
| JP14812890 | 1990-06-05 | ||
| JP3127425A JPH04227329A (ja) | 1990-06-05 | 1991-05-30 | バイナリカウンタ |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH04227329A true JPH04227329A (ja) | 1992-08-17 |
Family
ID=26463388
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP3127425A Withdrawn JPH04227329A (ja) | 1990-06-05 | 1991-05-30 | バイナリカウンタ |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US5146479A (ja) |
| JP (1) | JPH04227329A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2011066618A (ja) * | 2009-09-16 | 2011-03-31 | Honda Motor Co Ltd | カウンタ回路、及びその方法 |
Families Citing this family (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| 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. |
| US5394476A (en) * | 1992-12-17 | 1995-02-28 | Motorola, Inc. | Volume control device |
| JPH0816364A (ja) * | 1994-04-26 | 1996-01-19 | Nec Corp | カウンタ回路とそれを用いたマイクロプロセッサ |
| RU2179784C2 (ru) * | 2000-04-07 | 2002-02-20 | Пензенский технологический институт | Реверсивный счетчик импульсов с переменным модулем счета |
| EP1394673A1 (en) * | 2002-08-30 | 2004-03-03 | STMicroelectronics S.r.l. | Method and circuit for incrementing, decrementing or two complementing a bit string |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US2848166A (en) * | 1955-11-03 | 1958-08-19 | Ibm | Counter |
| JPS5222505B2 (ja) * | 1973-02-09 | 1977-06-17 | ||
| US4700370A (en) * | 1985-09-30 | 1987-10-13 | Advanced Micro Devices, Inc. | High speed, low power, multi-bit, single edge-triggered, wraparound, binary counter |
| US4713832A (en) * | 1986-04-11 | 1987-12-15 | Ampex Corporation | Programmable divider up/down counter with anti-aliasing feature and asynchronous read/write |
-
1991
- 1991-05-30 JP JP3127425A patent/JPH04227329A/ja not_active Withdrawn
- 1991-06-05 US US07/709,580 patent/US5146479A/en not_active Expired - Lifetime
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2011066618A (ja) * | 2009-09-16 | 2011-03-31 | Honda Motor Co Ltd | カウンタ回路、及びその方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| US5146479A (en) | 1992-09-08 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4953115A (en) | Absolute value calculating circuit having a single adder | |
| US5546545A (en) | Rotating priority selection logic circuit | |
| US5043990A (en) | Semiconductor integrated circuit device | |
| JPH0428180B2 (ja) | ||
| US4153939A (en) | Incrementer circuit | |
| US5299145A (en) | Adder for reducing carry processing | |
| JPH073653B2 (ja) | シフタ | |
| JP2970231B2 (ja) | 並列乗算回路 | |
| JP3396720B2 (ja) | 部分積生成回路 | |
| JPH09222991A (ja) | 加算方法および加算器 | |
| JPH0546363A (ja) | 除算器 | |
| US5146479A (en) | Up/down counter for counting binary data stored in flip flops | |
| JP2766133B2 (ja) | パラレル・シリアル・データ変換回路 | |
| JP3127654B2 (ja) | 乗除算器 | |
| JPH08123663A (ja) | 高速動的2進インクリメンタ | |
| JP3351672B2 (ja) | 加算器 | |
| JP2991788B2 (ja) | 復号器 | |
| US5442801A (en) | Arithmetic and logic unit | |
| JP2907276B2 (ja) | 演算処理装置 | |
| JP2614496B2 (ja) | 大小比較回路 | |
| JPH08212057A (ja) | 全加算器 | |
| JPH11212765A (ja) | 加算回路及び加算装置 | |
| JP2539006B2 (ja) | 加算器 | |
| JP2808604B2 (ja) | 2進化n進演算回路 | |
| JPS648858B2 (ja) |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 19980806 |