干貨丨LS1046A&LS1028A平臺的SerDes設計方案

原創 2020-10-28 17:01:00 LS1046A LS1028

目前我們已經發布了NXP的QorIQLS架構系列的幾款平臺,包含LS1046ALS1043ALS1028ALS1012A。這幾款平臺都原生支持網口、PCIE、SATA等高速接口協議,很多用戶在產品選型和方案設計之初,對于硬件接口資源分配不熟悉,不遵守芯片規范使用導致項目出現問題,造成了嚴重損失。

本期我們就此系列平臺的SerDes資源分配做一篇文章。

LS系列產品的資源不可為不豐富,其中最讓人頭暈的當屬于SerDes協議。百度百科這樣解釋,SERDES是英文SERializer(串行器)/DESerializer(解串器)的簡稱。

它是一種主流的時分多路復用(TDM)、點對點(P2P)的串行通信技術。即在發送端多路低速并行信號被轉換成高速串行信號,經過傳輸媒體(光纜或銅線),最后在接收端高速串行信號重新轉換成低速并行信號。這種點對點的串行通信技術充分利用傳輸媒體的信道容量,減少所需的傳輸信道和器件引腳數目,提升信號的傳輸速度,從而大大降低通信成本。

我們先以最復雜的LS1046A做講解,參考NXP官方文檔《LS1046ARM》。

PART.1  LS1046A

在下圖框圖中可以看到有2個SerDes模塊,每個模塊各有2個PLL,每個模塊各有4lane,共有4個PLL,8條lane,有網口、PCIe、SATA功能。

在《LS1046 ARM》文檔的“Chapter31 SerDes Module”章節,比較詳細的描述了這一部分,所以我也建議用戶在制定方案前看一看這一部分。我們列出所有LS1046A的 SerDes功能:

第一列是RCW位,只能在這些選項中選擇方案(所以不存在8條lane都配置成網口這種操作);后面ABCD列代表硬件上的信號名稱和接口功能;最后兩列是時鐘PLL的配置,需要注意Mapping這個詞,表示你需要配置PLL1還是PLL2,舉例:2222代表ABCD4條lane都使用PLL2,2211代表AB lane使用PLL2,CD lane使用PLL1,not available代表此方案不支持PCIe Gen3速度。

XFI,SGMII,QSGMII都是網絡。SGMII.n表示1G速度,n是MAC;QSGMII包含4個MAC,每個都有1G的速度;XFI是10G的速度。配置網口必須注意MAC不能沖突。

PCIe.n的n表示PCIE標號,為了方便理解,可以認為n是RC(PCI Express root complex)標識,不可以配置沖突,舉例說SerDes1配置為1163,SerDes2配置為5559,這是不可以的!因為PCIe.1重復了。PCIe.nx4表示4條lane合并為一個PCIE RC,只可以接一個EP(endpoint device)設備,那么速度會x4翻倍。


SATA就不用多說了,從可選擇的方案中挑選出來就可以了。

選定好了每條lane的功能之后,還需要選擇SerDes參考時鐘。各功能需要的時鐘如下圖:

這就是我們需要配置的PLL1和PLL2,硬件和軟件需要同時做好。參考的時鐘源我們在核心板上已經做好,用戶不需要額外做這部分的硬件。 具體是這樣實現的:


SerDes2只有PCIE、SATA、SGMII(1.25G)的功能,這三個功能都可以參考100MHz時鐘,那么我們的核心板上硬件已經固定死100MHz,只需要軟件去選擇PLL即可。

SerDes1有SGMII(1.25G),SGMII(3.125G),QSGMII,XFI,PCIE功能,我們看Table31-4表中這些功能的PLL1都可以設置為100MHz,所以我們在核心板中硬件固定死100MHz,PLL2可以參考100MHz和156.25MHz即可實現全部功能,我們從核心板引出一個SD1_REFCLK_SEL引腳,用于選擇100M,156M,然后軟件配置相對應的PLL即可。

所以使用我們的核心板S2的PLL1,PLL2只能選100MHz;S1_PLL1只有100MHz,S1_PLL2在100M和156M之間做選擇。

可以關閉PLL來禁用對應的SerDes模塊。

如果還是沒講清楚那么我們舉個例子來說。假如有個項目需求1個萬兆網口,4個千兆網口,3個PCIEx1,1個SATA。

 

Serdes1模塊選擇RCW為1040:

XFI.9參考serdes1的PLL2,將S1的PLL2寫為1:156MHz

QSGMII參考serdes1的PLL1,將S1的PLL1寫為0:100MHz

 

SerDes2模塊選擇RCW為5559:(PCIEGen3不可用,Gen2速度為5Gbps)。

PCIe.1,PCIe.2,PCIe.3參考serdes2的PLL2,將S2的PLL2寫為0:100MHz

SATA參考serdes2的PLL1,將S2的PLL1寫為0:100MHz

看到這里大家有沒有覺得這個配置方案很熟悉啊,是的,我們飛凌發布的OK1046A-C開發板就是采用的這個方案, 加上CPU原生的2路RGMII,共組成1萬兆+6千兆+3路pcie+1路SATA,實現了CPU接口資源最大化,可供用戶調試開發。

講完了LS1046A平臺,其他平臺只有1個serdes模塊,就比較簡單了。

為了加深大家對于飛凌LS10XX系列產品中serdes模塊配置方案的理解,在本文第二部分,我們再講LS1028A平臺的SerDes設計方案做個簡單解讀。


PART.2 LS1028A

飛凌9月份發布了NXP的LS系列家族新成員——FET1028A-C核心板。其包含豐富的高速接口:PCIE、SATA、USB、以太網。與我們早已上市的LS1043A、LS1046A相同的是內含SerDes模塊,不同的是LS1028A的以太網口不一樣,因為內置TSN Switch,下面我們先詳細講這一部分。下圖是LS1028A的功能框圖:

以下內容參考NXP官方手冊《LS1028 ARM》,手冊可以在網站或者在我們的用戶資料里獲取到。在使用核心板做方案設計時,建議用戶也翻一翻這個手冊。

網口switch介紹

以太網系統由兩個組件組成:以太網控制器(ENETC)和支持TSN的以太網交換機。下圖描述了LS1028A中的以太網子系統。

ENETC(以太網NET控制器)是一個4端口虛擬化以太網控制器,支持千兆級設計和時敏網絡(TSN)功能,有兩個外部以太網端口,兩個內部端口連接到該交換機,并且充當Cortex-A72 CPU與ENETC和支持TSN的以太網交換機交互的PCI根聯合體集成端點。

具有TSN功能的以太網交換機總共有6個端口:4個外部以太網端口,以及兩個內部連接到ENETC的端口,用于交換數據和管理/控制功能。

TSN以太網交換機核心包含5個10/100/1000/2500Mbps以太網端口和1個10/100/1000Mbps以太網端口。

概括起來就是LS1028A最多可以引出6個網口,且都支持TSN。

Serdes介紹

SerDes模塊可以引出PCIE,SATA,和網口,前面講的ENETC中有5個網口都是通過SerDes引出的SGMII/QSGMII/QXGMII,這部分涉及到的硬件接口有SD1_TX[0:3]_P/N,SD1_RX[0:3]_P/N,SD1_REFx_CLK_P/N,TX/RX是發送/接收數據的信號線,CLK是輸入到SerDes的參考時鐘。

讓我們來看看SerDes模塊的時鐘結構。

SerDes的參考時鐘源有2個,SYSCLK或者外部輸入的REF_CLK。SYSCLK是固定100MHz的頻率,當SerDes參考SYSCLK 100MHz的時候,有些接口功能是有限制的;使用外部的REF_CLK則可以靈活選擇配置時鐘。

Serdes方案表
輸入文字

LS1028A芯片中,SerDes可以配置下表的功能,不在表中的搭配是不允許使用的。

選定SesDes方案后還需要配置時鐘,根據前面的時鐘結構我們可以看到SerDes內部有PLL1和PLL2,PCIeGen1/2 PLL mapping這一列就是我們需要配置PLL1還是PLL2,比如2211,表示laneA和laneB選擇PLL2,laneC和laneD選擇PLL1。

下圖是每種功能接口需要的參考時鐘頻率。

比如PCIE功能需要參考100MHz或者125MHz時鐘,因為我們的SYSCLK是100MHz的,就不需要額外再REF_CLK引腳上添加外部時鐘。一旦我們使用了2.5xSGMII或者USXGMII網絡功能,SYSCLK就不符合需求了,就需要在REF_CLK引腳上輸入參考時鐘。

飛凌FET1028A-C核心板考慮到高性價比并覆蓋絕大部分應用場合,只做好了100MHz的SYSCLK時鐘,同時也將SD1_REFx_CLK_P/N引腳連接到連接器中,允許用戶在設計中使用更高頻率的時鐘。

 

建議用戶在收到產品準備測試前,先看看手冊中的SerDes章節,這一部分很重要。希望這篇文章能對您的設計有所幫助,您也可以聯系飛凌技術支持獲取幫助。

 

 

 

相關產品 >

  • FET1046A-C核心板

    4核1.8GHz,原生8網口靈活擴展|LS1046A 系列ARM工控核心板基于 NXP公司的LS1046A高性能64位ARM四核處理器。LS1046A處理器將四個64位ARM Cortex-A72內核與數據包處理加速和高速外設相集成,CoreMark跑分高達45000,LS1046A強大的網絡處理能力和豐富的高速接口,適用于工業路由、邊緣計算網關、IP-PBX等產品,以及邊緣計算、 能源物聯網、智慧城市、工業自動化、視頻監控等應用領域。

    了解詳情
    FET1046A-C核心板
  • OK1046A-C2開發板

    4核1.8GHz,原生8網口,支持萬兆網絡|
    飛凌嵌入式LS1046a ARM工控主板系列LS1046開發板 基于 NXP LS1046A 四核Cortex A72 CPU,強大的萬兆網絡處理能力和豐富的高速接口,CoreMark跑分高達45000。飛凌不僅僅提供了LS1046A開發板套件,還提供了調試心得、LS1046A硬件數據手冊,并根據應用情況發布了 LS1046A 5G CPE 工業網關方案、邊緣計算網關方案,降低了客戶二次開發的難度。更多關于LS1046A的解決方案,產品詳情,您可以登入飛凌嵌入式官網了解。

    了解詳情
    OK1046A-C2開發板
  • OK1028A-C開發板

    LS028A 系列-LS1028開發板 雙核Cortex-A72 設計 TSN網絡支持 ,工業級 LS1028A開發板 提供了一個用于設計和評估LS1028A處理器設計核心板的平臺。支持TSN的以太網交換機和以太網控制器,可支持融合的IT和OT網絡;支持CANFD、UART 、USB3.0、PCIe3.0、SATA3.0、IIS、IIC、SPI 等常用總線接口,并支持一個最大分辨率4K的DP接口。ls1028a 適用于工業路由器、TSN、SD-WAN、 5G CPE 、邊緣計算網關 、IP-PBX等產品,以及工業互聯、智慧工廠、工業安全、信息安全、智慧交通、能源物聯網 等應用領域。 了解詳情
    OK1028A-C開發板
  • FET1028A-C核心板

    LS1028A-C核心板基于NXP LS1028A處理器設計,雙核ARM Cortex - A72,主頻最高1.6GHz,板載2GB DDR4 RAM,8GB ROM;原生支持6個Gbit Ethernet,支持TSN的以太網交換機和以太網控制器,可支持融合的IT和OT網絡;支持CAN FD、UART、USB3.0、PCIe3.0、SATA3.0、IIS、IIC、SPI等常用總線接口,并支持一個最大分辨率4K的DP接口。適用于工業路由器、TSN、SD-WAN、5G CPE、邊緣計算網關、IP-PBX等產品,以及工業互聯網、智慧工廠、工業安全、信息安全、智慧交通、能源物聯網等應用領域。 了解詳情
    FET1028A-C核心板

推薦閱讀 換一批 換一批