JPS5932820B2 - address modification circuit - Google Patents

address modification circuit

Info

Publication number
JPS5932820B2
JPS5932820B2 JP3150477A JP3150477A JPS5932820B2 JP S5932820 B2 JPS5932820 B2 JP S5932820B2 JP 3150477 A JP3150477 A JP 3150477A JP 3150477 A JP3150477 A JP 3150477A JP S5932820 B2 JPS5932820 B2 JP S5932820B2
Authority
JP
Japan
Prior art keywords
address
circuit
memory
modification
group
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
JP3150477A
Other languages
Japanese (ja)
Other versions
JPS53117337A (en
Inventor
豊 堀井
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 JP3150477A priority Critical patent/JPS5932820B2/en
Publication of JPS53117337A publication Critical patent/JPS53117337A/en
Publication of JPS5932820B2 publication Critical patent/JPS5932820B2/en
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Executing Machine-Instructions (AREA)

Description

【発明の詳細な説明】 本発明は情報処理装置、特に、マイクロプロセッサにお
けるメモリアドレスの修飾回路に関するもので、ある。
DETAILED DESCRIPTION OF THE INVENTION The present invention relates to an information processing device, particularly to a memory address modification circuit in a microprocessor.

一般に、この種のマイクロプロセッサでは機能を単純化
するために、メモリアドレス修飾のためのインデックス
レジスタは備えられていないのが普通である。
Generally, this type of microprocessor is not provided with an index register for modifying memory addresses in order to simplify functionality.

しかしながら、マイクロプロセッサにおいても、データ
が配列構造をなし且つメモリの複数領域にわたつて存在
している場合等には、メモリアドレスを修飾する必要も
しばしば生じてくる。従来、マイクロプロセッサにおい
て配列構造のデータを扱う場合、プログラム制御により
領域内の目的とする番地を指定する方法が採用されてい
る。また、メモリアドレスの修飾機能をマイクロプロセ
ッサに付加するために、マイクロプロセッサの外部にメ
モリアドレス修飾に使用されるインデックスレジスタを
設け、アドレス情報の判定の結果、インデックス修飾を
行なう必要があるときにはインデックスレジスタの内容
とアドレス情報とを2進全加算してメモリアドレスとす
る方法も考えられる。しかし、この方法は複雑な2進全
加算回路が必要であるため、経済性及び回路構成の面で
難点がある。本発明の目的は1チップ又は数チップで構
成される半導体集積回路によるマイクロプロセッサある
いはマイクロプログラム方式の情報処理装置において、
メモリアドレスを簡単に修飾できる経済的なアドレス修
飾回路を提供することである。
However, even in microprocessors, when data has an array structure and exists across multiple areas of memory, it often becomes necessary to modify memory addresses. Conventionally, when handling array-structured data in a microprocessor, a method has been adopted in which a target address within an area is designated by program control. In addition, in order to add a memory address modification function to a microprocessor, an index register used for memory address modification is provided outside the microprocessor, and when it is necessary to perform index modification as a result of determining address information, the index register is It is also conceivable to perform a binary full addition of the contents of the address information and the address information to obtain the memory address. However, since this method requires a complex binary full adder circuit, it has drawbacks in terms of economy and circuit configuration. An object of the present invention is to provide a microprocessor or a microprogram type information processing device using a semiconductor integrated circuit composed of one chip or several chips.
An object of the present invention is to provide an economical address modification circuit that can easily modify memory addresses.

本発明の他の目的はメモリ上に配置された配列構造のデ
ータのアドレス空間を2のべき乗に等しい数のアドレス
を含む群に分け、各群内のデータを相対的に且つ桁上り
なしで簡単に修飾できる相対アドレス修飾回路を提供す
ることである。本発明によれば、アドレス空間を2のべ
き乗に等しい数のアドレスを含む群に概念的に分けられ
たメモリを外部装置として備え、このメモリのアドレス
修飾に使用されるアドレス修飾回路において、ベースア
ドレスを格納するベースレジスタと、各群内の相対的な
アドレスをあらわす第1の部分及びこの相対的なアドレ
スの修飾あるいは各群のアドレスをあらわす第2の部分
とを含む入カアドレスのうち、第2部分を受けて第1の
部分の修飾の要否を判定する相対アドレス修飾判定回路
と、ベースレジスタからのベースアドレス及び相対アド
レス修飾判定回路の判定結果を受け、ベースアドレスを
メモリに送出するか否かを決定する第1のゲート回路と
、入力アドレスの第2部分と相対アドレス修飾判定回路
の判定結果とを受け、第2部分をメモリに送出するか否
かを決定する第2のゲート回路と、第1及び第2のゲー
ト回路の出力の論理和をとる論理和回路とを備えたアド
レス修飾回路が得られる。本発明では、分割されたメモ
リの各群には2のべき乗に等しい数のアドレスが含まれ
ているた八各群内のデータあるいは命令のアドレスは2
進数であられした場合、全て各群の先頭番地をあられす
桁を越えない範囲内にあるから、群内の相対アドレスと
各群の先頭番地とを桁上りを考えることなく2進加算す
ることにより、アドレスの修飾を行なうことができる。
Another object of the present invention is to divide the address space of array-structured data arranged in memory into groups containing addresses equal to a power of 2, and to easily and relatively read the data in each group without carry. An object of the present invention is to provide a relative address modification circuit that can modify a relative address. According to the present invention, a memory in which an address space is conceptually divided into groups containing addresses equal to a power of 2 is provided as an external device, and in an address modification circuit used for address modification of this memory, a base address , a first part representing a relative address within each group, and a second part representing a modification of this relative address or an address in each group. a relative address modification determination circuit that receives the two parts and determines whether the first part needs to be modified; and a base address from the base register and the determination result of the relative address modification determination circuit that sends the base address to the memory. a first gate circuit that receives the second part of the input address and the determination result of the relative address modification determination circuit, and determines whether or not to send the second part to the memory; An address modification circuit is obtained, which includes a logical sum circuit that calculates the logical sum of the outputs of the first and second gate circuits. In the present invention, each group of divided memory contains a number of addresses equal to a power of 2, so that the addresses of data or instructions within each group are 2
In the case of a decimal number, the first address of each group is within a range that does not exceed the number of digits, so by adding the relative address within the group and the first address of each group in binary without considering carry. , address can be qualified.

以下、図面を参照して本発明の一実施例を説明する。Hereinafter, one embodiment of the present invention will be described with reference to the drawings.

第1図を参照すると、本発明に係るアドレス修飾回路の
ほかに、メモリ4が示されている。
Referring to FIG. 1, a memory 4 is shown in addition to the address modification circuit according to the invention.

ここで、メモリ4のアドレス空間は概念的に2のべき乗
(例えば、8,16)であられされる数のアドレスを含
む群にわけられているものとする。このため、各群内の
配列構造のデータ又は命令の相対アドレスはアドレス数
が8個の場合にば0″″から゛111″゛までの2進数
により、また、16個の場合にば0”から゛1111”
までの2進数で全てあられすことができる。したがつて
、各群を指定するアドレスを群内の相対アドレスをあら
れすビツトより上位ビツトであられせば、桁上りなしで
アドレスの修飾を行なうことができる。再び第1図を参
照すると、この実施例では上位ビツトでメモリ4の各群
又はその特定パターンで相対アドレス修飾をあられし、
下位ビツトで各群内の相対アドレスをあられす入力アド
レスがマイクロプロセツサ(図示せず)から供給される
。更に、入力アドレスの上位ビツトを受け、相対アドレ
スの修飾の要否を判定する相対アドレス修飾判定回路1
(以下、単に判定回路と呼ぶ)及びマイクロプロセツサ
から与えられるベースアドレスを格納するベースレジス
タ2とが設けられている。ベースレジスタ2の内容は判
定回路1の出力によつて制御される出力ゲート回路3に
供給され、この出力ゲート回路3を介して論理和回路5
に送出される。また、論理和回路5には判定回路1の出
力を反転回路7で反転した否定出力によりFbI脚され
るゲート回路6の出力及び入力アドレスの下位ビツトが
供給されている。以下、第1図の動作を説明すると、入
力アドレスの上位桁のnビツト(例えば4ビツト)が特
定の値又はパターンであれば、判定回路1は相対アドレ
ス修飾と判定し、その出力に論理値゛1″”を送出する
Here, it is assumed that the address space of the memory 4 is conceptually divided into groups containing addresses whose number is a power of 2 (for example, 8, 16). Therefore, the relative address of the data or instruction of the array structure in each group is a binary number from 0"" to "111" when the number of addresses is 8, and 0" when the number of addresses is 16. Kara゛1111”
All the binary numbers up to can be expressed as hail. Therefore, if the address specifying each group is set to have higher bits than the bits associated with the relative address within the group, the address can be modified without a carry. Referring again to FIG. 1, in this embodiment, relative address modification is performed in each group of memory 4 or its specific pattern in the upper bits,
An input address is provided from a microprocessor (not shown) which determines the relative address within each group in its lower order bits. Further, a relative address modification determination circuit 1 receives the upper bits of the input address and determines whether or not modification of the relative address is necessary.
(hereinafter simply referred to as a determination circuit) and a base register 2 for storing a base address given from a microprocessor. The contents of the base register 2 are supplied to an output gate circuit 3 controlled by the output of the determination circuit 1, and are passed through the output gate circuit 3 to an OR circuit 5.
will be sent to. Further, the OR circuit 5 is supplied with the output of the gate circuit 6 which is multiplied by FbI by the negative output obtained by inverting the output of the determination circuit 1 with the inverting circuit 7, and the lower bits of the input address. The operation of Fig. 1 will be explained below.If the n bits (for example, 4 bits) of the upper digits of the input address are a specific value or pattern, the determination circuit 1 determines that the relative address is modified, and outputs a logical value. Send "1"".

これによつて、出力ゲート回路3はベースレジスタ2の
ベースアドレスを論理和回路5を通してメモリ4に送出
できる状態になる。一方、判定回路1の否定出力によつ
て制御されるゲート回路6は閉成し、入力アドレスの上
位桁はメモリ4に対して送出されない。したがつて、人
力アドレスの上位nビツトを除いたアドレス即ち各群内
のデータ又は命令を指定する相対アドレスはベースレジ
スタ2に設定されているベースアドレスと共に論理和回
路5に送られる。論理和回路5では相対アドレスとベー
スアドレスとの論理和をとり、メモリ4にアドレスを送
出する。入力アドレスの上位nビツトが判定回路1に定
められた特定の値でないときには、判定回路1は論理値
゛O゛″を出力する。
This puts the output gate circuit 3 in a state where it can send the base address of the base register 2 to the memory 4 through the OR circuit 5. On the other hand, the gate circuit 6 controlled by the negative output of the determination circuit 1 is closed, and the upper digits of the input address are not sent to the memory 4. Therefore, the address excluding the upper n bits of the manual address, that is, the relative address specifying data or instructions within each group, is sent to the OR circuit 5 together with the base address set in the base register 2. The OR circuit 5 performs a logical OR between the relative address and the base address, and sends the address to the memory 4. When the upper n bits of the input address are not a specific value determined by the determination circuit 1, the determination circuit 1 outputs a logical value "O".

これにより、出力ゲート回路3が閉じ、ゲート回路6が
開くので、入力アドレスがそのまま論理和ゲート5を介
してメモリ4に送出される。第1図では、ベースレジス
タ2の全ビツトに対応してゲート回路が設けられている
ため、メモリ4に大きさの異なる群(例えば、8,16
,32)が混在する場合にも、容易にアドレス修飾を行
なうことができる。
As a result, the output gate circuit 3 is closed and the gate circuit 6 is opened, so that the input address is directly sent to the memory 4 via the OR gate 5. In FIG. 1, since gate circuits are provided corresponding to all the bits of the base register 2, the memory 4 has groups of different sizes (for example, 8, 16
, 32), address modification can be easily performed.

また、判定回路1に定められた特定値に相当する群に対
するアタセスのときに(瓜常に、アドレス修飾動作が行
なわれることは言うまでもない。第2図を参照すると、
メモリにおけるデータ又は命令の配列構造が具体的に示
されている。
Also, it goes without saying that an address modification operation is always performed when accessing a group corresponding to a specific value determined by the determination circuit 1. Referring to FIG.
The arrangement structure of data or instructions in memory is specifically shown.

第2図において、メモリの語を選択するためのアドレス
線は8本、メモリの大きさは256語であり、図の左側
は各群のアドレスを2進数であられしたアドレス、右側
は10進数であられしたアドレスである。ここでは、各
群の大きさを全て16語としているから、各群の相対ア
ドレスは4ビツトであられすことができる。したがつて
、各群の先頭アドレスを10進16の整数倍とすれば、
ベースレジスタに設定するベースアドレスは2進数であ
られすと下位桁の4ビツトは全でO″″になる。今、入
力アドレスの上位桁2ビツトが論理値゛1″゛のときに
相対アドレス修飾であるものとして、第2番目の群内の
第5番目のメモリアドレスを第1図に示す本発明のアド
レス修飾回路で求めてみる。入力アドレスとして、゛′
1100010「″が与えられると、判定回路1はその
上位2ビツトを検出して論理値゛1″”を出力する。こ
の状態において、ベースレジスタ2に第2番目の群にお
ける先頭番地゛00010000″”を設定しておけば
、出力ゲ゛一ト回路3を介してベースアドレス゛000
10000′゛が論理和回路5に入力される。入力アド
レス11000101路はゲ゛一ト回路6により上位桁
が゛0”になり、相対アドレス“00000101”が
論理和回路5に与えられる。論理和回路5はベースアド
レス″0001000゛(10進アドレスで16)と、
相対アドレス00000101″゛(10進アドレスで
5)との論理和をとりメモリアドレスを゛″00010
10F5(10進アドレスで21)とする。
In Figure 2, there are 8 address lines for selecting memory words, and the memory size is 256 words.The left side of the figure is the address of each group in binary, and the right side is in decimal. That's a hell of an address. Here, since the size of each group is all 16 words, the relative address of each group can be written with 4 bits. Therefore, if the start address of each group is an integer multiple of 16 decimal,
If the base address set in the base register is a binary number, the lower 4 bits will be O'''' in total. Now, assuming that it is relative address modification when the upper two bits of the input address have a logical value of "1", the fifth memory address in the second group is the address of the present invention shown in FIG. Try to find it using a modification circuit.As an input address, ゛′
When 1100010 ``'' is given, the determination circuit 1 detects its upper two bits and outputs the logical value ``1''''. In this state, if the base address ``00010000'' in the second group is set in the base register 2, the base address ``000'' will be transferred via the output gate circuit 3.
10000' is input to the OR circuit 5. The upper digit of the input address 11000101 is changed to ``0'' by the gate circuit 6, and the relative address ``00000101'' is given to the OR circuit 5.The OR circuit 5 receives the base address ``0001000'' (in decimal address). 16) and
Performs a logical OR with the relative address 00000101'' (5 in decimal address) and makes the memory address ``''00010.
10F5 (21 in decimal address).

群の配列の大きさが16語と32語と64語のように多
種類が混在するとしてもベースレジスタにはそれぞれの
配列の大きさの整数倍を設定すればよい。
Even if the sizes of group arrays are mixed, such as 16 words, 32 words, and 64 words, an integer multiple of the size of each array may be set in the base register.

入力アドレスのビツト数をmとし、相対アドレス修飾で
あることを判定するのを入力アドレスの上位桁のnビツ
トとすると相対アドレスの範囲すなわち群の大きさは最
大2rI1−oとなる。本発明は以上説明したように、
メモリアドレスから相対アドレス修飾であることを判定
しアドレス計算をすることにより、メモリ上の配列(2
のべぎ乗の大きさ)の相対アドレス修飾を安価且つ容易
に実現できる効果がある。
If the number of bits in the input address is m, and the n bits of the upper digits of the input address are used to determine whether it is a relative address modification, the range of relative addresses, that is, the size of the group, is at most 2rI1-o. As explained above, the present invention
By determining that it is a relative address modification from the memory address and calculating the address, the array (2
This has the effect of making it possible to inexpensively and easily realize relative address modification (the size of the exponentiation).

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

第1図は本発明に係る相対アドレス修飾回路の一実施例
を示す図であり、第2図はメモリ上の配列の例を示す図
である。 記号の説明:1:相対アドレス修飾判定回路、2:ベー
スレジスタ、3:出力ゲ゛一ト回路、4:メモl八 5
:論理和回路、6:ゲート回路、7:反転回路。
FIG. 1 is a diagram showing an embodiment of a relative address modification circuit according to the present invention, and FIG. 2 is a diagram showing an example of an arrangement on a memory. Explanation of symbols: 1: Relative address modification judgment circuit, 2: Base register, 3: Output gate circuit, 4: Memory 18 5
: OR circuit, 6: Gate circuit, 7: Inverting circuit.

Claims (1)

【特許請求の範囲】[Claims] 1 アドレス空間を2のべき乗に等しい数のアドレスを
含む群に分割したメモリのアドレスを修飾するアドレス
修飾回路において、各群内の相対的なアドレスをあらわ
す第1の部分及び該第1の部分の修飾をあらわす第2の
部分とを含む入力アドレスのうち、第2の部分を受けて
第1の部分の修飾の要否を判定する相対アドレス修飾判
定回路と、ベースアドレスを格納するベースレジスタと
、該ベースレジスタからのベースアドレス及び前記相対
アドレス修飾判定回路の判定結果とを受け、ベースアド
レスを前記メモリに送出するか否かを決定する第1のゲ
ート回路と、前記入力アドレスの第2の部分と前記相対
アドレス修飾判定回路の判定結果とを受け、前記第2の
部分を前記メモリに送出するか否かを決定する第2のゲ
ート回路と、第1及び第2のゲート回路の出力の論理和
をとる論理和回路とを有することを特徴とするアドレス
修飾回路。
1. In an address modification circuit that modifies addresses in a memory in which an address space is divided into groups containing a number of addresses equal to a power of 2, a first part representing a relative address within each group and a first part representing a relative address within each group; a relative address modification determination circuit that receives the second part of the input address including a second part representing modification and determines whether or not the first part needs to be modified; a base register that stores the base address; a first gate circuit that receives a base address from the base register and a determination result of the relative address modification determination circuit and determines whether or not to send the base address to the memory; and a second portion of the input address. and a second gate circuit that receives the determination result of the relative address modification determination circuit and determines whether or not to send the second portion to the memory, and the output logic of the first and second gate circuits. An address modification circuit comprising: an OR circuit that calculates a sum.
JP3150477A 1977-03-24 1977-03-24 address modification circuit Expired JPS5932820B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3150477A JPS5932820B2 (en) 1977-03-24 1977-03-24 address modification circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3150477A JPS5932820B2 (en) 1977-03-24 1977-03-24 address modification circuit

Publications (2)

Publication Number Publication Date
JPS53117337A JPS53117337A (en) 1978-10-13
JPS5932820B2 true JPS5932820B2 (en) 1984-08-11

Family

ID=12333046

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3150477A Expired JPS5932820B2 (en) 1977-03-24 1977-03-24 address modification circuit

Country Status (1)

Country Link
JP (1) JPS5932820B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55129853A (en) * 1979-03-29 1980-10-08 Mitsubishi Electric Corp Pattern processing unit
US4383296A (en) * 1980-05-16 1983-05-10 Apple Computer, Inc. Computer with a memory system for remapping a memory having two memory output buses for high resolution display with scrolling of the displayed characters
JPH01163834A (en) * 1987-12-21 1989-06-28 Hitachi Ltd Address modifying system for instruction word

Also Published As

Publication number Publication date
JPS53117337A (en) 1978-10-13

Similar Documents

Publication Publication Date Title
JP3655403B2 (en) Data processing device
US3786432A (en) Push-pop memory stack having reach down mode and improved means for processing double-word items
US4229801A (en) Floating point processor having concurrent exponent/mantissa operation
GB1590028A (en) Microprocessor architecture
GB1527316A (en) Data processing apparatus
JPH0248931B2 (en)
JPH0414385B2 (en)
US3999052A (en) Upper bounds address checking system for providing storage protection for a digital data processor
US4115852A (en) Microprogrammed controller
JPS5932820B2 (en) address modification circuit
CA1115425A (en) Data processor with address extension
US4800491A (en) Register-stack apparatus
JP2703884B2 (en) Data write control method
JPH034936B2 (en)
JPS59188764A (en) Memory device
JPS5935451B2 (en) General purpose register access method
JPH0635800A (en) Microprocessor and data processing system using it
JP2517154B2 (en) Data processing device
GB2002153A (en) Digital data processing systems
JP3541776B2 (en) Microcomputer
JPS60120457A (en) Controller of direct memory access
JPS5839347A (en) Processor
JPH03116256A (en) Memory device
JPH0721760B2 (en) Digital arithmetic circuit
JPS6121694Y2 (en)