JPH0612522B2 - 並列処理マイクロプロセッサ - Google Patents

並列処理マイクロプロセッサ

Info

Publication number
JPH0612522B2
JPH0612522B2 JP11571889A JP11571889A JPH0612522B2 JP H0612522 B2 JPH0612522 B2 JP H0612522B2 JP 11571889 A JP11571889 A JP 11571889A JP 11571889 A JP11571889 A JP 11571889A JP H0612522 B2 JPH0612522 B2 JP H0612522B2
Authority
JP
Japan
Prior art keywords
instruction
unit
parallel processing
horizontal
words
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.)
Expired - Lifetime
Application number
JP11571889A
Other languages
English (en)
Other versions
JPH02293932A (ja
Inventor
雄一郎 池田
毅彦 林
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.)
NIPPON DENKI AISHII MAIKON SHISUTEMU KK
Original Assignee
NIPPON DENKI AISHII MAIKON SHISUTEMU KK
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 NIPPON DENKI AISHII MAIKON SHISUTEMU KK filed Critical NIPPON DENKI AISHII MAIKON SHISUTEMU KK
Priority to JP11571889A priority Critical patent/JPH0612522B2/ja
Publication of JPH02293932A publication Critical patent/JPH02293932A/ja
Publication of JPH0612522B2 publication Critical patent/JPH0612522B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、複数の演算器と複数のデータバスを持ち並列
処理が可能な並列処理マイクロプロセッサに関する。
〔従来の技術〕
従来、マイクロプロセッサでの並列処理は、ディジタル
信号処理プロセッサ(DSP)などのように水平型命令
語により直接演算器の種類や機能を指定していた。
例えば、第4図のような構成のDSPでは、水平型命令
語の各フィールドに演算器の選択情報や演算機能の種別
を記述し、それぞれの操作を直接指定し並列動作を実現
していた。すなわち、命令記憶部8から命令レジスタ9
に読み出される各水平型命令語は、加減算・論理演算フ
ィールド10,乗算フィールド11,データ転送フィー
ルド12,ループカウントフィールド13を持ち、それ
ぞれのフィールドの命令語をデコーダ14〜17から解
読して並列動作を行うよう構成されている。
〔発明が解決しようとする課題〕
上述した従来の方法では、並列動作を実現するために、
プログラム設計者が同時に実行できる操作を捜して効率
よくプログラムするよう工夫する必要があり、プログラ
ム設計に時間がかかり、またプロセッサの構造が複雑に
なると並列性の確認が煩雑になり誤りをおかしやすくな
るという欠点がある。
しかも、水平型命令語を用いるマイクロプロセッサでは
常に全フィールドを使用したプログラムとなるわけでは
なく必ず空きフィールドが存在する。このような空きフ
ィールドには通常は何もしない「No operation」コード
が書かれている。従って、命令語を記憶しておくメモリ
には使用されないビットが多かれ少なかれ存在すること
になる。
マイクロプロセッサは大抵の場合プロセッサ内に命令語
を記憶しておくメモリを持っており、そのメモリ容量は
限定されたものとなる。このような場合、なるべくメモ
リの使用効率を良くして多くの処理を行わせることが要
求されるのにもかかわらず、水平命令語を用いた従来の
並列処理マイクロプロセッサでは、命令語を記憶してお
くメモリに使用されないビットが多く存在するという欠
点がある。
本発明の目的は、上述の欠点を除去し、プログラム設計
が容易で、命令語を記憶するメモリの使用効率のよい並
列処理マイクロプロセッサを提供することである。
〔課題を解決するための手段〕
本発明の並列処理マイクロプロセッサは、複数の演算器
と複数のデータバスを持ち並列処理が可能な並列処理マ
イクロプロセッサにおいて、垂直型命令語を記憶する命
令記憶部と、前記命令記憶部から垂直型命令語を順次読
み込みこれを解釈して一つのフィールドにのみ命令コー
ドを有する単位水平型命令語に置き換えるデコーダ部
と、単位水平型命令語を順次蓄えるマイクロ命令キュー
と、前記マイクロ命令キューに蓄えられた単位水平型命
令語間で並列処理が可能か否かを判定する並列処理判定
部と、その判定結果から並列に実行できる連続した単位
水平型命令語を一つの水平型命令語に合成するマルチプ
レクサとを備えて構成されている。
〔実施例〕
次に、本発明について図面を参照して説明する。
第1図は本発明の一実施例の構成図である。垂直命令語
が格納されている命令記憶部1と、プログラムカウンタ
(PC)により命令記憶部1から読み込んだ垂直型命令
語を解釈し、一つのフィールドにのみ命令コードを有す
る単位水平型命令語に変換するデコーダ部2と、デコー
ダ部2で変換された単位水平型命令語を保持するマイク
ロ命令キュー3と、デコーダ部2でどこのフィールドに
コードを設定したかを示すフラグビットを保持するCF
キュー40及びCFキューチのビット情報から前記マイ
クロ命令キュー3の内容のどこまでを一つの水平型命令
語に合成するのかを判定する並列処理判定回路41から
成る並列処理判定部4と、並列処理判定部からの指示で
マイクロ命令キュー3の単位水平理命令語を一つの合成
するマルチプレクサ5と、マルチプレクサ5の出力を保
持するマイクロ命令レジスタ6で構成されている。
デコーダ部2は命令記憶部1から読みだした垂直型命令
語をデコードしその垂直型命令語が水平型命令語の四つ
のフィールドのどのフィールドに属する命令であるか判
定してそのフィールドにだけ命令コードが入り、それ以
外のフィールトには何もしない「No operation」コード
が入った単位水平型命令語を生成する。また、四つのフ
ィールドのどこに命令コードを設定したかを示す4ビッ
ト構成のフラグビット(CF)を生成する。
マイクロ命令キュー3はデコーダ部2で生成された水平
型命令語を最大4個まで格納する。先入れ先出しメモリ
(FIFO)である。
CFキュー40はデコーダ部2で生成されたフラグビッ
ト(CF)を最大4個格納するFIFOであり、マイク
ロ命令キュー3と連動して動作する。並列処理判定回路
41はCFキュー40の内容を順次加算し、桁上がり発
生したならばその水平型命令語は並列処理ができないも
のと判断してそれ以前の単位水平型命令語を合成するよ
うにマルチプレクサ5に指示する。また、合成が終了し
た後はマイクロ命令キュー3とCCFキュー40の内容
を並列処理ができなくなった命令語がFIFOの先頭に
来るように更新する。FIFOは一般的にはメモリとメ
モリのアドレスを持つポインタとで構成するので、更新
動作はポインタを更新するだけで簡単に行うことができ
る。
マルチプレクサ5は並列処理判定部4の制御を受けてマ
イクロ命令キュー3から合成できる単位水平型命令語群
を入力し、一つの水平型命令語に合成しマイクロ命令レ
ジスタ6に格納する。水平型命令語の合成は入力した水
平型命令語のフィールドごとに論理和を求めることによ
り合成できる。これは、何もしない「No operation」コ
ードを0に設定しておくことで簡単に実現することがで
きる。
マイクロ命令レジスタ6は第4図のように従来の水平型
命令語を用いるマイクロプロセッサの命令レジスタ9を
そのまま使用することができ、各フィールドのコードが
各処理部へ渡され処理される。
第2はデコーダ部2の詳細を示す構成図である。垂直型
命令語7がデコーダ部2内のデコードユニット20に入
力され、単位水平型命令語23のフィールド24から2
7のどれかに格納するマイクロコード(命令コード)に
変換される。また、デコードユニット20からデコーダ
制御部21に制御信号が渡される。
デコーダ制御21はこの信号を受けて、マイクロコード
をフィールド24から27のどこに格納するかを決定し
マルチプレクサ22を切り替える信号を出力する。ま
た、フラグビット(CF)28中のコードを格納したフ
ィールドの位置を示すビット“1”にセットし、他のビ
ットは“0”にセットする。
マルチプレクサ22はデコーダ制御部21で指定された
フィールドにはデコードユニットから入力したマイクロ
コードを格納するが、それ以外のフィールドには何もし
ない「No operation」コードを格納する。第2図では乗
算フィールド25にマイクロコードが格納され、それ以
外のフィールドには何もしない「No operation」コード
が格納されている。また、CF28の左から2番目のビ
ットがセットされ、それ以外のビットはリセットされて
おり乗算フィールド25にマイクロコードが格納された
ことを示している。
こうしてデコードされた単位水平型命令語23とCC2
8はそれぞれマイクロ命令キューとCFキューに渡され
る。
第3図は並列処理判定部4の詳細を示す構成図である。
ここでCFキュー40はCF0,CF1,CF2,CF
3の四つのレベルがあり、CF0からCF2までには、
すでにマイクロ命令キュー3に格納されている各単位水
平型命令語MR0からMR2に対応するCFが格納され
ているものとする。加算回路42はCF0とCF1の各
ビットを加算しバッファレジスタ43に格納する。加算
回路44はバッファレジスタ43とCF2の各ビットを
加算しバッファレジスタ45に格納する。いま新たにC
F3にCFが格納されてきたとすると、CF3とバッフ
ァレジスタ45の各ビットが加算器46で加算され、そ
の結果最も左側のビットで桁上がりが発生する。これに
より、このフィールドがすでに何もしない「No operati
on」コード以外のマイクロコードが格納されており、マ
イクロ命令キュー3に新たに格納された単位水平画命令
語MR3は一つの水平型命令語には合成できないことが
判定される。
マルチプレクサ5の入力選択信号は各加算回路の桁上が
り信号47,48,49をデコーダ50でデコーダする
ことで簡単に生成でき桁上がりが発生しないところまで
の単位水型命令語が合成される。
〔発生の効果〕
以上説明したように、本発明によれば、並列処理を行う
マイクロプロセッサのプログラム作成時に、並列動作を
意識することなく短時間に誤りのないプログラムを作成
することができ、さらに命令語のビット幅が少なくなり
命令記憶部のメモリの使用効率を向上することができ
る。
【図面の簡単な説明】
第1図は本発明の一実施例の構成図、第2図はデコーダ
部の詳細を示す構成図、第3図は並列処理判定部の詳細
を示す構成図、第4図は従来の並列処理マイクロプロセ
ッサの一例の構成図である。 1,8……命令記憶部、2……デコーダ部、3……マイ
クロ命令キュー、4……並列処理判定部、5……マルチ
プレクサ、6……マイクロ命令レジスタ、7……垂直型
命令語、9……命令レジスタ、40……CFキュー、4
1……並列処理判定回路。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】複数の演算器と複数のデータバスを持ち並
    列処理が可能な並列処理マイクロプロセッサにおいて、
    垂直型命令語を記憶する命令記憶部と、前記命令記憶部
    から垂直型命令語を順次読み込みこれを解釈して一つの
    フィールドにのみ命令コードを有する単位水平型命令語
    に置き換えるデコーダ部と、単位水平型命令語を順次蓄
    えるマイクロ命令キューと、前記マイクロ命令キューに
    蓄えられた単位水平型命令語間で並列処理が可能か否か
    を判定する並列処理判定部と、その判定結果から並列に
    実行できる連続した単位水平型命令語を一つの水平型命
    令語に合成するマルチプレクサとを持つことを特徴とす
    る並列処理マイクロプロセッサ。
