図面 (/)

技術 効率的な除算実行のための装置及び方法

出願人 エイアールエムリミテッド
発明者 ディヴィッドレイモンドルッツニールバージェス
出願日 2015年6月18日 (5年5ヶ月経過) 出願番号 2015-122526
公開日 2016年1月18日 (4年10ヶ月経過) 公開番号 2016-009492
状態 特許登録済
技術分野 位取り記数法を用いた四則演算 機械語命令の実行
主要キーワード フラグ設定回路 最下位ビット値 左シフト動作 打ち切り条件 右シフト動作 オーバフロー条件 反復的プロセス ビット条件
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(2016年1月18日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (13)

課題

除算命令応答して除算動作を実行し、除算命令によって特定された入力分子を除算命令によって特定された入力分母で除算することによって結果値を生成するデータ処理装置及びそのようなデータ処理装置を動作させる方法を提供すること。

解決手段

入力分子と入力分母とはバイナリ値である。この装置は、除算動作を実行することによって結果値を生成するように構成された除算回路と、入力分母が、Nを正の整数として±2Nによって与えられる値を有する場合には、バイパス条件をシグナリングするように構成された2の累乗検出回路と、バイパス条件のシグナリングに応答して、除算回路をバイパスさせ、結果値を、Nビットだけシフトされた入力分子として生成するように構成されたバイパス回路とを備えている。

概要

背景

除算命令応答して除算動作を実行するデータ処理システムを提供することは知られている。そのようなデータ処理システムは、分子分母とを特定する除算命令に応答して、除算動作を実行し、分子を分母によって除算した結果を生成するように構成されている。そのようなデータ処理システムには、典型的には、除算を実行するように構成された専用の除算回路が提供されている。例えば、整数除算命令に応答して整数除算を実行するように構成された専用の整数除算回路が、提供され得る。

概要

除算命令に応答して除算動作を実行し、除算命令によって特定された入力分子を除算命令によって特定された入力分母で除算することによって結果値を生成するデータ処理装置及びそのようなデータ処理装置を動作させる方法を提供すること。入力分子と入力分母とはバイナリ値である。この装置は、除算動作を実行することによって結果値を生成するように構成された除算回路と、入力分母が、Nを正の整数として±2Nによって与えられる値を有する場合には、バイパス条件をシグナリングするように構成された2の累乗検出回路と、バイパス条件のシグナリングに応答して、除算回路をバイパスさせ、結果値を、Nビットだけシフトされた入力分子として生成するように構成されたバイパス回路とを備えている。A

目的

除算命令に応答して除算動作を実行するデータ処理システムを提供する

効果

実績

技術文献被引用数
0件
牽制数
0件

この技術が所属する分野

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

除算命令応答して除算動作を実行するように構成されたデータ処理のための装置であって、前記除算動作は、前記除算命令によって特定された入力分子を前記除算命令によって特定された入力分母で除算して結果値を生成するように構成されており、前記入分子と前記入力分母とはバイナリ値である、装置において、前記除算動作を実行することによって前記結果値を生成するように構成された除算回路と、前記入力分母がNを整数として±2Nによって与えられる値を有する場合には、バイパス条件をシグナリングするように構成された2の累乗検出回路と、前記バイパス条件のシグナリングに応答して、前記除算回路をバイパスさせ、前記結果値を、Nビットだけシフトされた前記入力分子として生成するように構成されたバイパス回路と、を備えている装置。

請求項2

前記2の累乗検出回路は、前記入力分母では1ビットだけがセットされており他のすべてのビットがセットされていない場合に前記バイパス条件をシグナリングするように構成された排他ビット検出回路を備えている、請求項1に記載の装置。

請求項3

前記バイパス回路は、前記結果値を、前記入力分母においてセットされている前記1ビットの後に続くセットされていないビット数だけシフトされた前記入力分子として生成するように構成されている、請求項2に記載の装置。

請求項4

前記入力分母の先行ゼロカウントを決定するように構成された先行ゼロ決定回路を備えており、前記2の累乗検出回路は、前記先行ゼロ・カウントのバイナリ表現反転させることによって前記入力分母の前記先行ゼロ・カウントからNを決定するように構成されている、請求項2又は3に記載の装置。

請求項5

前記入力分母の後置ゼロ・カウントを決定するように構成された後置ゼロ決定回路を備えており、前記2の累乗検出回路は、前記入力分母の前記後置ゼロ・カウントとしてNを決定するように構成されている、請求項2又は3に記載の装置。

請求項6

前記排他的ビット検出回路は、ゲートの複数のバイナリツリーを備え、ゲートのそれぞれのバイナリ・ツリーが複数の階層レベルを備え、それぞれのバイナリ・ツリーの1つの階層レベルがXORゲートを備え、それぞれのバイナリ・ツリーの他のすべての階層レベルがORゲートを備えており、前記複数のバイナリ・ツリーのそれぞれのバイナリ・ツリーは、前記XORゲートを、前記複数のバイナリ・ツリーの残りのバイナリ・ツリーと異なる階層レベルにおいて有し、前記複数のバイナリ・ツリーの出力のAND結合が前記バイパス条件を示す、請求項2から5までのいずれかに記載の装置。

請求項7

前記排他的ビット検出回路は論理ゲートネットワークを備えており、論理ゲートの前記ネットワークは、前記入力分母をテスト値として受け取り、更に、A)前記テスト値のビットの第1の半分においてはどのビットもセットされておらず、前記テスト値のビットの第2の半分においては少なくとも1ビットがセットされているかどうかの判断を実行し、前記判断が真である場合には、B)前記テスト値のビットの前記第2の半分が1ビットだけになるまで、そして、前記1ビットが前記バイパス条件をシグナリングするようにセットされている場合には、前記テスト値のビットの前記第2の半分を前記テスト値として受け取り、A)における判断を反復するように構成されている、請求項2から6までのいずれかに記載の装置。

請求項8

前記入力分子と前記入力分母とは符号のないバイナリ値である、請求項1から7までのいずれかに記載の装置。

請求項9

前記入力分子と前記入力分母とは、2の補数表現を用いた、符号付きのバイナリ値であり、前記2の累乗検出回路は、前記入力分母が負の値を有する場合には、前記入力分母を前処理して前処理された入力分母を生成するように構成された前処理回路を備えており、前記2の累乗検出回路は、前記前処理された入力分母が2の累乗を表す場合には、前記バイパス条件を検出するように構成されている、請求項1から7までのいずれかに記載の装置。

