JP2003529151A - 構成可能な長命令語(cliw)を使用するプロセッサにユーザ定義の実行ユニットを追加するための方法と装置 - Google Patents

構成可能な長命令語(cliw)を使用するプロセッサにユーザ定義の実行ユニットを追加するための方法と装置

Info

Publication number
JP2003529151A
JP2003529151A JP2001571220A JP2001571220A JP2003529151A JP 2003529151 A JP2003529151 A JP 2003529151A JP 2001571220 A JP2001571220 A JP 2001571220A JP 2001571220 A JP2001571220 A JP 2001571220A JP 2003529151 A JP2003529151 A JP 2003529151A
Authority
JP
Japan
Prior art keywords
cliw
core
data
instruction
processor
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.)
Pending
Application number
JP2001571220A
Other languages
English (en)
Inventor
イヤル ロシン
レジス ヘルヴィゴ
ハイム グラノット
Original Assignee
インフィネオン テクノロギーズ アーゲー
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 インフィネオン テクノロギーズ アーゲー filed Critical インフィネオン テクノロギーズ アーゲー
Publication of JP2003529151A publication Critical patent/JP2003529151A/ja
Pending legal-status Critical Current

Links

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, look ahead
    • G06F9/3885Concurrent instruction execution, e.g. pipeline, look ahead using a plurality of independent parallel functional units
    • 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/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7867Architectures of general purpose stored program computers comprising a single central processing unit with reconfigurable architecture
    • 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/3017Runtime instruction translation, e.g. macros
    • 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/30181Instruction operation extension or modification
    • 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/30181Instruction operation extension or modification
    • G06F9/30196Instruction operation extension or modification using decoder, e.g. decoder per instruction set, adaptable or programmable decoders
    • 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, look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • G06F9/3853Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution of compound instructions

Abstract

(57)【要約】 本発明は、プロセッサの速度とパワーと柔軟性とを向上させるために多数の多様な専用ハードウエア・オフコア実行ユニット(図2のユニット1〜n)がコアプロセッサ(図2のユニット50)に接続されたシステムであり、またこのシステムを動作させる方法である。コアプロセッサによって実行される参照命令は、CLIWメモリ(図2のユニット18)に格納された構成可能な長命令語(CLIW)の実行を開始させる。このオフコア実行ユニットの動作は、CLIW命令によって制御される。これらのCLIW命令はまた、コアプロセッサだけによって実行される動作を制御できる。オフコア論理ユニットは、コアプロセッサのデータアドレス論理の制御下でコアプロセッサのデータメモリに動作可能に接続されている。オフコア・ハードウエア論理ユニットの制御のためのCLIWテクノロジーの使用は、コアプロセッサの命令セットまたは符号化空間または命令復号器に影響を与えることなく、複数の多様なオフコア論理ユニットの追加を可能にする。

Description