JP11571889A 1989-05-08 1989-05-08 並列処理マイクロプロセッサ Expired - Lifetime JPH0612522B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11571889A JPH0612522B2 (ja) 1989-05-08 1989-05-08 並列処理マイクロプロセッサ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11571889A JPH0612522B2 (ja) 1989-05-08 1989-05-08 並列処理マイクロプロセッサ

Publications (2)

Publication Number Publication Date
JPH02293932A JPH02293932A (ja) 1990-12-05
JPH0612522B2 true JPH0612522B2 (ja) 1994-02-16

Family

ID=14669437

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11571889A Expired - Lifetime JPH0612522B2 (ja) 1989-05-08 1989-05-08 並列処理マイクロプロセッサ

Country Status (1)

Country Link
JP (1) JPH0612522B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04260929A (ja) * 1991-01-21 1992-09-16 Mitsubishi Electric Corp データ処理装置
EP0498067A2 (en) * 1991-02-08 1992-08-12 International Business Machines Corporation Microcode generation for a scalable compound instruction set machine
EP0942357A3 (en) 1998-03-11 2000-03-22 Matsushita Electric Industrial Co., Ltd. Data processor compatible with a plurality of instruction formats

Also Published As

Publication number Publication date
JPH02293932A (ja) 1990-12-05

