JP6098066B2 - PCI bus control system and PCI bus control method - Google Patents

PCI bus control system and PCI bus control method Download PDF

Info

Publication number
JP6098066B2
JP6098066B2 JP2012182245A JP2012182245A JP6098066B2 JP 6098066 B2 JP6098066 B2 JP 6098066B2 JP 2012182245 A JP2012182245 A JP 2012182245A JP 2012182245 A JP2012182245 A JP 2012182245A JP 6098066 B2 JP6098066 B2 JP 6098066B2
Authority
JP
Japan
Prior art keywords
pci bus
storage unit
unit
counting
setting
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
Application number
JP2012182245A
Other languages
Japanese (ja)
Other versions
JP2014041412A5 (en
JP2014041412A (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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP2012182245A priority Critical patent/JP6098066B2/en
Publication of JP2014041412A publication Critical patent/JP2014041412A/en
Publication of JP2014041412A5 publication Critical patent/JP2014041412A5/en
Application granted granted Critical
Publication of JP6098066B2 publication Critical patent/JP6098066B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Bus Control (AREA)

Description

本発明はPCIバス(Peripheral Component Interconnect Bus)を使用しデータの授受を行うPCIバス制御システム及びPCIバスの制御方法に関する。 The present invention uses the PCI bus (Peripheral Component Interconnect Bus), a method of controlling the PCI bus control system and a PCI bus for transferring data.

PCIバスにPCIスロットを用いて複数のデバイスを接続し、マザーボード上(ホスト制御部上)のメモリをアクセスする場合、マザーボードに構築されたホストブリッジを介してメモリへのアクセスを行う。例えば、デバイスとしてプリンタ装置を使用する場合、プリンタ装置のビデオ転送回路をPCIスロットに接続し、PCIバスを介してマザーボード上のメモリをアクセスする。   When a plurality of devices are connected to the PCI bus using PCI slots and a memory on the motherboard (on the host control unit) is accessed, the memory is accessed via a host bridge built on the motherboard. For example, when a printer device is used as a device, a video transfer circuit of the printer device is connected to a PCI slot, and a memory on the motherboard is accessed via the PCI bus.

ホストブリッジはデバイス側から、例えばデータリードの要求(REQ)があると、メモリをアクセスし、要求のあったデータを用意し、送信の準備が整うまで当該デバイスに対してリトライ応答(STOP)を行い、その後のデバイス側からのデータリードの要求の際、送信準備が整うと、送信可能である旨の応答(TRDY)を行い、以後メモリからデータをデバイス側に送信する。   For example, when there is a data read request (REQ) from the device side, the host bridge accesses the memory, prepares the requested data, and sends a retry response (STOP) to the device until it is ready for transmission. When a data read request is made from the device side after that, when preparation for transmission is completed, a response (TRDY) indicating that transmission is possible is performed, and thereafter data is transmitted from the memory to the device side.

しかし、今日マザーボード側のCPUやメモリの処理が高速化し、PCIバスとの動作周波数が異なり、更に非同期である場合も少なくない。この場合、マザーボード側のCPUとPCIデバイス側の制御部は異なったクロック周波数で動作することになり、それ相応の処理時間が必要となる。   However, today, the processing of the CPU and memory on the motherboard side has been accelerated, the operating frequency with the PCI bus is different, and there are many cases where they are asynchronous. In this case, the CPU on the motherboard side and the control unit on the PCI device side operate at different clock frequencies, and corresponding processing time is required.

尚、特許文献1は、上記リトライが解消されるまでの時間を計測し、最初のアクセスから計測した時間が経過するまでは該当するPCIデバイスからの再度のアクセスをマスクすることによってアクセス効率を向上させる発明を開示する。   Note that Patent Document 1 measures the time until the retry is canceled, and improves access efficiency by masking the re-access from the corresponding PCI device until the time measured from the first access elapses. The invention to be disclosed is disclosed.

特開2000−207354号公報JP 2000-207354 A

従来のPCIバスの制御方法では、PCIデバイスから2度目以降のデータリード要求があると、マザーボード側でデータの準備が整い次第、メモリからデータがPCIデバイスに送信される。しかし、マザーボード側からデータを転送したとしても、用意されたデータ量が中途半端であると、データの転送処理が途中で中断し、却ってデータ転送を遅らせる結果となる。   In the conventional PCI bus control method, when there is a second or subsequent data read request from the PCI device, the data is transmitted from the memory to the PCI device as soon as the data is prepared on the motherboard side. However, even if data is transferred from the motherboard side, if the prepared data amount is halfway, the data transfer process is interrupted and the data transfer is delayed.

そこで、本発明はより短い時間でデータの転送を完了することができるPCIバス制御システム及びPCIバスの制御方法を提供することを目的とする。 Therefore, an object of the present invention is to provide a PCI bus control system and a PCI bus control method that can complete data transfer in a shorter time .

本発明に係るPCIバス制御システムは、演算処理部により制御される第1の記憶部にPCIバスを介して所定のデバイスがアクセスを行うPCIバス制御システムであって、前記デバイスからの前記第1の記憶部へのアクセス要求に対して前記演算処理部から許可応答が送信された後、前記第1の記憶部に記憶されたデータの前記デバイスへの転送処理が完了するまでの間に単位時間間隔で繰り返し発生するクロック信号の発生回数を第1発生回数として計数する計数部と、初期設定の際に、前記演算処理部からリトライ応答が出力された後前記デバイスが先のアクセス要求発生後再度アクセス要求を発生するまでの再アクセス要求時間を変化させるための追加的なクロック信号の発生回数を、前記計数部による計数が完了する毎に所定の回数分だけ加算または減算して、第2発生回数として設定する第1設定部と、前記第1設定部により設定された第2発生回数に対応付けて、該第2発生回数に設定されているときに前記計数部により計数された前記第1発生回数を記憶する第2の記憶部と、前記初期設定の後においては、前記第2の記憶部に記憶された第1発生回数のうちで最も値の小さい第1発生回数に対応付けられている前記第2発生回数を、前記追加的なクロック信号の発生回数として設定する第2設定部と、を備えたことを特徴とする。A PCI bus control system according to the present invention is a PCI bus control system in which a predetermined device accesses a first storage unit controlled by an arithmetic processing unit via a PCI bus, the first bus from the device. Unit time after the permission response is transmitted from the arithmetic processing unit in response to the access request to the storage unit until the transfer processing of the data stored in the first storage unit to the device is completed A counting unit that counts the number of occurrences of a clock signal repeatedly generated at an interval as a first number of occurrences, and after the retry response is output from the arithmetic processing unit at the time of initial setting, the device again after the occurrence of the previous access request The number of generations of an additional clock signal for changing the re-access request time until an access request is generated is determined every time counting by the counting unit is completed. A first setting unit that is added or subtracted by a few and set as the second occurrence number, and the second occurrence number is set in association with the second occurrence number set by the first setting unit. A second storage unit that stores the first number of occurrences counted by the counting unit, and after the initial setting, the first generation number stored in the second storage unit And a second setting unit configured to set the second generation number associated with the first generation number having a small value as the generation number of the additional clock signal.
また、本発明に係るPCIバスの制御方法は、演算処理部により制御される第1の記憶部にPCIバスを介して所定のデバイスがアクセスを行うPCIバスの制御方法であって、前記デバイスからの前記第1の記憶部へのアクセス要求に対して前記演算処理部から許可応答が送信された後、前記第1の記憶部に記憶されたデータの前記デバイスへの転送処理が完了するまでの間に単位時間間隔で繰り返し発生するクロック信号の発生回数を第1発生回数として計数する計数ステップと、初期設定の際に、前記演算処理部からリトライ応答が出力された後前記デバイスが先のアクセス要求発生後再度アクセス要求を発生するまでの再アクセス要求時間を変化させるための追加的なクロック信号の発生回数を、前記計数ステップでの計数が完了する毎に所定の回数分だけ加算または減算して、第2発生回数として設定する第1設定ステップと、前記第1設定ステップで設定された第2発生回数に対応付けて、該第2発生回数に設定されているときに前記計数ステップで計数された前記第1発生回数を第2記憶部に記憶させておく記憶ステップと、前記初期設定の後においては、前記記憶ステップで前記第2の記憶部に記憶された第1発生回数のうちで最も値の小さい第1発生回数に対応付けられている前記第2発生回数を、前記追加的なクロック信号の発生回数として設定する第2設定ステップと、を有したことを特徴とする。The PCI bus control method according to the present invention is a PCI bus control method in which a predetermined device accesses the first storage unit controlled by the arithmetic processing unit via the PCI bus, and After the permission response is transmitted from the arithmetic processing unit in response to the access request to the first storage unit, the process of transferring the data stored in the first storage unit to the device is completed. A counting step that counts the number of clock signal occurrences repeatedly generated at unit time intervals as the first generation number, and the device makes a previous access after a retry response is output from the arithmetic processing unit in the initial setting. After the request is generated, the counting in the counting step is completed for the number of additional clock signals generated for changing the re-access request time until the access request is generated again. A first setting step of adding or subtracting a predetermined number of times each time and setting the second generation number of times and the second generation number of times set in the first setting step are associated with the second generation number of times. A storage step for storing the first number of occurrences counted in the counting step in the second storage unit when set, and the second storage unit in the storage step after the initial setting. A second setting step of setting, as the generation frequency of the additional clock signal, the second generation frequency associated with the first generation frequency having the smallest value among the first generation frequency stored in It is characterized by having.

本発明によれば、より短い時間でデータの転送を完了することができる。 According to the present invention , data transfer can be completed in a shorter time.

本実施形態のPCIバスを含むシステム構成図である。1 is a system configuration diagram including a PCI bus according to an embodiment. (a)は、PCIバスを使用する通常のデータ転送処理を説明するタイムチャートである。(b)は、リトライ応答が行われた後、再度のリードアクセスの要求タイミングを+1クロック増加(遅延)させた場合のタイムチャートである。(c)は、リトライ応答が行われた後、再度のリードアクセスの要求タイミングを+2クロック増加(遅延)させた場合のタイムチャートである。(d)は、リトライ応答が行われた後、再度のリードアクセスの要求タイミングを+3クロック増加(遅延)させた場合のタイムチャートである。(e)は、リトライ応答が行われた後、再度のリードアクセスの要求タイミングを+4クロック増加(遅延)させた場合のタイムチャートである。(A) is a time chart explaining a normal data transfer process using a PCI bus. (B) is a time chart when the request timing of the read access again is increased (delayed) by +1 clock after the retry response is made. (C) is a time chart when the read access request timing is increased (delayed) by +2 clocks after a retry response is made. (D) is a time chart when the read access request timing is increased (delayed) by +3 clocks after a retry response is made. (E) is a time chart when the request timing of the read access again is increased (delayed) by +4 clocks after the retry response is made. 本実施形態の基本的な処理を説明するフローチャートである。It is a flowchart explaining the basic processing of this embodiment. 本実施形態の転送速度を測定する処理を説明するフローチャートである。It is a flowchart explaining the process which measures the transfer rate of this embodiment.

以下、本発明の実施の形態を図面に基づいて説明する。
図1は本実施形態のPCIバスを含むシステム構成図である。同図において、マザーボード(ホスト制御部)にはCPU1及びメモリ2が構築され、CPU1は中央処理装置(演算処理部)であり、メモリ2に記憶されたプログラムに従って処理を行う。また、メモリ2には印刷データのコマンド解析によって作成したビデオデータも記憶されている。
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
FIG. 1 is a system configuration diagram including a PCI bus according to the present embodiment. In the figure, a CPU 1 and a memory 2 are constructed on a mother board (host control unit). The CPU 1 is a central processing unit (arithmetic processing unit), and performs processing according to a program stored in the memory 2. The memory 2 also stores video data created by command analysis of print data.

ホストブリッジ3は、マザーボード上のCPU1とPCIバスに接続されたデバイス間のインターフェース(I/F)であり、ホストブリッジ3にはPCIバスを介してPCIデバイス4が接続されている。このPCIデバイス4はマスター機能を有し、例えばマザーボード上のメモリ2へのアクセスを行なう。尚、ホストブリッジ3はPCIデバイスからのアクセス要求に対し、メモリ2との間でデータの授受を行う。   The host bridge 3 is an interface (I / F) between the CPU 1 on the motherboard and a device connected to the PCI bus, and the PCI device 4 is connected to the host bridge 3 via the PCI bus. The PCI device 4 has a master function and accesses the memory 2 on the motherboard, for example. The host bridge 3 exchanges data with the memory 2 in response to an access request from the PCI device.

PCIデバイス4はPCIバスとの接続を行なうPCIスロット5、及び主制御部6、待機カウンタ7、有効データ数カウンタ8、クロック数保管部9で構成され、例えばメモリ2に記憶されたビデオデータを不図示のビデオ転送回路に転送する。尚、ビデオ転送回路はメモリ2から転送されたビデオデータを、例えば不図示の印字ヘッドに送信する。   The PCI device 4 includes a PCI slot 5 for connection to the PCI bus, a main control unit 6, a standby counter 7, a valid data number counter 8, and a clock number storage unit 9. For example, the PCI device 4 stores video data stored in the memory 2. Transfer to a video transfer circuit (not shown). The video transfer circuit transmits the video data transferred from the memory 2 to, for example, a print head (not shown).

主制御部6はホストブリッジ3にビデオデータを読み出す為のリードアクセスを行い、またメモリ2から読み出されるビデオデータの転送制御を行なう。さらに、待機カウンタ7に後述するクロック数のデータを順次準備する。また、主制御部6にはカウンタ10が設けられ、カウンタ10は後述するFRAME信号出力後、計数処理を開始し、ビデオデータの転送が終了するまで計数処理を行う。   The main control unit 6 performs read access for reading video data to the host bridge 3 and controls transfer of video data read from the memory 2. Further, data for the number of clocks described later is sequentially prepared in the standby counter 7. The main control unit 6 is provided with a counter 10. The counter 10 starts counting after outputting a FRAME signal, which will be described later, and performs counting until video data transfer is completed.

待機カウンタ7はリトライ後のリードリクエストを行う際の送信タイミングを調整する為のカウンタであり、例えば1クロック毎に順次更新するクロック数のデータが主制御部6によってセットされる。   The standby counter 7 is a counter for adjusting a transmission timing when a read request after retry is performed. For example, data of the number of clocks to be sequentially updated every clock is set by the main control unit 6.

有効データ数カウンタ8はPCIデバイス4がメモリ2からビデオデータを読み出す際のデータ数を計数するカウンタであり、本例では“0”〜“15”の16個のデータを有効データ数としてカウントする。また、有効データ数カウンタ8はビデオデータを16カウントすると、クロック数保管部9にカウント終了信号を出力する。   The valid data number counter 8 is a counter that counts the number of data when the PCI device 4 reads video data from the memory 2, and in this example, 16 data of “0” to “15” are counted as the number of valid data. . The valid data number counter 8 outputs a count end signal to the clock number storage unit 9 after counting 16 video data.

クロック数保管部9は上記待機カウンタ7にセットするクロック数のデータに対応して、上記カウンタ10の計数結果を保管する。例えば、待機カウンタ7に+1のクロック数がセットされた場合、この時のビデオデータの転送に要するクロック数をカウンタ10によって計測し、この計測値を保管する。また、待機カウンタ7に+2のクロック数がセットされた場合、この時のビデオデータの転送に要するクロック数をカウンタ10によって計測し、この計測値を保管する。以下同様に、待機カウンタ7に+3、+4、・・のクロック数がセットされた場合、それぞれの場合のビデオデータの転送に要するクロック数をカウンタ10によって計測し、計測値を保管する。   The clock number storage unit 9 stores the count result of the counter 10 corresponding to the clock number data set in the standby counter 7. For example, when the number of clocks of +1 is set in the standby counter 7, the number of clocks required to transfer the video data at this time is measured by the counter 10, and this measured value is stored. When the number of clocks of +2 is set in the standby counter 7, the number of clocks required for transferring video data at this time is measured by the counter 10, and the measured value is stored. Similarly, when the number of clocks of +3, +4,... Is set in the standby counter 7, the number of clocks required to transfer video data in each case is measured by the counter 10, and the measured value is stored.

尚、PCIバスには上記PCIデバイス4の他に、例えばデータの圧縮処理や伸張処理を行う際に使用するデバイスや、表示データの送受信を行う際に使用するデバイス等の複数のデバイスの接続が可能である。   In addition to the PCI device 4 described above, a plurality of devices such as a device used when performing data compression processing and decompression processing, and a device used when transmitting / receiving display data are connected to the PCI bus. Is possible.

以上の構成において、以下に本例の処理を説明する。
図2(a)〜(e)は本例の処理を説明するタイムチャートであり、図3及び図4は本例の処理を説明するフローチャートである。
先ず、マザーボード上のメモリ2からビデオデータを読み出す際の通常の処理を説明する。図2(a)に示すタイムチャート、及び図3に示すフローチャートはこの処理を説明するものである。
In the above configuration, the processing of this example will be described below.
FIGS. 2A to 2E are time charts for explaining the processing of this example, and FIGS. 3 and 4 are flowcharts for explaining the processing of this example.
First, normal processing when reading video data from the memory 2 on the motherboard will be described. The time chart shown in FIG. 2A and the flowchart shown in FIG. 3 explain this processing.

先ず、PCIデバイス4の主制御部6はマザーボード上のメモリ2に記憶されたビデオデータを読み出すべく、PCIバスを介してホストブリッジ3に対してリードアクセスの要求(REQ)を行う(ステップ(以下、STで示す)1)。   First, the main control unit 6 of the PCI device 4 makes a read access request (REQ) to the host bridge 3 via the PCI bus in order to read the video data stored in the memory 2 on the motherboard (step (hereinafter referred to as “step”). 1).

ホストブリッジ3では上記リクエストの要求を受信すると、PCIバスの使用が可能であるか判断する。ここで、PCIバスの使用が可能であればグラント信号(GNT)をアサートし(ST2がYES)、主制御部6は、待機カウント終了を判断する(ST3)。この判断は前述の待機カウンタ7にセットされたクロック数のカウント終了を判断するものであるが、この通常処理において待機カウンタ7は、例えば“0”にリセットされており、直ちにPCIデバイス4によるPCIバスの使用を可能とする。   When the host bridge 3 receives the request for the request, it determines whether the PCI bus can be used. If the PCI bus can be used, the grant signal (GNT) is asserted (ST2 is YES), and the main control unit 6 determines the end of the standby count (ST3). This determination is to determine the end of the count of the number of clocks set in the above-described standby counter 7. In this normal processing, the standby counter 7 is reset to “0”, for example, and the PCI device 4 immediately performs the PCI. The bus can be used.

したがって、ホストブリッジ3からグラント信号が出力されると、主制御部6はFRAMEを出力し(ST4)、PCIデバイス4側の受信準備が整っていることを示すIRDY信号を出力する(ST5)。   Therefore, when a grant signal is output from the host bridge 3, the main control unit 6 outputs FRAME (ST4), and outputs an IRDY signal indicating that the PCI device 4 is ready for reception (ST5).

図2(a)に示すタイムチャートは上記FARAME出力後の処理を示し、上記FRAMEが出力されると(図2(a)に示す「1」)、メモリ2に対するリードデータのアドレスを提示するアドレスフェーズ(AD)のタイミングが確保される。   The time chart shown in FIG. 2A shows the processing after the FARAME output. When the FRAME is output (“1” shown in FIG. 2A), the address presenting the address of the read data for the memory 2 Phase (AD) timing is ensured.

次に、ホストブリッジ3はDEVSEL信号を出力し(ST6がYES、図2(a)に示す「2」)、メモリ2から要求されたデータを読み出し、送信の準備ができるまでバスサイクルを中止すべく、STOP(リトライ)を出力する(ST7がYES、図2(a)に示す「3」)。尚、前述のようにマザーボード側とPCIバス側では使用するクロック周波数が異なり、例えば図2(a)で示すaは、要求されたリードデータのメモリ2上のアドレスを認識し、データをメモリ2側のクロック周波数に同期させる為の時間を示し、bはメモリ2から読み出したデータをPCIバス側のクロック周波数に同期させる為の時間を示す。   Next, the host bridge 3 outputs a DEVSEL signal (ST6 is YES, “2” shown in FIG. 2A), reads the requested data from the memory 2, and stops the bus cycle until ready for transmission. Therefore, STOP (retry) is output (ST7 is YES, “3” shown in FIG. 2A). As described above, the clock frequency used differs between the motherboard side and the PCI bus side. For example, a shown in FIG. 2A recognizes the address of the requested read data on the memory 2 and stores the data in the memory 2. B indicates the time for synchronizing the data read from the memory 2 with the clock frequency on the PCI bus side.

したがって、本例の場合、上記bに示す時間が経過した後、メモリ2から読み出したデータの送信準備が整うことになる。また、同図(a)のcに示す“0”〜“15”はメモリ2から読み出されるビデオデータを示す。   Therefore, in the case of this example, after the time shown in b above elapses, the data read from the memory 2 is ready for transmission. Further, “0” to “15” indicated by c in FIG. 4A indicate video data read from the memory 2.

したがって、マザーボード側でビデオデータの送信準備が整うまで上記処理を繰り返し(ST1〜ST7)、例えば図2(a)に示す例では2回目のSTOP(リトライ)が出力され(図2(a)に示す「4」)、その次のリクエスト要求の際マザーボード側でビデオデータの送信準備が整う。   Therefore, the above process is repeated until the mother board is ready to transmit video data (ST1 to ST7). For example, in the example shown in FIG. 2A, a second STOP (retry) is output (FIG. 2A). When the next request is requested, the motherboard is ready to transmit video data.

マザーボード側で送信準備が整うと、ホストブリッジ3からTRDYが出力され(ST8がYES、図2に示す「5」)、主制御部6はメモリ2からPCIバスを介してビデオデータを読み出し、PCIデバイス4から不図示のビデオ転送回路に送信する(ST9がNO、ST10がNO)。この間、有効データ数カウンタ8はビデオデータの転送が終了するまでのクロック数をカウントし、予定していた数のビデオデータの転送が完了すると(ST9がYES)、有効データ数カウンタ8からカウント終了信号がクロック数保管部9に出力され、更に主制御部6に通知され、処理を終了する。   When the motherboard is ready for transmission, TRDY is output from the host bridge 3 (ST8 is YES, “5” shown in FIG. 2), and the main control unit 6 reads the video data from the memory 2 via the PCI bus, and Transmission is performed from the device 4 to a video transfer circuit (not shown) (NO in ST9, NO in ST10). During this time, the valid data number counter 8 counts the number of clocks until the transfer of the video data is completed. When the transfer of the scheduled number of video data is completed (YES in ST9), the count is finished from the valid data number counter 8 The signal is output to the clock number storage unit 9 and further notified to the main control unit 6, and the process is terminated.

次に、上記通常アクセス時の処理に対して、ビデオデータの転送完了までの時間を短縮する本例の処理を説明する。本例においては、例えば上記有効データ数のビデオデータを転送する際、CPU1からのSTOP(リトライ)出力後の再アクセスまでの時間を、上記通常処理に対して、1クロック毎に増加させ(遅延させ)、ビデオデータの転送完了までの時間を計測する。そして、最も短時間でビデオデータの転送を完了する再アクセスまでの時間を取得する。以下、STOP(リトライ)出力後の再アクセスまでの時間を1クロック毎に増加させた(遅延させた)場合について、タイムチャートを使用して具体的に説明する。   Next, the processing of this example for shortening the time until video data transfer is completed with respect to the processing at the time of normal access will be described. In this example, for example, when transferring the video data of the valid data number, the time until the re-access after the STOP (retry) output from the CPU 1 is increased for each clock with respect to the normal processing (delayed). And measure the time until video data transfer is completed. Then, the time until re-access that completes the transfer of video data in the shortest time is acquired. Hereinafter, the case where the time until the re-access after the STOP (retry) output is increased (delayed) every clock will be described in detail using a time chart.

図2(b)は通常アクセスに対して再アクセスまでの時間を1クロック増加(遅延)させた場合のタイムチャートを示し、図2(c)は通常アクセスに対して2クロック増加(遅延)させた場合のタイムチャートを示し、図2(d)は通常アクセスに対して3クロック増加(遅延)させた場合のタイムチャートを示し、図2(e)は通常アクセスに対して4クロック増加(遅延)させた場合のタイムチャートを示す。   FIG. 2B shows a time chart in the case where the time until re-access is increased (delayed) by 1 clock with respect to the normal access, and FIG. 2 (d) shows a time chart when 3 clocks are increased (delayed) with respect to normal access, and FIG. 2 (e) shows 4 clocks (delayed) with respect to normal access. ) Shows the time chart.

図4は上記各場合について、ビデオデータの転送終了までのクロック数を計数し、転送速度を測定するフローチャートである。また、この転送速度の測定には前述のカウンタ10を使用する。尚、前述の図3に示すフローチャートも基本的には使用されるが、前述の説明と重複するので、図3に示すフローチャートについては、本例の処理において追加される待機カウンタの終了処理について説明する。   FIG. 4 is a flowchart for measuring the transfer rate by counting the number of clocks until the video data transfer is completed in each case. The counter 10 is used for the measurement of the transfer rate. Although the flowchart shown in FIG. 3 is basically used, it overlaps with the above description, and therefore the flowchart shown in FIG. 3 explains the end processing of the standby counter added in the processing of this example. To do.

先ず、図2(b)に示す再アクセスまでの時間を1クロック増加させた場合について説明する。この場合、上記と同様、先ずマザーボード上のメモリ2に記憶されたビデオデータを読み出すべく、PCIバスを介してホストブリッジ3に対してリードアクセスの要求を行う(ステップ(以下、図4においてSで示す)1)。その後、ホストブリッジ3からグラント信号をアサートすると(S2がYES)、PCIデバイス4の主制御部6はFRAMEを出力し、カウンタ10は計数処理を開始する(S3、図2(b)に示す「1」)。   First, a case where the time until re-access shown in FIG. 2B is increased by one clock will be described. In this case, as described above, first, a read access request is made to the host bridge 3 via the PCI bus in order to read the video data stored in the memory 2 on the motherboard (step (hereinafter referred to as S in FIG. 4). 1). Thereafter, when the grant signal is asserted from the host bridge 3 (S2 is YES), the main control unit 6 of the PCI device 4 outputs FRAME, and the counter 10 starts the counting process (S3, “shown in FIG. 2B”). 1 ").

その後、待機カウンタ7はカウント処理を継続し、CPU1側ではデータ転送の準備が整うまでSTOP(リトライ)を出力する(図2(b)に示す「3」)。この場合、上記のように最初のリトライの出力後、再アクセスまでの時間を1クロック遅らせている。すなわち、図2(a)に示す再FRAMEの出力タイミング(図2(a)に示す「6」)に対して、図2(b)に示す再FRAMEの出力タイミング(図2(b)に示す「7」)を1クロック遅らせている。このことによって、CPU1から出力される次のSTOP(リトライ)も1クロック遅れるが、この間に転送データの準備が整わない為、CPU1から再度STOP(リトライ)が出力されている(図2(b)に示す「4」)。   Thereafter, the standby counter 7 continues the counting process, and the CPU 1 outputs STOP (retry) until data transfer preparation is completed (“3” shown in FIG. 2B). In this case, as described above, the time from the first retry output to the re-access is delayed by one clock. That is, the output timing of the re-FRAME shown in FIG. 2B (shown in FIG. 2B) with respect to the output timing of the re-FRAME shown in FIG. 2A (“6” shown in FIG. 2A). “7”) is delayed by one clock. As a result, the next STOP (retry) output from the CPU 1 is also delayed by one clock. However, since transfer data is not ready during this time, the STOP (retry) is output again from the CPU 1 (FIG. 2B). "4").

この処理は前述の図3に示すフローチャートの判断(ST3)によって実行され、この例の場合、待機カウンタ7には主制御部6からのクロック数“1”のデータがセットされており、待機カウンタ7において1クロック分の計数が行われた後、FRAMEをホストブリッジ3に出力する。   This process is executed by the determination of the flowchart shown in FIG. 3 (ST3). In this example, the standby counter 7 is set with data of the number of clocks “1” from the main controller 6, and the standby counter 7, after one clock is counted, FRAME is output to the host bridge 3.

その後、CPU1側の送信準備が整うと、ホストブリッジ3からTRDYが出力される(図2(b)に示す「5´」)。したがって、この例ではその後、メモリ2からPCIバスを介してビデオデータを読み出し、PCIデバイス4から不図示のビデオ転送回路に送信する。カウンタ10は前述のFRAMEが出力されてからビデオデータの転送が終了するまでカウント処理を継続しており(S4がNO)、転送処理が終了するとカウンタ10は計数処理を終了し(S4がYES)、計測結果であるクロック数のデータをクロック数保管部9に保管する(S5)。この時、リトライ後の再アクセスまでのクロック数“1”のデータに対応してカウンタ10のカウント値がクロック数保管部9に保管される。   Thereafter, when the CPU 1 side is ready for transmission, TRDY is output from the host bridge 3 (“5 ′” shown in FIG. 2B). Therefore, in this example, after that, video data is read from the memory 2 via the PCI bus, and transmitted from the PCI device 4 to a video transfer circuit (not shown). The counter 10 continues the counting process until the transfer of the video data is completed after the FRAME is output (S4 is NO), and when the transfer process is completed, the counter 10 ends the counting process (S4 is YES). Then, the clock number data as the measurement result is stored in the clock number storage unit 9 (S5). At this time, the count value of the counter 10 is stored in the clock number storage unit 9 corresponding to the data of the clock number “1” until the re-access after the retry.

この場合、カウンタ10のカウント値は“41”であり、PCIバスのクロック周波数を66MHzとし、ビット幅を32ビットとすると、転送レートは90.1MB/s(66MHz×4バイト×14ワード/41クロック)となる。尚、上記カウント値“41”は次のビデオデータを読み出す為のFRAME出力までの計数値を上記カウンタ10の計数値に加算した値である。   In this case, if the count value of the counter 10 is “41”, the clock frequency of the PCI bus is 66 MHz, and the bit width is 32 bits, the transfer rate is 90.1 MB / s (66 MHz × 4 bytes × 14 words / 41). Clock). The count value “41” is a value obtained by adding the count value until the FRAME output for reading the next video data to the count value of the counter 10.

次に、図2(c)に示す再アクセスまでの時間を2クロック増加させた場合について説明する。この場合も、上記と同様、先ずマザーボード上のメモリ2に記憶されたビデオデータを読み出すべく、PCIバスを介してホストブリッジ3に対してリードアクセスの要求を行う(S1)。その後、ホストブリッジ3からグラント信号をアサートし(S2がYES)、主制御部6からホストブリッジ3にFRAMEを送信し、カウンタ10の計数処理を開始する(S3、図2(c)に示す「1」)。   Next, the case where the time until the re-access shown in FIG. In this case as well, a read access request is first made to the host bridge 3 via the PCI bus in order to read the video data stored in the memory 2 on the motherboard (S1). After that, the grant signal is asserted from the host bridge 3 (S2 is YES), FRAME is transmitted from the main control unit 6 to the host bridge 3, and the counting process of the counter 10 is started (S3, shown in FIG. 2C). 1 ").

その後、前述と同様カウンタ10は計数処理を継続し、CPU1側ではデータ転送の準備が整うまでSTOP(リトライ)を出力する(図2(c)に示す「3」)。この例の場合、最初のリトライの出力後、再アクセスまでの時間を2クロック遅らせている。すなわち、図2(a)に示す再FRAMEの出力タイミング(図2(a)に示す「6」)に対して、図2(c)に示す再FRAMEの出力タイミング(図2(c)に示す「8」)を2クロック遅らせている。このことによって、CPU1から出力される次のSTOP(リトライ)も2クロック遅れ、この間に転送データの準備が整い、ホストブリッジ3からTRDY#が出力される(図2(c)に示す「9」)。   Thereafter, the counter 10 continues counting processing as described above, and the CPU 1 outputs STOP (retry) until preparation for data transfer is completed (“3” shown in FIG. 2C). In this example, the time from the first retry output to the re-access is delayed by 2 clocks. That is, the output timing of the re-FRAME shown in FIG. 2C (shown in FIG. 2C) with respect to the output timing of the re-FRAME shown in FIG. 2A (“6” shown in FIG. 2A). “8”) is delayed by two clocks. As a result, the next STOP (retry) output from the CPU 1 is also delayed by 2 clocks. During this time, transfer data is ready, and TRDY # is output from the host bridge 3 (“9” shown in FIG. 2C). ).

この処理も前述の図3に示すフローチャートの判断(ST3)によって実行され、この例の場合、待機カウンタ7には主制御部6からのクロック数“2”のデータがセットされており、待機カウンタ7において2クロック分の計数が行われた後、FRAMEをホストブリッジ3に出力する。したがって、この例ではその後、メモリ2からPCIバスを介してビデオデータを読み出し、PCIデバイス4から不図示のビデオ転送回路に送信される。   This process is also executed by the determination of the flowchart shown in FIG. 3 (ST3). In this example, the standby counter 7 is set with the data of the clock number “2” from the main control unit 6, and the standby counter 7 7, after 2 clocks are counted, FRAME is output to the host bridge 3. Therefore, in this example, after that, video data is read from the memory 2 via the PCI bus and transmitted from the PCI device 4 to a video transfer circuit (not shown).

しかし、この例では16個のデータ転送中にディスコネクトが発生し、データ転送が中止される。この例では“0”〜“13”のビデオデータを転送した後、ディスコネクトが発生し、全てのデータ転送が終了しておらず(S4がNO)、カウンタ10はカウント処理を継続する。その後、再度FRAMEが出力され、ホストブリッジ3からTRDYが再度出力されると(図2(c)に示す「10」)、メモリ2からPCIバスを介して残りのビデオデータ(“14”、“15”)がPCIバスを介して不図示のビデオ転送回路に送信される。そして、転送処理が終了するとカウンタ10は計数処理を終了し(S4がYES)、計測結果であるクロック数のデータをクロック数保管部9に保管する(S5)。この時、リトライ後の再アクセスまでのクロック数“2”のデータに対応してカウンタ10のカウント値がクロック数保管部9に保管される。   However, in this example, disconnection occurs during the transfer of 16 data, and the data transfer is stopped. In this example, after video data “0” to “13” is transferred, disconnection occurs, and all data transfer is not completed (NO in S4), and the counter 10 continues the count process. After that, when FRAME is output again and TRDY is output again from the host bridge 3 (“10” shown in FIG. 2C), the remaining video data (“14”, “14” from the memory 2 via the PCI bus). 15 ″) is transmitted to a video transfer circuit (not shown) via the PCI bus. When the transfer process ends, the counter 10 ends the counting process (YES in S4), and stores the clock number data as the measurement result in the clock number storage unit 9 (S5). At this time, the count value of the counter 10 is stored in the clock number storage unit 9 corresponding to the data of the clock number “2” until the re-access after the retry.

この場合、カウンタ10のカウント値は“44”であり、転送レートは84.0MB/s(66MHz×4バイト×14ワード/44クロック)となる。尚、上記カウント値“44”も次のビデオデータを読み出す為のFRAME出力までの計数値を上記カウンタ10の計数値に加算した値である。   In this case, the count value of the counter 10 is “44”, and the transfer rate is 84.0 MB / s (66 MHz × 4 bytes × 14 words / 44 clocks). The count value “44” is also a value obtained by adding the count value until the FRAME output for reading the next video data to the count value of the counter 10.

次に、図2(d)に示す再アクセスまでの時間を3クロック増加させた場合について説明する。この場合も、上記と同様、先ずマザーボード上のメモリ2に記憶されたビデオデータを読み出すべく、PCIバスを介してホストブリッジ3に対してリードアクセスの要求を行う(S1)。その後、ホストブリッジ3からGNTをアサートし(S2)、主制御部6からホストブリッジ3にFRAMEを送信し、カウンタ10の計数処理を開始する(S3、図2(d)に示す「1」)。   Next, the case where the time until the re-access shown in FIG. In this case as well, a read access request is first made to the host bridge 3 via the PCI bus in order to read the video data stored in the memory 2 on the motherboard (S1). Thereafter, GNT is asserted from the host bridge 3 (S2), FRAME is transmitted from the main control unit 6 to the host bridge 3, and the counting process of the counter 10 is started (S3, “1” shown in FIG. 2D). .

その後、前述と同様カウンタ10はカウント処理を継続し、CPU1側ではデータ転送の準備が整うまでSTOP(リトライ)を出力する(図2(d)に示す「3」)。この例の場合、最初のリトライの出力後、再アクセスまでの時間を3クロック遅らせている。すなわち、図2(a)に示す再FRAMEの出力タイミング(図2(a)に示す「6」)に対して、図2(d)に示す再FRAMEの出力タイミング(図2(d)に示す「11」)を3クロック遅らせている。   After that, the counter 10 continues counting processing as described above, and the CPU 1 outputs STOP (retry) until preparation for data transfer is completed (“3” shown in FIG. 2D). In this example, the time from the first retry output to the re-access is delayed by 3 clocks. That is, with respect to the output timing of the re-FRAME shown in FIG. 2A (“6” shown in FIG. 2A), the output timing of the re-FRAME shown in FIG. “11”) is delayed by 3 clocks.

この処理も前述の図3に示すフローチャートの判断(ST3)によって実行され、この例の場合、待機カウンタ7には主制御部6からのクロック数“3”のデータがセットされており、待機カウンタ7において3クロック分の計数が行われた後、FRAMEをホストブリッジ3に出力する。このことによって、CPU1から出力される次のSTOP(リトライ)も3クロック遅れ、この間に転送データの準備が整い、ホストブリッジ3からTRDYが出力される(図2(d)に示す「12」)。したがって、この例ではその後、メモリ2からPCIバスを介してビデオデータを読み出し、PCIデバイス4から不図示のビデオ転送回路に送信される。   This process is also executed by the determination of the flowchart shown in FIG. 3 (ST3). In this example, the standby counter 7 is set with data of the number of clocks “3” from the main control unit 6, and the standby counter After counting for 3 clocks in 7, FRAME is output to the host bridge 3. As a result, the next STOP (retry) output from the CPU 1 is also delayed by 3 clocks. During this time, transfer data is ready, and TRDY is output from the host bridge 3 (“12” shown in FIG. 2D). . Therefore, in this example, after that, video data is read from the memory 2 via the PCI bus and transmitted from the PCI device 4 to a video transfer circuit (not shown).

そして、転送処理が終了するとカウンタ10は計数処理を終了し(S4がYES)、計測結果であるクロック数の値をクロック数保管部9に保管する(S5)。この時、リトライ後の再アクセスまでのクロック数“3”のデータに対応してカウンタ10のカウント値がクロック数保管部9に保管される。   When the transfer process ends, the counter 10 ends the counting process (S4 is YES), and stores the value of the clock number as the measurement result in the clock number storage unit 9 (S5). At this time, the count value of the counter 10 is stored in the clock number storage unit 9 corresponding to the data of the clock number “3” until the re-access after the retry.

この場合、カウンタ10のカウント値は“36”であり、転送レートは117.3MB/s(66MHz×4バイト×14ワード/36クロック)となる。尚、上記カウント値“36”も次のビデオデータを読み出す為のFRAME出力までの計数値を上記カウンタ10の計数値に加算した値である。   In this case, the count value of the counter 10 is “36”, and the transfer rate is 117.3 MB / s (66 MHz × 4 bytes × 14 words / 36 clocks). The count value “36” is also a value obtained by adding the count value until the FRAME output for reading the next video data to the count value of the counter 10.

最後に、図2(e)に示す再アクセスまでの時間を4クロック遅らせた場合について説明する。この場合も、上記と同様、先ずマザーボード上のメモリ2に記憶されたビデオデータを読み出すべく、PCIバスを介してホストブリッジ3に対してリードアクセスの要求を行う(S1)。その後、ホストブリッジ3からGNTをアサートし(S2)、主制御部6はホストブリッジ3にFRAMEを送信し、カウンタ10が計数処理を開始する(S3、図2(e)に示す「1」)。   Finally, a case where the time until the re-access shown in FIG. 2E is delayed by 4 clocks will be described. In this case as well, a read access request is first made to the host bridge 3 via the PCI bus in order to read the video data stored in the memory 2 on the motherboard (S1). Thereafter, GNT is asserted from the host bridge 3 (S2), the main control unit 6 transmits FRAME to the host bridge 3, and the counter 10 starts counting processing (S3, “1” shown in FIG. 2 (e)). .

その後、前述と同様カウンタ10はカウント処理を継続し、CPU1側ではデータ転送の準備が整うまでSTOP(リトライ)を出力する(図2(e)に示す「3」)。この例の場合、最初のリトライの出力後、再アクセスまでの時間を4クロック遅らせている。すなわち、図2(a)に示す再FRAMEの出力タイミング(図2(a)に示す「6」)に対して、図2(e)に示す再FRAMEの出力タイミング(図2(e)に示す「13」)を4クロック遅らせている。   After that, the counter 10 continues counting processing as described above, and the CPU 1 outputs STOP (retry) until preparation for data transfer is completed (“3” shown in FIG. 2E). In this example, the time from the first retry output to the re-access is delayed by 4 clocks. That is, the output timing of the re-FRAME shown in FIG. 2 (e) (shown in FIG. 2 (e)) with respect to the output timing of the re-FRAME shown in FIG. 2 (a) (“6” shown in FIG. 2 (a)). “13”) is delayed by 4 clocks.

この処理も前述の図3に示すフローチャートの判断(ST3)によって実行され、この例の場合、待機カウンタ7には主制御部6からのクロック数“4”のデータがセットされており、待機カウンタ7において4クロック分の計数が行われた後、FRAMEをホストブリッジ3に出力する。このことによって、CPU1から出力される次のSTOP(リトライ)も4クロック遅れ、この間に転送データの準備が整い、ホストブリッジ3からTRDYが出力される(図2(e)に示す「14」)。したがって、この例ではその後、メモリ2からPCIバスを介してビデオデータを読み出し、PCIデバイス4から不図示のビデオ転送回路に送信される。   This process is also executed by the determination of the flowchart shown in FIG. 3 (ST3). In this example, the standby counter 7 is set with data of the number of clocks “4” from the main control unit 6, and the standby counter 7, four clocks are counted, and FRAME is output to the host bridge 3. As a result, the next STOP (retry) output from the CPU 1 is also delayed by 4 clocks. During this time, transfer data is ready, and TRDY is output from the host bridge 3 (“14” shown in FIG. 2E). . Therefore, in this example, after that, video data is read from the memory 2 via the PCI bus and transmitted from the PCI device 4 to a video transfer circuit (not shown).

そして、転送処理が終了するとカウンタ10は計数処理を終了し(S4がYES)、計測結果であるクロック数の値をクロック数保管部9に保管する(S5)。この時、リトライ後の再アクセスまでのクロック数“4”のデータに対応してカウンタ10のカウント値がクロック数保管部9に保管される。   When the transfer process ends, the counter 10 ends the counting process (S4 is YES), and stores the value of the clock number as the measurement result in the clock number storage unit 9 (S5). At this time, the count value of the counter 10 is stored in the clock number storage unit 9 corresponding to the data of the clock number “4” until the re-access after the retry.

この場合、待機カウンタ7のカウント値は“38”であり、転送レートは111.2MB/s(66MHz×4バイト×14ワード/38クロック)となる。尚、上記カウント値“38”も次のビデオデータを読み出す為のFRAME出力までの計数値を上記カウンタ10の計数値に加算した値である。   In this case, the count value of the standby counter 7 is “38”, and the transfer rate is 111.2 MB / s (66 MHz × 4 bytes × 14 words / 38 clocks). The count value “38” is also a value obtained by adding the count value until the FRAME output for reading the next video data to the count value of the counter 10.

以下、待機カウンタ7にクロック数“5”、“6”、・・を順次セットし、上記と同様の処理を繰り返す。そして、クロック数保管部9に順次増加させたクロック数のデータと共に、カウンタ10のカウント値のデータを保管し、カウンタ10によって得られたカウント値は最も小さいクロック数のデータを、以後待機カウンタ7のクロック数として設定する。   Thereafter, the number of clocks “5”, “6”,... Are sequentially set in the standby counter 7 and the same processing as described above is repeated. Then, the count value data of the counter 10 is stored together with the clock number data sequentially increased in the clock number storage unit 9, and the count value obtained by the counter 10 is stored as the smallest clock number data. Set as the number of clocks.

このように処理することによって、以後カウンタ10によるカウント値が最も小さくなるクロック数のデータが待機カウンタ7に設定され、メモリ2からのビデオデータの転送に使用する。したがって、以後最も短時間でビデオデータの転送処理を行うことができるクロック数のデータが待機カウンタ7に設定され、最も効率よいビデオデータの転送処理を行うことができる。
尚、上記転送要求信号の発生最適時間を求める処理は、実際にデータを転送する作業を行う前に実施するものである。装置電源のON後、CPU1によりPCIの設定が終了し、CPU1がPCIデバイス4を認識した時点で、CPU1がPCIデバイス4に対して最適時間の計測処理開始を指示する。
By processing in this way, the data of the clock number with the smallest count value by the counter 10 is set in the standby counter 7 and used for the transfer of the video data from the memory 2. Accordingly, data having the number of clocks capable of performing the video data transfer process in the shortest time is set in the standby counter 7 so that the most efficient video data transfer process can be performed.
The process for obtaining the optimum generation time of the transfer request signal is performed before the actual data transfer operation. After the apparatus power is turned on, the CPU 1 finishes the PCI setting, and when the CPU 1 recognizes the PCI device 4, the CPU 1 instructs the PCI device 4 to start the process for measuring the optimum time.

尚、上記実施形態の説明において、待機カウンタ7に設定するカウント値は、+1クロック、+2クロック、・・と順次増加する方向に更新するように設定したが、逆に例えば+10クロック、+9クロック、・・と順次減少させる方向に更新するように設定してもよい。   In the description of the above embodiment, the count value set in the standby counter 7 is set to be updated in the order of +1 clock, +2 clock,..., But in reverse, for example, +10 clock, +9 clock, -You may set to update in the direction of decreasing sequentially.

また、前述の図2(a)に示す通常処理の場合、待機カウンタ7の設定値は“0”であり、この場合カウンタ10によってビデオデータの転送処理が終了するまでの計数を行うとカウント数は39クロックとなり、この場合もPCIバスのクロック周波数を66MHzとし、ビット幅を32ビットとすると、転送レートは94.8MB/s(66MHz×4バイト×14ワード/39クロック)となる。   In the case of the normal processing shown in FIG. 2A, the set value of the standby counter 7 is “0”. In this case, if the counter 10 counts until the video data transfer processing is completed, the count number In this case, assuming that the clock frequency of the PCI bus is 66 MHz and the bit width is 32 bits, the transfer rate is 94.8 MB / s (66 MHz × 4 bytes × 14 words / 39 clocks).

本発明はいくつかの実施形態を説明したが、本発明は特許請求の範囲に記載された発明とその均等の範囲に含まれる。以下、本件特許出願の出願当初の特許請求の範囲に記載された発明を付記する。   Although several embodiments of the present invention have been described, the present invention is included in the inventions described in the claims and their equivalents. Hereinafter, the invention described in the scope of claims at the beginning of the filing of the present patent application will be added.

付記1
演算処理部と、
該演算処理部により制御される第1の記憶部と、
該第1の記憶部にPCIバスを介してアクセスを行うデバイスとを有し、
前記デバイスは、
該デバイスからの前記第1の記憶部へのアクセス要求に対して前記演算処理部から許可応答が送信された後、前記第1の記憶部に記憶されたデータの前記デバイスへの転送処理が完了するまでの間に単位時間間隔で繰り返し発生するクロック信号の発生回数を計数する計数部と、
前記演算処理部からリトライ応答が出力された後前記デバイスが先のアクセス要求発生後再度アクセス要求を発生するまでの再アクセス要求時間を変化させる前記クロック信号の発生回数を設定する設定部と、
前記設定部に順次更新される前記再アクセス要求時間を変化させる前記クロック信号の発生回数を設定して計数させる待機時間変更部と、
前記設定部に設定された前記再アクセス要求時間を変化させる前記クロック信号発生回数に応じて処理された前記転送処理が完了する迄の間に、前記計数部によって計数される前記クロック信号の発生回数を前記設定部に設定された前記再アクセス要求時間を変化させる前記クロック信号の発生回数に対応して記憶する第2の記憶部と、
前記設定部に設定された前記再アクセス要求時間を変化させる前記クロック信号発生回数に応じて処理された前記転送処理が完了する迄の間に前記計数部によって計数される前記クロック信号の発生回数が最も少ないときの、前記設定部に設定された前記再アクセス要求時間を変化させる前記クロック信号の発生回数を前記第2の記憶部から読み出し、前記設定部に設定する制御部と、
を有することを特徴とするPCIバスの制御装置。
Appendix 1
An arithmetic processing unit;
A first storage unit controlled by the arithmetic processing unit;
A device for accessing the first storage unit via a PCI bus,
The device is
After a permission response is transmitted from the arithmetic processing unit in response to an access request from the device to the first storage unit, transfer processing of the data stored in the first storage unit to the device is completed. A counting unit that counts the number of occurrences of a clock signal repeatedly generated at unit time intervals until
A setting unit for setting the number of occurrences of the clock signal for changing the re-access request time after the retry response is output from the arithmetic processing unit until the device again generates an access request after the occurrence of the previous access request;
A standby time changing unit for setting and counting the number of occurrences of the clock signal for changing the re-access request time sequentially updated in the setting unit;
The number of generations of the clock signal counted by the counting unit until the completion of the transfer process processed according to the number of generations of the clock signal for changing the re-access request time set in the setting unit A second storage unit that stores the number of occurrences of the clock signal for changing the re-access request time set in the setting unit;
The number of generations of the clock signal counted by the counting unit until the completion of the transfer process processed according to the number of generations of the clock signal that changes the re-access request time set in the setting unit is A control unit that reads out the number of generations of the clock signal that changes the re-access request time set in the setting unit when it is the least from the second storage unit, and sets the setting in the setting unit;
And a PCI bus control device.

付記2
前記第1の記憶部に記憶されたデータの前記デバイスへの転送処理の完了の判断は、前記デバイスに設けられた第3の計数部が前記第1の記憶部から転送される所定個のデータを計数することによって行うことを特徴とする付記1に記載のPCIバスの制御装置。
Appendix 2
The completion of the transfer processing of the data stored in the first storage unit to the device is determined by a predetermined number of data transferred from the first storage unit by a third counter provided in the device. The PCI bus control device as set forth in appendix 1, wherein the control is performed by counting.

付記3
前記演算処理部からの前記リトライ応答は、前記デバイスへの転送データの準備が整うまでの間、前記待機時間変更部から出力され、前記設定部に設定される順次更新される前記再アクセス要求時間を変化させる前記クロック信号の発生回数は、順次増加する数、又は順次減少する数であることを特徴とする付記1、又は2に記載のPCIバスの制御装置。
Appendix 3
The retry response from the arithmetic processing unit is output from the standby time changing unit until the preparation of transfer data to the device is completed, and the re-access request time sequentially set in the setting unit 3. The PCI bus control device according to appendix 1 or 2, wherein the number of times of generation of the clock signal that changes the number is a sequentially increasing number or a sequentially decreasing number.

付記4
前記デバイスは印刷装置のビデオデータの転送回路であり、前記第1の記憶部に記憶された前記ビデオデータを前記PCIバスを介して印字ヘッドへ転送する際、前記設定部へ前記クロック信号の発生回数を設定し、前記ビデオデータの転送時間を最短にすることを特徴とする付記1、2、又は3に記載のPCIバスの制御装置。
Appendix 4
The device is a video data transfer circuit of a printing apparatus, and generates the clock signal to the setting unit when transferring the video data stored in the first storage unit to the print head via the PCI bus. 4. The PCI bus control device according to appendix 1, 2, or 3, wherein the number of times is set to minimize the transfer time of the video data.

付記5
演算処理部により制御される第1の記憶部にデバイスからPCIバスを介してアクセスを行うPCIバスの制御方法であって、
前記デバイスからの前記第1の記憶部へのアクセス要求に対して前記演算処理部から許可応答が送信された後、前記第1の記憶部に記憶されたデータの前記デバイスへの転送処理が完了するまでの間に単位時間間隔で繰り返し発生するクロック信号の発生回数を計数する計数処理と、
前記演算処理部からリトライ応答が出力された後前記デバイスが先のアクセス要求発生後再度アクセス要求を発生するまでの再アクセス要求時間を変化させる前記クロック信号の発生回数を設定する設定処理と、
前記設定処理において順次更新される前記再アクセス要求時間を変化させる前記クロック信号の発生回数数を設定して計数させる待機時間変更処理と、
前記待機時間変更処理により設定された前記再アクセス要求時間を変化させる前記クロック信号の発生回数に応じて処理された前記転送処理が完了する迄の間に、前記計数処理によって計数される前記クロック信号の発生回数を前記設定部に設定された前記再アクセス要求時間を変化させる前記クロック信号の発生回数に対応して第2の記憶部に記憶する処理と、
前記設定部に設定された前記再アクセス要求時間を変化させる前記クロック信号発生回数に応じて処理された前記転送処理が完了する迄の間に前記計数処理によって計数される前記クロック信号発生回数が最も少ないときの、前記設定処理に使用された前記再アクセス要求時間を変化させる前記クロック数信号発生回を前記第2の記憶部から読み出し、前記設定処理のクロック信号の発生回数として使用する、
ことを特徴とするPCIバスの制御方法。
Appendix 5
A PCI bus control method for accessing a first storage unit controlled by an arithmetic processing unit from a device via a PCI bus,
After a permission response is transmitted from the arithmetic processing unit in response to an access request from the device to the first storage unit, transfer processing of data stored in the first storage unit to the device is completed. A counting process for counting the number of occurrences of a clock signal repeatedly generated at unit time intervals until
A setting process for setting the number of generations of the clock signal for changing the re-access request time after the retry response is output from the arithmetic processing unit until the device generates an access request again after the previous access request is generated,
A waiting time changing process for setting and counting the number of occurrences of the clock signal for changing the re-access request time sequentially updated in the setting process;
The clock signal counted by the counting process until the completion of the transfer process processed according to the number of times the clock signal is generated to change the re-access request time set by the waiting time changing process Storing the number of occurrences in the second storage unit corresponding to the number of occurrences of the clock signal for changing the re-access request time set in the setting unit;
The number of clock signal generations counted by the counting process until the completion of the transfer process processed according to the number of clock signal generations changing the re-access request time set in the setting unit is the largest. When the time is small, the clock number signal generation times for changing the re-access request time used for the setting process is read from the second storage unit, and used as the number of generations of the clock signal for the setting process.
And a PCI bus control method.

1・・・CPU
2・・・メモリ
3・・・ホストブリッジ
4・・・PCIデバイス
5・・・PCIスロット
6・・・主制御部
7・・・待機カウンタ
8・・・有効データ数カウンタ
9・・・クロック数保管部
10・・カウンタ
1 ... CPU
2 ... Memory 3 ... Host bridge 4 ... PCI device 5 ... PCI slot 6 ... Main control unit 7 ... Standby counter 8 ... Valid data counter 9 ... Clock count Storage unit 10 ・ ・ Counter

Claims (3)

演算処理部により制御される第1の記憶部にPCIバスを介して所定のデバイスがアクセスを行うPCIバス制御システムであって、A PCI bus control system in which a predetermined device accesses a first storage unit controlled by an arithmetic processing unit via a PCI bus,
前記デバイスからの前記第1の記憶部へのアクセス要求に対して前記演算処理部から許可応答が送信された後、前記第1の記憶部に記憶されたデータの前記デバイスへの転送処理が完了するまでの間に単位時間間隔で繰り返し発生するクロック信号の発生回数を第1発生回数として計数する計数部と、After a permission response is transmitted from the arithmetic processing unit in response to an access request from the device to the first storage unit, transfer processing of data stored in the first storage unit to the device is completed. A counting unit that counts the number of occurrences of the clock signal repeatedly generated at unit time intervals as the first number of occurrences,
初期設定の際に、前記演算処理部からリトライ応答が出力された後前記デバイスが先のアクセス要求発生後再度アクセス要求を発生するまでの再アクセス要求時間を変化させるための追加的なクロック信号の発生回数を、前記計数部による計数が完了する毎に所定の回数分だけ加算または減算して、第2発生回数として設定する第1設定部と、In initialization, an additional clock signal for changing the re-access request time after the retry response is output from the arithmetic processing unit until the device generates an access request again after the previous access request occurs A first setting unit that sets the number of occurrences as a second number of occurrences by adding or subtracting a predetermined number of times each time counting by the counting unit is completed;
前記第1設定部により設定された第2発生回数に対応付けて、該第2発生回数に設定されているときに前記計数部により計数された前記第1発生回数を記憶する第2の記憶部と、A second storage unit that stores the first occurrence number counted by the counting unit when the second occurrence number is set in association with the second occurrence number set by the first setting unit When,
前記初期設定の後においては、前記第2の記憶部に記憶された第1発生回数のうちで最も値の小さい第1発生回数に対応付けられている前記第2発生回数を、前記追加的なクロック信号の発生回数として設定する第2設定部と、After the initial setting, the second occurrence count associated with the first occurrence count having the smallest value among the first occurrence counts stored in the second storage unit is set as the additional occurrence count. A second setting unit for setting the number of clock signal generations;
を備えたことを特徴とするPCIバス制御システム。A PCI bus control system comprising:
前記データは、前記初期設定用に予め前記第1の記憶部に記憶されていることを特徴とする請求項1に記載のPCIバス制御システム。The PCI bus control system according to claim 1, wherein the data is stored in the first storage unit in advance for the initial setting. 演算処理部により制御される第1の記憶部にPCIバスを介して所定のデバイスがアクセスを行うPCIバスの制御方法であって、A PCI bus control method in which a predetermined device accesses a first storage unit controlled by an arithmetic processing unit via a PCI bus,
前記デバイスからの前記第1の記憶部へのアクセス要求に対して前記演算処理部から許可応答が送信された後、前記第1の記憶部に記憶されたデータの前記デバイスへの転送処理が完了するまでの間に単位時間間隔で繰り返し発生するクロック信号の発生回数を第1発生回数として計数する計数ステップと、After a permission response is transmitted from the arithmetic processing unit in response to an access request from the device to the first storage unit, transfer processing of data stored in the first storage unit to the device is completed. A counting step of counting the number of occurrences of the clock signal repeatedly generated at unit time intervals as the first number of occurrences until
初期設定の際に、前記演算処理部からリトライ応答が出力された後前記デバイスが先のアクセス要求発生後再度アクセス要求を発生するまでの再アクセス要求時間を変化させるための追加的なクロック信号の発生回数を、前記計数ステップでの計数が完了する毎に所定の回数分だけ加算または減算して、第2発生回数として設定する第1設定ステップと、In initialization, an additional clock signal for changing the re-access request time after the retry response is output from the arithmetic processing unit until the device generates an access request again after the previous access request occurs A first setting step of setting the number of occurrences as a second number of occurrences by adding or subtracting a predetermined number of times each time counting in the counting step is completed;
前記第1設定ステップで設定された第2発生回数に対応付けて、該第2発生回数に設定されているときに前記計数ステップで計数された前記第1発生回数を第2記憶部に記憶させておく記憶ステップと、In association with the second occurrence count set in the first setting step, the first occurrence count counted in the counting step when the second occurrence count is set is stored in the second storage unit. Memory step to keep,
前記初期設定の後においては、前記記憶ステップで前記第2の記憶部に記憶された第1発生回数のうちで最も値の小さい第1発生回数に対応付けられている前記第2発生回数を、前記追加的なクロック信号の発生回数として設定する第2設定ステップと、After the initial setting, the second occurrence count associated with the first occurrence count having the smallest value among the first occurrence counts stored in the second storage unit in the storing step is A second setting step for setting the number of occurrences of the additional clock signal;
を有したことを特徴とするPCIバスの制御方法。A PCI bus control method characterized by comprising:
JP2012182245A 2012-08-21 2012-08-21 PCI bus control system and PCI bus control method Expired - Fee Related JP6098066B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012182245A JP6098066B2 (en) 2012-08-21 2012-08-21 PCI bus control system and PCI bus control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012182245A JP6098066B2 (en) 2012-08-21 2012-08-21 PCI bus control system and PCI bus control method

Publications (3)

Publication Number Publication Date
JP2014041412A JP2014041412A (en) 2014-03-06
JP2014041412A5 JP2014041412A5 (en) 2015-10-15
JP6098066B2 true JP6098066B2 (en) 2017-03-22

Family

ID=50393641

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012182245A Expired - Fee Related JP6098066B2 (en) 2012-08-21 2012-08-21 PCI bus control system and PCI bus control method

Country Status (1)

Country Link
JP (1) JP6098066B2 (en)

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6081859A (en) * 1998-03-12 2000-06-27 Vlsi Technology, Inc. Address dependent retry system to program the retry latency of an initiator PCI agent
JPH11345198A (en) * 1998-06-03 1999-12-14 Nec Corp Bus master mechanism and control method therefor
JP2000122969A (en) * 1998-10-15 2000-04-28 Matsushita Electric Ind Co Ltd Data transfer device, data transfer method and recording medium
JP2001127825A (en) * 1999-10-22 2001-05-11 Nec Ic Microcomput Syst Ltd Communication equipment and request resending method thereof
JP2001256179A (en) * 2000-03-14 2001-09-21 Sharp Corp Processor system
JP2001273247A (en) * 2000-03-27 2001-10-05 Mitsubishi Electric Corp Hierarchical bus system
JP2004213255A (en) * 2002-12-27 2004-07-29 Casio Electronics Co Ltd Controlling method for pci bus
JP2005242437A (en) * 2004-02-24 2005-09-08 Sony Corp Information processor, and information processing method and program

Also Published As

Publication number Publication date
JP2014041412A (en) 2014-03-06

Similar Documents

Publication Publication Date Title
KR102445344B1 (en) Receive clock calibration for a serial bus
KR20160107247A (en) Camera control interface extension with in-band interrupt
EP2367112A1 (en) Information processing apparatus, image forming apparatus, and information processing program
US9025194B2 (en) Data transmission apparatus for transferring data to an output device for outputting data, printer, information processing apparatus, and control method thereof
EP2423824B1 (en) Data transfer device, method of transferring data, and image forming apparatus
US6122693A (en) PCI bus utilization diagnostic monitor
JP4198376B2 (en) Bus system and information processing system including bus system
KR20160047484A (en) Method to minimize the number of irq lines from peripherals to one wire
JP5744650B2 (en) BUS MONITOR DEVICE, BUS MONITOR METHOD, AND PROGRAM
US9760507B2 (en) Data processing device and data processing method
JP6098066B2 (en) PCI bus control system and PCI bus control method
US20010004749A1 (en) Arbitration of control chipsets in bus transaction
US10489319B2 (en) Automatic transmission of dummy bits in bus master
CN115794713A (en) AXI bus read-write transaction balancing method, device, electronic equipment and medium
JP3602435B2 (en) Data transaction method between control chipsets
JP4499235B2 (en) PCI bus compatible masters and arbiters and arbitration methods
JP2014041412A5 (en) Printing apparatus, additional embedded software processing apparatus, and additional embedded software execution control method
JP5677007B2 (en) Bus arbitration device and bus arbitration method
US11023392B2 (en) Method for arbitrating access to a shared memory, and corresponding electronic device
US7302508B2 (en) Apparatus and method for high speed data transfer
JP2001256179A (en) Processor system
JP5111940B2 (en) Information processing apparatus and access control method
JP7226084B2 (en) Information processing equipment
US10719117B2 (en) Control apparatus configured to control clock signal generation, method for controlling the same, storage medium, and computer system
WO2012093475A1 (en) Information transfer device and information transfer method of information transfer device

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150820

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150820

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150831

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160708

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160719

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160803

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: 20170124

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170206

R150 Certificate of patent or registration of utility model

Ref document number: 6098066

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees