セミナー・展示会

Seminar / Exhibition

PCI Expressについて 入門編 – 第3回 –
~Ryosan技術ライブラリ~

2021/12/14 発行


 高性能GPUを搭載したパソコンや、Wi-Fiに対応したデバイスなど、実は生活のあちこちにある電子機器で使われているPCI Express(読み方:ピー・シー・アイ・エクスプレス)、一般的にはPCIeやPCI-E(読み方:ピー・シー・アイ・イー)と短縮して呼ばれることもあります。名前だけは聞いたことがあるよっ!という方も多いかと思いますが、このたび、弊社内の戸棚の影にひょっこり隠れていた、PCI Expressに携わって15年のベテランFAEを発見(!?)しましたので、PCI Expressとはなんぞや、についてやさ~しく説明してもらいます。

 本記事は、これまでPCI Expressに接点がない初心者が、エンジニアとの会話で出る(かも知れない)PCI Express関連のワードの意味が分かることを狙いとしております。隔月で全6回の連載を予定しておりますので、しばらくの間おつきあいください。


  第1回  PCI Expressとは

  第2回  PCI Expressの強み その1(拡張性とマルチホスト)

  第3回  PCI Expressの強み その2(信頼性の高い接続)
  第4回  PCI Expressの強み その3(信頼性の高いデータ転送)
  第5回  PCI Expressの強み その4(その他の機能)
  第6回  PCI Expressを搭載したアプリケーション

第3回  PCI Expressの強み – 高信頼性接続

目次

  3-1. はじめに
  3-2. LTSSM(Link Training and Status State Machine)
  3-3. 高信頼性接続
  3-4. トレーニング・シーケンスに関する用語集
  3-5. まとめ

■3-1. はじめに

 めっきり寒くなり、鍋と日本酒が恋しい季節になってきましたね。
鍋は熱々、お酒はぬるめの燗がいい。どうも~、リョーサンFAEのTKです。皆様、お風邪など召されていないでしょうか。

 第3回はPCI Expressの強みである高信頼性接続についてですが、まずは前回のおさらいから。
PCI Expressのデバイス間接続では、差動信号の送受信ペアを「レーン」、レーンの集まりを「リンク」と呼びます(図3-1参照)。このリンク状態を管理するため、PCI Expressでは「LTSSM(Link Training and Status State Machine)」と呼ばれる状態遷移機構(ステートマシン)を使用します。PCI Expressの高信頼性接続を理解するには、このLTSSMについて知っておく必要がありますので、次のセクション以降で説明します。

図3-1. PCI Expressの接続


 下記リンク(メルマガ登録はこちら)のお問い合わせよりご連絡頂くと、メルマガにて記事の更新通知を受け取れます!
(お問い合わせのタイトルに「メルマガ登録」とご記入ください。)


>>メルマガ登録はこちら<<



■3-2. LTSSM(Link Training and Status State Machine)

 PCI Expressデバイスは、接続されたデバイス間のリンク状態を管理するため、LTSSM(Link Training and Status State Machine)という状態遷移機構(ステートマシン)を備えております。PCI Expressデバイスが起動してステートマシンのリセットが解除された後に、接続されたデバイスそれぞれのステート(状態)が同期・同調して下記のように遷移します。

  起動時のステート遷移:Detect→Polling→Configuration→L0


 それぞれ共にL0ステートに至った時点で、Gen1(2.5Gbps)のスピードでユーザデータの送受信を開始します。デバイスがGen1以上、例えばGen3(8Gbps)をサポートしている場合は、

  スピード変更時のステート遷移:L0→Recovery→L0


と進んでGen3(8Gbps)へスピードアップされ、高速なユーザデータの送受信が出来るようになります。

図3-2. LTSSMのステート遷移

 L0ステートで安定した通信状態を確立するため、 L0ステートに入る前にデバイス間でトレーニング・シーケンスを実施します。トレーニング・シーケンスでは各レーンごとにトレーニング用データの送受信が行われ、送受信部に対して様々な調整が自動的に行われます。(詳細は、後の章にて説明)

図3-3. 各レーンごとに実施されるトレーニング・シーケンス

 LTSSM(Link Training and Status State Machine)の各ステートに関する解説を、以下にまとめました。

表3-1. LTSSMの各ステートについて

■3-3. 高信頼性接続

 PCI Expressデバイス間のトレーニング・シーケンスが実行されることで、送受信部が自動的に調整され、通信可能状態(L0ステート)で安定したユーザデータの送受信が出来るようになります。この動作は、主に以下の3つのケースで行われます。


 1) デバイス起動後に対向デバイスを認識した場合(Detect→Polling→Configurationとステートを遷移しながらトレーニング・シーケンスを実行し、L0へ遷移)

図3-4. デバイス起動後に対向デバイスを認識した場合

 2) L0ステートでスピード変更を要求された場合(L0→Recoveryにステート遷移してスピードを変更、その後トレーニング・シーケンスを実行、L0に戻る)

図3-5. L0ステートでスピード変更を要求された場合

 3) L0ステートで通信状態が不安定になり、ビットエラーが多発した場合(L0→Recoveryにステート遷移してトレーニング・シーケンスを実行、通信状態を安定させてからL0に戻る)

図3-6. L0ステートで通信状態が不安定になり、ビットエラーが多発した場合

 特に上記3) のように、出来る限り通信可能状態を維持する仕組みが設けられておりますので、PCI Expressのデバイス間の接続は、信頼性が高いと言えます。

■3-4. トレーニング・シーケンスに関する用語集

ビット同期

「送信クロック」と「受信クロック」は、以下の仕組みによって同期されます。

 送信側:
    1. 送信処理に使用する「送信クロック」のクロック成分をデータに重畳
    2. データを送信

 受信側:
    3. クロックリカバリ機能により、受信データからクロック成分を取り出す
    4. 取り出したクロックで位相合わせを行い、「受信クロック」を最適化

図3-7. ビット同期

シンボル同期(Gen1, Gen2の場合)

 デシリアライザが受信データのシンボル開始位置を特定し、シンボル毎にシリアルからパラレルデータへ変換できるようにすること。
一度シンボルの先頭位置が特定されると、その位置を起点とする10bitごとのシンボル単位でシリアル→パラレルデータ変換を行います。(1シンボルの8b/10b変換については、本連載の第1回を御参照ください。)

図3-8. シンボル同期

ブロック同期(Gen3以上の場合)

 デシリアライザが受信データのブロック開始位置を特定し、ブロック毎にシリアルからパラレルデータへ変換すること。
Gen 3以上においては、前述のシンボル同期ではなくブロック同期を行い、受信データのブロック開始位置の特定を行います。ブロックの先頭に位置する同期ビット(2bit)を起点とし、130bitのブロックを受信します。
1ブロックは同期ビット(2bit)+16シンボル(8bit x 16 = 128bit)で構成され、受信側のデシリアライザは8bit単位でシリアル→パラレルデータ変換を行います。(1ブロックの128b/130b変換については、本連載の第1回を御参照ください。)

図3-9. ブロック同期

レーン極性調整

 トレーニングデータ受信によりレーン極性(差動信号のD+とD-)の反転を検出し、受信データを反転すること。
差動トランスミッタと差動レシーバの極性が一致しない場合、差動レシーバ側で受信データの値を反転させます。(”1”→”0”, ”0”→”1”)

図3-10. レーン極性調整

レーン間デスキュー

 マルチ・レーン構成で、レーン間に発生するスキューを除去すること。
マルチ・レーン構成の場合、送信側デバイスの特性や伝送路長の違いによって、受信側に到達する信号のタイミングが一致しないことがあるため、各レーンごとに遅延回路を設け、タイミングの違いを吸収します。このようなレーン間の時間差を「レーン間スキュー」と呼び、そのスキューを除去することを「レーン間デスキュー」と呼びます。

図3-11. レーン間デスキュー

レーン構成の確立

 PCI Expressのリンク幅を決定し、レーン構成を確立させる機能。
例えばデバイス➀のポートは4レーン構成ですが、そのうち2レーンのみがデバイス②と接続されている場合、これら接続されている2レーンのリンク幅で通信可能状態となります。PCI Express規格で規定されているリンク幅は、1, 2, 4, 8, 12, 16, 32, 64レーンの8種類です。

図3-12. レーン構成の確立

信号波形調整機能のチューニング

 送信部のプリエンファシス機能、受信部のイコライザ機能の調整を行い、伝送波形品質を向上させること。
特性上、基板トレースはローパス・フィルタ(低域通過フィルタ)として作用する為、周波数の高い信号は減衰し、伝送距離が長くなるほど減衰量が増し、信号波形は大きく変形します。このためビットデータ間で相互に干渉が発生し、正確にデータを伝送することが難しくなります。
このビットデータの相互干渉問題を改善するため、 PCI Expressでは送信側・受信側それぞれに、信号波形の調整機能が採用されています。


 送信側:プリエンファシス機能(伝送路上で減衰する高周波成分を送信前に増幅)
 受信側:イコライザ機能(伝送路上で減衰した高周波成分を増幅)

図3-13. 信号波形調整機能

■3-5. まとめ

 第3回の今回は「PCI Expressの強み – 高信頼性接続」について説明致しました。

 PCI Expressでは、内蔵するLTSSMとトレーニング・シーケンスの実施により、ホスト、スイッチ、エンドポイント間におけるリンク状態を管理することに加え、送受信波形の調整を行うことで安定した高速通信を実現しています。これらの機能・性能を備えたPCI Expressは、高い信頼性を持つ接続方式である、と言えます。

 次回の第4回は「PCI Expressの強み – 信頼性の高い転送方式」について説明します。お楽しみにっ!

技術本部に関するお問い合わせはこちら

フォームでのお問い合わせはこちらから