JP2006072961A - Memory circuit for arithmetic processing unit - Google Patents
Memory circuit for arithmetic processing unit Download PDFInfo
- Publication number
- JP2006072961A JP2006072961A JP2005064818A JP2005064818A JP2006072961A JP 2006072961 A JP2006072961 A JP 2006072961A JP 2005064818 A JP2005064818 A JP 2005064818A JP 2005064818 A JP2005064818 A JP 2005064818A JP 2006072961 A JP2006072961 A JP 2006072961A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- memory
- storage memory
- output
- information storage
- 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
Images
Abstract
Description
本発明は、マイクロプロセッサやディジタルシグナルプロセッサ(DSP)の演算処理装置のメモリ回路に関するものである。 The present invention relates to a memory circuit of an arithmetic processing unit of a microprocessor or a digital signal processor (DSP).
従来のマイクロプロセッサやディジタルシグナルプロセッサ(DSP)において、VLIW(Very Long Instruction Word)方式の演算処理装置のメモリ回路は図13に示すようになっている。(例えば、特許文献1参照)
図13において、100は演算のステップ毎にインクリメントするプログラムカウンタ、101は演算器を動作させるための命令が格納された命令格納メモリ、102は複数の演算器に命令を分割処理するデコーダ、103は演算を行うための演算器である。
従来のVLIW方式の演算処理装置のメモリ回路は、プログラムカウンタ100の値を命令格納メモリ101のアドレスとして入力し、そのアドレスが指定するメモリ領域のデータを複数の演算器用命令として読み出すようになっている。その読み出された命令は、複数の演算器毎に分割デコードされて入力され、演算器103は各命令に応じた演算処理を行う。これら一連の処理は、プログラムカウンタ100がカウントアップする毎に実行される。
図14は、従来の演算処理装置のメモリ回路における、命令格納メモリのメモリ使用状況を示す図であり、命令コードはOP1〜9の9種類を使用して示している。ここでは、3つの演算器を内蔵している演算処理装置のメモリ回路について示しており、命令格納メモリは各演算器に対応した3つのメモリが必要になる。演算器1に対応する命令は、命令コード1として命令格納メモリ1に格納され、演算器2に対応する命令は、命令コード2として命令格納メモリ2に格納され、演算器3に対応する命令は、命令コード3として命令格納メモリ3に格納されている。格納されたOP1〜9の命令コードを利用して、プログラムカウンタが示す演算ステップ毎に演算処理を行うものである。
図15は、図14の命令格納メモリ内での命令コード使用状況について示している。命令格納メモリ内の命令コード使用状況として、OP3の使用頻度が高いことを示している。
In FIG. 13, 100 is a program counter that is incremented at each operation step, 101 is an instruction storage memory in which an instruction for operating the arithmetic unit is stored, 102 is a decoder that divides the instruction into a plurality of arithmetic units, and 103 is It is a computing unit for performing computations.
A memory circuit of a conventional VLIW arithmetic processing unit inputs the value of the
FIG. 14 is a diagram showing the memory usage status of the instruction storage memory in the memory circuit of the conventional arithmetic processing unit. The instruction codes are shown using nine types of OP1 to OP9. Here, a memory circuit of an arithmetic processing unit incorporating three arithmetic units is shown, and the instruction storage memory requires three memories corresponding to each arithmetic unit. The instruction corresponding to the
FIG. 15 shows an instruction code usage status in the instruction storage memory of FIG. As an instruction code usage status in the instruction storage memory, OP3 is frequently used.
ところが、従来技術のようなVLIW方式の演算処理装置のメモリ回路を利用して演算処理を行う場合、NOP(No Operation)のような命令を数多く含んだ実行コードを処理することがある。これは、並列に配置された演算器間のデータ受け渡しが必要な際に生じるものである。このように、NOPのような命令を数多く含む場合、実行コード数の増加と命令格納メモリの容量増加となり、回路規模の増大につながる。これは、発熱やLSIのパッケージ小型化の点で問題となる。 However, when performing arithmetic processing using a memory circuit of a VLIW arithmetic processing device as in the prior art, an execution code including many instructions such as NOP (No Operation) may be processed. This occurs when data exchange between arithmetic units arranged in parallel is necessary. Thus, when many instructions such as NOP are included, the number of executable codes increases and the capacity of the instruction storage memory increases, leading to an increase in circuit scale. This becomes a problem in terms of heat generation and downsizing of the LSI package.
本発明は上記課題を解決するためになされたものであり、演算器の実行コード数を削減し、命令格納メモリの容量を物理的に削減することができる演算処理装置のメモリ回路を提供することを目的とする。 The present invention has been made to solve the above problems, and provides a memory circuit of an arithmetic processing unit capable of reducing the number of execution codes of an arithmetic unit and physically reducing the capacity of an instruction storage memory. With the goal.
上記問題を解決するため、請求項1に係る演算処理装置のメモリ回路の発明は、複数の入力データを保持するための入力メモリと、加減乗除、論理演算および数値比較などを行うための1つ以上の演算器と、前記演算器からの演算結果を保持する出力メモリと、前記演算器にて実行する処理を決定するための1つ以上の命令格納メモリと、前記演算器の実行サイクル毎にカウントアップするプログラムカウンタと、を備えた演算処理装置において、演算処理で多用されるある特定の命令コードを格納するレジスタと、前記レジスタ7に格納された特定命令が実行されるステップの情報を格納するための特定命令情報格納メモリと、前記特定命令情報格納メモリからの出力データをカウント禁止信号としてカウント動作を制御できるアドレス生成カウンタと、前記命令格納メモリからの出力命令と前記特定命令コードを格納したレジスタからの出力命令を切替える第1のセレクタ回路と、を備えたものである。
In order to solve the above problem, an invention of a memory circuit of an arithmetic processing unit according to
請求項2の発明は、請求項1記載の演算処理装置のメモリ回路において、前記レジスタおよび前記特定命令情報格納メモリが複数設置されており、前記複数の特定命令情報格納メモリから出力される特定命令有効信号を論理ORすると共に、該論理ORされた信号をカウント禁止信号として前記アドレス生成カウンタに出力するための論理OR回路と、前記特定命令コードを格納した複数のレジスタからの出力命令を選択して各演算器に出力する第2のセレクタ回路と、前記第2のセレクタ回路を制御するためのデコード回路と、を備えたものである。 According to a second aspect of the present invention, in the memory circuit of the arithmetic processing unit according to the first aspect, a plurality of the registers and the specific instruction information storage memories are provided, and the specific instructions output from the plurality of specific instruction information storage memories A logical OR circuit for logically ORing the valid signal and outputting the logically ORed signal to the address generation counter as a count prohibition signal and an output instruction from a plurality of registers storing the specific instruction code are selected. A second selector circuit that outputs to each computing unit, and a decode circuit for controlling the second selector circuit.
請求項3記載の本発明は、請求項1記載の演算処理装置のメモリ回路においT、同一の命令コードを連続して前記特定命令情報格納メモリから出力することを示す情報が格納された連続命令情報格納メモリと、前記特定命令情報格納メモリから出力される特定命令有効信号と前記連続命令情報格納メモリから出力される連続命令有効信号とを論理ORすると共に、該論理ORされた信号をカウント禁止信号として前記アドレス生成カウンタに出力する論理OR回路と、を備えたものである。 According to a third aspect of the present invention, in the memory circuit of the arithmetic processing unit according to the first aspect, T is a continuous instruction in which information indicating that the same instruction code is continuously output from the specific instruction information storage memory is stored. Logically OR the information storage memory, the specific instruction valid signal output from the specific instruction information storage memory and the continuous instruction valid signal output from the continuous instruction information storage memory, and prohibit counting of the logically ORed signal And a logical OR circuit that outputs the signal to the address generation counter as a signal.
請求項1記載の演算処理装置のメモリ回路によれば、特定命令情報格納メモリに、演算処理で多用されるある特定の命令であるか否かを示すビット情報を格納し、このビット情報をカウント禁止信号として利用することで、複数の演算器用に設置された命令格納メモリ用アドレス生成カウンタの動作を制御することができる。これと同時に、カウント禁止信号は、演算器へ命令を引き渡す直前に設置されたセレクタ回路に入力されており、カウント禁止信号が有効の場合は、特定命令コードを格納したレジスタ値を選択するようになっている。一方、無効の場合は、命令格納メモリからのデータを選択する。
すなわち、従来のように多用されるある特定の命令コードを命令格納メモリに格納する必要はなくなり、メモリ容量を削減する効果を持っている。これは、VLIW方式の演算処理装置の場合、効率よく並列演算できる実行コードの生成が難しいため、NOP命令を多く含んだ実行コードとなっている。このため、命令格納メモリの物理的な容量削減の効果は非常に大きいことになる。
また、演算処理にて多用される命令コードがNOP以外の場合でも、請求項1記載の演算処理装置のメモリ回路を利用することで、前記同様の命令格納メモリの物理的な容量削減効果が得られる。
さらに、考え方を逆にして、命令格納メモリの容量を物理的に削減しない場合は、現状より多くの実行コードを命令格納メモリに格納することが可能となる。これにより、現状の演算処理より高度で複雑な演算処理を実行することが可能となる。
According to the memory circuit of the arithmetic processing unit according to
That is, there is no need to store a specific instruction code that is frequently used in the instruction storage memory as in the prior art, and the memory capacity is reduced. This is an execution code including many NOP instructions because it is difficult to generate an execution code that can be efficiently operated in parallel in the case of a VLIW type arithmetic processing unit. For this reason, the effect of reducing the physical capacity of the instruction storage memory is very large.
Further, even when the instruction code frequently used in the arithmetic processing is other than NOP, by using the memory circuit of the arithmetic processing device according to
Furthermore, if the concept is reversed and the capacity of the instruction storage memory is not physically reduced, it is possible to store more execution code in the instruction storage memory than at present. As a result, it is possible to execute a calculation process that is more sophisticated and complicated than the current calculation process.
請求項2記載の演算処理装置のメモリ回路によれば、多用される命令コードを格納するためのレジスタを複数準備しているため、NOP命令以外に一般的な演算処理に多用される命令コードについても格納することができる。前記複数のレジスタに格納された命令コードを、いつ使用するかを示すための特定命令情報格納メモリを設置している。また、セレクタ回路の制御を行うデコード回路を設置し、前記複数のレジスタに格納された命令コードをセレクタ回路にて切り替え、必要とされる演算器に出力することができる。
すなわち、請求項1の演算処理装置のメモリ回路による効果に追加して、多用される命令コードを格納するレジスタを複数設置しているため、従来のように全ての命令コードを命令格納メモリに格納する必要はなくなり、さらにメモリ容量を削減する効果を持っている。
According to the memory circuit of the arithmetic processing unit according to
That is, in addition to the effect of the memory circuit of the arithmetic processing unit according to
請求項3記載の演算処理装置のメモリ回路によれば、連続命令情報格納メモリに、命令格納メモリに連続して同じ命令コードを格納しているか否かを示すビット情報を格納し、このビット情報をカウント禁止信号として利用することで、複数の演算器用に設置された命令格納メモリ用アドレス生成カウンタの動作を制御することができる。ここで、カウント禁止信号は、特定命令情報格納メモリからのビット情報との論理ORにより生成するものとする。
すなわち、請求項1の演算処理装置のメモリ回路による効果に追加して、連続して同じ命令コードを命令格納メモリに格納する必要がなくなるため、さらにメモリ容量を削減する効果を持っている。
According to the memory circuit of the arithmetic processing unit according to
That is, in addition to the effect of the memory circuit of the arithmetic processing unit according to the first aspect, it is not necessary to continuously store the same instruction code in the instruction storage memory, so that the memory capacity can be further reduced.
以下、本発明の実施例を図に基づいて説明する。 Embodiments of the present invention will be described below with reference to the drawings.
図1は本発明の第1実施例を示す演算処理装置のメモリ回路のブロックである。
1は演算器、2は入力メモリ、3は出力メモリ、4は命令格納メモリ、5はアドレス生成カウンタ、6は特定命令情報格納メモリ、7はレジスタ、8はセレクタ回路、9はプログラムカウンタである。
本発明が従来技術と異なる点は以下のとおりである。
すなわち、演算処理で多用されるある特定の命令コードを格納するレジスタ7と、前記レジスタ7に格納された特定命令が実行されるステップの情報を格納するための特定命令情報格納メモリ6と、前記特定命令情報格納メモリ6からの出力データをカウント禁止信号としてカウント動作を制御できるアドレス生成カウンタ5と、命令格納メモリ4からの出力命令と前記特定命令コードを格納したレジスタ7からの出力命令を切替えるセレクタ回路8を備えた点である。
FIG. 1 is a block diagram of a memory circuit of an arithmetic processing unit showing a first embodiment of the present invention.
1 is an arithmetic unit, 2 is an input memory, 3 is an output memory, 4 is an instruction storage memory, 5 is an address generation counter, 6 is a specific instruction information storage memory, 7 is a register, 8 is a selector circuit, and 9 is a program counter .
The present invention is different from the prior art as follows.
That is, a
次に動作について説明する。
演算処理装置のメモリ回路は、システム動作の基準となるクロックS1と、演算開始信号S2がプログラムカウンタ9に入力され、演算開始信号が有効となるとプログラムカウンタはカウント動作を開始する。
プログラムカウンタからの出力データはPCとして、特定命令情報格納メモリ6のアドレスとして入力される。これにより、PCにて指定された領域に格納されたビット情報が特定命令情報格納メモリから出力される。
特定命令情報格納メモリから出力されるビット情報1〜mは、カウント禁止信号1〜mとしてアドレス生成カウンタ5に入力される。このアドレス生成カウンタには、プログラムカウンタと同様に、クロックS1と、演算開始信号S2が入力され、演算開始信号が有効となるとアドレス生成カウンタ1〜mはカウント動作を開始する。
アドレス生成カウンタ1〜mから出力されるデータは、命令格納メモリ1〜mのアドレスとして入力され、そのメモリ出力が演算器1〜mの命令コード用として出力される。この命令コードと、特定命令コード用のレジスタ7に格納された命令コードはセレクタ回路8に入力され、前記カウント禁止信号1〜mにより、切り替えが行われる。
最終的にセレクタ回路の出力データが、命令コードとして演算器1〜mへ入力され、その命令に応じて入力メモリから入力されるデータを演算処理することになる。
Next, the operation will be described.
In the memory circuit of the arithmetic processing unit, a clock S1 which is a reference for system operation and an operation start signal S2 are input to the
Output data from the program counter is input as an address of the specific command
Data output from the
Finally, the output data of the selector circuit is input to the
上記演算器にて実行される演算命令の例として、以下のようなものがある。ここでは、入力されるデータをAとBとした場合について記述する。
・A + B (加算)
・A − B (減算)
・A × B (乗算)
・A ÷ B (除算)
・|A + B| (加算絶対値)
・A & B (論理AND)
・A | B (論理OR)
・A ^ B (論理EX−OR)
・A < B、A > B (数値の大小比較)
・A = B、A != B (数値の一致、不一致)
・NOP(No Operation)
などが各演算器にて実行できる。
本発明では、アプリケーションにより多用される演算命令を特定命令としている。
Examples of operation instructions executed by the arithmetic unit include the following. Here, a case where input data is A and B will be described.
・ A + B (addition)
・ A-B (Subtraction)
・ A x B (multiplication)
・ A ÷ B (Division)
・ | A + B | (Additional absolute value)
・ A & B (Logical AND)
・ A | B (Logical OR)
・ A ^ B (Logic EX-OR)
・ A <B, A> B (Comparison of numerical values)
・ A = B, A! = B (Numeric value match, mismatch)
・ NOP (No Operation)
Etc. can be executed by each arithmetic unit.
In the present invention, an arithmetic instruction frequently used by an application is set as a specific instruction.
図2は、本発明の演算処理装置のメモリ回路における、特定命令情報格納メモリ6と命令格納メモリ4のメモリ使用状況を示す図である。図3は、命令格納メモリ内に特定命令コードを残した状態のメモリ使用状況を示す図である。また、ここでは説明を分かり易くするため、演算器を3つ内蔵した場合の演算処理装置のメモリ回路として説明する。さらに、演算器の命令コードには、OP1〜OP9の種類があり、各演算器ではこれら9種類の命令を利用して演算するものとして説明する。
図3から説明すると、ここでは図2で示した命令格納メモリ1〜3に命令コードが格納されており、使用頻度の高いOP3を特定命令と設定し、本発明で設置した特定命令情報格納メモリにどのようにその情報が格納されるかを示したものである。特定命令情報格納メモリのbit1は命令格納メモリ1に、bit2は命令格納メモリ2に、bit3は命令格納メモリ3にそれぞれ対応している。プログラムカウンタが示す演算ステップ毎に、OP3が利用される特定命令情報格納メモリの各bitに“1”が入るようになっている。
本発明のメモリ回路にて実際に使用する場合、図2のような命令格納メモリの使用状況となる。図2では、使用頻度の高いOP3の命令コードを、特定命令コード用レジスタ7に格納することで、命令格納メモリにその命令コードを格納する必要がなくなることを示している。
FIG. 2 is a diagram showing a memory usage situation of the specific instruction
Referring to FIG. 3, here, instruction codes are stored in the
When actually used in the memory circuit of the present invention, the instruction storage memory is used as shown in FIG. FIG. 2 shows that the instruction code of OP3 that is frequently used is stored in the specific
よって、図2に示すように、本来ならOP3の命令コードが格納されるメモリ領域に、OP3の命令コードは存在しないことになり、使用するメモリが削減できることが分かる。 Therefore, as shown in FIG. 2, the OP3 instruction code does not exist in the memory area where the OP3 instruction code is originally stored, and it can be understood that the memory to be used can be reduced.
図4は、本発明の演算処理装置のメモリ回路における、タイミングチャートを示す図である。ここでは、図2に示す命令コードが特定命令情報格納メモリ6、および命令格納メモリ4に格納されているものとして説明している。尚、説明を分かり易くするため、特定命令情報格納メモリと命令格納メモリは、アドレスを入力するとデータを非同期で出力するメモリとしてタイミングチャートに示している。
図4のタイミングチャートについて、図1の回路におけるデータの流れと合わせて説明する。
まず、プログラムカウンタ9に、クロックS1と演算開始信号S2が入力される。プログラムカウンタは、演算開始信号が“1”になっている時、クロックの立ち上がりに同期してカウント動作を開始する。このプログラムカウンタからの出力データであるPCは、特定命令情報格納メモリのアドレスとして入力される。特定命令情報格納メモリからは、PCにて指定された領域に格納されたビット情報が出力される。
特定命令情報格納メモリから出力されるビット情報1〜3は、カウント禁止信号1〜3としてアドレス生成カウンタ5に入力される。アドレス生成カウンタは、プログラムカウンタと同様に、クロックS1と、演算開始信号S2が入力され、演算開始信号が“1”になるとカウント動作を開始する。ここで、カウント禁止信号1が“1”のときは、アドレス生成カウンタ1のカウント動作は停止する。タイミングチャートで示すように、プログラムカウンタが“2”と“6”のとき、カウント禁止信号1は“1”になっているので、この期間ではアドレス生成カウンタ1は、“2”と“5”のカウント値を保持した状態となる。アドレス生成カウンタ2についても同様に、プログラムカウンタが“1”と“2”のとき、カウント禁止信号2は“1”になっているので、この期間ではアドレス生成カウンタ2は、“1”のカウント値を連続して保持した状態となる。アドレス生成カウンタ3については、プログラムカウンタが“3”と“7”と“9”のとき、カウント禁止信号3は“1”になっているので、この期間ではアドレス生成カウンタ3は、“3”と“6”と“7”のカウント値を保持した状態となる。
各アドレス生成カウンタから出力されるデータは、命令格納メモリ1〜3のアドレスとして入力され、そのメモリ出力が演算器1〜3の命令コードとして出力される。タイミングチャートにおいて、命令格納メモリ1〜3から出力される命令コードは、図2に示すプログラムカウンタ値と命令コード1〜3に対応していることが分かる。また、この時点では、特定命令コードとして設定したOP3が存在していないことが確認できる。
命令格納メモリ1〜3から出力される命令コードは、直接演算器に入力されるのではなく、セレクタ回路を介して入力される。セレクタ回路では、特定命令コード用のレジスタ7に設定された、OP3の命令コードを出力し、カウント禁止信号が“0”のとき、命令格納メモリ1〜3からの出力値を選択し、カウント禁止信号が“1”のとき、特定命令コード用のレジスタの出力値を選択する。
最終的にセレクタ回路1の出力データは、カウント禁止信号1が“1”のとき、特定命令コードとして設定したOP3が命令コードとして選択される。これは、セレクタ回路2、セレクタ回路3についても同様であり、カウント禁止信号2、カウント禁止信号3が“1”のとき、特定命令コードとして設定したOP3が命令コードとして選択される。これらセレクタ回路1〜3から出力される命令コードは、図3に示す命令コードの並びと一致していることが分かる。演算器1〜3では、セレクタ回路1〜3から出力される命令コードにより、入力メモリから入力されるデータを演算処理することになる。
FIG. 4 is a diagram showing a timing chart in the memory circuit of the arithmetic processing unit of the present invention. Here, the instruction code shown in FIG. 2 is described as being stored in the specific instruction
The timing chart of FIG. 4 will be described together with the data flow in the circuit of FIG.
First, the clock S1 and the calculation start signal S2 are input to the
Data output from each address generation counter is input as an address of the
The instruction codes output from the
Finally, as the output data of the
よって、従来の命令格納メモリは、図3に示すようにプログラムカウンタ値が9までの命令コードを格納するメモリ領域が必要であったものを、本発明の演算処理装置のメモリ回路を利用した命令格納メモリでは、図2に示すようにプログラムカウンタ値が7以下のメモリ容量となる。 Therefore, the conventional instruction storage memory requires a memory area for storing an instruction code having a program counter value up to 9, as shown in FIG. 3, and uses the memory circuit of the arithmetic processing unit of the present invention. In the storage memory, the program counter value has a memory capacity of 7 or less as shown in FIG.
したがって、本発明の第1実施例に係る演算処理装置は、演算処理で多用される命令を事前にレジスタ7へ格納しておき、本来実行コードが格納されるべきメモリには、多用される命令を格納しないようにすると共に、さらに、多用される命令が使われるプログラムカウンタの位置を、特定命令情報格納メモリ6に格納し、その情報を使って事前にレジスタ7へ格納した命令を演算器へ入力するためのセレクタ回路8を設置するようにしたので、演算器の実行コード数を削減し、命令格納メモリの物理的なメモリ容量の削減を実現することができる。その結果、発熱やLSIのパッケージ小型化の問題を解消することができる。
Therefore, the arithmetic processing unit according to the first embodiment of the present invention stores the instructions frequently used in the arithmetic processing in the
図5は本発明の第2実施例を示す演算処理装置のメモリ回路のブロック図である。なお、第2実施例の構成要素が第1実施例と同じものついてはその説明を省略し、異なる点について説明する。
図において、10は論理OR回路、11はセレクタ回路、12はデコード回路である。
第2実施例が第1実施例と異なる点は以下のとおりである。
すなわち、演算処理で多用される特定の命令コードを格納するレジスタ7が複数設置されており、レジスタに格納された特定命令が実行されるステップの情報を格納するための特定命令情報格納メモリ6も同様に複数設置されており、複数の特定命令情報格納メモリから出力される特定命令有効信号S10〜S12を論理ORすると共に、該論理ORされた信号をカウント禁止信号としてアドレス生成カウンタ1に出力するための論理OR回路10と、特定命令コードを格納した複数のレジスタ7からの出力命令を選択して各演算器に出力するセレクタ回路11と、セレクタ回路11を制御するためのデコード回路12を備えたものとなっている。
FIG. 5 is a block diagram of the memory circuit of the arithmetic processing unit showing the second embodiment of the present invention. Note that the description of the same constituent elements as those of the first embodiment is omitted, and different points will be described.
In the figure, 10 is a logical OR circuit, 11 is a selector circuit, and 12 is a decode circuit.
The second embodiment is different from the first embodiment as follows.
That is, a plurality of
次に動作について説明する。
第1実施例と同様に、演算処理装置のメモリ回路は、システム動作の基準となるクロックS1と、演算開始信号S2がプログラムカウンタ9に入力され、演算開始信号が有効となるとプログラムカウンタはカウント動作を開始する。
プログラムカウンタからの出力データはPCとして、複数(1〜P個)の特定命令情報格納メモリ6のアドレスとして入力される。これにより、PCにて指定された領域に格納されたビット情報が各特定命令情報格納メモリ6から出力される。
特定命令情報格納メモリ6から出力されるビット情報1〜mは、設置された特定命令情報格納メモリの個数分(1〜P個)出力される。ここで、特定命令情報格納メモリ1のビット情報mの信号S10と、特定命令情報格納メモリ2のビット情報mの信号S11と、特定命令情報格納メモリPのビット情報mの信号S12とは、論理OR回路10によりカウント禁止信号mとしてアドレス生成カウンタ5に入力される。このカウント禁止信号は、ビット情報1〜m−1についても同様に生成されるものとする。このアドレス生成カウンタには、プログラムカウンタと同様に、クロックS1と、演算開始信号S2が入力され、演算開始信号が有効となるとアドレス生成カウンタ1〜mはカウント動作を開始する。
複数の特定命令コード用のレジスタ7に格納された命令コードはセレクタ回路11に入力される。このセレクタ回路11は、特定命令情報格納メモリ1〜Pに格納されたビット情報1〜mのデータによりデコード回路12により制御される。
アドレス生成カウンタ1〜mから出力されるデータは、命令格納メモリ1〜mのアドレスとして入力され、そのメモリ出力が演算器1〜mの命令コード用として出力される。この命令コードと、複数の特定命令コード用のレジスタ7に格納された命令コードはセレクタ回路8に入力され、前記カウント禁止信号1〜mにより、切り替えが行われる。
最終的にセレクタ回路の出力データが、命令コードとして演算器1〜mへ入力され、その命令に応じて入力メモリから入力されるデータを演算処理することになる。
Next, the operation will be described.
Similar to the first embodiment, the memory circuit of the arithmetic processing unit is configured such that the clock S1, which is a reference for system operation, and the operation start signal S2 are input to the
Output data from the program counter is input as an address of a plurality (1 to P) of specific instruction
The
The instruction codes stored in the plurality of specific instruction code registers 7 are input to the selector circuit 11. The selector circuit 11 is controlled by the
Data output from the address generation counters 1 to m is input as addresses of the
Finally, the output data of the selector circuit is input to the
図6は、第2実施例の演算処理装置のメモリ回路における、複数の特定命令情報格納メモリ6と命令格納メモリ4のメモリ使用状況を示す図である。図7は、命令格納メモリ内に、複数の特定命令コードを残した状態のメモリ使用状況を示す図である。また、ここでは説明を分かり易くするため、特定命令情報格納メモリと特定命令コードを格納するレジスタ、演算器を各3個使用した場合の演算処理装置のメモリ回路として説明する。さらに、演算器の命令コードには、OP1〜OP9の種類があり、各演算器ではこれら9種類の命令を利用して演算するものとする。
図7から説明すると、ここでは図14で示した命令格納メモリ1〜3に命令コードが格納されており、使用頻度の高いOP3、OP4、OP5を特定命令と設定し、本発明で設置した特定命令情報格納メモリにどのようにその情報が格納されるかを示したものである。特定命令情報格納メモリのbit1は命令格納メモリ1に、bit2は命令格納メモリ2に、bit3は命令格納メモリ3にそれぞれ対応している。プログラムカウンタが示す演算ステップ毎に、OP3、OP4、OP5が利用される特定命令情報格納メモリの各bitに“1”が入るようになっている。
本発明のメモリ回路にて実際に使用する場合、図6のような命令格納メモリの使用状況となる。図6では、使用頻度の高いOP3、OP4、OP5の各命令コードを、3個の特定命令コード用レジスタ7に格納することで、命令格納メモリにその命令コードを格納する必要がなくなることを示している。
FIG. 6 is a diagram showing the memory usage status of the plurality of specific instruction
Referring to FIG. 7, here, instruction codes are stored in the
When actually used in the memory circuit of the present invention, the instruction storage memory is used as shown in FIG. FIG. 6 shows that the instruction codes of frequently used OP3, OP4, and OP5 are stored in the three specific instruction code registers 7 so that the instruction codes need not be stored in the instruction storage memory. ing.
よって、図6に示すように、本来ならOP3、OP4、OP5の命令コードが格納されるメモリ領域に、各命令コードは存在しないことになり、使用するメモリが削減できることが分かる。 Therefore, as shown in FIG. 6, each instruction code does not exist in the memory area in which instruction codes OP3, OP4, and OP5 are originally stored, and it can be understood that the memory to be used can be reduced.
図8は、第2実施例の演算処理装置のメモリ回路における、タイミングチャートを示す図である。ここでは、図6に示す命令コードが複数の特定命令情報格納メモリ6、および命令格納メモリ4に格納されているものとして説明している。なお、説明を分かり易くするため、特定命令情報格納メモリと命令格納メモリは、アドレスを入力するとデータを非同期で出力するメモリとしてタイミングチャートに示している。
図8のタイミングチャートについて、図5の回路におけるデータの流れと合わせて説明する。
まず、プログラムカウンタ9に、クロックS1と演算開始信号S2が入力される。プログラムカウンタは、演算開始信号が“1”になっている時、クロックの立ち上がりに同期してカウント動作を開始する。このプログラムカウンタからの出力データであるPCは、特定命令情報格納メモリのアドレスとして入力される。特定命令情報格納メモリからは、PCにて指定された領域に格納されたビット情報が出力される。
特定命令情報格納メモリ1〜3から出力される各ビット情報1は、論理ORされてカウント禁止信号1としてアドレス生成カウンタ1に入力される。これと同様に、各ビット情報2、3においても、論理ORされてカウント禁止信号2、3としてアドレス生成カウンタ2、3に入力される。各アドレス生成カウンタは、プログラムカウンタと同様に、クロックS1と、演算開始信号S2が入力され、演算開始信号が“1”になるとカウント動作を開始する。ここで、カウント禁止信号1が“1”のときは、アドレス生成カウンタ1のカウント動作は停止する。タイミングチャートで示すように、プログラムカウンタが“1”〜“3”と“6”と“9”のとき、カウント禁止信号1は“1”になっているので、この期間のアドレス生成カウンタ1は、“1”と“3”と“5”のカウント値を保持した状態となる。アドレス生成カウンタ2についても同様に、プログラムカウンタが“0”〜“3”のとき、カウント禁止信号2は“1”になっているので、この期間のアドレス生成カウンタ2は、“0”のカウント値を連続して保持した状態となる。アドレス生成カウンタ3については、プログラムカウンタが“0”〜“3”と“7”と“9”のとき、カウント禁止信号3は“1”になっているので、この期間のアドレス生成カウンタ3は、“0”と“3”と“4”のカウント値を保持した状態となる。
各アドレス生成カウンタから出力されるデータは、命令格納メモリ1〜3のアドレスとして入力され、そのメモリ出力が演算器1〜3の命令コードとして出力される。タイミングチャートにおいて、命令格納メモリ1〜3から出力される命令コードは、図6に示すプログラムカウンタ値と命令コード1〜3に対応していることが分かる。また、この時点では、特定命令コードとして設定したOP3、OP4、OP5が存在していないことが確認できる。
命令格納メモリ1〜3から出力される命令コードは、直接演算器に入力されるのではなく、セレクタ回路8を介して入力される。特定命令コード用のレジスタ7に設定された、OP3、OP4、OP5の命令コードは、セレクタ回路11を介して前記セレクタ回路8へ出力される。セレクタ回路11を制御するために、デコード回路12が設置されており、このデコード回路では特定命令コード用のレジスタに対応した、特定命令情報格納メモリ6のビット情報により制御される。セレクタ回路8では、カウント禁止信号が“0”のとき、命令格納メモリ1〜3からの出力値を選択し、カウント禁止信号が“1”のとき、特定命令コード用のレジスタの出力値を選択する。
最終的にセレクタ回路1の出力データは、カウント禁止信号1が“1”のとき、特定命令コードとして設定したOP3、OP4、OP5が命令コードとして選択される。これは、セレクタ回路2、セレクタ回路3についても同様であり、カウント禁止信号2、カウント禁止信号3が“1”のとき、特定命令コードとして設定したOP3、OP4、OP5が命令コードとして選択される。これらセレクタ回路1〜3から出力される命令コードは、図7に示す命令コードの並びと一致していることが分かる。演算器1〜3では、セレクタ回路1〜3から出力される命令コードにより、入力メモリから入力されるデータを演算処理することになる。
FIG. 8 is a diagram illustrating a timing chart in the memory circuit of the arithmetic processing unit according to the second embodiment. Here, it is assumed that the instruction code shown in FIG. 6 is stored in the plurality of specific instruction
The timing chart of FIG. 8 will be described together with the data flow in the circuit of FIG.
First, the clock S1 and the calculation start signal S2 are input to the
Each
Data output from each address generation counter is input as an address of the
The instruction codes output from the
Finally, as the output data of the
したがって、本発明の第2実施例に係る演算処理装置は、レジスタ7および特定命令情報格納メモリ6を複数設置し、複数の特定命令情報格納メモリ6から出力される特定命令有効信号S10〜S12を論理ORすると共に、該論理ORされた信号をカウント禁止信号としてアドレス生成カウンタ1に出力するための論理OR回路10と、特定命令コードを格納した複数のレジスタ7からの出力命令を選択して各演算器に出力するセレクタ回路11と、セレクタ回路11を制御するためのデコード回路12と、を備えたので、従来の命令格納メモリが、図7に示すようにプログラムカウンタ値が9までの命令コードを格納するメモリ領域が必要であったものを、本発明の第2実施例による演算処理装置のメモリ回路を利用した命令格納メモリでは、図6に示すようにプログラムカウンタ値を5以下のメモリ容量にすることができる。すなわち、第2実施例は命令格納メモリの物理的なメモリ容量の削減を実現することができる。
Therefore, the arithmetic processing unit according to the second embodiment of the present invention includes a plurality of
図9は本発明の第3実施例を示す演算処理装置のメモリ回路のブロック図である。なお、第3実施例の構成要素が第1実施例と同じものついてはその説明を省略し、異なる点について説明する。
図において、20は論理OR回路、21は連続命令情報格納メモリである。
第3実施例が第1実施例と異なる点は以下のとおりである。
すなわち、同一の命令コードを連続して前記特定命令情報格納メモリ6から出力することを示す情報が格納された連続命令情報格納メモリ21と、前記特定命令情報格納メモリ6から出力される特定命令有効信号S20〜S22と前記連続命令情報格納メモリ21から出力される連続命令有効信号S23〜S25とを論理ORすると共に、該論理ORされた信号をカウント禁止信号として前記アドレス生成カウンタ1に出力する論理OR回路20とを備えた点である。
FIG. 9 is a block diagram of the memory circuit of the arithmetic processing unit showing the third embodiment of the present invention. Note that the description of the components of the third embodiment that are the same as those of the first embodiment will be omitted, and the differences will be described.
In the figure, 20 is a logical OR circuit, and 21 is a continuous instruction information storage memory.
The third embodiment differs from the first embodiment as follows.
That is, the continuous instruction
次に動作について説明する。
第1実施例と同様に、演算処理装置のメモリ回路は、システム動作の基準となるクロックS1と、演算開始信号S2がプログラムカウンタ9に入力され、演算開始信号が有効となるとプログラムカウンタはカウント動作を開始する。
プログラムカウンタからの出力データはPCとして、特定命令情報格納メモリ6と連続命令情報格納メモリ21のアドレスとして入力される。これにより、PCにて指定された領域に格納されたビット情報が特定命令情報格納メモリと連続命令情報格納メモリから出力される。
特定命令情報格納メモリから出力されるビット情報1〜mと、連続命令情報格納メモリから出力されるビット情報1〜mとは、各ビット毎に論理OR回路20に入力される。論理OR回路20では、カウント禁止信号1〜mとしてアドレス生成カウンタ5に入力される。このアドレス生成カウンタには、プログラムカウンタと同様に、クロックS1と、演算開始信号S2が入力され、演算開始信号が有効となるとアドレス生成カウンタ1〜mはカウント動作を開始する。
アドレス生成カウンタ1〜mから出力されるデータは、命令格納メモリ1〜mのアドレスとして入力され、そのメモリ出力が演算器1〜mの命令コード用として出力される。この命令コードと、特定命令コード用のレジスタ7に格納された命令コードはセレクタ回路8に入力され、特定命令情報格納メモリから出力されるビット情報1〜mS20、S21、S22により、切り替えが行われる。
最終的にセレクタ回路の出力データが、命令コードとして演算器1〜mへ入力され、その命令に応じて入力メモリから入力されるデータを演算処理することになる。
Next, the operation will be described.
Similar to the first embodiment, the memory circuit of the arithmetic processing unit is configured such that the clock S1, which is a reference for system operation, and the operation start signal S2 are input to the
Output data from the program counter is input as an address of the specific instruction
The
Data output from the address generation counters 1 to m is input as addresses of the
Finally, the output data of the selector circuit is input to the
図10は、第3実施例の演算処理装置のメモリ回路における、特定命令情報格納メモリ6と連続命令情報格納メモリ21と命令格納メモリ4のメモリ使用状況を示す図である。図11は、命令格納メモリ内に、特定命令コードと連続命令コードを残した状態のメモリ使用状況を示す図である。また、ここでは説明を分かり易くするため、演算器を各3個使用した場合の演算処理装置のメモリ回路として説明する。さらに、演算器の命令コードには、OP1〜OP9の種類があり、各演算器ではこれら9種類の命令を利用して演算するものとする。
図11から説明すると、ここでは図14で示した命令格納メモリ1〜3に命令コードが格納されており、使用頻度の高いOP3を特定命令と設定し、本発明で設置した特定命令情報格納メモリにどのようにその情報が格納されるかを示したものである。特定命令情報格納メモリのbit1は命令格納メモリ1に、bit2は命令格納メモリ2に、bit3は命令格納メモリ3にそれぞれ対応している。プログラムカウンタが示す演算ステップ毎に、OP3が利用される特定命令情報格納メモリの各bitに“1”が入るようになっている。また、命令格納メモリにおいてOP3を取り除いた際、命令コードが連続して配置される、OP5、OP4、OP1について、連続命令情報格納メモリにどのように配置されているか示している。連続命令情報格納メモリのbit1は命令格納メモリ1に、bit2は命令格納メモリ2に、bit3は命令格納メモリ3にそれぞれ対応している。プログラムカウンタが示す演算ステップ毎に、命令格納メモリに同一の命令コードが連続している際、先頭部分の連続命令情報格納メモリの各bitに“1”が入るようになっている。
本発明のメモリ回路にて実際に使用する場合、図10のような命令格納メモリの使用状況となる。図10では、使用頻度の高いOP3の命令コードを、特定命令コード用レジスタ7に格納することで、命令格納メモリにその命令コードを格納する必要がなくなることを示している。これとともに、命令格納メモリに連続して配置された同一の命令コードを格納する必要がなくなることも示している。
FIG. 10 is a diagram showing the memory usage status of the specific instruction
Referring to FIG. 11, here, instruction codes are stored in the
When actually used in the memory circuit of the present invention, the instruction storage memory is used as shown in FIG. FIG. 10 shows that by storing the frequently used instruction code of OP3 in the specific
よって、図10に示すように、本来ならOP3の命令コードが格納されるメモリ領域と、連続で配置されるOP5、OP4、OP1の各命令コードは存在しないことになり、使用するメモリが削減できることが分かる。 Therefore, as shown in FIG. 10, there is originally no memory area in which the instruction code of OP3 is stored and the instruction codes of OP5, OP4, and OP1 arranged consecutively, and the memory to be used can be reduced. I understand.
図12は、第3実施例の演算処理装置のメモリ回路における、タイミングチャートを示す図である。ここでは、図10に示す命令コードが特定命令情報格納メモリ6、および命令格納メモリ4に格納されているものとして説明している。尚、説明を分かり易くするため、特定命令情報格納メモリと命令格納メモリは、アドレスを入力するとデータを非同期で出力するメモリとしてタイミングチャートに示している。
図12のタイミングチャートについて、図9の回路におけるデータの流れと合わせて説明する。
まず、プログラムカウンタ9に、クロックS1と演算開始信号S2が入力される。プログラムカウンタは、演算開始信号が“1”になっている時、クロックの立ち上がりに同期してカウント動作を開始する。このプログラムカウンタからの出力データであるPCは、特定命令情報格納メモリのアドレスとして入力される。特定命令情報格納メモリからは、PCにて指定された領域に格納されたビット情報が出力される。
特定命令情報格納メモリから出力されるビット情報と、連続命令情報格納メモリから出力されるビット情報は、論理ORされてカウント禁止信号1〜3としてアドレス生成カウンタ1〜3に入力される。各アドレス生成カウンタは、プログラムカウンタと同様に、クロックS1と、演算開始信号S2が入力され、演算開始信号が“1”になるとカウント動作を開始する。ここで、カウント禁止信号1が“1”のときは、アドレス生成カウンタ1のカウント動作は停止する。タイミングチャートで示すように、プログラムカウンタが“1”と“2”と“6”のとき、カウント禁止信号1は“1”になっているので、この期間のアドレス生成カウンタ1は、“1”と“4”のカウント値を保持した状態となる。アドレス生成カウンタ2についても同様に、プログラムカウンタが“0”〜2”と“6”のとき、カウント禁止信号2は“1”になっているので、この期間のアドレス生成カウンタ2は、“0”と“3”のカウント値を連続して保持した状態となる。アドレス生成カウンタ3については、プログラムカウンタが“1”と“3”と“7”と“9”のとき、カウント禁止信号3は“1”になっているので、この期間のアドレス生成カウンタ3は、“1”と“2”と“5”と“6”のカウント値を保持した状態となる。
各アドレス生成カウンタから出力されるデータは、命令格納メモリ1〜3のアドレスとして入力され、そのメモリ出力が演算器1〜3の命令コードとして出力される。タイミングチャートにおいて、命令格納メモリ1〜3から出力される命令コードは、図10に示すプログラムカウンタ値と命令コード1〜3に対応していることが分かる。また、この時点では、特定命令コードとして設定したOP3が存在していないことが確認できる。さらに、OP3を取り除いた際に、命令格納メモリ1に連続して配置されたOP5と、命令格納メモリ2に連続して配置されたOP4、OP1と、命令格納メモリ3に連続して配置されたOP4も先頭の命令コードのみ存在していることが確認できる。
命令格納メモリ1〜3から出力される命令コードは、直接演算器に入力されるのではなく、セレクタ回路8を介して入力される。セレクタ回路8では、カウント禁止信号が“0”のとき、命令格納メモリ1〜3からの出力値を選択し、カウント禁止信号が“1”のとき、特定命令コード用のレジスタの出力値を選択する。
最終的にセレクタ回路1の出力データは、カウント禁止信号1が“1”のとき、特定命令コードとして設定したOP3が命令コードとして選択される。これは、セレクタ回路2、セレクタ回路3についても同様であり、カウント禁止信号2、カウント禁止信号3が“1”のとき、特定命令コードとして設定したOP3が命令コードとして選択される。これらセレクタ回路1〜3から出力される命令コードは、図11に示す命令コードの並びと一致していることが分かる。演算器1〜3では、セレクタ回路1〜3から出力される命令コードにより、入力メモリから入力されるデータを演算処理することになる。
FIG. 12 is a diagram illustrating a timing chart in the memory circuit of the arithmetic processing unit according to the third embodiment. Here, it is assumed that the instruction code shown in FIG. 10 is stored in the specific instruction
The timing chart of FIG. 12 will be described together with the data flow in the circuit of FIG.
First, the clock S1 and the calculation start signal S2 are input to the
The bit information output from the specific instruction information storage memory and the bit information output from the continuous instruction information storage memory are logically ORed and input to the address generation counters 1 to 3 as
Data output from each address generation counter is input as an address of the
The instruction codes output from the
Finally, as the output data of the
したがって、本発明の第3実施例に係る演算処理装置は、同一の命令コードを連続して前記特定命令情報格納メモリ6から出力することを示す情報が格納された連続命令情報格納メモリ21と、前記特定命令情報格納メモリ6から出力される特定命令有効信号S20〜S22と前記連続命令情報格納メモリ21から出力される連続命令有効信号S23〜S25とを論理ORすると共に、該論理ORされた信号をカウント禁止信号として前記アドレス生成カウンタ1に出力する論理OR回路20とを備えたので、従来の命令格納メモリが、図11に示すようにプログラムカウンタ値が9までの命令コードを格納するメモリ領域が必要であったものを、本発明の第3実施例による演算処理装置のメモリ回路を利用した命令格納メモリでは、図10に示すようにプログラムカウンタ値を6以下のメモリ容量にすることができる。すなわち、本発明は命令格納メモリの物理的なメモリ容量の削減を実現することができる。
Therefore, the arithmetic processing unit according to the third embodiment of the present invention includes a continuous instruction
VLIW方式の演算処理装置において、より少ない命令格納メモリで並列演算を実行することができるため、FA用途の制御装置や信号処理装置の命令格納メモリの容量削減手法として利用することができる。
また、命令格納メモリの容量を物理的に削減しない場合は、現状より多くの実行コードを命令格納メモリに格納することが可能となるため、FA用途の制御装置や信号処理装置の演算処理において、より高度で複雑な演算処理を実行するために利用することができる。
Since the VLIW type arithmetic processing unit can execute parallel arithmetic with less instruction storage memory, it can be used as a method for reducing the capacity of the instruction storage memory of a control device for FA or a signal processing device.
Further, when the capacity of the instruction storage memory is not physically reduced, since it becomes possible to store more execution codes in the instruction storage memory than in the present situation, in the arithmetic processing of the control device and signal processing device for FA use, It can be used to execute more sophisticated and complicated arithmetic processing.
1:演算器
2:入力メモリ
3:出力メモリ
4:命令格納メモリ
5:アドレス生成カウンタ
6:特定命令情報格納メモリ
7:レジスタ
8:セレクタ回路
9:プログラムカウンタ
10:論理OR回路
11:セレクタ回路
12:デコード回路
20:論理OR回路
21:連続命令情報格納メモリ
S1:クロック
S2:演算開始信号
S10〜12、S20〜22:特定命令有効信号
S23〜25:連続命令有効信号
1: arithmetic unit 2: input memory 3: output memory 4: instruction storage memory 5: address generation counter 6: specific instruction information storage memory 7: register 8: selector circuit 9: program counter 10: logical OR circuit 11: selector circuit 12 : Decode circuit 20: Logical OR circuit 21: Continuous instruction information storage memory S1: Clock S2: Operation start signals S10-12, S20-22: Specific instruction valid signal S23-25: Continuous instruction valid signal
Claims (3)
加減乗除、論理演算および数値比較などを行うための1つ以上の演算器(1)と、
前記演算器(1)からの演算結果を保持する出力メモリ(3)と、
前記演算器(1)にて実行する処理を決定するための1つ以上の命令格納メモリ(4)と、
前記演算器(1)の実行サイクル毎にカウントアップするプログラムカウンタ(9)と、
を備えた演算処理装置において、
演算処理で多用されるある特定の命令コードを格納するレジスタ(7)と、
前記レジスタ(7)に格納された特定命令が実行されるステップの情報を格納するための特定命令情報格納メモリ(6)と、
前記特定命令情報格納メモリ(6)からの出力データをカウント禁止信号としてカウント動作を制御できるアドレス生成カウンタ(5)と、
前記命令格納メモリ(4)からの出力命令と前記特定命令コードを格納したレジスタ(7)からの出力命令を切替える第1のセレクタ回路(8)と、
を備えたことを特徴とする演算処理装置のメモリ回路。 An input memory (2) for holding a plurality of input data;
One or more computing units (1) for performing addition, subtraction, multiplication, division, logical operation, numerical comparison, etc .;
An output memory (3) for holding a calculation result from the calculator (1);
One or more instruction storage memories (4) for determining processing to be executed by the computing unit (1);
A program counter (9) that counts up every execution cycle of the computing unit (1);
In an arithmetic processing device comprising:
A register (7) for storing a specific instruction code frequently used in arithmetic processing;
A specific instruction information storage memory (6) for storing information of a step in which the specific instruction stored in the register (7) is executed;
An address generation counter (5) capable of controlling the count operation using the output data from the specific instruction information storage memory (6) as a count prohibition signal;
A first selector circuit (8) for switching an output instruction from the instruction storage memory (4) and an output instruction from a register (7) storing the specific instruction code;
A memory circuit of an arithmetic processing unit comprising:
前記複数の特定命令情報格納メモリ(6)から出力される特定命令有効信号(S10〜S12)を論理ORすると共に、該論理ORされた信号をカウント禁止信号として前記アドレス生成カウンタ(1)に出力するための論理OR回路(10)と、
前記特定命令コードを格納した複数のレジスタ(7)からの出力命令を選択して各演算器に出力する第2のセレクタ回路(11)と、
前記第2のセレクタ回路(11)を制御するためのデコード回路(12)と、
を備えたことを特徴とする請求項1記載の演算処理装置のメモリ回路。 A plurality of the register (7) and the specific command information storage memory (6) are provided,
The specific instruction valid signals (S10 to S12) output from the plurality of specific instruction information storage memories (6) are logically ORed, and the logically ORed signal is output to the address generation counter (1) as a count inhibition signal. A logical OR circuit (10) for
A second selector circuit (11) for selecting an output instruction from a plurality of registers (7) storing the specific instruction code and outputting the selected instruction to each computing unit;
A decode circuit (12) for controlling the second selector circuit (11);
The memory circuit of the arithmetic processing unit according to claim 1, further comprising:
前記特定命令情報格納メモリ(6)から出力される特定命令有効信号(S20〜S22)と前記連続命令情報格納メモリ(21)から出力される連続命令有効信号(S23〜S25)とを論理ORすると共に、該論理ORされた信号をカウント禁止信号として前記アドレス生成カウンタ(1)に出力する論理OR回路(20)と、
を備えたことを特徴とする請求項1記載の演算処理装置のメモリ回路。 A continuous instruction information storage memory (21) in which information indicating that the same instruction code is continuously output from the specific instruction information storage memory (6) is stored;
The specific instruction valid signal (S20 to S22) output from the specific instruction information storage memory (6) and the continuous instruction valid signal (S23 to S25) output from the continuous instruction information storage memory (21) are logically ORed. And a logical OR circuit (20) for outputting the logically ORed signal to the address generation counter (1) as a count inhibition signal;
The memory circuit of the arithmetic processing unit according to claim 1, further comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005064818A JP2006072961A (en) | 2004-08-04 | 2005-03-09 | Memory circuit for arithmetic processing unit |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004228167 | 2004-08-04 | ||
JP2005064818A JP2006072961A (en) | 2004-08-04 | 2005-03-09 | Memory circuit for arithmetic processing unit |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006072961A true JP2006072961A (en) | 2006-03-16 |
Family
ID=36153484
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005064818A Pending JP2006072961A (en) | 2004-08-04 | 2005-03-09 | Memory circuit for arithmetic processing unit |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006072961A (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007316900A (en) * | 2006-05-25 | 2007-12-06 | Sanyo Electric Co Ltd | Control information supply device and control information compression method |
JP2007316901A (en) * | 2006-05-25 | 2007-12-06 | Sanyo Electric Co Ltd | Control information supply device and control information compression method |
JP2009026106A (en) * | 2007-07-20 | 2009-02-05 | Oki Electric Ind Co Ltd | Instruction code compression method and instruction fetch circuit |
CN110383259A (en) * | 2017-01-26 | 2019-10-25 | 索尼半导体解决方案公司 | Calculation processing apparatus and information processing system |
-
2005
- 2005-03-09 JP JP2005064818A patent/JP2006072961A/en active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007316900A (en) * | 2006-05-25 | 2007-12-06 | Sanyo Electric Co Ltd | Control information supply device and control information compression method |
JP2007316901A (en) * | 2006-05-25 | 2007-12-06 | Sanyo Electric Co Ltd | Control information supply device and control information compression method |
JP4646853B2 (en) * | 2006-05-25 | 2011-03-09 | 三洋電機株式会社 | Control information supply device |
JP4646854B2 (en) * | 2006-05-25 | 2011-03-09 | 三洋電機株式会社 | Control information supply device |
JP2009026106A (en) * | 2007-07-20 | 2009-02-05 | Oki Electric Ind Co Ltd | Instruction code compression method and instruction fetch circuit |
CN110383259A (en) * | 2017-01-26 | 2019-10-25 | 索尼半导体解决方案公司 | Calculation processing apparatus and information processing system |
CN110383259B (en) * | 2017-01-26 | 2023-05-16 | 索尼半导体解决方案公司 | Computing processing device and information processing system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3592230B2 (en) | Data processing device | |
JPH1091443A (en) | Information processing circuit, microcomputer and electronic equipment | |
JPH0470662B2 (en) | ||
CN101401064A (en) | Register-based shifts for a unidirectional rotator | |
KR100983135B1 (en) | Processor and method of grouping and executing dependent instructions in a packet | |
EP0913764B1 (en) | Method and apparatus for shifting data | |
US20120005458A1 (en) | Fast Static Rotator/Shifter with Non Two's Complemented Decode and Fast Mask Generation | |
JP2006072961A (en) | Memory circuit for arithmetic processing unit | |
KR20180035211A (en) | Vector arithmetic instruction | |
JP2008108220A (en) | Arithmetic unit | |
JP3556252B2 (en) | Data processing system and method for calculating offset total | |
JP5233078B2 (en) | Processor and processing method thereof | |
JPWO2010067522A1 (en) | Arithmetic unit, processor and parallel computing method | |
JP3570287B2 (en) | Microcomputer | |
JP2011028543A (en) | Information processing system, and information processing method for the same | |
JP4873546B2 (en) | Data processing apparatus and data processing method | |
JP2014238832A (en) | Operand generation in at least one processing pipeline | |
JP2014164659A (en) | Processor | |
US20050251658A1 (en) | Processing unit | |
JPH1020959A (en) | Low power consumption micro processor | |
JP3019818B2 (en) | Data processing method | |
JP3088956B2 (en) | Arithmetic unit | |
JP2013161325A (en) | Simd (single instruction-stream multiple data-stream) type microprocessor, processor system and data processing method for simd type microprocessor | |
JP2006092158A (en) | Digital signal processing circuit | |
JP2003084972A (en) | Method for improving execution speed of conditional subtraction command, and enlarging range of operand to which command is correctly executed |