Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7316083B2 - Information processing equipment - Google Patents
[go: Go Back, main page]

JP7316083B2 - Information processing equipment - Google Patents

Information processing equipment Download PDF

Info

Publication number
JP7316083B2
JP7316083B2 JP2019080469A JP2019080469A JP7316083B2 JP 7316083 B2 JP7316083 B2 JP 7316083B2 JP 2019080469 A JP2019080469 A JP 2019080469A JP 2019080469 A JP2019080469 A JP 2019080469A JP 7316083 B2 JP7316083 B2 JP 7316083B2
Authority
JP
Japan
Prior art keywords
clock
control
group
information processing
generation
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.)
Active
Application number
JP2019080469A
Other languages
Japanese (ja)
Other versions
JP2020177538A (en
Inventor
裕司 原
康宏 加藤
浩一 森下
拓也 皆川
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2019080469A priority Critical patent/JP7316083B2/en
Publication of JP2020177538A publication Critical patent/JP2020177538A/en
Application granted granted Critical
Publication of JP7316083B2 publication Critical patent/JP7316083B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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

Landscapes

  • Design And Manufacture Of Integrated Circuits (AREA)
  • Information Transfer Systems (AREA)

Description

本発明は情報処理装置に関し、特に集積回路におけるクロック供給に関する。 The present invention relates to information processing devices, and more particularly to clock supply in integrated circuits.

一般に、回路内では、クロックに同期したデータの受け渡しが行われる。このような回路を設計する際には、クロックやデータの遅延時間を考慮して、全ての同期パスにおいてタイミング収束するように、タイミング設計がなされる。例えば、フリップフロップ(FF)間でデータの受け渡しを行う場合、正常にデータを受け渡すためには、FFのセットアップ・ホールド時間を満たす必要がある。 In general, data is transferred in synchronization with a clock within a circuit. When designing such a circuit, the timing is designed in consideration of clock and data delay times so that timing converges in all synchronous paths. For example, when transferring data between flip-flops (FFs), it is necessary to satisfy the setup/hold time of the FFs in order to pass the data normally.

回路に供給されるクロックはクロック生成器で生成される。代表的な構成では、クロック生成器はチップトップ階層に配置される。クロック生成器は、必要に応じて、クロックを供給する機能ブロックごとに、クロック周波数の変更、及びクロックのオン又はオフを行うことがある。クロック生成器で生成されたクロックは、チップトップ階層上の配線を通って各機能ブロックに供給され、さらに機能ブロック内で各FFへと分配される。クロック源から各機能ブロック又は各FFへとクロックが到達するまでの遅延時間が等しくなるように物理的なクロック配線を行う手法としては、CTS(クロックツリーシンセシス)がある。クロックの遅延時間差(クロックスキュー)を小さくすることで、タイミング設計を容易化することができる。 A clock supplied to the circuit is generated by a clock generator. In a typical configuration, the clock generator is placed at the chip top level. The clock generator may change the clock frequency and turn the clock on or off for each functional block that supplies the clock, as required. A clock generated by the clock generator is supplied to each functional block through wiring on the chip top hierarchy, and further distributed to each FF within the functional block. CTS (Clock Tree Synthesis) is a technique for physically wiring clocks so that the delay times for clocks to reach each functional block or each FF from a clock source are equal. Timing design can be facilitated by reducing the clock delay time difference (clock skew).

近年、デジタルカメラ及びスマートフォンなどの情報機器の省電力化のために、情報処理装置が有する回路(例えばLSIのような集積回路)で用いられるクロックの周波数及びクロックのオンオフを制御することが求められている。例えば、ソフトウェアなどが、クロック生成器によるクロック生成を制御するために、設定値を格納するクロック設定レジスタを用いることができる。このようなレジスタは一機能ブロックとして実装され、また、他の機能ブロックとの間のクロックスキューを小さくするためにCTS下流に位置することが多い。一方で、クロックの供給元であるクロック生成器は、CTS上流のクロックで駆動される。このため、クロック生成器とレジスタとの間のクロック遅延が非常に大きくなり、レジスタ(及びそのFF)とクロック生成器(及びそのFF)との間でデータを受け渡せるようにタイミング設計することは容易ではない。特に近年、回路の大規模化及び高周波数化が進んでいるため、タイミング設計はより困難になっている。 In recent years, in order to reduce the power consumption of information equipment such as digital cameras and smartphones, there has been a demand for controlling the frequency and on/off of clocks used in circuits (for example, integrated circuits such as LSIs) in information processing devices. ing. For example, software or the like can use a clock setting register that stores a setting value to control clock generation by the clock generator. Such registers are often implemented as a functional block and located downstream of the CTS to reduce clock skew between other functional blocks. On the other hand, the clock generator, which is the source of the clock, is driven by the CTS upstream clock. Therefore, the clock delay between the clock generator and the register becomes very large, and it is impossible to design the timing so that data can be passed between the register (and its FFs) and the clock generator (and its FFs). It's not easy. In particular, in recent years, circuits have become larger in scale and higher in frequency, making timing design more difficult.

特許文献1は、リセット信号などの遅延の大きい信号の変化中にクロックを止める又はクロックの周波数を下げることで、タイミングの問題を回避することを提案している。 US Pat. No. 6,200,000 proposes avoiding timing problems by stopping the clock or lowering the frequency of the clock during transitions of long-delayed signals such as reset signals.

特開2010-277608号公報JP 2010-277608 A

しかしながら、特許文献1の方法には、クロック生成の制御を行うたびに、クロック周波数低下又はクロックの停止が起きるため、動作速度が低下するという課題があった。 However, the method of Patent Literature 1 has a problem that the operating speed is lowered because the clock frequency is lowered or the clock is stopped every time the clock generation is controlled.

本発明は、機能ブロックに供給するクロックを制御する構成において、タイミング設計を容易にするための新しい制御技術を提供することを目的とする。 SUMMARY OF THE INVENTION It is an object of the present invention to provide a new control technique for facilitating timing design in a configuration for controlling clocks supplied to functional blocks.

本発明の目的を達成するために、例えば、本発明の情報処理装置は以下の構成を備える。すなわち、
それぞれ、複数の機能ブロックのうち対応する機能ブロックに供給するクロックを生成する、複数の生成手段と、
前記複数の生成手段のうちの1以上の生成手段で構成される第1のグループの生成手段によるクロック生成を制御し、前記第1のグループと共通のクロックを用いて動作する、第1の制御手段と、
前記複数の機能ブロックのうち1つであり、前記第1のグループの生成手段によるクロック生成の制御情報を前記第1の制御手段に非同期転送する、第2の制御手段と、
を備える。
In order to achieve the object of the present invention, for example, an information processing apparatus of the present invention has the following configuration. i.e.
a plurality of generation means for generating clocks to be supplied to corresponding functional blocks among the plurality of functional blocks;
A first control for controlling clock generation by a first group of generation means composed of one or more generation means among the plurality of generation means, and operating using a clock common to the first group. means and
a second control means, which is one of the plurality of functional blocks and asynchronously transfers control information for clock generation by the generation means of the first group to the first control means;
Prepare.

機能ブロックに供給するクロックを制御する構成において、タイミング設計を容易にすることができる。 Timing design can be facilitated in a configuration that controls clocks supplied to functional blocks.

一実施形態に係る情報処理装置のシステム構成図。1 is a system configuration diagram of an information processing apparatus according to an embodiment; FIG. 一実施形態に係る情報処理装置のシステム構成図。1 is a system configuration diagram of an information processing apparatus according to an embodiment; FIG. 一実施形態におけるクロック周波数の切り替えのタイミングチャート。4 is a timing chart of clock frequency switching in one embodiment. 一実施形態におけるクロックのオンオフ動作のタイミングチャート。4 is a timing chart of on/off operation of a clock in one embodiment; 一実施形態に係る情報処理装置の非同期転送のための構成を示す図。1 is a diagram showing a configuration for asynchronous transfer of an information processing device according to an embodiment; FIG. 一実施形態に係るレジスタフィールドの例を示す図。FIG. 4 is a diagram illustrating an example of register fields according to one embodiment; 一実施形態における設定値の転送のタイミングチャート。4 is a timing chart of setting value transfer in one embodiment.

以下、添付図面を参照して実施形態を詳しく説明する。なお、以下の実施形態は特許請求の範囲に係る発明を限定するものではない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。 Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. In addition, the following embodiments do not limit the invention according to the scope of claims. Although multiple features are described in the embodiments, not all of these multiple features are essential to the invention, and multiple features may be combined arbitrarily. Furthermore, in the accompanying drawings, the same or similar configurations are denoted by the same reference numerals, and redundant description is omitted.

まず、図1を参照して、一実施形態に係る情報処理装置100の構成例を示す。本明細書においては、図1に示す情報処理装置100を参照して本発明の実施形態を説明する。しかしながら、本発明において情報処理装置100の全ての構成が必須ではないことに留意されたい。 First, with reference to FIG. 1, a configuration example of an information processing apparatus 100 according to one embodiment is shown. In this specification, embodiments of the present invention will be described with reference to an information processing apparatus 100 shown in FIG. However, it should be noted that not all configurations of the information processing apparatus 100 are essential in the present invention.

図1に示す情報処理装置100は、システムオンチップと呼ばれる半導体装置であり、半導体集積回路と呼ぶことができる。図1に示される情報処理装置100の内部の各ブロックは、例えば、それぞれの機能を発揮する回路であってもよい。情報処理装置100の用途は特に限定されず、情報処理装置100は、後述するように、用途に合った機能を実現するための処理を行う機能ブロックを有している。情報処理装置100は、例えば、デジタルカメラシステム用の情報処理装置であってもよい。 The information processing device 100 shown in FIG. 1 is a semiconductor device called a system-on-chip, and can be called a semiconductor integrated circuit. Each block inside the information processing apparatus 100 shown in FIG. 1 may be, for example, a circuit that exhibits each function. The use of the information processing apparatus 100 is not particularly limited, and the information processing apparatus 100 has functional blocks that perform processing for realizing functions suitable for use, as will be described later. The information processing device 100 may be, for example, an information processing device for a digital camera system.

情報処理装置100の内部の各ブロックは、バスシステムを介して相互接続されている。このようなバスシステムは、インターコネクト、ファブリック、オンチップネットワーク、又はネットワークオンチップと呼ばれるシステムであってもよい。バスシステムには、それぞれが特定の処理を行う、複数の機能ブロックが接続されている。一実施形態に係る情報処理装置100は、外部センサ(不図示)から映像データを受信する機能、映像データをバスシステムを介してDRAM(不図示)へ転送する機能、及び映像データに対して加工処理を行ってDRAMに格納する機能を有している。図1に示す機能ブロック7a~7fは、それぞれ、これらの機能及びその他の機能のうちの少なくとも一部を実現する処理を行う。また、バスシステムには、複数の機能ブロックのうちの1つであり、情報処理装置100が行う処理を全体的に制御するCPU8も接続されている。 Each block inside the information processing apparatus 100 is interconnected via a bus system. Such a bus system may be a system called interconnect, fabric, on-chip network, or network-on-chip. A plurality of functional blocks are connected to the bus system, each of which performs a specific process. The information processing apparatus 100 according to one embodiment has a function of receiving video data from an external sensor (not shown), a function of transferring the video data to a DRAM (not shown) via a bus system, and a function of processing the video data. It has a function of processing and storing in the DRAM. The functional blocks 7a-7f shown in FIG. 1 each carry out processing to implement at least some of these and other functions. Also connected to the bus system is a CPU 8 which is one of a plurality of functional blocks and controls the processing performed by the information processing apparatus 100 as a whole.

以下、情報処理装置100において、機能ブロックが動作するために用いるクロックを、機能ブロックに供給するための構成について説明する。情報処理装置100はクロックを発振する機構を有しており、この機構は、図1に示すように、低速クロックと高速クロックとを供給可能であってもよい。 A configuration for supplying clocks used for operating the functional blocks to the functional blocks in the information processing apparatus 100 will be described below. The information processing apparatus 100 has a mechanism for oscillating clocks, and this mechanism may be capable of supplying a low-speed clock and a high-speed clock as shown in FIG.

図1においてオシレータ1は低速クロックを発振する。また、PLL2及びPLL3は、それぞれ、オシレータ1により生成された低速クロックを用いて、例えば低速クロックを逓倍することにより、低速クロックよりも高速な高速クロックを出力する。クロックMUX4は、オシレータ1により生成された低速クロック、又はPLL2で生成された高速クロックを選択して、後段に位置する生成部6a~6e及び制御部31,32に供給する。また、クロックMUX5は、オシレータ1により生成された低速クロック、又はPLL3で生成された高速クロックを選択して、後段に位置する生成部6f及び制御部33に供給する。本明細書においては、クロックMUX4が選択したクロックを基準クロック1と呼び、クロックMUX5が選択したクロックを基準クロック2と呼ぶ。 In FIG. 1, an oscillator 1 oscillates a low-speed clock. The PLL2 and PLL3 each use the low-speed clock generated by the oscillator 1 and, for example, multiply the low-speed clock to output a high-speed clock faster than the low-speed clock. The clock MUX 4 selects the low-speed clock generated by the oscillator 1 or the high-speed clock generated by the PLL 2, and supplies it to the generators 6a to 6e and the controllers 31 and 32 located in the subsequent stage. Also, the clock MUX 5 selects the low-speed clock generated by the oscillator 1 or the high-speed clock generated by the PLL 3, and supplies it to the generator 6f and the controller 33 located in the subsequent stage. In this specification, the clock selected by clock MUX4 is referred to as reference clock 1, and the clock selected by clock MUX5 is referred to as reference clock 2. FIG.

生成部6a~6fは、複数の機能ブロックのうち対応する機能ブロックにクロックを供給する。図1の例において、生成部6a,6b,6e,6fは、それぞれ機能ブロック7a,7b,7e,7fにクロックを供給する。また、生成部6c及び生成部6dは、それぞれ機能ブロックの1つである制御部9及びCPU8にクロックを供給する。このために、生成部6a~6fは、機能ブロックに供給するクロックを生成する。生成部6a~6fが生成し、機能ブロックに供給するクロックを、それぞれクロックa~fと呼ぶ。 The generators 6a to 6f supply clocks to corresponding functional blocks among the plurality of functional blocks. In the example of FIG. 1, generators 6a, 6b, 6e, and 6f supply clocks to functional blocks 7a, 7b, 7e, and 7f, respectively. In addition, the generation unit 6c and the generation unit 6d supply clocks to the control unit 9 and the CPU 8, which are one of the functional blocks, respectively. For this purpose, the generators 6a to 6f generate clocks to be supplied to the functional blocks. The clocks generated by the generators 6a to 6f and supplied to the functional blocks are called clocks a to f, respectively.

生成部6a~6fは、基準クロック(例えば基準クロック1又は基準クロック2)を用いて、機能ブロックに供給するクロックを生成する。例えば、複数の生成部のそれぞれである生成部6a,6bは、共通の基準クロック1を用いて生成したクロックを、対応する機能ブロックである機能ブロック7a,7bに供給している。生成部6a~6fは、基準クロックを分周することにより、基準クロックの周波数を低下させてから、機能ブロックにクロックを供給することができる。また、生成部6a~6fは、機能ブロックに供給するクロックをオン又はオフすることができる。 The generators 6a to 6f use a reference clock (for example, reference clock 1 or reference clock 2) to generate clocks to be supplied to the functional blocks. For example, generators 6a and 6b, which are the plurality of generators, supply clocks generated using the common reference clock 1 to corresponding functional blocks 7a and 7b. The generators 6a to 6f divide the frequency of the reference clock to reduce the frequency of the reference clock, and then supply the clock to the functional blocks. In addition, the generators 6a to 6f can turn on or off clocks to be supplied to the functional blocks.

制御部31~33は、生成部6a~6fによるクロック生成を制御する。図1の例において、制御部31は、制御部31に対応するグループである生成部6a,6bが供給するクロックを制御する。同様に、制御部32は、制御部32に対応するグループである生成部6c~6eが供給するクロックを制御し、制御部33は、制御部33に対応するグループである生成部6fが供給するクロックを制御する。 The control units 31 to 33 control clock generation by the generation units 6a to 6f. In the example of FIG. 1 , the control unit 31 controls clocks supplied by the generation units 6 a and 6 b, which are groups corresponding to the control unit 31 . Similarly, the control unit 32 controls the clock supplied by the generation units 6c to 6e that are the group corresponding to the control unit 32, and the control unit 33 is supplied by the generation unit 6f that is the group corresponding to the control unit 33. Control the clock.

本実施形態において、制御部31~33は、生成部6a~6fが機能ブロックに供給するクロックの周波数を制御し、及び生成部6a~6fから機能ブロックへのクロックの供給をオン又はオフする制御を行うことができるが、制御内容はこれに限定されない。なお、本明細書において、制御部31~33のことを第1の制御部と呼ぶことがある。 In this embodiment, the control units 31 to 33 control the frequencies of the clocks supplied from the generating units 6a to 6f to the functional blocks, and control to turn on or off the clock supply from the generating units 6a to 6f to the functional blocks. can be performed, but the content of control is not limited to this. In this specification, the control units 31 to 33 may be called a first control unit.

制御部9は、生成部6a~6fによるクロック生成の制御情報を制御部31~33に転送する。すなわち、制御部9は、制御部31に対応するグループである生成部6a,6bによるクロック生成の制御情報を制御部31に転送する。同様に、制御部9は、制御部32に対応するグループである生成部6c~6eによるクロック生成の制御情報を制御部31に、制御部33に対応するグループである生成部6fによるクロック生成の制御情報を制御部33に、それぞれ転送する。こうして、制御部9は、制御部31~33を介して、機能ブロックに供給されるクロックを制御する。 The control unit 9 transfers control information for clock generation by the generation units 6a-6f to the control units 31-33. That is, the control unit 9 transfers to the control unit 31 control information for clock generation by the generation units 6a and 6b, which are a group corresponding to the control unit 31. FIG. Similarly, the control unit 9 transmits control information for clock generation by the generation units 6c to 6e, which are the group corresponding to the control unit 32, to the control unit 31, and controls clock generation by the generation unit 6f, which is the group corresponding to the control unit 33. Control information is transferred to the control unit 33, respectively. Thus, the controller 9 controls clocks supplied to the functional blocks via the controllers 31-33.

制御部9は、例えば、生成部6a~6fのそれぞれが生成するクロック周波数の設定値と、クロックのオン又はオフを示す設定値と、を格納するレジスタを所持することができる。制御部9は、これらのレジスタに格納された設定値を、制御部31~33に供給することができる。なお、CPU8は、レジスタバスを介して、制御部9がレジスタに格納している設定値の読み書きを行ってもよい。こうして、CPU8は、機能ブロックに供給されるクロックを制御することができる。なお、本明細書において、制御部9のことを第2の制御部と呼ぶことがある。 The control unit 9 can have, for example, a register that stores a set value of the clock frequency generated by each of the generation units 6a to 6f and a set value indicating whether the clock is turned on or off. The control unit 9 can supply the setting values stored in these registers to the control units 31-33. Note that the CPU 8 may read and write the setting values stored in the register by the control section 9 via the register bus. Thus, the CPU 8 can control the clock supplied to the functional blocks. In this specification, the controller 9 may be called a second controller.

リセット部20は、情報処理装置100内部のリセット信号を生成する。リセット部20は、オシレータ1が発振した低速クロックを用いて動作することができ、この場合、リセット部20が出力するリセット信号は低速クロックに同期する。このリセット信号に従って、生成部6a~6fが有するカウンタ及びFF(後述)が初期化される。また、このリセット信号に従って、機能ブロック7a~7f、CPU8、制御部9、及び制御部31~33の初期化が同時に行われてもよい(不図示)。 The reset unit 20 generates a reset signal inside the information processing device 100 . The reset section 20 can operate using the low-speed clock oscillated by the oscillator 1. In this case, the reset signal output by the reset section 20 is synchronized with the low-speed clock. According to this reset signal, counters and FFs (described later) of the generators 6a to 6f are initialized. In accordance with this reset signal, the functional blocks 7a-7f, CPU 8, controller 9, and controllers 31-33 may be initialized at the same time (not shown).

リセット実行時に、クロックMUX4,5はオシレータ1が発振した低速クロックを選択することができる。このとき、情報処理装置100が有する各部は全て低速クロックに同期して動作する。リセット解除後、情報処理装置100が通常処理を開始する際に、クロックMUX4,5はPLL2,PLL3が生成した高速クロックを選択することができる。こうして、情報処理装置100が高速処理を行うことができる。 The low-speed clock oscillated by the oscillator 1 can be selected for the clock MUXs 4 and 5 when resetting is executed. At this time, all units of the information processing apparatus 100 operate in synchronization with the low-speed clock. After the reset is released, when the information processing apparatus 100 starts normal processing, the clocks MUX4 and 5 can select the high-speed clocks generated by the PLL2 and PLL3. Thus, the information processing apparatus 100 can perform high-speed processing.

次に、生成部6a~6fの詳細な構成例を説明する。以下では生成部6aについて説明するが、生成部6b~6fも同等の構成を有することができる。図1において、生成部6aは、基準クロック1のパルス数を削減することにより、周波数が低減されたクロックを生成する。例えば、生成部6a、基準クロック1のパルスを2回に1回間引くことにより周波数を1/2にすることができ、4回に3回間引くことで周波数を1/4にすることができる。このような方式(歯抜け方式とも呼ばれる)により生成されたクロックのパルス幅は、基準クロックのパルス幅と同じである。 Next, detailed configuration examples of the generators 6a to 6f will be described. Although the generating unit 6a will be described below, the generating units 6b to 6f can also have the same configuration. In FIG. 1, the generator 6a generates a clock with a reduced frequency by reducing the number of pulses of the reference clock 1. FIG. For example, the generation unit 6a can halve the frequency by thinning the pulse of the reference clock 1 once every two times, and can halve the frequency by thinning it three times every four times. The pulse width of the clock generated by such a method (also called toothless method) is the same as the pulse width of the reference clock.

生成部6aはカウンタ61a及び分周回路を有し、基準クロック1を用いて動作する。図1の例において、分周回路はデコーダ62a、フリップフロップ(FF)63a、及びゲーテッドクロックバッファ(GCB)64aを有している。 The generation unit 6a has a counter 61a and a frequency dividing circuit, and operates using the reference clock 1. FIG. In the example of FIG. 1, the frequency dividing circuit has a decoder 62a, a flip-flop (FF) 63a, and a gated clock buffer (GCB) 64a.

カウンタ61aは、カウント動作を行い、カウント値を保持する。カウント値は、リセット時に0に初期化される。カウンタ61aは、リセット解除後にカウントアップを開始し、その後は停止せずにカウントアップを継続する。カウント値が予め決められたエクスパイア値に達すると、次のカウント値は0になり、再度カウントアップが開始される。このように、一実施形態においてリセット部20は、複数の生成部(生成部6a,6bなど)のそれぞれが備える、カウンタ(カウンタ61a,61bなど)のカウンタ値を同時に初期化することができる。また、リセット部20は、複数の生成部(生成部6a,6bなど)のそれぞれが備える、初期化されたカウンタ(カウンタ61a,61bなど)の動作を同時に開始させることができる。 The counter 61a performs a counting operation and holds a count value. The count value is initialized to 0 at reset. The counter 61a starts counting up after the reset is released, and then continues counting up without stopping. When the count value reaches a predetermined expire value, the next count value becomes 0 and counting up is started again. Thus, in one embodiment, the reset unit 20 can simultaneously initialize the counter values of the counters (counters 61a, 61b, etc.) included in each of the plurality of generation units (generation units 6a, 6b, etc.). In addition, the reset unit 20 can simultaneously start the operation of initialized counters (counters 61a, 61b, etc.) included in each of the plurality of generation units (generation units 6a, 6b, etc.).

分周回路は、カウンタ61aの値に基づいて基準クロック1を分周する。そして、分周回路は、分周により生成されたクロックaを、対応する機能ブロック7aに供給する。ここで、分周回路は、制御部31による制御に従ってクロックaを生成することができる。 The frequency dividing circuit divides the frequency of the reference clock 1 based on the value of the counter 61a. Then, the frequency dividing circuit supplies the clock a generated by frequency division to the corresponding functional block 7a. Here, the frequency dividing circuit can generate the clock a under the control of the control section 31 .

図1の例においては、デコーダ62aが、カウンタ61aのカウント値に従って、基準クロック1のパルスを間引くタイミングを示すタイミング信号を生成する。ここで、デコーダ62aは、制御部31から入力される、クロック周波数の設定値51aにさらに従って、この信号を生成することができる。 In the example of FIG. 1, the decoder 62a generates a timing signal indicating the timing of thinning out the pulses of the reference clock 1 according to the count value of the counter 61a. Here, the decoder 62 a can generate this signal further according to the set value 51 a of the clock frequency input from the control section 31 .

FF63aは、デコーダ62aで生成されたタイミング信号をラッチし、GCB64aに入力する。 The FF 63a latches the timing signal generated by the decoder 62a and inputs it to the GCB 64a.

GCB64aは、入力されたタイミング信号に従って、基準クロック1のパルスを間引くことで、基準クロック1より周波数の低いクロックaを生成する。例えばGCB64aは、基準クロック1のパルスを2回に1回間引くことで、周波数を1/2にすることができ、パルスを4回に3回間引くことで、周波数を1/4にすることができる。また、GCB64aは、基準クロック1のパルスを間引かずに、基準クロック1と同じ周波数を有するクロックaを出力することもできる。さらに、GCB64aは、制御部31から入力されるクロックのオン又はオフを示す設定値50aに従って、クロックaのオン又はオフを行うこともできる。 The GCB 64a thins out the pulses of the reference clock 1 according to the input timing signal, thereby generating a clock a having a frequency lower than that of the reference clock 1. FIG. For example, the GCB 64a can halve the frequency by thinning the pulse of the reference clock 1 once every two times, and can halve the frequency by thinning the pulse three times every four times. can. The GCB 64a can also output a clock a having the same frequency as the reference clock 1 without thinning the reference clock 1 pulses. Furthermore, the GCB 64a can also turn on or off the clock a according to the set value 50a input from the control unit 31 and indicating whether the clock is on or off.

以下では、情報処理装置100内の同期グループについて説明する。図1の例において、機能ブロック7aと機能ブロック7bとの間ではデータの受け渡し(不図示)が行われるため、クロックの位相が揃うように機能ブロック7a及び機能ブロック7bへとクロックが供給される。このように、位相が揃ったクロックが供給される機能ブロック7a及び機能ブロック7bは、本明細書においては同期グループ11としてグルーピングされる。同様に、CPU8、制御部9、及び機能ブロック7eは同期グループ12としてグルーピングされ、機能ブロック7fは単体で同期グループ13としてグルーピングされる。すなわち、制御部31~33は、対応する同期グループ11~13に所属するクロックの制御を行う。このように、同じ同期グループにグルーピングされる機能ブロックのことを、本明細書においては同期関係にある機能ブロックと呼ぶ。一実施形態において、同期関係にある複数の機能ブロックは、複数の機能ブロックの間で同期データ転送が行われるように構成されている。なお、異なる同期グループの間では、クロックに同期したデータの受け渡しは行われないため、供給されるクロックの位相が揃う必要はない。 Synchronization groups in the information processing apparatus 100 will be described below. In the example of FIG. 1, since data is transferred (not shown) between the functional blocks 7a and 7b, clocks are supplied to the functional blocks 7a and 7b so that the phases of the clocks are aligned. . In this way, the functional blocks 7a and 7b supplied with phase-aligned clocks are grouped as a synchronization group 11 in this specification. Similarly, the CPU 8, the control unit 9, and the functional block 7e are grouped as a synchronous group 12, and the functional block 7f is grouped as a synchronous group 13 by itself. That is, the control units 31-33 control the clocks belonging to the corresponding synchronization groups 11-13. Functional blocks grouped into the same synchronous group in this way are referred to as synchronously related functional blocks in this specification. In one embodiment, functional blocks in a synchronous relationship are configured such that synchronous data transfers occur between the functional blocks. It should be noted that there is no need to match the phases of the supplied clocks between different synchronous groups, since data synchronized with the clock is not transferred.

また、図1に示すように、クロックを生成する生成部から機能ブロックまでの配線の長さなどに起因するクロック遅延が存在しても、クロックの位相が揃うように、生成部と機能ブロックとの間にクロックツリー40a~40fを形成することができる。例えば、クロックツリー40a,40bは、生成部6a,6bと機能ブロック7a,7bと間の、クロックa,bを運ぶ配線上に形成されている。具体的には、同じ同期グループ11に所属している、クロックaのクロックツリー40aと、クロックbのクロックツリー40bと、のクロック遅延時間が等しくなるように、配線が行われ、必要に応じてCTSバッファが挿入される。同期グループ12に所属するクロックc~eに対するクロックツリー40c~40eについても同様である。 In addition, as shown in FIG. 1, even if there is a clock delay due to the length of the wiring from the generator that generates the clock to the functional block, the clock phase is aligned between the generator and the functional block. Clock trees 40a-40f may be formed between. For example, the clock trees 40a and 40b are formed on wiring carrying the clocks a and b between the generators 6a and 6b and the functional blocks 7a and 7b. Specifically, wiring is performed so that the clock delay times of the clock tree 40a of clock a and the clock tree 40b of clock b, which belong to the same synchronization group 11, are equal. A CTS buffer is inserted. The same is true for the clock trees 40c-40e for the clocks c-e belonging to the synchronization group 12. FIG.

ところで、制御部9はクロックcのクロックツリー40cの下流に位置する。一方で、制御部31,32は、クロックツリー40cの上流に位置し、基準クロック1を用いて動作している。このため、制御部9と、制御部31,32との間には大きなクロックスキューが存在し、クロックcと基準クロック1の位相が揃うことは保証されない。また、制御部33は、クロックcとはクロック系統が異なる基準クロック2を用いて動作している。このため、クロックcと基準クロック2の位相が揃うことも保証されない。 By the way, the control unit 9 is located downstream of the clock tree 40c of the clock c. On the other hand, the control units 31 and 32 are positioned upstream of the clock tree 40c and operate using the reference clock 1 . Therefore, a large clock skew exists between the control unit 9 and the control units 31 and 32, and it is not guaranteed that the phases of the clock c and the reference clock 1 are aligned. Also, the control unit 33 operates using the reference clock 2 whose clock system is different from that of the clock c. Therefore, it is not guaranteed that the phases of the clock c and the reference clock 2 are aligned.

[実施形態1]
本発明の実施形態1に係る情報処理装置は、同期関係にある複数の機能ブロックと、複数の生成部と、を備える。複数の生成部は、それぞれが、カウンタと、カウンタの値に基づいて基準クロックを分周する分周回路と、を有しており、複数の機能ブロックのうち対応する機能ブロックにクロックを供給する。このような構成によれば、複数の機能部へ供給されるクロックのクロック遅延のばらつきを抑えることが容易になる。以下、このような構成について説明する。
[Embodiment 1]
An information processing apparatus according to Embodiment 1 of the present invention includes a plurality of functional blocks in a synchronous relationship and a plurality of generation units. Each of the plurality of generating units has a counter and a frequency dividing circuit that divides the frequency of the reference clock based on the value of the counter, and supplies the clock to the corresponding functional block among the plurality of functional blocks. . According to such a configuration, it becomes easy to suppress variations in clock delay of clocks supplied to a plurality of functional units. Such a configuration will be described below.

実施形態1に係る構成は、図1に示す情報処理装置100を用いて、例えば複数の機能ブロック7a,7b及び複数の生成部6a,6bを用いて実現することができる。すなわち、複数の生成部6a,6bは、同じ同期グループ11に所属しており、同期関係にある。また、複数の生成部6a,6bのそれぞれは、カウンタ61a,61bと、カウンタの値に基づいて基準クロックを分周する分周回路(デコーダ62a,62b、FF63a,63b、及びGCB64a,64b)と、を有している。そして、複数の生成部6a,6bのそれぞれは、複数の機能ブロックのうち対応する機能ブロック7a,7bにクロックを供給している。一方で、図1に示す構成の全てを用いることは必須ではない。 The configuration according to the first embodiment can be realized using the information processing apparatus 100 shown in FIG. 1, for example, using a plurality of functional blocks 7a and 7b and a plurality of generating units 6a and 6b. That is, the plurality of generators 6a and 6b belong to the same synchronous group 11 and are in a synchronous relationship. Further, each of the plurality of generating units 6a and 6b includes counters 61a and 61b, and frequency dividing circuits (decoders 62a and 62b, FFs 63a and 63b, and GCBs 64a and 64b) that divide the frequency of the reference clock based on the values of the counters. ,have. Each of the plurality of generators 6a and 6b supplies clocks to the corresponding functional blocks 7a and 7b among the plurality of functional blocks. On the other hand, it is not essential to use all the configurations shown in FIG.

本実施形態においては、機能ブロック7a,7bが同期関係にあるにもかかわらず、機能ブロック7a,7bのそれぞれには互いに異なる生成部6a,6bにより生成されたクロックが供給される。このような構成を採用することにより、生成部6a,6bを、対応する機能ブロック7a,7bの近傍に配置することが可能になる。例えば、複数の生成部6a,6bのうち1つを、他の機能ブロックよりも、対応する機能ブロックに近くなるように配置することができる。また、複数の生成部6a,6bのうち1つから対応する機能ブロック7a,7bへとクロックを供給するクロックラインを、クロックMUX4からこの生成部6a,6bへと基準クロック1を供給するクロックラインより短くすることができる。このため、生成部6a,6bから機能ブロック7a,7bへのクロック配線を短くすることができる。さらに、基準クロック1を供給するために、機能ブロック7a,7bの近傍にまで延びる共通のクロックラインを用いることもできる。このような構成により、クロック遅延のばらつきの影響を軽減することが可能になる。そして、本実施形態の構成を採用し、クロック配線を短くすることにより、機能ブロック7a,7bの間のタイミング収束が容易になる。 In the present embodiment, although the functional blocks 7a and 7b are in a synchronous relationship, clocks generated by different generators 6a and 6b are supplied to the functional blocks 7a and 7b, respectively. By adopting such a configuration, it becomes possible to arrange the generators 6a and 6b in the vicinity of the corresponding functional blocks 7a and 7b. For example, one of the plurality of generators 6a and 6b can be arranged closer to the corresponding functional block than the other functional blocks. A clock line for supplying a clock from one of the plurality of generators 6a and 6b to the corresponding functional blocks 7a and 7b is a clock line for supplying the reference clock 1 from the clock MUX 4 to the generators 6a and 6b. can be shorter. Therefore, the clock wiring from the generators 6a and 6b to the functional blocks 7a and 7b can be shortened. Furthermore, a common clock line extending to the vicinity of the functional blocks 7a, 7b can be used to supply the reference clock 1. FIG. With such a configuration, it is possible to reduce the influence of variations in clock delay. By adopting the configuration of this embodiment and shortening the clock wiring, timing convergence between the functional blocks 7a and 7b becomes easier.

このような構成における、本実施形態に係る情報処理装置を実現するLSIの物理レイアウト例を図2に示す。図2に示すように、同期グループ11に所属する各処理部が物理的にまとまるように配置することができる。すなわち、図2において、同期グループ11に所属する機能ブロック7a及び機能ブロック7bは、同期グループ11のエリア内に隣接して配置されている。また、機能ブロック7aにクロックを供給する生成部6aは機能ブロック7aの近傍に配置され、同様に生成部6bは機能ブロック7bの近傍に配置されている。 FIG. 2 shows an example of a physical layout of an LSI that implements the information processing apparatus according to this embodiment in such a configuration. As shown in FIG. 2, each processing unit belonging to the synchronization group 11 can be arranged so as to be physically grouped together. That is, in FIG. 2, the functional blocks 7a and 7b belonging to the synchronous group 11 are arranged adjacently within the area of the synchronous group 11. As shown in FIG. Further, the generator 6a for supplying the clock to the functional block 7a is arranged near the functional block 7a, and similarly the generator 6b is arranged near the functional block 7b.

一実施形態において、クロックMUX4から複数の生成部6a,6bのそれぞれへと基準クロック1を供給するクロックラインは、複数の生成部6a,6bの近傍において互いに分岐している。例えば図2において、基準クロック1は、生成部6a及び生成部6bの近傍にある分岐点81において分岐した配線を通ってそれぞれに分配される。具体例として、分岐点81から生成部6aまで、及び分岐点81から生成部6bまでのクロックラインは、それぞれ、基準クロック1を供給する処理部(例えばクロックMUX4)から分岐点81までのクロックラインより短くてもよい。また、図2のように、機能ブロック7a,7bとは異なるさらなる機能ブロック7eに向けて基準クロック1を供給するクロックラインが、分岐点84において、複数の生成部6a,6bへと基準クロック1を供給するクロックラインと分岐していてもよい。そして、クロックMUX4から複数の生成部6a,6bのそれぞれへと基準クロック1を供給するクロックラインは、分岐点84よりも下流にある分岐点81において互いに分岐していてもよい。このような構成によれば、機能ブロック7a,7bに供給されるクロックのための分岐後のクロック配線が短くなるため、機能ブロック7a,7bの間のタイミング収束が容易になる。 In one embodiment, the clock line that supplies the reference clock 1 from the clock MUX 4 to each of the generators 6a and 6b branches off near the generators 6a and 6b. For example, in FIG. 2, the reference clock 1 is distributed to each of the generators 6a and 6b through branched wiring at a branch point 81 near the generators 6a and 6b. As a specific example, the clock lines from the branch point 81 to the generation unit 6a and from the branch point 81 to the generation unit 6b are the clock lines from the processing unit (for example, the clock MUX 4) that supplies the reference clock 1 to the branch point 81. can be shorter. Also, as shown in FIG. 2, a clock line supplying the reference clock 1 to a further functional block 7e different from the functional blocks 7a and 7b is connected at a branch point 84 to the plurality of generators 6a and 6b. may be branched from the clock line that supplies the The clock lines that supply the reference clock 1 from the clock MUX 4 to each of the plurality of generators 6a and 6b may branch off from each other at a branch point 81 downstream of the branch point 84 . With such a configuration, since the clock wiring after branching for the clocks supplied to the functional blocks 7a and 7b is shortened, timing convergence between the functional blocks 7a and 7b is facilitated.

一実施形態において、制御部31が、同期グループ11に所属する機能ブロック7a,7bに供給されるクロックの制御を行ってもよい。具体的には、制御部31は、複数の生成部6a,6bによるクロック生成を制御することができる。ここで、1つの制御部31が、複数の生成部6a,6bを制御してもよい。このような構成によれば、機能ブロック7a,7bに供給されるクロックa,bの制御を同期させることが容易になる。この場合、制御部31を、同期グループ11のエリア内に、すなわち機能ブロック7a及び機能ブロック7bの近傍に配置することができる。制御部31が、複数の生成部6a,6bと共通の基準クロック1を用いて動作してもよい。例えば、基準クロック1は、制御部31の近傍において分岐した配線、例えば上述の分岐点81において分岐した配線を通って、制御部31に分配されてもよい。このような構成によれば、制御部31と、生成部6a,6bとの間のタイミング収束性が向上する。 In one embodiment, the control unit 31 may control clocks supplied to the functional blocks 7 a and 7 b belonging to the synchronization group 11 . Specifically, the control unit 31 can control clock generation by the plurality of generation units 6a and 6b. Here, one controller 31 may control the plurality of generators 6a and 6b. Such a configuration facilitates synchronizing the control of the clocks a and b supplied to the functional blocks 7a and 7b. In this case, the control unit 31 can be arranged within the area of the synchronization group 11, that is, in the vicinity of the functional blocks 7a and 7b. The control unit 31 may operate using the reference clock 1 common to the plurality of generation units 6a and 6b. For example, the reference clock 1 may be distributed to the control unit 31 through a branched wire in the vicinity of the control unit 31, for example, a branched wire at the branch point 81 described above. Such a configuration improves timing convergence between the control unit 31 and the generation units 6a and 6b.

同様に、同期グループ12に所属するCPU8、制御部9、及び機能ブロック7e、これらにクロックを供給する生成部6c~6e、並びに生成部6c~6eを制御する制御部32を、物理的にまとまるように配置してもよい。同期グループ13についても同様である。 Similarly, the CPU 8, the control unit 9, the functional block 7e belonging to the synchronization group 12, the generation units 6c to 6e that supply clocks to them, and the control unit 32 that controls the generation units 6c to 6e are physically grouped together. can be arranged as follows. The synchronization group 13 is also the same.

以下、実施形態1において図1に示す情報処理装置100を用いる場合の、生成部6a,6bの動作について、図3,4を参照して説明する。図3は、生成部6a及び生成部6bが行うクロック周波数の切り替え動作を示すタイミングチャートである。 Operations of the generators 6a and 6b when the information processing apparatus 100 shown in FIG. 1 is used in the first embodiment will be described below with reference to FIGS. FIG. 3 is a timing chart showing clock frequency switching operations performed by the generators 6a and 6b.

以下の例において、複数の生成部6a,6bのそれぞれが有するカウンタ61a,61bは、同期して動作するように構成されている。例えば、カウンタ61a,61bのカウンタ値は、同じタイミングでインクリメントすることができる。図1の例においては、複数の生成部6a,6bのそれぞれが有するカウンタ61a,61bのビット幅は同じである。ここで、カウンタのビット幅とは、カウンタ値のビット数のことを指し、カウント値の最大値に対応してもよい。また、複数の生成部6a,6bのそれぞれが有するカウンタ61a,61bは、同時にラップアラウンドしてもよい(すなわち、同時にカウント値が0に戻ってもよい)。さらに、複数の生成部6a,6bのそれぞれが有するカウンタ61a,61bは、同じカウンタ値を示すように構成されていてもよい。このような構成によれば、機能ブロック7a,7bに供給されるクロックa,bを同期させることが容易になる。ここでは、生成部6a,6bが有するカウンタ61a,61bは、ともに4bitカウンタであり、最大で15までカウント可能とする。 In the following example, the counters 61a and 61b of the plurality of generators 6a and 6b are configured to operate synchronously. For example, the counter values of the counters 61a and 61b can be incremented at the same timing. In the example of FIG. 1, the bit widths of the counters 61a and 61b of the plurality of generators 6a and 6b are the same. Here, the bit width of the counter indicates the number of bits of the counter value, and may correspond to the maximum value of the count value. Also, the counters 61a and 61b of the plurality of generators 6a and 6b may wrap around at the same time (that is, the count values may return to 0 at the same time). Furthermore, the counters 61a and 61b of the plurality of generators 6a and 6b may be configured to indicate the same counter value. Such a configuration facilitates synchronizing the clocks a and b supplied to the functional blocks 7a and 7b. Here, the counters 61a and 61b of the generators 6a and 6b are both 4-bit counters, and can count up to 15.

また、以下の例においては、機能ブロック7a,7bが有する回路の特性などの理由により、クロックaの周波数とクロックbの周波数との間には、常に以下の周波数関係を守らなければならない制約があるとする。
クロックaの周波数 > クロックbの周波数
In the following example, due to the circuit characteristics of the functional blocks 7a and 7b, the following frequency relationship must always be maintained between the clock a frequency and the clock b frequency. Suppose there is
Frequency of clock a > Frequency of clock b

時刻T0において情報処理装置100はリセット状態にあり、カウンタ61a,61bは停止しており、そのカウンタ値はともに0である。クロックのオン又はオフを表す設定値50a,50bは、クロックを出力する側に設定されている。また、FF63a,63bの初期値はLowであり、出力クロックは停止している。 At time T0, the information processing apparatus 100 is in a reset state, the counters 61a and 61b are stopped, and the counter values are both zero. The setting values 50a and 50b, which indicate whether the clock is on or off, are set on the clock output side. Also, the initial values of the FFs 63a and 63b are Low, and the output clock is stopped.

さらに、内部設定値(以下、単に内部設定値と呼ぶ)の初期値は、ともに2’b00である。ここで、内部設定値とは制御部31が出力したクロック周波数設定値51a,51bを、デコーダ62a,62bがラッチすることにより得られた値である。デコーダ62a,62bは、カウンタ61a,61bのカウント値が15から0にラップアラウンドするタイミングで、設定値51a,51bをラッチする。生成部6aの内部設定値は、2’b00が1分周を、2’b01が2分周を、2’b10が4分周を、2’b11が8分周を、それぞれ示すものとする。一方で生成部6bの内部設定値は、2’b00が2分周を、2’b01が4分周を、2’b10が8分周を、2’b11が16分周を、それぞれ示すものとする。したがって、初期状態において、クロックaは基準クロック1の1分周に、クロックbは基準クロック1の2分周に、それぞれ設定されている。なお、クロック周波数設定値は2bitの信号に限られない。また、内部設定値と分周比との関係も、上記の例には限られず、任意に定義することができる。 Furthermore, the initial values of the internal set values (hereinafter simply referred to as internal set values) are both 2'b00. Here, the internal setting values are values obtained by latching the clock frequency setting values 51a and 51b output from the control section 31 by the decoders 62a and 62b. The decoders 62a and 62b latch the set values 51a and 51b at the timing when the count values of the counters 61a and 61b wrap around from 15 to 0. 2'b00 indicates division by 1, 2'b01 indicates division by 2, 2'b10 indicates division by 4, and 2'b11 indicates division by 8, respectively. . On the other hand, the internal setting values of the generation unit 6b are such that 2'b00 indicates division by 2, 2'b01 indicates division by 4, 2'b10 indicates division by 8, and 2'b11 indicates division by 16. and Therefore, in the initial state, the clock a is set to the reference clock 1 divided by 1, and the clock b is set to the reference clock 1 divided by 2, respectively. Note that the clock frequency setting value is not limited to a 2-bit signal. Also, the relationship between the internal set value and the frequency division ratio is not limited to the above example, and can be arbitrarily defined.

時刻T1においてリセットが解除される。時刻T2において、カウンタ61a,61bは同時にカウントアップを開始する。また、FF63a,63bはデコーダ62a,62bの出力値をそれぞれラッチし、Highになる。 The reset is released at time T1. At time T2, the counters 61a and 61b simultaneously start counting up. Also, the FFs 63a and 63b latch the output values of the decoders 62a and 62b, respectively, and become High.

時刻T3において、FF63a,63bの出力がHighであるため、GCB64a,64bはクロックの出力を開始する。また、デコーダ62aは、1分周を示す内部設定値に従って、常にHighを出力する。一方で、デコーダ62bは、2分周を示す内部設定値に従って、2サイクルに1サイクルHigh期間を形成するように、High及びLowを繰り返す信号を出力する。この結果、2サイクルに1サイクルのパルスが間引かれ、2分周が実現される。時刻T4~T8でも同様の動作が行われる。 At time T3, the outputs of the FFs 63a and 63b are High, so the GCBs 64a and 64b start outputting clocks. Further, the decoder 62a always outputs High in accordance with the internal set value indicating division by one. On the other hand, the decoder 62b outputs a signal that repeats High and Low so as to form one cycle High period in two cycles according to an internal setting value indicating division by two. As a result, one cycle pulse is thinned out every two cycles, and the frequency division by two is realized. Similar operations are performed at times T4 to T8.

一方で時刻T7において、制御部31に入力される設定値51a,51bが、ともに2’b00から2’b01に切り替えられる。この切り替えは、例えば、CPU8が制御部9のレジスタを書き換え、制御部9がレジスタ内の設定値を制御部31に転送することにより行われてもよい。もっとも、実施形態1における設定値の切り替え方法は特に限定されない。 On the other hand, at time T7, the set values 51a and 51b input to the control unit 31 are both switched from 2'b00 to 2'b01. This switching may be performed, for example, by the CPU 8 rewriting the register of the control unit 9 and the control unit 9 transferring the setting value in the register to the control unit 31 . However, the method of switching the setting values in the first embodiment is not particularly limited.

カウンタ61a,61bのカウント値は、時刻T8においてともに最大カウント値である15にカウントアップし、時刻T9においてともに0にラップアラウンドする。内部設定値は、カウンタ61a,61bがラップアラウンドすると同時に、2’b00から2’b01に切り替わる。このため、生成部6aが出力するクロック周波数は1分周から2分周に、生成部6bが出力するクロック周波数は2分周から4分周に、それぞれ変更される。すなわち、時刻T9から、デコーダ62aは2サイクルに1サイクルの周期でHigh及びLowを繰り返す信号を出力し、時刻T10でFF63aが信号をラッチした後、時刻T11から生成部6aは2分周クロックを出力開始する。また、時刻T9から、デコーダ62bは4サイクル中1サイクルのみHighになる信号を出力し、時刻T11から生成部6bは4分周クロックを出力開始する。 The count values of the counters 61a and 61b both count up to the maximum count value of 15 at time T8, and both wrap around to 0 at time T9. The internal set value switches from 2'b00 to 2'b01 at the same time that the counters 61a and 61b wrap around. Therefore, the clock frequency output from the generating unit 6a is changed from dividing by 1 to dividing by 2, and the clock frequency output from the generating unit 6b is changed from dividing by 2 to dividing by 4. That is, from time T9, the decoder 62a outputs a signal that repeats High and Low with a period of one cycle every two cycles. Start output. Further, from time T9, the decoder 62b outputs a signal that becomes High only in one cycle out of four cycles, and from time T11, the generator 6b starts outputting a four-frequency-divided clock.

このような構成によれば、生成部6a,生成部6bのカウンタ61a,61bが同期して同じように動作するため、クロック周波数の切り替えタイミングを同時にすることができる。したがって、上記のようなクロック周波数の周波数関係の制約を守りながらクロック制御を行うことができる。もっとも、同期関係にある複数の機能ブロックにクロックを供給する際に、同じタイミングでクロック周波数を変更することは必須ではない。 According to such a configuration, the counters 61a and 61b of the generating section 6a and the generating section 6b operate in the same manner in synchronization, so that the switching timings of the clock frequencies can be made at the same time. Therefore, clock control can be performed while observing the frequency-related restrictions of the clock frequency as described above. However, when supplying clocks to a plurality of functional blocks in a synchronous relationship, it is not essential to change the clock frequency at the same timing.

図4は、生成部6aが行うクロック周波数のオンオフ動作を示すタイミングチャートである。なお、生成部6b、及びその他の生成部6c~6fも、生成部6aと同様に動作することができる。 FIG. 4 is a timing chart showing the ON/OFF operation of the clock frequency performed by the generator 6a. Note that the generation unit 6b and the other generation units 6c to 6f can also operate in the same manner as the generation unit 6a.

時刻T0において情報処理装置100はリセットが解除された状態にある。ここで、生成部6aの内部設定値は2’b00を示しており、すなわち生成部6aは基準クロック1を1分周したクロックを出力するように設定されている。しかしながら、制御部31が出力する、クロックのオン又はオフを表す設定値50aはLowを示しているため、生成部6aからの出力クロックであるクロックaは停止している。ここで、設定値50aはHighアクティブ信号であり、すなわちHighはクロックオンを、Lowはクロックオフを、それぞれ表す。 At time T0, the information processing apparatus 100 is in a reset state. Here, the internal setting value of the generator 6a indicates 2'b00, that is, the generator 6a is set to output a clock obtained by dividing the frequency of the reference clock 1 by one. However, since the set value 50a representing whether the clock is on or off, which is output by the control unit 31, is Low, the clock a, which is the output clock from the generation unit 6a, is stopped. Here, the set value 50a is a High active signal, that is, High indicates clock on and Low indicates clock off.

時刻T3において制御部31は、設定値50aをHighに遷移させる。時刻T4において、設定値50aがHighであるため、GCB64aはクロックaの出力を開始する。時刻T10において制御部31は、設定値50aをLowに遷移させる。したがって、時刻T11においてクロックaは停止する。なお、設定値50aの切り替えは、設定値51aと同様に行うことができる。なお、クロックaが停止している間も、カウンタ61aはカウント動作を継続することができる。 At time T3, the control unit 31 changes the set value 50a to High. At time T4, the set value 50a is High, so the GCB 64a starts outputting the clock a. At time T10, the control unit 31 changes the set value 50a to Low. Therefore, clock a stops at time T11. Note that the setting value 50a can be switched in the same manner as the setting value 51a. Note that the counter 61a can continue counting even while the clock a is stopped.

なお、上記の例のように、生成部6aが生成するクロックの最大分周比と、生成部6bが生成するクロックの最大分周比とは異なっていてもよい。一方、生成部6aの最大分周比は8分周であり、8分周クロックを出力するには、3bit幅のカウンタ(最大カウント値7)を用いれば十分である。そして、生成部6bの最大分周比は16分周であり、16分周クロックを出力するために4bit幅カウンタ(最大カウント値15)が用いられる。上記の例においては、生成部6aのカウンタ61aのカウンタ幅は、生成部6bのカウンタ61bと同じカウンタ幅となるように、必要な3bit幅よりも大きい4bit幅である。このように、カウンタ61a,61bのカウンタ幅を揃え、同時にラップアラウンドさせるという簡単な構成により、カウンタ61a,61bの挙動を常に同じにすることができる。このため、上記の例によれば、容易にクロック周波数の切り替えを同時に行うことができる。もっとも、別の例において、生成部6aの制御と生成部6bの制御とを独立に行ってもよい。 As in the above example, the maximum frequency division ratio of the clock generated by the generator 6a and the maximum frequency division ratio of the clock generated by the generator 6b may be different. On the other hand, the maximum frequency division ratio of the generator 6a is 8 frequency division, and it is sufficient to use a 3-bit width counter (maximum count value 7) to output an 8 frequency division clock. The maximum frequency division ratio of the generator 6b is 16 divisions, and a 4-bit width counter (maximum count value 15) is used to output a 16 division clock. In the above example, the counter width of the counter 61a of the generation unit 6a is 4 bits, which is larger than the required 3 bits, so that the counter width is the same as that of the counter 61b of the generation unit 6b. In this manner, the behavior of the counters 61a and 61b can always be made the same by a simple configuration in which the counter widths of the counters 61a and 61b are aligned and the wraparound is performed at the same time. Therefore, according to the above example, it is possible to easily switch the clock frequencies at the same time. However, in another example, the control of the generator 6a and the control of the generator 6b may be performed independently.

上記の例においては、クロックを分周するための分周方法として、パルスを間引く歯抜け方式が用いられたが、使用可能な分周方式は特定の方式に限定されない。例えば、分周方法として、生成部有するダウンカウンタの各bitのQ出力を分周クロックとして用いる方式(分周方式とも呼ばれる)を採用してもよい。この場合、例えばカウンタの1桁目のbitのQ出力は周波数が1/2になり、2桁目のbitのQ出力は周波数が1/4になる。この場合、生成部が有するデコーダの代わりに、ダウンカウンタの各bitの分周クロックから1つを選択するMUXを用いることができる。分周方式を用いる場合、生成部により生成されたクロックのパルス幅は、分周比に比例して大きくなる。例えば、2分周ではパルス幅が基準クロックの2倍になり、4分周ではパルス幅が基準クロックの4倍になる。実施形態1の構成によれば、様々な分周方法を適用可能である。 In the above example, a toothless method of thinning out pulses is used as the frequency division method for dividing the clock, but the frequency division method that can be used is not limited to a specific method. For example, as the frequency division method, a method (also called a frequency division method) using the Q output of each bit of the down counter included in the generator as a frequency-divided clock may be adopted. In this case, for example, the Q output of the first digit bit of the counter has a frequency of 1/2, and the Q output of the second digit bit has a frequency of 1/4. In this case, a MUX that selects one of the frequency-divided clocks for each bit of the down counter can be used instead of the decoder of the generator. When the frequency division method is used, the pulse width of the clock generated by the generator increases in proportion to the division ratio. For example, dividing by two makes the pulse width twice that of the reference clock, and dividing by four makes the pulse width four times that of the reference clock. According to the configuration of the first embodiment, various frequency division methods can be applied.

上記の例では、基準クロックがリセット中とリセット解除後で同じ一定の周波数である場合について説明した。一方で、一実施形態において、リセット部20は、クロックMUX4が低速クロックを基準クロック1として供給している間に、複数の生成部6a,6bのそれぞれが備える初期化されたカウンタ61a,61bの動作を開始させることができる。そして、リセット部20は、カウンタ61a,61bの動作の開始後に、高速クロックを基準クロック1としてとして供給することができる。このように、リセット解除後に、クロックMUX4を用いて基準クロック1を低速クロックから高速クロックに切り替えてもよい。このような構成によれば、カウンタ61a,61bの動作を同期させるためのタイミング設計がより容易になる。基準クロックを高速クロックに切り替えた場合、1サイクルの期間は低速クロックの場合よりも短くなるが、各信号の挙動に変わりはない。 In the above example, the reference clock has the same constant frequency during reset and after reset release. On the other hand, in one embodiment, while the clock MUX 4 supplies the low-speed clock as the reference clock 1, the reset unit 20 resets the initialized counters 61a and 61b of the plurality of generators 6a and 6b, respectively. action can be initiated. The reset unit 20 can supply the high-speed clock as the reference clock 1 after the counters 61a and 61b start operating. Thus, after the reset is released, the clock MUX4 may be used to switch the reference clock 1 from the low-speed clock to the high-speed clock. Such a configuration facilitates timing design for synchronizing the operations of the counters 61a and 61b. When the reference clock is switched to the high-speed clock, the period of one cycle becomes shorter than that of the low-speed clock, but the behavior of each signal does not change.

上記の例では、リセット解除後にカウンタが常にカウントアップを続け、カウンタ61a,61bのカウント値は同期し続けることを前提としていた。しかしながら、宇宙線のような外的要因のために、カウンタ値の同期が崩れる可能性がある。このような事象に対照するために、一実施形態に係る情報処理装置は、複数の生成部6a,6bのそれぞれが備えるカウンタ間(61a,61b)の同期のずれを検出するための構成をさらに有していてもよい。この場合、同期のずれを検出したことに応じて、リセット部20は複数の生成部6a,6bのそれぞれが備えるカウンタ61a,61bのカウンタ値を初期化することができる。 In the above example, it is assumed that the counter continues to count up after the reset is released, and the count values of the counters 61a and 61b continue to be synchronized. However, due to external factors such as cosmic rays, the synchronization of the counter values may be lost. In order to contrast with such an event, the information processing apparatus according to one embodiment further includes a configuration for detecting out-of-synchronization between the counters (61a, 61b) provided in each of the plurality of generation units 6a, 6b. may have. In this case, the reset unit 20 can initialize the counter values of the counters 61a and 61b included in the plurality of generation units 6a and 6b in response to detection of the synchronization deviation.

このような構成の一例として、カウンタ61a,61bは、カウンタ値が1ずつインクリメントしているかどうかを確認するチェック回路を有していてもよい。チェック回路が異常、すなわちカウンタ値が1ずつインクリメントしていないことを検出した場合、カウンタ値は異常をリセット部20に通知することができる。この場合、リセット部20は、通知を発したカウンタと同じ同期グループに対するクロックを生成する全ての生成部に対して、供給する基準クロックをオシレータ1が発振した低速クロックに切り替え、及びリセットを行うことができる。このような構成によれば、同じ同期グループに対するクロックを生成する全ての生成部のカウンタを初期化し、同時に0からカウントアップさせることができ、すなわちカウンタ値を同期させることができる。 As an example of such a configuration, the counters 61a and 61b may have check circuits for checking whether the counter values are incremented by one. When the check circuit detects an abnormality, that is, the counter value is not incremented by one, the reset unit 20 can be notified of the abnormality of the counter value. In this case, the reset unit 20 switches the supplied reference clock to the low-speed clock oscillated by the oscillator 1 and resets all generation units that generate clocks for the same synchronization group as the counter that issued the notification. can be done. According to such a configuration, the counters of all generating units that generate clocks for the same synchronization group can be initialized and counted up from 0 at the same time, that is, the counter values can be synchronized.

[実施形態2]
本発明の実施形態2に係る情報処理装置は、複数の生成部と、第1の制御部と、第2の制御部と、を備える。複数の生成部は、それぞれ、複数の機能ブロックのうち対応する機能ブロックに供給するクロックを生成する。第1の制御部は、複数の生成部のうちの第1のグループによるクロック生成を制御し、第1のグループと共通のクロックを用いて動作する。また、第2の制御部は、複数の機能ブロックのうち1つであり、第1のグループによるクロック生成の制御情報を第1の制御部に非同期転送する。このような構成によれば、第2の制御部が生成部を制御するためのタイミング設計が容易になる。以下、このような構成について説明する。
[Embodiment 2]
An information processing apparatus according to Embodiment 2 of the present invention includes a plurality of generation units, a first control unit, and a second control unit. Each of the plurality of generators generates clocks to be supplied to corresponding functional blocks among the plurality of functional blocks. A first control unit controls clock generation by a first group of the plurality of generation units, and operates using a clock common to the first group. The second control unit is one of the plurality of functional blocks, and asynchronously transfers control information for clock generation by the first group to the first control unit. Such a configuration facilitates timing design for the second controller to control the generator. Such a configuration will be described below.

実施形態2に係る構成は、図1に示す情報処理装置100を用いて、例えば複数の生成部6a,6b、制御部31、及び制御部9を用いて実現することができる。すなわち、複数の生成部6a,6bは、それぞれ、複数の機能ブロックのうち対応する機能ブロック7a,7bに供給するクロックを生成する。制御部31は、複数の生成部のうちの第1のグループを構成する生成部6a,6bによるクロック生成を制御し、第1の生成部を構成する生成部6a,6bと共通のクロックを用いて動作する。この第1のグループを構成する生成部6a,6bは、生成したクロックを、互いに同期関係にある複数の機能ブロック7a,7bに供給してもよい。制御部9は、複数の機能ブロックのうち1つであり、第1のグループを構成する生成部6a,6bによるクロック生成の制御情報を制御部31に非同期転送する。図1の例において、制御部32によってクロック生成を制御される生成部の第2のグループ(生成部6c~6e)は、生成したクロックを制御部9に供給している。ここで、第2のグループは、第1のグループと共通の基準クロック1を用いて動作している。一方で、図1に示す構成の全てを用いることは必須ではない。また、実施形態2に係る情報処理装置は、実施形態1に係る情報処理装置の構成を有していてもよい一方で、実施形態1とは別の情報処理装置であってもよい。 The configuration according to the second embodiment can be realized by using the information processing apparatus 100 shown in FIG. That is, the plurality of generators 6a and 6b respectively generate clocks to be supplied to the corresponding functional blocks 7a and 7b among the plurality of functional blocks. The control unit 31 controls the clock generation by the generating units 6a and 6b forming the first group among the plurality of generating units, and uses the clock common to the generating units 6a and 6b forming the first generating unit. works. The generators 6a and 6b forming the first group may supply the generated clocks to a plurality of functional blocks 7a and 7b that are in a synchronous relationship with each other. The control unit 9 is one of a plurality of functional blocks, and asynchronously transfers to the control unit 31 control information for clock generation by the generation units 6a and 6b forming the first group. In the example of FIG. 1, the second group of generation units (generation units 6 c to 6 e ) whose clock generation is controlled by the control unit 32 supplies the generated clocks to the control unit 9 . Here, the second group operates using the reference clock 1 common to the first group. On the other hand, it is not essential to use all the configurations shown in FIG. Further, the information processing apparatus according to the second embodiment may have the configuration of the information processing apparatus according to the first embodiment, but may be an information processing apparatus different from the first embodiment.

本実施形態において、制御部9は、非同期データ転送用のインターフェースであるI/F34を介して、制御部31と接続されている。制御部9は、I/F34を介して、制御部31へと、クロック生成の制御情報を非同期転送することができる。この制御情報は、生成部が生成するクロック周波数情報と、生成部が生成するクロックのオン又はオフを制御する情報と、の少なくとも一方を含んでいてもよい。例えば、制御部9は、生成部6a,6bによるクロック生成の制御情報として、生成部6a,6bに対するクロック周波数の設定値51a,bと、クロックのオン又はオフを示す設定値50a,bとを転送することができる。 In this embodiment, the controller 9 is connected to the controller 31 via an I/F 34 that is an interface for asynchronous data transfer. The control unit 9 can asynchronously transfer control information for clock generation to the control unit 31 via the I/F 34 . This control information may include at least one of clock frequency information generated by the generator and information for controlling on/off of the clock generated by the generator. For example, the control unit 9 sets clock frequency setting values 51a and 51b for the generating units 6a and 6b and setting values 50a and 50b indicating whether the clocks are turned on or off as control information for clock generation by the generating units 6a and 6b. can be transferred.

同様に、一実施形態に係る情報処理装置は、複数の生成部のうちの1以上の生成部で構成される第2のグループ(生成部6c~6e)によるクロック生成を制御し、第2のグループと共通のクロックを用いて動作する、制御部32を有していてもよい。制御部9は、第2のグループによるクロック生成の制御情報を制御部32に非同期転送することができる。図1の例において制御部9は、非同期データ転送用のインターフェースであるI/F35,36を介して、制御部32,33と接続されている。この場合、制御部9は、生成部6c~6eに対する設定値を制御部32に、生成部6fに対する設定値を制御部33に、それぞれ非同期転送することができる。 Similarly, the information processing apparatus according to one embodiment controls clock generation by a second group (generation units 6c to 6e) composed of one or more generation units among a plurality of generation units, It may have a control unit 32 that operates using a clock common to the group. The control unit 9 can asynchronously transfer control information for clock generation by the second group to the control unit 32 . In the example of FIG. 1, the controller 9 is connected to controllers 32 and 33 via I/Fs 35 and 36, which are interfaces for asynchronous data transfer. In this case, the control unit 9 can asynchronously transfer the setting values for the generating units 6c to 6e to the control unit 32 and the setting value for the generating unit 6f to the control unit 33, respectively.

図5を参照して、非同期転送を行うための、制御部9及び制御部31の構成の一例について説明する。図5は、制御部9及び制御部31の構成の一例を示すブロック図である。制御部9は、転送制御部91及びレジスタ92を有している。レジスタ92は、同期グループ11についてのクロック生成の制御情報を格納する。制御部9は、同様に、同期グループ12,13についてのクロック生成の制御情報を格納するレジスタ93,94を有していてもよい。レジスタ92~94は、レジスタアクセスのためのアドレス空間がそれぞれ異なっており、排他的に読み書き可能である。このレジスタ92~94内の制御情報は、複数の機能ブロックのうち1つにより書き換え可能である。例えば、CPU8は、レジスタバスを介して、レジスタ92~94に対する読み書きを行ってもよい。 An example of the configuration of the control unit 9 and the control unit 31 for performing asynchronous transfer will be described with reference to FIG. FIG. 5 is a block diagram showing an example of the configuration of the control section 9 and the control section 31. As shown in FIG. The controller 9 has a transfer controller 91 and a register 92 . The register 92 stores clock generation control information for the synchronization group 11 . The control unit 9 may similarly have registers 93 and 94 for storing clock generation control information for the synchronization groups 12 and 13 . Registers 92-94 have different address spaces for register access and are exclusively readable and writable. The control information in these registers 92-94 can be rewritten by one of a plurality of functional blocks. For example, CPU 8 may read from and write to registers 92-94 via a register bus.

以下では、レジスタ92に対する書き込みが行われた場合について説明するが、レジスタ93,94に書き込みが行われた場合も同様の動作を行うことができる。また、以下の例においては、制御部9と制御部31とがバスで接続され、制御部9がバスを介して制御情報を制御部31に転送する場合について説明する。 In the following, a case where writing to the register 92 is performed will be described, but similar operations can be performed when writing is performed to the registers 93 and 94 as well. Also, in the following example, a case where the control unit 9 and the control unit 31 are connected by a bus and the control unit 9 transfers control information to the control unit 31 via the bus will be described.

図5に示す例において制御部9と制御部31との間のレジスタアクセスは、アドレス信号とデータ信号とを用いるバスプロトコルを用いて行われる。また、図5において、制御部9と制御部31とは、さらに、制御情報の転送を制御する信号線(req,ack)で接続されている。 Register access between the control unit 9 and the control unit 31 in the example shown in FIG. 5 is performed using a bus protocol using address signals and data signals. In FIG. 5, the controller 9 and the controller 31 are further connected by signal lines (req, ack) for controlling transfer of control information.

転送制御部91は、レジスタへの書き込みが発生すると、レジスタアクセスのアドレスに基づいて、どの同期グループについてのレジスタに書き込みが発生したかを判断し、対応する制御部に対する非同期データ転送を開始する。まず、制御部9は、制御情報の取得を要求する信号を制御部31に送る。図5の例において、転送制御部91は、例えば同期グループ11用のレジスタ92に書き込みが発生したと判断した場合、制御部31とのI/F34へのリクエスト信号(req)をアサートする。一方、転送制御部91は、I/F34へのデータ信号(data)として、レジスタ92のレジスタ値を出力する。 When a write to a register occurs, the transfer control unit 91 determines for which synchronous group the write has occurred to the register based on the register access address, and starts asynchronous data transfer to the corresponding control unit. First, the control unit 9 sends a signal requesting acquisition of control information to the control unit 31 . In the example of FIG. 5, the transfer control unit 91 asserts a request signal (req) to the I/F 34 with the control unit 31 when determining that writing has occurred in the register 92 for the synchronization group 11, for example. On the other hand, the transfer control unit 91 outputs the register value of the register 92 as a data signal (data) to the I/F 34 .

制御部31は、メタスタビリティ対策のための、FF313及びFF314を備える2段FFシンクロナイザ312を用いて、入力されたreqを同期化する。また、制御部31は、同期化されたreqを示すFF314のQ出力と、FF315のQ出力の反転との論理積317であるパルスを生成する。そして、生成されたパルスに従って、レジスタ311はI/F34のdataをラッチする。その後、制御部31は、制御情報を取得したことを通知する信号を制御部9に送る。図5の例において、制御部31は、FF314のQ出力を、FF315及びFF316を介して、I/F34への応答信号(ack)としてループバックする。 The control unit 31 synchronizes the input req using a two-stage FF synchronizer 312 including FFs 313 and 314 for metastability countermeasures. The control unit 31 also generates a pulse that is a logical product 317 of the Q output of FF 314 indicating the synchronized req and the inverse of the Q output of FF 315 . Then, the register 311 latches the data of the I/F 34 according to the generated pulse. After that, the control unit 31 sends a signal notifying that the control information has been acquired to the control unit 9 . In the example of FIG. 5, the control unit 31 loops back the Q output of FF314 via FF315 and FF316 as a response signal (ack) to I/F34.

制御部9は、2段FFシンクロナイザ95を用いて、I/F34から入力されたackを同期化する。同期化後のackは転送制御部91に入力される。転送制御部91は、同期化後のackのアサートに従ってreqをデアサートする。最終的にackもデアサートされ、こうして非同期データ転送が完了する。非同期データ転送の詳細動作例については、図7のタイミングチャートを参照して後述する。 The control unit 9 uses a two-stage FF synchronizer 95 to synchronize ack input from the I/F 34 . The ack after synchronization is input to the transfer control unit 91 . The transfer control unit 91 deasserts req in accordance with the assertion of ack after synchronization. Eventually ack is also deasserted, thus completing the asynchronous data transfer. A detailed operation example of the asynchronous data transfer will be described later with reference to the timing chart of FIG.

制御部31は、レジスタ311によりラッチされたデータ信号を、生成部6a,6bに対する設定値(例えばクロック周波数の設定値50a,50b及びクロックのオン又はオフを示す設定値51a,51b)として、生成部6a,6bに出力する。ここで説明する例において、制御部31は、第1のグループに含まれる1以上の生成部6a,6bのそれぞれに対し、制御情報(例えば上記の設定値50a,50b,51a,51b)を同期転送する。また、制御部31は、第1のグループに含まれる1以上の生成部6a,7bのそれぞれに対し、制御情報を同じタイミングで出力することができる。 The control unit 31 generates the data signal latched by the register 311 as setting values for the generating units 6a and 6b (for example, clock frequency setting values 50a and 50b and clock ON/OFF setting values 51a and 51b). Output to the units 6a and 6b. In the example described here, the control unit 31 synchronizes control information (for example, the above set values 50a, 50b, 51a, 51b) with each of the one or more generation units 6a, 6b included in the first group. Forward. Also, the control unit 31 can output the control information to each of the one or more generation units 6a and 7b included in the first group at the same timing.

制御部32,33も、制御部31と同様の非同期データ転送のための構成を持つことができ、レジスタ93,94のレジスタ値をラッチすることができる。このように、転送制御部91が全てのI/F34~36の制御を集中して担ってもよい。 The control units 32 and 33 can also have the same configuration for asynchronous data transfer as the control unit 31, and can latch the register values of the registers 93 and 94. FIG. In this way, the transfer control unit 91 may centrally control all the I/Fs 34-36.

図7のタイミングチャートを参照して、クロックaの周波数の設定値の受け渡しについて説明する。なお、クロックbの周波数の設定値も同様に転送することができる。以下の説明において、制御部9はクロックcに同期して動作し、クロックcは基準クロック1の2分周である。基準クロック1に対してクロックcはCTS下流に位置し、時刻T0の基準クロック1に従って生成されたパルスは、CTSのクロック遅延により、制御部9に到達した際に時刻T2’にまで遅延している。このクロック遅延差のために、クロックcと基準クロック1の位相の同期を保証することは容易ではない。 The delivery of the set value of the frequency of the clock a will be described with reference to the timing chart of FIG. Note that the set value of the frequency of clock b can also be transferred in the same manner. In the following description, the control unit 9 operates in synchronization with the clock c, which is the reference clock 1 divided by two. The clock c is located downstream of the CTS with respect to the reference clock 1, and the pulse generated according to the reference clock 1 at the time T0 is delayed until the time T2' when it reaches the control unit 9 due to the clock delay of the CTS. there is Because of this clock delay difference, it is not easy to guarantee phase synchronization between clock c and reference clock 1 .

時刻T0において、クロックaの周波数の設定値は2’b00(1分周)である。この設定値は、I/F34を介してdataとして制御部31に入力されたものである。時刻T’4において、制御部9のレジスタ92への書き込みにより、レジスタ92が保持するクロックaの周波数の設定値が2’b00から2’b01(2分周)に変更される。同時に転送制御部91は、I/F34のreqをアサートする。ここで、req及びackはHighアクティブ信号であり、アサートはHighを意味するものとする。 At time T0, the set value of the frequency of clock a is 2'b00 (divided by 1). This setting value is input to the control unit 31 as data via the I/F 34 . At time T'4, the setting value of the frequency of clock a held by the register 92 is changed from 2'b00 to 2'b01 (divided by 2) by writing to the register 92 of the control unit 9. FIG. At the same time, the transfer control unit 91 asserts req of the I/F 34 . Here, req and ack are High active signals, and assert means High.

時刻T4’においてアサートされたreqは、時刻T5において制御部31のFF313でラッチされる。しかしながら、送信クロックであるクロックcと受信クロックである基準クロック1の位相は同期していないかもしれない。このため、時刻T5においてメタスタビリティが発生するかもしれない。しかしながら、この例においては、2段FFシンクロナイザ312が用いられるため、時刻T5で発生したメタスタビリティは時刻T6で収束し、FF313のQ出力はHighになる。時刻T7で、このHighがFF313からFF314に伝搬する。すると、FF315のQ出力の反転とFF314のQ出力との論理積317がHighになる。時刻T8において論理積317がHighであるため、MUX318は1番にアサインされているdataを選択し、このためdataがレジスタ311にラッチされる。 The req asserted at time T4' is latched by the FF 313 of the control unit 31 at time T5. However, the phases of clock c, which is the transmission clock, and reference clock 1, which is the reception clock, may not be synchronized. Therefore, metastability may occur at time T5. However, since the two-stage FF synchronizer 312 is used in this example, the metastability generated at time T5 converges at time T6, and the Q output of FF 313 becomes High. At time T7, this High propagates from FF313 to FF314. Then, the logical AND 317 of the inverted Q output of FF 315 and the Q output of FF 314 becomes High. Since the AND 317 is High at time T8, the MUX 318 selects the data assigned to No. 1, so the data is latched into the register 311. FIG.

時刻T8においてレジスタ311にラッチされたdataに従うクロック周波数の設定値51aは、データ遅延のために時刻T8’において生成部6aに到達する。この設定値51aは、最短で、基準クロック1が立ち上がる時刻T9において、デコーダ62aによってラッチされることができる。このタイミングパスは、基準クロック1の1サイクルでデータを受け渡すパスであるものとして、タイミング設計を行うことができる。 The set value 51a of the clock frequency according to the data latched in the register 311 at time T8 reaches the generator 6a at time T8' due to the data delay. This set value 51a can be latched by the decoder 62a at time T9 when the reference clock 1 rises at the earliest. Timing can be designed assuming that this timing path is a path that transfers data in one cycle of the reference clock 1 .

時刻T9において、制御部31はI/F34のackをアサートする。ackのアサートを受信した転送制御部91は、時刻T12’においてreqをデアサートする。時刻T13においては、時刻T5と同様にメタスタビリティが発生するかもしれないが、時刻T14においてメタスタビリティは収束し、FF313のQ出力はLowになる。以後、時刻T17にかけてackにLowが伝搬し、非同期データ転送が完了する。 At time T9, the controller 31 asserts ack of the I/F 34 . Upon receiving the assertion of ack, the transfer control unit 91 deasserts req at time T12'. At time T13, metastability may occur as at time T5, but metastability converges at time T14 and the Q output of FF 313 becomes Low. Thereafter, ack is propagated to Low until time T17, and the asynchronous data transfer is completed.

このように上記の例においては、CTS下流にある制御部9から、CTS上流の基準クロック1で動作する制御部31へとクロック生成の制御情報(例えばクロック周波数の設定値及びクロックのオン又はオフの設定値)を非同期データ転送することができる。このため、CTS下流にある制御部9からCTS上流にある制御部31へのタイミングパスを分断することができる。一実施形態において、第1のグループに含まれる1以上の生成部6a,6b及び制御部31は、制御部9よりもクロックツリーの上流のクロック(クロックツリーの対象外のクロックを含む)を用いて動作する。このように、制御部9の動作クロックと、生成部6a,6bの動作クロックとが同期していなくても、本実施形態においては、制御部9から生成部6a,6bへとクロック生成の制御情報を転送することが容易になる。すなわち、本実施形態においては、共通のクロックを用いて動作する制御部31と生成部6a,6bとの間で、設定値を同期転送できればよいため、タイミング設計が容易となる。 Thus, in the above example, control information for clock generation (for example, clock frequency setting value and clock ON/OFF) is transmitted from the control unit 9 downstream of the CTS to the control unit 31 operating with the reference clock 1 upstream of the CTS. setting value) can be transferred asynchronously. Therefore, the timing path from the control unit 9 downstream of the CTS to the control unit 31 upstream of the CTS can be cut off. In one embodiment, the one or more generation units 6a and 6b and the control unit 31 included in the first group use clocks upstream in the clock tree from the control unit 9 (including clocks not covered by the clock tree). works. As described above, even if the operation clock of the control unit 9 and the operation clocks of the generation units 6a and 6b are not synchronized, in the present embodiment, the control unit 9 controls clock generation to the generation units 6a and 6b. Easier to transfer information. That is, in the present embodiment, it is only necessary to synchronously transfer the set values between the control unit 31 and the generation units 6a and 6b that operate using a common clock, which facilitates timing design.

