JP4079923B2 - ベクトル処理装置、情報処理装置、および、ベクトル処理方法 - Google Patents

ベクトル処理装置、情報処理装置、および、ベクトル処理方法 Download PDF

Info

Publication number
JP4079923B2
JP4079923B2 JP2004217283A JP2004217283A JP4079923B2 JP 4079923 B2 JP4079923 B2 JP 4079923B2 JP 2004217283 A JP2004217283 A JP 2004217283A JP 2004217283 A JP2004217283 A JP 2004217283A JP 4079923 B2 JP4079923 B2 JP 4079923B2
Authority
JP
Japan
Prior art keywords
vector
unit
instruction
noise reduction
control information
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 - Fee Related
Application number
JP2004217283A
Other languages
English (en)
Other versions
JP2006039840A (ja
Inventor
英正 戸田
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.)
NEC Computertechno Ltd
Original Assignee
NEC Computertechno Ltd
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 NEC Computertechno Ltd filed Critical NEC Computertechno Ltd
Priority to JP2004217283A priority Critical patent/JP4079923B2/ja
Priority to CA002512316A priority patent/CA2512316A1/en
Priority to DE602005002096T priority patent/DE602005002096T2/de
Priority to AU2005203127A priority patent/AU2005203127A1/en
Priority to EP05015681A priority patent/EP1624380B1/en
Priority to AT05015681T priority patent/ATE371217T1/de
Priority to DK05015681T priority patent/DK1624380T3/da
Priority to US11/188,927 priority patent/US20060020768A1/en
Priority to KR1020050067164A priority patent/KR100703764B1/ko
Publication of JP2006039840A publication Critical patent/JP2006039840A/ja
Application granted granted Critical
Publication of JP4079923B2 publication Critical patent/JP4079923B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

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/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3867Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines
    • 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/46Multiprogramming arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/80Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
    • G06F15/8053Vector processors
    • G06F15/8076Details on data register access
    • 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/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3867Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines
    • G06F9/3869Implementation aspects, e.g. pipeline latches; pipeline synchronisation and clocking

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Advance Control (AREA)
  • Complex Calculations (AREA)
  • Noise Elimination (AREA)
  • Image Processing (AREA)

Description

本発明は、ベクトル処理装置、情報処理装置、および、ベクトル処理方法に関し、特に、同時動作によるノイズを低減させるベクトル処理装置、情報処理装置、および、ベクトル処理方法に関する。
LSIに集積される論理回路は、増加の傾向にあり、単一クロックに同期した同時駆動がなされると、そのタイミングでノイズが発生し、誤動作等の原因となっていた。
たとえば、特許文献1には、主メモリからエレメントデータがロードされしだい、すべてのデータがそろわなくても、順次各演算装置で演算を実行し、性能を上げる技術が記載されている。
特開昭58−149555号公報
上記特許文献1記載の技術の問題点は、各演算装置での演算実行のずれを生じる範囲が狭いことである。
その理由は、主メモリからのロード命令、または、主メモリへのストア命令が実行されないと、各演算装置による演算実行のずれが生じないからである。
本発明の目的は、広範囲の場合に、演算装置での実行開始の時間的ずれを生じさせ、同時動作によるノイズを低減させることである。
本発明の第1のベクトル処理装置は、動作制御情報にしたがって処理を開始・実行する複数のベクトルパイプライン演算部と、ベクトル命令の実行に際し、前記ベクトルパイプライン演算部の処理の開始・実行を指示する動作制御情報を生成し、各前記ベクトルパイプライン演算部に、順次遅らせる時間的ずれを生じさせて出力する命令制御部とを有することを特徴とする。
本発明の第2のベクトル処理装置は、動作制御情報にしたがって処理を開始・実行する複数のベクトルパイプライン演算部と、ベクトル命令の実行に際し、前記ベクトルパイプライン演算部の処理の開始・実行を指示する動作制御情報を生成し、各前記ベクトルパイプライン演算部に、クロックに基づく順次遅らせる時間的ずれを生じさせて出力する命令制御部とを有することを特徴とする。
本発明の第3のベクトル処理装置は、前記第1のベクトル処理装置であって、前記ベクトルパイプライン演算部にまたがるベクトル命令の実行に際し、前記ベクトルパイプライン演算部からのベクトルエレメントデータを入力し、時間的遅延を解消し、前記ベクトルパイプライン演算部に出力するタイミング調整部を有することを特徴とする。
本発明の第4のベクトル処理装置は、前記第2のベクトル処理装置であって、前記ベクトルパイプライン演算部にまたがるベクトル命令の実行に際し、前記ベクトルパイプライン演算部からのベクトルエレメントデータを入力し、順次遅らせる時間的ずれを解消し、前記ベクトルパイプライン演算部に出力するタイミング調整部とを有することを特徴とする。
本発明の第5のベクトル処理装置は、前記第1、第2、第3、または、第4のベクトル処理装置であって、前記命令制御部が、ノイズ低減動作指定情報を格納する動作指定部を含み、ノイズ低減動作指定情報がノイズ低減動作を指定していないと、動作制御情報を前記ベクトルパイプライン演算部に順次遅らせる時間的ずれを生じさせずに出力し、ノイズ低減動作指定情報がノイズ低減動作を指定していると、動作制御情報を各前記ベクトルパイプライン演算部に順次遅らせる時間的ずれを生じさせて出力することを特徴とする。
本発明の第6のベクトル処理装置は、前記第1、または、第2のベクトル処理装置であって、前記命令制御部が、ノイズ低減動作指定情報を格納する動作指定部を含み、ノイズ低減動作指定情報がノイズ低減動作を指定していないと、動作制御情報を各前記ベクトルパイプライン演算部に順次遅らせる時間的ずれを生じさせずに出力し、ノイズ低減動作指定情報がノイズ低減動作を指定していると、前記ベクトルパイプライン演算部にまたがるベクトル命令の実行に際しては、各前記ベクトルパイプライン演算部に、時間的ずれを生じさせずに最も遅く動作する前記ベクトルパイプライン演算部に合わせて動作制御情報を出力し、前記ベクトルパイプライン演算部にまたがらないベクトル命令の実行に際しては、動作制御情報を各前記ベクトルパイプライン演算部に順次遅らせる時間的ずれを生じさせて出力することを特徴とする。
本発明の第1の情報処理装置は、動作制御情報にしたがって処理を同時に開始・実行可能な複数の演算部と、命令の実行に際し、前記演算部の処理の開始・実行を指示する動作制御情報を生成し、各前記演算部に順次遅らせる時間的ずれを生じさせて出力する命令制御部とを有することを特徴とする。
本発明の第2の情報処理装置は、動作制御情報にしたがって処理を同時に開始・実行可能な複数の演算部と、命令の実行に際し、前記演算部の処理の開始・実行を指示する動作制御情報を生成し、各前記演算部にクロックに基づく順次遅らせる時間的ずれを生じさせて出力する命令制御部とを有することを特徴とする。
本発明の第1のベクトル処理方法は、複数のベクトルパイプライン演算部に、動作制御情報にしたがって処理を開始・実行させる手順と、命令制御部に、ベクトル命令の実行に際し、前記ベクトルパイプライン演算部の処理の開始・実行を指示する動作制御情報を生成させ、各前記ベクトルパイプライン演算部に順次遅らせる時間的ずれを生じさせて出力させる手順と、を含むことを特徴とする。
本発明の第2のベクトル処理方法は、複数のベクトルパイプライン演算部に、動作制御情報にしたがって処理を開始・実行させる手順と、命令制御部に、ベクトル命令の実行に際し、前記ベクトルパイプライン演算部の処理の開始・実行を指示する動作制御情報を生成させ、各前記ベクトルパイプライン演算部にクロックに基づく順次遅らせる時間的ずれを生じさせて出力させる手順と、を含むことを特徴とする。
本発明の第3のベクトル処理方法は、前記第1のベクトル処理方法であって、タイミング調整部に、前記ベクトルパイプライン演算部にまたがるベクトル命令の実行に際し、前記ベクトルパイプライン演算部からのベクトルエレメントデータを入力させ、時間的遅延を解消させ前記ベクトルパイプライン演算部に出力させる手順を含むことを特徴とする。
本発明の第4のベクトル処理方法は、前記第2のベクトル処理方法であって、タイミング調整部に、前記ベクトルパイプライン演算部にまたがるベクトル命令の実行に際し、前記ベクトルパイプライン演算部からのベクトルエレメントデータを入力させ、時間的遅延を解消させ前記ベクトルパイプライン演算部に出力させる手順を含むことを特徴とする。
本発明の第5のベクトル処理方法は、前記第1、第2、第3、または、第4のベクトル処理方法であって、前記命令制御部に、ノイズ低減動作指定情報がノイズ低減動作を指定していないと、動作制御情報を前記ベクトルパイプライン演算部に順次遅らせる時間的ずれを生じさせずに出力させる手順と、ノイズ低減動作指定情報がノイズ低減動作を指定していると、動作制御情報を各前記ベクトルパイプライン演算部に順次遅らせる時間的ずれを生じさせて出力させる手順とを含むことを特徴とする。
本発明の第6のベクトル処理方法は、前記第1、または、第2のベクトル処理方法であって、前記命令制御部に、ノイズ低減動作指定情報がノイズ低減動作を指定していないと、動作制御情報を各前記ベクトルパイプライン演算部に順次遅らせる時間的ずれを生じさせずに出力させる手順と、ノイズ低減動作指定情報がノイズ低減動作を指定していると、前記ベクトルパイプライン演算部にまたがるベクトル命令の実行に際しては、各前記ベクトルパイプライン演算部に、時間的ずれを生じさせずに最も遅く動作する前記ベクトルパイプライン演算部に合わせて動作制御情報を出力させる手順と、前記ベクトルパイプライン演算部にまたがらないベクトル命令の実行に際しては、動作制御情報を各前記ベクトルパイプライン演算部に順次遅らせる時間的ずれを生じさせて出力させる手順と含むことを特徴とする。
本発明の第7のベクトル処理装置は、前記第1、2、3、4、5、または、6のベクトル処理装置であって、LSI上に構成されることを特徴とする。
本発明の第3の情報処理装置は、前記第1、または、第2の情報処理装置であって、LSI上に構成される。
本発明の効果は、広範囲の場合に、同時動作によるノイズを低減できることである。
その理由は、ロード命令・ストア命令に限らず、各演算部での処理開始の時間的ずれを生じさせるからである。
次に、本発明を実施するための第1の最良の形態について図面を参照して詳細に説明する。
図1は、本発明を実施するための第1の最良の形態のベクトル処理装置100の構成を示すブロック図である。以下、1つのベクトル命令で処理されるベクトルエレメントデータのが、64個(64個でなくてもかまわない)のベクトルエレメントデータである場合について説明する。
図1を参照すると、ベクトル処理装置100は、命令制御部10と、複数のベクトルパイプライン演算部160〜ベクトルパイプライン演算部167とを含む。ベクトルパイプライン演算部の個数は、任意の個数が可能である。
命令制御部10は、命令実行の制御情報を生成する命令実行制御部13と、ノイズ低減の動作を実施するかどうかを示すノイズ低減指定情報を保持する動作指定部11と、命令実行制御部13からの制御情報を入力し、動作指定部11からのノイズ低減指定情報にしたがって種々の動作制御情報(処理の開始・実行を指示する)を作成し、命令実行制御部13、および、ベクトルパイプライン演算部160〜ベクトルパイプライン演算部167に出力する動作制御情報生成部12とを含む。
動作指定部11は、たとえば、F/F(フリップ・フロップ)等から構成される。ノイズ低減指定情報は、外部からハードウェア動作の初期設定モードとして動作指定部11設定可能である。
ベクトルパイプライン演算部160〜ベクトルパイプライン演算部167は、並列に動作する。また、ベクトルパイプライン演算部160〜ベクトルパイプライン演算部167は、それぞれ、ベクトルエレメントデータを保持するベクトルレジスタVR0〜ベクトルレジスタVRn(n=1,2,・・・)と、ベクトルレジスタVR0〜ベクトルレジスタVRnへのベクトルエレメントデータの選択を行うクロスバ等の内部選択部SINと、ベクトルレジスタVR0〜ベクトルレジスタVRnからのベクトルエレメントデータの選択を行うクロスバ等の内部選択部SOUTと、加減算、乗除算等を実行する1以上の演算実行部ALUと、内部選択部SOUTからのベクトルエレメントデータを格納するエレメントレジスタER0、エレメントレジスタER1と、演算実行部ALUからの演算結果を格納する演算結果レジスタSTRとを含む。
演算実行部ALUは、演算の中間結果を格納する中間結果レジスタAR0と、中間結果レジスタAR1とを含む。エレメントレジスタER0、エレメントレジスタER1、中間結果レジスタAR0、中間結果レジスタAR1、演算結果レジスタSTRを設けるかどうかは、また、どの位置に設けるかどうかは、任意である。ベクトルレジスタVR0〜ベクトルレジスタVRnは、たとえば、レジスタ等で構成され、それぞれが、たとえば、8ベクトルエレメントデータを格納する。
たとえば、エレメントレジスタER0、エレメントレジスタER1が第1のパイプラインステージとして設定される。中間結果レジスタAR0が第2のパイプラインステージとして設定される。中間結果レジスタAR1が第3のパイプラインステージとして設定される。演算結果レジスタSTRが第4のパイプラインステージとして設定される。ベクトルレジスタVR0〜ベクトルレジスタVRnが第5のパイプラインステージとして設定される。
ベクトルエレメントデータは、ベクトルパイプライン演算部160〜ベクトルパイプライン演算部167内のベクトルレジスタVR0〜ベクトルレジスタVRnにインタリーブ方式で割り当てられる。
たとえば、ベクトルパイプライン演算部160のベクトルレジスタVR0には、ベクトルエレメントデータa0、a8、a16、a24、a32、a40、a48、a56が格納される。ベクトルパイプライン演算部161のベクトルレジスタVR0には、ベクトルエレメントデータa1、a9、a17、a25、a33、a41、a49、a57が格納される。ベクトルパイプライン演算部167のベクトルレジスタVR0には、ベクトルエレメントデータa7、a15、a23、a31、a39、a47、a55、a63が格納される。
また、同様に、ベクトルパイプライン演算部160のベクトルレジスタVR1には、ベクトルエレメントデータb0、b8、b16、b24、b32、b40、b48、b56が格納される。ベクトルパイプライン演算部161のベクトルレジスタVR1には、ベクトルエレメントデータb1、b9、b17、b25、b33、b41、b49、b57が格納される。ベクトルパイプライン演算部167のベクトルレジスタVR1には、ベクトルエレメントデータb7、b15、b23、b31、b39、b47、b55、b63が格納される。
以下、同様に、ベクトルレジスタVR2〜ベクトルレジスタVRnにも、他のベクトルエレメントデータが格納される。
次に、ベクトル処理装置100の動作について図面を参照して説明する。
図2は、ベクトル処理装置100の動作を示すタイミングチャートである。
図2を参照すると、ベクトル処理装置100が、ベクトル演算命令Xに続いて、ベクトル演算命令Yを実行する。たとえば、ベクトル演算命令Xは、ベクトルレジスタVR0内のベクトルエレメントデータa0〜ベクトルエレメントデータa63とベクトルレジスタVR1内のベクトルエレメントデータb0〜ベクトルエレメントデータb63とを加算してベクトルエレメントデータc0〜ベクトルエレメントデータc63としてベクトルレジスタVR2に格納する命令である。また、ベクトル演算命令Yは、たとえば、ベクトルレジスタVR3内のベクトルエレメントデータd0〜ベクトルエレメントデータd63とベクトルレジスタVR4内のベクトルエレメントデータe0〜ベクトルエレメントデータe63とを加算してベクトルエレメントデータf0〜ベクトルエレメントデータf63としてベクトルレジスタVR5に格納する命令である。
ここでは、演算実行部ALUは、1クロックに1エレメントデータ同士の演算を実行する。したがって、ベクトル演算命令X、ベクトル演算命令Yの実行には、それぞれ、8クロックを要する。動作設定部11には、事前に、ノイズ低減の動作を実施することを示すノイズ低減指定情報が設定されている。
命令実行制御部13は、クロックT0において、ベクトル演算命令Xに対する命令実行の制御情報を生成し出力する。
動作制御情報生成部12は、クロックT1において、ベクトルパイプライン演算部160、および、ベクトルパイプライン演算部161にベクトル演算命令Xの実行を指示する動作制御情報を出力する。また、動作制御情報生成部12は、クロックT2において、ベクトルパイプライン演算部162、および、ベクトルパイプライン演算部163にベクトル演算命令Xの実行を指示する動作制御情報を出力する。動作制御情報生成部12は、クロックT3において、ベクトルパイプライン演算部164、および、ベクトルパイプライン演算部165にベクトル演算命令Xの実行を指示する動作制御情報を出力する。動作制御情報生成部12は、クロックT4において、ベクトルパイプライン演算部166、および、ベクトルパイプライン演算部167にベクトル演算命令Xの実行を指示する動作制御情報を出力する。
以下、ベクトルパイプライン演算部160を例にとって説明する。
命令制御部10からのベクトル演算命令Xに対する動作制御情報にしたがい、ベクトルレジスタVR0からベクトルエレメントデータa0が読み出され、ベクトルレジスタVR1からベクトルエレメントデータb0が読み出され、内部選択部SOUTで選択されて、それぞれ、エレメントレジスタER0、エレメントレジスタER1に格納される(図2クロックT2)。
次に、演算実行部ALUが、エレメントレジスタER0からのエレメントデータa0、エレメントレジスタER1からのエレメントデータb0を演算し、第1の中間結果を中間結果レジスタAR0に格納する(クロックT3)。次に、演算実行部ALUが、中間結果レジスタAR0からの第1の中間結果を演算し、第2の中間結果を中間結果レジスタAR1に格納する(クロックT4)。次に、演算実行部ALUが、中間結果レジスタAR1からの第2の中間結果を演算し、演算結果(c0=a0+b0)を演算結果レジスタSTRに格納する(クロックT5)。次に、演算結果レジスタSTRからの演算結果(c0=a0+b0)が、内部選択部SINで選択されベクトルレジスタVR3に格納される(クロックT6)。
また、ベクトルレジスタVR0からベクトルエレメントデータa8が読み出され、ベクトルレジスタVR1からベクトルエレメントデータb8が読み出され、内部選択部SOUTで選択されて、それぞれ、エレメントレジスタER0、エレメントレジスタER1に格納される(クロックT3)。
このようにして、順次、ベクトルエレメントデータa0、a8、a16、a24、a32、a40、a48、a56と、ベクトルエレメントデータb0、b8、b16、b24、b32、b40、b48、b56との演算が実行され、演算結果(c0、c8、c16、c24、c32、c40、c48、c56)が、ベクトルレジスタVR3に格納される(クロックT6〜T13)。
また、ベクトルパイプライン演算部161においても、ベクトルパイプライン演算部161と同様のタイミングで、順次、ベクトルエレメントデータa1、a9、a17、a25、a33、a41、a49、a57と、ベクトルエレメントデータb1、b9、b17、b25、b33、b41、b49、b57との演算が実行され(クロックT2から)、ベクトルレジスタVR3に演算結果(c1、・・・、c57)が格納される(クロックT6〜T13)。
ベクトルパイプライン演算部162(ベクトルパイプライン演算部163)においては、1クロックずれて、クロックT3から、処理が開始される。ベクトルエレメントデータa2(a3)、a10(a11)、a18(a19)、a26(a27)、a34(a35)、a42(a43)、a50(a51)、a58(a59)と、ベクトルエレメントデータb2(b3)、b10(b11)、b18(b19)、b26(b27)、b34(b35)、b42(b43)、b50(b51)、b58(b59)との演算が実行され、ベクトルレジスタVR3に演算結果(c2(c3)、・・・、c58(c59))が格納される(クロックT7〜T14)。
ベクトルパイプライン演算部164(ベクトルパイプライン演算部165)においては、さらに1クロックずれて、クロックT4から、処理が開始される。ベクトルエレメントデータa4(a5)、a12(a13)、a20(a21)、a28(a29)、a36(a37)、a44(a45)、a52(a53)、a60(a61)と、ベクトルエレメントデータb4(b5)、b12(b13)、b20(b21)、b28(b29)、b36(b37)、b44(b45)、b52(b53)、b60(b61)との演算が実行され、ベクトルレジスタVR3に演算結果(c4(c5)、・・・、c60(c61))が格納される(クロックT8〜T15)。
ベクトルパイプライン演算部166(ベクトルパイプライン演算部167)においては、さらに1クロックずれて、クロックT5から、処理が開始される。ベクトルエレメントデータa6(a7)、a14(a15)、a22(a23)、a30(a31)、a38(a39)、a46(a47)、a54(a55)、a62(a63)と、ベクトルエレメントデータb6(b7)、b14(b15)、b22(b23)、b30(b31)、b38(b39)、b46(b47)、b54(b55)、b62(b63)との演算が実行され、ベクトルレジスタVR3に演算結果(c6(c7)、・・・、c62(c63))が格納される(クロックT9〜T16)。
次に、命令実行制御部13は、クロックT8において、ベクトル演算命令Yに対する命令実行の制御情報を生成し出力する。
動作制御情報生成部12は、クロックT9において、ベクトルパイプライン演算部160、および、ベクトルパイプライン演算部161にベクトル演算命令Yの実行を指示する動作制御情報を出力する。また、動作制御情報生成部12は、クロックT10において、ベクトルパイプライン演算部162、および、ベクトルパイプライン演算部163にベクトル演算命令Yの実行を指示する動作制御情報を出力する。動作制御情報生成部12は、クロックT11において、ベクトルパイプライン演算部164、および、ベクトルパイプライン演算部165にベクトル演算命令Yの実行を指示する動作制御情報を出力する。動作制御情報生成部12は、クロックT12において、ベクトルパイプライン演算部166、および、ベクトルパイプライン演算部167にベクトル演算命令Yの実行を指示する動作制御情報を出力する。
ベクトルパイプライン演算部160〜ベクトルパイプライン演算部167は、ベクトル演算命令Xと同様に、ベクトル演算命令Yを連続して実行する。すなわち、クロックT10から、ベクトルパイプライン演算部160でベクトル演算命令Yの処理が開始され、ベクトルレジスタVR3内のベクトルエレメントデータとベクトルレジスタVR4内のベクトルエレメントデータとが加算され、ベクトルレジスタVR5に格納される。
以上説明したように、ベクトルパイプライン演算部160〜ベクトルパイプライン演算部167が、2つずつ1Tクロックサイクルずれて動作する。このずれの動作は、ベクトル演算命令のみならず、ベクトルロード命令(ベクトルエレメントデータをメモリから内部選択部SINを経由してベクトルレジスタVR0〜ベクトルレジスタVRnへロードする命令)、ベクトルストア命令(ベクトルエレメントデータをベクトルレジスタVR0〜ベクトルレジスタVRnから内部選択部SOUTを経由してメモリへストアする命令)においても可能である。このように、ベクトルパイプライン演算部160〜ベクトルパイプライン演算部167の処理が時間的にずれることで、ベクトル演算命令の開始等(特に、クロックT2〜クロックT5)に、回路が同時に動作開始するスイッチングの量を減らすことができる。したがって、同時動作によるノイズを低減させることが可能となる。
次に、本発明を実施するための第2の最良の形態について図面を参照して詳細に説明する。
図3は、本発明を実施するための第2の最良の形態の構成を示すブロック図である。
図3を参照すると、本発明を実施するための第2の最良の形態のベクトル処理装置100は、本発明を実施するための第1の最良の形態の内部選択部SINが内部選択部SOUTに統合されて内部選択部SIOとなっている。演算結果レジスタSTRとベクトルレジスタVR0〜ベクトルレジスタVRnとが直接接続される。複数の演算実行部ALUを備える場合には、たとえば、演算結果レジスタSTRの入力に演算結果選択部SALを設ければよい。本発明を実施するための第2の最良の形態の動作は、本発明を実施するための第1の最良の形態の動作の内部選択部SINの動作が、選択の動作ではなく、単なる転送の動作になる。
次に、本発明を実施するための第3の最良の形態について図面を参照して詳細に説明する。
図4は、本発明を実施するための第3の最良の形態の構成を示すブロック図である。
図4を参照すると、本発明を実施するための第3の最良の形態は、本発明を実施するための第1の最良の形態(または、第2の最良の形態)に加えて、クロスバ等の外部選択部14と、タイミング調整部15とを含む。動作制御情報生成部12は、外部選択部14、タイミング調整部15にも動作制御情報を出力する。外部選択部14は、動作制御情報生成部12からの動作制御情報にしたがいベクトルエレメントデータの選択を行う。タイミング調整部15は、外部選択部14へのベクトルエレメントデータの入力のタイミング、または、外部選択部14からのベクトルエレメントデータの出力のタイミングの調整を行う。
外部選択部14、タイミング調整部15は、ベクトルパイプライン演算部160〜ベクトルパイプライン演算部167間をまたがってベクトルエレメントデータの処理を行う命令において使用される。たとえば、ベクトルパイプライン演算部160〜ベクトルパイプライン演算部167間のベクトルエレメントデータ移送を行う命令、全ベクトルエレメントデータの総和を行う命令などが挙げられる。
ベクトルパイプライン演算部160〜ベクトルパイプライン演算部167間のベクトルエレメントデータ移送を行う命令としては、たとえば、右ローテート命令Zがある。右ローテート命令Zは、たとえば、ベクトルパイプライン演算部160内のベクトルレジスタVR0に格納されているベクトルエレメントデータa0、a8、a16、a24、a32、a40、a48、a56、ベクトルパイプライン演算部161内のベクトルレジスタVR0に格納されているベクトルエレメントデータa1、a9、a17、a25、a33、a41、a49、a57、・・・、ベクトルパイプライン演算部167内のベクトルレジスタVR0に格納されているベクトルエレメントデータa7、a15、a23、a31、a39、a47、a55、a63を7ベクトルエレメントデータ分右ローテートして、ベクトルレジスタVR1に格納する命令である。結果として、ベクトルパイプライン演算部160内のベクトルレジスタVR1には、ベクトルエレメントデータa7、a15、a23、a31、a39、a47、a55、a63が格納され、ベクトルパイプライン演算部161内のベクトルレジスタVR0には、ベクトルエレメントデータa0、a8、a16、a24、a32、a40、a48、a56が格納され、・・・、ベクトルパイプライン演算部167には、ベクトルエレメントデータa6、a14、a22、a30、a38、a46、a54、a62が格納される。
図5は、タイミング調整部15の構成を示すブロック図である。
図5を参照すると、タイミング調整部15は、調整レジスタDR00〜調整レジスタDR50と、調整選択部DS0〜調整選択部DS5を含む。調整レジスタDR00、調整レジスタDR01、調整レジスタDR02は、ベクトルパイプライン演算部160からのベクトルエレメントデータのタイミングを調整する。調整レジスタDR10、調整レジスタDR11、調整レジスタDR12は、ベクトルパイプライン演算部161からのベクトルエレメントデータのタイミングを調整する。調整レジスタDR20、調整レジスタDR21は、ベクトルパイプライン演算部162からのベクトルエレメントデータのタイミングを調整する。調整レジスタDR20、調整レジスタDR21は、ベクトルパイプライン演算部162からのベクトルエレメントデータのタイミングを調整する。調整レジスタDR30、調整レジスタDR31は、ベクトルパイプライン演算部163からのベクトルエレメントデータのタイミングを調整する。調整レジスタDR40は、ベクトルパイプライン演算部164からのベクトルエレメントデータのタイミングを調整する。調整レジスタDR50は、ベクトルパイプライン演算部165からのベクトルエレメントデータのタイミングを調整する。
調整選択部DS0は、ベクトルパイプライン演算部160からのベクトルエレメントデータと調整レジスタDR02からのベクトルエレメントデータとのいずれかを選択する。調整選択部DS1は、ベクトルパイプライン演算部161からのベクトルエレメントデータと調整レジスタDR12からのベクトルエレメントデータとのいずれかを選択する。調整選択部DS2は、ベクトルパイプライン演算部162からのベクトルエレメントデータと調整レジスタDR21からのベクトルエレメントデータとのいずれかを選択する。調整選択部DS3は、ベクトルパイプライン演算部163からのベクトルエレメントデータと調整レジスタDR31からのベクトルエレメントデータとのいずれかを選択する。調整選択部DS4は、ベクトルパイプライン演算部164からのベクトルエレメントデータと調整レジスタDR40からのベクトルエレメントデータとのいずれかを選択する。調整選択部DS5は、ベクトルパイプライン演算部165からのベクトルエレメントデータと調整レジスタDR50からのベクトルエレメントデータとのいずれかを選択する。
ベクトルパイプライン演算部166、ベクトルパイプライン演算部167からのベクトルエレメントデータのタイミングは、調整されない。
図6は、本発明を実施するための第3の最良の形態の動作を示すタイミングチャートである。
図6を参照すると、動作制御情報生成部12は、クロックT1において、ベクトルパイプライン演算部160、および、ベクトルパイプライン演算部161に右ローテート命令Zの実行を指示する動作制御情報を出力する。また、動作制御情報生成部12は、クロックT2において、ベクトルパイプライン演算部162、および、ベクトルパイプライン演算部163に右ローテート命令Zの実行を指示する動作制御情報を出力する。動作制御情報生成部12は、クロックT3において、ベクトルパイプライン演算部164、および、ベクトルパイプライン演算部165に右ローテート命令Zの実行を指示する動作制御情報を出力する。動作制御情報生成部12は、クロックT4において、ベクトルパイプライン演算部166、および、ベクトルパイプライン演算部167に右ローテート命令Zの実行を指示する動作制御情報を出力する。
ベクトルパイプライン演算部160(ベクトルパイプライン演算部161)の内部選択部SOUT(または、内部選択部SIO)からベクトルエレメントデータa0(a1)が出力され、調整レジスタDR00(調整レジスタDR10)に格納される(図6クロックT2)。次に、ベクトルエレメントデータa0(a1)は、調整レジスタDR01(調整レジスタDR11)に格納される(クロックT3)。次に、ベクトルエレメントデータa0(a1)は、調整レジスタDR02(調整レジスタDR12)に格納される(クロックT4)。次に、ベクトルエレメントデータa0(a1)は、調整レジスタDR02(調整レジスタDR12)から調整選択部DS0(調整選択部DS1)で選択され出力される(クロックT5)。
ベクトルパイプライン演算部162(ベクトルパイプライン演算部163)の内部選択部SOUTからベクトルエレメントデータa2(a3)が出力され、調整レジスタDR20(調整レジスタDR30)に格納される(クロックT3)。次に、ベクトルエレメントデータa2(a3)は、調整レジスタDR21(調整レジスタDR21)に格納される(クロックT4)。次に、ベクトルエレメントデータa2(a3)は、調整レジスタDR21(調整レジスタDR21)から調整選択部DS2(調整選択部DS3)で選択され出力される(クロックT5)。
ベクトルパイプライン演算部164(ベクトルパイプライン演算部165)の内部選択部SOUTからベクトルエレメントデータa4(a5)が出力され、調整レジスタDR40(調整レジスタDR50)に格納される(クロックT4)。次に、ベクトルエレメントデータa4(a5)は、調整レジスタDR40(調整レジスタDR50)から調整選択部DS4(調整選択部DS5)で選択され出力される(クロックT5)。
ベクトルパイプライン演算部166(ベクトルパイプライン演算部167)の内部選択部SOUTからベクトルエレメントデータa6(a7)が出力され、タイミング調整部15を経由して出力される(クロックT5)。
次に、外部選択部14は、タイミング調整部15からベクトルエレメントデータa0、a1、a2、a3、a4、a5、a6、a7を入力し、ベクトルパイプライン演算部160にベクトルエレメントデータa7を出力し、ベクトルパイプライン演算部161にベクトルエレメントデータa0を出力し、ベクトルパイプライン演算部162にベクトルエレメントデータa1を出力し、ベクトルパイプライン演算部163にベクトルエレメントデータa2を出力し、ベクトルパイプライン演算部164にベクトルエレメントデータa3を出力し、ベクトルパイプライン演算部165にベクトルエレメントデータa4を出力し、ベクトルパイプライン演算部166にベクトルエレメントデータa5を出力し、ベクトルパイプライン演算部167にベクトルエレメントデータa6を出力する(クロックT5)。
次に、ベクトルパイプライン演算部160〜ベクトルパイプライン演算部167のそれぞれの内部選択部SIN(または、内部選択部SIO)を経由してベクトルレジスタVR1にベクトルエレメントデータa7、a0、a1、a2、a3、a4、a5、a6が格納される(クロックT5)。次に、ベクトルパイプライン演算部160〜ベクトルパイプライン演算部167のそれぞれの内部選択部SINを経由してベクトルレジスタVR1にベクトルエレメントデータa15、a8、a9、a10、a11、a12、a13、a14が格納される(クロックT6)。このようにして、順次、右ローテート命令Zが実行される。
本発明を実施するための第3の最良の形態は、本発明を実施するための第1、第2の最良の形態に比べて、ベクトルパイプライン演算部160〜ベクトルパイプライン演算部167間をまたがってベクトルエレメントデータの処理を行う命令を容易に実行できるという効果を持つ。
次に、本発明を実施するための第4の最良の形態について図面を参照して詳細に説明する。
図7は、本発明を実施するための第4の最良の形態の構成を示すブロック図である。
図7を参照すると、本発明を実施するための第4の最良の形態は、本発明を実施するための第3の最良の形態のタイミング調整部15を削除した構成を持つ。命令制御部10の動作制御情報生成部12は、ベクトルパイプライン演算部160〜ベクトルパイプライン演算部167間をまたがってベクトルエレメントデータの処理を行う命令の実行に際し、動作制御情報をずらさずに、ベクトルパイプライン演算部160〜ベクトルパイプライン演算部167に出力する。たとえば、右ローテート命令Zの実行に際し、動作制御情報生成部12は、クロックT4において、ベクトルパイプライン演算部160〜ベクトルパイプライン演算部167すべてに、右ローテート命令Zの動作開始の動作制御情報を出力する。
図8は、本発明を実施するための第4の最良の形態の動作制御情報生成部12の一例の構成を示すブロック図である。
図8を参照すると、動作制御情報生成部12は、制御レジスタFR0と、制御レジスタFR1と、制御レジスタFR2と、制御レジスタFR3と、選択情報生成部CSSと、制御選択部CS0と、制御選択部CS1と、制御選択部CS2と、制御選択部CS3とを含む。制御レジスタFR0〜制御レジスタFR3は、順次、1クロックずつずれて、命令実行制御部13からの制御情報を格納する。選択情報生成部CSSは、命令実行制御部13からの制御情報、および、動作指定部11からのノイズ低減指定情報に基づいて制御選択部CS0〜制御選択部CS3への選択情報を生成する。
選択情報は、以下のように生成される。
(1)ノイズ低減指定情報が、ノイズ低減の動作を指定していなければ、選択情報は、制御選択部CS0〜制御選択部CS3に、制御レジスタFR0からの制御情報を選択させる。
(2)ノイズ低減指定情報が、ノイズ低減の動作を指定しており、かつ、命令実行制御部13からの制御情報が、ベクトルパイプライン演算部160〜ベクトルパイプライン演算部167間をまたがってベクトルエレメントデータの処理を行う命令を示していないと、選択情報は、制御選択部CS0に、制御レジスタFR0からの制御情報を選択させ、制御選択部CS1に、制御レジスタFR1からの制御情報を選択させ、制御選択部CS2に、制御レジスタFR2からの制御情報を選択させ、制御選択部CS3に、制御レジスタFR3からの制御情報を選択させる。
(3)ノイズ低減指定情報が、ノイズ低減の動作を指定しており、かつ、命令実行制御部13からの制御情報が、ベクトルパイプライン演算部160〜ベクトルパイプライン演算部167間をまたがってベクトルエレメントデータの処理を行う命令を示していると、選択情報は、制御選択部CS0〜制御選択部CS3に、制御レジスタFR3からの制御情報を選択させる。
制御選択部CS0は、選択情報にしたがって選択した制御情報を動作制御情報としてベクトルパイプライン演算部160、ベクトルパイプライン演算部161に出力する。制御選択部CS1は、選択情報にしたがって選択した制御情報を動作制御情報としてベクトルパイプライン演算部162、ベクトルパイプライン演算部163に出力する。制御選択部CS2は、選択情報にしたがって選択した制御情報を動作制御情報としてベクトルパイプライン演算部164、ベクトルパイプライン演算部165に出力する。制御選択部CS3は、選択情報にしたがって選択した制御情報を動作制御情報としてベクトルパイプライン演算部166、ベクトルパイプライン演算部167に出力する。
本発明を実施するための第4の最良の形態は、本発明を実施するための第3の最良の形態に比べてタイミング調整部15を削除できるので、ハードウェア量が削減できるという効果を持つ。
以上は、ベクトルパイプライン演算部160〜ベクトルパイプライン演算部167を持つベクトル処理装置100について説明したが、本発明は、複数の演算部を持つ情報処理装置に適用可能である。複数の演算部の演算の開始をずらす制御により、同時動作によるノイズを低減させることが可能となる。
また、本発明を実施するための第1〜第4の最良の形態のベクトル処理装置100、または、情報処理装置を1個のLSI上に構成することが可能である。また、ベクトル処理装置100、または、情報処理装置を複数個のLSI上に構成することも可能である。
本発明を実施するための第1の最良の形態の構成を示すブロック図。 本発明を実施するための第1の最良の形態の動作を示すタイミングチャート。 本発明を実施するための第2の最良の形態の構成を示すブロック図。 本発明を実施するための第3の最良の形態の構成を示すブロック図。 図3のタイミング調整部の構成を示すブロック図。 本発明を実施するための第3の最良の形態の動作を示すタイミングチャート。 本発明を実施するための第4の最良の形態の構成を示すブロック図。 本発明を実施するための第4の最良の形態の動作制御情報生成部の構成を示すブロック図。
符号の説明
10 命令制御部
11 動作指定部
12 動作制御情報生成部
13 命令実行制御部
14 外部選択部
15 タイミング調整部
100 ベクトル処理装置
160 ベクトルパイプライン演算部
161 ベクトルパイプライン演算部
162 ベクトルパイプライン演算部
163 ベクトルパイプライン演算部
164 ベクトルパイプライン演算部
165 ベクトルパイプライン演算部
166 ベクトルパイプライン演算部
167 ベクトルパイプライン演算部
VR0 ベクトルレジスタ
VR1 ベクトルレジスタ
VR2 ベクトルレジスタ
VR3 ベクトルレジスタ
VR4 ベクトルレジスタ
VR5 ベクトルレジスタ
VRn ベクトルレジスタ
SIN 内部選択部
SOUT 内部選択部
SIO 内部選択部
SAL 演算結果選択部
ER0 エレメントレジスタ
ER1 エレメントレジスタ
ALU 演算実行部
AR0 中間結果レジスタ
AR1 中間結果レジスタ
STR 演算結果レジスタ
DR00 調整レジスタ
DR01 調整レジスタ
DR02 調整レジスタ
DR10 調整レジスタ
DR11 調整レジスタ
DR12 調整レジスタ
DR20 調整レジスタ
DR21 調整レジスタ
DR30 調整レジスタ
DR31 調整レジスタ
DR40 調整レジスタ
DR50 調整レジスタ
DS0 調整選択部
DS1 調整選択部
DS2 調整選択部
DS3 調整選択部
DS4 調整選択部
DS5 調整選択部
FR0 制御レジスタ
FR1 制御レジスタ
FR2 制御レジスタ
FR3 制御レジスタ
CS0 制御選択部
CS1 制御選択部
CS2 制御選択部
CS3 制御選択部
CSS 選択情報生成部

Claims (16)

  1. 動作制御情報にしたがって処理を開始・実行する複数のベクトルパイプライン演算部と、
    ノイズ低減指定情報を保持する動作指定部を含み、ベクトル命令の実行に際し、前記ベクトルパイプライン演算部の処理の開始・実行を指示する動作制御情報を生成し、前記ノイズ低減指定情報がノイズ低減の動作を実施することを示すように設定されていると各前記ベクトルパイプライン演算部に、順次遅らせる時間的ずれを生じさせて出力する命令制御部と、
    を有することを特徴とするベクトル処理装置。
  2. 動作制御情報にしたがって処理を開始・実行する複数のベクトルパイプライン演算部と、
    ノイズ低減指定情報を保持する動作指定部を含み、ベクトル命令の実行に際し、前記ベクトルパイプライン演算部の処理の開始・実行を指示する動作制御情報を生成し、前記ノイズ低減指定情報がノイズ低減の動作を実施することを示すように設定されていると各前記ベクトルパイプライン演算部に、クロックに基づく順次遅らせる時間的ずれを生じさせて出力する命令制御部とを有することを特徴とするベクトル処理装置。
  3. 前記ベクトルパイプライン演算部にまたがるベクトル命令の実行に際し、前記ベクトルパイプライン演算部からのベクトルエレメントデータを入力し、時間的遅延を解消し、前記ベクトルパイプライン演算部に出力するタイミング調整部を有することを特徴とする請求項1記載のベクトル処理装置。
  4. 前記ベクトルパイプライン演算部にまたがるベクトル命令の実行に際し、前記ベクトルパイプライン演算部からのベクトルエレメントデータを入力し、順次遅らせる時間的ずれを解消し、前記ベクトルパイプライン演算部に出力するタイミング調整部とを有することを特徴とする請求項2記載のベクトル処理装置。
  5. 前記命令制御部が
    前記ノイズ低減指定情報ノイズ低減の動作を実施することを示すように設定されていないと、動作制御情報を前記ベクトルパイプライン演算部に順次遅らせる時間的ずれを生じさせずに出力することを特徴とする請求項1、2、3、または、4記載のベクトル処理装置。
  6. 前記命令制御部が
    前記ノイズ低減指定情報ノイズ低減の動作を実施することを示すように設定されていないと、動作制御情報を各前記ベクトルパイプライン演算部に順次遅らせる時間的ずれを生じさせずに出力し、前記ノイズ低減指定情報ノイズ低減の動作を実施することを示すように設定されていると、前記ベクトルパイプライン演算部にまたがるベクトル命令の実行に際しては、各前記ベクトルパイプライン演算部に、時間的ずれを生じさせずに最も遅く動作する前記ベクトルパイプライン演算部に合わせて動作制御情報を出力し、前記ベクトルパイプライン演算部にまたがらないベクトル命令の実行に際しては、動作制御情報を各前記ベクトルパイプライン演算部に順次遅らせる時間的ずれを生じさせて出力することを特徴とする請求項1、または、2記載のベクトル処理装置。
  7. 動作制御情報にしたがって処理を同時に開始・実行可能な複数の演算部と、
    ノイズ低減指定情報を保持する動作指定部を含み、命令の実行に際し、前記演算部の処理の開始・実行を指示する動作制御情報を生成し、前記ノイズ低減指定情報がノイズ低減の動作を実施することを示すように設定されていると各前記演算部に順次遅らせる時間的ずれを生じさせて出力する命令制御部と、
    を有することを特徴とする情報処理装置。
  8. 動作制御情報にしたがって処理を同時に開始・実行可能な複数の演算部と、
    ノイズ低減指定情報を保持する動作指定部を含み、命令の実行に際し、前記演算部の処理の開始・実行を指示する動作制御情報を生成し、前記ノイズ低減指定情報がノイズ低減の動作を実施することを示すように設定されていると各前記演算部にクロックに基づく順次遅らせる時間的ずれを生じさせて出力する命令制御部と、
    を有することを特徴とする情報処理装置。
  9. 複数のベクトルパイプライン演算部に、動作制御情報にしたがって処理を開始・実行させる手順と、
    命令制御部に、ベクトル命令の実行に際し、前記ベクトルパイプライン演算部の処理の開始・実行を指示する動作制御情報を生成させ、動作指定部に保持されたノイズ低減指定情報がノイズ低減の動作を実施することを示すように設定されていると各前記ベクトルパイプライン演算部に順次遅らせる時間的ずれを生じさせて出力させる手順と、
    を含むことを特徴とするベクトル処理方法。
  10. 複数のベクトルパイプライン演算部に、動作制御情報にしたがって処理を開始・実行させる手順と、
    命令制御部に、ベクトル命令の実行に際し、前記ベクトルパイプライン演算部の処理の開始・実行を指示する動作制御情報を生成させ、動作指定部に保持されたノイズ低減指定情報がノイズ低減の動作を実施することを示すように設定されていると各前記ベクトルパイプライン演算部にクロックに基づく順次遅らせる時間的ずれを生じさせて出力させる手順と、
    を含むことを特徴とするベクトル処理方法。
  11. タイミング調整部に、前記ベクトルパイプライン演算部にまたがるベクトル命令の実行に際し、前記ベクトルパイプライン演算部からのベクトルエレメントデータを入力させ、時間的遅延を解消させ前記ベクトルパイプライン演算部に出力させる手順を含むことを特徴とする請求項9記載のベクトル処理方法。
  12. タイミング調整部に、前記ベクトルパイプライン演算部にまたがるベクトル命令の実行に際し、前記ベクトルパイプライン演算部からのベクトルエレメントデータを入力させ、時間的遅延を解消させ前記ベクトルパイプライン演算部に出力させる手順を含むことを特徴とする請求項10記載のベクトル処理方法。
  13. 前記命令制御部に、
    前記ノイズ低減指定情報ノイズ低減の動作を実施することを示すように設定されていないと、動作制御情報を前記ベクトルパイプライン演算部に順次遅らせる時間的ずれを生じさせずに出力させる手順を含むことを特徴とする請求項9、10、11、または、12記載のベクトル処理方法。
  14. 前記命令制御部に、
    前記ノイズ低減指定情報ノイズ低減の動作を実施することを示すように設定されていないと、動作制御情報を各前記ベクトルパイプライン演算部に順次遅らせる時間的ずれを生じさせずに出力させる手順と、
    前記ノイズ低減指定情報ノイズ低減の動作を実施することを示すように設定されていると、前記ベクトルパイプライン演算部にまたがるベクトル命令の実行に際しては、各前記ベクトルパイプライン演算部に、時間的ずれを生じさせずに最も遅く動作する前記ベクトルパイプライン演算部に合わせて動作制御情報を出力させる手順と、
    前記ベクトルパイプライン演算部にまたがらないベクトル命令の実行に際しては、動作制御情報を各前記ベクトルパイプライン演算部に順次遅らせる時間的ずれを生じさせて出力させる手順と、
    含むことを特徴とする請求項9、または、10記載のベクトル処理方法。
  15. 請求項1、2、3、4、5、または、6のベクトル処理装置をLSI上に構成することを特徴とするベクトル処理装置。
  16. 請求項7、または、8の情報処理装置をLSI上に構成することを特徴とする情報処理装置。
