補造たでの4぀のステップモデル・ベヌス蚭蚈で実珟する゜フトりェア無線(Part 2)

MATLABずSimulinkによるモヌドS信号の怜出ずデコヌド

ADS-Bの抂芁

怜出やデコヌド埩号化の察象ずなるワむダレス信号は至るずころに存圚したす。そうした信号には、今日提䟛されおいる゜フトりェア無線SDRSoftware-defined Radio察応のハヌドりェアを䜿えば簡単にアクセスするこずができたす。代衚的なハヌドりェアずしおは、アナログ・デバむセズADIが提䟛するRFアゞャむル・トランシヌバRF Agile Transceiver™IC「AD9361」、「AD9364」が挙げられたす1,2。䟋えば、AD9361ずXilinx®瀟の「Zynq®-7000 All Programmable SoC以䞋、Zynq SoC」を組み合わせるこずで、SDR向けのラピッド・プロトタむピングを実珟できたす。プロトタむプのデモやテストには、民間航空機からワむダレスで送信されるADS-BAutomatic Dependent Surveillance-Broad-cast攟送型自動埓属監芖信号を䜿甚できたす。民間航空機は、ADS-Bに察応するトランスミッタを䜿甚しお自らの䜍眮、速床、高床、航空機IDを航空亀通管制局に報告したす3。飛行情報のデヌタ圢匏は、囜際民間航空機関ICAOの芏栌「Mode S Extended SquitterモヌドS拡匵スキッタ」によっお定矩されおいたす4。ADS-Bは、航空亀通管制システムや衝突回避システムの改善を目的ずしお䞖界䞭で導入され぀぀ありたす。欧州ではすでに採甚されおおり、米囜でも埐々に導入が始たっおいたす。

モヌドS拡匵スキッタ芏栌では、RF䌝送の圢匏ず、デコヌドの察象ずなるデヌタ・フィヌルドの詳现を定めおいたす。トランスポンダを利甚した䌝送の仕様は以䞋の通りです。

  • 送信呚波数: 1090 MHz
  • 倉調方匏PPMパルス䜍眮倉調
  • デヌタレヌト1Mbps
  • メッセヌゞ長56ÎŒsたたは112ÎŒs
  • 誀り怜出24ビットのCRC巡回冗長怜査チェックサム

チュヌニング呚波数ず垯域幅は、十分にAD9361の察象範囲内にありたす。受信したI/Q信号のサンプルサンプリングしたデヌタは、さたざたな゜フトりェアや組み蟌みプラットフォヌムによっお怜出し、デコヌドするこずができたす。

本皿では、AD9361をベヌスずするレシヌバ甚プラットフォヌムによっおモヌドSの信号を取埗し、「MATLAB」ず「SimulinkR」を䜿甚しお、そのメッセヌゞをデコヌドするためのアルゎリズムを開発する方法を説明したす。アルゎリズムは、Avnet瀟の「PicoZed™SOMSDR System on Module」をはじめずするZynq SoC察応のプラットフォヌムに配備デプロむするこずを最終的な目暙ずしお開発したす。

レシヌバの蚭蚈における課題

モヌドSのメッセヌゞには、ショヌト圢匏56ÎŒsずロング圢匏112ÎŒsの2皮類がありたす。ショヌト圢匏のメッセヌゞは、メッセヌゞの皮類、航空機の識別番号、CRCチェックサムで構成されたす。ロング圢匏のメッセヌゞには、さらに高床、䜍眮、速床、飛行状態の情報が含たれたす。どちらの圢匏でも、モヌドSの信号は8ÎŒsのプリアンブルで始たりたす。レシヌバは、このプリアンブル・パタヌンを䜿甚しお、有効なメッセヌゞが送信されおいるこずを確認するずずもにメッセヌゞ・ビットの開始䜍眮を刀断したす。詳现に぀いおは図1をご芧ください5。

Figure 1
図1. モヌドSのメッセヌゞの構造

モヌドSの信号は非垞にシンプルです。しかし、送信されたメッセヌゞを正しく受信しおデコヌドするには、以䞋に瀺すような耇数の課題を解決する必芁がありたす。

  1. 䞀般的な受信環境では、長いアむドル期間の䞭に非垞に短いメッセヌゞが散圚する状態になる。たた、送信元の航空機がレシヌバから遠く離れおいる堎合、受信信号は非垞に匱くなる可胜性がある。加えお、埓来から䜿われおいな信号が同じ1090MHzで送信されるこずもある。レシヌバは、混雑した呚波数垯の䞭でプリアンブルを掻甚し、倧振幅、小振幅のモヌドS信号を怜出しなければならない
  2. ビット区間は1ÎŒsであり、その区間のビット・パタヌンは2皮類のうちどちらかになる。前半の0.5ÎŒsがオンで埌半の0.5ÎŒsがオフの堎合が論理レベルの1を意味し、前半の0.5ÎŒsがオフで埌半の0.5ÎŒsがオンの堎合が論理レベルの0を意味する。ビットの刀定は、時間をベヌスずしたパタヌンに基づいお行われる。そのため、レシヌバはプリアンブルを䜿甚し、メッセヌゞ・ビットの開始䜍眮ずなるI/Qサンプルを正確に怜出する必芁がある
  3. モヌドSのメッセヌゞは、88ビットの情報ず24ビットのチェックサムで構成される。レシヌバは、レゞスタのクリア、ビットの刀定、チェックサムの蚈算、チェックサム・レゞスタの読み出しの各動䜜を正しいタむミングで行わなければならない。レシヌバが正しく機胜するためには、タむミング制埡が必須ずなる
  4. 組み蟌み蚭蚈の堎合、サンプル単䜍でデコヌド凊理を実行する必芁がある。倧量のデヌタを保存しおおき䞀括で凊理するのは、組み蟌みシステムにおけるレシヌバの蚭蚈ずしお珟実的ではない

AD9361のような高性胜のRFフロント・゚ンドず、MAT-LAB®のようなテクニカル・コンピュヌティング蚀語を組み合わせるこずにより、䞊述したような信号の怜出/デコヌドに䌎う問題が倧幅に簡玠化されたす。MATLABや「Signal Processing Toolbox」の機胜を利甚すれば、同期パタヌンの識別、ノむズフロアの蚈算、ビットの刀定、チェックサムの蚈算を容易に行うこずができたす。たた、MATLABの条件制埡や実行制埡の機胜によっお制埡ロゞックを簡玠化するこずが可胜になりたす。テスト甚のデヌタぞのアクセスも容易であり、バむナリ圢匏/テキスト圢匏のファむルから読み出すか、AD9361をベヌスずするSDR甚プラットフォヌムを䜿甚しおMATLABに盎接ストリヌミングするこずができたす。MATLABはむンタプリタ方匏で実行されるのでデヌタを操䜜したり別のアプロヌチを詊したりするこずが容易であり、むンタラクティブに゜リュヌションを開発できたす。

MATLABによるモヌドS甚レシヌバのアルゎリズムのモデル化ず怜蚌

以䞋で説明する内容を実装したMATLAB゜ヌス・コヌドは、GitHubリポゞトリから入手できたす。゚ントリ・レベルの関数はad9361_ModeS.mであり、この関数から呌び出されるファむルも提䟛されおいたす。

レシヌバ甚のアルゎリズムにおける最初のステップは、゜ヌスずなるデヌタにアクセスするこずです。珟圚では、倚くの航空機がモヌドS甚のトランスポンダを備えおいたす。そのため、1090MHzの送信呚波数に察しおレシヌバをチュヌニングするだけで近くの信号を捉えるこずができたす。これに぀いおは、Zynq SoCを利甚したSDR向けのラピッド・プロトタむピング・プラットフォヌムを䜿甚したす。ADIは、Ethernetを介しお「AD-FMCOM-MSx-EBZ」FMCOMMSプラットフォヌムからのデヌタを受信できるMATLAB察応の「System Object™」を提䟛しおいたす6。このSystem Objectにより、チュヌニング呚波数ずサンプリング・レヌトを遞択し、無線甚のハヌドりェアで受信サンプルを収集しお、MATLABのワヌクスペヌスにMATLAB倉数ずしおそれらを盎接取り蟌むこずができたす。蚘述しなければならないコヌドはほんのわずかです。MATLAB察応のSystem Objectをセットアップするために数行、FMCOMMSプラットフォヌムAD-FMCOMMS3-EBZの蚭定を行うために数行、I/Qサンプルを取埗しおMATLAB倉数に曞き蟌むために数行を蚘述するだけです。図2、図3、図4にMATLABのサンプル・コヌドを瀺したした。

Figure 2
図2. System Objectを蚭定するためのサンプル・コヌド
Figure 3
図3. AD-FMCOMMS3-EBZのボヌドを構成するためのサンプル・コヌド
Figure 4
図4. I/Qサンプルを取埗しお受信倉数に曞き蟌むためのサンプル・コヌド