【発明の詳細な説明】
【0001】 (発明の分野および背景) ディジタル信号プロセッサ(DSP)といった専用のデータプロセッサを含む
データプロセッサは一般に、セルラー電話、モデム、セットトップボックス、一
般のディジタル通信装置、音楽・ビデオ装置、音声・画像認識装置、その他多数
のシステムといった装置に使用されている。これらの装置は、算術演算集中型の
タスクを実行する可能性があり、また厳密なリアルタイム制約にしたがって動作
するように要求される可能性がある。如何なるDSPでもその心臓部は実行ユニ
ットである。DSPの実行ユニットは、しばしば高度に専用化されており、DS
Pアプリケーションで一般的な各種の計算を実行するように設計されている。そ
れにもかかわらず如何なるデータプロセッサも未だにすべての、あるいは大半の
アプリケーションのニーズを満足させていない。利用可能なデータプロセッサが
システム要件を満たさない場合には現在、下記の代替手段が利用可能である。
【0002】 1.必要な機能を実行するためにシステムに専用のハードウエアを追加する。
このハードウエア集中型の解は、ソフトウエアの解よりも柔軟性に乏しく、保守
がより困難である。 2.追加の実行ユニット(例えば乗加算器またはガロア体乗算器)を含むよう
にデータプロセッサを修正する。この解は、(a)追加の機能を必要としないア
プリケーションにとってはより効率的でなく(すなわち、より大きな回路面積を
必要とする)、また(b)新しい機能の追加と新しい命令の作成とコアプロセッ
サの他の部分(例えばコアプロセッサの命令復号器)の修正とを含むコスト高で
時間のかかる処理である。 3.追加の計算を実行する助けとなるように数値コプロセッサのインテルx8
7ファミリーの一員といった疎結合コプロセッサを追加する。コアと密結合でな
いコプロセッサがプログラムを受けなければならず、またこれらのコプロセッサ
は起動するために「開始」命令を必要とする。コプロセッサが実行を完了すると
、これらのコプロセッサは割込みといった手段によってコアと同期する。コアプ
ロセッサとコプロセッサは、互いの同期信号を待っている間にかなりのアイドル
時間を費やす可能性がある。 4.ASIC開発者によって構成できるプロセッサを提供する。これらのプロ
セッサは、ハードウエア資源(例えばALU、乗算器、データ経路等)と命令と
の一定の選択を持っている。このベースライン・アーキテクチャには、多数の新
しい命令が追加できる。これらのチップの柔軟性は、実施できる変更によって限
定される。 5.命令符号化に特定のフィールドを使用する密結合のコプロセッサを追加す
る。このフィールドは、これらのオフコアユニットを制御するためにコアプロセ
ッサの命令に追加されてオフコアユニットに渡される。この手法は、(a)コプ
ロセッサ・サポートが限定され、予め固定されるという不都合と、(b)命令符
号化空間の大きな部分が犠牲になり、たとえアプリケーションがコプロセッサを
必要としない場合でもこれが全体のコード・サイズを増加させ得るこという不都
合とを持っている。 したがって、命令セットあるいはコプロセッサ自身の変更なしにプロセッサの
実行ユニットのカストマイズ(個別対応)を可能にするオフコア実行ユニットあ
るいは同様にオフコア論理ユニットに対する広く認められたニーズがあり、また
それらのユニットを持つことは非常に有利であろう。更にコード・サイズと拡張
性と全体のシステム・パラメータとを妥協させることなしにユーザがコアプロセ
ッサをアプリケーションに個別対応できるようにする極めて柔軟な解を持つこと
は非常に有利であろう。
【0003】 (発明の概要) 図1は、本発明の一般原理を示す。外部のオフコア処理ユニット54は、イン
タフェース52を用いて交換可能・選択可能な仕方でコアプロセッサ50に接続
されている。オフコア処理ユニットのこの交換可能な選択は、特定のアプリケー
ションの必要に応じてコアプロセッサの処理能力と速度と柔軟性との改善を可能
にしている。 オフコア論理ユニットは、完全に記述されているかのようにすべての目的のた
めに、ここに引例によって組み入れられている「構成可能な長命令語アーキテク
チャと命令セット(Configurable Long Instruction Word Architecture and Ins
truction Set)」と題する同時係属中の米国特許出願第09/247,686号に記載の構
成可能な長命令語(CLIW)テクノロジーを使って、コアプロセッサの命令セ
ットを修正することなく追加することができる。CLIW命令は、コアプロセッ
サの命令空間に影響を与えることなくプロセッサが実行できる命令のセットの修
正を可能にする個別対応(カスタム)メタ命令である。 オフコア実行ユニットの動作を制御するCLIW命令の排他的使用は、オフコ
ア実行ユニットを制御するために使われる制御信号がCLIWメモリから引き出
されてオフコア実行ユニット・インタフェースを介してオフコア実行ユニットに
送られるので、コアプロセッサ、その命令復号器またはその命令セットの修正を
必要とせずに、コアプロセッサの設計時には考えられもしなかった種々の設計の
一つ以上のオフコア実行ユニットの追加を可能にするという利点を持っている。
【0004】 再使用可能なブロックとしても知られる、オフコア実行ユニットのいかなる特
定の構成の動作でも制御するために使われるCLIW命令は、コアプロセッサの
命令セットとは別に、また他の構成のソフトウエアに影響を与えずに開発するこ
とができる。更に、もっぱらCLIW命令のみによって制御されるオフコア実行
ユニットを含むプロセッサ構成は、プロセッサのサブセットが対応するオフコア
実行ユニット・インタフェース・ポートに置かれているという条件で、プロセッ
サに含まれるオフコア実行ユニットのサブセットだけを含む複数のプロセッサ用
に書かれたソフトウエアだけでなくコアプロセッサ単独用に書かれたソフトウエ
アをも実行することができる。 高速データプロセッサは、任意の1プロセッサ・サイクル内で二つ以上のデー
タ値にアクセスできるように多数のデータバスとマルチポート・データメモリと
を使用できる。本発明では、データバスそれ自身ばかりでなく多数のバスへのア
クセスを可能にするために使われる論理信号を含めてデータアクセスを制御する
ために使われる論理信号は、オフコア実行ユニットに利用可能にされる。CLI
W命令を呼び出す参照命令は、読み書きすべきデータオペランドを指定できる。
参照命令に含まれるデータオペランド・アドレス指定情報は、通常のコアプロセ
ッサ命令に含まれるデータオペランド・アドレス指定情報と同じ仕方で処理でき
る。このデータオペランド情報の処理は、CLIWメモリからのCLIW命令の
検索およびCLIW命令の必要な復号と同時に行うことができる。コアプロセッ
サと同じ仕方でオペランドにアクセスするオフコア実行ユニットの能力は、オフ
コア実行ユニットによって実行される命令のためのオペランドの特別な処理に含
まれるであろうオーバーヘッドを回避するので、他の方法と比較して実行速度を
高速化し、オペランドを特定のレジスタ内に置くといったプログラミングの複雑
さを減らすという理由で有利である。
【0005】 したがって本発明によれば、(a)少なくとも一つのオフコア実行ユニットと
、(b)少なくとも一つの構成可能な長命令語(CLIW)命令を格納するため
のCLIWメモリと、(c)CLIWメモリから少なくとも一つのCLIW命令
を検索し、少なくとも一つのCLIW命令の少なくともそれぞれの一部を少なく
とも一つのオフコア実行ユニットの少なくとも一つに転送するように動作するコ
アプロセッサとを備えたことを特徴とするデータプロセッサが提供される。 好ましくは、コアプロセッサは一つの命令セットの中の複数の命令を実行する
ように動作し、また命令セットはCLIW命令の検索と実行とを開始するための
参照命令を含む。 好ましくは、本データプロセッサは、(d)データメモリと、(e)データア
ドレス論理システムとを更に含んでおり、データアドレス論理システムはコアプ
ロセッサによるデータメモリへのアクセスを制御するように動作し、データアド
レス論理システムはまた少なくとも一つのオフコア実行ユニットによるデータメ
モリへのアクセスを制御するように動作することを含む。 好ましくは、コアプロセッサはCLIWメモリからCLIW命令を検索するよ
うに動作し、データアドレス論理システムはコアプロセッサによるデータメモリ
へのアクセスと少なくとも一つのオフコア実行ユニットによるデータメモリへの
アクセスとを実質的に同時に制御するように動作する。
【0006】 好ましくは、本データプロセッサは、(f)CLIW命令復号器を更に含んで
おり、CLIW命令復号器はCLIW命令を復号するように動作し、データアド
レス論理システムはコアプロセッサによるデータメモリへのアクセスと少なくと
も一つのオフコア実行ユニットによるデータメモリへのアクセスとを実質的に同
時に制御するように動作する。 また本発明によれば、(a)オフコア実行ユニットを備えるステップと、(b
)コアプロセッサを備えるステップと、(c)コアプロセッサとオフコア実行ユ
ニットの両者によって、データを処理するCLIW命令を実行するステップとを
含むことを特徴とする、データ処理の方法も提供される。 好ましくは、オフコア実行ユニットはCLIW命令のそれぞれの部分のみを実
行し、コアプロセッサはCLIW命令の残余を実行する。最も好ましくは、オフ
コア実行ユニットはCLIW命令のそれぞれの部分のみを実行する。 好ましくは、本方法は、(d)CLIWメモリを備えるステップと、(e)C
LIWメモリ内にCLIW命令を格納するステップと、(f)CLIWメモリか
らCLIW命令をコアプロセッサによって検索するステップと、(g)オフコア
実行ユニットによるCLIW命令のそれぞれの部分の実行に先立って、コアプロ
セッサによってCLIW命令のそれぞれの部分をオフコア実行ユニットに転送す
るステップとを更に含む。
【0007】 好ましくは、オフコア実行ユニットは、コアプロセッサによるCLIW命令の
残余の実行と同時にCLIW命令のそれぞれの部分を実行する。 好ましくは、本方法は、(h)CLIW命令の検索と実行とを開始するための
参照命令をコアプロセッサによって発行するステップを更に含む。 好ましくは、本方法は、(i)データメモリを備えるステップと、(j)コア
プロセッサによるデータメモリへのアクセスとオフコア実行ユニットによるデー
タメモリへのアクセスとを制御するためのデータアドレス論理システムを備える
ステップと、(k)データアドレス論理システムの制御下でオフコア実行ユニッ
トによってデータをアドレス指定し、コアプロセッサによってデータをアドレス
指定するステップとを更に含む。 好ましくは、CLIWメモリからのCLIW命令の検索は、オフコア実行ユニ
ットによるデータのアドレス指定およびコアプロセッサによるデータのアドレス
指定の両者と同時に行われる。 好ましくは、本方法は、(l)CLIW命令を復号するステップを更に含み、
CLIW命令の復号は、オフコア実行ユニットによるデータのアドレス指定およ
びコアプロセッサによるデータのアドレス指定の両者と同時に行われる。
【0008】 (好適な実施例の説明) 本発明は、単なる例として付属図面を参照しながら以下に説明される。 本発明は、コアプロセッサにオフコア論理ユニットを追加する方法であり、ま
たそれによって作られる装置である。これらのオフコア論理ユニットは、極めて
柔軟な仕方で他のオンコアおよびオフコア実行ユニットと同時に動作できる。特
に、本発明はコード・サイズと拡張性と全体のシステム・パラメータとを妥協さ
せることなく、プロセッサのコアにオフコア実行ユニットを追加することによっ
てプロセッサの速度とパワーと柔軟性とを向上させる。 本発明によるオフコア論理ユニットの原理と動作は、図面と付属の説明とを参
照することにより更に良く理解できる。
【0009】 図1は、本発明の一般原理を示す。外部の論理ユニット54は、交換可能で選
択可能な仕方でコアプロセッサ50に接続される。この交換可能な選択は、特定
の設計の必要に応じてコアプロセッサの処理能力と速度と柔軟性との向上を可能
にする。 今度は図2を参照する。CLIW命令は、参照命令によって呼び出される。こ
の参照命令は、CLIW命令を呼び出す機能を有するコアプロセッサ50の命令
セット内の正規命令である。参照命令の演算コード部分は、CLIW命令が処理
されるべきであるというコアプロセッサの正規命令復号器14を指示する。CL
IW信号ライン34は、現在処理されているコアプロセッサ命令が正規命令であ
るか参照命令であるかにしたがって正規命令復号器14によってセットされる。
もし現在処理されているコアプロセッサ命令が参照命令でなければ、CLIW信
号ライン34は、制御マルチプレクサ16の出力40が命令の正常な処理を可能
にする正規命令復号器14の出力36によって駆動されるように、正規命令復号
器14によってクリアされる。しかしながら、もし現在処理されているコアプロ
セッサ命令が参照命令であれば、正規命令復号器14は、CLIWメモリ18内
に入っている適当なCLIW命令へのポインターを含む参照命令の部分をCLI
Wメモリ18に渡す。CLIWメモリ18は、このCLIW命令をCLIW命令
復号器20に送るように動作し、CLIW信号ライン34は、制御マルチプレク
サ16の出力40がCLIW命令復号器20の出力38によって駆動されるよう
に正規命令復号器14によってセットされる。CLIW信号ライン34はまた、
オフコア実行ユニット・インタフェース52を起動し、このオフコア実行ユニッ
ト・インタフェース52にオフコア実行ユニット54に関連する復号されたCL
IW命令の部分を受け入れさせて、実行のためにこれらをオフコア実行ユニット
54に渡す。
【0010】 コアプロセッサの正規命令と参照命令の両者のために、命令のデータオペラン
ド・アドレス部がデータアドレス論理22に渡される。データアドレス論理22
は、コア実行ユニット28とオフコア実行ユニット54とによってデータメモリ
26から読み取られるべきデータ値を一つ以上のデータバス42に転送するよう
に、命令のデータオペランド・アドレス部にしたがってデータメモリ26を制御
するように動作する。データアドレス論理22はまた、コア実行ユニット28と
オフコア実行ユニット54とによってデータバス42に書き込まれるデータ値を
データメモリ26に転送するように動作する。データアドレス論理22は更に、
各データ項目をどのデータバス42から読取り、どのデータバス42に書き込む
べきかをコア実行ユニット28とオフコア実行ユニット54とに指示する信号を
メモリ・オペランド・タグライン44を介して転送するように動作する。 本発明は、コアプロセッサの正規命令セットを修正することなくシステム設計
者にオフコア論理ユニットを追加させる。この容易な追加は、同時係属中の米国
特許出願第09/247,686号に記載の構成可能長命令語(CLIW)テクノロジーに
よって可能となる。CLIW命令は、多数の標準的命令をビルディング・ブロッ
クとして使用する個別対応のスーパー命令である。 本発明は限定された数の実施例に関して説明されたが、本発明の多数の変形、
修正、その他のアプリケーションが実施可能であることは認められるであろう。
【図面の簡単な説明】
【図1】 本発明にしたがってどの様にしてオフコア実行ユニットがコアプロセッサを追
加および強化するかを示す図である。
【図2】 本発明による、CLIWを使用し、オフコア実行ユニットに接続されるプロセ
ッサシステムのブロック図である。
【符号の説明】
14 正規命令復号器、16 制御マルチプレクサ、18 CLIWメモリ、2
0 CLIW命令復号器、22 データアドレス論理、26 データメモリ、2
8 コア実行ユニット、34 CLIW信号ライン、36 (正規命令復号器の
)出力、38 (CLIW命令復号器の)出力、40 (制御マルチプレクサの
)出力、42 データバス、44 メモリ・オペランド・タグライン、50 コ
アプロセッサ、52 オフコア実行ユニット・インタフェース、54 オフコア
処理ユニット(論理ユニット、オフコア実行ユニット)。
【手続補正書】特許協力条約第34条補正の翻訳文提出書
【提出日】平成14年2月27日(2002.2.27)
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】特許請求の範囲
【補正方法】変更
【補正の内容】
【特許請求の範囲】
───────────────────────────────────────────────────── フロントページの続き (81)指定国 EP(AT,BE,CH,CY, DE,DK,ES,FI,FR,GB,GR,IE,I T,LU,MC,NL,PT,SE,TR),OA(BF ,BJ,CF,CG,CI,CM,GA,GN,GW, ML,MR,NE,SN,TD,TG),AP(GH,G M,KE,LS,MW,MZ,SD,SL,SZ,TZ ,UG,ZW),EA(AM,AZ,BY,KG,KZ, MD,RU,TJ,TM),AE,AG,AL,AM, AT,AU,AZ,BA,BB,BG,BR,BY,B Z,CA,CH,CN,CO,CR,CU,CZ,DE ,DK,DM,DZ,EE,ES,FI,GB,GD, GE,GH,GM,HR,HU,ID,IL,IN,I S,JP,KE,KG,KP,KR,KZ,LC,LK ,LR,LS,LT,LU,LV,MA,MD,MG, MK,MN,MW,MX,MZ,NO,NZ,PL,P T,RO,RU,SD,SE,SG,SI,SK,SL ,TJ,TM,TR,TT,TZ,UA,UG,US, UZ,VN,YU,ZA,ZW (72)発明者 グラノット ハイム イスラエル バット ヘファー 42842 ヒナニット ストリート 71 Fターム(参考) 5B013 DD03 DD04 5B033 AA10 AA14 BA03 BE05 5B045 BB48 DD01 GG09

