JPS62259140A - Address generating circuit - Google Patents

Address generating circuit

Info

Publication number
JPS62259140A
JPS62259140A JP10191086A JP10191086A JPS62259140A JP S62259140 A JPS62259140 A JP S62259140A JP 10191086 A JP10191086 A JP 10191086A JP 10191086 A JP10191086 A JP 10191086A JP S62259140 A JPS62259140 A JP S62259140A
Authority
JP
Japan
Prior art keywords
address
adder
idx
addition
index
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
Application number
JP10191086A
Other languages
Japanese (ja)
Inventor
Masao Iida
飯田 政雄
Toshio Jiyufuku
寿福 利夫
Giichi Mori
森 義一
Akira Nomura
野村 彰
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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry 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 Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP10191086A priority Critical patent/JPS62259140A/en
Publication of JPS62259140A publication Critical patent/JPS62259140A/en
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Executing Machine-Instructions (AREA)

Abstract

PURPOSE:To obtain an address generating circuit that can decrease the number of instruction steps produced by the generation of addresses, by deciding with control whether the code extension of an offset address supplied to an adder should be carried out or not. CONSTITUTION:When an index operation filed IDX is equal to '00', the address qualification data (i) is held as it is in a selection field IX24 and an offset address A is outputted as it is to the contents of a generated address. Then the address value AD2 with which the codes of the address A are infinite is outputted to an output terminal 22. When the field IDX is equal to '01', an adder 23 is set under an inhibition mode with the input of the address A. Thus the adder 23 performs an addition (i+AD2) and outputs it. Then the adder 23 is set under a code extension mode with IDX=10 and regards the address A as a number having a code. Thus the code is extended up to the bit length equal to (i) and the adder 23 performs an addition (i+A=i+AS.AD1) and outputs it. When IDX=11 is satisfied, the same addition as that carried out in a mode of IDX=10 is performed and outputted via a selector 26. At the same time, the addition is set again to the field IX24 via a selector 25 for the updating of indexes.

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明はアドレス生成回路に関し、更に詳細には1チッ
プ信号処理プロセッサのメモリ・アドレスの生成回路に
おけるインデックス修飾を用いてアドレスを生成する方
式−関する。
DETAILED DESCRIPTION OF THE INVENTION (Field of Industrial Application) The present invention relates to an address generation circuit, and more particularly to a method of generating addresses using index modification in a memory address generation circuit of a one-chip signal processing processor. related.

(従来の技術) 従来、インデックス修飾を用いたアドレス生成方式は情
報処理学会編「新版情報処理ハンドブック」、第17&
I3章〔3〕、昭和57年7月20日発行オーム社P、
793〜794に開示されている。以下、従来の方式を
図面に基づいて説明する。
(Prior art) Conventionally, an address generation method using index modification is described in "New Edition Information Processing Handbook" edited by Information Processing Society of Japan, Volume 17 &
Chapter I3 [3], published July 20, 1981, Ohmsha P,
No. 793-794. The conventional method will be explained below based on the drawings.

第5図は、従来のアドレス生成回路を示す回路図である
。同図において、10は命令で指定されるオフセット・
アドレス(A)を入力する入力端子、11は命令で指定
される修飾設定アドレス(i)を入力する入力端子、1
2は生成され”たアドレス・データが出力される出力端
子、13はインデックス・レジスタ(以下、IXと略す
)、14は2人力の加算器(以下、ADDと略す)であ
る。
FIG. 5 is a circuit diagram showing a conventional address generation circuit. In the same figure, 10 is the offset specified by the command.
An input terminal for inputting the address (A), 11 is an input terminal for inputting the modification setting address (i) specified by the command, 1
2 is an output terminal to which generated address data is output, 13 is an index register (hereinafter abbreviated as IX), and 14 is a two-manual adder (hereinafter abbreviated as ADD).

次に、第5図を用いて従来例の動作を説明する。Next, the operation of the conventional example will be explained using FIG.

