JPH05334074A - Microprocessor - Google Patents

Microprocessor

Info

Publication number
JPH05334074A
JPH05334074A JP13899492A JP13899492A JPH05334074A JP H05334074 A JPH05334074 A JP H05334074A JP 13899492 A JP13899492 A JP 13899492A JP 13899492 A JP13899492 A JP 13899492A JP H05334074 A JPH05334074 A JP H05334074A
Authority
JP
Japan
Prior art keywords
instruction
instruction memory
bits
memory
microprocessor
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
JP13899492A
Other languages
Japanese (ja)
Inventor
Hiroyasu Otomo
博康 大友
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
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP13899492A priority Critical patent/JPH05334074A/en
Publication of JPH05334074A publication Critical patent/JPH05334074A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To reduce the number of ineffectively used instruction memories and to decrease chip size and the number of chips in a microprocessor in which a horizontal type microprogram is employed. CONSTITUTION:For example, one word of the instruction memory 2 is constituted of 32 bits and 24 bits, and such selection that eight bits(32 bits-24 bits) are inputted from the instruction memory 2 at a multiplexer(MUX) 8 by a selection signal 11 from a selection signal output circuit 2a generated according to the value of a program counter(PC) 1, or no operation data(shown as (0) in figure) is inputted is performed. Therefore, it is possible to reduce the number of ineffectively used memories by constituting the instruction memory with plural bit length.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、マイクロプロセッサに
利用され、特に、複数の機能を1命令で同時に制御する
ことが可能な水平型マイクロプログラムを採用するマイ
クロプロセッサの、命令メモリの構成に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a structure of an instruction memory of a microprocessor which is used in a microprocessor and which employs a horizontal microprogram capable of simultaneously controlling a plurality of functions with one instruction.

【0002】[0002]

【従来の技術】マイクロプロセッサの命令フォーマット
は垂直型と水平型に大別される。
2. Description of the Related Art Microprocessor instruction formats are roughly classified into vertical type and horizontal type.

【0003】垂直型マイクロプログラムは、命令メモリ
の1ワードのビット長がmビット固定であり、1命令に
1〜複数ワードのメモリを要する。1命令を構成するワ
ード数を増やすことによって複雑な処理を実行できた
り、命令セットを増やすことができる。この命令フォー
マットは、1命令中の無効ビットを削減でき、命令メモ
リを有効に使用できる利点がある。しかし、ワード数を
増やすことは命令メモリの読み出し回数を増加させ、処
理速度を低下させるという問題がある。従って現実的な
1命令の最大ワード数は限定されてくる。例えば、μP
D70116(日本電気製)の場合、1バイト以上6バ
イト以下である。
In the vertical type microprogram, the bit length of one word in the instruction memory is fixed at m bits, and one instruction requires one to a plurality of words of memory. By increasing the number of words that form one instruction, it is possible to execute complicated processing and increase the instruction set. This instruction format has an advantage that the invalid bits in one instruction can be reduced and the instruction memory can be effectively used. However, there is a problem that increasing the number of words increases the number of times of reading from the instruction memory and reduces the processing speed. Therefore, the practical maximum number of words for one instruction is limited. For example, μP
In the case of D70116 (made by NEC), it is 1 byte or more and 6 bytes or less.

【0004】水平型マイクロプログラムは、命令メモリ
の1ワードのビット長がnビット固定であり、通常1ワ
ードで1命令を完結する。1命令は、演算、転送、制御
フィールドなどで構成され、必然的に1ワードのビット
長は長くなっている。例えば、μPD77230A(日
本電気製)の場合1ワードは32ビットで構成されてい
る。1命令で複数動作の指定をするため、プログラムは
若干複雑になり、最適化されたプログラムを記述するた
めにはマイクロプロセッサ固有のハードウェアの知識が
必要な場合もある。しかし、プログラム開発に関わる支
障は開発ツールの高機能化にともない改善されてきてい
る。このような水平型マイクロプログラムは、複数のフ
ィールドを独立に操作でき、個々のフィールドに対する
命令の解読と制御が単純にできるため、高速化に適して
いる。しかし、操作しないフィールドが有る場合でも全
フィールドの情報で1命令を構成するため、1命令中に
無効ビットが発生する場合が多いという問題がある。
In the horizontal microprogram, the bit length of one word in the instruction memory is fixed at n bits, and normally one word completes one instruction. One instruction is composed of operations, transfers, control fields, etc., and the bit length of one word is inevitably long. For example, in the case of μPD77230A (manufactured by NEC Corporation), one word consists of 32 bits. Since a plurality of operations are designated by one instruction, the program becomes slightly complicated, and knowledge of hardware specific to the microprocessor may be required in order to write an optimized program. However, obstacles related to program development have been improved as the development tools have become more sophisticated. Such a horizontal microprogram is suitable for speeding up because it can operate a plurality of fields independently and can easily decode and control an instruction for each field. However, even if there is a field that is not operated, one instruction is composed of the information of all fields, so there is a problem that an invalid bit often occurs during one instruction.

【0005】[0005]

【発明が解決しようとする課題】前述した従来の水平型
マイクロプログラムを採用するマイクロプロセッサで、
アプリケーションプログラムを設計する場合、1命令メ
モリ中の演算、転送、制御フィールドなど全てのフィー
ルドは使用されず、1部のフィールドを操作するための
数ビットは有効に使用されない場合があり、命令メモリ
を有効に利用できない課題があった。
In the microprocessor adopting the above-mentioned conventional horizontal type microprogram,
When designing an application program, all fields such as operation, transfer, and control fields in one instruction memory are not used, and some bits for operating one field may not be used effectively. There was a problem that could not be used effectively.

【0006】本発明の目的は、複数のビット長で命令メ
モリを構成することにより、従来の水平型マイクロプロ
グラムを採用するマイクロプロセッサで有効に使用され
ていなかった命令メモリを削減できるマイクロプロセッ
サを提供することにある。
An object of the present invention is to provide a microprocessor capable of reducing the instruction memory that has not been effectively used in the conventional microprocessor adopting the horizontal microprogram by configuring the instruction memory with a plurality of bit lengths. To do.

【0007】[0007]

【課題を解決するための手段】本発明は、システムを制
御するための水平型マイクロプログラムを格納する命令
メモリと、前記命令メモリの読み出しアドレスを指定す
るプログラムカウンタと、前記命令メモリの内容を解読
しプロセッサの動作を制御する命令デコーダとを備えた
マイクロプロセッサにおいて、前記命令メモリは、1ワ
ードの命令メモリが少なくとも2種類以上のビット長の
メモリで構成され、前記プログラムカウンタの値に従っ
て、前記命令デコーダが前記命令メモリからのデータを
読み込むか、当該フィールドをノーオペレーションとす
るデータを読み込むかの選択を指示する選択手段を備え
たことを特徴とする。
According to the present invention, an instruction memory for storing a horizontal microprogram for controlling a system, a program counter for designating a read address of the instruction memory, and a content of the instruction memory are decoded. In the microprocessor having an instruction decoder for controlling the operation of the processor, the instruction memory is composed of a one-word instruction memory having at least two kinds of bit lengths, and the instruction memory is configured according to the value of the program counter. It is characterized in that the decoder is provided with a selection means for instructing selection of whether to read data from the instruction memory or read data in which the field is a no-operation.

【0008】[0008]

【作用】命令メモリは、1ワードの命令メモリが例えば
2種類のビット長のメモリで構成される。そして、命令
デコーダが、これら2種類のビット長の差のビットに対
するデータを命令メモリから入力するか、当該フィール
ドをノーオペレーションとするデータ「0」を入力する
かの選択を選択手段からの指示に従って行う。
In the instruction memory, the one-word instruction memory is composed of, for example, two kinds of bit length memories. Then, the instruction decoder selects whether to input the data for the bit of the difference between these two types of bit lengths from the instruction memory or to input the data "0" which makes the field no operation according to the instruction from the selection means. To do.

【0009】これにより、命令メモリは1ワードのビッ
ト長をデータに適合にさせて定めることができ、メモリ
容量の最適化を図ることができ、命令メモリを削減する
ことが可能となる。
As a result, the instruction memory can determine the bit length of one word in conformity with the data, the memory capacity can be optimized, and the instruction memory can be reduced.

【0010】[0010]

【実施例】以下、本発明の実施例について図面を参照し
て説明する。
Embodiments of the present invention will be described below with reference to the drawings.

【0011】図1は本発明の第一実施例を示すブロック
構成図、および図3(a)および(b)はその命令フォ
ーマット例を示す説明図である。
FIG. 1 is a block diagram showing a first embodiment of the present invention, and FIGS. 3 (a) and 3 (b) are explanatory views showing an example of an instruction format thereof.

【0012】本第一実施例は、プログラムカウンタ(P
C)1と、命令メモリ2と、スタック3と、スタティッ
ク回路で構成された命令デコーダ4と、割込み検出回路
(INT)5と、スタックポインタ(SP)6と、マル
チプレクサ(MUX)7と、メインバス9とを備えたマ
イクロプロセッサにおいて、本発明の特徴とするところ
の、命令メモリ2は、図3(a)および(b)に示すよ
うに1ワードの命令メモリが2種類以上のビット長のメ
モリで構成され、プログラムカウンタ(PC)1の値に
従って、命令デコーダが命令メモリ2からのデータを読
み込むか、当該フィールドをノーオペレーションとする
データ(「0」)を読み込むかを指示する選択手段とし
ての、選択信号出力回路(SG)2aおよびマルチプレ
クサ(MUX)8を備えている。
In the first embodiment, the program counter (P
C) 1, instruction memory 2, stack 3, instruction decoder 4 composed of a static circuit, interrupt detection circuit (INT) 5, stack pointer (SP) 6, multiplexer (MUX) 7, and main In the microprocessor provided with the bus 9, the instruction memory 2, which is a feature of the present invention, is a 1-word instruction memory having two or more bit lengths as shown in FIGS. 3 (a) and 3 (b). As a selection unit configured by a memory, the instruction decoder indicates whether to read the data from the instruction memory 2 or the data (“0”) that makes the field a no operation according to the value of the program counter (PC) 1. Of the selection signal output circuit (SG) 2a and the multiplexer (MUX) 8.

【0013】次に、本第一実施例の動作について説明す
る。
Next, the operation of the first embodiment will be described.

【0014】プログラムカウンタ(PC)1は命令メモ
リ2のアドレスを示すレジスタであり、インクリメント
動作と、命令による書き換えやスタック3へのデータの
退避とスタック3からのデータの復帰ができる。命令メ
モリ2はマイクロプログラムを格納するメモリで、プロ
グラムカウンタ(PC)1で指定されたアドレスの内容
を命令デコーダ4へ出力する。スタック3はプログラム
カウンタ(PC)1の内容の退避や復帰とメインバス9
を介したデータの読み書きが可能なレジスタであり、書
き込みデータはマルチプレクサ(MUX)7で選択され
る。命令デコーダ4はマイクロプログラムを解読しマイ
クロプロセッサ内の各ユニットへの制御信号を出力す
る。割込み検出回路(INT)5は割込み要求信号10
を検出する回路で、割込み要求信号10を検出するとプ
ログラムカウンタ(PC)1の内容をスタック3へ退避
した後、割込みアドレスをプログラムカウンタ(PC)
1へ設定する。スタックポインタ6はスタック3のレベ
ルを指すインクリメントまたはデクリメントの可能なカ
ウンタである。
The program counter (PC) 1 is a register indicating the address of the instruction memory 2, and can perform an increment operation, rewriting by an instruction, saving data in the stack 3, and restoring data from the stack 3. The instruction memory 2 is a memory for storing a micro program, and outputs the content of the address designated by the program counter (PC) 1 to the instruction decoder 4. The stack 3 saves and restores the contents of the program counter (PC) 1 and the main bus 9
It is a register that can read and write data via, and write data is selected by a multiplexer (MUX) 7. The instruction decoder 4 decodes the microprogram and outputs a control signal to each unit in the microprocessor. The interrupt detection circuit (INT) 5 has an interrupt request signal 10
When the interrupt request signal 10 is detected by the circuit for detecting the
Set to 1. The stack pointer 6 is a counter capable of incrementing or decrementing the level of the stack 3.

【0015】命令メモリ2の1ワードを32ビットと2
4ビットで構成し、命令デコーダ4をスタティック回路
で構成した場合は、8ビット(32ビット−24ビッ
ト)を命令メモリ2から入力するか、当該フィールドを
ノーオペレーションとするデータ(図中「0」)を入力
するかを、選択信号出力回路2aからのプログラムカウ
ンタ(PC)1の値を選択信号11とするマルチプレク
サ(MUX)8で選択する。
One word of the instruction memory 2 has 32 bits and 2 bits.
When the instruction decoder 4 is composed of 4 bits and the instruction decoder 4 is composed of a static circuit, 8 bits (32 bits to 24 bits) are input from the instruction memory 2 or data for which the field is not operated (“0” in the figure). ) Is selected by the multiplexer (MUX) 8 which uses the value of the program counter (PC) 1 from the selection signal output circuit 2a as the selection signal 11.

【0016】例えば、命令メモリ2の半数を32ビット
で、残りを24ビットで構成した場合のメモリ容量は、
命令メモリ2全体を32ビットで構成した場合に比べて
87.5%になる。
For example, when the half of the instruction memory 2 is 32 bits and the rest is 24 bits, the memory capacity is
This is 87.5% compared to the case where the entire instruction memory 2 is composed of 32 bits.

【0017】図2は本発明の第二実施例を示すブロック
構成図で、命令デコーダ4をダイナミック回路で構成し
た例である。命令デコーダ4の入力は一度全ビット
「1」にプリチャージされ、命令メモリ2の出力が
「0」のビットをディスチャージした後解読を開始す
る。本第二実施例の場合は、メモリセルの存在しないビ
ットは「1」を保持するため、当該フィールドをノーオ
ペレーションとするデータを「オール1」と設定するこ
とにより、命令メモリ2から入力するか、当該フィール
ドをノーオペレーションとするデータを入力するかを選
択する図1のマルチプレクサ(MUX)8が不要であ
る。
FIG. 2 is a block diagram showing the second embodiment of the present invention, which is an example in which the instruction decoder 4 is constructed by a dynamic circuit. The input of the instruction decoder 4 is precharged to all the bits "1" once, and the output of the instruction memory 2 discharges the bit of "0", and then the decoding is started. In the case of the second embodiment, since the bit in which the memory cell does not exist retains "1", whether the data is input from the instruction memory 2 by setting the data for which the field is a no operation to "all 1". , The multiplexer (MUX) 8 of FIG. 1 for selecting whether to input data for which the field concerned is a no operation is unnecessary.

【0018】図3(a)および(b)は本発明のマイク
ロプロセッサの命令フォーマット例である。この例で
は、演算フィールド21、制御フィールド22、転送フ
ィールド(1)23および転送フィールド(2)24か
らなる1ワードの命令(図3(a))と、演算フィール
ド21、制御フィールド22および転送フィールド25
からなる1ワードの命令(図3(b))との2種類の異
なるワード長の命令を含んでいる。
FIGS. 3A and 3B show examples of instruction formats of the microprocessor of the present invention. In this example, a 1-word instruction (FIG. 3A) including a calculation field 21, a control field 22, a transfer field (1) 23 and a transfer field (2) 24, and a calculation field 21, a control field 22 and a transfer field. 25
It includes two types of instructions having different word lengths from the one-word instruction (FIG. 3B).

【0019】複雑な処理を高速に実行する場合には二つ
の転送フィールドが有効に使用されるが、一つの転送フ
ィールドで十分な場合も多い。これら二つのフォーマッ
トの切り換えは分岐命令によりプログラムカウンタ(P
C)1の値を変更することで行う。二つの転送が可能な
領域で、二つの転送と一つの転送が混在する処理を高速
に行うことは可能である。
Although two transfer fields are effectively used when performing complicated processing at high speed, one transfer field is often sufficient. Switching between these two formats is performed by a program counter (P
C) It is performed by changing the value of 1. In a region where two transfers are possible, it is possible to perform a process in which two transfers and one transfer coexist at high speed.

【0020】[0020]

【発明の効果】以上説明したように、本発明は、複数の
ビット長で命令メモリを構成することにより、有効に使
用されていなかった命令メモリを削減できる効果があ
る。例えば、命令メモリを内蔵したマイクロプロセッサ
ではチップサイズを縮小でき、メモリセルの大きい読み
出し書き込みメモリ(RAM)で命令メモリを構成する
場合の効果は特に大きい。また、命令メモリを外部にも
つマイクロプロセッサではメモリチップの数を削減でき
る大きな効果が得られる。
As described above, the present invention has the effect of reducing the instruction memory that has not been effectively used by configuring the instruction memory with a plurality of bit lengths. For example, a microprocessor including an instruction memory can reduce the chip size, and the effect is particularly great when the instruction memory is composed of a read / write memory (RAM) having a large memory cell. Further, a microprocessor having an instruction memory externally has a great effect of reducing the number of memory chips.

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

【図1】本発明の第一実施例を示すブロック構成図。FIG. 1 is a block diagram showing the first embodiment of the present invention.

【図2】本発明の第二実施例を示すブロック構成図。FIG. 2 is a block diagram showing a second embodiment of the present invention.

【図3】本発明のマイクロプロセッサの命令フォーマッ
ト例を示す図。
FIG. 3 is a diagram showing an example of an instruction format of a microprocessor of the present invention.

【符号の説明】[Explanation of symbols]

1 プログラムカウンタ(PC) 2 命令メモリ 2a 選択信号出力回路(SG) 3 スタック 4 命令デコーダ 5 割込み検出回路(INT) 6 スタックポインタ(SP) 7、8 マルチプレクサ(MUX) 9 メインバス 10 割込み要求信号 11 選択信号 21 演算フィールド 22 制御フィールド 23 転送フィールド(1) 24 転送フィールド(2) 25 転送フィールド 1 Program Counter (PC) 2 Instruction Memory 2a Selection Signal Output Circuit (SG) 3 Stack 4 Instruction Decoder 5 Interrupt Detection Circuit (INT) 6 Stack Pointer (SP) 7, 8 Multiplexer (MUX) 9 Main Bus 10 Interrupt Request Signal 11 Selection signal 21 Calculation field 22 Control field 23 Transfer field (1) 24 Transfer field (2) 25 Transfer field

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】 システムを制御するための水平型マイク
ロプログラムを格納する命令メモリと、 前記命令メモリの読み出しアドレスを指定するプログラ
ムカウンタと、 前記命令メモリの内容を解読しプロセッサの動作を制御
する命令デコーダとを備えたマイクロプロセッサにおい
て、 前記命令メモリは、1ワードの命令メモリが少なくとも
2種類以上のビット長のメモリで構成され、 前記プログラムカウンタの値に従って、前記命令デコー
ダが前記命令メモリからのデータを読み込むか、当該フ
ィールドをノーオペレーションとするデータを読み込む
かの選択を指示する選択手段を備えたことを特徴とする
マイクロプロセッサ。
1. An instruction memory for storing a horizontal microprogram for controlling a system, a program counter for designating a read address of the instruction memory, and an instruction for decoding the contents of the instruction memory and controlling the operation of a processor. In the microprocessor including a decoder, the instruction memory includes a 1-word instruction memory including at least two kinds of bit length memories, and the instruction decoder stores data from the instruction memory according to a value of the program counter. A microprocessor having a selection means for instructing selection of whether to read data or to read data in which the field is a no-operation.
JP13899492A 1992-05-29 1992-05-29 Microprocessor Pending JPH05334074A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP13899492A JPH05334074A (en) 1992-05-29 1992-05-29 Microprocessor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP13899492A JPH05334074A (en) 1992-05-29 1992-05-29 Microprocessor

Publications (1)

Publication Number Publication Date
JPH05334074A true JPH05334074A (en) 1993-12-17

Family

ID=15235003

Family Applications (1)

Application Number Title Priority Date Filing Date
JP13899492A Pending JPH05334074A (en) 1992-05-29 1992-05-29 Microprocessor

Country Status (1)

Country Link
JP (1) JPH05334074A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009093662A (en) * 2002-12-27 2009-04-30 Arm Ltd Data processing apparatus and method for converting number between fixed-point and floating-point representations
US8122233B2 (en) 2003-06-20 2012-02-21 Renesas Electronics Corporation Information processing device

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009093662A (en) * 2002-12-27 2009-04-30 Arm Ltd Data processing apparatus and method for converting number between fixed-point and floating-point representations
US8122233B2 (en) 2003-06-20 2012-02-21 Renesas Electronics Corporation Information processing device
US8484448B2 (en) 2003-06-20 2013-07-09 Renesas Electronics Corporation Information processing device

Similar Documents

Publication Publication Date Title
US9032185B2 (en) Active memory command engine and method
US4777588A (en) General-purpose register file optimized for intraprocedural register allocation, procedure calls, and multitasking performance
US5455955A (en) Data processing system with device for arranging instructions
US4446517A (en) Microprogram memory with page addressing and address decode in memory
JP2773471B2 (en) Information processing device
US5274792A (en) Information processing apparatus with parallel instruction decoding
JPH05334074A (en) Microprocessor
JP2553200B2 (en) Information processing device
JPH03271829A (en) Information processor
JPH056281A (en) Information processor
US6321319B2 (en) Computer system for allowing a two word jump instruction to be executed in the same number of cycles as a single word jump instruction
JPS6230455B2 (en)
JP3058524B2 (en) Program control unit
JPH0258648B2 (en)
JP3305967B2 (en) DSP pointer error detection circuit
JPH0315770B2 (en)
JPS6362065A (en) Data transfer control system
JPS628245A (en) Virtual memory system
JPS63276126A (en) Instruction decoding circuit
JPH11134202A (en) Task switching device
JPH0962504A (en) Instruction processor
JPS62210541A (en) Register selecting system
JPS6351294B2 (en)
JPH01255037A (en) Electronic computer
JPH01316826A (en) Register file address circuit