JP2007026184A - Function-processing electronic circuit and its control method - Google Patents

Function-processing electronic circuit and its control method Download PDF

Info

Publication number
JP2007026184A
JP2007026184A JP2005208628A JP2005208628A JP2007026184A JP 2007026184 A JP2007026184 A JP 2007026184A JP 2005208628 A JP2005208628 A JP 2005208628A JP 2005208628 A JP2005208628 A JP 2005208628A JP 2007026184 A JP2007026184 A JP 2007026184A
Authority
JP
Japan
Prior art keywords
function processing
signal
function
data
data transfer
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.)
Withdrawn
Application number
JP2005208628A
Other languages
Japanese (ja)
Inventor
Kohei Murayama
公平 村山
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2005208628A priority Critical patent/JP2007026184A/en
Publication of JP2007026184A publication Critical patent/JP2007026184A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Bus Control (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a means for reducing a management load on a function-processing block of a CPU in a system having a CPU and a plurality of function-processing blocks to realize efficient load distribution in the system. <P>SOLUTION: A system has a plurality of DMACs, a plurality of function-processing blocks, a switching circuit which optionally connects them, and a function-processing resource management mechanism which manages the resources of the DMACs, the function-processing blocks and the switching circuit. The function-processing resource management mechanism is provided with; a means which designates function-processing to be executed, an original data pointer, a result data pointer or the like; a means which allocates resources to each DMAC, each function-processing block and the switching circuit based on the designation; and a processing setting means. By this, loads on the resource management of a CPU and block management, which are the main management, are relieved. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明はDMAコントローラ(以下DMAC)を有する電子回路に関するものであり、特に複数の機能処理ハードウエアとDMACを用いて実現する電子回路に関する。   The present invention relates to an electronic circuit having a DMA controller (hereinafter referred to as DMAC), and more particularly to an electronic circuit realized using a plurality of function processing hardware and a DMAC.

組み込み型のシステムにおいては、システム内部にCPU、メモリ制御回路、インターフェース回路のほかにある特定の機能を実現するハードウエア機能処理ブロックを搭載することにより、ソフトウエアによる処理を軽減するとともにハードウエア処理による高速化を可能としている。またハードウエアの機能処理ブロックを搭載することにより、処理の並列化、パイプライン化による処理リソースの負荷分散を行うことが可能となる。   In an embedded system, a hardware function processing block that implements specific functions in addition to the CPU, memory control circuit, and interface circuit is installed inside the system, thereby reducing software processing and hardware processing. It is possible to speed up. In addition, by installing hardware functional processing blocks, it becomes possible to perform processing resource load distribution by parallelizing processing and pipelining.

ハードウエアの機能処理ブロックは一般にメモリに蓄えられたデータに対して具備された特定信号処理を施し、結果データを再度メモリへと保持することにより、機能の実現を行っている。すなわち、メモリ上の元となるデータをDMACによりデータを取り込み、そのデータを機能処理ブロック内の回路にてデータに対して所定の処理を行い、処理後の結果データをDMACによりメモリに書き戻すことで実現される。例えば図1に示すJEPG復号化を行う機能処理ブロック(101)は、2組のDMAC(102,103)とJEPG復号化ブロック(104)により構成される。一方のメモリからデータを読み込むRead DMAC(102)にてメモリ(105)上に蓄えられた符号化されたJPEGデータを読み込み、読み込んだデータをJPEG復号化回路(104)に入力する。JPEG復号化回路(104)は入力されたJPEGデータの復号処理を行い、結果の復号データを出力する。JPEG復号化回路(104)により出力された復号化データはもう一方のメモリへとデータを書き込むWrite DMAC(103)に入力され、DMACによってメモリ(105)上に結果データである復号されたデータをメモリ上へと書き戻すことでJPEG復号化の機能を実現している。   The function processing block of hardware generally implements a function by performing specific signal processing provided for data stored in a memory and holding the result data in the memory again. In other words, the original data in the memory is taken in by the DMAC, the data is processed by the circuit in the function processing block, and the result data after processing is written back to the memory by the DMAC. It is realized with. For example, the functional processing block (101) for performing JEPG decoding shown in FIG. 1 is composed of two sets of DMAC (102, 103) and JEPG decoding block (104). The read DMAC (102) that reads data from one memory reads the encoded JPEG data stored in the memory (105), and inputs the read data to the JPEG decoding circuit (104). The JPEG decoding circuit (104) decodes the input JPEG data and outputs the resulting decoded data. The decoded data output by the JPEG decoding circuit (104) is input to the Write DMAC (103) for writing the data to the other memory, and the decoded data that is the result data is transferred to the memory (105) by the DMAC. The JPEG decoding function is realized by writing back to the memory.

多くのシステムにおいては複数機能を実現するために、複数種類の機能処理ブロックをハードウエアにて搭載し、機能の高速処理、並列処理を実現している。図2にそのシステムの一例を示す。システムはシステム全体の制御を司るCPU(201)、主記憶等のメモリデバイスの制御を行うメモリデバイス制御回路(202)、ネットワーク等の外部とのインターフェースを制御するインターフェース回路(203)と、複数の機能処理ブロック(204〜209)を有しており、各機能処理ブロックはメモリデバイスからのデータの読み出し、書き込みを行うためのDMACと所定の機能を実現する機能処理回路を有し、JPEG符号化、復号化や暗号化処理と言った機能処理をブロックとして実現する。例えばシステムが機能Aの処理を実現する場合、CPU(201)より機能処理ブロックA(204)のDMACと機能処理回路Aを起動することにより、機能処理ブロックはメモリより元データを読み込み、機能処理回路Aにおいて処理を行いDMACにてメモリに結果データを書き込むことで実現する。本設定を各機能処理ブロックにCPU(201)から行うことにより、システムは各機能処理を並列して実行することが可能である。このようにシステムがハードウエアで実現する処理を機能処理ブロックとして実装することによって、ハードウエアによる処理の高速化を実現することが可能となる。システム内で複数のJPEG符号化処理を並列に実行する場合は機能処理回路A、Bに対してそれぞれJPEG符号化処理回路を実装し同一の機能処理を実現する機能処理ブロックを複数構成する。また矩形ごとに符号化されたJPEGデータを連続イメージとして復号化する処理を行う機能処理ブロックと一つの連続イメージとして符号化されたJPEGデータを矩形ごとのイメージとして復号化する処理を行う機能処理ブロックを必要とするシステムにおいては、機能処理回路C,Dに対してそれぞれ同一のJPEG復号化処理回路を実装し、一方の機能処理ブロックの読み込みDMACを矩形ごとにデータを取り込み、書き込みDMACを連続イメージとしてメモリに書き込む構成とし、他方の機能処理ブロックの読み込みDMACを連続イメージとしてデータを取り込み、書き込みDMACを矩形イメージとしてメモリに書き込む構成とすることで2つの機能処理系を実現する。   In many systems, in order to realize a plurality of functions, a plurality of types of function processing blocks are mounted by hardware to realize high-speed processing of functions and parallel processing. Figure 2 shows an example of the system. The system includes a CPU (201) that controls the entire system, a memory device control circuit (202) that controls a memory device such as a main memory, an interface circuit (203) that controls an external interface such as a network, and a plurality of It has function processing blocks (204 to 209), each function processing block has a DMAC for reading and writing data from the memory device and a function processing circuit for realizing a predetermined function, and JPEG encoding Functional processing such as decryption and encryption processing is realized as a block. For example, when the system realizes the function A processing, the function processing block reads the original data from the memory by activating the DMAC of the function processing block A (204) and the function processing circuit A from the CPU (201), and the function processing This is realized by processing in the circuit A and writing the result data in the memory by the DMAC. By performing this setting for each function processing block from the CPU (201), the system can execute each function process in parallel. By implementing the processing realized by the system in hardware as a function processing block in this way, it is possible to realize high-speed processing by hardware. When a plurality of JPEG encoding processes are executed in parallel in the system, a plurality of function processing blocks for implementing the same function processing are configured by mounting JPEG encoding processing circuits on the function processing circuits A and B, respectively. Also, a functional processing block that performs processing to decode JPEG data encoded for each rectangle as a continuous image and a functional processing block that performs processing to decode JPEG data encoded as one continuous image as an image for each rectangle. In the system that requires the same JPEG decoding processing circuit for each of the function processing circuits C and D, the reading DMAC of one function processing block is fetched for each rectangle, and the writing DMAC is continuously imaged The two functional processing systems are realized by adopting a configuration in which the data is written in the memory, the reading DMAC of the other functional processing block is taken in as a continuous image, and the writing DMAC is written in the memory as a rectangular image.

以上のように、システム内にて高速処理を実現する必要のあるような機能処理に関しては、システムとして必要な分機能処理ブロックとしてハードウエアで実装し、システムの要求する性能を実現する。   As described above, functional processing that requires high-speed processing in the system is implemented by hardware as functional processing blocks necessary for the system, and the performance required by the system is realized.

又、従来例としては、例えば特許文献1と特許文献2をあげることが出来る。
特開平05ー274249号公報 特開平09ー223103号公報
Moreover, as a prior art example, patent document 1 and patent document 2 can be mention | raise | lifted, for example.
JP 05-274249 A JP 09-223103 A

しかしながら、各機能処理ブロックはメモリからデータ転送を行うのに対して、接続するバスやメモリの最大転送速度は有限であるため、たとえ複数個の機能処理ブロックを実装しDMACを内蔵しても、最大処理速度はバスの転送速度やメモリ転送速度が制限となるため、システム全体として同時に動作することが出来ない過剰なDMACを内蔵することになる。また、矩形ごとに符号化されたJPEGデータを連続イメージとして復号化する処理を行う機能処理ブロックと一つの連続イメージとして符号化されたJPEGデータを矩形ごとのイメージとして復号化する処理を行う機能処理ブロックを1つずつ有するシステムにおいて、例えば矩形ごとに符号化されたJPEGデータを連続イメージとして復号化する処理を2つ並列に動作させたい場合に、該等処理ブロックを2つ実装する必要があり、1つしか実装されていない場合では、連続イメージとして符号化されたJPEGデータをブロックごとのイメージとして復号化する処理を行う機能処理ブロックのJPEG復号化回路が未使用状態であっても機能処理ブロックとして機能が限定されているため、リソースとして使用することが出来ず、また前者の機能処理ブロックを2個実装することは、ハードウエア規模を拡大し1つの処理しか行わない場合はハードウエアリソースを有効に使用することが出来ない。   However, while each function processing block transfers data from memory, the maximum transfer speed of the connected bus and memory is finite, so even if multiple function processing blocks are installed and DMAC is built in, Since the maximum processing speed is limited by the bus transfer speed and the memory transfer speed, an excessive DMAC that cannot operate simultaneously as the entire system is built in. Also, a functional processing block that performs processing to decode JPEG data encoded for each rectangle as a continuous image and a functional processing that performs processing to decode JPEG data encoded as one continuous image as an image for each rectangle. In a system that has one block at a time, for example, if you want to operate in parallel two processes for decoding JPEG data encoded for each rectangle as a continuous image, it is necessary to implement two such equal processing blocks If only one is implemented, functional processing is performed even if the JPEG decoding circuit of the functional processing block that performs processing to decode JPEG data encoded as a continuous image as an image for each block is unused. Since the function is limited as a block, it cannot be used as a resource, and the former two function processing blocks are implemented. If the hardware scale is increased and only one process is performed, hardware resources cannot be used effectively.

また複数の機能処理ブロックを有するシステムにおいて、各ブロックの動作状況や時系列での使用可否や各ブロックの設定等に関しては一般にメインのプロセッサが管理する必要がある。しかしながら、近年の半導体技術の進展により、システム内に搭載されるハードウエアは指数関数的に増大するともに、各機能処理ブロックの管理や各種設定等の管理のCPUに対する負荷は増大し、プロセッサを他の処理への使用を限定したり、プロセッサの処理速度が低下し、システムとしての性能の制限してしまう。例えば、読み込みDMAC、書き込みDMAC、機能処理ブロックによりある処理を実現する場合、メインのプロセッサは、各DMACと機能処理ブロックの設定を行い、またDMACや機能処理ブロックからの終了通知を受ける。システムの機能が大きくなり、ハードウエアで実装される機能処理を並列に複数動作させる場合においては、各機能処理のために、ハードウエア資源を管理し、頻発する割り込み処理を行う必要が生じる。本来はハードウエアにて機能処理を実現することで、処理の高速化を実現するとともにソフトウエアにて他の処理をソフトウエアにて実行することでシステム全体の性能を向上させることが可能となるが、先に述べた理由によりプロセッサの性能は著しく制限され、プロセッサで実行するソフトウエアの性能が低下してしまう。   In a system having a plurality of functional processing blocks, the main processor generally needs to manage the operation status of each block, availability in time series, setting of each block, and the like. However, due to recent advances in semiconductor technology, the hardware installed in the system increases exponentially, and the load on the CPU for managing each function processing block and various settings has increased. This limits the use of the processor for processing, or the processing speed of the processor decreases, limiting the performance of the system. For example, when a certain process is realized by reading DMAC, writing DMAC, and function processing block, the main processor sets each DMAC and function processing block, and receives an end notification from the DMAC or function processing block. When the function of the system is increased and a plurality of function processes implemented by hardware are operated in parallel, it is necessary to manage hardware resources and perform frequent interrupt processes for each function process. Originally, functional processing is realized by hardware, so that processing speed can be increased and other processing can be performed by software to improve overall system performance. However, the performance of the processor is significantly limited for the reasons described above, and the performance of the software executed by the processor is degraded.

本発明は上記の課題を鑑みてなされたものであり、CPUと複数の機能処理ブロックを有するシステムにおいて、CPUの機能処理ブロックの管理負荷を低減する手段を提供し、システム内の効率的な負荷分散を実現することとする。   The present invention has been made in view of the above problems, and in a system having a CPU and a plurality of functional processing blocks, provides means for reducing the management load of the functional processing blocks of the CPU, and provides an efficient load in the system. Distribute will be realized.

少なくともひとつ以上のCPUと、複数の機能処理ブロックと、複数のDMAコントローラと、メモリデバイス制御回路と、前記機能処理ブロックと前記DMAコントローラの任意の組み合わせ可能なスイッチ回路とから構成され、前記DMAコントローラは一方はメモリ制御回路と接続され、もう一方は前記スイッチ回路を介して任意の機能処理ブロックと接続され、前記スイッチ回路は、スイッチ切り替え指定用入力信号あるいはスイッチ切り替え指定用レジスタを有し、指定に従い前記機能処理ブロックと前記DMAコントローラの組み合わせを切り替える手段を有する電子回路において、
機能処理管理機構を有し、
機能処理指定手段と、
前記機能処理管理機構は、
前記スイッチ回路制御手段と、
前記DMAコントローラ制御手段と、
前記機能処理ブロック制御手段と、
機能処理終了判定手段と、
機能処理終了通知手段と、
を有することを特徴とする電子回路。
The DMA controller comprising at least one CPU, a plurality of function processing blocks, a plurality of DMA controllers, a memory device control circuit, and a switch circuit that can be arbitrarily combined with the function processing blocks and the DMA controller. Is connected to a memory control circuit, and the other is connected to an arbitrary function processing block via the switch circuit. The switch circuit has a switch switching designation input signal or a switch switching designation register, and is designated. In an electronic circuit having means for switching the combination of the functional processing block and the DMA controller according to
Has a function processing management mechanism,
Function processing designation means;
The function processing management mechanism is:
The switch circuit control means;
The DMA controller control means;
The function processing block control means;
A function processing end determination means;
A function processing end notification means;
An electronic circuit comprising:

従来の手法によると、複数のDMACと複数の機能処理ブロックを有するシステムではメインCPUが各DMACや各機能処理ブロックのリソース管理を行い、また各DMAC、機能処理ブロックからの終了通知により割り込みが発生し、CPUに大きな負荷を与えていた。   According to the conventional method, in a system with multiple DMACs and multiple functional processing blocks, the main CPU performs resource management for each DMAC and each functional processing block, and an interrupt is generated by an end notification from each DMAC and functional processing block And it put a big load on the CPU.

本発明によると、複数のDMACと複数の機能処理ブロックを有するシステムにおいて、メインに処理を起動するCPUが従来行っていた各DMACや機能処理ブロックのリソース管理を行う必要が無く、実行する処理と処理を行うアドレス空間のみを指定し、専用の機能処理管理制御機構が各設定、起動を含めて行い、機能処理全体を一括して終了通知を行うため、メインCPUの機能処理ブロック管理、制御の負荷を減少し、他のCPUにて行う処理の性能向上を図ることが出来る。   According to the present invention, in a system having a plurality of DMACs and a plurality of function processing blocks, it is not necessary to perform resource management of each DMAC or function processing block that has been conventionally performed by a CPU that mainly starts processing, and processing to be executed Only the address space to be processed is specified, the dedicated function processing management control mechanism performs each setting and startup, and the entire function processing is notified collectively, so the function processing block management and control of the main CPU are performed. The load can be reduced, and the performance of processing performed by other CPUs can be improved.

図4に示されるCPUと、複数の機能処理ブロックと、複数のDMAコントローラと、メモリデバイス制御回路と、前記機能処理ブロックと前記DMAコントローラの任意の組み合わせ可能なスイッチ回路とから構成され、前記DMAコントローラは一方はメモリ制御回路と接続され、もう一方は前記スイッチ回路を介して任意の機能処理ブロックと接続され、前記スイッチ回路は、スイッチ切り替え指定用入力信号あるいはスイッチ切り替え指定用レジスタを有し、指定に従い前記機能処理ブロックと前記DMAコントローラの組み合わせを切り替える手段を有する電子回路は以下の構成を有する。   4 includes a CPU, a plurality of function processing blocks, a plurality of DMA controllers, a memory device control circuit, and a switch circuit that can be arbitrarily combined with the function processing blocks and the DMA controller. One of the controllers is connected to a memory control circuit, and the other is connected to an arbitrary function processing block via the switch circuit. The switch circuit has a switch switching designation input signal or a switch switching designation register. An electronic circuit having means for switching the combination of the functional processing block and the DMA controller according to the designation has the following configuration.

すなわち、本システムは、CPU(303)とメモリ制御回路(302)とそれに接続されるメモリデバイス(301)、2組のReadDMAC(401,402)、2組のWriteDMAC(403,404)、それらのデバイスが接続されるシステムバス(306)、6個の機能処理ブロック(312〜317)と、各DMACと機能処理ブロックを接続するデータ転送スイッチ(405)により構成される。   That is, in this system, the CPU (303), the memory control circuit (302), the memory device (301) connected thereto, two sets of ReadDMAC (401,402), two sets of WriteDMAC (403,404), and these devices are connected. System bus (306), six function processing blocks (312 to 317), and a data transfer switch (405) for connecting each DMAC to the function processing block.

機能処理ブロック(312〜317)内に含まれる機能処理回路はJPEG符号化、復号化といった任意のデータ信号処理を行う回路であり、入力データに対して具備された信号処理を行い、結果データを出力する。機能処理回路で信号処理を施されるデータはデータ入力IFを介してデータ転送接続スイッチ(405)から入力され、信号処理結果データはデータ出力IFを介してデータ転送接続スイッチ(405)へと出力される。   The function processing circuit included in the function processing block (312 to 317) is a circuit that performs arbitrary data signal processing such as JPEG encoding and decoding, performs signal processing provided for input data, and outputs result data. Output. Data subjected to signal processing in the function processing circuit is input from the data transfer connection switch (405) via the data input IF, and signal processing result data is output to the data transfer connection switch (405) via the data output IF. Is done.

ReadDMAC(401,402)はDMACの動作を設定するDMAC設定レジスタを有し、読み込むデータのメモリアドレスを指定するレジスタ、データ転送量を指定するレジスタ、矩形転送幅レジスタ、矩形転送アドレスオフセットレジスタ、DMAC転送を起動するレジスタ等、DMAC転送を行う設定レジスタ群で構成される。設定レジスタの内容に関しては任意である。ReadDMA制御回路は設定レジスタ群に指定されたアドレス、転送量等の設定に従い、DMAC転送の起動を指示されるとシステムバス(306)を介してメモリに対してデータリード転送要求を発行し、メモリデバイス(301)上のデータを読み込む。読み込んだデータはデータ出力IFを介して、データ転送スイッチ(405)へと出力される。また、矩形転送幅レジスタと矩形転送アドレスオフセットレジスタを指定することで、メモリ空間上の矩形転送を行い、矩形転送幅を任意とし、矩形転送アドレスオフセットレジスタ値を0とすることで連続転送が可能である。   ReadDMAC (401, 402) has a DMAC setting register that sets the DMAC operation, a register that specifies the memory address of the data to be read, a register that specifies the data transfer amount, a rectangular transfer width register, a rectangular transfer address offset register, and a DMAC transfer It consists of setting registers that perform DMAC transfer, such as registers to be activated. The contents of the setting register are arbitrary. The ReadDMA control circuit issues a data read transfer request to the memory via the system bus (306) when instructed to start DMAC transfer according to the settings of the address, transfer amount, etc. specified in the setting register group. Read data on device (301). The read data is output to the data transfer switch (405) via the data output IF. In addition, by specifying the rectangular transfer width register and the rectangular transfer address offset register, the rectangular transfer in the memory space is performed, the rectangular transfer width is set arbitrarily, and the rectangular transfer address offset register value is set to 0, continuous transfer is possible It is.

対してWriteDMAC(403,404)はDMACの動作を設定するDMAC設定レジスタを有し、書き込むデータのメモリアドレスを指定するレジスタ、矩形転送幅レジスタ、矩形転送アドレスオフセットレジスタ、DMAC転送を起動するレジスタ等、DMAC転送を行う設定レジスタ群で構成される。設定レジスタの内容に関しては任意である。WriteDMAC(403,404)はデータ入力IFを介してデータ転送スイッチ(405)からのデータが入力される。WriteDMA制御回路は設定レジスタ群に指定されたアドレス等の設定に従い、DMAC転送の起動を指示され、データ入力IFを介してデータが入力されると、システムバス(306)を介してメモリに対してデータライト転送要求を発行し、メモリデバイス(301)上にデータを書き込む。また、矩形転送幅レジスタと矩形転送アドレスオフセットレジスタを指定することで、メモリ空間上の矩形転送を行い、矩形転送幅を任意とし、矩形転送アドレスオフセットレジスタ値を0とすることで連続転送が可能である。   On the other hand, WriteDMAC (403, 404) has a DMAC setting register that sets the DMAC operation, such as a register that specifies the memory address of the data to be written, a rectangular transfer width register, a rectangular transfer address offset register, a register that starts DMAC transfer, etc. It consists of a set register group that performs transfer. The contents of the setting register are arbitrary. WriteDMAC (403, 404) receives data from the data transfer switch (405) via the data input IF. The WriteDMA control circuit is instructed to start DMAC transfer according to the setting of the address specified in the setting register group, and when data is input via the data input IF, it is sent to the memory via the system bus (306). A data write transfer request is issued and data is written on the memory device (301). In addition, by specifying the rectangular transfer width register and the rectangular transfer address offset register, the rectangular transfer in the memory space is performed, the rectangular transfer width is set arbitrarily, and the rectangular transfer address offset register value is set to 0, continuous transfer is possible It is.

ReadDMAC(401,402)のデータ出力IFからのデータはデータ転送接続スイッチ(405)内のデータリードスイッチにて機能処理ブロック(312〜317)のうちの1つのデータ入力IFへと接続され、機能処理ブロック(312〜317)のデータ出力IFから出力されたデータはデータ転送接続スイッチ(405)内のデータライトスイッチにてWriteDMAC(403,404)のデータ入力IFへと接続される。ReadDMAC(401,402)と機能処理ブロック(312〜317)を接続するデータ転送のプロトコル、及び機能処理ブロック(312〜317)とWriteDMAC(403,404)を接続するデータ転送のプロトコルは任意である。図5に本データ転送プロトコルの信号波形例を記す。本例では、データ入力IFは受け取り可能なサイクルの1つ前のサイクルでREADY信号を発行し、データ出力IFはREADY信号が発行されている次のサイクルにてDATA_VALID信号、DATA信号を発行し、最終データの転送時にDATA_END信号を同時に発行する。図5の信号波形例は8ビートのデータ転送(8回のデータ転送)例である。サイクル1にてデータ入力インターフェースよりREADYの信号が発行されると、データ出力IFはサイクル2よりDATA_VALID信号と有効なDATAを出力する。サイクル3においてデータ入力IFは次のサイクルのデータの取り込みが出来ないためREADY信号を解除する。対してデータ出力IFはサイクル2のREADY信号が発行されているため、有効なデータの転送を行う。サイクル4はサイクル3のREADY信号の解除を受け有効なデータ転送を行わず、またサイクル4にてREADY信号が再び発行されているため、サイクル5にて3ビート目の有効な転送を行う。本データ転送プロトコルにおいてはREADY信号が発行された次のデータ入力IFへの信号に対してはDon't Careである。サイクル12で8ビート目の最後のデータ転送サイクルであり、最後のデータ転送としてDATA_END信号を同一サイクルで転送し、データ転送を終了する。   Data from the data output IF of ReadDMAC (401, 402) is connected to one data input IF of the function processing blocks (312 to 317) by the data read switch in the data transfer connection switch (405), and the function processing block The data output from the data output IF (312 to 317) is connected to the data input IF of WriteDMAC (403, 404) by the data write switch in the data transfer connection switch (405). The data transfer protocol for connecting ReadDMAC (401, 402) and the function processing blocks (312 to 317) and the data transfer protocol for connecting the function processing block (312 to 317) and WriteDMAC (403, 404) are arbitrary. FIG. 5 shows a signal waveform example of this data transfer protocol. In this example, the data input IF issues the READY signal in the cycle immediately before the receivable cycle, the data output IF issues the DATA_VALID signal and the DATA signal in the next cycle after the READY signal is issued, The DATA_END signal is issued simultaneously when the final data is transferred. The signal waveform example in FIG. 5 is an example of 8-beat data transfer (8 data transfers). When a READY signal is issued from the data input interface in cycle 1, the data output IF outputs a DATA_VALID signal and valid DATA from cycle 2. In cycle 3, the data input IF cancels the READY signal because it cannot take in the data of the next cycle. On the other hand, since the READY signal of cycle 2 is issued, the data output IF transfers valid data. In cycle 4, the valid data transfer is not performed in response to the release of the READY signal in cycle 3, and the valid transfer of the third beat is performed in cycle 5 because the READY signal is issued again in cycle 4. In this data transfer protocol, the signal to the next data input IF after the READY signal is issued is Don't Care. This is the last data transfer cycle of the eighth beat in cycle 12, and the DATA_END signal is transferred in the same cycle as the last data transfer, and the data transfer is completed.

データ転送接続スイッチ(405)は、図6に記されるようにデータリードスイッチ(601)及びデータライトスイッチ(602)と、各ReadDMAC(401,402)のデータ転送先を指定するリードデータ転送先指定信号(603)と各機能処理ブロック(312〜317)のデータ転送元を指定するリードデータ転送元指定信号(604)と、各WriteDMAC(403,404)のデータ転送元を指定するライトデータ転送元指定信号(606)と各機能処理ブロック(312〜317)の結果データ転送先を指定するライトデータ転送先指定信号(605)とにより構成される。各転送指定信号(603〜606)はデータ転送接続スイッチ内のレジスタ(図示せず)にて設定される。   As shown in FIG. 6, the data transfer connection switch (405) includes a data read switch (601) and a data write switch (602), and a read data transfer destination designation signal for designating the data transfer destination of each ReadDMAC (401, 402). (603) and a read data transfer source specifying signal (604) for specifying the data transfer source of each function processing block (312 to 317), and a write data transfer source specifying signal for specifying the data transfer source of each WriteDMAC (403, 404) ( 606) and a write data transfer destination designation signal (605) for designating the result data transfer destination of each function processing block (312 to 317). Each transfer designation signal (603 to 606) is set by a register (not shown) in the data transfer connection switch.

図7にデータリードスイッチ(601)の構成図を示す。各ReadDMAC(401,402)に対応してReadDMACの出力信号に対するデータ転送先切り替えスイッチ(701)とReadDMACの入力信号に対する入力切り替えMUX(702)と、接続される各機能処理ブロック(312〜317)への出力信号に対する転送元切り替えMUX(703)と機能処理ブロックからの入力信号に対する入力切り替えスイッチ(704)により構成される。それぞれのスイッチ、MUXの切り替え信号として、リードデータ転送先指定信号(603)とリードデータ転送元指定信号(604)を有する。リードデータ転送先指定信号(603)はReadDMACのデータ転送先となる機能処理ブロック(312~317)を選択する信号である。本例では、6つの機能処理ブロックを選択する信号として3ビットの信号により実現される。リードデータ転送元選択信号(604)は機能処理ブロック(312〜317)側で転送元となるReadDMAC(401,402)を指定する信号である。本例では2つのReadDMACを選択する信号として1ビットの信号により実現される。   FIG. 7 shows a configuration diagram of the data read switch (601). Corresponding to each ReadDMAC (401, 402), the data transfer destination changeover switch (701) for the ReadDMAC output signal, the input changeover MUX (702) for the ReadDMAC input signal, and the connected function processing blocks (312 to 317) A transfer source switching MUX (703) for the output signal and an input switching switch (704) for the input signal from the function processing block are configured. Each switch and MUX switching signal includes a read data transfer destination designation signal (603) and a read data transfer source designation signal (604). The read data transfer destination designation signal (603) is a signal for selecting function processing blocks (312 to 317) that are data transfer destinations of ReadDMAC. In this example, it is realized by a 3-bit signal as a signal for selecting six function processing blocks. The read data transfer source selection signal (604) is a signal for designating ReadDMAC (401, 402) as a transfer source on the function processing block (312 to 317) side. In this example, it is realized by a 1-bit signal as a signal for selecting two ReadDMACs.

データ転送先切り替えスイッチ(701)と入力切り替えMUX(702)とリードデータ転送先指定信号(603)は接続されるReadDMACの個数分実装され、本例ではReadDMAC-1/2(401,402)に対応して2組含まれる。転送元切り替えMUX(703)と入力切り替えスイッチ(704)とリードデータ転送元選択信号(604)は接続される機能処理ブロックの個数分実装され、本例では機能処理ブロック-A/B/C/D/E/F(312〜317)に対応して6組含まれている。   Data transfer destination changeover switch (701), input changeover MUX (702), and read data transfer destination designation signal (603) are implemented for the number of connected ReadDMACs, and this example corresponds to ReadDMAC-1 / 2 (401, 402). 2 pairs are included. Transfer source change MUX (703), input changeover switch (704), and read data transfer source selection signal (604) are implemented for the number of function processing blocks to be connected. In this example, function processing block -A / B / C / Six sets are included corresponding to D / E / F (312 to 317).

以下にリードデータスイッチ(601)の動作を記す。データ転送先切り替えスイッチ(701)は接続するReadDMACからの出力信号とリードデータ転送先指定信号(603)を入力とし、出力として接続される機能処理ブロックの個数分の出力を持ち、本例では6つの出力信号の組を有する。データ転送切り替えスイッチ(701)はリードデータ転送先指定信号(603)の信号値により、指定された機能処理ブロックへの出力信号と入力信号を接続する。リードデータ転送先指定信号(603)により指定からもれた機能処理ブロックへの出力信号は無効な信号として出力する。具体的にはデータ転送信号のDATA_VALID信号を解除した信号を出力する。上記の機構により、リードデータ転送先指定信号(603)により選択された機能処理ブロックに対する出力信号は、スイッチ動作によりReadDMACのデータ出力IFからのデータがそのまま出力され、選択からもれた機能処理ブロックへの出力信号は無効データ、すなわち非転送状態となる。データ転送先切り替えスイッチ(701)のそれぞれの機能処理ブロックに対するデータ出力は転送元切り替えMUX(703)へと接続される。転送元切り替えMUX(703)は各ReadDMACに対応するデータ転送切り替えスイッチ(701)の出力信号(本例では2組)とリードデータ転送元選択信号(604)の入力と、機能処理ブロックのデータ入力IFに接続されるデータ出力を有する。データ出力転送元きり着替えMUX(703)はリードデータ転送元指定信号(604)の信号値により、転送元のReadDMACを判別し該当するReadDMACからの入力信号を機能処理ブロックへの出力信号として出力する。上記の機構により、各ReadDMACに対応するデータ転送切り替えスイッチ(701)の出力データは、転送元切り替えMUX(703)の入力となり、リードデータ転送元選択信号(604)により転送元と指定されたReadDMACからの入力信号が機能処理ブロックの入力信号として出力される。対して入力切り替えスイッチ(704)と入力切り替えMUX(702)は機能処理ブロックからReadDMACへ伝達されるREADY信号に対するスイッチ機構であり、入力切り替えスイッチ(704)より機能処理ブロックからのREADY信号が伝達されるReadDMACがリードデータ転送元選択信号(604)の値により選択され、選択されたReadDMACに対するREADY信号は機能処理ブロックからの信号がそのまま伝達され、選択からもれたReadDMAC対するREADY信号は解除された状態で転送される。入力切り替えMUX(702)は、各機能処理ブロックの入力切り替えスイッチ(704)の出力を入力とし、リードデータ転送先指定信号(603)の信号値によりREADY信号の発行元の選択を行い、ReadDMACへREADY信号が伝達される。   The operation of the read data switch (601) is described below. The data transfer destination changeover switch (701) receives the output signal from the connected ReadDMAC and the read data transfer destination designation signal (603) as inputs, and has outputs for the number of function processing blocks connected as output. It has two output signal sets. The data transfer changeover switch (701) connects the output signal and the input signal to the designated function processing block according to the signal value of the read data transfer destination designation signal (603). The output signal to the function processing block that is not specified by the read data transfer destination specifying signal (603) is output as an invalid signal. Specifically, a signal obtained by canceling the DATA_VALID signal of the data transfer signal is output. By the above mechanism, the output signal to the function processing block selected by the read data transfer destination designation signal (603) is output as it is from the data output IF of ReadDMAC by the switch operation, and the function processing block that is out of selection The output signal to becomes invalid data, that is, a non-transfer state. Data output for each function processing block of the data transfer destination changeover switch (701) is connected to the transfer source changeover MUX (703). The transfer source switching MUX (703) inputs the output signals (two sets in this example) and read data transfer source selection signal (604) of the data transfer switch (701) corresponding to each ReadDMAC, and the data input of the function processing block Has data output connected to IF. The data output transfer source change-over MUX (703) determines the ReadDMAC of the transfer source based on the signal value of the read data transfer source designation signal (604) and outputs the input signal from the corresponding ReadDMAC as an output signal to the function processing block . By the above mechanism, the output data of the data transfer changeover switch (701) corresponding to each ReadDMAC becomes the input of the transfer source changeover MUX (703), and the ReadDMAC designated as the transfer source by the read data transfer source selection signal (604) Is input as an input signal of the function processing block. In contrast, the input changeover switch (704) and input changeover MUX (702) are switch mechanisms for the READY signal transmitted from the function processing block to the ReadDMAC, and the READY signal from the function processing block is transmitted from the input changeover switch (704). ReadDMAC is selected by the value of the read data transfer source selection signal (604), the READY signal for the selected ReadDMAC is transmitted as it is from the function processing block, and the READY signal for ReadDMAC that has been selected is released Transferred in state. The input switch MUX (702) receives the output of the input switch (704) of each function processing block as input, selects the READY signal issue source based on the signal value of the read data transfer destination designation signal (603), and sends it to ReadDMAC READY signal is transmitted.

図8にデータライトスイッチ(602)の構成図を示す。各WriteDMAC(403,404)に対応してWriteDMACの入力信号に対するデータ転送元切り替えスイッチ(802)とWriteDMACの出力信号に対する出力切り替えMUX(801)と、接続される各機能処理ブロック(312〜317)からの出力信号に対する転送先切り替えMUX(804)と機能処理ブロックからの入力信号に対する出力切り替えスイッチ(803)により構成される。それぞれのスイッチ、MUXの切り替え信号として、ライトデータ転送先指定信号(606)とライトデータ転送元指定信号(605)を有する。ライトデータ転送元指定信号(605)はWriteDMACのデータ転送元となる機能処理ブロック(312〜317)を選択する信号である。本例では、6つの機能処理ブロックを選択する信号として3ビットの信号により実現される。ライトデータ転送先選択信号(606)は機能処理ブロック(312〜317)側で転送元となるWriteDMAC(403,404)を指定する信号である。本例では2つのWriteDMACを選択する信号として1ビットの信号により実現される。   FIG. 8 shows a configuration diagram of the data write switch (602). Corresponding to each WriteDMAC (403, 404), the data transfer source changeover switch (802) for the input signal of WriteDMAC, the output changeover MUX (801) for the output signal of WriteDMAC, and each function processing block (312 to 317) connected A transfer destination switching MUX (804) for the output signal and an output switching switch (803) for the input signal from the function processing block are configured. A write data transfer destination designation signal (606) and a write data transfer source designation signal (605) are provided as switching signals for each switch and MUX. The write data transfer source designation signal (605) is a signal for selecting the function processing blocks (312 to 317) that are the data transfer source of WriteDMAC. In this example, it is realized by a 3-bit signal as a signal for selecting six function processing blocks. The write data transfer destination selection signal (606) is a signal that designates WriteDMAC (403, 404) as a transfer source on the function processing block (312 to 317) side. In this example, it is realized by a 1-bit signal as a signal for selecting two WriteDMACs.

データ転送元切り替えスイッチ(802)と出力切り替えMUX(801)とライトデータ転送元指定信号(605)は接続されるWriteDMACの個数分実装され、本例ではWriteDMAC-1/2(403,404)に対応して2組含まれる。転送先切り替えMUX(804)と出力切り替えスイッチ(803)とライトデータ転送先選択信号(606)は接続される機能処理ブロックの個数分実装され、本例では機能処理ブロック-A/B/C/D/E/F(312〜317)に対応して6組含まれている。   Data transfer source changeover switch (802), output changeover MUX (801), and write data transfer source designation signal (605) are implemented for the number of connected WriteDMACs, and this example corresponds to WriteDMAC-1 / 2 (403, 404). 2 pairs are included. The transfer destination switching MUX (804), output changeover switch (803), and write data transfer destination selection signal (606) are implemented as many as the number of function processing blocks to be connected. In this example, the function processing block -A / B / C / Six sets are included corresponding to D / E / F (312 to 317).

以下にライトデータスイッチ(602)の動作を記す。データ転送先切り替えスイッチ(803)は接続する機能処理ブロックからの出力信号とライトデータ転送先指定信号(606)を入力とし、出力として接続されるWriteDMACの個数分の出力を持ち、本例では2つの出力信号の組を有する。データ転送先切り替えスイッチ(803)はライトデータ転送先指定信号(606)の信号値により、指定されたWriteDMACへの出力信号と入力信号を接続する。ライトデータ転送先指定信号(606)により指定からもれたWriteDMACへの出力信号は無効な信号として出力する。具体的にはデータ転送信号のDATA_VALID信号を解除した信号を出力する。上記の機構により、ライトデータ転送先指定信号(606)により選択されたWriteDMACに対する出力信号は、スイッチ動作により機能処理ブロックのデータ出力IFからのデータがそのまま出力され、選択からもれたWriteDMACへの出力信号は無効データ、すなわち非転送状態となる。データ転送先切り替えスイッチ(803)のそれぞれのWriteに対するデータ出力は転送元切り替えMUX(801)へと接続される。転送元切り替えMUX(801)は各機能処理ブロックに対応するデータ転送元切り替えスイッチ(803)の出力信号(本例では6組)とライトデータ転送元選択信号(605)の入力と、WriteDMACのデータ入力IFに接続されるデータ出力を有する。データ出力転送元切り替えMUX(801)はライトデータ転送元指定信号(605)の信号値により、転送元の機能処理ブロックを判別し該当する機能処理ブロックからの入力信号をWriteDMACへの出力信号として出力する。上記の機構により、各機能処理ブロックに対応するデータ転送切り替えスイッチ(803)の出力データは、転送元切り替えMUX(801)の入力となり、ライトデータ転送元選択信号(605)により転送元と指定された機能処理ブロックからの入力信号がWriteDMACの入力信号として出力される。対して出力切り替えスイッチ(803)と出力切り替えMUX(801)はWriteDMACから機能処理ブロックへ伝達されるREADY信号に対するスイッチ機構であり、出力切り替えスイッチ(802)よりWriteDMACからのREADY信号が伝達される機能処理ブロックがライトデータ転送元選択信号(605)の値により選択され、選択された機能処理ブロックに対するREADY信号はWriteDMACからの信号がそのまま伝達され、選択からもれた機能処理ブロック対するREADY信号は解除された状態で転送される。出力切り替えMUX(804)は、各WriteDMACの出力切り替えスイッチ(802)の出力を入力とし、ライトデータ転送元指定信号(605)の信号値によりREADY信号の発行元の選択を行い、機能処理ブロックへREADY信号が伝達される。   The operation of the write data switch (602) is described below. The data transfer destination changeover switch (803) receives the output signal from the function processing block to be connected and the write data transfer destination designation signal (606) as inputs, and has outputs for the number of WriteDMACs connected as outputs. It has two output signal sets. The data transfer destination changeover switch (803) connects the output signal and the input signal to the designated WriteDMAC according to the signal value of the write data transfer destination designation signal (606). An output signal to WriteDMAC that is not designated by the write data transfer destination designation signal (606) is output as an invalid signal. Specifically, a signal obtained by canceling the DATA_VALID signal of the data transfer signal is output. With the above mechanism, the output signal for WriteDMAC selected by the write data transfer destination designation signal (606) is output as it is from the data output IF of the function processing block by the switch operation, and is sent to the WriteDMAC that is out of selection. The output signal becomes invalid data, that is, a non-transfer state. The data output for each write of the data transfer destination changeover switch (803) is connected to the transfer source changeover MUX (801). The transfer source switching MUX (801) is the input of the output signal (six sets in this example) and the write data transfer source selection signal (605) of the data transfer source changeover switch (803) corresponding to each function processing block, and the data of WriteDMAC Has a data output connected to the input IF. The data output transfer source switching MUX (801) discriminates the function processing block of the transfer source from the signal value of the write data transfer source designation signal (605) and outputs the input signal from the corresponding function processing block as an output signal to WriteDMAC To do. With the above mechanism, the output data of the data transfer changeover switch (803) corresponding to each function processing block becomes the input of the transfer source changeover MUX (801) and is designated as the transfer source by the write data transfer source selection signal (605). An input signal from the function processing block is output as an input signal of WriteDMAC. On the other hand, the output changeover switch (803) and the output changeover MUX (801) are switch mechanisms for the READY signal transmitted from the WriteDMAC to the function processing block, and the function for transmitting the READY signal from the WriteDMAC from the output changeover switch (802). The processing block is selected by the value of the write data transfer source selection signal (605), the READY signal for the selected function processing block is transmitted as it is from the WriteDMAC, and the READY signal for the selected function processing block is released. It is transferred in the state. The output switch MUX (804) receives the output of the output switch (802) of each WriteDMAC, selects the issuer of the READY signal according to the signal value of the write data transfer source designation signal (605), and sends it to the function processing block READY signal is transmitted.

以上のスイッチの構成により、ReadDMAC(401,402)とWriteDMAC(403,404)と各機能処理ブロック(312〜317)のデータがスイッチ切り替え指定信号(603から606)により接続が確立され、それぞれの組み合わせでのデータ転送が可能となる。   With the above switch configuration, the connection between the ReadDMAC (401, 402), WriteDMAC (403, 404) and the data of each function processing block (312 to 317) is established by the switch switching designation signal (603 to 606), and the data in each combination Transfer is possible.

以上の構成に適用した本発明実施の形態として、図9に示すシステムを例に説明する。本システムは、図4のシステムに機能処理管理制御回路(901)を付加し、主にCPU(303)からの機能処理指定が行われるインターフェースとしての機能処理指定手段(1006)とスイッチ回路を制御する制御回路(1002、1004)から構成される。   As an embodiment of the present invention applied to the above configuration, a system shown in FIG. 9 will be described as an example. This system adds a function processing management control circuit (901) to the system shown in FIG. 4, and controls the function processing specifying means (1006) and the switch circuit as an interface for which the function processing is mainly specified from the CPU (303). Control circuit (1002, 1004).

機能処理管理制御回路(901)の構成を図10に示す。機能処理管理制御回路(901)は機能処理指定手段(1006)を有し、DMACの機能処理ブロックの構成により実現される信号処理の指定を受ける。本実施例では先の例記載と同様、機能処理ブロック-A/B(312,313)の機能処理回路をJPEG符号化回路、機能処理ブロック-C/D(314,315)の機能処理回路をJPEG復号化回路、機能処理ブロック-E(316)の機能処理回路を解像度変換回路、機能処理ブロック-F(317)の機能処理回路を色空間変換回路とする。機能処理指定手段は、図3に記されるような機能処理指定レジスタ群を有し、少なくとも機能処理フィールドレジスタ(1102)、元データ開始アドレスレジスタ(1103)、元データサイズレジスタ(1104)、結果データ開始アドレスレジスタ(1105)、各機能処理パラメータレジスタ(1106)、機能処理開始フラグレジスタ(1101)を有する。機能処理指定レジスタ群は、ReadDMAC(401,402)あるいはWriteDMAC(403,404)の個数の組有しており、本例では2組有する。機能処理指定レジスタ群に具備されるレジスタは、各ReadDMAC(401,402)と各WriteDMAC(403,404)に具備されるレジスタフィールドを有しており、先の例に記されるような各DMACがブロック転送機能を有する場合は矩形転送幅レジスタや矩形転送アドレスオフセットレジスタを機能処理指定レジスタ群に実装される。また機能処理パラメータレジスタ(1106)は機能処理ブロック(312〜317)の種類分のレジスタ群を有し、各機能処理ブロックに設定されるレジスタフィールドをそれぞれ有している。本実施例では6つの機能処理ブロック(312〜317)に対してJPEG符号化、JPEG復号化、解像度変換、色空間変換と4種類の機能処理ブロックを有しており、機能処理パラメータレジスタ(1106)は図3に記されるようにJPEG符号化パラメータ、JPEG復号化パラメータ、解像度変換パラメータ、色空間変換パラメータを実装する。   The configuration of the function processing management control circuit (901) is shown in FIG. The function processing management control circuit (901) has function processing designation means (1006), and receives designation of signal processing realized by the configuration of the function processing block of the DMAC. In this embodiment, the function processing circuit of the function processing block-A / B (312,313) is a JPEG encoding circuit, and the function processing circuit of the function processing block-C / D (314,315) is a JPEG decoding circuit, as described in the previous example. The function processing circuit of the function processing block-E (316) is a resolution conversion circuit, and the function processing circuit of the function processing block-F (317) is a color space conversion circuit. The function processing designation means has a function processing designation register group as shown in FIG. 3, and includes at least a function processing field register (1102), an original data start address register (1103), an original data size register (1104), a result It has a data start address register (1105), each function processing parameter register (1106), and a function processing start flag register (1101). The function processing specification register group has the number of sets of ReadDMAC (401, 402) or WriteDMAC (403, 404), and in this example, has two sets. The registers provided in the function processing designation register group have register fields provided in each ReadDMAC (401, 402) and each WriteDMAC (403, 404), and each DMAC as described in the previous example has a block transfer function. In the case of having, a rectangular transfer width register and a rectangular transfer address offset register are mounted in the function processing designation register group. The function processing parameter register (1106) has register groups for the types of function processing blocks (312 to 317), and has register fields set in the respective function processing blocks. In the present embodiment, six function processing blocks (312 to 317) have four types of function processing blocks, JPEG encoding, JPEG decoding, resolution conversion, color space conversion, and the function processing parameter register (1106). ) Implements JPEG encoding parameters, JPEG decoding parameters, resolution conversion parameters, and color space conversion parameters as shown in FIG.

