JPH0746310B2 - 半導体論理回路 - Google Patents
半導体論理回路Info
- Publication number
- JPH0746310B2 JPH0746310B2 JP62164325A JP16432587A JPH0746310B2 JP H0746310 B2 JPH0746310 B2 JP H0746310B2 JP 62164325 A JP62164325 A JP 62164325A JP 16432587 A JP16432587 A JP 16432587A JP H0746310 B2 JPH0746310 B2 JP H0746310B2
- Authority
- JP
- Japan
- Prior art keywords
- bits
- data
- bit
- encoding
- offset value
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/74—Selecting or encoding within a word the position of one or more bits having a specified value, e.g. most or least significant one or zero detection, priority encoders
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
【発明の詳細な説明】 [産業上の利用分野] この発明は半導体論理回路に関し、たとえば32ビット幅
のデータの上位もしくは下位から最初の“1"が立ってい
るビットの検索を行ない、その結果をたとえば2進5ビ
ットの出力オフセット値とするエンコードを高速に行な
うような半導体論理回路に関する。
のデータの上位もしくは下位から最初の“1"が立ってい
るビットの検索を行ない、その結果をたとえば2進5ビ
ットの出力オフセット値とするエンコードを高速に行な
うような半導体論理回路に関する。
[従来の技術] 従来より、マイクロプロセッサなどにおいて、たとえば
32ビット幅のデータのうち、入力オフセット分のビット
をマスクして、データをエンコードするような半導体論
理回路が用いられている。
32ビット幅のデータのうち、入力オフセット分のビット
をマスクして、データをエンコードするような半導体論
理回路が用いられている。
第9図は従来の半導体論理回路の動作を示すフロー図で
あり、第10図は同じく概略ブロック図である。
あり、第10図は同じく概略ブロック図である。
まず、第9図および第10図を参照して、32ビット幅のデ
ータをエンコードする動作について説明する。データバ
ス1には32ビット幅のデータが出力され、この32ビット
幅のデータはバレルシフタ22に与えられる。バレルシタ
フ22はその32ビット幅のデータを入力オフセット値だけ
右方向へ論理シフトし、マスクされる部分を落としてし
まう。次に、バレルシフタ22は右シフタとしたデータ
を、今度は入力オフセット値だけ左方向に論理シフトを
行なう。これにより、マスクされる部分はすべて“0"と
なる。このようにして、マスクされる部分が落とされた
データはデータバス1を介してエンコーダ21に与えら
れ、エンコード21によりエンコードすることにより、入
力オフセット値から上位のデータに対して“1"の検索が
行なわれる。
ータをエンコードする動作について説明する。データバ
ス1には32ビット幅のデータが出力され、この32ビット
幅のデータはバレルシフタ22に与えられる。バレルシタ
フ22はその32ビット幅のデータを入力オフセット値だけ
右方向へ論理シフトし、マスクされる部分を落としてし
まう。次に、バレルシフタ22は右シフタとしたデータ
を、今度は入力オフセット値だけ左方向に論理シフトを
行なう。これにより、マスクされる部分はすべて“0"と
なる。このようにして、マスクされる部分が落とされた
データはデータバス1を介してエンコーダ21に与えら
れ、エンコード21によりエンコードすることにより、入
力オフセット値から上位のデータに対して“1"の検索が
行なわれる。
[発明が解決しようとする問題点] 上述のごとく、従来の回路においては、32ビット幅のデ
ータのマスクをバレルシフタ22を用いて行なうと、エン
コードを行なうのに3ステップ要し、処理速度が遅くな
ってしまうという欠点があった。
ータのマスクをバレルシフタ22を用いて行なうと、エン
コードを行なうのに3ステップ要し、処理速度が遅くな
ってしまうという欠点があった。
それゆえに、この発明の主たる目的は、nビット幅のデ
ータの入力オフセット値によるマスクとエンコードを高
速に行なうことのできるような半導体論理回路を提供す
ることである。
ータの入力オフセット値によるマスクとエンコードを高
速に行なうことのできるような半導体論理回路を提供す
ることである。
[問題点を解決するための手段] この発明は半導体論理回路であって、nビット幅のデー
タを予め定めるビット数のデータに分割し、分割したデ
ータの各ビットが第2の論理、たとえば“0"であるか否
かを検出し、その検出出力に基づいて、エンコード結果
のうちの上位数ビットを生成しかつ分割した各データを
それぞれエンコードしてエンコード結果のうちの残りの
下位数ビットを生成し、入力オフセット値の上位数ビッ
トに基づいて分割したデータ単位でnビット幅のデータ
をマスクするとともに、入力オフセット値の残りの下位
数ビットに基づいて、分割したデータの各ビットをマス
クするように構成したものである。
タを予め定めるビット数のデータに分割し、分割したデ
ータの各ビットが第2の論理、たとえば“0"であるか否
かを検出し、その検出出力に基づいて、エンコード結果
のうちの上位数ビットを生成しかつ分割した各データを
それぞれエンコードしてエンコード結果のうちの残りの
下位数ビットを生成し、入力オフセット値の上位数ビッ
トに基づいて分割したデータ単位でnビット幅のデータ
をマスクするとともに、入力オフセット値の残りの下位
数ビットに基づいて、分割したデータの各ビットをマス
クするように構成したものである。
[作用] この発明に係る半導体論理回路は入力オフセット値の上
位数ビットと下位数ビットで別々にnビットデータのマ
スクを行ない、nビットデータを予め定めるビット数の
データに分割し、分割したビット数ごとにエンコードを
行なうことにより、nビット幅のデータの上位もしくは
下位から第1の論理のビットを検索しかつ予め定めるビ
ットのオフセット値にエンコードするとともに、入力オ
フセット値によるマスクを高速に行なう。
位数ビットと下位数ビットで別々にnビットデータのマ
スクを行ない、nビットデータを予め定めるビット数の
データに分割し、分割したビット数ごとにエンコードを
行なうことにより、nビット幅のデータの上位もしくは
下位から第1の論理のビットを検索しかつ予め定めるビ
ットのオフセット値にエンコードするとともに、入力オ
フセット値によるマスクを高速に行なう。
[発明の実施例] 第1図はこの発明の一実施例の概略ブロック図である。
まず、第1図を参照して、この発明の一実施例の構成に
ついて説明する。なお、この第1図に示した実施例は、
下位ビットから上位ビットの方向へ“1"を検索するもの
である。データバス1は32ビット幅を有し、この32ビッ
ト幅のデータを0検出回路2と4バイトエンコード回路
4に与える。0検出回路2は32ビット幅のデータを8ビ
ットのバイトごとに分割し、各バイトのデータがすべて
“0"であるか否かを検出する。この0検出回路2の0検
出信号Zは4ビットエンコード回路3に与えられる。4
ビットエンコード回路3は0検出回路2から出力された
4ビットの0検出信号から最初の“1"があるバイトを検
索し、その結果を2進2ビットデータにエンコードする
ものである。4バイトエンコード回路4は32ビットのデ
ータを4つに分けた8ビットデータのエンコードを行な
う。
まず、第1図を参照して、この発明の一実施例の構成に
ついて説明する。なお、この第1図に示した実施例は、
下位ビットから上位ビットの方向へ“1"を検索するもの
である。データバス1は32ビット幅を有し、この32ビッ
ト幅のデータを0検出回路2と4バイトエンコード回路
4に与える。0検出回路2は32ビット幅のデータを8ビ
ットのバイトごとに分割し、各バイトのデータがすべて
“0"であるか否かを検出する。この0検出回路2の0検
出信号Zは4ビットエンコード回路3に与えられる。4
ビットエンコード回路3は0検出回路2から出力された
4ビットの0検出信号から最初の“1"があるバイトを検
索し、その結果を2進2ビットデータにエンコードする
ものである。4バイトエンコード回路4は32ビットのデ
ータを4つに分けた8ビットデータのエンコードを行な
う。
なお、4バイトエンコード回路4から0検出回路2に
は、マスク後にバイト内のデータがすべて“0"になった
ことを示す信号Z OUTが与えられる。また、4バイトエ
ンコード回路4には5ビットの入力オフセット値Iofs0
ないし4が与えられ、0検出回路2には入力オフセット
値Iofs4,Iofs3が与えられる。
は、マスク後にバイト内のデータがすべて“0"になった
ことを示す信号Z OUTが与えられる。また、4バイトエ
ンコード回路4には5ビットの入力オフセット値Iofs0
ないし4が与えられ、0検出回路2には入力オフセット
値Iofs4,Iofs3が与えられる。
第2図は第1図に示した入力オフセット値の上位2ビッ
トとそのときマスクされるデータを示す。第2図におい
て、32ビットのデータを4つに分けた8ビットごとのデ
ータを、上位から順にdata4,data3,data2,data1として
いる。
トとそのときマスクされるデータを示す。第2図におい
て、32ビットのデータを4つに分けた8ビットごとのデ
ータを、上位から順にdata4,data3,data2,data1として
いる。
第3図は第1図に示した0検出回路の具体的な回路図で
ある。第3図において、各8ビットごとのデータdata4
ないしdata1はそれぞれ8入力NORゲート54ないし51に与
えられる。これらの8入力NORゲート54ないし51はそれ
ぞれ8ビットのデータがいずれも“0"であれば“1"の0
検出信号を出力し、NORゲート94ないし91を介してその
0検出信号を4ビットエンコード回路3に与える。各NO
Rゲート94ないし91には、Zout4ないし1が与えられてい
る。これらのZout4ないし1は、データがすべて“0"で
あるかあるいはマスクされたときに“0"となる信号であ
る。ANDゲート7およびORゲート8にはそれぞれ上位2
ビットの入力オフセット値Iofs4,3が与えられている。A
NDゲート7の出力はNORゲート93に与えられ、data3をマ
スクする。また、入力オフセット値Iofs4はNORゲート92
に与えられ、data2をマスクする。ORゲート8の出力はN
ORゲート91に与えられ、data1をマスクする。NORゲート
94ないし91の出力Z4ないしZ1はdata4ないし1に対応し
ていて、それぞれ4ビットエンコード回路3に与えられ
る。
ある。第3図において、各8ビットごとのデータdata4
ないしdata1はそれぞれ8入力NORゲート54ないし51に与
えられる。これらの8入力NORゲート54ないし51はそれ
ぞれ8ビットのデータがいずれも“0"であれば“1"の0
検出信号を出力し、NORゲート94ないし91を介してその
0検出信号を4ビットエンコード回路3に与える。各NO
Rゲート94ないし91には、Zout4ないし1が与えられてい
る。これらのZout4ないし1は、データがすべて“0"で
あるかあるいはマスクされたときに“0"となる信号であ
る。ANDゲート7およびORゲート8にはそれぞれ上位2
ビットの入力オフセット値Iofs4,3が与えられている。A
NDゲート7の出力はNORゲート93に与えられ、data3をマ
スクする。また、入力オフセット値Iofs4はNORゲート92
に与えられ、data2をマスクする。ORゲート8の出力はN
ORゲート91に与えられ、data1をマスクする。NORゲート
94ないし91の出力Z4ないしZ1はdata4ないし1に対応し
ていて、それぞれ4ビットエンコード回路3に与えられ
る。
第4図は第1図に示したバイトエンコード回路の具体的
な回路図であり、第5図は入力オフセット値の上位2ビ
ットとそのときのdataが下位3ビットによりマスクされ
る状態を示す図であり、第6図は第4図に示したエンコ
ード回路の具体的な回路構成を示す図である。
な回路図であり、第5図は入力オフセット値の上位2ビ
ットとそのときのdataが下位3ビットによりマスクされ
る状態を示す図であり、第6図は第4図に示したエンコ
ード回路の具体的な回路構成を示す図である。
次に、第4図ないし第6図を参照して、バイトエンコー
ド回路の構成について説明する。上位2ビットの入力オ
フセット値Iofs4,Iofs3はそれぞれANDゲート11とORゲー
ト12に与えられるとともに、入力オフセット値Iofs4は
セレクト回路133に与えられる。ANDゲート11の出力はセ
レクト回路134に与えられ、ORゲート12の出力はセレク
ト回路132に与えられる。セレクト回路134ないし132は
それぞれ入力信号A4,A3,A2が“1"のとき、下位3ビット
の入力オフセット値Iofs2ないしIofs0を出力し、A4,A3,
A2が“0"のときは“0"を出力してエンコード回路144,14
3,142に与える。
ド回路の構成について説明する。上位2ビットの入力オ
フセット値Iofs4,Iofs3はそれぞれANDゲート11とORゲー
ト12に与えられるとともに、入力オフセット値Iofs4は
セレクト回路133に与えられる。ANDゲート11の出力はセ
レクト回路134に与えられ、ORゲート12の出力はセレク
ト回路132に与えられる。セレクト回路134ないし132は
それぞれ入力信号A4,A3,A2が“1"のとき、下位3ビット
の入力オフセット値Iofs2ないしIofs0を出力し、A4,A3,
A2が“0"のときは“0"を出力してエンコード回路144,14
3,142に与える。
各エンコード回路144ないし141にはそれぞれdata4ない
しdata1が与えられている。また、エンコード回路141に
は、セレクト回路を介することなく直接下位3ビットの
入力オフセット値Iofs2ないしIofs0が与えられている。
エンコード回路144ないし141は8ビットデータdata4な
いしdata1をマスクし、上位から最初の“1"を検索し、
その結果を3ビットで出力する。なお、エンコード回路
144ないし141から出力されるM4ないしM1は8ビットデー
タdata4ないしdata1をエンコードした結果を示す3ビッ
トのオフセット値である。セレクト回路10は2ビットの
出力オフセット値Oofs3に基づいてM4ないしM1のうちの
いずれかを選択する。
しdata1が与えられている。また、エンコード回路141に
は、セレクト回路を介することなく直接下位3ビットの
入力オフセット値Iofs2ないしIofs0が与えられている。
エンコード回路144ないし141は8ビットデータdata4な
いしdata1をマスクし、上位から最初の“1"を検索し、
その結果を3ビットで出力する。なお、エンコード回路
144ないし141から出力されるM4ないしM1は8ビットデー
タdata4ないしdata1をエンコードした結果を示す3ビッ
トのオフセット値である。セレクト回路10は2ビットの
出力オフセット値Oofs3に基づいてM4ないしM1のうちの
いずれかを選択する。
次に、第6図を参照して、第4図に示したセレクト回路
とエンコード回路のより具体的な構成について説明す
る。bdata7ないしbdata0は8ビットデータであり、上位
がbdata7であり、下位がbdata0である。そして、bdata7
は直接8ビットエンコード回路15に与えられ、bdata6な
いしbdata0はANDゲート167ないし161を介して8ビット
エンコード回路15に与えられる。ANDゲート167ないし16
1には、それぞれORゲート171,ANDゲート172,NANDゲート
173ないし175,インバータ176,NORゲート177ないし179を
介して下位3ビットの入力オフセット値Iofs0ないしIof
s2が与えられている。そして、ANDゲート167ないし161
はこれらの入力オフセット値Iofs0ないしIofs2のいずれ
かに基づいて、bdata6ないしbdata0のマスクされるべき
部分のビットを“0"にする。8ビットエンコード回路15
は入力された8ビットのデータをエンコードし、3ビッ
トのエンコード結果Mofs2ないしMofs0を出力する。ま
た、8ビットエンコード回路15は入力がすべて“0"のと
きに信号Z OUTを出力する。
とエンコード回路のより具体的な構成について説明す
る。bdata7ないしbdata0は8ビットデータであり、上位
がbdata7であり、下位がbdata0である。そして、bdata7
は直接8ビットエンコード回路15に与えられ、bdata6な
いしbdata0はANDゲート167ないし161を介して8ビット
エンコード回路15に与えられる。ANDゲート167ないし16
1には、それぞれORゲート171,ANDゲート172,NANDゲート
173ないし175,インバータ176,NORゲート177ないし179を
介して下位3ビットの入力オフセット値Iofs0ないしIof
s2が与えられている。そして、ANDゲート167ないし161
はこれらの入力オフセット値Iofs0ないしIofs2のいずれ
かに基づいて、bdata6ないしbdata0のマスクされるべき
部分のビットを“0"にする。8ビットエンコード回路15
は入力された8ビットのデータをエンコードし、3ビッ
トのエンコード結果Mofs2ないしMofs0を出力する。ま
た、8ビットエンコード回路15は入力がすべて“0"のと
きに信号Z OUTを出力する。
第7図は8ビットのデータのマスクされるべき部分に
“1"があり、マスクされない部分がすべて0"である場合
のデータを示し、第8図は4ビットエンコード回路の上
位2ビットの出力オフセット値Oofs4,Oofs3と、そのと
きに8ビットごとのデータのエンコード結果のうちのど
れを選ぶかを示す図である。
“1"があり、マスクされない部分がすべて0"である場合
のデータを示し、第8図は4ビットエンコード回路の上
位2ビットの出力オフセット値Oofs4,Oofs3と、そのと
きに8ビットごとのデータのエンコード結果のうちのど
れを選ぶかを示す図である。
次に、第1図ないし第8図を参照して、この発明の一実
施例の具体的な動作について説明する。第1図に示すよ
うに、32ビットのデータは、0検出回路2と4バイトエ
ンコード回路4に入力される。0検出回路2では、第3
図に示すように、32ビットのデータが8ビットごとに8
入力NORゲート54ないし51に与えられる。そして、各デ
ータの各ビットがすべて“0"の場合には、8入力NORゲ
ート54ないし51の各出力は“1"になる。ここで、上位2
ビットの入力オフセット値Iofs4,Iofs3により、NORゲー
ト93ないし91は4ビットエンコード回路3へ“0"を出力
する。
施例の具体的な動作について説明する。第1図に示すよ
うに、32ビットのデータは、0検出回路2と4バイトエ
ンコード回路4に入力される。0検出回路2では、第3
図に示すように、32ビットのデータが8ビットごとに8
入力NORゲート54ないし51に与えられる。そして、各デ
ータの各ビットがすべて“0"の場合には、8入力NORゲ
ート54ないし51の各出力は“1"になる。ここで、上位2
ビットの入力オフセット値Iofs4,Iofs3により、NORゲー
ト93ないし91は4ビットエンコード回路3へ“0"を出力
する。
すなわち、あたかも、その部分のデータがすべて“0"で
あるかのように上位2ビットの出力オフセット値Oofs4,
Oosf3が決定される。たとえば、上位2ビットの入力オ
フセット値Iofs4=1,Iofs3=0であれば、4ビットエン
コード回路3への入力信号Z1,Z2がいずれも“0"とな
り、data1,data2がマスクされ、上位2ビットの出力オ
フセット値Oofs4,Oofs3は2進数で“10"になる。
あるかのように上位2ビットの出力オフセット値Oofs4,
Oosf3が決定される。たとえば、上位2ビットの入力オ
フセット値Iofs4=1,Iofs3=0であれば、4ビットエン
コード回路3への入力信号Z1,Z2がいずれも“0"とな
り、data1,data2がマスクされ、上位2ビットの出力オ
フセット値Oofs4,Oofs3は2進数で“10"になる。
同時に、下位3ビットの入力オフセット値Iofs2ないしI
ofs0によって8ビットごとのデータのマスクが行なわれ
るのを第4図を参照して説明する。まず、上位2ビット
の入力オフセット値Iofs4,Iofs3により、どのデータを
マスクするかを選択する。この選択は、第5図に示すよ
うになり、第4図の信号A4ないしA2が“1"になったとこ
ろはセレクト回路134ないし132からエンコード回路144
ないし142へ入力オフセット値Iofs2ないしIofs0が入力
される。
ofs0によって8ビットごとのデータのマスクが行なわれ
るのを第4図を参照して説明する。まず、上位2ビット
の入力オフセット値Iofs4,Iofs3により、どのデータを
マスクするかを選択する。この選択は、第5図に示すよ
うになり、第4図の信号A4ないしA2が“1"になったとこ
ろはセレクト回路134ないし132からエンコード回路144
ないし142へ入力オフセット値Iofs2ないしIofs0が入力
される。
エンコード回路144ないし141は第6図に示すように、3
ビットの入力オフセット値Iofs2ないしIofs0に基づい
て、8ビットのデータのbdata7ないしbdata0をマスクす
る。そして、マスクされた後の8ビットデータは8ビッ
トエンコード回路15に与えられ、上位から“1"の検索が
行なわれ、3ビットの出力オフセット値Mofs2ないしMof
s0として出力される。このとき、マスクされた結果がす
べて“0"であれば、“1"のZ OUT信号が出力される。ま
た、出力オフセット値の上位2ビットOofs4,Oofs3の値
に応じて、第8図に示すように、M4ないしM1のうちの1
つが選ばれ、出力オフセット値の下位3ビットOofs2,Oo
fs1,Oofs0が出力される。
ビットの入力オフセット値Iofs2ないしIofs0に基づい
て、8ビットのデータのbdata7ないしbdata0をマスクす
る。そして、マスクされた後の8ビットデータは8ビッ
トエンコード回路15に与えられ、上位から“1"の検索が
行なわれ、3ビットの出力オフセット値Mofs2ないしMof
s0として出力される。このとき、マスクされた結果がす
べて“0"であれば、“1"のZ OUT信号が出力される。ま
た、出力オフセット値の上位2ビットOofs4,Oofs3の値
に応じて、第8図に示すように、M4ないしM1のうちの1
つが選ばれ、出力オフセット値の下位3ビットOofs2,Oo
fs1,Oofs0が出力される。
たとえば、入力オフセット値の上位2ビットIofs4=0,I
ofs3=1の場合は、data2が入力オフセット値の下位3
ビットIofs2,Iofs1,Iofs0によってマスクされ、エンコ
ードされた結果のオフセット値M2が出力される。このと
き、第7図に示すように、マスクされる部分に“1"があ
り、マスクされない部分がすべて“0"のときには、出力
信号Z OUTが出力される。ここで、Z OUT信号は、第1図
に示すように、0検出回路2に与えられる。たとえば、
data2で第7図のような状態が生じると、Z OUT2信号を
出力する。そして、0検出回路2に入力されたZ OUT2信
号は第3図のNORゲート92に入力され、NORゲート92の出
力Z2を“0"にする。これにより、4ビットエンコード回
路3は入力データの下位2ビットを“0"として、出力オ
フセットの上位2ビットOofs4,Oofs3を決定する。
ofs3=1の場合は、data2が入力オフセット値の下位3
ビットIofs2,Iofs1,Iofs0によってマスクされ、エンコ
ードされた結果のオフセット値M2が出力される。このと
き、第7図に示すように、マスクされる部分に“1"があ
り、マスクされない部分がすべて“0"のときには、出力
信号Z OUTが出力される。ここで、Z OUT信号は、第1図
に示すように、0検出回路2に与えられる。たとえば、
data2で第7図のような状態が生じると、Z OUT2信号を
出力する。そして、0検出回路2に入力されたZ OUT2信
号は第3図のNORゲート92に入力され、NORゲート92の出
力Z2を“0"にする。これにより、4ビットエンコード回
路3は入力データの下位2ビットを“0"として、出力オ
フセットの上位2ビットOofs4,Oofs3を決定する。
[発明の効果] 以上のように、この発明によれば、入力オフセット値の
上位数ビットと残りの下位数ビットで別々にnビット幅
のデータのマスクを行ない、nビット幅のデータを数ビ
ットごとに分割し、分割されたデータごとにエンコード
を行なうようにしたので、nビット幅のデータの上位も
しくは下位から第1の論理を検索し、数ビットのオフセ
ット値にエンコードすることと、入力オフセット値によ
るマスクを高速に行なうことができる。
上位数ビットと残りの下位数ビットで別々にnビット幅
のデータのマスクを行ない、nビット幅のデータを数ビ
ットごとに分割し、分割されたデータごとにエンコード
を行なうようにしたので、nビット幅のデータの上位も
しくは下位から第1の論理を検索し、数ビットのオフセ
ット値にエンコードすることと、入力オフセット値によ
るマスクを高速に行なうことができる。
第1図はこの発明の一実施例の概略ブロック図である。
第2図は入力オフセット値の上位2ビットとそのときマ
スクされるデータを示す図である。第3図は第1図に示
した0検出回路の具体的な回路図である。第4図は第1
図に示したバイトエンコード回路の具体的な回路図であ
る。第5図は入力オフセット値の上位2ビットとそのと
きどのデータが下位3ビットによりマスクされるかを示
す図である。第6図は第4図に示すエンコード回路の具
体的な回路図である。第7図は8ビットのデータのマス
クされる部分に“1"があり、マスクされない部分がすべ
て“0"である場合のデータを示す図である。第8図は4
ビットエンコード回路の上位2ビットの出力オフセット
値とそのとき8ビットごとのデータのエンコード結果の
うちのどれを選ぶかを示す図である。第9図は従来の半
導体論理回路の動作を説明するためのフロー図である。
第10図は同じく概略ブロック図である。 図において、1は32ビット幅のデータバス、2は0検出
回路、3は4ビットエンコード回路、4は4バイトエン
コード回路、Iofs4ないしIofs0は入力オフセット値、Oo
fs4ないしOofs0は出力オフセット値を示す。
第2図は入力オフセット値の上位2ビットとそのときマ
スクされるデータを示す図である。第3図は第1図に示
した0検出回路の具体的な回路図である。第4図は第1
図に示したバイトエンコード回路の具体的な回路図であ
る。第5図は入力オフセット値の上位2ビットとそのと
きどのデータが下位3ビットによりマスクされるかを示
す図である。第6図は第4図に示すエンコード回路の具
体的な回路図である。第7図は8ビットのデータのマス
クされる部分に“1"があり、マスクされない部分がすべ
て“0"である場合のデータを示す図である。第8図は4
ビットエンコード回路の上位2ビットの出力オフセット
値とそのとき8ビットごとのデータのエンコード結果の
うちのどれを選ぶかを示す図である。第9図は従来の半
導体論理回路の動作を説明するためのフロー図である。
第10図は同じく概略ブロック図である。 図において、1は32ビット幅のデータバス、2は0検出
回路、3は4ビットエンコード回路、4は4バイトエン
コード回路、Iofs4ないしIofs0は入力オフセット値、Oo
fs4ないしOofs0は出力オフセット値を示す。
Claims (6)
- 【請求項1】所定のビット数の入力オフセット値を有す
るnビット幅のデータのうち、前記オフセット値をマス
クし、前記データの上位もしくは下位から第1の論理が
立っている最初のビットを検索し、その検索結果を所定
のビット数のオフセット値にエンコードして出力する半
導体論理回路であって、 前記nビット幅のデータを予め定めるビット数のデータ
に分割して、分割したデータの各ビットが第2の論理で
あるか否かを前記分割したデータごとに検出する検出手
段、 前記検出手段の各検出出力に基づいて、エンコード結果
のうちの上位数ビットを生成しかつ前記分割した各デー
タをそれぞれエンコードして、前記エンコード結果のう
ちの残りの下位数ビットを生成するエンコード手段、お
よび 前記入力オフセット値の上位数ビットに基づいて、前記
分割したデータ単位で前記nビット幅のデータをマスク
するとともに、前記入力オフセットの残りの下位数ビッ
トに基づいて、前記分割したデータの各ビットをマスク
するマスク手段を備えた、半導体論理回路。 - 【請求項2】前記検出手段は、前記分割したデータごと
に設けられかつ該分割したデータの各ビットの論理和を
求める論理ゲート手段を含む、特許請求の範囲第1項記
載の半導体論理回路。 - 【請求項3】前記エンコード手段は、前記論理ゲート手
段の出力をエンコードして、前記エンコード結果のうち
の上位数ビットを生成する第1のエンコード手段を含
む、特許請求の範囲第2項記載の半導体論理回路。 - 【請求項4】前記マスク手段は、前記入力オフセット値
の上位数ビットに基づいて、前記論理ゲート手段の出力
をマスクする第1のマスク手段を含む、特許請求の範囲
第2項記載の半導体論理回路。 - 【請求項5】前記エンコード手段は、前記分割した各デ
ータをそれぞれエンコードして、前記エンコード結果の
うちの残りの下位数ビットを生成する第2のエンコード
手段を含む、特許請求の範囲第3項記載の半導体論理回
路。 - 【請求項6】前記マスク手段は、前記入力オフセットの
残りの下位数ビットに基づいて、前記第2のエンコード
手段に与えられる前記分割した各データをマスクするた
めの第2のマスク手段を含む、特許請求の範囲第5項記
載の半導体論理回路。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62164325A JPH0746310B2 (ja) | 1987-06-30 | 1987-06-30 | 半導体論理回路 |
US07/210,968 US5091874A (en) | 1987-06-30 | 1988-06-24 | Encoder apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62164325A JPH0746310B2 (ja) | 1987-06-30 | 1987-06-30 | 半導体論理回路 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS648437A JPS648437A (en) | 1989-01-12 |
JPH0746310B2 true JPH0746310B2 (ja) | 1995-05-17 |
Family
ID=15791017
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP62164325A Expired - Lifetime JPH0746310B2 (ja) | 1987-06-30 | 1987-06-30 | 半導体論理回路 |
Country Status (2)
Country | Link |
---|---|
US (1) | US5091874A (ja) |
JP (1) | JPH0746310B2 (ja) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0468837A3 (en) * | 1990-06-29 | 1992-11-19 | Digital Equipment Corporation | Mask processing unit for high-performance processor |
US5210839A (en) * | 1990-12-21 | 1993-05-11 | Sun Microsystems, Inc. | Method and apparatus for providing a memory address from a computer instruction using a mask register |
US5265258A (en) * | 1991-03-19 | 1993-11-23 | Motorola, Inc. | Partial-sized priority encoder circuit having look-ahead capability |
GB9124539D0 (en) * | 1991-11-19 | 1992-01-08 | Texas Instruments Ltd | A circuit for detecting the position of an extreme 1"bit in a binary number |
US5241490A (en) * | 1992-01-06 | 1993-08-31 | Intel Corporation | Fully decoded multistage leading zero detector and normalization apparatus |
US5258942A (en) * | 1992-03-20 | 1993-11-02 | Vlsi Technology, Inc. | Balanced two-level delay propagation all one detector compiler |
US5469377A (en) * | 1992-08-18 | 1995-11-21 | Nec Corporation | Floating point computing device for simplifying procedures accompanying addition or subtraction by detecting whether all of the bits of the digits of the mantissa are 0 or 1 |
US5367477A (en) * | 1993-11-29 | 1994-11-22 | Motorola, Inc. | Method and apparatus for performing parallel zero detection in a data processing system |
US5568410A (en) * | 1994-09-29 | 1996-10-22 | International Business Machines Corporation | Method and apparatus for determining the amount of leading zeros or ones in a binary data field |
US5586069A (en) * | 1994-09-30 | 1996-12-17 | Vlsi Technology, Inc. | Arithmetic logic unit with zero sum prediction |
US6381622B1 (en) * | 1994-12-29 | 2002-04-30 | Via-Cyrix, Inc. | System and method of expediting bit scan instructions |
US5923900A (en) * | 1997-03-10 | 1999-07-13 | International Business Machines Corporation | Circular buffer with n sequential real and virtual entry positions for selectively inhibiting n adjacent entry positions including the virtual entry positions |
KR100253407B1 (ko) * | 1998-01-23 | 2000-04-15 | 김영환 | 에프오디 회로 |
US6779008B1 (en) * | 2000-04-27 | 2004-08-17 | International Business Machines Corporation | Method and apparatus for binary leading zero counting with constant-biased result |
US6957238B1 (en) * | 2001-02-23 | 2005-10-18 | Altera Corporation | Method and system for deterministic pseudo-random valid entry resolution |
US7725036B2 (en) * | 2002-02-12 | 2010-05-25 | Finisar Corporation | Efficient transmission of digital return path data in cable television return path |
US7593976B1 (en) * | 2003-01-06 | 2009-09-22 | Marvell Israel (M.I.S.L.) Ltd. | Method and apparatus for finding the next free bit in a register |
US7979681B2 (en) * | 2007-11-20 | 2011-07-12 | Qualcomm Incorporated | System and method of selectively accessing a register file |
Family Cites Families (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4037094A (en) * | 1971-08-31 | 1977-07-19 | Texas Instruments Incorporated | Multi-functional arithmetic and logical unit |
US3833888A (en) * | 1973-02-05 | 1974-09-03 | Honeywell Inf Systems | General purpose digital processor for terminal devices |
US4028684A (en) * | 1975-10-16 | 1977-06-07 | Bell Telephone Laboratories, Incorporated | Memory patching circuit with repatching capability |
US4035780A (en) * | 1976-05-21 | 1977-07-12 | Honeywell Information Systems, Inc. | Priority interrupt logic circuits |
US4064421A (en) * | 1976-07-22 | 1977-12-20 | Burroughs Corporation | High speed modular arithmetic apparatus having a mask generator and a priority encoder |
US4335372A (en) * | 1980-03-28 | 1982-06-15 | Motorola Inc. | Digital scaling apparatus |
US4348741A (en) * | 1980-07-17 | 1982-09-07 | Motorola, Inc. | Priority encoder |
US4396994A (en) * | 1980-12-31 | 1983-08-02 | Bell Telephone Laboratories, Incorporated | Data shifting and rotating apparatus |
US4420806A (en) * | 1981-01-15 | 1983-12-13 | Harris Corporation | Interrupt coupling and monitoring system |
US4703419A (en) * | 1982-11-26 | 1987-10-27 | Zenith Electronics Corporation | Switchcover means and method for dual mode microprocessor system |
JPS59149539A (ja) * | 1983-01-28 | 1984-08-27 | Toshiba Corp | 固定小数点−浮動小数点変換装置 |
JPS59216245A (ja) * | 1983-05-25 | 1984-12-06 | Nec Corp | 正規化回路 |
US4670858A (en) * | 1983-06-07 | 1987-06-02 | Tektronix, Inc. | High storage capacity associative memory |
US4583197A (en) * | 1983-06-30 | 1986-04-15 | International Business Machines Corporation | Multi-stage pass transistor shifter/rotator |
US4653019A (en) * | 1984-04-19 | 1987-03-24 | Concurrent Computer Corporation | High speed barrel shifter |
US4785393A (en) * | 1984-07-09 | 1988-11-15 | Advanced Micro Devices, Inc. | 32-Bit extended function arithmetic-logic unit on a single chip |
GB2167583B (en) * | 1984-11-23 | 1988-11-02 | Nat Res Dev | Apparatus and methods for processing an array of items of data |
US4789956A (en) * | 1985-10-16 | 1988-12-06 | Harris Corp. | Maximum negative number detector |
US4761732A (en) * | 1985-11-29 | 1988-08-02 | American Telephone And Telegraph Company, At&T Bell Laboratories | Interrupt controller arrangement for mutually exclusive interrupt signals in data processing systems |
US4760461A (en) * | 1986-02-28 | 1988-07-26 | Kabushiki Kaisha Toshiba | Binary data compression and expansion processing apparatus |
JPS62229436A (ja) * | 1986-03-31 | 1987-10-08 | Toshiba Corp | 二進数デ−タ判別回路 |
JPS6398729A (ja) * | 1986-10-15 | 1988-04-30 | Fujitsu Ltd | バレルシフタ |
US4760517A (en) * | 1986-10-17 | 1988-07-26 | Integrated Device Technology, Inc. | Thirty-two bit, bit slice processor |
US4959811A (en) * | 1986-11-03 | 1990-09-25 | Texas Instruments Incorporated | Content addressable memory including comparison inhibit and shift register circuits |
JPS6425236A (en) * | 1987-07-21 | 1989-01-27 | Mitsubishi Electric Corp | Logical operation system |
JPH01180626A (ja) * | 1988-01-12 | 1989-07-18 | Mitsubishi Electric Corp | 優先順位分解器 |
US4922446A (en) * | 1988-04-01 | 1990-05-01 | Digital Equipment Corporation | Apparatus and method for floating point normalization prediction |
-
1987
- 1987-06-30 JP JP62164325A patent/JPH0746310B2/ja not_active Expired - Lifetime
-
1988
- 1988-06-24 US US07/210,968 patent/US5091874A/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPS648437A (en) | 1989-01-12 |
US5091874A (en) | 1992-02-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH0746310B2 (ja) | 半導体論理回路 | |
JPH02190928A (ja) | 除算器 | |
US6226664B1 (en) | Method and device for adding and subtracting thermometer coded data | |
FI862883A0 (fi) | Krets foer komplementering av binaera tal. | |
US5504697A (en) | Limiter circuit producing data by use of comparison in effective digit number of data | |
US4648059A (en) | N-bit magnitude comparator | |
US5668525A (en) | Comparator circuit using two bit to four bit encoder | |
US5777906A (en) | Left shift overflow detection | |
US4899304A (en) | Overflow detection circuit | |
US6044063A (en) | Unsigned integer comparator | |
US5148480A (en) | Decoder | |
JPH0681050B2 (ja) | 並列形ad変換器 | |
JP2000259392A (ja) | 論理回路 | |
SU586460A1 (ru) | Устройство дл воспроизведени функций с крутизной,не превышающей 2к | |
SU851401A1 (ru) | Устройство дл определени среднегоиз TPEX дВОичНыХ чиСЕл | |
SU732857A1 (ru) | Устройство дл сравнени чисел | |
SU370605A1 (ru) | УСТРОЙСТВО дл ВЫЧИТАНИЯ | |
JPS61105640A (ja) | 並列補数回路 | |
JPH0580982A (ja) | 絶対値回路 | |
SU864279A1 (ru) | Устройство дл сравнени чисел | |
JPS61275936A (ja) | 条件決定装置 | |
JPS61240330A (ja) | 加算回路 | |
JPH0257869B2 (ja) | ||
JPH0332248B2 (ja) | ||
JPS6350123A (ja) | グレイコ−ド・バイナリコ−ド高速化変換回路 |