JP4868607B2 - Simd型マイクロプロセッサ - Google Patents

Simd型マイクロプロセッサ Download PDF

Info

Publication number
JP4868607B2
JP4868607B2 JP2008011187A JP2008011187A JP4868607B2 JP 4868607 B2 JP4868607 B2 JP 4868607B2 JP 2008011187 A JP2008011187 A JP 2008011187A JP 2008011187 A JP2008011187 A JP 2008011187A JP 4868607 B2 JP4868607 B2 JP 4868607B2
Authority
JP
Japan
Prior art keywords
control signal
processor element
processor
signal generator
type microprocessor
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
JP2008011187A
Other languages
English (en)
Other versions
JP2009175830A (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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co 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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2008011187A priority Critical patent/JP4868607B2/ja
Priority to US12/356,676 priority patent/US8024550B2/en
Publication of JP2009175830A publication Critical patent/JP2009175830A/ja
Application granted granted Critical
Publication of JP4868607B2 publication Critical patent/JP4868607B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/8007Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors single instruction multiple data [SIMD] multiprocessors
    • 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/30098Register arrangements
    • G06F9/3012Organisation of register space, e.g. banked or distributed register file
    • 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/3885Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
    • 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/3885Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
    • G06F9/3887Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled by a single instruction for multiple data lanes [SIMD]

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)
  • Computing Systems (AREA)
  • Image Processing (AREA)

Description

本発明は1つの演算命令により複数のデータ等を並列処理するSIMD(Single Instruction-stream, Multiple Data-stream)型マイクロプロセッサに関する。
近年、デジタル複写機やファクシミリ装置などの画像処理装置において、画素数を増加したり、或いはカラー対応にするなど画質の向上が図られている。そして、この画質の向上に伴い、処理すべきデータ数が増加している。
ところで、複写機等の画像処理装置におけるデータ処理は全ての画素に対して同じ演算処理を施すことが多い。そこで、1つの命令で複数のデータに対して同時に同じ演算処理を行うSIMD型のマイクロプロセッサが用いられることが多い。
従来のSIMD型マイクロプロセッサを図7に示す。図7に示したSIMD型マイクロプロセッサ100は、グローバルプロセッサ101と、プロセッサエレメント群102と、外部入出力103と、から構成され、SIMD型マイクロプロセッサ100に接続された画像メモリ104から読み出した画像データに所定の処理を行う。
グローバルプロセッサ101は、いわゆるSISD(Single Instruction-stream, Single Data-stream)方式のプロセッサであり、プログラムRAMとデータRAMとを内蔵し、プログラムを解読し各種制御信号を生成する。この制御信号は、内蔵する各ブロック以外に後述するプロセッサエレメント群102のレジスタファイルや演算アレイにも供給される。また、GP(グローバルプロセッサ)命令実行時は内蔵する汎用レジスタ、ALU(算術論理演算器)等を使用して各種演算処理、プログラム制御処理を行う。
プロセッサエレメント群102は、複数のレジスタファイル102aと複数の演算部102bとがそれぞれ1列に配置されている。レジスタファイル102aでは、プロセッサエレメントで処理されるデータを保持している。このレジスタファイル102aからのデータの読み出し/書き込みの制御はグローバルプロセッサ101からの制御によって行われる。グローバルプロセッサ101からの制御によって行われ読み出されたデータは演算部102bに送られ、演算部102bでの演算処理後にレジスタファイル102aに書き込まれる。また、レジスタファイル102aはSIMD型マイクロプロセッサ100外部からのアクセスが可能であり、グローバルプロセッサ101の制御とは別に外部から特定のレジスタを読み出し/書き込みが行われる。演算部102bはPE(プレセッサエレメント)命令の演算処理が行われる。このPE命令の演算処理の制御はすべてグローバルプロセッサ101から行われる。
外部入出力103は、画像メモリ104から処理する元の画像データを読み出しプロセッサエレメント群102のレジスタファイル102aに書き込む、あるいはレジスタファイル102aから処理後の画像データを読み出し画像メモリ104に書き込む。
画像メモリ104は、処理する元の画像データを記憶、処理後の画像データを記憶する。
上述したようなSIMD型マイクロプロセッサ100の処理性能を上げるために、PE数(レジスタファイル102aと演算部102bの数)を増加させていくと、グローバルプロセッサ101などに含まれるPE制御信号発生器の駆動回路からプロセッサエレメント群102の終端に至るまでの制御信号線(PE命令の演算処理の制御を行うための信号線)の長さが非常に長くなっていく。
例えば、図8を参照して説明すると、プロセッサエレメント群102中のグローバルプロセッサ101の近傍に配置されたPE0と最終端(最遠方)に配置されたPEnとでは制御信号線の配線長の差による遅延時間差が大きくなり、そのため、処理性能に関わる動作周波数を向上することが困難となる。
このような問題に対して例えば特許文献1に記載の方法が提案されている。特許文献1には、隣接するn個のプロセッサエレメント間のレジスタをグループ化し、共通バスを設定してグループごとに1つの制御信号線を配置したアレイプロセッサが記載されている。
特開平8−212169号公報
しかしながら、特許文献1に記載の方法では、隣接するプロセッサエレメント間のレジスタをリードバス及びライトバスにより接続し、複数個のプロセッサエレメントをシフトさせたり、特定のプロセッサエレメントのデータを書き換えるなどの処理が容易に行えないという問題があった。また、特許文献1に記載の方法においては、命令シーケンス制御部の近傍のプロセッサエレメントと、最終端のプロセッサエレメントで制御信号の配線遅延に関しては何ら考慮されていない。したがって処理性能に関わる動作周波数を向上することは困難なままである。
本発明はかかる問題を解決することを目的としている。
すなわち、本発明は、プロセッサエレメントに対して制御信号を供給するプロセッサエレメント制御信号発生器からプロセッサエレメント群の最終端までの制御信号線の配線遅延が小さいSIMD型マイクロプロセッサを提供することを目的としている。
請求項1に記載された発明は、演算部と、レジスタファイルと、を備えた複数のプロセッサエレメントが配置されたプロセッサエレメント群と、前記プロセッサエレメントの動作を制御するプロセッサエレメント制御信号を出力するプロセッサエレメント制御信号発生器と、を有するSIMD型マイクロプロセッサにおいて、前記プロセッサエレメント群の中心に、前記プロセッサエレメント制御信号発生器から出力された前記プロセッサエレメント制御信号を各プロセッサエレメントに供給する供給部が前記プロセッサエレメント制御信号発生器とは別に設けられ、前記プロセッサエレメント制御信号発生器が、複数の前記プロセッサエレメントに隣接して配置されるとともに、前記供給部が、前記プロセッサエレメント制御信号をバッファリングするバッファ回路およびプロセッサエレメント制御信号発生器からの信号をデコードする回路を有することを特徴とするSIMD型マイクロプロセッサである。
請求項に記載された発明は、請求項1に記載された発明において、SIMD型マイクロプロセッサ全体の制御を行うグローバルプロセッサを有していることを特徴とするものである。
請求項に記載された発明は、請求項に記載された発明において、前記グローバルプロセッサが、前記プロセッサエレメント制御信号発生器を有していることを特徴とするものである。
請求項に記載された発明は、請求項1乃至3のうちいずれか一項に記載された発明において、前記供給部が、プロセッサエレメント制御信号出力用のパイプラインレジスタを有することを特徴とするものである。
請求項1に記載の発明によれば、プロセッサエレメント群の中心に設けた供給部から各プロセッサエレメントにプロセッサエレメント制御信号発生器から出力されたプロセッサエレメント制御信号を供給しているので、プロセッサエレメント制御信号発生器からプロセッサエレメント群の両端の配線遅延を従来の構成と比べて、小さくすることができる。これにより、プロセッサエレメント数が同数であるならば、SIMD型マイクロプロセッサの動作周波数を向上させることが可能となり、プロセッサエレメント数を増加させた場合でも、動作周波数を維持させることが可能となる。また、プロセッサエレメント制御信号発生器が、複数の前記プロセッサエレメントに隣接して配置されるとともに、供給部が、プロセッサエレメント制御信号をバッファリングするバッファ回路を有しているので、プロセッサエレメント群の中心部により分断されたプロセッサエレメント間の距離を可能な限り小さくできるために、隣接するプロセッサエレメントとの演算が可能となり、また、SIMD型マイクロプロセッサの処理速度を向上させることができる。さらに、供給部にプロセッサエレメント制御信号発生器からの信号をデコードする回路を有しているので、プロセッサエレメント制御信号発生器からは、エンコードした信号を使用できる。これにより、プロセッサエレメント制御信号発生器と供給部間の制御線の配線数を少なくすることができる。よって、制御線の配線数が原因で、供給部の高さが決定している場合は高さを小さくできる。それに伴い、プロセッサエレメント群を分断している距離も小さくなるので、隣接するプロセッサエレメントのデータとの高速な演算が可能となり、SIMD型マイクロプロセッサの処理速度を向上できる。
請求項に記載の発明によれば、グローバルプロセッサを有したので、グローバルプロセッサを有したSIMD型マイクロプロセッサにおいて、プロセッサエレメント制御信号発生器からプロセッサエレメント群の最も端のプロセッサエレメントまでの配線遅延を従来の構成と比べて、半分まで小さくすることが可能となる。これにより、プロセッサエレメント数が同数であるならば、SIMD型マイクロプロセッサの動作周波数を向上させることが可能となり、プロセッサエレメント数を増加させた場合でも、動作周波数を維持させることが可能となる。
請求項に記載の発明によれば、グローバルプロセッサにプロセッサエレメント制御信号発生器を含んでいるので、グローバルプロセッサがプロセッサエレメント群の中心に配置されることとなり、プロセッサエレメント制御信号発生器からプロセッサエレメント群の最も端のプロセッサエレメントまでの配線遅延を従来の構成と比べて、半分まで小さくすることが可能となる。これにより、プロセッサエレメント数が同数であるならば、SIMD型マイクロプロセッサの動作周波数を向上させることが可能となり、プロセッサエレメント数を増加させた場合でも、動作周波数を維持させることが可能となる。
請求項に記載の発明によれば、供給部にプロセッサエレメント制御信号出力用のパイプラインレジスタを有しているので、パイプラインレジスタの直後のバッファ回路から各プロセッサエレメントへプロセッサエレメント制御信号を出力することができることから、パイプラインの開始点が各プロセッサエレメントに対してより近くなって、配線遅延が小さくなり、SIMD型マイクロプロセッサの動作周波数を向上させることが可能となる。
[第一実施形態]
以下、本発明の第一の実施形態を、図1および図2を参照して説明する。図1は、本発明の第一の実施形態にかかるSIMD型マイクロプロセッサのブロック図である。図2は、図1に示したSIMD型マイクロプロセッサのプロセッサエレメントのブロック図である。
図1に示したSIMD型マイクロプロセッサ1は、複数のプロセッサエレメント2と、PE制御信号発生器3と、を備えている。図1では図7に示したSIMD型マイクロプロセッサのうち特にプロセッサエレメント群を中心とした部分を抜き出している。したがって、グローバルプロセッサや入出力制御なども図示しないが備えている。
プロセッサエレメント2は、図1に示したようにPE0からPE511の512個が1列に配置されている。つまり、このPE0からPE511までがプロセッサエレメント群に相当する。また、このプロセッサエレメント群のPE0からPE255の256個分のプロセッサエレメントと、PE256からPE511の256個分のプロセッサエレメントとの間に、各プロセッサエレメントに対してPE制御信号を出力する供給部としてのPE制御信号発生器(プロセッサエレメント制御信号発生器)3を配置している。要するに、PE制御信号発生器3がPE255とPE256との間、つまり中心部(中央部)でプロセッサエレメント群を分断しており、図1のPE制御信号発生器から見て、上側の最遠方にPE0、上側の最近傍にPE255が配置され、下側の最近傍にPE256、下側の最遠方にPE511が配置されている。すなわち、プロセッサエレメント群の中心に、前記プロセッサエレメント制御信号発生器から出力された前記プロセッサエレメント制御信号を各プロセッサエレメントに供給する供給部が設けられている。
プロセッサエレメント2の構成を図2に示す。プロセッサエレメント2は、レジスタファイル21と、マルチプレクサ22と、シフト拡張23と、パイプラインレジスタ24と、ALU25とAレジスタ26と、を備え、PE制御信号発生器3から入力されたPE制御信号に従ってレジスタファイル21に格納されたデータを演算する。
レジスタファイル21は、32ビットのレジスタを32本備えており、レジスタに格納されたデータをPE制御信号に従って後述するマルチプレクサ22へ出力したり後述するAレジスタの内容を格納する。
マルチプレクサ22は、複数のレジスタファイル21から入力されたデータを選択して出力する。このマルチプレクサ22は、画像処理系などで用いられる演算で、あるPEnのレジスタファイル21のデータとPEnに隣接するPEn−1やPEn+1のレジスタファイル21のデータを演算する場合に、隣接するPEn−1やPEn+1のレジスタファイル21のデータを、PEnのレジスタファイル21のデータと同様に扱うことができるようにするために設けられており、これによって、PEnのALU25を用いて一命令で演算を実行することが可能となる。
シフト拡張23は、マルチプレクサ22を通過したデータに対して、ビットシフト及びゼロまたは符号拡張を行う。
パイプラインレジスタ24は、シフト拡張23までの処理とALU25の処理とのパイプライン処理におけるステージを分割するために設けられているレジスタである。
ALU25は、算術論理演算器であり、パイプラインレジスタ24から入力されたデータおよびAレジスタ26のデータを入力としてPE制御信号により指定された演算を行いAレジスタ26に出力する。
Aレジスタ26は、ALU25で演算された結果を格納するアキュムレータである。つまり、マルチプレクサ22と、シフト拡張23と、パイプラインレジスタ24と、ALU25とAレジスタ26と、で演算部を構成する。
PE制御信号発生器3は、上述したプロセッサエレメント2を制御するための信号を生成する回路であり、図示しないグローバルプロセッサにおけるプログラムの実行に応じてPE制御信号を生成し、各プロセッサエレメント2に出力する。PE制御信号発生器3から出力されるPE制御信号は、プロセッサエレメント2内にあるALU25の演算選択信号や、パイプラインレジスタ24や、データ格納用のレジスタファイル21などの書き込み信号といった制御信号の示し、さらに図1中のクロック信号もPE制御信号に含む。
PE制御信号発生器3は、例えば、プロセッサエレメント2内の処理で3ステージを必要とする演算命令において、各ステージごとに有効なPE制御信号を出力する。レジスタファイル21からの読み出しとシフト拡張処理するステージでは、レジスタファイル21のアドレスと読み出し信号、隣接プロセッサエレメント2とのマルチプレクサ22の選択信号、シフト信号、拡張信号、ALU25手前のパイプラインレジスタ24の書き込み信号などを出力する。ALU25での演算を行うステージでは、加減算などのALU25の演算を選択する信号や、アキュムレータであるAレジスタ26の書き込み信号などを出力する。レジスタファイル21への書き込みをおこなうステージでは、レジスタファイル21のアドレスと書き込み信号などを出力する。
上述した構成のSIMD型マイクロプロセッサ1では、PE制御信号発生器3の最近傍にあるプロセッサエレメント2であるPE255やPE256までのPE制御信号の配線遅延と、PE制御信号発生器3の最遠方にあるプロセッサエレメント2であるPE0やPE511までのPE制御信号の配線遅延との差を、図7に示したPE制御信号発生器101がプロセッサエレメント群の一端に配置されている従来のSIMD型マイクロプロセッサ100と比較して約半分にすることができる。
本実施例によれば、512個のプロセッサエレメントが1列に並んだプロセッサエレメント群の中心であるPE255とPE256との間にPE制御信号発生器3を配置したので、PE制御信号発生器3の最遠方にあるプロセッサエレメント2であるPE0やPE511までのPE制御信号の配線遅延との差が従来の約半分にすることができるために、プロセッサエレメント数が同数であるならば、SIMD型マイクロプロセッサ1の動作周波数を向上させることが可能となり、プロセッサエレメント数を増加させた場合でも動作周波数を維持させることが可能となる。
[第二実施形態]
次に、本発明の第二の実施形態を図3を参照して説明する。なお、前述した第一の実施形態と同一部分には、同一符号を付して説明を省略する。図3は、本発明の第二の実施形態にかかるSIMD型マイクロプロセッサ1のブロック図である。
本実施形態では、PE制御信号発生器3が、グローバルプロセッサ4に含まれ、そのグローバルプロセッサ4がプロセッサエレメント群の中心に配置されている点が第一の実施形態と異なる。
グローバルプロセッサ4は図3に示したように、実行するプログラムのアドレスを保持するためのプログラムカウンタPCと、グローバルプロセッサ4で実行するプログラム格納用のプログラムRAMと、演算データ格納用のデータRAMと、演算処理のデータ格納のための汎用レジスタであるG0〜G3レジスタと、グローバルプロセッサ用のALUと、レジスタ退避や復帰時に退避先データRAMのアドレスを保持しているスタックポインタSPと、サブルーチンコール時にコール元のアドレスを保持するリンクレジスタLSと、割り込み時とNMI(マスク不能な割り込み)時の分岐元アドレスを保持するLI,LNレジスタと、プロセッサの状態を保持しているプロセッサステータスレジスタPと、命令を解読し各種制御信号を生成するシーケンスユニットSCUと、を備えている。
そして、グローバルプロセッサ4は、上述したレジスタやメモリおよびALUなどを用いてGP(グローバルプロセッサ)命令とPE(プロセッサエレメント)命令を実行する。PE命令実行時は、SCU内に含まれるPE制御信号発生器で生成されたPE制御信号がバッファ回路4aを介して、各プロセッサエレメント2へ供給する。
上述した構成のSIMD型マイクロプロセッサ1では、グローバルプロセッサ4の最近傍にあるプロセッサエレメント2であるPE255やPE256までのPE制御信号の配線遅延と、PE制御信号発生器3の最遠方にあるプロセッサエレメント2であるPE0やPE511までのPE制御信号の配線遅延との差を、図7に示したグローバルプロセッサ101がプロセッサエレメント群の一端に配置されている従来のSIMD型マイクロプロセッサ100と比較して約半分にすることができる。
本実施例によれば、512個のプロセッサエレメントが1列に並んだプロセッサエレメント群の中心であるPE255とPE256との間にグローバルプロセッサ4を配置したので、グローバルプロセッサの最遠方にあるプロセッサエレメント2であるPE0やPE511までのPE制御信号の配線遅延との差を従来の約半分にすることができるために、プロセッサエレメント数が同数であるならば、SIMD型マイクロプロセッサ1の動作周波数を向上させることが可能となり、プロセッサエレメント数を増加させた場合でも、動作周波数を維持させることが可能となる。
[第三実施形態]
次に、本発明の第三の実施形態を図4を参照して説明する。なお、前述した第一、第二の実施形態と同一部分には、同一符号を付して説明を省略する。図4は、本発明の第三の実施形態にかかるSIMD型マイクロプロセッサ1のブロック図である。
本実施形態では、PE制御信号を出力するバッファ回路5aのみをプロセッサエレメント群の供給部としての中心部5に配置し、PE制御信号発生器3は、プロセッサエレメント群に隣接させて配置する構成とした点が第一、第二の実施形態と異なる。
このようにすることにより、プロセッサエレメント群の中央で分断されたPE255とPE256との距離をできるだけ小さくすることができる。
本実施形態によれば、プロセッサエレメント群の中心部5にPE制御信号を出力するバッファ回路5aのみを配置したので、中央で分断されたPE255とPE256との距離をできるだけ小さくすることができ、中心部5の近傍にあるPE255やPE256なども他のプロセッサエレメント2と同様に隣接するプロセッサエレメント2としての演算が可能となる。
[第四実施形態]
次に、本発明の第四の実施形態を図5を参照して説明する。なお、前述した第一乃至第三の実施形態と同一部分には、同一符号を付して説明を省略する。図5は、本発明の第四の実施形態にかかるSIMD型マイクロプロセッサ1のブロック図である。
本実施形態では、プロセッサエレメント群の供給部としての中心部5´において、各プロセッサエレメントにPE制御信号をバッファリングするバッファ回路5aの前段に、パイプラインレジスタ5bを配置している点が第三の実施形態と異なる。
第三の実施形態では、PE制御信号を出力するパイプラインが、PE制御信号発生器の内部から開始されているが、本実施形態では、中心部5´にPE制御信号出力用のパイプラインレジスタ5bを配置しているので、パイプラインの開始点が中心部からとなる。各プロセッサエレメントへの距離は、中心部5´からの方が、PE制御信号発生器3からよりも小さくなるので、配線遅延も同様に小さくなり、さらなる動作周波数の向上が可能となる。
本実施形態によれば、プロセッサエレメント群の中心部5´にPE制御信号を出力するバッファ回路5aと、バッファ回路5aの前段にパイプラインレジスタ5bを配置したので、パイプラインの開始点が各プロセッサエレメント2に対してより近くなって、配線遅延が小さくなり、SIMD型マイクロプロセッサ1の動作周波数を向上させることが可能となる。
[第五実施形態]
次に、本発明の第五の実施形態を図6を参照して説明する。なお、前述した第一乃至第四の実施形態と同一部分には、同一符号を付して説明を省略する。図6は、本発明の第五の実施形態にかかるSIMD型マイクロプロセッサ1のブロック図である。
本実施形態では、プロセッサエレメント群の供給部としての中心部5´´において、各プロセッサエレメントにPE制御信号をバッファリングするバッファ回路5aの前段に、パイプラインレジスタ5bを配置し、さらに、デコーダ回路5cが追加された構成となっている点が第四の実施形態と異なる。
このデコーダ回路5cは、PE制御信号発生器3から中心部5´´に送信されるPE制御信号をデコードする機能を備えている。
本実施形態によれば、プロセッサエレメント群の中心部5´にPE制御信号を出力するバッファ回路5aと、バッファ回路5aの前段にパイプラインレジスタ5bを配置したのに加えて、デコーダ回路5cを追加したので、デコーダ回路5cにより、PE制御信号発生器3から中心部5´´へエンコードした制御信号を送信することが可能となり、配線数を少なくすることが可能となる。また、PE制御線の配線数が原因で、中心部5´´の高さが決定している場合には、配線数が少なくなることにより、高さも小さくすることが可能となる。これにより、分断されたPE255とPE256の距離はさらに小さくなり、隣接するプロセッサエレメント2と高速に演算することが可能となる。
なお、上述した各実施形態では、プロセッサエレメント2を1列に配置した例で説明したがそれに限らず、複数列に配置した場合でも、その複数列となったプロセッサエレメント群の中心からPE制御信号を供給することで、プロセッサエレメント群の一端から供給する場合よりも配線遅延を少なくすることができる。
なお、本発明は上記実施形態に限定されるものではない。即ち、本発明の骨子を逸脱しない範囲で種々変形して実施することができる。
本発明の第一の実施形態にかかるSIMD型マイクロプロセッサのブロック図である。 図1に示したSIMD型マイクロプロセッサのプロセッサエレメントのブロック図である。 本発明の第二の実施形態にかかるSIMD型マイクロプロセッサ1のブロック図である。 本発明の第三の実施形態にかかるSIMD型マイクロプロセッサ1のブロック図である。 本発明の第四の実施形態にかかるSIMD型マイクロプロセッサ1のブロック図である。 本発明の第五の実施形態にかかるSIMD型マイクロプロセッサ1のブロック図である。 従来のSIMD型マイクロプロセッサのブロック図である。 従来のPE制御信号発生器からの制御信号線長の差による遅延時間差の説明図である。
符号の説明
1 SIMD型マイクロプロセッサ
2 プロセッサエレメント
3 PE制御信号発生器(プロセッサエレメント制御信号発生器、供給部)
4 グローバルプロセッサ(供給部)
5 中心部(供給部)
5a バッファ回路
5b パイプラインレジスタ
5c デコーダ回路(デコードする回路)
21 レジスタファイル
22 マルチプレクサ(演算部)
23 シフト拡張(演算部)
24 パイプラインレジスタ(演算部)
25 ALU(演算部)
26 Aレジスタ(演算部)