特に、実施形態1で説明したように、制御部31を第1のグループ(生成部6a,6b)の近傍に配置することにより、制御部31から生成部6a,6bへのデータ遅延を低減することができる。例えば、制御部31を、他の生成部6c~6fのいずれよりも、生成部6a,6bに近くなるように配置することができる。このような構成によれば、基準クロック1の1サイクルで制御部31から生成部6a,6bへとクロック生成の制御情報を受け渡すように、タイミング設計を行うことが容易となる。 In particular, as described in the first embodiment, data delay from the control unit 31 to the generation units 6a and 6b is reduced by placing the control unit 31 near the first group (generation units 6a and 6b). be able to. For example, the controller 31 can be arranged closer to the generators 6a and 6b than any of the other generators 6c to 6f. According to such a configuration, timing design can be easily performed so that the control information for clock generation is transferred from the control section 31 to the generation sections 6a and 6b in one cycle of the reference clock 1. FIG.

なお、制御部9はどの同期グループに含まれていてもよい。例えば、制御部9が同期グループ11に含まれる機能ブロックの1つであってもよい。この場合、生成部の第1のグループ(生成部6a,6b)は、生成したクロックを、制御部9に供給することができる。また、制御部9が同期グループ13に含まれる機能ブロックの1つであってもよい。この場合、制御部33によってクロック生成を制御される、生成部の第3のグループ(生成部6f)は、生成したクロックを制御部9に供給することができ、ここで、第3のグループは第1のグループとは異なる基準クロック2を用いて動作している。このように制御部31と制御部9とが異なる基準クロックを用いて動作している場合であっても、タイミングパスを分断することにより、制御情報を受け渡すためのタイミング設計が容易になる。 Note that the control unit 9 may be included in any synchronization group. For example, the controller 9 may be one of the functional blocks included in the synchronization group 11 . In this case, the first group of generation units (generation units 6 a and 6 b ) can supply the generated clock to the control unit 9 . Also, the control unit 9 may be one of the functional blocks included in the synchronization group 13 . In this case, the third group of generators (generators 6f) whose clock generation is controlled by the controller 33 can supply the generated clocks to the controller 9, where the third group is It operates using a reference clock 2 different from that of the first group. Even when the control unit 31 and the control unit 9 operate using different reference clocks in this manner, the timing design for transferring control information is facilitated by dividing the timing path.

また、実施形態1で説明したように、生成部6a,6bが生成するクロック周波数に周波数関係の制約が存在する場合に、周波数関係の不整合が起こらないように、生成部6a,6bが生成するクロック周波数を同時に変更する必要があるかもしれない。このように、クロック周波数を同時に変更するためにも、本実施形態の構成は有効である。例えば、一実施形態においては、一度のレジスタ書き込みにより、クロックaとクロックbの双方についての周波数の設定値が変更される。このような構成を実現できるレジスタフィールドの例について、図6を参照して説明する。 Further, as described in the first embodiment, when the clock frequencies generated by the generators 6a and 6b are subject to frequency-related restrictions, the generators 6a and 6b generate It may be necessary to change the clock frequency to be used at the same time. Thus, the configuration of this embodiment is also effective for simultaneously changing the clock frequencies. For example, in one embodiment, a single register write changes the frequency settings for both clock a and clock b. An example of register fields that can implement such a configuration will be described with reference to FIG.

図6は、レジスタ92を表す。レジスタ92の読み書きは4byte単位で実行するものとする。すなわち、図6において、0bit目~31bit目の読み書きは同時に可能である。sel aは、0bit目~1bit目にアサインされている、クロックaの周波数の設定値である。また、sel bは、2bit目~3bit目にアサインされている、クロックbの周波数の設定値である。4bit目~31bit目のReservedは未使用領域である。 FIG. 6 represents register 92 . It is assumed that reading and writing of the register 92 are executed in units of 4 bytes. That is, in FIG. 6, reading and writing of the 0th bit to the 31st bit are possible at the same time. sel a is a set value of the frequency of clock a assigned to the 0th bit to the 1st bit. sel b is a set value of the frequency of clock b assigned to the 2nd to 3rd bits. Reserved from the 4th bit to the 31st bit is an unused area.

