JP5304510B2 - Arbitration device, bus access arbitration program, and bus access arbitration method - Google Patents
Arbitration device, bus access arbitration program, and bus access arbitration method Download PDFInfo
- Publication number
- JP5304510B2 JP5304510B2 JP2009172393A JP2009172393A JP5304510B2 JP 5304510 B2 JP5304510 B2 JP 5304510B2 JP 2009172393 A JP2009172393 A JP 2009172393A JP 2009172393 A JP2009172393 A JP 2009172393A JP 5304510 B2 JP5304510 B2 JP 5304510B2
- Authority
- JP
- Japan
- Prior art keywords
- arithmetic processing
- arbitration
- shift value
- phase shift
- bus
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Bus Control (AREA)
Abstract
Description
本発明は、コンピュータなどのバスアクセス調停装置、バスアクセス調停プログラムおよびバスアクセス調停方法に関する。 The present invention relates to a bus access arbitration device such as a computer, a bus access arbitration program, and a bus access arbitration method.
従来、共通のバスに接続される装置によって当該共通のバスへのアクセスが行われる場合には、複数の装置が同時に動作することを防止して、データの衝突を回避するためにバスアクセス調停装置(以降、「調停装置」と呼ぶ)が利用される。なお、共通のバスに接続される装置としては、例えば、DSP(Digital Signal Processor)、FPGA(Field Programmable Gate Array)、PLD(Programmable Logic Device)、CPU(Central Processing Unit)またはMPU(Micro Processing Unit)などの演算処理装置がある。 Conventionally, when a device connected to a common bus accesses the common bus, a bus access arbitration device is used to prevent a plurality of devices from operating simultaneously and to avoid data collision. (Hereinafter referred to as “arbiter”) is used. The devices connected to the common bus include, for example, a DSP (Digital Signal Processor), an FPGA (Field Programmable Gate Array), a PLD (Programmable Logic Device), a CPU (Central Processing Unit), or an MPU (Micro Processing Unit). There are arithmetic processing devices.
ここで、図9を用いて、調停装置を含むシステムの構成の一例について説明する。図9は、従来技術に係る調停装置を含むシステムの構成例を示す図である。なお、図9では、共通のバスに接続される装置の例としてDSPを挙げて説明する。また、図9では、DSP1〜DSP12の12個のDSPが共通のバスへアクセスする場合を説明する。 Here, an example of a system configuration including the arbitrating device will be described with reference to FIG. FIG. 9 is a diagram illustrating a configuration example of a system including an arbitration device according to the related art. In FIG. 9, a DSP is described as an example of a device connected to a common bus. FIG. 9 illustrates a case where twelve DSPs, DSP1 to DSP12, access a common bus.
例えば、図9に示すように、調停装置を含むシステムは、調停装置と、発振器と、DSP1〜DSP12と、メモリコントローラと、記憶装置とを有する。このうち、記憶装置は、例えば、データの読み書きや消去などが可能であるフラッシュメモリ(Flash Memory)である。 For example, as illustrated in FIG. 9, a system including an arbitration device includes an arbitration device, an oscillator, DSP1 to DSP12, a memory controller, and a storage device. Among these, the storage device is, for example, a flash memory capable of reading and writing data and erasing data.
また、発振器は、例えば、メモリコントローラおよびDSP1〜DSP12それぞれを動作させるためのクロック(CLK1)を出力する。また、DSP1〜DSP12は、例えば、共通のバスへアクセスするために、バス権獲得要求信号(Req‐1〜Req‐c)を調停装置に対して送出する。そして、調停装置は、例えば、複数のDSPからバス権獲得要求信号が同時に入力された場合に、ラウンドロビン・スケジューリングなどによって順番にバス権獲得許可応答信号(Gnt‐1〜Gnt‐c)を該当するDSPに送出する。 The oscillator outputs, for example, a clock (CLK1) for operating the memory controller and DSP1 to DSP12. Further, the DSP1 to DSP12, for example, send bus right acquisition request signals (Req-1 to Req-c) to the arbitration device in order to access a common bus. Then, for example, when a bus right acquisition request signal is simultaneously input from a plurality of DSPs, the arbitration device applies the bus right acquisition permission response signals (Gnt-1 to Gnt-c) in order by round robin scheduling or the like. To the DSP.
一方、バス権獲得許可応答信号を受信したDSP1〜DSP12は、共通のバスへアクセスしてメモリコントローラにデータを転送する。そして、メモリコントローラは、DSP1〜DSP12によって転送されたデータを記憶装置に格納する。 On the other hand, the DSP1 to DSP12 that have received the bus right acquisition permission response signal access the common bus and transfer data to the memory controller. Then, the memory controller stores the data transferred by the DSP1 to DSP12 in the storage device.
また、最近では、複数のバスマスタによって共有メモリにアクセスされる際に、メモリコントローラ内部のバッファにライトデータを保持させつつアービトレーションを制御することで、バスアクセスの待ち時間を短縮する技術がある。 Recently, when a shared memory is accessed by a plurality of bus masters, there is a technique for shortening the bus access waiting time by controlling arbitration while holding write data in a buffer in the memory controller.
しかしながら、上述した従来技術では、共通のバスへのデータ転送に要する時間が増大するという課題がある。 However, the above-described conventional technique has a problem that the time required for data transfer to a common bus increases.
ここで、図10を用いて、DSPによる共通のバスへのアクセス動作タイミングを説明する。図10は、従来技術に係るDSPによる共通のバスへのアクセス動作タイミングの例を説明する図である。なお、図10では、DSP1〜DSP3による共通のバスへのアクセス動作タイミングについて説明する。 Here, the access operation timing to the common bus by the DSP will be described with reference to FIG. FIG. 10 is a diagram for explaining an example of an access operation timing to a common bus by a DSP according to the related art. In FIG. 10, the access operation timing to the common bus by the DSP1 to DSP3 will be described.
例えば、図10に示すように、DSP1〜DSP3は、発振器によるクロック(CLK1)に基づき、バス権獲得要求信号(Req‐a〜Req‐c)を調停装置に対して送出する。そして、調停装置は、ラウンドロビン・スケジューリングなどによってDSP1、DSP2、DSP3の順番でバス獲得許可応答信号(Gnt‐a〜Gnt‐c)を該当するDSPに送出する。 For example, as shown in FIG. 10, DSP1 to DSP3 send bus right acquisition request signals (Req-a to Req-c) to the arbitration device based on the clock (CLK1) by the oscillator. Then, the arbitrating device sends a bus acquisition permission response signal (Gnt-a to Gnt-c) to the corresponding DSP in the order of DSP1, DSP2, DSP3 by round robin scheduling or the like.
続いて、バス権獲得許可応答信号を最初に受信したDSP1は、共通のバスへアクセスするとともに、DSP1のデータであるD1、D2およびD3をメモリコントローラに転送する。その後、DSP2は、バス権獲得許可応答信号を受信して、共通のバスへアクセスするとともに、DSP2のデータであるD1、D2およびD3をメモリコントローラに転送する。同様に、DSP3は、バス権獲得許可応答信号を受信して、共通のバスへアクセスするとともに、DSP3のデータであるD1、D2およびD3をメモリコントローラに転送する。
Subsequently, the
ところが、DSP1〜DSP3は、クロックに同期して共通のバスへアクセスし、メモリコントローラにデータを転送するものの、共通のバスへのアクセスの切替時には、信号をドライブする素子の出力遅延と、基板上の配線遅延とが発生する。加えて、連続して切替を行なう場合には、信号衝突、すなわち共通のバスに同じタイミングでデータを転送することによる素子破壊が発生し得るため、1クロック分の間隔を設けることが望ましい。 However, DSP1 to DSP3 access the common bus in synchronization with the clock and transfer data to the memory controller. However, when switching access to the common bus, the output delay of the element that drives the signal, Wiring delay occurs. In addition, when switching is performed continuously, it is desirable to provide an interval of one clock because a signal collision, that is, element destruction caused by transferring data to the common bus at the same timing may occur.
次に、図11を用いて、出力遅延および配線遅延を含む遅延時間と、信号衝突を防止するために設ける1クロックの間隔(ロス時間)について説明する。図11は、従来技術に係る遅延時間とロス時間との例を説明する図である。詳細には、図11は、図10に示したDSP1とDSP2との切替時、すなわち図10において四角で囲った部分の拡大図である。
Next, a delay time including an output delay and a wiring delay and an interval (loss time) of one clock provided to prevent signal collision will be described with reference to FIG. FIG. 11 is a diagram for explaining an example of delay time and loss time according to the prior art. Specifically, FIG. 11 is an enlarged view of a portion surrounded by a square in FIG. 10 when switching between the
例えば、図11に示すように、DSP1とDSP2との切替時には、出力遅延および配線遅延などを含む「遅延時間」が発生する。また、この遅延時間が発生するために、連続して切替を行なう場合には、信号衝突が発生し得るため1クロック分の間隔、すなわち図11に示す「ロス時間」を設けることとなる。 For example, as shown in FIG. 11, a “delay time” including an output delay and a wiring delay occurs when switching between DSP1 and DSP2. In addition, since the delay time occurs, when switching is performed continuously, a signal collision may occur, so an interval of one clock, that is, a “loss time” shown in FIG. 11 is provided.
要するに、図10および図11では、D1〜D3のデータ転送に要する3クロックごとに、1クロックのロス時間が付与されることとなるため、上記の遅延時間とともに、4クロックのうち25パーセントほどのロス時間が発生することとなる。 In short, in FIG. 10 and FIG. 11, a loss time of 1 clock is given for every 3 clocks required for data transfer of D1 to D3. Therefore, together with the above delay time, about 25% of the 4 clocks. Loss time will occur.
ところで、バスでの信号衝突を回避するために、配線で遅延させることが考えられる。そこで、図12を用いて、配線遅延で調整する場合を説明する。図12は、従来技術に係るバスでの信号衝突を回避するために配線遅延で調整する例を説明する図である。なお、図12では、DSP1からDSP2に切り替える場合を説明する。また、DSP1とDSP2とのデータ線は、物理的に同一の配線であるが、図12では、説明の便宜上、DSP1とDSP2とのデータ線を分けて説明する。 By the way, in order to avoid a signal collision in the bus, it is conceivable to delay by wiring. Therefore, a case where adjustment is performed by wiring delay will be described with reference to FIG. FIG. 12 is a diagram for explaining an example in which adjustment is performed by wiring delay in order to avoid a signal collision in a bus according to the prior art. In addition, FIG. 12 demonstrates the case where it switches from DSP1 to DSP2. The data lines of DSP1 and DSP2 are physically the same wiring, but in FIG. 12, the data lines of DSP1 and DSP2 will be described separately for convenience of explanation.
例えば、図12に示すように、DSP1のデータ線バッファがゲートを閉じてからデータ転送終了までに、1.5ns(nano‐second)〜6.5nsの時間を要する(図12のA参照)。一方、DSP2のデータ線バッファがゲートを空けてからデータ転送を開始するまでに1.5ns〜7.6nsの時間を要する(図12のB参照)。そして、AとBとにおいては、重なる時間が発生し、この重なる時間がバスでの信号衝突の時間となる。
For example, as shown in FIG. 12, it takes 1.5 ns (nano-second) to 6.5 ns from the time when the data line buffer of the
また、図12の下側に示すように、例えば、DSP2のゲート信号を配線で遅延させる場合には、DSP1のデータ転送終了時と、DSP2のデータ転送開始時とにおける信号衝突を回避することができる。しかしながら、DSP2のデータ転送終了時には、信号衝突が発生してしまう。 Also, as shown in the lower side of FIG. 12, for example, when the gate signal of DSP2 is delayed by wiring, it is possible to avoid signal collision at the end of data transfer of DSP1 and at the start of data transfer of DSP2. it can. However, a signal collision occurs at the end of the DSP2 data transfer.
要するに、DSPなどの装置は、共通のクロックで動作することにより、バスの切替に要する1クロック内にデータ衝突が発生し得る。このため、データ衝突を防止するためには、次のクロックイベントまで時間を空けることとなる。この結果、上述した従来技術では、共通のバスへのデータ転送に要する時間が増大する。 In short, a device such as a DSP may operate with a common clock, and data collision may occur within one clock required for bus switching. For this reason, in order to prevent data collision, time is taken until the next clock event. As a result, in the above-described conventional technology, the time required for data transfer to the common bus increases.
そこで、本願に開示する技術は、上記に鑑みてなされたものであって、共通のバスへのデータ転送の転送効率を向上させることが可能である調停装置、バスアクセス調停プログラムおよびバスアクセス調停方法を提供することを目的とする。 Therefore, the technology disclosed in the present application has been made in view of the above, and an arbitration device, a bus access arbitration program, and a bus access arbitration method capable of improving the transfer efficiency of data transfer to a common bus The purpose is to provide.
上述した課題を解決し、目的を達成するため、本願に開示する調停装置は、バスへのアクセス件を付与する複数の演算処理装置ごとに、演算処理装置の出力遅延である遅延時間と、演算処理装置が出力したデータを素子が確定するまでの保持時間との合計である切替時間を保持する切替時間保持部を有する。また、調停装置は、切替時間に基づいて、複数の演算処理装置それぞれの位相シフト値を求める位相シフト値導出部を有する。また、調停装置は、発振器によって送出された基準同期信号と、位相シフト値とを用いて、複数の演算処理装置ごとに異なる同期信号を生成して出力する同期信号出力部を有する。 In order to solve the above-described problems and achieve the object, the arbitration device disclosed in the present application includes a delay time, which is an output delay of the arithmetic processing device, for each of a plurality of arithmetic processing devices that give access to the bus, There is a switching time holding unit that holds a switching time that is a sum of the data output from the processing device and the holding time until the element is determined . The arbitrating device also includes a phase shift value deriving unit that obtains a phase shift value of each of the plurality of arithmetic processing devices based on the switching time. In addition, the arbitration device includes a synchronization signal output unit that generates and outputs a different synchronization signal for each of the plurality of arithmetic processing devices using the reference synchronization signal sent by the oscillator and the phase shift value.
本願に開示する調停装置、バスアクセス調停プログラムおよびバスアクセス調停方法の一つの様態によれば、共通のバスへのデータ転送の転送効率を向上させることができるという効果を奏する。 According to one aspect of the arbitration device, the bus access arbitration program, and the bus access arbitration method disclosed in the present application, it is possible to improve the transfer efficiency of data transfer to a common bus.
以下に添付図面を参照して、本願に開示する調停装置、バスアクセス調停プログラムおよびバスアクセス調停方法の実施例を説明する。なお、以下の実施例により本発明が限定されるものではない。 Embodiments of an arbitration device, a bus access arbitration program, and a bus access arbitration method disclosed in the present application will be described below with reference to the accompanying drawings. In addition, this invention is not limited by the following examples.
[システム構成]
最初に、図1を用いて、実施例1に係る調停装置を含むシステムの構成について説明する。図1は、実施例1に係る調停装置を含むシステムの構成例を示す図である。なお、図1では、共通のバスに接続される装置の例としてDSPを挙げ、DSP1〜DSP12の12個のDSPが共通のバスへアクセスする場合を説明する。
[System configuration]
First, the configuration of a system including the arbitrating device according to the first embodiment will be described with reference to FIG. FIG. 1 is a diagram illustrating a configuration example of a system including an arbitration device according to the first embodiment. In FIG. 1, a DSP is given as an example of a device connected to a common bus, and a case where 12 DSPs DSP1 to DSP12 access a common bus will be described.
例えば、図1に示すように、調停装置を含むシステムは、調停装置と、発振器と、DSP1〜DSP12と、メモリコントローラと、記憶装置とを有する。このうち、記憶装置は、例えば、データの読み書きや消去などが可能であるフラッシュメモリである。 For example, as illustrated in FIG. 1, a system including an arbitration device includes an arbitration device, an oscillator, DSP1 to DSP12, a memory controller, and a storage device. Among these, the storage device is, for example, a flash memory capable of reading / writing and erasing data.
また、発振器は、例えば、メモリコントローラおよびDSP1〜DSP12それぞれを動作させるためのクロックの基準となる基準クロックを調停装置に送出する。また、DSP1〜DSP12は、例えば、共通のバスへアクセスするために、バス権獲得要求信号(Req‐1〜Req‐c)を調停装置に対して送出する。 Further, the oscillator sends, for example, a reference clock serving as a clock reference for operating the memory controller and the DSP1 to DSP12 to the arbitration device. Further, the DSP1 to DSP12, for example, send bus right acquisition request signals (Req-1 to Req-c) to the arbitration device in order to access a common bus.
そして、調停装置は、例えば、複数のDSPからバス権獲得要求信号が同時に入力された場合に、各DSPに送出するクロック(CLK1〜CLK12)に同期してバス権獲得許可応答信号(Gnt‐1〜Gnt‐c)を該当するDSPに送出する。 Then, for example, when a bus right acquisition request signal is simultaneously input from a plurality of DSPs, the arbitration device synchronizes with the clock (CLK1 to CLK12) sent to each DSP, and acquires a bus right acquisition permission response signal (Gnt-1). -Gnt-c) to the corresponding DSP.
調停装置から各DSPに送出されるクロックは、発振器から送出された基準クロックと同一の位相、または当該基準クロックから所定時間ずつシフトされた位相で送出される。具体的に説明すると、調停装置は、DSP1〜DSP12間における共通のバスへのアクセス権の切替時に要する切替時間を位相値レジスタに保持している。 The clock transmitted from the arbitration device to each DSP is transmitted at the same phase as the reference clock transmitted from the oscillator or at a phase shifted by a predetermined time from the reference clock. More specifically, the arbitrating device holds the switching time required for switching the access right to the common bus among the DSP1 to DSP12 in the phase value register.
この切替時間は、例えば、DSP1とDSP2とのアクセス権の切替時に、DSP1のゲートを閉じてからDSP2のゲートを開けるまでに最低限要するデータ確定時間である。そして、調停装置は、切替時間に基づいて、DSP1〜DSP12それぞれの位相シフト値を求める。 This switching time is, for example, the minimum data determination time required from closing the DSP1 gate to opening the DSP2 gate when switching access rights between the DSP1 and the DSP2. Then, the arbitrating device obtains the phase shift values of the DSP1 to DSP12 based on the switching time.
続いて、調停装置は、発振器から送出された基準クロックと、求められた位相シフト値とを用いて、DSP1〜DSP12それぞれで異なるクロック(CLK1〜CLK12)を生成して該当するDSPに出力する。なお、位相シフト値の導出と各DSPで異なるクロックの生成およびクロックの出力とは、位相シフターによって実行される。 Subsequently, the arbitrating device generates different clocks (CLK1 to CLK12) in the DSP1 to DSP12 by using the reference clock transmitted from the oscillator and the obtained phase shift value, and outputs them to the corresponding DSP. It should be noted that the derivation of the phase shift value and the generation and output of a clock that are different for each DSP are executed by a phase shifter.
一方、バス獲得応答信号を受信したDSP1〜DSP12は、共通のバスへアクセスしてメモリコントローラにデータを転送する。そして、メモリコントローラは、DSP1〜DSP12によって転送されたデータを記憶装置に格納する。 On the other hand, the DSP1 to DSP12 having received the bus acquisition response signal access the common bus and transfer data to the memory controller. Then, the memory controller stores the data transferred by the DSP1 to DSP12 in the storage device.
つまり、調停装置は、DSP間におけるアクセス権の切替時に要する最低限の切替時間を保持し、切替時間に基づいて求められたDSPそれぞれの位相シフト値と、発振器によって送出された基準クロックとを用いて、DSPでそれぞれ異なるクロックを生成する。そして、調停装置は、生成されたクロックを該当するDSPに出力する。これらの結果、調停装置は、各DSPが共通のクロックに従って動作することによりDSP間におけるアクセス権の切替時にデータ衝突が発生する従来技術と比較して、DSPによる共通のバスへのデータ転送の転送効率を向上させることができる。 In other words, the arbitration device holds the minimum switching time required when switching access rights between DSPs, and uses the phase shift value of each DSP obtained based on the switching time and the reference clock sent by the oscillator. The DSP generates different clocks. Then, the arbitrating device outputs the generated clock to the corresponding DSP. As a result, the arbitration device transfers data transfer to the common bus by the DSP as compared with the prior art in which data collision occurs when switching access rights between DSPs because each DSP operates according to a common clock. Efficiency can be improved.
[調停装置の構成]
次に、図2を用いて、実施例1に係る調停装置の構成を説明する。図2は、実施例1に係る調停装置の構成例を示す図である。
[Configuration of arbitration device]
Next, the configuration of the arbitration device according to the first embodiment will be described with reference to FIG. FIG. 2 is a diagram illustrating a configuration example of the arbitrating device according to the first embodiment.
例えば、図2に示すように、調停装置100は、8bitレジスタ111と、スレーブ情報テーブル112と、状態監視部121と、S/P変換(Serial/Parallel Conversion)部122と、スレーブ情報処理部123と、8bit足し算回路124と、PLL位相シフター125とを有する。そして、調停装置100は、複数の演算処理装置による共通のバスへのアクセス権の要求に基づいて、共通のバスへのアクセス権を該当する演算処理装置に付与する。また、調停装置は、発振器によって送出される基準となる基準クロックを受信する。
For example, as illustrated in FIG. 2, the arbitrating
8bitレジスタ111は、例えば、図3Aに示すように、演算処理装置としてのDSP1〜DSPn(nは、自然数)間における共通のバスへのアクセス権の切替時に要する切替時間(Hold時間)を保持する。例えば、8bitレジスタ111は、DSP1〜DSPnの切替時間(Hold時間)を、1tap=100ps(pico second)の粒度で割った分解値を8bit(2進数)で保持する。
For example, as illustrated in FIG. 3A, the 8-
詳細には、8bitレジスタ111は、DSP1のHold時間=1.0nsから、1000ps÷100ps/tap=10tap(10進数)が求められ、求められた10tapを2進数に変換された「00001010」を保持する。このtapとは、位相シフトが可能な最小単位である。なお、8bitレジスタ111に保持される値は、CPU(Central Processing Unit)制御でソフト設定される。CPU制御では、例えば、「デバイスの遅延時間」+「基板の実装情報(パターン長や基板素材から求められる遅延時間)」により決定される。
Specifically, the 8-
8bitレジスタ111に保持される情報の例としては、DSP1における切替時間「Hold=1.0ns」に対する8bitパラメタ「00001010」となる。なお、図3Aは、8bitレジスタ111に保持される情報の例を示す図である。
An example of information held in the 8-
また、8bitレジスタ111に保持される切替時間(Hold時間)には、机上計算で求められる配線遅延を含む。この配線遅延は、例えば、プリント基板材質がプリント基板の基材の規格であるFR4の場合に、「1mm=7ps」として求められる。また、演算処理装置間での切替においては、遅延の最大値である256tapで動作することは少ないため、代表的な値としてのtyp値を設定すれば良い。
In addition, the switching time (hold time) held in the 8-
スレーブ情報テーブル112は、例えば、図3Bに示すように、調停装置100のスレーブ側である温度センサなどからの通知によって得られるTj(ジャンクション温度)と、切替時間(Hold時間)とを対応付けて保持する。詳細には、スレーブ情報テーブル112は、各温度について2進数(8bit)に変換された値を保持する。なお、スレーブ側とは、調停装置100や当該調停装置100を含むシステムなどとは別に動作する外部装置のことである。
For example, as shown in FIG. 3B, the slave information table 112 associates Tj (junction temperature) obtained by notification from a temperature sensor or the like on the slave side of the
スレーブ情報テーブル112に保持される情報の例としては、Tj(ジャンクション温度)=61℃〜65℃と、65℃のHold「00000001」となる。なお、図3Bは、スレーブ情報テーブル112に保持される情報の例を示す図である。 Examples of information held in the slave information table 112 are Tj (junction temperature) = 61 ° C. to 65 ° C. and 65 ° C. Hold “00000001”. FIG. 3B is a diagram illustrating an example of information held in the slave information table 112.
状態監視部121は、例えば、DSP1〜DSPnそれぞれの外的環境である温度情報を取得して、S/P変換部122に通知する。詳細には、状態監視部121は、スレーブ側である温度センサによるALERTと、I2C(Inter‐Integrated Circuit)バス経由でスレーブ側からの温度情報とを取得する。状態監視部121によって取得される温度情報は、8bitのシリアルデータである。
For example, the
このとき、状態監視部121は、DSP1〜DSPnそれぞれの温度情報を常時取得せずに、温度センサによってALERT検出された場合に取得することで、DSP1〜DSPnによる処理に影響のない状態であるにもかかわらず温度情報を取得することを防止する。
At this time, the
また、ALERTとは、温度センサに予め設定された閾値であり、例えば、本実施例では、60℃に設定されていることとする。従って、温度センサは、予め設定された閾値である60℃を超えると、状態監視部121に対してALERT信号を送信し、60℃より下がると、ALERT信号をネゲートする。
Further, ALERT is a threshold value set in advance in the temperature sensor. For example, in this embodiment, it is set to 60 ° C. Therefore, the temperature sensor transmits an ALERT signal to the
S/P変換部122は、例えば、状態監視部121によって通知された8bitのシリアルデータを、8bitのパラレルデータに変換してスレーブ情報処理部123に通知する。
For example, the S /
スレーブ情報処理部123は、例えば、S/P変換部122によって通知されたスレーブ情報としての温度情報をスレーブ情報テーブル112に格納する。また、スレーブ情報処理部123は、例えば、スレーブ情報テーブル112に格納された8bitの温度情報を8bit足し算回路124に通知する。スレーブ情報処理部123によって8bit足し算回路123に通知される情報の例としては、DSP1の動作時に温度センサによって62℃がセンシングされた場合に、65℃のHold=1tap、すなわち「0000001」となる。
For example, the slave
8bit足し算回路124は、例えば、8bitレジスタ111に保持されるDSP1のHold時間の2進数である「00001010」と、スレーブ情報処理部123によって通知されたDSP1の65℃のHold「00000001」とを取得する。そして、8bit足し算回路124は、これらの値「00001010」および「00000001」を足し合わせて、DSP1の位相シフト値「00001011」を求めて、PLL位相シフター125に通知する。すなわち、DSP1に対する設定値としては、10tap+1tap=11tapとなる。
The 8-
PLL位相シフター125は、例えば、発振器によって送出された基準クロックと、8bit足し算回路124によって求められたDSP1の位相シフト値「00001011」とに基づいて、DSP1に対するクロックを生成して、DSP1に対して出力する。
For example, the
ここで、図4を用いて、PLL位相シフター125の詳細な回路図を説明する。図4は、実施例1に係るPLL位相シフター125の詳細な回路図の例を示す図である。
Here, a detailed circuit diagram of the
例えば、図4に示すように、PLL位相シフター125は、8bitに対応する256個分のDelay素子と、利用するDelay素子を選択するSelectorとを有する。このうち、各Delay素子は、例えば、1tap(100ps)だけ信号を遅延させる役割を担う。
For example, as illustrated in FIG. 4, the
具体的に例を挙げると、PLL位相シフター125は、DSP1の位相シフト値が「00001011」であることにより、Selectorが11番目のDelay素子を選択する。そして、PLL位相シフター125は、基準クロックから11tap(1.1nsec)分遅延させたクロックをDSP1に対して出力する。
To give a specific example, the
要するに、調停装置100は、予め保持される切替時間としての固定パラメタと、外部環境により変動する温度情報としての可変パラメタとに基づき、DSPに対するバス権獲得許可応答信号を返送すべき基準クロックを何tapシフトするかの値を8bit単位で処理する。なお、上記ではDSP1に対するクロックを出力する例を説明したが、調停装置100は、DSP1とは異なるDSP2やDSP3などについても同様の処理を実施して、DSPそれぞれに対してクロックを出力する。
In short, the arbitrating
[動作タイミング]
次に、図5を用いて、DSPによる共通のバスへのアクセス動作タイミングを説明する。図5は、実施例1に係るDSPによる共通のバスへのアクセス動作タイミングの例を説明する図である。なお、図5では、DSP1〜DSP3による共通のバスへのアクセス動作タイミングについて説明する。
[Operation timing]
Next, the access operation timing to the common bus by the DSP will be described with reference to FIG. FIG. 5 is a diagram for explaining an example of an access operation timing to the common bus by the DSP according to the first embodiment. In FIG. 5, the access operation timing to the common bus by the DSP1 to DSP3 will be described.
例えば、図5に示すように、DSP1〜DSP3は、それぞれ異なるクロックCLK1‐a、CLK1‐bおよびCLK1‐cによって動作する。これらのクロックは、上述したように、各DSP間における切替時に要する最低限の時間や各DSPの外部環境に起因する温度情報などに基づき、基準クロックからシフトされたクロックである。 For example, as shown in FIG. 5, DSP1 to DSP3 are operated by different clocks CLK1-a, CLK1-b, and CLK1-c, respectively. As described above, these clocks are clocks shifted from the reference clock based on the minimum time required for switching between the DSPs and the temperature information caused by the external environment of each DSP.
そして、DSP1〜DSP3によるバス権獲得要求信号(Req‐a〜Req‐c)が送出された場合には、DSP1〜DSP3に対応する各クロックと同期したバス権獲得許可応答信号(Gnt‐a〜Gnt‐c)返送のタイミングでDSP1から順にバスへアクセスする。図5では、DSP1によるバスのアクセス時に転送するデータD1、D2およびD3の転送終了後に、DSP2によってデータD1、D2およびD3が転送され、DSP2によるデータ転送終了後に、DSP3によってデータD1、D2およびD3が転送される例を示している。
When the bus right acquisition request signals (Req-a to Req-c) from the DSP1 to DSP3 are transmitted, the bus right acquisition permission response signals (Gnt-a to ~) synchronized with the clocks corresponding to the DSP1 to DSP3. Gnt-c) Access to the bus in order from
次に、図6を用いて、DSP間における切替時の動作タイミングの詳細を説明する。図6は、実施例1に係るDSP間における切替時の動作タイミングの詳細な例を説明する図である。詳細には、図6は、図5に示したDSP1とDSP2との切替時、すなわち図5において四角で囲った部分の拡大図である。
Next, the details of the operation timing at the time of switching between DSPs will be described with reference to FIG. FIG. 6 is a diagram illustrating a detailed example of the operation timing at the time of switching between the DSPs according to the first embodiment. Specifically, FIG. 6 is an enlarged view of a portion surrounded by a square in FIG. 5 when switching between the
例えば、図6に示すように、DSP1とDSP2との切替時には、出力遅延などである「遅延時間」と、素子がデータを確定するために要する「Hold時間」との直後に、切替先であるDSP2のクロックのシフトが行なわれる。この結果、図6に示すように、DSP1とDSP2との切替で1クロック分の空きを要する従来のDSP2の転送データの時点から「ロス時間」分を削減することができる。
For example, as shown in FIG. 6, at the time of switching between DSP1 and
また、「遅延時間」と「Hold時間」との合計時間については、8bitレジスタ111の設定によって変更が可能である。このため、上記のDSPなどのデバイスやデバイスの動作速度が変更された場合であっても、柔軟に対応することが可能である。
The total time of “delay time” and “hold time” can be changed by setting the 8-
要するに、デバイス間におけるバスへのアクセス権の切替時のデータ間隔は、「Hold時間」のみとなるため、切替時の遅延量を最小限に抑えることができる。また、データ転送速度は、3クロックの転送時に、1クロックの空きを要する従来技術と比較して25パーセントほどの向上が見込めることとなる。 In short, since the data interval at the time of switching the access right to the bus between devices is only “Hold time”, the delay amount at the time of switching can be minimized. In addition, the data transfer speed can be expected to be improved by about 25% as compared with the conventional technique that requires a space of one clock when transferring three clocks.
[実施例1に係る調停処理]
次に、図7を用いて、実施例1に係る調停処理の流れを説明する。図7は、実施例1に係る調停処理の流れの例を説明するフローチャートである。
[Arbitration processing according to embodiment 1]
Next, the flow of the arbitration process according to the first embodiment will be described with reference to FIG. FIG. 7 is a flowchart illustrating an example of the flow of arbitration processing according to the first embodiment.
例えば、図7に示すように、調停装置100は、スレーブ側である温度センサによるアラームを受信した場合に(ステップS101肯定)、I2Cバス経由でスレーブ側からの温度情報を取得する(ステップS102)。なお、調停装置100は、温度センサによるアラームを受信していない場合に(ステップS101否定)、当該アラームの受信待ちの状態となる。
For example, as shown in FIG. 7, when the
そして、調停装置100は、取得された温度情報をシリアル/パラレル変換する(ステップS103)。続いて、調停装置100は、シリアル/パラレル変換された温度情報をスレーブ情報テーブル112に格納する(ステップS104)。
Then, the arbitrating
その後、調停装置100は、スレーブ情報テーブル112に格納された8bitの温度情報と、予め保持されるデバイスの8bitHold時間とを足し合わせて、シフトする設定値を出力する(ステップS105)。なお、調停装置100は、求められたシフト情報に基づいてPLL位相シフターによりクロックを生成し、該当するデバイスに対して出力する。
After that, the arbitrating
[実施例1による効果]
上述したように、調停装置100は、複数のデバイス間において最低限要するバス転送の切替時間を保持し、当該切替時間と、複数のデバイスでの外的環境による温度情報とに基づいて、基準クロックからシフトさせる値を求める。そして、調停装置100は、求められたシフト値に基づいて、基準クロックからずらしつつ各デバイスに送出するクロックを決定して出力する。これらの結果、調停装置100は、複数のデバイスが共通のバスへアクセスしてデータ転送を行なう場合に、共通のバスへのデータ転送の転送効率を向上させることができる。
[Effects of Example 1]
As described above, the arbitrating
さて、これまで本願に開示する調停装置およびバスアクセス調停方法の実施例について説明したが、上述した実施例以外にも種々の異なる形態にて実施されてよいものである。そこで、(1)固定パラメタのみを利用、(2)調停装置の構成、(3)プログラム、において異なる実施例を説明する。 The embodiments of the arbitration device and the bus access arbitration method disclosed in the present application have been described so far, but may be implemented in various different forms other than the above-described embodiments. Therefore, different embodiments will be described in (1) using only fixed parameters, (2) configuration of the arbitration device, and (3) program.
(1)固定パラメタのみを利用
上記実施例1では、予め保持される切替時間としての固定パラメタと、外的環境によって変動する温度情報としての変動パラメタとに基づいて各デバイスに出力するクロックを決定する場合を説明したが、固定パラメタのみを利用してクロックを決定することもできる。
(1) Using only fixed parameters In the first embodiment, a clock to be output to each device is determined based on a fixed parameter as a switching time held in advance and a variation parameter as temperature information that varies depending on the external environment. However, it is also possible to determine the clock using only fixed parameters.
例えば、調停装置は、複数のDSP間における共通のバスへのアクセス権の切替時に要する切替時間を保持し、切替時間に基づいて複数のDSPそれぞれの位相シフト値を求める。そして、調停装置は、発振器によって送出された基準クロックと、求められた位相シフト値とを用いて、複数のDSPごとに異なるクロックを生成して出力する。なお、調停装置は、温度センサによるALERTが通知されない場合には、切替時間としての固定パラメタのみを用いてクロックを決定することとなる。 For example, the arbitrating device holds a switching time required when switching access rights to a common bus among a plurality of DSPs, and obtains a phase shift value of each of the plurality of DSPs based on the switching time. Then, the arbitrating device generates and outputs a different clock for each of the plurality of DSPs using the reference clock transmitted by the oscillator and the obtained phase shift value. When the ALERT from the temperature sensor is not notified, the arbitration device determines the clock using only the fixed parameter as the switching time.
(2)調停装置の構成
また、上記文書中や図面中などで示した処理手順、制御手順、具体的名称、各種のデータやパラメタなどを含む情報(例えば、8bitレジスタ111またはスレーブ情報テーブル112に保持される情報など)については、特記する場合を除いて任意に変更することができる。
(2) Configuration of Arbitration Device In addition, information including the processing procedure, control procedure, specific name, various data and parameters shown in the document and drawings (for example, in the 8-
また、図示した各装置の各構成要素は、機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は、図示のものに限られず、その全部または一部を各種の負担や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合することができる。さらに、各装置にて行われる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、或いは、ワイヤードロジックによるハードウェアとして実現され得る。 Further, each component of each illustrated apparatus is functionally conceptual, and does not necessarily need to be physically configured as illustrated. In other words, the specific form of distribution / integration of each device is not limited to the one shown in the figure, and all or a part thereof may be functionally or physically distributed or arbitrarily distributed in arbitrary units according to various burdens or usage conditions. Can be integrated. Further, all or a part of each processing function performed in each device may be realized by a CPU and a program that is analyzed and executed by the CPU, or may be realized as hardware by wired logic.
(3)プログラム
ところで、上記実施例では、ハードウェアロジックによって各種の処理を実現する場合を説明したが、予め用意されたプログラムをコンピュータで実行することによって実現するようにしても良い。そこで、以下では、図8を用いて、上記実施例に示した調停装置100と同様の機能を有するバスアクセス調停プログラムを実行するコンピュータの一例を説明する。図8は、バスアクセス調停プログラムを実行するコンピュータの例を示す図である。
(3) Program In the above embodiment, the case where various types of processing are realized by hardware logic has been described. However, it may be realized by executing a program prepared in advance by a computer. In the following, an example of a computer that executes a bus access arbitration program having the same function as that of the
図8に示すように、調停装置100としてのコンピュータ11は、バス18で接続されるHDD13、CPU14、ROM15およびRAM16などを有する。
As shown in FIG. 8, the computer 11 as the arbitrating
ROM15には、上記実施例に示した調停装置100と同様の機能を発揮するバスアクセス調停プログラム、つまり、図8に示すように、位相シフト値導出プログラム15aと、同期信号出力プログラム15bとが、予め記憶されている。なお、これらのプログラム15a〜プログラム15bについては、図2に示した調停装置100の各構成要素と同様、適宜統合または分散しても良い。
In the
そして、CPU14がこれらのプログラム15a〜プログラム15bをROM15から読み出して実行することで、図8に示すように、プログラム15a〜プログラム15bは、位相シフト値導出プロセス14aと、同期信号出力プロセス14bとして機能するようになる。なお、プロセス14a〜プロセス14bは、図2に示した、8bit足し算回路124と、PLL位相シフター125とに対応する。
Then, when the
そして、CPU14はRAM16に記録されたデータ(例えば、バスへのアクセス権の切替時に要する切替時間や演算処理装置の温度情報など)に基づいてバスアクセス調停プログラムを実行する。
Then, the
なお、上記各プログラム15a〜プログラム15bについては、必ずしも最初からROM15に記憶させておく必要はなく、例えば、コンピュータ11に挿入されるフレキシブルディスク(FD)、CD−ROM、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」、またはコンピュータ11の内外に備えられるHDDなどの「固定用の物理媒体」、さらには公衆回線、インターネット、LAN、WANなどを介してコンピュータ11に接続される「他のコンピュータ(またはサーバ)」などに各プログラムを記憶させておき、コンピュータ11がこれから各プログラムを読み出して実行するようにしてもよい。
Note that the
100 調停装置
111 8bitレジスタ
112 スレーブ情報テーブル
121 状態監視部
122 S/P変換部
123 スレーブ情報処理部
124 8bit足し算回路
125 PLL位相シフター
100
Claims (5)
前記演算処理装置ごとに、前記演算処理装置の出力遅延である遅延時間と、前記演算処理装置が出力したデータを素子が確定するまでの保持時間との合計である切替時間を保持する切替時間保持部と、
前記切替時間保持部が保持する各演算処理装置の切替時間に基づいて、前記複数の演算処理装置それぞれの位相シフト値を求める位相シフト値導出部と、
発振器によって送出された基準同期信号と、前記位相シフト値とを用いて、前記複数の演算処理装置ごとに異なる同期信号を生成して出力する同期信号出力部と
を有することを特徴とする調停装置。 An arbitration device that grants an access right to the common bus based on a request for an access right to a common bus by a plurality of arithmetic processing units,
For each arithmetic processing unit, a switching time holding for holding a switching time that is a sum of a delay time that is an output delay of the arithmetic processing unit and a holding time until an element determines data output from the arithmetic processing unit. And
A phase shift value deriving unit for obtaining a phase shift value of each of the plurality of arithmetic processing devices based on a switching time of each arithmetic processing device held by the switching time holding unit ;
An arbitration device comprising: a synchronization signal output unit that generates and outputs a different synchronization signal for each of the plurality of arithmetic processing devices using a reference synchronization signal transmitted by an oscillator and the phase shift value .
前記演算処理装置の出力遅延である遅延時間と、前記演算処理装置が出力したデータを素子が確定するまでの保持時間との合計である切替時間に基づいて、前記複数の演算処理装置それぞれの位相シフト値を求める位相シフト値導出手順と、
発振器によって送出された基準同期信号と、前記位相シフト値とを用いて、前記複数の演算処理装置ごとに異なる同期信号を生成して出力する同期信号出力手順と
をコンピュータに実行させることを特徴とするバスアクセス調停プログラム。 A bus access arbitration program as an arbitration device that grants an access right to the common bus based on a request for access right to a common bus by a plurality of arithmetic processing units,
Based on the switching time that is the sum of the delay time that is the output delay of the arithmetic processing device and the retention time until the element determines the data output from the arithmetic processing device, the phase of each of the arithmetic processing devices A phase shift value derivation procedure for obtaining the shift value;
Using a reference synchronization signal sent by an oscillator and the phase shift value, and causing a computer to execute a synchronization signal output procedure for generating and outputting a different synchronization signal for each of the plurality of arithmetic processing units. Bus access arbitration program.
前記演算処理装置の出力遅延である遅延時間と、前記演算処理装置が出力したデータを素子が確定するまでの保持時間との合計である切替時間に基づいて、前記複数の演算処理装置それぞれの位相シフト値を求める位相シフト値導出ステップと、
発振器によって送出された基準同期信号と、前記位相シフト値とを用いて、前記複数の演算処理装置ごとに異なる同期信号を生成して出力する同期信号出力ステップと
を含んだことを特徴とするバスアクセス調停方法。 A bus access arbitration method as an arbitration device that grants an access right to the common bus based on a request for access right to a common bus by a plurality of arithmetic processing units,
Based on the switching time that is the sum of the delay time that is the output delay of the arithmetic processing device and the retention time until the element determines the data output from the arithmetic processing device, the phase of each of the arithmetic processing devices A phase shift value deriving step for obtaining a shift value;
And a synchronization signal output step for generating and outputting a different synchronization signal for each of the plurality of arithmetic processing units using the reference synchronization signal transmitted by an oscillator and the phase shift value. Access mediation method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009172393A JP5304510B2 (en) | 2009-07-23 | 2009-07-23 | Arbitration device, bus access arbitration program, and bus access arbitration method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009172393A JP5304510B2 (en) | 2009-07-23 | 2009-07-23 | Arbitration device, bus access arbitration program, and bus access arbitration method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011028448A JP2011028448A (en) | 2011-02-10 |
JP5304510B2 true JP5304510B2 (en) | 2013-10-02 |
Family
ID=43637141
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009172393A Expired - Fee Related JP5304510B2 (en) | 2009-07-23 | 2009-07-23 | Arbitration device, bus access arbitration program, and bus access arbitration method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5304510B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6651285B2 (en) * | 2014-08-08 | 2020-02-19 | 株式会社三共 | Gaming machine |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63310054A (en) * | 1987-06-11 | 1988-12-19 | Yokogawa Electric Corp | Bus arbitrating circuit |
JP3169794B2 (en) * | 1995-05-26 | 2001-05-28 | 日本電気株式会社 | Delay clock generation circuit |
-
2009
- 2009-07-23 JP JP2009172393A patent/JP5304510B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2011028448A (en) | 2011-02-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3954011B2 (en) | Method and computer system for communicating between subsystems | |
US8339869B2 (en) | Semiconductor device and data processor | |
JP2006508438A (en) | Clock synchronization circuit | |
JP4998699B2 (en) | Semiconductor device and communication control method | |
US8307236B2 (en) | Oversampling-based scheme for synchronous interface communication | |
US20120223749A1 (en) | Clock synchronization circuit and semiconductor integrated circuit | |
US8180990B2 (en) | Integrated circuit including a plurality of master circuits transmitting access requests to an external device and integrated circuit system including first and second interated circuits each including a plurality of master circuits transmitting access requests | |
JP5304510B2 (en) | Arbitration device, bus access arbitration program, and bus access arbitration method | |
JP2008041059A (en) | Multiprocessor controller and information processor | |
EP3739463B1 (en) | Circuit for asynchronous data transfer | |
KR100580179B1 (en) | Method and integrated circuit device for reducing simultaneous change output | |
JP2007048022A (en) | Asynchronous bus interface and processing method thereof | |
JP2008118179A (en) | Semiconductor integrated circuit | |
JP5489871B2 (en) | Image processing device | |
JP2004326222A (en) | Data processing system | |
JP7316083B2 (en) | Information processing equipment | |
JP2012032936A (en) | Micro computer | |
US11644861B2 (en) | Information processing apparatus including function blocks and generation units | |
JP2010140440A (en) | Bus arbitration device | |
JP2002351818A (en) | Bus control system | |
JP4620492B2 (en) | Bus interface circuit | |
JP4174213B2 (en) | Control circuit | |
CN118963957A (en) | Interrupt overflow alarm circuit, chip and electronic equipment | |
KR20040108055A (en) | a bus system having serial/parallel circuitry | |
JP2008217379A (en) | Serial transfer method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120405 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130311 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130319 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130510 |
|
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: 20130528 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130610 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |