JP5804047B2 - 演算装置及び演算実行方法 - Google Patents
演算装置及び演算実行方法 Download PDFInfo
- Publication number
- JP5804047B2 JP5804047B2 JP2013500710A JP2013500710A JP5804047B2 JP 5804047 B2 JP5804047 B2 JP 5804047B2 JP 2013500710 A JP2013500710 A JP 2013500710A JP 2013500710 A JP2013500710 A JP 2013500710A JP 5804047 B2 JP5804047 B2 JP 5804047B2
- Authority
- JP
- Japan
- Prior art keywords
- event
- function
- data
- calculation
- result
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/542—Event management; Broadcasting; Multicasting; Notifications
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/90335—Query processing
- G06F16/90344—Query processing by using string matching techniques
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Multimedia (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
1)イベント列を検出できること
2)イベント列に付随したデータに対して演算が実行できること
を満足することができず、結果、システマティックにイベント処理の回路を構成することはできない。
本実施の形態にかかる演算装置は、1以上のデータ(以下、入力データという。)を含むデータ群(イベント)を入力とし、所定の演算を実行するものである。具体的には、イベントを入力とし、入力データを引数とする関数において規定された演算を実行し結果を出力すると共に、入力データの比較結果を戻り値として出力し、また、関数の戻り値を使用してイベントを検出する処理を実行する。
また、関数に規定される演算の内容は特に限定されない。例えば、演算は、所定の文字又は文字列との比較であってもよい。さらに、演算は、何も処理をしないものであってもよい。すなわち、演算は、直前の計算結果を引数in、または入力データを単に格納し、そのまま引数outとして出力するものであってもよい。
これに対し、本実施の形態においては、関数処理部4000にて処理される、少なくとも1つの関数は、引数を有する関数として定義される。このため、本実施の形態においては、イベント列(単独のイベントも含む。)を検出するのみではなく、個々のイベントに対して実行すべき演算を定義することができる。
従って、この演算装置を組み合わせることによって、複雑なイベント列を検出し、必要に応じて個々のイベントに所定の演算を実行することができる演算装置を構成することができる。以下の実施の形態においてその詳細を説明する。
次に、本発明の実施の形態2について説明する。本実施の形態においては、イベントからなるイベント列を入力とし、1以上の関数と演算子とを含む正規表現の演算を実施する演算装置について説明する。
図5A及び図5Bは、本実施の形態における演算装置によって実行される演算の、正規表現における連接を示す。本例における演算装置は、実施の形態1にかかる演算装置を2つ用いて構成されてもよい。あるいは、本例における演算装置は、制御パス要素及びデータパス要素を有する2つの演算装置からなり、少なくとも一方が実施の形態1にかかる演算装置であってもよい。
図6A及び図6Bは、本実施の形態における演算装置によって実行される演算の、正規表現における和を示す。本例における演算装置も、実施の形態1にかかる演算装置を2つ用いて構成されてもよい。あるいは、本例における演算装置は、制御パス要素及びデータパス要素を有する2つの演算装置からなり、少なくとも一方が実施の形態1にかかる演算装置であってもよい。
図7A及び図7Bは、本実施の形態における演算装置によって実行される演算の、正規表現における繰り返しを示す。本例における演算装置は、実施の形態1にかかる演算装置1つを構成に含んでもよい。
1)イベントがどのような順序で発生したかを検出すること(例:イベントAの後にイベントBがきて、最後にイベントCがくる)
2)所定の条件にマッチした各イベントに対して、定義された計算ができること(例:イベントAで渡された温度とイベントBで渡された温度の平均をとる)
の両者を満足することが重要である。
なお、一方で、本願発明は、ソフトウェアで構成することも可能である。詳細は、後述する。ソフトウェアで実現することによって、演算装置にイベント処理用の専用回路を備える必要がなくなる。従って、演算装置の回路規模を削減することができる。
次に、本発明の実施の形態3について説明する。本実施の形態における演算装置は、実施の形態1にかかる演算装置2つを上述の実施の形態2における連接を用いて接続したものである。
そして、図2、図3、及び図5の規則に従い、制御パス要素2100Aと制御パス要素2101B、データパス要素3100Aと3101Bとが、それぞれ連接として接続されている。
次に、本実施の形態にかかる演算装置のイベント列の処理方法について説明する。図10は、図9で示した正規表現における連接の演算を実施する本実施の形態にかかる演算装置の動作の一例を示す図である。図10において、入力としてIDが100、温度が50のイベント1000_1が関数処理部4000A及び4000Bに与えられる例を示している。この結果、制御比較部4001Aの出力結果は1、データ計算部4002Aの出力結果は50、AND101Aの出力結果は1、制御比較部4001Bの出力結果は0、AND101Bの出力結果は0、データ計算部4002Bの出力結果は25となる。
図11は、図9で示した演算装置の動作の一例を示す図である。図11は、図10に示すイベント1000_1入力の後に、入力としてIDが200、温度が150のイベント1000_2が関数処理部4000A及び4000Bに与えられた例を示している。この結果、制御比較部4001Aの出力結果は0、データ計算部4002Aの出力結果は150、論理積AND101Aの出力結果は0、制御比較部4001Bの出力結果は1、論理積AND101Bの出力結果は1、データ計算部4002Bの出力結果は100となる。
図12は、図9で示した演算装置の動作の一例を示す図である。図12は、図11に示すイベント1000_2の入力後に、入力としてIDが300、温度が0のイベント1000_3が関数処理部4000A及び4000Bに与えられる例を示している。この結果、制御比較部4001Aの出力結果は0、データ計算部4002Aの出力結果は0、AND101Aの出力結果は0、制御比較部4001Bの出力結果は0、AND101Bの出力結果は0、データ計算部4002Bの出力結果は75となる。ここで、本例においては、制御パス要素2101Bのレジスタ103Bから出力されるイベント検出結果が1となり、データパス要素3101Bのレジスタ102から出力される関数A(sum)B(sum)の演算結果が100となる。すなわち、レジスタ103Bの出力が1となることから、このイベント列においてマッチが発生したことがわかり、すなわち対象のイベント列が検出されたことを示し、そのときの温度の平均値(演算結果)は、レジスタ102Bの出力結果から100とわかる。
図13は、図9で示した演算装置の連接の動作の一例を示す図である。図13は、図10に示すイベント1000_1の入力の後に、入力としてIDが300、温度が0のイベント1000_4が関数処理部4000A及び4000Bに与えられる例を示している。この結果、制御比較部4001Aの出力結果は0、データ計算部4002Aの出力結果は0、AND101Aの出力結果は0、制御比較部4001Bの出力結果は0、AND101Bの出力結果は0、データ計算部4002Bの出力結果は25となる。この場合は、入力イベント列は関数処理部4000A、4000Bにマッチしないため、レジスタ103Bの出力は0となり、イベント列は検出されない。この場合、データ計算部4002Bの出力結果は、無効なデータとして扱われ、本演算装置の正規の出力結果として採用されない。
本実施の形態にかかる演算装置は、図2、図3、及び図5の規則に従い、制御パス要素2100Aと制御パス要素2101B、データパス要素3100Aと3101Bとが、それぞれ連接として接続されている。この構成により、関数A(sum)B(sum)で記述される正規表現の演算を行うことができる。また、各データパス要素3100Aと3101Bは、制御比較部4001A、4001Bを有するため、関数に規定される比較結果にマッチしたイベント列を検出することができる。更に、データ計算部4002A、4002Bを有するため、各関数に規定された演算を実行し演算結果を出力することができる。
次に本発明の実施の形態4について説明する。本実施の形態における演算装置は、実施の形態1にかかる演算装置2つを上述の実施の形態2における和を用いて接続したものである。
次に、本実施の形態にかかる演算装置のイベント列の処理方法について説明する。図16は、図15で示した正規表現における和の演算を実施する演算装置の動作の一例を示す図である。図16は、入力として通貨の名称が円、通過量が100のイベント1010_1が関数4010A及び4010Bに与えられる例を示している。この結果、制御比較部4011Aの出力結果は1、データ計算部4012Aの出力結果は100、AND111Aの出力結果は1、制御比較部4011Bの出力結果は0、AND111Bの出力結果は0、データ計算部4012Bの出力結果は8000となる。
図17は、図15で示した正規表現における和の演算を実施する演算装置の動作の一例を示す図である。図17は、図16に示したイベント1010_1の入力に続き、入力として通貨の名称が元、通過量が5のイベント1010_2が関数4010A及び4010Bに与えられる例を示している。この結果、制御比較部4011Aの出力結果は0、データ計算部4012Aの出力結果は5、AND111Aの出力結果は0、制御比較部4011Bの出力結果は0、AND111Bの出力結果は0、データ計算部4012Bの出力結果は400となる。ここで、イベント検出結果を出力するOR212の出力が1となることから、入力されたイベント列においてマッチが発生、つまりイベントが検出されたことがわかる。そして、そのときの当該正規表現における演算結果、すなわち円建て通貨量は、マルチプレクサMUX211の出力結果から100とわかる。
図18は、図15で示した正規表現における和の演算を実施する演算装置の動作の一例を示す図である。図18は、入力として通貨の名称がドル、通過量が10のイベント1010_3が関数4010A及び4010Bに与えられる例を示している。この結果、制御比較部4011Aの出力結果は0、データ計算部4012Aの出力結果は10、AND111Aの出力結果は0、制御比較部4011Bの出力結果は1、AND111Bの出力結果は1、データ計算部4012Bの出力結果は800となる。
図19は、図15で示した正規表現における和の演算を実施する演算装置の動作の一例を示す図である。図19は、図18に示したイベント1010_3の入力続き、入力として通貨の名称が元、通過量が5のイベント1010_4が関数4010A及び4010Bに与えられる例を示している。この結果、制御比較部4011Aの出力結果は0、データ計算部4012Aの出力結果は5、AND111Aの出力結果は0、制御比較部4011Bの出力結果は0、AND111Bの出力結果は0、データ計算部4012Bの出力結果は0となる。ここで、本例においても、イベント検出結果を示すOR212の出力が1となることから、入力イベント列においてマッチが発生したことがわかり、そのときの演算結果である円建て通貨量は、マルチプレクサMUX211の出力結果から800とわかる。
図20は図15で示した正規表現における和の演算を実施する演算装置の動作の一例を示す図である。図20は、入力として通貨の名称が元、通過量が5のイベント1010_5が関数4010Aと4010Bに与えられる。この結果、制御比較部4011Aの出力結果は0、データ計算部4012Aの出力結果は5、AND111Aの出力結果は0、制御比較部4011Bの出力結果は0、AND111Bの出力結果は0、データ計算部4012Bの出力結果は400となる。ここで、イベントは関数4010Aと4010Bにマッチしないため、検出結果であるOR212の出力が0となり、イベント列は検出されない。この場合、データ計算部4012A、4012Bの出力結果は、共に無効なデータとして扱われ、本演算装置の正規の出力結果として採用されない。
次に本発明の実施の形態5について説明する。本実施の形態における演算装置は、実施の形態1にかかる演算装置を2つとし上述の実施の形態2で説明した和を用いて接続したものである。
次に、本実施の形態にかかる演算装置のイベント列の処理方法について説明する。図23は、図22で示した正規表現における繰り返しの演算処理を実施する本実施の形態にかかる演算装置の動作の一例を示す図である。図23は、入力として天気状況が雨、毎秒降水量が10のイベント1020_1が関数4020A及び4020Bに与えられる例を示している。この結果、制御比較部4021Aの出力結果は1、データ計算部4022Aの入力は0、データ計算部4022Aの出力結果は10、AND121Aの出力結果は1、制御比較部4021Bの出力結果は0、AND121Bの出力結果は0、データ計算部4022Bの出力結果は0となる。
図24は、図22で示した正規表現における繰り返しの演算処理を実施する本実施の形態にかかる演算装置の動作の一例を示す図である。図24は、図23に示すイベント1020_1に続き、入力として天気状況が雨、毎秒降水量が20のイベント1020_2が関数4020A及び4020Bに与えられる例を示している。この結果、制御比較部4021Aの出力結果は1、データ計算部4022Aの入力は10、データ計算部4022Aの出力結果は30、AND121Aの出力結果は1、制御比較部4021Bの出力結果は0、AND121Bの出力結果は0、データ計算部4012Bの出力結果は、積算秒数は1のため、30となる。
図25は、図22で示した正規表現における繰り返しの演算処理を実施する本実施の形態にかかる演算装置の動作の一例を示す図である。図25は、図24に示すイベント1020_2に続き、入力として天気状況が晴れ、毎秒降水量が0のイベントが関数4020A及び4020Bに与えられる。この結果、制御比較部4021Aの出力結果は0、データ計算部4022Aの入力は30、データ計算部4022Aの出力結果は30、AND121Aの出力結果は0、制御比較部4021Bの出力結果は1、AND121Bの出力結果は1、データ計算部4012Bの出力結果は、積算秒数は2のため、15となる。
図26は、図22で示した正規表現における繰り返しの演算処理を実施する本実施の形態にかかる演算装置の動作の一例を示す図である。図26は、図25に示すイベント1020_3の入力に続き、入力として天気状況が曇り、毎秒降水量が0のイベント1020_4が関数4020A及び4020Bに与えられる例を示している。この結果、制御比較部4021Aの出力結果は0、データ計算部4022Aの入力は0、データ計算部4022Aの出力結果は0、AND121Aの出力結果は0、制御比較部4021Bの出力結果は0、AND121Bの出力結果は0、データ計算部4022Bの出力結果は、積算秒数は1のため、10となる。ただし、イベント検出結果を示すレジスタ123Bの出力が1となることから、このイベント列においてマッチが発生、つまりイベントが検出されたことがわかり、そのとき平均積算毎秒降水量は、レジスタ122Bの出力結果から15とわかる。
図27は、図22で示した正規表現における繰り返しの演算処理を実施する本実施の形態にかかる演算装置の動作の一例を示す図である。図27は、図24に示すイベント1020_1の入力に続き、入力として天気状況が曇り、毎秒降水量が0のイベント1010_5が関数4020A及び4020Bに与えられる例を示す。この結果、制御比較部4021Aの出力結果は0、データ計算部4022Aの入力は30、データ計算部4022Aの出力結果は30、AND121Aの出力結果は0、制御比較部4021Bの出力結果は0、AND121Bの出力結果は0、データ計算部4022Bの出力結果は、積算秒数は2のため、15となる。しかしながら、このイベントは関数4020Aと4020Bにマッチしないため、イベント検出結果を示すレジスタ123Bの出力は0となり、イベント列は検出されない。この場合、データ計算部4022Bの出力結果は、無効なデータとして扱われ、本演算装置の正規の出力結果として採用されない。
以上の実施の形態においては、関数の戻り値は、真偽値を表す1ビットの情報である。関数の戻り値は、複数ビットに拡張されてもよい。本実施の形態においては、演算装置で実施する関数の戻り値が複数ビットである場合の例を示す。
次に、本発明の実施の形態7について説明する。本実施の形態にかかる演算装置は、後段に位置する演算装置から入力される動作停止要求を扱い、各演算装置における関数演算のサイクル数の違いに対応するものである。
さらに、論理積AND105には、後段に位置する演算装置から出力された動作停止要求ri(以下、当該要求は、0または1の値をとるデジタル信号形式で入力されるものとし、Ready信号と記載する。)が入力される。Ready信号riは、後段に位置する演算装置が動作停止を要求するか否かを示す信号であり、1の場合に動作停止を要求しないことを示し、0の場合に動作停止を要求することを示す。
演算装置1は、Ready信号riが0のとき、データ計算部4002の処理を停止させることができる。例えば、処理速度が遅い後段の演算装置が、演算処理の実行中に、前段の演算装置に対して0の値を持つReady信号riを出力する。このとき、演算装置1は、データ計算部4002の処理を停止させてもよい。そして、演算装置1は、後段の演算装置の演算処理が完了しReady信号riが1になるのを待って、データ計算部4002の処理を再開させてもよい。
なお、データ計算部4002の処理が完了していないときは、Ready信号riが0であっても、演算装置1は、データ計算部4002の処理を直ちに停止させる必要はない。
このように、演算装置1は、Ready信号riの値に応じて、データ計算部4002の処理の停止・許可の制御を行うことができる。
たとえば、予測機構は、自身のキュー106の構成から何クロックか後に空になること、または後段の演算装置の演算処理に何クロックか必要なことがわかっているため後段からのReady信号受信が何クロックか遅れることが予測される場合、先にReady信号を0にする
同様に、第2の演算装置Bには、Ready信号riが入力され、第2の演算装置Bは、Ready信号rを第1の演算装置Aに入力する。
第1の演算装置Aは、シフタ204に接続される。同様に、第2の演算装置Bは、シフタ205に接続される。シフタ204には、制御パス要素2140Aの制御パス出力結果c1、データパス要素3140Aのデータパスの出力結果d1、及びデータパス要素3140AのValid信号v1が入力される。シフタ205には、制御パス要素2141Bの制御パス出力結果c2、データパス要素3141Bのデータパスの出力結果d2、及びデータパス要素3141BのValid信号v2が入力される。
次に、本発明の実施の形態8について説明する。上述の説明においては、演算装置は、基本的にハードウェアであるものとして説明したが、ソフトウェア、すなわち、1以上の入力データを含むイベントを入力とする演算処理を、コンピュータに実行させるためのプログラムとすることも可能である。
101、105論理積回路(AND)
102、103、104レジスタ
106キュー
202論理和(OR)
203、206論理積(AND)
204、205シフタ
400繰り返し論理
1000、1010、1020、1030イベント
2100、2101、2200、2201,2300、
2110、2111、2210、2211,2310、
2120、2121、2220、2221,2320、
2130、2131、2140、2141、2150、制御パス要素
3100、3101、3200、3201、3300
3110、3111、3210、3211、3310
3120、3121、3220、3221、3320、
3130、3131、3140、3141、3150、データパス要素
4000関数
4001制御比較部
4002データ計算部
Claims (35)
- 第1のイベントに含まれる第1の入力データを引数とする第1の関数に規定された第1の演算を実行する第1の関数処理手段を有する第1のデータ処理手段と、
前記第1の関数の第1の戻り値を使用して、前記第1のイベントを検出する第1の制御処理手段とを有し、
前記第1の関数処理手段は、前記第1の演算を実行して第1の結果を出力する第1のデータ計算手段と、前記第1の入力データと前記第1のイベントを特定する第1のデータとの比較結果を前記第1の戻り値として前記第1の制御処理手段に出力する第1の制御比較手段とを有する、演算装置。 - 第2のイベントに含まれる第2の入力データを引数とする第2の関数に規定された第2の演算を実行する第2の関数処理手段を有する第2のデータ処理手段と、
前記第2の関数の第2の戻り値を使用して、前記第2のイベントを検出する第2の制御処理手段とを有し、
前記第2の関数処理手段は、前記第2の演算を実行して第2の結果を出力する第2のデータ計算手段と、前記第2の入力データと前記第2のイベントを特定する第2のデータとの比較結果を前記第2の戻り値として前記第2の制御処理手段に出力する第2の制御比較手段を有し、
前記第1の戻り値および前記第2の戻り値に基づいて、前記第1のイベント及び前記第2のイベントを含むイベント列を検出する、請求項1記載の演算装置。 - 前記第1の関数及び前記第2の関数は正規表現で表現される関数列を構成し、
前記第1のデータ計算手段は、前記第1の入力データ及び前記第1の結果のうちの少なくとも一つを引数として前記第1の演算を実行して前記第1の結果を出力し、
前記第2のデータ計算手段は、前記第2の入力データ、前記第1の結果および前記第2の結果のうちの少なくとも一つを引数として前記第2の演算を実行し前記第2の結果を出力し、
前記正規表現に基づいて、前記第1の結果および前記第2の結果の少なくとも一方を用いて第3の結果を出力する、請求項2記載の演算装置。 - 前記第1の関数処理手段は、入力された第1の動作停止要求の値に応じて、前記第1の演算を行うか否かを決定する、請求項1乃至請求項3のいずれかに記載の演算装置。
- 前記第2の関数処理手段は、入力された第2の動作停止要求の値に応じて、前記第2の演算を行うか否かを決定する、請求項2または請求項3のいずれかに記載の演算装置。
- 前記第1のイベントを保持するとともに、前記第1のイベントの保持数が0であるか否かを示す第1のイベント保持情報を出力し、前記第1のイベントを入力した順に前記第1の関数処理手段に供給する第1の保持手段と、
前記第1のイベント保持情報、及び前記第1の動作停止要求の値に基づいて前段の演算装置の演算実行を制御する第3の動作停止要求を生成する第1の動作停止要求生成手段と、を備える請求項4に記載の演算装置。 - 前記第2のイベントを保持するとともに、前記第2のイベントの保持数が0であるか否かを示す第2のイベント保持情報を出力し、前記第2のイベントを入力した順に前記第2の関数処理手段に供給する第2の保持手段と、
前記第2のイベント保持情報、及び前記第2の動作停止要求の値に基づいて前段の演算装置の演算実行を制御する第4の動作停止要求を生成する第2の動作停止要求生成手段と、を備える請求項5に記載の演算装置。 - 前記第1の保持手段は、前段の演算装置の演算実行結果が有効であるか否かを示す第1の有効性情報に基づいて、前記第1のイベントを前記第1の関数処理手段に供給するか否かを決定する、請求項6に記載の演算装置。
- 前記第2の保持手段は、前段の演算装置の演算実行結果が有効であるか否かを示す第2の有効性情報に基づいて、前記第2のイベントを前記第2の関数処理手段に供給するか否かを決定する、請求項7に記載の演算装置。
- 第1の関数の演算処理を実施する第1の演算装置と、
第2の関数の演算処理を実施する第2の演算装置とを備え、
前記第1の演算装置は、
第1のイベントに含まれる第1の入力データを引数とする第1の関数に規定された第1の演算を実行する第1の関数処理手段を有する第1のデータ処理手段と、
前記第1の関数の第1の戻り値を使用して、前記第1のイベントを検出する第1の制御処理手段とを有し、
前記第1の関数処理手段は、前記第1の演算を実行して第1の結果を出力する第1のデータ計算手段と、前記第1の入力データと前記第1のイベントを特定する第1のデータとの比較結果を前記第1の戻り値として前記第1の制御処理手段に出力する第1の制御比較手段とを有する、演算装置。 - 前記第2の演算装置は、
第2のイベントに含まれる第2の入力データを引数とする第2の関数に規定された第2の演算を実行する第2の関数処理手段を有する第2のデータ処理手段と、
前記第2の関数の第2の戻り値を使用して、前記第2のイベントを検出する第2の制御処理手段とを有し、
前記第2の関数処理手段は、前記第2の演算を実行して第2の結果を出力する第2のデータ計算手段と、前記第2の入力データと前記第2のイベントを特定する第2のデータとの比較結果を前記第2の戻り値として前記第2の制御処理手段に出力する第2の制御比較手段を有し、
前記第1の戻り値および前記第2の戻り値に基づいて、前記第1のイベント及び前記第2のイベントを含むイベント列を検出する、請求項10に記載の演算装置。 - 前記演算装置には、リアルタイム情報であって、2以上の前記イベントからなるイベント列が入力される、請求項1乃至11のいずれか1項記載の演算装置。
- 前記データ計算手段は、前記入力データを格納、比較又は演算して出力する、請求項1乃至12のいずれか1項記載の演算装置。
- 前記第1の関数及び前記第2の関数は正規表現で表現される関数列を構成し、
前記正規表現は、前記関数と演算子とを含み、
前記演算子は、一の関数の後に次の関数の演算の実施を記述する連接、2つの関数のいずれの演算を選択するかを記述する和、及び1回以上の関数の演算を記述する繰り返し、のいずれか1以上を有する、請求項2、3、5、7、9、10又は11に記載の演算装置。 - 前記正規表現が、前記第1及び第2の関数と、前記第1の関数の後に前記第2の関数の演算の実施を記述する連接とを含むものである場合、
前記第2のデータ処理手段は、前記第1のデータ処理手段の演算処理結果に基づき演算処理結果を出力し、
前記第2の制御処理手段は、前記第2の制御処理手段の結果に基づき検出結果を出力する、請求項2、3、5、7、9又は11を引用する請求項14記載の演算装置。 - 前記正規表現が、前記第1及び第2の関数と、前記第1の関数の後に前記第2の関数の演算の実施を記述する連接とを含むものである場合、
前記第1及び第2のデータ処理手段は直列に接続され、前記第1及び第2の制御処理手段は直列接続される、請求項2、3、5、7、9又は11を引用する請求項14記載の演算装置。 - 前記正規表現が、前記第1及び第2の関数と、前記第1及び第2の関数のいずれの演算を選択するかを記述する和とを含むものである場合、
前記第1及び第2の制御処理手段のいずれか一方以上がイベントを検出した場合にイベント列を検出したと判断する判定手段と、
前記第1及び第2の制御処理手段の出力結果に応じて前記第1及び第2のデータ処理手段の演算結果のいずれか一方を選択出力する第1の選択手段とを有する、請求項2、3、5、7、9又は11を引用する請求項14記載の演算装置。 - 前記正規表現が、前記第1及び第2の関数と、前記第1及び第2の関数のいずれの演算を選択するかを記述する和とを含むものである場合、
論理和を演算する論理回路及び第1のマルチプレクサを有し、
前記第1及び第2の制御処理手段の出力は前記論理回路に入力され、その論理和がイベント列検出結果として出力され、
前記第1及び第2のデータ処理手段は、各演算結果を前記第1のマルチプレクサの入力に入力し、
当該第1のマルチプレクサは、前記第1及び第2の制御処理手段の出力結果に応じて前記第1及び第2のデータ処理手段の演算結果のいずれか一方を出力する、請求項2、3、5、7、9又は11を引用する請求項14記載の演算装置。 - 前記第1の演算結果が有効値であるか否かを示す情報と、前記第2の演算結果が有効値であるか否かを示す情報と、の論理積を演算結果の有効性を示す情報として後段の演算装置に供給し、
前記第1のデータ計算手段の実行可否状態と、前記第2のデータ計算手段の実行可否状態と、の論理積を後段の演算装置に供給する動作停止要求として出力する請求項18記載の演算装置。 - 前記第1及び第2のデータ処理手段の演算に要するサイクル数に基づいて、前記第1及び第2のデータ処理手段のいずれか一方の出力を遅延させる遅延手段を有する請求項18または請求項19に記載の演算装置。
- 前記第1の制御処理手段の出力結果に応じて前段の制御処理手段の出力を当該第1の制御処理手段に入力するか否かを決定する第2の判定手段と、
前記第1のデータ処理手段及び前段のデータ処理手段の出力結果のいずれか一方を前記第1の制御処理手段の出力結果に応じて、当該第1のデータ処理手段に選択入力する第3の判定手段とを有する、請求項10記載の演算装置。 - 前記第1の制御処理手段の出力結果に応じて、前記第1の制御処理手段及び前記第1のデータ処理手段への入力を繰り返す繰り返し論理を備え、
前記繰り返し論理は、前記第1のデータ処理手段が演算中である場合に演算処理の停止を要求する固定値を前段の演算装置に入力する、請求項10に記載の演算装置。 - 第2及び第3のマルチプレクサを有し、
前記第2のマルチプレクサは、前記第1の制御処理手段の出力結果に応じて前段の制御処理手段の出力を当該第1の制御処理手段に入力するか否かを決定し、
前記第3のマルチプレクサは、前記第1のデータ処理手段及び前段のデータ処理手段の出力結果のいずれか一方を前記第1の制御処理手段の出力結果に応じて、当該第1のデータ処理手段に選択入力する、請求項10項記載の演算装置。 - 第1の演算を実行して第1の結果を出力すると共に、第1のイベントに含まれる第1の入力データと前記第1のイベントを特定する第1のデータとの比較結果を第1の戻り値として出力することで、前記第1の入力データを引数とする第1の関数に規定された第1の演算を実行し、
前記第1の関数の前記第1の戻り値を使用して、前記第1のイベントを検出する、演算実行方法。 - 前記イベントからなるイベント列を入力とし、前記第1の関数及び1回以上の前記第1の関数の演算を記述する繰り返しを記述する演算子を含む正規表現の演算を実施する請求項24記載の演算実行方法。
- 1以上の第1の入力データを含む第1のイベント及び1以上の第2の入力データを含む第2のイベントを有するイベント列を入力とし、第1の関数の演算処理を実施し、
前記イベント列を入力とし、第2の関数の演算処理を実施するものであり、
前記第1の関数の演算処理は、
前記第1の関数に規定された第1の演算を実行して第1の結果を出力すると共に、前記第1の入力データと前記第1のイベントを特定する第1のデータとの比較結果を第1の戻り値として出力することで、前記第1の入力データを引数とする前記第1の演算を実行し、
前記第1の関数の前記第1の戻り値を使用して、前記第1のイベントを検出するものである、演算実行方法。 - 前記第2の関数の演算処理は、
前記第2の関数に規定された第2の演算を実行して第2の結果を出力すると共に、前記第2の入力データと前記第2のイベントを特定する第2のデータとの比較結果を第2の戻り値として出力することで、前記第2の入力データを引数とする前記第2の演算を実行し、
前記第2の関数の前記第2の戻り値を使用して、前記第2のイベントを検出するものであり、
前記第1の戻り値および前記第2の戻り値に基づいて、前記イベント列が検出される、請求項26記載の演算実行方法。 - 前記イベント列は、リアルタイム情報である、請求項25乃至27のいずれか1項記載の演算実行方法。
- 前記入力データを引数とする前記第1の関数に規定された演算は、前記入力データを格納、比較又は演算する処理である、請求項24乃至28のいずれか1項記載の演算実行方法。
- 第1の演算を実行して第1の結果を出力すると共に、第1の入力データと第1のデータとの比較結果を第1の戻り値として出力することで、前記第1の入力データを引数とする第1の関数に規定された第1の演算を実行する第1のデータ処理と、
前記第1の関数の前記第1の戻り値を使用して、1以上の前記第1の入力データを含む第1のイベントを検出する第1の制御処理とを、コンピュータに実行させるプログラム。 - 前記イベントからなるイベント列を入力とし、前記第1の関数及び1回以上の前記第1の関数の演算を記述する繰り返しを記述する演算子を含む正規表現の演算を実施する請求項30記載のプログラム。
- 所定の動作をコンピュータに実行させるためのプログラムであって、
1以上の第1の入力データを含む第1のイベント及び1以上の第2の入力データを含む第2のイベントを有するイベント列を入力とし、第1の関数の演算処理を実施する第1の演算処理と、
前記イベント列を入力とし、第2の関数の演算処理を実施する第2の演算処理とを有し、
前記第1の演算処理は、
前記第1の関数に規定された第1の演算を実行して第1の結果を出力すると共に、前記第1の入力データと前記第1のイベントを特定する第1のデータとの比較結果を第1の戻り値として出力することで、前記第1の入力データを引数とする前記第1の演算を実行する第1のデータ処理と、
前記第1の関数の前記第1の戻り値を使用して、前記第1のイベントを検出する第1の制御処理とを有するプログラム。 - 前記第2の演算処理は、
前記第2の関数に規定された第2の演算を実行して第2の結果を出力すると共に、前記第2の入力データと前記第2のイベントを特定する第2のデータとの比較結果を第2の戻り値として出力することで、前記第2の入力データを引数とする前記第2の演算を実行する第2のデータ処理と、
前記第2の関数の前記第2の戻り値を使用して、前記第2のイベントを検出する第2の制御処理とを有し、
前記第1の戻り値および前記第2の戻り値に基づいて、前記イベント列が検出される、請求項32記載のプログラム。 - 前記イベント列は、リアルタイム情報である、請求項31乃至33のいずれか1項記載のプログラム。
- 前記入力データを引数とする前記第1の関数に規定された演算は、前記入力データを格納、比較又は演算する処理である、請求項30乃至34のいずれか1項記載のプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013500710A JP5804047B2 (ja) | 2011-02-21 | 2011-10-21 | 演算装置及び演算実行方法 |
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011034906 | 2011-02-21 | ||
JP2011034906 | 2011-02-21 | ||
JP2011182707 | 2011-08-24 | ||
JP2011182707 | 2011-08-24 | ||
JP2013500710A JP5804047B2 (ja) | 2011-02-21 | 2011-10-21 | 演算装置及び演算実行方法 |
PCT/JP2011/005905 WO2012114399A1 (ja) | 2011-02-21 | 2011-10-21 | 演算装置及び演算実行方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2012114399A1 JPWO2012114399A1 (ja) | 2014-07-07 |
JP5804047B2 true JP5804047B2 (ja) | 2015-11-04 |
Family
ID=46720221
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013500710A Active JP5804047B2 (ja) | 2011-02-21 | 2011-10-21 | 演算装置及び演算実行方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9032421B2 (ja) |
EP (1) | EP2680131A4 (ja) |
JP (1) | JP5804047B2 (ja) |
WO (1) | WO2012114399A1 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9791511B2 (en) * | 2013-03-15 | 2017-10-17 | Teradyne, Inc. | Method and apparatus for low latency communication in an automatic testing system |
JP6079385B2 (ja) * | 2013-03-29 | 2017-02-15 | 富士通株式会社 | 照合処理回路及び照合処理回路の制御方法 |
US11461297B1 (en) * | 2021-06-09 | 2022-10-04 | T-Mobile Usa, Inc. | Ensuring database integrity using a data flow in a graph, such as for use by a wireless telecommunications service provider |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0527945A (ja) * | 1991-07-18 | 1993-02-05 | Matsushita Electric Ind Co Ltd | レコード変換装置 |
WO2010107114A1 (ja) * | 2009-03-19 | 2010-09-23 | 日本電気株式会社 | パターンマッチング装置 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07262044A (ja) | 1994-03-25 | 1995-10-13 | Hitachi Ltd | イベントトレース解析方法 |
US8621425B1 (en) * | 2005-04-08 | 2013-12-31 | The Mathworks, Inc. | Generating code based at least on one or more output arguments designated as not being present |
US7805392B1 (en) * | 2005-11-29 | 2010-09-28 | Tilera Corporation | Pattern matching in a multiprocessor environment with finite state automaton transitions based on an order of vectors in a state transition table |
JP4957500B2 (ja) | 2007-10-12 | 2012-06-20 | 日本電気株式会社 | 文字列照合回路 |
JP2011034906A (ja) | 2009-08-05 | 2011-02-17 | Hitachi Cable Ltd | 同軸ケーブルの製造方法、及び同軸ケーブル |
JP5607955B2 (ja) | 2010-03-09 | 2014-10-15 | こもろ布引いちご園株式会社 | 枠付きパネルおよび農業用ハウスの屋根構造 |
-
2011
- 2011-10-21 JP JP2013500710A patent/JP5804047B2/ja active Active
- 2011-10-21 WO PCT/JP2011/005905 patent/WO2012114399A1/ja active Application Filing
- 2011-10-21 EP EP11859061.1A patent/EP2680131A4/en not_active Withdrawn
- 2011-10-21 US US13/985,788 patent/US9032421B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0527945A (ja) * | 1991-07-18 | 1993-02-05 | Matsushita Electric Ind Co Ltd | レコード変換装置 |
WO2010107114A1 (ja) * | 2009-03-19 | 2010-09-23 | 日本電気株式会社 | パターンマッチング装置 |
Non-Patent Citations (2)
Title |
---|
JPN6011065035; Sidhu, R. et al.: '"Fast Regular Expression Matching using FPGAs"' The 9th Annual IEEE Symposium on Field-Programmable Custom Computing Machines (FCCM'01) , 200104, P.227-238 * |
JPN6011065036; 川中洋祐、外: '"パターン非依存型正規表現ストリングマッチングマシンとそのFPGA実装"' 電子情報通信学会論文誌 D Vol.J92-D, No.12, 20091201, P.2159-2167 * |
Also Published As
Publication number | Publication date |
---|---|
EP2680131A1 (en) | 2014-01-01 |
US20140208334A1 (en) | 2014-07-24 |
US9032421B2 (en) | 2015-05-12 |
EP2680131A4 (en) | 2017-01-18 |
JPWO2012114399A1 (ja) | 2014-07-07 |
WO2012114399A1 (ja) | 2012-08-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20180057300A (ko) | 딥 러닝을 이용하여 환자의 진단 이력으로부터 질병 예후를 예측하는 방법 및 시스템 | |
US20040068708A1 (en) | Method of using clock cycle-time in determining loop schedules during circuit design | |
US20190138929A1 (en) | System and method for automatic building of learning machines using learning machines | |
JP7387017B2 (ja) | アドレス生成方法及びユニット、深層学習処理器、チップ、電子機器並びにコンピュータプログラム | |
TW202240384A (zh) | 可重組態處理器的儀器分析 | |
JP7256811B2 (ja) | アドバンストインタコネクト技術を利用してaiトレーニングを加速するための方法及びシステム | |
CN112818621B (zh) | 用于预测软ip部件的性能、功率和面积表现的系统和方法 | |
JP5804047B2 (ja) | 演算装置及び演算実行方法 | |
GB2529170A (en) | Circuit design generator | |
WO2019010656A1 (zh) | 性能指标评估方法及装置 | |
Lu et al. | Doomed run prediction in physical design by exploiting sequential flow and graph learning | |
CN116070557A (zh) | 使用强化学习的数据路径电路设计 | |
CN116266119A (zh) | 生成依赖于使用的代码嵌入的方法、装置和制品 | |
CN107769987B (zh) | 一种报文转发性能评估方法和装置 | |
Li et al. | Heterogeneous systems with reconfigurable neuromorphic computing accelerators | |
US20220321579A1 (en) | Methods and apparatus to visualize machine learning based malware classification | |
CN115469931A (zh) | 一种循环程序的指令优化方法、装置、系统、设备及介质 | |
US11175957B1 (en) | Hardware accelerator for executing a computation task | |
WO2021086486A1 (en) | Neural network instruction streaming | |
US10289786B1 (en) | Circuit design transformation for automatic latency reduction | |
US20220318595A1 (en) | Methods, systems, articles of manufacture and apparatus to improve neural architecture searches | |
WO2024065535A1 (en) | Methods, apparatus, and articles of manufacture to generate hardware-aware machine learning model architectures for multiple domains without training | |
Thillai Rani et al. | Recurrent deep neural learning classification algorithm based high level synthesis in VLSI circuit with runtime adaptability | |
US20230136209A1 (en) | Uncertainty analysis of evidential deep learning neural networks | |
KR102123117B1 (ko) | 다중 노드 시스템에서 성능과 전력을 예측하는 장치 및 그 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140911 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150616 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150708 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20150804 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150817 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5804047 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |