JP2007257363A - Information processing apparatus - Google Patents

Information processing apparatus Download PDF

Info

Publication number
JP2007257363A
JP2007257363A JP2006081623A JP2006081623A JP2007257363A JP 2007257363 A JP2007257363 A JP 2007257363A JP 2006081623 A JP2006081623 A JP 2006081623A JP 2006081623 A JP2006081623 A JP 2006081623A JP 2007257363 A JP2007257363 A JP 2007257363A
Authority
JP
Japan
Prior art keywords
clock
processor
bus
processing
unit
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
JP2006081623A
Other languages
Japanese (ja)
Inventor
Atsumasa Otsu
敦誠 大津
Takuya Nomura
琢家 野村
Maki Hashimoto
麻希 橋本
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2006081623A priority Critical patent/JP2007257363A/en
Publication of JP2007257363A publication Critical patent/JP2007257363A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

<P>PROBLEM TO BE SOLVED: To achieve power saving or high-performance of an information processing apparatus by optimally controlling an operation clock frequency of a processor and a bus regardless of a processing unit without changing a software configuration. <P>SOLUTION: The information processing apparatus comprises: a bus I/F 30 for performing access arbitration of the processor 20 to a memory 50; a variable processing clock generator 105 for supplying a clock to the processor 20; a variable bus clock generator 106 for supplying a clock to the bus I/F 30; a processing busy/leisure state identifying part 103 for identifying the busy/leisure state of the operation of the processor 20; a bus busy/leisure state identifying part 104 for identifying the busy/leisure state of the operation of the bus I/F 30; and a clock adjusting part 102 for issuing a clock generation command to a variable processing clock generating part 105 and a variable bus clock generating part 106 on the basis of processing busy/leisure information, bus busy/leisure information and a clock adjustment rule for optimally operating the processor 20 and the bus I/F 30. <P>COPYRIGHT: (C)2008,JPO&INPIT

Description

本発明は、処理負荷の変化に伴いプロセッサ及びバスインターフェースに最適な周波数のクロックを供給する情報処理装置に関する。   The present invention relates to an information processing apparatus that supplies a clock having an optimal frequency to a processor and a bus interface as a processing load changes.

従来、プロセッサの動作周波数の変更が、該プロセッサにて動作するソフトウェア処理内に、処理負荷を判断する為の何らかの処理を付加することにより実現されている技術がある(例えば、特許文献1参照)。また、プロセッサの動作クロック周波数の変更が該プロセッサにて動作するソフトウェアの構成単位毎に行なわれる技術がある(例えば、特許文献2参照)。
特開2002−278643号公報 特開2002−41179号公報
2. Description of the Related Art Conventionally, there is a technique in which a change in the operating frequency of a processor is realized by adding some processing for determining a processing load in software processing operating on the processor (see, for example, Patent Document 1). . In addition, there is a technique in which the operation clock frequency of a processor is changed for each unit of software that operates on the processor (see, for example, Patent Document 2).
Japanese Patent Laid-Open No. 2002-278643 JP 2002-41179 A

従来技術ではソフトウェアの構成単位(以下、「処理単位」と表する)毎に、プロセッサの動作周波数の設定が行なわれている。しかしながら、ビットレートの変化によって処理負荷が変化するMPEG復号処理のような、処理単位における処理の条件が都度変化し、その度に処理負荷が変わるような場合や、単一処理単位内において時系列で処理負荷が変わる場合、細やかな動作周波数設定を行なうことは不可能である。   In the prior art, the operating frequency of the processor is set for each software unit (hereinafter referred to as “processing unit”). However, the processing conditions in the processing unit change each time, such as MPEG decoding processing in which the processing load changes due to the change in the bit rate, and the processing load changes each time, or the time series within the single processing unit When the processing load changes, it is impossible to set the detailed operating frequency.

また、処理単位内に処理条件が変更されることをプロセッサに通知する処理を埋め込み、その処理が実行される度にプロセッサの動作クロック周波数や外部バス動作クロック周波数などの動作条件を変更する従来技術では、プロセッサを含むハードウェア構成が変更される度に既存のソフトウェアに対して修正が必要になるという課題を有している。   Also, a conventional technique for embedding a process for notifying a processor that a processing condition is changed in a processing unit and changing the operating condition such as the processor operating clock frequency and the external bus operating clock frequency each time the process is executed. However, every time the hardware configuration including the processor is changed, the existing software needs to be corrected.

本発明は、ソフトウェアの構成を変更することなく、プロセッサ及びバスの動作クロック周波数などの動作状態を処理単位に関わらずに最適に制御することにより、情報処理装置の省電力化又は高性能化を実現することを目的とする。   The present invention reduces the power consumption or performance of an information processing apparatus by optimally controlling the operation state such as the operation clock frequency of the processor and the bus regardless of the processing unit without changing the software configuration. It aims to be realized.

本発明の情報処理装置は、プロセッサと、メモリと、前記プロセッサの前記メモリへのアクセス調停を行なうバスインターフェースと、前記プロセッサの動作に必要な動作クロックを前記プロセッサへ供給する可変処理クロック発生器と、前記バスインターフェースの動作に必要な動作クロックを前記バスインターフェースへ供給する可変バスクロック発生器と、前記プロセッサの動作の忙閑を識別する処理忙閑状態識別部と、前記バスインターフェースの動作の忙閑を識別するバス忙閑状態識別部と、前記プロセッサ及び前記バスインターフェースの各々の忙閑に応じて前記プロセッサ及び前記バスインターフェースを最適に動作させる為の複数のクロック制御情報が記載されているクロック調整ルールが格納されているルール格納部と、前記クロック調整ルールの中の、前記処理忙閑状態識別部及び前記バス忙閑状態識別部によって得られた結果を示す処理忙閑情報及びバス忙閑情報に対応するクロック制御情報を、前記可変処理クロック発生部及び前記可変バスクロック発生部に出力するクロック調節部とを備え、前記可変処理クロック発生部及び前記可変バスクロック発生部は、前記クロック調節部からのクロック制御情報に従って動作クロックを発生する。   An information processing apparatus according to the present invention includes a processor, a memory, a bus interface that arbitrates access to the memory of the processor, and a variable processing clock generator that supplies an operation clock necessary for the operation of the processor to the processor. A variable bus clock generator for supplying the bus interface with an operation clock necessary for the operation of the bus interface, a processing busy state identifying unit for identifying busyness of the operation of the processor, and busyness of the operation of the bus interface. A bus busy state identification unit for identifying a bus, and a clock in which a plurality of clock control information for optimally operating the processor and the bus interface according to the busy time of each of the processor and the bus interface is described A rule storage in which adjustment rules are stored; Among the clock adjustment rules, the processing busy information indicating the results obtained by the processing busy state identifying unit and the bus busy state identifying unit, and clock control information corresponding to the bus busy information, the variable processing A clock adjusting unit that outputs to the variable bus clock generating unit, and the variable processing clock generating unit and the variable bus clock generating unit generate an operation clock according to clock control information from the clock adjusting unit. .

この構成により、ソフトウェア処理単位に拘らずにプロセッサ及びバスインターフェースの忙閑状態よりプロセッサ上の処理負荷を判断し、処理に対してバスアクセスが少ない場合はバスインターフェースの動作クロック周波数を下げ、処理に対してバスアクセスが多い場合はプロセッサ動作クロック周波数を下げるなどの振舞いが可能になる。   With this configuration, the processing load on the processor is judged from the busy state of the processor and bus interface regardless of the software processing unit, and when the bus access is low for processing, the operating clock frequency of the bus interface is lowered and processing is performed. On the other hand, when there are many bus accesses, behavior such as lowering the processor operating clock frequency becomes possible.

すなわち、プロセッサ及びバスインターフェースを必要最低限の動作周波数で動作させることができ、情報処理装置の高性能化と省電力化とが実現される。   That is, the processor and the bus interface can be operated at the minimum necessary operating frequency, and high performance and power saving of the information processing apparatus are realized.

本発明は、本発明の情報処理装置の特徴的な構成手段をステップとするクロック制御方法として実現したり、上記特徴的な構成手段を含む集積回路として実現することもできる。   The present invention can be realized as a clock control method using the characteristic configuration means of the information processing apparatus of the present invention as a step, or as an integrated circuit including the characteristic configuration means.

本発明によれば、実動作時のプロセッサ及びバスの忙閑状態を元に処理負荷を判断してプロセッサ及びバスの動作クロック周波数を調節する事が可能となり、ソフトウェアの構成に関わらずに処理負荷に対応したより精密な動作状態制御が可能となる。   According to the present invention, it is possible to determine the processing load based on the busy state of the processor and the bus during the actual operation and adjust the operation clock frequency of the processor and the bus, and the processing load regardless of the software configuration. More precise operation state control corresponding to

以下、図面を参照して本発明の実施の形態を説明する。   Embodiments of the present invention will be described below with reference to the drawings.

尚、各図は、本発明が理解出来る程度に各構成成分を概略的に示してあるに過ぎず、従って、本発明を図示例に限定するものではない。   In addition, each figure has shown each component only to such an extent that this invention can be understood, Therefore, this invention is not limited to the example of illustration.

(第一の実施形態)
図1は、本発明の第一の実施形態における情報処理装置の構成及び使用形態の説明図である。
(First embodiment)
FIG. 1 is an explanatory diagram of the configuration and usage of the information processing apparatus according to the first embodiment of the present invention.

