Quartus® II バージョン 14.0 以前を使用して生成された PCI Express® 向け Altera® Avalon®-MM ハード IP は、プロトコル経由コンフィグレーション (CvP) が有効化されている場合、スループットが低くなります。この問題は、PCIe ハード IP と Avalon-MM ブリッジのクレジット カウンターが同期されていないために発生します。
CvP の場合、PCIe 周辺は、ファブリックがプログラムされる前にロードされます。周辺がプログラムされた後、FPGA PCIe パケットを送受信します。この相互作用により、PCIe ハード IP のクレジットカウンターが増加します。その後まもなく、ファブリックにデフォルトのクレジット・カウンター値がロードされ、2 つのカウンター間で不一致が発生します。
この問題は、Quartus® II ソフトウェアの今後のリリースで修正される予定です。
Quartus® II バージョン 14.0 以前でこの問題を回避するには、RTL を以下の変更を行います。
ファイル altpciexpav_stif_tx_cntrl.v で、次の行を次のように変更します。
np_header_avail_reg <= np_header_avail;
宛先:
np_header_avail_reg <= 1'b1;