先ず、インデックス操作命令により修飾設定アドレス(
i)を入力端子11を介してlX13に設定しておく1
次に1例えば演算命令によりオフセット・アドレス(A
)を入力端子10を介して指定すると、アドレス生成回
路はADD14においてlX13のデータ(i)を加算
して、その結果のアドレス・デ−タ(A+i)を出力端
子12に出力する。そして、このアドレス・データ出力
A + i = Xの値で図示していないメモリのアド
レスを指定する。
First, the modification setting address (
i) is set to lX13 via input terminal 111
Next, the offset address (A
) is specified via the input terminal 10, the address generation circuit adds the data (i) of lX13 in the ADD 14 and outputs the resulting address data (A+i) to the output terminal 12. Then, the address of a memory (not shown) is specified by the value of this address/data output A+i=X.

特に、信号処理プロセッサでは、通常、データ形式とし
て2進数で2の補数表現を採用しており。
In particular, signal processors typically use binary 2's complement representation as their data format.

lX13のデータ(i)と命令指定のオフセット・アド
レス(A)との加算を符号付数で行っていた。これは、
メモリのアドレス指定が修飾設定アドレス(i)に対し
て、プラス方向へ歩進する操作i+α(α:定数)とマ
イナス方向へ歩進するi−αとが2の補数演算の特徴に
より、同じ命令語長のアドレス・データで同一の加算処
理となるためであった。
The data (i) of lX13 and the offset address (A) specified by the instruction were added using a signed number. this is,
Due to the characteristics of two's complement arithmetic, the operation i+α (α: constant) that increments in the plus direction and i-α that increments in the minus direction are the same instruction for memory address specification (modified setting address (i)). This is because the same addition process is performed for word length address data.

(発明が解決しようとする問題点) しかしながら、上記従来の回路構成では、限られた命令
語長の中で、オフセット・アドレス・データまたはイン
デックス修飾データとに割当てられた語長に対して、符
号ビットが1ビツト分必要となる。このため、−回の命
令操作で生成できるアドレス値の絶対値の範囲が狭くな
り、アドレス生成の命令ステップが増え、プログラム規
模が大きくなると共に、処理時間が増えるという問題点
があった。
(Problems to be Solved by the Invention) However, in the above conventional circuit configuration, within the limited instruction word length, the word length assigned to the offset address data or index modification data cannot be coded. One bit is required. As a result, the range of absolute values of address values that can be generated by - number of instruction operations is narrowed, the number of instruction steps for address generation increases, the scale of the program increases, and the processing time increases.

本発明はこれらの問題点を解決するためのもので、命令
語長の中のアドレス生成用ビット幅を最大限に利用でき
るインデックス修飾のアドレス生成回路を提供すること
を目的とする。
The present invention is intended to solve these problems, and an object of the present invention is to provide an index-modified address generation circuit that can make maximum use of the address generation bit width in the instruction word length.

(問題点を解決するための手段) 本発明は前記問題点を解決するために、1チップ信号処
理プロセッサにおいて、インデックス操作命令で指定さ
れる修飾設定アドレスを一時記憶するインデックスレジ
スタと、このインデックスレジスタからの出力と演算命
令で指定されるオフセットアドレスとを加算する加算器
と、この加算器に入力されるオフセラ1〜アドレスの符
号拡張を行なうか否か制御する制御回路とを具備してい
る。
(Means for Solving the Problems) In order to solve the above-mentioned problems, the present invention provides an index register for temporarily storing a modification setting address specified by an index operation instruction, and an index register for temporarily storing a modification setting address specified by an index operation instruction. The adder includes an adder that adds the output from the adder and an offset address specified by an arithmetic instruction, and a control circuit that controls whether or not to perform sign extension of the offset address 1 to address input to the adder.