図1において、クロック制御部10は、クロック調節部102と、クロック調節ルール101を保持するルール格納部109とを有する。プロセッサ20は、情報処理装置において主となる演算処理機能を有する部位であり、メモリバスインターフェース30は、プロセッサ20から、情報の読み書きが可能であってメモリバス40に接続されたメモリ50へのアクセス調停を行なう部位である。クロック調節ルール101は、処理忙閑状態識別部103からの処理忙閑状態情報111と、バス忙閑状態識別部104からのバス忙閑状態情報112とに基づき、プロセッサ20及びメモリバスインターフェース30を最適に動作させるための動作クロック周波数を制御するための規則である。クロック調節部102は、プロセッサ20及びメモリバスインターフェース30の忙閑状態の情報を入力とし、その忙閑状態に応じて、プロセッサ20及びメモリバスインターフェース30の各々へ供給されるクロックの変更指示を出力する。処理忙閑状態識別部103は、プロセッサ20の忙閑状態を識別し、その結果をクロック調節部102へ出力する機能を有する装置であり、バス忙閑状態識別部104は、メモリバスインターフェース30の忙閑状態を識別し、その結果をクロック調節部102へ出力する機能を有する装置である。   In FIG. 1, the clock control unit 10 includes a clock adjustment unit 102 and a rule storage unit 109 that holds a clock adjustment rule 101. The processor 20 is a part having a main arithmetic processing function in the information processing apparatus, and the memory bus interface 30 is capable of reading / writing information from the processor 20 and accessing the memory 50 connected to the memory bus 40. This is the site for mediation. Based on the processing busy state information 111 from the processing busy state identifying unit 103 and the bus busy state information 112 from the bus busy state identifying unit 104, the clock adjustment rule 101 determines whether the processor 20 and the memory bus interface 30 are connected. This is a rule for controlling the operation clock frequency for optimal operation. The clock adjustment unit 102 receives information on the busy state of the processor 20 and the memory bus interface 30 and outputs an instruction to change the clock supplied to each of the processor 20 and the memory bus interface 30 according to the busy state. To do. The processing busy state identifying unit 103 is a device having a function of identifying the busy state of the processor 20 and outputting the result to the clock adjusting unit 102. The bus busy state identifying unit 104 is a function of the memory bus interface 30. The device has a function of identifying a busy state and outputting the result to the clock adjusting unit 102.

可変処理クロック発生器105は、プロセッサ20へ供給する動作クロック周波数を決定する制御信号である処理クロック制御情報113に基づいた周波数の動作クロックをプロセッサ20へ供給する制御装置である。可変バスクロック発生器106は、メモリバスインターフェース30へ供給する動作クロック周波数を決定する制御信号であるバスクロック制御情報114に基づいた周波数の動作クロックをメモリバスインターフェース30へ供給する制御装置である。   The variable processing clock generator 105 is a control device that supplies an operation clock having a frequency based on the processing clock control information 113, which is a control signal for determining an operation clock frequency supplied to the processor 20, to the processor 20. The variable bus clock generator 106 is a control device that supplies the memory bus interface 30 with an operation clock having a frequency based on the bus clock control information 114 that is a control signal that determines the operation clock frequency supplied to the memory bus interface 30.

処理忙閑状態情報111はプロセッサ20の動作に必要十分なクロックの周波数を判断するために必要なプロセッサ20の忙閑状態を観測した結果を示す信号である。バス忙閑状態情報112はメモリバスインターフェース30の動作に必要十分なクロックの周波数を判断するために必要なメモリバスインターフェース30の忙閑状態を観測した結果を示す信号である。処理クロック制御情報113は、クロック調節部102から可変処理クロック発生器105へ通知される、プロセッサ供給クロック115の変更を制御するための処理クロック制御信号である。バスクロック制御情報114は、クロック調節部102から可変バスクロック発生器106へ通知される、バス供給クロック116の変更を制御するためのバスクロック制御信号である。プロセッサ供給クロック115は可変処理クロック発生器105よりプロセッサ20に供給される動作クロックであり、バス供給クロック116は可変バスクロック発生器106よりメモリバスインターフェース30に供給される動作クロックである。   The busy / busy state information 111 is a signal indicating the result of observing the busy / busy state of the processor 20 that is necessary for determining the clock frequency necessary and sufficient for the operation of the processor 20. The bus busy / busy state information 112 is a signal indicating a result of observing the busy / busy state of the memory bus interface 30 necessary for determining the clock frequency necessary and sufficient for the operation of the memory bus interface 30. The processing clock control information 113 is a processing clock control signal for controlling the change of the processor supply clock 115 notified from the clock adjusting unit 102 to the variable processing clock generator 105. The bus clock control information 114 is a bus clock control signal for controlling the change of the bus supply clock 116 notified from the clock adjusting unit 102 to the variable bus clock generator 106. The processor supply clock 115 is an operation clock supplied from the variable processing clock generator 105 to the processor 20, and the bus supply clock 116 is an operation clock supplied from the variable bus clock generator 106 to the memory bus interface 30.

以上のように構成された本実施形態の情報処理装置の動作を以下に説明する。   The operation of the information processing apparatus of the present embodiment configured as described above will be described below.

処理忙閑状態識別部103は、プロセッサ20の忙閑状態を観測し、観測結果である処理忙閑状態情報111をクロック調節部102に対して出力する。処理忙閑状態識別部103は、例えばプロセッサ20が有する内部レジスタの単位時間当たりの使用回数を計数し、予め保持している基準値と比較することによりプロセッサ20の処理の忙閑を識別する。処理忙閑状態情報111は、処理忙閑状態識別部103より出力されるプロセッサ20の処理の忙閑の度合いを二値又は多値で表す情報である。   The processing busy state identifying unit 103 observes the busy state of the processor 20 and outputs processing busy state information 111 as an observation result to the clock adjusting unit 102. For example, the processing busy state identifying unit 103 counts the number of times the internal register of the processor 20 is used per unit time and compares it with a reference value held in advance to identify the busy state of the processing of the processor 20. The busy / busy state information 111 is information representing the degree of busyness of processing of the processor 20 output from the busy / busy state identification unit 103 in binary or multivalued form.

バス忙閑状態識別部104は、メモリバスインターフェース30の忙閑状態を観測し、観測結果であるバス忙閑状態情報112をクロック調節部102に対して出力する。バス忙閑状態識別部104は、例えばメモリバスインターフェース30とメモリ50との間で通信される単位時間当たりのデータの量を計測し、予め保持している基準値と比較することによりメモリバスインターフェース30の処理の忙閑を識別する。バス忙閑状態情報112は、バス忙閑状態識別部104より出力されるメモリバスインターフェース30の処理の忙閑の度合いを二値又は多値で表す情報である。   The bus busy state identifying unit 104 observes the busy state of the memory bus interface 30 and outputs the bus busy state information 112 as an observation result to the clock adjusting unit 102. The bus busy state identification unit 104 measures the amount of data per unit time communicated between the memory bus interface 30 and the memory 50, for example, and compares it with a reference value held in advance. 30 busy and busy times are identified. The bus busy / busy state information 112 is information representing the degree of busyness of processing of the memory bus interface 30 output from the bus busy / busy state identifying unit 104 in binary or multivalued manner.

クロック調節部102は、処理忙閑状態情報111、バス忙閑状態情報112及びクロック調節ルール101に基づいて、可変処理クロック発生器105に対して動作クロックの発生を指示する処理クロック制御情報113を出力するとともに、可変バスクロック発生器106に対して動作クロックの発生を指示するバスクロック制御情報114を出力する。   Based on the processing busy state information 111, the bus busy state information 112, and the clock adjustment rule 101, the clock adjustment unit 102 provides processing clock control information 113 for instructing the variable processing clock generator 105 to generate an operation clock. At the same time, the bus clock control information 114 for instructing the variable bus clock generator 106 to generate an operation clock is output.

図2にクロック調節ルール101の一例を示す。本例では、処理忙閑状態情報111及びバス忙閑状態情報112により示される忙閑の度合いは、高中低の三値で例示されている。プロセッサ忙閑度合い201は処理忙閑状態情報111により示されるプロセッサ20の忙閑の度合いであり、バス忙閑度合い202はバス忙閑状態情報112により示されるメモリバスインターフェース30の忙閑の度合いである。処理クロック制御情報出力203は、クロック調節部102から可変処理クロック発生器105へ出力される処理クロック制御情報113の内容である。バスクロック制御情報出力204は、クロック調節部102から可変バスクロック発生器106へ出力されるバスクロック制御情報114の内容である。   FIG. 2 shows an example of the clock adjustment rule 101. In this example, the degree of busyness indicated by the processing busy state information 111 and the bus busy state information 112 is exemplified by three values of high, medium and low. The processor busyness degree 201 is the busyness degree of the processor 20 indicated by the processing busyness state information 111, and the bus busyness degree 202 is the busyness degree of the memory bus interface 30 indicated by the bus busyness state information 112. is there. The processing clock control information output 203 is the content of the processing clock control information 113 output from the clock adjustment unit 102 to the variable processing clock generator 105. The bus clock control information output 204 is the contents of the bus clock control information 114 output from the clock adjustment unit 102 to the variable bus clock generator 106.

クロック調節ルール101は、処理忙閑状態情報111及びバス忙閑状態情報112により示されるプロセッサ忙閑度合い201及びバス忙閑度合い202と、処理クロック制御情報出力203及びバスクロック制御情報出力204との対応関係を示す情報である。   The clock adjustment rule 101 includes a processor busy degree 201 and a bus busy degree 202 indicated by the processing busy state information 111 and the bus busy state information 112, a processing clock control information output 203 and a bus clock control information output 204. This is information indicating a correspondence relationship.

可変処理クロック発生器105は、クロック調節部102からの処理クロック制御情報113に基づき、プロセッサ20の動作に必要なプロセッサ供給クロック115の周波数を調節する。例えば、可変処理クロック発生器105は、元の発振周波数に対して処理クロック制御情報113に基づいた乗数を乗じる周波数逓倍回路である。   The variable processing clock generator 105 adjusts the frequency of the processor supply clock 115 necessary for the operation of the processor 20 based on the processing clock control information 113 from the clock adjustment unit 102. For example, the variable processing clock generator 105 is a frequency multiplication circuit that multiplies the original oscillation frequency by a multiplier based on the processing clock control information 113.