CPU(303)は行う処理に従って、機能処理指定レジスタ群に対してアクセスを発行する。CPUはメモリ上の信号処理を行う元データの開始アドレスとデータサイズを元データ開始アドレスレジスタ(1103)、元データサイズレジスタ(1104)、信号処理後のデータを格納するメモリ上の開始アドレスを結果データ開始アドレスジス他(1105)に書き込み、機能処理フィールドレジスタ(1102)2ビットに、JPEG符号化を行う場合は“00”、JPEG復号化を行う場合は“01”、解像度変換を行う場合は“10”、色空間変換を行う場合は“11”を指定し、機能処理開始フラグ(1101)を立ててアクセスを発行することで機能処理を指定する。   The CPU (303) issues access to the function processing designation register group according to the processing to be performed. The CPU obtains the start address and data size of the original data for signal processing on the memory as the original data start address register (1103), the original data size register (1104), and the start address on the memory for storing the data after signal processing. Write to the data start address, etc. (1105), and add 2 bits to the function processing field register (1102), “00” for JPEG encoding, “01” for JPEG decoding, and for resolution conversion “10”, when color space conversion is performed, “11” is specified, and the function processing is specified by setting the function processing start flag (1101) and issuing access.

リソース判定レジスタ(1002)はReadDMACリソースフラグレジスタ、WriteDMACリソースフラグレジスタ、機能処理ブロックリソースフラグレジスタより構成され、機能処理指定手段(1006)から設定され、解除は各リソースからの終了通知にて行われる。各リソースフラグレジスタのフィールドは各リソースの数分のフィールドを有し、該当リソースが使用中の場合1、未使用の場合は0が設定される。本実施例の構成ではReadDMACリソースフラグレジスタおよびWriteDMACリソースフラグレジスタは2つのフィールドを有し、機能処理ブロックリソースフラグレジスタは機能処理ブロックの数、すなわち6つのフィールドを有する。CPUから機能処理指定手段に上記のプロセスにて機能処理の指定を受け、開始フラグが設定されると機能処理指定手段(1006)は、リソース判定レジスタ(1002)を参照し、機能処理に必要なReadDMAC、WriteDMACおよび機能処理ブロックが使用可能かのリソースを判定する。   The resource determination register (1002) is composed of a ReadDMAC resource flag register, a WriteDMAC resource flag register, and a function processing block resource flag register, set by the function processing specifying means (1006), and released by an end notification from each resource. . The field of each resource flag register has fields corresponding to the number of each resource, and 1 is set when the corresponding resource is in use, and 0 is set when the resource is not used. In the configuration of this embodiment, the ReadDMAC resource flag register and the WriteDMAC resource flag register have two fields, and the function processing block resource flag register has the number of function processing blocks, that is, six fields. When the function processing designation means receives the function processing designation in the above process from the CPU and the start flag is set, the function processing designation means (1006) refers to the resource judgment register (1002) and is necessary for the function processing. Determine whether ReadDMAC, WriteDMAC and functional processing blocks are available.

