記事 ID: 000080003 コンテンツタイプ: 製品情報 & ドキュメント 最終改訂日: 2014/12/09

FPGAがプログラムされていない場合、インテル® Arria® 10 FPGA HPS ハード・メモリー・コントローラーのクロックとリセット方法を教えてください。

環境

  • インテル® Quartus® II サブスクリプション・エディション
  • 動作周波数
  • リセット
  • BUILT IN - ARTICLE INTRO SECOND COMPONENT
    詳細

    インテル® Arria® 10 FPGA HPS ハード・メモリー・コントローラー (HMC) は、FPGA・ファブリックが構成されていない間に使用できますが、フェーズロック・ループ (PLL) リファレンス・クロックおよびリセット信号は、特定の方法で構成する必要があります。

    解決方法

    HPS HMC を使用できるようにするには、最初に I/O 列のみを構成する必要があります。FPGA ファブリックを設定する必要はありません。

    HPS HMC 向け PLL リファレンス・クロックは、I/O バンクの専用入力クロックピンからの入力をお勧めします。プラットフォーム・デザイナーでは、HPS HMC のクロック入力 (pll_ref_clk_clock_sink) ポートを、エクスポートされたクロックソースに接続して専用入力クロック・ピンに接続するか、この信号を直接エクスポートします。

    FPGA・ファブリックが構成されていない場合、HPS HMC のglobal_reset_n入力を使用できません。さらに、このグローバル・リセットにより、HPS HMC に使用される I/O バンクだけでなく、I/O 列全体もリセットされます。プラットフォーム・デザイナーでは、HPS HMC のリセット入力 (global_reset_reset_sink) 信号をエクスポートするか、FPGA・ファブリックの構成後に使用できるリセット・ソースに結び付けることができます。

    HPS は、HPS がアクセスできる IOAUX キャリブレーション・スペースのレジスターを介して、間接的に HPS HMC をリセットすることができます。HPS 列と I/O 列の間には 2 つの 8 ビット・バス (core2seq および seq2core) が存在し、ソフトウェアはNios® IIメモリー・スペース内のレジスターへの書き込みおよび読み取りを可能にします。HPS のリセット・マネージャーは、これらのバスを介したNios® II・プロセッサーとのハンドシェイクを処理します (ポート hmc_gpio_core2seq および hmc_gpio_seq2coreとして定義されます)。これらの GPIO ポートは、HPS と I/O 列間のハード接続です。HPS HMC のリセットと再キャリブレーションを要求するには、ソフトウェアが core2seq レジスターに0x0fを書き込んで、ハンドシェイクを開始できます。

    HPS とNios II・プロセッサー間のハンドシェイク

    Nios IIプロセッサーは、ソフトウェアが core2seq レジスターに0x0fを書き込むまで、core2seq レジスターをポーリングします。

    Nios IIプロセッサーは、 seq2core バスに0x07を書き込み、リセット要求が見られ、プロセスを開始したことを認識します。

    HPS は、Nios II・プロセッサーがリセットと再キャリブレーションが完了したことを示す0x08を記述したことを確認するまで、 seq2core をポーリングします。

    HPS は core2seq に0x00を書き込み、Nios II・プロセッサーが終了したことを確認します。


    Nios IIプロセッサーは、ハンドシェイクを完了するために 、0x00を seq2core に書き込みます。

    要約すると

    最初に HPS をリセットしてから、HPS にNios II・プロセッサーを通じて間接的に HMC をリセットする必要があります。

    関連製品

    本記事の適用対象: 3 製品

    インテル® Arria® 10 GT FPGA
    インテル® Arria® 10 GX FPGA
    インテル® Arria® 10 SX SoC FPGA

    このページのコンテンツは、元の英語のコンテンツを人力翻訳および機械翻訳したものが混在しています。この内容は参考情報および一般的な情報を提供するためものであり、情報の正確さと完全性を保証するものではありません。インテルは不正確な翻訳があった場合でもいかなる責任を負いません。このページの英語版と翻訳の間に矛盾がある場合は、英語版に準拠します。 このページの英語版をご覧ください。