JPH0570180B2 - - Google Patents
Info
- Publication number
- JPH0570180B2 JPH0570180B2 JP63119424A JP11942488A JPH0570180B2 JP H0570180 B2 JPH0570180 B2 JP H0570180B2 JP 63119424 A JP63119424 A JP 63119424A JP 11942488 A JP11942488 A JP 11942488A JP H0570180 B2 JPH0570180 B2 JP H0570180B2
- Authority
- JP
- Japan
- Prior art keywords
- bits
- adder
- bit
- modulo
- address register
- 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.)
- Expired - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/34—Addressing or accessing the instruction operand or the result ; Formation of operand address; Addressing modes
- G06F9/355—Indexed addressing
- G06F9/3552—Indexed addressing using wraparound, e.g. modulo or circular addressing
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Complex Calculations (AREA)
- Memory System (AREA)
- Executing Machine-Instructions (AREA)
Description
A 産業上の利用分野
本発明は、データ処理、より詳細に言えば正の
アドレツシング及び負のアドレツシング、即ちア
ドレスが増加されていくものと、減少されていく
ものとの両方を含む循環式のアドレツシングを与
えるための、アドレス信号発生及びデータ信号発
生装置に関する。 B 従来の技術 アドレス及びデータ処理に関する従来技術の多
くの刊行物は、循環アドレツシングの回路、また
はシステムを開示している。 米国特許第4202035号において、開示されてい
るモジユロ(modulo)アドレツシング装置は、
モジユロ付加論理ユニツトの出力にランダムアク
セス・メモリ(RAM)アドレスを与えるため
に、モジユロ付論理ユニツトの入力に、その出力
が接続されている加算器、即ちアダーと、モジユ
ロ付加論理ユニツトの入力、及びアダーの入力と
に接続されているマルチプレクサ(MUX)とを
含んでいる。 循環アドレツシング回路は、1977年7月の
IBMテクニカル・デイスクロジヤ・ブレテンの
第20巻、第2号の871頁乃至872頁に記載された
「コンピユータ・ストレージをアクセスするため
のアドレツシング回路」(Circular Adressing
Circuitry For Accessing Computer Storage)
と題する刊行物に記載されており、そこに開示さ
れている回路は、アダー及びマスクレジスタから
の出力が、オア回路を介して有効なアドレスを与
えるため、第2のアンド回路の出力と組み合わさ
れる出力を有す第1のアンド回路に印加される。 米国特許第3980874号には数値Mよりも大きい
値のバイナリ数値をモジユロMに変換する装置が
開示されている。 米国特許第4569016号は、マスク作用を行い、
且つインストラクシヨンを回転する機構を開示し
ている。 C 発明が解決しようとする問題点 循環アドレツシングを実行するアプローチは、
一般論として、予め決められているモジユロの境
界にあるアダーの繰上げチエーンによる繰上げを
抑制することである。このアプローチには2つの
問題点がある。第1の問題は、余分な遅延のステ
ージが各モジユロの境界領域で与えられることで
あり、第2の問題は、論理的に負のモジユロ・ア
ドレツシングは遂行出来ないことである。 従つて、本発明の目的は、モジユロのマスク機
能を含み、増加形式または、減少形式の何れの形
式でもよい循環アドレツシングを遂行する信号発
生装置であつて、メモリ、または信号プロセツサ
のような論理システムのアドレツシングに使用す
ることのできる高速度で、集積密度が高く、消費
電力の小さい信号発生装置を提供することにあ
る。 D 問題点を解決するための手段 本発明に従つた信号発生装置は、モジユロ境界
が繰上げを伝播しない点に達して、そのアドレス
が最小値に戻るまで、基本レジスタに増分を加算
することによつて、基本的なモジユロ境界指標付
け(indexing)を遂行する循環アドレツシングを
与える。より詳細に言えば、本発明は、複数個の
レジスタのうちの1つからの基本アドレス信号
と、インストラクシヨン・データ・レジスタ
(IDR)からの演算子信号とが入力されるアダー
を含む信号発生装置を与える。また、モジユロ・
マスク機能ユニツトの入力に、基本アドレス信号
と同じ複数個の上位ビツトが印加される。また、
アダーからの繰上げビツトが、モジユロ・マスク
機能ユニツトに与えられる。所定のモジユロ境界
数は、モジユロ・マスク機能ユニツトに接続され
たデコーダである制御手段の制御の下で、選択さ
れる。モジユロ・マスク機能ユニツトからの出力
は、アダーからの残りの下位のビツトと共に、共
通アドレス・レジスタのような信号受入れ手段に
印加される。本発明の良好な実施例において、モ
ジユロ・マスク機能ユニツトは、アダー及び共通
アドレス・レジスタとの間に接続され、且つ、基
本アドレス信号の上位ビツト供給源及び共通アド
レス・レジスタとの間に接続された複数個の通路
ゲートを含んでいる。 E 実施例 第1図は、本発明の信号発生装置を示すブロツ
ク図である。この信号発生装置は、第1のレジス
タAから例えば16個のバイナリ・デジツト、即ち
16個のビツト形式の複数個の信号を同時に受け取
る入力と、第2のレジスタBから例えば16個のバ
イナリ・デジツト、即ち16個のビツト形式の複数
個の信号を同時に受取る入力とを有するインデツ
クス・マルチプレクサ(MUX)、または任意の
ベース・アドレス手段10を含んでいる。16ビツ
トのアドレス・アダー、または任意のアダー手段
12は、インデツクスMUX10の出力からの16
個のビツトと、データフオーマツタ、即ちマルチ
プレクサMUX、または他の公知の演算子入力手
段14からの16個のビツトとを受取る入力を持つ
ている。インデツクスMUXからの16個の入力ビ
ツト、即ちビツト10乃至115のうちの10は、最上
位ビツトであり、115は最下位ビツトである。デ
ータMUX14は、インストラクシヨン・デー
タ・レジスタ(IDR)からの信号を受取る。アダ
ー12は、16ビツトの出力、即ちビツトA0乃至
A15と、繰上げビツトGYを出力として与える。
ここで、A0は最上位ビツトを表わし、A15は最
下位ビツトを表わす。繰上げビツトGYと、10個
の上位ビツトA0乃至A9とは、モジユロ・マスク
機能ユニツト、即ちモジユロ手段16の入力に印
加され、下位のビツトA10A乃至A15は、共通の
アドレス・レジスタ、即ち他の信号受取り手段1
8の入力へ直接印加される。8本のモジユロ選択
ラインを持つ任意の通常の制御手段20は、制御
素子、即ちモジユロ・マスク機能ユニツト16に
接続される。モジユロ・マスク機能ユニツト16
の出力からの信号、即ちビツト、MGY、M0乃
至M9は、共通アドレス・レジスタ18の一方の
入力に印加される。ビツトA0乃至A9は、上位の
ビツトであり、ビツトMGYは、繰上げビツトで
ある。共通アドレス・レジスタ18の他方の入力
は、下位ビツトA10乃至A15を受取る。共通アド
レス・レジスタ18の出力OUTは、公知の態様
で直列様式、または並列様式で他の素子に供給さ
れる。 第1図に示した本発明の実施例の動作について
説明すると、インストラクシヨン・データ・レジ
スタIDRに与えられた信号は、レジスタA、また
はレジスタBのいずれかからのビツトA0乃至
A15を、インデツクスMUX10を介して、アダ
ー12の入力に選択し、そしてまた、上位のビツ
ト10乃至19をモジユロ・マスク機能ユニツト16
に印加する。インストラクシヨン・データ・レジ
スタIDRからの16個の信号、即ちビツトは、デー
タ・フオーマツタ、即ち任意のタイプのMUX1
4を通過したのち、アドレス・レジスタの入力に
印加される。データ・フオーマツタ、即ちMUX
14からの16個のビツト10乃至115が、アダー1
2に加えられると、繰上げビツトGYを伴つた合
計のビツトA0乃至A15がアダー12の出力に与
えられる。下位ビツト10乃至A15は、共通アドレ
ス・レジスタ18の入力に直接印加されるが、他
方、繰上げビツトGY、及び上位ビツトA0乃至
A9は、モジユロ・マスク機能ユニツト16の入
力に印加される。例えば32、64、128、256、512、
1024、または2048ハーフ・ワード境界のような所
望のモジユロ境界数に従つて循環アドレスが発生
されるが、例えば128ハーフ・ワードの境界を例
にすると、デコーダ20は、繰上げビツトGYが
抑制されたアダー12からのビツトA8及びA9
と、インデツクスMUX10からの10乃至17のビ
ツトとの上位ビツトの正しい組合せを、モジユ
ロ・マスク機能ユニツト16からの共通アドレ
ス・レジスタ18に通過させるように適当な選択
ラインを選択する。アダーからの下位ビツトA10
乃至A15の6個のビツトは、モジユロ・マスク機
能ユニツト16をバイパスし、その結果、無選
択、即ちそれらの下位ビツトは、6個の下位ビツ
トとして、常に共通アドレス・レジスタ18に印
加される。従つて、若し、インストラクシヨン・
データ・レジスタIDRからの16ビツトが、例え
ば、ビツト10乃至115を+2だけ増加するインス
トラクシヨンとして与えられたならば、インデツ
クスMUX10からの6個の下位ビツト110乃至
115が、2だけアダー12で増加されて、信号
A10乃至A15を生じ、合計デジツト、即ちビツト
A8及びA9になるビツト18及び19と共に加算器1
2の出力から循環アドレスが与えられることは、
注意を喚起する必要がある。6個の下位信号、即
ちビツトA10乃至A15は、共通アドレス・レジス
タ18に印加されるが、他方、アダー12の出力
からのビツトA8及びA9は、モジユロ・マスク機
能ユニツト16を介して、ビツトM8及びM9とし
て、共通アドレス・レジスタ18に印加される。
上位ビツト10乃至17は、デコーダ20の境界選択
によりモジユロ機能ユニツト16を通過して、ビ
ツトM0乃至M7として共通アドレス・レジスタ2
0に与えられる。このような状態のもとで、ビツ
ト10乃至17は、モジユロ・マスク機能ユニツトを
介して、上位ビツトM0乃至M7として、共通アド
レス・レジスタ18へ常に通されるから、循環ア
ドレスが、128ハーフ・ワードの境界の所で設定
される。換言すれば、下位ビツトM8,M9と、
A10乃至A15のみが、増加されるということであ
る。インストラクシヨン・データ・レジスタIDR
中の2の補数技術を使うことによつてインデツク
スMUX10からの信号、即ちビツト10乃至115
は、−2の加算、即ち2で減算することにより、
減少することが出来る。 上述の実施例においては、デコーダ20は、
128ハーフ・ワードの境界を選択するように説明
されてきたが、若し、32ハーフ・ワードが望まれ
るならば、インデツクスMUX10からの全ての
ビツト10乃至19は、デコーダの制御の下で、モジ
ユロ・マスク機能ユニツト16を介して、共通ア
ドレス・レジスタ18にビツトM0乃至M9として
印加される。換言すれば、下位ビツト110乃至115
に+2を加えて、アダー12にビツトA10乃至
A15を出力させ、その出力ビツトを共通のアドレ
ス・レジスタ18の入力に直接に印加する。境界
が必要ない場合は、デコーダ20は、モジユロ・
マスク機能ユニツト16を通る繰上げビツトGY
と、全ての信号、即ちビツトA0乃至A9とを転送
するラインを選択することにより、これらのビツ
トをMGYビツト、M0乃至M9ビツトとして、共
通アドレス・レジスタ18の入力に印加し、且
つ、アダー12の出力からの下位ビツトA10乃至
A15を共通アドレス・レジスタ18の入力に直接
に印加する。本発明の信号発生装置は、例えばメ
モリ用のアドレス・ビツトや、信号プロセツサの
ような論理システムのデータ信号、即ちデータ・
ビツト用などのアドレス信号を発生するために使
用することが出来る。 第2A図及び第2B図は、第1図に示された本
発明の実施例の回路の細部を示す図である。 第2A図及び第2B図に示された信号発生装置
は、第1図に示された信号発生装置と同じであ
り、共通する素子は、同じ参照数字を使つてい
る。第2A図及び第2B図の回路図は、通過ゲー
ト回路16′が、第1図のモジユロ・マスク機能
ユニツト16を特定した1つの回路として示され
ているという点で第1図の回路と相異している。 第2A図及び第2B図において、インデツクス
MUX10と、アドレス・アダー12と、デー
タ・フオーマツタ、即ちMUX14と、共通アド
レス・レジスタ18が第1図と同じ構成で示され
ている。然しながら、第2A図及び第2B図にお
いては、ビツトGY、A0乃至A9の個々の信号ラ
イン、即ちビツト・ラインが、アドレス・アダー
12の出力の所で示されており、そして、ビツト
10乃至19の個々の信号ライン、即ちビツト・ライ
ンは、インデツクスMUX10の出力の所で示さ
れている。また、デコーダ20は、8個の選択ラ
イン、SEL0乃至SEL7を持つて示されている。通
路回路16′は、例えばNチヤンネルの電界効果
トランジスタのアレーで構成され、このトランジ
スタのアレーは、SEL0行乃至SEL7行と名付けら
れた8個の行と、共通アドレス・レジスタ18の
夫々の入力に接続された列MGY及び列M0乃至
列M9と名付けられた11個の列を持つている。各
行に設けられたトランジスタの各ソースは、共通
アドレス・レジスタ18の入力MGY、M0乃至
M9に共通して接続されている。例えば、第1列、
即ち再左端にあるすべてのトランジスタのソース
は、共通アドレス・レジスタのMGY入力に接続
されており、そして、最終列、即ち最右端のすべ
てのトランジスタのソースは、共通アドレス・レ
ジスタの入力M9に接続れている。行の各トラン
ジスタの各制御電極は、デコーダ20の選択ライ
ンSEL0乃至SEL7に夫々共通に接続されている。
例えば、最上部にあるすべてのトランジスタの制
御電極は、選択ラインSEL0に接続されており、
そして、最下端部のすべてのトランジスタの制御
電極は、選択ラインSEL7に接続されている。 アドレス・アダー12からの繰上げラインGY
は、通路ゲート回路16′中のトランジスタのア
レーの最左端の列、即ちMGYにある最上部、即
ちSEL0行に位置するトランジスタのドレーンに
接続されている。第1列の他のトランジスタの各
ドレーンは、接地電位Gのような基準電位に接続
されている。第2A図及び第2B図に示されてい
るように、ビツト・ラインA0乃至A9は、各M0
列乃至M9列にある最上部の行、即ちSEL0行のト
ランジスタのドレインに接続されている。第1A
図及び第1B図から分るように、トランジスタの
第2列M0において、最上部、即ち行SEL0中のト
ランジスタのドレインは、アドレス・アダー12
の出力からのビツト・ラインA0に接続されてお
り、そして、列M0中の他のトランジスタのドレ
インは、インデツクスMUX10の出力からのビ
ツト・ラインI0に接続されている。第3列、第4
列及び第5列、即ちM1、M2及びM3中のトラン
ジスタは、第2A図第2B図に示されているよう
に、M1列、M2列及びM3列中のトランジスタの
ドレインが、アドレス・アダー12のビツト・ラ
インA1、A2及びA3へ接続されており、且つM1
列、M2列及びM3列中の残りのトランジスタのド
レインが、ビツト・ラインI1、I2及びI3に接続さ
れていることを除けば、第2列、M0中のトラン
ジスタと同じように接続される。第6列、M4に
おいて、上部の2個のトランジスタのドレイン、
即ちSEL0行及びSEL1行中のトランジスタのドレ
インは、アダー・ビツト・ラインA4に接続され
ており、そして、第4列、M4中の残りのトラン
ジスタのドレインは、インデツクスMUXのビツ
ト・ラインI4に接続されている。第7列、M5に
おいて、上部の3個のトランジスタのドレイン、
即ち行、SEL0、SEL1及びSEL2の中のトランジ
スタのドレインは、アダーのビツト・ラインA5
に接続されており、そして、列、M5の残りのト
ランジスタのドレインは、インデツクスMUXの
ビツト・ラインI5に接続されている。第8列、
M6において、4個のトランジスタのドレイン、
即ち行SEL0、SEL1、SEL2及びSEL3中のトラン
ジスタのドレインは、アダーのビツト・ライン
A6に接続され、そして列、M6中の残りのトラン
ジスタのドレインは、インデツクスMUXビツ
ト・ラインI6に接続されている。第9列、M7に
おいて、下部の3個のトランジスタのドレイン、
即ち行SEL5、SEL6及びSEL7中のトランジスタ
のドレインは、インデツクスMUXのビツト・ラ
イン17に接続され、そして列、M7の残りのト
ランジスタのドレインは、アダーのビツト・ライ
ンに接続されている。第10列、M8において、下
部の2個のトランジスタのドレイン、即ち行
SEL6及びSEL7中のトランジスタのドレインは、
インデツクスMUXのビツト・ラインI8に接続さ
れ、そして、列、M8中の残りのトランジスタの
ドレインは、アダーのラインA8に接続されてい
る。最後の列、即ち第11列、M9において最下部
のトランジスタのドレイン、即ち行、SEL7中の
トランジスタのドレインは、インデツクスMUX
のビツト・ラインI9に接続され、そして列、M9
の残りのトランジスタのドレインは、アダーのビ
ツト・ラインに接続されている。 第2A図及び第2B図に示された信号発生装置
の動作において、正の信号、即ち正のパルスが、
デコーダ20のライン、SEL0に印加された時、
通路のゲート回路16′の第1の、即ち最上部の
行のすべてのトランジスタは、オンに転じて、ア
ドレス・アダー12の出力、GY、A0乃至A9を
共通アドレス・レジスタ18の入力MGY、M0
乃至M9に接続する。下位ビツトを転送するアド
レス・アダーのビツト・ラインA10乃至A15は、
共通アドレス・レジスタ18に直接接続されてい
るから、本発明の信号発生装置は、この状態にお
いては、通常の動作を行う、即ち境界が無い状態
として動作する。パルスがSEL1に印加されたと
き、第2の行中のすべてのトランジスタは、オン
に転じて、インデツクスMUXのビツトI0乃至I3
を、共通アドレス・レジスタ18の入力M0乃至
M3に接続し、且つ、アダーのビツトA4乃至A9
を、共通アドレス・レジスタ18の入力M4乃至
M9に夫々接続する。パルスがSEL2に印加された
とき、第3列のすべてのトランジスタは、オンに
転じて、インデツクスMUXのビツトI0乃至I4を、
共通アドレス・レジスタ18の入力M0乃至4Mに
接続し、且つ、アダーのビツトA5乃至A9を、共
通アドレス・レジスタ18の入力M5乃至M9に接
続する。SEL3が選択されたとき、第4列のすべ
てのトランジスタは、インデツクスMUXのビツ
トI0乃至I5を、共通アドレス・レジスタ18の入
力M0乃至M5に接続し、且つ、アダーのビツト
A6乃至A9を、共通アドレス・レジスタ18の入
力M6乃至M9に接続する。SEL4が選択されたと
き、インデツクスMUXのビツトI0乃至I6は、共
通アドレス・レジスタ18の入力M0乃至M6に印
加され、且つ、アダーA7乃至A9のビツトは、共
通アドレス・レジスタ18の入力M7乃至M9に印
加される。SEL5が選択されると、インデツクス
MUXのビツトI0乃至I7は、共通アドレス・レジ
スタ18の入力M0乃至M7に印加され、そしてア
ダーのビツトA8及びA9は、共通アドレス・レジ
スタ18の入力M8及びM9に印加される。SEL6
が選択されると、インデツクスMUXのビツトI0
乃至I8は、共通アドレス・レジスタ18の入力
M0乃至M8に印加され、そして、アダーのビツト
A9は、共通アドレス・レジスタ18の入力M9に
印加される。SEL7がオンに転ずると、インデツ
クスMUXのすべてのビツトI0乃至I9は、通路ゲ
ート回路16′を通つて共通アドレス・レジスタ
18の入力M0乃至M9に印加される。アダー12
からの繰上げビツトGYは、信号発生装置が、通
常の動作状態にある、即ち境界条件を設定する循
環アドレスシングの動作をおこなつていない時に
だけ、通過ゲート回路16′を通つて、レジスタ
18の入力MGYに印加されることには、注意を
払う必要がある。 SEL7のデコーダ20による選択に戻つて、説
明を続けると、若し、16ビツトワードのアドレ
ス、即ちI0乃至I15が、例えば、インデツクス
MUX10を通つてレジスタAから、アドレス・
アダー12に印加され、且つ、データ・フオーマ
ツタ、即ちMUX14を介して、インストラクシ
ヨン・データ・レジスタのビツトをアダー12に
与えることにより、レジスタAからのアドレスに
+2を加算したとすれば、その加算機能は、下位
ビツトの桁A10乃至A15に加算が行われて、共通
アドレス・レジスタ18の下位ビツトとして、レ
ジスタ18の入力に印加される範囲で遂行される
だけだから、共通アドレス・レジスタ18の他の
入力M0乃至M9は、通路ゲート回路16′を通過
して、レジスタ18の入力M0乃至M9に対して、
インデツクスMUX10のより上位のビツトI0乃
至I9となることが理解されるであろう。次に、共
通アドレス・レジスタ18の16ビツトワード、
M0乃至M9、及びA10乃至A15は、レジスタAに
印加され、次のサイクルで、レジスタAからのビ
ツトは、IDRからのインストラクシヨンによつ
て、+2の加算機能を反復するために、アダー1
2に印加される。入力M0乃至M9は、インデツク
スMUX10からの出力I0乃至I9と常に同じだか
ら、SEL7によつて選択され、境界を越える加算
を行う時賀がなく、従つて、このプロセスは、無
限に続けられることが理解出来るであろう。従つ
て、サーキユラー・アドレツシングが、アダーの
ビツトA10乃至A15の範囲内で行われる。若し、
より大きな境界が必要ならば、デコーダのSEL6
は、7個の下位のビツト、即ち、A10乃至A15に
加えてA9を選択し、そして、インデツクスMUX
10からのビツトI0乃至I8を、共通アドレス・レ
ジスタ18の入力M0乃至M8に与えるようにすれ
ばよいことが分る。若し、それ以上の大きな境界
のために、サーキユラー・アドレスシングの必要
がある場合は、SEL5からSEL1を選ぶことが出来
る。 別表の第表は、インデツクスMUX10から
のビツトと、通路ゲート回路16′を通るアダー
のビツトとの関係をより良く理解するためのもの
である。 従つて第表から、デコーダのSEL7が選択さ
れた時、通路、即ちモジユロ・マスク機能ユニツ
ト16′を通つて、インデツクスMUXからのビ
ツトI0乃至I9を、共通アドレス・レジスタ18に
印加し、且つ、A0乃至A9のビツトを、アダー1
2から通路16′を経て共通アドレス・レジスタ
18には向けず、その代りに、アダーの出力ビツ
トA10乃至A15を、直接に共通アドレス・レジス
タ18に直接印加することにより、境界32が設
定されることが理解出来る。同様に、境界256を
設定するためには、デコーダのSEL4を選択して、
インデツクスMUX10からのビツトI0乃至I6と、
アダー12のビツトA7乃至A9とを通路ゲート回
路16′を介して共通アドレス・レジスタ18に
印加し、且つ、アダーのビツトA10乃至A15を直
接に共通アドレス・レジスタ18に印加すること
によつて達成されることが分る。デコーダ20の
SEL0が選択された場合、アダー12からの繰上
げビツトGYと、ビツトA0乃至A9とは、アダー
12からの出力ビツト、GY、及びA0乃至A15、
即ち出力ワード全体を共通アドレス・レジスタ1
8に印加するために、通路ゲート回路16′を通
過する。 本発明の信号発生装置を共通アドレス・レジス
タ18に対して入力するという観点から見て、別
表の第表は、デコーダ20からの出力、SEL0
乃至SEL7の特定の選択に従つて、入力信号M0乃
至M9に対して、インデツクスMUX10からの
信号I0乃至I9のうちのどの信号と、アダー12か
らの信号A0乃至A9のうちのどの信号とが印加さ
れるかを示している。 本発明の信号発生装置を更によく理解するため
に幾つかの例を別表の第表に示した。 例1において、レジスタAが、アダー12に、
バイナリ形式でアドレス63を与え、そしてイン
ストラクシヨン・データ・レジスタIDRがモジユ
ロ境界条件32のために+2を加算するように、
アダーに命令した時、アダー12の出力の6個の
下位ビツトA10乃至A15は、00 0001になること
は注意を要する。次の+2の加算命令によつて、
アダー12の出力下位ビツトは、終極的には、11
111になる。その後、再度の加算命令によつて+
2の加算が行われると、より上位のビツトA0乃
至A9は、通路ゲート回路16′を通つて共通アド
レス・レジスタ18に、毎回印加されるので、ア
ダー12からの下位ビツトの出力A10乃至A15
は、00 0001に戻る。かくして、循環アドレツシ
ングが与えられる。繰上げの1のビツトを除却す
るための付加的な論理回路をアダー12に設けな
ければ、月並な繰上げ技術によつて、アダー12
の出力のA9の桁に1のビツトが伝播することが
理解出来る。ビツトI0乃至I9に対して、レジスタ
Aの中に0が示されているが、本発明の動作にお
いて、桁I0乃至I9に、任意のバイナリデジツトを
用いることが出来るのは、注意を要する。 第2の例において、レジスタAは、バイナリ形
式でアドレス127を与えられ、IDRからのインス
トラクシヨンは、モジユロ境界32よりも大きな
数字+66によつて増加している。下位ビツトA0
乃至A15が再度、加算処理に関与され、且つビツ
トI0乃至I9がレジスタ18の入力M0乃至M9に印
加されることにより、循環アドレツシングが与え
られることが理解出来る。第2例の繰上げの分断
部分において、繰上げは、有効桁A8に伝播する
のを許され、従つて、循環アドレツシングは遂行
されない。 上述の2つの例は、正の数で増加する例である
が、第3例のように、負の数を用いても同じよう
に本発明を達成することが出来る。第3例に示し
たように、減少すること、即ち−2を加算するた
めに、−2が反転された、即ち2の補数を、通常
の態様でアダー12に加算する。第3例におい
て、本発明のモジユロ・マスク技術において、循
環アドレスは、アダー12、またはレジスタ18
のビツトA10乃至A15に制限されており、1が繰
上げとして伝播するので、通常の繰上げ分断技術
は、負の数による減算、または加算を無能にする
ことは理解することが出来る。 モジユロ境界の選択は、ラインSEL0乃至SEL7
のうちの1つを選択するためにデコーダ20に供
給されるビツト、即ちインストラクシヨン・デー
タ・レジスタIDR中の適当なビツトによつて与え
ることができるし、また、デコーダ20は、任意
の公知の所望の制御レジスタによつて制御するこ
とが出来ることは注意を要する。 本発明の良好な実施例において、インデツクス
MUX10からの最下位ビツトI15を、デコーダ
20の制御用として使用することにより、このビ
ツトが1であれば、デコーダ20を付勢し、この
ビツトが0であれば、デコーダ20を滅勢するよ
うに制御することが出来る。 本発明の実施例として、第1図のモジユロ・マ
スク機能ユニツト16は、第2A図及び第2B図
において、通路ゲート回路16′として示されて
いるが、他の回路に変更することが出来る。例え
ば、アンド/オア/インバータ回路のような論理
的マクロ回路を使用することが出来、それは、共
通アドレス・レジスタ18の入力に所定のビツト
GY、A0乃至A9、及びI0乃至I9を通過させるため
に、適当な出力信号、アダー12、インデツクス
MUX10及びデコーダ20の出力を持つてい
る。アドレス発生回路は、論理システムの性能を
制限する論理回路の臨界通路(critical path)が
あるので、この信号発生装置は、モジユロ・マス
ク機能ユニツトを通過する際の遅延が、2ナノ秒
以下の通路ゲート回路を設けることが望ましい。
また、信号発生装置の通路ゲート回路16′は、
集積半導体回路を形成する際の密度の観点から言
つても非常に望ましい構成である。この信号発生
装置はモジユロ・マスク機能ユニツトとして、こ
の通路ゲート回路16′を使用することの他の利
点は、この回路がデプレツシヨンFETを使つて
いないから、直流電力消費が小さいことである。 従つて、本発明は、メモリ、または論理システ
ムに使用するために、高密度で、最少限のゲート
回路数で、最少限の遅延時間で、直流電力消費が
殆ど無く、しかも繰上げ分断を必要としない正の
数及び負の数で循環アドレツシングを与える信号
発生装置を提供することが理解できる。信号発生
装置の8個のモジユロの構成を説明してきたが、
本発明の信号発生装置は、16ビツトまたは32ビツ
ト、または必要に応じて、より以上のビツト数で
使用することが出来るから、境界数が0から所望
の数、例えば64000、またはそれ以上の数が本発
明によつて与えることが可能である。16ビツトが
目下、この分野で最も広く普及しているので、本
発明を16ビツト、即ちハーフワード・システムで
説明したけれども、本発明に従つて、正の数、ま
たは負の数の両方で演算することが出来るモジユ
ロ・マスク機能マクロ、即ちモジユロ・マスク回
路として、32ビツト・システム、即ちフルワー
ド・システムに、同じように用いることが出来
る。更に、第2A図及び第2B図のモジユロ・マ
スク機能ユニツト16′の特定の回路は、N型チ
ヤンネル・タイプのトランジスタを用いるものと
して説明したが、本発明の回路は、トランジスタ
のタイプとは無関係であつて、例えば相補型金属
酸化半導体(CMOS)技術も使用出来ることは
理解できるであろう。
アドレツシング及び負のアドレツシング、即ちア
ドレスが増加されていくものと、減少されていく
ものとの両方を含む循環式のアドレツシングを与
えるための、アドレス信号発生及びデータ信号発
生装置に関する。 B 従来の技術 アドレス及びデータ処理に関する従来技術の多
くの刊行物は、循環アドレツシングの回路、また
はシステムを開示している。 米国特許第4202035号において、開示されてい
るモジユロ(modulo)アドレツシング装置は、
モジユロ付加論理ユニツトの出力にランダムアク
セス・メモリ(RAM)アドレスを与えるため
に、モジユロ付論理ユニツトの入力に、その出力
が接続されている加算器、即ちアダーと、モジユ
ロ付加論理ユニツトの入力、及びアダーの入力と
に接続されているマルチプレクサ(MUX)とを
含んでいる。 循環アドレツシング回路は、1977年7月の
IBMテクニカル・デイスクロジヤ・ブレテンの
第20巻、第2号の871頁乃至872頁に記載された
「コンピユータ・ストレージをアクセスするため
のアドレツシング回路」(Circular Adressing
Circuitry For Accessing Computer Storage)
と題する刊行物に記載されており、そこに開示さ
れている回路は、アダー及びマスクレジスタから
の出力が、オア回路を介して有効なアドレスを与
えるため、第2のアンド回路の出力と組み合わさ
れる出力を有す第1のアンド回路に印加される。 米国特許第3980874号には数値Mよりも大きい
値のバイナリ数値をモジユロMに変換する装置が
開示されている。 米国特許第4569016号は、マスク作用を行い、
且つインストラクシヨンを回転する機構を開示し
ている。 C 発明が解決しようとする問題点 循環アドレツシングを実行するアプローチは、
一般論として、予め決められているモジユロの境
界にあるアダーの繰上げチエーンによる繰上げを
抑制することである。このアプローチには2つの
問題点がある。第1の問題は、余分な遅延のステ
ージが各モジユロの境界領域で与えられることで
あり、第2の問題は、論理的に負のモジユロ・ア
ドレツシングは遂行出来ないことである。 従つて、本発明の目的は、モジユロのマスク機
能を含み、増加形式または、減少形式の何れの形
式でもよい循環アドレツシングを遂行する信号発
生装置であつて、メモリ、または信号プロセツサ
のような論理システムのアドレツシングに使用す
ることのできる高速度で、集積密度が高く、消費
電力の小さい信号発生装置を提供することにあ
る。 D 問題点を解決するための手段 本発明に従つた信号発生装置は、モジユロ境界
が繰上げを伝播しない点に達して、そのアドレス
が最小値に戻るまで、基本レジスタに増分を加算
することによつて、基本的なモジユロ境界指標付
け(indexing)を遂行する循環アドレツシングを
与える。より詳細に言えば、本発明は、複数個の
レジスタのうちの1つからの基本アドレス信号
と、インストラクシヨン・データ・レジスタ
(IDR)からの演算子信号とが入力されるアダー
を含む信号発生装置を与える。また、モジユロ・
マスク機能ユニツトの入力に、基本アドレス信号
と同じ複数個の上位ビツトが印加される。また、
アダーからの繰上げビツトが、モジユロ・マスク
機能ユニツトに与えられる。所定のモジユロ境界
数は、モジユロ・マスク機能ユニツトに接続され
たデコーダである制御手段の制御の下で、選択さ
れる。モジユロ・マスク機能ユニツトからの出力
は、アダーからの残りの下位のビツトと共に、共
通アドレス・レジスタのような信号受入れ手段に
印加される。本発明の良好な実施例において、モ
ジユロ・マスク機能ユニツトは、アダー及び共通
アドレス・レジスタとの間に接続され、且つ、基
本アドレス信号の上位ビツト供給源及び共通アド
レス・レジスタとの間に接続された複数個の通路
ゲートを含んでいる。 E 実施例 第1図は、本発明の信号発生装置を示すブロツ
ク図である。この信号発生装置は、第1のレジス
タAから例えば16個のバイナリ・デジツト、即ち
16個のビツト形式の複数個の信号を同時に受け取
る入力と、第2のレジスタBから例えば16個のバ
イナリ・デジツト、即ち16個のビツト形式の複数
個の信号を同時に受取る入力とを有するインデツ
クス・マルチプレクサ(MUX)、または任意の
ベース・アドレス手段10を含んでいる。16ビツ
トのアドレス・アダー、または任意のアダー手段
12は、インデツクスMUX10の出力からの16
個のビツトと、データフオーマツタ、即ちマルチ
プレクサMUX、または他の公知の演算子入力手
段14からの16個のビツトとを受取る入力を持つ
ている。インデツクスMUXからの16個の入力ビ
ツト、即ちビツト10乃至115のうちの10は、最上
位ビツトであり、115は最下位ビツトである。デ
ータMUX14は、インストラクシヨン・デー
タ・レジスタ(IDR)からの信号を受取る。アダ
ー12は、16ビツトの出力、即ちビツトA0乃至
A15と、繰上げビツトGYを出力として与える。
ここで、A0は最上位ビツトを表わし、A15は最
下位ビツトを表わす。繰上げビツトGYと、10個
の上位ビツトA0乃至A9とは、モジユロ・マスク
機能ユニツト、即ちモジユロ手段16の入力に印
加され、下位のビツトA10A乃至A15は、共通の
アドレス・レジスタ、即ち他の信号受取り手段1
8の入力へ直接印加される。8本のモジユロ選択
ラインを持つ任意の通常の制御手段20は、制御
素子、即ちモジユロ・マスク機能ユニツト16に
接続される。モジユロ・マスク機能ユニツト16
の出力からの信号、即ちビツト、MGY、M0乃
至M9は、共通アドレス・レジスタ18の一方の
入力に印加される。ビツトA0乃至A9は、上位の
ビツトであり、ビツトMGYは、繰上げビツトで
ある。共通アドレス・レジスタ18の他方の入力
は、下位ビツトA10乃至A15を受取る。共通アド
レス・レジスタ18の出力OUTは、公知の態様
で直列様式、または並列様式で他の素子に供給さ
れる。 第1図に示した本発明の実施例の動作について
説明すると、インストラクシヨン・データ・レジ
スタIDRに与えられた信号は、レジスタA、また
はレジスタBのいずれかからのビツトA0乃至
A15を、インデツクスMUX10を介して、アダ
ー12の入力に選択し、そしてまた、上位のビツ
ト10乃至19をモジユロ・マスク機能ユニツト16
に印加する。インストラクシヨン・データ・レジ
スタIDRからの16個の信号、即ちビツトは、デー
タ・フオーマツタ、即ち任意のタイプのMUX1
4を通過したのち、アドレス・レジスタの入力に
印加される。データ・フオーマツタ、即ちMUX
14からの16個のビツト10乃至115が、アダー1
2に加えられると、繰上げビツトGYを伴つた合
計のビツトA0乃至A15がアダー12の出力に与
えられる。下位ビツト10乃至A15は、共通アドレ
ス・レジスタ18の入力に直接印加されるが、他
方、繰上げビツトGY、及び上位ビツトA0乃至
A9は、モジユロ・マスク機能ユニツト16の入
力に印加される。例えば32、64、128、256、512、
1024、または2048ハーフ・ワード境界のような所
望のモジユロ境界数に従つて循環アドレスが発生
されるが、例えば128ハーフ・ワードの境界を例
にすると、デコーダ20は、繰上げビツトGYが
抑制されたアダー12からのビツトA8及びA9
と、インデツクスMUX10からの10乃至17のビ
ツトとの上位ビツトの正しい組合せを、モジユ
ロ・マスク機能ユニツト16からの共通アドレ
ス・レジスタ18に通過させるように適当な選択
ラインを選択する。アダーからの下位ビツトA10
乃至A15の6個のビツトは、モジユロ・マスク機
能ユニツト16をバイパスし、その結果、無選
択、即ちそれらの下位ビツトは、6個の下位ビツ
トとして、常に共通アドレス・レジスタ18に印
加される。従つて、若し、インストラクシヨン・
データ・レジスタIDRからの16ビツトが、例え
ば、ビツト10乃至115を+2だけ増加するインス
トラクシヨンとして与えられたならば、インデツ
クスMUX10からの6個の下位ビツト110乃至
115が、2だけアダー12で増加されて、信号
A10乃至A15を生じ、合計デジツト、即ちビツト
A8及びA9になるビツト18及び19と共に加算器1
2の出力から循環アドレスが与えられることは、
注意を喚起する必要がある。6個の下位信号、即
ちビツトA10乃至A15は、共通アドレス・レジス
タ18に印加されるが、他方、アダー12の出力
からのビツトA8及びA9は、モジユロ・マスク機
能ユニツト16を介して、ビツトM8及びM9とし
て、共通アドレス・レジスタ18に印加される。
上位ビツト10乃至17は、デコーダ20の境界選択
によりモジユロ機能ユニツト16を通過して、ビ
ツトM0乃至M7として共通アドレス・レジスタ2
0に与えられる。このような状態のもとで、ビツ
ト10乃至17は、モジユロ・マスク機能ユニツトを
介して、上位ビツトM0乃至M7として、共通アド
レス・レジスタ18へ常に通されるから、循環ア
ドレスが、128ハーフ・ワードの境界の所で設定
される。換言すれば、下位ビツトM8,M9と、
A10乃至A15のみが、増加されるということであ
る。インストラクシヨン・データ・レジスタIDR
中の2の補数技術を使うことによつてインデツク
スMUX10からの信号、即ちビツト10乃至115
は、−2の加算、即ち2で減算することにより、
減少することが出来る。 上述の実施例においては、デコーダ20は、
128ハーフ・ワードの境界を選択するように説明
されてきたが、若し、32ハーフ・ワードが望まれ
るならば、インデツクスMUX10からの全ての
ビツト10乃至19は、デコーダの制御の下で、モジ
ユロ・マスク機能ユニツト16を介して、共通ア
ドレス・レジスタ18にビツトM0乃至M9として
印加される。換言すれば、下位ビツト110乃至115
に+2を加えて、アダー12にビツトA10乃至
A15を出力させ、その出力ビツトを共通のアドレ
ス・レジスタ18の入力に直接に印加する。境界
が必要ない場合は、デコーダ20は、モジユロ・
マスク機能ユニツト16を通る繰上げビツトGY
と、全ての信号、即ちビツトA0乃至A9とを転送
するラインを選択することにより、これらのビツ
トをMGYビツト、M0乃至M9ビツトとして、共
通アドレス・レジスタ18の入力に印加し、且
つ、アダー12の出力からの下位ビツトA10乃至
A15を共通アドレス・レジスタ18の入力に直接
に印加する。本発明の信号発生装置は、例えばメ
モリ用のアドレス・ビツトや、信号プロセツサの
ような論理システムのデータ信号、即ちデータ・
ビツト用などのアドレス信号を発生するために使
用することが出来る。 第2A図及び第2B図は、第1図に示された本
発明の実施例の回路の細部を示す図である。 第2A図及び第2B図に示された信号発生装置
は、第1図に示された信号発生装置と同じであ
り、共通する素子は、同じ参照数字を使つてい
る。第2A図及び第2B図の回路図は、通過ゲー
ト回路16′が、第1図のモジユロ・マスク機能
ユニツト16を特定した1つの回路として示され
ているという点で第1図の回路と相異している。 第2A図及び第2B図において、インデツクス
MUX10と、アドレス・アダー12と、デー
タ・フオーマツタ、即ちMUX14と、共通アド
レス・レジスタ18が第1図と同じ構成で示され
ている。然しながら、第2A図及び第2B図にお
いては、ビツトGY、A0乃至A9の個々の信号ラ
イン、即ちビツト・ラインが、アドレス・アダー
12の出力の所で示されており、そして、ビツト
10乃至19の個々の信号ライン、即ちビツト・ライ
ンは、インデツクスMUX10の出力の所で示さ
れている。また、デコーダ20は、8個の選択ラ
イン、SEL0乃至SEL7を持つて示されている。通
路回路16′は、例えばNチヤンネルの電界効果
トランジスタのアレーで構成され、このトランジ
スタのアレーは、SEL0行乃至SEL7行と名付けら
れた8個の行と、共通アドレス・レジスタ18の
夫々の入力に接続された列MGY及び列M0乃至
列M9と名付けられた11個の列を持つている。各
行に設けられたトランジスタの各ソースは、共通
アドレス・レジスタ18の入力MGY、M0乃至
M9に共通して接続されている。例えば、第1列、
即ち再左端にあるすべてのトランジスタのソース
は、共通アドレス・レジスタのMGY入力に接続
されており、そして、最終列、即ち最右端のすべ
てのトランジスタのソースは、共通アドレス・レ
ジスタの入力M9に接続れている。行の各トラン
ジスタの各制御電極は、デコーダ20の選択ライ
ンSEL0乃至SEL7に夫々共通に接続されている。
例えば、最上部にあるすべてのトランジスタの制
御電極は、選択ラインSEL0に接続されており、
そして、最下端部のすべてのトランジスタの制御
電極は、選択ラインSEL7に接続されている。 アドレス・アダー12からの繰上げラインGY
は、通路ゲート回路16′中のトランジスタのア
レーの最左端の列、即ちMGYにある最上部、即
ちSEL0行に位置するトランジスタのドレーンに
接続されている。第1列の他のトランジスタの各
ドレーンは、接地電位Gのような基準電位に接続
されている。第2A図及び第2B図に示されてい
るように、ビツト・ラインA0乃至A9は、各M0
列乃至M9列にある最上部の行、即ちSEL0行のト
ランジスタのドレインに接続されている。第1A
図及び第1B図から分るように、トランジスタの
第2列M0において、最上部、即ち行SEL0中のト
ランジスタのドレインは、アドレス・アダー12
の出力からのビツト・ラインA0に接続されてお
り、そして、列M0中の他のトランジスタのドレ
インは、インデツクスMUX10の出力からのビ
ツト・ラインI0に接続されている。第3列、第4
列及び第5列、即ちM1、M2及びM3中のトラン
ジスタは、第2A図第2B図に示されているよう
に、M1列、M2列及びM3列中のトランジスタの
ドレインが、アドレス・アダー12のビツト・ラ
インA1、A2及びA3へ接続されており、且つM1
列、M2列及びM3列中の残りのトランジスタのド
レインが、ビツト・ラインI1、I2及びI3に接続さ
れていることを除けば、第2列、M0中のトラン
ジスタと同じように接続される。第6列、M4に
おいて、上部の2個のトランジスタのドレイン、
即ちSEL0行及びSEL1行中のトランジスタのドレ
インは、アダー・ビツト・ラインA4に接続され
ており、そして、第4列、M4中の残りのトラン
ジスタのドレインは、インデツクスMUXのビツ
ト・ラインI4に接続されている。第7列、M5に
おいて、上部の3個のトランジスタのドレイン、
即ち行、SEL0、SEL1及びSEL2の中のトランジ
スタのドレインは、アダーのビツト・ラインA5
に接続されており、そして、列、M5の残りのト
ランジスタのドレインは、インデツクスMUXの
ビツト・ラインI5に接続されている。第8列、
M6において、4個のトランジスタのドレイン、
即ち行SEL0、SEL1、SEL2及びSEL3中のトラン
ジスタのドレインは、アダーのビツト・ライン
A6に接続され、そして列、M6中の残りのトラン
ジスタのドレインは、インデツクスMUXビツ
ト・ラインI6に接続されている。第9列、M7に
おいて、下部の3個のトランジスタのドレイン、
即ち行SEL5、SEL6及びSEL7中のトランジスタ
のドレインは、インデツクスMUXのビツト・ラ
イン17に接続され、そして列、M7の残りのト
ランジスタのドレインは、アダーのビツト・ライ
ンに接続されている。第10列、M8において、下
部の2個のトランジスタのドレイン、即ち行
SEL6及びSEL7中のトランジスタのドレインは、
インデツクスMUXのビツト・ラインI8に接続さ
れ、そして、列、M8中の残りのトランジスタの
ドレインは、アダーのラインA8に接続されてい
る。最後の列、即ち第11列、M9において最下部
のトランジスタのドレイン、即ち行、SEL7中の
トランジスタのドレインは、インデツクスMUX
のビツト・ラインI9に接続され、そして列、M9
の残りのトランジスタのドレインは、アダーのビ
ツト・ラインに接続されている。 第2A図及び第2B図に示された信号発生装置
の動作において、正の信号、即ち正のパルスが、
デコーダ20のライン、SEL0に印加された時、
通路のゲート回路16′の第1の、即ち最上部の
行のすべてのトランジスタは、オンに転じて、ア
ドレス・アダー12の出力、GY、A0乃至A9を
共通アドレス・レジスタ18の入力MGY、M0
乃至M9に接続する。下位ビツトを転送するアド
レス・アダーのビツト・ラインA10乃至A15は、
共通アドレス・レジスタ18に直接接続されてい
るから、本発明の信号発生装置は、この状態にお
いては、通常の動作を行う、即ち境界が無い状態
として動作する。パルスがSEL1に印加されたと
き、第2の行中のすべてのトランジスタは、オン
に転じて、インデツクスMUXのビツトI0乃至I3
を、共通アドレス・レジスタ18の入力M0乃至
M3に接続し、且つ、アダーのビツトA4乃至A9
を、共通アドレス・レジスタ18の入力M4乃至
M9に夫々接続する。パルスがSEL2に印加された
とき、第3列のすべてのトランジスタは、オンに
転じて、インデツクスMUXのビツトI0乃至I4を、
共通アドレス・レジスタ18の入力M0乃至4Mに
接続し、且つ、アダーのビツトA5乃至A9を、共
通アドレス・レジスタ18の入力M5乃至M9に接
続する。SEL3が選択されたとき、第4列のすべ
てのトランジスタは、インデツクスMUXのビツ
トI0乃至I5を、共通アドレス・レジスタ18の入
力M0乃至M5に接続し、且つ、アダーのビツト
A6乃至A9を、共通アドレス・レジスタ18の入
力M6乃至M9に接続する。SEL4が選択されたと
き、インデツクスMUXのビツトI0乃至I6は、共
通アドレス・レジスタ18の入力M0乃至M6に印
加され、且つ、アダーA7乃至A9のビツトは、共
通アドレス・レジスタ18の入力M7乃至M9に印
加される。SEL5が選択されると、インデツクス
MUXのビツトI0乃至I7は、共通アドレス・レジ
スタ18の入力M0乃至M7に印加され、そしてア
ダーのビツトA8及びA9は、共通アドレス・レジ
スタ18の入力M8及びM9に印加される。SEL6
が選択されると、インデツクスMUXのビツトI0
乃至I8は、共通アドレス・レジスタ18の入力
M0乃至M8に印加され、そして、アダーのビツト
A9は、共通アドレス・レジスタ18の入力M9に
印加される。SEL7がオンに転ずると、インデツ
クスMUXのすべてのビツトI0乃至I9は、通路ゲ
ート回路16′を通つて共通アドレス・レジスタ
18の入力M0乃至M9に印加される。アダー12
からの繰上げビツトGYは、信号発生装置が、通
常の動作状態にある、即ち境界条件を設定する循
環アドレスシングの動作をおこなつていない時に
だけ、通過ゲート回路16′を通つて、レジスタ
18の入力MGYに印加されることには、注意を
払う必要がある。 SEL7のデコーダ20による選択に戻つて、説
明を続けると、若し、16ビツトワードのアドレ
ス、即ちI0乃至I15が、例えば、インデツクス
MUX10を通つてレジスタAから、アドレス・
アダー12に印加され、且つ、データ・フオーマ
ツタ、即ちMUX14を介して、インストラクシ
ヨン・データ・レジスタのビツトをアダー12に
与えることにより、レジスタAからのアドレスに
+2を加算したとすれば、その加算機能は、下位
ビツトの桁A10乃至A15に加算が行われて、共通
アドレス・レジスタ18の下位ビツトとして、レ
ジスタ18の入力に印加される範囲で遂行される
だけだから、共通アドレス・レジスタ18の他の
入力M0乃至M9は、通路ゲート回路16′を通過
して、レジスタ18の入力M0乃至M9に対して、
インデツクスMUX10のより上位のビツトI0乃
至I9となることが理解されるであろう。次に、共
通アドレス・レジスタ18の16ビツトワード、
M0乃至M9、及びA10乃至A15は、レジスタAに
印加され、次のサイクルで、レジスタAからのビ
ツトは、IDRからのインストラクシヨンによつ
て、+2の加算機能を反復するために、アダー1
2に印加される。入力M0乃至M9は、インデツク
スMUX10からの出力I0乃至I9と常に同じだか
ら、SEL7によつて選択され、境界を越える加算
を行う時賀がなく、従つて、このプロセスは、無
限に続けられることが理解出来るであろう。従つ
て、サーキユラー・アドレツシングが、アダーの
ビツトA10乃至A15の範囲内で行われる。若し、
より大きな境界が必要ならば、デコーダのSEL6
は、7個の下位のビツト、即ち、A10乃至A15に
加えてA9を選択し、そして、インデツクスMUX
10からのビツトI0乃至I8を、共通アドレス・レ
ジスタ18の入力M0乃至M8に与えるようにすれ
ばよいことが分る。若し、それ以上の大きな境界
のために、サーキユラー・アドレスシングの必要
がある場合は、SEL5からSEL1を選ぶことが出来
る。 別表の第表は、インデツクスMUX10から
のビツトと、通路ゲート回路16′を通るアダー
のビツトとの関係をより良く理解するためのもの
である。 従つて第表から、デコーダのSEL7が選択さ
れた時、通路、即ちモジユロ・マスク機能ユニツ
ト16′を通つて、インデツクスMUXからのビ
ツトI0乃至I9を、共通アドレス・レジスタ18に
印加し、且つ、A0乃至A9のビツトを、アダー1
2から通路16′を経て共通アドレス・レジスタ
18には向けず、その代りに、アダーの出力ビツ
トA10乃至A15を、直接に共通アドレス・レジス
タ18に直接印加することにより、境界32が設
定されることが理解出来る。同様に、境界256を
設定するためには、デコーダのSEL4を選択して、
インデツクスMUX10からのビツトI0乃至I6と、
アダー12のビツトA7乃至A9とを通路ゲート回
路16′を介して共通アドレス・レジスタ18に
印加し、且つ、アダーのビツトA10乃至A15を直
接に共通アドレス・レジスタ18に印加すること
によつて達成されることが分る。デコーダ20の
SEL0が選択された場合、アダー12からの繰上
げビツトGYと、ビツトA0乃至A9とは、アダー
12からの出力ビツト、GY、及びA0乃至A15、
即ち出力ワード全体を共通アドレス・レジスタ1
8に印加するために、通路ゲート回路16′を通
過する。 本発明の信号発生装置を共通アドレス・レジス
タ18に対して入力するという観点から見て、別
表の第表は、デコーダ20からの出力、SEL0
乃至SEL7の特定の選択に従つて、入力信号M0乃
至M9に対して、インデツクスMUX10からの
信号I0乃至I9のうちのどの信号と、アダー12か
らの信号A0乃至A9のうちのどの信号とが印加さ
れるかを示している。 本発明の信号発生装置を更によく理解するため
に幾つかの例を別表の第表に示した。 例1において、レジスタAが、アダー12に、
バイナリ形式でアドレス63を与え、そしてイン
ストラクシヨン・データ・レジスタIDRがモジユ
ロ境界条件32のために+2を加算するように、
アダーに命令した時、アダー12の出力の6個の
下位ビツトA10乃至A15は、00 0001になること
は注意を要する。次の+2の加算命令によつて、
アダー12の出力下位ビツトは、終極的には、11
111になる。その後、再度の加算命令によつて+
2の加算が行われると、より上位のビツトA0乃
至A9は、通路ゲート回路16′を通つて共通アド
レス・レジスタ18に、毎回印加されるので、ア
ダー12からの下位ビツトの出力A10乃至A15
は、00 0001に戻る。かくして、循環アドレツシ
ングが与えられる。繰上げの1のビツトを除却す
るための付加的な論理回路をアダー12に設けな
ければ、月並な繰上げ技術によつて、アダー12
の出力のA9の桁に1のビツトが伝播することが
理解出来る。ビツトI0乃至I9に対して、レジスタ
Aの中に0が示されているが、本発明の動作にお
いて、桁I0乃至I9に、任意のバイナリデジツトを
用いることが出来るのは、注意を要する。 第2の例において、レジスタAは、バイナリ形
式でアドレス127を与えられ、IDRからのインス
トラクシヨンは、モジユロ境界32よりも大きな
数字+66によつて増加している。下位ビツトA0
乃至A15が再度、加算処理に関与され、且つビツ
トI0乃至I9がレジスタ18の入力M0乃至M9に印
加されることにより、循環アドレツシングが与え
られることが理解出来る。第2例の繰上げの分断
部分において、繰上げは、有効桁A8に伝播する
のを許され、従つて、循環アドレツシングは遂行
されない。 上述の2つの例は、正の数で増加する例である
が、第3例のように、負の数を用いても同じよう
に本発明を達成することが出来る。第3例に示し
たように、減少すること、即ち−2を加算するた
めに、−2が反転された、即ち2の補数を、通常
の態様でアダー12に加算する。第3例におい
て、本発明のモジユロ・マスク技術において、循
環アドレスは、アダー12、またはレジスタ18
のビツトA10乃至A15に制限されており、1が繰
上げとして伝播するので、通常の繰上げ分断技術
は、負の数による減算、または加算を無能にする
ことは理解することが出来る。 モジユロ境界の選択は、ラインSEL0乃至SEL7
のうちの1つを選択するためにデコーダ20に供
給されるビツト、即ちインストラクシヨン・デー
タ・レジスタIDR中の適当なビツトによつて与え
ることができるし、また、デコーダ20は、任意
の公知の所望の制御レジスタによつて制御するこ
とが出来ることは注意を要する。 本発明の良好な実施例において、インデツクス
MUX10からの最下位ビツトI15を、デコーダ
20の制御用として使用することにより、このビ
ツトが1であれば、デコーダ20を付勢し、この
ビツトが0であれば、デコーダ20を滅勢するよ
うに制御することが出来る。 本発明の実施例として、第1図のモジユロ・マ
スク機能ユニツト16は、第2A図及び第2B図
において、通路ゲート回路16′として示されて
いるが、他の回路に変更することが出来る。例え
ば、アンド/オア/インバータ回路のような論理
的マクロ回路を使用することが出来、それは、共
通アドレス・レジスタ18の入力に所定のビツト
GY、A0乃至A9、及びI0乃至I9を通過させるため
に、適当な出力信号、アダー12、インデツクス
MUX10及びデコーダ20の出力を持つてい
る。アドレス発生回路は、論理システムの性能を
制限する論理回路の臨界通路(critical path)が
あるので、この信号発生装置は、モジユロ・マス
ク機能ユニツトを通過する際の遅延が、2ナノ秒
以下の通路ゲート回路を設けることが望ましい。
また、信号発生装置の通路ゲート回路16′は、
集積半導体回路を形成する際の密度の観点から言
つても非常に望ましい構成である。この信号発生
装置はモジユロ・マスク機能ユニツトとして、こ
の通路ゲート回路16′を使用することの他の利
点は、この回路がデプレツシヨンFETを使つて
いないから、直流電力消費が小さいことである。 従つて、本発明は、メモリ、または論理システ
ムに使用するために、高密度で、最少限のゲート
回路数で、最少限の遅延時間で、直流電力消費が
殆ど無く、しかも繰上げ分断を必要としない正の
数及び負の数で循環アドレツシングを与える信号
発生装置を提供することが理解できる。信号発生
装置の8個のモジユロの構成を説明してきたが、
本発明の信号発生装置は、16ビツトまたは32ビツ
ト、または必要に応じて、より以上のビツト数で
使用することが出来るから、境界数が0から所望
の数、例えば64000、またはそれ以上の数が本発
明によつて与えることが可能である。16ビツトが
目下、この分野で最も広く普及しているので、本
発明を16ビツト、即ちハーフワード・システムで
説明したけれども、本発明に従つて、正の数、ま
たは負の数の両方で演算することが出来るモジユ
ロ・マスク機能マクロ、即ちモジユロ・マスク回
路として、32ビツト・システム、即ちフルワー
ド・システムに、同じように用いることが出来
る。更に、第2A図及び第2B図のモジユロ・マ
スク機能ユニツト16′の特定の回路は、N型チ
ヤンネル・タイプのトランジスタを用いるものと
して説明したが、本発明の回路は、トランジスタ
のタイプとは無関係であつて、例えば相補型金属
酸化半導体(CMOS)技術も使用出来ることは
理解できるであろう。
【表】
【表】
【表】
F 発明の効果
増加形式でも、減少形式でも、両方の形式で動
作することができる循環アドレツシングを遂行す
る信号発生装置であつて、メモリ、または信号プ
ロセツサのような論理システムにおいて使用する
ための高い動作速度で、遅延時間が小さく、集積
密度を高くすることができ、且つ消費電力の小さ
な信号発生装置を与える。
作することができる循環アドレツシングを遂行す
る信号発生装置であつて、メモリ、または信号プ
ロセツサのような論理システムにおいて使用する
ための高い動作速度で、遅延時間が小さく、集積
密度を高くすることができ、且つ消費電力の小さ
な信号発生装置を与える。
第1図は本発明の信号発生装置の実施例を説明
するためのブロツク図、第2図は第2A図及び第
2B図の関係を示す図、第2A図及び第2B図は
第1図の実施例の細部を示す回路図である。 10…インデツクス・マルチプレクサ、12…
アドレス・アダー、16…モジユロ・マスク機能
ユニツト、18…共通アドレス・レジスタ、20
…デコーダ。
するためのブロツク図、第2図は第2A図及び第
2B図の関係を示す図、第2A図及び第2B図は
第1図の実施例の細部を示す回路図である。 10…インデツクス・マルチプレクサ、12…
アドレス・アダー、16…モジユロ・マスク機能
ユニツト、18…共通アドレス・レジスタ、20
…デコーダ。
Claims (1)
- 【特許請求の範囲】 1 第1及び第2の入力、並びに最下位ビツトか
ら最上位ビツトに至る複数個のバイナリ・ビツト
を出す出力を有するアダー手段12と、 上記アダー手段の第1の入力に、最下位ビツト
から最上位ビツトに至る複数個ののバイナリ・ビ
ツトを与えるベース・アドレス手段10と、 上記アダー手段の第2の入力に結合されたオペ
ランド手段14と、 上記アダー手段の最上位ビツトが供給される第
1の入力、及び上記ベース・アドレス手段の最上
位ビツトが供給される第2の入力、並びに出力及
び制御手段を有するモジユロ手段16と、 上記モジユロ手段の制御手段に結合されたコン
トローラ20と、 上記アダー手段の最下位ビツトが供給される第
1の入力、及び上記モジユロ手段の出力を受取る
第2の入力、並びに出力を有する信号受取り手段
18と、を備えた信号発生装置。
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US07/067,580 US4833602A (en) | 1987-06-29 | 1987-06-29 | Signal generator using modulo means |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS6410356A JPS6410356A (en) | 1989-01-13 |
| JPH0570180B2 true JPH0570180B2 (ja) | 1993-10-04 |
Family
ID=22076986
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP63119424A Granted JPS6410356A (en) | 1987-06-29 | 1988-05-18 | Signal generator |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US4833602A (ja) |
| EP (1) | EP0303009B1 (ja) |
| JP (1) | JPS6410356A (ja) |
| DE (1) | DE3854212T2 (ja) |
Families Citing this family (18)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5327541A (en) * | 1989-10-13 | 1994-07-05 | Texas Instruments Inc. | Global rotation of data in synchronous vector processor |
| EP0429733B1 (en) * | 1989-11-17 | 1999-04-28 | Texas Instruments Incorporated | Multiprocessor with crossbar between processors and memories |
| FR2666916A1 (fr) * | 1990-09-19 | 1992-03-20 | Alcatel Radiotelephone | Vanne regulatrice de debit. |
| WO1992008186A1 (en) * | 1990-11-02 | 1992-05-14 | Analog Devices, Inc. | Address generator for circular buffer |
| US5623621A (en) * | 1990-11-02 | 1997-04-22 | Analog Devices, Inc. | Apparatus for generating target addresses within a circular buffer including a register for storing position and size of the circular buffer |
| US5463749A (en) * | 1993-01-13 | 1995-10-31 | Dsp Semiconductors Ltd | Simplified cyclical buffer |
| US5765219A (en) * | 1995-02-23 | 1998-06-09 | Sony Corporation | Apparatus and method for incrementally accessing a system memory |
| KR19980052741A (ko) * | 1996-12-24 | 1998-09-25 | 김광호 | 모듈로(Modulo) 주소발생기 및 그 방법 |
| KR100236536B1 (ko) * | 1997-01-10 | 1999-12-15 | 윤종용 | 모듈로 주소발생기 및 그 방법 |
| US6047364A (en) * | 1997-08-27 | 2000-04-04 | Lucent Technologies Inc. | True modulo addressing generator |
| US5983333A (en) * | 1997-08-27 | 1999-11-09 | Lucent Technologies Inc. | High speed module address generator |
| US6049858A (en) * | 1997-08-27 | 2000-04-11 | Lucent Technologies Inc. | Modulo address generator with precomputed comparison and correction terms |
| US6073228A (en) * | 1997-09-18 | 2000-06-06 | Lucent Technologies Inc. | Modulo address generator for generating an updated address |
| IE20000713A1 (en) * | 1999-09-08 | 2001-04-04 | Massana Res Ltd | An address generation unit |
| JP4042364B2 (ja) * | 2001-07-27 | 2008-02-06 | 日本電気株式会社 | アドレス生成回路、選択判断回路 |
| US7014763B2 (en) * | 2003-02-03 | 2006-03-21 | Aqua-Aerobic Systems, Inc. | Multiple barrier biological treatment systems |
| US7849125B2 (en) | 2006-07-07 | 2010-12-07 | Via Telecom Co., Ltd | Efficient computation of the modulo operation based on divisor (2n-1) |
| US7782976B1 (en) | 2007-10-12 | 2010-08-24 | Bedford Signals Corporation | Multiple channel waveform generator with dynamic delay through symbol superresolution |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3980874A (en) * | 1975-05-09 | 1976-09-14 | Burroughs Corporation | Binary to modulo M translation |
| US4202035A (en) * | 1977-11-25 | 1980-05-06 | Mcdonnell Douglas Corporation | Modulo addressing apparatus for use in a microprocessor |
| US4569016A (en) * | 1983-06-30 | 1986-02-04 | International Business Machines Corporation | Mechanism for implementing one machine cycle executable mask and rotate instructions in a primitive instruction set computing system |
| US4742479A (en) * | 1985-03-25 | 1988-05-03 | Motorola, Inc. | Modulo arithmetic unit having arbitrary offset and modulo values |
| US4935867A (en) * | 1986-03-04 | 1990-06-19 | Advanced Micro Devices, Inc. | Signal processor memory management unit with indirect addressing using selectable offsets and modulo values for indexed address calculations |
-
1987
- 1987-06-29 US US07/067,580 patent/US4833602A/en not_active Expired - Fee Related
-
1988
- 1988-05-18 JP JP63119424A patent/JPS6410356A/ja active Granted
- 1988-05-20 EP EP88108136A patent/EP0303009B1/en not_active Expired - Lifetime
- 1988-05-20 DE DE3854212T patent/DE3854212T2/de not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JPS6410356A (en) | 1989-01-13 |
| EP0303009A3 (en) | 1991-09-11 |
| DE3854212T2 (de) | 1996-02-29 |
| DE3854212D1 (de) | 1995-08-31 |
| EP0303009B1 (en) | 1995-07-26 |
| EP0303009A2 (en) | 1989-02-15 |
| US4833602A (en) | 1989-05-23 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11693576B2 (en) | Apparatuses and methods for memory alignment | |
| JPH0570180B2 (ja) | ||
| US5319763A (en) | Data processor with concurrent static and dynamic masking of operand information and method therefor | |
| US5953738A (en) | DRAM with integral SRAM and arithmetic-logic units | |
| EP0263924B1 (en) | On-chip bit reordering structure | |
| US7308470B2 (en) | Smaller and lower power static mux circuitry in generating multiplier partial product signals | |
| US4153939A (en) | Incrementer circuit | |
| US10622034B2 (en) | Element value comparison in memory | |
| JPH0218498B2 (ja) | ||
| WO1996037820A1 (en) | Barrel shifter | |
| JP2530070B2 (ja) | 加算器 | |
| US5047972A (en) | Digital signal processor with memory having data shift function | |
| JPH0844620A (ja) | マスク発生に関する改良 | |
| US6115294A (en) | Method and apparatus for multi-bit register cell | |
| US6055557A (en) | Adder circuit and method therefor | |
| US4723258A (en) | Counter circuit | |
| US6782467B1 (en) | Method and apparatus for fast limited core area access and cross-port word size multiplication in synchronous multiport memories | |
| JP2616714B2 (ja) | 半導体記憶装置 | |
| JP2517154B2 (ja) | デ―タ処理装置 | |
| JPH08171799A (ja) | 半導体メモリ装置 | |
| JPS6045501B2 (ja) | 連想メモリ装置 | |
| JPS63306718A (ja) | シリアルアクセス回路 | |
| JPH08172342A (ja) | デジタルフィルタ | |
| Mehta et al. | Design and Implementation of High Speed RNS Input-Output Converters | |
| JPH1021690A (ja) | ダイナミック連想アクセスメモリー |