JP2009151375A - Job scheduling method - Google Patents

Job scheduling method Download PDF

Info

Publication number
JP2009151375A
JP2009151375A JP2007326372A JP2007326372A JP2009151375A JP 2009151375 A JP2009151375 A JP 2009151375A JP 2007326372 A JP2007326372 A JP 2007326372A JP 2007326372 A JP2007326372 A JP 2007326372A JP 2009151375 A JP2009151375 A JP 2009151375A
Authority
JP
Japan
Prior art keywords
job
time
processing
execution time
information
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
JP2007326372A
Other languages
Japanese (ja)
Inventor
Hiroaki Sugita
弘晃 杉田
Yoshiyuki Onishi
善之 大西
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.)
Toshiba Corp
Toshiba Development and Engineering Corp
Original Assignee
Toshiba Corp
Toshiba Digital Media Engineering 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 Toshiba Corp, Toshiba Digital Media Engineering Corp filed Critical Toshiba Corp
Priority to JP2007326372A priority Critical patent/JP2009151375A/en
Publication of JP2009151375A publication Critical patent/JP2009151375A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Television Signal Processing For Recording (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a job scheduling method for efficiently using the capability of a CPU 13. <P>SOLUTION: In this job scheduling method in which a CPU 13 performs scheduling in a fixed cycle execution system for executing a plurality of processings within a scheduled time based on job management information, the job management information has the priority information of each of the plurality of processings and the execution time information of a plurality of jobs capable of executing each of the plurality of processings, and when the spare time of the CPU 13 is generated, the job whose execution time is longer than the next to the job scheduled to be performed is selected from among a plurality of jobs based on priority. <P>COPYRIGHT: (C)2009,JPO&INPIT

Description

本発明は、複数の処理を定周期実行方式で行う際のジョブスケジューリング方法に関する。   The present invention relates to a job scheduling method for performing a plurality of processes by a fixed cycle execution method.

一つのプロセッサを用いて異なる複数の処理を事実上、同時進行で行うマルチタスク処理においては、それぞれの処理を行う時間を予め予約時間として割り当てる定周期実行方式の処理が知られている。定周期実行方式の処理では、それぞれの処理は設定された定周期の時間で繰り返し実行される。また、データサンプリングのように、所定のサンプリング時間内に一連の予め定められた処理を繰り返し実行する処理も、サンプリング時間を予約時間と考えれば、定周期実行方式の一つの類型である。定周期実行方式では、予約時間内に処理を完了するために、予め、プロセッサが、それぞれの処理を実行するためのジョブの実行に要する時間をジョブ管理情報として記憶している。そして、定周期実行方式では、ジョブ管理情報を基に予約時間内に処理を完了するように、複数のジョブをキューとして登録するスケジューリングを行うスケジューラが用いられている。スケジューラは、予約時間内に処理を完了するだけでなく、処理の事象待ち、すなわちプロセッサの待機状態による無駄な空き時間を削減するために、ジョブ管理情報を基に、無駄な空き時間を最小とするスケジューリングを行う。   In a multitask process in which a plurality of different processes are performed at the same time using a single processor, a fixed-cycle execution process is known in which a time for performing each process is assigned as a reserved time in advance. In the fixed-cycle execution process, each process is repeatedly executed at a set fixed-cycle time. Also, a process of repeatedly executing a series of predetermined processes within a predetermined sampling time, such as data sampling, is one type of fixed-cycle execution method when the sampling time is considered as a reserved time. In the fixed-cycle execution method, in order to complete the processing within the reserved time, the processor previously stores the time required for executing the job for executing each processing as job management information. In the fixed-cycle execution method, a scheduler that performs scheduling for registering a plurality of jobs as a queue is used so that the processing is completed within a reserved time based on job management information. In addition to completing the processing within the reserved time, the scheduler minimizes the wasted free time based on the job management information in order to reduce the wasted free time due to the processing event waiting, that is, the processor standby state. To perform scheduling.

しかし、全く同じジョブの処理であっても、プロセッサが実際に処理を完了するまでの時間は常に一定という訳ではない。これはプロセッサ自体の処理速度の変動だけでなく、周辺バスの転送速度等、種々の要因による。このため、必ず予約時間内に処理を完了するためには、ジョブ管理情報として記憶しておく特定のジョブに要する時間は、最も時間がかかる最悪実行時間(WCET: Worst-Case Execution Time)を記憶しておく必要がある。   However, even when processing exactly the same job, the time until the processor actually completes processing is not always constant. This is due not only to fluctuations in the processing speed of the processor itself, but also to various factors such as the transfer speed of the peripheral bus. For this reason, to complete the processing within the scheduled time, the worst execution time (WCET: Worst-Case Execution Time) is stored as the time required for a specific job stored as job management information. It is necessary to keep it.

このため、プロセッサが実際に処理を完了するまでの時間が、最悪実行時間よりも短い場合には、プロセッサの空き時間が増加してしまい、プロセッサの能力を効率的に使うことが出来ないという問題があった。前記問題は、実行時間の変動が大きい処理の場合に特に顕著であった。   For this reason, when the time until the processor actually completes processing is shorter than the worst execution time, the processor idle time increases, and the processor capacity cannot be used efficiently. was there. The above problem is particularly remarkable in the case of a process with a large variation in execution time.

このため、特許文献1には、CPUの待ち時間が、指定値を越えると、優先度の高いタスクと優先度の低いタスクとを交互にスケジューリングするタスクスケジューリング方式が開示されている。   For this reason, Patent Document 1 discloses a task scheduling method that alternately schedules a high priority task and a low priority task when the CPU wait time exceeds a specified value.

ここで、近年のテレビジョン受像機においては、デジタル化により複雑な多数の処理を同時並行で行うため、マルチコアプロセッサ、例えば1つのCPUの中に1個の汎用的なプロセッサコアと、8個のシンプルなプロセッサコアを組み合わせたヘテロジニアスマルチコアが使用されている。しかし、テレビジョン受像機においては、1秒間に60枚の画像すなわち、奇数と偶数の走査線毎に30枚/秒の計60枚/秒の画像を表示しなければならない。このため、複数の処理を、1/30秒を周期とする定周期実行方式で行うためのジョブスケジューリングが重要となっている。   Here, in recent television receivers, since a large number of complicated processes are performed in parallel by digitization, a multi-core processor, for example, one general-purpose processor core in one CPU and eight Heterogeneous multi-core combining simple processor cores is used. However, in a television receiver, 60 images per second, that is, an image of 60 images / second in total of 30 images / second for every odd and even number of scanning lines must be displayed. For this reason, job scheduling for performing a plurality of processes by a fixed-cycle execution method with a period of 1/30 second is important.

またテレビジョン受像機のモニタの大画面化に伴い、複数のチャンネルおよび/または入力端子等から入力された複数の入力画像信号から取り出した複数の画像を、複数の領域に分割されたひとつの表示画面の各領域に表示するマルチ画面表示機能が利用されるようになってきている。   In addition, with the increase in the screen size of television receiver monitors, a single display in which a plurality of images taken from a plurality of input image signals input from a plurality of channels and / or input terminals is divided into a plurality of regions. A multi-screen display function for displaying in each area of the screen has been used.

マルチ画面表示機能を持つテレビジョン受信機では、複数の入力画像信号の中から選択された複数の画像信号のそれぞれを、マルチ画面処理回路にて画像サイズ変換処理およびフォーマット変換処理してから1つの表示画面として合成する必要がある。このため、ジョブスケジューリングでは、少なくとも画像サイズ変換処理とフォーマット変換処理とを行うための予約時間を設定している。   In a television receiver having a multi-screen display function, each of a plurality of image signals selected from a plurality of input image signals is subjected to image size conversion processing and format conversion processing by a multi-screen processing circuit. It is necessary to compose as a display screen. For this reason, in job scheduling, a reserved time for performing at least image size conversion processing and format conversion processing is set.

しかし、マルチ画面表示する画像の数、すなわち入力画像信号の数によりマルチ画面処理回路が処理に要する時間は変化する。また、ヘテロジニアスマルチコアの他のプロセッサコアで動作しているプログラムがバンド幅を圧縮する処理を行ったりすると、マルチ画面処理しているCPUの速度も影響を受けて遅くなることがある。   However, the time required for processing by the multi-screen processing circuit varies depending on the number of images to be displayed on the multi-screen, that is, the number of input image signals. In addition, when a program running on another processor core of the heterogeneous multi-core performs a process of compressing the bandwidth, the speed of the CPU that performs the multi-screen process may be affected and become slow.

このため、最悪実行時間を基にした予定時間を用いると、プロセッサの空き時間が増加してしまい、プロセッサの能力を効率的に使うことが出来ないという問題が顕著であった。   For this reason, when the scheduled time based on the worst execution time is used, the processor idle time increases, and the problem that the processor capacity cannot be used efficiently is remarkable.

本発明は上記問題に鑑みてなされたものであり、プロセッサの能力を効率的に使うことができるジョブスケジューリング方法を提供するものである。
特開平4−191935号公報
The present invention has been made in view of the above problems, and provides a job scheduling method capable of efficiently using the capacity of a processor.
JP-A-4-191935

本発明は、プロセッサの能力を効率的に使うことができるジョブスケジューリング方法を提供することを目的とする。   An object of the present invention is to provide a job scheduling method that can efficiently use the capacity of a processor.

本願発明の一態様によれば、ジョブ管理情報を基に、CPUが、予約時間内に複数の処理を実行する定周期実行方式のスケジューリングを行う、ジョブスケジューリング方法であって、ジョブ管理情報が、複数の処理のそれぞれの優先度情報と、複数の処理のそれぞれを実行可能な複数のジョブの実行時間情報とを有し、CPUの空き時間が生じる場合、優先度に基づき、かつ、複数のジョブの中で実行予定のジョブの次に実行時間の長いジョブを選択することを特徴とするジョブスケジューリング方法が提供される。   According to one aspect of the present invention, based on job management information, a CPU performs scheduling in a periodic execution method in which a plurality of processes are executed within a reserved time, and the job management information includes: A plurality of jobs, each having priority information and execution time information of a plurality of jobs capable of executing each of the plurality of processes, and when a CPU idle time occurs, A job scheduling method is provided that selects a job having a long execution time next to a job scheduled to be executed.

本発明は、プロセッサの能力を効率的に使うことができるジョブスケジューリング方法を提供するものである。   The present invention provides a job scheduling method that can efficiently use the capacity of a processor.

以下、図面を参照して本発明の実施の形態を説明する。
<第1の実施の形態>
<スケジューラの構成>
最初に、図1から図5を用いて、本発明の第1の実施の形態にかかるスケジューラ100の構成について説明する。
Embodiments of the present invention will be described below with reference to the drawings.
<First Embodiment>
<Scheduler configuration>
First, the configuration of the scheduler 100 according to the first embodiment of the present invention will be described with reference to FIGS. 1 to 5.

図1は、本実施の形態にかかるマルチ画面処理回路11を有するテレビジョン受像機1の構成を示した構成図であり、図2はテレビジョン受像機1のマルチ画面の例を示した図であり、図3は、スケジューラ100のブロック図であり、図4は、ジョブ管理情報105の例を示した表であり、図5は、画像サイズ変換処理A2が実行可能なアルゴリズムが異なる複数のジョブを説明するための説明図である。   FIG. 1 is a configuration diagram showing a configuration of a television receiver 1 having a multi-screen processing circuit 11 according to the present embodiment, and FIG. 2 is a diagram showing an example of a multi-screen of the television receiver 1. 3 is a block diagram of the scheduler 100, FIG. 4 is a table showing an example of the job management information 105, and FIG. 5 shows a plurality of jobs with different algorithms that can be executed by the image size conversion processing A2. It is explanatory drawing for demonstrating.

図1に示すように、本実施の形態にかかるテレビジョン受像機1は、多数の入力画像信号の中から選択された複数の画像信号をいったんメモリ15に記憶し、そのデータを基に、マルチ画面処理回路11にて、それぞれの画像信号の画像サイズ変換処理と、フォーマット変換処理を行い、再びメモリ15を介して、1つの表示画面として画像出力手段であるモニタ12に出力する。例えば、パラボラアンテナ2で受信されたデジタルテレビ放送の信号は、放送局および放送仕様により、それぞれ異なるデコーダーで処理される。図1では、簡略化し、4個のデコーダー4、5、6、7からなるデコーダー群を図示している。また、内蔵ハードディスクドライブ(HDD)8に記録された画像信号や、外部端子9に接続された図示しないビデオカメラまたはゲーム機からの画像信号も、テレビジョン受像機1には入力される。これら複数の入力画像信号の中から切替回路10により選択された画像信号がマルチ画面処理回路11にて処理される。マルチ画面処理回路11は、複数の画像信号を、1つの表示画像信号に合成する回路である。   As shown in FIG. 1, the television receiver 1 according to the present embodiment temporarily stores a plurality of image signals selected from a large number of input image signals in a memory 15, and based on the data, The screen processing circuit 11 performs an image size conversion process and a format conversion process for each image signal, and outputs the image signal to the monitor 12 as an image output unit via the memory 15 again. For example, digital television broadcast signals received by the parabolic antenna 2 are processed by different decoders depending on the broadcast station and broadcast specifications. In FIG. 1, a simplified decoder group including four decoders 4, 5, 6, and 7 is illustrated. Further, an image signal recorded in a built-in hard disk drive (HDD) 8 and an image signal from a video camera or a game machine (not shown) connected to the external terminal 9 are also input to the television receiver 1. An image signal selected by the switching circuit 10 from the plurality of input image signals is processed by the multi-screen processing circuit 11. The multi-screen processing circuit 11 is a circuit that combines a plurality of image signals into one display image signal.

マルチ画面処理回路11の、CPU13は、1秒間に60枚の画像すなわち、奇数と偶数の走査線毎に30枚/秒の画像信号を処理するために、1/30秒を周期とする定周期実行方式のジョブスケジューリングを行うスケジューラ100が登録したキューメモリ情報に従い処理を行う。なお、CPU13は、マルチ画面処理回路11の処理だけでなく、別の処理Bも、1/30秒を周期とする定周期実行方式にて処理している。   The CPU 13 of the multi-screen processing circuit 11 has a fixed period of 1/30 seconds in order to process 60 images per second, that is, 30 / second image signals for every odd and even scanning lines. Processing is performed according to the queue memory information registered by the scheduler 100 that performs job scheduling of the execution method. Note that the CPU 13 processes not only the process of the multi-screen processing circuit 11 but also another process B by a fixed-cycle execution method with a period of 1/30 second.

次に、図2に、マルチ画面処理回路11により合成されたマルチ画面を表示したテレビジョン受像機のモニタ表示画面20の例を示す。図2(A)は、通常の1画面20Aを表示しており、図2(B)は同じ大きさの2つの画面20B、20Cを並べて表示したダブルウィンドウ画面を示しており、図2(C)は、小さな子画面20Dと、大きな親画面20Eを並べて表示したダブルウィンドウ画面を示しており、図2(D)は、4つの画面20F、20G、20H、20Iを同時に表示したマルチウィンドウ画面を示している。通常の画面20Aは、(1920×1080)画素で表示されているが、マルチ画面の各画面は、縮小して表示されている。すなわち、画面20B、20C、20F、20G、20Hおよび20Iは、いずれも通常画面20Aの半分の(960×540)画素で表示され、20Dは通常画面20Aの4分の1の(480×270)画素で表示され、20Eは通常画面20Aの4分の3の(960×540)画素で表示されている。   Next, FIG. 2 shows an example of a monitor display screen 20 of a television receiver that displays a multi-screen synthesized by the multi-screen processing circuit 11. 2A shows a normal single screen 20A, and FIG. 2B shows a double window screen in which two screens 20B and 20C having the same size are displayed side by side. FIG. ) Shows a double window screen in which a small child screen 20D and a large parent screen 20E are displayed side by side. FIG. 2D shows a multi-window screen in which four screens 20F, 20G, 20H, and 20I are displayed simultaneously. Show. The normal screen 20A is displayed with (1920 × 1080) pixels, but each screen of the multi-screen is reduced and displayed. That is, the screens 20B, 20C, 20F, 20G, 20H, and 20I are all displayed with (960 × 540) pixels that are half of the normal screen 20A, and 20D is a quarter (480 × 270) of the normal screen 20A. Displayed with pixels, 20E is displayed with (960 × 540) pixels, which is three-fourths of the normal screen 20A.