請求項10

前記前処理回路は、前記入力分母を1ビットだけ左シフトし、セットされていないビットを最下位ビットとして追加して中間値を生成するように構成され、前記中間値と前記入力分母とのXOR演算を実行して前記前処理された入力分母を生成するように構成されている、請求項9に記載の装置。

請求項11

前記2の累乗検出回路は、前記前処理された入力分母がセットされたビットを1つだけ有しており他のすべてのビットはセットされていない場合に、バイパス条件を検出するように構成されている、請求項10に記載の装置。

請求項12

前記前処理回路は、前記入力分母の正の等価物を、前記前処理された入力分母として生成するように構成されている、請求項9から11までのいずれかに記載の装置。

請求項13

前記前処理回路は、前記入力分母のビットを反転させ1を追加して前記前処理された入力分母を生成するように構成されている、請求項12に記載の装置。

請求項14

前記入力分子と前記入力分母とはバイナリ整数である、請求項1から13までのいずれかに記載の装置。

請求項15

前記入力分子と前記入力分母とは固定小数点バイナリ値である、請求項1から14までのいずれかに記載の装置。

請求項16

前記バイパス回路は、前記2の累乗検出回路がNは正の整数であることを示すときには、前記結果値を、Nビットだけ右シフトされた前記入力分子として生成するように構成されている、請求項1から15までのいずれかに記載の装置。

請求項17

前記バイパス回路は、前記2の累乗検出回路がNは負の整数であることを示すときには、前記結果値を、Nビットだけ左シフトされた前記入力分子として生成するように構成されている、請求項15に記載の装置。

請求項18

前記バイパス条件がシグナリングされるときには、前記入力分子をNビットだけ右シフトして前記結果値を生成することにより少なくとも1つのセットされたビットを取り除いている場合、打ち切り条件識別し、前記打ち切り条件が真であるときには、セットされている最下位ビット値を前記結果値に追加させるように構成された結果修正回路を更に備えている、請求項1から17までのいずれかに記載の装置。

請求項19

前記結果修正回路は、前記打ち切り条件が真であることを識別するためには、前記結果値が負であることを要求するように構成されている、請求項18に記載の装置。

請求項20

前記結果修正回路は、前記打ち切り条件が真であることを識別するためには、前記結果値が正であることを要求するように構成されている、請求項18に記載の装置。

請求項21

除算回路を用いて除算動作を実行するように構成されたデータ処理装置を動作させる方法であって、前記除算動作は、入力分子を入力分母で除算することによって結果値を生成するように構成されており、前記入力分子と前記入力分母とはバイナリ値である、方法において、前記入力分子と前記入力分母とを特定する除算命令を受け取るステップと、前記入力分母が、Nを整数として±2Nによって与えられる値を有する場合には、バイパス条件をシグナリングするステップと、前記バイパス条件が存在しない場合には、前記除算回路を用いて前記除算動作を実行することによって前記結果値を生成するステップと、前記バイパス条件が存在する場合には、前記除算回路をバイパスさせ、前記結果値を、Nビットだけシフトされた前記入力分子として生成するステップと、を含む方法。

請求項22

除算命令に応答して除算回路を用いて除算動作を実行するように構成されたデータ処理のための装置であって、前記除算動作は、前記除算命令によって特定された入力分子を前記除算命令によって特定された入力分母で除算することによって結果値を生成するように構成されており、前記入力分子と前記入力分母とはバイナリ値である、装置において、前記入力分子と前記入力分母とを特定する除算命令を受け取るための手段と、前記入力分母が、Nを整数として±2Nによって与えられる値を有する場合には、バイパス条件をシグナリングするための手段と、前記バイパス条件が存在しない場合には、前記除算動作を実行することによって前記結果値を生成するための手段と、前記バイパス条件が存在する場合には、前記結果値を生成するための前記手段をバイパスさせるための手段と、前記バイパス条件が存在する場合には、前記結果値を、Nビットだけシフトされた前記入力分子として生成するための手段と、を備えている装置。

技術分野

0001

本発明は、データ処理システムの分野に関する。より詳細には、本発明は、除算命令応答して除算動作を実行するように構成されたデータ処理システムに関する。

背景技術

0002

除算命令に応答して除算動作を実行するデータ処理システムを提供することは知られている。そのようなデータ処理システムは、分子分母とを特定する除算命令に応答して、除算動作を実行し、分子を分母によって除算した結果を生成するように構成されている。そのようなデータ処理システムには、典型的には、除算を実行するように構成された専用の除算回路が提供されている。例えば、整数除算命令に応答して整数除算を実行するように構成された専用の整数除算回路が、提供され得る。

課題を解決するための手段

0003

第1の態様から考察すると、本発明は、除算命令に応答して除算動作を実行するように構成されたデータ処理のための装置を提供する。この除算動作は、除算命令によって特定された入力分子を除算命令によって特定される入力分母で除算することにより結果値を生成するように構成されている。なお、入力分子と入力分母とはバイナリ値である。この装置は、除算動作を実行することによって結果値を生成するように構成された除算回路と、入力分母が、Nを整数として±2Nによって与えられる値を有する場合には、バイパス条件をシグナリングするように構成された2の累乗検出回路と、バイパス条件のシグナリングに応答して、除算回路をバイパスさせ、結果値をNビットだけシフトされた入力分子として生成するように構成されたバイパス回路とを備えている。

0004

現在の技術では、除算動作は、データ処理システムが実行するのに(すなわち、費やされる時間及びエネルギーの点で)比較的高コストの動作であり得る、と認識されている。更に、現在の技術では、専用の除算回路を動作させるコストは、分母が2の累乗である状況では回避可能であると認識されている。これは、分母が±2Nとして表され得るそのような状況においては、分子をNビット位置だけシフトすることによって、除算結果を非常に迅速に返すことが可能である、という理由による。これは、典型的には、分子の右シフトとなる(ただし、常にそうであるわけではないので、下記を参照のこと)。よって、分母が実際に2の累乗である状況では、除算回路を動作させるコストは、(例えば、除算命令に応答する除算回路の動作をそれ以降は停止させる除算回路への信号により)除算回路をバイパスし、上述したように入力分子をシフトすることにより生成された結果値を出力することによって、回避され得る。

0005

2の累乗検出回路は複数の方法で構成され得るが、いくつかの実施例では、2の累乗検出回路は、入力分母が1ビットだけセットされ他のすべてのビットがセットされていない場合にはバイパス条件をシグナリングするように構成された排他ビット検出回路を備えている。入力分子と入力分母とはバイナリ値であるから、1ビットだけがセットされているということは、(少なくとも、符号なしのバイナリ値、又は、正符号付きバイナリ値については)入力分母が2の累乗である(すなわち、入力分母のビットに最下位ビットから0で始まる番号を付けるとして、セットされている1ビットが入力分母のN番目のビットである場合に、入力分母を2Nと表すことが可能である)という事実を示す。ここで、あるビットを「セットする」とは、通常は、そのビットに1の値を与える行為を意味する、ということに注意すべきである。ただし、「セットされた」ビットを表すのに1という値を選択するのは任意であって、その代わりに0を用いることも可能であると考えられる。本発明の技術は、一方の表現又は他方の表現に限定されることはない。ただし、この一般的な通例に従い、セットされたビットは1の値を有するものとして説明される。

0006

いくつかの実施例では、バイパス回路は、結果値を、入力分母においてセットされている1ビットの後に続くセットされていないビット数だけシフトされた入力分子として生成するように、構成されている。よって、結果値を生成するために入力分子がシフトされるべきビット位置の数は、セットされていることが排他的ビット検出回路によって見いだされた1ビットの後に続く(すなわち、その1ビットよりも下位のビット位置にある)セットされていないビット数から決定することが可能である。

0007

除算回路を備えているデータ処理装置において、先行ゼロ決定回路も設けられている場合があり得るが、これは、2つのオペランド(分子及び分母)の先行ゼロ(leading zero)・カウントが除算回路との関係において複数の方法で用いられ得る、という理由による。例えば、除算回路が、セットされているそれぞれの最上位ビットの位置合わせをするために、それぞれの先行ゼロ・カウントだけ両方のオペランドを左シフトするように構成されている場合がその例である。データ処理装置は、また、2つの先行ゼロ・カウントの間の差を決定するように、且つその他のように構成されていることもあり得る。

0008

したがって、入力分母の先行ゼロ・カウントを決定するように構成された先行ゼロ決定回路を備えているいくつかの実施例では、2の累乗検出回路は、先行ゼロ・カウントのバイナリ表現反転させることによって入力分母の先行ゼロ・カウントからNを決定するように構成されている。これは、ある実例によって、最も適切に例証される。分母がバイナリで00010000である場合には、先行ゼロ・カウントは3であり、これは011である。先行ゼロ・カウントのこのバイナリ表現を反転させると、バイナリで100が得られ、これは4である。よって、Nは、分母のビットに最下位ビットから0で始まる番号を付けるとして、4番目のビットである。したがって、Nを決定するために、既存の先行ゼロ決定回路を使うことができる。

0009

この方法は、8ビット、16ビット及び32ビットのバイナリ値など、Aを整数として2Aビットのバイナリ値にだけ適している、ということに注意すべきである。

0010

この方法がうまく機能するためには、先行ゼロ・カウントのバイナリ表現がAビットの値でなければならない、ということにも注意すべきである。すなわち、上の実例では、分母は8ビットの値であるから、A=3(23=8)である。したがって、先行ゼロ・カウントのバイナリ表現は、3ビットの値(A=3)でなければならない。

0011

しかし、そのような先行ゼロ決定回路が設けられていない実施例では、Nを後置ゼロ(trailing zero)・カウントとしてより直接的に決定することが好ましい場合があり得る。したがって、いくつかの実施例は、入力分母の後置ゼロ・カウントを決定するように構成された後置ゼロ決定回路を備えており、その場合、2の累乗検出回路は、入力分母の後置ゼロ・カウントとしてNを決定するように構成されている。

0012

排他的ビット検出回路は、複数の方法で構成され得るが、いくつかの実施例では、ゲートの複数のバイナリ・ツリーを備え、ゲートのそれぞれのバイナリ・ツリーは複数の階層レベルを備え、それぞれのバイナリ・ツリーの1つの階層レベルがXORゲートを備え、それぞれのバイナリ・ツリーの他のすべての階層レベルがORゲートを備えており、複数のバイナリ・ツリーのそれぞれのバイナリ・ツリーは、そのXORゲートを、複数のバイナリ・ツリーの残りのバイナリ・ツリーと異なる階層レベルにおいて有し、複数のバイナリ・ツリーの出力のAND結合がバイパス条件を示す。よって、XORゲート及びORゲートのこのような構成(これは、ここにおける論理関数に対応するように理解されるべきであり、したがって、XOR及びORゲートそれぞれの機能を協働して提供する複数の論理ゲートの任意の組合せによって実装され得る)により、入力分母が、セットされているビットを1つだけ含むかどうかについて、判断することが可能になる。ここで、判断が可能になるのは、それぞれのバイナリ・ツリーが、排他的ビットが入力分母の内部において細分性(granularity)のそれぞれの異なるレベルで見つかったかどうか、すなわち、その隣接する位置との関係において排他的であるビットが見つかったかどうか、1対のビットにおける一方又は両方のビットがアサートされることが、セットされていない隣接する1対のビットを有することになるかどうか、少なくとも1ビットがセットされている4ビットの組が、セットされていない4ビットの組と隣接しているかどうかなどを示すように構成される、という事実による。このようにして、これらの条件を(例えば、最終的なANDゲートを経由して)組み合わせることにより、入力分母の全体においてただ1つのビットが排他的にセットされているかどうかに関する判断が可能になる。

0013

いくつかの実施例では、排他的ビット検出回路は、論理ゲートのネットワークを備えており、論理ゲートのこのネットワークは、入力分母をテスト値として受け取り、更に、
A)テスト値のビットの第1の半分においてはどのビットもセットされておらず、テスト値のビットの第2の半分においては少なくとも1ビットがセットされているかどうかの判断を実行し、前記判断が真である場合には、
B)テスト値のビットの第2の半分が1ビットだけになるまで、そして、この1ビットがバイパス条件をシグナリングするようにセットされている場合には、テスト値のビットの第2の半分をテスト値として受け取り、A)における判断を反復するように構成されている。

0014

よって、入力分母のそれぞれの半分を見て、これらの半分の一方だけがセットされたビットをいくつかでも有しているかどうかを判断することによって、反復的プロセスが実行され得るのであるが、セットされているビット(1つ又は複数)を有する半分は、このプロセスの次の反復において考察されるために、二分される。複数個の1ビットだけが考察されることになると、入力分母が、セットされたビットを1つだけ含むかどうかが、最終的に決定可能となる。

0015

入力分子と入力分母とは、符号のないバイナリ値であり得る。

0016

いくつかの実施例では、入力分子と入力分母とは、2の補数表現(complement representation)を用いた、符号付きのバイナリ値である。正の符号付きバイナリ値と負の符号付き値との表現における差異のために、現在の技術では、正の符号付きバイナリ値のために専用の2の累乗検出回路が提供されることが可能であり、負の符号付きバイナリ値のために専用の2の累乗検出回路が提供されることが可能であり、又は、符号付きバイナリ値のいずれの極性も処理可能である更に複雑な2の累乗検出回路が提供されることが可能であるが、これらの表現の一方を、同じ2の累乗検出回路を両方のために用いることが可能であるように適合させることができれば、より効率的な構成が提供される、ということが認識されている。したがって、いくつかの実施例では、入力分子と入力分母とは符号付きのバイナリ値であり、2の累乗検出回路は、入力分母が負の値を有する場合には、入力分母を前処理して前処理された入力分母を生成するように構成された前処理回路を備えており、2の累乗回路は、前処理された入力分母が2の累乗を表す場合には、バイパス条件を検出するように構成されている。

0017

前処理回路は、様々な形式を取り得るが、いくつかの実施例では、入力分母を1ビットだけ左シフトし、セットされていないビットを最下位ビットとして追加して中間値を生成するように構成され、中間値と入力分母とのXOR演算を実行して前処理された入力分母を生成するように構成されている。この構成は、有利であることに、セットされている1ビットをこの負の値である入力分母の正の等価物と同じビット位置に有する、前処理された入力分母を生成する。入力分母の正の等価物を生成することも可能であるが、このプロセスは、典型的に、入力値ビット反転を行って1を追加するステップを含んでおり、その結果として、この実装をより高コストにする可能性がある、要求されている桁上げ動作を生じさせることがある。

0018

したがって、いくつかの実施例では、2の累乗検出回路は、前処理された入力分母がセットされたビットを1つだけ有しており他のすべてのビットはセットされていない場合に、バイパス条件を検出するように構成されている。しかし、入力分母の正の等価物を生成することには価値があるということが、いくつかの実装例では判断され得るのであって、その理由は、例えば、この値が他の理由のために既に決定されているからであり、したがって、いくつかの実施例では、前処理回路は、入力分母の正の等価物を、前処理された入力分母として生成するように構成されている。

0019

正の等価物の生成は、様々な方法で提供され得るが、いくつかの実施例では、前処理回路は、入力分母のビットを反転させ1を追加して前処理された入力分母を生成するように構成されている。

0020

入力分子と入力分母とは、複数の異なる形式を取り得る。例えば、いくつかの実施例では、入力分子と入力分母とは、バイナリ整数である。そのような実施例では、この装置は、したがって、整数除算命令に応答して整数除算動作を実行するように構成され得、整数除算動作を実行することによって結果値を生成するように構成された整数除算回路を備え得る。他の実施例では、入力分子と入力分母とは、固定小数点バイナリ値である。そのような実施例では、この装置は、したがって、固定小数点除算命令に応答して固定小数点除算動作を実行するように構成され得、固定小数点除算動作を実行することによって結果値を生成するように構成された固定小数点除算回路を備え得る。

0021

一般的に、除算動作を実行するのに要求されるシフトは、Nが正である場合には、右シフトとなる。したがって、バイパス回路は、2の累乗検出回路がNは正の整数であることを示すときには、結果値を、Nビットだけ右シフトされた入力分子として生成するように構成され得る。しかし、現在の技術では、入力分子と入力分母とが固定小数点バイナリ値である場合には、入力分母がNを負の整数として±2Nによって表される可能性(例えば、入力分母が0.5=2−1の場合)が存在し、この場合には、結果値を生成するのに左シフトが要求される、ということが認識されている。したがって、バイパス回路は、2の累乗検出回路がNは負の整数であることを示すときには、結果値を、Nビットだけ左シフトされた入力分子として生成するように構成され得る。

0022

いくつかの実施例では、この装置は結果修正回路を更に備えており、この結果修正回路は、バイパス条件がシグナリングされNが正であるときには、入力分子をNビットだけ右シフトして結果値を生成することにより、セットされている少なくとも1ビットを取り除いている場合には、打ち切り条件識別し、打ち切り条件が真であるときには、セットされている最下位ビットの値を結果値に追加させるように構成されている。現在の技術では、分子を右シフトすることによって結果値を生成するときには、この装置が、セットされている最下位ビット値を結果値に追加する(すなわち、典型的な構成では「1」を追加する)ことを可能にすることによって、結果値の丸め処理へのアプローチが改善され得ることが、更に認識されている。これは、右シフトによって、セットされている少なくとも1ビットが取り除かれているときに、有効である。その理由は、これによって、正及び負の結果値を異なる態様で丸め処理できるということが分かっているからである。

0023

丸め処理に関するこの装置の特定の構成によって、「1」が追加されるべき条件が決定される。例えば、ゼロに近づく方向に結果値を丸めるように装置が構成されている場合には、結果修正回路は、打ち切り(truncation)条件が真であることを識別するためには、結果値が負であることを要求するように構成され得る。或いは、ゼロから離れる方向に結果値を丸めるように装置が構成されている場合には、結果修正回路は、打ち切り条件が真であることを識別するためには、結果値が正であることを要求するように構成され得る。

0024

いくつかの実施例では、この装置は、バイパス条件がシグナリングされNが負であるときには、入力分子をNビットだけ左シフトして結果値を生成することにより、セットされている少なくとも1ビットが取り除かれている場合には、オーバフロー条件を識別し、オーバフロー条件が真であるときには、オーバフロー応答を実行させるように構成されたオーバフロー検出回路を更に備えている。

0025

オーバフロー応答は、オーバフロー・フラグをセットさせること、及び/又は、分子が取り得る最大の大きさに結果値を設定することを、有利に、含み得る。

0026

第2の態様から考察すると、本発明は、除算回路を用いて除算動作を実行するように構成されたデータ処理装置を動作させる方法を提供する。ここで、除算動作は、入力分子を入力分母で除算することによって結果値を生成するように構成されており、入力分子と入力分母とはバイナリ値である。この方法は、入力分子と入力分母とを特定する除算命令を受け取るステップと、入力分母がNを整数として±2Nによって与えられる値を有する場合には、バイパス条件をシグナリングするステップと、バイパス条件が存在しない場合には、除算回路を用いて除算動作を実行することによって結果値を生成するステップと、バイパス条件が存在する場合には、除算回路をバイパスさせ、結果値を、Nビットだけシフトされた入力分子として生成するステップとを含む。

0027

第3の態様から考察すると、本発明は、除算命令に応答して除算回路を用いて除算動作を実行するように構成されたデータ処理のための装置を提供する。ここで、除算動作は、除算命令によって特定された入力分子を除算命令によって特定された入力分母で除算することによって結果値を生成するように構成されており、入力分子と入力分母とはバイナリ値である。この装置は、入力分子と入力分母とを特定する除算命令を受け取るための手段と、入力分母がNを整数として±2Nによって与えられる値を有する場合には、バイパス条件をシグナリングするための手段と、バイパス条件が存在しない場合には、除算動作を実行することによって結果値を生成するための手段と、バイパス条件が存在する場合には、結果値を生成するための手段をバイパスさせるための手段と、バイパス条件が存在する場合には、結果値を、Nビットだけシフトされた入力分子として生成するための手段とを備えている。

0028

本発明は、添付の図面に図解されている実施例を単なる実例として参照して、更に説明される。添付の図面は、次の通りである。

図面の簡単な説明

0029

ある実施例における、固定小数点除算回路を備える固定小数点実行パイプラインと整数除算回路を備える整数実行パイプラインとを備えたデータ処理システムの概略図である。
ある実施例における、関連する2の累乗検出回路とバイパス回路とを備えた整数除算回路の概略図である。
ある実施例における、関連する2の累乗検出回路とバイパス回路とを備えた固定小数点除算回路の概略図である。
ある実施例における、入力分母が2Nと表現可能であるときに、先行ゼロ決定回路の出力から正の整数Nを決定することの概略図である。
ある実施例における、入力分母が2Nと表現可能であるときに、後置ゼロ決定回路の出力から正の整数Nを決定することの概略図である。
ある実施例における、セットされたビットを入力分母が1つだけ含むことを決定し得る反復的なプロセスの概略図である。
図4Aに示されている反復的プロセスを実装するのに用いられ得る論理ゲートの構成の概略図である。
ある実施例における排他的ビット決定回路の概略図である。
ある実施例における、正及び負両方の符号付き整数入力分母が、排他的ビット検出のための入力として用いられることを可能にする前処理回路の概略図である。
ある実施例における、負の符号付き整数入力分子の正の等価物を生成する前処理回路の概略図である。
ある実施例の方法で行われる一連のステップの概略図である。
ある実施例におけるシフト回路の構成の概略図である。

実施例

0030

図1は、プロセッサ11とメモリ13とを含むデータ処理システム10を概略的に図解している。プロセッサは、システム相互接続12を経由して、メモリ13のコンテンツアクセスするように構成されている。メモリは、プロセッサ11によって実行されるデータ処理動作を構成するプログラム命令14と、そのデータ処理動作が実行される対象であるデータ15とを記憶する。プロセッサ11は、プログラム命令14によって特定されるように、そのデータ処理動作を処理パイプラインによって実行する。なお、処理パイプラインは、(図1において概略的に図解されているように)フェッチ段16と、デコード及びイシュー段(issue stage)17と、複数の異なる実行パイプライン8、18、19及び20とを含む。実行パイプラインは、固定小数点パイプライン8と、整数パイプライン18と、浮動小数点パイプライン19と、汎用実行パイプライン20とを含む。本発明の技術は、固定小数点パイプライン8と関係しており、固定小数点パイプライン8は、固定小数点除算回路9と、整数除算回路21を備えた整数パイプライン18とを備えている。メモリ13に記憶されている命令14からリトリーブされる固定小数点除算命令が、その固定小数点除算命令において特定される固定小数点分子と固定小数点分母とを用いて固定小数点除算動作を実行するように、固定小数点パイプライン8を構成する。同様に、メモリ13に記憶されている命令14からリトリーブされる整数除算命令が、その整数除算命令において特定される整数分子と整数分母とを用いて整数除算動作を実行するように、整数パイプライン18を構成する。

0031

図2Aは、整数除算回路21を、ある実施例において本発明の技術により提供される更なる回路と共に、概略的に図解している。ここでは、これらの追加的なコンポーネントは、2の累乗検出回路22と、バイパス回路23とを備えている。バイパス回路23は、右シフト回路24と、マルチプレクサ25とを備えている。図2Aは、整数除算命令も概略的に図解しており、この整数除算命令は、これが整数除算命令であることを示す(そして、これが、符号付きの整数除算命令であるのか、又は、符号なしの整数除算命令であるのかを更に示し得る)演算コード(opcode,オペコード)26と、分母27の指示と、分子28の指示とを有する。分母27と分子28とは、例えば、メモリ13のデータ部分15に、データ値として記憶され得る。

0032

動作の際には、整数除算回路21がその整数除算動作を実行し得るように、分母27と分子28とが整数除算回路21に提供される。しかし、分母27は、2の累乗検出回路22にも提供され、この2の累乗検出回路22は、整数である分母27が2の累乗であるかどうか、すなわち、Nを正の整数として±2Nとして表すことが可能かどうかを判断するように構成されている。2の累乗であるときには、2の累乗検出回路22は、Nの対応する値を、右シフト回路24へ出力し、バイパス信号も出力する。このバイパス信号は、整数除算回路21に提供されて、整数除算回路21が整数除算動作のいかなるそれ以上の部分も実行しないようにする。右シフト回路24は、整数である分子28を受け取り、2の累乗検出回路22から受け取るNによって与えられるビット数の位置だけ、この値を右シフトする。この右シフトの結果は、次に、マルチプレクサ25に提供されるのであるが、マルチプレクサ25の他方の入力は、整数除算回路21によって生成される通常の結果値である。2の累乗検出回路22によって生成されるバイパス信号は、このバイパス信号がアサートされていないときには整数除算回路21の通常の出力結果が結果値として用いられ、このバイパス信号がアサートされているときには右シフト回路24によって実行される右シフト動作によって生成される値が結果値として用いられるように、このマルチプレクサ25のための選択信号として用いられる。

0033

図2Bは、固定小数点除算回路121を、ある実施例において本発明の技術により提供される更なる回路と共に、概略的に図解している。ここでは、これらの追加的なコンポーネントは、2の累乗検出回路122と、バイパス回路123とを備えている。バイパス回路123は、シフト回路124と、マルチプレクサ125とを備えている。図2Bは、固定小数点除算命令も概略的に図解しており、この固定小数点除算命令は、これが固定小数点除算命令であることを示す(そして、これが、符号付きの固定小数点除算命令であるのか、又は、符号なしの固定小数点除算命令であるのかを更に示し得る)演算コード126と、分母127の指示と、分子128の指示とを有する。分母127と分子128とは、例えば、メモリ13のデータ部分15に、データ値として記憶され得る。

0034

動作の際には、固定小数点除算回路121がその固定小数点除算動作を実行し得るように、分母127と分子128とが固定小数点除算回路121に提供される。しかし、分母127は、2の累乗検出回路122にも提供され、この2の累乗検出回路122は、固定小数点である分母127が2の累乗であるかどうか、すなわち、Nを整数として±2Nとして表すことが可能かどうかを判断するように構成されている。2の累乗であるときには、2の累乗検出回路122は、Nの対応する値を、シフト回路124へ出力し、バイパス信号も出力する。このバイパス信号は、固定小数点除算回路121に提供されて、固定小数点除算回路121が固定小数点除算動作のいかなるそれ以上の部分も実行しないようにする。シフト回路124は(図2Aにおける右シフト回路24の場合のような)右シフトだけの回路ではない、ということに注意すべきである。その理由は、固定小数点の値を用いて作業しているときには、入力分母が(例えば、入力分母が0.5=2−1であるような)2の負の累乗に等しい可能性があり、その場合、入力分子の左シフトが要求されるからである。したがって、シフト回路124は、Nの符号を判断して、適切に、左シフト又は右シフトするように構成されている。シフト回路124は、固定小数点である分子128を受け取り、2の累乗検出回路122から受け取るNによって与えられるビット数の位置だけ、この値をシフトする。このシフトの結果は、次に、マルチプレクサ125に提供されるのであるが、マルチプレクサ125の他方の入力は、固定小数点除算回路121によって生成される通常の結果値である。2の累乗検出回路122によって生成されるバイパス信号は、このバイパス信号がアサートされていないときには固定小数点除算回路121の通常の出力結果が結果値として用いられ、このバイパス信号がアサートされているときにはシフト回路124によって実行されるシフト動作によって生成される値が結果値として用いられるように、このマルチプレクサ125のための選択信号として用いられる。

0035

図3Aは、ある実施例において2の累乗値Nがどのように生成されるのかを概略的に図解している。この実施例では、データ処理装置が、先行ゼロ・カウント(CLZ)回路30を備えており、このCLZ回路30は、分子CLZ(NUM)と分母CLZ(DEN)とのそれぞれに対する先行ゼロ・カウントを整数除算回路21(図2Aを参照のこと)に提供するように構成されている。整数除算回路21は、その整数除算動作を実行する際に、これらの値を利用する。当業者であれば、整数の除算におけるそのような先行ゼロ・カウントの使用については熟知しているから、簡潔にするため、この態様に関する更なる説明は割愛される。図3Aに示されているように、CLZ回路30によって生成される分母に対する先行ゼロ・カウントを受け取りこの値のビットを反転させてNを生成する反転回路31も提供されている。このように、図2Aに概略的に図解されている実施例のコンテキストでは、CLZ回路30と反転回路31とを、2の累乗検出回路22の一部を形成するものと考えることが可能であるが、これは必須ではなく、これらの回路は、整数除算回路21の一部として、又は、データ処理装置の別々の部分として、提供され得ることを理解されたい。

0036

図3Bは、後置ゼロ・カウント回路32が提供されている別の構成を概略的に図解しているのであるが、これによって、整数値Nを、整数である分母値の後置ゼロ・カウントから直接決定することが可能になる。

0037

図4Aは、分母において1ビットだけがセットされており他のビットはすべてセットされていないかどうかを判断し得る反復的プロセスを概略的に図解している。第1段40では、分母が半分に二分して考察され、一方の半分ではどのビットもセットされておらず他方の半分では少なくとも1ビットがセットされているかどうかが判断される。次に、少なくとも1ビットがセットされている方の半分が、第2段41で考察されるために前方へ送られ、第2段41において、同じ判断がなされる、すなわち、一方の半分ではどのビットもセットされておらず他方の半分では少なくとも1ビットがセットされているかどうかが判断される。これが真である場合には、少なくとも1ビットがセットされている方の半分が、次の段42に向けて前方へ送られ、段42において、一方の半分ではどのビットもセットされておらず他方の半分では少なくとも1ビットがセットされているかどうかが判断される。この反復的プロセスは、ビット長がより大きな分母の値について、他の更なる段まで継続され得るが、少なくとも1ビットはセットされている方の「半分」も1ビットだけである(段42などの)最終段に到達した場合には、排他的ビット条件が見いだされ、これに基づき、バイパス条件をシグナリングすることができる。

0038

図4Bは、図4Aに示されている反復的プロセスを実装するのに用いられ得る論理ゲートを概略的に図解している。この図において、分母値45は制御論理46へ送られるのであるが、この制御論理46は、分母値を2つの半分ずつに分割して、一方の半分をNORゲート47への入力として提供し、他方の半分をORゲート48への入力として提供するように構成されている。NORゲート47の出力とORゲート48の出力とは、制御論理46に戻される。これらの入力に基づき、制御論理は、図4Aを参照して説明された手順において次のレベルへ送るのに要求される条件が、すなわち、一方の半分ではどのビットもセットされておらず(つまり、NORゲート47の出力は1であり)、他方の半分では少なくとも1ビットがセットされている(つまり、ORゲート48の出力は1である)という条件が、満たされているかどうかを判断することができる。それぞれの反復において、制御論理46は、ゲート47及び48のそれぞれを通過する値の両方の半分それぞれを試すように構成されていることに注意すべきである。どちらの組み合わせ(permutation)も要求されている結果を生成しない場合には、プロセスは停止され、分母45はセットされたビットを1ビットも含まない、と判断される。しかし、要求されている条件が満たされるときには、ORゲート48に提供された値の半分が、更に二分割され、一方の半分がNORゲート47に提供され、一方の半分がORゲート48に提供される。この反復的プロセスは、図4Aを参照して説明されたように、継続する。制御論理46は、1ビットだけが論理47及び48のそれぞれによって試されていると判断すると、ORゲート48の出力が制御信号と共に(ANDゲート49への入力を形成するように)バイパス信号を提供することができるように、制御信号を活性化する。

0039

図5は、2の累乗検出回路を提供するためにある実施例で用いられる論理ゲートの構成を概略的に図解している。これらの論理ゲートは、2入力XORゲートとORゲートとによって構成されるバイナリ・ツリーを備えており、更に、それぞれのバイナリ・ツリーの出力をその入力として受け取る最終的なANDゲートを備えている。換言すると、図解されている3つのバイナリ・ツリーがすべて1の値を生成する場合にのみ、排他的ビット条件であると判断され(すなわち、分母はセットされた1ビットだけを含む)、バイパス信号が生成される。図5に見られるように、第1のバイナリ・ツリーは、その階層の第1のレベルにおける複数のXORゲートと、その階層の第2のレベルにおける複数のORゲートと、その階層の第3のレベルにおける1つのORゲートとを備えている。第2のバイナリ・ツリーは、その階層の第1のレベルにおける複数のORゲートと、その階層の第2のレベルにおける複数のXORゲートと、その階層の第3のレベルにおける最終的な1つのORゲートとを備えている。第3のバイナリ・ツリーは、その階層の第1のレベルにおける複数のORゲートと、その階層の第2のレベルにおける複数のORゲートと、その階層の第3のレベルにおける最終的な1つのXORゲートとを備えている。したがって、第1のバイナリ・ツリーの出力がセットされている場合、これは、分母において少なくとも1ビットがセットされており、このビットはその隣接する対との関係で排他的である、すなわち、その隣接する対はセットされていない、ということを示す。第2のバイナリ・ツリーの出力がセットされている場合、これは、分母において少なくとも1ビットがセットされており、この少なくとも1ビットがセットされている1対のビット位置は、それに隣接する1対のビット位置との関係では排他的である、すなわち、この隣接するビット対ではどのビットもセットされていない、ということを示す。最後に、第3のバイナリ・ツリーの出力がセットされている場合、これは、少なくとも1ビットがセットされている分母の半分とは別の分母(4ビット)の他方の半分に含まれるビットはどれもセットされていない、ということを示す。これらのバイナリ・ツリーの出力のすべてがセットされている場合には、これは、分母の中で1ビットだけがセットされている、ということを示す。したがって、この場合、バイパス信号が、生成される。

0040

図6は、ある実施例において提供される、符号付きの整数を受け取るように構成されている前処理回路を概略的に図解している。入力分母60は、最初に、負値検出回路61に送られるが、負値検出回路61は、入力分母が正符号付きの整数であるのか負符号付きの整数であるのかを判断するように構成されている。図6の右側に与えられている実例を参照すると理解できるように、これは、その値が正符号付き(ゼロ)なのか負符号付き(1)なのかを示す入力値の最上位ビットに関してなされる。入力分母60は、正符号付きの整数である場合には、例えば図5に図解されているように構成され得る排他的ビット検出回路64まで、直接送られ得る。しかし、負値検出回路61が、入力分母60は負符号付きの整数であると判断する場合には、入力分母60は、左シフト及びゼロ追加回路62に送られる。なお、この左シフト及びゼロ追加回路62は、負符号付き入力値に対し、1ビット位置だけ左シフトし、ゼロを新たな最下位ビットとして追加するように構成されている。これも、図6の右側に示されている実例において図解されている。次に、この新たに生成された値はXOR回路63に送られるのであるが、XOR回路63は、その他方の入力として、元の入力分母値60を受け取る。次に、このXOR演算の結果は、排他的ビット検出回路64に送られる。

0041

図6の右側に示されているように、+16(00010000)などの正符号付き整数値は、直接排他的ビット検出回路64に送られる。他方で、−16(11110000)などの負符号付き整数は、上述されたように、左シフトされ、ゼロを追加され、XOR演算が行われることにより、2の累乗である負符号付きの入力値に対し、セットされた1ビットが生成される。図6の右側に与えられている実例では、負符号付き整数に対するこの演算の結果は、この数(すなわち+16)の正符号付き整数表現と全く同等であることに注意すべきである。しかし、左シフト、ゼロの追加、及びXOR演算は、負符号付き整数が2の累乗である場合に、その負符号付き整数の正符号付き表現を生成するだけである、ということに注意すべきである。他の場合には、負符号付き入力整数の正符号付き表現が結果的に得られることはない。

0042

しかし、負符号付き整数である入力分母を、その正符号付き整数表現に変換することによって、排他的ビット検出回路への適切な入力が提供されるという別の可能性が生じるのであって、ある実施例では、図7に概略的に図解されているように、この反転が実行され得る。したがって、この実施例における入力分母70は、最初に、この値の各ビットを反転させるように構成されているビット反転回路71に送られる。その後で、追加回路71が、そのビット反転プロセスの結果に対して1を追加することにより、結果的に、入力分母70の正バージョン73が得られる。例えば、他の理由によってビット反転回路71と追加回路72とがデータ処理装置の内部に既に提供されているようなときには、この技術が望ましいという状況が存在し得る。しかし、この特定の技術の潜在的な短所は、追加回路72による1の追加を実行するために要求され得る関連の処理である、ということを認識すべきである。これは、図7の右側に与えられている実例から見ることができるが、この追加には、複数回の桁上げステップの実行が要求されるため、正バージョン73を得るためには、一般論として、図6を参照して説明した技術よりもより多くの時間及びエネルギーが消費される。

0043

