JPH10187437A - 命令コードのビット割り付け装置および方法 - Google Patents

命令コードのビット割り付け装置および方法

Info

Publication number
JPH10187437A
JPH10187437A JP8339303A JP33930396A JPH10187437A JP H10187437 A JPH10187437 A JP H10187437A JP 8339303 A JP8339303 A JP 8339303A JP 33930396 A JP33930396 A JP 33930396A JP H10187437 A JPH10187437 A JP H10187437A
Authority
JP
Japan
Prior art keywords
instruction
instruction code
bit
bits
codes
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
JP8339303A
Other languages
English (en)
Inventor
Hajime Ogawa
一 小川
Yuji Takai
裕司 高井
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP8339303A priority Critical patent/JPH10187437A/ja
Publication of JPH10187437A publication Critical patent/JPH10187437A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Executing Machine-Instructions (AREA)

Abstract

(57)【要約】 【課題】 プロセッサの命令コードのビット割り付けに
おいて、実際のLSI上でアプリケーションを動作させ
る際の消費電力を少なくすることを目的とする。 【解決手段】 ビット割り付け部11により、命令解析
部10により得られる命令コード遷移頻度数と2命令コ
ード間の変化ビット数との積の、すべての2命令コード
の組合せに関する総和が最小になるようにビット割り付
けを行なうことによって、命令コードの変化によるビッ
ト変化を抑えられるため、消費電力を少なくすることが
できる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、マイクロプロセッ
サの命令コードのビット割り付けにおいて、命令実行時
の消費電力の低減を可能とする方法または装置に関す
る。
【0002】
【従来の技術】従来、プロセッサの命令コードのビット
割り付けは、プロセッサのデコーダ面積削減のため、で
きるだけ少ないビット数で、段数が少なくなるようにビ
ット割り付けを行っていた。
【0003】
【発明が解決しようとする課題】しかしながら、上記従
来の方法に係る命令コードのビット割り付けにおいて
は、命令セットの複雑化により使用する命令ビット数が
増大するにつれ、アプリケーションプログラムを実行す
る際の命令コードの変化によるビット変化から生じる消
費電力が増大するという問題点があった。
【0004】上記問題点に鑑み、本発明は、命令コード
の変化によるビット変化を考慮してビット割り付けを行
なうことで、アプリケーションプログラム実行時の消費
電力を削減することを目的とする。
【0005】
【課題を解決するための手段】上記目的を達成するた
め、本発明は、アプリケーションプログラムを実行する
際の命令コードの変化によるビット変化が少なくなるよ
うに、命令コードのビット割り付けを行なうことを特徴
とする。
【0006】
【発明の実施の形態】
(実施の形態1)以下、本発明の実施形態を、図面を参
照しながら説明する。
【0007】図1は、本実施形態のビット割り付け装置
の構成を示す図である。図1に示すように、本実施形態
のビット割り付け装置は、入力装置1、ディスプレイ
2、記憶装置3、エディタ部4、処理部5からなり、処
理部5はさらに、命令解析部10とビット割り付け部1
1とから構成される。
【0008】入力装置1は、キーボードまたはマウス等
で構成される。記憶装置3は、ハードディスクまたはR
AM等で構成され、エディタ部4または処理部5で取り
扱うデータを格納しておくことができる。
【0009】エディタ部4では、入力装置1からの操作
によって、処理部5に入力するためデータを作成、編集
する。具体的には、ニーモニックで表記されたアプリケ
ーションプログラムと命令セットの種類、および命令セ
ットに割り付けるビット幅(以下、指定ビット数と呼
ぶ)を記述する。
【0010】エディタ部4での編集作業は、ディスプレ
イ2上で内容を確認しながら行なうことができる。ま
た、エディタ部4での編集結果は、記憶装置3上に格納
しておき、処理部5から読み出して使用する。
【0011】次に、本実施形態のビット割り付け装置に
おける処理の流れを、図2のフローチャートに沿って説
明する。
【0012】まず、データ入力処理S1では、エディタ
部4によって、アプリケーションプログラムと命令セッ
トの種類、および指定ビット数の入力を行なう。入力作
業は、入力装置1を介して行い、ディスプレイ2上で入
力内容を確認しながら作業をおこなう。
【0013】本実施形態で入力するアプリケーションプ
ログラムの一部を(表1)に示す。命令セットの種類と
しては、(表2)に示すように、AND,OR,NO
T,MOV,BRNの5種類を入力する。また、指定ビ
ット数として、「3」を記述する。
【0014】
【表1】
【0015】
【表2】
【0016】ここで入力したデータは、記憶装置3に格
納される。次に、エラーチェック処理S2では、記憶装
置3からデータ入力処理S1で記述されたアプリケーシ
ョンプログラムを読み出し、命令解析部によって記述上
のエラーの検出をおこなう。
【0017】ステップS3では、エラーチェック処理S
2でのエラー検出の結果、エラーがあるか否かを判定す
る。エラーが無い場合には、命令コード遷移頻度測定処
理S4に移り、もしエラーがあれば、データ修正処理S
6に移る。
【0018】データ修正処理S6では、エディタ部4に
おいて、入力装置1やディスプレイ2を用いながら入力
データのエラー修正を行ない、その後、再度エラーチェ
ック処理S2に進む。
【0019】ここでは、特に記述エラーは発見されなか
ったものとし、命令コード遷移頻度測定処理S4に進
む。
【0020】命令コード遷移頻度測定処理S4では、デ
ータ入力処理S1で入力された命令セットの種類に基づ
いてアプリケーションプログラムを解析する。具体的に
は、アプリケーションプログラムを実行した際に連続し
て実行される2命令コードの組み合わせの実行頻度(以
下、命令コード遷移頻度数と呼ぶ)を測定する。
【0021】本実施形態では、(表3)で示すような測
定結果が得られたものとする。(表3)において、左欄
は2命令コードの組み合せを示し、右欄はその2命令コ
ードの命令コード遷移頻度数を示している。但し、同じ
命令が連続して実行される場合は、ビット変化が0であ
るため、記載を省略している。
【0022】
【表3】
【0023】次に、ビット割り付け処理S5では、ビッ
ト割り付け部11によって、命令コードに対してビット
割り付けを行なう。この際、命令コード遷移頻度数と2
命令コード間の変化ビット数との積の、全ての2命令コ
ードの組み合せに関する総和が最小となるように、入力
処理S1で指定された指定ビット数で、命令コードのビ
ット割り付けを行なう。
【0024】本実施形態では、(表4)に示すようなビ
ット割り付け結果が得られたものとする。
【0025】
【表4】
【0026】ここで、ANDとORには、それぞれ(0
00)と(001)が割り付けられており、両者の間の
ビット変化は1ビットである。ANDとORの2命令コ
ードの組み合せについて(表5)を参照すると、命令コ
ード遷移頻度数は5となっている。従って、ANDとO
Rの組み合せについての、変化ビット数と命令コード遷
移頻度数との積の値として、「5」が得られる。
【0027】これを全ての2命令コードの組み合せにつ
いて求めた結果を(表5)に示す。
【0028】
【表5】
【0029】(表5)から、全ての2命令コードの組み
合せについての、変化ビット数と命令コード遷移頻度数
との積の総和は、「29」となることが分かる。
【0030】以上説明したように、本実施形態によれ
ば、アプリケーションプログラム全体として命令コード
の変化によるビット変化を最小に抑えることができるた
め、ビット変化に伴う消費電力の増加を最小に抑えるこ
とが可能となる。
【0031】(実施の形態2)実施の形態1では、全て
のビット割り付けパターンについて変化ビット数と命令
コード遷移頻度数との積の総和を求め、その中からビッ
ト変化が最小となる命令コードのビット割り付けを採用
している。
【0032】しかし、必ずしもビット変化が最小となる
ビット割り付けでなくても、要求される消費電力の条件
を満たせば、他のビット割り付け方法を採ることも可能
である。
【0033】本実施形態では、処理の高速化を目指し
た、別のビット割り付け方法について説明する。
【0034】命令コード遷移頻度測定処理S4より前の
処理は、実施の形態1と同様であるので説明を省略す
る。
【0035】ビット割り付け部11におけるビット割り
付け処理S1では、命令コード遷移頻度数が大きな2命
令コードの組み合せから順に、変化ビット数が小さくな
るように命令コードのビット割り付けを行なう。
【0036】2命令コードの組み合せと、命令コード遷
移頻度数の関係は、実施の形態1と同じ(表3)を用い
る。
【0037】まず、(表3)を参照すると、命令コード
遷移頻度数が最大である2命令コード組み合せは、AN
DとORの組み合せであって、その値は「5」であるこ
とが分かる。そこで、ANDには(000)、ORには
ビット変化が最小となるように(001)を割り付け
る。
【0038】次に、NOTとMOVの組み合せの命令コ
ード遷移頻度数が「4」であるので、NOTに(01
0)、MOVにはNOTとのビット変化が1となるよう
に、(110)を割り付ける。
【0039】次に命令コード遷移頻度数が大きいのは、
ANDとMOV、ANDとBRNの組み合せの「3」で
ある。ANDとMOVついては既にビット割り付けが完
了しているので、BRNの割り付けを考える。BRNに
は、ANDとのビット変化が1となるように(100)
を割り付ける。
【0040】以上の割り付け結果を(表6)に示す。
【0041】
【表6】
【0042】(表6)の割り付け結果に基づいて、命令
コード遷移頻度数と変化ビット数の積の総和を求める
と、(表7)に示すように「32」となる。
【0043】
【表7】
【0044】本実施形態では、実施の形態1における最
適な割り付け結果である「29」と比べて若干劣るもの
の、ビット変化による消費電力の増加を抑えことが可能
である。
【0045】さらに、1つの割り付けパターンについて
の処理だけで済むため、最適に近いビット割り付けを高
速に行なうことができるという顕著な効果がある。
【0046】なお、上記各実施の形態では、データ入力
処理S1において指定ビット数を入力することとしてい
たが、指定ビット数を自動的に設定することも可能であ
る。
【0047】この場合、2を底とする使用命令数の対数
より大きい最小の整数を指定ビット数として用いる。例
えば、使用命令数が5の場合、2を底とする5の対数は
約2.32であるので、これより大きい最小の整数であ
る3を指定ビット数とする。
【0048】
【発明の効果】以上のように、本発明によれば、アプリ
ケーションプログラムの命令遷移頻度の高い関係にある
命令どうしは、ビット変化が少なくなるように各命令ビ
ットを割り付けることで、実際のLSI上でアプリケー
ションを動作させた場合に、命令コードの変化によるビ
ット変化を少なくできるため、消費電力を低く抑えるこ
とが可能となる。
【図面の簡単な説明】
【図1】本発明の実施形態のビット割り付け装置の構成
を示す図
【図2】本発明の実施形態における処理の流れを示すフ
ローチャート
【符号の説明】
1 入力装置 2 ディスプレイ 3 記憶装置 4 エディタ 5 処理部 10 命令解析部 11 ビット割り付け部

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 マイクロプロセッサの命令コードのビッ
    ト割り付けを行なう装置であって、 連続して実行される2命令コードの組合せの実行頻度
    (以下、命令コード遷移頻度数と呼ぶ)を測定する命令
    解析部と、 2命令コード間の変化ビット数と、前記命令解析部で測
    定された前記命令コード遷移頻度数とに基づいて命令コ
    ードのビット割り付けを行なうビット割り付け部とを備
    えた命令コードのビット割り付け装置。
  2. 【請求項2】 ビット割り付け部は、 全ての2命令コードの組み合せに関する、2命令コード
    間の変化ビット数と命令コード遷移頻度数との積の総和
    が最小または所定の値より小さくなるように、指定され
    たビット数で命令コードの割り付けを行なうことを特徴
    とする請求項1記載の命令コードのビット割り付け装
    置。
  3. 【請求項3】 ビット数を指定する代わりに、 2を底とする使用命令数の対数より大きい最小の整数に
    相当するビット数で命令コードの割り付けを行なうこと
    を特徴とする請求項2記載の命令コードのビット割り付
    け装置。
  4. 【請求項4】 ビット割り付け部は、 命令コード遷移頻度数が大きな2命令コードの組み合せ
    から順に、2命令コード間の変化ビット数が小さくなる
    ように、命令コードのビット割り付けを行なうことを特
    徴とする請求項1記載の命令コードのビット割り付け装
    置。
  5. 【請求項5】 マイクロプロセッサの命令コードのビッ
    ト割り付けを行なう方法であって、 連続して実行される2命令コードの組合せの実行頻度
    (以下、命令コード遷移頻度数と呼ぶ)を測定する処理
    と、 全ての2命令コードの組み合せに関する、2命令コード
    間の変化ビット数と前記命令コード遷移頻度数との積の
    総和が、最小または所定の値より小さくなるように、命
    令コードのビット割り付けを行なうビット割り付け処理
    とを備えた命令コードのビット割り付け方法。