JP2004217283A 2004-07-26 2004-07-26 ベクトル処理装置、情報処理装置、および、ベクトル処理方法 Expired - Fee Related JP4079923B2 (ja)

Priority Applications (9)

Application Number Priority Date Filing Date Title
JP2004217283A JP4079923B2 (ja) 2004-07-26 2004-07-26 ベクトル処理装置、情報処理装置、および、ベクトル処理方法
CA002512316A CA2512316A1 (en) 2004-07-26 2005-07-15 Vector processing apparatus, information processing apparatus, and vector processing method
AU2005203127A AU2005203127A1 (en) 2004-07-26 2005-07-19 Vector processing apparatus, information processing apparatus, and vector processing method
EP05015681A EP1624380B1 (en) 2004-07-26 2005-07-19 Vector processing apparatus, information processing apparatus, and vector processing method for reducing simultaneous switching noise
DE602005002096T DE602005002096T2 (de) 2004-07-26 2005-07-19 Vektorverarbeitungsvorrichtung, Datenverarbeitungsvorrichtung und Datenverarbeitungsmethode zur Verringerung von Störsignalen bei gleichzeitigem Schalten
AT05015681T ATE371217T1 (de) 2004-07-26 2005-07-19 Vektorverarbeitungsvorrichtung, datenverarbeitungsvorrichtung und datenverarbeitungsmethode zur verringerung von störsignalen bei gleichzeitigem schalten
DK05015681T DK1624380T3 (da) 2004-07-26 2005-07-19 Vektorbehandlingsindretning, informationsbehandlingsindretning og fremgangsmåde ved vektorbehandling til reduktion af stöj ved samtidig omskiftning
US11/188,927 US20060020768A1 (en) 2004-07-26 2005-07-25 Vector processing apparatus, Information processing apparatus, and vector processing method
KR1020050067164A KR100703764B1 (ko) 2004-07-26 2005-07-25 벡터 처리 장치, 정보 처리 장치 및 벡터 처리 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004217283A JP4079923B2 (ja) 2004-07-26 2004-07-26 ベクトル処理装置、情報処理装置、および、ベクトル処理方法

Publications (2)

Publication Number Publication Date
JP2006039840A JP2006039840A (ja) 2006-02-09
JP4079923B2 true JP4079923B2 (ja) 2008-04-23

Family

ID=35159845

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004217283A Expired - Fee Related JP4079923B2 (ja) 2004-07-26 2004-07-26 ベクトル処理装置、情報処理装置、および、ベクトル処理方法

Country Status (9)

Country Link
US (1) US20060020768A1 (ja)
EP (1) EP1624380B1 (ja)
JP (1) JP4079923B2 (ja)
KR (1) KR100703764B1 (ja)
AT (1) ATE371217T1 (ja)
AU (1) AU2005203127A1 (ja)
CA (1) CA2512316A1 (ja)
DE (1) DE602005002096T2 (ja)
DK (1) DK1624380T3 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100973083B1 (ko) * 2008-12-31 2010-07-29 전자부품연구원 어레이 기반의 움직임 벡터 추출기 및 그 방법
JP5804507B2 (ja) * 2011-09-26 2015-11-04 Necプラットフォームズ株式会社 演算処理装置及び演算器同時実行制御方法
GB2553783B (en) 2016-09-13 2020-11-04 Advanced Risc Mach Ltd Vector multiply-add instruction

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4789925A (en) * 1985-07-31 1988-12-06 Unisys Corporation Vector data logical usage conflict detection
US5021945A (en) * 1985-10-31 1991-06-04 Mcc Development, Ltd. Parallel processor system for processing natural concurrencies and method therefor
JP2921190B2 (ja) * 1991-07-25 1999-07-19 日本電気株式会社 並列実行方式
US5274818A (en) * 1992-02-03 1993-12-28 Thinking Machines Corporation System and method for compiling a fine-grained array based source program onto a course-grained hardware
US6122767A (en) * 1993-06-03 2000-09-19 Texas Instruments Incorporated Method and apparatus for noise reduction of cyclic signal by selecting majority logic state of corresponding portions of plural cycles
JPH0744508A (ja) * 1993-08-03 1995-02-14 Hitachi Ltd プログラム分割方法
US6016395A (en) * 1996-10-18 2000-01-18 Samsung Electronics Co., Ltd. Programming a vector processor and parallel programming of an asymmetric dual multiprocessor comprised of a vector processor and a risc processor
US5987620A (en) * 1997-09-19 1999-11-16 Thang Tran Method and apparatus for a self-timed and self-enabled distributed clock
DE19743284C1 (de) * 1997-09-30 1999-03-11 Siemens Ag Schaltungsanordnung zur Reduzierung von Störungen infolge des Schaltes eines Ausgangstreibers
US6550059B1 (en) * 1999-10-04 2003-04-15 Advanced Micro Devices, Inc. Method for generating optimized vector instructions from high level programming languages
US6832214B1 (en) * 1999-12-07 2004-12-14 International Business Machines Corporation Method, system, and program for converting code to executable code using neural networks implemented in a software program
US6968546B2 (en) * 2001-03-30 2005-11-22 Intel Corporation Debugging support using dynamic re-compilation
US7278137B1 (en) * 2001-12-26 2007-10-02 Arc International Methods and apparatus for compiling instructions for a data processor
US6983387B2 (en) * 2002-10-17 2006-01-03 International Business Machines Corporation Microprocessor chip simultaneous switching current reduction method and apparatus