(作用) 以上のような構成を有する本発明によれば、インデック
スレジスタの出力に対して、加算器において演算命令で
指定されるオフセットアドレスのデータ値を加算して1
チップ信号処理プロセッサのメモリ・アドレスを生成す
る。ここで、制御回路により加算器に入力されるオフセ
ットアドレスの符号拡張を行なう符号拡張モードに加算
器が設定され、またはオフセットアドレスの符号拡張を
禁止子る禁止モードに加算器が設定されることにより、
2種類の生成アドレス値の範囲を選択的に使用できる。
(Operation) According to the present invention having the above configuration, the data value of the offset address specified by the operation instruction is added to the output of the index register in the adder, and the data value is 1.
Generates a memory address for the chip signal processing processor. Here, the adder is set to a sign extension mode in which the control circuit performs sign extension of the offset address input to the adder, or the adder is set to a prohibition mode in which sign extension of the offset address is prohibited. ,
Two types of generated address value ranges can be selectively used.

したがって、本発明は前記問題点を解決でき。Therefore, the present invention can solve the above problems.

アドレス生成に伴なう命令ステップ数を低減できるアド
レス生成回路を提供できる。
It is possible to provide an address generation circuit that can reduce the number of instruction steps associated with address generation.

(実施例) 以下、本発明の一実施例を図面に基づいて説明する。(Example) Hereinafter, one embodiment of the present invention will be described based on the drawings.

第1図は、本発明の一実施例を示す回路図である。同図
において、20は命令で指定されるオフセット・アドレ
ス(A)を入力する入力端子、21は命令で指定される
修飾設定アドレス(i)を入力する入力端子、22は生
成されたアドレス・データが出力される出力端子、23
はm=8ビツトの2人力のADD、24はIX、25,
26は2人力1出力のセレクタ(以下、SELと略す)
、27はオフセット・アドレス(A)の符号ビット拡張
禁止ゲート、28は符号ビット拡張禁止ゲート27の動
作設定端子である。
FIG. 1 is a circuit diagram showing one embodiment of the present invention. In the figure, 20 is an input terminal for inputting the offset address (A) specified by the instruction, 21 is an input terminal for inputting the modification setting address (i) specified by the instruction, and 22 is the generated address data. output terminal, 23
is m = 8-bit two-person ADD, 24 is IX, 25,
26 is a 2-man power 1-output selector (hereinafter abbreviated as SEL)
, 27 is a sign bit extension inhibition gate of the offset address (A), and 28 is an operation setting terminal of the sign bit extension inhibition gate 27.

また、第2図は1チップ信号処理プロセッサのマイクロ
命令の内部構成を示す図である。同図において、TYP
I、TYP2はタイプ・フィールド、工xはインデック
ス・レジスタの選択フィールド、iはアドレスの修飾設
定データ(mビット)、IDXはインデックス操作フィ
ールド、Aはオフセット・アドレスのフィールド(nビ
ット)、AD。
Further, FIG. 2 is a diagram showing the internal structure of microinstructions of a one-chip signal processing processor. In the same figure, TYP
I and TYP2 are type fields, x is an index register selection field, i is address modification setting data (m bits), IDX is an index operation field, A is an offset address field (n bits), and AD.

はAの内部構成のデータビット、ASは1ビツトの符号
ビット、AD、はn−1ビツトのデータビットである。
is a data bit of the internal structure of A, AS is a 1-bit sign bit, and AD is an n-1 data bit.

なお、m > nの大小関係にある。Note that there is a magnitude relationship of m>n.

次に、本実施例の動作を説明する。Next, the operation of this embodiment will be explained.

先ず、第2図(a)のインデックス操作命令を用いて、
第1図のlX24にアドレス修飾データiを設定し1次
に、第2図(b)の演算命令を用いて、オフセット・ア
ドレスAを入力端子21を介してADD23に入力して
、アドレス生成演算を行ない。
First, using the index operation command shown in FIG. 2(a),
First, address modification data i is set in lX24 in FIG. 1, and then, using the operation instruction in FIG. Do this.

出力端子22に生成データを出力する処理を行なう。A process of outputting generated data to the output terminal 22 is performed.

この時の、ADD23の演算指定やS E L25,2
6の動作指定について、第3図を用いて説明する。
At this time, the calculation specification of ADD23 and S E L25,2
The operation designation in step 6 will be explained using FIG.

第3図は、本実施例における2ビツトのIDXと生成ア
ドレス内容の関係を示す図であり、該インデックス操作
フィールドIDXの指定により選択できる4種の状態を
示す。
FIG. 3 is a diagram showing the relationship between 2-bit IDX and generated address contents in this embodiment, and shows four types of states that can be selected by specifying the index operation field IDX.

IDX=OOの時では、インデックス操作命令で設定し
たアドレス修飾データiは、第1図の工X24にそのま
ま保持されて、生成アドレス内容には、オフセット・ア
ドレスAをそのまま出力するように、第1図の5EL2
6が切替わる。この結果。
When IDX=OO, the address modification data i set by the index operation command is held as is in the module X24 in FIG. 5EL2 in the diagram
6 is switched. As a result.

出力端子22には、Aを符号無数とみなしたアドレス値
AD、が出力される。
An address value AD is output to the output terminal 22, assuming that A is sign-infinite.

IDX=01の場合は、インデックス操作命令で設定し
たアドレス修飾データiは第1図のlX24に保持され
、演算命令でオフセット・アドレスAを第1図の入力端
子20に入力すると、ADD23は符号拡張禁止ゲート
27が禁止モードに設定されて、Aを符号無数AD、と
みなして、 i+ A D Hの加算処理を行なう。こ
の加算結果が、5EL2’6を介して出力端子22に出
力される。
When IDX=01, the address modification data i set by the index operation instruction is held in lX24 in FIG. 1, and when the offset address A is input to the input terminal 20 in FIG. The prohibition gate 27 is set to the prohibition mode, and the addition process of i+ADH is performed, regarding A as a signless AD. This addition result is output to the output terminal 22 via 5EL2'6.

IDX=lOの場合には、インデックス操作命令で設定
したアドレス修飾データiは第1図のlX24に保持さ
れて、演算命令でオフセット・アドレスAが第1図の入
力端子20に入力すると、ADD23は、符号拡張禁止
ゲート27が符号拡張モードに設定されてAを符号付数
とみなして、iと等しくなるビット長mまで符号拡張を
行なって、i+A=i+AS−AD工(ただし、AS−
AD、はAの符号付数表示である)の加算を行なう。こ
の加算結果が、5EL26を介して出力端子22に出力
される。
When IDX=IO, the address modification data i set by the index operation instruction is held in lX24 in FIG. 1, and when the offset address A is input to the input terminal 20 in FIG. 1 by the operation instruction, ADD23 , the sign extension prohibition gate 27 is set to the sign extension mode and A is regarded as a signed number, and sign extension is performed to the bit length m equal to i, i+A=i+AS-AD (however, AS-
AD is the signed number representation of A). This addition result is output to the output terminal 22 via the 5EL26.

IDX=11の場合には、IDX=10と同様の加算処
理を行なった後、さらに、ADD23の出力が5EL2
6を介して出力端子22へ出力すると同時に、5EL2
5を介して再びlX24に設定してインデックス更新を
行なう。
When IDX=11, after performing the same addition process as IDX=10, the output of ADD23 becomes 5EL2.
At the same time, 5EL2 is output to the output terminal 22 via 5EL2.
5 to lX24 again to update the index.

次に、上記の符号無加算と符号付加算の相違について説
明すると、本実施例ではm = 8ビツト。
Next, the difference between the above-mentioned unsigned addition and signed addition will be explained. In this embodiment, m = 8 bits.

n=6ビツトの場合であり、インデックス操作命令で指
定できる修飾設定アドレス(i)の範囲は10進数表示
で0≦i≦255となり、オフセット・アドレスAの範
囲は符号無数として0≦A≦63.符号付数として一3
2≦Aく31となる。このため、これらのアドレス・デ
ータ値を用いて、アクセスできるメモリアドレスの範囲
を考えると、1=63に対しては、本実施例における加
算器モードの状態を示す第4図(a)(b)のようにな
る。従って、第4図(b)の符号付加算では修飾設定ア
ドレス(i)を基準として前後に64’の範囲でアドレ
ッシングを行なう場合に有利であり、第4図(a)の符
号無加算では修飾設定アドレス(i)を基準として、ア
ドレスの増加方向に64’の範囲でアドレッシングを行
なう場合に有利となる。これは、いずれも、−回のメモ
リ・アクセスに対して、インデックス操作命令と演算命
令の2ステツプまたはインデックス・レジスタ設定後で
は演算命令の1ステツプでアドレス生成が行なえる。
In the case of n=6 bits, the range of the modification setting address (i) that can be specified with the index operation instruction is 0≦i≦255 in decimal notation, and the range of the offset address A is 0≦A≦63 as sign infinity. .. 13 as a signed number
2≦A×31. Therefore, when considering the range of memory addresses that can be accessed using these address data values, for 1=63, Figures 4(a) and 4(b) showing the state of the adder mode in this embodiment )become that way. Therefore, in the signed addition shown in FIG. 4(b), it is advantageous to perform addressing within a range of 64' before and after the modified setting address (i), and in the unsigned addition shown in FIG. This is advantageous when addressing is performed in a range of 64' in the increasing direction of addresses with the set address (i) as a reference. In either case, for - times of memory access, address generation can be performed in two steps of an index operation instruction and an arithmetic instruction, or in one step of an arithmetic instruction after index register setting.

尚、上記実施例では、符号拡張の禁止時のビットを11
0 $1に固定したが、111 F+に固定すれば、イ
ンデックス修飾アドレスに対して、減算側のみのアドレ
ッシング・モードとすることも可能である。
In the above embodiment, the bits when sign extension is prohibited are set to 11.
Although it is fixed at 0 $1, if it is fixed at 111 F+, it is also possible to set the addressing mode only on the subtraction side for index-qualified addresses.

(発明の効果) 以上説明したように、本発明によれば、演算命令で指定
するオフセット・アドレスのデータの値を加算する処理
を符号付加算モードと符号無加算モードとの2種類によ
り施し、生成アドレス値の範囲を2種選択できることに
より、アドレス生成に伴う命令ステップ数を低減できる
アドレス生成回路を提供できる。
(Effects of the Invention) As explained above, according to the present invention, the process of adding the data value of the offset address specified by the arithmetic instruction is performed in two types, the signed addition mode and the unsigned addition mode, By being able to select two types of generated address value ranges, it is possible to provide an address generation circuit that can reduce the number of instruction steps associated with address generation.

【図面の簡単な説明】[Brief explanation of drawings]

第1図は本発明の一実施例を示す回路図、第2図は1チ
ップ信号処理プロセッサのマイクロ命令の内部構成を示
す図、第3図は本実施例におけるIDXと生成アドレス
内容の関係を示す図、第4図は本実施例比おける加算器
モードの状態を示す図、第5図は従来のアドレス生成・
回路を示す回路図である。 20.21・・・入力端子、22・・・出力端子。 23・・・加算器。 24・・・インデックス・レジスタ、 25.26・・・セレクタ、 27・・・符号ビット拡張禁止ゲート、28・・・動作
設定端子。
FIG. 1 is a circuit diagram showing an embodiment of the present invention, FIG. 2 is a diagram showing the internal configuration of microinstructions of a one-chip signal processing processor, and FIG. 3 is a diagram showing the relationship between IDX and generated address contents in this embodiment. 4 is a diagram showing the state of the adder mode in this embodiment, and FIG. 5 is a diagram showing the state of the adder mode in this embodiment.
It is a circuit diagram showing a circuit. 20.21...Input terminal, 22...Output terminal. 23... Adder. 24... Index register, 25.26... Selector, 27... Sign bit extension inhibit gate, 28... Operation setting terminal.

Claims (1)

【特許請求の範囲】 1チップ信号処理プロセッサにおいて、 インデックス操作命令で指定される修飾設定アドレスを
一時記憶するインデックスレジスタと、該インデックス
レジスタからの出力と演算命令で指定されるオフセット
アドレスとを加算する加算器と、 該加算器に入力される前記オフセットアドレスの符号拡
張を行なうか否か制御する制御回路とを具備することを
特徴とするアドレス生成回路。
[Claims] In a one-chip signal processing processor, an index register that temporarily stores a modification setting address specified by an index operation instruction, and an output from the index register and an offset address specified by an operation instruction are added. An address generation circuit comprising: an adder; and a control circuit that controls whether or not to perform sign extension of the offset address input to the adder.
JP10191086A 1986-05-06 1986-05-06 Address generating circuit Expired - Lifetime JPS62259140A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10191086A JPS62259140A (en) 1986-05-06 1986-05-06 Address generating circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10191086A JPS62259140A (en) 1986-05-06 1986-05-06 Address generating circuit

Publications (1)

Publication Number Publication Date
JPS62259140A true JPS62259140A (en) 1987-11-11

Family

ID=14313065

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10191086A Expired - Lifetime JPS62259140A (en) 1986-05-06 1986-05-06 Address generating circuit

Country Status (1)

Country Link
JP (1) JPS62259140A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6488838A (en) * 1987-09-30 1989-04-03 Takeshi Sakamura Data processor
US5809306A (en) * 1993-05-27 1998-09-15 Matsushita Electric Industrial Co., Ltd. Variable address length compiler and processor improved in address management
US7178011B2 (en) 2003-06-05 2007-02-13 Arm Limited Predication instruction within a data processing system

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6488838A (en) * 1987-09-30 1989-04-03 Takeshi Sakamura Data processor
US5809306A (en) * 1993-05-27 1998-09-15 Matsushita Electric Industrial Co., Ltd. Variable address length compiler and processor improved in address management
USRE40498E1 (en) 1993-05-27 2008-09-09 Matsushita Electric Industrial Co., Ltd. Variable address length compiler and processor improved in address management
USRE41959E1 (en) 1993-05-27 2010-11-23 Panasonic Corporation Variable address length compiler and processor improved in address management
US7178011B2 (en) 2003-06-05 2007-02-13 Arm Limited Predication instruction within a data processing system

Similar Documents

Publication Publication Date Title
JP3487903B2 (en) Arithmetic device and arithmetic method
JPH05216624A (en) Arithmetic unit
JPH0470662B2 (en)
US4336599A (en) Circuit for performing a square root calculation
JPS6125245A (en) Rounding process circuit
FI91107C (en) The data processing unit
US5349671A (en) Microprocessor system generating instruction fetch addresses at high speed
US5524251A (en) Microcomputer having ALU performing min and max operations
US7647368B2 (en) Data processing apparatus and method for performing data processing operations on floating point data elements
JPH049340B2 (en)
US5386534A (en) Data processing system for generating symmetrical range of addresses of instructing-address-value with the use of inverting sign value
JPS62259140A (en) Address generating circuit
JPH1091395A (en) Processor
EP0257650B1 (en) Microprocessor
GB2039108A (en) Decimal adder/subtractor
US5708800A (en) High speed microprocessor for processing and transferring N-bits of M-bit data
JP3252029B2 (en) Encoding device and encoding method
JPH0831033B2 (en) Data processing device
JP2991788B2 (en) Decoder
JPH1063500A (en) Signal processor
JPS6148174B2 (en)
JPH0435777B2 (en)
JPS60110034A (en) Information processor
JPH0580978A (en) Arithmetic processing circuit
JPH1185471A (en) Operation method and arithmetic unit

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term