[go: up one dir, main page]

JP2006031284A - 演算装置と信号線制御方法 - Google Patents

演算装置と信号線制御方法 Download PDF

Info

Publication number
JP2006031284A
JP2006031284A JP2004207717A JP2004207717A JP2006031284A JP 2006031284 A JP2006031284 A JP 2006031284A JP 2004207717 A JP2004207717 A JP 2004207717A JP 2004207717 A JP2004207717 A JP 2004207717A JP 2006031284 A JP2006031284 A JP 2006031284A
Authority
JP
Japan
Prior art keywords
instruction
code
nop
instruction code
output
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
JP2004207717A
Other languages
English (en)
Inventor
Hiromasa Osawa
広征 大澤
Ryuji Ishida
隆二 石田
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 Electronics Corp
Original Assignee
NEC Electronics 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 Electronics Corp filed Critical NEC Electronics Corp
Priority to JP2004207717A priority Critical patent/JP2006031284A/ja
Priority to US11/179,579 priority patent/US20060015704A1/en
Publication of JP2006031284A publication Critical patent/JP2006031284A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30181Instruction operation extension or modification
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30145Instruction analysis, e.g. decoding, instruction word fields

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

【課題】信号線を駆動するときの消費電力を低減すること。
【解決手段】演算装置は、信号線(1)と、前記信号線(1)に接続されたデコーダ(3)と、前記信号線(1)に接続され、第1命令コードとNOP(No Operation)コードとをこの順に前記デコーダ(3)に前記信号線(1)を介して出力する出力器(2)とを具備している。前記第1命令コードは、前記NOPコード以外の命令コードを表す第1特定ビットと、前記第1命令コードの内容を表す第1実行命令ビットとを含んでいる。前記NOPコードは、前記NOPコードを表す第2特定ビットと、前記第1実行命令ビットとを含んでいる。
【選択図】図1

Description

本発明は、演算装置と信号線制御方法に関する。
コンピュータには、中央演算処理装置(CPU)が設けられている。この中央演算処理装置(以下、演算装置)は、出力器、バス、デコーダ、命令実行部を具備している。出力器は、命令コード又はNOP(No Operation)コードをデコーダにバスを介して出力する。出力器が命令コードを出力した場合、デコーダは、その命令コードをデコードし、命令実行部は、デコーダによりデコードされた命令コード(命令)を実行する。
命令コード、NOPコードは、複数のビットから構成されている。命令コードの複数のビットは、“1”と“0”との組み合わせにより表され、その命令コードの内容を表している。NOPコードの複数のビットは、例えば“0”により表されている(非特許文献1)。
バスは、複数の信号線を含んでいる。上記コード(命令コード、NOPコード)の複数のビットのそれぞれは、複数の信号線のそれぞれに対応付けられている。バスに出力された命令コードの複数のビットのうちの第1ビットが“1”を表す場合、バスの複数の信号線のうちの第1信号線には電荷が蓄えられる。次に、バスに出力された命令コードの第1ビットが“0”を表す場合、第1信号線に蓄えられた電荷が放電される。このように、第1信号線に蓄えられる電荷が“1”から“0”に遷移することにより、バスを駆動する電力が消費される。
出力器が命令コードとNOPコードとをこの順にデコーダにバスを介して出力し、NOPコードより先に出力された命令コードの複数のビットのうち、10ビットが“1”を表しているものとする。NOPコードの複数のビットは全て“0”を表しているため、バスの複数の信号線のうち、上記の10ビットに対応する信号線に蓄えられる電荷が“1”から“0”に遷移する。この場合、10本の信号線を駆動するときの消費電力は、1本の信号線を駆動するときの消費電力よりも増大する。このように、演算装置は、出力器がNOPコードをデコーダにバスを介して出力したときでも電力を消費してしまう。
また、近年では、命令の実行を高速に行なうために、例えば、多段パイプラインを用いるコンピュータが多くなってきている。これに伴い、命令の実行手順や分岐命令等でパイプライン中のデータを保証するために、前後の命令コードの間にNOPコードを設ける必要性が高まっている。
NEC編「データ・ブック 信号処理LSI(DSP/音声)」、1996年1月発行、p.25−36
したがって、本発明の課題は、信号線を駆動するときの消費電力を低減することができる演算装置と信号線制御方法を提供することにある。
以下に、[発明を実施するための最良の形態]で使用する番号・符号を用いて、課題を解決するための手段を説明する。これらの番号・符号は、[特許請求の範囲]の記載と[発明を実施するための最良の形態]の記載との対応関係を明らかにするために付加されたものであるが、[特許請求の範囲]に記載されている発明の技術的範囲の解釈に用いてはならない。
本発明の第1の観点では、演算装置は、信号線(1)と、前記信号線(1)に接続されたデコーダ(3)と、前記信号線(1)に接続され、第1命令コード(21−1)とNOP(No Operation)コード(41−1)とをこの順に前記デコーダ(3)に前記信号線(1)を介して出力する出力器(2)とを具備している。前記第1命令コード(21−1)は、前記NOPコード以外の命令コードを表す第1特定ビット(23)と、前記第1命令コード(21−1)の内容を表す第1実行命令ビット(25−1)とを含んでいる。前記NOPコード(41−1)は、前記NOPコードを表す第2特定ビット(24)と、前記第1実行命令ビット(25−1)とを含んでいる。
前記出力器(2)は、前記第1命令コード(21−1)と第2命令コード(22)とをこの順に受け取る命令出力部(10)を備えている。前記第2命令コード(22)は、前記第2特定ビット(24)と、第2実行命令ビット(26)とを含んでいる。前記命令出力部(10)は、前記第1命令コード(21−1)に含まれる前記第1特定ビット(23)に基づいて、前記第1命令コード(21−1)を前記デコーダ(3)に前記信号線(1)を介して出力し、前記第2命令コード(22)に含まれる前記第2特定ビット(24)に基づいて、前記NOPコードを前記デコーダ(3)に前記信号線(1)を介して出力する。
前記出力器(2)は、複数の命令コード(21−1〜21−m、22)(mは1以上の整数)を格納するメモリ(20)を具備している。前記命令出力部(10)は、前記メモリ(20)に格納された前記複数の命令コード(21−1〜21−m、22)のうち、前記第1命令コード(21−1)と前記第2命令コード(22)とをこの順に受け取る。
前記命令出力部(10)は、前記第1命令コード(21−1)を受け取り、前記第1命令コード(21−1)に含まれる前記第1特定ビット(23)に基づいて、前記第1命令コード(21−1)に含まれる前記第1実行命令ビット(25−1)を出力するセレクタ(11)と、前記セレクタ(11)から出力された前記第1実行命令ビット(25−1)を保持する保持部(12)と、前記信号線(1)に接続され、前記第1命令コード(21−1)に含まれる前記第1特定ビット(23)を受け取り、前記第1特定ビット(23)と前記セレクタ(11)から出力された前記第1実行命令ビット(25−1)とを含む前記第1命令コード(21−1)を前記デコーダ(3)に前記信号線(1)を介して出力するバッファ(13)とを具備している。前記セレクタ(11)は、前記第2命令コード(22)を受け取り、前記第2命令コード(22)に含まれる前記第2特定ビット(24)に基づいて、前記保持部(12)に保持された前記第1実行命令ビット(25−1)を出力する。前記バッファ(13)は、前記第2命令コード(22)に含まれる前記第2特定ビット(24)を受け取り、前記第2特定ビット(24)と前記セレクタ(11)から出力された前記第1実行命令ビット(25−1)とを含む前記NOPコードを前記デコーダ(3)に前記信号線(1)を介して出力する。
本発明の第1の観点による演算装置は、更に、第1命令読出指示と第2命令読出指示とをこの順に出力するプログラムカウンタ(5)を具備している。前記第1命令コード(21−1)が前記第1命令読出指示に応じて前記メモリ(20)から前記命令出力部(10)に出力される。前記第2命令コード(22)が前記第2命令読出指示に応じて前記メモリ(20)から前記命令出力部(10)に出力される。
本発明の第1の観点による演算装置は、更に、前記デコーダ(3)に接続された命令実行部(4)を具備している。前記デコーダ(3)は、前記出力器(2)から出力された前記第1命令コード(21−1)をデコードする。前記命令実行部(4)は、前記デコーダ(3)によりデコードされた前記第1命令コード(21−1)を実行する。
本発明の第2の観点では、信号線制御方法は、第1命令コード(21−1)をデコーダ(3)に信号線(1)を介して出力するステップ(S1、S2−NO、S3)(S11、S12−NO、S13)と、前記第1命令コード(21−1)を前記デコーダ(3)に出力した後、NOP(No Operation)コード(41−1)を前記デコーダ(3)に前記信号線(1)を介して出力するステップ(S1、S2−YES、S4)(S11、S12−YES、S14)とを具備している。前記第1命令コード(21−1)は、前記NOPコード以外の命令コードを表す第1特定ビット(23)と、前記第1命令コード(21−1)の内容を表す第1実行命令ビット(25−1)とを含んでいる。前記NOPコード(41−1)は、前記NOPコードを表す第2特定ビット(24)と、前記第1実行命令ビット(25−1)とを含んでいる。
本発明の第3の観点では、メモリ(30)に格納されたコンピュータプログラム(40)は、デコーダ(3)に信号線(1)を介して出力される第1命令コード(21−1)と、前記第1命令コード(21−1)が出力された後に前記デコーダ(3)に前記信号線(1)を介して出力されるNOP(No Operation)コード(41−1)とを備えている。前記第1命令コード(21−1)は、前記NOPコード以外の命令コードを表す第1特定ビット(23)と、前記第1命令コード(21−1)の内容を表す第1実行命令ビット(25−1)とを含んでいる。前記NOPコード(41−1)は、前記NOPコードを表す第2特定ビット(24)と、前記第1実行命令ビット(25−1)とを含んでいる。
本発明によれば、信号線を駆動するときの消費電力を低減することができる。
以下に添付図面を参照して、本発明の演算装置について詳細に説明する。
(第1実施形態)
図1は、本発明の第1実施形態による演算装置の構成を示すブロック図である。第1実施形態による演算装置は、バス1、出力器2、デコーダ3、命令実行部4、プログラムカウンタ(PC)5を具備している。出力器2、デコーダ3は、バス1に接続されている。プログラムカウンタ5は、出力器2に接続され、命令実行部4は、デコーダ3に接続されている。
出力器2は、命令メモリ20、命令出力部10を備えている。図2に示されるように、命令メモリ20には、m個(mは1以上の整数)の命令コード21−1〜21−mと、命令コード22とが格納されている。
命令コード21−i(i=1、2、…、m)は、出力器2によってデコーダ3にバス1を介して出力される命令コードである。命令コード21−iは、複数のビットとして8ビット、16ビット、32ビット、64ビット、…から構成され、本実施形態では32ビットから構成されているものとする。
命令コード21−iは、NOP(No Operation)コード以外の命令コードを表す特定ビット23と、命令コード21−iの内容を表す実行命令ビット25−iとを含んでいる。特定ビット23は、命令コード21−iに含まれるビットのうちの少なくとも1つのビットを表し、実行命令ビット25−iは、特定ビット23以外のビットを表している。本実施形態では、特定ビット23は、最上位ビットにより表され、その最上位ビットは、“1”により表されるものとする。
命令コード22は、出力器2によってNOPコードに変換されてデコーダ3にバス1を介して出力される命令コードである。命令コード22は、複数のビットとして8ビット、16ビット、32ビット、64ビット、…から構成され、本実施形態では32ビットから構成されているものとする。
命令コード22は、NOPコードを表す特定ビット24と、ドントケアを表す実行命令ビット26とを含んでいる。特定ビット24は、命令コード22に含まれるビットのうちの少なくとも1つのビットを表し、実行命令ビット26は、特定ビット24以外のビットを表している。本実施形態では、特定ビット24は、最上位ビットにより表され、その最上位ビットは、“0”により表されるものとする。
バス1は、複数の信号線を含んでいる。上記の命令コード(命令コード21−i、命令コード22)が32ビットから構成されている場合、バス1は、32本の信号線を含んでいる。上記の命令コードの32ビットのそれぞれは、32本の信号線のそれぞれに対応付けられている。
プログラムカウンタ5は、命令メモリ20に格納された命令コードを読み出すための命令読出指示を出力する。
命令コード21−1を読み出す場合、第1命令読出指示がプログラムカウンタ5から命令メモリ20に与えられる。このとき、第1命令読出指示に応じて命令コード21−1が命令メモリ20から命令出力部10に出力される。
次に、命令コード22を読み出す場合、第2命令読出指示がプログラムカウンタ5から命令メモリ20に与えられる。このとき、第2命令読出指示に応じて命令コード22が命令メモリ20から命令出力部10に出力される。
命令出力部10は、命令メモリ20から読み出された命令コード21−1を受け取る。このとき、命令出力部10は、命令コード21−1に含まれる特定ビット23“1”に基づいて、命令コード21−1をデコーダ3にバス1を介して出力する。出力された命令コード21−1は、命令出力部10が命令メモリ20から受け取った命令コードと同じであり、特定ビット23“1”と、実行命令ビット25−1とを含んでいる。
次に、命令出力部10は、命令メモリ20から読み出された命令コード22を受け取る。このとき、命令出力部10は、命令コード22に含まれる特定ビット24“0”に基づいて、NOPコードをデコーダ3にバス1を介して出力する。出力されたNOPコードは、命令コード22に含まれる特定ビット24“0”と、命令コード21−1に含まれる実行命令ビット25−1とを含んでいる。
デコーダ3は、命令出力部10から出力された命令コード21−1を受け、命令コード21−1に含まれる特定ビット23“1”により、命令出力部10から出力された命令コードがNOPコード以外のコードであることを認識する。デコーダ3は、その命令コード21−1に含まれる実行命令ビット25−1により、命令コード21−1をデコードする。命令実行部4は、デコーダ3によりデコードされた命令(命令コード21−1)を実行する。
次に、デコーダ3は、命令出力部10から出力されたNOPコードを受け、NOPコードに含まれる特定ビット24“0”により、命令出力部10から出力された命令コードがNOPコードであることを認識する。デコーダ3は、そのNOPコードに対応する動作を命令実行部4に実行させる。
命令コード21−1に含まれる実行命令ビット25−1のうち、10ビットが“1”を表しているものとする。また、命令コード21−1に含まれる特定ビット23が“1”を表している。このため、命令コード21−1がバス1上に出力されたとき、バス1の32本の信号線のうちの11本の信号線には電荷が蓄えられる。
命令コード21−1の次にバス1上に出力されるNOPコードは、特定ビット24と、直前にバス1上に出力された実行命令ビット25−1とを含んでいる。このため、NOPコードがバス1上に出力されたとき、バス1の32本の信号線のうち、最上位ビットに対応する第1信号線に蓄えられた電荷のみが放電される(第1信号線に蓄えられた電荷のみが“1”から“0”に遷移する)。
このように、命令コード21−1、NOPコードに含まれる実行命令ビット25−1のうちの10ビットが“1”を表している場合、バス1を駆動する消費電力は、NOPコードに含まれるビットが全て“0”を表している場合に比べて、低減される。したがって、本発明の第1実施形態による演算装置では、命令コード21−1、NOPコードに含まれる実行命令ビット25−1のうち、“1”を表しているビットが多ければ多いほど、従来の演算装置に比べて、消費電力を低減する効果がある。
図1に示されるように、命令出力部10は、セレクタ11、ラッチである保持部12、バッファ13とを備えている。バッファ13は、バス1に接続されている。次に、図3を参照して、本発明の第1実施形態による演算装置の命令出力部10の動作について説明する。
命令コード21−1が第1命令読出指示に応じて命令メモリ20から読み出される。このとき、セレクタ11は、命令コード21−1に含まれる特定ビット23と実行命令ビット25−1とを受け取る。また、バッファ13は、命令コード21−1に含まれる特定ビット23を受け取る(ステップS1)。
セレクタ11が受け取った特定ビット23は、“1”を表している。即ち、NOP以外の命令コードを表している(ステップS2−NO)。
この場合、セレクタ11は、受け取った実行命令ビット25−1をバッファ13と保持部12とに出力する。保持部12は、セレクタ11から出力された実行命令ビット25−1を保持(ラッチ)する。バッファ13は、受け取った特定ビット23“1”と、セレクタ11から出力された実行命令ビット25−1とを含む命令コード21−1をデコーダ3にバス1を介して出力する(ステップS3)。ここで、デコーダ3は、命令コード21−1をデコードし、命令実行部4は、デコーダ3によりデコードされた命令(命令コード21−1)を実行する。
次に、命令コード22が第2命令読出指示に応じて命令メモリ20から読み出される。このとき、セレクタ11は、命令コード22に含まれる特定ビット24と実行命令ビット26とを受け取る。また、バッファ13は、命令コード22に含まれる特定ビット24を受け取る(ステップS1)。
セレクタ11が受け取った特定ビット24は、“0”を表している。即ち、NOPコードを表している(ステップS2−YES)。
この場合、セレクタ11は、保持部12に保持された実行命令ビット25−1を読み出し、バッファ13と保持部12とに出力する。保持部12は、セレクタ11から出力された実行命令ビット25−1を保持(ラッチ)する。バッファ13は、受け取った特定ビット24“0”と、セレクタ11から出力された実行命令ビット25−1とを含むNOPコードをデコーダ3にバス1を介して出力する(ステップS4)。ここで、デコーダ3は、NOPコードに対応する動作を命令実行部4に実行させる。
以上説明したように、本発明の第1実施形態による演算装置では、出力器2は、命令コード21−1とNOPコードとをこの順にデコーダ3にバス1を介して出力する。このとき、命令コード21−1は、NOPコード以外の命令コードを表す特定ビット23と、命令コード21−1の内容を表す実行命令ビット25−1とを含んでいる。NOPコードは、NOPコードを表す特定ビット24と、命令コード21−1に含まれる実行命令ビットと同じ実行命令ビット25−1とを含んでいる。このため、NOPコードがバス1上に出力されたとき、バス1の複数の信号線のうち、特定ビットに対応する信号線に蓄えられた電荷のみが遷移する。このように、本発明の第1実施形態による演算装置では、バス1の信号線を駆動するときの消費電力を低減することができる。
(第2実施形態)
本発明の第2実施形態による演算装置では、第1実施形態による演算装置の出力器2をソフトウェアにより実現することができる。この場合、命令コードと、命令コードの次に出力されるNOPコードとをコンパイラ、あるいはアセンブラによって予めに生成しておく。これにより、本発明の第2実施形態による演算装置では、実行命令ビット25−iをラッチする命令出力部10を設ける必要なく、第1実施形態による演算装置よりも装置規模を小さくすることができる。
図4は、本発明の第2実施形態による演算装置の構成を示すブロック図である。第2実施形態による演算装置は、バス1、出力器2、デコーダ3、命令実行部4、プログラムカウンタ(PC)5を具備している。出力器2、デコーダ3は、バス1に接続されている。プログラムカウンタ5は、出力器2に接続され、命令実行部4は、デコーダ3に接続されている。
出力器2は、命令メモリ30を備えている。命令メモリ30には、コンピュータプログラム(以下、プログラム)40が格納されている。出力器2は、プログラム40により動作する。図2に示されるように、プログラム40には、m個(mは1以上の整数)の命令コード21−1〜21−mと、m個のNOP(No Operation)コード41−1〜41−mとが記載されている。
命令コード21−i(i=1、2、…、m)は、出力器2によってデコーダ3にバス1を介して出力される命令コードである。命令コード21−iは、複数のビットとして8ビット、16ビット、32ビット、64ビット、…から構成され、本実施形態では32ビットから構成されているものとする。
命令コード21−iは、NOP(No Operation)コード以外の命令コードを表す特定ビット23と、命令コード21−iの内容を表す実行命令ビット25−iとを含んでいる。特定ビット23は、命令コード21−iに含まれるビットのうちの少なくとも1つのビットを表し、実行命令ビット25−iは、特定ビット23以外のビットを表している。本実施形態では、特定ビット23は、最上位ビットにより表され、その最上位ビットは、“1”により表されるものとする。
NOPコード41−i(i=1、2、…、m)は、命令コード21−iの次に出力器2によってデコーダ3にバス1を介して出力されるNOPコードである。NOPコード41−iは、複数のビットとして8ビット、16ビット、32ビット、64ビット、…から構成され、本実施形態では32ビットから構成されているものとする。
NOPコード41−iは、NOPコードを表す特定ビット24と、命令コード21−iに含まれる実行命令ビットと同じ実行命令ビット25−iとを含んでいる。特定ビット24は、命令コード22に含まれるビットのうちの少なくとも1つのビットを表し、実行命令ビット25−iは、特定ビット24以外のビットを表している。本実施形態では、特定ビット24は、最上位ビットにより表され、その最上位ビットは、“0”により表されるものとする。
バス1は、複数の信号線を含んでいる。上記の命令コード(命令コード21−i、命令コード22)が32ビットから構成されている場合、バス1は、32本の信号線を含んでいる。上記の命令コードの32ビットのそれぞれは、32本の信号線のそれぞれに対応付けられている。
プログラムカウンタ5は、命令メモリ20に格納された命令コードを読み出すための命令読出指示を出力する。
命令コード21−1を読み出す場合、第1命令読出指示がプログラムカウンタ5から命令メモリ30に与えられる。このとき、命令メモリ30内のプログラム40は、第1命令読出指示に応じて命令コード21−1をデコーダ3にバス1を介して出力する。
次に、NOPコードを読み出す場合、第2命令読出指示がプログラムカウンタ5から命令メモリ30に与えられる。このとき、命令メモリ30内のプログラム40は、第2命令読出指示に応じて、命令コード21−1の次のNOPコードであるNOPコード41−1をデコーダ3にバス1を介して出力する。
デコーダ3は、命令メモリ30から出力された命令コード21−1を受け、命令コード21−1に含まれる特定ビット23“1”により、命令メモリ30から出力された命令コードがNOPコード以外のコードであることを認識する。デコーダ3は、その命令コード21−1に含まれる実行命令ビット25−1により、命令コード21−1をデコードする。命令実行部4は、デコーダ3によりデコードされた命令(命令コード21−1)を実行する。
次に、デコーダ3は、命令メモリ30から出力されたNOPコード41−1を受け、NOPコード41−1に含まれる特定ビット24“0”により、命令メモリ30から出力された命令コードがNOPコードであることを認識する。デコーダ3は、そのNOPコード41−1に対応する動作を命令実行部4に実行させる。
命令コード21−1に含まれる実行命令ビット25−1のうち、10ビットが“1”を表しているものとする。また、命令コード21−1に含まれる特定ビット23が“1”を表している。このため、命令コード21−1がバス1上に出力されたとき、バス1の32本の信号線のうちの11本の信号線には電荷が蓄えられる。
命令コード21−1の次にバス1上に出力されるNOPコード41−1は、特定ビット24と、直前にバス1上に出力された実行命令ビット25−1とを含んでいる。このため、NOPコード41−1がバス1上に出力されたとき、バス1の32本の信号線のうち、最上位ビットに対応する第1信号線に蓄えられた電荷のみが放電される(第1信号線に蓄えられた電荷のみが“1”から“0”に遷移する)。
このように、命令コード21−1、NOPコード41−1に含まれる実行命令ビット25−1のうちの10ビットが“1”を表している場合、バス1を駆動する消費電力は、NOPコードに含まれるビットが全て“0”を表している場合に比べて、低減される。したがって、本発明の第2実施形態による演算装置では、命令コード21−1、NOPコード41−1に含まれる実行命令ビット25−1のうち、“1”を表しているビットが多ければ多いほど、従来の演算装置に比べて、消費電力を低減する効果がある。
次に、図6を参照して、本発明の第2実施形態による演算装置の出力器2の動作について説明する。
命令メモリ30内のプログラム40は、第1命令読出指示をプログラムカウンタ5から受け取る(ステップS11)。
プログラム40が受け取った第1命令読出指示は、命令コード21−1を読み出すための命令読出指示を表している(ステップS12−NO)。
この場合、プログラム40は、特定ビット23“1”と実行命令ビット25−1とを含む命令コード21−1をデコーダ3にバス1を介して出力する(ステップS13)。ここで、デコーダ3は、命令コード21−1をデコードし、命令実行部4は、デコーダ3によりデコードされた命令(命令コード21−1)を実行する。
次に、プログラム40は、第2命令読出指示をプログラムカウンタ5から受け取る(ステップS11)。
プログラム40が受け取った第2命令読出指示は、NOPコードを読み出すための命令読出指示を表している(ステップS12−YES)。
この場合、プログラム40は、命令コード21−1を出力した後のNOPコードであることを認識し、特定ビット24“0”と実行命令ビット25−1とを含むNOPコード41−1をデコーダ3にバス1を介して出力する(ステップS14)。ここで、デコーダ3は、NOPコード41−1に対応する動作を命令実行部4に実行させる。
以上説明したように、本発明の第2実施形態による演算装置では、出力器2は、命令コード21−1とNOPコード41−1とをこの順にデコーダ3にバス1を介して出力する。このとき、命令コード21−1は、NOPコード以外の命令コードを表す特定ビット23と、命令コード21−1の内容を表す実行命令ビット25−1とを含んでいる。NOPコード41−1は、NOPコードを表す特定ビット24と、命令コード21−1に含まれる実行命令ビットと同じ実行命令ビット25−1とを含んでいる。このため、NOPコード41−1がバス1上に出力されたとき、バス1の複数の信号線のうち、特定ビットに対応する信号線に蓄えられた電荷のみが遷移する。このように、本発明の第2実施形態による演算装置では、バス1の信号線を駆動するときの消費電力を低減することができる。
また、本発明の第2実施形態による演算装置では、第1実施形態による演算装置の出力器2をソフトウェアにより実現することができる。これにより、本発明の第2実施形態による演算装置では、実行命令ビット25−iをラッチする命令出力部10を設ける必要なく、第1実施形態による演算装置よりも装置規模を小さくすることができる。
図1は、本発明の第1実施形態による演算装置の構成を示すブロック図である。 図2は、本発明の第1実施形態による演算装置の出力器の命令メモリに格納された命令コードを表す。 図3は、本発明の第1実施形態による演算装置の出力器の命令出力部の動作を示すフローチャートである。 図4は、本発明の第2実施形態による演算装置の構成を示すブロック図である。 図5は、本発明の第2実施形態による演算装置の出力器の命令メモリ内のコンピュータプログラムに記載された命令コードを表す。 図6は、本発明の第2実施形態による演算装置の出力器の動作を示すフローチャートである。
符号の説明
1 バス
2 出力器
3 デコーダ
4 命令実行部
5 プログラムカウンタ(PC)
10 命令出力部
11 セレクタ
12 保持部
13 バッファ
20 命令メモリ
21−1〜21−m 命令コード
22 命令コード
23 特定ビット
24 特定ビット
25−1〜25−m 実行命令ビット
26 実行命令ビット
30 命令メモリ
40 コンピュータプログラム
41−1〜41−m NOPコード

Claims (8)

  1. 信号線と、
    前記信号線に接続されたデコーダと、
    前記信号線に接続され、第1命令コードとNOP(No Operation)コードとをこの順に前記デコーダに前記信号線を介して出力する出力器とを具備し、
    前記第1命令コードは、前記NOPコード以外の命令コードを表す第1特定ビットと、前記第1命令コードの内容を表す第1実行命令ビットとを含み、
    前記NOPコードは、前記NOPコードを表す第2特定ビットと、前記第1実行命令ビットとを含む
    演算装置。
  2. 請求項1に記載の演算装置において、
    前記出力器は、
    前記第1命令コードと第2命令コードとをこの順に受け取る命令出力部を備え、
    前記第2命令コードは、前記第2特定ビットと、第2実行命令ビットとを含み、
    前記命令出力部は、
    前記第1命令コードに含まれる前記第1特定ビットに基づいて、前記第1命令コードを前記デコーダに前記信号線を介して出力し、
    前記第2命令コードに含まれる前記第2特定ビットに基づいて、前記NOPコードを前記デコーダに前記信号線を介して出力する
    演算装置。
  3. 請求項2に記載の演算装置において、
    前記出力器は、
    複数の命令コードを格納するメモリを具備し、
    前記命令出力部は、
    前記メモリに格納された前記複数の命令コードのうち、前記第1命令コードと前記第2命令コードとをこの順に受け取る
    演算装置。
  4. 請求項2又は3に記載の演算装置において、
    前記命令出力部は、
    前記第1命令コードを受け取り、前記第1命令コードに含まれる前記第1特定ビットに基づいて、前記第1命令コードに含まれる前記第1実行命令ビットを出力するセレクタと、
    前記セレクタから出力された前記第1実行命令ビットを保持する保持部と、
    前記信号線に接続され、前記第1命令コードに含まれる前記第1特定ビットを受け取り、前記第1特定ビットと前記セレクタから出力された前記第1実行命令ビットとを含む前記第1命令コードを前記デコーダに前記信号線を介して出力するバッファとを具備し、
    前記セレクタは、前記第2命令コードを受け取り、前記第2命令コードに含まれる前記第2特定ビットに基づいて、前記保持部に保持された前記第1実行命令ビットを出力し、
    前記バッファは、前記第2命令コードに含まれる前記第2特定ビットを受け取り、前記第2特定ビットと前記セレクタから出力された前記第1実行命令ビットとを含む前記NOPコードを前記デコーダに前記信号線を介して出力する
    演算装置。
  5. 請求項3又は4に記載の演算装置において、
    更に、
    第1命令読出指示と第2命令読出指示とをこの順に出力するプログラムカウンタを具備し、
    前記第1命令コードが前記第1命令読出指示に応じて前記メモリから前記命令出力部に出力され、
    前記第2命令コードが前記第2命令読出指示に応じて前記メモリから前記命令出力部に出力される
    演算装置。
  6. 請求項1〜5のいずれかに記載の演算装置において、
    更に、
    前記デコーダに接続された命令実行部を具備し、
    前記デコーダは、前記出力器から出力された前記第1命令コードをデコードし、
    前記命令実行部は、前記デコーダによりデコードされた前記第1命令コードを実行する
    演算装置。
  7. 第1命令コードをデコーダに信号線を介して出力するステップと、
    前記第1命令コードを前記デコーダに出力した後、NOP(No Operation)コードを前記デコーダに前記信号線を介して出力するステップとを具備し、
    前記第1命令コードは、前記NOPコード以外の命令コードを表す第1特定ビットと、前記第1命令コードの内容を表す第1実行命令ビットとを含み、
    前記NOPコードは、前記NOPコードを表す第2特定ビットと、前記第1実行命令ビットとを含む
    信号線制御方法。
  8. メモリに格納されたコンピュータプログラムであって、
    デコーダに信号線を介して出力される第1命令コードと、
    前記第1命令コードが出力された後に前記デコーダに前記信号線を介して出力されるNOP(No Operation)コードとを備え、
    前記第1命令コードは、前記NOPコード以外の命令コードを表す第1特定ビットと、前記第1命令コードの内容を表す第1実行命令ビットとを含み、
    前記NOPコードは、前記NOPコードを表す第2特定ビットと、前記第1実行命令ビットとを含む
    コンピュータプログラム。
