JP2007072598A - バス調停方法及びバス調停プログラム - Google Patents
バス調停方法及びバス調停プログラム Download PDFInfo
- Publication number
- JP2007072598A JP2007072598A JP2005256679A JP2005256679A JP2007072598A JP 2007072598 A JP2007072598 A JP 2007072598A JP 2005256679 A JP2005256679 A JP 2005256679A JP 2005256679 A JP2005256679 A JP 2005256679A JP 2007072598 A JP2007072598 A JP 2007072598A
- Authority
- JP
- Japan
- Prior art keywords
- bus
- task
- cycles
- usage
- priority
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/36—Handling requests for interconnection or transfer for access to common bus or bus system
- G06F13/362—Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
- G06F13/3625—Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control using a time dependent access
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bus Control (AREA)
Abstract
【解決手段】バスに接続された複数の装置によって複数のタスクを実行可能なコンピュータにおける前記バスの調停を行うバス調停方法であって、所定のタイミングで、前記複数のタスクの各々の優先度を含むタスク情報を取得する工程と、前記タスク情報に基づいて、前記優先度の高いタスクを実行する装置に優先的に前記バスが割り当てられるように前記複数の装置の各々のバス使用条件を定義したバス使用条件情報を生成する工程と、前記バス使用条件情報に基づいて前記バスの調停を行う工程とを含む。
【選択図】図3
Description
図1に示すコンピュータは、バスに接続された複数の装置によって複数のタスクを実行可能なコンピュータであり、バス10と、バスの調停を行うアービター20と、アービター20を介してバス10に接続された複数の装置(装置A31、装置B32、装置C33)とを備える。以下の説明では、装置A31を装置A、装置B32を装置B、装置C33を装置Cと記載する。
図2は、本発明の実施の形態におけるバス使用条件情報テーブルを概念的に示す図である。
バス使用条件情報テーブルとは、コンピュータに登録されているタスクの優先度に応じて各装置A〜Cのバス使用条件(各装置A〜Cがどのくらいの頻度でバスをどのくらい使用するのかを決めた条件)を定義したテーブルである。バス使用条件情報テーブルには、各装置A〜Cの装置ID、各装置A〜Cからのバス使用要求の有無、各装置A〜Cの連続使用バスサイクル数、実行周期、などの項目が記述されている。
「バス使用要求の有無」は、装置からバスの使用要求があったか否かを示す情報である。使用要求があった場合は「有」、ない場合は「無」が記録される。
「連続使用バスサイクル数」は、装置に割り当てられた1回のバスの使用に際して、該装置が起動することのできる最大のバスサイクルの数を示す情報である。連続使用バスサイクル数が多い程、1回の割り当てで、多くのデータの送受信が可能となる。又、連続使用バスサイクル数は、装置の最小バスサイクル数(装置がバスを使用する際に最低限起動することのできるバスサイクルの数)の整数倍となるように設定されている。
「実行周期」は、装置がどれくらいの頻度でバスを割り当てられるかを示す情報である。
はじめに、コンピュータを起動後、バス調停プログラムを実行したアービター20は、コンピュータに登録されているタスクから要求が発生したか否かを判定する(ステップS101)。
本実施の形態では、「タスクの登録時」のタイミングで取得した「全タスクのタスク情報」に基づいてバス使用条件情報テーブルを作成する場合について説明する。ここでは、登録されているタスクがX,Y,Zの3つあるものとする。
各タスクX,Y,Zのタスク情報には、装置A〜Cのうちの各タスクX,Y,Zの実行に使用される装置毎の使用率と、各タスクX,Y,Zの優先度であるバス使用量(バスサイクル数)とが含まれている。
(図4のタスク情報では、50+60+10=120となる)
+タスクYの装置A使用率×タスクYのバス使用量
+タスクZの装置A使用率×タスクZのバス使用量
(図4のタスク情報では、40%×50+60%×60+90%×10=65となる)
+タスクYの装置B使用率×タスクYのバス使用量
+タスクZの装置B使用率×タスクZのバス使用量
(図4のタスク情報では、30%×50+40%×60+0%×10=39となる)
+タスクYの装置C使用率×タスクYのバス使用量
+タスクZの装置C使用率×タスクZのバス使用量
(図4のタスク情報では、30%×50+0%×60+10%×10=16となる)
(図4のタスク情報では、65/120=約0.542となる)
(図4のタスク情報では、39/120=約0.325となる)
(図4のタスク情報では、16/120=約0.133となる)
K×装置Aのバス使用率==Na×装置Aの最小バスサイクル数
K×装置Bのバス使用率==Nb×装置Bの最小バスサイクル数
K×装置Cのバス使用率==Nc×装置Cの最小バスサイクル数
尚、上記の係数K、Na、Nb、Ncはいずれも整数値で、係数Kがなるべく小さな数値となるように各係数値を算出する。具体的には、最小バスサイクル数が最も大きな装置の係数N(本例ではNc)を1とした場合から開始して算出すればよい。
(図4のタスク情報と図5の最小バスサイクル数情報では、Nc=1とした場合、K=244、Na=33、Nb=5と算出される)
(例では、33×4=132と算出される)
(例では、5×16=80と算出される)
(例では、1×32=32と算出される)
このバス使用条件情報テーブルによれば、実行周期がすべて1であるため、装置A:132サイクル、装置B:80サイクル、装置C:32サイクル、の順番でバスの割り当てが巡回する。このバス使用条件情報テーブルにしたがってバスの調停を行うと、装置Aにより優先的にバスの割り当てが行われることになるため、優先度の高いタスクYが実行されるまでの時間を効率的に短縮することができる。
次に、本実施の形態では、「タスクの切り替え時」のタイミングで取得した「全タスクのタスク情報」に含まれる各タスクの優先度(バス使用量)を、現在実行中のタスクが最も高くなるように重み付け設定を行ってから、バス使用条件情報テーブルを作成する場合について説明する。この場合、アービター20が、現在実行中のタスクのタスク情報に含まれる「バス使用量」に適宜重み付けを行う。ここでは、タスク情報を取得した時点で実行中のタスクがタスクXである場合について説明する。
(図10のタスク情報では、75+30+5=110となる)
+タスクYの装置A使用率×タスクYのバス使用量
+タスクZの装置A使用率×タスクZのバス使用量
(図10のタスク情報では、40%×75+60%×30+90%×5=52.5となる)
+タスクYの装置B使用率×タスクYのバス使用量
+タスクZの装置B使用率×タスクZのバス使用量
(図10のタスク情報では、30%×75+40%×30+0%×5=34.5となる)
+タスクYの装置C使用率×タスクYのバス使用量
+タスクZの装置C使用率×タスクZのバス使用量
(図10のタスク情報では、30%×75+0%×30+10%×5=23となる)
(図10のタスク情報では、52.5/110=約0.477となる)
(図10のタスク情報では、34.5/110=約0.314となる)
(図10のタスク情報では、23/110=約0.209となる)
K×装置Aのバス使用率==Na×装置Aの最小バスサイクル数
K×装置Bのバス使用率==Nb×装置Bの最小バスサイクル数
K×装置Cのバス使用率==Nc×装置Cの最小バスサイクル数
(図10のタスク情報と図5の最小バスサイクル数情報では、Nc=1とした場合、K=151、Na=18、Nb=3と算出される)
(例では、18×4=72と算出される)
(例では、3×16=48と算出される)
(例では、1×32=32と算出される)
このバス使用条件情報テーブルによれば、実行周期がすべて1であるため、装置A:72サイクル、装置B:48サイクル、装置C:32サイクル、の順番でバスの割り当てが巡回する。図6と図11を比較すると、図6に示すバス使用条件情報テーブルに従えば、装置Aに、より優先的にバスの割り当てが行われるのに対し、図11に示すバス使用条件情報テーブルでは、装置A〜Cのそれぞれにほぼ均等に割り当てが行われることになる。タスクXは、装置A〜Cをほぼ均等に使用するため、図11に示すバス使用条件情報テーブルによれば、タスクXの実行時間を、図6に示すバス使用条件情報テーブルの場合よりも短くすることができる。
20 アービター
31 装置A
32 装置B
33 装置C
Claims (6)
- バスに接続された複数の装置によって複数のタスクを実行可能なコンピュータにおける前記バスの調停を行うバス調停方法であって、
前記コンピュータが、所定のタイミングで、前記複数のタスクの各々の優先度と、前記複数のタスク毎の実行に必要な装置毎の前記タスクの実行に使用される割合を示す使用率とを含むタスク情報を取得する工程と、
前記コンピュータが、前記優先度と前記使用率とに基づいて、前記優先度の高いタスクの実行に必要な装置に優先的に前記バスが割り当てられるように前記複数の装置の各々のバス使用条件を定義したバス使用条件情報を作成する工程と、
前記コンピュータが、前記バス使用条件情報にしたがって前記バスの調停を行う工程とを含むバス調停方法。 - 請求項1記載のバス調停方法であって、
前記優先度が、前記タスクの実行に際して単位時間当たりに起動すべきバスサイクル数で定義され、
前記バス使用条件情報を作成する工程では、前記バスサイクル数と前記使用率とから、前記複数の装置毎に、前記複数のタスクの前記バスサイクル数の総和であるに対する前記装置が前記単位時間当たりに起動すべきバスサイクル数の比率であるバス使用率を算出し、前記バス使用率と、前記複数の装置の各々が前記バスを使用する際に最低限起動することのできるバスサイクルの数である最小バスサイクル数とから、前記装置に割り当てられた1回の前記バスの使用に際して前記装置が起動することのできる最大のバスサイクルの数である連続使用バスサイクル数を算出し、前記連続使用バスサイクル数を用いて前記バス使用条件情報を作成するバス調停方法。 - 請求項1又は2記載のバス調停方法であって、
前記コンピュータが、前記複数の装置からの前記バスの使用要求の有無を判定する工程を含み、
前記バスの調停を行う工程では、前記バスの使用要求が無いと判定した装置には前記バスを割り当てないようにするバス調停方法。 - 請求項1〜3のいずれか記載のバス調停方法であって、
前記所定のタイミングが、前記優先度が変更されたタイミングであるバス調停方法。 - 請求項1〜3のいずれか記載のバス調停方法であって、
前記コンピュータが、前記取得したタスク情報に含まれる前記優先度を、前記タスク情報を取得した時点で実行されているタスクが最も高くなるように設定する工程を含むバス調停方法。 - コンピュータに、請求項1〜5のいずれか記載のバス調停方法の各工程を実行させるためのバス調停プログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005256679A JP2007072598A (ja) | 2005-09-05 | 2005-09-05 | バス調停方法及びバス調停プログラム |
US11/513,210 US7539805B2 (en) | 2005-09-05 | 2006-08-31 | Bus arbitration method and computer-readable medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005256679A JP2007072598A (ja) | 2005-09-05 | 2005-09-05 | バス調停方法及びバス調停プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007072598A true JP2007072598A (ja) | 2007-03-22 |
Family
ID=37934004
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005256679A Pending JP2007072598A (ja) | 2005-09-05 | 2005-09-05 | バス調停方法及びバス調停プログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US7539805B2 (ja) |
JP (1) | JP2007072598A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011133940A (ja) * | 2009-12-22 | 2011-07-07 | Seiko Epson Corp | アクセス調停装置、集積回路装置、電子機器、アクセス調停方法、及びプログラム |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20080074545A (ko) * | 2007-02-09 | 2008-08-13 | 삼성전자주식회사 | 버스 시스템 및 그 제어 방법 |
US10210114B2 (en) * | 2014-08-01 | 2019-02-19 | Universiti Teknologi Malaysia | Interrupt-driven I/O arbiter for a microcomputer system |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08161257A (ja) * | 1994-12-07 | 1996-06-21 | Nec Corp | 共通バス使用権制御システム |
US5771358A (en) * | 1996-07-15 | 1998-06-23 | Micron Electronics, Inc. | Method and system for apportioning computer bus bandwidth |
JP2000010934A (ja) * | 1998-06-26 | 2000-01-14 | Fujitsu Ltd | マルチcpuシステムのバス調停システム |
JP2003271545A (ja) * | 2002-03-12 | 2003-09-26 | Hitachi Ltd | データ処理システム |
JP2004287576A (ja) * | 2003-03-19 | 2004-10-14 | Matsushita Electric Ind Co Ltd | バスコントローラ |
US20050228927A1 (en) * | 2004-04-05 | 2005-10-13 | Philip Garcia | Bus utilization based on data transfers on the bus |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05233525A (ja) | 1991-06-28 | 1993-09-10 | Matsushita Electric Works Ltd | I/o処理装置 |
US5740380A (en) * | 1996-07-15 | 1998-04-14 | Micron Electronics, Inc. | Method and system for apportioning computer bus bandwidth |
US6658512B1 (en) * | 2000-09-28 | 2003-12-02 | Intel Corporation | Admission control method for data communications over peripheral buses |
JP2003006146A (ja) * | 2001-06-20 | 2003-01-10 | Kyocera Corp | バス調停回路 |
US6848015B2 (en) * | 2001-11-30 | 2005-01-25 | Hewlett-Packard Development Company, L.P. | Arbitration technique based on processor task priority |
KR100456696B1 (ko) * | 2002-05-21 | 2004-11-10 | 삼성전자주식회사 | 집적회로장치의 버스중재기 |
KR100475735B1 (ko) * | 2002-07-12 | 2005-03-10 | 삼성전자주식회사 | 긴급채널을 이용한 공유버스 중재방법 및 그 장치 |
KR100555501B1 (ko) * | 2003-06-26 | 2006-03-03 | 삼성전자주식회사 | 동적으로 버스 점유 우선 순위를 정하는 버스 중재기 및그 버스 중재 방법 |
-
2005
- 2005-09-05 JP JP2005256679A patent/JP2007072598A/ja active Pending
-
2006
- 2006-08-31 US US11/513,210 patent/US7539805B2/en not_active Expired - Fee Related
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08161257A (ja) * | 1994-12-07 | 1996-06-21 | Nec Corp | 共通バス使用権制御システム |
US5771358A (en) * | 1996-07-15 | 1998-06-23 | Micron Electronics, Inc. | Method and system for apportioning computer bus bandwidth |
JP2000010934A (ja) * | 1998-06-26 | 2000-01-14 | Fujitsu Ltd | マルチcpuシステムのバス調停システム |
JP2003271545A (ja) * | 2002-03-12 | 2003-09-26 | Hitachi Ltd | データ処理システム |
JP2004287576A (ja) * | 2003-03-19 | 2004-10-14 | Matsushita Electric Ind Co Ltd | バスコントローラ |
US20050228927A1 (en) * | 2004-04-05 | 2005-10-13 | Philip Garcia | Bus utilization based on data transfers on the bus |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011133940A (ja) * | 2009-12-22 | 2011-07-07 | Seiko Epson Corp | アクセス調停装置、集積回路装置、電子機器、アクセス調停方法、及びプログラム |
Also Published As
Publication number | Publication date |
---|---|
US7539805B2 (en) | 2009-05-26 |
US20070204083A1 (en) | 2007-08-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11379272B2 (en) | Autoscaling using file access or cache usage for cluster machines | |
JP5770721B2 (ja) | 情報処理システム | |
US7882488B2 (en) | Software tool for synthesizing a real-time operating system | |
US8250557B2 (en) | Configuring a dependency graph for dynamic by-pass instruction scheduling | |
JP5445669B2 (ja) | マルチコアシステムおよび起動方法 | |
JP4697805B2 (ja) | データ処理装置 | |
JP2005516303A (ja) | 優先スケジューリングを備えたマルチプログラミングコンピュータシステムにおける優先レベルを設定する方法、マルチプログラミングコンピュータシステムおよびそれらのプログラム | |
JP2008186210A (ja) | 仮想計算機システムのプロセッサキャッピング方法 | |
JP2007305029A (ja) | リアルタイムosにおける処理時間配分方法 | |
US20110125986A1 (en) | Reducing inter-task latency in a multiprocessor system | |
US9740530B2 (en) | Decreasing the priority of a user based on an allocation ratio | |
JP2007072598A (ja) | バス調停方法及びバス調停プログラム | |
JP2021077180A (ja) | ジョブスケジューリングプログラム、情報処理装置及びジョブスケジューリング方法 | |
JP2012181578A (ja) | 更新制御装置及びプログラム | |
US10162679B2 (en) | Method and system for assigning a computational block of a software program to cores of a multi-processor system | |
JP4409568B2 (ja) | 帯域制御プログラム及びマルチプロセッサシステム | |
US20050066093A1 (en) | Real-time processor system and control method | |
JP6368452B2 (ja) | 非同期のデバイスによって実行されるタスクのスケジューリングの向上 | |
JP6156379B2 (ja) | スケジューリング装置、及び、スケジューリング方法 | |
JP2020173622A (ja) | 並列タスクスケジューリング方法 | |
JP5641128B2 (ja) | マルチコアプロセッサシステム、マルチコアプロセッサシステムの制御方法、およびマルチコアプロセッサシステムの制御プログラム | |
JP7064367B2 (ja) | デッドロック回避方法、デッドロック回避装置 | |
JP2009211649A (ja) | キャッシュシステム、その制御方法、及び、プログラム | |
JP2007193744A (ja) | 情報処理装置、プログラム、およびスケジューリング方法 | |
US20230367633A1 (en) | Gpu and gpu method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20071109 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20071116 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20071126 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080207 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20100806 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100810 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20110111 |