図8は、ある実施例の方法によって採用され得る一連のステップを概略的に図解している。整数除算命令が、ステップ80において受け取られ解釈されて、整数パイプラインを設定してこの命令を実行するために、制御信号が適切に送られる。次に、ステップ81において、この命令を実行する第1のステップとして、この実行されるべき整数除算の整数オペランドが符号付き整数であるかどうか、そして、分母値が負であることが判断される。そうである場合には、フローはステップ82及び83を経由してステップ84に進み、そうでない場合には、フローは直接ステップ84へ進む。ステップ82では、分母は、1ビットだけ左シフトされ、最下位ビット位置にゼロが追加される。ステップ83において、この演算の結果と元の分母値との間でXOR演算がなされ、次のステップに送られる値が生成される。ステップ84では、この値(すなわち、ステップ81からの「いいえ」の経路を経由した場合の元の分母、又は、ステップ83におけるXOR演算の結果)について、1ビットだけセットされているかどうかが判断される。そうでない場合には、フローはステップ85に進み、このステップ85では、整数除算回路が、ステップ80で受け取られた整数除算命令を実行するために、その完全な整数除算プロセスを実行することが許される。しかし、1ビットだけがセットされている場合には、フローはステップ86に進み、整数除算回路のそれ以上の動作が回避される。ステップ87では、分母に対するCLZ値が反転させられることによってN(すなわち、整数である分母が対応する2の累乗)が生じ、ステップ88では、分子がNビット位置だけ右シフトされる。ステップ89では、その結果が、整数除算命令80の結果として出力される。

0044

図9は、図2A及び図2Bに示されている右シフト回路24/シフト回路124の更なる詳細を、概略的に図解している。このシフト回路は、図9では、全体として参照番号140が付されており、いずれの実施例にも適用可能である。シフト回路140は、分子シフト回路142と、商符号決定回路144と、廃棄された「1」検出回路146と、「1」追加回路148と、オーバフロー・フラグ設定回路150とを備えている。シフト回路のこの特定の構成は、分子が右シフトされる場合には、結果値の丸め処理が、ゼロに近づく方向に丸めるのが望ましいのかゼロから離れる方向に丸めるのが望ましいのかに応じて、適切に実行され、分子が左シフトされる場合には、左シフトの結果として「1」が廃棄されるならばオーバフロー・フラグが設定される、ということが保証されるように、提供される。

0045

例えば、除算の結果が正の数であるときには、右シフトの後の結果値は、ゼロに近づく方向への丸め処理が可能である。単純な実例を挙げると、11が4で除算される場合(真の値は、23/4)、「ゼロに近づく方向への丸め処理」の結果は2である。バイナリな実装では、これは、11(10進法)=01011(バイナリ)であり、これは、(4による除算を実装するために)2つの場所だけシフトした後では、00010となり、(分子の最下位の2ビットである)「11」が廃棄される。しかし、除算の結果が負の数であるときには、右シフトの後で結果値に対して同じ作用を実装すると、結果的に、ゼロから離れる方向への丸め処理が生じる。上述した実例の負のバージョンを挙げると、−11を4で除算すると、−23/4になり、これは、−3として現れる。これは、バイナリ表現では、−11(10進法)=10101(2の補数バイナリ)であり、(4による除算のために)2つの場所だけシフトした後では(そして、符号を延長して)11101となり、(分子の最下位の2ビットである)後置「01」が廃棄されるからである。

0046

丸め処理の方向が一貫している(ゼロに近づく方向又はゼロから離れる方向のいずれか)構成を提供するために、シフト回路に、商符号決定回路144と、廃棄された「1」検出回路146と、「1」追加回路148とが設けられる。商符号決定回路144は、分子シフト回路142の動作の結果として得られる商の符号を決定する。廃棄された「1」検出回路146は、右シフト動作の結果として、セットされている少なくとも1ビット(すなわち、この実施例では、「1」)が廃棄されたかどうかを判断する。商符号決定回路144と廃棄された「1」検出回路146との動作の結果に基づき、廃棄された「1」検出回路が、「1」を結果値に追加するように「1」追加回路148を制御して、丸め処理が正しく実行されることを保証する。特に、この装置がゼロに近づく方向に丸め処理を行うように構成されており、いずれかの1がシフトによって消滅し、商が負である場合には、「1」追加回路148が「1」を結果値に追加する。逆に、この装置がゼロから離れる方向に丸め処理を行うように構成されており、いずれかの1がシフトによって消滅し、商が正である場合には、「1」追加回路148が「1」を結果値に追加する。

0047

別の実例では、分子が、分子シフト回路142によって、左シフトされる。廃棄された「1」検出回路146が、少なくとも1つのセットされたビットがこの左シフト動作の結果として放棄されたかどうか、を判断する。この放棄された「1」検出回路は、少なくとも1つのセットされたビットが放棄されたと判断する場合には、オーバフロー・フラグ設定回路150を制御してオーバフロー・フラグを設定する。この実施例では、結果値は、オーバフロー・フラグがアサートされることによる影響を受けない(ただし、除算の結果である真の値を表さないものとして、無効となる)。しかし、既に述べられたように、例えば、結果値は、その代わりに、データ処理システムによって表現可能な最大値に設定されることがあり得る。

0048

本明細書では、本発明の特定の実施例が説明されてきたが、本発明はそれらに限定されないこと、そして、本発明の範囲内で多くの修正及び追加を行い得ることが、明らかとなるであろう。例えば、本発明の範囲から逸脱することなく、以下の従属請求項の特徴と独立請求項の特徴との様々な組合せが可能である。

0049

8固定小数点パイプライン
9 固定小数点除算回路
10データ処理システム
11プロセッサ
12 システム相互接続
13メモリ
14プログラム命令
15 データ
16フェッチ段
17デコード及びイシュー段
18整数パイプライン
19浮動小数点パイプライン
20汎用実行パイプライン
21整数除算回路
22 2の累乗検出回路
23バイパス回路
24右シフト回路
25マルチプレクサ
26演算コード
27分母
28分子
121 固定小数点除算回路
122 2の累乗検出回路
123 バイパス回路
124シフト回路
125 マルチプレクサ
126 演算コード
127 分母
128 分子
30 CLZ回路
31反転回路
32後置ゼロ・カウント回路
40 第1段
41 第2段
45 分母値
46制御論理
47NORゲート
48ORゲート
49ANDゲート
60入力分母
61負値検出回路
62左シフト及びゼロ追加回路
63 XOR回路
64排他的ビット検出回路
70 入力分母
71ビット反転回路
72 追加回路
73 正バージョン
140 シフト回路
142 分子シフト回路
144 商符号決定回路
146廃棄された「1」検出回路
148 「1」追加回路
150オーバフロー・フラグ設定回路

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

関連する公募課題

ページトップへ

技術視点だけで見ていませんか?

この技術の活用可能性がある分野

分野別動向を把握したい方- 事業化視点で見る -

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

この 技術と関連性が強い技術

関連性が強い 技術一覧

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

関連する挑戦したい社会課題一覧

この 技術と関連する公募課題

関連する公募課題一覧

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