JP2007206924A - 演算処理システム - Google Patents

演算処理システム Download PDF

Info

Publication number
JP2007206924A
JP2007206924A JP2006024259A JP2006024259A JP2007206924A JP 2007206924 A JP2007206924 A JP 2007206924A JP 2006024259 A JP2006024259 A JP 2006024259A JP 2006024259 A JP2006024259 A JP 2006024259A JP 2007206924 A JP2007206924 A JP 2007206924A
Authority
JP
Japan
Prior art keywords
data
processing
address
input
processed
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
JP2006024259A
Other languages
English (en)
Inventor
Masaru Kawasaki
勝 川崎
Tomohiko Matsumoto
朋彦 松本
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.)
Victor Company of Japan Ltd
Original Assignee
Victor Company of Japan Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Victor Company of Japan Ltd filed Critical Victor Company of Japan Ltd
Priority to JP2006024259A priority Critical patent/JP2007206924A/ja
Publication of JP2007206924A publication Critical patent/JP2007206924A/ja
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Systems (AREA)

Abstract

【課題】DSPサブシステムでは、DSPコアには処理部での処理動作以外に、データ転送指示のためのDMACの動作制御を行う必要があるため、処理速度向上の負荷となっており、高速化の妨げとなっている。
【解決手段】DSPコア11は処理を完了している最終データのアドレスを出力する処理アドレス出力回路12を有する。DMAC13は出力回路12からのアドレスを一定間隔で監視しており、これが入力バッファ14のメモリ領域#2の先頭のアドレスに達したときは、DMAC13がバスアービタ15を制御して入力バッファ14のメモリ領域#1の先頭から新規データを書き込み始める。これと同時に、メモリ領域#3の先頭から処理データを読み出す。DSPコア11は処理データの読み出し、処理のためのデータ書き込みをDMACに指示する必要はなく、DSPコア11の負荷を軽減できる。
【選択図】図1

Description