Claims (14)

    【特許請求の範囲】
  1. 【請求項1】 a)少なくとも一つのオフコア実行ユニットと、 b)少なくとも一つの構成可能な長命令語(CLIW)命令を格納するための
    CLIWメモリと、 c)前記CLIWメモリから前記少なくとも一つのCLIW命令を検索し、前
    記少なくとも一つのCLIW命令の少なくとも一つのそれぞれの部分を前記少な
    くとも一つのオフコア実行ユニットの少なくとも一つに転送するように動作する
    コアプロセッサとを備えたことを特徴とするデータプロセッサ。
  2. 【請求項2】 前記コアプロセッサは一つの命令セットの中の複数の命令を
    実行するように動作し、また前記命令セットは前記CLIW命令の検索と実行と
    を開始するための参照命令を含むことを特徴とする、請求項1に記載のデータプ
    ロセッサ。
  3. 【請求項3】 d)データメモリと、 e)データアドレス論理システムとを更に含んでおり、 前記データアドレス論理システムは前記コアプロセッサによる前記データメモ
    リへのアクセスを制御するように動作し、前記データアドレス論理システムもま
    た前記少なくとも一つのオフコア実行ユニットによる前記データメモリへのアク
    セスを制御するように動作することを特徴とする、請求項1に記載のデータプロ
    セッサ。
  4. 【請求項4】 前記コアプロセッサは前記CLIWメモリから前記CLIW
    命令を検索するように動作し、前記データアドレス論理システムは前記コアプロ
    セッサによる前記データメモリへのアクセスと前記少なくとも一つのオフコア実
    行ユニットによる前記データメモリへのアクセスとを実質的に同時に制御するよ
    うに動作することを特徴とする、請求項3に記載のデータプロセッサ。
  5. 【請求項5】 f)CLIW命令復号器を更に備えており、 前記CLIW命令復号器は前記CLIW命令を復号するように動作し、前記デ
    ータアドレス論理システムは前記コアプロセッサによる前記データメモリへのア
    クセスと前記少なくとも一つのオフコア実行ユニットによる前記データメモリへ
    のアクセスとを実質的に同時に制御するように動作することを特徴とする、請求
    項3に記載のデータプロセッサ。
  6. 【請求項6】 a)オフコア実行ユニットを備えるステップと、 b)コアプロセッサを備えるステップと、 c)前記コアプロセッサと前記オフコア実行ユニットの両者によって、データ
    を処理するCLIW命令を実行するステップとを含むことを特徴とする、データ
    処理の方法。
  7. 【請求項7】 前記オフコア実行ユニットは前記CLIW命令のそれぞれの
    部分を実行し、前記コアプロセッサは前記CLIW命令の残余を実行することを
    特徴とする、請求項6に記載の方法。
  8. 【請求項8】 前記オフコア実行ユニットは前記CLIW命令の前記それぞ
    れの部分だけを実行することを特徴とする、請求項7に記載の方法。
  9. 【請求項9】 前記オフコア実行ユニットは前記コアプロセッサによる前記
    CLIW命令の残余の実行と同時に前記CLIW命令の前記それぞれの部分を実
    行することを特徴とする、請求項7に記載の方法。
  10. 【請求項10】 d)CLIWメモリを備えるステップと、 e)前記CLIWメモリ内に前記CLIW命令を格納するステップと、 f)前記CLIWメモリから前記CLIW命令を前記コアプロセッサによって
    検索するステップと、 g)前記オフコア実行ユニットによる前記CLIW命令の前記それぞれの部分
    の前記実行に先立って、前記コアプロセッサによって前記CLIW命令の前記そ
    れぞれの部分を前記オフコア実行ユニットに転送するステップとを更に備えたこ
    とを特徴とする、請求項7に記載の方法。
  11. 【請求項11】 h)前記CLIW命令の前記検索と実行とを開始するため
    の参照命令を前記コアプロセッサによって発行するステップを更に備えたことを
    特徴とする、請求項10に記載の方法。
  12. 【請求項12】 d)データメモリを備えるステップと、 e)前記コアプロセッサによる前記データメモリへのアクセスと前記オフコア
    実行ユニットによる前記データメモリへのアクセスとを制御するためのデータア
    ドレス論理システムを備えるステップと、 f)前記データアドレス論理システムの制御下で前記オフコア実行ユニットに
    よってデータをアドレス指定し、前記コアプロセッサによってデータをアドレス
    指定するステップとを更に含むことを特徴とする、請求項6に記載の方法。
  13. 【請求項13】 h)データメモリを備えるステップと、 i)前記コアプロセッサによる前記データメモリへのアクセスと前記オフコア
    実行ユニットによる前記データメモリへのアクセスとを制御するためのデータア
    ドレス論理システムを備えるステップと、 j)前記データアドレス論理システムの制御下で前記オフコア実行ユニットに
    よってデータをアドレス指定し、前記コアプロセッサによってデータをアドレス
    指定するステップとを更に備え、 前記CLIWメモリからの前記CLIW命令の前記検索は前記オフコア実行ユ
    ニットによるデータの前記アドレス指定および前記コアプロセッサによるデータ
    の前記アドレス指定の両者と同時に行われることを特徴とする、請求項10に記
    載の方法。
  14. 【請求項14】 k)前記CLIW命令を復号するステップを更に含み、 前記CLIW命令の前記復号は前記オフコア実行ユニットによるデータの前記
    アドレス指定および前記コアプロセッサによるデータの前記アドレス指定の両者
    と同時に行われることを特徴とする、請求項13に記載の方法。
JP2001571220A 2000-03-27 2001-03-16 構成可能な長命令語(cliw)を使用するプロセッサにユーザ定義の実行ユニットを追加するための方法と装置 Pending JP2003529151A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US19240300P 2000-03-27 2000-03-27
US60/192,403 2000-03-27
PCT/US2001/008583 WO2001073571A1 (en) 2000-03-27 2001-03-16 Method and apparatus for adding user-defined execution units to a processor using configurable long instruction word (cliw)

Publications (1)

Publication Number Publication Date
JP2003529151A true JP2003529151A (ja) 2003-09-30

Family

ID=22709493

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001571220A Pending JP2003529151A (ja) 2000-03-27 2001-03-16 構成可能な長命令語(cliw)を使用するプロセッサにユーザ定義の実行ユニットを追加するための方法と装置

Country Status (6)

Country Link
US (1) US7043625B2 (ja)
EP (1) EP1269333A4 (ja)
JP (1) JP2003529151A (ja)
CN (1) CN1227601C (ja)
AU (1) AU2001245833A1 (ja)
WO (1) WO2001073571A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010050970A (ja) * 2008-08-22 2010-03-04 Arm Ltd 中央処理装置と画像処理装置との間で通信するための機器および方法

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6691190B1 (en) * 2000-01-24 2004-02-10 Agere Systems Inc. Inter-DSP data exchange in a multiple DSP environment
US7376812B1 (en) 2002-05-13 2008-05-20 Tensilica, Inc. Vector co-processor for configurable and extensible processor architecture
US7346881B2 (en) 2002-05-13 2008-03-18 Tensilica, Inc. Method and apparatus for adding advanced instructions in an extensible processor architecture
US7937559B1 (en) 2002-05-13 2011-05-03 Tensilica, Inc. System and method for generating a configurable processor supporting a user-defined plurality of instruction sizes
DE102004025418A1 (de) * 2004-05-24 2005-12-22 Infineon Technologies Ag Controller mit einer Decodiereinrichtung
US7689402B2 (en) 2006-11-17 2010-03-30 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for retrieving application-specific code using memory access capabilities of a host processor
CN102033736A (zh) * 2010-12-31 2011-04-27 清华大学 一种指令集可扩展处理器的控制方法
CN102520907A (zh) * 2011-12-13 2012-06-27 杭州晟元芯片技术有限公司 一种软硬件结合加速器及其实现方法
US9396056B2 (en) * 2014-03-15 2016-07-19 Intel Corporation Conditional memory fault assist suppression
US9870339B2 (en) * 2015-06-26 2018-01-16 Intel Corporation Hardware processors and methods for tightly-coupled heterogeneous computing
CN106371807B (zh) * 2016-08-30 2019-03-19 华为技术有限公司 一种扩展处理器指令集的方法及装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5848289A (en) * 1992-11-27 1998-12-08 Motorola, Inc. Extensible central processing unit
JP3623840B2 (ja) 1996-01-31 2005-02-23 株式会社ルネサステクノロジ データ処理装置及びマイクロプロセッサ
US5805875A (en) * 1996-09-13 1998-09-08 International Computer Science Institute Vector processing system with multi-operation, run-time configurable pipelines
US6026478A (en) * 1997-08-01 2000-02-15 Micron Technology, Inc. Split embedded DRAM processor
US6173389B1 (en) * 1997-12-04 2001-01-09 Billions Of Operations Per Second, Inc. Methods and apparatus for dynamic very long instruction word sub-instruction selection for execution time parallelism in an indirect very long instruction word processor
EP0942359B1 (en) 1998-02-19 2012-07-04 Lantiq Deutschland GmbH An apparatus for executing instructions of a program

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010050970A (ja) * 2008-08-22 2010-03-04 Arm Ltd 中央処理装置と画像処理装置との間で通信するための機器および方法
US8675006B2 (en) 2008-08-22 2014-03-18 Arm Limited Apparatus and method for communicating between a central processing unit and a graphics processing unit

Also Published As

Publication number Publication date
WO2001073571A1 (en) 2001-10-04
EP1269333A1 (en) 2003-01-02
US7043625B2 (en) 2006-05-09
EP1269333A4 (en) 2007-01-03
CN1411578A (zh) 2003-04-16
AU2001245833A1 (en) 2001-10-08
CN1227601C (zh) 2005-11-16
US20010037441A1 (en) 2001-11-01

Similar Documents

Publication Publication Date Title
JP3559046B2 (ja) データ処理マネージメントシステム
US7814487B2 (en) System and method of executing program threads in a multi-threaded processor
JP4417567B2 (ja) デュアルモードプロセッサ
EP2289003B1 (en) Method & apparatus for real-time data processing
JP4657455B2 (ja) データプロセッサ
EP2261815A2 (en) Multithread processor with efficient processing for convergence device applications
US6757820B2 (en) Decompression bit processing with a general purpose alignment tool
JPH10116268A (ja) ベクトルレジスタの複数バンクを用いた単一命令複数データ処理
JP2000222206A (ja) データ処理装置
JP2003529151A (ja) 構成可能な長命令語(cliw)を使用するプロセッサにユーザ定義の実行ユニットを追加するための方法と装置
US9021236B2 (en) Methods and apparatus for storing expanded width instructions in a VLIW memory for deferred execution
JP2004171573A (ja) 新規な分割命令トランズアクションモデルを使用して構築したコプロセッサ拡張アーキテクチャ
JP2001525568A (ja) 命令デコーダ
JP2002530734A (ja) ジョブ並列プロセッサ
US5710914A (en) Digital signal processing method and system implementing pipelined read and write operations
EP2256948A2 (en) Arithmethic logic and shifting device for use in a processor
JP2001523022A (ja) データストリーミングのためのコンピュータのプロセッサ及び方法
US6948049B2 (en) Data processing system and control method
WO2006059444A1 (ja) マルチプロセッサシステムとそのシステムにおけるプログラム実行方法
US7237088B2 (en) Methods and apparatus for providing context switching between software tasks with reconfigurable control
US6725355B1 (en) Arithmetic processing architecture having a portion of general-purpose registers directly coupled to a plurality of memory banks
US20020120830A1 (en) Data processor assigning the same operation code to multiple operations
JP5372307B2 (ja) データ処理装置およびその制御方法
JPS6217773B2 (ja)
JP2000215057A (ja) デ―タ処理装置及び電気通信装置及び情報処理方法及びハ―ドウェア高速化を使用する方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040602

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050726

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20051024

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20051104

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060327