OK1046A-C SerDes通道分配和多路复用
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了OK1046A-C SerDes通道分配和多路复用相关的知识,希望对你有一定的参考价值。
相关推荐:https://www.forlinx.com/article_view_253.htmlLS1046A 处理器基于QorIQ LS系列架构,将四个Arm? Cortex?-A72处理器内核与数据通道加速和网络,网络连接,网络附加存储,打印和成像以及通用所需的网络,外部设置接口相结合。
其SerDes模块功能强大,相互关系稍微复杂,因此本文通过对CPU SerDes通道的相对关系的分析,以及 LS1046A 开发板对于SerDes配置的梳理,希望可以帮助用户在使用我们LS1046A开发板或者自己做一件的时候对SerDes通道的配置有一个清晰的思路。
1,SerDes配置方法
可通过设置以下寄存器对SerDes进行配置:
■SerDes 1配置:
·协议:使用RCW选择[SRDS_PRTCL_S1]
·PLL:使用RCW启用[SRDS_PLL_PD_S1]
·PLL参考时钟:RCW [SRDS_PLL_REF_CLK_SEL_S1]
·(速率由协议选择决定)
■SerDes 2配置:
·协议:使用RCW选择[SRDS_PRTCL_S2]
·PLL:使用RCW启用[SRDS_PLL_PD_S2]
·PLL参考时钟:RCW [SRDS_PLL_REF_CLK_SEL_S2]
·最大速率:使用以下方法选择:
·PCIe:RCW [SRDS_DIV_PEX_S2]
·SATA速率选择在软件中完成
2,SerDes协议
公认展示了SerDes的协议,图中使用了以下符号约定:
■框架管理器(FMan)的SGMII表示法:
·SGMII.n表示SGMII(1通道@ 1.25 Gbps或3.125 Gbps)
·“ n”表示FMan上的哪个MAC。
·例如,“ SGMII.9”表示FMan上用于MAC 9的SGMII。
■框架管理器(FMan)的QSGMII表示法:
·“ n”表示FMan上的哪个MAC。
·例如,“ QSGMII.1,2,5,6”表示用于MAC1,MAC2,MAC5的QSGMII
■FMan的XFI表示法:
·XFI.n表示XFI(1通道@ 10.3125 Gbps)
·“ n”表示FMan上的哪个MAC。
·例如,“ XFI.9”表示FMan上的MAC 9的XFI。
■PCI Express:
·PCIen(8/5 / 2.5)表示PCI Express最高可运行8或5或2.5 Gbps,具体取决于最大速率选择和培训。
·“ n”表示第n个PCIe
■SATA:
·SATAn(6/3 / 1.5)表示SATA以6或3或1.5 Gbps的速度运行,具体取决于速率选择。 如SATA 3.0中所述,选择速率由PxSCTL [SPD]寄存器执行。
上表中第一列为RCW [SRDS_PRTCL_S1 / 2]寄存器可配置的值,2?5列为SerDes1 / 2的四个通道对应的配置,6、7列为A,B,C,D通道对应的PLL通道。其中第6列表示PCIe配置为PCIe Gen1 / 2时对应的PLL映射,第7列表示PCIe配置为PCIe Gen3时对应的PLL映射。PCIeGen1 / 2/3可通过RCW [SRDS_DIV_PEX_Sn]进行配置。
每一行即为A,B,C,D四个通道对应不同寄存器的配置。
3,SerDes协议规则
SerDes选择的有效配置决定以下内容:
·永久在SerDes1和SerDes2上同时选择PCIe.1。
·当SRDS_PRTCL_S1 = 0x3333且SRDS_REFCLK_SEL_S1为0‘b0时,必须使用SRDS_PLL_PD_S1关闭SerDes1 PLL1。
·当SRDS_PRTCL_S2 = 0x8888且SRDS_REFCLK_SEL_S2为0‘b0时,必须使用SRDS_PLL_PD_S2关闭SerDes2 PLL1。
4,帧管理器MAC
每个FMan支持8个MAC。这些MAC支持不同的协议,如下表所示。
需要注意的是:
- FMAN不支持任何速度的半双工功能。2。 MAC 1、5、6、10被用作QSGMII。
5,SerDes时钟
每个支持的SerDes协议允许有限的一个有效的SerDes相关RCW分段和参考时钟频率,如下表所示:
6,OK1046A-C开发板相关配置
LS1046A 核心板SerDes1:
LS1046A核心 板SerDes2:
LS1046A 主板SerDes1:
LS1046A 主板SerDes2:
默认 LS1046A 开发板SerDes1配置为1014,SerDes2配置为5559。如果客户自己放置交换机,则可以根据自己的需求按照Table31-1与Table31-2来配置SerDes1 / 2。
有关SerDes的具体描述详见QorIQ LS1046A参考手册的第31章SerDes模块。
以上是关于OK1046A-C SerDes通道分配和多路复用的主要内容,如果未能解决你的问题,请参考以下文章
Kotlin 协程协程中的多路复用技术 ① ( 多路复用技术 | await 协程多路复用 | Channel 通道多路复用 )