本発明は演算処理システムに係り、特にディジタル演算処理装置(DSP:Digital Signal Processor)を用いて高速演算処理を行う演算処理システムに関する。
ディジタル信号処理用の1チップ・マイクロセッサであるDSPは、データメモリとして小容量のSRAM(Static Random Access Memory)を接続することが多い。これはDSPが演算処理に特化したアーキテクチャで、かつ、より高速な処理を実現するために高速なメモリ(ランダムアクセスを含む)を要求するためである。また、DSPは汎用の中央処理装置(CPU:Central Processing Unit)と組み合わせたマルチプロセッサシステムとなることが多い(例えば、特許文献1参照)。その理由は、DSPが特定の信号処理ブロックとして扱われ、全体を制御するCPUが必要とされるからである。
図8はマルチプロセッサシステムの一例のブロック図を示す。同図において、システム全体を制御するCPU1は命令用メモリ2が接続されると共にバス3に接続され、更にバス3上にはメインメモリ4と特定の機能を果たす、複数の(ここでは一例として2つの)DSPサブシステム5a、5bが接続されている。通常、バス3上にはメインメモリ4が接続され、処理結果が随時保存される。
DSPサブシステム5a、5bは、演算を行うDSPコア6a、6bが命令用メモリ7a、7bに接続されると共に、データRAM(Random Access Memory)8a、8bと、DMAC(Direct Memory Access Controller)によるバスインタフェース(IF)9a、9bとがバスを介して接続されている。データ用メモリであるRAM8a及び8bは、前述した理由から小容量のSRAMで構成されている。DSPサブシステム5a、5bには処理すべきデータの入出力のためのバスIF9a、9bを装備する必要があり、一般的にはこのバスIF9a、9bにDMACを採用し、DSP処理負荷を軽減している。
従来のバスIF9a、9bはDMACを用いたダブルバッファ方式となっている。これはメモリ領域を2つに分け、1つの領域にDMACが読み込みあるいは書き出しを行う間、別の領域でDSPコア6a、6bが処理を行い、処理が終わると領域を入れ替えるためである。つまり、DSPサブシステム5a、5bでは、バッファ分のデータ入力、処理、出力という動作を繰り返している。
図9は上記のDSPサブシステムの一例の構成図を示す。図9に示す一つのDSPサブシステムは、図8に示したDSPサブシステム5a又は5bを構成しており、入力バッファ81と出力バッファ82の各メモリ領域を2つに分け、1つの領域にDMAC91がデータの書き込み又は読み出しを行う間、もう一方の領域でDSPコア61が処理部62により処理を行わせ、処理が終わるとメモリ領域に対する動作を入れ替えるダブルバッファ方式を採用している。このDSPサブシステムでは、バッファ分のデータ入力、処理、出力という動作を繰り返している。
図9において、入力バッファ81及び出力バッファ82は、図8のデータRAM8a(又は8b)に相当し、DSPコア61、処理部62、処理部62の入力側スイッチSW2及び出力側スイッチSW3は、図8のDSPコア6a(又は6b)に相当し、DMAC91、入力バッファ81の入力側スイッチSW1及び出力バッファ82の出力側スイッチSW4は、図8のバスIF9a(又は9b)に相当する。
次に、このDSPサブシステムの動作について図10のタイミングチャーチと共に説明する。DSPコア61が処理部62での処理を開始させるのに先立ち、DMAC91に処理1に必要なデータを入力バッファ81の領域#1へ転送するように指示する。DSPコア61は図10(A)にa1で模式的に示すように、スイッチSW1を通して入力バッファ81の一方のメモリ領域#1にデータが一杯に書き込まれるまで待ってから(Fill待ちしてから)、処理部62が領域#1からデータを読み出し、処理結果を出力バッファ82の一方のメモリ領域#3に書き込めるよう、DSPコア61がSW2及びSW3を切り替える。SWの切り替えとは、具体的には処理部62が読み書きするアドレスをDSPコア61が指定することで行う。
図10(A)のa2はDSPコア61によるスイッチSW2に対してメモリ領域#1のデータを処理部62へ出力させる転送指示を示し、同図(A)のa3は処理部62によるメモリ領域#1からのデータに対する処理動作(この場合、処理0)を示す。また、図10(B)のb1は入力バッファ81のメモリ領域#1へのデータ転送状態を示し、同図(B)のb2はメモリ領域#1に処理0用のデータが格納されている状態を示す。
また、DSPコア61は上記の処理部62によりメモリ領域#1のデータに対する処理0の処理を開始させる前に、処理0に続く処理1用のデータを入力バッファ81のもう一方のメモリ領域#2へ転送するようにDMAC91に指示する。DSPコア61からDMAC91への指示とは、具体的にはDMAC91の設定レジスタに開始アドレス、転送回数等をDSPプログラムによって設定することである。これにより、処理部62が処理0を行っている間、図10(C)にc1で示すように、DMAC91によりスイッチSW1を通して入力バッファ81のメモリ領域#2へ処理1用の新規のデータが入力される。処理0の実行中、メモリ領域#2にはデータが一杯に蓄えられる。
処理部62によるメモリ領域#1のデータに対する処理0の処理結果が、図10(D)にd1で模式的に示すように、出力バッファ82の一方のメモリ領域#3に溜まりきると、DSPコア61はSW1、SW2、SW3及びSW4をそれまでとは反対側に一斉に切り替える。
すなわち、DSPコア61は図10(A)にa4で示すように、メモリ領域#3に蓄えられた処理0の処理結果を外部へ転送するようにDMAC91に転送指示を行うと共に、スイッチSW2を領域#1の出力側から領域#2の出力側へ切り替え、かつ、スイッチSW3を領域#3の入力側から領域#4の入力側へ切り替える。また、このとき、DMAC91はスイッチSW1を領域#2の入力側から領域#1の入力側へ切り替え、かつ、スイッチSW4を領域#4の出力側から領域#3の出力側へ切り替える。これにより、出力バッファ82のメモリ領域#3に蓄えられた処理0の処理結果は、図10(D)にd2で示すようにスイッチSW4を通して外部へ転送され始める。
続いて、DSPコア61はメモリ領域#2に蓄積され終わった処理1用のデータの処理部62への入力転送を図10(A)にa5で示すように行って処理部62により処理1の処理を開始させるが、その前に次の処理2用のデータを入力バッファ81のメモリ領域#1へ転送するようにDMAC91に指示する。これにより、図10(C)にc2で示すように、メモリ領域#2に処理1用のデータが蓄積されている状態において、処理部62が同図(A)にa6で模式的に示すように、処理1用のデータに対して処理1を行っている間、同図(B)にb3で示すように、DMAC91によりスイッチSW1を通して入力バッファ81のメモリ領域#1へ処理2用の新規のデータが入力される。また、処理部62による処理1の処理結果は、スイッチSW3を介して図10(E)にe1で示すように、出力バッファ82の領域#4に蓄積される。以下、上記と同様の動作が繰り返される。
なお、上記の例は最も単純な例であり、実際には2系統以上の入力、2系統以上の出力となる場合が多く、SWの切り替えはさらに多く複雑になる。
特許第2510278号公報
図8〜図10と共に説明したように、従来の演算処理システムの一例であるDSPサブシステムでは、DSPコア6a、6bには処理部62での処理動作以外に、データ転送指示のためのDMAC9a、9bの動作制御を行う必要があるため、処理速度向上の負荷となっており、DSPでの高速処理を追求していくと、このDMAC制御(バッファ管理)は高速化の妨げとなっている。
本発明は以上の点に鑑みなされたもので、DMAC制御によるDSP負荷を最小限に抑え,高速化を実現する演算処理システムを提供することを目的とする。
本発明は上記の目的を達成するため、ディジタル演算処理装置を用いてデータの演算処理を行う演算処理システムであって、処理すべき入力データを一時記憶する入力記憶手段と、入力記憶手段から順次に出力されるデータに対して、ディジタル演算処理装置による所望のデータ処理を行うデータ処理手段と、データ処理手段により処理が完了している最終データの処理アドレスを出力する処理アドレス出力手段と、処理アドレス出力手段から出力される処理アドレスを監視し、処理アドレスが、入力記憶手段を複数の領域に分割したときに、それまでデータ処理されていたデータが記憶されていた分割領域とは別の分割領域のアドレスに移行した時に、入力記憶手段の複数の分割領域のうち、別の分割領域以外の分割領域に新たな処理すべき入力データを一時記憶させる、DMACによるインタフェース手段とを有することを特徴とする。
この発明では、データ処理手段に処理アドレス出力手段を設け、かつ、インタフェース手段が処理アドレスを認識してデータ処理手段の入出力制御を自己判定する機能を有するようにしたため、データ処理手段によるインタフェース手段に対する処理データの読み出し、処理のためのデータ書き込みの指示を不要にできる。
また、上記の目的を達成するため、本発明は、処理すべき入力データを一時記憶する入力記憶手段と、入力記憶手段から順次に出力されるデータに対して、ディジタル演算処理装置による所望のデータ処理を行うデータ処理手段と、データ処理手段により処理が完了している最終データの処理アドレスを格納するアドレス値記憶手段と、アドレス値記憶手段から任意に設定した時間間隔で処理アドレスを読み出し、その読み出した処理アドレスが、入力記憶手段を複数の領域に分割したときに、それまでデータ処理されていたデータが記憶されていた分割領域とは別の分割領域のアドレスに移行した時に、入力記憶手段の複数の分割領域のうち、別の分割領域以外の分割領域に新たな処理すべき入力データを一時記憶させる、DMACによるインタフェース手段とを有することを特徴とする。
この発明では、処理を完了している最終データの処理アドレスをアドレス値記憶手段に書き込んで、それをインタフェース手段が読み出し、読み出した処理アドレスがそれまでデータ処理されていたデータが記憶されていた分割領域とは別の分割領域のアドレスに移行した時に、入力記憶手段の複数の分割領域のうち、別の分割領域以外の分割領域に新たな処理すべき入力データを一時記憶させる、入出力制御を自己判定する機能をインタフェース手段に設けることにより、データ処理手段は処理のみを連続して行うため、負荷を軽減できる。
また、上記の目的を達成するため、上記の発明における入力記憶手段に替えて、処理すべき入力データを一時記憶すると共に、データ処理手段により処理された処理済みのデータを一時記憶する入出力記憶手段を設けてもよく、この場合は、上記のインタフェース手段は、入出力記憶手段を複数の領域に分割し、複数の分割領域のうち、データ処理手段へデータが出力される第1の分割領域のデータ出力済みの領域部分にデータ処理手段で処理された処理済みのデータを一時記憶させた後、外部へ第1の分割領域内の処理済みのデータを読み出し、第1の分割領域以外の第2の分割領域に、第1の分割領域からのデータのデータ処理期間及び外部へのデータ出力期間中に新たなデータを入力して一時記憶させることを特徴とする。
本発明によれば、ディジタル演算処理装置によるデータ処理手段の処理アドレスを、DMACによるインタフェース手段が読み出して認識し、入出力制御を自己判定する機能を設けることにより、ディジタル演算処理装置が従来行っていたDMACによるインタフェース手段に対する処理データの読み出し、処理のためのデータの書き込みの指示を不要にするようにしたため、ディジタル演算処理装置の負荷を軽減でき、その処理速度を従来に比べて向上することができる。
また、本発明によれば、インタフェース手段が読み出す、処理を完了している最終データのアドレス値を、ディジタル演算処理装置の処理プログラムにより実装できるため、ディジタル演算処理装置(DSPコア)の変更を伴わず、処理速度の向上の実現が容易となる。
次に、本発明の実施の形態について図面と共に説明する。
(第1の実施の形態)
図1は本発明になる演算処理システムの第1の実施の形態のブロック図を示す。この実施の形態は一つのDSPサブシステムを構成しており、DSPコア11、処理アドレス出力回路12、転送開始判断機能内蔵DMAC13、入力バッファ14、バスアービタ15及び出力バッファ16から構成されている。入力バッファ14はメモリ領域を#1と#2の2つに分けて使用され、同様に、出力バッファ16もメモリ領域を#3と#4の2つに分けて使用される。
DSPコア11と処理アドレス出力回路12とは、例えば図2のブロック図に示す構成とされている。DSPコア11はプログラムを実行するために複数の汎用レジスタ110〜113と、複数のループ(Loop)レジスタ114、115を有しており、処理アドレス出力回路12を構成するセレクタ121でどのレジスタ値を出力するかを選択できるようにしている。処理プログラムは、ここで選択されたレジスタに処理アドレスが入るように作成する。なお、処理アドレス出力回路12はループレジスタを選択し、その値をそのまま出力するのではなく、レジスタの値が例えば”0”になったら、ある信号を出力する回路でもよい。
次に、本実施の形態の動作について説明する。いま、入力バッファ14のメモリ領域#1及び#2には、既に新規のデータが溜まっており、出力バッファ16メモリ領域#3及び#4には処理データが全くない状態とする。DSPコア11はバスアービタ15に対して、入力バッファ14の先頭(メモリ領域#1の先頭)のデータから順に処理していき、その処理結果を出力バッファ16にメモリ領域#3から順次に書き込んでいく処理制御を行う。
DSPコア11は処理を完了している最終データのアドレスを出力する処理アドレス出力回路12を持っており、これが転送開始判断機能内蔵DMAC13へ常に処理アドレスを出力しておく。転送開始判断機能内蔵DMAC13はこのアドレスを一定間隔で監視しており、これが入力バッファ14のメモリ領域#2の先頭のアドレスに達したときは、当該DMAC13がバスアービタ15を制御して入力バッファ14のメモリ領域#1の先頭から新規データを書き込み始める。
また、これと同時に、処理を完了している最終データのアドレスが入力バッファ14のメモリ領域#2の先頭のアドレスに達したときは、出力バッファ16の書き込みのアドレスはメモリ領域#4の先頭に達しており、メモリ領域#3内には処理データが書き込み終わっているので、メモリ領域#3の先頭から処理データを読み出す。DMAC13はこれらの転送開始を自己判断できる機能を持っている。
処理が進み、転送開始判断機能内蔵DMAC13が監視している処理アドレスが入力バッファ14のメモリ領域#1の先頭に戻ると、転送開始判断機能内蔵DMAC13が入力バッファ14のメモリ領域#2の先頭から新規データの書き込みを開始し、出力バッファ16のメモリ領域#4の先頭から処理データの読み出しを開始する。以降上記の動作を繰り返す。
このように、本実施の形態によれば、DSPコア11に処理アドレス出力回路12を設け、かつ、DMAC13が処理アドレスを認識してバスアービタ15の入出力制御を自己判定する機能を有するようにしたため、DSPコア11は従来のように処理データの読み出し、処理のためのデータ書き込みをDMACに指示する必要はなく、DSPコア11の負荷を軽減できるため、DSP処理速度を向上できる。
(第2の実施の形態)
図3は本発明になる演算処理システムの第2の実施の形態のブロック図を示す。同図中、図1と同一構成部分には同一符号を付してある。図3の第2の実施の形態は、入力バッファと出力バッファとを共通化した、入出力バッファ18を設けた点に特徴がある。この実施の形態では、入出力バッファ18を2つのメモリ領域#1と#2に分け、一方をデータ書き込み動作させ、他方を読み出し動作させ、かつ、それを交互に切り替える動作を行う。
この実施の形態の動作について説明する。いま、入出力バッファ18の領域#1及び#2には、既に新規のデータが埋まっている状態とする。バスアービタ15は、転送開始制御機能内蔵DMAC13の入出力制御に基づき、入出力バッファ18の先頭(メモリ領域#1の先頭)のデータから順次に読み出して処理していき、その処理結果をメモリ領域#1内の不要となった部分に書き込んでいく。
DMAC13が監視しているバスアービタ15の処理アドレスが、入出力バッファ18のメモリ領域#2の先頭に達すると、入出力バッファ18のメモリ領域#1内には、その直前にメモリ領域#1内に格納されていたすべての新規データに対してバスアービタ15により処理された処理結果が格納されているので、DMAC13がバスアービタ15を制御して入出力バッファ18のメモリ領域#1から処理データを外部へ読み出し、その読み出し終了後、メモリ領域#1に次の新規データを書き込む。
上記のメモリ領域#1からの処理結果の外部への読み出しと、次の新規データのメモリ領域#1への書き込みの期間中は、入出力バッファ18のメモリ領域#2の先頭から読み出された新規データに対するバスアービタ15とDSPコア11による処理と、その処理結果のメモリ領域#2の既にデータが読み出された領域部分への書き込み処理とが行われている。
そして、処理が進み、DMAC13が監視しているバスアービタ15の処理アドレスが、メモリ領域#2の最後からメモリ領域#1の先頭に戻ると、入出力バッファ18のメモリ領域#2内には、その直前にメモリ領域#2内に格納されていたすべての新規データに対して処理された処理結果が格納されているので、DMAC13がバスアービタ15を制御して入出力バッファ18のメモリ領域#2から処理データを外部へ読み出し、その読み出し終了後、メモリ領域#2に次の新規データを書き込む。
また、上記のメモリ領域#2からの処理結果の外部への読み出しと、次の新規データのメモリ領域#2への書き込みとが行われている期間中は、入出力バッファ18のメモリ領域#1の先頭から読み出された新規データに対するバスアービタ15とDSPコア11による処理と、その処理結果のメモリ領域#1の既にデータが読み出された領域部分への書き込み処理とが行われている。以下、上記と同様の動作が繰り返される。
このように、本実施の形態も、第1の実施の形態と同様に、DSPコア11は従来のように処理データの読み出し、処理のためのデータ書き込みをDMACに指示する必要はなく、DSPコア11の負荷を軽減できるため、DSP処理速度を向上できる。
(第3の実施の形態)
図4は本発明になる演算処理システムの第3の実施の形態のブロック図を示す。この実施の形態は一つのDSPサブシステムを構成しており、DSPコア21、高機能DMAC22、入力バッファ23、バスアービタ24及び出力バッファ25から構成されている。入力バッファ23はメモリ領域を#1と#2の2つに分けて使用され、同様に、出力バッファ25もメモリ領域を#3と#4の2つに分けて使用される。
図5は高機能DMAC22の一実施の形態の構成図を示す。高機能DMAC22は本実施の形態の特徴の一つである。高機能DMAC22は、通常のDMACの持つデータ転送機能部224のほかに、読み出し間隔設定レジスタ220を備えた処理アドレス読み出し機能部221と、最終転送領域記憶レジスタ222を備えた転送開始判定機能部223とを有する。
処理アドレス読み出し機能部221は、一定間隔で入力バッファ23内の特定アドレス(ここでは、メモリ26のアドレス)にアクセスし、そこの値を読み出す機能部である。読み出し間隔は読み出し間隔設定レジスタ220のレジスタ値によって自由に変えられる。この読み出し間隔設定レジスタ220のレジスタ値は処理速度と同調するよう、DSPコア21が設定する。
転送開始判定機能部223は、最後に転送を行った領域を記憶しており読み出したアドレス値と比較して次の転送が行えるかを判断する機能部であり、メモリ26からの処理アドレスに基づいてデータ転送機能部224の転送制御を行う。データ転送機能部224は、指定された領域に書き込み、あるいは読み出しといった転送を行う機能部であり、バスアービタ24に対して入出力制御を行う。
次に、本実施の形態の動作について図6のタイミングチャートと共に説明する。入力バッファ23のメモリ領域#1及び#2、出力バッファ25のメモリ領域#3及び#4はそれぞれ128バイトの容量を持つ例で説明する。DSPコア21がバスアービタ24により処理を開始させるのに先立ち、高機能DMAC22が各1バイトの処理0用データD0からデータD127を入力バッファ23の領域#1へ図6(C)にc11で示すように転送制御する。
入力バッファ23の領域#1への処理0用データの転送完了後、図6(A)にa11で模式的に示すように、DSPコア21によりバスアービタ24が入力バッファ23の領域#1の先頭のアドレスから処理0用データの先頭のデータD0から順に処理していく(処理0)。このときは、入力バッファ23は、領域#1に図6(C)にc12で示すように処理0用データが格納されている状態にある。また、バスアービタ24とDSPコア21による処理0の処理結果は、出力バッファ25のメモリ領域#3の先頭のアドレスから順に書き込んでいく。図6(E)のe11は上記のメモリ領域#3に処理0の処理結果が書き込まれる状態を模式的に示す。
ここで、DSPコア21はバスアービタ24で処理を完了する分割領域の最終データのアドレス値(処理アドレス)を、予め入力バッファ23の特定位置(アドレス)であるメモリ26内に書き込んでおく。データの入出力、つまりバッファリングにはこの位置(アドレス)は使用しない。この機能はDSPコア21のハードウェア変更を必要とせず、DSP処理プログラムのみの変更で可能となる。
高機能DMAC22はメモリ26のデータ(処理アドレス)を一定間隔で読み出す機能を持っている。読み出し間隔は処理速度と関連し、DSPコア21がこれを設定する。処理が進むにつれて、処理アドレスは図6(B)に示すように変化する。高機能DMAC22は、読み出した処理アドレスの値が、入力バッファ23のメモリ領域#2内のアドレス”A0”を示したタイミングで、次の処理1用データD128からデータD255を、図6(D)にd11で模式的に示すように、入力バッファ23の領域#2へ転送して書き込む。
処理が進み、高機能DMAC22は処理アドレスがメモリ26から読み出したメモリ領域#1のデータの最終アドレスである”A127”となると、そのタイミングで入力バッファ23のメモリ領域#1のデータD0〜D127のデータ処理(処理0)が完了したと判断して、バスアービタ24の入力を入力バッファ23のメモリ領域#2からのデータに切り替え、かつ、バスアービタ24の出力を出力バッファ25の領域#4へと切り替えることで、DSPコア21は連続して処理を実行する。
また、続く処理アドレス”A128”のタイミングで、入力バッファ23のメモリ領域#1は空状態、出力バッファ25のメモリ領域#3はフル状態になるため、高機能DMAC22はこれを判断し、出力バッファ25のメモリ領域#3の処理0の処理結果の外部への出力転送を図6(E)にe12で示すように行い、かつ、入力バッファ23のメモリ領域#1へのD128からデータD255の処理1用データの入力転送を図6(C)にc13で示すように行う。
入力バッファ23の領域#2へのD128からデータD255の処理1用データの転送完了後、図6(A)にa12で模式的に示すように、DSPコア21によりバスアービタ24が入力バッファ23の領域#2の先頭のアドレスから処理1用データの先頭のデータD128から順に処理していく(処理1)。このときは、入力バッファ23は、領域#2に図6(D)にd12で示すように処理1用データが格納されている状態にある。また、処理1の処理結果は、出力バッファ25のメモリ領域#4の先頭のアドレスから順に書き込んでいく。図6(F)のf11は上記のメモリ領域#4に処理1の処理結果が書き込まれる状態を模式的に示す。
以降、上記と同様に、高機能DMAC22は入力転送及び出力転送を処理アドレスから判断し、実行する動作を繰り返す。このように、本実施の形態によれば、処理を完了している最終データのアドレス値をメモリ26に書き込んでおき、それを高機能DMAC22が読み出し、DSPコア21の処理アドレスに一致するかどうか判定し、その判定結果に基づいて入出力制御を自己判定する機能を設けることにより、DSPコア21は処理のみを連続して行うため、DSP負荷を軽減でき、その結果DSP処理速度の向上が図れる。また、処理アドレスの出力手段は、DSP処理プログラムにより実装できるため、DSPコア21の変更を伴わず実現が容易となる。
(第4の実施の形態)
図7は本発明になる演算処理システムの第4の実施の形態のブロック図を示す。同図中、図4と同一構成部分には同一符号を付してある。図7の第4の実施の形態は、入力バッファと出力バッファとを共通化した、入出力バッファ28を設けた点に特徴がある。また、入出力バッファ28には処理アドレスを格納するメモリ29も設けられている。この実施の形態では、入出力バッファ28を2つのメモリ領域#1と#2に分け、一方をデータ書き込み動作させ、他方を読み出し動作させ、かつ、それを交互に切り替える動作を行う。
この実施の形態の動作について説明する。いま、入出力バッファ28のメモリ領域#1及び#2には、既に新規のデータが埋まっている状態とする。バスアービタ24は入出力バッファ28の先頭(メモリ領域#1の先頭)のデータから順に処理していき、その処理結果をメモリ領域#1内の不要となった部分に書き込んでいく。
高機能DMAC27が監視している処理アドレスが、メモリ領域#2の値に達したことを高機能DMAC27が判断すると、高機能DMAC27自らがメモリ領域#1から処理データを読み出し、その後メモリ領域#1に新規データを読み込む。処理が進み高機能DMAC27が監視しているメモリ29からの処理アドレスがメモリ領域#1の先頭の値に戻ると、高機能DMAC27がメモリ領域#2から処理データが読み出され、メモリ領域#2に新規データを読み込む。以降これを繰り返す。
本実施の形態も以上の各実施の形態と同様に、DSPコア21は従来のように処理データの読み出し、処理のためのデータ書き込みをDMACに指示する必要はなく、DSPコア21の負荷を軽減できるため、DSP処理速度を向上できる。
なお、本発明は以上の実施の形態に限定されるものではなく、例えば、入力バッファ14、23、出力バッファ16、25、入出力バッファ18、28を、メモリ領域を2分割した場合で説明したがメモリ領域の分割数はこれに限らないことは勿論である。
本発明の演算処理システムの第1の実施の形態のブロック図である。 図1中のDSPコアと処理アドレス出力回路の一例の構成図である。 本発明の演算処理システムの第2の実施の形態のブロック図である。 本発明の演算処理システムの第3の実施の形態のブロック図である。 図4中の高機能DMACの一例の機能説明図である。 図4の動作説明用タイミングチャートである。 本発明の演算処理システムの第4の実施の形態のブロック図である。 マルチプロセッサシステムの一例のブロック図である。 図8の要部の構成説明図である。 図8、図9の動作説明用タイミングチャートである。
符号の説明
11、21 DSPコア
12 処理アドレス出力回路
13 転送開始判断機能内蔵DMAC
14、23 入力バッファ
15、24 バスアービタ
16、25 出力バッファ
18、28 入出力バッファ
22、27 高機能DMAC
26、29 処理アドレス記憶用メモリ