コマンドに基づくこれらのコヌドにより、12.5MHzのサンプル・レヌトで耇数のデヌタ・セットを取埗したした。12.5MHzのサンプル・レヌトを遞択したのは、十分な数のサンプルを取埗し、プリアンブルの䜍眮をメッセヌゞの先頭のビットに正確に合わせお、ビットの刀定に甚いるサンプル内の䞀郚のノむズを平均化するためです。100䞇個のサンプルを取埗した結果を図5に瀺したした。

Figure 5
図5. 1090MHzの送信呚波数に察応しお取埗したサンプル・デヌタ

このデヌタ・セットの䞭には、ノむズフロアを䞊回るレベルの信号が14個ありたす。これらのうち2個がモヌドSのメッセヌゞです。残りは埓来から䜿われおいた別の信号やスプリアス信号であり、陀去する必芁がありたす。サンプル番号が604000付近の領域を拡倧するず、有効なメッセヌゞのうちの1぀を確認するこずができたす図6。

Figure 6
図6. モヌドSのメッセヌゞの1぀

このグラフでは、プリアンブルを明瞭に確認するこずができるほか、PPMによるビットの移動もはっきりず芋おずれたす。このように信号がクリヌンである堎合でも、目芖でビットのデコヌドを行うには、優れた芖力ずかなりの忍耐が必芁になりたす。圓然のこずながら、メッセヌゞのデコヌドにはそれを自動的に行うプログラムが必須だずいうこずです。MATLABはそのプログラムを開発するための適切な゜リュヌションです。

モヌドSのメッセヌゞを受信し、それをデコヌドするためのMATLABのコヌドは、以䞋のような流れになりたす。

  1. 短い時間窓にfilter関数を適甚し、ノむズフロア、プリアンブルのコリレヌションを蚈算する。この䟋では、6ÎŒsに盞圓する75サンプルを䜿甚した
  2. プリアンブルのコリレヌションがノむズフロアを倧きく䞊回った時点で、メッセヌゞの先頭ビットに圓たるサンプルを怜出するためのロゞック凊理を開始する

    1. この凊理の閟倀は、状況に応じお遞択する。小さすぎるず匱い信号を怜出できないが、倧きすぎるず誀怜出が倚発しおしたう。この䟋では、デコヌドが可胜なほずんどのメッセヌゞを取埗できる劥圓な閟倀ずしお、ノむズフロアの10倍の倀を遞択した
    2. プリアンブルのパタヌンにより、ピヌクが耇数生成される。最倧のピヌクは最初の6ÎŒsの間に珟れるので、最初のピヌクの倀を保存しおメッセヌゞの先頭 ビットの怜玢を開始し、次の3ÎŒsの間にさらに倧きな別のピヌクが珟れるかどうかを確認する。倧きな別のピヌクが珟れたら、その倀を保存しおメッセヌゞの先頭ビットの怜玢をやり盎す
    3. 最倧のピヌクが珟れたら、その2ÎŒs埌からメッセヌゞ・ビットのデコヌドを開始する
    4. 図7は、ノむズフロア緑の線ず共に、入力デヌタに察する理想的なプリアンブルずのコリレヌションの結果を瀺したものである。ノむズフロアを䞊回る耇数のピヌクが存圚するが、ここでは最倧振幅を持぀ピヌクに泚目する。そのピヌクの2ÎŒs埌に、メッセヌゞの先頭ビットのサンプルが到達する
Figure 7
図7. ノむズフロアずプリアンブルのコリレヌションの算出結果
  1. 個々のビットに察し、最初の0.5ÎŒsず次の0.5ÎŒsでサンプルの振幅を合算する。どちらの合蚈倀が倧きいかによっお、そのビットが論理倀の1であるか0であるかを刀定する
  2. ビットの刀定に基づいおチェックサムを蚈算する。それには、最初のビットが到達したずきにCRCレゞスタをリセットし、88ビットに察しおチェックサムを蚈算しお、最埌の24ビットでCRCレゞスタを空にする制埡ロゞックが必芁になる。受信ビットがチェックサムに䞀臎すれば、そのADS-Bメッセヌゞは有効である
  3. モヌドSの芏栌に埓っお、メッセヌゞ・ビットをパヌスする図8
Figure 8
図8. デコヌドされたモヌドSのメッセヌゞ

図8に瀺したのは、MATLABのコマンド・りィンドりです。100䞇サンプルから成るデヌタ・セットを基に正しくデコヌドされた2぀のメッセヌゞが瀺されおいたす。88ビットのメッセヌゞず24ビットのチェックサムが16進数で衚瀺され、デコヌドの結果ずしお、航空機ID、メッセヌゞの皮類、飛行速床、高床、䜍眮が瀺されおいたす。

MATLABは挔算ず信号凊理のための匷力な蚀語であり、このような凊理を容易に実珟するこずができたす。MAT-LABで蚘述したわずか200行のコヌドにより、サンプル・デヌタに凊理を斜し、最終的にメッセヌゞをデコヌドするこずが可胜になりたす。たた、MATLABはむンタプリタ方匏で実行されるので、蚭蚈䞊のアむデアをむンタラクティブに詊し、実珟可胜な゜リュヌションを玠早く芋極めるこずができたす。この䟋では、さたざたなデヌタ・セットに察し、耇数のタむミング構成、閟倀、ノむズ・レベルを詊すこずで、最終的に適切なプログラムを開発するこずができたした。

MATLABで開発したコヌドのテストは、近くの空域を飛行する航空機からの信号を䜿っお実斜したした。受信した信号をデコヌドしお埗たメッセヌゞを、airframes.orgやflightaware.comなどから入手した情報ず照らし合わせるこずで、正しく凊理が行えたこずを確認したした。ハヌドりェアずコヌドは適切に動䜜し、50マむル玄80km離れた航空機からの信号を正しくデコヌドするこずができおいたした。

実装に向けた䜜業

以䞋で説明する内容を実装したSimulinkモデルのファむルはGitHubリポゞトリから入手できたす。

https://github.com/analogdevicesinc/MathWorks_tools/tree/master/hil_models/ADSB_Simulink

MATLABは、蚭蚈䞊のアむデアをテストするためにPC䞊でアルゎリズムを実行するには最適な環境です。ただ、最終的な目暙が、Zynq SoCなどの組み蟌みプラットフォヌム䞊で䜿甚する゜フトりェアやHDLコヌドを生成するこずであるならば、Simulinkの䜿甚が適しおいたす。Sim-ulinkは、プログラマブルなデバむスをタヌゲットにする際に必芁なハヌドりェアに固有の凊理をモデル化する堎合に最適です。掚奚されるワヌクフロヌは、MATLABでアルゎリズムの開発/怜蚌を行い、その蚭蚈をSimulinkのモデルに倉換しお、ハヌドりェアぞの実装に向けお開発を進めるずいうものです。

この䟋のアルゎリズムを実珟したMATLABのコヌドは、デヌタをサンプル単䜍で凊理したす。そのため、このコヌドは、かなり簡単にSimulinkのモデルに倉換するこずができたす。SimulinkのモデルではMATLABで蚘述した200行のコヌドがシンプルに衚瀺/衚珟されたす図9。

Figure 9
図9. モヌドSの信号を怜出/デコヌドするアルゎリズムに察応したSimulinkのモデル

図9からは、デコヌドのための最初のステップが、ノむズフロアず、プリアンブルのコリレヌションの算出であるこずが芋おずれたす。これらの蚈算には、デゞタル・フィルタ・ブロックが䜿甚されおいたす。たたタむミング制埡甚のブロックは「Stateflow,®」で実装されおいたす。Stateflowはステヌト・マシン・ツヌルであり、モデルにおいお制埡ロゞックをデヌタ・フロヌず分離したい堎合に非垞に有甚です。この䟋では、デコヌド甚のアルゎリズムにおけるその他の郚分に向けお、タむミング信号、リセット信号、制埡信号を生成するために䜿甚しおいたす。タむミングずトリガがアクティベヌトされるず、「BitProcess」ずいう名前のブロックが、入力されたI/Qのサンプルを受け取っおデヌタ・ビットを蚈算したす。䜵せお、「CRC_Check」ずいうブロックがチェックサムを蚈算したす。なお、メッセヌゞのパヌスは、このSimulinkモデルによっお駆動されるMATLABのスクリプトによっお行われたす。

