TEL:086-227-0113
info@gopher-tec.jp
TOP page 製品情報 FPGAサンプルコードリポジトリ PCIe PIPE 16bit Descrambler
PCIe PIPE 16bit Descrambler

PCI Expressのデスクランブラ・モジュールです。
本来、スクランブラとデスクランブラはPCI Expressの物理層の機能ですが、
PIPE(PHY I/F for PCI Express)で上位層・下位層を隔てて設計する場合には、同機能は何故か上位層
(つまりMAC側)の責任範囲となります。多くの場合、既存のPCI ExpressのIPを用いることで、
スクランブラやデスクランブラを設計することから回避可能ですが、何かの事情でMACを設計する必要に
迫られてしまった場合、あるいはIPを使いつつも、シミュレーションしてみたら、切り口であるはずのPIPE
に現れるのはスクランブルのかかったデータばかりで理解できないとなった場合等々、デスクランブルする
モジュールをガイド役にしたい場面が極まれに訪れます。そんな時に本モジュールをお使いください。
PIPEはデータ16ビットの仕様を想定しています。8ビットの場合は、規格書(PCI Express Base Spec)
のAppendix Cに詳しく記載されていますので、そちらを参照ください。

Port I/O  Description 
RESET in 非同期リセット入力です。
パワーオン時、またはシステムリセット時にアサートして下さい。
PCLK in PIPEのPCLKです。
RX_DATA[15:0] in PIPEのRxDataです。
RX_DATAK[1:0] in PIPEのRxDataKです。[1]はRX_DATA[15:8]に、[0]は同[7:0]に対応します。
1のとき、対応するRX_DATAがKコードであることを示します。
DESCRAMBLE_DIS in 通常は0を入力し、デスクランブル機能を強制的に禁止にする際に1を入力して下さい。
DESC_RX_DATA[15:0] out デスクランブル処理後のデータです。
レジスタ出力であり、RX_DATAから1 クロック遅れて確定します。
RX_DATAK[1:0]とセットで使用する場合は、同信号を1クロック遅らせて組合せて
下さい。
※特に注記のない限り、信号は全て正論理です。
本ソースコードはVerilog版のみとなっております。
詳細は下記の資料ダウンロードをクリックください。

PCIe PIPE 16bit Descrambler
資料ダウンロード