Also Published As

Publication number Publication date
KR20060046730A (ko) 2006-05-17
JP2006039840A (ja) 2006-02-09
ATE371217T1 (de) 2007-09-15
DK1624380T3 (da) 2007-11-26
AU2005203127A1 (en) 2006-02-09
EP1624380B1 (en) 2007-08-22
CA2512316A1 (en) 2006-01-26
KR100703764B1 (ko) 2007-04-06
EP1624380A3 (en) 2006-02-22
US20060020768A1 (en) 2006-01-26
DE602005002096D1 (de) 2007-10-04
EP1624380A2 (en) 2006-02-08
DE602005002096T2 (de) 2008-07-24

Similar Documents

Publication Publication Date Title
CN109376861B (zh) 一种用于执行全连接层神经网络训练的装置和方法
CN106991478B (zh) 用于执行人工神经网络反向训练的装置和方法
US7958333B2 (en) Processor with memory access stage adapted to fetch an instruction of a thread when no memory access operation is detected
WO2017185387A1 (zh) 一种用于执行全连接层神经网络正向运算的装置和方法
WO2017124642A1 (zh) 用于执行人工神经网络正向运算的装置和方法
KR101660659B1 (ko) 멀티-스레딩된 프로세싱 시스템에서의 서브루틴들의 실행
JP2002215599A (ja) マルチプロセッサシステムおよびその制御方法
US9547493B2 (en) Self-timed user-extension instructions for a processing device
CN107886166A (zh) 一种执行人工神经网络运算的装置和方法
JP7134100B2 (ja) Simdの集中およびコピー動作を実行するための方法および装置
KR100703764B1 (ko) 벡터 처리 장치, 정보 처리 장치 및 벡터 처리 방법
WO2018058452A1 (zh) 一种执行人工神经网络运算的装置和方法
US20240004663A1 (en) Processing device with vector transformation execution
JP2013539143A (ja) 論理時刻ベクトルに基づくタスクの実行をスケジュールするためのシステム
WO2017185335A1 (zh) 一种用于执行batch normalization运算的装置和方法
WO2016014239A1 (en) ENFORCING LOOP-CARRIED DEPENDENCY (LCD) DURING DATAFLOW EXECUTION OF LOOP INSTRUCTIONS BY OUT-OF-ORDER PROCESSORS (OOPs), AND RELATED CIRCUITS, METHODS, AND COMPUTER-READABLE MEDIA
US11531638B2 (en) Reconfigurable circuit array using instructions including a fetch configuration data portion and a transfer configuration data portion
JP2023527227A (ja) プロセッサ、処理方法、および関連デバイス
CA2939834A1 (en) Speculative history forwarding in overriding branch predictors, and related circuits, methods, and computer-readable media
KR20230124598A (ko) 높은 처리량 및 낮은 오버헤드 커널 개시를 위한 압축 커맨드 패킷
WO2006011189A1 (ja) 並列計算機
JP2010140398A (ja) データ処理装置及びデータ処理方法
JP2013539144A (ja) 論理時刻ベクトルに基づくタスクの実行をスケジュールするためのシステム
WO2015136686A1 (ja) 情報処理装置及び方法
JPS63208124A (ja) マイクロプログラム制御装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20051115

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20070126

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070531

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071106

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071203

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: 20080115

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080205

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110215

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4079923

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120215

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120215

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130215

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130215

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140215

Year of fee payment: 6

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees