記事 ID: 000097527 コンテンツタイプ: トラブルシューティング 最終改訂日: 2023/12/11

Intel Agilex® 7 R タイル Compute Express Link* (CXL) 1.1/2.0 FPGA IP に ATS 機能が含まれていないのはなぜですか?

環境

    インテル® Quartus® Prime 開発ソフトウェア・プロ・エディション

OS Independent family

BUILT IN - ARTICLE INTRO SECOND COMPONENT
詳細

インテル® Quartus® Prime Pro Edition ソフトウェア・バージョン 23.4 以前の問題により、Intel Agilex® 7 R タイル Compute Express Link* (CXL) 1.1/2.0 FPGA IP には ATS (Address Translation Service) 機能レジスターがありません。これは Compute Express Link (CXL) 仕様に従って仮想アドレスを物理アドレスに変換する CXL.io パスに必須の機能です。

解決方法

この問題は、インテル® Quartus® Prime Edition ソフトウェアの今後のリリースでは修正されません。

この問題を回避するには、下記の R タイル Compute Express Link* (CXL) 1.1/2.0 FPGA IP ユーザーガイド の説明に従ってIntel Agilex® 7追加の RTL コードを実装してください。

IP を使用すると、アドレス 0xE00 から PF1 に拡張機能を追加できます。このデザイン例には、オフセット 0xE00 にヌルの拡張機能コンフィギュレーション レジスターが含まれており、これにより拡張機能チェーンが終了します。

次のコード例を参照してください。

1. /hardware_test_design/common/ex_default_csr/ex_default_csr_avmm_slave.sv を開きます

2. ATS 機能レジスターを追加します

ATS 00E00+00E04
登録 [4:0] ats_stu;
登録ats_en;

00E00 機能ヘッダー
ローカルパラメータ EX_CAP_HEADER_ATS = 32'hE101000f;
00E04 コントロール
{ats_en,10'h0,ats_stu,16'h0020}

常に@(posedge clk)
if (!reset_n) が始まります
ats_stu <= 5'b0;
ats_en <= 1'b0;
end else if (write & config_access)begin
ケース(アドレス[20:0])
21'h00E04 : 開始
ats_stu <= 書き込みデータ[20:16];
ats_en <= 書き込みデータ[31];
終わり
既定;
エンドケース
終わり

常に@(posedge clk)
if (!reset_n) が始まります
読み取りデータ <= 32'h0;
end else if(read&config_access)begin
ケース(アドレス[20:0])
21'h00E00 : 読み取りデータ <= EX_CAP_HEADER_ATS;
21'h00E04 : 読み取りデータ <= {ats_en,10'b0,ats_stu,16'h0020} ;
デフォルト : 読み取りデータ <= 32'hffff_ffff;
エンドケース
終わり

関連製品

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

インテル® Agilex™ 7 FPGA & SoC FPGA I シリーズ

1

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