モデルをさらに詳しく芋おみるず、Simulinkが組み蟌み開発に適しおいるこずを瀺すいく぀かの特城に気づきたす。特に、Zynq SoCをタヌゲットずしお機胜を実珟するために、適切に蚭蚈の分割を行い、それぞれに察応するHDLのコヌドずC蚀語のコヌドを生成するうえで非垞に有甚です。

  1. Simulinkは、固定小数点のサポヌトに優れおいるため、ビット粟床が蚭蚈ず䞀臎する回路を構築し、テストを行うこずができる。たた個々のブロックで、モデルにおける算術挔算のワヌド長ず小数点以䞋の桁数を蚭定可胜である。その良い䟋ずしお、プリアンブルのコリレヌションの蚈算に䜿甚するデゞタル・フィルタ・ブロックが挙げられる図10。挔算における䞞めのモヌドずオヌバヌフロヌが発生した際の動䜜も蚭定できるHDLコヌドで行われる挔算に぀いおは、FloorずWrapが最も簡単な遞択肢ずなる。たた、フィルタの乗算噚やアキュムレヌタの挔算に察しおは異なるワヌド長や小数粟床を指定できる図11。レシヌバのA/Dコンバヌタに適合するようワヌド長を遞択するこずにより、ハヌドりェア乗算噚䟋えばZynq SoCが備えるDSP48スラむス内の18ビット×25ビットの乗算噚を掻甚するこずが可胜になる

Figure 10
図10. Simulinkのデゞタル・フィルタ・ブロック
12ビットのデヌタ型、プリアンブルのコリレヌションの算出に䜿甚
Figure 11
図11. 固定小数点のデヌタ型の蚭定

  1. 倚くの堎合、組み蟌み蚭蚈では倚数の動䜜モヌドが蚭けられる。各モヌドには、条件に応じお実行されるアルゎリズムが察応づけられる。Stateflowは、このような制埡信号の管理に特に適しおいる。この䟋で蚀えば、Stateflowを䜿うこずで、モヌドSのメッセヌゞの怜出/デコヌドに必芁な制埡ロゞックを芖芚的に確認するこずができる。図12には、このロゞックにおける以䞋のステヌトが瀺されおいる

    1. SyncSearch: 取埗したサンプル内のプリアンブルを怜玢する
    2. WaitForT0: メッセヌゞの先頭ビットの開始䜍眮を怜玢する
    3. BitProcess: ビット凊理を有効化する
    4. EmptyReg: チェックサム・レゞスタを空にし、ビット・デヌタをビット凊理の出力ず比范する

異なるステヌト間を遷移する怜出/デコヌド甚アルゎリズムの流れに埓っお、Stateflowのブロックは、ビット凊理を有効化する信号を生成し、ビット刀定甚のカりンタずチェックサム・レゞスタをリセットし、モヌドSのメッセヌゞの最埌に配眮されたチェックサム・ビットを読み取りたす。

Figure 12
図12. モヌドSのメッセヌゞをデコヌドするためのStateflowのチャヌト
  1. Simulinkのブロック・ラむブラリを利甚するこずにより、技術者は非垞に高いレベル、あるいは非垞に现かいレベルで䜜業を行うこずが可胜になる。Sim-ulinkの高レベル・ブロックずしおは、信号凊理回路の構築を簡玠化するDigital Filter、FFT、NumericallyControlled Oscillatorなどが挙げられる。速床や面積の最適化など、よりきめ现かく回路を制埡する必芁がある堎合には、Unit Delay、Logic OperatorXORなど、Switchずいった䜎レベル・ブロックを䜿甚すればよい。この䟋のモデルでは、24ビットのチェックサムが、䜎レベル・ブロックで構築されたフィヌドバック・シフト・レゞスタによっお蚈算される図13
Figure 13
図13. モヌドSのチェックサムを蚈算するためのフィヌドバック・シフト・レゞスタ

このSimulinkモデルは、モヌドSのメッセヌゞを怜出/デコヌドするMATLABアルゎリズムのハヌドりェア向けバヌゞョンだず蚀えたす。Simulinkは、MATLABで蚘述された動䜜アルゎリズムず組み蟌みハヌドりェア甚の実装コヌドの間のギャップを埋めるために圹立぀ツヌルです。ハヌドりェア固有の凊理をSimulinkモデルずしお構築しお実行するこずで、加えた倉曎がデコヌド甚のアルゎリズムに圱響を䞎えないこずを確認できたす。

たずめ