Claims (3)

  1. ディジタル演算処理装置を用いてデータの演算処理を行う演算処理システムであって、
    処理すべき入力データを一時記憶する入力記憶手段と、
    前記入力記憶手段から順次に出力されるデータに対して、前記ディジタル演算処理装置による所望のデータ処理を行うデータ処理手段と、
    前記データ処理手段により処理が完了している最終データの処理アドレスを出力する処理アドレス出力手段と、
    前記処理アドレス出力手段から出力される前記処理アドレスを監視し、該処理アドレスが、前記入力記憶手段を複数の領域に分割したときに、それまでデータ処理されていたデータが記憶されていた分割領域とは別の分割領域のアドレスに移行した時に、前記入力記憶手段の前記複数の分割領域のうち、該別の分割領域以外の分割領域に新たな処理すべき入力データを一時記憶させる、DMACによるインタフェース手段と
    を有することを特徴とする演算処理システム。
  2. ディジタル演算処理装置を用いてデータの演算処理を行う演算処理システムであって、
    処理すべき入力データを一時記憶する入力記憶手段と、
    前記入力記憶手段から順次に出力されるデータに対して、前記ディジタル演算処理装置による所望のデータ処理を行うデータ処理手段と、
    前記データ処理手段により処理が完了している最終データの処理アドレスを格納するアドレス値記憶手段と、
    前記アドレス値記憶手段から任意に設定した時間間隔で前記処理アドレスを読み出し、その読み出した処理アドレスが、前記入力記憶手段を複数の領域に分割したときに、それまでデータ処理されていたデータが記憶されていた分割領域とは別の分割領域のアドレスに移行した時に、前記入力記憶手段の前記複数の分割領域のうち、該別の分割領域以外の分割領域に新たな処理すべき入力データを一時記憶させる、DMACによるインタフェース手段と
    を有することを特徴とする演算処理システム。
  3. 前記入力記憶手段に替えて、前記処理すべき入力データを一時記憶すると共に、前記データ処理手段により処理された処理済みのデータを一時記憶する入出力記憶手段を設け、
    前記インタフェース手段は、前記入出力記憶手段を複数の領域に分割し、複数の分割領域のうち、前記データ処理手段へデータが出力される第1の分割領域のデータ出力済みの領域部分に前記データ処理手段で処理された処理済みのデータを一時記憶させた後、外部へ該第1の分割領域内の処理済みのデータを読み出し、前記第1の分割領域以外の第2の分割領域に、前記第1の分割領域からのデータのデータ処理期間及び外部へのデータ出力期間中に新たなデータを入力して一時記憶させることを特徴とする請求項1又は2記載の演算処理システム。

JP2006024259A 2006-02-01 2006-02-01 演算処理システム Withdrawn JP2007206924A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006024259A JP2007206924A (ja) 2006-02-01 2006-02-01 演算処理システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006024259A JP2007206924A (ja) 2006-02-01 2006-02-01 演算処理システム

Publications (1)

Publication Number Publication Date
JP2007206924A true JP2007206924A (ja) 2007-08-16

Family

ID=38486351

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006024259A Withdrawn JP2007206924A (ja) 2006-02-01 2006-02-01 演算処理システム

Country Status (1)

Country Link
JP (1) JP2007206924A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009134635A (ja) * 2007-11-30 2009-06-18 Renesas Technology Corp マルチプロセッサシステム
CN102230374A (zh) * 2011-06-13 2011-11-02 电子科技大学 一种基于485总线的井下程序远程更新装置
JP2015032008A (ja) * 2013-07-31 2015-02-16 株式会社東芝 ディジタルシグナルプロセッサによるメモリ転送装置およびディジタルシグナルプロセッサによるメモリ転送方法
US12026109B2 (en) 2020-12-16 2024-07-02 Samsung Electronics Co., Ltd. Operating method of transaction accelerator, operating method of computing device including transaction accelerator, and computing device including transaction accelerator

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009134635A (ja) * 2007-11-30 2009-06-18 Renesas Technology Corp マルチプロセッサシステム
CN102230374A (zh) * 2011-06-13 2011-11-02 电子科技大学 一种基于485总线的井下程序远程更新装置
CN102230374B (zh) * 2011-06-13 2013-06-05 电子科技大学 一种基于485总线的井下程序远程更新装置
JP2015032008A (ja) * 2013-07-31 2015-02-16 株式会社東芝 ディジタルシグナルプロセッサによるメモリ転送装置およびディジタルシグナルプロセッサによるメモリ転送方法
US12026109B2 (en) 2020-12-16 2024-07-02 Samsung Electronics Co., Ltd. Operating method of transaction accelerator, operating method of computing device including transaction accelerator, and computing device including transaction accelerator

Similar Documents

Publication Publication Date Title
JP4820566B2 (ja) メモリアクセス制御回路
JP2545482B2 (ja) インタ―フェイス装置の転送パラメ―タ設定方法
US7724984B2 (en) Image processing apparatus
US20130036426A1 (en) Information processing device and task switching method
JPH05173932A (ja) データ転送装置
JP5287301B2 (ja) ディスクリプタ転送装置、i/oコントローラ、及びディスクリプタ転送方法
JP2007206924A (ja) 演算処理システム
JP6294732B2 (ja) データ転送制御装置及びメモリ内蔵装置
JP2003281074A (ja) ダイレクトメモリアクセス装置
JP2005182538A (ja) データ転送装置
JP4869301B2 (ja) 画像処理装置
JP4408113B2 (ja) 信号処理方法
JP2000148478A (ja) 中央処理装置及び中央処理システム
JP2011118744A (ja) 情報処理装置
JP2008102599A (ja) プロセッサ
US5034886A (en) Computer system for reducing number of dedicated registers using memory stock and sharing of address and general purpose registers
JP2000227895A (ja) 画像データ転送装置および画像データ転送方法
JP2004118300A (ja) Dmaコントローラ
JPH01273132A (ja) マイクロプロセッサ
JP2006099335A (ja) コンテキスト処理装置
JP2002268876A (ja) パイプライン処理方法、及び情報処理装置
JPS584449A (ja) 命令バッファ制御方式
JP2000357152A (ja) Dma制御装置とその制御方法
JP5213394B2 (ja) 画像転送装置
JPH10334038A (ja) データ転送装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Effective date: 20080930

Free format text: JAPANESE INTERMEDIATE CODE: A621

A761 Written withdrawal of application

Effective date: 20100303

Free format text: JAPANESE INTERMEDIATE CODE: A761