Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP6234213B2 - Data transfer control device, data transfer control method, and data processing device - Google Patents
[go: Go Back, main page]

JP6234213B2 - Data transfer control device, data transfer control method, and data processing device - Google Patents

Data transfer control device, data transfer control method, and data processing device Download PDF

Info

Publication number
JP6234213B2
JP6234213B2 JP2013264565A JP2013264565A JP6234213B2 JP 6234213 B2 JP6234213 B2 JP 6234213B2 JP 2013264565 A JP2013264565 A JP 2013264565A JP 2013264565 A JP2013264565 A JP 2013264565A JP 6234213 B2 JP6234213 B2 JP 6234213B2
Authority
JP
Japan
Prior art keywords
transfer
data
unit
buffer
control
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
JP2013264565A
Other languages
Japanese (ja)
Other versions
JP2015121893A (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.)
Olympus Corp
Original Assignee
Olympus Corp
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 Olympus Corp filed Critical Olympus Corp
Priority to JP2013264565A priority Critical patent/JP6234213B2/en
Publication of JP2015121893A publication Critical patent/JP2015121893A/en
Application granted granted Critical
Publication of JP6234213B2 publication Critical patent/JP6234213B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)
  • Bus Control (AREA)
  • Information Transfer Systems (AREA)

Description

本発明は、データ転送制御装置、データ転送制御方法、およびデータ処理装置に関する。   The present invention relates to a data transfer control device, a data transfer control method, and a data processing device.

デジタルカメラなどの撮像装置に搭載され、画像処理を行うシステムLSIなどのデータ処理装置では、撮像装置内に備えられ、データ処理装置に接続された1つのDRAM(Dynamic Random Access Memory)を、データ処理装置に内蔵する複数の処理ブロック(以下、「イニシエータ」という)が共有している。多くのデータ処理装置では、内蔵している複数のイニシエータが、データ処理装置の内部のデータバス(以下、「インターコネクトバス」という)に接続され、インターコネクトバスに接続されたそれぞれのイニシエータは、DMA(Direct Memory Access)によって、DRAMに対するアクセスを行う。   In a data processing apparatus such as a system LSI that is mounted on an imaging apparatus such as a digital camera and performs image processing, a single DRAM (Dynamic Random Access Memory) that is provided in the imaging apparatus and connected to the data processing apparatus is subjected to data processing. A plurality of processing blocks (hereinafter referred to as “initiator”) built in the apparatus are shared. In many data processing apparatuses, a plurality of built-in initiators are connected to a data bus (hereinafter referred to as an “interconnect bus”) inside the data processing apparatus, and each initiator connected to the interconnect bus has a DMA ( The DRAM is accessed by Direct Memory Access).

近年、デジタルカメラの高性能化と多機能化が進み、データ処理装置の処理性能が、飛躍的に向上している。このため、数多くの動作モードを備えるデータ処理装置では、動作モードに応じた処理を実行する際に、アクセスするDRAMのバス帯域を確保することが困難になってきている。特に、静止画像と動画像とを同時に撮影するなど、多くの画像データを高速で処理し続ける必要がある画像処理のケースでは、その動作モードに応じて複数のイニシエータが異なる動作を行うため、動作が異なる複数のイニシエータからのDRAMへのアクセス要求を調停してDRAMのバス帯域を確保しながら、イメージセンサから入力された画像データをリアルタイムにDRAMに転送する必要がある。   In recent years, digital cameras have become more sophisticated and multifunctional, and the processing performance of data processing devices has been dramatically improved. For this reason, in a data processing apparatus having a large number of operation modes, it has become difficult to ensure the bus bandwidth of the DRAM to be accessed when executing processing according to the operation modes. In particular, in the case of image processing that needs to continue processing a large amount of image data at high speed, such as shooting still images and moving images simultaneously, multiple initiators perform different operations depending on the operation mode. It is necessary to transfer image data input from the image sensor to the DRAM in real time while arbitrating access requests to the DRAM from a plurality of different initiators to secure the DRAM bus bandwidth.

一般的に、データ処理装置では、内蔵したバス調停部(例えば、バスアービタなど)によって、それぞれのイニシエータから発せられるDRAMへのアクセス要求の適切な調停と、DRAMへのアクセスの最適化とを行って、DRAMのバス帯域を確保している。しかしながら、DRAMには、あるメモリアドレスに対して1回アクセスをした後、このメモリアドレスを含む同一のメモリバンクには、一定時間の間アクセスすることができないという動作的な制約がある。つまり、同一のメモリバンクに対して連続してアクセスする場合、アクセスを受け付けられない期間が存在してしまう。このため、DRAMに対するアクセスの総負荷が高い状況では、あるイニシエータがDRAMにアクセスしようとすると、DRAMの動作的な制約(以下、「バンク衝突」という)によって、DRAMにアクセスすることができない待ち時間が発生してしまうことがある。   In general, in a data processing apparatus, a built-in bus arbitration unit (for example, a bus arbiter) performs appropriate arbitration of access requests to DRAMs issued from respective initiators and optimization of access to DRAMs. DRAM bus bandwidth is secured. However, the DRAM has an operational restriction that, after a certain memory address is accessed once, the same memory bank including this memory address cannot be accessed for a certain period of time. That is, when accessing the same memory bank continuously, there is a period during which access cannot be accepted. Therefore, in a situation where the total load of access to the DRAM is high, when a certain initiator tries to access the DRAM, a waiting time during which the DRAM cannot be accessed due to operational restrictions of the DRAM (hereinafter referred to as “bank collision”). May occur.

そこで、従来から、発生した待ち時間を有効利用する技術が開示されている。例えば、特許文献1に開示された技術では、DRAMに対するリフレッシュ動作を、この待ち時間のときに実行することによって、同一のメモリバンクに対して連続してアクセスする場合に発生する待ち時間を有効利用している。   Therefore, conventionally, a technique for effectively using the generated waiting time has been disclosed. For example, in the technique disclosed in Patent Document 1, a refresh operation for a DRAM is executed during this waiting time, thereby effectively using the waiting time that occurs when the same memory bank is continuously accessed. doing.

しかしながら、特許文献1に開示された技術では、同一のメモリバンクに対して連続してアクセスする場合に発生する待ち時間中に他の動作を行うことによって、DRAMに対するアクセスを有効に活用することはできるが、DRAMとの間でデータをやり取りするためのバス帯域を確保することはできない。従って、この技術をデータ処理装置に適用した場合でも、DRAMに対するアクセスの総負荷が高い状況においてリアルタイムに画像データを転送するなどのリアルタイム処理を実行するイニシエータが、DRAMのバス帯域を確保することが困難である、という問題は依然として残ってしまう。   However, in the technique disclosed in Patent Document 1, it is not possible to effectively use access to the DRAM by performing other operations during the waiting time that occurs when the same memory bank is continuously accessed. Although it is possible, a bus band for exchanging data with the DRAM cannot be secured. Therefore, even when this technology is applied to a data processing device, an initiator that executes real-time processing such as transferring image data in real time under a situation where the total load of access to the DRAM is high may secure the DRAM bus bandwidth. The problem of being difficult remains.

このため、DRAMに対するアクセスの総負荷が高くなることが想定されるシステムにおいて、それぞれのイニシエータから発せられるDRAMへのアクセス要求とDRAMに転送する転送データとを一旦バッファなどの内蔵メモリに蓄積する、データ転送制御装置の技術もある。この技術をデータ処理装置に適用すると、蓄積した転送データをDRAMに転送する際に、同一のメモリバンクに対する連続したアクセスを回避するように、DRAMへのアクセス要求と転送データとの順序を組み替えることができる。このDRAMへのアクセス要求と転送データとの順序の組み替えによって、同一のメモリバンクに対する連続したアクセスをなくし、バンク衝突によって発生する待ち時間を回避することができる。   For this reason, in a system in which the total load of access to the DRAM is assumed to be high, an access request to the DRAM issued from each initiator and transfer data transferred to the DRAM are temporarily stored in a built-in memory such as a buffer. There is also a technology for data transfer control devices. When this technology is applied to a data processing device, when transferring the stored transfer data to the DRAM, the order of the access request to the DRAM and the transfer data is rearranged so as to avoid continuous access to the same memory bank. Can do. By rearranging the order of the access request to the DRAM and the transfer data, it is possible to eliminate the continuous access to the same memory bank and avoid the waiting time caused by the bank collision.

特開2004−295976号公報JP 2004-295976 A

しかしながら、データ処理装置に備えた複数のイニシエータから発せられるDRAMへのアクセス要求とDRAMに転送する転送データとを一旦蓄積するためには、データ転送制御装置内に大容量の内蔵メモリを備える必要がある。これは、例えば、内蔵するイニシエータの数が多く(例えば、数十個など)、動作モードによってそれぞれのイニシエータがDRAMにアクセスする状況が大きく異なるシステムでは、それぞれのイニシエータに、バンク衝突によって発生する待ち時間を吸収するために必要な容量分の内蔵メモリを備える必要があるからである。   However, in order to temporarily store access requests to the DRAM issued from a plurality of initiators provided in the data processing device and transfer data transferred to the DRAM, it is necessary to provide a large-capacity built-in memory in the data transfer control device. is there. For example, in a system in which the number of built-in initiators is large (for example, several tens), and the situation in which each initiator accesses the DRAM varies greatly depending on the operation mode, each initiator has to wait for a bank collision. This is because it is necessary to provide a built-in memory having a capacity necessary for absorbing time.

このため、それぞれのイニシエータに多くの内蔵メモリを備えると、データ処理装置の回路規模が増大し、コストも増加してしまう、という問題がある。また、ハードウェアに搭載可能なメモリ容量にも制約がある場合もあり、この場合には、データ転送制御装置に必要な容量の内蔵メモリを備えることができないこともある。   For this reason, if each of the initiators includes a large number of built-in memories, there is a problem that the circuit scale of the data processing device increases and the cost also increases. In some cases, the memory capacity that can be mounted on the hardware is limited, and in this case, the data transfer control device may not be provided with a built-in memory that is necessary for the data transfer control apparatus.

本発明は、上記の課題認識に基づいてなされたものであり、回路規模の増大を抑えた上で、DRAMのバス帯域を確保し、DMAによる転送データの転送を円滑に行うことができるデータ転送制御装置、データ転送制御方法、およびデータ処理装置を提供することを目的としている。   The present invention has been made on the basis of the above-mentioned problem recognition, and is capable of ensuring the DRAM bus bandwidth and smoothly transferring transfer data by DMA while suppressing an increase in circuit scale. It is an object to provide a control device, a data transfer control method, and a data processing device.

上記の課題を解決するため、本発明のデータ転送制御装置は、共通バスを介してデータを転送する複数のデータ転送部のそれぞれに、前記共通バスを介して転送する転送データを出力するデータ転送制御装置であって、それぞれの前記データ転送部に対応し、該データ転送部のそれぞれに対応するデータ入力部から入力された前記転送データを、対応する前記データ転送部に出力する複数の転送制御部と、前記データ転送部のそれぞれが前記転送データを転送している状態を監視し、該監視した前記データ転送部のそれぞれの前記転送データの転送状態に基づいて、それぞれの前記転送制御部における前記転送データの対応する前記データ転送部への出力を制御する転送制御情報を出力するデータ転送状態監視部と、を備え、複数の前記転送制御部の内、少なくとも1つの前記転送制御部は、対応する前記データ転送部の前記転送制御情報に基づいて、該データ転送部によって転送する前記転送データを、該データ転送部によって転送する前記転送データと他の前記転送制御部が対応する他の前記データ転送部によって転送する前記転送データとに振り分けて出力し、前記転送データが振り分けられた、少なくとも1つの他の前記転送制御部は、振り分けられた前記転送データを、対応する前記データ転送部の前記転送制御情報に基づいて、該対応する前記データ転送部に出力し、複数の前記転送制御部のそれぞれは、対応する前記データ転送部が対応する前記データ入力部から入力された前記転送データを一時的に記憶する転送バッファ部と、前記転送制御情報に基づいて、前記転送バッファ部に記憶された前記転送データを読み出して出力するバッファ制御部と、を備え、前記転送データを振り分ける前記転送制御部である第1の転送制御部に備えた前記転送バッファ部である第1の転送バッファ部は、当該第1の転送制御部が対応する前記データ転送部である第1のデータ転送部によって転送する前記転送データである第1の転送データを一時的に記憶し、当該第1の転送制御部に備えたバッファ制御部である第1のバッファ制御部は、前記第1のデータ転送部の前記転送制御情報である第1の転送制御情報に基づいて、前記第1の転送バッファ部から読み出した前記第1の転送データを、前記第1のデータ転送部によって転送する前記第1の転送データと他の前記転送制御部が対応する他の前記データ転送部によって転送する前記第1の転送データとに振り分けて出力し、前記第1の転送データが振り分けられた他の前記転送制御部である第2の転送制御部に備えた前記転送バッファ部である第2の転送バッファ部は、当該第2の転送制御部が対応する前記データ転送部である第2のデータ転送部によって転送する前記転送データである第2の転送データを一時的に記憶し、当該第2の転送制御部に備えたバッファ制御部である第2のバッファ制御部は、前記第1のバッファ制御部から前記第1の転送データが入力されていない場合には、前記第2のデータ転送部の前記転送制御情報である第2の転送制御情報に基づいて、前記第2の転送バッファ部から読み出した前記第2の転送データを前記第2のデータ転送部に出力し、前記第1のバッファ制御部から前記第1の転送データが入力された場合には、前記第2の転送制御情報に基づいて、該第1の転送データを前記第2のデータ転送部に出力し、
前記データ転送状態監視部は、前記第1のデータ転送部が前記第1の転送データを転送する際の制御信号に基づいて、該第1のデータ転送部における前記第1の転送データの転送待ち時間を監視し、該監視した前記第1の転送データの転送待ち時間が、予め定めた時間を超過した場合に、転送待ち時間が予め定めた時間を超過したことを表すタイムアウト信号を出力するデータ転送待ち時間監視部と、前記第1のデータ転送部が前記第1の転送データを転送する際の信号に基づいて、該第1のデータ転送部における前記第1の転送データの転送履歴と、前記第2のデータ転送部が前記第1の転送データまたは前記第2の転送データを転送する際の信号に基づいて、該第2のデータ転送部における前記第1の転送データまたは前記第2の転送データの転送履歴とを収集するアクセス履歴収集部と、を備え、前記アクセス履歴収集部は、前記データ転送待ち時間監視部が前記タイムアウト信号を出力した際に、収集した前記第1の転送データの転送履歴と前記第2の転送データの転送履歴とに基づいて、前記第1の転送データと前記第2の転送データとによって前記転送データを転送するための転送情報を前記第1のバッファ制御部に出力し、前記第1のバッファ制御部は、前記アクセス履歴収集部から出力された前記転送情報に基づいて、前記第1の転送データを、前記第1のデータ転送部と前記第2のバッファ制御部とに振り分けて出力する、ことを特徴とする。
In order to solve the above-described problem, the data transfer control device of the present invention provides a data transfer that outputs transfer data transferred via the common bus to each of a plurality of data transfer units that transfer data via the common bus. A plurality of transfer controls corresponding to each of the data transfer units and outputting the transfer data input from a data input unit corresponding to each of the data transfer units to the corresponding data transfer unit Each of the data transfer unit and the data transfer unit monitor the status of transferring the transfer data, and based on the transfer status of the transfer data of the monitored data transfer unit, A data transfer state monitoring unit that outputs transfer control information for controlling output of the transfer data to the corresponding data transfer unit, and a plurality of the transfers The at least one transfer control unit among the control units transfers the transfer data transferred by the data transfer unit based on the transfer control information of the corresponding data transfer unit by the data transfer unit. At least one other transfer control unit to which the data is distributed and output to the transfer data transferred by another data transfer unit corresponding to the other transfer control unit, and the transfer data is distributed, is distributed The transferred data is output to the corresponding data transfer unit based on the transfer control information of the corresponding data transfer unit, and each of the plurality of transfer control units includes a corresponding data transfer unit. Based on the transfer control information, a transfer buffer unit that temporarily stores the transfer data input from the corresponding data input unit, A buffer control unit that reads and outputs the transfer data stored in the transmission buffer unit, and is a transfer buffer unit included in the first transfer control unit that is the transfer control unit that distributes the transfer data. The first transfer buffer unit temporarily stores the first transfer data that is the transfer data transferred by the first data transfer unit that is the data transfer unit to which the first transfer control unit corresponds, and The first buffer control unit, which is a buffer control unit provided in the first transfer control unit, is configured based on the first transfer control information that is the transfer control information of the first data transfer unit. The first transfer data read from the transfer buffer unit is transferred by the first data transfer unit transferred by the first data transfer unit and another data transfer unit corresponding to another transfer control unit. The transfer buffer unit included in the second transfer control unit, which is the other transfer control unit to which the first transfer data is distributed, is distributed and output to the first transfer data to be transferred. The second transfer buffer unit temporarily stores the second transfer data that is the transfer data transferred by the second data transfer unit that is the data transfer unit to which the second transfer control unit corresponds, and The second buffer control unit, which is a buffer control unit included in the second transfer control unit, is configured to receive the second data when the first transfer data is not input from the first buffer control unit. Based on the second transfer control information that is the transfer control information of the transfer unit, the second transfer data read from the second transfer buffer unit is output to the second data transfer unit, and the first data transfer unit Buffer control part of Wherein when the first transfer data is input, based on said second transfer control information, and outputs the transfer data of the first to the second data transfer unit,
The data transfer state monitoring unit waits for the transfer of the first transfer data in the first data transfer unit based on a control signal when the first data transfer unit transfers the first transfer data. Data for monitoring time and outputting a time-out signal indicating that the transfer waiting time exceeds a predetermined time when the transfer waiting time of the monitored first transfer data exceeds a predetermined time Based on a signal when the transfer waiting time monitoring unit and the first data transfer unit transfer the first transfer data, a transfer history of the first transfer data in the first data transfer unit, Based on a signal when the second data transfer unit transfers the first transfer data or the second transfer data, the first transfer data or the second transfer data in the second data transfer unit Transfer An access history collection unit that collects the transfer history of the data, and the access history collection unit collects the first transfer data collected when the data transfer wait time monitoring unit outputs the timeout signal. Based on the transfer history and the transfer history of the second transfer data, transfer information for transferring the transfer data by the first transfer data and the second transfer data is transferred to the first buffer control unit. The first buffer control unit outputs the first transfer data to the first data transfer unit and the second buffer based on the transfer information output from the access history collection unit. The output is distributed to the control unit .

また、本発明の前記データ転送状態監視部は、前記第1のデータ転送部が前記第1の転送データを転送する際の制御信号に基づいて、該第1のデータ転送部における前記第1の転送データの転送の負荷を監視し、該監視した前記第1の転送データの転送負荷と予め定めた負荷の大きさとを比較することによって負荷の分散を行うか否かを判定し、該判定した結果に基づいて前記第1のデータ転送部における転送負荷を分散するための負荷分散指示を出力する転送負荷状態監視部、を備え、前記第1のバッファ制御部は、前記転送負荷状態監視部から出力された前記負荷分散指示に基づいて、前記第1の転送データを、前記第1のデータ転送部と前記第2のバッファ制御部とに振り分けて出力する、ことを特徴とする。   Further, the data transfer state monitoring unit according to the present invention is configured so that the first data transfer unit includes the first data transfer unit based on a control signal when the first data transfer unit transfers the first transfer data. The transfer load of the transfer data is monitored, and it is determined whether or not to distribute the load by comparing the monitored transfer load of the first transfer data with a predetermined load size. A transfer load state monitoring unit that outputs a load distribution instruction for distributing a transfer load in the first data transfer unit based on a result, and the first buffer control unit includes: Based on the output load distribution instruction, the first transfer data is distributed and output to the first data transfer unit and the second buffer control unit.

また、本発明の前記データ転送状態監視部は、前記第1のデータ転送部が前記第1の転送データを転送する際の制御信号に基づいて、前記第1の転送バッファ部の記憶容量の残量を監視し、該監視した記憶容量の残量に応じて、前記第1のデータ転送部における転送負荷を分散するための負荷分散指示を出力する転送バッファ残量監視部、を備え、前記第1のバッファ制御部は、前記転送バッファ残量監視部から出力された前記負荷分散指示に基づいて、前記第1の転送データを、前記第1のデータ転送部と前記第2のバッファ制御部とに振り分けて出力する、ことを特徴とする。   Further, the data transfer state monitoring unit of the present invention is configured to store the remaining storage capacity of the first transfer buffer unit based on a control signal when the first data transfer unit transfers the first transfer data. A transfer buffer remaining amount monitoring unit that monitors the amount and outputs a load distribution instruction for distributing the transfer load in the first data transfer unit according to the monitored remaining capacity of the storage capacity, The first buffer control unit sends the first transfer data to the first data transfer unit and the second buffer control unit based on the load distribution instruction output from the transfer buffer remaining amount monitoring unit. It is characterized in that it is sorted and output.

また、本発明の前記データ転送状態監視部は、設定された動作モードに応じて、前記第1の転送データを転送する際の前記第1の転送データの経路を決定し、該決定した結果に基づいて前記第1の転送データを転送する経路を表す経路選択指示を出力するモード設定部、を備え、前記第1のバッファ制御部は、前記モード設定部から出力された前記経路選択指示に基づいて、前記第1の転送データを、前記第1のデータ転送部と前記第2のバッファ制御部とに振り分けて出力する、ことを特徴とする。   Further, the data transfer state monitoring unit of the present invention determines a path of the first transfer data when transferring the first transfer data according to a set operation mode, and determines the result of the determination. Based on the route selection instruction output from the mode setting unit. The mode setting unit outputs a route selection instruction representing a route for transferring the first transfer data based on the mode setting unit. The first transfer data is distributed and output to the first data transfer unit and the second buffer control unit.

また、本発明のデータ転送制御方法は、それぞれが転送バッファ部及びバッファ制御部を有する複数の転送制御部と、データ転送待ち時間監視部及びアクセス履歴収集部を有するデータ転送状態監視部とを備え、共通バスを介してデータを転送する複数のデータ転送部のそれぞれに、前記共通バスを介して転送する転送データを出力するデータ転送制御装置におけるデータ転送制御方法であって、複数の転送制御部が、それぞれの前記データ転送部に対応し、該データ転送部のそれぞれに対応するデータ入力部から入力された前記転送データを、対応する前記データ転送部に出力する複数の転送制御手順と、データ転送状態監視部が、前記データ転送部のそれぞれが前記転送データを転送している状態を監視し、該監視した前記データ転送部のそれぞれの前記転送データの転送状態に基づいて、それぞれの前記転送制御手順における前記転送データの対応する前記データ転送部への出力を制御する転送制御情報を出力するデータ転送状態監視手順と、を含み、複数の前記転送制御手順の内、少なくとも1つの前記転送制御手順は、対応する前記データ転送部の前記転送制御情報に基づいて、該データ転送部によって転送する前記転送データを、該データ転送部によって転送する前記転送データと他の前記転送制御手順が対応する他の前記データ転送部によって転送する前記転送データとに振り分けて出力し、前記転送データが振り分けられた、少なくとも1つの他の前記転送制御手順は、振り分けられた前記転送データを、対応する前記データ転送部の前記転送制御情報に基づいて、該対応する前記データ転送部に出力し、複数の前記転送制御手順のそれぞれは、前記転送制御部が、対応する転送バッファ部に、対応する前記データ転送部が対応する前記データ入力部から入力された前記転送データを一時的に記憶させる転送バッファ手順と、対応するバッファ制御部が、前記転送制御情報に基づいて、対応する前記転送バッファ部に記憶された前記転送データを読み出して出力するバッファ制御手順と、を含み、前記転送データを振り分ける前記転送制御手順である第1の転送制御手順に含まれる前記転送バッファ手順である第1の転送バッファ手順は、当該第1の転送制御手順が対応する前記データ転送部である第1のデータ転送部によって転送する前記転送データである第1の転送データを対応する前記転送バッファ部に一時的に記憶させ、当該第1の転送制御手順に含まれるバッファ制御手順である第1のバッファ制御手順は、前記第1のデータ転送部の前記転送制御情報である第1の転送制御情報に基づいて、前記第1の転送バッファ手順に対応する前記転送バッファ部から読み出した前記第1の転送データを、前記第1のデータ転送部によって転送する前記第1の転送データと他の前記転送制御手順が対応する他の前記データ転送部によって転送する前記第1の転送データとに振り分けて出力し、前記第1の転送データが振り分けられた他の前記転送制御手順である第2の転送制御手順に含まれる前記転送バッファ手順である第2の転送バッファ手順は、当該第2の転送制御手順が対応する前記データ転送部である第2のデータ転送部によって転送する前記転送データである第2の転送データを対応する前記転送バッファ部に一時的に記憶させ、当該第2の転送制御手順に含まれるバッファ制御手順である第2のバッファ制御手順は、前記第1のバッファ制御手順によって前記第1の転送データが入力されていない場合には、前記第2のデータ転送部の前記転送制御情報である第2の転送制御情報に基づいて、前記第2の転送バッファ手順に対応する前記転送バッファ部から読み出した前記第2の転送データを前記第2のデータ転送部に出力し、前記第1のバッファ制御手順によって前記第1の転送データが入力された場合には、前記第2の転送制御情報に基づいて、該第1の転送データを前記第2のデータ転送部に出力し、前記データ転送状態監視手順は、データ転送待ち時間監視部が、前記第1のデータ転送部が前記第1の転送データを転送する際の制御信号に基づいて、該第1のデータ転送部における前記第1の転送データの転送待ち時間を監視し、該監視した前記第1の転送データの転送待ち時間が、予め定めた時間を超過した場合に、転送待ち時間が予め定めた時間を超過したことを表すタイムアウト信号を出力するデータ転送待ち時間監視手順と、アクセス履歴収集部が、前記第1のデータ転送部が前記第1の転送データを転送する際の信号に基づいて、該第1のデータ転送部における前記第1の転送データの転送履歴と、前記第2のデータ転送部が前記第1の転送データまたは前記第2の転送データを転送する際の信号に基づいて、該第2のデータ転送部における前記第1の転送データまたは前記第2の転送データの転送履歴とを収集するアクセス履歴収集手順と、を含み、前記アクセス履歴収集手順は、前記データ転送待ち時間監視手順によって前記タイムアウト信号を出力した際に、収集した前記第1の転送データの転送履歴と前記第2の転送データの転送履歴とに基づいて、前記第1の転送データと前記第2の転送データとによって前記転送データを転送するための転送情報を前記第1のバッファ制御手順に対応する前記転送制御部に出力し、前記第1のバッファ制御手順は、前記アクセス履歴収集手順によって出力された前記転送情報に基づいて、前記第1の転送データを、前記第1のデータ転送部と前記第2のバッファ制御手順に対応する前記バッファ制御部とに振り分けて出力する、ことを特徴とする。 The data transfer control method of the present invention includes a plurality of transfer control units each having a transfer buffer unit and a buffer control unit, and a data transfer state monitoring unit having a data transfer waiting time monitoring unit and an access history collection unit. each of the plurality of data transfer unit for transferring data via a common bus, the common bus a data transfer control method in the data transfer control device for outputting the transfer data to be transferred via a plurality of transfer control unit Corresponding to each of the data transfer units, a plurality of transfer control procedures for outputting the transfer data input from the data input unit corresponding to each of the data transfer units to the corresponding data transfer unit, and data The transfer status monitoring unit monitors the status of each of the data transfer units transferring the transfer data, and the monitored data transfer unit A data transfer status monitoring procedure for outputting transfer control information for controlling the output of the transfer data to the corresponding data transfer unit in each of the transfer control procedures based on the transfer status of each of the transfer data. And at least one of the plurality of transfer control procedures includes transferring the transfer data transferred by the data transfer unit based on the transfer control information of the corresponding data transfer unit to the data transfer unit. At least one other transfer to which the transfer data is distributed and output to the transfer data to be transferred by the other data transfer unit corresponding to the other transfer control procedure. The control procedure is based on the transfer control information of the data transfer unit corresponding to the transferred data. Output to the data transfer unit to which the corresponding, each of the plurality of the transfer control procedure, the transfer control unit, the transfer buffer unit corresponding, input from the data input portion to which the data transfer unit corresponding the corresponding A transfer buffer procedure for temporarily storing the transfer data, and a buffer control for the corresponding buffer control unit to read out and output the transfer data stored in the corresponding transfer buffer unit based on the transfer control information The first transfer control procedure corresponds to the first transfer buffer procedure that is the transfer buffer procedure included in the first transfer control procedure that is the transfer control procedure that distributes the transfer data. The transfer buffer corresponding to the first transfer data which is the transfer data transferred by the first data transfer unit which is the data transfer unit A first buffer control procedure that is temporarily stored in the first transfer control procedure and that is a buffer control procedure included in the first transfer control procedure is a first transfer control that is the transfer control information of the first data transfer unit. Based on the information, the first transfer data read from the transfer buffer unit corresponding to the first transfer buffer procedure is transferred by the first data transfer unit and the other transfer data. The second transfer, which is another transfer control procedure to which the first transfer data is distributed, and is output after being distributed to the first transfer data transferred by another data transfer unit corresponding to the transfer control procedure. The second transfer buffer procedure which is the transfer buffer procedure included in the control procedure is transferred by the second data transfer unit which is the data transfer unit corresponding to the second transfer control procedure. The second transfer data which is the transfer data is temporarily stored in the corresponding transfer buffer unit, and the second buffer control procedure which is a buffer control procedure included in the second transfer control procedure is the first buffer control procedure. When the first transfer data is not input by the buffer control procedure, the second transfer buffer is based on the second transfer control information which is the transfer control information of the second data transfer unit. When the second transfer data read from the transfer buffer unit corresponding to the procedure is output to the second data transfer unit, and the first transfer data is input by the first buffer control procedure , Based on the second transfer control information, outputting the first transfer data to the second data transfer unit, the data transfer state monitoring procedure, the data transfer waiting time monitoring unit, The first data transfer unit monitors the transfer waiting time of the first transfer data in the first data transfer unit based on a control signal when the first transfer data is transferred, and the monitoring is performed. A data transfer waiting time monitoring procedure for outputting a time-out signal indicating that the transfer waiting time exceeds a predetermined time when the transfer waiting time of the first transfer data exceeds a predetermined time; A history collection unit configured to transfer a transfer history of the first transfer data in the first data transfer unit based on a signal when the first data transfer unit transfers the first transfer data; Based on a signal when the second data transfer unit transfers the first transfer data or the second transfer data, the first transfer data or the second transfer data in the second data transfer unit of An access history collecting procedure for collecting a transfer history, wherein the access history collecting procedure is configured to transfer a transfer history of the first transfer data collected when the timeout signal is output by the data transfer waiting time monitoring procedure. And transfer information for transferring the transfer data by the first transfer data and the second transfer data on the basis of the transfer history of the second transfer data and the second transfer data corresponding to the first buffer control procedure and outputs to the transfer control unit, the first buffer control procedure, based on the transfer information outputted by said access history collection procedure, the first transfer data, said first data transfer unit for It distributes and outputs to the said buffer control part corresponding to a said 2nd buffer control procedure, It is characterized by the above-mentioned.