次に、図3に、本実施の形態にかかるスケジューラ100のブロック図を示す。スケジューラ100は、CPU13が実行するジョブをキュー(Queue)として、キューメモリ108に登録する、すなわち、スケジューリングを行う。図2に示したようなマルチ画面を表示するために、マルチ画面処理回路11は、少なくとも2つの異なる目的の処理を実行しなければならない。すなわち、元の画像信号のフォーマットを変換するフォーマット変換処理(以下、処理A1という。)と、元の画像信号の画像サイズを変換する画像サイズ変換処理(以下、処理A2という。)である。元の画像信号の画像サイズとしては、HD(1920×1080)やSD(720×480)等があるが、ここでは、元の画像信号の画像サイズをHDとし、処理A2を縮小する画像サイズ変換処理として説明する。もちろん、拡大する画像サイズ変換もある。   Next, FIG. 3 shows a block diagram of the scheduler 100 according to the present embodiment. The scheduler 100 registers the job executed by the CPU 13 as a queue in the queue memory 108, that is, performs scheduling. In order to display a multi-screen as shown in FIG. 2, the multi-screen processing circuit 11 must execute at least two different purposes. That is, a format conversion process (hereinafter referred to as process A1) for converting the format of the original image signal and an image size conversion process (hereinafter referred to as process A2) for converting the image size of the original image signal. The image size of the original image signal includes HD (1920 × 1080), SD (720 × 480), etc. Here, the image size conversion that reduces the processing A2 by setting the image size of the original image signal to HD This will be described as processing. Of course, there is an image size conversion to enlarge.

以下、処理A1と処理A2を合わせて処理Aとし、処理Aと共に同じCPUで定周期実行する処理を処理Bとする。ここで、図3に示したキューメモリ108に登録されたキューは、定周期時間である30分の1秒すなわち約33msを四角形の縦の長さで表現し、そのうちの処理Aを実行する予約時間が、例えば定周期時間の70%であることを表している。処理Aと処理Bのそれぞれの予約時間は再設定することが可能であるが、以下は、予約時間が固定されている状態のジョブスケジューリングについて説明する。すなわち、処理Aは、約33msの定周期時間の70%である約23msで、処理A1と処理A2を実行する例について説明する。   Hereinafter, the process A1 and the process A2 are collectively referred to as a process A, and a process that is executed together with the process A by the same CPU is referred to as a process B. Here, the queue registered in the queue memory 108 shown in FIG. 3 represents a fixed cycle time of 1/30 second, that is, about 33 ms, expressed by a vertical length of a rectangle, and a reservation for executing the processing A among them is performed. For example, the time is 70% of the fixed cycle time. Although the reservation times of the processes A and B can be reset, the job scheduling in a state where the reservation time is fixed will be described below. That is, an example in which the process A is executed in about 23 ms, which is 70% of the fixed cycle time of about 33 ms, will be described.

図3に示すように、スケジューラ100は、キューメモリ108にジョブを登録するために、ジョブ管理情報メモリ105に記憶されている情報を基に、ジョブを選択する選択器103と、選択器103が選択したジョブをキューメモリ108に登録するリセット器102から構成されている。また、検出器104は定周期スケジューラ上で走る一連のプロセスのCPU13の利用状況に関するデータを収集するものであり、例えば、登録されたキューメモリ108の情報に従い、CPU13が処理を行った時に処理を完了するまでに要した実際の時間(以下、「実測実行時間」という。)を検出する。   As illustrated in FIG. 3, the scheduler 100 includes a selector 103 that selects a job based on information stored in the job management information memory 105 and a selector 103 for registering a job in the queue memory 108. The resetting unit 102 registers the selected job in the queue memory 108. The detector 104 collects data related to the usage status of the CPU 13 in a series of processes running on the fixed-cycle scheduler. For example, the detector 104 performs processing when the CPU 13 performs processing according to information in the registered queue memory 108. The actual time required for completion (hereinafter referred to as “actual measurement execution time”) is detected.

ジョブ管理情報メモリ105は、処理を実際に実行する複数のジョブの管理情報を記憶するメモリであり、図4に示すように本実施の形態のジョブスケジューリング方法においては、処理開始時には、少なくとも処理の優先度情報とジョブの最悪実行時間情報とを含む基本情報107を有している。基本情報107は処理開始前に定周期時間等と共にパラメータとして入力される。また、ジョブ管理情報メモリ105は、処理開始後に検出器104の情報を基に入力される実測実行時間情報である動的情報106も有している。   The job management information memory 105 is a memory for storing management information of a plurality of jobs that actually execute processing. As shown in FIG. 4, in the job scheduling method according to the present embodiment, at least when processing is started, Basic information 107 including priority information and worst execution time information of a job is included. The basic information 107 is input as a parameter together with a fixed period time before the processing is started. The job management information memory 105 also has dynamic information 106 that is actually measured execution time information that is input based on information from the detector 104 after the start of processing.

本実施の形態のジョブスケジューリングでは、図4に示すように、ある一つの処理が実行可能な複数のジョブから一のジョブを選択しスケジューリングを行う。ここでは、元の画像信号の画像サイズを縮小するという画像サイズ変換処理A2に対して、ジョブA21、ジョブA22およびジョブA23という3つのジョブを用いる例を示している。ジョブA21、ジョブA22およびジョブA23は、それぞれが画像サイズ変換処理を単独で実行することが可能なジョブである。しかし、3つのジョブは、以下に説明するように画像サイズ変換処理を行うためのアルゴリズムが異なる。   In the job scheduling of this embodiment, as shown in FIG. 4, one job is selected from a plurality of jobs that can execute a certain process, and scheduling is performed. Here, an example is shown in which three jobs of job A21, job A22, and job A23 are used for the image size conversion processing A2 for reducing the image size of the original image signal. Job A21, job A22, and job A23 are jobs that can individually execute image size conversion processing. However, the three jobs have different algorithms for performing image size conversion processing as described below.

ここで、図5を用いて、画像サイズ変換処理、すなわち、元の画像信号の画像サイズを縮小する処理に用いるジョブについて説明する。例えば、図2(D)に示したように、4つの画像を同時に画面に表示するためには、それぞれの画像サイズを4分の1に縮小しなければならない。なお、画像サイズを縮小するジョブには種々の異なるアルゴリズムを用いることができるが、ここでは説明を簡単にするために画素データを用いた簡単なアルゴリズムの例を用いて説明する。   Here, a job used for image size conversion processing, that is, processing for reducing the image size of the original image signal will be described with reference to FIG. For example, as shown in FIG. 2D, in order to simultaneously display four images on the screen, the size of each image must be reduced to a quarter. Note that various different algorithms can be used for a job for reducing the image size. Here, for simplicity of explanation, an example of a simple algorithm using pixel data will be described.

すなわち、図5のaで示したように、元のフル画素データが横6画素縦4画素の24画素から構成されている場合、画像サイズを4分の1に縮小するとは、横3画素縦2画素の6画素に変換することである。アルゴリズムa21では、フル画素データを縦2画素横2画素の4画素の中から、ランダムに1画素を選択し、その画素を集合して縮小画像データを作成する、いわゆる間引きアルゴリズムである。これに対して、アルゴリズムa22は、フル画素データの、縦2画素横2画素の4画素の情報を平均化して新規な画素を作成し、その画素を集合して縮小画像データを作成する、いわゆる単純平均化アルゴリズムである。アルゴリズムa23は、やはり縦3画素横3画素の9画素の情報を平均化する平均化アルゴリズムであるが、単純に平均化するのではなく、中心画素からの距離に応じて縮小画素への寄与度を変える。このため、フル画素のうちの1つの画素の情報が、複数の縮小画素に重み付けして反映される、いわゆる複合平均化アルゴリズムである。   That is, as shown in FIG. 5a, when the original full pixel data is composed of 24 pixels of 6 pixels horizontally and 4 pixels vertically, to reduce the image size to 1/4, It is to convert to 6 pixels of 2 pixels. The algorithm a21 is a so-called thinning algorithm in which one pixel is randomly selected from four pixels of 2 pixels in the vertical direction and 2 pixels in the horizontal direction as the full pixel data, and the reduced image data is created by collecting the pixels. On the other hand, the algorithm a22 creates a new pixel by averaging information of 4 pixels of 2 pixels in the vertical direction and 2 pixels in the horizontal direction of the full pixel data, and creates the reduced image data by collecting the pixels. It is a simple averaging algorithm. The algorithm a23 is also an averaging algorithm that averages the information of nine pixels of three vertical pixels and three horizontal pixels. However, the algorithm a23 does not simply average, but contributes to the reduced pixels according to the distance from the central pixel. change. Therefore, this is a so-called composite averaging algorithm in which information of one pixel among the full pixels is reflected by weighting a plurality of reduced pixels.

間引きアルゴリズムであるアルゴリズムa21は最も簡単なアルゴリズムであるため、アルゴリズムa21を用いるジョブA21は、図4に示すように、処理時間が短く、例えば最悪実行時間は15msである。しかし、アルゴリズムa21は単なる間引きであるので、縮小された画像の品質は良くない、すなわち、アルゴリズムa21は処理の結果品質は低い。これに対して、単純平均化アルゴリズムであるアルゴリズムa22は比較的簡単なアルゴリズムであるため、アルゴリズムa22を用いるジョブA22は、図4に示すように、処理時間が比較的短く、例えば最悪実行時間は25msである。また、アルゴリズムa22は平均化処理しているので、縮小された画像の品質は普通、すなわち、アルゴリズムa22は処理の結果品質は中である。そして、複合平均化アルゴリズムであるアルゴリズムa23は複雑であるため、アルゴリズムa23を用いるジョブA23は、図4に示すように、処理時間が長く、例えば最悪実行時間は35msである。しかし、アルゴリズムa23は多数の画素を重み付けして平均化処理しているので、縮小された画像の品質はよい、すなわち、アルゴリズムa23は処理の結果品質は高である。   Since the algorithm a21 which is a thinning algorithm is the simplest algorithm, the job A21 using the algorithm a21 has a short processing time as shown in FIG. 4, for example, the worst execution time is 15 ms. However, since the algorithm a21 is simply thinning out, the quality of the reduced image is not good, that is, the algorithm a21 has a low quality as a result of processing. On the other hand, since the algorithm a22 which is a simple averaging algorithm is a relatively simple algorithm, the job A22 using the algorithm a22 has a relatively short processing time as shown in FIG. 4, for example, the worst execution time is 25 ms. Further, since the algorithm a22 is averaging, the quality of the reduced image is normal, that is, the algorithm a22 has a medium quality as a result of processing. Since the algorithm a23, which is a complex averaging algorithm, is complicated, the job A23 using the algorithm a23 has a long processing time as shown in FIG. 4, for example, the worst execution time is 35 ms. However, since the algorithm a23 performs averaging processing by weighting a large number of pixels, the quality of the reduced image is good, that is, the algorithm a23 has high processing quality.

なお、上記説明で、例えば、アルゴリズムa21によるジョブ21の処理の結果品質が低いといっても、他の処理時間が長いアルゴリズムによるジョブと比較しての相対的な品質であり、絶対的な品質が低いわけでなく、ジョブ21の処理も、実用上、十分な結果品質を有している。   In the above description, for example, even if the quality of the result of processing of the job 21 by the algorithm a21 is low, it is a relative quality compared to the job of the algorithm by which other processing time is long, and the absolute quality. The processing of job 21 also has a sufficient result quality for practical use.

また、図4に示すように、元の画像信号のフォーマットを変換するフォーマット変換処理である処理A1についても、処理A1が実行可能な複数のジョブA11、ジョブA12およびジョブA13という3つのジョブを用いる。ジョブA11は簡単なアルゴリズムのため、処理時間が短く、例えば最悪実行時間は7msである。しかし、ジョブA11は単純な処理のため、変換された画像の品質は悪い、すなわち、ジョブA11は処理の結果品質は低である。これに対してジョブA12は、やや簡単なアルゴリズムのため、処理時間が比較的短く、例えば最悪実行時間は10msである。そして、ジョブA12は変換された画像の品質は普通、すなわち、処理の結果品質は中である。そして、ジョブA13は複雑なアルゴリズムのため、処理時間が長く、例えば最悪実行時間は15msである。しかし、ジョブA13は変換された画像の品質はよい、すなわち、処理の結果品質は高である。   Also, as shown in FIG. 4, the process A1, which is a format conversion process for converting the format of the original image signal, uses a plurality of jobs A11, A12, and A13 that can execute the process A1. . Since the job A11 is a simple algorithm, the processing time is short, for example, the worst execution time is 7 ms. However, since the job A11 is a simple process, the quality of the converted image is poor, that is, the job A11 has a low quality as a result of the process. On the other hand, since the job A12 is a slightly simple algorithm, the processing time is relatively short. For example, the worst execution time is 10 ms. In job A12, the quality of the converted image is normal, that is, the quality of the result of processing is medium. Since job A13 is a complex algorithm, the processing time is long, for example, the worst execution time is 15 ms. However, the quality of the converted image is good for job A13, that is, the quality of the result of processing is high.

なお、図4のジョブ管理情報処理に示したように、フォーマット変換処理である処理A1の優先度は2であり、画像サイズ変換処理である処理A2の優先度1よりも低く設定されている。優先度は基本情報107として処理の開始前に入力される。また、ジョブの実測実行時間TA1およびTA2は後述するように、処理が実行された後に検出器104により記録される。   As shown in the job management information processing of FIG. 4, the priority of the process A1 that is the format conversion process is 2, which is set lower than the priority 1 of the process A2 that is the image size conversion process. The priority is input as basic information 107 before the start of processing. Further, the measured actual execution times TA1 and TA2 of the job are recorded by the detector 104 after the processing is executed, as will be described later.

なお、図4に示したジョブ管理情報において、アルゴリズムと結果品質は説明のために付加したものであり、実際のジョブ管理情報には含まれていなくてもよい。   In the job management information shown in FIG. 4, the algorithm and result quality are added for explanation, and may not be included in the actual job management information.

<スケジューリング方法>
次に、図6および図7を用いて、本実施の形態のスケジューリング方法について説明する。図6は、本実施の形態のスケジューラ100によるスケジューリング処理の流れを説明するためのフローチャートであり、図7は、スケジューラ100による再スケジューリングAを説明するための説明図である。
<Scheduling method>
Next, the scheduling method according to the present embodiment will be described with reference to FIGS. FIG. 6 is a flowchart for explaining the flow of scheduling processing by the scheduler 100 according to the present embodiment, and FIG. 7 is an explanatory diagram for explaining rescheduling A by the scheduler 100.

以下、図6のフローチャートに従い、本実施の形態のスケジューリング方法について説明する。   Hereinafter, the scheduling method of the present embodiment will be described with reference to the flowchart of FIG.

本実施の形態のスケジューリング方法においては、CPU13の空き時間Tiが生じる場合、優先度に基づき、かつ、複数のジョブの中で実行予定のジョブの次に実行時間の長いジョブを選択する。なお、ここで、空き時間が生じる場合とは、実際に空き時間Tiが生じた場合、および/または生じる見込みの場合を意味する。また、実際に空き時間Tiが生じた場合であっても、次の定周期処理において必ず空き時間Tiが生じるわけではない。 In the scheduling method of the present embodiment, when the idle time Ti of the CPU 13 occurs, the job having the longest execution time is selected based on the priority and next to the job scheduled to be executed among the plurality of jobs. Here, the case where the idle time occurs means a case where the idle time Ti actually occurs and / or a case where it is expected to occur. Further, even when the idle time Ti actually occurs, the idle time Ti does not necessarily occur in the next periodic processing.

<ステップS10>
処理の開始前に、処理パラメータとして、ジョブ管理情報メモリ105に、ジョブ管理情報の基本情報107と定周期時間とが入力される。図4に示すように、ジョブ管理情報メモリ105に記憶された基本情報107は、複数の処理の処理名、A1およびA2の優先度情報と、処理A1が実行可能な複数のジョブのジョブIDであるA11、A12およびA13とそれぞれのジョブの最悪実行時間情報と、処理A2が実行可能な複数のジョブのジョブIDであるA21、A22およびA23とそれぞれの最悪実行時間情報である。この時点において、ジョブ管理情報メモリ105の動的情報106、すなわちジョブの実測実行時間は、登録されていなくてもよいし、前回の処理の際の情報が含まれていてもよい。
<Step S10>
Prior to the start of processing, basic information 107 and fixed period time of job management information are input to the job management information memory 105 as processing parameters. As shown in FIG. 4, the basic information 107 stored in the job management information memory 105 includes process names of a plurality of processes, priority information of A1 and A2, and job IDs of a plurality of jobs that can be executed by the process A1. A11, A12, and A13 and worst execution time information of each job, and A21, A22, and A23 that are job IDs of a plurality of jobs that can be executed by the process A2 and worst execution time information. At this time, the dynamic information 106 in the job management information memory 105, that is, the actually measured execution time of the job may not be registered, and may include information at the time of the previous process.

<ステップS11>
選択器103は、処理開始時点においては、複数の処理の各ジョブを、基本情報107の優先度情報と最悪実行時間情報とを基に、CPU13の空き時間Tiが最小となるように選択し、キューメモリ108に登録する。すなわち、図8のスケジュールA0に示すように、選択器103は、予約時間の中で、CPUの空き時間Tiが最小となるように、優先度に基づき、処理A1および処理A2を実行可能な複数のジョブの中から、それぞれ1つのジョブを選択する。
<Step S11>
At the start of processing, the selector 103 selects each job of a plurality of processes based on the priority information and worst execution time information of the basic information 107 so that the free time Ti of the CPU 13 is minimized, Register in the queue memory 108. That is, as shown in the schedule A0 of FIG. 8, the selector 103 can execute a plurality of processes A1 and A2 based on the priority so that the CPU idle time Ti is minimized in the reserved time. One job is selected from each of the jobs.

例えば、予約時間が23msの場合は、選択器103は、まず優先度1の処理A2から最悪実行時間15msのジョブA21を選択し、次に優先度2の処理A1から最悪実行時間7msのジョブA11を選択する。すると、図7のスケジュールA0に示すように、予約時間23msに対して、空き時間Tiは1msとなる。   For example, when the reservation time is 23 ms, the selector 103 first selects the job A21 having the worst execution time of 15 ms from the processing A2 with the priority level 1, and then selects the job A11 having the worst execution time of 7 ms from the processing A1 with the priority level 2. Select. Then, as shown in the schedule A0 in FIG. 7, the free time Ti becomes 1 ms with respect to the reservation time of 23 ms.

なお、選択器103は、各ジョブの実測実行時間情報が、ジョブ管理情報メモリ105の動的情報106に記憶されている場合には、最悪実行時間情報の替わりに、実測実行時間情報を用いて各ジョブを選択する。すなわち、選択器103が最悪実行時間情報を基にジョブ選択を行うのは、それぞれのジョブが未実行の場合である。   Note that when the measured execution time information of each job is stored in the dynamic information 106 of the job management information memory 105, the selector 103 uses the measured execution time information instead of the worst execution time information. Select each job. That is, the selector 103 selects a job based on the worst execution time information when each job is not executed.

<ステップS12>
CPU13はスケジューラ100が登録したキューメモリ108の情報に従い、処理A1をジョブA11で、実行する。
<Step S12>
The CPU 13 executes the process A1 with the job A11 according to the information in the queue memory 108 registered by the scheduler 100.

<ステップS13>
処理A1が完了すると、検出器104は、処理A1のジョブA11の実測実行時間TA1であるtA11を検出する。そして、検出器104は、ジョブA11の実測実行時間tA11、例えば4ms、を、ジョブ管理情報メモリ105の動的情報106に記録する。
<Step S13>
When the process A1 is completed, the detector 104 detects tA11 which is the actually measured execution time TA1 of the job A11 of the process A1. Then, the detector 104 records the actual measurement execution time tA11 of the job A11, for example, 4 ms, in the dynamic information 106 of the job management information memory 105.

<ステップS14>
次に、検出器104は、実行予定のジョブA21のジョブ管理情報メモリ105に記憶されている実行時間と予約時間から、CPU13の空き時間Tiを推算する。
<Step S14>
Next, the detector 104 estimates the free time Ti of the CPU 13 from the execution time and the reserved time stored in the job management information memory 105 of the job A21 scheduled to be executed.

例えば、図7の実行結果1に示すようにジョブA11の実測実行時間tA11が4msの場合、最悪実行時間は7msだったため、3msの空き時間Tiが生じる。このため、検出器104は、スケジュールA0での空き時間Ti1msと合わせると4ms以上の空き時間Tiが生じると推算する。   For example, as shown in the execution result 1 in FIG. 7, when the actually measured execution time tA11 of the job A11 is 4 ms, the worst execution time is 7 ms, so a free time Ti of 3 ms occurs. For this reason, the detector 104 estimates that a free time Ti of 4 ms or more occurs when combined with the free time Ti1 ms in the schedule A0.

<ステップS15>
スケジューラ100は、推定されたCPU13の空き時間Tiが、再スケジューリングAを行うことができる程、生じるかを検討する。すなわち、処理A2の複数のジョブの中で、実行予定のジョブA21の次に実行時間の長いジョブA22のジョブ管理情報メモリ105に記憶されている実行時間は、最悪実行時間の25msでありジョブA21よりも10msも長く、推算された空き時間Ti4msよりも長い。
<Step S15>
The scheduler 100 examines whether the estimated free time Ti of the CPU 13 is generated to the extent that the rescheduling A can be performed. That is, the execution time stored in the job management information memory 105 of the job A22 having the longest execution time after the job A21 scheduled to be executed among the plurality of jobs in the process A2 is the worst execution time of 25 ms, and the job A21 Is longer than 10 ms and longer than the estimated free time Ti4 ms.

このため、ジョブA21をジョブA22に入れ替えると、残りの予約時間内にジョブA22を実行することはできない可能性が高い。このため、スケジューラ100は、空き時間Tiは十分ではないと判断(No)し、ステップS19において処理終了(No)でなければ、再びステップS12において、CPU13は未実行のジョブA21を実行する。   For this reason, if job A21 is replaced with job A22, there is a high possibility that job A22 cannot be executed within the remaining reservation time. Therefore, the scheduler 100 determines that the free time Ti is not sufficient (No), and if the process is not completed (No) in Step S19, the CPU 13 executes the unexecuted job A21 again in Step S12.

なお、CPU13は、処理Aの後に、キュー情報に従い処理Bを実行するが、以降の説明においては省略する。   The CPU 13 executes the process B according to the queue information after the process A, but will be omitted in the following description.

<ステップS12>
CPU13はスケジューラ100が登録したスケジュールA1に示したキューメモリ108の情報に従い、処理A2をジョブA21で実行する。
<Step S12>
The CPU 13 executes the process A2 in the job A21 according to the information in the queue memory 108 indicated in the schedule A1 registered by the scheduler 100.

<ステップS13>
処理A2が完了すると、検出器104は、処理A2のジョブA21の実測実行時間TA2であるtA21を検出する。そして、検出器104は、ジョブA11の実測実行時間tA21、例えば9ms、を、ジョブ管理情報メモリ105の動的情報106に記録する。
<Step S13>
When the process A2 is completed, the detector 104 detects tA21 which is the actually measured execution time TA2 of the job A21 of the process A2. Then, the detector 104 records the actual measurement execution time tA21 of the job A11, for example, 9 ms, in the dynamic information 106 of the job management information memory 105.

<ステップS14>
さらに検出器104は、図7の実行結果2に示すように、ジョブ管理情報メモリ105に記憶されている実行予定のジョブA11の実行時間と、予約時間から、CPU13の空き時間Tiを推算する。なお、ここで推算するとは実測実行時間から空き時間Tiを算出し、次回の処理における空き時間Tiと推定することである。
<Step S14>
Further, as shown in the execution result 2 of FIG. 7, the detector 104 estimates the free time Ti of the CPU 13 from the execution time of the scheduled job A11 stored in the job management information memory 105 and the reserved time. Here, the estimation is to calculate the vacant time Ti from the actually measured execution time and estimate it as the vacant time Ti in the next processing.

<ステップS15>
スケジューラ100は、推算されたCPU13の空き時間Tiが、再スケジューリングAを行うことができる程、生じるかを検討する。
<Step S15>
The scheduler 100 examines whether the estimated free time Ti of the CPU 13 is generated to the extent that the rescheduling A can be performed.

この場合には、次に実行する予定の処理が、処理A1および処理A2と複数であるため、優先度に基づき、まず優先度の高い処理A2について検討する。ここでは、10msの空き時間Tiが生じるため、スケジューラ100は、処理A2の複数のジョブの中で、実行予定のジョブA21の次に実行時間の長いジョブA22のジョブ管理情報メモリ105に記憶されている実行時間は、最悪実行時間の25msであるが、ジョブA21よりも、ちょうど10ms長い。このため、ジョブA21をジョブA22に入れ替えても予約時間内にジョブA22を実行できる可能性が高い。このため、スケジューラ100は、再スケジューリングAを行うための空き時間Tiは十分と判断(Yes)し、ステップS16に進む。   In this case, since there are a plurality of processes to be executed next, that is, the process A1 and the process A2, the process A2 having a higher priority is first examined based on the priority. Here, since the idle time Ti of 10 ms occurs, the scheduler 100 is stored in the job management information memory 105 of the job A22 having the longest execution time after the job A21 scheduled to be executed among the plurality of jobs of the process A2. The execution time is the worst execution time of 25 ms, but is just 10 ms longer than the job A21. For this reason, even if the job A21 is replaced with the job A22, there is a high possibility that the job A22 can be executed within the reserved time. Therefore, the scheduler 100 determines that the free time Ti for performing the rescheduling A is sufficient (Yes), and proceeds to step S16.

<ステップS16>
なお、再スケジューリングAでは、選択器103は、複数のジョブの中で、処理の優先度に基づき、かつ、複数のジョブの中で実行予定のジョブの次に実行時間の長いジョブを選択する。処理時間の長い複雑なアルゴリズムを用いるジョブは結果品質が高いからである。また、空き時間Tiが生じたとしても、その空き時間Tiは最悪実行時間で保証されたものではないため、選択器103は、予約時間内に処理が完了しないことがないように、前回選択され、予約時間内に処理が完了できたジョブの次に実行時間の長いジョブを選択する。
<Step S16>
In the rescheduling A, the selector 103 selects a job having a longest execution time next to a job scheduled to be executed among the plurality of jobs based on the processing priority. This is because a job using a complicated algorithm with a long processing time has high result quality. Further, even if the idle time Ti occurs, the idle time Ti is not guaranteed by the worst execution time, so the selector 103 is selected last time so that the processing is not completed within the reserved time. Then, the job having the longest execution time is selected after the job that has been processed within the reserved time.

また、処理の優先度に基づいてジョブを選択するため、優先度の高い処理の品質を優先して上げることができる。なお、スケジューラ100が、処理の優先度に基づいてジョブを選択する際には、結果品質のバランスを考慮し選択することが好ましい。すなわち、スケジューラ100が、最初に優先度の最も高い処理のジョブの中から実行時間の長い、結果品質のより高いジョブを選択する再スケジューリングAを行った場合には、次の再スケジューリングAでは、優先度が2番目に高い処理のジョブの中から実行時間の長い、結果品質のより高いジョブを選択し、そして次の再スケジューリングAでは、優先度が3番目に高い処理のジョブの中から実行時間の長い、結果品質のより高いジョブを選択していき、最も優先度が低い処理のジョブの中から実行時間の長い、結果品質のより高いジョブを選択する再スケジューリングAの後に、優先度の最も高い処理のジョブの中から実行時間の長い、結果品質のより高いジョブを選択する再スケジューリングAを行う。複数の処理の中で優先度が高い処理のみの結果品質が突出して高くても、マルチ画面処理回路11の全体としての結果品質が、高くはならない場合があるからである。   In addition, since the job is selected based on the priority of the process, it is possible to prioritize the quality of the process with a high priority. When the scheduler 100 selects a job based on the processing priority, it is preferable to select the job in consideration of the balance of result quality. That is, when the scheduler 100 performs rescheduling A that first selects a job with a long execution time and a higher result quality from jobs with the highest priority processing, in the next rescheduling A, Select the job with the longer execution time and the higher result quality from the jobs with the second highest priority, and execute the job with the third highest priority in the next rescheduling A Select a job with a longer result time and a higher result quality, and after rescheduling A to select a job with a longer execution time and a higher result quality from among the jobs with the lowest priority processes, Rescheduling A is performed to select a job with a longer execution time and a higher result quality from among the jobs with the highest processing. This is because even if the result quality of only a process having a high priority among a plurality of processes is prominently high, the result quality as a whole of the multi-screen processing circuit 11 may not be high.

ここでは、選択器103は、優先度1の処理A2のジョブ中で、ステップS11で選択されたジョブA21の次に実行時間の長いジョブA22を選択し、リセット器102はキューメモリ108を、図7に示すスケジュールA1のように、リセットする。   Here, the selector 103 selects the job A22 having the longest execution time after the job A21 selected in step S11 among the jobs of the process A2 having the priority level 1, and the resetter 102 stores the queue memory 108. As in schedule A1 shown in FIG.

<ステップS12>
CPU13はスケジューラ100が登録したスケジュールA1に示したキューメモリ108の情報に従い、処理A1をジョブA11で実行する。
<Step S12>
The CPU 13 executes the process A1 in the job A11 according to the information in the queue memory 108 indicated in the schedule A1 registered by the scheduler 100.

<ステップS13>
処理A1が完了すると、検出器104は、処理A1のジョブA11の実測実行時間TA1であるtA11を検出する。そして、検出器104は、ジョブA11の実測実行時間tA11、例えば4ms、を、再びジョブ管理情報メモリ105の動的情報106に記録する。
<Step S13>
When the process A1 is completed, the detector 104 detects tA11 which is the actually measured execution time TA1 of the job A11 of the process A1. Then, the detector 104 records the actual measurement execution time tA11 of the job A11, for example, 4 ms, in the dynamic information 106 of the job management information memory 105 again.

<ステップS14>
さらに検出器104は、ジョブ管理情報メモリ105に記憶されている実行予定のジョブA22の実行時間と、予約時間から、CPU13の空き時間Tiを推算する。
<Step S14>
Further, the detector 104 estimates the idle time Ti of the CPU 13 from the execution time of the scheduled job A22 stored in the job management information memory 105 and the reserved time.

例えば、図7の実行結果3に示すように、ジョブA11の実測実行時間tA11が、再び、4msの場合、次に実行予定の処理A2のジョブA22のジョブ管理情報メモリ105に記憶されている実行時間は、前回実行したジョブ21より最悪実行時間で10ms長いことから、ちょうど23msで全ての処理が完了することになる。すなわち、予約時間23msに対して空き時間Tiは生じない。   For example, as shown in the execution result 3 in FIG. 7, when the actually measured execution time tA11 of the job A11 is 4 ms again, the execution stored in the job management information memory 105 of the job A22 of the process A2 scheduled to be executed next. Since the worst execution time is 10 ms longer than the previously executed job 21, all processing is completed in just 23 ms. That is, the idle time Ti does not occur for the reservation time of 23 ms.

<ステップS15>
空き時間Tiが生じないので、スケジューラ100は、空き時間Tiは十分ではないと判断(No)し、ステップS19を経て、再びステップS12において、未実行のジョブA22を実行する。
<Step S15>
Since the idle time Ti does not occur, the scheduler 100 determines that the idle time Ti is not sufficient (No), and executes the unexecuted job A22 through step S19 and again in step S12.

<ステップS12>
CPU13はスケジューラ100が登録したスケジュールA1に示したキューメモリ108の情報に従い、処理A2をジョブA22で実行する。
<Step S12>
The CPU 13 executes the process A2 in the job A22 according to the information in the queue memory 108 indicated in the schedule A1 registered by the scheduler 100.

<ステップS13>
処理A2が完了すると、検出器104は、処理A2のジョブA22の実測実行時間TA2であるtA22を検出する。そして、検出器104は、ジョブA11の実測実行時間tA22、例えば15ms、を、ジョブ管理情報メモリ105の動的情報106に記録する。
<Step S13>
When the process A2 is completed, the detector 104 detects tA22 which is the actually measured execution time TA2 of the job A22 of the process A2. The detector 104 records the actual measurement execution time tA22 of the job A11, for example, 15 ms, in the dynamic information 106 of the job management information memory 105.

<ステップS14>
さらに検出器104は、ジョブ管理情報メモリ105に記憶されている実行予定のジョブA11の実行時間と、予約時間から、CPU13の空き時間Tiを推算する。
<Step S14>
Further, the detector 104 estimates the free time Ti of the CPU 13 from the execution time of the scheduled job A11 stored in the job management information memory 105 and the reserved time.

例えば、図7の実行結果4に示すように、ジョブA22の実測実行時間tA22が15msの場合、既に実行したジョブA11の実測実行時間tA22が4msのため、19msで処理を完了している。このため、予定時間の23msに対して4msの空き時間Tiが生じている。   For example, as shown in the execution result 4 of FIG. 7, when the measured execution time tA22 of the job A22 is 15 ms, the measured execution time tA22 of the already executed job A11 is 4 ms, so the processing is completed in 19 ms. For this reason, a free time Ti of 4 ms occurs with respect to the scheduled time of 23 ms.

<ステップS15>
スケジューラ100は、推定されたCPU13の空き時間Tiが、再スケジューリングAを行うことができる程、生じるか検討する。
<Step S15>
The scheduler 100 examines whether the estimated free time Ti of the CPU 13 is generated so that the rescheduling A can be performed.

この場合には、次に実行する予定処理A1および処理A2のうち、優先度の1の処理A1が既に中程度の結果品質のジョブA22であるのに対して、優先度2の処理2が低い結果品質のジョブA21であるため、バランスを考慮した優先度に基づき、スケジューラ100は、まず処理2について検討する。ここでは、10msの空き時間Tiが生じるため、処理A2の複数のジョブの中で、実行予定のジョブA11の次に実行時間の長いジョブA12のジョブ管理情報メモリ105に記憶されている実行時間は、最悪実行時間の10msであるが、ジョブA21よりも、3ms長いだけである。このため、スケジューラ100は、ジョブA11をジョブA12に入れ替えても予約時間内にジョブA22を実行できる可能性が高いと判断する。すなわち、スケジューラ100は、再スケジューリングAを行うための空き時間Tiが生じる(Yes)と判断する。   In this case, among the scheduled processes A1 and A2 to be executed next, the process A1 with the priority 1 is already the medium result quality job A22, whereas the process 2 with the priority 2 is low. Since it is the result quality job A21, the scheduler 100 first considers the processing 2 based on the priority in consideration of the balance. Here, since a free time Ti of 10 ms occurs, the execution time stored in the job management information memory 105 of the job A12 having the longest execution time next to the job A11 scheduled to be executed among the plurality of jobs in the process A2 is The worst execution time is 10 ms, but it is only 3 ms longer than the job A21. Therefore, the scheduler 100 determines that there is a high possibility that the job A22 can be executed within the reserved time even if the job A11 is replaced with the job A12. That is, the scheduler 100 determines that a free time Ti for performing rescheduling A occurs (Yes).

<ステップS16>
再スケジューリングAでは、選択器103は、処理A1のジョブ中で、前回選択されたジョブA11の次に実行時間の長いジョブA12を選択し、リセット器102はキューメモリ108を、図7に示すスケジュールA2にリセットし、再びステップS12で、CPU13は処理を実行する。
<Step S16>
In rescheduling A, the selector 103 selects the job A12 having the longest execution time after the previously selected job A11 in the job of the process A1, and the resetter 102 stores the queue memory 108 in the schedule shown in FIG. In step S12, the CPU 13 executes the process again.

<ステップS12>
CPU13はスケジューラ100が登録したスケジュールA2に示したキューメモリ108の情報に従い、処理A1をジョブA12で実行する。
<Step S12>
The CPU 13 executes the process A1 in the job A12 according to the information in the queue memory 108 indicated in the schedule A2 registered by the scheduler 100.

<ステップS13>
処理A1が完了すると、検出器104は、処理A1のジョブA12の実測実行時間TA1であるtA12を検出する。そして、検出器104は、ジョブA11の実測実行時間tA12、例えば7ms、を、ジョブ管理情報メモリ105の動的情報106に記録する。
<Step S13>
When the process A1 is completed, the detector 104 detects tA12 that is the actually measured execution time TA1 of the job A12 of the process A1. Then, the detector 104 records the actual measurement execution time tA12 of the job A11, for example, 7 ms, in the dynamic information 106 of the job management information memory 105.

<ステップS14>
検出器104は、ジョブ管理情報メモリ105に記憶されている実行予定のジョブA22の実行時間と、予約時間から、CPU13の空き時間Tiを推算する。
<Step S14>
The detector 104 estimates the free time Ti of the CPU 13 from the execution time of the scheduled job A22 stored in the job management information memory 105 and the reserved time.

例えば、図7の実行結果5に示すように、ジョブの実測実行時間tA12が7msの場合、次に実行予定の処理A2のジョブA22のジョブ管理情報メモリ105に記憶されている実行時間は、実測実行時間の15msであることから、22msで全ての処理が完了することになる。すなわち、予約時間23msに対して1msの空き時間Tiしか生じない。   For example, as shown in the execution result 5 of FIG. 7, when the actually measured execution time tA12 of the job is 7 ms, the execution time stored in the job management information memory 105 of the job A22 of the process A2 scheduled to be executed next is actually measured. Since the execution time is 15 ms, all processing is completed in 22 ms. That is, only a free time Ti of 1 ms occurs for a reservation time of 23 ms.

<ステップS15>
スケジューラ100は、空き時間Tiは十分ではないと判断(No)し、ステップS19を経て、再びステップS12において、未実行のジョブA22を実行する。実行結果を図7の実行結果6に示す。
以下、同様に、処理の実行と再スケジューリングAを繰り返す。
<Step S15>
The scheduler 100 determines that the free time Ti is not sufficient (No), and after step S19, executes the unexecuted job A22 again in step S12. The execution result is shown as execution result 6 in FIG.
Thereafter, the process execution and rescheduling A are repeated in the same manner.

上記の説明のように、本実施の形態のジョブスケジューリング方法は、複数の処理を予約時間内で繰り返す定周期実行方式のスケジューリングを、ジョブ管理情報を基に行う、ジョブスケジューリング方法であって、ジョブ管理情報が、処理の優先度情報と、それぞれの前記処理を実行可能な複数のジョブの実行時間情報とを有し、CPUの空き時間Tiが生じる場合、優先度に基づき、かつ、複数のジョブの中で実行予定のジョブの次に実行時間の長いジョブを選択する。また、ジョブ管理情報が、複数のジョブの実測実行時間情報を有し、実測実行時間情報を基に、ジョブを選択する。このため、本実施の形態のジョブスケジューリング方法は、マルチ画面処理回路が処理に要する時間が変化しても、プロセッサの能力を効率的に使うことができる。   As described above, the job scheduling method according to the present embodiment is a job scheduling method in which scheduling of a periodic execution method in which a plurality of processes are repeated within a reserved time is performed based on job management information. When the management information includes processing priority information and execution time information of a plurality of jobs that can execute the respective processing, and a CPU idle time Ti occurs, a plurality of jobs are based on the priority. Select the job with the longest execution time next to the job scheduled to be executed. Further, the job management information includes measured execution time information of a plurality of jobs, and a job is selected based on the measured execution time information. For this reason, the job scheduling method of the present embodiment can efficiently use the capacity of the processor even when the time required for processing by the multi-screen processing circuit changes.

<第1の実施の形態の変形例>
以下、第1の実施の形態の変形例のジョブスケジューリング方法について説明する。なお本変形例にかかるスケジューリング方法は、第1の実施の形態にかかるスケジューラ100によるスケジューリング方法と類似しているため、同じ箇所の説明は省略する。本変形例のジョブスケジューリング方法を行うスケジューラ101は、各定周期処理の度に、必ず予約時間内に処理が完了するように、各ジョブの最悪実行時間に基づいてジョブスケジューリングを行う。そして、一のジョブを実行する度に、スケジューラ101は、そのジョブの実測実行時間情報と、これから実行予定の残りのジョブの実測実行時間情報とから空き時間Tiを推算し、再スケジューリングAができる程、空き時間Tiがある場合にのみ、再スケジューリングAを行う。そして、全てのジョブの実行が終了、すなわち1周期の定周期処理が終了後に、再び、最悪実行時間に基づくジョブスケジューリングにキュー情報をリセットする。
<Modification of the first embodiment>
Hereinafter, a job scheduling method according to a modification of the first embodiment will be described. Note that the scheduling method according to the present modification is similar to the scheduling method by the scheduler 100 according to the first embodiment, and thus the description of the same parts is omitted. The scheduler 101 that performs the job scheduling method of the present modification performs job scheduling based on the worst execution time of each job so that the processing is always completed within the reserved time every fixed-cycle processing. Each time one job is executed, the scheduler 101 estimates the vacant time Ti from the measured execution time information of the job and the measured execution time information of the remaining jobs scheduled to be executed, and rescheduling A can be performed. Only when there is free time Ti, rescheduling A is performed. Then, after the execution of all jobs is completed, that is, after one cycle of periodic processing is completed, the queue information is reset again to job scheduling based on the worst execution time.

あるいは、スケジューラ101は、各定周期処理の度に、所定の空き時間Tkが生じるように、各ジョブの実測実行時間情報に基づいてジョブスケジューリングを行ってもよい。ここで、所定の空き時間Tkとは処理開始前に入力される情報であり、確実に予約時間内に処理を完了するための安全係数的なパラメータである。所定の空き時間Tkは、処理速度の変動に応じて決定されるが、予約時間の10〜30%が好ましい。前記範囲未満では、予約時間内に処理が完了しないことがあり、前記範囲を超えるとプロセッサの使用効率が良くはない。   Alternatively, the scheduler 101 may perform job scheduling based on the measured execution time information of each job so that a predetermined idle time Tk is generated at each fixed-cycle process. Here, the predetermined idle time Tk is information input before the start of processing, and is a safety coefficient parameter for reliably completing the processing within the reserved time. The predetermined vacant time Tk is determined according to fluctuations in the processing speed, but is preferably 10 to 30% of the reserved time. If it is less than the above range, the processing may not be completed within the reserved time, and if it exceeds the range, the use efficiency of the processor is not good.

本変形例のジョブスケジューリング方法では、第1の実施の形態のジョブスケジューリング方法が有する効果に加えて、確実に予約時間内に処理を完了することができ、処理の信頼性が向上する。   In the job scheduling method of this modification, in addition to the effects of the job scheduling method of the first embodiment, the processing can be completed reliably within the reserved time, and the processing reliability is improved.

<第2の実施の形態>
次に、本発明の第2の実施の形態にかかるスケジューラ102について説明する。なお、第2の実施の形態にかかるスケジューリング方法は、第1の実施の形態にかかるスケジューラ100によるスケジューリング方法と類似しているため、同じ構成要素には同じ符号を付し説明は省略する。
<Second Embodiment>
Next, the scheduler 102 according to the second embodiment of the present invention will be described. Since the scheduling method according to the second embodiment is similar to the scheduling method by the scheduler 100 according to the first embodiment, the same components are denoted by the same reference numerals and description thereof is omitted.

図8は、第2の実施の形態にかかるスケジューリング方法の処理の流れを説明するためのフローチャートであり、り、図9は、スケジューラ102による再スケジューリングBを説明するための説明図である。   FIG. 8 is a flowchart for explaining the flow of processing of the scheduling method according to the second embodiment. FIG. 9 is an explanatory diagram for explaining rescheduling B by the scheduler 102.

本実施の形態にかかるスケジューリング方法においては、プロセッサの能力を効率的に使うために、最悪実行時間ではなく、実測実行時間を元にスケジューリングを行う。このため、処理が予約時間内に完了しない可能性がゼロではない。このため、本実施の形態にかかるスケジューリング方法においては、処理が予約時間内に完了しない場合には、再スケジューリングBを行い、速やかに処理の完了を図る。ここで、処理が予約時間内に完了しない場合とは、実際に完了できなかった場合、および/または完了できない見込みの場合を意味する。   In the scheduling method according to the present embodiment, scheduling is performed based on the actually measured execution time, not the worst execution time, in order to efficiently use the capacity of the processor. For this reason, the possibility that the process is not completed within the reserved time is not zero. For this reason, in the scheduling method according to the present embodiment, if the process is not completed within the reserved time, rescheduling B is performed to complete the process promptly. Here, the case where the processing is not completed within the reserved time means a case where the processing cannot actually be completed and / or a case where the processing cannot be completed.

以下、図8のフローチャートに従い、本実施の形態のスケジューリング方法について説明する。
図8に示すように、本実施の形態にかかるスケジューリング方法は、ステップS10から、ステップS15およびステップS16までは第1の実施の形態にかかるスケジューリング方法と同じであるため、ステップS17以降の再スケジューリングBについて説明する。
Hereinafter, the scheduling method of the present embodiment will be described with reference to the flowchart of FIG.
As shown in FIG. 8, since the scheduling method according to the present embodiment is the same as the scheduling method according to the first embodiment from step S10 to step S15 and step S16, rescheduling after step S17 is performed. B will be described.

前述のように、本実施の形態のスケジューリング方法では、プロセッサの能力を効率的に使うために最悪実行時間を基にしたスケジューリングでは予約時間内に処理が完了しないジョブを登録している。このため、処理を実行した際に、処理が予約時間内に完了しないことがある。処理が予約時間内に完了しなかった場合、スケジューラ102は、ステップS16において、Yesと判断し、ステップS17において再スケジューリングBを行う。   As described above, in the scheduling method of the present embodiment, in order to efficiently use the capacity of the processor, a job whose processing is not completed within the reserved time is registered in the scheduling based on the worst execution time. For this reason, when the process is executed, the process may not be completed within the reserved time. If the process is not completed within the reserved time, the scheduler 102 determines Yes in step S16 and performs rescheduling B in step S17.

<ステップS17>
再スケジューリングBについて、図9を用いて説明する。例えば、図9のスケジュールB0に示した様に、ジョブA13の実測実行時間が4msで、ジョブA23の実測実行時間が19msであったために、スケジューラ102が予約時間23msで処理が完了すると予定して、ジョブ13およびジョブA23をキューメモリ108に登録し実行していた場合に、入力画像信号等に変化が生じて、実測実行時間が増加することがある。
<Step S17>
The rescheduling B will be described with reference to FIG. For example, as shown in the schedule B0 in FIG. 9, since the actually measured execution time of the job A13 is 4 ms and the actually measured execution time of the job A23 is 19 ms, it is scheduled that the scheduler 102 completes the processing with the reserved time 23 ms. When the job 13 and job A23 are registered and executed in the queue memory 108, a change occurs in the input image signal and the like, and the actual measurement execution time may increase.

例えば、図9の実行予定結果7に示すように、ジョブA13の実測実行時間tA13が4msから10msに急増すると、残りの予約時間は13msしかないため、19msを要する予定、すなわち、実測実行時間が19msのジョブA23を予約時間内には実行できない見込みとなってしまう。このように実測実行時間情報に基づき予約時間内に全ての処理が完了しない場合、スケジューラ102は、処理完了しないと判断し、ステップS18において、再スケジューリングBを行う。   For example, as shown in the scheduled execution result 7 of FIG. 9, if the measured execution time tA13 of the job A13 increases rapidly from 4 ms to 10 ms, the remaining reservation time is only 13 ms, so a schedule requiring 19 ms, that is, the measured execution time It is expected that the 19 ms job A23 cannot be executed within the reserved time. As described above, when all the processes are not completed within the reserved time based on the actually measured execution time information, the scheduler 102 determines that the processes are not completed, and performs rescheduling B in step S18.

<ステップS18>
再スケジューリングBでは、スケジューラ102は、未実行のジョブを、優先度に基づき、かつ、複数のジョブの中で実行予定のジョブの次に実行時間の短いジョブを選択する。
<Step S18>
In rescheduling B, the scheduler 102 selects an unexecuted job based on the priority and the job with the shortest execution time next to the job scheduled to be executed among the plurality of jobs.

この場合には、次に実行する予定の処理が、処理A2のみであるので、処理A2について再スケジューリングBを行う。すなわち、選択器103は、実行予定のジョブA23の次に実行時間の短いジョブA22を選択し、リセット器102はキューメモリ108を、図9に示すスケジュールB1にリセットし、再びステップS12で、CPU13はスケジュールB1に示したキューメモリ108の情報に従い、処理を行う。そして、スケジューラ102は、ステップS13、ステップS14、ステップS15を行い、再び、ステップS17で処理が予約時間内に完了したかの判断を行う。   In this case, since the process scheduled to be executed next is only process A2, rescheduling B is performed for process A2. That is, the selector 103 selects the job A22 having the shortest execution time after the job A23 scheduled to be executed, the resetter 102 resets the queue memory 108 to the schedule B1 shown in FIG. 9, and again in step S12, the CPU 13 Performs processing according to the information in the queue memory 108 shown in the schedule B1. Then, the scheduler 102 performs step S13, step S14, and step S15, and again determines whether the process is completed within the reserved time in step S17.

<ステップS17>
図9の実行結果8に示すように、ジョブA22が予約時間内に完了しなかった場合には、スケジューラ102は、処理完了しないと判断し、ステップS18において、再スケジューリングBを行う。
<Step S17>
As shown in the execution result 8 of FIG. 9, when the job A22 is not completed within the reserved time, the scheduler 102 determines that the process is not completed, and performs rescheduling B in step S18.

<ステップS18>
再スケジューリングBでは、スケジューラ102は、未実行のジョブを、優先度に基づき、かつ、複数のジョブの中で実行予定のジョブの次に実行時間の短いジョブを選択する。すなわち、再スケジューリングBは、結果品質を低下するスケジューリングであるため、優先度に基づいて、とは、優先度の低い処理から結果品質の低いジョブを選択することを意味する。
<Step S18>
In rescheduling B, the scheduler 102 selects an unexecuted job based on the priority and the job with the shortest execution time next to the job scheduled to be executed among the plurality of jobs. In other words, since rescheduling B is scheduling that lowers the quality of results, based on priority means that a job with low result quality is selected from a process with low priority.

この場合には、次に実行する予定の処理が、処理A1および処理A2と複数であるため、優先度に基づき、まず優先度の低い処理A1について再スケジューリングBを行う。すなわち、選択器103は、実行予定のジョブA13の次に実行時間の短いジョブA12を選択し、リセット器102はキューメモリ108を、図9に示すスケジュールB2にリセットし、再びステップS12で、CPU13はスケジュールB2に示したキューメモリ108の情報に従い、処理を行う。そして、スケジューラ102は、ステップS13、ステップS14、ステップS15を行い、再び、ステップS17で処理が予約時間内に完了したかの判断を行う。   In this case, since there are a plurality of processes to be executed next, that is, the process A1 and the process A2, the rescheduling B is first performed on the process A1 having a low priority based on the priority. That is, the selector 103 selects the job A12 having the shortest execution time after the job A13 to be executed, the resetter 102 resets the queue memory 108 to the schedule B2 shown in FIG. 9, and again in step S12, the CPU 13 Performs processing according to the information in the queue memory 108 shown in the schedule B2. Then, the scheduler 102 performs step S13, step S14, and step S15, and again determines whether the process is completed within the reserved time in step S17.

<ステップS17>
図9の実行予定結果9に示すように、ジョブA12の実測実行時間tA12が8msであり、ジョブA22の実測実行時間tA22が15msの場合には、スケジューラ102は、処理が完了できる見込み(Yes)と判断して、スケジューラ102は、再スケジューリングBは行わないで、ステップS19から、ステップS12、ステップS13、ステップS14、ステップS15を行い、再び、ステップS17で処理が予約時間内に完了したかの判断を行う。
<Step S17>
As shown in the scheduled execution result 9 in FIG. 9, when the actually measured execution time tA12 of the job A12 is 8 ms and the actually measured execution time tA22 of the job A22 is 15 ms, the scheduler 102 is expected to be able to complete the processing (Yes). Therefore, the scheduler 102 performs step S19, step S13, step S14, and step S15 from step S19 without performing rescheduling B, and confirms whether the process is completed within the reserved time in step S17. Make a decision.

<ステップS17>
図9の実行結果10に示すように、ジョブA22が予約時間内に完了した場合には、スケジューラ102は、処理完了(Yes)と判断して、処理を継続する。
<Step S17>
As shown in the execution result 10 of FIG. 9, when the job A22 is completed within the reserved time, the scheduler 102 determines that the process is complete (Yes) and continues the process.

このように、本実施の形態にかかるスケジューリング方法においては、第1の実施の形態のスケジューリング方法が有する効果に加えて、処理が予定時間内に完了しない場合には、再スケジューリングBを行い、速やかに処理の完了を図ることができる。   As described above, in the scheduling method according to the present embodiment, in addition to the effects of the scheduling method according to the first embodiment, if the process is not completed within the scheduled time, the rescheduling B is performed to quickly It is possible to complete the processing.

なお、再スケジューリングBを行った場合には、所定の期間あるいは入力画像信号の数等が変化するまで、再スケジューリングAは行わないことが好ましい。再スケジューリングAを行って結果品質を向上しても、次のフレーム処理の際に再び、処理が完了しないで、再スケジューリングBが必要となる可能性が高いためである。   When rescheduling B is performed, it is preferable not to perform rescheduling A until a predetermined period or the number of input image signals changes. This is because even if rescheduling A is performed to improve the quality of results, processing is not completed again at the time of the next frame processing, and rescheduling B is likely to be necessary.

なお、マルチ画面処理が完了しないと、テレビジョン受像器はモニタに、最新の画像を表示できないため、前フレームの画像を表示する。すなわち、モニタ表示は、いわゆるフリーズ状態となる。しかし、フリーズ状態が、数フレーム分だけであれば、視聴者は気が付かない。このため、本実施の形態のジョブスケジューリング方法においては、第1の実施の形態のジョブスケジューリング方法に加えて、可能な限り高品質の出力画像を出力しつつ、処理未完了による悪影響は最小に留まるため、処理の信頼性が向上する
なお、上記実施の形態では、スケジューラ100のジョブスケジューリング方法が、マルチ画像処理回路11の画像サイズ変換処理とフォーマット変換処理との2の処理に用いられる例を示したが、3つ以上の処理のジョブスケジューリングに用いることもできる。また、それぞれの処理を実行可能なジョブを3ずつとしたが、4以上でもよいし、もちろん、処理毎のジョブの数は同数である必要はない。さらに、ジョブスケジューリングする処理が3つ以上の場合には、少なくとも2つの処理がそれぞれの処理を実行可能な複数のジョブを有していれば、他の処理を実行可能なジョブは、それぞれ1つのみでもよい。また、スケジューラ100のジョブスケジューリング方法は、定周期実行する処理Aについてのジョブスケジューリングだけでなく、処理Aと組み合わせて定周期実行する処理Bについてのジョブスケジューリングも可能である。
If the multi-screen processing is not completed, the television receiver cannot display the latest image on the monitor, and therefore displays the image of the previous frame. That is, the monitor display is in a so-called freeze state. However, if the freeze state is only for a few frames, the viewer will not notice. For this reason, in the job scheduling method according to the present embodiment, in addition to the job scheduling method according to the first embodiment, an output image with the highest possible quality is output, and the adverse effect due to the incomplete processing remains minimal. Therefore, the reliability of the process is improved. In the above embodiment, an example is shown in which the job scheduling method of the scheduler 100 is used for the two processes of the image size conversion process and the format conversion process of the multi-image processing circuit 11. However, it can also be used for job scheduling of three or more processes. Although three jobs can be executed for each process, the number of jobs may be four or more. Of course, the number of jobs for each process does not have to be the same. Further, when there are three or more processes for job scheduling, if at least two processes have a plurality of jobs that can execute the respective processes, one job can be executed for each of the other processes. It may be only. In addition, the job scheduling method of the scheduler 100 is not limited to job scheduling for the process A that is executed periodically, but can be used for the process B that is executed periodically in combination with the process A.

さらに、再スケジューリングAおよび再スケジューリングBでは、1回の再スケジューリングで1つの処理のジョブを入れ替える例を示したが、1回の再スケジューリングで複数の処理のジョブを入れ替えてもよい。   Furthermore, in the rescheduling A and rescheduling B, an example in which one processing job is replaced by one rescheduling is shown, but a plurality of processing jobs may be replaced by one rescheduling.