Similar Documents

Publication Publication Date Title
KR101812569B1 (ko) 다중 명령 세트에 의해 사용되는 레지스터 간의 매핑
US6484255B1 (en) Selective writing of data elements from packed data based upon a mask using predication
RU2137184C1 (ru) Отображение с помощью мультинаборов команд
KR930007041B1 (ko) 명령 지정방법 및 실행장치
EP0148478B1 (en) A data processor with control of the significant bit lenghts of general purpose registers
US9032185B2 (en) Active memory command engine and method
US5522051A (en) Method and apparatus for stack manipulation in a pipelined processor
JPS6029126B2 (ja) デ−タ処理装置
US4562538A (en) Microprocessor having decision pointer to process restore position
US4446517A (en) Microprogram memory with page addressing and address decode in memory
JP2653037B2 (ja) データ処理システム
JP2001092662A (ja) プロセッサコア及びこれを用いたプロセッサ
JPH03286332A (ja) デジタルデータ処理装置
US20030033503A1 (en) Single instruction having opcode and stack control field
US4674063A (en) Information processing apparatus having a sequence control function
US4691282A (en) 16-bit microprocessor system
JPH0612522B2 (ja) 並列処理マイクロプロセッサ
JPH08212075A (ja) 情報処理装置
US6922773B2 (en) System and method for encoding constant operands in a wide issue processor
JPH03271829A (ja) 情報処理装置
JPS6217773B2 (ja)
US6763449B1 (en) Operation-processing apparatus
KR20010072490A (ko) 레지스터 스택을 포함하는 데이터 프로세서, 그 처리방법, 컴퓨터 프로그램 제품 및 멀티미디어 장치
JP2819753B2 (ja) パイプライン・マイクロプロセッサ
JPS59127154A (ja) 電子計算機用命令解読装置