JP2008152722A - ソフトウェア開発支援装置 - Google Patents
ソフトウェア開発支援装置 Download PDFInfo
- Publication number
- JP2008152722A JP2008152722A JP2006342727A JP2006342727A JP2008152722A JP 2008152722 A JP2008152722 A JP 2008152722A JP 2006342727 A JP2006342727 A JP 2006342727A JP 2006342727 A JP2006342727 A JP 2006342727A JP 2008152722 A JP2008152722 A JP 2008152722A
- Authority
- JP
- Japan
- Prior art keywords
- processing unit
- data
- simulator
- signal
- conversion processing
- 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
Landscapes
- Debugging And Monitoring (AREA)
Abstract
【課題】シミュレーション精度の低下を来たすことなく、シミュレーション環境のパーフォーマンスを向上させ、リアルタイムにシミュレーションを行なえるソフトウェア開発支援装置を提供する。
【解決手段】所定周期で操作信号を出力するとともにシミュレータから入力されたデータに基づいてシミュレーション結果を表示する操作装置1と、操作信号に従って評価対象ソフトウェアを実行する演算処理部4を備えたシミュレータからなり、シミュレータ3に外部から入力される被処理信号を所定周期とは非同期で変換処理するとともに変換処理したデータをデータメモリ部に蓄積し、蓄積されたデータを演算処理部4のバッファメモリに一括転送する信号変換処理部5を備え、演算処理部4はバッファメモリに一括転送されたデータに対して評価対象ソフトウェアを起動するプロセス制御部4Bを備えている。
【選択図】図1
【解決手段】所定周期で操作信号を出力するとともにシミュレータから入力されたデータに基づいてシミュレーション結果を表示する操作装置1と、操作信号に従って評価対象ソフトウェアを実行する演算処理部4を備えたシミュレータからなり、シミュレータ3に外部から入力される被処理信号を所定周期とは非同期で変換処理するとともに変換処理したデータをデータメモリ部に蓄積し、蓄積されたデータを演算処理部4のバッファメモリに一括転送する信号変換処理部5を備え、演算処理部4はバッファメモリに一括転送されたデータに対して評価対象ソフトウェアを起動するプロセス制御部4Bを備えている。
【選択図】図1
Description
本発明は、機器を制御するマイクロコンピュータへの組込みソフトウェアを開発評価するためのソフトウェア開発支援装置に関する。
従来、製品に組み込まれるソフトウェアの開発時に、実機試験の前に或いは実機試験に替えて擬似信号を入力してソフトウェアの動作を検証するソフトウェア開発支援装置として、シミュレータに対して操作信号を出力するとともに前記シミュレータから入力されたデータに基づいてシミュレーション結果を表示する操作装置と、前記操作装置から入力された操作信号に従って評価対象ソフトウェアを実行するとともにその結果を前記操作装置に出力する演算処理部を備えたシミュレータとをLANで接続したソフトウェア開発支援装置が提案されている。
このようなソフトウェア開発支援装置として、特許文献1には、アプリケーション処理機能と通信機能を備えた中央ブロックと、マイクロコンピュータの周辺装置を擬似的にソフトウェアで実現して入出力処理を行う疑似マイクロコンピュータ周辺装置、演算機能、及び通信機能を有し、前記中央ブロックとPCIバスで接続される周辺ブロックと、電子制御ユニットのハードウエアに相当する回路を有し、前記周辺ブロックに接続するインタフェース回路ブロックとを備え、前記中央ブロックの通信機能と、前記周辺ブロックの前記疑似マイクロコンピュータ周辺装置とが前記PCIバスで接続され、このPCIバスを介して前記通信機能と前記疑似マイクロコンピュータ周辺装置との間で、直接データの送受信が行えるように構成されているマイクロコンピュータのロジック開発装置が提案されている。
上述したロジック開発装置は、別途LANで接続された操作装置から所定周期でシミュレータに入力される操作信号や被処理データに基づいて評価対象ソフトウェアが実行され、その結果が操作装置に出力されるものであったため、評価対象ソフトウェアが大量の被処理データを必要とする場合や操作装置に大量のデータを出力する必要のある場合には、ネットワークのパーフォーマンスが低下して評価対象ソフトウェアをリアルタイムに実行させることが困難であるという問題があった。
例えば、車載レーダ装置に搭載される制御用ソフトウェアを評価する場合には、被処理信号としてレーダから出力される反射信号をAD変換した被処理データを模擬した被処理データを操作装置からシミュレータに供給する必要があるが、操作装置から大量の被処理データを送信する場合には、遅延が生じて評価対象ソフトウェアによる演算周期とマッチングが取れず、リアルタイムに動作させることができないという問題が生じるため、評価対象ソフトウェアによる演算周期を大幅に長く設定せざるを得ず、シミュレーションに時間がかかるのである。
そこで、被処理データの容量を制限すると精度のよいシミュレーションができないため、評価対象ソフトウェアの十分な検証ができなくなるという問題もあった。
また、シミュレーションのために必要な様々なパターンの被処理データを事前に作成する作業も煩雑で手間が掛かるという問題もあった。
このような問題は、車載カメラで撮影された映像情報や集音装置で取り込まれた音声情報等の大量のデータを処理する必要のある車載装置に対する制御ソフトウェアを評価する際にも同様であり、このような状況は、LANを介して接続されたエンジンやブレーキ等の他の車載機器のシミュレータと連動させて評価する必要のある場合に特に問題となるため、効率的なソフトウェア開発を困難にするという問題もあった。
本発明は、上述の種々の問題点に鑑み、シミュレーション精度の低下を来たすことなく、シミュレーション環境のパーフォーマンスを向上させ、リアルタイムにシミュレーションを行なえるソフトウェア開発支援装置を提供することを目的とする。
上述の目的を達成するため、本発明によるソフトウェア開発支援装置の特徴構成は、所定周期でシミュレータに対して操作信号を出力するとともに前記シミュレータから入力されたデータに基づいてシミュレーション結果を表示する操作装置と、前記操作装置から入力された操作信号に従って評価対象ソフトウェアを実行してその結果を前記操作装置に出力する演算処理部を備えたシミュレータとを備えてなるソフトウェア開発支援装置であって、前記シミュレータに、外部から入力される被処理信号を前記所定周期とは非同期で変換処理するとともに変換処理したデータをデータメモリ部に蓄積し、蓄積されたデータを前記演算処理部のバッファメモリに一括転送する信号変換処理部を備え、前記演算処理部は前記バッファメモリに一括転送されたデータに対して評価対象ソフトウェアを起動するプロセス制御部を備えている点にある。
上述の構成によれば、シミュレータに備えた信号変換処理部に、操作装置とシミュレータ間の送受信のための周期とは関係なく、外部からリアルな被処理信号が入力され、その被処理信号が信号変換処理部で被処理データに変換処理されてデータメモリ部に蓄積され、蓄積された被処理データが演算処理部のバッファメモリに一括転送される。被処理データが一括転送されるとプロセス制御部により評価対象ソフトウェアが起動されてシミュレーションが実行される。その結果、大量の蓄積データに基づいてリアルタイムに評価対象ソフトウェアを実行できるようになる。
以上説明した通り、本発明によれば、シミュレーション精度の低下を来たすことなく、シミュレーション環境のパーフォーマンスを向上させ、リアルタイムにシミュレーションを行なえるソフトウェア開発支援装置を提供することができるようになった。
以下に、本発明によるソフトウェア開発支援装置の実施形態を説明する。
FM−CW方式の車載レーダに組み込まれる制御ソフトウェアを評価対象ソフトウェアとするソフトウェア開発支援装置は、図1に示すように、シミュレータ3に対して操作信号を出力するとともにシミュレータ3から入力されたデータに基づいてシミュレーション結果を表示する操作装置1と、操作装置1から入力された操作信号に従って評価対象ソフトウェアを実行するとともにその結果を操作装置1に出力する演算処理部4を備えたパーソナルコンピュータでなるシミュレータ3とをLAN(Ethernet、ゼロックス社の登録商標)2で接続して構成されている。
操作装置1及びシミュレータ3は、夫々オペレーティングシステム(以下、「OS」と略記する。)を備えたパーソナルコンピュータで構成され、開発支援用のアプリケーションソフトウェアが搭載されている。
操作装置1はOSに組み込まれたGUI(Graphical User Interface)を介してオペレータが操作入力可能に構成され、オペレータによる操作に基づいてシミュレータ3に移植された評価対象ソフトウェアが実行され、その結果が表示される。つまり、アプリケーションソフトウェアに基づいて表示部に表示された操作画面に対してマウスやキーボードを操作することにより、シミュレータに対する環境条件の設定や評価対象ソフトウェアの起動または停止等の操作が可能に構成され、シミュレータから送信される評価対象ソフトウェアの実行結果が操作画面に表示されるように構成されている。
シミュレータ3は、OSを実行するCPUが搭載されたマザーボードと、マザーボードとPCIバス6で接続される拡張スロットルが装着されている。
演算処理部4はパーソナルコンピュータのマザーボード上にOS及びファームウェアの一部を伴なって構築され、演算処理部4により実行管理される評価対象ソフトウェアがマザーボードに備えたメモリ4Hに格納されている。また、拡張スロットルにCPUやFPGA等により構成される信号変換処理部5を備えた信号処理ボードが挿入され、信号変換処理部5と演算処理部4がPCIバス6により相互に接続されている。
信号変換処理部5は、外部に対してレーダ波を送信するとともに外部から入力される被処理信号であるレーダ波の反射波を受信するアンテナを備えた送受信回路5Cと、受信された信号を所定のサンプリングパルスに基づいてAD変換するAD変換回路5Dと、演算処理部4の演算周期とは非同期でAD変換処理するとともに変換処理したデータを蓄積するデータメモリ部5Aと、データメモリ部5Aに蓄積されたデータを演算処理部4のバッファメモリ4Aに一括転送するDMA処理部5Bを備えている。
送受信回路5Cは、レーダ波を生成する発振回路と発振回路から出力されたミリ波を三角波信号により周波数変調するFM変調回路等でなる送信回路と、アンテナで受信された信号を所定レベルに増幅する増幅回路等と増幅された受信信号とFM変調回路からの出力信号を混合してビート信号を生成するミキシング回路とミキシング回路の出力からビート周波数成分を抽出するフィルタ回路等でなる受信回路と、AD変換回路5Dに対するサンプリングパルス等の制御信号を生成するパルス生成回路等を備えている。
フィルタ回路から出力されるビート信号がAD変換回路5DによりAD変換され、データメモリ部5Aに所定容量のデータが蓄積されるとDMA処理部5Bによりバッファメモリ4Aに一括転送される。
演算処理部4はDMA処理部5Bによりデータメモリ部5Aから一括転送されたデータを格納するバッファメモリ4Aと、バッファメモリ4Aに転送されたデータに対する処理を行なう評価対象ソフトウェアを起動制御するプロセス制御部4Bを備えている。
評価対象ソフトウェアは入力データに対して関数変換処理としての高速フーリエ変換FFT(Fast Fourier Transform)を実行する関数変換処理部4Cと、関数変換処理部4Cにより変換されたデータに基づいて解析処理する解析処理部4Dとしてコンピュータを機能させるためのスレッドを備えたタスクを備えて構成されている。
プロセス制御部4Bは操作装置1から送信される操作信号に基づいて、評価対象ソフトウェアを起動または停止するとともに実行結果を操作装置1に送信する。プロセス制御部4Bは評価対象ソフトウェアを起動すると、信号変換処理部5と連携して評価対象ソフトウェアの必要なスレッドを起動し、所定のタスクが実行されるように管理する。
演算処理部4はバッファメモリ4Aに転送されたデータを時系列的に蓄積する履歴データメモリ4Eをさらに備え、プロセス制御部4Bは履歴データメモリ4Eに蓄積されたデータをバッファメモリ4Aに読み出して評価対象ソフトウェアを実行させる再生処理部4Fを備えている。
さらに、演算処理部4は履歴データメモリ4Eに蓄積された履歴データをLAN2を介して操作装置1に送信し、或いは操作装置1に蓄積された過去の履歴データを受信して履歴データメモリ4Eに格納する履歴データ送受信処理部4Gを備えるとともに、解析処理部4Dによる解析結果を操作装置1に送信するCANインタフェース4Iを備えている。
FM−CW方式のレーダでは、AD変換回路5Dにより取り込まれるビート信号から求まる周波数(以下、「ビート周波数」と記す。)に基づいて対象物の相対距離及び相対速度が求められる。
相対距離及び相対速度の算出原理を説明する。図2(a)に示すように、ビート周波数fBは送信波と反射波とをミキシングした混合波の周波数、つまり送信波の周波数とドップラー効果によりドップラーシフトを起こした反射波の周波数との差分から求められ、ドップラーシフトの影響により図2(b)に示すように変化する。
図2(a)において、Tは送信波と反射波との遅延時間、Δfは変調周波数幅、f0は送信波の中心周波数、fmは変調信号の周波数である。図2(b)において、fBU(=fR+fV)及びfBD(=fR−fV)は、夫々ビート周波数fB上昇区間の上昇ビート周波数、及び、ビート周波数fB下降区間の下降ビート周波数であり、fRは〔数1〕で示すように対象物との相対距離Rに比例する距離周波数、fVは〔数2〕で示すように対象物との間の相対速度Vに比例する速度周波数となる。ここに、〔数1〕、〔数2〕で示すCは光速である。
従って、ビート信号のfBUとfBDとから算出されるfRと〔数1〕に基づいて検出対象物の相対距離Rが〔数3〕のように求められ、ビート信号のfBUとfBDとから算出されるfVと〔数2〕に基づいて検出対象物の相対速度Vは〔数4〕のように求められる。
関数変換処理部4Cを構成する評価対象ソフトウェアは、バッファメモリ4Aに蓄積されたビート信号に対応するデータを高速フーリエ変換(FFT)してビート周波数を算出する複数のスレッドが動作することにより実現され、解析処理部4Dを構成する評価対象ソフトウェアは、関数変換処理部4Cの各スレッドで算出されたビート周波数と〔数3〕及び〔数4〕に基づいて対象物との相対距離Rと相対速度Vを算出する単一のスレッドが動作することにより実現されている。
以下、実車両に上述のソフトウェア開発支援装置を搭載して評価する場合の処理フローを図3及び図4に示すフローチャートに基づいて説明する。
ソフトウェア開発支援装置に電源が投入されると(SA1)、操作装置1及びシミュレータ3のOSが起動して初期設定が行なわれ、アプリケーションが立ち上がる。アプリケーションが立ち上がると、例えば、操作装置1ではシミュレーションの条件設定等の初期画面が表示され、シミュレータ3ではデータメモリ部5Aのデータがリセットされ、DMA処理部5Bの転送レジスタ等の値が初期化される等シミュレーションを実行するための前処理が行なわれる(SA2)。
操作装置1のGUIを介してオペレータから各種の設定条件が入力されると、それらの設定情報がLANを介してシミュレータ3に送信され、シミュレーションが実行可能な環境に設定される(SA3)。
具体的には、操作装置1とシミュレータ3との間で遣り取りされるデータチャネルの設定、関数変換処理部4Cで演算処理に使用されるFFT関数や解析処理部4Dで相対距離Rと相対速度Vを算出する演算処理に使用される認識アルゴリズムの設定、DMA転送のためのアドレス設定や転送されたデータ群の識別情報の設定、設定されたDMA転送領域に対応して選択される関数変換処理スレッドであるFFTスレッドの対応付け等が行なわれる。ここで、FFT関数や認識アルゴリズムは評価対象ソフトウェアの一部を構成し、ユーザに対応して複数の異なるアルゴリズムを採用した複数のスレッドとして予め操作装置1を介して送信され、マザーボードに備えたメモリ4Hに格納されているもので、スレッド毎に評価できるように構成されている。
操作装置1からシミュレータ3にシミュレーションの実行指令が送信されると(SA4)、演算処理部4から出力されるPCIバスを介した起動指令に基づいて信号変換処理部(信号処理ボード)5の送受信回路5Cが駆動されてレーダ送信波が出力され、反射波とミキシングされたビート信号が送受信回路5Cを介してAD変換回路5Dに入力される(SA5)。
図5に示すように、AD変換回路5Dには、送受信回路5Cに備えたパルス生成回路から数百μsec.の周期でデータ取得開始パルスが入力され、データ取得開始パルスの一周期の間にビート周波数fB上昇区間とビート周波数fB下降区間に対応するデータ切替パルスと、当該データ切替パルスに同期したサンプリングパルスが入力される。
AD変換回路5Dにより、データ切替パルスに同期してビート周波数fB上昇区間とビート周波数fB下降区間の夫々三回、合計六回のサンプリング時に所定容量のデータがサンプリングされる。例えば、一回のサンプリング時に1024byte(2byte×512回)の容量のデータがサンプリングされてデータメモリ部5Aに格納される(SA6)。
一回のサンプリングが終了する度に信号変換処理部5から演算処理部4に対して割込みリクエストが送信され、リクエストが演算処理部4に受け付けられると信号変換処理部5のデータメモリ部5Aに格納されたサンプリングデータ群がDMA処理部5Bを介して初期設定で指定された演算処理部(マザーボード)4のバッファメモリ4Aの所定領域にDMA転送される(SA7)。
DMA転送が終了すると、演算処理部4では、プロセス制御部4Bにより上述の複数のFFTスレッドのうち、DMA転送されたバッファメモリ4Aの領域に対応付けられたFFTスレッドが起動されてビート周波数が算出され、バッファメモリ4Aに区画された演算結果格納領域に記憶される(SA8)。
図5を参照して説明すると、データ切替パルス1のタイミングでAD変換され、バッファメモリの領域1にDAM転送されたデータに対してFFTスレッド1が起動され、データ切替パルス2のタイミングでAD変換され、バッファメモリの領域2にDAM転送されたデータに対してFFTスレッド2が起動されるという動作がデータ切替パルス6に対する処理まで繰り返されるのである。
つまり、DMA転送されるデータブロックとFFTスレッド間には相互に対応付けられた個別の管理番号が付されて管理され、演算処理部4のプロセス制御部4Bは転送されたデータブロックに対応するFFTスレッドを起動するように制御する。本実施形態では、上述したように、六つのデータブロックに対応して六つのFFTスレッドが管理され、対応付けはステップSA3の環境条件の設定ステップで行なわれる。
このようにしてデータ取得開始パルスの一周期の間に六回のDMA転送が行なわれ、DMA転送されたバッファメモリ4Aの領域に対応付けられた六つのFFTスレッドがプロセス制御部4Bにより順次起動され、全てのFFTスレッドの実行が終了したことが、各FFTスレッドが生成し演算結果格納領域にセットする処理完了フラグにより検出されると(SA9)、プロセス制御部4Bにより上述の認識アルゴリズムのスレッドが起動されて(SA10)、当該スレッドにより対象物との相対距離Rと相対速度Vが算出され、バッファメモリ4Aに区画された演算結果格納領域に記憶される(SA11)。
つまり、プロセス制御部4Bはバッファメモリ4Aに一括転送されたデータに対して評価対象ソフトウェアを起動するように動作する。
認識アルゴリズムのスレッドは、連続する二つのデータブロックで得られるビート周波数fB上昇区間の上昇ビート周波数とビート周波数fB下降区間の下降ビート周波数に基づいて対象物との相対距離Rと相対速度Vを求める処理を三回繰り返し、その平均値を対象物との相対距離Rと相対速度Vとして算出する。
尚、認識アルゴリズムのスレッドはFFTスレッドより実行優先順位が高く設定されており、認識アルゴリズムのスレッドが動作中に次周期のデータ取得開始パルスに応じてサンプリングされたデータがDMA転送された場合には、認識アルゴリズムのスレッドが終了した後にFFTスレッドが起動される。
このような処理が繰り返される過程で、演算処理部4では、プロセス制御部4Bにより認識アルゴリズムのスレッドが起動されるのと並行して、前回の認識アルゴリズムのスレッドにより算出された対象物との相対距離Rと相対速度Vがバッファメモリ4Aから読み出され(SA12,SA13)、CANインタフェース4Iを介して操作装置1に送信され、操作装置1の表示部にその結果が表示される(SA14)。
さらに、演算処理部4では、図5に示すように、バッファメモリ4Aに格納された六回のサンプリングデータが履歴データメモリ4Eにブロック転送され、次の周期のデータ取得開始パルスによりサンプリングされるデータのDMA転送に備える(SA15)。
シミュレータ3では、上述のステップSA4からステップSA15の処理が23msec.の演算周期(SA16)として繰り返され、当該演算周期の最後に操作装置1との間でLANを介して通信が行なわれ、初期設定されたデータチャネルに対応するデータの送受信や設定操作装置1からの新たな操作情報の送信処理等が行なわれた後に(SA17)、ステップSA4に戻り、シミュレーションの終了指令が入力されるまで同様の処理が繰り返される。
上述したデータ取得開始パルスの周期をシミュレータの演算周期と等しくするか短く設定することにより、シミュレータの演算周期内で少なくとも六回のデータサンプリングと、対応する相対距離等の演算処理が行なわれる。
つまり、シミュレータに、操作装置とシミュレータ3の交信周期とは非同期で外部から入力される被処理信号を変換処理するとともに変換処理したデータをデータメモリ部に蓄積し、蓄積されたデータを演算処理部のバッファメモリに一括転送する信号変換処理部を備え、プロセス制御部がバッファメモリに一括転送されたデータに対して評価対象ソフトウェアを起動するように構成されている。
尚、履歴データメモリ4Eに転送されたデータ取得開始パルス一周期分のサンプリングデータは履歴データ送受信処理部4GによりLANを介して外部記憶装置として機能する操作装置1に随時送信され、操作装置1のメモリに格納される。履歴データは操作装置1に必ず送信されるものではなく、ステップSA3の初期設定時に送信するように設定された場合に限られ、そのような設定がなされないときには履歴データメモリ4Eに蓄積される。
履歴データメモリ4Eに蓄積された履歴データ、または、初期設定でLANを介して外部記憶装置として機能する操作装置1から履歴データメモリ4Eに書き込まれた履歴データは、再生処理部4Fにより再度シミュレーションが実行されるように制御される。
詳述すると、再生処理部4Fは、同一周期でサンプリングされたブロック単位にバッファメモリ4Aに読み出した後にプロセス制御部4Bを起動し、プロセス制御部4Bが複数のFFTスレッドを起動させ、各FFTスレッドが処理を終了すると解析処理スレッドである認識アルゴリズムのスレッドを起動させるのである。
このように蓄積された履歴データを用いてシミュレーションを繰り返す環境が整えられているので、新たなスレッドが開発されたとき、既存のスレッドを再評価する必要がある場合に、実車環境ではなく室内でリアルタイムにシミュレーションができるようになる。
以上の説明では、信号変換処理部に送信波を自ら送信する送受信回路5Cを備えたものを説明したが、外部の送信回路から送信される送信波と、外部の送信回路から送信され対象物から反射した反射波をアンテナを介して受信してビート信号を生成する受信回路を設けるものであってもよい。
また、以上の説明では、ビート信号が一系統の場合を説明したが、対象物の位置する方向を求めるためには三角測量の原理より少なくとも二系統のビート信号が要求される。本発明では、シミュレータ3の拡張スロットルに信号変換処理部5を複数備えることが可能なように構成されており、プロセス制御部4Bは各信号変換処理部5からDMA転送されたデータの夫々に対して並列して関数変換処理部つまりFFTスレッドを起動するとともに、関数変換処理部により変換されたデータに基づいて解析処理部つまり認識アルゴリズムのスレッドを順次起動させるように構成されている。
つまり、シミュレータに信号変換処理部を複数備え、プロセス制御部は各信号変換処理部から一括転送されたデータの夫々に対して並列して関数変換処理部を起動するとともに、関数変換処理部により変換されたデータに基づいて解析処理部を順次起動させるように構成されている。N個の信号変換処理部が設けられる場合におけるFFTスレッドの動作を図6に示す。
例えば、上述の例に基づいて説明すると、系統毎に設けられた信号変換処理部5からデータ取得開始パルスの一周期の間に六回のDMA転送が行なわれ、DMA転送されたバッファメモリ4Aの領域に対応付けられた六つのFFTスレッドがプロセス制御部4Bにより順次起動されるのである。このとき、FFTスレッドは系統毎に六つ設定され合計12のスレッドが各データブロックに対応付けられて、プロセス制御部4Bにより系統毎に起動される。
複数系統の信号変換処理部5が設けられる場合には、プロセス制御部4Bは異なる系統のFFTスレッドを同時に実行させるマルチスレッド制御を行ない、系統毎に六つのFFTスレッドの処理が終了すると、先に終了した系統から単一の認識アルゴリズムのスレッドが実行される。ここでは、認識アルゴリズムのスレッドに各系統で算出された相対距離とアンテナ間の物理距離に基づいて対象物の位置する角度(方位)を算出するアルゴリズムが付加されている。
マルチスレッド制御とは、任意のFFTスレッドの実行中に新たなDMA転送が終了すると対応する新たなFFTスレッドを時分割で実行させることをいい、認識アルゴリズムのスレッドはFFTスレッドより実行優先順位を高く設定している。従って、認識アルゴリズムのスレッドの実行中は新たなFFTスレッドの実行は受け付けられず待機される。尚、複数のFFTスレッドを実行制御する際には、DMA転送終了後に要求されるFFTスレッドを先に実行中のFFTスレッドに対して割込み処理で実行するように構成してもよい。
このような構成により、複数のFFTスレッドと単一の認識アルゴリズムのスレッドに基づいて複数系統のレーダを同時にシミュレーションすることも可能となっている。例えば、車両に二系統のビート信号を生成する前方用のレーダ装置と、二系統のビート信号を生成する後方用のレーダ装置に対して同時にシミュレーションできるようになる。
具体的には、拡張スロットルに接続された四枚の信号変換処理部5により、夫々の系統のビート信号を処理することにより四系統のビート信号が夫々独立してAD変換され、プロセス制御部4Bにより複数のFFTスレッドに対してマルチスレッド制御され、単一の認識アルゴリズムのスレッドにより前方車両の相対速度、相対距離、角度、及び、後方車両の相対速度、相対距離、角度が算出される。
上述のソフトウェア開発支援装置のLANに他のシミュレータを接続し、他の車載装置と統合された状態におけるシミュレーションを行なうことができる。
例えば、エンジンを模擬するエンジンモデル演算部にエンジンECU(電子制御装置)が接続されたエンジンシミュレータと、ブレーキを模擬するブレーキモデル演算部にブレーキECU(電子制御装置)が接続されたブレーキシミュレータをLANに接続し、上述のレーダシミュレータからの対象物の距離情報や速度情報に基づいて、エンジンシミュレータとブレーキシミュレータが協働して前方車両との車間を保ちながら走行する安全走行制御を行なうような場合に、各電子制御装置の評価を行なうことができる。
以下に別実施形態を説明する。
上述の実施形態では、信号変換処理部として外部から入力される被処理信号をAD変換するものを説明したが、信号変換処理部における変換処理はAD変換処理に限るものではなく、リアルタイムに大量のデータを変換処理するものであれば他の変換処理であってもよい。
上述の実施形態では、関数変換処理部4Cが高速フーリエ変換するFFTスレッドで構成されるものを説明したが、関数変換処理はこれに限定されるものではなく、例えば、画像データや音声データの圧縮伸張処理、フィルタ処理等の各種の関数変換処理で構成することができる。
上述の実施形態では、操作装置1とシミュレータ3とを接続するLANにイーサネット(Ethernet、ゼロックス社の登録商標)を採用したものを説明したが、イーサネット以外に任意の規格のLANを採用することができる。例えば、FlexRay等の車両用のLANを用いることも可能である。
上述の実施形態では、FM−CW方式の車載レーダに組み込まれる制御ソフトウェアを評価対象ソフトウェアとするソフトウェア開発支援装置について説明したが、評価対象ソフトウェアはFM−CW方式の車載レーダに組み込まれる制御ソフトウェアに限るものではなく、パルスドップラー方式等の他の方式の車載レーダに組み込まれる制御ソフトウェアであってもよい。また、レーダは車載されるものに制限されるものではないことは言うまでも無い。
上述の実施形態では、ソフトウェアの開発支援装置として、レーダの反射信号を被処理信号とするレーダ装置に組み込まれる評価対象ソフトウェアを対象としたものを説明したが、他に音声信号を被処理信号とする音声認識装置に組み込まれる評価対象ソフトウェアや、映像信号を被処理信号とする画像処理装置に組み込まれる評価対象ソフトウェア等、大量の被処理データを必要とする評価対象ソフトウェアをリアルタイムで評価する必要のある開発支援装置に適用することができる。その際、入力される被処理信号の系統数に応じて信号変換処理部を複数備えることにより、大容量の入力データに対してリアルタイムで処理することができるようになり、シミュレーションの効率化が促進される。
上述下実施形態では、評価対象ソフトウェアが、入力データに対して関数変換処理を実行する関数変換処理部と、前記関数変換処理部により変換されたデータに基づいて解析処理する解析処理部としてコンピュータを機能させるための複数のスレッドからなるプログラムを例に説明したが、評価対象ソフトウェアの構成はこれに限るものではなく、アプリケーションにより適宜構成することができる。
例えば、音声認識装置に組み込まれる評価対象ソフトウェアでは、AD変換した音声データに基づいて音素を検出するスレッドと、検出された音素から単語を認識する単度認識スレッドと、単語から意味を意味認識するスレッドを設けることにより、車両の音声操作装置のソフトウェアを開発評価することができるようになる。これらのスレッドはプロセス制御部により予め設定された優先順位に基づいて制御される。
上述した実施形態は、本発明を実現する一実施例を説明するものであり、各部の具体的な構成は、本発明の作用効果を奏する限りにおいて、構築するシステムに応じて適宜変更設計することが可能である。
1:操作装置
3:シミュレータ
4:演算処理部
4A:バッファメモリ
4B:プロセス制御部
4C:関数変換処理部
4D:解析処理部
4E:履歴データメモリ
4F:再生処理部
4G:履歴データ送受信処理部
5:信号変換処理部
5A:データメモリ部
3:シミュレータ
4:演算処理部
4A:バッファメモリ
4B:プロセス制御部
4C:関数変換処理部
4D:解析処理部
4E:履歴データメモリ
4F:再生処理部
4G:履歴データ送受信処理部
5:信号変換処理部
5A:データメモリ部
Claims (8)
- 制御装置に組み込まれて所定の制御を行う評価対象ソフトウェアを、前記制御装置を模擬するシミュレータで動作させるソフトウェア開発支援装置であって、
前記シミュレータは、評価対象ソフトウェアを所定周期で実行する演算処理部と、外部から入力される被処理信号を前記所定周期とは非同期で所定処理を行ってデータメモリ部に蓄積し、蓄積したデータを前記演算処理部のバッファメモリに転送する信号処理部とを備え、
前記演算処理部は、前記所定周期内に、前記信号処理部から前記バッファメモリにデータの転送があったことを示す割り込みを受けると、前記転送があったデータに対応する評価対象ソフトウェアを起動するプロセス処理部を備えているソフトウェア開発支援装置。 - 前記評価対象ソフトウェアは入力データに対して関数変換処理を実行する関数変換処理部と、前記関数変換処理部により変換されたデータに基づいて解析処理する解析処理部としてコンピュータを機能させるための複数のスレッドからなるプログラムを備え、前記プロセス制御部は前記バッファメモリに転送されたデータに対して関数変換処理部を起動する請求項1記載のソフトウェア開発支援装置。
- 前記シミュレータに前記信号変換処理部を複数備え、前記プロセス制御部は各信号変換処理部から転送されたデータの夫々に対して並列して前記関数変換処理部を起動するとともに、前記関数変換処理部により変換されたデータに基づいて前記解析処理部を順次起動させる請求項2記載のソフトウェア開発支援装置。
- 前記演算処理部は前記バッファメモリに転送されたデータを時系列的に蓄積する履歴データメモリを備え、前記プロセス制御部は前記履歴データメモリに蓄積されたデータを前記バッファメモリに読み出して前記評価対象ソフトウェアを実行させる再生処理部を備えている請求項1から3に何れかに記載のソフトウェア開発支援装置。
- 前記演算処理部は外部記憶装置との間で前記履歴データメモリに蓄積された履歴データを送受信する履歴データ送受信処理部を備えている請求項4記載のソフトウェア開発支援装置。
- レーダ制御装置に組み込まれて所定の制御を行う評価対象ソフトウェアを、前記レーダ制御装置を模擬するシミュレータで動作させるソフトウェア開発支援装置であって、
前記シミュレータは、関数変換処理プログラム及び解析処理プログラムを備えた評価対象ソフトウェアを所定周期で実行する演算処理部と、レーダから入力される被処理信号を前記所定周期とは非同期でAD変換処理を行ってデータメモリ部に蓄積し、蓄積したデータを前記演算処理部のバッファメモリに転送する信号処理部とを備え、
前記演算処理部は、前記所定周期内に、前記信号処理部から前記バッファメモリにデータの転送があったことを示す割り込みを受けると、前記転送があったデータに対応する関数変換処理プログラムを起動するとともに、前記関数変換処理プログラムが所定回数実行された場合に解析処理プログラムを起動するプロセス処理部を備えているソフトウェア開発支援装置。 - 前記プロセス処理部は、前記関数変換処理プログラムよりも前記解析処理プログラムを優先して起動する請求項6記載のソフトウェア開発支援装置。
- レーダ制御装置に組み込まれて所定の制御を行う評価対象ソフトウェアを、前記レーダ制御装置を模擬するシミュレータで動作させるソフトウェア開発支援装置であって、
前記シミュレータは複数のレーダ制御装置を模擬するものであり、複数のレーダ制御装置に対応する関数変換処理プログラム及び解析処理プログラムを備えた評価対象ソフトウェアを所定周期で実行する演算処理部と、複数のレーダ制御装置に対応して複数設けられ、レーダから入力される被処理信号を前記所定周期とは非同期でAD変換処理を行ってデータメモリ部に蓄積し、蓄積したデータを前記演算処理部のバッファメモリに転送する信号処理部とを備え、
前記演算処理部は、前記所定周期内に、前記信号処理部から前記バッファメモリにデータの転送があったことを示す割り込みを受けると、前記転送があったデータに対応する関数変換処理プログラムを起動するとともに、前記関数変換処理プログラムが所定回数実行された場合に解析処理プログラムを起動するプロセス処理部を備えているソフトウェア開発支援装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006342727A JP2008152722A (ja) | 2006-12-20 | 2006-12-20 | ソフトウェア開発支援装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006342727A JP2008152722A (ja) | 2006-12-20 | 2006-12-20 | ソフトウェア開発支援装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008152722A true JP2008152722A (ja) | 2008-07-03 |
Family
ID=39654796
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006342727A Pending JP2008152722A (ja) | 2006-12-20 | 2006-12-20 | ソフトウェア開発支援装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008152722A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102361249B1 (ko) * | 2021-08-02 | 2022-02-14 | 오픈엣지테크놀로지 주식회사 | 브로드캐스팅 멀티플라이 최적화 방법 및 이를 이용한 하드웨어 가속기, 이를 이용한 컴퓨팅 장치 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06171393A (ja) * | 1992-12-08 | 1994-06-21 | Meisei Electric Co Ltd | 異常運転検出方法及び異常運転警報装置 |
JPH09196790A (ja) * | 1996-01-16 | 1997-07-31 | Nippon Soken Inc | タイヤ空気圧検知装置 |
JPH11212622A (ja) * | 1998-01-21 | 1999-08-06 | Toshiba Corp | プラント模擬装置 |
JP2003150217A (ja) * | 2001-11-09 | 2003-05-23 | Fanuc Ltd | 作業機械のシミュレーション装置 |
JP2003167756A (ja) * | 2001-11-30 | 2003-06-13 | Fujitsu Ten Ltd | マイコンのロジック開発装置 |
JP2003228495A (ja) * | 2002-02-05 | 2003-08-15 | Fujitsu Ltd | 制御プログラム開発支援装置 |
JP2006300550A (ja) * | 2005-04-15 | 2006-11-02 | Denso Corp | Fmcwレーダの干渉判定方法、及びfmcwレーダ |
-
2006
- 2006-12-20 JP JP2006342727A patent/JP2008152722A/ja active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06171393A (ja) * | 1992-12-08 | 1994-06-21 | Meisei Electric Co Ltd | 異常運転検出方法及び異常運転警報装置 |
JPH09196790A (ja) * | 1996-01-16 | 1997-07-31 | Nippon Soken Inc | タイヤ空気圧検知装置 |
JPH11212622A (ja) * | 1998-01-21 | 1999-08-06 | Toshiba Corp | プラント模擬装置 |
JP2003150217A (ja) * | 2001-11-09 | 2003-05-23 | Fanuc Ltd | 作業機械のシミュレーション装置 |
JP2003167756A (ja) * | 2001-11-30 | 2003-06-13 | Fujitsu Ten Ltd | マイコンのロジック開発装置 |
JP2003228495A (ja) * | 2002-02-05 | 2003-08-15 | Fujitsu Ltd | 制御プログラム開発支援装置 |
JP2006300550A (ja) * | 2005-04-15 | 2006-11-02 | Denso Corp | Fmcwレーダの干渉判定方法、及びfmcwレーダ |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102361249B1 (ko) * | 2021-08-02 | 2022-02-14 | 오픈엣지테크놀로지 주식회사 | 브로드캐스팅 멀티플라이 최적화 방법 및 이를 이용한 하드웨어 가속기, 이를 이용한 컴퓨팅 장치 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3684831B2 (ja) | マイクロコンピュータ、電子機器及びデバッグシステム | |
US11377115B2 (en) | Method for testing at least one control device function of at least one control device | |
US11255962B2 (en) | Automotive testing method, system and computer program product | |
EP3547720B1 (en) | Method and system for determining a position of a microphone | |
US11989535B2 (en) | Simulation method and recording medium | |
CN115278220B (zh) | 车载摄像头仿真测试方法、***、电子设备及存储介质 | |
CN111699449A (zh) | 自动驾驶车辆的仿真测试方法、***、存储介质和车辆 | |
CN114168200B (zh) | 多核处理器访存一致性的验证***及方法 | |
CN110688732B (zh) | 用于测速测距***的仿真测试平台及方法 | |
JP2008152722A (ja) | ソフトウェア開発支援装置 | |
US20230306159A1 (en) | Simulation test method, apparatus, and system | |
EP4270189A1 (en) | Method of optimizing execution of a function on a control system and apparatus for the same | |
CN115096605B (zh) | 一种汽车测试方法、***、电子设备及存储介质 | |
US20120245915A1 (en) | Semiconductor integrated circuit simulation apparatus and simulation method for semiconductor integrated circuit | |
CN113468735B (zh) | 一种激光雷达仿真方法、装置、***和存储介质 | |
CN113671936A (zh) | 一种驾驶辅助***测试方法、***、电子设备及存储介质 | |
JP5577614B2 (ja) | レーダ装置、目標同化判定処理方法およびプログラム | |
CN111897241A (zh) | 传感器融合多目标模拟硬件在环仿真*** | |
JP6548708B2 (ja) | 画像処理システムのための低レイテンシの試験機 | |
CN101957445B (zh) | 一种水声场信号实时产生器 | |
JP2020143920A (ja) | モデル生成装置、車両シミュレーションシステム、モデル生成方法、車両シミュレーション方法およびコンピュータプログラム | |
CN216014047U (zh) | 一种驾驶辅助***测试设备及车辆 | |
WO2022113605A1 (ja) | 船舶監視システム、船舶監視方法、情報処理装置、及びプログラム | |
CN110286380A (zh) | 电子装置、超声波测距装置和方法 | |
US20230350779A1 (en) | Simulation system for accident analysis of autonomous emergency braking device and simulation method thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20100225 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20101207 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110207 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20110906 |