JP2012108853A - ディジタルシグナルプロセッサを起動するシステム、装置および方法 - Google Patents
ディジタルシグナルプロセッサを起動するシステム、装置および方法 Download PDFInfo
- Publication number
- JP2012108853A JP2012108853A JP2010259004A JP2010259004A JP2012108853A JP 2012108853 A JP2012108853 A JP 2012108853A JP 2010259004 A JP2010259004 A JP 2010259004A JP 2010259004 A JP2010259004 A JP 2010259004A JP 2012108853 A JP2012108853 A JP 2012108853A
- Authority
- JP
- Japan
- Prior art keywords
- dsp
- data
- digital signal
- received
- activation data
- 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
- Stored Programmes (AREA)
Abstract
【課題】CPUを備えていないDSPカードに実装されたDSPを起動するシステム、装置および方法を提供する。
【解決手段】DSPを起動するシステムは、DSPカードと、伝送路を介して、DSPカードに処理プログラムを含む起動用データを提供するプログラム提供装置とを備える。プログラム提供装置は、CPUと、起動用データを保存する記憶装置と、起動用データをシリアル送信する送信装置とを備える。DSPカードは、1または複数のDSPと、DSPの内部メモリに転送されるブート制御プログラムを保存する不揮発性メモリと、シリアルの起動用データを受信する受信装置と、受信装置によって受信された起動用データを保存する外部記憶装置とを備える。DSPは、起動用データに含まれるDSPが実行する処理プログラムをロードする。
【選択図】図1
【解決手段】DSPを起動するシステムは、DSPカードと、伝送路を介して、DSPカードに処理プログラムを含む起動用データを提供するプログラム提供装置とを備える。プログラム提供装置は、CPUと、起動用データを保存する記憶装置と、起動用データをシリアル送信する送信装置とを備える。DSPカードは、1または複数のDSPと、DSPの内部メモリに転送されるブート制御プログラムを保存する不揮発性メモリと、シリアルの起動用データを受信する受信装置と、受信装置によって受信された起動用データを保存する外部記憶装置とを備える。DSPは、起動用データに含まれるDSPが実行する処理プログラムをロードする。
【選択図】図1
Description
本発明の実施形態は、ディジタルシグナルプロセッサを起動するシステム、装置および方法に関する。
ディジタルシグナルプロセッサ(以下、DSPと呼ぶ)は、積和演算を高速に実行可能な高速乗算器を持つ等、ディジタル信号処理に特化した様々な機能・性能を有している。このため、ディジタルフィルタ処理、FFT(高速フーリエ変換)、DCT(離散コサイン変換)等の特定の演算処理を、CPUに比べて高速かつ低消費電力で実行することができる。このような特長から、従来ハードウェアを構成することにより実現していた多くのディジタル信号処理機能を、ソフトウェアによって実行可能としてきた。例えば、携帯電話、デジタルカメラ等における音声処理、画像処理からレーダ等における信号処理に至るまで広く活用されている。
しかし、通常、DSPはCPUに比べて使用可能なメモリ資源が乏しいため、CPUのように基本ソフトウェア(以下、OSと呼ぶ)を利用したり、1つのDSPで複数のプログラムを実行する等の複雑な処理を実行することができない。このため、DSPを用いて複数のプログラムを実行する場合には、ディジタルフィルタ処理あるいはFFT等の固定したディジタル信号処理をそれぞれのDSPに割り付け、DSP間は専用の高速通信を用いて接続する分散方式の構成を採っていた。
DSPを用いたディジタル処理装置は、1または複数のDSP、外部メモリおよびプログラム格納用のフラッシュROMを持つ、DSPカードにより構成する。従来、DSPのプログラムは各DSPカードのフラッシュROMに格納されており、各DSPは起動時に自身が実行するプログラムをフラッシュROMから読み込み、処理を開始する。
このため、DSPが実行するプログラムを変更するためには、フラッシュROMの更新が必須であった。しかし、前述したようにDSPが使用可能なメモリ資源は乏しいため、ディジタル信号処理プログラムと同時に、フラッシュROMを更新する制御プログラムを内蔵することができない。DSPが実行するプログラムを更新するためには専用のフラッシュROM書込み用装置を用いる等の必要があった。専用のフラッシュROM書込み用装置を用いずにプロセッサが実行するプログラムを更新する以下の発明が開示されている。
特許文献1には、メインプロセッサの起動後にサブプロセッサに任意のプログラムを実行させることが可能な情報処理装置の発明が開示されている。この情報処理装置においては、サブプロセッサとして機能する第2のプロセッサは、電源投入に応答して起動され、ROMに格納されたブートプログラムを実行するとともに、メインプロセッサとして機能する第1のプロセッサを起動するための処理を実行する。第1のプロセッサは、その起動後に、第2のプロセッサに実行させるべき新たなブートプログラムをDRAMにロードし、そして第2のプロセッサを再起動してDRAMにロードされた新たなブートプログラムを第2のプロセッサに実行させる。すなわち、CPUを有するメインプロセッサによって第2のプロセッサを再起動させている。
特許文献2には、複数のDSPを利用した装置の起動時間を短縮することができるDSP制御装置が開示されている。この発明においては、信号処理を行う複数個のDSPと、DSP用プログラムを記憶したROMと、DSPとROMとの間のDSP用プログラムの読み出し書き込みを制御するシステムコントローラとを備えたDSP制御装置において、システムコントローラの制御に基づいて複数個のDSPに対して一斉アクセスを行うDSPコントローラを備え、システムコントローラは、ROMからDSP用プログラムを読み出すと共に読み出したDSP用プログラムをDSPコントローラにより複数個のDSPに一斉書き込みを行いDSP用プログラムのロード終了後に複数個のDSPを一斉に起動する制御を行うDSP制御装置が開示されている。このシステムコントローラにおいては、CPUがROMからDSP用プログラムを読み出すとともに、読み出したDSP用プログラムをDSPコントローラにより複数個のDSPに一斉書き込みを行っている。
しかし上記の発明においては、装置に含まれ、CPUを用いることによりOSや複雑な処理を可能なホスト起動後にDSP用のプログラムを用意し、各DSPの起動を実現している。すなわち、従来の装置においては、DSPを起動するためには、CPUを装置に実装する必要があった。
本発明は、CPUを備えていないDSPカードに実装されたDSPを起動するシステム、装置および方法を提供することを目的とする。
本発明の実施形態によるDSP(ディジタルシグナルプロセッサ)を起動するシステムは、ディジタル信号処理を行うDSPカードと、伝送路を介して、DSPカードに処理プログラムを含む起動用データを提供するプログラム提供装置とを備える。プログラム提供装置は、CPUと、起動用データを保存する記憶装置と、伝送路を介して起動用データをシリアルデータの形式で送信する送信装置とを備える。DSPカードは、内部メモリおよび内部メモリに記憶されるデータをDMA転送するDMAコントローラを有する1または複数のDSPと、DSPの内部メモリに転送されるブート制御プログラムを保存する不揮発性メモリと、DSPが実行する処理プログラムを含む起動用データをシリアルデータの形式で受信する受信装置と、シリアル通信装置によって受信された起動用データを保存する外部記憶装置とを備える。DSPは、外部記憶装置に保存された起動用データに含まれるDSPが実行する処理プログラムをロードする。
以下、適宜、図面を参照しながら本発明の一例としての実施形態の説明を行う。尚、それぞれの図において、同一の部分または対応する部分には同一の参照符号を付すとともに、重複した説明は省略する。
図1にDSP(ディジタルシグナルプロセッサ)を起動するシステムの構成の一例を示す。DSPカード102には、ディジタル信号処理を行う1または複数のDSP104−1、104−2、・・・104−N(Nは正整数)が実装されている。DSP104−1、104−2、・・・104−Nは、それぞれ内部メモリとDMAコントローラ(DMAC)を備える。DSP104−1、104−2、・・・104−Nのそれぞれの内部メモリは、小容量の記憶領域を有する。DSP104−1、104−2、・・・104−NのそれぞれのDMAコントローラは、対応する内部メモリに記憶される、処理プログラム等のデータをDMA転送する。DSPカード102には、N個のDSP104が実装されており、ブート対象のDSPが1または複数存在する。尚、それぞれのDSP104は複数本の外部制御入力ピンを備え、例えば8個のDSP104がDSPカード102に実装されている場合、各DSP104の3本の外部制御入力ピンをプルアップまたはプルダウンすることによって、8個のDSP104に“0”ないし“7”の8種類のそれぞれ固有のIDコードを予め付与する。本明細書においては、付与されたIDコードの値が“i”であるDSP104をDSP(i+1)と呼び、i=0であるDSP(1)を第1のDSPと呼び、DSP(1)以外のi≧0であるDSPをその他のDSPと呼ぶことがある。DSP104−1、104−2、・・・104−Nの中の、どのDSPを第1のDSPとするのかは任意であるが、DSP104−1をDSP104−1(DSP(1))としてもよい。
DSP104−1、104−2、・・・104−Nは、それぞれのDMACを介して、プロセッサバス106に接続されている。このプロセッサバス106には、DSP104−1、104−2、・・・104−Nの内部メモリに転送されるブート制御プログラム等を保存するフラッシュROM108等の、電気的に消去・書込可能な不揮発性プログラマブルROMが接続されている。プロセッサバス106には、さらに、バスプロトコル変換機能部110が接続されている。バスプロトコル変換機能部110は、異なるデータバスを接続するために、バスのMAC層のプロトコル変換と、バス幅の整合、転送単位の整合等の処理を行うブリッジである。バスプロトコル変換機能部110には、メモリバス112を介して、DSP104−1、104−2、・・・104−Nが実行する処理プログラムを含む起動用データ等を記憶する外部記憶装置114が接続されている。外部記憶装置114は、例えば、DRAM等の揮発性記憶素子を含む。
バスプロトコル変換機能部110には、さらに、例えば、PCI、VME等の拡張バス116を介して、DSP104−1、104−2、・・・104−Nが実行する処理プログラムを含む起動用データ等をシリアルデータの形式で受信する機能を有する高速シリアル通信装置118が接続されている。高速シリアル通信装置118には、RS−232Cインターフェイスのような低速なものではなく、例えば、IEEE802.3規格に準拠したデータ伝送速度10Gbpsのイーサネット(登録商標)用インターフェイスであるXAUI(10Gigabit Attachment Unit Interface)を用いることによって、伝送速度1.0〜3.125Gbpsの高速シリアル通信を行うことができる。また、XAUIの4レーンを時分割多重した10Gbpsイーサネット(登録商標)の物理層を利用することによりデータ伝送速度10Gbpsまでの高速シリアル通信を行うこともできる。尚、高速シリアル通信装置118の伝送速度は、現時点で容易に実装可能なXAUIあるいは10Gbpsイーサネット(登録商標)の物理層によって限定されるわけではなく、例えば、広く用いられている100Mbps程度から現時点において開発中の100Gbpsの間であってもよい。
シリアル通信方式は、伝送に必要な線路の本数を1本と少なくすることができる点と、通信速度の高速化に伴って顕在化するパラレル通信におけるスキューの問題がないため、画像処理装置やレーダなどの基板間通信に用いられている。
最近では、ゲートアレイ(GA)またはFPGA等のプログラマブルロジックデバイスのASICを作る時に使われる、機能単位でまとめられている部分的な回路情報データであるIPコア(Intellectual Property Core)が、GAまたはFPGA等のASICベンダから市販されており、IPコアを併用することによってASICの開発期間を短縮することができる。高速シリアル通信装置118は、例えば、このようなASICを用いて構成することができる。
高速シリアル通信装置118は、DSP104−1、104−2、・・・104−Nが実行する処理プログラムを含む起動用データ等の高速シリアルデータを受信し、受信したシリアルデータをデマルティプレックス(demultiplex)し、拡張バス116に出力する。
DSPカード102に実装された高速シリアル通信装置118は、シリアル伝送路120を介して、プログラム提供装置122に実装された高速シリアル通信装置124に接続されている。高速シリアル通信装置118と、高速シリアル通信装置124とを結ぶシリアル伝送路120には、短距離の場合には同軸ケーブルを用いることができ、長距離の場合には光ファイバケーブルを用いることができる。
プログラム提供装置122としては、例えば、パーソナルコンピュータ(PC)を用いることができる。以下、本明細書においてはプログラム提供装置122としてPC122を用いる場合について説明を行うが、プログラム提供装置122として他の形態のコンピューティング装置を用いることができることは明らかであろう。
PC122はCPU126および図示しないROM、RAM、およびHDDあるいはSSD(ソリッドステートドライブ)等の記憶装置を含む。PC122には基本ソフトウェア(OS)、各種のデバイスドライバ、高速シリアル通信装置124を介してシリアルデータを送信するためのソフトウェア等がインストールされ、DSPカード102に実装されたDSP104−1、104−2、・・・104−Nが実行する処理プログラムのデータが上記のいずれかの記憶装置に保存されている。高速シリアル通信装置124は、DSPカード102に実装されたDSP104−1、104−2、・・・104−Nが用いる処理プログラムのデータを、シリアル伝送路120を介して、DSPカード102の高速シリアル通信装置118にシリアルデータの形式で送信する。
前述したように、従来の技術によれば各DSPが実行する処理プログラムを容易には更新することができないため固定的な処理しかできなかったが、図1に示した実施形態によれば、DSPカードにCPUを実装せずに、極めて短時間に各DSPが実行する処理プログラムを更新することができる。また、DSPカードとプログラム提供装置は伝送路を介して接続されるため、プログラム提供装置をDSPカードから遠く離れた場所に設置することも可能であり、これらの装置相互の設置位置の制限が実質的にない。さらに、高速シリアル通信装置118は、DSPカード102の処理対象であるデータの入力装置としても用いることができる。
図2にDSPを起動するシステム構成の他の例を示す。図2に示した構成例が、図1に示した構成例と大きく異なる点は、DSPカードがM個と複数であることである。それぞれのDSPカード102−1〜102−Mの構成は、図1に示したDSPカード102と同一にすることができる。また、図中のPC122は、図1に示したPC122と同一にすることができる。それぞれのDSPカード102−1〜102−Mには、高速シリアルデータを受信し、受信したシリアルデータをデマルティプレックスし、拡張バス116に出力する、高速シリアル通信装置118が設けられている。
DSPカード102−1ないし102−M(Mは正整数)に設けられたそれぞれの高速シリアル通信装置118は、PC122に実装された高速シリアル通信装置124から送信される処理プログラムのシリアルデータを受信するが、高速シリアル通信装置124から各高速シリアル通信装置118へのデータ伝送を効率的に行うために、シリアル伝送路120には回線データ複製装置302が挿入されている。回線データ複製装置302は、入力されたシリアルデータと同一のシリアルデータを複数出力する装置である。換言すると、回線データ複製装置302は、入力されたシリアルデータを複製し、複製したシリアルデータを複数の出力先に送信する中継機能を有する。高速シリアル通信装置124から送信される処理プログラムのシリアルデータは、シリアル伝送路120−0を介して、回線データ複製装置302によって一旦受信される。回線データ複製装置302は、受信した処理プログラムのシリアルデータと同一のシリアルデータを、シリアル伝送路120−1ないし120−Mを介して、それぞれDSPカード102−1ないし102−Mに設けられたそれぞれの高速シリアル通信装置118に送信する。回線データ複製装置302は、例えば、米国Motorola社と米国Mercury Computer Systems社が開発した技術をベースとしたSerial Rapid IO等のマルチキャスト機能を有する。
この実施形態によれば、図1に示した実施形態の効果に加え、プログラム提供装置122(PC122)からDSPカード102−1ないしDSPカード102−Mに処理プログラムのデータをDSPカードごとに伝送する必要がなく複数のDSPカードに同時に伝送することができるため、複数のDSPカードへの処理プログラムの転送を短時間に実行することが可能となる。このことによって、複数のDSPカードの各DSPが実行する処理プログラムを極めて短時間に更新することができる。例えば、各DSPカードに5個のDSPが実装され、DSPカードが700枚である場合、各DSPが実行する処理プログラムを更新するために、従来は2〜3分かかっていたが、本実施形態によれば1〜2秒に短縮することができる。
(動作例)
(1)第1のDSPのブート動作例
図3に第1のDSPのブート動作の一例を表すフローチャートを示す。前述したように、第1のDSPは、DSP104−1、104−2、・・・104−Nの中のDSPであって、例えば、IDコードが“0”に設定されたDSP104である。尚、第1のDSPのブート動作は、図1に示した構成においても、図2に示した構成においても共通であるため、以下の記載においては図1に示した構成要素を参照しながら説明を行う。DSPカード102の電源が投入されると、S402で、第1のDSP、例えば、DSP104−1は、フラッシュROM108からブート制御プログラムをロードする。次いで、S404ないしS416で、第1のDSPは、PC122から送信される起動用データの受信処理を行う。先ず、S404で、第1のDSPは、高速シリアル通信装置118の受信設定を行う。次いでS406で、第1のDSPは、高速シリアル通信装置118を介して、プログラム提供装置(PC)122から起動用データ受信指令を受けたか否かを判断する。起動用データには、DSP104が実行する処理プログラムのデータが含まれる。S406で、起動用データ受信指令を受けていないと判断された場合には、S406に留まり、PC122が送信する起動用データ受信指令の受信待ちの状態に入る。高速シリアル通信装置118によってPC122からの起動用データ受信指令が受信され、S406で、起動用データ受信指令を受けたと判断された場合には、処理はS408に進む。
(1)第1のDSPのブート動作例
図3に第1のDSPのブート動作の一例を表すフローチャートを示す。前述したように、第1のDSPは、DSP104−1、104−2、・・・104−Nの中のDSPであって、例えば、IDコードが“0”に設定されたDSP104である。尚、第1のDSPのブート動作は、図1に示した構成においても、図2に示した構成においても共通であるため、以下の記載においては図1に示した構成要素を参照しながら説明を行う。DSPカード102の電源が投入されると、S402で、第1のDSP、例えば、DSP104−1は、フラッシュROM108からブート制御プログラムをロードする。次いで、S404ないしS416で、第1のDSPは、PC122から送信される起動用データの受信処理を行う。先ず、S404で、第1のDSPは、高速シリアル通信装置118の受信設定を行う。次いでS406で、第1のDSPは、高速シリアル通信装置118を介して、プログラム提供装置(PC)122から起動用データ受信指令を受けたか否かを判断する。起動用データには、DSP104が実行する処理プログラムのデータが含まれる。S406で、起動用データ受信指令を受けていないと判断された場合には、S406に留まり、PC122が送信する起動用データ受信指令の受信待ちの状態に入る。高速シリアル通信装置118によってPC122からの起動用データ受信指令が受信され、S406で、起動用データ受信指令を受けたと判断された場合には、処理はS408に進む。
S408で、第1のDSPは、PC122から送信されるデータサイズとチェックサムの2種類のデータを受信する。次にS410で、第1のDSPは、PC122から送信され、高速シリアル通信装置118によって受信されるデータサイズ分の起動データファイルを外部記憶装置114に保存する。次いでS412で、データサイズとチェックサムを比較し、S414で、受信した起動データファイルのデータサイズまたはチェックサムに異常があるか否かを判断する。すなわち、受信した起動データファイルの検証を行う。S414で、データサイズまたはチェックサムに異常があると判断された場合には、S416で、受信データを破棄し、S406に戻り、PC122が送信する起動用データ受信指令の受信待ちの状態になる。S414で、データサイズまたはチェックサムに異常があるか否かを判断することによって、高速シリアル通信装置118で受信された起動データファイルのデータの信頼性を確保し、確実な通信の検証を行うため、誤りを含む起動データによるDSPの起動を防止することができる。S414で、データサイズおよびチェックサムに異常がなく正常であると判断された場合には、S410で、外部記憶装置114に保存した起動データファイルを用いて、以下のDSP再起動処理に進む。
S418で、第1のDSPは、読み出しアドレスとデータサイズからなる再ブートパラメータを外部記憶装置114に設定する。次にS420ないしS426のDOループの中で、第1のDSP以外のDSP、すなわちDSP(2)ないしDSP(N)の中の再ブート対象のDSP(k)に対して起動指令を発行する。すなわち、先ずS420でk=2と設定し、S422でDSP(k)が再ブート対象のDSPであるか否かを判断する。DSP(k)が再ブート対象のDSPではないとS422で判断されると、処理はS426に進みkの値を1だけインクリメントした後、S422に戻る。S422で、DSP(k)が再ブート対象のDSPであると判断された場合には、第1のDSPは、DSP(k)に対し起動指令を発行する。次いで処理はS426に進みkの値を1だけインクリメントした後、S422に戻り、前述した処理をk=Nに関して終了するまで繰り返す。
再ブート対象のDSP(k)に対する起動指令の発行を終えると、S428に進み、第1のDSPのブート処理を行う。すなわち、先ずS428で、DMA転送完了ベクタに、第1のDSPの内部メモリの先頭アドレスを指定する。次にS430で、第1のDSPの内蔵DMACを用いて、外部記憶装置114から第1のDSPの処理プログラムをロードする。次いでS432で、第1のDSPは、DMA転送完了割込を受けて、S430でロードした新しい処理プログラムの先頭から実行を開始し、第1のDSPの再ブートを終了する。
以上、図1に示した構成要素を参照しながら第1のDSPのブート動作を説明したが、図2に示した構成においては、それぞれのDSPカード102−1、102−2、・・・102−Mに実装されたフラッシュROM108、外部記憶装置114および高速シリアル通信装置118等と、回線データ複製装置302を介して、それぞれの高速シリアル通信装置118にPC122から伝送されるデータを用いて、前述した動作によって各DSPカードの第1のDSPをブートすることができる。
本実施形態によれば、CPUを備えていないDSPカードに実装された第1のDSPをブートすることができる。また、本実施形態におけるS408およびS410におけるデータの受信は、プログラム提供装置122からの伝送速度が、例えば、1Gbpsという高速であるため、極めて短時間で行うことができる。したがって第1のDSPを極めて短時間でブートすることができる。また、本実施形態によれば、受信した起動データに異常があるか否かを検証するため、誤った起動データに基づいて第1のDSPを起動することを避けることができる。
(2)DSP(2)〜DSP(N)のブート動作例
図4にDSP(2)のブート動作の一例を表すフローチャートを示す。前述したように、DSP(2)〜DSP(N)は、DSPカード102に実装されたDSPであって、第1のDSPすなわちDSP(1)以外のDSPである。尚、DSP(2)のブート動作は、図1に示した構成においても、図2に示した構成においても共通であるため、以下の記載においては図1に示した構成要素を参照しながら説明を行う。DSP(2)のリセットが解除されると、S502で、DSP(2)は、フラッシュROM108からブート制御プログラムをロードする。次に、DSP(2)は、図3におけるS424でDSP(1)が発行し、送信する再起動指令を待つ。S504で、DSP(2)は、DSP(1)が送信した再起動指令を受信したか否かを判断する。DSP(1)が送信した再起動指令を受信していないとS504で判断された場合には、DSP(2)は、DSP(1)が送信する再起動指令を待つ。
図4にDSP(2)のブート動作の一例を表すフローチャートを示す。前述したように、DSP(2)〜DSP(N)は、DSPカード102に実装されたDSPであって、第1のDSPすなわちDSP(1)以外のDSPである。尚、DSP(2)のブート動作は、図1に示した構成においても、図2に示した構成においても共通であるため、以下の記載においては図1に示した構成要素を参照しながら説明を行う。DSP(2)のリセットが解除されると、S502で、DSP(2)は、フラッシュROM108からブート制御プログラムをロードする。次に、DSP(2)は、図3におけるS424でDSP(1)が発行し、送信する再起動指令を待つ。S504で、DSP(2)は、DSP(1)が送信した再起動指令を受信したか否かを判断する。DSP(1)が送信した再起動指令を受信していないとS504で判断された場合には、DSP(2)は、DSP(1)が送信する再起動指令を待つ。
DSP(1)が送信した再起動指令を受信したとS504で判断された場合には処理はS506に進み、DSP(2)は、DMA転送完了ベクタに内部メモリの先頭アドレスを指定する。次にS508で、DSP(2)は、その内蔵DMAコントローラを用いて、外部記憶装置114からDSP(2)の処理プログラムをロードする。続いてS510で、DSP(2)は、DMA転送完了割込を受けて、S508でロードした新しい処理プログラムの先頭から実行を開始し、DSP(2)の再ブートを終了する。
以上、図1に示した構成要素を参照しながらDSP(2)のブート動作を説明したが、DSP(3)〜DSP(N)のブート動作もDSP(2)のブート動作と同じである。
以上、図1に示した構成要素を参照しながらDSP(2)〜DSP(N)のブート動作を説明したが、図2に示した構成においては、それぞれのDSPカード102−1、102−2、・・・102−Mに実装された第1のDSP、フラッシュROM108、および外部記憶装置114等を用い、第1のDSPの指令にしたがって、図1に示した構成要素を参照しながら説明した方法によって各DSPカードのDSP(2)〜DSP(N)をブートすることができる。
本実施形態によれば、第1のDSPのブートと同様に、CPUを備えていないDSPカードに実装されたDSP(2)〜DSP(N)を第1のDSPと協調してブートすることができる。また、第1のDSPのブートと同様に、DSP(2)〜DSP(N)のブートを極めて短時間で実行可能とし、かつ、誤った起動データに基づいて起動することを避けることができる。
(3)プログラム提供装置におけるDSPカード再起動用の起動用データ送信動作例
図5に、DSPカード102に実装されたDSP104を再起動するための起動用データを送信するプログラム提供装置122、例えばPC122における、動作の一例を表すフローチャートを示す。先ずS602で、PC122は、PC122の高速シリアル通信装置124、シリアル伝送路120を介して、DSPカード102に実装された高速シリアル通信装置118に、DSP104を再起動するための起動用データを受信する指令を送信する。高速シリアル通信装置118によって受信されたDSP104を再起動するための起動用データを受信する指令は、高速シリアル通信装置118からDSPカード102の第1のDSPに伝達される。次にS604で、PC122は、送信する起動データファイルからデータサイズおよびチェックサムを計算する。次にS606で、PC122は、S604で計算したデータサイズとチェックサムを、高速シリアル通信装置124、シリアル伝送路120を介して、DSPカード102に実装された高速シリアル通信装置118に送信する。高速シリアル通信装置118によって受信されたデータサイズとチェックサムは、高速シリアル通信装置118からDSPカード102の第1のDSPに伝達される。次にS608で、PC122は、データサイズとチェックサムの送信を完了したか否かを判断し、未だ送信を完了していないと判断したときにはS606に戻り、データサイズとチェックサムの送信を継続する。S608で、データサイズとチェックサムの送信を完了したと判断すると、処理はS610に進む。
図5に、DSPカード102に実装されたDSP104を再起動するための起動用データを送信するプログラム提供装置122、例えばPC122における、動作の一例を表すフローチャートを示す。先ずS602で、PC122は、PC122の高速シリアル通信装置124、シリアル伝送路120を介して、DSPカード102に実装された高速シリアル通信装置118に、DSP104を再起動するための起動用データを受信する指令を送信する。高速シリアル通信装置118によって受信されたDSP104を再起動するための起動用データを受信する指令は、高速シリアル通信装置118からDSPカード102の第1のDSPに伝達される。次にS604で、PC122は、送信する起動データファイルからデータサイズおよびチェックサムを計算する。次にS606で、PC122は、S604で計算したデータサイズとチェックサムを、高速シリアル通信装置124、シリアル伝送路120を介して、DSPカード102に実装された高速シリアル通信装置118に送信する。高速シリアル通信装置118によって受信されたデータサイズとチェックサムは、高速シリアル通信装置118からDSPカード102の第1のDSPに伝達される。次にS608で、PC122は、データサイズとチェックサムの送信を完了したか否かを判断し、未だ送信を完了していないと判断したときにはS606に戻り、データサイズとチェックサムの送信を継続する。S608で、データサイズとチェックサムの送信を完了したと判断すると、処理はS610に進む。
S610において、PC122は、起動データファイルを、PC122に実装された高速シリアル通信装置124、シリアル伝送路120を介して、DSPカード102に実装された高速シリアル通信装置118に送信する。前述したように、第1のDSPは、高速シリアル通信装置118によって受信された起動データファイルを、DSPカード102に実装された外部記憶装置114に保存する。
以上述べた実施形態によれば、CPUを備えていないDSPカードに実装されたDSPを起動するシステム、装置および方法が提供される。また、プログラム提供装置からDSPカードへのデータ伝送に高速シリアル通信を用いることによって、極めて短時間で協調的にDSPをブートすることができる。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これらの実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
102、102−1〜102−M・・・DSPカード、
104、104−1〜104−N・・・DSP、
106・・・プロセッサバス、 108・・・フラッシュROM、
110・・・バスプロトコル変換機能部、 112・・・メモリバス、
114・・・外部記憶装置、 116・・・拡張バス、
118・・・高速シリアル通信装置、 120・・・シリアル伝送路、
122・・・プログラム提供装置、PC、 124・・・高速シリアル通信装置、
126・・・CPU、 302・・・回線データ複製装置
104、104−1〜104−N・・・DSP、
106・・・プロセッサバス、 108・・・フラッシュROM、
110・・・バスプロトコル変換機能部、 112・・・メモリバス、
114・・・外部記憶装置、 116・・・拡張バス、
118・・・高速シリアル通信装置、 120・・・シリアル伝送路、
122・・・プログラム提供装置、PC、 124・・・高速シリアル通信装置、
126・・・CPU、 302・・・回線データ複製装置
Claims (9)
- ディジタル信号処理を行うDSP(ディジタルシグナルプロセッサ)カードと、
このDSPカードに、伝送路を介して、処理プログラムを含む起動用データを提供するプログラム提供装置とを備え、
このプログラム提供装置は、
CPUと、
前記起動用データを保存する記憶装置と、
前記起動用データを、前記伝送路を介して、シリアルデータの形式で送信する送信装置とを備え、
前記DSPカードは、
内部メモリおよびこの内部メモリに記憶されるデータをDMA転送するDMAコントローラを有する1または複数のDSPと、
前記DSPの内部メモリに転送されるブート制御プログラムを保存する不揮発性メモリと、
前記DSPが実行する処理プログラムを含む起動用データをシリアルデータの形式で受信する受信装置と、
この受信装置によって受信された起動用データを保存する外部記憶装置とを備え、
前記DSPは、前記外部記憶装置に保存された前記起動用データに含まれる前記DSPが実行する処理プログラムをロードすることを特徴とするディジタルシグナルプロセッサを起動するシステム。 - 前記DSPカードが備える1または複数のDSPの中の1のDSPは予め定められた第1のDSPであり、
この第1のDSPは、前記起動用データを受信する処理を行い、受信した前記起動用データを前記外部記憶装置に保存し、受信した前記起動用データを検証し、前記起動用データに含まれ前記第1のDSPが実行する処理プログラムを前記第1のDSPにロードし、再ブート対象のDSPであって前記第1のDSP以外のDSPに対して起動指令を発行し、
前記起動指令を受けた前記第1のDSP以外のDSPは、そのDSPが実行する処理プログラムをロードすることを特徴とする請求項1に記載のディジタルシグナルプロセッサを起動するシステム。 - 前記システムは、
前記伝送路に挿入され、前記送信装置から送信される前記起動データを受信し、受信した前記起動データを複製し、複製した起動データを前記受信装置に送信する中継機能を有する回線データ複製装置を、さらに、備えることを特徴とする請求項1または請求項2に記載のディジタルシグナルプロセッサを起動するシステム。 - 内部メモリおよびこの内部メモリに記憶されるデータをDMA転送するDMAコントローラを有し、ディジタル信号処理を行う1または複数のDSPと、
前記DSPの内部メモリに転送されるブート制御プログラムを保存する不揮発性メモリと、
前記DSPが実行する処理プログラムを含む起動用データを、伝送路を介して、シリアルデータの形式で受信する受信装置と、
この受信装置によって受信された起動用データを保存する外部記憶装置とを備え、
前記DSPは、前記外部記憶装置に保存された前記起動用データに含まれる前記DSPが実行する処理プログラムをロードすることを特徴とするディジタルシグナルプロセッサを起動する装置。 - 前記DSPカードが備える1または複数のDSPの中の1のDSPは予め定められた第1のDSPであり、
この第1のDSPは、前記起動用データを受信する処理を行い、受信した前記起動用データを前記外部記憶装置に保存し、受信した前記起動用データを検証し、前記起動用データに含まれ前記第1のDSPが実行する処理プログラムを前記第1のDSPにロードし、再ブート対象のDSPであって前記第1のDSP以外のDSPに対して起動指令を発行し、
前記起動指令を受けた前記第1のDSP以外のDSPは、そのDSPが実行する処理プログラムをロードすることを特徴とする請求項4に記載のディジタルシグナルプロセッサを起動する装置。 - 前記受信装置は、
前記伝送路に挿入され、前記起動データを受信し、受信した前記起動データを複製し、複製した起動データを複数の出力先に送信する中継機能を有する回線データ複製装置を介して、前記起動データを受信することを特徴とする請求項4または請求項5に記載のディジタルシグナルプロセッサを起動する装置。 - 請求項4に記載のディジタルシグナルプロセッサを起動する装置において、前記DSPカードが備える1または複数のDSPの中の1のDSPは予め定められた第1のDSPによって、
前記起動用データの受信処理を行うステップと、
受信した前記起動用データを前記外部記憶装置に保存するステップと、
受信した前記起動用データを検証するステップと、
前記起動用データに含まれ前記第1のDSPが実行する処理プログラムを前記第1のDSPにロードするステップと、
再ブート対象のDSPであって前記第1のDSP以外のDSPに対して起動指令を発行するステップと
を実行することを特徴とするディジタルシグナルプロセッサを起動する方法。 - 前記方法は、
前記起動指令を前記第1のDSPから受けた前記第1のDSP以外のDSPによって、そのDSPが実行する処理プログラムをロードするステップを、さらに、含むことを特徴とする請求項7に記載のディジタルシグナルプロセッサを起動する方法。 - 前記起動データは、
前記伝送路に挿入され、前記起動データを受信し、受信した前記起動データを複製し、複製した起動データを複数の出力先に送信する中継機能を有する回線データ複製装置を介して、前記ディジタルシグナルプロセッサを起動する装置に受信されることを特徴とする請求項7または請求項8に記載のディジタルシグナルプロセッサを起動する方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010259004A JP2012108853A (ja) | 2010-11-19 | 2010-11-19 | ディジタルシグナルプロセッサを起動するシステム、装置および方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010259004A JP2012108853A (ja) | 2010-11-19 | 2010-11-19 | ディジタルシグナルプロセッサを起動するシステム、装置および方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2012108853A true JP2012108853A (ja) | 2012-06-07 |
Family
ID=46494385
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010259004A Pending JP2012108853A (ja) | 2010-11-19 | 2010-11-19 | ディジタルシグナルプロセッサを起動するシステム、装置および方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2012108853A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018507489A (ja) * | 2016-03-28 | 2018-03-15 | 中▲車▼青▲島▼四方▲車▼▲輛▼研究所有限公司Crrc Qingdao Sifang Rolling Stock Research Institute Co.,Ltd. | Tigersharc dspブート管理チップおよび方法 |
JP2019164442A (ja) * | 2018-03-19 | 2019-09-26 | 株式会社東芝 | コンピュータシステムおよびアプリケーション起動方法 |
-
2010
- 2010-11-19 JP JP2010259004A patent/JP2012108853A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018507489A (ja) * | 2016-03-28 | 2018-03-15 | 中▲車▼青▲島▼四方▲車▼▲輛▼研究所有限公司Crrc Qingdao Sifang Rolling Stock Research Institute Co.,Ltd. | Tigersharc dspブート管理チップおよび方法 |
US10203962B2 (en) | 2016-03-28 | 2019-02-12 | Crrc Qingdao Sifang Rolling Stock Research Institute Co., Ltd. | Tigersharc DSP boot management chip and method |
JP2019164442A (ja) * | 2018-03-19 | 2019-09-26 | 株式会社東芝 | コンピュータシステムおよびアプリケーション起動方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9665521B2 (en) | System and method for providing a processing node with input/output functionality by an I/O complex switch | |
US11003780B2 (en) | Method and apparatus for validating BIOS firmware using a baseboard management controller | |
JP5767750B2 (ja) | 管理エンジンを利用したコンポーネント更新 | |
US10303458B2 (en) | Multi-platform installer | |
US8271707B2 (en) | Method and system for PCI hybrid function | |
US10802916B2 (en) | System and method to enable rapid recovery of an operating system image of an information handling system after a malicious attack | |
US9372702B2 (en) | Non-disruptive code update of a single processor in a multi-processor computing system | |
US10459742B2 (en) | System and method for operating system initiated firmware update via UEFI applications | |
US20180341497A1 (en) | System and Method to Configure Communication Lanes of a Central Processing Unit | |
US20210357202A1 (en) | Firmware updating | |
CN109413497B (zh) | 一种智能电视机及其系统启动方法 | |
US11144326B2 (en) | System and method of initiating multiple adaptors in parallel | |
CN104050006A (zh) | 一种fpga的更新系统及其更新方法 | |
US11416233B1 (en) | Software upgrade system and method for a baseboard management controller configured in an information handling system | |
CN116521209B (zh) | 操作系统的升级方法及装置、存储介质及电子设备 | |
JP2012108853A (ja) | ディジタルシグナルプロセッサを起動するシステム、装置および方法 | |
US11263023B1 (en) | System and method for updating host operating system drivers from a management controller | |
CN114189305B (zh) | 一种时间同步方法、装置、设备及可读存储介质 | |
US11783040B2 (en) | Cryptographically verifying a firmware image with boot speed in an information handling system | |
TWI777664B (zh) | 嵌入式系統的開機方法 | |
US20240103846A1 (en) | Systems and methods for coordinated firmware update using multiple remote access controllers | |
TWI840849B (zh) | 計算系統、電腦實施方法及電腦程式產品 | |
US11068276B2 (en) | Controlled customization of silicon initialization | |
WO2014068774A1 (ja) | 情報処理装置、演算処理装置、及びカウンタ同期方法 | |
CN115867889A (zh) | 通过边带处理器的计算机系统通信 |