また、本発明のデータ処理装置は、共通バスを介してデータを転送する複数のデータ転送部と、前記データ転送部のそれぞれに対応し、前記共通バスを介して転送する転送データを出力する複数のデータ入力部と、それぞれの前記データ転送部に対応し、該データ転送部のそれぞれに対応するデータ入力部から入力された前記転送データを、対応する前記データ転送部に出力する複数の転送制御部と、前記データ転送部のそれぞれが前記転送データを転送している状態を監視し、該監視した前記データ転送部のそれぞれの前記転送データの転送状態に基づいて、それぞれの前記転送制御部における前記転送データの対応する前記データ転送部への出力を制御する転送制御情報を出力するデータ転送状態監視部と、を具備したデータ転送制御装置と、を備え、前記データ転送制御装置に備えた複数の前記転送制御部の内、少なくとも1つの前記転送制御部は、対応する前記データ転送部の前記転送制御情報に基づいて、該データ転送部によって転送する前記転送データを、該データ転送部によって転送する前記転送データと他の前記転送制御部が対応する他の前記データ転送部によって転送する前記転送データとに振り分けて出力し、前記データ転送制御装置に備えた複数の前記転送制御部の内、前記転送データが振り分けられた、少なくとも1つの他の前記転送制御部は、振り分けられた前記転送データを、対応する前記データ転送部の前記転送制御情報に基づいて、該対応する前記データ転送部に出力し、前記データ転送制御装置に備えた複数の前記転送制御部のそれぞれは、対応する前記データ転送部が対応する前記データ入力部から入力された前記転送データを一時的に記憶する転送バッファ部と、前記転送制御情報に基づいて、前記転送バッファ部に記憶された前記転送データを読み出して出力するバッファ制御部と、を備え、前記転送データを振り分ける前記転送制御部である第1の転送制御部に備えた前記転送バッファ部である第1の転送バッファ部は、当該第1の転送制御部が対応する前記データ転送部である第1のデータ転送部によって転送する前記転送データである第1の転送データを一時的に記憶し、当該第1の転送制御部に備えたバッファ制御部である第1のバッファ制御部は、前記第1のデータ転送部の前記転送制御情報である第1の転送制御情報に基づいて、前記第1の転送バッファ部から読み出した前記第1の転送データを、前記第1のデータ転送部によって転送する前記第1の転送データと他の前記転送制御部が対応する他の前記データ転送部によって転送する前記第1の転送データとに振り分けて出力し、前記第1の転送データが振り分けられた他の前記転送制御部である第2の転送制御部に備えた前記転送バッファ部である第2の転送バッファ部は、当該第2の転送制御部が対応する前記データ転送部である第2のデータ転送部によって転送する前記転送データである第2の転送データを一時的に記憶し、当該第2の転送制御部に備えたバッファ制御部である第2のバッファ制御部は、前記第1のバッファ制御部から前記第1の転送データが入力されていない場合には、前記第2のデータ転送部の前記転送制御情報である第2の転送制御情報に基づいて、前記第2の転送バッファ部から読み出した前記第2の転送データを前記第2のデータ転送部に出力し、前記第1のバッファ制御部から前記第1の転送データが入力された場合には、前記第2の転送制御情報に基づいて、該第1の転送データを前記第2のデータ転送部に出力し、前記データ転送制御装置に備えた前記データ転送状態監視部は、前記第1のデータ転送部が前記第1の転送データを転送する際の制御信号に基づいて、該第1のデータ転送部における前記第1の転送データの転送待ち時間を監視し、該監視した前記第1の転送データの転送待ち時間が、予め定めた時間を超過した場合に、転送待ち時間が予め定めた時間を超過したことを表すタイムアウト信号を出力するデータ転送待ち時間監視部と、前記第1のデータ転送部が前記第1の転送データを転送する際の信号に基づいて、該第1のデータ転送部における前記第1の転送データの転送履歴と、前記第2のデータ転送部が前記第1の転送データまたは前記第2の転送データを転送する際の信号に基づいて、該第2のデータ転送部における前記第1の転送データまたは前記第2の転送データの転送履歴とを収集するアクセス履歴収集部と、を備え、前記アクセス履歴収集部は、前記データ転送待ち時間監視部が前記タイムアウト信号を出力した際に、収集した前記第1の転送データの転送履歴と前記第2の転送データの転送履歴とに基づいて、前記第1の転送データと前記第2の転送データとによって前記転送データを転送するための転送情報を前記第1のバッファ制御部に出力し、前記第1のバッファ制御部は、前記アクセス履歴収集部から出力された前記転送情報に基づいて、前記第1の転送データを、前記第1のデータ転送部と前記第2のバッファ制御部とに振り分けて出力する、ことを特徴とする。 The data processing apparatus of the present invention includes a plurality of data transfer units that transfer data via a common bus, and a plurality of data that correspond to each of the data transfer units and that output transfer data transferred via the common bus. A plurality of transfer controls corresponding to the data transfer units and outputting the transfer data input from the data input units corresponding to the data transfer units to the corresponding data transfer units. Each of the data transfer unit and the data transfer unit monitor the status of transferring the transfer data, and based on the transfer status of the transfer data of the monitored data transfer unit, A data transfer state monitoring unit that outputs transfer control information for controlling the output of the transfer data to the corresponding data transfer unit. And at least one of the plurality of transfer control units included in the data transfer control device is based on the transfer control information of the corresponding data transfer unit. The transfer data transferred by the data transfer unit is divided into the transfer data transferred by the data transfer unit and the transfer data transferred by another data transfer unit corresponding to the other transfer control unit, and the data transfer Among the plurality of transfer control units provided in the control device, at least one other transfer control unit to which the transfer data is distributed is configured to transfer the transferred data to the corresponding transfer unit. based on the control information, the corresponding output to the data transfer unit, wherein each of the plurality of the transfer control unit provided in the data transfer control device, pairs A transfer buffer unit that temporarily stores the transfer data input from the data input unit to which the data transfer unit corresponds, and the transfer data stored in the transfer buffer unit based on the transfer control information. A first transfer buffer unit that is the transfer buffer unit included in the first transfer control unit that is the transfer control unit that distributes the transfer data. Buffer control provided in the first transfer control unit temporarily stores the first transfer data that is the transfer data transferred by the first data transfer unit that is the data transfer unit to which the transfer control unit corresponds. The first buffer control unit that is a read unit reads from the first transfer buffer unit based on the first transfer control information that is the transfer control information of the first data transfer unit. The first transfer data transferred by the first data transfer unit corresponding to the first transfer data transferred by the first data transfer unit and the other data transfer unit corresponding to the other transfer control unit. The second transfer buffer unit that is the transfer buffer unit included in the second transfer control unit that is the other transfer control unit to which the first transfer data is distributed is The second transfer control unit temporarily stores the second transfer data which is the transfer data transferred by the second data transfer unit which is the corresponding data transfer unit, and is provided in the second transfer control unit. The second buffer control unit, which is a buffer control unit, uses the transfer control information of the second data transfer unit when the first transfer data is not input from the first buffer control unit. A second Based on the transfer control information, the second transfer data read from the second transfer buffer unit is output to the second data transfer unit, and the first transfer data is output from the first buffer control unit. When input, based on the second transfer control information, the first transfer data is output to the second data transfer unit, and the data transfer state monitoring unit provided in the data transfer control device Monitoring a transfer waiting time of the first transfer data in the first data transfer unit based on a control signal when the first data transfer unit transfers the first transfer data, A data transfer waiting time monitoring unit for outputting a time-out signal indicating that the transfer waiting time exceeds a predetermined time when the transfer waiting time of the monitored first transfer data exceeds a predetermined time; ,Previous Based on a signal when the first data transfer unit transfers the first transfer data, the transfer history of the first transfer data in the first data transfer unit, and the second data transfer unit Collecting the transfer history of the first transfer data or the second transfer data in the second data transfer unit based on a signal when transferring the first transfer data or the second transfer data An access history collection unit that performs the transfer history of the first transfer data collected when the data transfer waiting time monitoring unit outputs the timeout signal, and the second transfer history collection unit. Based on the transfer history of the transfer data, the transfer information for transferring the transfer data by the first transfer data and the second transfer data is output to the first buffer control unit, The first buffer control unit distributes the first transfer data to the first data transfer unit and the second buffer control unit based on the transfer information output from the access history collection unit. Output .

また、本発明のデータ処理装置は、前記データ転送制御装置を、前記データ転送部と、前記データ入力部との数に応じて数珠つなぎにし、それぞれのデータ転送制御装置に備えたデータ転送状態監視部は、対応する前記データ転送部のそれぞれの前記転送データの転送状態を監視して、当該データ転送制御装置に備えたそれぞれの前記転送制御部に前記転送制御情報を出力し、それぞれのデータ転送制御装置に備えた少なくとも1つの前記転送制御部は、前記転送制御情報に基づいて、対応する前記データ入力部から入力された前記転送データを、当該データ転送制御装置が対応する少なくとも1つの前記データ転送部に振り分ける、ことを特徴とする。   Further, the data processing device of the present invention is configured to connect the data transfer control devices in a daisy chain according to the number of the data transfer units and the data input units, and monitor the data transfer state provided in each data transfer control device. Each of the corresponding data transfer units monitors the transfer state of the transfer data, and outputs the transfer control information to each of the transfer control units provided in the data transfer control device. At least one of the transfer control units provided in the control device, based on the transfer control information, the transfer data input from the corresponding data input unit, and at least one of the data corresponding to the data transfer control device It is characterized by allocating to the transfer unit.

本発明によれば、回路規模の増大を抑えた上で、DRAMのバス帯域を確保し、DMAによる転送データの転送を円滑に行うことができるという効果が得られる。   According to the present invention, it is possible to obtain an effect of ensuring a DRAM bus band and smoothly transferring transfer data by DMA while suppressing an increase in circuit scale.

本発明の実施形態におけるデータ転送制御装置を備えたデータ処理装置の概略構成の一例を示したブロック図である。It is the block diagram which showed an example of schematic structure of the data processor provided with the data transfer control apparatus in embodiment of this invention. 本発明の第1の実施形態におけるデータ転送制御装置を備えたデータ処理装置の構成の一例を示したブロック図である。It is the block diagram which showed an example of the structure of the data processor provided with the data transfer control apparatus in the 1st Embodiment of this invention. 本第1の実施形態のデータ転送制御装置によるデータ転送動作の処理手順を示したフローチャートである。It is the flowchart which showed the process sequence of the data transfer operation | movement by the data transfer control apparatus of the 1st embodiment. 本発明の第2の実施形態におけるデータ転送制御装置を備えたデータ処理装置の構成の一例を示したブロック図である。It is the block diagram which showed an example of the structure of the data processor provided with the data transfer control apparatus in the 2nd Embodiment of this invention. 本第2の実施形態のデータ転送制御装置によるデータ転送動作の処理手順を示したフローチャートである。It is the flowchart which showed the process sequence of the data transfer operation | movement by the data transfer control apparatus of the 2nd embodiment. 本発明の第3の実施形態におけるデータ転送制御装置を備えたデータ処理装置の構成の一例を示したブロック図である。It is the block diagram which showed an example of the structure of the data processor provided with the data transfer control apparatus in the 3rd Embodiment of this invention. 本第3の実施形態のデータ転送制御装置によるデータ転送動作の処理手順を示したフローチャートである。It is the flowchart which showed the process sequence of the data transfer operation | movement by the data transfer control apparatus of the 3rd embodiment. 本発明の第4の実施形態におけるデータ転送制御装置を備えたデータ処理装置の構成の一例を示したブロック図である。It is the block diagram which showed an example of the structure of the data processor provided with the data transfer control apparatus in the 4th Embodiment of this invention. 本第4の実施形態のデータ転送制御装置によるデータ転送動作の処理手順を示したフローチャートである。It is the flowchart which showed the process sequence of the data transfer operation | movement by the data transfer control apparatus of the 4th embodiment. 本発明の第3の実施形態の変形例のデータ転送制御装置を備えたデータ処理装置の構成の一例を示したブロック図である。It is the block diagram which showed an example of the structure of the data processor provided with the data transfer control apparatus of the modification of the 3rd Embodiment of this invention. 本第3の実施形態の変形例のデータ転送制御装置によるデータ転送動作の処理手順を示したフローチャートである。10 is a flowchart illustrating a processing procedure of a data transfer operation by a data transfer control device according to a modification of the third embodiment. 本発明の実施形態におけるデータ転送制御装置を備えたデータ処理装置の概略構成の一例を示したブロック図である。It is the block diagram which showed an example of schematic structure of the data processor provided with the data transfer control apparatus in embodiment of this invention.

以下、本発明の実施形態について、図面を参照して説明する。本実施形態においては、本発明のデータ処理装置を、例えば、デジタルカメラなどの撮像装置に搭載され、画像処理を行うシステムLSIなどのデータ処理装置とし、このデータ処理装置に、本発明のデータ転送制御装置を適用した場合の一例について説明する。図1は、本実施形態におけるデータ転送制御装置を備えたデータ処理装置の概略構成の一例を示したブロック図である。図1に示したデータ処理装置1は、第1の画像データ入力部100と、第1のデータ転送部101と、第2の画像データ入力部200と、第2のデータ転送部201と、データ転送制御装置10と、を備えている。また、データ処理装置1内のデータ転送制御装置10は、第1の転送制御部110と、第2の転送制御部210と、データ転送状態監視部130と、を備えている。   Hereinafter, embodiments of the present invention will be described with reference to the drawings. In this embodiment, the data processing device of the present invention is a data processing device such as a system LSI that is mounted on an imaging device such as a digital camera and performs image processing, and the data transfer device of the present invention is transferred to this data processing device. An example when the control device is applied will be described. FIG. 1 is a block diagram illustrating an example of a schematic configuration of a data processing device including a data transfer control device according to the present embodiment. The data processing device 1 shown in FIG. 1 includes a first image data input unit 100, a first data transfer unit 101, a second image data input unit 200, a second data transfer unit 201, and a data A transfer control device 10. Further, the data transfer control device 10 in the data processing device 1 includes a first transfer control unit 110, a second transfer control unit 210, and a data transfer state monitoring unit 130.

図1に示したように、データ処理装置1に備えた第1のデータ転送部101と第2のデータ転送部201とのそれぞれは、データ処理装置1の内部のインターコネクトバス700に接続されている。そして、データ処理装置1は、第1のデータ転送部101と第2のデータ転送部201とのそれぞれが、データ処理装置1に備えた第1の画像データ入力部100および第2の画像データ入力部200から入力された画像データを、インターコネクトバス700を介して、例えば、DRAMなどの不図示のメモリに転送する。   As shown in FIG. 1, each of the first data transfer unit 101 and the second data transfer unit 201 included in the data processing device 1 is connected to an interconnect bus 700 inside the data processing device 1. . In the data processing device 1, the first data transfer unit 101 and the second data transfer unit 201 respectively include the first image data input unit 100 and the second image data input included in the data processing device 1. The image data input from the unit 200 is transferred to a memory (not shown) such as a DRAM via the interconnect bus 700.

このとき、データ転送制御装置10は、データ処理装置1が第1のデータ転送部101および第2のデータ転送部201によってメモリに転送する画像データを制御する。以下の説明においては、データ処理装置1に接続されたメモリがDRAMであるものとして説明を行う。   At this time, the data transfer control device 10 controls the image data that the data processing device 1 transfers to the memory by the first data transfer unit 101 and the second data transfer unit 201. In the following description, it is assumed that the memory connected to the data processing device 1 is a DRAM.

第1の画像データ入力部100および第2の画像データ入力部200のそれぞれは、インターコネクトバス700を介してDRAMに転送する画像データの供給源である。なお、以下の説明においては、第1の画像データ入力部100が、例えば、不図示のイメージセンサから入力された画像データを、リアルタイムにDRAMに転送する画像データの供給源であり、第2の画像データ入力部200が、不図示のイメージセンサから入力された画像データに応じて処理した画像データを、DRAMに転送する画像データの供給源であるものとして説明を行う。ここで、第2の画像データ入力部200が行う、不図示のイメージセンサから入力された画像データに応じた処理としては、例えば、黒レベル補正を施す前処理や、縮小画像を生成する画像生成処理や、自動露出(Auto Exposure:AE)、オートホワイトバランス(Auto White Balance:AWB)、自動焦点(Auto Focus:AF)などを制御するための評価値を生成する処理などが考えられる。   Each of the first image data input unit 100 and the second image data input unit 200 is a supply source of image data to be transferred to the DRAM via the interconnect bus 700. In the following description, the first image data input unit 100 is, for example, a supply source of image data that transfers image data input from an image sensor (not shown) to the DRAM in real time. The description will be made assuming that the image data input unit 200 processes image data processed according to image data input from an image sensor (not shown) as a supply source of image data to be transferred to the DRAM. Here, as processing according to image data input from an image sensor (not shown) performed by the second image data input unit 200, for example, pre-processing for performing black level correction, or image generation for generating a reduced image For example, processing for generating an evaluation value for controlling processing, automatic exposure (Auto Exposure: AE), auto white balance (Auto White Balance: AWB), automatic focusing (Auto Focus: AF), and the like can be considered.

以下の説明においては、第1の画像データ入力部100が供給する画像データ、すなわち、DRAMに転送する画像データを、「第1の転送データ」といい、第2の画像データ入力部200が供給する画像データを、「第2の転送データ」という。なお、第1の転送データと第2の転送データとを区別せずに表す場合には、単に「転送データ」という。   In the following description, the image data supplied by the first image data input unit 100, that is, the image data transferred to the DRAM is referred to as “first transfer data”, and is supplied by the second image data input unit 200. The image data to be processed is referred to as “second transfer data”. Note that when the first transfer data and the second transfer data are expressed without distinction, they are simply referred to as “transfer data”.

なお、図1に示したデータ処理装置1においては、第1の画像データ入力部100が第1のデータ転送部101に対応し、第2の画像データ入力部200が第2のデータ転送部201に対応している。つまり、図1には、1つのデータ転送部に対して1つ転送データの供給源が存在しているデータ処理装置の構成を示している。しかし、データ処理装置においては、1つのデータ転送部に対して複数の転送データの供給源が対応する構成であってもよい。   In the data processing apparatus 1 shown in FIG. 1, the first image data input unit 100 corresponds to the first data transfer unit 101, and the second image data input unit 200 corresponds to the second data transfer unit 201. It corresponds to. That is, FIG. 1 shows a configuration of a data processing apparatus in which one transfer data supply source exists for one data transfer unit. However, the data processing apparatus may have a configuration in which a plurality of transfer data supply sources correspond to one data transfer unit.

第1のデータ転送部101および第2のデータ転送部201のそれぞれは、対応する第1の画像データ入力部100または第2の画像データ入力部200から入力された転送データをインターコネクトバス700に出力することによって、それぞれの転送データをDMAによってDRAMに転送するイニシエータである。   Each of the first data transfer unit 101 and the second data transfer unit 201 outputs the transfer data input from the corresponding first image data input unit 100 or second image data input unit 200 to the interconnect bus 700. By doing so, it is an initiator that transfers each transfer data to the DRAM by DMA.

ただし、データ処理装置1では、データ転送制御装置10が、第1のデータ転送部101および第2のデータ転送部201によってDRAMに転送する転送データを制御する。従って、データ処理装置1では、第1のデータ転送部101および第2のデータ転送部201のそれぞれがDMAによってDRAMに転送する転送データが、データ転送制御装置10を介して入力される。なお、以下の説明においては、第1のデータ転送部101の方が、第2のデータ転送部201よりも優先度が高いイニシエータであるものとして説明を行う。   However, in the data processing device 1, the data transfer control device 10 controls transfer data transferred to the DRAM by the first data transfer unit 101 and the second data transfer unit 201. Therefore, in the data processing device 1, transfer data that each of the first data transfer unit 101 and the second data transfer unit 201 transfers to the DRAM by DMA is input via the data transfer control device 10. In the following description, it is assumed that the first data transfer unit 101 is an initiator having a higher priority than the second data transfer unit 201.

なお、それぞれのイニシエータが転送データをDMAによってDRAMに転送する際、イニシエータは、まず、DMAによるDRAMへのアクセスを要求するリクエスト信号をインターコネクトバス700に出力し、その後、DRAMに転送する転送データをインターコネクトバス700に出力する。   When each initiator transfers the transfer data to the DRAM by DMA, the initiator first outputs a request signal for requesting access to the DRAM by DMA to the interconnect bus 700, and then transfers the transfer data to be transferred to the DRAM. The data is output to the interconnect bus 700.

より具体的には、DRAMへのアクセス要求を行うイニシエータが、リクエスト信号をインターコネクトバス700に出力すると、インターコネクトバス700に接続された、例えば、バスアービタなどの不図示のバス調停部に、インターコネクトバス700を介してリクエスト信号が入力される。これにより、不図示のバス調停部は、入力されたリクエスト信号に応じて、DRAMへのアクセス要求を調停する。そして、不図示のバス調停部は、DRAMのへのアクセス要求を受け付ける状態となったときに、アクセス要求を許可するアクノリッジ信号を、インターコネクトバス700に出力し、リクエスト信号を出力したイニシエータに、アクノリッジ信号を返す(出力する)。これにより、リクエスト信号を出力したイニシエータは、入力されたアクノリッジ信号に応じて、DRAMに転送する転送データを、不図示のバス調停部に、インターコネクトバス700を介して出力する。そして、不図示のバス調停部は、適切なタイミングでDRAMにアクセスを行い、入力された転送データをDRAMに転送する。なお、以下の説明においては、それぞれのイニシエータが、DMAによって転送データをDRAMに転送する、上述したような動作を、「DMA転送」という。   More specifically, when an initiator requesting access to the DRAM outputs a request signal to the interconnect bus 700, the interconnect bus 700 is connected to a bus arbitration unit (not shown) such as a bus arbiter connected to the interconnect bus 700. A request signal is input via. As a result, a bus arbitration unit (not shown) arbitrates access requests to the DRAM according to the input request signal. The bus arbitration unit (not shown) outputs an acknowledge signal permitting the access request to the interconnect bus 700 when the access request to the DRAM is accepted, and sends an acknowledge signal to the initiator that has output the request signal. Returns (outputs) a signal. As a result, the initiator that has output the request signal outputs the transfer data to be transferred to the DRAM to the bus arbitration unit (not shown) via the interconnect bus 700 in accordance with the input acknowledge signal. A bus arbitration unit (not shown) accesses the DRAM at an appropriate timing, and transfers the input transfer data to the DRAM. In the following description, the above-described operation in which each initiator transfers transfer data to the DRAM by DMA is referred to as “DMA transfer”.

データ転送制御装置10は、第1のデータ転送部101および第2のデータ転送部201のそれぞれにおけるDMA転送の状態を監視し、監視した結果に応じて、第1のデータ転送部101または第2のデータ転送部201のいずれのデータ転送部によって転送データをDMA転送するかを決定する。そして、データ転送制御装置10は、決定した第1のデータ転送部101または第2のデータ転送部201のいずれかのデータ転送部に転送データを出力して、DMA転送を行わせる。   The data transfer control device 10 monitors the state of DMA transfer in each of the first data transfer unit 101 and the second data transfer unit 201, and according to the monitored result, the first data transfer unit 101 or the second data transfer unit 101 The data transfer unit 201 determines whether to transfer the transfer data by DMA. Then, the data transfer control device 10 outputs the transfer data to the determined data transfer unit of the first data transfer unit 101 or the second data transfer unit 201 to perform the DMA transfer.

データ転送状態監視部130は、第1のデータ転送部101および第2のデータ転送部201のそれぞれにおいて行われているDMA転送の状態を監視する。なお、データ転送状態監視部130がDMA転送の状態を監視する際には、例えば、DRAMのバンク衝突などによる、DMA転送の待ち時間や、DRAMへのアクセス履歴や、転送データのDRAMへの転送数などの付加情報も収集する。   The data transfer status monitoring unit 130 monitors the status of DMA transfer performed in each of the first data transfer unit 101 and the second data transfer unit 201. When the data transfer state monitoring unit 130 monitors the DMA transfer state, for example, the DMA transfer waiting time due to a DRAM bank collision, the access history to the DRAM, or the transfer of transfer data to the DRAM. Additional information such as numbers is also collected.

そして、データ転送状態監視部130は、監視した第1のデータ転送部101のDMA転送の状態に応じた第1の転送制御情報を、第1の転送制御部110に出力する。また、データ転送状態監視部130は、監視した第2のデータ転送部201のDMA転送の状態に応じた第2の転送制御情報を、第2の転送制御部210に出力する。なお、第1の転送制御情報および第2の転送制御情報には、対応する第1のデータ転送部101および第2のデータ転送部201に転送データを出力する順序や、第1のデータ転送部101と第2のデータ転送部201とのタイミングを調停するための制御情報なども含まれる。   Then, the data transfer state monitoring unit 130 outputs first transfer control information corresponding to the monitored DMA transfer state of the first data transfer unit 101 to the first transfer control unit 110. Further, the data transfer state monitoring unit 130 outputs second transfer control information corresponding to the DMA transfer state of the monitored second data transfer unit 201 to the second transfer control unit 210. The first transfer control information and the second transfer control information include the order in which transfer data is output to the corresponding first data transfer unit 101 and second data transfer unit 201, and the first data transfer unit. Also included is control information for arbitrating the timing between the first data transfer unit 101 and the second data transfer unit 201.

なお、データ転送状態監視部130におけるDMA転送の状態監視や、第1のデータ転送部101と第2のデータ転送部201との制御方法に関する詳細な説明は、後述する。   A detailed description of the DMA transfer status monitoring in the data transfer status monitoring unit 130 and the control method of the first data transfer unit 101 and the second data transfer unit 201 will be described later.

第1の転送制御部110は、第1の画像データ入力部100から入力されたDMA転送する第1の転送データを、データ転送状態監視部130から入力された第1の転送制御情報に基づいて、第1のデータ転送部101と第2のデータ転送部201とに振り分ける。なお、第1の転送制御部110は、基本的には、第1の画像データ入力部100から入力された第1の転送データを第1のデータ転送部101に出力する。しかし、第1の転送制御部110は、データ転送状態監視部130から入力された第1の転送制御情報が、例えば、第1のデータ転送部101がDMA転送を行う際の待ち時間が多いなど、第1のデータ転送部101による第1の転送データのDMA転送が円滑に行われていないことを表している場合には、第1のデータ転送部101に出力する第1の転送データを、第2の転送制御部210に出力し、第2のデータ転送部201によって転送させる。   The first transfer control unit 110 receives the first transfer data to be DMA-transferred input from the first image data input unit 100 based on the first transfer control information input from the data transfer state monitoring unit 130. And the first data transfer unit 101 and the second data transfer unit 201. Note that the first transfer control unit 110 basically outputs the first transfer data input from the first image data input unit 100 to the first data transfer unit 101. However, the first transfer control unit 110 indicates that the first transfer control information input from the data transfer state monitoring unit 130 has a long waiting time when the first data transfer unit 101 performs DMA transfer, for example. When the first data transfer unit 101 indicates that the DMA transfer of the first transfer data is not smoothly performed, the first transfer data output to the first data transfer unit 101 is The data is output to the second transfer control unit 210 and transferred by the second data transfer unit 201.

なお、第1の転送制御部110による第1の転送データの第1のデータ転送部101と第2のデータ転送部201とに振り分け方法に関する詳細な説明は、後述する。   A detailed description of a method for distributing the first transfer data to the first data transfer unit 101 and the second data transfer unit 201 by the first transfer control unit 110 will be described later.

第2の転送制御部210は、第2の画像データ入力部200から入力されたDMA転送する第2の転送データを、第2のデータ転送部201に出力する。ただし、第2の転送制御部210は、第1の転送制御部110によって振り分けられた、第1の画像データ入力部100がDMA転送する第1の転送データが入力された場合には、データ転送状態監視部130から入力された第2の転送制御情報に基づいて、第1の転送制御部110から入力された第1の転送データを選択して、第2のデータ転送部201に出力する。   The second transfer control unit 210 outputs, to the second data transfer unit 201, the second transfer data to be DMA-transferred input from the second image data input unit 200. However, the second transfer control unit 210 performs data transfer when the first transfer data distributed by the first transfer control unit 110 and transferred by the first image data input unit 100 is DMA-transferred. Based on the second transfer control information input from the state monitoring unit 130, the first transfer data input from the first transfer control unit 110 is selected and output to the second data transfer unit 201.

これにより、第1の画像データ入力部100が出力した第1の転送データは、第1のデータ転送部101に加えて、第2のデータ転送部201によってもDMA転送され、第1の画像データ入力部100が出力した第1の転送データをDMA転送する際のバス帯域を確保することができる。このことにより、第1の画像データ入力部100が出力する第1の転送データのDMA転送のリアルタイム性を確保することができる。   Accordingly, the first transfer data output from the first image data input unit 100 is DMA-transferred by the second data transfer unit 201 in addition to the first data transfer unit 101, and the first image data It is possible to secure a bus bandwidth when the first transfer data output from the input unit 100 is DMA-transferred. As a result, the real-time property of the DMA transfer of the first transfer data output from the first image data input unit 100 can be ensured.

なお、第2の転送制御部210による、第2の画像データ入力部200から入力された第2の転送データ、または第1の転送制御部110から入力された第1の転送データの選択方法に関する詳細な説明は、後述する。   Note that the second transfer control unit 210 selects a second transfer data input from the second image data input unit 200 or a first transfer data input from the first transfer control unit 110. Detailed description will be described later.

<第1の実施形態>
次に、本実施形態のデータ転送制御装置10の構成および動作について、さらに詳細に説明する。図2は、本第1の実施形態におけるデータ転送制御装置10を備えたデータ処理装置1の構成の一例を示したブロック図である。図2には、DMA転送の待ち時間とDRAMへのアクセス履歴とに基づいて、第1の画像データ入力部100から入力された第1の転送データを、第1のデータ転送部101と第2のデータ転送部201とに振り分ける制御を行うデータ転送制御装置10の構成を示している。なお、図2に示したデータ処理装置1のブロック図は、図1に示したデータ処理装置1内のデータ転送制御装置10の構成要素をより詳細に示したのみであるため、データ転送制御装置10以外の構成要素に関する詳細な説明は省略する。
<First Embodiment>
Next, the configuration and operation of the data transfer control device 10 of this embodiment will be described in more detail. FIG. 2 is a block diagram illustrating an example of the configuration of the data processing device 1 including the data transfer control device 10 according to the first embodiment. In FIG. 2, the first transfer data input from the first image data input unit 100 is transferred to the first data transfer unit 101 and the second data based on the DMA transfer waiting time and the access history to the DRAM. 2 shows a configuration of the data transfer control device 10 that performs control to be distributed to the data transfer unit 201. The block diagram of the data processing device 1 shown in FIG. 2 only shows the components of the data transfer control device 10 in the data processing device 1 shown in FIG. 1 in more detail. Detailed descriptions regarding components other than 10 will be omitted.

データ転送制御装置10内の第1の転送制御部110は、第1の転送バッファ部111と第1のバッファ制御部112とを備えている。また、データ転送制御装置10内の第2の転送制御部210は、第2の転送バッファ部211と第2のバッファ制御部212とを備えている。また、データ転送制御装置10内のデータ転送状態監視部130は、データ転送待ち時間監視部131とメモリアクセス履歴収集部132とを備えている。   The first transfer control unit 110 in the data transfer control device 10 includes a first transfer buffer unit 111 and a first buffer control unit 112. The second transfer control unit 210 in the data transfer control device 10 includes a second transfer buffer unit 211 and a second buffer control unit 212. The data transfer state monitoring unit 130 in the data transfer control device 10 includes a data transfer waiting time monitoring unit 131 and a memory access history collection unit 132.

第1の転送バッファ部111は、第1の画像データ入力部100から出力された第1の転送データを一旦格納する、例えば、SRAM(Static Random Access Memory)などのメモリで構成された、第1の転送データの一時記憶バッファである。第1の転送バッファ部111は、第1のバッファ制御部112からの制御に応じて、格納した第1の転送データを、第1のバッファ制御部112に出力する。   The first transfer buffer unit 111 temporarily stores the first transfer data output from the first image data input unit 100. For example, the first transfer buffer unit 111 includes a first random access memory (SRAM) memory. This is a temporary storage buffer for transfer data. The first transfer buffer unit 111 outputs the stored first transfer data to the first buffer control unit 112 in accordance with the control from the first buffer control unit 112.

第1のバッファ制御部112は、データ転送状態監視部130から入力された第1の転送制御情報に含まれる空きバンク情報に基づいて、次に転送する第1の転送データの出力先を、第1のデータ転送部101または第2の転送制御部210内の第2のバッファ制御部212のいずれか一方に決定する。そして、第1のバッファ制御部112は、第1の転送バッファ部111に格納されている第1の転送データを読み出し、読み出した第1の転送データを、決定した出力先に出力する。つまり、第1のバッファ制御部112は、データ転送状態監視部130から入力された第1の転送制御情報に基づいて、第1の転送バッファ部111から読み出した第1の転送データを、第1のデータ転送部101または第2のバッファ制御部212のいずれか一方に振り分ける。   The first buffer control unit 112 determines the output destination of the first transfer data to be transferred next based on the empty bank information included in the first transfer control information input from the data transfer state monitoring unit 130. The first data transfer unit 101 or the second buffer control unit 212 in the second transfer control unit 210 is determined. Then, the first buffer control unit 112 reads the first transfer data stored in the first transfer buffer unit 111, and outputs the read first transfer data to the determined output destination. That is, the first buffer control unit 112 converts the first transfer data read from the first transfer buffer unit 111 into the first transfer data based on the first transfer control information input from the data transfer state monitoring unit 130. The data transfer unit 101 or the second buffer control unit 212.

第2の転送バッファ部211は、第2の画像データ入力部200から出力された第2の転送データを一旦格納する、例えば、SRAMなどのメモリで構成された、第2の転送データの一時記憶バッファである。第2の転送バッファ部211は、第2のバッファ制御部212からの制御に応じて、格納した第2の転送データを、第2のバッファ制御部212に出力する。   The second transfer buffer unit 211 temporarily stores the second transfer data output from the second image data input unit 200. The second transfer buffer unit 211 temporarily stores the second transfer data, for example, composed of a memory such as an SRAM. It is a buffer. The second transfer buffer unit 211 outputs the stored second transfer data to the second buffer control unit 212 in accordance with the control from the second buffer control unit 212.

第2のバッファ制御部212は、データ転送状態監視部130から入力された第2の転送制御情報に基づいて、次に転送する転送データを、第2のデータ転送部201に出力する。なお、第2のバッファ制御部212は、第1のバッファ制御部112から第1の転送データが入力された場合には、第1のバッファ制御部112から入力された第1の転送データを、第2のデータ転送部201に出力する。また、第2のバッファ制御部212は、第1のバッファ制御部112から第1の転送データが入力されていない場合には、第2の転送バッファ部211に格納されている第2の転送データを読み出し、読み出した第2の転送データを、第2のデータ転送部201に出力する。   The second buffer control unit 212 outputs the transfer data to be transferred next to the second data transfer unit 201 based on the second transfer control information input from the data transfer state monitoring unit 130. Note that the second buffer control unit 212, when the first transfer data is input from the first buffer control unit 112, the first transfer data input from the first buffer control unit 112, The data is output to the second data transfer unit 201. The second buffer control unit 212 also stores the second transfer data stored in the second transfer buffer unit 211 when the first transfer data is not input from the first buffer control unit 112. , And the read second transfer data is output to the second data transfer unit 201.

なお、第2のバッファ制御部212は、第1のバッファ制御部112から入力された第1の転送データの第2のデータ転送部201への出力と、第2の転送データの第2のデータ転送部201への出力とが競合した場合には、第1の転送データの第2のデータ転送部201への出力を優先する。このため、第2のバッファ制御部212は、競合した第2の転送データの第2のデータ転送部201への出力を待ち合わせる。つまり、第2のバッファ制御部212は、第1のバッファ制御部112から第1の転送データが入力されていないときに、第2の転送データの第2のデータ転送部201への出力を行う。   The second buffer control unit 212 outputs the first transfer data input from the first buffer control unit 112 to the second data transfer unit 201 and the second data of the second transfer data. When the output to the transfer unit 201 competes, priority is given to the output of the first transfer data to the second data transfer unit 201. Therefore, the second buffer control unit 212 waits for the output of the conflicting second transfer data to the second data transfer unit 201. That is, the second buffer control unit 212 outputs the second transfer data to the second data transfer unit 201 when the first transfer data is not input from the first buffer control unit 112. .

データ転送待ち時間監視部131は、第1のデータ転送部101がDMA転送を行う際の制御信号(例えば、リクエスト信号やアクノリッジ信号など)に基づいて、第1のデータ転送部101によるDMA転送の待ち時間を監視する。そして、データ転送待ち時間監視部131は、第1のデータ転送部101によるDMA転送の待ち時間が、予め定めた時間を超過した場合、すなわち、第1のデータ転送部101による第1の転送データのDMA転送が円滑に行われずに滞っている場合に、このことを表すタイムアウト信号を、メモリアクセス履歴収集部132に通知(出力)する。   The data transfer waiting time monitoring unit 131 performs DMA transfer by the first data transfer unit 101 based on a control signal (for example, a request signal or an acknowledge signal) when the first data transfer unit 101 performs DMA transfer. Monitor latency. Then, the data transfer waiting time monitoring unit 131, when the DMA transfer waiting time by the first data transfer unit 101 exceeds a predetermined time, that is, the first transfer data by the first data transfer unit 101. When the DMA transfer is delayed without being smoothly performed, a time-out signal indicating this is notified (output) to the memory access history collection unit 132.

メモリアクセス履歴収集部132は、第1のデータ転送部101がDMA転送を行う際の制御信号(例えば、リクエスト信号やアクノリッジ信号など)や、DRAMのメモリアドレスから得られるバンク情報に基づいて、第1のデータ転送部101によるDRAMへのアクセス履歴を収集する。また、メモリアクセス履歴収集部132は、第2のデータ転送部201がDMA転送を行う際の制御信号(例えば、リクエスト信号やアクノリッジ信号など)や、DRAMのメモリアドレスから得られるバンク情報に基づいて、第2のデータ転送部201によるDRAMへのアクセス履歴を収集する。   The memory access history collection unit 132 is based on a control signal (for example, a request signal, an acknowledge signal, etc.) when the first data transfer unit 101 performs DMA transfer, and bank information obtained from the memory address of the DRAM. 1 collects access history to the DRAM by the data transfer unit 101. Further, the memory access history collection unit 132 is based on a control signal (for example, a request signal or an acknowledge signal) when the second data transfer unit 201 performs the DMA transfer, or bank information obtained from the memory address of the DRAM. The access history to the DRAM by the second data transfer unit 201 is collected.

そして、メモリアクセス履歴収集部132は、データ転送待ち時間監視部131からタイムアウト信号が入力された場合、収集した第1のデータ転送部101と第2のデータ転送部201とのそれぞれによるDRAMへのアクセス履歴に基づいて、第1のデータ転送部101と第2のデータ転送部201とのそれぞれがアクセスすることができるDRAMのメモリバンクを判定する。そして、メモリアクセス履歴収集部132は、判定したメモリバンクの情報に基づいて、第2のデータ転送部201が次に転送することができるメモリバンクを表す空きバンク情報を、第1のバッファ制御部112に出力する。   When the time-out signal is input from the data transfer wait time monitoring unit 131, the memory access history collection unit 132 sends the collected data to the DRAM by the first data transfer unit 101 and the second data transfer unit 201, respectively. Based on the access history, a memory bank of the DRAM that can be accessed by each of the first data transfer unit 101 and the second data transfer unit 201 is determined. Then, the memory access history collection unit 132 uses the first buffer control unit to store empty bank information representing a memory bank that can be transferred next by the second data transfer unit 201 based on the determined information of the memory bank. To 112.

この空きバンク情報に基づいて、第1のバッファ制御部112は、次に転送する第1の転送データの出力先を第2のデータ転送部201に決定し、第1の転送バッファ部111から読み出した第1の転送データを第2のバッファ制御部212に出力することによって、第1の転送データを第2のデータ転送部201にDMA転送させる。このように、データ転送制御装置10では、第1の転送データのDMA転送を、第1のデータ転送部101と第2のデータ転送部201とによって並列に行わせることによって、第1の転送データのDMA転送のリアルタイム性を確保する。   Based on this empty bank information, the first buffer control unit 112 determines the output destination of the first transfer data to be transferred next to the second data transfer unit 201 and reads out from the first transfer buffer unit 111. By outputting the first transfer data to the second buffer control unit 212, the first transfer data is DMA-transferred to the second data transfer unit 201. As described above, in the data transfer control device 10, the first transfer data is transferred in parallel by the first data transfer unit 101 and the second data transfer unit 201 by performing the DMA transfer of the first transfer data. Real-time performance of DMA transfer is ensured.

なお、第1のバッファ制御部112による第1の転送データの出力先の決定は、DRAMのバンク衝突が発生しないデータ転送部に決定することが望ましい。従って、第1のバッファ制御部112は、次に転送する第1の転送データを第2のデータ転送部201によってDMA転送させることによってバンク衝突が発生する場合には、第1の転送データを第1の転送バッファ部111から読み出す順序を変更し、第2のデータ転送部201によってDMA転送させてもバンク衝突が発生しない、例えば、2番目に転送する第1の転送データを先に読み出して、第2のバッファ制御部212に出力してもよい。   It should be noted that the output destination of the first transfer data by the first buffer control unit 112 is preferably determined to a data transfer unit that does not cause a bank collision of the DRAM. Accordingly, the first buffer control unit 112 transfers the first transfer data to the first transfer data when the second data transfer unit 201 causes the DMA transfer by the DMA transfer of the first transfer data to be transferred next. The order of reading from the first transfer buffer unit 111 is changed, and even if DMA transfer is performed by the second data transfer unit 201, a bank collision does not occur. For example, the first transfer data to be transferred second is read first, You may output to the 2nd buffer control part 212.

次に、データ転送制御装置10の動作について説明する。図3は、本第1の実施形態のデータ転送制御装置10によるデータ転送動作の処理手順を示したフローチャートである。第1の画像データ入力部100から第1の転送データが入力されると、データ転送制御装置10は、ステップS100から、第1のデータ転送部101および第2のデータ転送部201がDMA転送を行う際の制御信号やメモリアドレスなど、DRAMに対するアクセスの情報(以下、「メモリアクセス情報」という)の収集を開始する。なお、メモリアクセス情報の収集は、以降の処理手順を実行しているときにも、常に継続して行われる。   Next, the operation of the data transfer control device 10 will be described. FIG. 3 is a flowchart showing the processing procedure of the data transfer operation by the data transfer control device 10 of the first embodiment. When the first transfer data is input from the first image data input unit 100, the data transfer control device 10 starts the DMA transfer from step S100 to the first data transfer unit 101 and the second data transfer unit 201. Collection of access information to the DRAM (hereinafter referred to as “memory access information”) such as a control signal and a memory address at the time of execution is started. Note that the collection of memory access information is always performed continuously even when the subsequent processing procedure is executed.

そして、データ転送待ち時間監視部131は、収集したメモリアクセス情報に基づいて、第1のデータ転送部101によるDMA転送の待ち時間を監視する。より具体的には、第1のデータ転送部101がリクエスト信号をインターコネクトバス700に出力してから、アクノリッジ信号が返ってくるまでの時間を計測することによって、DMA転送の待ち時間を監視する。   Then, the data transfer wait time monitoring unit 131 monitors the DMA transfer wait time by the first data transfer unit 101 based on the collected memory access information. More specifically, the DMA transfer waiting time is monitored by measuring the time from when the first data transfer unit 101 outputs a request signal to the interconnect bus 700 until the acknowledge signal is returned.

また、メモリアクセス履歴収集部132は、収集したメモリアクセス情報に基づいて、第1のデータ転送部101および第2のデータ転送部201によるDRAMへのアクセス履歴を収集する。より具体的には、例えば、第1のデータ転送部101がリクエスト信号をインターコネクトバス700に出力するときに指定するDRAMのメモリアドレスや、アクノリッジ信号が返ってきたときに指定されたDRAMのメモリアドレスに基づいて、第1のデータ転送部101が第1の転送データをDMA転送するDRAMのメモリバンクを判別する。そして、判別したDRAMのメモリバンクの情報を、第1のデータ転送部101によるDRAMへのアクセス履歴として収集する。   Further, the memory access history collection unit 132 collects access histories to the DRAM by the first data transfer unit 101 and the second data transfer unit 201 based on the collected memory access information. More specifically, for example, the memory address of the DRAM specified when the first data transfer unit 101 outputs the request signal to the interconnect bus 700, or the memory address of the DRAM specified when the acknowledge signal is returned. Based on the above, the first data transfer unit 101 determines the memory bank of the DRAM to which the first transfer data is DMA transferred. Then, the information of the determined DRAM memory bank is collected as the access history to the DRAM by the first data transfer unit 101.

その後、データ転送待ち時間監視部131は、監視している第1のデータ転送部101によるDMA転送の待ち時間が予め定めた時間を超過した場合(ステップS110の“YES”)、すなわち、第1のデータ転送部101のDMA転送のタイムアウトを検出した場合、タイムアウト信号をメモリアクセス履歴収集部132に出力する。メモリアクセス履歴収集部132は、データ転送待ち時間監視部131からタイムアウト信号が入力されると、収集したDRAMへのアクセス履歴に基づいて判定した空きバンク情報を、第1のバッファ制御部112に出力する。   Thereafter, the data transfer waiting time monitoring unit 131 determines that the DMA transfer waiting time by the first data transfer unit 101 being monitored exceeds a predetermined time (“YES” in step S110), that is, the first When a timeout of DMA transfer of the data transfer unit 101 is detected, a timeout signal is output to the memory access history collection unit 132. When a time-out signal is input from the data transfer wait time monitoring unit 131, the memory access history collection unit 132 outputs the empty bank information determined based on the collected access history to the DRAM to the first buffer control unit 112. To do.

なお、データ転送待ち時間監視部131は、監視しているDMA転送の待ち時間が予め定めた時間を超過していない場合(ステップS110の“NO”)、すなわち、タイムアウトを検出していない場合には、ステップS100に戻って、DMA転送の待ち時間の監視を継続する。   The data transfer wait time monitoring unit 131 determines that the DMA transfer wait time being monitored does not exceed a predetermined time ("NO" in step S110), that is, if no timeout has been detected. Return to step S100 and continue monitoring the DMA transfer waiting time.

メモリアクセス履歴収集部132から空きバンク情報が入力されると、ステップS120において、第1のバッファ制御部112は、第1の転送データの出力先を振り分けて、第1のデータ転送部101と第2のデータ転送部201とによる第1の転送データの並列転送を開始する。そして、第1のバッファ制御部112は、第2のデータ転送部201によってDMA転送させる次の第1の転送データを、第2のバッファ制御部212に出力する。   When empty bank information is input from the memory access history collection unit 132, in step S120, the first buffer control unit 112 distributes the output destination of the first transfer data, and the first data transfer unit 101 and the first data transfer unit 101 The parallel transfer of the first transfer data by the second data transfer unit 201 is started. Then, the first buffer control unit 112 outputs the next first transfer data to be DMA-transferred by the second data transfer unit 201 to the second buffer control unit 212.

続いて、ステップS130において、第2のバッファ制御部212は、第2のデータ転送部201に出力する転送データの出力順序を変更し、次に第2のデータ転送部201に出力する第2の転送データの代わりに、第1のバッファ制御部112から入力された第1の転送データを、第2のデータ転送部201に出力する。   Subsequently, in step S130, the second buffer control unit 212 changes the output order of the transfer data output to the second data transfer unit 201, and then outputs the second data output to the second data transfer unit 201. Instead of the transfer data, the first transfer data input from the first buffer control unit 112 is output to the second data transfer unit 201.

続いて、ステップS140において、第1のバッファ制御部112は、第1のデータ転送部101に出力する第1の転送データの出力順序を変更、つまり、第2のデータ転送部201によってDMA転送させる次の第1の転送データは出力したものとして、その次に第1のデータ転送部101に出力する第1の転送データを、第1のデータ転送部101に出力する。   Subsequently, in step S140, the first buffer control unit 112 changes the output order of the first transfer data output to the first data transfer unit 101, that is, causes the second data transfer unit 201 to perform DMA transfer. Assuming that the next first transfer data has been output, the first transfer data to be output to the first data transfer unit 101 is output to the first data transfer unit 101.

これにより、ステップS130で第2のデータ転送部201に出力された第1の転送データと、ステップS140で第1のデータ転送部101に出力された第1の転送データとが、それぞれ並列にDMA転送される。   As a result, the first transfer data output to the second data transfer unit 201 in step S130 and the first transfer data output to the first data transfer unit 101 in step S140 are DMA-transferred in parallel. Transferred.

その後、ステップS150において、メモリアクセス履歴収集部132が、収集したメモリアクセス情報に基づいて、第2のデータ転送部201による第1の転送データのDMA転送が完了したことを認識すると、ステップS160において、第1のバッファ制御部112は、第1のデータ転送部101と第2のデータ転送部201とによる第1の転送データの1回目の並列転送を終了する。なお、ステップS140からステップS160までの間に、メモリアクセス履歴収集部132が、第1のデータ転送部101による第1の転送データのDMA転送の完了を、収集したメモリアクセス情報に基づいて認識することもあると考えられる。   Thereafter, in step S150, when the memory access history collection unit 132 recognizes that the DMA transfer of the first transfer data by the second data transfer unit 201 is completed based on the collected memory access information, in step S160. The first buffer control unit 112 ends the first parallel transfer of the first transfer data by the first data transfer unit 101 and the second data transfer unit 201. Note that during steps S140 to S160, the memory access history collection unit 132 recognizes the completion of the DMA transfer of the first transfer data by the first data transfer unit 101 based on the collected memory access information. It is thought that there is also.

以降、データ転送制御装置10は、図3に示したデータ転送動作のフローチャートの処理手順を繰り返して、第1の画像データ入力部100から入力された全ての第1の転送データのDMA転送を行う。   Thereafter, the data transfer control device 10 repeats the processing procedure of the flowchart of the data transfer operation shown in FIG. 3 to perform DMA transfer of all the first transfer data input from the first image data input unit 100. .

本第1の実施形態によれば、共通バス(インターコネクトバス700)を介してデータを転送する複数のデータ転送部(第1のデータ転送部101および第2のデータ転送部201)のそれぞれに、インターコネクトバス700を介して転送する転送データを出力するデータ転送制御装置(データ転送制御装置10)であって、第1のデータ転送部101および第2のデータ転送部201のそれぞれに対応し、この第1のデータ転送部101および第2のデータ転送部201のそれぞれに対応するデータ入力部(第1の画像データ入力部100および第2の画像データ入力部200)から入力された転送データを、対応する第1のデータ転送部101または第2のデータ転送部201に出力する複数の転送制御部(第1の転送制御部110および第2の転送制御部210)と、第1のデータ転送部101および第2のデータ転送部201のそれぞれが転送データを転送している状態を監視し、ここで監視した第1のデータ転送部101および第2のデータ転送部201のそれぞれの転送データの転送状態に基づいて、それぞれの第1の転送制御部110および第2の転送制御部210における転送データの対応する第1のデータ転送部101または第2のデータ転送部201への出力を制御する転送制御情報(第1の転送制御情報および第2の転送制御情報)を出力するデータ転送状態監視部(データ転送状態監視部130)と、を備え、複数の第1の転送制御部110および第2の転送制御部210の内、少なくとも1つの転送制御部(第1の転送制御部110)は、対応する第1のデータ転送部101の第1の転送制御情報に基づいて、この第1のデータ転送部101によって転送する転送データ(第1の転送データ)を、この第1のデータ転送部101によって転送する第1の転送データと他の転送制御部(第2の転送制御部210)が対応する他の第2のデータ転送部201によって転送する第1の転送データとに振り分けて出力し、転送データが振り分けられた、少なくとも1つの他の転送制御部(第2の転送制御部210)は、振り分けられた第1の転送データを、対応する第2のデータ転送部201の第2の転送制御情報に基づいて、この対応する第2のデータ転送部201に出力する、データ転送制御装置10が構成される。   According to the first embodiment, each of the plurality of data transfer units (the first data transfer unit 101 and the second data transfer unit 201) that transfers data via the common bus (interconnect bus 700) A data transfer control device (data transfer control device 10) for outputting transfer data transferred via the interconnect bus 700, corresponding to each of the first data transfer unit 101 and the second data transfer unit 201, Transfer data input from data input units (first image data input unit 100 and second image data input unit 200) corresponding to the first data transfer unit 101 and the second data transfer unit 201, respectively, A plurality of transfer control units (the first transfer control unit 110 and the first transfer control unit 110) output to the corresponding first data transfer unit 101 or second data transfer unit 201. And the second transfer control unit 210), the first data transfer unit 101, and the second data transfer unit 201 are monitoring the state of transferring the transfer data, and the first data transfer monitored here First data transfer corresponding to the transfer data in each of the first transfer control unit 110 and the second transfer control unit 210 based on the transfer state of the transfer data of each of the unit 101 and the second data transfer unit 201 Data transfer status monitoring unit (data transfer status monitoring unit 130) that outputs transfer control information (first transfer control information and second transfer control information) for controlling output to the unit 101 or the second data transfer unit 201 And at least one transfer control unit (first transfer control unit 110) among the plurality of first transfer control units 110 and second transfer control units 210 has a corresponding first Transfer data (first transfer data) transferred by the first data transfer unit 101 is transferred by the first data transfer unit 101 based on the first transfer control information of the first data transfer unit 101. 1 transfer data and the other transfer control unit (second transfer control unit 210) distribute and output the first transfer data transferred by the other second data transfer unit 201 corresponding to the transfer data, and the transfer data is distributed The at least one other transfer control unit (second transfer control unit 210) is configured to assign the distributed first transfer data based on the second transfer control information of the corresponding second data transfer unit 201. Thus, the data transfer control device 10 that outputs to the corresponding second data transfer unit 201 is configured.

また、本第1の実施形態によれば、共通バス(インターコネクトバス700)を介してデータを転送する複数のデータ転送部(第1のデータ転送部101および第2のデータ転送部201)のそれぞれに、インターコネクトバス700を介して転送する転送データを出力するデータ転送制御装置(データ転送制御装置10)におけるデータ転送制御方法であって、第1のデータ転送部101および第2のデータ転送部201のそれぞれに対応し、この第1のデータ転送部101および第2のデータ転送部201のそれぞれに対応するデータ入力部(第1の画像データ入力部100および第2の画像データ入力部200)から入力された転送データを、対応する第1のデータ転送部101または第2のデータ転送部201に出力する複数の転送制御手順(第1の転送制御部110および第2の転送制御部210における処理手順)と、第1のデータ転送部101および第2のデータ転送部201のそれぞれが転送データを転送している状態を監視し、ここで監視した第1のデータ転送部101および第2のデータ転送部201のそれぞれの転送データの転送状態に基づいて、それぞれの第1の転送制御部110および第2の転送制御部210における転送データの対応する第1のデータ転送部101または第2のデータ転送部201への出力を制御する転送制御情報(第1の転送制御情報および第2の転送制御情報)を出力するデータ転送状態監視手順(データ転送状態監視部130における処理手順)と、を含み、複数の第1の転送制御部110および第2の転送制御部210における処理手順の内、少なくとも1つの転送制御手順(第1の転送制御部110における処理手順)は、対応する第1のデータ転送部101の第1の転送制御情報に基づいて、この第1のデータ転送部101によって転送する転送データ(第1の転送データ)を、この第1のデータ転送部101によって転送する第1の転送データと他の転送制御手順(第2の転送制御部210における処理手順)が対応する他の第2のデータ転送部201によって転送する第1の転送データとに振り分けて出力し、転送データが振り分けられた、少なくとも1つの他の転送制御手順(第2の転送制御部210における処理手順)は、振り分けられた第1の転送データを、対応する第2のデータ転送部201の第2の転送制御情報に基づいて、この対応する第2のデータ転送部201に出力する、データ転送制御方法が構成される。   Further, according to the first embodiment, each of the plurality of data transfer units (the first data transfer unit 101 and the second data transfer unit 201) that transfers data via the common bus (interconnect bus 700). In addition, a data transfer control method in a data transfer control device (data transfer control device 10) that outputs transfer data transferred via an interconnect bus 700, which includes a first data transfer unit 101 and a second data transfer unit 201. From the data input units (the first image data input unit 100 and the second image data input unit 200) corresponding to the first data transfer unit 101 and the second data transfer unit 201, respectively. A plurality of transfers for outputting the input transfer data to the corresponding first data transfer unit 101 or second data transfer unit 201 The procedure (the processing procedure in the first transfer control unit 110 and the second transfer control unit 210) and the state in which each of the first data transfer unit 101 and the second data transfer unit 201 is transferring the transfer data And the first transfer control unit 110 and the second transfer control based on the transfer state of the respective transfer data of the first data transfer unit 101 and the second data transfer unit 201 monitored here. The transfer control information (first transfer control information and second transfer control information) for controlling the output of the transfer data in the unit 210 to the corresponding first data transfer unit 101 or second data transfer unit 201 is output. A data transfer state monitoring procedure (a processing procedure in the data transfer state monitoring unit 130), and a plurality of first transfer control units 110 and second transfer control units 210 Among the processing procedures, at least one transfer control procedure (a processing procedure in the first transfer control unit 110) is based on the first transfer control information of the corresponding first data transfer unit 101. Transfer data (first transfer data) transferred by the data transfer unit 101 is transferred to the first transfer data transferred by the first data transfer unit 101 and other transfer control procedures (processing in the second transfer control unit 210). At least one other transfer control procedure (second transfer control) in which the transfer data is distributed and output to the first transfer data transferred by the other second data transfer unit 201 to which the corresponding procedure is transferred. The processing procedure in the unit 210) distributes the distributed first transfer data based on the second transfer control information of the corresponding second data transfer unit 201. A data transfer control method for outputting to the data transfer unit 201 is configured.

また、本第1の実施形態によれば、共通バス(インターコネクトバス700)を介してデータを転送する複数のデータ転送部(第1のデータ転送部101および第2のデータ転送部201)と、第1のデータ転送部101および第2のデータ転送部201のそれぞれに対応し、インターコネクトバス700を介して転送する転送データを出力する複数のデータ入力部(第1の画像データ入力部100および第2の画像データ入力部200)と、第1のデータ転送部101および第2のデータ転送部201のそれぞれに対応し、この第1のデータ転送部101および第2のデータ転送部201のそれぞれに対応する第1の画像データ入力部100または第2の画像データ入力部200から入力された転送データを、対応する第1のデータ転送部101または第2のデータ転送部201に出力する複数の転送制御部(第1の転送制御部110および第2の転送制御部210)と、第1のデータ転送部101および第2のデータ転送部201のそれぞれが転送データを転送している状態を監視し、ここで監視した第1のデータ転送部101および第2のデータ転送部201のそれぞれの転送データの転送状態に基づいて、それぞれの第1の転送制御部110および第2の転送制御部210における転送データの対応する第1のデータ転送部101または第2のデータ転送部201への出力を制御する転送制御情報(第1の転送制御情報および第2の転送制御情報)を出力するデータ転送状態監視部(データ転送状態監視部130)と、を具備したデータ転送制御装置(データ転送制御装置10)と、を備え、データ転送制御装置10に備えた複数の第1の転送制御部110および第2の転送制御部210の内、少なくとも1つの転送制御部(第1の転送制御部110)は、対応する第1のデータ転送部101の第1の転送制御情報に基づいて、この第1のデータ転送部101によって転送する転送データ(第1の転送データ)を、この第1のデータ転送部101によって転送する第1の転送データと他の転送制御部(第2の転送制御部210)が対応する他の第2のデータ転送部201によって転送する第1の転送データとに振り分けて出力し、データ転送制御装置10に備えた複数の第1の転送制御部110および第2の転送制御部210の内、転送データが振り分けられた、少なくとも1つの他の転送制御部(第2の転送制御部210)は、振り分けられた第1の転送データを、対応する第2のデータ転送部201の第2の転送制御情報に基づいて、この対応する第2のデータ転送部201に出力する、データ処理装置(データ処理装置1)が構成される。   Further, according to the first embodiment, a plurality of data transfer units (the first data transfer unit 101 and the second data transfer unit 201) that transfer data via the common bus (interconnect bus 700), Corresponding to each of the first data transfer unit 101 and the second data transfer unit 201, a plurality of data input units (the first image data input unit 100 and the first image data input unit 100 and the second data transfer unit 201) that output transfer data transferred via the interconnect bus 700 2 image data input unit 200), and first data transfer unit 101 and second data transfer unit 201, respectively, and each of first data transfer unit 101 and second data transfer unit 201 The transfer data input from the corresponding first image data input unit 100 or the second image data input unit 200 is converted into the corresponding first data transfer unit. 01 or a plurality of transfer control units (first transfer control unit 110 and second transfer control unit 210) that output to the second data transfer unit 201, the first data transfer unit 101, and the second data transfer unit Each of 201 monitors the state of transferring the transfer data, and based on the transfer state of each transfer data of the first data transfer unit 101 and the second data transfer unit 201 monitored here, Transfer control information (first transfer control) for controlling the output of the transfer data in the first transfer control unit 110 and the second transfer control unit 210 to the corresponding first data transfer unit 101 or second data transfer unit 201 Data transfer state monitoring unit (data transfer state monitoring unit 130) that outputs information and second transfer control information) (data transfer control device) 0), and at least one transfer control unit (first transfer control unit 110) among the plurality of first transfer control units 110 and second transfer control units 210 included in the data transfer control device 10 , Based on the first transfer control information of the corresponding first data transfer unit 101, transfer data (first transfer data) transferred by the first data transfer unit 101 is transferred to the first data transfer. The first transfer data transferred by the unit 101 and the first transfer data transferred by another second data transfer unit 201 corresponding to another transfer control unit (second transfer control unit 210) are output. Then, at least one other transfer control unit (second transfer unit) to which transfer data is distributed among the plurality of first transfer control units 110 and second transfer control units 210 provided in the data transfer control device 10. control The unit 210) outputs the distributed first transfer data to the corresponding second data transfer unit 201 based on the second transfer control information of the corresponding second data transfer unit 201. A processing device (data processing device 1) is configured.

また、本第1の実施形態によれば、複数の第1の転送制御部110および第2の転送制御部210のそれぞれは、対応する第1のデータ転送部101または第2のデータ転送部201が対応する第1の画像データ入力部100または第2の画像データ入力部200から入力された転送データを一時的に記憶する転送バッファ部(第1の転送バッファ部111または第2の転送バッファ部211)と、転送制御情報に基づいて、第1の転送バッファ部111または第2の転送バッファ部211に記憶された転送データを読み出して出力するバッファ制御部(第1のバッファ制御部112または第2のバッファ制御部212)と、を備え、第1の転送データを振り分ける転送制御部である第1の転送制御部110に備えた転送バッファ部である第1の転送バッファ部111は、この第1の転送制御部110が対応するデータ転送部である第1のデータ転送部101によって転送する転送データである第1の転送データを一時的に記憶し、この第1の転送制御部110に備えたバッファ制御部である第1のバッファ制御部112は、第1のデータ転送部101の転送制御情報である第1の転送制御情報に基づいて、第1の転送バッファ部111から読み出した第1の転送データを、第1のデータ転送部101によって転送する第1の転送データと他の転送制御部(第2の転送制御部210)が対応する他のデータ転送部(第2のデータ転送部201)によって転送する第1の転送データとに振り分けて出力し、第1の転送データが振り分けられた他の転送制御部である第2の転送制御部210に備えた転送バッファ部である第2の転送バッファ部211は、この第2の転送制御部210が対応するデータ転送部である第2のデータ転送部201によって転送する転送データである第2の転送データを一時的に記憶し、この第2の転送制御部210に備えたバッファ制御部である第2のバッファ制御部212は、第1のバッファ制御部112から第1の転送データが入力されていない場合には、第2のデータ転送部201の転送制御情報である第2の転送制御情報に基づいて、第2の転送バッファ部211から読み出した第2の転送データを第2のデータ転送部201に出力し、第1のバッファ制御部112から第1の転送データが入力された場合には、第2の転送制御情報に基づいて、この第1の転送データを第2のデータ転送部201に出力する、データ転送制御装置10が構成される。   Further, according to the first embodiment, each of the plurality of first transfer control units 110 and second transfer control units 210 corresponds to the corresponding first data transfer unit 101 or second data transfer unit 201. Is a transfer buffer unit (first transfer buffer unit 111 or second transfer buffer unit) that temporarily stores the transfer data input from the first image data input unit 100 or the second image data input unit 200 corresponding to 211) and the buffer control unit (the first buffer control unit 112 or the second buffer unit) that reads out and outputs the transfer data stored in the first transfer buffer unit 111 or the second transfer buffer unit 211 based on the transfer control information. 2, a buffer control unit 212), and a transfer buffer unit included in the first transfer control unit 110, which is a transfer control unit that distributes the first transfer data. The transfer buffer unit 111 temporarily stores first transfer data which is transfer data transferred by the first data transfer unit 101 which is a data transfer unit to which the first transfer control unit 110 corresponds. The first buffer control unit 112, which is a buffer control unit provided in the first transfer control unit 110, is based on the first transfer control information that is the transfer control information of the first data transfer unit 101. The first transfer data read from the transfer buffer unit 111 is transferred by the first data transfer unit 101 and other data corresponding to the other transfer control unit (second transfer control unit 210). The second transfer control unit 2 which is another transfer control unit to which the first transfer data is distributed and output by being distributed to the first transfer data to be transferred by the transfer unit (second data transfer unit 201). A second transfer buffer unit 211 that is a transfer buffer unit provided for 0 is a second transfer data that is transferred by the second data transfer unit 201 that is a data transfer unit to which the second transfer control unit 210 corresponds. The second buffer control unit 212, which is a buffer control unit provided in the second transfer control unit 210, temporarily receives the first transfer data from the first buffer control unit 112. If not, the second transfer data read from the second transfer buffer unit 211 is converted to the second data based on the second transfer control information that is the transfer control information of the second data transfer unit 201. When the first transfer data is output to the transfer unit 201 and is input from the first buffer control unit 112, the first transfer data is transferred to the second data transfer based on the second transfer control information. Part The data transfer control device 10 that outputs to 201 is configured.

また、本第1の実施形態によれば、データ転送状態監視部130は、第1のデータ転送部101が第1の転送データを転送する際の制御信号(例えば、リクエスト信号やアクノリッジ信号など)に基づいて、この第1のデータ転送部101における第1の転送データの転送待ち時間を監視し、ここで監視した第1の転送データの転送待ち時間が、予め定めた時間を超過した場合に、転送待ち時間が予め定めた時間を超過したことを表すタイムアウト信号を出力するデータ転送待ち時間監視部(データ転送待ち時間監視部131)と、第1のデータ転送部101が第1の転送データを転送する際の信号(例えば、リクエスト信号やアクノリッジ信号などや、DRAMのメモリアドレス)に基づいて、この第1のデータ転送部101における第1の転送データの転送履歴と、第2のデータ転送部201が第1の転送データまたは第2の転送データを転送する際の信号(例えば、リクエスト信号やアクノリッジ信号などや、DRAMのメモリアドレス)に基づいて、この第2のデータ転送部201における第1の転送データまたは第2の転送データの転送履歴とを収集するアクセス履歴収集部(メモリアクセス履歴収集部132)と、を備え、メモリアクセス履歴収集部132は、データ転送待ち時間監視部131がタイムアウト信号を出力した際に、収集した第1の転送データの転送履歴と第2の転送データの転送履歴とに基づいて、第1の転送データと第2の転送データとによって転送データを転送するための転送情報(空きバンク情報)を第1のバッファ制御部112に出力し、第1のバッファ制御部112は、メモリアクセス履歴収集部132から出力された空きバンク情報に基づいて、第1の転送データを、第1のデータ転送部101と第2のバッファ制御部212とに振り分けて出力する、データ転送制御装置10が構成される。   In addition, according to the first embodiment, the data transfer state monitoring unit 130 controls the control signal (for example, a request signal or an acknowledge signal) when the first data transfer unit 101 transfers the first transfer data. The first data transfer unit 101 monitors the first transfer data transfer waiting time based on the first transfer data, and the first transfer data transfer waiting time monitored here exceeds a predetermined time. A data transfer waiting time monitoring unit (data transfer waiting time monitoring unit 131) that outputs a time-out signal indicating that the transfer waiting time has exceeded a predetermined time, and the first data transfer unit 101 uses the first transfer data The first data transfer unit 101 uses the first data transfer unit 101 based on a signal (for example, a request signal, an acknowledge signal, or a DRAM memory address). Based on a transfer history of transfer data and a signal (for example, a request signal, an acknowledge signal, or a memory address of a DRAM) when the second data transfer unit 201 transfers the first transfer data or the second transfer data. An access history collection unit (memory access history collection unit 132) for collecting the first transfer data or the transfer history of the second transfer data in the second data transfer unit 201, and collecting the memory access history When the data transfer waiting time monitoring unit 131 outputs a time-out signal, the unit 132 determines the first transfer data based on the transfer history of the first transfer data and the transfer history of the second transfer data collected. Transfer information (empty bank information) for transferring the transfer data with the second transfer data is output to the first buffer control unit 112, and The buffer control unit 112 distributes the first transfer data to the first data transfer unit 101 and the second buffer control unit 212 based on the empty bank information output from the memory access history collection unit 132. A data transfer control device 10 for outputting is configured.

このようにして、データ転送制御装置10では、DMA転送の待ち時間とDRAMへのアクセス履歴とに基づいて、第1の画像データ入力部100から入力された第1の転送データを、第1のデータ転送部101と第2のデータ転送部201とに振り分けて、それぞれ並列にDMA転送する。これにより、データ転送制御装置10では、第1の画像データ入力部100が出力した第1の転送データをDMA転送する際のバス帯域が確保されて、DMA転送が円滑に行われ、第1の転送データのDMA転送のリアルタイム性を確保することができる。   In this manner, the data transfer control device 10 uses the first transfer data input from the first image data input unit 100 as the first transfer data based on the DMA transfer waiting time and the access history to the DRAM. The data is transferred to the data transfer unit 101 and the second data transfer unit 201, and DMA transfer is performed in parallel. As a result, the data transfer control device 10 secures a bus bandwidth for DMA transfer of the first transfer data output from the first image data input unit 100, and the DMA transfer is smoothly performed. Real-time property of DMA transfer of transfer data can be ensured.

なお、第1のデータ転送部101と第2のデータ転送部201とによる転送データのDMA転送は、DRAMのバンク衝突が発生しないデータ転送部に決定することが望ましい。このため、第1のバッファ制御部112と第2のバッファ制御部212とのそれぞれは、通常のDMA転送においても、対応するデータ転送部に転送データを出力する際に、それぞれのデータ転送部がDRAMの異なるメモリバンクにDMA転送するように、転送データの出力順序を並び替えていることが考えられる。従って、ステップS120において第1のバッファ制御部112が第2のバッファ制御部212に出力する第1の転送データは、上述したように、次の第1の転送データ、すなわち、現在DMA転送している第1の転送データに連続している第1の転送データに限定されるものではない。   Note that the DMA transfer of the transfer data by the first data transfer unit 101 and the second data transfer unit 201 is preferably determined as a data transfer unit that does not cause a DRAM bank collision. For this reason, each of the first buffer control unit 112 and the second buffer control unit 212 also outputs the transfer data to the corresponding data transfer unit even in normal DMA transfer. It is conceivable that the output order of transfer data is rearranged so that DMA transfer is performed to different memory banks of the DRAM. Accordingly, the first transfer data output from the first buffer control unit 112 to the second buffer control unit 212 in step S120 is the next first transfer data, that is, the current DMA transfer as described above. The first transfer data is not limited to the first transfer data continuous to the first transfer data.

なお、本第1の実施形態では、データ転送待ち時間監視部131が、DMA転送の待ち時間のタイムアウトを検出する構成について説明したが、例えば、第1のデータ転送部101におけるDMA転送の待ち時間と、第2のデータ転送部201におけるDMA転送の待ち時間とのそれぞれを監視する構成であってもよい。また、例えば、データ転送待ち時間監視部131が、第1のデータ転送部101におけるDMA転送の待ち時間の平均時間と、第2のデータ転送部201におけるDMA転送の待ち時間の平均時間とのそれぞれを監視する構成であってもよい。この場合、メモリアクセス履歴収集部132は、データ転送待ち時間監視部131が監視した第1のデータ転送部101と第2のデータ転送部201とにおけるDMA転送の待ち時間や待ち時間の平均時間の割合に基づいて、例えば、第1のバッファ制御部112が第1の転送データの出力先を振り分ける割合を表す情報を、第1のバッファ制御部112に出力する構成にすることもできる。このような構成であっても、データ転送制御装置10は、第1の画像データ入力部100から入力された第1の転送データを、第1のデータ転送部101と第2のデータ転送部201とのそれぞれで並列にDMA転送することができる。   In the first embodiment, the configuration in which the data transfer wait time monitoring unit 131 detects the timeout of the DMA transfer wait time has been described. For example, the DMA transfer wait time in the first data transfer unit 101 is described. And a DMA transfer waiting time in the second data transfer unit 201 may be monitored. Further, for example, the data transfer waiting time monitoring unit 131 sets the average time of the DMA transfer waiting time in the first data transfer unit 101 and the average time of the DMA transfer waiting time in the second data transfer unit 201, respectively. May be configured to monitor. In this case, the memory access history collection unit 132 determines the DMA transfer waiting time and the average waiting time of the first data transfer unit 101 and the second data transfer unit 201 monitored by the data transfer waiting time monitoring unit 131. Based on the ratio, for example, the first buffer control unit 112 may be configured to output information indicating the ratio of distributing the output destination of the first transfer data to the first buffer control unit 112. Even in such a configuration, the data transfer control device 10 uses the first data transfer unit 101 and the second data transfer unit 201 as the first transfer data input from the first image data input unit 100. And DMA transfer can be performed in parallel.

<第2の実施形態>
次に、本実施形態のデータ転送制御装置10の別の構成および動作について説明する。なお、以下の説明においては、本実施形態のデータ転送制御装置10を、第1の実施形態のデータ転送制御装置10と区別するため、本第2の実施形態のデータ転送制御装置を、「データ転送制御装置20」という。そして、データ転送制御装置20を備えたデータ処理装置を、「データ処理装置2」という。図4は、本第2の実施形態におけるデータ転送制御装置20を備えたデータ処理装置2の構成の一例を示したブロック図である。図4には、DMA転送の負荷状態に基づいて、第1の画像データ入力部100から入力された第1の転送データを、第1のデータ転送部101と第2のデータ転送部201とに振り分ける制御を行うデータ転送制御装置20の構成を示している。
<Second Embodiment>
Next, another configuration and operation of the data transfer control device 10 of this embodiment will be described. In the following description, in order to distinguish the data transfer control device 10 of the present embodiment from the data transfer control device 10 of the first embodiment, the data transfer control device of the second embodiment is referred to as “data It is referred to as “transfer control device 20”. The data processing device provided with the data transfer control device 20 is referred to as “data processing device 2”. FIG. 4 is a block diagram illustrating an example of the configuration of the data processing device 2 including the data transfer control device 20 according to the second embodiment. In FIG. 4, the first transfer data input from the first image data input unit 100 is transferred to the first data transfer unit 101 and the second data transfer unit 201 based on the load state of the DMA transfer. 2 shows a configuration of a data transfer control device 20 that performs distribution control.

図4に示したデータ処理装置2は、図2に示したデータ処理装置1内のデータ転送制御装置10がデータ転送制御装置20に代わった構成であり、このデータ転送制御装置20の構成要素をより詳細に示している。なお、図4に示したデータ処理装置2内の構成要素およびデータ転送制御装置20内の構成要素には、図1および図2に示したデータ処理装置1内の構成要素およびデータ転送制御装置10内の構成要素と同様の構成要素も含まれている。従って、図4に示したデータ処理装置2およびデータ転送制御装置20の構成要素において、図1および図2に示したデータ処理装置1およびデータ転送制御装置10の構成要素と同様の構成要素には、同一の符号を付与し、それぞれの構成要素に関する詳細な説明は省略する。   The data processing device 2 shown in FIG. 4 has a configuration in which the data transfer control device 10 in the data processing device 1 shown in FIG. 2 replaces the data transfer control device 20, and the constituent elements of the data transfer control device 20 are the same. Shows in more detail. The components in the data processing device 2 and the data transfer control device 20 shown in FIG. 4 include the components in the data processing device 1 and the data transfer control device 10 shown in FIGS. Constituent elements similar to the constituent elements are included. Therefore, in the components of the data processing device 2 and the data transfer control device 20 shown in FIG. 4, the same components as those of the data processing device 1 and the data transfer control device 10 shown in FIGS. The same reference numerals are given, and detailed descriptions of the respective components are omitted.

データ転送制御装置20は、第1の実施形態のデータ転送制御装置10と同様に、データ処理装置2が第1のデータ転送部101および第2のデータ転送部201によってDRAMにDMA転送する転送データを制御する。従って、データ処理装置2でも、第1の実施形態のデータ転送制御装置10と同様に、第1のデータ転送部101および第2のデータ転送部201のそれぞれがDMA転送する転送データが、データ転送制御装置20を介して入力される。なお、以下の説明においても、第1の実施形態のデータ処理装置1と同様に、第1のデータ転送部101の方が、第2のデータ転送部201よりも優先度が高いイニシエータであるものとして説明を行う。   Similar to the data transfer control device 10 of the first embodiment, the data transfer control device 20 transfers transfer data that the data processing device 2 performs DMA transfer to the DRAM by the first data transfer unit 101 and the second data transfer unit 201. To control. Therefore, also in the data processing device 2, similarly to the data transfer control device 10 of the first embodiment, the transfer data that each of the first data transfer unit 101 and the second data transfer unit 201 performs DMA transfer is the data transfer. It is input via the control device 20. In the following description, as in the data processing apparatus 1 of the first embodiment, the first data transfer unit 101 is an initiator having a higher priority than the second data transfer unit 201. Will be described.

データ転送制御装置20は、第1のデータ転送部101および第2のデータ転送部201のそれぞれにおけるDMA転送の状態を監視し、監視した結果に応じて、第1のデータ転送部101または第2のデータ転送部201のいずれのデータ転送部によって転送データをDMA転送するかを決定し、決定した第1のデータ転送部101または第2のデータ転送部201のいずれかのデータ転送部に転送データを出力して、DMA転送を行わせる。データ転送制御装置20は、第1の転送制御部140と、第2の転送制御部210と、データ転送状態監視部150と、を備えている。   The data transfer control device 20 monitors the state of the DMA transfer in each of the first data transfer unit 101 and the second data transfer unit 201, and according to the monitored result, the first data transfer unit 101 or the second data transfer unit 20 The data transfer unit 201 of the first data transfer unit 201 determines whether the transfer data is DMA-transferred, and the transferred data is transferred to the data transfer unit of the determined first data transfer unit 101 or the second data transfer unit 201. Is output to cause DMA transfer. The data transfer control device 20 includes a first transfer control unit 140, a second transfer control unit 210, and a data transfer state monitoring unit 150.

第1の転送制御部140は、第1の実施形態の第1の転送制御部110と同様に、第1の画像データ入力部100から入力されたDMA転送する第1の転送データを、データ転送状態監視部150から入力された第1の転送制御情報に基づいて、第1のデータ転送部101と第2のデータ転送部201とに振り分ける。第1の転送制御部140は、第1の転送バッファ部111と第1のバッファ制御部142とを備えている。   Similar to the first transfer control unit 110 of the first embodiment, the first transfer control unit 140 transfers the first transfer data input from the first image data input unit 100 for DMA transfer to the data transfer unit. Based on the first transfer control information input from the state monitoring unit 150, the data is distributed to the first data transfer unit 101 and the second data transfer unit 201. The first transfer control unit 140 includes a first transfer buffer unit 111 and a first buffer control unit 142.

第1の転送バッファ部111は、第1の画像データ入力部100から出力された第1の転送データを格納し、第1のバッファ制御部142からの制御に応じて、格納した第1の転送データを、第1のバッファ制御部142に出力する。   The first transfer buffer unit 111 stores the first transfer data output from the first image data input unit 100, and stores the first transfer stored in accordance with the control from the first buffer control unit 142. The data is output to the first buffer control unit 142.

第1のバッファ制御部142は、データ転送状態監視部150から入力された第1の転送制御情報に含まれる負荷分散指示に応じて、次に転送する第1の転送データの出力先を、第1のデータ転送部101または第2の転送制御部210内の第2のバッファ制御部212のいずれか一方に決定する。そして、第1のバッファ制御部142は、第1の転送バッファ部111に格納されている第1の転送データを読み出し、読み出した第1の転送データを、決定した出力先に出力する。つまり、第1のバッファ制御部142は、データ転送状態監視部150から入力された負荷分散指示に応じて、第1の実施形態の第1のバッファ制御部112と同様に、第1の転送バッファ部111から読み出した第1の転送データを、第1のデータ転送部101または第2のバッファ制御部212のいずれか一方に振り分ける。   The first buffer control unit 142 sets the output destination of the first transfer data to be transferred next in response to the load distribution instruction included in the first transfer control information input from the data transfer state monitoring unit 150. The first data transfer unit 101 or the second buffer control unit 212 in the second transfer control unit 210 is determined. Then, the first buffer control unit 142 reads the first transfer data stored in the first transfer buffer unit 111, and outputs the read first transfer data to the determined output destination. In other words, the first buffer control unit 142 responds to the load distribution instruction input from the data transfer state monitoring unit 150 in the same manner as the first buffer control unit 112 in the first embodiment, as in the first transfer buffer. The first transfer data read from the unit 111 is distributed to either the first data transfer unit 101 or the second buffer control unit 212.

そして、第2のバッファ制御部212は、第1のバッファ制御部142から第1の転送データが入力された場合には、第1のバッファ制御部142から入力された第1の転送データを、第2のバッファ制御部212に出力する。これにより、第1の画像データ入力部100が出力した第1の転送データは、第1の実施形態のデータ転送制御装置10と同様に、第1のデータ転送部101に加えて、第2のデータ転送部201によってもDMA転送される。   Then, when the first transfer data is input from the first buffer control unit 142, the second buffer control unit 212 receives the first transfer data input from the first buffer control unit 142, The data is output to the second buffer control unit 212. Thereby, the first transfer data output from the first image data input unit 100 is added to the first data transfer unit 101 and the second transfer data in the same manner as the data transfer control device 10 of the first embodiment. The data transfer unit 201 also performs DMA transfer.

データ転送状態監視部150は、第1の実施形態のデータ転送状態監視部130と同様に、第1のデータ転送部101および第2のデータ転送部201のそれぞれにおいて行われているDMA転送の状態を監視する。このとき、データ転送状態監視部150は、DRAMのバンク衝突などによる、DMA転送の待ち時間や、転送データのDRAMへの転送数などの転送負荷の情報を収集する。そして、データ転送状態監視部150は、監視した第1のデータ転送部101のDMA転送の負荷状態に応じた負荷分散指示を、第1の転送制御情報として第1の転送制御部140内の第1のバッファ制御部142に出力する。   The data transfer state monitoring unit 150 is a DMA transfer state performed in each of the first data transfer unit 101 and the second data transfer unit 201, similarly to the data transfer state monitoring unit 130 of the first embodiment. To monitor. At this time, the data transfer state monitoring unit 150 collects transfer load information such as a DMA transfer waiting time due to DRAM bank collision and the number of transfer data transferred to the DRAM. Then, the data transfer state monitoring unit 150 uses the load distribution instruction according to the monitored DMA transfer load state of the first data transfer unit 101 as the first transfer control information in the first transfer control unit 140. 1 to the buffer control unit 142.

なお、データ転送状態監視部150が監視した第2のデータ転送部201のDMA転送の状態に応じて第2の転送制御部210に出力する第2の転送制御情報は、第1の実施形態のデータ転送状態監視部130と同様である。また、第1の転送制御情報および第2の転送制御情報には、第1の実施形態のデータ転送状態監視部130が出力する第1の転送制御情報および第2の転送制御情報と同様に、対応する第1のデータ転送部101および第2のデータ転送部201に転送データを出力する順序や、第1のデータ転送部101と第2のデータ転送部201とのタイミングを調停するための制御情報なども含まれる。データ転送状態監視部150は、転送負荷状態監視部151を備えている。   Note that the second transfer control information output to the second transfer control unit 210 according to the DMA transfer state of the second data transfer unit 201 monitored by the data transfer state monitoring unit 150 is the same as that of the first embodiment. This is the same as the data transfer state monitoring unit 130. Further, the first transfer control information and the second transfer control information include the same as the first transfer control information and the second transfer control information output by the data transfer state monitoring unit 130 of the first embodiment. Control for arbitrating the order of outputting the transfer data to the corresponding first data transfer unit 101 and second data transfer unit 201 and the timing of the first data transfer unit 101 and the second data transfer unit 201 Information is also included. The data transfer state monitoring unit 150 includes a transfer load state monitoring unit 151.

転送負荷状態監視部151は、第1のデータ転送部101がDMA転送を行う際の制御信号(例えば、リクエスト信号やアクノリッジ信号など)に基づいて、第1のデータ転送部101によるDMA転送の負荷を監視する。そして、転送負荷状態監視部151は、監視した第1のデータ転送部101におけるDMA転送の負荷が、予め定めた負荷よりも大きいか否かによって、負荷の分散を行うか否かを判定する。そして、転送負荷状態監視部151は、判定した結果に基づいて、第1のデータ転送部101がDMA転送する際の負荷を分散するための負荷分散指示を、第1のバッファ制御部142に出力する。   The transfer load state monitoring unit 151 loads the DMA transfer by the first data transfer unit 101 based on a control signal (for example, a request signal or an acknowledge signal) when the first data transfer unit 101 performs DMA transfer. To monitor. Then, the transfer load state monitoring unit 151 determines whether or not to distribute the load depending on whether or not the DMA transfer load in the monitored first data transfer unit 101 is larger than a predetermined load. Then, the transfer load state monitoring unit 151 outputs, to the first buffer control unit 142, a load distribution instruction for distributing the load when the first data transfer unit 101 performs the DMA transfer based on the determined result. To do.

この負荷分散指示に応じて、第1のバッファ制御部142は、次に転送する第1の転送データの出力先を第2のデータ転送部201に決定し、第1の転送バッファ部111から読み出した第1の転送データを第2のバッファ制御部212に出力することによって、第1の転送データを第2のデータ転送部201にDMA転送させる。このように、データ転送制御装置20では、第1の転送データのDMA転送を、第1のデータ転送部101と第2のデータ転送部201とによって並列に行わせることによって、第1のデータ転送部101がDMA転送する際の負荷を分散し、第1の転送データのDMA転送のリアルタイム性を確保する。   In response to this load distribution instruction, the first buffer control unit 142 determines the output destination of the first transfer data to be transferred next to the second data transfer unit 201 and reads it from the first transfer buffer unit 111. By outputting the first transfer data to the second buffer control unit 212, the first transfer data is DMA-transferred to the second data transfer unit 201. Thus, in the data transfer control device 20, the first data transfer is performed by causing the first data transfer unit 101 and the second data transfer unit 201 to perform the DMA transfer of the first transfer data in parallel. The load when the unit 101 performs DMA transfer is distributed, and the real-time property of DMA transfer of the first transfer data is ensured.

また、転送負荷状態監視部151は、第2のデータ転送部201がDMA転送を行う際の制御信号(例えば、リクエスト信号やアクノリッジ信号など)や、DRAMのメモリアドレスから得られるバンク情報に基づいて、第2のデータ転送部201によるDMA転送の状態を監視する。   Further, the transfer load state monitoring unit 151 is based on a control signal (for example, a request signal or an acknowledge signal) when the second data transfer unit 201 performs DMA transfer, or bank information obtained from a memory address of the DRAM. The state of DMA transfer by the second data transfer unit 201 is monitored.

なお、第1のバッファ制御部142が第1のデータ転送部101がDMA転送する際の負荷を分散する際にも、DRAMのバンク衝突が発生しないことが望ましい。従って、第1のバッファ制御部142は、第1の実施形態の第1のバッファ制御部112と同様に、第1の転送データを第1の転送バッファ部111から読み出す順序を変更するなどによって、第2のバッファ制御部212に出力する第1の転送データを選択するようにしてもよい。   Even when the first buffer control unit 142 distributes the load when the first data transfer unit 101 performs DMA transfer, it is desirable that no bank collision of DRAM occurs. Therefore, the first buffer control unit 142, like the first buffer control unit 112 of the first embodiment, changes the order of reading the first transfer data from the first transfer buffer unit 111, etc. The first transfer data to be output to the second buffer control unit 212 may be selected.

次に、データ転送制御装置20の動作について説明する。図5は、本第2の実施形態のデータ転送制御装置20によるデータ転送動作の処理手順を示したフローチャートである。第1の画像データ入力部100から第1の転送データが入力されると、データ転送制御装置20は、ステップS200から、第1のデータ転送部101および第2のデータ転送部201におけるDMA転送の転送負荷の情報(以下「転送負荷情報」という)の収集を開始する。なお、転送負荷情報の収集は、以降の処理手順を実行しているときにも、常に継続して行われる。   Next, the operation of the data transfer control device 20 will be described. FIG. 5 is a flowchart showing the processing procedure of the data transfer operation by the data transfer control device 20 of the second embodiment. When the first transfer data is input from the first image data input unit 100, the data transfer control device 20 starts DMA transfer in the first data transfer unit 101 and the second data transfer unit 201 from step S200. Collection of transfer load information (hereinafter referred to as “transfer load information”) is started. Note that the collection of transfer load information is always performed continuously even when the subsequent processing procedure is executed.

そして、転送負荷状態監視部151は、収集した転送負荷情報に基づいて、第1のデータ転送部101におけるDMA転送の負荷状態を監視する。より具体的には、第1のデータ転送部101がリクエスト信号をインターコネクトバス700に出力してから、アクノリッジ信号が返ってくるまでのDMA転送の待ち時間や、第1のデータ転送部101がリクエスト信号を出力した回数などを計測することによって、DMA転送の負荷状態を監視する。   Then, the transfer load state monitoring unit 151 monitors the load state of the DMA transfer in the first data transfer unit 101 based on the collected transfer load information. More specifically, the DMA transfer waiting time until the acknowledge signal is returned after the first data transfer unit 101 outputs the request signal to the interconnect bus 700, or the first data transfer unit 101 requests the request. The DMA transfer load state is monitored by measuring the number of times the signal is output.

また、転送負荷状態監視部151は、収集した転送負荷情報に基づいて、第2のデータ転送部201によるDMA転送の状態を監視する。より具体的には、第2のデータ転送部201がリクエスト信号をインターコネクトバス700に出力するときに指定するDRAMのメモリアドレスや、アクノリッジ信号が返ってきたときに指定されたDRAMのメモリアドレスに基づいて、第2のデータ転送部201がDMA転送するDRAMのメモリバンクを監視する。   Further, the transfer load state monitoring unit 151 monitors the state of the DMA transfer by the second data transfer unit 201 based on the collected transfer load information. More specifically, based on the memory address of the DRAM specified when the second data transfer unit 201 outputs the request signal to the interconnect bus 700, or the memory address of the DRAM specified when the acknowledge signal is returned. Thus, the second data transfer unit 201 monitors the memory bank of the DRAM that is DMA-transferred.

その後、転送負荷状態監視部151は、監視している第1のデータ転送部101によるDMA転送の負荷状態が予め定めた負荷よりも大きい場合(ステップS210の“YES”)、第1のデータ転送部101の負荷の分散を行うと判定し、負荷分散指示を第1のバッファ制御部142に出力する。   Thereafter, when the load state of the DMA transfer by the monitored first data transfer unit 101 is larger than a predetermined load (“YES” in step S210), the transfer load state monitoring unit 151 performs the first data transfer. The load of the unit 101 is determined to be distributed, and a load distribution instruction is output to the first buffer control unit 142.

なお、転送負荷状態監視部151は、監視している第1のデータ転送部101によるDMA転送の負荷状態が予め定めた負荷よりも大きくない場合(ステップS210の“NO”)には、ステップS200に戻って、第1のデータ転送部101におけるDMA転送の負荷状態の監視を継続する。   The transfer load state monitoring unit 151 determines that the load state of the DMA transfer by the first data transfer unit 101 being monitored is not larger than a predetermined load (“NO” in step S210), step S200. Returning to FIG. 2, the monitoring of the DMA transfer load state in the first data transfer unit 101 is continued.

転送負荷状態監視部151から負荷分散指示が入力されると、ステップS220において、第1のバッファ制御部142は、第1の転送データの出力先の振り分け、すなわち、第1のデータ転送部101と第2のデータ転送部201とによる第1の転送データの並列転送を開始する。そして、第1のバッファ制御部142は、第2のデータ転送部201によってDMA転送させる次の第1の転送データを、第2のバッファ制御部212に出力する。   When a load distribution instruction is input from the transfer load state monitoring unit 151, in step S220, the first buffer control unit 142 distributes the output destination of the first transfer data, that is, the first data transfer unit 101 and The parallel transfer of the first transfer data by the second data transfer unit 201 is started. Then, the first buffer control unit 142 outputs the next first transfer data to be DMA-transferred by the second data transfer unit 201 to the second buffer control unit 212.

続いて、ステップS230において、第2のバッファ制御部212は、第2のデータ転送部201に出力する転送データの出力順序を変更し、次に第2のデータ転送部201に出力する第2の転送データの代わりに、第1のバッファ制御部142から入力された第1の転送データを、第2のデータ転送部201に出力する。   Subsequently, in step S230, the second buffer control unit 212 changes the output order of the transfer data output to the second data transfer unit 201, and then outputs the second data output to the second data transfer unit 201. Instead of the transfer data, the first transfer data input from the first buffer control unit 142 is output to the second data transfer unit 201.

続いて、ステップS240において、第1のバッファ制御部142は、第1のデータ転送部101に出力する第1の転送データの出力順序を変更、つまり、第2のデータ転送部201によってDMA転送させる次の第1の転送データは出力したものとして、その次に第1のデータ転送部101に出力する第1の転送データを、第1のデータ転送部101に出力する。   Subsequently, in step S240, the first buffer control unit 142 changes the output order of the first transfer data output to the first data transfer unit 101, that is, the second data transfer unit 201 performs the DMA transfer. Assuming that the next first transfer data has been output, the first transfer data to be output to the first data transfer unit 101 is output to the first data transfer unit 101.

これにより、ステップS230で第2のデータ転送部201に出力された第1の転送データと、ステップS240で第1のデータ転送部101に出力された第1の転送データとが、それぞれ並列にDMA転送される。   As a result, the first transfer data output to the second data transfer unit 201 in step S230 and the first transfer data output to the first data transfer unit 101 in step S240 are each in parallel. Transferred.

その後、ステップS250において、転送負荷状態監視部151が、収集した転送負荷情報に基づいて、第2のデータ転送部201による第1の転送データのDMA転送が完了したことを認識すると、ステップS260において、第1のバッファ制御部142は、第1のデータ転送部101と第2のデータ転送部201とによる第1の転送データの1回目の並列転送を終了する。なお、ステップS240からステップS260までの間に、転送負荷状態監視部151が、第1のデータ転送部101による第1の転送データのDMA転送の完了を、収集した転送負荷情報に基づいて認識することもあると考えられる。   Thereafter, in step S250, when the transfer load state monitoring unit 151 recognizes that the DMA transfer of the first transfer data by the second data transfer unit 201 is completed based on the collected transfer load information, in step S260. The first buffer control unit 142 ends the first parallel transfer of the first transfer data by the first data transfer unit 101 and the second data transfer unit 201. In addition, between step S240 and step S260, the transfer load state monitoring unit 151 recognizes the completion of the DMA transfer of the first transfer data by the first data transfer unit 101 based on the collected transfer load information. It is thought that there is also.

以降、データ転送制御装置20は、図5に示したデータ転送動作のフローチャートの処理手順を繰り返して、第1の画像データ入力部100から入力された全ての第1の転送データのDMA転送を行う。   Thereafter, the data transfer control device 20 repeats the processing procedure in the flowchart of the data transfer operation shown in FIG. 5 to perform DMA transfer of all the first transfer data input from the first image data input unit 100. .

本第2の実施形態によれば、データ転送状態監視部(データ転送状態監視部150)は、第1のデータ転送部101が第1の転送データを転送する際の制御信号(例えば、リクエスト信号やアクノリッジ信号など)に基づいて、この第1のデータ転送部101における第1の転送データの転送の負荷を監視し、ここで監視した第1の転送データの転送負荷と予め定めた負荷の大きさとを比較することによって負荷の分散を行うか否かを判定し、ここで判定した結果に基づいて第1のデータ転送部101における転送負荷を分散するための負荷分散指示を出力する転送負荷状態監視部(転送負荷状態監視部151)、を備え、第1のバッファ制御部(第1のバッファ制御部142)は、転送負荷状態監視部151から出力された負荷分散指示に基づいて、第1の転送データを、第1のデータ転送部101と第2のバッファ制御部212とに振り分けて出力する、データ転送制御装置(データ転送制御装置20)が構成される。   According to the second embodiment, the data transfer state monitoring unit (data transfer state monitoring unit 150) controls the control signal (eg, request signal) when the first data transfer unit 101 transfers the first transfer data. And the load of the first transfer data in the first data transfer unit 101, and the transfer load of the first transfer data monitored here and the predetermined load are large. Transfer load state for determining whether or not to distribute the load by comparing the two, and outputting a load distribution instruction for distributing the transfer load in the first data transfer unit 101 based on the determination result A monitoring unit (transfer load state monitoring unit 151), and the first buffer control unit (first buffer control unit 142) receives the load distribution instruction output from the transfer load state monitoring unit 151. Zui, the first transfer data, the first data transfer unit 101 distributes the second buffer control unit 212 outputs a data transfer control device (data transfer control device 20) is constructed.

このようにして、データ転送制御装置20では、第1のデータ転送部101におけるDMA転送の負荷状態に基づいて、第1の画像データ入力部100から入力された第1の転送データを、第1のデータ転送部101と第2のデータ転送部201とに振り分けて、それぞれ並列にDMA転送する。これにより、データ転送制御装置20でも、第1の実施形態のデータ転送制御装置10と同様に、第1の画像データ入力部100が出力した第1の転送データをDMA転送する際のバス帯域が確保されて、DMA転送が円滑に行われ、第1の転送データのDMA転送のリアルタイム性を確保することができる。   In this way, the data transfer control device 20 uses the first transfer data input from the first image data input unit 100 as the first transfer data based on the DMA transfer load state in the first data transfer unit 101. The data transfer unit 101 and the second data transfer unit 201 are divided into DMA transfer in parallel. As a result, in the data transfer control device 20 as well, as in the data transfer control device 10 of the first embodiment, the bus bandwidth for DMA transfer of the first transfer data output from the first image data input unit 100 is reduced. As a result, the DMA transfer is performed smoothly, and the real-time property of the DMA transfer of the first transfer data can be ensured.

なお、データ転送制御装置20でも、第1の実施形態のデータ転送制御装置10と同様に、第1のデータ転送部101と第2のデータ転送部201とによる転送データのDMA転送においてDRAMのバンク衝突が発生しないように、第1のバッファ制御部142が第2のバッファ制御部212に振り分ける第1の転送データを決定することが望ましい。従って、ステップS220において第1のバッファ制御部142が第2のバッファ制御部212に出力する第1の転送データは、上述したように、次の第1の転送データに限定されるものではない。   In the data transfer control device 20, as in the data transfer control device 10 of the first embodiment, a DRAM bank is used for DMA transfer of transfer data by the first data transfer unit 101 and the second data transfer unit 201. It is desirable that the first buffer control unit 142 determines the first transfer data to be distributed to the second buffer control unit 212 so that no collision occurs. Accordingly, the first transfer data output from the first buffer control unit 142 to the second buffer control unit 212 in step S220 is not limited to the next first transfer data as described above.

<第3の実施形態>
次に、本実施形態のデータ転送制御装置10のさらに別の構成および動作について説明する。なお、以下の説明においては、本実施形態のデータ転送制御装置10を、第1の実施形態のデータ転送制御装置10と区別するため、本第3の実施形態のデータ転送制御装置を、「データ転送制御装置30」という。そして、データ転送制御装置30を備えたデータ処理装置を、「データ処理装置3」という。図6は、本第3の実施形態におけるデータ転送制御装置30を備えたデータ処理装置3の構成の一例を示したブロック図である。図6には、DMA転送する第1の転送データを格納する第1の転送バッファ部の記憶容量の残量(以下、「バッファ残量」という)に基づいて、第1の画像データ入力部100から入力された第1の転送データを、第1のデータ転送部101と第2のデータ転送部201とに振り分ける制御を行うデータ転送制御装置30の構成を示している。
<Third Embodiment>
Next, still another configuration and operation of the data transfer control device 10 of the present embodiment will be described. In the following description, in order to distinguish the data transfer control device 10 of the present embodiment from the data transfer control device 10 of the first embodiment, the data transfer control device of the third embodiment is referred to as “data This is referred to as “transfer control device 30”. The data processing device including the data transfer control device 30 is referred to as “data processing device 3”. FIG. 6 is a block diagram illustrating an example of the configuration of the data processing device 3 including the data transfer control device 30 according to the third embodiment. FIG. 6 shows the first image data input unit 100 based on the remaining storage capacity of the first transfer buffer unit for storing the first transfer data to be DMA transferred (hereinafter referred to as “buffer remaining amount”). 2 shows a configuration of the data transfer control device 30 that performs control to distribute the first transfer data input from 1 to the first data transfer unit 101 and the second data transfer unit 201.

図6に示したデータ処理装置3は、図2に示したデータ処理装置1内のデータ転送制御装置10がデータ転送制御装置30に代わった構成であり、このデータ転送制御装置30の構成要素をより詳細に示している。なお、図6に示したデータ処理装置3内の構成要素およびデータ転送制御装置30内の構成要素には、図1および図2に示したデータ処理装置1内の構成要素およびデータ転送制御装置10内の構成要素と同様の構成要素も含まれている。従って、図6に示したデータ処理装置3およびデータ転送制御装置30の構成要素において、図1および図2に示したデータ処理装置1およびデータ転送制御装置10の構成要素と同様の構成要素には、同一の符号を付与し、それぞれの構成要素に関する詳細な説明は省略する。   The data processing device 3 shown in FIG. 6 has a configuration in which the data transfer control device 10 in the data processing device 1 shown in FIG. 2 replaces the data transfer control device 30, and the constituent elements of the data transfer control device 30 are the same. Shows in more detail. Note that the components in the data processing device 3 and the components in the data transfer control device 30 shown in FIG. 6 include the components in the data processing device 1 and the data transfer control device 10 shown in FIGS. Constituent elements similar to the constituent elements are included. Therefore, in the components of the data processing device 3 and the data transfer control device 30 shown in FIG. 6, the same components as those of the data processing device 1 and the data transfer control device 10 shown in FIGS. The same reference numerals are given, and detailed descriptions of the respective components are omitted.

データ転送制御装置30は、第1の実施形態のデータ転送制御装置10と同様に、データ処理装置3が第1のデータ転送部101および第2のデータ転送部201によってDRAMにDMA転送する転送データを制御する。従って、データ処理装置3でも、第1の実施形態のデータ転送制御装置10と同様に、第1のデータ転送部101および第2のデータ転送部201のそれぞれがDMA転送する転送データが、データ転送制御装置30を介して入力される。なお、以下の説明においても、第1の実施形態のデータ処理装置1と同様に、第1のデータ転送部101の方が、第2のデータ転送部201よりも優先度が高いイニシエータであるものとして説明を行う。   Similarly to the data transfer control device 10 of the first embodiment, the data transfer control device 30 transfers data transferred by the data processing device 3 to the DRAM by the first data transfer unit 101 and the second data transfer unit 201. To control. Therefore, also in the data processing device 3, similarly to the data transfer control device 10 of the first embodiment, the transfer data that each of the first data transfer unit 101 and the second data transfer unit 201 performs DMA transfer is data transfer. It is input via the control device 30. In the following description, as in the data processing apparatus 1 of the first embodiment, the first data transfer unit 101 is an initiator having a higher priority than the second data transfer unit 201. Will be described.

データ転送制御装置30は、第1のデータ転送部101がDMA転送する際のメモリアクセス情報に基づいて、データ転送制御装置30自身に備えた、DMA転送する第1の転送データを格納する第1の転送バッファ部のバッファ残量を監視し、監視したバッファ残量に応じて、第1のデータ転送部101または第2のデータ転送部201のいずれのデータ転送部によって転送データをDMA転送するかを決定する。そして、データ転送制御装置30は、第1の実施形態のデータ転送制御装置10と同様に、決定した第1のデータ転送部101または第2のデータ転送部201のいずれかのデータ転送部に転送データを出力して、DMA転送を行わせる。データ転送制御装置30は、第1の転送制御部160と、第2の転送制御部210と、データ転送状態監視部170と、を備えている。   The data transfer control device 30 stores the first transfer data to be DMA-transferred in the data transfer control device 30 itself based on the memory access information when the first data transfer unit 101 performs the DMA transfer. Whether the transfer data is DMA-transferred by the first data transfer unit 101 or the second data transfer unit 201 according to the monitored buffer remaining amount. To decide. Then, the data transfer control device 30 transfers to the determined data transfer unit of the first data transfer unit 101 or the second data transfer unit 201 in the same manner as the data transfer control device 10 of the first embodiment. Data is output and DMA transfer is performed. The data transfer control device 30 includes a first transfer control unit 160, a second transfer control unit 210, and a data transfer state monitoring unit 170.

第1の転送制御部160は、第1の実施形態の第1の転送制御部110と同様に、第1の画像データ入力部100から入力されたDMA転送する第1の転送データを、データ転送状態監視部170から入力された第1の転送制御情報に基づいて、第1のデータ転送部101と第2のデータ転送部201とに振り分ける。第1の転送制御部160は、第1の転送バッファ部111と第1のバッファ制御部162とを備えている。   Similar to the first transfer control unit 110 of the first embodiment, the first transfer control unit 160 performs data transfer on the first transfer data to be DMA-transferred input from the first image data input unit 100. Based on the first transfer control information input from the state monitoring unit 170, the data is distributed to the first data transfer unit 101 and the second data transfer unit 201. The first transfer control unit 160 includes a first transfer buffer unit 111 and a first buffer control unit 162.

第1の転送バッファ部111は、第1の画像データ入力部100から出力された第1の転送データを格納し、第1のバッファ制御部162からの制御に応じて、格納した第1の転送データを、第1のバッファ制御部162に出力する。   The first transfer buffer unit 111 stores the first transfer data output from the first image data input unit 100, and stores the first transfer data in accordance with control from the first buffer control unit 162. The data is output to the first buffer control unit 162.

第1のバッファ制御部162は、データ転送状態監視部170から入力された第1の転送制御情報に含まれる負荷分散指示に応じて、次に転送する第1の転送データの出力先を、第1のデータ転送部101または第2の転送制御部210内の第2のバッファ制御部212のいずれか一方に決定し、第1の転送バッファ部111に格納されている第1の転送データを読み出して、決定した出力先に出力する。つまり、第1のバッファ制御部162は、データ転送状態監視部170から入力された負荷分散指示に応じて、第1の実施形態の第1のバッファ制御部112と同様に、第1の転送バッファ部111から読み出した第1の転送データを、第1のデータ転送部101または第2のバッファ制御部212のいずれか一方に振り分ける。   The first buffer control unit 162 sets the output destination of the first transfer data to be transferred next in response to the load distribution instruction included in the first transfer control information input from the data transfer state monitoring unit 170. 1st data transfer unit 101 or the second buffer control unit 212 in the second transfer control unit 210 is determined, and the first transfer data stored in the first transfer buffer unit 111 is read. To the determined output destination. That is, the first buffer control unit 162 responds to the load distribution instruction input from the data transfer state monitoring unit 170 in the same manner as the first buffer control unit 112 of the first embodiment, The first transfer data read from the unit 111 is distributed to either the first data transfer unit 101 or the second buffer control unit 212.

そして、第2のバッファ制御部212は、第1のバッファ制御部162から第1の転送データが入力された場合には、第1のバッファ制御部162から入力された第1の転送データを、第2のバッファ制御部212に出力する。これにより、第1の画像データ入力部100が出力した第1の転送データは、第1の実施形態のデータ転送制御装置10と同様に、第1のデータ転送部101に加えて、第2のデータ転送部201によってもDMA転送される。   The second buffer control unit 212 receives the first transfer data input from the first buffer control unit 162 when the first transfer data is input from the first buffer control unit 162. The data is output to the second buffer control unit 212. Thereby, the first transfer data output from the first image data input unit 100 is added to the first data transfer unit 101 and the second transfer data in the same manner as the data transfer control device 10 of the first embodiment. The data transfer unit 201 also performs DMA transfer.

データ転送状態監視部170は、第1の実施形態のデータ転送状態監視部130と同様に、第1のデータ転送部101および第2のデータ転送部201のそれぞれにおいて行われているDMA転送の状態を監視する。このとき、データ転送状態監視部170は、第1のデータ転送部101がDMA転送する際の制御信号に基づいて、第1の転送バッファ部111のバッファ残量を監視する。そして、データ転送状態監視部170は、監視した第1の転送バッファ部111のバッファ残量に応じた負荷分散指示を、第1の転送制御情報として第1の転送制御部160内の第1のバッファ制御部162に出力する。   Similarly to the data transfer status monitoring unit 130 of the first embodiment, the data transfer status monitoring unit 170 is a status of DMA transfer performed in each of the first data transfer unit 101 and the second data transfer unit 201. To monitor. At this time, the data transfer state monitoring unit 170 monitors the remaining buffer capacity of the first transfer buffer unit 111 based on a control signal when the first data transfer unit 101 performs DMA transfer. Then, the data transfer state monitoring unit 170 uses, as the first transfer control information, the first transfer control unit 160 in the first transfer control unit 160 as a load distribution instruction according to the monitored buffer remaining capacity of the first transfer buffer unit 111. The data is output to the buffer control unit 162.

なお、データ転送状態監視部170が監視した第2のデータ転送部201のDMA転送の状態に応じて第2の転送制御部210に出力する第2の転送制御情報は、第1の実施形態のデータ転送状態監視部130と同様である。また、第1の転送制御情報および第2の転送制御情報には、第1の実施形態のデータ転送状態監視部130が出力する第1の転送制御情報および第2の転送制御情報と同様に、対応する第1のデータ転送部101および第2のデータ転送部201に転送データを出力する順序や、第1のデータ転送部101と第2のデータ転送部201とのタイミングを調停するための制御情報なども含まれる。データ転送状態監視部170は、転送バッファ残量監視部171を備えている。   Note that the second transfer control information output to the second transfer control unit 210 according to the DMA transfer state of the second data transfer unit 201 monitored by the data transfer state monitoring unit 170 is the same as that of the first embodiment. This is the same as the data transfer state monitoring unit 130. Further, the first transfer control information and the second transfer control information include the same as the first transfer control information and the second transfer control information output by the data transfer state monitoring unit 130 of the first embodiment. Control for arbitrating the order of outputting the transfer data to the corresponding first data transfer unit 101 and second data transfer unit 201 and the timing of the first data transfer unit 101 and the second data transfer unit 201 Information is also included. The data transfer state monitoring unit 170 includes a transfer buffer remaining amount monitoring unit 171.

転送バッファ残量監視部171は、第1のデータ転送部101がDMA転送を行う際の制御信号(例えば、リクエスト信号やアクノリッジ信号など)に基づいて、第1の転送バッファ部111のバッファ残量を監視する。そして、転送バッファ残量監視部171は、監視した第1の転送バッファ部111のバッファ残量が、予め定めた記憶容量よりも少ないか否かによって、負荷の分散を行うか否かを判定する。そして、転送バッファ残量監視部171は、判定した結果に基づいて、第1のデータ転送部101がDMA転送する際の負荷を分散するための負荷分散指示を、第1のバッファ制御部162に出力する。   The transfer buffer remaining amount monitoring unit 171 receives the buffer remaining amount of the first transfer buffer unit 111 based on a control signal (for example, a request signal or an acknowledge signal) when the first data transfer unit 101 performs DMA transfer. To monitor. The transfer buffer remaining amount monitoring unit 171 determines whether or not to distribute the load depending on whether or not the monitored buffer remaining amount of the first transfer buffer unit 111 is less than a predetermined storage capacity. . The transfer buffer remaining amount monitoring unit 171 then gives a load distribution instruction for distributing the load when the first data transfer unit 101 performs DMA transfer to the first buffer control unit 162 based on the determined result. Output.

この負荷分散指示に応じて、第1のバッファ制御部162は、次に転送する第1の転送データの出力先を第2のデータ転送部201に決定し、第1の転送バッファ部111から読み出した第1の転送データを第2のバッファ制御部212に出力することによって、第1の転送データを第2のデータ転送部201にDMA転送させる。このように、データ転送制御装置30でも、第1の転送データのDMA転送を、第1のデータ転送部101と第2のデータ転送部201とによって並列に行わせることによって、第1のデータ転送部101がDMA転送する際の負荷を分散し、第1の転送データのDMA転送のリアルタイム性を確保する。   In response to this load distribution instruction, the first buffer control unit 162 determines the output destination of the first transfer data to be transferred next as the second data transfer unit 201 and reads out from the first transfer buffer unit 111. By outputting the first transfer data to the second buffer control unit 212, the first transfer data is DMA-transferred to the second data transfer unit 201. As described above, also in the data transfer control device 30, the first data transfer is performed by causing the first data transfer unit 101 and the second data transfer unit 201 to perform the DMA transfer of the first transfer data in parallel. The load when the unit 101 performs DMA transfer is distributed, and the real-time property of DMA transfer of the first transfer data is ensured.

なお、第1のバッファ制御部162が第1のデータ転送部101がDMA転送する際の負荷を分散する際にも、DRAMのバンク衝突が発生しないことが望ましい。従って、第1のバッファ制御部162は、第1の実施形態の第1のバッファ制御部112と同様に、第1の転送データを第1の転送バッファ部111から読み出す順序を変更するなどによって、第2のバッファ制御部212に出力する第1の転送データを選択するようにしてもよい。   Even when the first buffer control unit 162 distributes the load when the first data transfer unit 101 performs the DMA transfer, it is desirable that no bank collision of the DRAM occurs. Accordingly, the first buffer control unit 162 changes the order in which the first transfer data is read from the first transfer buffer unit 111, as in the first buffer control unit 112 of the first embodiment. The first transfer data to be output to the second buffer control unit 212 may be selected.

また、転送バッファ残量監視部171は、第1のデータ転送部101がDMA転送を行う際の制御信号以外の情報に基づいて、第1の転送バッファ部111のバッファ残量を監視する構成にすることもできる。例えば、第1の画像データ入力部100が第1の転送バッファ部111に第1の転送データを格納(書き込む)際のライト信号と、第1のバッファ制御部162が第1の転送バッファ部111から第1の転送データを読み出す際のリード信号とに基づいて、第1の転送バッファ部111のバッファ残量を監視する構成にすることもできる。   Also, the transfer buffer remaining amount monitoring unit 171 monitors the buffer remaining amount of the first transfer buffer unit 111 based on information other than the control signal when the first data transfer unit 101 performs DMA transfer. You can also For example, a write signal when the first image data input unit 100 stores (writes) the first transfer data in the first transfer buffer unit 111, and the first buffer control unit 162 sets the first transfer buffer unit 111. The remaining amount of the buffer in the first transfer buffer unit 111 can be monitored based on the read signal when reading the first transfer data from.

次に、データ転送制御装置30の動作について説明する。図7は、本第3の実施形態のデータ転送制御装置30によるデータ転送動作の処理手順を示したフローチャートである。第1の画像データ入力部100から第1の転送データが入力されると、データ転送制御装置30に備えたデータ転送状態監視部170内の転送バッファ残量監視部171は、第1のデータ転送部101がDMA転送を行う際の制御信号の情報に基づいて、第1の転送バッファ部111のバッファ残量を監視する。より具体的には、第1のデータ転送部101がリクエスト信号をインターコネクトバス700に出力した回数と、アクノリッジ信号が返ってきた回数との差分によって、第1の転送バッファ部111に記憶され、DMA転送されていない第1の転送データのデータ量を算出する。なお、第1のデータ転送部101が1回のDMA転送によってDRAMに転送するデータ量は一定であるものとする。そして、第1の転送バッファ部111の記憶容量から、算出した第1の転送データのデータ量を減算することによって、第1の転送バッファ部111のバッファ残量を監視する。なお、第1の転送バッファ部111のバッファ残量の監視は、以降の処理手順を実行しているときにも、常に継続して行われる。   Next, the operation of the data transfer control device 30 will be described. FIG. 7 is a flowchart illustrating a processing procedure of a data transfer operation by the data transfer control device 30 according to the third embodiment. When the first transfer data is input from the first image data input unit 100, the transfer buffer remaining amount monitoring unit 171 in the data transfer state monitoring unit 170 included in the data transfer control device 30 performs the first data transfer. The remaining buffer capacity of the first transfer buffer unit 111 is monitored based on information of a control signal when the unit 101 performs DMA transfer. More specifically, the first data transfer unit 101 stores the request signal to the interconnect bus 700 and the difference between the number of times the acknowledge signal is returned and is stored in the first transfer buffer unit 111, and the DMA. The data amount of the first transfer data that has not been transferred is calculated. It is assumed that the amount of data that the first data transfer unit 101 transfers to the DRAM by one DMA transfer is constant. Then, the remaining amount of the buffer in the first transfer buffer unit 111 is monitored by subtracting the calculated amount of the first transfer data from the storage capacity of the first transfer buffer unit 111. Note that the monitoring of the remaining buffer capacity of the first transfer buffer unit 111 is continuously performed even when the subsequent processing procedure is being executed.

その後、転送バッファ残量監視部171は、監視している第1の転送バッファ部111のバッファ残量が予め定めた記憶容量よりも少ない場合(ステップS300の“YES”)、すなわち、第1の転送バッファ部111の記憶容量の残量不足を検出した場合、第1のデータ転送部101の負荷の分散を行うと判定し、負荷分散指示を第1のバッファ制御部162に出力する。   Thereafter, the transfer buffer remaining amount monitoring unit 171 determines that the buffer remaining amount of the first transfer buffer unit 111 being monitored is smaller than a predetermined storage capacity (“YES” in step S300), that is, the first When an insufficient storage capacity of the transfer buffer unit 111 is detected, it is determined that the load of the first data transfer unit 101 is to be distributed, and a load distribution instruction is output to the first buffer control unit 162.

なお、転送バッファ残量監視部171は、監視している第1の転送バッファ部111のバッファ残量が予め定めた記憶容量よりも少なくない場合(ステップS300の“NO”)、すなわち、第1の転送バッファ部111の記憶容量が十分にある場合には、ステップS300における第1の転送バッファ部111のバッファ残量の監視を継続する。   The transfer buffer remaining amount monitoring unit 171 determines that the buffer remaining amount of the first transfer buffer unit 111 being monitored is not less than a predetermined storage capacity (“NO” in step S300), that is, the first If the storage capacity of the transfer buffer unit 111 is sufficient, monitoring of the remaining buffer capacity of the first transfer buffer unit 111 in step S300 is continued.

転送バッファ残量監視部171から負荷分散指示が入力されると、ステップS310において、第1のバッファ制御部162は、第1の転送データの出力先の振り分け、すなわち、第1のデータ転送部101と第2のデータ転送部201とによる第1の転送データの並列転送を開始する。   When a load distribution instruction is input from the transfer buffer remaining amount monitoring unit 171, in step S <b> 310, the first buffer control unit 162 distributes the output destination of the first transfer data, that is, the first data transfer unit 101. And the second data transfer unit 201 start parallel transfer of the first transfer data.

なお、第1のバッファ制御部162における第1の転送データの並列転送の処理手順は、第1の実施形態の第1のバッファ制御部112と同様における第1の転送データの並列転送の処理手順と同様である。より具体的には、図3に示したデータ転送制御装置10によるデータ転送動作の処理手順におけるステップS120〜ステップS150と同様である。従って、第1のバッファ制御部162における第1の転送データの並列転送の処理手順の詳細な説明は省略する。   Note that the parallel transfer processing procedure of the first transfer data in the first buffer control unit 162 is the same as the first transfer data parallel transfer processing procedure of the first buffer control unit 112 of the first embodiment. It is the same. More specifically, it is the same as step S120 to step S150 in the processing procedure of the data transfer operation by the data transfer control device 10 shown in FIG. Therefore, a detailed description of the processing procedure of the parallel transfer of the first transfer data in the first buffer control unit 162 is omitted.

その後、第1のバッファ制御部162は、第1の転送バッファ部111の記憶容量の残量不足が解消された場合(ステップS320の“YES”)、すなわち、転送バッファ残量監視部171からの負荷分散指示が解除された場合、ステップS330において、第1のデータ転送部101と第2のデータ転送部201とによる第1の転送データの1回の並列転送を終了する。   Thereafter, the first buffer control unit 162, when the shortage of the storage capacity of the first transfer buffer unit 111 is resolved (“YES” in step S320), that is, from the transfer buffer remaining amount monitoring unit 171 When the load distribution instruction is canceled, in step S330, one parallel transfer of the first transfer data by the first data transfer unit 101 and the second data transfer unit 201 is terminated.

なお、第1のバッファ制御部162は、第1の転送バッファ部111の記憶容量の残量不足が解消されていない場合(ステップS320の“NO”)、すなわち、転送バッファ残量監視部171からの負荷分散指示が入力された状態である場合には、ステップS310に戻って、次の第1の転送データの第2のデータ転送部201による並列転送を、第1の転送バッファ部111の記憶容量の残量不足が解消されるまで繰り返す。   Note that the first buffer control unit 162 determines that the shortage of the storage capacity of the first transfer buffer unit 111 has not been resolved (“NO” in step S320), that is, from the transfer buffer remaining amount monitoring unit 171. When the load distribution instruction is input, the process returns to step S310, and the parallel transfer by the second data transfer unit 201 of the next first transfer data is stored in the first transfer buffer unit 111. Repeat until the capacity shortage is resolved.

以降、データ転送制御装置30は、図7に示したデータ転送動作のフローチャートの処理手順を繰り返して、第1の画像データ入力部100から入力された全ての第1の転送データのDMA転送を行う。   Thereafter, the data transfer control device 30 repeats the processing procedure of the flowchart of the data transfer operation shown in FIG. 7 to perform DMA transfer of all the first transfer data input from the first image data input unit 100. .

本第3の実施形態によれば、データ転送状態監視部(データ転送状態監視部170)は、第1のデータ転送部101が第1の転送データを転送する際の制御信号(例えば、リクエスト信号やアクノリッジ信号など)に基づいて、第1の転送バッファ部111の記憶容量の残量を監視し、ここで監視した記憶容量の残量に応じて、第1のデータ転送部101における転送負荷を分散するための負荷分散指示を出力する転送バッファ残量監視部(転送バッファ残量監視部171)、を備え、第1のバッファ制御部(第1のバッファ制御部162)は、転送バッファ残量監視部171から出力された負荷分散指示に基づいて、第1の転送データを、第1のデータ転送部101と第2のバッファ制御部212とに振り分けて出力する、データ転送制御装置(データ転送制御装置30)が構成される。   According to the third embodiment, the data transfer state monitoring unit (data transfer state monitoring unit 170) controls the control signal (for example, a request signal) when the first data transfer unit 101 transfers the first transfer data. Based on the remaining storage capacity of the first transfer buffer unit 111, and the transfer load in the first data transfer unit 101 is determined according to the monitored remaining storage capacity. A transfer buffer remaining amount monitoring unit (transfer buffer remaining amount monitoring unit 171) that outputs a load distribution instruction for distribution, and the first buffer control unit (first buffer control unit 162) includes a transfer buffer remaining amount Data transfer control for distributing and outputting the first transfer data to the first data transfer unit 101 and the second buffer control unit 212 based on the load distribution instruction output from the monitoring unit 171 Location (the data transfer control device 30) is constructed.

このようにして、データ転送制御装置30では、第1の転送データをDMA転送する際に使用する第1の転送バッファ部111のバッファ残量に基づいて、第1の画像データ入力部100から入力された第1の転送データを、第1のデータ転送部101と第2のデータ転送部201とに振り分けて、それぞれ並列にDMA転送する。これにより、データ転送制御装置30でも、第1の実施形態のデータ転送制御装置10と同様に、第1の画像データ入力部100が出力した第1の転送データをDMA転送する際のバス帯域が確保されて、DMA転送が円滑に行われ、第1の転送データのDMA転送のリアルタイム性を確保することができる。   In this way, the data transfer control device 30 inputs from the first image data input unit 100 based on the remaining buffer capacity of the first transfer buffer unit 111 used when the first transfer data is DMA-transferred. The transferred first transfer data is distributed to the first data transfer unit 101 and the second data transfer unit 201, and DMA-transferred in parallel. As a result, in the data transfer control device 30 as well, as in the data transfer control device 10 of the first embodiment, the bus bandwidth for DMA transfer of the first transfer data output from the first image data input unit 100 is reduced. As a result, the DMA transfer is performed smoothly, and the real-time property of the DMA transfer of the first transfer data can be ensured.

なお、データ転送制御装置30でも、第1の実施形態のデータ転送制御装置10と同様に、第1のデータ転送部101と第2のデータ転送部201とによる転送データのDMA転送においてDRAMのバンク衝突が発生しないように、第1のバッファ制御部162が第2のバッファ制御部212に振り分ける第1の転送データを決定することが望ましい。従って、第1の転送バッファ部111の記憶容量の残量不足が解消されていない場合に、ステップS310において第1のバッファ制御部162が第2のバッファ制御部212に出力する第1の転送データは、上述したように、次の第1の転送データに限定されるものではない。   In the data transfer control device 30 as well, as in the data transfer control device 10 of the first embodiment, in the DMA transfer of the transfer data by the first data transfer unit 101 and the second data transfer unit 201, the DRAM bank It is desirable that the first buffer control unit 162 determines the first transfer data to be distributed to the second buffer control unit 212 so that no collision occurs. Accordingly, the first transfer data output from the first buffer control unit 162 to the second buffer control unit 212 in step S310 when the shortage of the storage capacity of the first transfer buffer unit 111 has not been resolved. As described above, is not limited to the next first transfer data.

<第4の実施形態>
次に、本実施形態のデータ転送制御装置10のさらに別の構成および動作について説明する。なお、以下の説明においては、本実施形態のデータ転送制御装置10を、第1の実施形態のデータ転送制御装置10と区別するため、本第4の実施形態のデータ転送制御装置を、「データ転送制御装置40」という。そして、データ転送制御装置40を備えたデータ処理装置を、「データ処理装置4」という。図8は、本第4の実施形態におけるデータ転送制御装置40を備えたデータ処理装置4の構成の一例を示したブロック図である。図8には、データ処理装置4の動作モードに応じて、第1の画像データ入力部100から入力された第1の転送データを、第1のデータ転送部101と第2のデータ転送部201とに振り分ける制御を行うデータ転送制御装置40の構成を示している。
<Fourth Embodiment>
Next, still another configuration and operation of the data transfer control device 10 of the present embodiment will be described. In the following description, in order to distinguish the data transfer control device 10 of the present embodiment from the data transfer control device 10 of the first embodiment, the data transfer control device of the fourth embodiment is referred to as “data This is referred to as “transfer control device 40”. The data processing device including the data transfer control device 40 is referred to as “data processing device 4”. FIG. 8 is a block diagram illustrating an example of the configuration of the data processing device 4 including the data transfer control device 40 according to the fourth embodiment. FIG. 8 shows the first transfer data input from the first image data input unit 100 as the first data transfer unit 101 and the second data transfer unit 201 according to the operation mode of the data processing device 4. 2 shows a configuration of a data transfer control device 40 that performs control to distribute the data.

なお、データ処理装置4の動作モードは、データ処理装置4全体を制御する、例えば、CPU(Central Processing Unit)などの不図示の制御部によって設定される。データ処理装置4の動作モードには、例えば、静止画像と動画像とを同時に撮影する動作モードや、静止画像を連続で撮影する動作モード、動画像のみを撮影する動作モードなどがある。   The operation mode of the data processing device 4 is set by a control unit (not shown) such as a CPU (Central Processing Unit) that controls the entire data processing device 4. The operation mode of the data processing device 4 includes, for example, an operation mode for capturing a still image and a moving image at the same time, an operation mode for capturing still images continuously, and an operation mode for capturing only a moving image.

図8に示したデータ処理装置4は、図2に示したデータ処理装置1内のデータ転送制御装置10がデータ転送制御装置40に代わった構成であり、このデータ転送制御装置40の構成要素をより詳細に示している。なお、図8に示したデータ処理装置4内の構成要素およびデータ転送制御装置40内の構成要素には、図1および図2に示したデータ処理装置1内の構成要素およびデータ転送制御装置10内の構成要素と同様の構成要素も含まれている。従って、図8に示したデータ処理装置4およびデータ転送制御装置40の構成要素において、図1および図2に示したデータ処理装置1およびデータ転送制御装置10の構成要素と同様の構成要素には、同一の符号を付与し、それぞれの構成要素に関する詳細な説明は省略する。   The data processing device 4 shown in FIG. 8 has a configuration in which the data transfer control device 10 in the data processing device 1 shown in FIG. 2 is replaced with the data transfer control device 40. Shows in more detail. The components in the data processing device 4 and the data transfer control device 40 shown in FIG. 8 include the components in the data processing device 1 and the data transfer control device 10 shown in FIGS. Constituent elements similar to the constituent elements are included. Therefore, in the components of the data processing device 4 and the data transfer control device 40 shown in FIG. 8, the same components as those of the data processing device 1 and the data transfer control device 10 shown in FIGS. The same reference numerals are given, and detailed descriptions of the respective components are omitted.

データ転送制御装置40は、第1の実施形態のデータ転送制御装置10と同様に、データ処理装置4が第1のデータ転送部101および第2のデータ転送部201によってDRAMにDMA転送する転送データを制御する。従って、データ処理装置4でも、第1の実施形態のデータ転送制御装置10と同様に、第1のデータ転送部101および第2のデータ転送部201のそれぞれがDMA転送する転送データが、データ転送制御装置40を介して入力される。なお、以下の説明においても、第1の実施形態のデータ処理装置1と同様に、第1のデータ転送部101の方が、第2のデータ転送部201よりも優先度が高いイニシエータであるものとして説明を行う。   Similar to the data transfer control device 10 of the first embodiment, the data transfer control device 40 is transfer data that the data processing device 4 performs DMA transfer to the DRAM by the first data transfer unit 101 and the second data transfer unit 201. To control. Therefore, also in the data processing device 4, similarly to the data transfer control device 10 of the first embodiment, the transfer data that each of the first data transfer unit 101 and the second data transfer unit 201 performs DMA transfer is the data transfer. It is input via the control device 40. In the following description, as in the data processing apparatus 1 of the first embodiment, the first data transfer unit 101 is an initiator having a higher priority than the second data transfer unit 201. Will be described.

データ転送制御装置40は、設定された動作モードに応じて、第1のデータ転送部101または第2のデータ転送部201のいずれのデータ転送部によって転送データをDMA転送するかを決定する。そして、データ転送制御装置40は、第1の実施形態のデータ転送制御装置10と同様に、決定した第1のデータ転送部101または第2のデータ転送部201のいずれかのデータ転送部に転送データを出力して、DMA転送を行わせる。データ転送制御装置40は、第1の転送制御部180と、第2の転送制御部210と、データ転送状態監視部190と、を備えている。   The data transfer control device 40 determines which one of the first data transfer unit 101 and the second data transfer unit 201 performs DMA transfer of the transfer data according to the set operation mode. Then, the data transfer control device 40 transfers to the determined data transfer unit of the first data transfer unit 101 or the second data transfer unit 201 in the same manner as the data transfer control device 10 of the first embodiment. Data is output and DMA transfer is performed. The data transfer control device 40 includes a first transfer control unit 180, a second transfer control unit 210, and a data transfer state monitoring unit 190.

第1の転送制御部180は、第1の実施形態の第1の転送制御部110と同様に、第1の画像データ入力部100から入力されたDMA転送する第1の転送データを、データ転送状態監視部190から入力された第1の転送制御情報に基づいて、第1のデータ転送部101と第2のデータ転送部201とに振り分ける。第1の転送制御部180は、第1の転送バッファ部111と第1のバッファ制御部182とを備えている。   Similar to the first transfer control unit 110 of the first embodiment, the first transfer control unit 180 transfers the first transfer data input from the first image data input unit 100 for DMA transfer to the data transfer unit. Based on the first transfer control information input from the state monitoring unit 190, the data is distributed to the first data transfer unit 101 and the second data transfer unit 201. The first transfer control unit 180 includes a first transfer buffer unit 111 and a first buffer control unit 182.

第1の転送バッファ部111は、第1の画像データ入力部100から出力された第1の転送データを格納し、第1のバッファ制御部182からの制御に応じて、格納した第1の転送データを、第1のバッファ制御部182に出力する。   The first transfer buffer unit 111 stores the first transfer data output from the first image data input unit 100, and stores the first transfer stored in accordance with the control from the first buffer control unit 182. The data is output to the first buffer control unit 182.

第1のバッファ制御部182は、データ転送状態監視部190から入力された第1の転送制御情報に含まれる経路選択指示に応じて、転送する第1の転送データの出力先を、第1のデータ転送部101または第2の転送制御部210内の第2のバッファ制御部212のいずれか一方に決定し、第1の転送バッファ部111に格納されている第1の転送データを読み出して、決定した出力先に出力する。つまり、第1のバッファ制御部182は、データ転送状態監視部190から入力された経路選択指示に応じて、第1の実施形態の第1のバッファ制御部112と同様に、第1の転送バッファ部111から読み出した第1の転送データを、第1のデータ転送部101または第2のバッファ制御部212のいずれか一方に振り分ける。   The first buffer control unit 182 determines the output destination of the first transfer data to be transferred in accordance with the path selection instruction included in the first transfer control information input from the data transfer state monitoring unit 190. Decide on either the data transfer unit 101 or the second buffer control unit 212 in the second transfer control unit 210, read the first transfer data stored in the first transfer buffer unit 111, Output to the determined output destination. That is, the first buffer control unit 182 responds to the path selection instruction input from the data transfer state monitoring unit 190 in the same manner as the first buffer control unit 112 of the first embodiment, The first transfer data read from the unit 111 is distributed to either the first data transfer unit 101 or the second buffer control unit 212.

そして、第2のバッファ制御部212は、第1のバッファ制御部182から第1の転送データが入力された場合には、第1のバッファ制御部182から入力された第1の転送データを、第2のバッファ制御部212に出力する。これにより、第1の画像データ入力部100が出力した第1の転送データは、第1の実施形態のデータ転送制御装置10と同様に、第1のデータ転送部101に加えて、第2のデータ転送部201によってもDMA転送される。   Then, when the first transfer data is input from the first buffer control unit 182, the second buffer control unit 212 receives the first transfer data input from the first buffer control unit 182, The data is output to the second buffer control unit 212. Thereby, the first transfer data output from the first image data input unit 100 is added to the first data transfer unit 101 and the second transfer data in the same manner as the data transfer control device 10 of the first embodiment. The data transfer unit 201 also performs DMA transfer.

データ転送状態監視部190は、第1の実施形態のデータ転送状態監視部130と同様に、第1のデータ転送部101および第2のデータ転送部201のそれぞれにおいて行われているDMA転送の状態を監視する。また、データ転送状態監視部190は、設定された動作モードに応じて、第1の転送データをDRAMに転送する経路を指示する経路選択指示を、第1の転送制御情報として第1の転送制御部180内の第1のバッファ制御部182に出力する。   The data transfer status monitoring unit 190 is the status of DMA transfer performed in each of the first data transfer unit 101 and the second data transfer unit 201 as in the data transfer status monitoring unit 130 of the first embodiment. To monitor. Further, the data transfer state monitoring unit 190 uses the path selection instruction for instructing the path for transferring the first transfer data to the DRAM as the first transfer control information according to the set operation mode. The data is output to the first buffer control unit 182 in the unit 180.

なお、データ転送状態監視部190が監視した第2のデータ転送部201のDMA転送の状態に応じて第2の転送制御部210に出力する第2の転送制御情報は、第1の実施形態のデータ転送状態監視部130と同様である。また、第1の転送制御情報および第2の転送制御情報には、第1の実施形態のデータ転送状態監視部130が出力する第1の転送制御情報および第2の転送制御情報と同様に、対応する第1のデータ転送部101および第2のデータ転送部201に転送データを出力する順序や、第1のデータ転送部101と第2のデータ転送部201とのタイミングを調停するための制御情報なども含まれる。データ転送状態監視部190は、モード設定部191を備えている。   Note that the second transfer control information output to the second transfer control unit 210 according to the DMA transfer state of the second data transfer unit 201 monitored by the data transfer state monitoring unit 190 is the same as that of the first embodiment. This is the same as the data transfer state monitoring unit 130. Further, the first transfer control information and the second transfer control information include the same as the first transfer control information and the second transfer control information output by the data transfer state monitoring unit 130 of the first embodiment. Control for arbitrating the order of outputting the transfer data to the corresponding first data transfer unit 101 and second data transfer unit 201 and the timing of the first data transfer unit 101 and the second data transfer unit 201 Information is also included. The data transfer state monitoring unit 190 includes a mode setting unit 191.

モード設定部191は、例えば、不図示のCPUによって設定された動作モードに応じて、第1の転送データをDRAMにDMA転送する際の第1の転送データの経路を決定する。そして、モード設定部191は、決定した結果に基づいて、第1の転送データをDMA転送する経路を表す経路選択指示を、第1のバッファ制御部182に出力する。例えば、静止画像を連続で撮影する動作モードが設定されている場合には、奇数枚目の静止画像の第1の転送データを第1のデータ転送部101がDMA転送し、偶数枚目の静止画像の第1の転送データを第2のデータ転送部201がDMA転送するように指示する並列転送の経路選択指示を、第1のバッファ制御部182に出力する。また、例えば、第1の転送データをDMA転送するDRAMを2つ備えている場合には、静止画像の奇数行の第1の転送データを第1のデータ転送部101が一方のDRAMにDMA転送し、静止画像の偶数行の第1の転送データを第2のデータ転送部201が他方のDRAMにDMA転送するように指示する並列転送の経路選択指示を、第1のバッファ制御部182に出力する。   The mode setting unit 191 determines the path of the first transfer data when the first transfer data is DMA-transferred to the DRAM, for example, according to an operation mode set by a CPU (not shown). Then, the mode setting unit 191 outputs a route selection instruction representing a route for DMA transfer of the first transfer data to the first buffer control unit 182 based on the determined result. For example, when the operation mode for continuously capturing still images is set, the first data transfer unit 101 DMA-transfers the first transfer data of the odd-numbered still image, and the even-numbered still image is transferred. A parallel transfer path selection instruction that instructs the second data transfer unit 201 to perform DMA transfer of the first transfer data of the image is output to the first buffer control unit 182. For example, when two DRAMs for DMA transfer of the first transfer data are provided, the first data transfer unit 101 DMA-transfers the first transfer data of the odd-numbered row of the still image to one DRAM. Then, a parallel transfer path selection instruction for instructing the second data transfer unit 201 to perform DMA transfer of the first transfer data in the even-numbered row of the still image to the other DRAM is output to the first buffer control unit 182. To do.

この並列転送の経路選択指示に応じて、第1のバッファ制御部182は、転送する第1の転送データ毎に、第1の転送データの出力先を第1のデータ転送部101または第2のデータ転送部201のいずれか一方に決定し、決定した出力先に第1の転送バッファ部111から読み出した第1の転送データを出力することによって、第1の転送データを第1のデータ転送部101と第2のデータ転送部201とで並列にDMA転送させる。このように、データ転送制御装置40でも、第1の転送データのDMA転送を、第1のデータ転送部101と第2のデータ転送部201とによって並列に行わせることによって、第1のデータ転送部101がDMA転送する際の負荷を分散し、第1の転送データのDMA転送のリアルタイム性を確保する。   In response to the parallel transfer path selection instruction, the first buffer control unit 182 sets the output destination of the first transfer data to the first data transfer unit 101 or the second data for each first transfer data to be transferred. The first transfer data is determined as one of the data transfer units 201, and the first transfer data read from the first transfer buffer unit 111 is output to the determined output destination. 101 and the second data transfer unit 201 perform DMA transfer in parallel. As described above, also in the data transfer control device 40, the first data transfer is performed by causing the first data transfer unit 101 and the second data transfer unit 201 to perform the DMA transfer of the first transfer data in parallel. The load when the unit 101 performs DMA transfer is distributed, and the real-time property of DMA transfer of the first transfer data is ensured.

なお、第1のバッファ制御部182が第1のデータ転送部101がDMA転送する際の負荷を分散する際にも、DRAMのバンク衝突が発生しないことが望ましい。従って、第1のバッファ制御部182は、第1の実施形態の第1のバッファ制御部112と同様に、第1の転送データを第1の転送バッファ部111から読み出す順序を変更するなどによって、第2のバッファ制御部212に出力する第1の転送データを選択するようにしてもよい。   Even when the first buffer control unit 182 distributes the load when the first data transfer unit 101 performs DMA transfer, it is desirable that no bank collision of DRAM occurs. Accordingly, the first buffer control unit 182 changes the order in which the first transfer data is read from the first transfer buffer unit 111 in the same manner as the first buffer control unit 112 of the first embodiment. The first transfer data to be output to the second buffer control unit 212 may be selected.

次に、データ転送制御装置40の動作について説明する。図9は、本第4の実施形態のデータ転送制御装置40によるデータ転送動作の処理手順を示したフローチャートである。モード設定部191に動作モードが設定されると、ステップS400において、モード設定部191は、設定された動作モードが、第1の転送データの並列転送を行う動作モードであるか否かを判定する。なお、モード設定部191における動作モードの判定は、以降の処理手順を実行しているときにも、常に継続して行われる。   Next, the operation of the data transfer control device 40 will be described. FIG. 9 is a flowchart illustrating a processing procedure of a data transfer operation performed by the data transfer control device 40 according to the fourth embodiment. When the operation mode is set in the mode setting unit 191, in step S400, the mode setting unit 191 determines whether or not the set operation mode is an operation mode in which the first transfer data is transferred in parallel. . The determination of the operation mode in the mode setting unit 191 is always performed continuously even when the subsequent processing procedure is executed.

ステップS400における判定において、設定された動作モードが、第1の転送データの並列転送を行う動作モードでない場合(ステップS400の“NO”)、モード設定部191は、第1の転送データを通常の経路、すなわち、第1の転送データを第1のデータ転送部101のみでDMA転送する経路選択指示を第1のバッファ制御部182に出力し、処理を終了する。その後、第1の画像データ入力部100から第1の転送データが入力されると、第1のバッファ制御部182は、第1の転送バッファ部111から第1の転送データを読み出し、読み出した第1の転送データを第1のデータ転送部101によってDMA転送させる。   In the determination in step S400, when the set operation mode is not an operation mode in which the first transfer data is transferred in parallel (“NO” in step S400), the mode setting unit 191 converts the first transfer data into the normal transfer data. A route, that is, a route selection instruction for DMA transfer of the first transfer data by only the first data transfer unit 101 is output to the first buffer control unit 182, and the process is terminated. After that, when the first transfer data is input from the first image data input unit 100, the first buffer control unit 182 reads the first transfer data from the first transfer buffer unit 111, and reads the read first transfer data. 1 transfer data is DMA-transferred by the first data transfer unit 101.

一方、ステップS400における判定において、設定された動作モードが、第1の転送データの並列転送を行う動作モードである場合(ステップS400の“YES”)、モード設定部191は、第1の転送データを第1のデータ転送部101と第2のデータ転送部201とによってDMA転送する並列転送の経路選択指示を、第1のバッファ制御部182に出力する。   On the other hand, in the determination in step S400, when the set operation mode is an operation mode in which the first transfer data is transferred in parallel (“YES” in step S400), the mode setting unit 191 sets the first transfer data. Is transmitted to the first buffer control unit 182 by the first data transfer unit 101 and the second data transfer unit 201 for DMA transfer.

モード設定部191から並列転送の経路選択指示が入力され、第1の画像データ入力部100から第1の転送データが入力されると、ステップS410において、第1のバッファ制御部182は、第1の転送データの出力先の振り分け、すなわち、第1のデータ転送部101と第2のデータ転送部201とによる第1の転送データの並列転送を開始する。   When the parallel transfer path selection instruction is input from the mode setting unit 191 and the first transfer data is input from the first image data input unit 100, in step S410, the first buffer control unit 182 Distribution of the output destination of the transfer data, that is, parallel transfer of the first transfer data by the first data transfer unit 101 and the second data transfer unit 201 is started.

なお、第1のバッファ制御部182における第1の転送データの並列転送の処理手順は、図3に示した第1の実施形態のデータ転送制御装置10における第1のバッファ制御部112によるデータ転送動作の処理手順におけるステップS120〜ステップS150と同様である。従って、第1のバッファ制御部182における第1の転送データの並列転送の処理手順の詳細な説明は省略する。   The processing procedure of the parallel transfer of the first transfer data in the first buffer control unit 182 is the data transfer by the first buffer control unit 112 in the data transfer control device 10 of the first embodiment shown in FIG. This is the same as step S120 to step S150 in the operation procedure. Therefore, a detailed description of the processing procedure of the parallel transfer of the first transfer data in the first buffer control unit 182 is omitted.

その後、第1のバッファ制御部182は、第1の転送データの並列転送を行う動作モードが解除された場合(ステップS420の“YES”)、すなわち、モード設定部191からの並列転送の経路選択指示が解除された場合、ステップS430において、第1のデータ転送部101と第2のデータ転送部201とによる第1の転送データの並列転送を終了する。   Thereafter, the first buffer control unit 182 selects the parallel transfer path from the mode setting unit 191 when the operation mode for performing the parallel transfer of the first transfer data is canceled (“YES” in step S420). When the instruction is canceled, in step S430, the parallel transfer of the first transfer data by the first data transfer unit 101 and the second data transfer unit 201 is terminated.

なお、第1のバッファ制御部182は、第1の転送データの並列転送を行う動作モードが解除されていない場合(ステップS420の“NO”)、すなわち、モード設定部191からの並列転送の経路選択指示が入力された状態である場合には、ステップS410に戻って、第1の転送データの第2のデータ転送部201による並列転送を、第1の転送データの並列転送を行う動作モードが解除されるまで繰り返す。   Note that the first buffer control unit 182 determines the parallel transfer path from the mode setting unit 191 when the operation mode for performing the parallel transfer of the first transfer data has not been released (“NO” in step S420). When the selection instruction is input, the process returns to step S410, and the operation mode for performing the parallel transfer of the first transfer data by the second data transfer unit 201 and the parallel transfer of the first transfer data is set. Repeat until released.

以降、データ転送制御装置40は、図9に示したデータ転送動作のフローチャートの処理手順を繰り返して、第1の画像データ入力部100から入力された全ての第1の転送データのDMA転送を行う。   Thereafter, the data transfer control device 40 repeats the processing procedure of the flowchart of the data transfer operation shown in FIG. 9 to perform DMA transfer of all the first transfer data input from the first image data input unit 100. .

本第4の実施形態によれば、データ転送状態監視部(データ転送状態監視部190)は、設定された動作モードに応じて、第1の転送データを転送する際の第1の転送データの経路を決定し、ここで決定した結果に基づいて第1の転送データを転送する経路を表す経路選択指示を出力するモード設定部(モード設定部191)、を備え、第1のバッファ制御部(第1のバッファ制御部182)は、モード設定部191から出力された経路選択指示に基づいて、第1の転送データを、第1のデータ転送部101と第2のバッファ制御部212とに振り分けて出力する、データ転送制御装置(データ転送制御装置40)が構成される。   According to the fourth embodiment, the data transfer state monitoring unit (data transfer state monitoring unit 190) determines the first transfer data when transferring the first transfer data according to the set operation mode. A mode setting unit (mode setting unit 191) for determining a route and outputting a route selection instruction representing a route for transferring the first transfer data based on the result determined here, and the first buffer control unit ( The first buffer control unit 182) distributes the first transfer data to the first data transfer unit 101 and the second buffer control unit 212 based on the path selection instruction output from the mode setting unit 191. The data transfer control device (data transfer control device 40) is configured to output.

このようにして、データ転送制御装置40では、モード設定部191に設定された動作モードに応じて、第1の画像データ入力部100から入力された第1の転送データを、第1のデータ転送部101と第2のデータ転送部201とに振り分けて、それぞれ並列にDMA転送する。これにより、データ転送制御装置40でも、第1の実施形態のデータ転送制御装置10と同様に、第1の画像データ入力部100が出力した第1の転送データをDMA転送する際のバス帯域が確保されて、DMA転送が円滑に行われ、第1の転送データのDMA転送のリアルタイム性を確保することができる。   In this way, in the data transfer control device 40, the first transfer data input from the first image data input unit 100 is transferred to the first data transfer according to the operation mode set in the mode setting unit 191. It distributes to the unit 101 and the second data transfer unit 201, and performs DMA transfer in parallel. As a result, in the data transfer control device 40 as well, as with the data transfer control device 10 of the first embodiment, the bus bandwidth for DMA transfer of the first transfer data output from the first image data input unit 100 is reduced. As a result, the DMA transfer is performed smoothly, and the real-time property of the DMA transfer of the first transfer data can be ensured.

なお、データ転送制御装置40でも、第1の実施形態のデータ転送制御装置10と同様に、第1のデータ転送部101と第2のデータ転送部201とによる転送データのDMA転送においてDRAMのバンク衝突が発生しないように、第1のバッファ制御部182が第2のバッファ制御部212に振り分ける第1の転送データを決定することが望ましい。   In the data transfer control device 40 as well, as in the data transfer control device 10 of the first embodiment, in the DMA transfer of the transfer data by the first data transfer unit 101 and the second data transfer unit 201, the DRAM bank It is desirable that the first buffer control unit 182 determines the first transfer data to be distributed to the second buffer control unit 212 so that no collision occurs.

上記に述べたとおり、本発明のデータ転送制御装置では、転送データをDMA転送する際の様々な条件(より具体的には、DMA転送の待ち時間およびDRAMへのアクセス履歴、DMA転送の負荷状態、第1の転送バッファ部111のバッファ残量、データ処理装置の動作モードなど)に応じて、第1の転送データのDMA転送を、第1のデータ転送部101と第2のデータ転送部201とによって並列に行わせることができる。これにより、第1の画像データ入力部100が出力した第1の転送データをDMA転送する際のバス帯域を確保し、第1の転送データのDMA転送のリアルタイム性を確保することができる。   As described above, in the data transfer control device of the present invention, various conditions (more specifically, DMA transfer waiting time, DRAM access history, DMA transfer load status) when transfer data is DMA transferred. DMA transfer of the first transfer data in accordance with the remaining buffer capacity of the first transfer buffer unit 111, the operation mode of the data processing device, etc.), the first data transfer unit 101 and the second data transfer unit 201 Can be performed in parallel. As a result, it is possible to secure a bus bandwidth for DMA transfer of the first transfer data output from the first image data input unit 100, and to secure the real-time property of the DMA transfer of the first transfer data.

なお、本実施形態においては、第1の実施形態〜第4の実施形態において、転送データをDMA転送する際の異なるそれぞれの条件に対応した構成および動作について説明した。しかし、転送データをDMA転送する際の複数の条件の組み合わせに対応する構成および動作にすることもできる。これは、データ転送制御装置を、複数の条件の組み合わせに対応する第1の実施形態〜第4の実施形態で示した構成、動作、または機能を同時に備える構成にすることによって実現することができる。例えば、第1の実施形態〜第4の実施形態で示した構成を全て備えたデータ転送制御装置を構成することによって、DMA転送の待ち時間およびDRAMへのアクセス履歴、DMA転送の負荷状態、第1の転送バッファ部111のバッファ残量、データ処理装置の動作モードなどの全ての条件に応じた動作を行うデータ転送制御装置を実現することができる。   In the present embodiment, the configurations and operations corresponding to the different conditions when the transfer data is DMA-transferred in the first to fourth embodiments have been described. However, it is also possible to adopt a configuration and operation corresponding to a combination of a plurality of conditions when transferring transfer data by DMA. This can be realized by configuring the data transfer control device to have the configurations, operations, or functions shown in the first to fourth embodiments corresponding to a combination of a plurality of conditions at the same time. . For example, by configuring the data transfer control device having all the configurations shown in the first to fourth embodiments, the DMA transfer waiting time, access history to the DRAM, DMA transfer load state, It is possible to realize a data transfer control device that performs an operation according to all conditions such as the remaining buffer capacity of one transfer buffer unit 111 and the operation mode of the data processing device.

なお、第1の実施形態〜第4の実施形態においては、画像データ入力部から入力された転送データを転送バッファ部に一旦格納した後に、バッファ制御部が読み出してそれぞれのデータ転送部に出力する構成、つまり、DRAMに転送する転送データが、転送バッファ部、バッファ制御部の順番に転送される配置の転送制御部について説明した。例えば、第1の実施形態における第1の転送制御部110では、第1の転送データが、第1の転送バッファ部111、第1のバッファ制御部112の順番で転送される配置について説明した。しかし、転送制御部内の転送バッファ部とバッファ制御部との配置は、第1の実施形態〜第4の実施形態において示した配置の順番に限定されるものではない。   In the first to fourth embodiments, after the transfer data input from the image data input unit is temporarily stored in the transfer buffer unit, the buffer control unit reads it and outputs it to each data transfer unit. The configuration, that is, the transfer control unit in which the transfer data transferred to the DRAM is transferred in the order of the transfer buffer unit and the buffer control unit has been described. For example, in the first transfer control unit 110 according to the first embodiment, the arrangement in which the first transfer data is transferred in the order of the first transfer buffer unit 111 and the first buffer control unit 112 has been described. However, the arrangement of the transfer buffer unit and the buffer control unit in the transfer control unit is not limited to the arrangement order shown in the first to fourth embodiments.

<第3の実施形態の変形例>
ここで、転送制御部内の転送バッファ部とバッファ制御部との配置が異なる場合の一例として、第3の実施形態において示した、第1の転送バッファ部111のバッファ残量に基づいて第1の転送データを並列転送するデータ転送制御装置30の変形例の構成および動作について説明する。なお、以下の説明においては、本変形例のデータ転送制御装置を、第3の実施形態のデータ転送制御装置30と区別するため、本変形例のデータ転送制御装置を、「データ転送制御装置50」という。そして、データ転送制御装置50を備えたデータ処理装置を、「データ処理装置5」という。図10は、本第3の実施形態の変形例のデータ転送制御装置50を備えたデータ処理装置5の構成の一例を示したブロック図である。図10に示したデータ転送制御装置50も、第3の実施形態のデータ転送制御装置30と同様に、DMA転送する第1の転送データを格納する第1の転送バッファ部111のバッファ残量に基づいて、第1の画像データ入力部100から入力された第1の転送データを、第1のデータ転送部101と第2のデータ転送部201とに振り分ける制御を行う構成である。
<Modification of Third Embodiment>
Here, as an example of the case where the arrangement of the transfer buffer unit and the buffer control unit in the transfer control unit is different, the first buffer based on the remaining buffer capacity of the first transfer buffer unit 111 shown in the third embodiment is used. The configuration and operation of a modification of the data transfer control device 30 that transfers transfer data in parallel will be described. In the following description, in order to distinguish the data transfer control device of the present modification from the data transfer control device 30 of the third embodiment, the data transfer control device of the present modification is referred to as “data transfer control device 50. " The data processing device provided with the data transfer control device 50 is referred to as “data processing device 5”. FIG. 10 is a block diagram illustrating an example of the configuration of the data processing device 5 including the data transfer control device 50 according to a modification of the third embodiment. Similarly to the data transfer control device 30 of the third embodiment, the data transfer control device 50 shown in FIG. 10 also has the remaining buffer capacity of the first transfer buffer unit 111 that stores the first transfer data to be DMA transferred. Based on this, control is performed to distribute the first transfer data input from the first image data input unit 100 to the first data transfer unit 101 and the second data transfer unit 201.

図10に示したデータ処理装置5は、図6に示したデータ処理装置3内のデータ転送制御装置30がデータ転送制御装置50に代わった構成であり、このデータ転送制御装置50の構成要素をより詳細に示している。なお、図10に示したデータ処理装置5内の構成要素およびデータ転送制御装置50内の構成要素には、図6に示したデータ処理装置3内の構成要素およびデータ転送制御装置30内の構成要素と同様の構成要素も含まれている。従って、図10に示したデータ処理装置5およびデータ転送制御装置50の構成要素において、図6に示したデータ処理装置3およびデータ転送制御装置30の構成要素と同様の構成要素には、同一の符号を付与し、それぞれの構成要素に関する詳細な説明は省略する。   The data processing device 5 shown in FIG. 10 has a configuration in which the data transfer control device 30 in the data processing device 3 shown in FIG. 6 is replaced with the data transfer control device 50. Shows in more detail. Note that the components in the data processing device 5 and the components in the data transfer control device 50 shown in FIG. 10 are the same as the components in the data processing device 3 and the configuration in the data transfer control device 30 shown in FIG. Constituent elements similar to the elements are also included. Therefore, in the components of the data processing device 5 and the data transfer control device 50 shown in FIG. 10, the same components as those of the data processing device 3 and the data transfer control device 30 shown in FIG. Reference numerals are given, and detailed description of each component is omitted.

データ転送制御装置50も、第3の実施形態のデータ転送制御装置30と同様に、データ処理装置5が第1のデータ転送部101および第2のデータ転送部201によってDRAMにDMA転送する転送データを制御する。従って、データ処理装置5でも、第3の実施形態のデータ転送制御装置30と同様に、第1のデータ転送部101および第2のデータ転送部201のそれぞれがDMA転送する転送データが、データ転送制御装置50を介して入力される。なお、以下の説明においても、第3の実施形態のデータ処理装置3と同様に、第1のデータ転送部101の方が、第2のデータ転送部201よりも優先度が高いイニシエータであるものとして説明を行う。   Similarly to the data transfer control device 30 of the third embodiment, the data transfer control device 50 also transfers data transferred by the data processing device 5 to the DRAM by the first data transfer unit 101 and the second data transfer unit 201. To control. Therefore, also in the data processing device 5, similarly to the data transfer control device 30 of the third embodiment, the transfer data that each of the first data transfer unit 101 and the second data transfer unit 201 performs DMA transfer is the data transfer. It is input via the control device 50. In the following description, as in the data processing device 3 of the third embodiment, the first data transfer unit 101 is an initiator having a higher priority than the second data transfer unit 201. Will be described.

データ転送制御装置50は、第3の実施形態のデータ転送制御装置30と同様に、第1のデータ転送部101がDMA転送する際のメモリアクセス情報に基づいて、データ転送制御装置50自身に備えた、DMA転送する第1の転送データを格納する第1の転送バッファ部のバッファ残量を監視し、監視したバッファ残量に応じて、第1のデータ転送部101または第2のデータ転送部201のいずれのデータ転送部によって転送データをDMA転送するかを決定する。そして、データ転送制御装置50は、第3の実施形態のデータ転送制御装置30と同様に、決定した第1のデータ転送部101または第2のデータ転送部201のいずれかのデータ転送部に転送データを出力して、DMA転送を行わせる。データ転送制御装置50は、第1の転送制御部260と、第2の転送制御部220と、データ転送状態監視部170と、を備えている。   Similar to the data transfer control device 30 of the third embodiment, the data transfer control device 50 is provided in the data transfer control device 50 itself based on the memory access information when the first data transfer unit 101 performs DMA transfer. Further, the remaining capacity of the first transfer buffer section for storing the first transfer data to be DMA transferred is monitored, and the first data transfer section 101 or the second data transfer section is selected according to the monitored buffer remaining capacity. The data transfer unit 201 determines whether the transfer data is DMA-transferred. Then, the data transfer control device 50 transfers to the determined data transfer unit of the first data transfer unit 101 or the second data transfer unit 201 in the same manner as the data transfer control device 30 of the third embodiment. Data is output and DMA transfer is performed. The data transfer control device 50 includes a first transfer control unit 260, a second transfer control unit 220, and a data transfer state monitoring unit 170.

第1の転送制御部260は、第3の実施形態の第1の転送制御部160と同様に、第1の画像データ入力部100から入力されたDMA転送する第1の転送データを、データ転送状態監視部170から入力された第1の転送制御情報に基づいて、第1のデータ転送部101と第2のデータ転送部201とに振り分ける。第1の転送制御部260は、第1の転送バッファ部261と第1のバッファ制御部262とを備えている。   Similar to the first transfer control unit 160 in the third embodiment, the first transfer control unit 260 performs data transfer on the first transfer data input from the first image data input unit 100 for DMA transfer. Based on the first transfer control information input from the state monitoring unit 170, the data is distributed to the first data transfer unit 101 and the second data transfer unit 201. The first transfer control unit 260 includes a first transfer buffer unit 261 and a first buffer control unit 262.

第2の転送制御部220は、第3の実施形態の第2の転送制御部210と同様に、第2の画像データ入力部200から入力されたDMA転送する第2の転送データ、または第1の転送制御部260によって振り分けられた、第1の画像データ入力部100がDMA転送する第1の転送データのいずれかの転送データを、データ転送状態監視部170から入力された第2の転送制御情報に基づいて、第2のデータ転送部201に出力する。第2の転送制御部220は、第2の転送バッファ部221と第2のバッファ制御部222とを備えている。   Similarly to the second transfer control unit 210 of the third embodiment, the second transfer control unit 220 performs the second transfer data to be DMA-transferred input from the second image data input unit 200 or the first transfer data. The second transfer control input from the data transfer state monitoring unit 170 to any one of the first transfer data distributed by the transfer control unit 260 and transferred by the first image data input unit 100 by DMA. Based on the information, the data is output to the second data transfer unit 201. The second transfer control unit 220 includes a second transfer buffer unit 221 and a second buffer control unit 222.

なお、第1の転送制御部260に備えた第1の転送バッファ部261と第1のバッファ制御部262とのそれぞれは、第3の実施形態の第1の転送制御部160に備えた第1の転送バッファ部111と第1のバッファ制御部162とのそれぞれと同様の機能を持っている。また、第2の転送制御部220に備えた第2の転送バッファ部221と第2のバッファ制御部222とのそれぞれは、第3の実施形態の第2の転送制御部210に備えた第2の転送バッファ部211と第2のバッファ制御部212とのそれぞれと同様の機能を持っている。   Note that each of the first transfer buffer unit 261 and the first buffer control unit 262 included in the first transfer control unit 260 is the first transfer control unit 160 included in the first embodiment. The transfer buffer unit 111 and the first buffer control unit 162 have the same functions. In addition, each of the second transfer buffer unit 221 and the second buffer control unit 222 included in the second transfer control unit 220 is a second included in the second transfer control unit 210 of the third embodiment. The transfer buffer unit 211 and the second buffer control unit 212 have the same functions.

ただし、図6に示した第1の転送制御部160と図10に示した第1の転送制御部260とを比べてわかるように、第1の転送制御部260内の第1の転送バッファ部261と第1のバッファ制御部262との配置は、第1の転送制御部160とは逆の配置になっている。また、図6に示した第2の転送制御部210と図10に示した第2の転送制御部220とを比べてわかるように、第2の転送制御部220内の第2の転送バッファ部221と第2のバッファ制御部222との配置も、第2の転送制御部210とは逆の配置になっている。   However, as can be seen by comparing the first transfer control unit 160 shown in FIG. 6 with the first transfer control unit 260 shown in FIG. 10, the first transfer buffer unit in the first transfer control unit 260. The arrangement of the H.261 and the first buffer control unit 262 is opposite to that of the first transfer control unit 160. Further, as can be seen by comparing the second transfer control unit 210 shown in FIG. 6 with the second transfer control unit 220 shown in FIG. 10, the second transfer buffer unit in the second transfer control unit 220. The arrangement of 221 and the second buffer control unit 222 is also opposite to that of the second transfer control unit 210.

第1のバッファ制御部262は、データ転送状態監視部170から入力された第1の転送制御情報に含まれる負荷分散指示に応じて、第1の転送データの出力先を、第1の転送バッファ部261または第2の転送制御部220内の第2のバッファ制御部212のいずれか一方に決定し、第1の画像データ入力部100から入力された第1の転送データを、決定した出力先に出力する。つまり、第1のバッファ制御部262は、データ転送状態監視部170から入力された負荷分散指示に応じて、第1の画像データ入力部100から出力された第1の転送データが第1のバッファ制御部262自身に入力された段階で分岐させ、第1のデータ転送部101または第2のバッファ制御部212のいずれか一方に振り分ける。   In response to the load distribution instruction included in the first transfer control information input from the data transfer state monitoring unit 170, the first buffer control unit 262 determines the output destination of the first transfer data as the first transfer buffer. The first transfer data input from the first image data input unit 100 is determined as one of the second buffer control unit 212 in the unit 261 or the second transfer control unit 220, and the determined output destination Output to. That is, the first buffer control unit 262 receives the first transfer data output from the first image data input unit 100 in response to the load distribution instruction input from the data transfer state monitoring unit 170. A branch is made when it is input to the control unit 262 itself, and it is distributed to either the first data transfer unit 101 or the second buffer control unit 212.

第1の転送バッファ部261は、第1のバッファ制御部262から入力された第1の転送データを一旦格納し、その後、格納した第1の転送データを第1のデータ転送部101に出力する。これにより、第1のバッファ制御部262によって第1の転送バッファ部261に振り分けられた第1の転送データが、第1のデータ転送部101によってDMA転送される。   The first transfer buffer unit 261 temporarily stores the first transfer data input from the first buffer control unit 262, and then outputs the stored first transfer data to the first data transfer unit 101. . As a result, the first transfer data distributed to the first transfer buffer unit 261 by the first buffer control unit 262 is DMA-transferred by the first data transfer unit 101.

第2のバッファ制御部222は、データ転送状態監視部170から入力された第2の転送制御情報に基づいて、第2の画像データ入力部200から入力された第2の転送データを、第2の転送バッファ部221に出力する。なお、第2のバッファ制御部222は、第1のバッファ制御部262から第1の転送データが入力された場合には、第1のバッファ制御部262から入力された第1の転送データを、第2の転送バッファ部221に出力する。   The second buffer control unit 222 converts the second transfer data input from the second image data input unit 200 into the second transfer data based on the second transfer control information input from the data transfer state monitoring unit 170. Output to the transfer buffer unit 221. The second buffer controller 222 receives the first transfer data input from the first buffer controller 262 when the first transfer data is input from the first buffer controller 262. The data is output to the second transfer buffer unit 221.

第2の転送バッファ部221は、第2のバッファ制御部222から入力された転送データを一旦格納し、その後、格納した転送データを第2のデータ転送部201に出力する。これにより、第2の画像データ入力部200から出力された第2の転送データ、または第1のバッファ制御部262によって第2のバッファ制御部222に振り分けられた第1の転送データが、第2のデータ転送部201によってDMA転送される。   The second transfer buffer unit 221 temporarily stores the transfer data input from the second buffer control unit 222, and then outputs the stored transfer data to the second data transfer unit 201. Accordingly, the second transfer data output from the second image data input unit 200 or the first transfer data distributed to the second buffer control unit 222 by the first buffer control unit 262 is the second transfer data. The data transfer unit 201 performs DMA transfer.

このような構成によって、データ転送制御装置50は、第1の画像データ入力部100が出力した第1の転送データのDMA転送を、第1のデータ転送部101と第2のデータ転送部201とによって並列に行わせる。これにより、データ転送制御装置50でも、第3の実施形態のデータ転送制御装置30と同様に、第1のデータ転送部101がDMA転送する際の負荷を分散し、第1の転送データのDMA転送のリアルタイム性を確保する。   With this configuration, the data transfer control device 50 performs the DMA transfer of the first transfer data output from the first image data input unit 100 with the first data transfer unit 101, the second data transfer unit 201, and the like. In parallel. As a result, in the data transfer control device 50 as well as the data transfer control device 30 of the third embodiment, the load when the first data transfer unit 101 performs DMA transfer is distributed, and the DMA of the first transfer data is reduced. Ensure real-time transfer.

なお、第1のバッファ制御部262が第1のデータ転送部101がDMA転送する際の負荷を分散する際にも、DRAMのバンク衝突が発生しないことが望ましい。従って、第1のバッファ制御部262は、第1の画像データ入力部100から入力された第1の転送データの出力先を変更するようにしてもよい。   Even when the first buffer control unit 262 distributes the load when the first data transfer unit 101 performs DMA transfer, it is desirable that no bank collision of DRAM occurs. Accordingly, the first buffer control unit 262 may change the output destination of the first transfer data input from the first image data input unit 100.

次に、データ転送制御装置50の動作について説明する。図11は、本第3の実施形態の変形例のデータ転送制御装置50によるデータ転送動作の処理手順を示したフローチャートである。データ転送制御装置50が動作を開始すると、データ転送制御装置50に備えたデータ転送状態監視部170内の転送バッファ残量監視部171は、第1のデータ転送部101がDMA転送を行う際の制御信号の情報に基づいて、第1の転送バッファ部261のバッファ残量を監視する。なお、第1の転送バッファ部261のバッファ残量の監視は、以降の処理手順を実行しているときにも、常に継続して行われる。   Next, the operation of the data transfer control device 50 will be described. FIG. 11 is a flowchart illustrating a processing procedure of a data transfer operation performed by the data transfer control device 50 according to the modification of the third embodiment. When the data transfer control device 50 starts operation, the transfer buffer remaining amount monitoring unit 171 in the data transfer state monitoring unit 170 provided in the data transfer control device 50 is used when the first data transfer unit 101 performs DMA transfer. Based on the information of the control signal, the remaining buffer capacity of the first transfer buffer unit 261 is monitored. Note that the monitoring of the remaining buffer capacity of the first transfer buffer unit 261 is always performed continuously even when the subsequent processing procedure is executed.

その後、転送バッファ残量監視部171は、監視している第1の転送バッファ部261のバッファ残量が予め定めた記憶容量よりも少ない場合(ステップS500の“YES”)、すなわち、第1の転送バッファ部261の記憶容量の残量不足を検出した場合、第1のデータ転送部101の負荷の分散を行うと判定し、負荷分散指示を第1のバッファ制御部262に出力する。   Thereafter, the transfer buffer remaining amount monitoring unit 171 determines that the first transfer buffer unit 261 being monitored has a remaining buffer amount smaller than a predetermined storage capacity (“YES” in step S500), that is, the first When it is detected that the storage capacity of the transfer buffer unit 261 is insufficient, the load of the first data transfer unit 101 is determined to be distributed, and a load distribution instruction is output to the first buffer control unit 262.

なお、転送バッファ残量監視部171は、監視している第1の転送バッファ部261のバッファ残量が予め定めた記憶容量よりも少なくない場合(ステップS500の“NO”)、すなわち、第1の転送バッファ部261の記憶容量が十分にある場合には、ステップS500における第1の転送バッファ部261のバッファ残量の監視を継続する。   The transfer buffer remaining amount monitoring unit 171 determines that the buffer remaining amount of the first transfer buffer unit 261 being monitored is not less than a predetermined storage capacity (“NO” in step S500), that is, the first When the storage capacity of the transfer buffer unit 261 is sufficient, the monitoring of the remaining buffer capacity of the first transfer buffer unit 261 in step S500 is continued.

転送バッファ残量監視部171から負荷分散指示が入力されると、ステップS510において、第1のバッファ制御部262は、第1の転送データが第1の画像データ入力部100から入力された段階で分岐させ、第1のデータ転送部101または第2のバッファ制御部212のいずれか一方に出力する。すなわち、第1のデータ転送部101と第2のデータ転送部201とによる第1の転送データの並列転送を開始する。これにより、第1の画像データ入力部100から入力された第1の転送データが、第1の転送バッファ部261または第2の転送バッファ部221のいずれか一方に一旦格納され、その後、第1のデータ転送部101または第2のデータ転送部201によってDMA転送される。   When a load distribution instruction is input from the transfer buffer remaining amount monitoring unit 171, the first buffer control unit 262 receives the first transfer data from the first image data input unit 100 in step S <b> 510. The data is branched and output to either the first data transfer unit 101 or the second buffer control unit 212. That is, the first data transfer unit 101 and the second data transfer unit 201 start parallel transfer of the first transfer data. As a result, the first transfer data input from the first image data input unit 100 is temporarily stored in either the first transfer buffer unit 261 or the second transfer buffer unit 221, and then the first transfer data is stored. The data transfer unit 101 or the second data transfer unit 201 performs DMA transfer.

その後、第1のバッファ制御部262は、第1の転送バッファ部261の記憶容量の残量不足が解消された場合(ステップS520の“YES”)、すなわち、転送バッファ残量監視部171からの負荷分散指示が解除された場合、ステップS530において、第1のデータ転送部101と第2のデータ転送部201とによる第1の転送データの1回の並列転送を終了する。   Thereafter, the first buffer control unit 262 determines that when the shortage of the storage capacity of the first transfer buffer unit 261 is resolved (“YES” in step S520), that is, from the transfer buffer remaining amount monitoring unit 171. When the load distribution instruction is canceled, one parallel transfer of the first transfer data by the first data transfer unit 101 and the second data transfer unit 201 is terminated in step S530.

なお、第1のバッファ制御部262は、第1の転送バッファ部261の記憶容量の残量不足が解消されていない場合(ステップS520の“NO”)、すなわち、転送バッファ残量監視部171からの負荷分散指示が入力された状態である場合には、ステップS510に戻って、第1の画像データ入力部100から入力された第1の転送データの第2のデータ転送部201による並列転送を、第1の転送バッファ部261の記憶容量の残量不足が解消されるまで繰り返す。   Note that the first buffer control unit 262 determines that the shortage of the storage capacity of the first transfer buffer unit 261 has not been resolved (“NO” in step S520), that is, from the transfer buffer remaining amount monitoring unit 171. When the load distribution instruction is input, the process returns to step S510 to perform parallel transfer of the first transfer data input from the first image data input unit 100 by the second data transfer unit 201. The process is repeated until the shortage of the storage capacity of the first transfer buffer unit 261 is resolved.

以降、データ転送制御装置50は、図11に示したデータ転送動作のフローチャートの処理手順を繰り返して、第1の画像データ入力部100からの第1の転送データの入力が終了するまで、第1の転送データのDMA転送を行う。   Thereafter, the data transfer control device 50 repeats the processing procedure of the flowchart of the data transfer operation shown in FIG. 11 until the first transfer data input from the first image data input unit 100 is completed. DMA transfer of the transferred data is performed.

なお、データ転送制御装置50でも、第1のデータ転送部101と第2のデータ転送部201とによる転送データのDMA転送においてDRAMのバンク衝突が発生しないようにDMA転送することが望ましい。この場合、第1の転送バッファ部261と第2の転送バッファ部221とのそれぞれが、対応するデータ転送部に転送データを出力する際に、それぞれのデータ転送部がDRAMの異なるメモリバンクにDMA転送するように、転送データの出力順序を並び替えていることが考えられる。このため、ステップS510において第1のバッファ制御部262が、入力された第1の転送データを第2のバッファ制御部222に分岐させる際に、DRAMのバンク衝突が発生しないように、第1の転送データを第2のバッファ制御部222に分岐させるタイミングを変更する構成にしてもよい。   In the data transfer control device 50 as well, it is desirable to perform DMA transfer so that DRAM bank collision does not occur in DMA transfer of transfer data by the first data transfer unit 101 and the second data transfer unit 201. In this case, when each of the first transfer buffer unit 261 and the second transfer buffer unit 221 outputs the transfer data to the corresponding data transfer unit, each data transfer unit transfers the DMA to a different memory bank of the DRAM. It is conceivable that the output order of the transfer data is rearranged so as to transfer. For this reason, when the first buffer control unit 262 branches the input first transfer data to the second buffer control unit 222 in step S510, the first buffer control unit 262 prevents the DRAM bank collision from occurring. The timing for branching the transfer data to the second buffer control unit 222 may be changed.

このように、データ転送制御装置50でも、第1の転送データをDMA転送する際に使用する第1の転送バッファ部261のバッファ残量に基づいて、第1の画像データ入力部100から入力された第1の転送データを、第1のデータ転送部101と第2のデータ転送部201とに振り分けて、それぞれ並列にDMA転送することができる。これにより、データ転送制御装置50でも、第3の実施形態のデータ転送制御装置30と同様に、第1の画像データ入力部100が出力した第1の転送データをDMA転送する際のバス帯域が確保されて、DMA転送が円滑に行われ、第1の転送データのDMA転送のリアルタイム性を確保することができる。   As described above, the data transfer control device 50 also receives an input from the first image data input unit 100 based on the remaining buffer capacity of the first transfer buffer unit 261 used when the first transfer data is DMA-transferred. The first transfer data can be distributed to the first data transfer unit 101 and the second data transfer unit 201 and can be DMA-transferred in parallel. As a result, in the data transfer control device 50 as well, as with the data transfer control device 30 of the third embodiment, the bus bandwidth for DMA transfer of the first transfer data output from the first image data input unit 100 is reduced. As a result, the DMA transfer is performed smoothly, and the real-time property of the DMA transfer of the first transfer data can be ensured.

なお、本実施形態においては、第1の実施形態〜第4の実施形態および変形例のデータ処理装置において、2つの画像データ入力部(第1の画像データ入力部100および第2の画像データ入力部200)を備え、それぞれの画像データ入力部に対応する2つのデータ転送部(第1のデータ転送部101と第2のデータ転送部201)がそれぞれ、転送データをインターコネクトバス700に出力することによってDMA転送する構成について説明した。しかし、データ処理装置に備える画像データ入力部およびデータ転送部の数は、第1の実施形態〜第4の実施形態および変形例で示した数に限定されるものではなく、さらに多くの画像データ入力部およびデータ転送部を備える構成であることも考えられる。   In the present embodiment, two image data input units (first image data input unit 100 and second image data input) are used in the data processing apparatuses of the first to fourth embodiments and the modified example. Unit 200), and two data transfer units (first data transfer unit 101 and second data transfer unit 201) corresponding to the respective image data input units respectively output the transfer data to the interconnect bus 700. The configuration for DMA transfer is described above. However, the number of image data input units and data transfer units provided in the data processing apparatus is not limited to the numbers shown in the first to fourth embodiments and the modifications, and more image data. A configuration including an input unit and a data transfer unit is also conceivable.

ここで、データ処理装置にさらに多くの画像データ入力部およびデータ転送部を備えた構成の一例について説明する。図12は、本実施形態におけるデータ転送制御装置を備えたデータ処理装置の概略構成の一例を示したブロック図である。図12に示したデータ処理装置6は、第1の画像データ入力部100と、第1のデータ転送部101と、第2の画像データ入力部200と、第2のデータ転送部201と、データ転送制御装置10と、第3の画像データ入力部300と、第3のデータ転送部301と、データ転送制御装置11と、第4の画像データ入力部400と、第4のデータ転送部401と、データ転送制御装置12と、を備えている。また、データ転送制御装置10〜12のそれぞれは、2つの転送制御部と1つのデータ転送状態監視部とを備えている。ただし、図12を見てわかるように、データ転送制御装置10は、第1の転送制御部110と、第2の転送制御部210と、データ転送状態監視部130と、で構成される。また、データ転送制御装置11は、第2の転送制御部210と、第3の転送制御部310と、データ転送状態監視部230と、で構成される。また、データ転送制御装置12は、第3の転送制御部310と、第4の転送制御部410と、データ転送状態監視部330と、で構成される。   Here, an example of a configuration in which the data processing apparatus includes more image data input units and data transfer units will be described. FIG. 12 is a block diagram illustrating an example of a schematic configuration of a data processing device including the data transfer control device according to the present embodiment. The data processing device 6 shown in FIG. 12 includes a first image data input unit 100, a first data transfer unit 101, a second image data input unit 200, a second data transfer unit 201, and a data Transfer control device 10, third image data input unit 300, third data transfer unit 301, data transfer control device 11, fourth image data input unit 400, and fourth data transfer unit 401 The data transfer control device 12 is provided. Each of the data transfer control devices 10 to 12 includes two transfer control units and one data transfer state monitoring unit. However, as can be seen from FIG. 12, the data transfer control device 10 includes a first transfer control unit 110, a second transfer control unit 210, and a data transfer state monitoring unit 130. The data transfer control device 11 includes a second transfer control unit 210, a third transfer control unit 310, and a data transfer state monitoring unit 230. The data transfer control device 12 includes a third transfer control unit 310, a fourth transfer control unit 410, and a data transfer state monitoring unit 330.

図12に示したデータ処理装置6は、図1に示したデータ処理装置1に備えた画像データ入力部が4つになり、データ転送部が4つになった構成である。また、画像データ入力部およびデータ転送部が4つになったことに伴って、データ転送制御装置が3つになっている。なお、データ処理装置6内の構成要素およびデータ転送制御装置内の構成要素は、図1に示したデータ処理装置1内の構成要素およびデータ転送制御装置10内の構成要素と同様の構成要素である。より具体的には、第1の画像データ入力部100〜第4の画像データ入力部400のそれぞれは、図1に示した第1の画像データ入力部100や第2の画像データ入力部200と同様の、インターコネクトバス700を介してDRAMに転送する画像データの供給源である。また、第1のデータ転送部101〜第4のデータ転送部401のそれぞれは、図1に示した第1のデータ転送部101や第2のデータ転送部201と同様の、対応する画像データ入力部から入力された転送データをインターコネクトバス700に出力することによって、それぞれの転送データをDMA転送するイニシエータである。   The data processing device 6 shown in FIG. 12 has a configuration in which there are four image data input units and four data transfer units provided in the data processing device 1 shown in FIG. In addition, the number of image data input units and the number of data transfer units is four, so that the number of data transfer control devices is three. Note that the components in the data processing device 6 and the components in the data transfer control device are the same as the components in the data processing device 1 and the data transfer control device 10 shown in FIG. is there. More specifically, each of the first image data input unit 100 to the fourth image data input unit 400 includes the first image data input unit 100 and the second image data input unit 200 shown in FIG. Similarly, it is a supply source of image data to be transferred to the DRAM via the interconnect bus 700. Further, each of the first data transfer unit 101 to the fourth data transfer unit 401 corresponds to the corresponding image data input similar to the first data transfer unit 101 and the second data transfer unit 201 shown in FIG. This is an initiator for transferring each piece of transfer data by DMA by outputting the transfer data input from the communication unit to the interconnect bus 700.

そして、データ処理装置6では、データ転送制御装置10〜データ転送制御装置12のそれぞれが、図1に示したデータ転送制御装置10と同様に、それぞれのデータ転送部によってDMA転送する転送データを振り分ける。このとき、データ転送制御装置10〜データ転送制御装置12のそれぞれに備えたデータ転送状態監視部130〜データ転送状態監視部330のそれぞれは、図1に示したデータ転送状態監視部130と同様に、対応する2つのデータ転送部のそれぞれにおいて行われているDMA転送の状態を監視する。なお、図12を見てわかるように、データ処理装置6では、データ転送制御装置10〜データ転送制御装置12において、1つの転送制御部が、2つのデータ転送制御装置に重複して含まれている。このため、2つのデータ転送制御装置に重複して含まれている1つの転送制御部は、対応する画像データ入力部から入力された転送データを振り分ける機能と、振り分けられた転送データをDMA転送する機能との両方を備えることとなる。   In the data processing device 6, each of the data transfer control device 10 to the data transfer control device 12 distributes transfer data to be DMA-transferred by each data transfer unit, similarly to the data transfer control device 10 shown in FIG. 1. . At this time, each of the data transfer state monitoring unit 130 to the data transfer state monitoring unit 330 included in each of the data transfer control device 10 to the data transfer control device 12 is similar to the data transfer state monitoring unit 130 illustrated in FIG. The status of the DMA transfer being performed in each of the two corresponding data transfer units is monitored. As can be seen from FIG. 12, in the data processing device 6, in the data transfer control device 10 to the data transfer control device 12, one transfer control unit is redundantly included in the two data transfer control devices. Yes. For this reason, one transfer control unit included redundantly in the two data transfer control devices distributes the transfer data input from the corresponding image data input unit and DMA transfers the distributed transfer data Both functions will be provided.

より具体的には、第2の転送制御部210は、データ転送制御装置10とデータ転送制御装置11とに重複して含まれている。このため、第2の転送制御部210は、図1に示したデータ処理装置1に備えた第2の転送制御部210と同様に、第1の転送制御部110によって振り分けられた第1の転送データをDMA転送する機能に加えて、図1に示したデータ処理装置1に備えた第1の転送制御部110と同様に、第2の画像データ入力部200から入力された第2の転送データを、第2のデータ転送部201と第3のデータ転送部301(第3の転送制御部310)とに振り分ける機能とを備える。また、第3の転送制御部310は、データ転送制御装置11とデータ転送制御装置12とに重複して含まれている。このため、第3の転送制御部310は、図1に示したデータ処理装置1に備えた第2の転送制御部210と同様に、第2の転送制御部210によって振り分けられた第2の転送データをDMA転送する機能に加えて、図1に示したデータ処理装置1に備えた第1の転送制御部110と同様に、第3の画像データ入力部300から入力された第3の転送データを、第3のデータ転送部301と第4のデータ転送部401(第4の転送制御部410)とに振り分ける機能とを備える。   More specifically, the second transfer control unit 210 is redundantly included in the data transfer control device 10 and the data transfer control device 11. Therefore, the second transfer control unit 210 performs the first transfer distributed by the first transfer control unit 110 in the same manner as the second transfer control unit 210 provided in the data processing apparatus 1 illustrated in FIG. In addition to the function of transferring data by DMA, the second transfer data input from the second image data input unit 200 is the same as the first transfer control unit 110 provided in the data processing apparatus 1 shown in FIG. Is distributed to the second data transfer unit 201 and the third data transfer unit 301 (third transfer control unit 310). The third transfer control unit 310 is redundantly included in the data transfer control device 11 and the data transfer control device 12. For this reason, the third transfer control unit 310 performs the second transfer distributed by the second transfer control unit 210 in the same manner as the second transfer control unit 210 provided in the data processing apparatus 1 illustrated in FIG. In addition to the function of DMA transfer of data, the third transfer data input from the third image data input unit 300 is the same as the first transfer control unit 110 provided in the data processing apparatus 1 shown in FIG. Is distributed to the third data transfer unit 301 and the fourth data transfer unit 401 (fourth transfer control unit 410).

本実施形態によれば、データ転送制御装置(データ転送制御装置10〜12)を、データ転送部(第1のデータ転送部101、第2のデータ転送部201、第3のデータ転送部301、および第4のデータ転送部401)と、データ入力部(第1の画像データ入力部100、第2の画像データ入力部200、第3の画像データ入力部300、および第4の画像データ入力部400)との数(ここでは4つ)に応じて数珠つなぎにし、データ転送制御装置10〜12のそれぞれに備えたデータ転送状態監視部(データ転送状態監視部130、データ転送状態監視部230、およびデータ転送状態監視部330)は、対応する第1のデータ転送部101、第2のデータ転送部201、第3のデータ転送部301、および第4のデータ転送部401のそれぞれの転送データの転送状態を監視して、このデータ転送制御装置10〜12に備えたそれぞれの転送制御部(第1の転送制御部110、第2の転送制御部210、第3の転送制御部310、または第4の転送制御部410)に転送制御情報を出力し、それぞれのデータ転送制御装置10〜12に備えた少なくとも1つの転送制御部(第1の転送制御部110、第2の転送制御部210、および第3の転送制御部310)は、転送制御情報に基づいて、対応するデータ入力部(第1の画像データ入力部100、第2の画像データ入力部200、または第3の画像データ入力部300)から入力された転送データを、このデータ転送制御装置10〜12が対応する少なくとも1つのデータ転送部(第2のデータ転送部201、第3のデータ転送部301、および第4のデータ転送部401)に振り分ける、データ処理装置(データ処理装置6)が構成される。   According to the present embodiment, the data transfer control device (data transfer control devices 10 to 12) is changed to a data transfer unit (first data transfer unit 101, second data transfer unit 201, third data transfer unit 301, And a fourth data transfer unit 401), a data input unit (first image data input unit 100, second image data input unit 200, third image data input unit 300, and fourth image data input unit) 400), the data transfer state monitoring units (data transfer state monitoring unit 130, data transfer state monitoring unit 230, and the like included in each of the data transfer control devices 10-12, And the data transfer state monitoring unit 330) correspond to the corresponding first data transfer unit 101, second data transfer unit 201, third data transfer unit 301, and fourth data transfer unit 401. The transfer state of each transfer data is monitored, and each transfer control unit (first transfer control unit 110, second transfer control unit 210, third transfer control) provided in the data transfer control devices 10-12 is provided. Unit 310 or the fourth transfer control unit 410), transfer control information is output, and at least one transfer control unit (the first transfer control unit 110, the second transfer control unit 10) included in each of the data transfer control devices 10 to 12 is provided. Based on the transfer control information, the transfer control unit 210 and the third transfer control unit 310) correspond to the corresponding data input unit (the first image data input unit 100, the second image data input unit 200, or the third Transfer data input from the image data input unit 300) is transferred to at least one data transfer unit (second data transfer unit 201, third data transfer) corresponding to the data transfer control devices 10-12. Transfer section 301, and distributes the four data transfer unit 401 of) the data processing apparatus (data processing apparatus 6) is constructed.

このように、データ処理装置に備えた画像データ入力部およびデータ転送部の数に応じた数のデータ転送制御装置を数珠つなぎの形態で備えることによって、1つの画像データ入力部から入力されたそれぞれの転送データのDMA転送を、2つのデータ転送部によって並列に行わせることができる。これにより、それぞれのデータ転送制御装置において、対応する画像データ入力部が出力した転送データをDMA転送する際のバス帯域が確保されて、DMA転送が円滑に行われ、それぞれの転送データのDMA転送のリアルタイム性を確保することができる。   As described above, by providing the data transfer control devices corresponding to the number of image data input units and data transfer units provided in the data processing device in the form of a daisy chain, each input from one image data input unit. The DMA transfer of the transfer data can be performed in parallel by the two data transfer units. As a result, in each data transfer control device, a bus band for DMA transfer of the transfer data output from the corresponding image data input unit is secured, DMA transfer is performed smoothly, and DMA transfer of each transfer data is performed. Real-time performance can be ensured.

上記に述べたとおり、本発明を実施するための形態によれば、画像データ入力部に対応するデータ転送部によるDMA転送の状態を監視することによって、転送データのDMA転送が円滑に行われているか否かを判定する。そして、データ転送部による転送データのDMA転送が円滑に行われていない場合には、現在転送データをDMA転送しているデータ転送部と異なるデータ転送部によっても、転送データのDMA転送を行うように、転送データをそれぞれのデータ転送部に振り分ける。これにより、これにより、本発明を実施するための形態では、それぞれのデータ転送部で転送データを並列にDMA転送することができ、画像データ入力部から入力された転送データをDMA転送する際のバス帯域を確保することができる。このことにより、本発明を実施するための形態では、画像データ入力部が出力した転送データをDMA転送する際のスループットの低下を抑えることができ、転送データのリアルタイム性を確保することができる。   As described above, according to the embodiment for carrying out the present invention, the DMA transfer of the transfer data is smoothly performed by monitoring the state of the DMA transfer by the data transfer unit corresponding to the image data input unit. It is determined whether or not. If the DMA transfer of the transfer data by the data transfer unit is not performed smoothly, the transfer of the transfer data is also performed by a data transfer unit different from the data transfer unit currently transferring the transfer data. The transfer data is distributed to each data transfer unit. Thereby, in the embodiment for carrying out the present invention, the transfer data can be DMA-transferred in parallel in each data transfer unit, and the transfer data input from the image data input unit can be DMA-transferred. Bus bandwidth can be secured. As a result, in the embodiment for carrying out the present invention, it is possible to suppress a decrease in throughput when the transfer data output from the image data input unit is DMA-transferred, and it is possible to ensure the real-time property of the transfer data.

また、本発明を実施するための形態によれば、データ転送制御装置内のそれぞれの転送制御部が対応するデータ転送部に転送データを出力する際に、転送データの出力順序の並び替えを行うことができる。これにより、本発明を実施するための形態では、転送データをDMA転送する際に、DRAMのバンク衝突が発生する確率を低減し、DRAMのバンク衝突による待ち時間を低減することができる。このとき、本発明を実施するための形態では、通常のDMA転送において使用されるそれぞれの転送バッファ部を用いて転送データの出力順序の並び替えを行うことができるため、少ないハードウェアリソースでDRAMのバンク衝突を回避することができる。   According to the embodiment for carrying out the present invention, when each transfer control unit in the data transfer control device outputs the transfer data to the corresponding data transfer unit, the transfer data output order is rearranged. be able to. As a result, in the embodiment for carrying out the present invention, it is possible to reduce the probability of occurrence of DRAM bank collision when DMA transfer of transfer data, and to reduce waiting time due to DRAM bank collision. At this time, in the mode for carrying out the present invention, the order of output of the transfer data can be rearranged using the respective transfer buffer units used in the normal DMA transfer. Bank conflicts can be avoided.

これらにより、本発明を実施するための形態では、データ処理装置を備えたシステムの性能を向上させることができる。   As a result, in the mode for carrying out the present invention, the performance of the system including the data processing device can be improved.

なお、本実施形態においては、それぞれの画像データ入力部から出力された転送データをDRAMに転送する、すなわち、データ処理装置がDRAMに転送データを出力するライト転送の場合について説明した。しかし、転送データの転送方向は、本発明を実施するための形態に示したデータ処理装置からDRAMへの方向に限定されるものではない。例えば、DRAMに格納されている転送データをデータ処理装置が読み出すリード転送においても、本実施形態において説明した転送データの流れを逆方向にすることによって、同様に、本発明の考え方を適用することができる。また、例えば、ライト転送とリード転送とが組み合わされた構成であっても同様に、本発明の考え方を適用することができる。   In the present embodiment, the transfer data output from each image data input unit is transferred to the DRAM, that is, the write transfer in which the data processing apparatus outputs the transfer data to the DRAM has been described. However, the transfer direction of the transfer data is not limited to the direction from the data processing apparatus shown in the embodiment for carrying out the present invention to the DRAM. For example, in the read transfer in which the data processing device reads the transfer data stored in the DRAM, the concept of the present invention is similarly applied by reversing the flow of the transfer data described in this embodiment. Can do. Further, for example, the concept of the present invention can be similarly applied to a configuration in which write transfer and read transfer are combined.

また、本実施形態においては、図12に示した、多くの画像データ入力部および転送部を備えた構成のデータ処理装置において、それぞれのデータ転送制御装置が、2つの転送制御部と1つのデータ転送状態監視部とで構成される場合について説明した。しかし、1つのデータ転送制御装置に備える転送制御部の数は、本発明を実施するための形態に示した数に限定されるものではなく、例えば、1つのデータ転送制御装置が、3つの転送制御部と1つのデータ転送状態監視部とで構成されてもよい。より具体的には、図12に示した一例を参照すると、データ転送制御装置10が、第1の転送制御部110と、第2の転送制御部210と、第3の転送制御部310と、データ転送状態監視部130と、で構成されてもよい。この構成の場合、データ転送状態監視部130は、第1の転送制御部110、第2の転送制御部210、および第3の転送制御部310のそれぞれにおいて行われているDMA転送の状態を監視する。そして、第1の転送制御部110は、第1の画像データ入力部100から入力された第1の転送データを、第2の転送制御部210に加えて、第3の転送制御部310にも振り分ける。これにより、第1の転送データを、第1のデータ転送部101と第2のデータ転送部201とに加えて、第3のデータ転送部301によっても並列にDMA転送することができる。   Further, in the present embodiment, in the data processing apparatus having a configuration including many image data input units and transfer units shown in FIG. 12, each data transfer control device includes two transfer control units and one data. The case where the transfer state monitoring unit is configured has been described. However, the number of transfer control units included in one data transfer control device is not limited to the number shown in the embodiment for carrying out the present invention. For example, one data transfer control device includes three transfer control units. It may be configured by a control unit and one data transfer state monitoring unit. More specifically, referring to the example shown in FIG. 12, the data transfer control device 10 includes a first transfer control unit 110, a second transfer control unit 210, a third transfer control unit 310, And a data transfer state monitoring unit 130. In the case of this configuration, the data transfer status monitoring unit 130 monitors the status of the DMA transfer performed in each of the first transfer control unit 110, the second transfer control unit 210, and the third transfer control unit 310. To do. Then, the first transfer control unit 110 adds the first transfer data input from the first image data input unit 100 to the third transfer control unit 310 in addition to the second transfer control unit 210. Distribute. Accordingly, the first transfer data can be DMA-transferred in parallel by the third data transfer unit 301 in addition to the first data transfer unit 101 and the second data transfer unit 201.

なお、本実施形態においては、デジタルカメラなどの撮像装置に搭載され、画像処理を行うシステムLSIを本発明のデータ処理装置とし、このシステムLSIに本発明のデータ転送制御装置を適用した場合について説明した。そして、データ転送制御装置によって転送する転送データが、画像データである場合について説明した。しかし、本実施形態のデータ転送制御装置を適用することができるデータ処理装置のシステムは、本発明を実施するための形態に示したデータ処理装置のシステムに限定されるものではなく、入力された転送データをDMA転送するデータ処理装置のシステムであれば、どのようなシステムにも同様に、本発明のデータ転送制御装置の考え方を適用することができる。従って、データ転送制御装置によって転送する転送データは、必ずしも画像データに限定されるものではない。   In this embodiment, a system LSI mounted on an imaging apparatus such as a digital camera and performing image processing is used as the data processing apparatus of the present invention, and the data transfer control apparatus of the present invention is applied to this system LSI. did. The case where the transfer data transferred by the data transfer control device is image data has been described. However, the system of the data processing apparatus to which the data transfer control apparatus of the present embodiment can be applied is not limited to the data processing apparatus system shown in the embodiment for carrying out the present invention. The system of the data transfer control device of the present invention can be similarly applied to any system as long as it is a data processing device system that transfers transfer data by DMA. Therefore, transfer data transferred by the data transfer control device is not necessarily limited to image data.

以上、本発明の実施形態について、図面を参照して説明してきたが、具体的な構成はこの実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲においての種々の変更も含まれる。   The embodiment of the present invention has been described above with reference to the drawings. However, the specific configuration is not limited to this embodiment, and includes various modifications within the scope of the present invention. It is.

1,2,3,4,5,6・・・データ処理装置
100・・・第1の画像データ入力部(データ入力部)
101・・・第1のデータ転送部(データ転送部,第1のデータ転送部)
200・・・第2の画像データ入力部(データ入力部)
201・・・第2のデータ転送部(データ転送部,第2のデータ転送部)
10,20,30,40,50,11,12・・・データ転送制御装置
110,140,160,180,260・・・第1の転送制御部(転送制御部,第1の転送制御部)
111,261・・・第1の転送バッファ部(転送制御部,転送バッファ部,第1の転送バッファ部)
112,142,162,182,262・・・第1のバッファ制御部(転送制御部,バッファ制御部,第1のバッファ制御部)
210,220・・・第2の転送制御部(転送制御部,第2の転送制御部)
211,221・・・第2の転送バッファ部(転送制御部,転送バッファ部,第2の転送バッファ部)
212,222・・・第2のバッファ制御部(転送制御部,バッファ制御部,第2のバッファ制御部)
130,150,170,190,230,330・・・データ転送状態監視部
131・・・データ転送待ち時間監視部(データ転送状態監視部,データ転送待ち時間監視部)
132・・・メモリアクセス履歴収集部(データ転送状態監視部,アクセス履歴収集部)
151・・・転送負荷状態監視部(データ転送状態監視部,転送負荷状態監視部)
171・・・転送バッファ残量監視部(データ転送状態監視部,転送バッファ残量監視部)
191・・・モード設定部(データ転送状態監視部,モード設定部)
300・・・第3の画像データ入力部(データ入力部)
301・・・第3のデータ転送部(データ転送部)
400・・・第4の画像データ入力部(データ入力部)
401・・・第4のデータ転送部(データ転送部)
310・・・第3の転送制御部(転送制御部)
410・・・第4の転送制御部(転送制御部)
1, 2, 3, 4, 5, 6... Data processing device 100... First image data input unit (data input unit)
101... First data transfer unit (data transfer unit, first data transfer unit)
200: Second image data input unit (data input unit)
201: second data transfer unit (data transfer unit, second data transfer unit)
10, 20, 30, 40, 50, 11, 12... Data transfer control device 110, 140, 160, 180, 260... First transfer control unit (transfer control unit, first transfer control unit)
111, 261 ... first transfer buffer unit (transfer control unit, transfer buffer unit, first transfer buffer unit)
112, 142, 162, 182, 262... First buffer control unit (transfer control unit, buffer control unit, first buffer control unit)
210, 220 ... second transfer control unit (transfer control unit, second transfer control unit)
211, 221 ... second transfer buffer unit (transfer control unit, transfer buffer unit, second transfer buffer unit)
212, 222 ... second buffer control unit (transfer control unit, buffer control unit, second buffer control unit)
130, 150, 170, 190, 230, 330... Data transfer state monitoring unit 131... Data transfer waiting time monitoring unit (data transfer state monitoring unit, data transfer waiting time monitoring unit)
132: Memory access history collection unit (data transfer status monitoring unit, access history collection unit)
151: Transfer load status monitoring unit (data transfer status monitoring unit, transfer load status monitoring unit)
171... Transfer buffer remaining amount monitoring unit (data transfer state monitoring unit, transfer buffer remaining amount monitoring unit)
191: Mode setting unit (data transfer state monitoring unit, mode setting unit)
300: Third image data input unit (data input unit)
301: Third data transfer unit (data transfer unit)
400: Fourth image data input unit (data input unit)
401: Fourth data transfer unit (data transfer unit)
310: Third transfer control unit (transfer control unit)
410: Fourth transfer control unit (transfer control unit)

Claims (7)

共通バスを介してデータを転送する複数のデータ転送部のそれぞれに、前記共通バスを介して転送する転送データを出力するデータ転送制御装置であって、
それぞれの前記データ転送部に対応し、該データ転送部のそれぞれに対応するデータ入力部から入力された前記転送データを、対応する前記データ転送部に出力する複数の転送制御部と、
前記データ転送部のそれぞれが前記転送データを転送している状態を監視し、該監視した前記データ転送部のそれぞれの前記転送データの転送状態に基づいて、それぞれの前記転送制御部における前記転送データの対応する前記データ転送部への出力を制御する転送制御情報を出力するデータ転送状態監視部と、
を備え、
複数の前記転送制御部の内、少なくとも1つの前記転送制御部は、
対応する前記データ転送部の前記転送制御情報に基づいて、該データ転送部によって転送する前記転送データを、該データ転送部によって転送する前記転送データと他の前記転送制御部が対応する他の前記データ転送部によって転送する前記転送データとに振り分けて出力し、
前記転送データが振り分けられた、少なくとも1つの他の前記転送制御部は、
振り分けられた前記転送データを、対応する前記データ転送部の前記転送制御情報に基づいて、該対応する前記データ転送部に出力し、
複数の前記転送制御部のそれぞれは、
対応する前記データ転送部が対応する前記データ入力部から入力された前記転送データを一時的に記憶する転送バッファ部と、
前記転送制御情報に基づいて、前記転送バッファ部に記憶された前記転送データを読み出して出力するバッファ制御部と、
を備え、
前記転送データを振り分ける前記転送制御部である第1の転送制御部に備えた前記転送バッファ部である第1の転送バッファ部は、
当該第1の転送制御部が対応する前記データ転送部である第1のデータ転送部によって転送する前記転送データである第1の転送データを一時的に記憶し、
当該第1の転送制御部に備えたバッファ制御部である第1のバッファ制御部は、
前記第1のデータ転送部の前記転送制御情報である第1の転送制御情報に基づいて、前記第1の転送バッファ部から読み出した前記第1の転送データを、前記第1のデータ転送部によって転送する前記第1の転送データと他の前記転送制御部が対応する他の前記データ転送部によって転送する前記第1の転送データとに振り分けて出力し、
前記第1の転送データが振り分けられた他の前記転送制御部である第2の転送制御部に備えた前記転送バッファ部である第2の転送バッファ部は、
当該第2の転送制御部が対応する前記データ転送部である第2のデータ転送部によって転送する前記転送データである第2の転送データを一時的に記憶し、
当該第2の転送制御部に備えたバッファ制御部である第2のバッファ制御部は、
前記第1のバッファ制御部から前記第1の転送データが入力されていない場合には、前記第2のデータ転送部の前記転送制御情報である第2の転送制御情報に基づいて、前記第2の転送バッファ部から読み出した前記第2の転送データを前記第2のデータ転送部に出力し、
前記第1のバッファ制御部から前記第1の転送データが入力された場合には、前記第2の転送制御情報に基づいて、該第1の転送データを前記第2のデータ転送部に出力し、
前記データ転送状態監視部は、
前記第1のデータ転送部が前記第1の転送データを転送する際の制御信号に基づいて、該第1のデータ転送部における前記第1の転送データの転送待ち時間を監視し、該監視した前記第1の転送データの転送待ち時間が、予め定めた時間を超過した場合に、転送待ち時間が予め定めた時間を超過したことを表すタイムアウト信号を出力するデータ転送待ち時間監視部と、
前記第1のデータ転送部が前記第1の転送データを転送する際の信号に基づいて、該第1のデータ転送部における前記第1の転送データの転送履歴と、前記第2のデータ転送部が前記第1の転送データまたは前記第2の転送データを転送する際の信号に基づいて、該第2のデータ転送部における前記第1の転送データまたは前記第2の転送データの転送履歴とを収集するアクセス履歴収集部と、
を備え、
前記アクセス履歴収集部は、前記データ転送待ち時間監視部が前記タイムアウト信号を出力した際に、収集した前記第1の転送データの転送履歴と前記第2の転送データの転送履歴とに基づいて、前記第1の転送データと前記第2の転送データとによって前記転送データを転送するための転送情報を前記第1のバッファ制御部に出力し、
前記第1のバッファ制御部は、
前記アクセス履歴収集部から出力された前記転送情報に基づいて、前記第1の転送データを、前記第1のデータ転送部と前記第2のバッファ制御部とに振り分けて出力する、
ことを特徴とするデータ転送制御装置。
A data transfer control device that outputs transfer data to be transferred via the common bus to each of a plurality of data transfer units that transfer data via a common bus,
A plurality of transfer control units that correspond to the respective data transfer units and that output the transfer data input from the data input units corresponding to the respective data transfer units to the corresponding data transfer units;
Each of the data transfer units monitors a state of transferring the transfer data, and the transfer data in each of the transfer control units is based on the transfer state of each of the transfer data of the monitored data transfer unit A data transfer state monitoring unit that outputs transfer control information for controlling output to the corresponding data transfer unit;
With
Among the plurality of transfer control units, at least one transfer control unit includes:
Based on the transfer control information of the corresponding data transfer unit, the transfer data transferred by the data transfer unit is transferred to the other transfer control unit corresponding to the transfer data transferred by the data transfer unit. Output by sorting to the transfer data transferred by the data transfer unit,
At least one other transfer control unit to which the transfer data is distributed,
The sorted transfer data is output to the corresponding data transfer unit based on the transfer control information of the corresponding data transfer unit,
Each of the plurality of transfer control units includes:
A transfer buffer unit for temporarily storing the transfer data input from the data input unit corresponding to the corresponding data transfer unit;
A buffer control unit that reads out and outputs the transfer data stored in the transfer buffer unit based on the transfer control information;
With
The first transfer buffer unit that is the transfer buffer unit provided in the first transfer control unit that is the transfer control unit that distributes the transfer data,
Temporarily storing the first transfer data that is the transfer data transferred by the first data transfer unit that is the data transfer unit to which the first transfer control unit corresponds;
The first buffer control unit, which is a buffer control unit provided in the first transfer control unit,
Based on the first transfer control information that is the transfer control information of the first data transfer unit, the first transfer data read from the first transfer buffer unit is transferred by the first data transfer unit. The first transfer data to be transferred and the first transfer data to be transferred by the other data transfer unit corresponding to the other transfer control unit are distributed and output,
The second transfer buffer unit which is the transfer buffer unit provided in the second transfer control unit which is the other transfer control unit to which the first transfer data is distributed,
Temporarily storing the second transfer data that is the transfer data transferred by the second data transfer unit that is the data transfer unit to which the second transfer control unit corresponds;
The second buffer control unit, which is a buffer control unit provided in the second transfer control unit,
When the first transfer data is not input from the first buffer control unit, the second transfer control information based on the second transfer control information that is the transfer control information of the second data transfer unit is used. Output the second transfer data read from the transfer buffer unit to the second data transfer unit,
When the first transfer data is input from the first buffer control unit, the first transfer data is output to the second data transfer unit based on the second transfer control information. ,
The data transfer state monitoring unit
Based on a control signal when the first data transfer unit transfers the first transfer data, the transfer waiting time of the first transfer data in the first data transfer unit is monitored and monitored. A data transfer waiting time monitoring unit that outputs a timeout signal indicating that the transfer waiting time exceeds a predetermined time when the transfer waiting time of the first transfer data exceeds a predetermined time;
Based on a signal when the first data transfer unit transfers the first transfer data, the transfer history of the first transfer data in the first data transfer unit and the second data transfer unit , Based on a signal when transferring the first transfer data or the second transfer data, the transfer history of the first transfer data or the second transfer data in the second data transfer unit An access history collection unit to collect;
With
The access history collection unit is based on the collected transfer history of the first transfer data and the transfer history of the second transfer data when the data transfer waiting time monitoring unit outputs the timeout signal. Outputting transfer information for transferring the transfer data by the first transfer data and the second transfer data to the first buffer control unit;
The first buffer control unit includes:
Based on the transfer information output from the access history collection unit, the first transfer data is distributed and output to the first data transfer unit and the second buffer control unit,
A data transfer control device.
前記データ転送状態監視部は、
前記第1のデータ転送部が前記第1の転送データを転送する際の制御信号に基づいて、該第1のデータ転送部における前記第1の転送データの転送の負荷を監視し、該監視した前記第1の転送データの転送負荷と予め定めた負荷の大きさとを比較することによって負荷の分散を行うか否かを判定し、該判定した結果に基づいて前記第1のデータ転送部における転送負荷を分散するための負荷分散指示を出力する転送負荷状態監視部、
を備え、
前記第1のバッファ制御部は、
前記転送負荷状態監視部から出力された前記負荷分散指示に基づいて、前記第1の転送データを、前記第1のデータ転送部と前記第2のバッファ制御部とに振り分けて出力する、
ことを特徴とする請求項1に記載のデータ転送制御装置。
The data transfer state monitoring unit
Based on a control signal when the first data transfer unit transfers the first transfer data, the load of the transfer of the first transfer data in the first data transfer unit is monitored and monitored It is determined whether or not to distribute the load by comparing the transfer load of the first transfer data with a predetermined load size, and the transfer in the first data transfer unit based on the determined result A transfer load state monitoring unit for outputting a load distribution instruction for distributing the load,
With
The first buffer control unit includes:
Based on the load distribution instruction output from the transfer load state monitoring unit, the first transfer data is distributed and output to the first data transfer unit and the second buffer control unit,
The data transfer control device according to claim 1.
前記データ転送状態監視部は、
前記第1のデータ転送部が前記第1の転送データを転送する際の制御信号に基づいて、前記第1の転送バッファ部の記憶容量の残量を監視し、該監視した記憶容量の残量に応じて、前記第1のデータ転送部における転送負荷を分散するための負荷分散指示を出力する転送バッファ残量監視部、
を備え、
前記第1のバッファ制御部は、
前記転送バッファ残量監視部から出力された前記負荷分散指示に基づいて、前記第1の転送データを、前記第1のデータ転送部と前記第2のバッファ制御部とに振り分けて出力する、
ことを特徴とする請求項1または請求項2に記載のデータ転送制御装置。
The data transfer state monitoring unit
Based on a control signal when the first data transfer unit transfers the first transfer data, the remaining storage capacity of the first transfer buffer unit is monitored, and the monitored remaining storage capacity And a transfer buffer remaining amount monitoring unit that outputs a load distribution instruction for distributing the transfer load in the first data transfer unit,
With
The first buffer control unit includes:
Based on the load distribution instruction output from the transfer buffer remaining amount monitoring unit, the first transfer data is distributed and output to the first data transfer unit and the second buffer control unit.
The data transfer control device according to claim 1 or 2, characterized by the above.
前記データ転送状態監視部は、
設定された動作モードに応じて、前記第1の転送データを転送する際の前記第1の転送データの経路を決定し、該決定した結果に基づいて前記第1の転送データを転送する経路を表す経路選択指示を出力するモード設定部、
を備え、
前記第1のバッファ制御部は、
前記モード設定部から出力された前記経路選択指示に基づいて、前記第1の転送データを、前記第1のデータ転送部と前記第2のバッファ制御部とに振り分けて出力する、
ことを特徴とする請求項1から請求項3のいずれか1の項に記載のデータ転送制御装置。
The data transfer state monitoring unit
In accordance with a set operation mode, a path of the first transfer data when transferring the first transfer data is determined, and a path for transferring the first transfer data is determined based on the determined result. A mode setting unit for outputting a route selection instruction to represent,
With
The first buffer control unit includes:
Based on the path selection instruction output from the mode setting unit, the first transfer data is distributed and output to the first data transfer unit and the second buffer control unit,
The data transfer control device according to any one of claims 1 to 3, wherein:
それぞれが転送バッファ部及びバッファ制御部を有する複数の転送制御部と、データ転送待ち時間監視部及びアクセス履歴収集部を有するデータ転送状態監視部とを備え、共通バスを介してデータを転送する複数のデータ転送部のそれぞれに、前記共通バスを介して転送する転送データを出力するデータ転送制御装置におけるデータ転送制御方法であって、
複数の転送制御部が、それぞれの前記データ転送部に対応し、該データ転送部のそれぞれに対応するデータ入力部から入力された前記転送データを、対応する前記データ転送部に出力する複数の転送制御手順と、
データ転送状態監視部が、前記データ転送部のそれぞれが前記転送データを転送している状態を監視し、該監視した前記データ転送部のそれぞれの前記転送データの転送状態に基づいて、それぞれの前記転送制御手順における前記転送データの対応する前記データ転送部への出力を制御する転送制御情報を出力するデータ転送状態監視手順と、
を含み、
複数の前記転送制御手順の内、少なくとも1つの前記転送制御手順は、
対応する前記データ転送部の前記転送制御情報に基づいて、該データ転送部によって転送する前記転送データを、該データ転送部によって転送する前記転送データと他の前記転送制御手順が対応する他の前記データ転送部によって転送する前記転送データとに振り分けて出力し、
前記転送データが振り分けられた、少なくとも1つの他の前記転送制御手順は、
振り分けられた前記転送データを、対応する前記データ転送部の前記転送制御情報に基づいて、該対応する前記データ転送部に出力し、
複数の前記転送制御手順のそれぞれは、
前記転送制御部が、対応する転送バッファ部に、対応する前記データ転送部が対応する前記データ入力部から入力された前記転送データを一時的に記憶させる転送バッファ手順と、
対応するバッファ制御部が、前記転送制御情報に基づいて、対応する前記転送バッファ部に記憶された前記転送データを読み出して出力するバッファ制御手順と、
を含み、
前記転送データを振り分ける前記転送制御手順である第1の転送制御手順に含まれる前記転送バッファ手順である第1の転送バッファ手順は、
当該第1の転送制御手順が対応する前記データ転送部である第1のデータ転送部によって転送する前記転送データである第1の転送データを対応する前記転送バッファ部に一時的に記憶させ、
当該第1の転送制御手順に含まれるバッファ制御手順である第1のバッファ制御手順は、
前記第1のデータ転送部の前記転送制御情報である第1の転送制御情報に基づいて、前記第1の転送バッファ手順に対応する前記転送バッファ部から読み出した前記第1の転送データを、前記第1のデータ転送部によって転送する前記第1の転送データと他の前記転送制御手順が対応する他の前記データ転送部によって転送する前記第1の転送データとに振り分けて出力し、
前記第1の転送データが振り分けられた他の前記転送制御手順である第2の転送制御手順に含まれる前記転送バッファ手順である第2の転送バッファ手順は、
当該第2の転送制御手順が対応する前記データ転送部である第2のデータ転送部によって転送する前記転送データである第2の転送データを対応する前記転送バッファ部に一時的に記憶させ、
当該第2の転送制御手順に含まれるバッファ制御手順である第2のバッファ制御手順は、
前記第1のバッファ制御手順によって前記第1の転送データが入力されていない場合には、前記第2のデータ転送部の前記転送制御情報である第2の転送制御情報に基づいて、前記第2の転送バッファ手順に対応する前記転送バッファ部から読み出した前記第2の転送データを前記第2のデータ転送部に出力し、
前記第1のバッファ制御手順によって前記第1の転送データが入力された場合には、前記第2の転送制御情報に基づいて、該第1の転送データを前記第2のデータ転送部に出力し、
前記データ転送状態監視手順は、
データ転送待ち時間監視部が、前記第1のデータ転送部が前記第1の転送データを転送する際の制御信号に基づいて、該第1のデータ転送部における前記第1の転送データの転送待ち時間を監視し、該監視した前記第1の転送データの転送待ち時間が、予め定めた時間を超過した場合に、転送待ち時間が予め定めた時間を超過したことを表すタイムアウト信号を出力するデータ転送待ち時間監視手順と、
アクセス履歴収集部が、前記第1のデータ転送部が前記第1の転送データを転送する際の信号に基づいて、該第1のデータ転送部における前記第1の転送データの転送履歴と、前記第2のデータ転送部が前記第1の転送データまたは前記第2の転送データを転送する際の信号に基づいて、該第2のデータ転送部における前記第1の転送データまたは前記第2の転送データの転送履歴とを収集するアクセス履歴収集手順と、
を含み、
前記アクセス履歴収集手順は、
前記データ転送待ち時間監視手順によって前記タイムアウト信号を出力した際に、収集した前記第1の転送データの転送履歴と前記第2の転送データの転送履歴とに基づいて、前記第1の転送データと前記第2の転送データとによって前記転送データを転送するための転送情報を前記第1のバッファ制御手順に対応する前記転送制御部に出力し、
前記第1のバッファ制御手順は、
前記アクセス履歴収集手順によって出力された前記転送情報に基づいて、前記第1の転送データを、前記第1のデータ転送部と前記第2のバッファ制御手順に対応する前記バッファ制御部とに振り分けて出力する、
ことを特徴とするデータ転送制御方法。
A plurality of transfer controllers each having a transfer buffer unit and a buffer control unit, and a data transfer state monitoring unit having a data transfer waiting time monitoring unit and an access history collection unit, and transferring a plurality of data via a common bus A data transfer control method in a data transfer control device for outputting transfer data transferred via the common bus to each of the data transfer units,
A plurality of transfer control units correspond to each of the data transfer units, and a plurality of transfers that output the transfer data input from the data input unit corresponding to each of the data transfer units to the corresponding data transfer unit Control procedures;
A data transfer state monitoring unit monitors a state in which each of the data transfer units is transferring the transfer data, and based on the transfer state of the transfer data of each of the monitored data transfer units, A data transfer state monitoring procedure for outputting transfer control information for controlling the output of the transfer data to the corresponding data transfer unit in the transfer control procedure;
Including
Among the plurality of transfer control procedures, at least one of the transfer control procedures is:
Based on the transfer control information of the corresponding data transfer unit, the transfer data transferred by the data transfer unit is transferred to the other transfer control procedure corresponding to the transfer data transferred by the data transfer unit. Output by sorting to the transfer data transferred by the data transfer unit,
At least one other transfer control procedure to which the transfer data is distributed is:
The sorted transfer data is output to the corresponding data transfer unit based on the transfer control information of the corresponding data transfer unit,
Each of the plurality of transfer control procedures includes:
A transfer buffer procedure in which the transfer control unit temporarily stores the transfer data input from the data input unit corresponding to the corresponding data transfer unit in the corresponding transfer buffer unit;
A corresponding buffer control unit reads out and outputs the transfer data stored in the corresponding transfer buffer unit based on the transfer control information; and
Including
The first transfer buffer procedure that is the transfer buffer procedure included in the first transfer control procedure that is the transfer control procedure that distributes the transfer data is:
Temporarily storing the first transfer data, which is the transfer data transferred by the first data transfer unit, which is the data transfer unit corresponding to the first transfer control procedure, in the corresponding transfer buffer unit;
The first buffer control procedure that is a buffer control procedure included in the first transfer control procedure is:
Based on the first transfer control information that is the transfer control information of the first data transfer unit, the first transfer data read from the transfer buffer unit corresponding to the first transfer buffer procedure, The first transfer data transferred by the first data transfer unit and the first transfer data transferred by the other data transfer unit corresponding to another transfer control procedure are distributed and output,
The second transfer buffer procedure which is the transfer buffer procedure included in the second transfer control procedure which is the other transfer control procedure to which the first transfer data is distributed,
Temporarily storing the second transfer data, which is the transfer data transferred by the second data transfer unit, which is the data transfer unit corresponding to the second transfer control procedure, in the corresponding transfer buffer unit;
The second buffer control procedure that is a buffer control procedure included in the second transfer control procedure is:
When the first transfer data is not input by the first buffer control procedure, the second transfer control information based on the second transfer control information that is the transfer control information of the second data transfer unit is used. Output the second transfer data read from the transfer buffer unit corresponding to the transfer buffer procedure to the second data transfer unit;
When the first transfer data is input by the first buffer control procedure, the first transfer data is output to the second data transfer unit based on the second transfer control information. ,
The data transfer state monitoring procedure includes:
A data transfer waiting time monitoring unit waits for transfer of the first transfer data in the first data transfer unit based on a control signal when the first data transfer unit transfers the first transfer data. Data for monitoring time and outputting a time-out signal indicating that the transfer waiting time exceeds a predetermined time when the transfer waiting time of the monitored first transfer data exceeds a predetermined time Transfer waiting time monitoring procedure,
An access history collection unit, based on a signal when the first data transfer unit transfers the first transfer data, a transfer history of the first transfer data in the first data transfer unit; and Based on a signal when the second data transfer unit transfers the first transfer data or the second transfer data, the first transfer data or the second transfer in the second data transfer unit Access history collection procedure for collecting data transfer history,
Including
The access history collection procedure includes:
Based on the transfer history of the first transfer data and the transfer history of the second transfer data collected when the time-out signal is output by the data transfer waiting time monitoring procedure, Outputting transfer information for transferring the transfer data by the second transfer data to the transfer control unit corresponding to the first buffer control procedure;
The first buffer control procedure includes:
Based on the transfer information output by the access history collection procedure, the first transfer data is distributed to the first data transfer unit and the buffer control unit corresponding to the second buffer control procedure. Output,
A data transfer control method.
共通バスを介してデータを転送する複数のデータ転送部と、
前記データ転送部のそれぞれに対応し、前記共通バスを介して転送する転送データを出力する複数のデータ入力部と、
それぞれの前記データ転送部に対応し、該データ転送部のそれぞれに対応するデータ入力部から入力された前記転送データを、対応する前記データ転送部に出力する複数の転送制御部と、前記データ転送部のそれぞれが前記転送データを転送している状態を監視し、該監視した前記データ転送部のそれぞれの前記転送データの転送状態に基づいて、それぞれの前記転送制御部における前記転送データの対応する前記データ転送部への出力を制御する転送制御情報を出力するデータ転送状態監視部と、を具備したデータ転送制御装置と、
を備え、
前記データ転送制御装置に備えた複数の前記転送制御部の内、少なくとも1つの前記転送制御部は、
対応する前記データ転送部の前記転送制御情報に基づいて、該データ転送部によって転送する前記転送データを、該データ転送部によって転送する前記転送データと他の前記転送制御部が対応する他の前記データ転送部によって転送する前記転送データとに振り分けて出力し、
前記データ転送制御装置に備えた複数の前記転送制御部の内、前記転送データが振り分けられた、少なくとも1つの他の前記転送制御部は、
振り分けられた前記転送データを、対応する前記データ転送部の前記転送制御情報に基づいて、該対応する前記データ転送部に出力し、
前記データ転送制御装置に備えた複数の前記転送制御部のそれぞれは、
対応する前記データ転送部が対応する前記データ入力部から入力された前記転送データを一時的に記憶する転送バッファ部と、
前記転送制御情報に基づいて、前記転送バッファ部に記憶された前記転送データを読み出して出力するバッファ制御部と、
を備え、
前記転送データを振り分ける前記転送制御部である第1の転送制御部に備えた前記転送バッファ部である第1の転送バッファ部は、
当該第1の転送制御部が対応する前記データ転送部である第1のデータ転送部によって転送する前記転送データである第1の転送データを一時的に記憶し、
当該第1の転送制御部に備えたバッファ制御部である第1のバッファ制御部は、
前記第1のデータ転送部の前記転送制御情報である第1の転送制御情報に基づいて、前記第1の転送バッファ部から読み出した前記第1の転送データを、前記第1のデータ転送部によって転送する前記第1の転送データと他の前記転送制御部が対応する他の前記データ転送部によって転送する前記第1の転送データとに振り分けて出力し、
前記第1の転送データが振り分けられた他の前記転送制御部である第2の転送制御部に備えた前記転送バッファ部である第2の転送バッファ部は、
当該第2の転送制御部が対応する前記データ転送部である第2のデータ転送部によって転送する前記転送データである第2の転送データを一時的に記憶し、
当該第2の転送制御部に備えたバッファ制御部である第2のバッファ制御部は、
前記第1のバッファ制御部から前記第1の転送データが入力されていない場合には、前記第2のデータ転送部の前記転送制御情報である第2の転送制御情報に基づいて、前記第2の転送バッファ部から読み出した前記第2の転送データを前記第2のデータ転送部に出力し、
前記第1のバッファ制御部から前記第1の転送データが入力された場合には、前記第2の転送制御情報に基づいて、該第1の転送データを前記第2のデータ転送部に出力し、
前記データ転送制御装置に備えた前記データ転送状態監視部は、
前記第1のデータ転送部が前記第1の転送データを転送する際の制御信号に基づいて、該第1のデータ転送部における前記第1の転送データの転送待ち時間を監視し、該監視した前記第1の転送データの転送待ち時間が、予め定めた時間を超過した場合に、転送待ち時間が予め定めた時間を超過したことを表すタイムアウト信号を出力するデータ転送待ち時間監視部と、
前記第1のデータ転送部が前記第1の転送データを転送する際の信号に基づいて、該第1のデータ転送部における前記第1の転送データの転送履歴と、前記第2のデータ転送部が前記第1の転送データまたは前記第2の転送データを転送する際の信号に基づいて、該第2のデータ転送部における前記第1の転送データまたは前記第2の転送データの転送履歴とを収集するアクセス履歴収集部と、
を備え、
前記アクセス履歴収集部は、前記データ転送待ち時間監視部が前記タイムアウト信号を出力した際に、収集した前記第1の転送データの転送履歴と前記第2の転送データの転送履歴とに基づいて、前記第1の転送データと前記第2の転送データとによって前記転送データを転送するための転送情報を前記第1のバッファ制御部に出力し、
前記第1のバッファ制御部は、
前記アクセス履歴収集部から出力された前記転送情報に基づいて、前記第1の転送データを、前記第1のデータ転送部と前記第2のバッファ制御部とに振り分けて出力する、
ことを特徴とするデータ処理装置。
A plurality of data transfer units for transferring data via a common bus;
A plurality of data input units corresponding to each of the data transfer units and outputting transfer data to be transferred via the common bus;
A plurality of transfer control units that correspond to the respective data transfer units and that output the transfer data input from the data input units corresponding to the respective data transfer units to the corresponding data transfer units; and the data transfer Each of the units monitors the state of transferring the transfer data, and the transfer data corresponding to the transfer data in each of the transfer control units is based on the transfer state of the transfer data of each of the monitored data transfer units A data transfer state monitoring unit that outputs transfer control information for controlling output to the data transfer unit, and a data transfer control device comprising:
With
Among the plurality of transfer control units provided in the data transfer control device, at least one of the transfer control units is:
Based on the transfer control information of the corresponding data transfer unit, the transfer data transferred by the data transfer unit is transferred to the other transfer control unit corresponding to the transfer data transferred by the data transfer unit. Output by sorting to the transfer data transferred by the data transfer unit,
Among the plurality of transfer control units provided in the data transfer control device, at least one other transfer control unit to which the transfer data is distributed,
The sorted transfer data is output to the corresponding data transfer unit based on the transfer control information of the corresponding data transfer unit,
Each of the plurality of transfer control units provided in the data transfer control device,
A transfer buffer unit for temporarily storing the transfer data input from the data input unit corresponding to the corresponding data transfer unit;
A buffer control unit that reads out and outputs the transfer data stored in the transfer buffer unit based on the transfer control information;
With
The first transfer buffer unit that is the transfer buffer unit provided in the first transfer control unit that is the transfer control unit that distributes the transfer data,
Temporarily storing the first transfer data that is the transfer data transferred by the first data transfer unit that is the data transfer unit to which the first transfer control unit corresponds;
The first buffer control unit, which is a buffer control unit provided in the first transfer control unit,
Based on the first transfer control information that is the transfer control information of the first data transfer unit, the first transfer data read from the first transfer buffer unit is transferred by the first data transfer unit. The first transfer data to be transferred and the first transfer data to be transferred by the other data transfer unit corresponding to the other transfer control unit are distributed and output,
The second transfer buffer unit which is the transfer buffer unit provided in the second transfer control unit which is the other transfer control unit to which the first transfer data is distributed,
Temporarily storing the second transfer data that is the transfer data transferred by the second data transfer unit that is the data transfer unit to which the second transfer control unit corresponds;
The second buffer control unit, which is a buffer control unit provided in the second transfer control unit,
When the first transfer data is not input from the first buffer control unit, the second transfer control information based on the second transfer control information that is the transfer control information of the second data transfer unit is used. Output the second transfer data read from the transfer buffer unit to the second data transfer unit,
When the first transfer data is input from the first buffer control unit, the first transfer data is output to the second data transfer unit based on the second transfer control information. ,
The data transfer state monitoring unit provided in the data transfer control device,
Based on a control signal when the first data transfer unit transfers the first transfer data, the transfer waiting time of the first transfer data in the first data transfer unit is monitored and monitored. A data transfer waiting time monitoring unit that outputs a timeout signal indicating that the transfer waiting time exceeds a predetermined time when the transfer waiting time of the first transfer data exceeds a predetermined time;
Based on a signal when the first data transfer unit transfers the first transfer data, the transfer history of the first transfer data in the first data transfer unit and the second data transfer unit , Based on a signal when transferring the first transfer data or the second transfer data, the transfer history of the first transfer data or the second transfer data in the second data transfer unit An access history collection unit to collect;
With
The access history collection unit is based on the collected transfer history of the first transfer data and the transfer history of the second transfer data when the data transfer waiting time monitoring unit outputs the timeout signal. Outputting transfer information for transferring the transfer data by the first transfer data and the second transfer data to the first buffer control unit;
The first buffer control unit includes:
Based on the transfer information output from the access history collection unit, the first transfer data is distributed and output to the first data transfer unit and the second buffer control unit,
A data processing apparatus.
前記データ転送制御装置を、前記データ転送部と、前記データ入力部との数に応じて数珠つなぎにし、
それぞれのデータ転送制御装置に備えたデータ転送状態監視部は、
対応する前記データ転送部のそれぞれの前記転送データの転送状態を監視して、当該データ転送制御装置に備えたそれぞれの前記転送制御部に前記転送制御情報を出力し、
それぞれのデータ転送制御装置に備えた少なくとも1つの前記転送制御部は、
前記転送制御情報に基づいて、対応する前記データ入力部から入力された前記転送データを、当該データ転送制御装置が対応する少なくとも1つの前記データ転送部に振り分ける、
ことを特徴とする請求項6に記載のデータ処理装置。
The data transfer control device is connected in a daisy chain according to the number of the data transfer unit and the data input unit,
The data transfer state monitoring unit provided in each data transfer control device is
Monitoring the transfer state of each transfer data of the corresponding data transfer unit, and outputting the transfer control information to each transfer control unit provided in the data transfer control device,
At least one of the transfer control units included in each data transfer control device,
Based on the transfer control information, the transfer data input from the corresponding data input unit is distributed to at least one data transfer unit corresponding to the data transfer control device,
The data processing apparatus according to claim 6.
JP2013264565A 2013-12-20 2013-12-20 Data transfer control device, data transfer control method, and data processing device Expired - Fee Related JP6234213B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013264565A JP6234213B2 (en) 2013-12-20 2013-12-20 Data transfer control device, data transfer control method, and data processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013264565A JP6234213B2 (en) 2013-12-20 2013-12-20 Data transfer control device, data transfer control method, and data processing device

Publications (2)

Publication Number Publication Date
JP2015121893A JP2015121893A (en) 2015-07-02
JP6234213B2 true JP6234213B2 (en) 2017-11-22

Family

ID=53533465

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013264565A Expired - Fee Related JP6234213B2 (en) 2013-12-20 2013-12-20 Data transfer control device, data transfer control method, and data processing device

Country Status (1)

Country Link
JP (1) JP6234213B2 (en)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3957696B2 (en) * 2004-03-17 2007-08-15 埼玉日本電気株式会社 IP network terminal device
JP4909839B2 (en) * 2007-08-20 2012-04-04 株式会社リコー Image processing apparatus and image processing method
JP5891877B2 (en) * 2012-03-19 2016-03-23 富士通株式会社 Relay device and relay method

Also Published As

Publication number Publication date
JP2015121893A (en) 2015-07-02

Similar Documents

Publication Publication Date Title
US10241721B2 (en) Image processing device and image processing method
US20060161694A1 (en) DMA apparatus
WO2014156282A1 (en) Bus master, bus system, and bus control method
JP5591022B2 (en) Bus bandwidth monitoring device and bus bandwidth monitoring method
JP2020109641A (en) Memory control device, memory control method, and image forming apparatus
JP4845522B2 (en) System bus control device, integrated circuit and data processing system
JP4416694B2 (en) Data transfer arbitration device and data transfer arbitration method
JP5993267B2 (en) Image processing device
JP5056668B2 (en) Data transfer apparatus and data transfer method
US20250298755A1 (en) Multichannel memory arbitration and interleaving scheme
JP6234213B2 (en) Data transfer control device, data transfer control method, and data processing device
JP5382113B2 (en) Storage control device and control method thereof
CN111033476B (en) Memory access device, image processing device and camera device
JP4846482B2 (en) Bus arbitration device
JP4839155B2 (en) Access arbitration device and access arbitration method
JP6210742B2 (en) Data processing device and data transfer control device
JP5623150B2 (en) Electronic device and control method thereof
JP4882116B2 (en) Buffer control device and buffer control method
JP2006189919A (en) Electronic device, control method, and computer program
JP2012043053A (en) Bus band monitoring device and bus band monitoring method
JP2007172112A (en) Memory controller
JP4335327B2 (en) Arbitration apparatus and method
JP2012108617A (en) Information processor
JP2015075778A (en) Load balancing control apparatus
JP2003228512A (en) Data transfer device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160801

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170529

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170606

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170801

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20170802

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170829

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170925

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20170926

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171024

R151 Written notification of patent or utility model registration

Ref document number: 6234213

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees