"読み出された命令をデコードし、デコード結果を基に処理データが格納されているレジスタを指定する第1の指定信号を出力するデコード部と、前記デコード部での前記デコード結果を基に発行された命令に従って、処理データを用いて当該命令に基づく処理を実行する処理部と、前記デコード部より出力された前記第1の指定信号に応じて、第2の指定信号を制御し出力する指定信号制御部と、処理データを保持する複数のレジスタを有するとともに、前記指定信号制御部より出力された前記第2の指定信号を受けて、当該第2の指定信号で指定されたレジスタに格納されている処理データを出力するレジスタファイルとを備え、前記指定信号制御部は、前記レジスタファイルから前記処理部への処理データの供給が不要なサイクルでは、出力する前記第2の指定信号を維持することを特徴とするプロセッサ。前記指定信号制御部は、出力した前記第2の指定信号を保持する保持部と、前記保持部に保持した前記第2の指定信号及び前記デコード部より出力された前記第1の指定信号が入力され、当該前記第2の指定信号又は当該第1の指定信号を選択し前記レジスタファイルに前記第2の指定信号として出力する信号選択部とを有することを特徴とする請求項1記載のプロセッサ。前記処理部での処理結果をフォワーディングするフォワーディング部を備え、前記フォワーディング部によるフォワーディングで前記処理部へ処理データが供給される場合には、前記指定信号制御部は、出力する前記第2の指定信号を維持することを特徴とする請求項1又は2記載のプロセッサ。前記指定信号制御部は、前記処理部に対して命令が発行されないサイクルでは、出力する前記第2の指定信号を維持することを特徴とする請求項1~3の何れか1項に記載のプロセッサ。前記プロセッサは、読み出された命令をパイプライン処理するとともに、命令デコードステージにて前記レジスタファイルからの処理データの読み出し動作を行うプロセッサであり、複数のサイクルに渡って命令に係る処理が実行されるマルチサイクル命令を実行するとき、前記処理部に供給する処理データがフォワーディングにより供給される場合に、前記指定信号制御部は、1サイクル目では入力される前記第1の指定信号に合わせて出力する前記第2の指定信号を変化させ、2サイクル目以降では出力する前記第2の指定信号を維持することを特徴とする請求項1~4の何れか1項に記載のプロセッサ。前記特許文献1、2に提案されている技術では、レジスタファイルへのデータの書き込み動作を抑止することで消費電力の低減を図っているが、レジスタファイルからのデータの読み出し動作の点では消費電力を低減していなかった。例えば、プロセッサでの命令の実行において、命令のソースデータがフォワーディングにより供給される場合には、レジスタファイルから読み出されたデータを使用しないので、その命令のソースデータに係るレジスタファイルからの読み出しは無駄である。本発明は、レジスタファイルからの読み出し動作に係る電力消費を抑制してプロセッサにおける消費電力を低減することを目的とする。本発明の一観点によれば、読み出された命令をデコードし、デコード結果を基に処理データが格納されているレジスタを指定する第1の指定信号を出力するデコード部と、デコード結果を基に発行された命令に従って処理データを用いて処理を実行する処理部と、デコード部からの第1の指定信号に応じて、第2の指定信号を制御し出力する指定信号制御部と、複数のレジスタを有し、指定信号制御部からの第2の指定信号を受けて、第2の指定信号で指定されたレジスタに格納されている処理データを出力するレジスタファイルとを備えるプロセッサが提供される。指定信号制御部は、レジスタファイルから処理部への処理データの供給が不要なサイクルでは、出力する第2の指定信号を維持する。開示のプロセッサは、レジスタファイルからのデータ供給が不要なサイクルにおいて、レジスタファイルからのデータ読み出しに係る信号が変化することを抑止する。したがって、レジスタファイルからの不要な読み出し動作によるレジスタファイルの無駄な電力消費を抑制し、プロセッサにおける消費電力を低減することができる。本発明の実施形態を図面に基づいて説明する。以下に説明する各実施形態によるプロセッサは、レジスタファイルからのデータオペランドの供給が不要なサイクルでは、レジスタファイルからのデータ読み出しに係る信号の変化を抑止することにより、レジスタファイルの無駄な電力消費を抑制する。プロセッサにおいてレジスタファイルからのデータの供給が不要なサイクルの一例としては、例えば命令のソースデータソースオペランドがフォワーディングにより供給される場合がある。先行する命令の演算結果がフォワーディングにより後続の命令のソースデータとして供給されるときには、レジスタファイルから読み出されるデータオペランドは後続の命令のソースデータとして使用されない。つまり、後続の命令のソースデータがフォワーディングにより供給される場合には、そのソースデータを供給するためにレジスタファイルからのデータ読み出しを行うことは無駄であり、レジスタファイルからの読み出し動作を行う必要がない。したがって、命令のソースデータがフォワーディングにより供給される場合に、レジスタファイルからのデータ読み出しに係る信号変化を抑止することで消費電力の低減が図れる。また、プロセッサにおいてレジスタファイルからのデータの供給が不要なサイクルの他の例としては、例えば命令が発行されないサイクルがある。命令が発行されなければ有意な演算処理等そのものが実行されることがないので、レジスタファイルからのデータの読み出し動作を行う必要がないとともに、そのときレジスタファイルからのデータ読み出しに係る信号が変化すると無駄な電力消費が生じることになる。命令が発行されないサイクルにおいては、レジスタファイルからのデータ読み出しに係る信号変化を抑止することで消費電力が増加することが防げる。プロセッサにおいてレジスタファイルからのデータの供給が不要なサイクルとして、命令のソースデータがフォワーディングにより供給される場合や命令が発行されないサイクルを例示したが、これらは一例であって、これに限定されるものではない。なお、以下では、先行する命令と後続の命令との間に真の依存関係RAW<readafterwrite>ハザードがあり、かつ先行する命令の演算結果がフォワーディングにより後続の命令のソースデータソースオペランドとして供給されるときにレジスタファイルからのデータ読み出しに係る信号変化を抑止する場合を例に各実施形態によるプロセッサについて説明する。第1の実施形態本発明の第1の実施形態について説明する。図1は、第1の実施形態によるプロセッサの構成例を示す図である。図1において、IFは命令フェッチステージ、IDは命令デコードステージ、RRはレジスタ読み出しステージ、EXは演算実行ステージ、MAはメモリアクセスステージ、WBはライトバックステージである。図1に示すプロセッサは、命令デコードステージIDとレジスタ読み出しステージRRとが分離した6ステージのパイプライン構成のスカラプロセッサである。命令フェッチステージIFでは、アドレス指定によって命令バッファ11から命令が読み出される。命令バッファ11には、プロセッサにてプログラムに応じた処理を実行するための命令列が格納されている。命令デコードステージIDでは、命令フェッチステージIFにおいて読み出されたフェッチされた命令がデコードされる。命令デコードステージIDにおいて、デコード回路21は、命令フェッチステージIFにおいて読み出された命令からオペランドのフィールド等を分離する。また、命令デコードステージIDにおいて、発行制御回路22は、当該命令が発行可能であるか否か、先行する命令との依存関係を判定する処理や、フォワーディングを行うか否かを判定する処理等を行う。命令デコードステージIDにおけるデコード回路21や発行制御回路22によるデコード結果等に基づいて制御情報23が生成される。レジスタ読み出しステージRRでは、命令デコードステージIDにおいて生成された制御情報23に応じてレジスタファイル33に対する読み出し動作が行われる。レジスタ読み出しステージRRにおいて、指定信号制御回路31、32は、制御情報23を基に発行される読み出しオペランド指定信号ROPRA及びオペランド制御信号OPRCが入力される。指定信号制御回路31、32は、オペランド制御信号OPRCに応じて、入力された読み出しオペランド指定信号ROPRA、又は前のサイクルでもしくは先行する命令でのレジスタ読み出しステージRRにおいてレジスタファイル33に出力した読み出しオペランド指定信号ROPRBを、現命令における読み出しオペランド指定信号ROPRBとして出力する。指定信号制御回路31は、例えばマルチプレクサ回路41及びレジスタ42を有する。指定信号制御回路31において、マルチプレクサ回路41は、読み出しオペランド指定信号ROPRA及びレジスタ42の出力が入力されるとともに、制御信号としてオペランド制御信号OPRCが入力される。マルチプレクサ回路41は、読み出しオペランド指定信号ROPRA又はレジスタ42の出力の一方をオペランド制御信号OPRCに応じて出力し、その出力が読み出しオペランド指定信号ROPRBとして指定信号制御回路31より出力される。また、マルチプレクサ回路41の出力は、先行する命令において出力した読み出しオペランド指定信号ROPRBとしてレジスタ42によって保持され、マルチプレクサ回路41に供給される。同様に、指定信号制御回路32は、例えばマルチプレクサ回路43及びレジスタ44を有する。指定信号制御回路32におけるマルチプレクサ回路43及びレジスタ44は、指定信号制御回路31におけるマルチプレクサ回路41及びレジスタ42にそれぞれ対応する。また、指定信号制御回路32における動作と指定信号制御回路31における動作とは同様であるので、指定信号制御回路32に係る説明は省略する。なお、指定信号制御回路31、32は、オペランド制御信号OPRCに応じて、読み出しオペランド指定信号ROPRA又は前のサイクル先行する命令で出力した読み出しオペランド指定信号ROPRBを、現命令における読み出しオペランド指定信号ROPRBとして選択的に出力できれば良く、図1に示した構成に限定されるものではない。指定信号制御回路31、32から出力された読み出しオペランド指定信号ROPRBは、レジスタファイル33に入力される。そして、レジスタファイル33から読み出しオペランド指定信号ROPRBで指定されたレジスタに格納されているデータが読み出され出力される。ここで、レジスタファイル33は、複数のレジスタを有し、命令に応じた処理の実行に際して供給されるソースデータや処理結果である演算結果等を保持している。レジスタファイル33から出力されたデータは、マルチプレクサ回路34に入力される。また、マルチプレクサ回路34には、フォワーディング回路40より出力されたデータが入力されるとともに、オペランド制御信号OPRCが入力されている。マルチプレクサ回路34に入力されたレジスタファイル33からのデータやフォワーディング回路40からのデータは、オペランド制御信号OPRCに応じて選択されソースデータソースオペランド35として演算器36等に入力される。ここで、フォワーディング回路40は、フォワーディングによるデータ供給を行うための回路である。フォワーディング回路40は、1又は複数の先行する命令1又は複数サイクル前に実行された命令での演算実行ステージEX、メモリアクセスステージMA、及びライトバックステージWBに係る処理結果演算結果37、39等が入力される。フォワーディング回路40は、入力された各ステージに係る処理結果をマルチプレクサ回路34にフォワーディングデータとして出力する。演算実行ステージEXでは、命令によって指定された演算処理が演算器36により実行される。演算器36は、制御情報24を基に発行される演算器制御信号ALUCが入力され、ソースデータ35を用いて演算器制御信号ALUCに応じた演算処理を実行する。また、メモリアクセスステージMAでは、メモリアクセス回路38により図示しないデータメモリに対するアクセスデータのロード/ストアが行われる。さらに、ライトバックステージWBでは、演算実行ステージEXやメモリアクセスステージMAでの演算結果37、39演算器の演算結果やメモリから読み出したデータがレジスタファイル33の書き込みオペランドとして指定されたレジスタに書き込まれる。なお、制御情報24は、制御情報23と同様のものであり、図示していないがメモリアクセスステージMA及びライトバックステージWBにおいても同様の制御情報に基づいて各ステージでの処理が実行される。以下に、前述したレジスタ読み出しステージRRにおける動作を、命令のソースデータソースオペランドをレジスタファイル33から読み出して供給する場合、及びフォワーディングにより供給する場合のそれぞれについて説明する。ここで、命令のソースデータとして、レジスタファイル33から読み出したデータを供給するか、フォワーディングにより供給するかは、オペランド制御信号OPRCによって制御される。<レジスタファイル33から読み出したデータを命令のソースデータとする場合>オペランド制御信号OPRCにより、レジスタファイル33からのデータを命令のソースデータとして供給することが示される。このとき、指定信号制御回路31、32は、オペランド制御信号OPRCに従って、入力された読み出しオペランド指定信号ROPRAを現命令における読み出しオペランド指定信号ROPRBとして出力する。すなわち、図1に例示した指定信号制御回路31、32において、マルチプレクサ回路41、43は、オペランド制御信号OPRCに従い、読み出しオペランド指定信号ROPRAを選択して出力する。これにより、レジスタファイル33に入力される読み出しオペランド指定信号ROPRBが読み出しオペランド指定信号ROPRAに応じて変化し、読み出しオペランド指定信号ROPRAが指定するレジスタのデータが読み出されレジスタファイル33より出力される。そして、マルチプレクサ回路34は、オペランド制御信号OPRCに従って、レジスタファイル33から出力されたデータを選択し、ソースデータ35として出力する。<フォワーディングにより命令のソースデータを供給する場合>オペランド制御信号OPRCにより、フォワーディングによって命令のソースデータを供給することが示される。このとき、指定信号制御回路31、32は、オペランド制御信号OPRCに従って、前のサイクルでレジスタファイル33に出力した読み出しオペランド指定信号ROPRBを、現命令における読み出しオペランド指定信号ROPRBとして出力する。すなわち、図1に例示した指定信号制御回路31、32において、マルチプレクサ回路41、43は、オペランド制御信号OPRCに従い、レジスタ42、44の出力を選択して出力する。また、マルチプレクサ回路34は、オペランド制御信号OPRCに従って、フォワーディング回路40から出力されたデータを選択し、ソースデータ35として出力する。このように、レジスタファイル33に入力される読み出しオペランド指定信号ROPRBは、変化することなく、前のサイクルにおいてレジスタファイル33に入力された状態を維持する。そのため、レジスタファイル33からマルチプレクサ回路34に入力されるデータも変化することなく、先行する命令のときと同じデータである。つまり、レジスタファイル33に入力される読み出しオペランド指定信号ROPRB及びレジスタファイル33から出力されるデータにおいて、信号の変化は発生しない。したがって、レジスタファイル33からのデータ読み出しに係る信号データを含むが不要に変化することを抑止し、レジスタファイル33の無駄な電力消費を抑制することができ、プロセッサにおける消費電力を低減することができる。前述した説明では、命令デコードステージIDとレジスタ読み出しステージRRが分離したスカラプロセッサを一例として説明したが、命令デコードステージIDとレジスタ読み出しステージRRが分離していないスカラプロセッサにも適用することが可能である。例えば、命令デコードステージIDにおいてレジスタファイルからのデータ読み出しを行う5ステージのパイプライン構成のスカラプロセッサに適用可能である。このような命令デコードステージIDとレジスタ読み出しステージRRが分離していないスカラプロセッサでは、通常は遅延時間の短縮の観点から命令のデコード処理とレジスタファイルからの読み出し処理とを並行して行う。しかし、読み出しオペランドに係る情報はデコード回路21の出力から得られるが、フォワーディングを行うか否かの判定結果は発行制御回路22の出力から得られる。したがって、フォワーディングを行うか否かの判定結果が得られてからレジスタファイルに対する読み出し動作を行うようにすると処理が直列となって遅延時間が増大してしまうことが考えられる。つまり、命令デコードステージIDとレジスタ読み出しステージRRが分離していないスカラプロセッサについて前述した本実施形態に係る技術を適用した場合には、遅延時間が増大するおそれはあるが、プロセッサにおける消費電力は低減される。第2の実施形態次に、本発明の第2の実施形態について説明する。以下に、ベクトルデータを複数サイクルに渡って処理するベクトルプロセッサに適用した場合について説明する。ベクトルプロセッサは、配列型のレジスタファイルを有し、配列データに対して演算処理やロード/ストア処理等を行う。ベクトルプロセッサについて、図2を参照し説明する。図2Aは、ベクトルレジスタファイルの例を示す図であり、図示のように物理番号は論理番号とベクトル長VLとにより決まる。図2Aには、ベクトルレジスタが1-halfword×512エントリであって、ベクトル長VLが32の場合における物理番号と論理番号との対応を示している。例えば、物理番号0から31が論理番号0に対応し、物理番号32から63が論理番号1に対応する。図2Bは、ベクトルプロセッサにおける動作を説明するための図である。図2Bには、演算器が1サイクルで4データ1-halfword×4について演算を行うSIMDSingleInstructionMultipleData構成で、ベクトル実行パイプラインを2つ有するベクトルプロセッサの動作例を示している。また、図2Bに動作例を示したベクトルプロセッサは、1サイクルに発行可能な命令数が1であり、ベクトル長が32であるとする。したがって、各実行パイプラインは1つのベクトル命令をVL/4=8サイクルで実行する。図2Bに示す例では、第1サイクル~第8サイクルにおいて、命令1:vaddr1,r2,r3に係る処理がベクトル実行パイプラインp0で実行される。命令1:vaddr1,r2,r3は、レジスタr2の内容とレジスタr3の内容とを加算して、加算結果をレジスタr1に格納する演算処理を実行させる命令である。すなわち、第1サイクル~第8サイクルにおいて、物理番号64~95に対応する領域のデータと物理番号96~127に対応する領域のデータとが加算され、加算結果が物理番号32~63に対応する領域に書き込まれる。命令1に続いて、命令2:vaddr5,r1,r4が発行される。命令2:vaddr5,r1,r4は、レジスタr1の内容とレジスタr4の内容とを加算して、加算結果をレジスタr5に格納する演算処理を実行させる命令である。すなわち、命令2に係る演算処理では、物理番号32~63に対応する領域のデータと物理番号128~159に対応する領域のデータとを加算し、加算結果を物理番号160~191に対応する領域に書き込む。ここで、ペナルティが0であるとすると、第2サイクル~第9サイクルにおいて物理番号32~63に対応する領域が順次参照されてもストールすることがないので命令1に続けて命令2を発行することができる。したがって、命令1に続いて命令2が発行され、第2サイクル~第9サイクルにおいて命令2に係る処理がベクトル実行パイプラインp1で実行される。そして、第8サイクルにおいてベクトル実行パイプラインp0での命令1に係る処理が完了した後、命令3が発行され、第9サイクル~第16サイクルにおいて命令3に係る処理がベクトル実行パイプラインp0で実行される。図3は、第2の実施形態によるプロセッサの構成例を示す図である。図3において、IFは命令フェッチステージ、IDは命令デコードステージ、RRはレジスタ読み出しステージ、EXは演算実行ステージ、MAはメモリアクセスステージ、WBはライトバックステージである。図3に示すプロセッサは、命令デコードステージIDとレジスタ読み出しステージRRとが分離した6ステージのパイプライン構成のベクトルプロセッサであり、2つのベクトル実行パイプラインp0、p1を有している。命令フェッチステージIFでは、アドレス指定によって命令バッファ51から命令が読み出される。命令バッファ51には、プロセッサにてプログラムに応じた処理を実行するための命令列が格納されている。命令デコードステージIDでは、命令フェッチステージIFにおいて読み出された命令がデコードされる。デコード回路61は、命令フェッチステージIFにおいて読み出された命令からオペランドのフィールド等を分離する。また、発行制御回路62は、当該命令が発行可能であるか否か、先行する命令との依存関係を判定する処理や、フォワーディングを行うか否かを判定する処理等を行う。そして、命令が発行可能なベクトル実行パイプラインp0、p1に対して、デコード回路61や発行制御回路62によるデコード結果等に基づいて生成された制御情報64A、64Bが出力される。本実施形態における制御情報は、デコード回路61や発行制御回路62によるデコード結果に係る情報に加え、パイプラインの状態に係る情報を含む。また、制御情報は、命令の実行に伴って命令更新回路66A、66Bにより更新され、例えば命令の実行に伴ってパイプラインの状態に係る情報読み出し対象のレジスタ番号等が更新される。なお、2つのベクトル実行パイプラインp0、p1の各々の構成や動作は同様であるので、以下ではベクトル実行パイプラインp0を例に説明し、適宜ベクトル実行パイプラインp1の対応する構成要素の符号を括弧書きにより付加する第3の実施形態についても同様。レジスタ読み出しステージRRでは、制御情報64A64Bに応じてベクトルレジスタファイル72に対する読み出し動作が行われる。指定信号制御回路71A71Bは、制御情報64A64Bを基に発行される読み出しオペランド指定信号ROPRA0ROPRA1及びオペランド制御信号OPRC0OPRC1が入力される。指定信号制御回路71A71Bは、オペランド制御信号OPRC0OPRC1に応じて、レジスタファイル72に出力する読み出しオペランド指定信号ROPRB0ROPRB1を制御する。指定信号制御回路71A71Bは、オペランド制御信号OPRC0OPRC1に応じて、入力された読み出しオペランド指定信号ROPRA0ROPRA1を読み出しオペランド指定信号ROPRB0ROPRB1として出力するか、あるいは信号を変化させずに読み出しオペランド指定信号ROPRB0ROPRB1を維持する。指定信号制御回路71A71Bから出力された読み出しオペランド指定信号ROPRB0ROPRB1は、ベクトルレジスタファイル72に入力される。そして、ベクトルレジスタファイル72から読み出しオペランド指定信号ROPRB0ROPRB1で指定されたレジスタに格納されているデータが読み出されて、マルチプレクサ回路73A73Bに入力される。また、マルチプレクサ回路73A73Bには、フォワーディング回路79より出力されたデータが入力されている。マルチプレクサ回路73A73Bに入力されたベクトルレジスタファイル72からのデータやフォワーディング回路79からのデータは、オペランド制御信号OPRC0OPRC1に応じて選択されソースデータ74A74Bとして演算器75A75B等に入力される。フォワーディング回路79は、フォワーディングによるデータ供給を行うための回路である。フォワーディング回路79は、1又は複数サイクル前の演算実行ステージEX、メモリアクセスステージMA、及びライトバックステージWBに係る処理結果が入力され、入力された各ステージに係る処理結果をマルチプレクサ回路73A73Bに出力する。また、レジスタ読み出しステージRRにおいて、命令更新回路66A66Bは、制御情報64A64Bを命令実行に伴って適宜更新する。更新された制御情報は、マルチプレクサ回路63A63Bを介して次の制御情報64A64Bとして出力される。演算実行ステージEXでは、命令によって指定された演算処理が演算器75A75Bにより実行される。演算器75A75Bは、ソースデータ74A74Bを用い、制御情報65A65Bを基に発行された演算器制御信号ALUC0ALUC1に応じた演算処理を実行する。また、メモリアクセスステージMAでは、メモリアクセス回路77A77Bにより図示しないデータメモリに対するアクセスデータのロード/ストアが行われる。さらに、ライトバックステージWBでは、演算実行ステージEXやメモリアクセスステージMAでの演算結果76A、78A76B、78Bがベクトルレジスタファイル72の書き込みオペランドとして指定されたレジスタに書き込まれる。なお、制御情報65A65Bは、制御情報64A64Bと同様のものであり、図示していないがメモリアクセスステージMA及びライトバックステージWBにおいても同様の制御情報に基づいて各ステージでの処理が実行される。ここで、レジスタ読み出しステージRRにおける動作について詳しく説明する。第2の実施形態において、ベクトルレジスタファイル72からのデータを命令のソースデータとする場合には、ベクトルレジスタファイル72からのデータを命令のソースデータとして供給することがオペランド制御信号OPRC0OPRC1によって示される。このとき、指定信号制御回路71A71Bは、オペランド制御信号OPRC0OPRC1に従って、入力された読み出しオペランド指定信号ROPRA0ROPRA1を読み出しオペランド指定信号ROPRB0ROPRB1として出力する。これにより、ベクトルレジスタファイル72から読み出しオペランド指定信号ROPRA0ROPRA1によって指定されるレジスタのデータが読み出されて出力される。そして、マルチプレクサ回路73A73Bは、オペランド制御信号OPRC0OPRC1に従って、ベクトルレジスタファイル72からのデータを選択し、ソースデータ74A74Bとして出力する。一方、フォワーディングにより命令のソースデータを供給する場合には、フォワーディングにより命令のソースデータを供給することがオペランド制御信号OPRC0OPRC1によって示される。このとき、指定信号制御回路71A71Bは、オペランド制御信号OPRC0OPRC1に従って、前のサイクルで出力した読み出しオペランド指定信号ROPRB0ROPRB1を維持する。また、マルチプレクサ回路73A73Bは、オペランド制御信号OPRC0OPRC1に従って、フォワーディング回路79からのデータを選択し、ソースデータ74A74Bとして出力する。このように、フォワーディングにより命令のソースデータを供給する場合には、ベクトルレジスタファイル72に入力される読み出しオペランド指定信号ROPRB0ROPRB1は、変化することなく、前のサイクルの状態を維持する。そのため、ベクトルレジスタファイル72からの出力データも変化することなく、前のサイクルと同じ状態で維持される。つまり、ベクトルレジスタファイル72に入力される読み出しオペランド指定信号ROPRB0ROPRB1及びベクトルレジスタファイル72からの出力データにおいて、信号の変化は発生しない。したがって、ベクトルレジスタファイル72からのデータ読み出しに係る信号データを含むが不要に変化することを抑止して無駄な電力消費を抑制することができ、プロセッサにおける消費電力を低減することができる。第3の実施形態次に、本発明の第3の実施形態について説明する。図4は、第3の実施形態によるプロセッサの構成例を示す図である。図4において、IFは命令フェッチステージ、IDは命令デコードステージ、EXは演算実行ステージ、MAはメモリアクセスステージ、WBはライトバックステージである。図4に示すプロセッサは、命令デコードステージIDにおいてレジスタファイルからのデータ読み出し動作を行う5ステージのパイプライン構成のベクトルプロセッサであり、2つのベクトル実行パイプラインp0、p1を有している。命令フェッチステージIFでは、アドレス指定によって、プロセッサにてプログラムに応じた処理を実行するための命令列が格納された命令バッファ81から命令が読み出される。命令デコードステージIDでは、命令フェッチステージIFにおいて読み出された命令がデコードされるとともに、ベクトルレジスタファイル93に対する読み出し動作が行われる。命令デコードステージIDにおいて、デコード回路82は、命令バッファ81から読み出された命令からオペランドのフィールド等を分離し、得られるオペランド指定情報に応じた読み出しオペランド指定信号ROPRAAを出力する。また、発行制御回路83は、当該命令が発行可能であるか否か、先行する命令との依存関係を判定する処理や、フォワーディングを行うか否かを判定する処理等を行う。そして、命令が発行可能なベクトル実行パイプラインp0、p1に対して、デコード回路82や発行制御回路83によるデコード結果等に基づいて生成した制御情報85A85Bが出力される。制御情報85A85Bは、デコード結果等に係る情報及びパイプラインの状態に係る情報を含み、命令の実行に伴って命令更新回路86A86Bにより適宜更新される。例えば、命令更新回路86A86Bは、命令の実行に伴って制御情報85A85Bにおけるパイプラインの状態に係る情報読み出し対象のレジスタ番号等を更新する。命令更新回路86A86Bにより更新された制御情報は、マルチプレクサ回路84A84Bを介して次の制御情報85A85Bとして出力される。また、命令デコードステージIDにおいて、指定信号制御回路91A91Bは、命令更新回路86A86Bにより更新された制御情報を基に発行される読み出しオペランド指定信号ROPRA0ROPRA1及びオペランド制御信号OPRC0OPRC1が入力される。指定信号制御回路91A91Bは、オペランド制御信号OPRC0OPRC1に応じて、読み出しオペランド指定信号ROPRA0ROPRA1を読み出しオペランド指定信号ROPRA0BROPRA1Bとして出力するか、あるいは信号を変化させずに読み出しオペランド指定信号ROPRA0BROPRA1Bを維持する。デコード回路82より出力される読み出しオペランド指定信号ROPRAA及び指定信号制御回路91A91Bから出力される読み出しオペランド指定信号ROPRA0BROPRA1Bが、マルチプレクサ回路92A92Bに入力される。マルチプレクサ回路92A92Bは、制御情報85A85Bを基に発行される演算器制御信号ALUC0ALUC1に応じて、読み出しオペランド指定信号ROPRAA又は読み出しオペランド指定信号ROPRA0BROPRA1Bを読み出しオペランド指定信号ROPRB0ROPRB1として出力する。マルチプレクサ回路92A92Bから出力された読み出しオペランド指定信号ROPRB0ROPRB1は、ベクトルレジスタファイル93に入力される。そして、ベクトルレジスタファイル93から読み出しオペランド指定信号ROPRB0ROPRB1で指定されたレジスタに格納されているデータが読み出されて、マルチプレクサ回路94A94Bに入力される。また、マルチプレクサ回路94A94Bには、フォワーディング回路100より出力されたデータが入力されている。マルチプレクサ回路94A94Bに入力されたベクトルレジスタファイル93からのデータやフォワーディング回路100からのデータは、オペランド制御信号OPRC0OPRC1に応じて選択されソースデータ95A95Bとして出力される。なお、演算実行ステージEX、メモリアクセスステージMA、及びライトバックステージWBの各々は、第2の実施形態における演算実行ステージEX、メモリアクセスステージMA、及びライトバックステージWBと同様であるので説明は省略する。ここで、演算器96A、96B、メモリアクセス回路98A、98B、及び演算結果97A、97B、99A、99Bが、図3に示した演算器75A、75B、メモリアクセス回路77A、77B、及び演算結果76A、76B、78A、78Bにそれぞれ対応する。第3の実施形態でのベクトルレジスタファイルに係る読み出し動作について詳しく説明する。第3の実施形態によるプロセッサのように命令デコードステージIDにてレジスタファイルからのデータ読み出しを行うプロセッサでは、通常は遅延時間が増大するのを抑制するために命令のデコード処理とレジスタファイルからの読み出し処理とを並行して行う。したがって、発行制御回路83によるフォワーディングを行うか否かの判定結果が得られてから、レジスタファイルに対する読み出し動作を行うようにすると処理が並列ではなくなり遅延時間が増大してしまう。そこで、本実施形態におけるプロセッサでは、図5に示すように制御を行い、命令実行の1サイクル目ではフォワーディングを行うか否かにかかわらずベクトルレジスタファイル93からのデータ読み出しを行う。そして、命令実行の2サイクル目以降では、フォワーディングを行うか否かの判定結果を基にフォワーディングを行う場合には、ベクトルレジスタファイル93からのデータ読み出しに係る信号の変化を抑止するように制御する。図5は、本実施形態における読み出し制御の一例を示すフローチャートである。図5に示す制御は、制御パスが制御情報を基に各制御信号を発行することにより実現される。まず、制御が開始されるとS1、デコーダ回路82から出力される読み出しオペランド指定信号ROPRAAを選択して出力するよう、マルチプレクサ回路92A92Bが制御されるS2。そして、命令実行の1サイクル目であればS3のYes、通常通り読み出しオペランド指定信号ROPRAAで指定されたレジスタのデータをベクトルレジスタファイル93から読み出すS6。続いて、命令に応じた所定のサイクル数だけ処理を実行したか否かが判定され、所定サイクル数の処理が終了していなければS8のNo、ステップS3に戻る。そして、命令実行の2サイクル目以降であればS3のNo、指定信号制御回路91A91Bから出力される読み出しオペランド指定信号ROPRA0BROPRA1Bを選択して出力するよう、マルチプレクサ回路92A92Bが制御されるS4。次に、フォワーディングにより命令のソースデータが供給される、すなわちフォワーディングを行うと判定されていればS5のYes、指定信号制御回路91A91Bから出力される読み出しオペランド指定信号ROPRA0BROPRA1Bを変化させないように制御するS7。一方、ベクトルレジスタファイル93からのデータを命令のソースデータとして供給する、すなわちフォワーディングを行わないと判定されていればS5のNo、通常通り読み出しオペランド指定信号ROPRA0BROPRA1Bで指定されたレジスタのデータをベクトルレジスタファイル93から読み出すS6。ステップS6又はS7の処理を実行した後、命令に応じた所定のサイクル数だけ処理を実行したか否かが再び判定され、所定サイクル数の処理が終了していなければS8のNoステップS3に戻り、所定サイクル数の処理が終了すると制御を終了するS9。以下、命令のソースデータをベクトルレジスタファイル93から読み出して供給する場合、及びフォワーディングにより供給する場合に分けて命令のソースデータ供給に係る一連の動作を説明する。まず、ベクトルレジスタファイル93からのデータを命令のソースデータとする場合には、ベクトルレジスタファイル93からのデータを命令のソースデータとして供給することがオペランド制御信号OPRC0OPRC1によって示される。このとき、指定信号制御回路91A91Bは、オペランド制御信号OPRC0OPRC1に従って、入力された読み出しオペランド指定信号ROPRA0ROPRA1を読み出しオペランド指定信号ROPRA0BROPRA1Bとして出力する。また、マルチプレクサ回路92A92Bは、演算器制御信号ALUC0ALUC1に基づき、命令実行の1サイクル目では読み出しオペランド指定信号ROPRAAを、2サイクル目以降では読み出しオペランド指定信号ROPRA0BROPRA1Bを、読み出しオペランド指定信号ROPRB0ROPRB1として出力する。これにより、読み出した命令を基に得られた読み出しオペランド指定信号ROPRB0ROPRB1によって指定されるレジスタのデータがベクトルレジスタファイル93から読み出されて出力される。そして、マルチプレクサ回路94A94Bは、オペランド制御信号OPRC0OPRC1に従って、ベクトルレジスタファイル93からのデータを選択し、ソースデータ95A95Bとして出力する。次に、フォワーディングにより命令のソースデータを供給する場合には、フォワーディングにより命令のソースデータを供給することがオペランド制御信号OPRC0OPRC1によって示される。このとき、指定信号制御回路91A91Bは、オペランド制御信号OPRC0OPRC1に従って、前のサイクルで出力した読み出しオペランド指定信号ROPRA0BROPRA1Bを維持する。また、マルチプレクサ回路92A92Bは、演算器制御信号ALUC0ALUC1に基づき、命令実行の1サイクル目では読み出しオペランド指定信号ROPRAAを、2サイクル目以降では読み出しオペランド指定信号ROPRA0BROPRA1Bを、読み出しオペランド指定信号ROPRB0ROPRB1として出力する。マルチプレクサ回路94A94Bは、オペランド制御信号OPRC0OPRC1に従って、フォワーディング回路100からのデータを選択し、ソースデータ95A95Bとして出力する。このように、フォワーディングにより命令のソースデータを供給する場合には、命令実行の1サイクル目において、ベクトルレジスタファイル93からデータの読み出しを行うが、ソースデータ95A95Bとしてはフォワーディング回路100からのデータを選択して出力する。これにより、フォワーディングを行うか否かの判定結果を待つことなく、レジスタファイルからのデータ読み出しを行って処理が実行されるので、遅延時間が増大することを防止することができる。また、命令実行の2サイクル目以降では、第2の実施形態と同様に、ベクトルレジスタファイル93に入力される読み出しオペランド指定信号ROPRB0ROPRB1及びベクトルレジスタファイル93からの出力データにおいて、信号の変化は発生しない。したがって、ベクトルレジスタファイル93からのデータ読み出しに係る信号データを含むが不要に変化することを抑止して無駄な電力消費を抑制することができ、プロセッサにおける消費電力を低減することができる。前述した各実施形態における読み出し動作について、図6に示す。なお、図6においては、各実行パイプラインにおいてレジスタ読み出しが行われるステージ命令デコードステージID又はレジスタ読み出しステージRRを示している。また、図6A、Bにはスカラプロセッサの場合を示しており、図6C、Dにはベクトル実行パイプラインを2つ有するベクトルプロセッサの場合を示している。なお、命令1:addr1,r2,r3及び命令2:addr5,r1,r4はスカラ演算を実行させる命令である。命令1:addr1,r2,r3は、レジスタr2の内容とレジスタr3の内容とを加算して、加算結果をレジスタr1に格納する演算処理を実行させる。同様に、命令2:addr5,r1,r4は、レジスタr1の内容とレジスタr4の内容とを加算して、加算結果をレジスタr5に格納する演算処理を実行させる。したがって、命令1→命令2の順に連続して命令が発行される場合には、命令1の演算結果を用いて命令2を実行する。また、命令1:vaddr1,r2,r3及び命令2:vaddr5,r1,r4はベクトルデータを複数サイクルに渡って処理させる命令である。命令1:vaddr1,r2,r3は、レジスタr2の内容とレジスタr3の内容とを加算して、加算結果をレジスタr1に格納する演算処理を実行させる。同様に、命令2:vaddr5,r1,r4は、レジスタr1の内容とレジスタr4の内容とを加算して、加算結果をレジスタr5に格納する演算処理を実行させる。なお、命令1:vaddr1,r2,r3及び命令2:vaddr5,r1,r4はそれぞれ8サイクルで実行完了するものとする。したがって、命令1→命令2の順に連続して命令が発行される場合には、命令1の演算結果を用いて命令2を実行する。図6Aに示す6ステージ構成のスカラプロセッサは、命令デコードステージIDとレジスタ読み出しステージRRとが分離しているので、命令2におけるレジスタ読み出しステージRRの前にフォワーディングを行うか否かの判定結果が得られている。したがって、第1サイクルでは命令1の処理を実行し、第2サイクルではレジスタからのデータ読み出しを行うことなく、フォワーディングにより供給される命令1の演算結果を用いて命令2の処理を実行する。そのため、命令1の処理を実行する第1サイクルでは通常の読み出しを行うためにレジスタファイルからのデータ読み出しに係る信号は変化する。しかし、命令2の処理を実行する第2サイクルではフォワーディングによりソースデータが供給されるので、レジスタファイルからのデータ読み出しに係る信号が変化することを抑止することができ、消費電力を低減することができる。図6Bに示す5ステージ構成のスカラプロセッサは、命令デコードステージIDにてレジスタからのデータ読み出しを実行するため、フォワーディングを行うか否かの判定結果に応じてレジスタからのデータ読み出しを行うように制御すると遅延時間が増大してしまう。したがって、第1サイクルで命令1の処理を実行し、フォワーディングにより供給された命令1の演算結果を用いて第2サイクルで命令2の処理を実行するとしても、遅延時間の観点からは命令2の処理の実行に際してレジスタファイルからのデータ読み出しを行うことが好ましい。すなわち、遅延時間を増大させることなく、命令1及び命令2の処理を実行するには、命令1の処理を実行する第1サイクル及び命令2の処理を実行する第2サイクルともに通常の読み出しを行うことが好ましく、レジスタファイルからのデータ読み出しに係る信号は各サイクルで変化することになる。なお、遅延時間が増大しても不都合がない場合には、フォワーディングを行うか否かの判定結果に応じてレジスタからのデータ読み出しを行うように制御し、命令2の処理を実行する第2サイクルでは、レジスタファイルからのデータ読み出しに係る信号が変化することを抑止するようにしても良い。図6Cに示す6ステージ構成のベクトルプロセッサは、第1~第8サイクルにおいてベクトル実行パイプラインp0で命令1の処理を実行し、第2~第9サイクルにおいてベクトル実行パイプラインp1で命令2の処理を実行する。6ステージ構成のベクトルプロセッサにおいては、命令デコードステージIDとレジスタ読み出しステージRRとが分離しているので、命令2におけるレジスタ読み出しステージRRの前にフォワーディングを行うか否かの判定結果が得られている。すなわち、命令1の処理はレジスタファイルからのデータを用いて実行し、命令2の処理はレジスタファイルからのデータ読み出しを行うことなく、フォワーディングにより供給される命令1の演算結果を用いて実行する。つまり、命令2の処理の実行においては、レジスタファイルからのデータ読み出しを行う必要が一切ない。したがって、第2~第9サイクルにおける命令2の処理の実行では、レジスタファイルからのデータ読み出しに係る信号が変化することを抑止することができ、消費電力を低減することができる。図6Dに示す5ステージ構成のベクトルプロセッサは、第1~第8サイクルにおいてベクトル実行パイプラインp0で命令1の処理を実行し、第2~第9サイクルにおいてベクトル実行パイプラインp1で命令2の処理を実行する。このとき、命令1の処理はレジスタファイルからのデータを用いて実行し、命令2の処理はフォワーディングにより供給される命令1の演算結果を用いて実行する。このプロセッサは、命令デコードステージIDにてレジスタからのデータ読み出しを実行するため、フォワーディングを行うか否かの判定結果に応じてレジスタからのデータ読み出しを行うように制御すると遅延時間が増大してしまう。したがって、フォワーディングにより供給される命令1の演算結果を用いて命令2の処理を実行するとしても、命令2の1サイクル目第2サイクルにおいてはレジスタファイルからのデータ読み出しを行うことが遅延時間の観点からは好ましい。つまり、遅延時間を増大させることなく命令1及び命令2の処理を実行するには、命令2の実行に際して1サイクル目だけレジスタファイルからのデータ読み出しを行う。しかし、命令2の2サイクル目以降では、フォワーディングを行うとの判定結果が得られているので、レジスタファイルからのデータ読み出しを行う必要がない。したがって、第3~第9サイクルにおける命令2の処理の実行では、レジスタファイルからのデータ読み出しに係る信号が変化することを抑止することができ、消費電力を低減することができる。なお、各実施形態では、レジスタファイルからのデータ供給が不要なサイクルとして、先行する命令と後続の命令との間に真の依存関係があり、かつ先行する命令の演算結果がフォワーディングにより後続の命令のソースデータとして供給されるときを例に説明した。しかし、この例に限定されず、命令が発行されないサイクル等を含めてレジスタファイルからのデータの供給が不要なサイクルにおいて、レジスタファイルに入力される読み出しオペランド指定信号を前のサイクルと同じ状態に維持することで、無駄な電力消費を抑制しプロセッサにおける消費電力を低減することができる。また、前記実施形態は、何れも本発明を実施するにあたっての具体化のほんの一例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。本発明の諸態様を付記として以下に示す。付記1読み出された命令をデコードし、デコード結果を基に処理データが格納されているレジスタを指定する第1の指定信号を出力するデコード部と、前記デコード部での前記デコード結果を基に発行された命令に従って、処理データを用いて当該命令に基づく処理を実行する処理部と、前記デコード部より出力された前記第1の指定信号に応じて、第2の指定信号を制御し出力する指定信号制御部と、処理データを保持する複数のレジスタを有するとともに、前記指定信号制御部より出力された前記第2の指定信号を受けて、当該第2の指定信号で指定されたレジスタに格納されている処理データを出力するレジスタファイルとを備え、前記指定信号制御部は、前記レジスタファイルから前記処理部への処理データの供給が不要なサイクルでは、出力する前記第2の指定信号を維持することを特徴とするプロセッサ。付記2前記指定信号制御部は、出力した前記第2の指定信号を保持する保持部と、前記保持部に保持した前記第2の指定信号及び前記デコード部より出力された前記第1の指定信号が入力され、当該前記第2の指定信号又は当該第1の指定信号を選択し前記レジスタファイルに前記第2の指定信号として出力する信号選択部とを有することを特徴とする付記1記載のプロセッサ。付記3前記処理部での処理結果をフォワーディングするフォワーディング部を備え、前記フォワーディング部によるフォワーディングで前記処理部へ処理データが供給される場合には、前記指定信号制御部は、出力する前記第2の指定信号を維持することを特徴とする付記1又は2記載のプロセッサ。付記4前記レジスタファイルから出力された処理データを前記処理部に供給するか、又は前記フォワーディング部によるフォワーディングで前記処理部に処理データを供給するかを制御する制御信号に基づいて、前記指定信号制御部は、出力する前記第2の指定信号を制御することを特徴とする付記3記載のプロセッサ。付記5前記指定信号制御部は、前記処理部に対して命令が発行されないサイクルでは、出力する前記第2の指定信号を維持することを特徴とする付記1~4の何れか1項に記載のプロセッサ。付記6前記プロセッサは、読み出された命令をパイプライン処理するとともに、命令デコードステージにて前記レジスタファイルからの処理データの読み出し動作を行うプロセッサであり、複数のサイクルに渡って命令に係る処理が実行されるマルチサイクル命令を実行するとき、前記処理部に供給する処理データがフォワーディングにより供給される場合に、前記指定信号制御部は、1サイクル目では入力される前記第1の指定信号に合わせて出力する前記第2の指定信号を変化させ、2サイクル目以降では出力する前記第2の指定信号を維持することを特徴とする付記1~5の何れか1項に記載のプロセッサ。付記7読み出された命令をデコードし、デコード結果を基に処理データが格納されているレジスタを指定する第1の指定信号を出力するデコード部と、前記デコード部での前記デコード結果を基に発行された命令に従って、処理データを用いて当該命令に基づく処理を実行する処理部と、前記デコード部より出力された前記第1の指定信号を第2の指定信号として出力する指定信号制御部と、処理データを保持する複数のレジスタを有するとともに、前記指定信号制御部より出力された前記第2の指定信号を受けて、当該第2の指定信号で指定されたレジスタに格納されている処理データを出力するレジスタファイルとを備え、前記指定信号制御部は、前記レジスタファイルから前記処理部への処理データの供給が不要なサイクルでは、前記第1の指定信号にかかわらず、前記第2の指定信号が変化することを抑止することを特徴とするプロセッサ。"