仅对英特尔可见 — GUID: nik1398706815424
Ixiasoft
仅对英特尔可见 — GUID: nik1398706815424
Ixiasoft
2.4.9. Enhanced PCS端口
在下表中,变量代表这些参数:
- <n>—通道数
- <d>—串化因子
- <s>—符号大小
- <p>—PLL数量
名称 | 方向 | 时钟域 | 说明 |
---|---|---|---|
tx_parallel_data[<n>128-1:0] |
输入 |
与驱动FIFO写入侧的时钟同步(tx_coreclkin或 tx_clkout) |
从FPGA架构到TX PCS的TX并行数据输入。如果在Transceiver Native PHY IP Parameter Editor中选择Enable simplified interface,那么tx_parallel_data仅包括您指定的配置所需要的比特。 您必须将无效(not active)的数据管脚接地。对于单宽度配置,下面比特是有效的(active):
对于双宽度配置,下面比特是有效的(active):
对于32-bit、50-bit和67-bit FPGA架构到PCS接口宽度,不支持双宽度模式。 |
unused_tx_parallel_data | 输入 |
tx_clkout | 当使能Enable simplified data interface时,此端口使能。将所有这些比特连接到0。当Enable simplified data interface禁用时,未使用的比特是tx_parallel_data的一部分。请参考tx_parallel_data来确定您需要接地的比特。 |
tx_control[<n><3>-1:0]或 tx_control[<n><18>-1:0] |
输入 |
与驱动FIFO写入侧的时钟同步(tx_coreclkin或 tx_clkout) |
根据所选的收发器配置规则,tx_control比特有不同的功能。当Simplified data interface使能时,此总线中的比特数量会改变,因为未使用的比特显示为unused_tx_control端口的一部分。 关于详细信息,请参考Enhanced PCS TX和RX控制端口部分。 |
unused_tx_control[<n> <15>-1:0] | 输入 |
与驱动FIFO写入侧的时钟同步(tx_coreclkin或 tx_clkout) |
当使能Enable simplified data interface时使能端口。将所有这些比特连接到0。当Enable simplified data interface禁用时,未使用的比特是tx_control的一部分。 请参考tx_control来识别需要接地的比特。 |
tx_err_ins | 输入 | tx_coreclkin | 对于Interlaken协议,如果已开启Enable simplified data interface,那么可以使用该比特插入同步头(synchronous header)和CRC32错误。 置位时,该周期字的同步头(synchronous header)被损坏的同步头替换。如果开启Enable Interlaken TX CRC-32 generator error insertion,那么也会插入一个CRC32错误。损坏的同步头是2'b00 (一个控制字)和2'b11 (一个数据字)。对于CRC32错误插入,用于该周期的CRC计算的字被错误地反转,从而导致Diagnostic Word of the Metaframe中错误的CRC32。 注意:不能生成Framing Control Words的同步头错误(synchronous header error)和CRC32错误,因为Frame Control Words是在嵌入在TX PCS中的帧生成器中生成的。如果使能了Transceiver Native PHY IP GUI中的CRC-32错误插入功能,那么同步头错误和CRC32错误都会被插入。 |
tx_coreclkin[<n>-1:0] | 输入 | 时钟 | FPGA架构时钟。驱动TX FIFO的写入侧。对于Interlaken协议,此时钟的频率从datarate/67到datarate/32。使用低于此范围的频率会导致TX FIFO下溢,并导致数据损坏。 |
tx_clkout[<n>-1:0] | 输出 |
时钟 | 这是一个由本地CGB为非绑定配置(non bonded configurations)以及由主CGB为绑定配置(bonded configurations)生成的并行时钟。此时钟对TX Enhanced PCS的模块提供时钟。此时钟的频率等于数据速率除以PCS/PMA接口宽度。 |
名称 | 方向 | 时钟域 | 说明 |
---|---|---|---|
rx_parallel_data[<n>128-1:0] |
输出 |
与驱动FIFO的读取侧的时钟同步(rx_coreclkin或rx_clkout) |
从RX PCS到FPGA架构的RX并行数据。如果在Transceiver Native PHY IP GUI中选择了Enable simplified data interface,那么rx_parallel_data仅包括您指定的配置所需要的比特。否则,此接口为128比特宽。 当FPGA架构到PCS接口宽度为64比特时,以下比特对窄于128比特的接口是有效的。您可以将未使用的比特悬空或断开。
当FPGA架构到PCS接口数据宽度是128比特时,以下比特是有效的:
|
unused_rx_parallel_data | 输出 |
rx_clkout |
当开启Enable simplified data interface时,此信号指定未使用的数据。当简化的数据接口未设置时,未使用的比特是rx_parallel_data的一部分。您可以将未使用的数据输出悬空或断开。 |
rx_control[<n> <20>-1:0] | 输出 | 与驱动FIFO的读取侧的时钟同步(rx_coreclkin或rx_clkout) |
表明rx_parallel_data总线是控制还是数据。 关于详细信息,请参考Enhanced PCS TX和RX控制端口部分。 |
unused_rx_control[<n>10-1:0] | 输出 | 与驱动FIFO的读取侧的时钟同步(rx_coreclkin或rx_clkout) |
这些信号仅在开启Enable simplified data interface时存在。当简化的数据接口没有设置时,未使用的比特是rx_control的一部分。这些输出可以被悬空。 |
rx_coreclkin[<n>-1:0] | 输入 | 时钟 | FPGA架构时钟。驱动RX FIFO的读取侧。对于Interlaken协议,此时钟的频率范围从datarate/67到datarate/32。 |
rx_clkout[<n>-1:0] | 输出 |
时钟 | 由收发器RX PMA恢复的低速并行时钟,对RX Enhanced PCS中的模块提供时钟。此时钟的频率等于PCS/PMA接口宽度除以数据速率(datarate)。 |
名称 | 方向 | 时钟域 | 说明 |
---|---|---|---|
tx_enh_data_valid[<n>-1:0] | 输入 |
与驱动FIFO写入侧的时钟同步(tx_coreclkin或tx_clkout) |
此信号的置位表明TX数据是有效的。对于10GBASE-R without 1588,将此信号连接到1'b1。对于10GBASE-R with 1588,您必须根据齿轮箱比率控制此信号。对于Basic和Interlaken,您需要根据TX FIFO标志控制此端口,以便FIFO既不上溢也不下溢。 关于详细信息,请参考Enhanced PCS FIFO操作。 |
tx_enh_fifo_full[<n>-1:0] | 输出 |
与驱动FIFO写入侧的时钟同步tx_coreclkin。 驱动TX FIFO的写入侧的时钟可以是tx_coreclkin (FPGA架构时钟)或者tx_clkout。 |
此信号的置位表明TX FIFO已满。由于深度始终保持不变,因此对于相位补偿模式可以忽略此信号。 关于详细信息,请参考Enhanced PCS FIFO操作。 |
tx_enh_fifo_pfull[<n>-1:0] | 输出 |
与驱动FIFO写入侧的时钟同步tx_coreclkin。 驱动TX FIFO的写入侧的时钟可以是tx_coreclkin (FPGA架构时钟)或者tx_clkout。 |
当TX FIFO达到半满阈值时此信号被置位。由于深度始终保持不变,因此对于相位补偿模式可以忽略此信号。 关于详细信息,请参考Enhanced PCS FIFO操作。 |
tx_enh_fifo_empty[<n>-1:0] | 输出 |
与驱动FIFO的读取侧的时钟同步tx_clkout |
置位时,表明TX FIFO是空的。此信号置位2到3个时钟周期。由于深度始终保持不变,因此对于相位补偿模式可以忽略此信号。 关于详细信息,请参考Enhanced PCS FIFO操作。 |
tx_enh_fifo_pempty[<n>-1:0] | 输出 |
与驱动FIFO的读取侧的时钟同步 tx_clkout |
置位时,表明TX FIFO已达到指定的半满阈值。当开启此选项时,Enhanced PCS使能tx_enh_fifo_pempty端口,这是异步的。此信号置位2到3个时钟周期。由于深度始终保持不变,因此对于相位补偿模式可以忽略此信号。 关于详细信息,请参考Enhanced PCS FIFO操作。 |
名称 | 方向 | 时钟域 | 说明 |
---|---|---|---|
rx_enh_data_valid[<n>-1:0] | 输出 |
与驱动FIFO的读取侧的时钟同步(rx_coreclkin或rx_clkout) |
置位时,表明rx_parallel_data是有效的。当rx_enh_data_valid信号为低电平时丢弃无效的RX并行数据。 当您选择以下参数时,此选项可用:
关于详细信息,请参考Enhanced PCS FIFO操作。 |
rx_enh_fifo_full[<n>-1:0] | 输出 |
与驱动FIFO写入侧的时钟同步rx_clkout |
置位时,表明RX FIFO已满。此信号置位2到3个时钟周期。由于深度始终保持不变,因此对于相位补偿模式可以忽略此信号。 关于详细信息,请参考Enhanced PCS FIFO操作。 |
rx_enh_fifo_pfull[<n>-1:0] | 输出 |
与驱动FIFO写入侧的时钟同步rx_clkout |
置位时,表明RX FIFO已达到指定的半满阈值。此信号置位2到3个时钟周期。由于深度始终保持不变,因此对于相位补偿模式可以忽略此信号。 关于详细信息,请参考Enhanced PCS FIFO操作。 |
rx_enh_fifo_empty[<n>-1:0] | 输出 |
与驱动FIFO的读取侧的时钟同步rx_coreclkin。 驱动TX FIFO的读取侧的时钟可以是rx_coreclkin (FPGA架构时钟)或者rx_clkout。 |
置位时表明RX FIFO是空的。由于深度始终保持不变,因此对于相位补偿模式可以忽略此信号。 关于详细信息,请参考Enhanced PCS FIFO操作。 |
rx_enh_fifo_pempty[<n>-1:0] | 输出 |
与驱动FIFO的读取侧的时钟同步rx_coreclkin。 驱动TX FIFO的读取侧的时钟可以是rx_coreclkin (FPGA架构时钟)或者rx_clkout。 |
置位时,表明RX FIFO已达到指定的半空阈值。由于深度始终保持不变,因此对于相位补偿模式可以忽略此信号。 关于详细信息,请参考Enhanced PCS FIFO操作。 |
rx_enh_fifo_del[<n>-1:0] | 输出 |
与驱动FIFO读一侧的时钟同步(rx_coreclkin或rx_clkout) |
置位时,表明已经从RX FIFO中删除一个字。此信号置位2到3个时钟周期。此信号用于10GBASE-R协议。 |
rx_enh_fifo_insert[<n>-1:0] | 输出 |
与驱动FIFO读取侧的时钟同步(rx_coreclkin或rx_clkout) |
置位时,表明已经插入一个字到RX FIFO。此信号用于10GBASE-R协议。 |
rx_enh_fifo_rd_en[<n>-1:0] | 输出 |
与驱动FIFO读取侧的时钟同步(rx_coreclkin或rx_clkout) |
仅适用于Interlaken,此信号置位时,从RX FIFO读取一个字。您需要根据RX FIFO标志来控制此信号,使FIFO既不会下溢也不会上溢。 |
rx_enh_fifo_align_val[<n>-1:0] | 输入 |
与驱动FIFO读取侧的时钟同步(rx_coreclkin或rx_clkout) |
置位时,表明已经发现字对齐码型。此信号仅对Interlaken协议有效。 |
rx_enh_fifo_align_clr[<n>-1:0] | 输入 |
与驱动FIFO的读取侧的时钟同步(rx_coreclkin或rx_clkout) |
置位时,FIFO复位并开始查找一个新的对齐码型。此信号仅对Interlaken协议有效。置位此信号至少4个周期。 |
名称 | 方向 | 时钟域 | 说明 |
---|---|---|---|
tx_enh_frame[<n>-1:0] | 输出 | tx_clkout |
置位2或3个并行时钟周期,以指示一个新的元帧(metaframe)的开始。 |
tx_enh_frame_diag_status[<n> 2-1:0] | 输入 |
tx_clkout |
驱动包含在帧层诊断字(framing layer diagnostic word)(bits[33:32])中的通道状态消息。此消息插入到frame generator block生成的下一个诊断字中。该总线在tx_enh_frame脉冲前后必须保持5个时钟周期恒定。下面的编码定义为:
|
tx_enh_frame_burst_en[<n>-1:0] | 输入 |
tx_clkout |
如果Enable frame burst使能,那么此端口控制从TX FIFO到帧生成器的帧生成器数据读取。如果tx_enh_frame_burst_en的值为0,那么帧生成器不从TX FIFO读取数据用于当前元帧(Metaframe),而是插入SKIP字,作为元帧(Metaframe)的有效负载。当tx_enh_frame_burst_en的值为1时,帧生成器从TX FIFO读取数据用于当前元帧(Metaframe)。此端口在tx_enh_frame脉冲的前后必须保持5个时钟周期恒定。 |
rx_enh_frame[<n>-1:0] | 输出 |
rx_clkout |
置位时表明一个新接收的元帧的开始。此信号是脉冲展宽的。 |
rx_enh_frame_lock[<n>-1:0] | 输出 |
rx_clkout |
置位时表明Frame Synchronizer状态机已经实现元帧描述。此信号是脉冲展宽的。 |
rx_enh_frame_diag_status[2 <n>-1:0] | 输出 |
rx_clkout |
驱动包含在Framing Layer Diagnostic Word (bits[33:32])中的通道状态消息。帧锁定期间,在元帧的结尾接收到一个有效的Diagnostic Word时,此信号被锁存。下面的编码定义为:
|
rx_enh_crc32_err[<n>-1:0] | 输出 |
rx_clkout |
置位时表明当前元帧的一个CRC错误。在当前元帧的末尾置位。此信号置位2到3个时钟周期。 |
名称 | 方向 | 时钟域 | 说明 |
---|---|---|---|
rx_enh_highber[<n>-1:0] | 输出 | rx_clkout |
置位时表明一个大于10-4的误码率。对于10GBASE-R协议,在125 µs之内有至少16个错误时出现此BER。此信号置位2到3个时钟周期。 |
rx_enh_highber_clr_cnt[<n>-1:0] | 输入 |
rx_clkout |
置位时清零内部计数器,该计数器指示BER状态机进入BER_BAD_SH状态的次数。 |
rx_enh_clr_errblk_count[<n>-1:0] (10GBASE-R and FEC) | 输入 |
rx_clkout |
置位时,错误模块计数器复位成0。此信号的置位清零内部计数器,该计数器显示RX状态机进入RX_E状态的次数。在FEC模块使能的模式下,此信号的置位复位RX FEC模块中的状态计数器。 |
名称 | 方向 | 时钟域 | 说明 |
---|---|---|---|
rx_enh_blk_lock<n>-1:0] | 输出 | rx_clkout |
置位时,表明模块同步器已经实现模块描述。此信号用于10GBASE-R和Interlaken。 |
名称 | 方向 | 时钟域 | 说明 |
---|---|---|---|
rx_bitslip[<n>-1:0] | 输入 | rx_clkout |
rx_parallel_data在rx_bitslip输入的每个正边沿移动1个比特。保持至少20个周期的rx_bitslip脉冲间隔。最大位移是< pcswidth -1>比特,这样如果PCS是64比特宽,那么您就能够移动0-63个比特。 |
tx_enh_bitslip[<n>-1:0] | 输入 | rx_clkout | 此信号的值控制传递到PMA之前要滑移的tx_parallel_data比特数。 |
名称 | 方向 | 时钟域 | 说明 |
---|---|---|---|
tx_enh_frame[<n>-1:0] | 输出 | tx_clkout |
TX KR-FEC的异步状态标志输出,表明生成的KR FEC帧的开始 |
rx_enh_frame[<n>-1:0] | 输出 | rx_clkout | RX KR-FEC的异步状态标志输出,表明生成的KR FEC帧的开始 |
rx_enh_frame_diag_status | 输出 | rx_clkout | RX KR-FEC的异步状态标志输出,表明当前接收帧的状态。
|