JP2003208306A - プロセシングアーキテクチャ、該アーキテクチャ実現システム及び該システムのオペレーション方法 - Google Patents

プロセシングアーキテクチャ、該アーキテクチャ実現システム及び該システムのオペレーション方法

Info

Publication number
JP2003208306A
JP2003208306A JP2002347918A JP2002347918A JP2003208306A JP 2003208306 A JP2003208306 A JP 2003208306A JP 2002347918 A JP2002347918 A JP 2002347918A JP 2002347918 A JP2002347918 A JP 2002347918A JP 2003208306 A JP2003208306 A JP 2003208306A
Authority
JP
Japan
Prior art keywords
instructions
cpu
architecture
instruction
cpu3
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
JP2002347918A
Other languages
English (en)
Inventor
Alessandro Cremonesi
クレモネージ アレッサンドロ
Fabrizio Rovati
ロヴァティ ファブリツィオ
Danilo Pau
パウ ダニーロ
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.)
STMicroelectronics SRL
Original Assignee
STMicroelectronics SRL
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 STMicroelectronics SRL filed Critical STMicroelectronics SRL
Publication of JP2003208306A publication Critical patent/JP2003208306A/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/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/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/30189Instruction operation extension or modification according to execution mode, e.g. mode flag

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Advance Control (AREA)
  • Executing Machine-Instructions (AREA)
  • Devices For Executing Special Programs (AREA)

Abstract

(57)【要約】 (修正有) 【課題】 2以上の異なる命令セットを実行し得るプロ
セシングアーキテクチャの提供。 【解決手段】 このアーキテクチャは、第1セットの命
令(OsTask1.1, OsTask1.2, ...)と第2セットの命
令(MmTask2.1, MmTask2.2, MmTask2.3, ...)の両
方を実行するよう構成された単一CPUを具える。該単
一CPUは、該CPUが前記第1セットの命令(OsTask
1.1, OsTask1.2, ...)を実行する第1動作モードと
該CPUが前記第2セットの命令(MmTask2.1, MmTask
2.2, MmTask2.3, ...)を実行する第2動作モードと
の間で切り換えるように構成されている。この解決方法
は種々のCPUに対する2つ以上の実行モード間で複数
の切り換え命令を用いることにより一般化することがで
きる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、プロセシングアー
キテクチャ及び該アーキテクチャを実現するシステムに
関するものである。本発明は特に移動通信システムに使
用し得るマイクロプロセシングアーキテクチャに注目し
て開発したものである。しかし、本発明の範囲はこの応
用分野に限定されるものではない。
【0002】
【従来技術】セルフォンの代表的なシステムアーキテク
チャは複数の中央処理装置(CPU)のアベイラビリテ
ィに基づいている。これらのCPUは通常2つであり、
各々特定の目的を満たす。第1のCPUはオペレーティ
ングシステムの制御機能に実質的に類似する制御機能を
実行する。このタイプの用途は計算上の観点からの厳し
い要求も、高い性能も要求しない。通常、簡単なフェッ
チ−デコード−リード−実行−ライトバックのステージ
からなるスケーラパイプライン形のアーキテクチャの使
用を想定している。第2のCPUは計算上の約束及び性
能に関して相違する特性を有する機能を実行する。この
理由のために、通常、スーパスケーラプロセッサ又は1
サイクルにつき複数の命令を発行し実行することができ
るベリーロングインストラクションワード(VLIW)
パイプラインプロセッサの使用を想定している。これら
の命令は(VLIWアーキテクチャの場合には)コンパ
イルステージで、(スーパスケーラプロセッサの場合に
は)実行ステージでスケジューリングすることができ
る。
【0003】この計算リソースの重複はメモリに関する
要件の重複をまねき、その結果として大きな電力消費を
生ずる。大きな電力消費は2つのCPUの一方又は他方
を交互にスリープモードに設定することにより部分的に
制限できるが、避けることはできない。
【0004】図1につき説明すると、上述したタイプの
ワイヤレス応用に対する代表的なアーキテクチャはCP
U1及びCPU2で示す2つのマイクロプロセッサのよ
うな2つのCPUを具え、各自キャッシュメモリアーキ
テクチャを具えている。
【0005】CPU1は代表的には32ビットパイプラ
インスケーラマイクロプロセッサである。これは、その
内部アーキテクチャが種々のロジックステージからな
り、各ロジックステージが命令を一つの特定の状態で含
むことを意味する。この状態は下記の状態: −メモリからの命令のローディング; −デコーディング; −レジスタファイルのアドレッシング; −実行;及び −メモリからのデータの書込み/読み出し; の一つである。ビット数はCPU1が動作するデータ及
び命令の長さに関連する。命令はコンパイルにより特定
の順序で発生され、その順序で実行される。
【0006】CPU2は代表的には128ビットパイプ
ラインスーパスケーラマイクロプロセッサ又はVLIW
マイクロプロセッサである。これは、その内部アーキテ
クチャが種々のロジックステージからなり、いくつかの
ロジックステージが、例えば実行ステップで、命令を並
列に実行することができることを意味する。代表的に
は、4つの32ビット命令(128ビットに相当する)
を並列に実行し、データは32ビットで表現する。並列
に実行可能な複数の実行ステージを供給するために命令
を実行中に動的に順序付ける場合及び命令が相互に依存
せず、従ってソースコードのコンパイルにより静的に発
生される順序を変更する場合には、そのプロセッサはス
ーパスケーラであるという。
【0007】その代わりに、命令をコンパイルステップ
において静的に順序付けし、固定の順序で実行する(実
行中に変更不能)場合には、そのプロセッサはVLIW
(ベリーロングインストラクションワード)という解決
手法に対応する。
【0008】再び図1に付き説明すると、各プロセッサ
CPU1,CPU2は各自DSで示すデータキャッシュ
とISで示す命令キャッシュを有するため、メインメモ
リMEMから処理すべきデータと実行すべき命令を並列
にロードすることができる。2つのプロセッサCPU
1,CPU2はシステムバスにより相互接続されるとと
もに、このシステムバスによりメインメモリMEMに接
続される。2つのプロセッサCPU1,CPU2はバス
へのアクセスを競争する。このアクセスは、これらのプ
ロセッサが実行すべき命令又はデータ又はその両方がメ
インメモリ内に位置し、各自のキャッシュにないとき
に、コアメモリコントローラCMCというそれぞれのイ
ンタフェースを介して達成される。このようなシステム
は2つのマイクロプロセッサを使用し、それぞれに対応
する2つのメモリ階層が不可欠であり、占有面積及び電
力消費の点から幾分費用がかかることが理解される。一
例として、代表的な応用では、CPU1は通常16キロ
バイトのデータキャッシュと16キロバイトの命令キャ
ッシュを有し、CPU2は32キロバイトのデータキャ
ッシュと32キロバイトの命令キャッシュを有する。
【0009】図2はCPU1のロジックスキームを示
す。第1ステップは実行すべき命令が関連する命令キャ
ッシュISのメモリアドレスを発生する。このアドレス
(プログラムカウンタという)は命令のローディング
(Fetch)を生じさせ、フェッチした命令をデコードし
(Decode)、オペランドをアドレスするビットフィール
ドから機能(例えば、レジスタファイルに位置する2つ
のレジスタ内の2つの値の加算)を定義するビットフィ
ールドを分離する。オペランドアドレスはレジスタファ
イルに送られ、これから命令のオペランドを読み出す。
オペランドと実行すべき命令を定義するビットは実行ユ
ニット(Execute)に送られ、実行ユニットが所望の演
算(例えば加算)を実行する。次いでその結果はレジス
タファイル内のメモリにリストアされる(Writebac
k)。
【0010】その代わりに、ロード/ストアユニット
が、メモリデータの読出し/書込みをこの目的専用の特
定の命令を用いて行うことができる。他方、命令セット
と(マイクロ)プロセシングアーキテクチャとの間に一
対一の一義的対応(biunivocal)が存在することが容易に
認識される。
【0011】CPU1について述べたことはCPU2に
もほぼあてはまり、図3に同様の表現で示されている。
主要な違いは、CPU2の場合には、スーパスケーラ及
びVLIWプロセッサで並列に動作し得る使用可能な実
行ユニットが多数ある点にある。この点に関し、図3に
はExcute2.1, Excute2.2, ...,Excute2.nにより
示された種々のステージが示されている。しかし、この
場合にも、命令セットとプロセシングアーキテクチャと
の間に一対一の一義的対応が存在する。例えばワイヤレ
スプロセッサのアーキテクチャのようなアーキテクチャ
では、2つの命令セットが相違することが一般に見られ
る。このことは、CPU1で実行される命令をCPU2
で実行できず、その逆も同様であることを意味する。
【0012】図4及び図5に関して、このような2つの
各別の命令セットの形を取る複数のタイプのプロセシス
を処理する必要があるものとする。例えば、先に述べた
応用コンテキスト(移動通信)に関して、2つのタイプ
のプロセス: −CPU1で実行されるオペレーティングシステムプロ
セスに類似するプロセスOsTask1.2, OsTask1.2,等;及
び −CPU2で実行されるコンテンツ (通常オーディオ/
ビデオ/グラフィックコンテンツのようなマルチメディ
アコンテンツ) のプロセシングに関するプロセスMmTas
k2.1, MmTask2.2, MmTask2.3,等; に区別することができる。
【0013】前者のプロセスはCPU1のコンパイラに
より発生される命令を含み、従ってCPU1自身で実行
することができるがMCPU2で実行することはできな
い。第2のプロセスに対しては、正確にその逆が当ては
まる。更に、各CPUは各自のコンパイルフローで特徴
付けられ、各CPUのコンパイルフローは他の使用CP
Uのコンパイルフローと独立である点に注意されたい。
【0014】図5は、上記のタスクのスケジューリング
のシーケンスを2つのプロセッサCPU1及びCPU2
にどのように分配するかを示す。上記のプロセスの総実
行時間を100とした場合、前者が総実行時間の10%
を占め、後者が90%を占めるのが代表的である。これ
から、CPU1は時間の10%しか動作しないので、C
PU1は時間の90%が冗長となることになる。
【0015】上述の特性を利用してCPU1をターンオ
フすることによりエネルギーの節約を達成することがで
きる。しかし、パワーダウンプロシージャはプロセシン
グの追加の待ち時間を導入し、この時間が上述の10%
に付加される。これらのプロシージャは実際には、 −レジスタファイルの全ての内部レジスタ並びにコア内
に存在する他のユニット(例えばデコーディングユニッ
ト、実行ユニット)に供給するクロックをゲートするこ
とによりレジスタファイルを除くCPUのパワーダウ
ン; −CPUの完全なパワーダウン、キャッシュメモリへの
エネルギー供給は維持; −CPU全体並びにデータキャッシュ及び命令キャッシ
ュのパワーダウン; を含む。
【0016】構造上の点から見ると、上述したオペレー
ションに続いてプロセッサのパワーを再投入する時にパ
ワーダウン前のプロセッサ自体を特徴づけるプロセッサ
の状態を復元する必要があるため、導入される待ち時間
は数十ナノ秒から数十/数百ミリ秒の範囲になる。従っ
て、上述のパワーダウンプロシージャはエネルギーの点
からも計算の点からも効果的でない。
【0017】
【発明が解決しようとする課題】従って、本発明の目的
は、上述した欠点を克服することができるマイクロプロ
セシングシステムアーキテクチャを構成することにあ
る。
【0018】
【課題を解決するための手段】本発明によれば、この目
的は特許請求の範囲において特定した特徴を有するアー
キテクチャによって達成することができる。本発明は対
応するシステム、並びに対応する使用方法にも関する。
【0019】本発明の解決方法は、本質的には、上述し
た態様に従うオペレーティングに予想される制御コード
をサポートするのに必要とされるリソース(CPU、メ
モリ等)の二重化、一般に多重化は、最初から想定され
ている2つ(又はそれ以上)のCPUを単一の最適化さ
れた(マイクロ)アーキテクチャ、即ち種々のCPUの
コンパイラにより発生された命令を実行し得る単一の新
しいプロセッサに融合させることができれば避けること
ができるという認識に基づくものである。この場合に
は、前記新プロセッサは1以上の特別命令をデコード
し、例えばその機能を異なる命令セットに固有の2以上
の実行モードの間で切り換えることができなければなら
ないという唯一の要件がある。
【0020】この命令又はこれらの命令はCPUに予め
関連するコンパイラを用いてコンパイルされた命令の各
セットの先頭に入れる。特に2つのステップが想定され
る。第1のステップはCPU1又はCPU2のコンパイ
ルフローを(そのまま)用いて各プロセスをコンパイル
する(以後、本発明は任意の数のこのようなCPUに適
用し得るが、説明を簡単にするために2つの出発CPU
について説明する)。第2のステップは各命令セットを
取り、その先頭に特別命令を入力し、最適化されたマイ
クロアーキテクチャのフレームワークにおけるCPU1
の実行モードとCPU2の実行モードとの間のモード切
り換えを信号し許可する。
【0021】以上の解決方法はメモリ及び電力消費に関
し著しい節約をもたらす。更に、切り換え命令を検出す
る1つのフェッチユニット、(2つのCPU、CPU1
及びCPU2の各々に対する)2つのデコーディングユ
ニット、単一のレジスタファイル、複数の実行ユニッ
ト、及びロード/ストアユニット(特別命令が検出され
ると、構成される)を使用するのみとすることができ
る。
【0022】
【発明の実施の形態】本発明を図面を参照して実施例に
つき詳細に説明するが、本発明はこのような実施例に限
定されるものではない。
【0023】本発明の模範的な実施例の詳細な説明 上述したように、本発明が基づく主な思想は、低い計算
ウェイト(例えば時間の10%)のプロセスの実行をサポ
ートするために、プロセシングリソースの二重化は不要
であるという認識にある。図6に図式的に示すように、
本発明の解決方法は、既知の解決方法ではCPU1及び
CPU2のような2以上の個別のCPUで実行するよう
設計されたプロセスをアプリケーションによらずに実行
し得るCPU3で示す新しいプロセッサ又はCPUアー
キテクチャを定義するものであり、新しいアーキテクチ
ャに対しリコンパイルする必要がある。
【0024】基本的には、本発明の解決方法のねらい
は、各CPUに想定されたもとのコンパイルフローを再
利用し、その下流に、対応するプロセスの実行をコンパ
チブルにする第2ステップを付加することにある。
【0025】特に、図7を参照して、第1のコンパイル
ステップにおいて、オペレーティングシステム用のプロ
セスOsTask1.1のソースコードを考察する。図1に示す
ようの伝統的なアーキテクチャでは、対応する命令は対
応するコンパイラを用いてCPU1で実行する必要があ
る。次に、同じ第1ステップにおいて、マルチメディア
オーディオ/ビデオ/グラフィックアプリケーション用の
プロセス(MmTask2.1)のソースコードのコンパイルを考
察する。このプロセスは、図1に示すような伝統的なア
ーキテクチャでは、この場合にもCPU1のコンパイラ
と異なる対応するコンパイラを用いてCPU2で実行さ
れる。更に、図1に示すようなスキームでは、2つのプ
ロセッサCPU1及びCPU2が独立の命令セットのア
ーキテクチャを有する点を思い出す必要がある。
【0026】次に、第2のステップを考察する。このス
テップでは(少なくとも)一つの新しい特別命令を丁度
発生された命令の頭に入力する。この特別命令は対応す
る命令セットに続く命令の所属を識別することができ
る。従って、この特別命令はCPU3がCPU1の命令
セットの実行モードからCPU2の命令セットの実行モ
ードに、及びその逆に切り換わることができるようにす
る手段を表す。
【0027】図8は、図1のアーキテクチャを、CPU
3で示す単一のCPUに、関連するキャッシュメモリ、
即ちデータキャッシュメモリDS及び命令キャッシュメ
モリISを設けることによりどのように巨視的観点から
簡略化できるかを示す。このように、対応するメモリサ
ブシステムはキャッシュメモリの二重化を必要とせず、
対応するバスにインタフェースするインタフェースCM
Cを経るメインメモリMEMへのアクセス要求の競合か
ら開放される。これから性能の明らかな改善が得られ
る。
【0028】他方、プロセッサCPUは、対応するコン
パイラにより発生されCPU1のタイプのプロセッサで
実行すべき命令もCPU2のタイプのプロセッサで実行
すべき命令も実行できなければならない。これは同様
に、2つのCPU間の実行モードの制御命令も実行でき
ることを想定している。
【0029】図9はここに提案するCPU3のロジック
スキームを示す。命令はメモリにて単一プログラムカウ
ンタによりアドレスされ、Fetch & Alignで示すユニッ
トによりロードされる。このユニットは次に命令をCP
U1及びCPU2の命令セットにコンパチブルなデコー
ディングユニットに送る。これらのデコーディングユニ
ットは両方とも、命令セット1に対する実行モードを命
令セット2に対する実行モードに及びその逆に切り換え
る特別命令の存在を検出することができる。こうして活
性化されたフラグをCPU内に存在する全てのユニット
に送って、そのCPU1−コンパチブルモード又はCP
U2−コンパチブルモードのオペレーションを構成す
る。特に、図9において、このフラグはMode1_NotMode2
flagとして示す信号と同一である。最も簡単な実施例
では、このフラグは、CPU3がCPU1の命令セット
で動作するとき論理値“1”を有し、CPU3がCPU
2の命令セットで動作するとき論理値“0”を有する。
これと反対にすることもできること勿論である。
【0030】ロードされた後続の命令を(Dec1及びDec
2で示すステージで)デコードし、機能(例えば加算)を
定義するビットフィールドをオペランドをアドレスする
ビットフィールドから分離する。対応するアドレスをレ
ジスタファイルに送り、レジスタファイルから命令のオ
ペランドを読み出す。これらのオペランドと実行すべき
機能を定義するビットを要求されたオペレーションを実
行する多数の実行ユニット(Execute1, ...,Execut
em, Execute2.2, Executem+1, ..., Executen, Exe
cute ...)に送る。次に、結果を図2及び図3と同
様にライトバックステージでレジスタファイルにリスト
アすることができる。その代わりに、ロード/ストアユ
ニットがメモリから/メモリへのデータの読出し/書込み
を行うことができ、各オペレーティングモードにはこの
目的用の命令が存在する。
【0031】特に、現在使用されていない実行モードと
コンパチブルであるユニット(例えば、デコーディング
ユニットDec1及びDec2)は電力を消費しないように適切
に“ターンオフ”することができることが認識されるで
あろう。
【0032】本発明の原理を損なうことなく、上述した
構成及び実施例の細部は特許請求の範囲に限定された本
発明の範囲から逸脱することなく広範囲に変更すること
ができること勿論であり、特に本発明の解決方法は種々
のCPUに対する2以上の実行モードの間で複数の切り
換え命令を用いることにより一般化することができるこ
と明らかである。
【図面の簡単な説明】
【図1】 2以上のCPUを用いる従来のプロセシング
システムの構成図である。
【図2】 図1の従来のプロセシングシステムのCPU
1のロジックスキームを示す図である。
【図3】 図1の従来のプロセシングシステムのCPU
2のロジックスキームを示す図である。
【図4】 CPU1で実行されるタスクとCPU2で実
行されるタスクの実行時間の比較を示す図である。
【図5】 図4のタスクが2つのプロセッサCPU1及
びCPU2にどのように分配されるかを示す図である。
【図6】 本発明によるCPUアーキテクチャを示す概
念図である。
【図7】 本発明によるアーキテクチャにおけるコンパ
イルステップを示す図である。
【図8】 本発明によるアーキテクチャをブロック図で
示したものである。
【図9】 図8に示すアーキテクチャの構造の詳細とオ
ペレーションの詳細を示す図である。
【符号の説明】
CPU3 単一CPU IS 命令キャッシュメモリ DS データキャッシュメモリ MEM メインメモリ CMC インタフェース
───────────────────────────────────────────────────── フロントページの続き (72)発明者 アレッサンドロ クレモネージ イタリア国 ロディ 20079 エッセ ア ンジェロ ロディジアーノ ヴィア ダイ ツ 102 (72)発明者 ファブリツィオ ロヴァティ イタリア国 ミラノ 20092 チニゼッロ バルサモ ヴィア コッレオーニ 15 (72)発明者 ダニーロ パウ イタリア国 ミラノ 20099 セスト サ ン ジョヴァンニ ヴィア ダンテ 131 Fターム(参考) 5B013 DD04 5B033 AA05 AA10 AA14 AA15 BA05 BE00 BE05 5B081 CC00 CC53

Claims (11)

    【特許請求の範囲】
  1. 【請求項1】 第1のCPU(CPU1)により実行さ
    れるようにコンパイルされ第2のCPU(CPU2)で
    は実行できない少なくとも一つの第1の命令セット(Os
    Task1.1, OsTask1.2, ...)と第2のCPU(CPU
    2)により実行されるようにコンパイルされ第1のCP
    U(CPU1)では実行できない少なくとも一つの第2
    の命令セット(MmTask2.1, MmTask2.2, MmTask2.3,
    ...)を実行するプロセシングアーキテクチャであ
    って、該アーキテクチャは、前記第1セットの命令(Os
    Task1.1, OsTask1.2, ...)と前記第2セットの命令
    (MmTask2.1, MmTask2.2, MmTask2.3, ...)の両方
    を実行するよう構成された単一プロセッサ(CPU3)
    を具え、該単一プロセッサ(CPU3)は、該プロセッ
    サが少なくとも前記第1セットの命令(OsTask1.1, OsT
    ask1.2, ...)を実行する第1動作モードと該プロセ
    ッサが前記第2セットの命令(MmTask2.1, MmTask2.2,
    MmTask2.3, ...)を実行する第2動作モードとの間
    で選択的に切り換え可能であり、前記単一プロセッサ
    (CPU3)は、少なくとも前記第1動作モードと前記
    第2動作モードとの間で少なくとも一つの切り換え命令
    (Mode1_NotMode2 flag)を認識し、前記少なくとも一
    つの切り換え命令に従って前記第1動作モードと前記第
    2動作モードとの間の切り換えを実行するよう構成する
    ことを特徴とするプロセシングアーキテクチャ。
  2. 【請求項2】 前記単一プロセッサ(CPU3)はデー
    タ用の単一キャッシュ(DS)に関連することを特徴と
    する請求項1記載のアーキテクチャ。
  3. 【請求項3】 前記単一プロセッサ(CPU3)は命令
    用の単一キャッシュに関連することを特徴とする請求項
    1又は2記載のアーキテクチャ。
  4. 【請求項4】 前記単一プロセッサ(CPU3)はバス
    を介してメインメモリと対話する単一インタフェース
    (CMC)に関連することを特徴とする請求項1−3の
    何れかに記載のアーキテクチャ。
  5. 【請求項5】 メモリ内の前記命令をアドレスするため
    に単一プログラムカウンタが設けられていることを特徴
    とする請求項1−4の何れかに記載のアーキテクチャ。
  6. 【請求項6】 前記単一プログラム(CPU3)は、前
    記第1セットの命令(OsTask1.1, OsTask1.2, ...)
    及び前記第2セットの命令(MmTask2.1, MmTask2.2, Mm
    Task2.3, ...)をそれぞれデコーディングする少な
    くとも一つの第1のデコーディングモジュール(DEC
    1)及び少なくとも一つの第2のデコーディングモジュ
    ール(DEC2)を具えることを特徴とする請求項1−
    5の何れかに記載のアーキテクチャ。
  7. 【請求項7】 前記第1セットの命令(OsTask1.1, OsT
    ask1.2, ...)及び前記第2セットの命令(MmTask2.
    1, MmTask2.2, MmTask2.3, ...)のオペランドを読
    み出すためのレジスタの統合ファイル(レジスタファイ
    ル)を具えることを特徴とする請求項1−6の何れかに
    記載のアーキテクチャ。
  8. 【請求項8】 前記第1の動作モード又は前記第2の動
    作モードにおいて命令の実行に使用されないとき選択的
    に非活性化し得るユニットを具えることを特徴とする請
    求項1−7の何れかに記載のアーキテクチャ。
  9. 【請求項9】 請求項1−8の何れかに記載のアーキテ
    クチャを実現するプロセシングシステム。
  10. 【請求項10】 請求項9に記載のプロセシングシステ
    ムを使用する方法であって、 前記少なくとも一つの第1の命令セット(OsTask1.1, O
    sTask1.2, ...)の命令のセットと前記少なくとも一
    つの第2の命令セット(MmTask2.1, MmTask2.2, MmTask
    2.3, ...)の命令のセットをコンパイルするオペレ
    ーションと、 前記少なくとも一つの切り換え命令(Mode1_NotMode2 f
    lag)を前記命令のセットの先頭に付与するオペレーシ
    ョンと、を具えることを特徴とするプロセシングシステ
    ムの使用方法。
  11. 【請求項11】 前記第1のCPU(CPU1)及び前
    記第2のCPU(CPU2)のコンパイルフローをその
    まま用いて各プロセスをコンパイルし、前記切り換え命
    令(Mode1_NotMode2 flag)を前記命令のセットの先頭
    に入力することを特徴とする請求項10記載の方法。
