この 資 料 は 英 語 版 を 翻 訳 したもので 内 容 に 相 違 が 生 じる 場 合 には 原 文 を 優 先 します こちらの 日 本 語 版 は 参 考 用 としてご 利 用 ください 設 計 の 際 には 最 新 の 英 語 版 で 内 容 をご 確 認 ください AN-635-1.0 このアプリケーション ノートでは Arria II は HardCopy IV および Stratix IV デ バイスでの Altera トランシーバを 搭 載 した SATA(Serial Advanced Technology Attachment)および SAS(Serial Attached SCSI)プロトコルを 実 装 する 方 法 について 説 明 します このドキュメントで 説 明 されるトランシーバのコンフィギュレーション とインタフェースする FPGA ロジックを 使 用 して 独 自 SATA および SAS インタフェー スのデザインを 作 成 できます 本 資 料 には 以 下 のトピックがあります 1-1 ページの SATA および SAS プロトコルの 概 要 1-2 ページの SATA および SAS プロトコルのトランシーバ サポート 1-5 ページの SATA および SAS のトランシーバ コンフィギュレーション 1-6 ページの SATA および SAS アプリケーションのトランシーバの セットアップ 1-10 ページの SATA および SAS 速 度 ネゴシエーション 用 のトランシーバの リコン フィグレーション 1-12 ページの ALTGX_RECONFIG コントローラによる SATA と SAS のデータ レート のリコンフィギュレーション 1-15 ページの 初 期 化 時 ホットプラグの 間 およびダイナミック リコンフィ ギュレーション 後 の SATA と SAS のリセット シーケンス 1-19 ページの 速 度 ネゴシエーションを 伴 うタイミング クロージャ SATA と SAS は デスクトップ サーバ およびその 他 のアプリケーションのホスト およびペリフェラルの 間 の 2 つのシリアル 接 続 プロトコルです これらのプロトコ ルは データ レートおよび 信 号 要 件 と 似 ていますが わずかに 異 なるアプリケー ションを 対 象 としています SATA とは ハード ディスク ドライブやオプティカル ストレージ ドライブな どのペリフェラル デバイスにホスト システムを 接 続 するためのデスクトップ PC サーバー およびエンタープライズ システムのインタコネクトとして 使 用 す るために 開 発 パラレル ATA インタフェースが 進 化 したものです SATA システムは 半 二 重 モードで 動 作 するように 設 計 されています 通 信 は 一 度 に 一 つの 方 向 だけな ります SATA の 物 理 的 なデータ レートが 1.5 Gbps 3.0 Gbps および 6.0 Gbps で す SAS プロトコルは 主 にサーバ システム 内 のディスク ドライブとホスト コン トローラ 間 のインターコネクトとして 使 用 されています SAS は より 多 くの 機 能 を 提 供 し はるかに 多 くの 容 量 容 易 なスケーラビリティと 拡 張 および 強 化 された セキュリティを 提 供 しながら SATA システムとの 下 位 互 換 性 があるように 設 計 されて います 2010 Altera Corporation. All rights reserved. ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS and STRATIX are Reg. U.S. Pat. & Tm. Off. and/or trademarks of Altera Corporation in the U.S. and other countries. All other trademarks and service marks are the property of their respective holders as described at www.altera.com/common/legal.html. Altera warrants performance of its semiconductor products to current specifications in accordance with Altera s standard warranty, but reserves the right to make changes to any products and services at any time without notice. Altera assumes no responsibility or liability arising out of the application or use of any information, product, or service described herein except as expressly agreed to in writing by Altera. Altera customers are advised to obtain the latest version of device specifications before relying on any published information and before placing orders for products or services.
1 2 SAS プロトコルは 全 二 重 モードで 動 作 するように 設 計 さます データは 同 時 にドラ イブから 送 受 信 すること またドライブへ 送 受 信 することことができます プロト コルは 最 大 8mのケーブルへの 接 続 をサポートし エクスパンダの 使 用 をサポー トすることができます その 結 果 単 一 のホスト ポートに 複 数 の SAS ドライブの 接 続 をイネーブルするようになります SAS のフィジカル データ レートは 3.0 Gbps と 6.0 Gbps です アルテラのトランシーバ デバイスは SATA と SAS の 規 格 をサポートします 各 標 準 版 は 主 に 単 一 のデータ リンクの 速 度 に 対 応 します 表 1 に アルテラのトラ ンシーバ FPGA および HardCopy ASIC SATA と SAS のサポートをリストします このドキュメントでは PHY の 要 件 を 満 たすように SATA と SAS プロトコルを 実 装 するための 推 奨 されるトランシーバ コンフィギュレーションについて 説 明 します Arria II HardCopy IV および Stratix IV デバイスは SATA および SAS PHY の 要 件 に 準 拠 します - ネイティブにアルテラのトランシーバでサポートされます 8B/10B ブ ロック レシーバ 信 号 検 出 トランスミッタ 電 気 的 アイドル およびダイナミック リコンフィギュレーション 機 能 で 簡 単 にプロトコル コーディング アウト オフ バンドのシグナリング および 速 度 ネゴシエーションを 実 装 することができます 以 下 の 項 では SATA および SAS 仕 様 に アルテラのトランシーバ デバイス ハー ドウェアの 準 拠 を 説 明 します Stratix IV v v v v v Arria II GX v v v(1) v v(1) Arria II GZ v v v(2) v v(2) HardCopy IV GX v v v v v 表 1 (1) Arria II GX デバイスの I3 のスピード グレードでのみサポートされます (2) GZ デバイス(EP2AGZ225 EP2AGZ300 と EP2AGZ350)の C3 および I3 スピード グレードでの みサポートされます 1-3 ページの SATA と SAS のアウト オフ バンドのシグナリング 1-4 ページの SATA および SAS 用 の 自 動 速 度 ネゴシエーション 1-4 ページの スペクトラム 拡 散 入 力 クロック トラッキング
1 3 SATA および SAS の 両 方 のプロトコルは アウト オフ バンドのシグナリング 方 式 をサポートします アウト オフ バンドのシグナリングは 以 下 の 機 能 に 使 用 さ れます システムで 使 用 されるドライブの 種 類 を 識 別 するために ホストとドライブ 間 の 通 信 を 確 立 する ホストとドライブの 最 大 動 作 データ レートを 識 別 する アウト オフ バンド 信 号 は アイドルとバースト 信 号 のパターンを 含 むトライレ ベル 信 号 です アウト オフ バンドのシグナリングは 受 信 インタフェースがア クティブでない 状 態 の 間 または 低 消 費 電 力 ステート モードで 特 定 のアクション を 通 知 するために 使 用 されます アウト オフ バンド 信 号 は COMRESET COMINIT/COMWAKE および COMSAS で 構 成 されています トランスミッタ 電 気 的 アイド ルとレシーバ 信 号 検 出 の 機 能 を 介 してアウト オフ バンドのシーケンスを 生 成 し 検 出 するためにアルテラ デバイスを 使 用 することができます バースト 信 号 の 間 にアイドル 信 号 を 生 成 するときには アウト オフ バンド 信 号 の 仕 様 に 基 づいてアイドル 時 間 を 送 信 するトランスミッタで tx_forceelecidle ポー トをインスタンス 化 することができます tx_forceelecidle 信 号 はトランスミッ タ バッファをトライ ステートするのに 使 用 されます この 特 定 の 信 号 をイネーブルするには ALTGX メガファンクションの Ports/Calibration ページで Create 'tx_forceelecidle' input port を 詳 細 につ いては 1-8 ページの ALTGX MegaWizard Plug-In Manager におけるトランシーバ コ ンフィギュレーション を 参 照 してください アウト オフ バンドのシーケンス 中 に 各 COMRESET COMINIT/COMWAKE および COMSAS 信 号 の 存 在 を 検 出 するレシーバ 信 号 検 出 機 能 を 使 用 することができます こ れらの 信 号 のスレッショルドレベルは SATA および SAS の 使 用 モデルによって 異 な ります SATA の i m および x バリアント(Gen1 1.5 Gbps Gen2 3.0 Gbps お よび Gen3 6.0 Gbps)および SAS(Gen1 3.0 Gbps および Gen2 6.0 Gbps) ALTGX メガファンクションでこのポートをインスタンス 化 するには Ports/Calibration 設 定 ページの Create 'rx_signaldetect' port to indicate data input signal detection をオンに します 詳 細 については 1-8 ページの ALTGX MegaWizard Plug-In Manager における トランシーバ コンフィギュレーション を 参 照 してください ALTGX メガファンクションで 選 択 可 能 な 2 つの 信 号 検 出 のスレッショルド レベル があります SATA および SAS の 使 用 モデルに 基 づいて 特 定 の 信 号 検 出 のスレッ ショルドを 選 択 することができます 以 下 の 信 号 検 出 のスレッショルド 設 定 を 使 用 してください Gen1i/m Gen2i/m Gen3i 信 号 検 出 のスレッショルド =2 Gen1x Gen2x 信 号 検 出 のスレッショルド =6 i m および x タイプなどの SATA と SAS の 使 用 モデルについて 詳 しくは プロトコ ル 仕 様 を 参 照 してください 1 Quartus II ソフトウェア バージョン 9.1 以 降 を 使 用 してレシーバ 入 力 rx_signaldetect のスレッショルドを 設 定 することができます
1 4 ホストとデバイスがサポートできる 最 大 データ レートを 決 定 するために SATA お よび SAS 速 度 ネゴシエーションはホストとデバイス 間 で 実 行 されます このネゴシ エーションは SATA および SAS 仕 様 の PHY の 要 件 です 自 動 速 度 ネゴシエーション プロセスは リンク 上 の 両 方 のノードからのパターン の 安 定 したストリームを 送 信 します プロセスは データ レートを 変 更 し 一 般 的 な 速 度 をネゴシエートするためのアウト オフ バンドのシグナリングのパター ンを 観 察 します アルテラのトランシーバのダイナミック リコンフィギュレーション 機 能 を 使 用 す ると 速 度 ネゴシエーション 中 に 異 なるデータ レートにリコンフィギュレーショ ンすることができます このアプリケーションに 適 したリコンフィギュレーション 方 式 を 選 択 するには 1-10 ページの SATA および SAS 速 度 ネゴシエーション 用 のト ランシーバの リコンフィグレーション を 参 照 してください そして 推 奨 される リセット シーケンスの 1-15 ページの 初 期 化 時 ホットプラグの 間 およびダイ ナミック リコンフィギュレーション 後 の SATA と SAS のリセット シーケンス を 参 照 してください SSC(スペクトラム 拡 散 クロッキング)は 電 磁 妨 害 (EMI) 放 射 の 低 減 を 補 助 するた めに 必 要 とされています アルテラのトランシーバ デバイスは 内 部 でスペクト ラム 拡 散 クロックを 生 成 することはできません スペクトラム 拡 散 クロック 生 成 の 場 合 には SSC の 生 成 と 外 部 クロック ソースを 使 用 する 必 要 があります ただし アルテラのレシーバ CDR PLL は 変 調 周 波 数 のスペクトラム 拡 散 入 力 を 応 用 できるように 設 計 されています 一 般 的 に CDR PLL は ミディアムあるいは 高 帯 域 の 設 定 への CDR PLL をコンフィギュレーションする 場 合 また 周 波 数 が 入 力 ジッタ 許 容 仕 様 内 にある 場 合 に SSC を 追 跡 することができます f 入 力 ジッタ 許 容 仕 様 について 詳 しくは 次 の 資 料 を 参 照 してください Stratix IV デバイス ハンドブック の DC およびスイッチング 特 性 の 章 HardCopy IV デバイス ハンドブック の HardCopy IV デバイスの DC およびス イッチング 特 性 の 章 Arria II デバイス ハンドブック の Arria II デバイスのデバイス データシー ト の 章
1 5 図 1 に SATA と SAS プロトコルで 実 行 する Basic Functional Mode を 使 用 してトラン シーバのコンフィギュレーションを 示 します 8-, 16-, or 32-bit Interface (1) 10- or 20-bit Interface FPGA Fabric Transmitter Channel PCS Transmitter Channel PMA TX Phase Compensation FIFO Byte Serializer 8B/10B Encoder Serializer tx_dataout tx_coreclk PCIe Hard IP PIPE Interface (2) (2) wrclk tx_clkout rdclk wrclk rdclk /2 Receiver Channel PCS Low-Speed Parallel Clock from Clock Divider 10- or 20-bit Interface Local Clock Divider High-Speed Serial Clock Receiver Channel PMA (3) tx_coreclk (2) (2) RX Phase Compensation FIFO Byte Ordering Byte Deserializer /2 8B/10B Decoder Rate Match FIFO Deskew FIFO Parallel Recovered Clock Word Aligner Deserializer CDR rx_datain 図 1 (1) 32 ビット インタフェースは Stratix IV デバイス HardCopy IV GX および Arria II GZ デバイスでのみサポートされています (2) これらのクロックは SATA と SAS のデータ レートおよび SERDES 係 数 (シングルおよびダブル 幅 モード)に 応 じて 37.5 MHz 75 MHz または 150 MHz で 動 作 します 詳 細 については 1-7 ページの SATA および SAS 用 のサポート されるチャネル 幅 の 設 定 の 選 択 を 参 照 してください (3) 高 速 シリアル クロックは SATA と SAS のデータ レートに 応 じて 750 MHz (1.5 Gbps) 1500 MHz (3 Gbps) および 3000 MHz (6 Gbps) で 動 作 します
1 6 以 下 の 項 では SATA および SAS トランシーバのセットアップについて 説 明 します 1-6 ページの SATA および SAS に 推 奨 PLL コンフィギュレーションの 使 用 1-6 ページの 入 力 基 準 クロックの 選 択 1-7 ページの SATA および SAS 用 のサポートされるチャネル 幅 の 設 定 の 選 択 1-8 ページの ALTGX MegaWizard Plug-In Manager におけるトランシーバ コンフィ ギュレーション SATA と SAS を 動 作 するために データ レートの 1.5 Gbps 3.0 Gbps および 6.0 Gbps の 最 も 適 した PLL コンフィギュレーション 設 定 を 選 択 する 必 要 があります 表 2 に SATA および SAS プロトコル 用 の 推 奨 される PLL コンフィギュレーションをリ ストします SATA 1.0 SATA 2.0/SAS 1.0 (1) 6000(3) 3000 1500 6000(3) 3000 (2) 1500 3000 SATA 3.0/SAS 2.0 6000(3) 6000(3) 表 2 自 動 Medium または High (1) ベース データ レートは 送 信 PLL の VCO の 出 力 周 波 数 です この 設 定 の 使 用 方 法 について 詳 し くは 1-8 ページの ALTGX MegaWizard Plug-In Manager におけるトランシーバ コンフィギュレーション を 参 照 してください (2) 実 効 データ レートは チャネル ローカル ディバイダの 後 のチャネルのシリアル データ レートです この 設 定 の 使 用 方 法 について 詳 しくは 1-8 ページの ALTGX MegaWizard Plug-In Manager におけるトランシーバ コンフィギュレーション を 参 照 してくだ さい (3) 6000 Mbps の 実 効 データ レートは Stratix IV HardCopy IV Arria II GX(-I3 スピード グレード) および Arria II GZ(-I3 と -C3 のスピード グレード)デバイスでのみサポートされています Arria II HardCopy IV および Stratix IV GX/ GT(Stratix IV GX230 ES 以 外 )デバイスを 使 用 してデザインを 作 成 する 場 合 は サポートされるすべてのデータ レートに 150 MHz の 入 力 基 準 クロック 周 波 数 を 推 奨 します ただし Stratix IV GX230 ES デバ イスを 使 用 するデザインの 場 合 入 力 基 準 クロックを 選 択 したときに 表 3 に 記 載 さ れる 制 約 事 項 に 従 ってください Stratix IV GX 230 ES デバイスは 送 信 PLL および 受 信 PLL のための 入 力 基 準 クロック 周 波 数 の 設 定 が 制 限 されます 制 限 'M' カウンタの 設 定 を 使 用 する 入 力 基 準 クロック 周 波 数 とデータ レートを 選 択 した 場 合 エラー 付 きの Quartus II コンパイラが 発 生 さ れます
1 7 Stratix IV GX 230 ES (1) 3000 Mbps 93.75 MHz 75 MHz 6000 Mbps 187.5 MHz 150 MHz 表 3 (1) 基 本 データ レートは PLL VCO の 出 力 周 波 数 です 表 5 に Arria II HardCopy IV および Stratix IV デバイスのサポートされるライン レート チャネル 幅 およびインタフェースのクロック レートの 設 定 をリストし ます トランシーバの 設 定 に 最 も 適 した 設 定 を 選 択 します (1) (3) (2) (3) (4) (5) (4) SATA 1.0 1500 150 75 37.5 150 75 SATA 2.0 3000 150 75 150 SATA 3.0 6000 150 300(6) SAS 1.0 3000 150 75 150 SAS 2.0 6000 150 300(6) 表 4 (1) Arria II GZ デバイスの 場 合 に C3 と I3 スピード グレードにのみ 適 用 されます (2) Arria II GZ の C3 と I3 スピード グレードには 適 用 されません (3) 8/16/32 ビット チャネル 幅 は 8B/10B ブロックでサポートされます (4) ダブル 幅 モードまたはバイト シリアライザ / デシリアライザ(SERDES)ブロックでサポートされ ます (5) ダブル 幅 モードおよびバイト SERDES ブロックでサポートされます (6) 6Gbps のコンフィギュレーションは Arria II GX デバイスの I3 スピード グレードでサポートされ ます SATA 1.0 1500 (1) 8 150 150 16 75 75 32 37.5 37.5(2)
1 8 SATA 2.0/SAS 1.0 3000 SATA 3.0/SAS 2.0 6000 (1) 16 150 150 32 75 75(2) 16 300 300(3) 32 150 150(2) 図 5 (1) 8-16- および 32-ビットのチャネル 幅 は 8B/10B ブロックでサポートされます 16 ビットのチャ ネル 幅 はダブル 幅 モードまたはバイト シリアライザ / デシリアライザ(SERDES)ブロックでサ ポートされます 32 ビットのチャネル 幅 はダブル 幅 モードとバイトの SERDES ブロックの 両 方 でサ ポートされます (2) I3 および C3 スピード グレードでの Arria II GZ にのみ 適 用 されます (3) Arria II GX(-I3 スピード グレード)および Arria II GZ(-I3 と -C3 スピード グレード)にのみ 適 用 されます - MegaWizard Plug-In Manager をナビゲートし 必 要 なオプションと 設 定 を 指 定 しま す 表 6 に 特 定 の 値 は SATA および SAS で 動 作 するトランシーバ チャネルを 設 定 するための 特 定 の 値 をリストします Which megafunction would you like to customize Which protocol will you be using? What is the operation mode? What is the number of channels? What is the channel width? What is the effective data rate? What is the input clock frequency? The base data rate is What is the Tx PLL bandwidth mode? What is Rx CDR bandwidth mode? Create 'gxb_powerdown' port to powerdown the Transceiver block Create 'rx_analogreset' port for the analog portion of the receiver Create 'rx_digitalreset' port for the digital portion of the receiver Create 'tx_digitalreset' port for the digital portion of the transmitter I/O を 展 開 し ALTGX を 選 択 します Basic を 選 択 します デザインに 応 じて Receiver and Transmitter, Transmitter Only または Receiver Only を 選 択 します 1 を 選 択 します チャネル 幅 を 選 択 します (1) 所 望 のチャネルのライン レートを 入 力 します (2) 150.0 MHz を 選 択 します ベースのデータ レートを 入 力 します (2) Auto を 選 択 します High または Medium を 選 択 します この 設 定 はオプションで す
1 9 Create 'rx_locktorefclk' port to lock the Rx CDR to the reference clock Create 'rx_locktodata' port to lock the Rx CDR to the received data Create 'rx_signaldetect' port to indicate data input signal detection(3) Create 'tx_forceelecidle' input port(4) What is the signal detect threshold? TX Analog ページでの 設 定 Analog control(vod, Pre-emphasis, Manual Equalization and EyeQ) Enable Channel and Transmitter PLL reconfiguration Enable 8b10b decoder/encoder Create 'rx_ctrldetect' to indicate 8b10b decoder has detected a control code(5) Word Aligner のオプション グループ What is the word alignment pattern length? What is the word alignment pattern? 以 下 の 値 を 選 択 します Gen1i/m Gen2i/m および Gen3i 2 Gen1x および Gen2x 6 SATA および SAS 仕 様 に 従 って V OD を 設 定 します 詳 細 については 関 連 するデ バイスの 資 料 を 参 照 することができま す トランスミッタ V OD を 変 更 するには ア ナログ コントロールのダイナミック リコンフィギュレーションを 使 用 するこ とができます 速 度 ネゴシエーション 中 にチャネルの データレートを 切 り 替 え 可 能 にするため に rx_signaldetect ポートを 使 用 するため に Use manual word alignment mode を 選 択 します 10 を 指 定 します 0101111100 (10 ビット K28.5 アラインメ ント パターン ) を 入 力 します ワー ド アライナは このパターンの 格 差 を 検 出 します 表 6 (1) 7 ページの 表 5 に 基 づいてチャネル 幅 を 設 定 します (2) チャネルは 速 度 ネゴシエーション 機 能 を 必 要 とする 場 合 は デバイスを 対 象 として 最 高 のライン レートを 設 定 します より 低 いライン レートのネゴシエーションは ダイナミック リコンフィ ギュレーション 機 能 を 使 用 してサポートされます 例 えば チャンネールを 1500Mbps で 実 行 しよ うとして 6000Mbps でリコンフィギュレーションを 計 画 する 場 合 ベースのデータレートは 6000Mbps に 設 定 して 有 効 のデータレートは 1500Mbps に 設 定 してください (3) アウト オフ バンド シグナリングとレシーバ バッファのデータの 存 在 を 検 出 するためにこの ポートを 使 用 することができます (4) このポートは アウト オフ バンド シグナリング シーケンスの 間 にコモン モード 電 圧 でア イドル 信 号 を 送 信 するために 使 用 されます アウト オフ バンド シグナリングを 達 成 する 方 法 について 詳 しくは 1-3 ページの SATA と SAS のアウト オフ バンドのシグナリ ング を 参 照 してください (5) Enable 8b10b デコーダ / エンコーダのオプションをオンにする 場 合 このオプションが 利 用 可 能 で す
1 10 1 SATA および SAS 仕 様 は +350/ 5350 ppm のクロック 補 償 を 必 要 とします フィジカル コーディング サブレイヤ(PCS)にハードコードされた Rate Match FIFO は トラン スミッタ クロックおよびレシーバ クロック 間 の ±300 ppm までを 補 償 することが できます シングル 幅 モードでレシーバ PCS から 8 ビット ワードとコントロー ル ビット 出 力 を 使 用 して FPGA ファブリックでレート マッチ FIFO を 実 装 するこ とができます また 16 ビット ワードおよびダブル 幅 モードでレシーバ PCS から 2 ビットのコントロール 出 力 を 使 用 することができます c コンフィギュレーションにALTGXメガファンクションのレシーバのデータパスのRate match/byte order ページのレート マッチャの 動 作 をディセーブルされていない 場 合 レート マッチャの 動 作 をディセーブルする 必 要 があります また コンフィギュ レーションに Byte Ordering Block をディセーブルされていない 場 合 に それをディ セーブルする 必 要 があります バイト オーダリングがクロック 補 正 (レート マッチャ)の 後 に 発 生 するため FPGA ファブリック 内 のバイト オーダリング ブ ロックを 実 装 します ホストとデバイスがドライブの 最 大 の 動 作 データ レートを 識 別 するためにコミュ ニケーションを 確 立 する 場 合 速 度 ネゴシエーションを 達 成 する SATA および SAS ト ランシバー チャネルをリコンフィギュレーションするためにダイナミック リコ ンフィギュレーション 機 能 を 使 用 することができます 次 のセクションでは 速 度 ネゴシエーションのためのリコンフィギュレーション コントローラを 設 定 するステップについて 説 明 します この 要 件 に 適 合 するには ALTGX_RECONFIG MegaWizard Plug-In Manager を 使 用 することができます SATA と SAS のデータ レート 間 のダイナミック リコンフィギュレーションを 実 行 する 前 に まずメモリ 初 期 化 ファイル(.mif)を 生 成 する 必 要 があります 以 下 のス テップに 従 います 1. Generate GXB Reconfig MIF オプションを a. Assignments メニューの Settings をクリックします b. Category リストの Fitter Settings をクリックします そして Fitter Settings 内 に More Settings をクリックします c. More Fitter Settings ウィンドウで Name ボックスの Generate GXB Reconfig MIF を 選 択 します そして Setting ボックス On を 選 択 します 2. SATA Gen1 (1.5 Gbps) コンフィギュレーション 用 に ALTGX インスタンスを 作 成 しま す デザインをコンパイルし.mif を 作 成 します そのファイルは SATA_MIF_Gen1.mif として 名 前 を 付 けます 3. Create an ALTGX instance for the SATA Gen2 (3 Gbps) コンフィギュレーション 用 に ALTGX インスタンスを 作 成 します デザインをコンパイルし.mif を 作 成 しま す そのファイルは SATA_MIF_Gen2.mif として 名 前 を 付 けます 4..mif ファイルが 可 能 な 状 態 になると 次 の 項 で 説 明 される 方 法 のいずれかを 使 用 して ALTGX_RECONFIG MegaWizard Plug-in Manager のデザイン フローのに 基 づ いてデバイスを 設 定 することができます
1 11 - 速 度 のネゴシエーション 中 に SATA と SAS のチャネルをリコンフィギュレーション するにはこのメソッドを 使 用 することができます 次 の 例 では SATA でコンフィ ギュレーションされる Stratix IV GX デバイスを 使 用 します サポートされるデータ レートの 場 合 同 じ 設 定 の Arria II と 同 じ HardCopy IV デバイスに 適 用 することができ ます MegaWizard Plug-In Manager をナビゲートし 必 要 なオプションと 設 定 を 指 定 しま す 表 7 に トランシーバ リコンフィギュレーション コントローラをインスタ ンス 化 するための 特 定 の 値 をリストします Which megafunction would you like to customize What is the number of channels controlled by the reconfig controller? What are the features to be reconfigured by the reconfig controller? Analog controls ページでの 設 定 Use 'reconfig_address_en' Use 'reset_reconfig_address' Use 'reconfig_address' port to input address from MIF in reduced MIF reconfiguration Enable self recovery(1) Use 'rate_switch_out' port to read out the current data rate division I/O を 展 開 し ALTGX_RECONFIG を 選 択 し ます チャネル 数 を 指 定 します 次 のオプションを トランスミッタ V OD プリエンファシ ス およびレシーバ イコライゼー ションをダイナミックにリコンフィ ギュレーションするには Analog controls を SATA データ レート 間 のみリコン フィギュレーションするには 送 信 データパス データ レートは Data rate division in TX をオンにしま す SATA データ レート 間 の TX と RX CDR の PLL をリコンフィギュレーション するには Channel and TX PLL select/reconfig をこ れはまた チャネルのデータ 幅 など のチャネル パラメータをリコン フィギュレーションすることができ ます デフォルトの 設 定 でオプションを 制 御 す る またはそのオプションのままにする アナログ パラメータを 選 択 します
1 12 Use 'rx_tx_duplex_sel' port to enable RX only, TX only or duplex reconfiguration 表 6 トランスミッタとレシーバ チャンネル を 個 々にリコンフィギュレーションする ために (1) Quartus II ソフトウェアは タイム アウトされる 不 完 全 な 動 作 から 復 旧 可 能 であり エラーポート を High にドライブすることができます f ポート リストについて 詳 しくは Stratix IV デバイス ハンドブック の Dynamic Reconfiguration in Stratix IV Devices の 章 HardCopy IV デバイス ハンドブック の HardCopy IV GX Dynamic Reconfiguration の 章 および AN 558: Implementing Dynamic Reconfiguration in Arria II Devices を 参 照 してください トランスミッタおよびレシーバ チャネルの 両 方 の SATA および SAS 仕 様 で 要 求 さる 54.6 μs の 高 速 リコンフィギュレーション 時 間 を 達 成 するためには 次 のいずれかの 方 法 を 使 用 することができます 54.6 μs のタイミング 要 件 は コンフィギュレー ション 時 およびリセットとリロック シーケンスが 含 まれます 54.6 μs のタイミング 要 件 に 準 拠 するために アルテラは 以 下 のリコンフィギュ レーション 方 法 をお 勧 めします このメソッドは Data Rate Division in TX モードを 使 用 して それが 唯 一 のチャンネ ル ディバイダの 設 定 に 影 響 を 与 えます このモードでは 1 2 または 4 にトランスミッタ ローカル ディバイダ 設 定 のダ イナミック リコンフィギュレーションを 可 能 にします トランスミッタのチャネ ル データ レートは ローカル ディバイダ 設 定 に 基 づいてリコンフィギュレー ションされます たとえば SATA Gen1 Gen2 および Gen3 のデータ レートは 2 か 4 での 倍 数 ま たは 2 か 4 での 割 り 算 があります Data Rate Division in TX モードを 使 用 してリコン フィギュレーションすることができます デバイスがサポートする 最 高 の SATA ライ ン レート(この 例 では 6.0 Gbps)に 基 本 データ レートを 設 定 し 以 下 のデータ レート 分 周 値 のいずれかに TX ローカル ディバイダを 設 定 します Gen1 データ レートにトランスミッタをリコンフィギュレーションするには データ レート 分 周 値 を 4 に 設 定 してください Gen2 データ レートにトランスミッタをリコンフィギュレーションするには データ レート 分 周 値 を 2 に 設 定 してください Gen3 データ レートにトランスミッタをリコンフィギュレーションするには データ レート 分 周 値 を 1 に 設 定 してください
1 13 f Data Rate Division in TX モードについて 詳 しくは Stratix IV デバイス ハンドブック の Dynamic Reconfiguration in Stratix IV Devices の 章 HardCopy IV デバイス ハンド ブック の HardCopy IV GX Dynamic Reconfiguration の 章 および AN 558: Implementing Dynamic Reconfiguration in Arria II Devices を 参 照 してください この 方 法 は reduced.mif reconfiguratio モードを 使 用 して それはレシーバ チャネ ルの 変 更 した 設 定 にのみ 影 響 を 与 えます この 方 法 を 使 用 すると トランシーバ チャネルのための 目 的 の 変 更 された 設 定 だ けが 更 新 されます それは 著 しく 再 構 築 時 間 を 縮 小 します リコンフィギュレー ションするレシーバ チャネルを 選 択 するには rx_tx_duplex_sel ポートをイネー ブルし その 2'b01 値 を 設 定 します この 動 作 には 50 MHz のリコンフィギュレー ション クロック 周 波 数 を 使 用 することができます 1 Reduced.mif reconfiguration モードは Arria II GX HardCopy IV および Stratix IV デバイ ス 用 の Quartus II ソフトウェア バージョン 9.1 以 降 のみサポートされます この 項 では SATA および SAS の 速 度 ネゴシエーションを 実 行 するための reduced.mif reconfiguration モードを 使 用 する 方 法 について 説 明 します このモードは.mif ベースのトランシーバ チャネルのリコンフィギュレーション モードにのみ 使 用 できます このモードは 高 速 リコンフィギュレーションと 短 い シミュレーション 時 間 を 可 能 にするオプション 機 能 です.mif 内 の 唯 一 のいくつか の 単 語 が 含 まれるため トランシーバ チャネルへのマイナーな 変 更 をする 場 合 このモードを 使 用 することができます 次 の 例 では 2 つの.mif ファイルの 唯 一 の 違 いは ワード アドレス 32 であること を 前 提 とします 全 体 の.mif ファイルをロードする 代 わりに 新 しい.mif ファイル を 生 成 するために 実 行 可 能 altgx_diffmifgen.exe ファイルを 使 用 することができます この 新 しい.mif ファイルは 変 更 されたワード(ワード アドレスの 32)しかありま せん 図 2 に 示 すように 普 通 の.mif は 16 ビット 幅 ですが 新 しい.mif ファイル は 22 ビット 幅 です 16 ビットのデータに 加 えて 6 ビット アドレスがあります <addr 6 bits> <data 16 bits> <data 16 bits> <addr 6 bits> 減 少 した.mif ファイルを 生 成 する 前 に ALTGX_RECONFIG MegaWizard Plug-In Manager の Channel and TX PLL Reconfiguration ページでこれらのオプションを 設 定 します
1 14 入 力.mif ファイルからのアドレスビットにreconfig_address ポートをオンにしま す 新 しい.mif ファイルからワードの 16 の 最 下 位 ビット(LSB)に reconfig_data[15:0] ポートを 接 続 します 新 しい.mif ファイルからワードの 6 の 最 上 位 ビット(MSB)に reconfig_address[5:0] ポートを 接 続 します 減 少 した.mif ファイルを 生 成 するには 次 のステップに 従 います 1. altgx_diffmifgen.exe 実 行 可 能 ファイル(たとえば C:\altera\10.1\quartus\bin)を 含 む Quartus II ソフトウェアのインストールされたフォルダを 検 索 して このディ レクトリ パスに 注 意 します 2. コマンド プロンプトを 起 動 し プロジェクトディレクトリの reconfig_mif フォ ルダに 移 動 します reconfig_mif フォルダには 以 前 の SATA_MIF_Gen2.mif と SATA_MIF_Gen3.mif ファイルを 生 成 した.mif ファイルが 含 まれます その 後 次 のコマンドを 入 力 します <path to Quartus II bin folder>\altgx_diffmifgen.exe SATA_MIF_Gen2.mif SATA_MIF_Gen3.mif r 入 力 ファイル(SATA_MIF_Gen2.mif と SATA_MIF_Gen3.mif)から altgx_diffmifgen.exe 実 行 可 能 ファイルは 2 つの.mif ファイルを 生 成 します to_sata_mif_gen2.mif トランシーバを Gen2 のデータ レートにリコンフィギュ レーションするにはこのファイルを 使 用 します to_sata_mif_gen3.mif トランシーバを Gen3 のデータ レートにリコンフィギュ レーションするにはこのファイルを 使 用 します 1 トランスミッタおよびデュプレックス チャネルに 対 して 減 少 した.mif のリコンフィ ギュレーションを 実 行 するために 説 明 される 方 法 を 使 用 できます アプリケーショ ンに 合 わせて トランスミッタ レシーバ またはデュプレックスのいずれかを 選 択 するために rx_tx_duplex_sel ポートを 操 作 します f チャネルと TX PLL リコンフィギュレーション.mif 生 成 および.mif ベースのデザイ ン フローについて 詳 しくは Stratix IV デバイス ハンドブック の Dynamic Reconfiguration in Stratix IV Devices の 章 HardCopy IV デバイス ハンドブック の HardCopy IV GX Dynamic Reconfiguration の 章 および AN 558: Implementing Dynamic Reconfiguration in Arria II Devices を 参 照 してください
1 15 SATA および SAS アプリケーションでトランシーバの 正 しい 動 作 を 保 証 するために ポートをインスタンス 化 し 以 下 の 状 況 で この 項 で 推 奨 されるリセット シーケ ンスに 応 じてリセット 信 号 を 制 御 します リンクの 初 期 化 時 に ホット プラグ 状 態 の 間 ダイナミック リコンフィギュレーション プロセスの 完 了 後 図 4 に 推 奨 されるリセット シーケンスを 示 します このリセット シーケンサ は パワーアップ 条 件 の 後 にリセット コントローラの 信 号 を 制 御 します(マニュ アル ロック モードでコンフィギュレーションされるレシーバ CDR と 非 結 合 コン フィギュレーション モードの 場 合 ) Reset Signals pll_powerdown tx_digitalreset rx_analogreset 1 2 1 µs 4 6 rx_digitalreset CDR Control Signals rx_locktorefclk 8 rx_locktodata Output Status Signals busy 5 Two parallel clock cycles 8 図 4 (1) RX バッファがバーストとアイドル モードで 送 信 されるアウト オフ バンド(OOB) 信 号 を 受 信 し たときに rx_signaldetect 信 号 がトグルされます OOB シグナリング 後 連 続 したデータが 受 信 バッ ファに 送 信 され rx_signaldetect 信 号 は High にラッチされます( 有 効 なデータが 受 信 されているこ とを 示 す) 図 4 に 示 すように これらのリセットのステップに 従 います 1. 電 源 投 入 後 pll_powerdown 信 号 を 1 μs の 最 小 期 間 (マーカ 1 と 2 の 間 の 時 間 ) にわたってアサートします この 期 間 中 は tx_digitalreset rx_analogreset rx_digitalreset および rx_locktorefclk 信 号 をアサートしたまま rx_locktodata 信 号 をディアサートしたままにしておきます 2. pll_powerdown 信 号 がディアサートされた 後 トランスミッタ PLL は トランス ミッタ 入 力 基 準 クロックへのロックを 開 始 します
1 16 3. pll_locked 信 号 が High になったら tx_digitalreset 信 号 をディアサートしま す(マーカ 3) レシーバ 動 作 のために busy 信 号 がディアサートされるのを 待 ちます その 後 rx_analogreset がディアサートされます 4. 最 初 の rx_signaldetect 信 号 が High になると この 信 号 を 監 視 します rx_signaldetect が(マーカ 7 有 効 なデータが 受 信 バッファに 存 在 することを 示 す)High にラッチしたら その 時 点 から 少 なくとも 1 μs 間 待 機 し 次 に rx_locktorefclk 信 号 をディアサートし rx_locktodata 信 号 をアサートします この 時 点 で レシーバ CDR は ロック ツー データ モードに 入 り 受 信 デー タに 対 してロックを 開 始 します 5. rx_locktodata 信 号 をアサートした 後 その 時 点 から 少 なくとも 4 μs(マーカ 8 と 9)で rx_digitalreset 信 号 をディアサートします この 時 点 で レシーバは データ トラフィックのために 使 用 可 能 です ホットプラグされるおよびホットプラグされていない 時 には データが SATA と SAS のレシーバ リンクに 再 導 入 されたときに 適 切 なリセット シーケンスを 実 行 する ための 信 号 検 出 のステータス 信 号 の rx_signaldetect(リンク ステータスを 示 す) を 監 視 することができます 図 5 に レシーバ CDR がマニュアル ロック モードでコンフィギュレーションさ れる 場 合 リセット シーケンスを 制 御 するために rx_signaldetect 信 号 を 使 用 す る 推 奨 タイミング 図 を 示 します Hot-Plugged Reset Signals rx_digitalreset 3 CDR Control Signals rx_locktorefclk 2 4 µs rx_locktodata 2 Output Status Signals rx_signaldetect (1) 1 1 µs 図 5 (1) RX バッファがバーストとアイドル モードで 送 信 されるアウト オフ バンド(OOB) 信 号 を 受 信 し たときに rx_signaldetect 信 号 がトグルされます OOB シグナリング 後 連 続 したデータが 受 信 バッ ファに 送 信 され rx_signaldetect 信 号 は High にラッチされます( 有 効 なデータが 受 信 されているこ とを 示 す) 図 5 に 示 すように これらのリセットのステップに 従 います 1. ホット プラグのリセットを 処 理 するために rx_signaldetect ステータス 信 号 を 監 視 し High に(マーカ 1)ラッチする 信 号 を 待 機 します(レシーバで 連 続 性 の 有 効 なデータの 受 信 を 示 す)
1 17 2. rx_signaldetect 信 号 が High にラッチしたら その 時 点 から 少 なくとも 1 μs 間 待 機 して rx_locktorefclk 信 号 をディアサートし rx_locktodata 信 号 をア サートします CDR は ロック ツー リファレンス モードからロック ツー データ モードに 切 り 替 わります 3. rx_locktodata 信 号 (マーカ 2)をアサートした 後 に 4 μs 間 待 機 して rx_digitalreset 信 号 (マーカ 3)をディアサートします レシーバは 有 効 な データの 受 信 を 開 始 します この 項 では 異 なるデータ レートをサポートするチャネルのダイナミック リコ ンフィギュレーション 後 の SATA と SAS チャネルのための 推 奨 されるリセット シー ケンスを 示 します SATA および SAS のトランスミッタまたはレシーバのリコンフィ ギュレーション 方 法 に 応 じて 次 の 推 奨 事 項 のいずれかから 適 切 なリセット シー ケンスを 適 用 します Reset and Control Signals tx_digitalreset 1 4 rate_switch_ctrl[1:0] write_all New value 1 Ouput Status Signals busy 2 3 図 6 に 示 すように トランスミッタ チャネルをリコンフィギュレーションするた めに Data Rate Division in TX モードを 使 用 する 場 合 推 奨 されるリセット シーケン スのためには これらのリセットのステップに 従 います 1. 電 源 を 投 入 し トランスミッタが 希 望 どおりに 動 作 するように 適 切 に 設 定 してか ら 所 定 のレジスタ(この 例 では rate_switch_ctrl[1:0])に 新 しいデータ レートの 値 を 書 き 込 み 次 に write_all 信 号 をアサートして(マーカ 1) ダイ ナミック リコンフィギュレーションを 開 始 します 2. tx_digitalreset 信 号 をアサートします 3. write_all がアサートされると ダイナミック リコンフィギュレーション コ ントローラは 直 ちに 動 作 を 開 始 します これは busy 信 号 のアサーション(マー カ 2)で 示 されます 4. ダイナミック リコンフィギュレーション 完 了 後 busy はディアサートされます (マーカ 3) 5. 最 後 に tx_digitalreset をディアサートして トランスミッタの 動 作 を 継 続 す る(マーカ 4)ことができます 図 7 に マニュアル ロック モードでコンフィギュレーションされる CDR のレ シーバ チャネルに 基 づくタイミング 図 を 示 します
1 18 Reset Signals Reset sequence after reduced.mif reconfiguration 4 Valid RX data from this point onwards rx_digitalreset rx_analogreset 1 CDR Control Signals rx_locktorefclk 3 rx_locktodata 3 Output Status Signals 1 channel_reconfig_done rx_pll_locked Reconfig_T (1) 2 T1 10 µs T2 1 µs 図 7 (1) リコンフィギュレーション 時 間 (Reconfig_T)の 期 間 は 使 用 されているデバイスに 応 じて 異 なりま す 図 7 に 示 すように reduced.mif reconfiguration モードを 使 用 してレシーバ チャネ ルをリコンフィギュレーションする 場 合 reduced.mif reconfiguration のステップに 従 います 1. channel_reconfig_done 信 号 は High にアサートした 後 ( 減 少 した.mif ファイル のリコンフィギュレーション プロセスが 完 了 したことを 示 す) rx_analogreset 信 号 をディアサートします 2. rx_pll_locked 信 号 を 監 視 します 信 号 が High になるとしたら 10 μs 間 待 機 し ます そして LTR モードから LTD モードに CDR を 切 り 替 えるように rx_locktorefclk 信 号 をディアサートし rx_locktodata をアサートします 3. 1 μs 間 待 機 して rx_digitalreset 信 号 をディアサートします レシーバは 有 効 なデータの 受 信 を 開 始 します 1 リロックおよびリセット 方 法 ( 減 少 した.mif リコンフィギュレーション モードを 使 用 する 場 合 ) Medium BW(デフォルト)または High BW にレシーバ CDR PLL を 設 定 します 1 全 体 のリコンフィギュレーション リロック およびリセット 期 間 (Reconfig_T データにロックするための CDR の 期 間 およびリセット シーケンス 時 間 を 含 む) は 54.6 μs 以 内 でなければなりません リコンフィギュレーション モードでは 合 計 時 間 がこの 制 限 の 範 囲 内 であることを 確 認 してください 一 般 的 なガイドとし て Reconfig_T が 少 なく 20 μs 以 下 である 必 要 があります
1 19 特 に SATA と SAS のデザインで 速 度 ネゴシエーションを 実 行 するときデザインにトラ ンシーバをインターフェースする 場 合 タイミング クロージャは 重 要 で 必 要 で す 前 の 項 で 説 明 したように ダイナミックに 1.5 3 および 6Gbpsを 切 り 替 えるため に SATA と SAS でトランシーバ チャネルをリコンフィギュレーションする ALTGX_RECONFIG コントローラを 使 用 することができます Quartus II ソフトウェアの フィッタは 指 定 した 制 約 に 基 づいてデータ レートを 満 たすために ファブリッ クを 配 置 して 配 線 します 3 つのデータ レート 間 トランシーバを 切 り 替 えようとする 場 合 すべてのクロッ ク レートとトランシーバ コア インタフェース 上 のデータ パスを 定 義 するこ とは 重 要 です タイミング 制 約 を 作 成 するには TimeQuest タイミング アナライザ を 使 用 することができます それは 1.5 3 および 6 Gbps のデータ レートです べてのデザインのタイミング 要 件 に 適 合 するのに 役 立 ちます デザインのすべての リコンフィギュレーション 可 能 なデータ レートのタイミングに 準 拠 することを 確 認 するために 複 数 のクロック 制 約 を 実 行 する 必 要 があります この 準 拠 は タイ ミング 違 反 を 引 き 起 こすことなく ダイナミック リコンフィギュレーション コ ントローラで 切 り 替 えされるすべてのデータ レートに 最 適 なロジックの 配 置 を 可 能 にします f デザインの 実 装 と 最 適 化 について 詳 しくは Quartus II ハンドブック バージョン 11.0 の Area and Timing Optimization の 章 を 参 照 してください 表 8{ に 本 資 料 を 改 訂 履 歴 を 示 します 2011 年 6 月 1.0 初 版
1 20