JP2011039775A5 - - Google Patents

Download PDF

Info

Publication number
JP2011039775A5
JP2011039775A5 JP2009186562A JP2009186562A JP2011039775A5 JP 2011039775 A5 JP2011039775 A5 JP 2011039775A5 JP 2009186562 A JP2009186562 A JP 2009186562A JP 2009186562 A JP2009186562 A JP 2009186562A JP 2011039775 A5 JP2011039775 A5 JP 2011039775A5
Authority
JP
Japan
Prior art keywords
data processing
control thread
thread
processing apparatus
control
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.)
Granted
Application number
JP2009186562A
Other languages
English (en)
Other versions
JP5452125B2 (ja
JP2011039775A (ja
Filing date
Publication date
Application filed filed Critical
Priority to JP2009186562A priority Critical patent/JP5452125B2/ja
Priority claimed from JP2009186562A external-priority patent/JP5452125B2/ja
Priority to EP10167783A priority patent/EP2287737A3/en
Priority to US12/826,093 priority patent/US20110041135A1/en
Publication of JP2011039775A publication Critical patent/JP2011039775A/ja
Publication of JP2011039775A5 publication Critical patent/JP2011039775A5/ja
Priority to US13/781,578 priority patent/US9176771B2/en
Application granted granted Critical
Publication of JP5452125B2 publication Critical patent/JP5452125B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Claims (13)

  1. バイス制御、および/または所定のデータ処理を行う、複数のスレッドと
    複数のスレッドを使用してアプリケーションを構成る制御スレッドと、を備えるデータ処理装置において、
    各々の前記スレッドの組合せと、一つの前記スレッドの実行に他のスレッドの処理結果を必要とするか否かの依存関係と、で、前記アプリケーションを定義し
    記制御スレッドは、
    所定の間隔で、および/または、各スレッドの処理完了時点で、繰り返し、前記スレッドの実行可否を調べ、
    実行可能な前記スレッドが複数ある場合、前記依存関係に基づく実行順序が遅い順に前記スレッドの実行を指示する
    ことを特徴とするデータ処理装置。
  2. 請求項1記載のデータ処理装置において、
    前記アプリケーションが複数定義され、
    前記制御スレッドは、
    各々の前記アプリケーションに与えられた優先順位に従い制御対象となった前記アプリケーションを定義する前記スレッドに実行を指示し、
    前記指示を与えた前記アプリケーションの制御が前記制御スレッドに戻ったとき、当該アプリケーションの優先順位を、他の前記アプリケーションより低くする
    ことを特徴とするデータ処理装置。
  3. 請求項記載のデータ処理装置において
    記優先順位が等しいアプリケーション間では、最後に実行を指示した前記スレッドに対応するアプリケーションの前記優先順位を低くする
    ことを特徴とするデータ処理装置。
  4. 請求項1から3のいずれか一に記載のデータ処理装置において、
    前記スレッドは、
    周辺デバイスを制御するデバイス制御スレッドと、
    CPUで実行する所定のデータ処理の各々に対応したCPU処理スレッドと、を含み、
    前記実行の指示を受けた前記デバイス制御スレッドは、
    前記指示に従い、対応する前記周辺デバイスを制御し、
    前記周辺デバイスからの完了通知に応答して、前記周辺デバイスの処理結果と前記完了通知を前記制御スレッドに送り、
    前記実行の指示を受けた前記CPU処理スレッドの各々は
    前記指示に従い、前記所定のデータ処理を実行し、
    前記所定のデータ処理の処理結果と通知を前記制御スレッドに送る
    ことを特徴とするデータ処理装置。
  5. 複数の周辺デバイスを動作順序に従って動作させるアプリケーションを定義したアプリケーション管理テーブル、
    前記複数の周辺デバイスの各々に対応して、前記周辺デバイスを制御するデバイス制御スレッド、及び、
    前記デバイス制御スレッドより高い優先度を有し、前記周辺デバイスで処理すべき入力データを有する前記デバイス制御スレッドの中で、前記アプリケーション管理テーブルで定義された前記動作順序が後の前記デバイス制御スレッドを選択して、実行させる制御スレッドを備える
    ことを特徴とするデータ処理装置。
  6. 請求項5記載のデータ処理装置において、
    前記デバイス制御スレッドは
    記周辺デバイスに処理すべき入力データを用意し、
    動作指示した後、前記周辺デバイスによる前記入力データの処理が完了するまで、前記制御スレッドに制御を戻す
    ことを特徴とするデータ処理装置。
  7. 請求項6記載のデータ処理装置において、
    前記制御スレッドは、
    前記制御の戻りに応答して、前記周辺デバイスで処理すべき入力データを有する前記デバイス制御スレッドの中で、前記動作順序が、実行中の前記デバイス制御スレッドより前で、かつ最も後の前記デバイス制御スレッドを新たに選択して、実行させる
    ことを特徴とするデータ処理装置。
  8. 請求項記載のデータ処理装置において、
    記制御スレッドは、
    実行中の前記デバイス制御スレッドに対応する前記周辺デバイスと、新たに選択した前記デバイス制御スレッドに対応する前記周辺デバイスとを並列動作させる
    ことを特徴とするデータ処理装置。
  9. 請求項記載のデータ処理装置において、
    前記デバイス制御スレッドは、
    前記複数の周辺デバイスの中で複数の動作種別を有する周辺デバイスの各々の動作種別に対応して設けられる
    ことを特徴とするデータ処理装置。
  10. 請求項9記載のデータ処理装置において、
    前記制御スレッドは、
    前記アプリケーション管理テーブルで定義された第1のアプリケーションを処理するための、前記周辺デバイスの第1の動作種別の動作を制御する第1のデバイス制御スレッドと、前記アプリケーション管理テーブルで定義された第2のアプリケーションを処理するための、前記周辺デバイスの第2の動作種別の動作を制御する第2のデバイス制御スレッドとの動作タイミングが重なったとき、前記周辺デバイスが前記第1の動作種別と前記第2の動作種別との動作が交互に制御されるように、前記第1のデバイス制御スレッドと前記第2のデバイス制御スレッドとの実行を制御する
    ことを特徴とするデータ処理装置。
  11. 複数の周辺デバイスを動作順序に従って動作させるアプリケーションを定義したアプリケーション管理テーブルと、前記複数の周辺デバイスの各々対応して、前記周辺デバイスを制御するデバイス制御スレッドと、制御スレッドとを有するデータ処理装置におけるデータ処理方法であって、
    前記制御スレッドは、
    前記周辺デバイスで処理すべき入力データを有する前記デバイス制御スレッドの中で、前記アプリケーション管理テーブルで定義された前記動作順序が後の前記デバイス制御スレッドを選択し、選択した前記デバイス制御スレッドを実行する
    ことを特徴とするデータ処理方法。
  12. 請求項11記載のデータ処理方法において、
    前記デバイス制御スレッドは、
    前記周辺デバイスに処理すべき入力データを用意し、
    動作指示した後、前記周辺デバイスによる前記入力データの処理が完了するまで、前記制御スレッドに制御を戻す
    ことを特徴とするデータ処理方法。
  13. 請求項12記載のデータ処理方法において、
    前記制御スレッドは、
    前記制御の戻りに応答して、前記周辺デバイスで処理すべき入力データを有する前記デバイス制御スレッドの中で、前記動作順序が、実行中の前記デバイス制御スレッドより前で、かつ最も後の前記デバイス制御スレッドを新たに選択して、新たに選択した前記デバイス制御スレッドを実行する
    ことを特徴とするデータ処理方法。
JP2009186562A 2009-08-11 2009-08-11 データ処理装置及びデータ処理方法 Active JP5452125B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2009186562A JP5452125B2 (ja) 2009-08-11 2009-08-11 データ処理装置及びデータ処理方法
EP10167783A EP2287737A3 (en) 2009-08-11 2010-06-29 Data processor and data processing method
US12/826,093 US20110041135A1 (en) 2009-08-11 2010-06-29 Data processor and data processing method
US13/781,578 US9176771B2 (en) 2009-08-11 2013-02-28 Priority scheduling of threads for applications sharing peripheral devices

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009186562A JP5452125B2 (ja) 2009-08-11 2009-08-11 データ処理装置及びデータ処理方法

Publications (3)

Publication Number Publication Date
JP2011039775A JP2011039775A (ja) 2011-02-24
JP2011039775A5 true JP2011039775A5 (ja) 2012-08-23
JP5452125B2 JP5452125B2 (ja) 2014-03-26

Family

ID=43127278

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009186562A Active JP5452125B2 (ja) 2009-08-11 2009-08-11 データ処理装置及びデータ処理方法

Country Status (3)

Country Link
US (2) US20110041135A1 (ja)
EP (1) EP2287737A3 (ja)
JP (1) JP5452125B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102050815B1 (ko) * 2013-01-07 2020-01-08 삼성전자주식회사 휴대 단말기에서 근접 통신 기능을 제공하는 장치 및 방법
JP6905454B2 (ja) * 2017-11-10 2021-07-21 フォルシアクラリオン・エレクトロニクス株式会社 ナビゲーションシステム、ナビゲーション方法

Family Cites Families (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05250188A (ja) 1992-03-05 1993-09-28 Hitachi Ltd プロセスのプライオリティ制御方式
JPH11272627A (ja) 1998-03-23 1999-10-08 Nec Corp パイプライン型マルチプロセッサシステム
US6088044A (en) * 1998-05-29 2000-07-11 International Business Machines Corporation Method for parallelizing software graphics geometry pipeline rendering
US6477562B2 (en) * 1998-12-16 2002-11-05 Clearwater Networks, Inc. Prioritized instruction scheduling for multi-streaming processors
US6874144B1 (en) * 1999-04-05 2005-03-29 International Business Machines Corporation System, method, and program for implementing priority inheritance in an operating system
WO2001035209A2 (en) * 1999-11-09 2001-05-17 University Of Victoria Innovation And Development Corporation Modified move to rear list system and methods for thread scheduling
US20010027464A1 (en) * 2000-03-27 2001-10-04 General Instrument Corporation Operating system abstraction interface for broadband terminal platform firmware
US7111156B1 (en) * 2000-04-21 2006-09-19 Ati Technologies, Inc. Method and apparatus for multi-thread accumulation buffering in a computation engine
US6675285B1 (en) * 2000-04-21 2004-01-06 Ati International, Srl Geometric engine including a computational module without memory contention
US7039770B1 (en) * 2002-03-05 2006-05-02 Juniper Networks, Inc. Low latency request dispatcher
US6952214B2 (en) * 2002-07-12 2005-10-04 Sun Microsystems, Inc. Method for context switching a graphics accelerator comprising multiple rendering pipelines
JP3880942B2 (ja) * 2003-03-24 2007-02-14 株式会社東芝 プロセッサ、計算機及び優先度決定方法
US20040139441A1 (en) 2003-01-09 2004-07-15 Kabushiki Kaisha Toshiba Processor, arithmetic operation processing method, and priority determination method
US8281297B2 (en) * 2003-02-05 2012-10-02 Arizona Board Of Regents Reconfigurable processing
US7039914B2 (en) * 2003-03-07 2006-05-02 Cisco Technology, Inc. Message processing in network forwarding engine by tracking order of assigned thread in order group
US7278141B2 (en) * 2003-04-23 2007-10-02 International Business Machines Corporation System and method for adding priority change value corresponding with a lock to a thread during lock processing
JP2004334537A (ja) * 2003-05-07 2004-11-25 Sony Corp プログラム処理システム及びプログラム処理方法、並びにコンピュータ・プログラム
US20050071841A1 (en) * 2003-09-30 2005-03-31 Hoflehner Gerolf F. Methods and apparatuses for thread management of mult-threading
US7676809B2 (en) * 2003-10-09 2010-03-09 International Business Machines Corporation System, apparatus and method of enhancing priority boosting of scheduled threads
JP2004163963A (ja) 2003-12-15 2004-06-10 Casio Electronics Co Ltd 画像形成装置
US7797691B2 (en) * 2004-01-09 2010-09-14 Imec System and method for automatic parallelization of sequential code
US7634776B2 (en) * 2004-05-13 2009-12-15 Ittiam Systems (P) Ltd. Multi-threaded processing design in architecture with multiple co-processors
US7890735B2 (en) * 2004-08-30 2011-02-15 Texas Instruments Incorporated Multi-threading processors, integrated circuit devices, systems, and processes of operation and manufacture
US20060161582A1 (en) * 2005-01-18 2006-07-20 Microsoft Corporation Application object as primitive of operating system
US7380038B2 (en) * 2005-02-04 2008-05-27 Microsoft Corporation Priority registers for biasing access to shared resources
US7827554B2 (en) * 2005-06-20 2010-11-02 Microsoft Corporation Multi-thread multimedia processing
US7802256B2 (en) * 2005-06-27 2010-09-21 Microsoft Corporation Class scheduler for increasing the probability of processor access by time-sensitive processes
US7861060B1 (en) * 2005-12-15 2010-12-28 Nvidia Corporation Parallel data processing systems and methods using cooperative thread arrays and thread identifier values to determine processing behavior
GB0605349D0 (en) * 2006-03-17 2006-04-26 Imec Inter Uni Micro Electr Reconfigurable multi-processing coarse-grain array
GB2443277B (en) * 2006-10-24 2011-05-18 Advanced Risc Mach Ltd Performing diagnostics operations upon an asymmetric multiprocessor apparatus
US7853950B2 (en) * 2007-04-05 2010-12-14 International Business Machines Corporarion Executing multiple threads in a processor
US8117618B2 (en) * 2007-10-12 2012-02-14 Freescale Semiconductor, Inc. Forward progress mechanism for a multithreaded processor
US8245232B2 (en) * 2007-11-27 2012-08-14 Microsoft Corporation Software-configurable and stall-time fair memory access scheduling mechanism for shared memory systems
US20090138683A1 (en) * 2007-11-28 2009-05-28 Capps Jr Louis B Dynamic instruction execution using distributed transaction priority registers
US8694997B2 (en) * 2007-12-12 2014-04-08 University Of Washington Deterministic serialization in a transactional memory system based on thread creation order
FR2925187B1 (fr) * 2007-12-14 2011-04-08 Commissariat Energie Atomique Systeme comportant une pluralite d'unites de traitement permettant d'executer des taches en parallele,en mixant le mode d'execution de type controle et le mode d'execution de type flot de donnees
US20090165007A1 (en) * 2007-12-19 2009-06-25 Microsoft Corporation Task-level thread scheduling and resource allocation
TWI462011B (zh) * 2007-12-28 2014-11-21 Accton Technology Corp 程序之執行緒群組管理方法
US20090320021A1 (en) * 2008-06-19 2009-12-24 Microsoft Corporation Diagnosis of application performance problems via analysis of thread dependencies
US8285973B2 (en) * 2008-08-04 2012-10-09 International Business Machines Corporation Thread completion rate controlled scheduling
US8650554B2 (en) * 2010-04-27 2014-02-11 International Business Machines Corporation Single thread performance in an in-order multi-threaded processor

Similar Documents

Publication Publication Date Title
JP2008529121A5 (ja)
JP2014157603A5 (ja)
WO2008155800A1 (ja) 命令実行制御装置及び命令実行制御方法
JP2010204880A5 (ja)
DE602005009494D1 (de) Bildung einer befehlsreihenfolge in einer nicht sequentiell dma-befehlswarteschlange
JP2015515774A5 (ja)
JP2012232363A5 (ja) ロボット制御システム及びロボットシステム
JP2015158943A5 (ja)
WO2015181533A3 (en) Manufacturing methods
JP2006243864A5 (ja)
JP2013073318A5 (ja)
EP2546756A3 (en) Effective utilization of flash interface
JP2016095778A5 (ja)
JP2020521275A5 (ja)
JP2011039775A5 (ja)
TW201830197A (zh) 在等待事件期間之處理器節電
RU2012136375A (ru) Способ обработки процессов машиной состояний
JP2010257342A5 (ja)
CN102662780B (zh) 多可编程器件系统中电源保护方法及装置
JP2010160713A (ja) フィールド制御装置およびフィールド制御方法
JP2017220240A5 (ja)
JP5630798B1 (ja) プロセッサーおよび方法
WO2014012983A3 (fr) Procede de gestion des fils d'execution dans une unite informatique et unite informatique agencee pour la mise en oeuvre de ce procede
JP2014032619A5 (ja)
JP2017016250A (ja) バリア同期装置、バリア同期方法及びプログラム