JP8339303A 1996-12-19 1996-12-19 命令コードのビット割り付け装置および方法 Pending JPH10187437A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8339303A JPH10187437A (ja) 1996-12-19 1996-12-19 命令コードのビット割り付け装置および方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8339303A JPH10187437A (ja) 1996-12-19 1996-12-19 命令コードのビット割り付け装置および方法

Publications (1)

Publication Number Publication Date
JPH10187437A true JPH10187437A (ja) 1998-07-21

Family

ID=18326190

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8339303A Pending JPH10187437A (ja) 1996-12-19 1996-12-19 命令コードのビット割り付け装置および方法

Country Status (1)

Country Link
JP (1) JPH10187437A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6725450B1 (en) 1999-06-21 2004-04-20 Matsushita Electric Industrial Co., Ltd. Program conversion apparatus, processor, and record medium

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6725450B1 (en) 1999-06-21 2004-04-20 Matsushita Electric Industrial Co., Ltd. Program conversion apparatus, processor, and record medium

Similar Documents

Publication Publication Date Title
US20060004528A1 (en) Apparatus and method for extracting similar source code
JPH10187437A (ja) 命令コードのビット割り付け装置および方法
US20100284527A1 (en) Importance-Based Call Graph Construction
JP3470256B2 (ja) 命令コードのビット割付装置
JP4952317B2 (ja) 退避データ判別方法、退避データ判別プログラムおよび退避データ判別装置
JPH1139363A (ja) データ検証方式
JPH0331981A (ja) 文字認識装置
JPH04273533A (ja) 翻訳プログラムの手続きインライン展開方式
US7281166B1 (en) User-customizable input error handling
JPH04175828A (ja) 処理結果出力制御方式
JPH11110428A (ja) 論理回路の面積予測方法と装置および論理回路の面積予測プログラムを記憶した記憶媒体
JPH0793144A (ja) プログラム解析装置
JPH09319611A (ja) プログラム開発支援装置
KR20220014230A (ko) 인공지능 기반 워크플로우 프로세스 시스템 및 장치
CN116048995A (zh) 实现异常信息配置化的方法、系统、介质、设备及终端
JPS62216036A (ja) プログラム決定方式
JP2006331212A (ja) 論理シミュレーション方法及びその装置
JPS63276629A (ja) ファイル内レコ−ドのソ−ト方式
JP2020119153A (ja) テストパターン生成装置
JPH0511831A (ja) Nc制御装置における加工プログラム解析方法
JPS61131124A (ja) 会話入力処理方式
JPH04273344A (ja) 処理時間計算方式
JPH05313870A (ja) プログラム構造図作成方式
JPH118313A (ja) レイアウト検証装置及びレイアウト検証方法
JPH0436844A (ja) Cpuタイム測定方式