JP2014041412A5 - Printing apparatus, additional embedded software processing apparatus, and additional embedded software execution control method - Google Patents

Printing apparatus, additional embedded software processing apparatus, and additional embedded software execution control method Download PDF

Info

Publication number
JP2014041412A5
JP2014041412A5 JP2012182245A JP2012182245A JP2014041412A5 JP 2014041412 A5 JP2014041412 A5 JP 2014041412A5 JP 2012182245 A JP2012182245 A JP 2012182245A JP 2012182245 A JP2012182245 A JP 2012182245A JP 2014041412 A5 JP2014041412 A5 JP 2014041412A5
Authority
JP
Japan
Prior art keywords
time
data
reading
waiting time
preparation request
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.)
Granted
Application number
JP2012182245A
Other languages
Japanese (ja)
Other versions
JP2014041412A (en
JP6098066B2 (en
Filing date
Publication date
Application filed filed Critical
Priority to JP2012182245A priority Critical patent/JP6098066B2/en
Priority claimed from JP2012182245A external-priority 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

Description

PCIバスの制御装置PCI bus control device

本発明はPCIバス(Peripheral Component Interconnect Bus)を使用し、複数のデバイスをマザーボード(ホスト制御部)に接続してデータの授受を行うPCIバスの制御装置に関する。   The present invention relates to a PCI bus control device that uses a PCI bus (Peripheral Component Interconnect Bus) and connects a plurality of devices to a mother board (host control unit) to exchange 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.

そこで、本発明はリトライ発生後の2度目以降のマザーボード側へのアクセスを開始するタイミングを調整し、より短い時間でデータの転送を完了することができるタイミングを設定するPCIバスの制御装置を提供するものである。   In view of this, the present invention provides a PCI bus control device that adjusts the timing for starting the second or subsequent access to the motherboard after a retry occurs and sets the timing at which data transfer can be completed in a shorter time. To do.

上記課題は本発明によれば、ホスト制御部に対して該ホスト制御部のメモリからのデータ読み出し準備をさせる準備要求手段と、前記メモリからデータ読み出しを開始する読出開始手段と、前記準備要求手段による準備要求から前記読出開始手段による読み出しの開始までの間の待ち時間を待機時間として記憶する記憶手段と、前記待機時間を順次変化させながら、前記準備要求手段による準備要求と前記読出開始手段による読み出しの開始とを実行し、所定量のデータの読み出しが完了するまでの時間を該順次変化させた待機時間ごとにそれぞれ測定する測定手段と、前記測定手段により測定された時間のうちで最も短かい時間で前記所定量のデータの読み出しが完了した際の待機時間を導出する導出手段と、前記記憶手段に記憶している待機時間を前記導出手段により導出された待機時間によって更新する更新手段と、を有するPCIバスの制御装置を提供することによって達成できる。
また、上記課題は本発明によれば、ホスト制御部に対して該ホスト制御部のメモリからのデータ読み出し準備をさせる準備要求処理と、前記メモリからデータ読み出しを開始する読出開始処理と、前記準備要求処理において準備要求されてから前記読出開始処理において読み出し開始されるまでの間の待ち時間を待機時間として記憶する記憶処理と、前記待機時間を順次変化させながら、前記準備要求処理における準備要求と前記読出開始処理における読み出し開始とを実行し、所定量のデータの読み出しが完了するまでの時間を該順次変化させた待機時間ごとにそれぞれ測定する測定処理と、前記測定処理において測定された時間のうちで最も短かい時間で前記所定量のデータの読み出しが完了した際の待機時間を導出する導出処理と、前記記憶処理において記憶されている待機時間を前記導出処理により導出された待機時間によって更新する更新処理と、を有するPCIバスの制御方法を提供することによって達成できる。
According to the present invention, the above-described problem is a preparation request unit that causes the host control unit to prepare to read data from the memory of the host control unit, a read start unit that starts reading data from the memory, and the preparation request unit. A storage means for storing a waiting time from a preparation request by the start of reading by the reading start means as a standby time, a preparation request by the preparation request means and a read start means while sequentially changing the standby time Reading means, and measuring means for measuring the time until reading of a predetermined amount of data is completed for each waiting time that has been sequentially changed, and the shortest of the times measured by the measuring means Deriving means for deriving a waiting time when the reading of the predetermined amount of data is completed in the time required and stored in the storage means And updating means for the machine time is updated by the waiting time derived by said deriving means can be achieved by providing a control device of the PCI bus with.
According to the present invention, the above-described problem is a preparation request process for causing the host control unit to prepare for reading data from the memory of the host control unit, a read start process for starting data reading from the memory, and the preparation A storage process for storing a waiting time from when a preparation request is made in a request process until a reading start is started in the reading start process, and a preparation request in the preparation request process while sequentially changing the waiting time; A reading process in the reading start process, and a measurement process for measuring the time until reading of a predetermined amount of data is completed for each of the sequentially changed waiting times, and a time period measured in the measurement process. A derivation process for deriving a waiting time when reading of the predetermined amount of data is completed in the shortest time, The waiting time stored in the storage process and the updating process for updating the waiting time derived by the derivation process can be achieved by providing a method of controlling the PCI bus with.

本発明によれば、マザーボード側からリトライ応答が行われた後、再度のリードアクセスの要求タイミングを調整し、メモリからのデータ転送の終了時間が最も短くなるアクセスタイミングを設定することによって、マザーボード上のメモリからのデータ転送を効率よく行うことができる。   According to the present invention, after a retry response is made from the motherboard side, the read access request timing is adjusted again, and the access timing at which the end time of data transfer from the memory is minimized is set on the motherboard. Data transfer from the memory can be performed efficiently.

本実施形態の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 (5)

ホスト制御部に対して該ホスト制御部のメモリからのデータ読み出し準備をさせる準備要求手段と、
前記メモリからデータ読み出しを開始する読出開始手段と、
前記準備要求手段による準備要求から前記読出開始手段による読み出しの開始までの間の待ち時間を待機時間として記憶する記憶手段と、
前記待機時間を順次変化させながら、前記準備要求手段による準備要求と前記読出開始手段による読み出しの開始とを実行し、所定量のデータの読み出しが完了するまでの時間を該順次変化させた待機時間ごとにそれぞれ測定する測定手段と、
前記測定手段により測定された時間のうちで最も短かい時間で前記所定量のデータの読み出しが完了した際の待機時間を導出する導出手段と、
前記記憶手段に記憶している待機時間を前記導出手段により導出された待機時間によって更新する更新手段と、
を有することを特徴とするPCIバスの制御装置。
Preparation request means for causing the host control unit to prepare for reading data from the memory of the host control unit;
Reading start means for starting data reading from the memory;
Storage means for storing a waiting time from the preparation request by the preparation request means to the start of reading by the reading start means as a standby time;
The waiting time in which the preparation request by the preparation request unit and the reading start by the reading start unit are executed while the waiting time is sequentially changed, and the time until the reading of a predetermined amount of data is completed is sequentially changed. Measuring means for measuring each and every
Deriving means for deriving a waiting time when reading of the predetermined amount of data is completed in the shortest time among the times measured by the measuring means;
Updating means for updating the waiting time stored in the storage means with the waiting time derived by the deriving means;
And a PCI bus control device.
前記測定手段により測定される時間と前記測定手段において前記待機時間を変化させながら測定する際の変化時間との単位は、単位時間間隔で繰り返し発生するクロック信号の発生回数に基づくことを特徴とする請求項1に記載のPCIバスの制御装置。 The unit of the time measured by the measuring means and the change time when measuring while changing the waiting time in the measuring means is based on the number of occurrences of the clock signal repeatedly generated at unit time intervals. The PCI bus control device according to claim 1. 前記ホスト制御部が前記準備要求手段による準備要求を受信した際及び前記待機時間中に前記読出開始手段による読み出しの開始を前記ホスト制御部が受信した際に前記ホスト制御部から送信される通知は、前記メモリへの読み出しの要求に対して準備中であることを示すリトライ応答であることを特徴とする請求項1、又は2に記載のPCIバスの制御装置。 A notification transmitted from the host control unit when the host control unit receives a preparation request from the preparation request unit and when the host control unit receives a read start by the read start unit during the waiting time. 3. The PCI bus control device according to claim 1, wherein the response is a retry response indicating that a read request to the memory is being prepared . 前記メモリから読み出すデータ印刷装置の印字ヘッドへ転送するためのビデオデータであり、予め前記導出手段により導出された待機時間を前記準備要求手段による準備要求から前記読出開始手段による読み出しの開始までの間の待ち時間として設定することで、前記ビデオデータの読み出し時間を最短にすることを特徴とする請求項1、2、又は3に記載のPCIバスの制御装置。 Data read out from said memory is a video data to be transferred to Printout head of the printing apparatus, the start of reading by the read start means the waiting time that is derived by previously said deriving means from the preparation request by said preparation request means 4. The PCI bus control device according to claim 1, wherein the video data reading time is set to a minimum by setting the waiting time as a waiting time . ホスト制御部に対して該ホスト制御部のメモリからのデータ読み出し準備をさせる準備要求処理と、
前記メモリからデータ読み出しを開始する読出開始処理と、
前記準備要求処理において準備要求されてから前記読出開始処理において読み出し開始されるまでの間の待ち時間を待機時間として記憶する記憶処理と、
前記待機時間を順次変化させながら、前記準備要求処理における準備要求と前記読出開始処理における読み出し開始とを実行し、所定量のデータの読み出しが完了するまでの時間を該順次変化させた待機時間ごとにそれぞれ測定する測定処理と、
前記測定処理において測定された時間のうちで最も短かい時間で前記所定量のデータの読み出しが完了した際の待機時間を導出する導出処理と、
前記記憶処理において記憶されている待機時間を前記導出処理により導出された待機時間によって更新する更新処理と、
を有することを特徴とするPCIバスの制御方法。
A preparation request process for preparing the host controller to read data from the memory of the host controller;
A read start process for starting data read from the memory;
A storage process for storing, as a waiting time, a waiting time from when a preparation request is made in the preparation request process to when reading is started in the read start process;
For each waiting time in which the preparation request in the preparation request processing and the reading start in the reading start processing are executed while the waiting time is sequentially changed, and the time until the reading of a predetermined amount of data is completed is sequentially changed. Measuring process to measure each
A derivation process for deriving a waiting time when reading of the predetermined amount of data is completed in the shortest time among the times measured in the measurement process;
An update process for updating the standby time stored in the storage process with the standby time derived by the derivation process;
A method of controlling a PCI bus, 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 true JP2014041412A5 (en) 2015-10-15
JP6098066B2 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

Similar Documents

Publication Publication Date Title
JP4840455B2 (en) Field control system
EP2367112A1 (en) Information processing apparatus, image forming apparatus, and information processing program
KR20160107247A (en) Camera control interface extension with in-band interrupt
US20150120982A1 (en) Multi-channel universal serial bus (usb) to subrate channel systems and methods
EP2423824B1 (en) Data transfer device, method of transferring data, and image forming apparatus
JP2008502976A (en) Bus controller for processing split transactions
US20120140286A1 (en) Data transmission apparatus, printer, information processing apparatus, and control method therefor
KR20160047484A (en) Method to minimize the number of irq lines from peripherals to one wire
JP6175794B2 (en) Data processing apparatus and data processing method
CN112667483B (en) Memory information reading device and method for server mainboard and server
US20160232124A1 (en) Methods and apparatus for rapid switching of hardware configurations with a speed limited bus
JP6098066B2 (en) PCI bus control system and PCI bus control method
JP2014041412A5 (en) Printing apparatus, additional embedded software processing apparatus, and additional embedded software execution control method
US20180173657A1 (en) Automatic transmission of dummy bits in bus master
CN115794713A (en) AXI bus read-write transaction balancing method, device, electronic equipment and medium
JP4499235B2 (en) PCI bus compatible masters and arbiters and arbitration methods
US7302508B2 (en) Apparatus and method for high speed data transfer
JP2001256179A (en) Processor system
CN102668444B (en) Information processing apparatus or information processing method
US9413355B2 (en) Information processing apparatus and control method therefor
JP5111940B2 (en) Information processing apparatus and access control method
JP7226084B2 (en) Information processing equipment
JP5850724B2 (en) Data processing apparatus and control method thereof
WO2012093475A1 (en) Information transfer device and information transfer method of information transfer device
JP2004213255A (en) Controlling method for pci bus