また、スケジューラ100によるジョブスケジューリングは、例えば、音声処理回路に用いてもよいし、データ誤り訂正回路に用いてもよい。さらに、スケジューラ100によるジョブスケジューリングは、テレビジョン受像機1のデータ処理に限られるものではなく、定周期実行方式で、複数の異なる目的の処理を行うためのスケジューリングを、ジョブ管理情報を基に行うジョブスケジューリング方法であれば、汎用用途で用いることが可能であり、いずれの場合も、プロセッサの能力を効率的に使うことができる。   Further, job scheduling by the scheduler 100 may be used for, for example, a voice processing circuit or a data error correction circuit. Furthermore, the job scheduling by the scheduler 100 is not limited to the data processing of the television receiver 1, and scheduling for performing a plurality of different purposes is performed based on the job management information in a fixed cycle execution method. Any job scheduling method can be used for general purposes, and in any case, the processor capacity can be used efficiently.

本発明は、上述した実施の形態に限定されるものではなく、本発明の要旨を変えない範囲において、種々の変更、改変等が可能である。   The present invention is not limited to the above-described embodiments, and various changes and modifications can be made without departing from the scope of the present invention.

第1の実施の形態にかかるマルチ画面処理回路を有するテレビジョン受像機1の構成を示した構成図である。1 is a configuration diagram showing a configuration of a television receiver 1 having a multi-screen processing circuit according to a first embodiment. FIG. テレビジョン受像機のマルチ画面の例を示した図である。It is the figure which showed the example of the multiscreen of a television receiver. 第1の実施の形態にかかるスケジューラのブロック図である。It is a block diagram of the scheduler concerning a 1st embodiment. 第1の実施の形態にかかる、ジョブ管理情報の例を示した表である。3 is a table showing an example of job management information according to the first embodiment. 画像サイズ変換処理が実行可能な複数のアルゴリズムが異なるジョブを説明するための説明図である。It is explanatory drawing for demonstrating the job from which the several algorithm which can perform image size conversion process differs. 第1の実施の形態のスケジューリング処理の流れを説明するためのフローチャートである。It is a flowchart for demonstrating the flow of the scheduling process of 1st Embodiment. 第1の実施の形態にかかるスケジューラによる再スケジューリングAを説明するための説明図である。It is explanatory drawing for demonstrating rescheduling A by the scheduler concerning 1st Embodiment. 第2の実施の形態のスケジューリング処理の流れを説明するためのフローチャートである。It is a flowchart for demonstrating the flow of the scheduling process of 2nd Embodiment. 第2の実施の形態にかかるスケジューラによる再スケジューリングBを説明するための説明図である。It is explanatory drawing for demonstrating rescheduling B by the scheduler concerning 2nd Embodiment.

符号の説明Explanation of symbols

1…テレビジョン受像機、2…パラボラアンテナ、4、5、6、7…デコーダー、8…HDD、9…外部端子、10…切替回路、11…マルチ画面処理回路、12…モニタ、13…キューメモリ、15…メモリ、20…モニタ表示画面、100…スケジューラ、102…リセット器、103…選択器、105…ジョブ管理情報メモリ、106…動的情報、107…基本情報、108…キューメモリ、TA1、TA2…実測実行時間、Ti…空き時間 DESCRIPTION OF SYMBOLS 1 ... Television receiver, 2 ... Parabolic antenna, 4, 5, 6, 7 ... Decoder, 8 ... HDD, 9 ... External terminal, 10 ... Switching circuit, 11 ... Multi-screen processing circuit, 12 ... Monitor, 13 ... Queue Memory, 15 ... Memory, 20 ... Monitor display screen, 100 ... Scheduler, 102 ... Reset device, 103 ... Selector, 105 ... Job management information memory, 106 ... Dynamic information, 107 ... Basic information, 108 ... Queue memory, TA1 , TA2 ... actual measurement execution time, Ti ... vacant time

Claims (5)

ジョブ管理情報を基に、CPUが、予約時間内に複数の処理を実行する定周期実行方式のスケジューリングを行う、ジョブスケジューリング方法であって、
前記ジョブ管理情報が、
前記複数の処理のそれぞれの優先度情報と、
前記複数の処理のそれぞれを実行可能な複数のジョブの実行時間情報とを有し、
前記CPUの空き時間が生じる場合、優先度に基づき、かつ、前記複数のジョブの中で実行予定のジョブの次に実行時間の長いジョブを選択することを特徴とするジョブスケジューリング方法。
On the basis of job management information, the CPU performs a scheduling of a fixed-cycle execution method in which a plurality of processes are executed within a reserved time.
The job management information is
Priority information of each of the plurality of processes;
Execution time information of a plurality of jobs capable of executing each of the plurality of processes,
A job scheduling method comprising: selecting a job having a longer execution time after a job scheduled to be executed among the plurality of jobs when the CPU idle time occurs.
前記ジョブ管理情報が、前記複数のジョブの実測実行時間情報を有し、
前記実測実行時間情報を基に、前記ジョブを選択することを特徴とする請求項1に記載のジョブスケジューリング方法。
The job management information includes measured execution time information of the plurality of jobs;
The job scheduling method according to claim 1, wherein the job is selected based on the measured execution time information.
前記実測実行時間情報に基づき予約時間内に全てのジョブが完了しない場合、未実行の前記ジョブを、前記優先度に基づき、かつ、前記複数のジョブの中で実行予定のジョブの次に実行時間の短いジョブを選択する請求項1または請求項2に記載のジョブスケジューリング方法。   If all jobs are not completed within the reserved time based on the measured execution time information, the unexecuted job is executed based on the priority and the execution time next to the job scheduled to be executed among the plurality of jobs. The job scheduling method according to claim 1, wherein a short job is selected. 前記複数の処理の結果品質のバランスを考慮し、ジョブを選択することを特徴とする請求項1から請求項3のいずれか1項に記載のジョブスケジューリング方法。   The job scheduling method according to any one of claims 1 to 3, wherein a job is selected in consideration of a balance of quality as a result of the plurality of processes. 前記CPUが、テレビジョン受像機のマルチ画面処理のスケジューリングを行うことを特徴とする請求項1から請求項4のいずれか1項に記載のジョブスケジューリング方法。   The job scheduling method according to any one of claims 1 to 4, wherein the CPU performs scheduling of multi-screen processing of a television receiver.
JP2007326372A 2007-12-18 2007-12-18 Job scheduling method Pending JP2009151375A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007326372A JP2009151375A (en) 2007-12-18 2007-12-18 Job scheduling method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007326372A JP2009151375A (en) 2007-12-18 2007-12-18 Job scheduling method

Publications (1)

Publication Number Publication Date
JP2009151375A true JP2009151375A (en) 2009-07-09

Family

ID=40920499

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007326372A Pending JP2009151375A (en) 2007-12-18 2007-12-18 Job scheduling method

Country Status (1)

Country Link
JP (1) JP2009151375A (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011192166A (en) * 2010-03-16 2011-09-29 Fuji Electric Co Ltd Task schedule device and task schedule method
JP2012073690A (en) * 2010-09-28 2012-04-12 Fujitsu Ltd Job scheduling program, method and device
WO2012105000A1 (en) * 2011-02-01 2012-08-09 富士通株式会社 Program execution method
JP2015152987A (en) * 2014-02-12 2015-08-24 株式会社日立製作所 control device
CN110764886A (en) * 2019-09-03 2020-02-07 中国航空无线电电子研究所 Batch job cooperative scheduling method and system supporting multi-partition processing
JP2020177343A (en) * 2019-04-16 2020-10-29 富士通クライアントコンピューティング株式会社 Information processing device, information processing system, and program
JP2020177342A (en) * 2019-04-16 2020-10-29 富士通クライアントコンピューティング株式会社 Information processing device, information processing system, and program
US20230039875A1 (en) * 2021-07-22 2023-02-09 Vmware, Inc. Adaptive idle detection in a software-defined data center in a hyper-converged infrastructure

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011192166A (en) * 2010-03-16 2011-09-29 Fuji Electric Co Ltd Task schedule device and task schedule method
JP2012073690A (en) * 2010-09-28 2012-04-12 Fujitsu Ltd Job scheduling program, method and device
WO2012105000A1 (en) * 2011-02-01 2012-08-09 富士通株式会社 Program execution method
JP5505522B2 (en) * 2011-02-01 2014-05-28 富士通株式会社 Program execution method
US9336052B2 (en) 2011-02-01 2016-05-10 Fujitsu Limited Program executing method
JP2015152987A (en) * 2014-02-12 2015-08-24 株式会社日立製作所 control device
JP2020177343A (en) * 2019-04-16 2020-10-29 富士通クライアントコンピューティング株式会社 Information processing device, information processing system, and program
JP2020177342A (en) * 2019-04-16 2020-10-29 富士通クライアントコンピューティング株式会社 Information processing device, information processing system, and program
CN110764886A (en) * 2019-09-03 2020-02-07 中国航空无线电电子研究所 Batch job cooperative scheduling method and system supporting multi-partition processing
CN110764886B (en) * 2019-09-03 2023-03-31 中国航空无线电电子研究所 Batch job cooperative scheduling method and system supporting multi-partition processing
US20230039875A1 (en) * 2021-07-22 2023-02-09 Vmware, Inc. Adaptive idle detection in a software-defined data center in a hyper-converged infrastructure

Similar Documents

Publication Publication Date Title
JP2009151375A (en) Job scheduling method
CN111400008B (en) Computing resource scheduling method and device and electronic equipment
EP2778896B1 (en) Information processor, cloud platform, information processing method, and computer program thereof
JPH10341429A (en) Camera control system, control method therefor and storage medium stored with program for executing the control
JP2007334641A (en) Device, method and program for processing information
US11516372B2 (en) Image capturing apparatus, information processing apparatus, methods for controlling the same, image capturing apparatus system, and storage medium
US8754896B2 (en) Data processing apparatus having a parallel processing circuit including a plurality of processing modules, and method for controlling the same
JP6071269B2 (en) Image display control device, control method for image display control device, image display control system, and program
US20120274856A1 (en) Frame List Processing for Multiple Video Channels
US20100262969A1 (en) Data processing system and method for scheduling the use of at least one exclusive resource
WO2002071218A2 (en) Method of and system for withdrawing budget from a blocking task
US8436915B2 (en) Image processing apparatus
EP1134664B1 (en) Image processing device
US11314664B2 (en) Memory access device, image processing device and imaging device
JP2007013697A (en) Image receiver and image receiving method
JP2013211724A (en) Imaging apparatus
US20040153591A1 (en) Bus arbiter
CN100556106C (en) The scan method of video signal source
CN101090470B (en) Information processing apparatus and information processing method
US10491797B2 (en) Apparatus and method for controlling imaging devices
JP5330936B2 (en) Video processing device
JP2009302704A (en) Decoding device, information processing system and dynamic image recording and reproducing system
US20090167947A1 (en) Video data processor and data bus management method thereof
JP5836746B2 (en) Display terminal
US20100020089A1 (en) Digital photo frame capable of displaying images asynchronously and method thereof