Claims (4)

  1. 演算部と、レジスタファイルと、を備えた複数のプロセッサエレメントが配置されたプロセッサエレメント群と、前記プロセッサエレメントの動作を制御するプロセッサエレメント制御信号を出力するプロセッサエレメント制御信号発生器と、を有するSIMD型マイクロプロセッサにおいて、
    前記プロセッサエレメント群の中心に、前記プロセッサエレメント制御信号発生器から出力された前記プロセッサエレメント制御信号を各プロセッサエレメントに供給する供給部が前記プロセッサエレメント制御信号発生器とは別に設けられ
    前記プロセッサエレメント制御信号発生器が、複数の前記プロセッサエレメントに隣接して配置されるとともに、前記供給部が、前記プロセッサエレメント制御信号をバッファリングするバッファ回路およびプロセッサエレメント制御信号発生器からの信号をデコードする回路を有する
    ことを特徴とするSIMD型マイクロプロセッサ。
  2. SIMD型マイクロプロセッサ全体の制御を行うグローバルプロセッサを有していることを特徴とする請求項1に記載のSIMD型マイクロプロセッサ。
  3. 前記グローバルプロセッサが、前記プロセッサエレメント制御信号発生器を有していることを特徴とする請求項に記載のSIMD型マイクロプロセッサ。
  4. 前記供給部が、プロセッサエレメント制御信号出力用のパイプラインレジスタを有することを特徴とする請求項1乃至3のうちいずれか一項に記載のSIMD型マイクロプロセッサ。
JP2008011187A 2008-01-22 2008-01-22 Simd型マイクロプロセッサ Expired - Fee Related JP4868607B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008011187A JP4868607B2 (ja) 2008-01-22 2008-01-22 Simd型マイクロプロセッサ
US12/356,676 US8024550B2 (en) 2008-01-22 2009-01-21 SIMD processor with each processing element receiving buffered control signal from clocked register positioned in the middle of the group

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008011187A JP4868607B2 (ja) 2008-01-22 2008-01-22 Simd型マイクロプロセッサ

Publications (2)

Publication Number Publication Date
JP2009175830A JP2009175830A (ja) 2009-08-06
JP4868607B2 true JP4868607B2 (ja) 2012-02-01

Family

ID=40877362

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008011187A Expired - Fee Related JP4868607B2 (ja) 2008-01-22 2008-01-22 Simd型マイクロプロセッサ

Country Status (2)

Country Link
US (1) US8024550B2 (ja)
JP (1) JP4868607B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5499799B2 (ja) * 2010-03-17 2014-05-21 株式会社リコー セレクタ回路
US20130027416A1 (en) * 2011-07-25 2013-01-31 Karthikeyan Vaithianathan Gather method and apparatus for media processing accelerators

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5210836A (en) * 1989-10-13 1993-05-11 Texas Instruments Incorporated Instruction generator architecture for a video signal processor controller
US5134616A (en) * 1990-02-13 1992-07-28 International Business Machines Corporation Dynamic ram with on-chip ecc and optimized bit and word redundancy
JPH06266859A (ja) * 1993-03-11 1994-09-22 Nippon Steel Corp Simd型並列計算装置
JP3096387B2 (ja) * 1994-01-28 2000-10-10 三菱電機株式会社 数値演算処理装置
US5604710A (en) * 1994-05-20 1997-02-18 Mitsubishi Denki Kabushiki Kaisha Arrangement of power supply and data input/output pads in semiconductor memory device
JPH08212169A (ja) 1995-02-03 1996-08-20 Nippon Steel Corp アレイプロセッサ
JPH08297652A (ja) 1995-04-25 1996-11-12 Nippon Steel Corp アレイプロセッサ
JP4311847B2 (ja) * 2000-02-15 2009-08-12 株式会社リコー 並列プロセッサ及びそれを用いた画像処理装置
JP2007073010A (ja) 2005-09-09 2007-03-22 Ricoh Co Ltd Simd方式プロセッサ、当該simd方式プロセッサを利用する画像処理方法、及び画像処理装置
JP2008071130A (ja) 2006-09-14 2008-03-27 Ricoh Co Ltd Simd型マイクロプロセッサ
JP4554582B2 (ja) 2006-09-29 2010-09-29 株式会社リコー 並列プロセッサ

