JPS58142464A - Microprocessor - Google Patents

Microprocessor

Info

Publication number
JPS58142464A
JPS58142464A JP57024376A JP2437682A JPS58142464A JP S58142464 A JPS58142464 A JP S58142464A JP 57024376 A JP57024376 A JP 57024376A JP 2437682 A JP2437682 A JP 2437682A JP S58142464 A JPS58142464 A JP S58142464A
Authority
JP
Japan
Prior art keywords
register
bus
decoder
registers
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.)
Pending
Application number
JP57024376A
Other languages
Japanese (ja)
Inventor
Kiyoshi Kuno
久野 潔
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP57024376A priority Critical patent/JPS58142464A/en
Publication of JPS58142464A publication Critical patent/JPS58142464A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30098Register arrangements
    • G06F9/3012Organisation of register space, e.g. banked or distributed register file
    • G06F9/30138Extension of register space, e.g. register cache

Abstract

PURPOSE:To use more than groups of registers selectable in a selection field without increasing the number of bits of a program by providing a switching means which specifies a register in a register group on the basis of the address of an instruction and enables the register to be used. CONSTITUTION:Commands of a microprogram stored in a memory 1 are transferred to an arithmetic device 3 and an address control part 4. Those arithmetic device 3 and controller 4 are supplied with commands from an operation decoder 2 to control a D bus decoder 5 and B bus decoder 6 by their outputs. Further, the register group 8 which inputs the output of the arithmetic device 3 consists of registers 0, 1-F, and register groups 9 and 10 consists of registers 0. 1-3. The command of the decoder 2 are applied to respective bus decoders 5 and 6, which perform control to allowing the use of more than registers in the group 8 selectable in a selection field without increasing the number of bits of the program.

Description

【発明の詳細な説明】 発明の対象 本発明はマイクロプロセッサに係シ、特にマイクロプロ
グラムで使用可能なレジスタの数を増加させることに関
する。
DETAILED DESCRIPTION OF THE INVENTION The present invention relates to microprocessors, and more particularly to increasing the number of registers available to a microprogram.

従来技術 マイクロプロセッサは一般にレジスタを選択する為のビ
ット群(以下フィールドと言う)を有している。従来の
マイクロプロセッサは前記レジスタ選択フィールドのビ
ット数で指定可能な数の範囲のレジスタしか選択できず
、使用可能なレジスタ数に制限があるという欠点があり
、たた。
Prior art microprocessors generally have bit groups (hereinafter referred to as fields) for selecting registers. Conventional microprocessors have the disadvantage that they can only select registers within the range of the number that can be specified by the number of bits in the register selection field, which limits the number of registers that can be used.

発明の目的 本発明の目的はレジスタ選択フィールドで指定可能な数
以上のレジスタ群を使用可能とするマイクロプロセ、す
を提供することにある。
OBJECTS OF THE INVENTION An object of the present invention is to provide a microprocessor that allows use of more register groups than can be specified in a register selection field.

本発明はレジスタ選択フィールドで指定できる範囲の数
からなるレジスタ群の一部あるいは全部を他のレジスタ
群と入替えてマイクロプロセッサが使用することを特徴
とする。一般に処理の種類によって使用するレジスタは
異なり、またメモリ上には各処理毎にまとまったアドレ
ス領域が占有される為、メモリアドレスにより使用する
レジスタの種類を切替ることか実現できれば有効である
The present invention is characterized in that a microprocessor uses a part or all of a register group whose number can be specified in a register selection field by replacing it with another register group. In general, the registers used differ depending on the type of processing, and each process occupies a set address area on the memory, so it would be effective if it were possible to switch the type of registers used depending on the memory address.

発明の実施例とその効果 以下、本発明の一実施例を第1図によυ説明する。第1
図は本発明を適用したマイクロプロセッサのブロック図
である。メモリ1はマイクロプログラムを記憶し、オペ
レーションデコーダ2は演算器3、アドレス制御部4に
対してマイクロプログラムの指令を伝える。演算器3は
オペレージ、ンデコーダ20指令によシ各種演算(例、
に■、OR,ADD )を実行する。アドレス制御部4
は、オペレーションデコーダ2の指令によりジャンプア
ドレス等を作成し、次に実行すべきメモリ1内のマイク
ロプログラムのアドレスを作成する機能を持つ。Dバス
デコーダ5は演算器3の出力であるDバス10をどのレ
ジスタに格納するかを制御するデコーダであシ、Bバス
デコーダ6はどのレジスタを演算器3−の一方の入力で
あるBバス11に出力するかを制御するデコーダである
。レジスタ群7は16ケのレジスタからなり、レジスタ
群8およびレジスタ群9は4ケのレジスタからなる。メ
モリアドレス12はメモリ1に対するアドレスであり、
本実施例では12ピット即ちメモリ1は4にワードとす
る。メモリバス15はメモリ1からの出力である。
EMBODIMENT OF THE INVENTION AND ITS EFFECTS An embodiment of the present invention will be described below with reference to FIG. 1st
The figure is a block diagram of a microprocessor to which the present invention is applied. A memory 1 stores a microprogram, and an operation decoder 2 transmits instructions of the microprogram to an arithmetic unit 3 and an address control unit 4. The arithmetic unit 3 performs various calculations (e.g.,
(■, OR, ADD). Address control section 4
has the function of creating a jump address etc. in response to a command from the operation decoder 2, and creating the address of the microprogram in the memory 1 to be executed next. The D bus decoder 5 is a decoder that controls in which register the D bus 10, which is the output of the arithmetic unit 3, is stored, and the B bus decoder 6 controls which register is stored in the B bus, which is one input of the arithmetic unit 3-. This is a decoder that controls whether to output to 11. Register group 7 consists of 16 registers, and register group 8 and register group 9 consist of 4 registers. Memory address 12 is an address for memory 1,
In this embodiment, there are 12 pits, ie, memory 1 has 4 words. Memory bus 15 is an output from memory 1.

第1図で示すところの本発明の機能は、レジスタ群7の
中のレジスタ0125がレジスタ群8のレジスタ1−0
1−11−21−(あるいはレジスタ群9の2−02−
12−22−5と入替えられてBバス11に選択された
シ、Dバス10がセットされたシするところにあり、前
記レジスタ群の入替はDバスデコーダ5およびBバスデ
コーダ6の動作によって実現される。Dバスデコーダ5
、Bバスデコーダ6の詳細を説明する前に本発明を適用
したマイクロプロセッサのマイクロフォーマットについ
て第2図を用いて説明する。本実施例では16ビツトの
マイクロプロセッサとする。一般的な命令ではレジスタ
と定数との演算を行う。
The function of the present invention as shown in FIG. 1 is that register 0125 in register group 7 is
1-11-21- (or 2-02- of register group 9)
12-22-5 and is selected as the B bus 11, and the D bus 10 is set, and the swapping of the register group is realized by the operation of the D bus decoder 5 and the B bus decoder 6. be done. D bus decoder 5
, B bus decoder 6, the microformat of the microprocessor to which the present invention is applied will be described with reference to FIG. In this embodiment, a 16-bit microprocessor is used. General instructions perform operations on registers and constants.

レジスタliB/Dバス選択フィールドで指定したレジ
スタである。演算の種類はAND 、OR,すOR(排
他的論理和)・ADDである力゛・勿論3れ以 j外に
も種類を増すことは可能である。演算の結 j果はB/
Dバスで選択した同じレジスタに格納される。この命令
の他に、ジャンプ命令、メモリ1のリード又はライト命
令であるが、この発明とは直接関係しまいので記述しな
い。
Register li This is the register specified in the B/D bus selection field. The types of operations include AND, OR, OR (exclusive OR), ADD, and, of course, it is possible to increase the types beyond these three. The result of the operation is B/
Stored in the same register selected by the D bus. In addition to this instruction, there are a jump instruction and a read or write instruction for the memory 1, but these will not be described since they are not directly related to this invention.

次にDバスデコーダ5、およびBバスデコーダ6の詳細
について図6を用いて紛、明する。メモリバス13のビ
、)415はそれぞれ否定回路17゜18で逆極性とな
シ、アンド回路19でアンドされる。アンド出力36は
ビット4.5が共に%0#の時に11′となる。メモリ
アドレス12のビット154は、否定回路35で逆極性
と表υ、アンド回路21においてアドレスビット033
とアンド出力36とアンドされる。アンド出力37はメ
モリバス13のビット4,5が共に%O1すなわちレジ
スタ0゜1.2.3.を選んだ時でアドレスバス12の
ビット033が1111 ビ、 ) 134が%Ql’
の時に%11となる。
Next, details of the D bus decoder 5 and the B bus decoder 6 will be explained using FIG. 6. The signals 415 and 415 of the memory bus 13 are reversely polarized by the NOT circuits 17 and 18, and ANDed by the AND circuit 19, respectively. AND output 36 becomes 11' when bits 4.5 are both %0#. Bit 154 of memory address 12 is set to reverse polarity by the NOT circuit 35, and address bit 033 is set by the AND circuit 21.
and AND output 36. AND output 37 indicates that bits 4 and 5 of memory bus 13 are both %O1, that is, register 0°1.2.3. When selecting , bit 033 of address bus 12 is 1111 bit, ) 134 is %Ql'
When , it becomes %11.

アンド回路22においてはアドレスビ、 ) 033と
アドレスビット134と、アンド出力56の5つの信号
がアンドされる。アンド回路22のアンド出力68はメ
モリバス15のビ、)4.5が共に%O1で、アドレス
バス12のアドレスビ、) O35、アドレスビット1
′54が共に11#の時に%11とな 。
In the AND circuit 22, five signals: address bit 033, address bit 134, and AND output 56 are ANDed. AND output 68 of AND circuit 22 is %O1 for memory bus 15, address bit 035, address bit 1.
'54 is %11 when both are 11#.

る。アンド回路23においてはアドレスビット053と
アンド出力36がアンドされ、さらにアンド回路25の
出力は否定回路59で逆極性となる。
Ru. In AND circuit 23, address bit 053 and AND output 36 are ANDed, and furthermore, the output of AND circuit 25 is reversed in polarity in NOT circuit 59.

否定回路69の否定出力40が%11になるのは、アド
レスビットO55が%01であるか、メモリバス13の
ビット4又は5が10Iでない時、即ちレジスタ0.1
,2.5を選んでない時である。Dバスデコーダ5内の
デコーダ24,25.26は各々レジスタ群8,9.7
の為のDバスデコーダである。デコーダ24のエネーブ
ル入力にはアンド回路21のアンド出力37が入力され
、デコーダ25のエネーブル入力にはアンド回路22の
アンド出力38が入力され、デコーダ26のエネーブル
入力には否定回路39の否定出力40が入力される。メ
モリアドレス12のアドレスビット055.154が1
101の時、即ち(メモリ1を1にワード単位のページ
に分割し、0ページ、1ぺ一−ジ、2ページ、3ページ
と呼ぶならば)、2ページで動作を行いかっレジスfi
 O,1,2・3をDバスに選んだ時は、レジスタ群8
へDバスがセットされる。アドレスビ。
The negative output 40 of the negative circuit 69 becomes %11 when address bit O55 is %01 or bit 4 or 5 of the memory bus 13 is not 10I, that is, register 0.1.
, 2.5 is not selected. Decoders 24, 25.26 in the D bus decoder 5 are register groups 8, 9.7, respectively.
This is a D bus decoder for. The AND output 37 of the AND circuit 21 is input to the enable input of the decoder 24, the AND output 38 of the AND circuit 22 is input to the enable input of the decoder 25, and the NOT output 40 of the NOT circuit 39 is input to the enable input of the decoder 26. is input. Address bit 055.154 of memory address 12 is 1
101, that is, if memory 1 is divided into word-based pages and called page 0, page 1, page 2, and page 3, the operation is performed on page 2.
When O, 1, 2, and 3 are selected as the D bus, register group 8
The D bus is set to. addressby.

ト0易、134が1111の時、即ち6ページで動作を
行いかつレジスタ0125をDバスに選ンだ時はレジス
タ群9へDバスがセットされる。
When 0 and 134 are 1111, that is, when an operation is performed on page 6 and register 0125 is selected as the D bus, the D bus is set in register group 9.

上記以外の場合はレジスタ群7が選択され、Dバスがセ
ットされる。Bバスデコーダ6内のマルチプレクサ27
のエネーブル入力にはアンド回路21のアンド出力57
が入力され、マルチプレクサ28のエネーブル入力には
アンド回路22のアンド出力38が入力され、マルチプ
レクサ29のエネーブル入力には否定回路39の否定出
力4oが入力される。アドレスバス12のアドレスビッ
ト053とビット134が1101の時、即ちベージ2
で動作している時にレジスタ0.1,2.3をBバスに
選んだ時はレジスタ群8がBバスに選択され、アドレス
ビット033、ビット134が%111の時、即ちベー
ジ3で動作している時にレジスタ0,12.5をBバス
に選んだ時はレジ□スタ群9がBバスに選択される。上
記以外の場合はレジスタ群7がBバスに選択される。以
上の如く、アドレスバス12の内容によってレジスタ群
7のレジメタ0125の替りにレジスタ群8あるいは9
かマイクロプロセッサから使用可能となる。
In cases other than the above, register group 7 is selected and the D bus is set. Multiplexer 27 in B bus decoder 6
The enable input of the AND output 57 of the AND circuit 21
is input, the AND output 38 of the AND circuit 22 is input to the enable input of the multiplexer 28, and the NOT output 4o of the NOT circuit 39 is input to the enable input of the multiplexer 29. When address bit 053 and bit 134 of address bus 12 are 1101, that is, page 2
When registers 0.1 and 2.3 are selected as the B bus when operating in When registers 0 and 12.5 are selected as the B bus while the register is in the B bus, register □ register group 9 is selected as the B bus. In cases other than the above, register group 7 is selected as the B bus. As described above, depending on the contents of the address bus 12, register group 8 or 9 is used instead of register 0125 of register group 7.
or a microprocessor.

発明の効果 本発明によればマイクロプログラムのビット数を増加さ
せることなく、使用可能なレジスタの数を容易に増加さ
せることが可能となシ、簡単なハードウェアを追加させ
ることのみで高性能のマイクロプロセッサを実現できる
という効果がある。
Effects of the Invention According to the present invention, it is possible to easily increase the number of usable registers without increasing the number of bits of a microprogram, and it is possible to achieve high performance by simply adding simple hardware. This has the effect of realizing a microprocessor.

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

第1図はマイクロプロセッサのブロック図、第2図はマ
イク−プログラムフォーマットを示す図、第3図はDバ
スデコーダ、Bバスデコーダのブロック詳細図である。 1・・・メモリ、     5・・・演算番、5・・・
Dバスデコーダ、6・・・Bバスデコーダ、7・・・レ
ジスタ群、   8・・・レジスタ群、賑9・・・レジ
スタ群、24・・・デコーダ、25・・・デコーダ、2
6・・・f コーp−127・・・マルチプレクサ、2
8・・・マルチプレクサ、29・・・マルチプレクサ。 才1図 す 才 Z  図
FIG. 1 is a block diagram of the microprocessor, FIG. 2 is a diagram showing the microphone program format, and FIG. 3 is a detailed block diagram of the D bus decoder and B bus decoder. 1...Memory, 5...Arithmetic number, 5...
D bus decoder, 6... B bus decoder, 7... Register group, 8... Register group, Busy 9... Register group, 24... Decoder, 25... Decoder, 2
6...f Cop-127...Multiplexer, 2
8...Multiplexer, 29...Multiplexer. Talent 1 diagram Talent Z diagram

Claims (1)

【特許請求の範囲】[Claims] t 命令の実行によシ処理が行なわれるマイクロプロセ
ッサにおいて、処理において使用され前記命令のレジス
タを指定するフィールドで指定できる数をこえる数のレ
ジスタ群と、前記命令のアドレスによって前記レジスタ
の中゛の所定のレジスタを指定して使用可能とするレジ
スタ切替手段を備えたことを特徴とするマイクロプロセ
、す。
t In a microprocessor where processing is performed by executing an instruction, there are a number of register groups used in the processing that exceed the number that can be specified in the field specifying the register of the instruction, and the number of registers in the register is specified by the address of the instruction. A microprocessor characterized by comprising register switching means for specifying and enabling a predetermined register.
JP57024376A 1982-02-19 1982-02-19 Microprocessor Pending JPS58142464A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP57024376A JPS58142464A (en) 1982-02-19 1982-02-19 Microprocessor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP57024376A JPS58142464A (en) 1982-02-19 1982-02-19 Microprocessor

Publications (1)

Publication Number Publication Date
JPS58142464A true JPS58142464A (en) 1983-08-24

Family

ID=12136466

Family Applications (1)

Application Number Title Priority Date Filing Date
JP57024376A Pending JPS58142464A (en) 1982-02-19 1982-02-19 Microprocessor

Country Status (1)

Country Link
JP (1) JPS58142464A (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0170284A2 (en) * 1984-08-02 1986-02-05 Nec Corporation Microcomputer
EP0220682A2 (en) * 1985-10-25 1987-05-06 Hitachi, Ltd. Data processing system
JPH0377137A (en) * 1989-08-19 1991-04-02 Fujitsu Ltd Information processor
EP0483967A2 (en) * 1990-10-29 1992-05-06 Sun Microsystems, Inc. Apparatus for increasing the number of registers available in a computer processor
US5771368A (en) * 1990-10-29 1998-06-23 Sun Microsystems, Inc. Memory addressing scheme for increasing the number of memory locations available in a computer for storing higher precision numbers
EP0954791A1 (en) * 1996-11-07 1999-11-10 Atmel Corporation Eight-bit microcontroller having a risc architecture

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0170284A2 (en) * 1984-08-02 1986-02-05 Nec Corporation Microcomputer
EP0220682A2 (en) * 1985-10-25 1987-05-06 Hitachi, Ltd. Data processing system
JPH0377137A (en) * 1989-08-19 1991-04-02 Fujitsu Ltd Information processor
EP0483967A2 (en) * 1990-10-29 1992-05-06 Sun Microsystems, Inc. Apparatus for increasing the number of registers available in a computer processor
US5771368A (en) * 1990-10-29 1998-06-23 Sun Microsystems, Inc. Memory addressing scheme for increasing the number of memory locations available in a computer for storing higher precision numbers
EP0954791A1 (en) * 1996-11-07 1999-11-10 Atmel Corporation Eight-bit microcontroller having a risc architecture
EP0954791A4 (en) * 1996-11-07 2003-06-11 Atmel Corp Eight-bit microcontroller having a risc architecture
EP1596279A3 (en) * 1996-11-07 2010-03-10 Atmel Corporation Microcontroller having a RISC architecture

Similar Documents

Publication Publication Date Title
JPS6313215B2 (en)
JP3237858B2 (en) Arithmetic unit
EP0403729B1 (en) Digital-signal processing apparatus
JPS58142464A (en) Microprocessor
JPH0290349A (en) Address space controller for virtual memory system
JP2985244B2 (en) Information processing device
JPS6330658B2 (en)
JPS622363A (en) Arithmetic unit
JPS5957346A (en) Data processor
JP2982129B2 (en) Micro program controller
JPS59191654A (en) Processor
JPH0528092A (en) Microprocessor
JPH01241644A (en) Microcomputer control circuit
JPS60247739A (en) Microprogram controller
JPS63120336A (en) Switching system for memory access mode
JPH01266651A (en) Semiconductor memory device
JPH04181373A (en) Vector processor
JPS60247742A (en) Pipeline arithmetic controller
JPH032926A (en) Microsequence circuit
JPS6151242A (en) Instruction decoding circuit
JPS6226729B2 (en)
JPH02297222A (en) Central processing unit
JPS60146333A (en) Designating method of memory area
JPH06103154A (en) Shared memory controller
JPS62168247A (en) Memory bank switching system