JP2002347918A 2001-12-27 2002-11-29 プロセシングアーキテクチャ、該アーキテクチャ実現システム及び該システムのオペレーション方法 Pending JP2003208306A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP01830814:8 2001-12-27
EP01830814A EP1324191A1 (en) 2001-12-27 2001-12-27 Processor architecture, related system and method of operation

Publications (1)

Publication Number Publication Date
JP2003208306A true JP2003208306A (ja) 2003-07-25

Family

ID=8184843

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002347918A Pending JP2003208306A (ja) 2001-12-27 2002-11-29 プロセシングアーキテクチャ、該アーキテクチャ実現システム及び該システムのオペレーション方法

Country Status (3)

Country Link
US (1) US20030145189A1 (ja)
EP (1) EP1324191A1 (ja)
JP (1) JP2003208306A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7536534B2 (en) 2003-02-27 2009-05-19 Nec Electronics Corporation Processor capable of being switched among a plurality of operating modes, and method of designing said processor

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1378824A1 (en) 2002-07-02 2004-01-07 STMicroelectronics S.r.l. A method for executing programs on multiple processors and corresponding processor system
US7809926B2 (en) * 2006-11-03 2010-10-05 Cornell Research Foundation, Inc. Systems and methods for reconfiguring on-chip multiprocessors
US20100153693A1 (en) * 2008-12-17 2010-06-17 Microsoft Corporation Code execution with automated domain switching
US20120159127A1 (en) * 2010-12-16 2012-06-21 Microsoft Corporation Security sandbox
KR20210017249A (ko) * 2019-08-07 2021-02-17 삼성전자주식회사 프로세서 코어들과 다양한 버전의 isa들을 이용하여 명령어들을 실행하는 전자 장치

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0344951A3 (en) * 1988-05-31 1991-09-18 Raytheon Company Method and apparatus for controlling execution speed of computer processor
US5884057A (en) * 1994-01-11 1999-03-16 Exponential Technology, Inc. Temporal re-alignment of a floating point pipeline to an integer pipeline for emulation of a load-operate architecture on a load/store processor
GB2289353B (en) * 1994-05-03 1997-08-27 Advanced Risc Mach Ltd Data processing with multiple instruction sets
US5638525A (en) * 1995-02-10 1997-06-10 Intel Corporation Processor capable of executing programs that contain RISC and CISC instructions
US6408386B1 (en) * 1995-06-07 2002-06-18 Intel Corporation Method and apparatus for providing event handling functionality in a computer system
JP3451595B2 (ja) * 1995-06-07 2003-09-29 インターナショナル・ビジネス・マシーンズ・コーポレーション 二つの別個の命令セット・アーキテクチャへの拡張をサポートすることができるアーキテクチャ・モード制御を備えたマイクロプロセッサ
US5930490A (en) * 1996-01-02 1999-07-27 Advanced Micro Devices, Inc. Microprocessor configured to switch instruction sets upon detection of a plurality of consecutive instructions
KR100513138B1 (ko) * 1996-01-24 2005-09-07 선 마이크로시스템즈 인코퍼레이티드 네트워크 또는 로컬 메모리로부터 수신된 명령 세트를실행하는 프로세서 및 컴퓨터 시스템
US5951689A (en) * 1996-12-31 1999-09-14 Vlsi Technology, Inc. Microprocessor power control system
DE19705507C1 (de) * 1997-02-13 1998-06-18 Siemens Ag Steuergerät
GB2323188B (en) * 1997-03-14 2002-02-06 Nokia Mobile Phones Ltd Enabling and disabling clocking signals to elements
US6430674B1 (en) * 1998-12-30 2002-08-06 Intel Corporation Processor executing plural instruction sets (ISA's) with ability to have plural ISA's in different pipeline stages at same time
EP1050796A1 (en) * 1999-05-03 2000-11-08 STMicroelectronics S.A. A decode unit and method of decoding
US6779107B1 (en) * 1999-05-28 2004-08-17 Ati International Srl Computer execution by opportunistic adaptation
JP3669884B2 (ja) * 1999-11-11 2005-07-13 富士通株式会社 処理装置
US6615366B1 (en) * 1999-12-21 2003-09-02 Intel Corporation Microprocessor with dual execution core operable in high reliability mode
US6832305B2 (en) * 2001-03-14 2004-12-14 Samsung Electronics Co., Ltd. Method and apparatus for executing coprocessor instructions

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7536534B2 (en) 2003-02-27 2009-05-19 Nec Electronics Corporation Processor capable of being switched among a plurality of operating modes, and method of designing said processor

Also Published As

Publication number Publication date
EP1324191A1 (en) 2003-07-02
US20030145189A1 (en) 2003-07-31

Similar Documents

Publication Publication Date Title
US6845445B2 (en) Methods and apparatus for power control in a scalable array of processor elements
US7263624B2 (en) Methods and apparatus for power control in a scalable array of processor elements
US5815724A (en) Method and apparatus for controlling power consumption in a microprocessor
US7836317B2 (en) Methods and apparatus for power control in a scalable array of processor elements
US7010674B2 (en) Efficient handling of a large register file for context switching and function calls and returns
CN105144082B (zh) 基于平台热以及功率预算约束,对于给定工作负荷的最佳逻辑处理器计数和类型选择
US20010042188A1 (en) Multiple-thread processor for threaded software applications
EP1139215B1 (en) Method and apparatus for releasing functional units in a multithreaded VLIW processor
EP3350685A1 (en) Configuring modes of processor operation
EP3350697A1 (en) Out of order commit
JP5735112B2 (ja) 命令のクラス及び内容に基づくプロセッサの電力管理
US20040205326A1 (en) Early predicate evaluation to reduce power in very long instruction word processors employing predicate execution
JPH11316690A (ja) データプロセッサおよびコンピュータプログラム最適化方法
JP2004171573A (ja) 新規な分割命令トランズアクションモデルを使用して構築したコプロセッサ拡張アーキテクチャ
US7313671B2 (en) Processing apparatus, processing method and compiler
US7574583B2 (en) Processing apparatus including dedicated issue slot for loading immediate value, and processing method therefor
US20010016903A1 (en) Software branch prediction filtering for a microprocessor
EP3746883B1 (en) Processor having multiple execution lanes and coupling of wide memory interface via writeback circuit
EP1623318B1 (en) Processing system with instruction- and thread-level parallelism
JP2003208306A (ja) プロセシングアーキテクチャ、該アーキテクチャ実現システム及び該システムのオペレーション方法
US11829187B2 (en) Microprocessor with time counter for statically dispatching instructions
US20110231637A1 (en) Central processing unit and method for workload dependent optimization thereof
EP1499960B1 (en) Multi-issue processor
EP4202664B1 (en) System, apparatus and method for throttling fusion of micro-operations in a processor
JP2000207209A (ja) 演算装置、情報処理装置および情報処理方法、並びに提供媒体