01signal.com

Multi-Gigabit transceivers: 概要

このページは、 Multi-Gigabit Transceiver (MGT) を紹介する一連のページの最初のページであり、このシリーズの今後の予定の概要を示しています。

序章

Multi-Gigabit transceivers (MGTs) は、コンピュータまたは電子システム内の異なる部分間の通信で重要な役割を果たします。コンピュータ内のよく知られているインターフェイスのいくつかは、 PCIe や SATAなど、 MGTsに基づいています。その他のよく知られているインターフェイスは、コンピュータとその周辺機器間の通信に使用されます。たとえば、 Gigabit Ethernet、 SuperSpeed USB、 Thunderbolt 、 Displayportなどです。

MGTs は、電子部品間の接続にも使用されます。たとえば、2 つの FPGAs間などです。この場合、通信は、あまり知られていない protocolsの 1 つ、または非標準の protocolに基づいて行われることがよくあります。ただし、 FPGA を別のタイプのコンポーネントに接続したり、他のコンポーネント同士を接続したりするために MGTs を使用することもできます。

たとえば、光ファイバー トランシーバーは、多くの場合、 MGTsと直接インターフェイスする標準モジュールです (特に SFP+ フォーム ファクター)。一部の高速 ADC/DACs は、 sample data (通常は JESD204 protocolに基づく) を転送するために MGTs も使用します。一部の protocols は、ビデオ データの転送を目的としています (たとえば、一部の MIPIの protocols は物理層用です)。

MGTs は双方向の protocolsに使用されることが多いですが、各 MGT は実際には 2 つの独立した部分で構成されています。 送信機と受信機。したがって、2 つの部分のうちの 1 つをオフにすることで、 MGT を単方向送信に使用することができます。ほとんどの FPGA MGTsでは、送信機と受信機の parameters を個別に構成することもできます。

要約すると、 MGTs は多くのアプリケーションで使用されています。多くの場合、インターフェイスの名前は MGTs が使用されていることを意味しません (例: Gigabit Ethernet、 SATA 、 DisplayPort) が、物理層は MGTsで構成されています。

Xilinx (そして AMD) は MGTs を別の名前で呼んでいることに言及する価値があります。 RocketIO、 GTX、 GTH、 GTY、 GTP、 GTMなど。それぞれの名前はトランシーバーの特定のハードウェア実装を表しており、この名前はトランシーバーのデータ レートやその他のパフォーマンス属性について何かを示しています。

この一連のページでは、 MGTs の基本と、それに関連する一般的な技術用語をいくつか説明します。その目的は、技術文書を読みやすくし、特に、どのパラメータがプロジェクトに関連し、どのパラメータが関連しないかを認識できるようにすることです。

MGTとは何ですか?

複雑な機能の背後には、 MGT が単なる SERDESであることを認識することが重要です。 これは、データを送受信する電子ビルディング ブロックです。 MGTの物理世界との電気的インターフェイスは、差動ペアを構成する 2 本のワイヤで構成されています。最初のワイヤ (「プラス」または「正」ワイヤ) の電圧がもう一方のワイヤ (「マイナス」または「負」ワイヤ) の電圧よりも高い場合、物理状態は「1」に相当します。それ以外の場合は、「0」です。これは、 LVDSなどの差動インターフェイスと同じ原理です。

SERDES とのもう 1 つの類似点は、 MGTと application logic のインターフェースが並列ワードで構成されていることです。 application logicの clockの各サイクルでは、 application logic と MGTの間で多数の bits が送信されます。データ レートが FPGAで可能な最大 clock frequency よりもはるかに高いため、この配置が必要になります。

ただし、通常の SERDES と MGTの間には、いくつかの重要な違いがあります。そのいくつかを以下に示します。

では、 MGT はなぜそれほど複雑なのでしょうか?

FPGA プロジェクト用に MGT ブロックを設定しようとしたことがある人なら、パラメーターと選択肢がたくさんあることをご存知でしょう。なぜこのようにする必要があるのでしょうか?

