JP2007108944A - 半導体集積回路装置 - Google Patents

半導体集積回路装置 Download PDF

Info

Publication number
JP2007108944A
JP2007108944A JP2005297932A JP2005297932A JP2007108944A JP 2007108944 A JP2007108944 A JP 2007108944A JP 2005297932 A JP2005297932 A JP 2005297932A JP 2005297932 A JP2005297932 A JP 2005297932A JP 2007108944 A JP2007108944 A JP 2007108944A
Authority
JP
Japan
Prior art keywords
processing
priority
integrated circuit
semiconductor integrated
circuit device
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
JP2005297932A
Other languages
English (en)
Inventor
Makoto Saen
真 佐圓
Tetsuya Yamada
哲也 山田
Satoshi Mitsusaka
智 三坂
Keisuke Toyama
圭介 十山
Kenichi Osada
健一 長田
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.)
Renesas Technology Corp
Original Assignee
Renesas Technology Corp
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 Renesas Technology Corp filed Critical Renesas Technology Corp
Priority to JP2005297932A priority Critical patent/JP2007108944A/ja
Priority to US11/545,510 priority patent/US7529874B2/en
Publication of JP2007108944A publication Critical patent/JP2007108944A/ja
Pending 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked
    • G06F9/4818Priority circuits therefor
    • 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
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution

Abstract

【課題】複数のリアルタイムアプリケーションを並列処理するLSIにおいて、限定されたリソースを用い、それらの処理を高効率に実行することができる技術を提供する。
【解決手段】LSI200内の複数のプロセシング・ユニット(CPU0,CPU1,RCPU,VCPU)で実行される複数の処理を、LSI200全体で統一的に管理する機構を備えることで、上記課題を解決する。管理の対象となる処理に対して、処理の進行状況に基づいて優先度を算出し、その優先度に従って処理実行を制御する。各処理を実行するプロセシング・ユニットから処理状況などの情報を収集し、それらの優先度を算出するリソース・マネジメント・ユニットIRMまたはプログラム、および、その優先度にしたがって処理の実行順序を制御するためのプログラマブルなインタコネクト・ユニット100及び記憶手段101を備える。
【選択図】図6

Description

本発明は、半導体集積回路装置(以下、「LSI」という。)に関し、特に、CPU、特定処理向けアクセラレータなどのプロセシング・ユニットを複数個集積したシステムLSIの構成に適用して有効な技術に関する。
携帯電話、デジタル家電、ネットワーク機器、カーナビゲーションなどのコンシューマ機器の高性能・多機能化に伴い、その中枢を担う組み込みLSIにも高性能・高機能が求められる。これに対して、特定用途アクセラレータを含めたプロセシング・ユニットの並列化による性能向上が進められている。
一方で組み込み用途LSIは、コスト制約が厳しく、限定されたリソース(電力、演算器、メモリバンド幅、ピン数などの資源)下での動作が求められる。
これらの相反する要求に応えるための有効な方法のひとつは、並列に行われる処理を最適にスケジューリングし、限られたリソースを複数のプロセシング・ユニットで共有利用することである。
従来、あるリソースを複数で共有する際に用いられる技術としては、バスアービトレーション技術に分類されるいくつかの技術がある。
もっとも一般的に用いられる方法は、特許文献1でも使用されているラウンドロビン方式がある。
その他リアルタイム補償システムで多く用いられる方法としては、時分割で固定的にリソース占有権を与えるTDMA(Time Division Multiple Access)方式がある。
また、LSIの電力を複数のタスク間でシェアするための技術として、特許文献2および特許文献3に記載されたものがある。
本発明に関連する技術文献として以下のものがある。
特開2002−269032号公報 特開2001−229040号公報 特開2002−202893号公報 特開2003−298599号公報
ところで、前記のようなLSIの技術について、本発明者が検討した結果、以下のようなことが明らかとなった。
例えば、前記TDMA方式は、接続された各回路モジュールに対してリソース使用量を補償できるという利点はある。しかし、実際は、処理データなどに依存して必要リソース量が変化する。ワーストケースに設定するとティピカルなケースで無駄が多くなり、リソースの利用効率の面で十分でない。
そこで、本発明の目的は、複数のリアルタイムアプリケーションを並列処理するLSIにおいて、限定されたリソース(電力、メモリバンド幅、ピン数など)を用い、それらの処理を高効率で実行することができる技術を提供することにある。
本発明の前記並びにその他の目的と新規な特徴は、本明細書の記述及び添付図面から明らかになるであろう。
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、次のとおりである。
上記課題を解決するために、LSI内の複数のプロセシング・ユニット上で実行される複数の処理を、LSI全体で統一的に管理する機構を提供する。そして、管理の対象となる処理に対して、処理の進行状況をもとにした優先度を算出し、その優先度に従って処理実行を制御する。
そのため、本発明によるLSIは、各処理を実行するプロセシング・ユニットがその進行状況または優先度を通知する機構、それらの情報を収集し、その優先度を算出する制御ユニット、優先度にしたがって実行順序を制御するためのプログラマブルな調停手段を備える。
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば、以下のとおりである。
複数のリアルタイムアプリケーションを並列処理するLSIにおいて、各処理の実行状況から算出した優先度を利用し、LSI全体での統一的管理を行うことで限定されたリソースの利用効率を大域的に最適化できる。その結果、トータル性能を向上させることが可能となる。
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一部材には原則として同一の符号を付し、その繰り返しの説明は省略する。
(LSI構成)
[LSI構成1:専用ハードウェアによる集中管理型]
図1は本発明の一実施の形態によるLSIの第1の構成を示すブロック図である。
まず、図1により、本実施の形態によるLSIの構成の一例を説明する。本実施の形態のLSI200は、例えばリソース・マネジメント機能を搭載したLSIである。LSI200は、CPU、DSP、専用アクセラレータなどの複数のプロセシング・ユニットPU0〜3と、メモリIFやPCIなどのIFコントローラSRIF0と、その他スレーブ・ユニットSR1と、こられを接続するインタコネクト・ユニット100など、一般的なシステムLSIと同様のユニットに加えて、各プロセシング・ユニットPU0〜3で実行中の処理の実行状況に関する情報を収集して各処理の優先度を算出するリソース・マネジメント・ユニットIRM(制御ユニット)と、各処理の優先度をIRMが算出するのに必要な情報を保持しておくための記憶手段102(第2の記憶手段)と、IRMにより算出された優先度を共有リソースの使用順序に反映させるための記憶手段101(第1の記憶手段)とを備える。記憶手段102は、タスク管理テーブルPTBLを含む。記憶手段101は、PRIR0〜PRIR3を含む。
スレーブ・ユニットSR0は、LSI200に接続される記憶装置あるいは演算装置などのリソース(資源)であり、LSI200内の複数のプロセシング・ユニットPU0〜3により共有される。また、インタコネクト・ユニット100内のARB0〜3は、前記の優先度を考慮してリソース使用順序を決定するスケジューリング・ブロック(調停手段)である。例えば、ARB0は、プロセシング・ユニットPU0〜3間の共有リソースであるSRIF0の使用(ひいてはSR0の使用)を制御する。
また、記憶手段101内のPRIR0〜3は、それぞれPU0〜3に対応する。
[LSI構成2:共用ハードウェアによる集中管理型]
図2は本発明の一実施の形態によるLSIの第2の構成を示すブロック図である。図2は、図1におけるIRMを独立ユニットとして備えない場合を示す。この場合、本来ユーザーの処理を実行するために登載するプロセシング・ユニットPU0〜PU3のいずれかで、前記IRMに相当する処理をソフトウェア的に実行する。
図2のLSI200aは、PU0にIRMが実装されている。PU0は他のユーザー処理も実行するため、ソフトウェア的に実装されたIRMプログラムはこれらと切り替えながら実行される。他の処理からIRMへの切り替えは、他のユニットからのトリガ(割り込み、決められたフラグ領域への書き込みなど)による起動、周期的起動などPU0内のスケジューリング・ポリシーに従う。他の構成は、図1と同じであるので説明を省略する。
本構成をとるメリットはハードウェア量を削減できることであり、デメリットはユーザー処理を阻害する期間が発生する点である。
[LSI構成3:分散管理型]
図3は本発明の一実施の形態によるLSIの第3の構成を示すブロック図である。図3のLSI200bは、図2に示した前記LSI構成2の実施形態と同様に、独立ユニットとしてIRMを備えないものである。前記LSI構成2によるLSI200aと異なるのは、複数のプロセシング・ユニットにIRM機能を実装している点である。これにより、1つのプロセシング・ユニットにかかる負荷を削減できる。
図3のLSI200bは、PU0〜2にそれぞれIRMが実装されている。各IRMは、自己のプロセシング・ユニット内の処理に対する優先度を算出し、その優先度を記憶手段101に書き込む。本構成をとるメリットはハードウェア量を削減できること、搭載ユニット数の増加に対する負荷が小さいことである。デメリットは複数のプロセシング・ユニットに対してIRMを実装する必要があるという点である。
なお、上記3つのLSI構成1〜3のいずれにおいても、プロセシング・ユニットPU0〜3は必ずしも一般的なプロセシング・ユニットでなくともよい。例えば、外部からの情報を入力、あるいは、外部に情報を出力するためのインタフェース・ユニットなどであってもよい。
また、本実施の形態によるLSI200,200a,200bは、周知の半導体製造技術により、1つの半導体チップ上に構成される。
[スケジューリング・ブロック構成]
図7に、前記LSI構成1〜3におけるインタコネクト・ユニット100内のスケジューリング・ブロックARB0〜3の一実施の形態を示す。図7に示すARBは、スケジューリング・ブロックARB0〜3のうちの1つを示す。ARBは、スロット割付ベース制御部110と優先度ベース制御部111などから構成される。スロット割付ベース制御部110は記憶手段112などからなる。優先度ベース制御部111は、記憶手段101からARBに入力された前記の優先度に従い動的に調停を行う機構である。スロット割付ベース制御部110は、記憶手段112に予め指定した割合で記憶手段112に予め指定したユニットに共有リソースを割り当てる機構である。
(制御フロー)
[方法1]
図4に、前記LSI構成1〜3におけるLSI200,200a,200bの制御フローを示す。図4において、(a−1)(a―2)はリソース・マネジメント・ユニットIRMの動作を示し、(b)はプロセシング・ユニットPU0〜3の動作を示す。
図4(a−1)のフローにおいて、IRMは、制御対象となるプロセシング・ユニット全てに対して、それらが実行しているタスクの処理状況を収集し、それらを基に優先度を計算する(ループ1)。タスクの処理状況の収集は、記憶手段102などIRMがアクセス可能な記憶手段に書き込まれた各プロセシング・ユニットの処理状況情報を読み出すことにより行われる。ループ1は、プロセシング・ユニットの数だけ繰り返す。
次にそれらの優先度に基づいた制御を行う。共有リソース使用のスケジューリングを行う場合、先に計算した優先度を記憶手段101に書き込む(ループ0)。これを受けてスケジューリング・ブロックARB0〜3は、記憶手段101で指定された優先度を考慮し、プロセシング・ユニットにリソース使用権を与える。ループ0は、システムが止まるまで継続して繰り返す。
図4(a−2)は、図4(a−1)のフローの別の形態である。IRMは、制御対象となるプロセシング・ユニットが実行しているタスクの処理状況の収集、優先度の計算、それに基づく制御を、制御対象となるプロセシング・ユニット毎にまとめて行う。この一連のIRM処理を行うタイミングとしては、制御対象となるプロセシング・ユニットからの割り込みなどのトリガによる場合や、周期的に行う場合がある(ループ3)。
図4(b)のフローにおいて、プロセシング・ユニットPU0〜3は、処理の開始/再開をIRMへ通知した後、実行中の処理状況情報を通知する(ループ2)。処理状況情報の通知は、適切な時点で、自らが実行している処理の状況情報を、IRMがアクセス可能な記憶手段に書き込むことにより行われる。
この処理状況情報を書き込む場所としては、内蔵メモリの一領域や、プロセシング・ユニット内、あるいはそれに付属する記憶手段や、これらの制御を行うために専用に設けられた記憶手段102、または、記憶手段101のいずれかを用いることができる。また、あるプロセシング・ユニットは自らの処理状況情報を内蔵メモリの一領域に書き込み、あるプロセシング・ユニットはそのユニットに付属する記憶手段に書き込むなど、一つのLSI内で複数が混在してもよい。
[方法2]
図5に、前記LSI構成1〜3におけるLSI200,200a,200bの他の制御フローを示す。図5において、(a−1)、(a−2)はリソース・マネジメント・ユニットIRMの動作を示し、(b)はプロセシング・ユニットPU0〜3の動作を示す。前記方法1では優先度の計算をIRMが行ったが、それを各プロセシング・ユニットが行ってもよい。
この時、IRMは制御対象となるプロセシング・ユニット全てに対して、それらプロセシング・ユニットからそれらが実行しているタスクの優先度を収集し、それらに基づいた制御を行う。共有リソース使用のスケジューリングを行う場合、記憶手段101に優先度を書き込む。これを受けてスケジューリング・ブロックARB0〜3は、記憶手段101で指定された優先度に従いリソース使用権を与える。
プロセシング・ユニットPU0〜3は、自らが実行している処理の優先度をIRMがアクセス可能な記憶手段に書き込む。
また、本方法2において、プロセシング・ユニットが、優先度を直接記憶手段101に書き込んでもよい。
[方法3]
また、前記方法1と方法2を組み合わせて使用してもよい。あるユニットに対しては、そのユニット自身が、リソース・マネジメント・ユニットIRMがアクセス可能な記憶手段に優先度を書き込む。あるユニットに対しては、そのユニットが、IRMがアクセス可能な記憶手段に処理状況情報を書き込み、IRMがそれをもとに優先度を計算する。
IRMはそれらの優先度を使用して制御を行う。
(優先度生成)
次に、処理状況情報および優先度生成方法について記述する。プロセシング・ユニットおよび実行するタスクの特徴に合わせて、複数の手法を組み合わせて使用することも可能である。
[優先度生成第1の方法]
処理状況情報として、目標処理レートPRと実処理レートPAを用いて、優先度を算出する。目標処理レートに対して実処理レートが小さい処理ほど優先度を高くする。以下のように、優先度PRIを算出する形態もある。
PRI=C・(PR−PA) C:定数
例えば、目標処理レートPRおよび実処理レートPAとして、ある単位時間あたりの実行命令数を使うことができる。目標処理レートPRは予め設定しておき、実処理レートPAはプロセシング・ユニットの実行命令数をカウントした結果を保持した記憶手段の値を用いる。プロセシング・ユニットが、実処理レートPAと目標処理レートPRを含む情報をIRMに通知し、IRMはこれらから優先度を算出する。
また、目標処理レートPRおよび実処理レートPAを、プロセシング・ユニットの待ち時間から算出することもできる。プロセシング・ユニットは命令やデータ待ち、あるいは制御信号のハンドシェイクで発生する待ち時間をIRMに通知し、IRMはこれらから優先度を算出する。
[優先度生成第2の方法]
目標処理レートPRと実処理レートPAを用いる点は前記第1の方法と同様である。目標処理レートPRとして制限時間と消費時間(サイクル)を用いて算出される値を用い、実処理レートPAとしてアプリケーションの進行度を用いる。
アプリケーションの進行度の通知に関して、ユーザー処理プログラムから、進行度を通知するための小プログラムを呼び出すことで実現することができる。また、同様の進行度通知をハードウェアとして実装する場合もある。前者は汎用プロセシング・ユニットなどに向き、後者はハードウェア・アクセラレータなどに向く。
この第2の方法はアプリケーションそのものを監視しているため、前記第1の方法に比べて高い精度の制御が可能であるが、適用しにくいアプリケーションも存在する。したがって、多くの場合、これら複数の方法の併用が必要となる。
第1の方法と第2の方法の両方を含む制御も可能である。
(一具体例)
図6に、図1のLSIを具体化したLSIの構成例を示す。
図6に示すLSI200は、プロセシング・ユニットPU0〜PU3として、汎用プロセッサであるCPU0,CPU1と、再構成可能な演算器であるリコンフィグラブル・プロセシング・ユニットRCPUと、画像圧縮・伸張ユニットVCPUとを含む。これらのプロセシング・ユニットはSDRAMを共有する。インタコネクト・ユニット100内のレスポンス・ブロックRESPは、レスポンスをイニシエータ(プロセシング・ユニット、ブリッジ・ユニットBR1)に伝達するブロックであり、ARB0〜2は前記スケジューリング・ブロックである。本構成では、リソース・マネジメントに関わるブロックがブリッジ・ユニットBR1を介して接続される。割り込みコントローラINTCはIRMへの割り込みを制御するユニットであり、101および102はリソース・マネジメントに関わる制御用の記憶手段であり、電力制御ユニットPWCは各部分の電力管理をするためのユニットであり、105はこれらユニット間を結ぶインタフェースである。101内のPRIR0、PRIR1、PRIR2、PRIR3はそれぞれ、CPU0、CPU1、RCPU、VCPU、の優先度をARB0〜2に伝達し、そのスケジューリングに反映するための記憶手段であり、これらは105を通じて値を更新できる。
次にリソース・マネジメントに関わる動作について記述する。
CPU0は、前記の優先度生成第1の方法に基づき優先度を算出するために、必要な目標処理レートPRや、タスクを識別するためのIDを含む情報を、タスクの切り替えに同期させて、IRMが読み出せる領域(本例では記憶手段102)に書き込み、割り込みコントローラINTCを介してIRMに通知する。また、CPU0は実処理レートPAを示す情報を、適宜IRMが読み出せる領域(本例では記憶手段102)に書き込む。IRMは前記割り込みを受け、CPU0が制御対象であることを認識し、周期的に102から処理状況情報を読み出し、優先度を算出する。
CPU1は、その上で実行されるユーザプログラム中に、前記の優先度生成第2の方法に基づく処理状況情報と、実行タスクIDを含む情報とを、IRMが読み出せる領域(本例では記憶手段102)に書き込むプログラムを有する。
RCPUは、アクセラレータであり、ここではCPU0がその動作を制御する。RCPUは、前記の優先度生成第1の方法に基づく処理状況情報を、IRMからアクセス可能な記憶手段106に書き込む機能を有する。CPU0は、RCPUの起動などの動作情報を割り込みコントローラINTCを介してIRMに通知する。IRMはこれを受け、RCPUが制御対象であることを認識し、周期的に記憶手段106から処理状況情報を読み出し、優先度を算出する。
VCPUは、ハードウェア・アクセラレータであり、ここではCPU0がその動作を制御する。VCPUは、前記の優先度生成第2の方法に基づく処理状況情報を、IRMからアクセス可能な記憶手段107に書き込む機能を有する。CPU0はVCPUの起動などの動作情報を割り込みコントローラINTCを介してIRMに通知する。IRMはこれを受け、VCPUが制御対象であることを認識し、周期的に107から処理状況情報を読み出し、優先度を算出する。
また、IRMは、SDRAM使用順序に反映させるために、前記の機構で算出した優先度を記憶手段101に書き込む。
また、本実施の形態が示すLSIを統括的に管理する機構は、機能ブロック/装置の共有を最適化する目的以外にも有効である。そのひとつの応用例が電力制御である。本例において、IRMはLSI200の電力制御も行う。PWCは、チップ内の各ユニットの電力を制御するためのユニットである。そして、各ユニットへの電力制御インタフェース108と、IRMから制御を行うためのインタフェース105とを有する。IRMは、前記の機構で算出した優先度と、それぞれの処理を行うための必要電力とに基づいて、各ユニットの電力制御を、PWCを介して行う。制御対象は、クロック周波数、電源電圧(上げ/下げ)、閾値電圧などを含む。また、その制御の単位はユニットではなく、複数ユニットをまとめたエリア単位でもよい。
同様にして、前記LSI構成2および3においても、図6のLSI構成を適用することができる。
以上のようにして、複数のリアルタイムアプリケーションを並列処理するLSIにおいて、限定されたリソースを用い、それらの処理を高効率実行する。各処理の実行状況から算出した優先度を利用し、LSI全体での統一的管理を行うことで限定されたリソースの利用効率を大域的に最適化し、トータル性能を向上させる。これにより、数10%の性能改善が期待できる。
図8は、本実施の形態によるLSIの効果を示す図であり、(a)は従来のLSIの性能を示し、(b)は本実施の形態によるLSIの性能を示す。
従来の方法では、図8(a)に示すように、トータルのリソース量は十分でも、そのリソースを複数のタスク間に適切に配分できない結果、目標性能を達成できないタスク(タスク2、3および5)が発生し、トータルの性能が目標に達しないことが多くあった。
本発明によれば、図8(b)に示すように、各タスクのばらつきが抑えられて目標性能を達成することができる。
以上、本発明者によってなされた発明をその実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
本発明は、半導体装置、電子機器等の製造業において利用可能である。
本発明の一実施の形態によるLSIの第1の構成を示すブロック図である。 本発明の一実施の形態によるLSIの第2の構成を示すブロック図である。 本発明の一実施の形態によるLSIの第3の構成を示すブロック図である。 (a−1),(a−2),(b)は、本発明の一実施の形態によるLSIの第1の制御フローを示す図である。 (a−1),(a−2),(b)は、本発明の一実施の形態によるLSIの第2の制御フローを示す図である。 図1に示すLSIの具体的構成を示すブロック図である。 本発明の一実施の形態によるLSIのスケジューリング・ブロックの構成を示すブロック図である。 (a),(b)は、本発明の効果を示す図である。
符号の説明
100 インタコネクト・ユニット
101,102,106,107,112 記憶手段
105 インタフェース
108 電力制御インタフェース
110 スロット割付ベース制御部
111 優先度ベース制御部
200,200a,200b LSI
ARB,ARB0〜ARB3 スケジューリング・ブロック(調停手段)
BR1 ブリッジ・ユニット
INTC 割り込みコントローラ
IRM リソース・マネジメント・ユニット(制御ユニット)
PTBL タスク管理テーブル
PU0〜PU3 プロセシング・ユニット
PWC 電力制御ユニット
RCPU リコンフィグラブル・プロセンシング・ユニット
RESP レスポンス・ブロック
SR0,SR1 スレーブ・ユニット
SRIF0 IFコントローラ
VCPU 画像圧縮・伸張ユニット

Claims (8)

  1. 複数のプロセシング・ユニットを含む半導体集積回路装置であって、
    前記半導体集積回路装置上で実行される処理の優先度を算出する制御ユニットと、
    前記優先度に基づき、前記プロセシング・ユニットに共有資源を使用する権利を与える調停手段と、
    前記制御ユニットが算出した優先度を前記調停手段に伝えるための第1の記憶手段と、
    前記制御ユニットが前記優先度算出を行うための情報を保持するための第2の記憶手段とを有することを特徴とする半導体集積回路装置。
  2. 請求項1記載の半導体集積回路装置において、
    前記制御ユニットは、前記複数のプロセシング・ユニットのうち少なくとも1つ以上のプロセシング・ユニットにソフトウェア的に実装されていることを特徴とする半導体集積回路装置。
  3. 請求項1または2記載の半導体集積回路装置において、
    前記制御ユニットは、前記第2の記憶手段から、前記プロセシング・ユニットが実行している処理の状況を収集し、前記処理の状況を基にその処理の優先度を算出し、前記優先度に基づき、前記第1の記憶手段に優先度情報を書き込み、
    前記プロセシング・ユニットは、自らが実行する処理の状況を前記第2の記憶手段に書き込む機能を有することを特徴とする半導体集積回路装置。
  4. 請求項1または2記載の半導体集積回路装置において、
    前記制御ユニットは、制御対象となるプロセシング・ユニットから、前記プロセシング・ユニットが実行している処理の優先度を収集し、前記第1の記憶手段に前記優先度情報を書き込み、
    前記プロセシング・ユニットは、自らが実行する処理の優先度を前記第1の記憶手段に書き込む機能を有することを特徴とする半導体集積回路装置。
  5. 請求項4記載の半導体集積回路装置において、
    前記プロセシング・ユニットは、自らが実行する処理の実行状況から優先度を算出し、
    前記優先度に基づき前記第1の記憶手段に優先度情報を書き込む機能を有することを特徴とする半導体集積回路装置。
  6. 請求項1または2記載の半導体集積回路装置において、
    前記優先度は、前記半導体集積回路装置上で実行される処理の目標処理レートと実処理レートに基づき算出されることを特徴とする半導体集積回路装置。
  7. 請求項1または2記載の半導体集積回路装置において、
    前記優先度は、前記半導体集積回路装置上で実行される処理の制限時間と消費時間と進捗度とに基づき算出されることを特徴とする半導体集積回路装置。
  8. 請求項1または2記載の半導体集積回路装置において、
    前記調停手段は、
    前記優先度に従い動的に調停を行う機構と、
    予め指定した割合のリソース使用量を予め指定したユニットに割り当てる機構とを含むことを特徴とする半導体集積回路装置。
JP2005297932A 2005-10-12 2005-10-12 半導体集積回路装置 Pending JP2007108944A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005297932A JP2007108944A (ja) 2005-10-12 2005-10-12 半導体集積回路装置
US11/545,510 US7529874B2 (en) 2005-10-12 2006-10-11 Semiconductor integrated circuit device for real-time processing

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005297932A JP2007108944A (ja) 2005-10-12 2005-10-12 半導体集積回路装置

Publications (1)

Publication Number Publication Date
JP2007108944A true JP2007108944A (ja) 2007-04-26

Family

ID=38034773

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005297932A Pending JP2007108944A (ja) 2005-10-12 2005-10-12 半導体集積回路装置

Country Status (2)

Country Link
US (1) US7529874B2 (ja)
JP (1) JP2007108944A (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007179326A (ja) * 2005-12-28 2007-07-12 Matsushita Electric Ind Co Ltd 演算処理装置
WO2011142031A1 (ja) * 2010-05-14 2011-11-17 株式会社日立製作所 リソース管理方法、リソース管理装置およびプログラム
JP2013501297A (ja) * 2009-09-11 2013-01-10 エンパイア テクノロジー ディベロップメント エルエルシー スレッドシフト:コアへのスレッド割振り
JP2013515991A (ja) * 2009-12-24 2013-05-09 インターナショナル・ビジネス・マシーンズ・コーポレーション アクセラレータ・リソースを動的に管理するための方法、情報処理システム、およびコンピュータ・プログラム
JP2014505282A (ja) * 2010-11-15 2014-02-27 クアルコム,インコーポレイテッド マルチプロセッサモバイル通信デバイスのアプリケーション用のリソース取得の調停
US9189282B2 (en) 2009-04-21 2015-11-17 Empire Technology Development Llc Thread-to-core mapping based on thread deadline, thread demand, and hardware characteristics data collected by a performance counter
US9569270B2 (en) 2009-04-21 2017-02-14 Empire Technology Development Llc Mapping thread phases onto heterogeneous cores based on execution characteristics and cache line eviction counts
WO2017043697A1 (ko) * 2015-09-08 2017-03-16 이혁재 리소스 활용 프로그램의 우선순위를 결정하는 시스템 및 방법

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10462070B1 (en) 2016-06-30 2019-10-29 EMC IP Holding Company LLC Service level based priority scheduler for multi-tenancy computing systems
CN109491798A (zh) * 2018-11-27 2019-03-19 郑州云海信息技术有限公司 一种资源分配的方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10283207A (ja) * 1997-04-10 1998-10-23 Toshiba Corp 計算機システム、マルチプログラムの実行制御方法及び記憶媒体
JP2004062911A (ja) * 2002-07-26 2004-02-26 Hewlett-Packard Development Co Lp コンピュータ資源の割り当てを管理するシステム

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6829764B1 (en) * 1997-06-23 2004-12-07 International Business Machines Corporation System and method for maximizing usage of computer resources in scheduling of application tasks
DE69920460T2 (de) 1999-10-25 2005-01-20 Texas Instruments Inc., Dallas Intelligente Leistungssteuerung in verteilten Verarbeitungssystemen
IL137085A (en) * 2000-06-29 2004-08-31 Eci Telecom Ltd Method for effective utilizing of shared resources in computerized systems
US7174194B2 (en) 2000-10-24 2007-02-06 Texas Instruments Incorporated Temperature field controlled scheduling for processing systems
JP4024484B2 (ja) 2001-03-13 2007-12-19 株式会社リコー バスアービタ
JP3922070B2 (ja) 2002-03-29 2007-05-30 株式会社デンソー 分散制御方法及び装置
US7793294B2 (en) * 2005-02-22 2010-09-07 Northrop Grumman Corporation System for scheduling tasks within an available schedule time period based on an earliest possible end time of the task
US20070094664A1 (en) * 2005-10-21 2007-04-26 Kimming So Programmable priority for concurrent multi-threaded processors
JP2007148582A (ja) * 2005-11-24 2007-06-14 Matsushita Electric Ind Co Ltd タスク実行制御装置、タスク実行制御方法、及びプログラム
US20070143762A1 (en) * 2005-12-16 2007-06-21 Arnold Kevin M Assigning tasks in a distributed system based on ranking
JP2007188398A (ja) * 2006-01-16 2007-07-26 Seiko Epson Corp マルチプロセッサシステム、マルチプロセッサシステムの制御方法をコンピュータに実行させるためのプログラム。
US7844970B2 (en) * 2006-08-22 2010-11-30 International Business Machines Corporation Method and apparatus to control priority preemption of tasks
US8020161B2 (en) * 2006-09-12 2011-09-13 Oracle America, Inc. Method and system for the dynamic scheduling of a stream of computing jobs based on priority and trigger threshold

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10283207A (ja) * 1997-04-10 1998-10-23 Toshiba Corp 計算機システム、マルチプログラムの実行制御方法及び記憶媒体
JP2004062911A (ja) * 2002-07-26 2004-02-26 Hewlett-Packard Development Co Lp コンピュータ資源の割り当てを管理するシステム

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007179326A (ja) * 2005-12-28 2007-07-12 Matsushita Electric Ind Co Ltd 演算処理装置
US9189282B2 (en) 2009-04-21 2015-11-17 Empire Technology Development Llc Thread-to-core mapping based on thread deadline, thread demand, and hardware characteristics data collected by a performance counter
US9569270B2 (en) 2009-04-21 2017-02-14 Empire Technology Development Llc Mapping thread phases onto heterogeneous cores based on execution characteristics and cache line eviction counts
JP2013501297A (ja) * 2009-09-11 2013-01-10 エンパイア テクノロジー ディベロップメント エルエルシー スレッドシフト:コアへのスレッド割振り
US8881157B2 (en) 2009-09-11 2014-11-04 Empire Technology Development Llc Allocating threads to cores based on threads falling behind thread completion target deadline
JP2013515991A (ja) * 2009-12-24 2013-05-09 インターナショナル・ビジネス・マシーンズ・コーポレーション アクセラレータ・リソースを動的に管理するための方法、情報処理システム、およびコンピュータ・プログラム
WO2011142031A1 (ja) * 2010-05-14 2011-11-17 株式会社日立製作所 リソース管理方法、リソース管理装置およびプログラム
US9319281B2 (en) 2010-05-14 2016-04-19 Hitachi, Ltd. Resource management method, resource management device, and program product
JP2014505282A (ja) * 2010-11-15 2014-02-27 クアルコム,インコーポレイテッド マルチプロセッサモバイル通信デバイスのアプリケーション用のリソース取得の調停
US9317329B2 (en) 2010-11-15 2016-04-19 Qualcomm Incorporated Arbitrating resource acquisition for applications of a multi-processor mobile communications device
WO2017043697A1 (ko) * 2015-09-08 2017-03-16 이혁재 리소스 활용 프로그램의 우선순위를 결정하는 시스템 및 방법

Also Published As

Publication number Publication date
US7529874B2 (en) 2009-05-05
US20090089786A1 (en) 2009-04-02

Similar Documents

Publication Publication Date Title
JP2007108944A (ja) 半導体集積回路装置
US10649935B2 (en) Deferred inter-processor interrupts
US9715415B2 (en) Method of scheduling threads for execution on multiple processors within an information handling system
TWI233545B (en) Mechanism for processor power state aware distribution of lowest priority interrupts
KR101258502B1 (ko) 멀티코어 아키텍처 내의 리소스 관리
US9779042B2 (en) Resource management in a multicore architecture
TWI505080B (zh) 在電腦系統中分派任務之方法、系統及電腦程式
JP2010079622A (ja) マルチコアプロセッサシステム、および、そのタスク制御方法
JP4457047B2 (ja) マルチプロセッサシステム
TW200809628A (en) Power aware dynamic scheduling in multiprocessor system employing voltage islands
Bi et al. Research of key technologies for embedded Linux based on ARM
US9639905B2 (en) Power control apparatus, electronic computer, and power control method
Parikh et al. Performance parameters of RTOSs; comparison of open source RTOSs and benchmarking techniques
Niu et al. Leakage-aware scheduling for embedded real-time systems with (m, k)-constraints
US20110173358A1 (en) Eager protocol on a cache pipeline dataflow
CN116795490A (zh) 一种vCPU调度方法、装置、设备及存储介质
Akgün et al. Exploration of Power-Savings on Multi-Core Architectures with Offloaded Real-Time Operating System
Nadeem et al. Bandwidth Stealing TDMA Arbitration for Real-Time Multiprocessor Applications
US20090083748A1 (en) Program execution device
Yen et al. System Specification

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080110

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090928

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091020

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091221

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20100528

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20101214