JP2008129851A - Processing unit - Google Patents
Processing unit Download PDFInfo
- Publication number
- JP2008129851A JP2008129851A JP2006314169A JP2006314169A JP2008129851A JP 2008129851 A JP2008129851 A JP 2008129851A JP 2006314169 A JP2006314169 A JP 2006314169A JP 2006314169 A JP2006314169 A JP 2006314169A JP 2008129851 A JP2008129851 A JP 2008129851A
- Authority
- JP
- Japan
- Prior art keywords
- arithmetic processing
- instruction
- processing unit
- memory
- central processing
- 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
Landscapes
- Executing Machine-Instructions (AREA)
Abstract
Description
本発明は、演算処理内容を最適化できる演算処理装置に関し、特にポータブル機器を対象とした組み込み機器として有効な演算処理装置に関するものである。 The present invention relates to an arithmetic processing device capable of optimizing arithmetic processing contents, and more particularly to an arithmetic processing device effective as an embedded device for portable devices.
ある従来技術によれば、DSPの演算処理性能を生かしつつ、DSPで実行する数値演算処理のプログラムを容易に開発できる(特許文献1参照)。
組み込みシステムにおいては、中央演算処理装置はプログラムを実行してシステムの演算、制御等を行っている。中央演算処理装置は、プログラムを実行するために、プログラムを構成する要素たる命令をフラッシュメモリ等のメモリからフェッチ動作を行い読み出す必要がある。 In an embedded system, the central processing unit executes a program to perform calculation and control of the system. In order to execute a program, the central processing unit needs to read an instruction that is an element constituting the program by performing a fetch operation from a memory such as a flash memory.
通常、中央演算処理装置とフラッシュメモリ等のメモリは、同一の半導体チップ上に存在しないため外部IOを通じたアクセスとなる。外部IOを通じたアクセスは、同一半導体チップ内部のアクセスと比べ、電圧や静電容量の違いから速度が遅く、なおかつ消費電力が多い。 Normally, the central processing unit and a memory such as a flash memory are not accessed on the same semiconductor chip, and thus are accessed through an external IO. Access via an external IO is slower and consumes more power than access within the same semiconductor chip due to differences in voltage and capacitance.
また、中央演算処理装置は汎用的なものであって、各々の組み込みシステムに最適化されることはまれである。そのため、各々の組み込みシステムにおいては、中央演算処理装置の備える汎用的な命令を複数組み合わせ、所望の処理を実行している。 Moreover, the central processing unit is general-purpose and is rarely optimized for each embedded system. Therefore, in each embedded system, a plurality of general-purpose instructions included in the central processing unit are combined to execute a desired process.
本発明によれば、中央演算処理装置に命令の内容を定義するメモリを持たせ、新たに命令を定義し、一度の定義された新たな命令を実行することで、既存の命令を複数合わせた一連の処理を実施可能にする。 According to the present invention, the central processing unit has a memory for defining the contents of an instruction, defines a new instruction, and executes a new instruction once defined, thereby combining a plurality of existing instructions. A series of processes can be performed.
また、演算内容に関しても定義し、中央演算処理装置に備える演算処理資源を使用して新たに演算処理内容を定義可能にする。 Also, calculation contents are defined, and calculation processing contents can be newly defined using calculation processing resources provided in the central processing unit.
本発明によれば、新たに命令を定義し、一度の命令を実行することにより一連の処理を実施可能であるため、命令フェッチの回数が減少し、実行速度を改善し、消費電力を低減できる。 According to the present invention, since a series of processing can be performed by newly defining an instruction and executing one instruction, the number of instruction fetches can be reduced, execution speed can be improved, and power consumption can be reduced. .
また、中央演算処理装置に備える演算処理資源を使用して、各組み込みシステムに適した命令を定義することにより、既存の命令を組み合わせることなく所望の処理を実行するため、命令フェッチの回数が減少し、実行速度を改善し、消費電力を低減できる。 In addition, by using the processing resources provided in the central processing unit and defining instructions suitable for each embedded system, the desired processing is executed without combining existing instructions, so the number of instruction fetches is reduced. In addition, the execution speed can be improved and the power consumption can be reduced.
以下、図面を参照しながら、本発明の実施形態を詳細に説明する。 Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
《第1の実施形態》
図1は、本発明を適用した中央演算処理装置を含むシステムLSIを適用した画像音声処理システムである。本システムは、システムLSI101とフラッシュメモリ102とモニタ103とスピーカ104とからなり、フラッシュメモリ102に予め書き込まれている音声付映像データを再生するビデオ再生装置である。
<< First Embodiment >>
FIG. 1 shows an audio / video processing system to which a system LSI including a central processing unit to which the present invention is applied is applied. This system is a video playback device that includes a system LSI 101, a
フラッシュメモリ102には、システムLSI101に収められている中央演算処理装置105で実行する命令の集合体であるプログラムと、音声付映像データと、本発明に利用する拡張命令制御ブロック113の一連の手続きの定義とが含まれている。
In the
スピーカ104は、システムLSI101から出力する電気信号を音声に変換する。モニタ103は、システムLSI101から出力する電気信号を映像に変換する。
The
なお、フラッシュメモリ102は、システムLSI101の外部に接続されているため、システムLSI101内部と比べアクセスに際してより多くの時間と電力を消費する。
Note that since the
システムLSI101は、本発明を適用した音声処理装置11と映像処理装置10と中央演算処理装置105とを含む。音声処理装置11は、中央演算処理装置105からの指示に応じて音声データをスピーカ104にて再生できる音声信号に変換する。映像処理装置10は、中央演算処理装置105からの指示に応じて映像データをモニタ103にて表示できる映像信号に変換する。
The system LSI 101 includes an
中央演算処理装置105は、命令読み出しブロック106、命令判断ブロック107、命令実行ブロック108、レジスタ書き込みブロック109、レジスタロードストアブロック110、バスインタフェースブロック111、レジスタブロック112、拡張命令制御ブロック113、手続き処理保持バッファメモリ114からなる。
The central processing unit 105 includes an
命令読み出しブロック106は、中央演算処理装置105が動作するにあたり必要な命令を読み出す役割を担う。また、拡張命令制御ブロック113から転送されてきた命令を次の命令判断ブロック107へ転送する役割を更に備える。
The instruction read
命令判断ブロック107は、命令の種類を判断し、なすべき処理内容を命令実行ブロック108へ伝達する役割を担う。また、命令判断ブロック107は、予め定義された拡張命令と判断した場合、拡張命令制御ブロック113に実行を要請する機能を更に備える。
The
命令実行ブロック108は、命令判断ブロック107により指示された処理内容を実行する役割を担う。
The
レジスタ書き込みブロック109は、命令実行ブロック108により実行された処理内容をレジスタブロック112中のレジスタに書き込む機能を備える。また、レジスタ書き込みブロック109は、拡張命令制御ブロック113の内部に存在する設定レジスタにも値を書き込み可能である。なお、この設定レジスタに関しては、後ほど別の図を用いて説明する。更に、レジスタ書き込みブロック109を通じて手続き処理保持バッファメモリ114へも書き込みが可能である。
The register write
レジスタロードストアブロック110は、中央演算処理装置105外部に存在するメモリ空間と中央演算処理装置105内部のレジスタとの間でデータを読み出し及び書き込みを実行する機能を備える。
The register load /
バスインタフェースブロック111は、中央演算処理装置105外部とのインタフェース機能を備える。
The
レジスタブロック112は、中央演算処理装置105にて実行する処理に必要な一時的なデータ保管機能を備える。
The
拡張命令制御ブロック113は、命令判断ブロック107より要請された拡張命令を判断し、手続き処理保持バッファメモリ114に予め記録されている複数の命令を順番に命令読み出しブロック106に転送する機能を備える。
The extended
手続き処理保持バッファメモリ114は、所望の一連の手続きを保持し拡張命令制御ブロック113の求めに応じ順番に出力する機能を備える。また、一連の手続きを1つの組み合わせとし、複数の手続きを各々別個に登録可能である。また、手続き処理保持バッファメモリ114は、中央演算処理装置105が実行するプログラムによって読み書き可能であり、また中央演算処理装置105が事前に備えている、ある命令を実行することによりフラッシュメモリ102の事前に定義された領域から一連の手続きを読み出し、手続き処理保持バッファメモリ114に書き込むことが可能である。更に、手続き処理保持バッファメモリ114は、音声処理装置11又は映像処理装置10から中央演算処理装置105に割り込みがかかると、拡張命令制御ブロック113がかけられた割り込みに応じて適切な内容をフラッシュメモリ102の事前に定義された領域から読み出す。
The procedure processing
図2は、レジスタブロック112の構造を表記した図面である。本実施形態のレジスタブロック112は、8個の記録領域を持つ。それぞれの記録領域は、a,b,c,d,e,f,g,hと名前がつけられており、名前を指定することにより特定が可能である。また、それぞれの記録領域は常時読み出し可能である。
FIG. 2 is a diagram showing the structure of the
図3は、本実施形態にて適用される命令セットのうち本発明の説明に必要な命令を示している。次に、各行の内容をそれぞれ説明する。 FIG. 3 shows instructions necessary for explaining the present invention in the instruction set applied in this embodiment. Next, the contents of each line will be described.
第1行に示されている内容は、演算命令に関するものである。図2に記載のレジスタブロック112の任意の記録領域の中から1つを選んでREG1,REG2,REG3を選択し、加算、減算、乗算を実施可能である。REG1,REG2,REG3は、図2で示された8個の記録領域のいずれでも指定可能であり、a,b,c,d,e,f,g,hのいずれかが命令により適用される。すなわち、a+b=>cという命令の場合、記録領域aと記録領域bとの加算の結果を記録領域cに書き込む。
The contents shown in the first line relate to the operation instruction. It is possible to select one of the arbitrary recording areas of the
第2行に示されている内容は、ストア命令に関するものである。図2に記載のレジスタブロック112の任意の記録領域の中から1つを選んでREG1,REG2を選択し、REG1に指定されている図2で示された8個の記録領域のいずれかの内容を、REG2で指定された図2で示された8個の記録領域のいずれかに保管されているアドレスの示すメモリの領域にデータをストアする。
The contents shown in the second line relate to the store instruction. 2. Select one of the arbitrary recording areas of the
第3行に示されている内容は、ロード命令に関するものである。図2に記載のレジスタブロック112の任意の記録領域の中から1つを選んでREG1,REG2を選択し、REG1で指定された図2で示された8個の記録領域のいずれかに保管されているアドレスにあるデータを、REG2に指定されている図2で示された8個の記録領域のいずれかにロードする。
The contents shown in the third line relate to the load instruction. REG1 and REG2 are selected by selecting one of the arbitrary recording areas of the
第4行に示されている内容は、0書き込み命令に関するものである。この命令は、ストア命令と振る舞いが似ているが、書き込む値が固定値の0であるところが異なる。すなわち、図2に記載のレジスタブロック112の任意の記録領域の中から1つを選んでREG1を選択し、REG1で指定された図2で示された8個の記録領域のいずれかに保管されているアドレスに、0を書き込む。
The contents shown in the fourth line relate to the 0 write instruction. This instruction is similar in behavior to the store instruction, except that the value to be written is a fixed value of 0. That is, one of the arbitrary recording areas of the
図4は、本実施形態における手続き処理保持バッファメモリ114の内容を示している。本実施形態においては手続き処理保持バッファメモリ114にて、2つの拡張命令が定義可能である。図4では、拡張命令EXT_1として、まずb*c=>bを実行し、次にa+b=>b、最後にb−d=>aを実行する一連の手続きが規定されている。また、拡張命令EXT_2として、まずa+a=>aを実行し、次にa+b=>a、最後にa+c=>aを実行する一連の手続きが規定されている。
FIG. 4 shows the contents of the procedure processing holding
EXT_1命令を実行すると、手続き処理保持バッファメモリ114に規定されている順番に命令が実行され、結果的に(a+(b*c))−dの結果がaに代入されることになる。同様にEXT_2命令を実行すると、a+a+b+cの結果がaに代入されることになる。よって、一度の拡張命令の実行により、通常単一の命令ではこなせない複雑な処理が実行されることになる。
When the EXT_1 instruction is executed, the instructions are executed in the order defined in the procedure processing holding
なお、この手続き処理保持バッファメモリ114の内容自体は、中央演算処理装置105によって書き込みが可能である。
The contents of the procedure processing holding
図5は、拡張命令制御ブロック113の内部構造を示したものである。拡張命令制御ブロック113は、割り込み信号制御ブロック201と、音声処理拡張命令制御ブロック202と、映像処理拡張命令制御ブロック203と、拡張命令運営ブロック204と、拡張命令デコードブロック205とからなる。
FIG. 5 shows the internal structure of the extended
音声処理拡張命令制御ブロック202及び映像処理拡張命令制御ブロック203には、設定レジスタを備えている。この設定レジスタが、図1に係る説明にて後ほど説明するとした設定レジスタである。
The audio processing extended
音声処理拡張命令制御ブロック202では、音声処理装置11からの割り込みが発生したときに利用したい拡張命令の内容が存在しているアドレスの先頭アドレスが記録される設定レジスタを備えている。本実施形態においては2つの拡張命令をサポートしているため、2つの先頭アドレスを備えている。
The voice processing extended
映像処理拡張命令制御ブロック203においては、音声処理拡張命令制御ブロック202と同様に映像処理装置10からの割り込みが発生した時に利用したい拡張命令の内容が存在しているアドレスの先頭アドレスが記録される設定レジスタを備え、音声処理拡張命令制御ブロック202と同様の動作を行う。
In the video processing extension
拡張命令デコードブロック205は、拡張命令であるEXT_1又はEXT_2が発行された場合に、拡張命令運営ブロック204に通知する。
The extension
拡張命令運営ブロック204は、拡張命令が発行されると、手続き処理保持バッファメモリ114から命令を読み出し、命令読み出しブロック106に送り込む。
When the extended instruction is issued, the extended
割り込み信号制御ブロック201には、割り込み信号が音声処理装置11と映像処理装置10からそれぞれ1本ずつ、合計2本接続されており、割り込み信号制御ブロック201は、発生した割り込み要因が何であるかを、拡張命令運営ブロック204に通知する。
Two interrupt signals are connected to the interrupt
拡張命令運営ブロック204は、割り込みを通知されると要因にあわせた、図6を用いて後に説明するDEFINE_EXT1命令又はDEFINE_EXT2命令を発行し、拡張命令を割り込み要因にあわせた定義に変更する。
When notified of an interrupt, the extended
図6は、本実施形態の中央演算処理装置105の備える拡張命令定義のための命令である。DEFINE_EXT1命令とDEFINE_EXT2命令とが存在し、TARGETとして拡張命令制御ブロック113の備える音声処理拡張命令制御ブロック202又は映像処理拡張命令制御ブロック203の備える設定レジスタを指定可能である。
FIG. 6 is an instruction for defining an extended instruction included in the central processing unit 105 of this embodiment. The DEFINE_EXT1 instruction and the DEFINE_EXT2 instruction exist, and a setting register provided in the audio processing extension
例えば、DEFINE_EXT1を実行すると、TARGETとして指定されているアドレスから順番にEXT1命令の定義を読み出し、拡張命令EXT1を定義する。これにより、単一の命令で拡張命令の定義を実施が可能となっている。なお、DEFINE_EXT2は、拡張命令EXT2が対象である以外はDEFINE_EXT1と同様である。 For example, when DEFINE_EXT1 is executed, the definition of the EXT1 instruction is read in order from the address specified as TARGET, and the extension instruction EXT1 is defined. As a result, it is possible to define an extended instruction with a single instruction. DEFINE_EXT2 is the same as DEFINE_EXT1 except that the extension instruction EXT2 is targeted.
上記のように構成される演算処理装置において、電源投入による起動からビデオ再生までを例を挙げて動作を説明する。 The operation of the arithmetic processing unit configured as described above will be described with reference to an example from startup by turning on the power to video playback.
まず、中央演算処理装置105は、電源投入されると、フラッシュメモリ102から起動プログラムを読み出す。起動プログラムの中では、音声処理装置11と映像処理装置10や、中央演算処理装置105の初期化が行われ、更に手続き処理保持バッファメモリ114に図4に示されている命令を定義する。電源投入直後に表示される起動画像に対し画像処理を実施する際に、この拡張命令を利用してより少ない命令で画像処理を実施することが可能である。
First, the central processing unit 105 reads a startup program from the
起動プログラムが実行完了すると、中央演算処理装置105はビデオデータを読み出し、映像処理装置10及び音声処理装置11にビデオデータに含まれる映像データ及び音声データをそれぞれ書き込み、ビデオを再生する。ビデオデータは、あるアルゴリズムにより情報圧縮されており、再生には情報解凍処理を必要とする。
When the start program is completed, the central processing unit 105 reads the video data, writes the video data and audio data included in the video data to the
ビデオデータは、事前に決定されている規格により定義されているパケット構造を持ち、多数のパケットの集合体として成り立っている。またパケットは、ヘッダと映像データ又は音声データとからなる。ヘッダには、映像データ又は音声データを情報解凍する際に必要となる情報が記述されている。 Video data has a packet structure defined by a predetermined standard, and is formed as an aggregate of a large number of packets. The packet includes a header and video data or audio data. In the header, information necessary for decompressing information of video data or audio data is described.
この際、映像処理装置10及び音声処理装置11はそれぞれ一定の処理を完了すると割り込みを中央演算処理装置105に通知する。中央演算処理装置105は、割り込みがどの装置からの割り込み信号かを判別し、その割り込みを発生した要因に合わせた処理を実行する。
At this time, the
仮に、映像処理装置10が割り込みを発生した場合、中央演算処理装置105は映像処理装置10に対し次のパケットのヘッダを書き込む必要がある。その際、1つの命令で、フラッシュメモリ102から中央演算処理装置105に3回ロード処理をする命令と、中央演算処理装置105から映像処理装置10に対し3回ストアする命令とがあると、都合2命令で3ワード分のパケットのヘッダの書き込み処理が完了するため好ましい。そこで、拡張命令制御ブロック113に対し、フラッシュメモリ102内部の3回ロードする拡張命令と3回ストアする拡張命令との存在するアドレスを拡張命令制御ブロック113中の映像処理拡張命令制御ブロック203に含まれる設定レジスタに書き込み、映像処理装置10からの割り込み信号が通知された場合に自動的に拡張命令を切り替えるようにする。
If the
音声処理装置11からの割り込みに関しても同様に、適した拡張命令を定義することが可能である。
Similarly, an appropriate extension instruction can be defined for an interrupt from the
このように構成することにより、少ない命令数で所望の処理を実行できるため、フラッシュメモリ102へのアクセス回数が減少し、より少ない電力消費でより高速に処理が実行可能である。また、命令数を減少できるためフラッシュメモリ102中のプログラムサイズを減少させることが可能である。
With this configuration, desired processing can be executed with a small number of instructions, so that the number of accesses to the
《第2の実施形態》
図7は、本発明を適用した中央演算処理装置を含むシステムLSIを適用した画像音声処理システムである。本システムは、システムLSI101とフラッシュメモリ102とモニタ103とスピーカ104とからなり、フラッシュメモリ102に予め書き込まれている音声付映像データを再生するビデオ再生装置である。
<< Second Embodiment >>
FIG. 7 shows an audio / video processing system to which a system LSI including a central processing unit to which the present invention is applied is applied. This system is a video playback device that includes a system LSI 101, a
第1の実施形態とは、拡張命令制御ブロック113及び命令実行ブロック108の内部構造と、手続き処理保持バッファメモリ114ではなく、演算処理内容定義メモリ115を備えるところが異なる。
This embodiment is different from the first embodiment in that the internal structure of the extended
演算処理内容定義メモリ115は、中央演算処理装置105が実行するプログラムによって読み書き可能であり、また中央演算処理装置105が事前に備えるある命令を実行することによりフラッシュメモリ102の事前に定義された領域から一連の手続きを読み出し、演算処理内容定義メモリ115に書き込むことが可能である。
The arithmetic processing
図8は、命令実行ブロック108の内部構造を示す。命令実行ブロック108は、前段コネクションスイッチ301、後段コネクションスイッチ302、除算器303、乗算器304、シフタ305、ALU306、接続デコード装置307からなる。
FIG. 8 shows the internal structure of the
前段コネクションスイッチ301は、レジスタや、セレクタからの出力された処理対象データを、次の段に存在するALU306等の実行ユニット群に接続デコード装置307からの指示通りに接続する。
The
後段コネクションスイッチ302は、前の段に存在するALU306等の実行ユニット群の全ての出力からレジスタ書き込みブロック109に出力するもの、再度前段コネクションスイッチ301へ戻すもの、又はいずれへも出力しないものの選択を行い、接続デコード装置307からの指示通りに接続する。
The
除算器303は、除算を行う実行ユニットである。乗算器304は、乗算を行う実行ユニットである。シフタ305は、シフト演算を行う実行ユニットである。ALU306は、除算、乗算、シフト演算を除く中央演算処理装置105の実行にかかわる機能を担う実行ユニットである。
The
接続デコード装置307は、命令判断ブロック107及び拡張命令制御ブロック113からの命令発行をデコードし、前段コネクションスイッチ301及び後段コネクションスイッチ302の接続を決定する。そのため、それぞれの実行ユニットを通る順番を自由に定義可能である。つまり、実行ユニットの組み合わせにて最適な命令を構築可能である。
The
図9を用いて、本実施形態における拡張命令制御ブロック113を説明する。図5で示された第1の実施形態との違いは、手続き処理保持バッファメモリ114ではなく、演算処理内容定義メモリ115が接続されている点である。また、拡張命令が、一連の手続きを定義するものではなく、命令実行ブロック108における接続情報であり、拡張命令実行時に接続情報を命令実行ブロック108に供給する。これらの点を除くと、割り込み時の処理等の振る舞いは第1の実施形態と変わらない。
The extended
以上のように構成することにより、実行したい処理に応じて命令の最適化が可能になり、より高い処理能力を実現可能である。また、複数の演算処理をまとめて実施可能であるため、より少ない命令で所望の処理が可能である。しかも、フラッシュメモリ102へのアクセス回数が減少し、より少ない電力消費でより高速に処理が実行可能である。また、命令数を減少できるためフラッシュメモリ102中のプログラムサイズを減少させることが可能である。
By configuring as described above, it is possible to optimize instructions according to the processing desired to be executed, and higher processing capability can be realized. In addition, since a plurality of arithmetic processes can be performed together, a desired process can be performed with fewer instructions. In addition, the number of accesses to the
《第3の実施形態》
図10は、本発明を適用した中央演算処理装置を含むシステムLSIを適用した画像音声処理システムである。本システムは、システムLSI101とフラッシュメモリ102とモニタ103とスピーカ104とからなり、フラッシュメモリ102に予め書き込まれている音声付映像データを再生するビデオ再生装置である。
<< Third Embodiment >>
FIG. 10 shows an audio / video processing system to which a system LSI including a central processing unit to which the present invention is applied is applied. This system is a video playback device that includes a system LSI 101, a
本システムの特徴は、第1の実施形態と第2の実施形態とを組み合わせたものである。すなわち、図10では第1の実施形態である図1の構成に加えて、更に演算処理内容定義メモリ115を備える。
The feature of this system is a combination of the first embodiment and the second embodiment. That is, FIG. 10 further includes an arithmetic processing
本実施形態では、第1の実施形態で用いられている拡張命令と、第2の実施形態で用いられている拡張命令とが定義可能である。 In the present embodiment, the extension instruction used in the first embodiment and the extension instruction used in the second embodiment can be defined.
第1の実施形態で用いられている拡張命令をEXT_1,EXT_2とし、第2の実施形態で用いられている拡張命令をEXT_a,EXT_bと本実施形態では定義する。すなわち、一連の手続きを呼び出す拡張命令がEXT_1,EXT_2であり、命令実行ブロック108の実行内容を定義する拡張命令がEXT_a,EXT_bである。
The extension instructions used in the first embodiment are defined as EXT_1 and EXT_2, and the extension instructions used in the second embodiment are defined as EXT_a and EXT_b in this embodiment. That is, the extension instructions that call a series of procedures are EXT_1 and EXT_2, and the extension instructions that define the execution contents of the
EXT_1及びEXT_2の定義内容は手続き処理保持バッファメモリ114に収められており、EXT_a及びEXT_bの定義内容は演算処理内容定義メモリ115に収められている。EXT_1やEXT_2にて定義される一連の手続きにて、EXT_a又はEXT_bの実行を含めることが可能である。
The definition contents of EXT_1 and EXT_2 are stored in the procedure processing holding
ゆえに、第1及び第2の実施形態で説明されている内容よりも更に少ない命令数で所望の処理を実行できるため、フラッシュメモリ102へのアクセス回数がより減少し、少ない電力消費でより高速に処理が実行可能である。
Therefore, since the desired processing can be executed with a smaller number of instructions than the contents described in the first and second embodiments, the number of accesses to the
以上説明してきたとおり、本発明は、プロセッサを搭載したシステム又はシステムLSIに適しており、特に携帯型電子機器に最適である。 As described above, the present invention is suitable for a system or system LSI equipped with a processor, and is particularly suitable for a portable electronic device.
10 映像処理装置
11 音声処理装置
101 システムLSI
102 フラッシュメモリ
103 モニタ
104 スピーカ
105 中央演算処理装置
106 命令読み出しブロック
107 命令判断ブロック
108 命令実行ブロック
109 レジスタ書き込みブロック
110 レジスタロードストアブロック
111 バスインタフェースブロック
112 レジスタブロック
113 拡張命令制御ブロック
114 手続き処理保持バッファメモリ
115 演算処理内容定義メモリ
201 割り込み信号制御ブロック
202 音声処理拡張命令制御ブロック
203 映像処理拡張命令制御ブロック
204 拡張命令運営ブロック
205 拡張命令デコードブロック
301 前段コネクションスイッチ
302 後段コネクションスイッチ
303 除算器
304 乗算器
305 シフタ
306 ALU
307 接続デコード装置
10
102
307 Connection decoding device
Claims (13)
前記中央演算処理装置に対する命令の集合であるプログラムを収めているメモリと、
前記中央演算処理装置の命令を動作中に新たに定義するための定義手段と、
前記中央演算処理装置の中で事前に定義されている命令を複数組み合わせ一連の手続きとして記録できる命令群定義メモリとを備え、
前記定義手段にて新たに定義された命令を実行することにより、前記命令群定義メモリに記録されている一連の手続きを実行することを特徴とする演算処理装置。 A central processing unit that executes instructions such as operations and judgments;
A memory containing a program that is a set of instructions for the central processing unit;
Definition means for newly defining an instruction of the central processing unit during operation;
An instruction group definition memory capable of recording a plurality of combinations of instructions defined in advance in the central processing unit as a series of procedures;
An arithmetic processing apparatus, comprising: executing a series of procedures recorded in the instruction group definition memory by executing an instruction newly defined by the defining means.
前記一連の手続きを複数種類分だけ前記命令群定義メモリに収めることが可能であることを特徴とする演算処理装置。 The arithmetic processing device according to claim 1,
An arithmetic processing unit characterized in that a plurality of types of the series of procedures can be stored in the instruction group definition memory.
前記一連の手続きを前記命令群定義メモリに前記中央演算処理装置自身が書き込むことを特徴とする演算処理装置。 In the arithmetic processing unit according to claim 1 or 2,
The arithmetic processing unit, wherein the central processing unit itself writes the series of procedures in the instruction group definition memory.
前記一連の手続きは、周辺装置からの割り込み信号を起点として事前に定義されたアドレスから命令最適化装置により前記命令群定義メモリに書き込まれることを特徴とする演算処理装置。 In the arithmetic processing unit according to claim 1 or 2,
The arithmetic processing unit, wherein the series of procedures is written into the instruction group definition memory by an instruction optimization unit from an address defined in advance with an interrupt signal from a peripheral device as a starting point.
前記命令群定義メモリの内容を、単一の命令を用いて定義可能であることを特徴とする演算処理装置。 In the arithmetic processing unit according to any one of claims 1 to 4,
An arithmetic processing unit characterized in that the contents of the instruction group definition memory can be defined using a single instruction.
前記中央演算処理装置に対する命令の集合であるプログラムを収めているメモリと、
前記中央演算処理装置の命令を動作中に新たに定義するための定義手段と、
前記新たに定義された命令の演算処理内容を記録する演算処理内容定義メモリとを備え、
前記定義手段にて新たに定義された命令を実行することにより、前記中央演算処理装置内に存在する演算処理回路を組み合わせて所望の演算処理を実行することを特徴とする演算処理装置。 A central processing unit that executes instructions such as operations and judgments;
A memory containing a program that is a set of instructions for the central processing unit;
Definition means for newly defining an instruction of the central processing unit during operation;
An arithmetic processing content definition memory for recording the arithmetic processing content of the newly defined instruction,
An arithmetic processing apparatus that executes a desired arithmetic process by combining arithmetic processing circuits existing in the central processing unit by executing an instruction newly defined by the defining means.
前記演算処理内容を複数種類分だけ前記演算処理内容定義メモリに収めることが可能であることを特徴とする演算処理装置。 The arithmetic processing unit according to claim 6, wherein
An arithmetic processing apparatus characterized in that a plurality of types of arithmetic processing contents can be stored in the arithmetic processing content definition memory.
前記演算処理内容を前記演算処理内容定義メモリに前記中央演算処理装置自身が書き込むことを特徴とする演算処理装置。 In the arithmetic processing unit according to claim 6 or 7,
The arithmetic processing unit, wherein the central processing unit itself writes the arithmetic processing content in the arithmetic processing content definition memory.
前記演算処理内容は、周辺装置からの割り込み信号を起点として事前に定義されたアドレスから命令最適化装置により前記演算処理内容定義メモリに書き込まれることを特徴とする演算処理装置。 In the arithmetic processing unit according to claim 6 or 7,
The arithmetic processing device is characterized in that the arithmetic processing content is written into the arithmetic processing content definition memory by an instruction optimization device from an address defined in advance with an interrupt signal from a peripheral device as a starting point.
前記演算処理内容定義メモリの内容を、単一の命令を用いて定義可能であることを特徴とする演算処理装置。 In the arithmetic processing unit according to any one of claims 6 to 9,
An arithmetic processing device characterized in that the contents of the arithmetic processing content definition memory can be defined using a single instruction.
前記中央演算処理装置に対する命令の集合であるプログラムを収めているメモリと、
前記中央演算処理装置の命令を動作中に新たに定義するための定義手段と、
新たに定義された命令の演算処理内容を記録する演算処理内容定義メモリと、
命令を複数組み合わせ一連の手続きとして記録できる命令群定義メモリとを備え、
前記定義手段にて新たに定義された命令を実行することにより、前記命令群定義メモリに記録されている一連の手続きを実行し、また前記命令群定義メモリに記録されているメモリ中に新たに定義された演算処理内容であった場合は前記中央演算処理装置内の演算処理回路を組み合わせて所望の演算処理を実行することを特徴とする演算処理装置。 A central processing unit that executes instructions such as operations and judgments;
A memory containing a program that is a set of instructions for the central processing unit;
Definition means for newly defining an instruction of the central processing unit during operation;
An arithmetic processing content definition memory for recording the arithmetic processing content of the newly defined instruction;
It is equipped with an instruction group definition memory that can record multiple instructions as a series of procedures,
By executing the instruction newly defined by the definition means, a series of procedures recorded in the instruction group definition memory is executed, and a new one is newly stored in the memory recorded in the instruction group definition memory. An arithmetic processing device characterized in that, when the content of the arithmetic processing is defined, a desired arithmetic processing is executed by combining arithmetic processing circuits in the central processing unit.
前記演算処理内容定義メモリと前記命令群定義メモリとの少なくとも一方の内容を、単一の命令を用いて定義可能であることを特徴とする演算処理装置。 The arithmetic processing apparatus according to claim 11,
An arithmetic processing device characterized in that the contents of at least one of the arithmetic processing content definition memory and the instruction group definition memory can be defined using a single instruction.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006314169A JP2008129851A (en) | 2006-11-21 | 2006-11-21 | Processing unit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006314169A JP2008129851A (en) | 2006-11-21 | 2006-11-21 | Processing unit |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008129851A true JP2008129851A (en) | 2008-06-05 |
Family
ID=39555600
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006314169A Pending JP2008129851A (en) | 2006-11-21 | 2006-11-21 | Processing unit |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008129851A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013045145A (en) * | 2011-08-22 | 2013-03-04 | Fujitsu Semiconductor Ltd | Processor |
JP2014056446A (en) * | 2012-09-12 | 2014-03-27 | Hitachi Information & Telecommunication Engineering Ltd | Microprocessor, and compile processing method of program |
-
2006
- 2006-11-21 JP JP2006314169A patent/JP2008129851A/en active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013045145A (en) * | 2011-08-22 | 2013-03-04 | Fujitsu Semiconductor Ltd | Processor |
US9411594B2 (en) | 2011-08-22 | 2016-08-09 | Cypress Semiconductor Corporation | Clock data recovery circuit and clock data recovery method |
JP2014056446A (en) * | 2012-09-12 | 2014-03-27 | Hitachi Information & Telecommunication Engineering Ltd | Microprocessor, and compile processing method of program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9043806B2 (en) | Information processing device and task switching method | |
JP4846493B2 (en) | Debug system and debug circuit | |
JP6258525B2 (en) | Reconfigurable fetch pipeline | |
JP2007035010A (en) | Method for initializing instance and executing computer program by loading operation system core program from high-speed data access memory | |
JP3943277B2 (en) | Microcomputer and electronic equipment | |
JP2008129851A (en) | Processing unit | |
JP5096923B2 (en) | Multi-thread processor with dynamically reconfigurable logic | |
JP4471947B2 (en) | Data processing apparatus and data processing method | |
JP2011113257A (en) | Information processor and method for starting information processor | |
JP2005182538A (en) | Data transfer device | |
KR20100050098A (en) | Image processing apparatus and control method thereof | |
JP2006209527A (en) | Computer system | |
JP2011138188A (en) | Data processing apparatus, and method of setting parameter | |
WO2004017200A1 (en) | Information processing method and program and recording medium for implementing the method | |
JP2008065549A (en) | Microcomputer, information processing system, electronic equipment and start control method for microcomputer | |
WO2010029682A1 (en) | Information processing device | |
KR20180080463A (en) | Semiconductor device and method for operating the same | |
JP2011118508A (en) | Multiprocessor system and multiprocessor control method | |
JP2000040028A (en) | System for extending dsp program area by cpu control | |
TWI772438B (en) | System and method for dynamic buffer sizing in a computing device | |
JP3753368B2 (en) | Data processor and data processing system | |
JP3987476B2 (en) | Integrated circuit and electronic device including the circuit | |
JP5352811B2 (en) | Information processing device | |
JP2004145446A (en) | Storage device and its control method | |
JP2005056033A (en) | Register circuit |