JP3033597B2 - プライオリティーエンコーダ及びこれを用いた半導体集積回路 - Google Patents
プライオリティーエンコーダ及びこれを用いた半導体集積回路Info
- Publication number
- JP3033597B2 JP3033597B2 JP2208483A JP20848390A JP3033597B2 JP 3033597 B2 JP3033597 B2 JP 3033597B2 JP 2208483 A JP2208483 A JP 2208483A JP 20848390 A JP20848390 A JP 20848390A JP 3033597 B2 JP3033597 B2 JP 3033597B2
- Authority
- JP
- Japan
- Prior art keywords
- bit
- instruction
- logic
- bits
- register
- 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
Links
Landscapes
- Executing Machine-Instructions (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
た半導体集積回路、さらにはマイクロコンピュータに関
し、例えばマルチレジスタ転送命令やビットサーチ命令
の実行サイクル短縮に適用して有効な技術に関するもの
である。
タ転送命令毎に1個のジスタを指定して命令を実行して
いたのでは処理効率が悪いため、1命令で複数個のレジ
スタからメモリにデータ転送を行うことができるような
マルチレジスタ転送命令をサポートするマイクロコンピ
ュータが提供されており、例えば日立マイクロコンピュ
ータ・データブック・8ビット/16ビットマルチチップ
(昭和58年9月発行)に記載されているHD68000があ
る。
指定フィールド若しくはレジスタリストを有し、同レジ
スタ指定フィールドのビット列の各ビットにはレジスタ
番号が割り当てられていて、選択されるべきレジスタ番
号は論理1のビットによって指定するようになってい
る。斯るレジスタ指定フィールドから転送対象とされる
レジスタ番号を得るには、そのビット列に含まれる論理
1のビット位置を検出することが必要になる。従来はレ
ジスタ指定フィールドのビット列を1ビットづつ下位側
にシフトしてその最下位ビットの論理値を順番に調べて
いた。
あるバイト或いはワードを最小単位とするが、データ処
理内容によってはバイト境界やワード境界をまたいだ領
域(ビットフィールド)のデータを処理しなければなら
ないような場合があり、このときには、メモリアクセス
データなどにおいて所要のビット位置を検出してビット
フィールドのデータを取得しなければならない。このよ
うな場合にもバイト或いはワード単位でアクセスしたデ
ータに対して1ビットシフト処理を繰り返しながら所要
論理値のビット位置を探していた。
理値のビット位置を探すために1ビットシフト処理を繰
り返する技術では、目的ビットに到達するまでに無駄な
処理ステップを繰り返すことになる。例えばレジスタ指
定フィールドの上位側に論理1のビットが存在している
場合、下位側から1ビットづつシフトしてその論理値を
調べていくと、上位側の目的ビットに到達するまでには
実質的に無駄な処理サイクルを繰り返さなければならな
い。これにより、マルチレジスタ転送命令によって複数
個のレジスタ転送1を命令で実行することができても実
行サイクル数はそれ程少なくならない場合があり、例え
ば汎用レジスタ方式が採用されているようなマイクロコ
ンピュータにおいて、割込み発生によるスタックをマル
チレジスタ転送命令で対処してもスタック処理の高速化
に限界があった。ビットサーチ命令についても同様に命
令実行時間を短縮することができなかった。
要論理値のビット位置を短時間に調べることができるプ
ライオリティーエンコーダを提供することにある。
時間を短縮することができる半導体集積回路を提供する
ことにある。
時間を短縮することができる半導体集積回路を提供する
ことにある。
細書の記述並びに添付図面から明らかになるであろう。
要を簡単に説明すれば下記の通りである。
列的にラッチ回路で保持し、これに保持されている並列
情報をビット位置検出回路で受け、該情報のビット列に
おける所定位置から最も近い位置にある所定論理値のビ
ットと他のビットを区別可能な識別ビット列を生成して
出力すると共に、この識別ビット列をリセット論理回路
に戻して、該識別ビット列において他のビットと区別さ
れる特定ビット位置に応ずるラッチ回路の保持ビットを
反転させるようにして、順次ラッチ回路の保持情報を更
新しながら、ビット列に含まれる所定論理値のビット位
置を1個づつ示す識別ビット列を、初期ラッチ情報に含
まれる所定論理値のビット数に応ずる回数をもって連続
的に出力するように、プライオリティーエンコーダを構
成するものである。
路とリセット論理回路はセット・リセット型のフリップ
フロップ列によって構成することができる。
う制御手段と、制御手段によって制御されて命令を実行
する実行手段とを含む半導体集積回路に上記プライオリ
ティーエンコーダを含める場合、このプライオリティー
エンコーダは、マルチレジスタ転送命令によってデータ
転送を行うレジスタの種類をレジスタ指定フィールドの
ビット列から取得する処理や、ビットサーチ命令を実行
するときのオペランドから所定論理値のビット位置を検
出する処理などに適用することができる。
て構成することができる。
チ回路が保持した後、ビット位置検出回路はその初期ラ
ッチ情報に含まれるビット列の最上位又は最下位から最
も近い位置にある所定論理値のビットとその他のビット
とを区別する識別ビット列を出力する。この識別ビット
列が供給されるリセット回路は、識別ビット列において
他のビットと区別される所定ビットにより、これに対応
する所定論理値のビットだけを論理反転するようにして
ラッチ回路の保持情報を更新する。この更新されたラッ
チ情報に対しても同様の処理が施されることにより、初
期ラッチ情報において上位側又は下位側から第2番目に
近い位置の所定論理値ビットの位置を示すビット列が出
力される。したがって、例えば論理1のビットを2ビッ
ト含む8ビットのビット列(00100100)から論理1のビ
ット位置を探すとき、2回の出力動作によって夫々のビ
ット位置を示す情報(00100000),(00000100)が連続
的に得られる。これにより、ビット列に対してこれに含
まれる所要論理値のビット位置探索処理時間の短縮を達
成する。
エンコーダが示される。
ないが、8ビットのビット列を入力して処理するもので
あり、2ビットの入力を1単位とする論理ブロック2〜
5を含み、それらは相互に同じ回路構成を持ち、外部か
ら8ビットの入力ビット列(入力データとも記す)Ia〜
Ihが与えられ、それに対する処理結果として8ビットの
識別ビット列(以下単に識別データとも記す)Oa〜Ohを
外部に出力する。
プフロップの列、7はビット位置検出回路、9a〜9hは識
別ビット列Oa〜Ohを夫々のフリップフロップ6a〜6hのリ
セット端子に帰還する帰還経路である。
ゲートNOR1,NOR2によって構成されたスタティック型ラ
ッチ回路を主体に、クロック信号CLK1の立上り変化に同
期して入力ビット列Ia〜Ihをラッチ回路に取り込むため
のアンドゲートAND1,AND2と、クロック信号CLK2の立上
り変化に同期して識別ビット列Oa〜Ohを取り込むための
アンドゲートAND3を含む。このアンドゲートAND3は論理
1入力によってスタティック型ラッチ回路のラッチ情報
を論理0にリセットするための論理として機能する。こ
のフリップフロップ6a〜6hにおいて、ノアゲートNOR1の
出力が正転出力とされ、ノアゲートNOR2の出力が反転出
力とされる。
6a〜6hに保持されている並列情報を受け、該情報のビッ
ト列における最下位ビットから最も近い位置にある論理
1のビットをそのままの論理1に保つと共にそれ以外の
ビットを全て論理0にして当該他のビットと区別可能に
した前記識別ビット列Oa〜Ohを生成して出力するもので
ある。例えば、夫々の論理回路ブロック2〜5毎に検出
論理ユニット12〜15を有し、各ユニットは2入力ナンド
ゲートNAND1と、2個の3入力ナンドゲートNAND2,NAND3
と、夫々のナンドゲートNAND1〜NAND3の出力を受けるイ
ンバータINV1〜INV3を含む。初段検出論理ユニット12に
おいて3個のナンドゲートNAND1〜NAND3には論理1に固
定された信号Maが共通に供給されると共に、ナンドゲー
トNAND1の他の入力にはフリップフロップ6aの正転出力
(ノアゲートNOR1の出力)が供給され、ナンドゲートNA
ND2の残りの入力にはフリップフロップ6a,6bの反転出力
(ノアゲートNOR2の出力)が、そしてナンドゲートNAND
3の残りの入力にはフリップフロップ6bの正転出力(ノ
アゲートNOR1の出力)とナンドゲートNAND1の出力が供
給される。前記インバータINV2の出力は次段検出論理ユ
ニットのための信号Mbとして当該ユニットに含まれる3
個のナンドゲートNAND1〜NAND3に供給され、順次信号Mc
〜Mdが後段の論理ユニットへと伝達されるようになって
いる。
トNAND1は2入力共に論理1のとき、対応するフリップ
フロップが保持する論理1をそのままの論理レベルでイ
ンバータINV1から出力させる。ナンドゲートNAND3は、
その直近の上位ビット側のナンドゲートNAND1の出力を
受ける結果、直近上位ビットのフリップフロップが論理
1を保持するときはインバータINV3の出力を論理0に強
制する。ナンドゲートNAND2は、自分自身を含む検出論
理ユニット及びその上位側全ての検出論理ユニットの何
れの出力も論理0である場合にはインバータINV2の出力
を論理1にして次段に伝達するが、自分自身を含む検出
論理ユニット又はその上位側の検出論理ユニットの何れ
かの出力が論理1である場合にはインバータINV2の出力
を論理0にして次段に伝達する。
タINV1,INV3の出力を外部に与えるための出力回路であ
り、各検出論理ユニットにおけるインバータINV1,INV3
の出力を受けるクロックドインバータCINV1,CINV2と、
それらの出力を反転するインバータINV4,INV5によって
構成される。クロックドインバータCINV1,CINV2はクロ
ック信号CLK3のローレベル期間において出力可能にされ
る。
の一例タイミングチャートが示される。
Ihが例えば[11000001](左側が最下位ビット)である
とすると、クロック信号CLK1の論理1への変化(時刻t
1)に同期してその入力ビット列Ia〜Ihがフリップフロ
ップ6a〜6hに並列的にラッチされる。ラッチされた情報
は、ビット位置検出回路7に供給される。この例に従え
ば、Ma=論理1、Ia=論理1であるから、フリップフロ
ップ6aはセット状態にされて、その正転出力(ノアゲー
トNOR1の出力)が論理1(ノードNa)になり、初段検出
論理ユニット12のナンドゲートNAND1の出力は論理0に
される。これに応じて当該初段検出論理ユニット12にお
けるナンドゲートNAND3の出力は、フリップフロップ6b
の保持情報が論理1(ノードNb=論理1)であるにも拘
らず論理1にされる。また、初段検出論理ユニット12に
おけるナンドゲートNAND2の出力はフリップフロップ6a
が論理1情報を保持しているため論理1にされ、これに
応じて論理0を採る信号Mbが次段検出論理ユニットに供
給される結果、第2段目から最終段の検出論理ユニット
13〜15に含まれる全てのナンドゲートNAND1及びNAND3の
出力は論理1にされる。したがって、時刻t2にクロック
信号CLK3がハイレベルに反転されるとこれに同期して出
力される識別ビット列Oa〜Ohは[10000000]とされる。
このビット列は前記初期入力ビット列Ia〜Ih即ち[1100
0001]の最下位ビットに論理1のビットを含むことを意
味する。
9a〜9hを介してフリップフロップ6a〜6hのリセット端子
に供給される。これによりクロック信号CLK2のハイレベ
ルへの変化(時刻t3)に同期して論理1のビットをを取
り込む初段フリップフロップ6aがリセットされ、論理0
のビットを取り込むことになるそれ以外のフリップフロ
ップ6b〜6hはリセットされずに初期入力ビットIb〜Ihを
維持する。これによりフリップフロップ6a〜6hは[0100
0001]なる第1中間値を保持することになる。この第1
中間値は同様にビット位置検出回路7に供給され、前記
同様の論理動作によって初段検出論理ユニット12のナン
ドゲートNAND3の出力が論理0にされ、その他のナンド
ゲートNAND1〜NAND3の出力は論理1にされる。したがっ
て、時刻t4にクロック信号CLK3がハイレベルに反転され
ると、これに同期して出力される識別ビット列Oa〜Ohは
[01000000]とされる。このビット列は前記初期入力ビ
ット列Ia〜Ih即ち[11000001]の最下位ビットから第2
番目のビットに論理1のビットを含むことを意味する。
9a〜9hを介してフリップフロップ6a〜6hのリセット端子
に供給される。これによりクロック信号CLK2のハイレベ
ルへの変化(時刻t5)に同期して論理1のビットをを取
り込むフリップフロップ6bがリセットされ、論理0のビ
ットを取り込むことになるそれ以外のフリップフロップ
6a,6c〜6hはリセットされず、これにより[01000001]
なる第1中間値は[00000001]なる第2中間値に更新さ
れる。この第2中間値において、第3ビット目から最上
位ビットまでは初期入力ビットIc〜Ihと等しい論理値を
保持している。この第2中間値も同様にビット位置検出
回路7に供給され、前記同様の論理動作によって各検出
論理ユニット12〜15に含まれるのナンドゲートNAND1及
びNAND3のうち最終段検出論理ユニット15のナンドゲー
トNAND3の出力が論理0にされる。したがって、時刻t6
にクロック信号CLK3がハイレベルに反転されると、これ
に同期して出力される識別ビット列Oa〜Ohは[0000000
1]とされる。このビット列は前記初期入力ビット列Ia
〜Ih即ち[11000001]の最上位ビットに論理1のビット
を含むことを意味する。
9a〜9hを介してフリップフロップ6a〜6hのリセット端子
に供給される。これによりクロック信号CLK2のハイレベ
ルへの変化(時刻t7)に同期して論理1のビットをを取
り込むフリップフロップ6hがリセットされ、これにより
[00000001]なる第2中間値は[00000000]なる第3中
間値に更新される。この第3中間値も同様にビット位置
検出回路7に供給されるが、全ビット論理0であるた
め、全てのナンドゲートNAND1及びNAND3の出力が論理1
にされる。したがって、時刻t8にクロック信号CLK3がハ
イレベルに反転されると、これに同期して出力される識
別ビット列Oa〜Ohは[00000000]とされ、前記初期入力
ビット列Ia〜Ihには論理1の別のビットは最早存在しな
いことを意味する。
る。
理1のビット位置は、クロック信号によって規定される
各動作サイクルCYC毎に出力される識別ビット列Oa〜Oh
の内容(それに含まれる論理1を示す1ビットの位置)
によって知ることができる。
は、初期入力ビット列Ia〜Ihに含まれる論理1のビット
配置がどのような配置であっても、また何ビットあって
も、クロック信号によって各動作サイクルCYC毎に出力
されてくるから、論理1のビット位置を各動作サイクル
CYC毎に連続的に取得することができる。
態をもって最早有効なビット位置情報が出力されてこな
いことを知ることができる。
してこれに含まれる論理値1のビット位置を順次短時間
に調べることができる。
エンコーダ1を利用したマイクロコンピュータの一実施
例が示される。
されないが、インタフェース部31、命令制御部32、命令
実行部33などがシリコンのような1個の半導体基板に形
成されて成る。
ログラムカウンタの値に基づいてマクロ命令を命令キュ
ー40にプリフェッチさせ、命令キュー40から出力される
マクロ命令をマイクロアドレスコントローラ41が受け、
これが出力するマイクロアドレスによってマイクロROM4
2から順次マイクロ命令を制御部43に読出しながらイン
タフェース部31や命令実行部33を制御して命令を実行さ
せるようになっている。マイクロROM42は各種マクロ命
令毎に種々のマイクロ命令系列を備えたマイクロプログ
ラムを保有する。前記マイクロアドレスコントローラ41
はマクロ命令をデコードして当該命令に対応するマイク
ロ命令系列の先頭マイクロ命令アドレスを生成して出力
する。マイクロ命令系列におけるそれ以降のマイクロ命
令アドレスは直前に読出されたマイクロ命令のネクスト
アドレス情報を利用してマイクロアドレスコントローラ
41が指定する。このマイクロアドレスコントローラ41は
マイクロプログラムの分岐制御も行ったりする。制御部
43はマイクロ命令をデコードするためのマイクロ命令デ
コーダやその他の制御論理を有し、マイクロ命令デコー
ダの出力制御信号やその他の制御論理などを通した各種
制御信号をインタフェース部31及び命令実行部33などに
出力する。
回路51、前記実施例のプライオリティーエンコーダ1、
アドレス演算回路52などを含む。レジスタアレイ50はデ
ータの一時記憶に利用されるような汎用レジスタ群やア
キュムレータなどを含み、リードデータバス53及びライ
トデータバス54に接続される。リードデータバス53はプ
ライオリティーエンコーダ1のデータ入力端子や算術論
理演算回路51のデータ入力端子に結合され、プライオリ
ティーエンコーダ1のデータ出力端子は算術論理演算回
路51のデータ入力端子や制御部43に接続され、また、算
術論理演算回路51のデータ出力端子はライトデータバス
54に結合される。
バス53、ライトデータバス54、アドレス演算回路52、制
御部43に接続され、外部との間でデータ、アドレス、制
御信号を入出力する。
が、メモリやレジスタに対するデータ転送命令、そして
各種算術演算や論理演算のための演算命令をサポートす
るが、特に、マルチレジスタ転送命令及びビットフィー
ルドに対するビットサーチ命令の双方もサポートする。
ペレーションコード指定フィールド60と、複数個の転送
元レジスタを指定するためのレジスタ指定フィールド61
と、転送先メモリアドレスの指定フィールド62を含むフ
ォーマットを有し、そのレジスタ指定フィールド61のビ
ット列B1〜B8の各ビットにはレジスタ番号が割り当てら
れていて、選択されるべきレジスタ番号は論理1のビッ
トによって指定されるようになっている。斯るレジスタ
指定フィールド61から転送対象とされるレジスタ番号を
得るには、そのビット列B1〜B8に含まれる論理1のビッ
ト位置をプライオリティーエンコーダ1で検出し、その
結果を制御部43に与えてレジスタ選択信号63を生成する
ようになっている。例えば、命令キュー40にプリフェッ
チされているマルチレジスタ転送命令を実行するとき、
そのオペレーションコードはマイクロアドレスコントロ
ーラ41に供給されてデコードされ、そのデコード結果に
基づいて当該命令を実行するためのマイクロ命令が順次
マイクロROM42から読出されて制御部43に供給される。
レジスタ指定フィールド61に含まれるビット列B1〜B8は
リードバス53を経由してプライオリティーエンコーダ1
に供給される。そのビット列B1〜B8は第1図で説明した
初期入力ビットIa〜Ihに相当し、プライオリティーエン
コーダ1は、当該ビット列B1〜B8において最下位ビット
から最も近い位置の論理1のビットを検出して順次識別
ビット列を制御部43に与える。前記実施例で説明した動
作サイクルCYCは本実施例に従えばマイクロ命令の1命
令処理ステップに呼応され、動作サイクルCYC毎に、プ
ライオリティーエンコーダ1から出力される識別ビット
列とマイクロ命令のデコード結果とが所定の制御論理43
Lに与えられ、これによって形成されるレジスタ選択信
号63によりレジスタアレイ50に含まれる所定のレジスタ
が選択される。例えばビット列B1〜B8が[11000001]で
あるとすると、最初の動作サイクルCYCではビットB1に
割り当てられているレジスタが選択され、次のサイクル
ではビットB2に割り当てられているレジスタが選択さ
れ、さらに次のサイクルではビットB8に割り当てられて
いるレジスタが選択される。このようにしてマイクロ命
令の処理ステップ毎に指定されるレジスタに対しては、
その保持情報が図示しないメモリに転送される。
ータ30によるデータ処理単位であるバイト(8ビット)
を最小単位とするが、データ処理内容によっては第5図
に示されるようにバイト境界をまたいだ領域(ビットフ
ィールド)のデータ例えばアドレスAiのビットD3からア
ドレスAjのビットD2までの8ビットを一単位として処理
しなければならないような場合があり、このときはバイ
ト境界毎にアクセスされるメモリデータに対して所要の
ビット位置を検出して所要のビットフィールドを取得し
なければならない。このようなメモリアクセスデータに
対して所要のビット位置を検出する処理をビットサーチ
命令によって行う。例えばアドレスAiのバイトデータD1
〜D8において、最下位ビットD1から最も近い位置にある
論理1のビットを起点にバイト境界を超えて8ビットの
データを取得するためのビットサーチ命令がデコードさ
れると、アドレス演算回路33がアドレスAiを出力して図
示しない外部メモリから当該アドレスAiに対応するバイ
トデータD1〜D8が読み込まれる。このメモリアクセスデ
ータD1〜D8はリードバス53を介してプライオリティーエ
ンコーダ1に供給され、これにより、データD1〜D8の中
で最下位ビットD1に最も近い位置の論理1のビット位置
を示す情報が出力される。例えばビットD3が最下位ビッ
トに最も近い論理1のビットである場合、プライオリテ
ィーエンコーダ1は[0010000]のビット列を持つ識別
ビット列を出力する。この識別ビット列は算術論理演算
回路51をそのまま通ってレジスタアレイ50内部の所定レ
ジスタに格納される。このようにして格納された識別ビ
ット列に基づいてバイト境界を超えた8ビットのデータ
に対して所要のビット位置の検出が行われる。
ールドに含まれる論理1のビットを示す識別ビット列を
動作サイクルCYC毎に順次連続的に出力するから、従来
のようにビット列の中から所要論理値のビット位置を探
すために1ビットシフト処理を行う必要はなく、目的ビ
ットに到達するまでに無駄な処理ステップを繰り返さな
くてもよい。
よって複数個のレジスタ転送を1命令で実行するときの
命令実行サイクル数を減らすことができる。
れているようなマイクロコンピュータにおいて、割込み
発生によるスタックをマルチレジスタ転送命令で対処す
るとき、スタック処理の高速化を図ることができる。
スデータを受けるプライオリティーエンコーダ1は、そ
のメモリアクセスデータに含まれる論理1のビット位置
を示す情報をマイクロ命令の処理サイクル毎に得ること
ができる。
列の中から所要論理値のビット位置を探すために1ビッ
トシフト処理を繰り返す必要がないので、実質的に無駄
な処理ステップを繰り返す必要はなく、ビットサーチ命
令の実行サイクル数を最小限に減らすことができ、ビッ
トサーチ命令の実行時間を短縮することができる。
て具体的に説明したが、本発明はそれに限定されるもの
ではなく、その要旨を逸脱しない範囲において種々変更
することができる。
列は8ビットに限定されず16ビットや32ビットなどデー
タ処理単位などに基づいて適宜変更可能である。また、
上記実施例では論理1のビット位置を最下位ビットに近
い方から検出していく論理について説明したが、最上位
ビットから近い順に探したり、或いは任意のビット位置
を基準にしてもよく、また、検出すべき論理は論理0で
あってもよい。また、フリップフロップに含まれるスタ
ティックラッチ回路の論理やリセットの論理、さらには
ビット位置検出論理などは適宜変更可能である。
明をその背景となったマイクロコンピュータに適用した
場合について説明したが、本発明はそれに限定されるも
のではなく、画像処理用のコントローラやその他の論理
LSIなど各種の半導体集積回路に広く適用することがで
きる。本発明は、少なくともビット列から所定論理のビ
ット位置を得ることが必要な条件のものに適用すること
ができる。
って得られる効果を簡単に説明すれば下記の通りであ
る。
路に保持されている並列ビット列に対して基準位置から
最も近い所定論理値のビット位置を探して出力し、その
出力により探し出された位置のビットにより直前のラッ
チビットをリセットもしくは反転する動作を繰り返して
行くから、ビット列にランダムに含まれる所定論理値の
ビット位置を動作サイクルに従って連続的に取得するこ
とができ、これにより、ビット列に対してこれに含まれ
る所要論理値のビット位置探索処理時間を短縮すること
ができるという効果がある。
集積回路に前記プライオリティーエンコーダを含めるこ
とにより、マルチレジスタ転送命令によってデータ転送
を行うレジスタの種類をレジスタ指定フィールドのビッ
ト列から取得する処理や、ビットサーチ命令を実行する
ときのときのオペランドから所定論理値のビット位置を
検出する処理などに対する命令実行サイクル数を減らす
ことができるという効果がある。
ンピュータに適用することにより、マイクロコンピュー
タの機能向上に寄与することができる。
実施例論理回路図、 第2図は第1図に示されるプライオリティーエンコーダ
の一例動作を説明するためのタイミングチャート、 第3図は第1図のプライオリティーエンコーダを含むマ
イクロコンピュータの一実施例のブロック図、 第4図はマルチレジスタ転送命令の一例命令フォーマッ
ト図、 第5図はビットフィールドの一例を示す説明図である。 1……プライオリティーエンコーダ、2〜5……論理ブ
ロック、Ia〜Ih……入力ビット列、Oa〜Oh……出力ビッ
ト列、6a〜6h……フリップフロップ、7……ビット位置
検出回路、9a〜9h……帰還経路、NOR1,NOR2……スタテ
ィックラッチ構成用ノアゲート、AND3……リセット論理
構成用アンドゲート、12〜15……検出論理ユニット、30
……マイクロコンピュータ、32……命令制御部、33……
命令実行部、41……マイクロアドレスコントローラ、42
……マイクロROM、43……制御部、50……レジスタアレ
イ。
Claims (6)
- 【請求項1】外部から供給される複数ビットの情報を並
列的に入力してラッチ可能なラッチ回路と、 前記複数個のラッチ回路に保持されている並列情報を受
け、該情報のビット列における所定位置から最も近い位
置にある所定論理値のビットと他のビットを区別可能な
識別ビット列を生成して外部に出力するビット位置検出
回路と、 前記ビット位置検出回路から外部に出力すべき識別ビッ
ト列を受け、該識別ビット列において他のビットと区別
される特定ビット位置に応ずるラッチ回路の保持ビット
を反転させるリセット論理回路と、 を含んで成るものであることを特徴とするプライオリテ
ィーエンコーダ。 - 【請求項2】外部から供給される複数ビットの情報を並
列的に入力して保持可能なセット・リセット型の複数個
のフリップフロップの列と、 前記フリップフロップ列に保持されている並列情報を受
け、該情報のビット列における所定位置から最も近い位
置にある所定論理値のビットと他のビットを区別可能な
識別ビット列を生成して外部に出力するビット位置検出
回路と、 前記ビット位置検出回路から外部に出力すべき識別ビッ
ト列を前記フリップフロップ列のリセット端子に帰還さ
せて、該識別ビット列において他のビットと区別される
特定ビット位置に応ずるフリップフロップの保持ビット
を反転させる帰還経路と、 を含んで成るものであることを特徴とするプライオリテ
ィーエンコーダ。 - 【請求項3】請求項1又は2記載のプライオリティーエ
ンコーダを含んで成るものであることを特徴とする半導
体集積回路。 - 【請求項4】命令の解読手段と、この解読結果に基づい
て制御を行う制御手段と、制御手段によって制御されて
命令を実行する実行手段とを含む半導体集積回路であっ
て、 前記実行手段は請求項1又は2記載のプライオリティー
エンコーダを含み、 前記命令解読手段はマルチレジスタ転送命令を解読する
論理を含み、 前記制御手段は、マルチレジスタ転送命令の解読結果に
基づいて、マルチレジスタ転送命令に含まれるレジスタ
リスト情報をプライオリティーエンコーダに供給して出
力される転送先レジスタ指定情報を受け、これによって
指定されるレジスタとの間でデータ転送を行う論理を含
んで、 成るものであることを特徴とする半導体集積回路。 - 【請求項5】命令の解読手段と、この解読結果に基づい
て制御を行う制御手段と、制御手段によって制御されて
命令を実行する実行手段とを含む半導体集積回路であっ
て、 前記実行手段は請求項1又は2記載のプライオリティー
エンコーダを含み、 前記命令解読手段はビットフィールドに対するビットサ
ーチ命令を解読する論理を含み、 前記制御手段は、ビットサーチ命令の解読結果に基づい
て、該命令のオペランドをプライオリティーエンコーダ
に供給してそこから出力される情報を一時記憶させる論
理を含んで、 成るものであることを特徴とする半導体集積回路。 - 【請求項6】前記解読手段、制御手段、及び実行手段を
含む中央処理装置を備えてマイクロコンピュータ化され
て成るものであることを特徴とする請求項4又は5記載
の半導体集積回路。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2208483A JP3033597B2 (ja) | 1990-08-06 | 1990-08-06 | プライオリティーエンコーダ及びこれを用いた半導体集積回路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2208483A JP3033597B2 (ja) | 1990-08-06 | 1990-08-06 | プライオリティーエンコーダ及びこれを用いた半導体集積回路 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0491519A JPH0491519A (ja) | 1992-03-25 |
JP3033597B2 true JP3033597B2 (ja) | 2000-04-17 |
Family
ID=16556915
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2208483A Expired - Lifetime JP3033597B2 (ja) | 1990-08-06 | 1990-08-06 | プライオリティーエンコーダ及びこれを用いた半導体集積回路 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3033597B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7581083B2 (en) | 2002-03-27 | 2009-08-25 | Sony Corporation | Operation processing device, system and method having register-to-register addressing |
-
1990
- 1990-08-06 JP JP2208483A patent/JP3033597B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPH0491519A (ja) | 1992-03-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5511207A (en) | Program control circuit determining the designated number of times a sequence of instructions is repetitively executed to prevent further execution of a jump instruction | |
US4438492A (en) | Interruptable microprogram controller for microcomputer systems | |
US4574349A (en) | Apparatus for addressing a larger number of instruction addressable central processor registers than can be identified by a program instruction | |
EP0238090B1 (en) | Microcomputer capable of accessing internal memory at a desired variable access time | |
US3943494A (en) | Distributed execution processor | |
US3990052A (en) | Central processing unit employing microprogrammable control for use in a data processing system | |
US5455955A (en) | Data processing system with device for arranging instructions | |
US4037094A (en) | Multi-functional arithmetic and logical unit | |
JPS6114535B2 (ja) | ||
US5097407A (en) | Artificial intelligence processor | |
GB1318231A (en) | Data-processing systems | |
US4323964A (en) | CPU Employing micro programmable control for use in a data processing system | |
US4403287A (en) | Microprocessor architecture having internal access means | |
US4348724A (en) | Address pairing apparatus for a control store of a data processing system | |
US4388682A (en) | Microprogrammable instruction translator | |
US5497459A (en) | System for testing instruction queue circuit and central processing unit having the system | |
US5761467A (en) | System for committing execution results when branch conditions coincide with predetermined commit conditions specified in the instruction field | |
JPH0124655Y2 (ja) | ||
US3962683A (en) | CPU programmable control system | |
EP0223150B1 (en) | Information processing apparatus | |
US5253349A (en) | Decreasing processing time for type 1 dyadic instructions | |
US4360869A (en) | Control store organization for a data processing system | |
JPS6112288B2 (ja) | ||
US5034879A (en) | Programmable data path width in a programmable unit having plural levels of subinstruction sets | |
KR100374401B1 (ko) | 마이크로 명령을 기초로 프로그램 가능한 명령을 실행하는하드웨어 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313117 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080218 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090218 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090218 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100218 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110218 Year of fee payment: 11 |
|
EXPY | Cancellation because of completion of term | ||
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110218 Year of fee payment: 11 |