可変バスクロック発生器106は、クロック調節部102からのバスクロック制御情報114に基づき、メモリバスインターフェース30の動作に必要なバス供給クロック116の周波数を調節する。例えば、可変バスクロック発生器106は、元の発振周波数に対してバスクロック制御情報114に基づいた乗数を乗じる周波数逓倍回路である。   The variable bus clock generator 106 adjusts the frequency of the bus supply clock 116 necessary for the operation of the memory bus interface 30 based on the bus clock control information 114 from the clock adjustment unit 102. For example, the variable bus clock generator 106 is a frequency multiplication circuit that multiplies the original oscillation frequency by a multiplier based on the bus clock control information 114.

以上の動作により、プロセッサ20にて実行されるソフトウェアの処理単位にかかわらずに、プロセッサ20及びメモリバスインターフェース30の動作状態の最適な制御が実現される。   With the above operation, optimum control of the operating state of the processor 20 and the memory bus interface 30 is realized regardless of the processing unit of software executed by the processor 20.

尚、処理忙閑状態識別部103は、プロセッサ20が有するメモリキャッシュへのアクセス頻度に基づいてプロセッサ20の忙閑状態を識別しても良い。プロセッサ20が有するキャッシュへのアクセス頻度が高いという事は、プロセッサ20の処理量も多い。また、プロセッサ20が有するキャッシュがライトバックキャッシュである場合、キャッシュへのアクセス頻度とメモリ50へのアクセス頻度とが一致しているとは限らないことは周知である。   Note that the processing busy state identifying unit 103 may identify the busy state of the processor 20 based on the frequency of access to the memory cache of the processor 20. The high access frequency to the cache of the processor 20 means that the processing amount of the processor 20 is large. In addition, when the cache of the processor 20 is a write-back cache, it is well known that the access frequency to the cache and the access frequency to the memory 50 do not always match.

上記構成では、処理忙閑状態識別部103は、プロセッサ20内のキャッシュへのアクセス頻度を観測することでプロセッサ20の忙閑状態を得ることが可能である。バス忙閑状態識別部104は、キャッシュからメモリ50へのデータ転送の頻度を観測することでプロセッサ20内のキャッシュが使用するメモリバスインターフェース30の忙閑状態を得ることが可能である。   In the above configuration, the busy / busy state identification unit 103 can obtain the busy / busy state of the processor 20 by observing the access frequency to the cache in the processor 20. The bus busy state identification unit 104 can obtain the busy state of the memory bus interface 30 used by the cache in the processor 20 by observing the frequency of data transfer from the cache to the memory 50.

従って、クロック調節部102は、処理忙閑状態識別部103からのキャッシュへのアクセス頻度を含む処理忙閑状態情報111と、バス忙閑状態識別部104からのキャッシュからメモリ50へのデータ転送の頻度を含むバス忙閑状態情報112とを入力とし、クロック調節ルール101を用いることにより、プロセッサ20及びメモリバスインターフェース30の各々に対して最適なクロックが供給されるように制御値を導出することが可能となる。   Accordingly, the clock adjustment unit 102 performs processing busy state information 111 including the access frequency to the cache from the processing busy state identifying unit 103 and data transfer from the cache to the memory 50 from the bus busy state identifying unit 104. By using the bus busy state information 112 including the frequency as an input and using the clock adjustment rule 101, a control value is derived so that an optimum clock is supplied to each of the processor 20 and the memory bus interface 30. Is possible.

本構成とすることで、プロセッサ内蔵レジスタの使用頻度を計測する場合に比べて、より単純な構成でプロセッサ20及びメモリバスインターフェース30に対し、最適な周波数のクロックを供給することができるという効果を得ることが可能となる。   By adopting this configuration, it is possible to supply a clock with an optimal frequency to the processor 20 and the memory bus interface 30 with a simpler configuration than when measuring the frequency of use of the processor built-in registers. Can be obtained.

また、上記の構成では、処理忙閑状態識別部103は、プロセッサ20が有するアキュムレータのアクセス頻度を観測して、プロセッサ20の忙閑状態を識別しても良い。プロセッサ20の計算量が多い場合、プロセッサ20内のアキュムレータの使用頻度も高いことは周知である。プロセッサ20が有するアキュムレータのアクセス頻度を観測する場合、一般的に複数個存在するプロセッサ内蔵レジスタの使用頻度を計測する場合に比べて、より単純な構成でプロセッサ20及びメモリバスインターフェース30に対し、最適な周波数のクロックを供給することができるという効果を得ることが可能となる。   In the above configuration, the busy state identification unit 103 may identify the busy state of the processor 20 by observing the accumulator access frequency of the processor 20. It is well known that when the calculation amount of the processor 20 is large, the accumulator in the processor 20 is frequently used. When the accumulator access frequency of the processor 20 is observed, the processor 20 and the memory bus interface 30 are most suitable for the processor 20 and the memory bus interface 30 with a simpler configuration than the case of measuring the frequency of use of a plurality of processor built-in registers. It is possible to obtain an effect that a clock having a proper frequency can be supplied.

更に、上記では、プロセッサ20の構成について述べているが、プロセッサ20の構成は上記の内容に限定されるものではない。   Furthermore, although the configuration of the processor 20 has been described above, the configuration of the processor 20 is not limited to the above content.

メモリバスインターフェース30からメモリ50へのアクセス時には、ストローブ信号が出力される事は周知である。そのためメモリバスインターフェース30が発するストローブ信号の単位時間当たりの発生回数を測定し、ストローブ信号の発生比率が低い場合は、メモリ50へのアクセスが少なく、ストローブ信号の発生比率が高い場合は、メモリ50へのアクセスが多いと判別出来る事を用いて、バス忙閑状態識別部104はメモリバスインターフェース30の忙閑状態を識別しても良い。本構成とすることで、メモリバス40を流れるデータの流量を計測する場合に比べて、より単純な構成でプロセッサ20及びメモリバスインターフェース30に対し、最適な周波数のクロックを供給することができるという効果を得ることが可能となる。   It is well known that a strobe signal is output when the memory bus interface 30 accesses the memory 50. Therefore, the number of occurrences per unit time of the strobe signal generated by the memory bus interface 30 is measured. When the generation ratio of the strobe signal is low, the memory 50 is less accessed, and when the generation ratio of the strobe signal is high, the memory 50 The bus busy state identifying unit 104 may identify the busy state of the memory bus interface 30 using the fact that it can be determined that there are many accesses to the memory bus interface 30. With this configuration, it is possible to supply a clock with an optimal frequency to the processor 20 and the memory bus interface 30 with a simpler configuration than when measuring the flow rate of data flowing through the memory bus 40. An effect can be obtained.

また、上記の構成において、クロック調節部102の処理をプロセッサ20で実行されるソフトウェアにて実現しても良い。クロック調節部102の動作は一般的なプロセッサにおけるソフトウェア処理としてプログラムに記述することが可能である。クロック調節部102の処理をプロセッサ20で実行されるソフトウェアにて実現する場合、クロック調節部102をプロセッサ20の外部に配する場合に比べて、より平易な構成で、クロック調節部102をプロセッサ20の外部に配する場合に得られる効果と同等の効果を得ることが可能となる。   In the above configuration, the processing of the clock adjustment unit 102 may be realized by software executed by the processor 20. The operation of the clock adjustment unit 102 can be described in a program as software processing in a general processor. When the processing of the clock adjustment unit 102 is realized by software executed by the processor 20, the clock adjustment unit 102 is configured with a simpler configuration than the case where the clock adjustment unit 102 is arranged outside the processor 20. It is possible to obtain an effect equivalent to the effect obtained when the battery is arranged outside of the above.

また、上記の構成において、クロック調節ルール101は、メモリ50内に、プロセッサ20内に、又はその他の情報の読み書きが可能なメモリに記録されても良い。プロセッサ20にて実行されるソフトウェアの処理構成が変更された際に、クロック調節ルール101もあわせて変更することにより、より精密なプロセッサ20及びメモリバスインターフェース30の動作状態制御が可能となる。   In the above configuration, the clock adjustment rule 101 may be recorded in the memory 50, in the processor 20, or in a memory that can read and write other information. When the processing configuration of the software executed by the processor 20 is changed, the clock adjustment rule 101 is also changed, so that more precise operation state control of the processor 20 and the memory bus interface 30 can be performed.

図1の構成において、プロセッサ20及びメモリバスインターフェース30の忙閑状態の観測を開始する際のプロセッサ20におけるソフトウェアの実行位置と、観測結果から算出した可変処理クロック発生器105及び可変バスクロック発生器106に発したクロック制御情報とを記憶し、記憶したクロック制御情報を元にクロック制御値を設定することで観測周期分待たずにクロック調節が可能となる。   In the configuration of FIG. 1, the execution position of the software in the processor 20 when starting the observation of the busy state of the processor 20 and the memory bus interface 30, and the variable processing clock generator 105 and the variable bus clock generator calculated from the observation result The clock control information issued to 106 is stored, and a clock control value is set based on the stored clock control information, thereby enabling clock adjustment without waiting for the observation period.

尚以下では、「プロセッサ20及びメモリバスインターフェース30の忙閑状態」を「処理及びバスの忙閑状態」ともいう。   In the following, “the busy state of the processor 20 and the memory bus interface 30” is also referred to as “the busy state of processing and buses”.

(第二の実施形態)
以下に図3〜図7を参照して第二の実施形態を説明する。
(Second embodiment)
The second embodiment will be described below with reference to FIGS.

