This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] FPC402:FPC402预取问题

Guru**** 2386610 points
Other Parts Discussed in Thread: FPC402
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/953025/fpc402-fpc402-prefetch-questions

器件型号:FPC402

我们正在 FPGA 中编写一个状态机、以使用 FPC402控制 QSFP+和 QSFP28器件。 计划以更快的速率运行主机 I2C 接口、以更低的速度运行 QSFP。

要求是从 QSFP 和控制 LED 读取 LOS 和其他警报。 我们将为此使用定期预取。 问题-

  1. 如果我需要访问表8-6中提供的 QSFP 地址、我将在哪里回读数据?
  1. 如何访问 QSPF? 它是否会根据设备 ID 对 QSFP 进行透明访问?
  2. 速度转换是如何发生的? FPGA 是否负责更改时钟速度?
  • 如果我们应该写入 LED、我们需要停止预取操作还是在内部进行处理?
  • 一旦数据被获取并写入 FPC402存储器中、它会继续获取新数据、还是需要重新开始?
  • 如果在 QSFP 上发生 LOS,它将被锁存,如果我清除 FPC402内存,它是否会在 QSFP 中清除?
  • 预取完成后、我们需要读取的 FPC402存储器地址是什么? 如果在 FPC402中发生这种情况、是否以 FPC 速度或 QSFP 速度访问它(如果 FPC402内部不发生速度转换)?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Devendra、

    1)。 设置预取寄存器后、器件会将预取的数据保存在其本地存储器中。 一旦预取数据可用、就会设置一个标志。 然后、当主机请求或读取特定 QSFP 和预取数据范围时、它将直接从本地存储器读取。 根据器件 ID 和地址范围、对 QSFP 的访问是透明的。  FPC 器件进行速度转换。 就 FPGA 而言、它仅通过主机总线与 FPC 器件通信。

    2)。 如果您不想执行预取读取或写入操作、则需要使用远程访问来直接访问 LED。 在本例中、我们需要通过寄存器控制停止预取操作。

    3)。 有一些寄存器设置允许 FPC 以特定的间隔或次数继续获取数据。

    4)。 对于 LOS、我相信您必须指示 FPC 在 QSFP 寄存器中将其清除。

    5)。 速度转换发生在 FPC 内部、是无缝或透明的数据传输。

    请注意、有一个编程指南和 SDK 可极大地帮助您进行驱动程序开发。 此外、它还详细介绍了这些操作的寄存器/标志。 请告诉我、我们可以提供这些工具来帮助您进行开发。

    此致、Nasser

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    [引用用户="Nasser Mohammadi"]

    感谢您回答 NASSER、在线评论。  

    您好 Devendra、

    1)。 设置预取寄存器后、器件会将预取的数据保存在其本地存储器中。 一旦预取数据可用、就会设置一个标志。 然后、当主机请求或读取特定 QSFP 和预取数据范围时、它将直接从本地存储器读取。 根据器件 ID 和地址范围、对 QSFP 的访问是透明的。  FPC 器件进行速度转换。 就 FPGA 而言、它仅通过主机总线与 FPC 器件通信。

    [Devendra ]-如果 FPC 器件进行速度转换、则意味着我刚刚读取 FPC 内部镜像的 QSFP 寄存器是正确的? 但直接 QSFP 访问情况并非如此、请纠正我的问题。 想象一下 FPC 的访问频率为1MHz、而 QSFP 的访问频率最大为400kHz  

    2)。 如果您不想执行预取读取或写入操作、则需要使用远程访问来直接访问 LED。 在本例中、我们需要通过寄存器控制停止预取操作。

    [Devendra ]- LED 通过 FPC 端口进行控制、它是否仍称为远程访问? 由于它位于 FPC 内部、我们是否需要停止预取读取?

    3)。 有一些寄存器设置允许 FPC 以特定的间隔或次数继续获取数据。

    [Devendra ]-好的。

    4)。 对于 LOS、我相信您必须指示 FPC 在 QSFP 寄存器中将其清除。

    [Devendra ]-请忽略此问题、在 QSFP 内部读取 OLO 信号时将会清除。 因此,当 FPC 读取 OLO 时,应将其清除。  

    不过、我有疑问- FPC 是否知道端口(QSFP+或 QSFP28)连接了哪种类型的 QSFP? 这将让 FPC 决定这些 QSFP 器件要访问的地址是什么?  

    5)。 速度转换发生在 FPC 内部、是无缝或透明的数据传输。

    [Devendra ]-好的

    请注意、有一个编程指南和 SDK 可极大地帮助您进行驱动程序开发。 此外、它还详细介绍了这些操作的寄存器/标志。 请告诉我、我们可以提供这些工具来帮助您进行开发。

    [Devendra ]-编程指南肯定会对我有所帮助。 请分享。  

    此致、Nasser

    [/报价]

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Devendra、

    1)。 有两种模式:

    a)。 FPC 内部镜像的 QSFP 寄存器。

    b)。 第二模式远程访问:在此模式下、您可以直接与 QSFP 寄存器通信。 FPC 器件-在本例中-执行时钟拉伸-在高速主机和低速 QSFP 模块之间同步。

    2)。 由于 LED 由 FPC 驱动、因此这不是远程访问。 我想、这在 QSFP 模块/寄存器中是有原因的。

    3)。 有默认地址(0xA0 & 0xA2)。 这些可通过 FPC 寄存器进行编程。

    4)。 请访问下面的链接、获取编程指南和 SDK。

    https://www.ti.com/licreg/docs/swlicexportcontrol.tsp?form_id=202045∏_no=FPC402-DESIGN&ref_url=asc_hsdc

    此致、Nasser