JPH07239780A - 1クロック可変長命令実行処理型命令読み込み電子計 算機 - Google Patents

1クロック可変長命令実行処理型命令読み込み電子計 算機

Info

Publication number
JPH07239780A
JPH07239780A JP6181708A JP18170894A JPH07239780A JP H07239780 A JPH07239780 A JP H07239780A JP 6181708 A JP6181708 A JP 6181708A JP 18170894 A JP18170894 A JP 18170894A JP H07239780 A JPH07239780 A JP H07239780A
Authority
JP
Japan
Prior art keywords
instruction
width
circuit
attribute
basic
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
JP6181708A
Other languages
English (en)
Inventor
Motohiro Kurisu
基弘 栗須
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.)
KURISU HIROKO
Original Assignee
KURISU HIROKO
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 KURISU HIROKO filed Critical KURISU HIROKO
Priority to JP6181708A priority Critical patent/JPH07239780A/ja
Priority to US08/368,225 priority patent/US5673410A/en
Publication of JPH07239780A publication Critical patent/JPH07239780A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/3001Arithmetic instructions
    • G06F9/30014Arithmetic instructions with variable precision
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30036Instructions to perform operations on packed data, e.g. vector, tile or matrix operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • G06F9/30149Instruction analysis, e.g. decoding, instruction word fields of variable length instructions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3802Instruction prefetching
    • G06F9/3816Instruction alignment, e.g. cache line crossing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3818Decoding for concurrent execution
    • G06F9/382Pipelined decoding, e.g. using predecoding

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Executing Machine-Instructions (AREA)
  • Advance Control (AREA)

Abstract

(57)【要約】 【目的】 命令記憶装置の効率的な使用を可能にし、且
つ1クロックで異なったサイズの命令の実行処理および
分岐処理を実現する命令読み込み装置を使って、命令を
単純化した2種類の基本命令とその機能を指定する属性
命令に分けて定義し、実際の命令の実行時に、余分なク
ロックを追加する事なく、基本命令と属性命令を組み合
わせて実行する事により、基本命令の多機能化をはか
り、旦つ処理性能を著しく高めた電子計算機。 【構成】 基本となる最小命令幅を越える命令記憶装置
と、最小命令幅を基本構成とする命令レジスターとマル
チプレクサー回路を組み合わせたシフトレジスター構造
からなる命令読み込み装置およびその制御装置と、演算
のビット幅、アドレッシング幅、ポストインクリメント
及びポストデクリメント等からなる機能指定の属性レジ
スターと、属性命令の解読装置から構成される。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明はCISC型およびRI
SC型電子計算機の命令の高速実行処理を可能にする命
令読み込み装置と高速分岐処理を可能にする先読み分岐
命令解読処理、上位命令から最下位レベルのマイクロコ
ード命令までを同一の命令記憶装置内に定義することを
可能とする装置、及び基本命令の多機能化を指定するレ
ジスターを使って基本命令の動作モードを指定する事
で、電子計算機の命令を効率よく定義し、かつ一時的に
その動作モードを変更する命令をゼロ時間で基本命令に
組み合わせて実行する事により、個々の命令の多機能化
と処理時間の高速化を可能にした装置に関するものであ
る。
【0002】
【従来の技術】従来の電子計算機は処理データ幅が8ビ
ツトの場合、命令幅も8ビット構成にする、或いはデー
タ幅が16ビットだと命令幅も16ビットにすることで
システム自体の合理性を追求した。しかしながら8ビッ
ト電子計算機の場合実際のアセンブラーコードでは1バ
イト命令というのはあまり使用されず、ほとんどが2バ
イトで、かなりの割合で3、4バイトの命令が使われ
る。この場合命令の定義効率から考えると8ビットによ
る命令定義ということで非常に良いが実行スピードは2
回、3回と命令を読み込む必要があるため遅くなる。こ
れに対し16ビット或いは32ビット電子計算機の場
合、処理スピードは命令長が大きくなって1ワードで基
本的な命令を定義することができるので高速化をはかる
ことが容易であるが、命令の定義効率を考えると8ビッ
トに比べビット数が大きいので落ちる。従って命令の定
義効率を落とさず処理スピードを上げるということは困
難であった。さらにCISC型電子計算機の場合、基本
的な命令処理は普通、数クロックかかるため、基本命令
とマイクロコード等の最下位レベルの命令を同一の記憶
領域で自由に使い分けることは殆ど実現不可能であっ
た。又、従来の電子計算機は処理データ幅が8ビットだ
と8ビットマイコン、16ビットだと16ビットマイコ
ンと言うように、基本とするビット処理幅の命令はある
が、16ビットマイコンが8ビットの命令をも実行する
かどうかは、余分に命令を割り当てる必要があるという
設計上の理由から、アッパーバージョンの設計等の場合
を除いて、考慮されることが少なかった。また32ビッ
トRISC型マイコンのような場合には8ビットあるい
は16ビットの演算処理も命令に含むという思想は元
々、皆無である。こうしてビット幅が増えれば増えるほ
どレジスター等の資源の利用効率が悪くなり、例えば3
2ビットマシンの場合10回のループ処理の為に4ギガ
のデータ処理が可能なレジスターを使うことになる。ビ
ット処理幅の増加とともに、アドレス指定範囲が広がっ
た場合にもハードウエアー資源の無駄が発生する。例え
ば、64K番地迄の領域を4ギガのアドレス範囲で指定
するといった無駄が起こる。又、間接アドレス指定等の
ポインターのインクリメントやデクリメントは基本命令
に組み込むと非常に高速にデータを転送することができ
るが、インクリメントをする場合やデクリメントをする
場合等、またまた命令が増え、プログラムを作成する者
にとっては非常に面倒である。こうして処理ビット幅や
アドレス指定範囲が大きくなるにつれて電子計算機の内
部資源の使用効率は悪くなり、あたかも刀で髭をそるよ
うな場合が頻繁に発生した。
【0003】
【発明が解決しようとする課題】本発明は基本命令幅を
原則として自由に且つなるべくビット数を少なく定義す
ることで8ビット電子計算機のように命令の定義効率を
上げて、且つ最長命令の読み込みの場合でもRISC型
電子計算機と同じように全ての命令を1クロックで読み
込み、実行処理をするのが目的である。本発明を使用す
ると今まで困難であった8ビット及び16ビットの電子
計算機の実行処理スピードを32ビット等のRISC型
電子計算機と同じように、連続して1クロックで読み込
み処理することができる。また命令の先読みを常に実行
することで分岐命令などを前処理し、分岐時においても
1クロックで次の命令に移ることができる。さらに、本
発明は、16ビットや32ビットの電子計算機で重要と
なる効率的な命令の定義を可能にすることにある。即
ち、32ビット処理の場合においても8ビット、16ビ
ットの処理を実行する命令を有し、8ビット、16ビッ
ト、24ビット、32ビットのアドレス範囲を指定した
命令の定義を可能にする。又、間接アドレス指定時のポ
インターのインクリメントやデクリメントの設定ができ
る。これらの機能を1つ1つの命令の中に実現しようと
すると限りなく多くの命令が必要となるので、そういっ
た基本命令に対する動作モードを指定する命令(以下、
属性命令と呼ぶ)を分離して定義する。本発明ではこの
属性命令を基本命令を実行中に、ゼロ時間で追加、実行
することができる。即ち基本命令単体で命令を実行する
場合でも基本命令と属性命令を組み合わせて実行する場
合でも実行処理時間が同じである。又、属性命令を使わ
ない場合には、その動作モードを指定するレジスター
(以下、属性レジスターと呼ぶ)を使用することで命令
の機能を指定することができる。属性レジスターを設定
しながら基本命令を実行したり、一時的に属性機能を変
えて基本命令を実行したりすることができる。このよう
な方法を使って効率的な命令の定義、及び命令の多機能
化をはかり、同時に処理性能の向上を実現する事を目的
とする。
【0004】
【課題を解決する為の手段】本発明は基本命令幅を越
え、且つ最大命令幅と同じサイズの命令記憶装置を使う
のが基本的な思想である。その構成は命令記憶装置、命
令読み込み装置、制御回路、基本命令の動作モードを指
定する属性レジスター及び実時間で基本命令と属性命令
を組み合わせて実行する命令サイズ決定回路からなる。
命令記憶装置は基本命令幅(ビット長:K)の倍数で最
大命令幅(ビット長:M)のサイズからなる。各々サイ
ズの異なった命令の命令記憶装置への配置は基本命令幅
を一つの単位として連続的に格納される。従って1部の
命令については連続する2つの番地に分離して格納され
る事もある。命令読み込み装置はKビット幅のレジスタ
ーとマルチプレクサー回路を1つの基本回路とし、最小
構成で全体としてM*3−Kビットのシフトレジスター
構造からなる。異なる種類の命令を基本的に連続して1
クロックで実行処理できるように読み込む事を特徴とす
る。制御回路は命令読み込み装置に新しい命令を取り込
むことやシフトレジスター内でのシフトの制御、及びあ
らかじめ命令読み込み装置に蓄えられた次の命令を分岐
命令であるのかを解読し、分岐命令でかつ分岐する時に
はその分岐命令を実行すると同時に分岐先の命令を格納
するといった内容を実行する。また最下位レベルのマイ
クロコードと上位レベルの命令の選択のためのマルチプ
レクサー回路を内臓しているので命令記憶装置のなかに
2種類の命令を混在させる事ができる。本発明は、さら
に上記シフトレジスター構造からなる命令読み込み装置
を使用して、最大命令幅の2倍からなる命令記憶装置と
マルチプレクサー回路を組み合わせて、1クロックで命
令の最大幅の2倍の命令を実行できる様な命令読み込み
装置を提案する。又、命令の基本動作の指定のための属
性レジスターは8、16、32ビットの処理幅の指定、
8、16、24、32ビットのアドレス範囲指定、及び
間接アドレス指定時のポインターのソースアドレスおよ
びデステイネーションアドレスのインクリメント、デク
リメント指定を保持する。基本命令単体で実行される場
合にはその動作は属性レジスターの指定に従う。基本命
令と属性命令が組み合わせて実行される場合には基本命
令の動作は属性命令の指定に従う。属性命令には各属性
を個別に指定するもの、全部の属性を1命令で指定する
もの、全部の属性を1命令で指定し且つ属性レジスター
に新しい属性を格納する命令がある。属性命令実行時に
は、シフトレジスター構造の命令レジスターに格納され
た次の命令が属性命令と判定され、現在の命令と次の属
性命令が一つの命令として実行される。ただし、もしも
1クロックで全ての命令を連続的に実行する場合には組
み合わされた命令の総和は最大命令幅を越えてはならな
い。属性命令を指定すると一時的に属性レジスターの該
当属性を無視して、基本命令は属性命令に従って実行す
る。このように常に次の命令をプリデコードし、処理に
必要な命令を命令読み込み装置に蓄えることにより1ク
ロックで二つ以上の命令を組み合わせて実行することを
可能にした。
【0005】
【作用】基本命令幅をなるべく小さくすれば命令の定義
効率を上げる事ができ、また命令記憶装置の幅を最大命
令幅にあわせると1クロックで命令の実行が可能になる
ことから、これまでのような高速処理の実現の為には、
命令及び処理ビット長の拡大が不可欠と言うような命令
記憶装置の非効率的な使用を無くし、且つ処理スピード
を格段に向上する事が可能になった。実際、1チップ・
マイクロコンピュータのような機器組み込み用メモリー
内臓型CPUの場合には命令記憶装置の構造が8ビット
幅であろうと32ビット幅であろうと全体の記憶容量が
同じであれば回路規模としては変わらない。また従来の
マイクロコンピュータのように命令の先読みのために必
要な命令キューバッファーとほぼ同じ回路規模のシフト
レジスター回路を使用しているので、本発明を実現する
と回路規模を従来のままに維持したうえで、性能を飛躍
的に向上することができる。又、命令セットの縮小化に
よって高速化を実現したRISC型マイコンではあるが
CISC型と同等の命令を構築するにはいくつかの命令
を組み合わせる必要があり処理時間の低速化を招く結果
となったが、本発明のように命令セットを、単機能化し
た2種類の基本命令群と属性命令群に分離して定義し、
処理中に読み込み時間を増加させることなく組み合わせ
る手法をとることでCISC型と同等の命令をRISC
型の処理時間で実行することを可能にした。
【0006】
【実施例】以下、この発明の機能とそれを実現する回路
を図面、タイミングチャート等を使って詳細に説明す
る。図7は本発明の基本機能として、異なったサイズの
命令の実行例を示したものである。この例では最小命令
幅を8ビットとし、最大命令幅をその4倍の32ビット
としている。命令6は102H番地への分岐を実行する
もので、この例では命令8が続いて実行される。プログ
ラムカウンター:PCは命令サイズに従って加算され
る。図8は図7の命令群を実際の32ビット幅の命令記
憶装置に格納したものでビット0からビット31の方向
に向かってバイト単位で順序よく割り当てられる。命令
3の場合には最初のバイトが0000H番地のビット2
4からビット31に残りの2バイト目以降は0004H
番地のビット0からビット15に2つの番地にわたり分
離して格納される。図1は図8のような割当を有する命
令記憶装置から1クロックで命令を読み込み、実行する
為のブロック図である。#101のアドレス制御回路で
は現在の命令サイズのデータ:IS信号をもとに次に読
み出すべき命令のアドレス:ADRを生成する。[ ]
内の数字は信号のバス幅を定義している。#102の命
令記憶装置は下位2ビットのアドレスを無視し、読みだ
し時に32ビット幅の命令、D[31:0]信号を命令
読み込み用シフトレジスター#103に転送する。この
時D[31:0]の同一信号がROM[31:0]とR
OM[63:32]に分配される。最小1バイトから最
大4バイトまでのシフト制御は#104のシフトレジス
ター制御回路のS9−S0、MX、RX信号で規定され
る。基本的には図3から図5に示すように11バイトか
らなるシフトレジスターの内、上位4バイト即ちIR0
からIR3が有効な命令レジスターとして使用される
が、最大命令幅を越える一部の命令についてはその命令
サイズに応じて最長、最大命令幅の2倍迄、即ちIR4
からIR7まで使用する事ができる。この場合命令のシ
フト及び読み込み動作をスムーズに行うため最初のIR
0の部分には命令リンクを表すコードと4バイト命令以
内のサイズ数を定義し、次の1部にはその命令の残りの
サイズと内容を定義することで、命令完了後、2回シフ
ト動作をすることで命令記憶装置幅の2倍の幅の命令ま
で実行することができる。本発明では最初の1バイトで
その命令サイズをきめるものとし、IR0のデータをも
とに#105のサイズ決定用回路で命令のサイズを生成
する。命令サイズが1の時、IS信号は0、命令サイズ
が4の時IS信号は3となる。命令レジスターIR0か
らIR3は#106のデコード回路で解読され最下位レ
ベルのマイクロコード制御信号を生成する。また#10
7のマルチプレクサー回路を使って最下位レベルのマイ
クロコードを直接、命令読み込み用シフトレジスターか
ら取り出すことも可能である。この出力信号は#111
のRAM等の読み込みタイミング信号として使用され
る。#108のパイプラインレジスターはRAM等の記
憶装置のデータバス・プリチャージの時間が終了した時
点で有効な命令をラッチし、命令レジスターの内容を#
109でデコードした後、読み込んだRAMデータとレ
ジスター間で演算を実行する為に使用する。分岐時には
次の命令の信号:NIRが#112で解読されて、分岐
時BR信号が1になる。この時分岐命令のサイズはBS
信号で指定される。分岐命令ではあるが分岐しない場合
或いは分岐命令でない場合はBR信号が0で次の命令の
サイズはBS信号で指定される。図2はアドレス制御回
路の内部ブロックを表している。#201のプログラム
カウンターはENPCが1の時新しいデータを#202
の加算回路から得るが、その場合の加算値はサイズ決定
用回路からのISデータを使用する。分岐命令以外では
こうしてPCの値を変更する。命令記憶装置から次の命
令を読み込む為にPCの値にRAの値を2ビットシフト
した値を#203の+4加算回路で加算して命令記憶装
置のアドレスとして送出する。このときのRAの変化の
状態を図9に示している。RAの初期値は0で最大値は
+3である。命令読み込み用シフトレジスターに4バイ
ト以上の空きがある場合にはRAに1が加算され、空き
が無い場合には新しい読み込みは実行されずRAから1
が減算される。分岐時にはまず#112の分岐命令抽出
決定回路により次の命令のNIR[7:0]信号を解読
する。分岐する場合BR信号が1になり次の命令のアド
レスオペランドのNIR[31:8]のデータを#20
4の分岐アドレス生成回路を使って分岐アドレスに変換
し、#205のマルチプレクサー回路を通して命令記憶
装置の番地を指定する。BR信号は#206の分岐有効
FFで分岐命令が実行される時に保持される。この時分
岐先のアドレスが#207のレジスターに格納され、#
208のマルチプレクサーを通してPCに設定される。
図3から図5は本発明の中心となる命令読み込み用シフ
トレジスターの構成を表している。基本的には1バイト
から4バイトまでのシフトを可能にする4入力マルチプ
レクサー回路と命令記憶装置の命令を読み込む為のマル
チプレクサー回路、そのどちらかを選択するマルチプレ
クサー回路およびその結果を命令として保持する命令レ
ジスター回路から構成される。バイトシフト用のマルチ
プレクサー回路は#300、#303、#307、#3
11、#400、#404、#408、#500、#5
04である。命令記憶装置から命令を読み込む為のマル
チプレクサー回路は#304、#308、#312、#
401、#405、#409、#501、#505、#
508である。命令記憶装置からの読み込みか、あるい
は命令読み込みレジスター内でのシフトかの選択は#3
01、#305、#309、#313、$402、#4
06、#410、#502、#506、#509回路で
実施される。IR0〜IR3は現在実行中の命令レジス
ターでNIR[31:0]は次に実行すべき命令の内容
を意味する。図6は命令読み込み用シフトレジスターを
制御する為のシフトレジスター制御回路である。以下に
入力及び出力信号の内容を記述する。 (入力信号) INIT1、INIT2・・・シフトレジスター制御回
路の初期制御信号。 IS信号・・・現在の命令のサイズ(0=サイズ1、、
3=サイズ4)。 PC[1:0]・・・プログラムカウンターの下位2ビ
ット値。 ADR[1:0]・・・分岐時の命令記憶装置の下位2
ビットアドレス値。 BS[1:0]・・・次の命令のサイズ。 BR・・・次の命令が分岐命令で且つ分岐するときに1
になる。 (出力信号) MX[1:0]・・・命令読み込み用シフトレジスター
のシフト制御信号。 RX[3:0]・・・命令記憶装置の読み込み位置指
定。 S[9:0]・・・RX[3:0]信号およびBS信号
の解読後の制御信号。 ENS[9:0]・・・次の命令が完全にシフトレジス
ターに読み込まれていない場合不足した命令を読み込む
ための取り込み制御信号。 RA[1:0]・・・命令先読みのためのアドレスオフ
セット値。 図9は図8の命令記憶装置に格納された命令群の移動状
態を命令読み込み用レジスターIR0からIR10につ
いて示している。この時の制御信号RXは横軸に、RA
の値を縦軸に各々の状態について表している。この図で
Xはデータが不定で新しい命令を読み込む余地があるこ
とを意味する。図10は図6の各々の制御信号の状態を
図9の実例に従って表している。以下、図6の制御内容
について図9および図10を使って説明する。図10の
1)の初期状態というのは計算機にリセットがかかった
りあるいは割り込みなどが発生し、PCに新しいデータ
が設定された状態で、その場合、INIT1=1、IN
IT2=0に設定することで#603の設定5/4回路
を使ってRX信号を5にし、最初の命令群をIR1から
IR4に読み込む準備をする。#603はINIT1=
1のとき出力が5で、SEL64が1の時4でそれ以外
の場合入力信号と同じ信号が出力される。この場合#6
07の選択回路の出力は図12のようにS1からS9信
号までの全てを1に設定する。この時命令記憶装置のア
ドレスはPC+オフセット値=0であるので#610の
設定0回路によりRA信号が0になる。RX=5の値は
状態1)の終りで#605の設定位置レジスターに設定
される。#609の±1回路はインクリメントおよびデ
クリメントの回路とそれを保持するレジスター回路から
なる。その制御回路は#608で、その時の制御内容を
図15に示す。状態1)の終わりではRA信号が+1さ
れて#609の回路に設定される。図9及び図10の
2)の状態はちょうど命令1、命令2、命令3の1部が
IR1からIR4に設定された状態を示している。この
状態ではINIT1=0、INIT2=1にして#60
0のマルチプレクサー回路で強制的にPCの値を選択す
る。この信号はMX1、MX0信号として使うのでこの
場合PC=0であるのでIR1からIR4のレジスター
をIR0からIR3に転送する。PCの下位2ビットの
値が0の時には1バイトシフト、1の時には2バイトシ
フト、3の時には最大4バイトシフトが実行される。#
601のINV回路は単純なインバーター回路で入力が
0の時出力は3となり#605の設定位置レジスターが
5であるので#602の加算回路出力、即ちRX出力は
8になる。従って状態2)の終わりではIR4からIR
7に次の命令を読み込む。3)の状態以降はINIT1
及びINIT2は常に0である。3)の状態は、命令1
を実行中で、命令サイズが1であるのでIS信号は0に
なる。従ってMX信号は0であるので全体の命令レジス
ター群としては1バイトのシフトになる。#601の出
力は3となり#602をへてRX信号が11になり、命
令4の1部と命令5はIR7からIR10のレジスター
に転送される。この時選択回路#607のS7、S8、
S9の信号は1になる。4)の状態では命令サイズが2
でIS=MX=1となって命令レジスター群は全体とし
て2バイトシフトとなる。#605の設定位置レジスタ
ーは11でRX=13となって新しい命令の読み込みを
禁止する。RXが12以上の時には命令記憶装置からの
データの読み込みは行われない。#608の制御回路出
力はINC=0、DEC=1となって4)の状態の終わ
りで#609のデータはデクリメントされる。5)の状
態では命令サイズが3でIS=MX=2となって命令レ
ジスター群は全体として3バイトシフトとなる。#60
5の設定位置が13であるので#604の減算回路の出
力信号が10となって#606のマルチプレクサー回路
でRX信号として選択される。こうして次の命令6と命
令7はIR6からIR9に転送される。6)の状態では
命令サイズが4でIS=MX=3となって命令レジスタ
ー群は全体として4バイトシフトとなる。#605の設
定位置が10であるので#602の加算回路の出力信号
が10となってRX信号として出力される。こうして次
の命令がIR6からIR9に転送される。7)の状態で
は命令サイズが2でIS=MX=1となって命令レジス
ター群は全体として2バイトシフトとなる。この時次の
命令6が#112の分岐命令抽出決定回路によって検出
されてBR信号が1になり、BS信号が2となる。同時
にNIR[31:8]データが#204の分岐アドレス
生成回路で102Hを生成し#205のマルチプレクサ
ー回路を通じて命令記憶装置に出力される。この102
Hの下位2ビット値は#612のINV回路(極性反転
回路)で1にかわり、#611の加算器でBS信号と加
算されて5となり#606のマルチブレクサー回路のC
入力が選択されてRX信号となる。7)の状態の終わり
ではRX=5の位置はROM[7:0]がIR1にRO
M[15:8]がIR2に通常転送されるが、BRが1
のときには図12に示すようにIR0からIR2にはI
R2、IR3、IR5の値がシフトされる。残りのIR
3にはROM[23:16]がIR4にはROM[3
1:24]の値が設定される。この時RAの値はBRが
1であるので#616のOR回路でOに初期化される。
8)の状態では命令サイズが2でIS=MX=1となっ
て命令レジスター群は全体として3バイトシフトとな
る。8)の状態でBR信号の値と分岐アドレスが#20
6の分岐有効FF(フリップフロップ)および#207
のレジスターに保持されているので、8)の状態の終わ
り、即ち9)の状態では#201のプログラムカウンタ
ーに分岐アドレスが設定される。#613の加算器、#
614の比較器、#615のシフトイネーブル制御回路
および#617の制御回路は1つ先の命令が完全に命令
読み込み用シフトレジスター群に読み込まれていない場
合、現時点までの読み込みをそのままに追加の読み込み
を実行するもので、その場合の新しい読み込み位置:R
Xは#617のGS信号が1になって#618の設定4
回路で4が設定され現在のPOSに加算される。こうし
て追加の4バイト分が新しくシフトレジスターに読み込
まれる。図14にこの時の#615のシフトイネーブル
制御回路の真理値表を図16に#617の制御回路の真
理値表を表している。図11は本発明の命令読み取り装
置を使用した場合の代表的な命令実行の内部タイミング
チャート例である。基本的には命令の読み込みと同時に
最初にRAMのアドレスがプリチャージされて読み込み
の準備が始まる。同時にアドレス等の予備設定が実施さ
れる。パイプラインレジスターに命令が取り込まれると
確定したアドレスがただちに出力されて、読み込み、書
き込みが始まる。読み込まれたRAMデータは一時的に
保持され、レジスターと演算実行され、その結果は次の
命令のプリチャージ完了後に新しく設定される。図13
は図1の#103の命令読み込み用シフトレジスターと
#104のシフトレジスター制御回路を使って本発明の
電子計算機の命令幅を2倍にあげて、連続して1クロッ
クで命令の読み込むことを可能にする装置のブロック図
である。この場合、通常の命令は図8の様に連続的に格
納され、2つのワードにわたって格納される命令も連続
的に1クロックで読み込まれるが、最大命令幅の2倍の
命令の実行時にはワード単位で一つの命令が格納され
る。#1301の命令記憶装置の幅は#102の2倍で
その下位ワードと上位ワードは#1302および#13
03のマルチプレクサー回路とアドレスADR2信号で
選択され、#1305の回路で命令が読み込まれる。そ
の読み込み処理は#103と全く同じである。一度、S
EL64が内部フラグなどで設定されると#1304の
OR回路で#1303のマルチプレクサー回路は常に上
位ワードを出力し、#1306のAND回路によって#
1302は常に下位ワードを出力する。この時#106
のシフトレジスター制御回路のなかの#607選択回路
のSEL64はS0からS7を1にして常に命令記憶装
置から命令を読み込む状態にする。またRX信号は常に
4となって命令読み込み位置が固定される。こうして#
1301の命令記憶装置のワードデータが命令読み込み
用シフトレジスターのIR0からIR7に読み込まれ
る。図17は基本命令と属性命令を組み合わせて実行す
るか否かを判断するサイズ制御回路のブロック図であ
る。#1701のサイズ決定回路を使ってIR0の命令
レジスターから基本命令のサイズを抽出し、そのデータ
を基に#1702のマルチプレクサー回路でIR1から
IR3までの範囲で想定される次の命令の先頭命令を選
択する。基本命令の命令サイズが最大命令幅に等しい場
合には属性命令は追加して実行されない。#1703の
属性命令検出回路で基本命令に続く次の命令が属性命令
であるか否かが判断される。属性命令の場合、#170
4の属性命令サイズ決定回路で1バイト属性命令の場合
1、2バイト属性命令の場合2、3バイト属性命令の場
合3と言った具合にサイズが生成され、#1705の加
算回路で加算され、組み合わされて実行されたときの命
令サイズが生成される。#1703の属性命令検出回路
は、その属性の種類に従って制御信号を生成する。間接
アドレッシングのポストインクリメント或いはポストデ
クリメント指定の場合にはDEC_ID信号が1にな
る。また8ビット、16ビット、24ビット及び32ビ
ットアドレッシング幅指定の場合にはDEC_AM信号
が1になる。さらに8ビット、16ビット、32ビット
演算処理幅指定の場合にはDEC_DM信号が1にな
る。ALUの演算処理の属性が指定されるとDEC_A
LU信号が1になる。図18はレジスターの書き込み、
読みだし、属性レジスター回路である。#1808は属
性命令が指定されずに基本命令のみが実行されるときの
命令の属性を指定する属性レジスターでビット1から0
はデータ処理幅を指定し、#1811のマルチプレクサ
ーを通じてDM信号として出力される。属性命令と組み
合わせて実行される場合には命令レジスターのビット1
から0のデータがDEC_AM信号で解読、選択され、
DM信号として使用される。DM信号は0の時8ビット
幅を指定し、1の時16ビット、3の時32ビットのデ
ータ処理を指定する。属性レジスターのビット3から2
はアドレス範囲を指定するもので、#1810のマルチ
プレクサーを通じてAM信号として出力される。DEC
_AM信号は属性命令実行時、アドレス範囲指定された
場合に1となり命令レジスターのデータが属性レジスタ
ーに代わって出力される。AM信号はOの時8ビットア
ドレス指定、1の時16ビットアドレス指定、2の時2
4ビットアドレス指定、3の時32ビットアドレス指定
を行う。属性レジスターのビット7から4はソースオペ
ランドのポストインクリメントおよびポストデクリメン
ト、デステイネーションオペランドのポストインクリメ
ントおよびポストデクリメントを指定するもので#18
09のマルチプレクサー回路を通じて#1807のIN
C/DEC制御回路の指定をする。DEC_IDは属性
命令が実行されるときに1になり、命令レジスターの1
部が代わって出力される。#1803のレジスター回路
は基本的に二つの入力ポート、二つの出力ポートを持つ
32ビット幅のレジスター群で、この例では最小8ビッ
ト単位で指定が可能な16本のレジスターからなり、8
ビット、16ビット、24ビット及び32ビット単位で
書き込み、読み出しが可能である。通常、#1804の
読みだし回路A、#1805の読みだし回路Bはレジス
ター間演算の場合、DM信号とレジスター読み出しアド
レスのRDAおよびRDBを使って任意のビット幅のレ
ジスターの値をAYおよびBYに出力し、#1814の
ALU回路のALU_ABUSおよびALU_BBUS
にそのデータを設定し、結果がALU_QBUSを通じ
てA[31:0]のポートに入力されWRAの書き込み
アドレスに従って、#1801の書き込み回路で適当な
処理ビット幅およびレジスター位置を決定し、#180
3のレジスター回路に新しいデータが書き込まれる。#
1805の読み出し回路Bと#1802の書き込み回路
Bはインダイレクトアドレッシング時のポストインクリ
メント及びポストデクリメント操作を実行する為のもの
で、AM信号で適当なアドレス範囲に指定されたレジス
ターの値をBY信号に出力し、#1807のINC/D
EC制御回路を使って、I/D信号の指定により、その
ままの値、+1した値及び−1した値を#1802の書
き込み回路Bに送る。その後、WRBの書き込みアドレ
スとアドレス範囲指定のAM信号を使って、新しいデー
タがレジスター回路に書き込まれる。図19は属性命令
を含むプログラム例で、異なったサイズの基本命令と属
性命令が組み合わされている。属性1は1バイトの属性
命令で基本命令2に対する属性指定を行う、属性2は2
バイトの属性命令で基本命令4に対する属性指定を行
う。どちらの場合でも基本命令と属性命令のサイズの総
和は命令記憶装置の幅を越えない事とする。そうするこ
とで命令が結合されて実行される場合においても連続し
て1クロックで異なったサイズの命令を読み出すことが
できる。この例では命令1は1バイト命令、命令2は2
バイト命令という具合に基本命令を配置している。図2
0は属性命令を含むプログラムの命令記憶装置への格納
例である。下位ビットから上位ビットに向かって格納さ
れている。属性命令は二つのメモリー番地に渡って配置
されることも可能である。図21は図20の属性命令を
含むプログラムの実行時のシフトレジスター状態を示し
たもので、命令記憶装置に格納された命令群の移動状態
を命令読み込み用レジスターIR0からIR10につい
て示している。命令の読み込み手順については図9と同
じである。主な違いは状態4)に入った場合、2バイト
の命令2に続く1バイトの属性命令1が1つの命令とし
てサイズ制御回路で判定され、IS信号=2が生成さ
れ、3バイト命令として処理される。状態6)は2バイ
トの命令4が2バイトの属性命令2と組み合わせて実行
され、IS信号=3が生成され4バイト命令として処理
される。図22は図20の属性命令を含むプログラムの
実行時の各信号の状態を図6の回路に対して示したもの
である。
【0007】
【発明の効果】本発明の命令記憶装置と命令読み込み装
置を使うと、命令記憶装置の命令幅以内で異なったサイ
ズの命令を連続的に1クロックで実行できるように読み
込むことができる。これにより命令の基本幅をなるべく
小さくすることで、命令の定義の効率を上げる事ができ
る。またいかなる命令でも最小1クロックで実行処理で
きるため命令の処理速度を上げる事ができる。さらに現
在の命令ばかりでなく1つ先の命令をも解読することで
分岐命令をいち早く検出し、分岐する場合でも特別な場
合を除いて1クロックでスムーズに分岐処理ができる。
また命令記憶装置の幅を最下位レベルのマイクロコード
命令と同じ幅まで広げることで通常の命令と最下位レベ
ルの命令を同一記憶領域に定義し、1クロックで実行す
ることができる。上記の機能を実現するに必要な回路
は、命令記憶装置についていえばその構成を変えて単に
幅を広げるだけで、全体としての容量は同じである事、
また命令の先読みバッファーと同じ程度の大きさのシフ
トレジスター構造の命令読み込み装置を使用しているの
で、ほぼ現行の回路規模と同じで、性能を飛躍的に向上
することができる。また命令を単純化した基本命令群と
属性命令群に分けることで命令デコード回路の縮小化及
び高速化を可能にし、且つその2種類の命令を組み合わ
せて実行することで命令の多機能化をはかり、CISC
型の命令をRISC型計算機の処理時間で実行できる。
【図面の簡単な説明】
【図1】1クロック命令実行の為の命令読み込み処理回
【図2】アドレス制御回路
【図3】命令読み込み用シフトレジスター回路その1
【図4】命令読み込み用シフトレジスター回路その2
【図5】命令読み込み用シフトレジスター回路その3
【図6】シフトレジスター制御回路
【図7】異なったサイズの命令の実行例
【図8】異なったサイズの命令の命令記憶装置への格納
(図7参照)
【図9】異なったサイズの命令の実行時のシフトレジス
ター状態
【図10】異なったサイズの命令の実行時の各信号の状
態(図9、図6参照)
【図11】命令実行時のタイミング
【図12】#607選択回路の真理値表
【図13】最大命令幅の2倍の幅の命令記憶装置を使っ
た命令幅拡張方法
【図14】#615シフトイネーブル制御回路の真理値
【図15】#608の制御回路の真理値表
【図16】#617の 制御回路の真理値表
【図17】サイズ制御回路
【図18】レジスター書き込み、読みだし、属性レジス
ター回路
【図19】属性命令を含むプログラム例
【図20】属性命令を含むプログラムの命令記憶装置へ
の格納(図19参照)
【図21】属性命令を含むプログラム実行時のシフトレ
ジスター状態
【図22】属性命令を含むプログラム実行時の各信号の
状態(図21、図6参照)
【符号の説明】
#101・・アドレス制御回路 #102・・命
令記憶装置 #103・・命令読み込み用シフトレジスター #104・・シフトレジスター制御回路 #105・・サイズ制御回路 #106・・デ
コード回路 #107・・マルチプレクサー回路 #108・・パ
イプラインレジスター #109・・デコード回路 #110・・マ
ルチプレクサー回路 #111・・RAM #112・・分
岐命令抽出決定回路 #201・・プログラムカウンター #202・・加
算回路A+B+1 #203・・+4加算回路 #204・・分
岐アドレス生成回路 #205・・マルチプレクサー回路 #206・・分
岐有効FF #207・・レジスター #208・・マ
ルチプレクサー回路 #300・・マルチプレクサー回路 #301・・マ
ルチプレクサー回路 #302・・8ビットレジスター回路 #303・・マルチプレクサー回路 #304・・マ
ルチプレクサー回路 #305・・マルチプレクサー回路 #306・・8
ビットレジスター回路 #307・・マルチプレクサー回路 #308・・マ
ルチプレクサー回路 #309・・マルチプレクサー回路 #310・・8
ビットレジスター回路 #311・・マルチプレクサー回路 #312・・マ
ルチプレクサー回路 #313・・マルチプレクサー回路 #314・・8
ビットレジスター回路 #400・・マルチプレクサー回路 #401・・マ
ルチプレクサー回路 #402・・マルチプレクサー回路 #403・・8
ビットレジスター回路 #404・・マルチプレクサー回路 #405・・マ
ルチプレクサー回路 #406・・マルチプレクサー回路 #407・・8
ビットレジスター回路 #408・・マルチプレクサー回路 #409・・マ
ルチプレクサー回路 #410・・マルチプレクサー回路 #411・・8
ビットレジスター回路 #500・・マルチプレクサー回路 #501・・マ
ルチプレクサー回路 #502・・マルチプレクサー回路 #403・・8
ビットレジスター回路 #504・・マルチプレクサー回路 #505・・マ
ルチプレクサー回路 #506・・マルチプレクサー回路 #507・・8
ビットレジスター回路 #508・・マルチプレクサー回路 #509・・マ
ルチプレクサー回路 #510・・8ビットレジスター回路 #511・・8
ビットレジスター回路 #600・・マルチプレクサー回路 #601・・I
NV回路 #602・・加算回路A+B #603・・設
定5/4回路 #604・・減算回路A−B−1 #605・・設
定位置レジスター #606・・マルチプレクサー回路 #607・・選
択回路 #608・・制御回路 #609・・±
1回路 #610・・設定0回路 #611・・加
算器A+B+2 #612・・INV回路 #613・・加
算器A+B+2 #614・・比較器A−B #615・・シ
フトイネーブル制御回路 #616・・OR回路 #617・・制
御回路 #618・・設定4回路 #1701・・サイズ決定回路 #1702・・
マルチプレクサー回路 #1703・・属性命令検出回路 #1704・・
属性命令サイズ決定回路 #1705・・加算回路 #1801・・書き込み回路A #1802・・
書き込み回路B #1803・・レジスター回路 #1804・・
読みだし回路A #1805・・読みだし回路B #1806・・
マルチプレクサー回路 #1807・・INC/DEC制御回路 #1808・
・属性レジスター #1809・・マルチプレクサー回路 #1810・・
マルチプレクサー回路 #1811・・マルチプレクサー回路 #1812・・
AND回路 #1813・・マルチプレクサー回路 #1814・・
ALU回路
─────────────────────────────────────────────────────
【手続補正書】
【提出日】平成6年10月12日
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】発明の名称
【補正方法】変更
【補正内容】
【発明の名称】 1クロック可変長命令実行処理型
命令読み込み電子計算機

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】基本となる最小命令幅を越える命令幅を有
    する命令記憶装置を使って、命令記憶領域の中で連続し
    た2つの番地にわたって分離して格納された命令でも、
    その命令記憶装置の命令幅以内であれば、異なったサイ
    ズの命令でも、基本的に連続して1クロックで実行する
    ことを可能にする命令読み込み装置。
  2. 【請求項2】請求項1の最小命令幅がKビットで、命令
    記憶装置幅がMビットの場合に、連続して1クロックで
    命令を実行処理するために、Kビット幅のレジスターと
    マルチプレクサー回路を1つの基本回路とし、最小構成
    で全体としてM*3−Kビットからなるシフトレジスタ
    ー構造からなる命令読み込み装置。
  3. 【請求項3】請求項1の命令読み込み装置を使って次に
    実行すべき命令を現在の命令を実行している間に解読し
    て、有効な分岐命令であるかを確認した上でその分岐命
    令を実行する段階で分岐先の命令を命令読み込み装置に
    取り込む事により基本的に最小1クロックで分岐が可能
    な命令読み込み装置で、その場合、分岐先の命令が1部
    分しか読み込まれていない場合にはそれを検出し、完全
    な命令を構成するように命令の読み込みを追加して分岐
    を実行できるようにした命令読み込み装置。
  4. 【請求項4】請求項1の命令読み込み装置と命令記憶装
    置を使って命令記憶装置幅を越え、その2倍以内の幅の
    命令を実行する場合、その命令を1クロックで実行後、
    2回に分けて命令読み込み用シフトレジスターをシフト
    して次の命令の読み込みを実行する命令読み込み装置。
  5. 【請求項5】請求項1の命令読み込み装置とその命令記
    憶装置の2倍の命令幅からなる命令記憶装置、さらにマ
    ルチプレクサー回路を組み合わせることで、通常の命令
    幅の2倍の幅の命令まで、連続して1クロックで実行す
    ることを可能にする命令読み込み装置。
  6. 【請求項6】命令記憶装置の命令幅以内で最下位レベル
    のマイクロコード幅を定義する事で通常の命令と最下位
    マイクロコード命令を同一の命令記憶装置領域に混在し
    て定義し、基本的に連続して1クロックで実行すること
    を可能にする命令読み込み装置。
  7. 【請求項7】電子計算機で使用される命令を単純化した
    基本命令とその命令の多機能化を指定する属性命令に分
    離して定義し、命令実行時に基本命令だけ、或いは基本
    命令と1つ以上の属性命令を組み合わせて実行する事に
    より、実質的に多くの命令の定義と命令の高機能化を実
    現し、且つ、組み合わせた命令の幅が命令記憶装置幅以
    内であれば、連続的に1クロックでその複数の命令を処
    理する実行処理装置と命令読み込み装置。
  8. 【請求項8】請求項7の基本命令の多機能化を指定する
    属性命令として、演算のビット長指定、ROM、RA
    M、I/O空間を含むアドレス範囲の長さ指定、間接ア
    ドレス指定時のソースオペランドおよびデステイネーシ
    ョンオペランドのポストインクリメントやポストデクリ
    メント指定、及びソース、デステイネーションオペラン
    ド間の演算の関数指定を実行する処理装置。
  9. 【請求項9】請求項7の基本命令の多機能化を指定する
    属性命令が基本命令と組み合わせて実行されない場合に
    は、多機能化を指定する属性レジスターがその機能を指
    定し、基本命令はその属性レジスターの機能指定に従っ
    て実行する装置。
JP6181708A 1994-01-06 1994-06-30 1クロック可変長命令実行処理型命令読み込み電子計 算機 Pending JPH07239780A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP6181708A JPH07239780A (ja) 1994-01-06 1994-06-30 1クロック可変長命令実行処理型命令読み込み電子計 算機
US08/368,225 US5673410A (en) 1994-01-06 1995-01-03 System for aligning varying width instructions in a computer

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2177194 1994-01-06
JP6-21771 1994-01-06
JP6181708A JPH07239780A (ja) 1994-01-06 1994-06-30 1クロック可変長命令実行処理型命令読み込み電子計 算機

Publications (1)

Publication Number Publication Date
JPH07239780A true JPH07239780A (ja) 1995-09-12

Family

ID=26358870

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6181708A Pending JPH07239780A (ja) 1994-01-06 1994-06-30 1クロック可変長命令実行処理型命令読み込み電子計 算機

Country Status (2)

Country Link
US (1) US5673410A (ja)
JP (1) JPH07239780A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008083873A (ja) * 2006-09-26 2008-04-10 Yamaha Corp デジタル信号処理装置
JP2009104614A (ja) * 2008-11-25 2009-05-14 Renesas Technology Corp 情報処理装置
CN111290791A (zh) * 2019-02-20 2020-06-16 上海天数智芯半导体有限公司 具有高性能密码操作的标量单元

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998006042A1 (en) * 1996-08-07 1998-02-12 Sun Microsystems, Inc. Wide instruction unpack method and apparatus
US5859992A (en) * 1997-03-12 1999-01-12 Advanced Micro Devices, Inc. Instruction alignment using a dispatch list and a latch list
TW357318B (en) * 1997-03-18 1999-05-01 Ind Tech Res Inst Branching forecast and reading device for unspecified command length extra-purity pipeline processor
US6243798B1 (en) * 1997-10-28 2001-06-05 Microchip Technology Incorporated Computer system for allowing a two word jump instruction to be executed in the same number of cycles as a single word jump instruction
US6496920B1 (en) * 1998-03-18 2002-12-17 Qiuzhen Zou Digital signal processor having multiple access registers
US6292845B1 (en) * 1998-08-26 2001-09-18 Infineon Technologies North America Corp. Processing unit having independent execution units for parallel execution of instructions of different category with instructions having specific bits indicating instruction size and category respectively
GB2393270B (en) * 2002-09-19 2005-07-27 Advanced Risc Mach Ltd Executing variable length instructions stored within a plurality of discrete memory address regions
US9639371B2 (en) * 2013-01-29 2017-05-02 Advanced Micro Devices, Inc. Solution to divergent branches in a SIMD core using hardware pointers

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5556253A (en) * 1978-10-23 1980-04-24 Yokogawa Hokushin Electric Corp Data processor
JPS5694444A (en) * 1979-12-28 1981-07-30 Fujitsu Ltd Information processing device
JPS59154547A (ja) * 1983-02-22 1984-09-03 Hitachi Ltd 命令読出し制御方式
JPS60117335A (ja) * 1983-11-30 1985-06-24 Hitachi Ltd 情報処理装置
JPS63163634A (ja) * 1986-12-26 1988-07-07 Hitachi Ltd 命令フエツチ方式
JPH03257625A (ja) * 1990-03-08 1991-11-18 Matsushita Electric Ind Co Ltd 命令コード解読方法
JPH04286027A (ja) * 1991-03-15 1992-10-12 Fujitsu Ltd データ処理装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5438668A (en) * 1992-03-31 1995-08-01 Seiko Epson Corporation System and method for extraction, alignment and decoding of CISC instructions into a nano-instruction bucket for execution by a RISC computer

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5556253A (en) * 1978-10-23 1980-04-24 Yokogawa Hokushin Electric Corp Data processor
JPS5694444A (en) * 1979-12-28 1981-07-30 Fujitsu Ltd Information processing device
JPS59154547A (ja) * 1983-02-22 1984-09-03 Hitachi Ltd 命令読出し制御方式
JPS60117335A (ja) * 1983-11-30 1985-06-24 Hitachi Ltd 情報処理装置
JPS63163634A (ja) * 1986-12-26 1988-07-07 Hitachi Ltd 命令フエツチ方式
JPH03257625A (ja) * 1990-03-08 1991-11-18 Matsushita Electric Ind Co Ltd 命令コード解読方法
JPH04286027A (ja) * 1991-03-15 1992-10-12 Fujitsu Ltd データ処理装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008083873A (ja) * 2006-09-26 2008-04-10 Yamaha Corp デジタル信号処理装置
JP2009104614A (ja) * 2008-11-25 2009-05-14 Renesas Technology Corp 情報処理装置
CN111290791A (zh) * 2019-02-20 2020-06-16 上海天数智芯半导体有限公司 具有高性能密码操作的标量单元

Also Published As

Publication number Publication date
US5673410A (en) 1997-09-30

Similar Documents

Publication Publication Date Title
US6560697B2 (en) Data processor having repeat instruction processing using executed instruction number counter
EP2241968B1 (en) System with wide operand architecture, and method
KR940009094B1 (ko) 데이타처리 시스템
JP2816248B2 (ja) データプロセッサ
US20010010072A1 (en) Instruction translator translating non-native instructions for a processor into native instructions therefor, instruction memory with such translator, and data processing apparatus using them
JPS6217252B2 (ja)
EP0465248B1 (en) Pseudo-linear bank switching memory expansion
JPH11154114A (ja) 複数データ・フェッチのアーキテクチャを使ってテーブル・ルックアップを実行するためのシステムおよび方法
US7546442B1 (en) Fixed length memory to memory arithmetic and architecture for direct memory access using fixed length instructions
JP2001092662A (ja) プロセッサコア及びこれを用いたプロセッサ
JPH0496825A (ja) データ・プロセッサ
JPH10228376A (ja) 複数レジスタ命令を処理する方法及びプロセッサ
US5459847A (en) Program counter mechanism having selector for selecting up-to-date instruction prefetch address based upon carry signal of adder which adds instruction size and LSB portion of address register
JPH09269895A (ja) データ処理装置
US5924114A (en) Circular buffer with two different step sizes
JPH07239780A (ja) 1クロック可変長命令実行処理型命令読み込み電子計 算機
JPH1049369A (ja) データ処理装置
US6026486A (en) General purpose processor having a variable bitwidth
US5349671A (en) Microprocessor system generating instruction fetch addresses at high speed
US5867696A (en) Saving a program counter value as the return address in an arbitrary general purpose register
US6161171A (en) Apparatus for pipelining sequential instructions in synchronism with an operation clock
US4853889A (en) Arrangement and method for speeding the operation of branch instructions
US6260136B1 (en) Substitute register for use in a high speed data processor
US6505225B1 (en) Adder logic circuit and processor
JP3504355B2 (ja) プロセッサ