クロック調節記憶部302は、処理及びバスの忙閑状態の観測を開始する際のプロセッサ20におけるソフトウェアの実行位置と、観測の結果から算出されて可変処理クロック発生器105及び可変バスクロック発生器106に発せられたクロック制御情報とを含むクロック制御情報303を記憶する。ソフトウェア実行位置比較部401は、現在のソフトウェアの実行位置と前述の記憶されたソフトウェアの実行位置とを比較し、両者が一致した際にクロック調節部102に対して実行位置一致信号412を発する。クロック調節部102は、実行位置一致信号412を契機に、処理クロック制御情報113を可変処理クロック発生器105に通知するとともに、バスクロック制御情報114を可変バスクロック発生器106に通知する機能を有する装置である。   The clock adjustment storage unit 302 is calculated from the execution position of the software in the processor 20 at the time of starting the observation of the busy state of the processing and the bus, and the variable processing clock generator 105 and the variable bus clock generator 106 calculated from the observation result. The clock control information 303 including the clock control information issued to is stored. The software execution position comparison unit 401 compares the current software execution position with the stored software execution position described above, and issues an execution position match signal 412 to the clock adjustment unit 102 when the two match. The clock adjustment unit 102 has a function of notifying the variable processing clock generator 105 of the processing clock control information 113 and also notifying the variable bus clock generator 106 of the bus clock control information 114 in response to the execution position coincidence signal 412. Device.

現在のソフトウェアの実行位置311はプログラムカウンタ301を参照することで得ることができる。クロック制御情報312は、クロック調節部102から出力された処理及びバスの忙閑状態の観測を開始する際のプロセッサ20におけるソフトウェアの実行位置と、観測の結果から算出されて可変処理クロック発生器105及び可変バスクロック発生器106に発せられたクロック制御情報113、114とを含む情報である。クロック制御情報312は、ソフトウェアの先頭実行位置や、観測時の処理及びバスの忙閑状態を含んでも良い。実行位置一致信号412は、現在のソフトウェアの実行位置と前述の記憶されたソフトウェアの実行位置とが一致した際に、クロック調節部102に対してソフトウェア実行位置比較部401が発する信号である。   The current software execution position 311 can be obtained by referring to the program counter 301. The clock control information 312 is calculated from the execution position of the software in the processor 20 at the time of starting the processing output from the clock adjusting unit 102 and the observation of the busy state of the bus, and the result of the observation, and the variable processing clock generator 105. And clock control information 113 and 114 issued to the variable bus clock generator 106. The clock control information 312 may include the top execution position of software, the processing at the time of observation, and the busy state of the bus. The execution position coincidence signal 412 is a signal issued by the software execution position comparison unit 401 to the clock adjustment unit 102 when the current execution position of the software matches the execution position of the stored software described above.

以上のように構成された本実施形態の情報処理装置の動作を以下に説明する。   The operation of the information processing apparatus of the present embodiment configured as described above will be described below.

クロック調節部102は、処理忙閑状態識別部103からの処理忙閑状態情報111と、バス忙閑状態識別部104からのバス忙閑状態情報112と、クロック調節ルール101とに基づいて、クロック制御情報113、114を算出する(S401)。そして、クロック調節部102は、処理及びバスの忙閑状態の観測を開始する際のプロセッサ20におけるソフトウェアの実行位置と、観測の結果から算出されて可変処理クロック発生器105及び可変バスクロック発生器106に発せられたクロック制御情報113、114とを含むクロック制御情報312をクロック調節記憶部302に対して出力する(S402)。クロック調節記憶部302はクロック調節部102からのクロック制御情報312を元にクロック制御情報303を生成し記憶する(S403)。   Based on the busy state information 111 from the busy state identifying unit 103, the busy state information 112 from the busy state identifying unit 104, and the clock adjustment rule 101, the clock adjusting unit 102 The control information 113 and 114 are calculated (S401). Then, the clock adjustment unit 102 calculates the execution position of the software in the processor 20 when observing the busy state of processing and buses, and the variable processing clock generator 105 and the variable bus clock generator calculated from the observation result. The clock control information 312 including the clock control information 113 and 114 issued to 106 is output to the clock adjustment storage unit 302 (S402). The clock adjustment storage unit 302 generates and stores clock control information 303 based on the clock control information 312 from the clock adjustment unit 102 (S403).

ソフトウェア実行位置比較部401は、現在のソフトウェアの実行位置と前述の記憶されたソフトウェアの実行位置とを比較し(S501)、両者が一致した際にクロック調節部102に対して実行位置一致信号412を発する(S502)。   The software execution position comparison unit 401 compares the current software execution position with the previously stored software execution position (S501), and when the two match, the software execution position comparison signal 412 is sent to the clock adjustment unit 102. Is issued (S502).

クロック調節部102は、実行位置一致信号412の有無を判断し(S601)、実行位置一致信号412が発生された場合(S601でYes)、前述の記憶されたクロック制御情報113、114を可変処理クロック発生器105及び可変バスクロック発生器106に通知する(S602)。   The clock adjustment unit 102 determines the presence / absence of the execution position coincidence signal 412 (S601), and when the execution position coincidence signal 412 is generated (Yes in S601), the stored clock control information 113 and 114 are variably processed. The clock generator 105 and variable bus clock generator 106 are notified (S602).

また、クロック調節部102は、現在の処理及びバスの忙閑状態が記憶されている処理及びバスの忙閑状態と異なる場合(S603でNo)、新たに観測された結果から得られた処理忙閑状態情報111及びバス忙閑状態情報112とクロック調節ルール101とからクロック制御値を算出し、可変処理クロック発生器105及び可変バスクロック発生器106それぞれに通知する(S604)。   Further, when the current processing and the busy state of the bus are different from the stored processing and the busy state of the bus (No in S603), the clock adjustment unit 102 performs processing busy based on the newly observed result. A clock control value is calculated from the idle state information 111, the bus busy state information 112, and the clock adjustment rule 101, and notified to the variable processing clock generator 105 and the variable bus clock generator 106 (S604).

図7に記憶されたクロック制御情報303の一例を示す。本例は、プロセッサ20におけるソフトウェアの実行位置の先頭501と、クロック変更時のソフトウェア実行位置502と、クロック変更時の処理忙閑状態503及びバス忙閑状態504と、クロック変更時の処理クロック制御値505及びバスクロック制御値506とを示している。本例は、クロック変更時の処理忙閑状態503及びバス忙閑状態504の度合いを高中低の三値で示し、クロック変更時の処理クロック制御値505及びバスクロック制御値506をXYZの三値で例示している。記憶されたクロック制御情報303は、クロック切替時のソフトウェア実行位置502における処理忙閑状態503及びバス忙閑状態504と、処理クロック制御値505及びバスクロック制御値506との対応関係を示す情報である。また、ソフトウェアの実行位置の先頭501を付加することにより、ソフトウェアの実行位置と前述の記憶されたソフトウェアの実行位置を比較する処理の削減が可能となる。   An example of the clock control information 303 stored in FIG. 7 is shown. In this example, the top 501 of the software execution position in the processor 20, the software execution position 502 when the clock is changed, the busy state 503 and the busy state 504 when the clock is changed, and the processing clock control when the clock is changed A value 505 and a bus clock control value 506 are shown. In this example, the processing busy state 503 and the bus busy state 504 at the time of the clock change are indicated by three levels of high, medium and low, and the processing clock control value 505 and the bus clock control value 506 at the time of the clock change are three values of XYZ. This is illustrated in The stored clock control information 303 is information indicating a correspondence relationship between the processing busy state 503 and the bus busy state 504, the processing clock control value 505, and the bus clock control value 506 at the software execution position 502 at the time of clock switching. is there. Further, by adding the head 501 of the software execution position, it is possible to reduce the processing for comparing the software execution position with the stored software execution position.

以上の動作により、前回実行時と忙閑状態観測結果が同じ場合は、観測周期分遅延することなくクロック制御が可能となる。また、前回実行時と忙閑状態観測結果が異なる場合、新たに算出したクロック制御値でクロックを調節する。そのため、実動作時のプロセッサ20及びメモリバスインターフェース30の繁忙状態を元に処理負荷を判断してプロセッサ周波数を調節する事が可能となり、ソフトウェアの構成に関わらずにプロセッサ20及びメモリバスインターフェース30の処理負荷に対応した省電力制御が可能となる。   With the above operation, when the busy state observation result is the same as the previous execution, the clock control is possible without delaying by the observation period. When the busy state observation result is different from the previous execution, the clock is adjusted with the newly calculated clock control value. Therefore, it is possible to adjust the processor frequency by determining the processing load based on the busy state of the processor 20 and the memory bus interface 30 during actual operation, and the processor 20 and the memory bus interface 30 can be adjusted regardless of the software configuration. Power saving control corresponding to the processing load becomes possible.

図1の構成において、ソフトウェアの割り込み処理の発生をクロック調節部102へ通知することで、割り込み処理を遅らせることなく、実動作時のプロセッサ20及びメモリバスインターフェース30の繁忙状態を元に処理負荷を判断してプロセッサ20の周波数を調節する事が可能となり、ソフトウェアの構成に関わらずにプロセッサ20及びメモリバスインターフェース30の処理負荷に対応した省電力制御が可能となる。   In the configuration of FIG. 1, by notifying the clock adjusting unit 102 of the occurrence of software interrupt processing, the processing load is increased based on the busy state of the processor 20 and the memory bus interface 30 during actual operation without delaying the interrupt processing. Thus, the frequency of the processor 20 can be adjusted and power saving control corresponding to the processing load of the processor 20 and the memory bus interface 30 can be performed regardless of the software configuration.

(第三の実施形態)
以下に図8〜図13を参照して第三の実施形態を説明する。
(Third embodiment)
The third embodiment will be described below with reference to FIGS.

割り込み検出部901はソフトウェア割り込みの発生を検知する。また、割り込み検出部901は、OSの割り込み処理部やプロセッサのrti命令などから処理完了を検出すると、クロック調節部102へ割り込み処理完了を通知する機能を有する装置である。クロック調節部102は、割り込み処理の発生を検出する割り込み検出部901から割り込み発生の信号を受けると、クロック調節ルール101を特定のクロック調節ルール101aに切り替えてクロック制御情報を発する機能を有する装置である。   The interrupt detection unit 901 detects the occurrence of a software interrupt. The interrupt detection unit 901 is a device having a function of notifying the clock adjustment unit 102 of completion of interrupt processing when processing completion is detected from an interrupt processing unit of the OS or an rti instruction of the processor. When receiving an interrupt generation signal from the interrupt detection unit 901 that detects the occurrence of interrupt processing, the clock adjustment unit 102 is a device having a function of switching the clock adjustment rule 101 to a specific clock adjustment rule 101a and generating clock control information. is there.

割り込み情報911は、ソフトウェア割り込み処理の発生が検知された場合、クロック調節部102へ通知される、発生した割り込みの種類を示す情報である。また、割り込み情報911は、ソフトウェア割り込み処理完了が検知された場合、クロック調節部102へ通知される、終了した割り込みの種類を示す情報である。   The interrupt information 911 is information indicating the type of interrupt that has been notified to the clock adjustment unit 102 when the occurrence of software interrupt processing is detected. The interrupt information 911 is information indicating the type of interrupt that has been completed and is notified to the clock adjustment unit 102 when the completion of the software interrupt process is detected.

以上のように構成された本実施形態の情報処理装置の動作を以下に説明する。   The operation of the information processing apparatus of the present embodiment configured as described above will be described below.

割り込み検出部901はソフトウェア割り込み処理の発生を検知する(S901)と、割り込み情報911をクロック調節部102へ通知する(S902)。クロック調節部102は割り込み処理が発生しているか否かを判定し(S1001)、割り込み処理が発生していた場合(S1001でYes)、割り込み情報911を元にクロック調節ルール101を特定のクロック調節ルール101aに変更する。クロック調節部102は、特定のクロック調節ルール101aと処理及びバスの忙閑状態とからクロック制御値を決定して(S1002)、可変処理クロック発生器105と可変バスクロック発生器106とにクロック制御情報113、114それぞれを通知する(S1004)。割り込み処理が発生していなかった場合(S1001でNo)、クロック調節部102は通常のクロック調節ルール101と処理及びバスの忙閑状態とからクロック制御値を決定して(S1003)、可変処理クロック発生器105と可変バスクロック発生器106とにクロック制御情報113、114それぞれを通知する(S1004)。   When detecting occurrence of software interrupt processing (S901), the interrupt detection unit 901 notifies the clock adjustment unit 102 of interrupt information 911 (S902). The clock adjustment unit 102 determines whether or not an interrupt process has occurred (S1001). If an interrupt process has occurred (Yes in S1001), the clock adjustment rule 101 is set to a specific clock adjustment based on the interrupt information 911. Change to rule 101a. The clock adjustment unit 102 determines a clock control value from the specific clock adjustment rule 101a and the busy state of processing and bus (S1002), and performs clock control to the variable processing clock generator 105 and the variable bus clock generator 106. Each of the information 113 and 114 is notified (S1004). If interrupt processing has not occurred (No in S1001), the clock adjustment unit 102 determines a clock control value from the normal clock adjustment rule 101 and the busy state of processing and buses (S1003), and the variable processing clock. The clock control information 113 and 114 are notified to the generator 105 and the variable bus clock generator 106 (S1004).

特定のクロック調節ルール101aは割り込みの種類毎に定義することも可能である。割り込みの種類毎に特定のクロック調節ルール101aを定義することで、必要以上の電力消費を防ぐことができる。   The specific clock adjustment rule 101a can be defined for each interrupt type. By defining a specific clock adjustment rule 101a for each interrupt type, it is possible to prevent unnecessary power consumption.

図11に特定のクロック調節ルール101aの一例を示す。本例は図2のクロック調節ルール101の例において、プロセッサ忙閑度合い201又はバス忙閑度合い202の値が中又は低である場合に、処理クロック制御情報出力203及びバスクロック制御情報出力204の値を「クロック周波数を上げる」設定に変更したものである。   FIG. 11 shows an example of a specific clock adjustment rule 101a. In the example of the clock adjustment rule 101 in FIG. 2, when the value of the processor busy degree 201 or the bus busy degree 202 is medium or low, the processing clock control information output 203 and the bus clock control information output 204 The value is changed to "Increase clock frequency" setting.

以上の動作により、割り込み処理を遅らせることなく、実動作時のプロセッサ20及びメモリバスインターフェース30の繁忙状態を元に処理負荷を判断してプロセッサ20の周波数を調節する事が可能となり、ソフトウェアの構成に関わらずにプロセッサ20及びメモリバスインターフェース30の処理負荷に対応した省電力制御が可能となる。   With the above operation, it is possible to adjust the frequency of the processor 20 by judging the processing load based on the busy state of the processor 20 and the memory bus interface 30 during actual operation without delaying interrupt processing. Regardless, the power saving control corresponding to the processing load of the processor 20 and the memory bus interface 30 is possible.

また、割り込み処理完了をクロック調節部102へ通知することで割り込み処理のみ特定のクロック調節を実施することが可能となる。   In addition, by notifying the clock adjusting unit 102 of completion of interrupt processing, it is possible to perform specific clock adjustment only for interrupt processing.

割り込み検出部901は、割り込み処理完了を検出する(S1201でYes)と、クロック調節部102へ割り込み情報911を通知する(S1202)。クロック調節部102は、割り込み処理が完了したか否かを判定し(S1303)、割り込み処理が完了していて、割り込み検出部901から割り込み処理完了を示す割り込み情報911を得ると(S1303でYes)、特定のクロック調節ルール101aを通常のクロック調節ルール101に変更する。クロック調節部102は、通常のクロック調節ルール101と処理及びバスの忙閑状態とからクロック制御値を決定して(S1304)、可変処理クロック発生器105と可変バスクロック発生器106とにクロック制御情報113、114それぞれを通知する(S1305)。   When the interrupt detection unit 901 detects completion of interrupt processing (Yes in S1201), the interrupt detection unit 901 notifies the clock adjustment unit 102 of interrupt information 911 (S1202). The clock adjustment unit 102 determines whether or not the interrupt processing is completed (S1303), and when the interrupt processing is completed and the interrupt information 911 indicating completion of the interrupt processing is obtained from the interrupt detection unit 901 (Yes in S1303). The specific clock adjustment rule 101a is changed to the normal clock adjustment rule 101. The clock adjustment unit 102 determines a clock control value from the normal clock adjustment rule 101 and the busy state of processing and bus (S1304), and performs clock control to the variable processing clock generator 105 and the variable bus clock generator 106. Each of the information 113 and 114 is notified (S1305).

以上の動作により、ソフトウェア割り込み処理が発生した場合、割り込み処理のみ特定のクロック制御値に設定することが可能となり、割り込み処理を遅らせることなく、実動作時のプロセッサ20及びメモリバスインターフェース30の繁忙状態を元に処理負荷を判断してプロセッサ20の周波数を調節する事が可能となり、ソフトウェアの構成に関わらずにプロセッサ20及びメモリバスインターフェース30の処理負荷に対応した省電力制御が可能となる。   With the above operation, when software interrupt processing occurs, it becomes possible to set only the interrupt processing to a specific clock control value, and the processor 20 and the memory bus interface 30 are busy during actual operation without delaying the interrupt processing. Thus, it is possible to determine the processing load based on the above and adjust the frequency of the processor 20, and power saving control corresponding to the processing load of the processor 20 and the memory bus interface 30 becomes possible regardless of the software configuration.

図1の構成において、ソフトウェア切替情報とクロック調節ルールとに対してソフトウェア毎に優先度を設定することで優先度に応じたクロック制御が可能となり、一定時間内に処理を完了しなければならないソフトウェアがあった場合、動作保証することができる。   In the configuration of FIG. 1, by setting a priority for each software with respect to the software switching information and the clock adjustment rule, the clock control according to the priority becomes possible, and the software that must be completed within a certain time If there is, operation can be guaranteed.

(第四の実施形態)
以下に図14〜図16を参照して第四の実施形態を説明する。
(Fourth embodiment)
The fourth embodiment will be described below with reference to FIGS.

ソフトウェアモジュール切替検出部1301は、プロセッサ20上で動作するソフトウェア単位の切り替わりを検出し、検出した識別情報1311をクロック調節部102に通知する。また、ソフトウェアモジュール切替検出部1301は、クロック調節ルール101に対してソフトウェア毎に優先度を設定した優先度付きクロック調節ルールを定義する。クロック調節部102は、ソフトウェア識別情報1311から次に実行するソフトウェアに対応した優先度付きクロック調節ルールと、処理及びバスの忙閑状態とからクロック制御値を決定する機能を有する装置である。   The software module switching detection unit 1301 detects switching of software units operating on the processor 20 and notifies the clock adjustment unit 102 of the detected identification information 1311. Further, the software module switching detection unit 1301 defines a clock adjustment rule with a priority in which a priority is set for each software with respect to the clock adjustment rule 101. The clock adjustment unit 102 is a device having a function of determining a clock control value from a clock adjustment rule with priority corresponding to software to be executed next from the software identification information 1311 and a busy state of processing and buses.

ソフトウェア識別情報1311は、プロセッサ20上で動作するソフトウェアの切り替わり時刻(切り替ったタイミング)と、次に実行されるソフトウェア単位とを示す情報である。   The software identification information 1311 is information indicating a switching time (switching timing) of software operating on the processor 20 and a software unit to be executed next.

以上のように構成された本実施形態の情報処理装置の動作を以下に説明する。   The operation of the information processing apparatus of the present embodiment configured as described above will be described below.