例えば、JPEG復号化処理の指定を受けると、ReadDMACリソースフラグレジスタ、WriteDMACリソースフラグレジスタへとアクセスし、未使用のDMACがあればJPEG復号化処理に使用するため、使用するDMACのフィールドに1を設定しDMACのリソースを確保し、機能処理ブロックリソースフラグレジスタにアクセスし、JPEG復号化のフィールドを参照し、未使用のJPEG復号化ブロックがあれば、該当フィールドに1を設定しリソースを確保する。各リソースが使用中の場合、機能処理指定手段(1006)は各リソースが未使用状態になる、すなわち該当リソースフラグが解除されるのを待ってリソースを確保する。   For example, when a JPEG decoding process is specified, the ReadDMAC resource flag register and the WriteDMAC resource flag register are accessed, and if there is an unused DMAC, it is used for JPEG decoding. Set and secure DMAC resources, access the function processing block resource flag register, refer to the JPEG decoding field, and if there is an unused JPEG decoding block, set the corresponding field to 1 to secure the resource . When each resource is in use, the function processing specifying means (1006) secures the resource after waiting for each resource to be unused, that is, the corresponding resource flag is cleared.

リソース判定レジスタ(1006)にてリソースを確保した後に機能処理指定手段(1006)はスイッチ選択機構(1004)にアクセスする。スイッチ選択機構はスイッチ回路(405)の接続を設定するレジスタを有しており、各フィールドにてリードデータ転送先指定信号(603)、リードデータ転送元指定信号(604)、ライトデータ転送元指定信号(606)、ライトデータ転送先指定信号(605)を生成する。リードデータ転送先指定レジスタはReadDMACの数である2組、リードデータ転送元指定レジスタは機能処理ブロックの数である6組、ライトデータ転送先指定レジスタは機能処理ブロックの数である6組、ライトデータ転送元指定レジスタはWriteDMACの数である2組実装され、それぞれのDMAC、機能処理ブロックに対応する。   After securing the resource in the resource determination register (1006), the function processing designation unit (1006) accesses the switch selection mechanism (1004). The switch selection mechanism has a register for setting the connection of the switch circuit (405). In each field, a read data transfer destination designation signal (603), a read data transfer source designation signal (604), and a write data transfer source designation A signal (606) and a write data transfer destination designation signal (605) are generated. The read data transfer destination designation register is 2 sets, which is the number of ReadDMAC, the read data transfer source designation register is the number of function processing blocks, 6 sets, the write data transfer destination designation register is the number of function processing blocks, 6 sets, Two sets of data transfer source designation registers, which are the number of WriteDMACs, are mounted and correspond to the respective DMAC and function processing blocks.

JPEG復号化処理において、リソース判定レジスタ(1006)を介して確保したリソースがReadDMAC-2、WriteDMAC-1、機能処理ブロック-Cであった場合スイッチ選択機構(1004)内レジスタにて、ReadDMAC-2と機能処理ブロック-C内データ入力IFとWriteDMAC-1と機能処理ブロック-C内データ出力IFの接続を確立する様、ReadDMAC-2に対応するリードデータ転送先指定レジスタ、機能処理ブロック-Cに対応するリードデータ転送元指定レジスタ、ライトデータ転送先指定レジスタ、WriteDMAC-1に対応するライトデータ転送元指定レジスタにDMACの機能処理ブロック間スイッチ接続の設定を行う。機能処理指定手段(1006)はまた機能設定手段(1003)を介して各DMAC、機能処理ブロックに対して設定を行う。機能処理指定手段(1006)に指定された元データ開始アドレス、元データサイズを選択されたReadDMAC-2へ任意の方法でレジスタ設定を行い、結果データ開始アドレスをWriteDMAC-1へ任意の方法でレジスタ設定を行い、また機能処理フィールドが01とJPEG復号化として指定されているため、設定されたJPEG復号化パラメータを任意の方法で機能処理ブロック-Cに対してレジスタ設定を行い、すべての設定完了後にWriteDMAC、機能処理ブロック、ReadDMACの処理開始を指示しデータ転送、JPEG復号化処理を開始する。処理の開始を指示すると機能処理終了判定手段(1001)にて終了判定を行う。機能処理終了判定手段(1001)は、各ReadDMAC、WriteDMAC、機能処理ブロックからの処理終了通知の入力インターフェースを有し、機能処理指定手段(1006)が機能設定手段(1003)を介して機能処理を開始すると、機能処理に使用するReadDMAC、WriteDMAC、機能処理ブロックを判別し、各ブロックからの終了通知を待つ。機能処理の終了はすべての処理の終了で確定し、3ブロックからの終了通知を受け取ると、機能処理終了通知手段(1005)を起動し処理起動元であるCPUに対して割り込みを上げ、処理の終了を通知する。   In the JPEG decoding process, if the resources secured via the resource determination register (1006) are ReadDMAC-2, WriteDMAC-1, and function processing block-C, the register in the switch selection mechanism (1004) reads ReadDMAC-2 And function processing block-C data input IF and WriteDMAC-1 and function processing block-C data output IF in order to establish a connection between the read data transfer destination designation register corresponding to ReadDMAC-2, function processing block-C The DMAC function processing block switch connection is set in the corresponding read data transfer source designation register, write data transfer destination designation register, and write data transfer source designation register corresponding to WriteDMAC-1. The function processing specifying means (1006) also performs setting for each DMAC and function processing block via the function setting means (1003). Set the original data start address and the original data size specified in the function processing specification means (1006) to the selected ReadDMAC-2 using any method, and register the result data start address to WriteDMAC-1 using any method. Since the function processing field is specified as 01 and JPEG decoding, the JPEG decoding parameters that have been set are set for function processing block-C in any way and all settings are completed. Later, writeDMAC, function processing block, and readDMAC process start are instructed to start data transfer and JPEG decoding process. When the start of processing is instructed, the function processing end determination means (1001) determines the end. The function processing end judging means (1001) has an input interface for processing completion notification from each ReadDMAC, WriteDMAC, function processing block, and the function processing specifying means (1006) performs function processing via the function setting means (1003). When started, it determines the ReadDMAC, WriteDMAC, and function processing block used for the function processing, and waits for an end notification from each block. The end of the function process is confirmed at the end of all the processes. When the end notification from the three blocks is received, the function process end notification means (1005) is activated and an interrupt is given to the CPU that is the process start source. Notify the end.

一般的なJPEG復号化処理ブロックの簡易ブロック図であるIt is a simple block diagram of a general JPEG decoding processing block 複数機能処理ハードウエアを実装したシステム構成例であるThis is a system configuration example with multi-function processing hardware 機能処理指定レジスタフィールドの概念図である。It is a conceptual diagram of a function process designation | designated register field. 本実施例のベースとなるシステムのブロック構成図である1 is a block configuration diagram of a system serving as a base of the present embodiment データ転送プロトコルを記す信号波形図であるIt is a signal waveform diagram which describes a data transfer protocol. データ転送接続スイッチの回路簡易ブロック図であるIt is a circuit simplified block diagram of a data transfer connection switch. リードデータ転送接続スイッチの回路簡易ブロック図であるIt is a circuit simplified block diagram of a read data transfer connection switch. ライトデータ転送接続スイッチの回路簡易ブロック図であるIt is a circuit simplified block diagram of a write data transfer connection switch. 図4のシステムに本発明を適用した実施例のブロック構成図である5 is a block configuration diagram of an embodiment in which the present invention is applied to the system of FIG. 機能処理管理制御回路の簡易ブロック図面であるIt is a simplified block diagram of a function processing management control circuit.

符号の説明Explanation of symbols

101 JPEG復号化ブロック
102,401,402 ReadDMAC
103,403,404 WriteDMAC
104 JPEG復号化回路
105,301 メモリデバイス
201,303 CPU
202,302 メモリ制御回路
203 インターフェース回路
204〜209 DMAC込み機能処理ブロック
306 システムバス
405 データ転送接続スイッチ
312〜317 機能処理ブロック
601 リードデータ転送接続スイッチ
602 ライトデータ転送接続スイッチ
603 リードデータ転送先選択信号
604 リードデータ転送元選択信号
605 ライトデータ転送元選択信号
606 ライトデータ転送先選択信号
701 転送先切り替えスイッチ
702 入力切り替えMUX
703 転送元切り替えMUX
704 入力切り替えスイッチ
801 出力切り替えMUX
802 転送元切り替えスイッチ
803 出力切り替えスイッチ
804 転送先切り替えMUX
901 機能処理管理制御回路
1001 機能処理終了判定手段
1002 リソース判定レジスタ
1003 機能設定手段
1004 スイッチ回路選択機構
1005 機能処理終了通知手段
1006 機能処理指定手段
1101 機能処理開始フラグレジスタ
1102 機能処理フィールドレジスタ
1103 元データ開始アドレスレジスタ
1104 元データサイズレジスタ
1105 結果データ開始アドレスレジスタ
1106 機能処理パラメータレジスタ群
101 JPEG decoding block
102,401,402 ReadDMAC
103,403,404 WriteDMAC
104 JPEG decoding circuit
105,301 memory devices
201,303 CPU
202,302 Memory control circuit
203 Interface circuit
204 to 209 DMAC-included function processing block
306 System bus
405 Data transfer connection switch
312 to 317 Function processing block
601 Read data transfer connection switch
602 Write data transfer connection switch
603 Read data transfer destination selection signal
604 Read data transfer source selection signal
605 Write data transfer source selection signal
606 Write data transfer destination selection signal
701 Transfer destination selector switch
702 Input switching MUX
703 Transfer source switching MUX
704 Input selector switch
801 Output switching MUX
802 Transfer source selector switch
803 Output selector switch
804 Transfer destination switching MUX
901 Function processing management control circuit
1001 Function processing end judgment means
1002 Resource judgment register
1003 Function setting method
1004 Switch circuit selection mechanism
1005 Function processing end notification means
1006 Function processing specification method
1101 Function processing start flag register
1102 Function processing field register
1103 Original data start address register
1104 Original data size register
1105 Result data start address register
1106 Function processing parameter registers

Claims (2)

少なくともひとつ以上のCPUと、複数の機能処理ブロックと、複数のDMAコントローラと、メモリデバイス制御回路と、前記機能処理ブロックと前記DMAコントローラの任意の組み合わせ可能なスイッチ回路とから構成され、前記DMAコントローラは一方はメモリ制御回路と接続され、もう一方は前記スイッチ回路を介して任意の機能処理ブロックと接続可能な電子回路において、
機能処理管理機構を有し、
機能処理指定手段と、
前記機能処理管理機構は、
前記スイッチ回路制御手段と、
前記DMAコントローラ制御手段と、
前記機能処理ブロック制御手段と、
機能処理終了判定手段と、
機能処理終了通知手段と、
を有することを特徴とする電子回路。
The DMA controller comprising at least one CPU, a plurality of function processing blocks, a plurality of DMA controllers, a memory device control circuit, and a switch circuit that can be arbitrarily combined with the function processing blocks and the DMA controller. Is connected to a memory control circuit, and the other is an electronic circuit that can be connected to an arbitrary function processing block via the switch circuit.
Has a function processing management mechanism,
Function processing designation means;
The function processing management mechanism is:
The switch circuit control means;
The DMA controller control means;
The function processing block control means;
A function processing end determination means;
A function processing end notification means;
An electronic circuit comprising:
前記機能処理管理機構がCPUにて実現されることを特徴とする請求項1に記載の電子回路。   The electronic circuit according to claim 1, wherein the function processing management mechanism is realized by a CPU.
JP2005208628A 2005-07-19 2005-07-19 Function-processing electronic circuit and its control method Withdrawn JP2007026184A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005208628A JP2007026184A (en) 2005-07-19 2005-07-19 Function-processing electronic circuit and its control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005208628A JP2007026184A (en) 2005-07-19 2005-07-19 Function-processing electronic circuit and its control method

Publications (1)

Publication Number Publication Date
JP2007026184A true JP2007026184A (en) 2007-02-01

Family

ID=37786834

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005208628A Withdrawn JP2007026184A (en) 2005-07-19 2005-07-19 Function-processing electronic circuit and its control method

Country Status (1)

Country Link
JP (1) JP2007026184A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008096626A1 (en) 2007-02-05 2008-08-14 Ntt Docomo, Inc. Base station device
JP2011118666A (en) * 2009-12-03 2011-06-16 Ricoh Co Ltd Information processing device
US8699542B2 (en) 2009-09-04 2014-04-15 Ntt Advanced Technology Corporation Information leakage prevention apparatus and method

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008096626A1 (en) 2007-02-05 2008-08-14 Ntt Docomo, Inc. Base station device
US8699542B2 (en) 2009-09-04 2014-04-15 Ntt Advanced Technology Corporation Information leakage prevention apparatus and method
JP2011118666A (en) * 2009-12-03 2011-06-16 Ricoh Co Ltd Information processing device

Similar Documents

Publication Publication Date Title
JP4426099B2 (en) Multiprocessor device having shared memory
US7724984B2 (en) Image processing apparatus
JP4139771B2 (en) System and method for controlling bus arbitration during a cache memory burst cycle
US6915369B1 (en) Modular and scalable system bus structure
JP2006099774A (en) Data processing method and device, processing system, computer processing system, and computer network
JP2009238252A (en) Control of memory access device in data driven architecture mesh array
JP2006338538A (en) Stream processor
KR20170127420A (en) A microcontroller device having a plurality of independent microcontrollers
KR20170127421A (en) A low-pin microcontroller device with multiple independent microcontrollers
JP2007034392A (en) Information processor and data processing method
CN116880773A (en) Memory expansion device and data processing method and system
US10102161B2 (en) Microcomputer
JP2007026184A (en) Function-processing electronic circuit and its control method
JP5718305B2 (en) Image forming apparatus
JP2008152409A (en) Semiconductor integrated circuit
US8756356B2 (en) Pipe arbitration using an arbitration circuit to select a control circuit among a plurality of control circuits and by updating state information with a data transfer of a predetermined size
JP2005293596A (en) Arbitration of data request
JP3799041B2 (en) VLIW processor
JP2008041059A (en) Multiprocessor controller and information processor
US7254667B2 (en) Data transfer between an external data source and a memory associated with a data processor
JP2007026185A (en) Function-processing electronic circuit
JP2001167058A (en) Information processor
JP2005258509A (en) Storage device
JP2006139766A (en) Information processor
JP4758538B2 (en) Data processing apparatus and control method

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20081007