JP2013242816A - Dspカード及びデータ転送方法 - Google Patents
Dspカード及びデータ転送方法 Download PDFInfo
- Publication number
- JP2013242816A JP2013242816A JP2012117027A JP2012117027A JP2013242816A JP 2013242816 A JP2013242816 A JP 2013242816A JP 2012117027 A JP2012117027 A JP 2012117027A JP 2012117027 A JP2012117027 A JP 2012117027A JP 2013242816 A JP2013242816 A JP 2013242816A
- Authority
- JP
- Japan
- Prior art keywords
- data
- transfer
- dsp
- dsps
- series
- 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
Landscapes
- Bus Control (AREA)
Abstract
【課題】各DSP及び全体での信号処理性能を損なうことのない、効率的なデータ転送を実行するDSPカード、及びデータ転送方法を得る。
【解決手段】DSPの外部に設けられた外部記憶装置に一時記憶された大規模・大量な処理対象のデータを複数のDSPで処理するために分割してそれぞれのDSPの内部メモリにDMA転送する際に、まず、データの転送条件となる転送制御情報を、転送先のDSPのそれぞれに対応させて複数個、まとめてDMAC内のレジスタに設定する。そして転送が開始され、ひとつのDSPへのデータ転送が終了すると、各転送制御情報内に設けられた次回転送指令情報で指定された次の転送制御情報によるデータ転送を順次連続して実行するとともに、これら順次連続したデータ転送が完了後に、各DSPによる所定の信号処理を実行する。
【選択図】 図1
【解決手段】DSPの外部に設けられた外部記憶装置に一時記憶された大規模・大量な処理対象のデータを複数のDSPで処理するために分割してそれぞれのDSPの内部メモリにDMA転送する際に、まず、データの転送条件となる転送制御情報を、転送先のDSPのそれぞれに対応させて複数個、まとめてDMAC内のレジスタに設定する。そして転送が開始され、ひとつのDSPへのデータ転送が終了すると、各転送制御情報内に設けられた次回転送指令情報で指定された次の転送制御情報によるデータ転送を順次連続して実行するとともに、これら順次連続したデータ転送が完了後に、各DSPによる所定の信号処理を実行する。
【選択図】 図1
Description
本発明の実施形態は、複数のディジタルシグナルプロセッサが実装されたDSPカード、及びこのDSPカード内でディジタルシグナルプロセッサの外部にあるメモリからそれぞれのディジタルシグナルプロセッサの内部メモリにデータを転送するデータ転送方法に関する。
ディジタルシグナルプロセッサ(以下、DSPと表す)は信号処理に特化したプロセッサであり、従来はハードウェアで実現していた各種の信号処理機能をソフトウェア化してきた。DSPでは使用可能な内部メモリ資源が乏しく、例えばCPU(中央演算装置)のように、OS(Operating System)等の基本ソフトウェアを利用したり、複雑な処理を実行させたりすることが難しい。また、DSPによる信号処理では、内部メモリ上にあるデータを処理対象としたときに十分な処理性能が発揮される。しかし、DSPは元々十分なメモリ領域を有していないことが多く、大規模・大量なデータを一つの処理単位としてDSPに処理させることは容易ではない。
一方、DSPの適用分野が拡大するにつれ、大量のデータを短時間で処理することが求められるようになってきた。このため、処理対象の大規模なデータをいったんDSPの外部に設けたメモリに保存した後、データバスを経由して複数のDSPの内部メモリにそのメモリサイズに合わせて転送し信号処理を施せるように、共通のデータバスに接続された複数のDSPと、処理対象となる大量のデータを一時記憶するための外部メモリとを一枚の基板に実装したDSPカードが構成され使用されるようになった。
このような構成のDSPカードを用いることによって、例えば単位時間あたりの発生量が非常に多い処理データ等も、外部メモリのサイズに応じて処理可能になり、各DSPには単機能化された信号処理を割り付けるとともに、信号処理の規模に応じてこのようなDSPカードを複数枚用いることで、種々の信号処理機能を実現している。
ところで、この種のDSPカードでは、上記したように処理対象データをいったん外部メモリに保存した後、共通のデータバスを経由して各DSPにデータを転送するが、このデータ転送の際、転送に用いられるデータバスは高負荷で使用されることになり、データ規模が増大するとその傾向は一層強まる。また、例えば各DSPが備えているDMA(Direct Memory Access)機能を用いて高速転送を行うにしても、複数のDSP間で排他制御を行いながら高速転送を維持するのは非常に難しい。
このように、DSPに本来の処理性能を発揮させるには、処理対象のデータを外部メモリからDSPの内部メモリに転送し処理を実行する必要があるが、この転送に際しては、各DSP及び全体での信号処理性能を損なうことのない、効率的なデータ転送を行うことが必要となる。特に大量のデータを処理対象とするなど、データ転送時の負荷が増大した場合でも、データの転送処理についてはその時間的な揺らぎを抑制するとともにできる限り高速かつ短時間で完了させ、DSPの信号処理時間を十分確保することが望まれる。
本発明の実施形態は、上述の事情を考慮してなされたものであり、処理対象の一連のデータを外部メモリに一時記憶後に、これらデータを共通のデータバスに接続された複数のDSPに転送する際に、各DSP及び全体での信号処理性能を損なうことのない、効率的なデータ転送を実行するDSPカード、及びデータ転送方法を提供することを目的とする。
上記目的を達成するために、本実施形態のDSPカードは、固有のデータバスに共通に接続された複数のDSPを有し、処理対象の一連のデータを受信して一時記憶後に、これら一時記憶された一連のデータを前記複数のDSP毎に割り付けるように分割して転送し各DSPにて処理を行うDSPカードであって、前記一連のデータを第1のデータバスから受信し一時記憶する外部記憶装置と、第2のデータバスに共通に接続され、前記一時記憶された一連のデータの中から自身に処理対象として割り付けられたデータをこの第2のデータバスから受けとって内部メモリに格納し処理する複数のDSPと、前記第1のデータバスのプロトコルと前記第2のデータバスのプロトコルとの間を相互に変換するとともに、あらかじめ設定された複数の転送制御情報を保持し、これら複数の転送制御情報に基づいて前記外部記憶装置と前記第2のデータバスとの間のデータ転送を行うプロトコル変換機能と、自カード内で発生する割込み要因を判定するとともに、これら割込み要因の中から前記第1のデータバスを経由して前記外部記憶装置に一時記憶される一連のデータの受信完了を示す受信完了割込み、及び前記外部記憶装置から前記第2のデータバスを経由して前記DSPに転送される一連のデータすべての転送完了を示す転送完了割込みの発生を、あらかじめ定められた前記複数のDSPの中の一のDSPに通知する外部割込み制御部とを備え、前記複数のDSPの中の一のDSPは、前記受信完了割込みの通知を受けると、前記プロトコル変換機能に対して、前記外部記憶装置に記憶された一連のデータを前記第2のデータバス経由で自身を含む前記複数のDSP毎に分割し順次連続して転送するための各DSP毎の前記転送制御情報を設定するとともに、これら複数の転送制御情報に従った各DSPへの連続したデータ転送を開始させ、前記転送完了割込みの通知を受けると、自身を含む前記複数のDSPのそれぞれに対して、前記転送されたデータに対する処理を開始させることを特徴とする。
また、本実施形態のデータ転送方法は、固有のデータバスに共通に接続された複数のDSPを有し、処理対象の一連のデータを受信して一時記憶後に、これら一時記憶された一連のデータを前記複数のDSP毎に割り付けるように分割して転送し各DSPにて処理を行うDSPカード内において、前記一時記憶された一連のデータを前記複数のDSPに分割して転送するデータ転送方法であって、前記DSPカードは、前記一連のデータを第1のデータバスから受信し一時記憶する外部記憶装置と、第2のデータバスに共通に接続され、前記一時記憶された一連のデータの中から自身の処理対象として割り付けられたデータをこの第2のデータバスから受けとって内部メモリに格納し処理する複数のDSPと、前記第1のデータバスのプロトコルと前記第2のデータバスのプロトコルとの間を相互に変換するとともに、あらかじめ設定された複数の転送制御情報を保持し、これら複数の転送制御情報に基づいて前記外部記憶装置と前記第2のデータバスとの間のデータ転送を行うプロトコル変換機能と、自カード内で発生する割込み要因を判定するとともに、これら割込み要因の中から前記第1のデータバスを経由して前記外部記憶装置に一時記憶される一連のデータの受信完了を示す受信完了割込み、及び前記外部記憶装置から前記第2のデータバスを経由して前記DSPに転送される一連のデータすべての転送完了を示す転送完了割込みの発生を、あらかじめ定められた前記複数のDSPの中の一のDSPに通知する外部割込み制御部とを備え、前記複数のDSPの中の一のDSPは、前記外部割込み制御部から前記外部記憶装置に一時記憶される一連のデータの受信完了の割込み発生の通知を受けとり、前記プロトコル変換機能に対して、前記外部記憶装置に一時記憶された一連のデータを分割して前記第2のデータバス経由で自身を含む前記複数のDSPに順次連続転送するための各DSP毎の転送制御情報を設定し、前記プロトコル変換機能に対して、前記複数の転送制御情報に従ったデータ転送の開始を指示し、前記プロトコル変換機能は、前記各DSP毎の転送制御情報に従ったデータ転送を順次実行して、前記各DSPに処理対象として割り付けられたデータを前記外部記憶装置から前記各DSPに順次連続して転送し、前記複数のDSPの中の一のDSPは、前記外部割込み制御部から前記プロトコル変換機能による前記外部記憶装置から各DSPへのすべてのデータの転送完了の割込み通知を受け、自身を含む前記複数のDSPのそれぞれに対して、前記転送されたデータに対する処理の開始を指示するとともに、処理を開始することを特徴とする。
以下に、本実施形態のDSPカード及びデータ転送方法について、図1乃至図7を参照して説明する。
図1は、本実施形態のDSPカードの一例を示すブロック図である。このDSPカード1は、信号処理を行う複数(n)個のDSP11−1〜11−n、外部記憶装置12、バスプロトコル変換機能13、外部割込制御装置14、高速シリアル通信装置15、PCI−VMEブリッジ装置16、及びフラッシュROM17を備えている。
n個のDSP11−1〜11−nは、それぞれに小容量の記憶領域を有する内部メモリ及びDMAコントローラ(DMAC)を備えており、DSPカード1内のデータバスb19に共通に接続されている。そして、外部記憶装置12からの信号処理プログラムやフラッシュROM17からのブート制御プログラム、及び外部記憶装置12からの処理対象のデータを受けとって信号処理を実行する。また、本実施形態においては、n個のDSP11−1〜11−nのうちの一つのDSP、例えばDSP11−1(以下、これを第1のDSPと表す)が、他のDSP(例えば、DSP11−2〜11−n)に対してブート指令を発行するとともに、後述する外部割込制御装置14からの割込み発生の通知を受けとるように構成されているものとしている。なお、その動作については後述する。
外部記憶装置12は、例えばページメモリのような大容量のメモリであり、ホストCPU(図示せず)等の機器からデータバスd21(例えばVMEバス)を経由して転送される各DSPの信号処理プログラムを記憶するとともに、外部の装置(図示せず)から高速シリアル通信装置15を介して送られてくる処理対象の一連のデータを受けとって一時記憶する。
バスプロトコル変換機能13は、例えばFPGA等のプログラマブルロジックデバイスとして機能単位にまとめられており、データバスa18とデータバスb19、ならびに外部記憶装置12及びフラッシュROM17のメモリバスとの間を接続するためのプロトコル変換を行う。また、転送制御情報に基づいて、外部記憶装置12に一時記憶された処理対象の一連のデータを、データバスb19を介して各DSP11−1〜11−nに割り付けるように分割して転送する。本実施形態においては、これらDSPへのデータ転送に際しては、バスプロトコル変換機能13内に設けられたDMAC(DMAコントローラ)131を用いてDMA転送を行うものとしている。
ここに、上記した転送制御情報は、転送先となるn個のDSPそれぞれに対応して設けられており、本実施形態ではDMA転送を用いるので、第1のDSPからバスプロトコル変換機能13内のDMAC131内にある転送条件設定レジスタ群に、DSPの個数であるn個分設定され、保持される。転送制御情報の一例を図2に例示する。図2(a)は、1DSP分の転送制御情報をモデル化して示す図である。この転送制御情報は、転送元アドレス、転送先アドレス、転送サイズ、X増分サイズ、Y増分サイズ、及びコントロールレジスタから構成されている。
転送元アドレスは、該当のDSPに転送すべき外部記憶装置12に一時記憶されたデータの先頭アドレスを示し、転送先アドレスは、このデータの転送先となるDSPのメモリアドレスを示す。転送サイズは、この転送で転送されるデータのサイズを示す。X増分サイズ、及びY増分サイズは、例えば外部記憶装置12のデータを2次元展開し所定の増分で抽出し転送するためのパラメータである。コントロールレジスタは、次回転送指令ビット、及び転送開始ビットを含む制御用のデータレジスタである。
図2(b)にコントロールレジスタの構成の一例を示す。次回転送指令ビットは、DSPの個数に対応してDMAC131内に設定されたn個の転送制御情報を順次連続して実行させるための制御情報である。図2(b)の事例では、次に連続して実行すべき転送制御情報をDSPの番号順にLSB側からの各ビットに割り当てるものとしている。そして、対象のビットをONにすることにより、次のDSPに対する転送制御情報にチェインさせDMAによるデータ転送を連続させている。また、転送開始ビットは、この転送制御情報を用いたDMAC131によるDMA転送を開始させるための制御ビットであり、図2(b)の事例では、このコントロールレジスタのMSBに割り当てている。
一例として、DSP数が5個の場合における、転送制御情報を用いた外部記憶装置12から各DSPへのDMAによるデータ転送について、図3乃至図5の説明図を参照して詳述する。
図3(a)に例示したように、転送の開始に際しては、まず第1のDSP(例えばDSP(#1))から、図2に示した転送制御情報が複数個、この事例では5個の転送制御情報がDMAC131に設定され保持される。これら転送制御情報には、外部記憶装置12に一時記憶された一連のデータを5個のDSPに分割して転送するよう、転送先の各DSPに対応づけてそのパラメータが設定される。本実施形態におけるメモリマップの一例を図3(b)に示す。この事例では、バスプロトコル変換機能から見た複数のDSP11及び外部記憶装置12を含むDSPカード1内の各デバイスを、一つのメモリ空間にマッピングしている。これによって、転送制御情報中のアドレス情報については、デバイスの差異や接続されているデータバスの差異を意識することなく取り扱うことができる。
また、各転送制御情報の次回転送指令ビットは、次の転送制御情報が順次連続して実行されるように、それぞれに対応したビットがONにされている。DMAC131は、この次回転送指令ビットを用いて、次のように5個の転送制御情報を順次実行する。すなわち、図4に例示したように、DMAC131によるDMA転送が開始されると、転送制御情報1に基づき外部記憶装置13からDSP(#1)に所定のデータのDMA転送が実行されるとともに、転送終了時にはコントロールレジスタ内の次回転送指令ビットが参照され、ONになっているビットがあれば、次にそのビットに対応した転送制御情報が実行される。
図4の事例では、転送制御情報2に対応したビットがONになっているので、引き続き転送制御情報2に基づいたDMA転送が実行される。このようにして次回転送指令ビットが参照されることによって、次に指定された転送制御情報に基づきDMA転送が順次実行される。そして、図4の事例では、転送制御情報5の次回転送指令ビットにはONになっているビットがないので、この転送制御情報5に基づいたDMA転送が終了すると、DMAC131は転送完了割込みを発生する。
また、このときの一連のDMA転送のタイミングチャートを図5に例示する。図5(a)は、DMAC131が、一つの転送制御情報による転送を完了するたび毎に転送完了の割込みを発生させ、その割込み処理により次の転送制御情報を設定して順次転送を実行する手法であり、例えば従来実施されていた手法である。また図5(b)は、DMAC131に複数(5個)の転送制御情報をまとめて設定して保持し、それらを順次連続して実行させてDMA転送を連続させた場合であり、上述した本実施形態における手法である。これらを比較すると、図5(b)では、図5(a)に比べてデータ転送完了までの時間を短くできるとともに、毎回の転送完了割込み処理による処理時間の揺らぎ等も無くなり、転送効率を向上させることができる。
外部割込み制御装置14は、割込み発生受付の可否や割込み要因を判定するための各種のレジスタ(図示せず)を有し、DSPカード1内で発生する各種の割込み要因の中から、次の2つの割込み、すなわち、高速シリアル通信装置15からデータバスa18を経由して外部記憶装置12に一時記憶される一連のデータの受信完了(外部記憶装置12への転送完了)に伴う受信完了割込み、及び外部記憶装置12に一時記憶された一連のデータすべての各DSPへの転送完了に伴う転送完了割込みの発生を判定するとともに、その発生を第1のDSPに通知する。上記した受信完了割込みは、高速シリアル通信装置15から、また転送完了割込みはバスプロトコル変換機能13内のDMAC131からそれぞれ発生し、外部割込み制御装置14に通知される。外部割込み制御装置14内の各種のレジスタ等は、例えば第1のDSPにより設定される。
高速シリアル通信装置15は、外部機器等から送られてくる処理対象の一連のデータを受信するためのインターフェイスである。外部機器からは、例えば所定の周期で発生する画像データ等、DSPでの一つの信号処理単位となる一連のデータがシリアルデータとして繰り返し送出される。高速シリアル通信装置15は、これらデータを受信し、データバスa18を経由して外部記憶装置12に送るとともに、その受信完了時に外部割込み制御装置14に対して割込み信号を発生し、受信完了の旨を通知する。
PCI−VMEブリッジ装置16は、このDSPカード1内のひとつのデータバスであるデータバスa18と、外部に設けられたデータバスd21とを接続するためのブリッジである。本実施形態では、データバスa18をPCIバスとし、外部のデータバスd21をVMEバスとしており、PCI−VMEブリッジ装置16は、これらのバス間の転送を行う。
フラッシュROM17には、各DSP11−1〜11−nによって実行される初期化等を含むブート制御プログラムが格納されている。これらのプログラムは、電源投入時やリセット時に各DSPに転送される。
データバスa18、データバスb19、及びデータバスc20は、いずれもDSPカード1の内部バスである。本実施形態においては、データバスa18はPCIバスとし、主にこのDSPカード1の入出力データを扱っている。データバスb19は、DSP固有のバスであり、各DSPは共通にこのデータバスに接続されている。データバスc20は、フラッシュROMのメモリバスに相当する。なお、データバスd21は外部に設けられたデータバスであり、このDSPカード1と同様に構成された複数枚のDSPカード(#m)やホストコンピュータ(図示せず)等が接続されることによって、例えば、信号処理の規模に応じた信号処理システムが構成される。
次に、前出の図1乃至図5、ならびに図6及び図7のフローチャートを参照して、上述のように構成された本実施形態のDSPカード1の動作について説明する。なお、以下の説明においては、第1のDSPとその他のDSP11−2〜11−nのそれぞれの動作を中心に、DSPカード1の動作を説明する。図6は、第1のDSPの動作を説明するためのフローチャートである。また、図7は、その他のDSP、例えば2つ目のDSP11−2の動作を説明するためのフローチャートである。
はじめに、図6を参照して、第1のDSPの動作を説明する。この第1のDSPは、例えばデータバスd21に接続されたホストCPU等の外部の機器から送られてくるブート開始指令を受けて、このDSPカード1内の他のDSPをブートして信号処理を開始させた後、自身も割り付けられた信号処理を開始・実行する。
まずDSPカード1に電源が投入されると、第1のDSPは、フラッシュROM17に格納されている初期化等を含むブート制御プログラムをロードして各種の設定等を行った後(ST601)、外部の機器からのブート開始指令を待つ(ST602)。ブート開始指令を受けとると(ST602のYES)、第1のDSPは、DSPカード1内の他のDSP11−2〜11−nに対して起動の対象か否かを判定しながら、起動対象のDSPに対してはブート指令を発行し起動する(ST603〜ST606)。これら第1のDSP以外のDSPの動作については後述する。
次いで、第1のDSPは、自身の信号処理プログラムを、例えばその格納場所である外部記憶装置12等からロードし、実行を開始する(ST607)。そして、各種の初期設定、ならびに所定の割込み発生及び要因判定等に必要な割込み処理関連のレジスタ等の設定を行った後(ST608)、外部の機器から送られてくる処理対象の一連のデータの受信完了を待つ(ST609のNO)。
一方、外部の機器からは、例えば所定の周期で発生する画像データ等、DSPでの処理対象とする一連のデータがシリアル形式のデータとして繰り返し送出される。これらデータは高速シリアル通信装置15で受信され、データバスa18を経由して外部記憶装置12に送られて一時記憶される。そして、DSPでの一つの信号処理単位となる一連のデータの受信が完了すると、高速シリアル通信装置15は、外部割込み制御装置14に対して割込み信号を発生する(図1中の矢線(1)に対応)。外部割込み制御装置14はこの割込み信号を受けとって要因判定等の処理後、第1のDSPに対して処理対象の一連のデータの受信完了割込みの発生を通知する(図1中の矢線(2)に対応)。
第1のDSPは、外部割込み制御装置14から受信完了割込みの発生を通知されると(ST609のYES)、外部記憶装置12に一時記憶されたデータを各DSPにデータバスb19を介して順次連続してDMA転送すべく、図2及び図3の説明図に詳述したように、バスプロトコル変換機能13内のDMAC131に対して複数の転送制御情報を設定するとともに(ST610)、転送制御情報によるDMA転送の開始を指示する(ST611)。
これによって、まず第1番目の転送制御情報に基づいて、外部記憶装置12に一時記憶されたデータの中から、転送先のDSPによる処理対象分のデータが分割されてデータバスb19経由でDMA転送される。転送の終了時には、図4に示したように次回転送指令ビットが参照され、ONになっているビットがあれば、そのビットに対応した転送制御情報が次に連続して実行される。これら複数の転送制御情報を用いて外部記憶装置12から各DSPに順次連続して対象データがDMA転送されてゆくが、この転送におけるタイミングチャートは、前述の図5(b)に例示したとおりである(ST612、ST613のNO)。
そして、これら一連のDMA転送により外部記憶装置12に一時記憶されたデータの各DSPへの転送が完了すると、DMAC131は、外部割込み制御装置14に対して割込み信号を発生する(図1中の矢線(3)に対応)。外部割込み制御装置14は、この割込み信号を受けとって要因判定等の処理後、第1のDSPに対して処理対象の一連のデータの外部記憶装置12から各DSPへの転送完了割込みの発生を通知する(図1中の矢線(2)に対応)。
第1のDSPは、外部割込み制御装置14から転送完了割込みの発生を通知されると(ST613のYES)、DSPカード1内の他のDSPに対して信号処理の開始を指示する。そして、指示された各DSPは、直前までの動作ステップで外部記憶装置12から転送されたデータに対する所定の信号処理を実行する。また、第1のDSP自身も、処理プログラムに従って対象データの信号処理を含む各種の処理を実行を継続する(ST614)。この後は、信号処理の終了が指示されるまで、ST609の動作ステップからの動作を繰り返す(ST615)。
次に、図7を参照して、DSP11−2(2つ目のDSP)の動作について簡単に説明する。このDSP11−2は、第1のDSPからのブート開始指令を受けて信号処理プログラムをロードし実行を開始するとともに、その後は、上記した第1のDSPの動作ステップST614における信号処理の開始の指示により、外部記憶装置12からDMA転送された処理対象データに対する所定の信号処理を実行する。
DSP11−2は、電源投入後にリセット信号が解除されると、フラッシュROM17に格納されている初期化等を含むブート制御プログラムをロードして初期設定を行い、起動に際しての自己診断を行った後、第1のDSPからのブート指令を待つ(ST701〜ST704)。ブート指令を受けると(ST704のYES)、DSP11−2は、自身の信号処理プログラムを、例えばその格納場所である外部記憶装置12等からロードする(ST705)、ロード完了後はこのプログラムの実行を開始し(ST706)、第1のDSPからの所定の信号処理開始の指示を待つ(ST707のNO)。
一方、この間に、外部記憶装置12に一時記憶された処理対象のデータは、バスプロトコル変換機能13内のDMAC131により、外部記憶装置12から自DSP内のメモリにDMA転送される。そして、転送が完了すると、第1のDSPから信号処理の開始の指示が送出され(ST707のYES)、DSP11−2は、自メモリに転送された処理対象のデータに対する所定の信号処理を実行する(ST708)。この後は、信号処理の終了が指示されるまで、ST707の動作ステップからの動作を繰り返す(ST709)。
以上説明したように、本実施形態のDSPカードにおいては、外部の機器から送られてくる大規模・大量な処理対象のデータを、いったんDSPの外部に設けられた外部記憶装置に一時記憶後、これらのデータを共通のバスに接続された複数のDSPで処理するために分割してそれぞれのDSPの内部メモリにDMA転送する際に、まず、データの転送条件となる転送制御情報を、転送先のDSPのそれぞれに対応させて複数個、まとめてDMAC内のレジスタに設定している。そして転送が開始され、ひとつのDSPへのデータ転送が終了すると、各転送制御情報内に設けられた次回転送指令情報で指定された次の転送制御情報によるデータ転送を順次連続して実行している。さらに、これら順次連続したデータ転送が完了し、一時記憶されたすべてのデータが対象のDSPに転送された後に、各DSPによる所定の信号処理を実行している。
これにより、ひとつのDSPへのデータ転送完了の都度、次の転送制御情報を設定しながら転送を繰り返すのではなく、大規模・大量な処理対象のデータを間断なしに対象の複数のDSPに順次連続して転送することができるので、各DSP及び全体での信号処理性能を損なうことのない、効率的なデータ転送を実行することのできるDSPカード、及びデータ転送方法を得ることができる。
なお、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
1 DSPカード
11 DSP
12 外部記憶装置
13 バスプロトコル変換機能
14 外部割込み制御装置
15 高速シリアル通信装置
16 PCI−VMEブリッジ装置
17 フラッシュROM
18 データバスa
19 データバスb
20 データバスc
21 データバスd
131 DMAC
11 DSP
12 外部記憶装置
13 バスプロトコル変換機能
14 外部割込み制御装置
15 高速シリアル通信装置
16 PCI−VMEブリッジ装置
17 フラッシュROM
18 データバスa
19 データバスb
20 データバスc
21 データバスd
131 DMAC
Claims (5)
- 固有のデータバスに共通に接続された複数のDSPを有し、処理対象の一連のデータを受信して一時記憶後に、これら一時記憶された一連のデータを前記複数のDSP毎に割り付けるように分割して転送し各DSPにて処理を行うDSPカードであって、
前記一連のデータを第1のデータバスから受信し一時記憶する外部記憶装置と、
第2のデータバスに共通に接続され、前記一時記憶された一連のデータの中から自身に処理対象として割り付けられたデータをこの第2のデータバスから受けとって内部メモリに格納し処理する複数のDSPと、
前記第1のデータバスのプロトコルと前記第2のデータバスのプロトコルとの間を相互に変換するとともに、あらかじめ設定された複数の転送制御情報を保持し、これら複数の転送制御情報に基づいて前記外部記憶装置と前記第2のデータバスとの間のデータ転送を行うプロトコル変換機能と、
自カード内で発生する割込み要因を判定するとともに、これら割込み要因の中から
前記第1のデータバスを経由して前記外部記憶装置に一時記憶される一連のデータの受信完了を示す受信完了割込み、及び
前記外部記憶装置から前記第2のデータバスを経由して前記DSPに転送される一連のデータすべての転送完了を示す転送完了割込み
の発生を、あらかじめ定められた前記複数のDSPの中の一のDSPに通知する外部割込み制御部とを備え、
前記複数のDSPの中の一のDSPは、
前記受信完了割込みの通知を受けると、
前記プロトコル変換機能に対して、前記外部記憶装置に記憶された一連のデータを前記第2のデータバス経由で自身を含む前記複数のDSP毎に分割し順次連続して転送するための各DSP毎の前記転送制御情報を設定するとともに、これら複数の転送制御情報に従った各DSPへの連続したデータ転送を開始させ、
前記転送完了割込みの通知を受けると、
自身を含む前記複数のDSPのそれぞれに対して、前記転送されたデータに対する処理を開始させる
ことを特徴とするDSPカード。 - 前記プロトコル変換機能はDMAコントローラを有するとともに、このDMAコントローラ内にDMA転送に必要な情報を保持し、前記外部記憶装置と第2のデータバスとの間のデータ転送をDMAにより行うことを特徴とする請求項1に記載のDSPカード。
- 前記転送制御情報は、前記DMAにより転送されるデータの転送元のアドレス情報、転送先のアドレス情報、転送サイズ、及び順次連続転送を制御する次回転送指令情報を含み、前記DMAコントローラはこの転送制御情報をDMAによるデータ転送と並列に取得することを特徴とする請求項1または請求項2に記載のDSPカード。
- 固有のデータバスに共通に接続された複数のDSPを有し、処理対象の一連のデータを受信して一時記憶後に、これら一時記憶された一連のデータを前記複数のDSP毎に割り付けるように分割して転送し各DSPにて処理を行うDSPカード内において、前記一時記憶された一連のデータを前記複数のDSPに分割して転送するデータ転送方法であって、
前記DSPカードは、
前記一連のデータを第1のデータバスから受信し一時記憶する外部記憶装置と、
第2のデータバスに共通に接続され、前記一時記憶された一連のデータの中から自身の処理対象として割り付けられたデータをこの第2のデータバスから受けとって内部メモリに格納し処理する複数のDSPと、
前記第1のデータバスのプロトコルと前記第2のデータバスのプロトコルとの間を相互に変換するとともに、あらかじめ設定された複数の転送制御情報を保持し、これら複数の転送制御情報に基づいて前記外部記憶装置と前記第2のデータバスとの間のデータ転送を行うプロトコル変換機能と、
自カード内で発生する割込み要因を判定するとともに、これら割込み要因の中から
前記第1のデータバスを経由して前記外部記憶装置に一時記憶される一連のデータの受信完了を示す受信完了割込み、及び
前記外部記憶装置から前記第2のデータバスを経由して前記DSPに転送される一連のデータすべての転送完了を示す転送完了割込み
の発生を、あらかじめ定められた前記複数のDSPの中の一のDSPに通知する外部割込み制御部とを備え、
前記複数のDSPの中の一のDSPは、
前記外部割込み制御部から前記外部記憶装置に一時記憶される一連のデータの受信完了の割込み発生の通知を受けとり、
前記プロトコル変換機能に対して、前記外部記憶装置に一時記憶された一連のデータを分割して前記第2のデータバス経由で自身を含む前記複数のDSPに順次連続転送するための各DSP毎の転送制御情報を設定し、
前記プロトコル変換機能に対して、前記複数の転送制御情報に従ったデータ転送の開始を指示し、
前記プロトコル変換機能は、
前記各DSP毎の転送制御情報に従ったデータ転送を順次実行して、前記各DSPに処理対象として割り付けられたデータを前記外部記憶装置から前記各DSPに順次連続して転送し、
前記複数のDSPの中の一のDSPは、
前記外部割込み制御部から前記プロトコル変換機能による前記外部記憶装置から各DSPへのすべてのデータの転送完了の割込み通知を受け、
自身を含む前記複数のDSPのそれぞれに対して、前記転送されたデータに対する処理の開始を指示するとともに、処理を開始する
ことを特徴とするデータ転送方法。 - 前記転送制御情報は、前記転送されるデータの転送元のアドレス情報、転送先のアドレス情報、転送サイズ、及び順次連続転送を制御する次回転送指令情報を含むことを特徴とする請求項4に記載のデータ転送方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012117027A JP2013242816A (ja) | 2012-05-22 | 2012-05-22 | Dspカード及びデータ転送方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012117027A JP2013242816A (ja) | 2012-05-22 | 2012-05-22 | Dspカード及びデータ転送方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2013242816A true JP2013242816A (ja) | 2013-12-05 |
Family
ID=49843621
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012117027A Pending JP2013242816A (ja) | 2012-05-22 | 2012-05-22 | Dspカード及びデータ転送方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2013242816A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104679689A (zh) * | 2015-01-22 | 2015-06-03 | 中国人民解放军国防科学技术大学 | 一种用于gpdsp的采用从机计数的多核dma分段数据传输方法 |
CN104679691A (zh) * | 2015-01-22 | 2015-06-03 | 中国人民解放军国防科学技术大学 | 一种用于gpdsp的采用主机计数的多核dma分段数据传输方法 |
-
2012
- 2012-05-22 JP JP2012117027A patent/JP2013242816A/ja active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104679689A (zh) * | 2015-01-22 | 2015-06-03 | 中国人民解放军国防科学技术大学 | 一种用于gpdsp的采用从机计数的多核dma分段数据传输方法 |
CN104679691A (zh) * | 2015-01-22 | 2015-06-03 | 中国人民解放军国防科学技术大学 | 一种用于gpdsp的采用主机计数的多核dma分段数据传输方法 |
CN104679689B (zh) * | 2015-01-22 | 2017-12-12 | 中国人民解放军国防科学技术大学 | 一种用于gpdsp的采用从机计数的多核dma分段数据传输方法 |
CN104679691B (zh) * | 2015-01-22 | 2017-12-12 | 中国人民解放军国防科学技术大学 | 一种用于gpdsp的采用主机计数的多核dma分段数据传输方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9934160B1 (en) | Bit-mapped DMA and IOC transfer with dependency table comprising plurality of index fields in the cache for DMA transfer | |
CN109558344B (zh) | 一种适用于网络传输的dma传输方法及dma控制器 | |
CN109726163B (zh) | 一种基于spi的通信系统、方法、设备和储存介质 | |
CN1570907A (zh) | 多处理器系统 | |
EP2423824A1 (en) | Data transfer device, method of transferring data, and image forming apparatus | |
US9875199B2 (en) | Data transfer control apparatus | |
US20150268985A1 (en) | Low Latency Data Delivery | |
CN113468090B (zh) | 一种PCIe通信方法、装置、电子设备及可读存储介质 | |
CN112947857A (zh) | 一种数据搬移方法、装置、设备及计算机可读存储介质 | |
CN112764694A (zh) | 一种打印系统、打印方法及计算设备 | |
EP4080373A1 (en) | Interrupt request signal conversion system and method, and computing device | |
CN115827524A (zh) | 一种数据传输方法以及装置 | |
US20180024865A1 (en) | Parallel processing apparatus and node-to-node communication method | |
US9268577B2 (en) | Information processing apparatus | |
JP2017162522A (ja) | マルチコアシステムのインターラプト割り当て方法及び装置 | |
JP2013242816A (ja) | Dspカード及びデータ転送方法 | |
JP5209535B2 (ja) | Usbホストコントローラ及びusbホストコントローラの制御方法 | |
US20130238881A1 (en) | Data transmission device, data transmission method, and computer program product | |
US8359564B2 (en) | Circuit design information generating equipment, function execution system, and memory medium storing program | |
US9128924B2 (en) | Method and apparatus for wireless broadband systems direct data transfer | |
JP2013114483A (ja) | ディジタルシグナルプロセッサシステムおよびディジタルシグナルプロセッサシステムにおける割込み処理方法 | |
WO2018076647A1 (zh) | 数据处理的方法、装置和片上系统、设备、存储介质 | |
JP6223637B2 (ja) | シミュレーション装置及びシミュレーション方法及びシミュレーションプログラム | |
JP2020140284A (ja) | ベクトル演算処理装置、ベクトル演算処理装置による配列変数初期化方法、及び、ベクトル演算処理装置による配列変数初期化プログラム | |
JP2013077090A (ja) | ディジタルシグナルプロセッサシステム及びdspカードのカードアドレス設定方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20140812 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20150218 |