Main Content

このページは機械翻訳を使用して翻訳されました。最新版の英語を参照するには、ここをクリックします。

混合設計 (Verilog および VHDL) を使用したマンチェスター レシーバー

この例では、VHDL と Verilog の混合 HDL 言語を使用したマンチェスター エンコーダの検証を示します。マンチェスター符号化は、ベースバンドのデジタル データを DC 成分のない符号化された波形に変換する単純な変調方式です。この技術の最も広く知られているアプリケーションはイーサネットです。

このモデルは、マンチェスター符号化データの純粋なデジタル受信機をシミュレートします。受信機は VHDL/Verilog で実装されています。受信機は単純な DLL クロック回復メカニズムを使用しますが、これには受信データ ストリームとロックするために複数のサイクルが必要です。受信機のパフォーマンスは、単純なMATLAB®関数 manchesterencoder() を使用してエンコードされたランダムに生成されたビット ストリームに位相誤差と周波数誤差を適用することによって調査されます。

実際の VHDL/Verilog コードは、「Mixed HDL Manchester Receiver」と呼ばれるコシミュレーション ブロックを使用して ModelSim®/Xcelium® で実行されます。

この例では、VHDL 実装が下位レベルのブロックに使用され、最上位のブロック実装は Verilog で行われます。Verilog の一部の信号と VHDL の他の信号への接続は、HDL Cosimulation ブロックのポート ペインを介して行われます。HDL 言語の違いにもかかわらず、接続の構文は一貫しています。ここでポート ペインは、実際にはトップレベル モジュールのポートではない HDL 信号に接続するために使用されていることにも注意することが重要です。実際、 HDL Verifierコシミュレーション ブロックによって、HDL 階層の任意のレベルで信号への接続を行うことができます。

HDL ブロックの実装に使用される言語:

  • トップレベル (マンチェスター):Verilog

  • デコーダ:VHDL

  • IQコンバータ:VHDL

  • 状態カウンター:VHDL

実際の VHDL および Verilog コードは HDL シミュレータで実行され、その実行は、「Mixed HDL Manchester Receiver」と呼ばれる HDL Cosimulation コシミュレーション ブロックの動作としてSimulinkで確認されます。

ModelSim® mixed-language modelを開きます。

Xcelium® mixed-language modelを開きます。