JP2006031284A - 演算装置と信号線制御方法 - Google Patents
演算装置と信号線制御方法 Download PDFInfo
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30181—Instruction operation extension or modification
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30145—Instruction 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
図1は、本発明の第1実施形態による演算装置の構成を示すブロック図である。第1実施形態による演算装置は、バス1、出力器2、デコーダ3、命令実行部4、プログラムカウンタ(PC)5を具備している。出力器2、デコーダ3は、バス1に接続されている。プログラムカウンタ5は、出力器2に接続され、命令実行部4は、デコーダ3に接続されている。
命令コード21−iは、NOP(No Operation)コード以外の命令コードを表す特定ビット23と、命令コード21−iの内容を表す実行命令ビット25−iとを含んでいる。特定ビット23は、命令コード21−iに含まれるビットのうちの少なくとも1つのビットを表し、実行命令ビット25−iは、特定ビット23以外のビットを表している。本実施形態では、特定ビット23は、最上位ビットにより表され、その最上位ビットは、“1”により表されるものとする。
命令コード22は、NOPコードを表す特定ビット24と、ドントケアを表す実行命令ビット26とを含んでいる。特定ビット24は、命令コード22に含まれるビットのうちの少なくとも1つのビットを表し、実行命令ビット26は、特定ビット24以外のビットを表している。本実施形態では、特定ビット24は、最上位ビットにより表され、その最上位ビットは、“0”により表されるものとする。
命令コード21−1を読み出す場合、第1命令読出指示がプログラムカウンタ5から命令メモリ20に与えられる。このとき、第1命令読出指示に応じて命令コード21−1が命令メモリ20から命令出力部10に出力される。
次に、命令コード22を読み出す場合、第2命令読出指示がプログラムカウンタ5から命令メモリ20に与えられる。このとき、第2命令読出指示に応じて命令コード22が命令メモリ20から命令出力部10に出力される。
次に、命令出力部10は、命令メモリ20から読み出された命令コード22を受け取る。このとき、命令出力部10は、命令コード22に含まれる特定ビット24“0”に基づいて、NOPコードをデコーダ3にバス1を介して出力する。出力されたNOPコードは、命令コード22に含まれる特定ビット24“0”と、命令コード21−1に含まれる実行命令ビット25−1とを含んでいる。
次に、デコーダ3は、命令出力部10から出力されたNOPコードを受け、NOPコードに含まれる特定ビット24“0”により、命令出力部10から出力された命令コードがNOPコードであることを認識する。デコーダ3は、そのNOPコードに対応する動作を命令実行部4に実行させる。
命令コード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”を表しているビットが多ければ多いほど、従来の演算装置に比べて、消費電力を低減する効果がある。
この場合、セレクタ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)を実行する。
この場合、セレクタ11は、保持部12に保持された実行命令ビット25−1を読み出し、バッファ13と保持部12とに出力する。保持部12は、セレクタ11から出力された実行命令ビット25−1を保持(ラッチ)する。バッファ13は、受け取った特定ビット24“0”と、セレクタ11から出力された実行命令ビット25−1とを含むNOPコードをデコーダ3にバス1を介して出力する(ステップS4)。ここで、デコーダ3は、NOPコードに対応する動作を命令実行部4に実行させる。
本発明の第2実施形態による演算装置では、第1実施形態による演算装置の出力器2をソフトウェアにより実現することができる。この場合、命令コードと、命令コードの次に出力されるNOPコードとをコンパイラ、あるいはアセンブラによって予めに生成しておく。これにより、本発明の第2実施形態による演算装置では、実行命令ビット25−iをラッチする命令出力部10を設ける必要なく、第1実施形態による演算装置よりも装置規模を小さくすることができる。
命令コード21−iは、NOP(No Operation)コード以外の命令コードを表す特定ビット23と、命令コード21−iの内容を表す実行命令ビット25−iとを含んでいる。特定ビット23は、命令コード21−iに含まれるビットのうちの少なくとも1つのビットを表し、実行命令ビット25−iは、特定ビット23以外のビットを表している。本実施形態では、特定ビット23は、最上位ビットにより表され、その最上位ビットは、“1”により表されるものとする。
NOPコード41−iは、NOPコードを表す特定ビット24と、命令コード21−iに含まれる実行命令ビットと同じ実行命令ビット25−iとを含んでいる。特定ビット24は、命令コード22に含まれるビットのうちの少なくとも1つのビットを表し、実行命令ビット25−iは、特定ビット24以外のビットを表している。本実施形態では、特定ビット24は、最上位ビットにより表され、その最上位ビットは、“0”により表されるものとする。
命令コード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から出力されたNOPコード41−1を受け、NOPコード41−1に含まれる特定ビット24“0”により、命令メモリ30から出力された命令コードがNOPコードであることを認識する。デコーダ3は、そのNOPコード41−1に対応する動作を命令実行部4に実行させる。
命令コード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”を表しているビットが多ければ多いほど、従来の演算装置に比べて、消費電力を低減する効果がある。
この場合、プログラム40は、特定ビット23“1”と実行命令ビット25−1とを含む命令コード21−1をデコーダ3にバス1を介して出力する(ステップS13)。ここで、デコーダ3は、命令コード21−1をデコードし、命令実行部4は、デコーダ3によりデコードされた命令(命令コード21−1)を実行する。
この場合、プログラム40は、命令コード21−1を出力した後のNOPコードであることを認識し、特定ビット24“0”と実行命令ビット25−1とを含むNOPコード41−1をデコーダ3にバス1を介して出力する(ステップS14)。ここで、デコーダ3は、NOPコード41−1に対応する動作を命令実行部4に実行させる。
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命令コードとNOP(No Operation)コードとをこの順に前記デコーダに前記信号線を介して出力する出力器とを具備し、
前記第1命令コードは、前記NOPコード以外の命令コードを表す第1特定ビットと、前記第1命令コードの内容を表す第1実行命令ビットとを含み、
前記NOPコードは、前記NOPコードを表す第2特定ビットと、前記第1実行命令ビットとを含む
演算装置。 - 請求項1に記載の演算装置において、
前記出力器は、
前記第1命令コードと第2命令コードとをこの順に受け取る命令出力部を備え、
前記第2命令コードは、前記第2特定ビットと、第2実行命令ビットとを含み、
前記命令出力部は、
前記第1命令コードに含まれる前記第1特定ビットに基づいて、前記第1命令コードを前記デコーダに前記信号線を介して出力し、
前記第2命令コードに含まれる前記第2特定ビットに基づいて、前記NOPコードを前記デコーダに前記信号線を介して出力する
演算装置。 - 請求項2に記載の演算装置において、
前記出力器は、
複数の命令コードを格納するメモリを具備し、
前記命令出力部は、
前記メモリに格納された前記複数の命令コードのうち、前記第1命令コードと前記第2命令コードとをこの順に受け取る
演算装置。 - 請求項2又は3に記載の演算装置において、
前記命令出力部は、
前記第1命令コードを受け取り、前記第1命令コードに含まれる前記第1特定ビットに基づいて、前記第1命令コードに含まれる前記第1実行命令ビットを出力するセレクタと、
前記セレクタから出力された前記第1実行命令ビットを保持する保持部と、
前記信号線に接続され、前記第1命令コードに含まれる前記第1特定ビットを受け取り、前記第1特定ビットと前記セレクタから出力された前記第1実行命令ビットとを含む前記第1命令コードを前記デコーダに前記信号線を介して出力するバッファとを具備し、
前記セレクタは、前記第2命令コードを受け取り、前記第2命令コードに含まれる前記第2特定ビットに基づいて、前記保持部に保持された前記第1実行命令ビットを出力し、
前記バッファは、前記第2命令コードに含まれる前記第2特定ビットを受け取り、前記第2特定ビットと前記セレクタから出力された前記第1実行命令ビットとを含む前記NOPコードを前記デコーダに前記信号線を介して出力する
演算装置。 - 請求項3又は4に記載の演算装置において、
更に、
第1命令読出指示と第2命令読出指示とをこの順に出力するプログラムカウンタを具備し、
前記第1命令コードが前記第1命令読出指示に応じて前記メモリから前記命令出力部に出力され、
前記第2命令コードが前記第2命令読出指示に応じて前記メモリから前記命令出力部に出力される
演算装置。 - 請求項1〜5のいずれかに記載の演算装置において、
更に、
前記デコーダに接続された命令実行部を具備し、
前記デコーダは、前記出力器から出力された前記第1命令コードをデコードし、
前記命令実行部は、前記デコーダによりデコードされた前記第1命令コードを実行する
演算装置。 - 第1命令コードをデコーダに信号線を介して出力するステップと、
前記第1命令コードを前記デコーダに出力した後、NOP(No Operation)コードを前記デコーダに前記信号線を介して出力するステップとを具備し、
前記第1命令コードは、前記NOPコード以外の命令コードを表す第1特定ビットと、前記第1命令コードの内容を表す第1実行命令ビットとを含み、
前記NOPコードは、前記NOPコードを表す第2特定ビットと、前記第1実行命令ビットとを含む
信号線制御方法。 - メモリに格納されたコンピュータプログラムであって、
デコーダに信号線を介して出力される第1命令コードと、
前記第1命令コードが出力された後に前記デコーダに前記信号線を介して出力されるNOP(No Operation)コードとを備え、
前記第1命令コードは、前記NOPコード以外の命令コードを表す第1特定ビットと、前記第1命令コードの内容を表す第1実行命令ビットとを含み、
前記NOPコードは、前記NOPコードを表す第2特定ビットと、前記第1実行命令ビットとを含む
コンピュータプログラム。
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)
| 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)
| 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 |
-
2004
- 2004-07-14 JP JP2004207717A patent/JP2006031284A/ja active Pending
-
2005
- 2005-07-13 US US11/179,579 patent/US20060015704A1/en not_active Abandoned
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 |