Zynq SoCを利甚したSDR向けのラピッド・プロトタむピング・プラットフォヌムずMathWorks瀟の゜フトりェアを組み合わせるこずにより、ワむダレス・レシヌバの蚭蚈においおアむデアを基に盎ちにプロトタむプを開発するための柔軟か぀新たな手段が埗られたす。その䞭心にあるのは広垯域に察応するRFアゞャむル・トランシヌバであるAD9361/AD9364です。䞡補品が備える高いプログラマビリティや性胜に加え、MATLAB環境ずハヌドりェアの間のシンプルな接続性によっお、広範なワむダレス信号を察象ずしお扱うこずができたす。MATLABを䜿甚すれば、蚭蚈䞊のさたざたなアむデアを盎ちに詊し、有望な゜リュヌションを芋極めるこずが可胜になりたす。蚭蚈の最終的なタヌゲットが組み蟌みプロセッサである堎合、Simulinkを䜿甚すれば、そのハヌドりェアに適したアむデアに基づいお蚭蚈を改良し、最終的にはそのプロセッサで䜿甚するコヌドを生成できたす。このワヌクフロヌによっお、ワむダレス・レシヌバの蚭蚈に必芁なスキルが軜枛され、抂念蚭蚈から実際に動䜜するプロトタむプを開発するたでの時間を短瞮するこずが可胜になりたす。

本皿の続線ずなるPart 3では、HILHardware in the Loopを䜿甚しおレシヌバの蚭蚈を怜蚌する方法を取り䞊げたす。怜蚌に䜿甚するSimulinkのホスト䞊で信号凊理システムのモデルを実行し぀぀、タヌゲットずなるトランシヌバで信号を取埗する方法を説明したす。


参考資料

1「AD9361」 Analog Devices

2「AD9364」 Analog Devices

3「960-1164 MHz」 National Telecommunications and Information Administration

4「Technical Provisions for Mode S Services and Extended Squitter」 International Civil Aviation Organization

5「Surveillance and Collision Avoidance Systems」 Aeronautical Telcommunications, Volume IV. International Civil Aviation Organization

6Di Pu, Andrei Cozma, Tom Hill「補造たでの4぀のステップモデル・ベヌス蚭蚈で実珟する゜フトりェア無線、Part 1ADI/Xilinx瀟のSDR向けラピッド・プロトタむピング甚プラットフォヌム――その機胜、メリット、開発ツヌルに぀いお孊ぶ」Analog Dialogue 49-09

゜ヌス・コヌドずモデルぞのリンク

MATLABによるモヌドS信号のデコヌド甚アルゎリズム:
https://github.com/analogdevicesinc/MathWorks_tools/blob/master/hil_models/ADSB_MATLAB/

SimulinkによるモヌドS信号のデコヌド甚モデル:
https://github.com/analogdevicesinc/MathWorks_tools/tree/master/hil_models/ADSB_Simulink


謝蟞

本皿の䟋に䜿甚されおいるMATLABコヌドの䞀郚を䜜成しおいただいたMathWorks瀟のMike Mulligan氏に感謝いたしたす。

著者

Mike Donovan

Mike Donovan

Mike Donovanは、MathWorks瀟のアプリケヌション・゚ンゞニアリング・グルヌプでマネヌゞャヌを務めおいたす。バックネル倧孊で電気工孊の孊士号を、コネチカット倧孊で修士号を取埗しおいたす。MathWorks瀟に入瀟する前は、レヌダヌ/衛星通信システム分野、ブロヌドバンド通信分野の業務に埓事しおいたした。

Andrei Cozma

Andrei Cozma

Andrei Cozma は、ADIの゚ンゞニアリン グ・マネヌゞャヌずしおシステム・レベルのリファレンス蚭蚈の開発を 支揎しおいたす。産業オヌトメヌションず情報科孊に関する孊士号に加 えお、電子工孊ず電気通信工孊の博士号を取埗しおいたす。モヌタヌ制 埡、産業オヌトメヌション、゜フトりェア無線、電気通信など、さたざ たな分野にわたる蚭蚈/開発プロゞェクトに埓事した経隓を持ちたす。

Di Pu

Di Pu

Di Puは、ADIのシステム・モデリング・アプリケヌション・゚ンゞニアです。゜フトりェア無線SDRに察応するプラットフォヌムやシステムの蚭蚈/開発をサポヌトしおいたす。特にMathWorks瀟ず密に連携するこずで、䞡瀟の顧客が抱える課題の解決に取り組んでいたす。2007幎に䞭囜南京にある南京理工倧孊NJUSTで理孊士の孊䜍を取埗しおいたす。たた、マサチュヌセッツ州りヌスタヌにあるりヌスタヌ工科倧孊WPIで、2009幎に電気工孊の修士号、2013幎に博士号を取埗したした。WPIでは、2013幎の「Sigma Xi Research Award for Doctoral Dissertation」を受賞しおいたす。