ソフトウェアモジュール切替検出部1301は、OSのスケジューラからプロセッサ20上で動作するソフトウェア単位の切り替わりを検出し(S1501でYes)、切り替わり時刻(切り替ったタイミング)と、次に実行されるソフトウェア単位とを示す識別情報1311をクロック調節部102に通知する(S1502)。また、ソフトウェアモジュール切替検出部1301は、クロック調節ルール101に対してソフトウェア毎に優先度を設定した優先度付きクロック調節ルールを定義する(S1502)。クロック調節部102は、ソフトウェア識別情報1311から次に実行するソフトウェアに対応したクロック調節ルールを検索し(S1503)、優先度付きクロック調節ルールに記載されているソフトウェアがソフトウェア識別情報1311が示すソフトウェアと一致する場合(S1503でYes)、優先度付きクロック調節ルールと処理及びバスの忙閑状態とからクロック制御値を決定して(S1504)、可変処理クロック発生器105と可変バスクロック発生器106とにクロック制御情報113、114それぞれを通知する。他方、優先度付きクロック調節ルールに記載されているソフトウェアがソフトウェア識別情報1311が示すソフトウェアと一致しない場合(S1503でNo)、通常のクロック調節ルールと処理及びバスの忙閑状態とからクロック制御値を決定して(S1505)、可変処理クロック発生器105と可変バスクロック発生器106とにクロック制御情報113、114それぞれを通知する。   The software module switching detection unit 1301 detects switching of software units operating on the processor 20 from the scheduler of the OS (Yes in S1501), and determines the switching time (switching timing) and the software unit to be executed next. The identification information 1311 shown is notified to the clock adjustment unit 102 (S1502). Further, the software module switching detection unit 1301 defines a priority-adjusted clock adjustment rule in which priority is set for each software with respect to the clock adjustment rule 101 (S1502). The clock adjustment unit 102 searches the software identification information 1311 for a clock adjustment rule corresponding to the software to be executed next (S1503), and the software described in the clock adjustment rule with priority is the software indicated by the software identification information 1311. If they match (Yes in S1503), a clock control value is determined from the clock adjustment rule with priority, the processing and the busy state of the bus (S1504), and the variable processing clock generator 105 and the variable bus clock generator 106 Is notified of the clock control information 113 and 114, respectively. On the other hand, when the software described in the clock adjustment rule with priority does not match the software indicated by the software identification information 1311 (No in S1503), the clock control value is determined from the normal clock adjustment rule and processing and the busy state of the bus. (S1505) and notify the variable processing clock generator 105 and the variable bus clock generator 106 of the clock control information 113 and 114, respectively.

ソフトウェアモジュール切替検出部1301から通知されたソフトウェアが優先度付きクロック調節ルールになければ、通常のクロック調節ルールを適応する機能を設けることで、優先度付きクロック調節ルールを格納するためのメモリ削減が可能となる。   If the software notified from the software module switching detection unit 1301 is not in the priority clock adjustment rule, a function for adapting the normal clock adjustment rule is provided to reduce the memory for storing the priority clock adjustment rule. It becomes possible.

上記構成は多重割り込みなどが発生した場合、割り込みの優先度に応じたクロック調節が可能となる。例えば優先度の高い割り込み処理の場合、クロックを高く設定することで高速に処理することができる。   In the above configuration, when multiple interrupts occur, the clock can be adjusted according to the priority of the interrupt. For example, in the case of high priority interrupt processing, high speed processing can be performed by setting the clock high.

図16に優先度付きクロック調節ルールの一例を示す。本例は、ソフトウェア又は処理名1401をA,Bの二値で定義し、ソフトウェア又は処理の優先度1402を中高の二値で定義し、ソフトウェア毎のプロセッサ忙閑度合い201及びバス忙閑度合い202と、処理クロック制御情報出力203及びバスクロック制御情報出力204との対応関係を示す情報である。   FIG. 16 shows an example of a clock adjustment rule with priority. In this example, the software or process name 1401 is defined by binary values A and B, the software or process priority 1402 is defined by binary values of medium and high, and the processor busyness 201 and bus busyness 202 for each software. And the processing clock control information output 203 and the bus clock control information output 204.

以上の動作により、ソフトウェア切替情報とクロック調節ルールに対してソフトウェア毎に優先度を設定することとで優先度に応じたクロック制御が可能となり、一定時間内に処理を完了しなければならないソフトウェアがあった場合、動作保証することができる。   With the above operation, setting the priority for each software with respect to the software switching information and the clock adjustment rule enables clock control according to the priority, and software that must complete the processing within a certain time. If there is, the operation can be guaranteed.

図14の構成において、クロック調節は処理及びバスの忙閑状態観測周期が短い程、滑らかに行なうことができる。しかし忙閑状態観測周期を短くすると、観測回路を高速で動作させないといけないため、忙閑状態観測のために電力消費が必要となってしまう。よって、ソフトウェアの特性に合った観測周期を設けることで、滑らかなクロック制御が可能となる。   In the configuration of FIG. 14, the clock adjustment can be performed more smoothly as the processing and bus busy state observation period is shorter. However, if the busy state observation period is shortened, the observation circuit must be operated at a high speed, so that power consumption is required for the busy state observation. Therefore, smooth clock control is possible by providing an observation period that matches the characteristics of the software.

(第五の実施形態)
以下に図17〜図19を参照して第五の実施形態を説明する。
(Fifth embodiment)
The fifth embodiment will be described below with reference to FIGS.

ソフトウェアモジュール毎の観測周期ルール1601はプロセッサ20上で動作するソフトウェア単位毎の処理観測周期値及びバス観測周期値を定義している。処理忙閑状態識別部103若しくはバス忙閑状態識別部104、又はその両方はソフトウェアの切り替わり毎に前述の観測周期を変更して観測する機能を有する装置である。   The observation cycle rule 1601 for each software module defines a processing observation cycle value and a bus observation cycle value for each software unit operating on the processor 20. The processing busy state identifying unit 103 and / or the bus busy state identifying unit 104, or both, is a device having a function of observing by changing the above-described observation period every time the software is switched.

以上のように構成された本実施形態の情報処理装置の動作を以下に説明する。   The operation of the information processing apparatus of the present embodiment configured as described above will be described below.

ソフトウェアモジュール毎の観測周期ルール1601はプロセッサ20上で動作するソフトウェア単位毎の処理観測周期値及びバス観測周期値を定義している。ソフトウェアモジュール切替検出部1301は、OSのスケジューラからソフトウェアの切替が発生したか否かを判断し(S1801)、ソフトウェアの切替が発生した場合(S1801でYes)、ソフトウェア識別情報1311をクロック調節部102へ通知する(S1802)。処理忙閑状態識別部103又はバス忙閑状態識別部104は、ソフトウェアモジュール切替検出部1301から通知されたソフトウェア識別情報1311が示すソフトウェアがソフトウェア毎の観測周期ルール1601に記載されているか否かを判断する(S1803)。処理忙閑状態識別部103又はバス忙閑状態識別部104は、通知されたソフトウェア識別情報1311が示すソフトウェアが観測周期ルール1601に記載されている場合(S1803でYes)、観測周期ルールで定義された観測周期に従って処理やバスの忙閑状態を観測する(S1804)。   The observation cycle rule 1601 for each software module defines a processing observation cycle value and a bus observation cycle value for each software unit operating on the processor 20. The software module switching detection unit 1301 determines whether or not software switching has occurred from the scheduler of the OS (S1801), and when software switching occurs (Yes in S1801), the software identification information 1311 is transferred to the clock adjustment unit 102. (S1802). The processing busy state identifying unit 103 or the bus busy state identifying unit 104 determines whether or not the software indicated by the software identification information 1311 notified from the software module switching detection unit 1301 is described in the observation cycle rule 1601 for each software. Judgment is made (S1803). The processing busy state identifying unit 103 or the bus busy state identifying unit 104 is defined by the observation cycle rule when the software indicated by the notified software identification information 1311 is described in the observation cycle rule 1601 (Yes in S1803). According to the observation cycle, the busy state of processing and buses is observed (S1804).

ソフトウェアモジュール切替検出部1301から通知されたソフトウェア識別情報1311が示すソフトウェアがソフトウェア毎の観測周期ルール1601になかった場合(S1803でNo)、通常の観測周期で処理やバスの忙閑状態を観測する(S1805)。これにより、ソフトウェア毎の観測周期ルールを定義するために使用するメモリを削減することができる。   When the software indicated by the software identification information 1311 notified from the software module switching detection unit 1301 does not exist in the observation cycle rule 1601 for each software (No in S1803), the busy state of processing and buses is observed at a normal observation cycle. (S1805). Thereby, the memory used for defining the observation cycle rule for each software can be reduced.

図19にソフトウェア毎の処理及びバスの忙閑状態観測周期ルールの一例を示す。本例はソフトウェアの種類1901に対する処理及びバスの観測周期1902をXYZの三値で例示している。処理忙閑状態観測用の観測周期ルールと、バス忙閑状態観測用の観測周期ルールとを個別に定義してもよい。   FIG. 19 shows an example of processing for each software and a bus busy state observation cycle rule. In this example, the processing for the software type 1901 and the observation cycle 1902 of the bus are exemplified by three values of XYZ. An observation cycle rule for processing busy state observation and an observation cycle rule for bus busy state observation may be individually defined.

以上の動作により、滑らかなクロック制御を行ないながら、実動作時のプロセッサ20及びメモリバスインターフェース30の繁忙状態を元に処理負荷を判断してプロセッサ20の周波数を調節する事が可能となり、ソフトウェアの構成に関わらずにプロセッサ20及びメモリバスインターフェース30の処理負荷に対応した電力消費が可能となる。   With the above operation, it is possible to adjust the frequency of the processor 20 by judging the processing load based on the busy state of the processor 20 and the memory bus interface 30 during actual operation while performing smooth clock control. Regardless of the configuration, power consumption corresponding to the processing load of the processor 20 and the memory bus interface 30 becomes possible.

本発明の情報処理装置は、MPEG復号処理のような画像処理を行なう装置として有用である。   The information processing apparatus of the present invention is useful as an apparatus for performing image processing such as MPEG decoding processing.

