アルテラの高速トランシーバ・ブロック搭載デバイスにて高速データ転送を行うことを検討しています。 ALTGX メガコアにて送信側のパラレルクロック (tx_coreclk) を有効にしましたが Quartus II のコンパイルでエラーになります。
Quartus II の Assignment Editor で "GXB 0 PPM Core Clock Setting" の設定を行う必要があります。
ALTGX MegaCore にて送信側のパラレルクロック (tx_coreclk) を有効にした場合、そのクロックは ALTGX 内部のパラレル (低速) クロックと周波数偏差が無いことが条件となります。
高速トランシーバ・チャネル内部には、TX 位相補償 FIFO があり、入力のパラレルクロックは、その FIFO のライトクロックとして使用されます。 また、この FIFO のリードクロックは、トランシーバ・チャネル内部のパラレルクロックが使用されます。 このライトクロックとリードクロックに周波数偏差があると FIFO が破綻して正しくデータ転送が行えなくなります。 また、その指定を Quartus II に対して Assignment Editor 上に指定する必要があります。
指定しない場合、Quartus II でコンパイル・エラーとなります。
詳細は、各デバイスの Handbook を参照ください。
例 : Stratix IV GXデバイスの参照ページ
https://www.altera.com/en_US/pdfs/literature/hb/stratix-iv/stx4_siv52001.pdf
P1-14 TX Phase Compensation FIFO
https://www.altera.com/en_US/pdfs/literature/hb/stratix-iv/stx4_siv52002.pdf
P2-51 FPGA Fabric-Transmitter Interface Clocking
P2-60 Table 2–16. Quartus II Assignments