Also Published As

Publication number Publication date
JP2009175830A (ja) 2009-08-06
US8024550B2 (en) 2011-09-20
US20090187738A1 (en) 2009-07-23

Similar Documents

Publication Publication Date Title
JP4913685B2 (ja) Simd型マイクロプロセッサおよびsimd型マイクロプロセッサの制御方法
JP2008071130A (ja) Simd型マイクロプロセッサ
JPH09311786A (ja) データ処理装置
JP2009223758A (ja) 画像処理装置
US8060726B2 (en) SIMD microprocessor, image processing apparatus including same, and image processing method used therein
US20020174325A1 (en) SIMD type microprocessor and a method of sort processing
JP4868607B2 (ja) Simd型マイクロプロセッサ
JP4408113B2 (ja) 信号処理方法
JP4482356B2 (ja) Simdプロセッサを用いた画像処理方法及び画像処理装置
JP2007073010A (ja) Simd方式プロセッサ、当該simd方式プロセッサを利用する画像処理方法、及び画像処理装置
JP2010033426A (ja) Simd型マイクロプロセッサおよび演算方法
JP4442905B2 (ja) 画像データの処理方法
JP3971543B2 (ja) Simd型プロセッサ
JP2008071037A (ja) Simd型マイクロプロセッサ
JP5369669B2 (ja) Simd型マイクロプロセッサ
JP4442907B2 (ja) Simd型プロセッサ
JP2002318687A (ja) 情報処理装置及び計算機システム
JP4516495B2 (ja) Simd型マイクロプロセッサにおけるデータ処理方法
JP2009059187A (ja) マイクロプロセッサおよびデータ処理方法
JP3969580B2 (ja) データ処理装置、画像処理装置、画像形成装置、プログラム及び記憶媒体
JP2011134042A (ja) Simd型マイクロプロセッサおよびsimd型マイクロプロセッサのデータ整列方法
JP4346039B2 (ja) データ処理装置
JP2004206387A (ja) 画像処理方法およびプロセッサおよび画像処理装置
JP3742745B2 (ja) 演算処理装置
JP4413905B2 (ja) Simd型プロセッサ

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100623

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110714

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110726

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110922

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111114

R150 Certificate of patent or registration of utility model

Ref document number: 4868607

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

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees