JPS58142464A - Microprocessor - Google Patents
MicroprocessorInfo
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/30098—Register arrangements
- G06F9/3012—Organisation of register space, e.g. banked or distributed register file
- G06F9/30138—Extension of register space, e.g. register cache
Abstract
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.
第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)
ッサにおいて、処理において使用され前記命令のレジス
タを指定するフィールドで指定できる数をこえる数のレ
ジスタ群と、前記命令のアドレスによって前記レジスタ
の中゛の所定のレジスタを指定して使用可能とするレジ
スタ切替手段を備えたことを特徴とするマイクロプロセ
、す。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.
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)
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 |
-
1982
- 1982-02-19 JP JP57024376A patent/JPS58142464A/en active Pending
Cited By (8)
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 |