JP2004207717A 2004-07-14 2004-07-14 演算装置と信号線制御方法 Pending JP2006031284A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2004207717A JP2006031284A (ja) 2004-07-14 2004-07-14 演算装置と信号線制御方法
US11/179,579 US20060015704A1 (en) 2004-07-14 2005-07-13 Operation apparatus and instruction code executing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004207717A JP2006031284A (ja) 2004-07-14 2004-07-14 演算装置と信号線制御方法

Publications (1)

Publication Number Publication Date
JP2006031284A true JP2006031284A (ja) 2006-02-02

Family

ID=35600810

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004207717A Pending JP2006031284A (ja) 2004-07-14 2004-07-14 演算装置と信号線制御方法

Country Status (2)

Country Link
US (1) US20060015704A1 (ja)
JP (1) JP2006031284A (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140102432A1 (en) * 2012-10-16 2014-04-17 Diamond Products, Limited Cooling System For Concrete Saw

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6442701B1 (en) * 1998-11-25 2002-08-27 Texas Instruments Incorporated Power saving by disabling memory block access for aligned NOP slots during fetch of multiple instruction words
US6907511B2 (en) * 2001-06-11 2005-06-14 Fujitsu Limited Reducing transitions on address buses using instruction-set-aware system and method
US7089438B2 (en) * 2002-06-25 2006-08-08 Micron Technology, Inc. Circuit, system and method for selectively turning off internal clock drivers

Also Published As

Publication number Publication date
US20060015704A1 (en) 2006-01-19

Similar Documents

Publication Publication Date Title
US8707013B2 (en) On-demand predicate registers
KR100464406B1 (ko) 가변길이 vliw 명령어를 위한 디스패치 장치 및 방법
JP4986431B2 (ja) プロセッサ
CN102893254A (zh) 条件式比较指令
CN1320450C (zh) 提供可变宽度的至少六路加法指令的方法及相应装置
JP4921310B2 (ja) 命令ビット長削減方法
CN102884505A (zh) 数据处理装置、和数据处理方法
KR101497346B1 (ko) 명령으로서 데이터 값을 평가하기 위한 시스템 및 방법
EP2542963B1 (en) System and method of processing hierarchical very long instruction packets
JP2006031284A (ja) 演算装置と信号線制御方法
JP2003044271A (ja) 情報処理装置及び情報処理方法
CN101253480A (zh) 具有实时动态可变指令集的计算机
JP5233078B2 (ja) プロセッサ及びその処理方法
WO2007083421A1 (ja) プロセッサ
US7774764B2 (en) Method and system for efficient range and stride checking
JP7506718B2 (ja) ジャンプ命令に基づくパイプライン処理を制御するプロセッサ及びプログラム
JP3867804B2 (ja) 集積回路装置
JP2006092158A (ja) デジタル信号処理回路
US20120117360A1 (en) Dedicated instructions for variable length code insertion by a digital signal processor (dsp)
JP2013539882A (ja) データ要素の条件付き選択
JP5263497B2 (ja) 信号処理プロセッサ及び半導体装置
JP2004005738A5 (ja)
JP2005149297A (ja) プロセッサおよびそのアセンブラ
JP5263498B2 (ja) 信号処理プロセッサ及び半導体装置
CN118502764A (zh) 一种代码编译方法及电子设备

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060607

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080917

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080919

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081030

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081120

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090311