JP2009245005A - Data processor, data processing method and data processing program - Google Patents
Data processor, data processing method and data processing program Download PDFInfo
- Publication number
- JP2009245005A JP2009245005A JP2008088396A JP2008088396A JP2009245005A JP 2009245005 A JP2009245005 A JP 2009245005A JP 2008088396 A JP2008088396 A JP 2008088396A JP 2008088396 A JP2008088396 A JP 2008088396A JP 2009245005 A JP2009245005 A JP 2009245005A
- Authority
- JP
- Japan
- Prior art keywords
- data
- address information
- data processing
- address
- bus
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
Description
本件は、データ処理装置、データ処理方法およびデータ処理プログラムに関する。特に、入力データが動画などの大量のデータを処理するデータ処理装置、データ処理方法およびデータ処理プログラムに関する。 The present case relates to a data processing device, a data processing method, and a data processing program. In particular, the present invention relates to a data processing device, a data processing method, and a data processing program that process a large amount of data such as moving images as input data.
従来より、コンピュータシステムに使用されるデータの転送方式には、DMA(Direct Memory Access)と呼ばれる転送方式がある(特許文献1参照)。 Conventionally, a data transfer method used in a computer system includes a transfer method called DMA (Direct Memory Access) (see Patent Document 1).
そして、データの転送方式にDMAを使用し、外部装置(例えば、カメラ)に記憶されているデータをデータ処理(例えば、画像処理)するデータ処理装置がある。このデータ処理装置においてデータ処理を実行するCPUが有するSRAM(Static Random Access Memory)は、データのアクセス速度は速いが、データの記憶容量は、通常、外部装置に記憶されているデータのデータ量よりも小さい。その反対に、メインメモリに使用されているSDRAMやその他の外部装置に記憶されているメモリ等の記憶装置は、記憶データ量は多いが、SRAMに比べてアクセス速度が遅い。 There is a data processing device that uses DMA as a data transfer method and performs data processing (for example, image processing) on data stored in an external device (for example, a camera). The SRAM (Static Random Access Memory) of the CPU that executes data processing in this data processing device has a high data access speed, but the data storage capacity is usually larger than the data amount of data stored in the external device. Is also small. On the other hand, a storage device such as an SDRAM used for the main memory or a memory stored in another external device has a large amount of stored data but has a lower access speed than an SRAM.
そのため、データ処理装置は、外部装置に記憶されているデータを記憶することができる記憶容量を備えたSDRAM(Synchronous Dynamic Random Access Memory)などの記憶媒体に一時的に外部装置に記憶されているデータを転送し、格納する。 Therefore, the data processing device temporarily stores data stored in the external device in a storage medium such as an SDRAM (Synchronous Dynamic Random Access Memory) having a storage capacity capable of storing data stored in the external device. Transfer and store.
そして、データ処理装置は、CPUによるデータ処理の進捗状況に応じて、SDRAMからSRAMにデータを分割して転送し、データ処理を完了することが一般的である。 The data processing apparatus generally divides and transfers data from the SDRAM to the SRAM according to the progress of data processing by the CPU, and completes the data processing.
以下に、図8を用いて、データ処理装置によるDMAを使用したデータの転送方式について一例をあげて具体的に説明する。図8は、従来技術の概要を説明するための図である。このデータ処理装置は、図8の(A)に示すように、バスによってそれぞれ接続される入出力制御部11〜13を有する。 The data transfer method using DMA by the data processing apparatus will be specifically described below with reference to FIG. FIG. 8 is a diagram for explaining the outline of the prior art. As shown in FIG. 8A, the data processing apparatus includes input / output control units 11 to 13 connected by a bus.
ここで、入出力制御部11は、外部装置に接続され、入出力制御部12は、SDRAMに接続される。また、入出力制御部13は、データ処理を実行するデータ処理部と、SRAMとを有するCPUに接続される。
Here, the input / output control unit 11 is connected to an external device, and the input /
このような構成の下、まず、CPUは、外部装置に記憶されているデータをSDRAMに転送するために、DMAコントローラに対して、アドレス情報Aを送信する。 Under such a configuration, first, the CPU transmits address information A to the DMA controller in order to transfer data stored in the external device to the SDRAM.
ここで、アドレス情報Aとは、DMAコントローラに対して、外部装置に記憶されているデータ(図8の(B)の(1)参照)をSDRAMに転送する制御を実行させるための情報である。例えば、アドレス情報Aは、データの読み込み処理を実行するデバイスが入出力制御部11であることを示したデバイス情報と、外部装置においてデータが記憶されている記憶領域の開始地点を特定するアドレスと、データの書き込み処理を実行するデバイスが入出力制御部12であることを示したデバイス情報と、SDRAMにおいてデータを格納すべき記憶領域の開始地点を特定するアドレスと、外部装置からSDRAMに転送するデータの長さを示すアドレス長とを含んだ情報である。データの長さの代わりに、転送データの終わりを示す終了アドレスとしてもよい。
Here, the address information A is information for causing the DMA controller to execute control for transferring data stored in the external device (see (1) in FIG. 8B) to the SDRAM. . For example, the address information A includes device information indicating that the device that executes the data reading process is the input / output control unit 11, and an address that specifies the start point of the storage area where the data is stored in the external device. The device information indicating that the device that executes the data writing process is the input /
アドレス情報Aを受け付けたDMAコントローラは、バスを介してアドレス情報A−1を送出する。ここで、アドレス情報A−1とは、入出力制御部11、12に対して、アドレス情報Aによって特定されるデータの一部(図8の(B)の(2)参照)を外部装置からSDRAMに転送する制御を実行させるための情報である。
The DMA controller that has received the address information A sends out the address information A-1 via the bus. Here, the address information A-1 is a part of the data specified by the address information A (see (2) in FIG. 8B) from the external device to the input /
続いて、DMAコントローラは、入出力制御部11に対して、アドレス情報A−1によって特定されるデータをバス上に送出させる。そして、DMAコントローラは、入出力制御部12にバス上を流れるデータを取り込ませ、SDRAMに格納させる。
Subsequently, the DMA controller causes the input / output control unit 11 to send the data specified by the address information A-1 onto the bus. Then, the DMA controller causes the input /
同様にして、DMAコントローラは、バスを介してアドレス情報A−2、A−3を送出し、外部装置からSDRAMにデータを転送させることで、アドレス情報Aによって特定されるデータの転送を完了する。 Similarly, the DMA controller sends the address information A-2 and A-3 via the bus and transfers the data specified by the address information A by causing the external device to transfer the data to the SDRAM. .
アドレス情報Aによって特定されるデータの転送が完了した後、CPUは、SDRAMに記憶されているデータをSRAMに転送するために、DMAコントローラに対して、アドレス情報Bを送信する。 After the transfer of the data specified by the address information A is completed, the CPU transmits the address information B to the DMA controller in order to transfer the data stored in the SDRAM to the SRAM.
ここで、アドレス情報Bとは、DMAコントローラに対して、SDRAMに記憶されているデータの一部(図8の(C)の(1)参照)をSRAMに転送する制御を実行させるための情報である。例えば、アドレス情報Bは、データの読み込み処理を実行するデバイスが入出力制御部12であることを示したデバイス情報と、SDRAMにおいてデータが記憶されている記憶領域の開始地点を特定するアドレスと、データの書き込み処理を実行するデバイスが入出力制御部13であることを示したデバイス情報と、SRAMにおいてデータを格納すべき記憶領域の開始地点を特定するアドレスと、SDRAMからSRAMに転送するデータの長さを示すアドレス長とを含んだ情報である。
Here, the address information B is information for causing the DMA controller to execute control to transfer a part of the data stored in the SDRAM (see (1) in FIG. 8C) to the SRAM. It is. For example, the address information B includes device information indicating that the device that executes the data reading process is the input /
続いて、DMAコントローラは、バスを介してアドレス情報B−1を送出する。そして、DMAコントローラは、入出力制御部12に対して、アドレス情報B−1によって特定されるデータを読み込ませ、データをバス上に送出させる。そして、DMAコントローラは、バス上を流れるデータを入出力制御部12に取り込ませ、SRAMに格納させる。
Subsequently, the DMA controller sends out address information B-1 via the bus. Then, the DMA controller causes the input /
その後、DMAコントローラは、CPUによるデータ処理の進捗状況に応じて、バスを介してアドレス情報B−2、B−3を送出し、SDRAMからSRAMにデータを分割して転送させることで、アドレス情報Bによって特定されるデータの転送を完了する。 Thereafter, the DMA controller sends address information B-2 and B-3 via the bus according to the progress of data processing by the CPU, and divides and transfers the data from the SDRAM to the SRAM. Complete the transfer of the data specified by B.
ところで、上記した従来の技術は、バスの帯域を圧迫するという課題があった。すなわち、従来のデータ処理装置は、外部装置に記憶されているデータをSDRAMに転送するとき、および、SDRAMからSRAMにデータを分割して転送するときの2回のシチュエーションにおいてバス上に同一のデータを送出させるため、バスの帯域を圧迫するという問題点があった。 By the way, the above-described conventional technique has a problem of pressing the bandwidth of the bus. That is, the conventional data processing apparatus uses the same data on the bus in two situations when transferring data stored in the external device to the SDRAM and when dividing and transferring the data from the SDRAM to the SRAM. There is a problem of compressing the bus bandwidth in order to send out the message.
そこで、このデータ処理装置、データ転送方法およびデータ処理プログラムは、上述した従来技術の課題を解決するためになされたものであり、データの転送によるバスの帯域の圧迫を軽減することが可能なデータ処理装置、データ転送方法およびデータ処理プログラムを提供することを目的とする。 Therefore, the data processing apparatus, the data transfer method, and the data processing program are made to solve the above-described problems of the prior art, and are data that can reduce the compression of the bus bandwidth due to the data transfer. It is an object to provide a processing device, a data transfer method, and a data processing program.
上述した課題を解決し、目的を達成するため、開示のデータ処理装置は、データを処理するデータ処理装置であって、記憶装置からデータを入力して、入力したデータを一時的に記憶するデータ記憶部と、取り込むデータを特定するアドレス情報を記憶しているアドレス情報記憶部と、読み込んだデータをデータ処理し、次に必要なデータのアドレス情報を前記アドレス記憶部に設定するデータ処理部と、前記入力データが、バスを介して前記データ記憶部に対して転送されているときに、前記バスの上を流れるデータを監視して、前記アドレス情報に相当するデータが流れると、当該データを前記データ処理部に取り込むデータ取込手段を備えることを要する。 In order to solve the above-described problems and achieve the object, the disclosed data processing apparatus is a data processing apparatus that processes data, and is a data that inputs data from a storage device and temporarily stores the input data A storage unit; an address information storage unit that stores address information that identifies data to be captured; a data processing unit that performs data processing on the read data and sets address information of the next necessary data in the address storage unit; When the input data is being transferred to the data storage unit via the bus, the data flowing on the bus is monitored, and when the data corresponding to the address information flows, the data is It is necessary to provide data fetching means for fetching into the data processing unit.
また、開示のデータ転送方法は、データ処理装置によってデータを処理するデータ処理方法であって、記憶装置からデータを入力して、入力したデータを一時的に記憶するデータ記憶部と、取り込むデータを特定するアドレス情報を記憶しているアドレス情報記憶部と、読み込んだデータをデータ処理し、次に必要なデータのアドレス情報を前記アドレス記憶部に設定するデータ処理部とを有し、前記入力データが、バスを介して前記データ記憶部に対して転送されているときに、前記バスの上を流れるデータを監視して、前記アドレス情報に相当するデータが流れると、当該データを前記データ処理部に取り込むデータ取込ステップを含むことを要する。 Further, the disclosed data transfer method is a data processing method for processing data by a data processing device, wherein data is input from a storage device and the input data is temporarily stored; An address information storage unit for storing address information to be identified; a data processing unit for processing the read data and then setting address information of necessary data in the address storage unit; and the input data However, when data is transferred to the data storage unit via the bus, the data flowing on the bus is monitored, and when data corresponding to the address information flows, the data is transferred to the data processing unit. It is necessary to include a data fetching step to be fetched.
また、開示のデータ転送プログラムは、データ処理装置としてのコンピュータにデータを処理させるデータ処理プログラムであって、記憶装置からデータを入力して、入力したデータを一時的に記憶するデータ記憶部と、取り込むデータを特定するアドレス情報を記憶しているアドレス情報記憶部とを有し、読み込んだデータをデータ処理し、次に必要なデータのアドレス情報を前記アドレス記憶部に設定するデータ処理手順と、前記入力データが、バスを介して前記データ記憶部に対して転送されているときに、前記バスの上を流れるデータを監視して、前記アドレス情報に相当するデータが流れると、当該データを前記データ処理手順によって参照される記憶部に取り込むデータ取込手順をデータ処理装置としてのコンピュータに実行させることを要する。 Further, the disclosed data transfer program is a data processing program for causing a computer as a data processing device to process data, inputs data from a storage device, and temporarily stores the input data; An address information storage unit that stores address information that identifies data to be captured, data processing the read data, and then setting the address information of the necessary data in the address storage unit; When the input data is transferred to the data storage unit via the bus, the data flowing on the bus is monitored, and when the data corresponding to the address information flows, the data is The data acquisition procedure to be taken into the storage unit referenced by the data processing procedure is executed by the computer as the data processing device. It requires Rukoto.
開示のデータ処理装置、データ転送方法およびデータ処理プログラムによれば、データの転送によるバスの帯域の圧迫を軽減することが可能である。 According to the disclosed data processing device, data transfer method, and data processing program, it is possible to reduce the compression of the bus bandwidth due to the data transfer.
以下に添付図面を参照して、この発明に係るデータ処理装置、データ転送方法およびデータ処理プログラムの実施例を詳細に説明する。なお、以下では、データの転送方式としてDMAを使用するデータ処理装置(例えば、画像処理装置)に本発明を適用した場合を実施例として説明する。 Exemplary embodiments of a data processing device, a data transfer method, and a data processing program according to the present invention will be explained below in detail with reference to the accompanying drawings. Hereinafter, a case where the present invention is applied to a data processing apparatus (for example, an image processing apparatus) that uses DMA as a data transfer method will be described as an embodiment.
以下の実施例1では、実施例1に係るデータ処理装置の概要および特徴、データ処理装置の構成、データ処理装置の処理の流れを順に説明し、最後に実施例1の効果を説明する。 In the following first embodiment, the outline and features of the data processing apparatus according to the first embodiment, the configuration of the data processing apparatus, the processing flow of the data processing apparatus will be described in order, and finally the effects of the first embodiment will be described.
[実施例1に係るデータ処理装置の概要および特徴]
まず最初に、図1を用いて実施例1に係るデータ処理装置の概要および特徴を説明する。図1は、実施例1に係るデータ処理装置の概要および特徴を説明するための図である。
[Outline and Features of Data Processing Device According to Embodiment 1]
First, the outline and features of the data processing apparatus according to the first embodiment will be described with reference to FIG. FIG. 1 is a diagram for explaining the outline and features of the data processing apparatus according to the first embodiment.
実施例1に係るデータ処理装置は、記憶装置からデータを入力して、入力したデータを一時的に記憶するデータ記憶部と、取り込むデータを特定するアドレス情報を記憶しているアドレス情報記憶部と、読み込んだデータをデータ処理し、次に必要なデータのアドレス情報をアドレス記憶部に設定するデータ処理部とを有する。 The data processing apparatus according to the first embodiment includes a data storage unit that inputs data from a storage device and temporarily stores the input data, and an address information storage unit that stores address information that specifies data to be captured. A data processing unit that processes the read data and sets address information of the next necessary data in the address storage unit.
このような構成の下、実施例1に係るデータ処理装置は、データの転送によるバスの帯域の圧迫を軽減することを主たる特徴とする。 Under such a configuration, the data processing apparatus according to the first embodiment is mainly characterized by reducing the compression of the bus bandwidth due to the data transfer.
すなわち、実施例1に係るデータ処理装置は、図1に示すように、入力データが、バスを介してデータ記憶部に対して転送されているときに、バスの上を流れるデータを監視して、アドレス情報に相当するデータが流れると、このデータをデータ処理部に取り込む。 That is, as shown in FIG. 1, the data processing apparatus according to the first embodiment monitors data flowing over the bus when input data is being transferred to the data storage unit via the bus. When data corresponding to the address information flows, this data is taken into the data processing unit.
このようなことから、実施例1に係るデータ処理装置は、上記した主たる特徴のごとく、データの転送によるバスの帯域の圧迫を軽減することが可能である。 For this reason, the data processing apparatus according to the first embodiment can reduce the compression of the bus bandwidth due to the data transfer as described above.
[データ処理装置の構成]
次に、図2、図3を用いて、図1に示したデータ処理装置の構成を説明する。図2は、データ処理装置の構成を示すブロック図である。図3は、実施例1のシチュエーションを説明するための図である。図2に示すように、このデータ処理装置10は、入出力制御部11〜13と、データ記憶部14と、CPU15と、DMAコントローラ16と、バス監視部17とを有する。
[Data processor configuration]
Next, the configuration of the data processing apparatus shown in FIG. 1 will be described with reference to FIGS. FIG. 2 is a block diagram showing the configuration of the data processing apparatus. FIG. 3 is a diagram for explaining the situation of the first embodiment. As shown in FIG. 2, the
ここで、入出力制御部11〜13、DMAコントローラ16およびバス監視部17は、バス18を介してそれぞれ接続される。また、入出力制御部11は、図示しない記憶装置(例えば、データ処理装置10の外部に設置された外部装置やデータ処理装置10が有する内蔵ハードディスク)に接続され、入出力制御部12は、データ記憶部14に接続され、入出力制御部13およびバス監視部17は、CPU15に接続される。
Here, the input / output control units 11 to 13, the
そして、特に本発明に密接に関連するものとしては、CPU15は、メモリ15aと、データ処理部15bとを有し、バス監視部17は、レジスタ17aと、データ取込部17bとを有する。
As particularly closely related to the present invention, the
なお、請求の範囲に記載の「データ記憶部」は、例えば、データ記憶部14に対応し、「データ処理部」は、例えば、CPU15に対応し、「データ取込手段」は、例えば、バス監視部17に対応し、「アドレス情報記憶部」は、レジスタ17aに対応する。
The “data storage unit” described in the claims corresponds to, for example, the
このような構成の下、以下では、アドレス情報Aによって特定されるデータ(図3の(1)参照)を外部装置からデータ記憶部14に転送する際に、アドレス情報Aによって特定されるデータの中で、アドレス情報A−1によって特定される一部のデータ(図3の(2)参照)をメモリ15aに格納するシチュエーションについて詳細に説明する。
Under such a configuration, in the following, when data specified by the address information A (see (1) in FIG. 3) is transferred from the external device to the
ここで、アドレス情報Aやアドレス情報A−1は、データの読み込み処理を実行するデバイスが入出力制御部11であることを示したデバイス情報と、記憶装置においてデータが記憶されている記憶領域の開始地点を特定するアドレスと、データの書き込み処理を実行するデバイスが入出力制御部12であることを示したデバイス情報と、データ記憶部14においてデータを格納すべき記憶領域の開始地点を特定するアドレスと、記憶装置からデータ記憶部14に転送するデータの長さを示すアドレス長とを含んだ情報である。また、アドレス情報A−1は、アドレス情報Aによって特定されるデータの一部を特定するための情報である。
Here, the address information A and the address information A-1 are the device information indicating that the device that executes the data reading process is the input / output control unit 11, and the storage area where the data is stored in the storage device. An address for specifying the start point, device information indicating that the device that executes the data writing process is the input /
なお、アドレス情報A−1の構成は、本発明を特定するものではなく、入力元の開始アドレスと、CPU15の内部にあるメモリ15aの出力先アドレスと、取り出すデータの長さを表すアドレス長を含んだ情報であれば適用することができる。さらに、アドレス情報A−1は、バスを介してデータ記憶部に対して転送されるデータの長さが一定である場合には、アドレス長を含まなくてもよい。
Note that the configuration of the address information A-1 does not specify the present invention, and includes an input source start address, an output destination address of the
図2に示した、入出力制御部11〜13は、ポート、アダプタ、VIN(Video Input)などを有し、DMAコントローラ16から制御を受けて、それぞれに接続されている記憶部に対するデータの入出力を制御する。
The input / output control units 11 to 13 shown in FIG. 2 have ports, adapters, VIN (Video Input), and the like. Under the control of the
例えば、入出力制御部11は、バス18上を流れるアドレス情報A−1を含んだ読み込み指示を受け付けると、処理エラーなどの障害が発生していない場合を除いて、DMAコントローラ16に対してデータの読込準備が完了した旨を示したRDY信号を返信する。そして、入出力制御部11は、アドレス情報A−1によって特定されるデータを記憶装置の記憶部から読み込み、バス18上に送出する。
For example, when the input / output control unit 11 receives a read instruction including the address information A-1 flowing on the
また、入出力制御部12は、バス18上を流れるアドレス情報A−1を含んだ書き込み指示を受け付けると、処理エラーなどの障害が発生していない場合を除いて、DMAコントローラ16に対してデータの書込準備が完了した旨を示したRDY信号を返信する。そして、入出力制御部12は、バス18上を流れるデータを取り込み、データ記憶部14にデータを格納する。
When the input /
データ記憶部14は、記憶装置からデータを入力して、入力したデータを一時的に記憶する。具体的には、データ記憶部14は、メモリ15aに比べ転送速度が遅いメインメモリ(例えば、SDRAM)に相当し、入出力制御部12によって取り込まれたデータを記憶する。
The
メモリ15aは、CPU15による各種処理に必要なデータおよびプログラムを格納する。具体的には、メモリ15aは、転送速度が高速のキャッシュメモリ(例えば、SRAM(Static Random Access Memory))に相当し、データ処理の処理手順を規定したデータ処理プログラムを記憶するとともに、データを記憶する。
The
データ処理部15bは、各種の処理手順などを規定したプログラムによってデータをデータ処理する。具体的には、データ処理部15bは、CPUコアチップに相当し、データ処理開始指示を受け付けると、レジスタ17aにアドレス情報A−1を格納する。続いて、データ処理部15bは、DMAコントローラ16に対してアドレス情報Aを送信し、データ転送処理を依頼する。そして、データ処理部15bは、メモリ15aに記憶されたデータをデータ処理する。
The
DMAコントローラ16は、バス18の上を流れるデータを制御する。具体的には、DMAコントローラ16は、データ処理部15bからアドレス情報Aを含んだデータ転送処理の依頼を受け付けると、アドレス情報A−1を含んだ入出力制御部12宛ての書き込み指示をバス18上に送出する。続いて、DMAコントローラ16は、入出力制御部12からRDY信号を受け付けると、アドレス情報A−1を含んだ入出力制御部11宛ての読み込み指示をバス18上に送出する。
The
続いて、DMAコントローラ16は、入出力制御部11からRDY信号を受け付けると、入出力制御部11に対して記憶装置からデータを読み込むよう制御し、入出力制御部12に対してバス18上を流れるデータを取り込み、データ記憶部14にデータを格納するよう制御する。
Subsequently, when the
レジスタ17aは、取り込むデータを特定するアドレス情報を記憶する。具体的には、レジスタ17aは、アドレス情報A−1を記憶する。
The
データ取込部17bは、入力データが、バスを介してデータ記憶部14に対して転送されているときに、バス18の上を流れるデータを監視して、アドレス情報に相当するデータが流れると、このデータをCPU15に取り込む。
When the input data is being transferred to the
具体的には、データ取込部17bは、バス18上を流れるアドレス情報A−1を含んだ入出力制御部12宛ての書き込み指示を受け付けると、レジスタ17aに記憶されているアドレス情報に一致することを確認する。続いて、データ取込部17bは、バス18の上を流れるデータを監視して、バス18上を流れるデータを取り込み、データをメモリ15aに格納する。
Specifically, when receiving a write instruction addressed to the input /
言い換えると、データ取込部17bは、DMAコントローラ16からバス18に送出した入出力制御部12宛ての書き込み指示に含まれているアドレス情報が、レジスタ17aに記憶されているアドレス情報に一致することを確認する。そして、データ取込部17bは、この書き込み指示に起因してバス18に送出した入出力制御部12宛てのデータをメモリ15aに格納する。
In other words, the
[データ処理装置による処理]
次に、図4を用いて、データ処理装置10による処理を説明する。図4は、データ処理装置による処理の流れを示すフローチャート図である。
[Processing by data processing device]
Next, processing performed by the
図4に示すように、データ処理開始指示を受け付けると(ステップS1001:Yes)、データ処理装置10は、レジスタ17aにアドレス情報を格納する(ステップS1002)。
As shown in FIG. 4, when a data processing start instruction is accepted (step S1001: Yes), the
続いて、データ処理装置10は、入力データが、バスを介してデータ記憶部14に対して転送されているときに、バス18の上を流れるデータを監視して、アドレス情報に相当するデータが流れると、このデータをCPU15に取り込む(ステップS1003)。そして、データ処理装置10は、データをデータ処理して(ステップS1004)、処理を終了する。
Subsequently, the
[実施例1の効果]
上記したように、実施例1によれば、データの転送によるバスの帯域の圧迫を軽減することが可能である。例えば、実施例1によれば、記憶装置からデータ記憶部14に転送されたデータの中で、メモリ15aに取り込まれなかった残りのデータをデータ処理部15bによるデータ処理の進捗状況に応じて、データ記憶部14からメモリ15aに転送すればよいので、データの転送によるバスの帯域の圧迫を軽減することが可能である。
[Effect of Example 1]
As described above, according to the first embodiment, it is possible to reduce the compression of the bus bandwidth due to the data transfer. For example, according to the first embodiment, in the data transferred from the storage device to the
また、実施例1によれば、データを転送する処理手順を削減することも可能である。例えば、実施例1によれば、記憶装置に記憶されているデータのデータ量が、メモリ15aのデータの記憶容量よりも小さい場合には、データ処理部15bデータ処理の進捗状況に応じて、データ記憶部14からメモリ15aに転送する処理手順を削減することができる。
Further, according to the first embodiment, it is possible to reduce the processing procedure for transferring data. For example, according to the first embodiment, when the data amount of data stored in the storage device is smaller than the data storage capacity of the
また、実施例1によれば、DMAコントローラ16によるデータの流れの制御方法を変更する必要がないので、実装が容易である。
Further, according to the first embodiment, it is not necessary to change the data flow control method by the
ところで、実施例1では、レジスタ17aと、データ取込部17bとをバス監視部17が有し、バス監視部17のデータ取込部17bがバス18の上を流れるデータを監視して、アドレス情報に相当するデータをCPU15に取り込む場合を説明した。
By the way, in the first embodiment, the
しかしながら、アドレス情報に相当するデータを優先的に取り出し、CPU15に転送する処理をDMAコントローラ16が実行するようにしても本発明を実現可能である。そこで、実施例2では、DMAコントローラ16がアドレス情報に相当するデータを優先的に取り出し、CPU15に転送する場合を説明する。なお、以下の実施例2では、実施例2に係るデータ処理装置の構成と、実施例2の効果を説明する。
However, the present invention can be realized even if the
[実施例2に係るデータ処理装置の構成]
実施例2に係るデータ処理装置10の構成は、図5に示すように、バス監視部17のかりに、DMAコントローラ16にレジスタ16aと、データ取込部16bとを備えることの他は、実施例1に係るデータ処理装置10と、以下に説明する点が異なる。なお、図5は、実施例2に係るデータ処理装置の構成を示すブロック図である。
[Configuration of Data Processing Apparatus According to Second Embodiment]
As shown in FIG. 5, the configuration of the
すなわち、入出力制御部13は、バス18上を流れるアドレス情報A−1を含んだ書き込み指示を受け付けると、処理エラーなどの障害が発生していない場合を除いて、DMAコントローラ16に対してデータの書込準備が完了した旨を示したRDY信号を返信する。そして、入出力制御部12は、バス18上を流れるデータを取り込み、データ記憶部14にデータを格納する。
That is, when the input /
データ処理部15bは、データ処理開始指示を受け付けると、レジスタ16aにアドレス情報A−1を格納する。また、レジスタ16aは、アドレス情報A−1を記憶する。
When receiving the data processing start instruction, the
データ取込部16bは、アドレス情報に基づいてバスの上を流れる監視し、データを優先的に取り出し、所定のアドレスに転送する。具体的には、データ取込部16bは、レジスタ16aに記憶されているアドレス情報A−1を含んだ入出力制御部13宛ての書き込み指示をバス18上に送出する。
The data take-in
[実施例2の効果]
上記したように、実施例2によれば、アドレス情報に相当するデータを優先的に取り出し、CPU15に転送する処理をDMAコントローラ16が実行して、データの転送によるバスの帯域の圧迫を軽減することが可能である。
[Effect of Example 2]
As described above, according to the second embodiment, the
また、実施例2によれば、DMAコントローラ16による処理を変更することで、データの転送によるバスの帯域の圧迫を軽減することができるので、実装が容易である。
Further, according to the second embodiment, by changing the processing by the
さて、本発明は、これまで説明した実施例1および2以外の種々の異なる形態にて実施されてよいものである。そこで、以下では、実施例3として、他の実施例を説明する。 The present invention may be implemented in various different forms other than the first and second embodiments described so far. Therefore, another embodiment will be described below as a third embodiment.
例えば、実施例1および2では、記憶装置から入力データを、バス18を介してデータ記憶部14に対して転送し、アドレス情報に基づいて監視されたデータをCPU15に転送する場合を説明した。しかしながら、バス18の上を流れるデータの転送先は、データ記憶部14に限定されるものではない。
For example, in the first and second embodiments, a case has been described in which input data is transferred from the storage device to the
例えば、データの記憶を行わず、アドレスだけ割り当てられたダミーメモリをさらに備えさせ、DMAコンローラ16がこのダミーメモリ対してデータを転送し、アドレス情報に基づいて、バス18の上を流れるデータが取り出すデータか否か監視し、取り出し対象のデータを優先的に取り出して、CPU15に転送するようにしても本発明に適用が可能である。
For example, a dummy memory to which only an address is assigned is provided without storing data, and the
また、実施例1では、CPU15と、バス監視部17とを個別に有する場合を説明したが、図6に示すように、バス監視部17をCPU15に含ませるようにしてもよい。なお、図6は、実施例3に係るデータ処理装置の構成を示すブロック図である。
In the first embodiment, the case where the
また、データをデータ処理するデバイスは、CPU15に限定されるものではない。例えば、FPGA(Field Programmable Gate Array)にデータ処理機能を備えさせ、データ記憶部14に記憶装置から読み込んだデータを格納する際に、このデータの中から一部または全部のデータをこのFPGAが有する記憶部に取り込むようにしてもよい。
A device for processing data is not limited to the
また、記憶装置から入力される入力データが動画データであり、CPU15が動画の物体検出または追跡処理を行うものとする。ここで、CPU15は、検出又は追跡する物体を検出して、動画データの中から、優先的に取り出す物体の次の位置を推定し、優先的に取り出す動画データの部分のアドレス情報を求め、アドレス情報として、入力元の開始アドレスと、CPU15内部にある高速メモリの出力先アドレスと、取り出すデータの長さを表すアドレス長をレジスタ17a(もしくは、16a)に設定する。また、DMAコントローラ16は、記憶装置から入力される入力データから、バス18を介して送出されるデータの中からアドレス情報に基づき、該当するデータを優先的に高速メモリ(メモリ15aなど)に転送するようにする。このようにすることで、検出又は追跡する物体のデータを優先的に高速メモリに転送することも可能である。
In addition, it is assumed that input data input from the storage device is moving image data, and the
また、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。 Further, the processing procedures, control procedures, specific names, information including various data and parameters shown in the above-mentioned documents and drawings can be arbitrarily changed unless otherwise specified.
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、図2に示した、CPU15を複数備えることができる。また、図2に示した、入出力制御部13と、バス監視部17とを統合して構成することができる。
Further, each component of each illustrated apparatus is functionally conceptual, and does not necessarily need to be physically configured as illustrated. In other words, the specific form of distribution / integration of each device is not limited to that shown in the figure, and all or a part thereof may be functionally or physically distributed or arbitrarily distributed in arbitrary units according to various loads or usage conditions. Can be integrated and configured. For example, a plurality of
さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、CPU15とは別のCPU(図示しない)および当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
Furthermore, all or a part of each processing function performed in each device is realized by a CPU (not shown) different from the
ところで、本発明はあらかじめ用意されたプログラムをデータ処理装置10としてのコンピュータで実行することによって実現するようにしてもよい。そこで、以下では、図7を用いて、上記の実施例に示したデータ処理装置10と同様の機能を有するデータ処理プログラムを実行するコンピュータを一例として説明する。図7は、データ処理プログラムを実行するコンピュータを示す図である。
By the way, the present invention may be realized by executing a program prepared in advance by a computer as the
同図に示すように、データ処理装置10としてのコンピュータ110は、入出力制御部111〜113、ROM120、CPU130、バス監視部140、データ記憶部150、DMAコントローラ160をバス170などで接続して構成される。
As shown in the figure, the
ROM120には、上記の実施例1に示したデータ処理装置10と同様の機能を発揮するデータ処理プログラム、つまり、図7に示すようにデータ処理プログラム121と、データ取込プログラム122とが、あらかじめ記憶されている。なお、データ処理プログラム121と、データ取込プログラム122とについては、図2に示したデータ処理装置10の各構成要素と同様、適宜統合または、分散してもよい。
In the
そして、CPU130がデータ処理プログラム121をROM120から読み出し、バス監視部140がデータ取込プログラム122をROM120から読み出して実行することで、図7に示すように、データ処理プログラム121は、データ処理プロセス131として、また、データ取込プログラム122は、データ取込プロセス141として機能するようになる。なお、データ処理プロセス131は、図2に示した、データ処理部15bに対応し、データ取込プロセス141は、図2に示した、データ取込部17bに対応する。
Then, the
なお、上記したデータ処理プログラム121と、データ取込プログラム122とについては、必ずしも最初からROM120に記憶させておく必要はなく、例えば、コンピュータ110に挿入されるフレキシブルディスク(FD)、CD−ROM、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」、またはコンピュータ110の内外に備えられるHDDなどの「固定用の物理媒体」、さらには公衆回線、インターネット、LAN、WANなどを介してコンピュータ110に接続される「他のコンピュータ(またはサーバ)」などに各プログラムを記憶させておき、コンピュータ110がこれから各プログラムを読み出して実行するようにしてもよい。
Note that the
なお、本実施例で説明したデータ処理方法は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。このプログラムは、インターネットなどのネットワークを介して配布することができる。また、このプログラムは、ハードディスク、フレキシブルディスク(FD)、CD−ROM、MO、DVDなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行することもできる。 The data processing method described in the present embodiment can be realized by executing a program prepared in advance on a computer such as a personal computer or a workstation. This program can be distributed via a network such as the Internet. The program can also be executed by being recorded on a computer-readable recording medium such as a hard disk, a flexible disk (FD), a CD-ROM, an MO, and a DVD and being read from the recording medium by the computer.
10 データ処理装置
11〜13 入出力制御部
14 データ記憶部
15 CPU
15a メモリ
15b データ処理部
16 DMAコントローラ
16a レジスタ
16b データ取込部
17 バス監視部
17a レジスタ
17b データ取込部
18 バス
110 コンピュータ
111〜113 入出力制御部
120 ROM(Read Only Memory)
121 データ処理プログラム
122 データ取込プログラム
130 CPU(Central Processing Unit)
131 データ処理プロセス
140 バス監視部
141 データ取込プロセス
150 データ記憶部
160 DMAコントローラ
170 バス
DESCRIPTION OF
121
131
Claims (7)
記憶装置からデータを入力して、入力したデータを一時的に記憶するデータ記憶部と、
取り込むデータを特定するアドレス情報を記憶しているアドレス情報記憶部と、
読み込んだデータをデータ処理し、次に必要なデータのアドレス情報を前記アドレス記憶部に設定するデータ処理部と、
前記入力データが、バスを介して前記データ記憶部に対して転送されているときに、前記バスの上を流れるデータを監視して、前記アドレス情報に相当するデータが流れると、当該データを前記データ処理部に取り込むデータ取込手段を備えたことを特徴とするデータ処理装置。 A data processing device for processing data,
A data storage unit for inputting data from a storage device and temporarily storing the input data;
An address information storage unit storing address information for specifying data to be captured;
A data processing unit that processes the read data and sets address information of the next necessary data in the address storage unit;
When the input data is transferred to the data storage unit via the bus, the data flowing on the bus is monitored, and when the data corresponding to the address information flows, the data is A data processing apparatus comprising data fetching means for fetching into a data processing unit.
入力したデータを前記一時的に記憶するデータ記憶部はメインメモリであり、
前記記憶装置から入力データを、前記バスを介して前記データ記憶部に対して転送し、前記アドレス情報に基づいて監視し、該当データを優先的に取り出し、所定のアドレスに転送するのは、DMAコンローラであることを特徴とする請求項1に記載のデータ処理装置。 The data processing device includes a CPU, a cache memory having a high transfer speed, a main memory having a transfer speed slower than the cache memory, and a DMA controller for transferring data from the storage device to the main memory,
The data storage unit for temporarily storing the input data is a main memory,
Transferring input data from the storage device to the data storage unit via the bus, monitoring based on the address information, preferentially retrieving the corresponding data, and transferring to a predetermined address is a DMA. The data processing apparatus according to claim 1, wherein the data processing apparatus is a controller.
前記所定のアドレスに応じて、前記記憶装置から入力データを、前記バスを介して前記データ記憶部または前記ダミー記憶部に転送し、前記アドレス情報に基づいて取り出すデータか否か監視し、取り出し対象のデータを優先的に取り出し、前記アドレス情報に応じて前記メインメモリまたは前記ダミーアドレスに転送するのは、DMAコンローラであることを特徴とする請求項1に記載のデータ処理装置。 The data processing apparatus further includes a dummy memory assigned only an address without storing data,
According to the predetermined address, input data from the storage device is transferred to the data storage unit or the dummy storage unit via the bus, and monitored whether the data is extracted based on the address information. 2. A data processing apparatus according to claim 1, wherein the data controller is preferentially fetched and transferred to the main memory or the dummy address in accordance with the address information by a DMA controller.
前記DMAコントローラは、前記記憶装置から入力データを、前記バスを介して前記アドレス長の長さのデータを前記高速メモリに転送することを特徴とする請求項2または請求項3に記載のデータ処理装置。 The address information includes an input source start address, an output destination address of a high-speed memory in the CPU, and an address length indicating the length of data to be extracted,
4. The data processing according to claim 2, wherein the DMA controller transfers input data from the storage device to the high-speed memory through the bus and data having the length of the address length. 5. apparatus.
前記データ処理部は、前記検出又は追跡する物体を検出して、動画データの中から、優先的に取り出す前記該物体の次の位置を推定し、優先的に取り出す動画データの部分のアドレス情報を求め、アドレス情報として、入力元の開始アドレスと、CPU内部にある高速メモリの出力先アドレスと、取り出すデータの長さを表すアドレス長を前記アドレス情報記憶部に設定し、
前記DMAコントローラは、前記記憶装置の入力データから、前記バスを介して送出されるデータの中から前記アドレス情報に基づき、該当するデータを優先的に前記高速メモリに転送することを特徴とする請求項2乃至請求項4に記載のデータ処理装置。 The input data is moving image data, and the data processing unit performs moving object detection or tracking processing,
The data processing unit detects the object to be detected or tracked, estimates the next position of the object to be preferentially extracted from the moving image data, and obtains address information of a portion of the moving image data to be preferentially extracted. As the address information, the input source start address, the output destination address of the high-speed memory in the CPU, and the address length indicating the length of the data to be extracted are set in the address information storage unit,
The DMA controller preferentially transfers corresponding data from the input data of the storage device to the high-speed memory based on the address information from among data transmitted via the bus. The data processing device according to any one of claims 2 to 4.
記憶装置からデータを入力して、入力したデータを一時的に記憶するデータ記憶部と、
取り込むデータを特定するアドレス情報を記憶しているアドレス情報記憶部と、
読み込んだデータをデータ処理し、次に必要なデータのアドレス情報を前記アドレス記憶部に設定するデータ処理部とを有し、
前記入力データが、バスを介して前記データ記憶部に対して転送されているときに、前記バスの上を流れるデータを監視して、前記アドレス情報に相当するデータが流れると、当該データを前記データ処理部に取り込むデータ取込ステップを含んだことを特徴とするデータ処理方法。 A data processing method for processing data by a data processing device,
A data storage unit for inputting data from a storage device and temporarily storing the input data;
An address information storage unit storing address information for specifying data to be captured;
A data processing unit that processes the read data and then sets address information of the necessary data in the address storage unit;
When the input data is transferred to the data storage unit via the bus, the data flowing on the bus is monitored, and when the data corresponding to the address information flows, the data is A data processing method comprising a data fetching step for fetching into a data processing unit.
記憶装置からデータを入力して、入力したデータを一時的に記憶するデータ記憶部と、
取り込むデータを特定するアドレス情報を記憶しているアドレス情報記憶部とを有し、
読み込んだデータをデータ処理し、次に必要なデータのアドレス情報を前記アドレス記憶部に設定するデータ処理手順と、
前記入力データが、バスを介して前記データ記憶部に対して転送されているときに、前記バスの上を流れるデータを監視して、前記アドレス情報に相当するデータが流れると、当該データを前記データ処理手順によって参照される記憶部に取り込むデータ取込手順と、
データ処理装置としてのコンピュータに実行させることを特徴とするデータ処理プログラム。 A data processing program for causing a computer as a data processing device to process data,
A data storage unit for inputting data from a storage device and temporarily storing the input data;
An address information storage unit storing address information for specifying data to be captured;
A data processing procedure for processing the read data and then setting the address information of the necessary data in the address storage unit;
When the input data is transferred to the data storage unit via the bus, the data flowing on the bus is monitored, and when the data corresponding to the address information flows, the data is A data acquisition procedure to be taken into the storage unit referred to by the data processing procedure;
A data processing program executed by a computer as a data processing apparatus.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008088396A JP2009245005A (en) | 2008-03-28 | 2008-03-28 | Data processor, data processing method and data processing program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008088396A JP2009245005A (en) | 2008-03-28 | 2008-03-28 | Data processor, data processing method and data processing program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009245005A true JP2009245005A (en) | 2009-10-22 |
Family
ID=41306846
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008088396A Pending JP2009245005A (en) | 2008-03-28 | 2008-03-28 | Data processor, data processing method and data processing program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009245005A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10701369B2 (en) | 2017-09-19 | 2020-06-30 | Kabushiki Kaisha Toshiba | Data transfer circuit and data transfer method |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63173152A (en) * | 1987-01-13 | 1988-07-16 | Matsushita Electric Ind Co Ltd | Arithmetic unit |
JPH0830566A (en) * | 1994-07-20 | 1996-02-02 | Fujitsu Ltd | Communication control equipment loaded into processor element in parallel computer |
JP2001339584A (en) * | 2000-05-26 | 2001-12-07 | Murata Mach Ltd | Communication terminal |
JP2006040120A (en) * | 2004-07-29 | 2006-02-09 | Canon Inc | Image processing function memory |
-
2008
- 2008-03-28 JP JP2008088396A patent/JP2009245005A/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63173152A (en) * | 1987-01-13 | 1988-07-16 | Matsushita Electric Ind Co Ltd | Arithmetic unit |
JPH0830566A (en) * | 1994-07-20 | 1996-02-02 | Fujitsu Ltd | Communication control equipment loaded into processor element in parallel computer |
JP2001339584A (en) * | 2000-05-26 | 2001-12-07 | Murata Mach Ltd | Communication terminal |
JP2006040120A (en) * | 2004-07-29 | 2006-02-09 | Canon Inc | Image processing function memory |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10701369B2 (en) | 2017-09-19 | 2020-06-30 | Kabushiki Kaisha Toshiba | Data transfer circuit and data transfer method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI335512B (en) | Technique for using memory attributes | |
JP4322259B2 (en) | Method and apparatus for synchronizing data access to local memory in a multiprocessor system | |
JP6768928B2 (en) | Methods and devices for compressing addresses | |
TWI466060B (en) | Translation unit,display pipe,method and apparatus of streaming translation in display pipe | |
US10320695B2 (en) | Message aggregation, combining and compression for efficient data communications in GPU-based clusters | |
JP2003271570A5 (en) | ||
JP2009134391A (en) | Stream processor, stream processing method, and data processing system | |
KR20120049806A (en) | Prefetch instruction | |
CN102646446A (en) | Hardware dynamic cache power management | |
US8806071B2 (en) | Continuous read burst support at high clock rates | |
US20130151795A1 (en) | Apparatus and method for controlling memory | |
JP5931595B2 (en) | Information processing device | |
US7680992B1 (en) | Read-modify-write memory with low latency for critical requests | |
US9342472B2 (en) | PRD (physical region descriptor) pre-fetch methods for DMA (direct memory access) units | |
KR20070082835A (en) | Apparatus and method for controlling direct memory access | |
JP2009245005A (en) | Data processor, data processing method and data processing program | |
JP2005267148A (en) | Memory controller | |
WO2017011021A1 (en) | Systems and methods facilitating reduced latency via stashing in systems on chips | |
JP2005234794A (en) | File system controller | |
US20150039789A1 (en) | Method for filtering cached input/output data based on data generation/consumption | |
US7903885B2 (en) | Data converting apparatus and method | |
JP3747213B1 (en) | NAND flash memory device and controller for sequential ROM interface | |
WO2013101012A1 (en) | Accessing configuration and status registers for a configuration space | |
US20100211704A1 (en) | Data Processing Apparatus | |
CN102073604B (en) | Method, device and system for controlling read and write of synchronous dynamic memory |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Effective date: 20101216 Free format text: JAPANESE INTERMEDIATE CODE: A621 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120228 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120229 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20120626 |