JPS6336017B2 - - Google Patents

Info

Publication number
JPS6336017B2
JPS6336017B2 JP54157229A JP15722979A JPS6336017B2 JP S6336017 B2 JPS6336017 B2 JP S6336017B2 JP 54157229 A JP54157229 A JP 54157229A JP 15722979 A JP15722979 A JP 15722979A JP S6336017 B2 JPS6336017 B2 JP S6336017B2
Authority
JP
Japan
Prior art keywords
output
control signal
register
memory
address
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
Application number
JP54157229A
Other languages
English (en)
Other versions
JPS5679352A (en
Inventor
Hiroshi Kadota
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.)
NEC Corp
Original Assignee
Nippon Electric Co Ltd
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 Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP15722979A priority Critical patent/JPS5679352A/ja
Publication of JPS5679352A publication Critical patent/JPS5679352A/ja
Publication of JPS6336017B2 publication Critical patent/JPS6336017B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Executing Machine-Instructions (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は情報処理装置等において、メモリーの
読出・書込とを実行する際のメモリーアドレスの
生成方式に関する。特に、配列として定義された
メモリー領域のアドレス指定に適するものであ
る。
〔従来の技術〕
最近の半導体技術の進展は著しく、特にマイク
ロコンピユータの分野においてはミニコンピユー
タに匹敵する程の機能を持つものが現れてきた。
従来マイクロコンピユータのソフトウエア開発に
はハードウエアと1対1に対応するアセンブリ言
語が使用されていたが、最近のマイクロコンピユ
ータに関してはPL/I(Programming
Language I)やFORTRAN等のいわゆる高級
言語を使用することが多い。これら高級言語には
多くのデータ型があり、例えばPL/I系のもの
であれば1バイト(8ビツト)を単位とするバイ
ト型、2バイト(16ビツト)を単位とするワード
型、4バイト(32ビツト)を単位とするダブルワ
ード型などがある。通常メモリーの読出・書込
は、1バイト単位で行われるため、ワード型、ダ
ブルワード型に対するアドレス指定はそれぞれ2
バイト毎、または4バイト毎に行わなければなら
ない。
特に配列型のデータを参照する場合を考えてみ
ると、普通、配列MのI番目の要素M(I−1)
はインデツクス・アドレツシングを用いて参照さ
れる。基底アドレス・レジスタBRにMの先頭ア
ドレスを格納し、インデツクス・レジスタIXに
基底アドレスからの変位すなわちIの値を入れ、
BRとIXの内容の和、BR+IXがM(I−1)のア
ドレスを指すことになる。
次に、I+1番目の要素を参照するためには、
配列Mがバイト型の配列であればIXの内容を1
だけ増加させればよい。しかし、Mがワード型、
ダブル・ワード型の場合には1だけ増加した後に
それぞれ2、4倍させる必要がある。
第1図は、配列型データのメモリー上の割付例
を示す図面である。第1図で1はメモリーでAは
バイト型のメモリー上の割付例を、Bはワード型
のメモリー上の割付例を、Cはダブル・ワード型
のメモリー上の割付例をそれぞれ示す。また、第
1図A(I),B(I),C(I)は、バイト型A、
ワード型B、ダブル・ワード型Cの配列における
I+1番目の要素をそれぞれ示す。ここで、Iは
メモリー上にとられた変数であり、内容は直接確
認できない。また第1図でAは基底アドレス、A
(I)はI+1番目の要素をそれぞれ示す。
第2図は、従来例アドレス発生装置要部構成図
である。基底アドレス情報を格納するレジスタ6
および7の出力は、信号線群8および9を介して
2入力の2進加算器10の入力端子に接続されて
いる。この2進加算器10の出力は、信号線群1
1を介してアドレスバス12に接続されている。
このような構成により、A(I),B(I)およ
びC(I)のアドレスをアドレスバス12上に発
生させる方法を説明する。
(1) A(I)の場合 レジスタ6にバイト型Aの先頭のアドレス
すなわち基底アドレスを格納する。
レジスタ7にIの内容すなわち基底アドレ
スからの変位を格納する。
2進加算器10でレジスタ6とレジスタ7
の内容を加算し、加算した結果をアドレスバ
ス12上に出力する。
(2) B(I)の場合 レジスタ6にワード型Bの先頭アドレスを
格納する。
レジスタ7にIの内容を格納する。
レジスタ7の内容を2倍する。
2進加算器10でレジスタ6および7の内
容を加算し、加算結果をアドレスバス12に
出力する。
(3) C(I)の場合 レジスタ6にダブルワード型Cの先頭アド
レスを格納する。
レジスタ7にIの内容を格納する。
レジスタ7の内容を4倍する。
2進加算器10でレジスタ6および7の内
容を加算し、加算結果をアドレスバス12に
出力する。
このようにワード型あるいはダブル・ワード型
の配列要素を扱う場合には、レジスタ7の内容を
2倍あるいは4倍するための命令実行が必要とな
る。このため要素A(I)の書込・読出に比べ、
要素B(I)、要素C(I)の書込・読出には余分
な命令のための実行時間が長くなり、かつ命令用
のメモリー量が多くなる。
一般に高級言語で書かれたプログラムはアセン
ブリ言語で書かれたプログラムに比べて実行速度
は遅く、メモリー量は多い。従つて、ワード型
B、ダブル・ワード型Cのデータ型使用により、
この欠点がさらに強調されるため高級言語の普及
を妨げることになる。特にマイクロコンピユータ
では処理能力が小さいのでこの欠点は重大であ
る。
このように、ワード型、ダブル・ワード型では
メモリーの読出・書込時にアドレスの指定に特別
の処理時間が必要となり、実行時間が長くなり、
かつ命令用のメモリー量も多くなる欠点を有す
る。
そこで、ワード型のメモリーの読出・書込時の
アドレス指定ができるように定数倍回路を設け、
この定数倍回路でバイト型のアドレスデータの出
力を定数倍する技術、あるいは、バイト型とワー
ド型とを加算器に入力するデータを制御するゲー
トを設けてアドレス生成の時間を短縮する技術が
提案されている(例えば特開昭52−138845号公
報、特開昭50−81233号公報)。
これらの技術を利用して基底アドレスをバイト
型、ワード型、ダブルワード型に対応してアドレ
ス生成する技術を第3図に示す。
第3図は、第2図で説明した従来例と比較する
と、倍率回路としてシフト回路15を設け、この
シフト回路15の入力にレジスタ7の出力を接続
し、このシフト回路15の出力を2進加算器10
の入力に接続するとともに、このシフト回路15
にこのシフト回路15の起動信号を与える制御信
号線16を接続したところが異なるところであ
り、他の構成については、第2図で説明した構成
と同様である。なお、この例では、ワード型Bの
アドレス生成の場合を示している。
このような構成でアドレス生成回路の動作を説
明する。いま、2進加算器10にレジスタ6およ
び7の出力が与えられる。このとき、レジスタ7
の出力は、シフト回路15を介して2進加算器1
0に与えられる。このシフト回路15へ制御信号
線16から論理「1」が与えられると、レジスタ
7の内容は1ビツトシフトして2進加算器10に
与えられる。従つて、2進加算器10は、レジス
タ6に格納されたワード型Bの先頭アドレスと、
レジスタ7に格納された要素Iの2倍されたもの
とを加算し、アドレスバス12に出力することに
なる。このため、ワード型Bの配列要素のアドレ
ス生成は自動的に容易に行われる。
〔発明が解決しようとする問題点〕
しかし、上述の倍率回路として、従来はシフト
レジスタ回路を用いており、このシフトレジスタ
の各ビツトをシフトして出力するのは、レジスタ
回路を用いる以上その構成が簡単ではなく、ま
た、シフト動作を高速に行おうとすると、シフト
回路が高価なものとなり、簡単には行えなかつ
た。
本発明は、この倍率回路を簡単な構成でしかも
高速に動作させることのできるアドレス生成回路
を提供することを目的とする。
〔問題点を解決するための手段〕
本発明は、メモリー上の基底アドレスを格納す
る第一のレジスタ手段と、このメモリーの基底ア
ドレスからの変位を格納する第二のレジスタ手段
と、この第二のレジスタ手段の出力内容を制御信
号に対応してn倍(nは0または正整数)する倍
率回路と、上記第一および上記倍率回路の内容を
加算しメモリーアドレス情報として出力する2進
加算器とを備えたアドレス生成装置において、 上記倍率回路は、上記第二のレジスタ手段の各
桁出力を上記制御信号が与えられたときは一つ上
の桁に出力し、最下位桁に論理「0」を出力する
スイツチ群と、上記制御信号を反転する反転回路
と、この反転回路の出力信号により、同一桁への
出力を制御信号が所定の論理にあるときに禁止す
るスイツチ群とを備えることを特徴とする。
〔作用〕
本発明のシフト回路は、入力される制御信号で
オンし、第二のレジスタの出力を上位桁に出力
し、最下位桁に「0」を出力するスイツチ群が、
入力される制御信号でオンして、第二のレジスタ
の出力を上位桁に出力して入力をシフトし、その
ときに同一桁への出力は制御信号を反転する回路
出力により動作するスイツチ群により禁止され
る。
このシフト回路は簡単なスイツチ群から構成さ
れるので、その動作は高速であり、その設計は容
易で安価に構成できる。
〔実施例〕
以下図面を参照して本発明一実施例を説明す
る。
第4図は、本発明実施例の倍率回路の構成を示
す回路図であり、符号21〜25はスイツチ素子
である。このスイツチ素子23〜25には、制御
信号線26が接続されている。また、この制御信
号線26は、分岐してインバータ27を介してス
イツチ素子21および22に接続されている。ス
イツチ素子23には零入力が、スイツチ素子22
および24には「20」の重みを持つ入力が、スイ
ツチ素子21および25には「21」の重みを持つ
入力がそれぞれ接続されている。また、スイツチ
素子22および23は「20」の重みを持つ信号が
出力される出力線28に、スイツチ素子21およ
び24は「21」の重みを持つ信号が出力される出
力線29に、スイツチ素子25は「22」の重みを
持つ信号が出力される図外の出力線にそれぞれ接
続されている。なお、重みは2進数の桁数を示す
ことは明らかであり、同様な構成を繰り返すこと
により本例以上の重みを持つ入力または出力を得
ることができる。
いま、制御信号線26が「1」になるとスイツ
チ素子23〜25は導通し、逆にスイツチ素子2
1,22はインバータ27の反転出力が「0」と
なるため、「断」の状態になる。従つて、入力
「21」はスイツチ素子25を通じて図外の重み
「23」出力へ、入力「20」はスイツチ素子24を
通じて「20」を出力する出力線29へ出力され
る。このとき、出力線28へはスイツチ素子23
を通じて「0」の信号が出力される。次に、制御
信号線26が「0」の値をとると、スイツチ素子
23〜25はすべて「断」となり、逆にインバー
タ27の反転出力が「1」となるためスイツチ素
子21,22が導通し入力「21」が出力線29
へ、入力「20」が出力線28へ出力される。
すなわち制御信号線26が「1」の値をとると
出力は入力を1ビツト高位へシフトした値をと
り、制御信号線26が「0」であると入力と出力
とは全く同一信号となる。
なお上記例ではバイト型とワード型用のアドレ
ス生成方法について述べたが、2ビツトシフトを
行うスイツチ群を設ければ、ダブル・ワード型ま
たそれ以上の語長を持つ型に対しても応用でき
る。さらに、制御信号を複数設け、それに対応し
て対応するスイツチ群を設ければnビツトシフト
回路を構成して、同一回路でバイト型、ワード
型、ダブル・ワード型等のアドレス生成を行うこ
とも可能である。また、この制御信号は各々のコ
ンピユータの命令語中に持つことも可能である
し、特定のフリツプフロツプの出力とすることも
可能である。
〔発明の効果〕
本発明は以上説明したように、マイクロコンピ
ユータで高級言語を使用する場合のアドレス生成
において、2バイト(16ビツト)を情報の単位と
するワード型や、4バイト(32ビツト)を情報単
位とするダブル・ワード型等のデータ型に対する
アドレス指定を回路構成が簡単で高速に動作する
シフト回路を用いることにより自動的にハードウ
エアで2バイト毎あるいは4バイト毎に行うこと
ができる。したがつて、ハードウエアが簡単かつ
安価に構成できる効果がある。
【図面の簡単な説明】
第1図はデータ型メモリー上の割付図。第2図
は従来例要部構成図。第3図は従来例要部構成
図。第4図は本発明一実施例のシフト回路の構成
図。 1……メモリー、6,7……レジスタ、8,
9,11……信号線群、10……2進加算器、1
2……アドレスバス、15……シフト回路、1
6,26……制御信号線、21〜25……スイツ
チ素子、28,29……出力線。

Claims (1)

  1. 【特許請求の範囲】 1 メモリー上の基底アドレスを格納する第一の
    レジスタ手段と、このメモリーの基底アドレスか
    らの変位を格納する第二のレジスタ手段と、この
    第二のレジスタ手段の出力内容を制御信号に対応
    してn倍(nは0または正整数)する倍率回路
    と、上記第一および上記倍率回路の内容を加算し
    メモリーアドレス情報として出力する2進加算器
    とを備えたアドレス生成装置において、 上記倍率回路は、 上記第二のレジスタ手段の各桁出力を上記制御
    信号が与えられたときは一つ上の桁に出力し、最
    下位桁に論理「0」を出力するスイツチ群23,
    24,25と、上記制御信号を反転する反転回路
    27と、この反転回路の出力信号により、同一桁
    への出力を制御信号が所定の論理にあるときに禁
    止するスイツチ群21,22とを備える ことを特徴とするアドレス生成装置。
JP15722979A 1979-12-03 1979-12-03 Address generator Granted JPS5679352A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP15722979A JPS5679352A (en) 1979-12-03 1979-12-03 Address generator

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP15722979A JPS5679352A (en) 1979-12-03 1979-12-03 Address generator

Publications (2)

Publication Number Publication Date
JPS5679352A JPS5679352A (en) 1981-06-29
JPS6336017B2 true JPS6336017B2 (ja) 1988-07-18

Family

ID=15645044

Family Applications (1)

Application Number Title Priority Date Filing Date
JP15722979A Granted JPS5679352A (en) 1979-12-03 1979-12-03 Address generator

Country Status (1)

Country Link
JP (1) JPS5679352A (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60173653A (ja) * 1984-02-20 1985-09-07 Oki Electric Ind Co Ltd Dma制御装置
JPS60173643A (ja) * 1984-02-20 1985-09-07 Oki Electric Ind Co Ltd アドレス発生装置
JPS6142035A (ja) * 1984-08-03 1986-02-28 Hitachi Ltd 論理型情報処理装置
US7877571B2 (en) * 2007-11-20 2011-01-25 Qualcomm, Incorporated System and method of determining an address of an element within a table

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3818203A (en) * 1973-08-27 1974-06-18 Honeywell Inc Matrix shifter
JPS5081233A (ja) * 1973-11-16 1975-07-01
JPS5299027A (en) * 1976-02-16 1977-08-19 Hitachi Ltd Address designating system
JPS52132644A (en) * 1976-02-20 1977-11-07 Intel Corp Method of processing plural digital signals at a time and digital logical circuit for processing digital signals
JPS52138845A (en) * 1976-05-14 1977-11-19 Hitachi Shipbuilding Eng Co Address control circuit for direct data transfer

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3818203A (en) * 1973-08-27 1974-06-18 Honeywell Inc Matrix shifter
JPS5081233A (ja) * 1973-11-16 1975-07-01
JPS5299027A (en) * 1976-02-16 1977-08-19 Hitachi Ltd Address designating system
JPS52132644A (en) * 1976-02-20 1977-11-07 Intel Corp Method of processing plural digital signals at a time and digital logical circuit for processing digital signals
JPS52138845A (en) * 1976-05-14 1977-11-19 Hitachi Shipbuilding Eng Co Address control circuit for direct data transfer

Also Published As

Publication number Publication date
JPS5679352A (en) 1981-06-29

Similar Documents

Publication Publication Date Title
US4626825A (en) Logarithmic conversion apparatus
KR940000293B1 (ko) 단순화된 동기적 메시 프로세서
JPS5927944B2 (ja) マトリクスデ−タ並列処理システム
US4857882A (en) Comparator array logic
US3984670A (en) Expandable digital arithmetic logic register stack
US4833602A (en) Signal generator using modulo means
US5430667A (en) Hardware arrangement for fast fourier transform having improved addressing techniques
US5109524A (en) Digital processor with a four part data register for storing data before and after data conversion and data calculations
US4503511A (en) Computing system with multifunctional arithmetic logic unit in single integrated circuit
EP0229734A2 (en) Microprogram control device
US5402368A (en) Computing unit and digital signal processor using the same
US4754424A (en) Information processing unit having data generating means for generating immediate data
JPS6336017B2 (ja)
JPH11353225A (ja) 逐次実行型でグレイ・コード体系のアドレッシングを行うタイプのプロセッサがアクセスするメモリ、及びメモリにコード/データを格納する方法
US4852038A (en) Logarithmic calculating apparatus
JP3433588B2 (ja) マスクデータ生成回路及びビットフィールド操作回路
US3319228A (en) Digital storage register transfer apparatus
US4862346A (en) Index for a register file with update of addresses using simultaneously received current, change, test, and reload addresses
US4323978A (en) Arithmetic element based on the DDA principle
JPS6148174B2 (ja)
US4890255A (en) Data processing device for simultaneously activating and applying paraller trains of commands to memories for storing matrices
SU1128253A1 (ru) Устройство дл формировани адресов регистровой пам ти
JPH0553920A (ja) 構造化アドレス生成装置
JP2616714B2 (ja) 半導体記憶装置
JP3488059B2 (ja) 割り込みアドレス拡張回路