このような実施形態において、クロックa及びクロックbの周波数を変更する場合、sel aとsel bの書き換えを同時に行う。この場合、レジスタ92がI/F34を介して出力するdataによって示される、クロックa及びクロックbの周波数の設定値は、同時に変化する。したがって、レジスタ311が格納しているデータ信号にも、クロックa及びクロックbの周波数の設定値の変更が同時に反映される。このため、レジスタ311が出力するクロック周波数の設定値51a,51bも同時に変更される。このように、クロックa及びクロックbの周波数を同時に変更することができる。設定値に応じてクロック周波数を変更するための構成は特に限定されないが、例えば、実施形態1と同様の構成を採用することにより、設定値51a,51bを同時に変更することで、クロックa及びクロックbの周波数を同時に変更することができる。 In such an embodiment, when changing the frequency of clock a and clock b, sel a and sel b are rewritten at the same time. In this case, the set values of the frequencies of the clocks a and b indicated by the data output by the register 92 via the I/F 34 change at the same time. Therefore, the data signal stored in the register 311 also reflects the change in the set values of the frequencies of the clocks a and b at the same time. Therefore, the set values 51a and 51b of the clock frequencies output by the register 311 are also changed at the same time. Thus, the frequencies of clock a and clock b can be changed simultaneously. The configuration for changing the clock frequency according to the set value is not particularly limited, but for example, by adopting the same configuration as in the first embodiment, by simultaneously changing the set values 51a and 51b, clock a and clock The frequency of b can be changed at the same time.

実施形態2においては、主にクロックの周波数の設定値を変更する場合について説明したが、同様にクロックのオン又はオフの設定値を変更することもできる。 In the second embodiment, mainly the case of changing the set value of the clock frequency has been described, but similarly, the set value of turning on or off the clock can also be changed.

本実施形態では、CPU8がレジスタバスを介して制御部9のレジスタを書き換え、制御部9から制御部31に対してクロック生成の制御情報を非同期転送した。一方で、CPU8が、直接、制御部31に対してクロック生成の制御情報を非同期転送してもよい。上記のとおり、制御部31は同期グループ毎に設けることができる。例えば、CPU8は、非同期バス転送が可能なレジスタバスを介して制御部31に設けられたレジスタを書き換えることにより、クロック生成の制御情報を制御部31に非同期転送することができる。
[その他の実施形態]
In this embodiment, the CPU 8 rewrites the register of the control unit 9 via the register bus, and asynchronously transfers control information for clock generation from the control unit 9 to the control unit 31 . On the other hand, the CPU 8 may asynchronously transfer the clock generation control information directly to the control section 31 . As described above, the controller 31 can be provided for each synchronization group. For example, the CPU 8 can asynchronously transfer clock generation control information to the control unit 31 by rewriting a register provided in the control unit 31 via a register bus capable of asynchronous bus transfer.
[Other embodiments]

図1では、機能ブロックと1対1の関係となるように生成部6a~6fが設けられたが、本発明はこのような構成には限定されない。すなわち、1つの生成部が、2以上の機能ブロックに対してクロックを供給してもよい。この場合、機能ブロックのレイアウトに鑑み、生成部と機能ブロックと間のチップトップ階層上のクロック配線の遅延ばらつきがタイミング設計に影響を与えないように、複数の機能ブロックに供給するクロックを生成する生成部を設けることができる。 In FIG. 1, the generators 6a to 6f are provided so as to have a one-to-one relationship with the functional blocks, but the present invention is not limited to such a configuration. That is, one generator may supply clocks to two or more functional blocks. In this case, considering the layout of the functional blocks, the clocks to be supplied to the multiple functional blocks are generated so that the timing design is not affected by the delay variation of the clock wiring on the chip top layer between the generator and the functional blocks. A generator may be provided.

発明は上記実施形態に制限されるものではなく、発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、発明の範囲を公にするために請求項を添付する。 The invention is not limited to the embodiments described above, and various modifications and variations are possible without departing from the spirit and scope of the invention. Accordingly, the claims are appended to make public the scope of the invention.

6a,6b:生成部、7a,7b:機能ブロック、8:CPU、9:制御部、31:制御部、61a,61b:カウンタ 6a, 6b: generator, 7a, 7b: functional block, 8: CPU, 9: controller, 31: controller, 61a, 61b: counter

Claims (17)

それぞれ、複数の機能ブロックのうち対応する機能ブロックに供給するクロックを生成する、複数の生成手段と、
前記複数の生成手段のうちの1以上の生成手段で構成される第1のグループの生成手段によるクロック生成を制御し、前記第1のグループと共通のクロックを用いて動作する、第1の制御手段と、
前記複数の機能ブロックのうち1つであり、前記第1のグループの生成手段によるクロック生成の制御情報を前記第1の制御手段に非同期転送する、第2の制御手段と、
を備えることを特徴とする情報処理装置。
a plurality of generating means each generating a clock to be supplied to a corresponding functional block among the plurality of functional blocks;
A first control for controlling clock generation by a first group of generation means composed of one or more generation means among the plurality of generation means, and operating using a clock common to the first group. means and
a second control means, which is one of the plurality of functional blocks and asynchronously transfers control information for clock generation by the generation means of the first group to the first control means;
An information processing device comprising:
前記第1の制御手段は、前記第1のグループに含まれる前記1以上の生成手段のそれぞれに対し、前記制御情報を同じタイミングで出力することを特徴とする、請求項1に記載の情報処理装置。 2. The information processing according to claim 1, wherein said first control means outputs said control information to each of said one or more generating means included in said first group at the same timing. Device. 前記第1の制御手段は、前記第1のグループに含まれる前記1以上の生成手段のそれぞれに対し、前記制御情報を同期転送することを特徴とする、請求項2に記載の情報処理装置。 3. The information processing apparatus according to claim 2, wherein said first control means synchronously transfers said control information to each of said one or more generating means included in said first group. 前記第1の制御手段と前記第2の制御手段とはバスで接続され、前記第2の制御手段は前記バスを介して前記制御情報を前記第1の制御手段に転送することを特徴とする、請求項1から3のいずれか1項に記載の情報処理装置。 The first control means and the second control means are connected by a bus, and the second control means transfers the control information to the first control means via the bus. 4. The information processing apparatus according to any one of claims 1 to 3. 前記第2の制御手段は、アドレス信号とデータ信号とを用いるバスプロトコルを用いて、前記制御情報を前記第1の制御手段に転送することを特徴とする、請求項4に記載の情報処理装置。 5. The information processing apparatus according to claim 4, wherein said second control means transfers said control information to said first control means using a bus protocol using address signals and data signals. . 前記第1の制御手段と前記第2の制御手段とは、さらに、前記制御情報の転送を制御する信号線で接続されていることを特徴とする、請求項4又は5に記載の情報処理装置。 6. The information processing apparatus according to claim 4, wherein said first control means and said second control means are further connected by a signal line for controlling transfer of said control information. . 前記第2の制御手段は、さらに、前記制御情報の取得を要求する信号を前記第1の制御手段に送ることを特徴とする、請求項4から6のいずれか1項に記載の情報処理装置。 7. The information processing apparatus according to claim 4, wherein said second control means further sends a signal requesting acquisition of said control information to said first control means. . 前記第1の制御手段は、前記制御情報を取得したことを通知する信号を前記第2の制御手段に送ることを特徴とする、請求項4から6のいずれか1項に記載の情報処理装置。 7. The information processing apparatus according to claim 4, wherein said first control means sends a signal notifying that said control information has been acquired to said second control means. . 前記第2の制御手段は、前記制御情報を格納するレジスタを有しており、前記レジスタ内の制御情報は前記複数の機能ブロックのうち1つにより書き換え可能であることを特徴とする、請求項1から8のいずれか1項に記載の情報処理装置。 The second control means has a register for storing the control information, and the control information in the register can be rewritten by one of the plurality of functional blocks. 9. The information processing device according to any one of 1 to 8. 前記第1のグループの生成手段は、生成したクロックを、互いに同期関係にある複数の機能ブロックに供給することを特徴とする、請求項1から9のいずれか1項に記載の情報処理装置。 10. The information processing apparatus according to any one of claims 1 to 9, wherein said first group generating means supplies the generated clock to a plurality of functional blocks that are in a synchronous relationship with each other. 前記第1のグループの生成手段は、生成したクロックを、前記第2の制御手段に供給することを特徴とする、請求項1から10のいずれか1項に記載の情報処理装置。 11. The information processing apparatus according to claim 1, wherein said first group generation means supplies the generated clock to said second control means. 前記第2の制御手段は、前記複数の生成手段のうちの1以上の生成手段で構成される第2のグループの生成手段によってクロックを供給され、前記第2のグループは前記第1のグループとは共通のクロックを用いて動作することを特徴とする、請求項1から10のいずれか1項に記載の情報処理装置。 The second control means is clocked by a second group of generating means comprising one or more generating means of the plurality of generating means, the second group being the first group. 11. The information processing apparatus according to any one of claims 1 to 10, wherein each operates using a common clock. 前記第2の制御手段は、前記複数の生成手段のうちの1以上の生成手段で構成される第3のグループの生成手段によってクロックを供給され、前記第3のグループは前記第1のグループとは異なるクロックを用いて動作することを特徴とする、請求項1から10のいずれか1項に記載の情報処理装置。 The second control means is clocked by a third group of generating means comprising one or more generating means of the plurality of generating means, the third group being the first group. 11. The information processing apparatus according to any one of claims 1 to 10, wherein said clocks are different from each other. 前記第1のグループに含まれる前記1以上の生成手段及び前記第1の制御手段は、前記第2の制御手段よりもクロックツリーの上流のクロックを用いて動作することを特徴とする、請求項1から13のいずれか1項に記載の情報処理装置。 The one or more generation means and the first control means included in the first group operate using a clock upstream in a clock tree from the second control means. 14. The information processing device according to any one of 1 to 13. 前記複数の生成手段のうちの1以上の生成手段で構成される第2のグループの生成手段によるクロック生成を制御し、前記第2のグループと共通のクロックを用いて動作する、第3の制御手段をさらに備え、
前記第2の制御手段は、前記第2のグループの生成手段によるクロック生成の制御情報を前記第3の制御手段に非同期転送することを特徴とする、請求項1から14のいずれか1項に記載の情報処理装置。
a third control for controlling clock generation by a second group of generation means composed of one or more generation means among the plurality of generation means, and operating using a common clock with the second group; further equipped with means,
15. The apparatus according to any one of claims 1 to 14, wherein said second control means asynchronously transfers control information for clock generation by said second group of generation means to said third control means. The information processing device described.
前記制御情報は、前記第1のグループに含まれる生成手段が生成するクロックの周波数情報と、前記第1のグループに含まれる前記生成手段が生成するクロックのオン又はオフを制御する情報と、のうちの少なくとも1つであることを特徴とする、請求項1から15のいずれか1項に記載の情報処理装置。 The control information includes frequency information of the clock generated by the generating means included in the first group and information for controlling on/off of the clock generated by the generating means included in the first group. 16. The information processing apparatus according to any one of claims 1 to 15, wherein the information processing apparatus is at least one of: 前記第1の制御手段は、前記第1のグループの生成手段の近傍に配置されていることを特徴とする、請求項1から16のいずれか1項に記載の情報処理装置。 17. The information processing apparatus according to any one of claims 1 to 16, wherein said first control means is arranged in the vicinity of said first group generating means.
JP2019080469A 2019-04-19 2019-04-19 Information processing equipment Active JP7316083B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019080469A JP7316083B2 (en) 2019-04-19 2019-04-19 Information processing equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019080469A JP7316083B2 (en) 2019-04-19 2019-04-19 Information processing equipment

Publications (2)

Publication Number Publication Date
JP2020177538A JP2020177538A (en) 2020-10-29
JP7316083B2 true JP7316083B2 (en) 2023-07-27

Family

ID=72937354

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019080469A Active JP7316083B2 (en) 2019-04-19 2019-04-19 Information processing equipment

Country Status (1)

Country Link
JP (1) JP7316083B2 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003108260A (en) 2001-09-28 2003-04-11 Hitachi Ltd Information processing apparatus and information processing apparatus control method
JP2005050030A (en) 2003-07-31 2005-02-24 Fujitsu Ltd Semiconductor integrated circuit device, clock control method, and data transfer control method
WO2010050098A1 (en) 2008-10-29 2010-05-06 日本電気株式会社 Clock division circuit, clock distribution circuit, clock division method, and clock distribution method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003108260A (en) 2001-09-28 2003-04-11 Hitachi Ltd Information processing apparatus and information processing apparatus control method
JP2005050030A (en) 2003-07-31 2005-02-24 Fujitsu Ltd Semiconductor integrated circuit device, clock control method, and data transfer control method
WO2010050098A1 (en) 2008-10-29 2010-05-06 日本電気株式会社 Clock division circuit, clock distribution circuit, clock division method, and clock distribution method

Also Published As

Publication number Publication date
JP2020177538A (en) 2020-10-29

Similar Documents

Publication Publication Date Title
US10007293B2 (en) Clock distribution network for multi-frequency multi-processor systems
Muttersbach et al. Practical design of globally-asynchronous locally-synchronous systems
CN102939591B (en) System and method for lockstep synchronization
US8375239B2 (en) Clock control signal generation circuit, clock selector, and data processing device
US5317601A (en) Clock distribution system for an integrated circuit device
US6424688B1 (en) Method to transfer data in a system with multiple clock domains using clock skipping techniques
US10411910B2 (en) Distributed control synchronized ring network architecture
US7366938B2 (en) Reset in a system-on-chip circuit
CN111143122A (en) Reliable exchange chip reset structure and reset method thereof
CN111949069A (en) Circuit for asynchronous data transfer
US20100315134A1 (en) Systems and methods for multi-lane communication busses
JP7316083B2 (en) Information processing equipment
TW201710823A (en) Clock management circuitry, system on chip and method of clock management
JP7418159B2 (en) information processing equipment
JP2025518597A (en) FSM-Based Clock Switching of Asynchronous Clocks
JP2004326222A (en) Data processing system
CN223193306U (en) Clock domain spanning synchronous circuits and electronic systems
JP2000353939A (en) Clock signal synchronous flip flop circuit
US7528642B2 (en) Semiconductor integrated circuit device and method of outputting signals on semiconductor integrated circuit
JP2004094776A (en) Semiconductor integrated circuit
JP3854021B2 (en) Computer chipset for computer motherboard referring to various clock rates
JP3709355B2 (en) Clock synchronization system and method
CN121979362A (en) Method, device and interface circuit for parallel output of multiple paths of serial data
JPH11345053A (en) Information processing device
JP2003168966A (en) Semiconductor integrated circuit and method for designing it

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20210103

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210113

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220414

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230202

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230224

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230421

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230616

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230714

R151 Written notification of patent or utility model registration

Ref document number: 7316083

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151