第一の実施形態における情報処理装置の構成図Configuration diagram of information processing apparatus in first embodiment クロック調節ルール101の説明図Illustration of clock adjustment rule 101 第二の実施形態における情報処理装置の構成図Configuration diagram of information processing apparatus in second embodiment クロック制御情報記憶時のクロック制御値算出フロー説明図Clock control value calculation flow explanation diagram when storing clock control information ソフトウェア実行位置一致信号発生時のフロー説明図Flow diagram when software execution position coincidence signal is generated 記憶されたクロック制御情報読出し時のクロック制御値算出フロー説明図Clock control value calculation flow explanatory diagram when reading stored clock control information 記憶されたクロック制御情報303の一例を示す図The figure which shows an example of the stored clock control information 303 第三の実施形態における情報処理装置の構成図Configuration diagram of information processing apparatus in third embodiment 割り込み発生検出時のクロック制御値算出フローの第1説明図First explanatory diagram of the flow of calculating the clock control value when the occurrence of an interrupt is detected 割り込み発生検出時のクロック制御値算出フローの第2説明図Second explanatory diagram of the flow of calculating the clock control value when the occurrence of an interrupt is detected 特定のクロック調節ルール101aの一例を示す図The figure which shows an example of the specific clock adjustment rule 101a 割り込み完了検出時のクロック制御値算出フローの第1説明図First explanatory diagram of a flow of calculating a clock control value when detecting completion of an interrupt 割り込み完了検出時のクロック制御値算出フローの第2説明図Second explanatory diagram of the flow of calculating the clock control value when the completion of interrupt is detected 第四の実施形態における情報処理装置の構成図Configuration diagram of information processing apparatus according to fourth embodiment ソフトウェア切替検出時のクロック制御値算出フロー説明図Clock control value calculation flow explanation when software switching is detected 優先度付きクロック調節ルールの一例を示す図The figure which shows an example of the clock adjustment rule with a priority 第五の実施形態における情報処理装置の構成図Configuration diagram of information processing apparatus according to fifth embodiment ソフトウェア毎の処理及びのバス忙閑状態観測周期設定時の観測周期値算出フロー説明図Illustration of flow of calculation of observation period when processing for each software and bus busy state observation period is set ソフトウェア毎の処理及びバスの忙閑状態観測周期ルールの一例を示す図The figure which shows an example of the processing for every software, and the busy state observation cycle rule of a bus

符号の説明Explanation of symbols

10 クロック制御部
20 プロセッサ
30 メモリバスインターフェース
40 メモリバス
50 メモリ
101 クロック調節ルール
102 クロック調節部
103 処理忙閑状態識別部
104 バス忙閑状態識別部
105 可変処理クロック発生器
106 可変バスクロック発生器
111 処理忙閑状態情報
112 バス忙閑状態情報
113 処理クロック制御情報
114 バスクロック制御情報
115 プロセッサ供給クロック
116 バス供給クロック
301 プログラムカウンタ
302 クロック調節記憶部
303 記憶されたクロック制御情報
401 ソフトウェア実行位置比較部
311 現在のソフトウェアの実行位置
312 クロック制御情報
412 ソフトウェア実行位置一致情報
901 割り込み検出部
911 割り込み情報
1301 ソフトウェアモジュール切替検出部
1601 ソフトウェアモジュール毎の観測周期ルール
1311 ソフトウェア識別情報
201 プロセッサ忙閑度合い
202 バス忙閑度合い
203 処理クロック制御情報出力
204 バスクロック制御情報出力
501 ソフトウェアの実行位置の先頭
502 クロック変更時のソフトウェア実行位置
503 計測された処理忙閑度合い
504 計測されたバス忙閑度合い
505 処理クロック制御値
506 バスクロック制御値
1401 ソフトウェア又は処理名
1402 ソフトウェア又は処理の優先度
1901 ソフトウェアの種類
1902 観測周期
DESCRIPTION OF SYMBOLS 10 Clock control part 20 Processor 30 Memory bus interface 40 Memory bus 50 Memory 101 Clock adjustment rule 102 Clock adjustment part 103 Processing busy state identification part 104 Bus busy state identification part 105 Variable processing clock generator 106 Variable bus clock generator 111 Processing busy state information 112 Bus busy state information 113 Processing clock control information 114 Bus clock control information 115 Processor supply clock 116 Bus supply clock 301 Program counter 302 Clock adjustment storage unit 303 Stored clock control information 401 Software execution position comparison unit 311 Current software execution position 312 Clock control information 412 Software execution position match information 901 Interrupt detection unit 911 Interrupt information 1301 Soft Software module switching detection unit 1601 observation period rule for each software module 1311 software identification information 201 processor busyness 202 bus busyness 203 processing clock control information output 204 bus clock control information output 501 top of execution position of software 502 clock change Software execution position 503 Measured processing busyness 504 Measured bus busyness 505 Processing clock control value 506 Bus clock control value 1401 Software or processing name 1402 Software or processing priority 1901 Software type 1902 Observation period

Claims (14)

プロセッサと、
メモリと、
前記プロセッサの前記メモリへのアクセス調停を行なうバスインターフェースと、
前記プロセッサの動作に必要な動作クロックを前記プロセッサへ供給する可変処理クロック発生器と、
前記バスインターフェースの動作に必要な動作クロックを前記バスインターフェースへ供給する可変バスクロック発生器と、
前記プロセッサの動作の忙閑を識別する処理忙閑状態識別部と、
前記バスインターフェースの動作の忙閑を識別するバス忙閑状態識別部と、
前記プロセッサ及び前記バスインターフェースの各々の忙閑に応じて前記プロセッサ及び前記バスインターフェースを最適に動作させる為の複数のクロック制御情報が記載されているクロック調整ルールが格納されているルール格納部と、
前記クロック調整ルールの中の、前記処理忙閑状態識別部及び前記バス忙閑状態識別部によって得られた結果を示す処理忙閑情報及びバス忙閑情報に対応するクロック制御情報を、前記可変処理クロック発生部及び前記可変バスクロック発生部に出力するクロック調節部とを備え、
前記可変処理クロック発生部及び前記可変バスクロック発生部は、前記クロック調節部からのクロック制御情報に従って動作クロックを発生する
情報処理装置。
A processor;
Memory,
A bus interface that arbitrates access to the memory of the processor;
A variable processing clock generator for supplying an operation clock necessary for the operation of the processor to the processor;
A variable bus clock generator for supplying an operation clock necessary for the operation of the bus interface to the bus interface;
A processing busy state identifying unit for identifying busyness of operation of the processor;
A busy / busy state identifying unit for identifying busy / busy operation of the bus interface;
A rule storage unit storing a clock adjustment rule in which a plurality of clock control information for optimally operating the processor and the bus interface according to the busyness of each of the processor and the bus interface is stored;
Among the clock adjustment rules, the processing busy information indicating the result obtained by the processing busy state identifying unit and the bus busy state identifying unit and the clock control information corresponding to the bus busy information are the variable processing. A clock generation unit and a clock adjustment unit that outputs to the variable bus clock generation unit,
The variable processing clock generation unit and the variable bus clock generation unit generate an operation clock according to clock control information from the clock adjustment unit.
前記プロセッサはキャッシュを有しており、
前記処理忙閑状態識別部は、前記キャッシュに対するアクセス状態に基づいて、前記プロセッサの動作の忙閑を識別する
請求項1に記載の情報処理装置。
The processor has a cache;
The information processing apparatus according to claim 1, wherein the processing busy state identifying unit identifies busyness of operation of the processor based on an access state to the cache.
前記プロセッサはアキュムレータを有しており、
前記処理忙閑状態識別部は、前記アキュムレータの使用頻度に基づいて、前記プロセッサの動作の忙閑を識別する
請求項1に記載の情報処理装置。
The processor has an accumulator;
The information processing apparatus according to claim 1, wherein the processing busy state identifying unit identifies busyness of operation of the processor based on a use frequency of the accumulator.
前記バス忙閑状態識別部は、前記バスインターフェースが前記メモリに発するストローブ信号の単位時間当たりの発生回数に基づいて、前記バスインターフェースの動作の忙閑を識別する
請求項1に記載の情報処理装置。
2. The information processing apparatus according to claim 1, wherein the bus busy state identifying unit identifies a busy state of operation of the bus interface based on a number of occurrences per unit time of a strobe signal generated by the bus interface to the memory. .
前記クロック調節部は、前記プロセッサ内のソフトウェアにより構成される
請求項1に記載の情報処理装置。
The information processing apparatus according to claim 1, wherein the clock adjustment unit is configured by software in the processor.
前記クロック調節ルールは、前記プロセッサ内に格納されている
請求項1に記載の情報処理装置。
The information processing apparatus according to claim 1, wherein the clock adjustment rule is stored in the processor.
前記クロック調節ルールは、前記プロセッサにより書き換え可能である
請求項6に記載の情報処理装置。
The information processing apparatus according to claim 6, wherein the clock adjustment rule is rewritable by the processor.
更に、
前記処理忙閑状態識別部による前記プロセッサの動作の忙閑の識別、及び前記バス忙閑状態識別部による前記バスインターフェースの動作の忙閑の識別の開始の際の前記プロセッサにおけるソフトウェアの実行位置と、前記識別の結果から算出されて前記可変処理クロック発生部及び前記可変バスクロック発生部に発せられたクロック制御情報とを記憶するクロック調節記憶部と、
現在のソフトウェアの実行位置と、前記クロック調節記憶部に記憶されたソフトウェアの実行位置とを比較し、両者が一致した際に前記クロック調節部に対して実行位置一致信号を発するソフトウェア実行位置比較部とを備え、
前記クロック調節部は、前記実行位置一致信号が発せられた場合、前記クロック調節記憶部に記憶されたクロック制御情報を発する
請求項1に記載の情報処理装置。
Furthermore,
The execution position of the software in the processor at the start of identification of busyness of the operation of the processor by the busy state identification unit of processing and identification of busyness of the operation of the bus interface by the busy state identification unit of bus A clock adjustment storage unit that stores clock control information calculated from the identification result and issued to the variable processing clock generation unit and the variable bus clock generation unit;
A software execution position comparison unit that compares the execution position of the current software with the execution position of the software stored in the clock adjustment storage unit, and issues an execution position match signal to the clock adjustment unit when the two match And
The information processing apparatus according to claim 1, wherein the clock adjustment unit issues clock control information stored in the clock adjustment storage unit when the execution position coincidence signal is issued.
更に、ソフトウェアの割り込み処理の発生を検出する割り込み検出部を備え、
前記クロック調節部は、前記割り込み検出部からのソフトウェアの割り込み発生通知を受けた場合、特定のクロック制御情報を発する
請求項1に記載の情報処理装置。
Furthermore, an interrupt detection unit for detecting occurrence of software interrupt processing is provided,
The information processing apparatus according to claim 1, wherein the clock adjustment unit issues specific clock control information when receiving a software interrupt generation notification from the interrupt detection unit.
前記割り込み検出部は、前記割り込み処理の終了を検出した場合、前記クロック調節部に対して割り込み終了通知を発し、
前記クロック調節部は、前記割り込み検出部から前記割り込み終了通知を受けた場合、前記クロック調整ルールの中の、前記処理忙閑情報及び前記バス忙閑情報に対応するクロック制御情報を、前記可変処理クロック発生部及び前記可変バスクロック発生部に出力する
請求項9に記載の情報処理装置。
When detecting the end of the interrupt process, the interrupt detection unit issues an interrupt end notification to the clock adjustment unit,
When the clock adjustment unit receives the interrupt end notification from the interrupt detection unit, the clock adjustment information in the clock adjustment rule includes clock control information corresponding to the processing busy information and the bus busy information in the variable processing. The information processing apparatus according to claim 9, wherein the information processing apparatus outputs the data to a clock generation unit and the variable bus clock generation unit.
更に、前記プロセッサ上で動作するソフトウェアの切り替わりを検出し、切り替わり時刻及び次に実行されるソフトウェアの識別情報を前記クロック調節部に通知する切替検出部を備え、
前記クロック調節部は、前記切替検出部から通知を受けた場合、前記次に実行されるソフトウェアに対応する前記クロック調整ルールの中の、前記処理忙閑情報及び前記バス忙閑情報に対応するクロック制御情報を、前記可変処理クロック発生部及び前記可変バスクロック発生部に出力する
請求項1に記載の情報処理装置。
Further, a switching detection unit that detects switching of software operating on the processor and notifies the clock adjustment unit of switching time and identification information of software to be executed next,
When the clock adjusting unit receives a notification from the switching detection unit, the clock corresponding to the processing busy information and the bus busy information in the clock adjustment rule corresponding to the software to be executed next The information processing apparatus according to claim 1, wherein control information is output to the variable processing clock generation unit and the variable bus clock generation unit.
更に、前記プロセッサ上で動作するソフトウェア毎の観測周期値が蓄積される蓄積部を備え、
前記処理忙閑状態識別部及び前記バス忙閑状態識別部の少なくとも一方は、ソフトウェアの切り替わり毎に前記観測周期値に基づいて観測周期を変更して、動作の忙閑を識別する
請求項11に記載の情報処理装置。
And a storage unit for storing observation period values for each piece of software running on the processor,
The at least one of the processing busy state identifying unit and the bus busy state identifying unit identifies the busy state of operation by changing the observation period based on the observation period value every time the software is switched. The information processing apparatus described.
プロセッサの動作に必要な動作クロックを前記プロセッサへ供給する可変処理クロック発生ステップと、
前記プロセッサのメモリへのアクセス調停を行なうバスインターフェースの動作に必要な動作クロックを前記バスインターフェースへ供給する可変バスクロック発生ステップと、
前記プロセッサの動作の忙閑を識別する処理忙閑状態識別ステップと、
前記バスインターフェースの動作の忙閑を識別するバス忙閑状態識別ステップと、
前記プロセッサ及び前記バスインターフェースの各々の忙閑に応じて前記プロセッサ及び前記バスインターフェースを最適に動作させる為の複数のクロック制御情報が記載されているクロック調整ルールの中の、前記処理忙閑状態識別ステップ及び前記バス忙閑状態識別ステップにおいて得られた結果を示す処理忙閑情報及びバス忙閑情報に対応するクロック制御情報を出力するクロック調節ステップとを含み、
前記可変処理クロック発生ステップ及び前記可変バスクロック発生ステップでは、前記クロック調節ステップにおいて出力されたクロック制御情報に従って動作クロックを発生する
クロック制御方法。
A variable processing clock generation step for supplying an operation clock necessary for the operation of the processor to the processor;
A variable bus clock generation step for supplying the bus interface with an operation clock necessary for the operation of the bus interface for arbitrating access to the memory of the processor;
A processing busy state identifying step for identifying busyness of operation of the processor;
A bus busy state identifying step for identifying busyness of operation of the bus interface;
The processing busy state identification in a clock adjustment rule in which a plurality of clock control information for optimally operating the processor and the bus interface according to busyness of each of the processor and the bus interface is described. A clock adjustment step of outputting clock control information corresponding to the bus busy information and processing busy information indicating the result obtained in the step and the bus busy state identifying step,
In the variable processing clock generation step and the variable bus clock generation step, an operation clock is generated according to the clock control information output in the clock adjustment step.
プロセッサのメモリへのアクセス調停を行なうバスインターフェースと、
前記プロセッサの動作に必要な動作クロックを前記プロセッサへ供給する可変処理クロック発生器と、
前記バスインターフェースの動作に必要な動作クロックを前記バスインターフェースへ供給する可変バスクロック発生器と、
前記プロセッサの動作の忙閑を識別する処理忙閑状態識別部と、
前記バスインターフェースの動作の忙閑を識別するバス忙閑状態識別部と、
前記プロセッサ及び前記バスインターフェースの各々の忙閑に応じて前記プロセッサ及び前記バスインターフェースを最適に動作させる為の複数のクロック制御情報が記載されているクロック調整ルールが格納されているルール格納部と、
前記クロック調整ルールの中の、前記処理忙閑状態識別部及び前記バス忙閑状態識別部によって得られた結果を示す処理忙閑情報及びバス忙閑情報に対応するクロック制御情報を、前記可変処理クロック発生部及び前記可変バスクロック発生部に出力するクロック調節部とを備え、
前記可変処理クロック発生部及び前記可変バスクロック発生部は、前記クロック調節部からのクロック制御情報に従って動作クロックを発生する
集積回路。
A bus interface that arbitrates access to the processor's memory;
A variable processing clock generator for supplying an operation clock necessary for the operation of the processor to the processor;
A variable bus clock generator for supplying an operation clock necessary for the operation of the bus interface to the bus interface;
A processing busy state identifying unit for identifying busyness of operation of the processor;
A busy / busy state identifying unit for identifying busy / busy operation of the bus interface;
A rule storage unit storing a clock adjustment rule in which a plurality of clock control information for optimally operating the processor and the bus interface according to the busyness of each of the processor and the bus interface is stored;
Among the clock adjustment rules, the processing busy information indicating the result obtained by the processing busy state identifying unit and the bus busy state identifying unit and the clock control information corresponding to the bus busy information are the variable processing. A clock generation unit and a clock adjustment unit that outputs to the variable bus clock generation unit,
The variable processing clock generation unit and the variable bus clock generation unit generate an operation clock according to clock control information from the clock adjustment unit.
JP2006081623A 2006-03-23 2006-03-23 Information processing apparatus Pending JP2007257363A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006081623A JP2007257363A (en) 2006-03-23 2006-03-23 Information processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006081623A JP2007257363A (en) 2006-03-23 2006-03-23 Information processing apparatus

Publications (1)

Publication Number Publication Date
JP2007257363A true JP2007257363A (en) 2007-10-04

Family

ID=38631536

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006081623A Pending JP2007257363A (en) 2006-03-23 2006-03-23 Information processing apparatus

Country Status (1)

Country Link
JP (1) JP2007257363A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011101372A (en) * 2009-11-05 2011-05-19 Samsung Electronics Co Ltd Apparatus and method for controlling dynamic bus clock
JP2013030010A (en) * 2011-07-28 2013-02-07 Fujitsu Ltd Information processing device, information processing program, and information processing method

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011101372A (en) * 2009-11-05 2011-05-19 Samsung Electronics Co Ltd Apparatus and method for controlling dynamic bus clock
US8972768B2 (en) 2009-11-05 2015-03-03 Samsung Electronics Co., Ltd. Apparatus and method for scaling dynamic bus clock
JP2013030010A (en) * 2011-07-28 2013-02-07 Fujitsu Ltd Information processing device, information processing program, and information processing method
US9003212B2 (en) 2011-07-28 2015-04-07 Fujitsu Limited Information processing device, non-transitory, computer readable storage medium, and method of controlling information processing device

Similar Documents

Publication Publication Date Title
US8656196B2 (en) Hardware automatic performance state transitions in system on processor sleep and wake events
KR101705926B1 (en) Conditional operation in an internal processor of a memory device
US20070288782A1 (en) Method for reducing power consumption of a computer system in the working state
JP2012150815A (en) Coordination of performance parameters in multiple circuits
JP4111760B2 (en) Access to the memory unit of the data processor
EP3472709B1 (en) Apparatus and method for setting clock speed of cache memory based on memory request information
JP2007257363A (en) Information processing apparatus
JP4791714B2 (en) Method, circuit, and system for using pause time of dynamic frequency scaling cache memory
US8569911B2 (en) Method and system for power management
JP2010061620A (en) Dma device and dma transfer method
US7681067B2 (en) Bus system
JP6590662B2 (en) Control device for controlling memory and memory power saving control method
JP2006331008A (en) Memory interface
US20230205306A1 (en) Default Boost Mode State for Devices
TWI497487B (en) Storage device and power saving method thereof
JP2007087181A (en) Data transfer unit
JP2017102623A (en) Control unit for controlling function module having memory and control method for controlling access to function module