これには主に3つの理由があります。 まず、 MGT ブロックは、 logic fabricで実装できる多くのビルディング ブロックを実装していますが、効率性のために MGT の一部として実装されています。たとえば、すべての MGTs には8b/10bをエンコードおよびデコードする機能がありますが、このタスクは application logicでも実行できます。ただし、このエンコード手法は非常に一般的に使用されているため、代わりに MGT がそれを処理する機能を備えています。

2番目の理由はclockingに関連しています。 MGTが正常に動作するためには、複数の clocks が必要です。さらに複雑なことに、 FPGAの logic fabricに使用される clocks と比較して、 clock(特にjitter ) の品質要件はより厳しくなっています。また、 SSC (Spread Spectrum Clocking) も使用される場合があり、事態はさらに複雑になります。

したがって、 clocking を正しく実行することは、 MGT 全般の正しいパラメータを選択することと同じくらい難しい場合があります。

3 つ目の理由は、 MGTs がいくつかの標準通信 protocolsをサポートするように設計されていることです。その結果、特定の protocol に必要な機能の名前は、多くの場合、 protocolの仕様から取得されます。このような専門用語は、関連する protocolを知らない人にはまったく意味がありません。このため、 FPGAの MGT ブロックを設定するときに、どの機能を有効にするかを決定することが難しくなります。

これらすべてのトピックについては、このシリーズの残りのページでさらに詳しく説明します。

知っておくべきこと

ほとんどのユースケースでは、 MGTs は、別の定評のある protocol、特に PCIeの物理層として使用されます。これらの状況では、 FPGA tools が詳細を処理するため、低レベルで何が起こっているかをあまり理解する必要はありません。

ただし、 application logic を MGTに直接接続する場合は、この logic が解決しなければならないいくつかの課題に注意することが重要です。これらの問題の一部は、 FPGAs間での使用を目的としたprotocols によって処理されます。

これは、考慮すべきトピックの短いリストです。これらのトピックのそれぞれについては、このシリーズの残りのページでさらに詳しく説明します。

PMA、 PCS 、 clocking

このブロック図は、 MGT の各部と application logicとの相互作用を示しています。

Overview of Multi-Gigabit Transceiver's components

MGT の機能は通常、次の 3 つの部分に分かれています。

これらのトピックについては、このシリーズのページでさらに詳しく説明します。

PIPE インターフェース

PIPE 規格は注目に値します: この規格は、 PCIe、 SuperSpeed USB 、または SATAを実装する MGT と logic 間の接続を定義します。これには、データ、制御信号、およびステータス信号の通信に使用される ports が含まれます。

この標準では、 MGT は PHY 層、 protocol は MAC 層と呼ばれます。この用語は、 Ethernet、 USB 1.x 、 USB 2.0を定義する標準でも使用されています。これらの標準は通常、2 つの別個の chipsによって実装されます。たとえば、 Ethernet を processor chipに実装するには、 MAC 層をこの chipに実装し、 PHY 層を別の chipに実装します。 PIPE 標準は、 PCIe、 SuperSpeed USB 、または SATA が実質的に常に同じ chipに完全に実装されているにもかかわらず、同じ精神で記述されています。 PIPE 標準で定義されている MAC 層と PHY 層間の接続は、 chip内で行われ、外部から見えることはほとんどありません。

PIPE 標準の重要な影響は、適切な FPGA MGT が常に PCIeに必要な PIPE インターフェイスを実装していることです。 SATA の PIPE インターフェイスもサポートされることがよくあります。これは明らかに、これら 2 つの protocolsを実装するときに役立ちますが、もう 1 つ重要な利点があります。 さまざまな FPGAs には、 MGTと同様のインターフェースがあります。特に、実質的にすべての MGTsに共通する機能要素がいくつかあります。

結論

このページでは、 MGT の概要とその複雑さについて説明しました。このシリーズのページの残りの部分では、上記の概念の多くについて説明します。しかし、その前に、2 つの FPGA MGTsを接続するときによく使用される protocols の簡単な概要から始めましょう

このページは英語から自動翻訳されています。 不明な点は元のページを参照してください。
Copyright © 2021-2024. All rights reserved. (b4b9813f)